|
|
!(function(){var SX=Object.defineProperty,bX=Object.defineProperties;var CX=Object.getOwnPropertyDescriptors;var yT=Object.getOwnPropertySymbols;var PX=Object.prototype.hasOwnProperty,wX=Object.prototype.propertyIsEnumerable;var Eg=Math.pow,fC=(At,It,Te)=>It in At?SX(At,It,{enumerable:!0,configurable:!0,writable:!0,value:Te}):At[It]=Te,Sv=(At,It)=>{for(var Te in It||(It={}))PX.call(It,Te)&&fC(At,Te,It[Te]);if(yT)for(var Te of yT(It))wX.call(It,Te)&&fC(At,Te,It[Te]);return At},hC=(At,It)=>bX(At,CX(It));var su=(At,It,Te)=>fC(At,typeof It!="symbol"?It+"":It,Te);(self.webpackChunk=self.webpackChunk||[]).push([[8823],{89489:function(At,It,Te){"use strict";Te.d(It,{Z:function(){return Ee}});var Oe=Te(54476),He=Te(59301),Ne={icon:{tag:"svg",attrs:{viewBox:"0 0 1024 1024",focusable:"false"},children:[{tag:"path",attrs:{d:"M840.4 300H183.6c-19.7 0-30.7 20.8-18.5 35l328.4 380.8c9.4 10.9 27.5 10.9 37 0L858.9 335c12.2-14.2 1.2-35-18.5-35z"}}]},name:"caret-down",theme:"outlined"},be=Ne,_e=Te(7657),Me=function(xe,pe){return He.createElement(_e.Z,(0,Oe.Z)({},xe,{ref:pe,icon:be}))},ve=He.forwardRef(Me),Ee=ve},59477:function(At,It,Te){"use strict";Te.d(It,{Z:function(){return Ee}});var Oe=Te(54476),He=Te(59301),Ne={icon:{tag:"svg",attrs:{viewBox:"0 0 1024 1024",focusable:"false"},children:[{tag:"path",attrs:{d:"M858.9 689L530.5 308.2c-9.4-10.9-27.5-10.9-37 0L165.1 689c-12.2 14.2-1.2 35 18.5 35h656.8c19.7 0 30.7-20.8 18.5-35z"}}]},name:"caret-up",theme:"outlined"},be=Ne,_e=Te(7657),Me=function(xe,pe){return He.createElement(_e.Z,(0,Oe.Z)({},xe,{ref:pe,icon:be}))},ve=He.forwardRef(Me),Ee=ve},26227:function(At,It,Te){"use strict";Te.d(It,{Z:function(){return Ee}});var Oe=Te(54476),He=Te(59301),Ne={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M360 184h-8c4.4 0 8-3.6 8-8v8h304v-8c0 4.4 3.6 8 8 8h-8v72h72v-80c0-35.3-28.7-64-64-64H352c-35.3 0-64 28.7-64 64v80h72v-72zm504 72H160c-17.7 0-32 14.3-32 32v32c0 4.4 3.6 8 8 8h60.4l24.7 523c1.6 34.1 29.8 61 63.9 61h454c34.2 0 62.3-26.8 63.9-61l24.7-523H888c4.4 0 8-3.6 8-8v-32c0-17.7-14.3-32-32-32zM731.3 840H292.7l-24.2-512h487l-24.2 512z"}}]},name:"delete",theme:"outlined"},be=Ne,_e=Te(7657),Me=function(xe,pe){return He.createElement(_e.Z,(0,Oe.Z)({},xe,{ref:pe,icon:be}))},ve=He.forwardRef(Me),Ee=ve},49198:function(At,It,Te){"use strict";Te.d(It,{Z:function(){return Ee}});var Oe=Te(54476),He=Te(59301),Ne={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M533.2 492.3L277.9 166.1c-3-3.9-7.7-6.1-12.6-6.1H188c-6.7 0-10.4 7.7-6.3 12.9L447.1 512 181.7 851.1A7.98 7.98 0 00188 864h77.3c4.9 0 9.6-2.3 12.6-6.1l255.3-326.1c9.1-11.7 9.1-27.9 0-39.5zm304 0L581.9 166.1c-3-3.9-7.7-6.1-12.6-6.1H492c-6.7 0-10.4 7.7-6.3 12.9L751.1 512 485.7 851.1A7.98 7.98 0 00492 864h77.3c4.9 0 9.6-2.3 12.6-6.1l255.3-326.1c9.1-11.7 9.1-27.9 0-39.5z"}}]},name:"double-right",theme:"outlined"},be=Ne,_e=Te(7657),Me=function(xe,pe){return He.createElement(_e.Z,(0,Oe.Z)({},xe,{ref:pe,icon:be}))},ve=He.forwardRef(Me),Ee=ve},41464:function(At,It,Te){"use strict";Te.d(It,{Z:function(){return Ee}});var Oe=Te(54476),He=Te(59301),Ne={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M505.7 661a8 8 0 0012.6 0l112-141.7c4.1-5.2.4-12.9-6.3-12.9h-74.1V168c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v338.3H400c-6.7 0-10.4 7.7-6.3 12.9l112 141.8zM878 626h-60c-4.4 0-8 3.6-8 8v154H214V634c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v198c0 17.7 14.3 32 32 32h684c17.7 0 32-14.3 32-32V634c0-4.4-3.6-8-8-8z"}}]},name:"download",theme:"outlined"},be=Ne,_e=Te(7657),Me=function(xe,pe){return He.createElement(_e.Z,(0,Oe.Z)({},xe,{ref:pe,icon:be}))},ve=He.forwardRef(Me),Ee=ve},87169:function(At,It,Te){"use strict";Te.d(It,{Z:function(){return Ee}});var Oe=Te(54476),He=Te(59301),Ne={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z"}},{tag:"path",attrs:{d:"M464 688a48 48 0 1096 0 48 48 0 10-96 0zm24-112h48c4.4 0 8-3.6 8-8V296c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v272c0 4.4 3.6 8 8 8z"}}]},name:"exclamation-circle",theme:"outlined"},be=Ne,_e=Te(7657),Me=function(xe,pe){return He.createElement(_e.Z,(0,Oe.Z)({},xe,{ref:pe,icon:be}))},ve=He.forwardRef(Me),Ee=ve},52671:function(At,It,Te){"use strict";Te.d(It,{Z:function(){return Ee}});var Oe=Te(54476),He=Te(59301),Ne={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M854.6 288.6L639.4 73.4c-6-6-14.1-9.4-22.6-9.4H192c-17.7 0-32 14.3-32 32v832c0 17.7 14.3 32 32 32h640c17.7 0 32-14.3 32-32V311.3c0-8.5-3.4-16.7-9.4-22.7zM790.2 326H602V137.8L790.2 326zm1.8 562H232V136h302v216a42 42 0 0042 42h216v494z"}}]},name:"file",theme:"outlined"},be=Ne,_e=Te(7657),Me=function(xe,pe){return He.createElement(_e.Z,(0,Oe.Z)({},xe,{ref:pe,icon:be}))},ve=He.forwardRef(Me),Ee=ve},8657:function(At,It,Te){"use strict";Te.d(It,{Z:function(){return Ee}});var Oe=Te(54476),He=Te(59301),Ne={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M928 444H820V330.4c0-17.7-14.3-32-32-32H473L355.7 186.2a8.15 8.15 0 00-5.5-2.2H96c-17.7 0-32 14.3-32 32v592c0 17.7 14.3 32 32 32h698c13 0 24.8-7.9 29.7-20l134-332c1.5-3.8 2.3-7.9 2.3-12 0-17.7-14.3-32-32-32zM136 256h188.5l119.6 114.4H748V444H238c-13 0-24.8 7.9-29.7 20L136 643.2V256zm635.3 512H159l103.3-256h612.4L771.3 768z"}}]},name:"folder-open",theme:"outlined"},be=Ne,_e=Te(7657),Me=function(xe,pe){return He.createElement(_e.Z,(0,Oe.Z)({},xe,{ref:pe,icon:be}))},ve=He.forwardRef(Me),Ee=ve},56082:function(At,It,Te){"use strict";Te.d(It,{Z:function(){return Ee}});var Oe=Te(54476),He=Te(59301),Ne={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M300 276.5a56 56 0 1056-97 56 56 0 00-56 97zm0 284a56 56 0 1056-97 56 56 0 00-56 97zM640 228a56 56 0 10112 0 56 56 0 00-112 0zm0 284a56 56 0 10112 0 56 56 0 00-112 0zM300 844.5a56 56 0 1056-97 56 56 0 00-56 97zM640 796a56 56 0 10112 0 56 56 0 00-112 0z"}}]},name:"holder",theme:"outlined"},be=Ne,_e=Te(7657),Me=function(xe,pe){return He.createElement(_e.Z,(0,Oe.Z)({},xe,{ref:pe,icon:be}))},ve=He.forwardRef(Me),Ee=ve},33853:function(At,It,Te){"use strict";Te.d(It,{Z:function(){return Ee}});var Oe=Te(54476),He=Te(59301),Ne={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M724 218.3V141c0-6.7-7.7-10.4-12.9-6.3L260.3 486.8a31.86 31.86 0 000 50.3l450.8 352.1c5.3 4.1 12.9.4 12.9-6.3v-77.3c0-4.9-2.3-9.6-6.1-12.6l-360-281 360-281.1c3.8-3 6.1-7.7 6.1-12.6z"}}]},name:"left",theme:"outlined"},be=Ne,_e=Te(7657),Me=function(xe,pe){return He.createElement(_e.Z,(0,Oe.Z)({},xe,{ref:pe,icon:be}))},ve=He.forwardRef(Me),Ee=ve},15075:function(At,It,Te){"use strict";Te.d(It,{Z:function(){return Ee}});var Oe=Te(54476),He=Te(59301),Ne={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M328 544h368c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8H328c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8z"}},{tag:"path",attrs:{d:"M880 112H144c-17.7 0-32 14.3-32 32v736c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V144c0-17.7-14.3-32-32-32zm-40 728H184V184h656v656z"}}]},name:"minus-square",theme:"outlined"},be=Ne,_e=Te(7657),Me=function(xe,pe){return He.createElement(_e.Z,(0,Oe.Z)({},xe,{ref:pe,icon:be}))},ve=He.forwardRef(Me),Ee=ve},43531:function(At,It,Te){"use strict";Te.d(It,{Z:function(){return Ee}});var Oe=Te(54476),He=Te(59301),Ne={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M328 544h152v152c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V544h152c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8H544V328c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v152H328c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8z"}},{tag:"path",attrs:{d:"M880 112H144c-17.7 0-32 14.3-32 32v736c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V144c0-17.7-14.3-32-32-32zm-40 728H184V184h656v656z"}}]},name:"plus-square",theme:"outlined"},be=Ne,_e=Te(7657),Me=function(xe,pe){return He.createElement(_e.Z,(0,Oe.Z)({},xe,{ref:pe,icon:be}))},ve=He.forwardRef(Me),Ee=ve},38819:function(At,It,Te){"use strict";Te.d(It,{Z:function(){return Ee}});var Oe=Te(54476),He=Te(59301),Ne={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M765.7 486.8L314.9 134.7A7.97 7.97 0 00302 141v77.3c0 4.9 2.3 9.6 6.1 12.6l360 281.1-360 281.1c-3.9 3-6.1 7.7-6.1 12.6V883c0 6.7 7.7 10.4 12.9 6.3l450.8-352.1a31.96 31.96 0 000-50.4z"}}]},name:"right",theme:"outlined"},be=Ne,_e=Te(7657),Me=function(xe,pe){return He.createElement(_e.Z,(0,Oe.Z)({},xe,{ref:pe,icon:be}))},ve=He.forwardRef(Me),Ee=ve},13722:function(At){(function(Te,Oe){At.exports=Oe()})(typeof self!="undefined"?self:this,function(){return function(It){var Te={};function Oe(He){if(Te[He])return Te[He].exports;var Ne=Te[He]={i:He,l:!1,exports:{}};return It[He].call(Ne.exports,Ne,Ne.exports,Oe),Ne.l=!0,Ne.exports}return Oe.m=It,Oe.c=Te,Oe.d=function(He,Ne,be){Oe.o(He,Ne)||Object.defineProperty(He,Ne,{configurable:!1,enumerable:!0,get:be})},Oe.n=function(He){var Ne=He&&He.__esModule?function(){return He.default}:function(){return He};return Oe.d(Ne,"a",Ne),Ne},Oe.o=function(He,Ne){return Object.prototype.hasOwnProperty.call(He,Ne)},Oe.p="",Oe(Oe.s=5)}([function(It,Te){function Oe(He,Ne,be,_e){return _e===void 0&&(_e="height"),be==="center"?(He[_e]+Ne[_e])/2:He.height}It.exports={assign:Object.assign,getHeight:Oe}},function(It,Te,Oe){var He=Oe(3),Ne=function(){function be(Me,ve){ve===void 0&&(ve={});var Ee=this;Ee.options=ve,Ee.rootNode=He(Me,ve)}var _e=be.prototype;return _e.execute=function(){throw new Error("please override this method")},be}();It.exports=Ne},function(It,Te,Oe){var He=Oe(4),Ne=["LR","RL","TB","BT","H","V"],be=["LR","RL","H"],_e=function(Pe){return be.indexOf(Pe)>-1},Me=Ne[0];It.exports=function(Ee,Pe,xe){var pe=Pe.direction||Me;if(Pe.isHorizontal=_e(pe),pe&&Ne.indexOf(pe)===-1)throw new TypeError("Invalid direction: "+pe);if(pe===Ne[0])xe(Ee,Pe);else if(pe===Ne[1])xe(Ee,Pe),Ee.right2left();else if(pe===Ne[2])xe(Ee,Pe);else if(pe===Ne[3])xe(Ee,Pe),Ee.bottom2top();else if(pe===Ne[4]||pe===Ne[5]){var Ae=He(Ee,Pe),Se=Ae.left,ce=Ae.right;xe(Se,Pe),xe(ce,Pe),Pe.isHorizontal?Se.right2left():Se.bottom2top(),ce.translate(Se.x-ce.x,Se.y-ce.y),Ee.x=Se.x,Ee.y=ce.y;var te=Ee.getBoundingBox();Pe.isHorizontal?te.top<0&&Ee.translate(0,-te.top):te.left<0&&Ee.translate(-te.left,0)}var ne=Pe.fixedRoot;return ne===void 0&&(ne=!0),ne&&Ee.translate(-(Ee.x+Ee.width/2+Ee.hgap),-(Ee.y+Ee.height/2+Ee.vgap)),ve(Ee,Pe),Ee};function ve(Ee,Pe){if(Pe.radial){var xe=Pe.isHorizontal?["x","y"]:["y","x"],pe=xe[0],Ae=xe[1],Se={x:1/0,y:1/0},ce={x:-1/0,y:-1/0},te=0;Ee.DFTraverse(function(se){te++;var fe=se.x,he=se.y;Se.x=Math.min(Se.x,fe),Se.y=Math.min(Se.y,he),ce.x=Math.max(ce.x,fe),ce.y=Math.max(ce.y,he)});var ne=ce[Ae]-Se[Ae];if(ne===0)return;var le=Math.PI*2/te;Ee.DFTraverse(function(se){var fe=(se[Ae]-Se[Ae])/ne*(Math.PI*2-le)+le,he=se[pe]-Ee[pe];se.x=Math.cos(fe)*he,se.y=Math.sin(fe)*he})}}},function(It,Te,Oe){var He=Oe(0),Ne=18,be=Ne*2,_e=Ne,Me={getId:function(xe){return xe.id||xe.name},getPreH:function(xe){return xe.preH||0},getPreV:function(xe){return xe.preV||0},getHGap:function(xe){return xe.hgap||_e},getVGap:function(xe){return xe.vgap||_e},getChildren:function(xe){return xe.children},getHeight:function(xe){return xe.height||be},getWidth:function(xe){var pe=xe.label||" ";return xe.width||pe.split("").length*Ne}};function ve(Pe,xe){var pe=this;if(pe.vgap=pe.hgap=0,Pe instanceof ve)return Pe;pe.data=Pe;var Ae=xe.getHGap(Pe),Se=xe.getVGap(Pe);return pe.preH=xe.getPreH(Pe),pe.preV=xe.getPreV(Pe),pe.width=xe.getWidth(Pe),pe.height=xe.getHeight(Pe),pe.width+=pe.preH,pe.height+=pe.preV,pe.id=xe.getId(Pe),pe.x=pe.y=0,pe.depth=0,pe.children||(pe.children=[]),pe.addGap(Ae,Se),pe}He.assign(ve.prototype,{isRoot:function(){return this.depth===0},isLeaf:function(){return this.children.length===0},addGap:function(xe,pe){var Ae=this;Ae.hgap+=xe,Ae.vgap+=pe,Ae.width+=2*xe,Ae.height+=2*pe},eachNode:function(xe){for(var pe=this,Ae=[pe],Se;Se=Ae.shift();)xe(Se),Ae=Se.children.concat(Ae)},DFTraverse:function(xe){this.eachNode(xe)},BFTraverse:function(xe){for(var pe=this,Ae=[pe],Se;Se=Ae.shift();)xe(Se),Ae=Ae.concat(Se.children)},getBoundingBox:function(){var xe={left:Number.MAX_VALUE,top:Number.MAX_VALUE,width:0,height:0};return this.eachNode(function(pe){xe.left=Math.min(xe.left,pe.x),xe.top=Math.min(xe.top,pe.y),xe.width=Math.max(xe.width,pe.x+pe.width),xe.height=Math.max(xe.height,pe.y+pe.height)}),xe},translate:function(xe,pe){xe===void 0&&(xe=0),pe===void 0&&(pe=0),this.eachNode(function(Ae){Ae.x+=xe,Ae.y+=pe,Ae.x+=Ae.preH,Ae.y+=Ae.preV})},right2left:function(){var xe=this,pe=xe.getBoundingBox();xe.eachNode(function(Ae){Ae.x=Ae.x-(Ae.x-pe.left)*2-Ae.width}),xe.translate(pe.width,0)},bottom2top:function(){var xe=this,pe=xe.getBoundingBox();xe.eachNode(function(Ae){Ae.y=Ae.y-(Ae.y-pe.top)*2-Ae.height}),xe.translate(0,pe.height)}});function Ee(Pe,xe,pe){xe===void 0&&(xe={}),xe=He.assign({},Me,xe);var Ae=new ve(Pe,xe),Se=[Ae],ce;if(!pe&&!Pe.collapsed){for(;ce=Se.shift();)if(!ce.data.collapsed){var te=xe.getChildren(ce.data),ne=te?te.length:0;if(ce.children=new Array(ne),te&&ne)for(var le=0;le<ne;le++){var se=new ve(te[le],xe);ce.children[le]=se,Se.push(se),se.parent=ce,se.depth=ce.depth+1}}}return Ae}It.exports=Ee},function(It,Te,Oe){var He=Oe(3);It.exports=function(Ne,be){for(var _e=He(Ne.data,be,!0),Me=He(Ne.data,be,!0),ve=Ne.children.length,Ee=Math.round(ve/2),Pe=be.getSide||function(Se,ce){return ce<Ee?"right":"left"},xe=0;xe<ve;xe++){var pe=Ne.children[xe],Ae=Pe(pe,xe);Ae==="right"?Me.children.push(pe):_e.children.push(pe)}return _e.eachNode(function(Se){Se.isRoot()||(Se.side="left")}),Me.eachNode(function(Se){Se.isRoot()||(Se.side="right")}),{left:_e,right:Me}}},function(It,Te,Oe){var He={compactBox:Oe(6),dendrogram:Oe(8),indented:Oe(10),mindmap:Oe(12)};It.exports=He},function(It,Te,Oe){function He(pe,Ae){pe.prototype=Object.create(Ae.prototype),pe.prototype.constructor=pe,Ne(pe,Ae)}function Ne(pe,Ae){return Ne=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(Se,ce){return Se.__proto__=ce,Se},Ne(pe,Ae)}var be=Oe(1),_e=Oe(7),Me=Oe(2),ve=Oe(0),Ee=function(pe){function Ae(){return pe.apply(this,arguments)||this}He(Ae,pe);var Se=Ae.prototype;return Se.execute=function(){var te=this;return Me(te.rootNode,te.options,_e)},Ae}(be),Pe={};function xe(pe,Ae){return Ae=ve.assign({},Pe,Ae),new Ee(pe,Ae).execute()}It.exports=xe},function(It,Te){function Oe(ve,Ee,Pe,xe){xe===void 0&&(xe=[]);var pe=this;pe.w=ve||0,pe.h=Ee||0,pe.y=Pe||0,pe.x=0,pe.c=xe||[],pe.cs=xe.length,pe.prelim=0,pe.mod=0,pe.shift=0,pe.change=0,pe.tl=null,pe.tr=null,pe.el=null,pe.er=null,pe.msel=0,pe.mser=0}Oe.fromNode=function(ve,Ee){if(!ve)return null;var Pe=[];return ve.children.forEach(function(xe){Pe.push(Oe.fromNode(xe,Ee))}),Ee?new Oe(ve.height,ve.width,ve.x,Pe):new Oe(ve.width,ve.height,ve.y,Pe)};function He(ve,Ee,Pe){Pe?ve.y+=Ee:ve.x+=Ee,ve.children.forEach(function(xe){He(xe,Ee,Pe)})}function Ne(ve,Ee){var Pe=Ee?ve.y:ve.x;return ve.children.forEach(function(xe){Pe=Math.min(Ne(xe,Ee),Pe)}),Pe}function be(ve,Ee){var Pe=Ne(ve,Ee);He(ve,-Pe,Ee)}function _e(ve,Ee,Pe){Pe?Ee.y=ve.x:Ee.x=ve.x,ve.c.forEach(function(xe,pe){_e(xe,Ee.children[pe],Pe)})}function Me(ve,Ee,Pe){Pe===void 0&&(Pe=0),Ee?(ve.x=Pe,Pe+=ve.width):(ve.y=Pe,Pe+=ve.height),ve.children.forEach(function(xe){Me(xe,Ee,Pe)})}It.exports=function(ve,Ee){Ee===void 0&&(Ee={});var Pe=Ee.isHorizontal;function xe(Ie){if(Ie.cs===0){pe(Ie);return}xe(Ie.c[0]);for(var Fe=me(ne(Ie.c[0].el),0,null),Re=1;Re<Ie.cs;++Re){xe(Ie.c[Re]);var Ue=ne(Ie.c[Re].er);Ae(Ie,Re,Fe),Fe=me(Ue,Re,Fe)}fe(Ie),pe(Ie)}function pe(Ie){Ie.cs===0?(Ie.el=Ie,Ie.er=Ie,Ie.msel=Ie.mser=0):(Ie.el=Ie.c[0].el,Ie.msel=Ie.c[0].msel,Ie.er=Ie.c[Ie.cs-1].er,Ie.mser=Ie.c[Ie.cs-1].mser)}function Ae(Ie,Fe,Re){for(var Ue=Ie.c[Fe-1],Ge=Ue.mod,Je=Ie.c[Fe],Qe=Je.mod;Ue!==null&&Je!==null;){ne(Ue)>Re.low&&(Re=Re.nxt);var rt=Ge+Ue.prelim+Ue.w-(Qe+Je.prelim);rt>0&&(Qe+=rt,Se(Ie,Fe,Re.index,rt));var $e=ne(Ue),qe=ne(Je);$e<=qe&&(Ue=te(Ue),Ue!==null&&(Ge+=Ue.mod)),$e>=qe&&(Je=ce(Je),Je!==null&&(Qe+=Je.mod))}!Ue&&Je?le(Ie,Fe,Je,Qe):Ue&&!Je&&se(Ie,Fe,Ue,Ge)}function Se(Ie,Fe,Re,Ue){Ie.c[Fe].mod+=Ue,Ie.c[Fe].msel+=Ue,Ie.c[Fe].mser+=Ue,ie(Ie,Fe,Re,Ue)}function ce(Ie){return Ie.cs===0?Ie.tl:Ie.c[0]}function te(Ie){return Ie.cs===0?Ie.tr:Ie.c[Ie.cs-1]}function ne(Ie){return Ie.y+Ie.h}function le(Ie,Fe,Re,Ue){var Ge=Ie.c[0].el;Ge.tl=Re;var Je=Ue-Re.mod-Ie.c[0].msel;Ge.mod+=Je,Ge.prelim-=Je,Ie.c[0].el=Ie.c[Fe].el,Ie.c[0].msel=Ie.c[Fe].msel}function se(Ie,Fe,Re,Ue){var Ge=Ie.c[Fe].er;Ge.tr=Re;var Je=Ue-Re.mod-Ie.c[Fe].mser;Ge.mod+=Je,Ge.prelim-=Je,Ie.c[Fe].er=Ie.c[Fe-1].er,Ie.c[Fe].mser=Ie.c[Fe-1].mser}function fe(Ie){Ie.prelim=(Ie.c[0].prelim+Ie.c[0].mod+Ie.c[Ie.cs-1].mod+Ie.c[Ie.cs-1].prelim+Ie.c[Ie.cs-1].w)/2-Ie.w/2}function he(Ie,Fe){Fe+=Ie.mod,Ie.x=Ie.prelim+Fe,ue(Ie);for(var Re=0;Re<Ie.cs;Re++)he(Ie.c[Re],Fe)}function ie(Ie,Fe,Re,Ue){if(Re!==Fe-1){var Ge=Fe-Re;Ie.c[Re+1].shift+=Ue/Ge,Ie.c[Fe].shift-=Ue/Ge,Ie.c[Fe].change-=Ue-Ue/Ge}}function ue(Ie){for(var Fe=0,Re=0,Ue=0;Ue<Ie.cs;Ue++)Fe+=Ie.c[Ue].shift,Re+=Fe+Ie.c[Ue].change,Ie.c[Ue].mod+=Re}function me(Ie,Fe,Re){for(;Re!==null&&Ie>=Re.low;)Re=Re.nxt;return{low:Ie,index:Fe,nxt:Re}}Me(ve,Pe);var Ce=Oe.fromNode(ve,Pe);return xe(Ce),he(Ce,0),_e(Ce,ve,Pe),be(ve,Pe),ve}},function(It,Te,Oe){function He(pe,Ae){pe.prototype=Object.create(Ae.prototype),pe.prototype.constructor=pe,Ne(pe,Ae)}function Ne(pe,Ae){return Ne=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(Se,ce){return Se.__proto__=ce,Se},Ne(pe,Ae)}var be=Oe(1),_e=Oe(9),Me=Oe(2),ve=Oe(0),Ee=function(pe){function Ae(){return pe.apply(this,arguments)||this}He(Ae,pe);var Se=Ae.prototype;return Se.execute=function(){var te=this;return te.rootNode.width=0,Me(te.rootNode,te.options,_e)},Ae}(be),Pe={};function xe(pe,Ae){return Ae=ve.assign({},Pe,Ae),new Ee(pe,Ae).execute()}It.exports=xe},function(It,Te,Oe){var He=Oe(0);function Ne(Me,ve){Me===void 0&&(Me=0),ve===void 0&&(ve=[]);var Ee=this;Ee.x=Ee.y=0,Ee.leftChild=Ee.rightChild=null,Ee.height=0,Ee.children=ve}var be={isHorizontal:!0,nodeSep:20,nodeSize:20,rankSep:200,subTreeSep:10};function _e(Me,ve,Ee){Ee?(ve.x=Me.x,ve.y=Me.y):(ve.x=Me.y,ve.y=Me.x),Me.children.forEach(function(Pe,xe){_e(Pe,ve.children[xe],Ee)})}It.exports=function(Me,ve){ve===void 0&&(ve={}),ve=He.assign({},be,ve);var Ee=0;function Pe(ce){if(!ce)return null;ce.width=0,ce.depth&&ce.depth>Ee&&(Ee=ce.depth);var te=ce.children,ne=te.length,le=new Ne(ce.height,[]);return te.forEach(function(se,fe){var he=Pe(se);le.children.push(he),fe===0&&(le.leftChild=he),fe===ne-1&&(le.rightChild=he)}),le.originNode=ce,le.isLeaf=ce.isLeaf(),le}function xe(ce){if(ce.isLeaf||ce.children.length===0)ce.drawingDepth=Ee;else{var te=ce.children.map(function(le){return xe(le)}),ne=Math.min.apply(null,te);ce.drawingDepth=ne-1}return ce.drawingDepth}var pe;function Ae(ce){ce.x=ce.drawingDepth*ve.rankSep,ce.isLeaf?(ce.y=0,pe&&(ce.y=pe.y+pe.height+ve.nodeSep,ce.originNode.parent!==pe.originNode.parent&&(ce.y+=ve.subTreeSep)),pe=ce):(ce.children.forEach(function(te){Ae(te)}),ce.y=(ce.leftChild.y+ce.rightChild.y)/2)}var Se=Pe(Me);return xe(Se),Ae(Se),_e(Se,Me,ve.isHorizontal),Me}},function(It,Te,Oe){function He(Se,ce){Se.prototype=Object.create(ce.prototype),Se.prototype.constructor=Se,Ne(Se,ce)}function Ne(Se,ce){return Ne=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(te,ne){return te.__proto__=ne,te},Ne(Se,ce)}var be=Oe(1),_e=Oe(11),Me=Oe(4),ve=Oe(0),Ee=["LR","RL","H"],Pe=Ee[0],xe=function(Se){function ce(){return Se.apply(this,arguments)||this}He(ce,Se);var te=ce.prototype;return te.execute=function(){var le=this,se=le.options,fe=le.rootNode;se.isHorizontal=!0;var he=se.indent,ie=he===void 0?20:he,ue=se.dropCap,me=ue===void 0?!0:ue,Ce=se.direction,Ie=Ce===void 0?Pe:Ce,Fe=se.align;if(Ie&&Ee.indexOf(Ie)===-1)throw new TypeError("Invalid direction: "+Ie);if(Ie===Ee[0])_e(fe,ie,me,Fe);else if(Ie===Ee[1])_e(fe,ie,me,Fe),fe.right2left();else if(Ie===Ee[2]){var Re=Me(fe,se),Ue=Re.left,Ge=Re.right;_e(Ue,ie,me,Fe),Ue.right2left(),_e(Ge,ie,me,Fe);var Je=Ue.getBoundingBox();Ge.translate(Je.width,0),fe.x=Ge.x-fe.width/2}return fe},ce}(be),pe={};function Ae(Se,ce){return ce=ve.assign({},pe,ce),new xe(Se,ce).execute()}It.exports=Ae},function(It,Te,Oe){var He=Oe(0);function Ne(be,_e,Me,ve,Ee){var Pe=(typeof Me=="function"?Me(be):Me)*be.depth;if(!ve)try{if(be.id===be.parent.children[0].id){be.x+=Pe,be.y=_e?_e.y:0;return}}catch(Ae){}if(be.x+=Pe,_e){if(be.y=_e.y+He.getHeight(_e,be,Ee),_e.parent&&be.parent.id!==_e.parent.id){var xe=_e.parent,pe=xe.y+He.getHeight(xe,be,Ee);be.y=pe>be.y?pe:be.y}}else be.y=0}It.exports=function(be,_e,Me,ve){var Ee=null;be.eachNode(function(Pe){Ne(Pe,Ee,_e,Me,ve),Ee=Pe})}},function(It,Te,Oe){function He(pe,Ae){pe.prototype=Object.create(Ae.prototype),pe.prototype.constructor=pe,Ne(pe,Ae)}function Ne(pe,Ae){return Ne=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(Se,ce){return Se.__proto__=ce,Se},Ne(pe,Ae)}var be=Oe(1),_e=Oe(13),Me=Oe(2),ve=Oe(0),Ee=function(pe){function Ae(){return pe.apply(this,arguments)||this}He(Ae,pe);var Se=Ae.prototype;return Se.execute=function(){var te=this;return Me(te.rootNode,te.options,_e)},Ae}(be),Pe={};function xe(pe,Ae){return Ae=ve.assign({},Pe,Ae),new Ee(pe,Ae).execute()}It.exports=xe},function(It,Te,Oe){var He=Oe(0);function Ne(Me,ve){var Ee=0;return Me.children.length?Me.children.forEach(function(Pe){Ee+=Ne(Pe,ve)}):Ee=Me.height,Me._subTreeSep=ve.getSubTreeSep(Me.data),Me.totalHeight=Math.max(Me.height,Ee)+2*Me._subTreeSep,Me.totalHeight}function be(Me){var ve=Me.children,Ee=ve.length;if(Ee){ve.forEach(function(ce){be(ce)});var Pe=ve[0],xe=ve[Ee-1],pe=xe.y-Pe.y+xe.height,Ae=0;if(ve.forEach(function(ce){Ae+=ce.totalHeight}),pe>Me.height)Me.y=Pe.y+pe/2-Me.height/2;else if(ve.length!==1||Me.height>Ae){var Se=Me.y+(Me.height-pe)/2-Pe.y;ve.forEach(function(ce){ce.translate(0,Se)})}else Me.y=(Pe.y+Pe.height/2+xe.y+xe.height/2)/2-Me.height/2}}var _e={getSubTreeSep:function(){return 0}};It.exports=function(Me,ve){ve===void 0&&(ve={}),ve=He.assign({},_e,ve),Me.parent={x:0,width:0,height:0,y:0},Me.BFTraverse(function(Ee){Ee.x=Ee.parent.x+Ee.parent.width}),Me.parent=null,Ne(Me,ve),Me.startY=0,Me.y=Me.totalHeight/2-Me.height/2,Me.eachNode(function(Ee){var Pe=Ee.children,xe=Pe.length;if(xe){var pe=Pe[0];if(pe.startY=Ee.startY+Ee._subTreeSep,xe===1)pe.y=Ee.y+Ee.height/2-pe.height/2;else{pe.y=pe.startY+pe.totalHeight/2-pe.height/2;for(var Ae=1;Ae<xe;Ae++){var Se=Pe[Ae];Se.startY=Pe[Ae-1].startY+Pe[Ae-1].totalHeight,Se.y=Se.startY+Se.totalHeight/2-Se.height/2}}}}),be(Me)}}])})},89722:function(At,It){"use strict";It.Z={lists:"lists___xhHyq",item:"item___pWJAA",children:"children___sDG61",diamond:"diamond___FwgzD",button:"button___WPN6r",mathWrap:"mathWrap___FmnMJ",mathFillWrap:"mathFillWrap___PmY3H"}},51571:function(At,It){"use strict";It.Z={flex_box_center:"flex_box_center___vG4eV",flex_space_between:"flex_space_between___qVVxe",flex_box_vertical_center:"flex_box_vertical_center___P8Z8s",flex_box_center_end:"flex_box_center_end___VMme3",flex_box_column:"flex_box_column___VMHwm",dropdownmenus:"dropdownmenus___oVzoj",popupClassNames:"popupClassNames___OcZq7",selectdown:"selectdown___mmcA8"}},1051:function(At,It){"use strict";It.Z={flex_box_center:"flex_box_center___IBr6x",flex_space_between:"flex_space_between___n2Iz0",flex_box_vertical_center:"flex_box_vertical_center___1umwO",flex_box_center_end:"flex_box_center_end___SRZYb",flex_box_column:"flex_box_column___b90Da",form:"form___V3fAH",title_icon:"title_icon____uDZy",title:"title___RxKwK",content:"content___vFT5m",pubColSty:"pubColSty___dfLkL",selectSty:"selectSty____Wuek",borderSty:"borderSty___EuFYV",delSty:"delSty___AdEeI",delBorder:"delBorder___vcTJc",copHover:"copHover___JVVXI",multiple_select:"multiple_select___ZMPhl",work_checkbox_group:"work_checkbox_group___sGLxY"}},45106:function(At,It){"use strict";It.Z={flex_box_center:"flex_box_center___vhwFp",flex_space_between:"flex_space_between___rbHwE",flex_box_vertical_center:"flex_box_vertical_center___AF_yr",flex_box_center_end:"flex_box_center_end___FqGSd",flex_box_column:"flex_box_column___ujWr7",failedList:"failedList___KGsCg",name:"name___bbsWC",publish:"publish___mai8J",modal:"modal___t6wU6"}},76443:function(At,It,Te){"use strict";var Oe=Te(59301),He=Object.defineProperty,Ne=Object.getOwnPropertySymbols,be=Object.prototype.hasOwnProperty,_e=Object.prototype.propertyIsEnumerable,Me=(Pe,xe,pe)=>xe in Pe?He(Pe,xe,{enumerable:!0,configurable:!0,writable:!0,value:pe}):Pe[xe]=pe,ve=(Pe,xe)=>{for(var pe in xe||(xe={}))be.call(xe,pe)&&Me(Pe,pe,xe[pe]);if(Ne)for(var pe of Ne(xe))_e.call(xe,pe)&&Me(Pe,pe,xe[pe]);return Pe};const Ee=Pe=>React.createElement("svg",ve({className:"cjz_svg__icon",viewBox:"0 0 3194 1024",xmlns:"http://www.w3.org/2000/svg",width:623.828,height:200},Pe),React.createElement("path",{d:"M512 0h2170.88c282.624 0 512 229.376 512 512s-229.376 512-512 512H512C229.376 1024 0 794.624 0 512S229.376 0 512 0z",fill:"#EBEEFD"}),React.createElement("path",{d:"M1638.4 741.376c28.672 0 40.96-16.384 40.96-45.056V294.912h-36.864v393.216c0 16.384-8.192 20.48-20.48 20.48-24.576 0-45.056 0-73.728-4.096l8.192 32.768h81.92zm-372.736-258.048c49.152-45.056 90.112-94.208 126.976-147.456 32.768 32.768 69.632 77.824 110.592 135.168l24.576-24.576c-40.96-49.152-81.92-98.304-122.88-143.36h-24.576c-40.96 57.344-81.92 110.592-131.072 155.648l16.384 24.576zm323.584 159.744V339.968h-32.768v307.2h32.768zm-131.072 94.208c24.576 0 36.864-4.096 45.056-12.288s16.384-36.864 20.48-77.824l-32.768-12.288c0 28.672-4.096 45.056-8.192 53.248s-16.384 12.288-32.768 12.288h-98.304c-12.288 0-20.48-4.096-20.48-16.384v-204.8h106.496v94.208c0 12.288-8.192 20.48-20.48 20.48-16.384 0-32.768 0-49.152-4.096l8.192 32.768h53.248c28.672 0 40.96-16.384 40.96-40.96V450.56h-176.128v245.76c0 24.576 12.288 36.864 40.96 36.864h122.88zm585.728-53.248V634.88h131.072v-28.672h-131.072v-40.96h114.688v-28.672h-114.688v-40.96H2150.4v-69.632h32.768v-28.672H2150.4V327.68h-106.496v-32.768h-32.768v32.768h-86.016v28.672h86.016v36.864h-110.592v28.672h110.592v40.96h-86.016v28.672h86.016v40.96h-98.304v28.672h98.304v40.96h-110.592v28.672h110.592v49.152h32.768zm-270.336 57.344c24.576-16.384 40.96-36.864 57.344-61.44 4.096 4.096 12.288 8.192 16.384 12.288 36.864 24.576 102.4 36.864 188.416 36.864h147.456l4.096-32.768c-57.344 0-110.592 4.096-167.936 4.096-65.536 0-118.784-12.288-151.552-28.672-8.192-4.096-16.384-12.288-24.576-20.48 24.576-45.056 36.864-98.304 36.864-163.84v-20.48h-77.824c24.576-32.768 49.152-73.728 73.728-118.784v-28.672H1761.28v32.768h81.92c-24.576 40.96-49.152 81.92-77.824 118.784v28.672h90.112c-4.096 45.056-12.288 86.016-28.672 122.88-12.288-20.48-24.576-49.152-32.768-86.016l-32.768 12.288c12.288 40.96 28.672 77.824 45.056 106.496-16.384 24.576-36.864 40.96-57.344 57.344l24.576 28.672zm339.968-344.064h-69.632v-36.864h69.632v36.864zm0 69.632h-69.632v-40.96h69.632v40.96zm253.952 278.528v-20.48h212.992v20.48h36.864V524.288h-184.32c28.672-12.288 53.248-24.576 77.824-40.96l20.48-12.288h151.552v-32.768h-106.496c32.768-24.576 65.536-57.344 94.208-90.112l-32.768-20.48c-36.864 40.96-73.728 77.824-122.88 110.592h-61.44v-61.44h114.688v-32.768h-114.688v-49.152h-36.864v53.248h-135.168v32.768h135.168v57.344h-180.224v32.768h225.28c-69.632 40.96-147.456 69.632-229.376 90.112l16.384 32.768c28.672-8.192 57.344-20.48 81.92-28.672v180.224h36.864zm212.992-139.264h-212.992v-49.152h212.992v49.152zm0 86.016h-212.992v-53.248h212.992v53.248z",fill:"#165DFF"}),React.createElement("path",{d:"M573.44 204.8h327.68c90.112 0 163.84 73.728 163.84 163.84v327.68c0 90.112-73.728 163.84-163.84 163.84H573.44c-90.112 0-163.84-73.728-163.84-163.84V368.64c0-90.112 73.728-163.84 163.84-163.84z",fill:"#C2D0FF"}),React.createElement("path",{d:"M868.352 581.632c4.096 24.576 12.288 49.152 16.384 69.632 0 8.192 4.096 16.384 4.096 24.576s4.096 16.384 4.096 24.576 4.096 12.288 4.096 16.384v8.192c0 8.192 0 12.288-4.096 12.288-4.096 4.096-8.192 4.096-12.288 4.096h-8.192c-4.096 0-4.096 0-8.192-4.096L737.28 667.648c-24.576 12.288-45.056 24.576-61.44 36.864L651.264 716.8c-8.192 4.096-16.384 8.192-20.48 12.288-8.192 4.096-16.384 8.192-20.48 12.288s-8.192 4.096-8.192 4.096c-4.096 0-8.192 4.096-8.192 0-4.096 0-8.192 0-8.192-4.096-4.096 0-4.096-4.096-4.096-8.192v-8.192s0-4.096 4.096-8.192c0-4.096 4.096-12.288 4.096-16.384 0-8.192 4.096-16.384 4.096-24.576s4.096-16.384 8.192-24.576c4.096-20.48 12.288-45.056 16.384-69.632-24.576-16.384-45.056-28.672-57.344-45.056-8.192-4.096-16.384-8.192-20.48-16.384s-12.288-8.192-16.384-12.288S512 499.712 512 495.616c-4.096-4.096-8.192-4.096-8.192-4.096-4.096-4.096-4.096-8.192-8.192-12.288s-4.096-8.192-4.096-12.288 4.096-8.192 4.096-12.288c4.096 0 8.192-4.096 12.288-4.096l151.552-12.288L716.8 307.2c0-4.096 4.096-8.192 8.192-12.288 0-8.192 8.192-8.192 12.288-8.192s4.096 0 8.192 4.096c4.096 0 4.096 4.096 4.096 4.096l4.096 4.096s0 4.096 4.096 4.096l53.248 131.072 155.648 16.384c8.192 0 12.288 4.096 12.288 4.096 4.096 4.096 4.096 8.192 4.096 12.288s0 8.192-4.096 12.288l-12.288 12.288-98.304 90.112z",fill:"#2E5BEC"}));It.Z="data:image/svg+xml;base64,PHN2ZyBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDMxOTQgMTAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iNjIzLjgyOCIgaGVpZ2h0PSIyMDAiPjxwYXRoIGQ9Ik01MTIgMGgyMTcwLjg4YzI4Mi42MjQgMCA1MTIgMjI5LjM3NiA1MTIgNTEycy0yMjkuMzc2IDUxMi01MTIgNTEySDUxMkMyMjkuMzc2IDEwMjQgMCA3OTQuNjI0IDAgNTEyUzIyOS4zNzYgMCA1MTIgMHoiIGZpbGw9IiNFQkVFRkQiLz48cGF0aCBkPSJNMTYzOC40IDc0MS4zNzZjMjguNjcyIDAgNDAuOTYtMTYuMzg0IDQwLjk2LTQ1LjA1NlYyOTQuOTEyaC0zNi44NjR2MzkzLjIxNmMwIDE2LjM4NC04LjE5MiAyMC40OC0yMC40OCAyMC40OC0yNC41NzYgMC00NS4wNTYgMC03My43MjgtNC4wOTZsOC4xOTIgMzIuNzY4aDgxLjkyem0tMzcyLjczNi0yNTguMDQ4YzQ5LjE1Mi00NS4wNTYgOTAuMTEyLTk0LjIwOCAxMjYuOTc2LTE0Ny40NTYgMzIuNzY4IDMyLjc2OCA2OS42MzIgNzcuODI0IDExMC41OTIgMTM1LjE2OGwyNC41NzYtMjQuNTc2Yy00MC45Ni00OS4xNTItODEuOTItOTguMzA0LTEyMi44OC0xNDMuMzZoLTI0LjU3NmMtNDAuOTYgNTcuMzQ0LTgxLjkyIDExMC41OTItMTMxLjA3MiAxNTUuNjQ4bDE2LjM4NCAyNC41NzZ6bTMyMy41ODQgMTU5Ljc0NFYzMzkuOTY4aC0zMi43Njh2MzA3LjJoMzIuNzY4em0tMTMxLjA3MiA5NC4yMDhjMjQuNTc2IDAgMzYuODY0LTQuMDk2IDQ1LjA1Ni0xMi4yODhzMTYuMzg0LTM2Ljg2NCAyMC40OC03Ny44MjRsLTMyLjc2OC0xMi4yODhjMCAyOC42NzItNC4wOTYgNDUuMDU2LTguMTkyIDUzLjI0OHMtMTYuMzg0IDEyLjI4OC0zMi43NjggMTIuMjg4aC05OC4zMDRjLTEyLjI4OCAwLTIwLjQ4LTQuMDk2LTIwLjQ4LTE2LjM4NHYtMjA0LjhoMTA2LjQ5NnY5NC4yMDhjMCAxMi4yODgtOC4xOTIgMjAuNDgtMjAuNDggMjAuNDgtMTYuMzg0IDAtMzIuNzY4IDAtNDkuMTUyLTQuMDk2bDguMTkyIDMyLjc2OGg1My4yNDhjMjguNjcyIDAgNDAuOTYtMTYuMzg0IDQwLjk2LTQwLjk2VjQ1MC41NmgtMTc2LjEyOHYyNDUuNzZjMCAyNC41NzYgMTIuMjg4IDM2Ljg2NCA0MC45NiAzNi44NjRoMTIyLjg4em01ODUuNzI4LTUzLjI0OFY2MzQuODhoMTMxLjA3MnYtMjguNjcyaC0xMzEuMDcydi00MC45NmgxMTQuNjg4di0yOC42NzJoLTExNC42ODh2LTQwLjk2SDIxNTAuNHYtNjkuNjMyaDMyLjc2OHYtMjguNjcySDIxNTAuNFYzMjcuNjhoLTEwNi40OTZ2LTMyLjc2OGgtMzIuNzY4djMyLjc2OGgtODYuMDE2djI4LjY3Mmg4Ni4wMTZ2MzYuODY0aC0xMTAuNTkydjI4LjY3MmgxMTAuNTkydjQwLjk2aC04Ni4wMTZ2MjguNjcyaDg2LjAxNnY0MC45NmgtOTguMzA0djI4LjY3Mmg5OC4zMDR2NDAuOTZoLTExMC41OTJ2MjguNjcyaDExMC41OTJ2NDkuMTUyaDMyLjc2OHptLTI3MC4zMzYgNTcuMzQ0YzI0LjU3Ni0xNi4zODQgNDAuOTYtMzYuODY0IDU3LjM0NC02MS40NCA0LjA5NiA0LjA5NiAxMi4yODggOC4xOTIgMTYuMzg0IDEyLjI4OCAzNi44NjQgMjQuNTc2IDEwMi40IDM2Ljg2NCAxODguNDE2IDM2Ljg2NGgxNDcuNDU2bDQuMDk2LTMyLjc2OGMtNTcuMzQ0IDAtMTEwLjU5MiA0LjA5Ni0xNjcuOTM2IDQuMDk2LTY1LjUzNiAwLTExOC43ODQtMTIuMjg4LTE1MS41NTItMjguNjcyLTguMTkyLTQuMDk2LTE2LjM4NC0xMi4yODgtMjQuNTc2LTIwLjQ4IDI0LjU3Ni00NS4wNTYgMzYuODY0LTk4LjMwNCAzNi44NjQtMTYzLjg0di0yMC40OGgtNzcuODI0YzI0LjU3Ni0zMi43NjggNDkuMTUyLTczLjcyOCA3My43MjgtMTE4Ljc4NHYtMjguNjcySDE3NjEuMjh2MzIuNzY4aDgxLjkyYy0yNC41NzYgNDAuOTYtNDkuMTUyIDgxLjkyLTc3LjgyNCAxMTguNzg0djI4LjY3Mmg5MC4xMTJjLTQuMDk2IDQ1LjA1Ni0xMi4yODggODYuMDE2LTI4LjY3MiAxMjIuODgtMTIuMjg4LTIwLjQ4LTI0LjU3Ni00OS4xNTItMzIuNzY4LTg2LjAxNmwtMzIuNzY4IDEyLjI4OGMxMi4yODggNDAuOTYgMjguNjcyIDc3LjgyNCA0NS4wNTYgMTA2LjQ5Ni0xNi4zODQgMjQuNTc2LTM2Ljg2NCA0MC45Ni01Ny4zNDQgNTcuMzQ0bDI0LjU3NiAyOC42NzJ6bTMzOS45NjgtMzQ0LjA2NGgtNjkuNjMydi0zNi44NjRoNjkuNjMydjM2Ljg2NHptMCA2OS42MzJoLTY5LjYzMnYtNDAuOTZoNjkuNjMydjQwLjk2em0yNTMuOTUyIDI3OC41Mjh2LTIwLjQ4aDIxMi45OTJ2MjAuNDhoMzYuODY0VjUyNC4yODhoLTE4NC4zMmMyOC42NzItMTIuMjg4IDUzLjI0OC0yNC41NzYgNzcuODI0LTQwLjk2bDIwLjQ4LTEyLjI4OGgxNTEuNTUydi0zMi43NjhoLTEwNi40OTZjMzIuNzY4LTI0LjU3NiA2NS41MzYtNTcuMzQ0IDk0LjIwOC05MC4xMTJsLTMyLjc2OC0yMC40OGMtMzYuODY0IDQwLjk2LTczLjcyOCA3Ny44MjQtMTIyLjg4IDExMC41OTJoLTYxLjQ0di02MS40NGgxMTQuNjg4di0zMi43NjhoLTExNC42ODh2LTQ5LjE1MmgtMzYuODY0djUzLjI0OGgtMTM1LjE2OHYzMi43NjhoMTM1LjE2OHY1Ny4zNDRoLTE4MC4yMjR2MzIuNzY4aDIyNS4yOGMtNjkuNjMyIDQwLjk2LTE0Ny40NTYgNjkuNjMyLTIyOS4zNzYgOTAuMTEybDE2LjM4NCAzMi43NjhjMjguNjcyLTguMTkyIDU3LjM0NC0yMC40OCA4MS45Mi0yOC42NzJ2MTgwLjIyNGgzNi44NjR6bTIxMi45OTItMTM5LjI2NGgtMjEyLjk5MnYtNDkuMTUyaDIxMi45OTJ2NDkuMTUyem0wIDg2LjAxNmgtMjEyLjk5MnYtNTMuMjQ4aDIxMi45OTJ2NTMuMjQ4eiIgZmlsbD0iIzE2NURGRiIvPjxwYXRoIGQ9Ik01NzMuNDQgMjA0LjhoMzI3LjY4YzkwLjExMiAwIDE2My44NCA3My43MjggMTYzLjg0IDE2My44NHYzMjcuNjhjMCA5MC4xMTItNzMuNzI4IDE2My44NC0xNjMuODQgMTYzLjg0SDU3My40NGMtOTAuMTEyIDAtMTYzLjg0LTczLjcyOC0xNjMuODQtMTYzLjg0VjM2OC42NGMwLTkwLjExMiA3My43MjgtMTYzLjg0IDE2My44NC0xNjMuODR6IiBmaWxsPSIjQzJEMEZGIi8+PHBhdGggZD0iTTg2OC4zNTIgNTgxLjYzMmM0LjA5NiAyNC41NzYgMTIuMjg4IDQ5LjE1MiAxNi4zODQgNjkuNjMyIDAgOC4xOTIgNC4wOTYgMTYuMzg0IDQuMDk2IDI0LjU3NnM0LjA5NiAxNi4zODQgNC4wOTYgMjQuNTc2IDQuMDk2IDEyLjI4OCA0LjA5NiAxNi4zODR2OC4xOTJjMCA4LjE5MiAwIDEyLjI4OC00LjA5NiAxMi4yODgtNC4wOTYgNC4wOTYtOC4xOTIgNC4wOTYtMTIuMjg4IDQuMDk2aC04LjE5MmMtNC4wOTYgMC00LjA5NiAwLTguMTkyLTQuMDk2TDczNy4yOCA2NjcuNjQ4Yy0yNC41NzYgMTIuMjg4LTQ1LjA1NiAyNC41NzYtNjEuNDQgMzYuODY0TDY1MS4yNjQgNzE2LjhjLTguMTkyIDQuMDk2LTE2LjM4NCA4LjE5Mi0yMC40OCAxMi4yODgtOC4xOTIgNC4wOTYtMTYuMzg0IDguMTkyLTIwLjQ4IDEyLjI4OHMtOC4xOTIgNC4wOTYtOC4xOTIgNC4wOTZjLTQuMDk2IDAtOC4xOTIgNC4wOTYtOC4xOTIgMC00LjA5NiAwLTguMTkyIDAtOC4xOTItNC4wOTYtNC4wOTYgMC00LjA5Ni00LjA5Ni00LjA5Ni04LjE5MnYtOC4xOTJzMC00LjA5NiA0LjA5Ni04LjE5MmMwLTQuMDk2IDQuMDk2LTEyLjI4OCA0LjA5Ni0xNi4zODQgMC04LjE5MiA0LjA5Ni0xNi4zODQgNC4wOTYtMjQuNTc2czQuMDk2LTE2LjM4NCA4LjE5Mi0yNC41NzZjNC4wOTYtMjAuNDggMTIuMjg4LTQ1LjA1NiAxNi4zODQtNjkuNjMyLTI0LjU3Ni0xNi4zODQtNDUuMDU2LTI4LjY3Mi01Ny4zNDQtNDUuMDU2LTguMTkyLTQuMDk2LTE2LjM4NC04LjE5Mi0yMC40OC0xNi4zODRzLTEyLjI4OC04LjE5Mi0xNi4zODQtMTIuMjg4UzUxMiA0OTkuNzEyIDUxMiA0OTUuNjE2Yy00LjA5Ni00LjA5Ni04LjE5Mi00LjA5Ni04LjE5Mi00LjA5Ni00LjA5Ni00LjA5Ni00LjA5Ni04LjE5Mi04LjE5Mi0xMi4yODhzLTQuMDk2LTguMTkyLTQuMDk2LTEyLjI4OCA0LjA5Ni04LjE5MiA0LjA5Ni0xMi4yODhjNC4wOTYgMCA4LjE5Mi00LjA5NiAxMi4yODgtNC4wOTZsMTUxLjU1Mi0xMi4yODhMNzE2LjggMzA3LjJjMC00LjA5NiA0LjA5Ni04LjE5MiA4LjE5Mi0xMi4yODggMC04LjE5MiA4LjE5Mi04LjE5MiAxMi4yODgtOC4xOTJzNC4wOTYgMCA4LjE5MiA0LjA5NmM0LjA5NiAwIDQuMDk2IDQuMDk2IDQuMDk2IDQuMDk2bDQuMDk2IDQuMDk2czAgNC4wOTYgNC4wOTYgNC4wOTZsNTMuMjQ4IDEzMS4wNzIgMTU1LjY0OCAxNi4zODRjOC4xOTIgMCAxMi4yODggNC4wOTYgMTIuMjg4IDQuMDk2IDQuMDk2IDQuMDk2IDQuMDk2IDguMTkyIDQuMDk2IDEyLjI4OHMwIDguMTkyLTQuMDk2IDEyLjI4OGwtMTIuMjg4IDEyLjI4OC05OC4zMDQgOTAuMTEyeiIgZmlsbD0iIzJFNUJFQyIvPjwvc3ZnPg=="},4285:function(){"use strict";function At(ce,te,ne,le){ne===void 0&&(ne=0),le===void 0&&(le=1/0),this._name=ce,this._defaultValue=te,this._minimum=ne,this._maximum=le}Object.defineProperty(At.prototype,"name",{get:function(){return this._name},set:function(ce){if(typeof ce!="string"||ce==="")throw new Error("Shape name must be a valid string.");this._name=ce}}),Object.defineProperty(At.prototype,"defaultValue",{get:function(){return this._defaultValue},set:function(ce){if(typeof ce!="number"||isNaN(ce))throw new Error("The default value must be a real number, not: "+ce);this._defaultValue=ce}}),Object.defineProperty(At.prototype,"minimum",{get:function(){return this._minimum},set:function(ce){if(typeof ce!="number"||isNaN(ce))throw new Error("Minimum must be a real number, not: "+ce);this._minimum=ce}}),Object.defineProperty(At.prototype,"maximum",{get:function(){return this._maximum},set:function(ce){if(typeof ce!="number"||isNaN(ce))throw new Error("Maximum must be a real number, not: "+ce);this._maximum=ce}}),go.Shape._FigureParameters={},go.Shape.getFigureParameter=function(ce,te){var ne=go.Shape._FigureParameters[ce];return ne?ne[te]:null},go.Shape.setFigureParameter=function(ce,te,ne){if(!(ne instanceof At))throw new Error("Third argument to Shape.setFigureParameter is not FigureParameter: "+ne);if(ne.defaultValue<ne.minimum||ne.defaultValue>ne.maximum)throw new Error("defaultValue must be between minimum and maximum, not: "+ne.defaultValue);var le=go.Shape._FigureParameters[ce];le||(le=[],go.Shape._FigureParameters[ce]=le),le[te]=ne};var It=[];function Te(ce,te){var ne=It.pop();return ne===void 0?new go.Point(ce,te):(ne.x=ce,ne.y=te,ne)}function Oe(){var ce=It.pop();return ce===void 0?new go.Point:ce}function He(ce){It.push(ce)}function Ne(ce,te,ne,le,se,fe,he,ie,ue){ue||(ue=new go.Point);var me=ce-ne,Ce=se-he,Ie=NaN,Fe=NaN;if(me===0)if(Ce===0)ce===ne&&(Ie=ce,Fe=te);else{var Re=(fe-ie)/Ce,Ue=fe-Re*se;Ie=ce,Fe=Re*Ie+Ue}else if(Ce===0){var Ge=(te-le)/me,Je=te-Ge*ce;Ie=se,Fe=Ge*Ie+Je}else{var Ge=(te-le)/me,Re=(fe-ie)/Ce,Je=te-Ge*ce,Ue=fe-Re*se;Ie=(Ue-Je)/(Ge-Re),Fe=Ge*Ie+Je}return ue.x=Ie,ue.y=Fe,ue}function be(ce,te,ne,le,se,fe,he,ie,ue,me,Ce,Ie,Fe,Re){var Ue=1-ue,Ge=ue,Je=ce*Ue+ne*Ge,Qe=te*Ue+le*Ge,rt=ne*Ue+se*Ge,$e=le*Ue+fe*Ge,qe=se*Ue+he*Ge,ot=fe*Ue+ie*Ge,at=Je*Ue+rt*Ge,ut=Qe*Ue+$e*Ge,nt=rt*Ue+qe*Ge,lt=$e*Ue+ot*Ge,yt=at*Ue+nt*Ge,ft=ut*Ue+lt*Ge;me.x=Je,me.y=Qe,Ce.x=at,Ce.y=ut,Ie.x=yt,Ie.y=ft,Fe.x=nt,Fe.y=lt,Re.x=qe,Re.y=ot}var _e=new go.Spot(.156,.156),Me=new go.Spot(.844,.844),ve=4*((Math.sqrt(2)-1)/3);go.Shape.setFigureParameter("RoundedRectangle",0,new At("CornerRounding",5)),go.Shape.defineFigureGenerator("RoundedRectangle",function(ce,te,ne){var le=ce?ce.parameter1:NaN;(isNaN(le)||le<0)&&(le=5),le=Math.min(le,te/3),le=Math.min(le,ne/3);var se=le*ve,fe=new go.Geometry().add(new go.PathFigure(le,0,!0).add(new go.PathSegment(go.PathSegment.Line,te-le,0)).add(new go.PathSegment(go.PathSegment.Bezier,te,le,te-se,0,te,se)).add(new go.PathSegment(go.PathSegment.Line,te,ne-le)).add(new go.PathSegment(go.PathSegment.Bezier,te-le,ne,te,ne-se,te-se,ne)).add(new go.PathSegment(go.PathSegment.Line,le,ne)).add(new go.PathSegment(go.PathSegment.Bezier,0,ne-le,se,ne,0,ne-se)).add(new go.PathSegment(go.PathSegment.Line,0,le)).add(new go.PathSegment(go.PathSegment.Bezier,le,0,0,se,se,0).close()));return se>1&&(fe.spot1=new go.Spot(0,0,se,se),fe.spot2=new go.Spot(1,1,-se,-se)),fe}),go.Shape.defineFigureGenerator("Border","RoundedRectangle"),go.Shape.defineFigureGenerator("TriangleRight",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,0).add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)).add(new go.PathSegment(go.PathSegment.Line,0,ne).close())).setSpots(0,.25,.5,.75)}),go.Shape.defineFigureGenerator("TriangleDown",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,0).add(new go.PathSegment(go.PathSegment.Line,te,0)).add(new go.PathSegment(go.PathSegment.Line,.5*te,ne).close())).setSpots(.25,0,.75,.5)}),go.Shape.defineFigureGenerator("TriangleLeft",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(te,ne).add(new go.PathSegment(go.PathSegment.Line,0,.5*ne)).add(new go.PathSegment(go.PathSegment.Line,te,0).close())).setSpots(.5,.25,1,.75)}),go.Shape.defineFigureGenerator("TriangleUp",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(te,ne).add(new go.PathSegment(go.PathSegment.Line,0,ne)).add(new go.PathSegment(go.PathSegment.Line,.5*te,0).close())).setSpots(.25,.5,.75,1)}),go.Shape.defineFigureGenerator("Triangle","TriangleUp"),go.Shape.defineFigureGenerator("Diamond",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(.5*te,0).add(new go.PathSegment(go.PathSegment.Line,0,.5*ne)).add(new go.PathSegment(go.PathSegment.Line,.5*te,ne)).add(new go.PathSegment(go.PathSegment.Line,te,.5*ne).close())).setSpots(.25,.25,.75,.75)}),go.Shape.defineFigureGenerator("LineH",function(ce,te,ne){var le=new go.Geometry(go.Geometry.Line);return le.startX=0,le.startY=ne/2,le.endX=te,le.endY=ne/2,le}),go.Shape.defineFigureGenerator("LineV",function(ce,te,ne){var le=new go.Geometry(go.Geometry.Line);return le.startX=te/2,le.startY=0,le.endX=te/2,le.endY=ne,le}),go.Shape.defineFigureGenerator("BarH","Rectangle"),go.Shape.defineFigureGenerator("BarV","Rectangle"),go.Shape.defineFigureGenerator("MinusLine","LineH"),go.Shape.defineFigureGenerator("PlusLine",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,ne/2,!1).add(new go.PathSegment(go.PathSegment.Line,te,ne/2)).add(new go.PathSegment(go.PathSegment.Move,te/2,0)).add(new go.PathSegment(go.PathSegment.Line,te/2,ne)))}),go.Shape.defineFigureGenerator("XLine",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,ne,!1).add(new go.PathSegment(go.PathSegment.Line,te,0)).add(new go.PathSegment(go.PathSegment.Move,0,0)).add(new go.PathSegment(go.PathSegment.Line,te,ne)))}),go.Shape.defineFigureGenerator("LineRight",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(.25*te,0,!1).add(new go.PathSegment(go.PathSegment.Line,.75*te,.5*ne)).add(new go.PathSegment(go.PathSegment.Line,.25*te,ne)))}),go.Shape.defineFigureGenerator("LineDown",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,.25*ne,!1).add(new go.PathSegment(go.PathSegment.Line,.5*te,.75*ne)).add(new go.PathSegment(go.PathSegment.Line,te,.25*ne)))}),go.Shape.defineFigureGenerator("LineLeft",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(.75*te,0,!1).add(new go.PathSegment(go.PathSegment.Line,.25*te,.5*ne)).add(new go.PathSegment(go.PathSegment.Line,.75*te,ne)))}),go.Shape.defineFigureGenerator("LineUp",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,.75*ne,!1).add(new go.PathSegment(go.PathSegment.Line,.5*te,.25*ne)).add(new go.PathSegment(go.PathSegment.Line,te,.75*ne)))}),go.Shape.defineFigureGenerator("AsteriskLine",function(ce,te,ne){var le=.2/Math.SQRT2;return new go.Geometry().add(new go.PathFigure(le*te,(1-le)*ne,!1).add(new go.PathSegment(go.PathSegment.Line,(1-le)*te,le*ne)).add(new go.PathSegment(go.PathSegment.Move,le*te,le*ne)).add(new go.PathSegment(go.PathSegment.Line,(1-le)*te,(1-le)*ne)).add(new go.PathSegment(go.PathSegment.Move,0,ne/2)).add(new go.PathSegment(go.PathSegment.Line,te,ne/2)).add(new go.PathSegment(go.PathSegment.Move,te/2,0)).add(new go.PathSegment(go.PathSegment.Line,te/2,ne)))}),go.Shape.defineFigureGenerator("CircleLine",function(ce,te,ne){var le=te/2,se=new go.Geometry().add(new go.PathFigure(te,te/2,!1).add(new go.PathSegment(go.PathSegment.Arc,0,360,le,le,le,le).close()));return se.spot1=_e,se.spot2=Me,se.defaultStretch=go.GraphObject.Uniform,se}),go.Shape.defineFigureGenerator("Line1",function(ce,te,ne){var le=new go.Geometry(go.Geometry.Line);return le.startX=0,le.startY=0,le.endX=te,le.endY=ne,le}),go.Shape.defineFigureGenerator("Line2",function(ce,te,ne){var le=new go.Geometry(go.Geometry.Line);return le.startX=te,le.startY=0,le.endX=0,le.endY=ne,le}),go.Shape.defineFigureGenerator("Curve1",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,0,!1).add(new go.PathSegment(go.PathSegment.Bezier,te,ne,ve*te,0,te,(1-ve)*ne)))}),go.Shape.defineFigureGenerator("Curve2",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,0,!1).add(new go.PathSegment(go.PathSegment.Bezier,te,ne,0,ve*ne,(1-ve)*te,ne)))}),go.Shape.defineFigureGenerator("Curve3",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(te,0,!1).add(new go.PathSegment(go.PathSegment.Bezier,0,ne,te,ve*ne,ve*te,ne)))}),go.Shape.defineFigureGenerator("Curve4",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(te,0,!1).add(new go.PathSegment(go.PathSegment.Bezier,0,ne,(1-ve)*te,0,0,(1-ve)*ne)))}),go.Shape.defineFigureGenerator("TriangleDownLeft",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,0,!0).add(new go.PathSegment(go.PathSegment.Line,te,ne)).add(new go.PathSegment(go.PathSegment.Line,0,ne).close())).setSpots(0,.5,.5,1)}),go.Shape.defineFigureGenerator("TriangleDownRight",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(te,0,!0).add(new go.PathSegment(go.PathSegment.Line,te,ne)).add(new go.PathSegment(go.PathSegment.Line,0,ne).close())).setSpots(.5,.5,1,1)}),go.Shape.defineFigureGenerator("TriangleUpLeft",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,0,!0).add(new go.PathSegment(go.PathSegment.Line,te,0)).add(new go.PathSegment(go.PathSegment.Line,0,ne).close())).setSpots(0,0,.5,.5)}),go.Shape.defineFigureGenerator("TriangleUpRight",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,0,!0).add(new go.PathSegment(go.PathSegment.Line,te,0)).add(new go.PathSegment(go.PathSegment.Line,te,ne).close())).setSpots(.5,0,1,.5)}),go.Shape.defineFigureGenerator("RightTriangle","TriangleDownLeft"),go.Shape.setFigureParameter("Parallelogram1",0,new At("Indent",.1,-.99,.99)),go.Shape.defineFigureGenerator("Parallelogram1",function(ce,te,ne){var le=ce?ce.parameter1:NaN;isNaN(le)?le=.1:le<-1?le=-1:le>1&&(le=1);var se=Math.abs(le)*te;if(le===0){var fe=new go.Geometry(go.Geometry.Rectangle);return fe.startX=0,fe.startY=0,fe.endX=te,fe.endY=ne,fe}else{var fe=new go.Geometry;return le>0?fe.add(new go.PathFigure(se,0).add(new go.PathSegment(go.PathSegment.Line,te,0)).add(new go.PathSegment(go.PathSegment.Line,te-se,ne)).add(new go.PathSegment(go.PathSegment.Line,0,ne).close())):fe.add(new go.PathFigure(0,0).add(new go.PathSegment(go.PathSegment.Line,te-se,0)).add(new go.PathSegment(go.PathSegment.Line,te,ne)).add(new go.PathSegment(go.PathSegment.Line,se,ne).close())),se<te/2&&fe.setSpots(se/te,0,(te-se)/te,1),fe}}),go.Shape.defineFigureGenerator("Parallelogram","Parallelogram1"),go.Shape.setFigureParameter("Parallelogram2",0,new At("Indent",10,-1/0,1/0)),go.Shape.defineFigureGenerator("Parallelogram2",function(ce,te,ne){var le=ce?ce.parameter1:NaN;isNaN(le)?le=10:le<-te?le=-te:le>te&&(le=te);var se=Math.abs(le);if(le===0){var fe=new go.Geometry(go.Geometry.Rectangle);return fe.startX=0,fe.startY=0,fe.endX=te,fe.endY=ne,fe}else{var fe=new go.Geometry;return le>0?fe.add(new go.PathFigure(se,0).add(new go.PathSegment(go.PathSegment.Line,te,0)).add(new go.PathSegment(go.PathSegment.Line,te-se,ne)).add(new go.PathSegment(go.PathSegment.Line,0,ne).close())):fe.add(new go.PathFigure(0,0).add(new go.PathSegment(go.PathSegment.Line,te-se,0)).add(new go.PathSegment(go.PathSegment.Line,te,ne)).add(new go.PathSegment(go.PathSegment.Line,se,ne).close())),se<te/2&&fe.setSpots(se/te,0,(te-se)/te,1),fe}}),go.Shape.setFigureParameter("Trapezoid1",0,new At("Indent",.2,-.99,.99)),go.Shape.defineFigureGenerator("Trapezoid1",function(ce,te,ne){var le=ce?ce.parameter1:NaN;isNaN(le)?le=.2:le<.5?le=-.5:le>.5&&(le=.5);var se=Math.abs(le)*te;if(le===0){var fe=new go.Geometry(go.Geometry.Rectangle);return fe.startX=0,fe.startY=0,fe.endX=te,fe.endY=ne,fe}else{var fe=new go.Geometry;return le>0?fe.add(new go.PathFigure(se,0).add(new go.PathSegment(go.PathSegment.Line,te-se,0)).add(new go.PathSegment(go.PathSegment.Line,te,ne)).add(new go.PathSegment(go.PathSegment.Line,0,ne).close())):fe.add(new go.PathFigure(0,0).add(new go.PathSegment(go.PathSegment.Line,te,0)).add(new go.PathSegment(go.PathSegment.Line,te-se,ne)).add(new go.PathSegment(go.PathSegment.Line,se,ne).close())),se<te/2&&fe.setSpots(se/te,0,(te-se)/te,1),fe}}),go.Shape.defineFigureGenerator("Trapezoid","Trapezoid1"),go.Shape.setFigureParameter("Trapezoid2",0,new At("Indent",20,-1/0,1/0)),go.Shape.defineFigureGenerator("Trapezoid2",function(ce,te,ne){var le=ce?ce.parameter1:NaN;isNaN(le)?le=20:le<-te?le=-te/2:le>te&&(le=te/2);var se=Math.abs(le);if(le===0){var fe=new go.Geometry(go.Geometry.Rectangle);return fe.startX=0,fe.startY=0,fe.endX=te,fe.endY=ne,fe}else{var fe=new go.Geometry;return le>0?fe.add(new go.PathFigure(se,0).add(new go.PathSegment(go.PathSegment.Line,te-se,0)).add(new go.PathSegment(go.PathSegment.Line,te,ne)).add(new go.PathSegment(go.PathSegment.Line,0,ne).close())):fe.add(new go.PathFigure(0,0).add(new go.PathSegment(go.PathSegment.Line,te,0)).add(new go.PathSegment(go.PathSegment.Line,te-se,ne)).add(new go.PathSegment(go.PathSegment.Line,se,ne).close())),se<te/2&&fe.setSpots(se/te,0,(te-se)/te,1),fe}}),go.Shape.setFigureParameter("ManualOperation",0,new At("Indent",10,-1/0,1/0)),go.Shape.defineFigureGenerator("ManualOperation",function(ce,te,ne){var le=ce?ce.parameter1:NaN;isNaN(le)?le=10:le<-te?le=-te/2:le>te&&(le=te/2);var se=Math.abs(le);if(le===0){var fe=new go.Geometry(go.Geometry.Rectangle);return fe.startX=0,fe.startY=0,fe.endX=te,fe.endY=ne,fe}else{var fe=new go.Geometry;return le>0?fe.add(new go.PathFigure(0,0).add(new go.PathSegment(go.PathSegment.Line,te,0)).add(new go.PathSegment(go.PathSegment.Line,te-se,ne)).add(new go.PathSegment(go.PathSegment.Line,se,ne).close())):fe.add(new go.PathFigure(se,0).add(new go.PathSegment(go.PathSegment.Line,te-se,0)).add(new go.PathSegment(go.PathSegment.Line,te,ne)).add(new go.PathSegment(go.PathSegment.Line,0,ne).close())),se<te/2&&fe.setSpots(se/te,0,(te-se)/te,1),fe}});var Ee=[];function Pe(){var ce=Ee.pop();return ce===void 0?[]:ce}function xe(ce){ce.length=0,Ee.push(ce)}function pe(ce){for(var te=Pe(),ne=.5,le=.5,se=Math.PI*1.5,fe=0,he=0;he<ce;he++)fe=2*Math.PI/ce*he+se,te[he]=new go.Point(le+ne*Math.cos(fe),le+ne*Math.sin(fe));return te.push(te[0]),te}function Ae(ce){var te=Se(ce),ne=Pe();ne[0]=te[0];for(var le=1,se=1;le<te.length;le+=2,se+=3)ne[se]=te[le],ne[se+1]=te[le],ne[se+2]=te[le+1];return xe(te),ne}function Se(ce){for(var te=pe(ce),ne=Pe(),le=Math.floor(te.length/2),se=te.length-1,fe=ce%2===0?2:1,he=0;he<se;he++){var ie=te[he],ue=te[he+1],me=te[(le+he-1)%se],Ce=te[(le+he+fe)%se];ne[he*2]=ie,ne[he*2+1]=Ne(ie.x,ie.y,me.x,me.y,ue.x,ue.y,Ce.x,Ce.y,new go.Point)}return ne[ne.length]=ne[0],xe(te),ne}go.Shape.defineFigureGenerator("Pentagon",function(ce,te,ne){var le=pe(5),se=new go.Geometry,fe=new go.PathFigure(le[0].x*te,le[0].y*ne,!0);se.add(fe);for(var he=1;he<5;he++)fe.add(new go.PathSegment(go.PathSegment.Line,le[he].x*te,le[he].y*ne));return fe.add(new go.PathSegment(go.PathSegment.Line,le[0].x*te,le[0].y*ne).close()),xe(le),se.spot1=new go.Spot(.2,.22),se.spot2=new go.Spot(.8,.9),se}),go.Shape.defineFigureGenerator("Hexagon",function(ce,te,ne){var le=pe(6),se=new go.Geometry,fe=new go.PathFigure(le[0].x*te,le[0].y*ne,!0);se.add(fe);for(var he=1;he<6;he++)fe.add(new go.PathSegment(go.PathSegment.Line,le[he].x*te,le[he].y*ne));return fe.add(new go.PathSegment(go.PathSegment.Line,le[0].x*te,le[0].y*ne).close()),xe(le),se.spot1=new go.Spot(.07,.25),se.spot2=new go.Spot(.93,.75),se}),go.Shape.defineFigureGenerator("Heptagon",function(ce,te,ne){var le=pe(7),se=new go.Geometry,fe=new go.PathFigure(le[0].x*te,le[0].y*ne,!0);se.add(fe);for(var he=1;he<7;he++)fe.add(new go.PathSegment(go.PathSegment.Line,le[he].x*te,le[he].y*ne));return fe.add(new go.PathSegment(go.PathSegment.Line,le[0].x*te,le[0].y*ne).close()),xe(le),se.spot1=new go.Spot(.2,.15),se.spot2=new go.Spot(.8,.85),se}),go.Shape.defineFigureGenerator("Octagon",function(ce,te,ne){var le=pe(8),se=new go.Geometry,fe=new go.PathFigure(le[0].x*te,le[0].y*ne,!0);se.add(fe);for(var he=1;he<8;he++)fe.add(new go.PathSegment(go.PathSegment.Line,le[he].x*te,le[he].y*ne));return fe.add(new go.PathSegment(go.PathSegment.Line,le[0].x*te,le[0].y*ne).close()),xe(le),se.spot1=new go.Spot(.15,.15),se.spot2=new go.Spot(.85,.85),se}),go.Shape.defineFigureGenerator("Nonagon",function(ce,te,ne){var le=pe(9),se=new go.Geometry,fe=new go.PathFigure(le[0].x*te,le[0].y*ne,!0);se.add(fe);for(var he=1;he<9;he++)fe.add(new go.PathSegment(go.PathSegment.Line,le[he].x*te,le[he].y*ne));return fe.add(new go.PathSegment(go.PathSegment.Line,le[0].x*te,le[0].y*ne).close()),xe(le),se.spot1=new go.Spot(.17,.13),se.spot2=new go.Spot(.82,.82),se}),go.Shape.defineFigureGenerator("Decagon",function(ce,te,ne){var le=pe(10),se=new go.Geometry,fe=new go.PathFigure(le[0].x*te,le[0].y*ne,!0);se.add(fe);for(var he=1;he<10;he++)fe.add(new go.PathSegment(go.PathSegment.Line,le[he].x*te,le[he].y*ne));return fe.add(new go.PathSegment(go.PathSegment.Line,le[0].x*te,le[0].y*ne).close()),xe(le),se.spot1=new go.Spot(.16,.16),se.spot2=new go.Spot(.84,.84),se}),go.Shape.defineFigureGenerator("Dodecagon",function(ce,te,ne){var le=pe(12),se=new go.Geometry,fe=new go.PathFigure(le[0].x*te,le[0].y*ne,!0);se.add(fe);for(var he=1;he<12;he++)fe.add(new go.PathSegment(go.PathSegment.Line,le[he].x*te,le[he].y*ne));return fe.add(new go.PathSegment(go.PathSegment.Line,le[0].x*te,le[0].y*ne).close()),xe(le),se.spot1=new go.Spot(.16,.16),se.spot2=new go.Spot(.84,.84),se}),go.Shape.defineFigureGenerator("FivePointedStar",function(ce,te,ne){var le=Se(5),se=new go.Geometry,fe=new go.PathFigure(le[0].x*te,le[0].y*ne,!0);se.add(fe);for(var he=1;he<10;he++)fe.add(new go.PathSegment(go.PathSegment.Line,le[he].x*te,le[he].y*ne));return fe.add(new go.PathSegment(go.PathSegment.Line,le[0].x*te,le[0].y*ne).close()),xe(le),se.spot1=new go.Spot(.266,.333),se.spot2=new go.Spot(.733,.733),se}),go.Shape.defineFigureGenerator("SixPointedStar",function(ce,te,ne){var le=Se(6),se=new go.Geometry,fe=new go.PathFigure(le[0].x*te,le[0].y*ne,!0);se.add(fe);for(var he=1;he<12;he++)fe.add(new go.PathSegment(go.PathSegment.Line,le[he].x*te,le[he].y*ne));return fe.add(new go.PathSegment(go.PathSegment.Line,le[0].x*te,le[0].y*ne).close()),xe(le),se.spot1=new go.Spot(.17,.25),se.spot2=new go.Spot(.83,.75),se}),go.Shape.defineFigureGenerator("SevenPointedStar",function(ce,te,ne){var le=Se(7),se=new go.Geometry,fe=new go.PathFigure(le[0].x*te,le[0].y*ne,!0);se.add(fe);for(var he=1;he<14;he++)fe.add(new go.PathSegment(go.PathSegment.Line,le[he].x*te,le[he].y*ne));return fe.add(new go.PathSegment(go.PathSegment.Line,le[0].x*te,le[0].y*ne).close()),xe(le),se.spot1=new go.Spot(.222,.277),se.spot2=new go.Spot(.777,.666),se}),go.Shape.defineFigureGenerator("EightPointedStar",function(ce,te,ne){var le=Se(8),se=new go.Geometry,fe=new go.PathFigure(le[0].x*te,le[0].y*ne,!0);se.add(fe);for(var he=1;he<16;he++)fe.add(new go.PathSegment(go.PathSegment.Line,le[he].x*te,le[he].y*ne));return fe.add(new go.PathSegment(go.PathSegment.Line,le[0].x*te,le[0].y*ne).close()),xe(le),se.spot1=new go.Spot(.25,.25),se.spot2=new go.Spot(.75,.75),se}),go.Shape.defineFigureGenerator("NinePointedStar",function(ce,te,ne){var le=Se(9),se=new go.Geometry,fe=new go.PathFigure(le[0].x*te,le[0].y*ne,!0);se.add(fe);for(var he=1;he<18;he++)fe.add(new go.PathSegment(go.PathSegment.Line,le[he].x*te,le[he].y*ne));return fe.add(new go.PathSegment(go.PathSegment.Line,le[0].x*te,le[0].y*ne).close()),xe(le),se.spot1=new go.Spot(.222,.277),se.spot2=new go.Spot(.777,.666),se}),go.Shape.defineFigureGenerator("TenPointedStar",function(ce,te,ne){var le=Se(10),se=new go.Geometry,fe=new go.PathFigure(le[0].x*te,le[0].y*ne,!0);se.add(fe);for(var he=1;he<20;he++)fe.add(new go.PathSegment(go.PathSegment.Line,le[he].x*te,le[he].y*ne));return fe.add(new go.PathSegment(go.PathSegment.Line,le[0].x*te,le[0].y*ne).close()),xe(le),se.spot1=new go.Spot(.281,.261),se.spot2=new go.Spot(.723,.748),se}),go.Shape.defineFigureGenerator("FivePointedBurst",function(ce,te,ne){var le=Ae(5),se=new go.Geometry,fe=new go.PathFigure(le[0].x*te,le[0].y*ne,!0);se.add(fe);for(var he=1;he<le.length;he+=3)fe.add(new go.PathSegment(go.PathSegment.Bezier,le[he+2].x*te,le[he+2].y*ne,le[he].x*te,le[he].y*ne,le[he+1].x*te,le[he+1].y*ne));return fe.segments.last().close(),xe(le),se.spot1=new go.Spot(.222,.277),se.spot2=new go.Spot(.777,.777),se}),go.Shape.defineFigureGenerator("SixPointedBurst",function(ce,te,ne){var le=Ae(6),se=new go.Geometry,fe=new go.PathFigure(le[0].x*te,le[0].y*ne,!0);se.add(fe);for(var he=1;he<le.length;he+=3)fe.add(new go.PathSegment(go.PathSegment.Bezier,le[he+2].x*te,le[he+2].y*ne,le[he].x*te,le[he].y*ne,le[he+1].x*te,le[he+1].y*ne));return fe.segments.last().close(),xe(le),se.spot1=new go.Spot(.17,.222),se.spot2=new go.Spot(.833,.777),se}),go.Shape.defineFigureGenerator("SevenPointedBurst",function(ce,te,ne){var le=Ae(7),se=new go.Geometry,fe=new go.PathFigure(le[0].x*te,le[0].y*ne,!0);se.add(fe);for(var he=1;he<le.length;he+=3)fe.add(new go.PathSegment(go.PathSegment.Bezier,le[he+2].x*te,le[he+2].y*ne,le[he].x*te,le[he].y*ne,le[he+1].x*te,le[he+1].y*ne));return fe.segments.last().close(),xe(le),se.spot1=new go.Spot(.222,.222),se.spot2=new go.Spot(.777,.777),se}),go.Shape.defineFigureGenerator("EightPointedBurst",function(ce,te,ne){var le=Ae(8),se=new go.Geometry,fe=new go.PathFigure(le[0].x*te,le[0].y*ne,!0);se.add(fe);for(var he=1;he<le.length;he+=3)fe.add(new go.PathSegment(go.PathSegment.Bezier,le[he+2].x*te,le[he+2].y*ne,le[he].x*te,le[he].y*ne,le[he+1].x*te,le[he+1].y*ne));return fe.segments.last().close(),xe(le),se.spot1=new go.Spot(.222,.222),se.spot2=new go.Spot(.777,.777),se}),go.Shape.defineFigureGenerator("NinePointedBurst",function(ce,te,ne){var le=Ae(9),se=new go.Geometry,fe=new go.PathFigure(le[0].x*te,le[0].y*ne,!0);se.add(fe);for(var he=1;he<le.length;he+=3)fe.add(new go.PathSegment(go.PathSegment.Bezier,le[he+2].x*te,le[he+2].y*ne,le[he].x*te,le[he].y*ne,le[he+1].x*te,le[he+1].y*ne));return fe.segments.last().close(),xe(le),se.spot1=new go.Spot(.222,.222),se.spot2=new go.Spot(.777,.777),se}),go.Shape.defineFigureGenerator("TenPointedBurst",function(ce,te,ne){var le=Ae(10),se=new go.Geometry,fe=new go.PathFigure(le[0].x*te,le[0].y*ne,!0);se.add(fe);for(var he=1;he<le.length;he+=3)fe.add(new go.PathSegment(go.PathSegment.Bezier,le[he+2].x*te,le[he+2].y*ne,le[he].x*te,le[he].y*ne,le[he+1].x*te,le[he+1].y*ne));return fe.segments.last().close(),xe(le),se.spot1=new go.Spot(.222,.222),se.spot2=new go.Spot(.777,.777),se}),go.Shape.setFigureParameter("FramedRectangle",0,new At("ThicknessX",8)),go.Shape.setFigureParameter("FramedRectangle",1,new At("ThicknessY",8)),go.Shape.defineFigureGenerator("FramedRectangle",function(ce,te,ne){var le=ce?ce.parameter1:NaN,se=ce?ce.parameter2:NaN;isNaN(le)&&(le=8),isNaN(se)&&(se=8);var fe=new go.Geometry,he=new go.PathFigure(0,0,!0);return fe.add(he),he.add(new go.PathSegment(go.PathSegment.Line,te,0)),he.add(new go.PathSegment(go.PathSegment.Line,te,ne)),he.add(new go.PathSegment(go.PathSegment.Line,0,ne).close()),le<te/2&&se<ne/2&&(he.add(new go.PathSegment(go.PathSegment.Move,le,se)),he.add(new go.PathSegment(go.PathSegment.Line,le,ne-se)),he.add(new go.PathSegment(go.PathSegment.Line,te-le,ne-se)),he.add(new go.PathSegment(go.PathSegment.Line,te-le,se).close())),fe.setSpots(0,0,1,1,le,se,-le,-se),fe}),go.Shape.setFigureParameter("Ring",0,new At("Thickness",8)),go.Shape.defineFigureGenerator("Ring",function(ce,te,ne){var le=ce?ce.parameter1:NaN;(isNaN(le)||le<0)&&(le=8);var se=te/2,fe=new go.Geometry,he=new go.PathFigure(te,te/2,!0);fe.add(he),he.add(new go.PathSegment(go.PathSegment.Arc,0,360,se,se,se,se).close());var ie=Math.max(se-le,0);return ie>0&&(he.add(new go.PathSegment(go.PathSegment.Move,te/2+ie,te/2)),he.add(new go.PathSegment(go.PathSegment.Arc,0,-360,se,se,ie,ie).close())),fe.spot1=_e,fe.spot2=Me,fe.defaultStretch=go.GraphObject.Uniform,fe}),go.Shape.defineFigureGenerator("Cloud",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(.08034461*te,.1944299*ne,!0).add(new go.PathSegment(go.PathSegment.Bezier,.2008615*te,.05349299*ne,-.09239631*te,.07836421*ne,.1406031*te,-.0542823*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.4338609*te,.074219*ne,.2450511*te,-.00697547*ne,.3776197*te,-.01112067*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.6558228*te,.07004196*ne,.4539471*te,0,.6066018*te,-.02526587*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.8921095*te,.08370865*ne,.6914277*te,-.01904177*ne,.8921095*te,-.01220843*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.9147671*te,.3194596*ne,1.036446*te,.04105738*ne,1.020377*te,.3022052*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.9082935*te,.562044*ne,1.04448*te,.360238*ne,.992256*te,.5219009*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.9212406*te,.8217117*ne,1.032337*te,.5771781*ne,1.018411*te,.8120651*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.7592566*te,.9156953*ne,1.028411*te,.9571472*ne,.8556702*te,1.052487*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.5101666*te,.9310455*ne,.7431877*te,1.009325*ne,.5624123*te,1.021761*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.2609328*te,.9344623*ne,.4820677*te,1.031761*ne,.3030112*te,1.002796*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.08034461*te,.870098*ne,.2329994*te,1.01518*ne,.03213784*te,1.01518*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.06829292*te,.6545475*ne,-.02812061*te,.9032597*ne,-.01205169*te,.6835638*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.06427569*te,.4265613*ne,-.01812061*te,.6089503*ne,-.00606892*te,.4555777*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.08034461*te,.1944299*ne,-.01606892*te,.3892545*ne,-.01205169*te,.1944299*ne))).setSpots(.1,.1,.9,.9)}),go.Shape.defineFigureGenerator("StopSign",function(ce,te,ne){var le=1/(Math.SQRT2+2);return new go.Geometry().add(new go.PathFigure(le*te,0,!0).add(new go.PathSegment(go.PathSegment.Line,(1-le)*te,0)).add(new go.PathSegment(go.PathSegment.Line,te,le*ne)).add(new go.PathSegment(go.PathSegment.Line,te,(1-le)*ne)).add(new go.PathSegment(go.PathSegment.Line,(1-le)*te,ne)).add(new go.PathSegment(go.PathSegment.Line,le*te,ne)).add(new go.PathSegment(go.PathSegment.Line,0,(1-le)*ne)).add(new go.PathSegment(go.PathSegment.Line,0,le*ne).close())).setSpots(le/2,le/2,1-le/2,1-le/2)}),go.Shape.setFigureParameter("Pie",0,new At("Start",0,-360,360)),go.Shape.setFigureParameter("Pie",1,new At("Sweep",315,-360,360)),go.Shape.defineFigureGenerator("Pie",function(ce,te,ne){var le=ce?ce.parameter1:NaN,se=ce?ce.parameter2:NaN;isNaN(le)&&(le=0),isNaN(se)&&(se=315);var fe=le%360;fe<0&&(fe+=360);var he=se%360,ie=Math.min(te,ne)/2;return new go.Geometry().add(new go.PathFigure(ie,ie).add(new go.PathSegment(go.PathSegment.Arc,fe,he,ie,ie,ie,ie).close()))}),go.Shape.defineFigureGenerator("PiePiece",function(ce,te,ne){var le=ve/Math.SQRT2*.5,se=Math.SQRT2/2,fe=1-Math.SQRT2/2;return new go.Geometry().add(new go.PathFigure(te,ne,!0).add(new go.PathSegment(go.PathSegment.Bezier,se*te,fe*ne,te,(1-le)*ne,(se+le)*te,(fe+le)*ne)).add(new go.PathSegment(go.PathSegment.Line,0,ne).close()))}),go.Shape.setFigureParameter("ThickCross",0,new At("Thickness",30)),go.Shape.defineFigureGenerator("ThickCross",function(ce,te,ne){var le=ce?ce.parameter1:NaN;(isNaN(le)||le<0)&&(le=30);var se=Math.min(le,te)/2,fe=te/2,he=ne/2;return new go.Geometry().add(new go.PathFigure(fe-se,0,!0).add(new go.PathSegment(go.PathSegment.Line,fe+se,0)).add(new go.PathSegment(go.PathSegment.Line,fe+se,he-se)).add(new go.PathSegment(go.PathSegment.Line,te,he-se)).add(new go.PathSegment(go.PathSegment.Line,te,he+se)).add(new go.PathSegment(go.PathSegment.Line,fe+se,he+se)).add(new go.PathSegment(go.PathSegment.Line,fe+se,ne)).add(new go.PathSegment(go.PathSegment.Line,fe-se,ne)).add(new go.PathSegment(go.PathSegment.Line,fe-se,he+se)).add(new go.PathSegment(go.PathSegment.Line,0,he+se)).add(new go.PathSegment(go.PathSegment.Line,0,he-se)).add(new go.PathSegment(go.PathSegment.Line,fe-se,he-se).close()))}),go.Shape.setFigureParameter("ThinCross",0,new At("Thickness",10)),go.Shape.defineFigureGenerator("ThinCross",function(ce,te,ne){var le=ce?ce.parameter1:NaN;(isNaN(le)||le<0)&&(le=10);var se=Math.min(le,te)/2,fe=te/2,he=ne/2;return new go.Geometry().add(new go.PathFigure(fe-se,0,!0).add(new go.PathSegment(go.PathSegment.Line,fe+se,0)).add(new go.PathSegment(go.PathSegment.Line,fe+se,he-se)).add(new go.PathSegment(go.PathSegment.Line,te,he-se)).add(new go.PathSegment(go.PathSegment.Line,te,he+se)).add(new go.PathSegment(go.PathSegment.Line,fe+se,he+se)).add(new go.PathSegment(go.PathSegment.Line,fe+se,ne)).add(new go.PathSegment(go.PathSegment.Line,fe-se,ne)).add(new go.PathSegment(go.PathSegment.Line,fe-se,he+se)).add(new go.PathSegment(go.PathSegment.Line,0,he+se)).add(new go.PathSegment(go.PathSegment.Line,0,he-se)).add(new go.PathSegment(go.PathSegment.Line,fe-se,he-se).close()))}),go.Shape.setFigureParameter("ThickX",0,new At("Thickness",30)),go.Shape.defineFigureGenerator("ThickX",function(ce,te,ne){var le=ce?ce.parameter1:NaN;if((isNaN(le)||le<0)&&(le=30),te===0||ne===0){var se=new go.Geometry(go.Geometry.Rectangle);return se.startX=0,se.startY=0,se.endX=te,se.endY=ne,se}else{var fe=te/2,he=ne/2,ie=Math.atan2(ne,te),ue=le-Math.min(Math.cos(ie)*le/2,fe),me=le-Math.min(Math.sin(ie)*le/2,he),se=new go.Geometry,Ce=new go.PathFigure(ue,0,!0);return se.add(Ce),Ce.add(new go.PathSegment(go.PathSegment.Line,fe,.2*ne)),Ce.add(new go.PathSegment(go.PathSegment.Line,te-ue,0)),Ce.add(new go.PathSegment(go.PathSegment.Line,te,me)),Ce.add(new go.PathSegment(go.PathSegment.Line,.8*te,he)),Ce.add(new go.PathSegment(go.PathSegment.Line,te,ne-me)),Ce.add(new go.PathSegment(go.PathSegment.Line,te-ue,ne)),Ce.add(new go.PathSegment(go.PathSegment.Line,fe,.8*ne)),Ce.add(new go.PathSegment(go.PathSegment.Line,ue,ne)),Ce.add(new go.PathSegment(go.PathSegment.Line,0,ne-me)),Ce.add(new go.PathSegment(go.PathSegment.Line,.2*te,he)),Ce.add(new go.PathSegment(go.PathSegment.Line,0,me).close()),se}}),go.Shape.setFigureParameter("ThinX",0,new At("Thickness",10)),go.Shape.defineFigureGenerator("ThinX",function(ce,te,ne){var le=ce?ce.parameter1:NaN;(isNaN(le)||le<0)&&(le=10);var se=new go.Geometry,fe=new go.PathFigure(.1*te,0,!0);return se.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,.5*te,.4*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.9*te,0)),fe.add(new go.PathSegment(go.PathSegment.Line,te,.1*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.6*te,.5*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,te,.9*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.9*te,ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.5*te,.6*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.1*te,ne)),fe.add(new go.PathSegment(go.PathSegment.Line,0,.9*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.4*te,.5*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,0,.1*ne).close()),se}),go.Shape.setFigureParameter("SquareIBeam",0,new At("BeamWidth",.2,.1,.9)),go.Shape.defineFigureGenerator("SquareIBeam",function(ce,te,ne){var le=ce?ce.parameter1:NaN;isNaN(le)&&(le=.2);var se=new go.Geometry,fe=new go.PathFigure(0,0,!0);return se.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,te,0)),fe.add(new go.PathSegment(go.PathSegment.Line,te,le*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,(.5+le/2)*te,le*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,(.5+le/2)*te,(1-le)*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,te,(1-le)*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,te,ne)),fe.add(new go.PathSegment(go.PathSegment.Line,0,ne)),fe.add(new go.PathSegment(go.PathSegment.Line,0,(1-le)*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,(.5-le/2)*te,(1-le)*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,(.5-le/2)*te,le*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,0,le*ne).close()),se}),go.Shape.setFigureParameter("RoundedIBeam",0,new At("Curviness",.5,.05,.65)),go.Shape.defineFigureGenerator("RoundedIBeam",function(ce,te,ne){var le=ce?ce.parameter1:NaN;isNaN(le)&&(le=.5);var se=new go.Geometry,fe=new go.PathFigure(0,0,!0);return se.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,te,0)),fe.add(new go.PathSegment(go.PathSegment.Bezier,te,ne,Math.abs(1-le)*te,.25*ne,Math.abs(1-le)*te,.75*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,0,ne)),fe.add(new go.PathSegment(go.PathSegment.Bezier,0,0,le*te,.75*ne,le*te,.25*ne).close()),se}),go.Shape.defineFigureGenerator("HalfEllipse",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,0,!0).add(new go.PathSegment(go.PathSegment.Bezier,te,.5*ne,ve*te,0,te,(.5-ve/2)*ne)).add(new go.PathSegment(go.PathSegment.Bezier,0,ne,te,(.5+ve/2)*ne,ve*te,ne).close())).setSpots(0,.156,.844,.844)}),go.Shape.defineFigureGenerator("Crescent",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,0,!0).add(new go.PathSegment(go.PathSegment.Bezier,0,ne,te,0,te,ne)).add(new go.PathSegment(go.PathSegment.Bezier,0,0,.5*te,.75*ne,.5*te,.25*ne).close())).setSpots(.311,.266,.744,.744)}),go.Shape.defineFigureGenerator("Heart",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(.5*te,ne,!0).add(new go.PathSegment(go.PathSegment.Bezier,0,.3*ne,.1*te,.8*ne,0,.5*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.5*te,.3*ne,0,0,.45*te,0)).add(new go.PathSegment(go.PathSegment.Bezier,te,.3*ne,.55*te,0,te,0)).add(new go.PathSegment(go.PathSegment.Bezier,.5*te,ne,te,.5*ne,.9*te,.8*ne).close())).setSpots(.14,.29,.86,.78)}),go.Shape.defineFigureGenerator("Spade",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(.5*te,0,!0).add(new go.PathSegment(go.PathSegment.Line,.51*te,.01*ne)).add(new go.PathSegment(go.PathSegment.Bezier,te,.5*ne,.6*te,.2*ne,te,.25*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.55*te,.7*ne,te,.8*ne,.6*te,.8*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.75*te,ne,.5*te,.75*ne,.55*te,.95*ne)).add(new go.PathSegment(go.PathSegment.Line,.25*te,ne)).add(new go.PathSegment(go.PathSegment.Bezier,.45*te,.7*ne,.45*te,.95*ne,.5*te,.75*ne)).add(new go.PathSegment(go.PathSegment.Bezier,0,.5*ne,.4*te,.8*ne,0,.8*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.49*te,.01*ne,0,.25*ne,.4*te,.2*ne).close())).setSpots(.14,.26,.86,.78)}),go.Shape.defineFigureGenerator("Club",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(.4*te,.6*ne,!0);le.add(se),se.add(new go.PathSegment(go.PathSegment.Bezier,.15*te,ne,.5*te,.75*ne,.45*te,.95*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.85*te,ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,.6*te,.6*ne,.55*te,.95*ne,.5*te,.75*ne));var fe=.2,he=.3,ie=0,ue=fe*ve;return se.add(new go.PathSegment(go.PathSegment.Bezier,(.5+he)*te,(.5+fe+ie)*ne,(.5-fe+he)*te,(.5+ue+ie)*ne,(.5-ue+he)*te,(.5+fe+ie)*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,(1-.5+fe+he)*te,(.5+ie)*ne,(.5+ue+he)*te,(.5+fe+ie)*ne,(.5+fe+he)*te,(.5+ue+ie)*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,(.5+he)*te,(.5-fe+ie)*ne,(1-.5+fe+he)*te,(.5-ue+ie)*ne,(.5+ue+he)*te,(.5-fe+ie)*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,.65*te,.36771243*ne,(.5-ue+he)*te,(.5-fe+ie)*ne,(.5-fe+he+.05)*te,(.5-ue+ie-.02)*ne)),fe=.2,he=0,ie=-.3,ue=fe*ve,se.add(new go.PathSegment(go.PathSegment.Bezier,(1-.5+fe+he)*te,(.5+ie)*ne,(.5+ue+he)*te,(.5+fe+ie)*ne,(.5+fe+he)*te,(.5+ue+ie)*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,(.5+he)*te,(.5-fe+ie)*ne,(1-.5+fe+he)*te,(.5-ue+ie)*ne,(.5+ue+he)*te,(.5-fe+ie)*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,(.5-fe+he)*te,(.5+ie)*ne,(.5-ue+he)*te,(.5-fe+ie)*ne,(.5-fe+he)*te,(.5-ue+ie)*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,(.5-ue+he)*te,(.5+fe+ie)*ne,(.5-fe+he)*te,(.5+ue+ie)*ne,(.5-ue+he)*te,(.5+fe+ie)*ne)),fe=.2,he=-.3,ie=0,ue=fe*ve,se.add(new go.PathSegment(go.PathSegment.Bezier,(.5+he)*te,(.5-fe+ie)*ne,(1-.5+fe+he-.05)*te,(.5-ue+ie-.02)*ne,(.5+ue+he)*te,(.5-fe+ie)*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,(.5-fe+he)*te,(.5+ie)*ne,(.5-ue+he)*te,(.5-fe+ie)*ne,(.5-fe+he)*te,(.5-ue+ie)*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,(.5+he)*te,(.5+fe+ie)*ne,(.5-fe+he)*te,(.5+ue+ie)*ne,(.5-ue+he)*te,(.5+fe+ie)*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,.4*te,.6*ne,(.5+ue+he)*te,(.5+fe+ie)*ne,(.5+fe+he)*te,(.5+ue+ie)*ne).close()),le.setSpots(.06,.33,.93,.68),le}),go.Shape.defineFigureGenerator("YinYang",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(te*.5,0,!0);le.add(se),se.add(new go.PathSegment(go.PathSegment.Arc,270,180,te*.5,te*.5,te*.5,te*.5)),se.add(new go.PathSegment(go.PathSegment.Arc,90,-180,te*.5,te*.75,te*.25,te*.25)),se.add(new go.PathSegment(go.PathSegment.Arc,90,180,te*.5,te*.25,te*.25,te*.25));var fe=.1,he=.5,ie=.25;return se.add(new go.PathSegment(go.PathSegment.Move,(he+fe)*te,ie*ne)),se.add(new go.PathSegment(go.PathSegment.Arc,0,-360,te*he,ne*ie,fe*te,fe*te).close()),se=new go.PathFigure(te*.5,0,!1),le.add(se),se.add(new go.PathSegment(go.PathSegment.Arc,270,-180,te*.5,te*.5,te*.5,te*.5)),ie=.75,se=new go.PathFigure((he+fe)*te,ie*ne,!0),le.add(se),se.add(new go.PathSegment(go.PathSegment.Arc,0,360,te*he,ne*ie,fe*te,fe*te).close()),le.defaultStretch=go.GraphObject.Uniform,le}),go.Shape.defineFigureGenerator("Peace",function(ce,te,ne){var le=.8535533905932737,se=.5*te,fe=.5*ne;return new go.Geometry().add(new go.PathFigure(se,0,!1).add(new go.PathSegment(go.PathSegment.Arc,270,360,se,fe,se,fe)).add(new go.PathSegment(go.PathSegment.Line,se,ne)).add(new go.PathSegment(go.PathSegment.Move,se,fe)).add(new go.PathSegment(go.PathSegment.Line,(1-le)*te,le*ne)).add(new go.PathSegment(go.PathSegment.Move,se,fe)).add(new go.PathSegment(go.PathSegment.Line,le*te,le*ne)))}),go.Shape.defineFigureGenerator("NotAllowed",function(ce,te,ne){var le=new go.Geometry,se=ve*.5,fe=.5,he=.5,ie=.5,ue=new go.PathFigure(he*te,(ie-fe)*ne);le.add(ue),ue.add(new go.PathSegment(go.PathSegment.Bezier,(he-fe)*te,ie*ne,(he-se)*te,(ie-fe)*ne,(he-fe)*te,(ie-se)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie+fe)*ne,(he-fe)*te,(ie+se)*ne,(he-se)*te,(ie+fe)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(he+fe)*te,ie*ne,(he+se)*te,(ie+fe)*ne,(he+fe)*te,(ie+se)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie-fe)*ne,(he+fe)*te,(ie-se)*ne,(he+se)*te,(ie-fe)*ne)),fe=.4,se=ve*.4;var me=Oe(),Ce=Oe(),Ie=Oe(),Fe=Oe();be(he,ie-fe,he+se,ie-fe,he+fe,ie-se,he+fe,ie,.42,me,Ce,Ie,Fe,Fe);var Re=Oe(),Ue=Oe(),Ge=Oe();be(he,ie-fe,he+se,ie-fe,he+fe,ie-se,he+fe,ie,.58,Fe,Fe,Ge,Re,Ue);var Je=Oe(),Qe=Oe(),rt=Oe();be(he,ie+fe,he-se,ie+fe,he-fe,ie+se,he-fe,ie,.42,Je,Qe,rt,Fe,Fe);var $e=Oe(),qe=Oe(),ot=Oe();return be(he,ie+fe,he-se,ie+fe,he-fe,ie+se,he-fe,ie,.58,Fe,Fe,ot,$e,qe),ue.add(new go.PathSegment(go.PathSegment.Move,ot.x*te,ot.y*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(he-fe)*te,ie*ne,$e.x*te,$e.y*ne,qe.x*te,qe.y*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie-fe)*ne,(he-fe)*te,(ie-se)*ne,(he-se)*te,(ie-fe)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,Ie.x*te,Ie.y*ne,me.x*te,me.y*ne,Ce.x*te,Ce.y*ne)),ue.add(new go.PathSegment(go.PathSegment.Line,ot.x*te,ot.y*ne).close()),ue.add(new go.PathSegment(go.PathSegment.Move,rt.x*te,rt.y*ne)),ue.add(new go.PathSegment(go.PathSegment.Line,Ge.x*te,Ge.y*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(he+fe)*te,ie*ne,Re.x*te,Re.y*ne,Ue.x*te,Ue.y*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie+fe)*ne,(he+fe)*te,(ie+se)*ne,(he+se)*te,(ie+fe)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,rt.x*te,rt.y*ne,Je.x*te,Je.y*ne,Qe.x*te,Qe.y*ne).close()),He(me),He(Ce),He(Ie),He(Fe),He(Re),He(Ue),He(Ge),He(Je),He(Qe),He(rt),He($e),He(qe),He(ot),le.defaultStretch=go.GraphObject.Uniform,le}),go.Shape.defineFigureGenerator("Fragile",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,0,!0).add(new go.PathSegment(go.PathSegment.Line,.25*te,0)).add(new go.PathSegment(go.PathSegment.Line,.2*te,.15*ne)).add(new go.PathSegment(go.PathSegment.Line,.3*te,.25*ne)).add(new go.PathSegment(go.PathSegment.Line,.29*te,.33*ne)).add(new go.PathSegment(go.PathSegment.Line,.35*te,.25*ne)).add(new go.PathSegment(go.PathSegment.Line,.3*te,.15*ne)).add(new go.PathSegment(go.PathSegment.Line,.4*te,0)).add(new go.PathSegment(go.PathSegment.Line,te,0)).add(new go.PathSegment(go.PathSegment.Bezier,.55*te,.5*ne,te,.25*ne,.75*te,.5*ne)).add(new go.PathSegment(go.PathSegment.Line,.55*te,.9*ne)).add(new go.PathSegment(go.PathSegment.Line,.7*te,.9*ne)).add(new go.PathSegment(go.PathSegment.Line,.7*te,ne)).add(new go.PathSegment(go.PathSegment.Line,.3*te,ne)).add(new go.PathSegment(go.PathSegment.Line,.3*te,.9*ne)).add(new go.PathSegment(go.PathSegment.Line,.45*te,.9*ne)).add(new go.PathSegment(go.PathSegment.Line,.45*te,.5*ne)).add(new go.PathSegment(go.PathSegment.Bezier,0,0,.25*te,.5*ne,0,.25*ne).close()))}),go.Shape.setFigureParameter("HourGlass",0,new At("Thickness",30)),go.Shape.defineFigureGenerator("HourGlass",function(ce,te,ne){var le=ce?ce.parameter1:NaN;(isNaN(le)||le<0)&&(le=30),le>te&&(le=te);var se=(te-le)/2,fe=se+le;return new go.Geometry().add(new go.PathFigure(fe,.5*ne).add(new go.PathSegment(go.PathSegment.Line,te,ne)).add(new go.PathSegment(go.PathSegment.Line,0,ne)).add(new go.PathSegment(go.PathSegment.Line,se,.5*ne)).add(new go.PathSegment(go.PathSegment.Line,0,0)).add(new go.PathSegment(go.PathSegment.Line,te,0).close()))}),go.Shape.defineFigureGenerator("Lightning",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,.55*ne).add(new go.PathSegment(go.PathSegment.Line,.6*te,0)).add(new go.PathSegment(go.PathSegment.Line,.3*te,.45*ne)).add(new go.PathSegment(go.PathSegment.Line,te,.45*ne)).add(new go.PathSegment(go.PathSegment.Line,.4*te,ne)).add(new go.PathSegment(go.PathSegment.Line,.7*te,.55*ne).close()))}),go.Shape.defineFigureGenerator("GenderMale",function(ce,te,ne){var le=new go.Geometry,se=ve*.4,fe=.4,he=.5,ie=.5,ue=Oe(),me=Oe(),Ce=Oe(),Ie=Oe(),Fe=new go.PathFigure((he-fe)*te,ie*ne,!1);le.add(Fe),Fe.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie-fe)*ne,(he-fe)*te,(ie-se)*ne,(he-se)*te,(ie-fe)*ne)),be(he,ie-fe,he+se,ie-fe,he+fe,ie-se,he+fe,ie,.44,Ce,Ie,me,ue,ue),Fe.add(new go.PathSegment(go.PathSegment.Bezier,me.x*te,me.y*ne,Ce.x*te,Ce.y*ne,Ie.x*te,Ie.y*ne));var Re=Te(me.x,me.y);be(he,ie-fe,he+se,ie-fe,he+fe,ie-se,he+fe,ie,.56,ue,ue,me,Ce,Ie);var Ue=Te(me.x,me.y);Fe.add(new go.PathSegment(go.PathSegment.Line,(Re.x*.1+.95*.9)*te,Re.y*.1*ne)),Fe.add(new go.PathSegment(go.PathSegment.Line,.85*te,Re.y*.1*ne)),Fe.add(new go.PathSegment(go.PathSegment.Line,.85*te,0)),Fe.add(new go.PathSegment(go.PathSegment.Line,te,0)),Fe.add(new go.PathSegment(go.PathSegment.Line,te,.15*ne)),Fe.add(new go.PathSegment(go.PathSegment.Line,(Ue.x*.1+.9)*te,.15*ne)),Fe.add(new go.PathSegment(go.PathSegment.Line,(Ue.x*.1+.9)*te,(Ue.y*.1+.05*.9)*ne)),Fe.add(new go.PathSegment(go.PathSegment.Line,Ue.x*te,Ue.y*ne)),Fe.add(new go.PathSegment(go.PathSegment.Bezier,(he+fe)*te,ie*ne,Ce.x*te,Ce.y*ne,Ie.x*te,Ie.y*ne)),Fe.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie+fe)*ne,(he+fe)*te,(ie+se)*ne,(he+se)*te,(ie+fe)*ne)),Fe.add(new go.PathSegment(go.PathSegment.Bezier,(he-fe)*te,ie*ne,(he-se)*te,(ie+fe)*ne,(he-fe)*te,(ie+se)*ne)),fe=.35,se=ve*.35;var Ge=new go.PathFigure(he*te,(ie-fe)*ne,!1);le.add(Ge),Ge.add(new go.PathSegment(go.PathSegment.Bezier,(he-fe)*te,ie*ne,(he-se)*te,(ie-fe)*ne,(he-fe)*te,(ie-se)*ne)),Ge.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie+fe)*ne,(he-fe)*te,(ie+se)*ne,(he-se)*te,(ie+fe)*ne)),Ge.add(new go.PathSegment(go.PathSegment.Bezier,(he+fe)*te,ie*ne,(he+se)*te,(ie+fe)*ne,(he+fe)*te,(ie+se)*ne)),Ge.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie-fe)*ne,(he+fe)*te,(ie-se)*ne,(he+se)*te,(ie-fe)*ne));var Je=new go.PathFigure((he-fe)*te,ie*ne,!1);return le.add(Je),He(ue),He(me),He(Ce),He(Ie),He(Re),He(Ue),le.spot1=new go.Spot(.202,.257),le.spot2=new go.Spot(.792,.739),le.defaultStretch=go.GraphObject.Uniform,le}),go.Shape.defineFigureGenerator("GenderFemale",function(ce,te,ne){var le=new go.Geometry,se=.375,fe=0,he=-.125,ie=se*ve,ue=new go.PathFigure((.525+fe)*te,(.5+se+he)*ne,!1);le.add(ue),ue.add(new go.PathSegment(go.PathSegment.Bezier,(1-.5+se+fe)*te,(.5+he)*ne,(.5+ie+fe)*te,(.5+se+he)*ne,(.5+se+fe)*te,(.5+ie+he)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(.5+fe)*te,(.5-se+he)*ne,(1-.5+se+fe)*te,(.5-ie+he)*ne,(.5+ie+fe)*te,(.5-se+he)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(.5-se+fe)*te,(.5+he)*ne,(.5-ie+fe)*te,(.5-se+he)*ne,(.5-se+fe)*te,(.5-ie+he)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(.475+fe)*te,(.5+se+he)*ne,(.5-se+fe)*te,(.5+ie+he)*ne,(.5-ie+fe)*te,(.5+se+he)*ne)),ue.add(new go.PathSegment(go.PathSegment.Line,.475*te,.85*ne)),ue.add(new go.PathSegment(go.PathSegment.Line,.425*te,.85*ne)),ue.add(new go.PathSegment(go.PathSegment.Line,.425*te,.9*ne)),ue.add(new go.PathSegment(go.PathSegment.Line,.475*te,.9*ne)),ue.add(new go.PathSegment(go.PathSegment.Line,.475*te,ne)),ue.add(new go.PathSegment(go.PathSegment.Line,.525*te,ne)),ue.add(new go.PathSegment(go.PathSegment.Line,.525*te,.9*ne)),ue.add(new go.PathSegment(go.PathSegment.Line,.575*te,.9*ne)),ue.add(new go.PathSegment(go.PathSegment.Line,.575*te,.85*ne)),ue.add(new go.PathSegment(go.PathSegment.Line,.525*te,.85*ne).close()),se=.325,fe=0,he=-.125,ie=se*ve;var ue=new go.PathFigure((1-.5+se+fe)*te,(.5+he)*ne,!1);le.add(ue),ue.add(new go.PathSegment(go.PathSegment.Bezier,(.5+fe)*te,(.5+se+he)*ne,(.5+se+fe)*te,(.5+ie+he)*ne,(.5+ie+fe)*te,(.5+se+he)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(.5-se+fe)*te,(.5+he)*ne,(.5-ie+fe)*te,(.5+se+he)*ne,(.5-se+fe)*te,(.5+ie+he)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(.5+fe)*te,(.5-se+he)*ne,(.5-se+fe)*te,(.5-ie+he)*ne,(.5-ie+fe)*te,(.5-se+he)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(1-.5+se+fe)*te,(.5+he)*ne,(.5+ie+fe)*te,(.5-se+he)*ne,(1-.5+se+fe)*te,(.5-ie+he)*ne));var ue=new go.PathFigure((.525+fe)*te,(.5+se+he)*ne,!1);return le.add(ue),le.spot1=new go.Spot(.232,.136),le.spot2=new go.Spot(.682,.611),le.defaultStretch=go.GraphObject.Uniform,le}),go.Shape.defineFigureGenerator("LogicImplies",function(ce,te,ne){var le=ce?ce.parameter1:NaN;return isNaN(le)&&(le=.2),new go.Geometry().add(new go.PathFigure((1-le)*te,0,!1).add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)).add(new go.PathSegment(go.PathSegment.Line,(1-le)*te,ne)).add(new go.PathSegment(go.PathSegment.Move,0,.5*ne)).add(new go.PathSegment(go.PathSegment.Line,te,.5*ne))).setSpots(0,0,.8,.5)}),go.Shape.defineFigureGenerator("LogicIff",function(ce,te,ne){var le=ce?ce.parameter1:NaN;return isNaN(le)&&(le=.2),new go.Geometry().add(new go.PathFigure((1-le)*te,0,!1).add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)).add(new go.PathSegment(go.PathSegment.Line,(1-le)*te,ne)).add(new go.PathSegment(go.PathSegment.Move,0,.5*ne)).add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)).add(new go.PathSegment(go.PathSegment.Move,le*te,0)).add(new go.PathSegment(go.PathSegment.Line,0,.5*ne)).add(new go.PathSegment(go.PathSegment.Line,le*te,ne))).setSpots(.2,0,.8,.5)}),go.Shape.defineFigureGenerator("LogicNot",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,0,!1).add(new go.PathSegment(go.PathSegment.Line,te,0)).add(new go.PathSegment(go.PathSegment.Line,te,ne)))}),go.Shape.defineFigureGenerator("LogicAnd",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,ne,!1).add(new go.PathSegment(go.PathSegment.Line,.5*te,0)).add(new go.PathSegment(go.PathSegment.Line,te,ne))).setSpots(.25,.5,.75,1)}),go.Shape.defineFigureGenerator("LogicOr",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,0,!1).add(new go.PathSegment(go.PathSegment.Line,.5*te,ne)).add(new go.PathSegment(go.PathSegment.Line,te,0))).setSpots(.219,0,.78,.409)}),go.Shape.defineFigureGenerator("LogicXor",function(ce,te,ne){var le=new go.Geometry().add(new go.PathFigure(.5*te,0,!1).add(new go.PathSegment(go.PathSegment.Line,.5*te,ne)).add(new go.PathSegment(go.PathSegment.Move,0,.5*ne)).add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)).add(new go.PathSegment(go.PathSegment.Arc,0,360,.5*te,.5*ne,.5*te,.5*ne)));return le.defaultStretch=go.GraphObject.Uniform,le}),go.Shape.defineFigureGenerator("LogicTruth",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,0,!1).add(new go.PathSegment(go.PathSegment.Line,te,0)).add(new go.PathSegment(go.PathSegment.Move,.5*te,0)).add(new go.PathSegment(go.PathSegment.Line,.5*te,ne)))}),go.Shape.defineFigureGenerator("LogicFalsity",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,ne,!1).add(new go.PathSegment(go.PathSegment.Line,te,ne)).add(new go.PathSegment(go.PathSegment.Move,.5*te,ne)).add(new go.PathSegment(go.PathSegment.Line,.5*te,0)))}),go.Shape.defineFigureGenerator("LogicThereExists",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,0,!1).add(new go.PathSegment(go.PathSegment.Line,te,0)).add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)).add(new go.PathSegment(go.PathSegment.Line,0,.5*ne)).add(new go.PathSegment(go.PathSegment.Move,te,.5*ne)).add(new go.PathSegment(go.PathSegment.Line,te,ne)).add(new go.PathSegment(go.PathSegment.Line,0,ne)))}),go.Shape.defineFigureGenerator("LogicForAll",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,0,!1).add(new go.PathSegment(go.PathSegment.Line,.5*te,ne)).add(new go.PathSegment(go.PathSegment.Line,te,0)).add(new go.PathSegment(go.PathSegment.Move,.25*te,.5*ne)).add(new go.PathSegment(go.PathSegment.Line,.75*te,.5*ne))).setSpots(.25,0,.75,.5)}),go.Shape.defineFigureGenerator("LogicIsDefinedAs",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,0,!1).add(new go.PathSegment(go.PathSegment.Line,te,0)).add(new go.PathSegment(go.PathSegment.Move,0,.5*ne)).add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)).add(new go.PathSegment(go.PathSegment.Move,0,ne)).add(new go.PathSegment(go.PathSegment.Line,te,ne))).setSpots(.01,.01,.99,.49)}),go.Shape.defineFigureGenerator("LogicIntersect",function(ce,te,ne){var le=.5;return new go.Geometry().add(new go.PathFigure(0,ne,!1).add(new go.PathSegment(go.PathSegment.Line,0,le*ne)).add(new go.PathSegment(go.PathSegment.Arc,180,180,le*te,le*ne,le*te,le*ne)).add(new go.PathSegment(go.PathSegment.Line,te,ne))).setSpots(0,.5,1,1)}),go.Shape.defineFigureGenerator("LogicUnion",function(ce,te,ne){var le=.5;return new go.Geometry().add(new go.PathFigure(te,0,!1).add(new go.PathSegment(go.PathSegment.Line,te,le*ne)).add(new go.PathSegment(go.PathSegment.Arc,0,180,le*te,le*ne,le*te,le*ne)).add(new go.PathSegment(go.PathSegment.Line,0,0))).setSpots(0,0,1,.5)}),go.Shape.setFigureParameter("Arrow",0,new At("ArrowheadWidth",.3,.01,.99)),go.Shape.setFigureParameter("Arrow",1,new At("TailHeight",.3,.01,.99)),go.Shape.defineFigureGenerator("Arrow",function(ce,te,ne){var le=ce?ce.parameter1:NaN;isNaN(le)&&(le=.3);var se=ce?ce.parameter2:NaN;isNaN(se)&&(se=.3);var fe=(1-le)*te,he=(.5-se/2)*ne,ie=(.5+se/2)*ne,ue=new go.Geometry,me=new go.PathFigure(0,he,!0);ue.add(me),me.add(new go.PathSegment(go.PathSegment.Line,fe,he)),me.add(new go.PathSegment(go.PathSegment.Line,fe,0)),me.add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)),me.add(new go.PathSegment(go.PathSegment.Line,fe,ne)),me.add(new go.PathSegment(go.PathSegment.Line,fe,ie)),me.add(new go.PathSegment(go.PathSegment.Line,0,ie).close()),ue.spot1=new go.Spot(0,he/ne);var Ce=Ne(0,ie/ne,1,ie/ne,fe/te,1,1,.5,Oe());return ue.spot2=new go.Spot(Ce.x,Ce.y),He(Ce),ue}),go.Shape.setFigureParameter("Arrow2",0,new At("ArrowheadWidth",30)),go.Shape.setFigureParameter("Arrow2",0,new At("TailHeight",30)),go.Shape.defineFigureGenerator("Arrow2",function(ce,te,ne){var le=ce?ce.parameter1:NaN;isNaN(le)&&(le=30),le>te&&(le=te);var se=ce?ce.parameter2:NaN;isNaN(se)&&(se=30),se=Math.min(se,ne/2);var fe=te-le,he=(ne-se)/2,ie=he+se,ue=new go.Geometry,me=new go.PathFigure(0,he,!0);ue.add(me),me.add(new go.PathSegment(go.PathSegment.Line,fe,he)),me.add(new go.PathSegment(go.PathSegment.Line,fe,0)),me.add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)),me.add(new go.PathSegment(go.PathSegment.Line,fe,ne)),me.add(new go.PathSegment(go.PathSegment.Line,fe,ie)),me.add(new go.PathSegment(go.PathSegment.Line,0,ie).close()),ue.spot1=new go.Spot(0,he/ne);var Ce=Ne(0,ie/ne,1,ie/ne,fe/te,1,1,.5,Oe());return ue.spot2=new go.Spot(Ce.x,Ce.y),He(Ce),ue}),go.Shape.defineFigureGenerator("Chevron",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,0,!0);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,.5*te,0)),se.add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.5*te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,ne)),se.add(new go.PathSegment(go.PathSegment.Line,.5*te,.5*ne).close()),le}),go.Shape.defineFigureGenerator("DoubleArrow",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,0,!0);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,.3*te,.214*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.3*te,0)),se.add(new go.PathSegment(go.PathSegment.Line,1*te,.5*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.3*te,1*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.3*te,.786*ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,1*ne).close()),le}),go.Shape.setFigureParameter("DoubleEndArrow",0,new At("ConnecterHeight",.3,.01,.99)),go.Shape.defineFigureGenerator("DoubleEndArrow",function(ce,te,ne){var le=ce?ce.parameter1:NaN;isNaN(le)&&(le=.3);var se=(.5-le/2)*ne,fe=(.5+le/2)*ne,he=new go.Geometry,ie=new go.PathFigure(te,.5*ne,!0);he.add(ie),ie.add(new go.PathSegment(go.PathSegment.Line,.7*te,ne)),ie.add(new go.PathSegment(go.PathSegment.Line,.7*te,fe)),ie.add(new go.PathSegment(go.PathSegment.Line,.3*te,fe)),ie.add(new go.PathSegment(go.PathSegment.Line,.3*te,ne)),ie.add(new go.PathSegment(go.PathSegment.Line,0,.5*ne)),ie.add(new go.PathSegment(go.PathSegment.Line,.3*te,0)),ie.add(new go.PathSegment(go.PathSegment.Line,.3*te,se)),ie.add(new go.PathSegment(go.PathSegment.Line,.7*te,se)),ie.add(new go.PathSegment(go.PathSegment.Line,.7*te,0).close());var ue=Ne(0,.5,.3,0,0,se/ne,.1,se/ne,Oe());return he.spot1=new go.Spot(ue.x,ue.y),ue=Ne(.7,1,1,.5,0,fe/ne,1,fe/ne,ue),he.spot2=new go.Spot(ue.x,ue.y),He(ue),he}),go.Shape.setFigureParameter("DoubleEndArrow2",0,new At("ConnecterHeight",40)),go.Shape.setFigureParameter("DoubleEndArrow2",1,new At("ArrowHeight",100)),go.Shape.defineFigureGenerator("DoubleEndArrow2",function(ce,te,ne){var le=ce?ce.parameter1:NaN;isNaN(le)&&(le=40);var se=ce?ce.parameter2:NaN;isNaN(se)&&(se=100);var fe=(ne-le)/2,he=fe+le,ie=(ne-se)/2,ue=ie+se;(le>ne||se>ne)&&(se>le?(le=le*ne/se,fe=(ne-le)/2,he=fe+le,ie=0,ue=ne):(fe=0,he=ne,ie=0,ue=ne));var me=new go.Geometry,Ce=new go.PathFigure(te,.5*ne,!0);me.add(Ce),Ce.add(new go.PathSegment(go.PathSegment.Line,.7*te,ue)),Ce.add(new go.PathSegment(go.PathSegment.Line,.7*te,he)),Ce.add(new go.PathSegment(go.PathSegment.Line,.3*te,he)),Ce.add(new go.PathSegment(go.PathSegment.Line,.3*te,ue)),Ce.add(new go.PathSegment(go.PathSegment.Line,0,.5*ne)),Ce.add(new go.PathSegment(go.PathSegment.Line,.3*te,ie)),Ce.add(new go.PathSegment(go.PathSegment.Line,.3*te,fe)),Ce.add(new go.PathSegment(go.PathSegment.Line,.7*te,fe)),Ce.add(new go.PathSegment(go.PathSegment.Line,.7*te,ie).close());var Ie=Ne(0,.5,.3,ie/ne,0,fe/ne,1,fe/ne,Oe());return me.spot1=new go.Spot(Ie.x,Ie.y),Ie=Ne(.7,ue/ne,1,.5,0,he/ne,1,he/ne,Ie),me.spot2=new go.Spot(Ie.x,Ie.y),He(Ie),me}),go.Shape.setFigureParameter("IBeamArrow",0,new At("ConnectorHeight",.7,.51,.97)),go.Shape.defineFigureGenerator("IBeamArrow",function(ce,te,ne){var le=ce?ce.parameter1:NaN;isNaN(le)&&(le=.3);var se=(.5-le/2)*ne,fe=(.5+le/2)*ne,he=new go.Geometry,ie=new go.PathFigure(te,.5*ne,!0);he.add(ie),ie.add(new go.PathSegment(go.PathSegment.Line,.7*te,ne)),ie.add(new go.PathSegment(go.PathSegment.Line,.7*te,fe)),ie.add(new go.PathSegment(go.PathSegment.Line,.2*te,fe)),ie.add(new go.PathSegment(go.PathSegment.Line,.2*te,ne)),ie.add(new go.PathSegment(go.PathSegment.Line,0,ne)),ie.add(new go.PathSegment(go.PathSegment.Line,0,0)),ie.add(new go.PathSegment(go.PathSegment.Line,.2*te,0)),ie.add(new go.PathSegment(go.PathSegment.Line,.2*te,se)),ie.add(new go.PathSegment(go.PathSegment.Line,.7*te,se)),ie.add(new go.PathSegment(go.PathSegment.Line,.7*te,0).close()),he.spot1=new go.Spot(0,se/ne);var ue=Ne(.7,1,1,.5,0,fe/ne,1,fe/ne,Oe());return he.spot2=new go.Spot(ue.x,ue.y),He(ue),he}),go.Shape.setFigureParameter("IBeamArrow2",0,new At("ConnectorHeight",40)),go.Shape.setFigureParameter("IBeamArrow2",1,new At("BeamArrowHeight",100)),go.Shape.defineFigureGenerator("IBeamArrow2",function(ce,te,ne){var le=ce?ce.parameter1:NaN;isNaN(le)&&(le=40);var se=ce?ce.parameter2:NaN;isNaN(se)&&(se=100);var fe=(ne-le)/2,he=fe+le,ie=(ne-se)/2,ue=ie+se;(le>ne||se>ne)&&(se>le?(le=le*ne/se,fe=(ne-le)/2,he=fe+le,ie=0,ue=ne):(fe=0,he=ne,ie=0,ue=ne));var me=new go.Geometry,Ce=new go.PathFigure(te,.5*ne,!0);me.add(Ce),Ce.add(new go.PathSegment(go.PathSegment.Line,.7*te,ue)),Ce.add(new go.PathSegment(go.PathSegment.Line,.7*te,he)),Ce.add(new go.PathSegment(go.PathSegment.Line,.2*te,he)),Ce.add(new go.PathSegment(go.PathSegment.Line,.2*te,ue)),Ce.add(new go.PathSegment(go.PathSegment.Line,0,ue)),Ce.add(new go.PathSegment(go.PathSegment.Line,0,ie)),Ce.add(new go.PathSegment(go.PathSegment.Line,.2*te,ie)),Ce.add(new go.PathSegment(go.PathSegment.Line,.2*te,fe)),Ce.add(new go.PathSegment(go.PathSegment.Line,.7*te,fe)),Ce.add(new go.PathSegment(go.PathSegment.Line,.7*te,ie).close()),me.spot1=new go.Spot(0,fe/ne);var Ie=Ne(.7,ue/ne,1,.5,0,he/ne,1,he/ne,Oe());return me.spot2=new go.Spot(Ie.x,Ie.y),He(Ie),me}),go.Shape.setFigureParameter("Pointer",0,new At("BackPoint",.1,0,.2)),go.Shape.defineFigureGenerator("Pointer",function(ce,te,ne){var le=ce?ce.parameter1:NaN;isNaN(le)&&(le=.1);var se=new go.Geometry,fe=new go.PathFigure(te,.5*ne,!0);se.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,0,ne)),fe.add(new go.PathSegment(go.PathSegment.Line,le*te,.5*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,0,0).close()),se.spot1=new go.Spot(le,.35);var he=Ne(.2,.65,1,.65,0,1,1,.5,Oe());return se.spot2=new go.Spot(he.x,he.y),He(he),se}),go.Shape.setFigureParameter("RoundedPointer",0,new At("RoundedEdge",.3,0,.5)),go.Shape.defineFigureGenerator("RoundedPointer",function(ce,te,ne){var le=ce?ce.parameter1:NaN;isNaN(le)&&(le=.3);var se=new go.Geometry,fe=new go.PathFigure(te,.5*ne,!0);se.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,0,ne)),fe.add(new go.PathSegment(go.PathSegment.Bezier,0,0,le*te,.75*ne,le*te,.25*ne).close()),se.spot1=new go.Spot(le,.35);var he=Ne(0,.65,1,.65,0,1,1,.5,Oe());return se.spot2=new go.Spot(he.x,he.y),He(he),se}),go.Shape.setFigureParameter("SplitEndArrow",0,new At("TailHeight",.4,.01,.99)),go.Shape.defineFigureGenerator("SplitEndArrow",function(ce,te,ne){var le=ce?ce.parameter1:NaN;isNaN(le)&&(le=.4);var se=(.5-le/2)*ne,fe=(.5+le/2)*ne,he=new go.Geometry,ie=new go.PathFigure(te,.5*ne,!0);he.add(ie),ie.add(new go.PathSegment(go.PathSegment.Line,.7*te,ne)),ie.add(new go.PathSegment(go.PathSegment.Line,.7*te,fe)),ie.add(new go.PathSegment(go.PathSegment.Line,0,fe)),ie.add(new go.PathSegment(go.PathSegment.Line,.2*te,.5*ne)),ie.add(new go.PathSegment(go.PathSegment.Line,0,se)),ie.add(new go.PathSegment(go.PathSegment.Line,.7*te,se)),ie.add(new go.PathSegment(go.PathSegment.Line,.7*te,0).close()),he.spot1=new go.Spot(.2,.3);var ue=Ne(.7,1,1,.5,0,fe/ne,1,fe/ne,Oe());return he.spot2=new go.Spot(ue.x,ue.y),He(ue),he}),go.Shape.setFigureParameter("SplitEndArrow2",0,new At("TailThickness",50)),go.Shape.defineFigureGenerator("SplitEndArrow2",function(ce,te,ne){var le=ce?ce.parameter1:NaN;isNaN(le)&&(le=50);var se=(ne-le)/2,fe=se+le;le>ne&&(se=0,fe=ne);var he=new go.Geometry,ie=new go.PathFigure(te,.5*ne,!0);he.add(ie),ie.add(new go.PathSegment(go.PathSegment.Line,.7*te,ne)),ie.add(new go.PathSegment(go.PathSegment.Line,.7*te,fe)),ie.add(new go.PathSegment(go.PathSegment.Line,0,fe)),ie.add(new go.PathSegment(go.PathSegment.Line,.2*te,.5*ne)),ie.add(new go.PathSegment(go.PathSegment.Line,0,se)),ie.add(new go.PathSegment(go.PathSegment.Line,.7*te,se)),ie.add(new go.PathSegment(go.PathSegment.Line,.7*te,0).close()),he.spot1=new go.Spot(.2,se/ne);var ue=Ne(.7,1,1,.5,0,fe/ne,1,fe/ne,Oe());return he.spot2=new go.Spot(ue.x,ue.y),He(ue),he}),go.Shape.setFigureParameter("SquareArrow",0,new At("ArrowPoint",.7,.2,.9)),go.Shape.defineFigureGenerator("SquareArrow",function(ce,te,ne){var le=ce?ce.parameter1:NaN;isNaN(le)&&(le=.7);var se=new go.Geometry,fe=new go.PathFigure(te,.5*ne,!0);return se.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,le*te,ne)),fe.add(new go.PathSegment(go.PathSegment.Line,0,ne)),fe.add(new go.PathSegment(go.PathSegment.Line,0,0)),fe.add(new go.PathSegment(go.PathSegment.Line,le*te,0).close()),se.spot1=go.Spot.TopLeft,se.spot2=new go.Spot(le,1),se}),go.Shape.defineFigureGenerator("Cone1",function(ce,te,ne){var le=new go.Geometry,se=ve*.5,fe=ve*.1,he=new go.PathFigure(0,.9*ne,!0);return le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,.5*te,0)),he.add(new go.PathSegment(go.PathSegment.Line,te,.9*ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,ne,te,(.9+fe)*ne,(.5+se)*te,ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,0,.9*ne,(.5-se)*te,ne,0,(.9+fe)*ne).close()),le.spot1=new go.Spot(.25,.5),le.spot2=new go.Spot(.75,.97),le}),go.Shape.defineFigureGenerator("Cone2",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,.9*ne,!0);le.add(se),se.add(new go.PathSegment(go.PathSegment.Bezier,te,.9*ne,(1-.85/.9)*te,ne,.85/.9*te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,.5*te,0)),se.add(new go.PathSegment(go.PathSegment.Line,0,.9*ne).close());var fe=new go.PathFigure(0,.9*ne,!1);return le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Bezier,te,.9*ne,(1-.85/.9)*te,.8*ne,.85/.9*te,.8*ne)),le.spot1=new go.Spot(.25,.5),le.spot2=new go.Spot(.75,.82),le}),go.Shape.defineFigureGenerator("Cube1",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(.5*te,ne,!0);le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,te,.85*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te,.15*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.5*te,0)),se.add(new go.PathSegment(go.PathSegment.Line,0,.15*ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,.85*ne).close());var fe=new go.PathFigure(.5*te,ne,!1);return le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,.5*te,.3*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,0,.15*ne)),fe.add(new go.PathSegment(go.PathSegment.Move,.5*te,.3*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,te,.15*ne)),le.spot1=new go.Spot(0,.3),le.spot2=new go.Spot(.5,.85),le}),go.Shape.defineFigureGenerator("Cube2",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,.3*ne,!0);le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,0,ne)),se.add(new go.PathSegment(go.PathSegment.Line,.7*te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,te,.7*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te,0)),se.add(new go.PathSegment(go.PathSegment.Line,.3*te,0).close());var fe=new go.PathFigure(0,.3*ne,!1);return le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,.7*te,.3*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,te,0)),fe.add(new go.PathSegment(go.PathSegment.Move,.7*te,.3*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.7*te,ne)),le.spot1=new go.Spot(0,.3),le.spot2=new go.Spot(.7,1),le}),go.Shape.defineFigureGenerator("Cylinder1",function(ce,te,ne){var le=ce?ce.parameter1:NaN;isNaN(le)&&(le=5),le=Math.min(le,ne/3);var se=new go.Geometry,fe=ve*.5,he=new go.PathFigure(0,le,!0);se.add(he),he.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,0,0,ve*le,(.5-fe)*te,0)),he.add(new go.PathSegment(go.PathSegment.Bezier,1*te,le,(.5+fe)*te,0,1*te,ve*le)),he.add(new go.PathSegment(go.PathSegment.Line,te,ne-le)),he.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,1*ne,1*te,ne-ve*le,(.5+fe)*te,1*ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,0,ne-le,(.5-fe)*te,1*ne,0,ne-ve*le)),he.add(new go.PathSegment(go.PathSegment.Line,0,le));var ie=new go.PathFigure(te,le,!1);return se.add(ie),ie.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,2*le,1*te,2*le-ve*le,(.5+fe)*te,2*le)),ie.add(new go.PathSegment(go.PathSegment.Bezier,0,le,(.5-fe)*te,2*le,0,2*le-ve*le)),se.spot1=new go.Spot(0,0,0,2*le),se.spot2=new go.Spot(1,1),se}),go.Shape.defineFigureGenerator("Cylinder2",function(ce,te,ne){var le=ce?ce.parameter1:NaN;isNaN(le)&&(le=5),le=Math.min(le,ne/3);var se=new go.Geometry,fe=ve*.5,he=new go.PathFigure(0,ne-le,!0);se.add(he),he.add(new go.PathSegment(go.PathSegment.Line,0,le)),he.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,0,0,ve*le,(.5-fe)*te,0)),he.add(new go.PathSegment(go.PathSegment.Bezier,te,le,(.5+fe)*te,0,te,ve*le)),he.add(new go.PathSegment(go.PathSegment.Line,te,ne-le)),he.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,ne,te,ne-ve*le,(.5+fe)*te,ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,0,ne-le,(.5-fe)*te,ne,0,ne-ve*le));var ie=new go.PathFigure(0,ne-le,!1);return se.add(ie),ie.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,ne-2*le,0,ne-le-ve*le,(.5-fe)*te,ne-2*le)),ie.add(new go.PathSegment(go.PathSegment.Bezier,te,ne-le,(.5+fe)*te,ne-2*le,te,ne-le-ve*le)),se.spot1=new go.Spot(0,0),se.spot2=new go.Spot(1,1,0,-2*le),se}),go.Shape.defineFigureGenerator("Cylinder3",function(ce,te,ne){var le=ce?ce.parameter1:NaN;isNaN(le)&&(le=5),le=Math.min(le,te/3);var se=new go.Geometry,fe=ve*.5,he=new go.PathFigure(le,0,!0);se.add(he),he.add(new go.PathSegment(go.PathSegment.Line,te-le,0)),he.add(new go.PathSegment(go.PathSegment.Bezier,te,.5*ne,te-ve*le,0,te,(.5-fe)*ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,te-le,ne,te,(.5+fe)*ne,te-ve*le,ne)),he.add(new go.PathSegment(go.PathSegment.Line,le,ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,0,.5*ne,ve*le,ne,0,(.5+fe)*ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,le,0,0,(.5-fe)*ne,ve*le,0));var ie=new go.PathFigure(le,0,!1);return se.add(ie),ie.add(new go.PathSegment(go.PathSegment.Bezier,2*le,.5*ne,le+ve*le,0,2*le,(.5-fe)*ne)),ie.add(new go.PathSegment(go.PathSegment.Bezier,le,ne,2*le,(.5+fe)*ne,le+ve*le,ne)),se.spot1=new go.Spot(0,0,2*le,0),se.spot2=new go.Spot(1,1),se}),go.Shape.defineFigureGenerator("Cylinder4",function(ce,te,ne){var le=ce?ce.parameter1:NaN;isNaN(le)&&(le=5),le=Math.min(le,te/3);var se=new go.Geometry,fe=ve*.5,he=new go.PathFigure(te-le,0,!0);se.add(he),he.add(new go.PathSegment(go.PathSegment.Bezier,te,.5*ne,te-ve*le,0,te,(.5-fe)*ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,te-le,ne,te,(.5+fe)*ne,te-ve*le,ne)),he.add(new go.PathSegment(go.PathSegment.Line,le,ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,0,.5*ne,ve*le,ne,0,(.5+fe)*ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,le,0,0,(.5-fe)*ne,ve*le,0)),he.add(new go.PathSegment(go.PathSegment.Line,te-le,0));var ie=new go.PathFigure(te-le,0,!1);return se.add(ie),ie.add(new go.PathSegment(go.PathSegment.Bezier,te-2*le,.5*ne,te-le-ve*le,0,te-2*le,(.5-fe)*ne)),ie.add(new go.PathSegment(go.PathSegment.Bezier,te-le,ne,te-2*le,(.5+fe)*ne,te-le-ve*le,ne)),se.spot1=new go.Spot(0,0),se.spot2=new go.Spot(1,1,-2*le,0),se}),go.Shape.defineFigureGenerator("Prism1",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(.25*te,.25*ne,!0);le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,.75*te,0)),se.add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.5*te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,ne).close());var fe=new go.PathFigure(.25*te,.25*ne,!1);return le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,.5*te,ne)),le.spot1=new go.Spot(.408,.172),le.spot2=new go.Spot(.833,.662),le}),go.Shape.defineFigureGenerator("Prism2",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,.25*ne,!0);le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,.75*te,0)),se.add(new go.PathSegment(go.PathSegment.Line,te,.25*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.75*te,.75*ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,ne).close());var fe=new go.PathFigure(0,ne,!1);return le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,.25*te,.5*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,te,.25*ne)),fe.add(new go.PathSegment(go.PathSegment.Move,0,.25*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.25*te,.5*ne)),le.spot1=new go.Spot(.25,.5),le.spot2=new go.Spot(.75,.75),le}),go.Shape.defineFigureGenerator("Pyramid1",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(.5*te,0,!0);le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,te,.75*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.5*te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,.75*ne).close());var fe=new go.PathFigure(.5*te,0,!1);return le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,.5*te,ne)),le.spot1=new go.Spot(.25,.367),le.spot2=new go.Spot(.75,.875),le}),go.Shape.defineFigureGenerator("Pyramid2",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(.5*te,0,!0);le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,te,.85*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.5*te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,.85*ne).close());var fe=new go.PathFigure(.5*te,0,!1);return le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,.5*te,.7*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,0,.85*ne)),fe.add(new go.PathSegment(go.PathSegment.Move,.5*te,.7*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,te,.85*ne)),le.spot1=new go.Spot(.25,.367),le.spot2=new go.Spot(.75,.875),le}),go.Shape.defineFigureGenerator("Actor",function(ce,te,ne){var le=new go.Geometry,se=.2,fe=.1,he=ve*se,ie=ve*fe,ue=.5,me=.1,Ce=new go.PathFigure(ue*te,(me+fe)*ne,!0);le.add(Ce),Ce.add(new go.PathSegment(go.PathSegment.Bezier,(ue-se)*te,me*ne,(ue-he)*te,(me+fe)*ne,(ue-se)*te,(me+ie)*ne)),Ce.add(new go.PathSegment(go.PathSegment.Bezier,ue*te,(me-fe)*ne,(ue-se)*te,(me-ie)*ne,(ue-he)*te,(me-fe)*ne)),Ce.add(new go.PathSegment(go.PathSegment.Bezier,(ue+se)*te,me*ne,(ue+he)*te,(me-fe)*ne,(ue+se)*te,(me-ie)*ne)),Ce.add(new go.PathSegment(go.PathSegment.Bezier,ue*te,(me+fe)*ne,(ue+se)*te,(me+ie)*ne,(ue+he)*te,(me+fe)*ne));var Ie=.05,Fe=ve*Ie;ue=.05,me=.25;var Re=new go.PathFigure(.5*te,.2*ne,!0);return le.add(Re),Re.add(new go.PathSegment(go.PathSegment.Line,.95*te,.2*ne)),ue=.95,me=.25,Re.add(new go.PathSegment(go.PathSegment.Bezier,(ue+Ie)*te,me*ne,(ue+Fe)*te,(me-Ie)*ne,(ue+Ie)*te,(me-Fe)*ne)),Re.add(new go.PathSegment(go.PathSegment.Line,te,.6*ne)),Re.add(new go.PathSegment(go.PathSegment.Line,.85*te,.6*ne)),Re.add(new go.PathSegment(go.PathSegment.Line,.85*te,.35*ne)),Ie=.025,Fe=ve*Ie,ue=.825,me=.35,Re.add(new go.PathSegment(go.PathSegment.Bezier,ue*te,(me-Ie)*ne,(ue+Ie)*te,(me-Fe)*ne,(ue+Fe)*te,(me-Ie)*ne)),Re.add(new go.PathSegment(go.PathSegment.Bezier,(ue-Ie)*te,me*ne,(ue-Fe)*te,(me-Ie)*ne,(ue-Ie)*te,(me-Fe)*ne)),Re.add(new go.PathSegment(go.PathSegment.Line,.8*te,ne)),Re.add(new go.PathSegment(go.PathSegment.Line,.55*te,ne)),Re.add(new go.PathSegment(go.PathSegment.Line,.55*te,.7*ne)),Ie=.05,Fe=ve*Ie,ue=.5,me=.7,Re.add(new go.PathSegment(go.PathSegment.Bezier,ue*te,(me-Ie)*ne,(ue+Ie)*te,(me-Fe)*ne,(ue+Fe)*te,(me-Ie)*ne)),Re.add(new go.PathSegment(go.PathSegment.Bezier,(ue-Ie)*te,me*ne,(ue-Fe)*te,(me-Ie)*ne,(ue-Ie)*te,(me-Fe)*ne)),Re.add(new go.PathSegment(go.PathSegment.Line,.45*te,ne)),Re.add(new go.PathSegment(go.PathSegment.Line,.2*te,ne)),Re.add(new go.PathSegment(go.PathSegment.Line,.2*te,.35*ne)),Ie=.025,Fe=ve*Ie,ue=.175,me=.35,Re.add(new go.PathSegment(go.PathSegment.Bezier,ue*te,(me-Ie)*ne,(ue+Ie)*te,(me-Fe)*ne,(ue+Fe)*te,(me-Ie)*ne)),Re.add(new go.PathSegment(go.PathSegment.Bezier,(ue-Ie)*te,me*ne,(ue-Fe)*te,(me-Ie)*ne,(ue-Ie)*te,(me-Fe)*ne)),Re.add(new go.PathSegment(go.PathSegment.Line,.15*te,.6*ne)),Re.add(new go.PathSegment(go.PathSegment.Line,0,.6*ne)),Re.add(new go.PathSegment(go.PathSegment.Line,0,.25*ne)),Ie=.05,Fe=ve*Ie,ue=.05,me=.25,Re.add(new go.PathSegment(go.PathSegment.Bezier,ue*te,(me-Ie)*ne,(ue-Ie)*te,(me-Fe)*ne,(ue-Fe)*te,(me-Ie)*ne)),Re.add(new go.PathSegment(go.PathSegment.Line,.5*te,.2*ne)),le.spot1=new go.Spot(.2,.2),le.spot2=new go.Spot(.8,.65),le}),go.Shape.setFigureParameter("Card",0,new At("CornerCutoutSize",.2,.1,.9)),go.Shape.defineFigureGenerator("Card",function(ce,te,ne){var le=ce?ce.parameter1:NaN;isNaN(le)&&(le=.2);var se=new go.Geometry,fe=new go.PathFigure(te,0,!0);return se.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,te,ne)),fe.add(new go.PathSegment(go.PathSegment.Line,0,ne)),fe.add(new go.PathSegment(go.PathSegment.Line,0,le*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,le*te,0).close()),se.spot1=new go.Spot(0,le),se.spot2=go.Spot.BottomRight,se}),go.Shape.defineFigureGenerator("Collate",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(.5*te,.5*ne,!0);le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,0,0)),se.add(new go.PathSegment(go.PathSegment.Line,te,0)),se.add(new go.PathSegment(go.PathSegment.Line,.5*te,.5*ne));var fe=new go.PathFigure(.5*te,.5*ne,!0);return le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,te,ne)),fe.add(new go.PathSegment(go.PathSegment.Line,0,ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.5*te,.5*ne)),le.spot1=new go.Spot(.25,0),le.spot2=new go.Spot(.75,.25),le}),go.Shape.defineFigureGenerator("CreateRequest",function(ce,te,ne){var le=new go.Geometry,se=ce?ce.parameter1:NaN;isNaN(se)&&(se=.1);var fe=new go.PathFigure(0,0,!0);le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,te,0)),fe.add(new go.PathSegment(go.PathSegment.Line,te,ne)),fe.add(new go.PathSegment(go.PathSegment.Line,0,ne).close());var he=new go.PathFigure(0,se*ne,!1);return le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,te,se*ne)),he.add(new go.PathSegment(go.PathSegment.Move,0,(1-se)*ne)),he.add(new go.PathSegment(go.PathSegment.Line,te,(1-se)*ne)),le}),go.Shape.defineFigureGenerator("Database",function(ce,te,ne){var le=new go.Geometry,se=ve*.5,fe=ve*.1,he=new go.PathFigure(te,.1*ne,!0);le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,te,.9*ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,ne,te,(.9+fe)*ne,(.5+se)*te,ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,0,.9*ne,(.5-se)*te,ne,0,(.9+fe)*ne)),he.add(new go.PathSegment(go.PathSegment.Line,0,.1*ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,0,0,(.1-fe)*ne,(.5-se)*te,0)),he.add(new go.PathSegment(go.PathSegment.Bezier,te,.1*ne,(.5+se)*te,0,te,(.1-fe)*ne));var ie=new go.PathFigure(te,.1*ne,!1);return le.add(ie),ie.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,.2*ne,te,(.1+fe)*ne,(.5+se)*te,.2*ne)),ie.add(new go.PathSegment(go.PathSegment.Bezier,0,.1*ne,(.5-se)*te,.2*ne,0,(.1+fe)*ne)),ie.add(new go.PathSegment(go.PathSegment.Move,te,.2*ne)),ie.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,.3*ne,te,(.2+fe)*ne,(.5+se)*te,.3*ne)),ie.add(new go.PathSegment(go.PathSegment.Bezier,0,.2*ne,(.5-se)*te,.3*ne,0,(.2+fe)*ne)),ie.add(new go.PathSegment(go.PathSegment.Move,te,.3*ne)),ie.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,.4*ne,te,(.3+fe)*ne,(.5+se)*te,.4*ne)),ie.add(new go.PathSegment(go.PathSegment.Bezier,0,.3*ne,(.5-se)*te,.4*ne,0,(.3+fe)*ne)),le.spot1=new go.Spot(0,.4),le.spot2=new go.Spot(1,.9),le}),go.Shape.defineFigureGenerator("DataStorage",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,0,!0);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,.75*te,0)),se.add(new go.PathSegment(go.PathSegment.Bezier,.75*te,ne,te,0,te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,0,0,.25*te,.9*ne,.25*te,.1*ne).close()),le.spot1=new go.Spot(.226,0),le.spot2=new go.Spot(.81,1),le}),go.Shape.defineFigureGenerator("DiskStorage",function(ce,te,ne){var le=new go.Geometry,se=ve*.5,fe=ve*.1,he=new go.PathFigure(te,.1*ne,!0);le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,te,.9*ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,ne,te,(.9+fe)*ne,(.5+se)*te,ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,0,.9*ne,(.5-se)*te,ne,0,(.9+fe)*ne)),he.add(new go.PathSegment(go.PathSegment.Line,0,.1*ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,0,0,(.1-fe)*ne,(.5-se)*te,0)),he.add(new go.PathSegment(go.PathSegment.Bezier,te,.1*ne,(.5+se)*te,0,te,(.1-fe)*ne));var ie=new go.PathFigure(te,.1*ne,!1);return le.add(ie),ie.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,.2*ne,te,(.1+fe)*ne,(.5+se)*te,.2*ne)),ie.add(new go.PathSegment(go.PathSegment.Bezier,0,.1*ne,(.5-se)*te,.2*ne,0,(.1+fe)*ne)),ie.add(new go.PathSegment(go.PathSegment.Move,te,.2*ne)),ie.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,.3*ne,te,(.2+fe)*ne,(.5+se)*te,.3*ne)),ie.add(new go.PathSegment(go.PathSegment.Bezier,0,.2*ne,(.5-se)*te,.3*ne,0,(.2+fe)*ne)),le.spot1=new go.Spot(0,.3),le.spot2=new go.Spot(1,.9),le}),go.Shape.defineFigureGenerator("Display",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(.25*te,0,!0);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,.75*te,0)),se.add(new go.PathSegment(go.PathSegment.Bezier,.75*te,ne,te,0,te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,.25*te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,.5*ne).close()),le.spot1=new go.Spot(.25,0),le.spot2=new go.Spot(.75,1),le}),go.Shape.defineFigureGenerator("DividedEvent",function(ce,te,ne){var le=new go.Geometry,se=ce?ce.parameter1:NaN;isNaN(se)?se=.2:se<.15&&(se=.15);var fe=ve*.2,he=new go.PathFigure(0,.2*ne,!0);le.add(he),he.add(new go.PathSegment(go.PathSegment.Bezier,.2*te,0,0,(.2-fe)*ne,(.2-fe)*te,0)),he.add(new go.PathSegment(go.PathSegment.Line,.8*te,0)),he.add(new go.PathSegment(go.PathSegment.Bezier,te,.2*ne,(.8+fe)*te,0,te,(.2-fe)*ne)),he.add(new go.PathSegment(go.PathSegment.Line,te,.8*ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,.8*te,ne,te,(.8+fe)*ne,(.8+fe)*te,ne)),he.add(new go.PathSegment(go.PathSegment.Line,.2*te,ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,0,.8*ne,(.2-fe)*te,ne,0,(.8+fe)*ne)),he.add(new go.PathSegment(go.PathSegment.Line,0,.2*ne));var ie=new go.PathFigure(0,se*ne,!1);return le.add(ie),ie.add(new go.PathSegment(go.PathSegment.Line,te,se*ne)),le}),go.Shape.defineFigureGenerator("DividedProcess",function(ce,te,ne){var le=new go.Geometry,se=ce?ce.parameter1:NaN;(isNaN(se)||se<.1)&&(se=.1);var fe=new go.PathFigure(0,0,!0);le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,te,0)),fe.add(new go.PathSegment(go.PathSegment.Line,te,ne)),fe.add(new go.PathSegment(go.PathSegment.Line,0,ne).close());var he=new go.PathFigure(0,se*ne,!1);return le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,te,se*ne)),le}),go.Shape.defineFigureGenerator("Document",function(ce,te,ne){var le=new go.Geometry;ne=ne/.8;var se=new go.PathFigure(0,.7*ne,!0);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,0,0)),se.add(new go.PathSegment(go.PathSegment.Line,te,0)),se.add(new go.PathSegment(go.PathSegment.Line,te,.7*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,0,.7*ne,.5*te,.4*ne,.5*te,ne).close()),le.spot1=go.Spot.TopLeft,le.spot2=new go.Spot(1,.6),le}),go.Shape.defineFigureGenerator("ExternalOrganization",function(ce,te,ne){var le=new go.Geometry,se=ce?ce.parameter1:NaN;(isNaN(se)||se<.2)&&(se=.2);var fe=new go.PathFigure(0,0,!0);le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,te,0)),fe.add(new go.PathSegment(go.PathSegment.Line,te,ne)),fe.add(new go.PathSegment(go.PathSegment.Line,0,ne).close());var he=new go.PathFigure(se*te,0,!1);return le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,0,se*ne)),he.add(new go.PathSegment(go.PathSegment.Move,te,se*ne)),he.add(new go.PathSegment(go.PathSegment.Line,(1-se)*te,0)),he.add(new go.PathSegment(go.PathSegment.Move,0,(1-se)*ne)),he.add(new go.PathSegment(go.PathSegment.Line,se*te,ne)),he.add(new go.PathSegment(go.PathSegment.Move,(1-se)*te,ne)),he.add(new go.PathSegment(go.PathSegment.Line,te,(1-se)*ne)),le}),go.Shape.defineFigureGenerator("ExternalProcess",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(.5*te,0,!0);le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.5*te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,.5*ne).close());var fe=new go.PathFigure(.1*te,.4*ne,!1);return le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,.1*te,.6*ne)),fe.add(new go.PathSegment(go.PathSegment.Move,.9*te,.6*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.9*te,.4*ne)),fe.add(new go.PathSegment(go.PathSegment.Move,.6*te,.1*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.4*te,.1*ne)),fe.add(new go.PathSegment(go.PathSegment.Move,.4*te,.9*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.6*te,.9*ne)),le.spot1=new go.Spot(.25,.25),le.spot2=new go.Spot(.75,.75),le}),go.Shape.defineFigureGenerator("File",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,0,!0);le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,.75*te,0)),se.add(new go.PathSegment(go.PathSegment.Line,te,.25*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,ne).close());var fe=new go.PathFigure(.75*te,0,!1);return le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,.75*te,.25*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,te,.25*ne)),le.spot1=new go.Spot(0,.25),le.spot2=go.Spot.BottomRight,le}),go.Shape.defineFigureGenerator("Interrupt",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(te,.5*ne,!0);le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,0,ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,0)),se.add(new go.PathSegment(go.PathSegment.Line,te,.5*ne));var fe=new go.PathFigure(te,.5*ne,!1);le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,te,ne));var he=new go.PathFigure(te,.5*ne,!1);return le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,te,0)),le.spot1=new go.Spot(0,.25),le.spot2=new go.Spot(.5,.75),le}),go.Shape.defineFigureGenerator("InternalStorage",function(ce,te,ne){var le=new go.Geometry,se=ce?ce.parameter1:NaN,fe=ce?ce.parameter2:NaN;isNaN(se)&&(se=.1),isNaN(fe)&&(fe=.1);var he=new go.PathFigure(0,0,!0);le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,te,0)),he.add(new go.PathSegment(go.PathSegment.Line,te,ne)),he.add(new go.PathSegment(go.PathSegment.Line,0,ne).close());var ie=new go.PathFigure(se*te,0,!1);return le.add(ie),ie.add(new go.PathSegment(go.PathSegment.Line,se*te,ne)),ie.add(new go.PathSegment(go.PathSegment.Move,0,fe*ne)),ie.add(new go.PathSegment(go.PathSegment.Line,te,fe*ne)),le}),go.Shape.defineFigureGenerator("Junction",function(ce,te,ne){var le=new go.Geometry,se=1/Math.SQRT2,fe=(1-1/Math.SQRT2)/2,he=ve*.5,ie=.5,ue=new go.PathFigure(te,ie*ne,!0);le.add(ue),ue.add(new go.PathSegment(go.PathSegment.Bezier,ie*te,ne,te,(ie+he)*ne,(ie+he)*te,ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,0,ie*ne,(ie-he)*te,ne,0,(ie+he)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,ie*te,0,0,(ie-he)*ne,(ie-he)*te,0)),ue.add(new go.PathSegment(go.PathSegment.Bezier,te,ie*ne,(ie+he)*te,0,te,(ie-he)*ne));var me=new go.PathFigure((fe+se)*te,(fe+se)*ne,!1);return le.add(me),me.add(new go.PathSegment(go.PathSegment.Line,fe*te,fe*ne)),me.add(new go.PathSegment(go.PathSegment.Move,fe*te,(fe+se)*ne)),me.add(new go.PathSegment(go.PathSegment.Line,(fe+se)*te,fe*ne)),le}),go.Shape.defineFigureGenerator("LinedDocument",function(ce,te,ne){var le=new go.Geometry;ne=ne/.8;var se=new go.PathFigure(0,.7*ne,!0);le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,0,0)),se.add(new go.PathSegment(go.PathSegment.Line,te,0)),se.add(new go.PathSegment(go.PathSegment.Line,te,.7*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,0,.7*ne,.5*te,.4*ne,.5*te,ne).close());var fe=new go.PathFigure(.1*te,0,!1);return le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,.1*te,.75*ne)),le.spot1=new go.Spot(.1,0),le.spot2=new go.Spot(1,.6),le}),go.Shape.defineFigureGenerator("LoopLimit",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,ne,!0);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,0,.25*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.25*te,0)),se.add(new go.PathSegment(go.PathSegment.Line,.75*te,0)),se.add(new go.PathSegment(go.PathSegment.Line,te,.25*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te,ne).close()),le.spot1=new go.Spot(0,.25),le.spot2=go.Spot.BottomRight,le}),go.Shape.defineFigureGenerator("MagneticTape",function(ce,te,ne){var le=new go.Geometry,se=ve*.5,fe=.5,he=new go.PathFigure(.5*te,ne,!0);return le.add(he),he.add(new go.PathSegment(go.PathSegment.Bezier,0,fe*ne,(fe-se)*te,ne,0,(fe+se)*ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,fe*te,0,0,(fe-se)*ne,(fe-se)*te,0)),he.add(new go.PathSegment(go.PathSegment.Bezier,te,fe*ne,(fe+se)*te,0,te,(fe-se)*ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,(fe+.1)*te,.9*ne,te,(fe+se)*ne,(fe+se)*te,.9*ne)),he.add(new go.PathSegment(go.PathSegment.Line,te,.9*ne)),he.add(new go.PathSegment(go.PathSegment.Line,te,ne)),he.add(new go.PathSegment(go.PathSegment.Line,.5*te,ne)),le.spot1=new go.Spot(.15,.15),le.spot2=new go.Spot(.85,.8),le}),go.Shape.defineFigureGenerator("ManualInput",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(te,0,!0);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,.25*ne).close()),le.spot1=new go.Spot(0,.25),le.spot2=go.Spot.BottomRight,le}),go.Shape.defineFigureGenerator("MessageFromUser",function(ce,te,ne){var le=new go.Geometry,se=ce?ce.parameter1:NaN;isNaN(se)&&(se=.7);var fe=new go.PathFigure(0,0,!0);return le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,te,0)),fe.add(new go.PathSegment(go.PathSegment.Line,se*te,.5*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,te,ne)),fe.add(new go.PathSegment(go.PathSegment.Line,0,ne).close()),le.spot1=go.Spot.TopLeft,le}),go.Shape.defineFigureGenerator("MicroformProcessing",function(ce,te,ne){var le=new go.Geometry,se=ce?ce.parameter1:NaN;isNaN(se)&&(se=.25);var fe=new go.PathFigure(0,0,!0);return le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,.5*te,se*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,te,0)),fe.add(new go.PathSegment(go.PathSegment.Line,te,ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.5*te,(1-se)*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,0,ne).close()),le}),go.Shape.defineFigureGenerator("MicroformRecording",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,0,!0);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,.75*te,.25*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te,.15*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te,.85*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.75*te,.75*ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,ne).close()),le.spot1=new go.Spot(0,.25),le.spot2=new go.Spot(1,.75),le}),go.Shape.defineFigureGenerator("MultiDocument",function(ce,te,ne){var le=new go.Geometry;ne=ne/.8;var se=new go.PathFigure(te,0,!0);le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,.9*te,.44*ne,.96*te,.47*ne,.93*te,.45*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.9*te,.6*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,.8*te,.54*ne,.86*te,.57*ne,.83*te,.55*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.8*te,.7*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,0,.7*ne,.4*te,.4*ne,.4*te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,.2*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.1*te,.2*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.1*te,.1*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.2*te,.1*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.2*te,0).close());var fe=new go.PathFigure(.1*te,.2*ne,!1);return le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,.8*te,.2*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.8*te,.54*ne)),fe.add(new go.PathSegment(go.PathSegment.Move,.2*te,.1*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.9*te,.1*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.9*te,.44*ne)),le.spot1=new go.Spot(0,.25),le.spot2=new go.Spot(.8,.77),le}),go.Shape.defineFigureGenerator("MultiProcess",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(.1*te,.1*ne,!0);le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,.2*te,.1*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.2*te,0)),se.add(new go.PathSegment(go.PathSegment.Line,te,0)),se.add(new go.PathSegment(go.PathSegment.Line,te,.8*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.9*te,.8*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.9*te,.9*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.8*te,.9*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.8*te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,.2*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.1*te,.2*ne).close());var fe=new go.PathFigure(.2*te,.1*ne,!1);return le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,.9*te,.1*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.9*te,.8*ne)),fe.add(new go.PathSegment(go.PathSegment.Move,.1*te,.2*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.8*te,.2*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.8*te,.9*ne)),le.spot1=new go.Spot(0,.2),le.spot2=new go.Spot(.8,1),le}),go.Shape.defineFigureGenerator("OfflineStorage",function(ce,te,ne){var le=new go.Geometry,se=ce?ce.parameter1:NaN;isNaN(se)&&(se=.1);var fe=1-se,he=new go.PathFigure(0,0,!0);le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,te,0)),he.add(new go.PathSegment(go.PathSegment.Line,.5*te,ne).close());var ie=new go.PathFigure(.5*se*te,se*ne,!1);return le.add(ie),ie.add(new go.PathSegment(go.PathSegment.Line,(1-.5*se)*te,se*ne)),le}),go.Shape.defineFigureGenerator("OffPageConnector",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,0,!0);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,.75*te,0)),se.add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.75*te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,ne).close()),le.spot1=go.Spot.TopLeft,le.spot2=new go.Spot(.75,1),le}),go.Shape.defineFigureGenerator("Or",function(ce,te,ne){var le=new go.Geometry,se=ve*.5,fe=.5,he=new go.PathFigure(te,fe*ne,!0);le.add(he),he.add(new go.PathSegment(go.PathSegment.Bezier,fe*te,ne,te,(fe+se)*ne,(fe+se)*te,ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,0,fe*ne,(fe-se)*te,ne,0,(fe+se)*ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,fe*te,0,0,(fe-se)*ne,(fe-se)*te,0)),he.add(new go.PathSegment(go.PathSegment.Bezier,te,fe*ne,(fe+se)*te,0,te,(fe-se)*ne));var ie=new go.PathFigure(te,.5*ne,!1);return le.add(ie),ie.add(new go.PathSegment(go.PathSegment.Line,0,.5*ne)),ie.add(new go.PathSegment(go.PathSegment.Move,.5*te,ne)),ie.add(new go.PathSegment(go.PathSegment.Line,.5*te,0)),le}),go.Shape.defineFigureGenerator("PaperTape",function(ce,te,ne){var le=new go.Geometry;ne=ne/.8;var se=new go.PathFigure(0,.7*ne,!0);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,0,.3*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,te,.3*ne,.5*te,.6*ne,.5*te,0)),se.add(new go.PathSegment(go.PathSegment.Line,te,.7*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,0,.7*ne,.5*te,.4*ne,.5*te,ne).close()),le.spot1=new go.Spot(0,.49),le.spot2=new go.Spot(1,.75),le}),go.Shape.defineFigureGenerator("PrimitiveFromCall",function(ce,te,ne){var le=new go.Geometry,se=ce?ce.parameter1:NaN,fe=ce?ce.parameter2:NaN;isNaN(se)&&(se=.1),isNaN(fe)&&(fe=.3);var he=new go.PathFigure(0,0,!0);return le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,te,0)),he.add(new go.PathSegment(go.PathSegment.Line,(1-fe)*te,.5*ne)),he.add(new go.PathSegment(go.PathSegment.Line,te,ne)),he.add(new go.PathSegment(go.PathSegment.Line,0,ne).close()),le}),go.Shape.defineFigureGenerator("PrimitiveToCall",function(ce,te,ne){var le=new go.Geometry,se=ce?ce.parameter1:NaN,fe=ce?ce.parameter2:NaN;isNaN(se)&&(se=.1),isNaN(fe)&&(fe=.3);var he=new go.PathFigure(0,0,!0);return le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,(1-fe)*te,0)),he.add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)),he.add(new go.PathSegment(go.PathSegment.Line,(1-fe)*te,ne)),he.add(new go.PathSegment(go.PathSegment.Line,0,ne).close()),le}),go.Shape.defineFigureGenerator("Procedure",function(ce,te,ne){var le=new go.Geometry,se=ce?ce.parameter1:NaN;isNaN(se)&&(se=.1);var fe=new go.PathFigure(0,0,!0);le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,te,0)),fe.add(new go.PathSegment(go.PathSegment.Line,te,ne)),fe.add(new go.PathSegment(go.PathSegment.Line,0,ne).close());var he=new go.PathFigure((1-se)*te,0,!1);return le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,(1-se)*te,ne)),he.add(new go.PathSegment(go.PathSegment.Move,se*te,0)),he.add(new go.PathSegment(go.PathSegment.Line,se*te,ne)),le}),go.Shape.defineFigureGenerator("Process",function(ce,te,ne){var le=new go.Geometry,se=ce?ce.parameter1:NaN;isNaN(se)&&(se=.1);var fe=new go.PathFigure(0,0,!0);le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,te,0)),fe.add(new go.PathSegment(go.PathSegment.Line,te,ne)),fe.add(new go.PathSegment(go.PathSegment.Line,0,ne).close());var he=new go.PathFigure(se*te,0,!1);return le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,se*te,ne)),le.spot2=go.Spot.BottomRight,le}),go.Shape.defineFigureGenerator("Sort",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(.5*te,0,!0);le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.5*te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,.5*ne).close());var fe=new go.PathFigure(0,.5*ne,!1);return le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)),le.spot1=new go.Spot(.25,.25),le.spot2=new go.Spot(.75,.5),le}),go.Shape.defineFigureGenerator("Start",function(ce,te,ne){var le=new go.Geometry,se=ce?ce.parameter1:NaN;isNaN(se)&&(se=.25);var fe=new go.PathFigure(se*te,0,!0);le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Arc,270,180,.75*te,.5*ne,.25*te,.5*ne)),fe.add(new go.PathSegment(go.PathSegment.Arc,90,180,.25*te,.5*ne,.25*te,.5*ne));var he=new go.PathFigure(se*te,0,!1);return le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,se*te,ne)),he.add(new go.PathSegment(go.PathSegment.Move,(1-se)*te,0)),he.add(new go.PathSegment(go.PathSegment.Line,(1-se)*te,ne)),le.spot1=new go.Spot(se,0),le.spot2=new go.Spot(1-se,1),le}),go.Shape.defineFigureGenerator("Terminator",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(.25*te,0,!0);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Arc,270,180,.75*te,.5*ne,.25*te,.5*ne)),se.add(new go.PathSegment(go.PathSegment.Arc,90,180,.25*te,.5*ne,.25*te,.5*ne)),le.spot1=new go.Spot(.23,0),le.spot2=new go.Spot(.77,1),le}),go.Shape.defineFigureGenerator("TransmittalTape",function(ce,te,ne){var le=new go.Geometry,se=ce?ce.parameter1:NaN;isNaN(se)&&(se=.1);var fe=new go.PathFigure(0,0,!0);return le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,te,0)),fe.add(new go.PathSegment(go.PathSegment.Line,te,ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.75*te,(1-se)*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,0,(1-se)*ne).close()),le.spot1=go.Spot.TopLeft,le}),go.Shape.defineFigureGenerator("AndGate",function(ce,te,ne){var le=new go.Geometry,se=ve*.5,fe=new go.PathFigure(0,0,!0);return le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,.5*te,0)),fe.add(new go.PathSegment(go.PathSegment.Bezier,te,.5*ne,(.5+se)*te,0,te,(.5-se)*ne)),fe.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,ne,te,(.5+se)*ne,(.5+se)*te,ne)),fe.add(new go.PathSegment(go.PathSegment.Line,0,ne).close()),le.spot1=go.Spot.TopLeft,le.spot2=new go.Spot(.55,1),le}),go.Shape.defineFigureGenerator("Buffer",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,0,!0);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,ne).close()),le.spot1=new go.Spot(0,.25),le.spot2=new go.Spot(.5,.75),le}),go.Shape.defineFigureGenerator("Clock",function(ce,te,ne){var le=new go.Geometry,se=ve*.5,fe=.5,he=new go.PathFigure(te,fe*ne,!0);le.add(he),he.add(new go.PathSegment(go.PathSegment.Bezier,fe*te,ne,te,(fe+se)*ne,(fe+se)*te,ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,0,fe*ne,(fe-se)*te,ne,0,(fe+se)*ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,fe*te,0,0,(fe-se)*ne,(fe-se)*te,0)),he.add(new go.PathSegment(go.PathSegment.Bezier,te,fe*ne,(fe+se)*te,0,te,(fe-se)*ne));var ie=new go.PathFigure(te,fe*ne,!1);le.add(ie),ie.add(new go.PathSegment(go.PathSegment.Line,te,fe*ne));var ue=new go.PathFigure(.8*te,.75*ne,!1);return le.add(ue),ue.add(new go.PathSegment(go.PathSegment.Line,.8*te,.25*ne)),ue.add(new go.PathSegment(go.PathSegment.Line,.6*te,.25*ne)),ue.add(new go.PathSegment(go.PathSegment.Line,.6*te,.75*ne)),ue.add(new go.PathSegment(go.PathSegment.Line,.4*te,.75*ne)),ue.add(new go.PathSegment(go.PathSegment.Line,.4*te,.25*ne)),ue.add(new go.PathSegment(go.PathSegment.Line,.2*te,.25*ne)),ue.add(new go.PathSegment(go.PathSegment.Line,.2*te,.75*ne)),le}),go.Shape.defineFigureGenerator("Ground",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(.5*te,0,!1);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,.5*te,.4*ne)),se.add(new go.PathSegment(go.PathSegment.Move,.2*te,.6*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.8*te,.6*ne)),se.add(new go.PathSegment(go.PathSegment.Move,.3*te,.8*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.7*te,.8*ne)),se.add(new go.PathSegment(go.PathSegment.Move,.4*te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,.6*te,ne)),le}),go.Shape.defineFigureGenerator("Inverter",function(ce,te,ne){var le=new go.Geometry,se=ve*.1,fe=.1,he=.9,ie=.5,ue=new go.PathFigure(.8*te,.5*ne,!0);le.add(ue),ue.add(new go.PathSegment(go.PathSegment.Line,0,ne)),ue.add(new go.PathSegment(go.PathSegment.Line,0,0)),ue.add(new go.PathSegment(go.PathSegment.Line,.8*te,.5*ne));var me=new go.PathFigure((he+fe)*te,ie*ne,!0);return le.add(me),me.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie+fe)*ne,(he+fe)*te,(ie+se)*ne,(he+se)*te,(ie+fe)*ne)),me.add(new go.PathSegment(go.PathSegment.Bezier,(he-fe)*te,ie*ne,(he-se)*te,(ie+fe)*ne,(he-fe)*te,(ie+se)*ne)),me.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie-fe)*ne,(he-fe)*te,(ie-se)*ne,(he-se)*te,(ie-fe)*ne)),me.add(new go.PathSegment(go.PathSegment.Bezier,(he+fe)*te,ie*ne,(he+se)*te,(ie-fe)*ne,(he+fe)*te,(ie-se)*ne)),le.spot1=new go.Spot(0,.25),le.spot2=new go.Spot(.4,.75),le}),go.Shape.defineFigureGenerator("NandGate",function(ce,te,ne){var le=new go.Geometry,se=ve*.5,fe=ve*.4,he=ve*.1,ie=.1,ue=.9,me=.5,Ce=new go.PathFigure(.8*te,.5*ne,!0);le.add(Ce),Ce.add(new go.PathSegment(go.PathSegment.Bezier,.4*te,ne,.8*te,(.5+fe)*ne,(.4+se)*te,ne)),Ce.add(new go.PathSegment(go.PathSegment.Line,0,ne)),Ce.add(new go.PathSegment(go.PathSegment.Line,0,0)),Ce.add(new go.PathSegment(go.PathSegment.Line,.4*te,0)),Ce.add(new go.PathSegment(go.PathSegment.Bezier,.8*te,.5*ne,(.4+se)*te,0,.8*te,(.5-fe)*ne));var Ie=new go.PathFigure((ue+ie)*te,me*ne,!0);return le.add(Ie),Ie.add(new go.PathSegment(go.PathSegment.Bezier,ue*te,(me+ie)*ne,(ue+ie)*te,(me+he)*ne,(ue+he)*te,(me+ie)*ne)),Ie.add(new go.PathSegment(go.PathSegment.Bezier,(ue-ie)*te,me*ne,(ue-he)*te,(me+ie)*ne,(ue-ie)*te,(me+he)*ne)),Ie.add(new go.PathSegment(go.PathSegment.Bezier,ue*te,(me-ie)*ne,(ue-ie)*te,(me-he)*ne,(ue-he)*te,(me-ie)*ne)),Ie.add(new go.PathSegment(go.PathSegment.Bezier,(ue+ie)*te,me*ne,(ue+he)*te,(me-ie)*ne,(ue+ie)*te,(me-he)*ne)),le.spot1=new go.Spot(0,.05),le.spot2=new go.Spot(.55,.95),le}),go.Shape.defineFigureGenerator("NorGate",function(ce,te,ne){var le=new go.Geometry,se=.5,fe=ve*se,he=0,ie=.5,ue=new go.PathFigure(.8*te,.5*ne,!0);le.add(ue),ue.add(new go.PathSegment(go.PathSegment.Bezier,0,ne,.7*te,(ie+fe)*ne,(he+fe)*te,(ie+se)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,0,0,.25*te,.75*ne,.25*te,.25*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,.8*te,.5*ne,(he+fe)*te,(ie-se)*ne,.7*te,(ie-fe)*ne)),se=.1,fe=ve*.1,he=.9,ie=.5;var me=new go.PathFigure((he-se)*te,ie*ne,!0);return le.add(me),me.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie-se)*ne,(he-se)*te,(ie-fe)*ne,(he-fe)*te,(ie-se)*ne)),me.add(new go.PathSegment(go.PathSegment.Bezier,(he+se)*te,ie*ne,(he+fe)*te,(ie-se)*ne,(he+se)*te,(ie-fe)*ne)),me.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie+se)*ne,(he+se)*te,(ie+fe)*ne,(he+fe)*te,(ie+se)*ne)),me.add(new go.PathSegment(go.PathSegment.Bezier,(he-se)*te,ie*ne,(he-fe)*te,(ie+se)*ne,(he-se)*te,(ie+fe)*ne)),le.spot1=new go.Spot(.2,.25),le.spot2=new go.Spot(.6,.75),le}),go.Shape.defineFigureGenerator("OrGate",function(ce,te,ne){var le=new go.Geometry,se=.5,fe=ve*se,he=0,ie=.5,ue=new go.PathFigure(0,0,!0);return le.add(ue),ue.add(new go.PathSegment(go.PathSegment.Bezier,te,.5*ne,(he+fe+fe)*te,(ie-se)*ne,.8*te,(ie-fe)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,0,ne,.8*te,(ie+fe)*ne,(he+fe+fe)*te,(ie+se)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,0,0,.25*te,.75*ne,.25*te,.25*ne).close()),le.spot1=new go.Spot(.2,.25),le.spot2=new go.Spot(.75,.75),le}),go.Shape.defineFigureGenerator("XnorGate",function(ce,te,ne){var le=new go.Geometry,se=.5,fe=ve*se,he=.2,ie=.5,ue=new go.PathFigure(.1*te,0,!1);le.add(ue),ue.add(new go.PathSegment(go.PathSegment.Bezier,.1*te,ne,.35*te,.25*ne,.35*te,.75*ne));var me=new go.PathFigure(.8*te,.5*ne,!0);le.add(me),me.add(new go.PathSegment(go.PathSegment.Bezier,.2*te,ne,.7*te,(ie+fe)*ne,(he+fe)*te,(ie+se)*ne)),me.add(new go.PathSegment(go.PathSegment.Bezier,.2*te,0,.45*te,.75*ne,.45*te,.25*ne)),me.add(new go.PathSegment(go.PathSegment.Bezier,.8*te,.5*ne,(he+fe)*te,(ie-se)*ne,.7*te,(ie-fe)*ne)),se=.1,fe=ve*.1,he=.9,ie=.5;var Ce=new go.PathFigure((he-se)*te,ie*ne,!0);return le.add(Ce),Ce.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie-se)*ne,(he-se)*te,(ie-fe)*ne,(he-fe)*te,(ie-se)*ne)),Ce.add(new go.PathSegment(go.PathSegment.Bezier,(he+se)*te,ie*ne,(he+fe)*te,(ie-se)*ne,(he+se)*te,(ie-fe)*ne)),Ce.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie+se)*ne,(he+se)*te,(ie+fe)*ne,(he+fe)*te,(ie+se)*ne)),Ce.add(new go.PathSegment(go.PathSegment.Bezier,(he-se)*te,ie*ne,(he-fe)*te,(ie+se)*ne,(he-se)*te,(ie+fe)*ne)),le.spot1=new go.Spot(.4,.25),le.spot2=new go.Spot(.65,.75),le}),go.Shape.defineFigureGenerator("XorGate",function(ce,te,ne){var le=new go.Geometry,se=.5,fe=ve*se,he=.2,ie=.5,ue=new go.PathFigure(.1*te,0,!1);le.add(ue),ue.add(new go.PathSegment(go.PathSegment.Bezier,.1*te,ne,.35*te,.25*ne,.35*te,.75*ne));var me=new go.PathFigure(.2*te,0,!0);return le.add(me),me.add(new go.PathSegment(go.PathSegment.Bezier,te,.5*ne,(he+fe)*te,(ie-se)*ne,.9*te,(ie-fe)*ne)),me.add(new go.PathSegment(go.PathSegment.Bezier,.2*te,ne,.9*te,(ie+fe)*ne,(he+fe)*te,(ie+se)*ne)),me.add(new go.PathSegment(go.PathSegment.Bezier,.2*te,0,.45*te,.75*ne,.45*te,.25*ne).close()),le.spot1=new go.Spot(.4,.25),le.spot2=new go.Spot(.8,.75),le}),go.Shape.defineFigureGenerator("Capacitor",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,0,!1);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,0,ne)),se.add(new go.PathSegment(go.PathSegment.Move,te,0)),se.add(new go.PathSegment(go.PathSegment.Line,te,ne)),le}),go.Shape.defineFigureGenerator("Resistor",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,.5*ne,!1);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,.1*te,0)),se.add(new go.PathSegment(go.PathSegment.Line,.2*te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,.3*te,0)),se.add(new go.PathSegment(go.PathSegment.Line,.4*te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,.5*te,0)),se.add(new go.PathSegment(go.PathSegment.Line,.6*te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,.7*te,.5*ne)),le}),go.Shape.defineFigureGenerator("Inductor",function(ce,te,ne){var le=new go.Geometry,se=ve*.1,fe=.1,he=.1,ie=.5,ue=new go.PathFigure((he-se*.5)*te,ne,!1);return le.add(ue),ue.add(new go.PathSegment(go.PathSegment.Bezier,(he+fe)*te,0,(he-se)*te,ne,(he-fe)*te,0)),he=.3,ue.add(new go.PathSegment(go.PathSegment.Bezier,he*te,ne,(he+fe)*te,0,(he+se)*te,ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(he+fe)*te,0,(he-se)*te,ne,(he-fe)*te,0)),he=.5,ue.add(new go.PathSegment(go.PathSegment.Bezier,he*te,ne,(he+fe)*te,0,(he+se)*te,ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(he+fe)*te,0,(he-se)*te,ne,(he-fe)*te,0)),he=.7,ue.add(new go.PathSegment(go.PathSegment.Bezier,he*te,ne,(he+fe)*te,0,(he+se)*te,ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(he+fe)*te,0,(he-se)*te,ne,(he-fe)*te,0)),he=.9,ue.add(new go.PathSegment(go.PathSegment.Bezier,(he+se*.5)*te,ne,(he+fe)*te,0,(he+se)*te,ne)),le}),go.Shape.defineFigureGenerator("ACvoltageSource",function(ce,te,ne){var le=new go.Geometry,se=ve*.5,fe=.5,he=.5,ie=.5,ue=new go.PathFigure((he-fe)*te,ie*ne,!1);return le.add(ue),ue.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie-fe)*ne,(he-fe)*te,(ie-se)*ne,(he-se)*te,(ie-fe)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(he+fe)*te,ie*ne,(he+se)*te,(ie-fe)*ne,(he+fe)*te,(ie-se)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie+fe)*ne,(he+fe)*te,(ie+se)*ne,(he+se)*te,(ie+fe)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(he-fe)*te,ie*ne,(he-se)*te,(ie+fe)*ne,(he-fe)*te,(ie+se)*ne)),ue.add(new go.PathSegment(go.PathSegment.Move,(he-fe+.1)*te,ie*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(he+fe-.1)*te,ie*ne,he*te,(ie-fe)*ne,he*te,(ie+fe)*ne)),le}),go.Shape.defineFigureGenerator("DCvoltageSource",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,.75*ne,!1);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,0,.25*ne)),se.add(new go.PathSegment(go.PathSegment.Move,te,0)),se.add(new go.PathSegment(go.PathSegment.Line,te,ne)),le}),go.Shape.defineFigureGenerator("Diode",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(te,0,!1);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,0)),se.add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te,ne)),le.spot1=new go.Spot(0,.25),le.spot2=new go.Spot(.5,.75),le}),go.Shape.defineFigureGenerator("Wifi",function(ce,te,ne){var le=new go.Geometry,se=te,fe=ne;te=te*.38,ne=ne*.6;var he=ve*.8,ie=.8,ue=0,me=.5,Ce=(se-te)/2,Ie=(fe-ne)/2,Fe=new go.PathFigure(ue*te+Ce,(me+ie)*ne+Ie,!0);le.add(Fe),Fe.add(new go.PathSegment(go.PathSegment.Bezier,(ue-ie)*te+Ce,me*ne+Ie,(ue-he)*te+Ce,(me+ie)*ne+Ie,(ue-ie)*te+Ce,(me+he)*ne+Ie)),Fe.add(new go.PathSegment(go.PathSegment.Bezier,ue*te+Ce,(me-ie)*ne+Ie,(ue-ie)*te+Ce,(me-he)*ne+Ie,(ue-he)*te+Ce,(me-ie)*ne+Ie)),Fe.add(new go.PathSegment(go.PathSegment.Bezier,(ue-ie+he*.5)*te+Ce,me*ne+Ie,ue*te+Ce,(me-ie)*ne+Ie,(ue-ie+he*.5)*te+Ce,(me-he)*ne+Ie)),Fe.add(new go.PathSegment(go.PathSegment.Bezier,ue*te+Ce,(me+ie)*ne+Ie,(ue-ie+he*.5)*te+Ce,(me+he)*ne+Ie,ue*te+Ce,(me+ie)*ne+Ie).close()),he=ve*.4,ie=.4,ue=.2,me=.5;var Re=new go.PathFigure(ue*te+Ce,(me+ie)*ne+Ie,!0);le.add(Re),Re.add(new go.PathSegment(go.PathSegment.Bezier,(ue-ie)*te+Ce,me*ne+Ie,(ue-he)*te+Ce,(me+ie)*ne+Ie,(ue-ie)*te+Ce,(me+he)*ne+Ie)),Re.add(new go.PathSegment(go.PathSegment.Bezier,ue*te+Ce,(me-ie)*ne+Ie,(ue-ie)*te+Ce,(me-he)*ne+Ie,(ue-he)*te+Ce,(me-ie)*ne+Ie)),Re.add(new go.PathSegment(go.PathSegment.Bezier,(ue-ie+he*.5)*te+Ce,me*ne+Ie,ue*te+Ce,(me-ie)*ne+Ie,(ue-ie+he*.5)*te+Ce,(me-he)*ne+Ie)),Re.add(new go.PathSegment(go.PathSegment.Bezier,ue*te+Ce,(me+ie)*ne+Ie,(ue-ie+he*.5)*te+Ce,(me+he)*ne+Ie,ue*te+Ce,(me+ie)*ne+Ie).close()),he=ve*.2,ie=.2,ue=.5,me=.5;var Ue=new go.PathFigure((ue-ie)*te+Ce,me*ne+Ie,!0);le.add(Ue),Ue.add(new go.PathSegment(go.PathSegment.Bezier,ue*te+Ce,(me-ie)*ne+Ie,(ue-ie)*te+Ce,(me-he)*ne+Ie,(ue-he)*te+Ce,(me-ie)*ne+Ie)),Ue.add(new go.PathSegment(go.PathSegment.Bezier,(ue+ie)*te+Ce,me*ne+Ie,(ue+he)*te+Ce,(me-ie)*ne+Ie,(ue+ie)*te+Ce,(me-he)*ne+Ie)),Ue.add(new go.PathSegment(go.PathSegment.Bezier,ue*te+Ce,(me+ie)*ne+Ie,(ue+ie)*te+Ce,(me+he)*ne+Ie,(ue+he)*te+Ce,(me+ie)*ne+Ie)),Ue.add(new go.PathSegment(go.PathSegment.Bezier,(ue-ie)*te+Ce,me*ne+Ie,(ue-he)*te+Ce,(me+ie)*ne+Ie,(ue-ie)*te+Ce,(me+he)*ne+Ie)),he=ve*.4,ie=.4,ue=.8,me=.5;var Ge=new go.PathFigure(ue*te+Ce,(me-ie)*ne+Ie,!0);le.add(Ge),Ge.add(new go.PathSegment(go.PathSegment.Bezier,(ue+ie)*te+Ce,me*ne+Ie,(ue+he)*te+Ce,(me-ie)*ne+Ie,(ue+ie)*te+Ce,(me-he)*ne+Ie)),Ge.add(new go.PathSegment(go.PathSegment.Bezier,ue*te+Ce,(me+ie)*ne+Ie,(ue+ie)*te+Ce,(me+he)*ne+Ie,(ue+he)*te+Ce,(me+ie)*ne+Ie)),Ge.add(new go.PathSegment(go.PathSegment.Bezier,(ue+ie-he*.5)*te+Ce,me*ne+Ie,ue*te+Ce,(me+ie)*ne+Ie,(ue+ie-he*.5)*te+Ce,(me+he)*ne+Ie)),Ge.add(new go.PathSegment(go.PathSegment.Bezier,ue*te+Ce,(me-ie)*ne+Ie,(ue+ie-he*.5)*te+Ce,(me-he)*ne+Ie,ue*te+Ce,(me-ie)*ne+Ie).close()),he=ve*.8,ie=.8,ue=1,me=.5;var Je=new go.PathFigure(ue*te+Ce,(me-ie)*ne+Ie,!0);return le.add(Je),Je.add(new go.PathSegment(go.PathSegment.Bezier,(ue+ie)*te+Ce,me*ne+Ie,(ue+he)*te+Ce,(me-ie)*ne+Ie,(ue+ie)*te+Ce,(me-he)*ne+Ie)),Je.add(new go.PathSegment(go.PathSegment.Bezier,ue*te+Ce,(me+ie)*ne+Ie,(ue+ie)*te+Ce,(me+he)*ne+Ie,(ue+he)*te+Ce,(me+ie)*ne+Ie)),Je.add(new go.PathSegment(go.PathSegment.Bezier,(ue+ie-he*.5)*te+Ce,me*ne+Ie,ue*te+Ce,(me+ie)*ne+Ie,(ue+ie-he*.5)*te+Ce,(me+he)*ne+Ie)),Je.add(new go.PathSegment(go.PathSegment.Bezier,ue*te+Ce,(me-ie)*ne+Ie,(ue+ie-he*.5)*te+Ce,(me-he)*ne+Ie,ue*te+Ce,(me-ie)*ne+Ie).close()),le}),go.Shape.defineFigureGenerator("Email",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,0,!0);le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,te,0)),se.add(new go.PathSegment(go.PathSegment.Line,te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,0).close());var fe=new go.PathFigure(0,0,!1);return le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,.5*te,.6*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,te,0)),fe.add(new go.PathSegment(go.PathSegment.Move,0,ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.45*te,.54*ne)),fe.add(new go.PathSegment(go.PathSegment.Move,te,ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.55*te,.54*ne)),le}),go.Shape.defineFigureGenerator("Ethernet",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(.35*te,0,!0);le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,.65*te,0)),se.add(new go.PathSegment(go.PathSegment.Line,.65*te,.4*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.35*te,.4*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.35*te,0).close());var fe=new go.PathFigure(.1*te,ne,!0,!0);le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,.4*te,ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.4*te,.6*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.1*te,.6*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.1*te,ne).close());var he=new go.PathFigure(.6*te,ne,!0,!0);le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,.9*te,ne)),he.add(new go.PathSegment(go.PathSegment.Line,.9*te,.6*ne)),he.add(new go.PathSegment(go.PathSegment.Line,.6*te,.6*ne)),he.add(new go.PathSegment(go.PathSegment.Line,.6*te,ne).close());var ie=new go.PathFigure(0,.5*ne,!1);return le.add(ie),ie.add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)),ie.add(new go.PathSegment(go.PathSegment.Move,.5*te,.5*ne)),ie.add(new go.PathSegment(go.PathSegment.Line,.5*te,.4*ne)),ie.add(new go.PathSegment(go.PathSegment.Move,.75*te,.5*ne)),ie.add(new go.PathSegment(go.PathSegment.Line,.75*te,.6*ne)),ie.add(new go.PathSegment(go.PathSegment.Move,.25*te,.5*ne)),ie.add(new go.PathSegment(go.PathSegment.Line,.25*te,.6*ne)),le}),go.Shape.defineFigureGenerator("Power",function(ce,te,ne){var le=new go.Geometry,se=ve*.4,fe=.4,he=.5,ie=.5,ue=Oe(),me=Oe(),Ce=Oe(),Ie=Oe();be(he,ie-fe,he+se,ie-fe,he+fe,ie-se,he+fe,ie,.5,ue,ue,me,Ce,Ie);var Fe=Te(me.x,me.y),Re=new go.PathFigure(me.x*te,me.y*ne,!0);le.add(Re),Re.add(new go.PathSegment(go.PathSegment.Bezier,(he+fe)*te,ie*ne,Ce.x*te,Ce.y*ne,Ie.x*te,Ie.y*ne)),Re.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie+fe)*ne,(he+fe)*te,(ie+se)*ne,(he+se)*te,(ie+fe)*ne)),Re.add(new go.PathSegment(go.PathSegment.Bezier,(he-fe)*te,ie*ne,(he-se)*te,(ie+fe)*ne,(he-fe)*te,(ie+se)*ne)),be(he-fe,ie,he-fe,ie-se,he-se,ie-fe,he,ie-fe,.5,Ce,Ie,me,ue,ue),Re.add(new go.PathSegment(go.PathSegment.Bezier,me.x*te,me.y*ne,Ce.x*te,Ce.y*ne,Ie.x*te,Ie.y*ne)),se=ve*.3,fe=.3,be(he-fe,ie,he-fe,ie-se,he-se,ie-fe,he,ie-fe,.5,Ce,Ie,me,ue,ue),Re.add(new go.PathSegment(go.PathSegment.Line,me.x*te,me.y*ne)),Re.add(new go.PathSegment(go.PathSegment.Bezier,(he-fe)*te,ie*ne,Ie.x*te,Ie.y*ne,Ce.x*te,Ce.y*ne)),Re.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie+fe)*ne,(he-fe)*te,(ie+se)*ne,(he-se)*te,(ie+fe)*ne)),Re.add(new go.PathSegment(go.PathSegment.Bezier,(he+fe)*te,ie*ne,(he+se)*te,(ie+fe)*ne,(he+fe)*te,(ie+se)*ne)),be(he,ie-fe,he+se,ie-fe,he+fe,ie-se,he+fe,ie,.5,ue,ue,me,Ce,Ie),Re.add(new go.PathSegment(go.PathSegment.Bezier,me.x*te,me.y*ne,Ie.x*te,Ie.y*ne,Ce.x*te,Ce.y*ne).close());var Re=new go.PathFigure(.45*te,0,!0);return le.add(Re),Re.add(new go.PathSegment(go.PathSegment.Line,.45*te,.5*ne)),Re.add(new go.PathSegment(go.PathSegment.Line,.55*te,.5*ne)),Re.add(new go.PathSegment(go.PathSegment.Line,.55*te,0).close()),He(ue),He(me),He(Ce),He(Ie),He(Fe),le.spot1=new go.Spot(.25,.45),le.spot2=new go.Spot(.75,.8),le}),go.Shape.defineFigureGenerator("Fallout",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,ne/2,!0);le.add(se),se.add(new go.PathSegment(go.PathSegment.Arc,180,360,te/2,ne/2,te/2,ne/2));function fe(he,ie,ue){he.add(new go.PathSegment(go.PathSegment.Move,(.3+ie)*te,(.8+ue)*ne)),he.add(new go.PathSegment(go.PathSegment.Line,(.5+ie)*te,(.5+ue)*ne)),he.add(new go.PathSegment(go.PathSegment.Line,(.1+ie)*te,(.5+ue)*ne)),he.add(new go.PathSegment(go.PathSegment.Line,(.3+ie)*te,(.8+ue)*ne).close())}return fe(se,0,0),fe(se,.4,0),fe(se,.2,-.3),le}),go.Shape.defineFigureGenerator("IrritationHazard",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(.2*te,0,!0);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,.5*te,.3*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.8*te,0)),se.add(new go.PathSegment(go.PathSegment.Line,te,.2*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.7*te,.5*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te,.8*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.8*te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,.5*te,.7*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.2*te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,.8*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.3*te,.5*ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,.2*ne).close()),le.spot1=new go.Spot(.3,.3),le.spot2=new go.Spot(.7,.7),le}),go.Shape.defineFigureGenerator("ElectricalHazard",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(.37*te,0,!0);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,.5*te,.11*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.77*te,.04*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.33*te,.49*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te,.37*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.63*te,.86*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.77*te,.91*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.34*te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,.34*te,.78*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.44*te,.8*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.65*te,.56*ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,.68*ne).close()),le}),go.Shape.defineFigureGenerator("FireHazard",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(.1*te,ne,!0);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Bezier,.29*te,0,-.25*te,.63*ne,.45*te,.44*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,.51*te,.42*ne,.48*te,.17*ne,.54*te,.35*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,.59*te,.18*ne,.59*te,.29*ne,.58*te,.28*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,.75*te,.6*ne,.8*te,.34*ne,.88*te,.43*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,.88*te,.31*ne,.87*te,.48*ne,.88*te,.43*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,.9*te,ne,1.17*te,.76*ne,.82*te,.8*ne).close()),le.spot1=new go.Spot(.07,.445),le.spot2=new go.Spot(.884,.958),le}),go.Shape.defineFigureGenerator("BpmnActivityLoop",function(ce,te,ne){var le=new go.Geometry,se=.5,fe=0,he=0,ie=se*ve,ue=.4*Math.SQRT2/2+.5,me=.5-.5*Math.SQRT2/2,Ce=1,Ie=.5,Fe=.5,Re=0,Ue=new go.PathFigure(ue*te,(1-me)*ne,!1);return le.add(Ue),Ue.add(new go.PathSegment(go.PathSegment.Bezier,Ce*te,Ie*ne,Ce*te,.7*ne,Ce*te,Ie*ne)),Ue.add(new go.PathSegment(go.PathSegment.Bezier,(Fe+fe)*te,(Re+fe)*ne,(.5+se+fe)*te,(.5-ie+fe)*ne,(.5+ie+fe)*te,(.5-se+fe)*ne)),Ue.add(new go.PathSegment(go.PathSegment.Bezier,(.5-se+fe)*te,(.5+he)*ne,(.5-ie+fe)*te,(.5-se+he)*ne,(.5-se+fe)*te,(.5-ie+he)*ne)),Ue.add(new go.PathSegment(go.PathSegment.Bezier,(.35+fe)*te,.9*ne,(.5-se+fe)*te,(.5+ie+he)*ne,(.5-ie+fe)*te,.9*ne)),Ue.add(new go.PathSegment(go.PathSegment.Move,(.25+fe)*te,.8*ne)),Ue.add(new go.PathSegment(go.PathSegment.Line,(.35+fe)*te,.9*ne)),Ue.add(new go.PathSegment(go.PathSegment.Line,(.2+fe)*te,.95*ne)),le}),go.Shape.defineFigureGenerator("BpmnActivityParallel",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,0,!1);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,0,ne)),se.add(new go.PathSegment(go.PathSegment.Move,.5*te,0)),se.add(new go.PathSegment(go.PathSegment.Line,.5*te,ne)),se.add(new go.PathSegment(go.PathSegment.Move,te,0)),se.add(new go.PathSegment(go.PathSegment.Line,te,ne)),le}),go.Shape.defineFigureGenerator("BpmnActivitySequential",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,0,!1);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,te,0)),se.add(new go.PathSegment(go.PathSegment.Move,0,.5*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)),se.add(new go.PathSegment(go.PathSegment.Move,0,ne)),se.add(new go.PathSegment(go.PathSegment.Line,te,ne)),le}),go.Shape.defineFigureGenerator("BpmnActivityAdHoc",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,0,!1);le.add(se);var fe=new go.PathFigure(te,ne,!1);le.add(fe);var he=new go.PathFigure(0,.5*ne,!1);return le.add(he),he.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,.5*ne,.2*te,.35*ne,.3*te,.35*ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,te,.5*ne,.7*te,.65*ne,.8*te,.65*ne)),le}),go.Shape.defineFigureGenerator("BpmnActivityCompensation",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,.5*ne,!0);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,.5*te,0)),se.add(new go.PathSegment(go.PathSegment.Line,.5*te,.5*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,te,0)),se.add(new go.PathSegment(go.PathSegment.Line,.5*te,.5*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.5*te,ne).close()),le}),go.Shape.defineFigureGenerator("BpmnTaskMessage",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,.2*ne,!0);le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,te,.2*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te,.8*ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,.8*ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,.8*ne).close());var se=new go.PathFigure(0,.2*ne,!1);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,.5*te,.5*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te,.2*ne)),le}),go.Shape.defineFigureGenerator("BpmnTaskScript",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(.7*te,ne,!0);le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,.3*te,ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,.3*te,0,.6*te,.5*ne,0,.5*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.7*te,0)),se.add(new go.PathSegment(go.PathSegment.Bezier,.7*te,ne,.4*te,.5*ne,te,.5*ne).close());var fe=new go.PathFigure(.45*te,.73*ne,!1);return le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,.7*te,.73*ne)),fe.add(new go.PathSegment(go.PathSegment.Move,.38*te,.5*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.63*te,.5*ne)),fe.add(new go.PathSegment(go.PathSegment.Move,.31*te,.27*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.56*te,.27*ne)),le}),go.Shape.defineFigureGenerator("BpmnTaskUser",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,0,!1);le.add(se);var fe=new go.PathFigure(.335*te,(1-.555)*ne,!0);le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,.335*te,(1-.405)*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,(1-.335)*te,(1-.405)*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,(1-.335)*te,(1-.555)*ne)),fe.add(new go.PathSegment(go.PathSegment.Bezier,te,.68*ne,(1-.12)*te,.46*ne,(1-.02)*te,.54*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,te,ne)),fe.add(new go.PathSegment(go.PathSegment.Line,0,ne)),fe.add(new go.PathSegment(go.PathSegment.Line,0,.68*ne)),fe.add(new go.PathSegment(go.PathSegment.Bezier,.335*te,(1-.555)*ne,.02*te,.54*ne,.12*te,.46*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.365*te,(1-.595)*ne));var he=.5-.285,ie=.5,ue=he,me=Math.PI/4,Ce=4*(1-Math.cos(me))/(3*Math.sin(me)),Ie=Ce*.5,Fe=he,Re=he,Ue=Ce*Fe,Ge=Ce*Re;fe.add(new go.PathSegment(go.PathSegment.Bezier,(ie-Fe)*te,ue*ne,(ie-(Ue+Fe)/2)*te,(ue+(Re+Ge)/2)*ne,(ie-Fe)*te,(ue+Ge)*ne)),fe.add(new go.PathSegment(go.PathSegment.Bezier,ie*te,(ue-Re)*ne,(ie-Fe)*te,(ue-Ge)*ne,(ie-Ue)*te,(ue-Re)*ne)),fe.add(new go.PathSegment(go.PathSegment.Bezier,(ie+Fe)*te,ue*ne,(ie+Ue)*te,(ue-Re)*ne,(ie+Fe)*te,(ue-Ge)*ne)),fe.add(new go.PathSegment(go.PathSegment.Bezier,(1-.365)*te,(1-.595)*ne,(ie+Fe)*te,(ue+Ge)*ne,(ie+(Ue+Fe)/2)*te,(ue+(Re+Ge)/2)*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,(1-.365)*te,(1-.595)*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,(1-.335)*te,(1-.555)*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,(1-.335)*te,(1-.405)*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.335*te,(1-.405)*ne));var Je=new go.PathFigure(.2*te,ne,!1);le.add(Je),Je.add(new go.PathSegment(go.PathSegment.Line,.2*te,.8*ne));var Qe=new go.PathFigure(.8*te,ne,!1);return le.add(Qe),Qe.add(new go.PathSegment(go.PathSegment.Line,.8*te,.8*ne)),le}),go.Shape.defineFigureGenerator("BpmnEventConditional",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(.1*te,0,!0);le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,.9*te,0)),se.add(new go.PathSegment(go.PathSegment.Line,.9*te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,.1*te,ne).close());var fe=new go.PathFigure(.2*te,.2*ne,!1);return le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,.8*te,.2*ne)),fe.add(new go.PathSegment(go.PathSegment.Move,.2*te,.4*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.8*te,.4*ne)),fe.add(new go.PathSegment(go.PathSegment.Move,.2*te,.6*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.8*te,.6*ne)),fe.add(new go.PathSegment(go.PathSegment.Move,.2*te,.8*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.8*te,.8*ne)),le}),go.Shape.defineFigureGenerator("BpmnEventError",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,ne,!0);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,.33*te,0)),se.add(new go.PathSegment(go.PathSegment.Line,.66*te,.5*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te,0)),se.add(new go.PathSegment(go.PathSegment.Line,.66*te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,.33*te,.5*ne).close()),le}),go.Shape.defineFigureGenerator("BpmnEventEscalation",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,0,!1);le.add(se);var fe=new go.PathFigure(te,ne,!1);le.add(fe);var he=new go.PathFigure(.1*te,ne,!0);return le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,.5*te,0)),he.add(new go.PathSegment(go.PathSegment.Line,.9*te,ne)),he.add(new go.PathSegment(go.PathSegment.Line,.5*te,.5*ne).close()),le}),go.Shape.defineFigureGenerator("Caution",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(.05*te,ne,!0);le.add(se),se.add(new go.PathSegment(go.PathSegment.Bezier,.1*te,.8*ne,0,ne,0,ne)),se.add(new go.PathSegment(go.PathSegment.Line,.45*te,.1*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,.55*te,.1*ne,.5*te,0,.5*te,0)),se.add(new go.PathSegment(go.PathSegment.Line,.95*te,.9*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,.9*te,ne,te,ne,te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,.05*te,ne));var fe=.05;return se.add(new go.PathSegment(go.PathSegment.Move,(.5-fe)*te,.875*ne)),se.add(new go.PathSegment(go.PathSegment.Arc,180,-360,.5*te,.875*ne,fe*te,fe*ne)),se.add(new go.PathSegment(go.PathSegment.Move,.5*te,.75*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,.325*ne,.575*te,.725*ne,.625*te,.375*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,.75*ne,.375*te,.375*ne,.425*te,.725*ne)),le}),go.Shape.defineFigureGenerator("Recycle",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(.45*te,.95*ne,!1);le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,.2*te,.95*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,.185*te,.85*ne,.17*te,.95*ne,.15*te,.9*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.235*te,.75*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.3*te,.625*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.35*te,.65*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.275*te,.45*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.05*te,.45*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.1*te,.5*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.05*te,.575*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,.1875*te,.95*ne,0,.675*ne,0,.7*ne)),se.add(new go.PathSegment(go.PathSegment.Move,.45*te,.95*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.45*te,.775*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.22*te,.775*ne));var fe=new go.PathFigure(.475*te,.2*ne,!1);le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,.4*te,.4*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.225*te,.3*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.275*te,.175*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.325*te,.05*ne)),fe.add(new go.PathSegment(go.PathSegment.Bezier,.4*te,.05*ne,.35*te,0,.375*te,0)),fe.add(new go.PathSegment(go.PathSegment.Line,.575*te,.375*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.525*te,.4*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.75*te,.475*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.85*te,.315*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.8*te,.32*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.65*te,.05*ne)),fe.add(new go.PathSegment(go.PathSegment.Bezier,.575*te,0,.65*te,.05*ne,.625*te,0)),fe.add(new go.PathSegment(go.PathSegment.Line,.38*te,.0105*ne));var he=new go.PathFigure(.675*te,.575*ne,!1);return le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,.875*te,.525*ne)),he.add(new go.PathSegment(go.PathSegment.Line,te,.775*ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,.85*te,.95*ne,te,.8*ne,te,.85*ne)),he.add(new go.PathSegment(go.PathSegment.Line,.65*te,.95*ne)),he.add(new go.PathSegment(go.PathSegment.Line,.65*te,ne)),he.add(new go.PathSegment(go.PathSegment.Line,.55*te,.85*ne)),he.add(new go.PathSegment(go.PathSegment.Line,.65*te,.725*ne)),he.add(new go.PathSegment(go.PathSegment.Line,.65*te,.775*ne)),he.add(new go.PathSegment(go.PathSegment.Line,.7*te,.775*ne)),he.add(new go.PathSegment(go.PathSegment.Line,te,.775*ne)),he.add(new go.PathSegment(go.PathSegment.Move,.675*te,.575*ne)),he.add(new go.PathSegment(go.PathSegment.Line,.775*te,.775*ne)),le}),go.Shape.defineFigureGenerator("BpmnEventTimer",function(ce,te,ne){var le=new go.Geometry,se=.5,fe=ve*.5,he=new go.PathFigure(te,se*ne,!0);le.add(he),he.add(new go.PathSegment(go.PathSegment.Bezier,se*te,ne,te,(se+fe)*ne,(se+fe)*te,ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,0,se*ne,(se-fe)*te,ne,0,(se+fe)*ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,se*te,0,0,(se-fe)*ne,(se-fe)*te,0)),he.add(new go.PathSegment(go.PathSegment.Bezier,te,se*ne,(se+fe)*te,0,te,(se-fe)*ne));var ie=new go.PathFigure(se*te,0,!1);return le.add(ie),ie.add(new go.PathSegment(go.PathSegment.Line,se*te,.15*ne)),ie.add(new go.PathSegment(go.PathSegment.Move,se*te,ne)),ie.add(new go.PathSegment(go.PathSegment.Line,se*te,.85*ne)),ie.add(new go.PathSegment(go.PathSegment.Move,0,se*ne)),ie.add(new go.PathSegment(go.PathSegment.Line,.15*te,se*ne)),ie.add(new go.PathSegment(go.PathSegment.Move,te,se*ne)),ie.add(new go.PathSegment(go.PathSegment.Line,.85*te,se*ne)),ie.add(new go.PathSegment(go.PathSegment.Move,se*te,se*ne)),ie.add(new go.PathSegment(go.PathSegment.Line,.58*te,.1*ne)),ie.add(new go.PathSegment(go.PathSegment.Move,se*te,se*ne)),ie.add(new go.PathSegment(go.PathSegment.Line,.78*te,.54*ne)),le}),go.Shape.defineFigureGenerator("Package",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,.15*ne,!0);le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,te,.15*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,ne).close());var fe=new go.PathFigure(0,.15*ne,!0);return le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,0,0)),fe.add(new go.PathSegment(go.PathSegment.Line,.6*te,0)),fe.add(new go.PathSegment(go.PathSegment.Line,.65*te,.15*ne).close()),le.spot1=new go.Spot(0,.1),le.spot2=new go.Spot(1,1),le}),go.Shape.defineFigureGenerator("Class",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,0,!0);le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,te,0)),se.add(new go.PathSegment(go.PathSegment.Line,te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,0).close());var fe=new go.PathFigure(0,.2*ne,!1);le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,te,.2*ne).close());var he=new go.PathFigure(0,.5*ne,!1);return le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,te,.5*ne).close()),le}),go.Shape.defineFigureGenerator("Component",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(te,ne,!0);le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,te,0)),se.add(new go.PathSegment(go.PathSegment.Line,.15*te,0)),se.add(new go.PathSegment(go.PathSegment.Line,.15*te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,te,ne).close());var fe=new go.PathFigure(0,.2*ne,!0);le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,.45*te,.2*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.45*te,.4*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,0,.4*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,0,.2*ne).close());var he=new go.PathFigure(0,.6*ne,!0);return le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,.45*te,.6*ne)),he.add(new go.PathSegment(go.PathSegment.Line,.45*te,.8*ne)),he.add(new go.PathSegment(go.PathSegment.Line,0,.8*ne)),he.add(new go.PathSegment(go.PathSegment.Line,0,.6*ne).close()),le}),go.Shape.defineFigureGenerator("Boat Shipment",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(.15*te,.6*ne,!0);le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,.15*te,.6*ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,.6*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.15*te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,.85*te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,te,.6*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.85*te,.6*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.5*te,0)),se.add(new go.PathSegment(go.PathSegment.Line,.15*te,.6*ne));var fe=new go.PathFigure(.15*te,.6*ne,!1);return le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,.85*te,.6*ne)),le}),go.Shape.defineFigureGenerator("Customer/Supplier",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(te,ne,!0);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,te,0)),se.add(new go.PathSegment(go.PathSegment.Line,.66*te,.33*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.66*te,0)),se.add(new go.PathSegment(go.PathSegment.Line,.33*te,.33*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.33*te,0)),se.add(new go.PathSegment(go.PathSegment.Line,0,.33*ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,ne)),se.add(new go.PathSegment(go.PathSegment.Line,te,ne).close()),le}),go.Shape.defineFigureGenerator("Workcell",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,ne,!0);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,0,0)),se.add(new go.PathSegment(go.PathSegment.Line,te,0)),se.add(new go.PathSegment(go.PathSegment.Line,te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,.65*te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,.65*te,.4*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.35*te,.4*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.35*te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,ne).close()),le}),go.Shape.defineFigureGenerator("Supermarket",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,0,!1);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,te,0)),se.add(new go.PathSegment(go.PathSegment.Line,te,.33*ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,.33*ne)),se.add(new go.PathSegment(go.PathSegment.Move,te,.33*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te,.66*ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,.66*ne)),se.add(new go.PathSegment(go.PathSegment.Move,te,.66*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,ne)),le}),go.Shape.defineFigureGenerator("TruckShipment",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,0,!0);le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,.6*te,0)),se.add(new go.PathSegment(go.PathSegment.Line,.6*te,.8*ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,.8*ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,0).close());var fe=new go.PathFigure(te,.8*ne,!0);le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,te,.4*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.6*te,.4*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.6*te,.8*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,te,.8*ne).close());var he=.1,ie=ve*.1,ue=.2,me=.9,Ce=new go.PathFigure((ue-he)*te,me*ne,!0);le.add(Ce),Ce.add(new go.PathSegment(go.PathSegment.Bezier,ue*te,(me-he)*ne,(ue-he)*te,(me-ie)*ne,(ue-ie)*te,(me-he)*ne)),Ce.add(new go.PathSegment(go.PathSegment.Bezier,(ue+he)*te,me*ne,(ue+ie)*te,(me-he)*ne,(ue+he)*te,(me-ie)*ne)),Ce.add(new go.PathSegment(go.PathSegment.Bezier,ue*te,(me+he)*ne,(ue+he)*te,(me+ie)*ne,(ue+ie)*te,(me+he)*ne)),Ce.add(new go.PathSegment(go.PathSegment.Bezier,(ue-he)*te,me*ne,(ue-ie)*te,(me+he)*ne,(ue-he)*te,(me+ie)*ne).close()),he=.1,ie=ve*.1,ue=.8,me=.9;var Ie=new go.PathFigure((ue-he)*te,me*ne,!0);return le.add(Ie),Ie.add(new go.PathSegment(go.PathSegment.Bezier,ue*te,(me-he)*ne,(ue-he)*te,(me-ie)*ne,(ue-ie)*te,(me-he)*ne)),Ie.add(new go.PathSegment(go.PathSegment.Bezier,(ue+he)*te,me*ne,(ue+ie)*te,(me-he)*ne,(ue+he)*te,(me-ie)*ne)),Ie.add(new go.PathSegment(go.PathSegment.Bezier,ue*te,(me+he)*ne,(ue+he)*te,(me+ie)*ne,(ue+ie)*te,(me+he)*ne)),Ie.add(new go.PathSegment(go.PathSegment.Bezier,(ue-he)*te,me*ne,(ue-ie)*te,(me+he)*ne,(ue-he)*te,(me+ie)*ne).close()),le}),go.Shape.defineFigureGenerator("KanbanPost",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(.2*te,0,!1);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,.2*te,.5*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.8*te,.5*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.8*te,0)),se.add(new go.PathSegment(go.PathSegment.Move,.5*te,.5*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.5*te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,.2*te,ne)),se.add(new go.PathSegment(go.PathSegment.Move,.5*te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,.8*te,ne)),le}),go.Shape.defineFigureGenerator("Forklift",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,0,!0);le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,0,.5*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.5*te,.5*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.4*te,0)),se.add(new go.PathSegment(go.PathSegment.Line,0,0));var fe=new go.PathFigure(0,.5*ne,!0);le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,0,.8*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.5*te,.8*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.5*te,.5*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,0,.5*ne));var he=new go.PathFigure(.5*te,.8*ne,!0);le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,.5*te,.1*ne)),he.add(new go.PathSegment(go.PathSegment.Line,.55*te,.1*ne)),he.add(new go.PathSegment(go.PathSegment.Line,.55*te,.8*ne)),he.add(new go.PathSegment(go.PathSegment.Line,.5*te,.8*ne));var ie=new go.PathFigure(.5*te,.7*ne,!1);le.add(ie),ie.add(new go.PathSegment(go.PathSegment.Line,te,.7*ne));var ue=.1,me=ve*.1,Ce=.1,Ie=.9,Fe=new go.PathFigure((Ce-ue)*te,Ie*ne,!0);le.add(Fe),Fe.add(new go.PathSegment(go.PathSegment.Bezier,Ce*te,(Ie-ue)*ne,(Ce-ue)*te,(Ie-me)*ne,(Ce-me)*te,(Ie-ue)*ne)),Fe.add(new go.PathSegment(go.PathSegment.Bezier,(Ce+ue)*te,Ie*ne,(Ce+me)*te,(Ie-ue)*ne,(Ce+ue)*te,(Ie-me)*ne)),Fe.add(new go.PathSegment(go.PathSegment.Bezier,Ce*te,(Ie+ue)*ne,(Ce+ue)*te,(Ie+me)*ne,(Ce+me)*te,(Ie+ue)*ne)),Fe.add(new go.PathSegment(go.PathSegment.Bezier,(Ce-ue)*te,Ie*ne,(Ce-me)*te,(Ie+ue)*ne,(Ce-ue)*te,(Ie+me)*ne)),ue=.1,me=ve*.1,Ce=.4,Ie=.9;var Re=new go.PathFigure((Ce-ue)*te,Ie*ne,!0);return le.add(Re),Re.add(new go.PathSegment(go.PathSegment.Bezier,Ce*te,(Ie-ue)*ne,(Ce-ue)*te,(Ie-me)*ne,(Ce-me)*te,(Ie-ue)*ne)),Re.add(new go.PathSegment(go.PathSegment.Bezier,(Ce+ue)*te,Ie*ne,(Ce+me)*te,(Ie-ue)*ne,(Ce+ue)*te,(Ie-me)*ne)),Re.add(new go.PathSegment(go.PathSegment.Bezier,Ce*te,(Ie+ue)*ne,(Ce+ue)*te,(Ie+me)*ne,(Ce+me)*te,(Ie+ue)*ne)),Re.add(new go.PathSegment(go.PathSegment.Bezier,(Ce-ue)*te,Ie*ne,(Ce-me)*te,(Ie+ue)*ne,(Ce-ue)*te,(Ie+me)*ne)),le}),go.Shape.defineFigureGenerator("RailShipment",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(.1*te,.4*ne,!0);le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,.45*te,.4*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.45*te,.9*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.1*te,.9*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.1*te,.4*ne).close());var fe=new go.PathFigure(.45*te,.7*ne,!1);le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,.55*te,.7*ne));var he=new go.PathFigure(.55*te,.4*ne,!0);le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,.9*te,.4*ne)),he.add(new go.PathSegment(go.PathSegment.Line,.9*te,.9*ne)),he.add(new go.PathSegment(go.PathSegment.Line,.55*te,.9*ne)),he.add(new go.PathSegment(go.PathSegment.Line,.55*te,.4*ne).close());var Ce=.05,Ie=ve*.05,Fe=.175,Re=.95,ie=new go.PathFigure((Fe-Ce)*te,Re*ne,!0);le.add(ie),ie.add(new go.PathSegment(go.PathSegment.Bezier,Fe*te,(Re-Ce)*ne,(Fe-Ce)*te,(Re-Ie)*ne,(Fe-Ie)*te,(Re-Ce)*ne)),ie.add(new go.PathSegment(go.PathSegment.Bezier,(Fe+Ce)*te,Re*ne,(Fe+Ie)*te,(Re-Ce)*ne,(Fe+Ce)*te,(Re-Ie)*ne)),ie.add(new go.PathSegment(go.PathSegment.Bezier,Fe*te,(Re+Ce)*ne,(Fe+Ce)*te,(Re+Ie)*ne,(Fe+Ie)*te,(Re+Ce)*ne)),ie.add(new go.PathSegment(go.PathSegment.Bezier,(Fe-Ce)*te,Re*ne,(Fe-Ie)*te,(Re+Ce)*ne,(Fe-Ce)*te,(Re+Ie)*ne));var Ce=.05,Ie=ve*.05,Fe=.375,Re=.95,ue=new go.PathFigure((Fe-Ce)*te,Re*ne,!0);le.add(ue),ue.add(new go.PathSegment(go.PathSegment.Bezier,Fe*te,(Re-Ce)*ne,(Fe-Ce)*te,(Re-Ie)*ne,(Fe-Ie)*te,(Re-Ce)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(Fe+Ce)*te,Re*ne,(Fe+Ie)*te,(Re-Ce)*ne,(Fe+Ce)*te,(Re-Ie)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,Fe*te,(Re+Ce)*ne,(Fe+Ce)*te,(Re+Ie)*ne,(Fe+Ie)*te,(Re+Ce)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(Fe-Ce)*te,Re*ne,(Fe-Ie)*te,(Re+Ce)*ne,(Fe-Ce)*te,(Re+Ie)*ne));var Ce=.05,Ie=ve*.05,Fe=.625,Re=.95,me=new go.PathFigure((Fe-Ce)*te,Re*ne,!0);le.add(me),me.add(new go.PathSegment(go.PathSegment.Bezier,Fe*te,(Re-Ce)*ne,(Fe-Ce)*te,(Re-Ie)*ne,(Fe-Ie)*te,(Re-Ce)*ne)),me.add(new go.PathSegment(go.PathSegment.Bezier,(Fe+Ce)*te,Re*ne,(Fe+Ie)*te,(Re-Ce)*ne,(Fe+Ce)*te,(Re-Ie)*ne)),me.add(new go.PathSegment(go.PathSegment.Bezier,Fe*te,(Re+Ce)*ne,(Fe+Ce)*te,(Re+Ie)*ne,(Fe+Ie)*te,(Re+Ce)*ne)),me.add(new go.PathSegment(go.PathSegment.Bezier,(Fe-Ce)*te,Re*ne,(Fe-Ie)*te,(Re+Ce)*ne,(Fe-Ce)*te,(Re+Ie)*ne));var Ce=.05,Ie=ve*.05,Fe=.825,Re=.95,Ue=new go.PathFigure((Fe-Ce)*te,Re*ne,!0);le.add(Ue),Ue.add(new go.PathSegment(go.PathSegment.Bezier,Fe*te,(Re-Ce)*ne,(Fe-Ce)*te,(Re-Ie)*ne,(Fe-Ie)*te,(Re-Ce)*ne)),Ue.add(new go.PathSegment(go.PathSegment.Bezier,(Fe+Ce)*te,Re*ne,(Fe+Ie)*te,(Re-Ce)*ne,(Fe+Ce)*te,(Re-Ie)*ne)),Ue.add(new go.PathSegment(go.PathSegment.Bezier,Fe*te,(Re+Ce)*ne,(Fe+Ce)*te,(Re+Ie)*ne,(Fe+Ie)*te,(Re+Ce)*ne)),Ue.add(new go.PathSegment(go.PathSegment.Bezier,(Fe-Ce)*te,Re*ne,(Fe-Ie)*te,(Re+Ce)*ne,(Fe-Ce)*te,(Re+Ie)*ne).close());var Ge=new go.PathFigure(0,ne,!1);return le.add(Ge),Ge.add(new go.PathSegment(go.PathSegment.Line,te,ne).close()),le}),go.Shape.defineFigureGenerator("Warehouse",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,0,!0);le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,te,0)),se.add(new go.PathSegment(go.PathSegment.Line,te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,0).close());var fe=new go.PathFigure(0,.2*ne,!1);le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,te,.2*ne).close());var he=new go.PathFigure(.15*te,ne,!0);le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,.15*te,.5*ne)),he.add(new go.PathSegment(go.PathSegment.Line,.4*te,.5*ne)),he.add(new go.PathSegment(go.PathSegment.Line,.4*te,ne)),he.add(new go.PathSegment(go.PathSegment.Line,.15*te,ne).close());var ie=.05,ue=ve*.05,me=.35,Ce=.775,Ie=new go.PathFigure((me-ie)*te,Ce*ne,!0);return le.add(Ie),Ie.add(new go.PathSegment(go.PathSegment.Bezier,me*te,(Ce-ie)*ne,(me-ie)*te,(Ce-ue)*ne,(me-ue)*te,(Ce-ie)*ne)),Ie.add(new go.PathSegment(go.PathSegment.Bezier,(me+ie)*te,Ce*ne,(me+ue)*te,(Ce-ie)*ne,(me+ie)*te,(Ce-ue)*ne)),Ie.add(new go.PathSegment(go.PathSegment.Bezier,me*te,(Ce+ie)*ne,(me+ie)*te,(Ce+ue)*ne,(me+ue)*te,(Ce+ie)*ne)),Ie.add(new go.PathSegment(go.PathSegment.Bezier,(me-ie)*te,Ce*ne,(me-ue)*te,(Ce+ie)*ne,(me-ie)*te,(Ce+ue)*ne).close()),le}),go.Shape.defineFigureGenerator("ControlCenter",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,ne,!0);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,0,.8*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.1*te,.8*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.1*te,0)),se.add(new go.PathSegment(go.PathSegment.Line,.9*te,0)),se.add(new go.PathSegment(go.PathSegment.Line,.9*te,.8*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te,.8*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,ne)),se.add(new go.PathSegment(go.PathSegment.Move,.1*te,.8*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.9*te,.8*ne).close()),le}),go.Shape.defineFigureGenerator("Bluetooth",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,.75*ne,!1);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,0,.75*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te,.25*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.5*te,0)),se.add(new go.PathSegment(go.PathSegment.Line,.5*te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,te,.75*ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,.25*ne)),le}),go.Shape.defineFigureGenerator("Bookmark",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,0,!0);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,0,ne)),se.add(new go.PathSegment(go.PathSegment.Line,.5*te,.6*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,te,0)),se.add(new go.PathSegment(go.PathSegment.Line,0,0)),se.add(new go.PathSegment(go.PathSegment.Move,.2*te,.2*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.8*te,.2*ne)),se.add(new go.PathSegment(go.PathSegment.Move,.2*te,.4*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.8*te,.4*ne)),le}),go.Shape.defineFigureGenerator("Bookmark",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,0,!0);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,0,ne)),se.add(new go.PathSegment(go.PathSegment.Line,.5*te,.6*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,te,0)),se.add(new go.PathSegment(go.PathSegment.Line,0,0)),se.add(new go.PathSegment(go.PathSegment.Move,.2*te,.2*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.8*te,.2*ne)),se.add(new go.PathSegment(go.PathSegment.Move,.2*te,.4*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.8*te,.4*ne)),le}),go.Shape.defineFigureGenerator("Globe",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(.5*te,0,!1);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,.5*te,ne)),se.add(new go.PathSegment(go.PathSegment.Move,0,.5*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)),se.add(new go.PathSegment(go.PathSegment.Move,.5*te,0)),se.add(new go.PathSegment(go.PathSegment.Bezier,te,.5*ne,.75*te,0,te,.25*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,ne,te,.75*ne,.75*te,ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,0,.5*ne,.25*te,ne,0,.75*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,0,0,.25*ne,.25*te,0)),se.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,ne,.15*te,.25*ne,.15*te,.75*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,0,.85*te,.75*ne,.85*te,.25*ne)),se.add(new go.PathSegment(go.PathSegment.Move,.1675*te,.15*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,.8325*te,.15*ne,.35*te,.3*ne,.65*te,.3*ne)),se.add(new go.PathSegment(go.PathSegment.Move,.1675*te,.85*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,.8325*te,.85*ne,.35*te,.7*ne,.65*te,.7*ne)),le}),go.Shape.defineFigureGenerator("Wave",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,.25*ne,!1);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Bezier,.3*te,.25*ne,.1*te,0,.2*te,0)),se.add(new go.PathSegment(go.PathSegment.Bezier,.7*te,.25*ne,.425*te,.5*ne,.575*te,.5*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,te,.25*ne,.8*te,0,.9*te,0)),se.add(new go.PathSegment(go.PathSegment.Line,te,.75*ne)),se.add(new go.PathSegment(go.PathSegment.Move,0,.25*ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,.75*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,.3*te,.75*ne,.1*te,.5*ne,.2*te,.5*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,.7*te,.75*ne,.425*te,ne,.575*te,ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,te,.75*ne,.8*te,.5*ne,.9*te,.5*ne)),le}),go.Shape.defineFigureGenerator("Operator",function(ce,te,ne){var le=new go.Geometry,se=.3,fe=ve*.3,he=.5,ie=.7,ue=new go.PathFigure((he-se)*te,ie*ne,!0);le.add(ue),ue.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie-se)*ne,(he-se)*te,(ie-fe)*ne,(he-fe)*te,(ie-se)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(he+se)*te,ie*ne,(he+fe)*te,(ie-se)*ne,(he+se)*te,(ie-fe)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie+se)*ne,(he+se)*te,(ie+fe)*ne,(he+fe)*te,(ie+se)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(he-se)*te,ie*ne,(he-fe)*te,(ie+se)*ne,(he-se)*te,(ie+fe)*ne));var me=new go.PathFigure(0,.7*ne,!1);return le.add(me),me.add(new go.PathSegment(go.PathSegment.Bezier,te,.7*ne,0,0,te,0)),le}),go.Shape.defineFigureGenerator("TripleFanBlades",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(.5*te,0,!0);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,.65*ne,.65*te,.3*ne,.65*te,.5*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,0,.35*te,.5*ne,.35*te,.3*ne)),se.add(new go.PathSegment(go.PathSegment.Move,.5*te,.65*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,0,ne,.3*te,.6*ne,.1*te,.8*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,.65*ne,.2*te,ne,.35*te,.95*ne)),se.add(new go.PathSegment(go.PathSegment.Move,.5*te,.65*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,te,ne,.7*te,.6*ne,.9*te,.8*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,.65*ne,.8*te,ne,.65*te,.95*ne)),le}),go.Shape.defineFigureGenerator("CentrifugalPump",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(te,0,!0);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,.4*te,0)),se.add(new go.PathSegment(go.PathSegment.Bezier,0,.5*ne,0,.075*ne,0,.5*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,.4*te,ne,0,ne,.4*te,ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,.8*te,.4*ne,.8*te,ne,.85*te,.6*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te,.4*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te,0)),le}),go.Shape.defineFigureGenerator("Battery",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,ne,!0);le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,0,.1*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te,.1*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,ne)),se.add(new go.PathSegment(go.PathSegment.Move,.4*te,.1*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.4*te,0)),se.add(new go.PathSegment(go.PathSegment.Line,.6*te,0)),se.add(new go.PathSegment(go.PathSegment.Line,.6*te,.1*ne));var fe=new go.PathFigure(0,.6*ne,!1);return le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Move,0,.4*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,te,.4*ne)),le}),go.Shape.defineFigureGenerator("Delete",function(ce,te,ne){var le=new go.Geometry,se=.5,fe=ve*.5,he=.5,ie=.5,ue=new go.PathFigure((he-se)*te,ie*ne,!0);le.add(ue),ue.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie-se)*ne,(he-se)*te,(ie-fe)*ne,(he-fe)*te,(ie-se)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(he+se)*te,ie*ne,(he+fe)*te,(ie-se)*ne,(he+se)*te,(ie-fe)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie+se)*ne,(he+se)*te,(ie+fe)*ne,(he+fe)*te,(ie+se)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(he-se)*te,ie*ne,(he-fe)*te,(ie+se)*ne,(he-se)*te,(ie+fe)*ne));var me=new go.PathFigure(.15*te,.5*ne,!1);return le.add(me),me.add(new go.PathSegment(go.PathSegment.Line,.85*te,.5*ne)),le}),go.Shape.defineFigureGenerator("Flag",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,.1*ne,!0);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,0,ne)),se.add(new go.PathSegment(go.PathSegment.Move,0,.1*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,.1*ne,.15*te,0,.35*te,0)),se.add(new go.PathSegment(go.PathSegment.Bezier,te,.1*ne,.65*te,.2*ne,.85*te,.2*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,.5*ne,.85*te,.6*ne,.65*te,.6*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,0,.5*ne,.35*te,.4*ne,.15*te,.4*ne).close()),le}),go.Shape.defineFigureGenerator("Help",function(ce,te,ne){var le=new go.Geometry,se=.5,fe=ve*.5,he=.5,ie=.5,ue=new go.PathFigure((he-se)*te,ie*ne,!1);le.add(ue),ue.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie-se)*ne,(he-se)*te,(ie-fe)*ne,(he-fe)*te,(ie-se)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(he+se)*te,ie*ne,(he+fe)*te,(ie-se)*ne,(he+se)*te,(ie-fe)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie+se)*ne,(he+se)*te,(ie+fe)*ne,(he+fe)*te,(ie+se)*ne)),ue.add(new go.PathSegment(go.PathSegment.Bezier,(he-se)*te,ie*ne,(he-fe)*te,(ie+se)*ne,(he-se)*te,(ie+fe)*ne).close()),se=.05,fe=ve*.05,he=.5,ie=.8;var me=new go.PathFigure((he-se)*te,ie*ne,!1);return le.add(me),me.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie-se)*ne,(he-se)*te,(ie-fe)*ne,(he-fe)*te,(ie-se)*ne)),me.add(new go.PathSegment(go.PathSegment.Bezier,(he+se)*te,ie*ne,(he+fe)*te,(ie-se)*ne,(he+se)*te,(ie-fe)*ne)),me.add(new go.PathSegment(go.PathSegment.Bezier,he*te,(ie+se)*ne,(he+se)*te,(ie+fe)*ne,(he+fe)*te,(ie+se)*ne)),me.add(new go.PathSegment(go.PathSegment.Bezier,(he-se)*te,ie*ne,(he-fe)*te,(ie+se)*ne,(he-se)*te,(ie+fe)*ne).close()),me.add(new go.PathSegment(go.PathSegment.Move,.5*te,.7*ne)),me.add(new go.PathSegment(go.PathSegment.Line,.5*te,.5*ne)),me.add(new go.PathSegment(go.PathSegment.Bezier,.5*te,.2*ne,.75*te,.475*ne,.75*te,.225*ne)),me.add(new go.PathSegment(go.PathSegment.Bezier,.3*te,.35*ne,.4*te,.2*ne,.3*te,.25*ne)),le}),go.Shape.defineFigureGenerator("Location",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(.5*te,ne,!0).add(new go.PathSegment(go.PathSegment.Line,.75*te,.5*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.5*te,0,.975*te,.025*ne,.5*te,0)).add(new go.PathSegment(go.PathSegment.Bezier,.25*te,.5*ne,.5*te,0,.025*te,.025*ne).close()).add(new go.PathSegment(go.PathSegment.Move,.5*te,.2*ne)).add(new go.PathSegment(go.PathSegment.Arc,270,360,.5*te,.3*ne,.1*te,.1*ne).close()))}),go.Shape.defineFigureGenerator("Lock",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,.5*ne,!0);le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,0,ne)),se.add(new go.PathSegment(go.PathSegment.Line,te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,.5*ne));var fe=new go.PathFigure(.2*te,.5*ne,!1);return le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Move,.2*te,.5*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.2*te,.3*ne)),fe.add(new go.PathSegment(go.PathSegment.Bezier,.8*te,.3*ne,.25*te,0,.75*te,0)),fe.add(new go.PathSegment(go.PathSegment.Line,.8*te,.5*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.8*te,.3*ne)),le}),go.Shape.defineFigureGenerator("Unlocked",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,.5*ne,!0);le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,0,ne)),se.add(new go.PathSegment(go.PathSegment.Line,te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,te,.5*ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,.5*ne));var fe=new go.PathFigure(.2*te,.5*ne,!1);return le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Move,.2*te,.5*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.2*te,.3*ne)),fe.add(new go.PathSegment(go.PathSegment.Bezier,.8*te,.3*ne,.25*te,0,.75*te,0)),fe.add(new go.PathSegment(go.PathSegment.Line,.8*te,.35*ne)),le}),go.Shape.defineFigureGenerator("Gear",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(.9375*te,.56246875*ne,!0).add(new go.PathSegment(go.PathSegment.Line,.9375*te,.4375*ne)).add(new go.PathSegment(go.PathSegment.Line,.80621875*te,.4375*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.763*te,.3316875*ne,.79840625*te,.39915625*ne,.7834375*te,.3635*ne)).add(new go.PathSegment(go.PathSegment.Line,.8566875*te,.23796875*ne)).add(new go.PathSegment(go.PathSegment.Line,.76825*te,.14959375*ne)).add(new go.PathSegment(go.PathSegment.Line,.67596875*te,.24184375*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.5625*te,.19378125*ne,.64228125*te,.2188125*ne,.603875*te,.2021875*ne)).add(new go.PathSegment(go.PathSegment.Line,.5625*te,.0625*ne)).add(new go.PathSegment(go.PathSegment.Line,.4375*te,.0625*ne)).add(new go.PathSegment(go.PathSegment.Line,.4375*te,.19378125*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.32775*te,.239375*ne,.39759375*te,.20190625*ne,.36053125*te,.2176875*ne)).add(new go.PathSegment(go.PathSegment.Line,.2379375*te,.14959375*ne)).add(new go.PathSegment(go.PathSegment.Line,.14953125*te,.2379375*ne)).add(new go.PathSegment(go.PathSegment.Line,.23934375*te,.3278125*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.19378125*te,.4375*ne,.21765625*te,.36059375*ne,.201875*te,.397625*ne)).add(new go.PathSegment(go.PathSegment.Line,.0625*te,.4375*ne)).add(new go.PathSegment(go.PathSegment.Line,.0625*te,.5625*ne)).add(new go.PathSegment(go.PathSegment.Line,.1938125*te,.5625*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.241875*te,.67596875*ne,.20221875*te,.603875*ne,.21884375*te,.64228125*ne)).add(new go.PathSegment(go.PathSegment.Line,.1495625*te,.76825*ne)).add(new go.PathSegment(go.PathSegment.Line,.238*te,.8566875*ne)).add(new go.PathSegment(go.PathSegment.Line,.3316875*te,.76296875*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.43753125*te,.80621875*ne,.36353125*te,.78340625*ne,.3991875*te,.79840625*ne)).add(new go.PathSegment(go.PathSegment.Line,.43753125*te,.9375*ne)).add(new go.PathSegment(go.PathSegment.Line,.5625*te,.9375*ne)).add(new go.PathSegment(go.PathSegment.Line,.5625*te,.80621875*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.67225*te,.760625*ne,.602375*te,.79809375*ne,.63946875*te,.78234375*ne)).add(new go.PathSegment(go.PathSegment.Line,.76828125*te,.8566875*ne)).add(new go.PathSegment(go.PathSegment.Line,.85671875*te,.76825*ne)).add(new go.PathSegment(go.PathSegment.Line,.76065625*te,.67221875*ne)).add(new go.PathSegment(go.PathSegment.Bezier,.80621875*te,.56246875*ne,.78234375*te,.63940625*ne,.798125*te,.602375*ne)).add(new go.PathSegment(go.PathSegment.Line,.9375*te,.56246875*ne).close()).add(new go.PathSegment(go.PathSegment.Move,.5*te,.6*ne)).add(new go.PathSegment(go.PathSegment.Arc,90,360,.5*te,.5*ne,.1*te,.1*ne).close()))}),go.Shape.defineFigureGenerator("Hand",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,.5*ne,!0);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Bezier,.1*te,.3*ne,0,.375*ne,.05*te,.325*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,.45*te,.075*ne,.3*te,.225*ne,.4*te,.175*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,.525*te,.075*ne,.46*te,.05*ne,.525*te,.05*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,.3*te,.4*ne,.525*te,.275*ne,.475*te,.325*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.9*te,.4*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,.9*te,.55*ne,te,.4*ne,te,.55*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.425*te,.55*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.6*te,.55*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,.6*te,.7*ne,.675*te,.55*ne,.675*te,.7*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.4*te,.7*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.575*te,.7*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,.575*te,.85*ne,.65*te,.7*ne,.65*te,.85*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.4*te,.85*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.525*te,.85*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,.535*te,ne,.61*te,.85*ne,.61*te,ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,0,.9*ne,.435*te,ne,0,ne).close()),le}),go.Shape.defineFigureGenerator("Map",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,.2*ne,!0);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,.25*te,0)),se.add(new go.PathSegment(go.PathSegment.Line,.5*te,.2*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.75*te,0)),se.add(new go.PathSegment(go.PathSegment.Line,te,.2*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,.75*te,.8*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.5*te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,.25*te,.8*ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,ne).close()),se.add(new go.PathSegment(go.PathSegment.Move,.25*te,0)),se.add(new go.PathSegment(go.PathSegment.Line,.25*te,.8*ne)),se.add(new go.PathSegment(go.PathSegment.Move,.5*te,.2*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.5*te,ne)),se.add(new go.PathSegment(go.PathSegment.Move,.75*te,0)),se.add(new go.PathSegment(go.PathSegment.Line,.75*te,.8*ne)),le}),go.Shape.defineFigureGenerator("Eject",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,ne,!0);le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,te,ne)),se.add(new go.PathSegment(go.PathSegment.Line,te,ne*.7)),se.add(new go.PathSegment(go.PathSegment.Line,0,ne*.7).close());var fe=new go.PathFigure(0,ne*.6,!0);return le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,te,.6*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.5*te,0).close()),le}),go.Shape.defineFigureGenerator("Pencil",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,0,!0).add(new go.PathSegment(go.PathSegment.Line,.2*te,.1*ne)).add(new go.PathSegment(go.PathSegment.Line,te,.9*ne)).add(new go.PathSegment(go.PathSegment.Line,.9*te,ne)).add(new go.PathSegment(go.PathSegment.Line,.1*te,.2*ne).close()))}),go.Shape.defineFigureGenerator("Building",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(te*1,ne*1,!1);le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,0,ne*1)),se.add(new go.PathSegment(go.PathSegment.Line,0,ne*.85)),se.add(new go.PathSegment(go.PathSegment.Line,.046*te,ne*.85)),se.add(new go.PathSegment(go.PathSegment.Line,.046*te,ne*.45)),se.add(new go.PathSegment(go.PathSegment.Line,0,ne*.45)),se.add(new go.PathSegment(go.PathSegment.Line,0,ne*.3)),se.add(new go.PathSegment(go.PathSegment.Line,.046*te,ne*.3)),se.add(new go.PathSegment(go.PathSegment.Line,.5*te,ne*0)),se.add(new go.PathSegment(go.PathSegment.Line,(1-.046)*te,ne*.3)),se.add(new go.PathSegment(go.PathSegment.Line,te,ne*.3)),se.add(new go.PathSegment(go.PathSegment.Line,te,ne*.45)),se.add(new go.PathSegment(go.PathSegment.Line,(1-.046)*te,ne*.45)),se.add(new go.PathSegment(go.PathSegment.Line,(1-.046)*te,ne*.85)),se.add(new go.PathSegment(go.PathSegment.Line,te,ne*.85).close());var fe=new go.PathFigure(.126*te,.85*ne,!1);le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,.126*te,.45*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.322*te,.45*ne)),fe.add(new go.PathSegment(go.PathSegment.Line,.322*te,.85*ne).close());var he=new go.PathFigure(.402*te,.85*ne,!1);le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,.402*te,.45*ne)),he.add(new go.PathSegment(go.PathSegment.Line,.598*te,.45*ne)),he.add(new go.PathSegment(go.PathSegment.Line,.598*te,.85*ne).close());var ie=new go.PathFigure(.678*te,.85*ne,!1);le.add(ie),ie.add(new go.PathSegment(go.PathSegment.Line,.678*te,.45*ne)),ie.add(new go.PathSegment(go.PathSegment.Line,.874*te,.45*ne)),ie.add(new go.PathSegment(go.PathSegment.Line,.874*te,.85*ne).close());var ue=new go.PathFigure(.5*te,.1*ne,!1);return le.add(ue),ue.add(new go.PathSegment(go.PathSegment.Line,(.046+.15)*te,.3*ne)),ue.add(new go.PathSegment(go.PathSegment.Line,(1-(.046+.15))*te,.3*ne).close()),le}),go.Shape.defineFigureGenerator("Staircase",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,ne*1,!0);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,te*.2,ne*1)),se.add(new go.PathSegment(go.PathSegment.Line,te*.2,ne*.8)),se.add(new go.PathSegment(go.PathSegment.Line,te*.4,ne*.8)),se.add(new go.PathSegment(go.PathSegment.Line,te*.4,ne*.6)),se.add(new go.PathSegment(go.PathSegment.Line,te*.6,ne*.6)),se.add(new go.PathSegment(go.PathSegment.Line,te*.6,ne*.4)),se.add(new go.PathSegment(go.PathSegment.Line,te*.8,ne*.4)),se.add(new go.PathSegment(go.PathSegment.Line,te*.8,ne*.2)),se.add(new go.PathSegment(go.PathSegment.Line,te*1,ne*.2)),se.add(new go.PathSegment(go.PathSegment.Line,te*1,ne*.15)),se.add(new go.PathSegment(go.PathSegment.Line,te*.75,ne*.15)),se.add(new go.PathSegment(go.PathSegment.Line,te*.75,ne*.35)),se.add(new go.PathSegment(go.PathSegment.Line,te*.55,ne*.35)),se.add(new go.PathSegment(go.PathSegment.Line,te*.55,ne*.55)),se.add(new go.PathSegment(go.PathSegment.Line,te*.35,ne*.55)),se.add(new go.PathSegment(go.PathSegment.Line,te*.35,ne*.75)),se.add(new go.PathSegment(go.PathSegment.Line,te*.15,ne*.75)),se.add(new go.PathSegment(go.PathSegment.Line,te*.15,ne*.95)),se.add(new go.PathSegment(go.PathSegment.Line,0,ne*.95).close()),le}),go.Shape.defineFigureGenerator("5Bars",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,ne*1,!0);le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,te*.184,ne*1)),se.add(new go.PathSegment(go.PathSegment.Line,te*.184,ne*(1-.184)).close());var fe=new go.PathFigure(te*.204,ne,!0);le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,te*.204,ne*(1-.184))),fe.add(new go.PathSegment(go.PathSegment.Line,te*.388,ne*(1-.184*2))),fe.add(new go.PathSegment(go.PathSegment.Line,te*.388,ne*1).close());var he=new go.PathFigure(te*.408,ne,!0);le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,te*.408,ne*(1-.184*2))),he.add(new go.PathSegment(go.PathSegment.Line,te*.592,ne*(1-.184*3))),he.add(new go.PathSegment(go.PathSegment.Line,te*.592,ne*1).close());var ie=new go.PathFigure(te*.612,ne,!0);le.add(ie),ie.add(new go.PathSegment(go.PathSegment.Line,te*.612,ne*(1-.184*3))),ie.add(new go.PathSegment(go.PathSegment.Line,te*.796,ne*(1-.184*4))),ie.add(new go.PathSegment(go.PathSegment.Line,te*.796,ne*1).close());var ue=new go.PathFigure(te*.816,ne,!0);return le.add(ue),ue.add(new go.PathSegment(go.PathSegment.Line,te*.816,ne*(1-.184*4))),ue.add(new go.PathSegment(go.PathSegment.Line,te*1,ne*(1-.184*5))),ue.add(new go.PathSegment(go.PathSegment.Line,te*1,ne*1).close()),le}),go.Shape.defineFigureGenerator("PC",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,0,!0);le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,0,ne*1)),se.add(new go.PathSegment(go.PathSegment.Line,te*.3,ne*1)),se.add(new go.PathSegment(go.PathSegment.Line,te*.3,0).close());var fe=new go.PathFigure(te*.055,.07*ne,!0);le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,te*.245,ne*.07)),fe.add(new go.PathSegment(go.PathSegment.Line,te*.245,ne*.1)),fe.add(new go.PathSegment(go.PathSegment.Line,te*.055,ne*.1).close());var he=new go.PathFigure(te*.055,.13*ne,!0);le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,te*.245,ne*.13)),he.add(new go.PathSegment(go.PathSegment.Line,te*.245,ne*.16)),he.add(new go.PathSegment(go.PathSegment.Line,te*.055,ne*.16).close());var ie=new go.PathFigure(te*.055,.18*ne,!0);le.add(ie),ie.add(new go.PathSegment(go.PathSegment.Line,te*.245,ne*.18)),ie.add(new go.PathSegment(go.PathSegment.Line,te*.245,ne*.21)),ie.add(new go.PathSegment(go.PathSegment.Line,te*.055,ne*.21).close());var ue=new go.PathFigure(te*1,0,!0);return le.add(ue),ue.add(new go.PathSegment(go.PathSegment.Line,te*.4,0)),ue.add(new go.PathSegment(go.PathSegment.Line,te*.4,ne*.65)),ue.add(new go.PathSegment(go.PathSegment.Line,te*1,ne*.65).close()),le}),go.Shape.defineFigureGenerator("Plane",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(.55*te,ne,!0);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,.5*te,.6*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.4*te,.7*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.1*te,.475*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,.35*te,.525*ne,0,.4*ne,.225*te,.45*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.4*te,.475*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.15*te,.35*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.2*te,.325*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.6*te,.325*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.85*te,.1*ne)),se.add(new go.PathSegment(go.PathSegment.Bezier,.9*te,.2*ne,.975*te,0,te,.08*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.7*te,.45*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.6*te,.95*ne)),se.add(new go.PathSegment(go.PathSegment.Line,.55*te,ne).close()),le}),go.Shape.defineFigureGenerator("Key",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(te*1,ne*.5,!0);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,te*.9,.4*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te*.5,.4*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te*.5,.35*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te*.45,.35*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te*.3,.2*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te*.15,.2*ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,.35*ne)),se.add(new go.PathSegment(go.PathSegment.Line,0,.65*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te*.15,.8*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te*.3,.8*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te*.45,.65*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te*.5,.65*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te*.5,.6*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te*.6,.6*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te*.65,.55*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te*.7,.6*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te*.75,.55*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te*.8,.6*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te*.85,.575*ne)),se.add(new go.PathSegment(go.PathSegment.Line,te*.9,.6*ne).close()),se.add(new go.PathSegment(go.PathSegment.Move,.17*te,.425*ne)),se.add(new go.PathSegment(go.PathSegment.Arc,270,360,.17*te,.5*ne,.075*te,.075*ne).close()),le}),go.Shape.defineFigureGenerator("FilmTape",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(0,0,!1);le.add(se),se.add(new go.PathSegment(go.PathSegment.Arc,270,180,te*0,te*.3,te*.055)),se.add(new go.PathSegment(go.PathSegment.Line,0,ne*1)),se.add(new go.PathSegment(go.PathSegment.Line,te*.08,ne*1)),se.add(new go.PathSegment(go.PathSegment.Line,te*.08,ne*.95)),se.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*1),ne*.95)),se.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*1),ne*1)),se.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*2),ne*1)),se.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*2),ne*.95)),se.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*3),ne*.95)),se.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*3),ne*1)),se.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*4),ne*1)),se.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*4),ne*.95)),se.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*5),ne*.95)),se.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*5),ne*1)),se.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*6),ne*1)),se.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*6),ne*.95)),se.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*7),ne*.95)),se.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*7),ne*1)),se.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*8),ne*1)),se.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*8),ne*.95)),se.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*9),ne*.95)),se.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*9),ne*1)),se.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*10),ne*1)),se.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*10),ne*.95)),se.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*11),ne*.95)),se.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*11),ne*1)),se.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*12),ne*1)),se.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*12),ne*.95)),se.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*13),ne*.95)),se.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*13),ne*1)),se.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*14),ne*1)),se.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*14),ne*.95)),se.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*15),ne*.95)),se.add(new go.PathSegment(go.PathSegment.Line,te*(.08+.056*15),ne*1)),se.add(new go.PathSegment(go.PathSegment.Line,te*1,ne*1)),se.add(new go.PathSegment(go.PathSegment.Line,te*1,ne*1));var fe=new go.PathFigure(0,0,!1);le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,te*1,ne*0)),fe.add(new go.PathSegment(go.PathSegment.Arc,270,-180,te*1,te*.3,te*.055)),fe.add(new go.PathSegment(go.PathSegment.Line,te*1,ne*1));var he=new go.PathFigure(te*.11,ne*.1,!1);le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,te*(.11+.24133333*1+.028*0),ne*.1)),he.add(new go.PathSegment(go.PathSegment.Line,te*(.11+.24133333*1+.028*0),ne*.8)),he.add(new go.PathSegment(go.PathSegment.Line,te*.11,ne*.8).close());var ie=new go.PathFigure(te*(.11+.24133333*1+.028*1),ne*.1,!1);le.add(ie),ie.add(new go.PathSegment(go.PathSegment.Line,te*(.11+.24133333*2+.028*1),ne*.1)),ie.add(new go.PathSegment(go.PathSegment.Line,te*(.11+.24133333*2+.028*1),ne*.8)),ie.add(new go.PathSegment(go.PathSegment.Line,te*(.11+.24133333*1+.028*1),ne*.8).close());var ue=new go.PathFigure(te*(.11+.24133333*2+.028*2),ne*.1,!1);return le.add(ue),ue.add(new go.PathSegment(go.PathSegment.Line,te*(.11+.24133333*3+.028*2),ne*.1)),ue.add(new go.PathSegment(go.PathSegment.Line,te*(.11+.24133333*3+.028*2),ne*.8)),ue.add(new go.PathSegment(go.PathSegment.Line,te*(.11+.24133333*2+.028*2),ne*.8).close()),le}),go.Shape.defineFigureGenerator("FloppyDisk",function(ce,te,ne){var le=new go.Geometry,se=8,fe=se*ve,he=new go.PathFigure(se,0,!1);le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,te*.86,0)),he.add(new go.PathSegment(go.PathSegment.Line,te*1,ne*.14)),he.add(new go.PathSegment(go.PathSegment.Line,te,ne-se)),he.add(new go.PathSegment(go.PathSegment.Bezier,te-se,ne,te,ne-fe,te-fe,ne)),he.add(new go.PathSegment(go.PathSegment.Line,se,ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,0,ne-se,fe,ne,0,ne-fe)),he.add(new go.PathSegment(go.PathSegment.Line,0,se)),he.add(new go.PathSegment(go.PathSegment.Bezier,se,0,0,fe,fe,0).close());var ie=new go.PathFigure(te*.83,0,!1);le.add(ie),ie.add(new go.PathSegment(go.PathSegment.Line,te*.83,ne*.3)),ie.add(new go.PathSegment(go.PathSegment.Line,te*.17,ne*.3)),ie.add(new go.PathSegment(go.PathSegment.Line,te*.17,ne*0).close());var ue=new go.PathFigure(te*.83,ne*1,!1);le.add(ue),ue.add(new go.PathSegment(go.PathSegment.Line,te*.83,ne*.5)),ue.add(new go.PathSegment(go.PathSegment.Line,te*.17,ne*.5)),ue.add(new go.PathSegment(go.PathSegment.Line,te*.17,ne*1).close());var me=new go.PathFigure(te*.78,ne*.05,!1);return le.add(me),me.add(new go.PathSegment(go.PathSegment.Line,te*.66,ne*.05)),me.add(new go.PathSegment(go.PathSegment.Line,te*.66,ne*.25)),me.add(new go.PathSegment(go.PathSegment.Line,te*.78,ne*.25).close()),le}),go.Shape.defineFigureGenerator("SpeechBubble",function(ce,te,ne){var le=ce?ce.parameter1:NaN;(isNaN(le)||le<0)&&(le=15),le=Math.min(le,te/3),le=Math.min(le,ne/3);var se=le*ve,fe=ne*.8,he=new go.Geometry,ie=new go.PathFigure(le,0,!0);return he.add(ie),ie.add(new go.PathSegment(go.PathSegment.Line,te-le,0)),ie.add(new go.PathSegment(go.PathSegment.Bezier,te,le,te-se,0,te,se)),ie.add(new go.PathSegment(go.PathSegment.Line,te,fe-le)),ie.add(new go.PathSegment(go.PathSegment.Bezier,te-le,fe,te,fe-se,te-se,fe)),ie.add(new go.PathSegment(go.PathSegment.Line,te*.7,fe)),ie.add(new go.PathSegment(go.PathSegment.Line,te*.7,ne)),ie.add(new go.PathSegment(go.PathSegment.Line,te*.55,fe)),ie.add(new go.PathSegment(go.PathSegment.Line,le,fe)),ie.add(new go.PathSegment(go.PathSegment.Bezier,0,fe-le,se,fe,0,fe-se)),ie.add(new go.PathSegment(go.PathSegment.Line,0,le)),ie.add(new go.PathSegment(go.PathSegment.Bezier,le,0,0,se,se,0).close()),se>1?(he.spot1=new go.Spot(0,0,se,se),he.spot2=new go.Spot(1,.8,-se,-se)):(he.spot1=go.Spot.TopLeft,he.spot2=new go.Spot(1,.8)),he}),go.Shape.defineFigureGenerator("Repeat",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(te*0,ne*.45,!0);le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,te*.25,ne*0)),se.add(new go.PathSegment(go.PathSegment.Line,te*.5,ne*.45)),se.add(new go.PathSegment(go.PathSegment.Line,te*.3,ne*.45)),se.add(new go.PathSegment(go.PathSegment.Line,te*.3,ne*.9)),se.add(new go.PathSegment(go.PathSegment.Line,te*.6,ne*.9)),se.add(new go.PathSegment(go.PathSegment.Line,te*.65,ne*1)),se.add(new go.PathSegment(go.PathSegment.Line,te*.2,ne*1)),se.add(new go.PathSegment(go.PathSegment.Line,te*.2,ne*.45).close());var fe=new go.PathFigure(te*1,ne*.55,!0);return le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,te*.75,ne*1)),fe.add(new go.PathSegment(go.PathSegment.Line,te*.5,ne*.55)),fe.add(new go.PathSegment(go.PathSegment.Line,te*.7,ne*.55)),fe.add(new go.PathSegment(go.PathSegment.Line,te*.7,ne*.1)),fe.add(new go.PathSegment(go.PathSegment.Line,te*.4,ne*.1)),fe.add(new go.PathSegment(go.PathSegment.Line,te*.35,ne*0)),fe.add(new go.PathSegment(go.PathSegment.Line,te*.8,ne*0)),fe.add(new go.PathSegment(go.PathSegment.Line,te*.8,ne*.55).close()),le}),go.Shape.defineFigureGenerator("Windows",function(ce,te,ne){return new go.Geometry().add(new go.PathFigure(0,0,!0).add(new go.PathSegment(go.PathSegment.Line,te,0)).add(new go.PathSegment(go.PathSegment.Line,te,ne)).add(new go.PathSegment(go.PathSegment.Line,0,ne).close()).add(new go.PathSegment(go.PathSegment.Move,.4*te,.4*ne)).add(new go.PathSegment(go.PathSegment.Line,.4*te,.8*ne)).add(new go.PathSegment(go.PathSegment.Line,.9*te,.8*ne)).add(new go.PathSegment(go.PathSegment.Line,.9*te,.4*ne).close()).add(new go.PathSegment(go.PathSegment.Move,.2*te,.1*ne)).add(new go.PathSegment(go.PathSegment.Line,.2*te,.6*ne)).add(new go.PathSegment(go.PathSegment.Line,.7*te,.6*ne)).add(new go.PathSegment(go.PathSegment.Line,.7*te,.1*ne).close()).add(new go.PathSegment(go.PathSegment.Move,.1*te,.6*ne)).add(new go.PathSegment(go.PathSegment.Line,.1*te,.9*ne)).add(new go.PathSegment(go.PathSegment.Line,.5*te,.9*ne)).add(new go.PathSegment(go.PathSegment.Line,.5*te,.6*ne).close()))}),go.Shape.defineFigureGenerator("Terminal",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(te*0,ne*.1,!1);le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,te*1,ne*.1)),se.add(new go.PathSegment(go.PathSegment.Line,te*1,ne*.9)),se.add(new go.PathSegment(go.PathSegment.Line,te*0,ne*.9).close());var fe=new go.PathFigure(te*.1,ne*.2,!0);le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,te*.1,ne*.25)),fe.add(new go.PathSegment(go.PathSegment.Line,te*.22,ne*.285)),fe.add(new go.PathSegment(go.PathSegment.Line,te*.1,ne*.32)),fe.add(new go.PathSegment(go.PathSegment.Line,te*.1,ne*.37)),fe.add(new go.PathSegment(go.PathSegment.Line,te*.275,ne*.32)),fe.add(new go.PathSegment(go.PathSegment.Line,te*.275,ne*.25).close());var he=new go.PathFigure(te*.28,ne*.37,!0);return le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,te*.45,ne*.37)),he.add(new go.PathSegment(go.PathSegment.Line,te*.45,ne*.41)),he.add(new go.PathSegment(go.PathSegment.Line,te*.28,ne*.41).close()),le}),go.Shape.defineFigureGenerator("Beaker",function(ce,te,ne){var le=new go.Geometry,se=15,fe=se*ve,he=new go.PathFigure(te*.62,ne*.475,!0);return le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,te,ne-se)),he.add(new go.PathSegment(go.PathSegment.Bezier,te-se,ne,te,ne-fe,te-fe,ne)),he.add(new go.PathSegment(go.PathSegment.Line,se,ne)),he.add(new go.PathSegment(go.PathSegment.Bezier,0,ne-se,fe,ne,0,ne-fe)),he.add(new go.PathSegment(go.PathSegment.Line,te*.38,ne*.475)),he.add(new go.PathSegment(go.PathSegment.Line,te*.38,ne*.03)),he.add(new go.PathSegment(go.PathSegment.Line,te*.36,ne*0)),he.add(new go.PathSegment(go.PathSegment.Line,te*.64,ne*0)),he.add(new go.PathSegment(go.PathSegment.Line,te*.62,ne*.03).close()),fe>1?(le.spot1=new go.Spot(0,0,fe,fe),le.spot2=new go.Spot(1,1,-fe,-fe)):(le.spot1=go.Spot.TopLeft,le.spot2=go.Spot.BottomRight),le}),go.Shape.defineFigureGenerator("Download",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(te*0,ne*1,!0);le.add(se);var fe=.1/.3;se.add(new go.PathSegment(go.PathSegment.Line,te*1,ne*1)),se.add(new go.PathSegment(go.PathSegment.Line,te*1,ne*(1-fe))),se.add(new go.PathSegment(go.PathSegment.Line,te*.8,ne*0)),se.add(new go.PathSegment(go.PathSegment.Line,te*.66,ne*0)),se.add(new go.PathSegment(go.PathSegment.Line,te*.66,ne*.055)),se.add(new go.PathSegment(go.PathSegment.Line,te*.755,ne*.055)),se.add(new go.PathSegment(go.PathSegment.Line,te*.93,ne*(1-fe))),se.add(new go.PathSegment(go.PathSegment.Line,te*.64,ne*(1-fe))),se.add(new go.PathSegment(go.PathSegment.Line,te*.61,ne*.75)),se.add(new go.PathSegment(go.PathSegment.Line,te*.5,ne*.75)),se.add(new go.PathSegment(go.PathSegment.Line,te*.39,ne*.75)),se.add(new go.PathSegment(go.PathSegment.Line,te*.36,ne*(1-fe))),se.add(new go.PathSegment(go.PathSegment.Line,te*.07,ne*(1-fe))),se.add(new go.PathSegment(go.PathSegment.Line,te*(1-.755),ne*.055)),se.add(new go.PathSegment(go.PathSegment.Line,te*(1-.66),ne*.055)),se.add(new go.PathSegment(go.PathSegment.Line,te*(1-.66),ne*0)),se.add(new go.PathSegment(go.PathSegment.Line,te*(1-.8),ne*0)),se.add(new go.PathSegment(go.PathSegment.Line,te*0,ne*(1-fe)).close());var he=new go.PathFigure(te*.4,ne*0,!0);return le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,te*.4,ne*.44)),he.add(new go.PathSegment(go.PathSegment.Line,te*.26,ne*.44)),he.add(new go.PathSegment(go.PathSegment.Line,te*.5,ne*.66)),he.add(new go.PathSegment(go.PathSegment.Line,te*(1-.26),ne*.44)),he.add(new go.PathSegment(go.PathSegment.Line,te*.6,ne*.44)),he.add(new go.PathSegment(go.PathSegment.Line,te*.6,ne*0).close()),le}),go.Shape.defineFigureGenerator("Bin",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(te*0,ne*1,!0);le.add(se);var fe=.1/.3;return se.add(new go.PathSegment(go.PathSegment.Line,te*1,ne*1)),se.add(new go.PathSegment(go.PathSegment.Line,te*1,ne*(1-fe))),se.add(new go.PathSegment(go.PathSegment.Line,te*.8,ne*0)),se.add(new go.PathSegment(go.PathSegment.Line,te*.66,ne*0)),se.add(new go.PathSegment(go.PathSegment.Line,te*.66,ne*.055)),se.add(new go.PathSegment(go.PathSegment.Line,te*.755,ne*.055)),se.add(new go.PathSegment(go.PathSegment.Line,te*.93,ne*(1-fe))),se.add(new go.PathSegment(go.PathSegment.Line,te*.64,ne*(1-fe))),se.add(new go.PathSegment(go.PathSegment.Line,te*.61,ne*.75)),se.add(new go.PathSegment(go.PathSegment.Line,te*.5,ne*.75)),se.add(new go.PathSegment(go.PathSegment.Line,te*.39,ne*.75)),se.add(new go.PathSegment(go.PathSegment.Line,te*.36,ne*(1-fe))),se.add(new go.PathSegment(go.PathSegment.Line,te*.07,ne*(1-fe))),se.add(new go.PathSegment(go.PathSegment.Line,te*(1-.755),ne*.055)),se.add(new go.PathSegment(go.PathSegment.Line,te*(1-.66),ne*.055)),se.add(new go.PathSegment(go.PathSegment.Line,te*(1-.66),ne*0)),se.add(new go.PathSegment(go.PathSegment.Line,te*(1-.8),ne*0)),se.add(new go.PathSegment(go.PathSegment.Line,te*0,ne*(1-fe)).close()),le}),go.Shape.defineFigureGenerator("Upload",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(te*0,ne*1,!0);le.add(se);var fe=.1/.3;se.add(new go.PathSegment(go.PathSegment.Line,te*1,ne*1)),se.add(new go.PathSegment(go.PathSegment.Line,te*1,ne*(1-fe))),se.add(new go.PathSegment(go.PathSegment.Line,te*.8,ne*0)),se.add(new go.PathSegment(go.PathSegment.Line,te*.66,ne*0)),se.add(new go.PathSegment(go.PathSegment.Line,te*.66,ne*.055)),se.add(new go.PathSegment(go.PathSegment.Line,te*.755,ne*.055)),se.add(new go.PathSegment(go.PathSegment.Line,te*.93,ne*(1-fe))),se.add(new go.PathSegment(go.PathSegment.Line,te*.64,ne*(1-fe))),se.add(new go.PathSegment(go.PathSegment.Line,te*.61,ne*.75)),se.add(new go.PathSegment(go.PathSegment.Line,te*.5,ne*.75)),se.add(new go.PathSegment(go.PathSegment.Line,te*.39,ne*.75)),se.add(new go.PathSegment(go.PathSegment.Line,te*.36,ne*(1-fe))),se.add(new go.PathSegment(go.PathSegment.Line,te*.07,ne*(1-fe))),se.add(new go.PathSegment(go.PathSegment.Line,te*(1-.755),ne*.055)),se.add(new go.PathSegment(go.PathSegment.Line,te*(1-.66),ne*.055)),se.add(new go.PathSegment(go.PathSegment.Line,te*(1-.66),ne*0)),se.add(new go.PathSegment(go.PathSegment.Line,te*(1-.8),ne*0)),se.add(new go.PathSegment(go.PathSegment.Line,te*0,ne*(1-fe)).close());var he=new go.PathFigure(te*.5,ne*0,!0);return le.add(he),he.add(new go.PathSegment(go.PathSegment.Line,te*.26,ne*.25)),he.add(new go.PathSegment(go.PathSegment.Line,te*.4,ne*.25)),he.add(new go.PathSegment(go.PathSegment.Line,te*.4,ne*.63)),he.add(new go.PathSegment(go.PathSegment.Line,te*.6,ne*.63)),he.add(new go.PathSegment(go.PathSegment.Line,te*.6,ne*.25)),he.add(new go.PathSegment(go.PathSegment.Line,te*.74,ne*.25).close()),le}),go.Shape.defineFigureGenerator("EmptyDrink",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(te*.15,ne*0,!1);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,te*.85,ne*0)),se.add(new go.PathSegment(go.PathSegment.Line,te*.7,ne*1)),se.add(new go.PathSegment(go.PathSegment.Line,te*.3,ne*1).close()),le}),go.Shape.defineFigureGenerator("Drink",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(te*.15,ne*0,!1);le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,te*.85,ne*0)),se.add(new go.PathSegment(go.PathSegment.Line,te*.7,ne*1)),se.add(new go.PathSegment(go.PathSegment.Line,te*.3,ne*1).close());var fe=new go.PathFigure(te*.235,ne*.28,!0);return le.add(fe),fe.add(new go.PathSegment(go.PathSegment.Line,te*.765,ne*.28)),fe.add(new go.PathSegment(go.PathSegment.Line,te*.655,ne*.97)),fe.add(new go.PathSegment(go.PathSegment.Line,te*.345,ne*.97).close()),le}),go.Shape.defineFigureGenerator("4Arrows",function(ce,te,ne){var le=new go.Geometry,se=new go.PathFigure(te*.5,ne*0,!0);return le.add(se),se.add(new go.PathSegment(go.PathSegment.Line,te*.65,ne*.25)),se.add(new go.PathSegment(go.PathSegment.Line,te*.55,ne*.25)),se.add(new go.PathSegment(go.PathSegment.Line,te*.55,ne*.45)),se.add(new go.PathSegment(go.PathSegment.Line,te*.75,ne*.45)),se.add(new go.PathSegment(go.PathSegment.Line,te*.75,ne*.35)),se.add(new go.PathSegment(go.PathSegment.Line,te*1,ne*.5)),se.add(new go.PathSegment(go.PathSegment.Line,te*.75,ne*.65)),se.add(new go.PathSegment(go.PathSegment.Line,te*.75,ne*.55)),se.add(new go.PathSegment(go.PathSegment.Line,te*.55,ne*.55)),se.add(new go.PathSegment(go.PathSegment.Line,te*.55,ne*.75)),se.add(new go.PathSegment(go.PathSegment.Line,te*.65,ne*.75)),se.add(new go.PathSegment(go.PathSegment.Line,te*.5,ne*1)),se.add(new go.PathSegment(go.PathSegment.Line,te*.35,ne*.75)),se.add(new go.PathSegment(go.PathSegment.Line,te*.45,ne*.75)),se.add(new go.PathSegment(go.PathSegment.Line,te*.45,ne*.55)),se.add(new go.PathSegment(go.PathSegment.Line,te*.25,ne*.55)),se.add(new go.PathSegment(go.PathSegment.Line,te*.25,ne*.65)),se.add(new go.PathSegment(go.PathSegment.Line,te*0,ne*.5)),se.add(new go.PathSegment(go.PathSegment.Line,te*.25,ne*.35)),se.add(new go.PathSegment(go.PathSegment.Line,te*.25,ne*.45)),se.add(new go.PathSegment(go.PathSegment.Line,te*.45,ne*.45)),se.add(new go.PathSegment(go.PathSegment.Line,te*.45,ne*.25)),se.add(new go.PathSegment(go.PathSegment.Line,te*.35,ne*.25).close()),le}),go.Shape.defineFigureGenerator("Connector","Ellipse"),go.Shape.defineFigureGenerator("Alternative","TriangleUp"),go.Shape.defineFigureGenerator("Merge","TriangleUp"),go.Shape.defineFigureGenerator("Decision","Diamond"),go.Shape.defineFigureGenerator("DataTransmissions","Hexagon"),go.Shape.defineFigureGenerator("Gate","Crescent"),go.Shape.defineFigureGenerator("Delay","HalfEllipse"),go.Shape.defineFigureGenerator("Input","Parallelogram1"),go.Shape.defineFigureGenerator("ManualLoop","ManualOperation"),go.Shape.defineFigureGenerator("ISOProcess","Chevron"),go.Shape.defineFigureGenerator("MessageToUser","SquareArrow"),go.Shape.defineFigureGenerator("MagneticData","Cylinder1"),go.Shape.defineFigureGenerator("DirectData","Cylinder4"),go.Shape.defineFigureGenerator("StoredData","DataStorage"),go.Shape.defineFigureGenerator("SequentialData","MagneticTape"),go.Shape.defineFigureGenerator("Subroutine","Procedure")},20063:function(module,exports,__webpack_require__){var __WEBPACK_AMD_DEFINE_ARRAY__,__WEBPACK_AMD_DEFINE_RESULT__;(function(){if(typeof window.GGBApplet=="function"){console.warn("deployggb.js was loaded twice");return}var isRenderGGBElementEnabled=!1,scriptLoadStarted=!1,html5AppletsToProcess=null,ggbHTML5LoadedCodebaseIsWebSimple=!1,ggbHTML5LoadedCodebaseVersion=null,ggbHTML5LoadedScript=null,GGBApplet=function(){"use strict";for(var At={},It="5.0",Te={},Oe=null,He=!1,Ne=!1,be=null,_e=!1,Me=null,ve=null,Ee=0;Ee<arguments.length;Ee++){var Pe=arguments[Ee];if(Pe!==null)switch(typeof Pe){case"number":It=Pe.toFixed(1);break;case"string":Pe.match(new RegExp("^[0-9]\\.[0-9]+$"))?It=Pe:be=Pe;break;case"object":typeof Pe.is3D!="undefined"?Oe=Pe:Te=Pe;break;case"boolean":He=Pe,Ne=!0;break}}Oe===null&&(Oe={is3D:!1,AV:!1,SV:!1,CV:!1,EV2:!1,CP:!1,PC:!1,DA:!1,FI:!1,PV:!1,macro:!1},Te.material_id!==void 0&&!Ne&&(He=!0)),be!==null&&Te.id===void 0&&(Te.id=be);var xe="",pe="",Ae=!1,Se=null,ce=null,te=null,ne=!1,le=null,se=null,fe=null,he=null,ie=null;Te.height!==void 0&&(Te.height=Math.round(Te.height)),Te.width!==void 0&&(Te.width=Math.round(Te.width));var ue=function(ct){return parseFloat(ct)>4?parseFloat(ct):5};At.setHTML5Codebase=function(ct,vt){ve=ct,lt(ct,vt)},At.setJavaCodebase=At.setJavaCodebaseVersion=At.isCompiledInstalled=At.setPreCompiledScriptPath=At.setPreCompiledResourcePath=function(){},At.setHTML5CodebaseVersion=function(ct,vt){var Ut=parseFloat(ct);if(Ut!==NaN&&Ut<5){console.log("The GeoGebra HTML5 codebase version "+Ut+" is deprecated. Using version latest instead.");return}Me=ct,nt(ct,vt)},At.getHTML5CodebaseVersion=function(){return ce},At.getParameters=function(){return Te},At.setFontsCSSURL=function(ct){he=ct},At.setGiacJSURL=function(ct){},At.setJNLPFile=function(ct){xe=ct},At.setJNLPBaseDir=function(ct){},At.inject=function(){function ct(){return window.frameElement&&window.frameElement.getAttribute("data-singleton")}for(var vt="auto",Ut=Te.id,Zt,en=!1,mn=0;mn<arguments.length;mn++){var Bt=arguments[mn];typeof Bt=="string"?(Bt=Bt.toLowerCase(),Bt.match(/^(prefer)?(java|html5|compiled|auto|screenshot)$/)?vt=Bt:Ut=arguments[mn]):typeof Bt=="boolean"?en=Bt:Bt instanceof HTMLElement&&(Zt=Bt)}tn();function tn(){if(!_e){setTimeout(tn,200);return}vt=at(vt);var on=Zt||document.getElementById(Ut);if(!on){console.log("possibly bug on ajax loading? ");return}if(At.removeExistingApplet(on,!1),Te.width===void 0&&on.clientWidth&&(Te.width=on.clientWidth),Te.height===void 0&&on.clientHeight&&(Te.height=on.clientHeight),!(Te.width&&Te.height)&&vt==="html5"&&(delete Te.width,delete Te.height),Se=vt,vt==="screenshot")Qe(on,Te);else{var Mn=!1;Te.hasOwnProperty("playButton")&&Te.playButton||Te.hasOwnProperty("clickToLoad")&&Te.clickToLoad?Mn=!0:Te.hasOwnProperty("playButtonAutoDecide")&&Te.playButtonAutoDecide&&(Mn=(!me()||ct())&&Ce()),Mn?(Se="screenshot",$e(on,Te,en,vt)):Je(on,Te,en)}}};function me(){try{return window.self!==window.top}catch(ct){return!0}}function Ce(){return Te.hasOwnProperty("screenshotGenerator")&&Te.screenshotGenerator?!1:Math.max(screen.width,screen.height)<800}At.getViews=function(){return Oe},At.isJavaInstalled=function(){return!1};var Ie=function(ct){var vt=function(mn){var Bt=JSON.parse(mn),tn=function(Dn){return Dn.type=="G"||Dn.type=="E"},on=Bt.elements?Bt.elements.filter(tn)[0]:Bt;if(!on||!on.url){Ut();return}Te.fileName=on.url,Fe(on.settings||{}),Oe.is3D=!0;var Mn="https://www.geogebra.org/images/";At.setPreviewImage(le||on.previewUrl,Mn+"GeoGebra_loading.png",Mn+"applet_play.png"),ct()},Ut=function(){Te.onError&&Te.onError(),yt("Error: Fetching material (id "+Te.material_id+") failed.",Te)},Zt=location.host.match(/(www|stage|beta|groot|alpha).geogebra.(org|net)/)?location.host:"www.geogebra.org",en="/materials/"+Te.material_id+"?scope=basic";Re("https://"+Zt+"/api/proxy.php?path="+encodeURIComponent(en),vt,Ut)};function Fe(ct){var vt=["width","height","showToolBar","showMenuBar","showAlgebraInput","allowStyleBar","showResetIcon","enableLabelDrags","enableShiftDragZoom","enableRightClick","appName"];["enableLabelDrags","enableShiftDragZoom","enableRightClick"].forEach(function(Ut){ct[Ut]=!!ct[Ut]}),vt.forEach(function(Ut){Te[Ut]===void 0&&ct[Ut]!==void 0&&(Te[Ut]=ct[Ut])}),Te.showToolBarHelp===void 0&&(Te.showToolBarHelp=Te.showToolBar)}function Re(ct,vt,Ut){var Zt=new XMLHttpRequest;Zt.open("GET",ct),Zt.onload=function(){vt(Zt.responseText)},Zt.onerror=Ut,Zt.send()}At.isHTML5Installed=function(){return!0},At.getLoadedAppletType=function(){return Se},At.setPreviewImage=function(ct,vt,Ut){le=ct,se=vt,fe=Ut},At.removeExistingApplet=function(ct,vt){var Ut;typeof ct=="string"&&(ct=document.getElementById(ct)),Se=null;var Zt=null;for(Ut=0;Ut<ct.childNodes.length;Ut++){var en=ct.childNodes[Ut],mn=en.className;mn==="applet_screenshot"?vt?(en.style.display="block",Se="screenshot"):en.style.display="none":mn!=="applet_scaler prerender"&&(ct.removeChild(en),Zt=mn&&mn.indexOf("appletParameters")!=-1?en.id:null,Ut--)}var Bt=Te.id!==void 0?Te.id:Zt,tn=window[Bt];tn&&typeof tn.getBase64=="function"&&(tn.remove(),window[Bt]=null)},At.refreshHitPoints=function(){if(ue(ggbHTML5LoadedCodebaseVersion)>=5)return!0;var ct=At.getAppletObject();return ct&&typeof ct.recalculateEnvironments=="function"?(ct.recalculateEnvironments(),!0):!1},At.startAnimation=function(){var ct=At.getAppletObject();return ct&&typeof ct.startAnimation=="function"?(ct.startAnimation(),!0):!1},At.stopAnimation=function(){var ct=At.getAppletObject();return ct&&typeof ct.stopAnimation=="function"?(ct.stopAnimation(),!0):!1},At.getAppletObject=function(){var ct=Te.id!==void 0?Te.id:"ggbApplet";return window[ct]},At.resize=function(){};var Ue=function(ct,vt,Ut){var Zt=document.createElement("param");Zt.setAttribute("name",vt),Zt.setAttribute("value",Ut),ct.appendChild(Zt)},Ge=function(ct){return ct&&ct!=="false"},Je=function(ct,vt,Ut){ue(ce)<=4.2&&(Ut=!0);var Zt=!isRenderGGBElementEnabled&&!scriptLoadStarted;(!isRenderGGBElementEnabled&&!scriptLoadStarted||ggbHTML5LoadedCodebaseVersion!==ce||ggbHTML5LoadedCodebaseIsWebSimple&&!ne)&&(Zt=!0,isRenderGGBElementEnabled=!1,scriptLoadStarted=!1);var en=document.createElement("div");en.classList.add("appletParameters","notranslate");var mn=vt.width,Bt=vt.height;if(vt.disableAutoScale=vt.disableAutoScale===void 0?GGBAppletUtils.isFlexibleWorksheetEditor():vt.disableAutoScale,vt.width!==void 0)if(ue(ce)<=4.4)Ge(vt.showToolBar)&&(vt.height-=7),Ge(vt.showAlgebraInput)&&(vt.height-=37),vt.width<605&&Ge(vt.showToolBar)&&(vt.width=605,mn=605);else{var tn=100;(Ge(vt.showToolBar)||Ge(vt.showMenuBar))&&(vt.hasOwnProperty("customToolBar")&&(vt.customToolbar=vt.customToolBar),tn=Ge(vt.showMenuBar)?245:155),mn<tn&&(vt.width=tn,mn=tn)}en.style.border="none",en.style.display="inline-block";for(var on in vt)vt.hasOwnProperty(on)&&on!=="appletOnLoad"&&en.setAttribute("data-param-"+on,vt[on]);he&&en.setAttribute("data-param-fontscssurl",he),At.resize=function(){GGBAppletUtils.responsiveResize(ct,vt)},window.addEventListener("resize",function(Mt){At.resize()});var Mn=typeof vt.appletOnLoad=="function"?vt.appletOnLoad:function(){};if(!Ut&&vt.width!==void 0){vt.hasOwnProperty("showSplash")||en.setAttribute("data-param-showSplash","false");var Dn=ct.querySelector(".applet_scaler.prerender"),sn=Dn!==null;if(sn)var rn=Dn.querySelector(".ggb_preview");else{var rn=ot(mn,Bt,vt.borderColor,!1);Dn=document.createElement("div"),Dn.className="applet_scaler",Dn.style.position="relative",Dn.style.display="block",Dn.style.width=mn+"px",Dn.style.height=Bt+"px"}window.GGBT_spinner&&window.GGBT_spinner.attachSpinner(Dn,"66%"),ue(ce)>=5?(vt.appletOnLoad=function(Mt){var ln=ct.querySelector(".ggb_preview");ln&&ln.parentNode.removeChild(ln),window.GGBT_spinner&&window.GGBT_spinner.removeSpinner(Dn),window.GGBT_wsf_view&&$(window).trigger("resize"),Mn(Mt)},sn||Dn.appendChild(rn)):en.appendChild(rn),Dn.appendChild(en),sn||ct.appendChild(Dn),setTimeout(function(){At.resize()},1)}else{var Ht=document.createElement("div");Ht.className="applet_scaler",Ht.style.position="relative",Ht.style.display="block",Ht.appendChild(en),ct.appendChild(Ht),vt.appletOnLoad=function(Mt){At.resize(),Mn(Mt)}}function Tt(Mt,ln){ln&&typeof ln.appletOnLoad=="function"&&typeof renderGGBElement=="function"?renderGGBElement(Mt,ln.appletOnLoad):renderGGBElement(Mt),yt("GeoGebra HTML5 applet injected and rendered with previously loaded codebase.",ln)}function St(Mt,ln){typeof renderGGBElement=="undefined"?(html5AppletsToProcess===null&&(html5AppletsToProcess=[]),html5AppletsToProcess.push({article:Mt,params:ln}),window.renderGGBElementReady=function(){isRenderGGBElementEnabled=!0,html5AppletsToProcess!==null&&html5AppletsToProcess.length&&(html5AppletsToProcess.forEach(function(zn){Tt(zn.article,zn.params)}),html5AppletsToProcess=null)},ue(ce)<5&&(Mt.className+=" geogebraweb")):Tt(Mt,ln)}if(Zt){scriptLoadStarted=!0;for(var Qt=0;Qt<en.childNodes.length;Qt++){var gt=en.childNodes[Qt].tagName;gt==="TABLE"&&(en.removeChild(en.childNodes[Qt]),Qt--)}if(ggbHTML5LoadedScript!==null){var bt=document.querySelector('script[src="'+ggbHTML5LoadedScript+'"]');bt!=null&&bt.parentNode.removeChild(bt)}var Yt=document.createElement("script"),kt=function(){St(en,vt)};Yt.src=pe+te,ggbHTML5LoadedCodebaseIsWebSimple=ne,ggbHTML5LoadedCodebaseVersion=ce,ggbHTML5LoadedScript=Yt.src,yt("GeoGebra HTML5 codebase loaded: '"+pe+"'.",vt),!ve&&(!Me||Me=="5.0")?(ne?webSimple.succeeded=webSimple.succeeded||webSimple():web3d.succeeded=web3d.succeeded||web3d(),kt()):pe.requirejs?__webpack_require__.e(5795).then(function(){var Mt=[__webpack_require__(95795)];kt.apply(null,Mt)}.bind(this)).catch(__webpack_require__.oe):(Yt.onload=kt,ct.appendChild(Yt))}else St(en,vt);vt.height=Bt,vt.width=mn},Qe=function(ct,vt,Ut){var Zt=ot(vt.width,vt.height,vt.borderColor,Ut),en=document.createElement("div");en.style.position="relative",en.style.display="block",en.style.width=vt.width+"px",en.style.height=vt.height+"px",en.className="applet_screenshot applet_scaler"+(Ut?" applet_screenshot_play":""),en.appendChild(Zt);var mn=GGBAppletUtils.getScale(vt,ct,Ut);Ut?(ct.appendChild(qe()),window.GGBT_wsf_view||(ct.style.position="relative")):window.GGBT_spinner&&window.GGBT_spinner.attachSpinner(en,"66%"),ct.appendChild(en),mn!==1&&!isNaN(mn)&&(GGBAppletUtils.scaleElement(en,mn),en.style.width=vt.width+"px",en.style.height=vt.height+"px",en.parentNode.style.width=vt.width*mn+"px",en.parentNode.style.height=vt.height*mn+"px"),At.resize=function(){rt(ct,Zt,en,Ut)},window.addEventListener("resize",function(Bt){At.resize()}),At.resize()};function rt(ct,vt,Ut,Zt){if(ct.contains(vt)){if(typeof window.GGBT_wsf_view=="object"&&window.GGBT_wsf_view.isFullscreen()){if(ct.id!=="fullscreencontent")return;window.GGBT_wsf_view.setCloseBtnPosition(ct)}var en=GGBAppletUtils.getScale(Te,ct,Zt);Ut.parentNode!==null&&(!isNaN(en)&&en!==1?(GGBAppletUtils.scaleElement(Ut,en),Ut.parentNode.style.width=Te.width*en+"px",Ut.parentNode.style.height=Te.height*en+"px"):(GGBAppletUtils.scaleElement(Ut,1),Ut.parentNode.style.width=Te.width+"px",Ut.parentNode.style.height=Te.height+"px")),typeof window.GGBT_wsf_view=="object"&&window.GGBT_wsf_view.isFullscreen()&&GGBAppletUtils.positionCenter(ct),typeof window.GGBT_ws_header_footer=="object"&&window.GGBT_ws_header_footer.setWsScrollerHeight()}}At.onExitFullscreen=function(ct,vt){vt.appendChild(ct)};var $e=function(ct,vt,Ut,Zt){Qe(ct,vt,!0);for(var en=function(){var tn=[];for(Bt=0;Bt<ct.childNodes.length;Bt++)tn.push(ct.childNodes[Bt]);if(window.GGBT_wsf_view){var on=window.GGBT_wsf_view.renderFullScreen(ct,vt.id),Mn=document.getElementById("fullscreencontainer"),Dn=jQuery(ct).find(".fullscreencontent");Dn.length>0?(on.remove(),Dn.attr("id","fullscreencontent").show(),jQuery(Mn).append(Dn),window.dispatchEvent(new Event("resize"))):Je(on,vt,!1),window.GGBT_wsf_view.launchFullScreen(Mn)}else Se=Zt,Je(ct,vt,!1);if(!window.GGBT_wsf_view)for(Bt=0;Bt<tn.length;Bt++)ct.removeChild(tn[Bt])},mn=ct.getElementsByClassName("ggb_preview_play"),Bt=0;Bt<mn.length;Bt++)mn[Bt].addEventListener("click",en,!1),mn[Bt].addEventListener("ontouchstart",en,!1);typeof window.ggbAppletPlayerOnload=="function"&&window.ggbAppletPlayerOnload(ct),Ce()&&window.GGBT_wsf_view&&$(".wsf-element-fullscreen-button").remove()},qe=function(){var ct=document.createElement("div");if(ct.className="ggb_preview_play icon-applet-play",!window.GGBT_wsf_view){var vt='.icon-applet-play { width: 100%; height: 100%;box-sizing: border-box;position: absolute;z-index: 1001;cursor: pointer;border-width: 0px; background-color: transparent;background-repeat: no-repeat;left: 0;top: 0;background-position: center center; background-image: url("https://www.geogebra.org/images/worksheet/icon-start-applet.png");}.icon-applet-play:hover {background-image: url("https://www.geogebra.org/images/worksheet/icon-start-applet-hover.png");}',Ut=document.createElement("style");Ut.styleSheet?Ut.styleSheet.cssText=vt:Ut.appendChild(document.createTextNode(vt)),document.getElementsByTagName("head")[0].appendChild(Ut)}return ct},ot=function(ct,vt,Ut,Zt){var en=document.createElement("div");en.className="ggb_preview",en.style.position="absolute",en.style.zIndex="90",en.style.width=ct-2+"px",en.style.height=vt-2+"px",en.style.top="0px",en.style.left="0px",en.style.overflow="hidden",en.style.backgroundColor="white";var mn="lightgrey";Ut!==void 0&&(Ut==="none"?mn="transparent":mn=Ut),en.style.border="1px solid "+mn;var Bt=document.createElement("img");if(Bt.style.position="relative",Bt.style.zIndex="1000",Bt.style.top="-1px",Bt.style.left="-1px",le!==null&&Bt.setAttribute("src",le),Bt.style.opacity=.7,se!==null){var tn,on,Mn;if(!Zt){tn=document.createElement("img"),tn.style.position="absolute",tn.style.zIndex="1001",tn.style.opacity=1,Bt.style.opacity=.3,on=360,on>ct/4*3&&(on=ct/4*3),Mn=on/5.8,tn.setAttribute("src",se),tn.setAttribute("width",on),tn.setAttribute("height",Mn);var Dn=(ct-on)/2,sn=(vt-Mn)/2;tn.style.left=Dn+"px",tn.style.top=sn+"px",en.appendChild(tn)}}return en.appendChild(Bt),en},at=function(ct){return ct=ct.toLowerCase(),ct==="html5"||ct==="screenshot"?ct:"html5"},ut=["web","webSimple","web3d","tablet","tablet3d","phone"],nt=function(ct,vt){if(ce=ct,vt){lt(ce,!0);return}var Ut=!He;if(Ut){var Zt=ue(ce);!isNaN(Zt)&&Zt<4.4&&(Ut=!1)}var en,mn;window.location.protocol.substr(0,4)==="http"?en=window.location.protocol:en="http:";var Bt=ce.indexOf("//");Bt>0?mn=ce:Bt===0?mn=en+ce:mn="https://www.geogebra.org/apps/5.2.814.0/";for(var tn in ut)if(ce.slice(ut[tn].length*-1)===ut[tn]||ce.slice((ut[tn].length+1)*-1)===ut[tn]+"/"){lt(mn,!1);return}!GGBAppletUtils.isFlexibleWorksheetEditor()&&Ut&&!Oe.is3D&&!Oe.AV&&!Oe.SV&&!Oe.CV&&!Oe.EV2&&!Oe.CP&&!Oe.PC&&!Oe.DA&&!Oe.FI&&!Oe.PV&&!Ge(Te.showToolBar)&&!Ge(Te.showMenuBar)&&!Ge(Te.showAlgebraInput)&&!Ge(Te.enableRightClick)&&(!Te.appName||Te.appName=="classic")?mn+="webSimple/":mn+="web3d/",lt(mn,!1)},lt=function(ct,vt){if(ct.requirejs){pe=ct;return}ct.slice(-1)!=="/"&&(ct+="/"),pe=ct,vt===null&&(vt=ct.indexOf("http")===-1),Ae=vt,te="web.nocache.js",ne=!1;var Ut=pe.split("/");Ut.length>1&&(!vt&&Ut[Ut.length-2]==="webSimple"?(te="webSimple.nocache.js",ne=!0):ut.indexOf(Ut[Ut.length-2])>=0&&(te=Ut[Ut.length-2]+".nocache.js")),Ut=ct.split("/"),ce=Ut[Ut.length-3],ce.substr(0,4)==="test"?ce=ce.substr(4,1)+"."+ce.substr(5,1):(ce.substr(0,3)==="war"||ce.substr(0,4)==="beta")&&(ce="5.0");var Zt=parseFloat(ce);Zt!==NaN&&Zt<5&&ct.indexOf("geogebra.org")>=0&&(console.log("The GeoGebra HTML5 codebase version "+Zt+" is deprecated. Using version latest instead."),nt("5.0",vt))},yt=function(ct,vt){window.console&&window.console.log&&(!vt||typeof vt.showLogging=="undefined"||vt.showLogging&&vt.showLogging!=="false")&&console.log(ct)};Te.material_id!==void 0?Ie(ft):ft();function ft(){var ct=It;Me!==null?ct=Me:parseFloat(ct)<5&&(ct="5.0"),nt(ct,!1),ve!==null&<(ve,Ae),_e=!0}return At},GGBAppletUtils=function(){"use strict";function At(){return window.GGBT_wsf_edit!==void 0}function It(_e,Me){Me!=1?(_e.style.transformOrigin="0% 0% 0px",_e.style.webkitTransformOrigin="0% 0% 0px",_e.style.transform="scale("+Me+","+Me+")",_e.style.webkitTransform="scale("+Me+","+Me+")",_e.style.maxWidth="initial",_e.querySelector(".ggb_preview")!==null&&(_e.querySelector(".ggb_preview").style.maxWidth="initial"),_e.querySelectorAll(".ggb_preview img")[0]!==void 0&&(_e.querySelectorAll(".ggb_preview img")[0].style.maxWidth="initial"),_e.querySelectorAll(".ggb_preview img")[1]!==void 0&&(_e.querySelectorAll(".ggb_preview img")[1].style.maxWidth="initial")):(_e.style.transform="none",_e.style.webkitTransform="none")}function Te(_e,Me,ve,Ee,Pe,xe){var pe=null;if(xe!=null&&xe!="")for(var Ae=_e.parentNode;Ae!=null;)if((" "+Ae.className+" ").indexOf(" "+xe+" ")>-1){pe=Ae;break}else Ae=Ae.parentNode;var Se=0,ce=0,te=0,ne=0,le=0,se=0,fe=0;if(pe)Se=pe.offsetWidth,ce=Math.max(Ee?pe.offsetWidth:0,pe.offsetHeight);else{if(window.innerWidth&&document.documentElement.clientWidth?(Se=Math.min(window.innerWidth,document.documentElement.clientWidth),ce=Math.min(window.innerHeight,document.documentElement.clientHeight),te=Se):(Se=window.innerWidth,ce=window.innerHeight,te=window.innerWidth),_e){var he=_e.getBoundingClientRect();he.left>0&&he.left<=Se&&(Pe===void 0||!Pe)&&(document.dir==="rtl"?(le=Se-he.width-he.left,se=te<=480?10:30):(se=he.left,le=te<=480?10:30),ne=se+le)}if(_e&&typeof window.GGBT_wsf_view=="object"&&window.GGBT_wsf_view.isFullscreen()){var ie=_e.getBoundingClientRect();window.GGBT_wsf_view.getCloseBtnPosition()==="closePositionRight"?(ne=40,fe=0):window.GGBT_wsf_view.getCloseBtnPosition()==="closePositionTop"&&(ne=0,fe=40)}}return _e&&((ve===void 0||!ve)&&Me>0&&Me+ne<Se?Se=Me:Se-=ne,typeof window.GGBT_wsf_view=="object"&&window.GGBT_wsf_view.isFullscreen()&&(ve===void 0||!ve)&&(ce-=fe)),{width:Se,height:ce}}function Oe(_e,Me,ve,Ee,Pe){if(_e.isScreenshoGenerator)return 1;var xe=Ee!==void 0&&Ee,pe=_e.noScaleMargin!=null&&_e.noScaleMargin,Ae=function(ie){return ie&&ie!=="false"},Se=Ae(_e.autoHeight),ce=Te(Me,_e.width,ve,Se,xe&&window.GGBT_wsf_view||pe,Pe),te=parseInt(ce.width),ne=_e.width,le=_e.height;if(ne===void 0){var se=Me.querySelector(".appletParameters");se&&(ne=se.offsetWidth,le=se.offsetHeight)}var fe=te/ne,he=xe?1:ce.height/le;return ve!==void 0&&!ve&&(fe=Math.min(1,fe),he=Math.min(1,he)),Math.min(fe,he)}function He(_e,Me,ve){var Ee=1,Pe,xe=!1;if(_e.hasOwnProperty("allowUpscale")&&(xe=_e.allowUpscale),_e.hasOwnProperty("scale")&&(Ee=parseFloat(_e.scale),(isNaN(Ee)||Ee===null||Ee===0)&&(Ee=1),Ee>1&&(xe=!0)),Me&&typeof window.GGBT_wsf_view=="object"&&window.GGBT_wsf_view.isFullscreen()&&(xe=!0),!(_e.hasOwnProperty("disableAutoScale")&&_e.disableAutoScale))Pe=Oe(_e,Me,xe,ve,_e.scaleContainerClass);else return Ee;return xe&&(!_e.hasOwnProperty("scale")||Ee===1)?Pe:Math.min(Ee,Pe)}function Ne(_e){var Me=Math.min(window.innerWidth,document.documentElement.clientWidth),ve=Math.min(window.innerHeight,document.documentElement.clientHeight),Ee=_e.getBoundingClientRect(),Pe=(Me-Ee.width)/2,xe=(ve-Ee.height)/2;xe<0&&(xe=0),_e.style.position="relative",window.GGBT_wsf_view.getCloseBtnPosition()==="closePositionRight"?(Pe<40?_e.style.left="40px":_e.style.left=Pe+"px",_e.style.top=xe+"px"):window.GGBT_wsf_view.getCloseBtnPosition()==="closePositionTop"&&(xe<40?_e.style.top="40px":_e.style.top=xe+"px",_e.style.left=Pe+"px")}function be(_e,Me){var ve=_e.querySelector(".appletParameters");if(ve){if(typeof window.GGBT_wsf_view=="object"&&window.GGBT_wsf_view.isFullscreen()){if(Me.id!==ve.getAttribute("data-param-id"))return;window.GGBT_wsf_view.setCloseBtnPosition(_e)}if(ve.parentElement&&/fullscreen/.test(ve.parentElement.className))return;var Ee=He(Me,_e);At()&&ve.setAttribute("data-param-scale",Ee);for(var Pe=null,xe=0;xe<_e.childNodes.length;xe++)if(_e.childNodes[xe].className!==void 0&&_e.childNodes[xe].className.match(/^applet_scaler/)){Pe=_e.childNodes[xe];break}if(Pe!==null&&Pe.querySelector(".noscale")!==null)return;var pe=Me.id!==void 0?Me.id:"ggbApplet",Ae=window[pe];(Ae==null||!Ae.recalculateEnvironments)&&Pe!==null&&!Pe.className.match(/fullscreen/)&&(Pe.parentNode.style.transform="",!isNaN(Ee)&&Ee!==1?(Pe.parentNode.style.width=Me.width*Ee+"px",Pe.parentNode.style.height=Me.height*Ee+"px",It(Pe,Ee)):(It(Pe,1),Pe.parentNode.style.width=Me.width+"px",Pe.parentNode.style.height=Me.height+"px")),typeof window.GGBT_wsf_view=="object"&&window.GGBT_wsf_view.isFullscreen()&&Ne(_e),window.GGBT_wsf_view&&!window.GGBT_wsf_view.isFullscreen()&&window.GGBT_wsf_general.adjustContentToResize($(ve).parents(".content-added-content"))}}return{responsiveResize:be,isFlexibleWorksheetEditor:At,positionCenter:Ne,getScale:He,scaleElement:It}}();__WEBPACK_AMD_DEFINE_ARRAY__=[],__WEBPACK_AMD_DEFINE_RESULT__=function(){return GGBApplet}.apply(exports,__WEBPACK_AMD_DEFINE_ARRAY__),__WEBPACK_AMD_DEFINE_RESULT__!==void 0&&(module.exports=__WEBPACK_AMD_DEFINE_RESULT__),GGBAppletUtils.makeModule=function(name,permutation){function webModule(){var H="bootstrap",I="begin",J="gwt.codesvr."+name+"=",K="gwt.codesvr=",L=name,M="startup",N="DUMMY",O=0,P=1,Q="iframe",R="position:absolute; width:0; height:0; border:none; left: -1000px;",S=" top: -1000px;",T="Chrome",U="CSS1Compat",V="<!doctype html>",W="",X="<html><head></head><body></body></html>",Y="undefined",Z="readystatechange",$=10,_="script",ab="javascript",bb="Failed to load ",cb="moduleStartup",db="scriptTagAdded",eb="moduleRequested",fb="meta",gb="name",hb=name+"::",ib="::",jb="gwt:property",kb="content",lb="=",mb="gwt:onPropertyErrorFn",nb='Bad handler "',ob='" for "gwt:onPropertyErrorFn"',pb="gwt:onLoadErrorFn",qb='" for "gwt:onLoadErrorFn"',rb="#",sb="?",tb="/",ub="img",vb="clear.cache.gif",wb="baseUrl",xb=name+".nocache.js",yb="base",zb="//",Ab="selectingPermutation",Bb=name+".devmode.js",Cb=permutation,Db=":",Eb=".cache.js",Fb="loadExternalRefs",Gb="end",n=window,o=document;function p(){var At=n.location.search;return At.indexOf(J)!=-1||At.indexOf(K)!=-1}function q(At,It){}webModule.__sendStats=q,webModule.__moduleName=L,webModule.__errFn=null,webModule.__moduleBase=N,webModule.__softPermutationId=O,webModule.__computePropValue=null,webModule.__getPropMap=null,webModule.__installRunAsyncCode=function(){},webModule.__gwtStartLoadingFragment=function(){return null},webModule.__gwt_isKnownPropertyValue=function(){return!1},webModule.__gwt_getMetaProperty=function(){return null};var r=null,s=n.__gwt_activeModules=n.__gwt_activeModules||{};s[L]={moduleName:L},webModule.__moduleStartupDone=function(At){var It=s[L].bindings;s[L].bindings=function(){for(var Te=It?It():{},Oe=At[webModule.__softPermutationId],He=O;He<Oe.length;He++){var Ne=Oe[He];Te[Ne[O]]=Ne[P]}return Te}};var t;function u(){return v(),t}function v(){if(!t){var At=o.createElement(Q);if(At.id=L,At.style.cssText=R+S,At.tabIndex=-1,o.body.appendChild(At),t=At.contentWindow.document,navigator.userAgent.indexOf(T)==-1){t.open();var It=document.compatMode==U?V:W;t.write(It+X),t.close()}}}function w(At){function It(Oe){function He(){return typeof o.readyState==Y?typeof o.body!=Y&&o.body!=null:/loaded|complete/.test(o.readyState)}var Ne=He();if(Ne){Oe();return}function be(){if(!Ne){if(!He())return;Ne=!0,Oe(),o.removeEventListener&&o.removeEventListener(Z,be,!1),_e&&clearInterval(_e)}}o.addEventListener&&o.addEventListener(Z,be,!1);var _e=setInterval(function(){be()},$)}function Te(Oe){var He=u(),Ne=He.body,be=He.createElement(_);be.language=ab,be.crossOrigin=W,be.src=Oe,webModule.__errFn&&(be.onerror=function(){webModule.__errFn(L,new Error(bb+Oe))}),Ne.appendChild(be)}It(function(){Te(At)})}webModule.__startLoadingFragment=function(At){return C(At)},webModule.__installRunAsyncCode=function(At){var It=u(),Te=It.body,Oe=It.createElement(_);Oe.language=ab,Oe.text=At,Te.appendChild(Oe),Te.removeChild(Oe)};function A(){for(var c={},d,e,f=o.getElementsByTagName(fb),g=O,h=f.length;g<h;++g){var i=f[g],j=i.getAttribute(gb),k;if(j){if(j=j.replace(hb,W),j.indexOf(ib)>=O)continue;if(j==jb){if(k=i.getAttribute(kb),k){var l,m=k.indexOf(lb);m>=O?(j=k.substring(O,m),l=k.substring(m+P)):(j=k,l=W),c[j]=l}}else if(j==mb){if(k=i.getAttribute(kb),k)try{d=eval(k)}catch(At){alert(nb+k+ob)}}else if(j==pb&&(k=i.getAttribute(kb),k))try{e=eval(k)}catch(At){alert(nb+k+qb)}}}__gwt_getMetaProperty=function(At){var It=c[At];return It==null?null:It},r=d,webModule.__errFn=e}function B(){function At(_e){var Me=_e.lastIndexOf(rb);Me==-1&&(Me=_e.length);var ve=_e.indexOf(sb);ve==-1&&(ve=_e.length);var Ee=_e.lastIndexOf(tb,Math.min(ve,Me));return Ee>=O?_e.substring(O,Ee+P):W}function It(_e){if(!_e.match(/^\w+:\/\//)){var Me=o.createElement(ub);Me.src=_e+vb,_e=At(Me.src)}return _e}function Te(){var _e=__gwt_getMetaProperty(wb);return _e!=null?_e:W}function Oe(){for(var _e=o.getElementsByTagName(_),Me=O;Me<_e.length;++Me)if(_e[Me].src.indexOf(xb)!=-1)return At(_e[Me].src);return W}function He(){var _e=o.getElementsByTagName(yb);return _e.length>O?_e[_e.length-P].href:W}function Ne(){var _e=o.location;return _e.href==_e.protocol+zb+_e.host+_e.pathname+_e.search+_e.hash}var be=Te();return be==W&&(be=Oe()),be==W&&(be=He()),be==W&&Ne()&&(be=At(o.location.href)),be=It(be),be}function C(At){return At.match(/^\//)||At.match(/^[a-zA-Z]+:\/\//)?At:webModule.__moduleBase+At}function D(){var At=[],It=O,Te=[],Oe=[];function He(_e){var Me=Oe[_e](),ve=Te[_e];if(Me in ve)return Me;var Ee=[];for(var Pe in ve)Ee[ve[Pe]]=Pe;throw r&&r(_e,Ee,Me),null}if(__gwt_isKnownPropertyValue=function(_e,Me){return Me in Te[_e]},webModule.__getPropMap=function(){var _e={};for(var Me in Te)Te.hasOwnProperty(Me)&&(_e[Me]=He(Me));return _e},webModule.__computePropValue=He,n.__gwt_activeModules[L].bindings=webModule.__getPropMap,p())return C(Bb);var Ne;try{Ne=Cb;var be=Ne.indexOf(Db);be!=-1&&(It=parseInt(Ne.substring(be+P),$),Ne=Ne.substring(O,be))}catch(_e){}return webModule.__softPermutationId=It,C(Ne+Eb)}function F(){n.__gwt_stylesLoaded||(n.__gwt_stylesLoaded={})}A(),webModule.__moduleBase=window.ENV==="build"?"/react/build/js/mathematicalGraphics/"+name+"/":"/js/mathematicalGraphics/"+name+"/",s[L].moduleBase=webModule.__moduleBase;var G=D();return F(),w(G),!0}return webModule},typeof window.web3d!="function"&&(window.web3d=GGBAppletUtils.makeModule("web3d","A18F540516513B1292CA7CEF2F6AFC7E")),typeof window.webSimple!="function"&&(window.webSimple=GGBAppletUtils.makeModule("webSimple","96B09BF1B436BF53F0DF54116700F16A")),window.GGBApplet=GGBApplet})()},19264:function(At,It){var Te=(Oe,He,Ne)=>new Promise((be,_e)=>{var Me=Pe=>{try{Ee(Ne.next(Pe))}catch(xe){_e(xe)}},ve=Pe=>{try{Ee(Ne.throw(Pe))}catch(xe){_e(xe)}},Ee=Pe=>Pe.done?be(Pe.value):Promise.resolve(Pe.value).then(Me,ve);Ee((Ne=Ne.apply(Oe,He)).next())});(function(Oe,He){He(It)})(this,function(Oe){"use strict";var He={value:()=>{}};function Ne(){for(var Ke,tt=0,it=arguments.length,pt={};tt<it;++tt){if(!(Ke=arguments[tt]+"")||Ke in pt||/[\s.]/.test(Ke))throw new Error("illegal type: "+Ke);pt[Ke]=[]}return new be(pt)}function be(Ke){this._=Ke}function _e(Ke,tt){return Ke.trim().split(/^|\s+/).map(function(it){var pt="",Dt=it.indexOf(".");if(Dt>=0&&(pt=it.slice(Dt+1),it=it.slice(0,Dt)),it&&!tt.hasOwnProperty(it))throw new Error("unknown type: "+it);return{type:it,name:pt}})}function Me(Ke,tt){for(var it,pt=0,Dt=Ke.length;pt<Dt;++pt)if((it=Ke[pt]).name===tt)return it.value}function ve(Ke,tt,it){for(var pt=0,Dt=Ke.length;pt<Dt;++pt)if(Ke[pt].name===tt){Ke[pt]=He,Ke=Ke.slice(0,pt).concat(Ke.slice(pt+1));break}return it!=null&&Ke.push({name:tt,value:it}),Ke}be.prototype=Ne.prototype={constructor:be,on:function(Ke,tt){var it,pt=this._,Dt=_e(Ke+"",pt),Lt=-1,Gt=Dt.length;if(!(arguments.length<2)){if(tt!=null&&typeof tt!="function")throw new Error("invalid callback: "+tt);for(;++Lt<Gt;)if(it=(Ke=Dt[Lt]).type)pt[it]=ve(pt[it],Ke.name,tt);else if(tt==null)for(it in pt)pt[it]=ve(pt[it],Ke.name,null);return this}for(;++Lt<Gt;)if((it=(Ke=Dt[Lt]).type)&&(it=Me(pt[it],Ke.name)))return it},copy:function(){var Ke={},tt=this._;for(var it in tt)Ke[it]=tt[it].slice();return new be(Ke)},call:function(Ke,tt){if((it=arguments.length-2)>0)for(var it,pt,Dt=new Array(it),Lt=0;Lt<it;++Lt)Dt[Lt]=arguments[Lt+2];if(!this._.hasOwnProperty(Ke))throw new Error("unknown type: "+Ke);for(Lt=0,it=(pt=this._[Ke]).length;Lt<it;++Lt)pt[Lt].value.apply(tt,Dt)},apply:function(Ke,tt,it){if(!this._.hasOwnProperty(Ke))throw new Error("unknown type: "+Ke);for(var pt=this._[Ke],Dt=0,Lt=pt.length;Dt<Lt;++Dt)pt[Dt].value.apply(tt,it)}};var Ee="http://www.w3.org/1999/xhtml",Pe={svg:"http://www.w3.org/2000/svg",xhtml:Ee,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function xe(Ke){var tt=Ke+="",it=tt.indexOf(":");return it>=0&&(tt=Ke.slice(0,it))!=="xmlns"&&(Ke=Ke.slice(it+1)),Pe.hasOwnProperty(tt)?{space:Pe[tt],local:Ke}:Ke}function pe(Ke){return function(){var tt=this.ownerDocument,it=this.namespaceURI;return it===Ee&&tt.documentElement.namespaceURI===Ee?tt.createElement(Ke):tt.createElementNS(it,Ke)}}function Ae(Ke){return function(){return this.ownerDocument.createElementNS(Ke.space,Ke.local)}}function Se(Ke){var tt=xe(Ke);return(tt.local?Ae:pe)(tt)}function ce(){}function te(Ke){return Ke==null?ce:function(){return this.querySelector(Ke)}}function ne(Ke){return Ke==null?[]:Array.isArray(Ke)?Ke:Array.from(Ke)}function le(){return[]}function se(Ke){return Ke==null?le:function(){return this.querySelectorAll(Ke)}}function fe(Ke){return function(){return this.matches(Ke)}}function he(Ke){return function(tt){return tt.matches(Ke)}}var ie=Array.prototype.find;function ue(){return this.firstElementChild}var me=Array.prototype.filter;function Ce(){return Array.from(this.children)}function Ie(Ke){return new Array(Ke.length)}function Fe(Ke,tt){this.ownerDocument=Ke.ownerDocument,this.namespaceURI=Ke.namespaceURI,this._next=null,this._parent=Ke,this.__data__=tt}function Re(Ke){return function(){return Ke}}function Ue(Ke,tt,it,pt,Dt,Lt){for(var Gt,zt=0,nn=tt.length,Kt=Lt.length;zt<Kt;++zt)(Gt=tt[zt])?(Gt.__data__=Lt[zt],pt[zt]=Gt):it[zt]=new Fe(Ke,Lt[zt]);for(;zt<nn;++zt)(Gt=tt[zt])&&(Dt[zt]=Gt)}function Ge(Ke,tt,it,pt,Dt,Lt,Gt){var zt,nn,Kt,un=new Map,wn=tt.length,xn=Lt.length,Zn=new Array(wn);for(zt=0;zt<wn;++zt)(nn=tt[zt])&&(Zn[zt]=Kt=Gt.call(nn,nn.__data__,zt,tt)+"",un.has(Kt)?Dt[zt]=nn:un.set(Kt,nn));for(zt=0;zt<xn;++zt)Kt=Gt.call(Ke,Lt[zt],zt,Lt)+"",(nn=un.get(Kt))?(pt[zt]=nn,nn.__data__=Lt[zt],un.delete(Kt)):it[zt]=new Fe(Ke,Lt[zt]);for(zt=0;zt<wn;++zt)(nn=tt[zt])&&un.get(Zn[zt])===nn&&(Dt[zt]=nn)}function Je(Ke){return Ke.__data__}function Qe(Ke){return typeof Ke=="object"&&"length"in Ke?Ke:Array.from(Ke)}function rt(Ke,tt){return Ke<tt?-1:Ke>tt?1:Ke>=tt?0:NaN}function $e(Ke){return function(){this.removeAttribute(Ke)}}function qe(Ke){return function(){this.removeAttributeNS(Ke.space,Ke.local)}}function ot(Ke,tt){return function(){this.setAttribute(Ke,tt)}}function at(Ke,tt){return function(){this.setAttributeNS(Ke.space,Ke.local,tt)}}function ut(Ke,tt){return function(){var it=tt.apply(this,arguments);it==null?this.removeAttribute(Ke):this.setAttribute(Ke,it)}}function nt(Ke,tt){return function(){var it=tt.apply(this,arguments);it==null?this.removeAttributeNS(Ke.space,Ke.local):this.setAttributeNS(Ke.space,Ke.local,it)}}function lt(Ke){return Ke.ownerDocument&&Ke.ownerDocument.defaultView||Ke.document&&Ke||Ke.defaultView}function yt(Ke){return function(){this.style.removeProperty(Ke)}}function ft(Ke,tt,it){return function(){this.style.setProperty(Ke,tt,it)}}function ct(Ke,tt,it){return function(){var pt=tt.apply(this,arguments);pt==null?this.style.removeProperty(Ke):this.style.setProperty(Ke,pt,it)}}function vt(Ke,tt){return Ke.style.getPropertyValue(tt)||lt(Ke).getComputedStyle(Ke,null).getPropertyValue(tt)}function Ut(Ke){return function(){delete this[Ke]}}function Zt(Ke,tt){return function(){this[Ke]=tt}}function en(Ke,tt){return function(){var it=tt.apply(this,arguments);it==null?delete this[Ke]:this[Ke]=it}}function mn(Ke){return Ke.trim().split(/^|\s+/)}function Bt(Ke){return Ke.classList||new tn(Ke)}function tn(Ke){this._node=Ke,this._names=mn(Ke.getAttribute("class")||"")}function on(Ke,tt){for(var it=Bt(Ke),pt=-1,Dt=tt.length;++pt<Dt;)it.add(tt[pt])}function Mn(Ke,tt){for(var it=Bt(Ke),pt=-1,Dt=tt.length;++pt<Dt;)it.remove(tt[pt])}function Dn(Ke){return function(){on(this,Ke)}}function sn(Ke){return function(){Mn(this,Ke)}}function rn(Ke,tt){return function(){(tt.apply(this,arguments)?on:Mn)(this,Ke)}}function Ht(){this.textContent=""}function Tt(Ke){return function(){this.textContent=Ke}}function St(Ke){return function(){var tt=Ke.apply(this,arguments);this.textContent=tt==null?"":tt}}function Qt(){this.innerHTML=""}function gt(Ke){return function(){this.innerHTML=Ke}}function bt(Ke){return function(){var tt=Ke.apply(this,arguments);this.innerHTML=tt==null?"":tt}}function Yt(){this.nextSibling&&this.parentNode.appendChild(this)}function kt(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function Mt(){return null}function ln(){var Ke=this.parentNode;Ke&&Ke.removeChild(this)}function zn(){var Ke=this.cloneNode(!1),tt=this.parentNode;return tt?tt.insertBefore(Ke,this.nextSibling):Ke}function Gn(){var Ke=this.cloneNode(!0),tt=this.parentNode;return tt?tt.insertBefore(Ke,this.nextSibling):Ke}function Hn(Ke){return Ke.trim().split(/^|\s+/).map(function(tt){var it="",pt=tt.indexOf(".");return pt>=0&&(it=tt.slice(pt+1),tt=tt.slice(0,pt)),{type:tt,name:it}})}function nr(Ke){return function(){var tt=this.__on;if(tt){for(var it,pt=0,Dt=-1,Lt=tt.length;pt<Lt;++pt)it=tt[pt],Ke.type&&it.type!==Ke.type||it.name!==Ke.name?tt[++Dt]=it:this.removeEventListener(it.type,it.listener,it.options);++Dt?tt.length=Dt:delete this.__on}}}function Xn(Ke,tt,it){return function(){var pt,Dt=this.__on,Lt=function(nn){return function(Kt){nn.call(this,Kt,this.__data__)}}(tt);if(Dt){for(var Gt=0,zt=Dt.length;Gt<zt;++Gt)if((pt=Dt[Gt]).type===Ke.type&&pt.name===Ke.name)return this.removeEventListener(pt.type,pt.listener,pt.options),this.addEventListener(pt.type,pt.listener=Lt,pt.options=it),void(pt.value=tt)}this.addEventListener(Ke.type,Lt,it),pt={type:Ke.type,name:Ke.name,value:tt,listener:Lt,options:it},Dt?Dt.push(pt):this.__on=[pt]}}function qt(Ke,tt,it){var pt=lt(Ke),Dt=pt.CustomEvent;typeof Dt=="function"?Dt=new Dt(tt,it):(Dt=pt.document.createEvent("Event"),it?(Dt.initEvent(tt,it.bubbles,it.cancelable),Dt.detail=it.detail):Dt.initEvent(tt,!1,!1)),Ke.dispatchEvent(Dt)}function vn(Ke,tt){return function(){return qt(this,Ke,tt)}}function Un(Ke,tt){return function(){return qt(this,Ke,tt.apply(this,arguments))}}Fe.prototype={constructor:Fe,appendChild:function(Ke){return this._parent.insertBefore(Ke,this._next)},insertBefore:function(Ke,tt){return this._parent.insertBefore(Ke,tt)},querySelector:function(Ke){return this._parent.querySelector(Ke)},querySelectorAll:function(Ke){return this._parent.querySelectorAll(Ke)}},tn.prototype={add:function(Ke){this._names.indexOf(Ke)<0&&(this._names.push(Ke),this._node.setAttribute("class",this._names.join(" ")))},remove:function(Ke){var tt=this._names.indexOf(Ke);tt>=0&&(this._names.splice(tt,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(Ke){return this._names.indexOf(Ke)>=0}};var Ln=[null];function yr(Ke,tt){this._groups=Ke,this._parents=tt}function kr(){return new yr([[document.documentElement]],Ln)}function Dr(Ke){return typeof Ke=="string"?new yr([[document.querySelector(Ke)]],[document.documentElement]):new yr([[Ke]],Ln)}function Gr(Ke,tt){if(Ke=function(Lt){let Gt;for(;Gt=Lt.sourceEvent;)Lt=Gt;return Lt}(Ke),tt===void 0&&(tt=Ke.currentTarget),tt){var it=tt.ownerSVGElement||tt;if(it.createSVGPoint){var pt=it.createSVGPoint();return pt.x=Ke.clientX,pt.y=Ke.clientY,[(pt=pt.matrixTransform(tt.getScreenCTM().inverse())).x,pt.y]}if(tt.getBoundingClientRect){var Dt=tt.getBoundingClientRect();return[Ke.clientX-Dt.left-tt.clientLeft,Ke.clientY-Dt.top-tt.clientTop]}}return[Ke.pageX,Ke.pageY]}yr.prototype=kr.prototype={constructor:yr,select:function(Ke){typeof Ke!="function"&&(Ke=te(Ke));for(var tt=this._groups,it=tt.length,pt=new Array(it),Dt=0;Dt<it;++Dt)for(var Lt,Gt,zt=tt[Dt],nn=zt.length,Kt=pt[Dt]=new Array(nn),un=0;un<nn;++un)(Lt=zt[un])&&(Gt=Ke.call(Lt,Lt.__data__,un,zt))&&("__data__"in Lt&&(Gt.__data__=Lt.__data__),Kt[un]=Gt);return new yr(pt,this._parents)},selectAll:function(Ke){Ke=typeof Ke=="function"?function(un){return function(){return ne(un.apply(this,arguments))}}(Ke):se(Ke);for(var tt=this._groups,it=tt.length,pt=[],Dt=[],Lt=0;Lt<it;++Lt)for(var Gt,zt=tt[Lt],nn=zt.length,Kt=0;Kt<nn;++Kt)(Gt=zt[Kt])&&(pt.push(Ke.call(Gt,Gt.__data__,Kt,zt)),Dt.push(Gt));return new yr(pt,Dt)},selectChild:function(Ke){return this.select(Ke==null?ue:function(tt){return function(){return ie.call(this.children,tt)}}(typeof Ke=="function"?Ke:he(Ke)))},selectChildren:function(Ke){return this.selectAll(Ke==null?Ce:function(tt){return function(){return me.call(this.children,tt)}}(typeof Ke=="function"?Ke:he(Ke)))},filter:function(Ke){typeof Ke!="function"&&(Ke=fe(Ke));for(var tt=this._groups,it=tt.length,pt=new Array(it),Dt=0;Dt<it;++Dt)for(var Lt,Gt=tt[Dt],zt=Gt.length,nn=pt[Dt]=[],Kt=0;Kt<zt;++Kt)(Lt=Gt[Kt])&&Ke.call(Lt,Lt.__data__,Kt,Gt)&&nn.push(Lt);return new yr(pt,this._parents)},data:function(Ke,tt){if(!arguments.length)return Array.from(this,Je);var it=tt?Ge:Ue,pt=this._parents,Dt=this._groups;typeof Ke!="function"&&(Ke=Re(Ke));for(var Lt=Dt.length,Gt=new Array(Lt),zt=new Array(Lt),nn=new Array(Lt),Kt=0;Kt<Lt;++Kt){var un=pt[Kt],wn=Dt[Kt],xn=wn.length,Zn=Qe(Ke.call(un,un&&un.__data__,Kt,pt)),Wn=Zn.length,Bn=zt[Kt]=new Array(Wn),_n=Gt[Kt]=new Array(Wn),Rn=nn[Kt]=new Array(xn);it(un,wn,Bn,_n,Rn,Zn,tt);for(var Kn,Cr,Ur=0,Qa=0;Ur<Wn;++Ur)if(Kn=Bn[Ur]){for(Ur>=Qa&&(Qa=Ur+1);!(Cr=_n[Qa])&&++Qa<Wn;);Kn._next=Cr||null}}return(Gt=new yr(Gt,pt))._enter=zt,Gt._exit=nn,Gt},enter:function(){return new yr(this._enter||this._groups.map(Ie),this._parents)},exit:function(){return new yr(this._exit||this._groups.map(Ie),this._parents)},join:function(Ke,tt,it){var pt=this.enter(),Dt=this,Lt=this.exit();return typeof Ke=="function"?(pt=Ke(pt))&&(pt=pt.selection()):pt=pt.append(Ke+""),tt!=null&&(Dt=tt(Dt))&&(Dt=Dt.selection()),it==null?Lt.remove():it(Lt),pt&&Dt?pt.merge(Dt).order():Dt},merge:function(Ke){for(var tt=Ke.selection?Ke.selection():Ke,it=this._groups,pt=tt._groups,Dt=it.length,Lt=pt.length,Gt=Math.min(Dt,Lt),zt=new Array(Dt),nn=0;nn<Gt;++nn)for(var Kt,un=it[nn],wn=pt[nn],xn=un.length,Zn=zt[nn]=new Array(xn),Wn=0;Wn<xn;++Wn)(Kt=un[Wn]||wn[Wn])&&(Zn[Wn]=Kt);for(;nn<Dt;++nn)zt[nn]=it[nn];return new yr(zt,this._parents)},selection:function(){return this},order:function(){for(var Ke=this._groups,tt=-1,it=Ke.length;++tt<it;)for(var pt,Dt=Ke[tt],Lt=Dt.length-1,Gt=Dt[Lt];--Lt>=0;)(pt=Dt[Lt])&&(Gt&&4^pt.compareDocumentPosition(Gt)&&Gt.parentNode.insertBefore(pt,Gt),Gt=pt);return this},sort:function(Ke){function tt(wn,xn){return wn&&xn?Ke(wn.__data__,xn.__data__):!wn-!xn}Ke||(Ke=rt);for(var it=this._groups,pt=it.length,Dt=new Array(pt),Lt=0;Lt<pt;++Lt){for(var Gt,zt=it[Lt],nn=zt.length,Kt=Dt[Lt]=new Array(nn),un=0;un<nn;++un)(Gt=zt[un])&&(Kt[un]=Gt);Kt.sort(tt)}return new yr(Dt,this._parents).order()},call:function(){var Ke=arguments[0];return arguments[0]=this,Ke.apply(null,arguments),this},nodes:function(){return Array.from(this)},node:function(){for(var Ke=this._groups,tt=0,it=Ke.length;tt<it;++tt)for(var pt=Ke[tt],Dt=0,Lt=pt.length;Dt<Lt;++Dt){var Gt=pt[Dt];if(Gt)return Gt}return null},size:function(){let Ke=0;for(const tt of this)++Ke;return Ke},empty:function(){return!this.node()},each:function(Ke){for(var tt=this._groups,it=0,pt=tt.length;it<pt;++it)for(var Dt,Lt=tt[it],Gt=0,zt=Lt.length;Gt<zt;++Gt)(Dt=Lt[Gt])&&Ke.call(Dt,Dt.__data__,Gt,Lt);return this},attr:function(Ke,tt){var it=xe(Ke);if(arguments.length<2){var pt=this.node();return it.local?pt.getAttributeNS(it.space,it.local):pt.getAttribute(it)}return this.each((tt==null?it.local?qe:$e:typeof tt=="function"?it.local?nt:ut:it.local?at:ot)(it,tt))},style:function(Ke,tt,it){return arguments.length>1?this.each((tt==null?yt:typeof tt=="function"?ct:ft)(Ke,tt,it==null?"":it)):vt(this.node(),Ke)},property:function(Ke,tt){return arguments.length>1?this.each((tt==null?Ut:typeof tt=="function"?en:Zt)(Ke,tt)):this.node()[Ke]},classed:function(Ke,tt){var it=mn(Ke+"");if(arguments.length<2){for(var pt=Bt(this.node()),Dt=-1,Lt=it.length;++Dt<Lt;)if(!pt.contains(it[Dt]))return!1;return!0}return this.each((typeof tt=="function"?rn:tt?Dn:sn)(it,tt))},text:function(Ke){return arguments.length?this.each(Ke==null?Ht:(typeof Ke=="function"?St:Tt)(Ke)):this.node().textContent},html:function(Ke){return arguments.length?this.each(Ke==null?Qt:(typeof Ke=="function"?bt:gt)(Ke)):this.node().innerHTML},raise:function(){return this.each(Yt)},lower:function(){return this.each(kt)},append:function(Ke){var tt=typeof Ke=="function"?Ke:Se(Ke);return this.select(function(){return this.appendChild(tt.apply(this,arguments))})},insert:function(Ke,tt){var it=typeof Ke=="function"?Ke:Se(Ke),pt=tt==null?Mt:typeof tt=="function"?tt:te(tt);return this.select(function(){return this.insertBefore(it.apply(this,arguments),pt.apply(this,arguments)||null)})},remove:function(){return this.each(ln)},clone:function(Ke){return this.select(Ke?Gn:zn)},datum:function(Ke){return arguments.length?this.property("__data__",Ke):this.node().__data__},on:function(Ke,tt,it){var pt,Dt,Lt=Hn(Ke+""),Gt=Lt.length;if(!(arguments.length<2)){for(zt=tt?Xn:nr,pt=0;pt<Gt;++pt)this.each(zt(Lt[pt],tt,it));return this}var zt=this.node().__on;if(zt){for(var nn,Kt=0,un=zt.length;Kt<un;++Kt)for(pt=0,nn=zt[Kt];pt<Gt;++pt)if((Dt=Lt[pt]).type===nn.type&&Dt.name===nn.name)return nn.value}},dispatch:function(Ke,tt){return this.each((typeof tt=="function"?Un:vn)(Ke,tt))},[Symbol.iterator]:function*(){for(var Ke=this._groups,tt=0,it=Ke.length;tt<it;++tt)for(var pt,Dt=Ke[tt],Lt=0,Gt=Dt.length;Lt<Gt;++Lt)(pt=Dt[Lt])&&(yield pt)}};const Ma={passive:!1},Ja={capture:!0,passive:!1};function Na(Ke){Ke.stopImmediatePropagation()}function Da(Ke){Ke.preventDefault(),Ke.stopImmediatePropagation()}function Di(Ke){var tt=Ke.document.documentElement,it=Dr(Ke).on("dragstart.drag",Da,Ja);"onselectstart"in tt?it.on("selectstart.drag",Da,Ja):(tt.__noselect=tt.style.MozUserSelect,tt.style.MozUserSelect="none")}function _a(Ke,tt){var it=Ke.document.documentElement,pt=Dr(Ke).on("dragstart.drag",null);tt&&(pt.on("click.drag",Da,Ja),setTimeout(function(){pt.on("click.drag",null)},0)),"onselectstart"in it?pt.on("selectstart.drag",null):(it.style.MozUserSelect=it.__noselect,delete it.__noselect)}var Vr=Ke=>()=>Ke;function Ya(Ke,{sourceEvent:tt,subject:it,target:pt,identifier:Dt,active:Lt,x:Gt,y:zt,dx:nn,dy:Kt,dispatch:un}){Object.defineProperties(this,{type:{value:Ke,enumerable:!0,configurable:!0},sourceEvent:{value:tt,enumerable:!0,configurable:!0},subject:{value:it,enumerable:!0,configurable:!0},target:{value:pt,enumerable:!0,configurable:!0},identifier:{value:Dt,enumerable:!0,configurable:!0},active:{value:Lt,enumerable:!0,configurable:!0},x:{value:Gt,enumerable:!0,configurable:!0},y:{value:zt,enumerable:!0,configurable:!0},dx:{value:nn,enumerable:!0,configurable:!0},dy:{value:Kt,enumerable:!0,configurable:!0},_:{value:un}})}function ui(Ke){return!Ke.ctrlKey&&!Ke.button}function mr(){return this.parentNode}function Er(Ke,tt){return tt==null?{x:Ke.x,y:Ke.y}:tt}function ba(){return navigator.maxTouchPoints||"ontouchstart"in this}function Fn(Ke,tt,it){Ke.prototype=tt.prototype=it,it.constructor=Ke}function gr(Ke,tt){var it=Object.create(Ke.prototype);for(var pt in tt)it[pt]=tt[pt];return it}function br(){}Ya.prototype.on=function(){var Ke=this._.on.apply(this._,arguments);return Ke===this._?this:Ke};var _r=.7,ha=1/_r,Ct="\\s*([+-]?\\d+)\\s*",we="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",Be="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",Le=/^#([0-9a-f]{3,8})$/,je=new RegExp(`^rgb\\(${Ct},${Ct},${Ct}\\)$`),Xe=new RegExp(`^rgb\\(${Be},${Be},${Be}\\)$`),Et=new RegExp(`^rgba\\(${Ct},${Ct},${Ct},${we}\\)$`),xt=new RegExp(`^rgba\\(${Be},${Be},${Be},${we}\\)$`),Jt=new RegExp(`^hsl\\(${we},${Be},${Be}\\)$`),Vt=new RegExp(`^hsla\\(${we},${Be},${Be},${we}\\)$`),fn={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};function dn(){return this.rgb().formatHex()}function Vn(){return this.rgb().formatRgb()}function Pn(Ke){var tt,it;return Ke=(Ke+"").trim().toLowerCase(),(tt=Le.exec(Ke))?(it=tt[1].length,tt=parseInt(tt[1],16),it===6?Jn(tt):it===3?new an(tt>>8&15|tt>>4&240,tt>>4&15|240&tt,(15&tt)<<4|15&tt,1):it===8?$n(tt>>24&255,tt>>16&255,tt>>8&255,(255&tt)/255):it===4?$n(tt>>12&15|tt>>8&240,tt>>8&15|tt>>4&240,tt>>4&15|240&tt,((15&tt)<<4|15&tt)/255):null):(tt=je.exec(Ke))?new an(tt[1],tt[2],tt[3],1):(tt=Xe.exec(Ke))?new an(255*tt[1]/100,255*tt[2]/100,255*tt[3]/100,1):(tt=Et.exec(Ke))?$n(tt[1],tt[2],tt[3],tt[4]):(tt=xt.exec(Ke))?$n(255*tt[1]/100,255*tt[2]/100,255*tt[3]/100,tt[4]):(tt=Jt.exec(Ke))?dr(tt[1],tt[2]/100,tt[3]/100,1):(tt=Vt.exec(Ke))?dr(tt[1],tt[2]/100,tt[3]/100,tt[4]):fn.hasOwnProperty(Ke)?Jn(fn[Ke]):Ke==="transparent"?new an(NaN,NaN,NaN,0):null}function Jn(Ke){return new an(Ke>>16&255,Ke>>8&255,255&Ke,1)}function $n(Ke,tt,it,pt){return pt<=0&&(Ke=tt=it=NaN),new an(Ke,tt,it,pt)}function hr(Ke){return Ke instanceof br||(Ke=Pn(Ke)),Ke?new an((Ke=Ke.rgb()).r,Ke.g,Ke.b,Ke.opacity):new an}function hn(Ke,tt,it,pt){return arguments.length===1?hr(Ke):new an(Ke,tt,it,pt==null?1:pt)}function an(Ke,tt,it,pt){this.r=+Ke,this.g=+tt,this.b=+it,this.opacity=+pt}function In(){return`#${Qn(this.r)}${Qn(this.g)}${Qn(this.b)}`}function jn(){const Ke=cr(this.opacity);return`${Ke===1?"rgb(":"rgba("}${or(this.r)}, ${or(this.g)}, ${or(this.b)}${Ke===1?")":`, ${Ke})`}`}function cr(Ke){return isNaN(Ke)?1:Math.max(0,Math.min(1,Ke))}function or(Ke){return Math.max(0,Math.min(255,Math.round(Ke)||0))}function Qn(Ke){return((Ke=or(Ke))<16?"0":"")+Ke.toString(16)}function dr(Ke,tt,it,pt){return pt<=0?Ke=tt=it=NaN:it<=0||it>=1?Ke=tt=NaN:tt<=0&&(Ke=NaN),new On(Ke,tt,it,pt)}function xr(Ke){if(Ke instanceof On)return new On(Ke.h,Ke.s,Ke.l,Ke.opacity);if(Ke instanceof br||(Ke=Pn(Ke)),!Ke)return new On;if(Ke instanceof On)return Ke;var tt=(Ke=Ke.rgb()).r/255,it=Ke.g/255,pt=Ke.b/255,Dt=Math.min(tt,it,pt),Lt=Math.max(tt,it,pt),Gt=NaN,zt=Lt-Dt,nn=(Lt+Dt)/2;return zt?(Gt=tt===Lt?(it-pt)/zt+6*(it<pt):it===Lt?(pt-tt)/zt+2:(tt-it)/zt+4,zt/=nn<.5?Lt+Dt:2-Lt-Dt,Gt*=60):zt=nn>0&&nn<1?0:Gt,new On(Gt,zt,nn,Ke.opacity)}function On(Ke,tt,it,pt){this.h=+Ke,this.s=+tt,this.l=+it,this.opacity=+pt}function vr(Ke){return(Ke=(Ke||0)%360)<0?Ke+360:Ke}function Yn(Ke){return Math.max(0,Math.min(1,Ke||0))}function jr(Ke,tt,it){return 255*(Ke<60?tt+(it-tt)*Ke/60:Ke<180?it:Ke<240?tt+(it-tt)*(240-Ke)/60:tt)}Fn(br,Pn,{copy(Ke){return Object.assign(new this.constructor,this,Ke)},displayable(){return this.rgb().displayable()},hex:dn,formatHex:dn,formatHex8:function(){return this.rgb().formatHex8()},formatHsl:function(){return xr(this).formatHsl()},formatRgb:Vn,toString:Vn}),Fn(an,hn,gr(br,{brighter(Ke){return Ke=Ke==null?ha:Math.pow(ha,Ke),new an(this.r*Ke,this.g*Ke,this.b*Ke,this.opacity)},darker(Ke){return Ke=Ke==null?_r:Math.pow(_r,Ke),new an(this.r*Ke,this.g*Ke,this.b*Ke,this.opacity)},rgb(){return this},clamp(){return new an(or(this.r),or(this.g),or(this.b),cr(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:In,formatHex:In,formatHex8:function(){return`#${Qn(this.r)}${Qn(this.g)}${Qn(this.b)}${Qn(255*(isNaN(this.opacity)?1:this.opacity))}`},formatRgb:jn,toString:jn})),Fn(On,function(Ke,tt,it,pt){return arguments.length===1?xr(Ke):new On(Ke,tt,it,pt==null?1:pt)},gr(br,{brighter(Ke){return Ke=Ke==null?ha:Math.pow(ha,Ke),new On(this.h,this.s,this.l*Ke,this.opacity)},darker(Ke){return Ke=Ke==null?_r:Math.pow(_r,Ke),new On(this.h,this.s,this.l*Ke,this.opacity)},rgb(){var Ke=this.h%360+360*(this.h<0),tt=isNaN(Ke)||isNaN(this.s)?0:this.s,it=this.l,pt=it+(it<.5?it:1-it)*tt,Dt=2*it-pt;return new an(jr(Ke>=240?Ke-240:Ke+120,Dt,pt),jr(Ke,Dt,pt),jr(Ke<120?Ke+240:Ke-120,Dt,pt),this.opacity)},clamp(){return new On(vr(this.h),Yn(this.s),Yn(this.l),cr(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const Ke=cr(this.opacity);return`${Ke===1?"hsl(":"hsla("}${vr(this.h)}, ${100*Yn(this.s)}%, ${100*Yn(this.l)}%${Ke===1?")":`, ${Ke})`}`}}));var ri=Ke=>()=>Ke;function vi(Ke){return(Ke=+Ke)==1?ci:function(tt,it){return it-tt?function(pt,Dt,Lt){return pt=Math.pow(pt,Lt),Dt=Math.pow(Dt,Lt)-pt,Lt=1/Lt,function(Gt){return Math.pow(pt+Gt*Dt,Lt)}}(tt,it,Ke):ri(isNaN(tt)?it:tt)}}function ci(Ke,tt){var it=tt-Ke;return it?function(pt,Dt){return function(Lt){return pt+Lt*Dt}}(Ke,it):ri(isNaN(Ke)?tt:Ke)}var Kr=function Ke(tt){var it=vi(tt);function pt(Dt,Lt){var Gt=it((Dt=hn(Dt)).r,(Lt=hn(Lt)).r),zt=it(Dt.g,Lt.g),nn=it(Dt.b,Lt.b),Kt=ci(Dt.opacity,Lt.opacity);return function(un){return Dt.r=Gt(un),Dt.g=zt(un),Dt.b=nn(un),Dt.opacity=Kt(un),Dt+""}}return pt.gamma=Ke,pt}(1);function Ia(Ke,tt){tt||(tt=[]);var it,pt=Ke?Math.min(tt.length,Ke.length):0,Dt=tt.slice();return function(Lt){for(it=0;it<pt;++it)Dt[it]=Ke[it]*(1-Lt)+tt[it]*Lt;return Dt}}function Ta(Ke,tt){var it,pt=tt?tt.length:0,Dt=Ke?Math.min(pt,Ke.length):0,Lt=new Array(Dt),Gt=new Array(pt);for(it=0;it<Dt;++it)Lt[it]=Uo(Ke[it],tt[it]);for(;it<pt;++it)Gt[it]=tt[it];return function(zt){for(it=0;it<Dt;++it)Gt[it]=Lt[it](zt);return Gt}}function la(Ke,tt){var it=new Date;return Ke=+Ke,tt=+tt,function(pt){return it.setTime(Ke*(1-pt)+tt*pt),it}}function ei(Ke,tt){return Ke=+Ke,tt=+tt,function(it){return Ke*(1-it)+tt*it}}function Wi(Ke,tt){var it,pt={},Dt={};for(it in Ke!==null&&typeof Ke=="object"||(Ke={}),tt!==null&&typeof tt=="object"||(tt={}),tt)it in Ke?pt[it]=Uo(Ke[it],tt[it]):Dt[it]=tt[it];return function(Lt){for(it in pt)Dt[it]=pt[it](Lt);return Dt}}var za=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,_i=new RegExp(za.source,"g");function $i(Ke,tt){var it,pt,Dt,Lt=za.lastIndex=_i.lastIndex=0,Gt=-1,zt=[],nn=[];for(Ke+="",tt+="";(it=za.exec(Ke))&&(pt=_i.exec(tt));)(Dt=pt.index)>Lt&&(Dt=tt.slice(Lt,Dt),zt[Gt]?zt[Gt]+=Dt:zt[++Gt]=Dt),(it=it[0])===(pt=pt[0])?zt[Gt]?zt[Gt]+=pt:zt[++Gt]=pt:(zt[++Gt]=null,nn.push({i:Gt,x:ei(it,pt)})),Lt=_i.lastIndex;return Lt<tt.length&&(Dt=tt.slice(Lt),zt[Gt]?zt[Gt]+=Dt:zt[++Gt]=Dt),zt.length<2?nn[0]?function(Kt){return function(un){return Kt(un)+""}}(nn[0].x):function(Kt){return function(){return Kt}}(tt):(tt=nn.length,function(Kt){for(var un,wn=0;wn<tt;++wn)zt[(un=nn[wn]).i]=un.x(Kt);return zt.join("")})}function Uo(Ke,tt){var it,pt=typeof tt;return tt==null||pt==="boolean"?ri(tt):(pt==="number"?ei:pt==="string"?(it=Pn(tt))?(tt=it,Kr):$i:tt instanceof Pn?Kr:tt instanceof Date?la:function(Dt){return ArrayBuffer.isView(Dt)&&!(Dt instanceof DataView)}(tt)?Ia:Array.isArray(tt)?Ta:typeof tt.valueOf!="function"&&typeof tt.toString!="function"||isNaN(tt)?Wi:ei)(Ke,tt)}var yo,sl=180/Math.PI,ds={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function bo(Ke,tt,it,pt,Dt,Lt){var Gt,zt,nn;return(Gt=Math.sqrt(Ke*Ke+tt*tt))&&(Ke/=Gt,tt/=Gt),(nn=Ke*it+tt*pt)&&(it-=Ke*nn,pt-=tt*nn),(zt=Math.sqrt(it*it+pt*pt))&&(it/=zt,pt/=zt,nn/=zt),Ke*pt<tt*it&&(Ke=-Ke,tt=-tt,nn=-nn,Gt=-Gt),{translateX:Dt,translateY:Lt,rotate:Math.atan2(tt,Ke)*sl,skewX:Math.atan(nn)*sl,scaleX:Gt,scaleY:zt}}function hs(Ke,tt,it,pt){function Dt(Lt){return Lt.length?Lt.pop()+" ":""}return function(Lt,Gt){var zt=[],nn=[];return Lt=Ke(Lt),Gt=Ke(Gt),function(Kt,un,wn,xn,Zn,Wn){if(Kt!==wn||un!==xn){var Bn=Zn.push("translate(",null,tt,null,it);Wn.push({i:Bn-4,x:ei(Kt,wn)},{i:Bn-2,x:ei(un,xn)})}else(wn||xn)&&Zn.push("translate("+wn+tt+xn+it)}(Lt.translateX,Lt.translateY,Gt.translateX,Gt.translateY,zt,nn),function(Kt,un,wn,xn){Kt!==un?(Kt-un>180?un+=360:un-Kt>180&&(Kt+=360),xn.push({i:wn.push(Dt(wn)+"rotate(",null,pt)-2,x:ei(Kt,un)})):un&&wn.push(Dt(wn)+"rotate("+un+pt)}(Lt.rotate,Gt.rotate,zt,nn),function(Kt,un,wn,xn){Kt!==un?xn.push({i:wn.push(Dt(wn)+"skewX(",null,pt)-2,x:ei(Kt,un)}):un&&wn.push(Dt(wn)+"skewX("+un+pt)}(Lt.skewX,Gt.skewX,zt,nn),function(Kt,un,wn,xn,Zn,Wn){if(Kt!==wn||un!==xn){var Bn=Zn.push(Dt(Zn)+"scale(",null,",",null,")");Wn.push({i:Bn-4,x:ei(Kt,wn)},{i:Bn-2,x:ei(un,xn)})}else wn===1&&xn===1||Zn.push(Dt(Zn)+"scale("+wn+","+xn+")")}(Lt.scaleX,Lt.scaleY,Gt.scaleX,Gt.scaleY,zt,nn),Lt=Gt=null,function(Kt){for(var un,wn=-1,xn=nn.length;++wn<xn;)zt[(un=nn[wn]).i]=un.x(Kt);return zt.join("")}}}var ss=hs(function(Ke){const tt=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(Ke+"");return tt.isIdentity?ds:bo(tt.a,tt.b,tt.c,tt.d,tt.e,tt.f)},"px, ","px)","deg)"),Yo=hs(function(Ke){return Ke==null?ds:(yo||(yo=document.createElementNS("http://www.w3.org/2000/svg","g")),yo.setAttribute("transform",Ke),(Ke=yo.transform.baseVal.consolidate())?bo((Ke=Ke.matrix).a,Ke.b,Ke.c,Ke.d,Ke.e,Ke.f):ds)},", ",")",")");function Wo(Ke){return((Ke=Math.exp(Ke))+1/Ke)/2}var Rs,tl,Pl=function Ke(tt,it,pt){function Dt(Lt,Gt){var zt,nn,Kt=Lt[0],un=Lt[1],wn=Lt[2],xn=Gt[0],Zn=Gt[1],Wn=Gt[2],Bn=xn-Kt,_n=Zn-un,Rn=Bn*Bn+_n*_n;if(Rn<1e-12)nn=Math.log(Wn/wn)/tt,zt=function(pa){return[Kt+pa*Bn,un+pa*_n,wn*Math.exp(tt*pa*nn)]};else{var Kn=Math.sqrt(Rn),Cr=(Wn*Wn-wn*wn+pt*Rn)/(2*wn*it*Kn),Ur=(Wn*Wn-wn*wn-pt*Rn)/(2*Wn*it*Kn),Qa=Math.log(Math.sqrt(Cr*Cr+1)-Cr),ea=Math.log(Math.sqrt(Ur*Ur+1)-Ur);nn=(ea-Qa)/tt,zt=function(pa){var oi=pa*nn,$a=Wo(Qa),Mr=wn/(it*Kn)*($a*function(aa){return((aa=Math.exp(2*aa))-1)/(aa+1)}(tt*oi+Qa)-function(aa){return((aa=Math.exp(aa))-1/aa)/2}(Qa));return[Kt+Mr*Bn,un+Mr*_n,wn*$a/Wo(tt*oi+Qa)]}}return zt.duration=1e3*nn*tt/Math.SQRT2,zt}return Dt.rho=function(Lt){var Gt=Math.max(.001,+Lt),zt=Gt*Gt;return Ke(Gt,zt,zt*zt)},Dt}(Math.SQRT2,2,4),Gs=0,il=0,nl=0,uo=0,Xo=0,Ho=0,Xs=typeof performance=="object"&&performance.now?performance:Date,Il=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(Ke){setTimeout(Ke,17)};function _l(){return Xo||(Il(Go),Xo=Xs.now()+Ho)}function Go(){Xo=0}function lu(){this._call=this._time=this._next=null}function Os(Ke,tt,it){var pt=new lu;return pt.restart(Ke,tt,it),pt}function Vs(){Xo=(uo=Xs.now())+Ho,Gs=il=0;try{(function(){_l(),++Gs;for(var Ke,tt=Rs;tt;)(Ke=Xo-tt._time)>=0&&tt._call.call(void 0,Ke),tt=tt._next;--Gs})()}finally{Gs=0,function(){for(var Ke,tt,it=Rs,pt=1/0;it;)it._call?(pt>it._time&&(pt=it._time),Ke=it,it=it._next):(tt=it._next,it._next=null,it=Ke?Ke._next=tt:Rs=tt);tl=Ke,Al(pt)}(),Xo=0}}function Mu(){var Ke=Xs.now(),tt=Ke-uo;tt>1e3&&(Ho-=tt,uo=Ke)}function Al(Ke){Gs||(il&&(il=clearTimeout(il)),Ke-Xo>24?(Ke<1/0&&(il=setTimeout(Vs,Ke-Xs.now()-Ho)),nl&&(nl=clearInterval(nl))):(nl||(uo=Xs.now(),nl=setInterval(Mu,1e3)),Gs=1,Il(Vs)))}function ol(Ke,tt,it){var pt=new lu;return tt=tt==null?0:+tt,pt.restart(Dt=>{pt.stop(),Ke(Dt+tt)},tt,it),pt}lu.prototype=Os.prototype={constructor:lu,restart:function(Ke,tt,it){if(typeof Ke!="function")throw new TypeError("callback is not a function");it=(it==null?_l():+it)+(tt==null?0:+tt),this._next||tl===this||(tl?tl._next=this:Rs=this,tl=this),this._call=Ke,this._time=it,Al()},stop:function(){this._call&&(this._call=null,this._time=1/0,Al())}};var uc=Ne("start","end","cancel","interrupt"),zi=[];function Ga(Ke,tt,it,pt,Dt,Lt){var Gt=Ke.__transition;if(Gt){if(it in Gt)return}else Ke.__transition={};(function(zt,nn,Kt){var un,wn=zt.__transition;function xn(_n){Kt.state=1,Kt.timer.restart(Zn,Kt.delay,Kt.time),Kt.delay<=_n&&Zn(_n-Kt.delay)}function Zn(_n){var Rn,Kn,Cr,Ur;if(Kt.state!==1)return Bn();for(Rn in wn)if((Ur=wn[Rn]).name===Kt.name){if(Ur.state===3)return ol(Zn);Ur.state===4?(Ur.state=6,Ur.timer.stop(),Ur.on.call("interrupt",zt,zt.__data__,Ur.index,Ur.group),delete wn[Rn]):+Rn<nn&&(Ur.state=6,Ur.timer.stop(),Ur.on.call("cancel",zt,zt.__data__,Ur.index,Ur.group),delete wn[Rn])}if(ol(function(){Kt.state===3&&(Kt.state=4,Kt.timer.restart(Wn,Kt.delay,Kt.time),Wn(_n))}),Kt.state=2,Kt.on.call("start",zt,zt.__data__,Kt.index,Kt.group),Kt.state===2){for(Kt.state=3,un=new Array(Cr=Kt.tween.length),Rn=0,Kn=-1;Rn<Cr;++Rn)(Ur=Kt.tween[Rn].value.call(zt,zt.__data__,Kt.index,Kt.group))&&(un[++Kn]=Ur);un.length=Kn+1}}function Wn(_n){for(var Rn=_n<Kt.duration?Kt.ease.call(null,_n/Kt.duration):(Kt.timer.restart(Bn),Kt.state=5,1),Kn=-1,Cr=un.length;++Kn<Cr;)un[Kn].call(zt,Rn);Kt.state===5&&(Kt.on.call("end",zt,zt.__data__,Kt.index,Kt.group),Bn())}function Bn(){for(var _n in Kt.state=6,Kt.timer.stop(),delete wn[nn],wn)return;delete zt.__transition}wn[nn]=Kt,Kt.timer=Os(xn,0,Kt.time)})(Ke,it,{name:tt,index:pt,group:Dt,on:uc,tween:zi,time:Lt.time,delay:Lt.delay,duration:Lt.duration,ease:Lt.ease,timer:null,state:0})}function ja(Ke,tt){var it=ao(Ke,tt);if(it.state>0)throw new Error("too late; already scheduled");return it}function Ua(Ke,tt){var it=ao(Ke,tt);if(it.state>3)throw new Error("too late; already running");return it}function ao(Ke,tt){var it=Ke.__transition;if(!it||!(it=it[tt]))throw new Error("transition not found");return it}function ko(Ke,tt){var it,pt,Dt,Lt=Ke.__transition,Gt=!0;if(Lt){for(Dt in tt=tt==null?null:tt+"",Lt)(it=Lt[Dt]).name===tt?(pt=it.state>2&&it.state<5,it.state=6,it.timer.stop(),it.on.call(pt?"interrupt":"cancel",Ke,Ke.__data__,it.index,it.group),delete Lt[Dt]):Gt=!1;Gt&&delete Ke.__transition}}function Ts(Ke,tt){var it,pt;return function(){var Dt=Ua(this,Ke),Lt=Dt.tween;if(Lt!==it){for(var Gt=0,zt=(pt=it=Lt).length;Gt<zt;++Gt)if(pt[Gt].name===tt){(pt=pt.slice()).splice(Gt,1);break}}Dt.tween=pt}}function ws(Ke,tt,it){var pt,Dt;if(typeof it!="function")throw new Error;return function(){var Lt=Ua(this,Ke),Gt=Lt.tween;if(Gt!==pt){Dt=(pt=Gt).slice();for(var zt={name:tt,value:it},nn=0,Kt=Dt.length;nn<Kt;++nn)if(Dt[nn].name===tt){Dt[nn]=zt;break}nn===Kt&&Dt.push(zt)}Lt.tween=Dt}}function Ks(Ke,tt,it){var pt=Ke._id;return Ke.each(function(){var Dt=Ua(this,pt);(Dt.value||(Dt.value={}))[tt]=it.apply(this,arguments)}),function(Dt){return ao(Dt,pt).value[tt]}}function Oo(Ke,tt){var it;return(typeof tt=="number"?ei:tt instanceof Pn?Kr:(it=Pn(tt))?(tt=it,Kr):$i)(Ke,tt)}function uu(Ke){return function(){this.removeAttribute(Ke)}}function fl(Ke){return function(){this.removeAttributeNS(Ke.space,Ke.local)}}function Co(Ke,tt,it){var pt,Dt,Lt=it+"";return function(){var Gt=this.getAttribute(Ke);return Gt===Lt?null:Gt===pt?Dt:Dt=tt(pt=Gt,it)}}function Jo(Ke,tt,it){var pt,Dt,Lt=it+"";return function(){var Gt=this.getAttributeNS(Ke.space,Ke.local);return Gt===Lt?null:Gt===pt?Dt:Dt=tt(pt=Gt,it)}}function Fs(Ke,tt,it){var pt,Dt,Lt;return function(){var Gt,zt,nn=it(this);if(nn!=null)return(Gt=this.getAttribute(Ke))===(zt=nn+"")?null:Gt===pt&&zt===Dt?Lt:(Dt=zt,Lt=tt(pt=Gt,nn));this.removeAttribute(Ke)}}function _o(Ke,tt,it){var pt,Dt,Lt;return function(){var Gt,zt,nn=it(this);if(nn!=null)return(Gt=this.getAttributeNS(Ke.space,Ke.local))===(zt=nn+"")?null:Gt===pt&&zt===Dt?Lt:(Dt=zt,Lt=tt(pt=Gt,nn));this.removeAttributeNS(Ke.space,Ke.local)}}function gs(Ke,tt){return function(it){this.setAttribute(Ke,tt.call(this,it))}}function Or(Ke,tt){return function(it){this.setAttributeNS(Ke.space,Ke.local,tt.call(this,it))}}function pr(Ke,tt){var it,pt;function Dt(){var Lt=tt.apply(this,arguments);return Lt!==pt&&(it=(pt=Lt)&&Or(Ke,Lt)),it}return Dt._value=tt,Dt}function Rr(Ke,tt){var it,pt;function Dt(){var Lt=tt.apply(this,arguments);return Lt!==pt&&(it=(pt=Lt)&&gs(Ke,Lt)),it}return Dt._value=tt,Dt}function ga(Ke,tt){return function(){ja(this,Ke).delay=+tt.apply(this,arguments)}}function pi(Ke,tt){return tt=+tt,function(){ja(this,Ke).delay=tt}}function Ca(Ke,tt){return function(){Ua(this,Ke).duration=+tt.apply(this,arguments)}}function rr(Ke,tt){return tt=+tt,function(){Ua(this,Ke).duration=tt}}function Li(Ke,tt){if(typeof tt!="function")throw new Error;return function(){Ua(this,Ke).ease=tt}}function io(Ke,tt,it){var pt,Dt,Lt=function(Gt){return(Gt+"").trim().split(/^|\s+/).every(function(zt){var nn=zt.indexOf(".");return nn>=0&&(zt=zt.slice(0,nn)),!zt||zt==="start"})}(tt)?ja:Ua;return function(){var Gt=Lt(this,Ke),zt=Gt.on;zt!==pt&&(Dt=(pt=zt).copy()).on(tt,it),Gt.on=Dt}}var Lo=kr.prototype.constructor;function Zi(Ke){return function(){this.style.removeProperty(Ke)}}function ai(Ke,tt,it){return function(pt){this.style.setProperty(Ke,tt.call(this,pt),it)}}function Bo(Ke,tt,it){var pt,Dt;function Lt(){var Gt=tt.apply(this,arguments);return Gt!==Dt&&(pt=(Dt=Gt)&&ai(Ke,Gt,it)),pt}return Lt._value=tt,Lt}function vs(Ke){return function(tt){this.textContent=Ke.call(this,tt)}}function rl(Ke){var tt,it;function pt(){var Dt=Ke.apply(this,arguments);return Dt!==it&&(tt=(it=Dt)&&vs(Dt)),tt}return pt._value=Ke,pt}var eo=0;function Hi(Ke,tt,it,pt){this._groups=Ke,this._parents=tt,this._name=it,this._id=pt}function xs(){return++eo}var zo=kr.prototype;Hi.prototype={constructor:Hi,select:function(Ke){var tt=this._name,it=this._id;typeof Ke!="function"&&(Ke=te(Ke));for(var pt=this._groups,Dt=pt.length,Lt=new Array(Dt),Gt=0;Gt<Dt;++Gt)for(var zt,nn,Kt=pt[Gt],un=Kt.length,wn=Lt[Gt]=new Array(un),xn=0;xn<un;++xn)(zt=Kt[xn])&&(nn=Ke.call(zt,zt.__data__,xn,Kt))&&("__data__"in zt&&(nn.__data__=zt.__data__),wn[xn]=nn,Ga(wn[xn],tt,it,xn,wn,ao(zt,it)));return new Hi(Lt,this._parents,tt,it)},selectAll:function(Ke){var tt=this._name,it=this._id;typeof Ke!="function"&&(Ke=se(Ke));for(var pt=this._groups,Dt=pt.length,Lt=[],Gt=[],zt=0;zt<Dt;++zt)for(var nn,Kt=pt[zt],un=Kt.length,wn=0;wn<un;++wn)if(nn=Kt[wn]){for(var xn,Zn=Ke.call(nn,nn.__data__,wn,Kt),Wn=ao(nn,it),Bn=0,_n=Zn.length;Bn<_n;++Bn)(xn=Zn[Bn])&&Ga(xn,tt,it,Bn,Zn,Wn);Lt.push(Zn),Gt.push(nn)}return new Hi(Lt,Gt,tt,it)},selectChild:zo.selectChild,selectChildren:zo.selectChildren,filter:function(Ke){typeof Ke!="function"&&(Ke=fe(Ke));for(var tt=this._groups,it=tt.length,pt=new Array(it),Dt=0;Dt<it;++Dt)for(var Lt,Gt=tt[Dt],zt=Gt.length,nn=pt[Dt]=[],Kt=0;Kt<zt;++Kt)(Lt=Gt[Kt])&&Ke.call(Lt,Lt.__data__,Kt,Gt)&&nn.push(Lt);return new Hi(pt,this._parents,this._name,this._id)},merge:function(Ke){if(Ke._id!==this._id)throw new Error;for(var tt=this._groups,it=Ke._groups,pt=tt.length,Dt=it.length,Lt=Math.min(pt,Dt),Gt=new Array(pt),zt=0;zt<Lt;++zt)for(var nn,Kt=tt[zt],un=it[zt],wn=Kt.length,xn=Gt[zt]=new Array(wn),Zn=0;Zn<wn;++Zn)(nn=Kt[Zn]||un[Zn])&&(xn[Zn]=nn);for(;zt<pt;++zt)Gt[zt]=tt[zt];return new Hi(Gt,this._parents,this._name,this._id)},selection:function(){return new Lo(this._groups,this._parents)},transition:function(){for(var Ke=this._name,tt=this._id,it=xs(),pt=this._groups,Dt=pt.length,Lt=0;Lt<Dt;++Lt)for(var Gt,zt=pt[Lt],nn=zt.length,Kt=0;Kt<nn;++Kt)if(Gt=zt[Kt]){var un=ao(Gt,tt);Ga(Gt,Ke,it,Kt,zt,{time:un.time+un.delay+un.duration,delay:0,duration:un.duration,ease:un.ease})}return new Hi(pt,this._parents,Ke,it)},call:zo.call,nodes:zo.nodes,node:zo.node,size:zo.size,empty:zo.empty,each:zo.each,on:function(Ke,tt){var it=this._id;return arguments.length<2?ao(this.node(),it).on.on(Ke):this.each(io(it,Ke,tt))},attr:function(Ke,tt){var it=xe(Ke),pt=it==="transform"?Yo:Oo;return this.attrTween(Ke,typeof tt=="function"?(it.local?_o:Fs)(it,pt,Ks(this,"attr."+Ke,tt)):tt==null?(it.local?fl:uu)(it):(it.local?Jo:Co)(it,pt,tt))},attrTween:function(Ke,tt){var it="attr."+Ke;if(arguments.length<2)return(it=this.tween(it))&&it._value;if(tt==null)return this.tween(it,null);if(typeof tt!="function")throw new Error;var pt=xe(Ke);return this.tween(it,(pt.local?pr:Rr)(pt,tt))},style:function(Ke,tt,it){var pt=(Ke+="")=="transform"?ss:Oo;return tt==null?this.styleTween(Ke,function(Dt,Lt){var Gt,zt,nn;return function(){var Kt=vt(this,Dt),un=(this.style.removeProperty(Dt),vt(this,Dt));return Kt===un?null:Kt===Gt&&un===zt?nn:nn=Lt(Gt=Kt,zt=un)}}(Ke,pt)).on("end.style."+Ke,Zi(Ke)):typeof tt=="function"?this.styleTween(Ke,function(Dt,Lt,Gt){var zt,nn,Kt;return function(){var un=vt(this,Dt),wn=Gt(this),xn=wn+"";return wn==null&&(this.style.removeProperty(Dt),xn=wn=vt(this,Dt)),un===xn?null:un===zt&&xn===nn?Kt:(nn=xn,Kt=Lt(zt=un,wn))}}(Ke,pt,Ks(this,"style."+Ke,tt))).each(function(Dt,Lt){var Gt,zt,nn,Kt,un="style."+Lt,wn="end."+un;return function(){var xn=Ua(this,Dt),Zn=xn.on,Wn=xn.value[un]==null?Kt||(Kt=Zi(Lt)):void 0;Zn===Gt&&nn===Wn||(zt=(Gt=Zn).copy()).on(wn,nn=Wn),xn.on=zt}}(this._id,Ke)):this.styleTween(Ke,function(Dt,Lt,Gt){var zt,nn,Kt=Gt+"";return function(){var un=vt(this,Dt);return un===Kt?null:un===zt?nn:nn=Lt(zt=un,Gt)}}(Ke,pt,tt),it).on("end.style."+Ke,null)},styleTween:function(Ke,tt,it){var pt="style."+(Ke+="");if(arguments.length<2)return(pt=this.tween(pt))&&pt._value;if(tt==null)return this.tween(pt,null);if(typeof tt!="function")throw new Error;return this.tween(pt,Bo(Ke,tt,it==null?"":it))},text:function(Ke){return this.tween("text",typeof Ke=="function"?function(tt){return function(){var it=tt(this);this.textContent=it==null?"":it}}(Ks(this,"text",Ke)):function(tt){return function(){this.textContent=tt}}(Ke==null?"":Ke+""))},textTween:function(Ke){var tt="text";if(arguments.length<1)return(tt=this.tween(tt))&&tt._value;if(Ke==null)return this.tween(tt,null);if(typeof Ke!="function")throw new Error;return this.tween(tt,rl(Ke))},remove:function(){return this.on("end.remove",function(Ke){return function(){var tt=this.parentNode;for(var it in this.__transition)if(+it!==Ke)return;tt&&tt.removeChild(this)}}(this._id))},tween:function(Ke,tt){var it=this._id;if(Ke+="",arguments.length<2){for(var pt,Dt=ao(this.node(),it).tween,Lt=0,Gt=Dt.length;Lt<Gt;++Lt)if((pt=Dt[Lt]).name===Ke)return pt.value;return null}return this.each((tt==null?Ts:ws)(it,Ke,tt))},delay:function(Ke){var tt=this._id;return arguments.length?this.each((typeof Ke=="function"?ga:pi)(tt,Ke)):ao(this.node(),tt).delay},duration:function(Ke){var tt=this._id;return arguments.length?this.each((typeof Ke=="function"?Ca:rr)(tt,Ke)):ao(this.node(),tt).duration},ease:function(Ke){var tt=this._id;return arguments.length?this.each(Li(tt,Ke)):ao(this.node(),tt).ease},easeVarying:function(Ke){if(typeof Ke!="function")throw new Error;return this.each(function(tt,it){return function(){var pt=it.apply(this,arguments);if(typeof pt!="function")throw new Error;Ua(this,tt).ease=pt}}(this._id,Ke))},end:function(){var Ke,tt,it=this,pt=it._id,Dt=it.size();return new Promise(function(Lt,Gt){var zt={value:Gt},nn={value:function(){--Dt==0&&Lt()}};it.each(function(){var Kt=Ua(this,pt),un=Kt.on;un!==Ke&&((tt=(Ke=un).copy())._.cancel.push(zt),tt._.interrupt.push(zt),tt._.end.push(nn)),Kt.on=tt}),Dt===0&&Lt()})},[Symbol.iterator]:zo[Symbol.iterator]};var hl={time:null,delay:0,duration:250,ease:function(Ke){return((Ke*=2)<=1?Ke*Ke*Ke:(Ke-=2)*Ke*Ke+2)/2}};function gl(Ke,tt){for(var it;!(it=Ke.__transition)||!(it=it[tt]);)if(!(Ke=Ke.parentNode))throw new Error(`transition ${tt} not found`);return it}kr.prototype.interrupt=function(Ke){return this.each(function(){ko(this,Ke)})},kr.prototype.transition=function(Ke){var tt,it;Ke instanceof Hi?(tt=Ke._id,Ke=Ke._name):(tt=xs(),(it=hl).time=_l(),Ke=Ke==null?null:Ke+"");for(var pt=this._groups,Dt=pt.length,Lt=0;Lt<Dt;++Lt)for(var Gt,zt=pt[Lt],nn=zt.length,Kt=0;Kt<nn;++Kt)(Gt=zt[Kt])&&Ga(Gt,Ke,tt,Kt,zt,it||gl(Gt,tt));return new Hi(pt,this._parents,Ke,tt)};const cc=Math.PI,Yc=2*cc,Du=1e-6,Xu=Yc-Du;function Nc(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function zd(){return new Nc}function ac(Ke,tt,it,pt){if(isNaN(tt)||isNaN(it))return Ke;var Dt,Lt,Gt,zt,nn,Kt,un,wn,xn,Zn=Ke._root,Wn={data:pt},Bn=Ke._x0,_n=Ke._y0,Rn=Ke._x1,Kn=Ke._y1;if(!Zn)return Ke._root=Wn,Ke;for(;Zn.length;)if((Kt=tt>=(Lt=(Bn+Rn)/2))?Bn=Lt:Rn=Lt,(un=it>=(Gt=(_n+Kn)/2))?_n=Gt:Kn=Gt,Dt=Zn,!(Zn=Zn[wn=un<<1|Kt]))return Dt[wn]=Wn,Ke;if(zt=+Ke._x.call(null,Zn.data),nn=+Ke._y.call(null,Zn.data),tt===zt&&it===nn)return Wn.next=Zn,Dt?Dt[wn]=Wn:Ke._root=Wn,Ke;do Dt=Dt?Dt[wn]=new Array(4):Ke._root=new Array(4),(Kt=tt>=(Lt=(Bn+Rn)/2))?Bn=Lt:Rn=Lt,(un=it>=(Gt=(_n+Kn)/2))?_n=Gt:Kn=Gt;while((wn=un<<1|Kt)==(xn=(nn>=Gt)<<1|zt>=Lt));return Dt[xn]=Zn,Dt[wn]=Wn,Ke}function zl(Ke,tt,it,pt,Dt){this.node=Ke,this.x0=tt,this.y0=it,this.x1=pt,this.y1=Dt}function vd(Ke){return Ke[0]}function jd(Ke){return Ke[1]}function Ju(Ke,tt,it){var pt=new cu(tt==null?vd:tt,it==null?jd:it,NaN,NaN,NaN,NaN);return Ke==null?pt:pt.addAll(Ke)}function cu(Ke,tt,it,pt,Dt,Lt){this._x=Ke,this._y=tt,this._x0=it,this._y0=pt,this._x1=Dt,this._y1=Lt,this._root=void 0}function Rc(Ke){for(var tt={data:Ke.data},it=tt;Ke=Ke.next;)it=it.next={data:Ke.data};return tt}Nc.prototype=zd.prototype={constructor:Nc,moveTo:function(Ke,tt){this._+="M"+(this._x0=this._x1=+Ke)+","+(this._y0=this._y1=+tt)},closePath:function(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},lineTo:function(Ke,tt){this._+="L"+(this._x1=+Ke)+","+(this._y1=+tt)},quadraticCurveTo:function(Ke,tt,it,pt){this._+="Q"+ +Ke+","+ +tt+","+(this._x1=+it)+","+(this._y1=+pt)},bezierCurveTo:function(Ke,tt,it,pt,Dt,Lt){this._+="C"+ +Ke+","+ +tt+","+ +it+","+ +pt+","+(this._x1=+Dt)+","+(this._y1=+Lt)},arcTo:function(Ke,tt,it,pt,Dt){Ke=+Ke,tt=+tt,it=+it,pt=+pt,Dt=+Dt;var Lt=this._x1,Gt=this._y1,zt=it-Ke,nn=pt-tt,Kt=Lt-Ke,un=Gt-tt,wn=Kt*Kt+un*un;if(Dt<0)throw new Error("negative radius: "+Dt);if(this._x1===null)this._+="M"+(this._x1=Ke)+","+(this._y1=tt);else if(wn>Du)if(Math.abs(un*zt-nn*Kt)>Du&&Dt){var xn=it-Lt,Zn=pt-Gt,Wn=zt*zt+nn*nn,Bn=xn*xn+Zn*Zn,_n=Math.sqrt(Wn),Rn=Math.sqrt(wn),Kn=Dt*Math.tan((cc-Math.acos((Wn+wn-Bn)/(2*_n*Rn)))/2),Cr=Kn/Rn,Ur=Kn/_n;Math.abs(Cr-1)>Du&&(this._+="L"+(Ke+Cr*Kt)+","+(tt+Cr*un)),this._+="A"+Dt+","+Dt+",0,0,"+ +(un*xn>Kt*Zn)+","+(this._x1=Ke+Ur*zt)+","+(this._y1=tt+Ur*nn)}else this._+="L"+(this._x1=Ke)+","+(this._y1=tt)},arc:function(Ke,tt,it,pt,Dt,Lt){Ke=+Ke,tt=+tt,Lt=!!Lt;var Gt=(it=+it)*Math.cos(pt),zt=it*Math.sin(pt),nn=Ke+Gt,Kt=tt+zt,un=1^Lt,wn=Lt?pt-Dt:Dt-pt;if(it<0)throw new Error("negative radius: "+it);this._x1===null?this._+="M"+nn+","+Kt:(Math.abs(this._x1-nn)>Du||Math.abs(this._y1-Kt)>Du)&&(this._+="L"+nn+","+Kt),it&&(wn<0&&(wn=wn%Yc+Yc),wn>Xu?this._+="A"+it+","+it+",0,1,"+un+","+(Ke-Gt)+","+(tt-zt)+"A"+it+","+it+",0,1,"+un+","+(this._x1=nn)+","+(this._y1=Kt):wn>Du&&(this._+="A"+it+","+it+",0,"+ +(wn>=cc)+","+un+","+(this._x1=Ke+it*Math.cos(Dt))+","+(this._y1=tt+it*Math.sin(Dt))))},rect:function(Ke,tt,it,pt){this._+="M"+(this._x0=this._x1=+Ke)+","+(this._y0=this._y1=+tt)+"h"+ +it+"v"+ +pt+"h"+-it+"Z"},toString:function(){return this._}};var ql=Ju.prototype=cu.prototype;function du(Ke){return function(){return Ke}}function au(Ke){return 1e-6*(Ke()-.5)}function md(Ke){return Ke.x+Ke.vx}function $f(Ke){return Ke.y+Ke.vy}function C0(Ke){return Ke.index}function dc(Ke,tt){var it=Ke.get(tt);if(!it)throw new Error("node not found: "+tt);return it}function eh(Ke){var tt,it,pt,Dt,Lt,Gt,zt=C0,nn=function(Bn){return 1/Math.min(Dt[Bn.source.index],Dt[Bn.target.index])},Kt=du(30),un=1;function wn(Bn){for(var _n=0,Rn=Ke.length;_n<un;++_n)for(var Kn,Cr,Ur,Qa,ea,pa,oi,$a=0;$a<Rn;++$a)Cr=(Kn=Ke[$a]).source,Qa=(Ur=Kn.target).x+Ur.vx-Cr.x-Cr.vx||au(Gt),ea=Ur.y+Ur.vy-Cr.y-Cr.vy||au(Gt),Qa*=pa=((pa=Math.sqrt(Qa*Qa+ea*ea))-it[$a])/pa*Bn*tt[$a],ea*=pa,Ur.vx-=Qa*(oi=Lt[$a]),Ur.vy-=ea*oi,Cr.vx+=Qa*(oi=1-oi),Cr.vy+=ea*oi}function xn(){if(pt){var Bn,_n,Rn=pt.length,Kn=Ke.length,Cr=new Map(pt.map((Ur,Qa)=>[zt(Ur,Qa,pt),Ur]));for(Bn=0,Dt=new Array(Rn);Bn<Kn;++Bn)(_n=Ke[Bn]).index=Bn,typeof _n.source!="object"&&(_n.source=dc(Cr,_n.source)),typeof _n.target!="object"&&(_n.target=dc(Cr,_n.target)),Dt[_n.source.index]=(Dt[_n.source.index]||0)+1,Dt[_n.target.index]=(Dt[_n.target.index]||0)+1;for(Bn=0,Lt=new Array(Kn);Bn<Kn;++Bn)_n=Ke[Bn],Lt[Bn]=Dt[_n.source.index]/(Dt[_n.source.index]+Dt[_n.target.index]);tt=new Array(Kn),Zn(),it=new Array(Kn),Wn()}}function Zn(){if(pt)for(var Bn=0,_n=Ke.length;Bn<_n;++Bn)tt[Bn]=+nn(Ke[Bn],Bn,Ke)}function Wn(){if(pt)for(var Bn=0,_n=Ke.length;Bn<_n;++Bn)it[Bn]=+Kt(Ke[Bn],Bn,Ke)}return Ke==null&&(Ke=[]),wn.initialize=function(Bn,_n){pt=Bn,Gt=_n,xn()},wn.links=function(Bn){return arguments.length?(Ke=Bn,xn(),wn):Ke},wn.id=function(Bn){return arguments.length?(zt=Bn,wn):zt},wn.iterations=function(Bn){return arguments.length?(un=+Bn,wn):un},wn.strength=function(Bn){return arguments.length?(nn=typeof Bn=="function"?Bn:du(+Bn),Zn(),wn):nn},wn.distance=function(Bn){return arguments.length?(Kt=typeof Bn=="function"?Bn:du(+Bn),Wn(),wn):Kt},wn}ql.copy=function(){var Ke,tt,it=new cu(this._x,this._y,this._x0,this._y0,this._x1,this._y1),pt=this._root;if(!pt)return it;if(!pt.length)return it._root=Rc(pt),it;for(Ke=[{source:pt,target:it._root=new Array(4)}];pt=Ke.pop();)for(var Dt=0;Dt<4;++Dt)(tt=pt.source[Dt])&&(tt.length?Ke.push({source:tt,target:pt.target[Dt]=new Array(4)}):pt.target[Dt]=Rc(tt));return it},ql.add=function(Ke){const tt=+this._x.call(null,Ke),it=+this._y.call(null,Ke);return ac(this.cover(tt,it),tt,it,Ke)},ql.addAll=function(Ke){var tt,it,pt,Dt,Lt=Ke.length,Gt=new Array(Lt),zt=new Array(Lt),nn=1/0,Kt=1/0,un=-1/0,wn=-1/0;for(it=0;it<Lt;++it)isNaN(pt=+this._x.call(null,tt=Ke[it]))||isNaN(Dt=+this._y.call(null,tt))||(Gt[it]=pt,zt[it]=Dt,pt<nn&&(nn=pt),pt>un&&(un=pt),Dt<Kt&&(Kt=Dt),Dt>wn&&(wn=Dt));if(nn>un||Kt>wn)return this;for(this.cover(nn,Kt).cover(un,wn),it=0;it<Lt;++it)ac(this,Gt[it],zt[it],Ke[it]);return this},ql.cover=function(Ke,tt){if(isNaN(Ke=+Ke)||isNaN(tt=+tt))return this;var it=this._x0,pt=this._y0,Dt=this._x1,Lt=this._y1;if(isNaN(it))Dt=(it=Math.floor(Ke))+1,Lt=(pt=Math.floor(tt))+1;else{for(var Gt,zt,nn=Dt-it||1,Kt=this._root;it>Ke||Ke>=Dt||pt>tt||tt>=Lt;)switch(zt=(tt<pt)<<1|Ke<it,(Gt=new Array(4))[zt]=Kt,Kt=Gt,nn*=2,zt){case 0:Dt=it+nn,Lt=pt+nn;break;case 1:it=Dt-nn,Lt=pt+nn;break;case 2:Dt=it+nn,pt=Lt-nn;break;case 3:it=Dt-nn,pt=Lt-nn}this._root&&this._root.length&&(this._root=Kt)}return this._x0=it,this._y0=pt,this._x1=Dt,this._y1=Lt,this},ql.data=function(){var Ke=[];return this.visit(function(tt){if(!tt.length)do Ke.push(tt.data);while(tt=tt.next)}),Ke},ql.extent=function(Ke){return arguments.length?this.cover(+Ke[0][0],+Ke[0][1]).cover(+Ke[1][0],+Ke[1][1]):isNaN(this._x0)?void 0:[[this._x0,this._y0],[this._x1,this._y1]]},ql.find=function(Ke,tt,it){var pt,Dt,Lt,Gt,zt,nn,Kt,un=this._x0,wn=this._y0,xn=this._x1,Zn=this._y1,Wn=[],Bn=this._root;for(Bn&&Wn.push(new zl(Bn,un,wn,xn,Zn)),it==null?it=1/0:(un=Ke-it,wn=tt-it,xn=Ke+it,Zn=tt+it,it*=it);nn=Wn.pop();)if(!(!(Bn=nn.node)||(Dt=nn.x0)>xn||(Lt=nn.y0)>Zn||(Gt=nn.x1)<un||(zt=nn.y1)<wn))if(Bn.length){var _n=(Dt+Gt)/2,Rn=(Lt+zt)/2;Wn.push(new zl(Bn[3],_n,Rn,Gt,zt),new zl(Bn[2],Dt,Rn,_n,zt),new zl(Bn[1],_n,Lt,Gt,Rn),new zl(Bn[0],Dt,Lt,_n,Rn)),(Kt=(tt>=Rn)<<1|Ke>=_n)&&(nn=Wn[Wn.length-1],Wn[Wn.length-1]=Wn[Wn.length-1-Kt],Wn[Wn.length-1-Kt]=nn)}else{var Kn=Ke-+this._x.call(null,Bn.data),Cr=tt-+this._y.call(null,Bn.data),Ur=Kn*Kn+Cr*Cr;if(Ur<it){var Qa=Math.sqrt(it=Ur);un=Ke-Qa,wn=tt-Qa,xn=Ke+Qa,Zn=tt+Qa,pt=Bn.data}}return pt},ql.remove=function(Ke){if(isNaN(Lt=+this._x.call(null,Ke))||isNaN(Gt=+this._y.call(null,Ke)))return this;var tt,it,pt,Dt,Lt,Gt,zt,nn,Kt,un,wn,xn,Zn=this._root,Wn=this._x0,Bn=this._y0,_n=this._x1,Rn=this._y1;if(!Zn)return this;if(Zn.length)for(;;){if((Kt=Lt>=(zt=(Wn+_n)/2))?Wn=zt:_n=zt,(un=Gt>=(nn=(Bn+Rn)/2))?Bn=nn:Rn=nn,tt=Zn,!(Zn=Zn[wn=un<<1|Kt]))return this;if(!Zn.length)break;(tt[wn+1&3]||tt[wn+2&3]||tt[wn+3&3])&&(it=tt,xn=wn)}for(;Zn.data!==Ke;)if(pt=Zn,!(Zn=Zn.next))return this;return(Dt=Zn.next)&&delete Zn.next,pt?(Dt?pt.next=Dt:delete pt.next,this):tt?(Dt?tt[wn]=Dt:delete tt[wn],(Zn=tt[0]||tt[1]||tt[2]||tt[3])&&Zn===(tt[3]||tt[2]||tt[1]||tt[0])&&!Zn.length&&(it?it[xn]=Zn:this._root=Zn),this):(this._root=Dt,this)},ql.removeAll=function(Ke){for(var tt=0,it=Ke.length;tt<it;++tt)this.remove(Ke[tt]);return this},ql.root=function(){return this._root},ql.size=function(){var Ke=0;return this.visit(function(tt){if(!tt.length)do++Ke;while(tt=tt.next)}),Ke},ql.visit=function(Ke){var tt,it,pt,Dt,Lt,Gt,zt=[],nn=this._root;for(nn&&zt.push(new zl(nn,this._x0,this._y0,this._x1,this._y1));tt=zt.pop();)if(!Ke(nn=tt.node,pt=tt.x0,Dt=tt.y0,Lt=tt.x1,Gt=tt.y1)&&nn.length){var Kt=(pt+Lt)/2,un=(Dt+Gt)/2;(it=nn[3])&&zt.push(new zl(it,Kt,un,Lt,Gt)),(it=nn[2])&&zt.push(new zl(it,pt,un,Kt,Gt)),(it=nn[1])&&zt.push(new zl(it,Kt,Dt,Lt,un)),(it=nn[0])&&zt.push(new zl(it,pt,Dt,Kt,un))}return this},ql.visitAfter=function(Ke){var tt,it=[],pt=[];for(this._root&&it.push(new zl(this._root,this._x0,this._y0,this._x1,this._y1));tt=it.pop();){var Dt=tt.node;if(Dt.length){var Lt,Gt=tt.x0,zt=tt.y0,nn=tt.x1,Kt=tt.y1,un=(Gt+nn)/2,wn=(zt+Kt)/2;(Lt=Dt[0])&&it.push(new zl(Lt,Gt,zt,un,wn)),(Lt=Dt[1])&&it.push(new zl(Lt,un,zt,nn,wn)),(Lt=Dt[2])&&it.push(new zl(Lt,Gt,wn,un,Kt)),(Lt=Dt[3])&&it.push(new zl(Lt,un,wn,nn,Kt))}pt.push(tt)}for(;tt=pt.pop();)Ke(tt.node,tt.x0,tt.y0,tt.x1,tt.y1);return this},ql.x=function(Ke){return arguments.length?(this._x=Ke,this):this._x},ql.y=function(Ke){return arguments.length?(this._y=Ke,this):this._y};const rf=4294967296;function th(Ke){return Ke.x}function Ph(Ke){return Ke.y}var nh=Math.PI*(3-Math.sqrt(5));function P0(Ke){var tt,it=1,pt=.001,Dt=1-Math.pow(pt,1/300),Lt=0,Gt=.6,zt=new Map,nn=Os(wn),Kt=Ne("tick","end"),un=function(){let Bn=1;return()=>(Bn=(1664525*Bn+1013904223)%rf)/rf}();function wn(){xn(),Kt.call("tick",tt),it<pt&&(nn.stop(),Kt.call("end",tt))}function xn(Bn){var _n,Rn,Kn=Ke.length;Bn===void 0&&(Bn=1);for(var Cr=0;Cr<Bn;++Cr)for(it+=(Lt-it)*Dt,zt.forEach(function(Ur){Ur(it)}),_n=0;_n<Kn;++_n)(Rn=Ke[_n]).fx==null?Rn.x+=Rn.vx*=Gt:(Rn.x=Rn.fx,Rn.vx=0),Rn.fy==null?Rn.y+=Rn.vy*=Gt:(Rn.y=Rn.fy,Rn.vy=0);return tt}function Zn(){for(var Bn,_n=0,Rn=Ke.length;_n<Rn;++_n){if((Bn=Ke[_n]).index=_n,Bn.fx!=null&&(Bn.x=Bn.fx),Bn.fy!=null&&(Bn.y=Bn.fy),isNaN(Bn.x)||isNaN(Bn.y)){var Kn=10*Math.sqrt(.5+_n),Cr=_n*nh;Bn.x=Kn*Math.cos(Cr),Bn.y=Kn*Math.sin(Cr)}(isNaN(Bn.vx)||isNaN(Bn.vy))&&(Bn.vx=Bn.vy=0)}}function Wn(Bn){return Bn.initialize&&Bn.initialize(Ke,un),Bn}return Ke==null&&(Ke=[]),Zn(),tt={tick:xn,restart:function(){return nn.restart(wn),tt},stop:function(){return nn.stop(),tt},nodes:function(Bn){return arguments.length?(Ke=Bn,Zn(),zt.forEach(Wn),tt):Ke},alpha:function(Bn){return arguments.length?(it=+Bn,tt):it},alphaMin:function(Bn){return arguments.length?(pt=+Bn,tt):pt},alphaDecay:function(Bn){return arguments.length?(Dt=+Bn,tt):+Dt},alphaTarget:function(Bn){return arguments.length?(Lt=+Bn,tt):Lt},velocityDecay:function(Bn){return arguments.length?(Gt=1-Bn,tt):1-Gt},randomSource:function(Bn){return arguments.length?(un=Bn,zt.forEach(Wn),tt):un},force:function(Bn,_n){return arguments.length>1?(_n==null?zt.delete(Bn):zt.set(Bn,Wn(_n)),tt):zt.get(Bn)},find:function(Bn,_n,Rn){var Kn,Cr,Ur,Qa,ea,pa=0,oi=Ke.length;for(Rn==null?Rn=1/0:Rn*=Rn,pa=0;pa<oi;++pa)(Ur=(Kn=Bn-(Qa=Ke[pa]).x)*Kn+(Cr=_n-Qa.y)*Cr)<Rn&&(ea=Qa,Rn=Ur);return ea},on:function(Bn,_n){return arguments.length>1?(Kt.on(Bn,_n),tt):Kt.on(Bn)}}}function Iu(Ke){return function(){return Ke}}const wh=Math.abs,vl=Math.atan2,Fc=Math.cos,Tf=Math.max,Xc=Math.min,zu=Math.sin,pd=Math.sqrt,ju=1e-12,fu=Math.PI,Jc=fu/2,yd=2*fu;function Lf(Ke){return Ke>1?0:Ke<-1?fu:Math.acos(Ke)}function af(Ke){return Ke>=1?Jc:Ke<=-1?-Jc:Math.asin(Ke)}function of(Ke){return Ke.innerRadius}function Ag(Ke){return Ke.outerRadius}function Mh(Ke){return Ke.startAngle}function Dh(Ke){return Ke.endAngle}function Ud(Ke){return Ke&&Ke.padAngle}function Ed(Ke,tt,it,pt,Dt,Lt,Gt,zt){var nn=it-Ke,Kt=pt-tt,un=Gt-Dt,wn=zt-Lt,xn=wn*nn-un*Kt;if(!(xn*xn<ju))return[Ke+(xn=(un*(tt-Lt)-wn*(Ke-Dt))/xn)*nn,tt+xn*Kt]}function Ad(Ke,tt,it,pt,Dt,Lt,Gt){var zt=Ke-it,nn=tt-pt,Kt=(Gt?Lt:-Lt)/pd(zt*zt+nn*nn),un=Kt*nn,wn=-Kt*zt,xn=Ke+un,Zn=tt+wn,Wn=it+un,Bn=pt+wn,_n=(xn+Wn)/2,Rn=(Zn+Bn)/2,Kn=Wn-xn,Cr=Bn-Zn,Ur=Kn*Kn+Cr*Cr,Qa=Dt-Lt,ea=xn*Bn-Wn*Zn,pa=(Cr<0?-1:1)*pd(Tf(0,Qa*Qa*Ur-ea*ea)),oi=(ea*Cr-Kn*pa)/Ur,$a=(-ea*Kn-Cr*pa)/Ur,Mr=(ea*Cr+Kn*pa)/Ur,aa=(-ea*Kn+Cr*pa)/Ur,di=oi-_n,ar=$a-Rn,Tr=Mr-_n,sa=aa-Rn;return di*di+ar*ar>Tr*Tr+sa*sa&&(oi=Mr,$a=aa),{cx:oi,cy:$a,x01:-un,y01:-wn,x11:oi*(Dt/Qa-1),y11:$a*(Dt/Qa-1)}}function w0(){var Ke=of,tt=Ag,it=Iu(0),pt=null,Dt=Mh,Lt=Dh,Gt=Ud,zt=null;function nn(){var Kt,un,wn=+Ke.apply(this,arguments),xn=+tt.apply(this,arguments),Zn=Dt.apply(this,arguments)-Jc,Wn=Lt.apply(this,arguments)-Jc,Bn=wh(Wn-Zn),_n=Wn>Zn;if(zt||(zt=Kt=zd()),xn<wn&&(un=xn,xn=wn,wn=un),xn>ju)if(Bn>yd-ju)zt.moveTo(xn*Fc(Zn),xn*zu(Zn)),zt.arc(0,0,xn,Zn,Wn,!_n),wn>ju&&(zt.moveTo(wn*Fc(Wn),wn*zu(Wn)),zt.arc(0,0,wn,Wn,Zn,_n));else{var Rn,Kn,Cr=Zn,Ur=Wn,Qa=Zn,ea=Wn,pa=Bn,oi=Bn,$a=Gt.apply(this,arguments)/2,Mr=$a>ju&&(pt?+pt.apply(this,arguments):pd(wn*wn+xn*xn)),aa=Xc(wh(xn-wn)/2,+it.apply(this,arguments)),di=aa,ar=aa;if(Mr>ju){var Tr=af(Mr/wn*zu($a)),sa=af(Mr/xn*zu($a));(pa-=2*Tr)>ju?(Qa+=Tr*=_n?1:-1,ea-=Tr):(pa=0,Qa=ea=(Zn+Wn)/2),(oi-=2*sa)>ju?(Cr+=sa*=_n?1:-1,Ur-=sa):(oi=0,Cr=Ur=(Zn+Wn)/2)}var ca=xn*Fc(Cr),La=xn*zu(Cr),ia=wn*Fc(ea),da=wn*zu(ea);if(aa>ju){var wi,xi=xn*Fc(Ur),oa=xn*zu(Ur),mo=wn*Fc(Qa),wo=wn*zu(Qa);if(Bn<fu&&(wi=Ed(ca,La,mo,wo,xi,oa,ia,da))){var ks=ca-wi[0],Ls=La-wi[1],Js=xi-wi[0],Tl=oa-wi[1],pl=1/zu(Lf((ks*Js+Ls*Tl)/(pd(ks*ks+Ls*Ls)*pd(Js*Js+Tl*Tl)))/2),ll=pd(wi[0]*wi[0]+wi[1]*wi[1]);di=Xc(aa,(wn-ll)/(pl-1)),ar=Xc(aa,(xn-ll)/(pl+1))}}oi>ju?ar>ju?(Rn=Ad(mo,wo,ca,La,xn,ar,_n),Kn=Ad(xi,oa,ia,da,xn,ar,_n),zt.moveTo(Rn.cx+Rn.x01,Rn.cy+Rn.y01),ar<aa?zt.arc(Rn.cx,Rn.cy,ar,vl(Rn.y01,Rn.x01),vl(Kn.y01,Kn.x01),!_n):(zt.arc(Rn.cx,Rn.cy,ar,vl(Rn.y01,Rn.x01),vl(Rn.y11,Rn.x11),!_n),zt.arc(0,0,xn,vl(Rn.cy+Rn.y11,Rn.cx+Rn.x11),vl(Kn.cy+Kn.y11,Kn.cx+Kn.x11),!_n),zt.arc(Kn.cx,Kn.cy,ar,vl(Kn.y11,Kn.x11),vl(Kn.y01,Kn.x01),!_n))):(zt.moveTo(ca,La),zt.arc(0,0,xn,Cr,Ur,!_n)):zt.moveTo(ca,La),wn>ju&&pa>ju?di>ju?(Rn=Ad(ia,da,xi,oa,wn,-di,_n),Kn=Ad(ca,La,mo,wo,wn,-di,_n),zt.lineTo(Rn.cx+Rn.x01,Rn.cy+Rn.y01),di<aa?zt.arc(Rn.cx,Rn.cy,di,vl(Rn.y01,Rn.x01),vl(Kn.y01,Kn.x01),!_n):(zt.arc(Rn.cx,Rn.cy,di,vl(Rn.y01,Rn.x01),vl(Rn.y11,Rn.x11),!_n),zt.arc(0,0,wn,vl(Rn.cy+Rn.y11,Rn.cx+Rn.x11),vl(Kn.cy+Kn.y11,Kn.cx+Kn.x11),_n),zt.arc(Kn.cx,Kn.cy,di,vl(Kn.y11,Kn.x11),vl(Kn.y01,Kn.x01),!_n))):zt.arc(0,0,wn,ea,Qa,_n):zt.lineTo(ia,da)}else zt.moveTo(0,0);if(zt.closePath(),Kt)return zt=null,Kt+""||null}return nn.centroid=function(){var Kt=(+Ke.apply(this,arguments)+ +tt.apply(this,arguments))/2,un=(+Dt.apply(this,arguments)+ +Lt.apply(this,arguments))/2-fu/2;return[Fc(un)*Kt,zu(un)*Kt]},nn.innerRadius=function(Kt){return arguments.length?(Ke=typeof Kt=="function"?Kt:Iu(+Kt),nn):Ke},nn.outerRadius=function(Kt){return arguments.length?(tt=typeof Kt=="function"?Kt:Iu(+Kt),nn):tt},nn.cornerRadius=function(Kt){return arguments.length?(it=typeof Kt=="function"?Kt:Iu(+Kt),nn):it},nn.padRadius=function(Kt){return arguments.length?(pt=Kt==null?null:typeof Kt=="function"?Kt:Iu(+Kt),nn):pt},nn.startAngle=function(Kt){return arguments.length?(Dt=typeof Kt=="function"?Kt:Iu(+Kt),nn):Dt},nn.endAngle=function(Kt){return arguments.length?(Lt=typeof Kt=="function"?Kt:Iu(+Kt),nn):Lt},nn.padAngle=function(Kt){return arguments.length?(Gt=typeof Kt=="function"?Kt:Iu(+Kt),nn):Gt},nn.context=function(Kt){return arguments.length?(zt=Kt==null?null:Kt,nn):zt},nn}function M0(Ke){return typeof Ke=="object"&&"length"in Ke?Ke:Array.from(Ke)}function Pt(Ke,tt){return tt<Ke?-1:tt>Ke?1:tt>=Ke?0:NaN}function Rt(Ke){return Ke}function jt(){var Ke=Rt,tt=Pt,it=null,pt=Iu(0),Dt=Iu(yd),Lt=Iu(0);function Gt(zt){var nn,Kt,un,wn,xn,Zn=(zt=M0(zt)).length,Wn=0,Bn=new Array(Zn),_n=new Array(Zn),Rn=+pt.apply(this,arguments),Kn=Math.min(yd,Math.max(-yd,Dt.apply(this,arguments)-Rn)),Cr=Math.min(Math.abs(Kn)/Zn,Lt.apply(this,arguments)),Ur=Cr*(Kn<0?-1:1);for(nn=0;nn<Zn;++nn)(xn=_n[Bn[nn]=nn]=+Ke(zt[nn],nn,zt))>0&&(Wn+=xn);for(tt!=null?Bn.sort(function(Qa,ea){return tt(_n[Qa],_n[ea])}):it!=null&&Bn.sort(function(Qa,ea){return it(zt[Qa],zt[ea])}),nn=0,un=Wn?(Kn-Zn*Ur)/Wn:0;nn<Zn;++nn,Rn=wn)Kt=Bn[nn],wn=Rn+((xn=_n[Kt])>0?xn*un:0)+Ur,_n[Kt]={data:zt[Kt],index:nn,value:xn,startAngle:Rn,endAngle:wn,padAngle:Cr};return _n}return Gt.value=function(zt){return arguments.length?(Ke=typeof zt=="function"?zt:Iu(+zt),Gt):Ke},Gt.sortValues=function(zt){return arguments.length?(tt=zt,it=null,Gt):tt},Gt.sort=function(zt){return arguments.length?(it=zt,tt=null,Gt):it},Gt.startAngle=function(zt){return arguments.length?(pt=typeof zt=="function"?zt:Iu(+zt),Gt):pt},Gt.endAngle=function(zt){return arguments.length?(Dt=typeof zt=="function"?zt:Iu(+zt),Gt):Dt},Gt.padAngle=function(zt){return arguments.length?(Lt=typeof zt=="function"?zt:Iu(+zt),Gt):Lt},Gt}var Sn=Ke=>()=>Ke;function bn(Ke,{sourceEvent:tt,target:it,transform:pt,dispatch:Dt}){Object.defineProperties(this,{type:{value:Ke,enumerable:!0,configurable:!0},sourceEvent:{value:tt,enumerable:!0,configurable:!0},target:{value:it,enumerable:!0,configurable:!0},transform:{value:pt,enumerable:!0,configurable:!0},_:{value:Dt}})}function sr(Ke,tt,it){this.k=Ke,this.x=tt,this.y=it}sr.prototype={constructor:sr,scale:function(Ke){return Ke===1?this:new sr(this.k*Ke,this.x,this.y)},translate:function(Ke,tt){return Ke===0&tt===0?this:new sr(this.k,this.x+this.k*Ke,this.y+this.k*tt)},apply:function(Ke){return[Ke[0]*this.k+this.x,Ke[1]*this.k+this.y]},applyX:function(Ke){return Ke*this.k+this.x},applyY:function(Ke){return Ke*this.k+this.y},invert:function(Ke){return[(Ke[0]-this.x)/this.k,(Ke[1]-this.y)/this.k]},invertX:function(Ke){return(Ke-this.x)/this.k},invertY:function(Ke){return(Ke-this.y)/this.k},rescaleX:function(Ke){return Ke.copy().domain(Ke.range().map(this.invertX,this).map(Ke.invert,Ke))},rescaleY:function(Ke){return Ke.copy().domain(Ke.range().map(this.invertY,this).map(Ke.invert,Ke))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var ir=new sr(1,0,0);function Pr(Ke){Ke.stopImmediatePropagation()}function Lr(Ke){Ke.preventDefault(),Ke.stopImmediatePropagation()}function qr(Ke){return!(Ke.ctrlKey&&Ke.type!=="wheel"||Ke.button)}function ka(){var Ke=this;return Ke instanceof SVGElement?(Ke=Ke.ownerSVGElement||Ke).hasAttribute("viewBox")?[[(Ke=Ke.viewBox.baseVal).x,Ke.y],[Ke.x+Ke.width,Ke.y+Ke.height]]:[[0,0],[Ke.width.baseVal.value,Ke.height.baseVal.value]]:[[0,0],[Ke.clientWidth,Ke.clientHeight]]}function ra(){return this.__zoom||ir}function $r(Ke){return-Ke.deltaY*(Ke.deltaMode===1?.05:Ke.deltaMode?1:.002)*(Ke.ctrlKey?10:1)}function Pa(){return navigator.maxTouchPoints||"ontouchstart"in this}function ua(Ke,tt,it){var pt=Ke.invertX(tt[0][0])-it[0][0],Dt=Ke.invertX(tt[1][0])-it[1][0],Lt=Ke.invertY(tt[0][1])-it[0][1],Gt=Ke.invertY(tt[1][1])-it[1][1];return Ke.translate(Dt>pt?(pt+Dt)/2:Math.min(0,pt)||Math.max(0,Dt),Gt>Lt?(Lt+Gt)/2:Math.min(0,Lt)||Math.max(0,Gt))}function Nr(){var Ke,tt,it,pt=qr,Dt=ka,Lt=ua,Gt=$r,zt=Pa,nn=[0,1/0],Kt=[[-1/0,-1/0],[1/0,1/0]],un=250,wn=Pl,xn=Ne("start","zoom","end"),Zn=500,Wn=0,Bn=10;function _n(ar){ar.property("__zoom",ra).on("wheel.zoom",pa,{passive:!1}).on("mousedown.zoom",oi).on("dblclick.zoom",$a).filter(zt).on("touchstart.zoom",Mr).on("touchmove.zoom",aa).on("touchend.zoom touchcancel.zoom",di).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function Rn(ar,Tr){return(Tr=Math.max(nn[0],Math.min(nn[1],Tr)))===ar.k?ar:new sr(Tr,ar.x,ar.y)}function Kn(ar,Tr,sa){var ca=Tr[0]-sa[0]*ar.k,La=Tr[1]-sa[1]*ar.k;return ca===ar.x&&La===ar.y?ar:new sr(ar.k,ca,La)}function Cr(ar){return[(+ar[0][0]+ +ar[1][0])/2,(+ar[0][1]+ +ar[1][1])/2]}function Ur(ar,Tr,sa,ca){ar.on("start.zoom",function(){Qa(this,arguments).event(ca).start()}).on("interrupt.zoom end.zoom",function(){Qa(this,arguments).event(ca).end()}).tween("zoom",function(){var La=this,ia=arguments,da=Qa(La,ia).event(ca),wi=Dt.apply(La,ia),xi=sa==null?Cr(wi):typeof sa=="function"?sa.apply(La,ia):sa,oa=Math.max(wi[1][0]-wi[0][0],wi[1][1]-wi[0][1]),mo=La.__zoom,wo=typeof Tr=="function"?Tr.apply(La,ia):Tr,ks=wn(mo.invert(xi).concat(oa/mo.k),wo.invert(xi).concat(oa/wo.k));return function(Ls){if(Ls===1)Ls=wo;else{var Js=ks(Ls),Tl=oa/Js[2];Ls=new sr(Tl,xi[0]-Js[0]*Tl,xi[1]-Js[1]*Tl)}da.zoom(null,Ls)}})}function Qa(ar,Tr,sa){return!sa&&ar.__zooming||new ea(ar,Tr)}function ea(ar,Tr){this.that=ar,this.args=Tr,this.active=0,this.sourceEvent=null,this.extent=Dt.apply(ar,Tr),this.taps=0}function pa(ar,...Tr){if(pt.apply(this,arguments)){var sa=Qa(this,Tr).event(ar),ca=this.__zoom,La=Math.max(nn[0],Math.min(nn[1],ca.k*Math.pow(2,Gt.apply(this,arguments)))),ia=Gr(ar);if(sa.wheel)sa.mouse[0][0]===ia[0]&&sa.mouse[0][1]===ia[1]||(sa.mouse[1]=ca.invert(sa.mouse[0]=ia)),clearTimeout(sa.wheel);else{if(ca.k===La)return;sa.mouse=[ia,ca.invert(ia)],ko(this),sa.start()}Lr(ar),sa.wheel=setTimeout(da,150),sa.zoom("mouse",Lt(Kn(Rn(ca,La),sa.mouse[0],sa.mouse[1]),sa.extent,Kt))}function da(){sa.wheel=null,sa.end()}}function oi(ar,...Tr){if(!it&&pt.apply(this,arguments)){var sa=ar.currentTarget,ca=Qa(this,Tr,!0).event(ar),La=Dr(ar.view).on("mousemove.zoom",xi,!0).on("mouseup.zoom",oa,!0),ia=Gr(ar,sa),da=ar.clientX,wi=ar.clientY;Di(ar.view),Pr(ar),ca.mouse=[ia,this.__zoom.invert(ia)],ko(this),ca.start()}function xi(mo){if(Lr(mo),!ca.moved){var wo=mo.clientX-da,ks=mo.clientY-wi;ca.moved=wo*wo+ks*ks>Wn}ca.event(mo).zoom("mouse",Lt(Kn(ca.that.__zoom,ca.mouse[0]=Gr(mo,sa),ca.mouse[1]),ca.extent,Kt))}function oa(mo){La.on("mousemove.zoom mouseup.zoom",null),_a(mo.view,ca.moved),Lr(mo),ca.event(mo).end()}}function $a(ar,...Tr){if(pt.apply(this,arguments)){var sa=this.__zoom,ca=Gr(ar.changedTouches?ar.changedTouches[0]:ar,this),La=sa.invert(ca),ia=sa.k*(ar.shiftKey?.5:2),da=Lt(Kn(Rn(sa,ia),ca,La),Dt.apply(this,Tr),Kt);Lr(ar),un>0?Dr(this).transition().duration(un).call(Ur,da,ca,ar):Dr(this).call(_n.transform,da,ca,ar)}}function Mr(ar,...Tr){if(pt.apply(this,arguments)){var sa,ca,La,ia,da=ar.touches,wi=da.length,xi=Qa(this,Tr,ar.changedTouches.length===wi).event(ar);for(Pr(ar),ca=0;ca<wi;++ca)ia=[ia=Gr(La=da[ca],this),this.__zoom.invert(ia),La.identifier],xi.touch0?xi.touch1||xi.touch0[2]===ia[2]||(xi.touch1=ia,xi.taps=0):(xi.touch0=ia,sa=!0,xi.taps=1+!!Ke);Ke&&(Ke=clearTimeout(Ke)),sa&&(xi.taps<2&&(tt=ia[0],Ke=setTimeout(function(){Ke=null},Zn)),ko(this),xi.start())}}function aa(ar,...Tr){if(this.__zooming){var sa,ca,La,ia,da=Qa(this,Tr).event(ar),wi=ar.changedTouches,xi=wi.length;for(Lr(ar),sa=0;sa<xi;++sa)La=Gr(ca=wi[sa],this),da.touch0&&da.touch0[2]===ca.identifier?da.touch0[0]=La:da.touch1&&da.touch1[2]===ca.identifier&&(da.touch1[0]=La);if(ca=da.that.__zoom,da.touch1){var oa=da.touch0[0],mo=da.touch0[1],wo=da.touch1[0],ks=da.touch1[1],Ls=(Ls=wo[0]-oa[0])*Ls+(Ls=wo[1]-oa[1])*Ls,Js=(Js=ks[0]-mo[0])*Js+(Js=ks[1]-mo[1])*Js;ca=Rn(ca,Math.sqrt(Ls/Js)),La=[(oa[0]+wo[0])/2,(oa[1]+wo[1])/2],ia=[(mo[0]+ks[0])/2,(mo[1]+ks[1])/2]}else{if(!da.touch0)return;La=da.touch0[0],ia=da.touch0[1]}da.zoom("touch",Lt(Kn(ca,La,ia),da.extent,Kt))}}function di(ar,...Tr){if(this.__zooming){var sa,ca,La=Qa(this,Tr).event(ar),ia=ar.changedTouches,da=ia.length;for(Pr(ar),it&&clearTimeout(it),it=setTimeout(function(){it=null},Zn),sa=0;sa<da;++sa)ca=ia[sa],La.touch0&&La.touch0[2]===ca.identifier?delete La.touch0:La.touch1&&La.touch1[2]===ca.identifier&&delete La.touch1;if(La.touch1&&!La.touch0&&(La.touch0=La.touch1,delete La.touch1),La.touch0)La.touch0[1]=this.__zoom.invert(La.touch0[0]);else if(La.end(),La.taps===2&&(ca=Gr(ca,this),Math.hypot(tt[0]-ca[0],tt[1]-ca[1])<Bn)){var wi=Dr(this).on("dblclick.zoom");wi&&wi.apply(this,arguments)}}}return _n.transform=function(ar,Tr,sa,ca){var La=ar.selection?ar.selection():ar;La.property("__zoom",ra),ar!==La?Ur(ar,Tr,sa,ca):La.interrupt().each(function(){Qa(this,arguments).event(ca).start().zoom(null,typeof Tr=="function"?Tr.apply(this,arguments):Tr).end()})},_n.scaleBy=function(ar,Tr,sa,ca){_n.scaleTo(ar,function(){var La=this.__zoom.k,ia=typeof Tr=="function"?Tr.apply(this,arguments):Tr;return La*ia},sa,ca)},_n.scaleTo=function(ar,Tr,sa,ca){_n.transform(ar,function(){var La=Dt.apply(this,arguments),ia=this.__zoom,da=sa==null?Cr(La):typeof sa=="function"?sa.apply(this,arguments):sa,wi=ia.invert(da),xi=typeof Tr=="function"?Tr.apply(this,arguments):Tr;return Lt(Kn(Rn(ia,xi),da,wi),La,Kt)},sa,ca)},_n.translateBy=function(ar,Tr,sa,ca){_n.transform(ar,function(){return Lt(this.__zoom.translate(typeof Tr=="function"?Tr.apply(this,arguments):Tr,typeof sa=="function"?sa.apply(this,arguments):sa),Dt.apply(this,arguments),Kt)},null,ca)},_n.translateTo=function(ar,Tr,sa,ca,La){_n.transform(ar,function(){var ia=Dt.apply(this,arguments),da=this.__zoom,wi=ca==null?Cr(ia):typeof ca=="function"?ca.apply(this,arguments):ca;return Lt(ir.translate(wi[0],wi[1]).scale(da.k).translate(typeof Tr=="function"?-Tr.apply(this,arguments):-Tr,typeof sa=="function"?-sa.apply(this,arguments):-sa),ia,Kt)},ca,La)},ea.prototype={event:function(ar){return ar&&(this.sourceEvent=ar),this},start:function(){return++this.active==1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(ar,Tr){return this.mouse&&ar!=="mouse"&&(this.mouse[1]=Tr.invert(this.mouse[0])),this.touch0&&ar!=="touch"&&(this.touch0[1]=Tr.invert(this.touch0[0])),this.touch1&&ar!=="touch"&&(this.touch1[1]=Tr.invert(this.touch1[0])),this.that.__zoom=Tr,this.emit("zoom"),this},end:function(){return--this.active==0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(ar){var Tr=Dr(this.that).datum();xn.call(ar,this.that,new bn(ar,{sourceEvent:this.sourceEvent,target:_n,type:ar,transform:this.that.__zoom,dispatch:xn}),Tr)}},_n.wheelDelta=function(ar){return arguments.length?(Gt=typeof ar=="function"?ar:Sn(+ar),_n):Gt},_n.filter=function(ar){return arguments.length?(pt=typeof ar=="function"?ar:Sn(!!ar),_n):pt},_n.touchable=function(ar){return arguments.length?(zt=typeof ar=="function"?ar:Sn(!!ar),_n):zt},_n.extent=function(ar){return arguments.length?(Dt=typeof ar=="function"?ar:Sn([[+ar[0][0],+ar[0][1]],[+ar[1][0],+ar[1][1]]]),_n):Dt},_n.scaleExtent=function(ar){return arguments.length?(nn[0]=+ar[0],nn[1]=+ar[1],_n):[nn[0],nn[1]]},_n.translateExtent=function(ar){return arguments.length?(Kt[0][0]=+ar[0][0],Kt[1][0]=+ar[1][0],Kt[0][1]=+ar[0][1],Kt[1][1]=+ar[1][1],_n):[[Kt[0][0],Kt[0][1]],[Kt[1][0],Kt[1][1]]]},_n.constrain=function(ar){return arguments.length?(Lt=ar,_n):Lt},_n.duration=function(ar){return arguments.length?(un=+ar,_n):un},_n.interpolate=function(ar){return arguments.length?(wn=ar,_n):wn},_n.on=function(){var ar=xn.on.apply(xn,arguments);return ar===xn?_n:ar},_n.clickDistance=function(ar){return arguments.length?(Wn=(ar=+ar)*ar,_n):Math.sqrt(Wn)},_n.tapDistance=function(ar){return arguments.length?(Bn=+ar,_n):Bn},_n}function Qr(){Qr=function(){return Ke};var Ke={},tt=Object.prototype,it=tt.hasOwnProperty,pt=typeof Symbol=="function"?Symbol:{},Dt=pt.iterator||"@@iterator",Lt=pt.asyncIterator||"@@asyncIterator",Gt=pt.toStringTag||"@@toStringTag";function zt(Mr,aa,di){return Object.defineProperty(Mr,aa,{value:di,enumerable:!0,configurable:!0,writable:!0}),Mr[aa]}try{zt({},"")}catch(Mr){zt=function(aa,di,ar){return aa[di]=ar}}function nn(Mr,aa,di,ar){var Tr=aa&&aa.prototype instanceof wn?aa:wn,sa=Object.create(Tr.prototype),ca=new pa(ar||[]);return sa._invoke=function(La,ia,da){var wi="suspendedStart";return function(xi,oa){if(wi==="executing")throw new Error("Generator is already running");if(wi==="completed"){if(xi==="throw")throw oa;return $a()}for(da.method=xi,da.arg=oa;;){var mo=da.delegate;if(mo){var wo=Ur(mo,da);if(wo){if(wo===un)continue;return wo}}if(da.method==="next")da.sent=da._sent=da.arg;else if(da.method==="throw"){if(wi==="suspendedStart")throw wi="completed",da.arg;da.dispatchException(da.arg)}else da.method==="return"&&da.abrupt("return",da.arg);wi="executing";var ks=Kt(La,ia,da);if(ks.type==="normal"){if(wi=da.done?"completed":"suspendedYield",ks.arg===un)continue;return{value:ks.arg,done:da.done}}ks.type==="throw"&&(wi="completed",da.method="throw",da.arg=ks.arg)}}}(Mr,di,ca),sa}function Kt(Mr,aa,di){try{return{type:"normal",arg:Mr.call(aa,di)}}catch(ar){return{type:"throw",arg:ar}}}Ke.wrap=nn;var un={};function wn(){}function xn(){}function Zn(){}var Wn={};zt(Wn,Dt,function(){return this});var Bn=Object.getPrototypeOf,_n=Bn&&Bn(Bn(oi([])));_n&&_n!==tt&&it.call(_n,Dt)&&(Wn=_n);var Rn=Zn.prototype=wn.prototype=Object.create(Wn);function Kn(Mr){["next","throw","return"].forEach(function(aa){zt(Mr,aa,function(di){return this._invoke(aa,di)})})}function Cr(Mr,aa){function di(Tr,sa,ca,La){var ia=Kt(Mr[Tr],Mr,sa);if(ia.type!=="throw"){var da=ia.arg,wi=da.value;return wi&&typeof wi=="object"&&it.call(wi,"__await")?aa.resolve(wi.__await).then(function(xi){di("next",xi,ca,La)},function(xi){di("throw",xi,ca,La)}):aa.resolve(wi).then(function(xi){da.value=xi,ca(da)},function(xi){return di("throw",xi,ca,La)})}La(ia.arg)}var ar;this._invoke=function(Tr,sa){function ca(){return new aa(function(La,ia){di(Tr,sa,La,ia)})}return ar=ar?ar.then(ca,ca):ca()}}function Ur(Mr,aa){var di=Mr.iterator[aa.method];if(di===void 0){if(aa.delegate=null,aa.method==="throw"){if(Mr.iterator.return&&(aa.method="return",aa.arg=void 0,Ur(Mr,aa),aa.method==="throw"))return un;aa.method="throw",aa.arg=new TypeError("The iterator does not provide a 'throw' method")}return un}var ar=Kt(di,Mr.iterator,aa.arg);if(ar.type==="throw")return aa.method="throw",aa.arg=ar.arg,aa.delegate=null,un;var Tr=ar.arg;return Tr?Tr.done?(aa[Mr.resultName]=Tr.value,aa.next=Mr.nextLoc,aa.method!=="return"&&(aa.method="next",aa.arg=void 0),aa.delegate=null,un):Tr:(aa.method="throw",aa.arg=new TypeError("iterator result is not an object"),aa.delegate=null,un)}function Qa(Mr){var aa={tryLoc:Mr[0]};1 in Mr&&(aa.catchLoc=Mr[1]),2 in Mr&&(aa.finallyLoc=Mr[2],aa.afterLoc=Mr[3]),this.tryEntries.push(aa)}function ea(Mr){var aa=Mr.completion||{};aa.type="normal",delete aa.arg,Mr.completion=aa}function pa(Mr){this.tryEntries=[{tryLoc:"root"}],Mr.forEach(Qa,this),this.reset(!0)}function oi(Mr){if(Mr){var aa=Mr[Dt];if(aa)return aa.call(Mr);if(typeof Mr.next=="function")return Mr;if(!isNaN(Mr.length)){var di=-1,ar=function Tr(){for(;++di<Mr.length;)if(it.call(Mr,di))return Tr.value=Mr[di],Tr.done=!1,Tr;return Tr.value=void 0,Tr.done=!0,Tr};return ar.next=ar}}return{next:$a}}function $a(){return{value:void 0,done:!0}}return xn.prototype=Zn,zt(Rn,"constructor",Zn),zt(Zn,"constructor",xn),xn.displayName=zt(Zn,Gt,"GeneratorFunction"),Ke.isGeneratorFunction=function(Mr){var aa=typeof Mr=="function"&&Mr.constructor;return!!aa&&(aa===xn||(aa.displayName||aa.name)==="GeneratorFunction")},Ke.mark=function(Mr){return Object.setPrototypeOf?Object.setPrototypeOf(Mr,Zn):(Mr.__proto__=Zn,zt(Mr,Gt,"GeneratorFunction")),Mr.prototype=Object.create(Rn),Mr},Ke.awrap=function(Mr){return{__await:Mr}},Kn(Cr.prototype),zt(Cr.prototype,Lt,function(){return this}),Ke.AsyncIterator=Cr,Ke.async=function(Mr,aa,di,ar,Tr){Tr===void 0&&(Tr=Promise);var sa=new Cr(nn(Mr,aa,di,ar),Tr);return Ke.isGeneratorFunction(aa)?sa:sa.next().then(function(ca){return ca.done?ca.value:sa.next()})},Kn(Rn),zt(Rn,Gt,"Generator"),zt(Rn,Dt,function(){return this}),zt(Rn,"toString",function(){return"[object Generator]"}),Ke.keys=function(Mr){var aa=[];for(var di in Mr)aa.push(di);return aa.reverse(),function ar(){for(;aa.length;){var Tr=aa.pop();if(Tr in Mr)return ar.value=Tr,ar.done=!1,ar}return ar.done=!0,ar}},Ke.values=oi,pa.prototype={constructor:pa,reset:function(Mr){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(ea),!Mr)for(var aa in this)aa.charAt(0)==="t"&&it.call(this,aa)&&!isNaN(+aa.slice(1))&&(this[aa]=void 0)},stop:function(){this.done=!0;var Mr=this.tryEntries[0].completion;if(Mr.type==="throw")throw Mr.arg;return this.rval},dispatchException:function(Mr){if(this.done)throw Mr;var aa=this;function di(ia,da){return sa.type="throw",sa.arg=Mr,aa.next=ia,da&&(aa.method="next",aa.arg=void 0),!!da}for(var ar=this.tryEntries.length-1;ar>=0;--ar){var Tr=this.tryEntries[ar],sa=Tr.completion;if(Tr.tryLoc==="root")return di("end");if(Tr.tryLoc<=this.prev){var ca=it.call(Tr,"catchLoc"),La=it.call(Tr,"finallyLoc");if(ca&&La){if(this.prev<Tr.catchLoc)return di(Tr.catchLoc,!0);if(this.prev<Tr.finallyLoc)return di(Tr.finallyLoc)}else if(ca){if(this.prev<Tr.catchLoc)return di(Tr.catchLoc,!0)}else{if(!La)throw new Error("try statement without catch or finally");if(this.prev<Tr.finallyLoc)return di(Tr.finallyLoc)}}}},abrupt:function(Mr,aa){for(var di=this.tryEntries.length-1;di>=0;--di){var ar=this.tryEntries[di];if(ar.tryLoc<=this.prev&&it.call(ar,"finallyLoc")&&this.prev<ar.finallyLoc){var Tr=ar;break}}Tr&&(Mr==="break"||Mr==="continue")&&Tr.tryLoc<=aa&&aa<=Tr.finallyLoc&&(Tr=null);var sa=Tr?Tr.completion:{};return sa.type=Mr,sa.arg=aa,Tr?(this.method="next",this.next=Tr.finallyLoc,un):this.complete(sa)},complete:function(Mr,aa){if(Mr.type==="throw")throw Mr.arg;return Mr.type==="break"||Mr.type==="continue"?this.next=Mr.arg:Mr.type==="return"?(this.rval=this.arg=Mr.arg,this.method="return",this.next="end"):Mr.type==="normal"&&aa&&(this.next=aa),un},finish:function(Mr){for(var aa=this.tryEntries.length-1;aa>=0;--aa){var di=this.tryEntries[aa];if(di.finallyLoc===Mr)return this.complete(di.completion,di.afterLoc),ea(di),un}},catch:function(Mr){for(var aa=this.tryEntries.length-1;aa>=0;--aa){var di=this.tryEntries[aa];if(di.tryLoc===Mr){var ar=di.completion;if(ar.type==="throw"){var Tr=ar.arg;ea(di)}return Tr}}throw new Error("illegal catch attempt")},delegateYield:function(Mr,aa,di){return this.delegate={iterator:oi(Mr),resultName:aa,nextLoc:di},this.method==="next"&&(this.arg=void 0),un}},Ke}function wa(Ke){return wa=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(tt){return typeof tt}:function(tt){return tt&&typeof Symbol=="function"&&tt.constructor===Symbol&&tt!==Symbol.prototype?"symbol":typeof tt},wa(Ke)}function Ei(Ke,tt,it,pt,Dt,Lt,Gt){try{var zt=Ke[Lt](Gt),nn=zt.value}catch(Kt){return void it(Kt)}zt.done?tt(nn):Promise.resolve(nn).then(pt,Dt)}function gi(Ke){return function(){var tt=this,it=arguments;return new Promise(function(pt,Dt){var Lt=Ke.apply(tt,it);function Gt(nn){Ei(Lt,pt,Dt,Gt,zt,"next",nn)}function zt(nn){Ei(Lt,pt,Dt,Gt,zt,"throw",nn)}Gt(void 0)})}}function Si(Ke,tt){if(!(Ke instanceof tt))throw new TypeError("Cannot call a class as a function")}function Ii(Ke,tt){for(var it=0;it<tt.length;it++){var pt=tt[it];pt.enumerable=pt.enumerable||!1,pt.configurable=!0,"value"in pt&&(pt.writable=!0),Object.defineProperty(Ke,pt.key,pt)}}function bi(Ke,tt,it){return tt&&Ii(Ke.prototype,tt),it&&Ii(Ke,it),Object.defineProperty(Ke,"prototype",{writable:!1}),Ke}function mi(Ke,tt){return function(it){if(Array.isArray(it))return it}(Ke)||function(it,pt){var Dt=it==null?null:typeof Symbol!="undefined"&&it[Symbol.iterator]||it["@@iterator"];if(Dt!=null){var Lt,Gt,zt=[],nn=!0,Kt=!1;try{for(Dt=Dt.call(it);!(nn=(Lt=Dt.next()).done)&&(zt.push(Lt.value),!pt||zt.length!==pt);nn=!0);}catch(un){Kt=!0,Gt=un}finally{try{nn||Dt.return==null||Dt.return()}finally{if(Kt)throw Gt}}return zt}}(Ke,tt)||jo(Ke,tt)||function(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
|
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function jo(Ke,tt){if(Ke){if(typeof Ke=="string")return ho(Ke,tt);var it=Object.prototype.toString.call(Ke).slice(8,-1);return it==="Object"&&Ke.constructor&&(it=Ke.constructor.name),it==="Map"||it==="Set"?Array.from(Ke):it==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(it)?ho(Ke,tt):void 0}}function ho(Ke,tt){(tt==null||tt>Ke.length)&&(tt=Ke.length);for(var it=0,pt=new Array(tt);it<tt;it++)pt[it]=Ke[it];return pt}function Vo(Ke,tt){var it=typeof Symbol!="undefined"&&Ke[Symbol.iterator]||Ke["@@iterator"];if(!it){if(Array.isArray(Ke)||(it=jo(Ke))||tt&&Ke&&typeof Ke.length=="number"){it&&(Ke=it);var pt=0,Dt=function(){};return{s:Dt,n:function(){return pt>=Ke.length?{done:!0}:{done:!1,value:Ke[pt++]}},e:function(nn){throw nn},f:Dt}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
|
|
|
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var Lt,Gt=!0,zt=!1;return{s:function(){it=it.call(Ke)},n:function(){var nn=it.next();return Gt=nn.done,nn},e:function(nn){zt=!0,Lt=nn},f:function(){try{Gt||it.return==null||it.return()}finally{if(zt)throw Lt}}}}function ts(Ke){var tt=32;switch(Ke){case 0:tt=23;break;case 1:tt=26;break;case 2:default:tt=32;break;case 3:tt=38}return tt}function Ss(Ke){Ke=Ke.sort();for(var tt=[],it=0;it<Ke.length;it++)Ke[it]!==Ke[it-1]&&tt.push(Ke[it]);return tt}function Zs(Ke,tt){var it=0,pt=[],Dt=[];return Ke&&function(){var Lt,Gt=(Ke+="").split(""),zt=0;for(zt=0;zt<Gt.length;zt++)Lt=Gt[zt],/(?:[\u3400-\u4DB5\u4E00-\u9FEA\uFA0E\uFA0F\uFA11\uFA13\uFA14\uFA1F\uFA21\uFA23\uFA24\uFA27-\uFA29]|[\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0])/.test(Lt)?new Array(10).fill(1).forEach(function(){(it===tt||it===2*tt||it===3*tt)&&pt.push(zt),it+=1}):new Array(5).fill(1).forEach(function(){(it===tt||it===2*tt||it===3*tt)&&pt.push(zt),it+=1});zt===Ke.length&&(it<tt||!pt.length||it>tt&&it<2*tt||it>tt&&it<3*tt)&&pt.push(Ke.length);var nn=pt.length;nn===1?Dt.push({text:Ke,x:0,y:0}):nn===2?pt.forEach(function(Kt,un){un===0?Dt.push({text:Ke.substring(0,Kt),x:0,y:-7}):Dt.push({text:Ke.substring(pt[0],Kt),x:0,y:7})}):pt.forEach(function(Kt,un){un===0?Dt.push({text:Ke.substring(0,Kt),x:0,y:-12}):un===1?Dt.push({text:Ke.substring(pt[0],Kt+1),x:0,y:4}):Ke.length>Kt?(()=>{var wn=Dt.reduce((xn,Zn)=>xn+Zn.text.length,0);Dt.push({text:Ke.substring(wn,wn+2)+(Ke.length-(wn+2)>0?"...":""),x:0,y:16})})():Dt.push({text:Ke.substring(pt[1]+1,Kt),x:0,y:16})})}(),Dt}sr.prototype;var fa=["circle","rect","ellipse"],Ko=["url(#radialGradient-1)","url(#radialGradient-2)","url(#radialGradient-3)"],No=["url(#lines1)","url(#lines2)","url(#lines3)"];function ns(Ke,tt,it){return Ke.selectAll(".node-circle").remove(),Ke.selectAll(".node-circle").data(tt,function(pt){return pt.id}).enter().append(function(pt){return fa.includes(pt.shape)?document.createElementNS("http://www.w3.org/2000/svg",pt.shape):document.createElementNS("http://www.w3.org/2000/svg","circle")}).style("display",function(pt){return pt.hide?"none":"block"}).style("opacity",function(pt){return pt.hide?"0":"1"}).attr("r",function(pt){return pt.shape=="circle"?Eo(pt.size):null}).attr("rx",function(pt){return pt.shape=="ellipse"?Eo(pt.size)+10:pt.shape=="rect"?10:null}).attr("ry",function(pt){return pt.shape=="ellipse"?Eo(pt.size)+10:pt.shape=="rect"?10:null}).attr("width",function(pt){return pt.shape=="rect"?3*(Eo(pt.size)-6):2*(Eo(pt.size)-6)}).attr("height",function(pt){return pt.shape=="rect"?1.5*(Eo(pt.size)-6):2*(Eo(pt.size)-6)}).attr("fill",function(pt){return pt.colorType?Ko[pt.colorType-1]:pt.color||"url(#radialGradient-1)"}).attr("color",function(pt){return pt.color||"#2E8B57"}).attr("class",function(pt){return"node-circle node-circle-".concat(pt.id," transition-opacity duration-500")}).attr("id",function(pt){return"node-circle".concat(pt.id)}).style("cursor","pointer").on("mouseover",function(pt,Dt){var Lt=Dt.activeColor||"#008FFF";pt.target.setAttribute("stroke",Lt),pt.target.setAttribute("stroke-width","8")}).on("mouseout",function(pt){pt.target.setAttribute("stroke-width","0")}).append("title").text(function(pt){return pt.name}),Ke.selectAll(".node-circle")}function Eo(Ke){var tt=32;switch(Ke){case 0:tt=23;break;case 1:tt=26;break;case 2:default:tt=32;break;case 3:tt=38}return tt}function Ui(Ke,tt){return Ke.selectAll("text").remove(),Ke.selectAll("text").data(tt,function(it){return it.id}).enter().append("text").attr("dy",".35em").attr("text-anchor","middle").attr("pointer-events","none").style("fill","#fff").style("font-size","10px").style("text-anchor","middle").attr("class",function(it){return"node-text node-circle node-circle--text-".concat(it.id," node-text-").concat(it.id," transition-opacity duration-500")}).style("cursor","pointer").append("svg:title").text(function(it){return it.name}),Ke.selectAll("text").style("display",function(it){return it.hide?"none":"block"}),Ke.selectAll("text").attr("d",function(it){it.shape=="rect"?Dr(".node-circle--text-".concat(it.id)).append("tspan").style("cursor","pointer").append("tspan").text(function(pt){return pt.name}):Zs(it.name,Eo(it.size)).forEach(function(pt,Dt){Dr(".node-circle--text-".concat(it.id)).append("tspan").style("cursor","pointer").attr("class",function(Lt){return"node-circle--tspan-".concat(Lt.id,"-").concat(Dt)}).attr("x",pt.x).attr("y",pt.y).text(function(){return pt.text})})}),Ke.selectAll("text")}function ms(Ke){var tt=arguments.length>1&&arguments[1]!==void 0&&arguments[1],it=arguments.length>2&&arguments[2]!==void 0?arguments[2]:[],pt=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{},Dt=pt._ops,Lt=Dr("body"),Gt=[];if(tt&&Dt.isShowBatchOperation)return it.push(Ke.id),Dr("".concat(Dt.containerName)).style("background","#5e5e5e"),it.forEach(function(wn){Gt.push(Lt.select("".concat(Dt.containerName," .node-circle-").concat(wn)).attr("color"))}),Lt.selectAll("".concat(Dt.containerName," .node-circle")).attr("fill","#3c3b3b"),it.forEach(function(wn,xn){Lt.select("".concat(Dt.containerName," .node-circle-").concat(wn)).attr("fill",Gt[xn])}),void Dr(".graph-bath").style("display","block");if(Dt.isShowMask){var zt=[],nn=[];Dt.links.map(function(wn){wn.source.id==Ke.id&&(zt.push(wn.target.id),nn.push(wn.source.id+wn.target.id)),wn.target.id==Ke.id&&(zt.push(wn.source.id),nn.push(wn.source.id+wn.target.id))});var Kt=Ss(zt),un=Ss(nn);Kt.push(Ke.id),Lt.selectAll("".concat(Dt.containerName," .line-item")).style("display","none"),Dr("".concat(Dt.containerName)).style("background","#5e5e5e"),Kt.forEach(function(wn){Gt.push(Lt.select("".concat(Dt.containerName," .node-circle-").concat(wn)).attr("color"))}),Lt.selectAll("".concat(Dt.containerName," .node-circle")).attr("fill","#3c3b3b"),Kt.forEach(function(wn,xn){Lt.select("".concat(Dt.containerName," .node-circle-").concat(wn)).attr("fill",Gt[xn])}),un.forEach(function(wn){Lt.selectAll("".concat(Dt.containerName," .line-item-").concat(wn)).style("display",function(xn){return xn.hide?"none":"block"})})}}var rs=[],Ol={addPath:function(Ke){Ke.forEach(function(tt){var it=rs.indexOf(tt);it!=-1&&rs.splice(it,1),rs.unshift(tt)})},getPath:function(){return rs},clearPath:function(){rs.length=0}};function ml(Ke,tt,it,pt){return Ft.apply(this,arguments)}function Ft(){return Ft=gi(Qr().mark(function Ke(tt,it,pt,Dt){var Lt;return Qr().wrap(function(Gt){for(;;)switch(Gt.prev=Gt.next){case 0:return Lt=pt._ops,Gt.delegateYield(Qr().mark(function zt(){var nn,Kt,un,wn,xn,Zn,Wn,Bn,_n,Rn,Kn,Cr,Ur,Qa,ea,pa,oi,$a,Mr,aa,di,ar,Tr,sa,ca,La,ia,da,wi,xi;return Qr().wrap(function(oa){for(;;)switch(oa.prev=oa.next){case 0:oa.t0=tt,oa.next=oa.t0==="remove"?3:oa.t0==="hide"?19:oa.t0==="contraction"?22:oa.t0==="extend"?42:oa.t0==="editSize"?62:oa.t0==="editColor"?71:oa.t0==="editShape"?79:oa.t0==="extend-path"?87:oa.t0==="contraction-path"?96:100;break;case 3:nn=0;case 4:if(!(nn<it.length)){oa.next=17;break}Kt=0;case 6:if(!(Kt<Lt.nodes.length)){oa.next=13;break}if(Lt.nodes[Kt].id!=it[nn]){oa.next=10;break}return Lt.nodes.splice(Kt,1),oa.abrupt("break",13);case 10:Kt++,oa.next=6;break;case 13:for(un=0;un<Lt.links.length;un++)Lt.links[un].source.id!=it[nn]&&Lt.links[un].target.id!=it[nn]||(Lt.links.splice(un,1),un--);case 14:nn++,oa.next=4;break;case 17:return pt.update(),oa.abrupt("break",100);case 19:for(wn=0;wn<it.length;wn++){for(xn=0;xn<Lt.nodes.length;xn++)Lt.nodes[xn].id==it[wn]&&(Lt.nodes[xn].hide=!0);for(Zn=0;Zn<Lt.links.length;Zn++)Lt.links[Zn].source.id!=it[wn]&&Lt.links[Zn].target.id!=it[wn]||(Lt.links[Zn].hide=!0)}return pt.update(),oa.abrupt("break",100);case 22:for(Wn=[],Bn=function(mo){Lt.links.map(function(wo){if(wo.source.id==it[mo]){wo.hide=!0;for(var ks=!1,Ls=0;Ls<Lt.links.length;Ls++)(Lt.links[Ls].source.id==wo.target.id||Lt.links[Ls].target.id==wo.target.id&&Lt.links[Ls].source.id!=it[mo])&&(ks=!0);ks||Wn.push(wo.target.id)}})},_n=0;_n<it.length;_n++)Bn(_n);Rn=0;case 26:if(!(Rn<Lt.nodes.length)){oa.next=40;break}Kn=0;case 28:if(!(Kn<Wn.length)){oa.next=37;break}if(Lt.nodes[Rn].id!=Wn[Kn]){oa.next=34;break}return Lt.nodes[Rn].hide=!0,Wn.splice(Kn,1),Kn--,oa.abrupt("break",37);case 34:Kn++,oa.next=28;break;case 37:Rn++,oa.next=26;break;case 40:return pt.update(),oa.abrupt("break",100);case 42:for(Cr=[],Ur=function(mo){Lt.links.map(function(wo){wo.source.id==it[mo]&&(wo.hide=!1,Cr.push(wo.target.id))})},Qa=0;Qa<it.length;Qa++)Ur(Qa);ea=0;case 46:if(!(ea<Lt.nodes.length)){oa.next=60;break}pa=0;case 48:if(!(pa<Cr.length)){oa.next=57;break}if(Lt.nodes[ea].id!=Cr[pa]){oa.next=54;break}return Lt.nodes[ea].hide=!1,Cr.splice(pa,1),pa--,oa.abrupt("break",57);case 54:pa++,oa.next=48;break;case 57:ea++,oa.next=46;break;case 60:return pt.update(),oa.abrupt("break",100);case 62:if(oi=0,!Dt){oa.next=70;break}return oa.next=66,Dt();case 66:for((oi=oa.sent)<=24&&(oi=24),$a=0;$a<it.length;$a++)for(Mr=0;Mr<Lt.nodes.length;Mr++)Lt.nodes[Mr].id==it[$a]&&(Lt.nodes[Mr].size=oi);pt.update();case 70:return oa.abrupt("break",100);case 71:if(aa=0,!Dt){oa.next=78;break}return oa.next=75,Dt();case 75:for(aa=oa.sent,di=0;di<it.length;di++)for(ar=0;ar<Lt.nodes.length;ar++)Lt.nodes[ar].id==it[di]&&(Lt.nodes[ar].color=aa);pt.update();case 78:return oa.abrupt("break",100);case 79:if(Tr="circle",!Dt){oa.next=86;break}return oa.next=83,Dt();case 83:for(Tr=oa.sent,sa=0;sa<it.length;sa++)for(ca=0;ca<Lt.nodes.length;ca++)Lt.nodes[ca].id==it[sa]&&(Lt.nodes[ca].shape=Tr);pt.update();case 86:return oa.abrupt("break",100);case 87:return La=it[0],ia=Ol.getPath(),(da=ia.length>1?ia[1]:null)&&cn.contractionPath(da,ia,pt),cn.extendPath(La,pt),cn.previousStep.id=La,cn.previousStep.operate="extend",pt.update(),oa.abrupt("break",100);case 96:return wi=it[0],(xi=Ol.getPath()).indexOf(wi)!=-1&&(cn.contractionPath(wi,xi,pt),cn.previousStep.operate=="extend"&&cn.previousStep.id!=wi?(cn.extendPath(cn.previousStep.id,pt),cn.previousStep.operate="extend"):(cn.previousStep.id=wi,cn.previousStep.operate="contraction"),pt.update()),oa.abrupt("break",100);case 100:case"end":return oa.stop()}},zt)})(),"t0",2);case 2:Dr(Lt.containerName).style("background",Lt.background);case 3:case"end":return Gt.stop()}},Ke)})),Ft.apply(this,arguments)}var Wt,cn={extendPath:function(Ke,tt){for(var it=tt._ops,pt=it.nodes,Dt=it.links,Lt=[],Gt=[],zt=0;zt<Dt.length;zt++)Dt[zt].source.id==Ke&&Dt[zt].target.id!=Ke&&(it.links[zt].hide=!1,Lt.push(Dt[zt].target.id)),Dt[zt].source.id!=Ke&&Dt[zt].target.id==Ke&&(it.links[zt].hide=!1,Lt.push(Dt[zt].source.id));if(Lt.length){for(var nn=0;nn<pt.length;nn++)for(var Kt=0;Kt<Lt.length;Kt++)if(pt[nn].id==Lt[Kt]){it.nodes[nn].hide=!1,Lt.splice(Kt,1),Kt--;break}if(pt.map(function(Zn){Zn.hide&&Gt.push(Zn.id)}),Gt.length>0)for(var un=0;un<Dt.length;un++)for(var wn=0;wn<Gt.length;wn++)Dt[un].source.id!=Gt[wn]&&Dt[un].target.id!=Gt[wn]||(Dt[un].hide=!0),Gt.includes(Dt[un].source.id)||Gt.includes(Dt[un].target.id)||(Dt[un].hide=!1);else for(var xn=0;xn<Dt.length;xn++)Dt[xn].hide=!1}},contractionPath:function(Ke,tt,it){for(var pt=it._ops,Dt=pt.nodes,Lt=pt.links,Gt=[],zt=[],nn=!1,Kt=0;Kt<Dt.length;Kt++)if(Dt[Kt].id==Ke){nn=!!Dt[Kt].isExtendedState;break}if(nn&&(Lt.forEach(function(Wn,Bn){Wn.source.id==Ke&&cn.filterEvery(tt,Wn.target.id)&&(pt.links[Bn].hide=!0,Gt.push(Wn.target.id)),Wn.target.id==Ke&&cn.filterEvery(tt,Wn.source.id)&&(pt.links[Bn].hide=!0,Gt.push(Wn.source.id))}),Gt.length)){for(var un=0;un<Dt.length;un++)for(var wn=0;wn<Gt.length;wn++)if(Dt[un].id==Gt[wn]){pt.nodes[un].hide=!0,zt.push(pt.nodes[un].id),Gt.splice(wn,1),wn--;break}for(var xn=0;xn<Lt.length;xn++)for(var Zn=0;Zn<zt.length;Zn++)Lt[xn].source.id!=zt[Zn]&&Lt[xn].target.id!=zt[Zn]||(Lt[xn].hide=!0)}},filterEvery:function(Ke,tt){return Ke.every(function(it){return it!=tt})},previousStep:{id:"0",operate:"undefined"}};function An(Ke,tt,it){var pt=Ke.selectAll(".line-item");return(pt=pt.data(tt,function(Dt){return"".concat(Dt.source.id,"_").concat(Dt.target.id)})).exit().remove(),(pt=pt.enter().append("g")).append("path").style("fill",function(Dt){return Dt.colorType?No[Dt.colorType-1]:Dt.color||"url(#lines1)"}).attr("stroke-width",function(Dt){return Math.sqrt(Dt.value)}).attr("stroke","none").style("cursor","pointer").attr("class",function(Dt,Lt){return"line-item-inner line-item-inner-".concat(Lt)}).on("click",function(Dt,Lt){it._ops.linkClick(Lt)}).on("mouseover",function(Dt,Lt){Nn(Ke,Lt,"in",it)}).on("mouseout",function(Dt,Lt){Nn(Ke,Lt,"out",it)}),pt.attr("class",function(Dt){return"line-item line-item-".concat(Dt.source.id).concat(Dt.target.id)}).append("text").attr("class",function(Dt,Lt){return"line-text-item line-text-item-".concat(Lt)}).attr("stroke","none").style("pointer-events","none").style("text-anchor","middle").style("fill","rgba(184, 191, 204, 1)").style("font-size","10px"),Ke.selectAll(".line-item").style("display",function(Dt){return Dt.hide?"none":"block"}).style("opacity",function(Dt){return Dt.hide?"0":"1"}).attr("class",function(Dt,Lt){return"line-item line-item-".concat(Dt.source.id).concat(Dt.target.id," line-item-index-").concat(Lt," transition-opacity duration-500")}),[Ke.selectAll(".line-item"),Ke.selectAll(".line-item-inner"),Ke.selectAll(".line-text-item")]}function Nn(Ke,tt,it,pt){it==="in"?(Ke.select(".line-item-inner-".concat(tt.index)).style("fill",function(Dt){return Dt.colorType?No[Dt.colorType-1]:Dt.color||No[0]}),Ke.select(".line-item-inner-".concat(tt.index)).attr("stroke-width","3"),Ke.select(".line-item-inner-".concat(tt.index)).attr("stroke",function(Dt){return Dt.colorType?No[Dt.colorType-1]:Dt.color||No[0]}),Ke.select(".line-text-item-".concat(tt.index)).style("fill","rgba(184, 191, 204, 1)"),Ke.select(".line-text-item-".concat(tt.index)).style("font-size","14px")):(Ke.select(".line-item-inner-".concat(tt.index)).style("fill",function(Dt){return Dt.colorType?No[Dt.colorType-1]:Dt.color||No[0]}),Ke.select(".line-item-inner-".concat(tt.index)).attr("stroke-width",Math.sqrt(tt.value)),Ke.select(".line-item-inner-".concat(tt.index)).attr("stroke","none"),Ke.select(".line-text-item-".concat(tt.index)).style("fill","rgba(184, 191, 204, 1)"),Ke.select(".line-text-item-".concat(tt.index)).style("font-size","10px"))}function kn(Ke){var tt=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};Wt=Ke,tt._linkContainer.selectAll(".connect-item")._groups[0].length||tt._linkContainer.append("g").attr("class","connect-item").append("path").attr("stroke-width",2).attr("stroke","#5e5ef0").attr("class","connect-item-inner"),Dr("".concat(tt._ops.containerName)).on("mousemove",function(it){fr(it,tt)})}function fr(Ke,tt){var it,pt,Dt,Lt=(it=tt._linkContainer._groups[0][0].parentNode.attributes.transform,{translate:(Dt=(pt=it)&&/translate/.test(pt.value)&&/scale/.test(pt.value)&&pt.value.match(/translate\(([^\)]+)\)\s?scale\(([^\)]+)/))&&Dt[1].split(",")||[0,0],scale:Dt&&Dt[2]||1}),Gt=Lt.translate,zt=Lt.scale;tt._linkContainer.selectAll(".connect-item-inner").attr("d",function(){return"M".concat(Wt.x,", ").concat(Wt.y," L").concat(Ke.offsetX/zt-Gt[0]/zt,", ").concat(Ke.offsetY/zt-Gt[1]/zt)})}function ur(Ke){return Array.isArray(Ke[0])?{message:"success",done:function(tt){for(var it=0;it<Ke.length;it++){var pt={hide:!1,label:Ke[it][2]?Ke[it][2].name:"",source:Ke[it][0][tt._ops.benchmark],target:Ke[it][1][tt._ops.benchmark],props:Ke[it][3]?Ke[it][3].name:[],sourceRadius:32,targetRadius:32,value:1,sh:1,relation:1};tt._ops.links.push(pt)}tr(tt),tt.update()}}:{message:"error",done:tr}}function tr(Ke){Dr("".concat(Ke._ops.containerName)).on("mousemove",null),Ke._linkContainer.selectAll(".connect-item-inner").attr("d",null)}function Ir(Ke){var tt=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"order",it=arguments.length>2&&arguments[2]!==void 0?arguments[2]:1,pt=arguments.length>3&&arguments[3]!==void 0?arguments[3]:1,Dt=arguments.length>4&&arguments[4]!==void 0?arguments[4]:1,Lt=!0;return pt==1&&Ke.length%2==0&&(Lt=!1),Ke.map(function(Gt,zt){Gt._level=pt,Gt._value=pt==1?zt+1:zt+1+(it-1)*Ke.length,Gt._parent=pt==2?1:Dt,Gt._site=pt!=1||Lt?tt:zt<Ke.length/2?"right":"left",Gt.children&&Gt.children.length&&Ir(Gt.children,Gt._site,Gt._value,pt+1,Ke.length)}),Ke}var Sr,wr,ta,Yr=!1,Xr=[],xa=!1,ma=[],Ka=["arc-item","pie-item","pie-icon","operation-item","node-circle"],Fr=function(){function Ke(tt){var it=this;Si(this,Ke),this._example=tt,this._operationContainer=tt.operationContainer,this._operationContainer.addElement(this.initPie,this),this.containerSize=0,Dr(this._example._ops.containerName).on("click",function(pt){if(!(pt.target.classList&&pt.target.classList[0]&&Ka.includes(pt.target.classList[0]))&&it._example._ops.isCustomClick){var Dt=it;Sr=null,Wa(it._operationContainer),Dr(Dt._example._ops.containerName).selectAll(".node-circle").attr("fill",function(Lt){return Lt.colorType?Ko[Lt.colorType-1]:Lt.color||"url(#radialGradient-1)"}),Dr(Dt._example._ops.containerName).selectAll(".line-item").style("display",function(Lt){return Lt.hide?"none":"block"}),Dr(it._example._ops.containerName).style("background",it._example._ops.background),Dr(".graph-bath").style("display","none"),Xr=[]}}),document.addEventListener("keyup",function(pt){pt.keyCode==27&&xa&&(Dr("".concat(it._example._ops.containerName)).on("mousemove",null),Dr(".graph-container").on("mousemove",null),it._example._linkContainer.selectAll(".connect-item-inner").attr("d",null),ma.length=0)})}return bi(Ke,[{key:"initPie",value:function(tt,it){it._toolbarData=Ir(it._example._ops.toolbarData),it._symbolIcon=tt.append("g").attr("class","icons")}},{key:"showPie",value:function(tt,it){if(tt){var pt=this._example._ops;if(this.containerSize=function(Lt){var Gt=32;switch(Lt){case 1:Gt=26;break;case 2:default:Gt=32;break;case 3:Gt=38}return Gt}(tt.size)+8,xa)(function(Lt,Gt){Ai.apply(this,arguments)})(tt,this._example);else if(ms(tt,it.shiftKey,Xr,this._example),this._toolbarData.length&&(Wa(this._operationContainer),!it.shiftKey&&!Xr.length))if(Sr!=it.target.id){Sr=it.target.id,this._operationContainer.attr("transform",function(){return"translate("+tt.x+" "+tt.y+")"}).attr("data-node",JSON.stringify(tt)).style("display","block");var Dt={code:"root",name:"\u6839",_level:0,_parent:1,_value:1,children:this._toolbarData};Yr=!0,wr=tt,this._operationContainer.selectAll(".operation-item-root")._groups[0].length?this.drawPie("".concat(pt.containerName," .operation-item-root"),Dt):this.createArc(Dt)}else Sr=null}else Wa(this._operationContainer)}},{key:"createArc",value:function(tt){var it=this._example._ops,pt=this,Dt=this._operationContainer.selectAll("".concat(it.containerName," .operation-item-").concat(tt.code)).data(tt.children).enter().append("a").style("color",it.arcColor).attr("class","operation-item-".concat(tt.code," arc-item"));this._symbolIcon.selectAll(".icons-symbol").data(tt.children).enter().append("symbol").attr("class",function(Lt,Gt){return"icons-symbol-".concat(Lt.code).concat(Gt)}).attr("id",function(Lt,Gt){return"icons-symbol-".concat(Lt.code).concat(Gt)}).append("path").attr("class","icon").attr("d",function(Lt){return Lt.icon}),Dt.append("path").attr("fill",it.pieFill).attr("class","pie-item").on("mouseover",function(Lt){Lt.target.setAttribute("fill",it.activePieFill)}).on("mouseout",function(Lt){Lt.target.setAttribute("fill",it.pieFill)}).on("click",function(Lt,Gt){if(!Gt.click&&Gt.children&&Gt.code&&(pt._operationContainer.selectAll("".concat(it.containerName," .operation-item-").concat(Gt.code))._groups[0].length?pt.drawPie("".concat(it.containerName," .operation-item-").concat(Gt.code),Gt):pt.createArc(Gt)),Gt.click){if(!(Gt.click({verify:!0})instanceof Promise))throw Wa(pt._operationContainer),new Error("the click function does not return a promise");ta=Gt,function(zt,nn,Kt){Fi.apply(this,arguments)}(Gt,wr,pt)}}).append("title").text(function(Lt){return Lt.name}),Dt.append("svg").attr("class","pie-icon").style("display","none").attr("width",18).attr("height",18).attr("viewBox","0 0 1024 1024").append("use").attr("xlink:href",function(Lt,Gt){return"#icons-symbol-".concat(Lt.code).concat(Gt)}).style("pointer-events","none"),this.drawPie("".concat(it.containerName," .operation-item-").concat(tt.code),tt)}},{key:"drawPie",value:function(tt,it){var pt=this;if(!this._operationContainer.selectAll("".concat(tt," .pie-item")).attr("d")){var Dt=document.querySelectorAll("".concat(tt," .pie-icon"));this._operationContainer.selectAll(".arc-item").style("color",pt._example._ops.arcColor),this._operationContainer.selectAll("".concat(tt," .pie-item")).attr("fill",pt._example._ops.pieFill).transition().duration(500).attrTween("d",function(Lt,Gt){var zt=function(Kt,un,wn){var xn=[];if(un._site=="order"){var Zn=Kt._num||1,Wn=jt()(new Array(Kt.children.length*Zn).fill(1));return un._num=Wn.length,xn=Ni(Wn,Wn.length/Kt._num)[Kt._value-1],Kt._level==0&&(xn=Wn),xn}var Bn,_n=0,Rn=[];Kt._level==0?(_n=Kt.children.length,Bn=jt()(new Array(_n).fill(1)).map(function(Cr,Ur){if(Ur>=_n/2){var Qa=Cr.startAngle;Cr.startAngle=Cr.endAngle,Cr.endAngle=Qa}return Cr})):(_n=Kt._level==1?Kt.children.length*wn._toolbarData.length:Kt.children.length*Kt._num,Bn=jt()(new Array(_n).fill(1)).map(function(Cr){if(Kt._site=="left"){var Ur=Cr.startAngle;Cr.startAngle=Cr.endAngle,Cr.endAngle=Ur}return Cr})),un._num=Bn.length;var Kn=Kt._value;return un._site=="left"?(Rn=Bn.slice(Bn.length/2,Bn.length),Kn=Kt._value-Kt._num/2):Rn=Bn.slice(0,Bn.length/2),xn=Ni(Rn,Rn.length/(Kt._num/2))[Kn-1],Kt._level==0&&(xn=Bn),xn}(it,Lt,pt),nn=Uo(zt[Gt].startAngle,zt[Gt].endAngle);return function(Kt){return Yr?function(un,wn,xn,Zn,Wn,Bn,_n,Rn){var Kn=Bi(xn[_n].startAngle,wn(un),Wn._level+1,Wn._level+2,Rn),Cr=Kn.centroid(xn[_n]);return Zn[_n].setAttribute("x",Cr[0]-6),Zn[_n].setAttribute("y",Cr[1]-6),Rn._operationContainer.selectAll("".concat(Bn," .pie-icon")).transition().delay(150).styleTween("display",function(){return $i("none",Yr?"block":"none")}),Kn()}(Kt,nn,zt,Dt,it,tt,Gt,pt):""}})}}}]),Ke}();function Wa(Ke){Ke.selectAll(".arc-item .pie-item").interrupt().attr("d",null),Ke.selectAll(".arc-item .pie-icon").interrupt().style("display","none"),Ke.style("display","none"),Ke.selectAll(".operation-item").attr("transform",function(){return"rotate(0)"}),Yr=!1}var Bi=function(Ke,tt){var it=arguments.length>2&&arguments[2]!==void 0?arguments[2]:1,pt=arguments.length>3&&arguments[3]!==void 0?arguments[3]:2,Dt=arguments.length>4?arguments[4]:void 0;return w0().innerRadius(it*Dt.containerSize+2).outerRadius(pt*Dt.containerSize).padAngle(.02).startAngle(Ke).endAngle(tt)};function Fi(){return Fi=gi(Qr().mark(function Ke(tt,it,pt){var Dt,Lt,Gt;return Qr().wrap(function(zt){for(;;)switch(zt.prev=zt.next){case 0:zt.t0=tt.type,zt.next=zt.t0==="connect"?3:zt.t0==="unlocked"?8:33;break;case 3:return ma.length=0,xa=!0,ma.push(it),kn(it,pt._example),zt.abrupt("break",36);case 8:Lt=Vo(pt._example._ops.nodes),zt.prev=9,Lt.s();case 11:if((Gt=Lt.n()).done){zt.next=19;break}if((Dt=Gt.value).id!=it.id){zt.next=17;break}return Dt.fx=null,Dt.fy=null,zt.abrupt("break",19);case 17:zt.next=11;break;case 19:zt.next=24;break;case 21:zt.prev=21,zt.t1=zt.catch(9),Lt.e(zt.t1);case 24:return zt.prev=24,Lt.f(),zt.finish(24);case 27:return pt._example._simulation._simulation.nodes(pt._example._ops.nodes),pt._example._simulation._simulation.alphaTarget(.08).restart(),setTimeout(function(){pt._example._simulation._simulation.alphaTarget(0)},300),zt.next=32,tt.click(it);case 32:return zt.abrupt("break",36);case 33:return zt.next=35,tt.click({node:it});case 35:ml(tt.type,[it.id],pt._example);case 36:Sr=null,Wa(pt._operationContainer);case 38:case"end":return zt.stop()}},Ke,null,[[9,21,24,27]])})),Fi.apply(this,arguments)}function Ai(){return(Ai=gi(Qr().mark(function Ke(tt,it){var pt,Dt,Lt;return Qr().wrap(function(Gt){for(;;)switch(Gt.prev=Gt.next){case 0:return Dr(".graph-container").on("mousemove",null),xa=!1,ma.push(tt),Dt={node:tt,connects:(pt=[]).concat.apply(pt,ma)},Gt.next=6,ta.click(Dt);case 6:Lt=Gt.sent,ur(Lt||[ma.splice(0)]).done(it),ms(Dt.connects[0],!1,[],it),ma.length=0;case 11:case"end":return Gt.stop()}},Ke)}))).apply(this,arguments)}function Ni(Ke,tt){for(var it=[],pt=0;pt<Ke.length;)it.push(Ke.slice(pt,pt+=tt));return it}function to(Ke,tt,it,pt){var Dt=arguments.length>4&&arguments[4]!==void 0?arguments[4]:1,Lt=arguments.length>5&&arguments[5]!==void 0?arguments[5]:7,Gt=arguments.length>6&&arguments[6]!==void 0?arguments[6]:7;this.deflection=pt;var zt=function(ia){return ia*ia},nn=this.deflection*Math.PI/180,Kt={x:Math.cos(nn)*Ke,y:Math.sin(nn)*Ke},un=Ke/(tt+Gt),wn=-it*un/(1-un),xn=function(ia,da,wi,xi){var oa=ia.y/(ia.x-wn),mo=ia.y-oa*ia.x,wo=1+zt(oa),ks=2*(oa*mo-wi),Ls=zt(mo)+zt(wi)-zt(da),Js={x:(-ks+xi*Math.sqrt(zt(ks)-4*wo*Ls))/(2*wo)};return Js.y=(Js.x-wn)*oa,Js},Zn=xn(Kt,tt+Gt,it,-1),Wn=-Kt.x/Kt.y,Bn=Kt.y+zt(Kt.x)/Kt.y,_n=-(Zn.x-it)/Zn.y,Rn=Zn.y+(Zn.x-it)*Zn.x/Zn.y,Kn=(Bn-Rn)/(_n-Wn),Cr=Wn*Kn+Bn,Ur=Math.sqrt(zt(Kn-Kt.x)+zt(Cr-Kt.y)),Qa=Math.atan2(Kt.x-Kn,Cr-Kt.y),ea=Math.atan2(Zn.x-Kn,Cr-Zn.y),pa=(Qa+ea)/2;this.deflection>0&&(pa+=Math.PI);var oi=ea-Qa;this.deflection>0&&(oi=2*Math.PI-oi),this.shaftLength=oi*Ur,Qa>ea&&(this.shaftLength=0),this.midShaftPoint={x:Kn+Ur*Math.sin(pa),y:Cr-Ur*Math.cos(pa)};var $a=function(ia){var da=(ia<0?1:-1)*Math.sqrt(zt(ia)/(1+zt(Wn))),wi=Wn*da;return{x:Kt.x+da,y:Kt.y+wi}},Mr=function(ia){var da=(ia<0?-1:1)*Math.sqrt(zt(ia)/(1+zt(_n))),wi=_n*da;return{x:Zn.x+da,y:Zn.y+wi}},aa=function(ia,da){return{x:Kn+(Ur+da)*Math.sin(ia),y:Cr-(Ur+da)*Math.cos(ia)}},di=function(ia){var da=(ia<0?-1:1)*Math.sqrt(zt(ia)/(1+zt(1/_n))),wi=da/_n;return{x:Zn.x+da,y:Zn.y-wi}},ar=function(ia){return ia.x+","+ia.y},Tr=Dt/2,sa=Lt/2,ca=Kt.y>0?0:1,La=Kt.y<0?0:1;this.outline=function(){if(Qa>ea)return["M",ar(Mr(-sa)),"L",ar(di(Gt)),"L",ar(Mr(sa)),"Z"].join(" ");var ia=pa-0,da=pa+0;return["M",ar($a(Tr)),"L",ar($a(-Tr)),"A",Ur-Tr,Ur-Tr,0,0,ca,ar(aa(ia,-Tr)),"L",ar(aa(ia,Tr)),"A",Ur+Tr,Ur+Tr,0,0,La,ar($a(Tr)),"Z","M",ar(aa(da,Tr)),"L",ar(aa(da,-Tr)),"A",Ur-Tr,Ur-Tr,0,0,ca,ar(Mr(-Tr)),"L",ar(Mr(-sa)),"L",ar(di(Gt)),"L",ar(Mr(sa)),"L",ar(Mr(Tr)),"A",Ur+Tr,Ur+Tr,0,0,La,ar(aa(da,Tr))].join(" ")}}function ii(Ke,tt,it){var pt=arguments.length>3&&arguments[3]!==void 0?arguments[3]:8,Dt=arguments.length>4&&arguments[4]!==void 0?arguments[4]:1,Lt=arguments.length>5&&arguments[5]!==void 0?arguments[5]:7,Gt=arguments.length>6&&arguments[6]!==void 0?arguments[6]:7,zt=it*Math.PI/180,nn=Ke,Kt=Ke+Gt,un=Ke+tt,wn=un*Math.tan(zt/2),xn=Dt/2;function Zn(Kn,Cr){return Kn+","+Cr}this.shaftLength=3*wn+Dt;var Wn=function(Kn,Cr,Ur){var Qa=Cr*Math.tan(zt/2),ea=Cr/Math.cos(zt/2);return Zn((Qa+Ur)*Math.sin(Kn),ea+(Qa+Ur)*Math.cos(Kn))},Bn=function(){var Kn=Wn(0,un,xn+pt/2+2).split(",");return{x:Kn[0],y:Kn[1]}};this.midShaftPoint=Bn();var _n=function(Kn,Cr){return Wn((Math.PI+zt)/2,Kn,Cr)},Rn=function(Kn,Cr){return Wn(-(Math.PI+zt)/2,Kn,Cr)};this.outline=function(){var Kn=wn-xn,Cr=wn+xn;return["M",_n(nn,xn),"L",_n(un,xn),"A",Cr,Cr,0,1,1,Rn(un,xn),"L",Rn(Kt,xn),"L",Rn(Kt,-Lt/2),"L",Rn(nn,0),"L",Rn(Kt,Lt/2),"L",Rn(Kt,-xn),"L",Rn(un,-xn),"A",Kn,Kn,0,1,0,_n(un,-xn),"L",_n(nn,-xn),"Z"].join(" ")}}function Pi(Ke,tt,it){var pt=arguments.length>3&&arguments[3]!==void 0?arguments[3]:1,Dt=arguments.length>4&&arguments[4]!==void 0?arguments[4]:7,Lt=arguments.length>5&&arguments[5]!==void 0?arguments[5]:7;this.length=it-(Ke+tt),this.shaftLength=this.length-Lt;var Gt=Ke,zt=Gt+this.shaftLength,nn=Gt+this.length,Kt=pt/2,un=Dt/2;this.midShaftPoint={x:Gt+this.shaftLength/2,y:0},this.outline=function(){var wn=0,xn=0;return["M",Gt,Kt,"L",wn,Kt,"L",wn,-Kt,"L",Gt,-Kt,"Z","M",xn,Kt,"L",zt,Kt,"L",zt,un,"L",nn,0,"L",zt,-un,"L",zt,-Kt,"L",xn,-Kt,"Z"].join(" ")}}function li(){}var Za=new li;function qa(Ke,tt){this.relationships=[],Ke.id<tt.id?(this.nodeA=Ke,this.nodeB=tt):(this.nodeA=tt,this.nodeB=Ke)}li.prototype.computeGeometryForNonLoopArrows=function(Ke){for(var tt,it=function(xn){return xn*xn},pt=0,Dt=Array.from(Ke);pt<Dt.length;pt++)for(var Lt=(tt=Dt[pt]).nodeA.x-tt.nodeB.x,Gt=tt.nodeA.y-tt.nodeB.y,zt=(Math.atan2(Gt,Lt)/Math.PI*180+360)%360,nn=Math.sqrt(it(Lt)+it(Gt)),Kt=void 0,un=0,wn=Array.from(tt.relationships);un<wn.length;un++)(Kt=wn[un]).naturalAngle=Kt.target.id===tt.nodeA.id?(zt+180)%360:zt,Kt.centreDistance=nn},li.prototype.shortenCaption=function(Ke,tt){for(var it=Ke,pt=12*it.length;;){if(tt>pt)return it;var Dt=Math.ceil((pt-tt)/12);return it.length-Dt<=0?"":it.substr(0,it.length-Dt)+"\u2026"}},li.prototype.distributeAnglesForLoopArrows=function(Ke,tt){for(var it,pt=0,Dt=Array.from(Ke);pt<Dt.length;pt++)if((it=Dt[pt]).isLoop()){for(var Lt=void 0,Gt=void 0,zt=[],nn=it.nodeA,Kt=void 0,un=0,wn=Array.from(tt);un<wn.length;un++)(Kt=wn[un]).isLoop||(Kt.source.id===nn.id&&zt.push(Kt.naturalAngle),Kt.target.id===nn.id&&zt.push(Kt.naturalAngle+180));if(zt=zt.map(function(Bn){return(Bn+360)%360}).sort(function(Bn,_n){return Bn-_n}),zt.length>0){var xn=void 0,Zn=void 0,Wn={start:0,end:0};for(Lt=0;Lt<zt.length;Lt++)Zn=zt[Lt],(xn=Lt===zt.length-1?zt[0]+360:zt[Lt+1])-Zn>Wn.end-Wn.start&&(Wn.start=Zn,Wn.end=xn);for(Gt=(Wn.end-Wn.start)/(it.relationships.length+1),Lt=0;Lt<it.relationships.length;Lt++)(Kt=it.relationships[Lt]).naturalAngle=(Wn.start+(Lt+1)*Gt-90)%360}else for(Gt=360/it.relationships.length,Lt=0;Lt<it.relationships.length;Lt++)(Kt=it.relationships[Lt]).naturalAngle=Lt*Gt}},li.prototype.layoutRelationships=function(Ke){var tt,it,pt=function(Zn){for(var Wn,Bn={},_n=0,Rn=Array.from(Zn);_n<Rn.length;_n++){var Kn=new qa((Wn=Rn[_n]).source,Wn.target);(Kn=Bn[Kn]!=null?Bn[Kn]:Kn).relationships.push(Wn),Bn[Kn]=Kn}return function(){var Cr=[];for(var Ur in Bn){var Qa=Bn[Ur];Cr.push(Qa)}return Cr}()}(Ke);this.computeGeometryForNonLoopArrows(pt),this.distributeAnglesForLoopArrows(pt,Ke);for(var Dt=0,Lt=Array.from(pt);Dt<Lt.length;Dt++){it=Lt[Dt];for(var Gt=0,zt=Array.from(it.relationships);Gt<zt.length;Gt++)delete(tt=zt[Gt]).arrow;for(var nn=(it.relationships.length-1)/2,Kt=it.relationships.length-1,un=30*Kt>150?150/Kt:30,wn=0;wn<it.relationships.length;wn++){if(tt=it.relationships[wn],it.isLoop())tt.arrow=new ii(tt.sourceRadius,40,30);else if(wn===nn)tt.arrow=new Pi(tt.sourceRadius,tt.targetRadius,tt.centreDistance);else{var xn=un*(wn-nn);it.nodeA.id!==tt.source.id&&(xn*=-1),tt.arrow=new to(tt.sourceRadius,tt.targetRadius,tt.centreDistance,xn)}tt.shortCaption=this.shortenCaption(tt.label,tt.arrow.shaftLength)}}},li.prototype.layoutNodes=function(Ke){var tt=Ke.width,it=Ke.height,pt=Ke.layout,Dt=Ke.nodes;(function(){var Lt=99999999,Gt=-99999999,zt=99999999,nn=-99999999,Kt=-9999999;Dt.forEach(function(xn){Lt>xn.x&&(Lt=xn.x),Gt<xn.x&&(Gt=xn.x),zt>xn.y&&(zt=xn.y),nn<xn.y&&(nn=xn.y),Kt<xn.size&&(Kt=12)});var un=(tt-pt.x-Kt)/(Gt-Lt),wn=(it-pt.y-Kt)/(nn-zt);Dt.forEach(function(xn){xn.x=(xn.x-Lt)*un+pt.x/2,xn.y=(xn.y-zt)*wn+pt.y/2})})()},qa.prototype.toString=function(){return this.nodeA.id+""+this.nodeB.id},qa.prototype.isLoop=function(){return this.nodeA.id===this.nodeB.id};var ki=function(){function Ke(tt){Si(this,Ke);var it=tt.operationContainer,pt=tt._ops,Dt=pt.width,Lt=pt.height,Gt=pt.layout;this._root=tt._ops,this._rootComponent=it,this.init(Dt,Lt,Gt)}return bi(Ke,[{key:"init",value:function(tt,it,pt){console.log(tt,"width");var Dt=pt.simulation?pt.simulation:.01;this._simulation=P0([]).force("center",function(Lt,Gt){var zt,nn=1;function Kt(){var un,wn,xn=zt.length,Zn=0,Wn=0;for(un=0;un<xn;++un)Zn+=(wn=zt[un]).x,Wn+=wn.y;for(Zn=(Zn/xn-Lt)*nn,Wn=(Wn/xn-Gt)*nn,un=0;un<xn;++un)(wn=zt[un]).x-=Zn,wn.y-=Wn}return Lt==null&&(Lt=0),Gt==null&&(Gt=0),Kt.initialize=function(un){zt=un},Kt.x=function(un){return arguments.length?(Lt=+un,Kt):Lt},Kt.y=function(un){return arguments.length?(Gt=+un,Kt):Gt},Kt.strength=function(un){return arguments.length?(nn=+un,Kt):nn},Kt}(tt/2,it/2).strength(.03)).force("charge",function(){var Lt,Gt,zt,nn,Kt,un=du(-30),wn=1,xn=1/0,Zn=.81;function Wn(Kn){var Cr,Ur=Lt.length,Qa=Ju(Lt,th,Ph).visitAfter(_n);for(nn=Kn,Cr=0;Cr<Ur;++Cr)Gt=Lt[Cr],Qa.visit(Rn)}function Bn(){if(Lt){var Kn,Cr,Ur=Lt.length;for(Kt=new Array(Ur),Kn=0;Kn<Ur;++Kn)Cr=Lt[Kn],Kt[Cr.index]=+un(Cr,Kn,Lt)}}function _n(Kn){var Cr,Ur,Qa,ea,pa,oi=0,$a=0;if(Kn.length){for(Qa=ea=pa=0;pa<4;++pa)(Cr=Kn[pa])&&(Ur=Math.abs(Cr.value))&&(oi+=Cr.value,$a+=Ur,Qa+=Ur*Cr.x,ea+=Ur*Cr.y);Kn.x=Qa/$a,Kn.y=ea/$a}else{(Cr=Kn).x=Cr.data.x,Cr.y=Cr.data.y;do oi+=Kt[Cr.data.index];while(Cr=Cr.next)}Kn.value=oi}function Rn(Kn,Cr,Ur,Qa){if(!Kn.value)return!0;var ea=Kn.x-Gt.x,pa=Kn.y-Gt.y,oi=Qa-Cr,$a=ea*ea+pa*pa;if(oi*oi/Zn<$a)return $a<xn&&(ea===0&&($a+=(ea=au(zt))*ea),pa===0&&($a+=(pa=au(zt))*pa),$a<wn&&($a=Math.sqrt(wn*$a)),Gt.vx+=ea*Kn.value*nn/$a,Gt.vy+=pa*Kn.value*nn/$a),!0;if(!(Kn.length||$a>=xn)){(Kn.data!==Gt||Kn.next)&&(ea===0&&($a+=(ea=au(zt))*ea),pa===0&&($a+=(pa=au(zt))*pa),$a<wn&&($a=Math.sqrt(wn*$a)));do Kn.data!==Gt&&(oi=Kt[Kn.data.index]*nn/$a,Gt.vx+=ea*oi,Gt.vy+=pa*oi);while(Kn=Kn.next)}}return Wn.initialize=function(Kn,Cr){Lt=Kn,zt=Cr,Bn()},Wn.strength=function(Kn){return arguments.length?(un=typeof Kn=="function"?Kn:du(+Kn),Bn(),Wn):un},Wn.distanceMin=function(Kn){return arguments.length?(wn=Kn*Kn,Wn):Math.sqrt(wn)},Wn.distanceMax=function(Kn){return arguments.length?(xn=Kn*Kn,Wn):Math.sqrt(xn)},Wn.theta=function(Kn){return arguments.length?(Zn=Kn*Kn,Wn):Math.sqrt(Zn)},Wn}().strength(-350)).force("collide",function(Lt){var Gt,zt,nn,Kt=1,un=1;function wn(){for(var Wn,Bn,_n,Rn,Kn,Cr,Ur,Qa=Gt.length,ea=0;ea<un;++ea)for(Bn=Ju(Gt,md,$f).visitAfter(xn),Wn=0;Wn<Qa;++Wn)_n=Gt[Wn],Cr=zt[_n.index],Ur=Cr*Cr,Rn=_n.x+_n.vx,Kn=_n.y+_n.vy,Bn.visit(pa);function pa(oi,$a,Mr,aa,di){var ar=oi.data,Tr=oi.r,sa=Cr+Tr;if(!ar)return $a>Rn+sa||aa<Rn-sa||Mr>Kn+sa||di<Kn-sa;if(ar.index>_n.index){var ca=Rn-ar.x-ar.vx,La=Kn-ar.y-ar.vy,ia=ca*ca+La*La;ia<sa*sa&&(ca===0&&(ia+=(ca=au(nn))*ca),La===0&&(ia+=(La=au(nn))*La),ia=(sa-(ia=Math.sqrt(ia)))/ia*Kt,_n.vx+=(ca*=ia)*(sa=(Tr*=Tr)/(Ur+Tr)),_n.vy+=(La*=ia)*sa,ar.vx-=ca*(sa=1-sa),ar.vy-=La*sa)}}}function xn(Wn){if(Wn.data)return Wn.r=zt[Wn.data.index];for(var Bn=Wn.r=0;Bn<4;++Bn)Wn[Bn]&&Wn[Bn].r>Wn.r&&(Wn.r=Wn[Bn].r)}function Zn(){if(Gt){var Wn,Bn,_n=Gt.length;for(zt=new Array(_n),Wn=0;Wn<_n;++Wn)Bn=Gt[Wn],zt[Bn.index]=+Lt(Bn,Wn,Gt)}}return typeof Lt!="function"&&(Lt=du(Lt==null?1:+Lt)),wn.initialize=function(Wn,Bn){Gt=Wn,nn=Bn,Zn()},wn.iterations=function(Wn){return arguments.length?(un=+Wn,wn):un},wn.strength=function(Wn){return arguments.length?(Kt=+Wn,wn):Kt},wn.radius=function(Wn){return arguments.length?(Lt=typeof Wn=="function"?Wn:du(+Wn),Zn(),wn):Lt},wn}(40)).force("x",function(Lt){var Gt,zt,nn,Kt=du(.1);function un(xn){for(var Zn,Wn=0,Bn=Gt.length;Wn<Bn;++Wn)(Zn=Gt[Wn]).vx+=(nn[Wn]-Zn.x)*zt[Wn]*xn}function wn(){if(Gt){var xn,Zn=Gt.length;for(zt=new Array(Zn),nn=new Array(Zn),xn=0;xn<Zn;++xn)zt[xn]=isNaN(nn[xn]=+Lt(Gt[xn],xn,Gt))?0:+Kt(Gt[xn],xn,Gt)}}return typeof Lt!="function"&&(Lt=du(Lt==null?0:+Lt)),un.initialize=function(xn){Gt=xn,wn()},un.strength=function(xn){return arguments.length?(Kt=typeof xn=="function"?xn:du(+xn),wn(),un):Kt},un.x=function(xn){return arguments.length?(Lt=typeof xn=="function"?xn:du(+xn),wn(),un):Lt},un}(tt/2).strength(.01)).force("y",function(Lt){var Gt,zt,nn,Kt=du(.1);function un(xn){for(var Zn,Wn=0,Bn=Gt.length;Wn<Bn;++Wn)(Zn=Gt[Wn]).vy+=(nn[Wn]-Zn.y)*zt[Wn]*xn}function wn(){if(Gt){var xn,Zn=Gt.length;for(zt=new Array(Zn),nn=new Array(Zn),xn=0;xn<Zn;++xn)zt[xn]=isNaN(nn[xn]=+Lt(Gt[xn],xn,Gt))?0:+Kt(Gt[xn],xn,Gt)}}return typeof Lt!="function"&&(Lt=du(Lt==null?0:+Lt)),un.initialize=function(xn){Gt=xn,wn()},un.strength=function(xn){return arguments.length?(Kt=typeof xn=="function"?xn:du(+xn),wn(),un):Kt},un.y=function(xn){return arguments.length?(Lt=typeof xn=="function"?xn:du(+xn),wn(),un):Lt},un}(it/2).strength(Dt))}},{key:"updateSimulation",value:function(tt,it,pt){var Dt=arguments.length>3&&arguments[3]!==void 0?arguments[3]:1,Lt=pt.benchmark,Gt=pt.height,zt=pt.width,nn=pt.isResize,Kt=pt.layout,un=Kt.distance?Kt.distance:Math.min(Gt,zt)/2-80,wn=eh(it).iterations(.05).id(function(xn){return xn[Lt]}).distance(function(){return it.length<=5&&nn?100:it.length<=20&&nn?un:it.length<=60?180:230});this._simulation.nodes(tt).force("link",wn).velocityDecay(.2).alpha(Dt).alphaDecay(.08),this._simulation.restart()}},{key:"addSimulationEvent",value:function(tt,it,pt,Dt){var Lt=this,Gt=mi(tt,3),zt=Gt[0],nn=Gt[1],Kt=Gt[2];this._simulation.on("tick",function(){return Za.layoutRelationships(Dt),Lt._root.layout.force&&Za.layoutNodes(Lt._root),zt.attr("transform",function(un){return"translate("+un.source.x+" "+un.source.y+") rotate("+(un.naturalAngle-180)+")"}),nn.attr("d",function(un){return un.arrow.outline(un)}),Kt.attr("x",function(un){return un.arrow.midShaftPoint.x}).attr("y",function(un){return un.arrow.midShaftPoint.y+13}).attr("transform",function(un){return un.naturalAngle<90||un.naturalAngle>270?"rotate(180 "+un.arrow.midShaftPoint.x+" "+un.arrow.midShaftPoint.y+")":null}).text(function(un){return un.shortCaption}),it.attr("cx",function(un){return un.x}).attr("cy",function(un){return un.y}).attr("x",function(un){return un.shape=="rect"?un.x-ts(un.size):un.x-un.size+6}).attr("y",function(un){return un.shape=="rect"?un.y-ts(un.size)/1.5:un.y-un.size+6}),void pt.attr("x",function(un){return Zs(un.name,ts(un.size)).forEach(function(wn,xn){Dr(".node-circle--tspan-".concat(un.id,"-").concat(xn)).attr("x",un.x).attr("y",wn.y+un.y)}),un.x}).attr("y",function(un){return un.y})})}},{key:"drag",value:function(){var tt=this;return function(){var it,pt,Dt,Lt,Gt=ui,zt=mr,nn=Er,Kt=ba,un={},wn=Ne("start","drag","end"),xn=0,Zn=0;function Wn(ea){ea.on("mousedown.drag",Bn).filter(Kt).on("touchstart.drag",Kn).on("touchmove.drag",Cr,Ma).on("touchend.drag touchcancel.drag",Ur).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function Bn(ea,pa){if(!Lt&&Gt.call(this,ea,pa)){var oi=Qa(this,zt.call(this,ea,pa),ea,pa,"mouse");oi&&(Dr(ea.view).on("mousemove.drag",_n,Ja).on("mouseup.drag",Rn,Ja),Di(ea.view),Na(ea),Dt=!1,it=ea.clientX,pt=ea.clientY,oi("start",ea))}}function _n(ea){if(Da(ea),!Dt){var pa=ea.clientX-it,oi=ea.clientY-pt;Dt=pa*pa+oi*oi>Zn}un.mouse("drag",ea)}function Rn(ea){Dr(ea.view).on("mousemove.drag mouseup.drag",null),_a(ea.view,Dt),Da(ea),un.mouse("end",ea)}function Kn(ea,pa){if(Gt.call(this,ea,pa)){var oi,$a,Mr=ea.changedTouches,aa=zt.call(this,ea,pa),di=Mr.length;for(oi=0;oi<di;++oi)($a=Qa(this,aa,ea,pa,Mr[oi].identifier,Mr[oi]))&&(Na(ea),$a("start",ea,Mr[oi]))}}function Cr(ea){var pa,oi,$a=ea.changedTouches,Mr=$a.length;for(pa=0;pa<Mr;++pa)(oi=un[$a[pa].identifier])&&(Da(ea),oi("drag",ea,$a[pa]))}function Ur(ea){var pa,oi,$a=ea.changedTouches,Mr=$a.length;for(Lt&&clearTimeout(Lt),Lt=setTimeout(function(){Lt=null},500),pa=0;pa<Mr;++pa)(oi=un[$a[pa].identifier])&&(Na(ea),oi("end",ea,$a[pa]))}function Qa(ea,pa,oi,$a,Mr,aa){var di,ar,Tr,sa=wn.copy(),ca=Gr(aa||oi,pa);if((Tr=nn.call(ea,new Ya("beforestart",{sourceEvent:oi,target:Wn,identifier:Mr,active:xn,x:ca[0],y:ca[1],dx:0,dy:0,dispatch:sa}),$a))!=null)return di=Tr.x-ca[0]||0,ar=Tr.y-ca[1]||0,function La(ia,da,wi){var xi,oa=ca;switch(ia){case"start":un[Mr]=La,xi=xn++;break;case"end":delete un[Mr],--xn;case"drag":ca=Gr(wi||da,pa),xi=xn}sa.call(ia,ea,new Ya(ia,{sourceEvent:da,subject:Tr,target:Wn,identifier:Mr,active:xi,x:ca[0]+di,y:ca[1]+ar,dx:ca[0]-oa[0],dy:ca[1]-oa[1],dispatch:sa}),$a)}}return Wn.filter=function(ea){return arguments.length?(Gt=typeof ea=="function"?ea:Vr(!!ea),Wn):Gt},Wn.container=function(ea){return arguments.length?(zt=typeof ea=="function"?ea:Vr(ea),Wn):zt},Wn.subject=function(ea){return arguments.length?(nn=typeof ea=="function"?ea:Vr(ea),Wn):nn},Wn.touchable=function(ea){return arguments.length?(Kt=typeof ea=="function"?ea:Vr(!!ea),Wn):Kt},Wn.on=function(){var ea=wn.on.apply(wn,arguments);return ea===wn?Wn:ea},Wn.clickDistance=function(ea){return arguments.length?(Zn=(ea=+ea)*ea,Wn):Math.sqrt(Zn)},Wn}().on("start",function(it){var pt=it.subject;it.active||tt._simulation.alphaTarget(.08).restart(),pt.fx=pt.x,pt.fy=pt.y}).on("drag",function(it){Wa(tt._rootComponent),it.subject.fx=it.x,it.subject.fy=it.y,it.subject.drag=!0,tt._simulation.force("center",null),tt._root.nodeMove(it)}).on("end",function(it){it.active||tt._simulation.alphaTarget(0)})}}]),Ke}();function Ao(Ke,tt,it){var pt=document.createElement("ul");pt.className="graph-bath",tt.forEach(function(Dt){var Lt=document.createElement("li");if(Lt.innerText=Dt.name,Lt.className="graph-bath-item",Dt.click){if(!(Dt.click()instanceof Promise))throw new Error("the click function does not return a promise");Lt.onclick=function(){ml(Dt.type,Xr,it,Dt.click)}}else Lt.onclick=function(){ml(Dt.type,Xr,it)};pt.appendChild(Lt)}),pt.style.position="fixed",pt.style.top="100px",pt.style.right="0",pt.style.display="none",document.querySelector(it._ops.containerName).append(pt)}var no={width:1e3,height:1e3,containerName:"#graph",benchmark:"id",background:"#F7FAFC",pieFill:"#dddde1",activePieFill:"#b5b5bd",arcColor:"#000",isShowMask:!0,isResize:!1,isCustomClick:!0,isCustomMouse:!1,isShowBatchOperation:!1,clickToggle:!1,nodes:[],links:[],nodeSize:32,nodeClick:function(){},nodeMouseover:function(){},nodeMouseout:function(){},nodeMove:function(){},linkClick:function(){},zoomOptions:{minScale:.5,maxScale:1.5},linkOps:{stroke:"#999","stroke-opacity":.6},layout:{simulation:0,distance:0,force:!1,x:10,y:10},colors:["rgba(42, 134, 246, 1)","rgba(9, 179, 222, 1)","rgba(253, 141, 60, 1)","rgba(255, 71, 81, 1)","rgba(120, 152, 210, 1)","rgba(110, 184, 201, 1)","rgba(245, 174, 42, 1)","rgba(254, 126, 133, 1)"],activeColors:["rgba(42, 134, 246, .6)","rgba(9, 179, 222, .6)","rgba(253, 141, 60, .6)","rgba(255, 71, 81, .6)","rgba(120, 152, 210, .6)","rgba(110, 184, 201, .6)","rgba(245, 174, 42, .6)","rgba(254, 126, 133, .6)"],batchOperation:[{name:"\u5220\u9664",type:"remove"},{name:"\u9690\u85CF",type:"hide"},{name:"\u5C55\u5F00",type:"extend"},{name:"\u6536\u8D77",type:"contraction"},{name:"\u4FEE\u6539\u989C\u8272",type:"editColor"},{name:"\u4FEE\u6539\u5927\u5C0F",type:"editSize"},{name:"\u4FEE\u6539\u5F62\u72B6",type:"editShape"}],toolbarData:[{name:"\u5C55\u5F00",code:"extend",icon:"M512 426.666667c93.866667 0 170.666667-76.8 170.666667-170.666667 0-93.866667-76.8-170.666667-170.666667-170.666667C418.133333 85.333333 341.333333 162.133333 341.333333 256 341.333333 349.866667 418.133333 426.666667 512 426.666667zM512 170.666667c46.933333 0 85.333333 38.4 85.333333 85.333333 0 46.933333-38.4 85.333333-85.333333 85.333333-46.933333 0-85.333333-38.4-85.333333-85.333333C426.666667 209.066667 465.066667 170.666667 512 170.666667zM256 554.666667c-93.866667 0-170.666667 76.8-170.666667 170.666667 0 93.866667 76.8 170.666667 170.666667 170.666667 93.866667 0 170.666667-76.8 170.666667-170.666667C426.666667 631.466667 349.866667 554.666667 256 554.666667zM256 810.666667c-46.933333 0-85.333333-38.4-85.333333-85.333333 0-46.933333 38.4-85.333333 85.333333-85.333333 46.933333 0 85.333333 38.4 85.333333 85.333333C341.333333 772.266667 302.933333 810.666667 256 810.666667zM512 473.6c-42.666667 0-81.066667 38.4-81.066667 81.066667s38.4 81.066667 81.066667 81.066667c42.666667 0 81.066667-38.4 81.066667-81.066667S554.666667 473.6 512 473.6zM768 554.666667c-93.866667 0-170.666667 76.8-170.666667 170.666667 0 93.866667 76.8 170.666667 170.666667 170.666667 93.866667 0 170.666667-76.8 170.666667-170.666667C938.666667 631.466667 861.866667 554.666667 768 554.666667zM768 810.666667c-46.933333 0-85.333333-38.4-85.333333-85.333333 0-46.933333 38.4-85.333333 85.333333-85.333333 46.933333 0 85.333333 38.4 85.333333 85.333333C853.333333 772.266667 814.933333 810.666667 768 810.666667z",type:"extend",click:function(){return new Promise(function(Ke){Ke(!1)})}},{name:"\u9690\u85CF",code:"hide",icon:"M906.688 126.976a48 48 0 0 1 3.84 62.528l-4.736 5.376-104.96 101.952a1013.12 1013.12 0 0 1 130.24 112.128c53.952 54.336 56.512 140.352 7.68 197.76l-7.68 8.32-17.92 17.728C775.872 765.568 642.176 832 512 832c-67.584 0-136.064-17.92-205.568-53.696l-117.76 114.56a48 48 0 0 1-71.68-63.488l4.8-5.312L222.08 726.4a1015.04 1015.04 0 0 1-129.152-111.36 146.304 146.304 0 0 1-7.68-197.76l7.68-8.32 17.92-17.728C248.128 258.432 381.824 192 512 192c67.2 0 135.36 17.728 204.416 53.12l122.368-119.04a48 48 0 0 1 67.84 0.896z m-208 269.44L626.944 466.304a123.584 123.584 0 0 1-163.584 159.296l-71.872 69.952a219.584 219.584 0 0 0 307.264-299.2zM512 292.416A219.584 219.584 0 0 0 324.608 626.56l72.064-70.08a123.584 123.584 0 0 1 162.88-158.592l72-70.144A218.56 218.56 0 0 0 512 292.48z",type:"hide",click:function(){return new Promise(function(Ke){Ke(!1)})}},{name:"\u89E3\u9501",code:"unlocked",icon:"M553.55 601.87v209.1c0 21.74-17.63 39.36-39.36 39.36-21.74 0-39.36-17.62-39.36-39.36v-209.1c0-21.74 17.63-39.36 39.36-39.36 21.74 0 39.36 17.62 39.36 39.36zM929.8 497.94v412.04c0 62.06-50.48 112.54-112.54 112.54h-611.3c-62.06 0-112.54-50.48-112.54-112.54V497.94c0-62.06 50.48-112.54 112.54-112.54h5.45c0.18-134.05 31.06-235.21 91.82-300.66 27.43-29.55 60.84-51.69 99.31-65.79C435.89 6.72 473.17 0.52 513.31 0.52c78.95 0 140.72 17.26 188.82 52.76 27.18 20.06 49.94 46.2 67.64 77.69 17.86 31.77 31.11 70.05 39.39 113.76 4.04 21.35-9.99 41.94-31.34 45.98-21.35 4.05-41.94-9.98-45.98-31.34-23.91-126.28-89.27-180.16-218.53-180.16-64.75 0-116.03 19.88-152.42 59.07-46.83 50.44-70.64 133.58-70.81 247.12h527.17c62.06 0 112.55 50.48 112.55 112.54z m-78.72 0c0-18.65-15.18-33.82-33.82-33.82h-611.3c-18.65 0-33.82 15.17-33.82 33.82v412.04c0 18.65 15.18 33.82 33.82 33.82h611.3c18.65 0 33.82-15.18 33.82-33.82V497.94z",type:"unlocked",click:function(){return new Promise(function(Ke){Ke(!1)})}},{name:"\u6536\u8D77",code:"contraction",icon:"M890.2 115H133.8c-20.9 0-37.8 16.9-37.8 37.8v37.8c0 20.9 16.9 37.8 37.8 37.8h756.4c20.9 0 37.8-16.9 37.8-37.8v-37.8c0-20.9-16.9-37.8-37.8-37.8zM890.2 455.3H398.5c-20.9 0-37.8 16.9-37.8 37.8v37.8c0 20.9 16.9 37.8 37.8 37.8h491.6c20.9 0 37.8-16.9 37.8-37.8v-37.8c0.1-20.9-16.8-37.8-37.7-37.8zM890.2 795.6H133.8c-20.9 0-37.8 16.9-37.8 37.8v37.8c0 20.9 16.9 37.8 37.8 37.8h756.4c20.9 0 37.8-16.9 37.8-37.8v-37.8c0-20.9-16.9-37.8-37.8-37.8zM266.2 600.7V423.3c0-22-29.2-33.1-46.2-17.5l-97.1 88.7c-10.6 9.7-10.6 25.3 0 35l97.1 88.7c17 15.5 46.2 4.5 46.2-17.5z",type:"contraction",click:function(){return new Promise(function(Ke){Ke(!1)})}},{name:"\u5220\u9664",code:"remove",icon:"M597.333333 128h-170.666666a42.666667 42.666667 0 0 0-42.666667 42.666667v42.666666h256V170.666667a42.666667 42.666667 0 0 0-37.674667-42.368L597.333333 128z m0 298.666667a42.666667 42.666667 0 0 1 42.666667 42.666666v256a42.666667 42.666667 0 0 1-85.333333 0v-256a42.666667 42.666667 0 0 1 42.666666-42.666666z m-170.666666 0a42.666667 42.666667 0 0 1 42.666666 42.666666v256a42.666667 42.666667 0 0 1-85.333333 0v-256a42.666667 42.666667 0 0 1 42.666667-42.666666z m341.333333-128H256v554.666666a42.666667 42.666667 0 0 0 37.674667 42.368L298.666667 896h426.666666a42.666667 42.666667 0 0 0 42.666667-42.666667V298.666667z m-170.666667-256a128 128 0 0 1 128 128v42.666666h170.666667a42.666667 42.666667 0 0 1 42.368 37.674667L938.666667 256a42.666667 42.666667 0 0 1-42.666667 42.666667h-42.666667v554.666666a128 128 0 0 1-120.490666 127.786667L725.333333 981.333333H298.666667a128 128 0 0 1-128-128V298.666667H128a42.666667 42.666667 0 0 1-42.368-37.674667L85.333333 256a42.666667 42.666667 0 0 1 42.666667-42.666667h170.666667V170.666667a128 128 0 0 1 120.490666-127.786667L426.666667 42.666667h170.666666z",type:"remove",click:function(){return new Promise(function(Ke){Ke(!1)})}},{name:"\u8FDE\u7EBF",icon:"M922.00324 771.5L712.90324 892.2c-2.7 1.5-6-0.4-6-3.5V816c0-8.8-7.2-16-16-16H208.00324c-42.5 0-82.6-16.7-113-47-30.3-30.3-47-70.4-47-113s16.7-82.6 47-113c30.3-30.3 70.5-47 113-47h576c53.3 0 96.5-43.6 96-97-0.5-52.8-44.4-95-97.2-95h-519c-6.8 0-12.8 4.3-15.1 10.7-17.6 49.7-65 85.3-120.7 85.3C57.00324 384-0.49676 326.2 0.00324 255.1c0.5-71 59.4-128.3 130.4-127.1 54.7 1 101.1 36.4 118.4 85.4 2.2 6.4 8.3 10.6 15 10.6H784.00324c42.5 0 82.6 16.7 113 47 30.3 30.3 47 70.5 47 113s-16.7 82.6-47 113c-30.3 30.3-70.5 47-113 47H208.00324c-53.3 0-96.5 43.6-96 97 0.5 52.8 44.4 95 97.2 95h481.7c8.8 0 16-7.2 16-16v-72.7c0-3.1 3.3-5 6-3.5L922.00324 764.5c2.7 1.6 2.7 5.4 0 7z",code:"connect",type:"connect",click:function(){return new Promise(function(Ke){Ke(!1)})}}]},Oi=`
|
|
|
<svg width="300" height="200" viewBox="0 0 300 200" xmlns="http://www.w3.org/2000/svg">
|
|
|
<defs>
|
|
|
<radialGradient id="grad1" cx="64%" cy="41%" r="64%" fx="64%" fy="41%">
|
|
|
<stop offset="0%" stop-color="#ffcdca"/>
|
|
|
<stop offset="15%" stop-color="#f8a8af"/>
|
|
|
<stop offset="36%" stop-color="#f486bd"/>
|
|
|
<stop offset="64%" stop-color="#f15acb"/>
|
|
|
<stop offset="100%" stop-color="#dc48be"/>
|
|
|
</radialGradient>
|
|
|
<radialGradient cx="62.7929688%" cy="38.7660435%" fx="62.7929688%" fy="38.7660435%" r="69.6171323%" id="radialGradient-1">
|
|
|
<stop stop-color="#FF938E" offset="0%"></stop>
|
|
|
<stop stop-color="#F3629B" offset="27.7958615%"></stop>
|
|
|
<stop stop-color="#F25B98" offset="61.0231575%"></stop>
|
|
|
<stop stop-color="#D45C9F" offset="79.1889024%"></stop>
|
|
|
<stop stop-color="#FB94DC" offset="100%"></stop>
|
|
|
</radialGradient>
|
|
|
<radialGradient cx="64.4599781%" cy="41.4199561%" fx="64.4599781%" fy="41.4199561%" r="66.0105958%" gradientTransform="translate(0.644600,0.414200),scale(1.000000,0.982143),rotate(135.557584),translate(-0.644600,-0.414200)" id="radialGradient-2">
|
|
|
<stop stop-color="#9C4BFF" offset="0%"></stop>
|
|
|
<stop stop-color="#7D2FE3" offset="22.2365921%"></stop>
|
|
|
<stop stop-color="#7F29E3" offset="53.5499367%"></stop>
|
|
|
<stop stop-color="#9635DB" offset="82.281989%"></stop>
|
|
|
<stop stop-color="#C47AF8" offset="100%"></stop>
|
|
|
</radialGradient>
|
|
|
<radialGradient cx="64.4599781%" cy="41.4199561%" fx="64.4599781%" fy="41.4199561%" r="65.4353394%" id="radialGradient-3">
|
|
|
<stop stop-color="#6F99FF" offset="0%"></stop>
|
|
|
<stop stop-color="#2465E0" offset="15.3761414%"></stop>
|
|
|
<stop stop-color="#3047D6" offset="35.5277535%"></stop>
|
|
|
<stop stop-color="#3435D9" offset="79.4914212%"></stop>
|
|
|
<stop stop-color="#5D58F2" offset="100%"></stop>
|
|
|
</radialGradient>
|
|
|
<linearGradient x1="0%" y1="50.0019531%" x2="100%" y2="50%" id="lines1">
|
|
|
<stop stop-color="#F763AF" offset="0%"></stop>
|
|
|
<stop stop-color="#7328E5" offset="100%"></stop>
|
|
|
</linearGradient>
|
|
|
<linearGradient x1="-5.45107057%" y1="49.9980469%" x2="100%" y2="50.0019531%" id="linearGradient-1">
|
|
|
<stop stop-color="#862FF3" offset="0%"></stop>
|
|
|
<stop stop-color="#4531E9" offset="100%"></stop>
|
|
|
</linearGradient>
|
|
|
<linearGradient x1="-5.45107057%" y1="49.9980469%" x2="100%" y2="50.0019531%" id="linearGradient-1">
|
|
|
<stop stop-color="#862FF3" offset="0%"></stop>
|
|
|
<stop stop-color="#4531E9" offset="100%"></stop>
|
|
|
</linearGradient>
|
|
|
</defs>
|
|
|
</svg>
|
|
|
`;Oe.createContainer=class{constructor(Ke){var tt=["style","innerHTML","body","absolute","append","defsvg","div","createElement","zIndex"],it=function(zt,nn){zt=zt-0;var Kt=tt[zt];return Kt};if(!document.getElementById("defsvg")){var pt=document[it("0x7")](it("0x6"));pt.id=it("0x5"),pt[it("0x1")]=Oi,pt[it("0x0")].position=it("0x3"),pt.style.top="-10000px",pt[it("0x0")][it("0x8")]=-1,document[it("0x2")][it("0x4")](pt)}kr.prototype.addElement=function(zt){for(var nn=arguments.length,Kt=new Array(nn>1?nn-1:0),un=1;un<nn;un++)Kt[un-1]=arguments[un];return zt.apply(void 0,[this].concat(Kt))},kr.prototype.attrs=function(zt){return function(nn,Kt){for(var un in Kt)nn.attr(un,Kt[un]);return nn}(this,zt)},kr.prototype.addElements=function(zt,nn){return this.data(zt).exit().remove(),this.data(zt).enter().append(nn)},this._ops=function(zt,nn){var Kt={};for(var un in zt)Kt[un]=nn[un]!=null?nn[un]:zt[un];return Kt}(no,Ke);const Dt=Dr(this._ops.containerName);var Lt,Gt=this;Dt.node()||(Lt="\u627E\u4E0D\u5230\u8981\u6302\u8F7D\u7684\u8282\u70B9",console.warn("\u3010graph error\u3011:"+Lt)),function(zt,nn){const{_ops:Kt}=nn,un=zt.append("svg").attr("viewBox",[0,0,Kt.width,Kt.height]).attr("class",`${Kt.containerName}-graph-container`),wn=un.append("g").attr("class","graph-box");zt.style("background",Kt.background),nn._linkContainer=wn.append("g").attr("class",`${Kt.containerName}-link-container`),nn._nodeContainer=wn.append("g").attr("class",`${Kt.containerName}-node-container`),nn._textContainer=wn.append("g").attr("class",`${Kt.containerName}-text-container`),zt.addElement(Ao,Kt.batchOperation,nn),nn.operationContainer=wn.append("g").attr("class",`${Kt.containerName}-operation-container`),nn._linkContainer.attrs(Kt.link_ops),nn.operationContainer.style("display","none"),function(xn,Zn){var Wn=arguments.length>2&&arguments[2]!==void 0?arguments[2]:.1,Bn=arguments.length>3&&arguments[3]!==void 0?arguments[3]:15,_n=Nr().scaleExtent([Wn,Bn]).on("zoom",function(Rn){Zn.attr("transform",Rn.transform)});Gt.zoom=_n,xn.call(_n),Zn.on("dblclick.zoom",null),xn.on("dblclick.zoom",null)}(un,wn,Kt.zoomOptions.minScale,Kt.zoomOptions.maxScale)}(Dt,this),this._simulation=new ki(this),this._pie=new Fr(this),this.update()}addNode(Ke){(function(tt,it){it._ops.nodes.push(tt),it.update()})(Ke,this)}zoomIn(){Dr(this._ops.containerName).select("svg").transition().duration(750).call(this.zoom.scaleBy,1.2)}zoomOut(){Dr(this._ops.containerName).select("svg").transition().duration(750).call(this.zoom.scaleBy,.8)}toggleNode(Ke){if(!this._ops.clickToggle)return;var tt=this._ops.nodes,it=this._ops.links;Ke.isExtendedState=!Ke.isExtendedState;var pt=!Ke.isExtendedState,Dt=[Ke.id];function Lt(Gt,zt,nn){nn.forEach(Kt=>{if(Kt.source.id===Gt){Kt.hide=pt;const un=zt.find(wn=>wn.id===Kt.target.id);un&&(un.hide=pt,Dt.push(un.id),Lt(un.id,zt,nn))}})}setTimeout(()=>{Dt.forEach(Gt=>{it.forEach(zt=>{(zt.source.id===Gt||zt.target.id===Gt)&&zt.target.id!==Ke.id&&(zt.hide=pt)})}),this.update()},100),Lt(Ke.id,tt,it)}showAllNodes(){this._ops.nodes.forEach(Ke=>{Ke.hide=!1}),this._ops.links.forEach(Ke=>{Ke.hide=!1}),this.update()}deleteNode(Ke){(function(tt,it){it._ops.nodes=it._ops.nodes.filter(function(pt){return pt.id!==tt.id}),it._ops.links=it._ops.links.filter(function(pt){return pt.source.id!==tt.id&&pt.target.id!==tt.id}),it.update(),Wa(it.operationContainer)})(Ke,this)}scrollToNode(Ke){const it=document.querySelector(this._ops.containerName+" svg").querySelector("g.graph-box"),pt=this._ops.nodes.find(un=>un.id===Ke);if(!pt)return;const Dt=pt.x,Lt=pt.y,Gt=1287,zt=596,nn=Gt/2-Dt,Kt=zt/2-Lt;it.setAttribute("transform",`translate(${nn}, ${Kt})`)}selectToNode(Ke){const tt=document.querySelector(this._ops.containerName+" svg");document.body.querySelectorAll("circle.node-circle").forEach(it=>{it.classList.remove("highlightNode")}),Ke&&tt.querySelector(".node-circle-"+Ke).classList.add("highlightNode")}update(Ke=!0,tt={}){var it,pt;this._pie.showPie("");const Dt=this._ops.nodes,Lt=this._ops.links,Gt=this._nodeContainer.addElement(ns,Dt,this),zt=this._linkContainer.addElement(An,Lt,this),nn=this._textContainer.addElement(Ui,Dt);Gt.on("click",(xn,Zn)=>Te(this,null,function*(){this.toggleNode(Zn);const Wn=yield this._ops.nodeClick(Zn);if(Wn){const{type:Bn,id:_n}=Wn;ml(Bn,_n,this)}})),this._ops.isCustomMouse&&(Gt.on("mouseover",(xn,Zn)=>Te(this,null,function*(){yield this._ops.nodeMouseover(Zn)})),Gt.on("mouseout",()=>Te(this,null,function*(){yield this._ops.nodeMouseout()}))),Gt.on("contextmenu",(xn,Zn)=>{xn.preventDefault(),this._pie.showPie(Zn,xn)}),Gt.call(this._simulation.drag());const Kt=(it=document.querySelector(this._ops.containerName))===null||it===void 0?void 0:it.clientWidth,un=(pt=document.querySelector(this._ops.containerName))===null||pt===void 0?void 0:pt.clientHeight,wn=document.getElementsByClassName(`${this._ops.containerName}-graph-container`)[0];wn&&Kt&&un&&(this._ops.width=Kt,this._ops.height=un,wn.setAttribute("viewBox",`0 0 ${Kt} ${un}`)),Ke?this._simulation.updateSimulation(Dt,Lt,this._ops):this._simulation.updateSimulation(Dt,Lt,this._ops,.1),this._simulation.addSimulationEvent(zt,Gt,nn,Lt),function(xn,Zn){var Wn=["object","function","undefined"];if(wa(Zn)!=="object")return xn;for(var Bn in Zn)Wn.indexOf(wa(Zn[Bn]))===-1&&(xn[Bn]=Zn[Bn])}(this._ops,tt),Object.getOwnPropertyNames(tt).length&&this._updateBaseTheme()}_updateBaseTheme(){Dr(this._ops.containerName).style("background",this._ops.background)}},Oe.storage=Ol,Object.defineProperty(Oe,"__esModule",{value:!0})})},25676:function(At,It,Te){"use strict";Te.d(It,{Ax:function(){return be},Ds:function(){return _e},KI:function(){return ve},SI:function(){return Ne},f1:function(){return He}});var Oe=Te(11662);function He(Ee){let Pe=!0;if(Ee.length>0){for(let xe=0;xe<Ee.length;xe++)if(Ee[xe].compile_success==0||!Ee[xe].compile_success){Pe=!1;break}}else Pe=!1;return Pe}function Ne(Ee,Pe=""){let xe=[];for(let pe=0;pe<Ee.length;pe++){let Ae=Ee[pe],Se=Pe?`${Pe}/${Ae.name}`:`${Ae.name}`;xe.push({title:Ae.name,type:Ae.type,isLeaf:Ae.type!=="tree",key:Se})}return xe}function be(Ee,Pe,xe){for(let pe=0;pe<Ee.length;pe++){let Ae=Ee[pe];if(Ae.key===Pe){Ae.children=xe;break}Ae.children&&be(Ae.children,Pe,xe)}return Ee}function _e(Ee,Pe,xe){let pe;return function(){let Ae=this,Se=arguments,ce=function(){pe=null,xe||Ee.apply(Ae,Se)},te=xe&&!pe;clearTimeout(pe),pe=setTimeout(ce,Pe),te&&Ee.apply(Ae,Se)}}const Me=!0,ve=Oe.Z.API_SERVER},2781:function(At,It,Te){"use strict";Te.d(It,{Z:function(){return pe}});var Oe=Te(59301),He={imageDimensions:"imageDimensions___a7crR",img:"img___Kroat",fullWidth:"fullWidth___c492T"},Ne=Te(92310),be=Te.n(Ne),_e=Te(71418),Me=Te(2859),ve=Te(64866),Ee=Te(22566),Pe=(Ae,Se,ce)=>new Promise((te,ne)=>{var le=he=>{try{fe(ce.next(he))}catch(ie){ne(ie)}},se=he=>{try{fe(ce.throw(he))}catch(ie){ne(ie)}},fe=he=>he.done?te(he.value):Promise.resolve(he.value).then(le,se);fe((ce=ce.apply(Ae,Se)).next())}),pe=({data:Ae,className:Se,fullWidth:ce,style:te={},onClose:ne,onOk:le,showFullTools:se,noAssociationId:fe})=>{const he=(0,Oe.useRef)(null),ie=(0,Oe.useRef)(null),ue=(0,Oe.useRef)(null),me=(0,Oe.useRef)(null),[Ce,Ie]=(0,Oe.useState)(!1),[Fe,Re]=(0,Oe.useState)("\u6B63\u5728\u52A0\u8F7D\u4E2D");(0,Oe.useEffect)(()=>{ue.current||(ue.current=document.createElement("style"),document.head.appendChild(ue.current)),Ae!=null&&Ae.visible?(document.body.setAttribute("data-custom","y-hidden"),ue.current.innerHTML=" html { overflow-y: hidden; }",Ae!=null&&Ae.src&&Ue()):(document.body.removeAttribute("data-custom"),ue.current&&(document.head.removeChild(ue.current),ue.current=null))},[Ae==null?void 0:Ae.visible]);const Ue=()=>Pe(void 0,null,function*(){Ie(!0),Re("\u6B63\u5728\u52A0\u8F7D\u4E2D");const $e=yield(0,Ee.ZJ)(Ae==null?void 0:Ae.src);he.current.src="",he.current.src=$e,he.current.onload=function(){rt()},Ie(!1),Re("")}),Ge=()=>{document.body.removeAttribute("data-custom"),ue.current.innerHTML=" ",ne()},Je=$e=>Pe(void 0,null,function*(){Ie(!0),Re("\u6B63\u5728\u4FDD\u5B58\u4E2D");const qe=yield(0,ve.ZP)("/api/attachments.json",{method:"post",body:{file_type:"base64",original_filename:Ae.title,file:$e.dataUrl}});qe!=null&&qe.id&&!fe?(yield(0,ve.ZP)(`/api/attachments/${Ae.id}/add_subitem.json`,{method:"post",body:{subitem_id:qe==null?void 0:qe.id,settings:JSON.stringify($e.state)}})).status===0&&le():qe!=null&&qe.id&&le(qe),document.body.removeAttribute("data-custom"),ue.current.innerHTML=" ",Ie(!1),Re("")}),Qe=()=>{const $e=document.querySelector('a[href="https://markerjs.com/"]');$e&&$e.parentNode&&($e.parentNode.style.display="none"),[{name:'[data-action="select"]',title:"\u9009\u62E9"},{name:'[data-action="delete"]',title:"\u5220\u9664\u5143\u7D20"},{name:'[data-action="undo"]',title:"\u64A4\u9500"},{name:'[data-type-name="FrameMarker"]',title:"\u77E9\u5F62"},{name:'[data-type-name="FreehandMarker"]',title:"\u753B\u7EBF"},{name:'[data-type-name="ArrowMarker"]',title:"\u7BAD\u5934"},{name:'[data-type-name="TextMarker"]',title:"\u6587\u672C"},{name:'[data-type-name="EllipseMarker"]',title:"\u692D\u5706"},{name:'[data-type-name="HighlightMarker"]',title:"\u65B9\u5757"},{name:'[data-type-name="CalloutMarker"]',title:"\u6CE8\u91CA"},{name:'[data-action="render"]',title:"\u4FDD\u5B58"},{name:'[data-action="close"]',title:"\u9000\u51FA"}].forEach(ot=>{const at=document.querySelector(ot.name);at&&at.setAttribute("title",ot.title)})},rt=()=>{ie.current=new Me.hP(he.current),ie.current.targetRoot=me.current,ie.current.addEventListener("render",Je),ie.current.addEventListener("beforeclose",Ge),se&&(ie.current.availableMarkerTypes=ie.current.ALL_MARKER_TYPES,ie.current.uiStyleSettings.redoButtonVisible=!0,ie.current.uiStyleSettings.notesButtonVisible=!0,ie.current.uiStyleSettings.zoomButtonVisible=!0,ie.current.uiStyleSettings.zoomOutButtonVisible=!0,ie.current.uiStyleSettings.clearButtonVisible=!0),window.markerArea=ie.current.uiStyleSettings,ie.current.show(),Ae!=null&&Ae.snapshotData&&ie.current.restoreState(Ae.snapshotData),setTimeout(()=>{window.scrollTo(0,0),Qe()},300)};return Oe.createElement(Oe.Fragment,null,(Ae==null?void 0:Ae.visible)&&Oe.createElement(_e.Z,{spinning:Ce,tip:Fe,style:{position:"absolute"}},Oe.createElement("div",{ref:me,className:be()(He.imageDimensions,Se,ce?He.fullWidth:""),style:te},Oe.createElement("img",{className:He.img,ref:he}))))}},50892:function(At,It,Te){"use strict";var Oe=Te(59301),He=Te(95237),Ne=Te(43604),be=Te(99313),_e=Te(3113),Me=Te(8658),ve=Te(89722),Ee=Te(48136),Pe=Te(59301);const xe=(0,Oe.forwardRef)(({callback:pe,showSaveButton:Ae,value:Se=""},ce)=>{const te=(0,Oe.useRef)(),ne=[{name:"\u5206\u6570\u5F97\u5206",value:"\\frac{x}{y}",children:[{name:"\u5206\u6570 Fractions",data:[{value:"\\frac{a}{b}"},{value:"x\\tfrac{x}{a} "},{value:"\\mathrm{d}t"},{value:"\\partial t"},{value:"\\frac{\\partial y}{\\partial x}"},{value:"\\nabla\\psi"},{value:"\\frac{\\partial^2}{\\partial x_1\\partial x_2}y"},{value:"\\cfrac{1}{a + \\cfrac{7}{b + \\cfrac{2}{9}}} = c"}]},{name:"\u5BFC\u6570 Derivative",data:[{value:"\\dot{a} "},{value:"\\ddot{a}"},{value:"{f}^{\\prime}"},{value:"{f}^{\\prime\\prime}"},{value:"{f}^{(n)}"}]},{name:"\u6A21\u7B97\u672F Modular arithmetic",data:[{value:"a \\bmod b"},{value:"a \\equiv b \\pmod{m} "},{value:"\\gcd(m, n) "},{value:"\\operatorname{lcm}(m, n) "}]}]},{name:"\u6839\u5F0F\u89D2\u6807",value:"\\sqrt{x}",children:[{name:"\u6839\u5F0F Radicals",data:[{value:"\\sqrt{x}"},{value:"\\sqrt[y]{x}"}]},{name:"\u4E0A\u4E0B\u6807 Sub&Super",data:[{value:"x^{a}"},{value:"x_{a}"},{value:"x_{a}^{b} "},{value:"_{a}^{b} x"},{value:"x_{a}^{b} "}]},{name:"\u91CD\u97F3\u7B26\u53CA\u5176\u4ED6 Accents and Others",data:[{value:"\\hat{a} "},{value:"\\sqrt[y]{x}"},{value:"\\check{} "},{value:"\\grave{a} "},{value:"\\acute{a}"},{value:"\\tilde{a}"},{value:"\\breve{a}"},{value:"\\bar{a}"},{value:"\\vec{a}"},{value:"\\not{a}"},{value:"\\widetilde{abc}"},{value:"\\widehat{abc}"},{value:"\\overleftarrow{abc} "},{value:"\\overrightarrow{abc}"},{value:"\\overline{abc}"},{value:"\\underline{abc}"},{value:"\\overbrace{abc}"},{value:"\\underbrace{abc}"},{value:"\\overset{a}{abc}"},{value:"\\underset{a}{abc} \\stackrel\\frown{ab}"},{value:"\\overline{ab} "},{value:"\\overleftrightarrow{ab}"},{value:"\\overset{a}{\\leftarrow}"},{value:"\\overset{a}{\\rightarrow}"},{value:"\\xleftarrow[abc]{a}"},{value:"\\xrightarrow[abc]{a} "}]}]},{name:"\u6781\u9650\u5BF9\u6570",value:"\\lim_{x \\to 0}",children:[{name:"\u6781\u9650 Limits",data:[{value:"\\lim a"},{value:"\\lim_{x \\to 0}"},{value:"\\lim_{x \\to \\infty}"},{value:"\\max_b{a}"},{value:"\\min_a{b}"}]},{name:"\u5BF9\u6570\u6307\u6570 Logarithms and exponentials",data:[{value:"\\log_{a}{b}"},{value:"\\lg_{a}{b}"},{value:"\\ln_{a}{b}"},{value:"\\exp a"}]},{name:"\u754C\u9650 Bounds",data:[{value:"\\min x"},{value:"\\sup t"},{value:"\\inf s"},{value:"\\lim u"},{value:"\\limsup w"},{value:"\\dim p"},{value:"\\ker\\phi "}]}]},{name:"\u4E09\u89D2\u51FD\u6570",value:"\\sin a",children:[{name:"\u4E09\u89D2\u51FD\u6570 Trigonometric functions",data:[{value:"\\sin a"},{value:"\\cos a"},{value:"\\tan a"},{value:"\\cot a "},{value:"\\sec a "},{value:"\\csc a "}]},{name:"\u53CD\u4E09\u89D2\u51FD\u6570 Inverse trigonometric functions",data:[{value:"\\sin^{-1}"},{value:"\\cos^{-1}"},{value:"\\tan^{-1}"},{value:"\\cot^{-1}"},{value:"\\sec^{-1}"},{value:"\\csc^{-1}"},{value:"\\arcsin a"},{value:"\\arccos a"},{value:"\\arctan a"},{value:"\\operatorname{arccot} a"},{value:"\\operatorname{arcsec} a"},{value:"\\operatorname{arccsc} a"}]},{name:"\u53CC\u66F2\u51FD\u6570 Hyperblic functions",data:[{value:"\\sinh a"},{value:"\\cosh a"},{value:"\\tanh a"},{value:"\\coth a"},{value:"\\operatorname{sech} a"},{value:"\\operatorname{csch} a"}]},{name:"\u53CD\u53CC\u66F2\u51FD\u6570 Inverse hyperbolic functions",data:[{value:"\\sinh^{-1}"},{value:"a\\cosh^{-1} a"},{value:"\\tanh^{-1} a"},{value:"\\coth^{-1} a"},{value:"\\operatorname{sech}^{-1} a"},{value:"\\operatorname{csch}^{-1} a"}]}]},{name:"\u79EF\u5206\u8FD0\u7B97",value:"\\int_{a}^{b}",children:[{name:"\u79EF\u5206 Integral",data:[{value:"\\int"},{value:"\\int_{a}^{b}"},{value:"\\int\\limits_{a}^{b}"}]},{name:"\u53CC\u91CD\u79EF\u5206 Double integral",data:[{value:"\\iint"},{value:"\\iint_{a}^{b} "},{value:"\\iint\\limits_{a}^{b} "}]},{name:"\u4E09\u91CD\u79EF\u5206 Triple integral",data:[{value:"\\iiint"},{value:"\\iiint_{a}^{b}"},{value:"\\iiint\\limits_{a}^{b} "}]},{name:"\u66F2\u7EBF\u79EF\u5206 Closed line or path integral",data:[{value:"\\oint"},{value:"\\oint_{a}^{b} "}]}]},{name:"\u5927\u578B\u8FD0\u7B97",value:"\\sum_{a}^{b}",children:[{name:"\u6C42\u548C Summation",data:[{value:"\\sum"},{value:"\\sum_{a}^{b}"},{value:"{\\textstyle \\sum_{a}^{b}} "}]},{name:"\u4E58\u79EF\u4F59\u79EF Product and coproduct",data:[{value:"\\prod"},{value:"\\prod_{a}^{b}"},{value:"{\\textstyle \\prod_{a}^{b}}"},{value:"\\coprod"},{value:"\\coprod_{a}^{b}"},{value:"{\\textstyle \\coprod_{a}^{b}} "}]},{name:"\u5E76\u96C6\u4EA4\u96C6 Union and intersection",data:[{value:"\\bigcup"},{value:"\\bigcup_{a}^{b}"},{value:"{\\textstyle \\bigcup_{a}^{b}}"},{value:"\\bigcap"},{value:"\\bigcap_{a}^{b}"}]},{name:"\u6790\u53D6\u5408\u53D6 Disjunction and conjunction",data:[{value:"\\bigvee"},{value:"\\bigvee_{a}^{b}"},{value:"\\bigwedge"},{value:"\\bigwedge_{a}^{b}"}]}]},{name:"\u62EC\u53F7\u53D6\u6574",value:"\\left [ \\left ( \\right ) \\right ] ",children:[{name:"\u62EC\u53F7 Brackets",data:[{value:"\\left ( \\right )"},{value:"\\left [ \\right ]"},{value:"\\left \\langle \\right \\rangle "},{value:"\\left | \\right | "},{value:"\\left \\lfloor \\right \\rfloor "},{value:"\\left \\lceil \\right \\rceil "}]}]}],le=[{name:"\u4EE3\u6570",value:"\\sqrt{a^2+b^2}",children:[{data:[{value:"\\left(x-1\\right)\\left(x+3\\right) "},{value:"\\sqrt{a^2+b^2}"},{value:"\\left ( \\frac{a}{b}\\right )^{n}= \\frac{a^{n}}{b^{n}}"},{value:"\\frac{a}{b}\\pm \\frac{c}{d}= \\frac{ad \\pm bc}{bd} "},{value:"\\frac{x^{2}}{a^{2}}-\\frac{y^{2}}{b^{2}}=1 "},{value:"\\frac{1}{\\sqrt{a}}=\\frac{\\sqrt{a}}{a},a\\ge 0\\frac{1}{\\sqrt{a}}=\\frac{\\sqrt{a}}{a},a\\ge 0 "},{value:"\\sqrt[n]{a^{n}}=\\left ( \\sqrt[n]{a}\\right )^{n} "},{value:"x ={-b \\pm \\sqrt{b^2-4ac}\\over 2a} "},{value:"y-y_{1}=k \\left( x-x_{1}\\right) "},{value:`\\left\\{\\begin{matrix} \r
|
|
|
x=a + r\\text{cos}\\theta \\ \r
|
|
|
y=b + r\\text{sin}\\theta \r
|
|
|
\\end{matrix}\\right. `},{value:`\\begin{array}{l} \r
|
|
|
\\text{\u5BF9\u4E8E\u65B9\u7A0B\u5F62\u5982\uFF1A}x^{3}-1=0 \\ \r
|
|
|
\\text{\u8BBE}\\text{:}\\omega =\\frac{-1+\\sqrt{3}i}{2} \\ \r
|
|
|
x_{1}=1,x_{2}= \\omega =\\frac{-1+\\sqrt{3}i}{2} \\ \r
|
|
|
x_{3}= \\omega ^{2}=\\frac{-1-\\sqrt{3}i}{2} \r
|
|
|
\\end{array} `},{value:`\\begin{array}{l} \r
|
|
|
a\\mathop{{x}}\\nolimits^{{2}}+bx+c=0 \\ \r
|
|
|
\\Delta =\\mathop{{b}}\\nolimits^{{2}}-4ac \\ \r
|
|
|
\\left\\{\\begin{matrix} \r
|
|
|
\\Delta \\gt 0\\text{\u65B9\u7A0B\u6709\u4E24\u4E2A\u4E0D\u76F8\u7B49\u7684\u5B9E\u6839} \\ \r
|
|
|
\\Delta = 0\\text{\u65B9\u7A0B\u6709\u4E24\u4E2A\u76F8\u7B49\u7684\u5B9E\u6839} \\ \r
|
|
|
\\Delta \\lt 0\\text{\u65B9\u7A0B\u65E0\u5B9E\u6839} \r
|
|
|
\\end{matrix}\\right. \r
|
|
|
\\end{array} `},{value:`\\begin{array}{l} \r
|
|
|
a\\mathop{{x}}\\nolimits^{{2}}+bx+c=0 \\ \r
|
|
|
\\Delta =\\mathop{{b}}\\nolimits^{{2}}-4ac \\ \r
|
|
|
\\mathop{{x}}\\nolimits_{{1,2}}=\\frac{{-b \\pm \r
|
|
|
\\sqrt{{\\mathop{{b}}\\nolimits^{{2}}-4ac}}}}{{2a}} \\ \r
|
|
|
\\mathop{{x}}\\nolimits_{{1}}+\\mathop{{x}}\\nolimits_{{2}}=-\\frac{{b}}{{a}} \\ \r
|
|
|
\\mathop{{x}}\\nolimits_{{1}}\\mathop{{x}}\\nolimits_{{2}}=\\frac{{c}}{{a}} \r
|
|
|
\\end{array} `}]}]},{name:"\u51E0\u4F55",value:"\\Delta A B C ",children:[{data:[{value:"\\Delta A B C "},{value:"a \\parallel c,b \\parallel c \\Rightarrow a \\parallel b "},{value:"l \\perp \\beta ,l \\subset \\alpha \\Rightarrow \\alpha \\perp \\beta"},{value:`\\left.\\begin{matrix} \r
|
|
|
a \\perp \\alpha \\ \r
|
|
|
b \\perp \\alpha \r
|
|
|
\\end{matrix}\\right\\}\\Rightarrow a \\parallel b`},{value:"P \\in \\alpha ,P \\in \\beta , \\alpha \\cap \\beta =l \\Rightarrow P \\in l "},{value:`\\alpha \\perp \\beta , \\alpha \\cap \\beta =l,a \\subset \\alpha ,a \\perp l \r
|
|
|
\\Rightarrow a \\perp \\beta `},{value:`\\left.\\begin{matrix} \r
|
|
|
a \\subset \\beta ,b \\subset \\beta ,a \\cap b=P \\ \r
|
|
|
a \\parallel \\partial ,b \\parallel \\partial \r
|
|
|
\\end{matrix}\\right\\}\\Rightarrow \\beta \\parallel \\alpha `},{value:"\\alpha \\parallel \\beta , \\gamma \\cap \\alpha =a, \\gamma \\cap \\beta =b \\Rightarrow a \\parallel b "},{value:"A \\in l,B \\in l,A \\in \\alpha ,B \\in \\alpha \\Rightarrow l \\subset \\alpha "},{value:`\\left.\\begin{matrix} \r
|
|
|
m \\subset \\alpha ,n \\subset \\alpha ,m \\cap n=P \\ \r
|
|
|
a \\perp m,a \\perp n \r
|
|
|
\\end{matrix}\\right\\}\\Rightarrow a \\perp \\alpha `},{value:`\\begin{array}{c} \r
|
|
|
\\text{\u76F4\u89D2\u4E09\u89D2\u5F62\u4E2D,\u76F4\u89D2\u8FB9\u957Fa,b,\u659C\u8FB9\u8FB9\u957Fc} \\ \r
|
|
|
a^{2}+b^{2}=c^{2} \r
|
|
|
\\end{array}`}]}]},{name:"\u4E0D\u7B49\u5F0F",value:"a > b",children:[{data:[{value:"a > b,b > c \\Rightarrow a > c "},{value:"a > b,c > d \\Rightarrow a+c > b+d "},{value:"a > b > 0,c > d > 0 \\Rightarrow ac bd "},{value:`\\begin{array}{c} \r
|
|
|
a \\gt b,c \\gt 0 \\Rightarrow ac \\gt bc \\ \r
|
|
|
a \\gt b,c \\lt 0 \\Rightarrow ac \\lt bc \r
|
|
|
\\end{array}`},{value:"\\left | a-b \\right | \\geqslant \\left | a \\right | -\\left | b \\right | "},{value:"-\\left | a \\right |\\leq a\\leqslant \\left | a \\right | "},{value:"\\left | a \\right |\\leqslant b \\Rightarrow -b \\leqslant a \\leqslant \\left | b \\right | "},{value:"\\left | a+b \\right | \\leqslant \\left | a \\right | + \\left | b \\right | "},{value:`\\begin{array}{c} \r
|
|
|
a \\gt b \\gt 0,n \\in N^{\\ast},n \\gt 1 \\ \r
|
|
|
\\Rightarrow a^{n}\\gt b^{n}, \\sqrt[n]{a}\\gt \\sqrt[n]{b} \r
|
|
|
\\end{array}`},{value:`\\left( \\sum_{k=1}^n a_k b_k \\right)^{\\!\\!2}\\leq \r
|
|
|
\\left( \\sum_{k=1}^n a_k^2 \\right) \\left( \\sum_{k=1}^n b_k^2 \\right) `},{value:`\\begin{array}{c} \r
|
|
|
a,b \\in R^{+} \\ \r
|
|
|
\\Rightarrow \\frac{a+b}{{2}}\\ge \\sqrt{ab} \\ \r
|
|
|
\\left( \\text{\u5F53\u4E14\u4EC5\u5F53}a=b\\text{\u65F6\u53D6\u201C}=\\text{\u201D\u53F7}\\right) \r
|
|
|
\\end{array}`},{value:`\\begin{array}{c} \r
|
|
|
a,b \\in R \\ \r
|
|
|
\\Rightarrow a^{2}+b^{2}\\gt 2ab \\ \r
|
|
|
\\left( \\text{\u5F53\u4E14\u4EC5\u5F53}a=b\\text{\u65F6\u53D6\u201C}=\\text{\u201D\u53F7}\\right) \r
|
|
|
\\end{array}`},{value:`\\begin{array}{c} \r
|
|
|
H_{n}=\\frac{n}{\\sum \\limits_{i=1}^{n}\\frac{1}{x_{i}}}= \\frac{n}{\\frac{1}{x_{1}}+ \\frac{1}{x_{2}}+ \\cdots + \\frac{1}{x_{n}}} \\ G_{n}=\\sqrt[n]{\\prod \\limits_{i=1}^{n}x_{i}}= \\sqrt[n]{x_{1}x_{2}\\cdots x_{n}} \\ A_{n}=\\frac{1}{n}\\sum \\limits_{i=1}^{n}x_{i}=\\frac{x_{1}+ x_{2}+ \\cdots + x_{n}}{n} \\ Q_{n}=\\sqrt{\\sum \\limits_{i=1}^{n}x_{i}^{2}}= \\sqrt{\\frac{x_{1}^{2}+ x_{2}^{2}+ \\cdots + x_{n}^{2}}{n}} \\ H_{n}\\leq G_{n}\\leq A_{n}\\leq Q_{n} \r
|
|
|
\\end{array}`}]}]},{name:"\u79EF\u5206",value:"\\frac{\\mathrm{d}\\partial}{\\partial x}",children:[{data:[{value:"\\frac{\\mathrm{d}}{\\mathrm{d}x}x^n=nx^{n-1} "},{value:"\\frac{\\mathrm{d}}{\\mathrm{d}x}e^{ax}=a\\,e^{ax} "},{value:"\\frac{\\mathrm{d}}{\\mathrm{d}x}\\ln(x)=\\frac{1}{x} "},{value:"\\frac{\\mathrm{d}}{\\mathrm{d}x}\\sin x=\\cos x "},{value:"\\frac{\\mathrm{d}}{\\mathrm{d}x}\\cos x=-\\sin x "},{value:"\\int k\\mathrm{d}x = kx+C "},{value:"\\frac{\\mathrm{d}}{\\mathrm{d}x}\\tan x=\\sec^2 x "},{value:"\\frac{\\mathrm{d}}{\\mathrm{d}x}\\cot x=-\\csc^2 x "},{value:"\\int \\frac{1}{x}\\mathrm{d}x= \\ln \\left| x \\right| +C "},{value:"\\int \\frac{1}{\\sqrt{1-x^{2}}}\\mathrm{d}x= \\arcsin x +C "},{value:"\\int \\frac{1}{1+x^{2}}\\mathrm{d}x= \\arctan x +C "},{value:"\\int u \\frac{\\mathrm{d}v}{\\mathrm{d}x}\\,\\mathrm{d}x=uv-\\int \\frac{\\mathrm{d}u}{\\mathrm{d}x}v\\,\\mathrm{d}x "},{value:"f(x) = \\int_{-\\infty}^\\infty \\hat f(x)\\xi\\,e^{2 \\pi i \\xi x} \\,\\mathrm{d}\\xi "},{value:"\\int x^{\\mu}\\mathrm{d}x=\\frac{x^{\\mu +1}}{\\mu +1}+C, \\left({\\mu \\neq -1}\\right) "}]}]},{name:"\u4E09\u89D2",value:"e^{i \\theta}",children:[{name:"\u6C42\u548C Summation",data:[{value:"e^{i \\theta} "},{value:"\\left(\\frac{\\pi}{2}-\\theta \\right ) "},{value:"\\text{sin}^{2}\\frac{\\alpha}{2}=\\frac{1- \\text{cos}\\alpha}{2} "},{value:"\\text{cos}^{2}\\frac{\\alpha}{2}=\\frac{1+ \\text{cos}\\alpha}{2} "},{value:"\\text{tan}\\frac{\\alpha}{2}=\\frac{\\text{sin}\\alpha}{1+ \\text{cos}\\alpha} "},{value:"\\sin \\alpha + \\sin \\beta =2 \\sin \\frac{\\alpha + \\beta}{2}\\cos \\frac{\\alpha - \\beta}{2} "},{value:"\\sin \\alpha - \\sin \\beta =2 \\cos \\frac{\\alpha + \\beta}{2}\\sin \\frac{\\alpha - \\beta}{2} "},{value:"\\cos \\alpha + \\cos \\beta =2 \\cos \\frac{\\alpha + \\beta}{2}\\cos \\frac{\\alpha - \\beta}{2} "},{value:"\\cos \\alpha - \\cos \\beta =-2\\sin \\frac{\\alpha + \\beta}{2}\\sin \\frac{\\alpha - \\beta}{2} "},{value:"a^{2}=b^{2}+c^{2}-2bc\\cos A "},{value:"\\frac{\\sin A}{a}=\\frac{\\sin B}{b}=\\frac{\\sin C}{c}=\\frac{1}{2R} "},{value:"\\sin \\left ( \\frac{\\pi}{2}-\\alpha \\right ) = \\cos \\alpha "},{value:"\\sin \\left ( \\frac{\\pi}{2}+\\alpha \\right ) = \\cos \\alpha "}]}]},{name:"\u7EDF\u8BA1",value:"C_{r}^{n}",children:[{data:[{value:"C_{r}^{n} "},{value:"\\frac{n!}{r!(n-r)!} "},{value:"\\sum_{i=1}^{n}{X_i} "},{value:"\\sum_{i=1}^{n}{X_i^2} "},{value:"X_1, \\cdots,X_n "},{value:"\\frac{x-\\mu}{\\sigma} "},{value:"\\sum_{i=1}^{n}{(X_i - \\overline{X})^2} "},{value:`\\begin{array}{c} \r
|
|
|
\\text{\u82E5}P \\left( AB \\right) =P \\left( A \\right) P \\left( B \\right) \\\\ \r
|
|
|
\\text{\u5219}P \\left( A \\left| B\\right. \\right) =P \\left({B}\\right) \r
|
|
|
\\end{array}`},{value:"P(E) ={n \\choose k}p^k (1-p)^{n-k} "},{value:"P \\left( A \\right) = \\lim \\limits_{n \\to \\infty}f_{n}\\left ( A \\right ) "},{value:"P \\left( \\bigcup \\limits_{i=1}^{+ \\infty}A_{i}\\right) = \\prod \\limits_{i=1}^{+ \\infty}P{\\left( A_{i}\\right)} "},{value:`\\begin{array}{c} \r
|
|
|
P \\left( \\emptyset \\right) =0 \\\\ \r
|
|
|
P \\left( S \\right) =1 \r
|
|
|
\\end{array}`},{value:`\\begin{array}{c} \r
|
|
|
\\forall A \\in S \\\\ \r
|
|
|
P \\left( A \\right) \\ge 0 \r
|
|
|
\\end{array}`},{value:"P \\left( \\bigcup \\limits_{i=1}^{n}A_{i}\\right) = \\prod \\limits_{i=1}^{n}P \\left( A_{i}\\right) "},{value:`\\begin{array}{c} \r
|
|
|
S= \\binom{N}{n},A_{k}=\\binom{M}{k}\\cdot \\binom{N-M}{n-k} \\\\ \r
|
|
|
P\\left ( A_{k}\\right ) = \\frac{\\binom{M}{k}\\cdot \\binom{N-M}{n-k}}{\\binom{N}{n}} \r
|
|
|
\\end{array}`},{value:`\\begin{array}{c} \r
|
|
|
P_{n}=n! \\\\ \r
|
|
|
A_{n}^{k}=\\frac{n!}{\\left( n-k \\left) !\\right. \\right.} \r
|
|
|
\\end{array}`}]}]}],se=ie=>{te.current.setValue(te.current.getValue()+" "+ie.value+" ")},fe=[{key:"1",label:"\u5FEB\u6377\u6A21\u677F",children:Pe.createElement(He.Z,{className:ve.Z.lists,gutter:[10,10]},ne.map((ie,ue)=>Pe.createElement(Ne.Z,{flex:"110px",className:ve.Z.item},Pe.createElement("div",null,Pe.createElement(Me.Z,{value:`$$${ie.value}$$`}),ie.name),Pe.createElement("div",{className:ve.Z.children},ie.children.map((me,Ce)=>Pe.createElement("div",{key:Ce},Pe.createElement("h1",null,me.name),Pe.createElement(He.Z,{gutter:[10,10]},me.data.map((Ie,Fe)=>Pe.createElement(Ne.Z,{key:Fe,onClick:()=>se(Ie),className:ve.Z.diamond},Pe.createElement(Me.Z,{value:"`$$"+Ie.value+"$$`"}))))))))))},{key:"2",label:"\u516C\u5F0F\u6A21\u677F",children:Pe.createElement(He.Z,{className:ve.Z.lists,gutter:[10,10]},le.map((ie,ue)=>Pe.createElement(Ne.Z,{flex:"110px",className:ve.Z.item},Pe.createElement("div",null,Pe.createElement(Me.Z,{value:"`$$"+ie.value+"$$`"}),ie.name),Pe.createElement("div",{className:ve.Z.children},ie.children.map((me,Ce)=>Pe.createElement("div",{key:Ce},me.name&&Pe.createElement("h1",null,me.name),Pe.createElement(He.Z,{gutter:[10,10]},me.data.map((Ie,Fe)=>Pe.createElement(Ne.Z,{key:Fe,onClick:()=>se(Ie),className:ve.Z.diamond},Pe.createElement(Me.Z,{value:"`$$"+Ie.value+"$$`"}))))))))))}],he=()=>{var ie=document.createElement("div");ie.innerHTML=te.current.getValue();var ue=ie.innerText;return pe&&pe(ue),ue};return(0,Oe.useImperativeHandle)(ce,()=>({getData:he})),Pe.createElement("div",{className:ve.Z.mathWrap},Pe.createElement(be.default,{defaultActiveKey:"1",items:fe}),Pe.createElement("math-field",{locale:"zh_cn",className:ve.Z.mathField,placeholder:"\u8BF7\u6253\u5F00\u952E\u76D8\uFF0C\u8F93\u5165\u516C\u5F0F",ref:te,style:{width:800,marginTop:30,fontSize:18}},Se||""),Ae&&Pe.createElement("div",{className:ve.Z.button},Pe.createElement(_e.ZP,{size:"large",onClick:he,style:{zIndex:8,marginTop:10},type:"primary"},"\u4FDD\u5B58\u5230\u7F16\u8F91\u5668")))});It.Z=xe},21837:function(At,It,Te){"use strict";Te.d(It,{Q:function(){return Me}});var Oe=Te(59301),He=Te(57809),Ne=Te(5112),be=Te(5871),_e=Te(59301),Me=(Ee=>(Ee[Ee.Number=1]="Number",Ee[Ee.Percent=2]="Percent",Ee))(Me||{});const ve=({value:Ee,onChange:Pe,disabled:xe,hidePercentOption:pe=!1,percentType:Ae="select"})=>{const Se=(0,Oe.useMemo)(()=>pe?1:2,[pe]),[ce,te]=(0,Oe.useState)(Se);console.log(ce);const ne=se=>Ee.type===1?`${se}\u5206`:`${se}%`,le=(0,Oe.useCallback)(se=>{if(ce===1){const fe=se.replace("\u5206","");return isNaN(parseInt(fe,10))?0:fe}else return se.replace("%","")},[ce]);return(0,Oe.useEffect)(()=>{te(Ee.type)},[Ee]),_e.createElement("div",{style:{display:"flex",alignItems:"center"}},Ae=="select"&&_e.createElement(He.default,{size:"large",onChange:se=>{te(se),Pe({type:se,inputValue:se===1?5:20})},value:ce||Se,style:{width:100},options:pe?[{label:"\u5206\u503C",value:1}]:[{label:"\u767E\u5206\u6BD4",value:2},{label:"\u5206\u503C",value:1}],disabled:xe}),Ae=="radio"&&_e.createElement(Ne.ZP.Group,{size:"large",onChange:se=>{const fe=se.target.value;te(fe),Pe({type:fe,inputValue:fe===1?5:20})},value:ce||Se,disabled:xe},!pe&&_e.createElement(Ne.ZP,{value:2,style:{marginRight:"50px"}},"\u767E\u5206\u6BD4\u6263\u5206"),_e.createElement(Ne.ZP,{value:1},"\u56FA\u5B9A\u5206\u503C")),Ae=="radio"&&_e.createElement("div",{style:{marginRight:"10px",color:"#000000"}},Ee.type==2?"\u6263\u9664\u8865\u4EA4\u9636\u6BB5\u5F97\u5206\u7684":"\u6263\u9664\u603B\u6210\u7EE9\u7684"),_e.createElement(be.Z,{size:"large",disabled:xe,value:Ee.inputValue,style:{width:"120px"},parser:le,addonAfter:Ee.type===1?"\u5206":"%",max:ce===2?100:Number.MAX_SAFE_INTEGER,min:0,precision:0,onChange:se=>{Pe({type:ce,inputValue:se})}}),Ae=="radio"&&Ee.type==2&&_e.createElement("div",{style:{marginLeft:"10px",color:"#000000"}},"\u5206\u6570"))};It.Z=ve},22779:function(At,It,Te){"use strict";var Oe=Te(59301),He=Te(78241),Ne=Te(95237),be=Te(57809),_e=Te(92832),Me=Te(88522),ve=Te(3113),Ee=Te(24905),Pe=Te(6848),xe=Te(8591),pe=Te(1710),Ae=Te(90115),Se=Te(66649),ce=Te.n(Se),te=Te(26724),ne=Te.n(te),le=Te(58143),se=Te(22392),fe=Te(14433),he=Te(51571),ie=Te(59301),ue=Object.defineProperty,me=Object.defineProperties,Ce=Object.getOwnPropertyDescriptors,Ie=Object.getOwnPropertySymbols,Fe=Object.prototype.hasOwnProperty,Re=Object.prototype.propertyIsEnumerable,Ue=(ut,nt,lt)=>nt in ut?ue(ut,nt,{enumerable:!0,configurable:!0,writable:!0,value:lt}):ut[nt]=lt,Ge=(ut,nt)=>{for(var lt in nt||(nt={}))Fe.call(nt,lt)&&Ue(ut,lt,nt[lt]);if(Ie)for(var lt of Ie(nt))Re.call(nt,lt)&&Ue(ut,lt,nt[lt]);return ut},Je=(ut,nt)=>me(ut,Ce(nt)),Qe=(ut,nt,lt)=>new Promise((yt,ft)=>{var ct=Zt=>{try{Ut(lt.next(Zt))}catch(en){ft(en)}},vt=Zt=>{try{Ut(lt.throw(Zt))}catch(en){ft(en)}},Ut=Zt=>Zt.done?yt(Zt.value):Promise.resolve(Zt.value).then(ct,vt);Ut((lt=lt.apply(ut,nt)).next())});const rt=[];function $e({onSearch:ut,schools:nt}){return ie.createElement(He.default,{colon:!1,layout:"horizontal",onFinish:ut,initialValues:{keyword:"",school_name:"",search_type:"1"}},ie.createElement(Ne.Z,{style:{flexWrap:"nowrap"}},ie.createElement(He.default.Item,{name:"search_type",label:"\u641C\u7D22\u7C7B\u578B"},ie.createElement(be.default,{popupClassName:he.Z.selectdown,style:{width:106}},ie.createElement(be.default.Option,{value:"1"},"\u59D3\u540D"),ie.createElement(be.default.Option,{value:"2"},"\u624B\u673A\u53F7"),ie.createElement(be.default.Option,{value:"3"},"\u90AE\u7BB1"))),ie.createElement(He.default.Item,{style:{marginLeft:20},label:"\u641C\u7D22\u5185\u5BB9",name:"keyword",rules:[{required:!0,message:"\u8BF7\u8F93\u5165\u641C\u7D22\u5185\u5BB9"}]},ie.createElement(_e.default,{allowClear:!0,style:{width:300},size:"middle"})),ie.createElement(He.default.Item,{style:{marginLeft:20},label:"\u5355\u4F4D",name:"school_name"},ie.createElement(Me.Z,{options:nt,style:{width:300},size:"middle",showSearch:!0,filterOption:(lt,yt)=>yt.value.toUpperCase().indexOf(lt.toUpperCase())!==-1,placeholder:"\u8BF7\u8F93\u5165\u5355\u4F4D\u540D\u79F0"})),ie.createElement(ve.ZP,{type:"primary",style:{background:"#F6F7F9 linear-gradient(180deg, #FFFFFF 0%, #F6F7F9 100%)",boxShadow:"0px 2px 4px 0px #E0DFE1, inset 0px 1px 3px 0px rgba(255,255,255,0.5)",borderRadius:16,color:"#165DFF",marginLeft:40,border:"1px solid #BACFFE"},htmlType:"submit"},"\u641C\u7D22")))}var qe=(ut=>(ut[ut.INITDATA=0]="INITDATA",ut[ut.INITSCHOOLS=1]="INITSCHOOLS",ut[ut.SHOWLOADING=2]="SHOWLOADING",ut[ut.SELECTEDIDS=3]="SELECTEDIDS",ut[ut.SETQUERY=4]="SETQUERY",ut[ut.SETPAGE=5]="SETPAGE",ut))(qe||{});function ot(ut,nt){switch(nt.type){case 0:return Ge(Ge({},ut),nt.payload);case 4:return Ge(Ge({},ut),nt.payload);case 5:return Je(Ge({},ut),{page:nt.payload,reload:!1});case 2:return Je(Ge({},ut),{loading:nt.payload});case 1:return Je(Ge({},ut),{schools:nt.payload});case 3:return Je(Ge({},ut),{selectedIds:nt.payload});default:throw new Error}}const at={data:[],schools:[],loading:!1,selectedIds:[],query:null,page:1,count:0,reload:!1};It.Z=({onSelect:ut,onCancel:nt,container_id:lt,container_type:yt})=>{const[ft,ct]=(0,Oe.useReducer)(ot,at),{data:vt,schools:Ut,loading:Zt,selectedIds:en,page:mn,count:Bt,query:tn,reload:on}=ft;(0,Oe.useEffect)(()=>{function St(){return Qe(this,null,function*(){const{users:Qt,user_count:gt}=yield(0,se.nQ)(Je(Ge({},tn),{page:mn,container_type:yt,container_id:lt,display_aliases:!0}));ct({type:0,payload:{data:on?Qt:[...vt,...Qt],count:gt}})})}tn&&St()},[mn,tn,on,lt,yt]),(0,Oe.useEffect)(()=>{function St(){return Qe(this,null,function*(){const{school_names:Qt}=yield(0,se.K$)({display_aliases:!0});ct({type:1,payload:Qt.map(gt=>({value:gt}))})})}St()},[]);const Mn=[{title:"",dataIndex:"added",width:40,ellipsis:!0,render:(St,Qt)=>ie.createElement(Ee.default,{value:Qt.numid,checked:en.includes(Qt.numid),disabled:!!St})},{title:"\u59D3\u540D",width:100,ellipsis:!0,align:"left",dataIndex:"username",render:(St,Qt)=>ie.createElement("div",null,ie.createElement(Pe.Z,{placement:"bottom",title:St},ie.createElement(Ae.Link,{style:{color:"#000000"},className:"bold c-black",to:`/users/${Qt.login}`,target:"_blank"},St||"--")))},{title:"\u624B\u673A",width:100,dataIndex:"phone",ellipsis:!0,render:St=>ie.createElement(Pe.Z,{placement:"bottom",title:St},ie.createElement("span",{style:{color:"#000000"}},St||"--"))},{title:"\u90AE\u7BB1",dataIndex:"email",width:100,ellipsis:!0,render:St=>ie.createElement(Pe.Z,{placement:"bottom",title:St},ie.createElement("span",{style:{color:"#000000"}},St||"--"))},{title:"\u5B66\u53F7/\u5DE5\u53F7",width:100,dataIndex:"student_number",ellipsis:!0,render:St=>ie.createElement(Pe.Z,{placement:"bottom",title:St},ie.createElement("span",{style:{color:"#000000"}},St||"--"))},{title:"\u5B66\u6821/\u5355\u4F4D",width:150,dataIndex:"school_name",ellipsis:!0,render:St=>ie.createElement(Pe.Z,{placement:"bottom",title:St},ie.createElement("span",{style:{color:"#000000"}},St||"--"))},{title:"\u9662\u7CFB/\u90E8\u95E8",dataIndex:"depart_name",width:130,ellipsis:!0,render:St=>ie.createElement(Pe.Z,{placement:"bottom",title:St},ie.createElement("span",{style:{color:"#000000"}},St||"--"))},{title:"\u5B9E\u540D\u8BA4\u8BC1",dataIndex:"auth",width:100,render:St=>ie.createElement("span",{style:{color:"#000000"}},St?"\u662F":"\u5426")},{title:"\u6700\u540E\u767B\u5F55\u65F6\u95F4",dataIndex:"last_login_on",width:140,ellipsis:!0,render:St=>ie.createElement(Pe.Z,{placement:"bottom",title:St},ie.createElement("span",{style:{color:"#000000"}},ce()(St).format("YYYY-MM-DD HH:mm")))},{title:"\u72B6\u6001",dataIndex:"added",width:80,render:St=>{if(St===1)return ie.createElement("span",{style:{color:"#000000"}},"\u5DF2\u6DFB\u52A0")}}];function Dn(St){ct({type:4,payload:{page:1,reload:!0,query:St}})}function sn(St){ct({type:5,payload:St})}function rn(St){let Qt=en.indexOf(St);Qt>=0?en.splice(Qt,1):en.push(St),ct({type:3,payload:[...en]})}function Ht(){en.length===0?xe.ZP.warning("\u8BF7\u5148\u5728\u4E0B\u9762\u5217\u8868\u4E2D\u9009\u62E9\u8981\u6DFB\u52A0\u6210\u5458"):(ut(en,lt),ct({type:0,payload:{data:[],count:0,page:1,selectedIds:[],query:null,reload:!1}}))}const Tt=Bt>mn*10;return ie.createElement("div",{className:"select-user-container",style:{paddingBottom:20}},ie.createElement($e,{onSearch:Dn,schools:Ut}),tn?ie.createElement(ie.Fragment,null,ie.createElement("div",{className:"flexd-table-header mt20"},ie.createElement(fe.Gi,null,ie.createElement(pe.default,{pagination:!1,dataSource:rt,columns:Mn}))),ie.createElement("div",{style:{maxHeight:260,overflow:"auto",marginBottom:20}},ie.createElement(ne(),{initialLoad:!1,pageStart:1,threshold:20,loadMore:sn,hasMore:Tt,useWindow:!1},ie.createElement(fe.Gi,null,ie.createElement(pe.default,{loading:Zt,showHeader:!1,pagination:!1,dataSource:vt,columns:Mn,onRow:St=>({onClick:Qt=>{St.added!==1&&rn(St.numid)}})})))),ie.createElement("div",{className:"flex-container flex-end"},ie.createElement(ve.ZP,{type:"ghost",style:{marginRight:10,border:"1px solid #C3CFE0",color:"#464F66"},onClick:nt},"\u53D6\u6D88"),ie.createElement(ve.ZP,{style:{background:"#F6F7F9 linear-gradient(180deg, #FFFFFF 0%, #F6F7F9 100%)",boxShadow:"0px 2px 4px 0px #E0DFE1, inset 0px 1px 3px 0px rgba(255,255,255,0.5)",borderRadius:2,color:"#165DFF",border:"1px solid #BACFFE"},type:"primary",onClick:Ht},"\u786E\u5B9A"))):ie.createElement("div",{className:"tc font16 c-light-black mt40 pb30"},ie.createElement("img",{src:le,width:"100",alt:""}),ie.createElement("br",null),ie.createElement("p",{className:"mt20"},"\u8BF7\u641C\u7D22\u8981\u6DFB\u52A0\u7684\u4EBA\u5458")))}},27350:function(At,It,Te){"use strict";Te.d(It,{Z:function(){return Ee}});var Oe=Te(59301),He={flex_box_center:"flex_box_center___rQJfc",flex_space_between:"flex_space_between___MDW24",flex_box_vertical_center:"flex_box_vertical_center___RZbAv",flex_box_center_end:"flex_box_center_end___ILhJA",flex_box_column:"flex_box_column___Fmij7",orangeColor:"orangeColor___U5vU6",redColor:"redColor___qYa6X",statustitle:"statustitle___pTBLm",statusbody:"statusbody___qUPQx",flex:"flex___VtL45"},Ne=Te(43418),be="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAPCAYAAADUFP50AAAAAXNSR0IArs4c6QAAAUFJREFUOE+V0ktKw1AUxvH/rVqIxT4wkgwEUSmK4APRBfiYCKU7cOZEBOkadAMZiwhuwJETBQciFRTtwJkPBLW2BRGrRanU9kpN2sSYiGaWc/PjuznnCN2Qh8AkPo+AzXxKLLiPhW7ICtDqB4GzQkqM/huGFZgZcDCBBDaaicsTMKbZH2xfwdY5/ICAEGSasC0AwRYblj+gKkENwfy4WS9V4LHsgsk49EZteJKHdBa6w7AybdZzr3D64ILxGKjtNrx9gfsSRBSYtf6xZh1/u+qQClrIhtdFuHmGvhisJcz65RPsZl2Jc/3QE7FhpgDHuT80x2+O9cR1K/GiCDt3rkQ/+Ns43gDFD0YVmHIuQGOOmiGTARhxwkGd1cZ7Vwd0OppWr3911StpcV++Iwn67q/kyBMuHchErcqwFxT1XZXsfQJqo2zI6kdI4QAAAABJRU5ErkJggg==",_e="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAAAXNSR0IArs4c6QAAAW1JREFUOE+dkj1IQmEUht9z/blp4VQEjS39eW+oSCFCpFCI4BiKFGWWQUSrCjVVg+lQNJZQDZGNTm1B4NTibS3n2lo0wuqEN8i/a0HfeN7v+d73nO+QJEcKAJzQPAwCnSpKNtoqkyRHqgDrtUFAb6Rnedx43KgT6O5P0GQijFiNLe/Sy3/B8g+YTIRRrb5jP32JYNADr8eOldU0RJEqVlm8r1kyuA/AIEB10OWy4vBgA4ryCIdjCJlMDmfn1zAY6EmyGY/UrAwrgGATWKsn4mGEQl4Uiw+YX9hT73aZiEcl8eMbZAGA0AT6/ZPY3Ykiny/A55tA7uoGqdQFBD2VbDbDugoSTTEj3gTGYgG8Vt7UeG63hNkZJ7a2s+gw1XqPnf5REKhkt4kxNakO08ycbOtRC/7FcakCwNTJ0WwmDI+1LUCZZDkSYGa5Eewf0G0KAnprNYtFQHdPbZhNS1cmLafF5bUTJsyBSVMHPm+/ADTrfrtCH68WAAAAAElFTkSuQmCC",Me=(Pe,xe,pe)=>new Promise((Ae,Se)=>{var ce=le=>{try{ne(pe.next(le))}catch(se){Se(se)}},te=le=>{try{ne(pe.throw(le))}catch(se){Se(se)}},ne=le=>le.done?Ae(le.value):Promise.resolve(le.value).then(ce,te);ne((pe=pe.apply(Pe,xe)).next())}),Ee=({type:Pe,resdata:xe,onok:pe,oktext:Ae,okloading:Se})=>{const[ce,te]=(0,Oe.useState)(!1),{can_copy_list:ne,can_copy_num:le,challenge_type:se,course_data_list:fe,no_copy_list:he,no_copy_num:ie,no_use_list:ue,no_use_num:me,repeat_shixun_num:Ce,student_count:Ie,total_num:Fe,use_num:Re}=xe;let Ue=le>0||Pe==="exercise";(0,Oe.useEffect)(()=>{(xe==null?void 0:xe.student_count)>0&&te(!0)},[xe]),console.log("---11",Se),(0,Oe.useEffect)(()=>{Se||te(!1)},[Se]);const Ge=()=>{if(Pe==="exercise"&&se===1)return Oe.createElement(Oe.Fragment,null,"\u8BFE\u5802\u5185\u6709",Oe.createElement("span",{className:He.orangeColor},Ie),"\u540D\u5B66\u751F\u5DF2\u5728\u5176\u4ED6\u8003\u8BD5\u4E2D\u6311\u6218\u8FC7\u5176\u4E2D\u7684",Oe.createElement("span",{className:He.orangeColor},Re),"\u4E2A\u5B9E\u8DF5\u9879\u76EE\uFF0C",Oe.createElement("span",{className:He.redColor},"\u91CD\u590D\u53D1\u9001\u4F1A\u5BFC\u81F4\u8FD9\u90E8\u5206\u5B66\u751F\u65E0\u6CD5\u4F5C\u7B54\u5DF2\u6311\u6218\u8FC7\u7684\u5B9E\u8BAD\u9898\u3002"));if(Pe==="exercise"&&se===2)return Oe.createElement(Oe.Fragment,null,"\u8BFE\u5802\u5185\u6709",Oe.createElement("span",{className:He.orangeColor},Ie),"\u540D\u5B66\u751F\u5DF2\u5728\u8BFE\u5802\u5B9E\u9A8C\u4E2D\u6311\u6218\u8FC7\u5176\u4E2D\u7684",Oe.createElement("span",{className:He.orangeColor},Re),"\u4E2A\u5B9E\u8DF5\u9879\u76EE\uFF0C\u4E14\u4F5C\u4E1A\u5DF2\u5F00\u542F\u201C\u4F5C\u4E1A\u622A\u6B62\u540E\u4E0D\u5141\u8BB8\u5B66\u751F\u7F16\u8F91\u4EE3\u7801\u201D\u8BBE\u7F6E\u9879\uFF0C",Oe.createElement("span",{className:He.redColor},"\u91CD\u590D\u53D1\u5E03\u4F1A\u5BFC\u81F4\u8FD9\u90E8\u5206\u5B66\u751F\u65E0\u6CD5\u518D\u63D0\u4EA4\u4F5C\u4E1A\u3002"));if(Pe==="shixun"&&se===1)return Oe.createElement(Oe.Fragment,null,"\u8BFE\u5802\u5185\u6709",Oe.createElement("span",{className:He.orangeColor},Ie),"\u540D\u5B66\u751F\u5DF2\u5728\u8003\u8BD5\u4E2D\u6311\u6218\u8FC7\u8BE5\u5B9E\u8DF5\u9879\u76EE\uFF0C",Oe.createElement("span",{className:He.redColor},"\u91CD\u590D\u53D1\u9001\u4F1A\u5BFC\u81F4\u8FD9\u90E8\u5206\u5B66\u751F\u65E0\u6CD5\u518D\u63D0\u4EA4\u4F5C\u4E1A\u3002"));if(Pe==="shixun"&&se===2)return Oe.createElement(Oe.Fragment,null,"\u8BFE\u5802\u5185\u6709",Oe.createElement("span",{className:He.orangeColor},Ie),"\u540D\u5B66\u751F\u5DF2\u5728\u8BFE\u5802\u5B9E\u9A8C\u4E2D\u6311\u6218\u8FC7\u8BE5\u5B9E\u8DF5\u9879\u76EE\uFF0C\u4E14\u4F5C\u4E1A\u5DF2\u5F00\u542F\u201C\u4F5C\u4E1A\u622A\u6B62\u540E\u4E0D\u5141\u8BB8\u5B66\u751F\u7F16\u8F91\u4EE3\u7801\u201D\u8BBE\u7F6E\u9879\uFF0C",Oe.createElement("span",{className:He.redColor},"\u91CD\u590D\u53D1\u9001\u4F1A\u5BFC\u81F4\u8FD9\u90E8\u5206\u5B66\u751F\u65E0\u6CD5\u518D\u63D0\u4EA4\u4F5C\u4E1A\u3002"));if(Pe==="subject"&&se===1)return Oe.createElement(Oe.Fragment,null,"\u8BFE\u5802\u5185\u6709",Oe.createElement("span",{className:He.orangeColor},Ie),"\u540D\u5B66\u751F\u5DF2\u5728\u8003\u8BD5\u4E2D\u6311\u6218\u8FC7\u5176\u4E2D\u7684",Oe.createElement("span",{className:He.orangeColor},Re),"\u4E2A\u5B9E\u8DF5\u9879\u76EE\uFF0C",Oe.createElement("span",{className:He.redColor},"\u91CD\u590D\u53D1\u9001\u4F1A\u5BFC\u81F4\u8FD9\u90E8\u5206\u5B66\u751F\u65E0\u6CD5\u518D\u63D0\u4EA4\u4F5C\u4E1A\u3002"));if(Pe==="subject"&&se===2)return Oe.createElement(Oe.Fragment,null,"\u8BFE\u5802\u5185\u6709 ",Oe.createElement("span",{className:He.orangeColor},Ie)," \u540D\u5B66\u751F\u5DF2\u5728\u8BFE\u5802\u5B9E\u9A8C\u6311\u6218\u8FC7\u5176\u4E2D\u7684 ",Oe.createElement("span",{className:He.orangeColor},Re)," \u4E2A\u5B9E\u8DF5\u9879\u76EE\uFF0C\u4E14\u4F5C\u4E1A\u5DF2\u5F00\u542F\u201C\u4F5C\u4E1A\u622A\u6B62\u540E\u4E0D\u5141\u8BB8\u5B66\u751F\u7F16\u8F91\u4EE3\u7801\u201D\u8BBE\u7F6E\u9879\uFF0C",Oe.createElement("span",{className:He.redColor},"\u91CD\u590D\u53D1\u9001\u4F1A\u5BFC\u81F4\u8FD9\u90E8\u5206\u5B66\u751F\u65E0\u6CD5\u518D\u63D0\u4EA4\u4F5C\u4E1A\u3002"));if(Pe==="exercisepush")return Oe.createElement(Oe.Fragment,null,"\u8BFE\u5802\u5185\u6709",Oe.createElement("span",{className:He.orangeColor},Ie),"\u540D\u5B66\u751F\u5DF2\u5728\u5176\u4ED6\u8003\u8BD5\u4E2D\u6311\u6218\u8FC7\u8BD5\u5377\u4E2D\u7684",Oe.createElement("span",{className:He.orangeColor},Re),"\u4E2A\u5B9E\u8DF5\u9879\u76EE \uFF0C",Oe.createElement("span",{className:He.redColor},"\u91CD\u590D\u53D1\u5E03\u4F1A\u5BFC\u81F4\u8FD9\u90E8\u5206\u5B66\u751F\u65E0\u6CD5\u5728\u5F53\u524D\u8003\u8BD5\u4E2D\u8FDB\u884C\u4F5C\u7B54\u3002"));if(Pe==="shixunpush"&&se===1)return Oe.createElement(Oe.Fragment,null,"\u8BFE\u5802\u5185\u6709",Oe.createElement("span",{className:He.orangeColor},Ie),"\u540D\u5B66\u751F\u5DF2\u5728\u8003\u8BD5\u4E2D\u6311\u6218\u8FC7\u5176\u4E2D\u7684",Oe.createElement("span",{className:He.orangeColor},Re),"\u4E2A\u5B9E\u8DF5\u9879\u76EE\uFF0C",Oe.createElement("span",{className:He.redColor},"\u91CD\u590D\u53D1\u5E03\u4F1A\u5BFC\u81F4\u8FD9\u90E8\u5206\u5B66\u751F\u65E0\u6CD5\u518D\u63D0\u4EA4\u4F5C\u4E1A\u3002"));if(Pe==="shixunpush"&&se===2)return Oe.createElement(Oe.Fragment,null,"\u8BFE\u5802\u5185\u6709",Oe.createElement("span",{className:He.orangeColor},Ie),"\u540D\u5B66\u751F\u5DF2\u5728\u8BFE\u5802\u5B9E\u9A8C\u4E2D\u6311\u6218\u8FC7",Oe.createElement("span",{className:He.orangeColor},Re),"\u4E2A\u5B9E\u8DF5\u9879\u76EE\uFF0C\u4E14\u4F5C\u4E1A\u5DF2\u5F00\u542F\u201C\u4F5C\u4E1A\u622A\u6B62\u540E\u4E0D\u5141\u8BB8\u5B66\u751F\u7F16\u8F91\u4EE3\u7801\u201D\u8BBE\u7F6E\u9879\uFF0C",Oe.createElement("span",{className:He.redColor},"\u91CD\u590D\u53D1\u5E03\u4F1A\u5BFC\u81F4\u8FD9\u90E8\u5206\u5B66\u751F\u65E0\u6CD5\u518D\u63D0\u4EA4\u4F5C\u4E1A\u3002"))},Je=()=>{if(Pe==="exercise"||Pe==="subject"||Pe==="exercisepush"||Pe==="shixunpush")return Oe.createElement("div",{style:{marginTop:20}},ie>0&&Oe.createElement("div",null,Oe.createElement("span",{className:He.flex},Oe.createElement("img",{src:_e,style:{width:14}}),Oe.createElement("span",{className:He.statustitle},"\u4E0D\u652F\u6301\u590D\u5236\u7684\u5B9E\u8DF5\u9879\u76EE")),Oe.createElement("div",{className:He.statusbody},Pe==="exercise"&&Oe.createElement("div",{style:{marginBottom:15}},"\u6CA1\u6709\u590D\u5236\u6743\u9650\u7684\u5B9E\u8DF5\u9879\u76EE\uFF0C",Oe.createElement("span",{className:He.redColor},"\u4EE5\u4E0B\u8BD5\u9898\u5C06\u4E0D\u4F1A\u88AB\u53D1\u9001\u81F3\u8BFE\u5802\u4E2D\u3002"),"\u60A8\u4E5F\u53EF\u4EE5\u8054\u7CFB\u9879\u76EE\u521B\u5EFA\u8005\u5F00\u542F\u590D\u5236\u6743\u9650\u6216\u8005\u8054\u7CFB\u5E73\u53F0\u6559\u7814\u52A9\u7406\u8FDB\u884C\u534F\u52A9\u3002"),(Pe==="subject"||Pe==="exercisepush")&&Oe.createElement("div",{style:{marginBottom:15}},"\u6CA1\u6709\u590D\u5236\u6743\u9650\u7684\u5B9E\u8DF5\u9879\u76EE\uFF0C",Ue&&Oe.createElement("span",{className:He.redColor},"\u4E00\u952E\u590D\u5236\u4E0D\u4F1A\u590D\u5236\u6B64\u90E8\u5206\u9879\u76EE\u3002"),"\u60A8\u53EF\u4EE5\u8054\u7CFB\u9879\u76EE\u521B\u5EFA\u8005\u5F00\u542F\u590D\u5236\u6743\u9650\u6216\u8005\u8054\u7CFB\u5E73\u53F0\u6559\u7814\u52A9\u7406\u8FDB\u884C\u534F\u52A9\u3002"),Pe==="shixunpush"&&Oe.createElement("div",{style:{marginBottom:15}},"\u6CA1\u6709\u590D\u5236\u6743\u9650\u7684\u5B9E\u8DF5\u9879\u76EE\uFF0C",Ue&&Oe.createElement("span",{className:He.redColor},"\u4E00\u952E\u590D\u5236\u4E0D\u4F1A\u590D\u5236\u6B64\u90E8\u5206\u9879\u76EE\u3002"),"\u5EFA\u8BAE\u60A8\u91CD\u65B0\u9009\u62E9\u5B9E\u8DF5\u9879\u76EE\u518D\u53D1\u5E03\u4F5C\u4E1A\uFF0C\u4E5F\u53EF\u8054\u7CFB\u9879\u76EE\u521B\u5EFA\u8005\u5F00\u542F\u590D\u5236\u6743\u9650\u6216\u8054\u7CFB\u5E73\u53F0\u6559\u7814\u52A9\u7406\u8FDB\u884C\u534F\u52A9\u3002"),Oe.createElement("div",null,he==null?void 0:he.map((Qe,rt)=>Oe.createElement("a",{href:`/shixuns/${Qe.identifier}/challenges`,target:"_blank"},"\u300A",Qe==null?void 0:Qe.name,"\u300B",rt+1!==ie&&"\u3001"))))),le>0&&Oe.createElement("div",{style:{marginTop:20}},Oe.createElement("span",{className:He.flex},Oe.createElement("img",{src:be,style:{width:14}}),Oe.createElement("span",{className:He.statustitle},"\u652F\u6301\u590D\u5236\u7684\u5B9E\u8DF5\u9879\u76EE")),Oe.createElement("div",{className:He.statusbody},Pe==="exercise"&&Oe.createElement("div",{style:{marginBottom:15}},"\u5EFA\u8BAE\u60A8\u4E00\u952E\u590D\u5236\u5E76\u66FF\u6362\u8BD5\u9898\uFF08\u5C06\u590D\u5236\u5E76\u521B\u5EFA\u4E00\u4E2A\u65B0\u7684\u9879\u76EE\u66FF\u6362\u8BD5\u5377\u4E2D\u7684\u539F\u8BD5\u9898\uFF0C\u4E0D\u4F1A\u590D\u5236\u5B66\u751F\u7684\u6311\u6218\u8BB0\u5F55\uFF0C\u65B0\u7684\u9879\u76EE\u652F\u6301\u8FDB\u884C\u7F16\u8F91\u5E76\u4E0E\u539F\u9879\u76EE\u4FE1\u606F\u4E92\u4E0D\u5F71\u54CD\uFF09\u3002"),(Pe==="subject"||Pe==="exercisepush")&&Oe.createElement("div",{style:{marginBottom:15}},"\u5EFA\u8BAE\u60A8\u4E00\u952E\u590D\u5236\u5E76\u53D1\u9001\uFF08\u5C06\u590D\u5236\u5E76\u521B\u5EFA\u4E00\u4E2A\u65B0\u7684\u9879\u76EE\uFF0C\u4E0D\u4F1A\u590D\u5236\u5B66\u751F\u7684\u6311\u6218\u8BB0\u5F55\uFF0C\u65B0\u7684\u9879\u76EE\u652F\u6301\u8FDB\u884C\u7F16\u8F91\u5E76\u4E0E\u539F\u9879\u76EE\u4FE1\u606F\u4E92\u4E0D\u5F71\u54CD\uFF09\u3002"),Pe==="shixunpush"&&Oe.createElement("div",{style:{marginBottom:15}},"\u5EFA\u8BAE\u60A8\u4E00\u952E\u590D\u5236\u5E76\u66FF\u6362\u8BD5\u9898\uFF08\u5C06\u590D\u5236\u5E76\u521B\u5EFA\u4E00\u4E2A\u65B0\u7684\u9879\u76EE\u66FF\u6362\u5F53\u524D\u4F5C\u4E1A\u4E2D\u7684\u5B9E\u8DF5\u9879\u76EE\uFF0C\u4E0D\u4F1A\u590D\u5236\u5B66\u751F\u7684\u6311\u6218\u8BB0\u5F55\uFF0C\u65B0\u7684\u9879\u76EE\u652F\u6301\u8FDB\u884C\u7F16\u8F91\u5E76\u4E0E\u539F\u9879\u76EE\u4FE1\u606F\u4E92\u4E0D\u5F71\u54CD\uFF09\u3002"),Oe.createElement("div",null,ne==null?void 0:ne.map((Qe,rt)=>Oe.createElement("a",{href:`/shixuns/${Qe.identifier}/challenges`,target:"_blank"},"\u300A",Qe==null?void 0:Qe.name,"\u300B",rt+1!==le&&"\u3001"))))));if(Pe==="shixun")return Oe.createElement("div",{style:{marginTop:20}},le>0?"\u8BE5\u9879\u76EE\u652F\u6301\u590D\u5236\uFF0C\u5EFA\u8BAE\u60A8\u4E00\u952E\u590D\u5236\u5E76\u53D1\u9001\uFF08\u5C06\u590D\u5236\u5E76\u521B\u5EFA\u4E00\u4E2A\u65B0\u7684\u9879\u76EE\uFF0C\u4E0D\u4F1A\u590D\u5236\u5B66\u751F\u7684\u6311\u6218\u8BB0\u5F55\uFF0C\u65B0\u7684\u9879\u76EE\u652F\u6301\u8FDB\u884C\u7F16\u8F91\u5E76\u4E0E\u539F\u9879\u76EE\u4FE1\u606F\u4E92\u4E0D\u5F71\u54CD\uFF09\u3002":"\u8BE5\u9879\u76EE\u4E0D\u652F\u6301\u590D\u5236\uFF0C\u60A8\u53EF\u4EE5\u8054\u7CFB\u9879\u76EE\u521B\u5EFA\u8005\u5F00\u542F\u590D\u5236\u6743\u9650\u6216\u8005\u8054\u7CFB\u5E73\u53F0\u6559\u7814\u52A9\u7406\u8FDB\u884C\u534F\u52A9\u3002")};return Oe.createElement(Ne.default,{open:ce,onCancel:()=>{te(!1)},cancelText:"\u53D6\u6D88",title:"\u63D0\u793A",width:700,centered:!0,cancelButtonProps:{style:{display:!Ue&&"none"}},zIndex:1003,confirmLoading:Se,okText:Ue?Ae:"\u6211\u77E5\u9053\u4E86",onOk:()=>Me(void 0,null,function*(){Ue?yield pe([...ne,...ue]):te(!1)})},Oe.createElement("div",{style:{maxHeight:600,overflow:"auto"}},Ge(),Je()))}},65450:function(At,It,Te){"use strict";Te.d(It,{Z:function(){return te}});var Oe=Te(59301),He=Te(8591),Ne=Te(38854),be=Te(69083),_e=Te(16471),Me=Te(16624),ve=Te(56102),Ee=Te(16769),Pe={watermark:"watermark___hNYlv",videovideo:"videovideo___ovOkV",animate__loop:"animate__loop___mvL6s",upDown:"upDown___SlgHv",container:"container___g1WYG","video-container":"video-container___XPkWR","video-controls":"video-controls___to0Zq",hide:"hide___NA3DV","video-progress":"video-progress___gqHsd",seek:"seek___iZHBm","seek-tooltip":"seek-tooltip___uWyXx","bottom-controls":"bottom-controls___uoIBm","left-controls":"left-controls___mBEx4","right-controls":"right-controls___e9L6r",rateOverlay:"rateOverlay___HHBWe",controlText:"controlText___M_BWR","volume-controls":"volume-controls___fa3mE","fullscreen-button":"fullscreen-button___ur0es","fullscreen-button1":"fullscreen-button1___rfaXm","pip-button":"pip-button___GFO8W","playback-animation":"playback-animation___ndURq",volume:"volume___OTmpP",hidden:"hidden___o7GkT"},xe=(ne,le,se)=>new Promise((fe,he)=>{var ie=Ce=>{try{me(se.next(Ce))}catch(Ie){he(Ie)}},ue=Ce=>{try{me(se.throw(Ce))}catch(Ie){he(Ie)}},me=Ce=>Ce.done?fe(Ce.value):Promise.resolve(Ce.value).then(ie,ue);me((se=se.apply(ne,le)).next())});function pe(ne){if(isNaN(ne))return{minutes:"00",seconds:"00"};const le=new Date(ne*1e3).toISOString().substr(11,8);return{hour:le.substr(0,2),minutes:le.substr(3,2),seconds:le.substr(6,2)}}Object.defineProperty(HTMLMediaElement.prototype,"playing",{get:function(){return this.currentTime>0&&!this.paused&&!this.ended&&this.readyState>2}});function Ae(ne,le){return ne-le}function Se(ne){ne.sort(Ae);let le=0;for(let se=0;se<ne.length-1;se++){let fe=Math.abs(ne[se+1]-ne[se]);fe<21&&(le+=fe)}return le}const ce=/(android|webos|iphone|ipad|ipod|blackberry|iemobile|opera mini)/i;var te=(0,Oe.forwardRef)(({allow_skip:ne,src:le,toLog:se,videoId:fe,logWatchHistory:he,courseId:ie=null,startTime:ue,handlePause:me=()=>{},handlePlay:Ce=()=>{},handlePlayEnded:Ie=()=>{},autoPlay:Fe=!1,onPlayEnded:Re=()=>{},isShowWaterMark:Ue=!0},Ge)=>{var Je;const rt=((Je=le==null?void 0:le.split("."))==null?void 0:Je.pop())==="flv",$e=(0,Oe.useRef)(),qe=(0,Oe.useRef)(),ot=(0,Oe.useRef)(),at=(0,Oe.useRef)(),ut=(0,Oe.useRef)(),nt=(0,Oe.useRef)(),lt=(0,Oe.useRef)(),yt=(0,Oe.useRef)(),ft=(0,Oe.useRef)(),ct=(0,Oe.useRef)(),vt=(0,Oe.useRef)(),Ut=(0,Oe.useRef)(),Zt=(0,Oe.useRef)(),en=(0,Oe.useRef)(),mn=navigator.userAgent.toLowerCase().match(ce),Bt=mn?mn[0]:"pc",tn=(0,Oe.useRef)(!1),on=(0,Me.eY)();let Mn=0,Dn=0,sn=0,rn=null,Ht=!1,Tt=20,St=1,Qt=!1,gt=!1,bt=[];(0,Oe.useImperativeHandle)(Ge,()=>({getLastUpdatedTime:()=>$e.current.currentTime,getDuration:()=>$e.current.duration})),He.ZP.config({maxCount:1,getContainer:()=>ot.current});const Yt=(0,Oe.useCallback)((nr,Xn=!1)=>{let qt={point:$e.current.currentTime};rn?(qt.log_id=rn,qt.watch_duration=Se(bt),qt.total_duration=Dn):(ie?(qt.video_id=parseInt(fe,10),qt.course_id=ie):qt.video_id=fe,qt.duration=Mn,qt.device=Bt),Xn&&(qt.ed="1");function vn(){return xe(this,null,function*(){Qt=!0,rn=yield he==null?void 0:he(qt),Qt=!1,nr&&nr()})}vn()},[fe,ie]);(0,Oe.useEffect)(()=>{$e.current&&(at.current.style.display="none",ut.current.style.display="block"),He.ZP.destroy();let nr=null;return be.Z.isSupported&&rt&&le&&(le==null?void 0:le.indexOf(".m3u8"))<0?(nr=be.Z.createPlayer({type:"flv",volume:.8,cors:!0,url:le,muted:!1}),$e.current&&(nr.attachMediaElement($e.current),nr.load())):$e.current.setAttribute("src",le),Mt(),()=>{nr&&(nr.unload(),nr.pause(),nr.destroy(),nr=null)}},[$e,rt,le]);function kt(){$e.current.paused?(at.current.style.display="none",ut.current.style.display="block"):(at.current.style.display="block",ut.current.style.display="none")}function Mt(){vt.current.style.display="none",Zt.current.style.display="none",Ut.current.style.display="none",$e.current.muted||$e.current.volume===0?vt.current.style.display="block":$e.current.volume>0&&$e.current.volume<=.5?Zt.current.style.display="block":Ut.current.style.display="block"}(0,Oe.useEffect)(()=>{const nr=document.getElementById("play"),Xn=document.querySelectorAll(".playback-icons use");function qt(){Ce(),ue&&!tn.current&&($e.current.currentTime=ue),tn.current=!0,bt.push($e.current.currentTime),Ht||(Ht=!0,se&&Yt())}function vn(){return xe(this,null,function*(){kt(),bt.push($e.current.currentTime),se&&Yt(()=>{rn=null,sn=0,Ht=!1,Qt=!1,gt=!1,bt=[],Dn=0,St=1},!0),Re()})}function Un(){nt.current.value=Math.round($e.current.currentTime),lt.current.value=Math.round($e.current.currentTime)}function Ln(){const Vr=pe(Math.round($e.current.currentTime));ft.current.innerText=`${Vr.hour>0?Vr.hour+":":""}${Vr.minutes}:${Vr.seconds}`,ft.current.setAttribute("datetime",`${Vr.hour>0?" "+Vr.hour+" ":""}${Vr.minutes}m ${Vr.seconds}s`)}function yr(){var Vr,Ya,ui,mr,Er,ba,Fn;const gr=Math.round((Vr=$e.current)==null?void 0:Vr.duration);(ui=(Ya=nt.current)==null?void 0:Ya.setAttribute)==null||ui.call(Ya,"max",gr),(Er=(mr=lt.current)==null?void 0:mr.setAttribute)==null||Er.call(mr,"max",gr);const br=pe(gr);yt.current&&(yt.current.innerText=`${br.hour>0?br.hour+":":""}${br.minutes}:${br.seconds}`,(Fn=(ba=yt.current).setAttribute)==null||Fn.call(ba,"datetime",`${br.hour>0?" "+br.hour+" ":""}${br.minutes}m ${br.seconds}s`))}function kr(){try{const Vr=Math.round($e.current.duration);nt.current.setAttribute("max",Vr),lt.current.setAttribute("max",Vr);const Ya=pe(Vr);yt.current.innerText=`${Ya.hour>0?Ya.hour+":":""}${Ya.minutes}:${Ya.seconds}`,yt.current.setAttribute("datetime",`${Ya.hour>0?" "+Ya.hour+" ":""}${Ya.minutes}m ${Ya.seconds}s`),Un(),Ln();const{width:ui,height:mr,x:Er,y:ba}=qe.current.getBoundingClientRect();if(Er<0||ba<0||!ui)return;if(!gt){let Fn=$e.current.currentTime,gr=Fn-sn;Math.abs(gr)<10?(Dn+=Math.abs(gr),sn=Fn,Qt||Dn-St*Tt>=0&&(St++,bt.push(sn),se&&Yt())):(sn=Fn,se&&Yt())}}catch(Vr){console.log(Vr)}}function Dr(){gt=!0}function Gr(){$e.current.playing&&bt.push($e.current.currentTime,sn),sn=$e.current.currentTime,gt=!1}function Ma(){Mn=$e.current.duration,Mn<=20&&(Tt=Mn/3),$e.current.addEventListener("play",qt)}function Ja(Vr){Vr.preventDefault(),(0,Ee.vp)()?($e.current.style.width="100%",$e.current.style.height="100%"):$e.current.style.cssText=""}function Na(){me()}function Da(Vr){if(!ne){He.ZP.warning("\u8BE5\u89C6\u9891\u7981\u6B62\u5FEB\u8FDB/\u540E\u9000\u64AD\u653E");return}const Ya=Vr.target.dataset.seek?Vr.target.dataset.seek:Vr.target.value;$e.current.currentTime=Ya,lt.current.value=Ya,nt.current.value=Ya}function Di(Vr){const Ya=Math.round(Vr.offsetX/Vr.target.clientWidth*parseInt(Vr.target.getAttribute("max"),10));nt.current.setAttribute("data-seek",Ya);const ui=pe(Ya);ct.current.textContent=`${ui.hour>0?ui.hour+":":""}${ui.minutes}:${ui.seconds}`;const mr=$e.current.getBoundingClientRect();ct.current.style.left=`${Vr.pageX-mr.left}px`}function _a(Vr){switch(Vr.code){case"Space":Vr.preventDefault(),Gn();break;case"ArrowRight":if(Vr.preventDefault(),!ne){He.ZP.warning("\u8BE5\u89C6\u9891\u7981\u6B62\u5FEB\u8FDB/\u540E\u9000\u64AD\u653E");break}if($e.current.currentTime>=$e.current.duration)break;$e.current.currentTime=parseInt($e.current.currentTime)+5,Un();break;case"ArrowLeft":if(Vr.preventDefault(),!ne){He.ZP.warning("\u8BE5\u89C6\u9891\u7981\u6B62\u5FEB\u8FDB/\u540E\u9000\u64AD\u653E");break}if($e.current.currentTime===0)break;$e.current.currentTime=parseInt($e.current.currentTime)-5,Un();break;case"ArrowUp":Vr.preventDefault(),$e.current.volume<1&&($e.current.volume=(parseInt($e.current.volume*10)+1)/10);break;case"ArrowDown":Vr.preventDefault(),$e.current.volume>0&&($e.current.volume=(parseInt($e.current.volume*10)-1)/10);break}}return ot.current.addEventListener((0,Ee.gH)(),Ja),$e.current.addEventListener("canplay",Ma),$e.current.addEventListener("ended",vn),$e.current.addEventListener("seeking",Dr),$e.current.addEventListener("seeked",Gr),$e.current.addEventListener("loadedmetadata",yr),nt.current.addEventListener("mousemove",Di),nt.current.addEventListener("input",Da),$e.current.addEventListener("timeupdate",kr),$e.current.addEventListener("pause",Na),$e.current.addEventListener("volumechange",Mt),document.addEventListener("keydown",_a),()=>{var Vr,Ya,ui,mr,Er,ba,Fn,gr,br,_r,ha,Ct;(Vr=$e.current)==null||Vr.removeEventListener("canplay",Ma),(Ya=$e.current)==null||Ya.removeEventListener("play",qt),(ui=$e.current)==null||ui.removeEventListener("ended",vn),(mr=$e.current)==null||mr.removeEventListener("seeking",Dr),(Er=$e.current)==null||Er.removeEventListener("seeked",Gr),(ba=nt.current)==null||ba.removeEventListener("mousemove",Di),(Fn=nt.current)==null||Fn.removeEventListener("input",Da),(gr=$e.current)==null||gr.removeEventListener("timeupdate",kr),(br=$e.current)==null||br.removeEventListener("pause",Na),(_r=$e.current)==null||_r.removeEventListener("loadedmetadata",yr),(ha=$e.current)==null||ha.removeEventListener("volumechange",Mt),document.removeEventListener("keydown",_a),(Ct=$e.current)!=null&&Ct.playing&&(bt.push(sn,$e.current.currentTime),se&&Yt())}},[$e,le]),(0,Oe.useEffect)(()=>{if($e.current.onended=()=>{Ie($e)},$e.current.oncontextmenu=()=>!1,(le==null?void 0:le.indexOf(".m3u8"))>-1){if($e.current.canPlayType("application/vnd.apple.mpegurl"))$e.current.src=le;else if(_e.ZP.isSupported()){var nr=new _e.ZP;nr.loadSource(le),nr.attachMedia($e.current)}}},[le]);const[ln,zn]=(0,Oe.useState)(1),Gn=()=>{$e.current.paused||$e.current.ended?$e.current.play():$e.current.pause(),kt()};function Hn(){$e.current.muted=!$e.current.muted,$e.current.muted?(en.current.setAttribute("data-volume",volume.value),en.current.value=0):en.current.value=en.current.dataset.volume}return Oe.createElement("div",{style:{position:"relative"},ref:ot},Oe.createElement("div",{ref:qe,className:`${Pe.watermark} animated_alternate animate__animated_10s animate__infinite animate__stepstart ${Pe.animate__loop}`},Ue&&on?on.login:" "),Oe.createElement("div",{className:Pe.container},Oe.createElement("div",{className:Pe["video-container"],id:"video-container"},Oe.createElement("div",{className:Pe["playback-animation"],id:"playback-animation"},Oe.createElement("svg",{className:Pe["playback-icons"]},Oe.createElement("use",{className:"hidden",href:"#play-icon"}),Oe.createElement("use",{href:"#pause"}))),Oe.createElement("video",{className:Pe.video,id:"video",preload:"auto",disablePictureInPicture:!0,ref:$e,autoPlay:Fe}),Oe.createElement("div",{className:`${Pe["video-controls"]} `,id:"video-controls"},Oe.createElement("div",{className:Pe["bottom-controls"]},Oe.createElement("div",{className:Pe["left-controls"]},Oe.createElement("button",{"data-title":"\u64AD\u653E/\u6682\u505C",id:"play",onClick:Gn},Oe.createElement("svg",{className:Pe["playback-icons"]},Oe.createElement("use",{ref:ut,href:"#play-icon"}),Oe.createElement("use",{ref:at,style:{display:"none"},href:"#pause"}))),Oe.createElement("div",{className:Pe.time},Oe.createElement("time",{id:"time-elapsed",ref:ft},"00:00"),Oe.createElement("span",null," / "),Oe.createElement("time",{id:"duration",ref:yt},"00:00"))),Oe.createElement("div",{className:Pe["right-controls"]},ne&&Oe.createElement(Ne.Z,{placement:"top",overlayClassName:Pe.rateOverlay,getPopupContainer:nr=>nr.parentNode,menu:{items:[{key:"1",label:Oe.createElement("span",{onClick:()=>{zn(1),$e.current.playbackRate=1}},"1.0x")},{key:"2",label:Oe.createElement("span",{onClick:()=>{zn(1.5),$e.current.playbackRate=1.5}},"1.5x")},{key:"3",label:Oe.createElement("span",{onClick:()=>{zn(2),$e.current.playbackRate=2}},"2.0x")}]}},Oe.createElement("div",{className:`${Pe.controlText} mr5`},"\u500D\u901F")),Oe.createElement(ve.CopyToClipboard,{text:le,onCopy:()=>He.ZP.success("\u590D\u5236\u6210\u529F")},Oe.createElement("button",{"data-title":"\u590D\u5236\u94FE\u63A5"},Oe.createElement("i",{className:"icon-lianjie2 iconfont",style:{fontSize:"12px",color:"white"}}))),Oe.createElement("div",{className:Pe["volume-controls"]},Oe.createElement("button",{"data-title":"\u5F00\u542F/\u5173\u95ED\u58F0\u97F3",className:Pe["volume-button"],id:"volume-button",onClick:Hn},Oe.createElement("i",{ref:vt,className:"icon-a-bianzu8 iconfont",style:{fontSize:"14px",color:"white"}}),Oe.createElement("i",{ref:Zt,className:"icon-shengyinkaibeifen iconfont",style:{fontSize:"14px",color:"white"}}),Oe.createElement("i",{ref:Ut,className:"icon-shengyinkai iconfont",style:{fontSize:"14px",color:"white"}})),Oe.createElement("input",{className:Pe.volume,id:"volume",value:"1","data-mute":"0.5",type:"range",max:"1",min:"0",step:"0.01",ref:en,style:{display:"none"},onClick:Mt})),Oe.createElement("button",{"data-title":"\u5168\u5C4F/\u9000\u51FA\u5168\u5C4F",className:Pe["fullscreen-button"],onClick:()=>{(0,Ee.vp)()?(0,Ee.BU)():(0,Ee.Dj)(ot.current)}},Oe.createElement("i",{className:"icon-fangda1 iconfont",style:{fontSize:"12px",color:"white"}})))),Oe.createElement("div",{className:Pe["video-progress"]},Oe.createElement("progress",{ref:lt,value:"0",min:"0"}),Oe.createElement("input",{className:Pe.seek,ref:nt,value:"0",min:"0",type:"range",step:"1"}),Oe.createElement("div",{className:Pe["seek-tooltip"],ref:ct,id:"seek-tooltip"},"00:00"))))),Oe.createElement("svg",{style:{display:"none"}},Oe.createElement("defs",null,Oe.createElement("symbol",{id:"pause",viewBox:"0 0 24 24"},Oe.createElement("path",{d:"M14.016 5.016h3.984v13.969h-3.984v-13.969zM6 18.984v-13.969h3.984v13.969h-3.984z"})),Oe.createElement("symbol",{id:"play-icon",viewBox:"0 0 24 24"},Oe.createElement("path",{d:"M8.016 5.016l10.969 6.984-10.969 6.984v-13.969z"})),Oe.createElement("symbol",{id:"volume-high",viewBox:"0 0 24 24"},Oe.createElement("path",{d:"M14.016 3.234q3.047 0.656 5.016 3.117t1.969 5.648-1.969 5.648-5.016 3.117v-2.063q2.203-0.656 3.586-2.484t1.383-4.219-1.383-4.219-3.586-2.484v-2.063zM16.5 12q0 2.813-2.484 4.031v-8.063q1.031 0.516 1.758 1.688t0.727 2.344zM3 9h3.984l5.016-5.016v16.031l-5.016-5.016h-3.984v-6z"})),Oe.createElement("symbol",{id:"volume-low",viewBox:"0 0 24 24"},Oe.createElement("path",{d:"M5.016 9h3.984l5.016-5.016v16.031l-5.016-5.016h-3.984v-6zM18.516 12q0 2.766-2.531 4.031v-8.063q1.031 0.516 1.781 1.711t0.75 2.32z"})),Oe.createElement("symbol",{id:"volume-mute",viewBox:"0 0 24 24"},Oe.createElement("path",{d:"M12 3.984v4.219l-2.109-2.109zM4.266 3l16.734 16.734-1.266 1.266-2.063-2.063q-1.547 1.313-3.656 1.828v-2.063q1.172-0.328 2.25-1.172l-4.266-4.266v6.75l-5.016-5.016h-3.984v-6h4.734l-4.734-4.734zM18.984 12q0-2.391-1.383-4.219t-3.586-2.484v-2.063q3.047 0.656 5.016 3.117t1.969 5.648q0 2.203-1.031 4.172l-1.5-1.547q0.516-1.266 0.516-2.625zM16.5 12q0 0.422-0.047 0.609l-2.438-2.438v-2.203q1.031 0.516 1.758 1.688t0.727 2.344z"})),Oe.createElement("symbol",{id:"fullscreen",viewBox:"0 0 24 24"},Oe.createElement("path",{d:"M14.016 5.016h4.969v4.969h-1.969v-3h-3v-1.969zM17.016 17.016v-3h1.969v4.969h-4.969v-1.969h3zM5.016 9.984v-4.969h4.969v1.969h-3v3h-1.969zM6.984 14.016v3h3v1.969h-4.969v-4.969h1.969z"})),Oe.createElement("symbol",{id:"fullscreen-exit",viewBox:"0 0 24 24"},Oe.createElement("path",{d:"M15.984 8.016h3v1.969h-4.969v-4.969h1.969v3zM14.016 18.984v-4.969h4.969v1.969h-3v3h-1.969zM8.016 8.016v-3h1.969v4.969h-4.969v-1.969h3zM5.016 15.984v-1.969h4.969v4.969h-1.969v-3h-3z"})),Oe.createElement("symbol",{id:"pip",viewBox:"0 0 24 24"},Oe.createElement("path",{d:"M21 19.031v-14.063h-18v14.063h18zM23.016 18.984q0 0.797-0.609 1.406t-1.406 0.609h-18q-0.797 0-1.406-0.609t-0.609-1.406v-14.016q0-0.797 0.609-1.383t1.406-0.586h18q0.797 0 1.406 0.586t0.609 1.383v14.016zM18.984 11.016v6h-7.969v-6h7.969z"})))))})},62319:function(At,It,Te){"use strict";Te.d(It,{h:function(){return ie}});var Oe=Te(59301),He=Te(57809),Ne=Te(78241),be=Te(3113),_e=Te(89780),Me=Te.n(_e),ve=Te(76809),Ee=Te(17022),Pe=Object.defineProperty,xe=Object.defineProperties,pe=Object.getOwnPropertyDescriptors,Ae=Object.getOwnPropertySymbols,Se=Object.prototype.hasOwnProperty,ce=Object.prototype.propertyIsEnumerable,te=(ue,me,Ce)=>me in ue?Pe(ue,me,{enumerable:!0,configurable:!0,writable:!0,value:Ce}):ue[me]=Ce,ne=(ue,me)=>{for(var Ce in me||(me={}))Se.call(me,Ce)&&te(ue,Ce,me[Ce]);if(Ae)for(var Ce of Ae(me))ce.call(me,Ce)&&te(ue,Ce,me[Ce]);return ue},le=(ue,me)=>xe(ue,pe(me));const se=He.default.Option,fe={labelCol:{span:4},wrapperCol:{span:20}},he={asp:["ASP","vbscript"],actionscript:["ActionScript(3.0)/Flash/Flex","clike"],bash:["Bash/Bat","shell"],css:["CSS","css"],c:["C","clike"],cpp:["C++","clike"],csharp:["C#","clike"],coffeescript:["CoffeeScript","coffeescript"],d:["D","d"],dart:["Dart","dart"],delphi:["Delphi/Pascal","pascal"],erlang:["Erlang","erlang"],go:["Golang","go"],groovy:["Groovy","groovy"],html:["HTML","text/html"],java:["Java","clike"],json:["JSON","text/json"],javascript:["Javascript","javascript"],lua:["Lua","lua"],less:["LESS","css"],markdown:["Markdown","gfm"],"objective-c":["Objective-C","clike"],php:["PHP","php"],perl:["Perl","perl"],python:["Python","python"],r:["R","r"],rst:["reStructedText","rst"],ruby:["Ruby","ruby"],sql:["SQL","sql"],sass:["SASS/SCSS","sass"],shell:["Shell","shell"],scala:["Scala","clike"],swift:["Swift","clike"],vb:["VB/VBScript","vb"],xml:["XML","text/xml"],yaml:["YAML","yaml"]};It.Z=({callback:ue,onCancel:me})=>{const[Ce,Ie]=(0,Oe.useState)("python");function Fe(Ue){Ie(he[Ue][1])}function Re(Ue){ue(Ue)}return Oe.createElement(Ne.default,le(ne({},fe),{className:"code-block-panel",initialValues:{language:"python",content:""},onFinish:Re,style:{width:500}}),Oe.createElement(Ne.default.Item,{label:"\u4EE3\u7801\u8BED\u8A00",name:"language"},Oe.createElement(He.default,{getPopupContainer:Ue=>Ue.parentNode,onChange:Fe},Object.keys(he).map(Ue=>Oe.createElement(se,{key:Ue,value:Ue},he[Ue][0])))),Oe.createElement(Ne.default.Item,{label:"\u4EE3\u7801\u5185\u5BB9",name:"content",rules:[{required:!0,message:"\u8BF7\u8F93\u5165\u4EE3\u7801\u5185\u5BB9"}]},Oe.createElement(ie,{mode:Ce})),Oe.createElement("div",{className:"flex-container flex-end"},Oe.createElement(be.ZP,{type:"primary",htmlType:"submit",style:{marginRight:10}},"\u786E\u5B9A"),Oe.createElement(be.ZP,{type:"ghost",onClick:me},"\u53D6\u6D88")))};function ie({value:ue,onChange:me,mode:Ce,options:Ie={}}){const Fe=(0,Oe.useRef)(),[Re,Ue]=(0,Oe.useState)();return(0,Oe.useEffect)(()=>{if(Re){let Ge=function(Je){const Qe=Je.getValue();me&&me(Qe)};return Re.on("change",Ge),()=>{Re.off("change",Ge)}}},[Re,me]),(0,Oe.useEffect)(()=>{Re&&Re.setOption("mode",Ce)},[Re,Ce]),(0,Oe.useEffect)(()=>{Re&&(ue!==Re.getValue()||ue==="")&&setTimeout(()=>{Re.setValue(ue||"")},300)},[Re,ue]),(0,Oe.useEffect)(()=>{if(Fe.current&&!Re){const Ge=Me().fromTextArea(Fe.current,ne({mode:Ce,lineNumbers:!0,lineWrapping:!0,autoCloseBrackets:!0,tabSize:4,autofocus:!0,autoCloseTags:!0,matchBrackets:!0,styleActiveLine:!0},Ie));Ue(Ge)}},[Fe.current,Re]),Oe.createElement("div",{className:"my-codemirror-container"},Oe.createElement("textarea",{ref:Fe}))}},30720:function(At,It,Te){"use strict";Te.d(It,{Z:function(){return we}});var Oe=Te(59301),He=Te(89780),Ne=Te.n(He),be=Te(76374),_e=Te(76809),Me=Te(6313),ve=Te(25717),Ee=Te(99498),Pe=Te(25419),xe=Te(67549),pe=Te(8658),Ae=({value:Be="",className:Le,showTextOnly:je,showLines:Xe,style:Et={}})=>{const xt=(0,Oe.useMemo)(()=>"",[Be]);return Oe.createElement(Oe.Fragment,null,Oe.createElement("div",{dangerouslySetInnerHTML:{__html:xt}}))},Se=Te(59301),ce=Object.defineProperty,te=Object.defineProperties,ne=Object.getOwnPropertyDescriptors,le=Object.getOwnPropertySymbols,se=Object.prototype.hasOwnProperty,fe=Object.prototype.propertyIsEnumerable,he=(Be,Le,je)=>Le in Be?ce(Be,Le,{enumerable:!0,configurable:!0,writable:!0,value:je}):Be[Le]=je,ie=(Be,Le)=>{for(var je in Le||(Le={}))se.call(Le,je)&&he(Be,je,Le[je]);if(le)for(var je of le(Le))fe.call(Le,je)&&he(Be,je,Le[je]);return Be},ue=(Be,Le)=>te(Be,ne(Le));let me=[{title:"\u7C97\u4F53",icon:"md-iconfont icon-bold",actionName:"bold"},{title:"\u659C\u4F53",icon:"md-iconfont icon-italic",actionName:"italic"},"|",{title:"\u65E0\u5E8F\u5217\u8868",icon:"md-iconfont icon-unorder-list",actionName:"list-ul"},{title:"\u6709\u5E8F\u5217\u8868",icon:"md-iconfont icon-order-list",actionName:"list-ol"},"|",{title:"\u884C\u5185\u4EE3\u7801",icon:"md-iconfont icon-code",actionName:"code"},{title:"\u4EE3\u7801\u5757\uFF08\u591A\u8BED\u8A00\u98CE\u683C\uFF09",icon:"md-iconfont icon-file-code",actionName:"code-block"},{title:"\u94FE\u63A5",icon:"md-iconfont icon-link",actionName:"link"},"|",{title:"\u884C\u5185\u516C\u5F0F",icon:"md-iconfont icon-sum",actionName:"inline-latex"},{title:"\u6570\u5B66\u56FE\u50CF",icon:"iconfont icon-shuxuetuxiang2",actionName:"maths-latex"},{title:"\u591A\u884C\u516C\u5F0F",icon:"iconfont icon-jisuan1",actionName:"latex"},"|",{title:"\u6DFB\u52A0\u56FE\u7247",icon:"md-iconfont icon-picture",actionName:"upload-image"},{title:"\u63D2\u5165\u753B\u56FE",icon:"iconfont icon-sheji",actionName:"draw-image"},{title:"\u63D2\u5165\u6D41\u7A0B\u56FE",icon:"iconfont icon-liucheng",actionName:"add-flowchart"},{title:"\u8868\u683C",icon:"md-iconfont icon-table",actionName:"add-table"},"|",{title:"\u6362\u884C",icon:"md-iconfont icon-minus",actionName:"line-break"},{title:"\u6E05\u7A7A",icon:"md-iconfont icon-eraser",actionName:"eraser"}];function Ce({onActionCallback:Be,title:Le,icon:je,actionName:Xe,className:Et="",children:xt}){function Jt(){Be(Xe)}return Se.createElement("a",{title:Le,className:Et,onClick:Jt},Se.createElement("i",{className:`${je}`}),xt)}var Ie=({watch:Be,showNullButton:Le,showNullProgramButton:je,onActionCallback:Xe,fullScreen:Et,insertTemp:xt,hidetoolBar:Jt,extraUse:Vt})=>{const fn=[...me,{title:`${Be?"\u5173\u95ED\u5B9E\u65F6\u9884\u89C8":"\u5F00\u542F\u5B9E\u65F6\u9884\u89C8"}`,icon:`${Be?"md-iconfont icon-eye-slash":"md-iconfont icon-eye"}`,actionName:"trigger-watch"}];return Se.createElement("ul",{className:"markdown-toolbar-container"},!Jt&&fn.map((dn,Vn)=>Se.createElement("li",{key:Vn},dn.actionName?Se.createElement(Ce,ue(ie({},dn),{onActionCallback:Xe})):Se.createElement("span",{className:"v-line"}))),Le?Se.createElement("li",null,Se.createElement(Ce,{icon:"md-iconfont icon-edit insert-blank",className:"btn-null",title:"\u589E\u52A0\u586B\u7A7A",actionName:"add-null-ch",onActionCallback:Xe},Se.createElement("span",{className:"fill-tip"},"\u70B9\u51FB\u63D2\u5165\b\u586B\u7A7A\u9879"))):null,je?Se.createElement(Se.Fragment,null,Se.createElement("li",null,Se.createElement(Ce,{icon:"md-iconfont icon-edit insert-blank",className:"btn-null",title:"\u589E\u52A0\u586B\u7A7A",actionName:"add-signal",onActionCallback:Xe},Se.createElement("span",{className:"fill-tip"},"+\u5355\u884C\u586B\u7A7A\u9879"))),Se.createElement("li",null,Se.createElement(Ce,{icon:"md-iconfont icon-uniE900 insert-blank",className:"btn-null",title:"\u589E\u52A0\u586B\u7A7A",actionName:"add-multiple",onActionCallback:Xe},Se.createElement("span",{className:"fill-tip"},"+\u591A\u884C\u586B\u7A7A\u9879")))):null,xt&&Se.createElement("li",null,Se.createElement(Ce,{icon:"md-iconfont icon-edit",className:"btn-null",title:"\u63D2\u5165\u6A21\u677F",actionName:`inster-template-${xt}`,onActionCallback:Xe},Se.createElement("span",{className:"fill-tip"},"\u63D2\u5165\u6A21\u677F"))),Vt&&Se.createElement("li",null,Vt),Se.createElement("li",{className:"btn-full-screen"},Se.createElement(Ce,{icon:`${Et?"md-iconfont icon-shrink":"md-iconfont icon-enlarge"}`,title:Et?"\u5173\u95ED\u5168\u5C4F":"\u5F00\u542F\u5168\u5C4F",actionName:"trigger-full-screen",onActionCallback:Xe})))},Fe=Te(61569),Re=Te(78241),Ue=Te(92832),Ge=Te(3113),Je=Object.defineProperty,Qe=Object.defineProperties,rt=Object.getOwnPropertyDescriptors,$e=Object.getOwnPropertySymbols,qe=Object.prototype.hasOwnProperty,ot=Object.prototype.propertyIsEnumerable,at=(Be,Le,je)=>Le in Be?Je(Be,Le,{enumerable:!0,configurable:!0,writable:!0,value:je}):Be[Le]=je,ut=(Be,Le)=>{for(var je in Le||(Le={}))qe.call(Le,je)&&at(Be,je,Le[je]);if($e)for(var je of $e(Le))ot.call(Le,je)&&at(Be,je,Le[je]);return Be},nt=(Be,Le)=>Qe(Be,rt(Le));const lt={labelCol:{span:4},wrapperCol:{span:20}};var yt=({callback:Be,onCancel:Le})=>{function je(Xe){Be(Xe)}return Oe.createElement(Re.default,nt(ut({},lt),{initialValues:{link:"http://",title:""},className:"link-panel",onFinish:je,style:{width:500}}),Oe.createElement(Re.default.Item,{label:"\u94FE\u63A5\u5730\u5740",name:"link",rules:[{required:!0,message:"\u8BF7\u8F93\u5165\u94FE\u63A5\u5730\u5740"}]},Oe.createElement(Ue.default,null)),Oe.createElement(Re.default.Item,{label:"\u94FE\u63A5\u6807\u9898",name:"title",rules:[{required:!0,message:"\u8BF7\u8F93\u5165\u94FE\u63A5\u6807\u9898"}]},Oe.createElement(Ue.default,null)),Oe.createElement("div",{className:"flex-container flex-end"},Oe.createElement(Ge.ZP,{type:"primary",htmlType:"submit",style:{marginRight:10}},"\u786E\u5B9A"),Oe.createElement(Ge.ZP,{type:"ghost",onClick:Le},"\u53D6\u6D88")))},ft=Te(62319),ct=Te(52999),vt=Te(43418),Ut=Te(95237),Zt=Te(2781),en=Te(59301),mn=({callback:Be,onCancel:Le})=>{const je=document.createElement("canvas"),Xe=je.getContext("2d");je.width=1e3,je.height=800,Xe.fillStyle="#ffffff",Xe.fillRect(0,0,je.width,je.height);const Et=je.toDataURL("image/png");return en.createElement(vt.default,{open:!0,width:"100vw",style:{height:"100vh",top:0},footer:null,title:null,closable:!1},en.createElement(Ut.Z,{style:{height:"100vh"}},en.createElement(Zt.Z,{fullWidth:!0,noAssociationId:!0,showFullTools:!0,data:{src:Et,visible:!0,title:String(Date.now())},onOk:xt=>{Be({src:xt.url})},onClose:Le})))},Bt=Te(12378);function tn(){go.CommandHandler.call(this),this._arrowKeyBehavior="move",this._pasteOffset=new go.Point(10,10),this._lastPasteOffset=new go.Point(0,0)}go.Diagram.inherit(tn,go.CommandHandler),tn.prototype.canAlignSelection=function(){var Be=this.diagram;return!(Be===null||Be.isReadOnly||Be.isModelReadOnly||Be.selection.count<2)},tn.prototype.alignLeft=function(){var Be=this.diagram;Be.startTransaction("aligning left");var Le=1/0;Be.selection.each(function(je){je instanceof go.Link||(Le=Math.min(je.position.x,Le))}),Be.selection.each(function(je){je instanceof go.Link||je.move(new go.Point(Le,je.position.y))}),Be.commitTransaction("aligning left")},tn.prototype.alignRight=function(){var Be=this.diagram;Be.startTransaction("aligning right");var Le=-1/0;Be.selection.each(function(je){if(!(je instanceof go.Link)){var Xe=je.actualBounds.x+je.actualBounds.width;Le=Math.max(Xe,Le)}}),Be.selection.each(function(je){je instanceof go.Link||je.move(new go.Point(Le-je.actualBounds.width,je.position.y))}),Be.commitTransaction("aligning right")},tn.prototype.alignTop=function(){var Be=this.diagram;Be.startTransaction("alignTop");var Le=1/0;Be.selection.each(function(je){je instanceof go.Link||(Le=Math.min(je.position.y,Le))}),Be.selection.each(function(je){je instanceof go.Link||je.move(new go.Point(je.position.x,Le))}),Be.commitTransaction("alignTop")},tn.prototype.alignBottom=function(){var Be=this.diagram;Be.startTransaction("aligning bottom");var Le=-1/0;Be.selection.each(function(je){if(!(je instanceof go.Link)){var Xe=je.actualBounds.y+je.actualBounds.height;Le=Math.max(Xe,Le)}}),Be.selection.each(function(je){je instanceof go.Link||je.move(new go.Point(je.actualBounds.x,Le-je.actualBounds.height))}),Be.commitTransaction("aligning bottom")},tn.prototype.alignCenterX=function(){var Be=this.diagram,Le=Be.selection.first();if(Le){Be.startTransaction("aligning Center X");var je=Le.actualBounds.x+Le.actualBounds.width/2;Be.selection.each(function(Xe){Xe instanceof go.Link||Xe.move(new go.Point(je-Xe.actualBounds.width/2,Xe.actualBounds.y))}),Be.commitTransaction("aligning Center X")}},tn.prototype.alignCenterY=function(){var Be=this.diagram,Le=Be.selection.first();if(Le){Be.startTransaction("aligning Center Y");var je=Le.actualBounds.y+Le.actualBounds.height/2;Be.selection.each(function(Xe){Xe instanceof go.Link||Xe.move(new go.Point(Xe.actualBounds.x,je-Xe.actualBounds.height/2))}),Be.commitTransaction("aligning Center Y")}},tn.prototype.alignColumn=function(Be){var Le=this.diagram;Le.startTransaction("align Column"),Be===void 0&&(Be=0),Be=parseFloat(Be);var je=new Array;Le.selection.each(function(Vt){Vt instanceof go.Link||je.push(Vt)});for(var Xe=0;Xe<je.length-1;Xe++){var Et=je[Xe],xt=Et.actualBounds.y+Et.actualBounds.height+Be,Jt=je[Xe+1];Jt.move(new go.Point(Et.actualBounds.x,xt))}Le.commitTransaction("align Column")},tn.prototype.alignRow=function(Be){Be===void 0&&(Be=0),Be=parseFloat(Be);var Le=this.diagram;Le.startTransaction("align Row");var je=new Array;Le.selection.each(function(Vt){Vt instanceof go.Link||je.push(Vt)});for(var Xe=0;Xe<je.length-1;Xe++){var Et=je[Xe],xt=Et.actualBounds.x+Et.actualBounds.width+Be,Jt=je[Xe+1];Jt.move(new go.Point(xt,Et.actualBounds.y))}Le.commitTransaction("align Row")},tn.prototype.canRotate=function(Be){var Le=this.diagram;return!(Le===null||Le.isReadOnly||Le.isModelReadOnly||Le.selection.count<1)},tn.prototype.rotate=function(Be){Be===void 0&&(Be=90);var Le=this.diagram;Le.startTransaction("rotate "+Be.toString());var Le=this.diagram;Le.selection.each(function(je){je instanceof go.Link||je instanceof go.Group||(je.angle+=Be)}),Le.commitTransaction("rotate "+Be.toString())},tn.prototype.pullToFront=function(){var Be=this.diagram;Be.startTransaction("pullToFront");var Le=new go.Map;Be.selection.each(function(je){Le.set(je.layer,0)}),Le.iteratorKeys.each(function(je){var Xe=0;je.parts.each(function(Et){if(!Et.isSelected){var xt=Et.zOrder;isNaN(xt)?Et.zOrder=0:Xe=Math.max(Xe,xt)}}),Le.set(je,Xe)}),Be.selection.each(function(je){tn._assignZOrder(je,Le.get(je.layer)+1)}),Be.commitTransaction("pullToFront")},tn.prototype.pushToBack=function(){var Be=this.diagram;Be.startTransaction("pushToBack");var Le=new go.Map;Be.selection.each(function(je){Le.set(je.layer,0)}),Le.iteratorKeys.each(function(je){var Xe=0;je.parts.each(function(Et){if(!Et.isSelected){var xt=Et.zOrder;isNaN(xt)?Et.zOrder=0:Xe=Math.min(Xe,xt)}}),Le.set(je,Xe)}),Be.selection.each(function(je){tn._assignZOrder(je,Le.get(je.layer)-1-tn._findGroupDepth(je))}),Be.commitTransaction("pushToBack")},tn._assignZOrder=function(Be,Le,je){je===void 0&&(je=Be),Be.layer===je.layer&&(Be.zOrder=Le),Be instanceof go.Group&&Be.memberParts.each(function(Xe){tn._assignZOrder(Xe,Le+1,je)})},tn._findGroupDepth=function(Be){if(Be instanceof go.Group){var Le=0;return Be.memberParts.each(function(je){Le=Math.max(Le,tn._findGroupDepth(je))}),Le+1}else return 0},tn.prototype.doKeyDown=function(){var Be=this.diagram;if(Be!==null){var Le=Be.lastInput;if(Le.key==="Up"||Le.key==="Down"||Le.key==="Left"||Le.key==="Right"){var je=this.arrowKeyBehavior;if(je==="none")return;if(je==="select"){this._arrowKeySelect();return}else if(je==="move"){this._arrowKeyMove();return}else if(je==="tree"){this._arrowKeyTree();return}}go.CommandHandler.prototype.doKeyDown.call(this)}},tn.prototype._getAllParts=function(){var Be=new Array;return this.diagram.nodes.each(function(Le){Be.push(Le)}),this.diagram.parts.each(function(Le){Be.push(Le)}),Be},tn.prototype._arrowKeyMove=function(){var Be=this.diagram,Le=Be.lastInput,je=0,Xe=0;if(Le.control||Le.meta)je=1,Xe=1;else if(Be.grid!==null){var Et=Be.grid.gridCellSize;Xe=Et.width,je=Et.height}Be.startTransaction("arrowKeyMove"),Be.selection.each(function(xt){Le.key==="Up"?xt.move(new go.Point(xt.actualBounds.x,xt.actualBounds.y-je)):Le.key==="Down"?xt.move(new go.Point(xt.actualBounds.x,xt.actualBounds.y+je)):Le.key==="Left"?xt.move(new go.Point(xt.actualBounds.x-Xe,xt.actualBounds.y)):Le.key==="Right"&&xt.move(new go.Point(xt.actualBounds.x+Xe,xt.actualBounds.y))}),Be.commitTransaction("arrowKeyMove")},tn.prototype._arrowKeySelect=function(){var Be=this.diagram,Le=Be.lastInput,je=null;Le.key==="Up"?je=this._findNearestPartTowards(270):Le.key==="Down"?je=this._findNearestPartTowards(90):Le.key==="Left"?je=this._findNearestPartTowards(180):Le.key==="Right"&&(je=this._findNearestPartTowards(0)),je!==null&&(Le.shift?je.isSelected=!0:Le.control||Le.meta?je.isSelected=!je.isSelected:Be.select(je))},tn.prototype._findNearestPartTowards=function(Be){var Le=this.diagram.selection.first();if(Le===null)return null;for(var je=Le.actualBounds.center,Xe=this._getAllParts(),Et=1/0,xt=Le,Jt=0;Jt<Xe.length;Jt++){var Vt=Xe[Jt];if(Vt!==Le&&Vt.canSelect()){var fn=Vt.actualBounds.center,dn=je.directionPoint(fn),Vn=this._angleCloseness(dn,Be);if(Vn<=45){var Pn=je.distanceSquaredPoint(fn);Pn*=1+Math.sin(Vn*Math.PI/180),Pn<Et&&(Et=Pn,xt=Vt)}}}return xt},tn.prototype._angleCloseness=function(Be,Le){return Math.min(Math.abs(Le-Be),Math.min(Math.abs(Le+360-Be),Math.abs(Le-360-Be)))},tn.prototype._arrowKeyTree=function(){var Be=this.diagram,Le=Be.selection.first();if(Le instanceof go.Node){var je=Be.lastInput;if(je.key==="Right"){if(!Le.isTreeLeaf)if(!Le.isTreeExpanded)Be.commandHandler.canExpandTree(Le)&&Be.commandHandler.expandTree(Le);else{var Xe=this._sortTreeChildrenByY(Le).first();Xe!==null&&Be.select(Xe)}}else if(je.key==="Left")if(!Le.isTreeLeaf&&Le.isTreeExpanded)Be.commandHandler.canCollapseTree(Le)&&Be.commandHandler.collapseTree(Le);else{var Et=Le.findTreeParentNode();Et!==null&&Be.select(Et)}else if(je.key==="Up"){var Et=Le.findTreeParentNode();if(Et!==null){var xt=this._sortTreeChildrenByY(Et),Jt=xt.indexOf(Le);if(Jt>0){for(var Vt=xt.elt(Jt-1);Vt!==null&&Vt.isTreeExpanded&&!Vt.isTreeLeaf;){var fn=this._sortTreeChildrenByY(Vt);Vt=fn.last()}Vt!==null&&Be.select(Vt)}else Be.select(Et)}}else if(je.key==="Down")if(Le.isTreeExpanded&&!Le.isTreeLeaf){var Xe=this._sortTreeChildrenByY(Le).first();Xe!==null&&Be.select(Xe)}else for(;Le!==null;){var Et=Le.findTreeParentNode();if(Et===null)break;var xt=this._sortTreeChildrenByY(Et),Jt=xt.indexOf(Le);if(Jt<xt.length-1){Be.select(xt.elt(Jt+1));break}else Le=Et}var dn=Be.selection.first();dn!==null&&Be.scrollToRect(dn.actualBounds)}},tn.prototype._sortTreeChildrenByY=function(Be){var Le=new go.List().addAll(Be.findTreeChildrenNodes());return Le.sort(function(je,Xe){var Et=je.location,xt=Xe.location;return Et.y<xt.y?-1:Et.y>xt.y?1:Et.x<xt.x?-1:Et.x>xt.x?1:0}),Le},tn.prototype.copyToClipboard=function(Be){go.CommandHandler.prototype.copyToClipboard.call(this,Be),this._lastPasteOffset.set(this.pasteOffset)},tn.prototype.pasteFromClipboard=function(){var Be=go.CommandHandler.prototype.pasteFromClipboard.call(this);return this.diagram.moveParts(Be,this._lastPasteOffset),this._lastPasteOffset.add(this.pasteOffset),Be},Object.defineProperty(tn.prototype,"arrowKeyBehavior",{get:function(){return this._arrowKeyBehavior},set:function(Be){if(Be!=="move"&&Be!=="select"&&Be!=="scroll"&&Be!=="tree"&&Be!=="none")throw new Error('DrawCommandHandler.arrowKeyBehavior must be either "move", "select", "scroll", "tree", or "none", not: '+Be);this._arrowKeyBehavior=Be}}),Object.defineProperty(tn.prototype,"pasteOffset",{get:function(){return this._pasteOffset},set:function(Be){if(!(Be instanceof go.Point))throw new Error("DrawCommandHandler.pasteOffset must be a Point, not: "+Be);this._pasteOffset.set(Be)}});var on=tn,Mn=Te(4285),Dn=Te(43604),sn=Te(64866),rn={myPaletteDiv:"myPaletteDiv___Xjz2I",flowChartWrp:"flowChartWrp____f45r",maxH60:"maxH60___Pd4Re"},Ht=Te(59301),Tt=(Be,Le,je)=>new Promise((Xe,Et)=>{var xt=fn=>{try{Vt(je.next(fn))}catch(dn){Et(dn)}},Jt=fn=>{try{Vt(je.throw(fn))}catch(dn){Et(dn)}},Vt=fn=>fn.done?Xe(fn.value):Promise.resolve(fn.value).then(xt,Jt);Vt((je=je.apply(Be,Le)).next())});function St({onCancel:Be,callback:Le}){let je=(0,Oe.useRef)(),Xe=(0,Oe.useRef)(),Et=(0,Oe.useRef)(),xt=(0,Oe.useRef)(!1);const Jt=(0,Oe.useRef)(!1),[Vt,fn]=(0,Oe.useState)(0);function dn(){const Pn=Bt.bx.make,Jn={red:"#ff3333",blue:"#3358ff",green:"#25ad23",magenta:"#d533ff",purple:"#7d33ff",orange:"#ff6233",brown:"#8e571e",white:"#ffffff",black:"#000000",beige:"#fffcd5",extralightblue:"#d5ebff",extralightred:"#f2dfe0",lightblue:"#a5d2fa",lightgray:"#cccccc",lightgreen:"#b3e6b3",lightred:"#fcbbbd"};je.current=new Bt.S0(Xe.current,{padding:20,grid:Pn(Bt.s_,"Grid",Pn(Bt.bn,"LineH",{stroke:"lightgray",strokeWidth:.5}),Pn(Bt.bn,"LineV",{stroke:"lightgray",strokeWidth:.5})),"draggingTool.isGridSnapEnabled":!0,handlesDragDropForTopLevelParts:!0,mouseDrop:Kr=>{var Ia=Kr.diagram.commandHandler.addTopLevelParts(Kr.diagram.selection,!0);Ia||Kr.diagram.currentTool.doCancel()},commandHandler:Pn(on),"clickCreatingTool.archetypeNodeData":{text:"\u672A\u547D\u540D",fill:null,stroke:null,borderColor:"rgba(0,0,0,0)"},PartCreated:Kr=>{var Ia=Kr.subject;Ia.location=Ia.location.copy().snapToGridPoint(Kr.diagram.grid.gridOrigin,Kr.diagram.grid.gridCellSize),setTimeout(()=>{Kr.diagram.commandHandler.editTextBlock()},20)},"commandHandler.archetypeGroupData":{isGroup:!0,text:"NEW GROUP"},SelectionGrouped:Kr=>{var Ia=Kr.subject;setTimeout(()=>{Kr.diagram.commandHandler.editTextBlock()})},LinkRelinked:Kr=>{var Ia=Kr.parameter.part;Ia.invalidateConnectedLinks();var Ta=Kr.subject;Kr.diagram.toolManager.linkingTool.isForwards?Ta.toNode.invalidateConnectedLinks():Ta.fromNode.invalidateConnectedLinks()},"undoManager.isEnabled":!0}),je.current.nodeTemplate=Pn(Bt.NB,"Auto",{locationSpot:Bt.z6.Center,locationObjectName:"SHAPE",desiredSize:new Bt.$u(120,60),minSize:new Bt.$u(40,40),resizable:!0,resizeCellSize:new Bt.$u(10,10),rotatable:!0},new Bt.KX("location","loc",Bt.E9.parse).makeTwoWay(Bt.E9.stringify),new Bt.KX("desiredSize","size",Bt.$u.parse).makeTwoWay(Bt.$u.stringify),Pn(Bt.bn,{name:"SHAPE",fill:Jn.white,cursor:"pointer",portId:"",fromLinkable:!0,toLinkable:!0,fromLinkableDuplicates:!0,toLinkableDuplicates:!0,fromSpot:Bt.z6.AllSides,toSpot:Bt.z6.AllSides},new Bt.KX("figure"),new Bt.KX("fill"),new Bt.KX("stroke","borderColor"),new Bt.KX("strokeWidth","thickness"),new Bt.KX("strokeDashArray","dash")),Pn(Bt.bn,{width:100,height:20,strokeWidth:0,fill:"transparent"}),Pn(Bt.al,{margin:1,textAlign:"center",overflow:Bt.al.OverflowEllipsis,editable:!0},new Bt.KX("text").makeTwoWay(),new Bt.KX("stroke","color"))),je.current.nodeTemplate.toolTip=Pn("ToolTip",Pn(Bt.s_,"Vertical",{maxSize:new Bt.$u(200,NaN)},Pn(Bt.al,{font:"bold 10pt sans-serif",textAlign:"center"},new Bt.KX("text")),Pn(Bt.al,{font:"10pt sans-serif",textAlign:"center"},new Bt.KX("text","details"))));function $n(Kr,Ia){var Ta=(la,ei)=>{la.handled=!0,la.diagram.model.commit(Wi=>{var za=ei.part.adornedPart,_i=new Bt.E9().setRectSpot(za.actualBounds,Kr);_i.subtract(za.location),_i.scale(2,2),_i.x+=Math.sign(_i.x)*130,_i.y+=Math.sign(_i.y)*130,_i.add(za.location),_i.snapToGridPoint(la.diagram.grid.gridOrigin,la.diagram.grid.gridCellSize);var $i=Wi.copyNodeData(za.data);Wi.setGroupKeyForNodeData($i,Wi.getGroupKeyForNodeData(za.data)),Wi.addNodeData($i);var Uo={from:za.key,to:Wi.getKeyForNodeData($i)};Wi.addLinkData(Uo);var yo=la.diagram.findNodeForData($i);yo.location=_i,la.diagram.select(yo),setTimeout(()=>{la.diagram.commandHandler.editTextBlock()},20)})};return Pn(Bt.bn,{figure:Ia,alignment:Kr,alignmentFocus:Kr.opposite(),width:Kr.equals(Bt.z6.Top)||Kr.equals(Bt.z6.Bottom)?25:18,height:Kr.equals(Bt.z6.Top)||Kr.equals(Bt.z6.Bottom)?18:25,fill:"orange",stroke:Jn.white,strokeWidth:4,mouseEnter:(la,ei)=>ei.fill="dodgerblue",mouseLeave:(la,ei)=>ei.fill="orange",isActionable:!0,click:Ta,contextClick:Ta})}function hr(Kr){return Pn(Bt.bn,{fill:"orange",stroke:"rgba(0, 0, 0, 0)",strokeWidth:15,background:"transparent",geometryString:"F1 M0 0 b 0 360 -4 0 4 z M10 0 b 0 360 -4 0 4 z M20 0 b 0 360 -4 0 4",isActionable:!0,cursor:"context-menu",mouseEnter:(Ia,Ta)=>Ta.fill="dodgerblue",mouseLeave:(Ia,Ta)=>Ta.fill="orange",click:(Ia,Ta)=>{Ia.diagram.commandHandler.showContextMenu(Ta.part.adornedPart)}},Kr||{})}je.current.nodeTemplate.selectionAdornmentTemplate=Pn(Bt.uz,"Spot",Pn(Bt.Vm,{padding:10}),$n(Bt.z6.Top,"TriangleUp"),$n(Bt.z6.Left,"TriangleLeft"),$n(Bt.z6.Right,"TriangleRight"),$n(Bt.z6.Bottom,"TriangleDown"),hr({alignment:new Bt.z6(.75,0)}));function hn(Kr,Ia){return(Ta,la)=>{Ta.handled=!0,Ta.diagram.model.commit(ei=>{ei.set(la.part.adornedPart.data,Kr,Ia)})}}function an(Kr,Ia){return Ia||(Ia="color"),Pn(Bt.bn,{width:16,height:16,stroke:"lightgray",fill:Kr,margin:1,background:"transparent",mouseEnter:(Ta,la)=>la.stroke="dodgerblue",mouseLeave:(Ta,la)=>la.stroke="lightgray",click:hn(Ia,Kr),contextClick:hn(Ia,Kr)})}function In(){return[Pn("ContextMenuButton",Pn(Bt.s_,"Horizontal",an(Jn.white,"fill"),an(Jn.beige,"fill"),an(Jn.extralightblue,"fill"),an(Jn.extralightred,"fill"))),Pn("ContextMenuButton",Pn(Bt.s_,"Horizontal",an(Jn.lightgray,"fill"),an(Jn.lightgreen,"fill"),an(Jn.lightblue,"fill"),an(Jn.lightred,"fill")))]}function jn(){return[Pn("ContextMenuButton",Pn(Bt.s_,"Horizontal",an(Jn.black),an(Jn.green),an(Jn.blue),an(Jn.red))),Pn("ContextMenuButton",Pn(Bt.s_,"Horizontal",an(Jn.white),an(Jn.magenta),an(Jn.purple),an(Jn.orange)))]}function cr(Kr,Ia){return Ia||(Ia="thickness"),Pn(Bt.bn,"LineH",{width:16,height:16,strokeWidth:Kr,margin:1,background:"transparent",mouseEnter:(Ta,la)=>la.background="dodgerblue",mouseLeave:(Ta,la)=>la.background="transparent",click:hn(Ia,Kr),contextClick:hn(Ia,Kr)})}function or(Kr,Ia){return Ia||(Ia="dash"),Pn(Bt.bn,"LineH",{width:24,height:16,strokeWidth:2,strokeDashArray:Kr,margin:1,background:"transparent",mouseEnter:(Ta,la)=>la.background="dodgerblue",mouseLeave:(Ta,la)=>la.background="transparent",click:hn(Ia,Kr),contextClick:hn(Ia,Kr)})}function Qn(){return[Pn("ContextMenuButton",Pn(Bt.s_,"Horizontal",cr(1),cr(2),cr(3),cr(4))),Pn("ContextMenuButton",Pn(Bt.s_,"Horizontal",or(null),or([2,4]),or([4,4])))]}function dr(Kr,Ia){return Ia||(Ia="figure"),Pn(Bt.bn,{width:32,height:32,scale:.5,fill:"lightgray",figure:Kr,margin:1,background:"transparent",mouseEnter:(Ta,la)=>la.fill="dodgerblue",mouseLeave:(Ta,la)=>la.fill="lightgray",click:hn(Ia,Kr),contextClick:hn(Ia,Kr)})}je.current.nodeTemplate.contextMenu=Pn("ContextMenu",Pn("ContextMenuButton",Pn(Bt.s_,"Horizontal",dr("Rectangle"),dr("RoundedRectangle"),dr("Ellipse"),dr("Diamond"))),Pn("ContextMenuButton",Pn(Bt.s_,"Horizontal",dr("Parallelogram2"),dr("ManualOperation"),dr("Procedure"),dr("Cylinder1"))),Pn("ContextMenuButton",Pn(Bt.s_,"Horizontal",dr("Terminator"),dr("CreateRequest"),dr("Document"),dr("TriangleDown"))),In(),jn(),Qn()),je.current.groupTemplate=Pn(Bt.ZA,"Spot",{layerName:"Background",ungroupable:!0,locationSpot:Bt.z6.Center,selectionObjectName:"BODY",computesBoundsAfterDrag:!0,handlesDragDropForMembers:!0,mouseDrop:(Kr,Ia)=>{var Ta=Ia.addMembers(Ia.diagram.selection,!0);Ta||Ia.diagram.currentTool.doCancel()},avoidable:!1},new Bt.KX("location","loc",Bt.E9.parse).makeTwoWay(Bt.E9.stringify),Pn(Bt.s_,"Auto",{name:"BODY"},Pn(Bt.bn,{parameter1:10,fill:Jn.white,strokeWidth:2,cursor:"pointer",fromLinkable:!0,toLinkable:!0,fromLinkableDuplicates:!0,toLinkableDuplicates:!0,fromSpot:Bt.z6.AllSides,toSpot:Bt.z6.AllSides},new Bt.KX("fill"),new Bt.KX("stroke","color"),new Bt.KX("strokeWidth","thickness"),new Bt.KX("strokeDashArray","dash")),Pn(Bt.Vm,{background:"transparent",margin:20})),Pn(Bt.al,{alignment:Bt.z6.Top,alignmentFocus:Bt.z6.Bottom,font:"bold 12pt sans-serif",editable:!0},new Bt.KX("text"),new Bt.KX("stroke","color"))),je.current.groupTemplate.selectionAdornmentTemplate=Pn(Bt.uz,"Spot",Pn(Bt.s_,"Auto",Pn(Bt.bn,{fill:null,stroke:"dodgerblue",strokeWidth:3}),Pn(Bt.Vm,{margin:1.5})),hr({alignment:Bt.z6.TopRight,alignmentFocus:Bt.z6.BottomRight})),je.current.groupTemplate.contextMenu=Pn("ContextMenu",In(),jn(),Qn()),je.current.linkTemplate=Pn(Bt.rU,{layerName:"Foreground",routing:Bt.rU.AvoidsNodes,corner:10,fromShortLength:10,toShortLength:15,relinkableFrom:!0,relinkableTo:!0,reshapable:!0,resegmentable:!0},new Bt.KX("fromSpot","fromSpot",Bt.z6.parse),new Bt.KX("toSpot","toSpot",Bt.z6.parse),new Bt.KX("fromShortLength","dir",Kr=>Kr>=1?10:0),new Bt.KX("toShortLength","dir",Kr=>Kr>=1?10:0),new Bt.KX("points").makeTwoWay(),Pn(Bt.bn,{strokeWidth:2},new Bt.KX("stroke","color"),new Bt.KX("strokeWidth","thickness"),new Bt.KX("strokeDashArray","dash")),Pn(Bt.bn,{segmentIndex:0,segmentOffset:new Bt.E9(15,0),segmentOrientation:Bt.rU.OrientAlong,alignmentFocus:Bt.z6.Right,figure:"circle",width:10,strokeWidth:0},new Bt.KX("fill","color"),new Bt.KX("visible","dir",Kr=>Kr===1)),Pn(Bt.bn,{segmentIndex:-1,segmentOffset:new Bt.E9(-10,6),segmentOrientation:Bt.rU.OrientPlus90,alignmentFocus:Bt.z6.Right,figure:"triangle",width:12,height:12,strokeWidth:0},new Bt.KX("fill","color"),new Bt.KX("visible","dir",Kr=>Kr>=1),new Bt.KX("width","thickness",Kr=>7+3*Kr),new Bt.KX("height","thickness",Kr=>7+3*Kr),new Bt.KX("segmentOffset","thickness",Kr=>new Bt.E9(-15,4+1.5*Kr))),Pn(Bt.bn,{segmentIndex:0,segmentOffset:new Bt.E9(15,-6),segmentOrientation:Bt.rU.OrientMinus90,alignmentFocus:Bt.z6.Right,figure:"triangle",width:12,height:12,strokeWidth:0},new Bt.KX("fill","color"),new Bt.KX("visible","dir",Kr=>Kr===2),new Bt.KX("width","thickness",Kr=>7+3*Kr),new Bt.KX("height","thickness",Kr=>7+3*Kr),new Bt.KX("segmentOffset","thickness",Kr=>new Bt.E9(-15,4+1.5*Kr))),Pn(Bt.al,{alignmentFocus:new Bt.z6(0,1,-4,0),editable:!0},new Bt.KX("text").makeTwoWay(),new Bt.KX("stroke","color"))),je.current.linkTemplate.selectionAdornmentTemplate=Pn(Bt.uz,Pn(Bt.bn,{isPanelMain:!0,stroke:"transparent",strokeWidth:6,pathPattern:xr(2)},new Bt.KX("pathPattern","thickness",xr)),hr({alignmentFocus:new Bt.z6(0,0,-6,-4)}));function xr(Kr){return Pn(Bt.bn,{stroke:"dodgerblue",strokeWidth:2,strokeCap:"square",geometryString:"M0 0 M4 2 H3 M4 "+(Kr+4).toString()+" H3"})}function On(Kr){var Ia="M0 0 M8 16 M0 8 L16 8 M12 11 L16 8 L12 5";return Kr===0?Ia="M0 0 M16 16 M0 8 L16 8":Kr===2&&(Ia="M0 0 M16 16 M0 8 L16 8 M12 11 L16 8 L12 5 M4 11 L0 8 L4 5"),Pn(Bt.bn,{geometryString:Ia,margin:2,background:"transparent",mouseEnter:(Ta,la)=>la.background="dodgerblue",mouseLeave:(Ta,la)=>la.background="transparent",click:hn("dir",Kr),contextClick:hn("dir",Kr)})}function vr(Kr){var Ia=(Ta,la)=>{Ta.handled=!0,Ta.diagram.model.commit(ei=>{var Wi=la.part.adornedPart;ei.set(Wi.data,Kr?"toSpot":"fromSpot",Bt.z6.stringify(Bt.z6.AllSides)),(Kr?Wi.toNode:Wi.fromNode).invalidateConnectedLinks()})};return Pn(Bt.bn,{width:12,height:12,fill:"transparent",mouseEnter:(Ta,la)=>la.background="dodgerblue",mouseLeave:(Ta,la)=>la.background="transparent",click:Ia,contextClick:Ia})}function Yn(Kr,Ia){var Ta=0,la=Bt.z6.RightSide;Kr.equals(Bt.z6.Top)?(Ta=270,la=Bt.z6.TopSide):Kr.equals(Bt.z6.Left)?(Ta=180,la=Bt.z6.LeftSide):Kr.equals(Bt.z6.Bottom)&&(Ta=90,la=Bt.z6.BottomSide),Ia||(Ta-=180);var ei=(Wi,za)=>{Wi.handled=!0,Wi.diagram.model.commit(_i=>{var $i=za.part.adornedPart;_i.set($i.data,Ia?"toSpot":"fromSpot",Bt.z6.stringify(la)),(Ia?$i.toNode:$i.fromNode).invalidateConnectedLinks()})};return Pn(Bt.bn,{alignment:Kr,alignmentFocus:Kr.opposite(),geometryString:"M0 0 M12 12 M12 6 L1 6 L4 4 M1 6 L4 8",angle:Ta,background:"transparent",mouseEnter:(Wi,za)=>za.background="dodgerblue",mouseLeave:(Wi,za)=>za.background="transparent",click:ei,contextClick:ei})}je.current.linkTemplate.contextMenu=Pn("ContextMenu",jn(),Qn(),Pn("ContextMenuButton",Pn(Bt.s_,"Horizontal",On(0),On(1),On(2))),Pn("ContextMenuButton",Pn(Bt.s_,"Horizontal",Pn(Bt.s_,"Spot",vr(!1),Yn(Bt.z6.Top,!1),Yn(Bt.z6.Left,!1),Yn(Bt.z6.Right,!1),Yn(Bt.z6.Bottom,!1)),Pn(Bt.s_,"Spot",{margin:new Bt.Zt(0,0,0,2)},vr(!0),Yn(Bt.z6.Top,!0),Yn(Bt.z6.Left,!0),Yn(Bt.z6.Right,!0),Yn(Bt.z6.Bottom,!0)))));const jr=`{ "class": "GraphLinksModel",
|
|
|
"nodeDataArray": [
|
|
|
{"text":"Find Problem","key":-9,"loc":"-20 -140","color":"#3358ff","fill":"white","figure":"Procedure","thickness":3},
|
|
|
{"text":"What do we want?","key":-10,"loc":"-65 -324.305","group":-16,"figure":"Ellipse","fill":"white"},
|
|
|
{"text":"What do our users want?","key":-11,"loc":"105 -334.305","group":-20,"figure":"Ellipse","fill":"#ffffff","color":"black"},
|
|
|
{"text":"Meetings","key":-12,"loc":"-65 -444.305","group":-16,"figure":"TriangleDown","fill":"#ffffff"},
|
|
|
{"text":"Reviews","key":-13,"loc":"105 -454.305","group":-20,"figure":"TriangleDown","fill":"#ffffff","color":"black"},
|
|
|
{"text":"Can we solve it?","key":-14,"loc":"190 -140","color":"#7d33ff","fill":"#ffffff","figure":"Diamond","size":"140 80","thickness":3},
|
|
|
{"isGroup":true,"text":"Internal","key":-16,"loc":"-65 -384.305","fill":"#d5ebff","dash":null,"thickness":1,"group":-22},
|
|
|
{"isGroup":true,"text":"External","key":-20,"loc":"105 -394.305","fill":"#d5ebff","dash":null,"thickness":1,"group":-22},
|
|
|
{"isGroup":true,"text":"Sources","key":-22,"loc":"20 -400","fill":"#a5d2fa","dash":[4,4],"color":"#3358ff"}
|
|
|
],
|
|
|
"linkDataArray": [
|
|
|
{"from":-12,"to":-10,"points":[-65,-414.305,-65,-404.305,-65,-384.305,-65,-384.305,-65,-364.305,-65,-354.305],"dash":null,"dir":1},
|
|
|
{"from":-13,"to":-11,"points":[105,-424.305,105,-414.305,105,-394.305,105,-394.305,105,-374.305,105,-364.305],"dash":null,"color":"#000000","dir":1},
|
|
|
{"from":-10,"to":-9,"points":[-65,-294.305,-65,-284.305,-65,-232.1525,-40,-232.1525,-40,-180,-40,-170],"dir":2,"dash":[4,4]},
|
|
|
{"from":-11,"to":-9,"points":[105,-304.305,105,-294.305,105,-237.1525,0,-237.1525,0,-180,0,-170],"dash":[4,4],"dir":2},
|
|
|
{"from":-9,"to":-14,"points":[40,-150,58,-150,80,-150,80,-153.33333333333331,102,-153.33333333333331,120,-153.33333333333331],"dir":1,"color":"#3358ff"},
|
|
|
{"from":-14,"to":-9,"points":[190,-100,190,-90,-20,-90,-20,-95,-20,-100,-20,-110],"fromSpot":"BottomSide","toSpot":"BottomSide","text":"No","color":"#ff3333","thickness":2,"dir":1},
|
|
|
{"from":-9,"to":-14,"points":[40,-130,58,-130,80,-130,80,-126.66666666666666,102,-126.66666666666666,120,-126.66666666666666]}
|
|
|
]}`;var ri=["Rectangle","Square","RoundedRectangle","Border","Ellipse","Circle","TriangleRight","TriangleDown","TriangleLeft","TriangleUp","Triangle","Diamond","LineH","LineV","None","BarH","BarV","MinusLine","PlusLine","XLine","LineRight","LineDown","LineLeft","LineUp"];function vi(Kr){return console.log("shapeName:",Kr),ri.indexOf(Kr)>=0}var ci=new Bt.YI(Et.current,{maxSelectionCount:1,linkTemplate:Pn(Bt.rU,{locationSpot:Bt.z6.Center,selectionAdornmentTemplate:Pn(Bt.uz,"Link",{locationSpot:Bt.z6.Center},Pn(Bt.bn,{isPanelMain:!0,fill:null,stroke:"deepskyblue",strokeWidth:0}),Pn(Bt.bn,{toArrow:"Standard",stroke:null}))},{routing:Bt.rU.AvoidsNodes,curve:Bt.rU.JumpOver,corner:5,toShortLength:4},new Bt.KX("points"),Pn(Bt.bn,{isPanelMain:!0,strokeWidth:2}),Pn(Bt.bn,{toArrow:"Standard",stroke:null})),model:new Bt.FJ([{text:"\u672A\u547D\u540D",size:"100 100",fill:null,stroke:"#000"},...Bt.bn.getFigureGenerators().toArray().map(Kr=>({text:"\u672A\u547D\u540D",size:"100 100",figure:Kr.key,fill:"white",stroke:"#666",borderColor:"#000"}))])});return je.current.addDiagramListener("TextEdited",function(Kr){var Ia;const Ta=Kr.subject.part;var la=(Ia=document.activeElement)==null?void 0:Ia.value;typeof la=="string"&&la.trim()===""&&je.current.model.commit(function(ei){ei.set(Ta.data,"text","\u672A\u547D\u540D"),je.current.commandHandler.stopCommand()},"increment")}),ci.nodeTemplate=Pn(Bt.NB,"Auto",{locationSpot:Bt.z6.Center},new Bt.KX("location","location",Bt.E9.parse).makeTwoWay(Bt.E9.stringify),Pn(Bt.bn,"Circle",{fill:"white",stroke:"gray",strokeWidth:2,width:20,height:20,portId:"",fromLinkable:!0,toLinkable:!0,fromLinkableDuplicates:!0,toLinkableDuplicates:!0,fromLinkableSelfNode:!0,toLinkableSelfNode:!0},new Bt.KX("stroke").makeTwoWay(),new Bt.KX("fill").makeTwoWay(),new Bt.KX("figure")),Pn(Bt.al,{margin:new Bt.Zt(5,5,3,5),font:"10pt sans-serif",minSize:new Bt.$u(16,16),maxSize:new Bt.$u(10,NaN),textAlign:"center",editable:!0},new Bt.KX("key").makeTwoWay())),setTimeout(()=>{je.current.grid=Pn(Bt.s_,"Grid",Pn(Bt.bn,"LineH",{stroke:"lightgray",strokeWidth:.5}),Pn(Bt.bn,"LineV",{stroke:"lightgray",strokeWidth:.5})),je.current.grid.visible=!0,je.current.grid.gridCellStroke="darkgray",je.current.grid.gridCellStrokeWidth=1},300),window.myDiagrams=je.current,je.current}const Vn=()=>Tt(this,null,function*(){var Pn=je.current.makeImage();const Jn=yield(0,sn.ZP)("/api/attachments.json",{method:"post",body:{file_type:"base64",original_filename:Date.now(),file:Pn.src}});Le({src:Jn.url})});return(0,Oe.useEffect)(()=>(setTimeout(()=>{dn()},500),fn(Vt+1),()=>{je.current=null}),[]),Ht.createElement("div",{ref:Jt,className:xt.current?`${rn.maxH60} body-overflow-initial`:"body-overflow-initial"},Ht.createElement(vt.default,{width:1200,icon:null,footer:null,closable:!0,visible:!!Vt,destroyOnClose:!0,maskClosable:!1,rootClassName:"zIndex-9999",title:Ht.createElement(Ut.Z,null,Ht.createElement(Dn.Z,{flex:1},"\u63D2\u5165\u6D41\u7A0B\u56FE"),Ht.createElement(Dn.Z,{onClick:()=>{var Pn,Jn,$n=je.current.selection.first();if(xt.current=!xt.current,document.activeElement&&$n){let hr=(Jn=(Pn=document.activeElement)==null?void 0:Pn.value)==null?void 0:Jn.trim();typeof hr=="string"&&je.current.model.commit(function(hn){hn.set($n.data,"text",hr||"\u672A\u547D\u540D"),je.current.commandHandler.stopCommand()},"increment")}fn(Vt+1)}},Ht.createElement("span",{className:"current c-blue mr30",style:{fontWeight:400}},"\u5C55\u5F00/\u6536\u8D77"))),onCancel:Be},Ht.createElement("div",{style:{width:"100%",height:"80vh",overflow:"hidden",position:"relative"},className:rn.flowChartWrp},Ht.createElement("div",{style:{display:"flex",height:"100%"}},Ht.createElement("div",{style:{width:"300px",height:"100%"}},Ht.createElement("div",{style:{background:"#fff",position:"relative",zIndex:12,fontSize:16,color:"#3061d0"}},"\u56FE\u5F62\u5E93"),Ht.createElement("div",{style:{height:"calc(100% - 50px)"},className:rn.myPaletteDiv,ref:Et})),Ht.createElement("div",{style:{flex:1,position:"relative"}},Ht.createElement("div",{ref:Xe,style:{height:"80vh"}}))),Ht.createElement("div",{className:"tr"},Ht.createElement(Ge.ZP,{size:"large",onClick:Vn,style:{position:"absolute",right:0,bottom:0,zIndex:8},type:"primary"},"\u4FDD\u5B58\u5230\u7F16\u8F91\u5668")))))}var Qt=St,gt=Te(5112),bt=Te(5871);const Yt=gt.ZP.Group,kt={margin:"0 8px"};var Mt=({callback:Be,onCancel:Le})=>{function je(Xe){Be(Xe)}return Oe.createElement(Re.default,{className:"add-table-panel",initialValues:{row:3,col:2,align:"default"},onFinish:je},Oe.createElement("div",{className:"flex-container",style:{alignItems:"baseline"}},Oe.createElement("span",{style:kt},"\u5355\u5143\u683C\u6570\uFF1A"),Oe.createElement("span",{style:kt},"\u884C\u6570"),Oe.createElement(Re.default.Item,{name:"row",rules:[{required:!0,message:"\u8BF7\u8F93\u5165\u884C\u6570"}]},Oe.createElement(bt.Z,null)),Oe.createElement("span",{style:kt},"\u5217\u6570"),Oe.createElement(Re.default.Item,{name:"col",rules:[{required:!0,message:"\u8BF7\u8F93\u5165\u5217\u6570"}]},Oe.createElement(bt.Z,null))),Oe.createElement("div",{className:"flex-container",style:{marginTop:12,alignItems:"baseline"}},Oe.createElement("span",{style:kt},"\u5BF9\u9F50\u65B9\u5F0F\uFF1A"),Oe.createElement(Re.default.Item,{name:"align"},Oe.createElement(Yt,null,Oe.createElement(gt.ZP,{value:"default"},Oe.createElement("i",{className:"fa fa-align-justify"})),Oe.createElement(gt.ZP,{value:"left"},Oe.createElement("i",{className:"fa fa-align-left"})),Oe.createElement(gt.ZP,{value:"center"},Oe.createElement("i",{className:"fa fa-align-center"})),Oe.createElement(gt.ZP,{value:"right"},Oe.createElement("i",{className:"fa fa-align-right"}))))),Oe.createElement("div",{className:"flex-container flex-end"},Oe.createElement(Ge.ZP,{type:"primary",htmlType:"submit",style:{marginRight:10}},"\u786E\u5B9A"),Oe.createElement(Ge.ZP,{type:"ghost",onClick:Le},"\u53D6\u6D88")))},ln=Te(78673),zn=Te(20063),Gn=Te.n(zn),nr=(0,Oe.forwardRef)(({use3d:Be,width:Le,height:je,callback:Xe,showSaveButton:Et},xt)=>{const Jt=(0,Oe.useRef)(),Vt=(0,Oe.useRef)(),[fn,dn]=(0,Oe.useState)(!1),Vn=(0,Oe.useRef)({id:Jt,appName:"graphing",width:Le||1e3,height:je||600,showToolBar:!0,showMenuBar:!0,allowStyleBar:!0,showAlgebraInput:!0,enableLabelDrags:!1,enableShiftDragZoom:!0,showToolBarHelp:!1,errorDialogsActive:!0,showTutorialLink:!0,showLogging:!0,useBrowserForJS:!1});(0,Oe.useEffect)(()=>{Vt.current=new(Gn())(Vn.current,!0),window.onload=function(){Vt.current.inject("applet_container")}},[]);const Pn=()=>{var Jn=window.ggbApplet.getPNGBase64(1,!0,72);return Xe&&Xe(Jn),Jn};return(0,Oe.useEffect)(()=>{Vn.current.appName=fn?"3D":"graphing",Vt.current.inject("applet_container")},[fn]),(0,Oe.useEffect)(()=>{dn(Be)},[Be]),(0,Oe.useImperativeHandle)(xt,()=>({getImgData:Pn})),Oe.createElement(Oe.Fragment,null,Oe.createElement("div",{style:{width:"100%",height:"100%"},id:"applet_container",ref:Jt}),Oe.createElement(Ut.Z,{align:"middle"},Oe.createElement(Dn.Z,{flex:1},Oe.createElement(ln.Z,{size:"default",checkedChildren:"\u5173\u95ED3D\u56FE\u50CF",unCheckedChildren:"\u5F00\u542F3D\u56FE\u50CF",checked:fn,onChange:Jn=>dn(Jn)})),Oe.createElement(Dn.Z,null,Oe.createElement(Ge.ZP,{size:"large",onClick:Pn,style:{zIndex:8,marginTop:10},type:"primary"},"\u4FDD\u5B58\u5230\u7F16\u8F91\u5668"))))}),Xn=Te(50892),qt=Te(1012),vn=Te(8591);const Un="link",Ln="upload-image",yr="add-flowchart",kr="draw-image",Dr="add-flowchart",Gr="code-block",Ma="add-table",Ja="------------",Na={default:Ja,left:`:${Ja}`,center:`:${Ja}:`,right:`${Ja}:`};var Da=Te(29152),Di=(Be,Le,je)=>new Promise((Xe,Et)=>{var xt=fn=>{try{Vt(je.next(fn))}catch(dn){Et(dn)}},Jt=fn=>{try{Vt(je.throw(fn))}catch(dn){Et(dn)}},Vt=fn=>fn.done?Xe(fn.value):Promise.resolve(fn.value).then(xt,Jt);Vt((je=je.apply(Be,Le)).next())});function _a(){}let Vr=0;const Ya=1e4,ui="\u2581",mr="@\u2581\u2581@",Er="@\u2581@",ba=`
|
|
|
**\u6A21\u677F\u6807\u9898**
|
|
|
\u6A21\u677F\u6B63\u6587\u5185\u5BB9\uFF0C\u53EF\u8F93\u5165\u6587\u672C\u5185\u5BB9\u548C\u7C98\u8D34\u56FE\u7247\u7B49\u64CD\u4F5C`,Fn=["pptm","pptx","ppt","pot","pps","ppa","potx","ppsx","ppam","pptm","potm","ppsm","doc","docx","dot","dotx","docm","dotm","xls","xlsx","csv","xlt","xla","xltx","xlsm","xltm","xlam","xlsb"];function gr(Be){return/^\d+$/.test(Be)?`${Be}px`:Be}const _r=navigator.platform.toUpperCase().indexOf("MAC")>=0?"Cmd":"Ctrl",ha={[_r+"-B"]:"bold",[_r+"-I"]:"italic"},Ct={[Un]:"\u6DFB\u52A0\u94FE\u63A5",[Gr]:"\u6DFB\u52A0\u4EE3\u7801\u5757",[Ln]:"\u6DFB\u52A0\u56FE\u7247",[kr]:"\u6DFB\u52A0\u753B\u56FE",[yr]:"\u63D2\u5165\u6D41\u7A0B\u56FE",[Ma]:"\u6DFB\u52A0\u8868\u683C","maths-latex":"\u6570\u5B66\u56FE\u50CF","inline-latex":"LATEX\u516C\u5F0F"};var we=({defaultValue:Be="",onChange:Le,width:je="100%",height:Xe=400,miniToolbar:Et=!1,isFocus:xt=!1,watch:Jt,insertTemp:Vt,mode:fn="markdown",id:dn="markdown-editor-id",showResizeBar:Vn=!1,noStorage:Pn=!1,showNullButton:Jn=!1,showNullProgramButton:$n=!1,hidetoolBar:hr=!1,fullScreen:hn=!1,onBlur:an,onCMBeforeChange:In,onFullScreen:jn,className:cr="",disablePaste:or=!1,disabled:Qn=!1,disabledFill:dr=!1,placeholder:xr="",values:On="",extraUse:vr})=>{const[Yn,jr]=(0,Oe.useState)(null),[ri,vi]=(0,Oe.useState)(Be),[ci,Kr]=(0,Oe.useState)(Jt),[Ia,Ta]=(0,Oe.useState)(hn),[la,ei]=(0,Oe.useState)(""),[Wi,za]=(0,Oe.useState)(0),[_i,$i]=(0,Oe.useState)(Xe),[Uo,yo]=(0,Oe.useState)(!1),sl=(0,Oe.useRef)((0,qt.Z)()),ds=(0,Oe.useRef)(!1),bo=(0,Oe.useRef)(),[hs,ss]=(0,Oe.useState)(0),[Yo,Wo]=(0,Oe.useState)(0),Rs=(0,Oe.useRef)(),tl=(0,Oe.useRef)(),Pl=(0,Oe.useRef)(),Gs=(0,Oe.useRef)(),il=()=>Di(void 0,null,function*(){var zi;const Ga=yield Fetch("/api/attachments/distinct_hash_val.json",{method:"post",body:{hash_val:sl.current}});(zi=Ga==null?void 0:Ga.attachments)!=null&&zi.length&&(console.log("cm:",Yn,Rs),Ga.attachments.map(ja=>{ja.content_type.indexOf("image")>-1?Yn.replaceSelection(``):ja.content_type.indexOf("video")>-1?Yn.replaceSelection(`<video width="100%" controls src="${ENV.API_SERVER}/api/attachments/${data.id}"></video>`):ja.content_type.indexOf("pdf")>-1?Yn.replaceSelection(`<a href="${ENV.API_SERVER}/api/attachments/${ja.id}?type=${ja.content_type}&disposition=inline" target="_blank">${ja.name}</a>`):Yn.replaceSelection(`[${ja.name}](${ENV.API_SERVER}/api/attachments/${ja.id}?type=${ja.content_type})`)}))});(0,Oe.useEffect)(()=>{const zi=window.scrollY||window.pageYOffset;vi(On),Yn==null||Yn.setValue(On),window.scrollTo(0,zi)},[On]),(0,Oe.useEffect)(()=>{jn==null||jn(Ia)},[Ia]),(0,Oe.useEffect)(()=>{if(Rs.current){let zi=function(ja,Ua){var ao;if(or){Ua.preventDefault();return}const ko=Ua.clipboardData;if(ko){const Ts=ko.types.toString(),ws=ko.items;if(Ts==="Files"||ko.types.indexOf("Files")>-1){if(Ua.preventDefault(),fn=="stex")return;try{let Ks=ws[1];((ao=ws[0])==null?void 0:ao.kind)==="file"&&(Ks=ws[0]);const Oo=Ks.getAsFile(),uu=Oo.name.split(".").pop();(0,ct.I)(Oo,fl=>{var Co,Jo,Fs;fl.id?((Co=Oo==null?void 0:Oo.type)==null?void 0:Co.indexOf("image"))>-1?Ga.replaceSelection(`<img width="100%" src="/api/attachments/${fl.id}?type=${fl.content_type})" alt="" />`):((Jo=Oo==null?void 0:Oo.type)==null?void 0:Jo.indexOf("video"))>-1?Ga.replaceSelection(`<video width="100%" controls src="/api/attachments/${fl.id}"></video>`):((Fs=Oo==null?void 0:Oo.type)==null?void 0:Fs.indexOf("pdf"))>-1?Ga.replaceSelection(`<a href="/api/attachments/${fl.id}?type=${Oo.type}&disposition=inline" target="_blank">${Oo.name}</a>`):Fn.includes(uu)?Ga.replaceSelection(`<a href="/api/attachments/${fl.id}?type=office&disposition=inline" target="_blank">${Oo.name}</a>`):Ga.replaceSelection(`[${Oo.name}](/api/attachments/${fl.id}?type=${fl.content_type})`):(fl==null?void 0:fl.status)===401&&(vn.ZP.warning((fl==null?void 0:fl.message)||"\u8BF7\u767B\u5F55\u540E\u518D\u64CD\u4F5C"),document.location.href="/user/login")})}catch(Ks){vn.ZP.warning("\u8BF7\u4F7F\u7528chrome\u6D4F\u89C8\u5668\u7C98\u8D34")}return!0}else return!0}return!0};const Ga=Ne().fromTextArea(Rs.current,{mode:fn,lineNumbers:!Et,lineWrapping:!0,value:Be,autoCloseTags:!$n,autoCloseBrackets:!0});return Ga.on("keyup",function(ja,Ua){Ua.keyCode===8&&(ja.getValue()==""?Ga.setOption("placeholder",xr):Ga.setOption("placeholder",null))}),Ga.on("keydown",function(ja,Ua){if(Ua.keyCode===8){var ao=uo(ja);ao&&Ua.preventDefault()}}),xt&&Ga.focus(),Ga.on("paste",zi),Ga.on("dragleave",function(ja,Ua){tl.current.classList.remove("mouse-hover-md")}),Qn&&Ga.on("beforeChange",function(ja,Ua){(Ua.origin==="paste"||Ua.origin==="+input")&&Ua.cancel()}),jr(Ga),()=>{Ga.off("paste",zi)}}},[]);const nl=(0,Oe.useCallback)(()=>{if(tl.current)try{}catch(zi){console.log(zi,"---- to set md editor body height")}},[_i,tl,Ia]);(0,Oe.useEffect)(()=>{function zi(){let Ga=new be.Z(ja=>{for(let Ua of ja)(Ua.target.offsetHeight>0||Ua.target.offsetWidth>0)&&(nl(),Yn.setSize("100%","100%"),Yn.refresh())});return Ga.observe(Rs.current.parentElement),Ga}if(Yn){const Ga=zi();return()=>{var ja,Ua;(ja=Rs.current)!=null&&ja.parentElement&&Ga.unobserve((Ua=Rs.current)==null?void 0:Ua.parentElement)}}},[Yn,nl]),(0,Oe.useEffect)(()=>{if(Yn){let zi=[];for(const[Ga,ja]of Object.entries(ha)){let Ua={[Ga]:()=>{Xo(ja)}};zi.push(Ua),Yn.addKeyMap(Ua)}return bo.current=setInterval(()=>{ds.current&&il()},4e3),()=>{clearInterval(bo.current);for(let Ga of zi)Yn.removeKeyMap(Ga)}}},[Yn]),(0,Oe.useEffect)(()=>{hn!==Ia&&Ta(hn)},[hn]),(0,Da.Z)(()=>{if(!Pn&&Wi>0){let zi=new Date().getTime(),Ga=window.sessionStorage.getItem(dn);zi>=Wi+Ya&&(!Ga||Ga!==ri)&&(window.sessionStorage.setItem(dn,ri),yo(!0))}},Ya),(0,Oe.useEffect)(()=>{Kr(Jt)},[Yn,Jt]),(0,Oe.useEffect)(()=>{Yn&&xt&&Yn.focus()},[Yn,xt]),(0,Oe.useEffect)(()=>{if(ci&&Yn){let zi=function(ja){let Ua=ja.target;if(Gs.current){let ao=Ua.scrollTop/Ua.scrollHeight;Gs.current.scrollTop=Gs.current.scrollHeight*ao}};const Ga=Yn.getScrollerElement();return Ga.addEventListener("scroll",zi),()=>{Ga.removeEventListener("scroll",zi)}}},[Yn,ci]),(0,Oe.useEffect)(()=>{if(Yn&&In){let zi=function(Ga,ja){In(Ga,ja)};return Yn.on("beforeChange",zi),()=>{Yn.off("beforeChange",zi)}}},[Yn,In]),(0,Oe.useEffect)(()=>{if(Yn&&an){let zi=function(){an(Yn.getValue())};return Yn.on("blur",zi),()=>{Yn.off("blur",zi)}}},[Yn,an]);function uo(zi,Ga){var ja=zi.getDoc(),Ua=ja.getCursor(),ao=ja.getLine(Ua.line),ko=ao.charAt(Ua.ch-1),Ts=ao.lastIndexOf("@\u2581@",Ua.ch),ws=ao.lastIndexOf("@\u2581\u2581@",Ua.ch),Ks=Ts>ws?Ts:ws,Oo=Ts>ws?3:4;if(mr.indexOf(ko)===-1)return null;if(console.log("change1:",Ga,zi,ao,Ua,Ks,Ts,ws,ko),Ks>=0&&Ua.ch-Ks<5){var uu=Ks+Oo;return ja.replaceRange("",{line:Ua.line,ch:Ks},{line:Ua.line,ch:uu}),{line:Ua.line,ch:uu}}return null}(0,Oe.useEffect)(()=>{if(Yn){let zi=function(Ga,ja){const Ua=Ga.getValue();vi(Ua),za(new Date().getTime()),Ga.getScrollerElement().dispatchEvent(new CustomEvent("scroll")),Le&&($n?Le(Ua,Vs(Ua)):Le(Ua))};return Yn.on("change",zi),()=>{Yn.off("change",zi)}}},[Yn,Le]),(0,Oe.useEffect)(()=>{if(Yn)if(Be==null)Yn.setValue(""),vi("");else{const zi=window.scrollY||window.pageYOffset;Be!==Yn.getValue()&&(Yn.setValue(Be),vi(Be),Yn.setCursor(Qn?1:Yn.lineCount(),0),window.scrollTo(0,zi))}},[Yn,Be]);const Xo=(0,Oe.useCallback)(zi=>{const Ga=Yn.getCursor(),ja=Yn.getSelection();let Ua=ja.split(`
|
|
|
`);switch(zi){case"bold":return Yn.replaceSelection("**"+ja+"**"),ja===""&&Yn.setCursor(Ga.line,Ga.ch+2),Yn.focus();case"italic":return Yn.replaceSelection("*"+ja+"*"),ja===""&&Yn.setCursor(Ga.line,Ga.ch+1),Yn.focus();case"code":return Yn.replaceSelection("`"+ja+"`"),ja===""&&Yn.setCursor(Ga.line,Ga.ch+1),Yn.focus();case"inline-latex":return ei("inline-latex"),Yn.focus();case"latex":return Yn.replaceSelection("```latex\n"+ja+"\n```"),Yn.setCursor(Ga.line+1,ja.length+1),Yn.focus();case"line-break":return Yn.replaceSelection(`<br/>
|
|
|
`),Yn.focus();case"list-ul":return ja===""?Yn.replaceSelection("- "+ja):Yn.replaceSelection(Ua.map(ao=>ao===""?"":`- ${ao}`).join(`
|
|
|
`)),Yn.focus();case"list-ol":return ja===""?Yn.replaceSelection("1. "+ja):Yn.replaceSelection(Ua.map((ao,ko)=>ao===""?"":`${ko+1}. ${ao}`).join(`
|
|
|
`)),Yn.focus();case"add-null-ch":return ja===""&&Yn.setCursor(Ga.line,Ga.ch),Yn.replaceSelection(ui),Yn.focus();case"add-signal":return ja===""&&Yn.setCursor(Ga.line,Ga.ch),Yn.replaceSelection(Er),Yn.focus();case"add-multiple":return ja===""&&Yn.setCursor(Ga.line,Ga.ch),Yn.replaceSelection(mr),Yn.focus();case"inster-template-1":return ja===""&&Yn.setCursor(Ga.line,Ga.ch),Yn.replaceSelection(ba),Yn.focus();case"eraser":return Yn.setValue(""),Yn.focus();case"trigger-watch":return Kr(!ci),Yn.focus();case"trigger-full-screen":return Ta(!Ia),Yn.focus();case Un:ei(Un);return;case Gr:ei(Gr);return;case Ln:ei(Ln);return;case kr:ei(kr);return;case"maths-latex":ei("maths-latex");return;case yr:ei(yr);return;case Ma:ei(Ma);return;default:throw new Error}},[Yn,ci,Ia]),Ho=(0,Oe.useCallback)((zi,Ga)=>{var ja,Ua,ao,ko,Ts,ws;switch(ei(""),la){case Un:const{title:Co,link:Jo}=zi;return Yn.replaceSelection(`[${Co}](${Jo})`),Yn.focus();case Gr:const{language:Fs,content:_o}=zi;return Yn.replaceSelection(["```"+Fs,_o,"```"].join(`
|
|
|
`)),Yn.focus();case"maths-latex":for(var Ks=atob(zi),Oo=new Uint8Array(Ks.length),uu=0;uu<Ks.length;uu++)Oo[uu]=Ks.charCodeAt(uu);var fl=new Blob([Oo],{type:"image/png"});(0,ct.I)(fl,Li=>{Li.id?Yn.replaceSelection(``):(Li==null?void 0:Li.status)===401&&(document.location.href="/user/login")});break;case"inline-latex":Yn.replaceSelection("`$$"+zi+"$$`");break;case Ln:case kr:case Dr:const{src:gs,alt:Or}=zi,pr=Ga,Rr=(ao=(Ua=(ja=pr==null?void 0:pr.name)==null?void 0:ja.split("."))==null?void 0:Ua.pop)==null?void 0:ao.call(Ua);return((ko=pr==null?void 0:pr.type)==null?void 0:ko.indexOf("image"))>-1||!(pr!=null&&pr.type)?pr.align||pr.width?Yn.replaceSelection(`<p style="text-align:${pr.align||"initial"}"><img width="${pr.width?pr.width+"%":"initial"}" src="${gs}" alt="${Or||""}" /></p>`):Yn.replaceSelection(`<img width="100%" src="${gs}" alt="${Or||""}" />`):((Ts=pr==null?void 0:pr.type)==null?void 0:Ts.indexOf("video"))>-1?Yn.replaceSelection(`<video width="100%" controls src="${gs}"></video>`):((ws=pr==null?void 0:pr.type)==null?void 0:ws.indexOf("pdf"))>-1?Yn.replaceSelection(`<a href="${gs}?type=${pr.type}&disposition=inline" target="_blank">${pr.name}</a>`):Fn.includes(Rr)?Yn.replaceSelection(`<a href="${gs}?type=office&disposition=inline" target="_blank">${pr.name}</a>`):Yn.replaceSelection(`[${pr.name}](${gs})`),Yn.focus();case Ma:const{row:ga,col:pi,align:Ca}=zi;let rr=`
|
|
|
`;for(let Li=0;Li<ga;Li++){let io=[],Lo=[];for(let Zi=0;Zi<pi;Zi++)Li===1&&Lo.push(Na[Ca]),io.push(" ");Li===1&&(rr+=`| ${Lo.join(" | ")} |
|
|
|
`),rr+=`| ${io.join(pi===1?"":" | ")} |
|
|
|
`}return Yn.replaceSelection(rr+`
|
|
|
`),Yn.focus();default:throw new Error}},[Yn,la]),Xs=(0,Oe.useMemo)(()=>{switch(la){case Un:return Oe.createElement(yt,{callback:Ho,onCancel:Il});case Gr:return Oe.createElement(ft.Z,{callback:Ho,onCancel:Il});case Ln:return Oe.createElement(ct.Z,{callback:Ho,onCancel:Il});case yr:return Oe.createElement(Qt,{callback:Ho,onCancel:Il});case Ma:return Oe.createElement(Mt,{callback:Ho,onCancel:Il});case"maths-latex":return Oe.createElement(nr,{showSaveButton:!0,callback:Ho});case"inline-latex":return Oe.createElement(Xn.Z,{showSaveButton:!0,callback:Ho});default:return null}},[la]);function Il(){ei("")}(0,Oe.useEffect)(()=>{if(Pl.current){let zi=function(Ts){ao=!0,ko=Ts.pageY},Ga=function(){ao=!1},ja=function(Ts){if(ao){let ws=Ts.pageY-ko;ws<0&&(ws=0),ws>300&&(ws=300);let Ks=Xe+ws+"px";$i(Ks)}},Ua=Pl.current,ao=!1,ko=0;return Ua.addEventListener("mousedown",zi),document.addEventListener("mousemove",ja),document.addEventListener("mouseup",Ga),()=>{Ua.removeEventListener("mousedown",zi),document.removeEventListener("mousemove",ja),document.removeEventListener("mouseup",Ga)}}},[Yn,Pl]),(0,Oe.useEffect)(()=>{$i(Xe)},[Xe]);const _l=gr(je),Go=gr(_i),lu={width:_l,height:Go},Os=(0,Oe.useMemo)(()=>{if(Wi){let zi=new Date(Wi),Ga=zi.getHours(),ja=zi.getMinutes(),Ua=zi.getSeconds();return Ga=Ga<10?"0"+Ga:Ga,ja=ja<10?"0"+ja:ja,Ua=Ua<10?"0"+Ua:Ua,`${Ga}:${ja}:${Ua}`}return 0},[Wi]),Vs=zi=>{const Ga=[];if($n){let ja=-1;zi=zi.replace(/(@▁▁@|@▁@)/g,function(Ua,ao,ko){Ga.push({multiLine:Ua!==Er})})}return Ga};function Mu(){window.sessionStorage.removeItem(dn),yo(!1),za(0)}function Al(){yo(!1),za(0),Yn.setValue(window.sessionStorage.getItem(dn))}(0,Oe.useEffect)(()=>{Ct[la]&&la!==kr&&la!==yr&&setTimeout(()=>{const zi=document.getElementsByClassName("markdown-popup-form")[0],Ga=window.innerWidth/2-zi.offsetWidth/2,ja=window.innerHeight/2-zi.offsetHeight/2;ss(Ga),Wo(ja)},0)},[la]);const ol=zi=>{zi.preventDefault();const Ga=zi.clientX-hs,ja=zi.clientY-Yo;document.body.onmousemove=Ua=>{let ao=Ua.clientX-Ga,ko=Ua.clientY-ja;const Ts=document.getElementsByClassName("markdown-popup-form")[0],ws=window.innerWidth-Ts.offsetWidth,Ks=window.innerHeight-Ts.offsetHeight;ao=Math.max(0,Math.min(ao,ws)),ko=Math.max(0,Math.min(ko,Ks)),uc(Ua.clientX,Ua.clientY,Ga,ja)&&(ss(ao),Wo(ko))},document.body.onmouseup=function(){document.body.onmousemove=null}},uc=(zi,Ga,ja,Ua)=>{const ao=document.body.clientHeight,ko=document.body.clientWidth;return zi<20&&ja>zi||zi>ko-20&&ja<zi||Ga<20&&Ua>Ga||Ga>ao-20&&Ua<Ga?(document.body.onmousemove=null,document.body.onmouseup=null,!1):!0};return Oe.createElement(Oe.Fragment,null,Oe.createElement("div",{className:"markdown-editor-wrapper",ref:tl},Oe.createElement("div",{className:`markdown-editor-container ${cr} ${ci?"on-preview":""} ${Et?"mini":""} ${Ia?"full-screen":""}`,style:lu},Oe.createElement(Ie,{insertTemp:Vt,watch:ci,fullScreen:Ia,showNullButton:Jn,showNullProgramButton:$n,onActionCallback:Xo,hidetoolBar:hr,extraUse:vr}),Oe.createElement("div",{className:"markdown-editor-body"},Oe.createElement("div",{className:"codemirror-container"},Oe.createElement("textarea",{ref:Rs,placeholder:xr})),ci?Oe.createElement("div",{ref:Gs,className:"preview-container"},fn==="stex"&&Oe.createElement(Ae,{value:ri}),fn!=="stex"&&Oe.createElement(pe.Z,{disabledFill:dr,showProgramFill:$n,value:ri})):null))),Vn?Oe.createElement("a",{ref:Pl,className:"editor-resize"}):null,la===kr&&Oe.createElement(mn,{callback:Ho,onCancel:Il}),la===yr&&Oe.createElement(Qt,{callback:Ho,onCancel:Il}),Oe.createElement(Fe.Z,null,Ct[la]&&la!==kr&&la!==yr?Oe.createElement(vt.default,{maskClosable:!1,centered:!0,style:{position:"absolute",left:hs,top:Yo},title:Oe.createElement("div",{style:{cursor:"move"},onMouseDown:ol},Ct[la]),open:!0,onCancel:Il,footer:null,destroyOnClose:!0,width:la===yr?"1200px":null,height:la===yr?"80vh":null,className:"markdown-popup-form"},Xs):null))}},52999:function(At,It,Te){"use strict";Te.d(It,{Z:function(){return Ce},I:function(){return Fe}});var Oe=Te(78241),He=Te(8591),Ne=Te(92832),be=Te(81327),_e=Te(5871),Me=Te(5112),ve=Te(3113),Ee=Te(25676),Pe=Te(59301),xe=Te(16624),pe=Te(59301),Ae=Object.defineProperty,Se=Object.defineProperties,ce=Object.getOwnPropertyDescriptors,te=Object.getOwnPropertySymbols,ne=Object.prototype.hasOwnProperty,le=Object.prototype.propertyIsEnumerable,se=(Re,Ue,Ge)=>Ue in Re?Ae(Re,Ue,{enumerable:!0,configurable:!0,writable:!0,value:Ge}):Re[Ue]=Ge,fe=(Re,Ue)=>{for(var Ge in Ue||(Ue={}))ne.call(Ue,Ge)&&se(Re,Ge,Ue[Ge]);if(te)for(var Ge of te(Ue))le.call(Ue,Ge)&&se(Re,Ge,Ue[Ge]);return Re},he=(Re,Ue)=>Se(Re,ce(Ue));const{useForm:ie}=Oe.default,ue={width:280,marginRight:10},me={labelCol:{span:5},wrapperCol:{span:19}};var Ce=({callback:Re,onCancel:Ue})=>{const[Ge]=ie();let Je=(0,Pe.useRef)();function Qe(qe){Je.current.width=Ge.getFieldValue("width"),Je.current.align=Ge.getFieldValue("align"),Re(qe,Je.current)}function rt(qe,ot){if(qe.status===-1){He.ZP.error(qe.message);return}Ge.setFieldsValue({src:`/api/attachments/${qe.id}`,type:ot.type})}function $e(qe){let ot=qe.target.files[0];Je.current=ot,Fe(ot,rt)}return pe.createElement(Oe.default,he(fe({form:Ge},me),{className:"upload-image-panel",onFinish:Qe,style:{width:470,overflow:"hidden"}}),pe.createElement(Oe.default.Item,{label:"\u56FE\u7247\u5730\u5740",required:!0},pe.createElement("div",{className:"flex-container"},pe.createElement(Oe.default.Item,{noStyle:!0,name:"src",rules:[{required:!0,message:"\u8BF7\u8F93\u5165\u6587\u4EF6\u5730\u5740"}]},pe.createElement(Ne.default,{style:ue})),pe.createElement(Ie,{onFileChange:$e}))),pe.createElement(Oe.default.Item,{label:"\u56FE\u7247\u63CF\u8FF0",name:"alt"},pe.createElement(Ne.default,{style:{width:264}})),pe.createElement(Oe.default.Item,{label:"\u56FE\u7247\u5BBD\u5EA6",name:"width"},pe.createElement(be.Z,null,pe.createElement(Oe.default.Item,{name:"width",style:{margin:0}},pe.createElement(_e.Z,{style:{width:264}})),pe.createElement("span",{className:"ml8"},"%"))),pe.createElement(Oe.default.Item,{label:"\u5BF9\u9F50\u65B9\u5F0F",name:"align"},pe.createElement(Me.ZP.Group,{name:"align",defaultValue:1,options:[{value:"left",label:"\u5DE6\u5BF9\u9F50"},{value:"center",label:"\u5C45\u4E2D\u5BF9\u9F50"},{value:"right",label:"\u53F3\u5BF9\u9F50"}]})),pe.createElement("aside",null,pe.createElement(Oe.default.Item,{style:{textAlign:"right",position:"relative",right:-98}},pe.createElement(ve.ZP,{type:"primary",htmlType:"submit",style:{marginRight:10}},"\u786E\u5B9A"),pe.createElement(ve.ZP,{type:"default",onClick:Ue},"\u53D6\u6D88"))))};function Ie({onFileChange:Re}){return pe.createElement("label",{className:"upload-button",style:{cursor:"pointer"}},"\u672C\u5730\u4E0A\u4F20",pe.createElement("input",{type:"file",onChange:Re}))}function Fe(Re,Ue){if(!Re)throw new String("\u6CA1\u6709\u6587\u4EF6");if(!(0,xe.bg)())throw He.ZP.warning("\u8BF7\u767B\u5F55\u540E\u518D\u64CD\u4F5C"),new String("\u8BF7\u767B\u5F55\u540E\u518D\u64CD\u4F5C");let Ge=new FormData;Ge.append("editormd-image-file",Re),Ge.append("file_param_name","editormd-image-file"),Ge.append("byxhr","true");var Je=new window.XMLHttpRequest;Je.withCredentials=!0,Je.addEventListener("load",function(Qe){Ue(JSON.parse(Qe.target.responseText),Re)},!1),Je.addEventListener("error",function(Qe){console.error(Qe)},!1),Je.open("POST",`${Ee.KI}/api/attachments.json`),Je.send(Ge)}},61569:function(At,It,Te){"use strict";Te.d(It,{Z:function(){return Ne}});var Oe=Te(59301),He=Te(4676);class Ne extends Oe.Component{constructor(_e){super(_e);const Me=window.document;this.node=Me.createElement("div"),Me.body.appendChild(this.node)}render(){const{children:_e}=this.props;return(0,He.createPortal)(_e,this.node)}componentWillUnmount(){window.document.body.removeChild(this.node)}}},23734:function(At,It,Te){"use strict";Te.d(It,{i:function(){return me},Z:function(){return Ie}});var Oe={flex_box_center:"flex_box_center___AQ53o",flex_space_between:"flex_space_between___i2aIa",flex_box_vertical_center:"flex_box_vertical_center___sPEKB",flex_box_center_end:"flex_box_center_end___GhSSH",flex_box_column:"flex_box_column___R9_Hb",list:"list___jb2Ay",wrap:"wrap___VsQDr",lockWrap:"lockWrap___g1k1T",li:"li___IxCLC",cover:"cover___Mu8wr",img:"img___IpFLA",movebq:"movebq___mF7wt",bq:"bq___Bil0T",sign:"sign___DXJ4d",name:"name___l7FoJ",e:"e___pXQUG",unit:"unit___wCIFR",tags:"tags___w_Mil",tag1:"tag1___dxm7r",tag2:"tag2___llZkf",wrapisCurrent:"wrapisCurrent___qIfQT"},He=Te(71418),Ne=Te(6848),be=Te(93948),_e=Te(92310),Me=Te.n(_e),ve=Te(22566),Ee=Te(21692),Pe=Te(16624),xe=Te(79005),pe=Te(20345),Ae=Te(77882),Se=Te(31081),ce=Te(75309),te=Te(71979),ne=Te(47558),le=Te(42922),se=Te(66832),fe=Te(96593),he=Te(19664),ie=Te(91833),ue=Te(59301);const me=[{name:"\u63A8\u8350\u81EA\u5B66",ptimg:xe,swimg:pe},{name:"101\u8BA1\u5212",ptimg:Ae,swimg:Se},{name:"\u56FD\u5BB6\u4E00\u6D41",ptimg:ce,swimg:te},{name:"\u7701\u7EA7\u4E00\u6D41",ptimg:ne,swimg:le},{name:"\u7CBE\u54C1\u8BFE\u7A0B",ptimg:se,swimg:fe},{name:"\u519B\u961F\u4E00\u6D41",ptimg:he,swimg:ie}];var Ie=({className:Fe,dataSource:Re=[],col:Ue=4,right:Ge,bottom:Je=23,precision:Qe=0,wrapWidth:rt=1200,trackEventItems:$e,loading:qe,onRemove:ot=()=>{},isCurrent:at=!0,showAlias:ut=!1,showProgress:nt=!1})=>{const lt=Math.floor((rt-(Ue-1)*Ge)/Ue),yt=[{name:"\u63A8\u8350\u81EA\u5B66",ptimg:"/images/tjzx.png",swimg:"/images/sw_tjzx.png"},{name:"101\u8BA1\u5212",ptimg:"/images/jh.png",swimg:"/images/sw_jh.png"},{name:"\u56FD\u5BB6\u4E00\u6D41",ptimg:"/images/gjyl.png",swimg:"/images/sw_gjyl.png"},{name:"\u7701\u7EA7\u4E00\u6D41",ptimg:"/images/sjyl.png",swimg:"/images/sw_sjyl.png"},{name:"\u7CBE\u54C1\u8BFE\u7A0B",ptimg:"/images/jpkc.png",swimg:"/images/sw_jpkc.png"},{name:"\u519B\u961F\u4E00\u6D41",ptimg:"/images/jdyl.png",swimg:"/images/sw_jdyl.png"},{name:"\u65B0\u578B\u6559\u6750",ptimg:"/images/xxjc.png",swimg:"/images/sw_xxjc.png"}].map(ft=>(window.ENV==="build"&&(ft.ptimg=`/react/build${ft.ptimg}`,ft.swimg=`/react/build${ft.swimg}`),ft));return ue.createElement(He.Z,{spinning:qe},ue.createElement("div",{className:Me()(Oe.list,Fe)},!!(Re!=null&&Re.length)&&(Re==null?void 0:Re.map((ft,ct)=>{var vt,Ut,Zt,en,mn,Bt;const{name:tn,id:on,identifier:Mn,featured:Dn,school_name:sn,image_url:rn,excellent:Ht,is_plan:Tt}=ft;return ue.createElement("div",{key:on,className:at&&nt?Oe.wrapisCurrent:Oe.wrap,style:{width:lt,marginRight:(1+ct)%Ue===0?0:Ge+Qe,marginBottom:Je}},ue.createElement("a",{className:Oe.li,onClick:St=>{St.preventDefault(),St.stopPropagation(),$e&&(0,ve.L9)([$e]),(0,ve.xg)(`/paths/${Mn}`)}},ue.createElement("div",{className:Oe.img},ue.createElement("img",{className:Oe.cover,src:`${rn}`}),at&&(0,Pe.bg)()&&(ft==null?void 0:ft.studying)&&ue.createElement("div",{className:`${Oe.movebq} user-path-items`,onClick:St=>{St.stopPropagation(),ot(ft)}},ue.createElement("i",{className:"iconfont icon-yichu1 mr5 c-red"}),ue.createElement("span",{className:"c-red"},"\u79FB\u9664")),(vt=ft==null?void 0:ft.subject_tags)==null?void 0:vt.map((St,Qt)=>{var gt,bt;if(Qt===0){const kt=(gt=yt.find(Mt=>Mt.name==St))==null?void 0:gt.swimg;return ue.createElement("img",{className:Oe.sign,src:kt,style:{left:"-4px"}})}const Yt=(bt=yt.find(kt=>kt.name==St))==null?void 0:bt.ptimg;return ue.createElement("img",{className:Oe.sign,src:Yt,style:{left:`${48+52*(Qt-1)+2*Qt}px`}})}),ue.createElement("div",{style:{position:"absolute",top:"150px",left:"4px"}},(ft==null?void 0:ft.excellent)&&ue.createElement("div",{className:Oe.bq},"\u5F00\u653E\u8BFE\u7A0B"))),ue.createElement("div",{className:Oe.name},ue.createElement(Ne.Z,{title:ut&&(ft!=null&&ft.excellent_alias_name)?ue.createElement("span",null,`\u8BFE\u7A0B\u539F\u540D\uFF1A${tn}`,ue.createElement("br",null),ue.createElement("span",null,`\u8BFE\u7A0B\u522B\u540D\uFF1A${ft==null?void 0:ft.excellent_alias_name}`)):tn},ue.createElement("span",{className:Oe.e},ut&&(ft==null?void 0:ft.excellent_alias_name)||tn))),at&&nt&&((Ut=ft==null?void 0:ft.progress)==null?void 0:Ut.all_score)!=0&&ue.createElement("div",{style:{padding:"0px 10px",color:"#333",marginTop:10}},ue.createElement(be.Z,{strokeColor:"#44d7b6",gap:"small",percent:(((Zt=ft==null?void 0:ft.progress)==null?void 0:Zt.my_score)/((en=ft==null?void 0:ft.progress)==null?void 0:en.all_score)*100).toFixed(),showInfo:!1}),"\u5DF2\u5B8C\u6210 ",(mn=ft==null?void 0:ft.progress)==null?void 0:mn.my_score,"/",(Bt=ft==null?void 0:ft.progress)==null?void 0:Bt.all_score),(!at||!nt)&&ue.createElement("div",{className:Oe.tags},ue.createElement("div",null,ue.createElement(Ne.Z,{placement:"bottom",title:"\u7AE0\u8282\u6570"},ue.createElement("span",null,ue.createElement("i",{className:"iconfont icon-zhangjie1 font14 mr3"}),ue.createElement("span",null,ft.stages_count))),ue.createElement(Ne.Z,{placement:"bottom",title:"\u5B66\u4E60\u4EBA\u6570"},ue.createElement("span",null,ue.createElement("i",{className:"iconfont icon-chengyuan font14 mr3"}),ue.createElement("span",null,ft.members_count)))))))})),!Re.length&&ue.createElement(Ee.Z,null)))}},14433:function(At,It,Te){"use strict";Te.d(It,{jL:function(){return _e},w9:function(){return gr},vv:function(){return je},dN:function(){return Ct},QD:function(){return ds},cQ:function(){return Qt.Z},vg:function(){return ui},Oz:function(){return Na},op:function(){return za},O5:function(){return Os},_b:function(){return Rs},t7:function(){return Je},tT:function(){return $e},Gi:function(){return hr},YG:function(){return Jt},Ed:function(){return Jn},kT:function(){return dn},qp:function(){return le},Um:function(){return me},K3:function(){return he},vr:function(){return ss},qE:function(){return Uo},Je:function(){return at},wb:function(){return Bt},rC:function(){return St},lB:function(){return Mn},cq:function(){return or},kO:function(){return On},tp:function(){return Fe},Si:function(){return Al},k8:function(){return gs},Du:function(){return ko}});var Oe=Te(59301),He={flex_box_center:"flex_box_center___NeSU8",flex_space_between:"flex_space_between___ImTGl",flex_box_vertical_center:"flex_box_vertical_center___BtRd9",flex_box_center_end:"flex_box_center_end___qcLe3",flex_box_column:"flex_box_column___Ze_3q",banner:"banner___PoUBO",content:"content___XoDjy",btns:"btns___Pb35j"},Ne="data:image/png;base64,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",_e=({dataSource:Or=[],img:pr,imgWidth:Rr=346,title:ga,sunTitle:pi,bannerExtraContent:Ca})=>Oe.createElement("div",{className:He.banner},Oe.createElement("div",{className:He.content},Oe.createElement("aside",null,Oe.createElement("p",null,Oe.createElement("b",null,ga),Oe.createElement("span",null,pi)),Or.length>0&&Oe.createElement("div",{className:He.btns},Or.map((rr,Li)=>Oe.createElement("div",{key:Li,onClick:rr.click},rr.name,rr.sign?Oe.createElement("img",{src:Ne,width:39}):null))),Ca),pr&&Oe.createElement("img",{style:{marginTop:33,marginRight:38},src:pr,width:Rr}))),Me={flex_box_center:"flex_box_center___hG6RI",flex_space_between:"flex_space_between___ss3Fh",flex_box_vertical_center:"flex_box_vertical_center___K80p9",flex_box_center_end:"flex_box_center_end___qmXX3",flex_box_column:"flex_box_column___GFV8F",row:"row___aXJjm",title:"title___HUKL0",tagsWrap:"tagsWrap___XB2W3",action:"action___VdHb1",bar:"bar___t1kKC",tag:"tag___V7Eft",name:"name___Hk1Ip",num:"num___xQpcH",active:"active___XryTX",tagsBorderWrap:"tagsBorderWrap___OMxjs"},ve=Te(92310),Ee=Te.n(ve),Pe=Te(89392),xe=Object.defineProperty,pe=Object.getOwnPropertySymbols,Ae=Object.prototype.hasOwnProperty,Se=Object.prototype.propertyIsEnumerable,ce=(Or,pr,Rr)=>pr in Or?xe(Or,pr,{enumerable:!0,configurable:!0,writable:!0,value:Rr}):Or[pr]=Rr,te=(Or,pr)=>{for(var Rr in pr||(pr={}))Ae.call(pr,Rr)&&ce(Or,Rr,pr[Rr]);if(pe)for(var Rr of pe(pr))Se.call(pr,Rr)&&ce(Or,Rr,pr[Rr]);return Or},le=({dataSource:Or=[],value:pr,onChange:Rr,onTitleChange:ga,className:pi,title:Ca,titleWidth:rr=41,style:Li={},fontColor:io="#6A7283",showCount:Lo,classNameActive:Zi,styleItem:ai={}})=>{const[Bo,vs]=(0,Oe.useState)(0),[rl,eo]=(0,Oe.useState)(!1),Hi=(0,Oe.useRef)(null),xs=(0,Oe.useRef)(null);return(0,Oe.useEffect)(()=>{var zo;Or.length!==0&&(((zo=Hi==null?void 0:Hi.current)==null?void 0:zo.clientHeight)>97?vs(1):vs(0)),Or.length===0&&vs(0),eo(!1)},[Or]),Oe.createElement("div",{className:Ee()(Me.row,pi),style:Li},Oe.createElement("div",{onClick:(0,Pe.throttle)(()=>ga==null?void 0:ga(),2e3),style:{width:rr,marginTop:rl?12:4},className:`${Me.title} ${ga?"current":""}`},Ca),Oe.createElement("div",{className:rl?`${Me.tagsWrap} ${Me.tagsBorderWrap}`:Me.tagsWrap},Oe.createElement("div",{className:Me.bar,ref:xs,style:Bo>0?{height:Bo===1?97:"auto",overflow:Bo===1?"hidden":"auto",paddingRight:55}:{paddingRight:0}},Oe.createElement("div",{className:Me.tag,ref:Hi},Or==null?void 0:Or.map(zo=>Oe.createElement("span",{onClick:()=>Rr(zo.id),key:zo.id,style:te(te({color:io},ai),(zo==null?void 0:zo.style)||{}),className:pr===zo.id?Ee()(Zi||Me.active,zo.classNameActive):""},Oe.createElement("span",{title:zo.name,className:Me.name},zo.name),!!Lo&&Oe.createElement("span",{className:Me.num},zo.count))))),!!Bo&&Oe.createElement(Oe.Fragment,null,Bo===1?Oe.createElement("div",{onClick:()=>{var zo;vs(2),((zo=Hi==null?void 0:Hi.current)==null?void 0:zo.clientHeight)>245?eo(!0):eo(!1)},className:Me.action},"\u5C55\u5F00",Oe.createElement("i",{style:{transform:"translateY(1px) scale(0.6)"},className:"iconfont icon-zhankai4"})):Oe.createElement("div",{onClick:()=>{xs.current.scrollTop=0,vs(1),eo(!1)},className:Me.action},"\u6536\u8D77",Oe.createElement("i",{style:{transform:"translateY(0px) scale(0.6)"},className:"iconfont icon-shouqi3"})))))},se={flex_box_center:"flex_box_center___HDG9F",flex_space_between:"flex_space_between___KhP6Z",flex_box_vertical_center:"flex_box_vertical_center___ZlFcA",flex_box_center_end:"flex_box_center_end___o7d_z",flex_box_column:"flex_box_column___ULJgZ",row:"row___Skft7",title:"title___KP2uZ",fenge:"fenge___yM8ys",tagsWrap:"tagsWrap___XcmUd",action:"action___y7wAl",bar:"bar___gdtOz",tag:"tag___PL8Db",name:"name___gsqnj",num:"num___sRnLB",active:"active___yNnAU",tagsBorderWrap:"tagsBorderWrap___BKCHD"},he=({dataSource:Or=[],value:pr,onChange:Rr,onTitleChange:ga,className:pi,title:Ca,titleWidth:rr=41,style:Li={},fontColor:io="#6A7283",showCount:Lo,expand:Zi=!0})=>{const[ai,Bo]=(0,Oe.useState)(0),[vs,rl]=(0,Oe.useState)(!1),eo=(0,Oe.useRef)(null),Hi=(0,Oe.useRef)(null),[xs,zo]=(0,Oe.useState)(Zi);return Oe.createElement("div",{className:Ee()(se.row,pi),style:Li},Oe.createElement("div",{className:"flex item-center justify-between"},Oe.createElement("div",{onClick:(0,Pe.throttle)(()=>ga==null?void 0:ga(),2e3),style:{width:rr,marginTop:vs?12:4},className:`${se.title} ${ga?"current":""}`},Ca),Oe.createElement("i",{className:`iconfont ${xs?"icon-yizhankai":"icon-weizhankai"} current`,style:{color:"#727C95",fontSize:xs?8:10},onClick:()=>zo(!xs)})),xs&&Oe.createElement("div",{className:vs?`${se.tagsWrap} ${se.tagsBorderWrap}`:se.tagsWrap},Oe.createElement("div",{className:se.fenge}),Oe.createElement("div",{className:se.bar,ref:Hi},Oe.createElement("div",{className:se.tag,ref:eo},Or==null?void 0:Or.map(hl=>Oe.createElement("span",{onClick:()=>Rr(hl.id),key:hl.id,style:{color:io},className:pr===hl.id?se.active:""},Oe.createElement("span",{title:hl.name,className:se.name},hl.name),!!Lo&&Oe.createElement("span",{className:se.num},hl.count)))))))},ie={flex_box_center:"flex_box_center___kXy2O",flex_space_between:"flex_space_between___EKVqf",flex_box_vertical_center:"flex_box_vertical_center___KJzcw",flex_box_center_end:"flex_box_center_end___V4Nm9",flex_box_column:"flex_box_column___g6Cee",row:"row___pqtGl",title:"title___eewYd",tagsWrap:"tagsWrap___AWV66",action:"action___Toj3O",bar:"bar___NZVtB",tag:"tag___z872k",name:"name___m2dAl",num:"num___EhDNX",active:"active___GSjsu",tagsBorderWrap:"tagsBorderWrap___VoQL3"},me=({dataSource:Or=[],value:pr,onChange:Rr,onTitleChange:ga,className:pi,title:Ca,titleWidth:rr=41,style:Li={},fontColor:io="#fff",showCount:Lo,expand:Zi=!0})=>{const[ai,Bo]=(0,Oe.useState)(0),[vs,rl]=(0,Oe.useState)(!1),eo=(0,Oe.useRef)(null),Hi=(0,Oe.useRef)(null),[xs,zo]=(0,Oe.useState)(Zi);return Oe.createElement("div",{className:Ee()(ie.row,pi),style:Li},Oe.createElement("div",{className:"flex item-center justify-between"},Oe.createElement("div",{onClick:(0,Pe.throttle)(()=>ga==null?void 0:ga(),2e3),style:{width:rr},className:`${ie.title} ${ga?"current":""}`},Ca),Oe.createElement("i",{className:`iconfont ${xs?"icon-yizhankai":"icon-weizhankai"} current`,style:{color:xs?"#00DDC7":"#037F74",fontSize:xs?10:12},onClick:()=>zo(!xs)})),xs&&Oe.createElement("div",{className:vs?`${ie.tagsWrap} ${ie.tagsBorderWrap}`:ie.tagsWrap},Oe.createElement("div",{className:ie.bar,ref:Hi},Oe.createElement("div",{className:ie.tag,ref:eo},Or==null?void 0:Or.map(hl=>Oe.createElement("span",{onClick:()=>Rr(hl.id),key:hl.id,style:{color:io},className:pr===hl.id?ie.active:""},Oe.createElement("span",{title:hl.name,className:ie.name},hl.name),!!Lo&&Oe.createElement("span",{className:ie.num},hl.count)))))))},Ce={flex_box_center:"flex_box_center___aK2n3",flex_space_between:"flex_space_between___HX0Oh",flex_box_vertical_center:"flex_box_vertical_center___LJOJr",flex_box_center_end:"flex_box_center_end___SCakF",flex_box_column:"flex_box_column___AYv4m",tabs:"tabs___GTqPV",active:"active___F26E8"},Fe=({dataSource:Or=[],value:pr,onChange:Rr,className:ga,style:pi={}})=>Oe.createElement("div",{style:pi,className:Ee()(Ce.tabs,ga)},Or.map(Ca=>Oe.createElement("span",{onClick:()=>Rr(Ca.id),className:pr===Ca.id?Ce.active:"",key:Ca.id},Ca.name))),Re={flex_box_center:"flex_box_center___yX6Oa",flex_space_between:"flex_space_between___t7oqF",flex_box_vertical_center:"flex_box_vertical_center___dEIHy",flex_box_center_end:"flex_box_center_end___taQDF",flex_box_column:"flex_box_column___xY_Lr",input:"input___PW2zI",dropdown:"dropdown___vSy8B",menu:"menu___NiyBu",text:"text___Grueu",b1:"b1___ZKryM",b2:"b2___aKyGa"},Ue=Te(92832),Je=({dataSource:Or=[],value:pr="",onChange:Rr,onInputChange:ga=()=>{},className:pi,style:Ca={},placeholder:rr,allowClear:Li=!1})=>{var io;const[Lo,Zi]=(0,Oe.useState)(""),[ai,Bo]=(0,Oe.useState)("");(0,Oe.useEffect)(()=>{var eo;let Hi=pr;(eo=JSON.stringify(pr))!=null&&eo.includes("{")&&(Zi(pr.id),Hi=pr.value||"");try{Bo(decodeURIComponent(Hi||""))}catch(xs){Bo(decodeURIComponent(Hi||""))}},[pr]);const vs=()=>{Rr(encodeURIComponent(ai),Lo||null)},rl=eo=>{eo!==Lo&&(Zi(eo),Rr(encodeURIComponent(ai),eo))};return Oe.createElement("div",{className:Ee()(Re.input,pi),style:Ca},!!Or.length&&Oe.createElement("div",{className:Re.dropdown},Oe.createElement("div",{className:Re.text},(io=Or.find(eo=>eo.id===Lo))==null?void 0:io.name,Oe.createElement("i",{className:"iconfont icon-zhankai4"}),Oe.createElement("b",{className:Re.b1}),Oe.createElement("b",{className:Re.b2})),Oe.createElement("div",{className:Re.menu},Or.map((eo,Hi)=>Oe.createElement("div",{key:Hi,onClick:()=>rl(eo.id)},eo.name)))),Oe.createElement(Ue.default,{onPressEnter:vs,value:ai,onChange:eo=>{Bo(eo.target.value),ga(encodeURIComponent(eo.target.value),Lo||null)},bordered:!1,placeholder:rr}),Oe.createElement("i",{onClick:vs,className:"iconfont icon-sousuo9 font14 pl10 current"}))},Qe={flex_box_center:"flex_box_center___pVsOk",flex_space_between:"flex_space_between___bQwBe",flex_box_vertical_center:"flex_box_vertical_center___gdKht",flex_box_center_end:"flex_box_center_end___wJuEm",flex_box_column:"flex_box_column___F50s0",input:"input___f7GZE",dropdown:"dropdown___oJkxW",menu:"menu___RplGU",text:"text___EgRKl"},$e=({dataSource:Or=[],value:pr="",onChange:Rr,onInputChange:ga=()=>{},className:pi,style:Ca={},placeholder:rr,allowClear:Li=!1})=>{var io;const[Lo,Zi]=(0,Oe.useState)(""),[ai,Bo]=(0,Oe.useState)("");(0,Oe.useEffect)(()=>{var eo;let Hi=pr;(eo=JSON.stringify(pr))!=null&&eo.includes("{")&&(Zi(pr.id),Hi=pr.value||"");try{Bo(decodeURIComponent(Hi||""))}catch(xs){Bo(decodeURIComponent(Hi||""))}},[pr]);const vs=()=>{Rr(encodeURIComponent(ai),Lo||null)},rl=eo=>{eo!==Lo&&(Zi(eo),Rr(encodeURIComponent(ai),eo))};return Oe.createElement("div",{className:Ee()(Qe.input,pi),style:Ca},!!Or.length&&Oe.createElement("div",{className:Qe.dropdown},Oe.createElement("div",{className:Qe.text},(io=Or.find(eo=>eo.id===Lo))==null?void 0:io.name,Oe.createElement("i",{className:"iconfont icon-zhankai4 ml5"})),Oe.createElement("div",{className:Qe.menu},Or.map((eo,Hi)=>Oe.createElement("div",{key:Hi,onClick:()=>rl(eo.id)},eo.name)))),Oe.createElement(Ue.default,{onPressEnter:vs,value:ai,onChange:eo=>{Bo(eo.target.value),ga(encodeURIComponent(eo.target.value),Lo||null)},bordered:!1,placeholder:rr}),Oe.createElement("i",{onClick:vs,className:"iconfont icon-sousuo9 font14 pl10 current"}))},qe={flex_box_center:"flex_box_center___tol8o",flex_space_between:"flex_space_between___Z235C",flex_box_vertical_center:"flex_box_vertical_center___Wq1sZ",flex_box_center_end:"flex_box_center_end___LLxom",flex_box_column:"flex_box_column___DbMSN",quickPager:"quickPager___GM30J",disabled:"disabled___Ozc8I"},at=({value:Or,onChange:pr,className:Rr,total:ga,pageSize:pi,style:Ca={}})=>{const rr=Or<2,Li=Or>=Math.ceil(ga/pi);return ga<=pi?Oe.createElement(Oe.Fragment,null):Oe.createElement("div",{className:Ee()(qe.quickPager,Rr),style:Ca},Oe.createElement("div",{onClick:()=>{rr||pr(Or-1,"prev")},className:rr?qe.disabled:""},"\u4E0A\u4E00\u9875"),Oe.createElement("div",{onClick:()=>{Li||pr(Or+1,"next")},className:Li?qe.disabled:""},"\u4E0B\u4E00\u9875"))},ut={flex_box_center:"flex_box_center___FO7TP",flex_space_between:"flex_space_between___LotYx",flex_box_vertical_center:"flex_box_vertical_center___bWdaw",flex_box_center_end:"flex_box_center_end___mVJ1o",flex_box_column:"flex_box_column___M83Mm",list:"list___oOsiS",wrap:"wrap___G6T7F",lockWrap:"lockWrap___Rl79E",li:"li___oZZ7l",cover:"cover___b2bYW",img:"img___IQX7w",sign:"sign___HkT6C",name:"name___SsJx8",e:"e___TMqq0",tags:"tags___bcjyo",rate:"rate___YACg7"},nt=Te(71418),lt=Te(6848),yt=Te(13570),ft=Te(11662),ct=Te(22566),vt=Te(96908),Ut=Te(57177),Zt=Te(81378),en=Te(21692),Bt=({className:Or,dataSource:pr=[],col:Rr=4,right:ga,bottom:pi=23,precision:Ca=0,wrapWidth:rr=1200,trackEventItems:Li,loading:io})=>{const Lo=Math.floor((rr-(Rr-1)*ga)/Rr);return Oe.createElement(nt.Z,{spinning:io},Oe.createElement("div",{className:Ee()(ut.list,Or)},!!pr.length&&pr.map((Zi,ai)=>{const{name:Bo,id:vs,identifier:rl,power:eo,cover_image_id:Hi,pic:xs}=Zi;return Oe.createElement("div",{className:ut.wrap,key:vs,style:{width:Lo,marginRight:(1+ai)%Rr===0?0:ga+Ca,marginBottom:pi}},Oe.createElement("a",{target:"_blank",href:`/shixuns/${rl}/challenges`,className:ut.li,onClick:zo=>{zo.preventDefault(),Li&&(0,ct.L9)([Li]),eo&&(0,ct.xg)(`/shixuns/${rl}/challenges`)}},Oe.createElement("div",{className:ut.img},Oe.createElement("img",{className:ut.cover,src:`${xs}`}),Zi.is_jupyter&&Oe.createElement("img",{className:ut.sign,src:vt}),Zi.is_jupyter_lab&&Oe.createElement("img",{className:ut.sign,src:Ut}),Zi.is_unity_3d&&Oe.createElement("img",{className:ut.sign,src:Zt})),Oe.createElement("div",{className:ut.name},Oe.createElement(lt.Z,{title:Bo||"\u5B9E\u8DF5\u9879\u76EE\u540D\u79F0-\u672A\u586B\u5199"},Oe.createElement("span",{className:ut.e},Bo||"\u5B9E\u8DF5\u9879\u76EE\u540D\u79F0-\u672A\u586B\u5199"))),Oe.createElement("div",{className:ut.tags},Oe.createElement(lt.Z,{placement:"bottom",title:"\u5173\u5361\u6570"},Oe.createElement("span",null,Oe.createElement("i",{className:"iconfont icon-shixunguanqia font14 mr2"}),Oe.createElement("span",null,Zi.challenges_count))),!!Zi.myshixuns_count&&Oe.createElement(lt.Z,{placement:"bottom",title:"\u5B66\u4E60\u4EBA\u6570"},Oe.createElement("span",null,Oe.createElement("i",{className:"iconfont icon-chengyuan font14 mr2"}),Oe.createElement("span",null,Zi.myshixuns_count))),Oe.createElement(lt.Z,{placement:"bottom",title:"\u96BE\u5EA6\u7B49\u7EA7"},Oe.createElement("span",null,Oe.createElement("span",null,Zi.level))),Oe.createElement("div",{className:ut.rate},Oe.createElement(yt.Z,{allowHalf:!0,disabled:!0,defaultValue:Zi.score_info}),Oe.createElement("span",null,"\xA0",Zi.score_info?`${Zi.score_info}\u5206`:"5\u5206")))),!eo&&Oe.createElement("div",{className:ut.lockWrap},Oe.createElement("img",{src:`${ft.Z.IMG_SERVER}/images/educoder/icon/lockclose.svg`}),Oe.createElement("span",{className:"mt15 font16 c-white"},"\u5B9A\u5411\u5F00\u653E\u5185\u5BB9\uFF0C\u9700\u8981\u6388\u6743")))}),!pr.length&&Oe.createElement(en.Z,null)))},tn={flex_box_center:"flex_box_center___KD0ZB",flex_space_between:"flex_space_between___rMep5",flex_box_vertical_center:"flex_box_vertical_center___jD3Po",flex_box_center_end:"flex_box_center_end___RbohB",flex_box_column:"flex_box_column___GmzUj",list:"list___dlUtq",wrap:"wrap___LYbIZ",lockWrap:"lockWrap___U7Ajb",li:"li___bsnqy",img:"img___yQ3UM",cover:"cover___KP0L8",bq:"bq___DtmL1",sign:"sign___TZ9Wq",titleBg:"titleBg___tnX0O",name:"name___OGYeq",e:"e___zxiB9",text:"text____ZmZX",value:"value___WPLok",rate:"rate___iOr7E"},Mn=({className:Or,dataSource:pr=[],col:Rr=4,right:ga,bottom:pi=23,precision:Ca=0,wrapWidth:rr=1200,wrapClassName:Li,trackEventItems:io,loading:Lo})=>{const Zi=Math.floor((rr-(Rr-1)*ga)/Rr);return Oe.createElement(nt.Z,{spinning:Lo},Oe.createElement("div",{className:Ee()(tn.list,Or)},!!pr.length&&pr.map((ai,Bo)=>{const{name:vs,id:rl,identifier:eo,power:Hi,cover_image_id:xs,pic:zo}=ai;return Oe.createElement("div",{className:Ee()(tn.wrap,Li),key:rl,style:{width:Zi,marginRight:(1+Bo)%Rr===0?0:ga+Ca,marginBottom:pi}},Oe.createElement("a",{target:"_blank",href:`/shixuns/${eo}/challenges`,className:tn.li,onClick:hl=>{hl.preventDefault(),io&&(0,ct.L9)([io]),Hi&&(0,ct.xg)(`/shixuns/${eo}/challenges`)}},Oe.createElement("img",{src:Te(47621),className:tn.titleBg}),Oe.createElement("div",{className:tn.name},Oe.createElement(lt.Z,{title:vs||"\u5B9E\u8DF5\u9879\u76EE\u540D\u79F0-\u672A\u586B\u5199"},Oe.createElement("span",{className:tn.e},vs||"\u5B9E\u8DF5\u9879\u76EE\u540D\u79F0-\u672A\u586B\u5199"))),Oe.createElement("div",{style:{padding:"14px",paddingBottom:0}},Oe.createElement("div",{className:tn.img},Oe.createElement("img",{className:tn.cover,src:xs?`${ft.Z.API_SERVER}/api/attachments/${xs}`:`${ft.Z.IMG_SERVER+zo}`}),ai.is_jupyter&&Oe.createElement("div",{className:tn.bq},"Jupyter"),ai.is_jupyter_lab&&Oe.createElement("div",{className:tn.bq},"JupyterLab"),ai.is_unity_3d&&Oe.createElement("div",{className:tn.bq,style:{background:"linear-gradient(rgba(90, 167, 237, 0.8) 0%, rgba(79, 29, 189, 0.8) 100%)"}},"\u865A\u62DF\u4EFF\u771F")),Oe.createElement("div",{className:"mt20 flex item-center justify-between"},Oe.createElement("div",null,Oe.createElement("span",{className:tn.text},"\u5B66\u4E60\u4EBA\u6570"),Oe.createElement("span",{className:tn.value},ai.myshixuns_count)),Oe.createElement("div",null,Oe.createElement("span",{className:tn.text},"\u56F0\u96BE\u7B49\u7EA7"),Oe.createElement("span",{className:tn.value},ai.level))),Oe.createElement("div",{className:"mt10 mb10 flex item-center justify-between"},Oe.createElement("div",null,Oe.createElement("span",{className:tn.text},"\u5173\u5361\u6570"),Oe.createElement("span",{className:tn.value},ai.challenges_count)),Oe.createElement("div",{className:tn.rate},Oe.createElement(yt.Z,{allowHalf:!0,disabled:!0,defaultValue:ai.score_info}),Oe.createElement("span",{className:tn.value,style:{color:"#FF9C00"}},"\xA0",ai.score_info?`${ai.score_info}\u5206`:"5\u5206"))))),!Hi&&Oe.createElement("div",{className:tn.lockWrap},Oe.createElement("img",{src:`${ft.Z.IMG_SERVER}/images/educoder/icon/lockclose.svg`}),Oe.createElement("span",{className:"mt15 font16 c-white"},"\u5B9A\u5411\u5F00\u653E\u5185\u5BB9\uFF0C\u9700\u8981\u6388\u6743")))}),!pr.length&&Oe.createElement(en.Z,null)))},Dn={flex_box_center:"flex_box_center___MoMqv",flex_space_between:"flex_space_between___G_1Pa",flex_box_vertical_center:"flex_box_vertical_center___vHNpc",flex_box_center_end:"flex_box_center_end___dt_Dx",flex_box_column:"flex_box_column___gK3h_",list:"list___GYKT6",wrap:"wrap___uLNQf",lockWrap:"lockWrap___lZQo7",li:"li___X7Rkc",img:"img___bih4x",cover:"cover___UiMEf",sign:"sign___WPSew",name:"name___ZLjiX",e:"e___tB29O",tags:"tags___a3FKn",rate:"rate___dh30H"},sn="data:image/png;base64,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",rn="data:image/png;base64,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",Ht="data:image/png;base64,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",St=({className:Or,dataSource:pr=[],col:Rr=4,right:ga,bottom:pi=23,precision:Ca=0,wrapWidth:rr=1200,trackEventItems:Li,loading:io,wrapClassName:Lo,imgClassName:Zi})=>{const ai=Math.floor((rr-(Rr-1)*ga)/Rr);return Oe.createElement(nt.Z,{spinning:io},Oe.createElement("div",{className:Ee()(Dn.list,Or)},!!pr.length&&pr.map((Bo,vs)=>{const{name:rl,id:eo,identifier:Hi,power:xs,cover_image_id:zo,pic:hl}=Bo;return Oe.createElement("div",{className:Ee()(Dn.wrap,Lo),key:eo,style:{width:ai,marginRight:(1+vs)%Rr===0?0:ga+Ca,marginBottom:pi}},Oe.createElement("a",{target:"_blank",href:`/shixuns/${Hi}/challenges`,className:Dn.li,onClick:gl=>{gl.preventDefault(),Li&&(0,ct.L9)([Li]),xs&&(0,ct.xg)(`/shixuns/${Hi}/challenges`)}},Oe.createElement("div",{className:Ee()(Dn.img,Zi)},Oe.createElement("img",{className:Dn.cover,src:zo?`${ft.Z.API_SERVER}/api/attachments/${zo}`:`${ft.Z.IMG_SERVER+hl}`}),Bo.is_jupyter&&Oe.createElement("img",{className:Dn.sign,src:sn}),Bo.is_jupyter_lab&&Oe.createElement("img",{className:Dn.sign,src:rn}),Bo.is_unity_3d&&Oe.createElement("img",{className:Dn.sign,src:Ht})),Oe.createElement("div",{className:Dn.name},Oe.createElement(lt.Z,{title:rl||"\u5B9E\u8DF5\u9879\u76EE\u540D\u79F0-\u672A\u586B\u5199"},Oe.createElement("span",{className:Dn.e},rl||"\u5B9E\u8DF5\u9879\u76EE\u540D\u79F0-\u672A\u586B\u5199"))),Oe.createElement("div",{className:Dn.tags},Oe.createElement(lt.Z,{placement:"bottom",title:"\u5173\u5361\u6570"},Oe.createElement("span",null,Oe.createElement("i",{className:"iconfont icon-shixunguanqia font14 mr2"}),Oe.createElement("span",null,Bo.challenges_count))),!!Bo.myshixuns_count&&Oe.createElement(lt.Z,{placement:"bottom",title:"\u5B66\u4E60\u4EBA\u6570"},Oe.createElement("span",null,Oe.createElement("i",{className:"iconfont icon-chengyuan font14 mr2"}),Oe.createElement("span",null,Bo.myshixuns_count))),Oe.createElement(lt.Z,{placement:"bottom",title:"\u96BE\u5EA6\u7B49\u7EA7"},Oe.createElement("span",null,Oe.createElement("span",null,Bo.level))),Oe.createElement("div",{className:Dn.rate},Oe.createElement(yt.Z,{allowHalf:!0,disabled:!0,defaultValue:Bo.score_info}),Oe.createElement("span",null,"\xA0",Bo.score_info?`${Bo.score_info}\u5206`:"5\u5206")))),!xs&&Oe.createElement("div",{className:Dn.lockWrap},Oe.createElement("img",{src:`${ft.Z.IMG_SERVER}/images/educoder/icon/lockclose.svg`}),Oe.createElement("span",{className:"mt15 font16 c-white"},"\u5B9A\u5411\u5F00\u653E\u5185\u5BB9\uFF0C\u9700\u8981\u6388\u6743")))}),!pr.length&&Oe.createElement(en.Z,null)))},Qt=Te(23734),gt={flex_box_center:"flex_box_center___vu9yi",flex_space_between:"flex_space_between___LwoH7",flex_box_vertical_center:"flex_box_vertical_center___pUG0J",flex_box_center_end:"flex_box_center_end___xWI9t",flex_box_column:"flex_box_column___Mr5rB",list:"list___zE1wj",wrap:"wrap___5HG1h",lockWrap:"lockWrap___zziwX",li:"li___aNI2z",img:"img___adfIp",cover:"cover___G1cj9",bq:"bq___hpdTt",sign:"sign___kHAha",titleBg:"titleBg___S1VlI",name:"name___zsjxM",e:"e___fd1jW",text:"text___b9Tdy",value:"value___ZASRv",unit:"unit___sMNBQ",tags:"tags___KbL1d",tag1:"tag1___c9ebE",tag2:"tag2___bxczv"},bt=Te(79005),Yt=Te(20345),kt=Te(77882),Mt=Te(31081),ln=Te(75309),zn=Te(71979),Gn=Te(47558),Hn=Te(42922),nr=Te(66832),Xn=Te(96593),qt=Te(19664),vn=Te(91833),Un=Object.defineProperty,Ln=Object.getOwnPropertySymbols,yr=Object.prototype.hasOwnProperty,kr=Object.prototype.propertyIsEnumerable,Dr=(Or,pr,Rr)=>pr in Or?Un(Or,pr,{enumerable:!0,configurable:!0,writable:!0,value:Rr}):Or[pr]=Rr,Gr=(Or,pr)=>{for(var Rr in pr||(pr={}))yr.call(pr,Rr)&&Dr(Or,Rr,pr[Rr]);if(Ln)for(var Rr of Ln(pr))kr.call(pr,Rr)&&Dr(Or,Rr,pr[Rr]);return Or};const Ma=[{name:"\u63A8\u8350\u81EA\u5B66",ptimg:bt,swimg:Yt},{name:"101\u8BA1\u5212",ptimg:kt,swimg:Mt},{name:"\u56FD\u5BB6\u4E00\u6D41",ptimg:ln,swimg:zn},{name:"\u7701\u7EA7\u4E00\u6D41",ptimg:Gn,swimg:Hn},{name:"\u7CBE\u54C1\u8BFE\u7A0B",ptimg:nr,swimg:Xn},{name:"\u519B\u961F\u4E00\u6D41",ptimg:qt,swimg:vn}];var Na=({className:Or,dataSource:pr=[],col:Rr=4,right:ga,bottom:pi=23,precision:Ca=0,wrapWidth:rr=1200,trackEventItems:Li,loading:io,wrapClassName:Lo,imgClassName:Zi,isArrow:ai=!1,imgStyle:Bo={}})=>{const vs=Math.floor((rr-(Rr-1)*ga)/Rr),[rl,eo]=(0,Oe.useState)(),[Hi,xs]=(0,Oe.useState)(),zo=gl=>eo(gl),hl=()=>eo(-1);return Oe.createElement(nt.Z,{spinning:io},Oe.createElement("div",{className:Ee()(gt.list,Or)},!!(pr!=null&&pr.length)&&(pr==null?void 0:pr.map((gl,cc)=>{var Yc;const{name:Du,id:Xu,identifier:Nc,featured:zd,school_name:ac,image_url:zl,excellent:vd,is_plan:jd}=gl;return Oe.createElement("div",{key:Xu,className:Ee()(gt.wrap,Lo),style:{width:vs,marginRight:(1+cc)%Rr===0?0:ga+Ca,marginBottom:pi}},Oe.createElement("a",{target:"_blank",href:`/paths/${Nc}`,className:gt.li,onClick:Ju=>{Ju.preventDefault(),Li&&(0,ct.L9)([Li]),(0,ct.xg)(`/paths/${Nc}`)}},Oe.createElement("img",{src:Te(39057),className:gt.titleBg}),Oe.createElement("div",{className:gt.name},Oe.createElement(lt.Z,{title:Du},Oe.createElement("span",{className:gt.e,style:{color:ai&&rl===cc?"#145DFF":"#000000"},onMouseEnter:()=>{zo(cc)},onMouseLeave:hl},Du))),Oe.createElement("div",{style:{padding:"14px",paddingBottom:0}},Oe.createElement("div",{className:Ee()(gt.img,Zi)},Oe.createElement("img",{className:gt.cover,style:Gr({},Bo),src:`${ft.Z.IMG_SERVER+zl}`}),(Yc=gl==null?void 0:gl.subject_tags)==null?void 0:Yc.map((Ju,cu)=>{var Rc,ql;if(cu===0){const au=(Rc=Ma.find(md=>md.name==Ju))==null?void 0:Rc.swimg;return Oe.createElement("img",{className:gt.sign,src:au,style:{left:"-4px"}})}const du=(ql=Ma.find(au=>au.name==Ju))==null?void 0:ql.ptimg;return Oe.createElement("img",{className:gt.sign,src:du,style:{left:`${48+52*(cu-1)+2*cu}px`}})}),Oe.createElement("div",{style:{position:"absolute",right:"4px",bottom:"4px"}},(gl==null?void 0:gl.excellent)&&Oe.createElement("div",{className:gt.bq},"\u5F00\u653E\u8BFE\u7A0B"))),Oe.createElement("div",{className:"mt10 mb10 flex item-center justify-between"},Oe.createElement("div",null,Oe.createElement("span",{className:gt.text},"\u7AE0\u8282\u6570"),Oe.createElement("span",{className:gt.value},gl.stages_count)),Oe.createElement("div",null,Oe.createElement("span",{className:gt.text},"\u5B66\u4E60\u4EBA\u6570"),Oe.createElement("span",{className:gt.value},gl.members_count))))))})),!pr.length&&Oe.createElement(en.Z,null)))},Da={flex_box_center:"flex_box_center___o6B0Z",flex_space_between:"flex_space_between___Uz22Q",flex_box_vertical_center:"flex_box_vertical_center___nWLOj",flex_box_center_end:"flex_box_center_end___eqMdD",flex_box_column:"flex_box_column___ypdJv",list:"list___qA19p",wrap:"wrap___YaRtD",lockWrap:"lockWrap___Cle7R",li:"li___Hpfsl",img:"img___li1Ky",cover:"cover___iuyl5",bq:"bq___BpHtR",sign:"sign___ajRAC",titleBg:"titleBg___h8Qq7",name:"name___mAV5m",e:"e___YPSD7",text:"text___nDpTk",value:"value___guywy",unit:"unit___aTzYz",tags:"tags___X1lul",tag1:"tag1___AHRAc",tag2:"tag2___Pska6"},Di=Te(16624),_a=Te(59301);const Vr=[{name:"\u63A8\u8350\u81EA\u5B66",ptimg:bt,swimg:Yt},{name:"101\u8BA1\u5212",ptimg:kt,swimg:Mt},{name:"\u56FD\u5BB6\u4E00\u6D41",ptimg:ln,swimg:zn},{name:"\u7701\u7EA7\u4E00\u6D41",ptimg:Gn,swimg:Hn},{name:"\u7CBE\u54C1\u8BFE\u7A0B",ptimg:nr,swimg:Xn},{name:"\u519B\u961F\u4E00\u6D41",ptimg:qt,swimg:vn}];var ui=({className:Or,dataSource:pr=[],col:Rr=4,right:ga,bottom:pi=23,precision:Ca=0,wrapWidth:rr=1200,trackEventItems:Li,loading:io,onRemove:Lo=()=>{},isCurrent:Zi=!0,showAlias:ai=!1,wrapClassName:Bo,imgClassName:vs})=>{const rl=Math.floor((rr-(Rr-1)*ga)/Rr),eo=[{name:"\u63A8\u8350\u81EA\u5B66",ptimg:"/images/tjzx.png",swimg:"/images/sw_tjzx.png"},{name:"101\u8BA1\u5212",ptimg:"/images/jh.png",swimg:"/images/sw_jh.png"},{name:"\u56FD\u5BB6\u4E00\u6D41",ptimg:"/images/gjyl.png",swimg:"/images/sw_gjyl.png"},{name:"\u7701\u7EA7\u4E00\u6D41",ptimg:"/images/sjyl.png",swimg:"/images/sw_sjyl.png"},{name:"\u7CBE\u54C1\u8BFE\u7A0B",ptimg:"/images/jpkc.png",swimg:"/images/sw_jpkc.png"},{name:"\u519B\u961F\u4E00\u6D41",ptimg:"/images/jdyl.png",swimg:"/images/sw_jdyl.png"},{name:"\u65B0\u578B\u6559\u6750",ptimg:"/images/xxjc.png",swimg:"/images/sw_xxjc.png"}].map(Hi=>(window.ENV==="build"&&(Hi.ptimg=`/react/build${Hi.ptimg}`,Hi.swimg=`/react/build${Hi.swimg}`),Hi));return _a.createElement(nt.Z,{spinning:io},_a.createElement("div",{className:Ee()(Da.list,Or)},!!(pr!=null&&pr.length)&&(pr==null?void 0:pr.map((Hi,xs)=>{var zo;const{name:hl,id:gl,identifier:cc,featured:Yc,school_name:Du,image_url:Xu,excellent:Nc,is_plan:zd}=Hi;return _a.createElement("div",{key:gl,className:Ee()(Da.wrap,Bo),style:{width:rl,marginRight:(1+xs)%Rr===0?0:ga+Ca,marginBottom:pi}},_a.createElement("a",{className:Da.li,onClick:ac=>{ac.preventDefault(),ac.stopPropagation(),Li&&(0,ct.L9)([Li]),(0,ct.xg)(`/paths/${cc}`)}},_a.createElement("div",{className:Ee()(Da.img,vs)},_a.createElement("img",{className:Da.cover,src:`${ft.Z.IMG_SERVER+Xu}`}),Zi&&(0,Di.bg)()&&(Hi==null?void 0:Hi.studying)&&_a.createElement("div",{className:`${Da.movebq} user-path-items`,onClick:ac=>{ac.stopPropagation(),Lo(Hi)}},_a.createElement("i",{className:"iconfont icon-yichu1 mr5 c-red"}),_a.createElement("span",{className:"c-red"},"\u79FB\u9664")),(zo=Hi==null?void 0:Hi.subject_tags)==null?void 0:zo.map((ac,zl)=>{var vd,jd;if(zl===0){const cu=(vd=eo.find(Rc=>Rc.name==ac))==null?void 0:vd.swimg;return _a.createElement("img",{className:Da.sign,src:cu,style:{left:"-4px"}})}const Ju=(jd=eo.find(cu=>cu.name==ac))==null?void 0:jd.ptimg;return _a.createElement("img",{className:Da.sign,src:Ju,style:{left:`${48+52*(zl-1)+2*zl}px`}})}),_a.createElement("div",{style:{position:"absolute",bottom:"10px",right:"10px"}},(Hi==null?void 0:Hi.excellent)&&_a.createElement("div",{className:Da.bq},"\u5F00\u653E\u8BFE\u7A0B"))),_a.createElement("div",{className:Da.name},_a.createElement(lt.Z,{title:ai&&(Hi!=null&&Hi.excellent_alias_name)?_a.createElement("span",null,`\u8BFE\u7A0B\u539F\u540D\uFF1A${hl}`,_a.createElement("br",null),_a.createElement("span",null,`\u8BFE\u7A0B\u522B\u540D\uFF1A${Hi==null?void 0:Hi.excellent_alias_name}`)):hl},_a.createElement("span",{className:Da.e},ai&&(Hi==null?void 0:Hi.excellent_alias_name)||hl))),_a.createElement("div",{className:Da.tags},_a.createElement("div",null,_a.createElement(lt.Z,{placement:"bottom",title:"\u7AE0\u8282\u6570"},_a.createElement("span",null,_a.createElement("i",{className:"iconfont icon-zhangjie1 font14 mr3"}),_a.createElement("span",null,Hi.stages_count))),_a.createElement(lt.Z,{placement:"bottom",title:"\u5B66\u4E60\u4EBA\u6570"},_a.createElement("span",null,_a.createElement("i",{className:"iconfont icon-chengyuan font14 mr3"}),_a.createElement("span",null,Hi.members_count)))))))})),!pr.length&&_a.createElement(en.Z,null)))},mr={flex_box_center:"flex_box_center___eMcr7",flex_space_between:"flex_space_between___HcNca",flex_box_vertical_center:"flex_box_vertical_center___ZnvVN",flex_box_center_end:"flex_box_center_end___fdgDf",flex_box_column:"flex_box_column___SEKvd",list:"list___L1hmU",wrap:"wrap___pKgcW",lockWrap:"lockWrap___SMhkK",top:"top___udHSB",sign:"sign___uwRpq",name:"name___Fpf90",img:"img___AMLhL",text:"text___KiTb7",btns:"btns___i6IuZ",bottom:"bottom____k2sh"},Er="data:image/png;base64,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",ba=Te(59301),gr=({className:Or,dataSource:pr=[],col:Rr=4,right:ga,bottom:pi=23,precision:Ca=0,wrapWidth:rr=1200,trackEventItems:Li,loading:io})=>{const Lo=Math.floor((rr-(Rr-1)*ga)/Rr);return ba.createElement(nt.Z,{spinning:io},ba.createElement("div",{className:Ee()(mr.list,Or)},!!pr.length&&pr.map((Zi,ai)=>{const{subject_identifier:Bo,id:vs,identifier:rl,power:eo}=Zi,Hi=Zi.is_public!=0&&Zi.is_public;return ba.createElement("div",{className:mr.wrap,key:vs,style:{width:Lo,marginRight:(1+ai)%Rr===0?0:ga+Ca,marginBottom:pi}},ba.createElement("a",{className:mr.li,onClick:xs=>{xs.preventDefault(),Li&&(0,ct.L9)([Li]),(0,ct.xg)(Zi.first_category_url)}},ba.createElement("div",{className:mr.top},ba.createElement(lt.Z,{title:Zi.name},ba.createElement("div",{className:mr.name},Zi.name)),ba.createElement("img",{className:mr.img,src:ft.Z.IMG_SERVER+"/images/"+Zi.avatar_url}),ba.createElement("div",{className:mr.text,title:Zi.creator},Zi.creator),Bo&&ba.createElement("div",{className:mr.btns},ba.createElement("div",null,"\u5F00\u653E\u8BFE\u7A0B"),ba.createElement("aside",null,"\u5F00\u653E\u8BFE\u5802")),Hi&&ba.createElement("div",{className:mr.sign},"\u516C\u5F00")),ba.createElement("div",{className:mr.bottom},Zi.visits>0&&ba.createElement(lt.Z,{title:"\u8BBF\u95EE\u91CF",placement:"bottom"},ba.createElement("span",null,ba.createElement("i",{className:"iconfont icon-liulanyan"}),ba.createElement("span",null,Zi.visits))),Zi.course_members_count>0&&ba.createElement(lt.Z,{title:"\u6210\u5458",placement:"bottom"},ba.createElement("span",null,ba.createElement("i",{className:"iconfont icon-chengyuan"}),Zi.course_members_count)),Zi.tasks_count>0&&ba.createElement(lt.Z,{title:"\u4F5C\u4E1A",placement:"bottom"},ba.createElement("span",null,ba.createElement("i",{className:"iconfont icon-zuoye"}),Zi.tasks_count)),Zi.is_end?ba.createElement("div",{style:{color:"#6B758B"}},"\u5DF2\u7ED3\u675F"):ba.createElement("div",{style:{color:"#00B187"}},"\u8FDB\u884C\u4E2D"))),!Zi.is_accessible&&ba.createElement("div",{className:mr.lockWrap},ba.createElement("img",{src:`${ft.Z.IMG_SERVER}/images/educoder/icon/lockclose.svg`}),ba.createElement("span",{className:"mt15 font16 c-white"},"\u975E\u8BFE\u5802\u6210\u5458\u4E0D\u53EF\u8FDB\u5165")))}),!pr.length&&ba.createElement(en.Z,null)))},br={flex_box_center:"flex_box_center___PuarE",flex_space_between:"flex_space_between___q4lAa",flex_box_vertical_center:"flex_box_vertical_center___wsb8w",flex_box_center_end:"flex_box_center_end___H781P",flex_box_column:"flex_box_column___bHK1y",list:"list___e2XDo",wrap:"wrap___cz7sh",lockWrap:"lockWrap___EPuRr",creator:"creator___Y6Xjp",img:"img___kSEud",text:"text___GIlhY",top:"top___K4GCD",sign:"sign___KCjEP",name:"name___z3U4d",middle:"middle___LeUM5",row:"row___VBzfJ",value:"value___qigWu",btns:"btns___kGysm",bottom:"bottom___yPYd5",warpStyle:"warpStyle___pH3uC"},_r="data:image/png;base64,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",Ct=({className:Or,dataSource:pr=[],col:Rr=4,right:ga,bottom:pi=23,precision:Ca=0,wrapWidth:rr=1200,wrapClassName:Li,trackEventItems:io,loading:Lo})=>{const Zi=Math.floor((rr-(Rr-1)*ga)/Rr);return Oe.createElement(nt.Z,{spinning:Lo},Oe.createElement("div",{className:Ee()(br.list,Or)},!!pr.length&&pr.map((ai,Bo)=>{const{subject_identifier:vs,id:rl,identifier:eo,power:Hi}=ai,xs=ai.is_public!=0&&ai.is_public;return Oe.createElement("div",{className:Ee()(`${br.wrap} ${ai.is_accessible?"":br.warpStyle}`,Li),key:rl,style:{width:Zi,marginRight:(1+Bo)%Rr===0?0:ga+Ca,marginBottom:pi}},Oe.createElement("a",{className:br.li,onClick:zo=>{zo.preventDefault(),io&&(0,ct.L9)([io]),(0,ct.xg)(ai.first_category_url)}},Oe.createElement("div",{className:br.creator},Oe.createElement("img",{className:br.img,src:ft.Z.IMG_SERVER+"/images/"+ai.avatar_url}),Oe.createElement("div",{className:br.text,title:ai.creator},ai.creator)),Oe.createElement("div",{className:br.top},Oe.createElement(lt.Z,{title:ai.name},Oe.createElement("div",{className:br.name},ai.name)),xs&&Oe.createElement("div",{className:br.sign},"\u516C\u5F00")),Oe.createElement("div",{className:br.middle},Oe.createElement("div",{className:br.row,style:{marginBottom:6}},Oe.createElement("div",null,Oe.createElement("span",{className:br.text},"\u8BBF\u95EE\u91CF"),Oe.createElement("span",{className:br.value},(ai==null?void 0:ai.visits)||0)),Oe.createElement("div",null,Oe.createElement("span",{className:br.text},"\u6210\u5458"),Oe.createElement("span",{className:br.value},(ai==null?void 0:ai.course_members_count)||0))),Oe.createElement("div",{className:br.row},Oe.createElement("div",null,Oe.createElement("span",{className:br.text,style:{width:42}},"\u4F5C",Oe.createElement("span",{style:{marginLeft:14}},"\u4E1A")),Oe.createElement("span",{className:br.value},(ai==null?void 0:ai.tasks_count)||0)),Oe.createElement("div",null,Oe.createElement("span",{className:br.text},"\u72B6\u6001"),ai.is_end?Oe.createElement("span",{className:br.value,style:{color:"#6E8BAA"}},"\u5DF2\u7ED3\u675F"):Oe.createElement("span",{className:br.value,style:{color:"#1AAE64"}},"\u8FDB\u884C\u4E2D")))),vs&&Oe.createElement("div",{className:br.btns},Oe.createElement("div",null,"\u5F00\u653E\u8BFE\u7A0B"),Oe.createElement("aside",null,"\u5F00\u653E\u8BFE\u5802"))),!ai.is_accessible&&Oe.createElement("div",{className:br.lockWrap},Oe.createElement("img",{src:`${ft.Z.IMG_SERVER}/images/educoder/icon/lockclose.svg`}),Oe.createElement("span",{className:"mt15 font16 c-white"},"\u975E\u8BFE\u5802\u6210\u5458\u4E0D\u53EF\u8FDB\u5165")))}),!pr.length&&Oe.createElement(en.Z,null)))},we={flex_box_center:"flex_box_center___eJQtn",flex_space_between:"flex_space_between___lzV1x",flex_box_vertical_center:"flex_box_vertical_center___IYfoZ",flex_box_center_end:"flex_box_center_end___lcJOu",flex_box_column:"flex_box_column____ShCG",list:"list___YXSRr",wrap:"wrap___ZGdF6",lockWrap:"lockWrap___VKZgR",creator:"creator___tLnuI",img:"img___P8alm",text:"text___ijpmj",top:"top___md6mc",sign:"sign___ydolt",name:"name___OEush",middle:"middle___WFQ2R",row:"row___MFUrm",value:"value___rEYMy",btns:"btns___Y5S2B",bottom:"bottom___RsfJC",warpStyle:"warpStyle___R8xtx"},Be="data:image/png;base64,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",je=({className:Or,dataSource:pr=[],col:Rr=4,right:ga,bottom:pi=23,precision:Ca=0,wrapWidth:rr=1200,wrapClassName:Li,trackEventItems:io,loading:Lo})=>{const Zi=Math.floor((rr-(Rr-1)*ga)/Rr);return Oe.createElement(nt.Z,{spinning:Lo},Oe.createElement("div",{className:Ee()(we.list,Or)},!!pr.length&&pr.map((ai,Bo)=>{const{subject_identifier:vs,id:rl,identifier:eo,power:Hi}=ai,xs=ai.is_public!=0&&ai.is_public;return Oe.createElement("div",{className:Ee()(`${we.wrap} ${ai.is_accessible?"":we.warpStyle}`,Li),key:rl,style:{width:Zi,marginRight:(1+Bo)%Rr===0?0:ga+Ca,marginBottom:pi}},Oe.createElement("a",{className:we.li,onClick:zo=>{zo.preventDefault(),io&&(0,ct.L9)([io]),(0,ct.xg)(ai.first_category_url)}},Oe.createElement("div",{className:we.creator},Oe.createElement("img",{className:we.img,src:ft.Z.IMG_SERVER+"/images/"+ai.avatar_url}),Oe.createElement("div",{className:we.text,title:ai.creator},ai.creator)),Oe.createElement("div",{className:we.top},Oe.createElement(lt.Z,{title:ai.name},Oe.createElement("div",{className:we.name},ai.name)),xs&&Oe.createElement("div",{className:we.sign})),Oe.createElement("div",{className:we.middle},Oe.createElement("div",{className:we.row,style:{marginBottom:6}},Oe.createElement("div",null,Oe.createElement("span",{className:we.text},"\u8BBF\u95EE\u91CF"),Oe.createElement("span",{className:we.value},(ai==null?void 0:ai.visits)||0)),Oe.createElement("div",null,Oe.createElement("span",{className:we.text},"\u6210\u5458"),Oe.createElement("span",{className:we.value},(ai==null?void 0:ai.course_members_count)||0))),Oe.createElement("div",{className:we.row},Oe.createElement("div",null,Oe.createElement("span",{className:we.text,style:{width:42}},"\u4F5C",Oe.createElement("span",{style:{marginLeft:14}},"\u4E1A")),Oe.createElement("span",{className:we.value},(ai==null?void 0:ai.tasks_count)||0)),Oe.createElement("div",null,Oe.createElement("span",{className:we.text},"\u72B6\u6001"),ai.is_end?Oe.createElement("span",{className:we.value,style:{color:"#6E8BAA"}},"\u5DF2\u7ED3\u675F"):Oe.createElement("span",{className:we.value,style:{color:"#00DDC7"}},"\u8FDB\u884C\u4E2D")))),vs&&Oe.createElement("div",{className:we.btns},Oe.createElement("div",null,"\u5F00\u653E\u8BFE\u7A0B"),Oe.createElement("aside",null,"\u5F00\u653E\u8BFE\u5802"))),!ai.is_accessible&&Oe.createElement("div",{className:we.lockWrap},Oe.createElement("img",{src:`${ft.Z.IMG_SERVER}/images/educoder/icon/lockclose.svg`}),Oe.createElement("span",{className:"mt15 font16 c-white"},"\u975E\u8BFE\u5802\u6210\u5458\u4E0D\u53EF\u8FDB\u5165")))}),!pr.length&&Oe.createElement(en.Z,null)))},Xe={flex_box_center:"flex_box_center___d27mZ",flex_space_between:"flex_space_between___qfRU9",flex_box_vertical_center:"flex_box_vertical_center___fCRld",flex_box_center_end:"flex_box_center_end___ORMV8",flex_box_column:"flex_box_column___PNKtZ",tabs:"tabs___alpa7",tabsWrap:"tabsWrap___aCQjw",tab:"tab___MKLr4",active:"active___nl_4v"},Et=Te(90115),Jt=({dataSource:Or=[],value:pr,onChange:Rr,className:ga,style:pi={},tabBarExtraContent:Ca})=>Oe.createElement("div",{className:Ee()(Xe.tabs,ga),style:pi},Oe.createElement("div",{className:Xe.tabsWrap},Or.map((rr,Li)=>Oe.createElement("aside",{className:Xe.tab,onClick:()=>{Rr(rr.id),rr.link&&Et.history.push(rr.link)},key:Li},Oe.createElement("div",{className:pr===rr.id?Xe.active:""},rr.name),(rr==null?void 0:rr.resetCount)==null&&(rr==null?void 0:rr.total)!==void 0&&Oe.createElement("span",null,"\uFF08",rr==null?void 0:rr.total,"\uFF09"),(rr==null?void 0:rr.resetCount)!==void 0&&(rr==null?void 0:rr.total)!==void 0&&Oe.createElement(lt.Z,{title:(rr==null?void 0:rr.tip)!=null?rr==null?void 0:rr.tip:""},Oe.createElement("span",{style:{color:"#9096A3"}},"\uFF08",Oe.createElement("span",{style:{color:"#000"}},rr==null?void 0:rr.resetCount),"/",Oe.createElement("span",null,rr==null?void 0:rr.total),"\uFF09"))))),Oe.createElement("div",{className:Xe.tabBar},Ca)),Vt={flex_box_center:"flex_box_center___itkVp",flex_space_between:"flex_space_between___F4yZx",flex_box_vertical_center:"flex_box_vertical_center___ko4cu",flex_box_center_end:"flex_box_center_end___cCBYR",flex_box_column:"flex_box_column___Mpq6K",tabs:"tabs___qRAhL",tabsWrap:"tabsWrap___CGRvS",tab:"tab___eYne_",active:"active___swSx6"},dn=({dataSource:Or=[],value:pr,onChange:Rr,className:ga,style:pi={},tabBarExtraContent:Ca})=>Oe.createElement("div",{className:Ee()(Vt.tabs,ga),style:pi},Oe.createElement("div",{className:Vt.tabsWrap},Or.map((rr,Li)=>Oe.createElement("aside",{className:Vt.tab,onClick:()=>{Rr(rr.id),rr.link&&Et.history.push(rr.link)},key:Li},Oe.createElement("div",{className:pr===rr.id?Vt.active:""},rr.name),(rr==null?void 0:rr.resetCount)==null&&(rr==null?void 0:rr.total)!==void 0&&Oe.createElement("span",null,"\uFF08",rr==null?void 0:rr.total,"\uFF09"),(rr==null?void 0:rr.resetCount)!==void 0&&(rr==null?void 0:rr.total)!==void 0&&Oe.createElement(lt.Z,{title:(rr==null?void 0:rr.tip)!=null?rr==null?void 0:rr.tip:""},Oe.createElement("span",{style:{color:"#9096A3"}},"\uFF08",Oe.createElement("span",{style:{color:"#000"}},rr==null?void 0:rr.resetCount),"/",Oe.createElement("span",null,rr==null?void 0:rr.total),"\uFF09"))))),Oe.createElement("div",{className:Vt.tabBar},Ca)),Vn={flex_box_center:"flex_box_center___uWCU1",flex_space_between:"flex_space_between___pKZJo",flex_box_vertical_center:"flex_box_vertical_center___NKr7Z",flex_box_center_end:"flex_box_center_end___ycaEu",flex_box_column:"flex_box_column___dDKjA",tabs:"tabs___cNVh5",tabsWrap:"tabsWrap___IJpOg",tab:"tab___fitSZ",active:"active___LBYdH"},Jn=({dataSource:Or=[],value:pr,onChange:Rr,className:ga,style:pi={},tabBarExtraContent:Ca})=>Oe.createElement("div",{className:Ee()(Vn.tabs,ga),style:pi},Oe.createElement("div",{className:Vn.tabsWrap},Or.map((rr,Li)=>Oe.createElement("aside",{className:`${Vn.tab} ${pr===rr.id?Vn.active:""}`,onClick:()=>{Rr(rr.id),rr.link&&Et.history.push(rr.link)},key:Li},Oe.createElement("div",null,rr.name),(rr==null?void 0:rr.resetCount)==null&&(rr==null?void 0:rr.total)!==void 0&&Oe.createElement("span",null,"\uFF08",rr==null?void 0:rr.total,"\uFF09"),(rr==null?void 0:rr.resetCount)!==void 0&&(rr==null?void 0:rr.total)!==void 0&&Oe.createElement(lt.Z,{title:(rr==null?void 0:rr.tip)!=null?rr==null?void 0:rr.tip:""},Oe.createElement("span",{style:{color:"#9096A3"}},"\uFF08",Oe.createElement("span",{style:{color:"#000"}},rr==null?void 0:rr.resetCount),"/",Oe.createElement("span",null,rr==null?void 0:rr.total),"\uFF09"))))),Oe.createElement("div",{className:Vn.tabBar},Ca)),hr=({className:Or,style:pr={},children:Rr})=>Oe.createElement("div",{className:Ee()(Or),style:pr},Rr),hn={flex_box_center:"flex_box_center___e6HxQ",flex_space_between:"flex_space_between___RnXYe",flex_box_vertical_center:"flex_box_vertical_center___lVxPk",flex_box_center_end:"flex_box_center_end___bu8yv",flex_box_column:"flex_box_column___JczGj",orderWrap:"orderWrap___ZfyGX",orderIconWrap:"orderIconWrap___XTB_O",orderAsc:"orderAsc___KWHmA",orderDesc:"orderDesc___rHdbB",active:"active___a7eSP",cursorPointer:"cursorPointer___gs9kL",orderTextWrap:"orderTextWrap___teAKn"},an=Te(38854),In=Te(20834);const jn=[{id:"updated_at",name:"\u6700\u65B0\u52A8\u6001"},{id:"created_at",name:"\u6700\u65B0\u521B\u5EFA"},{id:"name",name:"\u540D\u79F0\u6392\u5E8F"}];var or=({sortValue:Or,dropValue:pr,className:Rr,onSort:ga,onDrop:pi,dataSource:Ca=jn})=>{var rr;return Oe.createElement("div",{className:Ee()(hn.orderWrap,Rr)},Oe.createElement(an.Z,{dropdownRender:()=>Oe.createElement(In.default,null,Ca.map((Li,io)=>Oe.createElement(In.default.Item,{key:io,onClick:()=>pi(Li.id)},Li.name)))},Oe.createElement("span",{className:hn.orderTextWrap},(rr=Ca.find(Li=>pr===Li.id))==null?void 0:rr.name)),Oe.createElement("span",{className:hn.orderIconWrap},Oe.createElement("span",{className:hn.orderAsc},Oe.createElement("i",{className:Or==="asc"?`iconfont icon-sanjiaoxing-up font12 ${hn.cursorPointer} ${hn.active}`:`iconfont icon-sanjiaoxing-up font12 ${hn.cursorPointer}`,onClick:()=>ga(Or==="asc"?"desc":"asc")})),Oe.createElement("span",{className:hn.orderDesc},Oe.createElement("i",{className:Or==="desc"?`iconfont icon-sanjiaoxing-down font12 ${hn.cursorPointer} ${hn.active}`:`iconfont icon-sanjiaoxing-down font12 ${hn.cursorPointer}`,onClick:()=>ga(Or==="asc"?"desc":"asc")}))))},Qn={flex_box_center:"flex_box_center___JJ9sS",flex_space_between:"flex_space_between___t8Vfh",flex_box_vertical_center:"flex_box_vertical_center___NXwpW",flex_box_center_end:"flex_box_center_end___d7nF9",flex_box_column:"flex_box_column___RWkXa",orderWrap:"orderWrap___Z6UhI",orderIconWrap:"orderIconWrap___vT5et",orderAsc:"orderAsc___Xrpfj",orderDesc:"orderDesc___FgOA0",active:"active___ryj8i",cursorPointer:"cursorPointer___Gg3bB",orderTextWrap:"orderTextWrap___BAYWJ"};const dr=[{id:"updated_at",name:"\u6700\u65B0\u52A8\u6001"},{id:"created_at",name:"\u6700\u65B0\u521B\u5EFA"},{id:"name",name:"\u540D\u79F0\u6392\u5E8F"}];var On=({sortValue:Or,dropValue:pr,className:Rr,onSort:ga,onDrop:pi,dataSource:Ca=dr})=>{var rr;return Oe.createElement("div",{className:Ee()(Qn.orderWrap,Rr)},Oe.createElement(an.Z,{dropdownRender:()=>Oe.createElement(In.default,null,Ca.map((Li,io)=>Oe.createElement(In.default.Item,{key:io,onClick:()=>pi(Li.id)},Li.name)))},Oe.createElement("span",{className:Qn.orderTextWrap},(rr=Ca.find(Li=>pr===Li.id))==null?void 0:rr.name)),Oe.createElement("span",{className:Qn.orderIconWrap},Oe.createElement("span",{className:Qn.orderAsc},Oe.createElement("i",{className:Or==="asc"?`iconfont icon-sanjiaoxing-up font12 ${Qn.cursorPointer} ${Qn.active}`:`iconfont icon-sanjiaoxing-up font12 ${Qn.cursorPointer}`,onClick:()=>ga(Or==="asc"?"desc":"asc")})),Oe.createElement("span",{className:Qn.orderDesc},Oe.createElement("i",{className:Or==="desc"?`iconfont icon-sanjiaoxing-down font12 ${Qn.cursorPointer} ${Qn.active}`:`iconfont icon-sanjiaoxing-down font12 ${Qn.cursorPointer}`,onClick:()=>ga(Or==="asc"?"desc":"asc")}))))},vr={flex_box_center:"flex_box_center___LCi0B",flex_space_between:"flex_space_between___hzONe",flex_box_vertical_center:"flex_box_vertical_center___ZyQRE",flex_box_center_end:"flex_box_center_end___XKM74",flex_box_column:"flex_box_column___p8LCU",btn:"btn___In02G","mediacy-round":"mediacy-round___uveEv","mediacy-default":"mediacy-default___dDxsd",default:"default___K791v",ThemeOne:"ThemeOne___iCQio"},Yn=Te(3113),jr=Te(39587),ri=Object.defineProperty,vi=Object.getOwnPropertySymbols,ci=Object.prototype.hasOwnProperty,Kr=Object.prototype.propertyIsEnumerable,Ia=(Or,pr,Rr)=>pr in Or?ri(Or,pr,{enumerable:!0,configurable:!0,writable:!0,value:Rr}):Or[pr]=Rr,Ta=(Or,pr)=>{for(var Rr in pr||(pr={}))ci.call(pr,Rr)&&Ia(Or,Rr,pr[Rr]);if(vi)for(var Rr of vi(pr))Kr.call(pr,Rr)&&Ia(Or,Rr,pr[Rr]);return Or},la=(Or,pr)=>{var Rr={};for(var ga in Or)ci.call(Or,ga)&&pr.indexOf(ga)<0&&(Rr[ga]=Or[ga]);if(Or!=null&&vi)for(var ga of vi(Or))pr.indexOf(ga)<0&&Kr.call(Or,ga)&&(Rr[ga]=Or[ga]);return Rr},ei=(Or,pr,Rr)=>new Promise((ga,pi)=>{var Ca=io=>{try{Li(Rr.next(io))}catch(Lo){pi(Lo)}},rr=io=>{try{Li(Rr.throw(io))}catch(Lo){pi(Lo)}},Li=io=>io.done?ga(io.value):Promise.resolve(io.value).then(Ca,rr);Li((Rr=Rr.apply(Or,pr)).next())}),za=Or=>{var pr=Or,{className:Rr,style:ga,children:pi,loading:Ca=!1,openLoading:rr,onClick:Li=()=>{},size:io="middle",shape:Lo="round",theme:Zi}=pr,ai=la(pr,["className","style","children","loading","openLoading","onClick","size","shape","theme"]);const[Bo,vs]=(0,Oe.useState)(!1),rl=(0,Oe.useMemo)(()=>{switch(Zi){case jr.Fy.THEMEONE:return vr.ThemeOne;case jr.Fy.DEFAULT:default:return vr.btn}},[Zi]);return Oe.createElement(Yn.ZP,Ta({onClick:(0,Pe.throttle)(eo=>ei(void 0,null,function*(){rr&&vs(!0);try{yield Li(eo)}catch(Hi){console.log("error",Hi)}rr&&vs(!1)}),2e3,{leading:!0,trailing:!1}),className:Ee()(rl,vr[`${io}-${Lo}`],Rr),style:ga,size:io,shape:Lo,loading:Bo||Ca},ai),pi)},_i={flex_box_center:"flex_box_center___TB7bQ",flex_space_between:"flex_space_between___oBlTb",flex_box_vertical_center:"flex_box_vertical_center___b5XbB",flex_box_center_end:"flex_box_center_end___CNhe7",flex_box_column:"flex_box_column___yHXKW",head:"head___ghH72",node:"node___mjPEy"},Uo=({className:Or,style:pr,children:Rr=null,onClick:ga,title:pi})=>Oe.createElement("div",{className:Ee()(_i.head,Or),style:pr},Oe.createElement("span",{className:"primary-hover",onClick:ga},Oe.createElement("i",{className:"iconfont icon-fanhui2 font12"}),"\u8FD4\u56DE"),Oe.createElement("b",{title:pi},pi),Oe.createElement("div",{className:_i.node},Rr)),yo={flex_box_center:"flex_box_center___AlHuF",flex_space_between:"flex_space_between___vN2LW",flex_box_vertical_center:"flex_box_vertical_center___Ac7D2",flex_box_center_end:"flex_box_center_end___y38I7",flex_box_column:"flex_box_column___iQE6P",btns:"btns___sNgTb",confirm:"confirm___Ozirl",cancel:"cancel___aiq1I"},ds=({confirmShow:Or=!0,confirmTitle:pr,confirmClick:Rr,cancelShow:ga=!0,cancelTitle:pi,cancelClick:Ca,className:rr,style:Li,confirmLoading:io=!1})=>Oe.createElement("div",{className:Ee()(yo.btns,rr),style:Li},Or&&Oe.createElement(Yn.ZP,{loading:io,onClick:Rr,type:"primary",className:yo.confirm},pr),ga&&Oe.createElement(Yn.ZP,{onClick:Ca,className:yo.cancel},pi)),bo={flex_box_center:"flex_box_center___jkpdr",flex_space_between:"flex_space_between___OtsL8",flex_box_vertical_center:"flex_box_vertical_center___rbcb_",flex_box_center_end:"flex_box_center_end___zBR21",flex_box_column:"flex_box_column___nS_eP",fixedBottom:"fixedBottom___oJl7m",wrap:"wrap___A3Oq1",center:"center____VL1y"},ss=({className:Or,style:pr={},LeftContent:Rr,children:ga,RightContent:pi})=>Oe.createElement("div",{className:Ee()(bo.fixedBottom,Or),style:pr},Oe.createElement("div",{className:bo.wrap},Oe.createElement("div",{className:bo.left},Rr),Oe.createElement("div",{className:bo.center},ga),Oe.createElement("div",{className:bo.right},pi))),Yo={flex_box_center:"flex_box_center___tY8Yn",flex_space_between:"flex_space_between___vHdYA",flex_box_vertical_center:"flex_box_vertical_center___pa61F",flex_box_center_end:"flex_box_center_end___HyDXt",flex_box_column:"flex_box_column___UjZek",crumbs:"crumbs___V41Oe",hover:"hover___bEIVd"},Rs=({className:Or,style:pr={},dataSource:Rr=[]})=>Oe.createElement("div",{className:Ee()(Yo.crumbs,Or),style:pr},Rr.map((ga,pi)=>pi<Rr.length-1?Oe.createElement(Oe.Fragment,{key:pi},ga.path||ga.onClick?Oe.createElement("span",{className:Yo.hover,onClick:ga!=null&&ga.onClick?ga.onClick:()=>Et.history.push(ga.path)},ga.name):Oe.createElement("span",null,ga.name),Oe.createElement("span",null,"\xA0",">","\xA0")):Oe.createElement("span",{key:pi,style:{color:"#5F6368"}},ga.name))),tl=Te(31797),Pl=Object.defineProperty,Gs=Object.defineProperties,il=Object.getOwnPropertyDescriptors,nl=Object.getOwnPropertySymbols,uo=Object.prototype.hasOwnProperty,Xo=Object.prototype.propertyIsEnumerable,Ho=(Or,pr,Rr)=>pr in Or?Pl(Or,pr,{enumerable:!0,configurable:!0,writable:!0,value:Rr}):Or[pr]=Rr,Xs=(Or,pr)=>{for(var Rr in pr||(pr={}))uo.call(pr,Rr)&&Ho(Or,Rr,pr[Rr]);if(nl)for(var Rr of nl(pr))Xo.call(pr,Rr)&&Ho(Or,Rr,pr[Rr]);return Or},Il=(Or,pr)=>Gs(Or,il(pr)),_l=(Or,pr)=>{var Rr={};for(var ga in Or)uo.call(Or,ga)&&pr.indexOf(ga)<0&&(Rr[ga]=Or[ga]);if(Or!=null&&nl)for(var ga of nl(Or))pr.indexOf(ga)<0&&Xo.call(Or,ga)&&(Rr[ga]=Or[ga]);return Rr};const{Countdown:Go}=tl.default;var Os=Or=>{var pr=Or,{onChange:Rr}=pr,ga=_l(pr,["onChange"]);const[pi,Ca]=(0,Oe.useState)(null);(0,Oe.useEffect)(()=>{typeof pi=="number"&&pi>=0&&Rr(pi)},[pi]);const rr=Li=>{const io=Math.floor(Li/1e3);Ca(io)};return Oe.createElement(Go,Il(Xs({},ga),{onChange:rr}))},Vs={ClassRoomItem:"ClassRoomItem___F4pL0",TitleDom:"TitleDom___DB76T"},Al=({DataProps:Or,className:pr,style:Rr={}})=>{var ga;return Oe.createElement("div",{className:Ee()("rounded-40px bg-white py-10px pb-30px px-30px flex gap-22px current h-full",Vs.ClassRoomItem,pr),style:Rr,onClick:()=>{(0,ct.xg)(Or==null?void 0:Or.first_category_url)}},Oe.createElement("div",{className:"flex flex-col item-center"},Oe.createElement("img",{src:`${(ga=ft.Z)==null?void 0:ga.IMG_SERVER}/images/${Or==null?void 0:Or.avatar_url}`,className:"rounded-full",style:{height:76,width:76,marginTop:"-24px"}}),(Or==null?void 0:Or.subject_identifier)&&Oe.createElement("div",{className:"mt-40px"},Oe.createElement("div",{className:"rounded-full",style:{background:"rgba(33,202,159,0.1)",border:"1px solid #6BFF98",color:"#0EA17B"}},"\u5F00\u653E\u8BFE\u7A0B"),Oe.createElement("div",{className:"rounded-full",style:{background:"rgba(255,160,0,0.1)",border:"1px solid #FFC055",color:"#C97319"}},"\u5F00\u653E\u8BFE\u5802"))),Oe.createElement("div",{className:"flex-1 flex flex-col justify-between gap-10px"},Oe.createElement("div",{className:"multi_ellipsis2",style:{height:48}},!!(Or!=null&&Or.is_public)&&Oe.createElement("div",{className:"c-white rounded-4px mr-4px h-24px w-42px item-center justify-center",style:{background:"#21CA9F",border:"1px solid #6BFF98",display:"inline-flex"}},"\u516C\u5F00"),Oe.createElement("span",{className:Ee()("text-16px font-medium",Vs.TitleDom)},Or==null?void 0:Or.name)),Oe.createElement("div",{className:"c-grey-333 font-medium"},Or==null?void 0:Or.creator),Oe.createElement("div",{className:"c-grey-333"},"\u6210\u5458\uFF1A",Or==null?void 0:Or.course_members_count),Oe.createElement("div",{className:"c-grey-333 flex item-center justify-between"},Oe.createElement("div",null,"\u4F5C\u4E1A\uFF1A",Or==null?void 0:Or.tasks_count),Or!=null&&Or.is_end?Oe.createElement("div",{style:{color:"#5F6A95"}},"\u5DF2\u7ED3\u675F"):Oe.createElement("div",{style:{color:"#37AD83"}},"\u8FDB\u884C\u4E2D"))))},ol=Object.defineProperty,uc=Object.getOwnPropertySymbols,zi=Object.prototype.hasOwnProperty,Ga=Object.prototype.propertyIsEnumerable,ja=(Or,pr,Rr)=>pr in Or?ol(Or,pr,{enumerable:!0,configurable:!0,writable:!0,value:Rr}):Or[pr]=Rr,Ua=(Or,pr)=>{for(var Rr in pr||(pr={}))zi.call(pr,Rr)&&ja(Or,Rr,pr[Rr]);if(uc)for(var Rr of uc(pr))Ga.call(pr,Rr)&&ja(Or,Rr,pr[Rr]);return Or},ko=({DataProps:Or=[],selectValue:pr,onChange:Rr,className:ga,style:pi={},extra:Ca,classNameItem:rr,styleItem:Li={},barHidden:io})=>{const[Lo,Zi]=(0,Oe.useState)();return(0,Oe.useEffect)(()=>{Zi(Array.isArray(pr)?pr:[pr])},[pr]),Oe.createElement("div",{className:Ee()("flex px-20px py-10px gap-40px",ga),style:Ua({borderBottom:"1px solid #D3F0FF"},pi)},Or==null?void 0:Or.map(ai=>Oe.createElement("div",{key:ai==null?void 0:ai.id,className:Ee()("flex item-center justify-center current c-grey-333 text-16 relative",rr,ai==null?void 0:ai.className),style:Ua(Ua({color:Lo!=null&&Lo.includes(ai==null?void 0:ai.id)?"#1890FF":"",minWidth:88},Li),(ai==null?void 0:ai.style)||{}),onClick:Bo=>{Rr==null||Rr({domEvent:Bo,item:ai}),ai!=null&&ai.link&&Et.history.push(ai==null?void 0:ai.link)}},ai==null?void 0:ai.name,!io&&(Lo==null?void 0:Lo.includes(ai==null?void 0:ai.id))&&Oe.createElement("div",{className:"absolute w-full h-2px",style:{background:"#1890FF",bottom:"-10px",left:0}}))),Oe.createElement("div",{className:"ml-auto"},Ca))},Ts=Object.defineProperty,ws=Object.defineProperties,Ks=Object.getOwnPropertyDescriptors,Oo=Object.getOwnPropertySymbols,uu=Object.prototype.hasOwnProperty,fl=Object.prototype.propertyIsEnumerable,Co=(Or,pr,Rr)=>pr in Or?Ts(Or,pr,{enumerable:!0,configurable:!0,writable:!0,value:Rr}):Or[pr]=Rr,Jo=(Or,pr)=>{for(var Rr in pr||(pr={}))uu.call(pr,Rr)&&Co(Or,Rr,pr[Rr]);if(Oo)for(var Rr of Oo(pr))fl.call(pr,Rr)&&Co(Or,Rr,pr[Rr]);return Or},Fs=(Or,pr)=>ws(Or,Ks(pr)),gs=({value:Or,onChange:pr,onInputChange:Rr,className:ga,style:pi={},InputProps:Ca})=>{const[rr,Li]=(0,Oe.useState)(Or);return Oe.createElement("div",{className:Ee()("flex item-center rounded-full px-10px py-2px",ga),style:Jo({background:"linear-gradient( #E4F6FF 0%, #EAF3FF 100%)",border:"1px solid #fff",boxShadow:"inset 0px 1px 3px 0px rgba(133,188,255,0.5)"},pi)},Oe.createElement(Ue.default,Fs(Jo({bordered:!1},Ca),{onChange:io=>{Li(io.target.value),Rr==null||Rr(encodeURIComponent(io.target.value))},onPressEnter:io=>{pr==null||pr({domEvent:io,item:{value:rr}})}})),Oe.createElement("img",{className:"h-22px current",src:Te(25365),height:22,onClick:io=>{pr==null||pr({domEvent:io,item:{value:rr}})}}))}},29152:function(At,It,Te){"use strict";Te.d(It,{Z:function(){return He}});var Oe=Te(59301);function He(Ne,be){const _e=(0,Oe.useRef)();(0,Oe.useEffect)(()=>{_e.current=Ne}),(0,Oe.useEffect)(()=>{function Me(){_e.current()}if(be!==null){let ve=setInterval(Me,be);return()=>clearInterval(ve)}},[be])}},1536:function(At,It,Te){"use strict";Te.d(It,{Q8:function(){return nt},d0:function(){return lt},w6:function(){return ut}});var Oe=Te(59301),He=Te(5083),Ne=Te(57809),be=Te(8591),_e=Te(43418),Me=Te(5112),ve=Te(95237),Ee=Te(43604),Pe=Te(6848),xe=Te(24905),pe=Te(3113),Ae=Te(66649),Se=Te.n(Ae),ce=Te(16624),te=Te(64866),ne=Te(89392),le=Te.n(ne),se=Te(22566),fe=Te(1051),he=Te(90115),ie=Te(21837),ue=Te(91723),me=Te(25920),Ce=Te(27350),Ie=Te(55159),Fe=Te(59301),Re=Object.defineProperty,Ue=Object.defineProperties,Ge=Object.getOwnPropertyDescriptors,Je=Object.getOwnPropertySymbols,Qe=Object.prototype.hasOwnProperty,rt=Object.prototype.propertyIsEnumerable,$e=(vt,Ut,Zt)=>Ut in vt?Re(vt,Ut,{enumerable:!0,configurable:!0,writable:!0,value:Zt}):vt[Ut]=Zt,qe=(vt,Ut)=>{for(var Zt in Ut||(Ut={}))Qe.call(Ut,Zt)&&$e(vt,Zt,Ut[Zt]);if(Je)for(var Zt of Je(Ut))rt.call(Ut,Zt)&&$e(vt,Zt,Ut[Zt]);return vt},ot=(vt,Ut)=>Ue(vt,Ge(Ut)),at=(vt,Ut,Zt)=>new Promise((en,mn)=>{var Bt=Mn=>{try{on(Zt.next(Mn))}catch(Dn){mn(Dn)}},tn=Mn=>{try{on(Zt.throw(Mn))}catch(Dn){mn(Dn)}},on=Mn=>Mn.done?en(Mn.value):Promise.resolve(Mn.value).then(Bt,tn);on((Zt=Zt.apply(vt,Ut)).next())});function ut(vt,Ut){const Zt=[];for(let en=vt;en<Ut;en++)Zt.push(en);return Zt}const nt=(vt,Ut,Zt)=>{const en=vt<Se()().startOf("day"),mn=vt>Se()(Ut).endOf("day"),Bt=vt<Se()(Zt).startOf("day");return Ut?Zt?Se()()<=Se()(Zt)?Bt||mn:en||mn:vt&&en||mn:Zt&&Se()()<=Se()(Zt)?Bt:en},lt=(vt,Ut)=>{const Zt=parseInt(Se()(vt).format("HH")),en=parseInt(Se()().format("HH")),mn=parseInt(Se()().format("mm"));if(!vt)return{disabledHours:()=>ut(0,en),disabledMinutes:()=>ut(0,mn)};if(Ut){const Bt=parseInt(Se()(Ut).format("HH")),tn=parseInt(Se()(Ut).format("mm"));return Se()(vt).isSame(Se()(Ut),"day")?{disabledHours:()=>ut(0,Bt),disabledMinutes:()=>Zt<=Bt?ut(0,tn):[]}:void 0}if(Se()(vt).isSame(Se()(),"day"))return{disabledHours:()=>ut(0,en),disabledMinutes:()=>Se()(vt).isSame(Se()(),"hour")&&Zt<=en?ut(0,mn):[]}},{RangePicker:yt}=He.default,{Option:ft}=Ne.default,ct=({shixunHomeworks:vt,loading:Ut,dispatch:Zt,classroomList:en,user:mn})=>{var Bt,tn,on,Mn,Dn,sn,rn,Ht,Tt;const St=(0,he.useParams)(),{workSetting:Qt,workList:gt,shixunWorkList:bt,headerInfo:Yt,changeData:kt}=vt,[Mt,ln]=(0,Oe.useState)(!1),[zn,Gn]=(0,Oe.useState)(!1);let[Hn,nr]=(0,Oe.useState)([]),[Xn,qt]=(0,Oe.useState)([]),[vn,Un]=(0,Oe.useState)({unified_setting:!1,publish_time:"",end_time:"",allow_late:!1,unified_late:!0,late_time:"",late_penalty:0,penalty_type:ie.Q.Percent,challenge_settings:[],work_efficiency:!1,shixun_evaluation:"",answer_open_evaluation:!1,answer_public:!1,score_open:!1,comment_public:!0,total_score:"",eff_score:0,action_analysis:!1,work_end_forbid_evaluate:!1});const[Ln,yr]=(0,Oe.useState)({}),[kr,Dr]=(0,Oe.useState)({});(0,Oe.useEffect)(()=>()=>{nr([])},[]),(0,Oe.useEffect)(()=>{ln(!(0,ce.GJ)())},[(0,ce.GJ)()]);const Gr=()=>{Zt({type:"shixunHomeworks/getWorkSetting",payload:qe({},St)})};(0,Oe.useEffect)(()=>{if(!(Qt!=null&&Qt.course_id))return;Object.keys(vn).map(function(Er){vn[Er]=Qt[Er]}),(!vn.allow_late||!vn.unified_late)&&(vn.late_penalty=20,vn.penalty_type=ie.Q.Percent),vn.unified_setting||(vn.unified_late=!1,vn.unified_anonymous_comment=!1,vn.unified_anonymous_appeal=!1),Hn=JSON.parse(JSON.stringify(Qt.group_settings.map(Er=>ot(qe({},Er),{group_name:[Er.group_name]})).filter(Er=>Er.publish_time!==null))),Xn=JSON.parse(JSON.stringify(Qt.allow_late_settings.map(Er=>ot(qe({},Er),{group_name:[Er.group_name]})).filter(Er=>Er.late_time!==null))),Un(qe({},vn));const mr=(0,se.QE)((Hn==null?void 0:Hn.length)>0?Hn:[]);nr([...mr]),(Xn==null?void 0:Xn.length)<=0?qt([{penalty_type:ie.Q.Percent,late_penalty:20}]):qt([...Xn])},[Qt]);const Ma=()=>at(void 0,null,function*(){var mr,Er;if(((mr=mn==null?void 0:mn.userInfo)==null?void 0:mr.user_status)===2){(0,ue.Rd)();return}const ba=JSON.parse(JSON.stringify(vn));if(ba.challenge_settings.filter(gr=>!gr.hide),ba.categoryId=St.categoryId,(Er=ba.challenge_settings)!=null&&Er.every(gr=>!gr.checked)){be.ZP.warning("\u5173\u5361\u4E0D\u80FD\u5168\u90E8\u8BBE\u7F6E\u4E3A\u53EF\u4E0D\u505A");return}if(console.log(Hn),!vn.unified_setting)Hn=Hn==null?void 0:Hn.map(gr=>{var br;if(!gr.publish_time||!gr.end_time)throw be.ZP.error("\u8BF7\u628A\u53D1\u5E03\u65F6\u95F4\u586B\u5199\u5B8C\u6574"),new String("\u8BF7\u628A\u53D1\u5E03\u65F6\u95F4\u586B\u5199\u5B8C\u6574");if(!gr.group_name)throw be.ZP.error("\u8BF7\u9009\u62E9\u5206\u73ED\u540D\u79F0"),new String("\u8BF7\u9009\u62E9\u5206\u73ED\u540D\u79F0");return gr.group_name=typeof(gr==null?void 0:gr.group_name)=="string"?[gr==null?void 0:gr.group_name]:gr==null?void 0:gr.group_name,gr.group_id=(br=Qt.group_settings)==null?void 0:br.filter(_r=>{var ha;return(ha=gr==null?void 0:gr.group_name)==null?void 0:ha.includes(_r.group_name)}).map(_r=>_r.group_id||_r.id).toString().split(","),gr});else if(!vn.publish_time||!vn.end_time)throw be.ZP.error("\u53D1\u5E03\u622A\u6B62\u65F6\u95F4\u4E0D\u80FD\u4E3A\u7A7A"),new String("\u53D1\u5E03\u622A\u6B62\u65F6\u95F4\u4E0D\u80FD\u4E3A\u7A7A");if(ba.group_settings=Hn,vn.allow_late)if(vn.unified_late){if(vn.late_penalty===null||vn.late_penalty===void 0||vn.late_penalty<0||vn.late_penalty>100)throw be.ZP.error("\u8FDF\u4EA4\u6263\u5206\u586B\u5199\u533A\u95F4\u4E3A0~100"),new String("\u8FDF\u4EA4\u6263\u5206\u586B\u5199\u533A\u95F4\u4E3A0~100");if(!vn.late_time)throw be.ZP.error("\u8BF7\u628A\u622A\u6B62\u65F6\u95F4\u586B\u5199\u5B8C\u6574"),new String("\u8BF7\u628A\u622A\u6B62\u65F6\u95F4\u586B\u5199\u5B8C\u6574")}else Xn=Xn==null?void 0:Xn.map(gr=>{var br,_r;if(gr.late_penalty===null||gr.late_penalty===void 0||gr.late_penalty<0||gr.late_penalty>100)throw be.ZP.error("\u8FDF\u4EA4\u6263\u5206\u586B\u5199\u533A\u95F4\u4E3A0~100"),new String("\u8FDF\u4EA4\u6263\u5206\u586B\u5199\u533A\u95F4\u4E3A0~100");if(!gr.late_time)throw be.ZP.error("\u8BF7\u628A\u622A\u6B62\u65F6\u95F4\u586B\u5199\u5B8C\u6574"),new String("\u8BF7\u628A\u622A\u6B62\u65F6\u95F4\u586B\u5199\u5B8C\u6574");if(!gr.group_name)throw be.ZP.error("\u8BF7\u9009\u62E9\u5206\u73ED\u540D\u79F0"),new String("\u8BF7\u9009\u62E9\u5206\u73ED\u540D\u79F0");return gr.group_name=typeof(gr==null?void 0:gr.group_name)=="string"?[gr==null?void 0:gr.group_name]:gr==null?void 0:gr.group_name,gr.group_id=(_r=(br=gr==null?void 0:gr.group_name)==null?void 0:br.map(ha=>{var Ct,we;let Be=(we=(Ct=Qt.group_settings)==null?void 0:Ct.filter(Le=>(Le==null?void 0:Le.group_name)===ha))==null?void 0:we[0];return Be==null?void 0:Be.group_id}))==null?void 0:_r.toString().split(","),gr}),ba.allow_late_settings=Xn;let Fn=yield(0,Ie.Tr)({homework_common_ids:[parseInt(St.categoryId)],course_id:St.coursesId,type:"homework_common"});(Fn==null?void 0:Fn.student_count)===0?Ja(ba):(Dr(ba),yr(Fn))}),Ja=mr=>{var Er;if(mr.total_score===null){be.ZP.warning("\u603B\u5206\u503C\u4E0D\u80FD\u4E3A\u7A7A");return}if(mr!=null&&mr.work_efficiency&&mr.eff_score===null){be.ZP.warning("\u6548\u7387\u5206\u4E0D\u80FD\u4E3A\u7A7A");return}const ba=mr.challenge_settings.reduce((br,_r)=>br+Number(_r.challenge_score),0);if((ba==null?void 0:ba.toFixed(10))!==((Er=mr.total_score-mr.eff_score)==null?void 0:Er.toFixed(10))){be.ZP.warning(`\u6548\u7387\u5206\u52A0\u5173\u5361\u4EFB\u52A1\u603B\u5206\u5FC5\u987B\u7B49\u4E8E\u603B\u5206\u503C\uFF1A${mr.total_score}\u5206`);return}const Fn={shixun_evaluation:mr.shixun_evaluation,challenge_settings:mr.challenge_settings};let gr=()=>{var br;const _r=()=>at(void 0,null,function*(){Gn(!0),(yield(0,te.ZP)(`/api/homework_commons/${St.categoryId}/publish_setting.json`,{method:"post",body:qe({},mr)})).status===0&&(be.ZP.success("\u66F4\u65B0\u6210\u529F"),Gr(),Zt({type:"shixunHomeworks/getShixunWorkHeadInfo",payload:qe({},St)})),Gn(!1)});!(0,ne.isEqual)(kt,Fn)&&!((br=Yt==null?void 0:Yt.homework_status)!=null&&br.includes("\u672A\u53D1\u5E03"))?_e.default.confirm({title:"\u66F4\u65B0\u6210\u7EE9",content:"\u60A8\u6539\u52A8\u4E86\u672C\u6B21\u4F5C\u4E1A\u7684\u5173\u5361\u5F97\u5206\u8BBE\u7F6E\uFF0C\u8FD9\u53EF\u80FD\u5BFC\u81F4\u5DF2\u5B8C\u6210\u4F5C\u4E1A\u7684\u5B66\u751F\u7684\u6210\u7EE9\u4EA7\u751F\u9519\u8BEF\u3002\u70B9\u51FB\u201C\u786E\u5B9A\u201D\u6309\u94AE\u5C06\u4FDD\u5B58\u6700\u65B0\u8BBE\u7F6E\u5E76\u6309\u6700\u65B0\u8BBE\u7F6E\u66F4\u65B0\u5168\u73ED\u6210\u7EE9\u3002",okText:"\u786E\u8BA4",cancelText:"\u53D6\u6D88",onOk:_r}):_r()};Qt!=null&&Qt.high_resources_consume&&!(Qt!=null&&Qt.high_resources_consume_permission)?Zt({type:"classroomList/setActionTabs",payload:{key:"\u6388\u6743\u4F7F\u7528",id:St.coursesId,type:"shixun",type_id:St.categoryId,name:Qt.homework_name,fn:()=>{gr()}}}):gr()},Na=(mr,Er,ba="group_id")=>{var Fn;return Er?Er.find(gr=>gr[ba]===mr):(Fn=Qt==null?void 0:Qt.group_settings)==null?void 0:Fn.find(gr=>gr.group_id[0]===mr)},Da=(Qt==null?void 0:Qt.allow_late)||(Qt==null?void 0:Qt.anonymous_comment),Di=mr=>{var Er,ba;const Fn=Na(mr,Qt==null?void 0:Qt.allow_late_settings,"id"),gr=Na(mr,Qt==null?void 0:Qt.anonymous_comment_settings),br=Na(mr);return(Qt==null?void 0:Qt.allow_late)&&Fn&&Se()(Fn==null?void 0:Fn.late_time)<=Se()()||(Qt==null?void 0:Qt.anonymous_comment)&&gr&&(gr==null?void 0:gr.evaluation_start)!==null||((ba=(Se()(br==null?void 0:br.end_time)<=Se()()&&((Er=Qt==null?void 0:Qt.allow_late_settings)==null?void 0:Er.filter(_r=>_r.group_id.includes(mr))))[0])==null?void 0:ba.late_time)!=null},_a=(0,Oe.useMemo)(()=>(Qt==null?void 0:Qt.allow_late)||(Qt==null?void 0:Qt.all_group_late),[Qt,Yt]),Vr=Qt==null?void 0:Qt.anonymous_comment,Ya=mr=>{if(!mr)return!1;const Er=Na(mr,Qt==null?void 0:Qt.anonymous_comment_settings);return(Qt==null?void 0:Qt.anonymous_comment)&&Er&&(Er==null?void 0:Er.evaluation_start)!==null},ui=(mr,Er)=>{var ba,Fn,gr;Zt({type:"classroomList/setActionTabs",payload:{key:"\u5206\u73ED\u53D1\u5E03-\u53D1\u5E03\u89C4\u5219\u62C6\u5206",data:mr,index:Er,rangePickerDisabled:Mt||(Se()()<=Se()((Fn=Na((ba=mr==null?void 0:mr.group_id)==null?void 0:ba[0]))==null?void 0:Fn.publish_time)?!1:[!0,Di((gr=mr==null?void 0:mr.group_id)==null?void 0:gr[0])]),disabledDate:Qt==null?void 0:Qt.course_end_date}})};return Fe.createElement("section",{className:fe.Z.form},Fe.createElement("div",{className:fe.Z.title},"\u4F5C\u4E1A\u53D1\u5E03",Fe.createElement("span",{className:"c-grey-666 font14",style:{fontWeight:400}},"\uFF08\u4F5C\u4E1A\u4E00\u65E6\u53D1\u5E03\u540E\u4E0D\u53EF\u53D8\u66F4\u8BD5\u9898\u53D1\u5E03\u6A21\u5F0F\uFF09")),Fe.createElement("div",null,Fe.createElement("div",{style:{background:"#F6F7F9",padding:"13px 30px",display:"flex",alignItems:"center"}},Fe.createElement(Me.ZP.Group,{disabled:Mt||!((Bt=Yt==null?void 0:Yt.homework_status)!=null&&Bt.includes("\u672A\u53D1\u5E03"))||(0,ce.Rm)()&&!((tn=en.AssistantObject.practice)!=null&&tn.can_publish),value:vn.unified_setting,onChange:mr=>{var Er;if(!((Er=Yt==null?void 0:Yt.homework_status)!=null&&Er.includes("\u672A\u53D1\u5E03"))){be.ZP.error("\u5DF2\u53D1\u5E03\uFF0C\u4E0D\u80FD\u518D\u4FEE\u6539\u7EDF\u4E00\u8BBE\u7F6E");return}if(vn.unified_setting=!vn.unified_setting,vn.unified_setting||(vn.unified_late=!1,qt([{late_penalty:5}])),Un(Object.assign({},vn)),vn.unified_setting===!1&&Hn==""){nr(Hn.concat({}));return}vn.unified_setting&&(nr([]),qt([{late_penalty:5}]))}},Fe.createElement(Me.ZP,{value:!0,disabled:Mt||!(Qt!=null&&Qt.manage_all_group),style:{marginRight:"50px"}},"\u7EDF\u4E00\u53D1\u5E03"),Fe.createElement(Me.ZP,{disabled:Mt||!((on=Qt==null?void 0:Qt.group_settings)!=null&&on.length),value:!1},"\u5206\u73ED\u53D1\u5E03")),((Mn=Qt==null?void 0:Qt.group_settings)==null?void 0:Mn.length)===0&&Fe.createElement("div",{style:{color:"rgba(0, 0, 0, 0.25)",height:"22px"}},"\uFF08\u672C\u8BFE\u5802\u65E0\u5206\u73ED\uFF0C\u4EC5\u652F\u6301\u9009\u62E9\u201C\u7EDF\u4E00\u53D1\u5E03\u201C\uFF09")),vn.unified_setting&&Fe.createElement("div",{style:{display:"flex",color:"#666666",background:"#F6F7F9",padding:"5px 30px",height:"50px",marginTop:"1px"}},Fe.createElement(ve.Z,{align:"middle"},Fe.createElement(Ee.Z,{style:{marginLeft:"23px"}},"\u53D1\u5E03\u65F6\u95F4"),Fe.createElement(Ee.Z,{className:"ml10"},Fe.createElement(He.default,{size:"large",disabled:Mt||!((Dn=Yt==null?void 0:Yt.homework_status)!=null&&Dn.includes("\u672A\u53D1\u5E03")||(sn=Yt==null?void 0:Yt.homework_status)!=null&&sn.includes("\u672A\u5F00\u59CB"))||(0,ce.Rm)()&&!((rn=en.AssistantObject.practice)!=null&&rn.can_publish),style:{width:170},placeholder:"\u8BF7\u9009\u62E9\u53D1\u5E03\u65F6\u95F4",showTime:{format:"HH:mm"},allowClear:!1,format:"YYYY-MM-DD HH:mm",disabledDate:mr=>nt(mr,Qt==null?void 0:Qt.course_end_date),disabledTime:mr=>lt(mr),value:vn.publish_time?Se()(vn.publish_time):"",onChange:(mr,Er)=>{vn.publish_time=Er,(vn.end_time==""||!vn.end_time)&&vn.unified_setting&&(vn.end_time=Se()(mr).add(7,"days").format("YYYY-MM-DD HH:mm:ss")),Un(Object.assign({},vn))}}))),Fe.createElement(ve.Z,{align:"middle",className:"pl30"},Fe.createElement(Ee.Z,null,"\u622A\u6B62\u65F6\u95F4"),Fe.createElement(Ee.Z,{className:"ml10"},Fe.createElement(He.default,{size:"large",style:{width:170},allowClear:!1,placeholder:"\u8BF7\u9009\u62E9\u622A\u6B62\u65F6\u95F4",showTime:{format:"HH:mm",defaultValue:Se()((0,se.U6)(),"HH:mm")},format:"YYYY-MM-DD HH:mm",disabled:(Qt==null?void 0:Qt.allow_late)&&(Qt==null?void 0:Qt.homework_status.includes("\u5DF2\u622A\u6B62"))||Mt||(Qt==null?void 0:Qt.allow_late)&&Se()()>=Se()(Qt==null?void 0:Qt.end_time)||(0,ce.Rm)()&&!((Ht=en.AssistantObject.practice)!=null&&Ht.can_publish),disabledDate:mr=>nt(mr,Qt==null?void 0:Qt.course_end_date,vn.publish_time),disabledTime:mr=>lt(mr,vn.publish_time),value:vn.end_time?Se()(vn.end_time):"",onChange:(mr,Er)=>{vn.end_time=Er,Un(Object.assign({},vn))}})))),!vn.unified_setting&&(Hn==null?void 0:Hn.length)>0&&Fe.createElement(ve.Z,{style:{display:"flex",color:"#666666",background:"#F6F7F9",padding:"5px 30px",marginTop:"1px"}},Hn&&Hn.map(function(mr,Er){var ba,Fn,gr,br,_r,ha,Ct;return Fe.createElement(Ee.Z,{span:24,key:Er},Fe.createElement(ve.Z,{gutter:[8,16],style:{display:"flex",alignItems:"center",marginBottom:Er==(Hn==null?void 0:Hn.length)-1?"0px":"10px"}},Fe.createElement("div",{style:{minWidth:85,marginRight:"15px",textAlign:"right"}},"\u53D1\u5E03\u89C4\u5219",Er+1),Fe.createElement(Ne.default,{disabled:Mt||((ba=Yt==null?void 0:Yt.homework_status)!=null&&ba.includes("\u672A\u53D1\u5E03")&&mr.id||Se()()<Se()(mr==null?void 0:mr.publish_time)?!1:!!(mr!=null&&mr.publish_time))||(0,ce.Rm)()&&!((Fn=en.AssistantObject.practice)!=null&&Fn.can_publish),mode:"multiple",className:fe.Z.multiple_select,style:{width:"250px"},value:mr.group_name,placeholder:"\u8BF7\u9009\u62E9\u5206\u73ED\u540D\u79F0",onChange:we=>{var Be;if((0,ce.Rm)()&&!((Be=en.AssistantObject.practice)!=null&&Be.can_publish)){be.ZP.warning("\u60A8\u672A\u83B7\u53D6\u6B64\u6743\u9650\uFF0C\u9700\u5411\u8BFE\u5802\u7BA1\u7406\u5458\u7533\u8BF7\u6743\u9650\u624D\u80FD\u4F7F\u7528\u6B64\u529F\u80FD");return}Hn[Er].group_name=we,Hn[Er].group_id=mr.group_id;const Le=(0,ne.flattenDeep)(Hn.map(Xe=>Xe.group_name)),je=Xn.map(Xe=>{let Et=(Xe==null?void 0:Xe.group_name)||[];return ot(qe({},Xe),{group_name:(0,ne.remove)(Et,xt=>Le.includes(xt))})});qt(je),nr(Hn.slice())},maxTagCount:4,maxTagPlaceholder:we=>Fe.createElement("div",{style:{cursor:"pointer"},onClick:()=>ui(mr,Er)},"+",we==null?void 0:we.length)},Qt.group_settings&&Qt.group_settings.map(function(we){if(!Hn.map(Le=>Le.group_name).flat().includes(we.group_name))return Fe.createElement(ft,{value:we.group_name,key:we.id},we.group_name)})),Fe.createElement("div",{className:"ml20"},Fe.createElement(yt,{size:"large",ranges:{\u6B64\u523B:[mr.publish_time?Se()(mr.publish_time):Se()(),Se()()]},allowClear:!1,disabled:Mt||(Se()()<=Se()((br=Na((gr=mr==null?void 0:mr.group_id)==null?void 0:gr[0]))==null?void 0:br.publish_time)?!1:[!0,Di((_r=mr==null?void 0:mr.group_id)==null?void 0:_r[0])]),style:{width:605},placeholder:["\u53D1\u5E03\u65F6\u95F4\uFF08\u5B66\u751F\u6536\u5230\u4F5C\u4E1A\u65F6\u95F4\uFF09","\u622A\u6B62\u65F6\u95F4\uFF08\u5B66\u751F\u201C\u6309\u65F6\u201D\u63D0\u4EA4\u4F5C\u54C1\u65F6\u95F4\u622A\u70B9\uFF09"],disabledDate:we=>nt(we,Qt==null?void 0:Qt.course_end_date),disabledTime:we=>lt(we),showTime:{showNow:!0,format:"HH:mm",defaultValue:[Se()((0,se.U6)(),"HH:mm"),Se()((0,se.U6)(),"HH:mm")]},format:"YYYY-MM-DD HH:mm",value:mr.publish_time&&[Se()(mr.publish_time),mr.end_time?Se()(mr.end_time):void 0],onChange:(we,Be)=>{var Le;if((0,ce.Rm)()&&!((Le=en.AssistantObject.practice)!=null&&Le.can_publish)){be.ZP.warning("\u60A8\u672A\u83B7\u53D6\u6B64\u6743\u9650\uFF0C\u9700\u5411\u8BFE\u5802\u7BA1\u7406\u5458\u7533\u8BF7\u6743\u9650\u624D\u80FD\u4F7F\u7528\u6B64\u529F\u80FD");return}Hn[Er].publish_time=Be[0],!mr.end_time&&Be[0]?Hn[Er].end_time=Se()(Be[0]).add(7,"days"):Hn[Er].end_time=Be[1],nr([...Hn])},onCalendarChange:(we,Be,Le)=>{if(Be!=null&&Be[0]&&!Be[1]){const je=Se()(Be[0]).add(7,"days");Hn[Er].publish_time=Be[0],Hn[Er].end_time=je,nr([...Hn])}}})),!Mt&&Fe.createElement("div",{style:{display:"flex",width:"50px"}},((ha=mr==null?void 0:mr.group_id)==null?void 0:ha.length)>1&&Fe.createElement(Pe.Z,{title:"\u89C4\u5219\u62C6\u5206"},Fe.createElement("i",{className:"iconfont icon-chaifen ml10",style:{cursor:"pointer",color:"#3061d0"},onClick:()=>ui(mr,Er)})),Hn.length<((Ct=Qt==null?void 0:Qt.group_settings)==null?void 0:Ct.length)&&Fe.createElement("i",{className:"iconfont icon-zengjia1 ml10 mr10",style:{cursor:"pointer",color:"#00B187"},onClick:()=>{var we;if((0,ce.Rm)()&&!((we=en.AssistantObject.practice)!=null&&we.can_publish)){be.ZP.warning("\u60A8\u672A\u83B7\u53D6\u6B64\u6743\u9650\uFF0C\u9700\u5411\u8BFE\u5802\u7BA1\u7406\u5458\u7533\u8BF7\u6743\u9650\u624D\u80FD\u4F7F\u7528\u6B64\u529F\u80FD");return}nr(Hn.concat({}))}}),((mr==null?void 0:mr.publish_time)&&Se()()<Se()(mr==null?void 0:mr.publish_time)||!(mr!=null&&mr.publish_time))&&Er!=0&&Fe.createElement("i",{className:"iconfont icon-shanjian1",style:{cursor:"pointer",color:"#E30000"},onClick:()=>{const we=(0,ne.cloneDeep)(Xn);we.forEach((Be,Le)=>{Be.group_name&&(Be.group_name=Be.group_name.filter(je=>{var Xe;return!((Xe=Hn[Er].group_name)!=null&&Xe.includes(je))}))}),Hn=Hn.filter((Be,Le)=>Er!==Le),qt(we),nr(Hn.slice()),setTimeout(()=>nr(Hn.slice()),10)}}))))}))),Fe.createElement(ve.Z,null,Fe.createElement(Ee.Z,null,Fe.createElement("div",{className:fe.Z.title,style:{marginTop:"30px"}},"\u8865\u4EA4\u8BBE\u7F6E",Fe.createElement("span",{className:"c-grey-666 font14",style:{fontWeight:400}},"\uFF08\u53EF\u5BF9\u5728\u4F5C\u4E1A\u53D1\u5E03\u65F6\u95F4\u8303\u56F4\u5185\u672A\u5B8C\u6210\u4F5C\u4E1A\u7684\u5B66\u751F\uFF0C\u5EF6\u957F\u65F6\u95F4\u8FDB\u884C\u8865\u4EA4\uFF09"))),Fe.createElement(Ee.Z,{span:24,style:{background:"#F6F7F9",padding:"13px 30px",display:"flex",alignItems:"center"}},Fe.createElement(xe.default,{checked:vn.allow_late,disabled:Mt||_a,onChange:mr=>{var Er;if((0,ce.Rm)()&&!((Er=en.AssistantObject.practice)!=null&&Er.can_late)){be.ZP.warning("\u60A8\u672A\u83B7\u53D6\u6B64\u6743\u9650\uFF0C\u9700\u5411\u8BFE\u5802\u7BA1\u7406\u5458\u7533\u8BF7\u6743\u9650\u624D\u80FD\u4F7F\u7528\u6B64\u529F\u80FD");return}mr.target.checked&&_e.default.warning({title:"\u5F00\u542F\u8865\u4EA4\u63D0\u793A",centered:!0,width:480,content:Fe.createElement("div",{style:{padding:10,background:"#f5f6f9"}},Fe.createElement("div",null,"1.\u5F00\u542F\u8865\u4EA4\u540E\u4E0D\u53EF\u5173\u95ED\uFF0C\u8865\u4EA4\u65B9\u5F0F\u63D0\u4EA4\u4FDD\u5B58\u540E\u4E0D\u53EF\u4FEE\u6539\uFF1B"),Fe.createElement("div",null,"2.\u8865\u4EA4\u622A\u6B62\u65F6\u95F4\u5FC5\u987B\u665A\u4E8E\u4F5C\u4E1A\u622A\u6B62\u65F6\u95F4\uFF1B"),Fe.createElement("div",null,"3.\u73ED\u7EA7\u9636\u6BB5\u8FDB\u5165\u201C\u8865\u4EA4\u4E2D\u201D\u5219\u4E0D\u53EF\u53D8\u66F4\u4F5C\u4E1A\u622A\u6B62\u65F6\u95F4\u3002"))}),vn.allow_late=!vn.allow_late,Xn==""&&qt([{late_penalty:5}]),Un(Object.assign({},vn))}},Fe.createElement("strong",null,"\u5F00\u542F\u8865\u4EA4")))),(vn==null?void 0:vn.allow_late)&&Fe.createElement("div",{style:{background:"#F6F7F9",padding:"10px 30px",marginTop:"1px",color:"#666666"}},Fe.createElement("div",{style:{display:"flex"}},Fe.createElement("div",{style:{width:"110px",textAlign:"right"}},"\u8865\u4EA4\u65B9\u5F0F"),Fe.createElement(Me.ZP.Group,{style:{marginLeft:"20px"},disabled:Mt||(Qt==null?void 0:Qt.anonymous_comment)||(Qt==null?void 0:Qt.allow_late),value:vn.unified_late,onChange:mr=>{var Er;if((0,ce.Rm)()&&!((Er=en.AssistantObject.practice)!=null&&Er.can_late)){be.ZP.warning("\u60A8\u672A\u83B7\u53D6\u6B64\u6743\u9650\uFF0C\u9700\u5411\u8BFE\u5802\u7BA1\u7406\u5458\u7533\u8BF7\u6743\u9650\u624D\u80FD\u4F7F\u7528\u6B64\u529F\u80FD");return}vn.unified_late=mr.target.value,Xn==""&&!mr.target.value&&qt([{penalty_type:ie.Q.Percent,late_penalty:20}]),Un(qe({},vn))}},(vn==null?void 0:vn.unified_setting)&&Fe.createElement(Me.ZP,{value:!0,disabled:!(Qt!=null&&Qt.manage_all_group),style:{marginRight:"50px"}},"\u7EDF\u4E00\u8865\u4EA4"),((Tt=Qt==null?void 0:Qt.group_settings)==null?void 0:Tt.length)>0&&Fe.createElement(Me.ZP,{value:!1},"\u5206\u73ED\u8865\u4EA4"))),vn!=null&&vn.unified_late?Fe.createElement(Fe.Fragment,null,Fe.createElement(ve.Z,{align:"middle",style:{marginTop:"10px"}},Fe.createElement(Ee.Z,{style:{width:"110px",textAlign:"right"}},"\u8865\u4EA4\u6263\u5206"),Fe.createElement(Ee.Z,{className:"ml20"},Fe.createElement(ie.Z,{disabled:Mt||Vr,value:{type:vn.penalty_type,inputValue:vn.late_penalty},onChange:mr=>{var Er;if((0,ce.Rm)()&&!((Er=en.AssistantObject.practice)!=null&&Er.can_late)){be.ZP.warning("\u60A8\u672A\u83B7\u53D6\u6B64\u6743\u9650\uFF0C\u9700\u5411\u7BA1\u7406\u5458\u7533\u8BF7\u6743\u9650\u624D\u80FD\u4F7F\u7528\u6B64\u529F\u80FD");return}Un(ot(qe({},vn),{late_penalty:mr.inputValue,penalty_type:mr.type}))}})),Fe.createElement(Ee.Z,{flex:"1",className:"ml5"},Fe.createElement("span",{className:"c-grey-c ml10"},vn.penalty_type===ie.Q.Number?"(\u8865\u4EA4\u65F6\u6309\u7167\u5B66\u751F\u603B\u6210\u7EE9\u6263\u5206)":"(\u5B66\u751F\u6700\u7EC8\u5F97\u5206=\u8865\u4EA4\u524D\u5F97\u5206+\u8865\u4EA4\u9636\u6BB5\u589E\u52A0\u7684\u5206\u503C*\uFF08100%-\u767E\u5206\u6BD4%\uFF09)"))),Fe.createElement(ve.Z,{align:"middle",style:{marginTop:"15px"}},Fe.createElement(Ee.Z,{style:{width:"110px",textAlign:"right"}},"\u8865\u4EA4\u622A\u6B62\u65F6\u95F4"),Fe.createElement(Ee.Z,{className:"ml20"},Fe.createElement(He.default,{size:"large",allowClear:!1,style:{width:170},placeholder:"\u8BF7\u9009\u62E9\u622A\u6B62\u65F6\u95F4",showTime:{format:"HH:mm",defaultValue:Se()((0,se.U6)(),"HH:mm")},format:"YYYY-MM-DD HH:mm",disabled:Mt||Vr,value:vn.late_time?Se()(vn.late_time):"",disabledDate:mr=>nt(mr,Qt==null?void 0:Qt.course_end_date),onChange:(mr,Er)=>{var ba;if((0,ce.Rm)()&&!((ba=en.AssistantObject.practice)!=null&&ba.can_late)){be.ZP.warning("\u60A8\u672A\u83B7\u53D6\u6B64\u6743\u9650\uFF0C\u9700\u5411\u8BFE\u5802\u7BA1\u7406\u5458\u7533\u8BF7\u6743\u9650\u624D\u80FD\u4F7F\u7528\u6B64\u529F\u80FD");return}vn.late_time=Er,Un(Object.assign({},vn))}})))):Xn.map(function(mr,Er){var ba;return Fe.createElement(Ee.Z,{span:24,key:Er},Fe.createElement(ve.Z,{style:{display:"flex",alignItems:"center",marginTop:"10px"}},Fe.createElement("div",{style:{width:"85px",marginLeft:"27px",textAlign:"right"}},"\u8865\u4EA4\u89C4\u5219",Er+1),Fe.createElement(Ne.default,{disabled:Mt||!((ba=Yt==null?void 0:Yt.homework_status)!=null&&ba.includes("\u672A\u53D1\u5E03"))&&mr.id||(Qt==null?void 0:Qt.anonymous_comment),mode:"multiple",className:fe.Z.multiple_select,style:{width:"212px",marginLeft:"18px"},value:typeof mr.group_name=="string"?[mr.group_name]:mr.group_name,placeholder:"\u8BF7\u9009\u62E9\u5206\u73ED\u540D\u79F0",onChange:Fn=>{var gr;if((0,ce.Rm)()&&!((gr=en.AssistantObject.practice)!=null&&gr.can_late)){be.ZP.warning("\u60A8\u672A\u83B7\u53D6\u6B64\u6743\u9650\uFF0C\u9700\u5411\u8BFE\u5802\u7BA1\u7406\u5458\u7533\u8BF7\u6743\u9650\u624D\u80FD\u4F7F\u7528\u6B64\u529F\u80FD");return}Xn[Er].group_name=Fn,Xn[Er].group_id=mr.group_id,qt(Xn.slice())}},Qt.group_settings&&Qt.group_settings.map(function(Fn){const gr=Xn.map(_r=>_r.group_name).flat(),br=Hn.map(_r=>_r.group_name).flat();if(vn!=null&&vn.unified_setting){if(!gr.includes(Fn.group_name))return Fe.createElement(ft,{value:Fn.group_name,key:Fn.id},Fn.group_name)}else if(br.includes(Fn.group_name)&&!gr.includes(Fn.group_name))return Fe.createElement(ft,{value:Fn.group_name,key:Fn.id},Fn.group_name)})),Fe.createElement("div",{className:"ml20 mr10"},"\u8865\u4EA4\u6263\u5206"),Fe.createElement(ie.Z,{disabled:Mt||Ya(mr.id),value:{type:mr.penalty_type,inputValue:mr.late_penalty},onChange:Fn=>{var gr;if((0,ce.Rm)()&&!((gr=en.AssistantObject.practice)!=null&&gr.can_late)){be.ZP.warning("\u60A8\u672A\u83B7\u53D6\u6B64\u6743\u9650\uFF0C\u9700\u5411\u8BFE\u5802\u7BA1\u7406\u5458\u7533\u8BF7\u6743\u9650\u624D\u80FD\u4F7F\u7528\u6B64\u529F\u80FD");return}Xn[Er].late_penalty=Fn.inputValue,Xn[Er].penalty_type=Fn.type,qt([...Xn])}}),Fe.createElement("div",{className:"ml20 mr10"},"\u8865\u4EA4\u622A\u6B62\u65F6\u95F4"),Fe.createElement(He.default,{size:"large",disabled:Mt||Ya(mr.id),style:{width:225},showTime:{format:"HH:mm",defaultValue:Se()((0,se.U6)(),"HH:mm")},placeholder:"\u8BF7\u9009\u62E9\u622A\u6B62\u65F6\u95F4",disabledDate:Fn=>nt(Fn,Qt==null?void 0:Qt.course_end_date),format:"YYYY-MM-DD HH:mm",value:mr!=null&&mr.late_time?Se()(mr.late_time):void 0,onChange:(Fn,gr)=>{var br;if((0,ce.Rm)()&&!((br=en.AssistantObject.practice)!=null&&br.can_late)){be.ZP.warning("\u60A8\u672A\u83B7\u53D6\u6B64\u6743\u9650\uFF0C\u9700\u5411\u8BFE\u5802\u7BA1\u7406\u5458\u7533\u8BF7\u6743\u9650\u624D\u80FD\u4F7F\u7528\u6B64\u529F\u80FD");return}Xn[Er].late_time=gr,qt([...Xn])}}),!Mt&&Fe.createElement("div",{style:{display:"flex",width:"50px"}},Fe.createElement("i",{className:"iconfont icon-zengjia1 ml10 mr10",style:{cursor:"pointer",color:"#00B187"},onClick:()=>{var Fn;if((0,ce.Rm)()&&!((Fn=en.AssistantObject.practice)!=null&&Fn.can_late)){be.ZP.warning("\u60A8\u672A\u83B7\u53D6\u6B64\u6743\u9650\uFF0C\u9700\u5411\u8BFE\u5802\u7BA1\u7406\u5458\u7533\u8BF7\u6743\u9650\u624D\u80FD\u4F7F\u7528\u6B64\u529F\u80FD");return}qt(Xn.concat({penalty_type:ie.Q.Percent,late_penalty:20}))}}),Er>0&&!mr.id&&Fe.createElement("i",{className:"iconfont icon-shanjian1",style:{cursor:"pointer",color:"#E30000"},onClick:()=>{var Fn;if((0,ce.Rm)()&&!((Fn=en.AssistantObject.practice)!=null&&Fn.can_late)){be.ZP.warning("\u60A8\u672A\u83B7\u53D6\u6B64\u6743\u9650\uFF0C\u9700\u5411\u8BFE\u5802\u7BA1\u7406\u5458\u7533\u8BF7\u6743\u9650\u624D\u80FD\u4F7F\u7528\u6B64\u529F\u80FD");return}Xn=Xn.filter((gr,br)=>Er!==br),qt(Xn.slice()),setTimeout(()=>qt(Xn.slice()),10)}}))))})),!Mt&&Fe.createElement(Fe.Fragment,null,Fe.createElement(pe.ZP,{type:"primary",size:"large",loading:zn,style:{width:"138px",marginTop:"30px"},onClick:()=>Ma()},"\u4FDD\u5B58")),Fe.createElement(me.Z,{onConfirm:(mr,Er)=>{Hn.splice(mr,0,...Er),Hn.splice(mr+Er.length,1);const ba=(0,se.QE)([...Hn]);nr([...ba])}}),Fe.createElement(Ce.Z,{resdata:Ln,type:"shixun",okloading:zn,oktext:(Ln==null?void 0:Ln.can_copy_num)===0?"\u786E\u5B9A":"\u4E00\u952E\u590D\u5236\u5E76\u66FF\u6362",onok:mr=>at(void 0,null,function*(){Gn(!0);let Er=yield(0,te.ZP)(`/api/courses/${St.coursesId}/batch_copy_shixuns.json`,{method:"post",body:{type:"homework_common",ids:[parseInt(St.categoryId)]}});Gn(!1),(Er==null?void 0:Er.status)===0&&Ja(kr)})}))};It.ZP=(0,he.connect)(({shixunHomeworks:vt,classroomList:Ut,loading:Zt,user:en})=>({shixunHomeworks:vt,classroomList:Ut,loading:Zt.effects,user:en}))(ct)},83636:function(At,It,Te){"use strict";Te.d(It,{Z:function(){return xe}});var Oe=Te(59301),He=Te(92832),Ne=Te(24905),be=Te(95237),_e={leftdiv:"leftdiv___aBzsX",listClass:"listClass___bxIEW",spantitle:"spantitle___v_Vc4",rightdiv:"rightdiv___xWu4M"},Me="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAbVJREFUOE+Nk79rFUEUhb+zE4OFwUD+CyGKKQQbSaMikQQ7C1tBBIsUQaJvl2Fn/cWDpAiIYJsi7YOIaCUWFoKKRhG0sbEzEImFGnev7G6yyXsxeU5159yZb87l3hG9q2WLiBO79FIwXpLp0s6cwITnQCMWrGDM43jdBckZQ0wTMdrong2R2Bxm0/98sZ8ozdcOEm5hjOC41u9Olc9ZQKySclOVkNhljCmCzjeAJM/4FbW5p+8k5tlggTtarfKxLSM6pHq4BTiL0SboaAOIi284jeP1nti+ApMEvdoEvEPMkOpJDZi1IwzwgqDh/wSsYZwk08ca4O0Qua3zW8OV5crmHg6u22EGbQ2nIbx+1IC6rrK+cYJW9gXEVrbxGUEj5bltQGJvgBapHu0LSGwCyEh1vBsQWwd4TNCDPg6uAOcImuoFlL1dJ9WNPg5uYwwRVM3MzhJmKIpjZK6e9bj4jNNpvL4QFx9wuoDXJ1r5IlH0llTtXgcXwa4SolObnYnwKnbFcfEcdJ+gpW6AtzFynuIop/Fn053u4CA5yzjO4FV9tu0Syl2S38WiSWBgD8AfoEPQ7Fb+LwIiyhxWwe2KAAAAAElFTkSuQmCC",ve=Te(21692),Ee=(pe,Ae,Se)=>new Promise((ce,te)=>{var ne=fe=>{try{se(Se.next(fe))}catch(he){te(he)}},le=fe=>{try{se(Se.throw(fe))}catch(he){te(he)}},se=fe=>fe.done?ce(fe.value):Promise.resolve(fe.value).then(ne,le);se((Se=Se.apply(pe,Ae)).next())}),xe=({data:pe,value:Ae=[],handleChangePage:Se,setSelectedRowKeys:ce,selectedRowKeys:te,onChange:ne=()=>{}})=>{const[le,se]=(0,Oe.useState)([]),[fe,he]=(0,Oe.useState)([]),[ie,ue]=(0,Oe.useState)([]);let[me,Ce]=(0,Oe.useState)(1),[Ie,Fe]=(0,Oe.useState)();return(0,Oe.useEffect)(()=>{se(pe),he([]),ue([])},[pe]),(0,Oe.useEffect)(()=>{ce&&(he(te),ue(te))},[te]),Oe.createElement("div",{style:{display:"flex",justifyContent:"space-between"}},Oe.createElement("div",{className:_e.leftdiv},Oe.createElement(He.default.Search,{size:"middle",onChange:Re=>Ee(void 0,null,function*(){se(pe.filter(Ue=>{var Ge;return(Ge=Ue==null?void 0:Ue.name)==null?void 0:Ge.includes(Re.target.value)}))}),placeholder:"\u53EF\u8F93\u5165\u73ED\u7EA7\u540D\u79F0\u67E5\u8BE2"}),le.length===0&&Oe.createElement(ve.Z,{styles:{margin:"70px auto"},customText:"\u6682\u65E0\u5206\u73ED"}),Oe.createElement("div",{style:{height:"85%",overflow:"auto",overflowX:"hidden"}},Oe.createElement(Ne.default.Group,{value:fe.map(Re=>`${Re.id}`),onChange:Re=>{ce(le.filter(Ue=>Re.includes(`${Ue.id}`)))},style:{marginTop:"10px",flexDirection:"column"}},le.map((Re,Ue)=>Oe.createElement(be.Z,{key:Re.id,style:{marginTop:"10px",lineHeight:"24px",display:"flex",width:200}},Oe.createElement(Ne.default,{style:{display:"flex",height:"24px",alignItems:"center"},disabled:Re.is_published,value:`${Re.id}`},Oe.createElement("div",{className:_e.listClass},Oe.createElement("span",{className:_e.spantitle,style:{width:Re.is_published?"108px":"170px"}},Re.name),Re.is_published&&Oe.createElement("span",{style:{width:"52px",height:"24px",background:"#B8B8B8",borderRadius:"13px",color:"white",lineHeight:"24px",textAlign:"center",display:"inline-block"}},"\u5DF2\u53D1\u5E03")))))))),Oe.createElement("div",{className:_e.rightdiv},Oe.createElement(He.default.Search,{onChange:Re=>{ue(fe.filter(Ue=>Ue.name.includes(Re.target.value)))},size:"middle",placeholder:"\u53EF\u8F93\u5165\u73ED\u7EA7\u540D\u79F0\u67E5\u8BE2"}),ie.length===0&&Oe.createElement(ve.Z,{styles:{margin:"70px auto"},customText:"\u6682\u672A\u9009\u62E9\u5206\u73ED"}),ie.length>0&&Oe.createElement("div",{style:{marginTop:"10px",height:"85%",overflow:"hidden",position:"relative"}},Oe.createElement("div",{style:{overflowX:"hidden",overflowY:"scroll",position:"absolute",left:0,top:0,right:-17,bottom:0}},ie.map((Re,Ue)=>Oe.createElement(be.Z,{justify:"space-between",style:{marginTop:"10px"},key:Re.id},Oe.createElement("div",{style:{overflow:"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis",marginRight:"5px",marginLeft:"5px",width:"75%"}},Re.name),Oe.createElement("img",{src:Me,style:{cursor:"pointer",height:"16px",marginRight:17},onClick:()=>{ce(fe.filter(Ge=>`${Ge.id}`!=`${Re.id}`))}})))))))}},25920:function(At,It,Te){"use strict";Te.d(It,{Z:function(){return ne}});var Oe=Te(59301),He=Te(90115),Ne=Te(5083),be=Te(43418),_e=Te(92832),Me=Te(95237),ve=Te(43604),Ee={title_tooltip:"title_tooltip___LLdrn",multiple_select:"multiple_select___kDXUm",modal_con:"modal_con___ERnkW"},Pe=Te(66649),xe=Te.n(Pe),pe=Te(22566),Ae=Te(21692),Se=Te(59301);const{RangePicker:ce}=Ne.default,te=({dispatch:le,classroomList:se,onConfirm:fe})=>{const[he,ie]=(0,Oe.useState)([]),[ue,me]=(0,Oe.useState)([]),[Ce,Ie]=(0,Oe.useState)("");(0,Oe.useEffect)(()=>{var Ue;if(se.actionTabs.key==="\u5206\u73ED\u53D1\u5E03-\u53D1\u5E03\u89C4\u5219\u62C6\u5206"){let Ge=se.actionTabs.data;console.log("data",Ge);let Je=(Ue=Ge==null?void 0:Ge.group_name)==null?void 0:Ue.map((Qe,rt)=>{var $e;return{group_id:Ge==null?void 0:Ge.group_id[rt],group_name:Ge==null?void 0:Ge.group_name[rt],is_admin:Ge==null?void 0:Ge.is_admin,end_time:Ge==null?void 0:Ge.end_time,publish_time:Array.isArray(Ge==null?void 0:Ge.publish_time)?($e=Ge==null?void 0:Ge.publish_time)==null?void 0:$e[0]:Ge==null?void 0:Ge.publish_time}});Je&&(ie([...Je]),me([...Je]))}},[se.actionTabs]);const Fe=()=>{le({type:"classroomList/setActionTabs",payload:{}}),Ie("")},Re=Ue=>{if(Ue){const Ge=ue==null?void 0:ue.filter(Je=>{var Qe,rt;return(rt=(Qe=Je==null?void 0:Je.group_name)==null?void 0:Qe.toLowerCase())==null?void 0:rt.includes(Ue==null?void 0:Ue.toLowerCase())});ie(Ge)}else ie(ue)};return Se.createElement(be.default,{width:980,title:Se.createElement("div",{style:{fontWeight:"bold",display:"flex"}},Se.createElement("div",null,"\u5206\u73ED\u53D1\u5E03-\u53D1\u5E03\u89C4\u5219\u62C6\u5206",Se.createElement("span",{className:Ee.title_tooltip},"\uFF08\u5F53\u5206\u73ED\u53D1\u5E03\u65F6\u95F4\u548C\u622A\u6B62\u65F6\u95F4\u4E0D\u76F8\u540C\u65F6\u5019\uFF0C\u73ED\u7EA7\u81EA\u52A8\u62C6\u5206\u51FA\u53BB\u65B0\u8D77\u89C4\u5219\uFF09")),Se.createElement(_e.default.Search,{allowClear:!0,placeholder:"\u8BF7\u8F93\u5165\u5173\u952E\u5B57\u8FDB\u884C\u641C\u7D22",style:{width:220,marginLeft:"60px"},value:Ce,onChange:Ue=>{Ie(Ue.target.value.trim()),Re(Ue.target.value.trim())}})),centered:!0,maskClosable:!1,open:se.actionTabs.key==="\u5206\u73ED\u53D1\u5E03-\u53D1\u5E03\u89C4\u5219\u62C6\u5206",onCancel:()=>Fe(),onOk:()=>{var Ue;fe((Ue=se.actionTabs)==null?void 0:Ue.index,ue),Fe()}},Se.createElement("div",{className:Ee.modal_con},Se.createElement(Me.Z,{style:{display:"flex",color:"#666666",padding:"5px",marginTop:"1px"}},(he==null?void 0:he.length)>0?he.map(function(Ue,Ge){var Je,Qe;return Se.createElement(ve.Z,{span:24,key:Ge},Se.createElement(Me.Z,{gutter:[8,16],style:{display:"flex",alignItems:"center",marginBottom:Ge==(he==null?void 0:he.length)-1?"0px":"10px"}},Se.createElement("div",{className:Ee.multiple_select,title:Ue.group_name},Ue.group_name),Se.createElement("div",{className:"ml20"},Se.createElement(ce,{size:"large",ranges:{\u6B64\u523B:[Ue.publish_time?xe()(Ue.publish_time):xe()(),xe()()]},allowClear:!1,disabled:(Je=se.actionTabs)==null?void 0:Je.rangePickerDisabled,style:{width:600},placeholder:["\u53D1\u5E03\u65F6\u95F4\uFF08\u5B66\u751F\u6536\u5230\u4F5C\u4E1A\u65F6\u95F4\uFF09","\u622A\u6B62\u65F6\u95F4\uFF08\u5B66\u751F\u201C\u6309\u65F6\u201D\u63D0\u4EA4\u4F5C\u54C1\u65F6\u95F4\u622A\u70B9\uFF09"],disabledDate:rt=>{var $e;return(0,pe.Q8)(rt,($e=se.actionTabs)==null?void 0:$e.disabledDate)},disabledTime:rt=>(0,pe.d0)(rt),showTime:{showNow:!0,format:"HH:mm",defaultValue:[xe()((0,pe.U6)(),"HH:mm"),xe()((0,pe.U6)(),"HH:mm")]},format:"YYYY-MM-DD HH:mm",value:Ue.publish_time&&[xe()(Ue.publish_time),Ue.end_time?xe()(Ue.end_time):void 0],onChange:(rt,$e)=>{he[Ge].publish_time=$e[0],he[Ge].end_time=$e[1],ie([...he]),ue.forEach(qe=>{qe.group_id===Ue.group_id&&(qe.publish_time=$e[0],qe.end_time=$e[1])}),me([...ue])}})),(Qe=se.actionTabs)!=null&&Qe.rangePickerDisabled?Se.createElement("i",{className:"iconfont icon-shanjian1 ml15",style:{color:"#E30000",opacity:"0.2",cursor:"not-allowed"}}):Se.createElement("i",{className:"iconfont icon-shanjian1 ml15",style:{cursor:"pointer",color:"#E30000"},onClick:()=>{he.splice(Ge,1),ie([...he]),ue.forEach((rt,$e)=>{rt.group_id===Ue.group_id&&ue.splice($e,1)}),me([...ue])}})))}):Se.createElement(Ae.Z,null))))};var ne=(0,He.connect)(({classroomList:le})=>({classroomList:le}))(te)},32686:function(At,It,Te){"use strict";Te.d(It,{Z:function(){return te}});var Oe=Te(59301),He=Te(43418),Ne=Te(24905),be=Te(38854),_e=Te(20834),Me=Te(1710),ve=Te(8591),Ee=Te(5112),Pe=Te(8636),xe=Te(76443),pe=Te(14433),Ae=Te(51571),Se=(ne,le,se)=>new Promise((fe,he)=>{var ie=Ce=>{try{me(se.next(Ce))}catch(Ie){he(Ie)}},ue=Ce=>{try{me(se.throw(Ce))}catch(Ie){he(Ie)}},me=Ce=>Ce.done?fe(Ce.value):Promise.resolve(Ce.value).then(ie,ue);me((se=se.apply(ne,le)).next())});const ce=50;var te=({data:ne,isAdminOrTeacher:le,onDelGroup:se,onChangeGroupName:fe,onPlusMember:he,onDelMember:ie,onExitGroup:ue,Transferteams:me})=>{var Ce,Ie;const[Fe,Re]=(0,Oe.useState)(0),[Ue,Ge]=(0,Oe.useState)(0);let[Je,Qe]=(0,Oe.useState)(),[rt,$e]=(0,Oe.useState)(),[qe,ot]=(0,Oe.useState)(!1),[at,ut]=(0,Oe.useState)(),[nt,lt]=(0,Oe.useState)(),[yt,ft]=(0,Oe.useState)(!1),[ct,vt]=(0,Oe.useState)(!1),[Ut,Zt]=(0,Oe.useState)("");function en(rn){let Ht=parseInt(rn.key,10);Zt(Ht),vt(!0)}function mn(rn){let Ht=parseInt(rn.key,10);He.default.confirm({title:"\u9000\u51FA\u63D0\u793A",okText:"\u786E\u5B9A",cancelText:"\u53D6\u6D88",content:"\u9000\u51FA\u5C06\u5BF9\u60A8\u4E0E\u7EC4\u5185\u6210\u5458\u5171\u540C\u5F00\u5C55\u6559\u7814\u6D3B\u52A8\u9020\u6210\u4E0D\u4FBF\u3002\u60A8\u786E\u5B9A\u8981\u9000\u51FA\u5417\uFF1F",onOk:()=>{ue(Ht)}})}function Bt(rn){let Ht=parseInt(rn,10);He.default.confirm({title:"\u9000\u51FA\u63D0\u793A",okText:"\u786E\u5B9A",icon:!1,className:Ae.Z.CustomTipsModalCss,cancelText:"\u53D6\u6D88",content:"\u9000\u51FA\u5C06\u5BF9\u60A8\u4E0E\u7EC4\u5185\u6210\u5458\u5171\u540C\u5F00\u5C55\u6559\u7814\u6D3B\u52A8\u9020\u6210\u4E0D\u4FBF\u3002\u60A8\u786E\u5B9A\u8981\u9000\u51FA\u5417\uFF1F",onOk:()=>{ue(Ht)}})}function tn(rn,Ht){He.default.confirm({title:"\u6E29\u99A8\u63D0\u793A",content:"\u786E\u5B9A\u8981\u5220\u9664\u8FD9\u4E2A\u7EC4\u5458\u5417?",icon:!1,className:Ae.Z.CustomTipsModalCss,okText:"\u786E\u5B9A",cancelText:"\u53D6\u6D88",onOk:()=>{ie(rn,Ht)}})}const on={display:"block",height:"30px",lineHeight:"30px"};function Mn(rn){lt(rn),ut(rn==null?void 0:rn.id),ft(!0)}const Dn=[{title:"\u6210\u5458\u540D\u79F0",dataIndex:"name",width:150},{title:"\u4F7F\u7528\u5171\u4EAB\u8BD5\u9898",dataIndex:"item_bank",align:"center",width:150,render:(rn,Ht,Tt)=>Oe.createElement(Ne.default,{disabled:Ht==null?void 0:Ht.is_creator,defaultChecked:rn,onChange:St=>{(0,Pe.fg)({id:at,member_id:Ht.id,clazz:"item_bank",enable:St.target.checked})}})},{title:"\u7F16\u8F91\u5171\u4EAB\u8BD5\u9898",dataIndex:"edit_item_bank",align:"center",width:150,render:(rn,Ht,Tt)=>Oe.createElement(Ne.default,{disabled:Ht==null?void 0:Ht.is_creator,defaultChecked:rn,onChange:St=>{(0,Pe.fg)({id:at,member_id:Ht.id,clazz:"edit_item_bank",enable:St.target.checked})}})},{title:"\u4F7F\u7528\u5171\u4EAB\u8BD5\u5377",dataIndex:"exercise",align:"center",render:(rn,Ht,Tt)=>Oe.createElement(Ne.default,{disabled:Ht==null?void 0:Ht.is_creator,defaultChecked:rn,onChange:St=>{(0,Pe.fg)({id:at,member_id:Ht.id,clazz:"exercise",enable:St.target.checked})}})}];function sn(rn){return Se(this,null,function*(){const Ht=yield(0,Pe.Gt)(rn==null?void 0:rn.id);ut(rn==null?void 0:rn.id),$e(Ht),ot(!0)})}return Oe.createElement("ul",{className:"teaching-lists"},ne.map((rn,Ht)=>Oe.createElement("li",{key:rn.id,style:{marginTop:Ht===0?30:16},onClick:()=>Re(Ht)},Oe.createElement("div",{className:"item-group"},Oe.createElement("span",{style:{color:"#000000",fontSize:16,fontWeight:600}},rn.name,"\u7684\u6559\u7814\u56E2\u961F"),Oe.createElement("div",{className:"action-group"})),Oe.createElement("div",{style:{display:"flex"}},Oe.createElement("span",{style:{marginTop:29,marginLeft:24,color:"#5F6367"}},"\u56E2\u961F\u6210\u5458\uFF1A"),Oe.createElement("ul",{className:"info",style:{flex:1}},rn.memers.map(Tt=>{var St;return Oe.createElement("li",{key:Tt.id||Tt.name,onClick:()=>{Ge(Tt.id)},className:"directionItemWrap"},Oe.createElement("div",{className:"hovename",style:{display:"flex",alignItems:"center",justifyContent:"center",fontWeight:400,fontSize:14,color:Tt!=null&&Tt.is_creater?"#000000":"#5F6367"}},((St=Tt.name)==null?void 0:St.length)>6?Tt.name.substr(0,6)+"....":Tt.name,Oe.createElement("img",{src:xe.Z,style:{marginLeft:5,display:!(Tt!=null&&Tt.is_creater)&&"none",height:25,width:78}})),rn.is_creat?Oe.createElement("div",{className:"groupActionWrap",style:{display:!(Tt!=null&&Tt.id)&&"none"}},Oe.createElement("a",{className:"btn-del",onClick:Qt=>{Qt.preventDefault(),Qt.stopPropagation(),tn(rn.id,Tt.id)}},"x")):null)})),rn.is_creat||le?Oe.createElement(be.Z,{overlayClassName:"dropdowns",dropdownRender:()=>Oe.createElement(_e.default,null,Oe.createElement(_e.default.Item,{onClick:()=>{fe(rn)}},"\u4FEE\u6539\u540D\u79F0"),Oe.createElement(_e.default.Item,{disabled:rn.memers.length>=50,onClick:()=>{he(rn)}},"\u6DFB\u52A0\u6210\u5458"),rn.is_creat&&Oe.createElement(_e.default.Item,{onClick:()=>sn(rn)},"\u6743\u9650\u914D\u7F6E"),rn.is_creat&&Oe.createElement(_e.default.Item,{onClick:()=>Mn(rn)},"\u8F6C\u8BA9\u56E2\u961F"),Oe.createElement(_e.default.Item,{key:rn.id+"",onClick:rn.is_creat?en:mn},rn.is_creat?"\u89E3\u6563":"\u9000\u51FA"))},Oe.createElement("span",{style:{marginTop:30,marginRight:24,color:"#165DFF",fontSize:14,height:20}},"\u8BBE\u7F6E",Oe.createElement("i",{style:{marginLeft:5,color:"#979797"},className:"iconfont icon-a-bianzu11"}))):Oe.createElement("span",{key:rn.id+"",style:{marginTop:30,marginRight:24,color:"#165DFF",fontSize:14,height:20},className:"c-grey-c",onClick:()=>Bt(rn.id)},"\u9000\u51FA")))),Oe.createElement(He.default,{width:700,wrapClassName:Ae.Z.CustomCss,title:"\u6743\u9650\u914D\u7F6E",footer:null,open:qe,onCancel:()=>ot(!1)},Oe.createElement(pe.Gi,null,Oe.createElement(Me.default,{dataSource:rt==null?void 0:rt.members,columns:Dn,pagination:!1,scroll:{y:240}})),Oe.createElement("p",{style:{color:"#FF9D18",marginTop:5}},"*\u9009\u4E2D\u4EE3\u8868\u8BE5\u6210\u5458\u53EF\u4EE5\u4F7F\u7528\u56E2\u961F\u5185\u6240\u6709\u6210\u5458\u5171\u4EAB\u7684\u8D44\u6E90\uFF0C\u5426\u5219\u4E0D\u53EF\u4EE5")),Oe.createElement(He.default,{title:"\u89E3\u6563\u63D0\u793A",wrapClassName:Ae.Z.CustomCss,onOk:()=>{se(Ut),vt(!1)},open:ct,onCancel:()=>vt(!1)},Oe.createElement("p",null,"\u89E3\u6563\u6559\u7814\u56E2\u961F\u5C06\u5BF9\u56E2\u961F\u6210\u5458\u4E4B\u95F4\u5171\u4EAB\u5B9E\u8BAD\u3001\u8BD5\u5377\u7B49\u529F\u80FD\u9020\u6210\u4E0D\u4FBF\u3002"),Oe.createElement("p",null,"\u60A8\u786E\u5B9A\u8981\u89E3\u6563\u672C\u6559\u7814\u56E2\u961F\u5417\uFF1F")),Oe.createElement(He.default,{wrapClassName:Ae.Z.CustomCss,title:"\u8F6C\u8BA9\u56E2\u961F",onOk:()=>{if(!Je){ve.ZP.info("\u521B\u5EFA\u4EBA\u4E0D\u80FD\u4E3A\u7A7A");return}me(at,Je),ft(!1),Je=""},open:yt,onCancel:()=>{ft(!1),Je=""}},Oe.createElement("p",{style:{textAlign:"left"}},"\u9009\u4E2D\u7684\u6210\u5458\u5C06\u4F1A\u4EE5\u65B0\u7684\u521B\u5EFA\u4EBA\u8EAB\u4EFD\u63A5\u7BA1\u56E2\u4F53 ",Oe.createElement("br",null)," \u60A8\u5C06\u4E0D\u518D\u62E5\u6709\u521B\u5EFA\u4EBA\u7684\u8EAB\u4EFD\u548C\u6743\u9650\uFF0C\u4F46\u60A8\u4ECD\u662F\u56E2\u961F\u4E2D\u7684\u4E00\u5458"),Oe.createElement("div",null,Oe.createElement(Ee.ZP.Group,{defaultValue:[],onChange:rn=>{Je=rn.target.value,Qe(rn.target.value)}},(Ie=(Ce=nt==null?void 0:nt.memers)==null?void 0:Ce.filter(rn=>rn.is_teacher))==null?void 0:Ie.map((rn,Ht)=>Oe.createElement(Ee.ZP,{style:on,value:rn==null?void 0:rn.id},rn==null?void 0:rn.name))))))}},30702:function(At,It,Te){"use strict";var Oe=Te(59301),He=Te(78241),Ne=Te(43418),be=Te(92832),_e=Te(51571);It.Z=({callback:Me,visible:ve,onCancel:Ee,id:Pe,name:xe})=>{function pe(Se){Me(Se)}const[Ae]=He.default.useForm();return(0,Oe.useEffect)(()=>{Ae.setFieldsValue({name:xe})},[xe]),Oe.createElement(Ne.default,{centered:!0,title:Pe?"\u4FEE\u6539\u540D\u79F0":"\u65B0\u5EFA",open:ve,onCancel:Ee,onOk:()=>{Ae.submit()},wrapClassName:_e.Z.CustomCss},Oe.createElement(He.default,{form:Ae,initialValues:{name:xe},onFinish:pe},Oe.createElement(He.default.Item,{label:"\u6559\u7814\u56E2\u961F\u540D\u79F0",name:"name",rules:[{required:!0,message:"\u8BF7\u8F93\u5165\u4E0D\u8D85\u8FC720\u5B57\u7684\u540D\u79F0"}]},Oe.createElement(be.default,{placeholder:"\u8BF7\u8F93\u5165\u4E0D\u8D85\u8FC720\u5B57\u7684\u540D\u79F0",maxLength:20}))))}},79304:function(At,It,Te){"use strict";Te.d(It,{J:function(){return me},Z:function(){return Ue}});var Oe=Te(59301),He=Te(3113),Ne=Te(43418),be=Te(58103),_e=Te(8636),Me=Te(30702),ve=Te(32686),Ee=Te(51571),Pe=Te(14433),xe=Te(22566),pe=Te(90115),Ae=Te(22779),Se=Object.defineProperty,ce=Object.defineProperties,te=Object.getOwnPropertyDescriptors,ne=Object.getOwnPropertySymbols,le=Object.prototype.hasOwnProperty,se=Object.prototype.propertyIsEnumerable,fe=(Ge,Je,Qe)=>Je in Ge?Se(Ge,Je,{enumerable:!0,configurable:!0,writable:!0,value:Qe}):Ge[Je]=Qe,he=(Ge,Je)=>{for(var Qe in Je||(Je={}))le.call(Je,Qe)&&fe(Ge,Qe,Je[Qe]);if(ne)for(var Qe of ne(Je))se.call(Je,Qe)&&fe(Ge,Qe,Je[Qe]);return Ge},ie=(Ge,Je)=>ce(Ge,te(Je)),ue=(Ge,Je,Qe)=>new Promise((rt,$e)=>{var qe=ut=>{try{at(Qe.next(ut))}catch(nt){$e(nt)}},ot=ut=>{try{at(Qe.throw(ut))}catch(nt){$e(nt)}},at=ut=>ut.done?rt(ut.value):Promise.resolve(ut.value).then(qe,ot);at((Qe=Qe.apply(Ge,Je)).next())});function me({children:Ge}){return Oe.createElement("div",{className:"no-data"},Oe.createElement("img",{src:be,alt:"no-data",width:300}),Ge)}const Ce={data:[],loading:!0,selectedGroup:{},showFormPanel:!1,showMemberPanel:!1,index:0};var Ie=(Ge=>(Ge[Ge.INITDATA=0]="INITDATA",Ge[Ge.SHOWLOADING=1]="SHOWLOADING",Ge[Ge.SHOWFORMPANEL=2]="SHOWFORMPANEL",Ge[Ge.SHOWMEMBERPANEL=3]="SHOWMEMBERPANEL",Ge[Ge.SELECTGROUP=4]="SELECTGROUP",Ge[Ge.SETINDEX=5]="SETINDEX",Ge))(Ie||{});function Fe(Ge,Je){switch(Je.type){case 0:return he(he({},Ge),Je.payload);case 1:return ie(he({},Ge),{loading:Je.payload});case 5:return ie(he({},Ge),{index:Je.payload});case 2:return he(he({},Ge),Je.payload);case 3:return he(he({},Ge),Je.payload);case 4:return ie(he({},Ge),{selectedGroup:Je.payload,showFormPanel:!0});default:throw new Error}}function Re({user:Ge}){var Je;const Qe=(0,pe.useLocation)(),[rt]=(0,pe.useSearchParams)(),[$e,qe]=(0,Oe.useReducer)(Fe,Ce),{data:ot,index:at,loading:ut,showFormPanel:nt,selectedGroup:lt,showMemberPanel:yt}=$e,ft=(Je=Ge.userInfo)==null?void 0:Je.role,[ct,vt]=(0,Oe.useState)(rt.get("category")||"0"),Ut=(0,Oe.useMemo)(()=>{let gt=[],bt=[];if(ot){for(let Yt of ot)Yt.is_creat?gt.push(Yt):bt.push(Yt);return[gt,bt]}},[ot]);(0,Oe.useEffect)(()=>{ft===15&&qe({type:5,payload:1})},[ft]);function Zt(){return ue(this,null,function*(){const gt=yield(0,_e.XY)();(gt==null?void 0:gt.status)!==401&&qe({type:0,payload:{loading:!1,showFormPanel:!1,data:gt.groups,index:rt.get("category")||0}})})}(0,Oe.useEffect)(()=>{Zt()},[]);function en(gt){return ue(this,null,function*(){lt.id?yield(0,_e.n3)(lt.id,gt):yield(0,_e.Nd)(gt),Zt()})}function mn(){qe({type:2,payload:{showFormPanel:!0,selectedGroup:{}}})}function Bt(gt){qe({type:4,payload:gt})}function tn(){qe({type:2,payload:{showFormPanel:!1}})}function on(){qe({type:3,payload:{showMemberPanel:!1,selectedGroup:{}}})}function Mn(gt){qe({type:3,payload:{showMemberPanel:!0,selectedGroup:gt}})}function Dn(gt,bt){return ue(this,null,function*(){yield(0,_e.UA)(gt,bt),Zt()})}function sn(gt){return ue(this,null,function*(){yield(0,_e.eE)(gt),Zt()})}function rn(gt){return ue(this,null,function*(){yield(0,_e.U2)(gt),Zt()})}function Ht(gt,bt){return ue(this,null,function*(){yield(0,_e.Gj)(gt,bt),Zt()})}function Tt(gt){qe({type:5,payload:parseInt(gt.target.id,10)})}function St(gt,bt){return ue(this,null,function*(){on(),yield(0,_e.E2)({user_ids:gt,group_id:bt}),Zt()})}const Qt=[{id:"0",name:"\u6211\u521B\u5EFA\u7684"},{id:"1",name:"\u6211\u52A0\u5165\u7684"}];return Oe.createElement(Oe.Fragment,null,Oe.createElement("div",{className:"teaching-circling-container",style:{paddingLeft:45,paddingTop:22}},Oe.createElement("div",{className:"teaching-circling-body"},ft===15?null:Oe.createElement(Pe.YG,{value:ct,onChange:gt=>{var bt;(bt=window.location.href.toString())!=null&&bt.includes("category")?(0,xe.jz)("category",gt):window.history.replaceState(null,"",window.location.href.indexOf("?")>-1?window.location.href+`&category=${gt}`:`?category=${gt}`),vt(gt),qe({type:5,payload:parseInt(gt,10)})},tabBarExtraContent:Oe.createElement(He.ZP,{type:"primary",disabled:ot.length>=50,style:{width:60,height:32,borderRadius:16,border:"1px solid #BACFFE",background:"#F6F7F9 linear-gradient(180deg, #FFFFFF 0%, #F6F7F9 100%)",boxShadow:"0px 2px 4px 0px #E0DFE1, inset 0px 1px 3px 0px rgba(255,255,255,0.5)",color:"#3061D0"},title:ot.length>=50?"\u60A8\u52A0\u5165\u7684\u6559\u7814\u7EC4\u5DF2\u8FBE\u4E0A\u9650":"",onClick:mn},"\u65B0\u5EFA"),className:"mb25",dataSource:Qt}),Oe.createElement("div",{className:Ut[at].length===0?"nodata-content":"main-content"},Ut[at].length===0?Oe.createElement(me,null,ft<=12?Oe.createElement(Oe.Fragment,null," ",Oe.createElement("p",null,"\u6559\u7814\u56E2\u961F\u6709\u52A9\u4E8E\u4F60\u548C\u4F60\u7684\u4F19\u4F34\u4EEC\u4E00\u8D77\u521B\u5EFA\u5B9E\u8BAD\u3001\u534F\u540C\u6559\u5B66\uFF0C\u6216\u5F00\u5C55\u5176\u4ED6\u6559\u7814\u6D3B\u52A8\u3002")," ",Oe.createElement("p",null,"\u5F53\u524D\u60A8\u5C1A\u672A\u7EC4\u5EFA\u5C5E\u4E8E\u81EA\u5DF1\u6559\u7814\u56E2\u961F\uFF0C\u5FEB\u53BB\u7EC4\u5EFA\u5427\uFF01")," "):Oe.createElement("p",null," \u60A8\u5C1A\u672A\u52A0\u5165\u4EFB\u4F55\u6559\u7814\u5C0F\u7EC4\uFF0C\u8BF7\u7B49\u5F85\u8001\u5E08\u7684\u53EC\u5524\u5427\uFF01 ")):Oe.createElement(ve.Z,{onExitGroup:rn,Transferteams:Ht,onPlusMember:Mn,onDelMember:Dn,onDelGroup:sn,isAdminOrTeacher:ft<=12,onChangeGroupName:Bt,data:Ut[at]})))),Oe.createElement(Me.Z,{callback:en,visible:nt,onCancel:tn,id:lt.id,name:lt.name}),Oe.createElement(Ne.default,{centered:!0,title:"\u6DFB\u52A0\u6210\u5458",open:yt,onCancel:on,footer:null,width:1150,bodyStyle:{minHeight:200},wrapClassName:Ee.Z.CustomCss},Oe.createElement(Ae.Z,{container_id:lt.id,container_type:4,onSelect:St,onCancel:on})))}var Ue=(0,pe.connect)(({user:Ge})=>({user:Ge}))(Re)},8636:function(At,It,Te){"use strict";Te.d(It,{E2:function(){return _e},Gj:function(){return ve},Gt:function(){return xe},Nd:function(){return Ne},U2:function(){return Me},UA:function(){return Ee},XY:function(){return He},eE:function(){return Pe},fg:function(){return pe},n3:function(){return be}});var Oe=Te(64866);function He(){return(0,Oe.U2)("teach_groups.json")}function Ne(Ae){return(0,Oe.v_)("teach_groups.json",Ae)}function be(Ae,Se){return(0,Oe.gz)(`teach_groups/${Ae}.json`,Se)}function _e(Ae){return(0,Oe.v_)("teach_group_members.json",Ae)}function Me(Ae){return(0,Oe.IV)(`teach_group_members/${Ae}.json`)}function ve(Ae,Se){return(0,Oe.gz)(`teach_groups/${Ae}/change_admin.json`,{member_id:Se})}function Ee(Ae,Se){return(0,Oe.IV)(`teach_groups/${Ae}/del_member.json`,{member_id:Se})}function Pe(Ae){return(0,Oe.IV)(`teach_groups/${Ae}.json`)}function xe(Ae){return(0,Oe.U2)(`teach_groups/${Ae}/show_permission.json`)}function pe(Ae){return(0,Oe.gz)(`teach_groups/${Ae==null?void 0:Ae.id}/update_permission.json`,Ae)}},10791:function(At,It,Te){"use strict";Te.r(It),Te.d(It,{default:function(){return yX}});var Oe={};Te.r(Oe),Te.d(Oe,{add:function(){return cL},adjoint:function(){return JT},clone:function(){return bC},copy:function(){return B0},create:function(){return jl},decompose:function(){return tL},determinant:function(){return wC},equals:function(){return hL},exactEquals:function(){return tA},frob:function(){return uL},fromQuat:function(){return eA},fromQuat2:function(){return eL},fromRotation:function(){return OC},fromRotationTranslation:function(){return BC},fromRotationTranslationScale:function(){return nL},fromRotationTranslationScaleOrigin:function(){return Rv},fromScaling:function(){return Bg},fromTranslation:function(){return Wh},fromValues:function(){return CC},fromXRotation:function(){return TC},fromYRotation:function(){return LC},fromZRotation:function(){return $E},frustum:function(){return rL},getRotation:function(){return ap},getScaling:function(){return R0},getTranslation:function(){return rp},identity:function(){return Uh},invert:function(){return kf},lookAt:function(){return _C},mul:function(){return jC},multiply:function(){return Mc},multiplyScalar:function(){return dL},multiplyScalarAndAdd:function(){return fL},ortho:function(){return FC},orthoNO:function(){return RC},orthoZO:function(){return kC},perspective:function(){return aL},perspectiveFromFieldOfView:function(){return oL},perspectiveNO:function(){return NC},perspectiveZO:function(){return iL},rotate:function(){return qT},rotateX:function(){return DC},rotateY:function(){return IC},rotateZ:function(){return $T},scale:function(){return MC},set:function(){return qE},str:function(){return lL},sub:function(){return gL},subtract:function(){return zC},targetTo:function(){return sL},translate:function(){return N0},transpose:function(){return PC}});var He={};Te.r(He),Te.d(He,{circle:function(){return Ak},diamond:function(){return xk},rect:function(){return bk},simple:function(){return Pk},triangle:function(){return Z5},triangleRect:function(){return Ck},vee:function(){return Sk}});var Ne=Te(59301),be=Te(90115),_e=Te(8591),Me=Te(43418),ve=Te(3113),Ee={flex_box_center:"flex_box_center___wc3oP",flex_space_between:"flex_space_between___YV6tt",flex_box_vertical_center:"flex_box_vertical_center___DBgDc",flex_box_center_end:"flex_box_center_end___uIUDS",flex_box_column:"flex_box_column___kQEdA",banner:"banner____Henj",wrp:"wrp___PZhnF",titleWrap:"titleWrap___GqIYn",titleFlexEnd:"titleFlexEnd___yQ3st",title:"title___djFnh",titleName:"titleName___o55kJ",titleIcon:"titleIcon___iO27M",contentWrap:"contentWrap___EkBTW",verticalLine:"verticalLine___aj4o0",contentLeftWrap:"contentLeftWrap___O08fb",openCourseTag:"openCourseTag___M35c8",tagsWrap:"tagsWrap____zRBh",ratingWrap:"ratingWrap___FD4BS",ratingTitle:"ratingTitle___sKXr7",rating:"rating___pPcWF",popoverWrap:"popoverWrap___XLvdy",popverLeft:"popverLeft___JghVb",popoverRight:"popoverRight___iN5hL",popverScore:"popverScore___LpP2e",popoverRateWrap:"popoverRateWrap___y3lUU",popoverProgress:"popoverProgress___SPsPq",button:"button___w71Iu",operationWrap:"operationWrap___xfwLx",forkWrap:"forkWrap___PUfTF",fork:"fork___SPjy6",forkNum:"forkNum___fwVaA",buttonTransparent:"buttonTransparent___V0ey6",buttonLearnStatistics:"buttonLearnStatistics___sWuSx",publishPopverWrap:"publishPopverWrap___maOAE",colorFF6802:"colorFF6802___Gb0xJ",w140:"w140___XOi_m",nav:"nav___j9ULg",navLeft:"navLeft___EEDpJ",navContent:"navContent___p8ZjQ",flexRow:"flexRow___cGkPG",navRight:"navRight____bBx2",navLeftIcon:"navLeftIcon___yRiiz",colorOrange:"colorOrange___isY7L",contentItem:"contentItem___OdKIu",contentItemTitle:"contentItemTitle___MBdkH",contentItemText:"contentItemText___YDgQC",classButton:"classButton___gidYF",bg28e:"bg28e___AuhUg",bgGray:"bgGray___zHFT7",btn:"btn___n_xyk",name:"name___AkijA",titleright:"titleright___AQpHe",edits:"edits___h0Etp",edit:"edit___YwQgI",deletes:"deletes___AEqz3",delete:"delete___C4ZUp",content:"content___urv2c",go:"go___BHrT0",goicon:"goicon___b33d6",tabs:"tabs___bmtXw"},Pe=Te(29590),xe=Te(78241),pe=Te(5112),Ae=Te(19842),Se=Te(92832),ce=Te(71418),te=Te(64866),ne={applyPublicContainer:"applyPublicContainer___pImhb",applyPublicContent:"applyPublicContent____dPHq",spin:"spin___bBN3v",tips:"tips___uXmwo",action:"action___D3zVt"},le=Te(87169),se=Te(59301),fe=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(oe){b(oe)}},ee=ae=>{try{re(y.throw(ae))}catch(oe){b(oe)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())}),ie=({type:E,onCancel:a,onOk:y})=>{const[x]=xe.default.useForm(),[b,z]=(0,Ne.useState)(1),[ee,re]=(0,Ne.useState)(!1),[ae,oe]=(0,Ne.useState)([]);(0,Ne.useEffect)(()=>{x.setFieldValue("type",1),de()},[]);const de=()=>fe(void 0,null,function*(){if(E){re(!0);const ye=yield(0,te.ZP)("/api/disciplines.json",{method:"get",params:{source:E}});oe(ye.disciplines||[]),re(!1)}}),ge=()=>{const{sub_discipline_id:ye,discipline_name:De,sub_discipline_name:ke,type:ze}=x.getFieldsValue();if((!ye||ye&&ye.length===0)&&(!De||!ke))return _e.ZP.warning("\u8BF7\u9009\u62E9\u65B9\u5411&\u8BFE\u7A0B"),!1;y({user_customize:ze==2,sub_discipline_id:ze==1?[ye[1]]:null,discipline_name:De,sub_discipline_name:ke})};return se.createElement(Me.default,{width:640,className:ne.applyPublicContainer,centered:!0,title:"\u516C\u5F00\u8BFE\u7A0B",okText:"\u7533\u8BF7\u516C\u5F00",open:!0,onCancel:()=>{a(),x.resetFields()},onOk:()=>{x.validateFields().then(ye=>{if(b==2&&(ye.discipline_name.replaceAll(" ","").length<=0||ye.sub_discipline_name.replaceAll(" ","").length<=0)){_e.ZP.info("\u65B9\u5411\u6216\u8BFE\u7A0B\u4E0D\u80FD\u4E3A\u7A7A\uFF0C\u8BF7\u586B\u5199\u540E\u518D\u63D0\u4EA4\uFF01");return}ge(),x.resetFields()})}},se.createElement("div",{className:ne.applyPublicContent},se.createElement("div",{className:ne.tips},se.createElement(le.Z,{style:{color:"#FF8C29",marginRight:10}}),"\u586B\u5199\u5B9E\u8DF5\u8BFE\u7A0B\u7684\u65B9\u5411&\u8BFE\u7A0B\u4E4B\u540E\uFF0C\u65B9\u53EF\u7533\u8BF7\u516C\u5F00"),se.createElement(xe.default,{labelAlign:"left",form:x},se.createElement(xe.default.Item,{name:"type"},se.createElement(pe.ZP.Group,{onChange:ye=>{z(ye.target.value),ye.target.value==1?x.setFieldsValue({discipline_name:"",sub_discipline_name:""}):x.setFieldsValue({sub_discipline_id:[]})}},se.createElement(pe.ZP,{value:1},"\u5FEB\u901F\u9009\u62E9\u65B9\u5411&\u8BFE\u7A0B"),se.createElement(pe.ZP,{value:2,style:{marginLeft:40}},"\u81EA\u5B9A\u4E49\u65B9\u5411&\u8BFE\u7A0B"))),b==1&&se.createElement(xe.default.Item,{label:"\u65B9\u5411&\u8BFE\u7A0B",name:"sub_discipline_id",rules:[{required:!0}]},se.createElement(Ae.Z,{expandTrigger:"hover",placeholder:"\u8BF7\u9009\u62E9\u65B9\u5411&\u8BFE\u7A0B",options:ae,fieldNames:{label:"name",value:"id",children:"sub_disciplines"},onChange:(ye,De)=>x.setFieldsValue({sub_discipline_id:ye})})),b==2&&se.createElement(se.Fragment,null,se.createElement(xe.default.Item,{label:"\u65B9\u5411",name:"discipline_name",rules:[{required:!0}]},se.createElement(Se.default,{placeholder:"\u8BF7\u8F93\u5165\u65B9\u5411",autoComplete:"off"})),se.createElement(xe.default.Item,{label:"\u8BFE\u7A0B",name:"sub_discipline_name",rules:[{required:!0}]},se.createElement(Se.default,{placeholder:"\u8BF7\u8F93\u5165\u8BFE\u7A0B",autoComplete:"off"})))),ee&&se.createElement("div",{className:ne.spin},se.createElement(ce.Z,null))))},ue=Te(8658),me="data:image/jpeg;base64,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",Ce="data:image/png;base64,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",Ie=Te(59301),Fe=Object.defineProperty,Re=Object.defineProperties,Ue=Object.getOwnPropertyDescriptors,Ge=Object.getOwnPropertySymbols,Je=Object.prototype.hasOwnProperty,Qe=Object.prototype.propertyIsEnumerable,rt=(E,a,y)=>a in E?Fe(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,$e=(E,a)=>{for(var y in a||(a={}))Je.call(a,y)&&rt(E,y,a[y]);if(Ge)for(var y of Ge(a))Qe.call(a,y)&&rt(E,y,a[y]);return E},qe=(E,a)=>Re(E,Ue(a)),ot=(E,a)=>{var y={};for(var x in E)Je.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&Ge)for(var x of Ge(E))a.indexOf(x)<0&&Qe.call(E,x)&&(y[x]=E[x]);return y},at=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(oe){b(oe)}},ee=ae=>{try{re(y.throw(ae))}catch(oe){b(oe)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});const ut=[{name:"\u672A\u53D1\u5E03",connect:"\u5F53\u524D\u8BFE\u7A0B\u6B63\u5728\u5F00\u53D1\u4E2D\uFF0C\u4E0D\u53EF\u88AB\u4ED6\u4EBA\u4F7F\u7528",bkcolor:"#D8D8D8",txcolor:"#FFFFFF"},{name:"\u9759\u9ED8\u53D1\u5E03",connect:"\u5F53\u524D\u8BFE\u7A0B\u5DF2\u53D1\u5E03\uFF0C\u53EF\u4EE5\u901A\u8FC7\u5206\u4EAB\u94FE\u63A5\u4F7F\u7528\uFF0C\u4F46\u4E0D\u80FD\u88AB\u5F00\u653E\u68C0\u7D22",bkcolor:"#7B92C7",txcolor:"#FFFFFF"},{name:"\u516C\u5F00\u5BA1\u6838",connect:"\u5F53\u524D\u8BFE\u7A0B\u5DF2\u53D1\u5E03\uFF0C\u7533\u8BF7\u7EB3\u5165\u5F00\u653E\u68C0\u7D22\uFF0C\u76EE\u524D\u5E73\u53F0\u6B63\u5728\u5BA1\u6838\u4E2D",bkcolor:"#F9AF7E",txcolor:"#A44C11"},{name:"\u516C\u5F00\u53D1\u5E03",connect:"\u5F53\u524D\u8BFE\u7A0B\u5DF2\u53D1\u5E03\uFF0C\u4E14\u53EF\u88AB\u5F00\u653E\u68C0\u7D22",bkcolor:"#FFE9C1",txcolor:"#A45204"}],nt=E=>{var a=E,{pathsDetail:y,user:x,globalSetting:b,loading:z,dispatch:ee}=a,re=ot(a,["pathsDetail","user","globalSetting","loading","dispatch"]),ae,oe,de,ge,ye,De,ke,ze,We,Ve,Ze,Ye,et,st,ht,mt,dt,Ot,_t,wt;const $t=(0,be.useParams)(),[gn,Xt]=(0,Ne.useState)({}),Tn=(0,Ne.useRef)(1),[er,En]=(0,Ne.useState)(),[yn,Cn]=(0,Ne.useState)(!1),[qn,pn]=(0,Ne.useState)(!1),lr=(0,Ne.useRef)(null),Jr=!((ae=y.detail)!=null&&ae.edit_of_subject_knowledge),[na,Hr]=(0,Ne.useState)({status:!1}),Ar=((oe=y.detail)==null?void 0:oe.is_free)||((de=y.detail)==null?void 0:de.can_learning);(0,Ne.useEffect)(()=>{Hr({status:!1})},[]),(0,Ne.useEffect)(()=>{function ti(){return at(this,null,function*(){var qi,Gi,fo,Po,Es,as,yi;if((qi=y.detail)!=null&&qi.courses){const Ri=(Gi=y.detail)==null?void 0:Gi.courses;if((fo=Ri==null?void 0:Ri.toast)!=null&&fo.is_open&&((Po=Ri.toast)==null?void 0:Po.open_num)===-1)pn(!0);else if((Es=Ri==null?void 0:Ri.toast)!=null&&Es.is_open&&((as=Ri==null?void 0:Ri.toast)==null?void 0:as.open_num)===1){let Sa=JSON.parse(localStorage.getItem("pathsshow"))||[];((yi=Sa.filter(Fa=>Fa===($t==null?void 0:$t.pathId)))==null?void 0:yi.length)>0?pn(!1):(pn(!0),Sa.push($t==null?void 0:$t.pathId),localStorage.setItem("pathsshow",JSON.stringify(Sa)))}else pn(!1)}})}ti()},[(ge=y.detail)==null?void 0:ge.courses]),(0,Ne.useEffect)(()=>{var ti,qi,Gi,fo,Po,Es,as,yi,Ri,Sa,Fa;if(!((qi=(ti=y.detail)==null?void 0:ti.courses)==null?void 0:qi.length))return;let Ki;if((Gi=y.detail)!=null&&Gi.has_start){const Oa=(Po=(fo=y.detail)==null?void 0:fo.courses)==null?void 0:Po.findIndex(xo=>{var Qi;return((Qi=xo.course_status)==null?void 0:Qi.status)===1});Ki=Oa>-1?Oa:0}else{let Oa=(yi=(as=(Es=y.detail)==null?void 0:Es.courses)==null?void 0:as.map(xo=>{var Qi;return(Qi=xo.course_status)==null?void 0:Qi.status}))==null?void 0:yi.lastIndexOf(2);Ki=Oa>-1?Oa:0,Oa=(Sa=(Ri=y.detail)==null?void 0:Ri.courses)==null?void 0:Sa.findIndex(xo=>{var Qi;return((Qi=xo.course_status)==null?void 0:Qi.status)===0}),Ki=Oa>-1?Oa:Ki}Xt(((Fa=y.detail)==null?void 0:Fa.courses[Ki])||{})},[y.detail]);const Wr=()=>{_e.ZP.warning("\u975E\u8BFE\u7A0B\u5408\u4F5C\u8005\u4E0D\u53EF\u64CD\u4F5C\uFF0C\u8BF7\u4E0E\u8BFE\u7A0B\u8D1F\u8D23\u4EBA\u8054\u7CFB\uFF0C\u83B7\u5F97\u5408\u4F5C\u8005\u8EAB\u4EFD\u540E\u8FDB\u884C\u76F8\u5173\u64CD\u4F5C\u3002")},ya=ti=>{var qi,Gi;const fo=(Gi=(qi=y.detail)==null?void 0:qi.courses)==null?void 0:Gi.find(Po=>Po.course_id===ti);Xt(fo||{}),ee({type:"classroomList/setActionTabs",payload:{key:"\u4FEE\u6539\u5F00\u8BFE\u65F6\u95F4",name:ti}})},Ra=ti=>{Hr({status:ti})},Aa=ti=>{Me.default.confirm({centered:!0,width:590,title:"\u63D0\u793A",okText:"\u786E\u5B9A\u7533\u8BF7",cancelText:"\u53D6\u6D88\u7533\u8BF7",icon:null,content:Ie.createElement("div",{className:"tc",style:{color:"#5F6367",textAlign:"left"}},"\u516C\u5F00\u8BFE\u7A0B\u9700\u7ECF\u8FC7\u5E73\u53F0\u6807\u51C6\u5316\u5BA1\u6838\uFF0C\u5BA1\u6838\u5468\u671F\u4E3A1-2\u5929\uFF0C\u516C\u5F00\u7684\u8BFE\u7A0B\u5C06\u5BF9\u5E73\u53F0\u6240\u6709\u4EBA\u53EF\u89C1\u3002",Ie.createElement("br",null),"\u82E5\u4EC5\u672C\u4EBA\u6559\u5B66\u4F7F\u7528\u5219\u65E0\u9700\u7533\u8BF7\u516C\u5F00\uFF0C\u76F4\u63A5\u53D1\u9001\u5230\u8BFE\u5802\u5373\u53EF",Ie.createElement("br",null)),onOk:()=>at(void 0,null,function*(){let qi={user_customize:ti.user_customize,type:ti.type};ti.user_customize?qi=qe($e({},qi),{discipline_name:ti.discipline_name,sub_discipline_name:ti.sub_discipline_name}):ti.sub_discipline_id&&(qi=qe($e({},qi),{sub_discipline_id:ti.sub_discipline_id}));const Gi=yield(0,Pe.WO)($e({id:$t.pathId},qi));((Gi==null?void 0:Gi.status)===0||(Gi==null?void 0:Gi.status)===1)&&(co(),_e.ZP.success("\u516C\u5F00\u7533\u8BF7\u5DF2\u63D0\u4EA4\uFF0C\u8BF7\u7B49\u5F85\u7BA1\u7406\u5458\u7684\u5BA1\u6838"))})})},co=()=>{ee({type:"pathsDetail/getPathsDetail",payload:{id:$t.pathId,knowledge:!0}}),ee({type:"pathsDetail/getRightData",payload:{id:$t.pathId}})},So=((De=(ye=y.detail)==null?void 0:ye.courses)==null?void 0:De.findIndex(ti=>(ti==null?void 0:ti.course_id)===(gn==null?void 0:gn.course_id)))+1;return Ie.createElement("section",null,Ie.createElement("aside",{className:Ee.banner,style:{backgroundImage:(We=(ze=(ke=y==null?void 0:y.detail)==null?void 0:ke.attachments)==null?void 0:ze[0])!=null&&We.url?`url(${(Ye=(Ze=(Ve=y==null?void 0:y.detail)==null?void 0:Ve.attachments)==null?void 0:Ze[0])==null?void 0:Ye.url})`:`url(${me})`}},Ie.createElement("aside",{className:Ee.wrp},Ie.createElement("div",{className:Ee.name},(st=(et=y.detail)==null?void 0:et.name)==null?void 0:st.split(`
|
|
|
`)[0]),Ie.createElement("div",{className:Ee.content},Ie.createElement("span",null,"\u77E5\u8BC6\u56FE\u8C31\uFF1A",(ht=y==null?void 0:y.detail)==null?void 0:ht.knowledge_count),Ie.createElement("span",null,"\u6807\u7B7E\u8282\u70B9\uFF1A",(mt=y==null?void 0:y.detail)==null?void 0:mt.tag_count),Ie.createElement("span",null,"\u8D44\u6E90\u8282\u70B9\uFF1A",(dt=y==null?void 0:y.detail)==null?void 0:dt.resource_count),((Ot=y.detail)==null?void 0:Ot.origin_subject_identifier)&&Ie.createElement("div",{onClick:()=>{var ti;window.open(`/paths/${(ti=y.detail)==null?void 0:ti.origin_subject_identifier}`)},className:Ee.go},Ie.createElement("img",{src:Ce,className:Ee.goicon})," ",Ie.createElement("div",{style:{cursor:"pointer"}},"\u524D\u5F80\u8BFE\u7A0B\u5B66\u4E60"))))),na.status&&Ie.createElement(ie,{type:"subject",onCancel:()=>Ra(!1),onOk:ti=>{Ra(!1),Aa(ti)}}),Ie.createElement(Me.default,{open:qn,title:"\u8BFE\u7A0B\u516C\u544A",width:593,maskClosable:!1,onCancel:()=>{pn(!1)},centered:!0,footer:Ie.createElement("div",null,Ie.createElement(ve.ZP,{type:"primary",onClick:()=>{pn(!1)}},"\u6211\u77E5\u9053\u4E86"))},Ie.createElement(ue.Z,{style:{maxHeight:378,overflow:"auto"},value:(wt=(_t=y==null?void 0:y.detail)==null?void 0:_t.toast)==null?void 0:wt.content})))};var lt=(0,be.connect)(({pathsDetail:E,user:a,loading:y,globalSetting:x})=>({pathsDetail:E,user:a,globalSetting:x,loading:y.models.index}))(nt),yt=Te(99313),ft=Te(10089),ct={flex_box_center:"flex_box_center___gyNAa",flex_space_between:"flex_space_between___zekzh",flex_box_vertical_center:"flex_box_vertical_center___GQtHt",flex_box_center_end:"flex_box_center_end___P3hWY",flex_box_column:"flex_box_column___YRmML",bg:"bg___w3m29",wrap:"wrap___DQAaW",content:"content___ISSC7",wrapTabs:"wrapTabs___UH3jY",intro:"intro___GxOgI",introTitle:"introTitle___LyPY5"},vt=Te(22566),Ut={flex_box_center:"flex_box_center___FSHWz",flex_space_between:"flex_space_between___xMj_8",flex_box_vertical_center:"flex_box_vertical_center___TftIO",flex_box_center_end:"flex_box_center_end___KM3sc",flex_box_column:"flex_box_column___o0txR",tabs:"tabs___kpTFv",activied:"activied___IE4FQ",tab:"tab___JSx4b",placeholder:"placeholder___xpvd2",content:"content___I7f9K",nametext:"nametext___E8ley",modal:"modal___oIdtc",mHead:"mHead___tmQjG",form:"form___q76Kb",mType:"mType___zss8M",dropdownst:"dropdownst___NZ0IN",dropnametext:"dropnametext___v6FZZ"},Zt={information:"information___cwV7S",body:"body___1JINN",title:"title___b5sMx",left:"left___yeFML",right:"right___uofAp",listWarp:"listWarp___mIMgF",li:"li___fF9zA",imgTitle:"imgTitle___HGcli",box:"box___pdLe8"},en="data:image/png;base64,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",mn="data:image/png;base64,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",Bt="data:image/png;base64,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",tn="data:image/png;base64,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",on=Te(6848),Mn=Te(11662),Dn=Te(36237),sn=Te(92736),Ht={token:{colorPrimary:"#1B8565",colorInfo:"#1B8565",colorLink:"#1B8565",borderRadius:2,fontSizeLG:14},components:{Radio:{radioSize:16,dotSize:6},Modal:{titleFontSize:16,titleColor:"#000"}}},Tt=Te(59301),Qt=({children:E,prefixCls:a="knowledgeGraph"})=>document.documentElement.style.fontSize!==""?Tt.createElement(Dn.StyleProvider,{transformers:[(0,Dn.px2remTransformer)({rootValue:1})]},Tt.createElement(sn.ZP,{prefixCls:a,theme:Ht},E)):Tt.createElement(Tt.Fragment,null,E),gt=Te(59301),bt=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(oe){b(oe)}},ee=ae=>{try{re(y.throw(ae))}catch(oe){b(oe)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())}),kt=({})=>{var E;const[a,y]=(0,Ne.useState)(!0),[x,b]=(0,Ne.useState)({}),z=(0,be.useSelector)(ae=>ae),{pathsDetail:{detail:ee}}=z;(0,Ne.useEffect)(()=>{ee!=null&&ee.id&&re()},[ee==null?void 0:ee.id]);const re=()=>bt(void 0,null,function*(){b(ee),y(!1)});return gt.createElement(Qt,null,gt.createElement("div",{className:Zt.information},a&>.createElement(ce.Z,{style:{width:"100%",marginTop:"300rem"},spinning:!0}),!a&>.createElement("div",{className:Zt.body},gt.createElement("div",{className:Zt.left},gt.createElement("div",{className:Zt.box,style:{marginBottom:"20rem"}},gt.createElement("img",{className:Zt.imgTitle,src:en,style:{width:"453rem"}}),gt.createElement(ue.Z,{value:(x==null?void 0:x.description)||""})),!!(x!=null&&x.learning_notes)&>.createElement("div",{className:Zt.box},gt.createElement("img",{className:Zt.imgTitle,src:Bt,style:{width:"453rem"}}),gt.createElement(ue.Z,{value:(x==null?void 0:x.learning_notes)||""}))),gt.createElement("div",{className:Zt.right},gt.createElement("img",{className:Zt.imgTitle,src:mn,style:{width:"323rem"}}),gt.createElement("div",{className:Zt.listWarp},(E=x==null?void 0:x.subject_members)==null?void 0:E.map(ae=>gt.createElement("div",{key:ae==null?void 0:ae.login,className:Zt.li},gt.createElement("img",{src:`${Mn.Z.IMG_SERVER}/images/${ae==null?void 0:ae.avatar}`}),(ae==null?void 0:ae.role)===1&>.createElement("img",{src:tn,style:{width:"68rem",position:"absolute",right:"-1rem",top:"-1rem"}}),gt.createElement("div",null,gt.createElement(on.Z,{title:ae==null?void 0:ae.username},gt.createElement("b",{className:"c-grey-333"},(0,vt.Pq)(ae==null?void 0:ae.username,7))),gt.createElement(on.Z,{title:ae==null?void 0:ae.school_name},gt.createElement("span",{className:"c-grey-999"},(0,vt.Pq)(ae==null?void 0:ae.school_name,7)))))))))))},Mt={exchange:"exchange___eh7R3",body:"body___oRT9t",liWarp:"liWarp___QSKqk",li:"li___qd10l",head:"head___X7rTk",btns:"btns___JOV8d",reply:"reply___FAse7",delete:"delete___cv2H_",praise:"praise___O_5sJ",active:"active____gfgF",num:"num___Vv9Co",secondWrap:"secondWrap___S4NT9",secondLi:"secondLi___KiwQK",secondHead:"secondHead___xyIHf",secondBtns:"secondBtns____BxwD",md:"md____p6F5",comment:"comment___YPf7o",addBtn:"addBtn___S8KeD",pagination:"pagination___iRtcm"},ln=Te(58421),zn=Te(92310),Gn=Te.n(zn),Hn=Te(30720),nr={md:"md___NMHUA",dark:"dark___hYBxG"},Xn=Te(59301),qt=Object.defineProperty,vn=Object.defineProperties,Un=Object.getOwnPropertyDescriptors,Ln=Object.getOwnPropertySymbols,yr=Object.prototype.hasOwnProperty,kr=Object.prototype.propertyIsEnumerable,Dr=(E,a,y)=>a in E?qt(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,Gr=(E,a)=>{for(var y in a||(a={}))yr.call(a,y)&&Dr(E,y,a[y]);if(Ln)for(var y of Ln(a))kr.call(a,y)&&Dr(E,y,a[y]);return E},Ma=(E,a)=>vn(E,Un(a)),Ja=(E,a)=>{var y={};for(var x in E)yr.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&Ln)for(var x of Ln(E))a.indexOf(x)<0&&kr.call(E,x)&&(y[x]=E[x]);return y},Da=E=>{var a=E,{value:y,onChange:x,theme:b}=a,z=Ja(a,["value","onChange","theme"]);const ee={dark:nr.dark};return Xn.createElement(Qt,{prefixCls:"md"},Xn.createElement("div",{className:Gn()(nr.md,ee[b])},Xn.createElement(Hn.Z,Ma(Gr({},z),{defaultValue:y,onChange:(re,ae)=>{console.log("a:",re,ae),ae!=null&&ae.length?x(re,ae):x(re)}}))))},Di={noData:"noData___Luxe1"},_a="data:image/png;base64,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",Vr=Te(61485),Ya=Te(59301),mr=({style:E={},className:a,text:y="\u6682\u65E0\u6570\u636E",textColor:x="#666",buttonText:b,buttonTexttow:z,ontwoClick:ee,onClick:re})=>Ya.createElement("div",{className:Gn()(Di.noData,a),style:E},Ya.createElement("img",{src:_a}),!!y&&Ya.createElement("span",{style:{color:x}},y),Ya.createElement("span",{style:{display:"flex"}},!!b&&Ya.createElement("div",{onClick:re},b),!!z&&Ya.createElement("div",{style:{marginLeft:"20rem",display:"flex",alignItems:"center",justifyContent:"center"},onClick:ee},z," ",Ya.createElement(on.Z,{title:"\u6839\u636E\u65E7\u7248\u77E5\u8BC6\u56FE\u8C31\u5185\u5BB9\u6216\u8BFE\u7A0B\u7AE0\u8282\u53CA\u8D44\u6E90\u5185\u5BB9\u81EA\u52A8\u751F\u6210\u77E5\u8BC6\u56FE\u8C31"},Ya.createElement(Vr.Z,{style:{color:"#fff",marginLeft:5,marginTop:0}}))))),Er=Te(59301),ba=Object.defineProperty,Fn=Object.getOwnPropertySymbols,gr=Object.prototype.hasOwnProperty,br=Object.prototype.propertyIsEnumerable,_r=(E,a,y)=>a in E?ba(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,ha=(E,a)=>{for(var y in a||(a={}))gr.call(a,y)&&_r(E,y,a[y]);if(Fn)for(var y of Fn(a))br.call(a,y)&&_r(E,y,a[y]);return E},Ct=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(oe){b(oe)}},ee=ae=>{try{re(y.throw(ae))}catch(oe){b(oe)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});const we=({type:E,onEnter:a})=>{const[y,x]=(0,Ne.useState)("");return Er.createElement("div",{className:Mt.comment},Er.createElement(Da,{theme:"dark",height:E===1?"264rem":"134rem",value:y,onChange:b=>x(b)}),Er.createElement(ve.ZP,{size:"large",shape:"round",onClick:()=>a(y,E),type:"primary",style:{width:"100rem",marginBottom:"12rem",float:"right"}},"\u53D1\u9001"),Er.createElement("div",{style:{clear:"both"}}))};var Le=({})=>{const E=(0,be.useParams)(),[a,y]=(0,Ne.useState)(!0),[x,b]=(0,Ne.useState)({page:1}),[z,ee]=(0,Ne.useState)(0),[re,ae]=(0,Ne.useState)(!1),[oe,de]=(0,Ne.useState)([]);(0,Ne.useEffect)(()=>{ge(x)},[]);const ge=We=>Ct(void 0,null,function*(){y(!0);const Ve=yield(0,te.ZP)(`/api/paths/${E==null?void 0:E.pathId}/discusses.json`,{method:"get",params:We});Ve!=null&&Ve.comments&&(de(Ve==null?void 0:Ve.comments),ee(Ve==null?void 0:Ve.disscuss_count)),y(!1)}),ye=(We,Ve)=>Ct(void 0,null,function*(){y(!0);const Ze=yield(0,te.ZP)(`/api/paths/${E==null?void 0:E.pathId}/post_discuss.json`,{method:"post",body:{content:We}});(Ze==null?void 0:Ze.status)===0&&(x.page=Ve===1?1:x.page,b(ha({},x)),ge(x),ae(!1))}),De=(We,Ve)=>Ct(void 0,null,function*(){y(!0);const Ze=yield(0,te.ZP)(`/api/discusses/${re}/reply.json`,{method:"post",body:{container_type:"Shixun",content:We}});Ze!=null&&Ze.discuss&&(ae(!1),ge(x))}),ke=(We,Ve)=>Ct(void 0,null,function*(){y(!0);const Ze=yield(0,te.ZP)(`/api/discusses/${We}/plus.json`,{method:"post",body:{container_type:"Discuss",type:Ve}});(Ze==null?void 0:Ze.status)!==-1&&ge(x)}),ze=(We,Ve)=>Ct(void 0,null,function*(){y(!0);const Ze=yield(0,te.ZP)(`/api/discusses/${We}.json`,{method:"delete",body:{}});(Ze==null?void 0:Ze.status)===1&&(x.page=Ve===1&&oe.length===1&&x.page!==1?x.page-1:x.page,b(ha({},x)),ge(x))});return Er.createElement(Qt,null,Er.createElement(Er.Fragment,null,Er.createElement("span",{className:"relative",style:{float:"right"}},Er.createElement("div",{className:Mt.addBtn,onClick:()=>ae(!0)},"\u53D1\u5E03\u8BA8\u8BBA")),Er.createElement("div",{className:Mt.exchange},Er.createElement("div",{className:Mt.body},Er.createElement(ce.Z,{spinning:a},re===!0&&Er.createElement(we,{type:1,onEnter:ye}),z?Er.createElement(Er.Fragment,null,Er.createElement("div",{className:Mt.liWarp},oe==null?void 0:oe.map(We=>{var Ve,Ze,Ye,et;return Er.createElement("div",{key:We==null?void 0:We.id,className:Mt.li},Er.createElement("img",{src:`${Mn.Z.IMG_SERVER}/images/${(Ve=We==null?void 0:We.author)==null?void 0:Ve.image_url}`}),Er.createElement("aside",{style:{flex:1}},Er.createElement("div",{className:Mt.head},Er.createElement("b",null,(Ze=We==null?void 0:We.author)==null?void 0:Ze.name),Er.createElement("span",null,We==null?void 0:We.time),Er.createElement("div",{className:Mt.btns},Er.createElement(on.Z,{placement:"top",title:"\u56DE\u590D",color:"#434B64"},Er.createElement("div",{onClick:()=>ae(We.id),className:Mt.reply},Er.createElement("i",{className:"iconfont icon-a-huifupinglun"}))),(We==null?void 0:We.manage)&&Er.createElement(on.Z,{placement:"top",title:"\u5220\u9664\u8BA8\u8BBA",color:"#434B64"},Er.createElement("div",{onClick:()=>ze(We.id,1),className:Mt.delete},Er.createElement("i",{className:"iconfont icon-shanchu17"}))),Er.createElement(on.Z,{placement:"top",title:"\u70B9\u8D5E",color:"#434B64"},Er.createElement("div",{onClick:()=>ke(We==null?void 0:We.id,We!=null&&We.user_praise?0:1),className:Gn()(Mt.praise,(We==null?void 0:We.user_praise)&&Mt.active)},Er.createElement("i",{className:"iconfont icon-dianzan7"}))),!!(We!=null&&We.praise_count)&&Er.createElement("aside",{className:Mt.num},We==null?void 0:We.praise_count))),Er.createElement(ue.Z,{className:Mt.md,value:(We==null?void 0:We.content)||""}),!!((Ye=We==null?void 0:We.children)!=null&&Ye.length)&&Er.createElement("div",{className:Mt.secondWrap},(et=We==null?void 0:We.children)==null?void 0:et.map(st=>{var ht;return Er.createElement("div",{className:Mt.secondLi},Er.createElement("div",{className:Mt.secondHead},Er.createElement("b",null,(ht=st==null?void 0:st.author)==null?void 0:ht.name),Er.createElement("span",null,st==null?void 0:st.time),Er.createElement("div",{className:Mt.secondBtns},(st==null?void 0:st.manage)&&Er.createElement(on.Z,{placement:"top",title:"\u5220\u9664\u8BA8\u8BBA",color:"#434B64"},Er.createElement("div",{onClick:()=>ze(st.id,2),className:Mt.secondDelete},Er.createElement("i",{className:"iconfont icon-shanchu17"}))))),Er.createElement(ue.Z,{className:Mt.md,value:(st==null?void 0:st.content)||""}))})),re===We.id&&Er.createElement(we,{type:2,onEnter:De})))})),Er.createElement("div",{className:Mt.pagination},Er.createElement(ln.Z,{onChange:We=>{x.page=We,b(ha({},x)),ge(x)},total:z,current:x==null?void 0:x.page,pageSize:10,hideOnSinglePage:!0,showSizeChanger:!1,showQuickJumper:!1,style:{marginTop:"20rem",marginBottom:"40rem"},showTotal:We=>Er.createElement("span",{style:{marginLeft:"10rem",color:"#fff"}},"\u5171",Er.createElement("span",{style:{color:"#37AD83",margin:"0 5rem"}},We),"\u6761\u6570\u636E")}))):!re&&Er.createElement(mr,{textColor:"#fff",style:{visibility:a?"hidden":"visible"}}))))))},je={top_content:"top_content___O4EKG",top_content_user:"top_content_user___CC2nM",user_img:"user_img___tdbt6",user_name:"user_name___uawJi",user_info:"user_info___oCHyE",top_content_item:"top_content_item___cPfTY",top_content_item_right:"top_content_item_right____eALl",top_content_item_right_title:"top_content_item_right_title___xNZTQ",top_content_item_right_value:"top_content_item_right_value___E4YyP",top_content_line:"top_content_line___UiRZT",tabs_content:"tabs_content___atjiT",tabs_content_item:"tabs_content_item___WAo03",tabs_content_item_active:"tabs_content_item_active___kSHPA",setting_button:"setting_button___FRpix"},Xe={flex_box_center:"flex_box_center___pj7zA",flex_space_between:"flex_space_between___KLJ6R",flex_box_vertical_center:"flex_box_vertical_center___u4EyD",flex_box_center_end:"flex_box_center_end___yMtf6",flex_box_column:"flex_box_column___rBiiO",myForm:"myForm___czOKi",table_box:"table_box___c14mq",TableStyle:"TableStyle___awF96"},Et=Te(5083),xt=Te(57809),Jt=Te(1710),Vt=Te(21692),fn=Te(16624),dn=Te(59301),Vn=Object.defineProperty,Pn=Object.getOwnPropertySymbols,Jn=Object.prototype.hasOwnProperty,$n=Object.prototype.propertyIsEnumerable,hr=(E,a,y)=>a in E?Vn(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,hn=(E,a)=>{for(var y in a||(a={}))Jn.call(a,y)&&hr(E,y,a[y]);if(Pn)for(var y of Pn(a))$n.call(a,y)&&hr(E,y,a[y]);return E},an=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(oe){b(oe)}},ee=ae=>{try{re(y.throw(ae))}catch(oe){b(oe)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});const{RangePicker:In}=Et.default;var cr=({setInfo:E})=>{var a,y;const[x]=xe.default.useForm(),b=(0,Ne.useRef)(!0),[z]=(0,be.useSearchParams)(),ee=(0,be.useParams)(),[re,ae]=(0,Ne.useState)(!1),[oe,de]=(0,Ne.useState)(1),[ge,ye]=(0,Ne.useState)({}),[De,ke]=(0,Ne.useState)({real_name:"",course_group_id:"",role_sub_type:"",time:null}),ze=[{title:"\u5E8F\u53F7",dataIndex:"order",key:"order",align:"center",render:(Ve,Ze,Ye)=>`${(oe-1)*10+Ye+1}`,width:50},{title:"\u59D3\u540D",dataIndex:"real_name",key:"real_name",width:250,ellipsis:!0,align:"left",render:(Ve,Ze)=>dn.createElement("span",null,Ve||"--")},{title:"\u5B66\u53F7",dataIndex:"student_id",key:"student_id",ellipsis:!0,width:200,align:"left",render:Ve=>dn.createElement("span",null,Ve||"--")},{title:"\u73ED\u7EA7",dataIndex:"course_group_name",key:"course_group_name",ellipsis:!0,width:120,align:"left",render:(Ve,Ze,Ye)=>dn.createElement("span",null,Ve||"--")},{title:"\u9884\u8B66\u65E5\u671F",dataIndex:"created_at",key:"created_at",ellipsis:!0,align:"left",width:200,render:Ve=>dn.createElement("span",null,Ve||"--")},{title:"\u9884\u8B66\u4FE1\u606F",dataIndex:"extra",key:"extra",ellipsis:!0,align:"left",render:Ve=>dn.createElement("span",null,Ve||"--")},{title:"\u64CD\u4F5C",key:"action",align:"left",width:120,render:(Ve,Ze)=>dn.createElement("span",{style:{color:"#18D6FF",cursor:"pointer"},onClick:()=>{(0,vt.xg)(`/knowledgegraph/${ee==null?void 0:ee.pathId}?type=${z.get("type")}&tabs=7&uuid=${z.get("uuid")}&studentId=${Ze==null?void 0:Ze.user_id}&studentTab=0`)}},"\u67E5\u770B")}].filter(Ve=>!!Ve);(0,Ne.useEffect)(()=>{if(b.current){b.current=!1;return}oe==1?We():de(1)},[De]),(0,Ne.useEffect)(()=>{(0,fn.bg)()&&We()},[oe,(0,fn.bg)()]);const We=()=>an(void 0,null,function*(){var Ve,Ze,Ye,et;ae(!0);const st=yield(0,te.ZP)(`/api/courses/${ee==null?void 0:ee.pathId}/student_situations.json`,{method:"get",params:{role_type:"study_progress",page:oe,limit:10,real_name:De==null?void 0:De.real_name,course_group_id:De==null?void 0:De.course_group_id,role_sub_type:De==null?void 0:De.role_sub_type,start_time:(Ze=(Ve=De==null?void 0:De.time)==null?void 0:Ve[0])==null?void 0:Ze.format("YYYY-MM-DD"),end_time:(et=(Ye=De==null?void 0:De.time)==null?void 0:Ye[1])==null?void 0:et.format("YYYY-MM-DD")}});(st==null?void 0:st.status)===0&&(ye(st==null?void 0:st.data),E(st==null?void 0:st.data)),ae(!1)});return dn.createElement(ce.Z,{spinning:re},dn.createElement("div",{className:"mt20"},dn.createElement(xe.default,{layout:"inline",form:x,className:Xe.myForm,initialValues:{real_name:"",course_group_id:"",role_sub_type:"",start_time:null,end_time:null}},dn.createElement(xe.default.Item,{name:"real_name",label:"\u59D3\u540D",colon:!1},dn.createElement(Se.default.Search,{style:{width:200},autocomplete:"off",onSearch:Ve=>{De.real_name=Ve,ke(hn({},De))},onPressEnter:Ve=>{De.real_name=Ve.target.value,ke(hn({},De))}})),dn.createElement(xe.default.Item,{name:"course_group_id",label:"\u73ED\u7EA7",colon:!1,className:"ml20"},dn.createElement(xt.default,{style:{width:200},onChange:Ve=>{De.course_group_id=Ve,ke(hn({},De))}},dn.createElement(xt.default.Option,{value:""},"\u5168\u90E8"),(a=ge==null?void 0:ge.course_groups)==null?void 0:a.map(Ve=>dn.createElement(xt.default.Option,{value:Ve==null?void 0:Ve.id,key:Ve==null?void 0:Ve.id},Ve==null?void 0:Ve.name)))),dn.createElement(xe.default.Item,{name:"role_sub_type",label:"\u9884\u8B66\u7C7B\u578B",colon:!1,className:"ml20"},dn.createElement(xt.default,{style:{width:200},onChange:Ve=>{De.role_sub_type=Ve,ke(hn({},De))}},dn.createElement(xt.default.Option,{value:""},"\u5168\u90E8"),(y=ge==null?void 0:ge.situation_types)==null?void 0:y.map(Ve=>dn.createElement(xt.default.Option,{value:Ve==null?void 0:Ve.role_sub_type,key:Ve==null?void 0:Ve.role_sub_type},Ve==null?void 0:Ve.name))))),dn.createElement("div",{className:Xe.table_box},dn.createElement(Jt.default,{className:`mt-14px-rem ${Xe.TableStyle} flex-1`,locale:{emptyText:dn.createElement(Vt.Z,null)},columns:ze,pagination:!1,dataSource:(ge==null?void 0:ge.list)||[]}),dn.createElement(ln.Z,{className:"mt20",showTotal:Ve=>dn.createElement("span",{className:"mr10",style:{color:"#fff"}},"\u5171",dn.createElement("span",{className:"c-blue"}," ",Ve," "),"\u6761\u6570\u636E"),defaultCurrent:1,defaultPageSize:10,current:oe||1,showSizeChanger:!1,showQuickJumper:!0,hideOnSinglePage:!0,total:ge==null?void 0:ge.total_count,onChange:Ve=>{de(Ve)}}))))},or={type_style:"type_style___bCBMr",type_title:"type_title___X2z0K",type_title_active:"type_title_active___Rkldh",box:"box___J4O5Y",box_title:"box_title___jIM3k",box_title_text:"box_title_text___kNiNm",box_content:"box_content___igWCo",box_item:"box_item___WdNGE",item_tag:"item_tag___BN5JO",item_tag_good:"item_tag_good___Cn7Nr",item_icon:"item_icon___R4_LT",item_right:"item_right___Dr9g8",item_title:"item_title___SW2Ca",item_content:"item_content___eJHfJ",item_time:"item_time___st64A",item_go:"item_go___lezjx"},Qn=Object.defineProperty,dr=Object.getOwnPropertySymbols,xr=Object.prototype.hasOwnProperty,On=Object.prototype.propertyIsEnumerable,vr=(E,a,y)=>a in E?Qn(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,Yn=(E,a)=>{for(var y in a||(a={}))xr.call(a,y)&&vr(E,y,a[y]);if(dr)for(var y of dr(a))On.call(a,y)&&vr(E,y,a[y]);return E};const jr=E=>React.createElement("svg",Yn({width:32,height:31,xmlns:"http://www.w3.org/2000/svg"},E),React.createElement("title",null,"\u8003\u8BD5"),React.createElement("g",{fillRule:"nonzero",fill:"none"},React.createElement("path",{d:"M21.195 8.005H9.237v2.657h11.958V8.005Zm0 5.315H9.237v2.657h11.958V13.32Z",fill:"#00EFEF"}),React.createElement("path",{d:"M27.906.032H5.316c-.73 0-1.328.598-1.328 1.329v21.26H1.33c-.73 0-1.328.598-1.328 1.329v2.657c0 2.193 1.86 3.987 4.185 3.987h18.204c2.326 0 4.186-1.993 4.186-4.452V8.005h3.986c.731 0 1.33-.598 1.33-1.33V4.019C31.825 1.826 30.097.032 27.905.032ZM4.12 27.936c-.864 0-1.528-.598-1.528-1.329V25.28h15.28v1.262c0 .465.067.93.266 1.395H4.121Zm19.732-1.794c0 .997-.664 1.794-1.528 1.794h-.133c-.93 0-1.66-.598-1.66-1.395V23.95c0-.731-.599-1.329-1.33-1.329H6.58V2.69h17.274v23.452Zm5.315-20.795h-2.657V2.69h1.328c.731 0 1.33.598 1.33 1.328v1.33Z",fill:"#52A9FF"})));var ri="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbC1ydWxlPSJub256ZXJvIiBmaWxsPSJub25lIj48cGF0aCBkPSJNMjEuMTk1IDguMDA1SDkuMjM3djIuNjU3aDExLjk1OFY4LjAwNVptMCA1LjMxNUg5LjIzN3YyLjY1N2gxMS45NThWMTMuMzJaIiBmaWxsPSIjMDBFRkVGIi8+PHBhdGggZD0iTTI3LjkwNi4wMzJINS4zMTZjLS43MyAwLTEuMzI4LjU5OC0xLjMyOCAxLjMyOXYyMS4yNkgxLjMzYy0uNzMgMC0xLjMyOC41OTgtMS4zMjggMS4zMjl2Mi42NTdjMCAyLjE5MyAxLjg2IDMuOTg3IDQuMTg1IDMuOTg3aDE4LjIwNGMyLjMyNiAwIDQuMTg2LTEuOTkzIDQuMTg2LTQuNDUyVjguMDA1aDMuOTg2Yy43MzEgMCAxLjMzLS41OTggMS4zMy0xLjMzVjQuMDE5QzMxLjgyNSAxLjgyNiAzMC4wOTcuMDMyIDI3LjkwNS4wMzJaTTQuMTIgMjcuOTM2Yy0uODY0IDAtMS41MjgtLjU5OC0xLjUyOC0xLjMyOVYyNS4yOGgxNS4yOHYxLjI2MmMwIC40NjUuMDY3LjkzLjI2NiAxLjM5NUg0LjEyMVptMTkuNzMyLTEuNzk0YzAgLjk5Ny0uNjY0IDEuNzk0LTEuNTI4IDEuNzk0aC0uMTMzYy0uOTMgMC0xLjY2LS41OTgtMS42Ni0xLjM5NVYyMy45NWMwLS43MzEtLjU5OS0xLjMyOS0xLjMzLTEuMzI5SDYuNThWMi42OWgxNy4yNzR2MjMuNDUyWm01LjMxNS0yMC43OTVoLTIuNjU3VjIuNjloMS4zMjhjLjczMSAwIDEuMzMuNTk4IDEuMzMgMS4zMjh2MS4zM1oiIGZpbGw9IiM1MkE5RkYiLz48L2c+PC9zdmc+",vi=Object.defineProperty,ci=Object.getOwnPropertySymbols,Kr=Object.prototype.hasOwnProperty,Ia=Object.prototype.propertyIsEnumerable,Ta=(E,a,y)=>a in E?vi(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,la=(E,a)=>{for(var y in a||(a={}))Kr.call(a,y)&&Ta(E,y,a[y]);if(ci)for(var y of ci(a))Ia.call(a,y)&&Ta(E,y,a[y]);return E};const ei=E=>React.createElement("svg",la({width:28,height:32,xmlns:"http://www.w3.org/2000/svg"},E),React.createElement("title",null,"\u8BFE\u5802\u8D44\u6E90"),React.createElement("g",{fillRule:"nonzero",fill:"none"},React.createElement("path",{d:"M.023 8.014V23.98l13.684 7.982 13.684-7.982V8.014L13.707.032.023 8.014ZM25.11 22.84 13.707 29.68 2.304 22.839V9.155l11.403-6.842 11.404 6.842v13.684Z",fill:"#52A9FF"}),React.createElement("path",{d:"M14.989 17.253v7.723a.998.998 0 0 1-.997.999.978.978 0 0 1-.999-1v-7.722l-6.98-4.028a.996.996 0 0 1 .243-1.824.98.98 0 0 1 .753.107l6.986 3.991 6.926-3.99a.978.978 0 0 1 1.357.357.997.997 0 0 1-.362 1.357l-6.925 3.992v.04-.001h-.002Z",fill:"#00EFEF"})));var Wi="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjgiIGhlaWdodD0iMzIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbC1ydWxlPSJub256ZXJvIiBmaWxsPSJub25lIj48cGF0aCBkPSJNLjAyMyA4LjAxNFYyMy45OGwxMy42ODQgNy45ODIgMTMuNjg0LTcuOTgyVjguMDE0TDEzLjcwNy4wMzIuMDIzIDguMDE0Wk0yNS4xMSAyMi44NCAxMy43MDcgMjkuNjggMi4zMDQgMjIuODM5VjkuMTU1bDExLjQwMy02Ljg0MiAxMS40MDQgNi44NDJ2MTMuNjg0WiIgZmlsbD0iIzUyQTlGRiIvPjxwYXRoIGQ9Ik0xNC45ODkgMTcuMjUzdjcuNzIzYS45OTguOTk4IDAgMCAxLS45OTcuOTk5Ljk3OC45NzggMCAwIDEtLjk5OS0xdi03LjcyMmwtNi45OC00LjAyOGEuOTk2Ljk5NiAwIDAgMSAuMjQzLTEuODI0Ljk4Ljk4IDAgMCAxIC43NTMuMTA3bDYuOTg2IDMuOTkxIDYuOTI2LTMuOTlhLjk3OC45NzggMCAwIDEgMS4zNTcuMzU3Ljk5Ny45OTcgMCAwIDEtLjM2MiAxLjM1N2wtNi45MjUgMy45OTJ2LjA0LS4wMDFoLS4wMDJaIiBmaWxsPSIjMDBFRkVGIi8+PC9nPjwvc3ZnPg==",za=Object.defineProperty,_i=Object.getOwnPropertySymbols,$i=Object.prototype.hasOwnProperty,Uo=Object.prototype.propertyIsEnumerable,yo=(E,a,y)=>a in E?za(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,sl=(E,a)=>{for(var y in a||(a={}))$i.call(a,y)&&yo(E,y,a[y]);if(_i)for(var y of _i(a))Uo.call(a,y)&&yo(E,y,a[y]);return E};const ds=E=>React.createElement("svg",sl({width:32,height:30,xmlns:"http://www.w3.org/2000/svg"},E),React.createElement("title",null,"\u89C6\u9891\u76F4\u64AD"),React.createElement("g",{fillRule:"nonzero",fill:"none"},React.createElement("path",{d:"M26.036 0H5.917C2.663 0 0 2.663 0 5.917V23.67c0 3.254 2.663 5.917 5.917 5.917h20.119c3.254 0 5.917-2.663 5.917-5.917V5.917C31.953 2.663 29.29 0 26.036 0ZM2.366 22.485V7.101h27.22v15.384H2.366ZM5.918 2.367h20.119c1.538 0 2.84 1.006 3.313 2.367H2.604c.473-1.361 1.775-2.367 3.313-2.367Zm20.119 24.852H5.917c-1.538 0-2.84-1.006-3.313-2.367h26.804c-.532 1.361-1.834 2.367-3.372 2.367Z",fill:"#52A9FF"}),React.createElement("path",{d:"m20.296 12.781-4.852-2.9a2.188 2.188 0 0 0-1.243-.354 2.374 2.374 0 0 0-2.367 2.366v5.858c0 .415.119.829.355 1.243.296.533.829.947 1.48 1.065.177.06.414.06.591.06.415 0 .829-.119 1.243-.356l4.852-2.9c.355-.177.592-.472.828-.827.592-1.125.237-2.604-.887-3.255Zm-1.243 2.012-4.852 2.9v-5.859l4.852 2.959Z",fill:"#00EFEF"})));var bo="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbC1ydWxlPSJub256ZXJvIiBmaWxsPSJub25lIj48cGF0aCBkPSJNMjYuMDM2IDBINS45MTdDMi42NjMgMCAwIDIuNjYzIDAgNS45MTdWMjMuNjdjMCAzLjI1NCAyLjY2MyA1LjkxNyA1LjkxNyA1LjkxN2gyMC4xMTljMy4yNTQgMCA1LjkxNy0yLjY2MyA1LjkxNy01LjkxN1Y1LjkxN0MzMS45NTMgMi42NjMgMjkuMjkgMCAyNi4wMzYgMFpNMi4zNjYgMjIuNDg1VjcuMTAxaDI3LjIydjE1LjM4NEgyLjM2NlpNNS45MTggMi4zNjdoMjAuMTE5YzEuNTM4IDAgMi44NCAxLjAwNiAzLjMxMyAyLjM2N0gyLjYwNGMuNDczLTEuMzYxIDEuNzc1LTIuMzY3IDMuMzEzLTIuMzY3Wm0yMC4xMTkgMjQuODUySDUuOTE3Yy0xLjUzOCAwLTIuODQtMS4wMDYtMy4zMTMtMi4zNjdoMjYuODA0Yy0uNTMyIDEuMzYxLTEuODM0IDIuMzY3LTMuMzcyIDIuMzY3WiIgZmlsbD0iIzUyQTlGRiIvPjxwYXRoIGQ9Im0yMC4yOTYgMTIuNzgxLTQuODUyLTIuOWEyLjE4OCAyLjE4OCAwIDAgMC0xLjI0My0uMzU0IDIuMzc0IDIuMzc0IDAgMCAwLTIuMzY3IDIuMzY2djUuODU4YzAgLjQxNS4xMTkuODI5LjM1NSAxLjI0My4yOTYuNTMzLjgyOS45NDcgMS40OCAxLjA2NS4xNzcuMDYuNDE0LjA2LjU5MS4wNi40MTUgMCAuODI5LS4xMTkgMS4yNDMtLjM1Nmw0Ljg1Mi0yLjljLjM1NS0uMTc3LjU5Mi0uNDcyLjgyOC0uODI3LjU5Mi0xLjEyNS4yMzctMi42MDQtLjg4Ny0zLjI1NVptLTEuMjQzIDIuMDEyLTQuODUyIDIuOXYtNS44NTlsNC44NTIgMi45NTlaIiBmaWxsPSIjMDBFRkVGIi8+PC9nPjwvc3ZnPg==",hs=Object.defineProperty,ss=Object.getOwnPropertySymbols,Yo=Object.prototype.hasOwnProperty,Wo=Object.prototype.propertyIsEnumerable,Rs=(E,a,y)=>a in E?hs(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,tl=(E,a)=>{for(var y in a||(a={}))Yo.call(a,y)&&Rs(E,y,a[y]);if(ss)for(var y of ss(a))Wo.call(a,y)&&Rs(E,y,a[y]);return E};const Pl=E=>React.createElement("svg",tl({width:32,height:31,xmlns:"http://www.w3.org/2000/svg"},E),React.createElement("title",null,"\u5B66\u4E60\u8DEF\u5F84"),React.createElement("g",{fillRule:"nonzero",fill:"none"},React.createElement("path",{d:"M12.665.01c1.286 0 2.445.54 3.265 1.407l.237-.233A4.478 4.478 0 0 1 18.923.018l.272-.008h9.796a2.857 2.857 0 0 1 2.857 2.857V24.09a4.49 4.49 0 0 1-4.49 4.49l-6.623.002-.253.192a7.72 7.72 0 0 1-4.101 1.437l-.409.01a7.726 7.726 0 0 1-4.51-1.447l-.257-.192H4.501A4.49 4.49 0 0 1 .02 24.366l-.008-.275V2.867A2.858 2.858 0 0 1 2.869.01h9.796ZM28.99 2.459h-9.796c-1.126 0-2.04.914-2.04 2.04l.001 23.14a5.28 5.28 0 0 0 2.33-1.197l.348-.308h7.526c1.127 0 2.041-.915 2.041-2.041V2.868a.408.408 0 0 0-.408-.408l-.002-.001Zm-16.326 0H2.869a.408.408 0 0 0-.408.408V24.09c0 1.127.914 2.041 2.04 2.041l7.609.002.347.307a5.297 5.297 0 0 0 2.248 1.18V4.5l-.01-.207a2.04 2.04 0 0 0-2.032-1.833h.002Z",fill:"#52A9FF"}),React.createElement("path",{d:"M5.726 4.5c.676 0 1.224.548 1.224 1.224v8.98a1.224 1.224 0 0 1-2.449 0v-8.98c0-.676.549-1.225 1.225-1.225ZM9.832 4.51c.676 0 1.224.547 1.224 1.224v4.081a1.224 1.224 0 0 1-2.448 0V5.734c0-.677.548-1.225 1.224-1.225Z",fill:"#00EFEF"})));var Gs="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbC1ydWxlPSJub256ZXJvIiBmaWxsPSJub25lIj48cGF0aCBkPSJNMTIuNjY1LjAxYzEuMjg2IDAgMi40NDUuNTQgMy4yNjUgMS40MDdsLjIzNy0uMjMzQTQuNDc4IDQuNDc4IDAgMCAxIDE4LjkyMy4wMThsLjI3Mi0uMDA4aDkuNzk2YTIuODU3IDIuODU3IDAgMCAxIDIuODU3IDIuODU3VjI0LjA5YTQuNDkgNC40OSAwIDAgMS00LjQ5IDQuNDlsLTYuNjIzLjAwMi0uMjUzLjE5MmE3LjcyIDcuNzIgMCAwIDEtNC4xMDEgMS40MzdsLS40MDkuMDFhNy43MjYgNy43MjYgMCAwIDEtNC41MS0xLjQ0N2wtLjI1Ny0uMTkySDQuNTAxQTQuNDkgNC40OSAwIDAgMSAuMDIgMjQuMzY2bC0uMDA4LS4yNzVWMi44NjdBMi44NTggMi44NTggMCAwIDEgMi44NjkuMDFoOS43OTZaTTI4Ljk5IDIuNDU5aC05Ljc5NmMtMS4xMjYgMC0yLjA0LjkxNC0yLjA0IDIuMDRsLjAwMSAyMy4xNGE1LjI4IDUuMjggMCAwIDAgMi4zMy0xLjE5N2wuMzQ4LS4zMDhoNy41MjZjMS4xMjcgMCAyLjA0MS0uOTE1IDIuMDQxLTIuMDQxVjIuODY4YS40MDguNDA4IDAgMCAwLS40MDgtLjQwOGwtLjAwMi0uMDAxWm0tMTYuMzI2IDBIMi44NjlhLjQwOC40MDggMCAwIDAtLjQwOC40MDhWMjQuMDljMCAxLjEyNy45MTQgMi4wNDEgMi4wNCAyLjA0MWw3LjYwOS4wMDIuMzQ3LjMwN2E1LjI5NyA1LjI5NyAwIDAgMCAyLjI0OCAxLjE4VjQuNWwtLjAxLS4yMDdhMi4wNCAyLjA0IDAgMCAwLTIuMDMyLTEuODMzaC4wMDJaIiBmaWxsPSIjNTJBOUZGIi8+PHBhdGggZD0iTTUuNzI2IDQuNWMuNjc2IDAgMS4yMjQuNTQ4IDEuMjI0IDEuMjI0djguOThhMS4yMjQgMS4yMjQgMCAwIDEtMi40NDkgMHYtOC45OGMwLS42NzYuNTQ5LTEuMjI1IDEuMjI1LTEuMjI1Wk05LjgzMiA0LjUxYy42NzYgMCAxLjIyNC41NDcgMS4yMjQgMS4yMjR2NC4wODFhMS4yMjQgMS4yMjQgMCAwIDEtMi40NDggMFY1LjczNGMwLS42NzcuNTQ4LTEuMjI1IDEuMjI0LTEuMjI1WiIgZmlsbD0iIzAwRUZFRiIvPjwvZz48L3N2Zz4=",il=Object.defineProperty,nl=Object.getOwnPropertySymbols,uo=Object.prototype.hasOwnProperty,Xo=Object.prototype.propertyIsEnumerable,Ho=(E,a,y)=>a in E?il(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,Xs=(E,a)=>{for(var y in a||(a={}))uo.call(a,y)&&Ho(E,y,a[y]);if(nl)for(var y of nl(a))Xo.call(a,y)&&Ho(E,y,a[y]);return E};const Il=E=>React.createElement("svg",Xs({width:29,height:34,xmlns:"http://www.w3.org/2000/svg"},E),React.createElement("title",null,"\u4F5C\u4E1A"),React.createElement("g",{fillRule:"nonzero",fill:"none"},React.createElement("path",{d:"M19.505.75a2.818 2.818 0 0 1 2.812 2.646l.005.172v.295l2.916.001a3.75 3.75 0 0 1 3.615 3.465l.01.2V29.59a3.747 3.747 0 0 1-3.819 3.66l-20.657-.002A3.75 3.75 0 0 1 .76 29.584V7.522a3.747 3.747 0 0 1 3.82-3.659H7.7v-.295A2.818 2.818 0 0 1 10.345.755l.172-.005h8.987Zm-11.8 5.539H4.434a1.32 1.32 0 0 0-1.247 1.24V29.57a1.32 1.32 0 0 0 1.25 1.253h20.754a1.32 1.32 0 0 0 1.247-1.24V7.541a1.326 1.326 0 0 0-1.394-1.252h-2.727v.018a2.818 2.818 0 0 1-2.64 2.64l-.172.006h-8.987a2.818 2.818 0 0 1-2.813-2.646v-.018Zm11.8-3.113h-8.987a.392.392 0 0 0-.384.313l-.008.079v2.567c0 .19.134.348.313.384l.079.008h8.987c.189 0 .347-.134.383-.313l.008-.079V3.568a.392.392 0 0 0-.391-.392Z",fill:"#52A9FF"}),React.createElement("path",{d:"M22.477 20.707H7.392a.963.963 0 0 1 0-1.926h15.085a.963.963 0 0 1 0 1.926Zm-6.824-5.136H7.392a.963.963 0 0 1 0-1.925h8.261a.963.963 0 0 1 0 1.925Zm3.852 9.629H7.392a.963.963 0 0 1 0-1.926h12.113a.963.963 0 0 1 0 1.926Z",fill:"#00EFEF"})));var _l="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjkiIGhlaWdodD0iMzQiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbC1ydWxlPSJub256ZXJvIiBmaWxsPSJub25lIj48cGF0aCBkPSJNMTkuNTA1Ljc1YTIuODE4IDIuODE4IDAgMCAxIDIuODEyIDIuNjQ2bC4wMDUuMTcydi4yOTVsMi45MTYuMDAxYTMuNzUgMy43NSAwIDAgMSAzLjYxNSAzLjQ2NWwuMDEuMlYyOS41OWEzLjc0NyAzLjc0NyAwIDAgMS0zLjgxOSAzLjY2bC0yMC42NTctLjAwMkEzLjc1IDMuNzUgMCAwIDEgLjc2IDI5LjU4NFY3LjUyMmEzLjc0NyAzLjc0NyAwIDAgMSAzLjgyLTMuNjU5SDcuN3YtLjI5NUEyLjgxOCAyLjgxOCAwIDAgMSAxMC4zNDUuNzU1bC4xNzItLjAwNWg4Ljk4N1ptLTExLjggNS41MzlINC40MzRhMS4zMiAxLjMyIDAgMCAwLTEuMjQ3IDEuMjRWMjkuNTdhMS4zMiAxLjMyIDAgMCAwIDEuMjUgMS4yNTNoMjAuNzU0YTEuMzIgMS4zMiAwIDAgMCAxLjI0Ny0xLjI0VjcuNTQxYTEuMzI2IDEuMzI2IDAgMCAwLTEuMzk0LTEuMjUyaC0yLjcyN3YuMDE4YTIuODE4IDIuODE4IDAgMCAxLTIuNjQgMi42NGwtLjE3Mi4wMDZoLTguOTg3YTIuODE4IDIuODE4IDAgMCAxLTIuODEzLTIuNjQ2di0uMDE4Wm0xMS44LTMuMTEzaC04Ljk4N2EuMzkyLjM5MiAwIDAgMC0uMzg0LjMxM2wtLjAwOC4wNzl2Mi41NjdjMCAuMTkuMTM0LjM0OC4zMTMuMzg0bC4wNzkuMDA4aDguOTg3Yy4xODkgMCAuMzQ3LS4xMzQuMzgzLS4zMTNsLjAwOC0uMDc5VjMuNTY4YS4zOTIuMzkyIDAgMCAwLS4zOTEtLjM5MloiIGZpbGw9IiM1MkE5RkYiLz48cGF0aCBkPSJNMjIuNDc3IDIwLjcwN0g3LjM5MmEuOTYzLjk2MyAwIDAgMSAwLTEuOTI2aDE1LjA4NWEuOTYzLjk2MyAwIDAgMSAwIDEuOTI2Wm0tNi44MjQtNS4xMzZINy4zOTJhLjk2My45NjMgMCAwIDEgMC0xLjkyNWg4LjI2MWEuOTYzLjk2MyAwIDAgMSAwIDEuOTI1Wm0zLjg1MiA5LjYyOUg3LjM5MmEuOTYzLjk2MyAwIDAgMSAwLTEuOTI2aDEyLjExM2EuOTYzLjk2MyAwIDAgMSAwIDEuOTI2WiIgZmlsbD0iIzAwRUZFRiIvPjwvZz48L3N2Zz4=",Go=Te(59301),lu=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(oe){b(oe)}},ee=ae=>{try{re(y.throw(ae))}catch(oe){b(oe)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});const Os={\u5B66\u4E60\u8DEF\u5F84:Gs,\u8BFE\u5802\u4F5C\u4E1A:_l,\u5728\u7EBF\u8003\u8BD5:ri,\u8BFE\u5802\u8D44\u6E90:Wi,\u89C6\u9891\u76F4\u64AD:bo},Vs=({user:E,setInfo:a})=>{var y,x,b,z,ee,re,ae,oe;const[de]=(0,be.useSearchParams)(),ge=(0,be.useParams)(),[ye,De]=(0,Ne.useState)(""),[ke,ze]=(0,Ne.useState)(!1),[We,Ve]=(0,Ne.useState)({});(0,Ne.useEffect)(()=>{Ze()},[ye]);const Ze=()=>lu(void 0,null,function*(){var Ye;ze(!0);const et=yield(0,te.ZP)(`/api/courses/${ge==null?void 0:ge.pathId}/student_situations/student_index.json`,{method:"get",params:{role_type:"study_progress",role_sub_type:ye,user_id:de.get("studentId")||((Ye=E==null?void 0:E.userInfo)==null?void 0:Ye.user_id)}});(et==null?void 0:et.status)===0&&(Ve(et==null?void 0:et.data),a(et==null?void 0:et.data)),ze(!1)});return Go.createElement("div",{style:{paddingBottom:"20px"}},Go.createElement("div",{className:or.type_style},Go.createElement("div",{className:or.type_title},"\u9884\u8B66\u7C7B\u578B"),(x=((y=We==null?void 0:We.situation_types)==null?void 0:y.length)>0?[{name:"\u5168\u90E8",role_sub_type:""},...We==null?void 0:We.situation_types]:[{name:"\u5168\u90E8",role_sub_type:""}])==null?void 0:x.map((Ye,et)=>Go.createElement("div",{onClick:()=>De(Ye.role_sub_type),key:et,className:(Ye==null?void 0:Ye.role_sub_type)==ye?or.type_title_active:or.type_title},Ye.name))),((b=We==null?void 0:We.no_handle_list)==null?void 0:b.length)>0&&Go.createElement("div",{className:or.box},Go.createElement("div",{className:or.box_title},Go.createElement("img",{src:Te(30711),style:{width:"8px",height:"16px"}}),Go.createElement("div",{className:or.box_title_text},"\u672A\u5904\u7406")),Go.createElement("div",{className:or.box_content},(z=We==null?void 0:We.no_handle_list)==null?void 0:z.map((Ye,et)=>Go.createElement("div",{className:or.box_item,key:et},Go.createElement("div",{className:or.item_tag},"\u672A\u5904\u7406"),Go.createElement("div",{className:or.item_icon},Go.createElement("img",{src:Os==null?void 0:Os[Ye==null?void 0:Ye.record_type]})),Go.createElement("div",{className:or.item_right},Go.createElement("div",{className:or.item_title},Ye==null?void 0:Ye.record_type),Go.createElement("div",{className:or.item_content},Ye==null?void 0:Ye.extra),Go.createElement("div",{className:or.item_time},Ye==null?void 0:Ye.created_at,Go.createElement("div",{className:or.item_go,onClick:()=>lu(void 0,null,function*(){if(!de.get("studentId")){const st=yield(0,te.ZP)(`/api/courses/${ge==null?void 0:ge.pathId}/student_situations/update_status.json`,{method:"post",body:{id:Ye==null?void 0:Ye.id}})}window.open(Ye==null?void 0:Ye.url)})},"\u524D\u5F80\u5B66\u4E60"))))))),((ee=We==null?void 0:We.handle_list)==null?void 0:ee.length)>0&&Go.createElement("div",{className:or.box,style:{marginTop:"20px"}},Go.createElement("div",{className:or.box_title},Go.createElement("img",{src:Te(30711),style:{width:"8px",height:"16px"}}),Go.createElement("div",{className:or.box_title_text},"\u5DF2\u5904\u7406")),Go.createElement("div",{className:or.box_content},(re=We==null?void 0:We.handle_list)==null?void 0:re.map((Ye,et)=>Go.createElement("div",{className:or.box_item,key:et,style:{border:"1px solid rgba(65, 185, 149, 0.35)"}},Go.createElement("div",{className:or.item_tag_good},"\u5DF2\u5904\u7406"),Go.createElement("div",{className:or.item_icon},Go.createElement("img",{src:Os==null?void 0:Os[Ye==null?void 0:Ye.record_type]})),Go.createElement("div",{className:or.item_right},Go.createElement("div",{className:or.item_title},Ye==null?void 0:Ye.record_type),Go.createElement("div",{className:or.item_content},Ye==null?void 0:Ye.extra),Go.createElement("div",{className:or.item_time},Ye==null?void 0:Ye.created_at,Go.createElement("div",{className:or.item_go,onClick:()=>lu(void 0,null,function*(){window.open(Ye==null?void 0:Ye.url)})},"\u524D\u5F80\u5B66\u4E60"))))))),((ae=We==null?void 0:We.no_handle_list)==null?void 0:ae.length)==0&&((oe=We==null?void 0:We.handle_list)==null?void 0:oe.length)==0&&Go.createElement(Vt.Z,null))};var Mu=(0,be.connect)(({user:E})=>({user:E}))(Vs),Al={weak:"weak___DH3Z9",waveDom:"waveDom___UK7xx",waveDom_poor:"waveDom_poor___xDdDI",wave:"wave___nzHXf",waveDom_average:"waveDom_average___PLvUf",waveDom_fine:"waveDom_fine___RuZNo",legend:"legend___ckKLX",legend_text_poor:"legend_text_poor___KuUv3",legend_text_average:"legend_text_average___KthU9",legend_text_fine:"legend_text_fine___RwZNq",legend_value:"legend_value___uvSOl",name_span:"name_span___SDyy5"},ol=Te(59301),uc=Object.defineProperty,zi=Object.getOwnPropertySymbols,Ga=Object.prototype.hasOwnProperty,ja=Object.prototype.propertyIsEnumerable,Ua=(E,a,y)=>a in E?uc(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,ao=(E,a)=>{for(var y in a||(a={}))Ga.call(a,y)&&Ua(E,y,a[y]);if(zi)for(var y of zi(a))ja.call(a,y)&&Ua(E,y,a[y]);return E},ko=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(oe){b(oe)}},ee=ae=>{try{re(y.throw(ae))}catch(oe){b(oe)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});const Ts=({user:E,openInfo:a,openKnowledge:y,setInfo:x})=>{var b,z;const[ee]=(0,be.useSearchParams)(),re=(0,be.useParams)(),[ae,oe]=(0,Ne.useState)(!1),[de,ge]=(0,Ne.useState)({}),ye=(0,fn.bg)()&&(ee.get("studentId")||!(0,fn.GJ)()),[De,ke]=(0,Ne.useState)({bad1:"",bad2:"",norm1:"",norm2:"",good1:"",good2:""});(0,Ne.useEffect)(()=>{ze()},[]);const ze=()=>ko(void 0,null,function*(){var We,Ve,Ze,Ye,et,st,ht,mt,dt,Ot,_t,wt,$t,gn,Xt,Tn,er,En,yn,Cn,qn,pn,lr,Jr,na,Hr,Ar,Wr,ya;oe(!0);const Ra=ye?`/api/courses/${re==null?void 0:re.pathId}/student_situations/student_index.json`:`/api/courses/${re==null?void 0:re.pathId}/student_situations.json`,Aa=yield(0,te.ZP)(Ra,{method:"get",params:{role_type:"knowledge_grasp",user_id:ee.get("studentId")||((We=E==null?void 0:E.userInfo)==null?void 0:We.user_id)}});if((Aa==null?void 0:Aa.status)===0){ge(Aa==null?void 0:Aa.data),x(Aa==null?void 0:Aa.data);for(let co in(Ve=Aa==null?void 0:Aa.data)==null?void 0:Ve.settings)((et=(Ye=(Ze=Aa==null?void 0:Aa.data)==null?void 0:Ze.settings)==null?void 0:Ye[co])==null?void 0:et.role_sub_type)=="weak_kp"&&(De.bad1=(mt=(ht=(st=Aa==null?void 0:Aa.data)==null?void 0:st.settings)==null?void 0:ht[co])==null?void 0:mt.min_value,De.bad2=(_t=(Ot=(dt=Aa==null?void 0:Aa.data)==null?void 0:dt.settings)==null?void 0:Ot[co])==null?void 0:_t.max_value),((gn=($t=(wt=Aa==null?void 0:Aa.data)==null?void 0:wt.settings)==null?void 0:$t[co])==null?void 0:gn.role_sub_type)=="norm_kp"&&(De.norm1=(er=(Tn=(Xt=Aa==null?void 0:Aa.data)==null?void 0:Xt.settings)==null?void 0:Tn[co])==null?void 0:er.min_value,De.norm2=(Cn=(yn=(En=Aa==null?void 0:Aa.data)==null?void 0:En.settings)==null?void 0:yn[co])==null?void 0:Cn.max_value),((lr=(pn=(qn=Aa==null?void 0:Aa.data)==null?void 0:qn.settings)==null?void 0:pn[co])==null?void 0:lr.role_sub_type)=="good_kp"&&(De.good1=(Hr=(na=(Jr=Aa==null?void 0:Aa.data)==null?void 0:Jr.settings)==null?void 0:na[co])==null?void 0:Hr.min_value,De.good2=(ya=(Wr=(Ar=Aa==null?void 0:Aa.data)==null?void 0:Ar.settings)==null?void 0:Wr[co])==null?void 0:ya.max_value),ke(ao({},De))}oe(!1)});return ol.createElement(ce.Z,{spinning:ae},ol.createElement("div",{className:Al.weak},ol.createElement("div",{className:Al.legend},ol.createElement("div",{className:Al.legend_text_poor}),ol.createElement("div",{className:Al.legend_value},"\u8584\u5F31\u70B9\uFF08",De==null?void 0:De.bad1,"%~",De==null?void 0:De.bad2,"%\uFF09"),ol.createElement("div",{className:Al.legend_text_average}),ol.createElement("div",{className:Al.legend_value},"\u638C\u63E1\u4E00\u822C\uFF08",De==null?void 0:De.norm1,"%~",De==null?void 0:De.norm2,"%\uFF09"),ol.createElement("div",{className:Al.legend_text_fine}),ol.createElement("div",{className:Al.legend_value},"\u638C\u63E1\u826F\u597D\uFF08",De==null?void 0:De.good1,"%~",De==null?void 0:De.good2,"%\uFF09")),((b=de==null?void 0:de.list)==null?void 0:b.length)>0?ol.createElement("div",{className:Al.waveDom},(z=de==null?void 0:de.list)==null?void 0:z.map(We=>ol.createElement(on.Z,{title:ol.createElement("div",{style:{color:"#fff"}},ol.createElement("div",{style:{fontWeight:600}},We==null?void 0:We.knowledge_name),!ye&&ol.createElement("div",{style:{margin:"5px 0"}},"\u5B66\u4E60\u4EBA\u6570\uFF1A",We==null?void 0:We.user_count),ol.createElement("div",null,"\u638C\u63E1\u7387\uFF1A",We==null?void 0:We.rate,"%"))},ol.createElement("div",{style:{cursor:"pointer"},onClick:()=>{ye?y(We):a(We)},className:(We==null?void 0:We.rate)<(De==null?void 0:De.norm1)?Al.waveDom_poor:(We==null?void 0:We.rate)>(De==null?void 0:De.norm2)?Al.waveDom_fine:Al.waveDom_average},!!(We!=null&&We.rate)&&ol.createElement("div",{style:{top:`calc(100% - ${We==null?void 0:We.rate}%)`},className:Al.wave}),ol.createElement("span",{className:Al.name_span,style:{fontSize:"12px"}},We==null?void 0:We.knowledge_name))))):ol.createElement(Vt.Z,null)))};var ws=(0,be.connect)(({user:E})=>({user:E}))(Ts),Ks={flex_box_center:"flex_box_center___Pkd4t",flex_space_between:"flex_space_between___ssHC9",flex_box_vertical_center:"flex_box_vertical_center___mDdC9",flex_box_center_end:"flex_box_center_end___dz9ne",flex_box_column:"flex_box_column___Q1Kq7",myForm:"myForm___M_LXD",table_box:"table_box___hnXuC",TableStyle:"TableStyle___yZoBi"},Oo=Te(59301),uu=Object.defineProperty,fl=Object.getOwnPropertySymbols,Co=Object.prototype.hasOwnProperty,Jo=Object.prototype.propertyIsEnumerable,Fs=(E,a,y)=>a in E?uu(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,_o=(E,a)=>{for(var y in a||(a={}))Co.call(a,y)&&Fs(E,y,a[y]);if(fl)for(var y of fl(a))Jo.call(a,y)&&Fs(E,y,a[y]);return E},gs=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(oe){b(oe)}},ee=ae=>{try{re(y.throw(ae))}catch(oe){b(oe)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});const{RangePicker:Or}=Et.default;var Rr=({setInfo:E})=>{var a;const[y]=xe.default.useForm(),x=(0,Ne.useRef)(!0),b=(0,be.useParams)(),[z,ee]=(0,Ne.useState)(!1),[re,ae]=(0,Ne.useState)(1),[oe,de]=(0,Ne.useState)({}),[ge,ye]=(0,Ne.useState)({real_name:"",course_group_id:"",time:null}),De=[{title:"\u5E8F\u53F7",dataIndex:"order",key:"order",align:"center",render:(ze,We,Ve)=>`${(re-1)*10+Ve+1}`,width:50},{title:"\u59D3\u540D",dataIndex:"real_name",key:"real_name",width:250,ellipsis:!0,align:"left",render:(ze,We)=>Oo.createElement("span",null,ze||"--")},{title:"\u5B66\u53F7",dataIndex:"student_id",key:"student_id",ellipsis:!0,width:200,align:"left",render:ze=>Oo.createElement("span",null,ze||"--")},{title:"\u73ED\u7EA7",dataIndex:"course_group_name",key:"course_group_name",ellipsis:!0,width:200,align:"left",render:(ze,We,Ve)=>Oo.createElement("span",null,ze||"--")},{title:"\u9884\u8B66\u65E5\u671F",dataIndex:"created_at",key:"created_at",ellipsis:!0,align:"left",width:200,render:ze=>Oo.createElement("span",null,ze||"--")},{title:"\u9884\u8B66\u4FE1\u606F",dataIndex:"extra",key:"extra",ellipsis:!0,align:"left",render:ze=>Oo.createElement("span",null,ze||"--")}].filter(ze=>!!ze);(0,Ne.useEffect)(()=>{if(x.current){x.current=!1;return}re==1?ke():ae(1)},[ge]),(0,Ne.useEffect)(()=>{ke()},[re]);const ke=()=>gs(void 0,null,function*(){var ze,We,Ve,Ze;ee(!0);const Ye=yield(0,te.ZP)(`/api/courses/${b==null?void 0:b.pathId}/student_situations.json`,{method:"get",params:{role_type:"action_abnormal",page:re,limit:10,real_name:ge==null?void 0:ge.real_name,course_group_id:ge==null?void 0:ge.course_group_id,start_time:(We=(ze=ge==null?void 0:ge.time)==null?void 0:ze[0])==null?void 0:We.format("YYYY-MM-DD"),end_time:(Ze=(Ve=ge==null?void 0:ge.time)==null?void 0:Ve[1])==null?void 0:Ze.format("YYYY-MM-DD")}});(Ye==null?void 0:Ye.status)===0&&(de(Ye==null?void 0:Ye.data),E(Ye==null?void 0:Ye.data)),ee(!1)});return Oo.createElement(ce.Z,{spinning:z},Oo.createElement("div",{className:"mt20"},Oo.createElement(xe.default,{layout:"inline",form:y,className:Ks.myForm,initialValues:{real_name:"",course_group_id:"",start_time:null,end_time:null}},Oo.createElement(xe.default.Item,{name:"real_name",label:"\u59D3\u540D",colon:!1},Oo.createElement(Se.default.Search,{style:{width:200},autocomplete:"off",onSearch:ze=>{ge.real_name=ze,ye(_o({},ge))},onPressEnter:ze=>{ge.real_name=ze.target.value,ye(_o({},ge))}})),Oo.createElement(xe.default.Item,{name:"course_group_id",label:"\u73ED\u7EA7",colon:!1,className:"ml20"},Oo.createElement(xt.default,{style:{width:200},onChange:ze=>{ge.course_group_id=ze,ye(_o({},ge))}},Oo.createElement(xt.default.Option,{value:""},"\u5168\u90E8"),(a=oe==null?void 0:oe.course_groups)==null?void 0:a.map(ze=>Oo.createElement(xt.default.Option,{value:ze==null?void 0:ze.id,key:ze==null?void 0:ze.id},ze==null?void 0:ze.name))))),Oo.createElement("div",{className:Ks.table_box},Oo.createElement(Jt.default,{className:`mt-14px-rem ${Ks.TableStyle} flex-1`,locale:{emptyText:Oo.createElement(Vt.Z,null)},columns:De,pagination:!1,dataSource:(oe==null?void 0:oe.list)||[]}),Oo.createElement(ln.Z,{className:"mt20",showTotal:ze=>Oo.createElement("span",{className:"mr10",style:{color:"#fff"}},"\u5171",Oo.createElement("span",{className:"c-blue"}," ",ze," "),"\u6761\u6570\u636E"),defaultCurrent:1,defaultPageSize:10,current:re||1,showSizeChanger:!1,showQuickJumper:!0,hideOnSinglePage:!0,total:oe==null?void 0:oe.total_count,onChange:ze=>{ae(ze)}}))))},ga=Te(24905),pi=Te(5871),Ca={flex_box_center:"flex_box_center___eu1jv",flex_space_between:"flex_space_between___imwgW",flex_box_vertical_center:"flex_box_vertical_center___gp9YH",flex_box_center_end:"flex_box_center_end___WUd2W",flex_box_column:"flex_box_column___hchtU",scoremodal:"scoremodal___CPE35",tabWrap:"tabWrap___kCujm",from_item:"from_item___yB1Ob",from_item_title:"from_item_title____sFK_",from_item_desc:"from_item_desc___Sgx_g"},rr=Te(59301),Li=Object.defineProperty,io=Object.defineProperties,Lo=Object.getOwnPropertyDescriptors,Zi=Object.getOwnPropertySymbols,ai=Object.prototype.hasOwnProperty,Bo=Object.prototype.propertyIsEnumerable,vs=(E,a,y)=>a in E?Li(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,rl=(E,a)=>{for(var y in a||(a={}))ai.call(a,y)&&vs(E,y,a[y]);if(Zi)for(var y of Zi(a))Bo.call(a,y)&&vs(E,y,a[y]);return E},eo=(E,a)=>io(E,Lo(a)),Hi=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(oe){b(oe)}},ee=ae=>{try{re(y.throw(ae))}catch(oe){b(oe)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});const xs=({dispatch:E,user:a,classroomList:y})=>{const x=(0,be.useParams)(),[b,z]=(0,Ne.useState)([]),[ee,re]=(0,Ne.useState)({type:"0"}),[ae]=xe.default.useForm();(0,Ne.useEffect)(()=>{y.actionTabs.key=="\u5B66\u60C5\u9884\u8B66\u89C4\u5219\u8BBE\u7F6E"&&(re(eo(rl({},ee),{type:y.actionTabs.params.tabs.toString()})),oe())},[y.actionTabs]);const oe=()=>Hi(void 0,null,function*(){var ge,ye;const De=yield(0,te.ZP)(`/api/courses/${x==null?void 0:x.pathId}/student_situations.json`,{method:"get"});(De==null?void 0:De.status)===0&&(z((ge=De==null?void 0:De.data)==null?void 0:ge.settings),de((ye=De==null?void 0:De.data)==null?void 0:ye.settings))}),de=ge=>{var ye,De,ke,ze,We,Ve,Ze,Ye,et,st,ht,mt,dt,Ot,_t,wt,$t,gn;for(let Xt in ge)((ye=ge[Xt])==null?void 0:ye.role_type)=="study_progress"?((De=ge[Xt])==null?void 0:De.role_sub_type)=="route_rate"?(ae.setFieldValue("tab0_1_right",ge[Xt].min_value),ae.setFieldValue("tab0_1_left",ge[Xt].status)):((ke=ge[Xt])==null?void 0:ke.role_sub_type)=="miss_hw"?(ae.setFieldValue("tab0_2_right",ge[Xt].min_value),ae.setFieldValue("tab0_2_left",ge[Xt].status)):((ze=ge[Xt])==null?void 0:ze.role_sub_type)=="late_hw"?(ae.setFieldValue("tab0_3_right",ge[Xt].min_value),ae.setFieldValue("tab0_3_left",ge[Xt].status)):((We=ge[Xt])==null?void 0:We.role_sub_type)=="anon_hw"?(ae.setFieldValue("tab0_4_right",ge[Xt].min_value),ae.setFieldValue("tab0_4_left",ge[Xt].status)):((Ve=ge[Xt])==null?void 0:Ve.role_sub_type)=="exam_end"?(ae.setFieldValue("tab0_5_right",ge[Xt].min_value),ae.setFieldValue("tab0_5_left",ge[Xt].status)):((Ze=ge[Xt])==null?void 0:Ze.role_sub_type)=="res_warn"?(ae.setFieldValue("tab0_6_right",ge[Xt].min_value),ae.setFieldValue("tab0_6_left",ge[Xt].status)):((Ye=ge[Xt])==null?void 0:Ye.role_sub_type)=="vid_warn"&&(ae.setFieldValue("tab0_7_right",ge[Xt].min_value),ae.setFieldValue("tab0_7_left",ge[Xt].status)):((et=ge[Xt])==null?void 0:et.role_type)=="knowledge_grasp"?((st=ge[Xt])==null?void 0:st.role_sub_type)=="weak_kp"?(ae.setFieldValue("tab1_1_right",ge[Xt].max_value),ae.setFieldValue("tab1_1_left",ge[Xt].min_value)):((ht=ge[Xt])==null?void 0:ht.role_sub_type)=="norm_kp"?(ae.setFieldValue("tab1_2_right",ge[Xt].max_value),ae.setFieldValue("tab1_2_left",ge[Xt].min_value)):((mt=ge[Xt])==null?void 0:mt.role_sub_type)=="good_kp"&&(ae.setFieldValue("tab1_3_right",ge[Xt].max_value),ae.setFieldValue("tab1_3_left",ge[Xt].min_value)):((dt=ge[Xt])==null?void 0:dt.role_type)=="action_abnormal"&&(((Ot=ge[Xt])==null?void 0:Ot.role_sub_type)=="time_hw"?(ae.setFieldValue("tab2_1_right",ge[Xt].min_value),ae.setFieldValue("tab2_1_left",ge[Xt].status)):((_t=ge[Xt])==null?void 0:_t.role_sub_type)=="peek_hw"?ae.setFieldValue("tab2_2_left",ge[Xt].status):((wt=ge[Xt])==null?void 0:wt.role_sub_type)=="copy_hw"?(ae.setFieldValue("tab2_3_right",ge[Xt].min_value),ae.setFieldValue("tab2_3_left",ge[Xt].status)):(($t=ge[Xt])==null?void 0:$t.role_sub_type)=="absent"?ae.setFieldValue("tab2_4_left",ge[Xt].status):((gn=ge[Xt])==null?void 0:gn.role_sub_type)=="no_login"&&(ae.setFieldValue("tab2_5_right",ge[Xt].min_value),ae.setFieldValue("tab2_5_left",ge[Xt].status)))};return rr.createElement("div",null,rr.createElement(Me.default,{title:"\u5B66\u60C5\u9884\u8B66\u89C4\u5219\u8BBE\u7F6E",open:y.actionTabs.key=="\u5B66\u60C5\u9884\u8B66\u89C4\u5219\u8BBE\u7F6E",width:900,centered:!0,className:Ca.scoremodal,onCancel:()=>{E({type:"classroomList/setActionTabs",payload:{key:""}})},onOk:()=>Hi(void 0,null,function*(){var ge,ye,De,ke,ze,We,Ve,Ze,Ye,et,st,ht,mt,dt,Ot,_t;let wt=ae.getFieldsValue(),$t=[];if(ee.type=="0"){if(wt!=null&&wt.tab0_1_left&&(wt==null?void 0:wt.tab0_1_right)!=0&&!(wt!=null&&wt.tab0_1_right)&&!((ge=wt==null?void 0:wt.tab0_1_right)!=null&&ge.trim())||wt!=null&&wt.tab0_2_left&&(wt==null?void 0:wt.tab0_2_right)!=0&&!(wt!=null&&wt.tab0_2_right)&&!((ye=wt==null?void 0:wt.tab0_2_right)!=null&&ye.trim())||wt!=null&&wt.tab0_3_left&&(wt==null?void 0:wt.tab0_3_right)!=0&&!(wt!=null&&wt.tab0_3_right)&&!((De=wt==null?void 0:wt.tab0_3_right)!=null&&De.trim())||wt!=null&&wt.tab0_4_left&&(wt==null?void 0:wt.tab0_4_right)!=0&&!(wt!=null&&wt.tab0_4_right)&&!((ke=wt==null?void 0:wt.tab0_4_right)!=null&&ke.trim())||wt!=null&&wt.tab0_5_left&&(wt==null?void 0:wt.tab0_5_right)!=0&&!(wt!=null&&wt.tab0_5_right)&&!((ze=wt==null?void 0:wt.tab0_5_right)!=null&&ze.trim())||wt!=null&&wt.tab0_6_left&&(wt==null?void 0:wt.tab0_6_right)!=0&&!(wt!=null&&wt.tab0_6_right)&&!((We=wt==null?void 0:wt.tab0_6_right)!=null&&We.trim())||wt!=null&&wt.tab0_7_left&&(wt==null?void 0:wt.tab0_7_right)!=0&&!(wt!=null&&wt.tab0_7_right)&&!((Ve=wt==null?void 0:wt.tab0_7_right)!=null&&Ve.trim())){_e.ZP.warning("\u5DF2\u52FE\u9009\u7684\u5185\u5BB9\u9608\u503C\u4E3A\u5FC5\u586B");return}$t.push({role_type:"study_progress",role_sub_type:"route_rate",min_value:wt==null?void 0:wt.tab0_1_right,max_value:"",status:wt!=null&&wt.tab0_1_left?1:0},{role_type:"study_progress",role_sub_type:"miss_hw",min_value:wt==null?void 0:wt.tab0_2_right,max_value:"",status:wt!=null&&wt.tab0_2_left?1:0},{role_type:"study_progress",role_sub_type:"late_hw",min_value:wt==null?void 0:wt.tab0_3_right,max_value:"",status:wt!=null&&wt.tab0_3_left?1:0},{role_type:"study_progress",role_sub_type:"anon_hw",min_value:wt==null?void 0:wt.tab0_4_right,max_value:"",status:wt!=null&&wt.tab0_4_left?1:0},{role_type:"study_progress",role_sub_type:"exam_end",min_value:wt==null?void 0:wt.tab0_5_right,max_value:"",status:wt!=null&&wt.tab0_5_left?1:0},{role_type:"study_progress",role_sub_type:"res_warn",min_value:wt==null?void 0:wt.tab0_6_right,max_value:"",status:wt!=null&&wt.tab0_6_left?1:0},{role_type:"study_progress",role_sub_type:"vid_warn",min_value:wt==null?void 0:wt.tab0_7_right,max_value:"",status:wt!=null&&wt.tab0_7_left?1:0})}else if(ee.type=="1"){if((wt==null?void 0:wt.tab1_1_left)!=0&&!(wt!=null&&wt.tab1_1_left)&&!((Ze=wt==null?void 0:wt.tab1_1_left)!=null&&Ze.trim())||(wt==null?void 0:wt.tab1_1_right)!=0&&!(wt!=null&&wt.tab1_1_right)&&!((Ye=wt==null?void 0:wt.tab1_1_right)!=null&&Ye.trim())||(wt==null?void 0:wt.tab1_2_left)!=0&&!(wt!=null&&wt.tab1_2_left)&&!((et=wt==null?void 0:wt.tab1_2_left)!=null&&et.trim())||(wt==null?void 0:wt.tab1_2_right)!=0&&!(wt!=null&&wt.tab1_2_right)&&!((st=wt==null?void 0:wt.tab1_2_right)!=null&&st.trim())||(wt==null?void 0:wt.tab1_3_left)!=0&&!(wt!=null&&wt.tab1_3_left)&&!((ht=wt==null?void 0:wt.tab1_3_left)!=null&&ht.trim())||(wt==null?void 0:wt.tab1_3_right)!=0&&!(wt!=null&&wt.tab1_3_right)&&!((mt=wt==null?void 0:wt.tab1_3_right)!=null&&mt.trim())){_e.ZP.warning("\u5DF2\u52FE\u9009\u7684\u5185\u5BB9\u9608\u503C\u4E3A\u5FC5\u586B");return}if((wt==null?void 0:wt.tab1_1_left)>(wt==null?void 0:wt.tab1_1_right)||(wt==null?void 0:wt.tab1_2_left)>(wt==null?void 0:wt.tab1_2_right)||(wt==null?void 0:wt.tab1_3_left)>(wt==null?void 0:wt.tab1_3_right)){_e.ZP.warning("\u5F00\u59CB\u9608\u503C\u4E0D\u80FD\u5927\u4E8E\u622A\u6B62\u9608\u503C");return}if((wt==null?void 0:wt.tab1_1_right)>=(wt==null?void 0:wt.tab1_2_left)||(wt==null?void 0:wt.tab1_2_right)>=(wt==null?void 0:wt.tab1_3_left)){_e.ZP.warning("\u638C\u63E1\u7387\u8303\u56F4\u4E0D\u80FD\u91CD\u5408");return}$t.push({role_type:"knowledge_grasp",role_sub_type:"weak_kp",min_value:wt==null?void 0:wt.tab1_1_left,max_value:wt==null?void 0:wt.tab1_1_right,status:1},{role_type:"knowledge_grasp",role_sub_type:"norm_kp",min_value:wt==null?void 0:wt.tab1_2_left,max_value:wt==null?void 0:wt.tab1_2_right,status:1},{role_type:"knowledge_grasp",role_sub_type:"good_kp",min_value:wt==null?void 0:wt.tab1_3_left,max_value:wt==null?void 0:wt.tab1_3_right,status:1})}else if(ee.type=="2"){if(wt!=null&&wt.tab2_1_left&&(wt==null?void 0:wt.tab2_1_right)!=0&&!(wt!=null&&wt.tab2_1_right)&&!((dt=wt==null?void 0:wt.tab2_1_right)!=null&&dt.trim())||wt!=null&&wt.tab2_3_left&&(wt==null?void 0:wt.tab2_3_right)!=0&&!(wt!=null&&wt.tab2_3_right)&&!((Ot=wt==null?void 0:wt.tab2_3_right)!=null&&Ot.trim())||wt!=null&&wt.tab2_5_left&&(wt==null?void 0:wt.tab2_5_right)!=0&&!(wt!=null&&wt.tab2_5_right)&&!((_t=wt==null?void 0:wt.tab2_5_right)!=null&&_t.trim())){_e.ZP.warning("\u5DF2\u52FE\u9009\u7684\u5185\u5BB9\u9608\u503C\u4E3A\u5FC5\u586B");return}$t.push({role_type:"action_abnormal",role_sub_type:"time_hw",min_value:wt==null?void 0:wt.tab2_1_right,max_value:"",status:wt!=null&&wt.tab2_1_left?1:0},{role_type:"action_abnormal",role_sub_type:"peek_hw",min_value:"",max_value:"",status:wt!=null&&wt.tab2_2_left?1:0},{role_type:"action_abnormal",role_sub_type:"copy_hw",min_value:wt==null?void 0:wt.tab2_3_right,max_value:"",status:wt!=null&&wt.tab2_3_left?1:0},{role_type:"action_abnormal",role_sub_type:"absent",min_value:"",max_value:"",status:wt!=null&&wt.tab2_4_left?1:0},{role_type:"action_abnormal",role_sub_type:"no_login",min_value:wt==null?void 0:wt.tab2_5_right,max_value:"",status:wt!=null&&wt.tab2_5_left?1:0})}const gn=yield(0,te.ZP)(`/api/courses/${x==null?void 0:x.pathId}/student_situations/update_setting.json`,{method:"post",body:{settings:$t}});(gn==null?void 0:gn.status)===0&&(_e.ZP.success("\u8BBE\u7F6E\u6210\u529F"),E({type:"classroomList/setActionTabs",payload:{key:""}}))})},rr.createElement(yt.default,{className:Ca.tabWrap,activeKey:ee.type,onChange:ge=>{ee.type=ge,re(rl({},ee)),de(b)},items:[{label:"\u5B66\u4E60\u8FDB\u5EA6\u6EDE\u540E",key:"0"},{label:"\u77E5\u8BC6\u70B9\u638C\u63E1",key:"1"},{label:"\u884C\u4E3A\u5F02\u5E38",key:"2"}]}),rr.createElement(xe.default,{form:ae,labelCol:{span:4},wrapperCol:{span:20}},ee.type=="0"&&rr.createElement("div",null,rr.createElement("div",{className:Ca.from_item},rr.createElement(xe.default.Item,{name:"tab0_1_left",valuePropName:"checked"},rr.createElement(ga.default,null)),rr.createElement("div",{className:Ca.from_item_title},"\u5B66\u4E60\u8DEF\u5F84\u5B8C\u6210\u7387\u5C11\u4E8E"),rr.createElement(xe.default.Item,{name:"tab0_1_right"},rr.createElement(pi.Z,{suffix:"%",width:120,size:"large",min:0,max:100,precision:0})),rr.createElement("div",{className:Ca.from_item_desc},"\uFF08\u5B66\u751F\u5B66\u4E60\u8DEF\u5F84\u5B8C\u6210\u7387\u5C0F\u4E8E\u8BBE\u5B9A\u503C\uFF0C\u5219\u53D1\u9001\u5B66\u4E60\u9884\u8B66\uFF09")),rr.createElement("div",{className:Ca.from_item},rr.createElement(xe.default.Item,{name:"tab0_2_left",valuePropName:"checked"},rr.createElement(ga.default,null)),rr.createElement("div",{className:Ca.from_item_title},"\u4F5C\u4E1A\u622A\u6B62\u524D"),rr.createElement(xe.default.Item,{name:"tab0_2_right"},rr.createElement(pi.Z,{width:120,size:"large",min:0,max:100,precision:0})),rr.createElement("div",{className:Ca.from_item_title},"\u5C0F\u65F6\u672A\u63D0\u4EA4\u4F5C\u4E1A"),rr.createElement("div",{className:Ca.from_item_desc},"\uFF08\u5230\u8FBE\u8BBE\u7F6E\u65F6\u95F4\u672A\u63D0\u4EA4\u4F5C\u4E1A\uFF0C\u5219\u53D1\u9001\u5B66\u4E60\u9884\u8B66\uFF09")),rr.createElement("div",{className:Ca.from_item},rr.createElement(xe.default.Item,{name:"tab0_3_left",valuePropName:"checked"},rr.createElement(ga.default,null)),rr.createElement("div",{className:Ca.from_item_title},"\u4F5C\u4E1A\u8FDB\u5EA6\u843D\u540E"),rr.createElement(xe.default.Item,{name:"tab0_3_right"},rr.createElement(pi.Z,{width:120,suffix:"%",size:"large",min:0,max:100,precision:0})),rr.createElement("div",{className:Ca.from_item_title},"\u5B66\u751F"),rr.createElement("div",{className:Ca.from_item_desc},"\uFF08\u73ED\u7EA7\u4E2D\u6307\u5B9A\u5B66\u751F\u4F5C\u4E1A\u63D0\u4EA4\u4F5C\u4E1A\u65F6\uFF0C\u5219\u53D1\u9001\u5B66\u4E60\u9884\u8B66\uFF09")),rr.createElement("div",{className:Ca.from_item},rr.createElement(xe.default.Item,{name:"tab0_4_left",valuePropName:"checked"},rr.createElement(ga.default,null)),rr.createElement("div",{className:Ca.from_item_title},"\u4F5C\u4E1A\u533F\u8BC4\u622A\u6B62\u524D"),rr.createElement(xe.default.Item,{name:"tab0_4_right"},rr.createElement(pi.Z,{width:120,size:"large",min:0,max:100,precision:0})),rr.createElement("div",{className:Ca.from_item_title},"\u5C0F\u65F6\u672A\u533F\u8BC4\u4F5C\u4E1A"),rr.createElement("div",{className:Ca.from_item_desc},"\uFF08\u5230\u8FBE\u8BBE\u7F6E\u65F6\u95F4\u672A\u5B8C\u6210\u4F5C\u4E1A\u533F\u8BC4\u4EFB\u52A1\uFF0C\u5219\u53D1\u9001\u5B66\u4E60\u9884\u8B66\uFF09")),rr.createElement("div",{className:Ca.from_item},rr.createElement(xe.default.Item,{name:"tab0_5_left",valuePropName:"checked"},rr.createElement(ga.default,null)),rr.createElement("div",{className:Ca.from_item_title},"\u8DDD\u79BB\u8003\u8BD5\u7ED3\u675F\u524D"),rr.createElement(xe.default.Item,{name:"tab0_5_right"},rr.createElement(pi.Z,{width:120,size:"large",min:0,max:100,precision:0})),rr.createElement("div",{className:Ca.from_item_title},"\u5C0F\u65F6\u672A\u5F00\u59CB\u8003\u8BD5"),rr.createElement("div",{className:Ca.from_item_desc},"\uFF08\u5230\u8FBE\u8BBE\u7F6E\u65F6\u95F4\u672A\u53C2\u52A0\u8003\u8BD5\uFF0C\u5219\u53D1\u9001\u5B66\u4E60\u9884\u8B66\uFF09")),rr.createElement("div",{className:Ca.from_item},rr.createElement(xe.default.Item,{name:"tab0_6_left",valuePropName:"checked"},rr.createElement(ga.default,null)),rr.createElement("div",{className:Ca.from_item_title},"\u8D44\u6E90\u5B66\u4E60\u8FDB\u5EA6\u843D\u540E"),rr.createElement(xe.default.Item,{name:"tab0_6_right"},rr.createElement(pi.Z,{width:120,suffix:"%",size:"large",min:0,max:100,precision:0})),rr.createElement("div",{className:Ca.from_item_title},"\u672C\u73ED\u540C\u5B66"),rr.createElement("div",{className:Ca.from_item_desc},"\uFF08\u8BFE\u5802\u6559\u5B66\u8D44\u6E90\u5B66\u4E60\u8FDB\u5EA6\u843D\u540E\u540C\u5B66\uFF0C\u5219\u53D1\u9001\u5B66\u4E60\u9884\u8B66\uFF09")),rr.createElement("div",{className:Ca.from_item,style:{marginBottom:0}},rr.createElement(xe.default.Item,{name:"tab0_7_left",valuePropName:"checked"},rr.createElement(ga.default,null)),rr.createElement("div",{className:Ca.from_item_title},"\u89C6\u9891\u5B66\u4E60\u8FDB\u5EA6\u843D\u540E"),rr.createElement(xe.default.Item,{name:"tab0_7_right"},rr.createElement(pi.Z,{width:120,suffix:"%",size:"large",min:0,max:100,precision:0})),rr.createElement("div",{className:Ca.from_item_title},"\u672C\u73ED\u540C\u5B66"),rr.createElement("div",{className:Ca.from_item_desc},"\uFF08\u8BFE\u5802\u89C6\u9891\u76F4\u64AD\u5B66\u4E60\u8FDB\u5EA6\u843D\u540E\u540C\u5B66\uFF0C\u5219\u53D1\u9001\u5B66\u4E60\u9884\u8B66\uFF09"))),ee.type=="1"&&rr.createElement("div",null,rr.createElement("div",{className:Ca.from_item},rr.createElement("div",{className:Ca.from_item_title},"\u5355\u4E2A\u77E5\u8BC6\u70B9\u638C\u63E1\u60C5\u51B5")),rr.createElement("div",{className:Ca.from_item},rr.createElement("div",{className:Ca.from_item_title},"\u8584\u5F31\u77E5\u8BC6\u70B9\uFF1A\u638C\u63E1\u7387\u4E3A"),rr.createElement(xe.default.Item,{name:"tab1_1_left"},rr.createElement(pi.Z,{width:120,size:"large",suffix:"%",min:0,max:100,precision:0})),rr.createElement("div",{className:Ca.from_item_title},"\u81F3"),rr.createElement(xe.default.Item,{name:"tab1_1_right"},rr.createElement(pi.Z,{width:120,size:"large",suffix:"%",min:0,max:100,precision:0})),rr.createElement("div",{className:Ca.from_item_title},"\u7684\u77E5\u8BC6\u70B9")),rr.createElement("div",{className:Ca.from_item},rr.createElement("div",{className:Ca.from_item_title},"\u638C\u63E1\u4E00\u822C\u77E5\u8BC6\u70B9\uFF1A\u638C\u63E1\u7387\u4E3A"),rr.createElement(xe.default.Item,{name:"tab1_2_left"},rr.createElement(pi.Z,{width:120,size:"large",suffix:"%",min:0,max:100,precision:0})),rr.createElement("div",{className:Ca.from_item_title},"\u81F3"),rr.createElement(xe.default.Item,{name:"tab1_2_right"},rr.createElement(pi.Z,{width:120,size:"large",suffix:"%",min:0,max:100,precision:0})),rr.createElement("div",{className:Ca.from_item_title},"\u7684\u77E5\u8BC6\u70B9")),rr.createElement("div",{className:Ca.from_item,style:{marginBottom:0}},rr.createElement("div",{className:Ca.from_item_title},"\u638C\u63E1\u4F18\u79C0\u77E5\u8BC6\u70B9\uFF1A\u638C\u63E1\u7387\u4E3A"),rr.createElement(xe.default.Item,{name:"tab1_3_left"},rr.createElement(pi.Z,{width:120,size:"large",suffix:"%",min:0,max:100,precision:0})),rr.createElement("div",{className:Ca.from_item_title},"\u81F3"),rr.createElement(xe.default.Item,{name:"tab1_3_right"},rr.createElement(pi.Z,{width:120,size:"large",suffix:"%",min:0,max:100,precision:0})),rr.createElement("div",{className:Ca.from_item_title},"\u7684\u77E5\u8BC6\u70B9"))),ee.type=="2"&&rr.createElement("div",null,rr.createElement("div",{className:Ca.from_item},rr.createElement(xe.default.Item,{name:"tab2_1_left",valuePropName:"checked"},rr.createElement(ga.default,null)),rr.createElement("div",{className:Ca.from_item_title},"\u8BFE\u5802\u5B9E\u9A8C/\u7F16\u7A0B\u4F5C\u4E1A\u7684\u5B8C\u6210\u65F6\u95F4\u5C0F\u4E8E"),rr.createElement(xe.default.Item,{name:"tab2_1_right"},rr.createElement(pi.Z,{width:120,size:"large",min:0,max:100,precision:0})),rr.createElement("div",{className:Ca.from_item_title},"\u5206\u949F"),rr.createElement("div",{className:Ca.from_item_desc},"\uFF08\u5B66\u751F\u5B8C\u6210\u4F5C\u4E1A\u6240\u6D88\u8017\u7684\u65F6\u95F4\u5C0F\u4E8E\u8BBE\u5B9A\u503C\u65F6\uFF0C\u5219\u53D1\u9001\u5B66\u4E60\u9884\u8B66\uFF09")),rr.createElement("div",{className:Ca.from_item},rr.createElement(xe.default.Item,{name:"tab2_2_left",valuePropName:"checked"},rr.createElement(ga.default,null)),rr.createElement("div",{className:Ca.from_item_title},"\u8BFE\u5802\u5B9E\u9A8C\u67E5\u770B\u7B54\u6848\u540E\u5B8C\u6210\u4F5C\u4E1A"),rr.createElement("div",{className:Ca.from_item_desc},"\uFF08\u5B66\u751F\u4F5C\u4E1A\u8BC4\u6D4B\u901A\u8FC7\u524D\u67E5\u770B\u4F5C\u4E1A\u7B54\u6848\uFF0C\u5219\u53D1\u9001\u5B66\u4E60\u9884\u8B66\uFF09")),rr.createElement("div",{className:Ca.from_item},rr.createElement(xe.default.Item,{name:"tab2_3_left",valuePropName:"checked"},rr.createElement(ga.default,null)),rr.createElement("div",{className:Ca.from_item_title},"\u4EE3\u7801/\u6587\u4EF6\u67E5\u91CD\u7387\u9AD8\u4E8E"),rr.createElement(xe.default.Item,{name:"tab2_3_right"},rr.createElement(pi.Z,{width:120,suffix:"%",size:"large",min:0,max:100,precision:0})),rr.createElement("div",{className:Ca.from_item_desc},"\uFF08\u5B66\u751F\u4F5C\u4E1A\u67E5\u91CD\u7387\u9AD8\u4E8E\u8BBE\u5B9A\u503C\u65F6\uFF0C\u5219\u53D1\u9001\u5B66\u4E60\u9884\u8B66\uFF09")),rr.createElement("div",{className:Ca.from_item},rr.createElement(xe.default.Item,{name:"tab2_4_left",valuePropName:"checked"},rr.createElement(ga.default,null)),rr.createElement("div",{className:Ca.from_item_title},"\u672A\u5728\u89C4\u5B9A\u65F6\u95F4\u5185\u5B8C\u6210\u7B7E\u5230"),rr.createElement("div",{className:Ca.from_item_desc},"\uFF08\u5B66\u751F\u672A\u5728\u89C4\u5B9A\u65F6\u95F4\u5185\u5B8C\u6210\u8BFE\u5802\u7B7E\u5230\uFF0C\u5219\u53D1\u9001\u5B66\u4E60\u9884\u8B66\uFF09")),rr.createElement("div",{className:Ca.from_item,style:{marginBottom:0}},rr.createElement(xe.default.Item,{name:"tab2_5_left",valuePropName:"checked"},rr.createElement(ga.default,null)),rr.createElement(xe.default.Item,{name:"tab2_5_right",style:{marginLeft:"8px"}},rr.createElement(pi.Z,{width:120,size:"large",min:0,max:100,precision:0})),rr.createElement("div",{className:Ca.from_item_title},"\u5929\u672A\u8FDB\u5165\u7CFB\u7EDF\u8FDB\u884C\u5B66\u4E60"),rr.createElement("div",{className:Ca.from_item_desc},"\uFF08\u5B66\u751F\u672A\u5728\u89C4\u5B9A\u65F6\u95F4\u5185\u8FDB\u5165\u7CFB\u7EDF\uFF0C\u5219\u53D1\u9001\u5B66\u4E60\u9884\u8B66\uFF09"))))))};var zo=(0,be.connect)(({user:E,classroomList:a})=>({user:E,classroomList:a}))(xs),hl={flex_box_center:"flex_box_center___lNU0f",flex_space_between:"flex_space_between___l4Gyp",flex_box_vertical_center:"flex_box_vertical_center___oo33K",flex_box_center_end:"flex_box_center_end___D3e4Y",flex_box_column:"flex_box_column___PxSlE",scoremodal:"scoremodal___ImWT7",tabWrap:"tabWrap___TNgAx",from_item:"from_item___u4jOc",from_item_title:"from_item_title___MTeWh",from_item_desc:"from_item_desc___UAHBy"},gl=Te(59301),cc=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(oe){b(oe)}},ee=ae=>{try{re(y.throw(ae))}catch(oe){b(oe)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});const Yc=({dispatch:E,user:a,classroomList:y})=>{const x=(0,be.useParams)(),[b]=(0,be.useSearchParams)(),[z,ee]=(0,Ne.useState)(1),[re,ae]=(0,Ne.useState)(!1),[oe,de]=(0,Ne.useState)({});(0,Ne.useEffect)(()=>{y.actionTabs.key=="\u77E5\u8BC6\u70B9\u638C\u63E1\u60C5\u51B5"?ge():ee(1)},[y.actionTabs]),(0,Ne.useEffect)(()=>{y.actionTabs.key=="\u77E5\u8BC6\u70B9\u638C\u63E1\u60C5\u51B5"&&ge()},[z]);const ge=()=>cc(void 0,null,function*(){ae(!0);const De=yield(0,te.ZP)(`/api/courses/${x==null?void 0:x.pathId}/student_situations/knowledge_detail.json`,{method:"GET",params:{knowledge_name:y.actionTabs.params.info.knowledge_name,page:z,limit:10}});(De==null?void 0:De.status)==0&&de(De==null?void 0:De.data),ae(!1)}),ye=[{title:"\u59D3\u540D",dataIndex:"real_name",key:"real_name",ellipsis:!0,align:"center",render:(De,ke)=>gl.createElement("span",null,De||"--")},{title:"\u5B66\u53F7",dataIndex:"student_id",key:"student_id",ellipsis:!0,align:"center",render:De=>gl.createElement("span",null,De||"--")},{title:"\u73ED\u7EA7",dataIndex:"course_group_name",key:"course_group_name",ellipsis:!0,align:"center",render:(De,ke,ze)=>gl.createElement("span",null,De||"--")},{title:"\u77E5\u8BC6\u70B9\u638C\u63E1\u7387",dataIndex:"rate",key:"rate",ellipsis:!0,align:"center",render:De=>gl.createElement("span",null,De+"%")},{title:"\u64CD\u4F5C",key:"action",align:"center",width:120,render:(De,ke)=>gl.createElement("span",{style:{color:"#165DFF",cursor:"pointer"},onClick:()=>{(0,vt.xg)(`/knowledgegraph/${x==null?void 0:x.pathId}?type=${b.get("type")}&tabs=7&uuid=${b.get("uuid")}&studentId=${ke==null?void 0:ke.user_id}&studentTab=1`)}},"\u67E5\u770B\u8BE6\u60C5")}].filter(De=>!!De);return gl.createElement("div",null,gl.createElement(Me.default,{title:"\u77E5\u8BC6\u70B9\u638C\u63E1\u60C5\u51B5",open:y.actionTabs.key=="\u77E5\u8BC6\u70B9\u638C\u63E1\u60C5\u51B5",width:900,centered:!0,footer:null,className:hl.scoremodal,onCancel:()=>{E({type:"classroomList/setActionTabs",payload:{key:""}})}},gl.createElement(ce.Z,{spinning:re},gl.createElement(Jt.default,{columns:ye,pagination:!1,style:{marginTop:"10px"},dataSource:(oe==null?void 0:oe.list)||[]}),gl.createElement(ln.Z,{style:{marginTop:"10px",marginBottom:"20px"},showTotal:De=>gl.createElement("span",{className:"mr10"},"\u5171",gl.createElement("span",{className:"c-blue"}," ",De," "),"\u6761\u6570\u636E"),current:z||1,pageSize:10,showSizeChanger:!1,total:oe==null?void 0:oe.total_count,onChange:De=>{ee(De)}}))))};var Du=(0,be.connect)(({user:E,classroomList:a})=>({user:E,classroomList:a}))(Yc),Xu={flex_box_center:"flex_box_center___mj3lT",flex_space_between:"flex_space_between___QbJkb",flex_box_vertical_center:"flex_box_vertical_center___jCjss",flex_box_center_end:"flex_box_center_end___HuOmw",flex_box_column:"flex_box_column___wbWfY",box_content:"box_content___LY0bC",box_item:"box_item___EJX3w",item_icon:"item_icon___JVtR9",item_right:"item_right____1FUg",item_title:"item_title___PtE6o",item_content:"item_content___xQ9UM"},Nc=Object.defineProperty,zd=Object.getOwnPropertySymbols,ac=Object.prototype.hasOwnProperty,zl=Object.prototype.propertyIsEnumerable,vd=(E,a,y)=>a in E?Nc(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,jd=(E,a)=>{for(var y in a||(a={}))ac.call(a,y)&&vd(E,y,a[y]);if(zd)for(var y of zd(a))zl.call(a,y)&&vd(E,y,a[y]);return E};const Ju=E=>React.createElement("svg",jd({width:30,height:30,xmlns:"http://www.w3.org/2000/svg"},E),React.createElement("title",null,"\u6D4B\u9A8C"),React.createElement("g",{fillRule:"nonzero",fill:"none"},React.createElement("path",{d:"M23.37 27.442H5.543c-3.056 0-5.517-1.018-5.517-3.735V.023H23.37v27.42Z",fill:"#96D9FF"}),React.createElement("path",{d:"M25.832 29.904H8.005c-3.056 0-5.518-1.019-5.518-3.735V2.485h23.345v27.419Z",fill:"#50BFFF"}),React.createElement("path",{d:"M25.747 29.904H5.713v-5.348h22.75c2.123 2.292.34 5.348-2.716 5.348Z",fill:"#B1E2FF"}),React.createElement("path",{d:"M5.798 23.198c1.868 0 3.31 1.528 3.31 3.31 0 1.783-1.527 3.311-3.31 3.311-1.783 0-3.31-1.528-3.31-3.31 0-1.783 1.527-3.311 3.31-3.311Z",fill:"#50BFFF"}),React.createElement("path",{d:"m10.467 18.359 1.783-1.783-1.189-1.188L9.28 17.17l-1.783-1.783-1.104 1.273 1.783 1.783-1.783 1.783 1.189 1.188 1.782-1.783 1.783 1.783 1.189-1.188-1.868-1.868Zm-1.273-6.282a2.862 2.862 0 0 1-2.887-2.886 2.862 2.862 0 0 1 2.887-2.886A2.862 2.862 0 0 1 12.08 9.19a2.862 2.862 0 0 1-2.886 2.886Zm0-4.074c-.68 0-1.189.509-1.189 1.188 0 .68.51 1.188 1.189 1.188s1.188-.509 1.188-1.188c0-.68-.51-1.188-1.188-1.188Z",fill:"#FFF"}),React.createElement("path",{d:"M14.542 8.767h6.621a.85.85 0 0 1 .849.848.85.85 0 0 1-.849.85h-6.621a.85.85 0 0 1-.85-.85c0-.509.34-.848.85-.848Zm0 9.083h6.621a.85.85 0 0 1 .849.849.85.85 0 0 1-.849.848h-6.621a.85.85 0 0 1-.85-.848c0-.51.34-.85.85-.85Z",fill:"#D6F0FF"})));var cu="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzAiIGhlaWdodD0iMzAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbC1ydWxlPSJub256ZXJvIiBmaWxsPSJub25lIj48cGF0aCBkPSJNMjMuMzcgMjcuNDQySDUuNTQzYy0zLjA1NiAwLTUuNTE3LTEuMDE4LTUuNTE3LTMuNzM1Vi4wMjNIMjMuMzd2MjcuNDJaIiBmaWxsPSIjOTZEOUZGIi8+PHBhdGggZD0iTTI1LjgzMiAyOS45MDRIOC4wMDVjLTMuMDU2IDAtNS41MTgtMS4wMTktNS41MTgtMy43MzVWMi40ODVoMjMuMzQ1djI3LjQxOVoiIGZpbGw9IiM1MEJGRkYiLz48cGF0aCBkPSJNMjUuNzQ3IDI5LjkwNEg1LjcxM3YtNS4zNDhoMjIuNzVjMi4xMjMgMi4yOTIuMzQgNS4zNDgtMi43MTYgNS4zNDhaIiBmaWxsPSIjQjFFMkZGIi8+PHBhdGggZD0iTTUuNzk4IDIzLjE5OGMxLjg2OCAwIDMuMzEgMS41MjggMy4zMSAzLjMxIDAgMS43ODMtMS41MjcgMy4zMTEtMy4zMSAzLjMxMS0xLjc4MyAwLTMuMzEtMS41MjgtMy4zMS0zLjMxIDAtMS43ODMgMS41MjctMy4zMTEgMy4zMS0zLjMxMVoiIGZpbGw9IiM1MEJGRkYiLz48cGF0aCBkPSJtMTAuNDY3IDE4LjM1OSAxLjc4My0xLjc4My0xLjE4OS0xLjE4OEw5LjI4IDE3LjE3bC0xLjc4My0xLjc4My0xLjEwNCAxLjI3MyAxLjc4MyAxLjc4My0xLjc4MyAxLjc4MyAxLjE4OSAxLjE4OCAxLjc4Mi0xLjc4MyAxLjc4MyAxLjc4MyAxLjE4OS0xLjE4OC0xLjg2OC0xLjg2OFptLTEuMjczLTYuMjgyYTIuODYyIDIuODYyIDAgMCAxLTIuODg3LTIuODg2IDIuODYyIDIuODYyIDAgMCAxIDIuODg3LTIuODg2QTIuODYyIDIuODYyIDAgMCAxIDEyLjA4IDkuMTlhMi44NjIgMi44NjIgMCAwIDEtMi44ODYgMi44ODZabTAtNC4wNzRjLS42OCAwLTEuMTg5LjUwOS0xLjE4OSAxLjE4OCAwIC42OC41MSAxLjE4OCAxLjE4OSAxLjE4OHMxLjE4OC0uNTA5IDEuMTg4LTEuMTg4YzAtLjY4LS41MS0xLjE4OC0xLjE4OC0xLjE4OFoiIGZpbGw9IiNGRkYiLz48cGF0aCBkPSJNMTQuNTQyIDguNzY3aDYuNjIxYS44NS44NSAwIDAgMSAuODQ5Ljg0OC44NS44NSAwIDAgMS0uODQ5Ljg1aC02LjYyMWEuODUuODUgMCAwIDEtLjg1LS44NWMwLS41MDkuMzQtLjg0OC44NS0uODQ4Wm0wIDkuMDgzaDYuNjIxYS44NS44NSAwIDAgMSAuODQ5Ljg0OS44NS44NSAwIDAgMS0uODQ5Ljg0OGgtNi42MjFhLjg1Ljg1IDAgMCAxLS44NS0uODQ4YzAtLjUxLjM0LS44NS44NS0uODVaIiBmaWxsPSIjRDZGMEZGIi8+PC9nPjwvc3ZnPg==",Rc=Object.defineProperty,ql=Object.getOwnPropertySymbols,du=Object.prototype.hasOwnProperty,au=Object.prototype.propertyIsEnumerable,md=(E,a,y)=>a in E?Rc(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,$f=(E,a)=>{for(var y in a||(a={}))du.call(a,y)&&md(E,y,a[y]);if(ql)for(var y of ql(a))au.call(a,y)&&md(E,y,a[y]);return E};const C0=E=>React.createElement("svg",$f({width:32,height:24,xmlns:"http://www.w3.org/2000/svg"},E),React.createElement("title",null,"\u89C6\u9891"),React.createElement("g",{fillRule:"nonzero",fill:"none"},React.createElement("path",{d:"M14.962 11.807 29.04 4.768a1.928 1.928 0 0 1 2.79 1.725v10.629a1.928 1.928 0 0 1-2.79 1.724l-14.078-7.039Z",fill:"#FE9025"}),React.createElement("path",{d:"M20.745 0a3.855 3.855 0 0 1 3.856 3.855V19.76a3.855 3.855 0 0 1-3.856 3.855H3.878A3.855 3.855 0 0 1 .023 19.76V3.855A3.855 3.855 0 0 1 3.878 0h16.867Zm-9.638 17.35H5.324a1.446 1.446 0 1 0 0 2.891h5.783a1.446 1.446 0 0 0 0-2.892Zm8.675-13.977a1.446 1.446 0 1 0 0 2.892 1.446 1.446 0 0 0 0-2.892Z",fill:"#605EF5"})));var dc="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMjQiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbC1ydWxlPSJub256ZXJvIiBmaWxsPSJub25lIj48cGF0aCBkPSJNMTQuOTYyIDExLjgwNyAyOS4wNCA0Ljc2OGExLjkyOCAxLjkyOCAwIDAgMSAyLjc5IDEuNzI1djEwLjYyOWExLjkyOCAxLjkyOCAwIDAgMS0yLjc5IDEuNzI0bC0xNC4wNzgtNy4wMzlaIiBmaWxsPSIjRkU5MDI1Ii8+PHBhdGggZD0iTTIwLjc0NSAwYTMuODU1IDMuODU1IDAgMCAxIDMuODU2IDMuODU1VjE5Ljc2YTMuODU1IDMuODU1IDAgMCAxLTMuODU2IDMuODU1SDMuODc4QTMuODU1IDMuODU1IDAgMCAxIC4wMjMgMTkuNzZWMy44NTVBMy44NTUgMy44NTUgMCAwIDEgMy44NzggMGgxNi44NjdabS05LjYzOCAxNy4zNUg1LjMyNGExLjQ0NiAxLjQ0NiAwIDEgMCAwIDIuODkxaDUuNzgzYTEuNDQ2IDEuNDQ2IDAgMCAwIDAtMi44OTJabTguNjc1LTEzLjk3N2ExLjQ0NiAxLjQ0NiAwIDEgMCAwIDIuODkyIDEuNDQ2IDEuNDQ2IDAgMCAwIDAtMi44OTJaIiBmaWxsPSIjNjA1RUY1Ii8+PC9nPjwvc3ZnPg==",eh=Object.defineProperty,rf=Object.getOwnPropertySymbols,th=Object.prototype.hasOwnProperty,Ph=Object.prototype.propertyIsEnumerable,nh=(E,a,y)=>a in E?eh(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,P0=(E,a)=>{for(var y in a||(a={}))th.call(a,y)&&nh(E,y,a[y]);if(rf)for(var y of rf(a))Ph.call(a,y)&&nh(E,y,a[y]);return E};const Iu=E=>React.createElement("svg",P0({width:31,height:29,xmlns:"http://www.w3.org/2000/svg"},E),React.createElement("title",null,"\u5B9E\u8BAD"),React.createElement("g",{fillRule:"nonzero",fill:"none"},React.createElement("path",{fill:"#9ABADB",d:"M20.042 27.139v-3.626l-5.823-1.195 1.208 4.82z"}),React.createElement("path",{fill:"#9ABADB",d:"M10.812 27.139h4.615v-4.821l-4.615 1.195z"}),React.createElement("path",{d:"M30.854 18.088 14.22 16.88l1.208 6.633h14.347a1.08 1.08 0 0 0 1.08-1.08v-4.345Z",fill:"#D1E8FF"}),React.createElement("path",{d:"M0 18.088v4.346c0 .596.484 1.08 1.08 1.08h14.347V16.88L0 18.088ZM22.344 26.239h-8.125l-.605.9.489.72a.411.411 0 0 0 .347.18h7.894a.411.411 0 0 0 .411-.425v-.964a.411.411 0 0 0-.411-.411Z",fill:"#D1E8FF"}),React.createElement("path",{d:"M8.55 26.239h6.427c.3 0 .45.15.45.45v.913c0 .3-.15.45-.45.45H8.55c-.3 0-.45-.15-.45-.45v-.913c0-.3.15-.45.45-.45Z",fill:"#D1E8FF"}),React.createElement("path",{d:"M13.614 0a1.286 1.286 0 0 0-1.285 1.144l1.915 7.714c0 .115-2.97.231-2.957.347l1.183 8.87h18.384V1.093c0-.599-.481-1.086-1.08-1.093h-16.16Z",fill:"#4F7CF7"}),React.createElement("path",{d:"M1.286 0h12.856c.71 0 1.285.576 1.285 1.286V16.79c0 .71-.575 1.285-1.285 1.285H0V1.298A1.286 1.286 0 0 1 1.286 0Z",fill:"#4F7CF7"}),React.createElement("path",{fill:"#F5F5FF",d:"M10.773 13.833 5.991 9.051l4.782-4.796 1.286 1.286-3.51 3.51 3.51 3.51zM20.081 13.833l-1.286-1.273 3.51-3.51-3.51-3.51 1.286-1.285 4.782 4.796zM13.424 14.467l2.23-11.212 1.777.354-2.229 11.21z"})));var wh="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzEiIGhlaWdodD0iMjkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbC1ydWxlPSJub256ZXJvIiBmaWxsPSJub25lIj48cGF0aCBmaWxsPSIjOUFCQURCIiBkPSJNMjAuMDQyIDI3LjEzOXYtMy42MjZsLTUuODIzLTEuMTk1IDEuMjA4IDQuODJ6Ii8+PHBhdGggZmlsbD0iIzlBQkFEQiIgZD0iTTEwLjgxMiAyNy4xMzloNC42MTV2LTQuODIxbC00LjYxNSAxLjE5NXoiLz48cGF0aCBkPSJNMzAuODU0IDE4LjA4OCAxNC4yMiAxNi44OGwxLjIwOCA2LjYzM2gxNC4zNDdhMS4wOCAxLjA4IDAgMCAwIDEuMDgtMS4wOHYtNC4zNDVaIiBmaWxsPSIjRDFFOEZGIi8+PHBhdGggZD0iTTAgMTguMDg4djQuMzQ2YzAgLjU5Ni40ODQgMS4wOCAxLjA4IDEuMDhoMTQuMzQ3VjE2Ljg4TDAgMTguMDg4Wk0yMi4zNDQgMjYuMjM5aC04LjEyNWwtLjYwNS45LjQ4OS43MmEuNDExLjQxMSAwIDAgMCAuMzQ3LjE4aDcuODk0YS40MTEuNDExIDAgMCAwIC40MTEtLjQyNXYtLjk2NGEuNDExLjQxMSAwIDAgMC0uNDExLS40MTFaIiBmaWxsPSIjRDFFOEZGIi8+PHBhdGggZD0iTTguNTUgMjYuMjM5aDYuNDI3Yy4zIDAgLjQ1LjE1LjQ1LjQ1di45MTNjMCAuMy0uMTUuNDUtLjQ1LjQ1SDguNTVjLS4zIDAtLjQ1LS4xNS0uNDUtLjQ1di0uOTEzYzAtLjMuMTUtLjQ1LjQ1LS40NVoiIGZpbGw9IiNEMUU4RkYiLz48cGF0aCBkPSJNMTMuNjE0IDBhMS4yODYgMS4yODYgMCAwIDAtMS4yODUgMS4xNDRsMS45MTUgNy43MTRjMCAuMTE1LTIuOTcuMjMxLTIuOTU3LjM0N2wxLjE4MyA4Ljg3aDE4LjM4NFYxLjA5M2MwLS41OTktLjQ4MS0xLjA4Ni0xLjA4LTEuMDkzaC0xNi4xNloiIGZpbGw9IiM0RjdDRjciLz48cGF0aCBkPSJNMS4yODYgMGgxMi44NTZjLjcxIDAgMS4yODUuNTc2IDEuMjg1IDEuMjg2VjE2Ljc5YzAgLjcxLS41NzUgMS4yODUtMS4yODUgMS4yODVIMFYxLjI5OEExLjI4NiAxLjI4NiAwIDAgMSAxLjI4NiAwWiIgZmlsbD0iIzRGN0NGNyIvPjxwYXRoIGZpbGw9IiNGNUY1RkYiIGQ9Ik0xMC43NzMgMTMuODMzIDUuOTkxIDkuMDUxbDQuNzgyLTQuNzk2IDEuMjg2IDEuMjg2LTMuNTEgMy41MSAzLjUxIDMuNTF6TTIwLjA4MSAxMy44MzNsLTEuMjg2LTEuMjczIDMuNTEtMy41MS0zLjUxLTMuNTEgMS4yODYtMS4yODUgNC43ODIgNC43OTZ6TTEzLjQyNCAxNC40NjdsMi4yMy0xMS4yMTIgMS43NzcuMzU0LTIuMjI5IDExLjIxeiIvPjwvZz48L3N2Zz4=",vl=Te(59301),Fc=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(oe){b(oe)}},ee=ae=>{try{re(y.throw(ae))}catch(oe){b(oe)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});const Tf=({dispatch:E,user:a,classroomList:y})=>{const x=(0,be.useParams)(),[b,z]=(0,Ne.useState)([]),[ee,re]=(0,Ne.useState)(!1);(0,Ne.useEffect)(()=>{y.actionTabs.key=="\u77E5\u8BC6\u70B9\u5B66\u4E60\u63A8\u8350"&&ae()},[y.actionTabs]);const ae=()=>Fc(void 0,null,function*(){var oe;re(!0);const de=yield(0,te.ZP)(`/api/courses/${x==null?void 0:x.pathId}/student_situations/student_knowledge_detail.json`,{method:"GET",params:{knowledge_name:y.actionTabs.params.info.knowledge_name}});(de==null?void 0:de.status)==0&&z((oe=de==null?void 0:de.data)==null?void 0:oe.list),re(!1)});return vl.createElement("div",null,vl.createElement(Me.default,{title:"\u77E5\u8BC6\u70B9\u5B66\u4E60\u63A8\u8350",open:y.actionTabs.key=="\u77E5\u8BC6\u70B9\u5B66\u4E60\u63A8\u8350",width:840,centered:!0,footer:null,className:Xu.scoremodal,onCancel:()=>{E({type:"classroomList/setActionTabs",payload:{key:""}})}},vl.createElement(ce.Z,{spinning:ee},vl.createElement("div",{className:Xu.box_content},b==null?void 0:b.map((oe,de)=>vl.createElement("div",{className:Xu.box_item,key:de,onClick:()=>{(0,vt.xg)(oe==null?void 0:oe.url),E({type:"classroomList/setActionTabs",payload:{key:""}})}},vl.createElement("div",{className:Xu.item_icon},vl.createElement("img",{src:(oe==null?void 0:oe.type)==1?wh:(oe==null?void 0:oe.type)==2?dc:cu})),vl.createElement("div",{className:Xu.item_right},vl.createElement("div",{className:Xu.item_title},oe==null?void 0:oe.name),vl.createElement(on.Z,{title:oe==null?void 0:oe.knowledge_name},vl.createElement("div",{className:Xu.item_content},"\u5BF9\u5E94\u77E5\u8BC6\u70B9\uFF1A",oe==null?void 0:oe.knowledge_name)))))))))};var Xc=(0,be.connect)(({user:E,classroomList:a})=>({user:E,classroomList:a}))(Tf),zu=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(oe){b(oe)}},ee=ae=>{try{re(y.throw(ae))}catch(oe){b(oe)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});const pd=({pathsDetail:E,dispatch:a,user:y})=>{var x,b,z,ee,re,ae;const oe=(0,be.useParams)(),[de,ge]=(0,Ne.useState)(!1),[ye]=(0,be.useSearchParams)(),[De,ke]=(0,Ne.useState)(0),[ze,We]=(0,Ne.useState)({}),Ve=(0,fn.bg)()&&(ye.get("studentId")||!(0,fn.GJ)());(0,Ne.useEffect)(()=>{(0,fn.bg)()&&ye.get("studentTab")&&ke(Number(ye.get("studentTab")))},[(0,fn.bg)()]);const Ze=()=>zu(void 0,null,function*(){var Ye;ge(!0);const et=Ve?`/api/courses/${oe==null?void 0:oe.pathId}/student_situations/student_index.json`:`/api/courses/${oe==null?void 0:oe.pathId}/student_situations.json`,st=yield(0,te.ZP)(et,{method:"get",params:Ve?{user_id:ye.get("studentId")||((Ye=y==null?void 0:y.userInfo)==null?void 0:Ye.user_id)}:{}});(st==null?void 0:st.status)===0&&We(st==null?void 0:st.data),ge(!1)});return Ne.createElement("div",{className:"px-40px-rem",style:{background:"#010a23"}},Ne.createElement(ce.Z,{spinning:de},Ne.createElement("div",{className:je.top_content},!Ve&&Ne.createElement("div",{className:je.top_content_item},Ne.createElement("img",{src:Te(64690),width:57,height:70}),Ne.createElement("div",{className:je.top_content_item_right},Ne.createElement("div",{className:je.top_content_item_right_title},"\u5B66\u60C5\u9884\u8B66\u7EDF\u8BA1"),Ne.createElement("div",{className:je.top_content_item_right_value},"\u5171",Ne.createElement("span",{style:{fontSize:"28px",color:"#82A8FF",margin:"0 5px"}},ze==null?void 0:ze.record_user_count),"\u4EBA",Ne.createElement("span",{className:"ml20"}),"\u5171",Ne.createElement("span",{style:{fontSize:"28px",color:"#82A8FF",margin:"0 5px"}},ze==null?void 0:ze.record_count),"\u6761"))),Ve&&Ne.createElement("div",{className:je.top_content_user},Ne.createElement("div",{className:je.user_img},Ne.createElement("img",{src:`${(x=Mn.Z)==null?void 0:x.IMG_SERVER}/images/${(b=ze==null?void 0:ze.user)==null?void 0:b.avatar}`,width:80,height:80})),Ne.createElement("div",{className:je.user_name},(z=ze==null?void 0:ze.user)==null?void 0:z.real_name),Ne.createElement("div",{className:je.user_info},"\u5B66\u53F7\uFF1A",((ee=ze==null?void 0:ze.user)==null?void 0:ee.student_id)||"--"),Ne.createElement("div",{className:je.user_info},"\u73ED\u7EA7\uFF1A",((re=ze==null?void 0:ze.user)==null?void 0:re.course_group_name)||"--")),Ne.createElement("div",{className:je.top_content_line}),Ne.createElement("div",{className:je.top_content_item},Ne.createElement("img",{src:Te(89006),width:57,height:70}),Ne.createElement("div",{className:je.top_content_item_right},Ne.createElement("div",{className:je.top_content_item_right_title},"\u5B66\u4E60\u8FDB\u5EA6\u6EDE\u540E"),Ve?Ne.createElement("div",{className:je.top_content_item_right_value},"\u5F85\u5904\u7406",Ne.createElement("span",{style:{fontSize:"28px",color:"#82A8FF",margin:"0 5px"}},ze==null?void 0:ze.study_progress_no_handle_count),"\u6761",Ne.createElement("span",{className:"ml20"}),"\u5DF2\u5904\u7406",Ne.createElement("span",{style:{fontSize:"28px",color:"#82A8FF",margin:"0 5px"}},ze==null?void 0:ze.study_progress_handle_count),"\u6761"):Ne.createElement("div",{className:je.top_content_item_right_value},"\u5171",Ne.createElement("span",{style:{fontSize:"28px",color:"#82A8FF",margin:"0 5px"}},ze==null?void 0:ze.study_progress_user_count),"\u4EBA",Ne.createElement("span",{className:"ml20"}),"\u5171",Ne.createElement("span",{style:{fontSize:"28px",color:"#82A8FF",margin:"0 5px"}},ze==null?void 0:ze.study_progress_count),"\u6761"))),Ne.createElement("div",{className:je.top_content_line}),Ne.createElement("div",{className:je.top_content_item},Ne.createElement("img",{src:Te(57581),width:57,height:70}),Ne.createElement("div",{className:je.top_content_item_right},Ne.createElement("div",{className:je.top_content_item_right_title},"\u77E5\u8BC6\u70B9\u8584\u5F31"),Ne.createElement("div",{className:je.top_content_item_right_value},"\u5171",Ne.createElement("span",{style:{fontSize:"28px",color:"#82A8FF",margin:"0 5px"}},ze==null?void 0:ze.week_kp_count),"\u4E2A"))),!Ve&&Ne.createElement(Ne.Fragment,null,Ne.createElement("div",{className:je.top_content_line}),Ne.createElement("div",{className:je.top_content_item},Ne.createElement("img",{src:Te(40517),width:57,height:70}),Ne.createElement("div",{className:je.top_content_item_right},Ne.createElement("div",{className:je.top_content_item_right_title},"\u884C\u4E3A\u5F02\u5E38"),Ne.createElement("div",{className:je.top_content_item_right_value},"\u5171",Ne.createElement("span",{style:{fontSize:"28px",color:"#82A8FF",margin:"0 5px"}},ze==null?void 0:ze.action_abnormal_user_count),"\u4EBA",Ne.createElement("span",{className:"ml20"}),"\u5171",Ne.createElement("span",{style:{fontSize:"28px",color:"#82A8FF",margin:"0 5px"}},ze==null?void 0:ze.action_abnormal_count),"\u6761")))))),Ne.createElement("div",{className:je.tabs_content},(ae=Ve?["\u5B66\u4E60\u8FDB\u5EA6\u6EDE\u540E\u9884\u8B66","\u77E5\u8BC6\u70B9\u8584\u5F31\u9884\u8B66"]:["\u5B66\u4E60\u8FDB\u5EA6\u6EDE\u540E\u9884\u8B66","\u77E5\u8BC6\u70B9\u8584\u5F31\u9884\u8B66","\u884C\u4E3A\u5F02\u5E38\u9884\u8B66"])==null?void 0:ae.map((Ye,et)=>Ne.createElement("div",{className:De==et?je.tabs_content_item_active:je.tabs_content_item,onClick:()=>{ke(et)}},Ye)),!Ve&&Ne.createElement("div",{className:je.setting_button,onClick:()=>{a({type:"classroomList/setActionTabs",payload:{key:"\u5B66\u60C5\u9884\u8B66\u89C4\u5219\u8BBE\u7F6E",params:{tabs:De}}})}},Ne.createElement("i",{className:"iconfont icon-shezhi mr5"}),Ne.createElement("span",null,"\u8BBE\u7F6E"))),Ne.createElement("div",{style:{minHeight:"60vh"}},De==0&&!Ve&&Ne.createElement(cr,{setInfo:We}),De==0&&Ve&&Ne.createElement(Mu,{setInfo:We}),De==1&&Ne.createElement(ws,{setInfo:We,openInfo:Ye=>{a({type:"classroomList/setActionTabs",payload:{key:"\u77E5\u8BC6\u70B9\u638C\u63E1\u60C5\u51B5",params:{info:Ye}}})},openKnowledge:Ye=>{a({type:"classroomList/setActionTabs",payload:{key:"\u77E5\u8BC6\u70B9\u5B66\u4E60\u63A8\u8350",params:{info:Ye}}})}}),De==2&&!Ve&&Ne.createElement(Rr,{setInfo:We})),Ne.createElement(zo,null),Ne.createElement(Du,null),Ne.createElement(Xc,null))};var ju=(0,be.connect)(({pathsDetail:E,user:a})=>({pathsDetail:E,user:a}))(pd),fu={learning:"learning___axerA",body:"body___xn5Fa",tabs:"tabs___C2Adc",name:"name___VKGdS",tabWrap:"tabWrap___EnXyi",tab:"tab___EBO0d",active:"active___XXAsu",head:"head___XDru2",numerical:"numerical___APDFZ",action:"action___V6i8x",studentHead:"studentHead___I1em7",headLi:"headLi___UsDfK",btn:"btn___SXQTV",addBtn:"addBtn___oYSpZ"},Jc="data:image/png;base64,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",yd="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFAAAABDCAYAAAALU4KYAAAAAXNSR0IArs4c6QAAHF9JREFUeF7VfHlwXMeZ39fHu+bGMbh5H6IIHZYJSTRXh2FvrJiSrJXLxB+J10fkkmwnVsW1STa34H9SlfVuJSsn3lA+lHLWcQWsteO1BItyZUmLtJayQXIpmZQokARBgLgxA8z1jr5S/WYGGIAAL0NV2K4i8d7rfn38+rv7e4PgAyhKKQSArtOzgqX1N7q/0ST1+8vL6uMjBCu9cKNBVqy/3ipvq0OlNHJ9+NChQ6u+f+DAATh69NzC2O+/P4Z27mxbWNTy+2pHK7Wr1tXVZWX1Wvd/vfF7eg6J21rcLW3TbY5Qpr5vkOu9fvLkGEom78LbtwNcuLDYUt9D5b7mMejH1bLkeU3FyZO/lXv2LG7C9cZHqJff5vJugc5vc4Te3l584ABQ/fpuADgHZ6/pyTQfRvF4KmyzUpmdzaOGhvgCRYb3fPEemstv1bbL53/Dg6BhCWuuNn5n5yEGsDZs/AGwcC+GC7NGuMIailoClL0FZyJN5TY1JQMA9ZV/+np50XUrPdft6nMXAuCzS2XbauNv/1awVnLwAwFwdHTeunb5owuPDOMBzNgmKy7ZkgXnCy6Kx5zbEvAl45e+ENnKux0rwL84fkfHIW/9Ath3gIw/VLcEwNZly5nJpQhP7rLDx4Waylj1Wl9UKpbXL7lfbEcyA266jsvxFaBbPj60vuSuXwDVATJ9Lu0ATNcsJR1eZ7Ieqq+zFbU3EkHaI/pZsaZVtOZ6tefL8am2i7MLRRFML2jilcavvpve/e3iOgawj8DMa5GZ2ZqlNpSvczmK9d9Gs41wfEcUwAUAp6ahvtel9lm1ulq3vL78nPD3C5IrCZCFugSXK41f7amx8fuF9QvgkV6a3ThWS0zhvOtSlpovREPzhpgJymHLYhvNzN4ijj5iyFLGtbJwWTsoC4EygMWhvBS5kAIlz9RQYrlej7/QuP7FPELotmRtzW6Hlx+EEqFzly8vSLPygCkAmANitJJCMUDU3EqBpuKWtQJIy2d4k/dYDufy80UZi/pKsPFlhnJ5/GpJbX55ft0CODDwrLGjWcSrk01Ic2GnJ1nUiEIMfCthBKQtAUGllQlgAg3bBQFHYNagVm2jH+nnK9ybplQqGJq3bSaKhQI4VnbBUK4dP1cIQoL5L4c2zPX29l5DpTe5V0uarT0FDjxr5FuMxEqTwWbacEsBCoyEIeXWpKHKoK0GzDV9rARgpZGRH5yTxrxwlKlywRiPRVen7vh301m0bgFUzxqFC1bqWvukAES2mRBxICeSpoDGlKJkiRxCXKDlz26GKrRbkfQvZWyTCygBCDwZrDR+ta/Y9k2zCK1TCjx79oC50WrQQmexVCQiER2hfViQEYuT1hSs4pEiHuDI+F/sxWyuQVE7L2jjrHI6Zlj0vllhNtUwsXZmWNhNQo7OmoYf9pjPXA4iToW69YNlEjnW3DKzbgFUZ3vNYmSqHiI1LFRioajgfqujlW0kVmfkWKP2zFYssezhDpp/a89KlRzsApip2YC0ZWSic4ZbW0qhFKBjMwb1udbmBox4K41f7S+6uWlq/QKoes3S8FwDaF5aKBEAzBFT7bY2PUpuwmIi3QA1JKhJh1KpgAHEp17+EPbGNl2PfXFoUQIobHrCaB5XjQ++EU3Uu57ngYGueiCDGvGgbfbF+UQ2tU2uWwAHB79mtdussbp4p6IoXGQg5jc5YAGUpGUxo71BSiCx8b7dVu6tfUj4aYUxQUAQkqU0kqJWF2uDS4XxEwS+xM4UM9vOY8AcFBMIKYmw9Wu5+TOn9bgJmHLd0EgHqI6/ZDM2NE6sWwDV4Ncs14Gy71ZbkEBF1eEw3hArQV2KESuVHnvpw7GZV/+NAqjQ0/Vobmmdws5FFtn1qsSUCEWIsurPqPY/OGGpuaKBL3ugliqo2red9oax9Qvg0BdsVyaaFijQ5iErTco7Ux5qajRlIe/IQGRlXbp58Ln/hPn8irLuZqBkzo7vKxLNA0gFkY2/KDV/anpeRmMRPDPdyC7mQgqsjF/ur+y6HPrVyNhaRaXX3g4c+oLtWdFKyLPse43xXWkLc+4InyFEUAFsW8qWdNO7n/0Okn77zYC1Uhtub/oxN+qvagLGrR//38JKF5QSKh/ELDAAms2h2SU+YqUT+/jUKFqjsP7aA6h6bW94ZiGC5CMDTbCdrZtiZ8cEbA0NijxznIJMNnec++JLIP2W2wWQWRt/qszGEYEdV2zo+T+OhYOAFSFiThaHC7vaNpJ3rlb7tq0as+bY1ZH1C+DI1x1fwgKAXsDRONzd0U4uTAiz0dFGRtE1HJc2NrWf//xBJPwKta4OI276FOCWp4Gf/3cA/thCw8Da+ioz60fAah9lrd2v21gxzc6Cl4KpIJ3eap1fjKICgGUD+B6AtXF0GKG1OVhaewrUAAK0W2ZZ9unisxi56O3osIApx5CBx+N1nnIaNw9+9k+wdK9VODVY4o4vgXH3/wCECLBzXwdx+b8u1Pr2tp8Ls3U8F+u6QBv3nDZxLjdTII5WINti745aBqsEFcqyz9d+tgayY3Ro/QI49mwERLLdBz+cdDk0bcGMak1OsvQmj2GMQSmkjOjOy5//Eyy9BYVD7/1LQGYjsDN/CBBMA9n8daB3/hkghEDm3oHgrY8BsJlFCnS2vBrQ5vHJ+p7TAaQnFSUkZiNWb04Mx8VQvnZ8gOqMNIDjl9Y1gL5yNlg1ZsQU39aoFBOhoQwYecKITAf1m3Ze/CeLFIgjYH0iCwibIVhyuh/otj8OwRJzvwb2m08CsKVHSgV7198ERttwNv2lX9ZHZy6ZSAYhCyNEGAdopyO1Yd1Fum4fubiOAeyNAOQ3Ls6WoOFgS2urOTRekNr/xcgVxCnKurYNF5/5UyQWKRC3/SEY974csmu1iNmjwAY+BSBCglpSfGfba67T+fZ8Y887STs3YgrGKOXSFmO5Cb6ldaMztKBElrzY+uAgQj1rcri+9jJw4l9EA1+V3bCKL3HV3dnRZAxPBDIdB46Qi6JOTjptGwe/9E0svSUyELd/Hox7vheCKKb6gZ36DICsDecvQuHbO36RS37sDTf1yJUEnRuxBGOMBspU+VJWtje2O4NXzRUM6qPnI4Pd3WtzuP6BAAiKbK7d8YATMhps7ABAKEZZUELx+pxnNm+/+Mx/wLK04PZV38HpTwKK7QZx+UUArVhXKW6k87WJ1ucPK5rkCeqNm6g0X+DUVgTENvviKChYOWj6nnMerVsAp74aC/zI1gUCNMouVV40JMb99FbfB6IAKyYhceeVL/9HLN1rAFwVsWUV2Yan/zxb/wfv+gxMgvg8woQ4BLF6Y+RSjMwVQgaojB++ygTSsTDzQuzcOgawN8ZKuR06TlctOdRRDworijDiXCJf2pEpP7l1x+hX/zURhRvagasBOpL8wsFsvPuibUDQZM0NGhCESoRSCopwGeWjlYMQA4za4G179LdrlR+z9iw8/a/iUBI7qwAyRNCU19HSRK5MzqmW8IBTA5hjyY6N4//2GepP3HOzFLesnRrveOHfu3RjqF1S5tywQUWguFR11nQmw9qam+nwsnP2cgAWNtafWb8ADn4twQjsCrmnsuJRubG9AcYn52VTHQJNgRFnXkQ2JPPHNzZlfvhlUGKFVJDrw+paO4+Ntv3RT0CWNXajnbuMJWdYcWnDbK5AWhtb8fCi21LpTvPF2xn/dFfXS6sL11vY0TWnwMzAs8l40tCJUeXCARgmZJpvaNMHHg51iwVOowWR7NAi3hGXE/HSiTsQzyZvJqYlke271uaruegjl3T3EsoANtDMZYsoPyfMOCWKtdGrV0FL2hWODWiRDaD1CqC6+GySc3o3VXjBldNyD5BCV2HTBlfYcS6RyaSZohSY9kpCICS6djM1otfoUQkYa8VUrtDvBRIMGwUZkyhuYDfXYYyMXDN+ZT8pxQoKwa/XL4Cn/3mKW6xGrpVJgCOE87KlUQiJPHCis0F8CweKpZQkPOSWCrTHhrFSGJDSpTbMipRCEghSSmIJCAmhMMZIEaQkxsBb7NygBdwXXEDKnJmhSqd5VFhgGUvSkvrb9Qvg21+p41h8aLkY4QLhvNHWiKRCRWVE5nlsQ5W6qlkCCikkNH4SIQ1SOdtVW49IaUoNfWiCpK4o96+flNs0WPNDlj4IUVLF5eQMJVUArxVotBOOI7ROZaB6+yt1PvAwyqyl04K/hDCa541NQmLkEyOSDWIbACOFUEhzRCJM9ZmIkBoVicIoPy4TkSZFpC8RKARSEgUCg+RI6YPk8jakzdwQAs4wBhnTAGIVqpdaf616b5G5N1Dnodoch1tQG0ubrrkSUWefqfc9ef+1M8JoRrU0G1ipIkSTMzy2TWBqEE12IBlGgiMlBUFSgqok/lTlH9bWnULlOA5grhCVmFBQiAoVOn1BkzE36CivAFippJiaDsP81xSdVczBsgtH1i2Aubc+10AwfrBKgUDKykRIhDOQbvVpfUtRmQ0+Q4aBWElJIcOQfGWxoSRcojlwmAFVRQPhCvtKrUAkKIIJk0YkbiPPQl7GEdnxlJyeBCVUORVsUZnpSeh7y8r/v/UL4MCzjaZge7XW1fMPlEERsSgDYkzjjrskNqJcKhR4rExfWAOkkEQI6f80n8rKu1q+aWBVJRUNa2rFSkkpNFPrOyUrYNsRE2EEQCTLN/IrZw0QDCOfEylEyMbl/4FgpKyY+/q6AlAv9OjRo4Rv5NHt/L3WeOHi3nCySArFmdaUXApiTNqbu6TChkKYlFyu5Z7mVayx0zgorShC1YH0JWjAwlWHgCLtDWp0Q/moWymtmgGkgZV0TCKVkgID95vYyEmCfC6wRQNhOpbBA40fUUJiEbAibf/r1j0vuGuR4na7MhAdHDhIt7V8KCELzCJRjLgRZcqbJzuyJ2L1pUt7PWzHqIGUB7EUx05S86jWoYEyGzRWSEnJuJCCC6kVgdSISa1BkNLyLiTOZUmQ4XNdo/WLNmkQwpRiTCnBCAGWCiEbs1kCkiuslCG8HOVuHpQStiqVmBCAiGmM1D16eMJqkZayFcW+zy/xfHd3tybRW066vBUA0ZGhIxZANAWGpAF1AtPNBEVMkV8s2rayFLWw0Vo629RYuvAwI7GUAkxN6WaILLkSORGCRMCVIkWIN3NFlqT8aJGv5FKrWd8t8U4qN0jLzNqZKwAKohDFhQmt0zlQwxZuyUd2lJFoSmtnS3lZIrxA9/m+cX9/0dlRcKd8iVsNYVPkUOEZBUNxQwRz+3fs1xr6psC8IYB9fX2k5b6Weh8jR6qSZxIzl/MNwymV4lybDVZKEFvELKJYDuW85vnpjzS6lx6NipkrkWAuk7MaWhhEEolgbEhTFZUsNB88Eot5EKvzsFMnEI0ohWnIytcpmsIw0tyrrySnShQtKM3ZMpe1RSnM35fUNKREuGg2dVgiP+vw3LxnNjbkSWqDIb28E8yOX0j9w7/JkToBTt28VL5FXBe5vpsfg1Z2Z7KUcpGyCWOl47uOZ3tvkAa36oR7jxyhe9pkc4JQnIvkZk+ejwW/tzEelaXZBMcmK8J0xmFOGpwInPzRsfE9T+yptxPRB+u80ciOmdcczUYuiiQKdtvOqJi5FGGZOQnakSoDWC5ly0xraGnYplCmxRUxAyAGAkSkZktNhQpLggXHUps6nNmEeViygITehqh4w+UeGbJNJTgnC3ZgWXlIZBpZo2MXEIxHxPY/HxuLT8buS7c6AfDuzu6J5ft2eOJwFApQbxKTTf9merqnZ+UjgGsBVIAOX/xVGqOSnfWyEz2dPcEPzhyOtlgoyX0DF4rTsz37etxXz726qaiKsz2dPYW+s31mPan/mBAitr1w8u3m+dOhGVMisWTebNpOpfDibGqIosDXjqy2XCiRXHCptFYMJ7/SCUXtF3crWcT6tVASIiwVIUAwUME5yJW9EM+IJwpm8x2X4vteSwStv+jq6mL9g/0J4pHkY3c/NrIS8fcP9lsGNpqZZO7+Hfv1keDSpNDal/rOnjXrjaEOkopOdTd1F7SmO3zucJ3wRZwH3Htq71OTuv2R0z9JZQNFPv3gp8NTr9cGXmvFltorpcSWGZy8b/gvH8BKRTRp5Ei6I6DRtB7WlMG8JQoZLErh5x0o1K6krGVDjStCzat9XKkps0KjVWoVmnM1WiFF1byDsKTA+BIJuhxw/U0KrmvK2a2pK3Ufeask+Ymn7i6vp/9Ufxri4O/fsT/Mp1kFyITDnfp4MX5VA19ts0CBA2M/i8zmzOZP3PG3w9XMpWPDr9R5eRlXgeJvzp+e6q2cI/Sf6e/Yf+/+hVP/vjf76pMx5xG9Yh13ac+fvrK5cPouABV+UMhILFbE8WaOLa04MAElQHKfAneJ8l2ieICUYBg4ByW1tVKO0GgKZAKVoy9lc0YqhCXWDoxhCIRNKr2SKb2ipmQN8AJFh8Z7WZsDwqiI4/Ulo7FtIto5ULSacoZkb3Tf93QYse5TfSR12mr+xIefuiZ+WAvmkSO9NGj9yIZ4Zn5i376e8KQrHECzYDOx2x/d9alQ0Ovy5pt9jmpKxgtFADMzX+ru7ln4yOqnJ37a7Lt+saf6TAH6+d/9VRdGRrNUooAJ5Ovyw7gtf/rOmJhzQoLSThQ2zEBFEgGOxBXGjlDY0CmBoho00KZMCJ7+6libg2V2qVxpWzC0nvXf0MAGFLaj3J2P8cxVinmFMghIKZCOQrgklmQ00ezSem8quuO3JZp0QcLIY3uePllda/+J/oRDhdnd9eTiqf0qlKi58o3zP9scLYyPdnU9V069/eWZv97yyD2nFihPPzv29it13FIkO8fU9N9N55577rkFstWftO576q5txtxvh6rHg0r14kPndlMtM6tj/+T0T1Kb5s5ur+cTO22WbbBkEZCQXLMnBgIKE4MjwxRATUGooRAyhCQUwgADaNc3LNplQ5rwlI4y6CACYwRJRqSmXBZQGSwAxzExpBGN+WAlAxIzXZqYzUXar+RJY04prHX98Nwge6eqFDTxpPJ40z948DMXlny9pBQ6dulnG/yA2MwLgqCIZ5966Knw+ODgwEFje6Sj7eO7Hx9GR468bENTU6q78/FrNNFq8qDayRbSsJn73uT+vZ9dVXZU++g70hfbRC+0JQqZNouwNJZukjDP1qYXUR6mSHsRQmgjZWHcZYag1CyJMJKAiSSUCkVNgakpkI0DaiFOYpJR2/VwNF+iqYxr1BeRlEgb1YgYWSDovcfu/fRUpX907O0fptyS1Wi4DUPd3d3LY9foyOBftVvSjJWyLvYxZB5/oGcBo9ff+2kbv2TMosNnftwUMKPwZNeTtUnN18NuSd1rA/+rFQKISoymPvngP76lT6j07te54ASy6CR8N2L4JZuokgVYGpQzqogR8c34ltDNqygcRAwptLeCDMGRHQSY+giBUBwrrY8kkogI7WJjJaT0iYEmkbSu/P4Dn85ob1Bzz6NPbUowMNOMBfnHH/jiioSj7d+t98U2e4LRIO8DC2j2sd9bAB+OnO2Lgctt9KszP27KsOnCk13P3RaAZRmlUP/R/9lsOGYcMcP3HGfmiT1P/M6+ptb2QeB+NIxOa4EtdZxw5YIQlVLxQCKUF4rNOgRPZ4adOc2qIWgHdkcgJxoFRqawzblP3PP09Gq+sF7PsXd/3EK5SnpKKhkwFgg1U8tpCwBqZeFTSHbXkOdNk98KDc+e7TOvZvONEpvh56wSIw8ymVyh0FI8cOCADrqEmN/MGK8c+2EdxXKf9psxRlJKJInWFIwzAxNf6JwPCkVP+SXfDYownXbPnTunXnhhN/q/R4vxWBwnkABb6kR3jotzdWSmVkavNAcN3slLhxK+T1KKCTsIdCYALU1ePj/Z09O7IN9fP/WjNmPey4SrOfabH259qGvw8lolXtdOrLpBgTvvIItSnfWmbMJxoAS1ZOBzEVi+HwBEeDweiHx+ZwXcX8L78Va0YcrHhU0taqu7VeXzeRWPv48uXSpSqy1Jox41pc0tgpShP5JASoRmk4cIj1mkRANrrmpu3MyGaVOO+DOmKDYkAhlEfOZykZXZYFO6sH/H/nK+HgAMDBw0isLpePTBzw2FAGpFQmNm20Nd/2hoLUI8NzFZ1N//omkYli0j0qIoYkjhESkxEVQTG0GiJLEVt4AxjqQSypCGIlQ7wFhq8DEBwRViuOT6jPne/v3P33QAoHZ+2mA6dKgPb73Lb4JSaV5aiQaPiTgSgTc3wSZiW+twd+eiCdfXd4C0b31881UnMqKpeUGmHDny32MyTptnL9VdXs3vuwlg/t400XLxhRd61Yn3frQJzRfcwCSSStQgBJOlOfuqaZYjsN3dX1z4klkb0pDo2FxQYqyqM5YIZU2J2IENhE9NPPTQH1+bkPf3Bp6VJ9rX12v29PQyHcu8Fxs75jw5ceL10bmPPdHaTHzS4BI1nYkns62ZmejDD381W9ML+sXAwUScm02ZTP7K/v3PL7DzNVpNk/TRo99pxxEwivXu2P4di43XAj+982v1re5q89FGfVWenznzg6bz99izPahHnDnznY4gwNFTp/il8fFx8fEnWjsUV7FCJrioQTlz5gfRe+/9XO3PNZQ9MpVtQ0h6+/Z9Rbt6qwcTaiekd6u9vbFVyyXHIROvvDLu/a4Lf/PN79b7finS3f186EcfO/btOs4dt8ommgOWs0zV09Hs89GP9oqqt3D48Dejjz32L8PF6k0/d+7l5s7Osk136tT32vTfD3/4mbHj730vbhe4zle82NX1XEmLKtPEmwuFwpB+P2TLkFUXEy5Ds+fRtLYiWkxTMcsyxrTbttKG3TCgqgewrOZmAOlwHhQnJuZnDxx4gd2qsunvf9FqakI7u7q+9k510QMDf9F5//1f0T9tFH4Fd/z4f9v90EP/LPypo9CcOPnSHV1dz71X0XytQUD8ffu+FCZKv/PO9zfMzXmFKqu99da3tgjhzFfrT5367qYgKIm9e58fPXjwoHH33cE235+9UAVqOSfo8X7+82+ZqZTRKISIEkKKvj85eaNM1hsCWIt6f/+LiWQS1yGEDADsAjRkRkcPBT09h7TTdV3b7syZb0bPny+yqi2lKSGZtBOaSsqWQC9NpVq23HfflwerAJ448e1dH/nIP31X3+sNSMdF+/0Pfz1MKgoj5S0TdzzyyPPnKnNEx4792Y6HH/4j/X44l4GBg8murufmV2F11NfXh++4Y9jO5YwGE6hd4iwwjGD2VuT/LQFYO5GBgYORYL5Yp2wafoQRBOA7LuRcJ1Oanj6rbgbU2v6qv7nV2blorJ448WJi797nF/zs48f/c7x2cRrUWoF+HRmN+voO4K3Z38f5naVonKKEAGErSZU0zNLs7GT2ySd7b8sTu20Al092YKA3IvORhNCJUpiFqYFKCkaAeNItlq4UkJdOg9TgnjvXqbQJsVa/3aJl4De+0Yt2796N0ulzyHVnSVNTu+1lUNTCpu3jIJyPZZjMVeBG5ufnu24TsOXrXjMAV9p9bbHn86VonIDjs6JpgUmF4kTHALUdQPXBMQdJuTaQfUmwITgrScaQNFNRWf31J0IC5BIDGYbClAF2PZfGDAsjhyDhciIIYIQJogSkKCGpDMEEwwEzzFI8HimupgDWwqr4QAG8mQmqvj5yITZBS8SnU1jQZlvh2TmfJJMmcl0jnJ/jMCVFoAIfpElsYUjCI8Lio05G3EjI38wcfpc2/x+SX4/uLi8icAAAAABJRU5ErkJggg==",Lf="data:image/png;base64,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",af="data:image/png;base64,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",of={chart:"chart___Rsr8z",group:"group___cEFV6",item:"item___uQIC1"},Ag=Object.defineProperty,Mh=Object.getOwnPropertySymbols,Dh=Object.prototype.hasOwnProperty,Ud=Object.prototype.propertyIsEnumerable,Ed=(E,a,y)=>a in E?Ag(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,Ad=(E,a)=>{for(var y in a||(a={}))Dh.call(a,y)&&Ed(E,y,a[y]);if(Mh)for(var y of Mh(a))Ud.call(a,y)&&Ed(E,y,a[y]);return E};const w0=()=>`shadow-${Math.random().toString(36).slice(2,9)}`;var Pt=({percentage:E,startAngle:a=270,strokeColor:y="#42BECD",trackColor:x="#e6e6e6",innerBackgroundColor:b="#fff",text:z="",textColor:ee="#000",textSize:re="1rem",textPadding:ae="28rem",outerDiameter:oe,innerDiameter:de,maxTextLength:ge=6,onClick:ye,hoverEffect:De=!0,style:ke})=>{const[ze,We]=(0,Ne.useState)(0),[Ve,Ze]=(0,Ne.useState)(0),[Ye,et]=(0,Ne.useState)(!1),st=Cn=>{var qn,pn;const lr=parseFloat(Cn),Jr=parseFloat((pn=(qn=document.documentElement)==null?void 0:qn.style)==null?void 0:pn.fontSize);return lr*Jr},ht=()=>{We(st(oe)),Ze(st(de))};(0,Ne.useEffect)(()=>(ht(),window.addEventListener("resize",ht),()=>window.removeEventListener("resize",ht)),[oe,de]);const mt=ze/2,dt=Ve/2,Ot=(ze-Ve)/2,_t=mt-Ot,wt=2*Math.PI*_t,$t=wt-E/100*wt,gn=`rotate(${a} ${mt} ${mt})`,Tn=((Cn,qn)=>qn&&Cn.length>qn?Cn.slice(0,qn-1)+"...":Cn)(z,ge),er=()=>{De&&et(!0)},En=()=>{et(!1)},yn=st("4rem");return Ne.createElement("svg",{width:ze,height:ze,viewBox:`0 0 ${ze} ${ze}`,xmlns:"http://www.w3.org/2000/svg",onClick:ye,onMouseEnter:er,onMouseLeave:En,style:Ad({cursor:ye?"pointer":"default"},ke)},Ne.createElement("circle",{cx:mt,cy:mt,r:dt,fill:b}),Ne.createElement("circle",{cx:mt,cy:mt,r:_t,fill:"none",stroke:x,strokeWidth:Ot}),Ne.createElement("circle",{cx:mt,cy:mt,r:_t,fill:"none",stroke:y,strokeWidth:Ot,strokeDasharray:wt,strokeDashoffset:$t,strokeLinecap:"round",transform:gn}),Ye&&Ne.createElement("circle",{cx:mt,cy:mt,r:_t+Ot/2,fill:"none",stroke:"#FA6400",strokeWidth:st("4rem")}),z&&Ne.createElement("foreignObject",{x:mt-dt,y:mt-dt,width:Ve,height:Ve},Ne.createElement("div",{style:{width:"100%",height:"100%",display:"flex",justifyContent:"center",alignItems:"center",padding:ae}},Ne.createElement("b",{style:{color:ee,fontSize:re,textAlign:"center"},title:z},Tn))))},Rt="data:image/png;base64,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",jt="data:image/png;base64,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",Sn="data:image/png;base64,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",bn="data:image/png;base64,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",sr="data:image/png;base64,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",ir="data:image/png;base64,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",Pr=Te(59301),qr=({dataSource:E=[],pathsDetail:a,onClick:y,onMore:x})=>{const[b,z]=(0,Ne.useState)([]);(0,Ne.useEffect)(()=>{let re=[];for(let ae=0;ae<E.length;ae+=4)re.push(E.slice(ae,ae+4));z(re)},[JSON.stringify(E)]);function ee(re){return re.concat(Array(4-re.length).fill(null)).slice(0,4).reverse()}return Pr.createElement("div",{className:of.chart},b.map((re,ae)=>{var oe;let de=null;return ae%2===0?de=Pr.createElement("div",{className:of.group,style:ae==0?{marginLeft:"-164rem"}:{}},re.map((ge,ye)=>{var De,ke,ze;return Pr.createElement("div",{key:ge.knowledge_uuid,className:of.item,style:ae==0&&ye>0?{marginLeft:"300rem"}:{}},(ge==null?void 0:ge.has_children)&&Pr.createElement("img",{src:ge.complete_rate?Rt:jt,style:{width:"163rem",height:"91rem",position:"absolute",zIndex:1,left:0,top:"3rem"}}),ye!==0&&Pr.createElement("img",{src:ge.complete_rate?Sn:bn,style:{width:"410rem",height:"50rem",position:"absolute",zIndex:2,right:"50%",bottom:"38rem"}}),ae!==0&&ye===0&&Pr.createElement("img",{src:ge.complete_rate?sr:ir,style:{width:"233rem",height:"316rem",position:"absolute",zIndex:3,right:"calc(50% + 5rem)",bottom:"38rem",transform:"scaleX(-1)"}}),Pr.createElement(Pt,{strokeColor:"#60C059",percentage:ge.complete_rate,startAngle:270,trackColor:"#E3E8EF",text:ge.name,textSize:"16rem",hoverEffect:!(!(ge!=null&&ge.is_publish)&&!((De=a==null?void 0:a.detail)!=null&&De.can_managed)),textColor:"#333",outerDiameter:"137rem",innerDiameter:"107rem",textPadding:"26rem",onClick:!(ge!=null&&ge.is_publish)&&!((ke=a==null?void 0:a.detail)!=null&&ke.can_managed)?void 0:()=>y(ge),style:{position:"absolute",zIndex:4,left:"50%",bottom:0,transform:"translateX(-50%)"}}),Pr.createElement("div",{onClick:()=>{x(ge)},style:{width:"34rem",height:"34rem",borderRadius:"50%",position:"absolute",zIndex:5,left:"50%",top:"3rem",transform:"translateX(-50%)",cursor:"pointer"}}),!(ge!=null&&ge.is_publish)&&!((ze=a==null?void 0:a.detail)!=null&&ze.can_managed)&&Pr.createElement("div",{style:{background:"rgba(0, 0, 0, 0.5)",borderRadius:"50%",width:"124rem",height:"124rem",position:"absolute",zIndex:5,left:"50%",bottom:6,transform:"translateX(-50%)",textAlign:"center",paddingTop:"40rem"}},Pr.createElement("i",{className:"iconfont icon-suo1",style:{color:"#fff",fontSize:"28rem"}}),Pr.createElement("div",{style:{color:"#fff",fontSize:"12rem"}},"\u8D44\u6E90\u6682\u672A\u53D1\u5E03")))})):de=Pr.createElement("div",{className:of.group},(oe=ee(re))==null?void 0:oe.map((ge,ye)=>{var De,ke,ze;return Pr.createElement("div",{key:(ge==null?void 0:ge.knowledge_uuid)||ye,className:of.item},ge&&Pr.createElement(Pr.Fragment,null,(ge==null?void 0:ge.has_children)&&Pr.createElement("img",{src:ge.complete_rate?Rt:jt,style:{width:"163rem",height:"91rem",position:"absolute",zIndex:1,left:0,top:"3rem"}}),ye!==3&&Pr.createElement("img",{src:ge.complete_rate?Sn:bn,style:{width:"410rem",height:"50rem",position:"absolute",zIndex:2,left:"50%",bottom:"38rem"}}),ye===3&&Pr.createElement("img",{src:ge.complete_rate?sr:ir,style:{width:"233rem",height:"316rem",position:"absolute",zIndex:3,left:"calc(50% + 5rem)",bottom:"38rem"}}),Pr.createElement(Pt,{strokeColor:"#60C059",percentage:ge.complete_rate,startAngle:270,trackColor:"#E3E8EF",text:ge.name,textSize:"16rem",textColor:"#333",hoverEffect:!(!(ge!=null&&ge.is_publish)&&!((De=a==null?void 0:a.detail)!=null&&De.can_managed)),outerDiameter:"137rem",innerDiameter:"107rem",textPadding:"26rem",onClick:!(ge!=null&&ge.is_publish)&&!((ke=a==null?void 0:a.detail)!=null&&ke.can_managed)?void 0:()=>y(ge),style:{position:"absolute",zIndex:4,left:"50%",bottom:0,transform:"translateX(-50%)"}}),Pr.createElement("div",{onClick:()=>{x(ge)},style:{width:"34rem",height:"34rem",borderRadius:"50%",position:"absolute",zIndex:5,left:"50%",top:"3rem",transform:"translateX(-50%)",cursor:"pointer"}}),!(ge!=null&&ge.is_publish)&&!((ze=a==null?void 0:a.detail)!=null&&ze.can_managed)&&Pr.createElement("div",{style:{background:"rgba(0, 0, 0, 0.5)",borderRadius:"50%",width:"124rem",height:"124rem",position:"absolute",zIndex:5,left:"50%",bottom:6,transform:"translateX(-50%)",textAlign:"center",paddingTop:"40rem"}},Pr.createElement("i",{className:"iconfont icon-suo1",style:{color:"#fff",fontSize:"28rem"}}),Pr.createElement("div",{style:{color:"#fff",fontSize:"12rem"}},"\u8D44\u6E90\u6682\u672A\u53D1\u5E03"))))})),Pr.createElement(Ne.Fragment,{key:ae},de)}))},ka=Te(81327),ra=Te(17574),$r={flex_box_center:"flex_box_center___DSyRe",flex_space_between:"flex_space_between___FubQ0",flex_box_vertical_center:"flex_box_vertical_center___Bwld4",flex_box_center_end:"flex_box_center_end___K1Pkl",flex_box_column:"flex_box_column___av7e_",hader:"hader___vwJKS",title:"title____Pmur",body:"body___FxUh6",nodeData:"nodeData___cHclP",yc:"yc___I8230",yclj:"yclj___toMmi",nametitle:"nametitle___B4Hrd",treeheight:"treeheight___HER2j",spacewidth:"spacewidth___XhLbb",titlename:"titlename___rBLxO"},Pa=Te(89489),ua=Te(59301),Nr=Object.defineProperty,Qr=Object.defineProperties,wa=Object.getOwnPropertyDescriptors,Ei=Object.getOwnPropertySymbols,gi=Object.prototype.hasOwnProperty,Si=Object.prototype.propertyIsEnumerable,Ii=(E,a,y)=>a in E?Nr(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,bi=(E,a)=>{for(var y in a||(a={}))gi.call(a,y)&&Ii(E,y,a[y]);if(Ei)for(var y of Ei(a))Si.call(a,y)&&Ii(E,y,a[y]);return E},mi=(E,a)=>Qr(E,wa(a)),jo=(E,a)=>{var y={};for(var x in E)gi.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&Ei)for(var x of Ei(E))a.indexOf(x)<0&&Si.call(E,x)&&(y[x]=E[x]);return y},ho=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(oe){b(oe)}},ee=ae=>{try{re(y.throw(ae))}catch(oe){b(oe)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});const Vo=E=>{var a=E,{pathsDetail:y,user:x,globalSetting:b,loading:z,dispatch:ee,addmodal:re,setaddmodal:ae,uuid:oe,onOk:de}=a,ge=jo(a,["pathsDetail","user","globalSetting","loading","dispatch","addmodal","setaddmodal","uuid","onOk"]),ye,De;let[ke,ze]=(0,Ne.useState)({subject_id:(ye=y==null?void 0:y.detail)==null?void 0:ye.id,uuid:""});const[We,Ve]=(0,Ne.useState)([]),[Ze,Ye]=(0,Ne.useState)([]),[et,st]=(0,Ne.useState)(!1),[ht,mt]=(0,Ne.useState)(""),[dt,Ot]=(0,Ne.useState)(!1);(0,Ne.useEffect)(()=>{re&&wt(1)},[re]);function _t(Xt,Tn){for(let er of Xt)Tn.push(er),er.children&&er.children.length>0&&_t(er.children,Tn)}function wt(Xt){return ho(this,null,function*(){var Tn,er;st(!0);let En=yield(0,te.ZP)("/api/subject_knowledge/tree.json",{method:"get",params:mi(bi({},ke),{id:oe,uuid:ke==null?void 0:ke.uuid,is_edit:!!oe})});st(!1),(En==null?void 0:En.status)===0&&(oe?ke.uuid=En==null?void 0:En.uuid:Xt===1&&(ke.uuid=(er=(Tn=En==null?void 0:En.parent_knowledges)==null?void 0:Tn[0])==null?void 0:er.uuid),mt(En==null?void 0:En.name),ze(ke),Ve(En),Ye(En==null?void 0:En.data))})}const $t=Xt=>{console.log(Xt)},gn=Xt=>{console.log(Xt);const Tn=Xt.node.id,er=Xt.dragNode.id,En=Xt.node.pos.split("-"),yn=Xt.dropPosition-Number(En[En.length-1]),Cn=(lr,Jr,na)=>{for(let Hr=0;Hr<lr.length;Hr++){if(lr[Hr].id===Jr)return na(lr[Hr],Hr,lr);lr[Hr].children&&Cn(lr[Hr].children,Jr,na)}},qn=[...Ze];let pn;if(Cn(qn,er,(lr,Jr,na)=>{na.splice(Jr,1),pn=lr}),!Xt.dropToGap)Cn(qn,Tn,lr=>{lr.children=lr.children||[],lr.children.unshift(pn)});else{let lr=[],Jr;Cn(qn,Tn,(na,Hr,Ar)=>{lr=Ar,Jr=Hr}),yn===-1?lr.splice(Jr,0,pn):lr.splice(Jr+1,0,pn)}Ye(qn)};return ua.createElement(Me.default,{title:oe?"\u7F16\u8F91\u5B66\u4E60\u8DEF\u5F84":"\u521B\u5EFA\u5B66\u4E60\u8DEF\u5F84",open:re,width:"920rem",centered:!0,onOk:()=>ho(void 0,null,function*(){var Xt,Tn;let er=[];if(_t(Ze,er),console.log(Ze,er,"gData"),(Ze==null?void 0:Ze.length)<=0||((Xt=er==null?void 0:er.filter(yn=>!(yn!=null&&yn.is_out)))==null?void 0:Xt.length)===0||((Tn=Ze==null?void 0:Ze.filter(yn=>!(yn!=null&&yn.is_out)))==null?void 0:Tn.length)===0){_e.ZP.info("\u5B66\u4E60\u8DEF\u5F84\u4E0D\u53EF\u4E3A\u7A7A");return}if(!ht){_e.ZP.info("\u540D\u79F0\u4E0D\u53EF\u4E3A\u7A7A");return}let En=yield(0,te.ZP)("/api/subject_knowledge.json",{method:"post",body:mi(bi({},ke),{id:oe,name:ht,routes:Ze})});(En==null?void 0:En.status)===0&&(_e.ZP.info(oe?"\u4FEE\u6539\u6210\u529F":"\u65B0\u589E\u6210\u529F"),de(En==null?void 0:En.id,ht),ae(!1))}),okText:"\u5B8C\u6210\u521B\u5EFA",onCancel:()=>{ae(!1)}},ua.createElement(ce.Z,{spinning:et},ua.createElement("div",{className:$r.body},ua.createElement(ka.Z,{className:$r.spacewidth},ua.createElement(ka.Z.Compact,null,ua.createElement(Se.default,{addonBefore:ua.createElement("span",{className:$r.title},ua.createElement("span",{style:{color:"red"}},"*")," \u8DEF\u5F84\u540D\u79F0"),showCount:!0,maxLength:12,value:ht,onChange:Xt=>mt(Xt.target.value),style:{width:"100%"},size:"large",placeholder:"\u8F93\u5165\u5B66\u4E60\u8DEF\u5F84\u540D\u79F0",allowClear:!0}))),ua.createElement(ka.Z,{className:$r.spacewidth,style:{marginTop:"20rem"}},ua.createElement(ka.Z.Compact,null,ua.createElement("div",{className:$r.titlename},"\u77E5\u8BC6\u56FE\u8C31"),ua.createElement(xt.default,{value:ke.uuid,onChange:Xt=>{ke.uuid=Xt,wt()},disabled:oe,style:{width:"90%"},size:"large"},(De=We==null?void 0:We.parent_knowledges)==null?void 0:De.map(Xt=>ua.createElement(xt.default.Option,{value:Xt==null?void 0:Xt.uuid},Xt==null?void 0:Xt.knowledge_name))))),ua.createElement("div",{style:{marginTop:"20rem",background:"#D5F1EA",borderRadius:"8rem 8rem 0rem 0rem",height:"38rem",lineHeight:"38rem",padding:"0px 12rem"}},ua.createElement("span",{style:{color:"#1B8565",fontSize:"16rem",fontWeight:"500"}},"\u5B66\u4E60\u8DEF\u5F84"),ua.createElement("span",{style:{marginLeft:"10rem"}},"\uFF08\u62D6\u52A8\u53EF\u8C03\u6574\u8DEF\u5F84\u987A\u5E8F\uFF09")),(Ze==null?void 0:Ze.length)>0?ua.createElement(ra.default,{style:{background:"#FAFAFA"},treeData:Ze,showLine:!0,blockNode:!0,fieldNames:{key:"id"},className:$r.treeheight,draggable:!0,onDragEnter:$t,onDrop:gn,switcherIcon:ua.createElement(Pa.Z,null),titleRender:Xt=>ua.createElement("div",{className:$r.nodeData,style:{color:Xt!=null&&Xt.is_out?"#999999":"#000000"}},ua.createElement("div",{className:$r.nametitle,title:Xt==null?void 0:Xt.name,style:{flex:1}},(Xt==null?void 0:Xt.is_out)&&ua.createElement("span",{className:$r.yc},"\u5DF2\u79FB\u51FA")," ",Xt==null?void 0:Xt.name),ua.createElement("span",{className:$r.yclj,style:{color:Xt!=null&&Xt.is_out?"#37AD83":"#E30000",fontSize:"14rem"},onClick:()=>{Xt.is_out=!Xt.is_out}},Xt!=null&&Xt.is_out?"\u52A0\u5165\u5B66\u4E60\u8DEF\u5F84":"\u79FB\u51FA\u5B66\u4E60\u8DEF\u5F84")," ")}):ua.createElement(Vt.Z,{styles:{margin:"20rem auto"}}))))};var ts=(0,be.connect)(({pathsDetail:E,user:a,loading:y,globalSetting:x})=>({pathsDetail:E,user:a,globalSetting:x,loading:y.models.index}))(Vo),Ss=Te(54580),Zs=Te(43428),fa={flex_box_center:"flex_box_center___bAhU8",flex_space_between:"flex_space_between___fGcUL",flex_box_vertical_center:"flex_box_vertical_center___hqbFm",flex_box_center_end:"flex_box_center_end___h8cjt",flex_box_column:"flex_box_column___jkfSL",detailmodal:"detailmodal___KEy8k",title:"title___M0Bdn",button:"button___oEMiZ",drawer:"drawer___Pwq6m",tabstyle:"tabstyle___hGelr",items:"items___RrF7L",itemsactivite:"itemsactivite____kVzF",nodetitle:"nodetitle___UgLxl",nodeboyd:"nodeboyd___R1M87",listitem:"listitem___CjR4j",Tabs:"Tabs___gAkar",addmodal:"addmodal___KHvV4",gxcoent:"gxcoent___B8UeJ",gxtitle:"gxtitle___Ezw1C",Colortitle:"Colortitle___kChPm",gxbody:"gxbody___HmZPk",tag:"tag___b2Gak",form:"form___wY8YH",radioform:"radioform___RW7Fy",settingmodal:"settingmodal___LgbSA",body:"body___KaaXx",left:"left___BbRKH",header:"header___E8vej",treenode:"treenode___XViAn",hudong:"hudong___MzZbW",colortitle:"colortitle___PgqHg",right:"right___jzXCF",multiple:"multiple___GQEEM",settingtag:"settingtag___XVMCI",tree:"tree___zz_WU",select:"select___HL7_r",input:"input___reuVt",DetailStatistics:"DetailStatistics___v31Uq",xxrs:"xxrs___Q156g",xxrscount:"xxrscount___OdU60",righttop:"righttop___dnIBD",rightbottom:"rightbottom___B0s8j"},Ko=Te(99267),No=Te(43531),ns=Te(15075),Eo={tag:"tag___aXy_L",active:"active___kZOMC",tagsModal:"tagsModal___wsl_M",btn:"btn___S2nL4",modal:"modal___r3iAS",mHead:"mHead___imW9A",body:"body___fZUhx",add:"add___QHMDJ",error:"error___aJzBo"},Ui=Te(59301),ms=Object.defineProperty,rs=Object.getOwnPropertySymbols,Ol=Object.prototype.hasOwnProperty,ml=Object.prototype.propertyIsEnumerable,Ft=(E,a,y)=>a in E?ms(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,Wt=(E,a)=>{for(var y in a||(a={}))Ol.call(a,y)&&Ft(E,y,a[y]);if(rs)for(var y of rs(a))ml.call(a,y)&&Ft(E,y,a[y]);return E},cn=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(oe){b(oe)}},ee=ae=>{try{re(y.throw(ae))}catch(oe){b(oe)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});let An=[{name:"\u4F5C\u4E1A",id:"zy",item_type:2},{name:"\u5B9E\u8BAD",id:"sx",item_type:2},{name:"\u6559\u6750",id:"jc",item_type:2},{name:"\u89C6\u9891",id:"sp",item_type:2},{name:"\u8BFE\u4EF6",id:"kj",item_type:2},{name:"\u8BD5\u5377",id:"sj",item_type:2},{name:"\u9898\u96C6",id:"tj",item_type:2}],Nn=[{name:"\u7AE0\u8282",id:"zj",item_type:1},{name:"\u77E5\u8BC6\u70B9",id:"zsd",item_type:1}];var fr=({value:E=[],onChange:a,type:y,dataSources:x=[],pathsDetail:b={},showmodal:z,containerRef:ee})=>{const[re,ae]=(0,Ne.useState)(!1),[oe,de]=(0,Ne.useState)([]),[ge,ye]=(0,Ne.useState)(),[De,ke]=(0,Ne.useState)(""),[ze,We]=(0,Ne.useState)(""),[Ve,Ze]=(0,Ne.useState)(""),[Ye,et]=(0,Ne.useState)(!1),[st,ht]=(0,Ne.useState)(!1),[mt,dt]=(0,Ne.useState)([]),[Ot,_t]=(0,Ne.useState)("");(0,Ne.useEffect)(()=>{re&&wt()},[re]);function wt(){return cn(this,null,function*(){var En;let yn=yield(0,te.ZP)("/api/knowledge_items.json",{method:"get",params:{item_type:y,subject_id:(En=b==null?void 0:b.detail)==null?void 0:En.id}});(yn==null?void 0:yn.status)===0&&(y===3?de(yn==null?void 0:yn.data):(de([...Nn,...yn==null?void 0:yn.data]),dt([...An,...yn==null?void 0:yn.data2])))})}const $t=[{background:"#6236FF",borderColor:"#9D82FF"},{background:"#6DB9FF",borderColor:"#6DB9FF"},{background:"rgba(27,175,234,0.8)",borderColor:"#68D5FF"},{background:"#C1AC15",borderColor:"#DCC51C"},{background:"#E07E37",borderColor:"#F79046"},{background:"rgba(29,94,255,0.8)",borderColor:"#6D97FE"},{background:"#E75454",borderColor:"#FE8383"},{background:"#A557D8",borderColor:"#C57AF6"},{background:"#2CA768",borderColor:"#43CC86"},{background:"#1F9269",borderColor:"#38B588"},{background:"#CA7720",borderColor:"#E99338"},{background:"rgba(224,32,32,0.8)",borderColor:"#E02020"},{background:"rgba(255,126,15,0.8)",borderColor:"#FF7E0F"},{background:"rgba(29,94,255,0.8)",borderColor:"#1D5EFF"},{background:"#2BAC8E",borderColor:"#30CB9D"},{background:"#EE5D5D",borderColor:"#FF8181"},{background:"#7E5AFE",borderColor:"#9173FA"},{background:"#3ABCEF",borderColor:"#6FD6FF"},{background:"#B132C2",borderColor:"#C57AF6"},{background:"#46A4FB",borderColor:"#72BBFF"},{background:"#C1AC15",borderColor:"#DCC51C"},{background:"#E07E37",borderColor:"#F79046"},{background:"#1D5EFF",borderColor:"#6D97FE"},{background:"#2CA768",borderColor:"#43CC86"},{background:"#A557D8",borderColor:"#C57AF6"},{background:"#1F9269",borderColor:"#38B588"},{background:"#CA7720",borderColor:"#E99338"}],gn="\u6807\u7B7E";(0,Ne.useEffect)(()=>{de(x)},[]),(0,Ne.useEffect)(()=>{re&&ye(E)},[re]);const Xt=({title:En="",style:yn={},values:Cn="",showDelete:qn=!0,modal:pn=!1,active:lr=!1})=>{const na=(Wr=>Wr.split("").reduce((ya,Ra)=>ya+Ra.charCodeAt(0),0))(En)%$t.length,{background:Hr,borderColor:Ar}=$t[na];return Ui.createElement("div",{className:Gn()(Eo.tag,lr?Eo.active:""),onClick:()=>{var Wr;if(pn){if(re===1){let ya=[...oe,...mt];ye([...ya.filter(Ra=>(Ra==null?void 0:Ra.id)===Cn)])}re===2&&((Wr=ge==null?void 0:ge.map(ya=>ya.id))!=null&&Wr.includes(Cn)?ye(ge.filter(ya=>ya.id!==Cn)):ye([...ge,...oe.filter(ya=>(ya==null?void 0:ya.id)===Cn)]))}},style:Wt({background:Hr,borderColor:Ar},yn)},Ui.createElement("span",null,En),qn&&Ui.createElement("i",{onClick:Wr=>cn(void 0,null,function*(){var ya;if(Wr.stopPropagation(),pn){de(oe.filter(Aa=>Aa.name!==En)),de(oe.filter(Aa=>Aa.name!==En));let Ra=yield(0,te.ZP)(`/api/knowledge_items/${Cn}.json`,{method:"delete",body:{id:Cn,subject_id:(ya=b==null?void 0:b.detail)==null?void 0:ya.id}});(Ra==null?void 0:Ra.status)===0&&wt()}else a(E.filter(Ra=>Ra.id!==Cn))}),className:"iconfont icon-shanchu5"}))},Tn=()=>{a(ge),ae(!1)},er=En=>cn(void 0,null,function*(){var yn;if(!De.replace(/\s+/g,"")&&En===1){Ze(`${gn}\u4E0D\u80FD\u4E3A\u7A7A`);return}if(!ze.replace(/\s+/g,"")&&En===2){_t("\u8D44\u6E90\u4E0D\u80FD\u4E3A\u7A7A");return}if((oe.map(qn=>qn.name).includes(De)||mt.map(qn=>qn.name).includes(De))&&En===1){Ze(`\u8BE5${gn}\u5DF2\u5B58\u5728\uFF0C\u8BF7\u52FF\u91CD\u590D\u6DFB\u52A0\uFF01`);return}if((mt.map(qn=>qn.name).includes(ze)||oe.map(qn=>qn.name).includes(ze))&&En===2){_t("\u8BE5\u8D44\u6E90\u5DF2\u5B58\u5728\uFF0C\u8BF7\u52FF\u91CD\u590D\u6DFB\u52A0\uFF01");return}let Cn=yield(0,te.ZP)("/api/knowledge_items.json",{method:"post",body:{item_type:y===3?3:En,name:y===3||En===1?De:ze,subject_id:(yn=b==null?void 0:b.detail)==null?void 0:yn.id}});(Cn==null?void 0:Cn.status)===0&&wt(),En===1&&et(!1),En===2&&ht(!1)});return Ui.createElement("div",{className:Eo.tagsModal},y===5&&Ui.createElement(Ui.Fragment,null,E==null?void 0:E.map((En,yn)=>Ui.createElement(Xt,{values:En.id,key:yn,title:En.name,showDelete:!1,style:{marginRight:"20rem",marginBottom:0}})),z&&Ui.createElement("div",{onClick:()=>ae(1),style:{marginBottom:"0rem"},className:Eo.btn},Ui.createElement("i",{className:"iconfont icon-genghuanguanliyuan1"}),E!=null&&E.length?"\u66F4\u6362":"\u9009\u62E9","\u7C7B\u578B")),y===3&&Ui.createElement(Ui.Fragment,null,E==null?void 0:E.map((En,yn)=>Ui.createElement(Xt,{values:En.id,key:yn,title:En.name})),z&&Ui.createElement("div",{onClick:()=>ae(2),className:Eo.btn,style:{marginBottom:"10rem"}},Ui.createElement("i",{className:"iconfont icon-tianjiatixing"}),E!=null&&E.length?"\u66F4\u6362":"\u9009\u62E9","\u6807\u7B7E")),Ui.createElement(Me.default,{open:!!re,centered:!0,width:"1000rem",okText:"\u4FDD\u5B58",getContainer:()=>ee.current,onCancel:()=>ae(!1),cancelText:"\u53D6\u6D88",afterClose:()=>{et(!1),ht(!1),Ze(""),ke("")},onOk:Tn,title:`\u9009\u62E9${gn}`},Ui.createElement("div",{className:Eo.modal},Ui.createElement("div",{className:Eo.mHead},Ui.createElement("b",null),Ui.createElement("span",null,`${gn}`,"\uFF08",oe.length,"\uFF09"),Ui.createElement("div",{onClick:()=>{et(!0),Ze(""),ke("")},className:Eo.btn},Ui.createElement("i",{className:"iconfont icon-tianjiatixing"}),"\u6DFB\u52A0")),Ui.createElement("div",{className:Eo.body},oe==null?void 0:oe.map((En,yn)=>{var Cn,qn,pn;return Ui.createElement(Xt,{showDelete:y===3?!((Cn=ge==null?void 0:ge.map(lr=>lr==null?void 0:lr.id))!=null&&Cn.includes(En==null?void 0:En.id)):!((qn=ge==null?void 0:ge.map(lr=>lr==null?void 0:lr.id))!=null&&qn.includes(En==null?void 0:En.id))&&!((pn=Nn.map(lr=>lr.name))!=null&&pn.includes(En.name)),modal:!0,style:{cursor:"pointer"},active:ge==null?void 0:ge.map(lr=>lr==null?void 0:lr.id).includes(En==null?void 0:En.id),key:En==null?void 0:En.id,values:En==null?void 0:En.id,title:En==null?void 0:En.name})}),Ye&&Ui.createElement("div",{className:Eo.add},Ui.createElement(Se.default,{style:{width:"rem"},size:"large",value:De,onChange:En=>{Ze(""),ke(En.target.value)}}),Ui.createElement("i",{onClick:()=>er(1),className:"iconfont icon-dui",style:{color:"#1B8565"}}),Ui.createElement("i",{onClick:()=>et(!1),className:"iconfont icon-shanchu10",style:{color:"#9096A3"}}),!!Ve&&Ui.createElement("div",{className:Eo.error},Ve)))),y===5&&Ui.createElement("div",{className:Eo.modal},Ui.createElement("div",{className:Eo.mHead},Ui.createElement("b",null),Ui.createElement("span",null,"\u8D44\u6E90","\uFF08",mt.length,"\uFF09"),Ui.createElement("div",{onClick:()=>{ht(!0),_t(""),We("")},className:Eo.btn},Ui.createElement("i",{className:"iconfont icon-tianjiatixing"}),"\u6DFB\u52A0")),Ui.createElement("div",{className:Eo.body},mt==null?void 0:mt.map((En,yn)=>{var Cn,qn;return Ui.createElement(Xt,{showDelete:!((Cn=ge==null?void 0:ge.map(pn=>pn==null?void 0:pn.id))!=null&&Cn.includes(En==null?void 0:En.id))&&!((qn=An.map(pn=>pn.name))!=null&&qn.includes(En.name)),modal:!0,style:{cursor:"pointer"},active:ge==null?void 0:ge.map(pn=>pn==null?void 0:pn.id).includes(En==null?void 0:En.id),key:En==null?void 0:En.id,values:En==null?void 0:En.id,title:En==null?void 0:En.name})}),st&&Ui.createElement("div",{className:Eo.add},Ui.createElement(Se.default,{style:{width:"rem"},size:"large",value:ze,onChange:En=>{_t(""),We(En.target.value)}}),Ui.createElement("i",{onClick:()=>er(2),className:"iconfont icon-dui",style:{color:"#1B8565"}}),Ui.createElement("i",{onClick:()=>ht(!1),className:"iconfont icon-shanchu10",style:{color:"#9096A3"}}),!!Ot&&Ui.createElement("div",{className:Eo.error},Ot))))))},ur=Te(65450),tr=Te(59301),Ir=Object.getOwnPropertySymbols,Sr=Object.prototype.hasOwnProperty,wr=Object.prototype.propertyIsEnumerable,ta=(E,a)=>{var y={};for(var x in E)Sr.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&Ir)for(var x of Ir(E))a.indexOf(x)<0&&wr.call(E,x)&&(y[x]=E[x]);return y},Yr=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(oe){b(oe)}},ee=ae=>{try{re(y.throw(ae))}catch(oe){b(oe)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});let Xr=[{label:"\u5B9E\u8BAD",key:"1"},{label:"\u89C6\u9891",key:"2"},{label:"\u8BFE\u4EF6",key:"3"},{label:"\u8BD5\u5377",key:"4"}];const xa=E=>{var a=E,{types:y,globalSetting:x,loading:b,dispatch:z,pathsDetail:ee,onChange:re,ktzykey:ae,getother:oe}=a,de=ta(a,["types","globalSetting","loading","dispatch","pathsDetail","onChange","ktzykey","getother"]),ge,ye,De,ke;let[ze,We]=(0,Ne.useState)({page:1,limit:10,type:y,keyword:"",select_type:1,subject_id:"",course_id:""});const[Ve,Ze]=(0,Ne.useState)([]);(0,Ne.useEffect)(()=>{Ye()},[y]);function Ye(){return Yr(this,null,function*(){ze.select_type===3&&(ze.subject_id="",ze.course_id=""),ze.select_type===2&&(ze.subject_id=""),ze.select_type===1&&(ze.course_id="");let et=yield(0,te.ZP)("/api/paths/search_all.json",{method:"get",params:ze});(et==null?void 0:et.status)===0&&Ze(et)})}return tr.createElement("div",{style:{padding:"10rem 20rem"}},tr.createElement("div",{style:{display:"flex"}},tr.createElement("div",null,y==="1"&&tr.createElement(Se.default,{placeholder:"\u8BF7\u8F93\u5165\u5173\u952E\u8BCD\u67E5\u8BE2",style:{width:"992rem",marginRight:"10rem",height:"40rem"},onChange:et=>{ze.keyword=et.target.value,ze.page=1,ze.limit=10,We(ze)}}),y!=="1"&&tr.createElement("div",{style:{display:"flex"}},tr.createElement("div",{style:{width:"223rem",alignItems:"center",display:"flex",height:"40rem"}},tr.createElement("span",{style:{width:"92rem",border:"1rem solid #DCDCDC",borderRightStyle:"none",background:"#F6F7F9",height:"40rem",display:"flex",alignItems:"center",justifyContent:"center",lineHeight:"40rem",fontSize:"16rem",color:"#666666"}},"\u6240\u5728\u4F4D\u7F6E"),tr.createElement(xt.default,{value:ze.select_type,onChange:et=>{ze.select_type=et,ze.page=1,ze.limit=10,We(ze),Ye()},className:fa.select,style:{width:"131rem"}},tr.createElement(xt.default.Option,{value:1},"\u5B9E\u8DF5\u8BFE\u7A0B"),tr.createElement(xt.default.Option,{value:2},"\u6559\u5B66\u8BFE\u5802"),tr.createElement(xt.default.Option,{value:3},"\u4E2A\u4EBA\u4E2D\u5FC3"))),ze.select_type!==3&&tr.createElement(xt.default,{value:ze.subject_id||ze.course_id,onChange:et=>{ze.course_id=et,ze.subject_id=et,ze.page=1,ze.limit=10,We(ze),Ye()},className:fa.select,style:{width:"270rem",marginLeft:"8rem"}},ze.select_type===1&&((ge=Ve==null?void 0:Ve.subjects)==null?void 0:ge.map(et=>tr.createElement(xt.default.Option,{value:et.id},et.name))),ze.select_type===2&&((ye=Ve==null?void 0:Ve.courses)==null?void 0:ye.map(et=>tr.createElement(xt.default.Option,{value:et.id},et.name)))),tr.createElement(Se.default,{onChange:et=>{ze.keyword=et.target.value,ze.page=1,ze.limit=10,We(ze)},addonBefore:((De=Xr==null?void 0:Xr.find(et=>et.key===y))==null?void 0:De.label)+"\u540D\u79F0",className:fa.input,style:{marginLeft:"10rem",width:"486rem",height:"40rem"}}))),tr.createElement(ve.ZP,{type:"primary",style:{height:"40rem",fontSize:"14rem",boxShadow:"none",lineHeight:"40rem",width:"108rem",padding:"0",marginLeft:"10rem"},onClick:()=>{Ye()}},"\u67E5\u8BE2")),tr.createElement(Jt.default,{style:{marginTop:"10rem"},dataSource:Ve==null?void 0:Ve.data,pagination:!1,rowKey:et=>et.id,scroll:{y:"400rem"},columns:[{title:((ke=Xr==null?void 0:Xr.find(et=>et.key===y))==null?void 0:ke.label)+"\u540D\u79F0",dataIndex:"name",ellipsis:!0,key:"name"},{title:y==="1"?"\u5408\u4F5C\u8005":"\u6240\u5C5E\u6A21\u5757",dataIndex:"name",key:"name",ellipsis:!0,render:(et,st)=>tr.createElement("span",null,y==="1"?st==null?void 0:st.user_names:st==null?void 0:st.model)},{title:y==="1"?"\u6700\u8FD1\u4FEE\u6539\u65F6\u95F4":"\u6240\u5728\u4F4D\u7F6E",dataIndex:"updated_at",ellipsis:!0,render:(et,st)=>tr.createElement("span",null,y==="1"?st==null?void 0:st.updated_at:st==null?void 0:st.stage_name)},{title:"\u64CD\u4F5C",dataIndex:"url",width:"100rem",render:(et,st)=>tr.createElement("a",{onClick:()=>{(st==null?void 0:st.container_type)==="Video"?Me.default.confirm({icon:null,title:"\u89C6\u9891\u64AD\u653E",centered:!0,closable:!0,footer:!1,width:600,content:tr.createElement(ur.Z,{allow_skip:!0,src:et})}):y==="3"?oe(et):window.open(et)}},"\u67E5\u770B")}],rowSelection:{type:"radio",onChange(et,st){re(st)}}}),tr.createElement(ln.Z,{hideOnSinglePage:!0,style:{marginTop:"20rem"},total:Ve==null?void 0:Ve.total_count,current:ze==null?void 0:ze.page,pageSize:ze==null?void 0:ze.limit,onChange:(et,st)=>{ze.page=et,ze.limit=st,We(ze),Ye()}}))};var ma=(0,be.connect)(({pathsDetail:E,user:a,loading:y,globalSetting:x})=>({pathsDetail:E,user:a,globalSetting:x,loading:y.models.index}))(xa),Ka=Te(84105),Fr=Te(59301),Wa=Object.defineProperty,Bi=Object.defineProperties,Fi=Object.getOwnPropertyDescriptors,Ai=Object.getOwnPropertySymbols,Ni=Object.prototype.hasOwnProperty,to=Object.prototype.propertyIsEnumerable,ii=(E,a,y)=>a in E?Wa(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,Pi=(E,a)=>{for(var y in a||(a={}))Ni.call(a,y)&&ii(E,y,a[y]);if(Ai)for(var y of Ai(a))to.call(a,y)&&ii(E,y,a[y]);return E},li=(E,a)=>Bi(E,Fi(a)),Za=(E,a)=>{var y={};for(var x in E)Ni.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&Ai)for(var x of Ai(E))a.indexOf(x)<0&&to.call(E,x)&&(y[x]=E[x]);return y},qa=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(oe){b(oe)}},ee=ae=>{try{re(y.throw(ae))}catch(oe){b(oe)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});const ki=E=>{var a=E,{typesdata:y,globalSetting:x,loading:b,dispatch:z,pathsDetail:ee,onChange:re,uuid:ae,itemsuuid:oe}=a,de=Za(a,["typesdata","globalSetting","loading","dispatch","pathsDetail","onChange","uuid","itemsuuid"]),ge,ye,De,ke,ze,We,Ve,Ze,Ye,et,st,ht;let[mt,dt]=(0,Ne.useState)([]),[Ot,_t]=(0,Ne.useState)(!1);const[wt,$t]=(0,Ne.useState)([]),[gn,Xt]=(0,Ne.useState)(""),[Tn,er]=(0,Ne.useState)(""),[En,yn]=(0,Ne.useState)([]),[Cn,qn]=(0,Ne.useState)(!1);let[pn,lr]=(0,Ne.useState)({bh:[],qx:[],hx:[],gl:[]});(0,Ne.useEffect)(()=>{Jr()},[ae]),(0,Ne.useEffect)(()=>{if(y){let Ar=JSON.parse(sessionStorage.getItem("typesdatajsoncopy"));lr(Ar)}return()=>{}},[y]);function Jr(){return qa(this,null,function*(){var Ar,Wr,ya,Ra,Aa,co;_t(!0);let So=yield(0,te.ZP)("/api/knowledge/v2/get_node.json",{method:"get",params:{nodeUuid:ae,subject_id:(Ar=ee==null?void 0:ee.detail)==null?void 0:Ar.id,depth:-1,relationshipFilter:"\u5305\u542B>"}});if(_t(!1),(So==null?void 0:So.status)===0){$t(So==null?void 0:So.data);const qi=[...(0,vt.fX)((ya=(Wr=So==null?void 0:So.data)==null?void 0:Wr.nodes)==null?void 0:ya.map((Gi,fo)=>{var Po,Es;return li(Pi({},Gi),{key:(Po=Gi==null?void 0:Gi.properties)==null?void 0:Po.uuid,title:(Es=Gi==null?void 0:Gi.properties)==null?void 0:Es.name})}),(co=(Aa=(Ra=So==null?void 0:So.data)==null?void 0:Ra.relationships)==null?void 0:Aa.filter(Gi=>Gi.type==="\u5305\u542B"||Gi.type==="\u524D\u5E8F"))==null?void 0:co.filter((Gi,fo,Po)=>fo===Po.findIndex(Es=>Es.endNodeUuid===Gi.endNodeUuid))).children||[]];mt=qi,er(JSON.stringify(qi)),dt(qi)}})}(0,Ne.useEffect)(()=>{re(pn)},[pn]);function na(Ar,Wr,ya){for(let Ra of Ar)Ra!=null&&Ra.title.includes(Wr)&&ya.push(Ra),Ra.children&&Ra.children.length>0&&(na(Ra.children,Wr,ya),Hr(Ra.children,Wr,ya)&&ya.push(Ra))}function Hr(Ar,Wr,ya){for(let Ra of Ar)if(Ra!=null&&Ra.title.includes(Wr))return!0}return Fr.createElement(ce.Z,{spinning:Ot},Fr.createElement("div",{className:fa.body},Fr.createElement("div",{className:fa.left},Fr.createElement("div",{className:fa.header},Fr.createElement("div",null,"\u5171",Fr.createElement("span",{style:{color:"#1B8565"}},((ye=(ge=wt==null?void 0:wt.metricCounters)==null?void 0:ge[0])==null?void 0:ye.count)||0),"\u4E2A\u6807\u7B7E\u8282\u70B9\uFF0C",Fr.createElement("span",{style:{color:"#1B8565"}},((ke=(De=wt==null?void 0:wt.metricCounters)==null?void 0:De[1])==null?void 0:ke.count)||0),"\u4E2A\u77E5\u8BC6\u8282\u70B9"),Fr.createElement(Se.default.Search,{style:{width:"350rem",borderRadius:"50%"},onChange:Ar=>{var Wr,ya,Ra;const{value:Aa}=Ar.target;Xt(Aa);let co=[];na(JSON.parse(Tn),Aa,co),co.push((Wr=wt==null?void 0:wt.nodes)==null?void 0:Wr[0]);const So=wt==null?void 0:wt.nodes.filter(Gi=>{var fo;return((fo=Gi==null?void 0:Gi.properties)==null?void 0:fo.name.indexOf(Aa))>-1}).map(Gi=>{var fo;return(fo=Gi==null?void 0:Gi.properties)==null?void 0:fo.uuid});yn(So);const qi=[...(0,vt.fX)(co,(Ra=(ya=wt==null?void 0:wt.relationships)==null?void 0:ya.filter(Gi=>Gi.type==="\u5305\u542B"||Gi.type==="\u524D\u5E8F"))==null?void 0:Ra.filter((Gi,fo,Po)=>fo===Po.findIndex(Es=>Es.endNodeUuid===Gi.endNodeUuid)).filter(Gi=>(co==null?void 0:co.map(fo=>fo==null?void 0:fo.key).includes(Gi.endNodeUuid))||(co==null?void 0:co.map(fo=>fo==null?void 0:fo.key).includes(Gi.startNodeUuid)))).children||[]];mt=qi,dt(qi),qn(!0)},placeholder:"\u8BF7\u8F93\u5165\u5173\u952E\u8BCD\u641C\u7D22"})),Fr.createElement(ra.default,{style:{marginTop:"30rem",maxHeight:"320rem",overflow:"auto"},showLine:!0,treeData:mt,className:fa.tree,expandedKeys:En,onExpand:Ar=>{yn(Ar),qn(!1)},autoExpandParent:Cn,blockNode:!0,switcherIcon:Fr.createElement(Ka.Z,null),titleRender:Ar=>{var Wr,ya,Ra,Aa,co,So,ti,qi,Gi,fo,Po,Es,as,yi,Ri;return Fr.createElement("div",{className:fa.treenode,key:(Wr=Ar==null?void 0:Ar.properties)==null?void 0:Wr.uuid},Fr.createElement("div",{style:{width:"50%",display:"flex",alignItems:"center"}},((ya=pn==null?void 0:pn.bh)==null?void 0:ya.find(Sa=>{var Fa;return(Sa==null?void 0:Sa.uuid)===((Fa=Ar==null?void 0:Ar.properties)==null?void 0:Fa.uuid)}))&&Fr.createElement("span",{className:fa.settingtag,style:{background:"#6236ff"}},"\u5305\u542B"),((Ra=pn==null?void 0:pn.qx)==null?void 0:Ra.find(Sa=>{var Fa;return(Sa==null?void 0:Sa.uuid)===((Fa=Ar==null?void 0:Ar.properties)==null?void 0:Fa.uuid)}))&&Fr.createElement("span",{className:fa.settingtag,style:{background:"#24A881"}},"\u524D\u7F6E"),((Aa=pn==null?void 0:pn.hx)==null?void 0:Aa.find(Sa=>{var Fa;return(Sa==null?void 0:Sa.uuid)===((Fa=Ar==null?void 0:Ar.properties)==null?void 0:Fa.uuid)}))&&Fr.createElement("span",{className:fa.settingtag,style:{background:"#EC8657"}},"\u540E\u7F6E"),((co=pn==null?void 0:pn.gl)==null?void 0:co.find(Sa=>{var Fa;return(Sa==null?void 0:Sa.uuid)===((Fa=Ar==null?void 0:Ar.properties)==null?void 0:Fa.uuid)}))&&Fr.createElement("span",{className:fa.settingtag,style:{background:"#497DFF"}},"\u5173\u8054"),Fr.createElement("div",{className:fa.multiple,title:Ar==null?void 0:Ar.title,dangerouslySetInnerHTML:{__html:(So=Ar==null?void 0:Ar.title)==null?void 0:So.replaceAll(gn,`<span style= "color: #00B187" >${gn}</span>`)},style:{width:"100%",fontSize:"14rem",color:"#000",fontWeight:400}})),Fr.createElement("div",{className:fa.hudong},!((ti=pn==null?void 0:pn.qx)!=null&&ti.find(Sa=>{var Fa;return(Sa==null?void 0:Sa.uuid)===((Fa=Ar==null?void 0:Ar.properties)==null?void 0:Fa.uuid)})||(qi=pn==null?void 0:pn.bh)!=null&&qi.find(Sa=>{var Fa;return(Sa==null?void 0:Sa.uuid)===((Fa=Ar==null?void 0:Ar.properties)==null?void 0:Fa.uuid)})||(Gi=pn==null?void 0:pn.hx)!=null&&Gi.find(Sa=>{var Fa;return(Sa==null?void 0:Sa.uuid)===((Fa=Ar==null?void 0:Ar.properties)==null?void 0:Fa.uuid)})||(fo=pn==null?void 0:pn.gl)!=null&&fo.find(Sa=>{var Fa;return(Sa==null?void 0:Sa.uuid)===((Fa=Ar==null?void 0:Ar.properties)==null?void 0:Fa.uuid)}))&&oe!==((Po=Ar==null?void 0:Ar.properties)==null?void 0:Po.uuid)&&Fr.createElement("div",null,Fr.createElement("span",{onClick:()=>{var Sa,Fa,ni,Ki;if(!(((Fa=(Sa=pn==null?void 0:pn.bh)==null?void 0:Sa.filter(Oa=>{var xo;return(Oa==null?void 0:Oa.uuid)===((xo=Ar==null?void 0:Ar.properties)==null?void 0:xo.uuid)}))==null?void 0:Fa.length)>0)){let Oa=[];Oa.push({name:(ni=Ar==null?void 0:Ar.properties)==null?void 0:ni.name,uuid:(Ki=Ar==null?void 0:Ar.properties)==null?void 0:Ki.uuid}),lr({bh:[...Oa,...pn==null?void 0:pn.bh],qx:pn==null?void 0:pn.qx,hx:pn==null?void 0:pn.hx,gl:pn==null?void 0:pn.gl})}},className:fa.colortitle,style:{marginRight:"20rem"}},"\u8BBE\u4E3A\u5305\u542B"),Fr.createElement("span",{onClick:()=>{var Sa,Fa,ni,Ki;if(!(((Fa=(Sa=pn==null?void 0:pn.qx)==null?void 0:Sa.filter(Oa=>{var xo;return(Oa==null?void 0:Oa.uuid)===((xo=Ar==null?void 0:Ar.properties)==null?void 0:xo.uuid)}))==null?void 0:Fa.length)>0)){let Oa=[];Oa.push({name:(ni=Ar==null?void 0:Ar.properties)==null?void 0:ni.name,uuid:(Ki=Ar==null?void 0:Ar.properties)==null?void 0:Ki.uuid}),lr({qx:[...Oa,...pn==null?void 0:pn.qx],hx:pn==null?void 0:pn.hx,bh:pn==null?void 0:pn.bh,gl:pn==null?void 0:pn.gl})}},className:fa.colortitle},"\u8BBE\u4E3A\u524D\u7F6E"),Fr.createElement("span",{onClick:()=>{var Sa,Fa,ni,Ki;if(!(((Fa=(Sa=pn==null?void 0:pn.hx)==null?void 0:Sa.filter(Oa=>{var xo;return(Oa==null?void 0:Oa.uuid)===((xo=Ar==null?void 0:Ar.properties)==null?void 0:xo.uuid)}))==null?void 0:Fa.length)>0)){let Oa=[];Oa.push({name:(ni=Ar==null?void 0:Ar.properties)==null?void 0:ni.name,uuid:(Ki=Ar==null?void 0:Ar.properties)==null?void 0:Ki.uuid}),lr({qx:pn==null?void 0:pn.qx,hx:[...Oa,...pn==null?void 0:pn.hx],bh:pn==null?void 0:pn.bh,gl:pn==null?void 0:pn.gl})}},style:{margin:"0rem 20rem"},className:fa.colortitle},"\u8BBE\u4E3A\u540E\u7F6E"),Fr.createElement("span",{onClick:()=>{var Sa,Fa,ni,Ki;if(!(((Fa=(Sa=pn==null?void 0:pn.gl)==null?void 0:Sa.filter(Oa=>{var xo;return(Oa==null?void 0:Oa.uuid)===((xo=Ar==null?void 0:Ar.properties)==null?void 0:xo.uuid)}))==null?void 0:Fa.length)>0)){let Oa=[];Oa.push({name:(ni=Ar==null?void 0:Ar.properties)==null?void 0:ni.name,uuid:(Ki=Ar==null?void 0:Ar.properties)==null?void 0:Ki.uuid}),lr({qx:pn==null?void 0:pn.qx,hx:pn==null?void 0:pn.hx,gl:[...Oa,...pn==null?void 0:pn.gl],bh:pn==null?void 0:pn.bh})}},className:fa.colortitle},"\u8BBE\u4E3A\u5173\u8054")),Fr.createElement("span",{onClick:()=>{var Sa;let Fa=(Sa=pn==null?void 0:pn.bh)==null?void 0:Sa.filter(ni=>{var Ki;return ni.uuid!==((Ki=Ar==null?void 0:Ar.properties)==null?void 0:Ki.uuid)});lr({bh:Fa,hx:pn==null?void 0:pn.hx,qx:pn==null?void 0:pn.qx,gl:pn==null?void 0:pn.gl})}},((Es=pn==null?void 0:pn.bh)==null?void 0:Es.find(Sa=>{var Fa;return(Sa==null?void 0:Sa.uuid)===((Fa=Ar==null?void 0:Ar.properties)==null?void 0:Fa.uuid)}))&&"\u53D6\u6D88\u5305\u542B"),Fr.createElement("span",{onClick:()=>{var Sa;let Fa=(Sa=pn==null?void 0:pn.qx)==null?void 0:Sa.filter(ni=>{var Ki;return ni.uuid!==((Ki=Ar==null?void 0:Ar.properties)==null?void 0:Ki.uuid)});lr({qx:Fa,hx:pn==null?void 0:pn.hx,bh:pn==null?void 0:pn.bh,gl:pn==null?void 0:pn.gl})}},((as=pn==null?void 0:pn.qx)==null?void 0:as.find(Sa=>{var Fa;return(Sa==null?void 0:Sa.uuid)===((Fa=Ar==null?void 0:Ar.properties)==null?void 0:Fa.uuid)}))&&"\u53D6\u6D88\u524D\u7F6E"),Fr.createElement("span",{onClick:()=>{var Sa;let Fa=(Sa=pn==null?void 0:pn.hx)==null?void 0:Sa.filter(ni=>{var Ki;return ni.uuid!==((Ki=Ar==null?void 0:Ar.properties)==null?void 0:Ki.uuid)});lr({qx:pn==null?void 0:pn.qx,hx:Fa,bh:pn==null?void 0:pn.bh,gl:pn==null?void 0:pn.gl})}},((yi=pn==null?void 0:pn.hx)==null?void 0:yi.find(Sa=>{var Fa;return(Sa==null?void 0:Sa.uuid)===((Fa=Ar==null?void 0:Ar.properties)==null?void 0:Fa.uuid)}))&&"\u53D6\u6D88\u540E\u7F6E"),Fr.createElement("span",{onClick:()=>{var Sa;let Fa=(Sa=pn==null?void 0:pn.gl)==null?void 0:Sa.filter(ni=>{var Ki;return ni.uuid!==((Ki=Ar==null?void 0:Ar.properties)==null?void 0:Ki.uuid)});lr({qx:pn==null?void 0:pn.qx,hx:pn==null?void 0:pn.hx,bh:pn==null?void 0:pn.bh,gl:Fa})}},((Ri=pn==null?void 0:pn.gl)==null?void 0:Ri.find(Sa=>{var Fa;return(Sa==null?void 0:Sa.uuid)===((Fa=Ar==null?void 0:Ar.properties)==null?void 0:Fa.uuid)}))&&"\u53D6\u6D88\u5173\u8054")))}})),Fr.createElement("div",{className:fa.right},Fr.createElement("div",{className:fa.title},"\u5DF2\u5173\u8054\u5173\u7CFB"),Fr.createElement("div",{style:{padding:"20rem 25rem"}},Fr.createElement("div",{className:fa.gxtitle},Fr.createElement("div",{className:fa.Colortitle,style:{background:"#6236ff"}}),Fr.createElement("div",null,"\u88AB\u5305\u542B\uFF08",(ze=pn.bh)==null?void 0:ze.length,"\uFF09")),Fr.createElement("div",{className:fa.gxbody},(We=pn==null?void 0:pn.bh)==null?void 0:We.map(Ar=>Fr.createElement("div",{className:fa.tag,style:{background:"#6236ff"}},Fr.createElement("span",{style:{marginRight:"10rem"}},Ar==null?void 0:Ar.name)," ",Fr.createElement(Ko.Z,{onClick:()=>{var Wr;let ya=(Wr=pn==null?void 0:pn.bh)==null?void 0:Wr.filter(Ra=>Ra.uuid!==Ar.uuid);lr({bh:ya,hx:pn==null?void 0:pn.hx,qx:pn==null?void 0:pn.qx,gl:pn==null?void 0:pn.gl})}})))),Fr.createElement("div",{className:fa.gxtitle,style:{marginTop:"30rem"}},Fr.createElement("div",{className:fa.Colortitle,style:{background:"#24A881"}}),Fr.createElement("div",null,"\u524D\u5E8F\uFF08",(Ve=pn.qx)==null?void 0:Ve.length,"\uFF09")),Fr.createElement("div",{className:fa.gxbody},(Ze=pn==null?void 0:pn.qx)==null?void 0:Ze.map(Ar=>Fr.createElement("div",{className:fa.tag,style:{background:"#24A881"}},Fr.createElement("span",{style:{marginRight:"10rem"}},Ar==null?void 0:Ar.name)," ",Fr.createElement(Ko.Z,{onClick:()=>{var Wr;let ya=(Wr=pn==null?void 0:pn.qx)==null?void 0:Wr.filter(Ra=>Ra.uuid!==Ar.uuid);lr({qx:ya,hx:pn==null?void 0:pn.hx,bh:pn==null?void 0:pn.bh,gl:pn==null?void 0:pn.gl})}})))),Fr.createElement("div",{className:fa.gxtitle,style:{marginTop:"30rem"}},Fr.createElement("div",{className:fa.Colortitle,style:{background:"#EC8657"}}),Fr.createElement("div",null,"\u540E\u5E8F\uFF08",(Ye=pn.hx)==null?void 0:Ye.length,"\uFF09")),Fr.createElement("div",{className:fa.gxbody},(et=pn==null?void 0:pn.hx)==null?void 0:et.map(Ar=>Fr.createElement("div",{className:fa.tag,style:{background:"#EC8657"}},Fr.createElement("span",{style:{marginRight:"10rem"}},Ar==null?void 0:Ar.name)," ",Fr.createElement(Ko.Z,{onClick:()=>{var Wr;let ya=(Wr=pn==null?void 0:pn.hx)==null?void 0:Wr.filter(Ra=>Ra.uuid!==Ar.uuid);lr({qx:pn==null?void 0:pn.qx,bh:pn==null?void 0:pn.bh,hx:ya,gl:pn==null?void 0:pn.gl})}})))),Fr.createElement("div",{className:fa.gxtitle,style:{marginTop:"30rem"}},Fr.createElement("div",{className:fa.Colortitle,style:{background:"#497DFF"}}),Fr.createElement("div",null,"\u5173\u8054\uFF08",(st=pn.gl)==null?void 0:st.length,"\uFF09")),Fr.createElement("div",{className:fa.gxbody},(ht=pn==null?void 0:pn.gl)==null?void 0:ht.map(Ar=>Fr.createElement("div",{className:fa.tag,style:{background:"#497DFF"}},Fr.createElement("span",{style:{marginRight:"10rem"}},Ar==null?void 0:Ar.name)," ",Fr.createElement(Ko.Z,{onClick:()=>{var Wr;let ya=(Wr=pn==null?void 0:pn.gl)==null?void 0:Wr.filter(Ra=>Ra.uuid!==Ar.uuid);lr({qx:pn==null?void 0:pn.qx,bh:pn==null?void 0:pn.bh,hx:pn==null?void 0:pn.hx,gl:ya})}}))))))))};var Ao=(0,be.connect)(({pathsDetail:E,user:a,loading:y,globalSetting:x})=>({pathsDetail:E,user:a,globalSetting:x,loading:y.models.index}))(ki),no=Te(89392),Oi=Te(19264),Ke=Te(59301),tt=Object.getOwnPropertySymbols,it=Object.prototype.hasOwnProperty,pt=Object.prototype.propertyIsEnumerable,Dt=(E,a)=>{var y={};for(var x in E)it.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&tt)for(var x of tt(E))a.indexOf(x)<0&&pt.call(E,x)&&(y[x]=E[x]);return y},Lt=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(oe){b(oe)}},ee=ae=>{try{re(y.throw(ae))}catch(oe){b(oe)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});const Gt=[3,2,1];let zt=null;const nn=E=>{var a=E,{pathsDetail:y,user:x,globalSetting:b,loading:z,dispatch:ee,datas:re,items:ae}=a,oe=Dt(a,["pathsDetail","user","globalSetting","loading","dispatch","datas","items"]);const de=(0,Ne.useRef)(),ge=(0,Ne.useRef)(),ye=(0,Ne.useRef)(null);(0,Ne.useEffect)(()=>{ke()},[re]),(0,Ne.useEffect)(()=>(window.addEventListener("resize",De),()=>{window.removeEventListener("resize",De)}),[]);function De(){var ze,We;(We=(ze=de.current)==null?void 0:ze.update)==null||We.call(ze)}function ke(){return Lt(this,null,function*(){var ze,We,Ve,Ze,Ye,et,st,ht;if(((ze=re==null?void 0:re.nodes)==null?void 0:ze.length)>0){let mt=(We=re==null?void 0:re.nodes)==null?void 0:We.filter(Ot=>{var _t;return ae==null?void 0:ae.includes((_t=Ot==null?void 0:Ot.properties)==null?void 0:_t.uuid)}).map(Ot=>{var _t,wt,$t,gn,Xt,Tn,er,En,yn,Cn,qn,pn;return{rootNodeUuid:(_t=Ot==null?void 0:Ot.properties)==null?void 0:_t.rootNodeUuid,id:((wt=Ot==null?void 0:Ot.properties)==null?void 0:wt.uuid)+"_",name:($t=Ot==null?void 0:Ot.properties)==null?void 0:$t.name,description:(gn=Ot==null?void 0:Ot.properties)==null?void 0:gn.description,nodeType:(Xt=Ot==null?void 0:Ot.properties)==null?void 0:Xt.nodeType,tags:((Tn=Ot==null?void 0:Ot.properties)==null?void 0:Tn.tags)&&((yn=(En=(er=Ot==null?void 0:Ot.properties)==null?void 0:er.tags)==null?void 0:En.split("\uFF0C"))==null?void 0:yn.map(lr=>({name:lr}))),colorType:parseInt((Cn=Ot==null?void 0:Ot.properties)==null?void 0:Cn.color)>3?"3":(qn=Ot==null?void 0:Ot.properties)==null?void 0:qn.color,activeColor:"#FA6400",size:Gt[((pn=Ot==null?void 0:Ot.properties)==null?void 0:pn.color)-1]||1,shape:"circle",hide:!1,isExtendedState:!0}}),dt=(et=(Ye=(Ze=(Ve=re==null?void 0:re.relationships)==null?void 0:Ve.filter(Ot=>{var _t,wt,$t,gn,Xt,Tn;return Ot.endNodeUuid!==(($t=(wt=(_t=re==null?void 0:re.nodes)==null?void 0:_t[0])==null?void 0:wt.properties)==null?void 0:$t.rootNodeUuid)&&Ot.startNodeUuid!==((Tn=(Xt=(gn=re==null?void 0:re.nodes)==null?void 0:gn[0])==null?void 0:Xt.properties)==null?void 0:Tn.rootNodeUuid)}))==null?void 0:Ze.filter(Ot=>(ae==null?void 0:ae.includes(Ot.startNodeUuid))&&(ae==null?void 0:ae.includes(Ot.endNodeUuid))))==null?void 0:Ye.filter(Ot=>Ot.type==="\u5305\u542B"||Ot.type==="\u524D\u5E8F"||Ot.type==="\u5173\u8054"))==null?void 0:et.map(Ot=>({hide:!1,id:(Ot==null?void 0:Ot.endNodeUuid)+"_",label:Ot==null?void 0:Ot.type,props:[],colorType:1,sourceRadius:32,targetRadius:32,source:(Ot==null?void 0:Ot.startNodeUuid)+"_",target:(Ot==null?void 0:Ot.endNodeUuid)+"_",value:10}));de.current=null,ge.current.innerHTML="",de.current=new Oi.createContainer({containerName:"#graphRefs",width:((st=ge==null?void 0:ge.current)==null?void 0:st.clientWidth)||0,height:((ht=ge==null?void 0:ge.current)==null?void 0:ht.clientHeight)||0,toolbarData:[],clickToggle:!1,background:"#fff",isShowMask:!1,nodes:mt,links:dt,zoomOptions:{minScale:.2,maxScale:5},nodeMouseover:function(Ot){return Ot},nodeClick:function(Ot){var _t;return(_t=de==null?void 0:de.current)==null||_t.selectToNode(Ot.id),Ot},layout:{force:!1,x:20,y:60}}),de.current.zoomOut()}})}return Ke.createElement("div",{ref:ye,style:{background:"#fff",height:"455rem"}},Ke.createElement("div",{style:{width:"100%",height:"455rem"},ref:ge,id:"graphRefs"}))};var Kt=(0,be.connect)(({pathsDetail:E,user:a,loading:y,globalSetting:x})=>({pathsDetail:E,user:a,globalSetting:x,loading:y.models.index}))(nn),un="data:image/png;base64,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",wn="data:image/png;base64,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",xn="data:image/png;base64,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",Zn="data:image/png;base64,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",Wn=Te(28103),Bn=Te(42441),_n=Te(76411),Rn=Te(48961),Kn=Te(59301),Ur=({dataSource:E,height:a,labelTextColor:y})=>{console.log("dataSource:",E);const x=(0,Ne.useRef)(null),b=(0,Ne.useRef)(null),[z,ee]=(0,Ne.useState)({}),[re,ae]=(0,Ne.useState)(""),[oe,de]=(0,Ne.useState)(""),ge=E||[{name:"\u638C\u63E1\u738780%~100%",value:1,itemStyle:{color:"rgb(223,209,38)"}},{name:"\u638C\u63D0\u738760%~79%",value:2,itemStyle:{color:"rgb(6,234,230)"}},{name:"\u638C\u63A8\u738759%\u4EE5\u4E0B",value:3,itemStyle:{color:"rgb(6,110,247)"}}];(0,Ne.useEffect)(()=>(De(),window.addEventListener("resize",ye),()=>{window.removeEventListener("resize",ye)}),[]),(0,Ne.useEffect)(()=>{E!=null&&E.length&&ye()},[E]);const ye=()=>{var Ye,et;const st=ke(ge,.8);(Ye=b.current)==null||Ye.setOption(st),(et=b.current)==null||et.resize()},De=()=>{const Ye=x.current;b.current=_n.init(Ye);const et=ke(ge,.8);ee(et),b.current.setOption(et),b.current.getZr().off("mousewheel"),et.series.push({name:"\u638C\u63E1\u7387",type:"pie",labelLine:{length:10,length2:10},startAngle:-20,clockwise:!1,radius:["20%","50%"],center:["50%","50%"],data:ge,itemStyle:{opacity:0}}),b.current.setOption(et),Ze(b.current)},ke=(Ye,et)=>{let st,ht=[],mt=0,dt=0,Ot=0,_t=[],wt=[],$t=1-et;Ye.sort((Xt,Tn)=>Tn.value-Xt.value);for(let Xt=0;Xt<Ye.length;Xt++){mt+=Ye[Xt].value;let Tn={name:typeof Ye[Xt].name=="undefined"?`series${Xt}`:Ye[Xt].name,type:"surface",parametric:!0,wireframe:{show:!1},pieData:Ye[Xt],pieStatus:{selected:!1,hovered:!1,k:$t},center:["10%","50%"]};if(typeof Ye[Xt].itemStyle!="undefined"){let er={};typeof Ye[Xt].itemStyle.color!="undefined"&&(er.color=Ye[Xt].itemStyle.color),typeof Ye[Xt].itemStyle.opacity!="undefined"&&(er.opacity=Ye[Xt].itemStyle.opacity),Tn.itemStyle=er}ht.push(Tn)}_t=[],wt=[];for(let Xt=0;Xt<ht.length;Xt++){Ot=dt+ht[Xt].pieData.value,ht[Xt].pieData.startRatio=dt/mt,ht[Xt].pieData.endRatio=Ot/mt,ht[Xt].parametricEquation=We(ht[Xt].pieData.startRatio,ht[Xt].pieData.endRatio,!1,!1,$t,ht[Xt].pieData.value),dt=Ot;let Tn=Ve(ht[Xt].pieData.value/mt,4);_t.push({name:ht[Xt].name,value:Tn}),wt.push({name:ht[Xt].name,value:Tn})}let gn=ze(ht,26);return{legend:{data:_t,orient:"horizontal",left:10,top:10,itemGap:10,textStyle:{color:"#A1E2FF"},show:!0,icon:"circle",formatter:function(Xt){let Tn=wt.filter(En=>En.name===Xt)[0],er=Ve(Tn.value*100,2)+"%";return`${Tn.name} ${er}`}},labelLine:{show:!0,lineStyle:{color:"#7BC0CB"}},label:{show:!0,position:"outside",rich:{b:{color:y||"#FFF",fontSize:12,lineHeight:20},c:{fontSize:16,lineHeight:24,color:y||"#FFF"}},formatter:`{b|{b}
|
|
|
}{c|{c}}{b|}`},xAxis3D:{min:-1,max:1},yAxis3D:{min:-1,max:1},zAxis3D:{min:-1,max:1},grid3D:{show:!1,boxHeight:gn,viewControl:{alpha:40,distance:300,rotateSensitivity:0,zoomSensitivity:0,panSensitivity:0,autoRotate:!1}},series:ht}},ze=(Ye,et)=>(Ye.sort((st,ht)=>ht.pieData.value-st.pieData.value),et*25/Ye[0].pieData.value),We=(Ye,et,st,ht,mt,dt)=>{let Ot=(Ye+et)/2,_t=Ye*Math.PI*2,wt=et*Math.PI*2,$t=Ot*Math.PI*2;Ye===0&&et===1&&(st=!1),mt=typeof mt!="undefined"?mt:1/3;let gn=st?Math.cos($t)*.1:0,Xt=st?Math.sin($t)*.1:0,Tn=ht?1.05:1;return{u:{min:-Math.PI,max:Math.PI*3,step:Math.PI/32},v:{min:0,max:Math.PI*2,step:Math.PI/20},x:function(er,En){return er<_t?gn+Math.cos(_t)*(1+Math.cos(En)*mt)*Tn:er>wt?gn+Math.cos(wt)*(1+Math.cos(En)*mt)*Tn:gn+Math.cos(er)*(1+Math.cos(En)*mt)*Tn},y:function(er,En){return er<_t?Xt+Math.sin(_t)*(1+Math.cos(En)*mt)*Tn:er>wt?Xt+Math.sin(wt)*(1+Math.cos(En)*mt)*Tn:Xt+Math.sin(er)*(1+Math.cos(En)*mt)*Tn},z:function(er,En){return er<-Math.PI*.5?Math.sin(er):er>Math.PI*2.5?Math.sin(er)*dt*.1:Math.sin(En)>0?1*dt*.1:-1}}},Ve=(Ye,et)=>{let st=parseFloat(Ye);if(isNaN(st))return!1;st=Math.round(Ye*Math.pow(10,et))/Math.pow(10,et);let ht=st.toString();ht.indexOf(".")<0&&(ht+=".");for(let dt=ht.length-ht.indexOf(".");dt<=et;dt++)ht+="0";return ht},Ze=()=>{b.current.on("click",function(Ye){if(Ye.seriesName==="pie2d"){ae(Ye.dataIndex);let et=b.current.getWidth()/2,st=b.current.getHeight()/2;b.current.dispatchAction({type:"pieSelect",seriesIndex:0,dataIndex:Ye.dataIndex})}}),b.current.on("mousemove",function(Ye){}),b.current.on("mouseout",function(){b.current.dispatchAction({type:"pieUnSelect",seriesIndex:0,dataIndex:oe}),de("")})};return Kn.createElement("div",{ref:x,style:{width:"100%",height:a||"500rem"}})};const Qa=E=>({tooltip:{trigger:"item"},legend:{top:"0%",left:"center"},series:[{name:"\u5B8C\u6210\u5360\u6BD4\u60C5\u51B5",type:"pie",radius:["40%","70%"],avoidLabelOverlap:!1,itemStyle:{borderRadius:10,borderColor:"#fff",borderWidth:2},label:{show:!1,position:"center"},emphasis:{label:{show:!0,fontSize:14,fontWeight:"bold"}},labelLine:{show:!1},data:E}]});var ea=Te(79304),pa=Te(59301),oi=Object.defineProperty,$a=Object.getOwnPropertySymbols,Mr=Object.prototype.hasOwnProperty,aa=Object.prototype.propertyIsEnumerable,di=(E,a,y)=>a in E?oi(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,ar=(E,a)=>{for(var y in a||(a={}))Mr.call(a,y)&&di(E,y,a[y]);if($a)for(var y of $a(a))aa.call(a,y)&&di(E,y,a[y]);return E},Tr=(E,a)=>{var y={};for(var x in E)Mr.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&$a)for(var x of $a(E))a.indexOf(x)<0&&aa.call(E,x)&&(y[x]=E[x]);return y},sa=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(oe){b(oe)}},ee=ae=>{try{re(y.throw(ae))}catch(oe){b(oe)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});const ca=[{name:"",value:0,itemStyle:{color:"rgb(223,209,38)"}},{name:"",value:0,itemStyle:{color:"rgb(6,234,230)"}},{name:"",value:0,itemStyle:{color:"rgb(6,110,247)"}}],La=E=>{var a=E,{pathsDetail:y,user:x,globalSetting:b,loading:z,dispatch:ee,uuid:re}=a,ae=Tr(a,["pathsDetail","user","globalSetting","loading","dispatch","uuid"]),oe,de,ge,ye,De;let[ke,ze]=(0,Ne.useState)({subject_id:(oe=y==null?void 0:y.detail)==null?void 0:oe.id,course_id:"",parentNodeUuid:re,type:1});const[We,Ve]=(0,Ne.useState)(),[Ze,Ye]=(0,Ne.useState)([]),[et,st]=(0,Ne.useState)([]),[ht]=(0,be.useSearchParams)();(0,Ne.useEffect)(()=>{mt()},[re]);function mt(){return sa(this,null,function*(){var dt,Ot,_t;let wt=yield(0,te.ZP)("/api/knowledge/v2/knowledge_statistics.json",{method:"get",params:ke});Ve(wt);let $t=Object.entries((dt=wt==null?void 0:wt.data)==null?void 0:dt.study_grasp_hash).map(([Xt,Tn],er)=>({name:Xt,value:Tn,itemStyle:ca[er].itemStyle})),gn=Object.entries((Ot=wt==null?void 0:wt.data)==null?void 0:Ot.study_complete_hash).map(([Xt,Tn],er)=>({name:Xt,value:Tn}));st(gn),((_t=$t==null?void 0:$t.filter(Xt=>(Xt==null?void 0:Xt.value)>0))==null?void 0:_t.length)===0?Ye([]):Ye($t)})}return pa.createElement("div",{className:fa.DetailStatistics},ht.get("type")!=="classrooms"&&pa.createElement("div",{className:fa.header},pa.createElement("span",{className:fa.title},"\u7EDF\u8BA1\u8303\u56F4"),pa.createElement(pe.ZP.Group,{onChange:dt=>{ke.type=dt.target.value,ze(ar({},ke)),mt()},value:ke.type},pa.createElement(pe.ZP,{value:1},"\u5168\u90E8"),pa.createElement(pe.ZP,{value:2},"\u81EA\u4E3B\u5B66\u4E60"),pa.createElement(pe.ZP,{value:3},"\u8BFE\u5802\u5B66\u4E60")),(ke==null?void 0:ke.type)===3&&pa.createElement(xt.default,{onChange:dt=>{ke.course_id=dt,ze(ar({},ke)),mt()},style:{marginLeft:"-15rem",width:"148rem",height:"36rem"}},(de=We==null?void 0:We.courses)==null?void 0:de.map(dt=>pa.createElement(xt.default.Option,{value:dt==null?void 0:dt.id},dt==null?void 0:dt.name)))),pa.createElement("div",{style:{marginTop:"16rem",display:"flex"}},pa.createElement("div",{className:fa.left,style:{backgroundImage:`url(${un}),linear-gradient(180deg, rgba(221, 233, 241, 0.4) 0%, rgba(255, 255, 255, 0.49) 100%)`}},pa.createElement("img",{src:wn}),pa.createElement("div",{style:{marginTop:"20rem"}},pa.createElement("div",{className:fa.xxrs},"\u5B66\u4E60\u4EBA\u6570"),pa.createElement("div",{className:fa.xxrscount},(ge=We==null?void 0:We.data)==null?void 0:ge.study_count))),pa.createElement("div",{className:fa.right},pa.createElement("div",{className:fa.righttop},pa.createElement("img",{src:xn}),pa.createElement("div",null,pa.createElement("div",{className:fa.xxrs},"\u5B66\u4E60\u5B8C\u6210\u7387"),pa.createElement("div",{className:fa.xxrscount},(ye=We==null?void 0:We.data)==null?void 0:ye.study_complete_rate,"%"))),pa.createElement("div",{className:fa.rightbottom},pa.createElement("img",{src:Zn}),pa.createElement("div",null,pa.createElement("div",{className:fa.xxrs},"\u5B66\u4E60\u638C\u63E1\u7387"),pa.createElement("div",{className:fa.xxrscount},(De=We==null?void 0:We.data)==null?void 0:De.study_grasp_rate,"%"))))),pa.createElement(Wn.Z,{variant:"dashed",style:{borderColor:"#333333"},dashed:!0},"\u5B8C\u6210\u5360\u6BD4\u60C5\u51B5"),pa.createElement(Bn.Z,{option:Qa(et),style:{height:300,width:400},opts:{renderer:"svg"}}),pa.createElement(Wn.Z,{variant:"dashed",style:{borderColor:"#333333"},dashed:!0},"\u638C\u63A7\u7387"),(Ze==null?void 0:Ze.length)>0?pa.createElement(Ur,{labelTextColor:"#333",dataSource:Ze}):pa.createElement(ea.J,{children:pa.createElement("div",{style:{textAlign:"center",fontSize:"14rem"}},"\u6682\u65E0\u638C\u63A7\u7387\u6570\u636E")}))};var ia=(0,be.connect)(({pathsDetail:E,user:a,loading:y,globalSetting:x})=>({pathsDetail:E,user:a,globalSetting:x,loading:y.models.index}))(La),da=Te(59301),wi=Object.defineProperty,xi=Object.getOwnPropertySymbols,oa=Object.prototype.hasOwnProperty,mo=Object.prototype.propertyIsEnumerable,wo=(E,a,y)=>a in E?wi(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,ks=(E,a)=>{for(var y in a||(a={}))oa.call(a,y)&&wo(E,y,a[y]);if(xi)for(var y of xi(a))mo.call(a,y)&&wo(E,y,a[y]);return E},Ls=(E,a)=>{var y={};for(var x in E)oa.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&xi)for(var x of xi(E))a.indexOf(x)<0&&mo.call(E,x)&&(y[x]=E[x]);return y},Js=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(oe){b(oe)}},ee=ae=>{try{re(y.throw(ae))}catch(oe){b(oe)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});const Tl=[{name:"",value:0,itemStyle:{color:"rgb(223,209,38)"}},{name:"",value:0,itemStyle:{color:"rgb(6,234,230)"}},{name:"",value:0,itemStyle:{color:"rgb(6,110,247)"}}],pl=E=>{var a=E,{pathsDetail:y,user:x,globalSetting:b,loading:z,dispatch:ee,uuid:re}=a,ae=Ls(a,["pathsDetail","user","globalSetting","loading","dispatch","uuid"]),oe,de,ge,ye,De;let[ke,ze]=(0,Ne.useState)({subject_id:(oe=y==null?void 0:y.detail)==null?void 0:oe.id,course_id:"",parentNodeUuid:re,type:1});const[We,Ve]=(0,Ne.useState)(),[Ze,Ye]=(0,Ne.useState)([]),[et]=(0,be.useSearchParams)(),[st,ht]=(0,Ne.useState)([]);(0,Ne.useEffect)(()=>{mt()},[re]);function mt(){return Js(this,null,function*(){var dt,Ot,_t;let wt=yield(0,te.ZP)("/api/knowledge/v2/knowledge_statistics.json",{method:"get",params:ke});Ve(wt);let $t=Object.entries((dt=wt==null?void 0:wt.data)==null?void 0:dt.study_grasp_hash).map(([Xt,Tn],er)=>({name:Xt,value:Tn,itemStyle:Tl[er].itemStyle})),gn=Object.entries((Ot=wt==null?void 0:wt.data)==null?void 0:Ot.study_complete_hash).map(([Xt,Tn],er)=>({name:Xt,value:Tn}));ht(gn),((_t=$t==null?void 0:$t.filter(Xt=>(Xt==null?void 0:Xt.value)>0))==null?void 0:_t.length)===0?Ye([]):Ye($t)})}return da.createElement("div",{className:fa.DetailStatistics},et.get("type")!=="classrooms"&&da.createElement("div",{className:fa.header},da.createElement("span",{className:fa.title},"\u7EDF\u8BA1\u8303\u56F4"),da.createElement(pe.ZP.Group,{onChange:dt=>{ke.type=dt.target.value,ze(ks({},ke)),mt()},value:ke.type},da.createElement(pe.ZP,{value:1},"\u5168\u90E8"),da.createElement(pe.ZP,{value:2},"\u81EA\u4E3B\u5B66\u4E60"),da.createElement(pe.ZP,{value:3},"\u8BFE\u5802\u5B66\u4E60")),(ke==null?void 0:ke.type)===3&&da.createElement(xt.default,{onChange:dt=>{ke.course_id=dt,ze(ks({},ke)),mt()},style:{marginLeft:"-15rem",width:"148rem",height:"36rem"}},(de=We==null?void 0:We.courses)==null?void 0:de.map(dt=>da.createElement(xt.default.Option,{value:dt==null?void 0:dt.id},dt==null?void 0:dt.name)))),da.createElement("div",{style:{marginTop:"16rem",display:"flex"}},da.createElement("div",{className:fa.left,style:{backgroundImage:`url(${un}),linear-gradient(180deg, rgba(221, 233, 241, 0.4) 0%, rgba(255, 255, 255, 0.49) 100%)`}},da.createElement("img",{src:wn}),da.createElement("div",{style:{marginTop:"20rem"}},da.createElement("div",{className:fa.xxrs},"\u5B66\u4E60\u4EBA\u6570"),da.createElement("div",{className:fa.xxrscount},(ge=We==null?void 0:We.data)==null?void 0:ge.study_count))),da.createElement("div",{className:fa.right},da.createElement("div",{className:fa.righttop},da.createElement("img",{src:xn}),da.createElement("div",null,da.createElement("div",{className:fa.xxrs},"\u5B66\u4E60\u5B8C\u6210\u7387"),da.createElement("div",{className:fa.xxrscount},(ye=We==null?void 0:We.data)==null?void 0:ye.study_complete_rate,"%"))),da.createElement("div",{className:fa.rightbottom},da.createElement("img",{src:Zn}),da.createElement("div",null,da.createElement("div",{className:fa.xxrs},"\u5B66\u4E60\u638C\u63E1\u7387"),da.createElement("div",{className:fa.xxrscount},(De=We==null?void 0:We.data)==null?void 0:De.study_grasp_rate,"%"))))),da.createElement(Wn.Z,{variant:"dashed",style:{borderColor:"#333333"},dashed:!0},"\u5B8C\u6210\u5360\u6BD4\u60C5\u51B5"),da.createElement(Bn.Z,{option:Qa(st),style:{height:300,width:400},opts:{renderer:"svg"}}),da.createElement(Wn.Z,{variant:"dashed",style:{borderColor:"#333333"},dashed:!0},"\u638C\u63A7\u7387"),(Ze==null?void 0:Ze.length)>0?da.createElement(Ur,{labelTextColor:"#333",dataSource:Ze}):da.createElement(Vt.Z,{children:da.createElement("div",{style:{textAlign:"center",fontSize:"14rem"}},"\u6682\u65E0\u638C\u63A7\u7387\u6570\u636E")}))};var ll=(0,be.connect)(({pathsDetail:E,user:a,loading:y,globalSetting:x})=>({pathsDetail:E,user:a,globalSetting:x,loading:y.models.index}))(pl),kc=Te(48909),Wd="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAAAXNSR0IArs4c6QAAAXlJREFUOE/VlD1Lw1AUhp+YmkGQSnFR8AcUoSJ+LiKCqINQqIODbk51ETpaVHTyD6h/QQddXMRNRal1qLaDOhSFQicdiiKUNrkSmzQxH6WCg2a6Iec+7z3ve24kIYTMLz7SPwSmozPI2h6InroTkqQvywjOQNlm4PDczyV3yxfDT4AFa97fAmhxN/C0u9o8w6wUtYUkFdzAk1CVyC4E+x3cr7YBY7NTtZSB7DLewKF9Xa4xwAnUfU7P+wBHjjy6dgqY77a2r2MG8GV9CaQdhAhYJI8NnuYqEBgFqQ1SswawmEiCttnQIxfMdmKlD5QIXE0ZwMJKGPUjV0uqyYzNbPR6OQTBRbgct3mYX7hDiN46zr7BHq6fYGccUlEb8GFuDaFuuKbCNwtDURgFHdOQTdqA97Ewlfec75xZ99DbE6ULno8dY5MZs9r2mV/fbPQPr3kH8GZwFVXd+lE4doXyW/H7TbmdaKf0eIBWmQRamszbLNOQWxN//wf7CYUnn95U81GtAAAAAElFTkSuQmCC",_c=Te(6455),Zr=Te(59301),rh=Object.defineProperty,xg=Object.defineProperties,ls=Object.getOwnPropertyDescriptors,Qs=Object.getOwnPropertySymbols,hu=Object.prototype.hasOwnProperty,yl=Object.prototype.propertyIsEnumerable,Eu=(E,a,y)=>a in E?rh(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,xl=(E,a)=>{for(var y in a||(a={}))hu.call(a,y)&&Eu(E,y,a[y]);if(Qs)for(var y of Qs(a))yl.call(a,y)&&Eu(E,y,a[y]);return E},Au=(E,a)=>xg(E,ls(a)),Zl=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(oe){b(oe)}},ee=ae=>{try{re(y.throw(ae))}catch(oe){b(oe)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});const Ih=[{name:"\u57FA\u672C\u4FE1\u606F",key:1},{name:"\u5B66\u4E60\u7EDF\u8BA1",key:3}];let bv=[{name:"\u4F5C\u4E1A",id:"zy",item_type:2},{name:"\u5B9E\u8BAD",id:"sx",item_type:2},{name:"\u6559\u6750",id:"jc",item_type:2},{name:"\u89C6\u9891",id:"sp",item_type:2},{name:"\u8BFE\u4EF6",id:"kj",item_type:2},{name:"\u8BD5\u5377",id:"sj",item_type:2},{name:"\u9898\u96C6",id:"tj",item_type:2}],Sg=[{name:"\u7AE0\u8282",id:"zj",item_type:1},{name:"\u77E5\u8BC6\u70B9",id:"zsd",item_type:1}];const Cv=({pathsDetail:E,user:a,globalSetting:y,loading:x,dispatch:b,items:z,showdetail:ee,setshowdetail:re,containerRef:ae,getData:oe,setshow:de,Tabsdatas:ge,uuid:ye,tpacti:De,initdata:ke})=>{var ze,We,Ve,Ze,Ye,et,st,ht,mt,dt,Ot,_t,wt,$t,gn,Xt,Tn,er,En,yn,Cn,qn,pn,lr,Jr,na,Hr,Ar,Wr,ya,Ra,Aa,co,So,ti,qi,Gi,fo;const[Po,Es]=(0,Ne.useState)(0),[as]=xe.default.useForm(),[yi,Ri]=(0,Ne.useState)({});let[Sa,Fa]=(0,Ne.useState)(!1);const[ni,Ki]=(0,Ne.useState)(!1),[Oa,xo]=(0,Ne.useState)("1"),[Qi,Hs]=(0,Ne.useState)([]),[fs,Ds]=(0,Ne.useState)(1),[Is,As]=(0,Ne.useState)(2),[Fo,fd]=(0,Ne.useState)(2),[hd,yu]=(0,Ne.useState)(),[$s,xc]=(0,Ne.useState)();let[el,si]=(0,Ne.useState)([]);const[so,Qo]=(0,Ne.useState)({}),[is,To]=(0,Ne.useState)(!1),[wu,Nd]=(0,Ne.useState)(""),[tf,x0]=(0,Ne.useState)([]),[pg]=(0,be.useSearchParams)(),[Av,yg]=(0,Ne.useState)(!1),[Zc,gd]=(0,Ne.useState)([]),[Qc,dl]=(0,Ne.useState)([]),[El,Us]=(0,Ne.useState)([]);let[ou,nf]=(0,Ne.useState)({tags:[],tagszy:[],tagslx:[]});const[Ti,Sc]=(0,Ne.useState)([{label:"\u5B9E\u8BAD",children:Zr.createElement(ma,{getother:kd,types:"1",ktzykey:Oa,onChange:zr=>{Hs(zr)}}),key:"1"},{label:"\u89C6\u9891",children:Zr.createElement(ma,{getother:kd,types:"2",ktzykey:Oa,onChange:zr=>{Hs(zr)}}),key:"2"},{label:"\u8BFE\u4EF6",children:Zr.createElement(ma,{getother:kd,types:"3",ktzykey:Oa,onChange:zr=>{Hs(zr)}}),key:"3"},{label:"\u8BD5\u5377",children:Zr.createElement(ma,{getother:kd,types:"4",ktzykey:Oa,onChange:zr=>{Hs(zr)}}),key:"4"}].filter(zr=>!!zr));let[rc,bc]=(0,Ne.useState)([]),[If,S0]=(0,Ne.useState)([]);const[BE,Vm]=(0,Ne.useState)(0),[NE,Km]=(0,Ne.useState)(0),[Rd,RE]=(0,Ne.useState)([]),[vo,Fd]=(0,Ne.useState)({bh:[],qx:[],hx:[],gl:[]}),FE=zr=>b({type:"userDetail/logWatchHistory",payload:xl({},zr)}),kE={maxCount:1,fileList:el,accept:((We=(ze=yi==null?void 0:yi.label)==null?void 0:ze[0])==null?void 0:We.name)==="\u89C6\u9891"?".mp4":"",withCredentials:!0,beforeUpload:zr=>{var lo,os;if(!(zr.type==="video/mp4")&&((os=(lo=yi==null?void 0:yi.label)==null?void 0:lo[0])==null?void 0:os.name)==="\u89C6\u9891")return _e.ZP.error("\u53EA\u80FD\u4E0A\u4F20\u89C6\u9891"),Ss.default.LIST_IGNORE},action:`${Mn.Z.API_SERVER}/api/attachments.json`,onChange:zr=>{si(zr==null?void 0:zr.fileList)}};function _E(){return Zl(this,null,function*(){var zr,lo,os,es,Dl;let Ws=yield(0,te.ZP)("/api/knowledge/v2/get_node.json",{method:"get",params:{depth:1,subject_id:E.detail.id}});if((Ws==null?void 0:Ws.status)===0){Vm(ye);const Cl=[...(Dl=(es=(zr=Ws==null?void 0:Ws.data)==null?void 0:zr.nodes)==null?void 0:es.splice(1,(os=(lo=Ws==null?void 0:Ws.data)==null?void 0:lo.nodes)==null?void 0:os.length))==null?void 0:Dl.map(ru=>{var _u,_d,Of;return xl({label:(_u=ru==null?void 0:ru.properties)==null?void 0:_u.name,children:Zr.createElement(Ao,{onChange:xv=>{sessionStorage.setItem("typesdatajsoncopy",JSON.stringify(xv))},itemsuuid:z==null?void 0:z.uuid,uuid:(_d=ru==null?void 0:ru.properties)==null?void 0:_d.uuid,typesdata:vo}),key:(Of=ru==null?void 0:ru.properties)==null?void 0:Of.uuid},ru)})];rc=Cl,bc(Cl),sessionStorage.setItem("typesdatajson",JSON.stringify(vo)),sessionStorage.setItem("typesdatajsoncopy",JSON.stringify(vo)),Fa(!0)}})}function zE(){return Zl(this,null,function*(){var zr,lo,os;let es=yield(0,te.ZP)("/api/knowledge_items.json",{method:"get",params:{item_type:3,subject_id:(zr=E==null?void 0:E.detail)==null?void 0:zr.id}});(es==null?void 0:es.status)===0&&(ou.tags=es==null?void 0:es.data,nf(xl({},ou)));let Dl=yield(0,te.ZP)("/api/knowledge_items.json",{method:"get",params:{item_type:5,subject_id:(lo=E==null?void 0:E.detail)==null?void 0:lo.id}});(Dl==null?void 0:Dl.status)===0&&(ou.tagszy=[...bv,...Dl==null?void 0:Dl.data2],ou.tagslx=[...Sg,...Dl==null?void 0:Dl.data],nf(xl({},ou)));let Ws=yield(0,te.ZP)("/api/knowledge/v2/get_container_type.json",{method:"get",params:{url:z==null?void 0:z.resourceUrl,item_banks_group_ids:z==null?void 0:z.itemBanksGroupIds}});if(Nd(""),Us([]),localStorage.setItem("container_type_tupu",Ws==null?void 0:Ws.container_type),(z==null?void 0:z.nodeType)==="\u89C6\u9891"&&(((os=Ws==null?void 0:Ws.attachment)==null?void 0:os.file_type)==="video"||(Ws==null?void 0:Ws.container_type)==="video")&&Nd(Ws==null?void 0:Ws.id),(z==null?void 0:z.resourceOrigin)===1&&(z==null?void 0:z.nodeType)!=="\u9898\u96C6"){let Cl={url:z==null?void 0:z.resourceUrl,name:Ws==null?void 0:Ws.name,id:Ws==null?void 0:Ws.examination_bank_id};Hs([Cl])}(z==null?void 0:z.resourceOrigin)===1&&(z==null?void 0:z.nodeType)==="\u9898\u96C6"&&Us(Ws==null?void 0:Ws.item_banks_groups),(z==null?void 0:z.resourceOrigin)===2&&si([{uid:"123",name:Ws==null?void 0:Ws.name,response:{id:"123",url:z==null?void 0:z.resourceUrl}}])})}function kd(zr){return Zl(this,null,function*(){var lo,os;let es=yield(0,te.ZP)("/api/knowledge/v2/get_container_type.json",{method:"get",params:{url:zr}});(es==null?void 0:es.status)===0&&((es==null?void 0:es.container_type)==="att"?Qo({url:Mn.Z.API_SERVER+((lo=es==null?void 0:es.attachment)==null?void 0:lo.url),file_type:(os=es==null?void 0:es.attachment)==null?void 0:os.file_type}):window.open(zr))})}function b0(){return Zl(this,null,function*(){let zr=yield(0,te.ZP)("/api/knowledge/v2/item_bank_groups.json",{method:"get",params:{subject_id:E.detail.id}});(zr==null?void 0:zr.status)===0&&gd(zr==null?void 0:zr.data)})}function EX(){return Zl(this,null,function*(){var zr,lo,os,es,Dl,Ws;let Cl=yield(0,te.ZP)("/api/knowledge/v2/get_node_detail.json",{method:"get",params:{nodeUuid:(z==null?void 0:z.keys)||(z==null?void 0:z.id),parentNodeUuids:ge==null?void 0:ge.map(ru=>ru==null?void 0:ru.uuid).join(),depth:1,relationshipFilter:">",subgraphDepth:"-1",subgraphRelationshipFilter:"\u5305\u542B>",subject_id:E.detail.id}});if((Cl==null?void 0:Cl.status)===0){RE((zr=Cl==null?void 0:Cl.data)==null?void 0:zr.nodes),yu((os=(lo=Cl==null?void 0:Cl.data)==null?void 0:lo.nodes)==null?void 0:os.filter(_u=>{var _d;return((_d=_u==null?void 0:_u.properties)==null?void 0:_d.uuid)===(z==null?void 0:z.keys)||(z==null?void 0:z.id)})),xc((es=Cl==null?void 0:Cl.data)==null?void 0:es.relationships);const ru=[...(Ws=(Dl=Cl==null?void 0:Cl.data)==null?void 0:Dl.graphNodeMappings)==null?void 0:Ws.map((_u,_d)=>{var Of;return{label:`${_u==null?void 0:_u.parentNodeName}\uFF08${(Of=_u==null?void 0:_u.childNodeUuids)==null?void 0:Of.length}\uFF09`,children:Zr.createElement(Kt,{datas:Cl==null?void 0:Cl.data,items:_u==null?void 0:_u.childNodeUuids}),key:_d}})];Km(0),If=ru,S0(ru)}})}return(0,Ne.useEffect)(()=>{ee&&(EX(),zE())},[ee,z]),Zr.createElement(Qt,null,Zr.createElement("div",null,ee&&Zr.createElement(Zs.Z,{open:ee,width:"700rem",mask:!1,closable:!1,rootClassName:fa.drawer,destroyOnClose:!0,getContainer:()=>ae.current,onCancel:()=>{re(!1),Nd("")}},Zr.createElement("div",{className:fa.detailmodal},Zr.createElement("div",null,Zr.createElement("span",{className:fa.title},"\u8282\u70B9\u8BE6\u60C5"),((Ve=E==null?void 0:E.detail)==null?void 0:Ve.edit_of_subject_knowledge)&&ye!=="\u5B66\u4E60\u8DEF\u5F84"&&(z==null?void 0:z.colorType)!=="1"&&Zr.createElement("i",{className:"iconfont icon-bianji-moren",onClick:()=>Zl(void 0,null,function*(){var zr,lo,os,es,Dl,Ws,Cl,ru,_u,_d;Es(3),re(!1);let Of={name:z.name,description:z.description,label:((lo=(zr=hd==null?void 0:hd[0])==null?void 0:zr.labels)==null?void 0:lo[1])==="\u8D44\u6E90"?(os=ou==null?void 0:ou.tagszy)==null?void 0:os.filter(po=>(po==null?void 0:po.name)===(z==null?void 0:z.nodeType)):(es=ou==null?void 0:ou.tagslx)==null?void 0:es.filter(po=>(po==null?void 0:po.name)===(z==null?void 0:z.nodeType)),tag:(Dl=ou==null?void 0:ou.tags)==null?void 0:Dl.filter(po=>{var Zu,Qu;return(Qu=(Zu=z==null?void 0:z.tags)==null?void 0:Zu.map(Yu=>Yu==null?void 0:Yu.name))==null?void 0:Qu.includes(po==null?void 0:po.name)}),resourceOrigin:z.resourceOrigin,url:(z==null?void 0:z.resourceOrigin)===3?z==null?void 0:z.resourceUrl:""},xv=(Ws=$s==null?void 0:$s.filter(po=>(po==null?void 0:po.type)==="\u88AB\u5305\u542B"&&(po==null?void 0:po.startNodeUuid)===((z==null?void 0:z.keys)||(z==null?void 0:z.id))))==null?void 0:Ws.map(po=>{var Zu,Qu;return{uuid:po==null?void 0:po.endNodeUuid,name:(Qu=(Zu=Rd==null?void 0:Rd.find(Yu=>{var Cc;return((Cc=Yu==null?void 0:Yu.properties)==null?void 0:Cc.uuid)===(po==null?void 0:po.endNodeUuid)}))==null?void 0:Zu.properties)==null?void 0:Qu.name}}),jE=(Cl=$s==null?void 0:$s.filter(po=>(po==null?void 0:po.type)==="\u5305\u542B"&&(po==null?void 0:po.startNodeUuid)===((z==null?void 0:z.keys)||(z==null?void 0:z.id))))==null?void 0:Cl.map(po=>{var Zu,Qu;return{uuid:po==null?void 0:po.endNodeUuid,name:(Qu=(Zu=Rd==null?void 0:Rd.find(Yu=>{var Cc;return((Cc=Yu==null?void 0:Yu.properties)==null?void 0:Cc.uuid)===(po==null?void 0:po.endNodeUuid)}))==null?void 0:Zu.properties)==null?void 0:Qu.name}});x0(jE);let UE=(ru=$s==null?void 0:$s.filter(po=>(po==null?void 0:po.type)==="\u524D\u5E8F"&&(po==null?void 0:po.startNodeUuid)===((z==null?void 0:z.keys)||(z==null?void 0:z.id))))==null?void 0:ru.map(po=>{var Zu,Qu;return{uuid:po==null?void 0:po.endNodeUuid,name:(Qu=(Zu=Rd==null?void 0:Rd.find(Yu=>{var Cc;return((Cc=Yu==null?void 0:Yu.properties)==null?void 0:Cc.uuid)===(po==null?void 0:po.endNodeUuid)}))==null?void 0:Zu.properties)==null?void 0:Qu.name}}),WE=(_u=$s==null?void 0:$s.filter(po=>(po==null?void 0:po.type)==="\u540E\u5E8F"&&(po==null?void 0:po.startNodeUuid)===((z==null?void 0:z.keys)||(z==null?void 0:z.id))))==null?void 0:_u.map(po=>{var Zu,Qu;return{uuid:po==null?void 0:po.endNodeUuid,name:(Qu=(Zu=Rd==null?void 0:Rd.find(Yu=>{var Cc;return((Cc=Yu==null?void 0:Yu.properties)==null?void 0:Cc.uuid)===(po==null?void 0:po.endNodeUuid)}))==null?void 0:Zu.properties)==null?void 0:Qu.name}}),GE=(_d=$s==null?void 0:$s.filter(po=>((po==null?void 0:po.type)==="\u5173\u8054"||(po==null?void 0:po.type)==="\u88AB\u5173\u8054")&&(po==null?void 0:po.startNodeUuid)===((z==null?void 0:z.keys)||(z==null?void 0:z.id))))==null?void 0:_d.map(po=>{var Zu,Qu;return{uuid:po==null?void 0:po.endNodeUuid,name:(Qu=(Zu=Rd==null?void 0:Rd.find(Yu=>{var Cc;return((Cc=Yu==null?void 0:Yu.properties)==null?void 0:Cc.uuid)===(po==null?void 0:po.endNodeUuid)}))==null?void 0:Zu.properties)==null?void 0:Qu.name}});Fd({bh:xv,qx:UE,hx:WE,gl:GE}),as.setFieldsValue(Of),Ri(Of)}),style:{color:"#1B8565",marginLeft:10,cursor:"pointer"}})),Zr.createElement("div",{style:{display:"flex",alignItems:"center"}},(z==null?void 0:z.colorType)!=="1"&&((Ze=E==null?void 0:E.detail)==null?void 0:Ze.edit_of_subject_knowledge)&&ye!=="\u5B66\u4E60\u8DEF\u5F84"&&Zr.createElement(ve.ZP,{type:"primary",className:fa.button,onClick:(0,no.debounce)(()=>Zl(void 0,null,function*(){var zr,lo,os;let es=yield(0,te.ZP)("/api/knowledge/v2/get_node.json",{method:"get",params:{nodeUuid:(z==null?void 0:z.keys)||(z==null?void 0:z.id),subject_id:(zr=E==null?void 0:E.detail)==null?void 0:zr.id,depth:1,relationshipFilter:"\u88AB\u5305\u542B>"}});if((es==null?void 0:es.status)===0){let Dl=(os=(lo=es==null?void 0:es.data)==null?void 0:lo.nodes)==null?void 0:os.filter(Cl=>{var ru;return((ru=Cl==null?void 0:Cl.properties)==null?void 0:ru.uuid)!==((z==null?void 0:z.keys)||(z==null?void 0:z.id))}),Ws=Dl==null?void 0:Dl.map(Cl=>{var ru,_u;return{name:(ru=Cl==null?void 0:Cl.properties)==null?void 0:ru.name,uuid:(_u=Cl==null?void 0:Cl.properties)==null?void 0:_u.uuid}});vo.bh=Ws,Fd(vo),Es(1),re(!1),Hs([]),Us([]),si([])}}),500)},"\u589E\u52A0\u540C\u7EA7\u8282\u70B9"),((Ye=E==null?void 0:E.detail)==null?void 0:Ye.edit_of_subject_knowledge)&&ye!=="\u5B66\u4E60\u8DEF\u5F84"&&Zr.createElement(ve.ZP,{type:"primary",className:fa.button,onClick:()=>{var zr,lo;((lo=(zr=vo==null?void 0:vo.bh)==null?void 0:zr.filter(os=>(os==null?void 0:os.uuid)===(z==null?void 0:z.id)))==null?void 0:lo.length)>0||vo.bh.push({name:z==null?void 0:z.name,uuid:(z==null?void 0:z.keys)||(z==null?void 0:z.id)}),Es(2),re(!1),Hs([]),Us([]),si([])}},"\u589E\u52A0\u5B50\u7EA7\u8282\u70B9"),((et=E==null?void 0:E.detail)==null?void 0:et.edit_of_subject_knowledge)&&ye!=="\u5B66\u4E60\u8DEF\u5F84"&&Zr.createElement(ve.ZP,{className:fa.button,onClick:()=>{let zr="";Me.default.confirm({title:"\u63D0\u793A",icon:null,centered:!0,getContainer:ae.current,content:Zr.createElement("div",null,Zr.createElement("p",null,"\u5220\u9664\u8282\u70B9\u4F1A\u540C\u6B65\u5220\u9664\u5F53\u524D\u8282\u70B9\u7684\u5B50\u7EA7\u8282\u70B9\uFF0C\u8BF7\u5728\u4E0B\u65B9\u8F93\u5165\u6846\u8F93\u5165",Zr.createElement("span",{style:{color:"red"}},"\u201C\u786E\u8BA4\u5220\u9664\u201D")),Zr.createElement(Se.default,{onChange:lo=>{zr=lo.target.value}})),onOk:()=>Zl(void 0,null,function*(){var lo,os,es;if(zr!=="\u786E\u8BA4\u5220\u9664")return _e.ZP.info("\u8BF7\u8F93\u5165\u786E\u8BA4\u5220\u9664"),Promise.reject();if(zr==="\u786E\u8BA4\u5220\u9664"){let Dl=yield(0,te.ZP)("/api/knowledge/v2/del_node.json",{method:"post",body:{uuid:(z==null?void 0:z.keys)||(z==null?void 0:z.id),subject_id:(lo=E==null?void 0:E.detail)==null?void 0:lo.id}});(Dl==null?void 0:Dl.status)===0&&(_e.ZP.info("\u5220\u9664\u6210\u529F"),pg.get("type")==="classrooms"?b({type:"pathsDetail/getCourseDetail",payload:xl({id:(os=E==null?void 0:E.detail)==null?void 0:os.id,knowledge:!0},(0,vt.oP)())}):b({type:"pathsDetail/getPathsDetail",payload:xl({id:(es=E==null?void 0:E.detail)==null?void 0:es.id,knowledge:!0},(0,vt.oP)())}),(z==null?void 0:z.colorType)!=="1"?(de(!1),oe()):ke(),re(!1))}})})}},"\u5220\u9664\u8282\u70B9"),((st=E==null?void 0:E.detail)==null?void 0:st.edit_of_subject_knowledge)&&ye==="\u5B66\u4E60\u8DEF\u5F84"&&pg.get("type")==="classrooms"&&Zr.createElement(ve.ZP,{type:"primary",className:fa.button,onClick:()=>{Me.default.confirm({title:"\u63D0\u793A",icon:null,centered:!0,getContainer:ae.current,okText:"\u786E\u8BA4\u540C\u6B65",content:Zr.createElement("div",null,"\u8BE5\u8282\u70B9\u4E0B\u5171",Zr.createElement("span",{className:"c-light-primary"},z==null?void 0:z.currentResourceTotal),"\u4E2A\u8D44\u6E90\uFF0C\u786E\u8BA4\u540C\u6B65\u540E\uFF0C\u8FD9\u4E9B\u8D44\u6E90\u5C06\u6309\u7167\u7C7B\u578B\u5206\u522B\u53D1\u9001\u5230\u8BFE\u5802\u5B9E\u9A8C\u3001\u56FE\u6587\u4F5C\u4E1A\u3001\u5728\u7EBF\u8003\u8BD5\u3001\u89C6\u9891\u76F4\u64AD\u3001\u6559\u5B66\u8D44\u6599\u6A21\u5757\u4E2D\uFF0C\u53EF\u524D\u5F80\u5BF9\u5E94\u6A21\u5757\u8FDB\u884C\u8D44\u6E90\u53D1\u5E03\u7B49\u64CD\u4F5C\u3002"),onOk:()=>Zl(void 0,null,function*(){var zr;const lo=yield(0,te.ZP)("/api/subject_knowledge/send_to_course",{method:"post",body:{id:z==null?void 0:z.resourceid,subject_id:(zr=E==null?void 0:E.detail)==null?void 0:zr.id}});(lo==null?void 0:lo.status)===0&&_e.ZP.success("\u64CD\u4F5C\u6210\u529F")})})}},"\u540C\u6B65\u8D44\u6E90\u5230\u8BFE\u5802"),Zr.createElement(Ko.Z,{onClick:()=>{re(!1)},style:{marginLeft:"10rem",fontSize:"16rem",color:"#979797"}}))),Zr.createElement("div",{className:fa.tabstyle},Ih==null?void 0:Ih.map(zr=>Zr.createElement("div",{onClick:()=>{Ds(zr.key)},className:fs===(zr==null?void 0:zr.key)?fa.itemsactivite:fa.items},zr==null?void 0:zr.name))),fs===1&&Zr.createElement("div",null,Zr.createElement("div",{className:fa.nodetitle},Is===1&&Zr.createElement(No.Z,{onClick:()=>As(2)}),Is===2&&Zr.createElement(ns.Z,{onClick:()=>As(1)}),Zr.createElement("span",{style:{marginLeft:"10rem",fontSize:"16rem",color:"#1B8565"}},"\u8282\u70B9\u5C5E\u6027")),Is===2&&Zr.createElement("div",{className:fa.nodeboyd},Zr.createElement("div",{className:fa.listitem,style:{marginTop:"0rem"}},Zr.createElement("label",null,"\u8282\u70B9\u540D\u79F0"),Zr.createElement("span",null,z==null?void 0:z.name)),Zr.createElement("div",{className:fa.listitem},Zr.createElement("label",null,"\u8282\u70B9\u7B80\u4ECB"),Zr.createElement("span",null,(z==null?void 0:z.description)||"\u6682\u65E0")),Zr.createElement("div",{className:fa.listitem},Zr.createElement("label",null,"\u8282\u70B9\u7C7B\u578B"),Zr.createElement("div",null,(z==null?void 0:z.nodeType)&&Zr.createElement(fr,{containerRef:ae,type:5,value:[{name:z==null?void 0:z.nodeType}],pathsDetail:E,showmodal:!1,dataSources:[]})," ")),Zr.createElement("div",{className:fa.listitem},Zr.createElement("label",null,"\u8282\u70B9\u6807\u7B7E"),Zr.createElement("span",null,((ht=z==null?void 0:z.tags)==null?void 0:ht.length)>0&&Zr.createElement(fr,{containerRef:ae,type:5,pathsDetail:E,value:z==null?void 0:z.tags,showmodal:!1,dataSources:[]}))),(z==null?void 0:z.nodeType)==="\u89C6\u9891"&&(z==null?void 0:z.resourceOrigin)!==3&&wu&&Zr.createElement("div",{style:{height:"300rem",marginTop:"20rem"}},Zr.createElement(ur.Z,{allow_skip:!0,videoId:wu,toLog:!0,src:z==null?void 0:z.resourceUrl,logWatchHistory:zr=>FE(Au(xl({},zr),{container_type:localStorage.getItem("container_type_tupu")}))})),(z==null?void 0:z.resourceOrigin)===3&&Zr.createElement("div",{style:{display:"flex",marginTop:"20rem",alignItems:"center"}},Zr.createElement("span",{style:{color:"#1B8565",fontSize:"16rem"}},z==null?void 0:z.resourceUrl),Zr.createElement(ve.ZP,{style:{height:"40rem",padding:"0rem 10rem",fontSize:"14rem",marginLeft:"10rem"},onClick:()=>Zl(void 0,null,function*(){var zr;let lo=yield(0,te.ZP)("/api/subject_knowledge/create_study.json",{method:"post",body:{subject_id:(zr=E==null?void 0:E.detail)==null?void 0:zr.id,uuid:z==null?void 0:z.uuid}});window.open(z==null?void 0:z.resourceUrl)}),type:"primary"},"\u524D\u5F80\u67E5\u770B")),(z==null?void 0:z.nodeType)==="\u9898\u96C6"&&(El==null?void 0:El.map(zr=>Zr.createElement("div",{style:{display:"flex",alignItems:"center",marginTop:"10rem"}},Zr.createElement(on.Z,{title:zr==null?void 0:zr.name},Zr.createElement("span",{className:fa.multiple,style:{color:"#1B8565",fontSize:"16rem",maxWidth:"80%"}},zr==null?void 0:zr.name)),Zr.createElement("div",{style:{marginLeft:"10rem",padding:"0rem 10rem",fontSize:"12rem",background:"#F6F7F9",color:"#909D99",borderRadius:"20rem"}},"\u8BD5\u9898\u6570 ",zr==null?void 0:zr.count)))),(z==null?void 0:z.nodeType)!="\u89C6\u9891"&&(z==null?void 0:z.nodeType)!="\u9898\u96C6"&&(z!=null&&z.resourceOrigin)&&[1,2].includes(z==null?void 0:z.resourceOrigin)?Zr.createElement("div",{style:{display:"flex",marginTop:"20rem",alignItems:"center"}},Zr.createElement("span",{style:{color:"#1B8565",fontSize:"16rem"}},(z==null?void 0:z.resourceOrigin)===1?(mt=Qi==null?void 0:Qi[0])==null?void 0:mt.name:(dt=el==null?void 0:el[0])==null?void 0:dt.name),(0,fn.JA)()&&(z==null?void 0:z.nodeType)==="\u8BD5\u5377"?"":Zr.createElement(ve.ZP,{style:{height:"40rem",padding:"0rem 10rem",fontSize:"14rem",marginLeft:"10rem"},onClick:()=>Zl(void 0,null,function*(){var zr;kd(z==null?void 0:z.resourceUrl);let lo=yield(0,te.ZP)("/api/subject_knowledge/create_study.json",{method:"post",body:{subject_id:(zr=E==null?void 0:E.detail)==null?void 0:zr.id,uuid:z==null?void 0:z.uuid}})}),type:"primary"},"\u524D\u5F80\u67E5\u770B"),(z==null?void 0:z.nodeType)==="\u8BD5\u5377"&&(z==null?void 0:z.resourceOrigin)===1&&Zr.createElement(ve.ZP,{style:{height:"40rem",padding:"0rem 10rem",fontSize:"14rem",marginLeft:"10rem"},onClick:()=>Zl(void 0,null,function*(){var zr,lo;const os=yield(0,_c.Mb)({categoryId:(zr=Qi==null?void 0:Qi[0])==null?void 0:zr.id});os!=null&&os.exercise_id&&(0,vt.xg)(`/classrooms/coursesId/exercise/${os.exercise_id}/${(lo=a.userInfo)==null?void 0:lo.login}/initate_answer`)}),type:"primary"},"\u6A21\u62DF\u8003\u8BD5")):""),Zr.createElement("div",{className:fa.nodetitle},Fo===1&&Zr.createElement(No.Z,{onClick:()=>fd(2)}),Fo===2&&Zr.createElement(ns.Z,{onClick:()=>fd(1)}),Zr.createElement("span",{style:{marginLeft:"10rem",fontSize:"16rem",color:"#1B8565"}},"\u8282\u70B9\u5173\u7CFB")),Fo===2&&Zr.createElement("div",{className:fa.nodeboyd,style:{padding:0,minHeight:"530rem"}},Zr.createElement(yt.default,{className:fa.Tabs,activeKey:NE,destroyInactiveTabPane:!0,onChange:zr=>{Km(parseInt(zr))},type:"card",items:If}))),fs===3&&Zr.createElement("div",null,(0,fn.JA)()?Zr.createElement(ll,{uuid:(z==null?void 0:z.keys)||(z==null?void 0:z.id)}):Zr.createElement(ia,{uuid:(z==null?void 0:z.keys)||(z==null?void 0:z.id)}))),Zr.createElement(Me.default,{title:Zr.createElement("span",{style:{fontSize:"18rem",color:"#000"}},Po===3?"\u7F16\u8F91":"\u521B\u5EFA","\u8282\u70B9"),centered:!0,destroyOnClose:!0,width:"1200rem",open:Po>0,getContainer:()=>ae.current,onCancel:()=>{Es(0),as.resetFields(),Fd({qx:[],bh:[],hx:[],gl:[]}),si([]),Ri({}),Hs([]),Us([])},okButtonProps:{loading:is},onOk:()=>{as.submit()}},Zr.createElement("div",{className:fa.addmodal},Zr.createElement("div",{className:fa.title},"\u8282\u70B9\u5C5E\u6027"),Zr.createElement(xe.default,{className:fa.form,labelCol:{flex:"92rem"},layout:"horizontal",form:as,colon:!1,onValuesChange:(zr,lo)=>{var os,es,Dl,Ws;Ri(xl({},lo)),(lo==null?void 0:lo.resourceOrigin)!==1&&Hs([]),((es=(os=lo==null?void 0:lo.label)==null?void 0:os[0])==null?void 0:es.name)!=="\u9898\u96C6"&&Us([]),((Ws=(Dl=lo==null?void 0:lo.label)==null?void 0:Dl[0])==null?void 0:Ws.item_type)!==2&&(Hs([]),si([]),Us([]),as.setFieldsValue({resourceOrigin:0,url:""}))},onFinish:(0,no.debounce)(zr=>Zl(void 0,null,function*(){var lo,os,es,Dl,Ws,Cl,ru,_u,_d,Of,xv,jE,UE,WE,GE,po,Zu,Qu,Yu,Cc,kO,_O,zO,jO,UO,WO,GO,HO,VO,KO,ZO,QO,YO,XO,JO,qO,$O,eT,tT,nT,rT,aT,iT,oT,sT,lT,uT,cT,dT,fT,hT,gT,vT,mT;if(((lo=vo==null?void 0:vo.bh)==null?void 0:lo.length)===0){_e.ZP.warning("\u8282\u70B9\u5305\u542B\u5173\u7CFB\u4E0D\u80FD\u4E3A\u7A7A");return}if((zr==null?void 0:zr.resourceOrigin)===0){_e.ZP.warning("\u8BF7\u9009\u62E9\u8D44\u6E90\u7C7B\u578B");return}if((zr==null?void 0:zr.resourceOrigin)===1&&(Qi==null?void 0:Qi.length)<=0&&((os=zr==null?void 0:zr.label[0])==null?void 0:os.name)!=="\u9898\u96C6"){_e.ZP.warning("\u8BF7\u9009\u62E9\u5BF9\u5E94\u8D44\u6E90");return}if((zr==null?void 0:zr.resourceOrigin)===1&&(El==null?void 0:El.length)<=0&&((es=zr==null?void 0:zr.label[0])==null?void 0:es.name)==="\u9898\u96C6"){_e.ZP.warning("\u8BF7\u9009\u62E9\u5BF9\u5E94\u8D44\u6E90");return}if((zr==null?void 0:zr.resourceOrigin)===2&&(el==null?void 0:el.length)===0){_e.ZP.warning("\u8BF7\u4E0A\u4F20\u6587\u4EF6");return}To(!0);let AX=Po===3?"/api/knowledge/v2/mod_node.json":"/api/knowledge/v2/add_node.json",xX=Po===3?{subject_id:(Dl=E==null?void 0:E.detail)==null?void 0:Dl.id,properties:{description:zr.description,rootNodeUuid:z==null?void 0:z.rootNodeUuid,name:zr.name,uuid:(z==null?void 0:z.keys)||(z==null?void 0:z.id),nodeType:(Ws=zr==null?void 0:zr.label[0])==null?void 0:Ws.name,tags:((ru=(Cl=zr.tag)==null?void 0:Cl.map(kl=>kl==null?void 0:kl.name))==null?void 0:ru.join("\uFF0C"))||"",color:z==null?void 0:z.color,resourceOrigin:zr.resourceOrigin,resourceUrl:zr.resourceOrigin===3?zr.url:zr.resourceOrigin===2?((Of=(_d=(_u=el==null?void 0:el[0])==null?void 0:_u.response)==null?void 0:_d.url)==null?void 0:Of.indexOf("educoder.net"))>-1?(jE=(xv=el==null?void 0:el[0])==null?void 0:xv.response)==null?void 0:jE.url:((UE=y==null?void 0:y.setting)==null?void 0:UE.public_bucket_host)+((GE=(WE=el==null?void 0:el[0])==null?void 0:WE.response)==null?void 0:GE.url):(po=Qi==null?void 0:Qi[0])==null?void 0:po.url,container_type:((Zu=zr==null?void 0:zr.label[0])==null?void 0:Zu.name)==="\u9898\u96C6"?"ItemBanksGroup":(zr.resourceOrigin===1||zr.resourceOrigin===2)&&((Qu=Qi==null?void 0:Qi[0])==null?void 0:Qu.container_type)||((Cc=(Yu=el==null?void 0:el[0])==null?void 0:Yu.response)==null?void 0:Cc.container_type),container_id:(zr.resourceOrigin===1||zr.resourceOrigin===2)&&((kO=Qi==null?void 0:Qi[0])==null?void 0:kO.container_id)||((zO=(_O=el==null?void 0:el[0])==null?void 0:_O.response)==null?void 0:zO.container_id),itemBanksGroupIds:El==null?void 0:El.map(kl=>kl==null?void 0:kl.group_id).toString()},subgraphNodeUuid:De,relationships:[...(jO=vo.bh)==null?void 0:jO.map(kl=>({startNodeUuid:kl.uuid,endNodeUuid:(z==null?void 0:z.keys)||(z==null?void 0:z.id),type:"\u5305\u542B"})),...tf==null?void 0:tf.map(kl=>({endNodeUuid:kl.uuid,startNodeUuid:(z==null?void 0:z.keys)||(z==null?void 0:z.id),type:"\u5305\u542B"})),...(UO=vo.qx)==null?void 0:UO.map(kl=>({startNodeUuid:kl.uuid,endNodeUuid:(z==null?void 0:z.keys)||(z==null?void 0:z.id),type:"\u524D\u5E8F"})),...(WO=vo.hx)==null?void 0:WO.map(kl=>({endNodeUuid:kl.uuid,startNodeUuid:(z==null?void 0:z.keys)||(z==null?void 0:z.id),type:"\u540E\u5E8F"})),...(GO=vo.gl)==null?void 0:GO.map(kl=>({startNodeUuid:kl.uuid,endNodeUuid:(z==null?void 0:z.keys)||(z==null?void 0:z.id),type:"\u5173\u8054"}))]}:{label:((HO=zr==null?void 0:zr.label[0])==null?void 0:HO.item_type)===1?"\u6807\u7B7E":"\u8D44\u6E90",subject_id:(VO=E==null?void 0:E.detail)==null?void 0:VO.id,properties:{description:zr.description,rootNodeUuid:z==null?void 0:z.rootNodeUuid,name:zr.name,nodeType:(KO=zr==null?void 0:zr.label[0])==null?void 0:KO.name,tags:((QO=(ZO=zr.tag)==null?void 0:ZO.map(kl=>kl==null?void 0:kl.name))==null?void 0:QO.join("\uFF0C"))||"",color:Po===1?"2":parseInt(z==null?void 0:z.colorType)+1+"",resourceOrigin:zr.resourceOrigin,resourceUrl:zr.resourceOrigin===3?zr.url:zr.resourceOrigin===2?((JO=(XO=(YO=el==null?void 0:el[0])==null?void 0:YO.response)==null?void 0:XO.url)==null?void 0:JO.indexOf("educoder.net"))>-1?($O=(qO=el==null?void 0:el[0])==null?void 0:qO.response)==null?void 0:$O.url:((eT=y==null?void 0:y.setting)==null?void 0:eT.public_bucket_host)+((nT=(tT=el==null?void 0:el[0])==null?void 0:tT.response)==null?void 0:nT.url):(rT=Qi==null?void 0:Qi[0])==null?void 0:rT.url,container_type:((aT=zr==null?void 0:zr.label[0])==null?void 0:aT.name)==="\u9898\u96C6"?"ItemBanksGroup":(zr.resourceOrigin===1||zr.resourceOrigin===2)&&((iT=Qi==null?void 0:Qi[0])==null?void 0:iT.container_type)||((sT=(oT=el==null?void 0:el[0])==null?void 0:oT.response)==null?void 0:sT.container_type),container_id:(zr.resourceOrigin===1||zr.resourceOrigin===2)&&((lT=Qi==null?void 0:Qi[0])==null?void 0:lT.container_id)||((cT=(uT=el==null?void 0:el[0])==null?void 0:uT.response)==null?void 0:cT.container_id),itemBanksGroupIds:El==null?void 0:El.map(kl=>kl==null?void 0:kl.group_id).toString()},subgraphNodeUuid:De,relationships:[...(dT=vo.bh)==null?void 0:dT.map(kl=>({startNodeUuid:kl.uuid,type:"\u5305\u542B"})),...(fT=vo.qx)==null?void 0:fT.map(kl=>({startNodeUuid:kl.uuid,type:"\u524D\u5E8F"})),...(hT=vo.hx)==null?void 0:hT.map(kl=>({endNodeUuid:kl.uuid,type:"\u540E\u5E8F"})),...(gT=vo.gl)==null?void 0:gT.map(kl=>({startNodeUuid:kl.uuid,type:"\u5173\u8054"}))]};const pT=yield(0,te.ZP)(AX,{method:"POST",body:xX});To(!1),(pT==null?void 0:pT.status)===0&&(pg.get("type")==="classrooms"?b({type:"pathsDetail/getCourseDetail",payload:xl({id:(vT=E==null?void 0:E.detail)==null?void 0:vT.id,knowledge:!0},(0,vt.oP)())}):b({type:"pathsDetail/getPathsDetail",payload:xl({id:(mT=E==null?void 0:E.detail)==null?void 0:mT.id,knowledge:!0},(0,vt.oP)())}),_e.ZP.info(Po===3?"\u7F16\u8F91\u6210\u529F":"\u521B\u5EFA\u6210\u529F"),Es(0),de(!1),oe(),as.resetFields(),si([]),Ri({}),Hs([]),Us([]),Fd({qx:[],hx:[],bh:[],gl:[]}))}),500),size:"large"},Zr.createElement(xe.default.Item,{label:"\u8282\u70B9\u540D\u79F0",name:"name",rules:[{required:!0,message:"\u8BF7\u8F93\u5165\u8282\u70B9\u540D\u79F0"},{type:"string",max:60,message:"\u8F93\u5165\u8D85\u9650\uFF0C\u8BF7\u7F29\u51CF\u5B57\u7B26\u6570"},{type:"string",whitespace:!0,message:"\u5185\u5BB9\u4E0D\u80FD\u5168\u4E3A\u7A7A\u683C"}]},Zr.createElement(Se.default,{maxLength:60,showCount:!0,placeholder:"\u8BF7\u8F93\u5165"})),Zr.createElement(xe.default.Item,{label:"\u8282\u70B9\u7B80\u4ECB",name:"description",rules:[{type:"string",max:5e3,message:"\u8F93\u5165\u8D85\u9650\uFF0C\u8BF7\u7F29\u51CF\u5B57\u7B26\u6570"},{type:"string",whitespace:!0,message:"\u5185\u5BB9\u4E0D\u80FD\u5168\u4E3A\u7A7A\u683C"}]},Zr.createElement(Se.default.TextArea,{maxLength:5e3,showCount:!0,placeholder:"\u8BF7\u8F93\u5165"})),Zr.createElement(xe.default.Item,{label:"\u8282\u70B9\u7C7B\u578B",name:"label",style:{marginBottom:"0rem"},rules:[{required:!0,message:"\u8BF7\u9009\u62E9\u8282\u70B9\u7C7B\u578B"}]},Zr.createElement(fr,{containerRef:ae,type:5,pathsDetail:E,showmodal:Po!==3,dataSources:[]})),((_t=(Ot=yi==null?void 0:yi.label)==null?void 0:Ot[0])==null?void 0:_t.item_type)===2&&Zr.createElement(xe.default.Item,{label:" ",name:"resourceOrigin",rules:[{required:!0,message:"\u8BF7\u9009\u62E9\u8D44\u6E90\u7C7B\u578B"}]},Zr.createElement(pe.ZP.Group,{className:fa.radioform},Zr.createElement(pe.ZP,{value:1},"\u9009\u62E9\u8D44\u6E90"),(($t=(wt=yi==null?void 0:yi.label)==null?void 0:wt[0])==null?void 0:$t.name)!=="\u9898\u96C6"&&Zr.createElement(pe.ZP,{value:2},"\u4E0A\u4F20\u6587\u4EF6"),((Xt=(gn=yi==null?void 0:yi.label)==null?void 0:gn[0])==null?void 0:Xt.name)!=="\u9898\u96C6"&&Zr.createElement(pe.ZP,{value:3},"\u5916\u94FE"))),(yi==null?void 0:yi.resourceOrigin)===1&&((er=(Tn=yi==null?void 0:yi.label)==null?void 0:Tn[0])==null?void 0:er.item_type)===2&&Zr.createElement(xe.default.Item,{label:" ",name:""},Zr.createElement(ve.ZP,{onClick:()=>{var zr,lo,os,es,Dl,Ws;((lo=(zr=yi==null?void 0:yi.label)==null?void 0:zr[0])==null?void 0:lo.name)==="\u9898\u96C6"?(yg(!0),dl(El),b0()):(Ki(!0),xo(((es=(os=yi==null?void 0:yi.label)==null?void 0:os[0])==null?void 0:es.name)==="\u89C6\u9891"?"2":((Ws=(Dl=yi==null?void 0:yi.label)==null?void 0:Dl[0])==null?void 0:Ws.name)==="\u8BD5\u5377"?"4":"1"))},type:"primary",style:{height:"40rem",lineHeight:"40rem",padding:"0rem 32rem",boxShadow:"none"}},((yn=(En=yi==null?void 0:yi.label)==null?void 0:En[0])==null?void 0:yn.name)==="\u9898\u96C6"?"\u9009\u62E9\u9898\u96C6":"\u9009\u62E9\u8D44\u6E90"),(Qi==null?void 0:Qi.length)>0&&Zr.createElement("div",{style:{color:"#1B8565",marginTop:"5rem",fontSize:"16rem",display:"flex",alignItems:"center"}},Zr.createElement("div",{className:fa.multiple,title:(Cn=Qi==null?void 0:Qi[0])==null?void 0:Cn.name},(qn=Qi==null?void 0:Qi[0])==null?void 0:qn.name),Zr.createElement("i",{style:{fontSize:"16rem",cursor:"pointer",marginLeft:"10rem"},onClick:()=>{Hs([])},className:"iconfont icon-shanchu12"})," "),(El==null?void 0:El.length)>0&&(El==null?void 0:El.map(zr=>Zr.createElement("div",{style:{color:"#1B8565",marginTop:"5rem",fontSize:"16rem",display:"flex",alignItems:"center"}},Zr.createElement("div",{className:fa.multiple,title:zr==null?void 0:zr.name},zr==null?void 0:zr.name),Zr.createElement("i",{style:{fontSize:"16rem",cursor:"pointer",marginLeft:"10rem"},onClick:()=>{Us(El==null?void 0:El.filter(lo=>(lo==null?void 0:lo.group_id)!==(zr==null?void 0:zr.group_id)))},className:"iconfont icon-shanchu12"})," ")))),(yi==null?void 0:yi.resourceOrigin)===2&&((lr=(pn=yi==null?void 0:yi.label)==null?void 0:pn[0])==null?void 0:lr.item_type)===2&&Zr.createElement(xe.default.Item,{label:" ",name:"file",shouldUpdate:!0},Zr.createElement(Ss.default,xl({},kE),Zr.createElement(ve.ZP,{type:"primary",style:{height:"40rem",lineHeight:"40rem",padding:"0rem 32rem",boxShadow:"none"}},"\u4E0A\u4F20\u6587\u4EF6"))),(yi==null?void 0:yi.resourceOrigin)===3&&((na=(Jr=yi==null?void 0:yi.label)==null?void 0:Jr[0])==null?void 0:na.item_type)===2&&Zr.createElement(xe.default.Item,{label:" ",name:"url"},Zr.createElement(xe.default.Item,{label:"\u5916\u94FE\u94FE\u63A5",name:"url",rules:[{required:!0,message:"\u8BF7\u8F93\u5165\u5916\u94FE"}]},Zr.createElement(Se.default,{style:{height:"40rem"}}))),Zr.createElement(xe.default.Item,{label:"\u8282\u70B9\u6807\u7B7E",name:"tag"},Zr.createElement(fr,{containerRef:ae,type:3,pathsDetail:E,showmodal:!0,dataSources:[]})))),Zr.createElement("div",{className:fa.addmodal,style:{marginTop:"20rem"}},Zr.createElement("div",{className:fa.title},Zr.createElement("span",null,"\u8282\u70B9\u5173\u7CFB"),Zr.createElement("span",{style:{cursor:"pointer"},onClick:()=>{_E()}},"\u5173\u7CFB\u8BBE\u7F6E")),Zr.createElement("div",{className:fa.gxcoent,style:{padding:"20rem 25rem"}},Zr.createElement("div",{className:fa.gxtitle},Zr.createElement("div",{className:fa.Colortitle,style:{background:"#6236ff"}}),Zr.createElement("div",null,"\u88AB\u5305\u542B\uFF08",(Hr=vo.bh)==null?void 0:Hr.length,"\uFF09")),Zr.createElement("div",{className:fa.gxbody},(Ar=vo==null?void 0:vo.bh)==null?void 0:Ar.map(zr=>Zr.createElement("div",{className:fa.tag,style:{background:"#6236ff"}},Zr.createElement("span",{style:{marginRight:"10rem"}},zr==null?void 0:zr.name)," ",Zr.createElement(Ko.Z,{onClick:()=>{var lo;let os=(lo=vo==null?void 0:vo.bh)==null?void 0:lo.filter(es=>es.uuid!==zr.uuid);Fd({bh:os,hx:vo==null?void 0:vo.hx,qx:vo==null?void 0:vo.qx,gl:vo==null?void 0:vo.gl})}})))),Zr.createElement("div",{className:fa.gxtitle,style:{marginTop:"30rem"}},Zr.createElement("div",{className:fa.Colortitle,style:{background:"#24A881"}}),Zr.createElement("div",null,"\u524D\u5E8F\uFF08",(Wr=vo.qx)==null?void 0:Wr.length,"\uFF09")),Zr.createElement("div",{className:fa.gxbody},(ya=vo==null?void 0:vo.qx)==null?void 0:ya.map(zr=>Zr.createElement("div",{className:fa.tag,style:{background:"#24A881"}},Zr.createElement("span",{style:{marginRight:"10rem"}},zr==null?void 0:zr.name)," ",Zr.createElement(Ko.Z,{onClick:()=>{var lo;let os=(lo=vo==null?void 0:vo.qx)==null?void 0:lo.filter(es=>es.uuid!==zr.uuid);Fd({qx:os,bh:vo==null?void 0:vo.bh,hx:vo==null?void 0:vo.hx,gl:vo==null?void 0:vo.gl})}})))),Zr.createElement("div",{className:fa.gxtitle,style:{marginTop:"30rem"}},Zr.createElement("div",{className:fa.Colortitle,style:{background:"#EC8657"}}),Zr.createElement("div",null,"\u540E\u5E8F\uFF08",(Ra=vo.hx)==null?void 0:Ra.length,"\uFF09")),Zr.createElement("div",{className:fa.gxbody},(Aa=vo==null?void 0:vo.hx)==null?void 0:Aa.map(zr=>Zr.createElement("div",{className:fa.tag,style:{background:"#EC8657"}},Zr.createElement("span",{style:{marginRight:"10rem"}},zr==null?void 0:zr.name)," ",Zr.createElement(Ko.Z,{onClick:()=>{var lo;let os=(lo=vo==null?void 0:vo.hx)==null?void 0:lo.filter(es=>es.uuid!==zr.uuid);Fd({qx:vo==null?void 0:vo.qx,bh:vo==null?void 0:vo.bh,hx:os,gl:vo==null?void 0:vo.gl})}})))),Zr.createElement("div",{className:fa.gxtitle,style:{marginTop:"30rem"}},Zr.createElement("div",{className:fa.Colortitle,style:{background:"#497DFF"}}),Zr.createElement("div",null,"\u5173\u8054\uFF08",(co=vo.gl)==null?void 0:co.length,"\uFF09")),Zr.createElement("div",{className:fa.gxbody},(So=vo==null?void 0:vo.gl)==null?void 0:So.map(zr=>Zr.createElement("div",{className:fa.tag,style:{background:"#497DFF"}},Zr.createElement("span",{style:{marginRight:"10rem"}},zr==null?void 0:zr.name)," ",Zr.createElement(Ko.Z,{onClick:()=>{var lo;let os=(lo=vo==null?void 0:vo.gl)==null?void 0:lo.filter(es=>es.uuid!==zr.uuid);Fd({qx:vo==null?void 0:vo.qx,hx:vo==null?void 0:vo.hx,bh:vo==null?void 0:vo.bh,gl:os})}}))))))),Zr.createElement(Me.default,{title:"\u9009\u62E9\u9898\u96C6",open:Av,destroyOnClose:!0,centered:!0,getContainer:()=>ae.current,width:"1200rem",onOk:()=>{if((Qc==null?void 0:Qc.length)<=0){_e.ZP.info("\u8BF7\u9009\u62E9\u9898\u96C6");return}Us(Qc),yg(!1)},onCancel:()=>{dl([]),yg(!1)}},Zr.createElement(ra.default,{checkable:!0,style:{margin:20,maxHeight:400,overflow:"auto"},blockNode:!0,checkStrictly:!0,checkedKeys:Qc==null?void 0:Qc.map(zr=>zr==null?void 0:zr.group_id),onCheck:(zr,lo)=>{dl(lo==null?void 0:lo.checkedNodes)},treeData:Zc,fieldNames:{key:"group_id",title:"name"},titleRender:zr=>Zr.createElement("div",{style:{display:"flex",alignItems:"center",paddingRight:"14px"}},Zr.createElement(on.Z,{title:zr==null?void 0:zr.name},Zr.createElement("div",{className:fa.multiple,style:{display:"flex",alignItems:"center",maxWidth:"80%"}},Zr.createElement("img",{src:Wd,style:{marginRight:10}}),Zr.createElement("span",null,zr==null?void 0:zr.name))),Zr.createElement("div",{style:{padding:"0rem 10rem",fontSize:"12rem",background:"#F6F7F9",color:"#909D99",borderRadius:"20rem"}},"\u8BD5\u9898\u6570 ",zr==null?void 0:zr.count))})),Zr.createElement(Me.default,{title:"\u9009\u62E9\u8D44\u6E90",open:ni,destroyOnClose:!0,centered:!0,getContainer:()=>ae.current,width:"1200rem",onOk:()=>{Ki(!1)},onCancel:()=>{Ki(!1),Po!==3&&Hs([]),xo("1")}},Zr.createElement("div",{className:fa.settingmodal},Zr.createElement(yt.default,{className:fa.Tabs,activeKey:Oa,destroyInactiveTabPane:!0,onChange:zr=>{xo(zr)},type:"card",items:((qi=(ti=yi==null?void 0:yi.label)==null?void 0:ti[0])==null?void 0:qi.name)==="\u89C6\u9891"?Ti.filter(zr=>(zr==null?void 0:zr.label)==="\u89C6\u9891"):((fo=(Gi=yi==null?void 0:yi.label)==null?void 0:Gi[0])==null?void 0:fo.name)==="\u8BD5\u5377"?Ti.filter(zr=>(zr==null?void 0:zr.label)==="\u8BD5\u5377"):Ti.filter(zr=>(zr==null?void 0:zr.label)!=="\u89C6\u9891")}))),Zr.createElement(kc.Z,{close:!0,style:{zIndex:1300,background:"rgba(1, 10, 35, 0.5)"},data:so==null?void 0:so.url,type:so==null?void 0:so.file_type,disabledDownload:!0,onClose:()=>Qo({})}),Zr.createElement(Me.default,{title:"\u5173\u7CFB\u8BBE\u7F6E",open:Sa,destroyOnClose:!0,centered:!0,getContainer:()=>ae.current,width:"1200rem",onCancel:()=>{Fa(!1);let zr=JSON.parse(sessionStorage.getItem("typesdatajson"));Fd(zr)},onOk:()=>{let zr=JSON.parse(sessionStorage.getItem("typesdatajsoncopy"));Fd(zr),Fa(!1)}},Zr.createElement("div",{className:fa.settingmodal},Zr.createElement(yt.default,{className:fa.Tabs,activeKey:BE,destroyInactiveTabPane:!0,onChange:zr=>{Vm(zr)},type:"card",items:rc})))))};var bg=(0,be.connect)(({pathsDetail:E,user:a,loading:y,globalSetting:x})=>({pathsDetail:E,user:a,globalSetting:x,loading:y.models.index}))(Cv),ul={tree:"tree___nmqFN",center:"center___zS18i",head:"head___VcDyA",del:"del___VM4Mh",body:"body___YCIVW",tabs:"tabs___SW1M6",active:"active___p1mR9",scrollBox:"scrollBox___reAJO",treeWarp:"treeWarp___oNJ2m",treeNode:"treeNode___qHtQK",node:"node___AIr0l",info:"info___FnWMG",resource:"resource___WYrQp",action:"action___gQRZY",tags:"tags___iMesf",tag:"tag___ImQuD",leftLine:"leftLine___KCWcy",rightLine:"rightLine____XB16",icon:"icon___QEn9F",nodeWrap:"nodeWrap___CLyJX",line:"line___njEbX",statusbutton:"statusbutton___yMqes",checkbox:"checkbox___jNN_4",loading:"loading___zOI_x",allTreeNode:"allTreeNode___csU65"},Ou=Te(95237),sf="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAA1lJREFUWEfFl09oXFUUxn/nvTEpbXXRos4bgwgGRYtZCIILhQSFtgEjgnShCNJV05pMqQstpV1UjW6seY1pFERB6EYEJVJbRMmALgqCixTFlgoupjOjUhdNo0068z65w0ycmcxMJmbk3e39zne+d/69c40Oz45P1PPnbwxZxEgkHjQjJUg5c4OcRM4zfpLH7LY7mftxjy13Qm1rge6ZVnK5yLEInkfctha+fG9c8+B0T4Ljvx6wQjublgL6T6r3L3EkEoeALR05Xg1a9IwTm403Lo/bUjOOpgLcV98o8hni0f/ouN7MOL8pwTPNorFKQN+kBkrGGYm+rjivkJiR9T2Gs2N2oZa3ToD78qUi33fbedWhE9Gb4JHaSKwIcDm/LjJdC3ur8BnntxqD1ZpYEZAKdTwSR7sZ9lZcnvFaLm3HKi0M5aK7yeUNVPt6dS9uuoV+l4pyBFKhTkVidL0sG8F7xkwubfvNTbiref7oeMhsxGt9+V/bHnC7BVPaqRLnusW7Hh7z2WWpUNOR2N/W0Jj3jBcRd0fi8zqsMW/iKYzDEvs8n6cxslGJjxAD7Xg945QlJzUHDLbuGj72U+zL7rG/g0k9Jvi2FpvwGcqOWSYI9abEqwaP5w/ad6n3tVk3eE/ihTYiMhaEuihx3yqQIYwDhXGbcXfJk3qWiA+BW1ewxheFtI3cO6M7FpfKXeTuFvDYWxi3Tyt2o4jpMlvDMeOSJUMtILY2EfBNIW1PDs4pcfECbyni5QZM0fN5KDdmPwehZlz462rMOHH/AK9khqyYDPU14okmPq63FGDGuXzadt/1rrZHRU4LdtYSVNsomNYDusk8kGgQ8JXn89yVl+xqEOqsxK4mqVhonQIo4jNSGLOzkiwIOWQwIehxYd7SS/8vo/Z7MtQsrggrx2BZxpH8OG+bmZJT2k2J2UaB5SlYTkG7IjRk8M62gMNuw0mGGkacMXg9f9CO9k1psFjCFfG/x2fYiS5vUAUm5PaJJvmvGGRcG645BQ1+8Dz2lowUJb40mJTHBMLltr7VfIY9UVDEB4KH12zD2AdR7KPYhaiTNKxnxHaCXfkZOXDsv+NKFOJbSJyA2FeyaipiW0qrhRPrWl4VEevDpCoi1qdZbR/H9jhtHCb/1/P8H/hZr0qiHgOCAAAAAElFTkSuQmCC",D0="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAA/1JREFUWEe1l19oW2UYxp/nNMmWdO1cZmcSW3TYKWwKoh3MmdBVUOmEDSeINvNGGEwRLwRR0Y12FHF44c2qTvEuCaNCRS+KiJiQP512eOFFB3XzX7FNXVnLlrRL8+e8ck6XmS45OUc9O5fnfO/7/L7n/b7vvB9h8dk1OuVaLF3po1QOqMBOEgGBBLRwgnMimFOA88KWr7zOzfGpZ3cVraSm2aC7Ryd9xVLxuCoSBqTdbPzad14lJeba6DnxxzM92WYxhgDd4xc2rCxl31YFrwFotSZcN2qZ5AetW3zDF/fvWG2UoyGANutCcfULQPb8R+GbwvjDBrf76UZu1AF0RiYeqKA8LkCnPeLXiwLOKg48Nftc6KfavOsAtJmvFgvn7BavChKcdbndu2uduAGg1Ty/OJ+wz3YD/4jJjYGu3t/7thfWdtD1JxBNnlAFx+y03SgXyeFsOKRr6QBri65w0Wi1EyiAvGaUUASbAVGswhNccbnd3VopdIBANP2hKupLBtuk0N6mbJs+GMwZCfijqXEAPSLS8S8gTmcPh45SO+EuFxcXjA4ZkkvZcMjbLLE/kvrY4VBOlSvqd9YhmNvq8t5Of3TiSZHy103qZQ4QTUYgzAO4SyiPQ9BixQkq7GcgkhpRIS//H4DaWF8kqR29PisACpWP6Iuk4oDsu0UAywQ+BRkUkZ56DSboj6amReReKwAyiV4Qz9eNJcbYg2+09zccIPIk+7MDoXTgzNmH1HLpx5vjSP5MXzSZg2CTFQArtuoAxKaquA4VTb0HkTcagOe1ElwFpM0OgEER5XQ0dQkKD2cHQvrC9kfSbwnUdxvnZ862Egw9LN9+EsucEshZCPo7OtqPLCzkXjUW1xuZaVsWoTZzXZwS02reOTrRXSlVPheRB5uWjYzbsg190fSxFiA9Gw7GzW2vQSJHbDmIfJHUZ0fDwSODpNq85uv9UBTlCVuOYl8sdZICHwTXBHgREKfpjiGu3Hmfp8P8Z0SsOkH/TDi0ZJRUWwOJBJRf59JtJcGfAvGYA3BkPhx6xdLvGESZgrJZUiEcEDjMxoHIu+nq/m1gz1//NCSR9JAK9bhpsB0DyMH5cGhIS7W+JVvKxiF4xA6NJgdbxuv0Pla9uKxrSrfHvr+jIMVzIui6FRAEZzweZfcvhx69VM1f15Z3ncncX65Uxu2G0MSdCvfPDASnaifX8GKiO6EWxwTYa4cTJDMet3KoduaGDlQ/6K1a+fKbELze7G/ZHJA5kO9vdW45aXRZNb2c3jOW2ba8Iu8Q6gsC3GbFEa2PFGGk1cPhRrM2LUEjkX1xcVyYT/WqKg8A2CmAn4B+PRdgjoDWip1XqHy5w783meij6bmhxf4NftTdgSGLQUwAAAAASUVORK5CYII=",I0="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAsVJREFUWEfFl0tIVGEUx39nZsxoKpGISlqmC42gxwxCEApBUhC0iR7bMLRyhrZRC6Ntecc0CtoVRRshkbKN0iJ0RmtRBj0WLUKLoEAz0po5cWe4zdWZO/czJuauzz3n9/3P6/sE02/qwSp+fm5FM4dRbUSlDqEu+7syjeg0Iq+RwENWbxqh6eiiiWvxNZrq28z870vASdD1vvZZA5kF7hIOddN05lOpf7wB3iWq+aYXED2PEjYLvMxKmEflKrVyhfquhWI+igPkTj0A2vxPgQt+kjHCoSPF1CgEmOzZQVqGQLeWJ7jjRT4SCBxkz7mXbr9LAXInT5U/uAsiHIq4lcgD5HI+Wj7ZvfSTMWqlxamJPEDS6ga9WF7ZPSEuE43ZnUUOwJb+x6/3ntUujBOqPsbOjg+egBNWK6qDRh1jd8eaqm12KnIASasftMPTuXCKSPy2rzrPr+8jnR5Cda2vLXKDaKxTsCfc/MyXkkNGAieIdN3zdwqkevei6UfAutL2Mkt4y0ZhsvcA6fTjksYrAbAdTSaaSeuw7+QMBtuECauPjHaWFcB2lkrE0cy1kn4D0i+kekZQWsoOMJHoIJPpL+2XUSFpvQFtMAZIWneA7Xl7HSQaL2xfEwDkrZCy5nyr1l0DKasdJT+mg7xgd2yg4AAmACLfVw4wcbMGqCqqWM3CIvVd9ioGEwCYM0yBHCcSu591nLLGUY16pGyYaLzNHCCbApMidAMkdqIUv5gE5OvfbWeigNhFaNSGSwD2o7KhqAIhmWHX2afGCmTb0GgQuQCSPc+ASFEAkSdEYoeMAbKDyGgUuwCM5rFJETqj2GgZyWkisVumsXPF6jcJnWVkG/uuY3lFMNhOpsp7HbvpMgsNoPaGbSyequXrOKdCBS8kNkDFr2ROKip2KXWSVdFruQNR0YeJA1HRp5m7dyr2OF3ewP/pef4HW7pxo3nDj9QAAAAASUVORK5CYII=",Cg="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAA75JREFUWEe1l19sU2UYxn9v2dwGzmSoEZJtRhY1StAQtN2YkEUiYOL/C6LhQtPWLQwXwXAlRKsXcjMUJQzFrUaCesGFjptBREJ0iXQmXOGCIQKJZDH4Z2Jm6UZ7HnNqCx30z2ktJ2lz8p3ned7ne8/7ft/5DI9Xb5dunonzJLDSgWVAi0GTjGlgIvM76RPDzXP5NnLMkl6krRSoe7naUileF7yAaCiFd5+bMYn4pL6Rd3Z/Y38U4xQ0EInId/4QbzhiG2KOl8DXYgwu4mP7mhb61x2wVD6NvAb6Vuj2+AyfSTxWSeDrOMaRulrW7Rm1yTwmZw+FOrQUh4MSzVUJnhUxTtfVsnbPqJ3J1Z2Vge4u3ZaMc8ItsKoGv2riVE0j7XuP2MWrQ5k7953/MsKIxOobEjwjanBozZ08ka2JKxkItyviOLx5I4NntX3GK4Mx253uGPfPbbVkip8qrfayTRsX6htoGzhmU2kDoYCGJIJehAx+NzgsuF+w1AunACYSHbO3zF3hEpe44GWRMWPKxAODY3Y2bdyvZ4B+QVu5Rsw4OxSzRRYK6HmJLzwKHI6O2dpcbN/jqotPsgmxVaLRo04a5jMedA18KNHjkfhldMyey4ft7dKC6Utsl3gxW1ulNH0+tlnQrzHg4VLgzPOCBrL8YKce4jLvA8tLaZqx383ArxJ3lAJ7NXDFSLtew2FHUV3jqIX8Sgjqqm0g013jEvcV1DZOWTCguJcOKDcDLj7o18/AokIGDH50MzAhWFjNDLid8c+f7EBsLKZrxtduDYxKdFbLwMsdejaVor/YzLOxDD61sF8fOND3fw10d2hJ0mEn4lGPWu46sMXCAT3tiK88kYyj0ZitysVuXKVbE1O8Legpdy+pNe6xzPtyl+JbSpowEjVG597jdiLSpZrzCXolIhJNJbnXAozxaMwWpzejYEDvITZ5EjESBj9I3A0s8MTJA/IZmwdjtvO/7XiFFiZnOIOor1SwLJ5xrrWVeyMHbCb3g2SD4zBQllCFYJvD+qHv7XOXPuubMOzXfgfWV6jrjWbsi8bM3bDS1ywDW1Zr3uRfxASLvamVhzLj+Nz5dO0aMfc0db0BdyTs112OMYxYUp58cXQ6+E08tes7+y0XmfdgsrlDDX87DEi8VBUTxr558+nOnXnBDOQGDPsVcox3Pa0R+Zwa58zH1mzB5YeUmOKGR9R0OcmrEiHPpyVj3AcfN7cy4LZasRAlT8dZsiTraaczKVaasUyixYwmxDTGBGIC42QNDH8Us9NeX92/T9xk1NzUiXsAAAAASUVORK5CYII=",Pg="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAA9tJREFUWEe9l11sFFUUx///3ZmyrVWMCQsWig+1Kr6w2wZM/CwaP/CBByM8mOhrQyBYt2pMwGD8NmG7tX7yZEx8gsTAg2J4sDUBjJKy1QSjQiNF0WA3tdDalp3Z+ZvZ6W637W5nt906bzNz7v/8zrnnnnsvUeajQ9tr7D8GH6S0TdQGCQ0kGiBIxJ8E/qJwVkEcNWqDfWzvt8qRpp+REq03Z+Dsl6OnBFzvZ+/+J3iF0GfB4IrX2PHd5YXGlATQJ20h+58rewHEJNWV43iuDYlxEAeMtc1vccfhdDGNogBu1LYyRyRsXozjIiAnjdq6J7jz1N/z/s39oHh0o019IWFtNZznNciLpoGt3JP8qVB3VgamIz9ddeczFEOmiU3ckxzOfcoDeHM++k210l4qewROGI3ND+VqIg9gxSOvC3CLbtkfBgL7zOfOvOGtGABe6p3zi632SolJXjWuCzSxvT+VBbAT0Y8dR+2VCi3Fngy8a8bOdDDb4X4/l/JrMqbJcGHx6KO7w9bExGWSGQOhMGPfjuSA9MGmRmvKurhgAyJGjHXNYVpdLY9JzjG/aGo6B+b1jHQ8IhLXzNhAqHC8W9DWyOiknyYDxhba8eiHDrTTz3gugCRaXVFnSQBEwhXpk/RApQCu/ZIzQH7FdDzyC4Db/AAqqoHu1vVWJjPkpwnyR1pdkTEJ9b7Gy2BAMEUrHrnqtwKmG8YYiIk8h1A3axxxIcDAPjk6IGhNObwkh5nuivwM4Xa/AeaqcD2fOf7vzFJrq7emRsey78QFs4Zt3J0c0nutd9hpp7csCPIHdwp6JbT5AZRahoXO83BlQpA8Rjseed8BdlUKkFuGAJ+t6Uz2zB1vJaIvy9GrCzcjxml1Rx5WBscrBShYhuMIBLeaHf0nchpWd8ujyOiIoFkNaq4PMnA/dbDVtMedYUErF4Iwg4GNMIMzJ5ope7UFDWRLwD16TUOU7RxMGY23rvE2ozKnwae3jwM8CGGXX+QeNONmLPm8tx1337Xadq6d/7/6AYlRA7VN7gY2cyBJRPbLwSt+tVCN/wRfMjuT70z3F0/Su3ic+1rCPdVwUkqDRK8RvfERbumzZwFkIdw9fnLyNKT1ywPBQZOhzYVnh3l7vHqid1oWvgR0S3UhOGiuMB/n7u9/LdQtfjHpia6yLX0u4N5qQGTTjtonCyPP6Za+mrk1cWnwBUgvSrphMSButUN822hZGc/N+bxm5CcsNxs29wLO0xJu8rP3CospEJ8aCL1ZLGrfKSjmRIe2B+1Lv90H2dsAbhDQQKEBhATveg7gLMCjxrqmU9xxOFMO7H8KhNHxXAeU2AAAAABJRU5ErkJggg==",Oh="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAcCAYAAAAAwr0iAAAAAXNSR0IArs4c6QAAA05JREFUSEvFl1+IVHUUxz/n3jvOH92HfFpWEi2tWAwLIvChh+1lc9bY7EFS8iGKtIdeCnwxREmEXgyfEoRktdIgKrLdQqRFLURQ0lr/ryy02QwLK9u67uzsvfd39I6uzNyZO3PHQZzH+Z1zvp/f9/x+Z34jNPG5NUCn4/MigmMpkz7kxSGXSpGXLmaaKPUgVOImTfXT7kBvVLwxTIhFTiCf9MhJL7fi1C4B6CCp2QJbjNKDsAxlYZzkqBiB/zVwB/rF5sviNPm2tdwUQcM5EogXC5xVpbMV0Tow54C9CrMi5D0lNz/DsHQxFeRIcYBtRtnxKMTnaorwBcr5cg2x+T35Ghek0M9p4OVHCgAnga/LNdRgUgX6pDDAeKs9bwRvCVdU+Twcl5zH4cCBqoPRqGCz6yL8i7KzIs9Ch/5h/2MDMIbxzOt81zKA1bGRxLOfov407tAH6M3jVQbVcsAIQ5ksf7QEYD+1hcRznz0Q1MIoxcHFsQAQjqWyXG8AYAN+zZY7z+zEWba1Yk292xSPtgWjreL7Wg5MOHzV3s3tSAB76UcEIniTuH+/jxn76X5Rwencg7Pkwyow98pW/Ou7GjpgYDLTw6HSIKp5C5IdJF8dRcQqFVPj4Z57C5P/Eef5fThPvlMl4l3bgXdte023wg6ocjW9hsFIAEkvIdk1Ummv8dCJU1gLX6ne+aWP8Ud2R97OMIA4HE92cznaAcBZsRdn8aa6V17V4A1txh/dVzcuDFCY5dsn1jJRFwAsEiv7sBe9XbN4qS3nN2JyhxvOpXIAVWbSa+ibS2p4CxIrD2Av2lDZDn8G9891mLEjDcVLuyyfhMJIKsvRmABBmE3ihYPYHevvHUhvCvdsL2b8t1jiYQDP4tSC1fzVBECpBFbHBiTzNOa/b9Dp4djiYQC3yA9tbzLWJEBTepFzQBUvdYb9sh3zWAB8uDG/h5/LCVv6LYjry9whdIWTbVkuhgFyd99s7XGLPUycCBeMYdvFGxx5aRNuGOAEUD3eHkYpKkc4kErzrnThhUOCFrwH1B9lLcAET3HLZtW87tLbs/qAqiLFX/helTda0KmZGogr7Epn+STanPsrxV/pVUPP3dfrcmjtjwmQQxi2LA5G7XwO6A7Rr2QOpC6bTgAAAABJRU5ErkJggg==",Th="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAcCAYAAAAAwr0iAAAAAXNSR0IArs4c6QAAAg1JREFUSEvtl09IFFEcx7/fN6hhQS5FiOShEjwUFIWt00FPdYlw25BO/YOOC0XQHmT35EgYHYJOQacugrC7eDa7iLbbpWutWUSGJR1WpSLZfb8YYWtWZ5gZkT3EzPV9v7/vh++8ebxhPGctAnIUQR5ymZBZ1cb0/MXMp7rFLFhntWCEkD4RdAUYpUnOsLN9iPHcqAQwNEhIrktL65nSpfSCWbBSovFYIEboOUpdbQAg+BaUdbdBAhyHoL2+RnJakemalteAtFzoPoHLR07j4J59vhzp4iQ+rn2HUrj9D4BYKiWz3V5uMz92X4t+6AD4DcGEQG4OdvVivH/YN7guuP7yGcqVr1sBWC4lM72eAAUrpbU8ca4bSlVqWnfY4TZE0McVgERVwKyCxysQXBMg7hbydPAGTh7wLG+bxb2BoPguuv8GYEMR9wD19ysQkT6BpPzK2Z0GuH0TmlMPenS1utAUAIJfilcyh51h5wpjp2pav2kKwGYIsUTAcRCxU0RizQPwS/JY3509sMNw2xYBRA1EDUQNRA3YDcTa9uJdZRmrG798z9Tn5Xms/Fzbcif0tXkLevYfwvvVldATaOA8zZx1V4BjgdxETIABiLheAEkuAvgQYFaNwMyrZOYRA4gbJMMyaXzOl+0fEcdNiT9oSKKYyL4IOy80QD2gPz9qAbgFwTfDMO7MJUZmw4bb+j/0UVXnXVodrAAAAABJRU5ErkJggg==",Pv="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAABSZJREFUaEPlWltMHFUY/v+ZWWCBliJbhAopIgaEgsAu0CoJ1jYpaYyJ4UFNrKlPFNrSGl9MBDoFTEyMsaVye2vERF+IL8bQhFpJaGRhuShQt0lBCFgQ2CAU2GV3Zo45S5YsuzPsLCypo/N6/tt3/us5ZxA0/mEo7Od5wtng13yn5DyBwDyPhBwlhBwkiFFUPhKyhogrBHGKgPRHGBP2Sxy8PMjzKOxV/64BtLVZdMOzTAkRXK8BYjEARgdnDFkFQnqQ0/2cmyh1l5ebXMHxb1IHDYAQghevD54RRbESAY/sRqkvDwHymGXZ5qZr+XcQkQQjMygAl/nhQpcgVAGSjGCUqKYlaNVxXOMtPrdPLY8qADxPmL9ESxUBeE+t4L3QIcA3z7KmRp5HKZCcgAAq+bFoIPZPJYm8GkhYKNcZBu8D6j9p5rNWd5K7I4BL1waPCJLQCIApgYwTXBuwtPgIbHNWsK8tgnNjFRz2ZTdbhD4GwsKjQR9lgLiEDIg1pAGnCw8kEgDIJMdwVV9dz3+sRKwIgO68JK7dDmT8k+U/YdL6E9jmrUBEdVURWQ7i4jMgJeN1OBDzXAAgZJJho84reUIWAI35eTLw5U5hY19fgonf78D89JCKnVQmiU/Og9SXzoA+MlaRiIZTPBo/lMsJWQAVNf1Xd0pY29xDeDDwLQgu+56M9zBzOj1kGt+FuIR0RXk0sVvqC274EvgBuFhnKRJdpElJ0vR4Nzwa6QSAgAUiSHAMpGWXQvILJYp8OlZX6VtitwGgTaqiZqBdqc5vGv9jkIYFR56WfVYZBEFrS73xnHez2wagkh8olUSpQU4lDZvfem/vw877amMg5/h5xXBiWKa6mTfSEHB/WwDobDM4I3XIjQc0YS33boYs5gP5hOaE6eQV2cSmY0d+ElPmmZ22AFTwg6eJKH4mJ3xs4DvV1UYfFad7MefNZDk5G/YV58PhjplAAOg6rU5ZxndkSZFlP27h87u2eeBCtbkBkCn15aB13nKvUY1ON030oaQIU8mlLDkGx5rN3tv1+QO1wkwnq+T7BJE6WxuKqrcA0Hl+TuzvkhuJR83tsDA7qlZnSAEYEo9BdtE5Gd1kNYEtOE3PE+4Qck+ZoqvZl5KOBz2ddao7bKg9QDt2cWmt7NjhKaluAEqNa2F2DEbNX6ve/VADoPKOFb0PhxP9I5IgaW+rK7zpBnCh1nIDCCn2tdQ61AGzU8qjOU1YVqdnvfkiow+HZxrfTpNNYseyY8TcPu675lhfcgrONdnOmHi0EDLyyvzFIfa01pmuejzwPQHwqxxDPW3w9+KEogdyTnyQ+kx8uvIQo9J31uGOibmp/iU58kOGVMgrLvdbQoDplvqCtzY9UN13FxBjfKnMd7+A9SfzTxVA5IF4KDr1kb8NhCy3NhSecgMor+nvRQDOl6r7h1qQhI2nCoDhwqHkjTo/GwiA0FZfcPy/AUDzIVRR06/xJN5lGU3PLUuKNaQe9A5QZDkMj4iJkE0cSZIc9iW/pBof65xZmB1ZkeNRVUbLa/uuIEG/nq2ZRqb5UWKnYW7E3A6L//ZhbrOZaXicdg90ITrQhOo8EPSBJlRHSi4sijEkZvqNJXSTRKdDVKo23hVoV0dKKkDTh3oKQPPXKhSEpi+2PHGo6atFCkLzl7ubCa3h63VPKGn6gcMDQtNPTB4Qmn7k8+6Q7hLrhMv7+czKhsGtplqTWeWFxv/sodt7VzT7q4Gcaz0/ewii6xWCmKKJnz3Uxuh+0/0DF9aFXrFDGJoAAAAASUVORK5CYII=",Lh="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAABL5JREFUaEPdWntMW1UY/53b0s4sQAfDPeKWza1kPDIFCjHRRBM3p0xDnG7Z2PxHjVCn0fjYoqF4bYlmmxqNTkp8/OMeuk0N0REnmmiiiYECZgFmaJDFmT1kkDKyzEJ7PnMKl8Dtvb0trY/r/fd8r9/5vvM9zrkMJv9YJuyXZbIO857bI4huAqGYgQpByCPGsoV8RjQOhlECGwBDvxWWUwVS2feyzCLp6p83AFnus13i12qI8xpibDOIHCkZw1iIEZ1kktS6RLquVZZLJlLinyZOGQARsccbu3Zw4k0AVs9HqQbPkMSkhne9FUcZY5SKzJQA7G7svjPCo/sBKk9FSfK0rNsqWfYc9JZ/myxPUgBkmaRL0a59nPhzyQpOh05i0mtLLBV7ZZlxIzmGAJ58KZgzyUNHiajaSFgm1xljbVmSY8fbLzuvJJKbEEC93LMK0UgbERUZGWe3WVDszEVpYS4K8uxwZNuQm50VYxsbn0RofALDo2H0DoyhPziG8ETUSCQYY2dgsVb75bKzesS6AKZ3/icj41cuX4jqO5aj1JkLq9XQoTE7IhFCb3AMbd+dx2/nryYEIkBkSY5b9DyhqVHE/MVo4ItEYZPvsKNm4w2oWp9nuJOJCDpOj6K1/XeMhMK6ZCKcllpc92mdCU0Abk/gQKIDW1rowKPbbsQCuyUt4xXmP8NRvH/sV/QOhHTliYPd7HM9ryaIA+CWOzfwCLXrSdp421JsuWsFWHLRkjRAIuCzr8+h/YeLujxWybpBnWLnmCGKVL0nENDL88L4BzatSNqo+RB+eioRCNbt97lcs4vdHABuT6CWEz+spViEze5dzozvvFqX8MTBQ0HdcJKYtLPZ5zqi8M0AEL3NhcjVX7TaA3FgPU+UZCzmjTwjzoTvnT69gz20zLpwndI7zQBwNwa2cs6PaQl/eOuatLONkdHqdZGdPjw+qMkmSdK2Zq/ruFicAVDf0HGIgJ1qDpHnX3QXp6o/I/SvNPdr1gkGHPY3Ve2aASD6+QvRwLBWS+yudeKmotQ65YxYD+DnMyH4jwTjxTEWWmZxFYh5IuaBqS4z8o2aUrQHr79QlnSFzZThihxRsZ99tUez7VBSagyAXuEqK8lD3fY1mbYrJXktHw+ip280nkdiB1q8lXtiAOo8nV+CaLOa6qH7V+PW8sW6CkNXJnEtbNyUGVm8KMeGBXZJk+zH7sv46PMhrTA62eKrvDcGoN7TMUAEp5rqmUfWoXBVbKzV/N77ZBBdvRq7Y2Sxav2x7WtRXrJIk2vg7Dje+EBk97kfYwj6fVWFUwAaOi4TkK8m8j69Htfn2/9VAH+MhNH45ul4AMCIv6lqsRJCYRDZ1FRveSpgt2m7VtD+Ex4IT3A85evSCqGJFl+l/f8BwPQhZPpDPN80euKrc7H5Nt3vwXtWonhtzvzTaF1j535wipt2TFPITN9KJGrm6muduPm/3sxNFzPzttMCgOkHGtOPlDEvmHmoFwBMf60S84KZL7aUUmjqq0UBwvSXuwKEqa/XlVAy9QOHAsLUT0wKCFM/8s1u0qdSLPb9nc+skhV7m+XKuEs2vZkj5WcKUz90z94F0/5qoOVK5WcPTvxuDioyxc8e6c7BmeL/C6MjFF4PO1ITAAAAAElFTkSuQmCC",ah=Te(43604),wv=Te(66649),qc=Te.n(wv),Mv=Te(22392),O0=Te(83636),lf=Te(1536),Bh=Te(45106),wl=Te(59301),T0=Object.defineProperty,L0=Object.defineProperties,wg=Object.getOwnPropertyDescriptors,Nh=Object.getOwnPropertySymbols,Dv=Object.prototype.hasOwnProperty,Mg=Object.prototype.propertyIsEnumerable,Rh=(E,a,y)=>a in E?T0(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,ih=(E,a)=>{for(var y in a||(a={}))Dv.call(a,y)&&Rh(E,y,a[y]);if(Nh)for(var y of Nh(a))Mg.call(a,y)&&Rh(E,y,a[y]);return E},Fh=(E,a)=>L0(E,wg(a)),kh=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(oe){b(oe)}},ee=ae=>{try{re(y.throw(ae))}catch(oe){b(oe)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});const Iv=({classroomList:E,dispatch:a,courseEndTime:y})=>{const x=(0,be.useParams)(),[b]=xe.default.useForm(),[z,ee]=(0,Ne.useState)(1),[re,ae]=(0,Ne.useState)([]),[oe,de]=(0,Ne.useState)(0),[ge,ye]=(0,Ne.useState)(20),[De,ke]=(0,Ne.useState)(!0),[ze,We]=(0,Ne.useState)([]),[Ve,Ze]=(0,Ne.useState)(!0);x.coursesId=x.pathId,x.id=x.coursesId,(0,Ne.useEffect)(()=>{if(E.actionTabs.key==="\u7ACB\u5373\u53D1\u5E03")if(st(),Ye(),E.actionTabs.type===2){const _t=E.actionTabs.selectArrsAll[0];Ze(_t.unified_setting)}else Ze(!1)},[E.actionTabs]);const Ye=_t=>kh(void 0,null,function*(){ke(!0);const wt=yield(0,Mv.c_)(Fh(ih({},x),{page:_t||z,limit:2e4}));wt==null||wt.course_groups.map(($t,gn)=>{$t.key=$t.id,$t.title=$t.name,$t.disabled=$t.is_published}),wt&&(ae([...wt==null?void 0:wt.course_groups]),de(wt==null?void 0:wt.course_groups_count),ke(!1),_t||b.setFieldsValue({publish_time:qc()(qc()(new Date).add(0,"days").format("YYYY-MM-DD HH:mm")),end_time:qc()(qc()(new Date((0,vt.qd)("/"))).add(7,"days").format("YYYY-MM-DD HH:mm"))}))}),et=()=>kh(void 0,null,function*(){var _t;const wt=ih({},b.getFieldsValue());if(wt.end_time<=wt.publish_time){_e.ZP.info("\u622A\u6B62\u65F6\u95F4\u4E0D\u80FD\u5927\u4E8E\u6216\u7B49\u4E8E\u53D1\u5E03\u65F6\u95F4"),Ot(!1);return}if((ze==null?void 0:ze.length)<=0&&!Ve&&re.length>0){_e.ZP.info("\u53D1\u5E03\u73ED\u7EA7\u4E0D\u80FD\u4E3A\u7A7A"),Ot(!1);return}let $t={ids:[...E.actionTabs.selectArrs],group_ids:ze.length>0?ze.map(Xt=>Xt.id):(_t=E.detailShixunsList)==null?void 0:_t.course_groups,end_time:qc()(wt.end_time).format("YYYY-MM-DD HH:mm"),publish_time:qc()(wt.publish_time).format("YYYY-MM-DD HH:mm"),unified_setting:!ze.length,subject_id:x.pathId};Ot(!0),(yield(0,te.ZP)("/api/subject_knowledge/batch_publish.json",{method:"post",body:ih({},$t)})).status===0?(a({type:"classroomList/setActionTabs",payload:{}}),a({type:"pathsDetail/setActionTabs",payload:{key:"\u66F4\u65B0\u6570\u636E"}}),Ot(!1),st(),(0,vt.L9)(["\u6559\u5B66\u8BFE\u5802","\u8BFE\u7A0B\u5B9E\u9A8C","\u7ACB\u5373\u53D1\u5E03"]),_e.ZP.success("\u53D1\u5E03\u6210\u529F")):Ot(!1)}),st=()=>{ee(1),ae([]),We([])},ht=oe>z*ge,{detailShixunsList:mt}=E,[dt,Ot]=(0,Ne.useState)(!1);return wl.createElement(Me.default,{width:600,centered:!0,confirmLoading:dt,title:"\u53D1\u5E03\u8282\u70B9",open:E.actionTabs.key==="\u7ACB\u5373\u53D1\u5E03",okText:"\u786E\u8BA4\u53D1\u5E03",cancelText:"\u53D6\u6D88",className:Bh.Z.modal,onOk:()=>et(),onCancel:()=>{st(),a({type:"classroomList/setActionTabs",payload:{}})}},wl.createElement("p",null,"\u5230\u8FBE\u53D1\u5E03\u65F6\u95F4\u540E\uFF0C\u5B66\u751F\u5C06\u5728\u5404\u6559\u5B66\u6A21\u5757\u4E2D\u67E5\u770B\u5230\u5B66\u4E60\u8DEF\u5F84\u7684\u4F5C\u4E1A\u3001\u8003\u8BD5\u3001\u89C6\u9891\u3001\u8D44\u6E90\u7B49",wl.createElement("br",null),"\u53D1\u5E03\u64CD\u4F5C\u4EC5\u9488\u5BF9\u672A\u53D1\u5E03\u8D44\u6E90\u7684\u5206\u73ED\u751F\u6548"),wl.createElement(xe.default,{form:b},wl.createElement("div",{style:{paddingLeft:0}},wl.createElement(Ou.Z,{className:"mt30",align:"middle"},wl.createElement(ah.Z,null,wl.createElement(xe.default.Item,{name:"publish_time",label:"\u53D1\u5E03\u65F6\u95F4"},wl.createElement(Et.default,{style:{width:170,marginRight:"25px"},disabledDate:_t=>(0,lf.Q8)(_t,y),disabledTime:_t=>(0,lf.d0)(_t),placeholder:"\u8BF7\u9009\u62E9\u53D1\u5E03\u65F6\u95F4",showTime:{format:"HH:mm",defaultValue:qc()((0,vt.U6)(),"HH:mm")},format:"YYYY-MM-DD HH:mm",allowClear:!1}))),wl.createElement(ah.Z,{className:"ml20"},wl.createElement(xe.default.Item,{name:"end_time",label:"\u622A\u6B62\u65F6\u95F4:"},wl.createElement(Et.default,{style:{width:170},placeholder:"\u8BF7\u9009\u62E9\u622A\u6B62\u65F6\u95F4",showTime:{format:"HH:mm",defaultValue:qc()((0,vt.U6)(),"HH:mm")},disabledDate:_t=>(0,lf.Q8)(_t,y,b.getFieldValue("publish_time")),disabledTime:_t=>(0,lf.d0)(_t,b.getFieldValue("publish_time")),format:"YYYY-MM-DD HH:mm",allowClear:!1})))),E.actionTabs.type===2&&wl.createElement(Ou.Z,{style:{marginBottom:"10px"}},wl.createElement("span",{className:"mr5"},"\u53D1\u5E03\u8BBE\u7F6E:"),wl.createElement(pe.ZP.Group,{value:Ve,onChange:_t=>{Ze(_t.target.value),We([])}},wl.createElement(pe.ZP,{value:!0,disabled:!E.actionTabs.manage_all_group},"\u7EDF\u4E00\u53D1\u5E03"),wl.createElement(pe.ZP,{className:"ml20",disabled:re.length<=0,value:!1},"\u5206\u73ED\u53D1\u5E03"))),re.length<=0&&E.actionTabs.type===2&&wl.createElement("span",{style:{marginLeft:"65px",color:"rgba(0, 0, 0, 0.25)"}},'\u8BFE\u5802\u65E0\u5206\u73ED\uFF0C\u4EC5\u652F\u6301\u9009\u62E9\u201C\u7EDF\u4E00\u53D1\u5E03"')),(E.actionTabs.type===1||!Ve)&&re.length>0&&wl.createElement("div",{style:{display:"flex",justifyContent:"space-between",marginBottom:"10px"}},wl.createElement("span",{style:{flex:1}},wl.createElement(ga.default,{checked:ze.length===re.length,onChange:_t=>{ze.length===re.length?We([]):We(re)}},"\u5168\u9009")),wl.createElement("span",{style:{width:16}}),wl.createElement("span",{style:{flex:1}},"\u5DF2\u9009\u62E9",ze.length||0,"\u4E2A\u5206\u73ED")),(E.actionTabs.type===1||!Ve)&&re.length>0&&wl.createElement(O0.Z,{data:re,selectedRowKeys:ze,setSelectedRowKeys:We})))};var _s=(0,be.connect)(({classroomList:E})=>({classroomList:E}))(Iv),fi=Te(59301),fc=Object.defineProperty,xd=Object.defineProperties,Sd=Object.getOwnPropertyDescriptors,Dg=Object.getOwnPropertySymbols,Ig=Object.prototype.hasOwnProperty,Og=Object.prototype.propertyIsEnumerable,_h=(E,a,y)=>a in E?fc(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,Bf=(E,a)=>{for(var y in a||(a={}))Ig.call(a,y)&&_h(E,y,a[y]);if(Dg)for(var y of Dg(a))Og.call(a,y)&&_h(E,y,a[y]);return E},Zm=(E,a)=>xd(E,Sd(a)),Nf=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(oe){b(oe)}},ee=ae=>{try{re(y.throw(ae))}catch(oe){b(oe)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});const Ov=[{name:"\u672A\u53D1\u5E03",color:"#9AA4B3"},{name:"\u5DF2\u53D1\u5E03",color:"#37AD83"},{name:"\u672A\u5F00\u542F",color:"#92D2B7"},{name:"\u672A\u901A\u5173",color:"#EE5D5D"},{name:"\u6309\u65F6\u901A\u5173",color:"#37AD83"},{name:"\u8865\u4EA4\u901A\u5173",color:"#288A67"},{name:"\u622A\u6B62\u540E\u901A\u5173",color:"#929628"},{name:"\u672A\u5F00\u59CB",color:"#92D2B7"},{name:"\u8003\u8BD5\u4E2D",color:"#FFC86B"},{name:"\u5DF2\u4EA4\u5377",color:"#37AD83"},{name:"\u5DF2\u4EA4\u5377/\u672A\u7B54",color:"#929628"},{name:"\u672A\u770B\u5B8C",color:"#FFC86B"},{name:"\u5DF2\u770B\u5B8C",color:"#37AD83"},{name:"\u672A\u67E5\u770B",color:"#9AA4B3"},{name:"\u5DF2\u67E5\u770B",color:"#37AD83"},{name:"\u5DF2\u4E0B\u8F7D",color:"#377DFF"}],uf=({pathsDetail:E,setselectitems:a,publishshow:y,node:x,index:b,onExpandClick:z,onClickDetails:ee,selectitems:re})=>{var ae,oe,de;const[ge,ye]=(0,Ne.useState)(!1),De=(0,Ne.useRef)(null),{name:ke,complete_rate:ze,node_type:We,resource_info:Ve,grasp_rate:Ze,has_children:Ye,children:et,expand:st,key:ht,is_publish:mt,status:dt,id:Ot,url:_t}=x||{};(0,Ne.useEffect)(()=>{var yn;wt();const Cn=(yn=De.current)==null?void 0:yn.parentElement;if(!Cn)return;const qn=new ResizeObserver(()=>{wt()});return qn.observe(Cn),()=>{qn.disconnect()}},[st]);const wt=()=>{if(!De.current)return;const yn=De.current,Cn=yn.parentElement,qn=yn.previousElementSibling,pn=Cn==null?void 0:Cn.firstElementChild;if(Cn&&qn&&pn){const lr=qn.getBoundingClientRect().height,Jr=Cn.getBoundingClientRect().height,na=pn.getBoundingClientRect().height,Hr=lr/2,Ar=Jr-(na+lr)/2;yn.style.bottom=`${Hr}px`,yn.style.height=`${Ar}px`}},$t=(ae=Number(ze))==null?void 0:ae.toFixed(0),gn=$t==="100",Xt=gn?We==="\u5B9E\u8BAD"?"\u5DF2\u901A\u5173":"\u5DF2\u5B8C\u6210":`${$t}%`,Tn=Ve==null?void 0:Ve.reduce((yn,Cn)=>yn+Cn.value,0),er={\u5B9E\u8BAD:sf,\u8BD5\u5377:D0,\u8BFE\u4EF6:I0,\u89C6\u9891:Cg},En=()=>{z(ht)};return fi.createElement("div",{className:ul.treeNode,"data-index":b},fi.createElement("div",{className:ul.node,style:gn?{background:"#EDF7EE"}:{}},!mt&&!((oe=E==null?void 0:E.detail)!=null&&oe.can_managed)&&fi.createElement("div",{style:{background:"rgba(0, 0, 0, 0.5)",width:"100%",height:"100%",position:"absolute",zIndex:5,left:"50%",bottom:0,transform:"translateX(-50%)",textAlign:"center",paddingTop:"30rem",borderRadius:"10rem"}},fi.createElement("div",null,fi.createElement("i",{className:"iconfont icon-suo1",style:{color:"#fff",fontSize:"28rem"}}),fi.createElement("div",{style:{color:"#fff",fontSize:"12rem"}},"\u8D44\u6E90\u6682\u672A\u53D1\u5E03"))),fi.createElement("div",{className:ul.statusbutton,style:{background:(de=Ov.find(yn=>yn.name===dt))==null?void 0:de.color}},dt),y&&fi.createElement(ga.default,{checked:re==null?void 0:re.map(yn=>yn.id).includes(Ot),onChange:()=>{if(re!=null&&re.map(yn=>yn.id).includes(Ot))a(re.filter(yn=>yn.id!==Ot));else{let yn=[...re];yn.push(x),a(yn)}},className:ul.checkbox}),fi.createElement(Ou.Z,{style:{padding:Ye?"initial":"3rem 0"}},fi.createElement(on.Z,{title:"\u5B8C\u6210\u7387"},fi.createElement("div",{style:{flexShrink:0,marginLeft:"24rem",marginTop:"17rem"}},fi.createElement(Pt,{strokeColor:"#60C059",percentage:ze,startAngle:270,trackColor:"#E3E8EF",text:Xt,textSize:"12rem",textColor:"#60C059",outerDiameter:"62rem",innerDiameter:"46rem",textPadding:"3rem",hoverEffect:!1}))),fi.createElement("div",{className:ul.info},fi.createElement(Ou.Z,{align:"middle"},fi.createElement(on.Z,{title:We},fi.createElement("img",{src:er[We]||Pg,style:{marginRight:"10rem",width:"16rem"}})),fi.createElement(on.Z,{title:ke},fi.createElement("b",{onClick:()=>{ee(x)},className:"c-grey-333 current",style:{fontSize:"16rem"}},(0,vt.Pq)(ke,19)))),fi.createElement(Ou.Z,{align:"middle",style:{marginTop:"5rem",marginLeft:"26rem",marginBottom:Ye?"0":"30rem"}},fi.createElement(Ou.Z,{align:"middle"},fi.createElement(on.Z,{title:"\u638C\u63E1\u7387"},fi.createElement("img",{src:Oh,style:{marginRight:"4rem",width:"16rem"}})),fi.createElement("span",{style:{color:"#1B8565",fontSize:"14rem"}},Ze,"%")),fi.createElement(Ou.Z,{align:"middle",style:{marginLeft:"55rem"}},fi.createElement(on.Z,{title:"\u5B8C\u6210\u7387"},fi.createElement("img",{src:Th,style:{marginRight:"4rem",width:"16rem"}})),fi.createElement("span",{style:{color:"#1B8565",fontSize:"14rem"}},ze,"%"))),Ye&&fi.createElement(Ou.Z,{className:ul.resource},fi.createElement("span",{style:{color:"#666",fontSize:"14rem"}},"\u8D44\u6E90\u6570\uFF1A",Tn),fi.createElement("div",{onClick:()=>ye(!ge),className:ul.action},ge?fi.createElement(fi.Fragment,null,"\u6536\u8D77",fi.createElement("i",{className:"iconfont icon-xialajiantou1",style:{transform:"scale(0.6)"}})):fi.createElement(fi.Fragment,null,"\u5C55\u5F00",fi.createElement("i",{className:"iconfont icon-xialajiantoubeifen",style:{transform:"scale(0.6)"}})))))),ge&&fi.createElement("div",{className:ul.tags},Ve==null?void 0:Ve.map((yn,Cn)=>fi.createElement(on.Z,{title:yn.name},fi.createElement("div",{className:ul.tag,key:Cn},(0,vt.Pq)(yn.name,5),"\uFF1A",yn.value)))),b.length>1&&fi.createElement("div",{className:ul.leftLine}),st&&fi.createElement("div",{className:ul.rightLine}),Ye&&fi.createElement("img",{onClick:En,className:ul.icon,src:st?Lh:Pv})),et&&et.length>0&&st&&fi.createElement("div",{className:ul.nodeWrap},et.map((yn,Cn)=>fi.createElement(uf,{key:yn.key,onExpandClick:z,onClickDetails:ee,publishshow:y,setselectitems:a,pathsDetail:E,selectitems:re,node:yn,index:b+"-"+(Cn+1)})),et.length>1&&fi.createElement("div",{ref:De,className:ul.line})))},Qm=({data:E,onExpandClick:a,selectitems:y,onClickDetails:x,pathsDetail:b,setselectitems:z,publishshow:ee})=>fi.createElement("div",{className:ul.treeNode},fi.createElement("div",{className:ul.nodeWrap},E.map((re,ae)=>fi.createElement(uf,{key:re.key,onExpandClick:a,onClickDetails:x,pathsDetail:b,publishshow:ee,selectitems:y,setselectitems:z,node:re,index:String(ae+1)}))));var Ym=({visible:E,onCancel:a,subjectId:y,onClickDetails:x,pathsDetail:b,dispatch:z})=>{var ee;const[re,ae]=(0,Ne.useState)([]),[oe,de]=(0,Ne.useState)(!0),[ge,ye]=(0,Ne.useState)("\u5168\u90E8"),[De,ke]=(0,Ne.useState)([]),[ze]=(0,be.useSearchParams)(),[We,Ve]=(0,Ne.useState)(!1),[Ze,Ye]=(0,Ne.useState)([]);(0,Ne.useEffect)(()=>{st()},[ge]),(0,Ne.useEffect)(()=>{b.actionTabs.key==="\u66F4\u65B0\u6570\u636E"&&(z({type:"pathsDetail/setActionTabs",payload:{key:""}}),st())},[b.actionTabs.key]);const et=(_t,wt)=>Nf(void 0,null,function*(){const $t=yield(0,te.ZP)("/api/subject_knowledge.json",{method:"get",params:{id:_t,subject_id:y,node_type:ge}});if(($t==null?void 0:$t.status)===0)return wt&&ke(($t==null?void 0:$t.node_types)||[]),($t==null?void 0:$t.data)||[];de(!1)}),st=()=>Nf(void 0,null,function*(){de(!0);const _t=yield et(E,!0);ae(_t),de(!1)}),ht=(_t,wt,$t)=>Nf(void 0,null,function*(){return yield Promise.all(_t.map(Xt=>Nf(void 0,null,function*(){return Xt.key===wt?yield $t(Xt):Xt.children&&Xt.children.length>0?Zm(Bf({},Xt),{children:yield ht(Xt.children,wt,$t)}):Xt})))}),mt=_t=>Nf(void 0,null,function*(){de(!0);const wt=yield ht(re,_t,$t=>Nf(void 0,null,function*(){var gn,Xt;const Tn=Zm(Bf({},$t),{expand:!($t!=null&&$t.expand)});return!($t!=null&&$t.expand)&&!((gn=$t==null?void 0:$t.children)!=null&&gn.length)&&(Tn.children=yield et(_t),((Xt=Tn.children)==null?void 0:Xt.length)===0&&(Tn.has_children=!1,Tn.expand=!1)),Tn}));ae(wt),de(!1)}),dt=_t=>Nf(void 0,null,function*(){de(!0),yield x(_t,!1),de(!1)});return fi.createElement("div",{className:ul.tree},fi.createElement("div",{className:ul.center},fi.createElement("div",{className:ul.head},fi.createElement("div",{className:ul.del},fi.createElement("i",{onClick:a,className:"iconfont icon-shanchuhuanjing"}),fi.createElement("b",null))),fi.createElement("div",{className:ul.body},oe&&fi.createElement("div",{className:ul.loading},fi.createElement(ce.Z,{spinning:!0})),fi.createElement("div",{style:{display:"flex",justifyContent:"space-between"}},fi.createElement("div",{className:ul.tabs,style:{flex:1}},De==null?void 0:De.map(_t=>fi.createElement("div",{onClick:()=>ye(_t.node_type),className:_t.node_type===ge?ul.active:void 0,key:_t.node_type},_t.node_type,"\uFF08",_t.count,"\uFF09"))),ze.get("type")==="classrooms"&&((ee=b==null?void 0:b.detail)==null?void 0:ee.can_managed)&&fi.createElement("div",null,We&&fi.createElement(ga.default,{style:{color:"#fff"},checked:(Ze==null?void 0:Ze.length)===(re==null?void 0:re.length),onChange:()=>{if((Ze==null?void 0:Ze.length)===(re==null?void 0:re.length))Ye([]);else{Ve(!0);let _t=[...re];Ye(_t)}}},(Ze==null?void 0:Ze.length)===(re==null?void 0:re.length)?"\u53D6\u6D88\u5168\u9009":"\u5168\u9009","\uFF08\u5F53\u524D\u9009\u4E2D",Ze==null?void 0:Ze.length,"\uFF09"),We&&fi.createElement(ve.ZP,{style:{marginRight:"20rem",borderRadius:"24rem"},onClick:()=>Ve(!1)},"\u53D6\u6D88"),fi.createElement(ve.ZP,{type:"primary",onClick:()=>Nf(void 0,null,function*(){if(We)z({type:"classroomList/setActionTabs",payload:{key:"\u7ACB\u5373\u53D1\u5E03",selectArrs:Ze==null?void 0:Ze.map(_t=>_t.id)}});else{Ve(!0);let _t=[...re];Ye(_t)}}),style:{borderRadius:"24rem"}},We?"\u6279\u91CF\u53D1\u5E03":"\u53D1\u5E03\u8282\u70B9"))),fi.createElement("div",{className:ul.scrollBox},fi.createElement("div",{className:Gn()(ul.treeWarp,!0&&ul.allTreeNode)},fi.createElement(Qm,{pathsDetail:b,selectitems:Ze,setselectitems:Ye,publishshow:We,data:re,onClickDetails:dt,onExpandClick:mt}))))),fi.createElement(_s,null))},Xm=Te(90700),Yi=Te(59301),HE=Object.defineProperty,VE=Object.defineProperties,Jm=Object.getOwnPropertyDescriptors,qm=Object.getOwnPropertySymbols,KE=Object.prototype.hasOwnProperty,ZE=Object.prototype.propertyIsEnumerable,Tv=(E,a,y)=>a in E?HE(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,oh=(E,a)=>{for(var y in a||(a={}))KE.call(a,y)&&Tv(E,y,a[y]);if(qm)for(var y of qm(a))ZE.call(a,y)&&Tv(E,y,a[y]);return E},Lv=(E,a)=>VE(E,Jm(a)),zh=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(oe){b(oe)}},ee=ae=>{try{re(y.throw(ae))}catch(oe){b(oe)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});const QE=[3,2,1];var oo=({xxljac:E,pathsDetail:a,dispatch:y,setxxljac:x})=>{var b,z,ee;const re=(0,be.useParams)(),ae=(0,be.useSelector)(ti=>ti),{pathsDetail:{detail:oe={}}}=ae,[de,ge]=(0,Ne.useState)(!0),[ye,De]=(0,Ne.useState)(!1),[ke,ze]=(0,Ne.useState)(""),[We,Ve]=(0,Ne.useState)(!1),[Ze,Ye]=(0,Ne.useState)(!1),[et,st]=(0,Ne.useState)(!1),[ht,mt]=(0,Ne.useState)(""),[dt,Ot]=(0,Ne.useState)({}),[_t,wt]=(0,Ne.useState)([]),[$t,gn]=(0,Ne.useState)(""),[Xt,Tn]=(0,Ne.useState)([]),[er,En]=(0,Ne.useState)(!1),[yn,Cn]=(0,Ne.useState)(1),[qn,pn]=(0,Ne.useState)({});let[lr,Jr]=(0,Ne.useState)({});const na=oe==null?void 0:oe.can_managed,[Hr]=(0,be.useSearchParams)();(0,Ne.useEffect)(()=>{co(E)},[E]);function Ar(){return zh(this,null,function*(){var ti;let qi=[...(ti=a==null?void 0:a.detail)==null?void 0:ti.nodes];Tn(qi==null?void 0:qi.splice(1))})}(0,Ne.useEffect)(()=>{var ti;(ti=a==null?void 0:a.detail)!=null&&ti.nodes&&yn===1&&(Ar(),Cn(2))},[(b=a==null?void 0:a.detail)==null?void 0:b.nodes]);const Wr=(ti=null)=>zh(void 0,null,function*(){var qi;ge(!0);const Gi=yield(0,te.ZP)("/api/subject_knowledge.json",{method:"get",params:{id:ti,subject_id:re==null?void 0:re.pathId}});if((Gi==null?void 0:Gi.status)===0){Ot(Gi||{});const fo=(Gi==null?void 0:Gi.parent_knowledges)||[];wt(fo),ti||gn((qi=fo==null?void 0:fo[0])==null?void 0:qi.id)}ge(!1),Hr.get("type")==="classrooms"?y({type:"pathsDetail/getCourseDetail",payload:oh({id:re.pathId,knowledge:!0},(0,vt.oP)())}):y({type:"pathsDetail/getPathsDetail",payload:oh({id:re.pathId,knowledge:!0},(0,vt.oP)())})}),ya=()=>zh(void 0,null,function*(){var ti,qi,Gi,fo,Po,Es,as,yi,Ri,Sa;if(!ht){_e.ZP.warning("\u8BF7\u8F93\u5165\u6587\u672C");return}if(ht!=="\u786E\u8BA4\u5220\u9664"){_e.ZP.warning("\u6587\u672C\u8F93\u5165\u6709\u8BEF");return}st(!0);const Fa=yield(0,te.ZP)("/api/subject_knowledge.json",{method:"delete",body:{id:$t,subject_id:re==null?void 0:re.pathId}});if((Fa==null?void 0:Fa.status)===0)if(_e.ZP.success("\u5220\u9664\u6210\u529F"),Ve(!1),Hr.get("type")==="classrooms"){let ni=yield y({type:"pathsDetail/getCourseDetail",payload:oh({id:(ti=a==null?void 0:a.detail)==null?void 0:ti.id,knowledge:!0},(0,vt.oP)())});co((Gi=(qi=ni==null?void 0:ni.route_nodes)==null?void 0:qi[0])==null?void 0:Gi.id,((Po=(fo=ni==null?void 0:ni.route_nodes)==null?void 0:fo[0])==null?void 0:Po.name)||"\u5B66\u4E60\u8DEF\u5F84")}else{let ni=yield y({type:"pathsDetail/getPathsDetail",payload:oh({id:(Es=a==null?void 0:a.detail)==null?void 0:Es.id,knowledge:!0},(0,vt.oP)())});co((yi=(as=ni==null?void 0:ni.route_nodes)==null?void 0:as[0])==null?void 0:yi.id,((Sa=(Ri=ni==null?void 0:ni.route_nodes)==null?void 0:Ri[0])==null?void 0:Sa.name)||"\u5B66\u4E60\u8DEF\u5F84")}st(!1)}),Ra=(ti,qi=!0)=>zh(void 0,null,function*(){var Gi,fo,Po,Es,as,yi,Ri;if((ti==null?void 0:ti.container_type)==="Attachment"&&!((Gi=a==null?void 0:a.detail)!=null&&Gi.can_managed)){(0,Xm.fc)({id:ti==null?void 0:ti.container_id,watch_type:2,course_id:(fo=a==null?void 0:a.detail)==null?void 0:fo.id}),pn({url:Mn.Z.API_SERVER+(ti==null?void 0:ti.url),file_type:ti==null?void 0:ti.file_type});return}if(ti!=null&&ti.url){window.open(ti==null?void 0:ti.url);return}qi&&ge(!0);let Sa=yield(0,te.ZP)("/api/knowledge/v2/get_node.json",{method:"get",params:{depth:0,subject_id:re==null?void 0:re.pathId,nodeUuid:(ti==null?void 0:ti.knowledge_uuid)||(ti==null?void 0:ti.key)}});if((Sa==null?void 0:Sa.status)===0){if(((Es=(Po=Sa==null?void 0:Sa.data)==null?void 0:Po.nodes)==null?void 0:Es.length)>0){let Fa=(Ri=(yi=(as=Sa==null?void 0:Sa.data)==null?void 0:as.nodes)==null?void 0:yi.map(ni=>{var Ki,Oa,xo,Qi,Hs,fs,Ds,Is,As,Fo,fd,hd,yu;const $s=(Ki=Sa==null?void 0:Sa.data)==null?void 0:Ki.resource_count;return Lv(oh({},ni==null?void 0:ni.properties),{rootNodeUuid:(Oa=ni==null?void 0:ni.properties)==null?void 0:Oa.rootNodeUuid,id:(xo=ni==null?void 0:ni.properties)==null?void 0:xo.uuid,name:(Qi=ni==null?void 0:ni.properties)==null?void 0:Qi.name,description:(Hs=ni==null?void 0:ni.properties)==null?void 0:Hs.description,nodeType:(fs=ni==null?void 0:ni.properties)==null?void 0:fs.nodeType,tags:((Ds=ni==null?void 0:ni.properties)==null?void 0:Ds.tags)&&((Fo=(As=(Is=ni==null?void 0:ni.properties)==null?void 0:Is.tags)==null?void 0:As.split("\uFF0C"))==null?void 0:Fo.map(xc=>({name:xc})))||[],colorType:parseInt((fd=ni==null?void 0:ni.properties)==null?void 0:fd.color)>3?"3":(hd=ni==null?void 0:ni.properties)==null?void 0:hd.color,activeColor:"#FA6400",size:QE[((yu=ni==null?void 0:ni.properties)==null?void 0:yu.color)-1]||1,shape:"circle",hide:!1,isExtendedState:!0,currentResourceTotal:$s})}))==null?void 0:Ri[0];Fa.resourceid=ti==null?void 0:ti.id,Jr(Fa),En(!0)}ge(!1)}}),Aa=ti=>zh(void 0,null,function*(){Ye(ti==null?void 0:ti.id)}),co=(ti,qi)=>zh(void 0,null,function*(){qi?x(ti):(gn(ti),Wr(ti))}),So=()=>Yi.createElement("div",{className:fu.studentHead},Yi.createElement("div",{className:fu.headLi},Yi.createElement("img",{src:Jc}),Yi.createElement("aside",null,Yi.createElement("span",null,"\u8D44\u6E90\u603B\u6570"),Yi.createElement("b",null,dt==null?void 0:dt.resource_count))),Yi.createElement("div",{className:fu.headLi},Yi.createElement("img",{src:yd}),Yi.createElement("aside",null,Yi.createElement("span",null,"\u5B66\u4E60\u5B8C\u6210\u7387"),Yi.createElement("b",{style:{color:"#F7B500"}},dt==null?void 0:dt.complete_rate,"%"))),Yi.createElement("div",{className:fu.headLi},Yi.createElement("img",{src:Lf}),Yi.createElement("aside",null,Yi.createElement("span",null,"\u5B66\u4E60\u638C\u63E1\u7387"),Yi.createElement("b",{style:{color:"#3AFFC8"}},dt==null?void 0:dt.grasp_rate,"%"))),Yi.createElement("div",{className:fu.headLi},Yi.createElement("img",{src:af}),Yi.createElement("aside",null,Yi.createElement("span",{style:{marginBottom:"10rem"}},"\u4E0A\u6B21\u5B66\u5230"),Yi.createElement(on.Z,{title:dt==null?void 0:dt.last_knowledge_name},Yi.createElement("b",{style:{color:"#7FAAFF",fontSize:"16rem"}},(0,vt.Pq)(dt==null?void 0:dt.last_knowledge_name,13))))),Yi.createElement("div",{onClick:()=>Ra({knowledge_uuid:dt==null?void 0:dt.last_knowledge_uuid,id:dt==null?void 0:dt.last_knowledge_uuid}),className:fu.btn},"\u7EE7\u7EED\u5B66\u4E60"));return Yi.createElement(Yi.Fragment,null,Yi.createElement(Qt,null,Yi.createElement(Yi.Fragment,null,Yi.createElement("span",{className:"relative",style:{float:"right"}},na&&Yi.createElement("div",{className:fu.addBtn,onClick:()=>{ze(null),De(!0)}},"\u521B\u5EFA\u5B66\u4E60\u8DEF\u5F84")),Yi.createElement("div",{className:fu.learning},Yi.createElement("div",{className:fu.body},Yi.createElement(ce.Z,{spinning:de},(z=dt==null?void 0:dt.data)!=null&&z.length?Yi.createElement(Yi.Fragment,null,na?Yi.createElement("div",{className:fu.head},Yi.createElement("div",{className:fu.numerical},Yi.createElement("div",null,Yi.createElement("img",{src:Jc}),Yi.createElement("span",null,"\u8D44\u6E90\u603B\u6570"),Yi.createElement("b",null,dt==null?void 0:dt.resource_count)),Yi.createElement("div",null,Yi.createElement("img",{src:yd}),Yi.createElement("span",null,"\u5E73\u5747\u5B66\u4E60\u5B8C\u6210\u7387"),Yi.createElement("b",{style:{color:"#F7B500"}},dt==null?void 0:dt.complete_rate,"%")),Yi.createElement("div",null,Yi.createElement("img",{src:Lf}),Yi.createElement("span",null,"\u5E73\u5747\u5B66\u4E60\u638C\u63E1\u7387"),Yi.createElement("b",{style:{color:"#3AFFC8"}},dt==null?void 0:dt.grasp_rate,"%"))),Yi.createElement("div",{className:fu.action},Yi.createElement("div",{onClick:()=>{ze($t),De(!0)}},Yi.createElement("span",null,Yi.createElement("i",{className:"iconfont icon-bianji13"})),Yi.createElement("span",null,"\u7F16\u8F91\u5B66\u4E60\u8DEF\u5F84")),Yi.createElement("div",{onClick:()=>Ve(!0)},Yi.createElement("span",null,Yi.createElement("i",{className:"iconfont icon-shanchu17"})),Yi.createElement("span",null,"\u5220\u9664\u5B66\u4E60\u8DEF\u5F84")))):So(),Yi.createElement(qr,{pathsDetail:a,dataSource:(dt==null?void 0:dt.data)||[],onClick:Ra,onMore:Aa})):Yi.createElement(mr,{style:{height:"calc(100vh - 440rem)",visibility:de?"hidden":"visible"},text:"\u6682\u65E0\u5B66\u4E60\u8DEF\u5F84\u6570\u636E",textColor:"#fff",buttonText:na&&"\u521B\u5EFA\u5B66\u4E60\u8DEF\u5F84",onClick:()=>{ze(null),De(!0)}}))),Ze&&Yi.createElement(Ym,{pathsDetail:a,subjectId:re==null?void 0:re.pathId,dispatch:y,visible:Ze,onCancel:()=>Ye(!1),onClickDetails:Ra}),ye&&Yi.createElement(ts,{onOk:co,setaddmodal:De,addmodal:ye,uuid:ke}),Yi.createElement(Me.default,{title:"\u786E\u8BA4\u5220\u9664\u63D0\u793A",open:We,centered:!0,confirmLoading:et,okButtonProps:{danger:!0},width:"600rem",okText:"\u786E\u8BA4\u5220\u9664",onCancel:()=>Ve(!1),cancelText:"\u53D6\u6D88",afterClose:()=>{mt("")},onOk:ya},Yi.createElement("div",{style:{background:"#fff",boxShadow:"0 3rem 4rem 0 #F3F3F3",borderRadius:"2rem",padding:"20rem"}},Yi.createElement("div",{style:{fontSize:"16rem",color:"#000"}},"\u8BF7\u786E\u8BA4\u662F\u5426\u5220\u9664\u300A",(ee=_t==null?void 0:_t.find(ti=>ti.id===$t))==null?void 0:ee.name,"\u300B\u7684\u5B66\u4E60\u8DEF\u5F84\uFF1F\u82E5\u5DF2\u786E\u8BA4\u9700\u8981\u5220\u9664\u5B66\u4E60\u8DEF\u5F84\uFF0C\u8BF7\u5728\u4E0B\u65B9\u6587\u672C\u6846\u4E2D\u8F93\u5165\u201C\u786E\u8BA4\u5220\u9664\u201D\u6587\u672C\u540E\uFF0C\u70B9\u51FB\u201C\u786E\u8BA4\u5220\u9664\u201D\u6309\u94AE"),Yi.createElement("div",{style:{fontSize:"16rem",color:"#E30000",margin:"20rem 0"}},"\u63D0\u793A\uFF1A\u5220\u9664\u540E\u5C06\u65E0\u6CD5\u6062\u590D\u5B66\u4E60\u8DEF\u5F84\uFF0C\u8BF7\u8C28\u614E\u64CD\u4F5C\u3002"),Yi.createElement(Se.default,{size:"large",placeholder:"\u8BF7\u8F93\u5165\u201C\u786E\u8BA4\u5220\u9664\u201D\u6587\u672C",value:ht,onChange:ti=>mt(ti.target.value)})))))),Yi.createElement(bg,{initdata:()=>{},uuid:"\u5B66\u4E60\u8DEF\u5F84",Tabsdatas:Xt,setshow:()=>{},getData:Wr,buildTree:()=>{},containerRef:()=>{},showdetail:er,setshowdetail:En,items:lr}),Yi.createElement(kc.Z,{close:!0,style:{zIndex:1300,background:"rgba(1, 10, 35, 0.5)"},data:qn==null?void 0:qn.url,type:qn==null?void 0:qn.file_type,disabledDownload:!0,onClose:()=>pn({})}))},Do=Te(78673),Ro=Te(59301),Wl=Object.defineProperty,cf=Object.getOwnPropertySymbols,$c=Object.prototype.hasOwnProperty,df=Object.prototype.propertyIsEnumerable,ff=(E,a,y)=>a in E?Wl(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,Tg=(E,a)=>{for(var y in a||(a={}))$c.call(a,y)&&ff(E,y,a[y]);if(cf)for(var y of cf(a))df.call(a,y)&&ff(E,y,a[y]);return E},sh=(E,a)=>{var y={};for(var x in E)$c.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&cf)for(var x of cf(E))a.indexOf(x)<0&&df.call(E,x)&&(y[x]=E[x]);return y},ed=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(oe){b(oe)}},ee=ae=>{try{re(y.throw(ae))}catch(oe){b(oe)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});const ET=E=>{var a=E,{pathsDetail:y,user:x,globalSetting:b,loading:z,dispatch:ee,datas:re,styles:ae,activied:oe}=a,de=sh(a,["pathsDetail","user","globalSetting","loading","dispatch","datas","styles","activied"]);const[ge,ye]=(0,Ne.useState)(!1),[De,ke]=(0,Ne.useState)([]),[ze,We]=(0,Ne.useState)([]),[Ve,Ze]=(0,Ne.useState)(),[Ye,et]=(0,Ne.useState)([]),[st,ht]=(0,Ne.useState)(!1);(0,Ne.useEffect)(()=>{ge&&mt()},[ge]),(0,Ne.useEffect)(()=>{ht(oe===2)},[oe]);function mt(){return ed(this,null,function*(){var dt,Ot;let _t=yield(0,te.ZP)("/api/knowledge/v2/courses.json",{method:"get",params:{subject_id:(dt=y==null?void 0:y.detail)==null?void 0:dt.id}});(_t==null?void 0:_t.status)===0&&We(_t==null?void 0:_t.data);let wt=yield(0,te.ZP)("/api/knowledge/v2/get_node.json",{method:"get",params:{depth:1,subject_id:y.detail.id}});if((wt==null?void 0:wt.status)===0){let $t=[...(Ot=wt==null?void 0:wt.data)==null?void 0:Ot.nodes];ke($t==null?void 0:$t.splice(1))}})}return Ro.createElement("div",{style:Tg({width:"128rem"},ae)},Ro.createElement("span",{onClick:()=>{ye(!0)},style:{width:"128rem",height:"36rem",lineHeight:"36rem",display:"inline-block",textAlign:"center",background:"#fff",color:"#1B8565",fontSize:"14rem",borderRadius:"20rem",cursor:"pointer"}},"\u5173\u8054\u6559\u5B66\u8BFE\u5802"),Ro.createElement(Me.default,{title:"\u5173\u8054\u6559\u5B66\u8BFE\u5802",open:ge,width:"860rem",centered:!0,onOk:()=>ed(void 0,null,function*(){if(!Ve){_e.ZP.info("\u8BF7\u9009\u62E9\u6559\u5B66\u8BFE\u5802");return}if((Ye==null?void 0:Ye.length)<=0){_e.ZP.info("\u8BF7\u9009\u62E9\u77E5\u8BC6\u56FE\u8C31");return}let dt=yield(0,te.ZP)("/api/knowledge/v2/send_to_course.json",{method:"post",body:{subject_id:y.detail.id,uuids:Ye,course_id:Ve,send_route:st}});(dt==null?void 0:dt.status)===0&&(ye(!1),Me.default.warning({title:"\u6E29\u99A8\u63D0\u793A",icon:null,closeIcon:!0,centered:!0,content:Ro.createElement("div",null,"\u5DF2\u5173\u8054\u6559\u5B66\u8BFE\u5802\uFF0C\u9884\u8BA13-7\u5206\u949F\u5185\u5B8C\u6210\u56FE\u8C31\u590D\u5236\uFF0C\u53EF\u70B9\u51FB\u4E0B\u65B9\u6309\u94AE\u524D\u5F80\u67E5\u770B\u3002 \u82E5\u9875\u9762\u65E0\u6570\u636E\uFF0C\u8BF7\u7B49\u5F853-7\u5206\u949F\u540E\u5237\u65B0\u8BFE\u5802\u77E5\u8BC6\u56FE\u8C31\u9875\u9762"),okText:"\u524D\u5F80\u67E5\u770B",onOk:()=>{var Ot;window.open(`${(Ot=ze==null?void 0:ze.find(_t=>(_t==null?void 0:_t.id)===Ve))==null?void 0:Ot.first_category_url}`)}}))}),onCancel:()=>{ye(!1)}},Ro.createElement("div",{style:{background:"#fff",boxShadow:"0rem 3rem 4rem 0rem #f3f3f3",borderRadius:"0rem 0rem 2rem 2rem",padding:"20rem"}},Ro.createElement("div",{style:{height:"40rem",minHeight:"40rem",display:"flex"}},Ro.createElement("span",{style:{width:"92rem",background:"#F6F7F9",border:"1px solid #DCDCDC",display:"inline-flex",alignItems:"center",justifyContent:"center",borderRight:"none",color:"#666666"}},"\u6559\u5B66\u8BFE\u5802"),Ro.createElement(Qt,null,Ro.createElement(xt.default,{showSearch:!0,filterOption:(dt,Ot)=>Ot.children.toLowerCase().indexOf(dt.toLowerCase())>=0,onChange:dt=>{Ze(dt)},style:{width:"90%"},size:"large"},ze==null?void 0:ze.map(dt=>Ro.createElement(xt.default.Option,{value:dt==null?void 0:dt.id},dt==null?void 0:dt.name))))),Ro.createElement("div",{style:{marginTop:"30rem"}},Ro.createElement("span",{style:{marginLeft:"14rem",color:"#5F6368"}},"\u77E5\u8BC6\u56FE\u8C31"),Ro.createElement(ga.default.Group,{onChange:dt=>{et(dt)},style:{marginLeft:"30rem"}},De==null?void 0:De.map(dt=>{var Ot,_t;return Ro.createElement(ga.default,{value:(Ot=dt==null?void 0:dt.properties)==null?void 0:Ot.uuid},(_t=dt==null?void 0:dt.properties)==null?void 0:_t.name)}))),Ro.createElement("div",{style:{marginTop:"30rem"}},Ro.createElement("span",{style:{marginLeft:"14rem",color:"#5F6368"}},"\u5B66\u4E60\u8DEF\u5F84"),Ro.createElement(Do.Z,{onChange:dt=>{console.log(dt),ht(dt)},style:{marginLeft:"30rem"},disabled:oe===2,checked:st}),Ro.createElement("span",{style:{marginLeft:"5rem"}},"\u540C\u6B65\u53D1\u9001\uFF08\u5F00\u542F\u540E\uFF0C\u5C06\u56FE\u8C31\u4E2D\u5BF9\u5E94\u7684\u5B66\u4E60\u8DEF\u5F84\u53D1\u9001\u5230\u6559\u5B66\u8BFE\u5802\u4E2D\uFF09")))))};var AT=(0,be.connect)(({pathsDetail:E,user:a,loading:y,globalSetting:x})=>({pathsDetail:E,user:a,globalSetting:x,loading:y.models.index}))(ET),$m=Te(38854),hf={tag:"tag___aFk2e",active:"active___xFrif",tagsModal:"tagsModal___PRPSO",btn:"btn___IfO8v",modal:"modal___X3fUd",mHead:"mHead___IvIZN",body:"body___FhLrG",add:"add___YJGg_",error:"error___JoLGM"},Ml=Te(59301),xT=Object.defineProperty,pC=Object.getOwnPropertySymbols,ST=Object.prototype.hasOwnProperty,bT=Object.prototype.propertyIsEnumerable,yC=(E,a,y)=>a in E?xT(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,CT=(E,a)=>{for(var y in a||(a={}))ST.call(a,y)&&yC(E,y,a[y]);if(pC)for(var y of pC(a))bT.call(a,y)&&yC(E,y,a[y]);return E},YE=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(oe){b(oe)}},ee=ae=>{try{re(y.throw(ae))}catch(oe){b(oe)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())}),EC=({value:E=[],onChange:a,type:y,subjectId:x})=>{const[b,z]=(0,Ne.useState)(!1),[ee,re]=(0,Ne.useState)([]),[ae,oe]=(0,Ne.useState)([]),[de,ge]=(0,Ne.useState)([]),[ye,De]=(0,Ne.useState)(""),[ke,ze]=(0,Ne.useState)(""),[We,Ve]=(0,Ne.useState)(!1),[Ze,Ye]=(0,Ne.useState)(!1),et=[{background:"#6236FF",borderColor:"#9D82FF"},{background:"#6DB9FF",borderColor:"#6DB9FF"},{background:"rgba(27,175,234,0.8)",borderColor:"#68D5FF"},{background:"#C1AC15",borderColor:"#DCC51C"},{background:"#E07E37",borderColor:"#F79046"},{background:"rgba(29,94,255,0.8)",borderColor:"#6D97FE"},{background:"#E75454",borderColor:"#FE8383"},{background:"#A557D8",borderColor:"#C57AF6"},{background:"#2CA768",borderColor:"#43CC86"},{background:"#1F9269",borderColor:"#38B588"},{background:"#CA7720",borderColor:"#E99338"},{background:"rgba(224,32,32,0.8)",borderColor:"#E02020"},{background:"rgba(255,126,15,0.8)",borderColor:"#FF7E0F"},{background:"rgba(29,94,255,0.8)",borderColor:"#1D5EFF"},{background:"#2BAC8E",borderColor:"#30CB9D"},{background:"#EE5D5D",borderColor:"#FF8181"},{background:"#7E5AFE",borderColor:"#9173FA"},{background:"#3ABCEF",borderColor:"#6FD6FF"},{background:"#B132C2",borderColor:"#C57AF6"},{background:"#46A4FB",borderColor:"#72BBFF"},{background:"#C1AC15",borderColor:"#DCC51C"},{background:"#E07E37",borderColor:"#F79046"},{background:"#1D5EFF",borderColor:"#6D97FE"},{background:"#2CA768",borderColor:"#43CC86"},{background:"#A557D8",borderColor:"#C57AF6"},{background:"#1F9269",borderColor:"#38B588"},{background:"#CA7720",borderColor:"#E99338"}],st=y===1?"\u7C7B\u578B":"\u6807\u7B7E",ht=y===1?"0":"4";(0,Ne.useEffect)(()=>{b&&(ge(E),mt())},[b]);const mt=()=>YE(void 0,null,function*(){var $t;Ye(!0);const gn=yield(0,te.ZP)("/api/knowledge_items.json",{method:"get",params:{subject_id:x,item_type:ht}});(gn==null?void 0:gn.status)===0&&(re(($t=gn==null?void 0:gn.data)==null?void 0:$t.map(Xt=>Xt.name)),oe((gn==null?void 0:gn.data)||[])),Ye(!1)}),dt=$t=>YE(void 0,null,function*(){var gn;Ye(!0);const Xt=(gn=ae==null?void 0:ae.find(er=>er.name===$t))==null?void 0:gn.id,Tn=yield(0,te.ZP)(`/api/knowledge_items/${Xt}.json`,{method:"delete",body:{subject_id:x}});if((Tn==null?void 0:Tn.status)===0){mt(),_e.ZP.success("\u5220\u9664\u6210\u529F");return}Ye(!1)}),Ot=({title:$t="",style:gn={},showDelete:Xt=!0,modal:Tn=!1,active:er=!1})=>{const yn=(pn=>pn.split("").reduce((lr,Jr)=>lr+Jr.charCodeAt(0),0))($t)%et.length,{background:Cn,borderColor:qn}=et[yn];return Ml.createElement("div",{className:Gn()(hf.tag,er?hf.active:""),onClick:()=>{Tn&&(b===1&&ge([$t]),b===2&&(de.includes($t)?ge(de.filter(pn=>pn!==$t)):ge([...de,$t])))},style:CT({background:Cn,borderColor:qn},gn)},Ml.createElement("span",null,$t),Xt&&Ml.createElement("i",{onClick:pn=>{pn.stopPropagation(),Tn?dt($t):a(E.filter(lr=>lr!==$t))},className:"iconfont icon-shanchu5"}))},_t=()=>{a([...de]),z(!1)},wt=()=>YE(void 0,null,function*(){if(!ye.replace(/\s+/g,"")){ze(`${st}\u4E0D\u80FD\u4E3A\u7A7A`);return}if(ee.includes(ye)){ze(`\u8BE5${st}\u5DF2\u5B58\u5728\uFF0C\u8BF7\u52FF\u91CD\u590D\u6DFB\u52A0\uFF01`);return}Ye(!0);const $t=yield(0,te.ZP)("/api/knowledge_items.json",{method:"post",body:{subject_id:x,item_type:ht,name:ye}});if(($t==null?void 0:$t.status)===0){yield mt(),Ve(!1),_e.ZP.success("\u6DFB\u52A0\u6210\u529F");return}Ye(!1)});return Ml.createElement("div",{className:hf.tagsModal},y===1&&Ml.createElement(Ml.Fragment,null,E==null?void 0:E.map(($t,gn)=>Ml.createElement(Ot,{key:gn,title:$t,showDelete:!1,style:{marginRight:"20rem"}})),Ml.createElement("div",{onClick:()=>z(1),style:{marginBottom:"20rem"},className:hf.btn},Ml.createElement("i",{className:"iconfont icon-genghuanguanliyuan1"}),E!=null&&E.length?"\u66F4\u6362":"\u9009\u62E9","\u7C7B\u578B")),y===2&&Ml.createElement(Ml.Fragment,null,E==null?void 0:E.map(($t,gn)=>Ml.createElement(Ot,{key:gn,title:$t})),Ml.createElement("div",{onClick:()=>z(2),className:hf.btn,style:{marginBottom:"10rem"}},Ml.createElement("i",{className:"iconfont icon-tianjiatixing"}),E!=null&&E.length?"\u66F4\u6362":"\u9009\u62E9","\u6807\u7B7E")),Ml.createElement(Me.default,{open:!!b,centered:!0,width:"1000rem",okText:"\u4FDD\u5B58",onCancel:()=>z(!1),cancelText:"\u53D6\u6D88",afterClose:()=>{Ve(!1),ze(""),De("")},onOk:_t,title:`\u9009\u62E9${st}`},Ml.createElement("div",{className:hf.modal},Ml.createElement(ce.Z,{spinning:Ze},Ml.createElement("div",{className:hf.mHead},Ml.createElement("b",null),Ml.createElement("span",null,`\u8282\u70B9${st}`,"\uFF08",ee.length,"\uFF09"),Ml.createElement("div",{onClick:()=>{We||(Ve(!0),ze(""),De(""))},className:hf.btn},Ml.createElement("i",{className:"iconfont icon-tianjiatixing"}),"\u6DFB\u52A0")),Ml.createElement("div",{className:hf.body},!(ee!=null&&ee.length)&&!We&&Ml.createElement(mr,{style:{height:"230rem"}}),ee==null?void 0:ee.map(($t,gn)=>Ml.createElement(Ot,{showDelete:!(de!=null&&de.includes($t)),modal:!0,style:{cursor:"pointer",verticalAlign:"center",marginTop:"10rem",marginBottom:"10rem"},active:de.includes($t),key:gn,title:$t})),We&&Ml.createElement("div",{className:hf.add},Ml.createElement(Se.default,{style:{width:"rem"},size:"large",value:ye,onChange:$t=>{ze(""),De($t.target.value)}}),Ml.createElement("i",{onClick:wt,className:"iconfont icon-dui",style:{color:"#1B8565"}}),Ml.createElement("i",{onClick:()=>Ve(!1),className:"iconfont icon-shanchu10",style:{color:"#9096A3"}}),!!ke&&Ml.createElement("div",{className:hf.error},ke)))))))},PT={flex_box_center:"flex_box_center___X1Bk6",flex_space_between:"flex_space_between___uybt7",flex_box_vertical_center:"flex_box_vertical_center___eRrsT",flex_box_center_end:"flex_box_center_end___twuIC",flex_box_column:"flex_box_column___GZ7ID",tabs:"tabs___lQRiO",activied:"activied___xuukl",tab:"tab___BDDdU",content:"content___Njpry"},wT=Te(88522),ps=Te(33885),Ha=Te(67732),Va=Te(83652),zs=Te(94480),ep=Te(58289),MT=Te(75538),DT=Te(85458);function bs(E,a,y){return a=(0,ep.Z)(a),(0,DT.Z)(E,(0,MT.Z)()?Reflect.construct(a,y||[],(0,ep.Z)(E).constructor):a.apply(E,y))}var Cs=Te(42403),Ps=Te(42978),IT=Te(37271),AC=IT,Ql=1e-6,xu=typeof Float32Array!="undefined"?Float32Array:Array,DX=Math.random,OT="zyx";function IX(E){return E>=0?Math.round(E):E%.5===0?Math.floor(E):Math.round(E)}function OX(E){xu=E}var TT=Math.PI/180,LT=180/Math.PI;function TX(E){return E*TT}function LX(E){return E*LT}function BX(E,a){var y=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Ql;return Math.abs(E-a)<=y*Math.max(1,Math.abs(E),Math.abs(a))}function js(){var E=new xu(3);return xu!=Float32Array&&(E[0]=0,E[1]=0,E[2]=0),E}function lh(E){var a=new xu(3);return a[0]=E[0],a[1]=E[1],a[2]=E[2],a}function uh(E){var a=E[0],y=E[1],x=E[2];return Math.sqrt(a*a+y*y+x*x)}function Yl(E,a,y){var x=new xu(3);return x[0]=E,x[1]=a,x[2]=y,x}function Rf(E,a){return E[0]=a[0],E[1]=a[1],E[2]=a[2],E}function Pc(E,a,y,x){return E[0]=a,E[1]=y,E[2]=x,E}function jh(E,a,y){return E[0]=a[0]+y[0],E[1]=a[1]+y[1],E[2]=a[2]+y[2],E}function XE(E,a,y){return E[0]=a[0]-y[0],E[1]=a[1]-y[1],E[2]=a[2]-y[2],E}function BT(E,a,y){return E[0]=a[0]*y[0],E[1]=a[1]*y[1],E[2]=a[2]*y[2],E}function NX(E,a,y){return E[0]=a[0]/y[0],E[1]=a[1]/y[1],E[2]=a[2]/y[2],E}function RX(E,a){return E[0]=Math.ceil(a[0]),E[1]=Math.ceil(a[1]),E[2]=Math.ceil(a[2]),E}function FX(E,a){return E[0]=Math.floor(a[0]),E[1]=Math.floor(a[1]),E[2]=Math.floor(a[2]),E}function NT(E,a,y){return E[0]=Math.min(a[0],y[0]),E[1]=Math.min(a[1],y[1]),E[2]=Math.min(a[2],y[2]),E}function RT(E,a,y){return E[0]=Math.max(a[0],y[0]),E[1]=Math.max(a[1],y[1]),E[2]=Math.max(a[2],y[2]),E}function kX(E,a){return E[0]=glMatrix.round(a[0]),E[1]=glMatrix.round(a[1]),E[2]=glMatrix.round(a[2]),E}function tp(E,a,y){return E[0]=a[0]*y,E[1]=a[1]*y,E[2]=a[2]*y,E}function _X(E,a,y,x){return E[0]=a[0]+y[0]*x,E[1]=a[1]+y[1]*x,E[2]=a[2]+y[2]*x,E}function FT(E,a){var y=a[0]-E[0],x=a[1]-E[1],b=a[2]-E[2];return Math.sqrt(y*y+x*x+b*b)}function zX(E,a){var y=a[0]-E[0],x=a[1]-E[1],b=a[2]-E[2];return y*y+x*x+b*b}function jX(E){var a=E[0],y=E[1],x=E[2];return a*a+y*y+x*x}function UX(E,a){return E[0]=-a[0],E[1]=-a[1],E[2]=-a[2],E}function WX(E,a){return E[0]=1/a[0],E[1]=1/a[1],E[2]=1/a[2],E}function Lg(E,a){var y=a[0],x=a[1],b=a[2],z=y*y+x*x+b*b;return z>0&&(z=1/Math.sqrt(z)),E[0]=a[0]*z,E[1]=a[1]*z,E[2]=a[2]*z,E}function Gd(E,a){return E[0]*a[0]+E[1]*a[1]+E[2]*a[2]}function np(E,a,y){var x=a[0],b=a[1],z=a[2],ee=y[0],re=y[1],ae=y[2];return E[0]=b*ae-z*re,E[1]=z*ee-x*ae,E[2]=x*re-b*ee,E}function JE(E,a,y,x){var b=a[0],z=a[1],ee=a[2];return E[0]=b+x*(y[0]-b),E[1]=z+x*(y[1]-z),E[2]=ee+x*(y[2]-ee),E}function GX(E,a,y,x){var b=Math.acos(Math.min(Math.max(Gd(a,y),-1),1)),z=Math.sin(b),ee=Math.sin((1-x)*b)/z,re=Math.sin(x*b)/z;return E[0]=ee*a[0]+re*y[0],E[1]=ee*a[1]+re*y[1],E[2]=ee*a[2]+re*y[2],E}function HX(E,a,y,x,b,z){var ee=z*z,re=ee*(2*z-3)+1,ae=ee*(z-2)+z,oe=ee*(z-1),de=ee*(3-2*z);return E[0]=a[0]*re+y[0]*ae+x[0]*oe+b[0]*de,E[1]=a[1]*re+y[1]*ae+x[1]*oe+b[1]*de,E[2]=a[2]*re+y[2]*ae+x[2]*oe+b[2]*de,E}function VX(E,a,y,x,b,z){var ee=1-z,re=ee*ee,ae=z*z,oe=re*ee,de=3*z*re,ge=3*ae*ee,ye=ae*z;return E[0]=a[0]*oe+y[0]*de+x[0]*ge+b[0]*ye,E[1]=a[1]*oe+y[1]*de+x[1]*ge+b[1]*ye,E[2]=a[2]*oe+y[2]*de+x[2]*ge+b[2]*ye,E}function KX(E,a){a=a===void 0?1:a;var y=glMatrix.RANDOM()*2*Math.PI,x=glMatrix.RANDOM()*2-1,b=Math.sqrt(1-x*x)*a;return E[0]=Math.cos(y)*b,E[1]=Math.sin(y)*b,E[2]=x*a,E}function wc(E,a,y){var x=a[0],b=a[1],z=a[2],ee=y[3]*x+y[7]*b+y[11]*z+y[15];return ee=ee||1,E[0]=(y[0]*x+y[4]*b+y[8]*z+y[12])/ee,E[1]=(y[1]*x+y[5]*b+y[9]*z+y[13])/ee,E[2]=(y[2]*x+y[6]*b+y[10]*z+y[14])/ee,E}function kT(E,a,y){var x=a[0],b=a[1],z=a[2];return E[0]=x*y[0]+b*y[3]+z*y[6],E[1]=x*y[1]+b*y[4]+z*y[7],E[2]=x*y[2]+b*y[5]+z*y[8],E}function _T(E,a,y){var x=y[0],b=y[1],z=y[2],ee=y[3],re=a[0],ae=a[1],oe=a[2],de=b*oe-z*ae,ge=z*re-x*oe,ye=x*ae-b*re;return de=de+de,ge=ge+ge,ye=ye+ye,E[0]=re+ee*de+b*ye-z*ge,E[1]=ae+ee*ge+z*de-x*ye,E[2]=oe+ee*ye+x*ge-b*de,E}function ZX(E,a,y,x){var b=[],z=[];return b[0]=a[0]-y[0],b[1]=a[1]-y[1],b[2]=a[2]-y[2],z[0]=b[0],z[1]=b[1]*Math.cos(x)-b[2]*Math.sin(x),z[2]=b[1]*Math.sin(x)+b[2]*Math.cos(x),E[0]=z[0]+y[0],E[1]=z[1]+y[1],E[2]=z[2]+y[2],E}function QX(E,a,y,x){var b=[],z=[];return b[0]=a[0]-y[0],b[1]=a[1]-y[1],b[2]=a[2]-y[2],z[0]=b[2]*Math.sin(x)+b[0]*Math.cos(x),z[1]=b[1],z[2]=b[2]*Math.cos(x)-b[0]*Math.sin(x),E[0]=z[0]+y[0],E[1]=z[1]+y[1],E[2]=z[2]+y[2],E}function YX(E,a,y,x){var b=[],z=[];return b[0]=a[0]-y[0],b[1]=a[1]-y[1],b[2]=a[2]-y[2],z[0]=b[0]*Math.cos(x)-b[1]*Math.sin(x),z[1]=b[0]*Math.sin(x)+b[1]*Math.cos(x),z[2]=b[2],E[0]=z[0]+y[0],E[1]=z[1]+y[1],E[2]=z[2]+y[2],E}function XX(E,a){var y=E[0],x=E[1],b=E[2],z=a[0],ee=a[1],re=a[2],ae=Math.sqrt((y*y+x*x+b*b)*(z*z+ee*ee+re*re)),oe=ae&&Gd(E,a)/ae;return Math.acos(Math.min(Math.max(oe,-1),1))}function JX(E){return E[0]=0,E[1]=0,E[2]=0,E}function qX(E){return"vec3("+E[0]+", "+E[1]+", "+E[2]+")"}function $X(E,a){return E[0]===a[0]&&E[1]===a[1]&&E[2]===a[2]}function Bv(E,a){var y=E[0],x=E[1],b=E[2],z=a[0],ee=a[1],re=a[2];return Math.abs(y-z)<=Ql*Math.max(1,Math.abs(y),Math.abs(z))&&Math.abs(x-ee)<=Ql*Math.max(1,Math.abs(x),Math.abs(ee))&&Math.abs(b-re)<=Ql*Math.max(1,Math.abs(b),Math.abs(re))}var zT=XE,eJ=null,tJ=null,xC=FT,nJ=null,SC=uh,rJ=null,aJ=function(){var E=js();return function(a,y,x,b,z,ee){var re,ae;for(y||(y=3),x||(x=0),b?ae=Math.min(b*y+x,a.length):ae=a.length,re=x;re<ae;re+=y)E[0]=a[re],E[1]=a[re+1],E[2]=a[re+2],z(E,E,ee),a[re]=E[0],a[re+1]=E[1],a[re+2]=E[2];return a}}();function Ff(){var E=new xu(4);return xu!=Float32Array&&(E[0]=0,E[1]=0,E[2]=0,E[3]=0),E}function jT(E){var a=new xu(4);return a[0]=E[0],a[1]=E[1],a[2]=E[2],a[3]=E[3],a}function Nv(E,a,y,x){var b=new xu(4);return b[0]=E,b[1]=a,b[2]=y,b[3]=x,b}function UT(E,a){return E[0]=a[0],E[1]=a[1],E[2]=a[2],E[3]=a[3],E}function WT(E,a,y,x,b){return E[0]=a,E[1]=y,E[2]=x,E[3]=b,E}function GT(E,a,y){return E[0]=a[0]+y[0],E[1]=a[1]+y[1],E[2]=a[2]+y[2],E[3]=a[3]+y[3],E}function iJ(E,a,y){return E[0]=a[0]-y[0],E[1]=a[1]-y[1],E[2]=a[2]-y[2],E[3]=a[3]-y[3],E}function oJ(E,a,y){return E[0]=a[0]*y[0],E[1]=a[1]*y[1],E[2]=a[2]*y[2],E[3]=a[3]*y[3],E}function sJ(E,a,y){return E[0]=a[0]/y[0],E[1]=a[1]/y[1],E[2]=a[2]/y[2],E[3]=a[3]/y[3],E}function lJ(E,a){return E[0]=Math.ceil(a[0]),E[1]=Math.ceil(a[1]),E[2]=Math.ceil(a[2]),E[3]=Math.ceil(a[3]),E}function uJ(E,a){return E[0]=Math.floor(a[0]),E[1]=Math.floor(a[1]),E[2]=Math.floor(a[2]),E[3]=Math.floor(a[3]),E}function cJ(E,a,y){return E[0]=Math.min(a[0],y[0]),E[1]=Math.min(a[1],y[1]),E[2]=Math.min(a[2],y[2]),E[3]=Math.min(a[3],y[3]),E}function dJ(E,a,y){return E[0]=Math.max(a[0],y[0]),E[1]=Math.max(a[1],y[1]),E[2]=Math.max(a[2],y[2]),E[3]=Math.max(a[3],y[3]),E}function fJ(E,a){return E[0]=glMatrix.round(a[0]),E[1]=glMatrix.round(a[1]),E[2]=glMatrix.round(a[2]),E[3]=glMatrix.round(a[3]),E}function HT(E,a,y){return E[0]=a[0]*y,E[1]=a[1]*y,E[2]=a[2]*y,E[3]=a[3]*y,E}function hJ(E,a,y,x){return E[0]=a[0]+y[0]*x,E[1]=a[1]+y[1]*x,E[2]=a[2]+y[2]*x,E[3]=a[3]+y[3]*x,E}function gJ(E,a){var y=a[0]-E[0],x=a[1]-E[1],b=a[2]-E[2],z=a[3]-E[3];return Math.sqrt(y*y+x*x+b*b+z*z)}function vJ(E,a){var y=a[0]-E[0],x=a[1]-E[1],b=a[2]-E[2],z=a[3]-E[3];return y*y+x*x+b*b+z*z}function VT(E){var a=E[0],y=E[1],x=E[2],b=E[3];return Math.sqrt(a*a+y*y+x*x+b*b)}function KT(E){var a=E[0],y=E[1],x=E[2],b=E[3];return a*a+y*y+x*x+b*b}function mJ(E,a){return E[0]=-a[0],E[1]=-a[1],E[2]=-a[2],E[3]=-a[3],E}function pJ(E,a){return E[0]=1/a[0],E[1]=1/a[1],E[2]=1/a[2],E[3]=1/a[3],E}function ZT(E,a){var y=a[0],x=a[1],b=a[2],z=a[3],ee=y*y+x*x+b*b+z*z;return ee>0&&(ee=1/Math.sqrt(ee)),E[0]=y*ee,E[1]=x*ee,E[2]=b*ee,E[3]=z*ee,E}function QT(E,a){return E[0]*a[0]+E[1]*a[1]+E[2]*a[2]+E[3]*a[3]}function yJ(E,a,y,x){var b=y[0]*x[1]-y[1]*x[0],z=y[0]*x[2]-y[2]*x[0],ee=y[0]*x[3]-y[3]*x[0],re=y[1]*x[2]-y[2]*x[1],ae=y[1]*x[3]-y[3]*x[1],oe=y[2]*x[3]-y[3]*x[2],de=a[0],ge=a[1],ye=a[2],De=a[3];return E[0]=ge*oe-ye*ae+De*re,E[1]=-(de*oe)+ye*ee-De*z,E[2]=de*ae-ge*ee+De*b,E[3]=-(de*re)+ge*z-ye*b,E}function YT(E,a,y,x){var b=a[0],z=a[1],ee=a[2],re=a[3];return E[0]=b+x*(y[0]-b),E[1]=z+x*(y[1]-z),E[2]=ee+x*(y[2]-ee),E[3]=re+x*(y[3]-re),E}function EJ(E,a){a=a===void 0?1:a;var y,x,b,z,ee,re,ae;ae=glMatrix.RANDOM(),y=ae*2-1,x=(4*glMatrix.RANDOM()-2)*Math.sqrt(ae*-ae+ae),ee=y*y+x*x,ae=glMatrix.RANDOM(),b=ae*2-1,z=(4*glMatrix.RANDOM()-2)*Math.sqrt(ae*-ae+ae),re=b*b+z*z;var oe=Math.sqrt((1-ee)/re);return E[0]=a*y,E[1]=a*x,E[2]=a*b*oe,E[3]=a*z*oe,E}function ch(E,a,y){var x=a[0],b=a[1],z=a[2],ee=a[3];return E[0]=y[0]*x+y[4]*b+y[8]*z+y[12]*ee,E[1]=y[1]*x+y[5]*b+y[9]*z+y[13]*ee,E[2]=y[2]*x+y[6]*b+y[10]*z+y[14]*ee,E[3]=y[3]*x+y[7]*b+y[11]*z+y[15]*ee,E}function AJ(E,a,y){var x=y[0],b=y[1],z=y[2],ee=y[3],re=a[0],ae=a[1],oe=a[2],de=b*oe-z*ae,ge=z*re-x*oe,ye=x*ae-b*re;return de=de+de,ge=ge+ge,ye=ye+ye,E[0]=re+ee*de+b*ye-z*ge,E[1]=ae+ee*ge+z*de-x*ye,E[2]=oe+ee*ye+x*ge-b*de,E[3]=a[3],E}function xJ(E){return E[0]=0,E[1]=0,E[2]=0,E[3]=0,E}function SJ(E){return"vec4("+E[0]+", "+E[1]+", "+E[2]+", "+E[3]+")"}function XT(E,a){return E[0]===a[0]&&E[1]===a[1]&&E[2]===a[2]&&E[3]===a[3]}function bJ(E,a){var y=E[0],x=E[1],b=E[2],z=E[3],ee=a[0],re=a[1],ae=a[2],oe=a[3];return Math.abs(y-ee)<=glMatrix.EPSILON*Math.max(1,Math.abs(y),Math.abs(ee))&&Math.abs(x-re)<=glMatrix.EPSILON*Math.max(1,Math.abs(x),Math.abs(re))&&Math.abs(b-ae)<=glMatrix.EPSILON*Math.max(1,Math.abs(b),Math.abs(ae))&&Math.abs(z-oe)<=glMatrix.EPSILON*Math.max(1,Math.abs(z),Math.abs(oe))}var CJ=null,PJ=null,wJ=null,MJ=null,DJ=null,IJ=null,OJ=null,TJ=function(){var E=Ff();return function(a,y,x,b,z,ee){var re,ae;for(y||(y=4),x||(x=0),b?ae=Math.min(b*y+x,a.length):ae=a.length,re=x;re<ae;re+=y)E[0]=a[re],E[1]=a[re+1],E[2]=a[re+2],E[3]=a[re+3],z(E,E,ee),a[re]=E[0],a[re+1]=E[1],a[re+2]=E[2],a[re+3]=E[3];return a}}();function jl(){var E=new xu(16);return xu!=Float32Array&&(E[1]=0,E[2]=0,E[3]=0,E[4]=0,E[6]=0,E[7]=0,E[8]=0,E[9]=0,E[11]=0,E[12]=0,E[13]=0,E[14]=0),E[0]=1,E[5]=1,E[10]=1,E[15]=1,E}function bC(E){var a=new xu(16);return a[0]=E[0],a[1]=E[1],a[2]=E[2],a[3]=E[3],a[4]=E[4],a[5]=E[5],a[6]=E[6],a[7]=E[7],a[8]=E[8],a[9]=E[9],a[10]=E[10],a[11]=E[11],a[12]=E[12],a[13]=E[13],a[14]=E[14],a[15]=E[15],a}function B0(E,a){return E[0]=a[0],E[1]=a[1],E[2]=a[2],E[3]=a[3],E[4]=a[4],E[5]=a[5],E[6]=a[6],E[7]=a[7],E[8]=a[8],E[9]=a[9],E[10]=a[10],E[11]=a[11],E[12]=a[12],E[13]=a[13],E[14]=a[14],E[15]=a[15],E}function CC(E,a,y,x,b,z,ee,re,ae,oe,de,ge,ye,De,ke,ze){var We=new xu(16);return We[0]=E,We[1]=a,We[2]=y,We[3]=x,We[4]=b,We[5]=z,We[6]=ee,We[7]=re,We[8]=ae,We[9]=oe,We[10]=de,We[11]=ge,We[12]=ye,We[13]=De,We[14]=ke,We[15]=ze,We}function qE(E,a,y,x,b,z,ee,re,ae,oe,de,ge,ye,De,ke,ze,We){return E[0]=a,E[1]=y,E[2]=x,E[3]=b,E[4]=z,E[5]=ee,E[6]=re,E[7]=ae,E[8]=oe,E[9]=de,E[10]=ge,E[11]=ye,E[12]=De,E[13]=ke,E[14]=ze,E[15]=We,E}function Uh(E){return E[0]=1,E[1]=0,E[2]=0,E[3]=0,E[4]=0,E[5]=1,E[6]=0,E[7]=0,E[8]=0,E[9]=0,E[10]=1,E[11]=0,E[12]=0,E[13]=0,E[14]=0,E[15]=1,E}function PC(E,a){if(E===a){var y=a[1],x=a[2],b=a[3],z=a[6],ee=a[7],re=a[11];E[1]=a[4],E[2]=a[8],E[3]=a[12],E[4]=y,E[6]=a[9],E[7]=a[13],E[8]=x,E[9]=z,E[11]=a[14],E[12]=b,E[13]=ee,E[14]=re}else E[0]=a[0],E[1]=a[4],E[2]=a[8],E[3]=a[12],E[4]=a[1],E[5]=a[5],E[6]=a[9],E[7]=a[13],E[8]=a[2],E[9]=a[6],E[10]=a[10],E[11]=a[14],E[12]=a[3],E[13]=a[7],E[14]=a[11],E[15]=a[15];return E}function kf(E,a){var y=a[0],x=a[1],b=a[2],z=a[3],ee=a[4],re=a[5],ae=a[6],oe=a[7],de=a[8],ge=a[9],ye=a[10],De=a[11],ke=a[12],ze=a[13],We=a[14],Ve=a[15],Ze=y*re-x*ee,Ye=y*ae-b*ee,et=y*oe-z*ee,st=x*ae-b*re,ht=x*oe-z*re,mt=b*oe-z*ae,dt=de*ze-ge*ke,Ot=de*We-ye*ke,_t=de*Ve-De*ke,wt=ge*We-ye*ze,$t=ge*Ve-De*ze,gn=ye*Ve-De*We,Xt=Ze*gn-Ye*$t+et*wt+st*_t-ht*Ot+mt*dt;return Xt?(Xt=1/Xt,E[0]=(re*gn-ae*$t+oe*wt)*Xt,E[1]=(b*$t-x*gn-z*wt)*Xt,E[2]=(ze*mt-We*ht+Ve*st)*Xt,E[3]=(ye*ht-ge*mt-De*st)*Xt,E[4]=(ae*_t-ee*gn-oe*Ot)*Xt,E[5]=(y*gn-b*_t+z*Ot)*Xt,E[6]=(We*et-ke*mt-Ve*Ye)*Xt,E[7]=(de*mt-ye*et+De*Ye)*Xt,E[8]=(ee*$t-re*_t+oe*dt)*Xt,E[9]=(x*_t-y*$t-z*dt)*Xt,E[10]=(ke*ht-ze*et+Ve*Ze)*Xt,E[11]=(ge*et-de*ht-De*Ze)*Xt,E[12]=(re*Ot-ee*wt-ae*dt)*Xt,E[13]=(y*wt-x*Ot+b*dt)*Xt,E[14]=(ze*Ye-ke*st-We*Ze)*Xt,E[15]=(de*st-ge*Ye+ye*Ze)*Xt,E):null}function JT(E,a){var y=a[0],x=a[1],b=a[2],z=a[3],ee=a[4],re=a[5],ae=a[6],oe=a[7],de=a[8],ge=a[9],ye=a[10],De=a[11],ke=a[12],ze=a[13],We=a[14],Ve=a[15],Ze=y*re-x*ee,Ye=y*ae-b*ee,et=y*oe-z*ee,st=x*ae-b*re,ht=x*oe-z*re,mt=b*oe-z*ae,dt=de*ze-ge*ke,Ot=de*We-ye*ke,_t=de*Ve-De*ke,wt=ge*We-ye*ze,$t=ge*Ve-De*ze,gn=ye*Ve-De*We;return E[0]=re*gn-ae*$t+oe*wt,E[1]=b*$t-x*gn-z*wt,E[2]=ze*mt-We*ht+Ve*st,E[3]=ye*ht-ge*mt-De*st,E[4]=ae*_t-ee*gn-oe*Ot,E[5]=y*gn-b*_t+z*Ot,E[6]=We*et-ke*mt-Ve*Ye,E[7]=de*mt-ye*et+De*Ye,E[8]=ee*$t-re*_t+oe*dt,E[9]=x*_t-y*$t-z*dt,E[10]=ke*ht-ze*et+Ve*Ze,E[11]=ge*et-de*ht-De*Ze,E[12]=re*Ot-ee*wt-ae*dt,E[13]=y*wt-x*Ot+b*dt,E[14]=ze*Ye-ke*st-We*Ze,E[15]=de*st-ge*Ye+ye*Ze,E}function wC(E){var a=E[0],y=E[1],x=E[2],b=E[3],z=E[4],ee=E[5],re=E[6],ae=E[7],oe=E[8],de=E[9],ge=E[10],ye=E[11],De=E[12],ke=E[13],ze=E[14],We=E[15],Ve=a*ee-y*z,Ze=a*re-x*z,Ye=y*re-x*ee,et=oe*ke-de*De,st=oe*ze-ge*De,ht=de*ze-ge*ke,mt=a*ht-y*st+x*et,dt=z*ht-ee*st+re*et,Ot=oe*Ye-de*Ze+ge*Ve,_t=De*Ye-ke*Ze+ze*Ve;return ae*mt-b*dt+We*Ot-ye*_t}function Mc(E,a,y){var x=a[0],b=a[1],z=a[2],ee=a[3],re=a[4],ae=a[5],oe=a[6],de=a[7],ge=a[8],ye=a[9],De=a[10],ke=a[11],ze=a[12],We=a[13],Ve=a[14],Ze=a[15],Ye=y[0],et=y[1],st=y[2],ht=y[3];return E[0]=Ye*x+et*re+st*ge+ht*ze,E[1]=Ye*b+et*ae+st*ye+ht*We,E[2]=Ye*z+et*oe+st*De+ht*Ve,E[3]=Ye*ee+et*de+st*ke+ht*Ze,Ye=y[4],et=y[5],st=y[6],ht=y[7],E[4]=Ye*x+et*re+st*ge+ht*ze,E[5]=Ye*b+et*ae+st*ye+ht*We,E[6]=Ye*z+et*oe+st*De+ht*Ve,E[7]=Ye*ee+et*de+st*ke+ht*Ze,Ye=y[8],et=y[9],st=y[10],ht=y[11],E[8]=Ye*x+et*re+st*ge+ht*ze,E[9]=Ye*b+et*ae+st*ye+ht*We,E[10]=Ye*z+et*oe+st*De+ht*Ve,E[11]=Ye*ee+et*de+st*ke+ht*Ze,Ye=y[12],et=y[13],st=y[14],ht=y[15],E[12]=Ye*x+et*re+st*ge+ht*ze,E[13]=Ye*b+et*ae+st*ye+ht*We,E[14]=Ye*z+et*oe+st*De+ht*Ve,E[15]=Ye*ee+et*de+st*ke+ht*Ze,E}function N0(E,a,y){var x=y[0],b=y[1],z=y[2],ee,re,ae,oe,de,ge,ye,De,ke,ze,We,Ve;return a===E?(E[12]=a[0]*x+a[4]*b+a[8]*z+a[12],E[13]=a[1]*x+a[5]*b+a[9]*z+a[13],E[14]=a[2]*x+a[6]*b+a[10]*z+a[14],E[15]=a[3]*x+a[7]*b+a[11]*z+a[15]):(ee=a[0],re=a[1],ae=a[2],oe=a[3],de=a[4],ge=a[5],ye=a[6],De=a[7],ke=a[8],ze=a[9],We=a[10],Ve=a[11],E[0]=ee,E[1]=re,E[2]=ae,E[3]=oe,E[4]=de,E[5]=ge,E[6]=ye,E[7]=De,E[8]=ke,E[9]=ze,E[10]=We,E[11]=Ve,E[12]=ee*x+de*b+ke*z+a[12],E[13]=re*x+ge*b+ze*z+a[13],E[14]=ae*x+ye*b+We*z+a[14],E[15]=oe*x+De*b+Ve*z+a[15]),E}function MC(E,a,y){var x=y[0],b=y[1],z=y[2];return E[0]=a[0]*x,E[1]=a[1]*x,E[2]=a[2]*x,E[3]=a[3]*x,E[4]=a[4]*b,E[5]=a[5]*b,E[6]=a[6]*b,E[7]=a[7]*b,E[8]=a[8]*z,E[9]=a[9]*z,E[10]=a[10]*z,E[11]=a[11]*z,E[12]=a[12],E[13]=a[13],E[14]=a[14],E[15]=a[15],E}function qT(E,a,y,x){var b=x[0],z=x[1],ee=x[2],re=Math.sqrt(b*b+z*z+ee*ee),ae,oe,de,ge,ye,De,ke,ze,We,Ve,Ze,Ye,et,st,ht,mt,dt,Ot,_t,wt,$t,gn,Xt,Tn;return re<Ql?null:(re=1/re,b*=re,z*=re,ee*=re,ae=Math.sin(y),oe=Math.cos(y),de=1-oe,ge=a[0],ye=a[1],De=a[2],ke=a[3],ze=a[4],We=a[5],Ve=a[6],Ze=a[7],Ye=a[8],et=a[9],st=a[10],ht=a[11],mt=b*b*de+oe,dt=z*b*de+ee*ae,Ot=ee*b*de-z*ae,_t=b*z*de-ee*ae,wt=z*z*de+oe,$t=ee*z*de+b*ae,gn=b*ee*de+z*ae,Xt=z*ee*de-b*ae,Tn=ee*ee*de+oe,E[0]=ge*mt+ze*dt+Ye*Ot,E[1]=ye*mt+We*dt+et*Ot,E[2]=De*mt+Ve*dt+st*Ot,E[3]=ke*mt+Ze*dt+ht*Ot,E[4]=ge*_t+ze*wt+Ye*$t,E[5]=ye*_t+We*wt+et*$t,E[6]=De*_t+Ve*wt+st*$t,E[7]=ke*_t+Ze*wt+ht*$t,E[8]=ge*gn+ze*Xt+Ye*Tn,E[9]=ye*gn+We*Xt+et*Tn,E[10]=De*gn+Ve*Xt+st*Tn,E[11]=ke*gn+Ze*Xt+ht*Tn,a!==E&&(E[12]=a[12],E[13]=a[13],E[14]=a[14],E[15]=a[15]),E)}function DC(E,a,y){var x=Math.sin(y),b=Math.cos(y),z=a[4],ee=a[5],re=a[6],ae=a[7],oe=a[8],de=a[9],ge=a[10],ye=a[11];return a!==E&&(E[0]=a[0],E[1]=a[1],E[2]=a[2],E[3]=a[3],E[12]=a[12],E[13]=a[13],E[14]=a[14],E[15]=a[15]),E[4]=z*b+oe*x,E[5]=ee*b+de*x,E[6]=re*b+ge*x,E[7]=ae*b+ye*x,E[8]=oe*b-z*x,E[9]=de*b-ee*x,E[10]=ge*b-re*x,E[11]=ye*b-ae*x,E}function IC(E,a,y){var x=Math.sin(y),b=Math.cos(y),z=a[0],ee=a[1],re=a[2],ae=a[3],oe=a[8],de=a[9],ge=a[10],ye=a[11];return a!==E&&(E[4]=a[4],E[5]=a[5],E[6]=a[6],E[7]=a[7],E[12]=a[12],E[13]=a[13],E[14]=a[14],E[15]=a[15]),E[0]=z*b-oe*x,E[1]=ee*b-de*x,E[2]=re*b-ge*x,E[3]=ae*b-ye*x,E[8]=z*x+oe*b,E[9]=ee*x+de*b,E[10]=re*x+ge*b,E[11]=ae*x+ye*b,E}function $T(E,a,y){var x=Math.sin(y),b=Math.cos(y),z=a[0],ee=a[1],re=a[2],ae=a[3],oe=a[4],de=a[5],ge=a[6],ye=a[7];return a!==E&&(E[8]=a[8],E[9]=a[9],E[10]=a[10],E[11]=a[11],E[12]=a[12],E[13]=a[13],E[14]=a[14],E[15]=a[15]),E[0]=z*b+oe*x,E[1]=ee*b+de*x,E[2]=re*b+ge*x,E[3]=ae*b+ye*x,E[4]=oe*b-z*x,E[5]=de*b-ee*x,E[6]=ge*b-re*x,E[7]=ye*b-ae*x,E}function Wh(E,a){return E[0]=1,E[1]=0,E[2]=0,E[3]=0,E[4]=0,E[5]=1,E[6]=0,E[7]=0,E[8]=0,E[9]=0,E[10]=1,E[11]=0,E[12]=a[0],E[13]=a[1],E[14]=a[2],E[15]=1,E}function Bg(E,a){return E[0]=a[0],E[1]=0,E[2]=0,E[3]=0,E[4]=0,E[5]=a[1],E[6]=0,E[7]=0,E[8]=0,E[9]=0,E[10]=a[2],E[11]=0,E[12]=0,E[13]=0,E[14]=0,E[15]=1,E}function OC(E,a,y){var x=y[0],b=y[1],z=y[2],ee=Math.sqrt(x*x+b*b+z*z),re,ae,oe;return ee<Ql?null:(ee=1/ee,x*=ee,b*=ee,z*=ee,re=Math.sin(a),ae=Math.cos(a),oe=1-ae,E[0]=x*x*oe+ae,E[1]=b*x*oe+z*re,E[2]=z*x*oe-b*re,E[3]=0,E[4]=x*b*oe-z*re,E[5]=b*b*oe+ae,E[6]=z*b*oe+x*re,E[7]=0,E[8]=x*z*oe+b*re,E[9]=b*z*oe-x*re,E[10]=z*z*oe+ae,E[11]=0,E[12]=0,E[13]=0,E[14]=0,E[15]=1,E)}function TC(E,a){var y=Math.sin(a),x=Math.cos(a);return E[0]=1,E[1]=0,E[2]=0,E[3]=0,E[4]=0,E[5]=x,E[6]=y,E[7]=0,E[8]=0,E[9]=-y,E[10]=x,E[11]=0,E[12]=0,E[13]=0,E[14]=0,E[15]=1,E}function LC(E,a){var y=Math.sin(a),x=Math.cos(a);return E[0]=x,E[1]=0,E[2]=-y,E[3]=0,E[4]=0,E[5]=1,E[6]=0,E[7]=0,E[8]=y,E[9]=0,E[10]=x,E[11]=0,E[12]=0,E[13]=0,E[14]=0,E[15]=1,E}function $E(E,a){var y=Math.sin(a),x=Math.cos(a);return E[0]=x,E[1]=y,E[2]=0,E[3]=0,E[4]=-y,E[5]=x,E[6]=0,E[7]=0,E[8]=0,E[9]=0,E[10]=1,E[11]=0,E[12]=0,E[13]=0,E[14]=0,E[15]=1,E}function BC(E,a,y){var x=a[0],b=a[1],z=a[2],ee=a[3],re=x+x,ae=b+b,oe=z+z,de=x*re,ge=x*ae,ye=x*oe,De=b*ae,ke=b*oe,ze=z*oe,We=ee*re,Ve=ee*ae,Ze=ee*oe;return E[0]=1-(De+ze),E[1]=ge+Ze,E[2]=ye-Ve,E[3]=0,E[4]=ge-Ze,E[5]=1-(de+ze),E[6]=ke+We,E[7]=0,E[8]=ye+Ve,E[9]=ke-We,E[10]=1-(de+De),E[11]=0,E[12]=y[0],E[13]=y[1],E[14]=y[2],E[15]=1,E}function eL(E,a){var y=new xu(3),x=-a[0],b=-a[1],z=-a[2],ee=a[3],re=a[4],ae=a[5],oe=a[6],de=a[7],ge=x*x+b*b+z*z+ee*ee;return ge>0?(y[0]=(re*ee+de*x+ae*z-oe*b)*2/ge,y[1]=(ae*ee+de*b+oe*x-re*z)*2/ge,y[2]=(oe*ee+de*z+re*b-ae*x)*2/ge):(y[0]=(re*ee+de*x+ae*z-oe*b)*2,y[1]=(ae*ee+de*b+oe*x-re*z)*2,y[2]=(oe*ee+de*z+re*b-ae*x)*2),BC(E,a,y),E}function rp(E,a){return E[0]=a[12],E[1]=a[13],E[2]=a[14],E}function R0(E,a){var y=a[0],x=a[1],b=a[2],z=a[4],ee=a[5],re=a[6],ae=a[8],oe=a[9],de=a[10];return E[0]=Math.sqrt(y*y+x*x+b*b),E[1]=Math.sqrt(z*z+ee*ee+re*re),E[2]=Math.sqrt(ae*ae+oe*oe+de*de),E}function ap(E,a){var y=new xu(3);R0(y,a);var x=1/y[0],b=1/y[1],z=1/y[2],ee=a[0]*x,re=a[1]*b,ae=a[2]*z,oe=a[4]*x,de=a[5]*b,ge=a[6]*z,ye=a[8]*x,De=a[9]*b,ke=a[10]*z,ze=ee+de+ke,We=0;return ze>0?(We=Math.sqrt(ze+1)*2,E[3]=.25*We,E[0]=(ge-De)/We,E[1]=(ye-ae)/We,E[2]=(re-oe)/We):ee>de&&ee>ke?(We=Math.sqrt(1+ee-de-ke)*2,E[3]=(ge-De)/We,E[0]=.25*We,E[1]=(re+oe)/We,E[2]=(ye+ae)/We):de>ke?(We=Math.sqrt(1+de-ee-ke)*2,E[3]=(ye-ae)/We,E[0]=(re+oe)/We,E[1]=.25*We,E[2]=(ge+De)/We):(We=Math.sqrt(1+ke-ee-de)*2,E[3]=(re-oe)/We,E[0]=(ye+ae)/We,E[1]=(ge+De)/We,E[2]=.25*We),E}function tL(E,a,y,x){a[0]=x[12],a[1]=x[13],a[2]=x[14];var b=x[0],z=x[1],ee=x[2],re=x[4],ae=x[5],oe=x[6],de=x[8],ge=x[9],ye=x[10];y[0]=Math.sqrt(b*b+z*z+ee*ee),y[1]=Math.sqrt(re*re+ae*ae+oe*oe),y[2]=Math.sqrt(de*de+ge*ge+ye*ye);var De=1/y[0],ke=1/y[1],ze=1/y[2],We=b*De,Ve=z*ke,Ze=ee*ze,Ye=re*De,et=ae*ke,st=oe*ze,ht=de*De,mt=ge*ke,dt=ye*ze,Ot=We+et+dt,_t=0;return Ot>0?(_t=Math.sqrt(Ot+1)*2,E[3]=.25*_t,E[0]=(st-mt)/_t,E[1]=(ht-Ze)/_t,E[2]=(Ve-Ye)/_t):We>et&&We>dt?(_t=Math.sqrt(1+We-et-dt)*2,E[3]=(st-mt)/_t,E[0]=.25*_t,E[1]=(Ve+Ye)/_t,E[2]=(ht+Ze)/_t):et>dt?(_t=Math.sqrt(1+et-We-dt)*2,E[3]=(ht-Ze)/_t,E[0]=(Ve+Ye)/_t,E[1]=.25*_t,E[2]=(st+mt)/_t):(_t=Math.sqrt(1+dt-We-et)*2,E[3]=(Ve-Ye)/_t,E[0]=(ht+Ze)/_t,E[1]=(st+mt)/_t,E[2]=.25*_t),E}function nL(E,a,y,x){var b=a[0],z=a[1],ee=a[2],re=a[3],ae=b+b,oe=z+z,de=ee+ee,ge=b*ae,ye=b*oe,De=b*de,ke=z*oe,ze=z*de,We=ee*de,Ve=re*ae,Ze=re*oe,Ye=re*de,et=x[0],st=x[1],ht=x[2];return E[0]=(1-(ke+We))*et,E[1]=(ye+Ye)*et,E[2]=(De-Ze)*et,E[3]=0,E[4]=(ye-Ye)*st,E[5]=(1-(ge+We))*st,E[6]=(ze+Ve)*st,E[7]=0,E[8]=(De+Ze)*ht,E[9]=(ze-Ve)*ht,E[10]=(1-(ge+ke))*ht,E[11]=0,E[12]=y[0],E[13]=y[1],E[14]=y[2],E[15]=1,E}function Rv(E,a,y,x,b){var z=a[0],ee=a[1],re=a[2],ae=a[3],oe=z+z,de=ee+ee,ge=re+re,ye=z*oe,De=z*de,ke=z*ge,ze=ee*de,We=ee*ge,Ve=re*ge,Ze=ae*oe,Ye=ae*de,et=ae*ge,st=x[0],ht=x[1],mt=x[2],dt=b[0],Ot=b[1],_t=b[2],wt=(1-(ze+Ve))*st,$t=(De+et)*st,gn=(ke-Ye)*st,Xt=(De-et)*ht,Tn=(1-(ye+Ve))*ht,er=(We+Ze)*ht,En=(ke+Ye)*mt,yn=(We-Ze)*mt,Cn=(1-(ye+ze))*mt;return E[0]=wt,E[1]=$t,E[2]=gn,E[3]=0,E[4]=Xt,E[5]=Tn,E[6]=er,E[7]=0,E[8]=En,E[9]=yn,E[10]=Cn,E[11]=0,E[12]=y[0]+dt-(wt*dt+Xt*Ot+En*_t),E[13]=y[1]+Ot-($t*dt+Tn*Ot+yn*_t),E[14]=y[2]+_t-(gn*dt+er*Ot+Cn*_t),E[15]=1,E}function eA(E,a){var y=a[0],x=a[1],b=a[2],z=a[3],ee=y+y,re=x+x,ae=b+b,oe=y*ee,de=x*ee,ge=x*re,ye=b*ee,De=b*re,ke=b*ae,ze=z*ee,We=z*re,Ve=z*ae;return E[0]=1-ge-ke,E[1]=de+Ve,E[2]=ye-We,E[3]=0,E[4]=de-Ve,E[5]=1-oe-ke,E[6]=De+ze,E[7]=0,E[8]=ye+We,E[9]=De-ze,E[10]=1-oe-ge,E[11]=0,E[12]=0,E[13]=0,E[14]=0,E[15]=1,E}function rL(E,a,y,x,b,z,ee){var re=1/(y-a),ae=1/(b-x),oe=1/(z-ee);return E[0]=z*2*re,E[1]=0,E[2]=0,E[3]=0,E[4]=0,E[5]=z*2*ae,E[6]=0,E[7]=0,E[8]=(y+a)*re,E[9]=(b+x)*ae,E[10]=(ee+z)*oe,E[11]=-1,E[12]=0,E[13]=0,E[14]=ee*z*2*oe,E[15]=0,E}function NC(E,a,y,x,b){var z=1/Math.tan(a/2);if(E[0]=z/y,E[1]=0,E[2]=0,E[3]=0,E[4]=0,E[5]=z,E[6]=0,E[7]=0,E[8]=0,E[9]=0,E[11]=-1,E[12]=0,E[13]=0,E[15]=0,b!=null&&b!==1/0){var ee=1/(x-b);E[10]=(b+x)*ee,E[14]=2*b*x*ee}else E[10]=-1,E[14]=-2*x;return E}var aL=NC;function iL(E,a,y,x,b){var z=1/Math.tan(a/2);if(E[0]=z/y,E[1]=0,E[2]=0,E[3]=0,E[4]=0,E[5]=z,E[6]=0,E[7]=0,E[8]=0,E[9]=0,E[11]=-1,E[12]=0,E[13]=0,E[15]=0,b!=null&&b!==1/0){var ee=1/(x-b);E[10]=b*ee,E[14]=b*x*ee}else E[10]=-1,E[14]=-x;return E}function oL(E,a,y,x){var b=Math.tan(a.upDegrees*Math.PI/180),z=Math.tan(a.downDegrees*Math.PI/180),ee=Math.tan(a.leftDegrees*Math.PI/180),re=Math.tan(a.rightDegrees*Math.PI/180),ae=2/(ee+re),oe=2/(b+z);return E[0]=ae,E[1]=0,E[2]=0,E[3]=0,E[4]=0,E[5]=oe,E[6]=0,E[7]=0,E[8]=-((ee-re)*ae*.5),E[9]=(b-z)*oe*.5,E[10]=x/(y-x),E[11]=-1,E[12]=0,E[13]=0,E[14]=x*y/(y-x),E[15]=0,E}function RC(E,a,y,x,b,z,ee){var re=1/(a-y),ae=1/(x-b),oe=1/(z-ee);return E[0]=-2*re,E[1]=0,E[2]=0,E[3]=0,E[4]=0,E[5]=-2*ae,E[6]=0,E[7]=0,E[8]=0,E[9]=0,E[10]=2*oe,E[11]=0,E[12]=(a+y)*re,E[13]=(b+x)*ae,E[14]=(ee+z)*oe,E[15]=1,E}var FC=RC;function kC(E,a,y,x,b,z,ee){var re=1/(a-y),ae=1/(x-b),oe=1/(z-ee);return E[0]=-2*re,E[1]=0,E[2]=0,E[3]=0,E[4]=0,E[5]=-2*ae,E[6]=0,E[7]=0,E[8]=0,E[9]=0,E[10]=oe,E[11]=0,E[12]=(a+y)*re,E[13]=(b+x)*ae,E[14]=z*oe,E[15]=1,E}function _C(E,a,y,x){var b,z,ee,re,ae,oe,de,ge,ye,De,ke=a[0],ze=a[1],We=a[2],Ve=x[0],Ze=x[1],Ye=x[2],et=y[0],st=y[1],ht=y[2];return Math.abs(ke-et)<Ql&&Math.abs(ze-st)<Ql&&Math.abs(We-ht)<Ql?Uh(E):(de=ke-et,ge=ze-st,ye=We-ht,De=1/Math.sqrt(de*de+ge*ge+ye*ye),de*=De,ge*=De,ye*=De,b=Ze*ye-Ye*ge,z=Ye*de-Ve*ye,ee=Ve*ge-Ze*de,De=Math.sqrt(b*b+z*z+ee*ee),De?(De=1/De,b*=De,z*=De,ee*=De):(b=0,z=0,ee=0),re=ge*ee-ye*z,ae=ye*b-de*ee,oe=de*z-ge*b,De=Math.sqrt(re*re+ae*ae+oe*oe),De?(De=1/De,re*=De,ae*=De,oe*=De):(re=0,ae=0,oe=0),E[0]=b,E[1]=re,E[2]=de,E[3]=0,E[4]=z,E[5]=ae,E[6]=ge,E[7]=0,E[8]=ee,E[9]=oe,E[10]=ye,E[11]=0,E[12]=-(b*ke+z*ze+ee*We),E[13]=-(re*ke+ae*ze+oe*We),E[14]=-(de*ke+ge*ze+ye*We),E[15]=1,E)}function sL(E,a,y,x){var b=a[0],z=a[1],ee=a[2],re=x[0],ae=x[1],oe=x[2],de=b-y[0],ge=z-y[1],ye=ee-y[2],De=de*de+ge*ge+ye*ye;De>0&&(De=1/Math.sqrt(De),de*=De,ge*=De,ye*=De);var ke=ae*ye-oe*ge,ze=oe*de-re*ye,We=re*ge-ae*de;return De=ke*ke+ze*ze+We*We,De>0&&(De=1/Math.sqrt(De),ke*=De,ze*=De,We*=De),E[0]=ke,E[1]=ze,E[2]=We,E[3]=0,E[4]=ge*We-ye*ze,E[5]=ye*ke-de*We,E[6]=de*ze-ge*ke,E[7]=0,E[8]=de,E[9]=ge,E[10]=ye,E[11]=0,E[12]=b,E[13]=z,E[14]=ee,E[15]=1,E}function lL(E){return"mat4("+E[0]+", "+E[1]+", "+E[2]+", "+E[3]+", "+E[4]+", "+E[5]+", "+E[6]+", "+E[7]+", "+E[8]+", "+E[9]+", "+E[10]+", "+E[11]+", "+E[12]+", "+E[13]+", "+E[14]+", "+E[15]+")"}function uL(E){return Math.sqrt(E[0]*E[0]+E[1]*E[1]+E[2]*E[2]+E[3]*E[3]+E[4]*E[4]+E[5]*E[5]+E[6]*E[6]+E[7]*E[7]+E[8]*E[8]+E[9]*E[9]+E[10]*E[10]+E[11]*E[11]+E[12]*E[12]+E[13]*E[13]+E[14]*E[14]+E[15]*E[15])}function cL(E,a,y){return E[0]=a[0]+y[0],E[1]=a[1]+y[1],E[2]=a[2]+y[2],E[3]=a[3]+y[3],E[4]=a[4]+y[4],E[5]=a[5]+y[5],E[6]=a[6]+y[6],E[7]=a[7]+y[7],E[8]=a[8]+y[8],E[9]=a[9]+y[9],E[10]=a[10]+y[10],E[11]=a[11]+y[11],E[12]=a[12]+y[12],E[13]=a[13]+y[13],E[14]=a[14]+y[14],E[15]=a[15]+y[15],E}function zC(E,a,y){return E[0]=a[0]-y[0],E[1]=a[1]-y[1],E[2]=a[2]-y[2],E[3]=a[3]-y[3],E[4]=a[4]-y[4],E[5]=a[5]-y[5],E[6]=a[6]-y[6],E[7]=a[7]-y[7],E[8]=a[8]-y[8],E[9]=a[9]-y[9],E[10]=a[10]-y[10],E[11]=a[11]-y[11],E[12]=a[12]-y[12],E[13]=a[13]-y[13],E[14]=a[14]-y[14],E[15]=a[15]-y[15],E}function dL(E,a,y){return E[0]=a[0]*y,E[1]=a[1]*y,E[2]=a[2]*y,E[3]=a[3]*y,E[4]=a[4]*y,E[5]=a[5]*y,E[6]=a[6]*y,E[7]=a[7]*y,E[8]=a[8]*y,E[9]=a[9]*y,E[10]=a[10]*y,E[11]=a[11]*y,E[12]=a[12]*y,E[13]=a[13]*y,E[14]=a[14]*y,E[15]=a[15]*y,E}function fL(E,a,y,x){return E[0]=a[0]+y[0]*x,E[1]=a[1]+y[1]*x,E[2]=a[2]+y[2]*x,E[3]=a[3]+y[3]*x,E[4]=a[4]+y[4]*x,E[5]=a[5]+y[5]*x,E[6]=a[6]+y[6]*x,E[7]=a[7]+y[7]*x,E[8]=a[8]+y[8]*x,E[9]=a[9]+y[9]*x,E[10]=a[10]+y[10]*x,E[11]=a[11]+y[11]*x,E[12]=a[12]+y[12]*x,E[13]=a[13]+y[13]*x,E[14]=a[14]+y[14]*x,E[15]=a[15]+y[15]*x,E}function tA(E,a){return E[0]===a[0]&&E[1]===a[1]&&E[2]===a[2]&&E[3]===a[3]&&E[4]===a[4]&&E[5]===a[5]&&E[6]===a[6]&&E[7]===a[7]&&E[8]===a[8]&&E[9]===a[9]&&E[10]===a[10]&&E[11]===a[11]&&E[12]===a[12]&&E[13]===a[13]&&E[14]===a[14]&&E[15]===a[15]}function hL(E,a){var y=E[0],x=E[1],b=E[2],z=E[3],ee=E[4],re=E[5],ae=E[6],oe=E[7],de=E[8],ge=E[9],ye=E[10],De=E[11],ke=E[12],ze=E[13],We=E[14],Ve=E[15],Ze=a[0],Ye=a[1],et=a[2],st=a[3],ht=a[4],mt=a[5],dt=a[6],Ot=a[7],_t=a[8],wt=a[9],$t=a[10],gn=a[11],Xt=a[12],Tn=a[13],er=a[14],En=a[15];return Math.abs(y-Ze)<=Ql*Math.max(1,Math.abs(y),Math.abs(Ze))&&Math.abs(x-Ye)<=Ql*Math.max(1,Math.abs(x),Math.abs(Ye))&&Math.abs(b-et)<=Ql*Math.max(1,Math.abs(b),Math.abs(et))&&Math.abs(z-st)<=Ql*Math.max(1,Math.abs(z),Math.abs(st))&&Math.abs(ee-ht)<=Ql*Math.max(1,Math.abs(ee),Math.abs(ht))&&Math.abs(re-mt)<=Ql*Math.max(1,Math.abs(re),Math.abs(mt))&&Math.abs(ae-dt)<=Ql*Math.max(1,Math.abs(ae),Math.abs(dt))&&Math.abs(oe-Ot)<=Ql*Math.max(1,Math.abs(oe),Math.abs(Ot))&&Math.abs(de-_t)<=Ql*Math.max(1,Math.abs(de),Math.abs(_t))&&Math.abs(ge-wt)<=Ql*Math.max(1,Math.abs(ge),Math.abs(wt))&&Math.abs(ye-$t)<=Ql*Math.max(1,Math.abs(ye),Math.abs($t))&&Math.abs(De-gn)<=Ql*Math.max(1,Math.abs(De),Math.abs(gn))&&Math.abs(ke-Xt)<=Ql*Math.max(1,Math.abs(ke),Math.abs(Xt))&&Math.abs(ze-Tn)<=Ql*Math.max(1,Math.abs(ze),Math.abs(Tn))&&Math.abs(We-er)<=Ql*Math.max(1,Math.abs(We),Math.abs(er))&&Math.abs(Ve-En)<=Ql*Math.max(1,Math.abs(Ve),Math.abs(En))}var jC=Mc,gL=zC;function UC(){var E=new xu(9);return xu!=Float32Array&&(E[1]=0,E[2]=0,E[3]=0,E[5]=0,E[6]=0,E[7]=0),E[0]=1,E[4]=1,E[8]=1,E}function vL(E,a){return E[0]=a[0],E[1]=a[1],E[2]=a[2],E[3]=a[4],E[4]=a[5],E[5]=a[6],E[6]=a[8],E[7]=a[9],E[8]=a[10],E}function LJ(E){var a=new glMatrix.ARRAY_TYPE(9);return a[0]=E[0],a[1]=E[1],a[2]=E[2],a[3]=E[3],a[4]=E[4],a[5]=E[5],a[6]=E[6],a[7]=E[7],a[8]=E[8],a}function BJ(E,a){return E[0]=a[0],E[1]=a[1],E[2]=a[2],E[3]=a[3],E[4]=a[4],E[5]=a[5],E[6]=a[6],E[7]=a[7],E[8]=a[8],E}function mL(E,a,y,x,b,z,ee,re,ae){var oe=new xu(9);return oe[0]=E,oe[1]=a,oe[2]=y,oe[3]=x,oe[4]=b,oe[5]=z,oe[6]=ee,oe[7]=re,oe[8]=ae,oe}function NJ(E,a,y,x,b,z,ee,re,ae,oe){return E[0]=a,E[1]=y,E[2]=x,E[3]=b,E[4]=z,E[5]=ee,E[6]=re,E[7]=ae,E[8]=oe,E}function RJ(E){return E[0]=1,E[1]=0,E[2]=0,E[3]=0,E[4]=1,E[5]=0,E[6]=0,E[7]=0,E[8]=1,E}function FJ(E,a){if(E===a){var y=a[1],x=a[2],b=a[5];E[1]=a[3],E[2]=a[6],E[3]=y,E[5]=a[7],E[6]=x,E[7]=b}else E[0]=a[0],E[1]=a[3],E[2]=a[6],E[3]=a[1],E[4]=a[4],E[5]=a[7],E[6]=a[2],E[7]=a[5],E[8]=a[8];return E}function kJ(E,a){var y=a[0],x=a[1],b=a[2],z=a[3],ee=a[4],re=a[5],ae=a[6],oe=a[7],de=a[8],ge=de*ee-re*oe,ye=-de*z+re*ae,De=oe*z-ee*ae,ke=y*ge+x*ye+b*De;return ke?(ke=1/ke,E[0]=ge*ke,E[1]=(-de*x+b*oe)*ke,E[2]=(re*x-b*ee)*ke,E[3]=ye*ke,E[4]=(de*y-b*ae)*ke,E[5]=(-re*y+b*z)*ke,E[6]=De*ke,E[7]=(-oe*y+x*ae)*ke,E[8]=(ee*y-x*z)*ke,E):null}function _J(E,a){var y=a[0],x=a[1],b=a[2],z=a[3],ee=a[4],re=a[5],ae=a[6],oe=a[7],de=a[8];return E[0]=ee*de-re*oe,E[1]=b*oe-x*de,E[2]=x*re-b*ee,E[3]=re*ae-z*de,E[4]=y*de-b*ae,E[5]=b*z-y*re,E[6]=z*oe-ee*ae,E[7]=x*ae-y*oe,E[8]=y*ee-x*z,E}function zJ(E){var a=E[0],y=E[1],x=E[2],b=E[3],z=E[4],ee=E[5],re=E[6],ae=E[7],oe=E[8];return a*(oe*z-ee*ae)+y*(-oe*b+ee*re)+x*(ae*b-z*re)}function jJ(E,a,y){var x=a[0],b=a[1],z=a[2],ee=a[3],re=a[4],ae=a[5],oe=a[6],de=a[7],ge=a[8],ye=y[0],De=y[1],ke=y[2],ze=y[3],We=y[4],Ve=y[5],Ze=y[6],Ye=y[7],et=y[8];return E[0]=ye*x+De*ee+ke*oe,E[1]=ye*b+De*re+ke*de,E[2]=ye*z+De*ae+ke*ge,E[3]=ze*x+We*ee+Ve*oe,E[4]=ze*b+We*re+Ve*de,E[5]=ze*z+We*ae+Ve*ge,E[6]=Ze*x+Ye*ee+et*oe,E[7]=Ze*b+Ye*re+et*de,E[8]=Ze*z+Ye*ae+et*ge,E}function UJ(E,a,y){var x=a[0],b=a[1],z=a[2],ee=a[3],re=a[4],ae=a[5],oe=a[6],de=a[7],ge=a[8],ye=y[0],De=y[1];return E[0]=x,E[1]=b,E[2]=z,E[3]=ee,E[4]=re,E[5]=ae,E[6]=ye*x+De*ee+oe,E[7]=ye*b+De*re+de,E[8]=ye*z+De*ae+ge,E}function WJ(E,a,y){var x=a[0],b=a[1],z=a[2],ee=a[3],re=a[4],ae=a[5],oe=a[6],de=a[7],ge=a[8],ye=Math.sin(y),De=Math.cos(y);return E[0]=De*x+ye*ee,E[1]=De*b+ye*re,E[2]=De*z+ye*ae,E[3]=De*ee-ye*x,E[4]=De*re-ye*b,E[5]=De*ae-ye*z,E[6]=oe,E[7]=de,E[8]=ge,E}function GJ(E,a,y){var x=y[0],b=y[1];return E[0]=x*a[0],E[1]=x*a[1],E[2]=x*a[2],E[3]=b*a[3],E[4]=b*a[4],E[5]=b*a[5],E[6]=a[6],E[7]=a[7],E[8]=a[8],E}function HJ(E,a){return E[0]=1,E[1]=0,E[2]=0,E[3]=0,E[4]=1,E[5]=0,E[6]=a[0],E[7]=a[1],E[8]=1,E}function VJ(E,a){var y=Math.sin(a),x=Math.cos(a);return E[0]=x,E[1]=y,E[2]=0,E[3]=-y,E[4]=x,E[5]=0,E[6]=0,E[7]=0,E[8]=1,E}function KJ(E,a){return E[0]=a[0],E[1]=0,E[2]=0,E[3]=0,E[4]=a[1],E[5]=0,E[6]=0,E[7]=0,E[8]=1,E}function ZJ(E,a){return E[0]=a[0],E[1]=a[1],E[2]=0,E[3]=a[2],E[4]=a[3],E[5]=0,E[6]=a[4],E[7]=a[5],E[8]=1,E}function QJ(E,a){var y=a[0],x=a[1],b=a[2],z=a[3],ee=y+y,re=x+x,ae=b+b,oe=y*ee,de=x*ee,ge=x*re,ye=b*ee,De=b*re,ke=b*ae,ze=z*ee,We=z*re,Ve=z*ae;return E[0]=1-ge-ke,E[3]=de-Ve,E[6]=ye+We,E[1]=de+Ve,E[4]=1-oe-ke,E[7]=De-ze,E[2]=ye-We,E[5]=De+ze,E[8]=1-oe-ge,E}function YJ(E,a){var y=a[0],x=a[1],b=a[2],z=a[3],ee=a[4],re=a[5],ae=a[6],oe=a[7],de=a[8],ge=a[9],ye=a[10],De=a[11],ke=a[12],ze=a[13],We=a[14],Ve=a[15],Ze=y*re-x*ee,Ye=y*ae-b*ee,et=y*oe-z*ee,st=x*ae-b*re,ht=x*oe-z*re,mt=b*oe-z*ae,dt=de*ze-ge*ke,Ot=de*We-ye*ke,_t=de*Ve-De*ke,wt=ge*We-ye*ze,$t=ge*Ve-De*ze,gn=ye*Ve-De*We,Xt=Ze*gn-Ye*$t+et*wt+st*_t-ht*Ot+mt*dt;return Xt?(Xt=1/Xt,E[0]=(re*gn-ae*$t+oe*wt)*Xt,E[1]=(ae*_t-ee*gn-oe*Ot)*Xt,E[2]=(ee*$t-re*_t+oe*dt)*Xt,E[3]=(b*$t-x*gn-z*wt)*Xt,E[4]=(y*gn-b*_t+z*Ot)*Xt,E[5]=(x*_t-y*$t-z*dt)*Xt,E[6]=(ze*mt-We*ht+Ve*st)*Xt,E[7]=(We*et-ke*mt-Ve*Ye)*Xt,E[8]=(ke*ht-ze*et+Ve*Ze)*Xt,E):null}function XJ(E,a,y){return E[0]=2/a,E[1]=0,E[2]=0,E[3]=0,E[4]=-2/y,E[5]=0,E[6]=-1,E[7]=1,E[8]=1,E}function JJ(E){return"mat3("+E[0]+", "+E[1]+", "+E[2]+", "+E[3]+", "+E[4]+", "+E[5]+", "+E[6]+", "+E[7]+", "+E[8]+")"}function qJ(E){return Math.sqrt(E[0]*E[0]+E[1]*E[1]+E[2]*E[2]+E[3]*E[3]+E[4]*E[4]+E[5]*E[5]+E[6]*E[6]+E[7]*E[7]+E[8]*E[8])}function $J(E,a,y){return E[0]=a[0]+y[0],E[1]=a[1]+y[1],E[2]=a[2]+y[2],E[3]=a[3]+y[3],E[4]=a[4]+y[4],E[5]=a[5]+y[5],E[6]=a[6]+y[6],E[7]=a[7]+y[7],E[8]=a[8]+y[8],E}function eq(E,a,y){return E[0]=a[0]-y[0],E[1]=a[1]-y[1],E[2]=a[2]-y[2],E[3]=a[3]-y[3],E[4]=a[4]-y[4],E[5]=a[5]-y[5],E[6]=a[6]-y[6],E[7]=a[7]-y[7],E[8]=a[8]-y[8],E}function tq(E,a,y){return E[0]=a[0]*y,E[1]=a[1]*y,E[2]=a[2]*y,E[3]=a[3]*y,E[4]=a[4]*y,E[5]=a[5]*y,E[6]=a[6]*y,E[7]=a[7]*y,E[8]=a[8]*y,E}function nq(E,a,y,x){return E[0]=a[0]+y[0]*x,E[1]=a[1]+y[1]*x,E[2]=a[2]+y[2]*x,E[3]=a[3]+y[3]*x,E[4]=a[4]+y[4]*x,E[5]=a[5]+y[5]*x,E[6]=a[6]+y[6]*x,E[7]=a[7]+y[7]*x,E[8]=a[8]+y[8]*x,E}function rq(E,a){return E[0]===a[0]&&E[1]===a[1]&&E[2]===a[2]&&E[3]===a[3]&&E[4]===a[4]&&E[5]===a[5]&&E[6]===a[6]&&E[7]===a[7]&&E[8]===a[8]}function aq(E,a){var y=E[0],x=E[1],b=E[2],z=E[3],ee=E[4],re=E[5],ae=E[6],oe=E[7],de=E[8],ge=a[0],ye=a[1],De=a[2],ke=a[3],ze=a[4],We=a[5],Ve=a[6],Ze=a[7],Ye=a[8];return Math.abs(y-ge)<=glMatrix.EPSILON*Math.max(1,Math.abs(y),Math.abs(ge))&&Math.abs(x-ye)<=glMatrix.EPSILON*Math.max(1,Math.abs(x),Math.abs(ye))&&Math.abs(b-De)<=glMatrix.EPSILON*Math.max(1,Math.abs(b),Math.abs(De))&&Math.abs(z-ke)<=glMatrix.EPSILON*Math.max(1,Math.abs(z),Math.abs(ke))&&Math.abs(ee-ze)<=glMatrix.EPSILON*Math.max(1,Math.abs(ee),Math.abs(ze))&&Math.abs(re-We)<=glMatrix.EPSILON*Math.max(1,Math.abs(re),Math.abs(We))&&Math.abs(ae-Ve)<=glMatrix.EPSILON*Math.max(1,Math.abs(ae),Math.abs(Ve))&&Math.abs(oe-Ze)<=glMatrix.EPSILON*Math.max(1,Math.abs(oe),Math.abs(Ze))&&Math.abs(de-Ye)<=glMatrix.EPSILON*Math.max(1,Math.abs(de),Math.abs(Ye))}var iq=null,oq=null;function Uu(){var E=new xu(4);return xu!=Float32Array&&(E[0]=0,E[1]=0,E[2]=0),E[3]=1,E}function sq(E){return E[0]=0,E[1]=0,E[2]=0,E[3]=1,E}function Gh(E,a,y){y=y*.5;var x=Math.sin(y);return E[0]=x*a[0],E[1]=x*a[1],E[2]=x*a[2],E[3]=Math.cos(y),E}function lq(E,a){var y=Math.acos(a[3])*2,x=Math.sin(y/2);return x>glMatrix.EPSILON?(E[0]=a[0]/x,E[1]=a[1]/x,E[2]=a[2]/x):(E[0]=1,E[1]=0,E[2]=0),y}function uq(E,a){var y=SL(E,a);return Math.acos(2*y*y-1)}function Hh(E,a,y){var x=a[0],b=a[1],z=a[2],ee=a[3],re=y[0],ae=y[1],oe=y[2],de=y[3];return E[0]=x*de+ee*re+b*oe-z*ae,E[1]=b*de+ee*ae+z*re-x*oe,E[2]=z*de+ee*oe+x*ae-b*re,E[3]=ee*de-x*re-b*ae-z*oe,E}function cq(E,a,y){y*=.5;var x=a[0],b=a[1],z=a[2],ee=a[3],re=Math.sin(y),ae=Math.cos(y);return E[0]=x*ae+ee*re,E[1]=b*ae+z*re,E[2]=z*ae-b*re,E[3]=ee*ae-x*re,E}function dq(E,a,y){y*=.5;var x=a[0],b=a[1],z=a[2],ee=a[3],re=Math.sin(y),ae=Math.cos(y);return E[0]=x*ae-z*re,E[1]=b*ae+ee*re,E[2]=z*ae+x*re,E[3]=ee*ae-b*re,E}function fq(E,a,y){y*=.5;var x=a[0],b=a[1],z=a[2],ee=a[3],re=Math.sin(y),ae=Math.cos(y);return E[0]=x*ae+b*re,E[1]=b*ae-x*re,E[2]=z*ae+ee*re,E[3]=ee*ae-z*re,E}function hq(E,a){var y=a[0],x=a[1],b=a[2];return E[0]=y,E[1]=x,E[2]=b,E[3]=Math.sqrt(Math.abs(1-y*y-x*x-b*b)),E}function pL(E,a){var y=a[0],x=a[1],b=a[2],z=a[3],ee=Math.sqrt(y*y+x*x+b*b),re=Math.exp(z),ae=ee>0?re*Math.sin(ee)/ee:0;return E[0]=y*ae,E[1]=x*ae,E[2]=b*ae,E[3]=re*Math.cos(ee),E}function yL(E,a){var y=a[0],x=a[1],b=a[2],z=a[3],ee=Math.sqrt(y*y+x*x+b*b),re=ee>0?Math.atan2(ee,z)/ee:0;return E[0]=y*re,E[1]=x*re,E[2]=b*re,E[3]=.5*Math.log(y*y+x*x+b*b+z*z),E}function gq(E,a,y){return yL(E,a),xL(E,E,y),pL(E,E),E}function nA(E,a,y,x){var b=a[0],z=a[1],ee=a[2],re=a[3],ae=y[0],oe=y[1],de=y[2],ge=y[3],ye,De,ke,ze,We;return De=b*ae+z*oe+ee*de+re*ge,De<0&&(De=-De,ae=-ae,oe=-oe,de=-de,ge=-ge),1-De>Ql?(ye=Math.acos(De),ke=Math.sin(ye),ze=Math.sin((1-x)*ye)/ke,We=Math.sin(x*ye)/ke):(ze=1-x,We=x),E[0]=ze*b+We*ae,E[1]=ze*z+We*oe,E[2]=ze*ee+We*de,E[3]=ze*re+We*ge,E}function vq(E){var a=glMatrix.RANDOM(),y=glMatrix.RANDOM(),x=glMatrix.RANDOM(),b=Math.sqrt(1-a),z=Math.sqrt(a);return E[0]=b*Math.sin(2*Math.PI*y),E[1]=b*Math.cos(2*Math.PI*y),E[2]=z*Math.sin(2*Math.PI*x),E[3]=z*Math.cos(2*Math.PI*x),E}function rA(E,a){var y=a[0],x=a[1],b=a[2],z=a[3],ee=y*y+x*x+b*b+z*z,re=ee?1/ee:0;return E[0]=-y*re,E[1]=-x*re,E[2]=-b*re,E[3]=z*re,E}function mq(E,a){return E[0]=-a[0],E[1]=-a[1],E[2]=-a[2],E[3]=a[3],E}function EL(E,a){var y=a[0]+a[4]+a[8],x;if(y>0)x=Math.sqrt(y+1),E[3]=.5*x,x=.5/x,E[0]=(a[5]-a[7])*x,E[1]=(a[6]-a[2])*x,E[2]=(a[1]-a[3])*x;else{var b=0;a[4]>a[0]&&(b=1),a[8]>a[b*3+b]&&(b=2);var z=(b+1)%3,ee=(b+2)%3;x=Math.sqrt(a[b*3+b]-a[z*3+z]-a[ee*3+ee]+1),E[b]=.5*x,x=.5/x,E[3]=(a[z*3+ee]-a[ee*3+z])*x,E[z]=(a[z*3+b]+a[b*3+z])*x,E[ee]=(a[ee*3+b]+a[b*3+ee])*x}return E}function ip(E,a,y,x){var b=arguments.length>4&&arguments[4]!==void 0?arguments[4]:OT,z=Math.PI/360;a*=z,x*=z,y*=z;var ee=Math.sin(a),re=Math.cos(a),ae=Math.sin(y),oe=Math.cos(y),de=Math.sin(x),ge=Math.cos(x);switch(b){case"xyz":E[0]=ee*oe*ge+re*ae*de,E[1]=re*ae*ge-ee*oe*de,E[2]=re*oe*de+ee*ae*ge,E[3]=re*oe*ge-ee*ae*de;break;case"xzy":E[0]=ee*oe*ge-re*ae*de,E[1]=re*ae*ge-ee*oe*de,E[2]=re*oe*de+ee*ae*ge,E[3]=re*oe*ge+ee*ae*de;break;case"yxz":E[0]=ee*oe*ge+re*ae*de,E[1]=re*ae*ge-ee*oe*de,E[2]=re*oe*de-ee*ae*ge,E[3]=re*oe*ge+ee*ae*de;break;case"yzx":E[0]=ee*oe*ge+re*ae*de,E[1]=re*ae*ge+ee*oe*de,E[2]=re*oe*de-ee*ae*ge,E[3]=re*oe*ge-ee*ae*de;break;case"zxy":E[0]=ee*oe*ge-re*ae*de,E[1]=re*ae*ge+ee*oe*de,E[2]=re*oe*de+ee*ae*ge,E[3]=re*oe*ge-ee*ae*de;break;case"zyx":E[0]=ee*oe*ge-re*ae*de,E[1]=re*ae*ge+ee*oe*de,E[2]=re*oe*de-ee*ae*ge,E[3]=re*oe*ge+ee*ae*de;break;default:throw new Error("Unknown angle order "+b)}return E}function pq(E){return"quat("+E[0]+", "+E[1]+", "+E[2]+", "+E[3]+")"}var yq=jT,AL=Nv,op=UT,WC=WT,Eq=GT,GC=Hh,xL=HT,SL=QT,Aq=YT,xq=VT,Sq=null,bq=KT,Cq=null,sp=ZT,Pq=XT;function wq(E,a){return Math.abs(vec4.dot(E,a))>=1-glMatrix.EPSILON}var Mq=function(){var E=js(),a=Yl(1,0,0),y=Yl(0,1,0);return function(x,b,z){var ee=Gd(b,z);return ee<-.999999?(np(E,a,b),SC(E)<1e-6&&np(E,y,b),Lg(E,E),Gh(x,E,Math.PI),x):ee>.999999?(x[0]=0,x[1]=0,x[2]=0,x[3]=1,x):(np(E,b,z),x[0]=E[0],x[1]=E[1],x[2]=E[2],x[3]=1+ee,sp(x,x))}}(),Dq=function(){var E=Uu(),a=Uu();return function(y,x,b,z,ee,re){return nA(E,x,ee,re),nA(a,b,z,re),nA(y,E,a,2*re*(1-re)),y}}(),Iq=function(){var E=UC();return function(a,y,x,b){return E[0]=x[0],E[3]=x[1],E[6]=x[2],E[1]=b[0],E[4]=b[1],E[7]=b[2],E[2]=-y[0],E[5]=-y[1],E[8]=-y[2],sp(a,EL(a,E))}}();function aA(){var E=new xu(2);return xu!=Float32Array&&(E[0]=0,E[1]=0),E}function Oq(E){var a=new glMatrix.ARRAY_TYPE(2);return a[0]=E[0],a[1]=E[1],a}function Tq(E,a){var y=new glMatrix.ARRAY_TYPE(2);return y[0]=E,y[1]=a,y}function bL(E,a){return E[0]=a[0],E[1]=a[1],E}function CL(E,a,y){return E[0]=a,E[1]=y,E}function Lq(E,a,y){return E[0]=a[0]+y[0],E[1]=a[1]+y[1],E}function Bq(E,a,y){return E[0]=a[0]-y[0],E[1]=a[1]-y[1],E}function Nq(E,a,y){return E[0]=a[0]*y[0],E[1]=a[1]*y[1],E}function Rq(E,a,y){return E[0]=a[0]/y[0],E[1]=a[1]/y[1],E}function Fq(E,a){return E[0]=Math.ceil(a[0]),E[1]=Math.ceil(a[1]),E}function kq(E,a){return E[0]=Math.floor(a[0]),E[1]=Math.floor(a[1]),E}function _q(E,a,y){return E[0]=Math.min(a[0],y[0]),E[1]=Math.min(a[1],y[1]),E}function zq(E,a,y){return E[0]=Math.max(a[0],y[0]),E[1]=Math.max(a[1],y[1]),E}function jq(E,a){return E[0]=glMatrix.round(a[0]),E[1]=glMatrix.round(a[1]),E}function Uq(E,a,y){return E[0]=a[0]*y,E[1]=a[1]*y,E}function Wq(E,a,y,x){return E[0]=a[0]+y[0]*x,E[1]=a[1]+y[1]*x,E}function Gq(E,a){var y=a[0]-E[0],x=a[1]-E[1];return Math.sqrt(y*y+x*x)}function Hq(E,a){var y=a[0]-E[0],x=a[1]-E[1];return y*y+x*x}function Vq(E){var a=E[0],y=E[1];return Math.sqrt(a*a+y*y)}function Kq(E){var a=E[0],y=E[1];return a*a+y*y}function Zq(E,a){return E[0]=-a[0],E[1]=-a[1],E}function Qq(E,a){return E[0]=1/a[0],E[1]=1/a[1],E}function PL(E,a){var y=a[0],x=a[1],b=y*y+x*x;return b>0&&(b=1/Math.sqrt(b)),E[0]=a[0]*b,E[1]=a[1]*b,E}function wL(E,a){return E[0]*a[0]+E[1]*a[1]}function Yq(E,a,y){var x=a[0]*y[1]-a[1]*y[0];return E[0]=E[1]=0,E[2]=x,E}function Xq(E,a,y,x){var b=a[0],z=a[1];return E[0]=b+x*(y[0]-b),E[1]=z+x*(y[1]-z),E}function Jq(E,a){a=a===void 0?1:a;var y=glMatrix.RANDOM()*2*Math.PI;return E[0]=Math.cos(y)*a,E[1]=Math.sin(y)*a,E}function qq(E,a,y){var x=a[0],b=a[1];return E[0]=y[0]*x+y[2]*b,E[1]=y[1]*x+y[3]*b,E}function $q(E,a,y){var x=a[0],b=a[1];return E[0]=y[0]*x+y[2]*b+y[4],E[1]=y[1]*x+y[3]*b+y[5],E}function e$(E,a,y){var x=a[0],b=a[1];return E[0]=y[0]*x+y[3]*b+y[6],E[1]=y[1]*x+y[4]*b+y[7],E}function t$(E,a,y){var x=a[0],b=a[1];return E[0]=y[0]*x+y[4]*b+y[12],E[1]=y[1]*x+y[5]*b+y[13],E}function n$(E,a,y,x){var b=a[0]-y[0],z=a[1]-y[1],ee=Math.sin(x),re=Math.cos(x);return E[0]=b*re-z*ee+y[0],E[1]=b*ee+z*re+y[1],E}function r$(E,a){var y=E[0],x=E[1],b=a[0],z=a[1];return Math.abs(Math.atan2(x*b-y*z,y*b+x*z))}function a$(E,a){var y=E[0],x=E[1],b=a[0],z=a[1];return Math.atan2(y*z-x*b,y*b+x*z)}function i$(E){return E[0]=0,E[1]=0,E}function o$(E){return"vec2("+E[0]+", "+E[1]+")"}function ML(E,a){return E[0]===a[0]&&E[1]===a[1]}function s$(E,a){var y=E[0],x=E[1],b=a[0],z=a[1];return Math.abs(y-b)<=glMatrix.EPSILON*Math.max(1,Math.abs(y),Math.abs(b))&&Math.abs(x-z)<=glMatrix.EPSILON*Math.max(1,Math.abs(x),Math.abs(z))}var l$=null,u$=null,c$=null,d$=null,f$=null,h$=null,g$=null,v$=function(){var E=aA();return function(a,y,x,b,z,ee){var re,ae;for(y||(y=2),x||(x=0),b?ae=Math.min(b*y+x,a.length):ae=a.length,re=x;re<ae;re+=y)E[0]=a[re],E[1]=a[re+1],z(E,E,ee),a[re]=E[0],a[re+1]=E[1];return a}}();function ji(E){return typeof E=="number"}function td(E,a){return Math.sqrt((E[0]-a[0])*(E[0]-a[0])+(E[1]-a[1])*(E[1]-a[1]))}function Io(E){return E==null}function al(E){return typeof E=="string"}var DL=function(E,a,y){return E<a?a:E>y?y:E},gu=DL,Nt=Te(80813),Fv={a:7,c:6,h:1,l:2,m:2,r:4,q:4,s:4,t:2,v:1,z:0};function HC(E){return Array.isArray(E)&&E.every(function(a){var y=a[0].toLowerCase();return Fv[y]===a.length-1&&"achlmqstvz".includes(y)})}function VC(E){return HC(E)&&E.every(function(a){var y=a[0];return y===y.toUpperCase()})}function KC(E){return VC(E)&&E.every(function(a){var y=a[0];return"ACLMQZ".includes(y)})}var ZC={x1:0,y1:0,x2:0,y2:0,x:0,y:0,qx:null,qy:null};function QC(E){for(var a=E.pathValue[E.segmentStart],y=a.toLowerCase(),x=E.data;x.length>=Fv[y]&&(y==="m"&&x.length>2?(E.segments.push([a].concat(x.splice(0,2))),y="l",a=a==="m"?"l":"L"):E.segments.push([a].concat(x.splice(0,Fv[y]))),!!Fv[y]););}function IL(E){var a=E.index,y=E.pathValue,x=y.charCodeAt(a);if(x===48){E.param=0,E.index+=1;return}if(x===49){E.param=1,E.index+=1;return}E.err='[path-util]: invalid Arc flag "'.concat(y[a],'", expecting 0 or 1 at index ').concat(a)}function OL(E){return E>=48&&E<=57||E===43||E===45||E===46}function F0(E){return E>=48&&E<=57}function TL(E){var a=E.max,y=E.pathValue,x=E.index,b=x,z=!1,ee=!1,re=!1,ae=!1,oe;if(b>=a){E.err="[path-util]: Invalid path value at index ".concat(b,', "pathValue" is missing param');return}if(oe=y.charCodeAt(b),(oe===43||oe===45)&&(b+=1,oe=y.charCodeAt(b)),!F0(oe)&&oe!==46){E.err="[path-util]: Invalid path value at index ".concat(b,', "').concat(y[b],'" is not a number');return}if(oe!==46){if(z=oe===48,b+=1,oe=y.charCodeAt(b),z&&b<a&&oe&&F0(oe)){E.err="[path-util]: Invalid path value at index ".concat(x,', "').concat(y[x],'" illegal number');return}for(;b<a&&F0(y.charCodeAt(b));)b+=1,ee=!0;oe=y.charCodeAt(b)}if(oe===46){for(ae=!0,b+=1;F0(y.charCodeAt(b));)b+=1,re=!0;oe=y.charCodeAt(b)}if(oe===101||oe===69){if(ae&&!ee&&!re){E.err="[path-util]: Invalid path value at index ".concat(b,', "').concat(y[b],'" invalid float exponent');return}if(b+=1,oe=y.charCodeAt(b),(oe===43||oe===45)&&(b+=1),b<a&&F0(y.charCodeAt(b)))for(;b<a&&F0(y.charCodeAt(b));)b+=1;else{E.err="[path-util]: Invalid path value at index ".concat(b,', "').concat(y[b],'" invalid integer exponent');return}}E.index=b,E.param=+E.pathValue.slice(x,b)}function LL(E){var a=[5760,6158,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288,65279];return E===10||E===13||E===8232||E===8233||E===32||E===9||E===11||E===12||E===160||E>=5760&&a.includes(E)}function lp(E){for(var a=E.pathValue,y=E.max;E.index<y&&LL(a.charCodeAt(E.index));)E.index+=1}function BL(E){switch(E|32){case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:return!0;default:return!1}}function NL(E){return(E|32)===97}function RL(E){var a=E.max,y=E.pathValue,x=E.index,b=y.charCodeAt(x),z=Fv[y[x].toLowerCase()];if(E.segmentStart=x,!BL(b)){E.err='[path-util]: Invalid path value "'.concat(y[x],'" is not a path command');return}if(E.index+=1,lp(E),E.data=[],!z){QC(E);return}for(;;){for(var ee=z;ee>0;ee-=1){if(NL(b)&&(ee===3||ee===4)?IL(E):TL(E),E.err.length)return;E.data.push(E.param),lp(E),E.index<a&&y.charCodeAt(E.index)===44&&(E.index+=1,lp(E))}if(E.index>=E.max||!OL(y.charCodeAt(E.index)))break}QC(E)}var FL=function(){function E(a){this.pathValue=a,this.segments=[],this.max=a.length,this.index=0,this.param=0,this.segmentStart=0,this.data=[],this.err=""}return E}();function kL(E){if(HC(E))return[].concat(E);var a=new FL(E);for(lp(a);a.index<a.max&&!a.err.length;)RL(a);return a.err?a.err:a.segments}function _L(E){if(VC(E))return[].concat(E);var a=kL(E),y=0,x=0,b=0,z=0;return a.map(function(ee){var re=ee.slice(1).map(Number),ae=ee[0],oe=ae.toUpperCase();if(ae==="M")return y=re[0],x=re[1],b=y,z=x,["M",y,x];var de;if(ae!==oe)switch(oe){case"A":de=[oe,re[0],re[1],re[2],re[3],re[4],re[5]+y,re[6]+x];break;case"V":de=[oe,re[0]+x];break;case"H":de=[oe,re[0]+y];break;default:{var ge=re.map(function(De,ke){return De+(ke%2?x:y)});de=[oe].concat(ge)}}else de=[oe].concat(re);var ye=de.length;switch(oe){case"Z":y=b,x=z;break;case"H":y=de[1];break;case"V":x=de[1];break;default:y=de[ye-2],x=de[ye-1],oe==="M"&&(b=y,z=x)}return de})}function zL(E,a){var y=E[0],x=a.x1,b=a.y1,z=a.x2,ee=a.y2,re=E.slice(1).map(Number),ae=E;if("TQ".includes(y)||(a.qx=null,a.qy=null),y==="H")ae=["L",E[1],b];else if(y==="V")ae=["L",x,E[1]];else if(y==="S"){var oe=x*2-z,de=b*2-ee;a.x1=oe,a.y1=de,ae=["C",oe,de].concat(re)}else if(y==="T"){var ge=x*2-a.qx,ye=b*2-a.qy;a.qx=ge,a.qy=ye,ae=["Q",ge,ye].concat(re)}else if(y==="Q"){var De=re[0],ke=re[1];a.qx=De,a.qy=ke}return ae}function up(E){if(KC(E))return[].concat(E);for(var a=_L(E),y=(0,Nt.pi)({},ZC),x=0;x<a.length;x+=1){a[x]=zL(a[x],y);var b=a[x],z=b.length;y.x1=+b[z-2],y.y1=+b[z-1],y.x2=+b[z-4]||y.x1,y.y2=+b[z-3]||y.y1}return a}function Vh(E,a,y){var x=E[0],b=E[1],z=a[0],ee=a[1];return[x+(z-x)*y,b+(ee-b)*y]}function iA(E,a,y,x,b){var z=td([E,a],[y,x]),ee={x:0,y:0};if(typeof b=="number")if(b<=0)ee={x:E,y:a};else if(b>=z)ee={x:y,y:x};else{var re=Vh([E,a],[y,x],b/z),ae=re[0],oe=re[1];ee={x:ae,y:oe}}return{length:z,point:ee,min:{x:Math.min(E,y),y:Math.min(a,x)},max:{x:Math.max(E,y),y:Math.max(a,x)}}}function YC(E,a){var y=E.x,x=E.y,b=a.x,z=a.y,ee=y*b+x*z,re=Math.sqrt((Math.pow(y,2)+Math.pow(x,2))*(Math.pow(b,2)+Math.pow(z,2))),ae=y*z-x*b<0?-1:1,oe=ae*Math.acos(ee/re);return oe}function jL(E,a,y,x,b,z,ee,re,ae,oe){var de=Math.abs,ge=Math.sin,ye=Math.cos,De=Math.sqrt,ke=Math.PI,ze=de(y),We=de(x),Ve=(b%360+360)%360,Ze=Ve*(ke/180);if(E===re&&a===ae)return{x:E,y:a};if(ze===0||We===0)return iA(E,a,re,ae,oe).point;var Ye=(E-re)/2,et=(a-ae)/2,st={x:ye(Ze)*Ye+ge(Ze)*et,y:-ge(Ze)*Ye+ye(Ze)*et},ht=Math.pow(st.x,2)/Math.pow(ze,2)+Math.pow(st.y,2)/Math.pow(We,2);ht>1&&(ze*=De(ht),We*=De(ht));var mt=Math.pow(ze,2)*Math.pow(We,2)-Math.pow(ze,2)*Math.pow(st.y,2)-Math.pow(We,2)*Math.pow(st.x,2),dt=Math.pow(ze,2)*Math.pow(st.y,2)+Math.pow(We,2)*Math.pow(st.x,2),Ot=mt/dt;Ot=Ot<0?0:Ot;var _t=(z!==ee?1:-1)*De(Ot),wt={x:_t*(ze*st.y/We),y:_t*(-(We*st.x)/ze)},$t={x:ye(Ze)*wt.x-ge(Ze)*wt.y+(E+re)/2,y:ge(Ze)*wt.x+ye(Ze)*wt.y+(a+ae)/2},gn={x:(st.x-wt.x)/ze,y:(st.y-wt.y)/We},Xt=YC({x:1,y:0},gn),Tn={x:(-st.x-wt.x)/ze,y:(-st.y-wt.y)/We},er=YC(gn,Tn);!ee&&er>0?er-=2*ke:ee&&er<0&&(er+=2*ke),er%=2*ke;var En=Xt+er*oe,yn=ze*ye(En),Cn=We*ge(En),qn={x:ye(Ze)*yn-ge(Ze)*Cn+$t.x,y:ge(Ze)*yn+ye(Ze)*Cn+$t.y};return qn}function UL(E,a,y,x,b,z,ee,re,ae,oe,de){var ge,ye=de.bbox,De=ye===void 0?!0:ye,ke=de.length,ze=ke===void 0?!0:ke,We=de.sampleSize,Ve=We===void 0?30:We,Ze=typeof oe=="number",Ye=E,et=a,st=0,ht=[Ye,et,st],mt=[Ye,et],dt=0,Ot={x:0,y:0},_t=[{x:Ye,y:et}];Ze&&oe<=0&&(Ot={x:Ye,y:et});for(var wt=0;wt<=Ve;wt+=1){if(dt=wt/Ve,ge=jL(E,a,y,x,b,z,ee,re,ae,dt),Ye=ge.x,et=ge.y,De&&_t.push({x:Ye,y:et}),ze&&(st+=td(mt,[Ye,et])),mt=[Ye,et],Ze&&st>=oe&&oe>ht[2]){var $t=(st-oe)/(st-ht[2]);Ot={x:mt[0]*(1-$t)+ht[0]*$t,y:mt[1]*(1-$t)+ht[1]*$t}}ht=[Ye,et,st]}return Ze&&oe>=st&&(Ot={x:re,y:ae}),{length:st,point:Ot,min:{x:Math.min.apply(null,_t.map(function(gn){return gn.x})),y:Math.min.apply(null,_t.map(function(gn){return gn.y}))},max:{x:Math.max.apply(null,_t.map(function(gn){return gn.x})),y:Math.max.apply(null,_t.map(function(gn){return gn.y}))}}}function WL(E,a,y,x,b,z,ee,re,ae){var oe=1-ae;return{x:Math.pow(oe,3)*E+3*Math.pow(oe,2)*ae*y+3*oe*Math.pow(ae,2)*b+Math.pow(ae,3)*ee,y:Math.pow(oe,3)*a+3*Math.pow(oe,2)*ae*x+3*oe*Math.pow(ae,2)*z+Math.pow(ae,3)*re}}function XC(E,a,y,x,b,z,ee,re,ae,oe){var de,ge=oe.bbox,ye=ge===void 0?!0:ge,De=oe.length,ke=De===void 0?!0:De,ze=oe.sampleSize,We=ze===void 0?10:ze,Ve=typeof ae=="number",Ze=E,Ye=a,et=0,st=[Ze,Ye,et],ht=[Ze,Ye],mt=0,dt={x:0,y:0},Ot=[{x:Ze,y:Ye}];Ve&&ae<=0&&(dt={x:Ze,y:Ye});for(var _t=0;_t<=We;_t+=1){if(mt=_t/We,de=WL(E,a,y,x,b,z,ee,re,mt),Ze=de.x,Ye=de.y,ye&&Ot.push({x:Ze,y:Ye}),ke&&(et+=td(ht,[Ze,Ye])),ht=[Ze,Ye],Ve&&et>=ae&&ae>st[2]){var wt=(et-ae)/(et-st[2]);dt={x:ht[0]*(1-wt)+st[0]*wt,y:ht[1]*(1-wt)+st[1]*wt}}st=[Ze,Ye,et]}return Ve&&ae>=et&&(dt={x:ee,y:re}),{length:et,point:dt,min:{x:Math.min.apply(null,Ot.map(function($t){return $t.x})),y:Math.min.apply(null,Ot.map(function($t){return $t.y}))},max:{x:Math.max.apply(null,Ot.map(function($t){return $t.x})),y:Math.max.apply(null,Ot.map(function($t){return $t.y}))}}}function GL(E,a,y,x,b,z,ee){var re=1-ee;return{x:Math.pow(re,2)*E+2*re*ee*y+Math.pow(ee,2)*b,y:Math.pow(re,2)*a+2*re*ee*x+Math.pow(ee,2)*z}}function HL(E,a,y,x,b,z,ee,re){var ae,oe=re.bbox,de=oe===void 0?!0:oe,ge=re.length,ye=ge===void 0?!0:ge,De=re.sampleSize,ke=De===void 0?10:De,ze=typeof ee=="number",We=E,Ve=a,Ze=0,Ye=[We,Ve,Ze],et=[We,Ve],st=0,ht={x:0,y:0},mt=[{x:We,y:Ve}];ze&&ee<=0&&(ht={x:We,y:Ve});for(var dt=0;dt<=ke;dt+=1){if(st=dt/ke,ae=GL(E,a,y,x,b,z,st),We=ae.x,Ve=ae.y,de&&mt.push({x:We,y:Ve}),ye&&(Ze+=td(et,[We,Ve])),et=[We,Ve],ze&&Ze>=ee&&ee>Ye[2]){var Ot=(Ze-ee)/(Ze-Ye[2]);ht={x:et[0]*(1-Ot)+Ye[0]*Ot,y:et[1]*(1-Ot)+Ye[1]*Ot}}Ye=[We,Ve,Ze]}return ze&&ee>=Ze&&(ht={x:b,y:z}),{length:Ze,point:ht,min:{x:Math.min.apply(null,mt.map(function(_t){return _t.x})),y:Math.min.apply(null,mt.map(function(_t){return _t.y}))},max:{x:Math.max.apply(null,mt.map(function(_t){return _t.x})),y:Math.max.apply(null,mt.map(function(_t){return _t.y}))}}}function JC(E,a,y){for(var x,b,z,ee,re,ae,oe=up(E),de=typeof a=="number",ge,ye=[],De,ke=0,ze=0,We=0,Ve=0,Ze,Ye=[],et=[],st=0,ht={x:0,y:0},mt=ht,dt=ht,Ot=ht,_t=0,wt=0,$t=oe.length;wt<$t;wt+=1)Ze=oe[wt],De=Ze[0],ge=De==="M",ye=ge?ye:[ke,ze].concat(Ze.slice(1)),ge?(We=Ze[1],Ve=Ze[2],ht={x:We,y:Ve},mt=ht,st=0,de&&a<.001&&(Ot=ht)):De==="L"?(x=iA(ye[0],ye[1],ye[2],ye[3],(a||0)-_t),st=x.length,ht=x.min,mt=x.max,dt=x.point):De==="A"?(b=UL(ye[0],ye[1],ye[2],ye[3],ye[4],ye[5],ye[6],ye[7],ye[8],(a||0)-_t,y||{}),st=b.length,ht=b.min,mt=b.max,dt=b.point):De==="C"?(z=XC(ye[0],ye[1],ye[2],ye[3],ye[4],ye[5],ye[6],ye[7],(a||0)-_t,y||{}),st=z.length,ht=z.min,mt=z.max,dt=z.point):De==="Q"?(ee=HL(ye[0],ye[1],ye[2],ye[3],ye[4],ye[5],(a||0)-_t,y||{}),st=ee.length,ht=ee.min,mt=ee.max,dt=ee.point):De==="Z"&&(ye=[ke,ze,We,Ve],re=iA(ye[0],ye[1],ye[2],ye[3],(a||0)-_t),st=re.length,ht=re.min,mt=re.max,dt=re.point),de&&_t<a&&_t+st>=a&&(Ot=dt),et.push(mt),Ye.push(ht),_t+=st,ae=De!=="Z"?Ze.slice(-2):[We,Ve],ke=ae[0],ze=ae[1];return de&&a>=_t&&(Ot={x:ke,y:ze}),{length:_t,point:Ot,min:{x:Math.min.apply(null,Ye.map(function(gn){return gn.x})),y:Math.min.apply(null,Ye.map(function(gn){return gn.y}))},max:{x:Math.max.apply(null,et.map(function(gn){return gn.x})),y:Math.max.apply(null,et.map(function(gn){return gn.y}))}}}function VL(E,a){return JC(E,void 0,(0,Nt.pi)((0,Nt.pi)({},a),{bbox:!1,length:!0})).length}function nd(E){return Array.isArray(E)}var cp=function(E){if(nd(E))return E.reduce(function(a,y){return Math.min(a,y)},E[0])};function dp(E){if(!Array.isArray(E))return-1/0;var a=E.length;if(!a)return-1/0;for(var y=E[0],x=1;x<a;x++)y=Math.max(y,E[x]);return y}var KL=1e-5;function kv(E,a,y){return y===void 0&&(y=KL),E===a||Math.abs(E-a)<y}var ZL=function(E,a){return(E%a+a)%a},qC=ZL;function QL(E,a,y){if(E[y].length>7){E[y].shift();for(var x=E[y],b=y;x.length;)a[y]="A",E.splice(b+=1,0,["C"].concat(x.splice(0,6)));E.splice(y,1)}}function YL(E){return KC(E)&&E.every(function(a){var y=a[0];return"MC".includes(y)})}function fp(E,a,y){var x=E*Math.cos(y)-a*Math.sin(y),b=E*Math.sin(y)+a*Math.cos(y);return{x,y:b}}function oA(E,a,y,x,b,z,ee,re,ae,oe){var de=E,ge=a,ye=y,De=x,ke=re,ze=ae,We=Math.PI*120/180,Ve=Math.PI/180*(+b||0),Ze=[],Ye,et,st,ht,mt;if(oe)et=oe[0],st=oe[1],ht=oe[2],mt=oe[3];else{Ye=fp(de,ge,-Ve),de=Ye.x,ge=Ye.y,Ye=fp(ke,ze,-Ve),ke=Ye.x,ze=Ye.y;var dt=(de-ke)/2,Ot=(ge-ze)/2,_t=dt*dt/(ye*ye)+Ot*Ot/(De*De);_t>1&&(_t=Math.sqrt(_t),ye*=_t,De*=_t);var wt=ye*ye,$t=De*De,gn=(z===ee?-1:1)*Math.sqrt(Math.abs((wt*$t-wt*Ot*Ot-$t*dt*dt)/(wt*Ot*Ot+$t*dt*dt)));ht=gn*ye*Ot/De+(de+ke)/2,mt=gn*-De*dt/ye+(ge+ze)/2,et=Math.asin(((ge-mt)/De*Math.pow(10,9)>>0)/Math.pow(10,9)),st=Math.asin(((ze-mt)/De*Math.pow(10,9)>>0)/Math.pow(10,9)),et=de<ht?Math.PI-et:et,st=ke<ht?Math.PI-st:st,et<0&&(et=Math.PI*2+et),st<0&&(st=Math.PI*2+st),ee&&et>st&&(et-=Math.PI*2),!ee&&st>et&&(st-=Math.PI*2)}var Xt=st-et;if(Math.abs(Xt)>We){var Tn=st,er=ke,En=ze;st=et+We*(ee&&st>et?1:-1),ke=ht+ye*Math.cos(st),ze=mt+De*Math.sin(st),Ze=oA(ke,ze,ye,De,b,0,ee,er,En,[st,Tn,ht,mt])}Xt=st-et;var yn=Math.cos(et),Cn=Math.sin(et),qn=Math.cos(st),pn=Math.sin(st),lr=Math.tan(Xt/4),Jr=4/3*ye*lr,na=4/3*De*lr,Hr=[de,ge],Ar=[de+Jr*Cn,ge-na*yn],Wr=[ke+Jr*pn,ze-na*qn],ya=[ke,ze];if(Ar[0]=2*Hr[0]-Ar[0],Ar[1]=2*Hr[1]-Ar[1],oe)return Ar.concat(Wr,ya,Ze);Ze=Ar.concat(Wr,ya,Ze);for(var Ra=[],Aa=0,co=Ze.length;Aa<co;Aa+=1)Ra[Aa]=Aa%2?fp(Ze[Aa-1],Ze[Aa],Ve).y:fp(Ze[Aa],Ze[Aa+1],Ve).x;return Ra}function XL(E,a,y,x,b,z){var ee=.3333333333333333,re=2/3;return[ee*E+re*y,ee*a+re*x,ee*b+re*y,ee*z+re*x,b,z]}var $C=function(E,a,y,x){var b=.5,z=Vh([E,a],[y,x],b);return(0,Nt.ev)((0,Nt.ev)([],z,!0),[y,x,y,x],!1)};function JL(E,a){var y=E[0],x=E.slice(1).map(Number),b=x[0],z=x[1],ee,re=a.x1,ae=a.y1,oe=a.x,de=a.y;switch("TQ".includes(y)||(a.qx=null,a.qy=null),y){case"M":return a.x=b,a.y=z,E;case"A":return ee=[re,ae].concat(x),["C"].concat(oA(ee[0],ee[1],ee[2],ee[3],ee[4],ee[5],ee[6],ee[7],ee[8],ee[9]));case"Q":return a.qx=b,a.qy=z,ee=[re,ae].concat(x),["C"].concat(XL(ee[0],ee[1],ee[2],ee[3],ee[4],ee[5]));case"L":return["C"].concat($C(re,ae,b,z));case"Z":return re===oe&&ae===de?["C",re,ae,oe,de,oe,de]:["C"].concat($C(re,ae,oe,de));default:}return E}function sA(E,a){if(a===void 0&&(a=!1),YL(E)){var y=[].concat(E);return a?[y,[]]:y}for(var x=up(E),b=(0,Nt.pi)({},ZC),z=[],ee="",re=x.length,ae,oe,de=[],ge=0;ge<re;ge+=1){x[ge]&&(ee=x[ge][0]),z[ge]=ee;var ye=JL(x[ge],b);x[ge]=ye,QL(x,z,ge),re=x.length,ee==="Z"&&de.push(ge),ae=x[ge],oe=ae.length,b.x1=+ae[oe-2],b.y1=+ae[oe-1],b.x2=+ae[oe-4]||b.x1,b.y2=+ae[oe-3]||b.y1}return a?[x,de]:x}var qL=50;function $L(E,a){a===void 0&&(a=.5);var y=E.slice(0,2),x=E.slice(2,4),b=E.slice(4,6),z=E.slice(6,8),ee=Vh(y,x,a),re=Vh(x,b,a),ae=Vh(b,z,a),oe=Vh(ee,re,a),de=Vh(re,ae,a),ge=Vh(oe,de,a);return[["C"].concat(ee,oe,ge),["C"].concat(de,ae,z)]}function e2(E){return E.map(function(a,y,x){var b=y&&x[y-1].slice(-2).concat(a.slice(1)),z=y?XC(b[0],b[1],b[2],b[3],b[4],b[5],b[6],b[7],b[8],{bbox:!1}).length:0,ee;return y?ee=z?$L(b):[a,a]:ee=[a],{s:a,ss:ee,l:z}})}function t2(E,a,y,x){if(x===void 0&&(x=0),x>qL)return console.warn("Maximum recursion depth reached in equalizeSegments"),[E,a];var b=e2(E),z=e2(a),ee=b.length,re=z.length,ae=b.filter(function(Ve){return Ve.l}).length,oe=z.filter(function(Ve){return Ve.l}).length,de=b.filter(function(Ve){return Ve.l}).reduce(function(Ve,Ze){var Ye=Ze.l;return Ve+Ye},0)/ae||0,ge=z.filter(function(Ve){return Ve.l}).reduce(function(Ve,Ze){var Ye=Ze.l;return Ve+Ye},0)/oe||0,ye=y||Math.max(ee,re),De=[de,ge],ke=[ye-ee,ye-re],ze=0,We=[b,z].map(function(Ve,Ze){return Ve.l===ye?Ve.map(function(Ye){return Ye.s}):Ve.map(function(Ye,et){return ze=et&&ke[Ze]&&Ye.l>=De[Ze],ke[Ze]-=ze?1:0,ze?Ye.ss:[Ye.s]}).flat()});return We[0].length===We[1].length?We:t2(We[0],We[1],ye,x+1)}function eB(E,a,y,x,b,z,ee,re){return 3*((re-a)*(y+b)-(ee-E)*(x+z)+x*(E-b)-y*(a-z)+re*(b+E/3)-ee*(z+a/3))/20}function tB(E){var a=0,y=0,x=0;return sA(E).map(function(b){var z;switch(b[0]){case"M":return a=b[1],y=b[2],0;default:var ee=b.slice(1),re=ee[0],ae=ee[1],oe=ee[2],de=ee[3],ge=ee[4],ye=ee[5];return x=eB(a,y,re,ae,oe,de,ge,ye),z=b.slice(-2),a=z[0],y=z[1],x}}).reduce(function(b,z){return b+z},0)}function n2(E){return tB(E)>=0}function nB(E){var a=E.slice(1).map(function(y,x,b){return x?b[x-1].slice(-2).concat(y.slice(1)):E[0].slice(1).concat(y.slice(1))}).map(function(y){return y.map(function(x,b){return y[y.length-b-2*(1-b%2)]})}).reverse();return[["M"].concat(a[0].slice(0,2))].concat(a.map(function(y){return["C"].concat(y.slice(2))}))}function rB(E){return E.map(function(a){return Array.isArray(a)?[].concat(a):a})}function aB(E){var a=E.length,y=a-1;return E.map(function(x,b){return E.map(function(z,ee){var re=b+ee,ae;return ee===0||E[re]&&E[re][0]==="M"?(ae=E[re],["M"].concat(ae.slice(-2))):(re>=a&&(re-=y),E[re])})})}function iB(E,a){var y=E.length-1,x=[],b=0,z=0,ee=aB(E);return ee.forEach(function(re,ae){E.slice(1).forEach(function(oe,de){z+=td(E[(ae+de)%y].slice(-2),a[de%y].slice(-2))}),x[ae]=z,z=0}),b=x.indexOf(Math.min.apply(null,x)),ee[b]}var oB=function(E){return E===void 0},qo=oB,sB={}.toString,lB=function(E,a){return sB.call(E)==="[object "+a+"]"},r2=lB,uB=function(E){return r2(E,"Boolean")},_v=uB;function Xi(E){return typeof E=="function"}var Tu=function(E){var a=typeof E;return E!==null&&a==="object"||a==="function"};function cB(E,a,y){return JC(E,a,(0,Nt.pi)((0,Nt.pi)({},y),{bbox:!1,length:!0})).point}var Vi=Te(20068);function dB(E,a){for(;!{}.hasOwnProperty.call(E,a)&&(E=(0,ep.Z)(E))!==null;);return E}function lA(){return lA=typeof Reflect!="undefined"&&Reflect.get?Reflect.get.bind():function(E,a,y){var x=dB(E,a);if(x){var b=Object.getOwnPropertyDescriptor(x,a);return b.get?b.get.call(arguments.length<3?E:y):b.value}},lA.apply(null,arguments)}function a2(E,a,y,x){var b=lA((0,ep.Z)(1&x?E.prototype:E),a,y);return 2&x&&typeof b=="function"?function(z){return b.apply(y,z)}:b}var fB=Te(97047);function Dc(E,a,y,x){var b=E-y,z=a-x;return Math.sqrt(b*b+z*z)}function hp(E,a){var y=Math.min.apply(Math,(0,zs.Z)(E)),x=Math.min.apply(Math,(0,zs.Z)(a)),b=Math.max.apply(Math,(0,zs.Z)(E)),z=Math.max.apply(Math,(0,zs.Z)(a));return{x:y,y:x,width:b-y,height:z-x}}function i2(E){return(E+Math.PI*2)%(Math.PI*2)}function o2(E,a){var y=Math.abs(E);return a>0?y:y*-1}function hB(E,a,y,x,b,z){var ee=y,re=x;if(ee===0||re===0)return{x:E,y:a};for(var ae=b-E,oe=z-a,de=Math.abs(ae),ge=Math.abs(oe),ye=ee*ee,De=re*re,ke=Math.PI/4,ze=0,We=0,Ve=0;Ve<4;Ve++){ze=ee*Math.cos(ke),We=re*Math.sin(ke);var Ze=(ye-De)*Math.pow(Math.cos(ke),3)/ee,Ye=(De-ye)*Math.pow(Math.sin(ke),3)/re,et=ze-Ze,st=We-Ye,ht=de-Ze,mt=ge-Ye,dt=Math.hypot(st,et),Ot=Math.hypot(mt,ht),_t=dt*Math.asin((et*mt-st*ht)/(dt*Ot)),wt=_t/Math.sqrt(ye+De-ze*ze-We*We);ke+=wt,ke=Math.min(Math.PI/2,Math.max(0,ke))}return{x:E+o2(ze,ae),y:a+o2(We,oe)}}function gB(E,a,y,x,b,z,ee,re){return-1*y*Math.cos(b)*Math.sin(re)-x*Math.sin(b)*Math.cos(re)}function vB(E,a,y,x,b,z,ee,re){return-1*y*Math.sin(b)*Math.sin(re)+x*Math.cos(b)*Math.cos(re)}function mB(E,a,y){return Math.atan(-a/E*Math.tan(y))}function pB(E,a,y){return Math.atan(a/(E*Math.tan(y)))}function yB(E,a,y,x,b,z){return y*Math.cos(b)*Math.cos(z)-x*Math.sin(b)*Math.sin(z)+E}function EB(E,a,y,x,b,z){return y*Math.sin(b)*Math.cos(z)+x*Math.cos(b)*Math.sin(z)+a}function AB(E,a,y,x){var b=Math.atan2(x*E,y*a);return(b+Math.PI*2)%(Math.PI*2)}function s2(E,a,y){return{x:E*Math.cos(y),y:a*Math.sin(y)}}function l2(E,a,y){var x=Math.cos(y),b=Math.sin(y);return[E*x-a*b,E*b+a*x]}function xB(E,a,y,x,b,z,ee){for(var re=mB(y,x,b),ae=1/0,oe=-1/0,de=[z,ee],ge=-Math.PI*2;ge<=Math.PI*2;ge+=Math.PI){var ye=re+ge;z<ee?z<ye&&ye<ee&&de.push(ye):ee<ye&&ye<z&&de.push(ye)}for(var De=0;De<de.length;De++){var ke=yB(E,a,y,x,b,de[De]);ke<ae&&(ae=ke),ke>oe&&(oe=ke)}for(var ze=pB(y,x,b),We=1/0,Ve=-1/0,Ze=[z,ee],Ye=-Math.PI*2;Ye<=Math.PI*2;Ye+=Math.PI){var et=ze+Ye;z<ee?z<et&&et<ee&&Ze.push(et):ee<et&&et<z&&Ze.push(et)}for(var st=0;st<Ze.length;st++){var ht=EB(E,a,y,x,b,Ze[st]);ht<We&&(We=ht),ht>Ve&&(Ve=ht)}return{x:ae,y:We,width:oe-ae,height:Ve-We}}function m$(E,a,y,x,b,z,ee,re,ae){var oe=l2(re-E,ae-a,-b),de=_slicedToArray(oe,2),ge=de[0],ye=de[1],De=hB(0,0,y,x,ge,ye),ke=AB(y,x,De.x,De.y);ke<z?De=s2(y,x,z):ke>ee&&(De=s2(y,x,ee));var ze=l2(De.x,De.y,b);return{x:ze[0]+E,y:ze[1]+a}}function p$(E,a,y,x,b,z,ee,re){var ae=(ee-z)*re+z,oe=gB(E,a,y,x,b,z,ee,ae),de=vB(E,a,y,x,b,z,ee,ae);return i2(Math.atan2(de,oe))}var SB=1e-4;function u2(E,a,y,x,b,z){var ee=-1,re=1/0,ae=[y,x],oe=20;z&&z>200&&(oe=z/10);for(var de=1/oe,ge=de/10,ye=0;ye<=oe;ye++){var De=ye*de,ke=[b.apply(void 0,(0,zs.Z)(E.concat([De]))),b.apply(void 0,(0,zs.Z)(a.concat([De])))],ze=Dc(ae[0],ae[1],ke[0],ke[1]);ze<re&&(ee=De,re=ze)}if(ee===0)return{x:E[0],y:a[0]};if(ee===1){var We=E.length;return{x:E[We-1],y:a[We-1]}}re=1/0;for(var Ve=0;Ve<32&&!(ge<SB);Ve++){var Ze=ee-ge,Ye=ee+ge,et=[b.apply(void 0,(0,zs.Z)(E.concat([Ze]))),b.apply(void 0,(0,zs.Z)(a.concat([Ze])))],st=Dc(ae[0],ae[1],et[0],et[1]);if(Ze>=0&&st<re)ee=Ze,re=st;else{var ht=[b.apply(void 0,(0,zs.Z)(E.concat([Ye]))),b.apply(void 0,(0,zs.Z)(a.concat([Ye])))],mt=Dc(ae[0],ae[1],ht[0],ht[1]);Ye<=1&&mt<re?(ee=Ye,re=mt):ge*=.5}}return{x:b.apply(void 0,(0,zs.Z)(E.concat([ee]))),y:b.apply(void 0,(0,zs.Z)(a.concat([ee])))}}function bB(E,a){for(var y=0,x=E.length,b=0;b<x;b++){var z=E[b],ee=a[b],re=E[(b+1)%x],ae=a[(b+1)%x];y+=Dc(z,ee,re,ae)}return y/2}function y$(E,a,y,x){return hp([E,y],[a,x])}function c2(E,a,y,x){return Dc(E,a,y,x)}function _f(E,a,y,x,b){return{x:(1-b)*E+b*y,y:(1-b)*a+b*x}}function CB(E,a,y,x,b,z){var ee=(y-E)*(b-E)+(x-a)*(z-a);if(ee<0)return Dc(E,a,b,z);var re=(y-E)*(y-E)+(x-a)*(x-a);return ee>re?Dc(y,x,b,z):d2(E,a,y,x,b,z)}function d2(E,a,y,x,b,z){var ee=[y-E,x-a];if(ML(ee,[0,0]))return Math.sqrt((b-E)*(b-E)+(z-a)*(z-a));var re=[-ee[1],ee[0]];PL(re,re);var ae=[b-E,z-a];return Math.abs(wL(ae,re))}function E$(E,a,y,x){return Math.atan2(x-a,y-E)}function Ng(E,a,y,x,b){var z=1-b;return z*z*z*E+3*a*b*z*z+3*y*b*b*z+x*b*b*b}function f2(E,a,y,x,b){var z=1-b;return 3*(z*z*(a-E)+2*z*b*(y-a)+b*b*(x-y))}function h2(E,a,y,x){var b=-3*E+9*a-9*y+3*x,z=6*E-12*a+6*y,ee=3*a-3*E,re=[],ae,oe,de;if(kv(b,0))kv(z,0)||(ae=-ee/z,ae>=0&&ae<=1&&re.push(ae));else{var ge=z*z-4*b*ee;kv(ge,0)?re.push(-z/(2*b)):ge>0&&(de=Math.sqrt(ge),ae=(-z+de)/(2*b),oe=(-z-de)/(2*b),ae>=0&&ae<=1&&re.push(ae),oe>=0&&oe<=1&&re.push(oe))}return re}function PB(E,a,y,x,b,z,ee,re,ae){var oe=Ng(E,y,b,ee,ae),de=Ng(a,x,z,re,ae),ge=_f(E,a,y,x,ae),ye=_f(y,x,b,z,ae),De=_f(b,z,ee,re,ae),ke=_f(ge.x,ge.y,ye.x,ye.y,ae),ze=_f(ye.x,ye.y,De.x,De.y,ae);return[[E,a,ge.x,ge.y,ke.x,ke.y,oe,de],[oe,de,ze.x,ze.y,De.x,De.y,ee,re]]}function uA(E,a,y,x,b,z,ee,re,ae){if(ae===0)return bB([E,y,b,ee],[a,x,z,re]);var oe=PB(E,a,y,x,b,z,ee,re,.5),de=[].concat(_toConsumableArray(oe[0]),[ae-1]),ge=[].concat(_toConsumableArray(oe[1]),[ae-1]);return uA.apply(void 0,_toConsumableArray(de))+uA.apply(void 0,_toConsumableArray(ge))}function wB(E,a,y,x,b,z,ee,re){for(var ae=[E,ee],oe=[a,re],de=h2(E,y,b,ee),ge=h2(a,x,z,re),ye=0;ye<de.length;ye++)ae.push(Ng(E,y,b,ee,de[ye]));for(var De=0;De<ge.length;De++)oe.push(Ng(a,x,z,re,ge[De]));return hp(ae,oe)}function A$(E,a,y,x,b,z,ee,re){return uA(E,a,y,x,b,z,ee,re,3)}function MB(E,a,y,x,b,z,ee,re,ae,oe,de){return u2([E,y,b,ee],[a,x,z,re],ae,oe,Ng,de)}function g2(E,a,y,x,b,z,ee,re,ae,oe,de){var ge=MB(E,a,y,x,b,z,ee,re,ae,oe,de);return Dc(ge.x,ge.y,ae,oe)}function x$(E,a,y,x,b,z,ee,re,ae){return{x:Ng(E,y,b,ee,ae),y:Ng(a,x,z,re,ae)}}function S$(E,a,y,x,b,z,ee,re,ae){var oe=f2(E,y,b,ee,ae),de=f2(a,x,z,re,ae);return i2(Math.atan2(de,oe))}function v2(E){for(var a=0,y=[],x=0;x<E.length-1;x++){var b=E[x],z=E[x+1],ee=Dc(b[0],b[1],z[0],z[1]),re={from:b,to:z,length:ee};y.push(re),a+=ee}return{segments:y,totalLength:a}}function m2(E){if(E.length<2)return 0;for(var a=0,y=0;y<E.length-1;y++){var x=E[y],b=E[y+1];a+=Dc(x[0],x[1],b[0],b[1])}return a}function p2(E,a){if(a>1||a<0||E.length<2)return null;var y=v2(E),x=y.segments,b=y.totalLength;if(b===0)return{x:E[0][0],y:E[0][1]};for(var z=0,ee=null,re=0;re<x.length;re++){var ae=x[re],oe=ae.from,de=ae.to,ge=ae.length/b;if(a>=z&&a<=z+ge){var ye=(a-z)/ge;ee=_f(oe[0],oe[1],de[0],de[1],ye);break}z+=ge}return ee}function y2(E,a){if(a>1||a<0||E.length<2)return 0;for(var y=v2(E),x=y.segments,b=y.totalLength,z=0,ee=0,re=0;re<x.length;re++){var ae=x[re],oe=ae.from,de=ae.to,ge=ae.length/b;if(a>=z&&a<=z+ge){ee=Math.atan2(de[1]-oe[1],de[0]-oe[0]);break}z+=ge}return ee}function E2(E,a,y){for(var x=1/0,b=0;b<E.length-1;b++){var z=E[b],ee=E[b+1],re=CB(z[0],z[1],ee[0],ee[1],a,y);re<x&&(x=re)}return x}function DB(E){for(var a=[],y=[],x=0;x<E.length;x++){var b=E[x];a.push(b[0]),y.push(b[1])}return hp(a,y)}function IB(E){return m2(E)}function b$(E,a){return p2(E,a)}function C$(E,a,y){return E2(E,a,y)}function P$(E,a){return y2(E,a)}function gp(E){var a=E.slice(0);return E.length&&a.push(E[0]),a}function w$(E){return DB(E)}function M$(E){return m2(gp(E))}function D$(E,a){return p2(gp(E),a)}function I$(E,a,y){return E2(gp(E),a,y)}function O$(E,a){return y2(gp(E),a)}function zv(E,a,y,x){var b=1-x;return b*b*E+2*x*b*a+x*x*y}function A2(E,a,y){var x=E+y-2*a;if(kv(x,0))return[.5];var b=(E-a)/x;return b<=1&&b>=0?[b]:[]}function OB(E,a,y,x,b,z,ee){var re=zv(E,y,b,ee),ae=zv(a,x,z,ee),oe=_f(E,a,y,x,ee),de=_f(y,x,b,z,ee);return[[E,a,oe.x,oe.y,re,ae],[re,ae,de.x,de.y,b,z]]}function cA(E,a,y,x,b,z,ee){if(ee===0)return(Dc(E,a,y,x)+Dc(y,x,b,z)+Dc(E,a,b,z))/2;var re=OB(E,a,y,x,b,z,.5),ae=re[0],oe=re[1];return ae.push(ee-1),oe.push(ee-1),cA.apply(void 0,_toConsumableArray(ae))+cA.apply(void 0,_toConsumableArray(oe))}function TB(E,a,y,x,b,z){var ee=A2(E,y,b)[0],re=A2(a,x,z)[0],ae=[E,b],oe=[a,z];return ee!==void 0&&ae.push(zv(E,y,b,ee)),re!==void 0&&oe.push(zv(a,x,z,re)),hp(ae,oe)}function T$(E,a,y,x,b,z){return cA(E,a,y,x,b,z,3)}function LB(E,a,y,x,b,z,ee,re){return u2([E,y,b],[a,x,z],ee,re,zv)}function BB(E,a,y,x,b,z,ee,re){var ae=LB(E,a,y,x,b,z,ee,re);return Dc(ae.x,ae.y,ee,re)}var Ic=Te(75044),Kh=Te(3202),NB=Te(3208);function Zh(E,a){var y=typeof Symbol!="undefined"&&E[Symbol.iterator]||E["@@iterator"];if(!y){if(Array.isArray(E)||(y=(0,NB.Z)(E))||a&&E&&typeof E.length=="number"){y&&(E=y);var x=0,b=function(){};return{s:b,n:function(){return x>=E.length?{done:!0}:{done:!1,value:E[x++]}},e:function(oe){throw oe},f:b}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
|
|
|
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var z,ee=!0,re=!1;return{s:function(){y=y.call(E)},n:function(){var oe=y.next();return ee=oe.done,oe},e:function(oe){re=!0,z=oe},f:function(){try{ee||y.return==null||y.return()}finally{if(re)throw z}}}}var Rg=Te(75931);var va=function(E){return E.GROUP="g",E.FRAGMENT="fragment",E.CIRCLE="circle",E.ELLIPSE="ellipse",E.IMAGE="image",E.RECT="rect",E.LINE="line",E.POLYLINE="polyline",E.POLYGON="polygon",E.TEXT="text",E.PATH="path",E.HTML="html",E.MESH="mesh",E}({}),vp=function(E){return E[E.ZERO=0]="ZERO",E[E.NEGATIVE_ONE=1]="NEGATIVE_ONE",E}({}),Qh=function(){function E(){(0,Ha.Z)(this,E),this.plugins=[]}return(0,Va.Z)(E,[{key:"addRenderingPlugin",value:function(y){this.plugins.push(y),this.context.renderingPlugins.push(y)}},{key:"removeAllRenderingPlugins",value:function(){var y=this;this.plugins.forEach(function(x){var b=y.context.renderingPlugins.indexOf(x);b>=0&&y.context.renderingPlugins.splice(b,1)})}}])}(),RB=function(){function E(a){(0,Ha.Z)(this,E),this.clipSpaceNearZ=vp.NEGATIVE_ONE,this.plugins=[],this.config=(0,ps.Z)({enableDirtyCheck:!0,enableCulling:!1,enableAutoRendering:!0,enableDirtyRectangleRendering:!0,enableDirtyRectangleRenderingDebug:!1,enableSizeAttenuation:!0,enableRenderingOptimization:!1},a)}return(0,Va.Z)(E,[{key:"registerPlugin",value:function(y){var x=this.plugins.findIndex(function(b){return b===y});x===-1&&this.plugins.push(y)}},{key:"unregisterPlugin",value:function(y){var x=this.plugins.findIndex(function(b){return b===y});x>-1&&this.plugins.splice(x,1)}},{key:"getPlugins",value:function(){return this.plugins}},{key:"getPlugin",value:function(y){return this.plugins.find(function(x){return x.name===y})}},{key:"getConfig",value:function(){return this.config}},{key:"setConfig",value:function(y){Object.assign(this.config,y)}}])}(),dA=jh,k0=Rf,FB=RT,kB=NT,x2=tp,fA=zT,Gl=function(){function E(){(0,Ha.Z)(this,E),this.center=[0,0,0],this.halfExtents=[0,0,0],this.min=[0,0,0],this.max=[0,0,0]}return(0,Va.Z)(E,[{key:"update",value:function(y,x){k0(this.center,y),k0(this.halfExtents,x),fA(this.min,this.center,this.halfExtents),dA(this.max,this.center,this.halfExtents)}},{key:"setMinMax",value:function(y,x){dA(this.center,x,y),x2(this.center,this.center,.5),fA(this.halfExtents,x,y),x2(this.halfExtents,this.halfExtents,.5),k0(this.min,y),k0(this.max,x)}},{key:"getMin",value:function(){return this.min}},{key:"getMax",value:function(){return this.max}},{key:"add",value:function(y){if(!E.isEmpty(y)){if(E.isEmpty(this)){this.setMinMax(y.getMin(),y.getMax());return}var x=this.center,b=x[0],z=x[1],ee=x[2],re=this.halfExtents,ae=re[0],oe=re[1],de=re[2],ge=b-ae,ye=b+ae,De=z-oe,ke=z+oe,ze=ee-de,We=ee+de,Ve=y.center,Ze=Ve[0],Ye=Ve[1],et=Ve[2],st=y.halfExtents,ht=st[0],mt=st[1],dt=st[2],Ot=Ze-ht,_t=Ze+ht,wt=Ye-mt,$t=Ye+mt,gn=et-dt,Xt=et+dt;Ot<ge&&(ge=Ot),_t>ye&&(ye=_t),wt<De&&(De=wt),$t>ke&&(ke=$t),gn<ze&&(ze=gn),Xt>We&&(We=Xt),x[0]=(ge+ye)*.5,x[1]=(De+ke)*.5,x[2]=(ze+We)*.5,re[0]=(ye-ge)*.5,re[1]=(ke-De)*.5,re[2]=(We-ze)*.5,this.min[0]=ge,this.min[1]=De,this.min[2]=ze,this.max[0]=ye,this.max[1]=ke,this.max[2]=We}}},{key:"setFromTransformedAABB",value:function(y,x){var b=this.center,z=this.halfExtents,ee=y.center,re=y.halfExtents,ae=x[0],oe=x[4],de=x[8],ge=x[1],ye=x[5],De=x[9],ke=x[2],ze=x[6],We=x[10],Ve=Math.abs(ae),Ze=Math.abs(oe),Ye=Math.abs(de),et=Math.abs(ge),st=Math.abs(ye),ht=Math.abs(De),mt=Math.abs(ke),dt=Math.abs(ze),Ot=Math.abs(We);b[0]=x[12]+ae*ee[0]+oe*ee[1]+de*ee[2],b[1]=x[13]+ge*ee[0]+ye*ee[1]+De*ee[2],b[2]=x[14]+ke*ee[0]+ze*ee[1]+We*ee[2],z[0]=Ve*re[0]+Ze*re[1]+Ye*re[2],z[1]=et*re[0]+st*re[1]+ht*re[2],z[2]=mt*re[0]+dt*re[1]+Ot*re[2],fA(this.min,b,z),dA(this.max,b,z)}},{key:"intersects",value:function(y){var x=this.getMax(),b=this.getMin(),z=y.getMax(),ee=y.getMin();return b[0]<=z[0]&&x[0]>=ee[0]&&b[1]<=z[1]&&x[1]>=ee[1]&&b[2]<=z[2]&&x[2]>=ee[2]}},{key:"intersection",value:function(y){if(!this.intersects(y))return null;var x=new E,b=FB([0,0,0],this.getMin(),y.getMin()),z=kB([0,0,0],this.getMax(),y.getMax());return x.setMinMax(b,z),x}},{key:"getNegativeFarPoint",value:function(y){return y.pnVertexFlag===273?k0([0,0,0],this.min):y.pnVertexFlag===272?[this.min[0],this.min[1],this.max[2]]:y.pnVertexFlag===257?[this.min[0],this.max[1],this.min[2]]:y.pnVertexFlag===256?[this.min[0],this.max[1],this.max[2]]:y.pnVertexFlag===17?[this.max[0],this.min[1],this.min[2]]:y.pnVertexFlag===16?[this.max[0],this.min[1],this.max[2]]:y.pnVertexFlag===1?[this.max[0],this.max[1],this.min[2]]:[this.max[0],this.max[1],this.max[2]]}},{key:"getPositiveFarPoint",value:function(y){return y.pnVertexFlag===273?k0([0,0,0],this.max):y.pnVertexFlag===272?[this.max[0],this.max[1],this.min[2]]:y.pnVertexFlag===257?[this.max[0],this.min[1],this.max[2]]:y.pnVertexFlag===256?[this.max[0],this.min[1],this.min[2]]:y.pnVertexFlag===17?[this.min[0],this.max[1],this.max[2]]:y.pnVertexFlag===16?[this.min[0],this.max[1],this.min[2]]:y.pnVertexFlag===1?[this.min[0],this.min[1],this.max[2]]:[this.min[0],this.min[1],this.min[2]]}}],[{key:"isEmpty",value:function(y){return!y||y.halfExtents[0]===0&&y.halfExtents[1]===0&&y.halfExtents[2]===0}}])}(),_B=function(){function E(a,y){(0,Ha.Z)(this,E),this.distance=a||0,this.normal=y||Yl(0,1,0),this.updatePNVertexFlag()}return(0,Va.Z)(E,[{key:"updatePNVertexFlag",value:function(){this.pnVertexFlag=(+(this.normal[0]>=0)<<8)+(+(this.normal[1]>=0)<<4)+ +(this.normal[2]>=0)}},{key:"distanceToPoint",value:function(y){return Gd(y,this.normal)-this.distance}},{key:"normalize",value:function(){var y=1/SC(this.normal);tp(this.normal,this.normal,y),this.distance*=y}},{key:"intersectsLine",value:function(y,x,b){var z=this.distanceToPoint(y),ee=this.distanceToPoint(x),re=z/(z-ee),ae=re>=0&&re<=1;return ae&&b&&JE(b,y,x,re),ae}}])}(),_0=function(E){return E[E.OUTSIDE=4294967295]="OUTSIDE",E[E.INSIDE=0]="INSIDE",E[E.INDETERMINATE=2147483647]="INDETERMINATE",E}({}),zB=function(){function E(a){if((0,Ha.Z)(this,E),this.planes=[],a)this.planes=a;else for(var y=0;y<6;y++)this.planes.push(new _B)}return(0,Va.Z)(E,[{key:"extractFromVPMatrix",value:function(y){var x=(0,Ps.Z)(y,16),b=x[0],z=x[1],ee=x[2],re=x[3],ae=x[4],oe=x[5],de=x[6],ge=x[7],ye=x[8],De=x[9],ke=x[10],ze=x[11],We=x[12],Ve=x[13],Ze=x[14],Ye=x[15];Pc(this.planes[0].normal,re-b,ge-ae,ze-ye),this.planes[0].distance=Ye-We,Pc(this.planes[1].normal,re+b,ge+ae,ze+ye),this.planes[1].distance=Ye+We,Pc(this.planes[2].normal,re+z,ge+oe,ze+De),this.planes[2].distance=Ye+Ve,Pc(this.planes[3].normal,re-z,ge-oe,ze-De),this.planes[3].distance=Ye-Ve,Pc(this.planes[4].normal,re-ee,ge-de,ze-ke),this.planes[4].distance=Ye-Ze,Pc(this.planes[5].normal,re+ee,ge+de,ze+ke),this.planes[5].distance=Ye+Ze,this.planes.forEach(function(et){et.normalize(),et.updatePNVertexFlag()})}}])}(),hc=function(){function E(){var a=arguments.length>0&&arguments[0]!==void 0?arguments[0]:0,y=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;(0,Ha.Z)(this,E),this.x=0,this.y=0,this.x=a,this.y=y}return(0,Va.Z)(E,[{key:"clone",value:function(){return new E(this.x,this.y)}},{key:"copyFrom",value:function(y){this.x=y.x,this.y=y.y}}])}(),z0=function(){function E(a,y,x,b){(0,Ha.Z)(this,E),this.x=a,this.y=y,this.width=x,this.height=b,this.left=a,this.right=a+x,this.top=y,this.bottom=y+b}return(0,Va.Z)(E,[{key:"toJSON",value:function(){}}],[{key:"fromRect",value:function(y){return new E(y.x,y.y,y.width,y.height)}},{key:"applyTransform",value:function(y,x){var b=Nv(y.x,y.y,0,1),z=Nv(y.x+y.width,y.y,0,1),ee=Nv(y.x,y.y+y.height,0,1),re=Nv(y.x+y.width,y.y+y.height,0,1),ae=Ff(),oe=Ff(),de=Ff(),ge=Ff();ch(ae,b,x),ch(oe,z,x),ch(de,ee,x),ch(ge,re,x);var ye=Math.min(ae[0],oe[0],de[0],ge[0]),De=Math.min(ae[1],oe[1],de[1],ge[1]),ke=Math.max(ae[0],oe[0],de[0],ge[0]),ze=Math.max(ae[1],oe[1],de[1],ge[1]);return E.fromRect({x:ye,y:De,width:ke-ye,height:ze-De})}}])}(),Ll="Method not implemented.",j0="Use document.documentElement instead.",jB="Cannot append a destroyed element.";function U0(E){return E===void 0?0:E>360||E<-360?E%360:E}var hA=js();function zc(E){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,y=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,x=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0;return Array.isArray(E)&&E.length===3?x?lh(E):Rf(hA,E):ji(E)?x?Yl(E,a,y):Pc(hA,E,a,y):x?Yl(E[0],E[1]||a,E[2]||y):Pc(hA,E[0],E[1]||a,E[2]||y)}var UB=Math.PI/180;function Bl(E){return E*UB}var WB=180/Math.PI;function rd(E){return E*WB}var GB=.9;function L$(E){return E%=400,E<0&&(E+=400),E*GB}function B$(E){return E/360}function HB(E){return 360*E}var mp=Math.PI/2;function VB(E,a){var y=a[0],x=a[1],b=a[2],z=a[3],ee=y*y,re=x*x,ae=b*b,oe=z*z,de=ee+re+ae+oe,ge=y*z-x*b;return ge>.499995*de?(E[0]=mp,E[1]=2*Math.atan2(x,y),E[2]=0):ge<-.499995*de?(E[0]=-mp,E[1]=2*Math.atan2(x,y),E[2]=0):(E[0]=Math.asin(2*(y*b-z*x)),E[1]=Math.atan2(2*(y*z+x*b),1-2*(ae+oe)),E[2]=Math.atan2(2*(y*x+b*z),1-2*(re+ae))),E}function KB(E,a){var y,x,b=R0(js(),a),z=(0,Ps.Z)(b,3),ee=z[0],re=z[1],ae=z[2],oe=Math.asin(-a[2]/ee);return oe<mp?oe>-mp?(y=Math.atan2(a[6]/re,a[10]/ae),x=Math.atan2(a[1]/ee,a[0]/ee)):(x=0,y=-Math.atan2(a[4]/re,a[5]/re)):(x=0,y=Math.atan2(a[4]/re,a[5]/re)),E[0]=y,E[1]=oe,E[2]=x,E}function gA(E,a){return a.length===16?KB(E,a):VB(E,a)}function ZB(E,a,y,x,b){var z=Math.cos(E),ee=Math.sin(E);return mL(x*z,b*ee,0,-x*ee,b*z,0,a,y,1)}function QB(E,a,y,x,b,z,ee){var re=arguments.length>7&&arguments[7]!==void 0?arguments[7]:!1,ae=2*z,oe=y-a,de=x-b,ge=ae/oe,ye=ae/de,De=(y+a)/oe,ke=(x+b)/de,ze,We,Ve=ee-z,Ze=ee*z;return re?(ze=-ee/Ve,We=-Ze/Ve):(ze=-(ee+z)/Ve,We=-2*Ze/Ve),E[0]=ge,E[1]=0,E[2]=0,E[3]=0,E[4]=0,E[5]=ye,E[6]=0,E[7]=0,E[8]=De,E[9]=ke,E[10]=ze,E[11]=-1,E[12]=0,E[13]=0,E[14]=We,E[15]=0,E}function S2(E){var a=E[0],y=E[1],x=E[3],b=E[4],z=Math.sqrt(a*a+y*y),ee=Math.sqrt(x*x+b*b),re=a*b-y*x;if(re<0&&(a<b?z=-z:ee=-ee),z){var ae=1/z;a*=ae,y*=ae}if(ee){var oe=1/ee;x*=oe,b*=oe}var de=Math.atan2(y,a),ge=rd(de);return[E[6],E[7],z,ee,ge]}var zf=jl(),gf=jl(),jv=Ff(),Zo=[js(),js(),js()],b2=js();function YB(E,a,y,x,b,z){if(!XB(zf,E)||(B0(gf,zf),gf[3]=0,gf[7]=0,gf[11]=0,gf[15]=1,Math.abs(wC(gf))<1e-8))return!1;var ee=zf[3],re=zf[7],ae=zf[11],oe=zf[12],de=zf[13],ge=zf[14],ye=zf[15];if(ee!==0||re!==0||ae!==0){jv[0]=ee,jv[1]=re,jv[2]=ae,jv[3]=ye;var De=kf(gf,gf);if(!De)return!1;PC(gf,gf),ch(b,jv,gf)}else b[0]=b[1]=b[2]=0,b[3]=1;if(a[0]=oe,a[1]=de,a[2]=ge,JB(Zo,zf),y[0]=uh(Zo[0]),Lg(Zo[0],Zo[0]),x[0]=Gd(Zo[0],Zo[1]),vA(Zo[1],Zo[1],Zo[0],1,-x[0]),y[1]=uh(Zo[1]),Lg(Zo[1],Zo[1]),x[0]/=y[1],x[1]=Gd(Zo[0],Zo[2]),vA(Zo[2],Zo[2],Zo[0],1,-x[1]),x[2]=Gd(Zo[1],Zo[2]),vA(Zo[2],Zo[2],Zo[1],1,-x[2]),y[2]=uh(Zo[2]),Lg(Zo[2],Zo[2]),x[1]/=y[2],x[2]/=y[2],np(b2,Zo[1],Zo[2]),Gd(Zo[0],b2)<0)for(var ke=0;ke<3;ke++)y[ke]*=-1,Zo[ke][0]*=-1,Zo[ke][1]*=-1,Zo[ke][2]*=-1;return z[0]=.5*Math.sqrt(Math.max(1+Zo[0][0]-Zo[1][1]-Zo[2][2],0)),z[1]=.5*Math.sqrt(Math.max(1-Zo[0][0]+Zo[1][1]-Zo[2][2],0)),z[2]=.5*Math.sqrt(Math.max(1-Zo[0][0]-Zo[1][1]+Zo[2][2],0)),z[3]=.5*Math.sqrt(Math.max(1+Zo[0][0]+Zo[1][1]+Zo[2][2],0)),Zo[2][1]>Zo[1][2]&&(z[0]=-z[0]),Zo[0][2]>Zo[2][0]&&(z[1]=-z[1]),Zo[1][0]>Zo[0][1]&&(z[2]=-z[2]),!0}function XB(E,a){var y=a[15];if(y===0)return!1;for(var x=1/y,b=0;b<16;b++)E[b]=a[b]*x;return!0}function JB(E,a){E[0][0]=a[0],E[0][1]=a[1],E[0][2]=a[2],E[1][0]=a[4],E[1][1]=a[5],E[1][2]=a[6],E[2][0]=a[8],E[2][1]=a[9],E[2][2]=a[10]}function vA(E,a,y,x,b){E[0]=a[0]*x+y[0]*b,E[1]=a[1]*x+y[1]*b,E[2]=a[2]*x+y[2]*b}var Nl=function(E){return E[E.ORBITING=0]="ORBITING",E[E.EXPLORING=1]="EXPLORING",E[E.TRACKING=2]="TRACKING",E}({}),mA=function(E){return E[E.DEFAULT=0]="DEFAULT",E[E.ROTATIONAL=1]="ROTATIONAL",E[E.TRANSLATIONAL=2]="TRANSLATIONAL",E[E.CINEMATIC=3]="CINEMATIC",E}({}),Hd=function(E){return E[E.ORTHOGRAPHIC=0]="ORTHOGRAPHIC",E[E.PERSPECTIVE=1]="PERSPECTIVE",E}({}),C2={UPDATED:"updated"},P2=2e-4,w2=function(){function E(){(0,Ha.Z)(this,E),this.clipSpaceNearZ=vp.NEGATIVE_ONE,this.eventEmitter=new AC,this.matrix=jl(),this.right=Yl(1,0,0),this.up=Yl(0,1,0),this.forward=Yl(0,0,1),this.position=Yl(0,0,1),this.focalPoint=Yl(0,0,0),this.distanceVector=Yl(0,0,-1),this.distance=1,this.azimuth=0,this.elevation=0,this.roll=0,this.relAzimuth=0,this.relElevation=0,this.relRoll=0,this.dollyingStep=0,this.maxDistance=1/0,this.minDistance=-1/0,this.zoom=1,this.rotateWorld=!1,this.fov=30,this.near=.1,this.far=1e3,this.aspect=1,this.projectionMatrix=jl(),this.projectionMatrixInverse=jl(),this.jitteredProjectionMatrix=void 0,this.enableUpdate=!0,this.type=Nl.EXPLORING,this.trackingMode=mA.DEFAULT,this.projectionMode=Hd.PERSPECTIVE,this.frustum=new zB,this.orthoMatrix=jl()}return(0,Va.Z)(E,[{key:"isOrtho",value:function(){return this.projectionMode===Hd.ORTHOGRAPHIC}},{key:"getProjectionMode",value:function(){return this.projectionMode}},{key:"getPerspective",value:function(){return this.jitteredProjectionMatrix||this.projectionMatrix}},{key:"getPerspectiveInverse",value:function(){return this.projectionMatrixInverse}},{key:"getFrustum",value:function(){return this.frustum}},{key:"getPosition",value:function(){return this.position}},{key:"getFocalPoint",value:function(){return this.focalPoint}},{key:"getDollyingStep",value:function(){return this.dollyingStep}},{key:"getNear",value:function(){return this.near}},{key:"getFar",value:function(){return this.far}},{key:"getZoom",value:function(){return this.zoom}},{key:"getOrthoMatrix",value:function(){return this.orthoMatrix}},{key:"getView",value:function(){return this.view}},{key:"setEnableUpdate",value:function(y){this.enableUpdate=y}},{key:"setType",value:function(y,x){return this.type=y,this.type===Nl.EXPLORING?this.setWorldRotation(!0):this.setWorldRotation(!1),this._getAngles(),this.type===Nl.TRACKING&&x!==void 0&&this.setTrackingMode(x),this}},{key:"setProjectionMode",value:function(y){return this.projectionMode=y,this}},{key:"setTrackingMode",value:function(y){if(this.type!==Nl.TRACKING)throw new Error("Impossible to set a tracking mode if the camera is not of tracking type");return this.trackingMode=y,this}},{key:"setWorldRotation",value:function(y){return this.rotateWorld=y,this._getAngles(),this}},{key:"getViewTransform",value:function(){return kf(jl(),this.matrix)}},{key:"getWorldTransform",value:function(){return this.matrix}},{key:"jitterProjectionMatrix",value:function(y,x){var b=Wh(jl(),[y,x,0]);this.jitteredProjectionMatrix=Mc(jl(),b,this.projectionMatrix)}},{key:"clearJitterProjectionMatrix",value:function(){this.jitteredProjectionMatrix=void 0}},{key:"setMatrix",value:function(y){return this.matrix=y,this._update(),this}},{key:"setProjectionMatrix",value:function(y){this.projectionMatrix=y}},{key:"setFov",value:function(y){return this.setPerspective(this.near,this.far,y,this.aspect),this}},{key:"setAspect",value:function(y){return this.setPerspective(this.near,this.far,this.fov,y),this}},{key:"setNear",value:function(y){return this.projectionMode===Hd.PERSPECTIVE?this.setPerspective(y,this.far,this.fov,this.aspect):this.setOrthographic(this.left,this.rright,this.top,this.bottom,y,this.far),this}},{key:"setFar",value:function(y){return this.projectionMode===Hd.PERSPECTIVE?this.setPerspective(this.near,y,this.fov,this.aspect):this.setOrthographic(this.left,this.rright,this.top,this.bottom,this.near,y),this}},{key:"setViewOffset",value:function(y,x,b,z,ee,re){return this.aspect=y/x,this.view===void 0&&(this.view={enabled:!0,fullWidth:1,fullHeight:1,offsetX:0,offsetY:0,width:1,height:1}),this.view.enabled=!0,this.view.fullWidth=y,this.view.fullHeight=x,this.view.offsetX=b,this.view.offsetY=z,this.view.width=ee,this.view.height=re,this.projectionMode===Hd.PERSPECTIVE?this.setPerspective(this.near,this.far,this.fov,this.aspect):this.setOrthographic(this.left,this.rright,this.top,this.bottom,this.near,this.far),this}},{key:"clearViewOffset",value:function(){return this.view!==void 0&&(this.view.enabled=!1),this.projectionMode===Hd.PERSPECTIVE?this.setPerspective(this.near,this.far,this.fov,this.aspect):this.setOrthographic(this.left,this.rright,this.top,this.bottom,this.near,this.far),this}},{key:"setZoom",value:function(y){return this.zoom=y,this.projectionMode===Hd.ORTHOGRAPHIC?this.setOrthographic(this.left,this.rright,this.top,this.bottom,this.near,this.far):this.projectionMode===Hd.PERSPECTIVE&&this.setPerspective(this.near,this.far,this.fov,this.aspect),this}},{key:"setZoomByViewportPoint",value:function(y,x){var b=this.canvas.viewport2Canvas({x:x[0],y:x[1]}),z=b.x,ee=b.y,re=this.roll;this.rotate(0,0,-re),this.setPosition(z,ee),this.setFocalPoint(z,ee),this.setZoom(y),this.rotate(0,0,re);var ae=this.canvas.viewport2Canvas({x:x[0],y:x[1]}),oe=ae.x,de=ae.y,ge=Yl(oe-z,de-ee,0),ye=Gd(ge,this.right)/uh(this.right),De=Gd(ge,this.up)/uh(this.up),ke=this.getPosition(),ze=(0,Ps.Z)(ke,2),We=ze[0],Ve=ze[1],Ze=this.getFocalPoint(),Ye=(0,Ps.Z)(Ze,2),et=Ye[0],st=Ye[1];return this.setPosition(We-ye,Ve-De),this.setFocalPoint(et-ye,st-De),this}},{key:"setPerspective",value:function(y,x,b,z){var ee;this.projectionMode=Hd.PERSPECTIVE,this.fov=b,this.near=y,this.far=x,this.aspect=z;var re=this.near*Math.tan(Bl(.5*this.fov))/this.zoom,ae=2*re,oe=this.aspect*ae,de=-.5*oe;if((ee=this.view)!==null&&ee!==void 0&&ee.enabled){var ge=this.view.fullWidth,ye=this.view.fullHeight;de+=this.view.offsetX*oe/ge,re-=this.view.offsetY*ae/ye,oe*=this.view.width/ge,ae*=this.view.height/ye}return QB(this.projectionMatrix,de,de+oe,re-ae,re,y,this.far,this.clipSpaceNearZ===vp.ZERO),kf(this.projectionMatrixInverse,this.projectionMatrix),this.triggerUpdate(),this}},{key:"setOrthographic",value:function(y,x,b,z,ee,re){var ae;this.projectionMode=Hd.ORTHOGRAPHIC,this.rright=x,this.left=y,this.top=b,this.bottom=z,this.near=ee,this.far=re;var oe=(this.rright-this.left)/(2*this.zoom),de=(this.top-this.bottom)/(2*this.zoom),ge=(this.rright+this.left)/2,ye=(this.top+this.bottom)/2,De=ge-oe,ke=ge+oe,ze=ye+de,We=ye-de;if((ae=this.view)!==null&&ae!==void 0&&ae.enabled){var Ve=(this.rright-this.left)/this.view.fullWidth/this.zoom,Ze=(this.top-this.bottom)/this.view.fullHeight/this.zoom;De+=Ve*this.view.offsetX,ke=De+Ve*this.view.width,ze-=Ze*this.view.offsetY,We=ze-Ze*this.view.height}return this.clipSpaceNearZ===vp.NEGATIVE_ONE?FC(this.projectionMatrix,De,ke,ze,We,ee,re):kC(this.projectionMatrix,De,ke,ze,We,ee,re),kf(this.projectionMatrixInverse,this.projectionMatrix),this._getOrthoMatrix(),this.triggerUpdate(),this}},{key:"setPosition",value:function(y){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.position[1],b=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.position[2],z=zc(y,x,b);return this._setPosition(z),this.setFocalPoint(this.focalPoint),this.triggerUpdate(),this}},{key:"setFocalPoint",value:function(y){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.focalPoint[1],b=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.focalPoint[2],z=Yl(0,1,0);if(this.focalPoint=zc(y,x,b),this.trackingMode===mA.CINEMATIC){var ee=XE(js(),this.focalPoint,this.position);y=ee[0],x=ee[1],b=ee[2];var re=uh(ee),ae=rd(Math.asin(x/re)),oe=90+rd(Math.atan2(b,y)),de=jl();IC(de,de,Bl(oe)),DC(de,de,Bl(ae)),z=wc(js(),[0,1,0],de)}return kf(this.matrix,_C(jl(),this.position,this.focalPoint,z)),this._getAxes(),this._getDistance(),this._getAngles(),this.triggerUpdate(),this}},{key:"getDistance",value:function(){return this.distance}},{key:"getDistanceVector",value:function(){return this.distanceVector}},{key:"setDistance",value:function(y){if(this.distance===y||y<0)return this;this.distance=y,this.distance<P2&&(this.distance=P2),this.dollyingStep=this.distance/100;var x=js();y=this.distance;var b=this.forward,z=this.focalPoint;return x[0]=y*b[0]+z[0],x[1]=y*b[1]+z[1],x[2]=y*b[2]+z[2],this._setPosition(x),this.triggerUpdate(),this}},{key:"setMaxDistance",value:function(y){return this.maxDistance=y,this}},{key:"setMinDistance",value:function(y){return this.minDistance=y,this}},{key:"setAzimuth",value:function(y){return this.azimuth=U0(y),this.computeMatrix(),this._getAxes(),this.type===Nl.ORBITING||this.type===Nl.EXPLORING?this._getPosition():this.type===Nl.TRACKING&&this._getFocalPoint(),this.triggerUpdate(),this}},{key:"getAzimuth",value:function(){return this.azimuth}},{key:"setElevation",value:function(y){return this.elevation=U0(y),this.computeMatrix(),this._getAxes(),this.type===Nl.ORBITING||this.type===Nl.EXPLORING?this._getPosition():this.type===Nl.TRACKING&&this._getFocalPoint(),this.triggerUpdate(),this}},{key:"getElevation",value:function(){return this.elevation}},{key:"setRoll",value:function(y){return this.roll=U0(y),this.computeMatrix(),this._getAxes(),this.type===Nl.ORBITING||this.type===Nl.EXPLORING?this._getPosition():this.type===Nl.TRACKING&&this._getFocalPoint(),this.triggerUpdate(),this}},{key:"getRoll",value:function(){return this.roll}},{key:"_update",value:function(){this._getAxes(),this._getPosition(),this._getDistance(),this._getAngles(),this._getOrthoMatrix(),this.triggerUpdate()}},{key:"computeMatrix",value:function(){var y=Gh(Uu(),[0,0,1],Bl(this.roll));Uh(this.matrix);var x=Gh(Uu(),[1,0,0],Bl((this.rotateWorld&&this.type!==Nl.TRACKING||this.type===Nl.TRACKING?1:-1)*this.elevation)),b=Gh(Uu(),[0,1,0],Bl((this.rotateWorld&&this.type!==Nl.TRACKING||this.type===Nl.TRACKING?1:-1)*this.azimuth)),z=Hh(Uu(),b,x);z=Hh(Uu(),z,y);var ee=eA(jl(),z);this.type===Nl.ORBITING||this.type===Nl.EXPLORING?(N0(this.matrix,this.matrix,this.focalPoint),Mc(this.matrix,this.matrix,ee),N0(this.matrix,this.matrix,[0,0,this.distance])):this.type===Nl.TRACKING&&(N0(this.matrix,this.matrix,this.position),Mc(this.matrix,this.matrix,ee))}},{key:"_setPosition",value:function(y,x,b){this.position=zc(y,x,b);var z=this.matrix;z[12]=this.position[0],z[13]=this.position[1],z[14]=this.position[2],z[15]=1,this._getOrthoMatrix()}},{key:"_getAxes",value:function(){Rf(this.right,zc(ch(Ff(),[1,0,0,0],this.matrix))),Rf(this.up,zc(ch(Ff(),[0,1,0,0],this.matrix))),Rf(this.forward,zc(ch(Ff(),[0,0,1,0],this.matrix))),Lg(this.right,this.right),Lg(this.up,this.up),Lg(this.forward,this.forward)}},{key:"_getAngles",value:function(){var y=this.distanceVector[0],x=this.distanceVector[1],b=this.distanceVector[2],z=uh(this.distanceVector);if(z===0){this.elevation=0,this.azimuth=0;return}this.type===Nl.TRACKING?(this.elevation=rd(Math.asin(x/z)),this.azimuth=rd(Math.atan2(-y,-b))):this.rotateWorld?(this.elevation=rd(Math.asin(x/z)),this.azimuth=rd(Math.atan2(-y,-b))):(this.elevation=-rd(Math.asin(x/z)),this.azimuth=-rd(Math.atan2(-y,-b)))}},{key:"_getPosition",value:function(){Rf(this.position,zc(ch(Ff(),[0,0,0,1],this.matrix))),this._getDistance()}},{key:"_getFocalPoint",value:function(){kT(this.distanceVector,[0,0,-this.distance],vL(UC(),this.matrix)),jh(this.focalPoint,this.position,this.distanceVector),this._getDistance()}},{key:"_getDistance",value:function(){this.distanceVector=XE(js(),this.focalPoint,this.position),this.distance=uh(this.distanceVector),this.dollyingStep=this.distance/100}},{key:"_getOrthoMatrix",value:function(){if(this.projectionMode===Hd.ORTHOGRAPHIC){var y=this.position,x=Gh(Uu(),[0,0,1],-this.roll*Math.PI/180);Rv(this.orthoMatrix,x,Yl((this.rright-this.left)/2-y[0],(this.top-this.bottom)/2-y[1],0),Yl(this.zoom,this.zoom,1),y)}}},{key:"triggerUpdate",value:function(){if(this.enableUpdate){var y=this.getViewTransform(),x=Mc(jl(),this.getPerspective(),y);this.getFrustum().extractFromVPMatrix(x),this.eventEmitter.emit(C2.UPDATED)}}},{key:"rotate",value:function(y,x,b){throw new Error(Ll)}},{key:"pan",value:function(y,x){throw new Error(Ll)}},{key:"dolly",value:function(y){throw new Error(Ll)}},{key:"createLandmark",value:function(y,x){throw new Error(Ll)}},{key:"gotoLandmark",value:function(y,x){throw new Error(Ll)}},{key:"cancelLandmarkAnimation",value:function(){throw new Error(Ll)}}])}(),qB=function(E){return E[E.Standard=0]="Standard",E}({}),pp=function(E){return E[E.ADDED=0]="ADDED",E[E.REMOVED=1]="REMOVED",E[E.Z_INDEX_CHANGED=2]="Z_INDEX_CHANGED",E}({}),$B=js(),Uv=jl(),e6=Uu();function M2(E){if(E.localDirtyFlag){var a=E.localSkew[0]!==0||E.localSkew[1]!==0;if(a){Rv(E.localTransform,E.localRotation,E.localPosition,Yl(1,1,1),E.origin),(E.localSkew[0]!==0||E.localSkew[1]!==0)&&(Uh(Uv),Uv[4]=Math.tan(E.localSkew[0]),Uv[1]=Math.tan(E.localSkew[1]),Mc(E.localTransform,E.localTransform,Uv));var y=Rv(Uv,WC(e6,0,0,0,1),Pc($B,1,1,1),E.localScale,E.origin);Mc(E.localTransform,E.localTransform,y)}else{var x=E.localTransform,b=E.localPosition,z=E.localRotation,ee=E.localScale,re=E.origin,ae=b[0]!==0||b[1]!==0||b[2]!==0,oe=z[3]!==1||z[0]!==0||z[1]!==0||z[2]!==0,de=ee[0]!==1||ee[1]!==1||ee[2]!==1,ge=re[0]!==0||re[1]!==0||re[2]!==0;!oe&&!de&&!ge?ae?Wh(x,b):Uh(x):Rv(x,z,b,ee,re)}E.localDirtyFlag=!1}}function t6(E,a){E.dirtyFlag&&(a?Mc(E.worldTransform,a.worldTransform,E.localTransform):B0(E.worldTransform,E.localTransform),E.dirtyFlag=!1)}var D2={absolutePath:[],hasArc:!1,segments:[],polygons:[],polylines:[],curve:null,totalLength:0,rect:new z0(0,0,0,0)},Ci=function(E){return E.COORDINATE="<coordinate>",E.COLOR="<color>",E.PAINT="<paint>",E.NUMBER="<number>",E.ANGLE="<angle>",E.OPACITY_VALUE="<opacity-value>",E.SHADOW_BLUR="<shadow-blur>",E.LENGTH="<length>",E.PERCENTAGE="<percentage>",E.LENGTH_PERCENTAGE="<length> | <percentage>",E.LENGTH_PERCENTAGE_12="[<length> | <percentage>]{1,2}",E.LENGTH_PERCENTAGE_14="[<length> | <percentage>]{1,4}",E.LIST_OF_POINTS="<list-of-points>",E.PATH="<path>",E.FILTER="<filter>",E.Z_INDEX="<z-index>",E.OFFSET_DISTANCE="<offset-distance>",E.DEFINED_PATH="<defined-path>",E.MARKER="<marker>",E.TRANSFORM="<transform>",E.TRANSFORM_ORIGIN="<transform-origin>",E.TEXT="<text>",E.TEXT_TRANSFORM="<text-transform>",E}({});function pA(E,a,y){E.prototype=a.prototype=y,y.constructor=E}function I2(E,a){var y=Object.create(E.prototype);for(var x in a)y[x]=a[x];return y}function Wv(){}var Gv=.7,yp=1/Gv,W0="\\s*([+-]?\\d+)\\s*",Hv="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",jf="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",n6=/^#([0-9a-f]{3,8})$/,r6=new RegExp(`^rgb\\(${W0},${W0},${W0}\\)$`),a6=new RegExp(`^rgb\\(${jf},${jf},${jf}\\)$`),i6=new RegExp(`^rgba\\(${W0},${W0},${W0},${Hv}\\)$`),o6=new RegExp(`^rgba\\(${jf},${jf},${jf},${Hv}\\)$`),s6=new RegExp(`^hsl\\(${Hv},${jf},${jf}\\)$`),l6=new RegExp(`^hsla\\(${Hv},${jf},${jf},${Hv}\\)$`),O2={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};pA(Wv,Ep,{copy(E){return Object.assign(new this.constructor,this,E)},displayable(){return this.rgb().displayable()},hex:T2,formatHex:T2,formatHex8:u6,formatHsl:c6,formatRgb:L2,toString:L2});function T2(){return this.rgb().formatHex()}function u6(){return this.rgb().formatHex8()}function c6(){return k2(this).formatHsl()}function L2(){return this.rgb().formatRgb()}function Ep(E){var a,y;return E=(E+"").trim().toLowerCase(),(a=n6.exec(E))?(y=a[1].length,a=parseInt(a[1],16),y===6?B2(a):y===3?new ad(a>>8&15|a>>4&240,a>>4&15|a&240,(a&15)<<4|a&15,1):y===8?Ap(a>>24&255,a>>16&255,a>>8&255,(a&255)/255):y===4?Ap(a>>12&15|a>>8&240,a>>8&15|a>>4&240,a>>4&15|a&240,((a&15)<<4|a&15)/255):null):(a=r6.exec(E))?new ad(a[1],a[2],a[3],1):(a=a6.exec(E))?new ad(a[1]*255/100,a[2]*255/100,a[3]*255/100,1):(a=i6.exec(E))?Ap(a[1],a[2],a[3],a[4]):(a=o6.exec(E))?Ap(a[1]*255/100,a[2]*255/100,a[3]*255/100,a[4]):(a=s6.exec(E))?F2(a[1],a[2]/100,a[3]/100,1):(a=l6.exec(E))?F2(a[1],a[2]/100,a[3]/100,a[4]):O2.hasOwnProperty(E)?B2(O2[E]):E==="transparent"?new ad(NaN,NaN,NaN,0):null}function B2(E){return new ad(E>>16&255,E>>8&255,E&255,1)}function Ap(E,a,y,x){return x<=0&&(E=a=y=NaN),new ad(E,a,y,x)}function d6(E){return E instanceof Wv||(E=Ep(E)),E?(E=E.rgb(),new ad(E.r,E.g,E.b,E.opacity)):new ad}function f6(E,a,y,x){return arguments.length===1?d6(E):new ad(E,a,y,x==null?1:x)}function ad(E,a,y,x){this.r=+E,this.g=+a,this.b=+y,this.opacity=+x}pA(ad,f6,I2(Wv,{brighter(E){return E=E==null?yp:Math.pow(yp,E),new ad(this.r*E,this.g*E,this.b*E,this.opacity)},darker(E){return E=E==null?Gv:Math.pow(Gv,E),new ad(this.r*E,this.g*E,this.b*E,this.opacity)},rgb(){return this},clamp(){return new ad(Fg(this.r),Fg(this.g),Fg(this.b),xp(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:N2,formatHex:N2,formatHex8:h6,formatRgb:R2,toString:R2}));function N2(){return`#${kg(this.r)}${kg(this.g)}${kg(this.b)}`}function h6(){return`#${kg(this.r)}${kg(this.g)}${kg(this.b)}${kg((isNaN(this.opacity)?1:this.opacity)*255)}`}function R2(){const E=xp(this.opacity);return`${E===1?"rgb(":"rgba("}${Fg(this.r)}, ${Fg(this.g)}, ${Fg(this.b)}${E===1?")":`, ${E})`}`}function xp(E){return isNaN(E)?1:Math.max(0,Math.min(1,E))}function Fg(E){return Math.max(0,Math.min(255,Math.round(E)||0))}function kg(E){return E=Fg(E),(E<16?"0":"")+E.toString(16)}function F2(E,a,y,x){return x<=0?E=a=y=NaN:y<=0||y>=1?E=a=NaN:a<=0&&(E=NaN),new vf(E,a,y,x)}function k2(E){if(E instanceof vf)return new vf(E.h,E.s,E.l,E.opacity);if(E instanceof Wv||(E=Ep(E)),!E)return new vf;if(E instanceof vf)return E;E=E.rgb();var a=E.r/255,y=E.g/255,x=E.b/255,b=Math.min(a,y,x),z=Math.max(a,y,x),ee=NaN,re=z-b,ae=(z+b)/2;return re?(a===z?ee=(y-x)/re+(y<x)*6:y===z?ee=(x-a)/re+2:ee=(a-y)/re+4,re/=ae<.5?z+b:2-z-b,ee*=60):re=ae>0&&ae<1?0:ee,new vf(ee,re,ae,E.opacity)}function g6(E,a,y,x){return arguments.length===1?k2(E):new vf(E,a,y,x==null?1:x)}function vf(E,a,y,x){this.h=+E,this.s=+a,this.l=+y,this.opacity=+x}pA(vf,g6,I2(Wv,{brighter(E){return E=E==null?yp:Math.pow(yp,E),new vf(this.h,this.s,this.l*E,this.opacity)},darker(E){return E=E==null?Gv:Math.pow(Gv,E),new vf(this.h,this.s,this.l*E,this.opacity)},rgb(){var E=this.h%360+(this.h<0)*360,a=isNaN(E)||isNaN(this.s)?0:this.s,y=this.l,x=y+(y<.5?y:1-y)*a,b=2*y-x;return new ad(yA(E>=240?E-240:E+120,b,x),yA(E,b,x),yA(E<120?E+240:E-120,b,x),this.opacity)},clamp(){return new vf(_2(this.h),Sp(this.s),Sp(this.l),xp(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const E=xp(this.opacity);return`${E===1?"hsl(":"hsla("}${_2(this.h)}, ${Sp(this.s)*100}%, ${Sp(this.l)*100}%${E===1?")":`, ${E})`}`}}));function _2(E){return E=(E||0)%360,E<0?E+360:E}function Sp(E){return Math.max(0,Math.min(1,E||0))}function yA(E,a,y){return(E<60?a+(y-a)*E/60:E<180?y:E<240?a+(y-a)*(240-E)/60:a)*255}function Lu(E,a){if(typeof E!="function"||a!=null&&typeof a!="function")throw new TypeError("Expected a function");var y=function(){for(var b=arguments.length,z=new Array(b),ee=0;ee<b;ee++)z[ee]=arguments[ee];var re=a?a.apply(this,z):z[0],ae=y.cache;if(ae.has(re))return ae.get(re);var oe=E.apply(this,z);return y.cache=ae.set(re,oe)||ae,oe};return y.cache=new(Lu.Cache||Map),Lu.cacheList.push(y.cache),y}Lu.Cache=Map,Lu.cacheList=[],Lu.clearCache=function(){Lu.cacheList.forEach(function(E){return E.clear()})};var Mi=function(E){return E[E.kUnknown=0]="kUnknown",E[E.kNumber=1]="kNumber",E[E.kPercentage=2]="kPercentage",E[E.kEms=3]="kEms",E[E.kPixels=4]="kPixels",E[E.kRems=5]="kRems",E[E.kDegrees=6]="kDegrees",E[E.kRadians=7]="kRadians",E[E.kGradians=8]="kGradians",E[E.kTurns=9]="kTurns",E[E.kMilliseconds=10]="kMilliseconds",E[E.kSeconds=11]="kSeconds",E[E.kInteger=12]="kInteger",E}({}),mf=function(E){return E[E.kUNumber=0]="kUNumber",E[E.kUPercent=1]="kUPercent",E[E.kULength=2]="kULength",E[E.kUAngle=3]="kUAngle",E[E.kUTime=4]="kUTime",E[E.kUOther=5]="kUOther",E}({}),v6=function(E){return E[E.kYes=0]="kYes",E[E.kNo=1]="kNo",E}({}),m6=function(E){return E[E.kYes=0]="kYes",E[E.kNo=1]="kNo",E}({}),p6=[{name:"em",unit_type:Mi.kEms},{name:"px",unit_type:Mi.kPixels},{name:"deg",unit_type:Mi.kDegrees},{name:"rad",unit_type:Mi.kRadians},{name:"grad",unit_type:Mi.kGradians},{name:"ms",unit_type:Mi.kMilliseconds},{name:"s",unit_type:Mi.kSeconds},{name:"rem",unit_type:Mi.kRems},{name:"turn",unit_type:Mi.kTurns}],G0=function(E){return E[E.kUnknownType=0]="kUnknownType",E[E.kUnparsedType=1]="kUnparsedType",E[E.kKeywordType=2]="kKeywordType",E[E.kUnitType=3]="kUnitType",E[E.kSumType=4]="kSumType",E[E.kProductType=5]="kProductType",E[E.kNegateType=6]="kNegateType",E[E.kInvertType=7]="kInvertType",E[E.kMinType=8]="kMinType",E[E.kMaxType=9]="kMaxType",E[E.kClampType=10]="kClampType",E[E.kTransformType=11]="kTransformType",E[E.kPositionType=12]="kPositionType",E[E.kURLImageType=13]="kURLImageType",E[E.kColorType=14]="kColorType",E[E.kUnsupportedColorType=15]="kUnsupportedColorType",E}({}),y6=function(a){return p6.find(function(y){return y.name===a}).unit_type},E6=function(a){return a?a==="number"?Mi.kNumber:a==="percent"||a==="%"?Mi.kPercentage:y6(a):Mi.kUnknown},A6=function(a){switch(a){case Mi.kNumber:case Mi.kInteger:return mf.kUNumber;case Mi.kPercentage:return mf.kUPercent;case Mi.kPixels:return mf.kULength;case Mi.kMilliseconds:case Mi.kSeconds:return mf.kUTime;case Mi.kDegrees:case Mi.kRadians:case Mi.kGradians:case Mi.kTurns:return mf.kUAngle;default:return mf.kUOther}},x6=function(a){switch(a){case mf.kUNumber:return Mi.kNumber;case mf.kULength:return Mi.kPixels;case mf.kUPercent:return Mi.kPercentage;case mf.kUTime:return Mi.kSeconds;case mf.kUAngle:return Mi.kDegrees;default:return Mi.kUnknown}},z2=function(a){var y=1;switch(a){case Mi.kPixels:case Mi.kDegrees:case Mi.kSeconds:break;case Mi.kMilliseconds:y=.001;break;case Mi.kRadians:y=180/Math.PI;break;case Mi.kGradians:y=.9;break;case Mi.kTurns:y=360;break}return y},EA=function(a){switch(a){case Mi.kNumber:case Mi.kInteger:return"";case Mi.kPercentage:return"%";case Mi.kEms:return"em";case Mi.kRems:return"rem";case Mi.kPixels:return"px";case Mi.kDegrees:return"deg";case Mi.kRadians:return"rad";case Mi.kGradians:return"grad";case Mi.kMilliseconds:return"ms";case Mi.kSeconds:return"s";case Mi.kTurns:return"turn"}return""},bp=function(){function E(){(0,Ha.Z)(this,E)}return(0,Va.Z)(E,[{key:"toString",value:function(){return this.buildCSSText(v6.kNo,m6.kNo,"")}},{key:"isNumericValue",value:function(){return this.getType()>=G0.kUnitType&&this.getType()<=G0.kClampType}}],[{key:"isAngle",value:function(y){return y===Mi.kDegrees||y===Mi.kRadians||y===Mi.kGradians||y===Mi.kTurns}},{key:"isLength",value:function(y){return y>=Mi.kEms&&y<Mi.kDegrees}},{key:"isRelativeUnit",value:function(y){return y===Mi.kPercentage||y===Mi.kEms||y===Mi.kRems}},{key:"isTime",value:function(y){return y===Mi.kSeconds||y===Mi.kMilliseconds}}])}(),S6=function(E){function a(y){var x;return(0,Ha.Z)(this,a),x=bs(this,a),x.colorSpace=y,x}return(0,Cs.Z)(a,E),(0,Va.Z)(a,[{key:"getType",value:function(){return G0.kColorType}},{key:"to",value:function(x){return this}}])}(bp),Yh=function(E){return E[E.Constant=0]="Constant",E[E.LinearGradient=1]="LinearGradient",E[E.RadialGradient=2]="RadialGradient",E}({}),Cp=function(E){function a(y,x){var b;return(0,Ha.Z)(this,a),b=bs(this,a),b.type=y,b.value=x,b}return(0,Cs.Z)(a,E),(0,Va.Z)(a,[{key:"clone",value:function(){return new a(this.type,this.value)}},{key:"buildCSSText",value:function(x,b,z){return z}},{key:"getType",value:function(){return G0.kColorType}}])}(bp),Vd=function(E){function a(y){var x;return(0,Ha.Z)(this,a),x=bs(this,a),x.value=y,x}return(0,Cs.Z)(a,E),(0,Va.Z)(a,[{key:"clone",value:function(){return new a(this.value)}},{key:"getType",value:function(){return G0.kKeywordType}},{key:"buildCSSText",value:function(x,b,z){return z+this.value}}])}(bp),b6=function(a){var y=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"",x="";return Number.isFinite(a)?x="NaN":a>0?x="infinity":x="-infinity",x+=y},AA=function(a){return x6(A6(a))},Rl=function(E){function a(y){var x,b=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Mi.kNumber;(0,Ha.Z)(this,a),x=bs(this,a);var z;return typeof b=="string"?z=E6(b):z=b,x.unit=z,x.value=y,x}return(0,Cs.Z)(a,E),(0,Va.Z)(a,[{key:"clone",value:function(){return new a(this.value,this.unit)}},{key:"equals",value:function(x){var b=x;return this.value===b.value&&this.unit===b.unit}},{key:"getType",value:function(){return G0.kUnitType}},{key:"convertTo",value:function(x){if(this.unit===x)return new a(this.value,this.unit);var b=AA(this.unit);if(b!==AA(x)||b===Mi.kUnknown)return null;var z=z2(this.unit)/z2(x);return new a(this.value*z,x)}},{key:"buildCSSText",value:function(x,b,z){var ee;switch(this.unit){case Mi.kUnknown:break;case Mi.kInteger:ee=Number(this.value).toFixed(0);break;case Mi.kNumber:case Mi.kPercentage:case Mi.kEms:case Mi.kRems:case Mi.kPixels:case Mi.kDegrees:case Mi.kRadians:case Mi.kGradians:case Mi.kMilliseconds:case Mi.kSeconds:case Mi.kTurns:{var re=-999999,ae=999999,oe=this.value,de=EA(this.unit);if(oe<re||oe>ae){var ge=EA(this.unit);!Number.isFinite(oe)||Number.isNaN(oe)?ee=b6(oe,ge):ee=oe+(ge||"")}else ee="".concat(oe).concat(de)}}return z+=ee,z}}])}(bp),pf=new Rl(0,"px");new Rl(1,"px");var _g=new Rl(0,"deg"),xA=function(E){function a(y,x,b){var z,ee=arguments.length>3&&arguments[3]!==void 0?arguments[3]:1,re=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1;return(0,Ha.Z)(this,a),z=bs(this,a,["rgb"]),z.r=y,z.g=x,z.b=b,z.alpha=ee,z.isNone=re,z}return(0,Cs.Z)(a,E),(0,Va.Z)(a,[{key:"clone",value:function(){return new a(this.r,this.g,this.b,this.alpha)}},{key:"buildCSSText",value:function(x,b,z){return"".concat(z,"rgba(").concat(this.r,",").concat(this.g,",").concat(this.b,",").concat(this.alpha,")")}}])}(S6),j2=new Vd("unset"),C6=new Vd("initial"),P6=new Vd("inherit"),SA={"":j2,unset:j2,initial:C6,inherit:P6},w6=function(a){return SA[a]||(SA[a]=new Vd(a)),SA[a]},U2=new xA(0,0,0,0,!0),W2=new xA(0,0,0,0),M6=Lu(function(E,a,y,x){return new xA(E,a,y,x)},function(E,a,y,x){return"rgba(".concat(E,",").concat(a,",").concat(y,",").concat(x,")")}),$l=function(a){var y=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Mi.kNumber;return new Rl(a,y)};new Rl(50,"%");function D6(E){var a=E.type,y=E.value;return a==="hex"?"#".concat(y):a==="literal"?y:a==="rgb"?"rgb(".concat(y.join(","),")"):"rgba(".concat(y.join(","),")")}var I6=function(){var E={linearGradient:/^(linear\-gradient)/i,repeatingLinearGradient:/^(repeating\-linear\-gradient)/i,radialGradient:/^(radial\-gradient)/i,repeatingRadialGradient:/^(repeating\-radial\-gradient)/i,conicGradient:/^(conic\-gradient)/i,sideOrCorner:/^to (left (top|bottom)|right (top|bottom)|top (left|right)|bottom (left|right)|left|right|top|bottom)/i,extentKeywords:/^(closest\-side|closest\-corner|farthest\-side|farthest\-corner|contain|cover)/,positionKeywords:/^(left|center|right|top|bottom)/i,pixelValue:/^(-?(([0-9]*\.[0-9]+)|([0-9]+\.?)))px/,percentageValue:/^(-?(([0-9]*\.[0-9]+)|([0-9]+\.?)))\%/,emValue:/^(-?(([0-9]*\.[0-9]+)|([0-9]+\.?)))em/,angleValue:/^(-?(([0-9]*\.[0-9]+)|([0-9]+\.?)))deg/,startCall:/^\(/,endCall:/^\)/,comma:/^,/,hexColor:/^\#([0-9a-fA-F]+)/,literalColor:/^([a-zA-Z]+)/,rgbColor:/^rgb/i,rgbaColor:/^rgba/i,number:/^(([0-9]*\.[0-9]+)|([0-9]+\.?))/},a="";function y(En){throw new Error("".concat(a,": ").concat(En))}function x(){var En=b();return a.length>0&&y("Invalid input not EOF"),En}function b(){return Ye(z)}function z(){return ee("linear-gradient",E.linearGradient,ae)||ee("repeating-linear-gradient",E.repeatingLinearGradient,ae)||ee("radial-gradient",E.radialGradient,ge)||ee("repeating-radial-gradient",E.repeatingRadialGradient,ge)||ee("conic-gradient",E.conicGradient,ge)}function ee(En,yn,Cn){return re(yn,function(qn){var pn=Cn();return pn&&(Tn(E.comma)||y("Missing comma before color stops")),{type:En,orientation:pn,colorStops:Ye(et)}})}function re(En,yn){var Cn=Tn(En);if(Cn){Tn(E.startCall)||y("Missing (");var qn=yn(Cn);return Tn(E.endCall)||y("Missing )"),qn}}function ae(){return oe()||de()}function oe(){return Xt("directional",E.sideOrCorner,1)}function de(){return Xt("angular",E.angleValue,1)}function ge(){var En,yn=ye(),Cn;return yn&&(En=[],En.push(yn),Cn=a,Tn(E.comma)&&(yn=ye(),yn?En.push(yn):a=Cn)),En}function ye(){var En=De()||ke();if(En)En.at=We();else{var yn=ze();if(yn){En=yn;var Cn=We();Cn&&(En.at=Cn)}else{var qn=Ve();qn&&(En={type:"default-radial",at:qn})}}return En}function De(){var En=Xt("shape",/^(circle)/i,0);return En&&(En.style=gn()||ze()),En}function ke(){var En=Xt("shape",/^(ellipse)/i,0);return En&&(En.style=wt()||ze()),En}function ze(){return Xt("extent-keyword",E.extentKeywords,1)}function We(){if(Xt("position",/^at/,0)){var En=Ve();return En||y("Missing positioning value"),En}}function Ve(){var En=Ze();if(En.x||En.y)return{type:"position",value:En}}function Ze(){return{x:wt(),y:wt()}}function Ye(En){var yn=En(),Cn=[];if(yn)for(Cn.push(yn);Tn(E.comma);)yn=En(),yn?Cn.push(yn):y("One extra comma");return Cn}function et(){var En=st();return En||y("Expected color definition"),En.length=wt(),En}function st(){return mt()||Ot()||dt()||ht()}function ht(){return Xt("literal",E.literalColor,0)}function mt(){return Xt("hex",E.hexColor,1)}function dt(){return re(E.rgbColor,function(){return{type:"rgb",value:Ye(_t)}})}function Ot(){return re(E.rgbaColor,function(){return{type:"rgba",value:Ye(_t)}})}function _t(){return Tn(E.number)[1]}function wt(){return Xt("%",E.percentageValue,1)||$t()||gn()}function $t(){return Xt("position-keyword",E.positionKeywords,1)}function gn(){return Xt("px",E.pixelValue,1)||Xt("em",E.emValue,1)}function Xt(En,yn,Cn){var qn=Tn(yn);if(qn)return{type:En,value:qn[Cn]}}function Tn(En){var yn=/^[\n\r\t\s]+/.exec(a);yn&&er(yn[0].length);var Cn=En.exec(a);return Cn&&er(Cn[0].length),Cn}function er(En){a=a.substring(En)}return function(En){return a=En,x()}}();function O6(E,a,y,x){var b=Bl(x.value),z=0,ee=0,re=z+a/2,ae=ee+y/2,oe=Math.abs(a*Math.cos(b))+Math.abs(y*Math.sin(b)),de=E[0]+re-Math.cos(b)*oe/2,ge=E[1]+ae-Math.sin(b)*oe/2,ye=E[0]+re+Math.cos(b)*oe/2,De=E[1]+ae+Math.sin(b)*oe/2;return{x1:de,y1:ge,x2:ye,y2:De}}function T6(E,a,y,x,b,z){var ee=x.value,re=b.value;x.unit===Mi.kPercentage&&(ee=x.value/100*a),b.unit===Mi.kPercentage&&(re=b.value/100*y);var ae=Math.max(td([0,0],[ee,re]),td([0,y],[ee,re]),td([a,y],[ee,re]),td([a,0],[ee,re]));return z&&(z instanceof Rl?ae=z.value:z instanceof Vd&&(z.value==="closest-side"?ae=Math.min(ee,a-ee,re,y-re):z.value==="farthest-side"?ae=Math.max(ee,a-ee,re,y-re):z.value==="closest-corner"&&(ae=Math.min(td([0,0],[ee,re]),td([0,y],[ee,re]),td([a,y],[ee,re]),td([a,0],[ee,re]))))),{x:ee+E[0],y:re+E[1],r:ae}}var L6=/^l\s*\(\s*([\d.]+)\s*\)\s*(.*)/i,B6=/^r\s*\(\s*([\d.]+)\s*,\s*([\d.]+)\s*,\s*([\d.]+)\s*\)\s*(.*)/i,N6=/^p\s*\(\s*([axyn])\s*\)\s*(.*)/i,G2=/[\d.]+:(#[^\s]+|[^\)]+\))/gi;function R6(E){var a,y=E.length;if(E[y-1].length=(a=E[y-1].length)!==null&&a!==void 0?a:{type:"%",value:"100"},y>1){var x;E[0].length=(x=E[0].length)!==null&&x!==void 0?x:{type:"%",value:"0"}}for(var b=0,z=Number(E[0].length.value),ee=1;ee<y;ee++){var re,ae=(re=E[ee].length)===null||re===void 0?void 0:re.value;if(!Io(ae)&&!Io(z)){for(var oe=1;oe<ee-b;oe++)E[b+oe].length={type:"%",value:"".concat(z+(Number(ae)-z)*oe/(ee-b))};b=ee,z=Number(ae)}}}var F6={left:180,top:-90,bottom:90,right:0,"left top":225,"top left":225,"left bottom":135,"bottom left":135,"right top":-45,"top right":-45,"right bottom":45,"bottom right":45},k6=Lu(function(E){var a;return E.type==="angular"?a=Number(E.value):a=F6[E.value]||0,$l(a,"deg")}),_6=Lu(function(E){var a=50,y=50,x="%",b="%";if((E==null?void 0:E.type)==="position"){var z=E.value,ee=z.x,re=z.y;(ee==null?void 0:ee.type)==="position-keyword"&&(ee.value==="left"?a=0:ee.value==="center"?a=50:ee.value==="right"?a=100:ee.value==="top"?y=0:ee.value==="bottom"&&(y=100)),(re==null?void 0:re.type)==="position-keyword"&&(re.value==="left"?a=0:re.value==="center"?y=50:re.value==="right"?a=100:re.value==="top"?y=0:re.value==="bottom"&&(y=100)),((ee==null?void 0:ee.type)==="px"||(ee==null?void 0:ee.type)==="%"||(ee==null?void 0:ee.type)==="em")&&(x=ee==null?void 0:ee.type,a=Number(ee.value)),((re==null?void 0:re.type)==="px"||(re==null?void 0:re.type)==="%"||(re==null?void 0:re.type)==="em")&&(b=re==null?void 0:re.type,y=Number(re.value))}return{cx:$l(a,x),cy:$l(y,b)}}),z6=Lu(function(E){if(E.indexOf("linear")>-1||E.indexOf("radial")>-1){var a=I6(E);return a.map(function(re){var ae=re.type,oe=re.orientation,de=re.colorStops;R6(de);var ge=de.map(function(Ye){return{offset:$l(Number(Ye.length.value),"%"),color:D6(Ye)}});if(ae==="linear-gradient")return new Cp(Yh.LinearGradient,{angle:oe?k6(oe):_g,steps:ge});if(ae==="radial-gradient"&&(oe||(oe=[{type:"shape",value:"circle"}]),oe[0].type==="shape"&&oe[0].value==="circle")){var ye=_6(oe[0].at),De=ye.cx,ke=ye.cy,ze;if(oe[0].style){var We=oe[0].style,Ve=We.type,Ze=We.value;Ve==="extent-keyword"?ze=w6(Ze):ze=$l(Ze,Ve)}return new Cp(Yh.RadialGradient,{cx:De,cy:ke,size:ze,steps:ge})}})}var y=E[0];if(E[1]==="("||E[2]==="("){if(y==="l"){var x=L6.exec(E);if(x){var b,z=((b=x[2].match(G2))===null||b===void 0?void 0:b.map(function(re){return re.split(":")}))||[];return[new Cp(Yh.LinearGradient,{angle:$l(parseFloat(x[1]),"deg"),steps:z.map(function(re){var ae=(0,Ps.Z)(re,2),oe=ae[0],de=ae[1];return{offset:$l(Number(oe)*100,"%"),color:de}})})]}}else if(y==="r"){var ee=j6(E);if(ee)if(al(ee))E=ee;else return[new Cp(Yh.RadialGradient,ee)]}else if(y==="p")return U6(E)}});function j6(E){var a=B6.exec(E);if(a){var y,x=((y=a[4].match(G2))===null||y===void 0?void 0:y.map(function(b){return b.split(":")}))||[];return{cx:$l(50,"%"),cy:$l(50,"%"),steps:x.map(function(b){var z=(0,Ps.Z)(b,2),ee=z[0],re=z[1];return{offset:$l(Number(ee)*100,"%"),color:re}})}}return null}function U6(E){var a=N6.exec(E);if(a){var y=a[1],x=a[2];switch(y){case"a":y="repeat";break;case"x":y="repeat-x";break;case"y":y="repeat-y";break;case"n":y="no-repeat";break;default:y="no-repeat"}return{image:x,repetition:y}}return null}function N$(E){return!!E.type&&!!E.value}function zg(E){return E&&!!E.image}function Pp(E){return E&&!Io(E.r)&&!Io(E.g)&&!Io(E.b)}var Vv=Lu(function(E){if(zg(E))return(0,ps.Z)({repetition:"repeat"},E);if(Io(E)&&(E=""),E==="transparent")return W2;if(E==="currentColor")E="black";else if(E==="none")return U2;var a=z6(E);if(a)return a;var y=Ep(E),x=[0,0,0,0];return y!==null&&(x[0]=y.r||0,x[1]=y.g||0,x[2]=y.b||0,x[3]=y.opacity),M6.apply(void 0,x)});function W6(E,a){if(!(!Pp(E)||!Pp(a)))return[[Number(E.r),Number(E.g),Number(E.b),Number(E.alpha)],[Number(a.r),Number(a.g),Number(a.b),Number(a.alpha)],function(y){var x=y.slice();if(x[3])for(var b=0;b<3;b++)x[b]=Math.round(gu(x[b],0,255));return x[3]=gu(x[3],0,1),"rgba(".concat(x.join(","),")")}]}function Kv(E,a){if(Io(a))return $l(0,"px");if(a="".concat(a).trim().toLowerCase(),isFinite(Number(a))){if("px".search(E)>=0)return $l(Number(a),"px");if("deg".search(E)>=0)return $l(Number(a),"deg")}var y=[];a=a.replace(E,function(b){return y.push(b),"U".concat(b)});var x="U(".concat(E.source,")");return y.map(function(b){return $l(Number(a.replace(new RegExp("U".concat(b),"g"),"").replace(new RegExp(x,"g"),"*0")),b)})[0]}var H2=function(a){return Kv(new RegExp("px","g"),a)},G6=Lu(H2),H6=function(a){return Kv(new RegExp("%","g"),a)};Lu(H6);var V2=function(a){return ji(a)||isFinite(Number(a))?$l(Number(a)||0,"px"):Kv(new RegExp("px|%|em|rem","g"),a)},bA=Lu(V2),K2=function(a){return Kv(new RegExp("deg|rad|grad|turn","g"),a)},V6=Lu(K2);function K6(E,a,y,x){var b=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,z="",ee=E.value||0,re=a.value||0,ae=AA(E.unit),oe=E.convertTo(ae),de=a.convertTo(ae);return oe&&de?(ee=oe.value,re=de.value,z=EA(E.unit)):(Rl.isLength(E.unit)||Rl.isLength(a.unit))&&(ee=bd(E,b,y),re=bd(a,b,y),z="px"),[ee,re,function(ge){return x&&(ge=Math.max(ge,0)),ge+z}]}function id(E){var a=0;return E.unit===Mi.kDegrees?a=E.value:E.unit===Mi.kRadians?a=rd(Number(E.value)):E.unit===Mi.kTurns?a=HB(Number(E.value)):E.value&&(a=E.value),a}function Z2(E,a){var y;return Array.isArray(E)?y=E.map(function(x){return Number(x)}):al(E)?y=E.split(" ").map(function(x){return Number(x)}):ji(E)&&(y=[E]),a===2?y.length===1?[y[0],y[0]]:[y[0],y[1]]:a===4?y.length===1?[y[0],y[0],y[0],y[0]]:y.length===2?[y[0],y[1],y[0],y[1]]:y.length===3?[y[0],y[1],y[2],y[1]]:[y[0],y[1],y[2],y[3]]:a==="even"&&y.length%2===1?[].concat((0,zs.Z)(y),(0,zs.Z)(y)):y}function bd(E,a,y){var x=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(E.unit===Mi.kPixels)return Number(E.value);if(E.unit===Mi.kPercentage&&y){var b=y.nodeName===va.GROUP?y.getLocalBounds():y.getGeometryBounds();return(x?b.min[a]:0)+E.value/100*b.halfExtents[a]*2}return 0}var Z6=function(a){return Kv(/deg|rad|grad|turn|px|%/g,a)},Q6=["blur","brightness","drop-shadow","contrast","grayscale","sepia","saturate","hue-rotate","invert"];function Y6(){var E=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"";if(E=E.toLowerCase().trim(),E==="none")return[];for(var a=/\s*([\w-]+)\(([^)]*)\)/g,y=[],x,b=0;x=a.exec(E);){if(x.index!==b)return[];if(b=x.index+x[0].length,Q6.indexOf(x[1])>-1&&y.push({name:x[1],params:x[2].split(" ").map(function(z){return Z6(z)||Vv(z)})}),a.lastIndex===E.length)return y}return[]}function Q2(E){return E.toString()}var Y2=function(a){return typeof a=="number"?$l(a):/^\s*[-+]?(\d*\.)?\d+\s*$/.test(a)?$l(Number(a)):$l(0)},CA=Lu(Y2);Lu(function(E){return al(E)?E.split(" ").map(CA):E.map(CA)});function PA(E,a){return[E,a,Q2]}function wA(E,a){return function(y,x){return[y,x,function(b){return Q2(gu(b,E,a))}]}}function X2(E,a){if(E.length===a.length)return[E,a,function(y){return y}]}function MA(E){return E.parsedStyle.d.totalLength===0&&(E.parsedStyle.d.totalLength=VL(E.parsedStyle.d.absolutePath)),E.parsedStyle.d.totalLength}function X6(E){return E.parsedStyle.points.totalLength===0&&(E.parsedStyle.points.totalLength=IB(E.parsedStyle.points.points)),E.parsedStyle.points.totalLength}function J6(E){for(var a=0;a<E.length;a++){var y=E[a-1],x=E[a],b=x[0];if(b==="M"&&y){var z=y[0],ee=[x[1],x[2]],re=void 0;z==="L"||z==="M"?re=[y[1],y[2]]:(z==="C"||z==="A"||z==="Q")&&(re=[y[y.length-2],y[y.length-1]]),re&&wp(ee,re)&&(E.splice(a,1),a--)}}}function q6(E){for(var a=!1,y=E.length,x=0;x<y;x++){var b=E[x],z=b[0];if(z==="C"||z==="A"||z==="Q"){a=!0;break}}return a}function $6(E){for(var a=[],y=[],x=[],b=0;b<E.length;b++){var z=E[b],ee=z[0];ee==="M"?(x.length&&(y.push(x),x=[]),x.push([z[1],z[2]])):ee==="Z"?x.length&&(a.push(x),x=[]):x.push([z[1],z[2]])}return x.length>0&&y.push(x),{polygons:a,polylines:y}}function wp(E,a){return E[0]===a[0]&&E[1]===a[1]}function eN(E,a){for(var y=[],x=[],b=[],z=0;z<E.length;z++){var ee=E[z],re=ee.currentPoint,ae=ee.params,oe=ee.prePoint,de=void 0;switch(ee.command){case"Q":de=TB(oe[0],oe[1],ae[1],ae[2],ae[3],ae[4]);break;case"C":de=wB(oe[0],oe[1],ae[1],ae[2],ae[3],ae[4],ae[5],ae[6]);break;case"A":var ge=ee.arcParams;de=xB(ge.cx,ge.cy,ge.rx,ge.ry,ge.xRotation,ge.startAngle,ge.endAngle);break;default:y.push(re[0]),x.push(re[1]);break}de&&(ee.box=de,y.push(de.x,de.x+de.width),x.push(de.y,de.y+de.height)),a&&(ee.command==="L"||ee.command==="M")&&ee.prePoint&&ee.nextPoint&&b.push(ee)}y=y.filter(function(et){return!Number.isNaN(et)&&et!==1/0&&et!==-1/0}),x=x.filter(function(et){return!Number.isNaN(et)&&et!==1/0&&et!==-1/0});var ye=cp(y),De=cp(x),ke=dp(y),ze=dp(x);if(b.length===0)return{x:ye,y:De,width:ke-ye,height:ze-De};for(var We=0;We<b.length;We++){var Ve=b[We],Ze=Ve.currentPoint,Ye=void 0;Ze[0]===ye?(Ye=Mp(Ve,a),ye-=Ye.xExtra):Ze[0]===ke&&(Ye=Mp(Ve,a),ke+=Ye.xExtra),Ze[1]===De?(Ye=Mp(Ve,a),De-=Ye.yExtra):Ze[1]===ze&&(Ye=Mp(Ve,a),ze+=Ye.yExtra)}return{x:ye,y:De,width:ke-ye,height:ze-De}}function Mp(E,a){var y=E.prePoint,x=E.currentPoint,b=E.nextPoint,z=Math.pow(x[0]-y[0],2)+Math.pow(x[1]-y[1],2),ee=Math.pow(x[0]-b[0],2)+Math.pow(x[1]-b[1],2),re=Math.pow(y[0]-b[0],2)+Math.pow(y[1]-b[1],2),ae=Math.acos((z+ee-re)/(2*Math.sqrt(z)*Math.sqrt(ee)));if(!ae||Math.sin(ae)===0||kv(ae,0))return{xExtra:0,yExtra:0};var oe=Math.abs(Math.atan2(b[1]-x[1],b[0]-x[0])),de=Math.abs(Math.atan2(b[0]-x[0],b[1]-x[1]));oe=oe>Math.PI/2?Math.PI-oe:oe,de=de>Math.PI/2?Math.PI-de:de;var ge={xExtra:Math.cos(ae/2-oe)*(a/2*(1/Math.sin(ae/2)))-a/2||0,yExtra:Math.cos(de-ae/2)*(a/2*(1/Math.sin(ae/2)))-a/2||0};return ge}function J2(E,a){return[a[0]+(a[0]-E[0]),a[1]+(a[1]-E[1])]}var q2=function(a,y){var x=a.x*y.x+a.y*y.y,b=Math.sqrt((Math.pow(a.x,2)+Math.pow(a.y,2))*(Math.pow(y.x,2)+Math.pow(y.y,2))),z=a.x*y.y-a.y*y.x<0?-1:1,ee=z*Math.acos(x/b);return ee},$2=function(a,y,x,b,z,ee,re,ae){y=Math.abs(y),x=Math.abs(x),b=qC(b,360);var oe=Bl(b);if(a.x===re.x&&a.y===re.y)return{x:a.x,y:a.y,ellipticalArcAngle:0};if(y===0||x===0)return{x:0,y:0,ellipticalArcAngle:0};var de=(a.x-re.x)/2,ge=(a.y-re.y)/2,ye={x:Math.cos(oe)*de+Math.sin(oe)*ge,y:-Math.sin(oe)*de+Math.cos(oe)*ge},De=Math.pow(ye.x,2)/Math.pow(y,2)+Math.pow(ye.y,2)/Math.pow(x,2);De>1&&(y*=Math.sqrt(De),x*=Math.sqrt(De));var ke=Math.pow(y,2)*Math.pow(x,2)-Math.pow(y,2)*Math.pow(ye.y,2)-Math.pow(x,2)*Math.pow(ye.x,2),ze=Math.pow(y,2)*Math.pow(ye.y,2)+Math.pow(x,2)*Math.pow(ye.x,2),We=ke/ze;We=We<0?0:We;var Ve=(z!==ee?1:-1)*Math.sqrt(We),Ze={x:Ve*(y*ye.y/x),y:Ve*(-(x*ye.x)/y)},Ye={x:Math.cos(oe)*Ze.x-Math.sin(oe)*Ze.y+(a.x+re.x)/2,y:Math.sin(oe)*Ze.x+Math.cos(oe)*Ze.y+(a.y+re.y)/2},et={x:(ye.x-Ze.x)/y,y:(ye.y-Ze.y)/x},st=q2({x:1,y:0},et),ht={x:(-ye.x-Ze.x)/y,y:(-ye.y-Ze.y)/x},mt=q2(et,ht);!ee&&mt>0?mt-=2*Math.PI:ee&&mt<0&&(mt+=2*Math.PI),mt%=2*Math.PI;var dt=st+mt*ae,Ot=y*Math.cos(dt),_t=x*Math.sin(dt),wt={x:Math.cos(oe)*Ot-Math.sin(oe)*_t+Ye.x,y:Math.sin(oe)*Ot+Math.cos(oe)*_t+Ye.y,ellipticalArcStartAngle:st,ellipticalArcEndAngle:st+mt,ellipticalArcAngle:dt,ellipticalArcCenter:Ye,resultantRx:y,resultantRy:x};return wt};function tN(E){for(var a=[],y=null,x=null,b=null,z=0,ee=E.length,re=0;re<ee;re++){var ae=E[re];x=E[re+1];var oe=ae[0],de={command:oe,prePoint:y,params:ae,startTangent:null,endTangent:null,currentPoint:null,nextPoint:null,arcParams:null,box:null,cubicParams:null};switch(oe){case"M":b=[ae[1],ae[2]],z=re;break;case"A":var ge=nN(y,ae);de.arcParams=ge;break}if(oe==="Z")y=b,x=E[z+1];else{var ye=ae.length;y=[ae[ye-2],ae[ye-1]]}x&&x[0]==="Z"&&(x=E[z],a[z]&&(a[z].prePoint=y)),de.currentPoint=y,a[z]&&wp(y,a[z].currentPoint)&&(a[z].prePoint=de.prePoint);var De=x?[x[x.length-2],x[x.length-1]]:null;de.nextPoint=De;var ke=de.prePoint;if(["L","H","V"].includes(oe))de.startTangent=[ke[0]-y[0],ke[1]-y[1]],de.endTangent=[y[0]-ke[0],y[1]-ke[1]];else if(oe==="Q"){var ze=[ae[1],ae[2]];de.startTangent=[ke[0]-ze[0],ke[1]-ze[1]],de.endTangent=[y[0]-ze[0],y[1]-ze[1]]}else if(oe==="T"){var We=a[re-1],Ve=J2(We.currentPoint,ke);We.command==="Q"?(de.command="Q",de.startTangent=[ke[0]-Ve[0],ke[1]-Ve[1]],de.endTangent=[y[0]-Ve[0],y[1]-Ve[1]]):(de.command="TL",de.startTangent=[ke[0]-y[0],ke[1]-y[1]],de.endTangent=[y[0]-ke[0],y[1]-ke[1]])}else if(oe==="C"){var Ze=[ae[1],ae[2]],Ye=[ae[3],ae[4]];de.startTangent=[ke[0]-Ze[0],ke[1]-Ze[1]],de.endTangent=[y[0]-Ye[0],y[1]-Ye[1]],de.startTangent[0]===0&&de.startTangent[1]===0&&(de.startTangent=[Ze[0]-Ye[0],Ze[1]-Ye[1]]),de.endTangent[0]===0&&de.endTangent[1]===0&&(de.endTangent=[Ye[0]-Ze[0],Ye[1]-Ze[1]])}else if(oe==="S"){var et=a[re-1],st=J2(et.currentPoint,ke),ht=[ae[1],ae[2]];et.command==="C"?(de.command="C",de.startTangent=[ke[0]-st[0],ke[1]-st[1]],de.endTangent=[y[0]-ht[0],y[1]-ht[1]]):(de.command="SQ",de.startTangent=[ke[0]-ht[0],ke[1]-ht[1]],de.endTangent=[y[0]-ht[0],y[1]-ht[1]])}else if(oe==="A"){var mt=eP(de,0),dt=mt.x,Ot=mt.y,_t=eP(de,1,!1),wt=_t.x,$t=_t.y;de.startTangent=[dt,Ot],de.endTangent=[wt,$t]}a.push(de)}return a}function eP(E,a){var y=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,x=E.arcParams,b=x.rx,z=b===void 0?0:b,ee=x.ry,re=ee===void 0?0:ee,ae=x.xRotation,oe=x.arcFlag,de=x.sweepFlag,ge=$2({x:E.prePoint[0],y:E.prePoint[1]},z,re,ae,!!oe,!!de,{x:E.currentPoint[0],y:E.currentPoint[1]},a),ye=$2({x:E.prePoint[0],y:E.prePoint[1]},z,re,ae,!!oe,!!de,{x:E.currentPoint[0],y:E.currentPoint[1]},y?a+.005:a-.005),De=ye.x-ge.x,ke=ye.y-ge.y,ze=Math.sqrt(De*De+ke*ke);return{x:-De/ze,y:-ke/ze}}function Dp(E){return Math.sqrt(E[0]*E[0]+E[1]*E[1])}function DA(E,a){return Dp(E)*Dp(a)?(E[0]*a[0]+E[1]*a[1])/(Dp(E)*Dp(a)):1}function tP(E,a){return(E[0]*a[1]<E[1]*a[0]?-1:1)*Math.acos(DA(E,a))}function nN(E,a){var y=a[1],x=a[2],b=qC(Bl(a[3]),Math.PI*2),z=a[4],ee=a[5],re=E[0],ae=E[1],oe=a[6],de=a[7],ge=Math.cos(b)*(re-oe)/2+Math.sin(b)*(ae-de)/2,ye=-1*Math.sin(b)*(re-oe)/2+Math.cos(b)*(ae-de)/2,De=ge*ge/(y*y)+ye*ye/(x*x);De>1&&(y*=Math.sqrt(De),x*=Math.sqrt(De));var ke=y*y*(ye*ye)+x*x*(ge*ge),ze=ke?Math.sqrt((y*y*(x*x)-ke)/ke):1;z===ee&&(ze*=-1),isNaN(ze)&&(ze=0);var We=x?ze*y*ye/x:0,Ve=y?ze*-x*ge/y:0,Ze=(re+oe)/2+Math.cos(b)*We-Math.sin(b)*Ve,Ye=(ae+de)/2+Math.sin(b)*We+Math.cos(b)*Ve,et=[(ge-We)/y,(ye-Ve)/x],st=[(-1*ge-We)/y,(-1*ye-Ve)/x],ht=tP([1,0],et),mt=tP(et,st);return DA(et,st)<=-1&&(mt=Math.PI),DA(et,st)>=1&&(mt=0),ee===0&&mt>0&&(mt-=2*Math.PI),ee===1&&mt<0&&(mt+=2*Math.PI),{cx:Ze,cy:Ye,rx:wp(E,[oe,de])?0:y,ry:wp(E,[oe,de])?0:x,startAngle:ht,endAngle:ht+mt,xRotation:b,arcFlag:z,sweepFlag:ee}}function rN(E,a,y){return E.reduce(function(x,b){var z="";if(b[0]==="M"||b[0]==="L"){var ee=vec3.fromValues(b[1],b[2],0);y&&vec3.transformMat4(ee,ee,y),z="".concat(b[0]).concat(ee[0],",").concat(ee[1])}else if(b[0]==="Z")z=b[0];else if(b[0]==="C"){var re=vec3.fromValues(b[1],b[2],0),ae=vec3.fromValues(b[3],b[4],0),oe=vec3.fromValues(b[5],b[6],0);y&&(vec3.transformMat4(re,re,y),vec3.transformMat4(ae,ae,y),vec3.transformMat4(oe,oe,y)),z="".concat(b[0]).concat(re[0],",").concat(re[1],",").concat(ae[0],",").concat(ae[1],",").concat(oe[0],",").concat(oe[1])}else if(b[0]==="A"){var de=vec3.fromValues(b[6],b[7],0);y&&vec3.transformMat4(de,de,y),z="".concat(b[0]).concat(b[1],",").concat(b[2],",").concat(b[3],",").concat(b[4],",").concat(b[5],",").concat(de[0],",").concat(de[1])}else if(b[0]==="Q"){var ge=vec3.fromValues(b[1],b[2],0),ye=vec3.fromValues(b[3],b[4],0);y&&(vec3.transformMat4(ge,ge,y),vec3.transformMat4(ye,ye,y)),z="".concat(b[0]).concat(b[1],",").concat(b[2],",").concat(b[3],",").concat(b[4],"}")}return x+=z},"")}function aN(E,a,y,x){return[["M",E,a],["L",y,x]]}function nP(E,a,y,x){var b=(-1+Math.sqrt(2))/3*4,z=E*b,ee=a*b,re=y-E,ae=y+E,oe=x-a,de=x+a;return[["M",re,x],["C",re,x-ee,y-z,oe,y,oe],["C",y+z,oe,ae,x-ee,ae,x],["C",ae,x+ee,y+z,de,y,de],["C",y-z,de,re,x+ee,re,x],["Z"]]}function iN(E,a){var y=E.map(function(x,b){return[b===0?"M":"L",x[0],x[1]]});return a&&y.push(["Z"]),y}function oN(E,a,y,x,b){if(b){var z=_slicedToArray(b,4),ee=z[0],re=z[1],ae=z[2],oe=z[3],de=E>0?1:-1,ge=a>0?1:-1,ye=de+ge!==0?1:0;return[["M",de*ee+y,x],["L",E-de*re+y,x],re?["A",re,re,0,0,ye,E+y,ge*re+x]:null,["L",E+y,a-ge*ae+x],ae?["A",ae,ae,0,0,ye,E+y-de*ae,a+x]:null,["L",y+de*oe,a+x],oe?["A",oe,oe,0,0,ye,y,a+x-ge*oe]:null,["L",y,ge*ee+x],ee?["A",ee,ee,0,0,ye,de*ee+y,x]:null,["Z"]].filter(function(De){return De})}return[["M",y,x],["L",y+E,x],["L",y+E,x+a],["L",y,x+a],["Z"]]}function R$(E){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:E.getLocalTransform(),y=[];switch(E.nodeName){case va.LINE:var x=E.parsedStyle,b=x.x1,z=b===void 0?0:b,ee=x.y1,re=ee===void 0?0:ee,ae=x.x2,oe=ae===void 0?0:ae,de=x.y2,ge=de===void 0?0:de;y=aN(z,re,oe,ge);break;case va.CIRCLE:{var ye=E.parsedStyle,De=ye.r,ke=De===void 0?0:De,ze=ye.cx,We=ze===void 0?0:ze,Ve=ye.cy,Ze=Ve===void 0?0:Ve;y=nP(ke,ke,We,Ze);break}case va.ELLIPSE:{var Ye=E.parsedStyle,et=Ye.rx,st=et===void 0?0:et,ht=Ye.ry,mt=ht===void 0?0:ht,dt=Ye.cx,Ot=dt===void 0?0:dt,_t=Ye.cy,wt=_t===void 0?0:_t;y=nP(st,mt,Ot,wt);break}case va.POLYLINE:case va.POLYGON:var $t=E.parsedStyle.points;y=iN($t.points,E.nodeName===va.POLYGON);break;case va.RECT:var gn=E.parsedStyle,Xt=gn.width,Tn=Xt===void 0?0:Xt,er=gn.height,En=er===void 0?0:er,yn=gn.x,Cn=yn===void 0?0:yn,qn=gn.y,pn=qn===void 0?0:qn,lr=gn.radius,Jr=lr&&lr.some(function(Hr){return Hr!==0});y=oN(Tn,En,Cn,pn,Jr&&lr.map(function(Hr){return clamp(Hr,0,Math.min(Math.abs(Tn)/2,Math.abs(En)/2))}));break;case va.PATH:var na=E.parsedStyle.d.absolutePath;y=_toConsumableArray(na);break}if(y.length)return rN(y,E,a)}function F$(E){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,y=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,x=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,b=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,z=E.map(function(ee,re){var ae=ee[0],oe=E[re+1],de=re===0&&(a!==0||y!==0),ge=(re===E.length-1||oe&&(oe[0]==="M"||oe[0]==="Z"))&&x!==0&&b!==0,ye=de?[a,y]:[0,0],De=_slicedToArray(ye,2),ke=De[0],ze=De[1],We=ge?[x,b]:[0,0],Ve=_slicedToArray(We,2),Ze=Ve[0],Ye=Ve[1];switch(ae){case"M":return"M ".concat(ee[1]+ke,",").concat(ee[2]+ze);case"L":return"L ".concat(ee[1]+Ze,",").concat(ee[2]+Ye);case"Q":return"Q ".concat(ee[1]," ").concat(ee[2],",").concat(ee[3]+Ze," ").concat(ee[4]+Ye);case"C":return"C ".concat(ee[1]," ").concat(ee[2],",").concat(ee[3]," ").concat(ee[4],",").concat(ee[5]+Ze," ").concat(ee[6]+Ye);case"A":return"A ".concat(ee[1]," ").concat(ee[2]," ").concat(ee[3]," ").concat(ee[4]," ").concat(ee[5]," ").concat(ee[6]," ").concat(ee[7]).concat(ge?" L ".concat(ee[6]+x,",").concat(ee[7]+b):"");case"Z":return"Z";default:return null}}).filter(function(ee){return ee!==null}).join(" ");return~z.indexOf("NaN")?"":z}var rP=function(a){if(a===""||Array.isArray(a)&&a.length===0)return{absolutePath:[],hasArc:!1,segments:[],polygons:[],polylines:[],curve:null,totalLength:0,rect:{x:0,y:0,width:0,height:0}};var y;try{y=up(a)}catch(De){y=up(""),console.error("[g]: Invalid SVG Path definition: ".concat(a))}J6(y);var x=q6(y),b=$6(y),z=b.polygons,ee=b.polylines,re=tN(y),ae=eN(re,0),oe=ae.x,de=ae.y,ge=ae.width,ye=ae.height;return{absolutePath:y,hasArc:x,segments:re,polygons:z,polylines:ee,totalLength:0,rect:{x:Number.isFinite(oe)?oe:0,y:Number.isFinite(de)?de:0,width:Number.isFinite(ge)?ge:0,height:Number.isFinite(ye)?ye:0}}},sN=Lu(rP);function aP(E){return al(E)?sN(E):rP(E)}function lN(E,a,y){var x=E.curve,b=a.curve;(!x||x.length===0)&&(x=sA(E.absolutePath,!1),E.curve=x),(!b||b.length===0)&&(b=sA(a.absolutePath,!1),a.curve=b);var z=[x,b];x.length!==b.length&&(z=t2(x,b));var ee=n2(z[0])!==n2(z[1])?nB(z[0]):rB(z[0]);return[ee,iB(z[1],ee),function(re){return re}]}function uN(E,a){var y;return al(E)?y=E.split(" ").map(function(x){var b=x.split(","),z=(0,Ps.Z)(b,2),ee=z[0],re=z[1];return[Number(ee),Number(re)]}):y=E,{points:y,totalLength:0,segments:[]}}function cN(E,a){return[E.points,a.points,function(y){return y}]}var vu=null,H0=/\s*(\w+)\(([^)]*)\)/g;function od(E){return function(a){var y=0;return E.map(function(x){return x===vu?a[y++]:x})}}function jg(E){return E}var Zv={matrix:["NNNNNN",[vu,vu,0,0,vu,vu,0,0,0,0,1,0,vu,vu,0,1],jg],matrix3d:["NNNNNNNNNNNNNNNN",jg],rotate:["A"],rotateX:["A"],rotateY:["A"],rotateZ:["A"],rotate3d:["NNNA"],perspective:["L"],scale:["Nn",od([vu,vu,new Rl(1)]),jg],scaleX:["N",od([vu,new Rl(1),new Rl(1)]),od([vu,new Rl(1)])],scaleY:["N",od([new Rl(1),vu,new Rl(1)]),od([new Rl(1),vu])],scaleZ:["N",od([new Rl(1),new Rl(1),vu])],scale3d:["NNN",jg],skew:["Aa",null,jg],skewX:["A",null,od([vu,_g])],skewY:["A",null,od([_g,vu])],translate:["Tt",od([vu,vu,pf]),jg],translateX:["T",od([vu,pf,pf]),od([vu,pf])],translateY:["T",od([pf,vu,pf]),od([pf,vu])],translateZ:["L",od([pf,pf,vu])],translate3d:["TTL",jg]};function iP(E){for(var a=[],y=E.length,x=0;x<y;x++){var b=E[x],z=b[0],ee=b.slice(1);z==="translate"||z==="skew"?ee.length===1&&ee.push(0):z==="scale"&&ee.length===1&&ee.push(ee[0]);var re=Zv[z];if(!re)return[];var ae=ee.map(function(oe){return $l(oe)});a.push({t:z,d:ae})}return a}function oP(E){if(Array.isArray(E))return iP(E);if(E=(E||"none").trim(),E==="none")return[];var a=[],y,x=0;for(H0.lastIndex=0;y=H0.exec(E);){if(y.index!==x)return[];x=y.index+y[0].length;var b=y[1],z=Zv[b];if(!z)return[];var ee=y[2].split(","),re=z[0];if(re.length<ee.length)return[];for(var ae=[],oe=0;oe<re.length;oe++){var de=ee[oe],ge=re[oe],ye=void 0;if(de?ye={A:function(ke){return ke.trim()==="0"?_g:V6(ke)},N:CA,T:bA,L:G6}[ge.toUpperCase()](de):ye={a:_g,n:ae[0],t:pf}[ge],ye===void 0)return[];ae.push(ye)}if(a.push({t:b,d:ae}),H0.lastIndex===E.length)return a}return[]}function dN(E){if(Array.isArray(E))return iP(E);if(E=(E||"none").trim(),E==="none")return[];var a=[],y,x=0;for(H0.lastIndex=0;y=H0.exec(E);){if(y.index!==x)return[];x=y.index+y[0].length;var b=y[1],z=Zv[b];if(!z)return[];var ee=y[2].split(","),re=z[0];if(re.length<ee.length)return[];for(var ae=[],oe=0;oe<re.length;oe++){var de=ee[oe],ge=re[oe],ye=void 0;if(de?ye={A:function(ke){return ke.trim()==="0"?_g:K2(ke)},N:Y2,T:V2,L:H2}[ge.toUpperCase()](de):ye={a:_g,n:ae[0],t:pf}[ge],ye===void 0)return[];ae.push(ye)}if(a.push({t:b,d:ae}),H0.lastIndex===E.length)return a}return[]}function fN(E){var a,y,x,b;switch(E.t){case"rotateX":return b=Bl(id(E.d[0])),[1,0,0,0,0,Math.cos(b),Math.sin(b),0,0,-Math.sin(b),Math.cos(b),0,0,0,0,1];case"rotateY":return b=Bl(id(E.d[0])),[Math.cos(b),0,-Math.sin(b),0,0,1,0,0,Math.sin(b),0,Math.cos(b),0,0,0,0,1];case"rotate":case"rotateZ":return b=Bl(id(E.d[0])),[Math.cos(b),Math.sin(b),0,0,-Math.sin(b),Math.cos(b),0,0,0,0,1,0,0,0,0,1];case"rotate3d":a=E.d[0].value,y=E.d[1].value,x=E.d[2].value,b=Bl(id(E.d[3]));var z=a*a+y*y+x*x;if(z===0)a=1,y=0,x=0;else if(z!==1){var ee=Math.sqrt(z);a/=ee,y/=ee,x/=ee}var re=Math.sin(b/2),ae=re*Math.cos(b/2),oe=re*re;return[1-2*(y*y+x*x)*oe,2*(a*y*oe+x*ae),2*(a*x*oe-y*ae),0,2*(a*y*oe-x*ae),1-2*(a*a+x*x)*oe,2*(y*x*oe+a*ae),0,2*(a*x*oe+y*ae),2*(y*x*oe-a*ae),1-2*(a*a+y*y)*oe,0,0,0,0,1];case"scale":return[E.d[0].value,0,0,0,0,E.d[1].value,0,0,0,0,1,0,0,0,0,1];case"scaleX":return[E.d[0].value,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];case"scaleY":return[1,0,0,0,0,E.d[0].value,0,0,0,0,1,0,0,0,0,1];case"scaleZ":return[1,0,0,0,0,1,0,0,0,0,E.d[0].value,0,0,0,0,1];case"scale3d":return[E.d[0].value,0,0,0,0,E.d[1].value,0,0,0,0,E.d[2].value,0,0,0,0,1];case"skew":var de=Bl(id(E.d[0])),ge=Bl(id(E.d[1]));return[1,Math.tan(ge),0,0,Math.tan(de),1,0,0,0,0,1,0,0,0,0,1];case"skewX":return b=Bl(id(E.d[0])),[1,0,0,0,Math.tan(b),1,0,0,0,0,1,0,0,0,0,1];case"skewY":return b=Bl(id(E.d[0])),[1,Math.tan(b),0,0,0,1,0,0,0,0,1,0,0,0,0,1];case"translate":return a=bd(E.d[0],0,null)||0,y=bd(E.d[1],0,null)||0,[1,0,0,0,0,1,0,0,0,0,1,0,a,y,0,1];case"translateX":return a=bd(E.d[0],0,null)||0,[1,0,0,0,0,1,0,0,0,0,1,0,a,0,0,1];case"translateY":return y=bd(E.d[0],0,null)||0,[1,0,0,0,0,1,0,0,0,0,1,0,0,y,0,1];case"translateZ":return x=bd(E.d[0],0,null)||0,[1,0,0,0,0,1,0,0,0,0,1,0,0,0,x,1];case"translate3d":return a=bd(E.d[0],0,null)||0,y=bd(E.d[1],0,null)||0,x=bd(E.d[2],0,null)||0,[1,0,0,0,0,1,0,0,0,0,1,0,a,y,x,1];case"perspective":var ye=bd(E.d[0],0,null)||0,De=ye?-1/ye:0;return[1,0,0,0,0,1,0,0,0,0,1,De,0,0,0,1];case"matrix":return[E.d[0].value,E.d[1].value,0,0,E.d[2].value,E.d[3].value,0,0,0,0,1,0,E.d[4].value,E.d[5].value,0,1];case"matrix3d":return E.d.map(function(ke){return ke.value})}}function hN(E,a){return[E[0]*a[0]+E[4]*a[1]+E[8]*a[2]+E[12]*a[3],E[1]*a[0]+E[5]*a[1]+E[9]*a[2]+E[13]*a[3],E[2]*a[0]+E[6]*a[1]+E[10]*a[2]+E[14]*a[3],E[3]*a[0]+E[7]*a[1]+E[11]*a[2]+E[15]*a[3],E[0]*a[4]+E[4]*a[5]+E[8]*a[6]+E[12]*a[7],E[1]*a[4]+E[5]*a[5]+E[9]*a[6]+E[13]*a[7],E[2]*a[4]+E[6]*a[5]+E[10]*a[6]+E[14]*a[7],E[3]*a[4]+E[7]*a[5]+E[11]*a[6]+E[15]*a[7],E[0]*a[8]+E[4]*a[9]+E[8]*a[10]+E[12]*a[11],E[1]*a[8]+E[5]*a[9]+E[9]*a[10]+E[13]*a[11],E[2]*a[8]+E[6]*a[9]+E[10]*a[10]+E[14]*a[11],E[3]*a[8]+E[7]*a[9]+E[11]*a[10]+E[15]*a[11],E[0]*a[12]+E[4]*a[13]+E[8]*a[14]+E[12]*a[15],E[1]*a[12]+E[5]*a[13]+E[9]*a[14]+E[13]*a[15],E[2]*a[12]+E[6]*a[13]+E[10]*a[14]+E[14]*a[15],E[3]*a[12]+E[7]*a[13]+E[11]*a[14]+E[15]*a[15]]}function gN(E){return E.length===0?[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]:E.map(fN).reduce(hN)}function sP(E){var a=[0,0,0],y=[1,1,1],x=[0,0,0],b=[0,0,0,1],z=[0,0,0,1];return YB(gN(E),a,y,x,b,z),[[a,y,x,z,b]]}var vN=function(){function E(x,b){for(var z=[[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]],ee=0;ee<4;ee++)for(var re=0;re<4;re++)for(var ae=0;ae<4;ae++)z[ee][re]+=b[ee][ae]*x[ae][re];return z}function a(x){return x[0][2]===0&&x[0][3]===0&&x[1][2]===0&&x[1][3]===0&&x[2][0]===0&&x[2][1]===0&&x[2][2]===1&&x[2][3]===0&&x[3][2]===0&&x[3][3]===1}function y(x,b,z,ee,re){for(var ae=[[1,0,0,0],[0,1,0,0],[0,0,1,0],[0,0,0,1]],oe=0;oe<4;oe++)ae[oe][3]=re[oe];for(var de=0;de<3;de++)for(var ge=0;ge<3;ge++)ae[3][de]+=x[ge]*ae[ge][de];var ye=ee[0],De=ee[1],ke=ee[2],ze=ee[3],We=[[1,0,0,0],[0,1,0,0],[0,0,1,0],[0,0,0,1]];We[0][0]=1-2*(De*De+ke*ke),We[0][1]=2*(ye*De-ke*ze),We[0][2]=2*(ye*ke+De*ze),We[1][0]=2*(ye*De+ke*ze),We[1][1]=1-2*(ye*ye+ke*ke),We[1][2]=2*(De*ke-ye*ze),We[2][0]=2*(ye*ke-De*ze),We[2][1]=2*(De*ke+ye*ze),We[2][2]=1-2*(ye*ye+De*De),ae=E(ae,We);var Ve=[[1,0,0,0],[0,1,0,0],[0,0,1,0],[0,0,0,1]];z[2]&&(Ve[2][1]=z[2],ae=E(ae,Ve)),z[1]&&(Ve[2][1]=0,Ve[2][0]=z[0],ae=E(ae,Ve)),z[0]&&(Ve[2][0]=0,Ve[1][0]=z[0],ae=E(ae,Ve));for(var Ze=0;Ze<3;Ze++)for(var Ye=0;Ye<3;Ye++)ae[Ze][Ye]*=b[Ze];return a(ae)?[ae[0][0],ae[0][1],ae[1][0],ae[1][1],ae[3][0],ae[3][1]]:ae[0].concat(ae[1],ae[2],ae[3])}return y}();function mN(E){return E.toFixed(6).replace(".000000","")}function IA(E,a){var y,x;return E.decompositionPair!==a&&(E.decompositionPair=a,y=sP(E)),a.decompositionPair!==E&&(a.decompositionPair=E,x=sP(a)),y[0]===null||x[0]===null?[[!1],[!0],function(b){return b?a[0].d:E[0].d}]:(y[0].push(0),x[0].push(1),[y,x,function(b){var z=yN(y[0][3],x[0][3],b[5]),ee=vN(b[0],b[1],b[2],z,b[4]),re=ee.map(mN).join(",");return re}])}function pN(E,a){for(var y=0,x=0;x<E.length;x++)y+=E[x]*a[x];return y}function yN(E,a,y){var x=pN(E,a);x=gu(x,-1,1);var b=[];if(x===1)b=E;else for(var z=Math.acos(x),ee=Math.sin(y*z)*1/Math.sqrt(1-x*x),re=0;re<4;re++)b.push(E[re]*(Math.cos(y*z)-x*ee)+a[re]*ee);return b}function OA(E){return E.replace(/[XY]/,"")}function TA(E){return E.replace(/(X|Y|Z|3d)?$/,"3d")}var EN=function(a,y){return a==="perspective"&&y==="perspective"||(a==="matrix"||a==="matrix3d")&&(y==="matrix"||y==="matrix3d")};function AN(E,a,y){var x=!1;if(!E.length||!a.length){E.length||(x=!0,E=a,a=[]);for(var b=function(){var wt=E[z],$t=wt.t,gn=wt.d,Xt=$t.substring(0,5)==="scale"?1:0;a.push({t:$t,d:gn.map(function(Tn){return typeof Tn=="number"?$l(Xt):$l(Xt,Tn.unit)})})},z=0;z<E.length;z++)b()}var ee=[],re=[],ae=[];if(E.length!==a.length){var oe=IA(E,a);ee=[oe[0]],re=[oe[1]],ae=[["matrix",[oe[2]]]]}else for(var de=0;de<E.length;de++){var ge=E[de].t,ye=a[de].t,De=E[de].d,ke=a[de].d,ze=Zv[ge],We=Zv[ye],Ve=void 0;if(EN(ge,ye)){var Ze=IA([E[de]],[a[de]]);ee.push(Ze[0]),re.push(Ze[1]),ae.push(["matrix",[Ze[2]]]);continue}else if(ge===ye)Ve=ge;else if(ze[2]&&We[2]&&OA(ge)===OA(ye))Ve=OA(ge),De=ze[2](De),ke=We[2](ke);else if(ze[1]&&We[1]&&TA(ge)===TA(ye))Ve=TA(ge),De=ze[1](De),ke=We[1](ke);else{var Ye=IA(E,a);ee=[Ye[0]],re=[Ye[1]],ae=[["matrix",[Ye[2]]]];break}for(var et=[],st=[],ht=[],mt=0;mt<De.length;mt++){var dt=K6(De[mt],ke[mt],y,!1,mt);et[mt]=dt[0],st[mt]=dt[1],ht.push(dt[2])}ee.push(et),re.push(st),ae.push([Ve,ht])}if(x){var Ot=ee;ee=re,re=Ot}return[ee,re,function(_t){return _t.map(function(wt,$t){var gn=wt.map(function(Xt,Tn){return ae[$t][1][Tn](Xt)}).join(",");return ae[$t][0]==="matrix"&&gn.split(",").length===16&&(ae[$t][0]="matrix3d"),ae[$t][0]==="matrix3d"&&gn.split(",").length===6&&(ae[$t][0]="matrix"),"".concat(ae[$t][0],"(").concat(gn,")")}).join(" ")}]}var xN=Lu(function(E){if(al(E)){if(E==="text-anchor")return[$l(0,"px"),$l(0,"px")];var a=E.split(" ");return a.length===1&&(a[0]==="top"||a[0]==="bottom"?(a[1]=a[0],a[0]="center"):a[1]="center"),a.length!==2?null:[bA(lP(a[0])),bA(lP(a[1]))]}return[$l(E[0]||0,"px"),$l(E[1]||0,"px")]});function lP(E){return E==="center"?"50%":E==="left"||E==="top"?"0%":E==="right"||E==="bottom"?"100%":E}var LA=[{n:"display",k:["none"]},{n:"opacity",int:!0,inh:!0,d:"1",syntax:Ci.OPACITY_VALUE},{n:"fillOpacity",int:!0,inh:!0,d:"1",syntax:Ci.OPACITY_VALUE},{n:"strokeOpacity",int:!0,inh:!0,d:"1",syntax:Ci.OPACITY_VALUE},{n:"fill",int:!0,k:["none"],d:"none",syntax:Ci.PAINT},{n:"fillRule",k:["nonzero","evenodd"],d:"nonzero"},{n:"stroke",int:!0,k:["none"],d:"none",syntax:Ci.PAINT,l:!0},{n:"shadowType",k:["inner","outer","both"],d:"outer",l:!0},{n:"shadowColor",int:!0,syntax:Ci.COLOR},{n:"shadowOffsetX",int:!0,l:!0,d:"0",syntax:Ci.LENGTH_PERCENTAGE},{n:"shadowOffsetY",int:!0,l:!0,d:"0",syntax:Ci.LENGTH_PERCENTAGE},{n:"shadowBlur",int:!0,l:!0,d:"0",syntax:Ci.SHADOW_BLUR},{n:"lineWidth",int:!0,inh:!0,d:"1",l:!0,a:["strokeWidth"],syntax:Ci.LENGTH_PERCENTAGE},{n:"increasedLineWidthForHitTesting",inh:!0,d:"0",l:!0,syntax:Ci.LENGTH_PERCENTAGE},{n:"lineJoin",inh:!0,l:!0,a:["strokeLinejoin"],k:["miter","bevel","round"],d:"miter"},{n:"lineCap",inh:!0,l:!0,a:["strokeLinecap"],k:["butt","round","square"],d:"butt"},{n:"lineDash",int:!0,inh:!0,k:["none"],a:["strokeDasharray"],syntax:Ci.LENGTH_PERCENTAGE_12},{n:"lineDashOffset",int:!0,inh:!0,d:"0",a:["strokeDashoffset"],syntax:Ci.LENGTH_PERCENTAGE},{n:"offsetPath",syntax:Ci.DEFINED_PATH},{n:"offsetDistance",int:!0,syntax:Ci.OFFSET_DISTANCE},{n:"dx",int:!0,l:!0,d:"0",syntax:Ci.LENGTH_PERCENTAGE},{n:"dy",int:!0,l:!0,d:"0",syntax:Ci.LENGTH_PERCENTAGE},{n:"zIndex",ind:!0,int:!0,d:"0",k:["auto"],syntax:Ci.Z_INDEX},{n:"visibility",k:["visible","hidden"],ind:!0,inh:!0,int:!0,d:"visible"},{n:"pointerEvents",inh:!0,k:["none","auto","stroke","fill","painted","visible","visiblestroke","visiblefill","visiblepainted","all"],d:"auto"},{n:"filter",ind:!0,l:!0,k:["none"],d:"none",syntax:Ci.FILTER},{n:"clipPath",syntax:Ci.DEFINED_PATH},{n:"textPath",syntax:Ci.DEFINED_PATH},{n:"textPathSide",k:["left","right"],d:"left"},{n:"textPathStartOffset",l:!0,d:"0",syntax:Ci.LENGTH_PERCENTAGE},{n:"transform",p:100,int:!0,k:["none"],d:"none",syntax:Ci.TRANSFORM},{n:"transformOrigin",p:100,d:"0 0",l:!0,syntax:Ci.TRANSFORM_ORIGIN},{n:"cx",int:!0,l:!0,d:"0",syntax:Ci.COORDINATE},{n:"cy",int:!0,l:!0,d:"0",syntax:Ci.COORDINATE},{n:"cz",int:!0,l:!0,d:"0",syntax:Ci.COORDINATE},{n:"r",int:!0,l:!0,d:"0",syntax:Ci.LENGTH_PERCENTAGE},{n:"rx",int:!0,l:!0,d:"0",syntax:Ci.LENGTH_PERCENTAGE},{n:"ry",int:!0,l:!0,d:"0",syntax:Ci.LENGTH_PERCENTAGE},{n:"x",int:!0,l:!0,d:"0",syntax:Ci.COORDINATE},{n:"y",int:!0,l:!0,d:"0",syntax:Ci.COORDINATE},{n:"z",int:!0,l:!0,d:"0",syntax:Ci.COORDINATE},{n:"width",int:!0,l:!0,k:["auto","fit-content","min-content","max-content"],d:"0",syntax:Ci.LENGTH_PERCENTAGE},{n:"height",int:!0,l:!0,k:["auto","fit-content","min-content","max-content"],d:"0",syntax:Ci.LENGTH_PERCENTAGE},{n:"radius",int:!0,l:!0,d:"0",syntax:Ci.LENGTH_PERCENTAGE_14},{n:"x1",int:!0,l:!0,syntax:Ci.COORDINATE},{n:"y1",int:!0,l:!0,syntax:Ci.COORDINATE},{n:"z1",int:!0,l:!0,syntax:Ci.COORDINATE},{n:"x2",int:!0,l:!0,syntax:Ci.COORDINATE},{n:"y2",int:!0,l:!0,syntax:Ci.COORDINATE},{n:"z2",int:!0,l:!0,syntax:Ci.COORDINATE},{n:"d",int:!0,l:!0,d:"",syntax:Ci.PATH,p:50},{n:"points",int:!0,l:!0,syntax:Ci.LIST_OF_POINTS,p:50},{n:"text",l:!0,d:"",syntax:Ci.TEXT,p:50},{n:"textTransform",l:!0,inh:!0,k:["capitalize","uppercase","lowercase","none"],d:"none",syntax:Ci.TEXT_TRANSFORM,p:51},{n:"font",l:!0},{n:"fontSize",int:!0,inh:!0,d:"16px",l:!0,syntax:Ci.LENGTH_PERCENTAGE},{n:"fontFamily",l:!0,inh:!0,d:"sans-serif"},{n:"fontStyle",l:!0,inh:!0,k:["normal","italic","oblique"],d:"normal"},{n:"fontWeight",l:!0,inh:!0,k:["normal","bold","bolder","lighter"],d:"normal"},{n:"fontVariant",l:!0,inh:!0,k:["normal","small-caps"],d:"normal"},{n:"lineHeight",l:!0,syntax:Ci.LENGTH,int:!0,d:"0"},{n:"letterSpacing",l:!0,syntax:Ci.LENGTH,int:!0,d:"0"},{n:"miterLimit",l:!0,syntax:Ci.NUMBER,d:function(a){return a===va.PATH||a===va.POLYGON||a===va.POLYLINE?"4":"10"}},{n:"wordWrap",l:!0},{n:"wordWrapWidth",l:!0},{n:"maxLines",l:!0},{n:"textOverflow",l:!0,d:"clip"},{n:"leading",l:!0},{n:"textBaseline",l:!0,inh:!0,k:["top","hanging","middle","alphabetic","ideographic","bottom"],d:"alphabetic"},{n:"textAlign",l:!0,inh:!0,k:["start","center","middle","end","left","right"],d:"start"},{n:"markerStart",syntax:Ci.MARKER},{n:"markerEnd",syntax:Ci.MARKER},{n:"markerMid",syntax:Ci.MARKER},{n:"markerStartOffset",syntax:Ci.LENGTH,l:!0,int:!0,d:"0"},{n:"markerEndOffset",syntax:Ci.LENGTH,l:!0,int:!0,d:"0"}],SN=new Set(LA.filter(function(E){return!!E.l}).map(function(E){return E.n})),uP={},bN=function(){function E(a){var y=this;(0,Ha.Z)(this,E),this.runtime=a,LA.forEach(function(x){y.registerMetadata(x)})}return(0,Va.Z)(E,[{key:"registerMetadata",value:function(y){[y.n].concat((0,zs.Z)(y.a||[])).forEach(function(x){uP[x]=y})}},{key:"getPropertySyntax",value:function(y){return this.runtime.CSSPropertySyntaxFactory[y]}},{key:"processProperties",value:function(y,x){var b=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{skipUpdateAttribute:!1,skipParse:!1,forceUpdateGeometry:!1,usedAttributes:[],memoize:!0};Object.assign(y.attributes,x);var z=y.parsedStyle.clipPath,ee=y.parsedStyle.offsetPath;CN(y,x);var re=!!b.forceUpdateGeometry;if(!re){for(var ae in x)if(SN.has(ae)){re=!0;break}}var oe=cP(y);oe.has("fill")&&x.fill&&(y.parsedStyle.fill=Vv(x.fill)),oe.has("stroke")&&x.stroke&&(y.parsedStyle.stroke=Vv(x.stroke)),oe.has("shadowColor")&&x.shadowColor&&(y.parsedStyle.shadowColor=Vv(x.shadowColor)),oe.has("filter")&&x.filter&&(y.parsedStyle.filter=Y6(x.filter)),oe.has("radius")&&!Io(x.radius)&&(y.parsedStyle.radius=Z2(x.radius,4)),oe.has("lineDash")&&!Io(x.lineDash)&&(y.parsedStyle.lineDash=Z2(x.lineDash,"even")),oe.has("points")&&x.points&&(y.parsedStyle.points=uN(x.points)),oe.has("d")&&x.d===""&&(y.parsedStyle.d=(0,ps.Z)({},D2)),oe.has("d")&&x.d&&(y.parsedStyle.d=aP(x.d)),oe.has("textTransform")&&x.textTransform&&this.runtime.CSSPropertySyntaxFactory[Ci.TEXT_TRANSFORM].calculator(null,null,{value:x.textTransform},y,null),oe.has("clipPath")&&!qo(x.clipPath)&&this.runtime.CSSPropertySyntaxFactory[Ci.DEFINED_PATH].calculator("clipPath",z,x.clipPath,y,this.runtime),oe.has("offsetPath")&&x.offsetPath&&this.runtime.CSSPropertySyntaxFactory[Ci.DEFINED_PATH].calculator("offsetPath",ee,x.offsetPath,y,this.runtime),oe.has("transform")&&x.transform&&(y.parsedStyle.transform=oP(x.transform)),oe.has("transformOrigin")&&x.transformOrigin&&(y.parsedStyle.transformOrigin=xN(x.transformOrigin)),oe.has("markerStart")&&x.markerStart&&(y.parsedStyle.markerStart=this.runtime.CSSPropertySyntaxFactory[Ci.MARKER].calculator(null,x.markerStart,x.markerStart,null,null)),oe.has("markerEnd")&&x.markerEnd&&(y.parsedStyle.markerEnd=this.runtime.CSSPropertySyntaxFactory[Ci.MARKER].calculator(null,x.markerEnd,x.markerEnd,null,null)),oe.has("markerMid")&&x.markerMid&&(y.parsedStyle.markerMid=this.runtime.CSSPropertySyntaxFactory[Ci.MARKER].calculator("",x.markerMid,x.markerMid,null,null)),oe.has("zIndex")&&!Io(x.zIndex)&&this.runtime.CSSPropertySyntaxFactory[Ci.Z_INDEX].postProcessor(y),oe.has("offsetDistance")&&!Io(x.offsetDistance)&&this.runtime.CSSPropertySyntaxFactory[Ci.OFFSET_DISTANCE].postProcessor(y),oe.has("transform")&&x.transform&&this.runtime.CSSPropertySyntaxFactory[Ci.TRANSFORM].postProcessor(y),oe.has("transformOrigin")&&x.transformOrigin&&this.runtime.CSSPropertySyntaxFactory[Ci.TRANSFORM_ORIGIN].postProcessor(y),re&&(y.dirty(!0,!0),b.forceUpdateGeometry||this.runtime.sceneGraphService.dirtyToRoot(y))}},{key:"updateGeometry",value:function(y){var x=y.nodeName,b=this.runtime.geometryUpdaterFactory[x];if(b){var z=y.geometry;z.contentBounds||(z.contentBounds=new Gl),z.renderBounds||(z.renderBounds=new Gl);var ee=y.parsedStyle,re=b.update(ee,y),ae=re.cx,oe=ae===void 0?0:ae,de=re.cy,ge=de===void 0?0:de,ye=re.cz,De=ye===void 0?0:ye,ke=re.hwidth,ze=ke===void 0?0:ke,We=re.hheight,Ve=We===void 0?0:We,Ze=re.hdepth,Ye=Ze===void 0?0:Ze,et=[Math.abs(ze),Math.abs(Ve),Ye],st=ee.stroke,ht=ee.lineWidth,mt=ht===void 0?1:ht,dt=ee.increasedLineWidthForHitTesting,Ot=dt===void 0?0:dt,_t=ee.shadowType,wt=_t===void 0?"outer":_t,$t=ee.shadowColor,gn=ee.filter,Xt=gn===void 0?[]:gn,Tn=ee.transformOrigin,er=[oe,ge,De];z.contentBounds.update(er,et);var En=x===va.POLYLINE||x===va.POLYGON||x===va.PATH?Math.SQRT2:.5,yn=st&&!st.isNone;if(yn){var Cn=((mt||0)+(Ot||0))*En;et[0]+=Cn,et[1]+=Cn}if(z.renderBounds.update(er,et),$t&&wt&&wt!=="inner"){var qn=z.renderBounds,pn=qn.min,lr=qn.max,Jr=ee.shadowBlur,na=ee.shadowOffsetX,Hr=ee.shadowOffsetY,Ar=Jr||0,Wr=na||0,ya=Hr||0,Ra=pn[0]-Ar+Wr,Aa=lr[0]+Ar+Wr,co=pn[1]-Ar+ya,So=lr[1]+Ar+ya;pn[0]=Math.min(pn[0],Ra),lr[0]=Math.max(lr[0],Aa),pn[1]=Math.min(pn[1],co),lr[1]=Math.max(lr[1],So),z.renderBounds.setMinMax(pn,lr)}Xt.forEach(function(Po){var Es=Po.name,as=Po.params;if(Es==="blur"){var yi=as[0].value;z.renderBounds.update(z.renderBounds.center,jh(z.renderBounds.halfExtents,z.renderBounds.halfExtents,[yi,yi,0]))}else if(Es==="drop-shadow"){var Ri=as[0].value,Sa=as[1].value,Fa=as[2].value,ni=z.renderBounds,Ki=ni.min,Oa=ni.max,xo=Ki[0]-Fa+Ri,Qi=Oa[0]+Fa+Ri,Hs=Ki[1]-Fa+Sa,fs=Oa[1]+Fa+Sa;Ki[0]=Math.min(Ki[0],xo),Oa[0]=Math.max(Oa[0],Qi),Ki[1]=Math.min(Ki[1],Hs),Oa[1]=Math.max(Oa[1],fs),z.renderBounds.setMinMax(Ki,Oa)}}),y.geometry.dirty=!1;var ti=ze<0,qi=Ve<0,Gi=(ti?-1:1)*(Tn?bd(Tn[0],0,y,!0):0),fo=(qi?-1:1)*(Tn?bd(Tn[1],1,y,!0):0);(Gi||fo)&&y.setOrigin(Gi,fo)}}},{key:"updateSizeAttenuation",value:function(y,x){y.style.isSizeAttenuation?(y.style.rawLineWidth||(y.style.rawLineWidth=y.style.lineWidth),y.style.lineWidth=(y.style.rawLineWidth||1)/x,y.nodeName===va.CIRCLE&&(y.style.rawR||(y.style.rawR=y.style.r),y.style.r=(y.style.rawR||1)/x)):(y.style.rawLineWidth&&(y.style.lineWidth=y.style.rawLineWidth,delete y.style.rawLineWidth),y.nodeName===va.CIRCLE&&y.style.rawR&&(y.style.r=y.style.rawR,delete y.style.rawR))}}])}();function CN(E,a){var y=cP(E);for(var x in a)y.has(x)&&(E.parsedStyle[x]=a[x])}function cP(E){return E.constructor.PARSED_STYLE_LIST}var PN=function(){function E(){(0,Ha.Z)(this,E),this.mixer=PA}return(0,Va.Z)(E,[{key:"calculator",value:function(y,x,b,z){return id(b)}}])}(),wN=function(){function E(){(0,Ha.Z)(this,E)}return(0,Va.Z)(E,[{key:"calculator",value:function(y,x,b,z,ee){return b instanceof Vd&&(b=null),ee.sceneGraphService.updateDisplayObjectDependency(y,x,b,z),y==="clipPath"&&z.forEach(function(re){re.childNodes.length===0&&ee.sceneGraphService.dirtyToRoot(re)}),b}}])}(),MN=function(){function E(){(0,Ha.Z)(this,E),this.parser=Vv,this.mixer=W6}return(0,Va.Z)(E,[{key:"calculator",value:function(y,x,b,z){return b instanceof Vd?b.value==="none"?U2:W2:b}}])}(),DN=function(){function E(){(0,Ha.Z)(this,E)}return(0,Va.Z)(E,[{key:"calculator",value:function(y,x,b){return b instanceof Vd?[]:b}}])}();function dP(E){var a=E.parsedStyle,y=a.fontSize;return Io(y)?null:y}var BA=function(){function E(){(0,Ha.Z)(this,E),this.mixer=PA}return(0,Va.Z)(E,[{key:"calculator",value:function(y,x,b,z,ee){if(ji(b))return b;if(Rl.isRelativeUnit(b.unit)){if(b.unit===Mi.kPercentage)return 0;if(b.unit===Mi.kEms){if(z.parentNode){var re=dP(z.parentNode);if(re)return re*=b.value,re}return 0}if(b.unit===Mi.kRems){var ae;if(z!=null&&(ae=z.ownerDocument)!==null&&ae!==void 0&&ae.documentElement){var oe=dP(z.ownerDocument.documentElement);if(oe)return oe*=b.value,oe}return 0}}else return b.value}}])}(),IN=function(){function E(){(0,Ha.Z)(this,E),this.mixer=X2}return(0,Va.Z)(E,[{key:"calculator",value:function(y,x,b){return b.map(function(z){return z.value})}}])}(),ON=function(){function E(){(0,Ha.Z)(this,E),this.mixer=X2}return(0,Va.Z)(E,[{key:"calculator",value:function(y,x,b){return b.map(function(z){return z.value})}}])}(),TN=function(){function E(){(0,Ha.Z)(this,E)}return(0,Va.Z)(E,[{key:"calculator",value:function(y,x,b,z){var ee;b instanceof Vd&&(b=null);var re=(ee=b)===null||ee===void 0?void 0:ee.cloneNode(!0);return re&&(re.style.isMarker=!0),re}}])}(),LN=function(){function E(){(0,Ha.Z)(this,E),this.mixer=PA}return(0,Va.Z)(E,[{key:"calculator",value:function(y,x,b){return b.value}}])}(),BN=function(){function E(){(0,Ha.Z)(this,E),this.mixer=wA(0,1)}return(0,Va.Z)(E,[{key:"calculator",value:function(y,x,b){return b.value}},{key:"postProcessor",value:function(y){var x=y.parsedStyle,b=x.offsetPath,z=x.offsetDistance;if(b){var ee=b.nodeName;if(ee===va.LINE||ee===va.PATH||ee===va.POLYLINE){var re=b.getPoint(z);re&&y.setLocalPosition(re.x,re.y)}}}}])}(),NN=function(){function E(){(0,Ha.Z)(this,E),this.mixer=wA(0,1)}return(0,Va.Z)(E,[{key:"calculator",value:function(y,x,b){return b.value}}])}(),RN=function(){function E(){(0,Ha.Z)(this,E),this.parser=aP,this.mixer=lN}return(0,Va.Z)(E,[{key:"calculator",value:function(y,x,b){return b instanceof Vd&&b.value==="unset"?{absolutePath:[],hasArc:!1,segments:[],polygons:[],polylines:[],curve:null,totalLength:0,rect:new z0(0,0,0,0)}:b}}])}(),FN=(0,Va.Z)(function E(){(0,Ha.Z)(this,E),this.mixer=cN}),kN=function(E){function a(){var y;(0,Ha.Z)(this,a);for(var x=arguments.length,b=new Array(x),z=0;z<x;z++)b[z]=arguments[z];return y=bs(this,a,[].concat(b)),y.mixer=wA(0,1/0),y}return(0,Cs.Z)(a,E),(0,Va.Z)(a)}(BA),_N=function(){function E(){(0,Ha.Z)(this,E)}return(0,Va.Z)(E,[{key:"calculator",value:function(y,x,b,z){return b instanceof Vd?b.value==="unset"?"":b.value:"".concat(b)}},{key:"postProcessor",value:function(y){y.nodeValue="".concat(y.parsedStyle.text)||""}}])}(),zN=function(){function E(){(0,Ha.Z)(this,E)}return(0,Va.Z)(E,[{key:"calculator",value:function(y,x,b,z){var ee=z.getAttribute("text");if(ee){var re=ee;b.value==="capitalize"?re=ee.charAt(0).toUpperCase()+ee.slice(1):b.value==="lowercase"?re=ee.toLowerCase():b.value==="uppercase"&&(re=ee.toUpperCase()),z.parsedStyle.text=re}return b.value}}])}(),k$=function(a){return Object.fromEntries(Object.entries(a).filter(function(y){var x=_slicedToArray(y,2),b=x[1];return b!==void 0}))},NA=new WeakMap;function jN(E,a,y){if(E){var x=typeof E=="string"?document.getElementById(E):E;NA.has(x)&&NA.get(x).destroy(y),NA.set(x,a)}}var RA=typeof window!="undefined"&&typeof window.document!="undefined";function UN(E){return!!E.getAttribute}function WN(E,a){for(var y=0,x=E.length;y<x;){var b=y+x>>>1;fP(E[b],a)<0?y=b+1:x=b}return y}function fP(E,a){var y=Number(E.parsedStyle.zIndex||0),x=Number(a.parsedStyle.zIndex||0);if(y===x){var b=E.parentNode;if(b){var z=b.childNodes||[];return z.indexOf(E)-z.indexOf(a)}}return y-x}function hP(E){var a=E;do{var y,x=(y=a.parsedStyle)===null||y===void 0?void 0:y.clipPath;if(x)return a;a=a.parentElement}while(a!==null);return null}var gP="px";function GN(E,a,y){RA&&E.style&&(E.style.width=a+gP,E.style.height=y+gP)}function vP(E,a){if(RA)return document.defaultView.getComputedStyle(E,null).getPropertyValue(a)}function HN(E){var a=vP(E,"width");return a==="auto"?E.offsetWidth:parseFloat(a)}function VN(E){var a=vP(E,"height");return a==="auto"?E.offsetHeight:parseFloat(a)}var KN=1,ZN={touchstart:"pointerdown",touchend:"pointerup",touchendoutside:"pointerupoutside",touchmove:"pointermove",touchcancel:"pointercancel"},FA=typeof performance=="object"&&performance.now?performance:Date;function Ip(E){return E.nodeName===va.FRAGMENT?!0:E.getRootNode().nodeName===va.FRAGMENT}function Ug(){var E=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"auto",a=arguments.length>1?arguments[1]:void 0,y=arguments.length>2?arguments[2]:void 0,x=!1,b=!1,z=!!a&&!a.isNone,ee=!!y&&!y.isNone;return E==="visiblepainted"||E==="painted"||E==="auto"?(x=z,b=ee):E==="visiblefill"||E==="fill"?x=!0:E==="visiblestroke"||E==="stroke"?b=!0:(E==="visible"||E==="all")&&(x=!0,b=!0),[x,b]}var QN=1,YN=function(){return QN++},Uf=typeof self=="object"&&self.self===self?self:typeof Te.g=="object"&&Te.g.global===Te.g?Te.g:{},XN=Date.now(),JN=function(){return Uf.performance&&typeof Uf.performance.now=="function"?Uf.performance.now():Date.now()-XN},Qv={},mP=Date.now(),qN=function(a){if(typeof a!="function")throw new TypeError("".concat(a," is not a function"));var y=Date.now(),x=y-mP,b=x>16?0:16-x,z=YN();return Qv[z]=a,Object.keys(Qv).length>1||setTimeout(function(){mP=y;var ee=Qv;Qv={},Object.keys(ee).forEach(function(re){return ee[re](JN())})},b),z},$N=function(a){delete Qv[a]},e4=["","webkit","moz","ms","o"],pP=function(a){return typeof a!="string"?qN:a===""?Uf.requestAnimationFrame:Uf["".concat(a,"RequestAnimationFrame")]},t4=function(a){return typeof a!="string"?$N:a===""?Uf.cancelAnimationFrame:Uf["".concat(a,"CancelAnimationFrame")]||Uf["".concat(a,"CancelRequestAnimationFrame")]},n4=function(a,y){for(var x=0;a[x]!==void 0;){if(y(a[x]))return a[x];x+=1}},yP=n4(e4,function(E){return!!pP(E)}),kA=pP(yP),EP=t4(yP);Uf.requestAnimationFrame=kA,Uf.cancelAnimationFrame=EP;var r4=function(){function E(){(0,Ha.Z)(this,E),this.callbacks=[]}return(0,Va.Z)(E,[{key:"getCallbacksNum",value:function(){return this.callbacks.length}},{key:"tapPromise",value:function(y,x){this.callbacks.push(x)}},{key:"promise",value:function(){for(var y=arguments.length,x=new Array(y),b=0;b<y;b++)x[b]=arguments[b];return Promise.all(this.callbacks.map(function(z){return z.apply(void 0,x)}))}}])}(),a4=function(){function E(){(0,Ha.Z)(this,E),this.callbacks=[]}return(0,Va.Z)(E,[{key:"tapPromise",value:function(y,x){this.callbacks.push(x)}},{key:"promise",value:function(){var a=(0,Kh.Z)((0,Ic.Z)().mark(function x(){var b,z,ee,re,ae=arguments;return(0,Ic.Z)().wrap(function(oe){for(;;)switch(oe.prev=oe.next){case 0:if(!this.callbacks.length){oe.next=6;break}return oe.next=1,(b=this.callbacks)[0].apply(b,ae);case 1:z=oe.sent,ee=1;case 2:if(!(ee<this.callbacks.length)){oe.next=5;break}return re=this.callbacks[ee],oe.next=3,re(z);case 3:z=oe.sent;case 4:ee++,oe.next=2;break;case 5:return oe.abrupt("return",z);case 6:return oe.abrupt("return",null);case 7:case"end":return oe.stop()}},x,this)}));function y(){return a.apply(this,arguments)}return y}()}])}(),jc=function(){function E(){(0,Ha.Z)(this,E),this.callbacks=[]}return(0,Va.Z)(E,[{key:"tap",value:function(y,x){this.callbacks.push(x)}},{key:"call",value:function(){for(var y=arguments.length,x=new Array(y),b=0;b<y;b++)x[b]=arguments[b];var z=arguments;this.callbacks.forEach(function(ee){ee.apply(void 0,z)})}}])}(),_A=function(){function E(){(0,Ha.Z)(this,E),this.callbacks=[]}return(0,Va.Z)(E,[{key:"tap",value:function(y,x){this.callbacks.push(x)}},{key:"call",value:function(){for(var y=arguments.length,x=new Array(y),b=0;b<y;b++)x[b]=arguments[b];if(this.callbacks.length){for(var z=arguments,ee=this.callbacks[0].apply(void 0,z),re=1;re<this.callbacks.length;re++){var ae=this.callbacks[re];ee=ae(ee)}return ee}return null}}])}(),i4=["serif","sans-serif","monospace","cursive","fantasy","system-ui"],o4=/([\"\'])[^\'\"]+\1/;function AP(E){var a=E.fontSize,y=a===void 0?16:a,x=E.fontFamily,b=x===void 0?"sans-serif":x,z=E.fontStyle,ee=z===void 0?"normal":z,re=E.fontVariant,ae=re===void 0?"normal":re,oe=E.fontWeight,de=oe===void 0?"normal":oe;return{fontSize:y,fontFamily:b,fontStyle:ee,fontVariant:ae,fontWeight:de}}var xP=Lu(function(a){for(var y=AP(a),x=y.fontSize,b=y.fontFamily,z=y.fontStyle,ee=y.fontVariant,re=y.fontWeight,ae=ji(x)&&"".concat(x,"px")||"16px",oe=b.split(","),de=oe.length-1;de>=0;de--){var ge=oe[de].trim();!o4.test(ge)&&i4.indexOf(ge)<0&&(ge='"'.concat(ge,'"')),oe[de]=ge}return"".concat(z," ").concat(ee," ").concat(re," ").concat(ae," ").concat(oe.join(","))},function(E){var a=AP(E),y=a.fontSize,x=a.fontFamily,b=a.fontStyle,z=a.fontVariant,ee=a.fontWeight;return"".concat(b,"_").concat(z,"_").concat(ee,"_").concat(y,"_").concat(x)}),s4=1e-6,Yv=function(a){return Math.max(a,s4)};function zA(E,a,y){return Uh(E),E[4]=Math.tan(a),E[1]=Math.tan(y),E}var Bu=jl(),l4=jl(),u4={scale:function(a){Bg(Bu,[a[0].value,a[1].value,1].map(function(y){return Yv(y)}))},scaleX:function(a){Bg(Bu,[a[0].value,1,1].map(function(y){return Yv(y)}))},scaleY:function(a){Bg(Bu,[1,a[0].value,1].map(function(y){return Yv(y)}))},scaleZ:function(a){Bg(Bu,[1,1,a[0].value].map(function(y){return Yv(y)}))},scale3d:function(a){Bg(Bu,[a[0].value,a[1].value,a[2].value].map(function(y){return Yv(y)}))},translate:function(a){Wh(Bu,[a[0].value,a[1].value,0])},translateX:function(a){Wh(Bu,[a[0].value,0,0])},translateY:function(a){Wh(Bu,[0,a[0].value,0])},translateZ:function(a){Wh(Bu,[0,0,a[0].value])},translate3d:function(a){Wh(Bu,[a[0].value,a[1].value,a[2].value])},rotate:function(a){$E(Bu,Bl(id(a[0])))},rotateX:function(a){TC(Bu,Bl(id(a[0])))},rotateY:function(a){LC(Bu,Bl(id(a[0])))},rotateZ:function(a){$E(Bu,Bl(id(a[0])))},rotate3d:function(a){OC(Bu,Bl(id(a[3])),[a[0].value,a[1].value,a[2].value])},skew:function(a){zA(Bu,Bl(a[0].value),Bl(a[1].value))},skewX:function(a){zA(Bu,Bl(a[0].value),0)},skewY:function(a){zA(Bu,0,Bl(a[0].value))},matrix:function(a){qE(Bu,a[0].value,a[1].value,0,0,a[2].value,a[3].value,0,0,0,0,1,0,a[4].value,a[5].value,0,1)},matrix3d:function(a){qE.apply(Oe,[Bu].concat((0,zs.Z)(a.map(function(y){return y.value}))))}},c4=Yl(1,1,1),d4=js(),SP={translate:function(a,y){Xa.sceneGraphService.setLocalScale(a,c4,!1),Xa.sceneGraphService.setLocalEulerAngles(a,d4,void 0,void 0,!1),Xa.sceneGraphService.setLocalPosition(a,[y[0].value,y[1].value,0],!1),Xa.sceneGraphService.dirtyLocalTransform(a,a.transformable)}};function bP(E,a){if(E.length){if(E.length===1&&SP[E[0].t]){SP[E[0].t](a,E[0].d);return}for(var y=Uh(l4),x=0;x<E.length;x++){var b=E[x],z=b.t,ee=b.d,re=u4[z];re&&(re(ee),jC(y,y,Bu))}a.setLocalTransform(y)}else a.resetLocalTransform();return a.getLocalTransform()}var f4=function(){function E(){(0,Ha.Z)(this,E),this.parser=dN,this.mixer=AN}return(0,Va.Z)(E,[{key:"calculator",value:function(y,x,b,z){return b instanceof Vd?[]:b}},{key:"postProcessor",value:function(y){bP(y.parsedStyle.transform,y)}}])}(),h4=function(){function E(){(0,Ha.Z)(this,E)}return(0,Va.Z)(E,[{key:"postProcessor",value:function(y){var x=y.parsedStyle.transformOrigin;x[0].unit===Mi.kPixels&&x[1].unit===Mi.kPixels?y.setOrigin(x[0].value,x[1].value):y.getGeometryBounds()}}])}(),g4=function(){function E(){(0,Ha.Z)(this,E)}return(0,Va.Z)(E,[{key:"calculator",value:function(y,x,b,z){return b.value}},{key:"postProcessor",value:function(y){if(y.parentNode){var x=y.parentNode,b=x.renderable,z=x.sortable;b&&x.dirty(),z&&(z.dirty=!0,z.dirtyReason=pp.Z_INDEX_CHANGED)}}}])}(),v4=function(){function E(){(0,Ha.Z)(this,E)}return(0,Va.Z)(E,[{key:"update",value:function(y,x){var b=y.cx,z=b===void 0?0:b,ee=y.cy,re=ee===void 0?0:ee,ae=y.r,oe=ae===void 0?0:ae;return{cx:z,cy:re,hwidth:oe,hheight:oe}}}])}(),m4=function(){function E(){(0,Ha.Z)(this,E)}return(0,Va.Z)(E,[{key:"update",value:function(y,x){var b=y.cx,z=b===void 0?0:b,ee=y.cy,re=ee===void 0?0:ee,ae=y.rx,oe=ae===void 0?0:ae,de=y.ry,ge=de===void 0?0:de;return{cx:z,cy:re,hwidth:oe,hheight:ge}}}])}(),p4=function(){function E(){(0,Ha.Z)(this,E)}return(0,Va.Z)(E,[{key:"update",value:function(y){var x=y.x1,b=y.y1,z=y.x2,ee=y.y2,re=Math.min(x,z),ae=Math.max(x,z),oe=Math.min(b,ee),de=Math.max(b,ee),ge=ae-re,ye=de-oe,De=ge/2,ke=ye/2;return{cx:re+De,cy:oe+ke,hwidth:De,hheight:ke}}}])}(),y4=function(){function E(){(0,Ha.Z)(this,E)}return(0,Va.Z)(E,[{key:"update",value:function(y){var x=y.d,b=x.rect,z=b.x,ee=b.y,re=b.width,ae=b.height,oe=re/2,de=ae/2;return{cx:z+oe,cy:ee+de,hwidth:oe,hheight:de}}}])}(),E4=function(){function E(){(0,Ha.Z)(this,E)}return(0,Va.Z)(E,[{key:"update",value:function(y){if(y.points&&nd(y.points.points)){var x=y.points.points,b=Math.min.apply(Math,(0,zs.Z)(x.map(function(ye){return ye[0]}))),z=Math.max.apply(Math,(0,zs.Z)(x.map(function(ye){return ye[0]}))),ee=Math.min.apply(Math,(0,zs.Z)(x.map(function(ye){return ye[1]}))),re=Math.max.apply(Math,(0,zs.Z)(x.map(function(ye){return ye[1]}))),ae=z-b,oe=re-ee,de=ae/2,ge=oe/2;return{cx:b+de,cy:ee+ge,hwidth:de,hheight:ge}}return{cx:0,cy:0,hwidth:0,hheight:0}}}])}(),A4=function(){function E(){(0,Ha.Z)(this,E)}return(0,Va.Z)(E,[{key:"update",value:function(y,x){var b=y.x,z=b===void 0?0:b,ee=y.y,re=ee===void 0?0:ee,ae=y.src,oe=y.width,de=oe===void 0?0:oe,ge=y.height,ye=ge===void 0?0:ge,De=de,ke=ye;return ae&&!al(ae)&&(De||(De=ae.width,y.width=De),ke||(ke=ae.height,y.height=ke)),{cx:z+De/2,cy:re+ke/2,hwidth:De/2,hheight:ke/2}}}])}(),x4=function(){function E(a){(0,Ha.Z)(this,E),this.globalRuntime=a}return(0,Va.Z)(E,[{key:"isReadyToMeasure",value:function(y,x){var b=y.text;return b}},{key:"update",value:function(y,x){var b,z=y.text,ee=y.textAlign,re=ee===void 0?"start":ee,ae=y.lineWidth,oe=ae===void 0?1:ae,de=y.textBaseline,ge=de===void 0?"alphabetic":de,ye=y.dx,De=ye===void 0?0:ye,ke=y.dy,ze=ke===void 0?0:ke,We=y.x,Ve=We===void 0?0:We,Ze=y.y,Ye=Ze===void 0?0:Ze;if(!this.isReadyToMeasure(y,x))return y.metrics={font:"",width:0,height:0,lines:[],lineWidths:[],lineHeight:0,maxLineWidth:0,fontProperties:{ascent:0,descent:0,fontSize:0},lineMetrics:[]},{hwidth:0,hheight:0,cx:0,cy:0};var et=(x==null||(b=x.ownerDocument)===null||b===void 0||(b=b.defaultView)===null||b===void 0?void 0:b.getConfig())||{},st=et.offscreenCanvas,ht=this.globalRuntime.textService.measureText(z,y,st);y.metrics=ht;var mt=ht.width,dt=ht.height,Ot=mt/2,_t=dt/2,wt=Ve+Ot;re==="center"||re==="middle"?wt+=oe/2-Ot:(re==="right"||re==="end")&&(wt+=oe-Ot*2);var $t=Ye-_t;return ge==="middle"?$t+=_t:ge==="top"||ge==="hanging"?$t+=_t*2:ge==="alphabetic"||(ge==="bottom"||ge==="ideographic")&&($t+=0),De&&(wt+=De),ze&&($t+=ze),{cx:wt,cy:$t,hwidth:Ot,hheight:_t}}}])}(),S4=function(){function E(){(0,Ha.Z)(this,E)}return(0,Va.Z)(E,[{key:"update",value:function(y,x){return{cx:0,cy:0,hwidth:0,hheight:0}}}])}(),b4=function(){function E(){(0,Ha.Z)(this,E)}return(0,Va.Z)(E,[{key:"update",value:function(y,x){var b=y.x,z=b===void 0?0:b,ee=y.y,re=ee===void 0?0:ee,ae=y.width,oe=ae===void 0?0:ae,de=y.height,ge=de===void 0?0:de;return{cx:z+oe/2,cy:re+ge/2,hwidth:oe/2,hheight:ge/2}}}])}();function _$(E){return!!E.type}var Op=function(){function E(a){(0,Ha.Z)(this,E),this.eventPhase=E.prototype.NONE,this.bubbles=!0,this.cancelBubble=!0,this.cancelable=!1,this.defaultPrevented=!1,this.propagationStopped=!1,this.propagationImmediatelyStopped=!1,this.layer=new hc,this.page=new hc,this.canvas=new hc,this.viewport=new hc,this.composed=!1,this.NONE=0,this.CAPTURING_PHASE=1,this.AT_TARGET=2,this.BUBBLING_PHASE=3,this.manager=a}return(0,Va.Z)(E,[{key:"name",get:function(){return this.type}},{key:"layerX",get:function(){return this.layer.x}},{key:"layerY",get:function(){return this.layer.y}},{key:"pageX",get:function(){return this.page.x}},{key:"pageY",get:function(){return this.page.y}},{key:"x",get:function(){return this.canvas.x}},{key:"y",get:function(){return this.canvas.y}},{key:"canvasX",get:function(){return this.canvas.x}},{key:"canvasY",get:function(){return this.canvas.y}},{key:"viewportX",get:function(){return this.viewport.x}},{key:"viewportY",get:function(){return this.viewport.y}},{key:"composedPath",value:function(){return this.manager&&(!this.path||this.path[0]!==this.target)&&(this.path=this.target?this.manager.propagationPath(this.target):[]),this.path}},{key:"propagationPath",get:function(){return this.composedPath()}},{key:"preventDefault",value:function(){this.nativeEvent instanceof Event&&this.nativeEvent.cancelable&&this.nativeEvent.preventDefault(),this.defaultPrevented=!0}},{key:"stopImmediatePropagation",value:function(){this.propagationImmediatelyStopped=!0}},{key:"stopPropagation",value:function(){this.propagationStopped=!0}},{key:"initEvent",value:function(){}},{key:"initUIEvent",value:function(){}},{key:"clone",value:function(){throw new Error(Ll)}}])}(),CP=function(E){function a(){var y;(0,Ha.Z)(this,a);for(var x=arguments.length,b=new Array(x),z=0;z<x;z++)b[z]=arguments[z];return y=bs(this,a,[].concat(b)),y.client=new hc,y.movement=new hc,y.offset=new hc,y.global=new hc,y.screen=new hc,y}return(0,Cs.Z)(a,E),(0,Va.Z)(a,[{key:"clientX",get:function(){return this.client.x}},{key:"clientY",get:function(){return this.client.y}},{key:"movementX",get:function(){return this.movement.x}},{key:"movementY",get:function(){return this.movement.y}},{key:"offsetX",get:function(){return this.offset.x}},{key:"offsetY",get:function(){return this.offset.y}},{key:"globalX",get:function(){return this.global.x}},{key:"globalY",get:function(){return this.global.y}},{key:"screenX",get:function(){return this.screen.x}},{key:"screenY",get:function(){return this.screen.y}},{key:"getModifierState",value:function(x){return"getModifierState"in this.nativeEvent&&this.nativeEvent.getModifierState(x)}},{key:"initMouseEvent",value:function(){throw new Error(Ll)}}])}(Op),Tp=function(E){function a(){var y;(0,Ha.Z)(this,a);for(var x=arguments.length,b=new Array(x),z=0;z<x;z++)b[z]=arguments[z];return y=bs(this,a,[].concat(b)),y.width=0,y.height=0,y.isPrimary=!1,y}return(0,Cs.Z)(a,E),(0,Va.Z)(a,[{key:"getCoalescedEvents",value:function(){return this.type==="pointermove"||this.type==="mousemove"||this.type==="touchmove"?[this]:[]}},{key:"getPredictedEvents",value:function(){throw new Error("getPredictedEvents is not supported!")}},{key:"clone",value:function(){return this.manager.clonePointerEvent(this)}}])}(CP),jA=function(E){function a(){return(0,Ha.Z)(this,a),bs(this,a,arguments)}return(0,Cs.Z)(a,E),(0,Va.Z)(a,[{key:"clone",value:function(){return this.manager.cloneWheelEvent(this)}}])}(CP),Wu=function(E){function a(y,x){var b;return(0,Ha.Z)(this,a),b=bs(this,a,[null]),b.type=y,b.detail=x==null?void 0:x.detail,x&&!("detail"in x)&&(b.detail=x),Object.assign(b,x),b}return(0,Cs.Z)(a,E),(0,Va.Z)(a)}(Op),PP=function(){function E(){(0,Ha.Z)(this,E),this.emitter=new AC}return(0,Va.Z)(E,[{key:"on",value:function(y,x,b){return this.addEventListener(y,x,b),this}},{key:"addEventListener",value:function(y,x,b){var z=!1,ee=!1;if(_v(b))z=b;else if(b){var re=b.capture;z=re===void 0?!1:re;var ae=b.once;ee=ae===void 0?!1:ae}z&&(y+="capture"),x=Xi(x)?x:x.handleEvent;var oe=Xi(x)?void 0:x;return ee?this.emitter.once(y,x,oe):this.emitter.on(y,x,oe),this}},{key:"off",value:function(y,x,b){return y?this.removeEventListener(y,x,b):this.removeAllEventListeners(),this}},{key:"removeAllEventListeners",value:function(){var y;(y=this.emitter)===null||y===void 0||y.removeAllListeners()}},{key:"removeEventListener",value:function(y,x,b){var z;if(!this.emitter)return this;var ee=_v(b)?b:b==null?void 0:b.capture;ee&&(y+="capture"),x=Xi(x)?x:(z=x)===null||z===void 0?void 0:z.handleEvent;var re=Xi(x)?void 0:x;return this.emitter.off(y,x,re),this}},{key:"emit",value:function(y,x){this.dispatchEvent(new Wu(y,x))}},{key:"dispatchEventToSelf",value:function(y){y.target||(y.target=this),y.currentTarget=this,this.emitter.emit(y.type,y)}},{key:"dispatchEvent",value:function(y){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,b=arguments.length>2?arguments[2]:void 0;if(b)return this.dispatchEventToSelf(y),!0;var z;if(this.document)z=this;else if(this.defaultView)z=this.defaultView;else{var ee;z=(ee=this.ownerDocument)===null||ee===void 0?void 0:ee.defaultView}if(z){if(y.manager=z.getEventService(),!y.manager)return!1;y.defaultPrevented=!1,y.path?y.path.length=0:y.page=[],x||(y.target=this),y.manager.dispatchEvent(y,y.type,x)}else this.dispatchEventToSelf(y);return!y.defaultPrevented}}])}(),iu=function(E){function a(){var y;(0,Ha.Z)(this,a);for(var x=arguments.length,b=new Array(x),z=0;z<x;z++)b[z]=arguments[z];return y=bs(this,a,[].concat(b)),y.shadow=!1,y.ownerDocument=null,y.isConnected=!1,y.baseURI="",y.childNodes=[],y.nodeType=0,y.nodeName="",y.nodeValue=null,y.mutations=void 0,y.parentNode=null,y.destroyed=!1,y}return(0,Cs.Z)(a,E),(0,Va.Z)(a,[{key:"textContent",get:function(){var x="";this.nodeName===va.TEXT&&(x+=this.style.text);var b=Zh(this.childNodes),z;try{for(b.s();!(z=b.n()).done;){var ee=z.value;ee.nodeName===va.TEXT?x+=ee.nodeValue:x+=ee.textContent}}catch(re){b.e(re)}finally{b.f()}return x},set:function(x){var b=this;this.childNodes.slice().forEach(function(z){b.removeChild(z)}),this.nodeName===va.TEXT&&(this.style.text="".concat(x))}},{key:"getRootNode",value:function(){var x=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return this.parentNode?this.parentNode.getRootNode(x):x.composed&&this.host?this.host.getRootNode(x):this}},{key:"hasChildNodes",value:function(){return this.childNodes.length>0}},{key:"isDefaultNamespace",value:function(x){throw new Error(Ll)}},{key:"lookupNamespaceURI",value:function(x){throw new Error(Ll)}},{key:"lookupPrefix",value:function(x){throw new Error(Ll)}},{key:"normalize",value:function(){throw new Error(Ll)}},{key:"isEqualNode",value:function(x){return this===x}},{key:"isSameNode",value:function(x){return this.isEqualNode(x)}},{key:"parent",get:function(){return this.parentNode}},{key:"parentElement",get:function(){return null}},{key:"nextSibling",get:function(){return null}},{key:"previousSibling",get:function(){return null}},{key:"firstChild",get:function(){return this.childNodes.length>0?this.childNodes[0]:null}},{key:"lastChild",get:function(){return this.childNodes.length>0?this.childNodes[this.childNodes.length-1]:null}},{key:"compareDocumentPosition",value:function(x){if(x===this)return 0;for(var b=x,z=this,ee=[b],re=[z];(ae=b.parentNode)!==null&&ae!==void 0?ae:z.parentNode;){var ae;b=b.parentNode?(ee.push(b.parentNode),b.parentNode):b,z=z.parentNode?(re.push(z.parentNode),z.parentNode):z}if(b!==z)return a.DOCUMENT_POSITION_DISCONNECTED|a.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC|a.DOCUMENT_POSITION_PRECEDING;var oe=ee.length>re.length?ee:re,de=oe===ee?re:ee;if(oe[oe.length-de.length]===de[0])return oe===ee?a.DOCUMENT_POSITION_CONTAINED_BY|a.DOCUMENT_POSITION_FOLLOWING:a.DOCUMENT_POSITION_CONTAINS|a.DOCUMENT_POSITION_PRECEDING;for(var ge=oe.length-de.length,ye=de.length-1;ye>=0;ye--){var De=de[ye],ke=oe[ge+ye];if(ke!==De){var ze=De.parentNode.childNodes;return ze.indexOf(De)<ze.indexOf(ke)?de===ee?a.DOCUMENT_POSITION_PRECEDING:a.DOCUMENT_POSITION_FOLLOWING:oe===ee?a.DOCUMENT_POSITION_PRECEDING:a.DOCUMENT_POSITION_FOLLOWING}}return a.DOCUMENT_POSITION_FOLLOWING}},{key:"contain",value:function(x){return this.contains(x)}},{key:"contains",value:function(x){for(var b=x;b&&this!==b;)b=b.parentNode;return!!b}},{key:"getAncestor",value:function(x){for(var b=this;x>0&&b;)b=b.parentNode,x--;return b}},{key:"forEach",value:function(x){for(var b=[this];b.length>0;){var z=b.pop(),ee=x(z);if(ee===!1)break;for(var re=z.childNodes.length-1;re>=0;re--)b.push(z.childNodes[re])}}}],[{key:"isNode",value:function(x){return!!x.childNodes}}])}(PP);iu.DOCUMENT_POSITION_DISCONNECTED=1,iu.DOCUMENT_POSITION_PRECEDING=2,iu.DOCUMENT_POSITION_FOLLOWING=4,iu.DOCUMENT_POSITION_CONTAINS=8,iu.DOCUMENT_POSITION_CONTAINED_BY=16,iu.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC=32;var C4=2048,P4=function(){function E(a,y){var x=this;(0,Ha.Z)(this,E),this.nativeHTMLMap=new WeakMap,this.cursor="default",this.mappingTable={},this.mappingState={trackingData:{}},this.eventPool=new Map,this.tmpMatrix=jl(),this.tmpVec3=js(),this.onPointerDown=function(b){var z=x.createPointerEvent(b);if(x.dispatchEvent(z,"pointerdown"),z.pointerType==="touch")x.dispatchEvent(z,"touchstart");else if(z.pointerType==="mouse"||z.pointerType==="pen"){var ee=z.button===2;x.dispatchEvent(z,ee?"rightdown":"mousedown")}var re=x.trackingData(b.pointerId);re.pressTargetsByButton[b.button]=z.composedPath(),x.freeEvent(z)},this.onPointerUp=function(b){var z=FA.now(),ee=x.createPointerEvent(b,void 0,void 0,x.context.config.alwaysTriggerPointerEventOnCanvas?x.rootTarget:void 0);if(x.dispatchEvent(ee,"pointerup"),ee.pointerType==="touch")x.dispatchEvent(ee,"touchend");else if(ee.pointerType==="mouse"||ee.pointerType==="pen"){var re=ee.button===2;x.dispatchEvent(ee,re?"rightup":"mouseup")}var ae=x.trackingData(b.pointerId),oe=x.findMountedTarget(ae.pressTargetsByButton[b.button]),de=oe;if(oe&&!ee.composedPath().includes(oe)){for(var ge=oe;ge&&!ee.composedPath().includes(ge);){if(ee.currentTarget=ge,x.notifyTarget(ee,"pointerupoutside"),ee.pointerType==="touch")x.notifyTarget(ee,"touchendoutside");else if(ee.pointerType==="mouse"||ee.pointerType==="pen"){var ye=ee.button===2;x.notifyTarget(ee,ye?"rightupoutside":"mouseupoutside")}iu.isNode(ge)&&(ge=ge.parentNode)}delete ae.pressTargetsByButton[b.button],de=ge}if(de){var De,ke=x.clonePointerEvent(ee,"click");ke.target=de,ke.path=[],ae.clicksByButton[b.button]||(ae.clicksByButton[b.button]={clickCount:0,target:ke.target,timeStamp:z});var ze=x.context.renderingContext.root.ownerDocument.defaultView,We=ae.clicksByButton[b.button];We.target===ke.target&&z-We.timeStamp<ze.getConfig().dblClickSpeed?++We.clickCount:We.clickCount=1,We.target=ke.target,We.timeStamp=z,ke.detail=We.clickCount,(De=ee.detail)!==null&&De!==void 0&&De.preventClick||(!x.context.config.useNativeClickEvent&&(ke.pointerType==="mouse"||ke.pointerType==="touch")&&x.dispatchEvent(ke,"click"),x.dispatchEvent(ke,"pointertap")),x.freeEvent(ke)}x.freeEvent(ee)},this.onPointerMove=function(b){var z=x.createPointerEvent(b,void 0,void 0,x.context.config.alwaysTriggerPointerEventOnCanvas?x.rootTarget:void 0),ee=z.pointerType==="mouse"||z.pointerType==="pen",re=x.trackingData(b.pointerId),ae=x.findMountedTarget(re.overTargets);if(re.overTargets&&ae!==z.target){var oe=b.type==="mousemove"?"mouseout":"pointerout",de=x.createPointerEvent(b,oe,ae||void 0);if(x.dispatchEvent(de,"pointerout"),ee&&x.dispatchEvent(de,"mouseout"),!z.composedPath().includes(ae)){var ge=x.createPointerEvent(b,"pointerleave",ae||void 0);for(ge.eventPhase=ge.AT_TARGET;ge.target&&!z.composedPath().includes(ge.target);)ge.currentTarget=ge.target,x.notifyTarget(ge),ee&&x.notifyTarget(ge,"mouseleave"),iu.isNode(ge.target)&&(ge.target=ge.target.parentNode);x.freeEvent(ge)}x.freeEvent(de)}if(ae!==z.target){var ye=b.type==="mousemove"?"mouseover":"pointerover",De=x.clonePointerEvent(z,ye);x.dispatchEvent(De,"pointerover"),ee&&x.dispatchEvent(De,"mouseover");for(var ke=ae&&iu.isNode(ae)&&ae.parentNode;ke&&ke!==(iu.isNode(x.rootTarget)&&x.rootTarget.parentNode)&&ke!==z.target;)ke=ke.parentNode;var ze=!ke||ke===(iu.isNode(x.rootTarget)&&x.rootTarget.parentNode);if(ze){var We=x.clonePointerEvent(z,"pointerenter");for(We.eventPhase=We.AT_TARGET;We.target&&We.target!==ae&&We.target!==(iu.isNode(x.rootTarget)&&x.rootTarget.parentNode);)We.currentTarget=We.target,x.notifyTarget(We),ee&&x.notifyTarget(We,"mouseenter"),iu.isNode(We.target)&&(We.target=We.target.parentNode);x.freeEvent(We)}x.freeEvent(De)}x.dispatchEvent(z,"pointermove"),z.pointerType==="touch"&&x.dispatchEvent(z,"touchmove"),ee&&(x.dispatchEvent(z,"mousemove"),x.cursor=x.getCursor(z.target)),re.overTargets=z.composedPath(),x.freeEvent(z)},this.onPointerOut=function(b){var z=x.trackingData(b.pointerId);if(z.overTargets){var ee=b.pointerType==="mouse"||b.pointerType==="pen",re=x.findMountedTarget(z.overTargets),ae=x.createPointerEvent(b,"pointerout",re||void 0);x.dispatchEvent(ae),ee&&x.dispatchEvent(ae,"mouseout");var oe=x.createPointerEvent(b,"pointerleave",re||void 0);for(oe.eventPhase=oe.AT_TARGET;oe.target&&oe.target!==(iu.isNode(x.rootTarget)&&x.rootTarget.parentNode);)oe.currentTarget=oe.target,x.notifyTarget(oe),ee&&x.notifyTarget(oe,"mouseleave"),iu.isNode(oe.target)&&(oe.target=oe.target.parentNode);z.overTargets=null,x.freeEvent(ae),x.freeEvent(oe)}x.cursor=null},this.onPointerOver=function(b){var z=x.trackingData(b.pointerId),ee=x.createPointerEvent(b),re=ee.pointerType==="mouse"||ee.pointerType==="pen";x.dispatchEvent(ee,"pointerover"),re&&x.dispatchEvent(ee,"mouseover"),ee.pointerType==="mouse"&&(x.cursor=x.getCursor(ee.target));var ae=x.clonePointerEvent(ee,"pointerenter");for(ae.eventPhase=ae.AT_TARGET;ae.target&&ae.target!==(iu.isNode(x.rootTarget)&&x.rootTarget.parentNode);)ae.currentTarget=ae.target,x.notifyTarget(ae),re&&x.notifyTarget(ae,"mouseenter"),iu.isNode(ae.target)&&(ae.target=ae.target.parentNode);z.overTargets=ee.composedPath(),x.freeEvent(ee),x.freeEvent(ae)},this.onPointerUpOutside=function(b){var z=x.trackingData(b.pointerId),ee=x.findMountedTarget(z.pressTargetsByButton[b.button]),re=x.createPointerEvent(b);if(ee){for(var ae=ee;ae;)re.currentTarget=ae,x.notifyTarget(re,"pointerupoutside"),re.pointerType==="touch"||(re.pointerType==="mouse"||re.pointerType==="pen")&&x.notifyTarget(re,re.button===2?"rightupoutside":"mouseupoutside"),iu.isNode(ae)&&(ae=ae.parentNode);delete z.pressTargetsByButton[b.button]}x.freeEvent(re)},this.onWheel=function(b){var z=x.createWheelEvent(b);x.dispatchEvent(z),x.freeEvent(z)},this.onClick=function(b){if(x.context.config.useNativeClickEvent){var z=x.createPointerEvent(b);x.dispatchEvent(z),x.freeEvent(z)}},this.onPointerCancel=function(b){var z=x.createPointerEvent(b,void 0,void 0,x.context.config.alwaysTriggerPointerEventOnCanvas?x.rootTarget:void 0);x.dispatchEvent(z),x.freeEvent(z)},this.globalRuntime=a,this.context=y}return(0,Va.Z)(E,[{key:"init",value:function(){this.rootTarget=this.context.renderingContext.root.parentNode,this.addEventMapping("pointerdown",this.onPointerDown),this.addEventMapping("pointerup",this.onPointerUp),this.addEventMapping("pointermove",this.onPointerMove),this.addEventMapping("pointerout",this.onPointerOut),this.addEventMapping("pointerleave",this.onPointerOut),this.addEventMapping("pointercancel",this.onPointerCancel),this.addEventMapping("pointerover",this.onPointerOver),this.addEventMapping("pointerupoutside",this.onPointerUpOutside),this.addEventMapping("wheel",this.onWheel),this.addEventMapping("click",this.onClick)}},{key:"destroy",value:function(){this.mappingTable={},this.mappingState={},this.eventPool.clear()}},{key:"getScale",value:function(){var y=this.context.contextService.getBoundingClientRect(),x=1,b=1,z=this.context.contextService.getDomElement();if(z&&y){var ee=z.offsetWidth,re=z.offsetHeight;ee&&re&&(x=y.width/ee,b=y.height/re)}return{scaleX:x,scaleY:b,bbox:y}}},{key:"client2Viewport",value:function(y){var x=this.getScale(),b=x.scaleX,z=x.scaleY,ee=x.bbox;return new hc((y.x-((ee==null?void 0:ee.left)||0))/b,(y.y-((ee==null?void 0:ee.top)||0))/z)}},{key:"viewport2Client",value:function(y){var x=this.getScale(),b=x.scaleX,z=x.scaleY,ee=x.bbox;return new hc((y.x+((ee==null?void 0:ee.left)||0))*b,(y.y+((ee==null?void 0:ee.top)||0))*z)}},{key:"viewport2Canvas",value:function(y){var x=y.x,b=y.y,z=this.rootTarget.defaultView,ee=z.getCamera(),re=this.context.config,ae=re.width,oe=re.height,de=ee.getPerspectiveInverse(),ge=ee.getWorldTransform(),ye=Mc(this.tmpMatrix,ge,de),De=Pc(this.tmpVec3,x/ae*2-1,(1-b/oe)*2-1,0);return wc(De,De,ye),new hc(De[0],De[1])}},{key:"canvas2Viewport",value:function(y){var x=this.rootTarget.defaultView,b=x.getCamera(),z=b.getPerspective(),ee=b.getViewTransform(),re=Mc(this.tmpMatrix,z,ee),ae=Pc(this.tmpVec3,y.x,y.y,0);wc(this.tmpVec3,this.tmpVec3,re);var oe=this.context.config,de=oe.width,ge=oe.height;return new hc((ae[0]+1)/2*de,(1-(ae[1]+1)/2)*ge)}},{key:"setPickHandler",value:function(y){this.pickHandler=y}},{key:"addEventMapping",value:function(y,x){this.mappingTable[y]||(this.mappingTable[y]=[]),this.mappingTable[y].push({fn:x,priority:0}),this.mappingTable[y].sort(function(b,z){return b.priority-z.priority})}},{key:"mapEvent",value:function(y){if(this.rootTarget){var x=this.mappingTable[y.type];if(x)for(var b=0,z=x.length;b<z;b++)x[b].fn(y);else console.warn("[EventService]: Event mapping not defined for ".concat(y.type))}}},{key:"dispatchEvent",value:function(y,x,b){if(!b)y.propagationStopped=!1,y.propagationImmediatelyStopped=!1,this.propagate(y,x);else{y.eventPhase=y.AT_TARGET;var z=this.rootTarget.defaultView||null;y.currentTarget=z,this.notifyListeners(y,x)}}},{key:"propagate",value:function(y,x){if(y.target){var b=y.composedPath();y.eventPhase=y.CAPTURING_PHASE;for(var z=b.length-1;z>=1;z--)if(y.currentTarget=b[z],this.notifyTarget(y,x),y.propagationStopped||y.propagationImmediatelyStopped)return;if(y.eventPhase=y.AT_TARGET,y.currentTarget=y.target,this.notifyTarget(y,x),!(y.propagationStopped||y.propagationImmediatelyStopped)){var ee=b.indexOf(y.currentTarget);y.eventPhase=y.BUBBLING_PHASE;for(var re=ee+1;re<b.length;re++)if(y.currentTarget=b[re],this.notifyTarget(y,x),y.propagationStopped||y.propagationImmediatelyStopped)return}}}},{key:"propagationPath",value:function(y){var x=[y],b=this.rootTarget.defaultView||null;if(b&&b===y)return x.unshift(b.document),x;for(var z=0;z<C4&&y!==this.rootTarget;z++)iu.isNode(y)&&y.parentNode&&(x.push(y.parentNode),y=y.parentNode);return b&&x.push(b),x}},{key:"hitTest",value:function(y){var x=y.viewportX,b=y.viewportY,z=this.context.config,ee=z.width,re=z.height,ae=z.disableHitTesting;return x<0||b<0||x>ee||b>re?null:!ae&&this.pickHandler(y)||this.rootTarget||null}},{key:"isNativeEventFromCanvas",value:function(y,x){var b,z=x==null?void 0:x.target;if((b=z)!==null&&b!==void 0&&b.shadowRoot&&(z=x.composedPath()[0]),z){if(z===y)return!0;if(y&&y.contains)return y.contains(z)}return x!=null&&x.composedPath?x.composedPath().indexOf(y)>-1:!1}},{key:"getExistedHTML",value:function(y){if(y.nativeEvent.composedPath)for(var x=0,b=y.nativeEvent.composedPath();x<b.length;x++){var z=b[x],ee=this.nativeHTMLMap.get(z);if(ee)return ee}return null}},{key:"pickTarget",value:function(y){return this.hitTest({clientX:y.clientX,clientY:y.clientY,viewportX:y.viewportX,viewportY:y.viewportY,x:y.canvasX,y:y.canvasY})}},{key:"createPointerEvent",value:function(y,x,b,z){var ee=this.allocateEvent(Tp);this.copyPointerData(y,ee),this.copyMouseData(y,ee),this.copyData(y,ee),ee.nativeEvent=y.nativeEvent,ee.originalEvent=y;var re=this.getExistedHTML(ee),ae=this.context.contextService.getDomElement();return ee.target=b!=null?b:re||this.isNativeEventFromCanvas(ae,ee.nativeEvent)&&this.pickTarget(ee)||z,typeof x=="string"&&(ee.type=x),ee}},{key:"createWheelEvent",value:function(y){var x=this.allocateEvent(jA);this.copyWheelData(y,x),this.copyMouseData(y,x),this.copyData(y,x),x.nativeEvent=y.nativeEvent,x.originalEvent=y;var b=this.getExistedHTML(x),z=this.context.contextService.getDomElement();return x.target=b||this.isNativeEventFromCanvas(z,x.nativeEvent)&&this.pickTarget(x),x}},{key:"trackingData",value:function(y){return this.mappingState.trackingData[y]||(this.mappingState.trackingData[y]={pressTargetsByButton:{},clicksByButton:{},overTarget:null}),this.mappingState.trackingData[y]}},{key:"cloneWheelEvent",value:function(y){var x=this.allocateEvent(jA);return x.nativeEvent=y.nativeEvent,x.originalEvent=y.originalEvent,this.copyWheelData(y,x),this.copyMouseData(y,x),this.copyData(y,x),x.target=y.target,x.path=y.composedPath().slice(),x.type=y.type,x}},{key:"clonePointerEvent",value:function(y,x){var b=this.allocateEvent(Tp);return b.nativeEvent=y.nativeEvent,b.originalEvent=y.originalEvent,this.copyPointerData(y,b),this.copyMouseData(y,b),this.copyData(y,b),b.target=y.target,b.path=y.composedPath().slice(),b.type=x!=null?x:b.type,b}},{key:"copyPointerData",value:function(y,x){x.pointerId=y.pointerId,x.width=y.width,x.height=y.height,x.isPrimary=y.isPrimary,x.pointerType=y.pointerType,x.pressure=y.pressure,x.tangentialPressure=y.tangentialPressure,x.tiltX=y.tiltX,x.tiltY=y.tiltY,x.twist=y.twist}},{key:"copyMouseData",value:function(y,x){x.altKey=y.altKey,x.button=y.button,x.buttons=y.buttons,x.ctrlKey=y.ctrlKey,x.metaKey=y.metaKey,x.shiftKey=y.shiftKey,x.client.copyFrom(y.client),x.movement.copyFrom(y.movement),x.canvas.copyFrom(y.canvas),x.screen.copyFrom(y.screen),x.global.copyFrom(y.global),x.offset.copyFrom(y.offset)}},{key:"copyWheelData",value:function(y,x){x.deltaMode=y.deltaMode,x.deltaX=y.deltaX,x.deltaY=y.deltaY,x.deltaZ=y.deltaZ}},{key:"copyData",value:function(y,x){x.isTrusted=y.isTrusted,x.timeStamp=FA.now(),x.type=y.type,x.detail=y.detail,x.view=y.view,x.page.copyFrom(y.page),x.viewport.copyFrom(y.viewport)}},{key:"allocateEvent",value:function(y){this.eventPool.has(y)||this.eventPool.set(y,[]);var x=this.eventPool.get(y).pop()||new y(this);return x.eventPhase=x.NONE,x.currentTarget=null,x.path=[],x.target=null,x}},{key:"freeEvent",value:function(y){if(y.manager!==this)throw new Error("It is illegal to free an event not managed by this EventBoundary!");var x=y.constructor;this.eventPool.has(x)||this.eventPool.set(x,[]),this.eventPool.get(x).push(y)}},{key:"notifyTarget",value:function(y,x){x=x!=null?x:y.type;var b=y.eventPhase===y.CAPTURING_PHASE||y.eventPhase===y.AT_TARGET?"".concat(x,"capture"):x;this.notifyListeners(y,b),y.eventPhase===y.AT_TARGET&&this.notifyListeners(y,x)}},{key:"notifyListeners",value:function(y,x){var b=y.currentTarget.emitter,z=b._events[x];if(z)if("fn"in z)z.once&&b.removeListener(x,z.fn,void 0,!0),z.fn.call(y.currentTarget||z.context,y);else for(var ee=0;ee<z.length&&!y.propagationImmediatelyStopped;ee++)z[ee].once&&b.removeListener(x,z[ee].fn,void 0,!0),z[ee].fn.call(y.currentTarget||z[ee].context,y)}},{key:"findMountedTarget",value:function(y){if(!y)return null;for(var x=y[y.length-1],b=y.length-2;b>=0;b--){var z=y[b];if(z===this.rootTarget||iu.isNode(z)&&z.parentNode===x)x=y[b];else break}return x}},{key:"getCursor",value:function(y){for(var x=y;x;){var b=UN(x)&&x.getAttribute("cursor");if(b)return b;x=iu.isNode(x)&&x.parentNode}}}])}(),UA=function(){function E(){(0,Ha.Z)(this,E)}return(0,Va.Z)(E,[{key:"getOrCreateCanvas",value:function(y,x){if(this.canvas)return this.canvas;if(y||Xa.offscreenCanvas)this.canvas=y||Xa.offscreenCanvas,this.context=this.canvas.getContext("2d",(0,ps.Z)({willReadFrequently:!0},x));else try{this.canvas=new window.OffscreenCanvas(0,0),this.context=this.canvas.getContext("2d",(0,ps.Z)({willReadFrequently:!0},x)),(!this.context||!this.context.measureText)&&(this.canvas=document.createElement("canvas"),this.context=this.canvas.getContext("2d"))}catch(b){this.canvas=document.createElement("canvas"),this.context=this.canvas.getContext("2d",(0,ps.Z)({willReadFrequently:!0},x))}return this.canvas.width=10,this.canvas.height=10,this.canvas}},{key:"getOrCreateContext",value:function(y,x){return this.context?this.context:(this.getOrCreateCanvas(y,x),this.context)}}],[{key:"createCanvas",value:function(){try{return new window.OffscreenCanvas(0,0)}catch(y){}try{return document.createElement("canvas")}catch(y){}return null}}])}(),V0=function(E){return E[E.CAMERA_CHANGED=0]="CAMERA_CHANGED",E[E.DISPLAY_OBJECT_CHANGED=1]="DISPLAY_OBJECT_CHANGED",E[E.NONE=2]="NONE",E}({}),w4=function(){function E(a,y){(0,Ha.Z)(this,E),this.inited=!1,this.stats={total:0,rendered:0},this.zIndexCounter=0,this.hooks={init:new jc,initAsync:new r4,dirtycheck:new _A,cull:new _A,beginFrame:new jc,beforeRender:new jc,render:new jc,afterRender:new jc,endFrame:new jc,destroy:new jc,pick:new a4,pickSync:new _A,pointerDown:new jc,pointerUp:new jc,pointerMove:new jc,pointerOut:new jc,pointerOver:new jc,pointerWheel:new jc,pointerCancel:new jc,click:new jc},this.globalRuntime=a,this.context=y}return(0,Va.Z)(E,[{key:"init",value:function(y){var x=this,b=(0,ps.Z)((0,ps.Z)({},this.globalRuntime),this.context);this.context.renderingPlugins.forEach(function(z){z.apply(b,x.globalRuntime)}),this.hooks.init.call(),this.hooks.initAsync.getCallbacksNum()===0?(this.inited=!0,y()):this.hooks.initAsync.promise().then(function(){x.inited=!0,y()}).catch(function(z){})}},{key:"getStats",value:function(){return this.stats}},{key:"disableDirtyRectangleRendering",value:function(){var y=this.context.config.renderer,x=y.getConfig(),b=x.enableDirtyRectangleRendering;return!b||this.context.renderingContext.renderReasons.has(V0.CAMERA_CHANGED)}},{key:"render",value:function(y,x,b){var z=this,ee=y.getConfig(),re=this.context.renderingContext;if(this.stats.total=0,this.stats.rendered=0,this.zIndexCounter=0,this.globalRuntime.sceneGraphService.syncHierarchy(re.root),this.globalRuntime.sceneGraphService.notifyMutationObservers(y),re.renderReasons.size&&this.inited){re.dirtyRectangleRenderingDisabled=this.disableDirtyRectangleRendering();var ae=re.renderReasons.size===1&&re.renderReasons.has(V0.CAMERA_CHANGED),oe=!ee.disableRenderHooks||!ae;oe&&this.renderDisplayObject(re.root,ee,re),this.hooks.beginFrame.call(x),oe&&re.renderListCurrentFrame.forEach(function(de){z.hooks.beforeRender.call(de),z.hooks.render.call(de),z.hooks.afterRender.call(de)}),this.hooks.endFrame.call(x),re.renderListCurrentFrame=[],re.renderReasons.clear(),b()}}},{key:"renderDisplayObject",value:function(y,x,b){var z=this,ee=x.renderer.getConfig(),re=ee.enableDirtyCheck,ae=ee.enableCulling;function oe(ze){var We=ze.renderable,Ve=ze.sortable,Ze=re?We.dirty||b.dirtyRectangleRenderingDisabled?ze:null:ze,Ye=null;Ze&&(Ye=ae?z.hooks.cull.call(Ze,z.context.camera):Ze,Ye&&(z.stats.rendered+=1,b.renderListCurrentFrame.push(Ye))),ze.dirty(!1),Ve.renderOrder=z.zIndexCounter,z.zIndexCounter+=1,z.stats.total+=1,Ve.dirty&&(z.sort(ze,Ve),Ve.dirty=!1,Ve.dirtyChildren=[],Ve.dirtyReason=void 0)}for(var de=[y];de.length>0;){var ge,ye=de.pop();oe(ye);for(var De=((ge=ye.sortable)===null||ge===void 0||(ge=ge.sorted)===null||ge===void 0?void 0:ge.length)>0?ye.sortable.sorted:ye.childNodes,ke=De.length-1;ke>=0;ke--)de.push(De[ke])}}},{key:"sort",value:function(y,x){var b,z;(x==null||(b=x.sorted)===null||b===void 0?void 0:b.length)>0&&x.dirtyReason!==pp.Z_INDEX_CHANGED?x.dirtyChildren.forEach(function(ee){var re=x.sorted.indexOf(ee);re>-1&&x.sorted.splice(re,1);var ae=y.childNodes.indexOf(ee);if(ae>-1)if(x.sorted.length===0)x.sorted.push(ee);else{var oe=WN(x.sorted,ee);x.sorted.splice(oe,0,ee)}}):x.sorted=y.childNodes.slice().sort(fP),((z=x.sorted)===null||z===void 0?void 0:z.length)>0&&y.childNodes.filter(function(ee){return ee.parsedStyle.zIndex}).length===0&&(x.sorted=[])}},{key:"destroy",value:function(){this.inited=!1,this.hooks.destroy.call()}},{key:"dirty",value:function(){this.context.renderingContext.renderReasons.add(V0.DISPLAY_OBJECT_CHANGED)}}])}(),M4=/\[\s*(.*)=(.*)\s*\]/,D4=function(){function E(){(0,Ha.Z)(this,E)}return(0,Va.Z)(E,[{key:"selectOne",value:function(y,x){var b=this;if(y.startsWith("."))return x.find(function(ae){return((ae==null?void 0:ae.classList)||[]).indexOf(b.getIdOrClassname(y))>-1});if(y.startsWith("#"))return x.find(function(ae){return ae.id===b.getIdOrClassname(y)});if(y.startsWith("[")){var z=this.getAttribute(y),ee=z.name,re=z.value;return ee?x.find(function(ae){return x!==ae&&(ee==="name"?ae.name===re:b.attributeToString(ae,ee)===re)}):null}return x.find(function(ae){return x!==ae&&ae.nodeName===y})}},{key:"selectAll",value:function(y,x){var b=this;if(y.startsWith("."))return x.findAll(function(ae){return x!==ae&&((ae==null?void 0:ae.classList)||[]).indexOf(b.getIdOrClassname(y))>-1});if(y.startsWith("#"))return x.findAll(function(ae){return x!==ae&&ae.id===b.getIdOrClassname(y)});if(y.startsWith("[")){var z=this.getAttribute(y),ee=z.name,re=z.value;return ee?x.findAll(function(ae){return x!==ae&&(ee==="name"?ae.name===re:b.attributeToString(ae,ee)===re)}):[]}return x.findAll(function(ae){return x!==ae&&ae.nodeName===y})}},{key:"is",value:function(y,x){if(y.startsWith("."))return x.className===this.getIdOrClassname(y);if(y.startsWith("#"))return x.id===this.getIdOrClassname(y);if(y.startsWith("[")){var b=this.getAttribute(y),z=b.name,ee=b.value;return z==="name"?x.name===ee:this.attributeToString(x,z)===ee}return x.nodeName===y}},{key:"getIdOrClassname",value:function(y){return y.substring(1)}},{key:"getAttribute",value:function(y){var x=y.match(M4),b="",z="";return x&&x.length>2&&(b=x[1].replace(/"/g,""),z=x[2].replace(/"/g,"")),{name:b,value:z}}},{key:"attributeToString",value:function(y,x){if(!y.getAttribute)return"";var b=y.getAttribute(x);return Io(b)?"":b.toString?b.toString():""}}])}(),Bs=function(E){return E.ATTR_MODIFIED="DOMAttrModified",E.INSERTED="DOMNodeInserted",E.MOUNTED="DOMNodeInsertedIntoDocument",E.REMOVED="removed",E.UNMOUNTED="DOMNodeRemovedFromDocument",E.REPARENT="reparent",E.DESTROY="destroy",E.BOUNDS_CHANGED="bounds-changed",E.CULLED="culled",E}({}),Wf=function(E){function a(y,x,b,z,ee,re,ae,oe){var de;return(0,Ha.Z)(this,a),de=bs(this,a,[null]),de.relatedNode=x,de.prevValue=b,de.newValue=z,de.attrName=ee,de.attrChange=re,de.prevParsedValue=ae,de.newParsedValue=oe,de.type=y,de}return(0,Cs.Z)(a,E),(0,Va.Z)(a)}(Op);Wf.ADDITION=2,Wf.MODIFICATION=1,Wf.REMOVAL=3;var I4=new Wf(Bs.REPARENT,null,"","","",0,"",""),O4=aA(),Lp=js(),T4=Yl(1,1,1),L4=jl(),B4=aA(),Wg=js(),N4=jl(),Gg=Uu(),R4=js(),F4=Uu(),k4=js(),Xv=js(),Hg=js(),Bp=jl(),wP=Uu(),MP=Uu(),Np=Uu(),_4=function(){function E(a){(0,Ha.Z)(this,E),this.displayObjectDependencyMap=new WeakMap,this.runtime=a}return(0,Va.Z)(E,[{key:"matches",value:function(y,x){return this.runtime.sceneGraphSelector.is(y,x)}},{key:"querySelector",value:function(y,x){return this.runtime.sceneGraphSelector.selectOne(y,x)}},{key:"querySelectorAll",value:function(y,x){return this.runtime.sceneGraphSelector.selectAll(y,x)}},{key:"attach",value:function(y,x,b){var z,ee=!1;y.parentNode&&(ee=y.parentNode!==x,this.detach(y));var re=y.nodeName===va.FRAGMENT,ae=Ip(x);y.parentNode=x;var oe=re?y.childNodes:[y];ji(b)?oe.forEach(function(ze){x.childNodes.splice(b,0,ze),ze.parentNode=x}):oe.forEach(function(ze){x.childNodes.push(ze),ze.parentNode=x});var de=x,ge=de.sortable;if((ge!=null&&(z=ge.sorted)!==null&&z!==void 0&&z.length||ge.dirty||y.parsedStyle.zIndex)&&(ge.dirtyChildren.indexOf(y)===-1&&ge.dirtyChildren.push(y),ge.dirty=!0,ge.dirtyReason=pp.ADDED),!ae){if(re)this.dirtyFragment(y);else{var ye=y.transformable;ye&&this.dirtyWorldTransform(y,ye)}if(ee){var De,ke=((De=x.ownerDocument)===null||De===void 0||(De=De.defaultView)===null||De===void 0||(De=De.getConfig())===null||De===void 0||(De=De.future)===null||De===void 0?void 0:De.experimentalCancelEventPropagation)===!0;y.dispatchEvent(I4,ke,ke)}}}},{key:"detach",value:function(y){var x,b;if(y.parentNode){var z=y.transformable,ee=y.parentNode,re=ee.sortable;(re!=null&&(x=re.sorted)!==null&&x!==void 0&&x.length||(b=y.style)!==null&&b!==void 0&&b.zIndex)&&(re.dirtyChildren.indexOf(y)===-1&&re.dirtyChildren.push(y),re.dirty=!0,re.dirtyReason=pp.REMOVED);var ae=y.parentNode.childNodes.indexOf(y);ae>-1&&y.parentNode.childNodes.splice(ae,1),z&&this.dirtyWorldTransform(y,z),y.parentNode=null}}},{key:"getLocalPosition",value:function(y){return y.transformable.localPosition}},{key:"getLocalRotation",value:function(y){return y.transformable.localRotation}},{key:"getLocalScale",value:function(y){return y.transformable.localScale}},{key:"getLocalSkew",value:function(y){return y.transformable.localSkew}},{key:"getLocalTransform",value:function(y){var x=y.transformable;return M2(x),x.localTransform}},{key:"setLocalPosition",value:function(y,x){var b,z=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,ee=y.transformable;Xv[0]=x[0],Xv[1]=x[1],Xv[2]=(b=x[2])!==null&&b!==void 0?b:0,!Bv(ee.localPosition,Xv)&&(Rf(ee.localPosition,Xv),z&&this.dirtyLocalTransform(y,ee))}},{key:"translateLocal",value:function(y,x){var b=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,z=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;typeof x=="number"&&(x=Yl(x,b,z));var ee=y.transformable;Bv(x,Lp)||(_T(x,x,ee.localRotation),jh(ee.localPosition,ee.localPosition,x),this.dirtyLocalTransform(y,ee))}},{key:"setLocalRotation",value:function(y,x,b,z,ee){var re=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0;typeof x=="number"&&(x=WC(Gg,x,b,z,ee));var ae=y.transformable;op(ae.localRotation,x),re&&this.dirtyLocalTransform(y,ae)}},{key:"rotateLocal",value:function(y,x){var b=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,z=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;typeof x=="number"&&(x=Yl(x,b,z));var ee=y.transformable;ip(MP,x[0],x[1],x[2]),GC(ee.localRotation,ee.localRotation,MP),this.dirtyLocalTransform(y,ee)}},{key:"setLocalScale",value:function(y,x){var b,z=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,ee=y.transformable;Pc(Wg,x[0],x[1],(b=x[2])!==null&&b!==void 0?b:ee.localScale[2]),!Bv(Wg,ee.localScale)&&(Rf(ee.localScale,Wg),z&&this.dirtyLocalTransform(y,ee))}},{key:"scaleLocal",value:function(y,x){var b,z=y.transformable;BT(z.localScale,z.localScale,Pc(Wg,x[0],x[1],(b=x[2])!==null&&b!==void 0?b:1)),this.dirtyLocalTransform(y,z)}},{key:"setLocalSkew",value:function(y,x,b){var z=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0;typeof x=="number"&&(x=CL(B4,x,b));var ee=y.transformable;bL(ee.localSkew,x),z&&this.dirtyLocalTransform(y,ee)}},{key:"setLocalEulerAngles",value:function(y,x){var b=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,z=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,ee=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0;typeof x=="number"&&(x=Yl(x,b,z));var re=y.transformable;ip(re.localRotation,x[0],x[1],x[2]),ee&&this.dirtyLocalTransform(y,re)}},{key:"setLocalTransform",value:function(y,x){var b=rp(R4,x),z=ap(F4,x),ee=R0(k4,x);this.setLocalScale(y,ee,!1),this.setLocalPosition(y,b,!1),this.setLocalRotation(y,z,void 0,void 0,void 0,!1),this.dirtyLocalTransform(y,y.transformable)}},{key:"resetLocalTransform",value:function(y){this.setLocalScale(y,T4,!1),this.setLocalPosition(y,Lp,!1),this.setLocalEulerAngles(y,Lp,void 0,void 0,!1),this.setLocalSkew(y,O4,void 0,!1),this.dirtyLocalTransform(y,y.transformable)}},{key:"getPosition",value:function(y){var x=y.transformable;return rp(x.position,this.getWorldTransform(y,x))}},{key:"getRotation",value:function(y){var x=y.transformable;return ap(x.rotation,this.getWorldTransform(y,x))}},{key:"getScale",value:function(y){var x=y.transformable;return R0(x.scaling,this.getWorldTransform(y,x))}},{key:"getOrigin",value:function(y){return y.getGeometryBounds(),y.transformable.origin}},{key:"getWorldTransform",value:function(y){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:y.transformable;return!x.localDirtyFlag&&!x.dirtyFlag||(y.parentNode&&y.parentNode.transformable&&this.getWorldTransform(y.parentNode),this.internalUpdateTransform(y)),x.worldTransform}},{key:"setPosition",value:function(y,x){var b,z=y.transformable;if(Hg[0]=x[0],Hg[1]=x[1],Hg[2]=(b=x[2])!==null&&b!==void 0?b:0,!Bv(this.getPosition(y),Hg)){if(Rf(z.position,Hg),y.parentNode===null||!y.parentNode.transformable)Rf(z.localPosition,Hg);else{var ee=y.parentNode.transformable;B0(Bp,ee.worldTransform),kf(Bp,Bp),wc(z.localPosition,Hg,Bp)}this.dirtyLocalTransform(y,z)}}},{key:"translate",value:function(y,x){var b=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,z=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;typeof x=="number"&&(x=Pc(Wg,x,b,z)),!Bv(x,Lp)&&(jh(Wg,this.getPosition(y),x),this.setPosition(y,Wg))}},{key:"setRotation",value:function(y,x,b,z,ee){var re=y.transformable;if(typeof x=="number"&&(x=AL(x,b,z,ee)),y.parentNode===null||!y.parentNode.transformable)this.setLocalRotation(y,x);else{var ae=this.getRotation(y.parentNode);op(Gg,ae),rA(Gg,Gg),Hh(re.localRotation,Gg,x),sp(re.localRotation,re.localRotation),this.dirtyLocalTransform(y,re)}}},{key:"rotate",value:function(y,x){var b=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,z=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;typeof x=="number"&&(x=Yl(x,b,z));var ee=y.transformable;if(y.parentNode===null||!y.parentNode.transformable)this.rotateLocal(y,x);else{var re=Gg;ip(re,x[0],x[1],x[2]);var ae=this.getRotation(y),oe=this.getRotation(y.parentNode);op(Np,oe),rA(Np,Np),Hh(re,Np,re),Hh(ee.localRotation,re,ae),sp(ee.localRotation,ee.localRotation),this.dirtyLocalTransform(y,ee)}}},{key:"setOrigin",value:function(y,x){var b=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,z=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;typeof x=="number"&&(x=[x,b,z]);var ee=y.transformable;if(!(x[0]===ee.origin[0]&&x[1]===ee.origin[1]&&x[2]===ee.origin[2])){var re=ee.origin;re[0]=x[0],re[1]=x[1],re[2]=x[2]||0,this.dirtyLocalTransform(y,ee)}}},{key:"setEulerAngles",value:function(y,x){var b=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,z=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;typeof x=="number"&&(x=Yl(x,b,z));var ee=y.transformable;if(y.parentNode===null||!y.parentNode.transformable)this.setLocalEulerAngles(y,x);else{ip(ee.localRotation,x[0],x[1],x[2]);var re=this.getRotation(y.parentNode);op(wP,rA(Gg,re)),GC(ee.localRotation,ee.localRotation,wP),this.dirtyLocalTransform(y,ee)}}},{key:"getGeometryBounds",value:function(y){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,b=y,z=b.geometry;z.dirty&&Xa.styleValueRegistry.updateGeometry(y);var ee=x?z.renderBounds:z.contentBounds||null;return ee||new Gl}},{key:"getTransformedGeometryBounds",value:function(y){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,b=arguments.length>2?arguments[2]:void 0,z=this.getGeometryBounds(y,x);if(!Gl.isEmpty(z)){var ee=b||new Gl;return ee.setFromTransformedAABB(z,this.getWorldTransform(y)),ee}return null}},{key:"getBounds",value:function(y){var x=this,b=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,z=y,ee=z.renderable;if(!ee.boundsDirty&&!b&&ee.bounds)return ee.bounds;if(!ee.renderBoundsDirty&&b&&ee.renderBounds)return ee.renderBounds;var re=b?ee.renderBounds:ee.bounds,ae=this.getTransformedGeometryBounds(y,b,re),oe=y.childNodes;if(oe.forEach(function(ye){var De=x.getBounds(ye,b);De&&(ae?ae.add(De):(ae=re||new Gl,ae.update(De.center,De.halfExtents)))}),ae||(ae=new Gl),b){var de=hP(y);if(de){var ge=de.parsedStyle.clipPath.getBounds(b);ae?ge&&(ae=ge.intersection(ae)):ae.update(ge.center,ge.halfExtents)}}return b?(ee.renderBounds=ae,ee.renderBoundsDirty=!1):(ee.bounds=ae,ee.boundsDirty=!1),ae}},{key:"getLocalBounds",value:function(y){if(y.parentNode){var x=L4;y.parentNode.transformable&&(x=kf(N4,this.getWorldTransform(y.parentNode)));var b=this.getBounds(y);if(!Gl.isEmpty(b)){var z=new Gl;return z.setFromTransformedAABB(b,x),z}}return this.getBounds(y)}},{key:"getBoundingClientRect",value:function(y){var x,b,z=this.getGeometryBounds(y);Gl.isEmpty(z)||(b=new Gl,b.setFromTransformedAABB(z,this.getWorldTransform(y)));var ee=(x=y.ownerDocument)===null||x===void 0||(x=x.defaultView)===null||x===void 0?void 0:x.getContextService().getBoundingClientRect();if(b){var re=b.getMin(),ae=(0,Ps.Z)(re,2),oe=ae[0],de=ae[1],ge=b.getMax(),ye=(0,Ps.Z)(ge,2),De=ye[0],ke=ye[1];return new z0(oe+((ee==null?void 0:ee.left)||0),de+((ee==null?void 0:ee.top)||0),De-oe,ke-de)}return new z0((ee==null?void 0:ee.left)||0,(ee==null?void 0:ee.top)||0,0,0)}},{key:"internalUpdateTransform",value:function(y){var x,b=(x=y.parentNode)===null||x===void 0?void 0:x.transformable;M2(y.transformable),t6(y.transformable,b)}},{key:"internalUpdateElement",value:function(y,x){var b,z,ee,re,ae=((b=y.ownerDocument)===null||b===void 0||(b=b.defaultView)===null||b===void 0||(b=b.getConfig())===null||b===void 0||(b=b.future)===null||b===void 0?void 0:b.experimentalAttributeUpdateOptimization)===!0,oe=x[x.length-1],de=(oe==null?void 0:oe.transformDirty)||((z=y.transformable)===null||z===void 0?void 0:z.localDirtyFlag);if(y.transformable){var ge;(ge=y.transformable).dirtyFlag||(ge.dirtyFlag=de)}if(this.internalUpdateTransform(y),de){var ye;(ye=y.dirty)===null||ye===void 0||ye.call(y,!0,!0)}var De=((ee=y.renderable)===null||ee===void 0?void 0:ee.boundsDirty)||((re=y.renderable)===null||re===void 0?void 0:re.renderBoundsDirty);if((de||De)&&(oe==null?void 0:oe.shapeUpdated)===!1&&ae)for(var ke=x.length-1;ke>=0;){var ze,We,Ve=x[ke];if(Ve.shapeUpdated)break;(ze=(We=Ve.node).dirty)===null||ze===void 0||ze.call(We,!0,!0),Ve.shapeUpdated=!0,ke-=1}return de}},{key:"syncHierarchy",value:function(y){for(var x,b,z=[y],ee=y.parentNode?[{node:y.parentNode,transformDirty:((x=y.parentNode.transformable)===null||x===void 0?void 0:x.localDirtyFlag)||((b=y.parentNode.transformable)===null||b===void 0?void 0:b.dirtyFlag),shapeUpdated:!1}]:[];z.length>0;){for(var re=z.pop(),ae=ee[ee.length-1];ee.length>0&&re.parentNode!==ae.node;)ae=ee.pop();var oe=this.internalUpdateElement(re,ee);if(re.childNodes.length>0){for(var de=re.childNodes.length-1;de>=0;de--)z.push(re.childNodes[de]);ee.push({node:re,transformDirty:oe,shapeUpdated:!1})}}}},{key:"dirtyLocalTransform",value:function(y,x){Ip(y)||x.localDirtyFlag||(x.localDirtyFlag=!0,x.dirtyFlag||this.dirtyWorldTransform(y,x))}},{key:"dirtyWorldTransform",value:function(y,x){this.dirtyWorldInternal(y,x),this.dirtyToRoot(y,!0)}},{key:"dirtyWorldInternal",value:function(y,x){var b,z=this,ee=((b=y.ownerDocument)===null||b===void 0||(b=b.defaultView)===null||b===void 0||(b=b.getConfig())===null||b===void 0||(b=b.future)===null||b===void 0?void 0:b.experimentalAttributeUpdateOptimization)===!0;x.dirtyFlag||(x.dirtyFlag=!0,y.dirty(!0,!0),ee||y.childNodes.forEach(function(re){var ae=re.transformable;z.dirtyWorldInternal(re,ae)}))}},{key:"dirtyToRoot",value:function(y){for(var x,b=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,z=y,ee=((x=y.ownerDocument)===null||x===void 0||(x=x.defaultView)===null||x===void 0||(x=x.getConfig())===null||x===void 0||(x=x.future)===null||x===void 0?void 0:x.experimentalAttributeUpdateOptimization)===!0;z;){var re,ae;if((re=(ae=z).dirty)===null||re===void 0||re.call(ae,!0,!0),ee)break;z=z.parentNode}b&&y.forEach(function(ge){var ye;(ye=ge.dirty)===null||ye===void 0||ye.call(ge,!0,!0)}),this.informDependentDisplayObjects(y);var oe=y.mutations||[],de=oe.find(function(ge){return ge.type==="attributes"&&ge._boundsChangeData});de?de._boundsChangeData={affectChildren:de._boundsChangeData.affectChildren||b}:(de={type:"attributes",target:y,_boundsChangeData:{affectChildren:b}},oe.push(de)),y.mutations=oe}},{key:"dirtyFragment",value:function(y){var x,b,z=y.transformable;z&&(z.dirtyFlag=!0,z.localDirtyFlag=!0),(x=(b=y).dirty)===null||x===void 0||x.call(b,!0,!0);for(var ee=y.childNodes.length,re=0;re<ee;re++)this.dirtyFragment(y.childNodes[re])}},{key:"notifyMutationObservers",value:function(y){var x=[];if(y.getRoot().forEach(function(z){(z.mutations||[]).forEach(function(ee){ee.type==="attributes"&&ee._boundsChangeData&&x.push(ee)}),z.mutations=void 0}),x.length>0){var b=new Wu(Bs.BOUNDS_CHANGED,{detail:x});y.dispatchEvent(b,!0,!0)}}},{key:"updateDisplayObjectDependency",value:function(y,x,b,z){if(x&&x!==b){var ee=this.displayObjectDependencyMap.get(x);if(ee&&ee[y]){var re=ee[y].indexOf(z);ee[y].splice(re,1)}}if(b){var ae=this.displayObjectDependencyMap.get(b);ae||(this.displayObjectDependencyMap.set(b,{}),ae=this.displayObjectDependencyMap.get(b)),ae[y]||(ae[y]=[]),ae[y].push(z)}}},{key:"informDependentDisplayObjects",value:function(y){var x,b=this,z=this.displayObjectDependencyMap.get(y);if(z){var ee=(x=y.ownerDocument)===null||x===void 0||(x=x.defaultView)===null||x===void 0||(x=x.getConfig())===null||x===void 0||(x=x.future)===null||x===void 0?void 0:x.experimentalCancelEventPropagation;Object.keys(z).forEach(function(re){z[re].forEach(function(ae){b.dirtyToRoot(ae,!0),ae.dispatchEvent(new Wf(Bs.ATTR_MODIFIED,ae,b,b,re,Wf.MODIFICATION,b,b),ee,ee),ae.isCustomElement&&ae.isConnected&&ae.attributeChangedCallback&&ae.attributeChangedCallback(re,b,b)})})}}}])}(),DP=function(){function E(a){if((0,Ha.Z)(this,E),a<=0)throw new Error("LRU capacity must be a positive number.");this.capacity=a,this.cache=new Map}return(0,Va.Z)(E,[{key:"get",value:function(y){if(this.cache.has(y)){var x=this.cache.get(y);return this.cache.delete(y),this.cache.set(y,x),x}}},{key:"put",value:function(y,x){if(this.cache.has(y)&&this.cache.delete(y),this.cache.set(y,x),this.cache.size>this.capacity){var b=this.cache.keys().next().value;this.cache.delete(b)}}},{key:"len",value:function(){return this.cache.size}},{key:"clear",value:function(){this.cache.clear()}}])}(),Vg={MetricsString:"|\xC9q\xC5",BaselineSymbol:"M",BaselineMultiplier:1.4,HeightMultiplier:2,Newlines:[10,13],BreakingSpaces:[9,32,8192,8193,8194,8195,8196,8197,8198,8200,8201,8202,8287,12288]},IP=/[a-zA-Z0-9\u00C0-\u00D6\u00D8-\u00f6\u00f8-\u00ff!"#$%&'()*+,-./:;]/,z4=/[!%),.:;?\]}¢°·'""†‡›℃∶、。〃〆〕〗〞﹚﹜!"%'),.:;?!]}~]/,j4=/[$(£¥·'"〈《「『【〔〖〝﹙﹛$(.[{£¥]/,U4=/[!),.:;?\]}¢·–—'"•"、。〆〞〕〉》」︰︱︲︳﹐﹑﹒﹔﹕﹖﹘﹚﹜!),.:;?︶︸︺︼︾﹀﹂﹗]|}、]/,W4=/[([{£¥'"‵〈《「『〔〝︴﹙﹛({︵︷︹︻︽︿﹁﹃﹏]/,G4=/[)\]}〕〉》」』】〙〗〟'"⦆»ヽヾーァィゥェォッャュョヮヵヶぁぃぅぇぉっゃゅょゎゕゖㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ々〻‐゠–〜?!‼⁇⁈⁉・、:;,。.]/,H4=/[([{〔〈《「『【〘〖〝'"⦅«—...‥〳〴〵]/,V4=/[!%),.:;?\]}¢°'"†‡℃〆〈《「『〕!%),.:;?]}]/,K4=/[$([{£¥'"々〇〉》」〔$([{⦆¥₩#]/,Z4=new RegExp("".concat(z4.source,"|").concat(U4.source,"|").concat(G4.source,"|").concat(V4.source)),Q4=new RegExp("".concat(j4.source,"|").concat(W4.source,"|").concat(H4.source,"|").concat(K4.source)),Y4=function(){function E(a){var y=this;(0,Ha.Z)(this,E),this.fontMetricsCache={},this.shouldBreakByKinsokuShorui=function(x,b){return y.isBreakingSpace(b)?!1:!!(x&&(Q4.exec(b)||Z4.exec(x)))},this.trimByKinsokuShorui=function(x){var b=(0,zs.Z)(x),z=b[b.length-2];if(!z)return x;var ee=z[z.length-1];return b[b.length-2]=z.slice(0,-1),b[b.length-1]=ee+b[b.length-1],b},this.runtime=a,this.charWidthCache=new DP(100)}return(0,Va.Z)(E,[{key:"measureFont",value:function(y,x){if(this.fontMetricsCache[y])return this.fontMetricsCache[y];var b={ascent:0,descent:0,fontSize:0},z=this.runtime.offscreenCanvasCreator.getOrCreateCanvas(x),ee=this.runtime.offscreenCanvasCreator.getOrCreateContext(x,{willReadFrequently:!0});ee.font=y;var re=Vg.MetricsString+Vg.BaselineSymbol,ae=Math.ceil(ee.measureText(re).width),oe=Math.ceil(ee.measureText(Vg.BaselineSymbol).width),de=Vg.HeightMultiplier*oe;oe=oe*Vg.BaselineMultiplier|0,z.width=ae,z.height=de,ee.fillStyle="#f00",ee.fillRect(0,0,ae,de),ee.font=y,ee.textBaseline="alphabetic",ee.fillStyle="#000",ee.fillText(re,0,oe);var ge=ee.getImageData(0,0,ae||1,de||1).data,ye=ge.length,De=ae*4,ke=0,ze=0,We=!1;for(ke=0;ke<oe;++ke){for(var Ve=0;Ve<De;Ve+=4)if(ge[ze+Ve]!==255){We=!0;break}if(!We)ze+=De;else break}for(b.ascent=oe-ke,ze=ye-De,We=!1,ke=de;ke>oe;--ke){for(var Ze=0;Ze<De;Ze+=4)if(ge[ze+Ze]!==255){We=!0;break}if(!We)ze-=De;else break}return b.descent=ke-oe,b.fontSize=b.ascent+b.descent,this.fontMetricsCache[y]=b,b}},{key:"measureText",value:function(y,x,b){var z=x.fontSize,ee=z===void 0?16:z,re=x.wordWrap,ae=re===void 0?!1:re,oe=x.lineHeight,de=x.lineWidth,ge=de===void 0?1:de,ye=x.textBaseline,De=ye===void 0?"alphabetic":ye,ke=x.textAlign,ze=ke===void 0?"start":ke,We=x.letterSpacing,Ve=We===void 0?0:We,Ze=x.textPath;x.textPathSide,x.textPathStartOffset;var Ye=x.leading,et=Ye===void 0?0:Ye,st=xP(x),ht=this.measureFont(st,b);ht.fontSize===0&&(ht.fontSize=ee,ht.ascent=ee);var mt=this.runtime.offscreenCanvasCreator.getOrCreateContext(b);mt.font=st,x.isOverflowing=!1;var dt=ae?this.wordWrap(y,x,b):y,Ot=dt.split(/(?:\r\n|\r|\n)/),_t=new Array(Ot.length),wt=0;if(Ze){Ze.getTotalLength();for(var $t=0;$t<Ot.length;$t++)mt.measureText(Ot[$t]).width+(Ot[$t].length-1)*Ve}else{for(var gn=0;gn<Ot.length;gn++){var Xt=mt.measureText(Ot[gn]).width+(Ot[gn].length-1)*Ve;_t[gn]=Xt,wt=Math.max(wt,Xt)}var Tn=wt+ge,er=oe||ht.fontSize+ge,En=Math.max(er,ht.fontSize+ge)+(Ot.length-1)*(er+et);er+=et;var yn=0;return De==="middle"?yn=-En/2:De==="bottom"||De==="alphabetic"||De==="ideographic"?yn=-En:(De==="top"||De==="hanging")&&(yn=0),{font:st,width:Tn,height:En,lines:Ot,lineWidths:_t,lineHeight:er,maxLineWidth:wt,fontProperties:ht,lineMetrics:_t.map(function(Cn,qn){var pn=0;return ze==="center"||ze==="middle"?pn-=Cn/2:(ze==="right"||ze==="end")&&(pn-=Cn),new z0(pn-ge/2,yn+qn*er,Cn+ge,er)})}}}},{key:"wordWrap",value:function(y,x,b){var z=this,ee=Array.from(y);if(ee.length===0)return"";var re=this,ae=x.wordWrapWidth,oe=ae===void 0?0:ae,de=x.letterSpacing,ge=de===void 0?0:de,ye=x.maxLines,De=ye===void 0?1/0:ye,ke=x.textOverflow,ze=this.runtime.offscreenCanvasCreator.getOrCreateContext(b),We=oe+ge,Ve="";ke==="ellipsis"?Ve="...":ke&&ke!=="clip"&&(Ve=ke);var Ze=[""],Ye=0,et=0,st=-1,ht=xP(x),mt=this.charWidthCache.get(ht);mt||(mt=new DP(500),this.charWidthCache.put(ht,mt));var dt=function(Cn){return z.getFromCache(Cn,ge,mt,ze)},Ot=dt(Ve);function _t(yn,Cn,qn,pn){for(;dt(yn)<pn&&Cn<ee.length-1&&!re.isNewline(ee[Cn+1]);)Cn+=1,yn+=ee[Cn];for(;dt(yn)>pn&&Cn>=qn;)Cn-=1,yn=yn.slice(0,-1);return{lineTxt:yn,txtLastCharIndex:Cn}}function wt(yn,Cn){if(!(Ot<=0||Ot>We)){if(!Ze[yn]){Ze[yn]=Ve;return}var qn=_t(Ze[yn],Cn,st+1,We-Ot);Ze[yn]=qn.lineTxt+Ve}}for(var $t=0;$t<ee.length;$t++){var gn=ee[$t],Xt=ee[$t-1],Tn=ee[$t+1],er=dt(gn);if(this.isNewline(gn)){if(Ye+1>=De){$t<ee.length-1&&wt(Ye,$t-1),x.isOverflowing=!0;break}st=$t-1,Ye+=1,et=0,Ze[Ye]="";continue}if(er>We){wt(Ye,$t-1),x.isOverflowing=!0;break}if(et>0&&et+er>We){var En=_t(Ze[Ye],$t-1,st+1,We);if(En.txtLastCharIndex!==$t-1){if(Ze[Ye]=En.lineTxt,En.txtLastCharIndex===ee.length-1)break;$t=En.txtLastCharIndex+1,gn=ee[$t],Xt=ee[$t-1],Tn=ee[$t+1],er=dt(gn)}if(Ye+1>=De){wt(Ye,$t-1),x.isOverflowing=!0;break}if(st=$t-1,Ye+=1,et=0,Ze[Ye]="",this.isBreakingSpace(gn))continue;this.canBreakInLastChar(gn)||(Ze=this.trimToBreakable(Ze),et=this.sumTextWidthByCache(Ze[Ye]||"",dt)),this.shouldBreakByKinsokuShorui(gn,Tn)&&(Ze=this.trimByKinsokuShorui(Ze),et+=dt(Xt||""))}et+=er,Ze[Ye]+=gn}return Ze.join(`
|
|
|
`)}},{key:"isBreakingSpace",value:function(y){return typeof y!="string"?!1:Vg.BreakingSpaces.indexOf(y.charCodeAt(0))>=0}},{key:"isNewline",value:function(y){return typeof y!="string"?!1:Vg.Newlines.indexOf(y.charCodeAt(0))>=0}},{key:"trimToBreakable",value:function(y){var x=(0,zs.Z)(y),b=x[x.length-2],z=this.findBreakableIndex(b);if(z===-1||!b)return x;var ee=b.slice(z,z+1),re=this.isBreakingSpace(ee),ae=z+1,oe=z+(re?0:1);return x[x.length-1]+=b.slice(ae,b.length),x[x.length-2]=b.slice(0,oe),x}},{key:"canBreakInLastChar",value:function(y){return!(y&&IP.test(y))}},{key:"sumTextWidthByCache",value:function(y,x){return y.split("").reduce(function(b,z){return b+x(z)},0)}},{key:"findBreakableIndex",value:function(y){for(var x=y.length-1;x>=0;x--)if(!IP.test(y[x]))return x;return-1}},{key:"getFromCache",value:function(y,x,b,z){var ee=b.get(y);if(typeof ee!="number"){var re=y.length*x,ae=z.measureText(y);ee=ae.width+re,b.put(y,ee)}return ee}},{key:"clearCache",value:function(){this.fontMetricsCache={},this.charWidthCache.clear()}}])}(),Xa={},X4=function(E){var a=new A4,y=new E4;return E={},(0,Vi.Z)((0,Vi.Z)((0,Vi.Z)((0,Vi.Z)((0,Vi.Z)((0,Vi.Z)((0,Vi.Z)((0,Vi.Z)((0,Vi.Z)((0,Vi.Z)(E,va.FRAGMENT,null),va.CIRCLE,new v4),va.ELLIPSE,new m4),va.RECT,a),va.IMAGE,a),va.GROUP,new S4),va.LINE,new p4),va.TEXT,new x4(Xa)),va.POLYLINE,y),va.POLYGON,y),(0,Vi.Z)((0,Vi.Z)((0,Vi.Z)(E,va.PATH,new y4),va.HTML,new b4),va.MESH,null)}(),J4=function(E){var a=new MN,y=new BA;return E={},(0,Vi.Z)((0,Vi.Z)((0,Vi.Z)((0,Vi.Z)((0,Vi.Z)((0,Vi.Z)((0,Vi.Z)((0,Vi.Z)((0,Vi.Z)((0,Vi.Z)(E,Ci.PERCENTAGE,null),Ci.NUMBER,new LN),Ci.ANGLE,new PN),Ci.DEFINED_PATH,new wN),Ci.PAINT,a),Ci.COLOR,a),Ci.FILTER,new DN),Ci.LENGTH,y),Ci.LENGTH_PERCENTAGE,y),Ci.LENGTH_PERCENTAGE_12,new IN),(0,Vi.Z)((0,Vi.Z)((0,Vi.Z)((0,Vi.Z)((0,Vi.Z)((0,Vi.Z)((0,Vi.Z)((0,Vi.Z)((0,Vi.Z)((0,Vi.Z)(E,Ci.LENGTH_PERCENTAGE_14,new ON),Ci.COORDINATE,new BA),Ci.OFFSET_DISTANCE,new BN),Ci.OPACITY_VALUE,new NN),Ci.PATH,new RN),Ci.LIST_OF_POINTS,new FN),Ci.SHADOW_BLUR,new kN),Ci.TEXT,new _N),Ci.TEXT_TRANSFORM,new zN),Ci.TRANSFORM,new f4),(0,Vi.Z)((0,Vi.Z)((0,Vi.Z)(E,Ci.TRANSFORM_ORIGIN,new h4),Ci.Z_INDEX,new g4),Ci.MARKER,new TN)}(),q4=function(){return typeof globalThis!="undefined"?globalThis:typeof self!="undefined"?self:typeof window!="undefined"?window:typeof Te.g!="undefined"?Te.g:{}};Xa.CameraContribution=w2,Xa.AnimationTimeline=null,Xa.EasingFunction=null,Xa.offscreenCanvasCreator=new UA,Xa.sceneGraphSelector=new D4,Xa.sceneGraphService=new _4(Xa),Xa.textService=new Y4(Xa),Xa.geometryUpdaterFactory=X4,Xa.CSSPropertySyntaxFactory=J4,Xa.styleValueRegistry=new bN(Xa),Xa.layoutRegistry=null,Xa.globalThis=q4(),Xa.enableStyleSyntax=!0,Xa.enableSizeAttenuation=!1;var OP=0;function z$(){OP=0}var WA=new Wf(Bs.INSERTED,null,"","","",0,"",""),GA=new Wf(Bs.REMOVED,null,"","","",0,"",""),TP=new Wu(Bs.DESTROY),$4=function(E){function a(){var y;(0,Ha.Z)(this,a);for(var x=arguments.length,b=new Array(x),z=0;z<x;z++)b[z]=arguments[z];return y=bs(this,a,[].concat(b)),y.entity=OP++,y.transformable={dirtyFlag:!1,localDirtyFlag:!1,localPosition:[0,0,0],localRotation:[0,0,0,1],localScale:[1,1,1],localTransform:[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],localSkew:[0,0],position:[0,0,0],rotation:[0,0,0,1],scaling:[1,1,1],worldTransform:[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],origin:[0,0,0]},y.renderable={bounds:void 0,boundsDirty:!0,renderBounds:void 0,renderBoundsDirty:!0,dirtyRenderBounds:void 0,dirty:!1},y.geometry={contentBounds:void 0,renderBounds:void 0,dirty:!0},y.cullable={strategy:qB.Standard,visibilityPlaneMask:-1,visible:!0,enable:!0},y.sortable={dirty:!1,sorted:void 0,renderOrder:0,dirtyChildren:[],dirtyReason:void 0},y.rBushNode={aabb:void 0},y.namespaceURI="g",y.scrollLeft=0,y.scrollTop=0,y.clientTop=0,y.clientLeft=0,y.style={},y.computedStyle={},y.parsedStyle={},y.attributes={},y}return(0,Cs.Z)(a,E),(0,Va.Z)(a,[{key:"dirty",value:function(){var x=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,b=arguments.length>1?arguments[1]:void 0;this.renderable.dirty=x,b!==void 0&&(this.renderable.boundsDirty=b,this.renderable.renderBoundsDirty=b,this.geometry.dirty=b)}},{key:"className",get:function(){return this.getAttribute("class")||""},set:function(x){this.setAttribute("class",x)}},{key:"classList",get:function(){return this.className.split(" ").filter(function(x){return x!==""})}},{key:"tagName",get:function(){return this.nodeName}},{key:"children",get:function(){return this.childNodes}},{key:"childElementCount",get:function(){return this.childNodes.length}},{key:"firstElementChild",get:function(){return this.firstChild}},{key:"lastElementChild",get:function(){return this.lastChild}},{key:"parentElement",get:function(){return this.parentNode}},{key:"nextSibling",get:function(){if(this.parentNode){var x=this.parentNode.childNodes.indexOf(this);return this.parentNode.childNodes[x+1]||null}return null}},{key:"previousSibling",get:function(){if(this.parentNode){var x=this.parentNode.childNodes.indexOf(this);return this.parentNode.childNodes[x-1]||null}return null}},{key:"cloneNode",value:function(x){throw new Error(Ll)}},{key:"appendChild",value:function(x,b){var z;if(x.destroyed)throw new Error(jB);return Xa.sceneGraphService.attach(x,this,b),(z=this.ownerDocument)!==null&&z!==void 0&&z.defaultView&&(!Ip(this)&&x.nodeName===va.FRAGMENT?this.ownerDocument.defaultView.mountFragment(x):this.ownerDocument.defaultView.mountChildren(x)),this.isMutationObserved&&(WA.relatedNode=this,x.dispatchEvent(WA)),x}},{key:"insertBefore",value:function(x,b){if(!b)this.appendChild(x);else{x.parentElement&&x.parentElement.removeChild(x);var z=this.childNodes.indexOf(b);z===-1?this.appendChild(x):this.appendChild(x,z)}return x}},{key:"replaceChild",value:function(x,b){var z=this.childNodes.indexOf(b);return this.removeChild(b),this.appendChild(x,z),b}},{key:"removeChild",value:function(x){var b,z,ee=((b=this.ownerDocument)===null||b===void 0||(b=b.defaultView)===null||b===void 0||(b=b.getConfig().future)===null||b===void 0?void 0:b.experimentalCancelEventPropagation)===!0;return GA.relatedNode=this,x.dispatchEvent(GA,ee,ee),(z=x.ownerDocument)!==null&&z!==void 0&&z.defaultView&&x.ownerDocument.defaultView.unmountChildren(x),Xa.sceneGraphService.detach(x),x}},{key:"removeChildren",value:function(){for(var x=this.childNodes.length-1;x>=0;x--){var b=this.childNodes[x];this.removeChild(b)}}},{key:"destroyChildren",value:function(){for(var x=this.childNodes.length-1;x>=0;x--){var b=this.childNodes[x];b.childNodes.length>0&&b.destroyChildren(),b.destroy()}}},{key:"matches",value:function(x){return Xa.sceneGraphService.matches(x,this)}},{key:"getElementById",value:function(x){return Xa.sceneGraphService.querySelector("#".concat(x),this)}},{key:"getElementsByName",value:function(x){return Xa.sceneGraphService.querySelectorAll('[name="'.concat(x,'"]'),this)}},{key:"getElementsByClassName",value:function(x){return Xa.sceneGraphService.querySelectorAll(".".concat(x),this)}},{key:"getElementsByTagName",value:function(x){return Xa.sceneGraphService.querySelectorAll(x,this)}},{key:"querySelector",value:function(x){return Xa.sceneGraphService.querySelector(x,this)}},{key:"querySelectorAll",value:function(x){return Xa.sceneGraphService.querySelectorAll(x,this)}},{key:"closest",value:function(x){var b=this;do{if(Xa.sceneGraphService.matches(x,b))return b;b=b.parentElement}while(b!==null);return null}},{key:"find",value:function(x){var b=this,z=null;return this.forEach(function(ee){return ee!==b&&x(ee)?(z=ee,!1):!0}),z}},{key:"findAll",value:function(x){var b=this,z=[];return this.forEach(function(ee){ee!==b&&x(ee)&&z.push(ee)}),z}},{key:"after",value:function(){var x=this;if(this.parentNode){for(var b=this.parentNode.childNodes.indexOf(this),z=arguments.length,ee=new Array(z),re=0;re<z;re++)ee[re]=arguments[re];ee.forEach(function(ae,oe){var de;return(de=x.parentNode)===null||de===void 0?void 0:de.appendChild(ae,b+oe+1)})}}},{key:"before",value:function(){if(this.parentNode){for(var x,b=this.parentNode.childNodes.indexOf(this),z=arguments.length,ee=new Array(z),re=0;re<z;re++)ee[re]=arguments[re];var ae=ee[0],oe=(0,fB.Z)(ee).slice(1);this.parentNode.appendChild(ae,b),(x=ae).after.apply(x,(0,zs.Z)(oe))}}},{key:"replaceWith",value:function(){this.after.apply(this,arguments),this.remove()}},{key:"append",value:function(){for(var x=this,b=arguments.length,z=new Array(b),ee=0;ee<b;ee++)z[ee]=arguments[ee];z.forEach(function(re){return x.appendChild(re)})}},{key:"prepend",value:function(){for(var x=this,b=arguments.length,z=new Array(b),ee=0;ee<b;ee++)z[ee]=arguments[ee];z.forEach(function(re,ae){return x.appendChild(re,ae)})}},{key:"replaceChildren",value:function(){for(;this.childNodes.length&&this.firstChild;)this.removeChild(this.firstChild);this.append.apply(this,arguments)}},{key:"remove",value:function(){return this.parentNode?this.parentNode.removeChild(this):this}},{key:"destroy",value:function(){var x,b=((x=this.ownerDocument)===null||x===void 0||(x=x.defaultView)===null||x===void 0||(x=x.getConfig().future)===null||x===void 0?void 0:x.experimentalCancelEventPropagation)===!0;this.destroyChildren(),this.dispatchEvent(TP,b,b),this.remove(),this.emitter.removeAllListeners(),this.destroyed=!0}},{key:"getGeometryBounds",value:function(){var x=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;return Xa.sceneGraphService.getGeometryBounds(this,x)}},{key:"getTransformedGeometryBounds",value:function(){var x=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;return Xa.sceneGraphService.getTransformedGeometryBounds(this,x)}},{key:"getBounds",value:function(){return Xa.sceneGraphService.getBounds(this)}},{key:"getRenderBounds",value:function(){return Xa.sceneGraphService.getBounds(this,!0)}},{key:"getLocalBounds",value:function(){return Xa.sceneGraphService.getLocalBounds(this)}},{key:"getBoundingClientRect",value:function(){return Xa.sceneGraphService.getBoundingClientRect(this)}},{key:"getClientRects",value:function(){return[this.getBoundingClientRect()]}},{key:"computedStyleMap",value:function(){return new Map(Object.entries(this.computedStyle))}},{key:"getAttributeNames",value:function(){return Object.keys(this.attributes)}},{key:"getAttribute",value:function(x){if(typeof x!="symbol"){var b=this.attributes[x];return b}}},{key:"hasAttribute",value:function(x){return this.getAttributeNames().includes(x)}},{key:"hasAttributes",value:function(){return!!this.getAttributeNames().length}},{key:"removeAttribute",value:function(x){this.setAttribute(x,null),delete this.attributes[x]}},{key:"setAttribute",value:function(x,b){this.attributes[x]=b}},{key:"getAttributeNS",value:function(x,b){throw new Error(Ll)}},{key:"getAttributeNode",value:function(x){throw new Error(Ll)}},{key:"getAttributeNodeNS",value:function(x,b){throw new Error(Ll)}},{key:"hasAttributeNS",value:function(x,b){throw new Error(Ll)}},{key:"removeAttributeNS",value:function(x,b){throw new Error(Ll)}},{key:"removeAttributeNode",value:function(x){throw new Error(Ll)}},{key:"setAttributeNS",value:function(x,b,z){throw new Error(Ll)}},{key:"setAttributeNode",value:function(x){throw new Error(Ll)}},{key:"setAttributeNodeNS",value:function(x){throw new Error(Ll)}},{key:"toggleAttribute",value:function(x,b){throw new Error(Ll)}}])}(iu);function cl(E){return!!(E!=null&&E.nodeName)}var e8=Xa.globalThis.Proxy?Xa.globalThis.Proxy:function(){},Gf=new Wf(Bs.ATTR_MODIFIED,null,null,null,null,Wf.MODIFICATION,null,null),Jv=js(),t8=Uu(),Hl=function(E){function a(y){var x;return(0,Ha.Z)(this,a),x=bs(this,a),x.isCustomElement=!1,x.isMutationObserved=!1,x.activeAnimations=[],x.config=y,x.id=y.id||"",x.name=y.name||"",(y.className||y.class)&&(x.className=y.className||y.class),x.nodeName=y.type||va.GROUP,y.initialParsedStyle&&Object.assign(x.parsedStyle,y.initialParsedStyle),x.initAttributes(y.style),Xa.enableStyleSyntax&&(x.style=new e8({setProperty:function(z,ee){x.setAttribute(z,ee)},getPropertyValue:function(z){return x.getAttribute(z)},removeProperty:function(z){x.removeAttribute(z)},item:function(){return""}},{get:function(z,ee){return z[ee]!==void 0?z[ee]:x.getAttribute(ee)},set:function(z,ee,re){return x.setAttribute(ee,re),!0}})),x}return(0,Cs.Z)(a,E),(0,Va.Z)(a,[{key:"destroy",value:function(){a2(a,"destroy",this,3)([]),this.getAnimations().forEach(function(x){x.cancel()})}},{key:"cloneNode",value:function(x,b){var z=(0,ps.Z)({},this.attributes);for(var ee in z){var re=z[ee];cl(re)&&ee!=="clipPath"&&ee!=="offsetPath"&&ee!=="textPath"&&(z[ee]=re.cloneNode(x)),b&&(z[ee]=b(ee,re))}var ae=new this.constructor((0,ps.Z)((0,ps.Z)({},this.config),{},{style:z}));return ae.setLocalTransform(this.getLocalTransform()),x&&this.children.forEach(function(oe){if(!oe.style.isMarker){var de=oe.cloneNode(x);ae.appendChild(de)}}),ae}},{key:"initAttributes",value:function(){var x=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},b={forceUpdateGeometry:!0};Xa.styleValueRegistry.processProperties(this,x,b),this.dirty()}},{key:"setAttribute",value:function(x,b){var z=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,ee=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0;qo(b)||(z||b!==this.attributes[x])&&(this.internalSetAttribute(x,b,{memoize:ee}),a2(a,"setAttribute",this,3)([x,b]))}},{key:"internalSetAttribute",value:function(x,b){var z=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},ee=this.attributes[x],re=this.parsedStyle[x];Xa.styleValueRegistry.processProperties(this,(0,Vi.Z)({},x,b),z),this.dirty();var ae=this.parsedStyle[x];if(this.isConnected)if(Gf.relatedNode=this,Gf.prevValue=ee,Gf.newValue=b,Gf.attrName=x,Gf.prevParsedValue=re,Gf.newParsedValue=ae,this.isMutationObserved)this.dispatchEvent(Gf);else{var oe,de=((oe=this.ownerDocument.defaultView.getConfig().future)===null||oe===void 0?void 0:oe.experimentalCancelEventPropagation)===!0;Gf.target=this,this.ownerDocument.defaultView.dispatchEvent(Gf,!0,de)}if(this.isCustomElement&&this.isConnected||!this.isCustomElement){var ge,ye;(ge=(ye=this).attributeChangedCallback)===null||ge===void 0||ge.call(ye,x,ee,b,re,ae)}}},{key:"getBBox",value:function(){var x=this.getBounds(),b=x.getMin(),z=(0,Ps.Z)(b,2),ee=z[0],re=z[1],ae=x.getMax(),oe=(0,Ps.Z)(ae,2),de=oe[0],ge=oe[1];return new z0(ee,re,de-ee,ge-re)}},{key:"setOrigin",value:function(x){var b=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,z=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return Xa.sceneGraphService.setOrigin(this,zc(x,b,z,!1)),this}},{key:"getOrigin",value:function(){return Xa.sceneGraphService.getOrigin(this)}},{key:"setPosition",value:function(x){var b=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,z=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return Xa.sceneGraphService.setPosition(this,zc(x,b,z,!1)),this}},{key:"setLocalPosition",value:function(x){var b=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,z=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return Xa.sceneGraphService.setLocalPosition(this,zc(x,b,z,!1)),this}},{key:"translate",value:function(x){var b=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,z=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return Xa.sceneGraphService.translate(this,zc(x,b,z,!1)),this}},{key:"translateLocal",value:function(x){var b=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,z=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return Xa.sceneGraphService.translateLocal(this,zc(x,b,z,!1)),this}},{key:"getPosition",value:function(){return Xa.sceneGraphService.getPosition(this)}},{key:"getLocalPosition",value:function(){return Xa.sceneGraphService.getLocalPosition(this)}},{key:"scale",value:function(x,b,z){return this.scaleLocal(x,b,z)}},{key:"scaleLocal",value:function(x,b,z){return typeof x=="number"&&(b=b||x,z=z||x,x=zc(x,b,z,!1)),Xa.sceneGraphService.scaleLocal(this,x),this}},{key:"setLocalScale",value:function(x,b,z){return typeof x=="number"&&(b=b||x,z=z||x,x=zc(x,b,z,!1)),Xa.sceneGraphService.setLocalScale(this,x),this}},{key:"getLocalScale",value:function(){return Xa.sceneGraphService.getLocalScale(this)}},{key:"getScale",value:function(){return Xa.sceneGraphService.getScale(this)}},{key:"getEulerAngles",value:function(){var x=gA(Jv,Xa.sceneGraphService.getWorldTransform(this)),b=(0,Ps.Z)(x,3),z=b[2];return rd(z)}},{key:"getLocalEulerAngles",value:function(){var x=gA(Jv,Xa.sceneGraphService.getLocalRotation(this)),b=(0,Ps.Z)(x,3),z=b[2];return rd(z)}},{key:"setEulerAngles",value:function(x){return Xa.sceneGraphService.setEulerAngles(this,0,0,x),this}},{key:"setLocalEulerAngles",value:function(x){return Xa.sceneGraphService.setLocalEulerAngles(this,0,0,x),this}},{key:"rotateLocal",value:function(x,b,z){return Io(b)&&Io(z)?Xa.sceneGraphService.rotateLocal(this,0,0,x):Xa.sceneGraphService.rotateLocal(this,x,b,z),this}},{key:"rotate",value:function(x,b,z){return Io(b)&&Io(z)?Xa.sceneGraphService.rotate(this,0,0,x):Xa.sceneGraphService.rotate(this,x,b,z),this}},{key:"setRotation",value:function(x,b,z,ee){return Xa.sceneGraphService.setRotation(this,x,b,z,ee),this}},{key:"setLocalRotation",value:function(x,b,z,ee){return Xa.sceneGraphService.setLocalRotation(this,x,b,z,ee),this}},{key:"setLocalSkew",value:function(x,b){return Xa.sceneGraphService.setLocalSkew(this,x,b),this}},{key:"getRotation",value:function(){return Xa.sceneGraphService.getRotation(this)}},{key:"getLocalRotation",value:function(){return Xa.sceneGraphService.getLocalRotation(this)}},{key:"getLocalSkew",value:function(){return Xa.sceneGraphService.getLocalSkew(this)}},{key:"getLocalTransform",value:function(){return Xa.sceneGraphService.getLocalTransform(this)}},{key:"getWorldTransform",value:function(){return Xa.sceneGraphService.getWorldTransform(this)}},{key:"setLocalTransform",value:function(x){return Xa.sceneGraphService.setLocalTransform(this,x),this}},{key:"resetLocalTransform",value:function(){Xa.sceneGraphService.resetLocalTransform(this)}},{key:"getAnimations",value:function(){return this.activeAnimations}},{key:"animate",value:function(x,b){var z,ee=(z=this.ownerDocument)===null||z===void 0?void 0:z.timeline;return ee?ee.play(this,x,b):null}},{key:"isVisible",value:function(){var x;return((x=this.parsedStyle)===null||x===void 0?void 0:x.visibility)!=="hidden"}},{key:"interactive",get:function(){return this.isInteractive()},set:function(x){this.style.pointerEvents=x?"auto":"none"}},{key:"isInteractive",value:function(){var x;return((x=this.parsedStyle)===null||x===void 0?void 0:x.pointerEvents)!=="none"}},{key:"isCulled",value:function(){return!!(this.cullable&&this.cullable.enable&&!this.cullable.visible)}},{key:"toFront",value:function(){return this.parentNode&&(this.style.zIndex=Math.max.apply(Math,(0,zs.Z)(this.parentNode.children.map(function(x){return Number(x.style.zIndex)})))+1),this}},{key:"toBack",value:function(){return this.parentNode&&(this.style.zIndex=Math.min.apply(Math,(0,zs.Z)(this.parentNode.children.map(function(x){return Number(x.style.zIndex)})))-1),this}},{key:"getConfig",value:function(){return this.config}},{key:"attr",value:function(){for(var x=this,b=arguments.length,z=new Array(b),ee=0;ee<b;ee++)z[ee]=arguments[ee];var re=z[0],ae=z[1];return re?Tu(re)?(Object.keys(re).forEach(function(oe){x.setAttribute(oe,re[oe])}),this):z.length===2?(this.setAttribute(re,ae),this):this.attributes[re]:this.attributes}},{key:"getMatrix",value:function(x){var b=x||this.getWorldTransform(),z=rp(Jv,b),ee=(0,Ps.Z)(z,2),re=ee[0],ae=ee[1],oe=R0(Jv,b),de=(0,Ps.Z)(oe,2),ge=de[0],ye=de[1],De=ap(t8,b),ke=gA(Jv,De),ze=(0,Ps.Z)(ke,3),We=ze[0],Ve=ze[2];return ZB(We||Ve,re,ae,ge,ye)}},{key:"getLocalMatrix",value:function(){return this.getMatrix(this.getLocalTransform())}},{key:"setMatrix",value:function(x){var b=S2(x),z=(0,Ps.Z)(b,5),ee=z[0],re=z[1],ae=z[2],oe=z[3],de=z[4];this.setEulerAngles(de).setPosition(ee,re).setLocalScale(ae,oe)}},{key:"setLocalMatrix",value:function(x){var b=S2(x),z=(0,Ps.Z)(b,5),ee=z[0],re=z[1],ae=z[2],oe=z[3],de=z[4];this.setLocalEulerAngles(de).setLocalPosition(ee,re).setLocalScale(ae,oe)}},{key:"show",value:function(){this.forEach(function(x){x.style.visibility="visible"})}},{key:"hide",value:function(){this.forEach(function(x){x.style.visibility="hidden"})}},{key:"getCount",value:function(){return this.childElementCount}},{key:"getParent",value:function(){return this.parentElement}},{key:"getChildren",value:function(){return this.children}},{key:"getFirst",value:function(){return this.firstElementChild}},{key:"getLast",value:function(){return this.lastElementChild}},{key:"getChildByIndex",value:function(x){return this.children[x]||null}},{key:"add",value:function(x,b){return this.appendChild(x,b)}},{key:"set",value:function(x,b){this.config[x]=b}},{key:"get",value:function(x){return this.config[x]}},{key:"moveTo",value:function(x){var b=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,z=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return this.setPosition(x,b,z),this}},{key:"move",value:function(x){var b=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,z=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return this.setPosition(x,b,z),this}},{key:"setZIndex",value:function(x){return this.style.zIndex=x,this}}])}($4);Hl.PARSED_STYLE_LIST=new Set(["class","className","clipPath","cursor","display","draggable","droppable","fill","fillOpacity","fillRule","filter","increasedLineWidthForHitTesting","lineCap","lineDash","lineDashOffset","lineJoin","lineWidth","miterLimit","hitArea","offsetDistance","offsetPath","offsetX","offsetY","opacity","pointerEvents","shadowColor","shadowType","shadowBlur","shadowOffsetX","shadowOffsetY","stroke","strokeOpacity","strokeWidth","strokeLinecap","strokeLineJoin","strokeDasharray","strokeDashoffset","transform","transformOrigin","textTransform","visibility","zIndex"]);var Hf=function(E){function a(){var y=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return(0,Ha.Z)(this,a),bs(this,a,[(0,ps.Z)({type:va.CIRCLE},y)])}return(0,Cs.Z)(a,E),(0,Va.Z)(a)}(Hl);Hf.PARSED_STYLE_LIST=new Set([].concat((0,zs.Z)(Hl.PARSED_STYLE_LIST),["cx","cy","cz","r","isBillboard","isSizeAttenuation"]));var n8=["style"],HA=function(E){function a(){var y,x=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},b=x.style,z=(0,Rg.Z)(x,n8);return(0,Ha.Z)(this,a),y=bs(this,a,[(0,ps.Z)({style:b},z)]),y.isCustomElement=!0,y}return(0,Cs.Z)(a,E),(0,Va.Z)(a)}(Hl);HA.PARSED_STYLE_LIST=new Set(["class","className","clipPath","cursor","draggable","droppable","opacity","pointerEvents","transform","transformOrigin","zIndex","visibility"]);var qv=function(E){function a(){var y=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return(0,Ha.Z)(this,a),bs(this,a,[(0,ps.Z)({type:va.ELLIPSE},y)])}return(0,Cs.Z)(a,E),(0,Va.Z)(a)}(Hl);qv.PARSED_STYLE_LIST=new Set([].concat((0,zs.Z)(Hl.PARSED_STYLE_LIST),["cx","cy","cz","rx","ry","isBillboard","isSizeAttenuation"]));var r8=function(E){function a(){return(0,Ha.Z)(this,a),bs(this,a,[{type:va.FRAGMENT}])}return(0,Cs.Z)(a,E),(0,Va.Z)(a)}(Hl);r8.PARSED_STYLE_LIST=new Set(["class","className"]);var qu=function(E){function a(){var y=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return(0,Ha.Z)(this,a),bs(this,a,[(0,ps.Z)({type:va.GROUP},y)])}return(0,Cs.Z)(a,E),(0,Va.Z)(a)}(Hl);qu.PARSED_STYLE_LIST=new Set(["class","className","clipPath","cursor","draggable","droppable","opacity","pointerEvents","transform","transformOrigin","zIndex","visibility"]);var a8=["style"],Kg=function(E){function a(){var y,x=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},b=x.style,z=(0,Rg.Z)(x,a8);return(0,Ha.Z)(this,a),y=bs(this,a,[(0,ps.Z)({type:va.HTML,style:b},z)]),y.cullable.enable=!1,y}return(0,Cs.Z)(a,E),(0,Va.Z)(a,[{key:"getDomElement",value:function(){return this.parsedStyle.$el}},{key:"getClientRects",value:function(){return[this.getBoundingClientRect()]}},{key:"getLocalBounds",value:function(){if(this.parentNode){var x=kf(jl(),this.parentNode.getWorldTransform()),b=this.getBounds();if(!Gl.isEmpty(b)){var z=new Gl;return z.setFromTransformedAABB(b,x),z}}return this.getBounds()}}])}(Hl);Kg.PARSED_STYLE_LIST=new Set([].concat((0,zs.Z)(Hl.PARSED_STYLE_LIST),["x","y","$el","innerHTML","width","height"]));var $v=function(E){function a(){var y=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return(0,Ha.Z)(this,a),bs(this,a,[(0,ps.Z)({type:va.IMAGE},y)])}return(0,Cs.Z)(a,E),(0,Va.Z)(a)}(Hl);$v.PARSED_STYLE_LIST=new Set([].concat((0,zs.Z)(Hl.PARSED_STYLE_LIST),["x","y","z","src","width","height","isBillboard","billboardRotation","isSizeAttenuation","keepAspectRatio"]));var i8=["style"],Zg=function(E){function a(){var y,x=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},b=x.style,z=(0,Rg.Z)(x,i8);(0,Ha.Z)(this,a),y=bs(this,a,[(0,ps.Z)({type:va.LINE,style:(0,ps.Z)({x1:0,y1:0,x2:0,y2:0,z1:0,z2:0},b)},z)]),y.markerStartAngle=0,y.markerEndAngle=0;var ee=y.parsedStyle,re=ee.markerStart,ae=ee.markerEnd;return re&&cl(re)&&(y.markerStartAngle=re.getLocalEulerAngles(),y.appendChild(re)),ae&&cl(ae)&&(y.markerEndAngle=ae.getLocalEulerAngles(),y.appendChild(ae)),y.transformMarker(!0),y.transformMarker(!1),y}return(0,Cs.Z)(a,E),(0,Va.Z)(a,[{key:"attributeChangedCallback",value:function(x,b,z,ee,re){x==="x1"||x==="y1"||x==="x2"||x==="y2"||x==="markerStartOffset"||x==="markerEndOffset"?(this.transformMarker(!0),this.transformMarker(!1)):x==="markerStart"?(ee&&cl(ee)&&(this.markerStartAngle=0,ee.remove()),re&&cl(re)&&(this.markerStartAngle=re.getLocalEulerAngles(),this.appendChild(re),this.transformMarker(!0))):x==="markerEnd"&&(ee&&cl(ee)&&(this.markerEndAngle=0,ee.remove()),re&&cl(re)&&(this.markerEndAngle=re.getLocalEulerAngles(),this.appendChild(re),this.transformMarker(!1)))}},{key:"transformMarker",value:function(x){var b=this.parsedStyle,z=b.markerStart,ee=b.markerEnd,re=b.markerStartOffset,ae=b.markerEndOffset,oe=b.x1,de=b.x2,ge=b.y1,ye=b.y2,De=x?z:ee;if(!(!De||!cl(De))){var ke=0,ze,We,Ve,Ze,Ye,et;x?(Ve=oe,Ze=ge,ze=de-oe,We=ye-ge,Ye=re||0,et=this.markerStartAngle):(Ve=de,Ze=ye,ze=oe-de,We=ge-ye,Ye=ae||0,et=this.markerEndAngle),ke=Math.atan2(We,ze),De.setLocalEulerAngles(ke*180/Math.PI+et),De.setLocalPosition(Ve+Math.cos(ke)*Ye,Ze+Math.sin(ke)*Ye)}}},{key:"getPoint",value:function(x){var b=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,z=this.parsedStyle,ee=z.x1,re=z.y1,ae=z.x2,oe=z.y2,de=_f(ee,re,ae,oe,x),ge=de.x,ye=de.y,De=wc(js(),Yl(ge,ye,0),b?this.getWorldTransform():this.getLocalTransform());return new hc(De[0],De[1])}},{key:"getPointAtLength",value:function(x){var b=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;return this.getPoint(x/this.getTotalLength(),b)}},{key:"getTotalLength",value:function(){var x=this.parsedStyle,b=x.x1,z=x.y1,ee=x.x2,re=x.y2;return c2(b,z,ee,re)}}])}(Hl);Zg.PARSED_STYLE_LIST=new Set([].concat((0,zs.Z)(Hl.PARSED_STYLE_LIST),["x1","y1","x2","y2","z1","z2","isBillboard","isSizeAttenuation","markerStart","markerEnd","markerStartOffset","markerEndOffset"]));var o8=["style"],Cd=function(E){function a(){var y,x=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},b=x.style,z=(0,Rg.Z)(x,o8);(0,Ha.Z)(this,a),y=bs(this,a,[(0,ps.Z)({type:va.PATH,style:b,initialParsedStyle:{miterLimit:4,d:(0,ps.Z)({},D2)}},z)]),y.markerStartAngle=0,y.markerEndAngle=0,y.markerMidList=[];var ee=y.parsedStyle,re=ee.markerStart,ae=ee.markerEnd,oe=ee.markerMid;return re&&cl(re)&&(y.markerStartAngle=re.getLocalEulerAngles(),y.appendChild(re)),oe&&cl(oe)&&y.placeMarkerMid(oe),ae&&cl(ae)&&(y.markerEndAngle=ae.getLocalEulerAngles(),y.appendChild(ae)),y.transformMarker(!0),y.transformMarker(!1),y}return(0,Cs.Z)(a,E),(0,Va.Z)(a,[{key:"attributeChangedCallback",value:function(x,b,z,ee,re){x==="d"?(this.transformMarker(!0),this.transformMarker(!1),this.placeMarkerMid(this.parsedStyle.markerMid)):x==="markerStartOffset"||x==="markerEndOffset"?(this.transformMarker(!0),this.transformMarker(!1)):x==="markerStart"?(ee&&cl(ee)&&(this.markerStartAngle=0,ee.remove()),re&&cl(re)&&(this.markerStartAngle=re.getLocalEulerAngles(),this.appendChild(re),this.transformMarker(!0))):x==="markerEnd"?(ee&&cl(ee)&&(this.markerEndAngle=0,ee.remove()),re&&cl(re)&&(this.markerEndAngle=re.getLocalEulerAngles(),this.appendChild(re),this.transformMarker(!1))):x==="markerMid"&&this.placeMarkerMid(re)}},{key:"transformMarker",value:function(x){var b=this.parsedStyle,z=b.markerStart,ee=b.markerEnd,re=b.markerStartOffset,ae=b.markerEndOffset,oe=x?z:ee;if(!(!oe||!cl(oe))){var de=0,ge,ye,De,ke,ze,We;if(x){var Ve=this.getStartTangent(),Ze=(0,Ps.Z)(Ve,2),Ye=Ze[0],et=Ze[1];De=et[0],ke=et[1],ge=Ye[0]-et[0],ye=Ye[1]-et[1],ze=re||0,We=this.markerStartAngle}else{var st=this.getEndTangent(),ht=(0,Ps.Z)(st,2),mt=ht[0],dt=ht[1];De=dt[0],ke=dt[1],ge=mt[0]-dt[0],ye=mt[1]-dt[1],ze=ae||0,We=this.markerEndAngle}de=Math.atan2(ye,ge),oe.setLocalEulerAngles(de*180/Math.PI+We),oe.setLocalPosition(De+Math.cos(de)*ze,ke+Math.sin(de)*ze)}}},{key:"placeMarkerMid",value:function(x){var b=this.parsedStyle.d.segments;if(this.markerMidList.forEach(function(de){de.remove()}),x&&cl(x))for(var z=1;z<b.length-1;z++){var ee=(0,Ps.Z)(b[z].currentPoint,2),re=ee[0],ae=ee[1],oe=z===1?x:x.cloneNode(!0);this.markerMidList.push(oe),this.appendChild(oe),oe.setLocalPosition(re,ae)}}},{key:"getTotalLength",value:function(){return MA(this)}},{key:"getPointAtLength",value:function(x){var b=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,z=this.parsedStyle.d.absolutePath,ee=cB(z,x),re=ee.x,ae=ee.y,oe=wc(js(),Yl(re,ae,0),b?this.getWorldTransform():this.getLocalTransform());return new hc(oe[0],oe[1])}},{key:"getPoint",value:function(x){var b=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;return this.getPointAtLength(x*MA(this),b)}},{key:"getStartTangent",value:function(){var x=this.parsedStyle.d.segments,b=[];if(x.length>1){var z=x[0].currentPoint,ee=x[1].currentPoint,re=x[1].startTangent;b=[],re?(b.push([z[0]-re[0],z[1]-re[1]]),b.push([z[0],z[1]])):(b.push([ee[0],ee[1]]),b.push([z[0],z[1]]))}return b}},{key:"getEndTangent",value:function(){var x=this.parsedStyle.d.segments,b=x.length,z=[];if(b>1){var ee=x[b-2].currentPoint,re=x[b-1].currentPoint,ae=x[b-1].endTangent;z=[],ae?(z.push([re[0]-ae[0],re[1]-ae[1]]),z.push([re[0],re[1]])):(z.push([ee[0],ee[1]]),z.push([re[0],re[1]]))}return z}}])}(Hl);Cd.PARSED_STYLE_LIST=new Set([].concat((0,zs.Z)(Hl.PARSED_STYLE_LIST),["d","markerStart","markerMid","markerEnd","markerStartOffset","markerEndOffset","isBillboard","isSizeAttenuation"]));var s8=["style"],Qg=function(E){function a(){var y,x=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},b=x.style,z=(0,Rg.Z)(x,s8);(0,Ha.Z)(this,a),y=bs(this,a,[(0,ps.Z)({type:va.POLYGON,style:b,initialParsedStyle:{points:{points:[],totalLength:0,segments:[]},miterLimit:4,isClosed:!0}},z)]),y.markerStartAngle=0,y.markerEndAngle=0,y.markerMidList=[];var ee=y.parsedStyle,re=ee.markerStart,ae=ee.markerEnd,oe=ee.markerMid;return re&&cl(re)&&(y.markerStartAngle=re.getLocalEulerAngles(),y.appendChild(re)),oe&&cl(oe)&&y.placeMarkerMid(oe),ae&&cl(ae)&&(y.markerEndAngle=ae.getLocalEulerAngles(),y.appendChild(ae)),y.transformMarker(!0),y.transformMarker(!1),y}return(0,Cs.Z)(a,E),(0,Va.Z)(a,[{key:"attributeChangedCallback",value:function(x,b,z,ee,re){x==="points"?(this.transformMarker(!0),this.transformMarker(!1),this.placeMarkerMid(this.parsedStyle.markerMid)):x==="markerStartOffset"||x==="markerEndOffset"?(this.transformMarker(!0),this.transformMarker(!1)):x==="markerStart"?(ee&&cl(ee)&&(this.markerStartAngle=0,ee.remove()),re&&cl(re)&&(this.markerStartAngle=re.getLocalEulerAngles(),this.appendChild(re),this.transformMarker(!0))):x==="markerEnd"?(ee&&cl(ee)&&(this.markerEndAngle=0,ee.remove()),re&&cl(re)&&(this.markerEndAngle=re.getLocalEulerAngles(),this.appendChild(re),this.transformMarker(!1))):x==="markerMid"&&this.placeMarkerMid(re)}},{key:"transformMarker",value:function(x){var b=this.parsedStyle,z=b.markerStart,ee=b.markerEnd,re=b.markerStartOffset,ae=b.markerEndOffset,oe=b.points,de=oe||{},ge=de.points,ye=x?z:ee;if(!(!ye||!cl(ye)||!ge)){var De=0,ke,ze,We,Ve,Ze,Ye;if(We=ge[0][0],Ve=ge[0][1],x)ke=ge[1][0]-ge[0][0],ze=ge[1][1]-ge[0][1],Ze=re||0,Ye=this.markerStartAngle;else{var et=ge.length;this.parsedStyle.isClosed?(ke=ge[et-1][0]-ge[0][0],ze=ge[et-1][1]-ge[0][1]):(We=ge[et-1][0],Ve=ge[et-1][1],ke=ge[et-2][0]-ge[et-1][0],ze=ge[et-2][1]-ge[et-1][1]),Ze=ae||0,Ye=this.markerEndAngle}De=Math.atan2(ze,ke),ye.setLocalEulerAngles(De*180/Math.PI+Ye),ye.setLocalPosition(We+Math.cos(De)*Ze,Ve+Math.sin(De)*Ze)}}},{key:"placeMarkerMid",value:function(x){var b=this.parsedStyle.points,z=b||{},ee=z.points;if(this.markerMidList.forEach(function(ge){ge.remove()}),this.markerMidList=[],x&&cl(x)&&ee)for(var re=1;re<(this.parsedStyle.isClosed?ee.length:ee.length-1);re++){var ae=ee[re][0],oe=ee[re][1],de=re===1?x:x.cloneNode(!0);this.markerMidList.push(de),this.appendChild(de),de.setLocalPosition(ae,oe)}}}])}(Hl);Qg.PARSED_STYLE_LIST=new Set([].concat((0,zs.Z)(Hl.PARSED_STYLE_LIST),["points","markerStart","markerMid","markerEnd","markerStartOffset","markerEndOffset","isClosed","isBillboard","isSizeAttenuation"]));var l8=["style"],Rp=function(E){function a(){var y=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},x=y.style,b=(0,Rg.Z)(y,l8);return(0,Ha.Z)(this,a),bs(this,a,[(0,ps.Z)({type:va.POLYLINE,style:x,initialParsedStyle:{points:{points:[],totalLength:0,segments:[]},miterLimit:4,isClosed:!1}},b)])}return(0,Cs.Z)(a,E),(0,Va.Z)(a,[{key:"getTotalLength",value:function(){return X6(this)}},{key:"getPointAtLength",value:function(x){var b=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;return this.getPoint(x/this.getTotalLength(),b)}},{key:"getPoint",value:function(x){var b=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,z=this.parsedStyle.points.points;if(this.parsedStyle.points.segments.length===0){var ee=[],re=0,ae,oe,de=this.getTotalLength();z.forEach(function(Ve,Ze){z[Ze+1]&&(ae=[0,0],ae[0]=re/de,oe=c2(Ve[0],Ve[1],z[Ze+1][0],z[Ze+1][1]),re+=oe,ae[1]=re/de,ee.push(ae))}),this.parsedStyle.points.segments=ee}var ge=0,ye=0;this.parsedStyle.points.segments.forEach(function(Ve,Ze){x>=Ve[0]&&x<=Ve[1]&&(ge=(x-Ve[0])/(Ve[1]-Ve[0]),ye=Ze)});var De=_f(z[ye][0],z[ye][1],z[ye+1][0],z[ye+1][1],ge),ke=De.x,ze=De.y,We=wc(js(),Yl(ke,ze,0),b?this.getWorldTransform():this.getLocalTransform());return new hc(We[0],We[1])}},{key:"getStartTangent",value:function(){var x=this.parsedStyle.points.points,b=[];return b.push([x[1][0],x[1][1]]),b.push([x[0][0],x[0][1]]),b}},{key:"getEndTangent",value:function(){var x=this.parsedStyle.points.points,b=x.length-1,z=[];return z.push([x[b-1][0],x[b-1][1]]),z.push([x[b][0],x[b][1]]),z}}])}(Qg);Rp.PARSED_STYLE_LIST=new Set([].concat((0,zs.Z)(Qg.PARSED_STYLE_LIST),["points","markerStart","markerMid","markerEnd","markerStartOffset","markerEndOffset","isBillboard"]));var gc=function(E){function a(){var y=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return(0,Ha.Z)(this,a),bs(this,a,[(0,ps.Z)({type:va.RECT},y)])}return(0,Cs.Z)(a,E),(0,Va.Z)(a)}(Hl);gc.PARSED_STYLE_LIST=new Set([].concat((0,zs.Z)(Hl.PARSED_STYLE_LIST),["x","y","z","width","height","isBillboard","isSizeAttenuation","radius"]));var u8=["style"],Yg=function(E){function a(){var y=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},x=y.style,b=(0,Rg.Z)(y,u8);return(0,Ha.Z)(this,a),bs(this,a,[(0,ps.Z)({type:va.TEXT,style:(0,ps.Z)({fill:"black"},x)},b)])}return(0,Cs.Z)(a,E),(0,Va.Z)(a,[{key:"getComputedTextLength",value:function(){var x;return this.getGeometryBounds(),((x=this.parsedStyle.metrics)===null||x===void 0?void 0:x.maxLineWidth)||0}},{key:"getLineBoundingRects",value:function(){var x;return this.getGeometryBounds(),((x=this.parsedStyle.metrics)===null||x===void 0?void 0:x.lineMetrics)||[]}},{key:"isOverflowing",value:function(){return this.getGeometryBounds(),!!this.parsedStyle.isOverflowing}}])}(Hl);Yg.PARSED_STYLE_LIST=new Set([].concat((0,zs.Z)(Hl.PARSED_STYLE_LIST),["x","y","z","isBillboard","billboardRotation","isSizeAttenuation","text","textAlign","textBaseline","fontStyle","fontSize","fontFamily","fontWeight","fontVariant","lineHeight","letterSpacing","leading","wordWrap","wordWrapWidth","maxLines","textOverflow","isOverflowing","textPath","textDecorationLine","textDecorationColor","textDecorationStyle","textDecorationThickness","textPathSide","textPathStartOffset","metrics","dx","dy"]));var c8=function(){function E(){(0,Ha.Z)(this,E),this.registry={},this.define(va.CIRCLE,Hf),this.define(va.ELLIPSE,qv),this.define(va.RECT,gc),this.define(va.IMAGE,$v),this.define(va.LINE,Zg),this.define(va.GROUP,qu),this.define(va.PATH,Cd),this.define(va.POLYGON,Qg),this.define(va.POLYLINE,Rp),this.define(va.TEXT,Yg),this.define(va.HTML,Kg)}return(0,Va.Z)(E,[{key:"define",value:function(y,x){this.registry[y]=x}},{key:"get",value:function(y){return this.registry[y]}}])}(),j$={number:function(a){return new Rl(a)},percent:function(a){return new Rl(a,"%")},px:function(a){return new Rl(a,"px")},em:function(a){return new Rl(a,"em")},rem:function(a){return new Rl(a,"rem")},deg:function(a){return new Rl(a,"deg")},grad:function(a){return new Rl(a,"grad")},rad:function(a){return new Rl(a,"rad")},turn:function(a){return new Rl(a,"turn")},s:function(a){return new Rl(a,"s")},ms:function(a){return new Rl(a,"ms")},registerProperty:function(a){var y=a.name,x=a.inherits,b=a.interpolable,z=a.initialValue,ee=a.syntax;Xa.styleValueRegistry.registerMetadata({n:y,inh:x,int:b,d:z,syntax:ee})},registerLayout:function(a,y){Xa.layoutRegistry.registerLayout(a,y)}},LP=function(E){function a(){var y;(0,Ha.Z)(this,a),y=bs(this,a),y.defaultView=null,y.ownerDocument=null,y.nodeName="document";try{y.timeline=new Xa.AnimationTimeline(y)}catch(b){}var x={};return LA.forEach(function(b){var z=b.n,ee=b.inh,re=b.d;ee&&re&&(x[z]=Xi(re)?re(va.GROUP):re)}),y.documentElement=new qu({id:"g-root",style:x}),y.documentElement.ownerDocument=y,y.documentElement.parentNode=y,y.childNodes=[y.documentElement],y}return(0,Cs.Z)(a,E),(0,Va.Z)(a,[{key:"children",get:function(){return this.childNodes}},{key:"childElementCount",get:function(){return this.childNodes.length}},{key:"firstElementChild",get:function(){return this.firstChild}},{key:"lastElementChild",get:function(){return this.lastChild}},{key:"createElement",value:function(x,b){if(x==="svg")return this.documentElement;var z=this.defaultView.customElements.get(x);z||(console.warn("Unsupported tagName: ",x),z=x==="tspan"?Yg:qu);var ee=new z(b);return ee.ownerDocument=this,ee}},{key:"createElementNS",value:function(x,b,z){return this.createElement(b,z)}},{key:"cloneNode",value:function(x){throw new Error(Ll)}},{key:"destroy",value:function(){try{this.documentElement.destroyChildren(),this.timeline.destroy()}catch(x){}}},{key:"elementsFromBBox",value:function(x,b,z,ee){var re=[],ae=function(de){if(!(!de.isInteractive()||de.isCulled())){var ge=de.parsedStyle.pointerEvents,ye=ge===void 0?"auto":ge,De=["auto","visiblepainted","visiblefill","visiblestroke","visible"].includes(ye);if(!De||de.isVisible()){var ke=de.getTransformedGeometryBounds(!0);ke&&!Gl.isEmpty(ke)&&ke.max[0]>=x&&ke.min[0]<=z&&ke.max[1]>=b&&ke.min[1]<=ee&&re.push(de)}de.childNodes&&de.childNodes.forEach(function(ze){ze instanceof Hl&&ae(ze)})}};return ae(this.documentElement),re.sort(function(oe,de){return de.sortable.renderOrder-oe.sortable.renderOrder}),re}},{key:"elementFromPointSync",value:function(x,b){var z=this.defaultView.canvas2Viewport({x,y:b}),ee=z.x,re=z.y,ae=this.defaultView.getConfig(),oe=ae.width,de=ae.height;if(ee<0||re<0||ee>oe||re>de)return null;var ge=this.defaultView.viewport2Client({x:ee,y:re}),ye=ge.x,De=ge.y,ke=this.defaultView.getRenderingService().hooks.pickSync.call({topmost:!0,position:{x,y:b,viewportX:ee,viewportY:re,clientX:ye,clientY:De},picked:[]}),ze=ke.picked;return ze&&ze[0]||this.documentElement}},{key:"elementFromPoint",value:function(){var y=(0,Kh.Z)((0,Ic.Z)().mark(function b(z,ee){var re,ae,oe,de,ge,ye,De,ke,ze,We,Ve;return(0,Ic.Z)().wrap(function(Ze){for(;;)switch(Ze.prev=Ze.next){case 0:if(re=this.defaultView.canvas2Viewport({x:z,y:ee}),ae=re.x,oe=re.y,de=this.defaultView.getConfig(),ge=de.width,ye=de.height,!(ae<0||oe<0||ae>ge||oe>ye)){Ze.next=1;break}return Ze.abrupt("return",null);case 1:return De=this.defaultView.viewport2Client({x:ae,y:oe}),ke=De.x,ze=De.y,Ze.next=2,this.defaultView.getRenderingService().hooks.pick.promise({topmost:!0,position:{x:z,y:ee,viewportX:ae,viewportY:oe,clientX:ke,clientY:ze},picked:[]});case 2:return We=Ze.sent,Ve=We.picked,Ze.abrupt("return",Ve&&Ve[0]||this.documentElement);case 3:case"end":return Ze.stop()}},b,this)}));function x(b,z){return y.apply(this,arguments)}return x}()},{key:"elementsFromPointSync",value:function(x,b){var z=this.defaultView.canvas2Viewport({x,y:b}),ee=z.x,re=z.y,ae=this.defaultView.getConfig(),oe=ae.width,de=ae.height;if(ee<0||re<0||ee>oe||re>de)return[];var ge=this.defaultView.viewport2Client({x:ee,y:re}),ye=ge.x,De=ge.y,ke=this.defaultView.getRenderingService().hooks.pickSync.call({topmost:!1,position:{x,y:b,viewportX:ee,viewportY:re,clientX:ye,clientY:De},picked:[]}),ze=ke.picked;return ze[ze.length-1]!==this.documentElement&&ze.push(this.documentElement),ze}},{key:"elementsFromPoint",value:function(){var y=(0,Kh.Z)((0,Ic.Z)().mark(function b(z,ee){var re,ae,oe,de,ge,ye,De,ke,ze,We,Ve;return(0,Ic.Z)().wrap(function(Ze){for(;;)switch(Ze.prev=Ze.next){case 0:if(re=this.defaultView.canvas2Viewport({x:z,y:ee}),ae=re.x,oe=re.y,de=this.defaultView.getConfig(),ge=de.width,ye=de.height,!(ae<0||oe<0||ae>ge||oe>ye)){Ze.next=1;break}return Ze.abrupt("return",[]);case 1:return De=this.defaultView.viewport2Client({x:ae,y:oe}),ke=De.x,ze=De.y,Ze.next=2,this.defaultView.getRenderingService().hooks.pick.promise({topmost:!1,position:{x:z,y:ee,viewportX:ae,viewportY:oe,clientX:ke,clientY:ze},picked:[]});case 2:return We=Ze.sent,Ve=We.picked,Ve[Ve.length-1]!==this.documentElement&&Ve.push(this.documentElement),Ze.abrupt("return",Ve);case 3:case"end":return Ze.stop()}},b,this)}));function x(b,z){return y.apply(this,arguments)}return x}()},{key:"appendChild",value:function(x,b){throw new Error(j0)}},{key:"insertBefore",value:function(x,b){throw new Error(j0)}},{key:"removeChild",value:function(x,b){throw new Error(j0)}},{key:"replaceChild",value:function(x,b,z){throw new Error(j0)}},{key:"append",value:function(){throw new Error(j0)}},{key:"prepend",value:function(){throw new Error(j0)}},{key:"getElementById",value:function(x){return this.documentElement.getElementById(x)}},{key:"getElementsByName",value:function(x){return this.documentElement.getElementsByName(x)}},{key:"getElementsByTagName",value:function(x){return this.documentElement.getElementsByTagName(x)}},{key:"getElementsByClassName",value:function(x){return this.documentElement.getElementsByClassName(x)}},{key:"querySelector",value:function(x){return this.documentElement.querySelector(x)}},{key:"querySelectorAll",value:function(x){return this.documentElement.querySelectorAll(x)}},{key:"find",value:function(x){return this.documentElement.find(x)}},{key:"findAll",value:function(x){return this.documentElement.findAll(x)}}])}(iu),BP=function(){function E(a){(0,Ha.Z)(this,E),this.strategies=a}return(0,Va.Z)(E,[{key:"apply",value:function(y){var x=y.config,b=y.camera,z=y.renderingService,ee=y.renderingContext,re=this.strategies;z.hooks.cull.tap(E.tag,function(ae){if(ae){var oe,de=ae.cullable;if(re.length===0?de.visible=ee.unculledEntities.indexOf(ae.entity)>-1:de.visible=re.every(function(ye){return ye.isVisible(b,ae)}),!ae.isCulled()&&ae.isVisible())return ae;var ge=((oe=x.future)===null||oe===void 0?void 0:oe.experimentalCancelEventPropagation)===!0;return ae.dispatchEvent(new Wu(Bs.CULLED),ge,ge),null}return ae}),z.hooks.afterRender.tap(E.tag,function(ae){ae.cullable.visibilityPlaneMask=-1})}}])}();BP.tag="Culling";var NP=function(){function E(){var a=this;(0,Ha.Z)(this,E),this.autoPreventDefault=!1,this.rootPointerEvent=new Tp(null),this.rootWheelEvent=new jA(null),this.onPointerMove=function(y){var x,b=(x=a.context.renderingContext.root)===null||x===void 0||(x=x.ownerDocument)===null||x===void 0?void 0:x.defaultView;if(!(b.supportsTouchEvents&&y.pointerType==="touch")){var z=a.normalizeToPointerEvent(y,b),ee=Zh(z),re;try{for(ee.s();!(re=ee.n()).done;){var ae=re.value,oe=a.bootstrapEvent(a.rootPointerEvent,ae,b,y);a.context.eventService.mapEvent(oe)}}catch(de){ee.e(de)}finally{ee.f()}a.setCursor(a.context.eventService.cursor)}},this.onClick=function(y){var x,b=(x=a.context.renderingContext.root)===null||x===void 0||(x=x.ownerDocument)===null||x===void 0?void 0:x.defaultView,z=a.normalizeToPointerEvent(y,b),ee=Zh(z),re;try{for(ee.s();!(re=ee.n()).done;){var ae=re.value,oe=a.bootstrapEvent(a.rootPointerEvent,ae,b,y);a.context.eventService.mapEvent(oe)}}catch(de){ee.e(de)}finally{ee.f()}a.setCursor(a.context.eventService.cursor)}}return(0,Va.Z)(E,[{key:"apply",value:function(y){var x=this;this.context=y;var b=y.renderingService,z=this.context.renderingContext.root.ownerDocument.defaultView;this.context.eventService.setPickHandler(function(ee){var re=x.context.renderingService.hooks.pickSync.call({position:ee,picked:[],topmost:!0}),ae=re.picked;return ae[0]||null}),b.hooks.pointerWheel.tap(E.tag,function(ee){var re=x.normalizeWheelEvent(ee);x.context.eventService.mapEvent(re)}),b.hooks.pointerDown.tap(E.tag,function(ee){if(!(z.supportsTouchEvents&&ee.pointerType==="touch")){var re=x.normalizeToPointerEvent(ee,z);if(x.autoPreventDefault&&re[0].isNormalized){var ae=ee.cancelable||!("cancelable"in ee);ae&&ee.preventDefault()}var oe=Zh(re),de;try{for(oe.s();!(de=oe.n()).done;){var ge=de.value,ye=x.bootstrapEvent(x.rootPointerEvent,ge,z,ee);x.context.eventService.mapEvent(ye)}}catch(De){oe.e(De)}finally{oe.f()}x.setCursor(x.context.eventService.cursor)}}),b.hooks.pointerUp.tap(E.tag,function(ee){if(!(z.supportsTouchEvents&&ee.pointerType==="touch")){var re=x.context.contextService.getDomElement(),ae=x.context.eventService.isNativeEventFromCanvas(re,ee),oe=ae?"":"outside",de=x.normalizeToPointerEvent(ee,z),ge=Zh(de),ye;try{for(ge.s();!(ye=ge.n()).done;){var De=ye.value,ke=x.bootstrapEvent(x.rootPointerEvent,De,z,ee);ke.type+=oe,x.context.eventService.mapEvent(ke)}}catch(ze){ge.e(ze)}finally{ge.f()}x.setCursor(x.context.eventService.cursor)}}),b.hooks.pointerMove.tap(E.tag,this.onPointerMove),b.hooks.pointerOver.tap(E.tag,this.onPointerMove),b.hooks.pointerOut.tap(E.tag,this.onPointerMove),b.hooks.click.tap(E.tag,this.onClick),b.hooks.pointerCancel.tap(E.tag,function(ee){var re=x.normalizeToPointerEvent(ee,z),ae=Zh(re),oe;try{for(ae.s();!(oe=ae.n()).done;){var de=oe.value,ge=x.bootstrapEvent(x.rootPointerEvent,de,z,ee);x.context.eventService.mapEvent(ge)}}catch(ye){ae.e(ye)}finally{ae.f()}x.setCursor(x.context.eventService.cursor)})}},{key:"bootstrapEvent",value:function(y,x,b,z){y.view=b,y.originalEvent=null,y.nativeEvent=z,y.pointerId=x.pointerId,y.width=x.width,y.height=x.height,y.isPrimary=x.isPrimary,y.pointerType=x.pointerType,y.pressure=x.pressure,y.tangentialPressure=x.tangentialPressure,y.tiltX=x.tiltX,y.tiltY=x.tiltY,y.twist=x.twist,this.transferMouseData(y,x);var ee=this.context.eventService.client2Viewport({x:x.clientX,y:x.clientY}),re=ee.x,ae=ee.y;y.viewport.x=re,y.viewport.y=ae;var oe=this.context.eventService.viewport2Canvas(y.viewport),de=oe.x,ge=oe.y;return y.canvas.x=de,y.canvas.y=ge,y.global.copyFrom(y.canvas),y.offset.copyFrom(y.canvas),y.isTrusted=z.isTrusted,y.type==="pointerleave"&&(y.type="pointerout"),y.type.startsWith("mouse")&&(y.type=y.type.replace("mouse","pointer")),y.type.startsWith("touch")&&(y.type=ZN[y.type]||y.type),y}},{key:"normalizeWheelEvent",value:function(y){var x=this.rootWheelEvent;this.transferMouseData(x,y),x.deltaMode=y.deltaMode,x.deltaX=y.deltaX,x.deltaY=y.deltaY,x.deltaZ=y.deltaZ;var b=this.context.eventService.client2Viewport({x:y.clientX,y:y.clientY}),z=b.x,ee=b.y;x.viewport.x=z,x.viewport.y=ee;var re=this.context.eventService.viewport2Canvas(x.viewport),ae=re.x,oe=re.y;return x.canvas.x=ae,x.canvas.y=oe,x.global.copyFrom(x.canvas),x.offset.copyFrom(x.canvas),x.nativeEvent=y,x.type=y.type,x}},{key:"transferMouseData",value:function(y,x){y.isTrusted=x.isTrusted,y.srcElement=x.srcElement,y.timeStamp=FA.now(),y.type=x.type,y.altKey=x.altKey,y.metaKey=x.metaKey,y.shiftKey=x.shiftKey,y.ctrlKey=x.ctrlKey,y.button=x.button,y.buttons=x.buttons,y.client.x=x.clientX,y.client.y=x.clientY,y.movement.x=x.movementX,y.movement.y=x.movementY,y.page.x=x.pageX,y.page.y=x.pageY,y.screen.x=x.screenX,y.screen.y=x.screenY,y.relatedTarget=null}},{key:"setCursor",value:function(y){this.context.contextService.applyCursorStyle(y||this.context.config.cursor||"default")}},{key:"normalizeToPointerEvent",value:function(y,x){var b=[];if(x.isTouchEvent(y))for(var z=0;z<y.changedTouches.length;z++){var ee=y.changedTouches[z];qo(ee.button)&&(ee.button=0),qo(ee.buttons)&&(ee.buttons=1),qo(ee.isPrimary)&&(ee.isPrimary=y.touches.length===1&&y.type==="touchstart"),qo(ee.width)&&(ee.width=ee.radiusX||1),qo(ee.height)&&(ee.height=ee.radiusY||1),qo(ee.tiltX)&&(ee.tiltX=0),qo(ee.tiltY)&&(ee.tiltY=0),qo(ee.pointerType)&&(ee.pointerType="touch"),qo(ee.pointerId)&&(ee.pointerId=ee.identifier||0),qo(ee.pressure)&&(ee.pressure=ee.force||.5),qo(ee.twist)&&(ee.twist=0),qo(ee.tangentialPressure)&&(ee.tangentialPressure=0),ee.isNormalized=!0,ee.type=y.type,b.push(ee)}else if(x.isMouseEvent(y)){var re=y;qo(re.isPrimary)&&(re.isPrimary=!0),qo(re.width)&&(re.width=1),qo(re.height)&&(re.height=1),qo(re.tiltX)&&(re.tiltX=0),qo(re.tiltY)&&(re.tiltY=0),qo(re.pointerType)&&(re.pointerType="mouse"),qo(re.pointerId)&&(re.pointerId=KN),qo(re.pressure)&&(re.pressure=.5),qo(re.twist)&&(re.twist=0),qo(re.tangentialPressure)&&(re.tangentialPressure=0),re.isNormalized=!0,b.push(re)}else b.push(y);return b}}])}();NP.tag="Event";var d8=[va.CIRCLE,va.ELLIPSE,va.IMAGE,va.RECT,va.LINE,va.POLYLINE,va.POLYGON,va.TEXT,va.PATH,va.HTML],f8=function(){function E(){(0,Ha.Z)(this,E)}return(0,Va.Z)(E,[{key:"isVisible",value:function(y,x){var b,z=x.cullable;if(!z.enable)return!0;var ee=x.getRenderBounds();if(Gl.isEmpty(ee))return!1;var re=y.getFrustum(),ae=(b=x.parentNode)===null||b===void 0||(b=b.cullable)===null||b===void 0?void 0:b.visibilityPlaneMask;return z.visibilityPlaneMask=this.computeVisibilityWithPlaneMask(x,ee,ae||_0.INDETERMINATE,re.planes),z.visible=z.visibilityPlaneMask!==_0.OUTSIDE,z.visible}},{key:"computeVisibilityWithPlaneMask",value:function(y,x,b,z){if(b===_0.OUTSIDE||b===_0.INSIDE)return b;for(var ee=_0.INSIDE,re=d8.indexOf(y.nodeName)>-1,ae=0,oe=z.length;ae<oe;++ae){var de=1<<ae;if(b&de&&!(re&&(ae===4||ae===5))){var ge=z[ae],ye=ge.normal,De=ge.distance;if(Gd(ye,x.getPositiveFarPoint(z[ae]))+De<0)return _0.OUTSIDE;Gd(ye,x.getNegativeFarPoint(z[ae]))+De<0&&(ee|=de)}}return ee}}])}(),RP=function(){function E(){(0,Ha.Z)(this,E),this.mutationRecords=[],this.isFirstTimeRendering=!0,this.isFirstTimeRenderingFinished=!1}return(0,Va.Z)(E,[{key:"apply",value:function(y){var x=this,b,z=y.renderingService,ee=y.renderingContext,re=ee.root.ownerDocument.defaultView,ae=function(ke){z.dirty()},oe=function(ke){var ze,We=ke.detail;(ze=x.mutationRecords).push.apply(ze,(0,zs.Z)(We)),z.dirty()},de=function(ke){var ze=ke.target;Xa.enableSizeAttenuation&&Xa.styleValueRegistry.updateSizeAttenuation(ze,re.getCamera().getZoom())},ge=function(ke){var ze=ke.target;Xa.sceneGraphService.dirtyToRoot(ze),z.dirty()};z.hooks.init.tap(E.tag,function(){re.addEventListener(Bs.MOUNTED,de),re.addEventListener(Bs.UNMOUNTED,ge),re.addEventListener(Bs.ATTR_MODIFIED,ae),re.addEventListener(Bs.BOUNDS_CHANGED,oe)}),z.hooks.destroy.tap(E.tag,function(){re.removeEventListener(Bs.MOUNTED,de),re.removeEventListener(Bs.UNMOUNTED,ge),re.removeEventListener(Bs.ATTR_MODIFIED,ae),re.removeEventListener(Bs.BOUNDS_CHANGED,oe),x.mutationRecords=[]});var ye=(b=Xa.globalThis.requestIdleCallback)!==null&&b!==void 0?b:kA.bind(Xa.globalThis);z.hooks.endFrame.tap(E.tag,function(){x.isFirstTimeRendering&&(x.isFirstTimeRendering=!1,ye(function(){x.isFirstTimeRenderingFinished=!0})),x.mutationRecords=[]})}}])}();RP.tag="Prepare";function U$(E){return!!E.document}var Pd=function(E){return E.READY="ready",E.BEFORE_RENDER="beforerender",E.RERENDER="rerender",E.AFTER_RENDER="afterrender",E.BEFORE_DESTROY="beforedestroy",E.AFTER_DESTROY="afterdestroy",E.RESIZE="resize",E.DIRTY_RECTANGLE="dirtyrectangle",E.RENDERER_CHANGED="rendererchanged",E}({}),FP=500,h8=.1,g8=1e3,Fp=new Wu(Bs.MOUNTED),kp=new Wu(Bs.UNMOUNTED),VA=new Wu(Pd.BEFORE_RENDER),kP=new Wu(Pd.RERENDER),KA=new Wu(Pd.AFTER_RENDER),ZA=function(E){function a(y){var x;(0,Ha.Z)(this,a),x=bs(this,a),x.Element=Hl,x.inited=!1,x.context={};var b=y.container,z=y.canvas,ee=y.renderer,re=y.width,ae=y.height,oe=y.background,de=y.cursor,ge=y.supportsMutipleCanvasesInOneContainer,ye=y.cleanUpOnDestroy,De=ye===void 0?!0:ye,ke=y.offscreenCanvas,ze=y.devicePixelRatio,We=y.requestAnimationFrame,Ve=y.cancelAnimationFrame,Ze=y.createImage,Ye=y.supportsTouchEvents,et=y.supportsPointerEvents,st=y.isTouchEvent,ht=y.isMouseEvent,mt=y.dblClickSpeed,dt=re,Ot=ae,_t=ze||RA&&window.devicePixelRatio||1;return _t=_t>=1?Math.ceil(_t):1,z&&(dt=re||HN(z)||z.width/_t,Ot=ae||VN(z)||z.height/_t),x.customElements=new c8,x.devicePixelRatio=_t,x.requestAnimationFrame=We!=null?We:kA.bind(Xa.globalThis),x.cancelAnimationFrame=Ve!=null?Ve:EP.bind(Xa.globalThis),x.createImage=Ze!=null?Ze:function(){return new window.Image},x.supportsTouchEvents=Ye!=null?Ye:"ontouchstart"in Xa.globalThis,x.supportsPointerEvents=et!=null?et:!!Xa.globalThis.PointerEvent,x.isTouchEvent=st!=null?st:function(wt){return x.supportsTouchEvents&&wt instanceof Xa.globalThis.TouchEvent},x.isMouseEvent=ht!=null?ht:function(wt){return!Xa.globalThis.MouseEvent||wt instanceof Xa.globalThis.MouseEvent&&(!x.supportsPointerEvents||!(wt instanceof Xa.globalThis.PointerEvent))},ke&&(Xa.offscreenCanvas=ke),x.document=new LP,x.document.defaultView=x,ge||jN(b,x,De),x.initRenderingContext((0,ps.Z)((0,ps.Z)({},y),{},{width:dt,height:Ot,background:oe!=null?oe:"transparent",cursor:de!=null?de:"default",cleanUpOnDestroy:De,devicePixelRatio:_t,requestAnimationFrame:x.requestAnimationFrame,cancelAnimationFrame:x.cancelAnimationFrame,createImage:x.createImage,supportsTouchEvents:x.supportsTouchEvents,supportsPointerEvents:x.supportsPointerEvents,isTouchEvent:x.isTouchEvent,isMouseEvent:x.isMouseEvent,dblClickSpeed:mt!=null?mt:200})),x.initDefaultCamera(dt,Ot,ee.clipSpaceNearZ),x.initRenderer(ee,!0),x}return(0,Cs.Z)(a,E),(0,Va.Z)(a,[{key:"initRenderingContext",value:function(x){this.context.config=x,this.context.renderingContext={root:this.document.documentElement,unculledEntities:[],renderListCurrentFrame:[],renderReasons:new Set,force:!1,dirty:!1}}},{key:"initDefaultCamera",value:function(x,b,z){var ee=this,re=new Xa.CameraContribution;re.clipSpaceNearZ=z,re.setType(Nl.EXPLORING,mA.DEFAULT).setPosition(x/2,b/2,FP).setFocalPoint(x/2,b/2,0).setOrthographic(x/-2,x/2,b/2,b/-2,h8,g8),re.canvas=this,re.eventEmitter.on(C2.UPDATED,function(){ee.context.renderingContext.renderReasons.add(V0.CAMERA_CHANGED),Xa.enableSizeAttenuation&&ee.getConfig().renderer.getConfig().enableSizeAttenuation&&ee.updateSizeAttenuation()}),this.context.camera=re}},{key:"updateSizeAttenuation",value:function(){var x=this.getCamera().getZoom();this.document.documentElement.forEach(function(b){Xa.styleValueRegistry.updateSizeAttenuation(b,x)})}},{key:"getConfig",value:function(){return this.context.config}},{key:"getRoot",value:function(){return this.document.documentElement}},{key:"getCamera",value:function(){return this.context.camera}},{key:"getContextService",value:function(){return this.context.contextService}},{key:"getEventService",value:function(){return this.context.eventService}},{key:"getRenderingService",value:function(){return this.context.renderingService}},{key:"getRenderingContext",value:function(){return this.context.renderingContext}},{key:"getStats",value:function(){return this.getRenderingService().getStats()}},{key:"ready",get:function(){var x=this;return this.readyPromise||(this.readyPromise=new Promise(function(b){x.resolveReadyPromise=function(){b(x)}}),this.inited&&this.resolveReadyPromise()),this.readyPromise}},{key:"destroy",value:function(){var x,b=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,z=arguments.length>1?arguments[1]:void 0;Lu.clearCache();var ee=((x=this.getConfig().future)===null||x===void 0?void 0:x.experimentalCancelEventPropagation)===!0;z||this.dispatchEvent(new Wu(Pd.BEFORE_DESTROY),ee,ee),this.frameId&&this.cancelAnimationFrame(this.frameId);var re=this.getRoot();b&&(this.unmountChildren(re),this.document.destroy(),this.getEventService().destroy()),this.getRenderingService().destroy(),this.getContextService().destroy(),z||this.dispatchEvent(new Wu(Pd.AFTER_DESTROY),ee,ee);var ae=function(de){de.currentTarget=null,de.manager=null,de.target=null,de.relatedNode=null};ae(Fp),ae(kp),ae(VA),ae(kP),ae(KA),ae(Gf),ae(WA),ae(GA),ae(TP),Xa.textService.clearCache()}},{key:"changeSize",value:function(x,b){this.resize(x,b)}},{key:"resize",value:function(x,b){var z,ee=this.context.config;ee.width=x,ee.height=b,this.getContextService().resize(x,b);var re=this.context.camera,ae=re.getProjectionMode();re.setPosition(x/2,b/2,FP).setFocalPoint(x/2,b/2,0),ae===Hd.ORTHOGRAPHIC?re.setOrthographic(x/-2,x/2,b/2,b/-2,re.getNear(),re.getFar()):re.setAspect(x/b);var oe=((z=ee.future)===null||z===void 0?void 0:z.experimentalCancelEventPropagation)===!0;this.dispatchEvent(new Wu(Pd.RESIZE,{width:x,height:b}),oe,oe)}},{key:"appendChild",value:function(x,b){return this.document.documentElement.appendChild(x,b)}},{key:"insertBefore",value:function(x,b){return this.document.documentElement.insertBefore(x,b)}},{key:"removeChild",value:function(x){return this.document.documentElement.removeChild(x)}},{key:"removeChildren",value:function(){this.document.documentElement.removeChildren()}},{key:"destroyChildren",value:function(){this.document.documentElement.destroyChildren()}},{key:"render",value:function(x){var b,z=this;x&&(VA.detail=x,KA.detail=x);var ee=((b=this.getConfig().future)===null||b===void 0?void 0:b.experimentalCancelEventPropagation)===!0;this.dispatchEvent(VA,ee,ee);var re=this.getRenderingService();re.render(this,x,function(){z.dispatchEvent(kP,ee,ee)}),this.dispatchEvent(KA,ee,ee)}},{key:"run",value:function(){var x=this,b=function(ee,re){x.render(re),x.frameId=x.requestAnimationFrame(b)};b()}},{key:"initRenderer",value:function(x){var b=this,z=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;if(!x)throw new Error("Renderer is required.");this.inited=!1,this.readyPromise=void 0,this.context.renderingPlugins=[],this.context.renderingPlugins.push(new NP,new RP,new BP([new f8])),this.loadRendererContainerModule(x),this.context.contextService=new this.context.ContextService((0,ps.Z)((0,ps.Z)({},Xa),this.context)),this.context.renderingService=new w4(Xa,this.context),this.context.eventService=new P4(Xa,this.context),this.context.eventService.init(),this.context.contextService.init?(this.context.contextService.init(),this.initRenderingService(x,z,!0)):this.context.contextService.initAsync().then(function(){b.initRenderingService(x,z)}).catch(function(ee){console.error(ee)})}},{key:"initRenderingService",value:function(x){var b=this,z=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,ee=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;this.context.renderingService.init(function(){var re;b.inited=!0;var ae=((re=b.getConfig().future)===null||re===void 0?void 0:re.experimentalCancelEventPropagation)===!0;z?ee?b.requestAnimationFrame(function(){b.dispatchEvent(new Wu(Pd.READY),ae,ae)}):b.dispatchEvent(new Wu(Pd.READY),ae,ae):b.dispatchEvent(new Wu(Pd.RENDERER_CHANGED),ae,ae),b.readyPromise&&b.resolveReadyPromise(),z||b.getRoot().forEach(function(oe){var de,ge;(de=(ge=oe).dirty)===null||de===void 0||de.call(ge,!0,!0)}),b.mountChildren(b.getRoot()),x.getConfig().enableAutoRendering&&b.run()})}},{key:"loadRendererContainerModule",value:function(x){var b=this,z=x.getPlugins();z.forEach(function(ee){ee.context=b.context,ee.init(Xa)})}},{key:"setRenderer",value:function(x){var b=this.getConfig();if(b.renderer!==x){var z=b.renderer;b.renderer=x,this.destroy(!1,!0),(0,zs.Z)((z==null?void 0:z.getPlugins())||[]).reverse().forEach(function(ee){ee.destroy(Xa)}),this.initRenderer(x)}}},{key:"setCursor",value:function(x){var b=this.getConfig();b.cursor=x,this.getContextService().applyCursorStyle(x)}},{key:"unmountChildren",value:function(x){var b=this;if(x.childNodes.forEach(function(re){b.unmountChildren(re)}),this.inited){if(x.isMutationObserved)x.dispatchEvent(kp);else{var z,ee=((z=this.getConfig().future)===null||z===void 0?void 0:z.experimentalCancelEventPropagation)===!0;kp.target=x,this.dispatchEvent(kp,!0,ee)}x!==this.document.documentElement&&(x.ownerDocument=null),x.isConnected=!1}x.isCustomElement&&x.disconnectedCallback&&x.disconnectedCallback()}},{key:"mountChildren",value:function(x){var b=this,z=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Ip(x);if(this.inited){if(!x.isConnected&&(x.ownerDocument=this.document,x.isConnected=!0,!z))if(x.isMutationObserved)x.dispatchEvent(Fp);else{var ee,re=((ee=this.getConfig().future)===null||ee===void 0?void 0:ee.experimentalCancelEventPropagation)===!0;Fp.target=x,this.dispatchEvent(Fp,!0,re)}}else console.warn("[g]: You are trying to call `canvas.appendChild` before canvas' initialization finished. You can either await `canvas.ready` or listen to `CanvasEvent.READY` manually.","appended child: ",x.nodeName);x.childNodes.forEach(function(ae){b.mountChildren(ae,z)}),x.isCustomElement&&x.connectedCallback&&x.connectedCallback()}},{key:"mountFragment",value:function(x){this.mountChildren(x,!1)}},{key:"client2Viewport",value:function(x){return this.getEventService().client2Viewport(x)}},{key:"viewport2Client",value:function(x){return this.getEventService().viewport2Client(x)}},{key:"viewport2Canvas",value:function(x){return this.getEventService().viewport2Canvas(x)}},{key:"canvas2Viewport",value:function(x){return this.getEventService().canvas2Viewport(x)}},{key:"getPointByClient",value:function(x,b){return this.client2Viewport({x,y:b})}},{key:"getClientByPoint",value:function(x,b){return this.viewport2Client({x,y:b})}}])}(PP);var v8=function(E){function a(){var y;(0,Ha.Z)(this,a);for(var x=arguments.length,b=new Array(x),z=0;z<x;z++)b[z]=arguments[z];return y=bs(this,a,[].concat(b)),y.landmarks=[],y}return(0,Cs.Z)(a,E),(0,Va.Z)(a,[{key:"rotate",value:function(x,b,z){if(this.relElevation=U0(b),this.relAzimuth=U0(x),this.relRoll=U0(z),this.elevation+=this.relElevation,this.azimuth+=this.relAzimuth,this.roll+=this.relRoll,this.type===Nl.EXPLORING){var ee=Gh(Uu(),[1,0,0],Bl((this.rotateWorld?1:-1)*this.relElevation)),re=Gh(Uu(),[0,1,0],Bl((this.rotateWorld?1:-1)*this.relAzimuth)),ae=Gh(Uu(),[0,0,1],Bl(this.relRoll)),oe=Hh(Uu(),re,ee);oe=Hh(Uu(),oe,ae);var de=eA(jl(),oe);N0(this.matrix,this.matrix,[0,0,-this.distance]),Mc(this.matrix,this.matrix,de),N0(this.matrix,this.matrix,[0,0,this.distance])}else{if(Math.abs(this.elevation)>90)return this;this.computeMatrix()}return this._getAxes(),this.type===Nl.ORBITING||this.type===Nl.EXPLORING?this._getPosition():this.type===Nl.TRACKING&&this._getFocalPoint(),this._update(),this}},{key:"pan",value:function(x,b){var z=zc(x,b,0),ee=lh(this.position);return jh(ee,ee,tp(js(),this.right,z[0])),jh(ee,ee,tp(js(),this.up,z[1])),this._setPosition(ee),this.triggerUpdate(),this}},{key:"dolly",value:function(x){var b=this.forward,z=lh(this.position),ee=x*this.dollyingStep,re=this.distance+x*this.dollyingStep;return ee=Math.max(Math.min(re,this.maxDistance),this.minDistance)-this.distance,z[0]+=ee*b[0],z[1]+=ee*b[1],z[2]+=ee*b[2],this._setPosition(z),this.type===Nl.ORBITING||this.type===Nl.EXPLORING?this._getDistance():this.type===Nl.TRACKING&&jh(this.focalPoint,z,this.distanceVector),this.triggerUpdate(),this}},{key:"cancelLandmarkAnimation",value:function(){this.landmarkAnimationID!==void 0&&this.canvas.cancelAnimationFrame(this.landmarkAnimationID)}},{key:"createLandmark",value:function(x){var b,z,ee,re,ae=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},oe=ae.position,de=oe===void 0?this.position:oe,ge=ae.focalPoint,ye=ge===void 0?this.focalPoint:ge,De=ae.roll,ke=ae.zoom,ze=new Xa.CameraContribution;ze.setType(this.type,void 0),ze.setPosition(de[0],(b=de[1])!==null&&b!==void 0?b:this.position[1],(z=de[2])!==null&&z!==void 0?z:this.position[2]),ze.setFocalPoint(ye[0],(ee=ye[1])!==null&&ee!==void 0?ee:this.focalPoint[1],(re=ye[2])!==null&&re!==void 0?re:this.focalPoint[2]),ze.setRoll(De!=null?De:this.roll),ze.setZoom(ke!=null?ke:this.zoom);var We={name:x,matrix:bC(ze.getWorldTransform()),right:lh(ze.right),up:lh(ze.up),forward:lh(ze.forward),position:lh(ze.getPosition()),focalPoint:lh(ze.getFocalPoint()),distanceVector:lh(ze.getDistanceVector()),distance:ze.getDistance(),dollyingStep:ze.getDollyingStep(),azimuth:ze.getAzimuth(),elevation:ze.getElevation(),roll:ze.getRoll(),relAzimuth:ze.relAzimuth,relElevation:ze.relElevation,relRoll:ze.relRoll,zoom:ze.getZoom()};return this.landmarks.push(We),We}},{key:"gotoLandmark",value:function(x){var b=this,z=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},ee=al(x)?this.landmarks.find(function(wt){return wt.name===x}):x;if(ee){var re=ji(z)?{duration:z}:z,ae=re.easing,oe=ae===void 0?"linear":ae,de=re.duration,ge=de===void 0?100:de,ye=re.easingFunction,De=ye===void 0?void 0:ye,ke=re.onfinish,ze=ke===void 0?void 0:ke,We=re.onframe,Ve=We===void 0?void 0:We,Ze=.01;this.cancelLandmarkAnimation();var Ye=ee.position,et=ee.focalPoint,st=ee.zoom,ht=ee.roll,mt=De||Xa.EasingFunction(oe),dt,Ot=function(){b.setFocalPoint(et),b.setPosition(Ye),b.setRoll(ht),b.setZoom(st),b.computeMatrix(),b.triggerUpdate(),ze==null||ze()};if(ge===0)return Ot();var _t=function($t){dt===void 0&&(dt=$t);var gn=$t-dt;if(gn>=ge){Ot();return}var Xt=mt(gn/ge),Tn=js(),er=js(),En=1,yn=0;JE(Tn,b.focalPoint,et,Xt),JE(er,b.position,Ye,Xt),yn=b.roll*(1-Xt)+ht*Xt,En=b.zoom*(1-Xt)+st*Xt,b.setFocalPoint(Tn),b.setPosition(er),b.setRoll(yn),b.setZoom(En);var Cn=xC(Tn,et)+xC(er,Ye);if(Cn<=Ze&&st===void 0&&ht===void 0)return Ot();b.computeMatrix(),b.triggerUpdate(),gn<ge&&(Ve==null||Ve(Xt),b.landmarkAnimationID=b.canvas.requestAnimationFrame(_t))};this.canvas.requestAnimationFrame(_t)}}}])}(w2);Xa.CameraContribution=v8;var _P=null,W$=0,zP=new WeakMap,G$=null,H$=null,_p,dh;function V$(E,a){return _p=new _P(E,a)}function K$(E){return dh||(dh=_P.copy(_p),dh.oldValue=E,dh)}function Z$(){_p=dh=void 0}function m8(E){return E===dh||E===_p}function Q$(E,a){return E===a?E:dh&&m8(E)?dh:null}function p8(E){E.nodes.forEach(function(a){var y=zP.get(a);y&&y.forEach(function(x){x.observer===E&&x.removeTransientObservers()})})}function Y$(E,a){for(var y=E;y;y=y.parentNode){var x=zP.get(y);if(x)for(var b=0;b<x.length;b++){var z=x[b],ee=z.options;if(!(y!==E&&!ee.subtree)){var re=a(ee);re&&z.enqueue(re)}}}}var QA=!1,YA=null;function X$(E){YA.push(E),QA||(QA=!0,typeof runtime.globalThis!="undefined"?runtime.globalThis.setTimeout(XA):XA())}function XA(){QA=!1;var E=YA;YA=[],E.sort(function(y,x){return y.uid-x.uid});var a=!1;E.forEach(function(y){var x=y.takeRecords();p8(y),x.length&&(y.callback(x,y),a=!0)}),a&&XA()}var JA=function(E){function a(y,x,b,z){var ee;return(0,Ha.Z)(this,a),ee=bs(this,a,[y]),ee.currentTime=b,ee.timelineTime=z,ee.target=x,ee.type="finish",ee.bubbles=!1,ee.currentTarget=x,ee.defaultPrevented=!1,ee.eventPhase=ee.AT_TARGET,ee.timeStamp=Date.now(),ee.currentTime=b,ee.timelineTime=z,ee}return(0,Cs.Z)(a,E),(0,Va.Z)(a)}(Op),y8=0,E8=function(){function E(a,y){var x;(0,Ha.Z)(this,E),this.currentTimePending=!1,this._idle=!0,this._paused=!1,this._finishedFlag=!0,this._currentTime=0,this._playbackRate=1,this._inTimeline=!0,this.effect=a,a.animation=this,this.timeline=y,this.id="".concat(y8++),this._inEffect=!!this.effect.update(0),this._totalDuration=Number((x=this.effect)===null||x===void 0?void 0:x.getComputedTiming().endTime),this._holdTime=0,this._paused=!1,this.oldPlayState="idle",this.updatePromises()}return(0,Va.Z)(E,[{key:"pending",get:function(){return this._startTime===null&&!this._paused&&this.playbackRate!==0||this.currentTimePending}},{key:"playState",get:function(){return this._idle?"idle":this._isFinished?"finished":this._paused?"paused":"running"}},{key:"ready",get:function(){var y=this;return this.readyPromise||(this.timeline.animationsWithPromises.indexOf(this)===-1&&this.timeline.animationsWithPromises.push(this),this.readyPromise=new Promise(function(x,b){y.resolveReadyPromise=function(){x(y)},y.rejectReadyPromise=function(){b(new Error)}}),this.pending||this.resolveReadyPromise()),this.readyPromise}},{key:"finished",get:function(){var y=this;return this.finishedPromise||(this.timeline.animationsWithPromises.indexOf(this)===-1&&this.timeline.animationsWithPromises.push(this),this.finishedPromise=new Promise(function(x,b){y.resolveFinishedPromise=function(){x(y)},y.rejectFinishedPromise=function(){b(new Error)}}),this.playState==="finished"&&this.resolveFinishedPromise()),this.finishedPromise}},{key:"currentTime",get:function(){return this.updatePromises(),this._idle||this.currentTimePending?null:this._currentTime},set:function(y){if(y=Number(y),!isNaN(y)){if(this.timeline.restart(),!this._paused&&this._startTime!==null){var x;this._startTime=Number((x=this.timeline)===null||x===void 0?void 0:x.currentTime)-y/this.playbackRate}this.currentTimePending=!1,this._currentTime!==y&&(this._idle&&(this._idle=!1,this._paused=!0),this.tickCurrentTime(y,!0),this.timeline.applyDirtiedAnimation(this))}}},{key:"startTime",get:function(){return this._startTime},set:function(y){if(y!==null){if(this.updatePromises(),y=Number(y),isNaN(y)||this._paused||this._idle)return;this._startTime=y,this.tickCurrentTime((Number(this.timeline.currentTime)-this._startTime)*this.playbackRate),this.timeline.applyDirtiedAnimation(this),this.updatePromises()}}},{key:"playbackRate",get:function(){return this._playbackRate},set:function(y){if(y!==this._playbackRate){this.updatePromises();var x=this.currentTime;this._playbackRate=y,this.startTime=null,this.playState!=="paused"&&this.playState!=="idle"&&(this._finishedFlag=!1,this._idle=!1,this.ensureAlive(),this.timeline.applyDirtiedAnimation(this)),x!==null&&(this.currentTime=x),this.updatePromises()}}},{key:"_isFinished",get:function(){return!this._idle&&(this._playbackRate>0&&Number(this._currentTime)>=this._totalDuration||this._playbackRate<0&&Number(this._currentTime)<=0)}},{key:"totalDuration",get:function(){return this._totalDuration}},{key:"_needsTick",get:function(){return this.pending||this.playState==="running"||!this._finishedFlag}},{key:"updatePromises",value:function(){var y;if((y=this.effect.target)!==null&&y!==void 0&&y.destroyed)return this.readyPromise=void 0,this.finishedPromise=void 0,!1;var x=this.oldPlayState,b=this.pending?"pending":this.playState;return this.readyPromise&&b!==x&&(b==="idle"?(this.rejectReadyPromise(),this.readyPromise=void 0):x==="pending"?this.resolveReadyPromise():b==="pending"&&(this.readyPromise=void 0)),this.finishedPromise&&b!==x&&(b==="idle"?(this.rejectFinishedPromise(),this.finishedPromise=void 0):b==="finished"?this.resolveFinishedPromise():x==="finished"&&(this.finishedPromise=void 0)),this.oldPlayState=b,this.readyPromise||this.finishedPromise}},{key:"play",value:function(){this.updatePromises(),this._paused=!1,(this._isFinished||this._idle)&&(this.rewind(),this._startTime=null),this._finishedFlag=!1,this._idle=!1,this.ensureAlive(),this.timeline.applyDirtiedAnimation(this),this.timeline.animations.indexOf(this)===-1&&this.timeline.animations.push(this),this.updatePromises()}},{key:"pause",value:function(){this.updatePromises(),this.currentTime&&(this._holdTime=this.currentTime),!this._isFinished&&!this._paused&&!this._idle?this.currentTimePending=!0:this._idle&&(this.rewind(),this._idle=!1),this._startTime=null,this._paused=!0,this.updatePromises()}},{key:"finish",value:function(){this.updatePromises(),!this._idle&&(this.currentTime=this._playbackRate>0?this._totalDuration:0,this._startTime=this._totalDuration-this.currentTime,this.currentTimePending=!1,this.timeline.applyDirtiedAnimation(this),this.updatePromises())}},{key:"cancel",value:function(){var y=this;if(this.updatePromises(),!!this._inEffect&&(this._inEffect=!1,this._idle=!0,this._paused=!1,this._finishedFlag=!0,this._currentTime=0,this._startTime=null,this.effect.update(null),this.timeline.applyDirtiedAnimation(this),this.updatePromises(),this.oncancel)){var x=new JA(null,this,this.currentTime,null);setTimeout(function(){y.oncancel(x)})}}},{key:"reverse",value:function(){this.updatePromises();var y=this.currentTime;this.playbackRate*=-1,this.play(),y!==null&&(this.currentTime=y),this.updatePromises()}},{key:"updatePlaybackRate",value:function(y){this.playbackRate=y}},{key:"targetAnimations",value:function(){var y,x=(y=this.effect)===null||y===void 0?void 0:y.target;return x.getAnimations()}},{key:"markTarget",value:function(){var y=this.targetAnimations();y.indexOf(this)===-1&&y.push(this)}},{key:"unmarkTarget",value:function(){var y=this.targetAnimations(),x=y.indexOf(this);x!==-1&&y.splice(x,1)}},{key:"tick",value:function(y,x){!this._idle&&!this._paused&&(this._startTime===null?x&&(this.startTime=y-this._currentTime/this.playbackRate):this._isFinished||this.tickCurrentTime((y-this._startTime)*this.playbackRate)),x&&(this.currentTimePending=!1,this.fireEvents(y))}},{key:"rewind",value:function(){if(this.playbackRate>=0)this.currentTime=0;else if(this._totalDuration<1/0)this.currentTime=this._totalDuration;else throw new Error("Unable to rewind negative playback rate animation with infinite duration")}},{key:"persist",value:function(){throw new Error(Ll)}},{key:"addEventListener",value:function(y,x,b){throw new Error(Ll)}},{key:"removeEventListener",value:function(y,x,b){throw new Error(Ll)}},{key:"dispatchEvent",value:function(y){throw new Error(Ll)}},{key:"commitStyles",value:function(){throw new Error(Ll)}},{key:"ensureAlive",value:function(){if(this.playbackRate<0&&this.currentTime===0){var y;this._inEffect=!!((y=this.effect)!==null&&y!==void 0&&y.update(-1))}else{var x;this._inEffect=!!((x=this.effect)!==null&&x!==void 0&&x.update(this.currentTime))}!this._inTimeline&&(this._inEffect||!this._finishedFlag)&&(this._inTimeline=!0,this.timeline.animations.push(this))}},{key:"tickCurrentTime",value:function(y,x){y!==this._currentTime&&(this._currentTime=y,this._isFinished&&!x&&(this._currentTime=this._playbackRate>0?this._totalDuration:0),this.ensureAlive())}},{key:"fireEvents",value:function(y){var x=this;if(this._isFinished){if(!this._finishedFlag){if(this.onfinish){var b=new JA(null,this,this.currentTime,y);setTimeout(function(){x.onfinish&&x.onfinish(b)})}this._finishedFlag=!0}}else{if(this.onframe&&this.playState==="running"){var z=new JA(null,this,this.currentTime,y);this.onframe(z)}this._finishedFlag=!1}}}])}(),A8=4,x8=.001,S8=1e-7,b8=10,em=11,zp=1/(em-1),C8=typeof Float32Array=="function",jP=function(a,y){return 1-3*y+3*a},UP=function(a,y){return 3*y-6*a},WP=function(a){return 3*a},jp=function(a,y,x){return((jP(y,x)*a+UP(y,x))*a+WP(y))*a},GP=function(a,y,x){return 3*jP(y,x)*a*a+2*UP(y,x)*a+WP(y)},P8=function(a,y,x,b,z){var ee,re,ae=0;do re=y+(x-y)/2,ee=jp(re,b,z)-a,ee>0?x=re:y=re;while(Math.abs(ee)>S8&&++ae<b8);return re},w8=function(a,y,x,b){for(var z=0;z<A8;++z){var ee=GP(y,x,b);if(ee===0)return y;var re=jp(y,x,b)-a;y-=re/ee}return y},qA=function(a,y,x,b){if(!(a>=0&&a<=1&&x>=0&&x<=1))throw new Error("bezier x values must be in [0, 1] range");if(a===y&&x===b)return function(ae){return ae};for(var z=C8?new Float32Array(em):new Array(em),ee=0;ee<em;++ee)z[ee]=jp(ee*zp,a,x);var re=function(oe){for(var de=0,ge=1,ye=em-1;ge!==ye&&z[ge]<=oe;++ge)de+=zp;--ge;var De=(oe-z[ge])/(z[ge+1]-z[ge]),ke=de+De*zp,ze=GP(ke,a,x);return ze>=x8?w8(oe,ke,a,x):ze===0?ke:P8(oe,de,de+zp,a,x)};return function(ae){return ae===0||ae===1?ae:jp(re(ae),y,b)}},M8=function(a){return a=a.replace(/([A-Z])/g,function(y){return"-".concat(y.toLowerCase())}),a.charAt(0)==="-"?a.substring(1):a},Up=function(a){return Math.pow(a,2)},Wp=function(a){return Math.pow(a,3)},Gp=function(a){return Math.pow(a,4)},Hp=function(a){return Math.pow(a,5)},Vp=function(a){return Math.pow(a,6)},Kp=function(a){return 1-Math.cos(a*Math.PI/2)},Zp=function(a){return 1-Math.sqrt(1-a*a)},Qp=function(a){return a*a*(3*a-2)},Yp=function(a){for(var y,x=4;a<((y=Math.pow(2,--x))-1)/11;);return 1/Math.pow(4,3-x)-7.5625*Math.pow((y*3-2)/22-a,2)},Xp=function(a){var y=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],x=(0,Ps.Z)(y,2),b=x[0],z=b===void 0?1:b,ee=x[1],re=ee===void 0?.5:ee,ae=gu(Number(z),1,10),oe=gu(Number(re),.1,2);return a===0||a===1?a:-ae*Math.pow(2,10*(a-1))*Math.sin((a-1-oe/(Math.PI*2)*Math.asin(1/ae))*(Math.PI*2)/oe)},tm=function(a){var y=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],x=arguments.length>2?arguments[2]:void 0,b=(0,Ps.Z)(y,4),z=b[0],ee=z===void 0?1:z,re=b[1],ae=re===void 0?100:re,oe=b[2],de=oe===void 0?10:oe,ge=b[3],ye=ge===void 0?0:ge;ee=gu(ee,.1,1e3),ae=gu(ae,.1,1e3),de=gu(de,.1,1e3),ye=gu(ye,.1,1e3);var De=Math.sqrt(ae/ee),ke=de/(2*Math.sqrt(ae*ee)),ze=ke<1?De*Math.sqrt(1-ke*ke):0,We=1,Ve=ke<1?(ke*De+-ye)/ze:-ye+De,Ze=x?x*a/1e3:a;return ke<1?Ze=Math.exp(-Ze*ke*De)*(We*Math.cos(ze*Ze)+Ve*Math.sin(ze*Ze)):Ze=(We+Ve*Ze)*Math.exp(-Ze*De),a===0||a===1?a:1-Ze},$A=function(a){var y=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],x=y,b=(0,Ps.Z)(x,2),z=b[0],ee=z===void 0?10:z,re=b[1],ae=re==="start"?Math.ceil:Math.floor;return ae(gu(a,0,1)*ee)/ee},HP=function(a){var y=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],x=(0,Ps.Z)(y,4),b=x[0],z=x[1],ee=x[2],re=x[3];return qA(b,z,ee,re)(a)},Jp=qA(.42,0,1,1),Kd=function(a){return function(y){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],b=arguments.length>2?arguments[2]:void 0;return 1-a(1-y,x,b)}},Zd=function(a){return function(y){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],b=arguments.length>2?arguments[2]:void 0;return y<.5?a(y*2,x,b)/2:1-a(y*-2+2,x,b)/2}},Qd=function(a){return function(y){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],b=arguments.length>2?arguments[2]:void 0;return y<.5?(1-a(1-y*2,x,b))/2:(a(y*2-1,x,b)+1)/2}},VP={steps:$A,"step-start":function(a){return $A(a,[1,"start"])},"step-end":function(a){return $A(a,[1,"end"])},linear:function(a){return a},"cubic-bezier":HP,ease:function(a){return HP(a,[.25,.1,.25,1])},in:Jp,out:Kd(Jp),"in-out":Zd(Jp),"out-in":Qd(Jp),"in-quad":Up,"out-quad":Kd(Up),"in-out-quad":Zd(Up),"out-in-quad":Qd(Up),"in-cubic":Wp,"out-cubic":Kd(Wp),"in-out-cubic":Zd(Wp),"out-in-cubic":Qd(Wp),"in-quart":Gp,"out-quart":Kd(Gp),"in-out-quart":Zd(Gp),"out-in-quart":Qd(Gp),"in-quint":Hp,"out-quint":Kd(Hp),"in-out-quint":Zd(Hp),"out-in-quint":Qd(Hp),"in-expo":Vp,"out-expo":Kd(Vp),"in-out-expo":Zd(Vp),"out-in-expo":Qd(Vp),"in-sine":Kp,"out-sine":Kd(Kp),"in-out-sine":Zd(Kp),"out-in-sine":Qd(Kp),"in-circ":Zp,"out-circ":Kd(Zp),"in-out-circ":Zd(Zp),"out-in-circ":Qd(Zp),"in-back":Qp,"out-back":Kd(Qp),"in-out-back":Zd(Qp),"out-in-back":Qd(Qp),"in-bounce":Yp,"out-bounce":Kd(Yp),"in-out-bounce":Zd(Yp),"out-in-bounce":Qd(Yp),"in-elastic":Xp,"out-elastic":Kd(Xp),"in-out-elastic":Zd(Xp),"out-in-elastic":Qd(Xp),spring:tm,"spring-in":tm,"spring-out":Kd(tm),"spring-in-out":Zd(tm),"spring-out-in":Qd(tm)},D8=function(a){return M8(a).replace(/^ease-/,"").replace(/(\(|\s).+/,"").toLowerCase().trim()},I8=function(a){return VP[D8(a)]||VP.linear},O8=function(a){return a},T8=1,L8=.5,KP=0;function ZP(E,a){return function(y){if(y>=1)return 1;var x=1/E;return y+=a*x,y-y%x}}var qp="\\s*(-?\\d+\\.?\\d*|-?\\.\\d+)\\s*",B8=new RegExp("cubic-bezier\\(".concat(qp,",").concat(qp,",").concat(qp,",").concat(qp,"\\)")),N8=/steps\(\s*(\d+)\s*\)/,R8=/steps\(\s*(\d+)\s*,\s*(start|middle|end)\s*\)/;function ex(E){var a=B8.exec(E);if(a)return qA.apply(void 0,(0,zs.Z)(a.slice(1).map(Number)));var y=N8.exec(E);if(y)return ZP(Number(y[1]),KP);var x=R8.exec(E);return x?ZP(Number(x[1]),{start:T8,middle:L8,end:KP}[x[2]]):I8(E)}function F8(E){return Math.abs(k8(E)/(E.playbackRate||1))}function k8(E){var a;return E.duration===0||E.iterations===0?0:(E.duration==="auto"?0:Number(E.duration))*((a=E.iterations)!==null&&a!==void 0?a:1)}var QP=0,tx=1,$p=2,YP=3;function _8(E,a,y){if(a===null)return QP;var x=y.endTime;return a<Math.min(y.delay,x)?tx:a>=Math.min(y.delay+E+y.endDelay,x)?$p:YP}function z8(E,a,y,x,b){switch(x){case tx:return a==="backwards"||a==="both"?0:null;case YP:return y-b;case $p:return a==="forwards"||a==="both"?E:null;case QP:return null}}function j8(E,a,y,x,b){var z=b;return E===0?a!==tx&&(z+=y):z+=x/E,z}function U8(E,a,y,x,b,z){var ee=E===1/0?a%1:E%1;return ee===0&&y===$p&&x!==0&&(b!==0||z===0)&&(ee=1),ee}function W8(E,a,y,x){return E===$p&&a===1/0?1/0:y===1?Math.floor(x)-1:Math.floor(x)}function G8(E,a,y){var x=E;if(E!=="normal"&&E!=="reverse"){var b=a;E==="alternate-reverse"&&(b+=1),x="normal",b!==1/0&&b%2!==0&&(x="reverse")}return x==="normal"?y:1-y}function H8(E,a,y){var x=_8(E,a,y),b=z8(E,y.fill,a,x,y.delay);if(b===null)return null;var z=y.duration==="auto"?0:y.duration,ee=j8(z,x,y.iterations,b,y.iterationStart),re=U8(ee,y.iterationStart,x,y.iterations,b,z),ae=W8(x,y.iterations,re,ee),oe=G8(y.direction,ae,re);return y.currentIteration=ae,y.progress=oe,y.easingFunction(oe)}function V8(E,a,y){var x=K8(E,a),b=Z8(x,y);return function(z,ee){if(ee!==null)b.filter(function(ae){return ee>=ae.applyFrom&&ee<ae.applyTo}).forEach(function(ae){var oe=ee-ae.startOffset,de=ae.endOffset-ae.startOffset,ge=de===0?0:oe/de;z.setAttribute(ae.property,ae.interpolation(ge),!1,!1)});else for(var re in x)XP(re)&&z.setAttribute(re,null)}}function XP(E){return E!=="offset"&&E!=="easing"&&E!=="composite"&&E!=="computedOffset"}function K8(E,a){for(var y={},x=0;x<E.length;x++)for(var b in E[x])if(XP(b)){var z={offset:E[x].offset,computedOffset:E[x].computedOffset,easing:E[x].easing,easingFunction:ex(E[x].easing)||a.easingFunction,value:E[x][b]};y[b]=y[b]||[],y[b].push(z)}return y}function Z8(E,a){var y=[];for(var x in E)for(var b=E[x],z=0;z<b.length-1;z++){var ee=z,re=z+1,ae=b[ee].computedOffset,oe=b[re].computedOffset,de=ae,ge=oe;z===0&&(de=-1/0,oe===0&&(re=ee)),z===b.length-2&&(ge=1/0,ae===1&&(ee=re)),y.push({applyFrom:de,applyTo:ge,startOffset:b[ee].computedOffset,endOffset:b[re].computedOffset,easingFunction:b[ee].easingFunction,property:x,interpolation:Q8(x,b[ee].value,b[re].value,a)})}return y.sort(function(ye,De){return ye.startOffset-De.startOffset}),y}var JP=function(a,y,x){return function(b){var z=qP(a,y,b);return ji(z)?z:x(z)}};function Q8(E,a,y,x){var b=uP[E];if(b&&b.syntax&&b.int){var z=Xa.styleValueRegistry.getPropertySyntax(b.syntax);if(z){var ee=z.parser,re=ee?ee(a,x):a,ae=ee?ee(y,x):y,oe=z.mixer(re,ae,x);if(oe){var de=JP.apply(void 0,(0,zs.Z)(oe));return function(ge){return ge===0?a:ge===1?y:de(ge)}}}}return JP(!1,!0,function(ge){return ge?y:a})}function qP(E,a,y){if(typeof E=="number"&&typeof a=="number")return E*(1-y)+a*y;if(typeof E=="boolean"&&typeof a=="boolean"||typeof E=="string"&&typeof a=="string")return y<.5?E:a;if(Array.isArray(E)&&Array.isArray(a)){for(var x=E.length,b=a.length,z=Math.max(x,b),ee=[],re=0;re<z;re++)ee.push(qP(E[re<x?re:x-1],a[re<b?re:b-1],y));return ee}throw new Error("Mismatched interpolation arguments ".concat(E,":").concat(a))}var Y8=function(){function E(){(0,Ha.Z)(this,E),this.delay=0,this.direction="normal",this.duration="auto",this._easing="linear",this.easingFunction=O8,this.endDelay=0,this.fill="auto",this.iterationStart=0,this.iterations=1,this.currentIteration=null,this.progress=null}return(0,Va.Z)(E,[{key:"easing",get:function(){return this._easing},set:function(y){this.easingFunction=ex(y),this._easing=y}}])}();function X8(E){var a=[];for(var y in E)if(!(y in["easing","offset","composite"])){var x=E[y];Array.isArray(x)||(x=[x]);for(var b=x.length,z=0;z<b;z++){if(!a[z]){var ee={};"offset"in E&&(ee.offset=Number(E.offset)),"easing"in E&&(ee.easing=E.easing),"composite"in E&&(ee.composite=E.composite),a[z]=ee}x[z]!==void 0&&x[z]!==null&&(a[z][y]=x[z])}}return a.sort(function(re,ae){return(re.computedOffset||0)-(ae.computedOffset||0)}),a}function $P(E,a){if(E===null)return[];Array.isArray(E)||(E=X8(E));for(var y=E.map(function(ae){var oe={};a!=null&&a.composite&&(oe.composite="auto");for(var de in ae){var ge=ae[de];if(de==="offset"){if(ge!==null){if(ge=Number(ge),!isFinite(ge))throw new Error("Keyframe offsets must be numbers.");if(ge<0||ge>1)throw new Error("Keyframe offsets must be between 0 and 1.");oe.computedOffset=ge}}else if(de==="composite"&&["replace","add","accumulate","auto"].indexOf(ge)===-1)throw new Error("".concat(ge," compositing is not supported"));oe[de]=ge}return oe.offset===void 0&&(oe.offset=null),oe.easing===void 0&&(oe.easing=(a==null?void 0:a.easing)||"linear"),oe.composite===void 0&&(oe.composite="auto"),oe}),x=!0,b=-1/0,z=0;z<y.length;z++){var ee=y[z].offset;if(Io(ee))x=!1;else{if(ee<b)throw new TypeError("Keyframes are not loosely sorted by offset. Sort or specify offsets.");b=ee}}y=y.filter(function(ae){return Number(ae.offset)>=0&&Number(ae.offset)<=1});function re(){var ae,oe=y,de=oe.length;if(y[de-1].computedOffset=Number((ae=y[de-1].offset)!==null&&ae!==void 0?ae:1),de>1){var ge;y[0].computedOffset=Number((ge=y[0].offset)!==null&&ge!==void 0?ge:0)}for(var ye=0,De=Number(y[0].computedOffset),ke=1;ke<de;ke++){var ze=y[ke].computedOffset;if(!Io(ze)&&!Io(De)){for(var We=1;We<ke-ye;We++)y[ye+We].computedOffset=De+(Number(ze)-De)*We/(ke-ye);ye=ke,De=Number(ze)}}}return x||re(),y}var J8="backwards|forwards|both|none".split("|"),q8="reverse|alternate|alternate-reverse".split("|");function $8(E,a){var y=new Y8;return a&&(y.fill="both",y.duration="auto"),typeof E=="number"&&!isNaN(E)?y.duration=E:E!==void 0&&Object.keys(E).forEach(function(x){if(E[x]!==void 0&&E[x]!==null&&E[x]!=="auto"){if((typeof y[x]=="number"||x==="duration")&&(typeof E[x]!="number"||isNaN(E[x]))||x==="fill"&&J8.indexOf(E[x])===-1||x==="direction"&&q8.indexOf(E[x])===-1)return;y[x]=E[x]}}),y}function eR(E,a){return E=tR(E!=null?E:{duration:"auto"}),$8(E,a)}function tR(E){return typeof E=="number"&&(isNaN(E)?E={duration:"auto"}:E={duration:E}),E}var nR=function(){function E(a,y,x){var b=this;(0,Ha.Z)(this,E),this.composite="replace",this.iterationComposite="replace",this.target=a,this.timing=eR(x,!1),this.timing.effect=this,this.timing.activeDuration=F8(this.timing),this.timing.endTime=Math.max(0,this.timing.delay+this.timing.activeDuration+this.timing.endDelay),this.normalizedKeyframes=$P(y,this.timing),this.interpolations=V8(this.normalizedKeyframes,this.timing,this.target);var z=Xa.globalThis.Proxy;this.computedTiming=z?new z(this.timing,{get:function(re,ae){return ae==="duration"?re.duration==="auto"?0:re.duration:ae==="fill"?re.fill==="auto"?"none":re.fill:ae==="localTime"?b.animation&&b.animation.currentTime||null:ae==="currentIteration"?!b.animation||b.animation.playState!=="running"?null:re.currentIteration||0:ae==="progress"?!b.animation||b.animation.playState!=="running"?null:re.progress||0:re[ae]},set:function(){return!0}}):this.timing}return(0,Va.Z)(E,[{key:"applyInterpolations",value:function(){this.interpolations(this.target,Number(this.timeFraction))}},{key:"update",value:function(y){return y===null?!1:(this.timeFraction=H8(this.timing.activeDuration,y,this.timing),this.timeFraction!==null)}},{key:"getKeyframes",value:function(){return this.normalizedKeyframes}},{key:"setKeyframes",value:function(y){this.normalizedKeyframes=$P(y)}},{key:"getComputedTiming",value:function(){return this.computedTiming}},{key:"getTiming",value:function(){return this.timing}},{key:"updateTiming",value:function(y){var x=this;Object.keys(y||{}).forEach(function(b){x.timing[b]=y[b]})}}])}();function ew(E,a){return Number(E.id)-Number(a.id)}var rR=function(){function E(a){var y=this;(0,Ha.Z)(this,E),this.animations=[],this.ticking=!1,this.timelineTicking=!1,this.hasRestartedThisFrame=!1,this.animationsWithPromises=[],this.inTick=!1,this.pendingEffects=[],this.currentTime=null,this.rafId=0,this.rafCallbacks=[],this.webAnimationsNextTick=function(x){y.currentTime=x,y.discardAnimations(),y.animations.length===0?y.timelineTicking=!1:y.requestAnimationFrame(y.webAnimationsNextTick)},this.processRafCallbacks=function(x){var b=y.rafCallbacks;y.rafCallbacks=[],x<Number(y.currentTime)&&(x=Number(y.currentTime)),y.animations.sort(ew),y.animations=y.tick(x,!0,y.animations)[0],b.forEach(function(z){z[1](x)}),y.applyPendingEffects()},this.document=a}return(0,Va.Z)(E,[{key:"getAnimations",value:function(){return this.discardAnimations(),this.animations.slice()}},{key:"isTicking",value:function(){return this.inTick}},{key:"play",value:function(y,x,b){var z=new nR(y,x,b),ee=new E8(z,this);return this.animations.push(ee),this.restartWebAnimationsNextTick(),ee.updatePromises(),ee.play(),ee.updatePromises(),ee}},{key:"applyDirtiedAnimation",value:function(y){var x=this;if(!this.inTick){y.markTarget();var b=y.targetAnimations();b.sort(ew);var z=this.tick(Number(this.currentTime),!1,b.slice())[1];z.forEach(function(ee){var re=x.animations.indexOf(ee);re!==-1&&x.animations.splice(re,1)}),this.applyPendingEffects()}}},{key:"restart",value:function(){return this.ticking||(this.ticking=!0,this.requestAnimationFrame(function(){}),this.hasRestartedThisFrame=!0),this.hasRestartedThisFrame}},{key:"destroy",value:function(){this.document.defaultView.cancelAnimationFrame(this.frameId)}},{key:"applyPendingEffects",value:function(){this.pendingEffects.forEach(function(y){y==null||y.applyInterpolations()}),this.pendingEffects=[]}},{key:"updateAnimationsPromises",value:function(){this.animationsWithPromises=this.animationsWithPromises.filter(function(y){return y.updatePromises()})}},{key:"discardAnimations",value:function(){this.updateAnimationsPromises(),this.animations=this.animations.filter(function(y){return y.playState!=="finished"&&y.playState!=="idle"})}},{key:"restartWebAnimationsNextTick",value:function(){this.timelineTicking||(this.timelineTicking=!0,this.requestAnimationFrame(this.webAnimationsNextTick))}},{key:"rAF",value:function(y){var x=this.rafId++;return this.rafCallbacks.length===0&&(this.frameId=this.document.defaultView.requestAnimationFrame(this.processRafCallbacks)),this.rafCallbacks.push([x,y]),x}},{key:"requestAnimationFrame",value:function(y){var x=this;return this.rAF(function(b){x.updateAnimationsPromises(),y(b),x.updateAnimationsPromises()})}},{key:"tick",value:function(y,x,b){var z=this,ee,re;this.inTick=!0,this.hasRestartedThisFrame=!1,this.currentTime=y,this.ticking=!1;var ae=[],oe=[],de=[],ge=[];return b.forEach(function(ye){ye.tick(y,x),ye._inEffect?(oe.push(ye.effect),ye.markTarget()):(ae.push(ye.effect),ye.unmarkTarget()),ye._needsTick&&(z.ticking=!0);var De=ye._inEffect||ye._needsTick;ye._inTimeline=De,De?de.push(ye):ge.push(ye)}),(ee=this.pendingEffects).push.apply(ee,ae),(re=this.pendingEffects).push.apply(re,oe),this.ticking&&this.requestAnimationFrame(function(){}),this.inTick=!1,[de,ge]}}])}();Xa.EasingFunction=ex,Xa.AnimationTimeline=rR;var tw=function(E){return Io(E)?"":E.toString()},aR=function(E){var a=tw(E);return a.charAt(0).toUpperCase()+a.substring(1)},ey=aR,iR=function(E){return typeof E=="object"&&E!==null},nx=iR,oR=function(E){return E!==null&&typeof E!="function"&&isFinite(E.length)},nm=oR,rx=function(E,a){if(E===a)return!0;if(!E||!a||al(E)||al(a))return!1;if(nm(E)||nm(a)){if(E.length!==a.length)return!1;for(var y=!0,x=0;x<E.length&&(y=rx(E[x],a[x]),!!y);x++);return y}if(nx(E)||nx(a)){var b=Object.keys(E),z=Object.keys(a);if(b.length!==z.length)return!1;for(var y=!0,x=0;x<b.length&&(y=rx(E[b[x]],a[b[x]]),!!y);x++);return y}return!1},Nu=rx;const sR={duration:500},lR={duration:1e3,easing:"cubic-bezier(0.250, 0.460, 0.450, 0.940)",iterations:1,fill:"both"},J$={CHANGE:"change"};var eu;(function(E){E.NodeAdded="NodeAdded",E.NodeUpdated="NodeUpdated",E.NodeRemoved="NodeRemoved",E.EdgeAdded="EdgeAdded",E.EdgeUpdated="EdgeUpdated",E.EdgeRemoved="EdgeRemoved",E.ComboAdded="ComboAdded",E.ComboUpdated="ComboUpdated",E.ComboRemoved="ComboRemoved"})(eu||(eu={}));var sd;(function(E){E.DRAW="draw",E.COLLAPSE="collapse",E.EXPAND="expand",E.TRANSFORM="transform"})(sd||(sd={}));var fh;(function(E){E.CLICK="canvas:click",E.DBLCLICK="canvas:dblclick",E.POINTER_OVER="canvas:pointerover",E.POINTER_LEAVE="canvas:pointerleave",E.POINTER_ENTER="canvas:pointerenter",E.POINTER_MOVE="canvas:pointermove",E.POINTER_OUT="canvas:pointerout",E.POINTER_DOWN="canvas:pointerdown",E.POINTER_UP="canvas:pointerup",E.CONTEXT_MENU="canvas:contextmenu",E.DRAG_START="canvas:dragstart",E.DRAG="canvas:drag",E.DRAG_END="canvas:dragend",E.DRAG_ENTER="canvas:dragenter",E.DRAG_OVER="canvas:dragover",E.DRAG_LEAVE="canvas:dragleave",E.DROP="canvas:drop",E.WHEEL="canvas:wheel"})(fh||(fh={}));var Xg;(function(E){E.CLICK="combo:click",E.DBLCLICK="combo:dblclick",E.POINTER_OVER="combo:pointerover",E.POINTER_LEAVE="combo:pointerleave",E.POINTER_ENTER="combo:pointerenter",E.POINTER_MOVE="combo:pointermove",E.POINTER_OUT="combo:pointerout",E.POINTER_DOWN="combo:pointerdown",E.POINTER_UP="combo:pointerup",E.CONTEXT_MENU="combo:contextmenu",E.DRAG_START="combo:dragstart",E.DRAG="combo:drag",E.DRAG_END="combo:dragend",E.DRAG_ENTER="combo:dragenter",E.DRAG_OVER="combo:dragover",E.DRAG_LEAVE="combo:dragleave",E.DROP="combo:drop"})(Xg||(Xg={}));var Ea;(function(E){E.CLICK="click",E.DBLCLICK="dblclick",E.POINTER_OVER="pointerover",E.POINTER_LEAVE="pointerleave",E.POINTER_ENTER="pointerenter",E.POINTER_MOVE="pointermove",E.POINTER_OUT="pointerout",E.POINTER_DOWN="pointerdown",E.POINTER_UP="pointerup",E.CONTEXT_MENU="contextmenu",E.DRAG_START="dragstart",E.DRAG="drag",E.DRAG_END="dragend",E.DRAG_ENTER="dragenter",E.DRAG_OVER="dragover",E.DRAG_LEAVE="dragleave",E.DROP="drop",E.KEY_DOWN="keydown",E.KEY_UP="keyup",E.WHEEL="wheel",E.PINCH="pinch"})(Ea||(Ea={}));var K0;(function(E){E.KEY_DOWN="keydown",E.KEY_UP="keyup"})(K0||(K0={}));var ty;(function(E){E.CLICK="edge:click",E.DBLCLICK="edge:dblclick",E.POINTER_OVER="edge:pointerover",E.POINTER_LEAVE="edge:pointerleave",E.POINTER_ENTER="edge:pointerenter",E.POINTER_MOVE="edge:pointermove",E.POINTER_OUT="edge:pointerout",E.POINTER_DOWN="edge:pointerdown",E.POINTER_UP="edge:pointerup",E.CONTEXT_MENU="edge:contextmenu",E.DRAG_ENTER="edge:dragenter",E.DRAG_OVER="edge:dragover",E.DRAG_LEAVE="edge:dragleave",E.DROP="edge:drop"})(ty||(ty={}));var hi;(function(E){E.BEFORE_CANVAS_INIT="beforecanvasinit",E.AFTER_CANVAS_INIT="aftercanvasinit",E.BEFORE_SIZE_CHANGE="beforesizechange",E.AFTER_SIZE_CHANGE="aftersizechange",E.BEFORE_ELEMENT_CREATE="beforeelementcreate",E.AFTER_ELEMENT_CREATE="afterelementcreate",E.BEFORE_ELEMENT_UPDATE="beforeelementupdate",E.AFTER_ELEMENT_UPDATE="afterelementupdate",E.BEFORE_ELEMENT_DESTROY="beforeelementdestroy",E.AFTER_ELEMENT_DESTROY="afterelementdestroy",E.BEFORE_ELEMENT_TRANSLATE="beforeelementtranslate",E.AFTER_ELEMENT_TRANSLATE="afterelementtranslate",E.BEFORE_DRAW="beforedraw",E.AFTER_DRAW="afterdraw",E.BEFORE_RENDER="beforerender",E.AFTER_RENDER="afterrender",E.BEFORE_ANIMATE="beforeanimate",E.AFTER_ANIMATE="afteranimate",E.BEFORE_LAYOUT="beforelayout",E.AFTER_LAYOUT="afterlayout",E.BEFORE_STAGE_LAYOUT="beforestagelayout",E.AFTER_STAGE_LAYOUT="afterstagelayout",E.BEFORE_TRANSFORM="beforetransform",E.AFTER_TRANSFORM="aftertransform",E.BATCH_START="batchstart",E.BATCH_END="batchend",E.BEFORE_DESTROY="beforedestroy",E.AFTER_DESTROY="afterdestroy",E.BEFORE_RENDERER_CHANGE="beforerendererchange",E.AFTER_RENDERER_CHANGE="afterrendererchange"})(hi||(hi={}));var Xh;(function(E){E.UNDO="undo",E.REDO="redo",E.CANCEL="cancel",E.ADD="add",E.CLEAR="clear",E.CHANGE="change"})(Xh||(Xh={}));var Yd;(function(E){E.CLICK="node:click",E.DBLCLICK="node:dblclick",E.POINTER_OVER="node:pointerover",E.POINTER_LEAVE="node:pointerleave",E.POINTER_ENTER="node:pointerenter",E.POINTER_MOVE="node:pointermove",E.POINTER_OUT="node:pointerout",E.POINTER_DOWN="node:pointerdown",E.POINTER_UP="node:pointerup",E.CONTEXT_MENU="node:contextmenu",E.DRAG_START="node:dragstart",E.DRAG="node:drag",E.DRAG_END="node:dragend",E.DRAG_ENTER="node:dragenter",E.DRAG_OVER="node:dragover",E.DRAG_LEAVE="node:dragleave",E.DROP="node:drop"})(Yd||(Yd={}));const Ul="combo",wd="tree";var rm;(function(E){E.NODE="node",E.EDGE="edge",E.COMBO="combo",E.THEME="theme",E.PALETTE="palette",E.LAYOUT="layout",E.BEHAVIOR="behavior",E.PLUGIN="plugin",E.ANIMATION="animation",E.TRANSFORM="transform",E.SHAPE="shape"})(rm||(rm={}));const ax={animation:{},behavior:{},combo:{},edge:{},layout:{},node:{},palette:{},theme:{},plugin:{},transform:{},shape:{}};function hh(E,a){var y;const x=(y=ax[E])===null||y===void 0?void 0:y[a];if(x)return x}function q$(E){return EXTENSION_REGISTRY[E]}const uR="5.0.50",cR="G6";function gh(E){return`[${cR} v${uR}] ${E}`}const ld={mute:!1,debug:E=>{!ld.mute&&console.debug(gh(E))},info:E=>{!ld.mute&&console.info(gh(E))},warn:E=>{!ld.mute&&console.warn(gh(E))},error:E=>{!ld.mute&&console.error(gh(E))}};function nw(E){const{theme:a}=E;if(!a)return{};const y=hh(rm.THEME,a);return y||(ld.warn(`The theme of ${a} is not registered.`),{})}function ix(E,a){if(Array.isArray(E)&&E.length===0)return null;const y=Array.isArray(E)?E[0]:E,x=Array.isArray(E)?E.slice(1):a||[];return new Proxy(y,{get(b,z){return typeof b[z]=="function"&&!["onframe","onfinish"].includes(z)?(...ee)=>{b[z](...ee),x.forEach(re=>{var ae;return(ae=re[z])===null||ae===void 0?void 0:ae.call(re,...ee)})}:z==="finished"?Promise.all([y.finished,...x.map(ee=>ee.finished)]):Reflect.get(b,z)},set(b,z,ee){return["onframe","onfinish"].includes(z)||x.forEach(re=>{re[z]=ee}),Reflect.set(b,z,ee)}})}function ox(E){const a=E.reduce((x,b)=>(Object.entries(b).forEach(([z,ee])=>{x[z]===void 0?x[z]=[ee]:x[z].push(ee)}),x),{});Object.entries(a).forEach(([x,b])=>{(b.length!==E.length||b.some(z=>Io(z))||b.every(z=>!["sourceNode","targetNode","childrenNode"].includes(x)&&Nu(z,b[0])))&&delete a[x]});const y=Object.entries(a).reduce((x,[b,z])=>(z.forEach((ee,re)=>{x[re]?x[re][b]=ee:x[re]={[b]:ee}}),x),[]);return E.length!==0&&y.length===0&&y.push({_:0},{_:0}),y}function am(E){switch(E){case"opacity":return 1;case"x":case"y":case"z":case"zIndex":return 0;case"visibility":return"visible";case"collapsed":return!1;case"states":return[];default:return}}function rw(E,a){const{animation:y}=E;if(y===!1||a===!1)return!1;const x=Object.assign({},sR);return Tu(y)&&Object.assign(x,y),Tu(a)&&Object.assign(x,a),x}function dR(E){if(typeof E=="string"){const a=hh(rm.ANIMATION,E);return a||(ld.warn(`The animation of ${E} is not registered.`),[])}return E}function fR(E,a,y,x){var b,z;const{animation:ee}=E;if(ee===!1||x===!1)return[];const re=(b=E==null?void 0:E[a])===null||b===void 0?void 0:b.animation;if(re===!1)return[];const ae=re==null?void 0:re[y];if(ae===!1)return[];const oe=(z=nw(E)[a])===null||z===void 0?void 0:z.animation,de=(ye=[])=>dR(ye).map(De=>Object.assign(Object.assign(Object.assign(Object.assign({},lR),Tu(ee)&&ee),De),Tu(x)&&x));if(ae)return de(ae);if(!oe)return[];const ge=oe[y];return ge===!1?[]:de(ge)}function aw(E,a,y,x=[]){if(!x&&E===0&&a===0&&y===0)return null;if(Array.isArray(x)){let z=-1;const ee=[];for(let re=0;re<x.length;re++){const ae=x[re];if(ae[0]==="translate"){if(ae[1]===E&&ae[2]===a)return null;z=re,ee.push(["translate",E,a])}else if(ae[0]==="translate3d"){if(ae[1]===E&&ae[2]===a&&ae[3]===y)return null;z=re,ee.push(["translate3d",E,a,y!=null?y:0])}else ee.push(ae)}return z===-1&&ee.splice(0,0,ji(y)?["translate3d",E,a,y!=null?y:0]:["translate",E,a]),ee.length===0?null:ee}const b=x?x.replace(/translate(3d)?\([^)]*\)/g,""):"";return y===0?`translate(${E}, ${a})${b}`:`translate3d(${E}, ${a}, ${y})${b}`}var hR=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b<x.length;b++)a.indexOf(x[b])<0&&Object.prototype.propertyIsEnumerable.call(E,x[b])&&(y[x[b]]=E[x[b]]);return y};const gR=(E,a,y)=>{if(!y.length)return null;const[x,b]=a,z=oe=>{var de;if(oe){const ge=E.getShape(oe);if(!ge)return null;const ye=`get${ey(oe)}Style`,De=((de=E==null?void 0:E[ye])===null||de===void 0?void 0:de.bind(E))||(We=>We),ke=(De==null?void 0:De(x))||{},ze=(De==null?void 0:De(b))||{};return{shape:ge,fromStyle:ke,toStyle:ze}}else return{shape:E,fromStyle:x,toStyle:b}};let ee;const re=y.map(oe=>{var{fields:de,shape:ge,states:ye}=oe,De=hR(oe,["fields","shape","states"]);const ke=z(ge);if(!ke)return null;const{shape:ze,fromStyle:We,toStyle:Ve}=ke,Ze=[{},{}];if(de.forEach(et=>{var st,ht;Object.assign(Ze[0],{[et]:(st=We[et])!==null&&st!==void 0?st:am(et)}),Object.assign(Ze[1],{[et]:(ht=Ve[et])!==null&&ht!==void 0?ht:am(et)})}),Ze.some(et=>Object.keys(et).some(st=>["x","y","z"].includes(st)))){const{x:et=0,y:st=0,z:ht,transform:mt=""}=ze.attributes||{};Ze.forEach(dt=>{var Ot,_t,wt;dt.transform=aw((Ot=dt.x)!==null&&Ot!==void 0?Ot:et,(_t=dt.y)!==null&&_t!==void 0?_t:st,(wt=dt.z)!==null&&wt!==void 0?wt:ht,mt)})}const Ye=ze.animate(ox(Ze),De);return ge===void 0&&(ee=Ye),Ye}).filter(Boolean),ae=ee||(re==null?void 0:re[0]);return ae?ix(ae,re.filter(oe=>oe!==oe)):null},vR=[{fields:["opacity"]}],mR=[{fields:["x","y"]}],iw=[{fields:["x","y"]}],pR=iw,ow=[{fields:["sourceNode","targetNode"]}],yR=ow,sw=[{fields:["childrenNode","x","y"]}],ER=sw,$$=[{fields:["childrenNode","x","y"]}];var AR=Object.prototype.hasOwnProperty;function xR(E,a){if(!a||!nd(E))return{};for(var y={},x=Xi(a)?a:function(re){return re[a]},b,z=0;z<E.length;z++){var ee=E[z];b=x(ee),AR.call(y,b)?y[b].push(ee):y[b]=[ee]}return y}var ny=xR,lw=function(E,a,y){var x,b,z,ee,re=0;y||(y={});var ae=function(){re=y.leading===!1?0:Date.now(),x=null,ee=E.apply(b,z),x||(b=z=null)},oe=function(){var de=Date.now();!re&&y.leading===!1&&(re=de);var ge=a-(de-re);return b=this,z=arguments,ge<=0||ge>a?(x&&(clearTimeout(x),x=null),re=de,ee=E.apply(b,z),x||(b=z=null)):!x&&y.trailing!==!1&&(x=setTimeout(ae,ge)),ee};return oe.cancel=function(){clearTimeout(x),re=0,x=b=z=null},oe},sx=function(E){if(typeof E!="object"||E===null)return E;var a;if(nd(E)){a=[];for(var y=0,x=E.length;y<x;y++)typeof E[y]=="object"&&E[y]!=null?a[y]=sx(E[y]):a[y]=E[y]}else{a={};for(var b in E)typeof E[b]=="object"&&E[b]!=null?a[b]=sx(E[b]):a[b]=E[b]}return a},Z0=sx;function SR(E){return"source"in E&&"target"in E}function bR(E){return E.length===2}function eee(E){return E.length===3}function Q0(E){return E instanceof Float32Array?!0:Array.isArray(E)&&(E.length===2||E.length===3)?E.every(a=>typeof a=="number"):!1}function Vf(E,a,y){return E>=a&&E<=y}function Md(E=0){if(Array.isArray(E)){const[a=0,y=a,x=a,b=y]=E;return[a,y,x,b]}return[E,E,E,E]}function CR(E=0){const a=Md(E);return a[0]+a[2]}function tee(E=0){const a=Md(E);return a[1]+a[3]}function Kf(E){return E.max[0]-E.min[0]}function Zf(E){return E.max[1]-E.min[1]}function Jh(E){return[Kf(E),Zf(E)]}function qh(E,a){const y=Q0(E)?lx(E):E.getShape("key").getBounds();return a?$h(y,a):y}function lx(E){const[a,y,x=0]=E,b=new Gl;return b.setMinMax([a,y,x],[a,y,x]),b}function $h(E,a){const[y,x,b,z]=Md(a),[ee,re,ae]=E.min,[oe,de,ge]=E.max,ye=new Gl;return ye.setMinMax([ee-z,re-y,ae],[oe+x,de+b,ge]),ye}function im(E){if(E.length===0)return new Gl;if(E.length===1)return E[0];const a=new Gl;a.setMinMax(E[0].min,E[0].max);for(let y=1;y<E.length;y++){const x=E[y];a.setMinMax([Math.min(a.min[0],x.min[0]),Math.min(a.min[1],x.min[1]),Math.min(a.min[2],x.min[2])],[Math.max(a.max[0],x.max[0]),Math.max(a.max[1],x.max[1]),Math.max(a.max[2],x.max[2])])}return a}function PR(E,a){const[y,x]=E.min,[b,z]=E.max,[ee,re]=a.min,[ae,oe]=a.max;return y>=ee&&b<=ae&&x>=re&&z<=oe}function yf(E,a){return Vf(E[0],a.min[0],a.max[0])&&Vf(E[1],a.min[1],a.max[1])}function uw(E,a,y=!1){const{min:[x,b],max:[z,ee]}=a,re=(E[1]===b||E[1]===ee)&&(y||Vf(E[0],x,z)),ae=(E[0]===x||E[0]===z)&&(y||Vf(E[1],b,ee));return re||ae}function wR(E,a){return!yf(E,a)}function ry(E,a){const{center:y}=a;return E[0]===y[0]&&E[1]===y[1]}function om(E,a){const[y,x]=E,[b,z]=a.min,[ee,re]=a.max,ae=y-b,oe=ee-y,de=x-z,ge=re-x,ye=Math.min(ae,oe,de,ge);return ye===ae?"left":ye===oe?"right":ye===de?"top":ye===ge?"bottom":"left"}function Jg(E,a){const y=Z0(E);if(yf(E,a))switch(om(E,a)){case"left":y[0]=a.min[0];break;case"right":y[0]=a.max[0];break;case"top":y[1]=a.min[1];break;case"bottom":y[1]=a.max[1];break}else{const[x,b]=E,[z,ee]=a.min,[re,ae]=a.max;y[0]=Vf(x,z,re)?x:x<z?z:re,y[1]=Vf(b,ee,ae)?b:b<ee?ee:ae}return y}function MR(E,a){const{center:y}=E,[x,b]=Jh(E),z=a==="up"||a==="down"?y[0]:a==="right"?y[0]-x/6:y[0]+x/6,ee=a==="left"||a==="right"?y[1]:a==="down"?y[1]-b/6:y[1]+b/6;return[z,ee]}function DR(E,a){let[y,x]=Jh(E);return[y,x]=a==="up"||a==="down"?[y,x]:[x,y],(Math.pow(x,2)-Math.pow(Math.sqrt(Math.pow(y/2,2)+Math.pow(x,2))-y/2,2))/(2*x)}function IR(E){const{min:[a,y],max:[x,b]}=E,z=[a,b],ee=[x,b],re=[x,y],ae=[a,y];return[[z,ee],[ee,re],[re,ae],[ae,z]]}var OR=function(a,y){var x=a.nodes,b=a.edges,z=[],ee={};if(!x)throw new Error("invalid nodes data!");return x&&x.forEach(function(re,ae){ee[re.id]=ae;var oe=[];z.push(oe)}),b&&b.forEach(function(re){var ae=re.source,oe=re.target,de=ee[ae],ge=ee[oe];!de&&de!==0||!ge&&ge!==0||(z[de][ge]=1,y||(z[ge][de]=1))}),z},ay=OR,TR=function(a,y){return a===y},cw=function(){function E(a,y){y===void 0&&(y=null),this.value=a,this.next=y}return E.prototype.toString=function(a){return a?a(this.value):"".concat(this.value)},E}(),LR=function(){function E(a){a===void 0&&(a=TR),this.head=null,this.tail=null,this.compare=a}return E.prototype.prepend=function(a){var y=new cw(a,this.head);return this.head=y,this.tail||(this.tail=y),this},E.prototype.append=function(a){var y=new cw(a);return this.head?(this.tail.next=y,this.tail=y,this):(this.head=y,this.tail=y,this)},E.prototype.delete=function(a){if(!this.head)return null;for(var y=null;this.head&&this.compare(this.head.value,a);)y=this.head,this.head=this.head.next;var x=this.head;if(x!==null)for(;x.next;)this.compare(x.next.value,a)?(y=x.next,x.next=x.next.next):x=x.next;return this.compare(this.tail.value,a)&&(this.tail=x),y},E.prototype.find=function(a){var y=a.value,x=y===void 0?void 0:y,b=a.callback,z=b===void 0?void 0:b;if(!this.head)return null;for(var ee=this.head;ee;){if(z&&z(ee.value)||x!==void 0&&this.compare(ee.value,x))return ee;ee=ee.next}return null},E.prototype.deleteTail=function(){var a=this.tail;if(this.head===this.tail)return this.head=null,this.tail=null,a;for(var y=this.head;y.next;)y.next.next?y=y.next:y.next=null;return this.tail=y,a},E.prototype.deleteHead=function(){if(!this.head)return null;var a=this.head;return this.head.next?this.head=this.head.next:(this.head=null,this.tail=null),a},E.prototype.fromArray=function(a){var y=this;return a.forEach(function(x){return y.append(x)}),this},E.prototype.toArray=function(){for(var a=[],y=this.head;y;)a.push(y),y=y.next;return a},E.prototype.reverse=function(){for(var a=this.head,y=null,x=null;a;)x=a.next,a.next=y,y=a,a=x;this.tail=this.head,this.head=y},E.prototype.toString=function(a){return a===void 0&&(a=void 0),this.toArray().map(function(y){return y.toString(a)}).toString()},E}(),dw=LR,BR=function(){function E(){this.linkedList=new dw}return E.prototype.isEmpty=function(){return!this.linkedList.head},E.prototype.peek=function(){return this.linkedList.head?this.linkedList.head.value:null},E.prototype.enqueue=function(a){this.linkedList.append(a)},E.prototype.dequeue=function(){var a=this.linkedList.deleteHead();return a?a.value:null},E.prototype.toString=function(a){return this.linkedList.toString(a)},E}(),NR=BR,Xd=function(a,y,x){y===void 0&&(y=[]);var b=y.filter(function(ae){return ae.source===a||ae.target===a});if(x==="target"){var z=function(oe){return oe.source===a};return b.filter(z).map(function(ae){return ae.target})}if(x==="source"){var ee=function(oe){return oe.target===a};return b.filter(ee).map(function(ae){return ae.source})}var re=function(oe){return oe.source===a?oe.target:oe.source};return b.map(re)},RR=function(a,y){return y.filter(function(x){return x.source===a})},iy=function(a,y){return y.filter(function(x){return x.source===a||x.target===a})},fw=function(a){a===void 0&&(a=0);var y="".concat(Math.random()).split(".")[1].substr(0,5),x="".concat(Math.random()).split(".")[1].substr(0,5);return"".concat(a,"-").concat(y).concat(x)};function FR(E){E===void 0&&(E={});var a=E,y=function(){},x=function(){var b={};return function(z){var ee=z.next,re=ee;return b[re]?!1:(b[re]=!0,!0)}}();return a.allowTraversal=E.allowTraversal||x,a.enter=E.enter||y,a.leave=E.leave||y,a}var kR=function(a,y,x,b){b===void 0&&(b=!0);var z=FR(x),ee=new NR,re=a.edges,ae=re===void 0?[]:re;ee.enqueue(y);for(var oe="",de=function(){var ye=ee.dequeue();z.enter({current:ye,previous:oe}),Xd(ye,ae,b?"target":void 0).forEach(function(De){z.allowTraversal({previous:oe,current:ye,next:De})&&ee.enqueue(De)}),z.leave({current:ye,previous:oe}),oe=ye};!ee.isEmpty();)de()},_R=kR,zR=function(a){for(var y=a.nodes,x=y===void 0?[]:y,b=a.edges,z=b===void 0?[]:b,ee=[],re={},ae=[],oe=function De(ke){ae.push(ke),re[ke.id]=!0;for(var ze=Xd(ke.id,z),We=function(Ye){var et=ze[Ye];if(!re[et]){var st=x.filter(function(ht){return ht.id===et});st.length>0&&De(st[0])}},Ve=0;Ve<ze.length;++Ve)We(Ve)},de=0;de<x.length;de++){var ge=x[de];if(!re[ge.id]){oe(ge);for(var ye=[];ae.length>0;)ye.push(ae.pop());ee.push(ye)}}return ee},hw=function(a){for(var y=a.nodes,x=y===void 0?[]:y,b=a.edges,z=b===void 0?[]:b,ee=[],re={},ae={},oe={},de=[],ge=0,ye=function We(Ve){ae[Ve.id]=ge,oe[Ve.id]=ge,ge+=1,ee.push(Ve),re[Ve.id]=!0;for(var Ze=Xd(Ve.id,z,"target").filter(function(mt){return x.map(function(dt){return dt.id}).indexOf(mt)>-1}),Ye=function(dt){var Ot=Ze[dt];if(!ae[Ot]&&ae[Ot]!==0){var _t=x.filter(function(wt){return wt.id===Ot});_t.length>0&&We(_t[0]),oe[Ve.id]=Math.min(oe[Ve.id],oe[Ot])}else re[Ot]&&(oe[Ve.id]=Math.min(oe[Ve.id],ae[Ot]))},et=0;et<Ze.length;et++)Ye(et);if(oe[Ve.id]===ae[Ve.id]){for(var st=[];ee.length>0;){var ht=ee.pop();if(re[ht.id]=!1,st.push(ht),ht===Ve)break}st.length>0&&de.push(st)}},De=0,ke=x;De<ke.length;De++){var ze=ke[De];!ae[ze.id]&&ae[ze.id]!==0&&ye(ze)}return de};function gw(E,a){return a?hw(E):zR(E)}var sm=function(a){var y={},x=a.nodes,b=x===void 0?[]:x,z=a.edges,ee=z===void 0?[]:z;return b.forEach(function(re){y[re.id]={degree:0,inDegree:0,outDegree:0}}),ee.forEach(function(re){y[re.source].degree++,y[re.source].outDegree++,y[re.target].degree++,y[re.target].inDegree++}),y},ux=sm,jR=function(a,y){var x=sm(a);return x[y]?sm(a)[y].inDegree:0},UR=function(a,y){var x=sm(a);return x[y]?sm(a)[y].outDegree:0};function WR(E){E===void 0&&(E={});var a=E,y=function(){},x=function(){var b={};return function(z){var ee=z.next;return b[ee]?!1:(b[ee]=!0,!0)}}();return a.allowTraversal=E.allowTraversal||x,a.enter=E.enter||y,a.leave=E.leave||y,a}function vw(E,a,y,x,b){b===void 0&&(b=!0),x.enter({current:a,previous:y});var z=E.edges,ee=z===void 0?[]:z;Xd(a,ee,b?"target":void 0).forEach(function(re){x.allowTraversal({previous:y,current:a,next:re})&&vw(E,re,a,x,b)}),x.leave({current:a,previous:y})}function mw(E,a,y,x){x===void 0&&(x=!0),vw(E,a,"",WR(y),x)}var GR=function(a){var y=null,x=a.nodes,b=x===void 0?[]:x,z={},ee={},re={},ae={};b.forEach(function(ge){ee[ge.id]=ge});for(var oe={enter:function(ye){var De=ye.current,ke=ye.previous;if(re[De]){y={};for(var ze=De,We=ke;We!==De;)y[ze]=We,ze=We,We=z[We];y[ze]=We}else re[De]=De,delete ee[De],z[De]=ke},leave:function(ye){var De=ye.current;ae[De]=De,delete re[De]},allowTraversal:function(ye){var De=ye.next;return y?!1:!ae[De]}};Object.keys(ee).length;){var de=Object.keys(ee)[0];mw(a,de,oe)}return y},pw=function(a,y,x){var b,z;x===void 0&&(x=!0);for(var ee=[],re=gw(a,!1),ae=0,oe=re;ae<oe.length;ae++){var de=oe[ae];if(de.length)for(var ge=de[0],ye=ge.id,De=[ge],ke=(b={},b[ye]=ge,b),ze=(z={},z[ye]=new Set,z);De.length>0;)for(var We=De.pop(),Ve=We.id,Ze=Xd(Ve,a.edges),Ye=function(ht){var mt,dt=Ze[ht],Ot=a.nodes.find(function(Tn){return Tn.id===dt});if(dt===Ve)ee.push((mt={},mt[dt]=We,mt));else if(!(dt in ze))ke[dt]=We,De.push(Ot),ze[dt]=new Set([We]);else if(!ze[Ve].has(Ot)){for(var _t=!0,wt=[Ot,We],$t=ke[Ve];ze[dt].size&&!ze[dt].has($t)&&(wt.push($t),$t!==ke[$t.id]);)$t=ke[$t.id];if(wt.push($t),y&&x?(_t=!1,wt.findIndex(function(Tn){return y.indexOf(Tn.id)>-1})>-1&&(_t=!0)):y&&!x&&wt.findIndex(function(Tn){return y.indexOf(Tn.id)>-1})>-1&&(_t=!1),_t){for(var gn={},Xt=1;Xt<wt.length;Xt+=1)gn[wt[Xt-1].id]=wt[Xt];wt.length&&(gn[wt[wt.length-1].id]=wt[0]),ee.push(gn)}ze[dt].add(We)}},et=0;et<Ze.length;et+=1)Ye(et)}return ee},yw=function(a,y,x){x===void 0&&(x=!0);for(var b=[],z=new Set,ee=[],re=[],ae={},oe={},de=function($t){for(var gn=[$t];gn.length>0;){var Xt=gn.pop();z.has(Xt)&&(z.delete(Xt),ee[Xt.id].forEach(function(Tn){gn.push(Tn)}),ee[Xt.id].clear())}},ge=function wt($t,gn,Xt){var Tn=!1;if(y&&x===!1&&y.indexOf($t.id)>-1)return Tn;b.push($t),z.add($t);for(var er=Xt[$t.id],En=0;En<er.length;En+=1){var yn=ae[er[En]];if(yn===gn){for(var Cn={},qn=1;qn<b.length;qn+=1)Cn[b[qn-1].id]=b[qn];b.length&&(Cn[b[b.length-1].id]=b[0]),re.push(Cn),Tn=!0}else z.has(yn)||wt(yn,gn,Xt)&&(Tn=!0)}if(Tn)de($t);else for(var En=0;En<er.length;En+=1){var yn=ae[er[En]];ee[yn.id].has($t)||ee[yn.id].add($t)}return b.pop(),Tn},ye=a.nodes,De=ye===void 0?[]:ye,ke=0;ke<De.length;ke+=1){var ze=De[ke],We=ze.id;oe[We]=ke,ae[ke]=ze}if(y&&x)for(var Ve=function($t){var gn=y[$t];oe[De[$t].id]=oe[gn],oe[gn]=0,ae[0]=De.find(function(Xt){return Xt.id===gn}),ae[oe[De[$t].id]]=De[$t]},ke=0;ke<y.length;ke++)Ve(ke);for(var Ze=function($t){for(var gn,Xt,Tn=1/0,er=0;er<$t.length;er+=1)for(var En=$t[er],yn=0;yn<En.length;yn++){var Cn=oe[En[yn].id];Cn<Tn&&(Tn=Cn,Xt=er)}for(var qn=$t[Xt],pn=[],er=0;er<qn.length;er+=1){var lr=qn[er];pn[lr.id]=[];for(var Jr=0,na=Xd(lr.id,a.edges,"target").filter(function(Wr){return qn.map(function(ya){return ya.id}).indexOf(Wr)>-1});Jr<na.length;Jr++){var Hr=na[Jr];Hr===lr.id&&!(x===!1&&y.indexOf(lr.id)>-1)?re.push((gn={},gn[lr.id]=lr,gn)):pn[lr.id].push(oe[Hr])}}return{component:qn,adjList:pn,minIdx:Tn}},Ye=0;Ye<De.length;){var et=De.filter(function(wt){return oe[wt.id]>=Ye}),st=hw({nodes:et,edges:a.edges}).filter(function(wt){return wt.length>1});if(st.length===0)break;var ht=Ze(st),mt=ht.minIdx,dt=ht.adjList,Ot=ht.component;if(Ot.length>1){Ot.forEach(function(wt){ee[wt.id]=new Set});var _t=ae[mt];if(y&&x&&y.indexOf(_t.id)===-1)return re;ge(_t,_t,dt),Ye=mt+1}else break}return re},HR=function(a,y,x,b){return b===void 0&&(b=!0),y?yw(a,x,b):pw(a,x,b)},Ew=GR,VR={}.toString,KR=function(E,a){return VR.call(E)==="[object "+a+"]"},oy=KR,cx=function(E){return oy(E,"Function")},dx=function(E){return Array.isArray?Array.isArray(E):oy(E,"Array")},ZR=function(E){var a=typeof E;return E!==null&&a==="object"||a==="function"};function QR(E,a){if(E){var y;if(dx(E))for(var x=0,b=E.length;x<b&&(y=a(E[x],x),y!==!1);x++);else if(ZR(E)){for(var z in E)if(E.hasOwnProperty(z)&&(y=a(E[z],z),y===!1))break}}}var Aw=QR,nee=Object.keys?function(E){return Object.keys(E)}:function(E){var a=[];return Aw(E,function(y,x){cx(E)&&x==="prototype"||a.push(x)}),a},ree=null;function aee(E,a){var y=keys(a),x=y.length;if(isNil(E))return!x;for(var b=0;b<x;b+=1){var z=y[b];if(a[z]!==E[z]||!(z in E))return!1}return!0}var iee=null,oee=function(E){if(!isObjectLike(E)||!isType(E,"Object"))return!1;if(Object.getPrototypeOf(E)===null)return!0;for(var a=E;Object.getPrototypeOf(a)!==null;)a=Object.getPrototypeOf(a);return Object.getPrototypeOf(E)===a},see=null;function lee(E,a){if(!isArray(E))return null;var y;if(isFunction(a)&&(y=a),isPlainObject(a)&&(y=function(b){return isMatch(b,a)}),y){for(var x=0;x<E.length;x+=1)if(y(E[x]))return E[x]}return null}var uee=null,cee=function(E,a){for(var y=null,x=0;x<E.length;x++){var b=E[x],z=b[a];if(!isNil(z)){isArray(z)?y=z[0]:y=z;break}}return y},dee=null,fee=function(E){if(!isArray(E))return[];for(var a=[],y=0;y<E.length;y++)a=a.concat(E[y]);return a},hee=null,YR=function(E,a){if(a===void 0&&(a=[]),!isArray(E))a.push(E);else for(var y=0;y<E.length;y+=1)YR(E[y],a);return a},gee=null,vee=function(E){if(isArray(E))return E.reduce(function(a,y){return Math.max(a,y)},E[0])},mee=function(E){if(isArray(E))return E.reduce(function(a,y){return Math.min(a,y)},E[0])},pee=function(E){var a=E.filter(function(ee){return!isNaN(ee)});if(!a.length)return{min:0,max:0};if(isArray(E[0])){for(var y=[],x=0;x<E.length;x++)y=y.concat(E[x]);a=y}var b=getMax(a),z=getMin(a);return{min:z,max:b}},yee=null,xw=Array.prototype,XR=xw.splice,JR=xw.indexOf,Eee=function(E){for(var a=[],y=1;y<arguments.length;y++)a[y-1]=arguments[y];for(var x=0;x<a.length;x++)for(var b=a[x],z=-1;(z=JR.call(E,b))>-1;)XR.call(E,z,1);return E},Aee=null,qR=Array.prototype.splice,xee=function(a,y){if(!isArrayLike(a))return[];for(var x=a?y.length:0,b=x-1;x--;){var z=void 0,ee=y[x];(x===b||ee!==z)&&(z=ee,qR.call(a,ee,1))}return a},See=null,bee=function(E,a,y){if(!isArray(E)&&!isPlainObject(E))return E;var x=y;return each(E,function(b,z){x=a(x,b,z)}),x},Cee=null,Pee=function(E,a){var y=[];if(!isArrayLike(E))return y;for(var x=-1,b=[],z=E.length;++x<z;){var ee=E[x];a(ee,x,E)&&(y.push(ee),b.push(x))}return pullAt(E,b),y},wee=null,fx=function(E){return oy(E,"String")};function Mee(E,a){var y;if(isFunction(a))y=function(b,z){return a(b)-a(z)};else{var x=[];isString(a)?x.push(a):isArray(a)&&(x=a),y=function(b,z){for(var ee=0;ee<x.length;ee+=1){var re=x[ee];if(b[re]>z[re])return 1;if(b[re]<z[re])return-1}return 0}}return E.sort(y),E}var Dee=null;function hx(E,a){a===void 0&&(a=new Map);var y=[];if(Array.isArray(E))for(var x=0,b=E.length;x<b;x++){var z=E[x];a.has(z)||(y.push(z),a.set(z,!0))}return y}var Iee=function(E,a){for(var y=[],x={},b=0;b<E.length;b++){var z=E[b],ee=z[a];if(!isNil(ee)){isArray(ee)||(ee=[ee]);for(var re=0;re<ee.length;re++){var ae=ee[re];x[ae]||(y.push(ae),x[ae]=!0)}}}return y};function Oee(E,a){return isArray(E)||isString(E)?E[0]===a:!1}var Tee=null;function Lee(E,a){return isArray(E)||isString(E)?E[E.length-1]===a:!1}var Bee=null,$R=Object.prototype.hasOwnProperty;function Nee(E,a){if(!a||!isArray(E))return{};for(var y={},x=isFunction(a)?a:function(re){return re[a]},b,z=0;z<E.length;z++){var ee=E[z];b=x(ee),$R.call(y,b)?y[b].push(ee):y[b]=[ee]}return y}var Ree=null;function Fee(E,a){if(!a)return{0:E};if(!isFunction(a)){var y=isArray(a)?a:a.replace(/\s+/g,"").split("*");a=function(x){for(var b="_",z=0,ee=y.length;z<ee;z++)b+=x[y[z]]&&x[y[z]].toString();return b}}return groupBy(E,a)}var kee=function(E,a){if(!a)return[E];var y=groupToMap(E,a),x=[];for(var b in y)x.push(y[b]);return x},Sw={};function _ee(E){var a=Sw[E];if(!a){for(var y=E.toString(16),x=y.length;x<6;x++)y="0"+y;a="#"+y,Sw[E]=a}return a}var zee=null;function jee(E){var a=0,y=0,x=0,b=0;return isArray(E)?E.length===1?a=y=x=b=E[0]:E.length===2?(a=x=E[0],y=b=E[1]):E.length===3?(a=E[0],y=b=E[1],x=E[2]):(a=E[0],y=E[1],x=E[2],b=E[3]):a=y=x=b=E,{r1:a,r2:y,r3:x,r4:b}}var Uee=null,eF=function(E){return oy(E,"Number")},tF=eF,Wee=function(E){return isNumber(E)&&E%1!==0},Gee=null,Hee=function(E){return isNumber(E)&&E%2===0},Vee=null,Kee=Number.isInteger?Number.isInteger:function(E){return tF(E)&&E%1===0},Zee=null,Qee=function(E){return isNumber(E)&&E<0},Yee=null,Xee=function(E){return isNumber(E)&&E%2!==0},Jee=null,qee=function(E){return isNumber(E)&&E>0},$ee=null,ete=function(E,a){if(isArray(E)){for(var y,x=-1/0,b=0;b<E.length;b++){var z=E[b],ee=isFunction(a)?a(z):z[a];ee>x&&(y=z,x=ee)}return y}},tte=function(E,a){if(isArray(E)){for(var y,x=1/0,b=0;b<E.length;b++){var z=E[b],ee=isFunction(a)?a(z):z[a];ee<x&&(y=z,x=ee)}return y}},nF=180/Math.PI,nte=function(E){return nF*E},rte=null,rF=Math.PI/180,ate=function(E){return rF*E},ite=null,ote=null,aF=Object.values?function(E){return Object.values(E)}:function(E){var a=[];return Aw(E,function(y,x){cx(E)&&x==="prototype"||a.push(y)}),a},iF=aF,ste=function(E,a){return contains(values(E),a)},oF={}.toString,lte=function(E){return oF.call(E).replace(/^\[object /,"").replace(/]$/,"")},ute=null,cte=function(E){return isType(E,"Arguments")},dte=null,fte=function(E){return isType(E,"Boolean")},hte=null,gte=function(E){return isType(E,"Date")},vte=null,mte=function(E){return isType(E,"Error")},pte=null;function yte(E){return isNumber(E)&&isFinite(E)}var sF=Object.prototype,Ete=function(E){var a=E&&E.constructor,y=typeof a=="function"&&a.prototype||sF;return E===y},Ate=null,xte=function(E){return isType(E,"RegExp")},Ste=null,bte=function(){for(var E=[],a=0;a<arguments.length;a++)E[a]=arguments[a];for(var y=E[0],x=1;x<E.length;x++){var b=E[x];isFunction(b)&&(b=b.prototype),mix(y.prototype,b)}},Cte=null,gx=function(E){if(typeof E!="object"||E===null)return E;var a;if(dx(E)){a=[];for(var y=0,x=E.length;y<x;y++)typeof E[y]=="object"&&E[y]!=null?a[y]=gx(E[y]):a[y]=E[y]}else{a={};for(var b in E)typeof E[b]=="object"&&E[b]!=null?a[b]=gx(E[b]):a[b]=E[b]}return a},lm=gx,lF=function(E,a){if(!cx(E))throw new TypeError("Expected a function");var y=function(){for(var x=[],b=0;b<arguments.length;b++)x[b]=arguments[b];var z=a?a.apply(this,x):x[0],ee=y.cache;if(ee.has(z))return ee.get(z);var re=E.apply(this,x);return ee.set(z,re),re};return y.cache=new Map,y},uF=5;function bw(E,a,y,x){y=y||0,x=x||uF;for(var b in a)if(a.hasOwnProperty(b)){var z=a[b];z!==null&&isPlainObject(z)?(isPlainObject(E[b])||(E[b]={}),y<x?bw(E[b],z,y+1,x):E[b]=a[b]):isArray(z)?(E[b]=[],E[b]=E[b].concat(z)):z!==void 0&&(E[b]=z)}}var Pte=function(E){for(var a=[],y=1;y<arguments.length;y++)a[y-1]=arguments[y];for(var x=0;x<a.length;x+=1)bw(E,a[x]);return E},wte=null,Mte=function(E,a,y,x){isFunction(a)||(y=a,a=E,E=function(){});var b=Object.create?function(ee,re){return Object.create(ee,{constructor:{value:re}})}:function(ee,re){function ae(){}ae.prototype=ee;var oe=new ae;return oe.constructor=re,oe},z=b(a.prototype,E);return E.prototype=mix(z,E.prototype),E.superclass=b(a.prototype,a),mix(z,y),mix(E,x),E},Dte=null,cF=Object.prototype.hasOwnProperty;function Ite(E){if(isNil(E))return!0;if(isArrayLike(E))return!E.length;var a=getType(E);if(a==="Map"||a==="Set")return!E.size;if(isPrototype(E))return!Object.keys(E).length;for(var y in E)if(cF.call(E,y))return!1;return!0}var Ote=null,dF=function(E){return typeof E=="object"&&E!==null},Cw=dF,fF=function(E){return E!==null&&typeof E!="function"&&isFinite(E.length)},Pw=fF,vx=function(E,a){if(E===a)return!0;if(!E||!a||fx(E)||fx(a))return!1;if(Pw(E)||Pw(a)){if(E.length!==a.length)return!1;for(var y=!0,x=0;x<E.length&&(y=vx(E[x],a[x]),!!y);x++);return y}if(Cw(E)||Cw(a)){var b=Object.keys(E),z=Object.keys(a);if(b.length!==z.length)return!1;for(var y=!0,x=0;x<b.length&&(y=vx(E[b[x]],a[b[x]]),!!y);x++);return y}return!1},hF=vx,Tte=function(E,a,y){return isFunction(y)?!!y(E,a):isEqual(E,a)},Lte=function(E,a,y){for(var x=0,b=isString(a)?a.split("."):a;E&&x<b.length;)E=E[b[x++]];return E===void 0||x<b.length?y:E},Bte=function(E,a,y){var x=E,b=isString(a)?a.split("."):a;return b.forEach(function(z,ee){ee<b.length-1?(isObject(x[z])||(x[z]=isNumber(b[ee+1])?[]:{}),x=x[z]):x[z]=y}),E},gF=Object.prototype.hasOwnProperty,Nte=function(E,a){if(E===null||!isPlainObject(E))return{};var y={};return each(a,function(x){gF.call(E,x)&&(y[x]=E[x])}),y},Rte=function(E,a){return reduce(E,function(y,x,b){return a.includes(b)||(y[b]=x),y},{})},sy={},Fte=function(E){return E=E||"g",sy[E]?sy[E]+=1:sy[E]=1,E+sy[E]},ly,kte=lF(function(E,a){a===void 0&&(a={});var y=a.fontSize,x=a.fontFamily,b=a.fontWeight,z=a.fontStyle,ee=a.fontVariant;return ly||(ly=document.createElement("canvas").getContext("2d")),ly.font=[z,ee,b,y+"px",x].join(" "),ly.measureText(fx(E)?E:"").width},function(E,a){return a===void 0&&(a={}),(0,Nt.pr)([E],iF(a)).join("")}),_te=function(E,a,y,x){x===void 0&&(x="...");var b=16,z=measureTextWidth(x,y),ee=isString(E)?E:toString(E),re=a,ae=[],oe,de;if(measureTextWidth(E,y)<=a)return E;for(;oe=ee.substr(0,b),de=measureTextWidth(oe,y),!(de+z>re&&de>re);)if(ae.push(oe),re-=de,ee=ee.substr(b),!ee)return ae.join("");for(;oe=ee.substr(0,1),de=measureTextWidth(oe,y),!(de+z>re);)if(ae.push(oe),re-=de,ee=ee.substr(1),!ee)return ae.join("");return""+ae.join("")+x},zte=function(){function E(){this.map={}}return E.prototype.has=function(a){return this.map[a]!==void 0},E.prototype.get=function(a,y){var x=this.map[a];return x===void 0?y:x},E.prototype.set=function(a,y){this.map[a]=y},E.prototype.clear=function(){this.map={}},E.prototype.delete=function(a){delete this.map[a]},E.prototype.size=function(){return Object.keys(this.map).length},E}(),jte=null,vF=function(a,y,x){for(var b=1/0,z,ee=0;ee<y.length;ee++){var re=y[ee].id;!x[re]&&a[re]<=b&&(b=a[re],z=y[ee])}return z},mF=function(a,y,x,b){var z=a.nodes,ee=z===void 0?[]:z,re=a.edges,ae=re===void 0?[]:re,oe=[],de={},ge={},ye={};ee.forEach(function(Ye,et){var st=Ye.id;oe.push(st),ge[st]=1/0,st===y&&(ge[st]=0)});for(var De=ee.length,ke=function(et){var st=vF(ge,ee,de),ht=st.id;if(de[ht]=!0,ge[ht]===1/0)return"continue";var mt=[];x?mt=RR(ht,ae):mt=iy(ht,ae),mt.forEach(function(dt){var Ot=dt.target,_t=dt.source,wt=Ot===ht?_t:Ot,$t=b&&dt[b]?dt[b]:1;ge[wt]>ge[st.id]+$t?(ge[wt]=ge[st.id]+$t,ye[wt]=[st.id]):ge[wt]===ge[st.id]+$t&&ye[wt].push(st.id)})},ze=0;ze<De;ze++)ke(ze);ye[y]=[y];var We={};for(var Ve in ge)ge[Ve]!==1/0&&ww(y,Ve,ye,We);var Ze={};for(var Ve in We)Ze[Ve]=We[Ve][0];return{length:ge,path:Ze,allPath:We}},uy=mF;function ww(E,a,y,x){if(E===a)return[E];if(x[a])return x[a];for(var b=[],z=0,ee=y[a];z<ee.length;z++){var re=ee[z],ae=ww(E,re,y,x);if(!ae)return;for(var oe=0,de=ae;oe<de.length;oe++){var ge=de[oe];dx(ge)?b.push((0,Nt.ev)((0,Nt.ev)([],ge,!0),[a],!1)):b.push([ge,a])}}return x[a]=b,x[a]}var mx=function(a,y,x,b,z){var ee=uy(a,y,b,z),re=ee.length,ae=ee.path,oe=ee.allPath;return{length:re[x],path:ae[x],allPath:oe[x]}},pF=function(a,y,x,b){var z;if(y===x)return[[y]];var ee=a.edges,re=ee===void 0?[]:ee,ae=[y],oe=(z={},z[y]=!0,z),de=[],ge=[],ye=b?Xd(y,re,"target"):Xd(y,re);for(de.push(ye);ae.length>0&&de.length>0;){var De=de[de.length-1];if(De.length){var ke=De.shift();ke&&(ae.push(ke),oe[ke]=!0,ye=b?Xd(ke,re,"target"):Xd(ke,re),de.push(ye.filter(function(Ve){return!oe[Ve]})))}else{var ze=ae.pop();oe[ze]=!1,de.pop();continue}if(ae[ae.length-1]===x){var We=ae.map(function(Ze){return Ze});ge.push(We);var ze=ae.pop();oe[ze]=!1,de.pop()}}return ge},yF=function(a,y){for(var x=ay(a,y),b=[],z=x.length,ee=0;ee<z;ee+=1){b[ee]=[];for(var re=0;re<z;re+=1)ee===re?b[ee][re]=0:x[ee][re]===0||!x[ee][re]?b[ee][re]=1/0:b[ee][re]=x[ee][re]}for(var ae=0;ae<z;ae+=1)for(var ee=0;ee<z;ee+=1)for(var re=0;re<z;re+=1)b[ee][re]>b[ee][ae]+b[ae][re]&&(b[ee][re]=b[ee][ae]+b[ae][re]);return b},px=yF,EF=function(a,y,x,b){y===void 0&&(y=!1),x===void 0&&(x="weight"),b===void 0&&(b=1e3);var z=a.nodes,ee=z===void 0?[]:z,re=a.edges,ae=re===void 0?[]:re,oe={},de={};ee.forEach(function(et,st){var ht=fw();et.clusterId=ht,oe[ht]={id:ht,nodes:[et]},de[et.id]={node:et,idx:st}});var ge=ay(a,y),ye=[],De={};ge.forEach(function(et,st){var ht=0,mt=ee[st].id;De[mt]={},et.forEach(function(dt,Ot){if(dt){ht+=dt;var _t=ee[Ot].id;De[mt][_t]=dt}}),ye.push(ht)});for(var ke=0,ze=function(){var st=!1;if(ee.forEach(function(ht){var mt={};Object.keys(De[ht.id]).forEach(function(Tn){var er=De[ht.id][Tn],En=de[Tn].node,yn=En.clusterId;mt[yn]||(mt[yn]=0),mt[yn]+=er});var dt=-1/0,Ot=[];if(Object.keys(mt).forEach(function(Tn){dt<mt[Tn]?(dt=mt[Tn],Ot=[Tn]):dt===mt[Tn]&&Ot.push(Tn)}),!(Ot.length===1&&Ot[0]===ht.clusterId)){var _t=Ot.indexOf(ht.clusterId);if(_t>=0&&Ot.splice(_t,1),Ot&&Ot.length){st=!0;var wt=oe[ht.clusterId],$t=wt.nodes.indexOf(ht);wt.nodes.splice($t,1);var gn=Math.floor(Math.random()*Ot.length),Xt=oe[Ot[gn]];Xt.nodes.push(ht),ht.clusterId=Xt.id}}}),!st)return"break";ke++};ke<b;){var We=ze();if(We==="break")break}Object.keys(oe).forEach(function(et){var st=oe[et];(!st.nodes||!st.nodes.length)&&delete oe[et]});var Ve=[],Ze={};ae.forEach(function(et){var st=et.source,ht=et.target,mt=et[x]||1,dt=de[st].node.clusterId,Ot=de[ht].node.clusterId,_t="".concat(dt,"---").concat(Ot);if(Ze[_t])Ze[_t].weight+=mt,Ze[_t].count++;else{var wt={source:dt,target:Ot,weight:mt,count:1};Ze[_t]=wt,Ve.push(wt)}});var Ye=[];return Object.keys(oe).forEach(function(et){Ye.push(oe[et])}),{clusters:Ye,clusterEdges:Ve}},AF=EF,xF=function(){function E(a){this.arr=a}return E.prototype.getArr=function(){return this.arr||[]},E.prototype.add=function(a){var y,x=a.arr;if(!(!((y=this.arr)===null||y===void 0)&&y.length))return new E(x);if(!(x!=null&&x.length))return new E(this.arr);if(this.arr.length===x.length){var b=[];for(var z in this.arr)b[z]=this.arr[z]+x[z];return new E(b)}},E.prototype.subtract=function(a){var y,x=a.arr;if(!(!((y=this.arr)===null||y===void 0)&&y.length))return new E(x);if(!(x!=null&&x.length))return new E(this.arr);if(this.arr.length===x.length){var b=[];for(var z in this.arr)b[z]=this.arr[z]-x[z];return new E(b)}},E.prototype.avg=function(a){var y=[];if(a!==0)for(var x in this.arr)y[x]=this.arr[x]/a;return new E(y)},E.prototype.negate=function(){var a=[];for(var y in this.arr)a[y]=-this.arr[y];return new E(a)},E.prototype.squareEuclideanDistance=function(a){var y,x=a.arr;if(!(!((y=this.arr)===null||y===void 0)&&y.length)||!(x!=null&&x.length))return 0;if(this.arr.length===x.length){var b=0;for(var z in this.arr)b+=Math.pow(this.arr[z]-a.arr[z],2);return b}},E.prototype.euclideanDistance=function(a){var y,x=a.arr;if(!(!((y=this.arr)===null||y===void 0)&&y.length)||!(x!=null&&x.length))return 0;if(this.arr.length===x.length){var b=0;for(var z in this.arr)b+=Math.pow(this.arr[z]-a.arr[z],2);return Math.sqrt(b)}else console.error("The two vectors are unequal in length.")},E.prototype.normalize=function(){var a=[],y=lm(this.arr);y.sort(function(ee,re){return ee-re});var x=y[y.length-1],b=y[0];for(var z in this.arr)a[z]=(this.arr[z]-b)/(x-b);return new E(a)},E.prototype.norm2=function(){var a;if(!(!((a=this.arr)===null||a===void 0)&&a.length))return 0;var y=0;for(var x in this.arr)y+=Math.pow(this.arr[x],2);return Math.sqrt(y)},E.prototype.dot=function(a){var y,x=a.arr;if(!(!((y=this.arr)===null||y===void 0)&&y.length)||!(x!=null&&x.length))return 0;if(this.arr.length===x.length){var b=0;for(var z in this.arr)b+=this.arr[z]*a.arr[z];return b}else console.error("The two vectors are unequal in length.")},E.prototype.equal=function(a){var y,x=a.arr;if(((y=this.arr)===null||y===void 0?void 0:y.length)!==(x==null?void 0:x.length))return!1;for(var b in this.arr)if(this.arr[b]!==x[b])return!1;return!0},E}(),Jd=xF,SF=/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/,bF=/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/,Mw=function(a,y){a===void 0&&(a=[]),y===void 0&&(y=100);var x={};a.forEach(function(z){z.properties&&Object.keys(z.properties).forEach(function(ee){if(ee==="id"||!"".concat(z.properties[ee]).match(SF)&&!"".concat(z.properties[ee]).match(bF)&&isNaN(Number(z.properties[ee]))){x.hasOwnProperty(ee)&&delete x[ee];return}x.hasOwnProperty(ee)?x[ee]+=1:x[ee]=1})});var b=Object.keys(x).sort(function(z,ee){return x[ee]-x[z]});return b.length<y?b:b.slice(0,y)},CF=function(a,y){return y.map(function(x){return a.hasOwnProperty(x)?a[x]:0})},PF=function(a){for(var y=Mw(a),x=[],b=0;b<a.length;b++)x[b]=CF(a[b].properties,y);return x},cy=function(a,y){y===void 0&&(y=void 0);var x=[];return a.forEach(function(b){y===void 0&&x.push(b),b[y]!==void 0&&x.push(b[y])}),x},Ute={getAllSortProperties:Mw,getPropertyWeight:PF,getAllProperties:cy},Ef;(function(E){E.EuclideanDistance="euclideanDistance"})(Ef||(Ef={}));var Dw=function(a,y,x){var b=[];y!=null&&y.length?b=y:(a.forEach(function(ee){b=b.concat(Object.keys(ee))}),b=hx(b));var z={};return b.forEach(function(ee){var re=[];a.forEach(function(ae){ae[ee]!==void 0&&ae[ee]!==""&&re.push(ae[ee])}),re.length&&!(x!=null&&x.includes(ee))&&(z[ee]=hx(re))}),z},dy=function(a,y,x){var b=Dw(a,y,x),z=[];if(!Object.keys(b).length)return z;var ee=Object.values(b),re=ee.every(function(ae){return ae.every(function(oe){return typeof oe=="number"})});return a.forEach(function(ae,oe){var de=[];Object.keys(b).forEach(function(ge){var ye=ae[ge],De=b[ge],ke=De.findIndex(function(Ve){return ye===Ve}),ze=[];if(re)ze.push(ye);else for(var We=0;We<De.length;We++)We===ke?ze.push(1):ze.push(0);de=de.concat(ze)}),z[oe]=de}),z},yx=function(a,y,x,b){x===void 0&&(x=Ef.EuclideanDistance);var z=0;switch(x){case Ef.EuclideanDistance:z=new Jd(a).euclideanDistance(new Jd(y));break;default:break}return z},Wte={getAllKeyValueMap:Dw,oneHot:dy,getDistance:yx},Iw=function(a,y,x,b){for(var z=y.length,ee=2*b,re=0,ae=0;ae<z;ae++)for(var oe=a[ae].clusterId,de=0;de<z;de++){var ge=a[de].clusterId;if(oe===ge){var ye=y[ae][de]||0,De=x[ae]||0,ke=x[de]||0;re+=ye-De*ke/ee}}return re*=1/ee,re},Ex=function(a,y){a===void 0&&(a=[]);for(var x=a.length,b=new Jd([]),z=0;z<x;z++)b=b.add(new Jd(y[z]));var ee=b.avg(x);ee.normalize();for(var re=0,z=0;z<x;z++){var ae=new Jd(y[z]),oe=ae.squareEuclideanDistance(ee);re+=oe}var de=[];a.forEach(function(){de.push([])});for(var z=0;z<x;z++){var ae=new Jd(y[z]);a[z].clusterInertial=0;for(var ge=0;ge<x;ge++){if(z===ge){de[z][ge]=0;continue}var ye=new Jd(y[ge]);de[z][ge]=ae.squareEuclideanDistance(ye),a[z].clusterInertial+=de[z][ge]}}for(var De=0,ke=2*x*re,z=0;z<x;z++)for(var ze=a[z].clusterId,ge=0;ge<x;ge++){var We=a[ge].clusterId;if(!(z===ge||ze!==We)){var Ve=a[z].clusterInertial*a[ge].clusterInertial/Math.pow(ke,2)-de[z][ge]/ke;De+=Ve}}return Number(De.toFixed(4))},wF=function(a,y,x,b,z,ee,re,ae,oe){y===void 0&&(y=!1),x===void 0&&(x="weight"),b===void 0&&(b=1e-4),z===void 0&&(z=!1),ee===void 0&&(ee=void 0),re===void 0&&(re=[]),ae===void 0&&(ae=["id"]),oe===void 0&&(oe=1);var de=a.nodes,ge=de===void 0?[]:de,ye=a.edges,De=ye===void 0?[]:ye,ke=[];if(z){ge.forEach(function(Cn,qn){Cn.properties=Cn.properties||{},Cn.originIndex=qn});var ze=[];ge.every(function(Cn){return Cn.hasOwnProperty("nodeType")})&&(ze=Array.from(new Set(ge.map(function(Cn){return Cn.nodeType}))),ge.forEach(function(Cn){Cn.properties.nodeType=ze.findIndex(function(qn){return qn===Cn.nodeType})}));var We=cy(ge,ee);ke=dy(We,re,ae)}var Ve=1,Ze={},Ye={};ge.forEach(function(Cn,qn){var pn=String(Ve++);Cn.clusterId=pn,Ze[pn]={id:pn,nodes:[Cn]},Ye[Cn.id]={node:Cn,idx:qn}});var et=ay(a,y),st=[],ht={},mt=0;et.forEach(function(Cn,qn){var pn=0,lr=ge[qn].id;ht[lr]={},Cn.forEach(function(Jr,na){if(Jr){pn+=Jr;var Hr=ge[na].id;ht[lr][Hr]=Jr,mt+=Jr}}),st.push(pn)}),mt/=2;for(var dt=1/0,Ot=1/0,_t=0,wt=[],$t={};;){z&&ge.every(function(Cn){return Cn.hasOwnProperty("properties")})?dt=Iw(ge,et,st,mt)+Ex(ge,ke)*oe:dt=Iw(ge,et,st,mt),_t===0&&(Ot=dt,wt=ge,$t=Ze);var gn=dt>0&&dt>Ot&&dt-Ot<b;if(dt>Ot&&(wt=ge.map(function(Cn){return{node:Cn,clusterId:Cn.clusterId}}),$t=lm(Ze),Ot=dt),gn||_t>100)break;_t++,Object.keys(Ze).forEach(function(Cn){var qn=0;De.forEach(function(pn){var lr=pn.source,Jr=pn.target,na=Ye[lr].node.clusterId,Hr=Ye[Jr].node.clusterId;(na===Cn&&Hr!==Cn||Hr===Cn&&na!==Cn)&&(qn=qn+(pn[x]||1))}),Ze[Cn].sumTot=qn}),ge.forEach(function(Cn,qn){var pn=Ze[Cn.clusterId],lr=0,Jr,na=st[qn]/(2*mt),Hr=0,Ar=pn.nodes;Ar.forEach(function(fo){var Po=Ye[fo.id].idx;Hr+=et[qn][Po]||0});var Wr=Hr-pn.sumTot*na,ya=Ar.filter(function(fo){return fo.id!==Cn.id}),Ra=[];ya.forEach(function(fo,Po){Ra[Po]=ke[fo.originIndex]});var Aa=Ex(ya,ke)*oe,co=ht[Cn.id];if(Object.keys(co).forEach(function(fo){var Po=Ye[fo].node,Es=Po.clusterId;if(Es!==Cn.clusterId){var as=Ze[Es],yi=as.nodes;if(!(!yi||!yi.length)){var Ri=0;yi.forEach(function(xo){var Qi=Ye[xo.id].idx;Ri+=et[qn][Qi]||0});var Sa=Ri-as.sumTot*na,Fa=yi.concat([Cn]),ni=[];Fa.forEach(function(xo,Qi){ni[Qi]=ke[xo.originIndex]});var Ki=Ex(Fa,ke)*oe,Oa=Sa-Wr;z&&(Oa=Sa+Ki-(Wr+Aa)),Oa>lr&&(lr=Oa,Jr=as)}}}),lr>0){Jr.nodes.push(Cn);var So=Cn.clusterId;Cn.clusterId=Jr.id;var ti=pn.nodes.indexOf(Cn);pn.nodes.splice(ti,1);var qi=0,Gi=0;De.forEach(function(fo){var Po=fo.source,Es=fo.target,as=Ye[Po].node.clusterId,yi=Ye[Es].node.clusterId;(as===Jr.id&&yi!==Jr.id||yi===Jr.id&&as!==Jr.id)&&(qi=qi+(fo[x]||1)),(as===So&&yi!==So||yi===So&&as!==So)&&(Gi=Gi+(fo[x]||1))}),Jr.sumTot=qi,pn.sumTot=Gi}})}var Xt={},Tn=0;Object.keys($t).forEach(function(Cn){var qn=$t[Cn];if(!qn.nodes||!qn.nodes.length){delete $t[Cn];return}var pn=String(Tn+1);pn!==Cn&&(qn.id=pn,qn.nodes=qn.nodes.map(function(lr){return{id:lr.id,clusterId:pn}}),$t[pn]=qn,Xt[Cn]=pn,delete $t[Cn],Tn++)}),wt.forEach(function(Cn){var qn=Cn.node,pn=Cn.clusterId;qn&&(qn.clusterId=pn,qn.clusterId&&Xt[qn.clusterId]&&(qn.clusterId=Xt[qn.clusterId]))});var er=[],En={};De.forEach(function(Cn){var qn=Cn.source,pn=Cn.target,lr=Cn[x]||1,Jr=Ye[qn].node.clusterId,na=Ye[pn].node.clusterId;if(!(!Jr||!na)){var Hr="".concat(Jr,"---").concat(na);if(En[Hr])En[Hr].weight+=lr,En[Hr].count++;else{var Ar={source:Jr,target:na,weight:lr,count:1};En[Hr]=Ar,er.push(Ar)}}});var yn=[];return Object.keys($t).forEach(function(Cn){yn.push($t[Cn])}),{clusters:yn,clusterEdges:er}},Ow=wF,MF=function(a,y,x,b,z,ee,re,ae){return y===void 0&&(y=!1),x===void 0&&(x="weight"),b===void 0&&(b=1e-4),z===void 0&&(z=void 0),ee===void 0&&(ee=[]),re===void 0&&(re=["id"]),ae===void 0&&(ae=1),Ow(a,y,x,b,!0,z,ee,re,ae)},DF=MF,IF=function(a,y){var x;y===void 0&&(y=1);for(var b=lm(a),z=b.nodes,ee=z===void 0?[]:z,re=b.edges,ae=re===void 0?[]:re,oe=function(){var ye=ux({nodes:ee,edges:ae}),De=Object.keys(ye);De.sort(function(We,Ve){var Ze,Ye;return((Ze=ye[We])===null||Ze===void 0?void 0:Ze.degree)-((Ye=ye[Ve])===null||Ye===void 0?void 0:Ye.degree)});var ke=De[0];if(!ee.length||((x=ye[ke])===null||x===void 0?void 0:x.degree)>=y)return"break";var ze=ee.findIndex(function(We){return We.id===ke});ee.splice(ze,1),ae=ae.filter(function(We){return!(We.source===ke||We.target===ke)})};;){var de=oe();if(de==="break")break}return{nodes:ee,edges:ae}},OF=IF,Tw=function(a,y,x){var b=[];switch(a){case Ef.EuclideanDistance:b=y[x];break;default:b=[];break}return b},TF=function(a,y,x,b,z,ee){y===void 0&&(y=3),x===void 0&&(x=void 0),b===void 0&&(b=[]),z===void 0&&(z=["id"]),ee===void 0&&(ee=Ef.EuclideanDistance);var re=a.nodes,ae=re===void 0?[]:re,oe=a.edges,de=oe===void 0?[]:oe,ge={clusters:[{id:"0",nodes:ae}],clusterEdges:[]};if(ee===Ef.EuclideanDistance&&!ae.every(function(pn){return pn.hasOwnProperty(x)}))return ge;var ye=[],De=[];if(ee===Ef.EuclideanDistance&&(ye=cy(ae,x),De=dy(ye,b,z)),!De.length)return ge;for(var ke=hx(De.map(function(pn){return pn.join("")})),ze=Math.min(y,ae.length,ke.length),We=0;We<ae.length;We++)ae[We].originIndex=We;for(var Ve=[],Ze=[],Ye=[],We=0;We<ze;We++)if(We===0){var et=Math.floor(Math.random()*ae.length);switch(ee){case Ef.EuclideanDistance:Ve[We]=De[et];break;default:Ve[We]=[];break}Ze.push(et),Ye[We]=[ae[et]],ae[et].clusterId=String(We)}else{for(var st=-1/0,ht=0,mt=function(Jr){if(!Ze.includes(Jr)){for(var na=0,Hr=0;Hr<Ve.length;Hr++){var Ar=0;switch(ee){case Ef.EuclideanDistance:Ar=yx(De[ae[Jr].originIndex],Ve[Hr],ee);break;default:break}na+=Ar}var Wr=na/Ve.length;Wr>st&&!Ve.find(function(ya){return hF(ya,Tw(ee,De,ae[Jr].originIndex))})&&(st=Wr,ht=Jr)}},dt=0;dt<ae.length;dt++)mt(dt);Ve[We]=Tw(ee,De,ht),Ze.push(ht),Ye[We]=[ae[ht]],ae[ht].clusterId=String(We)}for(var Ot=0;;){for(var We=0;We<ae.length;We++){var _t=0,wt=1/0;if(!(Ot===0&&Ze.includes(We))){for(var $t=0;$t<Ve.length;$t++){var gn=0;switch(ee){case Ef.EuclideanDistance:gn=yx(De[We],Ve[$t],ee);break;default:break}gn<wt&&(wt=gn,_t=$t)}if(ae[We].clusterId!==void 0)for(var Xt=Ye[Number(ae[We].clusterId)].length-1;Xt>=0;Xt--)Ye[Number(ae[We].clusterId)][Xt].id===ae[We].id&&Ye[Number(ae[We].clusterId)].splice(Xt,1);ae[We].clusterId=String(_t),Ye[_t].push(ae[We])}}for(var Tn=!1,We=0;We<Ye.length;We++){for(var er=Ye[We],En=new Jd([]),$t=0;$t<er.length;$t++)En=En.add(new Jd(De[er[$t].originIndex]));var yn=En.avg(er.length);yn.equal(new Jd(Ve[We]))||(Tn=!0,Ve[We]=yn.getArr())}if(Ot++,ae.every(function(pn){return pn.clusterId!==void 0})&&Tn||Ot>=1e3)break}var Cn=[],qn={};return de.forEach(function(pn){var lr,Jr,na=pn.source,Hr=pn.target,Ar=(lr=ae.find(function(Aa){return Aa.id===na}))===null||lr===void 0?void 0:lr.clusterId,Wr=(Jr=ae.find(function(Aa){return Aa.id===Hr}))===null||Jr===void 0?void 0:Jr.clusterId,ya="".concat(Ar,"---").concat(Wr);if(qn[ya])qn[ya].count++;else{var Ra={source:Ar,target:Wr,count:1};qn[ya]=Ra,Cn.push(Ra)}}),{clusters:Ye,clusterEdges:Cn}},LF=TF,BF=function(a,y){var x=new Jd(y),b=x.norm2(),z=new Jd(a),ee=z.norm2(),re=x.dot(z),ae=b*ee,oe=ae?re/ae:0;return oe},Lw=BF,NF=function(a,y,x,b,z){a===void 0&&(a=[]),x===void 0&&(x=void 0),b===void 0&&(b=[]),z===void 0&&(z=[]);var ee=lm(a.filter(function(ye){return ye.id!==y.id})),re=a.findIndex(function(ye){return ye.id===y.id}),ae=cy(a,x),oe=dy(ae,b,z),de=oe[re],ge=[];return ee.forEach(function(ye,De){if(ye.id!==y.id){var ke=oe[De],ze=Lw(ke,de);ge.push(ze),ye.cosineSimilarity=ze}}),ee.sort(function(ye,De){return De.cosineSimilarity-ye.cosineSimilarity}),{allCosineSimilarity:ge,similarNodes:ee}},RF=NF,FF=function(){function E(a){this.count=a.length,this.parent={};for(var y=0,x=a;y<x.length;y++){var b=x[y];this.parent[b]=b}}return E.prototype.find=function(a){for(;this.parent[a]!==a;)a=this.parent[a];return a},E.prototype.union=function(a,y){var x=this.find(a),b=this.find(y);x!==b&&(x<b?(this.parent[y]!==y&&this.union(this.parent[y],a),this.parent[y]=this.parent[a]):(this.parent[a]!==a&&this.union(this.parent[a],y),this.parent[a]=this.parent[y]))},E.prototype.connected=function(a,y){return this.find(a)===this.find(y)},E}(),kF=FF,_F=function(a,y){return a-y},zF=function(){function E(a){a===void 0&&(a=_F),this.compareFn=a,this.list=[]}return E.prototype.getLeft=function(a){return 2*a+1},E.prototype.getRight=function(a){return 2*a+2},E.prototype.getParent=function(a){return a===0?null:Math.floor((a-1)/2)},E.prototype.isEmpty=function(){return this.list.length<=0},E.prototype.top=function(){return this.isEmpty()?void 0:this.list[0]},E.prototype.delMin=function(){var a=this.top(),y=this.list.pop();return this.list.length>0&&(this.list[0]=y,this.moveDown(0)),a},E.prototype.insert=function(a){if(a!==null){this.list.push(a);var y=this.list.length-1;return this.moveUp(y),!0}return!1},E.prototype.moveUp=function(a){for(var y=this.getParent(a);a&&a>0&&this.compareFn(this.list[y],this.list[a])>0;){var x=this.list[y];this.list[y]=this.list[a],this.list[a]=x,a=y,y=this.getParent(a)}},E.prototype.moveDown=function(a){var y,x=a,b=this.getLeft(a),z=this.getRight(a),ee=this.list.length;b!==null&&b<ee&&this.compareFn(this.list[x],this.list[b])>0?x=b:z!==null&&z<ee&&this.compareFn(this.list[x],this.list[z])>0&&(x=z),a!==x&&(y=[this.list[x],this.list[a]],this.list[a]=y[0],this.list[x]=y[1],this.moveDown(x))},E}(),jF=zF,UF=function(a,y){var x=[],b=a.nodes,z=b===void 0?[]:b,ee=a.edges,re=ee===void 0?[]:ee;if(z.length===0)return x;var ae=z[0],oe=new Set;oe.add(ae);var de=function(We,Ve){return y?We.weight-Ve.weight:0},ge=new jF(de);for(iy(ae.id,re).forEach(function(ze){ge.insert(ze)});!ge.isEmpty();){var ye=ge.delMin(),De=ye.source,ke=ye.target;oe.has(De)&&oe.has(ke)||(x.push(ye),oe.has(De)||(oe.add(De),iy(De,re).forEach(function(ze){ge.insert(ze)})),oe.has(ke)||(oe.add(ke),iy(ke,re).forEach(function(ze){ge.insert(ze)})))}return x},Bw=function(a,y){var x=[],b=a.nodes,z=b===void 0?[]:b,ee=a.edges,re=ee===void 0?[]:ee;if(z.length===0)return x;var ae=re.map(function(De){return De});y&&ae.sort(function(De,ke){return De.weight-ke.weight});for(var oe=new kF(z.map(function(De){return De.id}));ae.length>0;){var de=ae.shift(),ge=de.source,ye=de.target;oe.connected(ge,ye)||(x.push(de),oe.union(ge,ye))}return x},WF=function(a,y,x){var b={prim:UF,kruskal:Bw};return x?b[x](a,y):Bw(a,y)},GF=WF,HF=function(a,y,x){typeof y!="number"&&(y=1e-6),typeof x!="number"&&(x=.85);for(var b=1,z=0,ee=1e3,re=a.nodes,ae=re===void 0?[]:re,oe=a.edges,de=oe===void 0?[]:oe,ge=ae.length,ye,De={},ke={},ze=0;ze<ge;++ze){var We=ae[ze],Ve=We.id;De[Ve]=1/ge,ke[Ve]=1/ge}for(var Ze=ux(a);ee>0&&b>y;){z=0;for(var ze=0;ze<ge;++ze){var We=ae[ze],Ve=We.id;if(ye=0,Ze[We.id].inDegree===0)De[Ve]=0;else{for(var Ye=Xd(Ve,de,"source"),et=0;et<Ye.length;++et){var st=Ye[et],ht=Ze[st].outDegree;ht>0&&(ye+=ke[st]/ht)}De[Ve]=x*ye,z+=De[Ve]}}z=(1-z)/ge,b=0;for(var ze=0;ze<ge;++ze){var We=ae[ze],Ve=We.id;ye=De[Ve]+z,b+=Math.abs(ye-ke[Ve]),ke[Ve]=ye}ee-=1}return ke},Nw=HF,VF=-1,fy=-1,Rw="-1",Qf="-1",Fw=-1,Gte="-1",kw=function(){function E(a,y,x,b){a===void 0&&(a=VF),y===void 0&&(y=fy),x===void 0&&(x=fy),b===void 0&&(b=Rw),this.id=a,this.from=y,this.to=x,this.label=b}return E}(),KF=function(){function E(a,y){a===void 0&&(a=fy),y===void 0&&(y=Qf),this.id=a,this.label=y,this.edges=[],this.edgeMap={}}return E.prototype.addEdge=function(a){this.edges.push(a),this.edgeMap[a.id]=a},E}(),_w=function(){function E(a,y,x){a===void 0&&(a=fy),y===void 0&&(y=!0),x===void 0&&(x=!1),this.id=a,this.edgeIdAutoIncrease=y,this.edges=[],this.nodes=[],this.nodeMap={},this.edgeMap={},this.nodeLabelMap={},this.edgeLabelMap={},this.counter=0,this.directed=x}return E.prototype.getNodeNum=function(){return this.nodes.length},E.prototype.addNode=function(a,y){if(!this.nodeMap[a]){var x=new KF(a,y);this.nodes.push(x),this.nodeMap[a]=x,this.nodeLabelMap[y]||(this.nodeLabelMap[y]=[]),this.nodeLabelMap[y].push(a)}},E.prototype.addEdge=function(a,y,x,b){if((this.edgeIdAutoIncrease||a===void 0)&&(a=this.counter++),!(this.nodeMap[y]&&this.nodeMap[x]&&this.nodeMap[x].edgeMap[a])){var z=new kw(a,y,x,b);if(this.edges.push(z),this.edgeMap[a]=z,this.nodeMap[y].addEdge(z),this.edgeLabelMap[b]||(this.edgeLabelMap[b]=[]),this.edgeLabelMap[b].push(z),!this.directed){var ee=new kw(a,x,y,b);this.nodeMap[x].addEdge(ee),this.edgeLabelMap[b].push(ee)}}},E}(),qg=function(){function E(a,y,x,b,z){this.fromNode=a,this.toNode=y,this.nodeEdgeNodeLabel={nodeLabel1:x||Qf,edgeLabel:b||Rw,nodeLabel2:z||Qf}}return E.prototype.equalTo=function(a){return this.fromNode===a.formNode&&this.toNode===a.toNode&&this.nodeEdgeNodeLabel===a.nodeEdgeNodeLabel},E.prototype.notEqualTo=function(a){return!this.equalTo(a)},E}(),zw=function(){function E(){this.rmpath=[],this.dfsEdgeList=[]}return E.prototype.equalTo=function(a){var y=this.dfsEdgeList.length,x=a.length;if(y!==x)return!1;for(var b=0;b<y;b++)if(this.dfsEdgeList[b]!==a[b])return!1;return!0},E.prototype.notEqualTo=function(a){return!this.equalTo(a)},E.prototype.pushBack=function(a,y,x,b,z){return this.dfsEdgeList.push(new qg(a,y,x,b,z)),this.dfsEdgeList},E.prototype.toGraph=function(a,y){a===void 0&&(a=Fw),y===void 0&&(y=!1);var x=new _w(a,!0,y);return this.dfsEdgeList.forEach(function(b){var z=b.fromNode,ee=b.toNode,re=b.nodeEdgeNodeLabel,ae=re.nodeLabel1,oe=re.edgeLabel,de=re.nodeLabel2;ae!==Qf&&x.addNode(z,ae),de!==Qf&&x.addNode(ee,de),ae!==Qf&&de!==ae&&x.addEdge(void 0,z,ee,oe)}),x},E.prototype.buildRmpath=function(){this.rmpath=[];for(var a=void 0,y=this.dfsEdgeList.length,x=y-1;x>=0;x--){var b=this.dfsEdgeList[x],z=b.fromNode,ee=b.toNode;z<ee&&(a===void 0||ee===a)&&(this.rmpath.push(x),a=z)}return this.rmpath},E.prototype.getNodeNum=function(){var a={};return this.dfsEdgeList.forEach(function(y){a[y.fromNode]||(a[y.fromNode]=!0),a[y.toNode]||(a[y.toNode]=!0)}),Object.keys(a).length},E}(),hy=function(){function E(a){if(this.his={},this.nodesUsed={},this.edgesUsed={},this.edges=[],!!a){for(;a;){var y=a.edge;this.edges.push(y),this.nodesUsed[y.from]=1,this.nodesUsed[y.to]=1,this.edgesUsed[y.id]=1,a=a.preNode}this.edges=this.edges.reverse()}}return E.prototype.hasNode=function(a){return this.nodesUsed[a.id]===1},E.prototype.hasEdge=function(a){return this.edgesUsed[a.id]===1},E}(),ZF=function(){function E(a){var y=a.graphs,x=a.minSupport,b=x===void 0?2:x,z=a.minNodeNum,ee=z===void 0?1:z,re=a.maxNodeNum,ae=re===void 0?4:re,oe=a.top,de=oe===void 0?10:oe,ge=a.directed,ye=ge===void 0?!1:ge,De=a.verbose,ke=De===void 0?!1:De;this.graphs=y,this.dfsCode=new zw,this.support=0,this.frequentSize1Subgraphs=[],this.frequentSubgraphs=[],this.minSupport=b,this.top=de,this.directed=ye,this.counter=0,this.maxNodeNum=ae,this.minNodeNum=ee,this.verbose=ke,this.maxNodeNum<this.minNodeNum&&(this.maxNodeNum=this.minNodeNum),this.reportDF=[]}return E.prototype.findForwardRootEdges=function(a,y){var x=this,b=[],z=a.nodeMap;return y.edges.forEach(function(ee){(x.directed||y.label<=z[ee.to].label)&&b.push(ee)}),b},E.prototype.findBackwardEdge=function(a,y,x,b){if(!this.directed&&y===x)return null;for(var z=a.nodeMap,ee=z[x.to],re=ee.edges,ae=re.length,oe=0;oe<ae;oe++){var de=re[oe];if(!(b.hasEdge(de)||de.to!==y.from)){if(this.directed){if(z[y.from].label<z[x.to].label||z[y.from].label===z[x.to].label&&y.label<=de.label)return de}else if(y.label<de.label||y.label===de.label&&z[y.to].label<=z[x.to].label)return de}}return null},E.prototype.findForwardPureEdges=function(a,y,x,b){for(var z=[],ee=y.to,re=a.nodeMap[ee].edges,ae=re.length,oe=0;oe<ae;oe++){var de=re[oe],ge=a.nodeMap[de.to];x<=ge.label&&!b.hasNode(ge)&&z.push(de)}return z},E.prototype.findForwardRmpathEdges=function(a,y,x,b){for(var z=[],ee=a.nodeMap,re=ee[y.to].label,ae=ee[y.from],oe=ae.edges,de=oe.length,ge=0;ge<de;ge++){var ye=oe[ge],De=ee[ye.to].label;y.to===ye.to||x>De||b.hasNode(ee[ye.to])||(y.label<ye.label||y.label===ye.label&&re<=De)&&z.push(ye)}return z},E.prototype.getSupport=function(a){var y={};return a.forEach(function(x){y[x.graphId]||(y[x.graphId]=!0)}),Object.keys(y).length},E.prototype.findMinLabel=function(a){var y=void 0;return Object.keys(a).forEach(function(x){var b=a[x],z=b.nodeLabel1,ee=b.edgeLabel,re=b.nodeLabel2;if(!y){y={nodeLabel1:z,edgeLabel:ee,nodeLabel2:re};return}(z<y.nodeLabel1||z===y.nodeLabel1&&ee<y.edgeLabel||z===y.nodeLabel1&&ee===y.edgeLabel&&re<y.nodeLabel2)&&(y={nodeLabel1:z,edgeLabel:ee,nodeLabel2:re})}),y},E.prototype.isMin=function(){var a=this,y=this.dfsCode;if(this.verbose&&console.log("isMin checking",y),y.dfsEdgeList.length===1)return!0;var x=this.directed,b=y.toGraph(Fw,x),z=b.nodeMap,ee=new zw,re={};b.nodes.forEach(function(ge){var ye=a.findForwardRootEdges(b,ge);ye.forEach(function(De){var ke=z[De.to],ze="".concat(ge.label,"-").concat(De.label,"-").concat(ke.label);re[ze]||(re[ze]={projected:[],nodeLabel1:ge.label,edgeLabel:De.label,nodeLabel2:ke.label});var We={graphId:b.id,edge:De,preNode:null};re[ze].projected.push(We)})});var ae=this.findMinLabel(re);if(ae){ee.dfsEdgeList.push(new qg(0,1,ae.nodeLabel1,ae.edgeLabel,ae.nodeLabel2));var oe=function ge(ye){for(var De=ee.buildRmpath(),ke=ee.dfsEdgeList[0].nodeEdgeNodeLabel.nodeLabel1,ze=ee.dfsEdgeList[De[0]].toNode,We={},Ve=!1,Ze=0,Ye=x?-1:0,et=function(En){if(Ve)return"break";ye.forEach(function(yn){var Cn=new hy(yn),qn=a.findBackwardEdge(b,Cn.edges[De[En]],Cn.edges[De[0]],Cn);qn&&(We[qn.label]||(We[qn.label]={projected:[],edgeLabel:qn.label}),We[qn.label].projected.push({graphId:b.id,edge:We,preNode:yn}),Ze=ee.dfsEdgeList[De[En]].fromNode,Ve=!0)})},st=De.length-1;st>Ye;st--){var ht=et(st);if(ht==="break")break}if(Ve){var mt=a.findMinLabel(We);ee.dfsEdgeList.push(new qg(ze,Ze,Qf,mt.edgeLabel,Qf));var dt=ee.dfsEdgeList.length-1;return a.dfsCode.dfsEdgeList[dt]!==ee.dfsEdgeList[dt]?!1:ge(We[mt.edgeLabel].projected)}var Ot={};Ve=!1;var _t=0;ye.forEach(function(er){var En=new hy(er),yn=a.findForwardPureEdges(b,En.edges[De[0]],ke,En);yn.length>0&&(Ve=!0,_t=ze,yn.forEach(function(Cn){var qn="".concat(Cn.label,"-").concat(z[Cn.to].label);Ot[qn]||(Ot[qn]={projected:[],edgeLabel:Cn.label,nodeLabel2:z[Cn.to].label}),Ot[qn].projected.push({graphId:b.id,edge:Cn,preNode:er})}))});for(var wt=De.length,$t=function(En){if(Ve)return"break";var yn=De[En];ye.forEach(function(Cn){var qn=new hy(Cn),pn=a.findForwardRmpathEdges(b,qn.edges[yn],ke,qn);pn.length>0&&(Ve=!0,_t=ee.dfsEdgeList[yn].fromNode,pn.forEach(function(lr){var Jr="".concat(lr.label,"-").concat(z[lr.to].label);Ot[Jr]||(Ot[Jr]={projected:[],edgeLabel:lr.label,nodeLabel2:z[lr.to].label}),Ot[Jr].projected.push({graphId:b.id,edge:lr,preNode:Cn})}))})},st=0;st<wt;st++){var gn=$t(st);if(gn==="break")break}if(!Ve)return!0;var Xt=a.findMinLabel(Ot);ee.dfsEdgeList.push(new qg(_t,ze+1,Qf,Xt.edgeLabel,Xt.nodeLabel2));var Tn=ee.dfsEdgeList.length-1;return y.dfsEdgeList[Tn]!==ee.dfsEdgeList[Tn]?!1:ge(Ot["".concat(Xt.edgeLabel,"-").concat(Xt.nodeLabel2)].projected)},de="".concat(ae.nodeLabel1,"-").concat(ae.edgeLabel,"-").concat(ae.nodeLabel2);return oe(re[de].projected)}},E.prototype.report=function(){if(!(this.dfsCode.getNodeNum()<this.minNodeNum)){this.counter++;var a=this.dfsCode.toGraph(this.counter,this.directed);this.frequentSubgraphs.push(lm(a))}},E.prototype.subGraphMining=function(a){var y=this,x=this.getSupport(a);if(!(x<this.minSupport)&&this.isMin()){this.report();var b=this.dfsCode.getNodeNum(),z=this.dfsCode.buildRmpath(),ee=this.dfsCode.dfsEdgeList[z[0]].toNode,re=this.dfsCode.dfsEdgeList[0].nodeEdgeNodeLabel.nodeLabel1,ae={},oe={};a.forEach(function(de){for(var ge=y.graphs[de.graphId],ye=ge.nodeMap,De=new hy(de),ke=z.length-1;ke>=0;ke--){var ze=y.findBackwardEdge(ge,De.edges[z[ke]],De.edges[z[0]],De);if(ze){var We="".concat(y.dfsCode.dfsEdgeList[z[ke]].fromNode,"-").concat(ze.label);oe[We]||(oe[We]={projected:[],toNodeId:y.dfsCode.dfsEdgeList[z[ke]].fromNode,edgeLabel:ze.label}),oe[We].projected.push({graphId:de.graphId,edge:ze,preNode:de})}}if(!(b>=y.maxNodeNum)){var Ve=y.findForwardPureEdges(ge,De.edges[z[0]],re,De);Ve.forEach(function(Ye){var et="".concat(ee,"-").concat(Ye.label,"-").concat(ye[Ye.to].label);ae[et]||(ae[et]={projected:[],fromNodeId:ee,edgeLabel:Ye.label,nodeLabel2:ye[Ye.to].label}),ae[et].projected.push({graphId:de.graphId,edge:Ye,preNode:de})});for(var Ze=function(et){var st=y.findForwardRmpathEdges(ge,De.edges[z[et]],re,De);st.forEach(function(ht){var mt="".concat(y.dfsCode.dfsEdgeList[z[et]].fromNode,"-").concat(ht.label,"-").concat(ye[ht.to].label);ae[mt]||(ae[mt]={projected:[],fromNodeId:y.dfsCode.dfsEdgeList[z[et]].fromNode,edgeLabel:ht.label,nodeLabel2:ye[ht.to].label}),ae[mt].projected.push({graphId:de.graphId,edge:ht,preNode:de})})},ke=0;ke<z.length;ke++)Ze(ke)}}),Object.keys(oe).forEach(function(de){var ge=oe[de],ye=ge.toNodeId,De=ge.edgeLabel;y.dfsCode.dfsEdgeList.push(new qg(ee,ye,"-1",De,"-1")),y.subGraphMining(oe[de].projected),y.dfsCode.dfsEdgeList.pop()}),Object.keys(ae).forEach(function(de){var ge=ae[de],ye=ge.fromNodeId,De=ge.edgeLabel,ke=ge.nodeLabel2;y.dfsCode.dfsEdgeList.push(new qg(ye,ee+1,Qf,De,ke)),y.subGraphMining(ae[de].projected),y.dfsCode.dfsEdgeList.pop()})}},E.prototype.generate1EdgeFrequentSubGraphs=function(){var a=this.graphs,y=this.directed,x=this.minSupport,b=this.frequentSize1Subgraphs,z={},ee={},re={},ae={};return Object.keys(a).forEach(function(oe){var de=a[oe],ge=de.nodeMap;de.nodes.forEach(function(ye,De){var ke=ye.label,ze="".concat(oe,"-").concat(ke);if(!re[ze]){var We=z[ke]||0;We++,z[ke]=We}re[ze]={graphKey:oe,label:ke},ye.edges.forEach(function(Ve){var Ze=ke,Ye=ge[Ve.to].label;if(!y&&Ze>Ye){var et=Ye;Ye=Ze,Ze=et}var st=Ve.label,ht="".concat(oe,"-").concat(Ze,"-").concat(st,"-").concat(Ye),mt="".concat(Ze,"-").concat(st,"-").concat(Ye);if(!ee[mt]){var dt=ee[mt]||0;dt++,ee[mt]=dt}ae[ht]={graphId:oe,nodeLabel1:Ze,edgeLabel:st,nodeLabel2:Ye}})})}),Object.keys(z).forEach(function(oe){var de=z[oe];if(!(de<x)){var ge={nodes:[],edges:[]};ge.nodes.push({id:"0",label:oe}),b.push(ge)}}),b},E.prototype.run=function(){var a=this;if(this.frequentSize1Subgraphs=this.generate1EdgeFrequentSubGraphs(),!(this.maxNodeNum<2)){var y=this.graphs,x=this.directed,b={};Object.keys(y).forEach(function(z){var ee=y[z],re=ee.nodeMap;ee.nodes.forEach(function(ae){var oe=a.findForwardRootEdges(ee,ae);oe.forEach(function(de){var ge=re[de.to],ye="".concat(ae.label,"-").concat(de.label,"-").concat(ge.label);b[ye]||(b[ye]={projected:[],nodeLabel1:ae.label,edgeLabel:de.label,nodeLabel2:ge.label});var De={graphId:z,edge:de,preNode:null};b[ye].projected.push(De)})})}),Object.keys(b).forEach(function(z){var ee=b[z],re=ee.projected,ae=ee.nodeLabel1,oe=ee.edgeLabel,de=ee.nodeLabel2;a.dfsCode.dfsEdgeList.push(new qg(0,1,ae,oe,de)),a.subGraphMining(re),a.dfsCode.dfsEdgeList.pop()})}},E}(),QF=function(a,y,x,b){var z={};return Object.keys(a).forEach(function(ee,re){var ae=a[ee],oe=new _w(re,!0,y),de={};ae.nodes.forEach(function(ge,ye){oe.addNode(ye,ge[x]),de[ge.id]=ye}),ae.edges.forEach(function(ge,ye){var De=de[ge.source],ke=de[ge.target];oe.addEdge(-1,De,ke,ge[b])}),oe&&oe.getNodeNum()&&(z[oe.id]=oe)}),z},YF=function(a,y,x){var b=[];return a.forEach(function(z){var ee={nodes:[],edges:[]};z.nodes.forEach(function(re){var ae;ee.nodes.push((ae={id:"".concat(re.id)},ae[y]=re.label,ae))}),z.edges.forEach(function(re){var ae;ee.edges.push((ae={source:"".concat(re.from),target:"".concat(re.to)},ae[x]=re.label,ae))}),b.push(ee)}),b},jw="cluster",XF=function(a){var y=a.graphs,x=a.directed,b=x===void 0?!1:x,z=a.nodeLabelProp,ee=z===void 0?jw:z,re=a.edgeLabelProp,ae=re===void 0?jw:re,oe=QF(y,b,ee,ae),de=a.minSupport,ge=a.maxNodeNum,ye=a.minNodeNum,De=a.verbose,ke=a.top,ze={graphs:oe,minSupport:de,maxNodeNum:ge,minNodeNum:ye,top:ke,verbose:De,directed:b},We=new ZF(ze);We.run();var Ve=YF(We.frequentSubgraphs,ee,ae);return Ve},JF=XF,Uw=function(a,y,x,b){x===void 0&&(x="cluster"),b===void 0&&(b=2);var z=[],ee=a.nodes;return y.forEach(function(re,ae){z.push(Ww(ee,re,ae,x,b))}),z},Ww=function(a,y,x,b,z){var ee=[x],re=[],ae={};return y.forEach(function(oe,de){if(oe<=z&&x!==de){ee.push(de),re.push(a[de]);var ge=a[de][b];ae[ge]?(ae[ge].count++,ae[ge].dists.push(oe)):ae[ge]={count:1,dists:[oe]}}}),Object.keys(ae).forEach(function(oe){ae[oe].dists=ae[oe].dists.sort(function(de,ge){return de-ge})}),{nodeIdx:x,nodeId:a[x].id,nodeIdxs:ee,neighbors:re,neighborNum:ee.length-1,nodeLabelCountMap:ae}},qF=function(a,y,x,b,z){var ee=Math.ceil(x/y),re={},ae=0;return b.forEach(function(oe,de){for(var ge=0,ye=0,De=oe.nodeIdxs,ke=oe.neighborNum-1;ge<ee;){for(var ze=De[1+Math.floor(Math.random()*ke)],We=0;(re["".concat(de,"-").concat(ze)]||re["".concat(ze,"-").concat(de)])&&(ze=Math.floor(Math.random()*y),We++,!(We>2*y)););if(We<2*y&&(re["".concat(de,"-").concat(ze)]={start:de,end:ze,distance:z[de][ze]},ge++,ae++,ae>=x))return re;if(ye++,ye>2*y)break}if(ge<ee){var Ve=ee-ge;ee=(ee+Ve)/(y-de-1)}}),re},gy=function(a,y,x,b){var z=x.nodes;return b||(b={}),Object.keys(a).forEach(function(ee){var re,ae;if(!(b&&b[ee])){b[ee]={nodes:[],edges:[]};var oe=a[ee],de=(re=y[oe.start])===null||re===void 0?void 0:re.nodeIdxs,ge=(ae=y[oe.end])===null||ae===void 0?void 0:ae.nodeIdxs;if(!(!de||!ge)){var ye=new Set(ge),De=de.filter(function(Ze){return ye.has(Ze)});if(!(!De||!De.length)){for(var ke={},ze=De.length,We=0;We<ze;We++){var Ve=z[De[We]];b[ee].nodes.push(Ve),ke[Ve.id]=!0}x.edges.forEach(function(Ze){ke[Ze.source]&&ke[Ze.target]&&b[ee].edges.push(Ze)})}}}}),b},vy=function(a,y,x,b){var z,ee,re={};a.nodes.forEach(function(oe){re[oe.id]=oe});var ae=0;return!(!((z=y==null?void 0:y.edges)===null||z===void 0)&&z.length)||((ee=y==null?void 0:y.nodes)===null||ee===void 0?void 0:ee.length)<2?0:(a.edges.forEach(function(oe){var de=re[oe.source][x],ge=re[oe.target][x],ye=y==null?void 0:y.nodes[0][x],De=y==null?void 0:y.nodes[1][x],ke=y==null?void 0:y.edges[0][b];oe[b]===ke&&(de===ye&&ge===De||de===De&&ge===ye)&&ae++}),ae)},$F=function(a,y,x){for(var b=1/0,z=0,ee=function(oe){var de=a[oe],ge=Object.keys(de).sort(function(Ze,Ye){return de[Ze]-de[Ye]}),ye=10,De=[];ge.forEach(function(Ze,Ye){De[Ye%ye]||(De[Ye%ye]={graphs:[],totalCount:0,aveCount:0}),De[Ye%ye].graphs.push(Ze),De[Ye%ye].totalCount+=de[Ze]});var ke=0,ze=[];De.forEach(function(Ze){var Ye=Ze.totalCount/Ze.graphs.length;Ze.aveCount=Ye,ze.push(Ye);var et=0,st=Ze.length;Ze.graphs.forEach(function(ht,mt){var dt=de[ht];Ze.graphs.forEach(function(Ot,_t){mt!==_t&&(et+=Math.abs(dt-de[Ot]))})}),et/=st*(st-1)/2,ke+=et}),ke/=De.length;var We=0;ze.forEach(function(Ze,Ye){ze.forEach(function(et,st){Ye!==st&&(We+=Math.abs(Ze-et))}),We/=ze.length*(ze.length-1)/2});var Ve=We-ke;b<Ve&&(b=Ve,z=oe)},re=0;re<y;re++)ee(re);return{structure:x[z],structureCountMap:a[z]}},Gw=function(a,y){var x={},b={};return a.forEach(function(z,ee){x[z.id]={idx:ee,node:z,degree:0,inDegree:0,outDegree:0};var re=z[y];b[re]||(b[re]=[]),b[re].push(z)}),{nodeMap:x,nodeLabelMap:b}},Hw=function(a,y,x){var b={},z={};return a.forEach(function(ee,re){b["".concat(fw)]={idx:re,edge:ee};var ae=ee[y];z[ae]||(z[ae]=[]),z[ae].push(ee);var oe=x[ee.source];oe&&(oe.degree++,oe.outDegree++);var de=x[ee.target];de&&(de.degree++,de.inDegree++)}),{edgeMap:b,edgeLabelMap:z}},Vw=function(a,y,x){var b=y.length,z={};return y.forEach(function(ee,re){for(var ae=x?0:re+1,oe=a[re].id,de=ae;de<b;de++)if(re!==de){var ge=a[de].id,ye=ee[de];z["".concat(oe,"-").concat(ge)]=ye,x||(z["".concat(ge,"-").concat(oe)]=ye)}}),z},e7=function(a,y,x,b,z,ee,re,ae,oe,de,ge){var ye,De="".concat(y.id,"-").concat(x.id);if(de&&de[De])return de[De];var ke=ge?ge[De]:void 0;if(!ke){var ze=(ye={},ye[De]={start:b[y.id].idx,end:b[x.id].idx,distance:z},ye);ge=gy(ze,ee,a,ge),ke=ge[De]}return vy(ke,re,ae,oe)},Kw=function(a,y,x,b){var z,ee,re,ae=(z=a[y])===null||z===void 0?void 0:z.degree,oe=(ee=a[y])===null||ee===void 0?void 0:ee.inDegree,de=(re=a[y])===null||re===void 0?void 0:re.outDegree;return a[y]===void 0&&(ae=1/0,oe=1/0,de=1/0,b[y].forEach(function(ge){var ye=x[ge.id].degree;ae>ye&&(ae=ye);var De=x[ge.id].inDegree;oe>De&&(oe=De);var ke=x[ge.id].outDegree;de>ke&&(de=ke)}),a[y]={degree:ae,inDegree:oe,outDegree:de}),{minPatternNodeLabelDegree:ae,minPatternNodeLabelInDegree:oe,minPatternNodeLabelOutDegree:de}},t7=function(a,y,x,b,z,ee,re){var ae;if(x===void 0&&(x=!1),ee===void 0&&(ee="cluster"),re===void 0&&(re="cluster"),!(!a||!a.nodes)){var oe=a.nodes.length;if(oe){var de=px(a,x),ge=px(y,x),ye=Vw(a.nodes,de,x),De=Vw(y.nodes,ge,x),ke=Gw(a.nodes,ee),ze=ke.nodeMap,We=ke.nodeLabelMap,Ve=Gw(y.nodes,ee),Ze=Ve.nodeMap,Ye=Ve.nodeLabelMap;Hw(a.edges,re,ze);var et=Hw(y.edges,re,Ze).edgeLabelMap,st=[];ge==null||ge.forEach(function(Ri){st=st.concat(Ri)}),z||(z=Math.max.apply(Math,(0,Nt.ev)((0,Nt.ev)([],st,!1),[2],!1))),b||(b=z);var ht=Uw(a,de,ee,b),mt=Uw(y,ge,ee,b),dt=Math.min(100,oe*(oe-1)/2),Ot=qF(b,oe,dt,ht,de),_t=gy(Ot,ht,a),wt=10,$t=1,gn=1,Xt=4,Tn={graphs:_t,nodeLabelProp:ee,edgeLabelProp:re,minSupport:$t,minNodeNum:gn,maxNodeNum:Xt,directed:x},er=JF(Tn).slice(0,wt),En=er.length,yn=[];er.forEach(function(Ri,Sa){yn[Sa]={},Object.keys(_t).forEach(function(Fa){var ni=_t[Fa],Ki=vy(ni,Ri,ee,re);yn[Sa][Fa]=Ki})});var Cn=$F(yn,En,er),qn=Cn.structure,pn=Cn.structureCountMap,lr=y.nodes[0],Jr=[],na=(ae=y.nodes[0])===null||ae===void 0?void 0:ae[ee],Hr=-1/0;y.nodes.forEach(function(Ri){var Sa=Ri[ee],Fa=We[Sa];(Fa==null?void 0:Fa.length)>Hr&&(Hr=Fa.length,Jr=Fa,na=Sa,lr=Ri)});var Ar={},Wr={},ya={},Ra={},Aa={},co={};Object.keys(Ye).forEach(function(Ri,Sa){Aa[Ri]=[],x&&(co[Ri]=[]);var Fa=-1/0,ni=Ye[Ri],Ki={};ni.forEach(function(fs){var Ds=De["".concat(lr.id,"-").concat(fs.id)];if(Ds&&Aa[Ri].push(Ds),Fa<Ds&&(Fa=Ds),Ki["".concat(lr.id,"-").concat(fs.id)]={start:0,end:Ze[fs.id].idx,distance:Ds},x){var Is=De["".concat(fs.id,"-").concat(lr.id)];Is&&co[Ri].push(Is)}}),Aa[Ri]=Aa[Ri].sort(function(fs,Ds){return fs-Ds}),x&&(co[Ri]=co[Ri].sort(function(fs,Ds){return fs-Ds})),Wr=gy(Ki,mt,y,Wr);var Oa=[];if(Object.keys(Ki).forEach(function(fs){if(ya[fs]){Oa.push(ya[fs]);return}var Ds=Wr[fs];ya[fs]=vy(Ds,qn,ee,re),Oa.push(ya[fs])}),Oa=Oa.sort(function(fs,Ds){return Ds-fs}),Ra["".concat(lr.id,"-").concat(Ri)]=Oa,Ri!==na)for(var xo=(Jr==null?void 0:Jr.length)||0,Qi=function(Ds){var Is=Jr[Ds],As=ht[ze[Is.id].idx],Fo=As.nodeLabelCountMap[Ri],fd=Ye[Ri].length;if(!Fo||Fo.count<fd)return Jr.splice(Ds,1),"continue";for(var hd=!1,yu=0;yu<fd;yu++)if(Fo.dists[yu]>Aa[Ri][yu]){hd=!0;break}if(hd)return Jr.splice(Ds,1),"continue";var $s={};As.neighbors.forEach(function(si){var so=ye["".concat(Is.id,"-").concat(si.id)];$s["".concat(Is.id,"-").concat(si.id)]={start:ze[Is.id].idx,end:ze[si.id].idx,distance:so}}),_t=gy($s,ht,a,_t);var xc=[];Object.keys($s).forEach(function(si){if(pn[si]){xc.push(pn[si]);return}var so=_t[si];pn[si]=vy(so,qn,ee,re),xc.push(pn[si])}),xc=xc.sort(function(si,so){return so-si});for(var el=!1,yu=0;yu<fd;yu++)if(xc[yu]<Oa[yu]){el=!0;break}if(el)return Jr.splice(Ds,1),"continue"},Hs=xo-1;Hs>=0;Hs--)Qi(Hs)});var So=[];Jr==null||Jr.forEach(function(Ri){for(var Sa=ze[Ri.id].idx,Fa=Ww(a.nodes,de[Sa],Sa,ee,z),ni=Fa.neighbors,Ki=ni.length,Oa=!1,xo=Ki-1;xo>=0;xo--){if(ni.length+1<y.nodes.length){Oa=!0;return}var Qi=ni[xo],Hs=Qi[ee];if(!Ye[Hs]||!Ye[Hs].length){ni.splice(xo,1);continue}if(!Aa[Hs]||!Aa[Hs].length){ni.splice(xo,1);continue}var fs="".concat(Ri.id,"-").concat(Qi.id),Ds=ye[fs],Is=Aa[Hs].length-1,As=Aa[Hs][Is];if(Ds>As){ni.splice(xo,1);continue}if(x){var Fo="".concat(Qi.id,"-").concat(Ri.id),fd=ye[Fo];Is=co[Hs].length-1;var hd=co[Hs][Is];if(fd>hd){ni.splice(xo,1);continue}}var yu=pn[fs]?pn[fs]:e7(a,Ri,Qi,ze,Ds,ht,qn,ee,re,pn,_t),$s="".concat(lr.id,"-").concat(Hs),xc=Ra[$s][Ra[$s].length-1];if(yu<xc){ni.splice(xo,1);continue}var el=Kw(Ar,Hs,Ze,Ye),si=el.minPatternNodeLabelDegree,so=el.minPatternNodeLabelInDegree,Qo=el.minPatternNodeLabelOutDegree;if(ze[Qi.id].degree<si){ni.splice(xo,1);continue}}Oa||So.push({nodes:[Ri].concat(ni)})});var ti=uy(y,lr.id,!1).length,qi={};x?(Object.keys(ti).forEach(function(Ri){var Sa=Ze[Ri].node[ee];qi[Sa]?qi[Sa].push(ti[Ri]):qi[Sa]=[ti[Ri]]}),Object.keys(qi).forEach(function(Ri){qi[Ri].sort(function(Sa,Fa){return Sa-Fa})})):qi=Aa;for(var Gi=So.length,fo=function(Sa){var Fa=So[Sa],ni=Fa.nodes[0],Ki={},Oa={};Fa.nodes.forEach(function(dl,El){Oa[dl.id]={idx:El,node:dl,degree:0,inDegree:0,outDegree:0};var Us=dl[ee];Ki[Us]?Ki[Us]++:Ki[Us]=1});var xo=[],Qi={};a.edges.forEach(function(dl){Oa[dl.source]&&Oa[dl.target]&&(xo.push(dl),Qi[dl[re]]?Qi[dl[re]]++:Qi[dl[re]]=1,Oa[dl.source].degree++,Oa[dl.target].degree++,Oa[dl.source].outDegree++,Oa[dl.target].inDegree++)});for(var Hs=Object.keys(et).length,fs=!1,Ds=0;Ds<Hs;Ds++){var Is=Object.keys(et)[Ds];if(!Qi[Is]||Qi[Is]<et[Is].length){fs=!0;break}}if(fs)return So.splice(Sa,1),"continue";var As=xo.length;if(As<y.edges.length)return So.splice(Sa,1),"break";for(var Fo=!1,fd=function(El){var Us=xo[El],ou=Us[re],nf=et[ou];if(!nf||!nf.length)return Qi[ou]--,nf&&Qi[ou]<nf.length?(Fo=!0,"break"):(xo.splice(El,1),Oa[Us.source].degree--,Oa[Us.target].degree--,Oa[Us.source].outDegree--,Oa[Us.target].inDegree--,"continue");var Ti=Oa[Us.source].node[ee],Sc=Oa[Us.target].node[ee],rc=!1;if(nf.forEach(function(bc){var If=Ze[bc.source].node,S0=Ze[bc.target].node;If[ee]===Ti&&S0[ee]===Sc&&(rc=!0),!x&&If[ee]===Sc&&S0[ee]===Ti&&(rc=!0)}),!rc)return Qi[ou]--,nf&&Qi[ou]<nf.length?(Fo=!0,"break"):(xo.splice(El,1),Oa[Us.source].degree--,Oa[Us.target].degree--,Oa[Us.source].outDegree--,Oa[Us.target].inDegree--,"continue")},Ds=As-1;Ds>=0;Ds--){var hd=fd(Ds);if(hd==="break")break}if(Fo)return So.splice(Sa,1),"continue";Fa.edges=xo;var yu=uy(Fa,Fa.nodes[0].id,!1).length;if(Object.keys(yu).reverse().forEach(function(dl){if(!(dl===Fa.nodes[0].id||Fo)){if(yu[dl]===1/0){var El=Oa[dl].node[ee];if(Ki[El]--,Ki[El]<Ye[El].length){Fo=!0;return}var Us=Fa.nodes.indexOf(Oa[dl].node);Fa.nodes.splice(Us,1),Oa[dl]=void 0;return}var ou=ze[dl].node[ee];if(!qi[ou]||!qi[ou].length||yu[dl]>qi[ou][qi[ou].length-1]){var El=Oa[dl].node[ee];if(Ki[El]--,Ki[El]<Ye[El].length){Fo=!0;return}var Us=Fa.nodes.indexOf(Oa[dl].node);Fa.nodes.splice(Us,1),Oa[dl]=void 0}}}),Fo)return So.splice(Sa,1),"continue";for(var $s=!0,xc=0;$s&&!Fo;){$s=!1;var el=x?Oa[ni.id].degree<Ze[lr.id].degree||Oa[ni.id].inDegree<Ze[lr.id].inDegree||Oa[ni.id].outDegree<Ze[lr.id].outDegree:Oa[ni.id].degree<Ze[lr.id].degree;if(el){Fo=!0;break}if(Ki[ni[ee]]<Ye[ni[ee]].length){Fo=!0;break}for(var si=Fa.nodes.length,so=si-1;so>=0;so--){var Qo=Fa.nodes[so],is=Oa[Qo.id].degree,To=Oa[Qo.id].inDegree,wu=Oa[Qo.id].outDegree,Nd=Qo[ee],tf=Kw(Ar,Nd,Ze,Ye),x0=tf.minPatternNodeLabelDegree,pg=tf.minPatternNodeLabelInDegree,Av=tf.minPatternNodeLabelOutDegree,yg=x?is<x0||To<pg||wu<Av:is<x0;if(yg){if(Ki[Qo[ee]]--,Ki[Qo[ee]]<Ye[Qo[ee]].length){Fo=!0;break}Fa.nodes.splice(so,1),Oa[Qo.id]=void 0,$s=!0}}if(Fo||!$s&&xc!==0)break;As=xo.length;for(var Zc=As-1;Zc>=0;Zc--){var gd=xo[Zc];if(!Oa[gd.source]||!Oa[gd.target]){xo.splice(Zc,1);var Qc=gd[re];if(Qi[Qc]--,Oa[gd.source]&&(Oa[gd.source].degree--,Oa[gd.source].outDegree--),Oa[gd.target]&&(Oa[gd.target].degree--,Oa[gd.target].inDegree--),et[Qc]&&Qi[Qc]<et[Qc].length){Fo=!0;break}$s=!0}}xc++}if(Fo||Fo||Fa.nodes.length<y.nodes.length||xo.length<y.edges.length)return So.splice(Sa,1),"continue"},Po=Gi-1;Po>=0;Po--){var Es=fo(Po);if(Es==="break")break}for(var as=So.length,yi=function(Sa){var Fa=So[Sa],ni={};Fa.edges.forEach(function(xo){var Qi="".concat(xo.source,"-").concat(xo.target,"-").concat(xo.label);ni[Qi]?ni[Qi]++:ni[Qi]=1});for(var Ki=function(Qi){var Hs=So[Qi],fs={};Hs.edges.forEach(function(Is){var As="".concat(Is.source,"-").concat(Is.target,"-").concat(Is.label);fs[As]?fs[As]++:fs[As]=1});var Ds=!0;Object.keys(fs).length!==Object.keys(ni).length?Ds=!1:Object.keys(ni).forEach(function(Is){fs[Is]!==ni[Is]&&(Ds=!1)}),Ds&&So.splice(Qi,1)},Oa=as-1;Oa>Sa;Oa--)Ki(Oa);as=So.length},Po=0;Po<=as-1;Po++)yi(Po);return So}}},n7=t7,r7=function(){function E(a){a===void 0&&(a=10),this.linkedList=new dw,this.maxStep=a}return Object.defineProperty(E.prototype,"length",{get:function(){return this.linkedList.toArray().length},enumerable:!1,configurable:!0}),E.prototype.isEmpty=function(){return!this.linkedList.head},E.prototype.isMaxStack=function(){return this.toArray().length>=this.maxStep},E.prototype.peek=function(){return this.isEmpty()?null:this.linkedList.head.value},E.prototype.push=function(a){this.linkedList.prepend(a),this.length>this.maxStep&&this.linkedList.deleteTail()},E.prototype.pop=function(){var a=this.linkedList.deleteHead();return a?a.value:null},E.prototype.toArray=function(){return this.linkedList.toArray().map(function(a){return a.value})},E.prototype.clear=function(){for(;!this.isEmpty();)this.pop()},E}(),a7=r7,i7=Ew,Hte={getAdjMatrix:ay,breadthFirstSearch:_R,connectedComponent:gw,getDegree:ux,getInDegree:jR,getOutDegree:UR,detectCycle:Ew,detectDirectedCycle:i7,detectAllCycles:HR,detectAllDirectedCycle:yw,detectAllUndirectedCycle:pw,depthFirstSearch:mw,dijkstra:uy,findAllPath:pF,findShortestPath:mx,floydWarshall:px,labelPropagation:AF,louvain:Ow,iLouvain:DF,kCore:OF,kMeans:LF,cosineSimilarity:Lw,nodesCosineSimilarity:RF,minimumSpanningTree:GF,pageRank:Nw,getNeighbors:Xd,Stack:a7,GADDI:n7};function Br(E){if(E.id!==void 0)return E.id;if(E.source!==void 0&&E.target!==void 0)return`${E.source}-${E.target}`;throw new Error(gh("The datum does not have available id."))}function my(E){return E.combo}function Zw(E,a){const y={nodes:(E.nodes||[]).map(Br),edges:(E.edges||[]).map(Br),combos:(E.combos||[]).map(Br)};return a?Object.values(y).flat():y}const Qw=(E,a,y)=>{var x;switch(y.type){case"degree":{const b=new Map;return(x=E.nodes)===null||x===void 0||x.forEach(z=>{const ee=a(Br(z),y.direction).length;b.set(Br(z),ee)}),b}case"betweenness":return o7(E,y.directed,y.weightPropertyName);case"closeness":return s7(E,y.directed,y.weightPropertyName);case"eigenvector":return u7(E,y.directed);case"pagerank":return l7(E,y.epsilon,y.linkProb);default:return Yw(E)}},Yw=E=>{var a;const y=new Map;return(a=E.nodes)===null||a===void 0||a.forEach(x=>{y.set(Br(x),0)}),y},o7=(E,a,y)=>{const x=Yw(E),{nodes:b=[]}=E;return b.forEach(z=>{b.forEach(ee=>{if(z!==ee){const{allPath:re}=mx(E,Br(z),Br(ee),a,y),ae=re.length;re.flat().forEach(oe=>{oe!==Br(z)&&oe!==Br(ee)&&x.set(oe,x.get(oe)+1/ae)})}})}),x},s7=(E,a,y)=>{const x=new Map,{nodes:b=[]}=E;return b.forEach(z=>{const ee=b.reduce((re,ae)=>{if(z!==ae){const{length:oe}=mx(E,Br(z),Br(ae),a,y);re+=oe}return re},0);x.set(Br(z),1/ee)}),x},l7=(E,a,y)=>{var x;const b=new Map,z=Nw(E,a,y);return(x=E.nodes)===null||x===void 0||x.forEach(ee=>{b.set(Br(ee),z[Br(ee)])}),b},u7=(E,a)=>{const{nodes:y=[]}=E,x=c7(E,a),b=d7(x,y.length),z=new Map;return y.forEach((ee,re)=>{z.set(Br(ee),b[re])}),z},c7=(E,a)=>{const{nodes:y=[],edges:x=[]}=E,b=Array(y.length).fill(null).map(()=>Array(y.length).fill(0));return x.forEach(({source:z,target:ee})=>{const re=y.findIndex(oe=>Br(oe)===z),ae=y.findIndex(oe=>Br(oe)===ee);a?b[re][ae]=1:(b[re][ae]=1,b[ae][re]=1)}),b},d7=(E,a,y=100,x=1e-6)=>{let b=Array(a).fill(1),z=1/0;for(let ee=0;ee<y&&z>x;ee++){const re=Array(a).fill(0);for(let oe=0;oe<a;oe++)for(let de=0;de<a;de++)re[oe]+=E[oe][de]*b[de];const ae=Math.sqrt(re.reduce((oe,de)=>oe+de*de,0));for(let oe=0;oe<a;oe++)re[oe]/=ae;z=Math.sqrt(re.reduce((oe,de,ge)=>oe+(de-b[ge])*de,0)),b=re}return b};function eg(E,a,y,x=Nu){const b=new Map(E.map(ye=>[y(ye),ye])),z=new Map(a.map(ye=>[y(ye),ye])),ee=new Set(b.keys()),re=new Set(z.keys()),ae=[],oe=[],de=[],ge=[];return re.forEach(ye=>{ee.has(ye)?x(b.get(ye),z.get(ye))?ge.push(z.get(ye)):oe.push(z.get(ye)):ae.push(z.get(ye))}),ee.forEach(ye=>{re.has(ye)||de.push(b.get(ye))}),{enter:ae,exit:de,keep:ge,update:oe}}function $g(E,a,y){const x=b=>{y&&!y(b)||(b.style.visibility=a)};E.forEach(b=>{x(b)})}function f7(E,a,y){const x={},b=z=>(z in x||(x[z]=0),`${a}-${z}-${x[z]++}`);return y.map(z=>typeof z=="string"?{type:z,key:b(z)}:typeof z=="function"?z.call(E):z.key?z:Object.assign(Object.assign({},z),{key:b(z.type)}))}class Ax{constructor(a){this.extensions=[],this.extensionMap={},this.context=a}setExtensions(a){const y=f7(this.context.graph,this.category,a),{enter:x,update:b,exit:z,keep:ee}=eg(this.extensions,y,re=>re.key);this.createExtensions(x),this.updateExtensions([...b,...ee]),this.destroyExtensions(z),this.extensions=y}createExtension(a){const{category:y}=this,{key:x,type:b}=a,z=hh(y,b);if(!z)return ld.warn(`The extension ${b} of ${y} is not registered.`);const ee=new z(this.context,a);ee.initialized=!0,this.extensionMap[x]=ee}createExtensions(a){a.forEach(y=>this.createExtension(y))}updateExtension(a){const{key:y}=a,x=this.extensionMap[y];x&&x.update(a)}updateExtensions(a){a.forEach(y=>this.updateExtension(y))}destroyExtension(a){const y=this.extensionMap[a];y&&(y.initialized&&!y.destroyed&&y.destroy(),delete this.extensionMap[a])}destroyExtensions(a){a.forEach(({key:y})=>this.destroyExtension(y))}destroy(){this.destroyExtensions(this.extensions),this.context={},this.extensions=[],this.extensionMap={}}}class xx{constructor(a,y){this.events=[],this.initialized=!1,this.destroyed=!1,this.context=a,this.options=y}update(a){this.options=Object.assign(this.options,a)}destroy(){this.context={},this.options={},this.destroyed=!0}}class Dd extends xx{}class py extends Dd{constructor(a,y){super(a,Object.assign({},py.defaultOptions,y)),this.isOverlapping=(x,b)=>b.some(z=>x.intersects(z)),this.occupiedBounds=[],this.detectLabelCollision=x=>{const b=this.context.viewport,z={show:[],hide:[]};return this.occupiedBounds=[],x.forEach(ee=>{const re=ee.getShape("label").getRenderBounds();b.isInViewport(re,!0)&&!this.isOverlapping(re,this.occupiedBounds)?(z.show.push(ee),this.occupiedBounds.push($h(re,this.options.padding))):z.hide.push(ee)}),z},this.hideLabelIfExceedViewport=(x,b)=>{const{exit:z}=eg(x,b,ee=>ee.id);z==null||z.forEach(this.hideLabel)},this.nodeCentralities=new Map,this.sortNodesByCentrality=(x,b)=>{const{model:z}=this.context,ee=z.getData(),re=z.getRelatedEdgesData.bind(z);return x.map(oe=>(this.nodeCentralities.has(oe.id)||(this.nodeCentralities=Qw(ee,re,b)),{node:oe,centrality:this.nodeCentralities.get(oe.id)})).sort((oe,de)=>de.centrality-oe.centrality).map(oe=>oe.node)},this.sortLabelElementsInView=x=>{const{sort:b,sortNode:z,sortCombo:ee,sortEdge:re}=this.options,{model:ae}=this.context;if(Xi(b))return x.sort((ze,We)=>b(ae.getElementDataById(ze.id),ae.getElementDataById(We.id)));const{node:oe=[],edge:de=[],combo:ge=[]}=ny(x,ze=>ze.type),ye=Xi(ee)?ge.sort((ze,We)=>ee(...ae.getComboData([ze.id,We.id]))):ge,De=Xi(z)?oe.sort((ze,We)=>z(...ae.getNodeData([ze.id,We.id]))):this.sortNodesByCentrality(oe,z),ke=Xi(re)?de.sort((ze,We)=>re(...ae.getEdgeData([ze.id,We.id]))):de;return[...ye,...De,...ke]},this.labelElementsInView=[],this.isFirstRender=!0,this.onToggleVisibility=x=>{var b;if(((b=x.data)===null||b===void 0?void 0:b.stage)==="zIndex")return;if(!this.validate(x)){this.hiddenElements.size>0&&(this.hiddenElements.forEach(this.showLabel),this.hiddenElements.clear());return}const z=this.isFirstRender?this.getLabelElements():this.getLabelElementsInView();this.hideLabelIfExceedViewport(this.labelElementsInView,z),this.labelElementsInView=z;const ee=this.sortLabelElementsInView(this.labelElementsInView),{show:re,hide:ae}=this.detectLabelCollision(ee);for(let oe=re.length-1;oe>=0;oe--)this.showLabel(re[oe]);ae.forEach(this.hideLabel)},this.hiddenElements=new Map,this.hideLabel=x=>{const b=x.getShape("label");b&&$g(b,"hidden"),this.hiddenElements.set(x.id,x)},this.showLabel=x=>{const b=x.getShape("label");b&&$g(b,"visible"),x.toFront(),this.hiddenElements.delete(x.id)},this.onTransform=lw(this.onToggleVisibility,this.options.throttle,{leading:!0}),this.enableToggle=!0,this.toggle=x=>{this.enableToggle&&this.onToggleVisibility(x)},this.onBeforeRender=()=>{this.enableToggle=!1},this.onAfterRender=x=>{this.onToggleVisibility(x),this.enableToggle=!0},this.bindEvents()}update(a){this.unbindEvents(),super.update(a),this.bindEvents(),this.onToggleVisibility({})}getLabelElements(){const{elementMap:a}=this.context.element,y=[];for(const x in a){const b=a[x];b.isVisible()&&b.getShape("label")&&y.push(b)}return y}getLabelElementsInView(){const a=this.context.viewport;return this.getLabelElements().filter(y=>a.isInViewport(y.getShape("key").getRenderBounds()))}bindEvents(){const{graph:a}=this.context;a.on(hi.BEFORE_RENDER,this.onBeforeRender),a.on(hi.AFTER_RENDER,this.onAfterRender),a.on(hi.AFTER_DRAW,this.toggle),a.on(hi.AFTER_LAYOUT,this.toggle),a.on(hi.AFTER_TRANSFORM,this.onTransform)}unbindEvents(){const{graph:a}=this.context;a.off(hi.BEFORE_RENDER,this.onBeforeRender),a.off(hi.AFTER_RENDER,this.onAfterRender),a.off(hi.AFTER_DRAW,this.toggle),a.off(hi.AFTER_LAYOUT,this.toggle),a.off(hi.AFTER_TRANSFORM,this.onTransform)}validate(a){if(this.destroyed)return!1;const{enable:y}=this.options;return Xi(y)?y(a):!!y}destroy(){this.unbindEvents(),super.destroy()}}py.defaultOptions={enable:!0,throttle:100,padding:0,sortNode:{type:"degree"}};var h7=function(E){if(!nx(E)||!r2(E,"Object"))return!1;if(Object.getPrototypeOf(E)===null)return!0;for(var a=E;Object.getPrototypeOf(a)!==null;)a=Object.getPrototypeOf(a);return Object.getPrototypeOf(E)===a},Y0=h7,g7=5;function v7(E,a){if(Object.hasOwn)return Object.hasOwn(E,a);if(E==null)throw new TypeError("Cannot convert undefined or null to object");return Object.prototype.hasOwnProperty.call(Object(E),a)}function Xw(E,a,y,x){y=y||0,x=x||g7;for(var b in a)if(v7(a,b)){var z=a[b];z!==null&&Y0(z)?(Y0(E[b])||(E[b]={}),y<x?Xw(E[b],z,y+1,x):E[b]=a[b]):nd(z)?(E[b]=[],E[b]=E[b].concat(z)):z!==void 0&&(E[b]=z)}}var m7=function(E){for(var a=[],y=1;y<arguments.length;y++)a[y-1]=arguments[y];for(var x=0;x<a.length;x+=1)Xw(E,a[x]);return E},vc=m7;const Jw=[0,0,0];function us(E,a){return E.map((y,x)=>y+a[x])}function Fl(E,a){return E.map((y,x)=>y-a[x])}function Af(E,a){return typeof a=="number"?E.map(y=>y*a):E.map((y,x)=>y*a[x])}function xf(E,a){return typeof a=="number"?E.map(y=>y/a):E.map((y,x)=>y/a[x])}function p7(E,a){return E.reduce((y,x,b)=>y+x*a[b],0)}function y7(E,a){const y=um(E),x=um(a);return[y[1]*x[2]-y[2]*x[1],y[2]*x[0]-y[0]*x[2],y[0]*x[1]-y[1]*x[0]]}function tg(E,a){return E.map(y=>y*a)}function Xl(E,a){return Math.sqrt(E.reduce((y,x,b)=>y+Math.pow(x-a[b]||0,2),0))}function yy(E,a){return E.reduce((y,x,b)=>y+Math.abs(x-a[b]),0)}function vh(E){const a=E.reduce((y,x)=>y+Math.pow(x,2),0);return E.map(y=>y/Math.sqrt(a))}function Sx(E,a,y=!1){const x=E[0]*a[1]-E[1]*a[0];let b=Math.acos(Af(E,a).reduce((z,ee)=>z+ee,0)/(Xl(E,Jw)*Xl(a,Jw)));return y&&x<0&&(b=2*Math.PI-b),b}function Vte(E,a){return E.every((y,x)=>y===a[x])}function Ey(E,a=!0){return a?[-E[1],E[0]]:[E[1],-E[0]]}function bx(E,a){return E.map(y=>y%a)}function e0(E){return[E[0],E[1]]}function um(E){return bR(E)?[E[0],E[1],0]:E}function qw(E){const[a,y]=E;return!a&&!y?0:Math.atan2(y,a)}function $w(E,a){const[y,x]=E;if(a%360===0)return[y,x];const b=a*Math.PI/180,z=Math.cos(b),ee=Math.sin(b);return[y*z-x*ee,y*ee+x*z]}function e5(E,a){const[y,x]=E,[b,z]=a,ee=Fl(y,x),re=Fl(b,z);return y7(ee,re).every(ae=>ae===0)}function Cx(E,a,y=!1){if(e5(E,a))return;const[x,b]=E,[z,ee]=a,re=((x[0]-z[0])*(z[1]-ee[1])-(x[1]-z[1])*(z[0]-ee[0]))/((x[0]-b[0])*(z[1]-ee[1])-(x[1]-b[1])*(z[0]-ee[0])),ae=ee[0]-z[0]?(x[0]-z[0]+re*(b[0]-x[0]))/(ee[0]-z[0]):(x[1]-z[1]+re*(b[1]-x[1]))/(ee[1]-z[1]);if(!(!y&&(!Vf(re,0,1)||!Vf(ae,0,1))))return[x[0]+re*(b[0]-x[0]),x[1]+re*(b[1]-x[1])]}function t5(E){if(Array.isArray(E))return Vf(E[0],0,1)&&Vf(E[1],0,1)?E:[.5,.5];const a=E.split("-"),y=a.includes("left")?0:a.includes("right")?1:.5,x=a.includes("top")?0:a.includes("bottom")?1:.5;return[y,x]}function $u(E){const{x:a=0,y=0,z:x=0}=E.style||{};return[+a,+y,+x]}function E7(E){const{x:a,y,z:x}=E.style||{};return a!==void 0||y!==void 0||x!==void 0}function n5(E,a){const[y,x]=a,{min:b,max:z}=E;return[b[0]+y*(z[0]-b[0]),b[1]+x*(z[1]-b[1])]}function mh(E,a="center"){const y=t5(a);return n5(E,y)}function Kte(E,a){const y=parseAnchor(a);return n5(E,y)}const Zte=E=>{const[a,y]=E;return{left:Math.min(a[0],y[0]),right:Math.max(a[0],y[0]),top:Math.min(a[1],y[1]),bottom:Math.max(a[1],y[1])}};function mc(E){var a;return[E.x,E.y,(a=E.z)!==null&&a!==void 0?a:0]}function Sf(E){var a;return{x:E[0],y:E[1],z:(a=E[2])!==null&&a!==void 0?a:0}}function Qte(E){return E.sort((a,y)=>a[0]-y[0]||a[1]-y[1])}function Yte(E){const a=new Set;return E.filter(y=>{const x=y.join(",");return a.has(x)?!1:(a.add(x),!0)})}function cm(E,a=0){return E.map(y=>parseFloat(y.toFixed(a)))}function ng(E,a,y,x=!1){if(Nu(E,a))return E;const b=x?Fl(E,a):Fl(a,E),z=vh(b),ee=[z[0]*y,z[1]*y];return us(e0(E),ee)}function r5(E,a){return E[1]===a[1]}function A7(E,a){return E[0]===a[0]}function x7(E,a){return r5(E,a)||A7(E,a)}function a5(E,a,y){return e5([E,a],[a,y])}function i5(E,a){return[2*a[0]-E[0],2*a[1]-E[1]]}function o5(E,a,y,x=!0,b=!1){for(let z=0;z<y.length;z++){let ee=y[z],re=y[(z+1)%y.length];x&&(ee=us(a,ee),re=us(a,re));const ae=b?i5(E,a):E,oe=Cx([a,ae],[ee,re]);if(oe)return{point:oe,line:[ee,re]}}return{point:a,line:void 0}}function S7(E,a,y,x){const b=E[0],z=E[1];let ee=!1;y===void 0&&(y=0),x===void 0&&(x=a.length);const re=x-y;for(let ae=0,oe=re-1;ae<re;oe=ae++){const de=a[ae+y][0],ge=a[ae+y][1],ye=a[oe+y][0],De=a[oe+y][1];ge>z!=De>z&&b<(ye-de)*(z-ge)/(De-ge)+de&&(ee=!ee)}return ee}function b7(E,a,y=!1){const x=mh(a,"center"),b=[mh(a,"left-top"),mh(a,"right-top"),mh(a,"right-bottom"),mh(a,"left-bottom")];return o5(E,x,b,!1,y).point}function Ay(E,a,y=!1){const x=a.center,b=y?i5(E,x):E,z=Fl(b,a.center),ee=Math.atan2(z[1],z[0]);if(isNaN(ee))return x;const re=Kf(a)/2,ae=Zf(a)/2,oe=x[0]+re*Math.cos(ee),de=x[1]+ae*Math.sin(ee);return[oe,de]}function C7(E,a){let y=1/0,x=[E[0],a[0]];return E.forEach(b=>{a.forEach(z=>{const ee=Xl(b,z);ee<y&&(y=ee,x=[b,z])})}),x}function P7(E,a){let y=1/0,x=[[0,0],[0,0]];return a.forEach(b=>{const z=w7(E,b);z<y&&(y=z,x=b)}),x}function w7(E,a){const y=s5(E,a);return Xl(E,y)}function s5(E,a){const[y,x]=a[0],[b,z]=a[1],[ee,re]=E,ae=b-y,oe=z-x;if(ae===0&&oe===0)return[y,x];let de=((ee-y)*ae+(re-x)*oe)/(ae*ae+oe*oe);de>1?de=1:de<0&&(de=0);const ge=y+de*ae,ye=x+de*oe;return[ge,ye]}function M7(E){const a=E.reduce((y,x)=>us(y,x),[0,0]);return xf(a,E.length)}function Px(E,a=!0){const y=M7(E);return E.sort(([x,b],[z,ee])=>{const re=Math.atan2(b-y[1],x-y[0]),ae=Math.atan2(ee-y[1],z-y[0]);return a?ae-re:re-ae})}function l5(E,a){return[E,[E[0],a[1]],a,[a[0],E[1]]]}class Ru{constructor(a,y,x){if(this.phase=y,this.pointerByTouch=[],this.initialDistance=null,this.emitter=a,Ru.instance)return Ru.callbacks[this.phase].push(x),Ru.instance;this.onPointerDown=this.onPointerDown.bind(this),this.onPointerMove=this.onPointerMove.bind(this),this.onPointerUp=this.onPointerUp.bind(this),this.bindEvents(),Ru.instance=this,Ru.callbacks[this.phase].push(x)}bindEvents(){const{emitter:a}=this;a.on(Ea.POINTER_DOWN,this.onPointerDown),a.on(Ea.POINTER_MOVE,this.onPointerMove),a.on(Ea.POINTER_UP,this.onPointerUp)}updatePointerPosition(a,y,x){const b=this.pointerByTouch.findIndex(z=>z.pointerId===a);b>=0&&(this.pointerByTouch[b]={x:y,y:x,pointerId:a})}onPointerDown(a){const{x:y,y:x}=a.client||{};if(!(y===void 0||x===void 0)&&(this.pointerByTouch.push({x:y,y:x,pointerId:a.pointerId}),a.pointerType==="touch"&&this.pointerByTouch.length===2)){Ru.isPinching=!0;const b=this.pointerByTouch[0].x-this.pointerByTouch[1].x,z=this.pointerByTouch[0].y-this.pointerByTouch[1].y;this.initialDistance=Math.sqrt(b*b+z*z),Ru.callbacks.pinchstart.forEach(ee=>ee(a,{scale:0}))}}onPointerMove(a){if(this.pointerByTouch.length!==2||this.initialDistance===null)return;const{x:y,y:x}=a.client||{};if(y===void 0||x===void 0)return;this.updatePointerPosition(a.pointerId,y,x);const b=this.pointerByTouch[0].x-this.pointerByTouch[1].x,z=this.pointerByTouch[0].y-this.pointerByTouch[1].y,re=Math.sqrt(b*b+z*z)/this.initialDistance;Ru.callbacks.pinchmove.forEach(ae=>ae(a,{scale:(re-1)*5}))}onPointerUp(a){var y;Ru.callbacks.pinchend.forEach(x=>x(a,{scale:0})),Ru.isPinching=!1,this.initialDistance=null,this.pointerByTouch=[],(y=Ru.instance)===null||y===void 0||y.tryDestroy()}destroy(){this.emitter.off(Ea.POINTER_DOWN,this.onPointerDown),this.emitter.off(Ea.POINTER_MOVE,this.onPointerMove),this.emitter.off(Ea.POINTER_UP,this.onPointerUp),Ru.instance=null}off(a,y){const x=Ru.callbacks[a].indexOf(y);x>-1&&Ru.callbacks[a].splice(x,1),this.tryDestroy()}tryDestroy(){Object.values(Ru.callbacks).every(a=>a.length===0)&&this.destroy()}}Ru.isPinching=!1,Ru.instance=null,Ru.callbacks={pinchstart:[],pinchmove:[],pinchend:[]};const u5=E=>E.map(a=>al(a)?a.toLocaleLowerCase():a);class X0{constructor(a){this.map=new Map,this.boundHandlePinch=()=>{},this.recordKey=new Set,this.onKeyDown=y=>{y!=null&&y.key&&(this.recordKey.add(y.key),this.trigger(y))},this.onKeyUp=y=>{y!=null&&y.key&&this.recordKey.delete(y.key)},this.onWheel=y=>{this.triggerExtendKey(Ea.WHEEL,y)},this.onDrag=y=>{this.triggerExtendKey(Ea.DRAG,y)},this.handlePinch=(y,x)=>{this.triggerExtendKey(Ea.PINCH,Object.assign(Object.assign({},y),x))},this.onFocus=()=>{this.recordKey.clear()},this.emitter=a,this.bindEvents()}bind(a,y){a.length!==0&&(a.includes(Ea.PINCH)&&!this.pinchHandler&&(this.boundHandlePinch=this.handlePinch.bind(this),this.pinchHandler=new Ru(this.emitter,"pinchmove",this.boundHandlePinch)),this.map.set(a,y))}unbind(a,y){this.map.forEach((x,b)=>{Nu(b,a)&&(!y||y===x)&&this.map.delete(b)})}unbindAll(){this.map.clear()}match(a){const y=u5(Array.from(this.recordKey)).sort(),x=u5(a).sort();return Nu(y,x)}bindEvents(){var a;const{emitter:y}=this;y.on(Ea.KEY_DOWN,this.onKeyDown),y.on(Ea.KEY_UP,this.onKeyUp),y.on(Ea.WHEEL,this.onWheel),y.on(Ea.DRAG,this.onDrag),(a=globalThis.addEventListener)===null||a===void 0||a.call(globalThis,"focus",this.onFocus)}trigger(a){this.map.forEach((y,x)=>{this.match(x)&&y(a)})}triggerExtendKey(a,y){this.map.forEach((x,b)=>{b.includes(a)&&Nu(Array.from(this.recordKey),b.filter(z=>z!==a))&&x(y)})}destroy(){var a,y;this.unbindAll(),this.emitter.off(Ea.KEY_DOWN,this.onKeyDown),this.emitter.off(Ea.KEY_UP,this.onKeyUp),this.emitter.off(Ea.WHEEL,this.onWheel),this.emitter.off(Ea.DRAG,this.onDrag),(a=this.pinchHandler)===null||a===void 0||a.off("pinchmove",this.boundHandlePinch),(y=globalThis.removeEventListener)===null||y===void 0||y.call(globalThis,"blur",this.onFocus)}}class dm extends Dd{constructor(a,y){super(a,vc({},dm.defaultOptions,y)),this.shortcut=new X0(a.graph),this.onPointerDown=this.onPointerDown.bind(this),this.onPointerMove=this.onPointerMove.bind(this),this.onPointerUp=this.onPointerUp.bind(this),this.clearStates=this.clearStates.bind(this),this.bindEvents()}onPointerDown(a){if(!this.validate(a)||!this.isKeydown()||this.startPoint)return;const{canvas:y,graph:x}=this.context,b=Object.assign({},this.options.style);this.options.style.lineWidth&&(b.lineWidth=+this.options.style.lineWidth/x.getZoom()),this.rectShape=new gc({id:"g6-brush-select",style:b}),y.appendChild(this.rectShape),this.startPoint=[a.canvas.x,a.canvas.y]}onPointerMove(a){var y;if(!this.startPoint)return;const{immediately:x,mode:b}=this.options;this.endPoint=xy(a,this.context.graph),(y=this.rectShape)===null||y===void 0||y.attr({x:Math.min(this.endPoint[0],this.startPoint[0]),y:Math.min(this.endPoint[1],this.startPoint[1]),width:Math.abs(this.endPoint[0]-this.startPoint[0]),height:Math.abs(this.endPoint[1]-this.startPoint[1])}),x&&b==="default"&&this.updateElementsStates(l5(this.startPoint,this.endPoint))}onPointerUp(a){if(this.startPoint){if(!this.endPoint){this.clearBrush();return}this.endPoint=xy(a,this.context.graph),this.updateElementsStates(l5(this.startPoint,this.endPoint)),this.clearBrush()}}clearStates(){this.endPoint||this.clearElementsStates()}clearElementsStates(){const{graph:a}=this.context,y=Object.values(a.getData()).reduce((x,b)=>Object.assign({},x,b.reduce((z,ee)=>{var re;const ae=(re=ee.states||[])===null||re===void 0?void 0:re.filter(oe=>oe!==this.options.state);return z[Br(ee)]=ae,z},{})),{});a.setElementState(y,this.options.animation)}updateElementsStates(a){const{graph:y}=this.context,{enableElements:x,state:b,mode:z,onSelect:ee}=this.options,re=this.selector(y,a,x);let ae={};switch(z){case"union":re.forEach(oe=>{ae[oe]=[...y.getElementState(oe),b]});break;case"diff":re.forEach(oe=>{const de=y.getElementState(oe);ae[oe]=de.includes(b)?de.filter(ge=>ge!==b):[...de,b]});break;case"intersect":re.forEach(oe=>{const de=y.getElementState(oe);ae[oe]=de.includes(b)?[b]:[]});break;case"default":default:re.forEach(oe=>{ae[oe]=[b]});break}Xi(ee)&&(ae=ee(ae)),y.setElementState(ae,this.options.animation)}selector(a,y,x){if(!x||x.length===0)return[];const b=[],z=a.getData();if(x.forEach(ee=>{z[`${ee}s`].forEach(re=>{const ae=Br(re);a.getElementVisibility(ae)!=="hidden"&&S7(a.getElementPosition(ae),y)&&b.push(ae)})}),x.includes("edge")){const ee=z.edges;ee==null||ee.forEach(re=>{const{source:ae,target:oe}=re;b.includes(ae)&&b.includes(oe)&&b.push(Br(re))})}return b}clearBrush(){var a;(a=this.rectShape)===null||a===void 0||a.remove(),this.rectShape=void 0,this.startPoint=void 0,this.endPoint=void 0}isKeydown(){const{trigger:a}=this.options,y=Array.isArray(a)?a:[a];return this.shortcut.match(y.filter(x=>x!=="drag"))}validate(a){if(this.destroyed)return!1;const{enable:y}=this.options;return Xi(y)?y(a):!!y}bindEvents(){const{graph:a}=this.context;a.on(Ea.POINTER_DOWN,this.onPointerDown),a.on(Ea.POINTER_MOVE,this.onPointerMove),a.on(Ea.POINTER_UP,this.onPointerUp),a.on(fh.CLICK,this.clearStates)}unbindEvents(){const{graph:a}=this.context;a.off(Ea.POINTER_DOWN,this.onPointerDown),a.off(Ea.POINTER_MOVE,this.onPointerMove),a.off(Ea.POINTER_UP,this.onPointerUp),a.off(fh.CLICK,this.clearStates)}update(a){this.unbindEvents(),this.options=vc(this.options,a),this.bindEvents()}destroy(){this.unbindEvents(),super.destroy()}}dm.defaultOptions={animation:!1,enable:!0,enableElements:["node","combo","edge"],immediately:!1,mode:"default",state:"selected",trigger:["shift"],style:{width:0,height:0,lineWidth:1,fill:"#1677FF",stroke:"#1677FF",fillOpacity:.1,zIndex:2,pointerEvents:"none"}};const xy=(E,a)=>{if((E.targetType==="node"||E.targetType==="combo")&&!(E.nativeEvent.target instanceof HTMLCanvasElement)){const[y,x]=a.getCanvasByClient([E.client.x,E.client.y]);return[y,x]}return[E.canvas.x,E.canvas.y]},ph=.8,t0=["node","edge","combo"];function n0(E,a,y,x,b=0){x==="TB"&&a(E,b);const z=y(E);if(z)for(const ee of z)n0(ee,a,y,x,b+1);x==="BT"&&a(E,b)}function D7(E,a,y){const x=[[E,0]];for(;x.length;){const[b,z]=x.shift();a(b,z);const ee=y(b);if(ee)for(const re of ee)x.push([re,z+1])}}function c5(E,a,y,x,b="both"){if(a==="combo"||a==="node")return wx(E,y,x,b);const z=E.getEdgeData(y);if(!z)return[];const ee=wx(E,z.source,x-1,b),re=wx(E,z.target,x-1,b);return Array.from(new Set([...ee,...re,y]))}function wx(E,a,y,x="both"){const b=new Set,z=new Set,ee=new Set;return D7(a,(re,ae)=>{ae>y||(ee.add(re),E.getRelatedEdgesData(re,x).forEach(oe=>{const de=Br(oe);!z.has(de)&&ae<y&&(ee.add(de),z.add(de))}))},re=>E.getRelatedEdgesData(re,x).map(ae=>ae.source===re?ae.target:ae.source).filter(ae=>b.has(ae)?!1:(b.add(ae),!0))),Array.from(ee)}function Mx(E){return E.states||[]}var Sy=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(de){try{oe(x.next(de))}catch(ge){ee(ge)}}function ae(de){try{oe(x.throw(de))}catch(ge){ee(ge)}}function oe(de){de.done?z(de.value):b(de.value).then(re,ae)}oe((x=x.apply(E,a||[])).next())})};class by extends Dd{constructor(a,y){super(a,Object.assign({},by.defaultOptions,y)),this.onClickSelect=x=>Sy(this,void 0,void 0,function*(){var b,z;this.validate(x)&&(yield this.updateState(x),(z=(b=this.options).onClick)===null||z===void 0||z.call(b,x))}),this.onClickCanvas=x=>Sy(this,void 0,void 0,function*(){var b,z;this.validate(x)&&(yield this.clearState(),(z=(b=this.options).onClick)===null||z===void 0||z.call(b,x))}),this.shortcut=new X0(a.graph),this.bindEvents()}bindEvents(){const{graph:a}=this.context;this.unbindEvents(),t0.forEach(y=>{a.on(`${y}:${Ea.CLICK}`,this.onClickSelect)}),a.on(fh.CLICK,this.onClickCanvas)}get isMultipleSelect(){const{multiple:a,trigger:y}=this.options;return a&&this.shortcut.match(y)}getNeighborIds(a){const{target:y,targetType:x}=a,{graph:b}=this.context,{degree:z}=this.options;return c5(b,x,y.id,typeof z=="function"?z(a):z).filter(ee=>ee!==y.id)}updateState(a){return Sy(this,void 0,void 0,function*(){const{state:y,unselectedState:x,neighborState:b,animation:z}=this.options;if(!y&&!b&&!x)return;const{target:ee}=a,{graph:re}=this.context,ae=re.getElementData(ee.id),oe=Mx(ae).includes(y)?"unselect":"select",de={},ge=this.isMultipleSelect,ye=[ee.id],De=this.getNeighborIds(a);if(ge)if(Object.assign(de,this.getDataStates()),oe==="select"){const ke=(ze,We)=>{ze.forEach(Ve=>{const Ze=new Set(re.getElementState(Ve));Ze.add(We),Ze.delete(x),de[Ve]=Array.from(Ze)})};ke(ye,y),ke(De,b),x&&Object.keys(de).forEach(ze=>{const We=de[ze];!We.includes(y)&&!We.includes(b)&&!We.includes(x)&&de[ze].push(x)})}else{const ke=de[ee.id];de[ee.id]=ke.filter(ze=>ze!==y&&ze!==b),ke.includes(x)||de[ee.id].push(x),De.forEach(ze=>{de[ze]=de[ze].filter(We=>We!==b),de[ze].includes(y)||de[ze].push(x)})}else if(oe==="select"){Object.assign(de,this.getClearStates(!!x));const ke=(ze,We)=>{ze.forEach(Ve=>{de[Ve]||(de[Ve]=re.getElementState(Ve)),de[Ve].push(We)})};ke(ye,y),ke(De,b),x&&Object.keys(de).forEach(ze=>{!ye.includes(ze)&&!De.includes(ze)&&de[ze].push(x)})}else Object.assign(de,this.getClearStates());yield re.setElementState(de,z)})}getDataStates(){const{graph:a}=this.context,{nodes:y,edges:x,combos:b}=a.getData(),z={};return[...y,...x,...b].forEach(ee=>{z[Br(ee)]=Mx(ee)}),z}getClearStates(a=!1){const{graph:y}=this.context,{state:x,unselectedState:b,neighborState:z}=this.options,ee=new Set([x,b,z]),{nodes:re,edges:ae,combos:oe}=y.getData(),de={};return[...re,...ae,...oe].forEach(ge=>{const ye=Mx(ge),De=ye.filter(ke=>!ee.has(ke));(a||De.length!==ye.length)&&(de[Br(ge)]=De)}),de}clearState(){return Sy(this,void 0,void 0,function*(){const{graph:a}=this.context;yield a.setElementState(this.getClearStates(),this.options.animation)})}validate(a){if(this.destroyed)return!1;const{enable:y}=this.options;return Xi(y)?y(a):!!y}unbindEvents(){const{graph:a}=this.context;t0.forEach(y=>{a.off(`${y}:${Ea.CLICK}`,this.onClickSelect)}),a.off(fh.CLICK,this.onClickCanvas)}destroy(){this.unbindEvents(),super.destroy()}}by.defaultOptions={animation:!0,enable:!0,multiple:!1,trigger:["shift"],state:"selected",neighborState:"selected",unselectedState:void 0,degree:0};function ud(E){var a;return!!(!((a=E.style)===null||a===void 0)&&a.collapsed)}var pc=function(E,a,y){for(var x=0,b=al(a)?a.split("."):a;E&&x<b.length;)E=E[b[x++]];return E===void 0||x<b.length?y:E},fm=function(E,a,y){var x=E,b=al(a)?a.split("."):a;return b.forEach(function(z,ee){ee<b.length-1?(Tu(x[z])||(x[z]=ji(b[ee+1])?[]:{}),x=x[z]):x[z]=y}),E},I7=function(E){var a=tw(E);return a.charAt(0).toLowerCase()+a.substring(1)},O7=I7;function hm(E,a){if(!E.startsWith(a))return!1;const y=E[a.length];return y>="A"&&y<="Z"}function d5(E,a){return`${a}${ey(E)}`}function f5(E,a,y=!0){if(!a||!hm(E,a))return E;const x=E.slice(a.length);return y?O7(x):x}function Su(E,a){const y=Object.entries(E).reduce((x,[b,z])=>(b==="className"||b==="class"||hm(b,a)&&Object.assign(x,{[f5(b,a)]:z}),x),{});if("opacity"in E){const x=d5("opacity",a),b=E.opacity;if(x in E){const z=E[x];Object.assign(y,{opacity:b*z})}else Object.assign(y,{opacity:b})}return y}function Dx(E,a){const y=a.length;return Object.keys(E).reduce((x,b)=>{if(b.startsWith(a)){const z=b.slice(y);x[z]=E[b]}return x},{})}function h5(E,a){const y=typeof a=="string"?[a]:a,x={};return Object.keys(E).forEach(b=>{y.find(z=>b.startsWith(z))||(x[b]=E[b])}),x}function Xte(E,a,y){return Object.entries(E).reduce((x,[b,z])=>(hm(b,a)?x[d5(f5(b,a,!1),y)]=z:x[b]=z,x),{})}function Id(E=0){if(typeof E=="number")return[E,E,E];const[a,y=a,x=a]=E;return[a,y,x]}var T7=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b<x.length;b++)a.indexOf(x[b])<0&&Object.prototype.propertyIsEnumerable.call(E,x[b])&&(y[x[b]]=E[x[b]]);return y};function g5(E,a){const{datum:y,graph:x}=a;return typeof E=="function"?E.call(x,y):Object.fromEntries(Object.entries(E).map(([b,z])=>typeof z=="function"?[b,z.call(x,y)]:[b,z]))}function ic(E,a){const y=(E==null?void 0:E.style)||{},x=(a==null?void 0:a.style)||{};for(const b in y)b in x||(x[b]=y[b]);return Object.assign({},E,a,{style:x})}function L7(E){const{x:a,y,z:x,class:b,className:z,transform:ee,transformOrigin:re,zIndex:ae,visibility:oe}=E;return T7(E,["x","y","z","class","className","transform","transformOrigin","zIndex","visibility"])}function B7(E,a){const y=Id(E);let x={};return a.text&&!a.fontSize&&(x={fontSize:Math.min(...y)*.5}),a.src&&(!a.width||!a.height)&&(x={width:y[0]*.5,height:y[1]*.5}),x}function v5(E){if(E)return typeof E=="string"||typeof E=="function"||Array.isArray(E)?{type:"group",field:a=>a.id,color:E,invert:!1}:E}function N7(E,a){if(!a)return{};const{type:y,color:x,field:b,invert:z}=a,ee=ae=>{const oe=typeof x=="string"?hh("palette",x):x;if(typeof oe=="function"){const de={};return ae.forEach(([ge,ye])=>{de[ge]=oe(z?1-ye:ye)}),de}else if(Array.isArray(oe)){const de=z?[...oe].reverse():oe,ge={};return ae.forEach(([ye,De])=>{ge[ye]=de[De%oe.length]}),ge}return{}},re=(ae,oe)=>{var de;return typeof ae=="string"?(de=oe.data)===null||de===void 0?void 0:de[ae]:ae==null?void 0:ae(oe)};if(y==="group"){const ae=ny(E,ye=>{if(!b)return"default";const De=re(b,ye);return De?String(De):"default"}),oe=Object.keys(ae),de=ee(oe.map((ye,De)=>[ye,De])),ge={};return Object.entries(ae).forEach(([ye,De])=>{De.forEach(ke=>{ge[Br(ke)]=de[ye]})}),ge}else if(y==="value"){const[ae,oe]=E.reduce(([ge,ye],De)=>{const ke=re(b,De);if(typeof ke!="number")throw new Error(gh(`Palette field ${b} is not a number`));return[Math.min(ge,ke),Math.max(ye,ke)]},[1/0,-1/0]),de=oe-ae;return ee(E.map(ge=>[ge.id,(re(b,ge)-ae)/de]))}}function m5(E){const a=typeof E=="string"?hh("palette",E):E;if(typeof a!="function")return a}function p5(E,a){let y=2*E;return typeof a=="string"?y=E*Number(a.replace("%",""))/100:typeof a=="number"&&(y=a),isNaN(y)&&(y=2*E),y}function y5(E,a,y=1,x=!1){const b=x?y:1,z=(E.max[0]-E.min[0])*b;return p5(z,a)}function R7(E,a,y=1){const x=Xl(E[0],E[1])*y;return p5(x,a)}var F7={}.toString,k7=function(E){return F7.call(E).replace(/^\[object /,"").replace(/]$/,"")},_7=k7,z7=Object.prototype,j7=function(E){var a=E&&E.constructor,y=typeof a=="function"&&a.prototype||z7;return E===y},U7=j7,W7=Object.prototype.hasOwnProperty;function G7(E){if(Io(E))return!0;if(nm(E))return!E.length;var a=_7(E);if(a==="Map"||a==="Set")return!E.size;if(U7(E))return!Object.keys(E).length;for(var y in E)if(W7.call(E,y))return!1;return!0}var Yf=G7;class gm extends HA{constructor(a){E5(a.style),super(a),this.shapeMap={},this.animateMap={},this.render(this.attributes,this),this.setVisibility(),this.bindEvents()}get parsedAttributes(){return this.attributes}upsert(a,y,x,b,z){var ee,re,ae,oe,de,ge,ye,De;const ke=this.shapeMap[a];if(x===!1){ke&&((ee=z==null?void 0:z.beforeDestroy)===null||ee===void 0||ee.call(z,ke),b.removeChild(ke),delete this.shapeMap[a],(re=z==null?void 0:z.afterDestroy)===null||re===void 0||re.call(z,ke));return}const ze=typeof y=="string"?hh(rm.SHAPE,y):y;if(!ze)throw new Error(gh(`Shape ${y} not found`));if(!ke||ke.destroyed||!(ke instanceof ze)){ke&&((ae=z==null?void 0:z.beforeDestroy)===null||ae===void 0||ae.call(z,ke),ke==null||ke.destroy(),(oe=z==null?void 0:z.afterDestroy)===null||oe===void 0||oe.call(z,ke)),(de=z==null?void 0:z.beforeCreate)===null||de===void 0||de.call(z);const We=new ze({className:a,style:x});return b.appendChild(We),this.shapeMap[a]=We,(ge=z==null?void 0:z.afterCreate)===null||ge===void 0||ge.call(z,We),We}return(ye=z==null?void 0:z.beforeUpdate)===null||ye===void 0||ye.call(z,ke),Xx(ke,x),(De=z==null?void 0:z.afterUpdate)===null||De===void 0||De.call(z,ke),ke}update(a={}){const y=Object.assign({},this.attributes,a);E5(y),Hk(this,y),this.render(y,this),this.setVisibility()}bindEvents(){}getGraphicStyle(a){return L7(a)}get compositeShapes(){return[["badges","badge-"],["ports","port-"]]}animate(a,y){if(a.length===0)return null;const x=[];if(a[0].x!==void 0||a[0].y!==void 0||a[0].z!==void 0){const{x:z=0,y:ee=0,z:re=0}=this.attributes;a.forEach(ae=>{const{x:oe=z,y:de=ee,z:ge=re}=ae;Object.assign(ae,{transform:ge?[["translate3d",oe,de,ge]]:[["translate",oe,de]]})})}const b=super.animate(a,y);if(b&&(Ix(this,b),x.push(b)),Array.isArray(a)&&a.length>0){const z=["transform","transformOrigin","x","y","z","zIndex"];if(Object.keys(a[0]).some(ee=>!z.includes(ee))){Object.entries(this.shapeMap).forEach(([re,ae])=>{const oe=`get${ey(re)}Style`,de=this[oe];if(Xi(de)){const ge=a.map(De=>de.call(this,Object.assign(Object.assign({},this.attributes),De))),ye=ae.animate(ox(ge),y);ye&&(Ix(ae,ye),x.push(ye))}});const ee=(re,ae)=>{if(!Yf(re)){const oe=`get${ey(ae)}Style`,de=this[oe];if(Xi(de)){const ge=a.map(ye=>de.call(this,Object.assign(Object.assign({},this.attributes),ye)));Object.entries(ge[0]).map(([ye])=>{const De=ge.map(ze=>ze[ye]),ke=re[ye];if(ke){const ze=ke.animate(ox(De),y);ze&&(Ix(ke,ze),x.push(ze))}})}}};this.compositeShapes.forEach(([re,ae])=>{const oe=Dx(this.shapeMap,ae);ee(oe,re)})}}return ix(x)}getShape(a){return this.shapeMap[a]}setVisibility(){const{visibility:a}=this.attributes;$g(this,a)}destroy(){this.shapeMap={},this.animateMap={},super.destroy()}}function Ix(E,a){a==null||a.finished.then(()=>{const y=E.activeAnimations.findIndex(x=>x===a);y>-1&&E.activeAnimations.splice(y,1)})}function E5(E){if(!E)return{};if("x"in E||"y"in E||"z"in E){const{x:a=0,y=0,z:x,transform:b}=E,z=aw(a,y,x,b);z&&(E.transform=z)}return E}var H7=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b<x.length;b++)a.indexOf(x[b])<0&&Object.prototype.propertyIsEnumerable.call(E,x[b])&&(y[x[b]]=E[x[b]]);return y};class Xf extends gm{constructor(a){super(ic({style:Xf.defaultStyleProps},a))}isTextStyle(a){return hm(a,"label")}isBackgroundStyle(a){return hm(a,"background")}getTextStyle(a){const y=this.getGraphicStyle(a),{padding:x}=y,b=H7(y,["padding"]);return h5(b,"background")}getBackgroundStyle(a){if(a.background===!1)return!1;const y=this.getGraphicStyle(a),{wordWrap:x,wordWrapWidth:b,padding:z}=y,ee=Su(y,"background"),{min:[re,ae],center:[oe,de],halfExtents:[ge,ye]}=this.shapeMap.text.getGeometryBounds(),[De,ke,ze,We]=Md(z),Ve=ge*2+We+ke,{width:Ze,height:Ye}=ee;Ze&&Ye?Object.assign(ee,{x:oe-Number(Ze)/2,y:de-Number(Ye)/2}):Object.assign(ee,{x:re-We,y:ae-De,width:x?Math.min(Ve,b+We+ke):Ve,height:ye*2+De+ze});const{radius:et}=ee;if(typeof et=="string"&&et.endsWith("%")){const st=Number(et.replace("%",""))/100;ee.radius=Math.min(+ee.width,+ee.height)*st}return ee}render(a=this.parsedAttributes,y=this){this.upsert("text",Yg,this.getTextStyle(a),y),this.upsert("background",gc,this.getBackgroundStyle(a),y)}getGeometryBounds(){return(this.getShape("background")||this.getShape("text")).getGeometryBounds()}}Xf.defaultStyleProps={padding:0,fontSize:12,fontFamily:"system-ui, sans-serif",wordWrap:!0,maxLines:1,wordWrapWidth:128,textOverflow:"...",textBaseline:"middle",backgroundOpacity:.75,backgroundZIndex:-1,backgroundLineWidth:0};class J0 extends gm{constructor(a){super(ic({style:J0.defaultStyleProps},a))}getBadgeStyle(a){return this.getGraphicStyle(a)}render(a=this.parsedAttributes,y=this){this.upsert("label",Xf,this.getBadgeStyle(a),y)}getGeometryBounds(){const a=this.getShape("label");return(a.getShape("background")||a.getShape("text")).getGeometryBounds()}}J0.defaultStyleProps={padding:[2,4,2,4],fontSize:10,wordWrap:!1,backgroundRadius:"50%",backgroundOpacity:1};function V7(E,a=!0){const y=[];return E.forEach((x,b)=>{y.push([b===0?"M":"L",...x])}),a&&y.push(["Z"]),y}const A5={M:["x","y"],m:["dx","dy"],H:["x"],h:["dx"],V:["y"],v:["dy"],L:["x","y"],l:["dx","dy"],Z:[],z:[],C:["x1","y1","x2","y2","x","y"],c:["dx1","dy1","dx2","dy2","dx","dy"],S:["x2","y2","x","y"],s:["dx2","dy2","dx","dy"],Q:["x1","y1","x","y"],q:["dx1","dy1","dx","dy"],T:["x","y"],t:["dx","dy"],A:["rx","ry","rotation","large-arc","sweep","x","y"],a:["rx","ry","rotation","large-arc","sweep","dx","dy"]};function K7(E){const a=E.replace(/[\n\r]/g,"").replace(/-/g," -").replace(/(\d*\.)(\d+)(?=\.)/g,"$1$2 ").trim().split(/\s*,|\s+/),y=[];let x="",b={};for(;a.length>0;){let z=a.shift();z in A5?x=z:a.unshift(z),b={type:x},A5[x].forEach(ae=>{z=a.shift(),b[ae]=z}),x==="M"?x="L":x==="m"&&(x="l");const[ee,...re]=Object.values(b);y.push([ee,...re.map(Number)])}return y}function Z7(E){const a=[];return(typeof E=="string"?K7(E):E).forEach(x=>{const b=x[0];if(b==="Z"){a.push(a[0]);return}if(b!=="A")for(let z=1;z<x.length;z=z+2)a.push([x[z],x[z+1],0]);else{const z=x.length;a.push([x[z-2],x[z-1],0])}}),a}const x5=E=>{if(E.length<2)return[["M",0,0],["L",0,0]];const a=E[0],y=E[1],x=E[E.length-1],b=E[E.length-2];E.unshift(b,x),E.push(a,y);const z=[["M",x[0],x[1]]];for(let ee=1;ee<E.length-2;ee+=1){const[re,ae]=E[ee-1],[oe,de]=E[ee],[ge,ye]=E[ee+1],[De,ke]=ee!==E.length-2?E[ee+2]:[ge,ye],ze=oe+(ge-re)/6,We=de+(ye-ae)/6,Ve=ge-(De-oe)/6,Ze=ye-(ke-de)/6;z.push(["C",ze,We,Ve,Ze,ge,ye])}return z};function Q7(E,a,y,x,b,z,ee){const[re,ae]=mh(E,a),oe={textAlign:a==="left"?"right":a==="right"?"left":"center",textBaseline:a==="top"?"bottom":a==="bottom"?"top":"middle",transform:[["translate",re+y,ae+x]]};if(a==="center"||!b)return oe;const de=Z7(z);if(!de||de.length<=3)return oe;const ge=de.map((ke,ze)=>{const We=ke,Ve=de[(ze+1)%de.length];return Nu(We,Ve)?null:[We,Ve]}).filter(Boolean),ye=P7([re,ae],ge),De=s5([re,ae],ye);if(De&&ye&&(oe.transform=[["translate",De[0]+y,De[1]+x]],ee)){const ke=Math.atan((ye[0][1]-ye[1][1])/(ye[0][0]-ye[1][0]));oe.transform.push(["rotate",ke/Math.PI*180]),oe.textAlign="center",(a==="right"||a==="left")&&(ke>0?oe.textBaseline=a==="right"?"bottom":"top":oe.textBaseline=a==="right"?"top":"bottom")}return oe}var Y7=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b<x.length;b++)a.indexOf(x[b])<0&&Object.prototype.propertyIsEnumerable.call(E,x[b])&&(y[x[b]]=E[x[b]]);return y};class vm extends gm{constructor(a){super(ic({style:vm.defaultStyleProps},a))}getLabelStyle(a){if(!a.label||!a.d||a.d.length===0)return!1;const y=Su(this.getGraphicStyle(a),"label"),{maxWidth:x,offsetX:b,offsetY:z,autoRotate:ee,placement:re,closeToPath:ae}=y,oe=Y7(y,["maxWidth","offsetX","offsetY","autoRotate","placement","closeToPath"]),de=this.shapeMap.key,ge=de==null?void 0:de.getRenderBounds();return Object.assign(Q7(ge,re,b,z,ae,a.d,ee),{wordWrapWidth:y5(ge,x)},oe)}getKeyStyle(a){return this.getGraphicStyle(a)}render(a,y){this.upsert("key",Cd,this.getKeyStyle(a),y),this.upsert("label",Xf,this.getLabelStyle(a),y)}}vm.defaultStyleProps={label:!0,labelPlacement:"bottom",labelCloseToPath:!0,labelAutoRotate:!0,labelOffsetX:0,labelOffsetY:0};function X7(E){const a=[],y=x=>{x!=null&&x.children.length&&x.children.forEach(b=>{a.push(b),y(b)})};return y(E),a}function J7(E){const a=[];let y=E.parentNode;for(;y;)a.push(y),y=y.parentNode;return a}class Ox extends $v{constructor(a){super(a),this.onMounted=()=>{this.handleRadius()},this.onAttrModified=()=>{this.handleRadius()},q0=this,this.isMutationObserved=!0,this.addEventListener(Bs.MOUNTED,this.onMounted),this.addEventListener(Bs.ATTR_MODIFIED,this.onAttrModified)}handleRadius(){const{radius:a,clipPath:y,width:x=0,height:b=0}=this.attributes;if(a&&x&&b){const[z,ee]=this.getBounds().min,re={x:z,y:ee,radius:a,width:x,height:b};if(y)Object.assign(this.parsedStyle.clipPath.style,re);else{const ae=new gc({style:re});this.style.clipPath=ae}}else y&&(this.style.clipPath=null)}}const Tx=new WeakMap;let q0=null;const Lx=E=>{if(q0&&J7(q0).includes(E)){const a=Tx.get(E);a?a.includes(q0)||a.push(q0):Tx.set(E,[q0])}},Bx=E=>{const a=Tx.get(E);a&&a.forEach(y=>y.handleRadius())};class S5 extends gm{constructor(a){super(a)}isImage(){const{src:a}=this.attributes;return!!a}getIconStyle(a=this.attributes){const{width:y=0,height:x=0}=a,b=this.getGraphicStyle(a);return this.isImage()?Object.assign({x:-y/2,y:-x/2},b):Object.assign({textBaseline:"middle",textAlign:"center"},b)}render(a=this.attributes,y=this){this.upsert("icon",this.isImage()?Ox:Yg,this.getIconStyle(a),y)}}class b5 extends gm{get context(){return this.config.context}get parsedAttributes(){return this.attributes}onframe(){}animate(a,y){const x=super.animate(a,y);return x&&(x.onframe=()=>this.onframe(),x.finished.then(()=>this.onframe())),x}}var Cy=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b<x.length;b++)a.indexOf(x[b])<0&&Object.prototype.propertyIsEnumerable.call(E,x[b])&&(y[x[b]]=E[x[b]]);return y};class bf extends b5{constructor(a){super(ic({style:bf.defaultStyleProps},a)),this.type="node"}getSize(a=this.attributes){const{size:y}=a;return Id(y)}getKeyStyle(a){const y=this.getGraphicStyle(a);return Object.assign(h5(y,["label","halo","icon","badge","port"]))}getLabelStyle(a){if(a.label===!1||!a.labelText)return!1;const y=Su(this.getGraphicStyle(a),"label"),{placement:x,maxWidth:b,offsetX:z,offsetY:ee}=y,re=Cy(y,["placement","maxWidth","offsetX","offsetY"]),ae=this.getShape("key").getLocalBounds();return Object.assign(nM(ae,x,z,ee),{wordWrapWidth:y5(ae,b)},re)}getHaloStyle(a){if(a.halo===!1)return!1;const y=this.getKeyStyle(a),{fill:x}=y,b=Cy(y,["fill"]),z=Su(this.getGraphicStyle(a),"halo");return Object.assign(Object.assign(Object.assign({},b),{stroke:x}),z)}getIconStyle(a){if(a.icon===!1||!a.iconText&&!a.iconSrc)return!1;const y=Su(this.getGraphicStyle(a),"icon");return Object.assign(B7(a.size,y),y)}getBadgesStyle(a){var y;const x=Dx(this.shapeMap,"badge-"),b={};if(Object.keys(x).forEach(ge=>{b[ge]=!1}),a.badge===!1||!(!((y=a.badges)===null||y===void 0)&&y.length))return b;const{badges:z=[],badgePalette:ee,opacity:re=1}=a,ae=Cy(a,["badges","badgePalette","opacity"]),oe=m5(ee),de=Su(this.getGraphicStyle(ae),"badge");return z.forEach((ge,ye)=>{b[ye]=Object.assign(Object.assign({backgroundFill:oe?oe[ye%(oe==null?void 0:oe.length)]:void 0,opacity:re},de),this.getBadgeStyle(ge))}),b}getBadgeStyle(a){const y=this.getShape("key"),{placement:x="top",offsetX:b,offsetY:z}=a,ee=Cy(a,["placement","offsetX","offsetY"]),re=nM(y.getLocalBounds(),x,b,z,!0);return Object.assign(Object.assign({},re),ee)}getPortsStyle(a){var y;const x=this.getPorts(),b={};if(Object.keys(x).forEach(re=>{b[re]=!1}),a.port===!1||!(!((y=a.ports)===null||y===void 0)&&y.length))return b;const z=Su(this.getGraphicStyle(a),"port"),{ports:ee=[]}=a;return ee.forEach((re,ae)=>{const oe=re.key||ae,de=Object.assign(Object.assign({},z),re);if($5(de))b[oe]=!1;else{const[ge,ye]=this.getPortXY(a,re);b[oe]=Object.assign({transform:[["translate",ge,ye]]},de)}}),b}getPortXY(a,y){const{placement:x="left"}=y,b=this.getShape("key");return Zx(q7(this.context,b),x)}getPorts(){return Dx(this.shapeMap,"port-")}getCenter(){return this.getShape("key").getBounds().center}getIntersectPoint(a,y=!1){const x=this.getShape("key").getBounds();return b7(a,x,y)}drawHaloShape(a,y){const x=this.getHaloStyle(a),b=this.getShape("key");this.upsert("halo",b.constructor,x,y)}drawIconShape(a,y){const x=this.getIconStyle(a);this.upsert("icon",S5,x,y),Lx(this)}drawBadgeShapes(a,y){const x=this.getBadgesStyle(a);Object.keys(x).forEach(b=>{const z=x[b];this.upsert(`badge-${b}`,J0,z,y)})}drawPortShapes(a,y){const x=this.getPortsStyle(a);Object.keys(x).forEach(b=>{const z=x[b],ee=`port-${b}`;this.upsert(ee,Hf,z,y)})}drawLabelShape(a,y){const x=this.getLabelStyle(a);this.upsert("label",Xf,x,y)}_drawKeyShape(a,y){return this.drawKeyShape(a,y)}render(a=this.parsedAttributes,y=this){this._drawKeyShape(a,y),this.getShape("key")&&(this.drawHaloShape(a,y),this.drawIconShape(a,y),this.drawBadgeShapes(a,y),this.drawLabelShape(a,y),this.drawPortShapes(a,y))}update(a){super.update(a),a&&("x"in a||"y"in a||"z"in a)&&Bx(this)}onframe(){this.drawBadgeShapes(this.parsedAttributes,this),this.drawLabelShape(this.parsedAttributes,this)}}bf.defaultStyleProps={x:0,y:0,size:32,droppable:!0,draggable:!0,port:!0,ports:[],portZIndex:2,portLinkToCenter:!1,badge:!0,badges:[],badgeZIndex:3,halo:!1,haloDroppable:!1,haloLineDash:0,haloLineWidth:12,haloStrokeOpacity:.25,haloPointerEvents:"none",haloZIndex:-1,icon:!0,iconZIndex:1,label:!0,labelIsBillboard:!0,labelMaxWidth:"200%",labelPlacement:"bottom",labelWordWrap:!1,labelZIndex:0};function q7(E,a){if(!E)return a.getLocalBounds();const y=E.canvas.getLayer(),x=a.cloneNode();$g(x,"hidden"),y.appendChild(x);const b=x.getLocalBounds();return x.destroy(),b}class r0 extends bf{constructor(a){super(ic({style:r0.defaultStyleProps},a))}drawKeyShape(a,y){return this.upsert("key",Hf,this.getKeyStyle(a),y)}getKeyStyle(a){const y=super.getKeyStyle(a);return Object.assign(Object.assign({},y),{r:Math.min(...this.getSize(a))/2})}getIconStyle(a){const y=super.getIconStyle(a),{r:x}=this.getShape("key").attributes,b=x*2*ph;return y?Object.assign({width:b,height:b},y):!1}getIntersectPoint(a,y=!1){const x=this.getShape("key").getBounds();return Ay(a,x,y)}}r0.defaultStyleProps={size:32};class Py extends bf{constructor(a){super(a)}get parsedAttributes(){return this.attributes}drawKeyShape(a,y){return this.upsert("key",Qg,this.getKeyStyle(a),y)}getKeyStyle(a){const y=super.getKeyStyle(a);return Object.assign(Object.assign({},y),{points:this.getPoints(a)})}getIntersectPoint(a,y=!1){var x,b;const{points:z}=this.getShape("key").attributes,ee=[+(((x=this.attributes)===null||x===void 0?void 0:x.x)||0),+(((b=this.attributes)===null||b===void 0?void 0:b.y)||0)];return o5(a,ee,z,!0,y).point}}class $7 extends Py{constructor(a){super(a)}getPoints(a){const[y,x]=this.getSize(a);return Gk(y,x)}}var e9=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b<x.length;b++)a.indexOf(x[b])<0&&Object.prototype.propertyIsEnumerable.call(E,x[b])&&(y[x[b]]=E[x[b]]);return y};class wy extends r0{constructor(a){super(ic({style:wy.defaultStyleProps},a))}parseOuterR(){const{size:a}=this.parsedAttributes;return Math.min(...Id(a))/2}parseInnerR(){const{innerR:a}=this.parsedAttributes;return al(a)?parseInt(a)/100*this.parseOuterR():a}drawDonutShape(a,y){const{donuts:x}=a;if(!(x!=null&&x.length))return;const b=x.map(ge=>ji(ge)?{value:ge}:ge),z=Su(this.getGraphicStyle(a),"donut"),ee=m5(a.donutPalette);if(!ee)return;const re=b.reduce((ge,ye)=>{var De;return ge+((De=ye.value)!==null&&De!==void 0?De:0)},0),ae=this.parseOuterR(),oe=this.parseInnerR();let de=0;b.forEach((ge,ye)=>{const{value:De=0,color:ke=ee[ye%ee.length]}=ge,ze=e9(ge,["value","color"]),We=(re===0?1/b.length:De/re)*360;this.upsert(`round${ye}`,Cd,Object.assign(Object.assign(Object.assign({},z),{d:r9(ae,oe,de,de+We),fill:ke}),ze),y),de+=We})}render(a,y=this){super.render(a,y),this.drawDonutShape(a,y)}}wy.defaultStyleProps={innerR:"50%",donuts:[],donutPalette:"tableau"};const My=(E,a,y,x)=>[E+Math.sin(x)*y,a-Math.cos(x)*y],t9=(E,a,y,x)=>x<=0||y<=x?[["M",E-y,a],["A",y,y,0,1,1,E+y,a],["A",y,y,0,1,1,E-y,a],["Z"]]:[["M",E-y,a],["A",y,y,0,1,1,E+y,a],["A",y,y,0,1,1,E-y,a],["Z"],["M",E+x,a],["A",x,x,0,1,0,E-x,a],["A",x,x,0,1,0,E+x,a],["Z"]],n9=(E,a,y,x,b,z)=>{const[ee,re]=[b/360*2*Math.PI,z/360*2*Math.PI],ae=[My(E,a,x,ee),My(E,a,y,ee),My(E,a,y,re),My(E,a,x,re)],oe=re-ee>Math.PI?1:0;return[["M",ae[0][0],ae[0][1]],["L",ae[1][0],ae[1][1]],["A",y,y,0,oe,1,ae[2][0],ae[2][1]],["L",ae[3][0],ae[3][1]],["A",x,x,0,oe,0,ae[0][0],ae[0][1]],["Z"]]},r9=(E=0,a=0,y,x)=>{const[b,z]=[0,0];return Math.abs(y-x)%360<1e-6?t9(b,z,E,a):n9(b,z,E,a,y,x)};class Dy extends bf{constructor(a){super(ic({style:Dy.defaultStyleProps},a))}drawKeyShape(a,y){return this.upsert("key",qv,this.getKeyStyle(a),y)}getKeyStyle(a){const y=super.getKeyStyle(a),[x,b]=this.getSize(a);return Object.assign(Object.assign({},y),{rx:x/2,ry:b/2})}getIconStyle(a){const y=super.getIconStyle(a),{rx:x,ry:b}=this.getShape("key").attributes,z=Math.min(+x,+b)*2*ph;return y?Object.assign({width:z,height:z},y):!1}getIntersectPoint(a,y=!1){const x=this.getShape("key").getBounds();return Ay(a,x,y)}}Dy.defaultStyleProps={size:[45,35]};class a9 extends Py{constructor(a){super(a)}getOuterR(a){return a.outerR||Math.min(...this.getSize(a))/2}getPoints(a){return Vk(this.getOuterR(a))}getIconStyle(a){const y=super.getIconStyle(a),x=this.getOuterR(a)*ph;return y?Object.assign({width:x,height:x},y):!1}}function i9(E,a){var y=a.cx,x=y===void 0?0:y,b=a.cy,z=b===void 0?0:b,ee=a.r;E.arc(x,z,ee,0,Math.PI*2,!1)}function o9(E,a){var y=a.cx,x=y===void 0?0:y,b=a.cy,z=b===void 0?0:b,ee=a.rx,re=a.ry;if(E.ellipse)E.ellipse(x,z,ee,re,0,0,Math.PI*2,!1);else{var ae=ee>re?ee:re,oe=ee>re?1:ee/re,de=ee>re?re/ee:1;E.save(),E.scale(oe,de),E.arc(x,z,ae,0,Math.PI*2)}}function s9(E,a){var y=a.x1,x=a.y1,b=a.x2,z=a.y2,ee=a.markerStart,re=a.markerEnd,ae=a.markerStartOffset,oe=a.markerEndOffset,de=0,ge=0,ye=0,De=0,ke=0,ze,We;ee&&cl(ee)&&ae&&(ze=b-y,We=z-x,ke=Math.atan2(We,ze),de=Math.cos(ke)*(ae||0),ge=Math.sin(ke)*(ae||0)),re&&cl(re)&&oe&&(ze=y-b,We=x-z,ke=Math.atan2(We,ze),ye=Math.cos(ke)*(oe||0),De=Math.sin(ke)*(oe||0)),E.moveTo(y+de,x+ge),E.lineTo(b+ye,z+De)}function l9(E,a){var y=a.markerStart,x=a.markerEnd,b=a.markerStartOffset,z=a.markerEndOffset,ee=a.d,re=ee.absolutePath,ae=ee.segments,oe=0,de=0,ge=0,ye=0,De=0,ke,ze;if(y&&cl(y)&&b){var We=y.parentNode.getStartTangent(),Ve=(0,Ps.Z)(We,2),Ze=Ve[0],Ye=Ve[1];ke=Ze[0]-Ye[0],ze=Ze[1]-Ye[1],De=Math.atan2(ze,ke),oe=Math.cos(De)*(b||0),de=Math.sin(De)*(b||0)}if(x&&cl(x)&&z){var et=x.parentNode.getEndTangent(),st=(0,Ps.Z)(et,2),ht=st[0],mt=st[1];ke=ht[0]-mt[0],ze=ht[1]-mt[1],De=Math.atan2(ze,ke),ge=Math.cos(De)*(z||0),ye=Math.sin(De)*(z||0)}for(var dt=0;dt<re.length;dt++){var Ot=re[dt],_t=Ot[0],wt=re[dt+1],$t=dt===0&&(oe!==0||de!==0),gn=(dt===re.length-1||wt&&(wt[0]==="M"||wt[0]==="Z"))&&ge!==0&&ye!==0,Xt=$t?[oe,de]:[0,0],Tn=(0,Ps.Z)(Xt,2),er=Tn[0],En=Tn[1],yn=gn?[ge,ye]:[0,0],Cn=(0,Ps.Z)(yn,2),qn=Cn[0],pn=Cn[1];switch(_t){case"M":E.moveTo(Ot[1]+er,Ot[2]+En);break;case"L":E.lineTo(Ot[1]+qn,Ot[2]+pn);break;case"Q":E.quadraticCurveTo(Ot[1],Ot[2],Ot[3]+qn,Ot[4]+pn);break;case"C":E.bezierCurveTo(Ot[1],Ot[2],Ot[3],Ot[4],Ot[5]+qn,Ot[6]+pn);break;case"A":{var lr=ae[dt].arcParams,Jr=lr.cx,na=lr.cy,Hr=lr.rx,Ar=lr.ry,Wr=lr.startAngle,ya=lr.endAngle,Ra=lr.xRotation,Aa=lr.sweepFlag;if(E.ellipse)E.ellipse(Jr,na,Hr,Ar,Ra,Wr,ya,!!(1-Aa));else{var co=Hr>Ar?Hr:Ar,So=Hr>Ar?1:Hr/Ar,ti=Hr>Ar?Ar/Hr:1;E.translate(Jr,na),E.rotate(Ra),E.scale(So,ti),E.arc(0,0,co,Wr,ya,!!(1-Aa)),E.scale(1/So,1/ti),E.rotate(-Ra),E.translate(-Jr,-na)}gn&&E.lineTo(Ot[6]+ge,Ot[7]+ye);break}case"Z":E.closePath();break}}}function u9(E,a){var y=a.markerStart,x=a.markerEnd,b=a.markerStartOffset,z=a.markerEndOffset,ee=a.points.points,re=ee.length,ae=ee[0][0],oe=ee[0][1],de=ee[re-1][0],ge=ee[re-1][1],ye=0,De=0,ke=0,ze=0,We=0,Ve,Ze;y&&cl(y)&&b&&(Ve=ee[1][0]-ee[0][0],Ze=ee[1][1]-ee[0][1],We=Math.atan2(Ze,Ve),ye=Math.cos(We)*(b||0),De=Math.sin(We)*(b||0)),x&&cl(x)&&z&&(Ve=ee[re-1][0]-ee[0][0],Ze=ee[re-1][1]-ee[0][1],We=Math.atan2(Ze,Ve),ke=Math.cos(We)*(z||0),ze=Math.sin(We)*(z||0)),E.moveTo(ae+(ye||ke),oe+(De||ze));for(var Ye=1;Ye<re-1;Ye++){var et=ee[Ye];E.lineTo(et[0],et[1])}E.lineTo(de,ge)}function c9(E,a){var y=a.markerStart,x=a.markerEnd,b=a.markerStartOffset,z=a.markerEndOffset,ee=a.points.points,re=ee.length,ae=ee[0][0],oe=ee[0][1],de=ee[re-1][0],ge=ee[re-1][1],ye=0,De=0,ke=0,ze=0,We=0,Ve,Ze;y&&cl(y)&&b&&(Ve=ee[1][0]-ee[0][0],Ze=ee[1][1]-ee[0][1],We=Math.atan2(Ze,Ve),ye=Math.cos(We)*(b||0),De=Math.sin(We)*(b||0)),x&&cl(x)&&z&&(Ve=ee[re-2][0]-ee[re-1][0],Ze=ee[re-2][1]-ee[re-1][1],We=Math.atan2(Ze,Ve),ke=Math.cos(We)*(z||0),ze=Math.sin(We)*(z||0)),E.moveTo(ae+ye,oe+De);for(var Ye=1;Ye<re-1;Ye++){var et=ee[Ye];E.lineTo(et[0],et[1])}E.lineTo(de+ke,ge+ze)}function d9(E,a){var y=a.x,x=y===void 0?0:y,b=a.y,z=b===void 0?0:b,ee=a.radius,re=a.width,ae=a.height,oe=re,de=ae,ge=ee&&ee.some(function(st){return st!==0});if(!ge)E.rect(x,z,oe,de);else{var ye=re>0?1:-1,De=ae>0?1:-1,ke=ye+De===0,ze=ee.map(function(st){return gu(st,0,Math.min(Math.abs(oe)/2,Math.abs(de)/2))}),We=(0,Ps.Z)(ze,4),Ve=We[0],Ze=We[1],Ye=We[2],et=We[3];E.moveTo(ye*Ve+x,z),E.lineTo(oe-ye*Ze+x,z),Ze!==0&&E.arc(oe-ye*Ze+x,De*Ze+z,Ze,-De*Math.PI/2,ye>0?0:Math.PI,ke),E.lineTo(oe+x,de-De*Ye+z),Ye!==0&&E.arc(oe-ye*Ye+x,de-De*Ye+z,Ye,ye>0?0:Math.PI,De>0?Math.PI/2:1.5*Math.PI,ke),E.lineTo(ye*et+x,de+z),et!==0&&E.arc(ye*et+x,de-De*et+z,et,De>0?Math.PI/2:-Math.PI/2,ye>0?Math.PI:0,ke),E.lineTo(x,De*Ve+z),Ve!==0&&E.arc(ye*Ve+x,De*Ve+z,Ve,ye>0?Math.PI:0,De>0?Math.PI*1.5:Math.PI/2,ke)}}var f9=function(E){function a(){var y;(0,Ha.Z)(this,a);for(var x=arguments.length,b=new Array(x),z=0;z<x;z++)b[z]=arguments[z];return y=bs(this,a,[].concat(b)),y.name="canvas-path-generator",y}return(0,Cs.Z)(a,E),(0,Va.Z)(a,[{key:"init",value:function(){var x,b=(x={},(0,Vi.Z)((0,Vi.Z)((0,Vi.Z)((0,Vi.Z)((0,Vi.Z)((0,Vi.Z)((0,Vi.Z)((0,Vi.Z)((0,Vi.Z)((0,Vi.Z)(x,va.CIRCLE,i9),va.ELLIPSE,o9),va.RECT,d9),va.LINE,s9),va.POLYLINE,c9),va.POLYGON,u9),va.PATH,l9),va.TEXT,void 0),va.GROUP,void 0),va.IMAGE,void 0),(0,Vi.Z)((0,Vi.Z)((0,Vi.Z)(x,va.HTML,void 0),va.MESH,void 0),va.FRAGMENT,void 0));this.context.pathGeneratorFactory=b}},{key:"destroy",value:function(){delete this.context.pathGeneratorFactory}}])}(Qh);var h9=js(),g9=js(),v9=js(),m9=jl(),C5=function(){function E(){var a=this;(0,Ha.Z)(this,E),this.isHit=function(y,x,b,z){var ee=a.context.pointInPathPickerFactory[y.nodeName];if(ee){var re=kf(m9,b),ae=wc(g9,Pc(v9,x[0],x[1],0),re);if(ee(y,new hc(ae[0],ae[1]),z,a.isPointInPath,a.context,a.runtime))return!0}return!1},this.isPointInPath=function(y,x){var b=a.runtime.offscreenCanvasCreator.getOrCreateContext(a.context.config.offscreenCanvas),z=a.context.pathGeneratorFactory[y.nodeName];return z&&(b.beginPath(),z(b,y.parsedStyle),b.closePath()),b.isPointInPath(x.x,x.y)}}return(0,Va.Z)(E,[{key:"apply",value:function(y,x){var b,z=this,ee=y.renderingService,re=y.renderingContext;this.context=y,this.runtime=x;var ae=(b=re.root)===null||b===void 0?void 0:b.ownerDocument;ee.hooks.pick.tapPromise(E.tag,function(){var oe=(0,Kh.Z)((0,Ic.Z)().mark(function de(ge){return(0,Ic.Z)().wrap(function(ye){for(;;)switch(ye.prev=ye.next){case 0:return ye.abrupt("return",z.pick(ae,ge));case 1:case"end":return ye.stop()}},de)}));return function(de){return oe.apply(this,arguments)}}()),ee.hooks.pickSync.tap(E.tag,function(oe){return z.pick(ae,oe)})}},{key:"pick",value:function(y,x){var b=x.topmost,z=x.position,ee=z.x,re=z.y,ae=Pc(h9,ee,re,0),oe=y.elementsFromBBox(ae[0],ae[1],ae[0],ae[1]),de=[],ge=Zh(oe),ye;try{for(ge.s();!(ye=ge.n()).done;){var De=ye.value,ke=De.getWorldTransform(),ze=this.isHit(De,ae,ke,!1);if(ze){var We=hP(De);if(We){var Ve=We.parsedStyle.clipPath,Ze=this.isHit(Ve,ae,Ve.getWorldTransform(),!0);if(Ze){if(b)return x.picked=[De],x;de.push(De)}}else{if(b)return x.picked=[De],x;de.push(De)}}}}catch(Ye){ge.e(Ye)}finally{ge.f()}return x.picked=de,x}}])}();C5.tag="CanvasPicker";function p9(E,a,y){var x=E.parsedStyle,b=x.cx,z=b===void 0?0:b,ee=x.cy,re=ee===void 0?0:ee,ae=x.r,oe=x.fill,de=x.stroke,ge=x.lineWidth,ye=ge===void 0?1:ge,De=x.increasedLineWidthForHitTesting,ke=De===void 0?0:De,ze=x.pointerEvents,We=ze===void 0?"auto":ze,Ve=(ye+ke)/2,Ze=Dc(z,re,a.x,a.y),Ye=Ug(We,oe,de),et=(0,Ps.Z)(Ye,2),st=et[0],ht=et[1];return st&&ht||y?Ze<=ae+Ve:st?Ze<=ae:ht?Ze>=ae-Ve&&Ze<=ae+Ve:!1}function Iy(E,a,y,x){return E/(y*y)+a/(x*x)}function y9(E,a,y){var x=E.parsedStyle,b=x.cx,z=b===void 0?0:b,ee=x.cy,re=ee===void 0?0:ee,ae=x.rx,oe=x.ry,de=x.fill,ge=x.stroke,ye=x.lineWidth,De=ye===void 0?1:ye,ke=x.increasedLineWidthForHitTesting,ze=ke===void 0?0:ke,We=x.pointerEvents,Ve=We===void 0?"auto":We,Ze=a.x,Ye=a.y,et=Ug(Ve,de,ge),st=(0,Ps.Z)(et,2),ht=st[0],mt=st[1],dt=(De+ze)/2,Ot=(Ze-z)*(Ze-z),_t=(Ye-re)*(Ye-re);return ht&&mt||y?Iy(Ot,_t,ae+dt,oe+dt)<=1:ht?Iy(Ot,_t,ae,oe)<=1:mt?Iy(Ot,_t,ae-dt,oe-dt)>=1&&Iy(Ot,_t,ae+dt,oe+dt)<=1:!1}function a0(E,a,y,x,b,z){return b>=E&&b<=E+y&&z>=a&&z<=a+x}function E9(E,a,y,x,b,z,ee){var re=b/2;return a0(E-re,a-re,y,b,z,ee)||a0(E+y-re,a-re,b,x,z,ee)||a0(E+re,a+x-re,y,b,z,ee)||a0(E-re,a+re,b,x,z,ee)}function Oy(E,a,y,x,b,z,ee,re){var ae=(Math.atan2(re-a,ee-E)+Math.PI*2)%(Math.PI*2),oe={x:E+y*Math.cos(ae),y:a+y*Math.sin(ae)};return Dc(oe.x,oe.y,ee,re)<=z/2}function rg(E,a,y,x,b,z,ee){var re=Math.min(E,y),ae=Math.max(E,y),oe=Math.min(a,x),de=Math.max(a,x),ge=b/2;return z>=re-ge&&z<=ae+ge&&ee>=oe-ge&&ee<=de+ge?d2(E,a,y,x,z,ee)<=b/2:!1}function P5(E,a,y,x,b){var z=E.length;if(z<2)return!1;for(var ee=0;ee<z-1;ee++){var re=E[ee][0],ae=E[ee][1],oe=E[ee+1][0],de=E[ee+1][1];if(rg(re,ae,oe,de,a,y,x))return!0}if(b){var ge=E[0],ye=E[z-1];if(rg(ge[0],ge[1],ye[0],ye[1],a,y,x))return!0}return!1}var A9=1e-6;function Nx(E){return Math.abs(E)<A9?0:E<0?-1:1}function x9(E,a,y){return(y[0]-E[0])*(a[1]-E[1])===(a[0]-E[0])*(y[1]-E[1])&&Math.min(E[0],a[0])<=y[0]&&y[0]<=Math.max(E[0],a[0])&&Math.min(E[1],a[1])<=y[1]&&y[1]<=Math.max(E[1],a[1])}function w5(E,a,y){var x=!1,b=E.length;if(b<=2)return!1;for(var z=0;z<b;z++){var ee=E[z],re=E[(z+1)%b];if(x9(ee,re,[a,y]))return!0;Nx(ee[1]-y)>0!=Nx(re[1]-y)>0&&Nx(a-(y-ee[1])*(ee[0]-re[0])/(ee[1]-re[1])-ee[0])<0&&(x=!x)}return x}function M5(E,a,y){for(var x=!1,b=0;b<E.length;b++){var z=E[b];if(x=w5(z,a,y),x)break}return x}function S9(E,a,y){var x=E.parsedStyle,b=x.x1,z=x.y1,ee=x.x2,re=x.y2,ae=x.lineWidth,oe=ae===void 0?1:ae,de=x.increasedLineWidthForHitTesting,ge=de===void 0?0:de,ye=x.pointerEvents,De=ye===void 0?"auto":ye,ke=x.fill,ze=x.stroke,We=Ug(De,ke,ze),Ve=(0,Ps.Z)(We,2),Ze=Ve[1];return!Ze&&!y||!oe?!1:rg(b,z,ee,re,oe+ge,a.x,a.y)}function b9(E,a,y,x,b){for(var z=!1,ee=a/2,re=0;re<E.length;re++){var ae=E[re],oe=ae.currentPoint,de=ae.params,ge=ae.prePoint,ye=ae.box;if(!(ye&&!a0(ye.x-ee,ye.y-ee,ye.width+a,ye.height+a,y,x)))switch(ae.command){case"L":case"Z":if(z=rg(ge[0],ge[1],oe[0],oe[1],a,y,x),z)return!0;break;case"Q":var De=BB(ge[0],ge[1],de[1],de[2],de[3],de[4],y,x);if(z=De<=a/2,z)return!0;break;case"C":var ke=g2(ge[0],ge[1],de[1],de[2],de[3],de[4],de[5],de[6],y,x,b);if(z=ke<=a/2,z)return!0;break;case"A":ae.cubicParams||(ae.cubicParams=oA(ge[0],ge[1],de[1],de[2],de[3],de[4],de[5],de[6],de[7],void 0));for(var ze=ae.cubicParams,We=ge,Ve=0;Ve<ze.length;Ve+=6){var Ze=g2(We[0],We[1],ze[Ve],ze[Ve+1],ze[Ve+2],ze[Ve+3],ze[Ve+4],ze[Ve+5],y,x,b);if(We=[ze[Ve+4],ze[Ve+5]],z=Ze<=a/2,z)return!0}break}}return z}function C9(E,a,y,x,b,z){var ee=E.parsedStyle,re=ee.lineWidth,ae=re===void 0?1:re,oe=ee.increasedLineWidthForHitTesting,de=oe===void 0?0:oe,ge=ee.stroke,ye=ee.fill,De=ee.d,ke=ee.pointerEvents,ze=ke===void 0?"auto":ke,We=De.segments,Ve=De.hasArc,Ze=De.polylines,Ye=De.polygons,et=Ug(ze,(Ye==null?void 0:Ye.length)&&ye,ge),st=(0,Ps.Z)(et,2),ht=st[0],mt=st[1],dt=MA(E),Ot=!1;return ht||y?(Ve?Ot=x(E,a):Ot=M5(Ye,a.x,a.y)||M5(Ze,a.x,a.y),Ot):((mt||y)&&(Ot=b9(We,ae+de,a.x,a.y,dt)),Ot)}function P9(E,a,y){var x=E.parsedStyle,b=x.stroke,z=x.fill,ee=x.lineWidth,re=ee===void 0?1:ee,ae=x.increasedLineWidthForHitTesting,oe=ae===void 0?0:ae,de=x.points,ge=x.pointerEvents,ye=ge===void 0?"auto":ge,De=Ug(ye,z,b),ke=(0,Ps.Z)(De,2),ze=ke[0],We=ke[1],Ve=!1;return(We||y)&&(Ve=P5(de.points,re+oe,a.x,a.y,!0)),!Ve&&(ze||y)&&(Ve=w5(de.points,a.x,a.y)),Ve}function w9(E,a,y){var x=E.parsedStyle,b=x.lineWidth,z=b===void 0?1:b,ee=x.increasedLineWidthForHitTesting,re=ee===void 0?0:ee,ae=x.points,oe=x.pointerEvents,de=oe===void 0?"auto":oe,ge=x.fill,ye=x.stroke,De=Ug(de,ge,ye),ke=(0,Ps.Z)(De,2),ze=ke[1];return!ze&&!y||!z?!1:P5(ae.points,z+re,a.x,a.y,!1)}function M9(E,a,y,x,b){var z=E.parsedStyle,ee=z.radius,re=z.fill,ae=z.stroke,oe=z.lineWidth,de=oe===void 0?1:oe,ge=z.increasedLineWidthForHitTesting,ye=ge===void 0?0:ge,De=z.x,ke=De===void 0?0:De,ze=z.y,We=ze===void 0?0:ze,Ve=z.width,Ze=z.height,Ye=z.pointerEvents,et=Ye===void 0?"auto":Ye,st=Ug(et,re,ae),ht=(0,Ps.Z)(st,2),mt=ht[0],dt=ht[1],Ot=ee&&ee.some(function(gn){return gn!==0}),_t=de+ye;if(Ot){var $t=!1;return(dt||y)&&($t=D9(ke,We,Ve,Ze,ee.map(function(gn){return gu(gn,0,Math.min(Math.abs(Ve)/2,Math.abs(Ze)/2))}),_t,a.x,a.y)),!$t&&(mt||y)&&($t=x(E,a)),$t}else{var wt=_t/2;if(mt&&dt||y)return a0(ke-wt,We-wt,Ve+wt,Ze+wt,a.x,a.y);if(mt)return a0(ke,We,Ve,Ze,a.x,a.y);if(dt)return E9(ke,We,Ve,Ze,_t,a.x,a.y)}return!1}function D9(E,a,y,x,b,z,ee,re){var ae=(0,Ps.Z)(b,4),oe=ae[0],de=ae[1],ge=ae[2],ye=ae[3];return rg(E+oe,a,E+y-de,a,z,ee,re)||rg(E+y,a+de,E+y,a+x-ge,z,ee,re)||rg(E+y-ge,a+x,E+ye,a+x,z,ee,re)||rg(E,a+x-ye,E,a+oe,z,ee,re)||Oy(E+y-de,a+de,de,1.5*Math.PI,2*Math.PI,z,ee,re)||Oy(E+y-ge,a+x-ge,ge,0,.5*Math.PI,z,ee,re)||Oy(E+ye,a+x-ye,ye,.5*Math.PI,Math.PI,z,ee,re)||Oy(E+oe,a+oe,oe,Math.PI,1.5*Math.PI,z,ee,re)}function I9(E,a,y,x,b,z){var ee=E.parsedStyle,re=ee.pointerEvents,ae=re===void 0?"auto":re,oe=ee.x,de=oe===void 0?0:oe,ge=ee.y,ye=ge===void 0?0:ge,De=ee.width,ke=ee.height;if(ae==="non-transparent-pixel"){var ze=b.config.offscreenCanvas,We=z.offscreenCanvasCreator.getOrCreateCanvas(ze),Ve=z.offscreenCanvasCreator.getOrCreateContext(ze,{willReadFrequently:!0});We.width=De,We.height=ke,b.defaultStyleRendererFactory[va.IMAGE].render(Ve,(0,ps.Z)((0,ps.Z)({},E.parsedStyle),{},{x:0,y:0}),E,void 0,void 0,void 0);var Ze=Ve.getImageData(a.x-de,a.y-ye,1,1).data;return Ze.every(function(Ye){return Ye!==0})}return!0}function O9(E,a,y,x){var b=E.getGeometryBounds();return a.x>=b.min[0]&&a.y>=b.min[1]&&a.x<=b.max[0]&&a.y<=b.max[1]}var T9=function(E){function a(){var y;(0,Ha.Z)(this,a);for(var x=arguments.length,b=new Array(x),z=0;z<x;z++)b[z]=arguments[z];return y=bs(this,a,[].concat(b)),y.name="canvas-picker",y}return(0,Cs.Z)(a,E),(0,Va.Z)(a,[{key:"init",value:function(){var x,b=(x={},(0,Vi.Z)((0,Vi.Z)((0,Vi.Z)((0,Vi.Z)((0,Vi.Z)((0,Vi.Z)((0,Vi.Z)((0,Vi.Z)((0,Vi.Z)((0,Vi.Z)(x,va.CIRCLE,p9),va.ELLIPSE,y9),va.RECT,M9),va.LINE,S9),va.POLYLINE,w9),va.POLYGON,P9),va.PATH,C9),va.TEXT,O9),va.GROUP,null),va.IMAGE,I9),(0,Vi.Z)((0,Vi.Z)(x,va.HTML,null),va.MESH,null));this.context.pointInPathPickerFactory=b,this.addRenderingPlugin(new C5)}},{key:"destroy",value:function(){delete this.context.pointInPathPickerFactory,this.removeAllRenderingPlugins()}}])}(Qh);function Jf(E,a){if(!{}.hasOwnProperty.call(E,a))throw new TypeError("attempted to use private field on non-instance");return E}var L9=0;function B9(E){return"__private_"+L9+++"_"+E}var N9=function(){function E(){(0,Ha.Z)(this,E),this.cacheStore=new Map}return(0,Va.Z)(E,[{key:"onRefAdded",value:function(y){}},{key:"has",value:function(y){return this.cacheStore.has(y)}},{key:"put",value:function(y,x,b){return this.cacheStore.has(y)?!1:(this.cacheStore.set(y,{value:x,counter:new Set([b.entity])}),this.onRefAdded(b),!0)}},{key:"get",value:function(y,x){var b=this.cacheStore.get(y);return b?(b.counter.has(x.entity)||(b.counter.add(x.entity),this.onRefAdded(x)),b.value):null}},{key:"update",value:function(y,x,b){var z=this.cacheStore.get(y);return z?(z.value=(0,ps.Z)((0,ps.Z)({},z.value),x),z.counter.has(b.entity)||(z.counter.add(b.entity),this.onRefAdded(b)),!0):!1}},{key:"release",value:function(y,x){var b=this.cacheStore.get(y);return b?(b.counter.delete(x.entity),b.counter.size<=0&&this.cacheStore.delete(y),!0):!1}},{key:"releaseRef",value:function(y){var x=this;Array.from(this.cacheStore.keys()).forEach(function(b){x.release(b,y)})}},{key:"getSize",value:function(){return this.cacheStore.size}},{key:"clear",value:function(){this.cacheStore.clear()}}])}(),Rx=[],Fx=[],kx=function(){function E(){(0,Ha.Z)(this,E)}return(0,Va.Z)(E,null,[{key:"stop",value:function(){var y=arguments.length>0&&arguments[0]!==void 0?arguments[0]:E.api;E.rafId&&(y.cancelAnimationFrame(E.rafId),E.rafId=null)}},{key:"executeTask",value:function(){var y=arguments.length>0&&arguments[0]!==void 0?arguments[0]:E.api;Rx.length<=0&&Fx.length<=0||(Fx.forEach(function(x){return x()}),Fx=Rx.splice(0,E.TASK_NUM_PER_FRAME),E.rafId=y.requestAnimationFrame(function(){E.executeTask(y)}))}},{key:"sliceImage",value:function(y,x,b,z){for(var ee=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,re=arguments.length>5&&arguments[5]!==void 0?arguments[5]:E.api,ae=y.naturalWidth||y.width,oe=y.naturalHeight||y.height,de=x-ee,ge=b-ee,ye=Math.ceil(ae/de),De=Math.ceil(oe/ge),ke={tileSize:[x,b],gridSize:[De,ye],tiles:Array(De).fill(null).map(function(){return Array(ye).fill(null)})},ze=function(Ze){for(var Ye=function(ht){Rx.push(function(){var mt=ht*de,dt=Ze*ge,Ot=[Math.min(x,ae-mt),Math.min(b,oe-dt)],_t=Ot[0],wt=Ot[1],$t=re.createCanvas();$t.width=x,$t.height=b;var gn=$t.getContext("2d");gn.drawImage(y,mt,dt,_t,wt,0,0,_t,wt),ke.tiles[Ze][ht]={x:mt,y:dt,tileX:ht,tileY:Ze,data:$t},z()})},et=0;et<ye;et++)Ye(et)},We=0;We<De;We++)ze(We);return E.stop(),E.executeTask(),ke}}])}();kx.TASK_NUM_PER_FRAME=10;var Od=new N9;Od.onRefAdded=function(a){var y=this;a.addEventListener(Bs.DESTROY,function(){y.releaseRef(a)},{once:!0})};var _x=function(){function E(a,y){(0,Ha.Z)(this,E),this.gradientCache={},this.patternCache={},this.context=a,this.runtime=y}return(0,Va.Z)(E,[{key:"getImageSync",value:function(y,x,b){var z=al(y)?y:y.src;if(Od.has(z)){var ee=Od.get(z,x);if(ee.img.complete)return b==null||b(ee),ee}return this.getOrCreateImage(y,x).then(function(re){b==null||b(re)}).catch(function(re){console.error(re)}),null}},{key:"getOrCreateImage",value:function(y,x){var b=this,z=al(y)?y:y.src;if(!al(y)&&!Od.has(z)){var ee={img:y,size:[y.naturalWidth||y.width,y.naturalHeight||y.height],tileSize:Ty(y)};Od.put(z,ee,x)}if(Od.has(z)){var re=Od.get(z,x);return re.img.complete?Promise.resolve(re):new Promise(function(ae,oe){re.img.addEventListener("load",function(){re.size=[re.img.naturalWidth||re.img.width,re.img.naturalHeight||re.img.height],re.tileSize=Ty(re.img),ae(re)}),re.img.addEventListener("error",function(de){oe(de)})})}return new Promise(function(ae,oe){var de=b.context.config.createImage();if(de){var ge={img:de,size:[0,0],tileSize:Ty(de)};Od.put(z,ge,x),de.onload=function(){ge.size=[de.naturalWidth||de.width,de.naturalHeight||de.height],ge.tileSize=Ty(ge.img),ae(ge)},de.onerror=function(ye){oe(ye)},de.crossOrigin="Anonymous",de.src=z}})}},{key:"createDownSampledImage",value:function(){var a=(0,Kh.Z)((0,Ic.Z)().mark(function x(b,z){var ee,re,ae,oe,de,ge,ye,De,ke,ze,We,Ve,Ze,Ye;return(0,Ic.Z)().wrap(function(et){for(;;)switch(et.prev=et.next){case 0:return et.next=1,this.getOrCreateImage(b,z);case 1:if(ee=et.sent,typeof ee.downSamplingRate=="undefined"){et.next=2;break}return et.abrupt("return",ee);case 2:if(re=this.context.config.enableLargeImageOptimization,ae=typeof re=="boolean"?{}:re,oe=ae.maxDownSampledImageSize,de=oe===void 0?2048:oe,ge=ae.downSamplingRateThreshold,ye=ge===void 0?.5:ge,De=this.runtime.globalThis.createImageBitmap,ke=(0,Ps.Z)(ee.size,2),ze=ke[0],We=ke[1],Ve=ee.img,Ze=Math.min((de+de)/(ze+We),Math.max(.01,Math.min(ye,.5))),Ye=(0,ps.Z)((0,ps.Z)({},ee),{},{downSamplingRate:Ze}),Od.update(ee.img.src,Ye,z),!De){et.next=7;break}return et.prev=3,et.next=4,De(ee.img,{resizeWidth:ze*Ze,resizeHeight:We*Ze});case 4:Ve=et.sent,et.next=6;break;case 5:et.prev=5,et.catch(3),Ze=1;case 6:et.next=8;break;case 7:Ze=1;case 8:return Ye=(0,ps.Z)((0,ps.Z)({},this.getImageSync(b,z)),{},{downSampled:Ve,downSamplingRate:Ze}),Od.update(ee.img.src,Ye,z),et.abrupt("return",Ye);case 9:case"end":return et.stop()}},x,this,[[3,5]])}));function y(x,b){return a.apply(this,arguments)}return y}()},{key:"createImageTiles",value:function(){var a=(0,Kh.Z)((0,Ic.Z)().mark(function x(b,z,ee,re){var ae,oe,de,ge,ye;return(0,Ic.Z)().wrap(function(De){for(;;)switch(De.prev=De.next){case 0:return De.next=1,this.getOrCreateImage(b,re);case 1:return ae=De.sent,oe=re.ownerDocument.defaultView,de=oe.requestAnimationFrame,ge=oe.cancelAnimationFrame,kx.api={requestAnimationFrame:de,cancelAnimationFrame:ge,createCanvas:function(){return UA.createCanvas()}},ye=(0,ps.Z)((0,ps.Z)({},ae),kx.sliceImage(ae.img,ae.tileSize[0],ae.tileSize[0],ee)),Od.update(ae.img.src,ye,re),De.abrupt("return",ye);case 2:case"end":return De.stop()}},x,this)}));function y(x,b,z,ee){return a.apply(this,arguments)}return y}()},{key:"releaseImage",value:function(y,x){Od.release(al(y)?y:y.src,x)}},{key:"releaseImageRef",value:function(y){Od.releaseRef(y)}},{key:"getOrCreatePatternSync",value:function(y,x,b,z,ee,re,ae){var oe=this.generatePatternKey(x);if(oe&&this.patternCache[oe])return this.patternCache[oe];var de=x.image,ge=x.repetition,ye=x.transform,De,ke=!1;if(al(de)){var ze=this.getImageSync(de,y,ae);De=ze==null?void 0:ze.img}else z?(De=z,ke=!0):De=de;var We=De&&b.createPattern(De,ge);if(We){var Ve;ye?Ve=bP(oP(ye),new Hl({})):Ve=Uh(jl()),ke&&MC(Ve,Ve,[1/ee,1/ee,1]),We.setTransform({a:Ve[0],b:Ve[1],c:Ve[4],d:Ve[5],e:Ve[12]+re[0],f:Ve[13]+re[1]})}return oe&&We&&(this.patternCache[oe]=We),We}},{key:"getOrCreateGradient",value:function(y,x){var b=this.generateGradientKey(y),z=y.type,ee=y.steps,re=y.min,ae=y.width,oe=y.height,de=y.angle,ge=y.cx,ye=y.cy,De=y.size;if(this.gradientCache[b])return this.gradientCache[b];var ke=null;if(z===Yh.LinearGradient){var ze=O6(re,ae,oe,de),We=ze.x1,Ve=ze.y1,Ze=ze.x2,Ye=ze.y2;ke=x.createLinearGradient(We,Ve,Ze,Ye)}else if(z===Yh.RadialGradient){var et=T6(re,ae,oe,ge,ye,De),st=et.x,ht=et.y,mt=et.r;ke=x.createRadialGradient(st,ht,0,st,ht,mt)}return ke&&(ee.forEach(function(dt){var Ot=dt.offset,_t=dt.color;if(Ot.unit===Mi.kPercentage){var wt;(wt=ke)===null||wt===void 0||wt.addColorStop(Ot.value/100,_t.toString())}}),this.gradientCache[b]=ke),this.gradientCache[b]}},{key:"generateGradientKey",value:function(y){var x=y.type,b=y.min,z=y.width,ee=y.height,re=y.steps,ae=y.angle,oe=y.cx,de=y.cy,ge=y.size;return"gradient-".concat(x,"-").concat((ae==null?void 0:ae.toString())||0,"-").concat((oe==null?void 0:oe.toString())||0,"-").concat((de==null?void 0:de.toString())||0,"-").concat((ge==null?void 0:ge.toString())||0,"-").concat(b[0],"-").concat(b[1],"-").concat(z,"-").concat(ee,"-").concat(re.map(function(ye){var De=ye.offset,ke=ye.color;return"".concat(De).concat(ke)}).join("-"))}},{key:"generatePatternKey",value:function(y){var x=y.image,b=y.repetition;if(al(x))return"pattern-".concat(x,"-").concat(b);if(x.nodeName==="rect")return"pattern-".concat(x.entity,"-").concat(b)}}])}();_x.isSupportTile=!!UA.createCanvas();function Ty(E){if(!E.complete)return[0,0];var a=E.naturalWidth||E.width,y=E.naturalHeight||E.height,x=256;return[256,512].forEach(function(b){var z=Math.ceil(y/b),ee=Math.ceil(a/b);z*ee<1e3&&(x=b)}),[x,x]}var D5=function(){function E(){(0,Ha.Z)(this,E)}return(0,Va.Z)(E,[{key:"apply",value:function(y){var x=y.renderingService,b=y.renderingContext,z=y.imagePool,ee=b.root.ownerDocument.defaultView,re=function(ge,ye,De){var ke=ge.parsedStyle,ze=ke.width,We=ke.height;ze&&!We?ge.setAttribute("height",De/ye*ze):!ze&&We&&ge.setAttribute("width",ye/De*We)},ae=function(ge){var ye=ge.target,De=ye.nodeName,ke=ye.attributes;if(De===va.IMAGE){var ze=ke.src,We=ke.keepAspectRatio;z.getImageSync(ze,ye,function(Ve){var Ze=Ve.img,Ye=Ze.width,et=Ze.height;We&&re(ye,Ye,et),ye.dirty(),x.dirty()})}},oe=function(ge){var ye=ge.target,De=ge.attrName,ke=ge.prevValue,ze=ge.newValue;ye.nodeName!==va.IMAGE||De!=="src"||(ke!==ze&&z.releaseImage(ke,ye),al(ze)&&z.getOrCreateImage(ze,ye).then(function(We){var Ve=We.img,Ze=Ve.width,Ye=Ve.height;ye.attributes.keepAspectRatio&&re(ye,Ze,Ye),ye.dirty(),x.dirty()}).catch(function(){}))};x.hooks.init.tap(E.tag,function(){ee.addEventListener(Bs.MOUNTED,ae),ee.addEventListener(Bs.ATTR_MODIFIED,oe)}),x.hooks.destroy.tap(E.tag,function(){ee.removeEventListener(Bs.MOUNTED,ae),ee.removeEventListener(Bs.ATTR_MODIFIED,oe)})}}])}();D5.tag="LoadImage";var R9=function(E){function a(){var y;(0,Ha.Z)(this,a);for(var x=arguments.length,b=new Array(x),z=0;z<x;z++)b[z]=arguments[z];return y=bs(this,a,[].concat(b)),y.name="image-loader",y}return(0,Cs.Z)(a,E),(0,Va.Z)(a,[{key:"init",value:function(x){this.context.imagePool=new _x(this.context,x),this.addRenderingPlugin(new D5)}},{key:"destroy",value:function(){this.removeAllRenderingPlugins()}}])}(Qh);var Fu=B9("renderState"),I5=function(){function E(a){(0,Ha.Z)(this,E),this.removedRBushNodeAABBs=[],this.renderQueue=[],Object.defineProperty(this,Fu,{writable:!0,value:{restoreStack:[],prevObject:null,currentContext:new Map}}),this.clearFullScreenLastFrame=!1,this.clearFullScreen=!1,this.vpMatrix=jl(),this.dprMatrix=jl(),this.tmpMat4=jl(),this.vec3a=js(),this.vec3b=js(),this.vec3c=js(),this.vec3d=js(),this.canvasRendererPluginOptions=a}return(0,Va.Z)(E,[{key:"apply",value:function(y,x){var b=this;this.context=y;var z=this.context,ee=z.config,re=z.camera,ae=z.renderingService,oe=z.renderingContext,de=z.rBushRoot,ge=z.pathGeneratorFactory,ye=ee.renderer.getConfig().enableRenderingOptimization;ee.renderer.getConfig().enableDirtyCheck=!1,ee.renderer.getConfig().enableDirtyRectangleRendering=!1,this.rBush=de,this.pathGeneratorFactory=ge;var De=y.contextService,ke=oe.root.ownerDocument.defaultView,ze=function(et){var st=et.target,ht=st.rBushNode;ht!=null&&ht.aabb&&b.removedRBushNodeAABBs.push(ht.aabb)},We=function(et){var st=et.target,ht=st.rBushNode;ht.aabb&&b.removedRBushNodeAABBs.push(ht.aabb)};ae.hooks.init.tap(E.tag,function(){ke.addEventListener(Bs.UNMOUNTED,ze),ke.addEventListener(Bs.CULLED,We);var Ye=De.getDPR(),et=ee.width,st=ee.height,ht=De.getContext();b.clearRect(ht,0,0,et*Ye,st*Ye,ee.background)}),ae.hooks.destroy.tap(E.tag,function(){ke.removeEventListener(Bs.UNMOUNTED,ze),ke.removeEventListener(Bs.CULLED,We),b.renderQueue=[],b.removedRBushNodeAABBs=[],Jf(b,Fu)[Fu]={restoreStack:[],prevObject:null,currentContext:null}});var Ve=function(){var et,st=De.getContext(),ht=De.getDPR(),mt=ee.width,dt=ee.height,Ot=b.canvasRendererPluginOptions,_t=Ot.dirtyObjectNumThreshold,wt=Ot.dirtyObjectRatioThreshold,$t=ae.getStats(),gn=$t.total,Xt=$t.rendered,Tn=Xt/gn;b.clearFullScreen=b.clearFullScreenLastFrame||!((et=ke.context.renderingPlugins[1])!==null&&et!==void 0&&et.isFirstTimeRenderingFinished)||ae.disableDirtyRectangleRendering()||Xt>_t&&Tn>wt,st&&(typeof st.resetTransform=="function"?st.resetTransform():st.setTransform(1,0,0,1,0,0),b.clearFullScreen&&b.clearRect(st,0,0,mt*ht,dt*ht,ee.background))},Ze=function(et,st){for(var ht=[et];ht.length>0;){var mt,dt=ht.pop();dt.isVisible()&&!dt.isCulled()&&(ye?b.renderDisplayObjectOptimized(dt,st,b.context,Jf(b,Fu)[Fu],x):b.renderDisplayObject(dt,st,b.context,Jf(b,Fu)[Fu],x));for(var Ot=((mt=dt.sortable)===null||mt===void 0||(mt=mt.sorted)===null||mt===void 0?void 0:mt.length)>0?dt.sortable.sorted:dt.childNodes,_t=Ot.length-1;_t>=0;_t--)ht.push(Ot[_t])}};ae.hooks.endFrame.tap(E.tag,function(){if(Ve(),oe.root.childNodes.length===0){b.clearFullScreenLastFrame=!0;return}ye=ee.renderer.getConfig().enableRenderingOptimization,Jf(b,Fu)[Fu]={restoreStack:[],prevObject:null,currentContext:Jf(b,Fu)[Fu].currentContext},Jf(b,Fu)[Fu].currentContext.clear(),b.clearFullScreenLastFrame=!1;var Ye=De.getContext(),et=De.getDPR();if(Bg(b.dprMatrix,[et,et,1]),Mc(b.vpMatrix,b.dprMatrix,re.getOrthoMatrix()),b.clearFullScreen)ye?(Ye.save(),Ze(oe.root,Ye),Ye.restore()):Ze(oe.root,Ye),b.removedRBushNodeAABBs=[];else{var st=b.safeMergeAABB.apply(b,[b.mergeDirtyAABBs(b.renderQueue)].concat((0,zs.Z)(b.removedRBushNodeAABBs.map(function(Ar){var Wr=Ar.minX,ya=Ar.minY,Ra=Ar.maxX,Aa=Ar.maxY,co=new Gl;return co.setMinMax([Wr,ya,0],[Ra,Aa,0]),co}))));if(b.removedRBushNodeAABBs=[],Gl.isEmpty(st)){b.renderQueue=[];return}var ht=b.convertAABB2Rect(st),mt=ht.x,dt=ht.y,Ot=ht.width,_t=ht.height,wt=wc(b.vec3a,[mt,dt,0],b.vpMatrix),$t=wc(b.vec3b,[mt+Ot,dt,0],b.vpMatrix),gn=wc(b.vec3c,[mt,dt+_t,0],b.vpMatrix),Xt=wc(b.vec3d,[mt+Ot,dt+_t,0],b.vpMatrix),Tn=Math.min(wt[0],$t[0],Xt[0],gn[0]),er=Math.min(wt[1],$t[1],Xt[1],gn[1]),En=Math.max(wt[0],$t[0],Xt[0],gn[0]),yn=Math.max(wt[1],$t[1],Xt[1],gn[1]),Cn=Math.floor(Tn),qn=Math.floor(er),pn=Math.ceil(En-Tn),lr=Math.ceil(yn-er);Ye.save(),b.clearRect(Ye,Cn,qn,pn,lr,ee.background),Ye.beginPath(),Ye.rect(Cn,qn,pn,lr),Ye.clip(),Ye.setTransform(b.vpMatrix[0],b.vpMatrix[1],b.vpMatrix[4],b.vpMatrix[5],b.vpMatrix[12],b.vpMatrix[13]);var Jr=ee.renderer.getConfig(),na=Jr.enableDirtyRectangleRenderingDebug;na&&ke.dispatchEvent(new Wu(Pd.DIRTY_RECTANGLE,{dirtyRect:{x:Cn,y:qn,width:pn,height:lr}}));var Hr=b.searchDirtyObjects(st);Hr.sort(function(Ar,Wr){return Ar.sortable.renderOrder-Wr.sortable.renderOrder}).forEach(function(Ar){Ar&&Ar.isVisible()&&!Ar.isCulled()&&b.renderDisplayObject(Ar,Ye,b.context,Jf(b,Fu)[Fu],x)}),Ye.restore(),b.renderQueue.forEach(function(Ar){b.saveDirtyAABB(Ar)}),b.renderQueue=[]}Jf(b,Fu)[Fu].restoreStack.forEach(function(){Ye.restore()}),Jf(b,Fu)[Fu].restoreStack=[]}),ae.hooks.render.tap(E.tag,function(Ye){b.clearFullScreen||b.renderQueue.push(Ye)})}},{key:"clearRect",value:function(y,x,b,z,ee,re){y.clearRect(x,b,z,ee),re&&(y.fillStyle=re,y.fillRect(x,b,z,ee))}},{key:"renderDisplayObjectOptimized",value:function(y,x,b,z,ee){var re=y.nodeName,ae=!1,oe=!1,de=this.context.styleRendererFactory[re],ge=this.pathGeneratorFactory[re],ye=y.parsedStyle.clipPath;if(ye){ae=!z.prevObject||!tA(ye.getWorldTransform(),z.prevObject.getWorldTransform()),ae&&(this.applyWorldTransform(x,ye),z.prevObject=null);var De=this.pathGeneratorFactory[ye.nodeName];De&&(x.save(),oe=!0,x.beginPath(),De(x,ye.parsedStyle),x.closePath(),x.clip())}if(de){ae=!z.prevObject||!tA(y.getWorldTransform(),z.prevObject.getWorldTransform()),ae&&this.applyWorldTransform(x,y);var ke=!z.prevObject;if(!ke){var ze=z.prevObject.nodeName;re===va.TEXT?ke=ze!==va.TEXT:re===va.IMAGE?ke=ze!==va.IMAGE:ke=ze===va.TEXT||ze===va.IMAGE}de.applyStyleToContext(x,y,ke,z),z.prevObject=y}ge&&(x.beginPath(),ge(x,y.parsedStyle),re!==va.LINE&&re!==va.PATH&&re!==va.POLYLINE&&x.closePath()),de&&de.drawToContext(x,y,Jf(this,Fu)[Fu],this,ee),oe&&x.restore(),y.dirty(!1)}},{key:"renderDisplayObject",value:function(y,x,b,z,ee){var re=y.nodeName,ae=z.restoreStack[z.restoreStack.length-1];ae&&!(y.compareDocumentPosition(ae)&iu.DOCUMENT_POSITION_CONTAINS)&&(x.restore(),z.restoreStack.pop());var oe=this.context.styleRendererFactory[re],de=this.pathGeneratorFactory[re],ge=y.parsedStyle.clipPath;if(ge){this.applyWorldTransform(x,ge);var ye=this.pathGeneratorFactory[ge.nodeName];ye&&(x.save(),z.restoreStack.push(y),x.beginPath(),ye(x,ge.parsedStyle),x.closePath(),x.clip())}oe&&(this.applyWorldTransform(x,y),x.save(),this.applyAttributesToContext(x,y)),de&&(x.beginPath(),de(x,y.parsedStyle),re!==va.LINE&&re!==va.PATH&&re!==va.POLYLINE&&x.closePath()),oe&&(oe.render(x,y.parsedStyle,y,b,this,ee),x.restore()),y.dirty(!1)}},{key:"applyAttributesToContext",value:function(y,x){var b=x.parsedStyle,z=b.stroke,ee=b.fill,re=b.opacity,ae=b.lineDash,oe=b.lineDashOffset;ae&&y.setLineDash(ae),Io(oe)||(y.lineDashOffset=oe),Io(re)||(y.globalAlpha*=re),!Io(z)&&!Array.isArray(z)&&!z.isNone&&(y.strokeStyle=x.attributes.stroke),!Io(ee)&&!Array.isArray(ee)&&!ee.isNone&&(y.fillStyle=x.attributes.fill)}},{key:"convertAABB2Rect",value:function(y){var x=y.getMin(),b=y.getMax(),z=Math.floor(x[0]),ee=Math.floor(x[1]),re=Math.ceil(b[0]),ae=Math.ceil(b[1]),oe=re-z,de=ae-ee;return{x:z,y:ee,width:oe,height:de}}},{key:"mergeDirtyAABBs",value:function(y){var x=new Gl;return y.forEach(function(b){var z=b.getRenderBounds();x.add(z);var ee=b.renderable.dirtyRenderBounds;ee&&x.add(ee)}),x}},{key:"searchDirtyObjects",value:function(y){var x=y.getMin(),b=(0,Ps.Z)(x,2),z=b[0],ee=b[1],re=y.getMax(),ae=(0,Ps.Z)(re,2),oe=ae[0],de=ae[1],ge=this.rBush.search({minX:z,minY:ee,maxX:oe,maxY:de});return ge.map(function(ye){var De=ye.displayObject;return De})}},{key:"saveDirtyAABB",value:function(y){var x=y.renderable;x.dirtyRenderBounds||(x.dirtyRenderBounds=new Gl);var b=y.getRenderBounds();b&&x.dirtyRenderBounds.update(b.center,b.halfExtents)}},{key:"applyWorldTransform",value:function(y,x,b){b?(B0(this.tmpMat4,x.getLocalTransform()),Mc(this.tmpMat4,b,this.tmpMat4),Mc(this.tmpMat4,this.vpMatrix,this.tmpMat4)):(B0(this.tmpMat4,x.getWorldTransform()),Mc(this.tmpMat4,this.vpMatrix,this.tmpMat4)),y.setTransform(this.tmpMat4[0],this.tmpMat4[1],this.tmpMat4[4],this.tmpMat4[5],this.tmpMat4[12],this.tmpMat4[13])}},{key:"safeMergeAABB",value:function(){for(var y=new Gl,x=arguments.length,b=new Array(x),z=0;z<x;z++)b[z]=arguments[z];return b.forEach(function(ee){y.add(ee)}),y}}])}();I5.tag="CanvasRenderer";function Ly(E,a,y,x,b,z,ee){var re,ae;if(E.image.nodeName==="rect"){var oe=E.image.parsedStyle,de=oe.width,ge=oe.height;ae=x.contextService.getDPR();var ye=x.config.offscreenCanvas;re=z.offscreenCanvasCreator.getOrCreateCanvas(ye),re.width=de*ae,re.height=ge*ae;var De=z.offscreenCanvasCreator.getOrCreateContext(ye),ke={restoreStack:[],prevObject:null,currentContext:new Map};E.image.forEach(function(We){b.renderDisplayObject(We,De,x,ke,z)}),ke.restoreStack.forEach(function(){De.restore()})}var ze=ee.getOrCreatePatternSync(a,E,y,re,ae,a.getGeometryBounds().min,function(){a.dirty(),x.renderingService.dirty()});return ze}function By(E,a,y,x){var b;if(E.type===Yh.LinearGradient||E.type===Yh.RadialGradient){var z=a.getGeometryBounds(),ee=z&&z.halfExtents[0]*2||1,re=z&&z.halfExtents[1]*2||1,ae=z&&z.min||[0,0];b=x.getOrCreateGradient((0,ps.Z)((0,ps.Z)({type:E.type},E.value),{},{min:ae,width:ee,height:re}),y)}return b}var Ny=["shadowBlur","shadowOffsetX","shadowOffsetY"],O5=["lineCap","lineJoin","miterLimit"],Gu={globalAlpha:1,shadowBlur:0,shadowOffsetX:0,shadowOffsetY:0,shadowColor:"#000",filter:"none",globalCompositeOperation:"source-over",strokeStyle:"#000",strokeOpacity:1,lineWidth:1,lineDash:[],lineDashOffset:0,lineCap:"butt",lineJoin:"miter",miterLimit:10,fillStyle:"#000",fillOpacity:1},T5={};function mu(E,a,y,x){var b=x.has(a)?x.get(a):Gu[a];return b!==y&&(a==="lineDash"?E.setLineDash(y):E[a]=y,x.set(a,y)),b}var F9=function(){function E(a){(0,Ha.Z)(this,E),this.imagePool=a}return(0,Va.Z)(E,[{key:"applyAttributesToContext",value:function(y,x){}},{key:"render",value:function(y,x,b,z,ee,re){}},{key:"applyCommonStyleToContext",value:function(y,x,b,z){var ee=b?T5:z.prevObject.parsedStyle,re=x.parsedStyle;(b||re.opacity!==ee.opacity)&&mu(y,"globalAlpha",Io(re.opacity)?Gu.globalAlpha:re.opacity,z.currentContext),(b||re.blend!==ee.blend)&&mu(y,"globalCompositeOperation",Io(re.blend)?Gu.globalCompositeOperation:re.blend,z.currentContext)}},{key:"applyStrokeFillStyleToContext",value:function(y,x,b,z){var ee=b?T5:z.prevObject.parsedStyle,re=x.parsedStyle,ae=re.lineWidth,oe=ae===void 0?Gu.lineWidth:ae,de=re.fill&&!re.fill.isNone,ge=re.stroke&&!re.stroke.isNone&&oe>0;if(ge){if(b||x.attributes.stroke!==z.prevObject.attributes.stroke){var ye=!Io(re.stroke)&&!Array.isArray(re.stroke)&&!re.stroke.isNone?x.attributes.stroke:Gu.strokeStyle;mu(y,"strokeStyle",ye,z.currentContext)}(b||re.lineWidth!==ee.lineWidth)&&mu(y,"lineWidth",Io(re.lineWidth)?Gu.lineWidth:re.lineWidth,z.currentContext),(b||re.lineDash!==ee.lineDash)&&mu(y,"lineDash",re.lineDash||Gu.lineDash,z.currentContext),(b||re.lineDashOffset!==ee.lineDashOffset)&&mu(y,"lineDashOffset",Io(re.lineDashOffset)?Gu.lineDashOffset:re.lineDashOffset,z.currentContext);for(var De=0;De<O5.length;De++){var ke=O5[De];(b||re[ke]!==ee[ke])&&mu(y,ke,Io(re[ke])?Gu[ke]:re[ke],z.currentContext)}}if(de&&(b||x.attributes.fill!==z.prevObject.attributes.fill)){var ze=!Io(re.fill)&&!Array.isArray(re.fill)&&!re.fill.isNone?x.attributes.fill:Gu.fillStyle;mu(y,"fillStyle",ze,z.currentContext)}}},{key:"applyStyleToContext",value:function(y,x,b,z){var ee=x.nodeName;this.applyCommonStyleToContext(y,x,b,z),ee===va.IMAGE||this.applyStrokeFillStyleToContext(y,x,b,z)}},{key:"applyShadowAndFilterStyleToContext",value:function(y,x,b,z){var ee=x.parsedStyle;if(b){mu(y,"shadowColor",ee.shadowColor.toString(),z.currentContext);for(var re=0;re<Ny.length;re++){var ae=Ny[re];mu(y,ae,ee[ae]||Gu[ae],z.currentContext)}}ee.filter&&ee.filter.length&&mu(y,"filter",x.attributes.filter,z.currentContext)}},{key:"clearShadowAndFilterStyleForContext",value:function(y,x,b,z){var ee=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1;if(x){mu(y,"shadowColor",Gu.shadowColor,z.currentContext);for(var re=0;re<Ny.length;re++){var ae=Ny[re];mu(y,ae,Gu[ae],z.currentContext)}}if(b)if(x&&ee){var oe=y.filter;!Io(oe)&&oe.indexOf("drop-shadow")>-1&&mu(y,"filter",oe.replace(/drop-shadow\([^)]*\)/,"").trim()||Gu.filter,z.currentContext)}else mu(y,"filter",Gu.filter,z.currentContext)}},{key:"fillToContext",value:function(y,x,b,z,ee){var re=this,ae=x.parsedStyle,oe=ae.fill,de=ae.fillRule,ge=null;if(Array.isArray(oe)&&oe.length>0)oe.forEach(function(De){var ke=mu(y,"fillStyle",By(De,x,y,re.imagePool),b.currentContext);ge=ge!=null?ge:ke,de?y.fill(de):y.fill()});else{if(zg(oe)){var ye=Ly(oe,x,y,x.ownerDocument.defaultView.context,z,ee,this.imagePool);ye&&(y.fillStyle=ye,ge=!0)}de?y.fill(de):y.fill()}ge!==null&&mu(y,"fillStyle",ge,b.currentContext)}},{key:"strokeToContext",value:function(y,x,b,z,ee){var re=this,ae=x.parsedStyle.stroke,oe=null;if(Array.isArray(ae)&&ae.length>0)ae.forEach(function(ye){var De=mu(y,"strokeStyle",By(ye,x,y,re.imagePool),b.currentContext);oe=oe!=null?oe:De,y.stroke()});else{if(zg(ae)){var de=Ly(ae,x,y,x.ownerDocument.defaultView.context,z,ee,this.imagePool);if(de){var ge=mu(y,"strokeStyle",de,b.currentContext);oe=oe!=null?oe:ge}}y.stroke()}oe!==null&&mu(y,"strokeStyle",oe,b.currentContext)}},{key:"drawToContext",value:function(y,x,b,z,ee){var re,ae=x.nodeName,oe=x.parsedStyle,de=oe.opacity,ge=de===void 0?Gu.globalAlpha:de,ye=oe.fillOpacity,De=ye===void 0?Gu.fillOpacity:ye,ke=oe.strokeOpacity,ze=ke===void 0?Gu.strokeOpacity:ke,We=oe.lineWidth,Ve=We===void 0?Gu.lineWidth:We,Ze=oe.fill&&!oe.fill.isNone,Ye=oe.stroke&&!oe.stroke.isNone&&Ve>0;if(!(!Ze&&!Ye)){var et=!Io(oe.shadowColor)&&oe.shadowBlur>0,st=oe.shadowType==="inner",ht=((re=oe.fill)===null||re===void 0?void 0:re.alpha)===0,mt=!!(oe.filter&&oe.filter.length),dt=et&&Ye&&(ae===va.PATH||ae===va.LINE||ae===va.POLYLINE||ht||st),Ot=null;if(Ze){dt||this.applyShadowAndFilterStyleToContext(y,x,et,b);var _t=ge*De;Ot=mu(y,"globalAlpha",_t,b.currentContext),this.fillToContext(y,x,b,z,ee),dt||this.clearShadowAndFilterStyleForContext(y,et,mt,b)}if(Ye){var wt=!1,$t=ge*ze,gn=mu(y,"globalAlpha",$t,b.currentContext);if(Ot=Ze?Ot:gn,dt&&(this.applyShadowAndFilterStyleToContext(y,x,et,b),wt=!0,st)){var Xt=y.globalCompositeOperation;y.globalCompositeOperation="source-atop",this.strokeToContext(y,x,b,z,ee),y.globalCompositeOperation=Xt,this.clearShadowAndFilterStyleForContext(y,et,mt,b,!0)}this.strokeToContext(y,x,b,z,ee),wt&&this.clearShadowAndFilterStyleForContext(y,et,mt,b)}Ot!==null&&mu(y,"globalAlpha",Ot,b.currentContext)}}}])}(),zx=function(E){function a(){return(0,Ha.Z)(this,a),bs(this,a,arguments)}return(0,Cs.Z)(a,E),(0,Va.Z)(a,[{key:"render",value:function(x,b,z,ee,re,ae){var oe=b.fill,de=b.fillRule,ge=b.opacity,ye=ge===void 0?1:ge,De=b.fillOpacity,ke=De===void 0?1:De,ze=b.stroke,We=b.strokeOpacity,Ve=We===void 0?1:We,Ze=b.lineWidth,Ye=Ze===void 0?1:Ze,et=b.lineCap,st=b.lineJoin,ht=b.shadowType,mt=b.shadowColor,dt=b.shadowBlur,Ot=b.filter,_t=b.miterLimit,wt=oe&&!oe.isNone,$t=ze&&!ze.isNone&&Ye>0,gn=(oe==null?void 0:oe.alpha)===0,Xt=!!(Ot&&Ot.length),Tn=!Io(mt)&&dt>0,er=z.nodeName,En=ht==="inner",yn=$t&&Tn&&(er===va.PATH||er===va.LINE||er===va.POLYLINE||gn||En);wt&&(x.globalAlpha=ye*ke,yn||Ry(z,x,Tn),L5(x,z,oe,de,ee,re,ae,this.imagePool),yn||this.clearShadowAndFilter(x,Xt,Tn)),$t&&(x.globalAlpha=ye*Ve,x.lineWidth=Ye,Io(_t)||(x.miterLimit=_t),Io(et)||(x.lineCap=et),Io(st)||(x.lineJoin=st),yn&&(En&&(x.globalCompositeOperation="source-atop"),Ry(z,x,!0),En&&(jx(x,z,ze,ee,re,ae,this.imagePool),x.globalCompositeOperation=Gu.globalCompositeOperation,this.clearShadowAndFilter(x,Xt,!0))),jx(x,z,ze,ee,re,ae,this.imagePool))}},{key:"clearShadowAndFilter",value:function(x,b,z){if(z&&(x.shadowColor="transparent",x.shadowBlur=0),b){var ee=x.filter;!Io(ee)&&ee.indexOf("drop-shadow")>-1&&(x.filter=ee.replace(/drop-shadow\([^)]*\)/,"").trim()||"none")}}}])}(F9);function Ry(E,a,y){var x=E.parsedStyle,b=x.filter,z=x.shadowColor,ee=x.shadowBlur,re=x.shadowOffsetX,ae=x.shadowOffsetY;b&&b.length&&(a.filter=E.style.filter),y&&(a.shadowColor=z.toString(),a.shadowBlur=ee||0,a.shadowOffsetX=re||0,a.shadowOffsetY=ae||0)}function L5(E,a,y,x,b,z,ee,re){var ae=arguments.length>8&&arguments[8]!==void 0?arguments[8]:!1;Array.isArray(y)?y.forEach(function(oe){E.fillStyle=By(oe,a,E,re),ae||(x?E.fill(x):E.fill())}):(zg(y)&&(E.fillStyle=Ly(y,a,E,b,z,ee,re)),ae||(x?E.fill(x):E.fill()))}function jx(E,a,y,x,b,z,ee){var re=arguments.length>7&&arguments[7]!==void 0?arguments[7]:!1;Array.isArray(y)?y.forEach(function(ae){E.strokeStyle=By(ae,a,E,ee),re||E.stroke()}):(zg(y)&&(E.strokeStyle=Ly(y,a,E,x,b,z,ee)),re||E.stroke())}function k9(E,a){var y=(0,Ps.Z)(E,4),x=y[0],b=y[1],z=y[2],ee=y[3],re=(0,Ps.Z)(a,4),ae=re[0],oe=re[1],de=re[2],ge=re[3],ye=Math.max(x,ae),De=Math.max(b,oe),ke=Math.min(x+z,ae+de),ze=Math.min(b+ee,oe+ge);return ke<=ye||ze<=De?null:[ye,De,ke-ye,ze-De]}function _9(E,a){var y=wc(js(),[E[0],E[1],0],a),x=wc(js(),[E[0]+E[2],E[1],0],a),b=wc(js(),[E[0],E[1]+E[3],0],a),z=wc(js(),[E[0]+E[2],E[1]+E[3],0],a);return[Math.min(y[0],x[0],b[0],z[0]),Math.min(y[1],x[1],b[1],z[1]),Math.max(y[0],x[0],b[0],z[0])-Math.min(y[0],x[0],b[0],z[0]),Math.max(y[1],x[1],b[1],z[1])-Math.min(y[1],x[1],b[1],z[1])]}var z9=function(E){function a(){return(0,Ha.Z)(this,a),bs(this,a,arguments)}return(0,Cs.Z)(a,E),(0,Va.Z)(a,[{key:"renderDownSampled",value:function(x,b,z,ee){var re=ee.src,ae=ee.imageCache;if(!ae.downSampled){this.imagePool.createDownSampledImage(re,z).then(function(){z.ownerDocument&&(z.dirty(),z.ownerDocument.defaultView.context.renderingService.dirty())}).catch(function(oe){console.error(oe)});return}x.drawImage(ae.downSampled,Math.floor(ee.drawRect[0]),Math.floor(ee.drawRect[1]),Math.ceil(ee.drawRect[2]),Math.ceil(ee.drawRect[3]))}},{key:"renderTile",value:function(x,b,z,ee){var re=ee.src,ae=ee.imageCache,oe=ee.imageRect,de=ee.drawRect,ge=ae.size,ye=x.getTransform(),De=ye.a,ke=ye.b,ze=ye.c,We=ye.d,Ve=ye.e,Ze=ye.f;if(x.resetTransform(),!(ae!=null&&ae.gridSize)){this.imagePool.createImageTiles(re,[],function(){z.ownerDocument&&(z.dirty(),z.ownerDocument.defaultView.context.renderingService.dirty())},z).catch(function(Tn){console.error(Tn)});return}for(var Ye=[ge[0]/oe[2],ge[1]/oe[3]],et=[ae.tileSize[0]/Ye[0],ae.tileSize[1]/Ye[1]],st=[Math.floor((de[0]-oe[0])/et[0]),Math.ceil((de[0]+de[2]-oe[0])/et[0])],ht=st[0],mt=st[1],dt=[Math.floor((de[1]-oe[1])/et[1]),Math.ceil((de[1]+de[3]-oe[1])/et[1])],Ot=dt[0],_t=dt[1],wt=Ot;wt<=_t;wt++)for(var $t=ht;$t<=mt;$t++){var gn=ae.tiles[wt][$t];if(gn){var Xt=[Math.floor(oe[0]+gn.tileX*et[0]),Math.floor(oe[1]+gn.tileY*et[1]),Math.ceil(et[0]),Math.ceil(et[1])];x.drawImage(gn.data,Xt[0],Xt[1],Xt[2],Xt[3])}}x.setTransform(De,ke,ze,We,Ve,Ze)}},{key:"render",value:function(x,b,z){var ee=b.x,re=ee===void 0?0:ee,ae=b.y,oe=ae===void 0?0:ae,de=b.width,ge=b.height,ye=b.src,De=b.shadowColor,ke=b.shadowBlur,ze=this.imagePool.getImageSync(ye,z),We=ze==null?void 0:ze.img,Ve=de,Ze=ge;if(We){Ve||(Ve=We.width),Ze||(Ze=We.height);var Ye=!Io(De)&&ke>0;Ry(z,x,Ye);try{var et=z.ownerDocument.defaultView.getContextService().getDomElement(),st=et.width,ht=et.height,mt=x.getTransform(),dt=mt.a,Ot=mt.b,_t=mt.c,wt=mt.d,$t=mt.e,gn=mt.f,Xt=CC(dt,_t,0,0,Ot,wt,0,0,0,0,1,0,$t,gn,0,1),Tn=_9([re,oe,Ve,Ze],Xt),er=k9([0,0,st,ht],Tn);if(!er)return;if(!z.ownerDocument.defaultView.getConfig().enableLargeImageOptimization){a.renderFull(x,b,z,{image:We,drawRect:[re,oe,Ve,Ze]});return}var En=Tn[2]/ze.size[0];if(En<(ze.downSamplingRate||.5)){this.renderDownSampled(x,b,z,{src:ye,imageCache:ze,drawRect:[re,oe,Ve,Ze]});return}if(!_x.isSupportTile){a.renderFull(x,b,z,{image:We,drawRect:[re,oe,Ve,Ze]});return}this.renderTile(x,b,z,{src:ye,imageCache:ze,imageRect:Tn,drawRect:er})}catch(yn){}}}},{key:"drawToContext",value:function(x,b,z,ee,re){this.render(x,b.parsedStyle,b)}}],[{key:"renderFull",value:function(x,b,z,ee){x.drawImage(ee.image,Math.floor(ee.drawRect[0]),Math.floor(ee.drawRect[1]),Math.ceil(ee.drawRect[2]),Math.ceil(ee.drawRect[3]))}}])}(zx),j9=function(E){function a(){return(0,Ha.Z)(this,a),bs(this,a,arguments)}return(0,Cs.Z)(a,E),(0,Va.Z)(a,[{key:"render",value:function(x,b,z,ee,re,ae){z.getBounds();var oe=b.lineWidth,de=oe===void 0?1:oe,ge=b.textAlign,ye=ge===void 0?"start":ge,De=b.textBaseline,ke=De===void 0?"alphabetic":De,ze=b.lineJoin,We=ze===void 0?"miter":ze,Ve=b.miterLimit,Ze=Ve===void 0?10:Ve,Ye=b.letterSpacing,et=Ye===void 0?0:Ye,st=b.stroke,ht=b.fill,mt=b.fillRule,dt=b.fillOpacity,Ot=dt===void 0?1:dt,_t=b.strokeOpacity,wt=_t===void 0?1:_t,$t=b.opacity,gn=$t===void 0?1:$t,Xt=b.metrics,Tn=b.x,er=Tn===void 0?0:Tn,En=b.y,yn=En===void 0?0:En,Cn=b.dx,qn=b.dy,pn=b.shadowColor,lr=b.shadowBlur,Jr=b.textDecorationLine,na=Xt.font,Hr=Xt.lines,Ar=Xt.height,Wr=Xt.lineHeight,ya=Xt.lineMetrics;x.font=na,x.lineWidth=de,x.textAlign=ye==="middle"?"center":ye;var Ra=ke;Ra==="alphabetic"&&(Ra="bottom"),x.lineJoin=We,Io(Ze)||(x.miterLimit=Ze);var Aa=yn;ke==="middle"?Aa+=-Ar/2-Wr/2:ke==="bottom"||ke==="alphabetic"||ke==="ideographic"?Aa+=-Ar:(ke==="top"||ke==="hanging")&&(Aa+=-Wr);var co=er+(Cn||0);Aa+=qn||0,Hr.length===1&&(Ra==="bottom"?(Ra="middle",Aa-=.5*Ar):Ra==="top"&&(Ra="middle",Aa+=.5*Ar)),x.textBaseline=Ra;var So=!Io(pn)&&lr>0;Ry(z,x,So);for(var ti=0;ti<Hr.length;ti++){var qi=de/2+co;Aa+=Wr,!Io(st)&&!st.isNone&&de&&this.drawLetterSpacing(x,z,Hr[ti],ya[ti],ye,qi,Aa,et,ht,mt,Ot,st,wt,gn,!0,ee,re,ae),Io(ht)||this.drawLetterSpacing(x,z,Hr[ti],ya[ti],ye,qi,Aa,et,ht,mt,Ot,st,wt,gn,!1,ee,re,ae)}Jr&&Jr!=="none"&&this.drawTextDecorations(x,b,z,Hr,Wr,co,yn+(qn||0),ee,re,ae)}},{key:"drawLetterSpacing",value:function(x,b,z,ee,re,ae,oe,de,ge,ye,De,ke,ze,We,Ve,Ze,Ye,et){if(de===0){Ve?this.strokeText(x,b,z,ae,oe,ke,ze,Ze,Ye,et):this.fillText(x,b,z,ae,oe,ge,ye,De,We,Ze,Ye,et);return}var st=x.textAlign;x.textAlign="left";var ht=ae;re==="center"||re==="middle"?ht=ae-ee.width/2:(re==="right"||re==="end")&&(ht=ae-ee.width);for(var mt=Array.from(z),dt=x.measureText(z).width,Ot=0,_t=0;_t<mt.length;++_t){var wt=mt[_t];Ve?this.strokeText(x,b,wt,ht,oe,ke,ze,Ze,Ye,et):this.fillText(x,b,wt,ht,oe,ge,ye,De,We,Ze,Ye,et),Ot=x.measureText(z.substring(_t+1)).width,ht+=dt-Ot+de,dt=Ot}x.textAlign=st}},{key:"fillText",value:function(x,b,z,ee,re,ae,oe,de,ge,ye,De,ke){L5(x,b,ae,oe,ye,De,ke,this.imagePool,!0);var ze,We=!Io(de)&&de!==1;We&&(ze=x.globalAlpha,x.globalAlpha=de*ge),x.fillText(z,ee,re),We&&(x.globalAlpha=ze)}},{key:"strokeText",value:function(x,b,z,ee,re,ae,oe,de,ge,ye){jx(x,b,ae,de,ge,ye,this.imagePool,!0);var De,ke=!Io(oe)&&oe!==1;ke&&(De=x.globalAlpha,x.globalAlpha=oe),x.strokeText(z,ee,re),ke&&(x.globalAlpha=De)}},{key:"drawTextDecorations",value:function(x,b,z,ee,re,ae,oe,de,ge,ye){var De=b.textDecorationLine,ke=b.textDecorationColor,ze=b.textDecorationStyle,We=b.textDecorationThickness,Ve=We===void 0?1:We,Ze=b.textAlign,Ye=Ze===void 0?"start":Ze,et=b.lineWidth,st=et===void 0?1:et,ht=b.metrics;if(!(!De||De==="none")){var mt=ht.lineMetrics,dt=De.split(" ");switch(x.lineWidth=Ve,ke&&(x.strokeStyle="rgba(".concat(ke.r,", ").concat(ke.g,", ").concat(ke.b,", ").concat(ke.alpha,")")),ze){case"dashed":x.setLineDash([5,5]);break;case"dotted":x.setLineDash([2,2]);break;case"wavy":x.setLineDash([]);break;default:x.setLineDash([]);break}var Ot=oe,_t=b.textBaseline,wt=_t===void 0?"alphabetic":_t;wt==="middle"?Ot+=-ht.height/2-re/2:wt==="bottom"||wt==="alphabetic"||wt==="ideographic"?Ot+=-ht.height:(wt==="top"||wt==="hanging")&&(Ot+=-re);for(var $t=0;$t<ee.length;$t++){Ot+=re;var gn=mt[$t];if(gn){var Xt=st/2,Tn=ae,er=ae+gn.width;Ye==="center"||Ye==="middle"?(Tn=ae-gn.width/2,er=ae+gn.width/2):(Ye==="right"||Ye==="end")&&(Tn=ae-gn.width,er=ae),Tn+=Xt,er+=Xt;var En=Zh(dt),yn;try{for(En.s();!(yn=En.n()).done;){var Cn=yn.value,qn=Ot;switch(Cn){case"underline":qn+=2;break;case"overline":qn-=re-2;break;case"line-through":qn-=re/2;break;default:continue}ze==="wavy"?this.drawWavyLine(x,Tn,er,qn):(x.beginPath(),x.moveTo(Tn,qn),x.lineTo(er,qn),x.stroke())}}catch(pn){En.e(pn)}finally{En.f()}}}x.setLineDash([])}}},{key:"drawWavyLine",value:function(x,b,z,ee){var re=2,ae=10,oe=Math.floor((z-b)/ae);x.beginPath(),x.moveTo(b,ee);for(var de=0;de<oe;de++){var ge=b+de*ae+ae/4,ye=ee+re,De=b+de*ae+ae/2,ke=ee;x.quadraticCurveTo(ge,ye,De,ke);var ze=b+de*ae+ae*3/4,We=ee-re,Ve=b+(de+1)*ae,Ze=ee;x.quadraticCurveTo(ze,We,Ve,Ze)}x.stroke()}},{key:"drawToContext",value:function(x,b,z,ee,re){this.render(x,b.parsedStyle,b,b.ownerDocument.defaultView.context,ee,re)}}])}(zx),U9=function(E){function a(){var y,x=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return(0,Ha.Z)(this,a),y=bs(this,a),y.name="canvas-renderer",y.options=x,y}return(0,Cs.Z)(a,E),(0,Va.Z)(a,[{key:"init",value:function(){var x,b=(0,ps.Z)({dirtyObjectNumThreshold:500,dirtyObjectRatioThreshold:.8},this.options),z=this.context.imagePool,ee=new zx(z),re=(x={},(0,Vi.Z)((0,Vi.Z)((0,Vi.Z)((0,Vi.Z)((0,Vi.Z)((0,Vi.Z)((0,Vi.Z)((0,Vi.Z)((0,Vi.Z)((0,Vi.Z)(x,va.CIRCLE,ee),va.ELLIPSE,ee),va.RECT,ee),va.IMAGE,new z9(z)),va.TEXT,new j9(z)),va.LINE,ee),va.POLYLINE,ee),va.POLYGON,ee),va.PATH,ee),va.GROUP,void 0),(0,Vi.Z)((0,Vi.Z)((0,Vi.Z)(x,va.HTML,void 0),va.MESH,void 0),va.FRAGMENT,void 0));this.context.defaultStyleRendererFactory=re,this.context.styleRendererFactory=re,this.addRenderingPlugin(new I5(b))}},{key:"destroy",value:function(){this.removeAllRenderingPlugins(),delete this.context.defaultStyleRendererFactory,delete this.context.styleRendererFactory}}])}(Qh);var B5=function(){function E(){(0,Ha.Z)(this,E)}return(0,Va.Z)(E,[{key:"apply",value:function(y,x){var b=this,z=y.renderingService,ee=y.renderingContext,re=y.config;this.context=y;var ae=ee.root.ownerDocument.defaultView,oe=function(dt){z.hooks.pointerMove.call(dt)},de=function(dt){z.hooks.pointerUp.call(dt)},ge=function(dt){z.hooks.pointerDown.call(dt)},ye=function(dt){z.hooks.pointerOver.call(dt)},De=function(dt){z.hooks.pointerOut.call(dt)},ke=function(dt){z.hooks.pointerCancel.call(dt)},ze=function(dt){z.hooks.pointerWheel.call(dt)},We=function(dt){z.hooks.click.call(dt)},Ve=function(dt){x.globalThis.document.addEventListener("pointermove",oe,!0),dt.addEventListener("pointerdown",ge,!0),dt.addEventListener("pointerleave",De,!0),dt.addEventListener("pointerover",ye,!0),x.globalThis.addEventListener("pointerup",de,!0),x.globalThis.addEventListener("pointercancel",ke,!0)},Ze=function(dt){dt.addEventListener("touchstart",ge,!0),dt.addEventListener("touchend",de,!0),dt.addEventListener("touchmove",oe,!0),dt.addEventListener("touchcancel",ke,!0)},Ye=function(dt){x.globalThis.document.addEventListener("mousemove",oe,!0),dt.addEventListener("mousedown",ge,!0),dt.addEventListener("mouseout",De,!0),dt.addEventListener("mouseover",ye,!0),x.globalThis.addEventListener("mouseup",de,!0)},et=function(dt){x.globalThis.document.removeEventListener("pointermove",oe,!0),dt.removeEventListener("pointerdown",ge,!0),dt.removeEventListener("pointerleave",De,!0),dt.removeEventListener("pointerover",ye,!0),x.globalThis.removeEventListener("pointerup",de,!0),x.globalThis.removeEventListener("pointercancel",ke,!0)},st=function(dt){dt.removeEventListener("touchstart",ge,!0),dt.removeEventListener("touchend",de,!0),dt.removeEventListener("touchmove",oe,!0),dt.removeEventListener("touchcancel",ke,!0)},ht=function(dt){x.globalThis.document.removeEventListener("mousemove",oe,!0),dt.removeEventListener("mousedown",ge,!0),dt.removeEventListener("mouseout",De,!0),dt.removeEventListener("mouseover",ye,!0),x.globalThis.removeEventListener("mouseup",de,!0)};z.hooks.init.tap(E.tag,function(){var mt=b.context.contextService.getDomElement();x.globalThis.navigator.msPointerEnabled?(mt.style.msContentZooming="none",mt.style.msTouchAction="none"):ae.supportsPointerEvents&&(mt.style.touchAction="none"),ae.supportsPointerEvents?Ve(mt):Ye(mt),ae.supportsTouchEvents&&Ze(mt),re.useNativeClickEvent&&mt.addEventListener("click",We,!0),mt.addEventListener("wheel",ze,{passive:!0,capture:!0})}),z.hooks.destroy.tap(E.tag,function(){var mt=b.context.contextService.getDomElement();x.globalThis.navigator.msPointerEnabled?(mt.style.msContentZooming="",mt.style.msTouchAction=""):ae.supportsPointerEvents&&(mt.style.touchAction=""),ae.supportsPointerEvents?et(mt):ht(mt),ae.supportsTouchEvents&&st(mt),re.useNativeClickEvent&&mt.removeEventListener("click",We,!0),mt.removeEventListener("wheel",ze,!0)})}}])}();B5.tag="DOMInteraction";var W9=function(E){function a(){var y;(0,Ha.Z)(this,a);for(var x=arguments.length,b=new Array(x),z=0;z<x;z++)b[z]=arguments[z];return y=bs(this,a,[].concat(b)),y.name="dom-interaction",y}return(0,Cs.Z)(a,E),(0,Va.Z)(a,[{key:"init",value:function(){this.addRenderingPlugin(new B5)}},{key:"destroy",value:function(){this.removeAllRenderingPlugins()}}])}(Qh);var G9="g-canvas-camera",N5=function(){function E(){(0,Ha.Z)(this,E),this.displayObjectHTMLElementMap=new WeakMap}return(0,Va.Z)(E,[{key:"joinTransformMatrix",value:function(y){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[0,0,0];return"matrix(".concat([y[0],y[1],y[4],y[5],y[12]+x[0],y[13]+x[1]].join(","),")")}},{key:"apply",value:function(y,x){var b=this,z=y.camera,ee=y.renderingContext,re=y.renderingService;this.context=y;var ae=ee.root.ownerDocument.defaultView,oe=ae.context.eventService.nativeHTMLMap,de=function(Ve,Ze){Ze.style.transform=b.joinTransformMatrix(Ve.getWorldTransform(),Ve.getOrigin())},ge=function(Ve){var Ze=Ve.target;if(Ze.nodeName===va.HTML){b.$camera||(b.$camera=b.createCamera(z));var Ye=b.getOrCreateEl(Ze);b.$camera.appendChild(Ye),Object.keys(Ze.attributes).forEach(function(et){b.updateAttribute(et,Ze)}),de(Ze,Ye),oe.set(Ye,Ze)}},ye=function(Ve){var Ze=Ve.target;if(Ze.nodeName===va.HTML&&b.$camera){var Ye=b.getOrCreateEl(Ze);Ye&&(Ye.remove(),oe.delete(Ye))}},De=function(Ve){var Ze=Ve.target;if(Ze.nodeName===va.HTML){var Ye=Ve.attrName;b.updateAttribute(Ye,Ze)}},ke=function(Ve){for(var Ze=Ve.detail,Ye=0;Ye<Ze.length;Ye++){var et=Ze[Ye],st=et.target,ht=st.nodeName===va.FRAGMENT?st.childNodes:[st];ht.forEach(function(mt){if(mt.nodeName===va.HTML){var dt=b.getOrCreateEl(mt);de(mt,dt)}})}},ze=function(){if(b.$camera){var Ve=b.context.config,Ze=Ve.width,Ye=Ve.height;b.$camera.parentElement.style.width="".concat(Ze||0,"px"),b.$camera.parentElement.style.height="".concat(Ye||0,"px")}};re.hooks.init.tap(E.tag,function(){ae.addEventListener(Pd.RESIZE,ze),ae.addEventListener(Bs.MOUNTED,ge),ae.addEventListener(Bs.UNMOUNTED,ye),ae.addEventListener(Bs.ATTR_MODIFIED,De),ae.addEventListener(Bs.BOUNDS_CHANGED,ke)}),re.hooks.endFrame.tap(E.tag,function(){b.$camera&&ee.renderReasons.has(V0.CAMERA_CHANGED)&&(b.$camera.style.transform=b.joinTransformMatrix(z.getOrthoMatrix()))}),re.hooks.destroy.tap(E.tag,function(){b.$camera&&b.$camera.remove(),ae.removeEventListener(Pd.RESIZE,ze),ae.removeEventListener(Bs.MOUNTED,ge),ae.removeEventListener(Bs.UNMOUNTED,ye),ae.removeEventListener(Bs.ATTR_MODIFIED,De),ae.removeEventListener(Bs.BOUNDS_CHANGED,ke)})}},{key:"createCamera",value:function(y){var x=this.context.config,b=x.document,z=x.width,ee=x.height,re=this.context.contextService.getDomElement(),ae=re.parentNode;if(ae){var oe=G9,de=ae.querySelector("#".concat(oe));if(!de){var ge=(b||document).createElement("div");ge.style.overflow="hidden",ge.style.pointerEvents="none",ge.style.position="absolute",ge.style.left="0px",ge.style.top="0px",ge.style.width="".concat(z||0,"px"),ge.style.height="".concat(ee||0,"px");var ye=(b||document).createElement("div");de=ye,ye.id=oe,ye.style.position="absolute",ye.style.left="".concat(re.offsetLeft||0,"px"),ye.style.top="".concat(re.offsetTop||0,"px"),ye.style.transformOrigin="left top",ye.style.transform=this.joinTransformMatrix(y.getOrthoMatrix()),ye.style.pointerEvents="none",ye.style.width="100%",ye.style.height="100%",ge.appendChild(ye),ae.appendChild(ge)}return de}return null}},{key:"getOrCreateEl",value:function(y){var x=this.context.config.document,b=this.displayObjectHTMLElementMap.get(y);return b||(b=(x||document).createElement("div"),y.parsedStyle.$el=b,this.displayObjectHTMLElementMap.set(y,b),y.id&&(b.id=y.id),y.name&&b.setAttribute("name",y.name),y.className&&(b.className=y.className),b.style.position="absolute",b.style["will-change"]="transform",b.style.transform=this.joinTransformMatrix(y.getWorldTransform(),y.getOrigin())),b}},{key:"updateAttribute",value:function(y,x){var b=this.getOrCreateEl(x);switch(y){case"innerHTML":var z=x.parsedStyle.innerHTML;al(z)?b.innerHTML=z:(b.innerHTML="",b.appendChild(z));break;case"x":b.style.left="".concat(x.parsedStyle.x,"px");break;case"y":b.style.top="".concat(x.parsedStyle.y,"px");break;case"transformOrigin":var ee=x.parsedStyle.transformOrigin;b.style["transform-origin"]="".concat(ee[0].buildCSSText(null,null,"")," ").concat(ee[1].buildCSSText(null,null,""));break;case"width":var re=x.parsedStyle.width;b.style.width=ji(re)?"".concat(re,"px"):re.toString();break;case"height":var ae=x.parsedStyle.height;b.style.height=ji(ae)?"".concat(ae,"px"):ae.toString();break;case"zIndex":var oe=x.parsedStyle.zIndex;b.style["z-index"]="".concat(oe);break;case"visibility":var de=x.parsedStyle.visibility;b.style.visibility=de;break;case"pointerEvents":var ge=x.parsedStyle.pointerEvents,ye=ge===void 0?"auto":ge;b.style.pointerEvents=ye;break;case"opacity":var De=x.parsedStyle.opacity;b.style.opacity="".concat(De);break;case"fill":var ke=x.parsedStyle.fill,ze="";Pp(ke)?ke.isNone?ze="transparent":ze=x.getAttribute("fill"):Array.isArray(ke)?ze=x.getAttribute("fill"):zg(ke),b.style.background=ze;break;case"stroke":var We=x.parsedStyle.stroke,Ve="";Pp(We)?We.isNone?Ve="transparent":Ve=x.getAttribute("stroke"):Array.isArray(We)?Ve=x.getAttribute("stroke"):zg(We),b.style["border-color"]=Ve,b.style["border-style"]="solid";break;case"lineWidth":var Ze=x.parsedStyle.lineWidth;b.style["border-width"]="".concat(Ze||0,"px");break;case"lineDash":b.style["border-style"]="dashed";break;case"filter":var Ye=x.style.filter;b.style.filter=Ye;break;default:!Io(x.style[y])&&x.style[y]!==""&&(b.style[y]=x.style[y])}}}])}();N5.tag="HTMLRendering";var H9=function(E){function a(){var y;(0,Ha.Z)(this,a);for(var x=arguments.length,b=new Array(x),z=0;z<x;z++)b[z]=arguments[z];return y=bs(this,a,[].concat(b)),y.name="html-renderer",y}return(0,Cs.Z)(a,E),(0,Va.Z)(a,[{key:"init",value:function(){this.addRenderingPlugin(new N5)}},{key:"destroy",value:function(){this.removeAllRenderingPlugins()}}])}(Qh);var V9=function(){function E(a){(0,Ha.Z)(this,E),this.renderingContext=a.renderingContext,this.canvasConfig=a.config}return(0,Va.Z)(E,[{key:"init",value:function(){var y=this.canvasConfig,x=y.container,b=y.canvas;if(b)this.$canvas=b,x&&b.parentElement!==x&&x.appendChild(b),this.$container=b.parentElement,this.canvasConfig.container=this.$container;else if(x&&(this.$container=al(x)?document.getElementById(x):x,this.$container)){var z=document.createElement("canvas");this.$container.appendChild(z),this.$container.style.position||(this.$container.style.position="relative"),this.$canvas=z}this.context=this.$canvas.getContext("2d"),this.resize(this.canvasConfig.width,this.canvasConfig.height)}},{key:"getContext",value:function(){return this.context}},{key:"getDomElement",value:function(){return this.$canvas}},{key:"getDPR",value:function(){return this.dpr}},{key:"getBoundingClientRect",value:function(){if(this.$canvas.getBoundingClientRect)return this.$canvas.getBoundingClientRect()}},{key:"destroy",value:function(){this.$container&&this.$canvas&&this.$canvas.parentNode&&this.$container.removeChild(this.$canvas)}},{key:"resize",value:function(y,x){var b=this.canvasConfig.devicePixelRatio;this.dpr=b,this.$canvas&&(this.$canvas.width=this.dpr*y,this.$canvas.height=this.dpr*x,GN(this.$canvas,y,x)),this.renderingContext.renderReasons.add(V0.CAMERA_CHANGED)}},{key:"applyCursorStyle",value:function(y){this.$container&&this.$container.style&&(this.$container.style.cursor=y)}},{key:"toDataURL",value:function(){var a=(0,Kh.Z)((0,Ic.Z)().mark(function x(){var b,z,ee,re=arguments;return(0,Ic.Z)().wrap(function(ae){for(;;)switch(ae.prev=ae.next){case 0:return b=re.length>0&&re[0]!==void 0?re[0]:{},z=b.type,ee=b.encoderOptions,ae.abrupt("return",this.context.canvas.toDataURL(z,ee));case 1:case"end":return ae.stop()}},x,this)}));function y(){return a.apply(this,arguments)}return y}()}])}(),K9=function(E){function a(){var y;(0,Ha.Z)(this,a);for(var x=arguments.length,b=new Array(x),z=0;z<x;z++)b[z]=arguments[z];return y=bs(this,a,[].concat(b)),y.name="canvas-context-register",y}return(0,Cs.Z)(a,E),(0,Va.Z)(a,[{key:"init",value:function(){this.context.ContextService=V9}},{key:"destroy",value:function(){delete this.context.ContextService}}])}(Qh),mm=function(E){function a(y){var x;return(0,Ha.Z)(this,a),x=bs(this,a,[y]),x.registerPlugin(new K9),x.registerPlugin(new R9),x.registerPlugin(new f9),x.registerPlugin(new U9),x.registerPlugin(new W9),x.registerPlugin(new T9),x.registerPlugin(new H9),x}return(0,Cs.Z)(a,E),(0,Va.Z)(a)}(RB);function Z9(E,a){if(E){var y;if(nd(E))for(var x=0,b=E.length;x<b&&(y=a(E[x],x),y!==!1);x++);else if(Tu(E)){for(var z in E)if(E.hasOwnProperty(z)&&(y=a(E[z],z),y===!1))break}}}var R5=Z9,Q9=Object.prototype.hasOwnProperty,i0=function(E,a){if(E===null||!Y0(E))return{};var y={};return R5(a,function(x){Q9.call(E,x)&&(y[x]=E[x])}),y},Y9=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b<x.length;b++)a.indexOf(x[b])<0&&Object.prototype.propertyIsEnumerable.call(E,x[b])&&(y[x[b]]=E[x[b]]);return y};class Fy extends bf{constructor(a){super(Object.assign(Object.assign({},a),{style:Object.assign({},Fy.defaultStyleProps,a.style)})),this.rootPointerEvent=new Tp(null),this.forwardEvents=y=>{const x=this.context.canvas,b=x.context.renderingContext.root.ownerDocument.defaultView;this.normalizeToPointerEvent(y,b).forEach(ee=>{const re=this.bootstrapEvent(this.rootPointerEvent,ee,b,y);fm(x.context.eventService,"mappingTable.pointerupoutside",[]),x.context.eventService.mapEvent(re)})}}get eventService(){return this.context.canvas.context.eventService}get events(){return[Ea.CLICK,Ea.POINTER_DOWN,Ea.POINTER_MOVE,Ea.POINTER_UP,Ea.POINTER_OVER,Ea.POINTER_LEAVE]}getDomElement(){return this.getShape("key").getDomElement()}render(a=this.parsedAttributes,y=this){this.drawKeyShape(a,y),this.drawPortShapes(a,y)}getKeyStyle(a){const y=i0(a,["dx","dy","innerHTML","pointerEvents","cursor"]),{dx:x=0,dy:b=0}=y,z=Y9(y,["dx","dy"]),[ee,re]=this.getSize(a);return Object.assign(Object.assign({x,y:b},z),{width:ee,height:re})}drawKeyShape(a,y){const x=this.getKeyStyle(a),{x:b,y:z,width:ee=0,height:re=0}=x,ae=this.upsert("key-container",gc,{x:b,y:z,width:ee,height:re,opacity:0},y);return this.upsert("key",Kg,x,ae)}connectedCallback(){if(!(this.context.canvas.getRenderer("main")instanceof mm))return;const x=this.getDomElement();this.events.forEach(b=>{x.addEventListener(b,this.forwardEvents)})}attributeChangedCallback(a,y,x){a==="zIndex"&&y!==x&&(this.getDomElement().style.zIndex=x)}destroy(){const a=this.getDomElement();this.events.forEach(y=>{a.removeEventListener(y,this.forwardEvents)}),super.destroy()}normalizeToPointerEvent(a,y){const x=[];if(y.isTouchEvent(a))for(let b=0;b<a.changedTouches.length;b++){const z=a.changedTouches[b];qo(z.button)&&(z.button=0),qo(z.buttons)&&(z.buttons=1),qo(z.isPrimary)&&(z.isPrimary=a.touches.length===1&&a.type==="touchstart"),qo(z.width)&&(z.width=z.radiusX||1),qo(z.height)&&(z.height=z.radiusY||1),qo(z.tiltX)&&(z.tiltX=0),qo(z.tiltY)&&(z.tiltY=0),qo(z.pointerType)&&(z.pointerType="touch"),qo(z.pointerId)&&(z.pointerId=z.identifier||0),qo(z.pressure)&&(z.pressure=z.force||.5),qo(z.twist)&&(z.twist=0),qo(z.tangentialPressure)&&(z.tangentialPressure=0),z.isNormalized=!0,z.type=a.type,x.push(z)}else if(y.isMouseEvent(a)){const b=a;qo(b.isPrimary)&&(b.isPrimary=!0),qo(b.width)&&(b.width=1),qo(b.height)&&(b.height=1),qo(b.tiltX)&&(b.tiltX=0),qo(b.tiltY)&&(b.tiltY=0),qo(b.pointerType)&&(b.pointerType="mouse"),qo(b.pointerId)&&(b.pointerId=1),qo(b.pressure)&&(b.pressure=.5),qo(b.twist)&&(b.twist=0),qo(b.tangentialPressure)&&(b.tangentialPressure=0),b.isNormalized=!0,x.push(b)}else x.push(a);return x}transferMouseData(a,y){a.isTrusted=y.isTrusted,a.srcElement=y.srcElement,a.timeStamp=performance.now(),a.type=y.type,a.altKey=y.altKey,a.metaKey=y.metaKey,a.shiftKey=y.shiftKey,a.ctrlKey=y.ctrlKey,a.button=y.button,a.buttons=y.buttons,a.client.x=y.clientX,a.client.y=y.clientY,a.movement.x=y.movementX,a.movement.y=y.movementY,a.page.x=y.pageX,a.page.y=y.pageY,a.screen.x=y.screenX,a.screen.y=y.screenY,a.relatedTarget=null}bootstrapEvent(a,y,x,b){a.view=x,a.originalEvent=null,a.nativeEvent=b,a.pointerId=y.pointerId,a.width=y.width,a.height=y.height,a.isPrimary=y.isPrimary,a.pointerType=y.pointerType,a.pressure=y.pressure,a.tangentialPressure=y.tangentialPressure,a.tiltX=y.tiltX,a.tiltY=y.tiltY,a.twist=y.twist,this.transferMouseData(a,y);const{x:z,y:ee}=this.getViewportXY(y);a.viewport.x=z,a.viewport.y=ee;const[re,ae]=this.context.canvas.getCanvasByViewport([z,ee]);return a.canvas.x=re,a.canvas.y=ae,a.global.copyFrom(a.canvas),a.offset.copyFrom(a.canvas),a.isTrusted=b.isTrusted,a.type==="pointerleave"&&(a.type="pointerout"),a}getViewportXY(a){let y,x;const{offsetX:b,offsetY:z,clientX:ee,clientY:re}=a;if(!Io(b)&&!Io(z))y=b,x=z;else{const ae=this.eventService.client2Viewport({x:ee,y:re});y=ae.x,x=ae.y}return{x:y,y:x}}onframe(){super.onframe();const{opacity:a}=this.attributes;this.getDomElement().style.opacity=`${a}`}}Fy.defaultStyleProps={size:[160,80],halo:!1,icon:!1,label:!1,pointerEvents:"auto"};var F5=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b<x.length;b++)a.indexOf(x[b])<0&&Object.prototype.propertyIsEnumerable.call(E,x[b])&&(y[x[b]]=E[x[b]]);return y};class ky extends bf{constructor(a){super(ic({style:ky.defaultStyleProps},a))}getKeyStyle(a){const[y,x]=this.getSize(a),b=super.getKeyStyle(a),{fillOpacity:z,opacity:ee=z}=b,re=F5(b,["fillOpacity","opacity"]);return Object.assign(Object.assign({opacity:ee},re),{width:y,height:x,x:-y/2,y:-x/2})}getBounds(){return this.getShape("key").getBounds()}getHaloStyle(a){if(a.halo===!1)return!1;const y=this.getShape("key").attributes,{fill:x,stroke:b}=y,z=F5(y,["fill","stroke"]),ee=Su(this.getGraphicStyle(a),"halo"),re=Number(ee.lineWidth),[ae,oe]=us(this.getSize(a),[re,re]),{lineWidth:de}=ee,ge={fill:"transparent",lineWidth:de/2,width:ae-de/2,height:oe-de/2,x:-(ae-de/2)/2,y:-(oe-de/2)/2};return Object.assign(Object.assign({},ee),ge)}getIconStyle(a){const y=super.getIconStyle(a),[x,b]=this.getSize(a);return y?Object.assign({width:x*ph,height:b*ph},y):!1}drawKeyShape(a,y){const x=this.upsert("key",Ox,this.getKeyStyle(a),y);return Lx(this),x}drawHaloShape(a,y){this.upsert("halo",gc,this.getHaloStyle(a),y)}update(a){super.update(a),a&&("x"in a||"y"in a||"z"in a)&&Bx(this)}}ky.defaultStyleProps={size:32};class X9 extends bf{constructor(a){super(a)}getKeyStyle(a){const[y,x]=this.getSize(a);return Object.assign(Object.assign({},super.getKeyStyle(a)),{width:y,height:x,x:-y/2,y:-x/2})}getIconStyle(a){const y=super.getIconStyle(a),{width:x,height:b}=this.getShape("key").attributes;return y?Object.assign({width:x*ph,height:b*ph},y):!1}drawKeyShape(a,y){return this.upsert("key",gc,this.getKeyStyle(a),y)}}class J9 extends Py{constructor(a){super(a)}getInnerR(a){return a.innerR||this.getOuterR(a)*3/8}getOuterR(a){return Math.min(...this.getSize(a))/2}getPoints(a){return zk(this.getOuterR(a),this.getInnerR(a))}getIconStyle(a){const y=super.getIconStyle(a),x=this.getInnerR(a)*2*ph;return y?Object.assign({width:x,height:x},y):!1}getPortXY(a,y){const{placement:x="top"}=y,b=this.getShape("key").getLocalBounds(),z=jk(this.getOuterR(a),this.getInnerR(a));return Zx(b,x,z,!1)}}class _y extends Py{constructor(a){super(ic({style:_y.defaultStyleProps},a))}getPoints(a){const{direction:y}=a,[x,b]=this.getSize(a);return Uk(x,b,y)}getPortXY(a,y){const{direction:x}=a,{placement:b="top"}=y,z=this.getShape("key").getLocalBounds(),[ee,re]=this.getSize(a),ae=Wk(ee,re,x);return Zx(z,b,ae,!1)}getIconStyle(a){const{icon:y,iconText:x,iconSrc:b,direction:z}=a;if(y===!1||Yf(x||b))return!1;const ee=Su(this.getGraphicStyle(a),"icon"),re=this.getShape("key").getLocalBounds(),[ae,oe]=MR(re,z),de=DR(re,z)*2*ph;return Object.assign({x:ae,y:oe,width:de,height:de},ee)}}_y.defaultStyleProps={size:40,direction:"up"};var k5=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b<x.length;b++)a.indexOf(x[b])<0&&Object.prototype.propertyIsEnumerable.call(E,x[b])&&(y[x[b]]=E[x[b]]);return y};class $0 extends bf{constructor(a){super(ic({style:$0.defaultStyleProps},a)),this.type="combo",this.updateComboPosition(this.parsedAttributes)}getKeySize(a){const{collapsed:y,childrenNode:x=[]}=a;return x.length===0?this.getEmptyKeySize(a):y?this.getCollapsedKeySize(a):this.getExpandedKeySize(a)}getEmptyKeySize(a){const{padding:y,collapsedSize:x}=a,[b,z,ee,re]=Md(y);return us(Id(x),[re+z,b+ee,0])}getCollapsedKeySize(a){return Id(a.collapsedSize)}getExpandedKeySize(a){const y=this.getContentBBox(a);return[Kf(y),Zf(y),0]}getContentBBox(a){const{childrenNode:y=[],padding:x}=a,b=y.map(ee=>this.context.element.getElement(ee)).filter(Boolean);if(b.length===0){const ee=new Gl,{x:re=0,y:ae=0,size:oe}=a,[de,ge]=Id(oe);return ee.setMinMax([re-de/2,ae-ge/2,0],[re+de/2,ae+ge/2,0]),ee}const z=im(b.map(ee=>ee.getBounds()));return x?$h(z,x):z}drawCollapsedMarkerShape(a,y){const x=this.getCollapsedMarkerStyle(a);this.upsert("collapsed-marker",S5,x,y),Lx(this)}getCollapsedMarkerStyle(a){if(!a.collapsed||!a.collapsedMarker)return!1;const y=Su(this.getGraphicStyle(a),"collapsedMarker"),{type:x}=y,b=k5(y,["type"]),z=this.getShape("key"),[ee,re]=mh(z.getLocalBounds(),"center"),ae=Object.assign(Object.assign({},b),{x:ee,y:re});if(x){const oe=this.getCollapsedMarkerText(x,a);Object.assign(ae,{text:oe})}return ae}getCollapsedMarkerText(a,y){const{childrenData:x=[]}=y,{model:b}=this.context;return a==="descendant-count"?b.getDescendantsData(this.id).length.toString():a==="child-count"?x.length.toString():a==="node-count"?b.getDescendantsData(this.id).filter(z=>b.getElementType(Br(z))==="node").length.toString():Xi(a)?a(x):""}getComboPosition(a){const{x:y=0,y:x=0,collapsed:b,childrenData:z=[]}=a;if(z.length===0)return[+y,+x,0];if(b){const{model:ee}=this.context,re=ee.getDescendantsData(this.id).filter(ae=>!ee.isCombo(Br(ae)));if(re.length>0&&re.some(E7)){const ae=re.reduce((oe,de)=>us(oe,$u(de)),[0,0,0]);return xf(ae,re.length)}return[+y,+x,0]}return this.getContentBBox(a).center}getComboStyle(a){const[y,x]=this.getComboPosition(a);return{x:y,y:x,transform:[["translate",y,x]]}}updateComboPosition(a){const y=this.getComboStyle(a);Object.assign(this.style,y);const{x,y:b}=y;this.context.model.syncNodeLikeDatum({id:this.id,style:{x,y:b}}),Bx(this)}render(a,y=this){super.render(a,y),this.drawCollapsedMarkerShape(a,y)}update(a={}){super.update(a),this.updateComboPosition(this.parsedAttributes)}onframe(){super.onframe(),this.attributes.collapsed||this.updateComboPosition(this.parsedAttributes),this.drawKeyShape(this.parsedAttributes,this)}animate(a,y){const x=super.animate(this.attributes.collapsed?a:a.map(b=>{var{x:z,y:ee,z:re,transform:ae}=b,oe=k5(b,["x","y","z","transform"]);return oe}),y);return x&&new Proxy(x,{set:(b,z,ee)=>(z==="currentTime"&&Promise.resolve().then(()=>this.onframe()),Reflect.set(b,z,ee))})}}$0.defaultStyleProps={childrenNode:[],droppable:!0,draggable:!0,collapsed:!1,collapsedSize:32,collapsedMarker:!0,collapsedMarkerZIndex:1,collapsedMarkerFontSize:12,collapsedMarkerTextAlign:"center",collapsedMarkerTextBaseline:"middle",collapsedMarkerType:"child-count"};class q9 extends $0{constructor(a){super(a)}drawKeyShape(a,y){return this.upsert("key",Hf,this.getKeyStyle(a),y)}getKeyStyle(a){const{collapsed:y}=a,x=super.getKeyStyle(a),[b]=this.getKeySize(a);return Object.assign(Object.assign(Object.assign({},x),y&&Su(x,"collapsed")),{r:b/2})}getCollapsedKeySize(a){const[y,x]=Id(a.collapsedSize),b=Math.max(y,x)/2;return[b*2,b*2,0]}getExpandedKeySize(a){const y=this.getContentBBox(a),[x,b]=Jh(y),z=Math.sqrt(Math.pow(x,2)+Math.pow(b,2))/2;return[z*2,z*2,0]}getIntersectPoint(a,y=!1){const x=this.getShape("key").getBounds();return Ay(a,x,y)}}class $9 extends $0{constructor(a){super(a)}drawKeyShape(a,y){return this.upsert("key",gc,this.getKeyStyle(a),y)}getKeyStyle(a){const y=super.getKeyStyle(a),[x,b]=this.getKeySize(a);return Object.assign(Object.assign(Object.assign({},y),a.collapsed&&Su(y,"collapsed")),{width:x,height:b,x:-x/2,y:-b/2})}}var ek=function(E,a){if(!nm(E))return E;for(var y=[],x=0;x<E.length;x++){var b=E[x];a(b,x)&&y.push(b)}return y},tk=ek,nk=function(E,a){return nm(E)?E.indexOf(a)>-1:!1},rk=nk,ak=function(E,a){return a===void 0&&(a=[]),tk(E,function(y){return!rk(a,y)})},ik=ak;const ok={padding:10};function _5(E,a,y,x,b,z){const{padding:ee}=Object.assign(ok,z),re=qh(y,ee),ae=qh(x,ee),oe=[E,...b,a];let de=null;const ge=[];for(let ye=0,De=oe.length;ye<De-1;ye++){const ke=ye+1,ze=oe[ye],We=oe[ke],Ve=x7(ze,We);let Ze=null;if(ye===0)if(ke===De-1)if(re.intersects(ae))Ze=Wx(ze,We,re,ae);else if(!ry(ze,re)&&!ry(We,ae)){const Ye=Jg(ze,re),et=Jg(We,ae);Ze=j5(Ye,et,Uc(Ye,et)),Ze.points.unshift(Ye),Ze.points.push(et)}else Ve||(Ze=lk(ze,We,re,ae));else yf(We,re)?Ze=Wx(ze,We,re,qh(We,ee),de):Ve||(Ze=zy(ze,We,re));else ke===De-1?yf(ze,ae)?Ze=Wx(ze,We,qh(ze,ee),ae,de):Ve||(Ze=U5(ze,We,ae,de)):Ve||(Ze=j5(ze,We,de));Ze?(ge.push(...Ze.points),de=Ze.direction):de=Uc(ze,We),ke<De-1&&ge.push(We)}return ge.map(e0)}const sk={N:"S",S:"N",W:"E",E:"W"},z5={N:-Math.PI/2,S:Math.PI/2,E:0,W:Math.PI};function Uc(E,a){const[y,x]=E,[b,z]=a;return y===b?x>z?"N":"S":x===z?y>b?"W":"E":null}function Ux(E,a){return a==="N"||a==="S"?Zf(E):Kf(E)}function j5(E,a,y){const x=[E[0],a[1]],b=[a[0],E[1]],z=Uc(E,x),ee=Uc(E,b),re=y?sk[y]:null,ae=z===y||z!==re&&ee!==y?x:b;return{points:[ae],direction:Uc(ae,a)}}function zy(E,a,y){if(ry(E,y)){const x=pm(E,a,y);return{points:[x],direction:Uc(x,a)}}else{const x=Jg(E,y),z=["left","right"].includes(om(E,y))?[a[0],x[1]]:[x[0],a[1]];return{points:[z],direction:Uc(z,a)}}}function U5(E,a,y,x){const b=ry(a,y)?a:Jg(a,y),z=[[b[0],E[1]],[E[0],b[1]]],ee=z.filter(ae=>wR(ae,y)&&!uw(ae,y,!0)),re=ee.filter(ae=>Uc(ae,E)!==x);if(re.length>0){const ae=re.find(oe=>Uc(E,oe)===x)||re[0];return{points:[ae],direction:Uc(ae,a)}}else{const ae=ik(z,ee)[0],oe=ng(a,ae,Ux(y,x)/2);return{points:[pm(oe,E,y),oe],direction:Uc(oe,a)}}}function lk(E,a,y,x){let b=zy(E,a,y);const z=um(b.points[0]);if(yf(z,x)){b=zy(a,E,x);const ee=um(b.points[0]);if(yf(ee,y)){const re=ng(E,z,Ux(y,Uc(E,z))/2),ae=ng(a,ee,Ux(x,Uc(a,ee))/2),oe=[(re[0]+ae[0])/2,(re[1]+ae[1])/2],de=zy(E,oe,y),ge=U5(oe,a,x,de.direction);b.points=[de.points[0],ge.points[0]],b.direction=ge.direction}}return b}function Wx(E,a,y,x,b){const ee=im([y,x]),re=Xl(a,ee.center)>Xl(E,ee.center),[ae,oe]=re?[a,E]:[E,a],de=Zf(ee)+Kf(ee);let ge;if(b){const ke=[ae[0]+de*Math.cos(z5[b]),ae[1]+de*Math.sin(z5[b])];ge=ng(Jg(ke,ee),ke,.01)}else ge=ng(Jg(ae,ee),ae,-.01);let ye=pm(ge,oe,ee),De=[cm(ge,2),cm(ye,2)];if(Nu(cm(ge),cm(ye))){const ke=Sx(Fl(ge,ae),[1,0,0])+Math.PI/2;ye=[oe[0]+de*Math.cos(ke),oe[1]+de*Math.sin(ke),0],ye=cm(ng(Jg(ye,ee),oe,-.01),2);const ze=pm(ge,ye,ee);De=[ge,ze,ye]}return{points:re?De.reverse():De,direction:Uc(re?ge:ye,a)}}function pm(E,a,y){let x=[E[0],a[1]];return yf(x,y)&&(x=[a[0],E[1]]),x}function W5(E,a,y,x,b){let ae=typeof a=="number"?a:.5;a==="start"&&(ae=0),a==="end"&&(ae=.99);const oe=mc(E.getPoint(ae)),de=mc(E.getPoint(ae+.01));let ge=a==="start"?"left":a==="end"?"right":"center";if(r5(oe,de)||!y){const[Ve,Ze]=G5(E,ae,x,b);return{transform:[["translate",Ve,Ze]],textAlign:ge}}let ye=Math.atan2(de[1]-oe[1],de[0]-oe[0]);de[0]<oe[0]&&(ge=ge==="center"?ge:ge==="left"?"right":"left",x*=-1,ye+=Math.PI);const[ke,ze]=G5(E,ae,x,b,ye),We=[["translate",ke,ze],["rotate",ye/Math.PI*180]];return{textAlign:ge,transform:We}}function uk(E,a,y,x,b){var z,ee;const re=((z=E.badge)===null||z===void 0?void 0:z.getGeometryBounds().halfExtents[0])*2||0,ae=((ee=E.label)===null||ee===void 0?void 0:ee.getGeometryBounds().halfExtents[0])*2||0;return W5(E.key,y,!0,(ae?(ae/2+re/2)*(a==="suffix"?1:-1):0)+x,b)}function G5(E,a,y,x,b){const[z,ee]=mc(E.getPoint(a));let re=y,ae=x;return b&&(re=y*Math.cos(b)-x*Math.sin(b),ae=y*Math.sin(b)+x*Math.cos(b)),[z+re,ee+ae]}function Gx(E,a,y,x){if(Nu(E,a))return E;const b=Fl(a,E),z=[E[0]+y*b[0],E[1]+y*b[1]],ee=vh(Ey(b,!1));return z[0]+=x*ee[0],z[1]+=x*ee[1],z}function ck(E){return ji(E)?[E,-E]:E}function dk(E){return ji(E)?[E,1-E]:E}function fk(E,a,y){return[["M",E[0],E[1]],["Q",y[0],y[1],a[0],a[1]]]}function H5(E,a,y){return[["M",E[0],E[1]],["C",y[0][0],y[0][1],y[1][0],y[1][1],a[0],a[1]]]}function Hx(E,a=0,y=!1){const x=E.length-1,b=E[0],z=E[x],ee=E.slice(1,x),re=[["M",b[0],b[1]]];return ee.forEach((ae,oe)=>{const de=ee[oe-1]||b,ge=ee[oe+1]||z;if(!a5(de,ae,ge)&&a){const[ye,De]=hk(de,ae,ge,a);re.push(["L",ye[0],ye[1]],["Q",ae[0],ae[1],De[0],De[1]],["L",De[0],De[1]])}else re.push(["L",ae[0],ae[1]])}),re.push(["L",z[0],z[1]]),y&&re.push(["Z"]),re}function hk(E,a,y,x){const b=yy(E,a),z=yy(y,a),ee=Math.min(x,Math.min(b,z)/2),re=[a[0]-ee/b*(a[0]-E[0]),a[1]-ee/b*(a[1]-E[1])],ae=[a[0]-ee/z*(a[0]-y[0]),a[1]-ee/z*(a[1]-y[1])];return[re,ae]}const gk=E=>{const a=Math.PI/2,y=Zf(E)/2,x=Kf(E)/2,b=Math.atan2(y,x)/2,z=Math.atan2(x,y)/2;return{top:[-a-z,-a+z],"top-right":[-a+z,-b],"right-top":[-a+z,-b],right:[-b,b],"bottom-right":[b,a-z],"right-bottom":[b,a-z],bottom:[a-z,a+z],"bottom-left":[a+z,Math.PI-b],"left-bottom":[a+z,Math.PI-b],left:[Math.PI-b,Math.PI+b],"top-left":[Math.PI+b,-a-z],"left-top":[Math.PI+b,-a-z]}};function V5(E,a,y,x,b){const z=qh(E),ee=E.getCenter();let re=x&&ig(x),ae=b&&ig(b);if(!re||!ae){const oe=gk(z),de=oe[a][0],ge=oe[a][1],[ye,De]=Jh(z),ke=Math.max(ye,De),ze=us(ee,[ke*Math.cos(de),ke*Math.sin(de),0]),We=us(ee,[ke*Math.cos(ge),ke*Math.sin(ge),0]);re=Yx(E,ze),ae=Yx(E,We),y||([re,ae]=[ae,re])}return[re,ae]}function vk(E,a,y,x,b,z){const ee=E.getPorts()[b||z],re=E.getPorts()[z||b];let[ae,oe]=V5(E,a,y,ee,re);const de=mk(E,ae,oe,x);return ee&&(ae=Em(ee,de[0])),re&&(oe=Em(re,de.at(-1))),H5(ae,oe,de)}function mk(E,a,y,x){const b=E.getCenter();if(Nu(a,y)){const z=Fl(a,b),ee=[x*Math.sign(z[0])||x/2,x*Math.sign(z[1])||-x/2,0];return[us(a,ee),us(y,Af(ee,[1,-1,1]))]}return[ng(b,a,Xl(b,a)+x),ng(b,y,Xl(b,y)+x)]}function pk(E,a,y,x,b,z,ee){const re=Qx(E),ae=re[z||ee],oe=re[ee||z];let[de,ge]=V5(E,y,x,ae,oe);const ye=yk(E,de,ge,b);return ae&&(de=Em(ae,ye[0])),oe&&(ge=Em(oe,ye.at(-1))),Hx([de,...ye,ge],a)}function yk(E,a,y,x){const b=[],z=qh(E);if(Nu(a,y))switch(om(a,z)){case"left":b.push([a[0]-x,a[1]]),b.push([a[0]-x,a[1]+x]),b.push([a[0],a[1]+x]);break;case"right":b.push([a[0]+x,a[1]]),b.push([a[0]+x,a[1]+x]),b.push([a[0],a[1]+x]);break;case"top":b.push([a[0],a[1]-x]),b.push([a[0]+x,a[1]-x]),b.push([a[0]+x,a[1]]);break;case"bottom":b.push([a[0],a[1]+x]),b.push([a[0]+x,a[1]+x]),b.push([a[0]+x,a[1]]);break}else{const ee=om(a,z),re=om(y,z);if(ee===re){const ae=ee;let oe,de;switch(ae){case"left":oe=Math.min(a[0],y[0])-x,b.push([oe,a[1]]),b.push([oe,y[1]]);break;case"right":oe=Math.max(a[0],y[0])+x,b.push([oe,a[1]]),b.push([oe,y[1]]);break;case"top":de=Math.min(a[1],y[1])-x,b.push([a[0],de]),b.push([y[0],de]);break;case"bottom":de=Math.max(a[1],y[1])+x,b.push([a[0],de]),b.push([y[0],de]);break}}else{const ae=(ye,De)=>({left:[De[0]-x,De[1]],right:[De[0]+x,De[1]],top:[De[0],De[1]-x],bottom:[De[0],De[1]+x]})[ye],oe=ae(ee,a),de=ae(re,y),ge=pm(oe,de,z);b.push(oe,ge,de)}}return b}function Vx(E,a){const y=new Set,x=new Set,b=new Set;return E.forEach(z=>{a(z).forEach(re=>{y.add(re),E.includes(re.source)&&E.includes(re.target)?x.add(re):b.add(re)})}),{edges:Array.from(y),internal:Array.from(x),external:Array.from(b)}}function K5(E,a){const y=[];let x=E;for(;x;){y.push(x);const b=a(Br(x));if(b)x=b;else break}if(y.some(b=>{var z;return(z=b.style)===null||z===void 0?void 0:z.collapsed})){const b=y.reverse().findIndex(ud);return y[b]||y.at(-1)}return E}function Ek(E,a){return a||(E<4?10:E===4?12:E*2.5)}const Ak=(E,a)=>{const y=Math.max(E,a)/2;return[["M",-E/2,0],["A",y,y,0,1,0,2*y-E/2,0],["A",y,y,0,1,0,-E/2,0],["Z"]]},Z5=(E,a)=>[["M",-E/2,0],["L",E/2,-a/2],["L",E/2,a/2],["Z"]],xk=(E,a)=>[["M",-E/2,0],["L",0,-a/2],["L",E/2,0],["L",0,a/2],["Z"]],Sk=(E,a)=>[["M",-E/2,0],["L",E/2,-a/2],["L",4*E/5-E/2,0],["L",E/2,a/2],["Z"]],bk=(E,a)=>[["M",-E/2,-a/2],["L",E/2,-a/2],["L",E/2,a/2],["L",-E/2,a/2],["Z"]],Ck=(E,a)=>{const y=E/2,x=E/7,b=E-x;return[["M",-y,0],["L",0,-a/2],["L",0,a/2],["Z"],["M",b-y,-a/2],["L",b+x-y,-a/2],["L",b+x-y,a/2],["L",b-y,a/2],["Z"]]},Pk=(E,a)=>[["M",E/2,-a/2],["L",-E/2,0],["L",E/2,0],["L",-E/2,0],["L",E/2,a/2]];var jy=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b<x.length;b++)a.indexOf(x[b])<0&&Object.prototype.propertyIsEnumerable.call(E,x[b])&&(y[x[b]]=E[x[b]]);return y};class ag extends b5{constructor(a){super(ic({style:ag.defaultStyleProps},a)),this.type="edge"}get sourceNode(){const{sourceNode:a}=this.parsedAttributes;return this.context.element.getElement(a)}get targetNode(){const{targetNode:a}=this.parsedAttributes;return this.context.element.getElement(a)}getKeyStyle(a){const y=this.getGraphicStyle(a),{loop:x}=y,b=jy(y,["loop"]),{sourceNode:z,targetNode:ee}=this,ae={d:x&&Rk(z,ee)?this.getLoopPath(a):this.getKeyPath(a)};return Cd.PARSED_STYLE_LIST.forEach(oe=>{oe in b&&(ae[oe]=b[oe])}),ae}getLoopPath(a){const{sourcePort:y,targetPort:x}=a,b=this.sourceNode,z=qh(b),ee=Math.max(Kf(z),Zf(z)),{placement:re,clockwise:ae,dist:oe=ee}=Su(this.getGraphicStyle(a),"loop");return vk(b,re,ae,oe,y,x)}getEndpoints(a,y=!0,x=[]){const{sourcePort:b,targetPort:z}=a,{sourceNode:ee,targetNode:re}=this,[ae,oe]=kk(ee,re,b,z);if(!y){const De=ae?ig(ae):ee.getCenter(),ke=oe?ig(oe):re.getCenter();return[De,ke]}const de=typeof x=="function"?x():x,ge=tM(ae||ee,de[0]||oe||re),ye=tM(oe||re,de[de.length-1]||ae||ee);return[ge,ye]}getHaloStyle(a){if(a.halo===!1)return!1;const y=this.getKeyStyle(a),x=Su(this.getGraphicStyle(a),"halo");return Object.assign(Object.assign({},y),x)}getLabelStyle(a){if(a.label===!1||!a.labelText)return!1;const y=Su(this.getGraphicStyle(a),"label"),{placement:x,offsetX:b,offsetY:z,autoRotate:ee,maxWidth:re}=y,ae=jy(y,["placement","offsetX","offsetY","autoRotate","maxWidth"]),oe=W5(this.shapeMap.key,x,ee,b,z),de=this.shapeMap.key.getLocalBounds(),ge=R7([de.min,de.max],re);return Object.assign({wordWrapWidth:ge},oe,ae)}getBadgeStyle(a){if(a.badge===!1||!a.badgeText)return!1;const y=Su(a,"badge"),{offsetX:x,offsetY:b,placement:z}=y,ee=jy(y,["offsetX","offsetY","placement"]);return Object.assign(ee,uk(this.shapeMap,z,a.labelPlacement,x,b))}drawArrow(a,y){var x;const b=y==="start",ee=a[y==="start"?"startArrow":"endArrow"],re=this.shapeMap.key;if(ee){const ae=this.getArrowStyle(a,b),[oe,de,ge]=b?["markerStart","markerStartOffset","startArrowOffset"]:["markerEnd","markerEndOffset","endArrowOffset"],ye=re.parsedStyle[oe];if(ye)ye.attr(ae);else{const De=ae.src?$v:Cd,ke=new De({style:ae});re.style[oe]=ke}re.style[de]=a[ge]||ae.width/2+ +ae.lineWidth}else{const ae=b?"markerStart":"markerEnd";(x=re.style[ae])===null||x===void 0||x.destroy(),re.style[ae]=null}}getArrowStyle(a,y){const x=this.getShape("key").attributes,b=y?"startArrow":"endArrow",z=Su(this.getGraphicStyle(a),b),{size:ee,type:re}=z,ae=jy(z,["size","type"]),[oe,de]=Id(Ek(x.lineWidth,ee)),ye=(Xi(re)?re:He[re]||Z5)(oe,de);return Object.assign(i0(x,["stroke","strokeOpacity","fillOpacity"]),{width:oe,height:de},Object.assign({},ye&&{d:ye,fill:re==="simple"?"":x.stroke}),ae)}drawLabelShape(a,y){const x=this.getLabelStyle(a);this.upsert("label",Xf,x,y)}drawHaloShape(a,y){const x=this.getHaloStyle(a);this.upsert("halo",Cd,x,y)}drawBadgeShape(a,y){const x=this.getBadgeStyle(a);this.upsert("badge",J0,x,y)}drawSourceArrow(a){this.drawArrow(a,"start")}drawTargetArrow(a){this.drawArrow(a,"end")}drawKeyShape(a,y){const x=this.getKeyStyle(a);return this.upsert("key",Cd,x,y)}render(a=this.parsedAttributes,y=this){this.drawKeyShape(a,y),this.getShape("key")&&(this.drawSourceArrow(a),this.drawTargetArrow(a),this.drawLabelShape(a,y),this.drawHaloShape(a,y),this.drawBadgeShape(a,y))}onframe(){this.drawKeyShape(this.parsedAttributes,this),this.drawSourceArrow(this.parsedAttributes),this.drawTargetArrow(this.parsedAttributes),this.drawHaloShape(this.parsedAttributes,this),this.drawLabelShape(this.parsedAttributes,this),this.drawBadgeShape(this.parsedAttributes,this)}animate(a,y){const x=super.animate(a,y);return x&&new Proxy(x,{set:(b,z,ee)=>(z==="currentTime"&&Promise.resolve().then(()=>this.onframe()),Reflect.set(b,z,ee))})}}ag.defaultStyleProps={badge:!0,badgeOffsetX:0,badgeOffsetY:0,badgePlacement:"suffix",isBillboard:!0,label:!0,labelAutoRotate:!0,labelIsBillboard:!0,labelMaxWidth:"80%",labelOffsetX:4,labelOffsetY:0,labelPlacement:"center",labelTextBaseline:"middle",labelWordWrap:!1,halo:!1,haloDroppable:!1,haloLineDash:0,haloLineWidth:12,haloPointerEvents:"none",haloStrokeOpacity:.25,haloZIndex:-1,loop:!0,startArrow:!1,startArrowLineDash:0,startArrowLineJoin:"round",startArrowLineWidth:1,startArrowTransformOrigin:"center",startArrowType:"vee",endArrow:!1,endArrowLineDash:0,endArrowLineJoin:"round",endArrowLineWidth:1,endArrowTransformOrigin:"center",endArrowType:"vee",loopPlacement:"top",loopClockwise:!0};class o0 extends ag{constructor(a){super(ic({style:o0.defaultStyleProps},a))}getKeyPath(a){const[y,x]=this.getEndpoints(a),{controlPoints:b,curvePosition:z,curveOffset:ee}=a,re=this.getControlPoints(y,x,dk(z),ck(ee),b);return H5(y,x,re)}getControlPoints(a,y,x,b,z){return(z==null?void 0:z.length)===2?z:[Gx(a,y,x[0],b[0]),Gx(a,y,x[1],b[1])]}}o0.defaultStyleProps={curvePosition:.5,curveOffset:20};class Uy extends o0{constructor(a){super(ic({style:Uy.defaultStyleProps},a))}getControlPoints(a,y,x,b){const z=y[0]-a[0];return[[a[0]+z*x[0]+b[0],a[1]],[y[0]-z*x[1]+b[1],y[1]]]}}Uy.defaultStyleProps={curvePosition:[.5,.5],curveOffset:[0,0]};class Wy extends o0{constructor(a){super(ic({style:Wy.defaultStyleProps},a))}get ref(){return this.context.model.getRootsData()[0]}getEndpoints(a){if(this.sourceNode.id===this.ref.id)return super.getEndpoints(a);const y=$u(this.ref),x=this.sourceNode.getIntersectPoint(y,!0),b=this.targetNode.getIntersectPoint(y);return[x,b]}toRadialCoordinate(a){const y=$u(this.ref),x=Xl(a,y),b=qw(Fl(a,y));return[x,b]}getControlPoints(a,y,x,b){const[z,ee]=this.toRadialCoordinate(a),[re]=this.toRadialCoordinate(y),ae=re-z;return[[a[0]+(ae*x[0]+b[0])*Math.cos(ee),a[1]+(ae*x[0]+b[0])*Math.sin(ee)],[y[0]-(ae*x[1]-b[0])*Math.cos(ee),y[1]-(ae*x[1]-b[0])*Math.sin(ee)]]}}Wy.defaultStyleProps={curvePosition:.5,curveOffset:20};class Gy extends o0{constructor(a){super(ic({style:Gy.defaultStyleProps},a))}getControlPoints(a,y,x,b){const z=y[1]-a[1];return[[a[0],a[1]+z*x[0]+b[0]],[y[0],y[1]-z*x[1]+b[1]]]}}Gy.defaultStyleProps={curvePosition:[.5,.5],curveOffset:[0,0]};class Hy extends ag{constructor(a){super(ic({style:Hy.defaultStyleProps},a))}getKeyPath(a){const[y,x]=this.getEndpoints(a);return[["M",y[0],y[1]],["L",x[0],x[1]]]}}Hy.defaultStyleProps={};const wk={enableObstacleAvoidance:!1,offset:10,maxAllowedDirectionChange:Math.PI/2,maximumLoops:3e3,gridSize:5,startDirections:["top","right","bottom","left"],endDirections:["top","right","bottom","left"],directionMap:{right:{stepX:1,stepY:0},left:{stepX:-1,stepY:0},bottom:{stepX:0,stepY:1},top:{stepX:0,stepY:-1}},penalties:{0:0,90:0},distFunc:yy},yh=E=>`${Math.round(E[0])}|||${Math.round(E[1])}`;function s0(E,a){const y=x=>Math.round(x/a);return ji(E)?y(E):E.map(y)}function Mk(E,a){const y=Math.abs(E-a);return y>Math.PI?2*Math.PI-y:y}function Q5(E,a){const y=a[0]-E[0],x=a[1]-E[1];return!y&&!x?0:Math.atan2(x,y)}function Y5(E,a,y,x){const b=Q5(E,a),z=y[yh(E)],re=Q5(z||x,E);return Mk(re,b)}const Dk=(E,a)=>{const{offset:y,gridSize:x}=a,b={};return E.forEach(z=>{if(!z||z.destroyed||!z.isVisible())return;const ee=$h(z.getRenderBounds(),y);for(let re=s0(ee.min[0],x);re<=s0(ee.max[0],x);re+=1)for(let ae=s0(ee.min[1],x);ae<=s0(ee.max[1],x);ae+=1)b[`${re}|||${ae}`]=!0}),b};function X5(E,a,y){return Math.min(...a.map(x=>y(E,x)))}function Ik(E,a,y){let x=E[0],b=y(E[0],a);for(let z=0;z<E.length;z++){const ee=E[z],re=y(ee,a);re<b&&(x=ee,b=re)}return x}const J5=(E,a,y,x)=>{if(!a)return[E];const{directionMap:b,offset:z}=x,ee=$h(a.getRenderBounds(),z),re=Object.keys(b).reduce((ae,oe)=>{if(y.includes(oe)){const de=b[oe],[ge,ye]=Jh(ee),De=[E[0]+de.stepX*ge,E[1]+de.stepY*ye],ke=IR(ee);for(let ze=0;ze<ke.length;ze++){const We=Cx([E,De],ke[ze]);We&&uw(We,ee)&&ae.push(We)}}return ae},[]);return yf(E,ee)||re.push(E),re.map(ae=>s0(ae,x.gridSize))},Ok=(E,a,y,x,b,z,ee)=>{const re=[];let ae=[z[0]===x[0]?x[0]:E[0]*ee,z[1]===x[1]?x[1]:E[1]*ee];re.unshift(ae);let oe=E,de=a[yh(oe)];for(;de;){const De=de,ke=oe;Y5(De,ke,a,y)&&(ae=[De[0]===ke[0]?ae[0]:De[0]*ee,De[1]===ke[1]?ae[1]:De[1]*ee],re.unshift(ae)),de=a[yh(De)],oe=De}const ge=b.map(De=>[De[0]*ee,De[1]*ee]),ye=Ik(ge,ae,yy);return re.unshift(ye),re};function Tk(E,a,y,x){const b=e0(E.getCenter()),z=e0(a.getCenter()),ee=Object.assign(wk,x),{gridSize:re}=ee,ae=ee.enableObstacleAvoidance?y:[E,a],oe=Dk(ae,ee),de=s0(b,re),ge=s0(z,re),ye=J5(b,E,ee.startDirections,ee),De=J5(z,a,ee.endDirections,ee);ye.forEach(dt=>delete oe[yh(dt)]),De.forEach(dt=>delete oe[yh(dt)]);const ke={},ze={},We={},Ve={},Ze={},Ye=new Lk;for(let dt=0;dt<ye.length;dt++){const Ot=ye[dt],_t=yh(Ot);ke[_t]=Ot,Ve[_t]=0,Ze[_t]=X5(Ot,De,ee.distFunc),Ye.add({id:_t,value:Ze[_t]})}const et=De.map(dt=>yh(dt));let st=ee.maximumLoops,ht,mt=1/0;for(const[dt,Ot]of Object.entries(ke))Ze[dt]<=mt&&(mt=Ze[dt],ht=Ot);for(;Object.keys(ke).length>0&&st>0;){const dt=Ye.minId(!1);if(dt)ht=ke[dt];else break;const Ot=yh(ht);if(et.includes(Ot))return Ok(ht,We,de,z,ye,ge,re);delete ke[Ot],Ye.remove(Ot),ze[Ot]=!0;for(const _t of Object.values(ee.directionMap)){const wt=us(ht,[_t.stepX,_t.stepY]),$t=yh(wt);if(ze[$t])continue;const gn=Y5(ht,wt,We,de);if(gn>ee.maxAllowedDirectionChange||oe[$t])continue;ke[$t]||(ke[$t]=wt);const Xt=ee.penalties[gn],Tn=ee.distFunc(ht,wt)+(isNaN(Xt)?re:Xt),er=Ve[Ot]+Tn,En=Ve[$t];En&&er>=En||(We[$t]=ht,Ve[$t]=er,Ze[$t]=er+X5(wt,De,ee.distFunc),Ye.add({id:$t,value:Ze[$t]}))}st-=1}return[]}class Lk{constructor(){this.arr=[],this.map={},this.arr=[],this.map={}}_innerAdd(a,y){let x=0,b=y-1;for(;b-x>1;){const z=Math.floor((x+b)/2);if(this.arr[z].value>a.value)b=z;else if(this.arr[z].value<a.value)x=z;else{this.arr.splice(z,0,a),this.map[a.id]=!0;return}}this.arr.splice(b,0,a),this.map[a.id]=!0}add(a){delete this.map[a.id];const y=this.arr.length;if(!y||this.arr[y-1].value<a.value){this.arr.push(a),this.map[a.id]=!0;return}this._innerAdd(a,y)}remove(a){this.map[a]&&delete this.map[a]}_clearAndGetMinId(){let a;for(let y=this.arr.length-1;y>=0;y--)this.map[this.arr[y].id]?a=this.arr[y].id:this.arr.splice(y,1);return a}_findFirstId(){for(;this.arr.length;){const a=this.arr.shift();if(this.map[a.id])return a.id}}minId(a){return a?this._clearAndGetMinId():this._findFirstId()}}class Vy extends ag{constructor(a){super(ic({style:Vy.defaultStyleProps},a))}getControlPoints(a){const{router:y}=a,{sourceNode:x,targetNode:b}=this,[z,ee]=this.getEndpoints(a,!1);let re=[];if(!y)re=a.controlPoints;else if(y.type==="shortest-path"){const ae=this.context.element.getNodes();re=Tk(x,b,ae,y),re.length||(re=_5(z,ee,x,b,a.controlPoints,{padding:y.offset}))}else y.type==="orth"&&(re=_5(z,ee,x,b,a.controlPoints,y));return re}getPoints(a){const y=this.getControlPoints(a),[x,b]=this.getEndpoints(a,!0,y);return[x,...y,b]}getKeyPath(a){const y=this.getPoints(a);return Hx(y,a.radius)}getLoopPath(a){const{sourcePort:y,targetPort:x,radius:b}=a,z=this.sourceNode,ee=qh(z),re=Math.max(Kf(ee),Zf(ee))/4,{placement:ae,clockwise:oe,dist:de=re}=Su(this.getGraphicStyle(a),"loop");return pk(z,b,ae,oe,de,y,x)}}Vy.defaultStyleProps={radius:0,controlPoints:[],router:!1};class Ky extends ag{constructor(a){super(ic({style:Ky.defaultStyleProps},a))}getKeyPath(a){const{curvePosition:y,curveOffset:x}=a,[b,z]=this.getEndpoints(a),ee=a.controlPoint||Gx(b,z,y,x);return fk(b,z,ee)}}Ky.defaultStyleProps={curvePosition:.5,curveOffset:30};var Bk=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b<x.length;b++)a.indexOf(x[b])<0&&Object.prototype.propertyIsEnumerable.call(E,x[b])&&(y[x[b]]=E[x[b]]);return y};function ym(E){return E instanceof bf&&E.type==="node"}function q5(E){return E instanceof ag}function Kx(E){return E instanceof $0}function Nk(E){return ym(E)||q5(E)||Kx(E)}function Rk(E,a){return!E||!a?!1:E===a}const Fk={top:[.5,0],right:[1,.5],bottom:[.5,1],left:[0,.5],"left-top":[0,0],"top-left":[0,0],"left-bottom":[0,1],"bottom-left":[0,1],"right-top":[1,0],"top-right":[1,0],"right-bottom":[1,1],"bottom-right":[1,1],default:[.5,.5]};function Zx(E,a,y=Fk,x=!0){const b=[.5,.5],z=al(a)?pc(y,a.toLocaleLowerCase(),b):a;if(!x&&al(a))return z;const[ee,re]=z||b;return[E.min[0]+Kf(E)*ee,E.min[1]+Zf(E)*re]}function Qx(E){if(!E)return{};const a=E.getPorts();return(E.attributes.ports||[]).forEach((x,b)=>{var z;const{key:ee,placement:re}=x;$5(x)&&(a[z=ee||b]||(a[z]=mh(E.getShape("key").getBounds(),re)))}),a}function $5(E){const{r:a}=E;return!a||Number(a)===0}function ig(E){return Q0(E)?E:E.getPosition()}function kk(E,a,y,x){const b=eM(E,a,y,x),z=eM(a,E,x,y);return[b,z]}function eM(E,a,y,x){const b=Qx(E);if(y)return b[y];const z=Object.values(b);if(z.length===0)return;const ee=z.map(oe=>ig(oe)),re=_k(a,x),[ae]=C7(ee,re);return z.find(oe=>ig(oe)===ae)}function _k(E,a){const y=Qx(E);if(a)return[ig(y[a])];const x=Object.values(y);return x.length>0?x.map(b=>ig(b)):[E.getCenter()]}function tM(E,a){return Kx(E)||ym(E)?Yx(E,a):Em(E,a)}function Em(E,a){if(!E||!a)return[0,0,0];if(Q0(E))return E;if(E.attributes.linkToCenter)return E.getPosition();const y=Q0(a)?a:ym(a)?a.getCenter():a.getPosition();return Ay(y,E.getBounds())}function Yx(E,a){if(!E||!a)return[0,0,0];const y=Q0(a)?a:ym(a)?a.getCenter():a.getPosition();return E.getIntersectPoint(y)||E.getCenter()}function nM(E,a="bottom",y=0,x=0,b=!1){const z=a.split("-"),[ee,re]=mh(E,a),[ae,oe]=b?["bottom","top"]:["top","bottom"],de=z.includes("top")?oe:z.includes("bottom")?ae:"middle",ge=z.includes("left")?"right":z.includes("right")?"left":"center";return{transform:[["translate",ee+y,re+x]],textBaseline:de,textAlign:ge}}function zk(E,a){return[[0,-E],[a*Math.cos(3*Math.PI/10),-a*Math.sin(3*Math.PI/10)],[E*Math.cos(Math.PI/10),-E*Math.sin(Math.PI/10)],[a*Math.cos(Math.PI/10),a*Math.sin(Math.PI/10)],[E*Math.cos(3*Math.PI/10),E*Math.sin(3*Math.PI/10)],[0,a],[-E*Math.cos(3*Math.PI/10),E*Math.sin(3*Math.PI/10)],[-a*Math.cos(Math.PI/10),a*Math.sin(Math.PI/10)],[-E*Math.cos(Math.PI/10),-E*Math.sin(Math.PI/10)],[-a*Math.cos(3*Math.PI/10),-a*Math.sin(3*Math.PI/10)]]}function jk(E,a){const y={};return y.top=[0,-E],y.left=[-E*Math.cos(Math.PI/10),-E*Math.sin(Math.PI/10)],y["left-bottom"]=[-E*Math.cos(3*Math.PI/10),E*Math.sin(3*Math.PI/10)],y.bottom=[0,a],y["right-bottom"]=[E*Math.cos(3*Math.PI/10),E*Math.sin(3*Math.PI/10)],y.right=y.default=[E*Math.cos(Math.PI/10),-E*Math.sin(Math.PI/10)],y}function Uk(E,a,y){const x=a/2,b=E/2,z={up:[[-b,x],[b,x],[0,-x]],left:[[-b,0],[b,x],[b,-x]],right:[[-b,x],[-b,-x],[b,0]],down:[[-b,-x],[b,-x],[0,x]]};return z[y]||z.up}function Wk(E,a,y){const x=a/2,b=E/2,z={};return y==="down"?(z.bottom=z.default=[0,x],z.right=[b,-x],z.left=[-b,-x]):y==="left"?(z.top=[b,-x],z.bottom=[b,x],z.left=z.default=[-b,0]):y==="right"?(z.top=[-b,-x],z.bottom=[-b,x],z.right=z.default=[b,0]):(z.left=[-b,x],z.top=z.default=[0,-x],z.right=[b,x]),z}function Jte(E,a){return[[E/2,-a/2],[E/2,a/2],[-E/2,a/2],[-E/2,-a/2]]}function Gk(E,a){return[[0,-a/2],[E/2,0],[0,a/2],[-E/2,0]]}function rM(E){return pc(E,["style","visibility"])!=="hidden"}function Hk(E,a){const{zIndex:y,transform:x,transformOrigin:b,visibility:z,cursor:ee,clipPath:re,component:ae}=a,oe=Bk(a,["zIndex","transform","transformOrigin","visibility","cursor","clipPath","component"]);Object.assign(E.attributes,oe),x&&E.setAttribute("transform",x),ji(y)&&E.setAttribute("zIndex",y),b&&E.setAttribute("transformOrigin",b),z&&E.setAttribute("visibility",z),ee&&E.setAttribute("cursor",ee),re&&E.setAttribute("clipPath",re),ae&&E.setAttribute("component",ae)}function Xx(E,a){"update"in E?E.update(a):E.attr(a)}function Vk(E){return[[0,E],[E*Math.sqrt(3)/2,E/2],[E*Math.sqrt(3)/2,-E/2],[0,-E],[-E*Math.sqrt(3)/2,-E/2],[-E*Math.sqrt(3)/2,E/2]]}function Kk(E){fm(E,"__to_be_destroyed__",!0)}function Am(E){return pc(E,"__to_be_destroyed__",!1)}var Zk=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(de){try{oe(x.next(de))}catch(ge){ee(ge)}}function ae(de){try{oe(x.throw(de))}catch(ge){ee(ge)}}function oe(de){de.done?z(de.value):b(de.value).then(re,ae)}oe((x=x.apply(E,a||[])).next())})};class Zy extends Dd{constructor(a,y){super(a,Object.assign({},Zy.defaultOptions,y)),this.onCollapseExpand=x=>Zk(this,void 0,void 0,function*(){if(!this.validate(x))return;const{target:b}=x;if(!Nk(b))return;const z=b.id,{model:ee,graph:re}=this.context,ae=ee.getElementDataById(z);if(!ae)return!1;const{onCollapse:oe,onExpand:de,animation:ge,align:ye}=this.options;ud(ae)?(yield re.expandElement(z,{animation:ge,align:ye}),de==null||de(z)):(yield re.collapseElement(z,{animation:ge,align:ye}),oe==null||oe(z))}),this.bindEvents()}update(a){this.unbindEvents(),super.update(a),this.bindEvents()}bindEvents(){const{graph:a}=this.context,{trigger:y}=this.options;a.on(`node:${y}`,this.onCollapseExpand),a.on(`combo:${y}`,this.onCollapseExpand)}unbindEvents(){const{graph:a}=this.context,{trigger:y}=this.options;a.off(`node:${y}`,this.onCollapseExpand),a.off(`combo:${y}`,this.onCollapseExpand)}validate(a){if(this.destroyed)return!1;const{enable:y}=this.options;return Xi(y)?y(a):!!y}destroy(){this.unbindEvents(),super.destroy()}}Zy.defaultOptions={enable:!0,animation:!0,trigger:Ea.DBLCLICK,align:!0};var Qy={},Qk=function(E){return E=E||"g",Qy[E]?Qy[E]+=1:Qy[E]=1,E+Qy[E]},Yy=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(de){try{oe(x.next(de))}catch(ge){ee(ge)}}function ae(de){try{oe(x.throw(de))}catch(ge){ee(ge)}}function oe(de){de.done?z(de.value):b(de.value).then(re,ae)}oe((x=x.apply(E,a||[])).next())})};const Yk="g6-create-edge-assist-edge-id",Xy="g6-create-edge-assist-node-id";class Jy extends Dd{constructor(a,y){super(a,Object.assign({},Jy.defaultOptions,y)),this.drop=x=>Yy(this,void 0,void 0,function*(){const{targetType:b}=x;["combo","node"].includes(b)&&this.source?yield this.handleCreateEdge(x):yield this.cancelEdge()}),this.handleCreateEdge=x=>Yy(this,void 0,void 0,function*(){var b,z,ee;if(!this.validate(x))return;const{graph:re,canvas:ae,batch:oe,element:de}=this.context,{style:ge}=this.options;if(this.source){this.createEdge(x),yield this.cancelEdge();return}oe.startBatch(),ae.setCursor("crosshair"),this.source=this.getSelectedNodeIDs([x.target.id])[0];const ye=re.getElementData(this.source);re.addNodeData([{id:Xy,style:{visibility:"hidden",ports:[{key:"port-1",placement:[.5,.5]}],x:(b=ye.style)===null||b===void 0?void 0:b.x,y:(z=ye.style)===null||z===void 0?void 0:z.y}}]),re.addEdgeData([{id:Yk,source:this.source,target:Xy,style:Object.assign({pointerEvents:"none"},ge)}]),yield(ee=de.draw({animation:!1}))===null||ee===void 0?void 0:ee.finished}),this.updateAssistEdge=x=>Yy(this,void 0,void 0,function*(){var b;if(!this.source)return;const{model:z,element:ee}=this.context;z.translateNodeTo(Xy,[x.canvas.x,x.canvas.y]),yield(b=ee.draw({animation:!1,silence:!0}))===null||b===void 0?void 0:b.finished}),this.createEdge=x=>{var b,z;const{graph:ee}=this.context,{style:re,onFinish:ae,onCreate:oe}=this.options;if(((b=x.target)===null||b===void 0?void 0:b.id)===void 0||this.source===void 0)return;const ge=(z=this.getSelectedNodeIDs([x.target.id]))===null||z===void 0?void 0:z[0],ye=`${this.source}-${ge}-${Qk()}`,De=oe({id:ye,source:this.source,target:ge,style:re});De&&(ee.addEdgeData([De]),ae(De))},this.cancelEdge=()=>Yy(this,void 0,void 0,function*(){var x;if(!this.source)return;const{graph:b,element:z,batch:ee}=this.context;b.removeNodeData([Xy]),this.source=void 0,yield(x=z.draw({animation:!1}))===null||x===void 0?void 0:x.finished,ee.endBatch()}),this.bindEvents()}update(a){super.update(a),this.bindEvents()}bindEvents(){const{graph:a}=this.context,{trigger:y}=this.options;this.unbindEvents(),y==="click"?(a.on(Yd.CLICK,this.handleCreateEdge),a.on(Xg.CLICK,this.handleCreateEdge),a.on(fh.CLICK,this.cancelEdge),a.on(ty.CLICK,this.cancelEdge)):(a.on(Yd.DRAG_START,this.handleCreateEdge),a.on(Xg.DRAG_START,this.handleCreateEdge),a.on(Ea.POINTER_UP,this.drop)),a.on(Ea.POINTER_MOVE,this.updateAssistEdge)}getSelectedNodeIDs(a){return Array.from(new Set(this.context.graph.getElementDataByState("node",this.options.state).map(y=>y.id).concat(a)))}validate(a){if(this.destroyed)return!1;const{enable:y}=this.options;return Xi(y)?y(a):!!y}unbindEvents(){const{graph:a}=this.context;a.off(Yd.CLICK,this.handleCreateEdge),a.off(Xg.CLICK,this.handleCreateEdge),a.off(fh.CLICK,this.cancelEdge),a.off(ty.CLICK,this.cancelEdge),a.off(Yd.DRAG_START,this.handleCreateEdge),a.off(Xg.DRAG_START,this.handleCreateEdge),a.off(Ea.POINTER_UP,this.drop),a.off(Ea.POINTER_MOVE,this.updateAssistEdge)}destroy(){this.unbindEvents(),super.destroy()}}Jy.defaultOptions={animation:!0,enable:!0,style:{},trigger:"drag",onCreate:E=>E,onFinish:()=>{}};function Xk(E,a,y){var x;return function(){var b=this,z=arguments,ee=function(){x=null,y||E.apply(b,z)},re=y&&!x;clearTimeout(x),x=setTimeout(ee,a),re&&E.apply(b,z)}}var xm=Xk,aM=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(de){try{oe(x.next(de))}catch(ge){ee(ge)}}function ae(de){try{oe(x.throw(de))}catch(ge){ee(ge)}}function oe(de){de.done?z(de.value):b(de.value).then(re,ae)}oe((x=x.apply(E,a||[])).next())})};class qy extends Dd{constructor(a,y){super(a,Object.assign({},qy.defaultOptions,y)),this.isDragging=!1,this.onDragStart=x=>{this.validate(x)&&(this.isDragging=!0,this.context.canvas.setCursor("grabbing"))},this.onDrag=x=>{var b,z,ee,re;if(!this.isDragging||Ru.isPinching)return;const ae=(z=(b=x.movement)===null||b===void 0?void 0:b.x)!==null&&z!==void 0?z:x.dx,oe=(re=(ee=x.movement)===null||ee===void 0?void 0:ee.y)!==null&&re!==void 0?re:x.dy;ae|oe&&this.translate([ae,oe],!1)},this.onDragEnd=()=>{var x,b;this.isDragging=!1,this.context.canvas.setCursor(this.defaultCursor),(b=(x=this.options).onFinish)===null||b===void 0||b.call(x)},this.invokeOnFinish=xm(()=>{var x,b;(b=(x=this.options).onFinish)===null||b===void 0||b.call(x)},300),this.shortcut=new X0(a.graph),this.bindEvents(),this.defaultCursor=this.context.canvas.getConfig().cursor||"default"}update(a){this.unbindEvents(),super.update(a),this.bindEvents()}bindEvents(){const{trigger:a}=this.options;if(Tu(a)){const{up:y=[],down:x=[],left:b=[],right:z=[]}=a;this.shortcut.bind(y,ee=>this.onTranslate([0,1],ee)),this.shortcut.bind(x,ee=>this.onTranslate([0,-1],ee)),this.shortcut.bind(b,ee=>this.onTranslate([1,0],ee)),this.shortcut.bind(z,ee=>this.onTranslate([-1,0],ee))}else{const{graph:y}=this.context;y.on(Ea.DRAG_START,this.onDragStart),y.on(Ea.DRAG,this.onDrag),y.on(Ea.DRAG_END,this.onDragEnd)}}onTranslate(a,y){return aM(this,void 0,void 0,function*(){if(!this.validate(y))return;const{sensitivity:x}=this.options,b=x*-1;yield this.translate(Af(a,b),this.options.animation),this.invokeOnFinish()})}translate(a,y){return aM(this,void 0,void 0,function*(){a=this.clampByDirection(a),a=this.clampByRange(a),a=this.clampByRotation(a),yield this.context.graph.translateBy(a,y)})}clampByRotation([a,y]){const x=this.context.graph.getRotation();return $w([a,y],x)}clampByDirection([a,y]){const{direction:x}=this.options;return x==="x"?y=0:x==="y"&&(a=0),[a,y]}clampByRange([a,y]){const{viewport:x,canvas:b}=this.context,[z,ee]=b.getSize(),[re,ae,oe,de]=Md(this.options.range),ge=[ee*re,z*ae,ee*oe,z*de],ye=$h(lx(x.getCanvasCenter()),ge),De=Fl(x.getViewportCenter(),[a,y,0]);if(!yf(De,ye)){const{min:[ke,ze],max:[We,Ve]}=ye;(De[0]<ke&&a>0||De[0]>We&&a<0)&&(a=0),(De[1]<ze&&y>0||De[1]>Ve&&y<0)&&(y=0)}return[a,y]}validate(a){if(this.destroyed)return!1;const{enable:y}=this.options;return typeof y=="function"?y(a):!!y}unbindEvents(){this.shortcut.unbindAll();const{graph:a}=this.context;a.off(Ea.DRAG_START,this.onDragStart),a.off(Ea.DRAG,this.onDrag),a.off(Ea.DRAG_END,this.onDragEnd)}destroy(){this.shortcut.destroy(),this.unbindEvents(),this.context.canvas.setCursor(this.defaultCursor),super.destroy()}}qy.defaultOptions={enable:E=>"targetType"in E?E.targetType==="canvas":!0,sensitivity:10,direction:"both",range:1/0};var iM=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(de){try{oe(x.next(de))}catch(ge){ee(ge)}}function ae(de){try{oe(x.throw(de))}catch(ge){ee(ge)}}function oe(de){de.done?z(de.value):b(de.value).then(re,ae)}oe((x=x.apply(E,a||[])).next())})};class Sm extends Dd{constructor(a,y){super(a,Object.assign({},Sm.defaultOptions,y)),this.enable=!1,this.enableElements=["node","combo"],this.target=[],this.shadowOrigin=[0,0],this.hiddenEdges=[],this.isDragging=!1,this.onDrop=x=>iM(this,void 0,void 0,function*(){var b;if(this.options.dropEffect!=="link")return;const{model:z,element:ee}=this.context,re=x.target.id;this.target.forEach(ae=>{const oe=z.getParentData(ae,Ul);oe&&Br(oe)===re&&z.refreshComboData(re),z.setParent(ae,re,Ul)}),yield(b=ee==null?void 0:ee.draw({animation:!0}))===null||b===void 0?void 0:b.finished}),this.setCursor=x=>{if(this.isDragging)return;const{type:b}=x,{canvas:z}=this.context,{cursor:ee}=this.options;b===Ea.POINTER_ENTER?z.setCursor((ee==null?void 0:ee.grab)||"grab"):z.setCursor((ee==null?void 0:ee.default)||"default")},this.onDragStart=this.onDragStart.bind(this),this.onDrag=this.onDrag.bind(this),this.onDragEnd=this.onDragEnd.bind(this),this.onDrop=this.onDrop.bind(this),this.bindEvents()}update(a){this.unbindEvents(),super.update(a),this.bindEvents()}bindEvents(){const{graph:a,canvas:y}=this.context,x=y.getLayer().getContextService().$canvas;x&&(x.addEventListener("blur",this.onDragEnd),x.addEventListener("contextmenu",this.onDragEnd)),this.enableElements.forEach(b=>{a.on(`${b}:${Ea.DRAG_START}`,this.onDragStart),a.on(`${b}:${Ea.DRAG}`,this.onDrag),a.on(`${b}:${Ea.DRAG_END}`,this.onDragEnd),a.on(`${b}:${Ea.POINTER_ENTER}`,this.setCursor),a.on(`${b}:${Ea.POINTER_LEAVE}`,this.setCursor)}),["link"].includes(this.options.dropEffect)&&(a.on(Xg.DROP,this.onDrop),a.on(fh.DROP,this.onDrop))}getSelectedNodeIDs(a){return Array.from(new Set(this.context.graph.getElementDataByState("node",this.options.state).map(y=>y.id).concat(a)))}getDelta(a){const y=this.context.graph.getZoom();return xf([a.dx,a.dy],y)}onDragStart(a){var y;if(this.enable=this.validate(a),!this.enable)return;const{batch:x,canvas:b,graph:z}=this.context;b.setCursor(((y=this.options.cursor)===null||y===void 0?void 0:y.grabbing)||"grabbing"),this.isDragging=!0,x.startBatch();const ee=a.target.id;z.getElementState(ee).includes(this.options.state)?this.target=this.getSelectedNodeIDs([ee]):this.target=[ee],this.hideEdge(),this.context.graph.frontElement(this.target),this.options.shadow&&this.createShadow(this.target)}onDrag(a){if(!this.enable)return;const y=this.getDelta(a);this.options.shadow?this.moveShadow(y):this.moveElement(this.target,y)}onDragEnd(){var a,y,x;if(!this.enable)return;if(this.enable=!1,this.options.shadow){if(!this.shadow)return;this.shadow.style.visibility="hidden";const{x:ee=0,y:re=0}=this.shadow.attributes,[ae,oe]=Fl([+ee,+re],this.shadowOrigin);this.moveElement(this.target,[ae,oe])}this.showEdges(),(y=(a=this.options).onFinish)===null||y===void 0||y.call(a,this.target);const{batch:b,canvas:z}=this.context;b.endBatch(),z.setCursor(((x=this.options.cursor)===null||x===void 0?void 0:x.grab)||"grab"),this.isDragging=!1,this.target=[]}validate(a){if(this.destroyed||Am(a.target)||this.context.graph.isCollapsingExpanding)return!1;const{enable:y}=this.options;return Xi(y)?y(a):!!y}clampByRotation([a,y]){const x=this.context.graph.getRotation();return $w([a,y],x)}moveElement(a,y){return iM(this,void 0,void 0,function*(){const{graph:x,model:b}=this.context,{dropEffect:z}=this.options;z==="move"&&a.forEach(ee=>b.refreshComboData(ee)),x.translateElementBy(Object.fromEntries(a.map(ee=>[ee,this.clampByRotation(y)])),!1)})}moveShadow(a){if(!this.shadow)return;const{x:y=0,y:x=0}=this.shadow.attributes,[b,z]=a;this.shadow.attr({x:+y+b,y:+x+z})}createShadow(a){const y=Su(this.options,"shadow"),x=im(a.map(oe=>this.context.element.getElement(oe).getBounds())),[b,z]=x.min;this.shadowOrigin=[b,z];const[ee,re]=Jh(x),ae={width:ee,height:re,x:b,y:z};this.shadow?this.shadow.attr(Object.assign(Object.assign(Object.assign({},y),ae),{visibility:"visible"})):(this.shadow=new gc({style:Object.assign(Object.assign(Object.assign({$layer:"transient"},y),ae),{pointerEvents:"none"})}),this.context.canvas.appendChild(this.shadow))}showEdges(){this.options.shadow||this.hiddenEdges.length===0||(this.context.graph.showElement(this.hiddenEdges),this.hiddenEdges=[])}hideEdge(){const{hideEdge:a,shadow:y}=this.options;if(a==="none"||y)return;const{graph:x}=this.context;a==="all"?this.hiddenEdges=x.getEdgeData().map(Br):this.hiddenEdges=Array.from(new Set(this.target.map(b=>x.getRelatedEdgesData(b,a).map(Br)).flat())),x.hideElement(this.hiddenEdges)}unbindEvents(){const{graph:a,canvas:y}=this.context,x=y.getLayer().getContextService().$canvas;x&&(x.removeEventListener("blur",this.onDragEnd),x.removeEventListener("contextmenu",this.onDragEnd)),this.enableElements.forEach(b=>{a.off(`${b}:${Ea.DRAG_START}`,this.onDragStart),a.off(`${b}:${Ea.DRAG}`,this.onDrag),a.off(`${b}:${Ea.DRAG_END}`,this.onDragEnd),a.off(`${b}:${Ea.POINTER_ENTER}`,this.setCursor),a.off(`${b}:${Ea.POINTER_LEAVE}`,this.setCursor)}),a.off(`combo:${Ea.DROP}`,this.onDrop),a.off(`canvas:${Ea.DROP}`,this.onDrop)}destroy(){var a;this.unbindEvents(),(a=this.shadow)===null||a===void 0||a.destroy(),super.destroy()}}Sm.defaultOptions={animation:!0,enable:E=>["node","combo"].includes(E.targetType),dropEffect:"move",state:"selected",hideEdge:"none",shadow:!1,shadowZIndex:100,shadowFill:"#F3F9FF",shadowFillOpacity:.5,shadowStroke:"#1890FF",shadowStrokeOpacity:.9,shadowLineDash:[5,5],cursor:{default:"default",grab:"grab",grabbing:"grabbing"}};var Jk="*",qk=function(){function E(){this._events={}}return E.prototype.on=function(a,y,x){return this._events[a]||(this._events[a]=[]),this._events[a].push({callback:y,once:!!x}),this},E.prototype.once=function(a,y){return this.on(a,y,!0)},E.prototype.emit=function(a){for(var y=this,x=[],b=1;b<arguments.length;b++)x[b-1]=arguments[b];var z=this._events[a]||[],ee=this._events[Jk]||[],re=function(ae){for(var oe=ae.length,de=0;de<oe;de++)if(ae[de]){var ge=ae[de],ye=ge.callback,De=ge.once;De&&(ae.splice(de,1),ae.length===0&&delete y._events[a],oe--,de--),ye.apply(y,x)}};re(z),re(ee)},E.prototype.off=function(a,y){if(!a)this._events={};else if(!y)delete this._events[a];else{for(var x=this._events[a]||[],b=x.length,z=0;z<b;z++)x[z].callback===y&&(x.splice(z,1),b--,z--);x.length===0&&delete this._events[a]}return this},E.prototype.getEvents=function(){return this._events},E}(),$y=qk;function Jx(E,a,y,x){for(;E.length;){const b=E.shift();if(y(b))return!0;a.add(b.id),x(b.id).forEach(ee=>{a.has(ee.id)||(a.add(ee.id),E.push(ee))})}return!1}function e1(E,a,y,x){if(y(E))return!0;a.add(E.id);for(const z of x(E.id))if(!a.has(z.id)&&e1(z,a,y,x))return!0;return!1}const oM=()=>!0;class $k{constructor(a){su(this,"graph");su(this,"nodeFilter");su(this,"edgeFilter");su(this,"cacheEnabled");su(this,"inEdgesMap",new Map);su(this,"outEdgesMap",new Map);su(this,"bothEdgesMap",new Map);su(this,"allNodesMap",new Map);su(this,"allEdgesMap",new Map);su(this,"clearCache",()=>{this.inEdgesMap.clear(),this.outEdgesMap.clear(),this.bothEdgesMap.clear(),this.allNodesMap.clear(),this.allEdgesMap.clear()});su(this,"refreshCache",()=>{this.clearCache(),this.updateCache(this.graph.getAllNodes().map(a=>a.id))});su(this,"updateCache",a=>{const y=new Set;a.forEach(x=>{const b=this.bothEdgesMap.get(x);if(b&&b.forEach(z=>y.add(z.id)),!this.hasNode(x))this.inEdgesMap.delete(x),this.outEdgesMap.delete(x),this.bothEdgesMap.delete(x),this.allNodesMap.delete(x);else{const z=this.graph.getRelatedEdges(x,"in").filter(this.edgeFilter),ee=this.graph.getRelatedEdges(x,"out").filter(this.edgeFilter),re=Array.from(new Set([...z,...ee]));re.forEach(ae=>y.add(ae.id)),this.inEdgesMap.set(x,z),this.outEdgesMap.set(x,ee),this.bothEdgesMap.set(x,re),this.allNodesMap.set(x,this.graph.getNode(x))}}),y.forEach(x=>{this.hasEdge(x)?this.allEdgesMap.set(x,this.graph.getEdge(x)):this.allEdgesMap.delete(x)})});su(this,"handleGraphChanged",a=>{const y=new Set;a.changes.forEach(x=>{switch(x.type){case"NodeAdded":y.add(x.value.id);break;case"NodeDataUpdated":y.add(x.id);break;case"EdgeAdded":y.add(x.value.source),y.add(x.value.target);break;case"EdgeUpdated":(x.propertyName==="source"||x.propertyName==="target")&&(y.add(x.oldValue),y.add(x.newValue));break;case"EdgeDataUpdated":if(a.graph.hasEdge(x.id)){const b=a.graph.getEdge(x.id);y.add(b.source),y.add(b.target)}break;case"EdgeRemoved":y.add(x.value.source),y.add(x.value.target);break;case"NodeRemoved":y.add(x.value.id);break;default:break}}),this.updateCache(y)});this.graph=a.graph;const y=a.nodeFilter||oM,x=a.edgeFilter||oM;this.nodeFilter=y,this.edgeFilter=b=>{const{source:z,target:ee}=this.graph.getEdgeDetail(b.id);return!y(z)||!y(ee)?!1:x(b,z,ee)},a.cache==="auto"?(this.cacheEnabled=!0,this.startAutoCache()):a.cache==="manual"?this.cacheEnabled=!0:this.cacheEnabled=!1}startAutoCache(){this.refreshCache(),this.graph.on("changed",this.handleGraphChanged)}stopAutoCache(){this.graph.off("changed",this.handleGraphChanged)}checkNodeExistence(a){this.getNode(a)}hasNode(a){if(!this.graph.hasNode(a))return!1;const y=this.graph.getNode(a);return this.nodeFilter(y)}areNeighbors(a,y){return this.checkNodeExistence(a),this.getNeighbors(y).some(x=>x.id===a)}getNode(a){const y=this.graph.getNode(a);if(!this.nodeFilter(y))throw new Error("Node not found for id: "+a);return y}getRelatedEdges(a,y){return this.checkNodeExistence(a),this.cacheEnabled?y==="in"?this.inEdgesMap.get(a):y==="out"?this.outEdgesMap.get(a):this.bothEdgesMap.get(a):this.graph.getRelatedEdges(a,y).filter(this.edgeFilter)}getDegree(a,y){return this.getRelatedEdges(a,y).length}getSuccessors(a){const x=this.getRelatedEdges(a,"out").map(b=>this.getNode(b.target));return Array.from(new Set(x))}getPredecessors(a){const x=this.getRelatedEdges(a,"in").map(b=>this.getNode(b.source));return Array.from(new Set(x))}getNeighbors(a){const y=this.getPredecessors(a),x=this.getSuccessors(a);return Array.from(new Set([...y,...x]))}hasEdge(a){if(!this.graph.hasEdge(a))return!1;const y=this.graph.getEdge(a);return this.edgeFilter(y)}getEdge(a){const y=this.graph.getEdge(a);if(!this.edgeFilter(y))throw new Error("Edge not found for id: "+a);return y}getEdgeDetail(a){const y=this.getEdge(a);return{edge:y,source:this.getNode(y.source),target:this.getNode(y.target)}}hasTreeStructure(a){return this.graph.hasTreeStructure(a)}getRoots(a){return this.graph.getRoots(a).filter(this.nodeFilter)}getChildren(a,y){return this.checkNodeExistence(a),this.graph.getChildren(a,y).filter(this.nodeFilter)}getParent(a,y){this.checkNodeExistence(a);const x=this.graph.getParent(a,y);return!x||!this.nodeFilter(x)?null:x}getAllNodes(){return this.cacheEnabled?Array.from(this.allNodesMap.values()):this.graph.getAllNodes().filter(this.nodeFilter)}getAllEdges(){return this.cacheEnabled?Array.from(this.allEdgesMap.values()):this.graph.getAllEdges().filter(this.edgeFilter)}bfs(a,y,x="out"){const b={in:this.getPredecessors.bind(this),out:this.getSuccessors.bind(this),both:this.getNeighbors.bind(this)}[x];Jx([this.getNode(a)],new Set,y,b)}dfs(a,y,x="out"){const b={in:this.getPredecessors.bind(this),out:this.getSuccessors.bind(this),both:this.getNeighbors.bind(this)}[x];e1(this.getNode(a),new Set,y,b)}}class ku extends $y{constructor(y){super();su(this,"nodeMap",new Map);su(this,"edgeMap",new Map);su(this,"inEdgesMap",new Map);su(this,"outEdgesMap",new Map);su(this,"bothEdgesMap",new Map);su(this,"treeIndices",new Map);su(this,"changes",[]);su(this,"batchCount",0);su(this,"onChanged",()=>{});su(this,"batch",y=>{this.batchCount+=1,y(),this.batchCount-=1,this.batchCount||this.commit()});y&&(y.nodes&&this.addNodes(y.nodes),y.edges&&this.addEdges(y.edges),y.tree&&this.addTree(y.tree),y.onChanged&&(this.onChanged=y.onChanged))}commit(){const y=this.changes;this.changes=[];const x={graph:this,changes:y};this.emit("changed",x),this.onChanged(x)}reduceChanges(y){let x=[];return y.forEach(b=>{switch(b.type){case"NodeRemoved":{let z=!1;x=x.filter(ee=>{if(ee.type==="NodeAdded"){const re=ee.value.id===b.value.id;return re&&(z=!0),!re}else{if(ee.type==="NodeDataUpdated")return ee.id!==b.value.id;if(ee.type==="TreeStructureChanged")return ee.nodeId!==b.value.id}return!0}),z||x.push(b);break}case"EdgeRemoved":{let z=!1;x=x.filter(ee=>{if(ee.type==="EdgeAdded"){const re=ee.value.id===b.value.id;return re&&(z=!0),!re}else if(ee.type==="EdgeDataUpdated"||ee.type==="EdgeUpdated")return ee.id!==b.value.id;return!0}),z||x.push(b);break}case"NodeDataUpdated":case"EdgeDataUpdated":case"EdgeUpdated":{const z=x.findIndex(re=>re.type===b.type&&re.id===b.id&&(b.propertyName===void 0||re.propertyName===b.propertyName)),ee=x[z];ee?b.propertyName!==void 0?ee.newValue=b.newValue:(x.splice(z,1),x.push(b)):x.push(b);break}case"TreeStructureDetached":{x=x.filter(z=>z.type==="TreeStructureAttached"||z.type==="TreeStructureChanged"?z.treeKey!==b.treeKey:!0),x.push(b);break}case"TreeStructureChanged":{const z=x.find(ee=>ee.type==="TreeStructureChanged"&&ee.treeKey===b.treeKey&&ee.nodeId===b.nodeId);z?z.newParentId=b.newParentId:x.push(b);break}default:x.push(b);break}}),x}checkNodeExistence(y){this.getNode(y)}hasNode(y){return this.nodeMap.has(y)}areNeighbors(y,x){return this.getNeighbors(x).some(b=>b.id===y)}getNode(y){const x=this.nodeMap.get(y);if(!x)throw new Error("Node not found for id: "+y);return x}getRelatedEdges(y,x){if(this.checkNodeExistence(y),x==="in"){const b=this.inEdgesMap.get(y);return Array.from(b)}else if(x==="out"){const b=this.outEdgesMap.get(y);return Array.from(b)}else{const b=this.bothEdgesMap.get(y);return Array.from(b)}}getDegree(y,x){return this.getRelatedEdges(y,x).length}getSuccessors(y){const b=this.getRelatedEdges(y,"out").map(z=>this.getNode(z.target));return Array.from(new Set(b))}getPredecessors(y){const b=this.getRelatedEdges(y,"in").map(z=>this.getNode(z.source));return Array.from(new Set(b))}getNeighbors(y){const x=this.getPredecessors(y),b=this.getSuccessors(y);return Array.from(new Set([...x,...b]))}doAddNode(y){if(this.hasNode(y.id))throw new Error("Node already exists: "+y.id);this.nodeMap.set(y.id,y),this.inEdgesMap.set(y.id,new Set),this.outEdgesMap.set(y.id,new Set),this.bothEdgesMap.set(y.id,new Set),this.treeIndices.forEach(x=>{x.childrenMap.set(y.id,new Set)}),this.changes.push({type:"NodeAdded",value:y})}addNodes(y){this.batch(()=>{for(const x of y)this.doAddNode(x)})}addNode(y){this.addNodes([y])}doRemoveNode(y){const x=this.getNode(y),b=this.bothEdgesMap.get(y);b==null||b.forEach(z=>this.doRemoveEdge(z.id)),this.nodeMap.delete(y),this.treeIndices.forEach(z=>{var re,ae;(re=z.childrenMap.get(y))==null||re.forEach(oe=>{z.parentMap.delete(oe.id)});const ee=z.parentMap.get(y);ee&&((ae=z.childrenMap.get(ee.id))==null||ae.delete(x)),z.parentMap.delete(y),z.childrenMap.delete(y)}),this.bothEdgesMap.delete(y),this.inEdgesMap.delete(y),this.outEdgesMap.delete(y),this.changes.push({type:"NodeRemoved",value:x})}removeNodes(y){this.batch(()=>{y.forEach(x=>this.doRemoveNode(x))})}removeNode(y){this.removeNodes([y])}updateNodeDataProperty(y,x,b){const z=this.getNode(y);this.batch(()=>{const ee=z.data[x],re=b;z.data[x]=re,this.changes.push({type:"NodeDataUpdated",id:y,propertyName:x,oldValue:ee,newValue:re})})}mergeNodeData(y,x){this.batch(()=>{Object.entries(x).forEach(([b,z])=>{this.updateNodeDataProperty(y,b,z)})})}updateNodeData(...y){const x=y[0],b=this.getNode(x);if(typeof y[1]=="string"){this.updateNodeDataProperty(x,y[1],y[2]);return}let z;if(typeof y[1]=="function"){const ee=y[1];z=ee(b.data)}else typeof y[1]=="object"&&(z=y[1]);this.batch(()=>{const ee=b.data,re=z;b.data=z,this.changes.push({type:"NodeDataUpdated",id:x,oldValue:ee,newValue:re})})}checkEdgeExistence(y){if(!this.hasEdge(y))throw new Error("Edge not found for id: "+y)}hasEdge(y){return this.edgeMap.has(y)}getEdge(y){return this.checkEdgeExistence(y),this.edgeMap.get(y)}getEdgeDetail(y){const x=this.getEdge(y);return{edge:x,source:this.getNode(x.source),target:this.getNode(x.target)}}doAddEdge(y){if(this.hasEdge(y.id))throw new Error("Edge already exists: "+y.id);this.checkNodeExistence(y.source),this.checkNodeExistence(y.target),this.edgeMap.set(y.id,y);const x=this.inEdgesMap.get(y.target),b=this.outEdgesMap.get(y.source),z=this.bothEdgesMap.get(y.source),ee=this.bothEdgesMap.get(y.target);x.add(y),b.add(y),z.add(y),ee.add(y),this.changes.push({type:"EdgeAdded",value:y})}addEdges(y){this.batch(()=>{for(const x of y)this.doAddEdge(x)})}addEdge(y){this.addEdges([y])}doRemoveEdge(y){const x=this.getEdge(y),b=this.outEdgesMap.get(x.source),z=this.inEdgesMap.get(x.target),ee=this.bothEdgesMap.get(x.source),re=this.bothEdgesMap.get(x.target);b.delete(x),z.delete(x),ee.delete(x),re.delete(x),this.edgeMap.delete(y),this.changes.push({type:"EdgeRemoved",value:x})}removeEdges(y){this.batch(()=>{y.forEach(x=>this.doRemoveEdge(x))})}removeEdge(y){this.removeEdges([y])}updateEdgeSource(y,x){const b=this.getEdge(y);this.checkNodeExistence(x);const z=b.source,ee=x;this.outEdgesMap.get(z).delete(b),this.bothEdgesMap.get(z).delete(b),this.outEdgesMap.get(ee).add(b),this.bothEdgesMap.get(ee).add(b),b.source=x,this.batch(()=>{this.changes.push({type:"EdgeUpdated",id:y,propertyName:"source",oldValue:z,newValue:ee})})}updateEdgeTarget(y,x){const b=this.getEdge(y);this.checkNodeExistence(x);const z=b.target,ee=x;this.inEdgesMap.get(z).delete(b),this.bothEdgesMap.get(z).delete(b),this.inEdgesMap.get(ee).add(b),this.bothEdgesMap.get(ee).add(b),b.target=x,this.batch(()=>{this.changes.push({type:"EdgeUpdated",id:y,propertyName:"target",oldValue:z,newValue:ee})})}updateEdgeDataProperty(y,x,b){const z=this.getEdge(y);this.batch(()=>{const ee=z.data[x],re=b;z.data[x]=re,this.changes.push({type:"EdgeDataUpdated",id:y,propertyName:x,oldValue:ee,newValue:re})})}updateEdgeData(...y){const x=y[0],b=this.getEdge(x);if(typeof y[1]=="string"){this.updateEdgeDataProperty(x,y[1],y[2]);return}let z;if(typeof y[1]=="function"){const ee=y[1];z=ee(b.data)}else typeof y[1]=="object"&&(z=y[1]);this.batch(()=>{const ee=b.data,re=z;b.data=z,this.changes.push({type:"EdgeDataUpdated",id:x,oldValue:ee,newValue:re})})}mergeEdgeData(y,x){this.batch(()=>{Object.entries(x).forEach(([b,z])=>{this.updateEdgeDataProperty(y,b,z)})})}checkTreeExistence(y){if(!this.hasTreeStructure(y))throw new Error("Tree structure not found for treeKey: "+y)}hasTreeStructure(y){return this.treeIndices.has(y)}attachTreeStructure(y){this.treeIndices.has(y)||(this.treeIndices.set(y,{parentMap:new Map,childrenMap:new Map}),this.batch(()=>{this.changes.push({type:"TreeStructureAttached",treeKey:y})}))}detachTreeStructure(y){this.checkTreeExistence(y),this.treeIndices.delete(y),this.batch(()=>{this.changes.push({type:"TreeStructureDetached",treeKey:y})})}addTree(y,x){this.batch(()=>{this.attachTreeStructure(x);const b=[],z=Array.isArray(y)?y:[y];for(;z.length;){const ee=z.shift();b.push(ee),ee.children&&z.push(...ee.children)}this.addNodes(b),b.forEach(ee=>{var re;(re=ee.children)==null||re.forEach(ae=>{this.setParent(ae.id,ee.id,x)})})})}getRoots(y){return this.checkTreeExistence(y),this.getAllNodes().filter(x=>!this.getParent(x.id,y))}getChildren(y,x){this.checkNodeExistence(y),this.checkTreeExistence(x);const z=this.treeIndices.get(x).childrenMap.get(y);return Array.from(z||[])}getParent(y,x){return this.checkNodeExistence(y),this.checkTreeExistence(x),this.treeIndices.get(x).parentMap.get(y)||null}getAncestors(y,x){const b=[];let z=this.getNode(y),ee;for(;ee=this.getParent(z.id,x);)b.push(ee),z=ee;return b}setParent(y,x,b){var de,ge;this.checkTreeExistence(b);const z=this.treeIndices.get(b);if(!z)return;const ee=this.getNode(y),re=z.parentMap.get(y);if((re==null?void 0:re.id)===x)return;if(x==null){re&&((de=z.childrenMap.get(re.id))==null||de.delete(ee)),z.parentMap.delete(y);return}const ae=this.getNode(x);z.parentMap.set(y,ae),re&&((ge=z.childrenMap.get(re.id))==null||ge.delete(ee));let oe=z.childrenMap.get(ae.id);oe||(oe=new Set,z.childrenMap.set(ae.id,oe)),oe.add(ee),this.batch(()=>{this.changes.push({type:"TreeStructureChanged",treeKey:b,nodeId:y,oldParentId:re==null?void 0:re.id,newParentId:ae.id})})}dfsTree(y,x,b){const z=ee=>this.getChildren(ee,b);return e1(this.getNode(y),new Set,x,z)}bfsTree(y,x,b){const z=ee=>this.getChildren(ee,b);return Jx([this.getNode(y)],new Set,x,z)}getAllNodes(){return Array.from(this.nodeMap.values())}getAllEdges(){return Array.from(this.edgeMap.values())}bfs(y,x,b="out"){const z={in:this.getPredecessors.bind(this),out:this.getSuccessors.bind(this),both:this.getNeighbors.bind(this)}[b];return Jx([this.getNode(y)],new Set,x,z)}dfs(y,x,b="out"){const z={in:this.getPredecessors.bind(this),out:this.getSuccessors.bind(this),both:this.getNeighbors.bind(this)}[b];return e1(this.getNode(y),new Set,x,z)}clone(){const y=this.getAllNodes().map(z=>hC(Sv({},z),{data:Sv({},z.data)})),x=this.getAllEdges().map(z=>hC(Sv({},z),{data:Sv({},z.data)})),b=new ku({nodes:y,edges:x});return this.treeIndices.forEach(({parentMap:z,childrenMap:ee},re)=>{const ae=new Map;z.forEach((de,ge)=>{ae.set(ge,b.getNode(de.id))});const oe=new Map;ee.forEach((de,ge)=>{oe.set(ge,new Set(Array.from(de).map(ye=>b.getNode(ye.id))))}),b.treeIndices.set(re,{parentMap:ae,childrenMap:oe})}),b}toJSON(){return JSON.stringify({nodes:this.getAllNodes(),edges:this.getAllEdges()})}createView(y){return new $k(Sv({graph:this},y))}}class t1{constructor(a,y){this.context=a,this.options=y||{}}}var e_=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(de){try{oe(x.next(de))}catch(ge){ee(ge)}}function ae(de){try{oe(x.throw(de))}catch(ge){ee(ge)}}function oe(de){de.done?z(de.value):b(de.value).then(re,ae)}oe((x=x.apply(E,a||[])).next())})},t_=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b<x.length;b++)a.indexOf(x[b])<0&&Object.prototype.propertyIsEnumerable.call(E,x[b])&&(y[x[b]]=E[x[b]]);return y};function qte(E){const{type:a}=E;return!!(["comboCombined","comboForce"].includes(a)||a==="antv-dagre"&&E.sortByCombo)}function n_(E){const{type:a}=E;return["compact-box","mindmap","dendrogram","indented"].includes(a)}function $te(E){return isNumber(E.x)&&isNumber(E.y)}function r_(E){return!Array.isArray(E)&&(E==null?void 0:E.preLayout)}function n1(E){const{nodes:a,edges:y}=E,x={nodes:[],edges:[],combos:[]};return a.forEach(b=>{const z=b.data._isCombo?x.combos:x.nodes,{x:ee,y:re,z:ae=0}=b.data;z==null||z.push({id:b.id,style:{x:ee,y:re,z:ae}})}),y.forEach(b=>{const{id:z,source:ee,target:re,data:{points:ae=[],controlPoints:oe=ae.slice(1,ae.length-1)}}=b;x.edges.push({id:z,source:ee,target:re,style:Object.assign({},oe!=null&&oe.length?{controlPoints:oe.map(mc)}:{})})}),x}function a_(E,a){class y extends t1{constructor(b,z){if(super(b,z),this.instance=new E({}),this.id=this.instance.id,"stop"in this.instance&&"tick"in this.instance){const ee=this.instance;this.stop=ee.stop.bind(ee),this.tick=re=>{const ae=ee.tick(re);return n1(ae)}}}execute(b,z){return e_(this,void 0,void 0,function*(){return n1(yield this.instance.execute(this.graphData2LayoutModel(b),this.transformOptions(vc({},this.options,z))))})}transformOptions(b){if(!("onTick"in b))return b;const z=b.onTick;return b.onTick=ee=>z(n1(ee)),b}graphData2LayoutModel(b){const{nodes:z=[],edges:ee=[],combos:re=[]}=b,ae=z.map(De=>{const ke=Br(De),{data:ze,style:We,combo:Ve}=De,Ze=t_(De,["data","style","combo"]),Ye={id:ke,data:Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},ze),{data:ze}),Ve?{parentId:Ve}:{}),{style:We}),Ze)};return We!=null&&We.x&&Object.assign(Ye.data,{x:We.x}),We!=null&&We.y&&Object.assign(Ye.data,{y:We.y}),We!=null&&We.z&&Object.assign(Ye.data,{z:We.z}),Ye}),oe=new Map(ae.map(De=>[De.id,De])),de=ee.filter(De=>{const{source:ke,target:ze}=De;return oe.has(ke)&&oe.has(ze)}).map(De=>{const{source:ke,target:ze,data:We,style:Ve}=De;return{id:Br(De),source:ke,target:ze,data:Object.assign({},We),style:Object.assign({},Ve)}}),ge=re.map(De=>({id:Br(De),data:Object.assign({_isCombo:!0},De.data),style:Object.assign({},De.style)})),ye=new ku({nodes:[...ae,...ge],edges:de});return a.model.model.hasTreeStructure(Ul)&&(ye.attachTreeStructure(Ul),ae.forEach(De=>{const ke=a.model.model.getParent(De.id,Ul);ke&&ye.hasNode(ke.id)&&ye.setParent(De.id,ke.id,Ul)})),ye}}return y}function qx(E,a,...y){if(a in E)return E[a](...y);if("instance"in E){const x=E.instance;if(a in x)return x[a](...y)}return null}function sM(E,a){if(a in E)return E[a];if("instance"in E){const y=E.instance;if(a in y)return y[a]}return null}var i_=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(de){try{oe(x.next(de))}catch(ge){ee(ge)}}function ae(de){try{oe(x.throw(de))}catch(ge){ee(ge)}}function oe(de){de.done?z(de.value):b(de.value).then(re,ae)}oe((x=x.apply(E,a||[])).next())})};class o_ extends Sm{get forceLayoutInstance(){return this.context.layout.getLayoutInstance().find(a=>["d3-force","d3-force-3d"].includes(a==null?void 0:a.id))}validate(a){return this.context.layout?this.forceLayoutInstance?super.validate(a):(ld.warn("DragElementForce only works with d3-force or d3-force-3d layout"),!1):!1}moveElement(a,y){return i_(this,void 0,void 0,function*(){const x=this.forceLayoutInstance;this.context.graph.getNodeData(a).forEach((b,z)=>{const{x:ee=0,y:re=0}=b.style||{};x&&qx(x,"setFixedPosition",a[z],[...us([+ee,+re],this.clampByRotation(y))])})})}onDragStart(a){if(this.enable=this.validate(a),!this.enable)return;this.target=this.getSelectedNodeIDs([a.target.id]),this.hideEdge(),this.context.graph.frontElement(this.target);const y=this.forceLayoutInstance;y&&sM(y,"simulation").alphaTarget(.3).restart(),this.context.graph.getNodeData(this.target).forEach(x=>{const{x:b=0,y:z=0}=x.style||{};y&&qx(y,"setFixedPosition",Br(x),[+b,+z])})}onDrag(a){if(!this.enable)return;const y=this.getDelta(a);this.moveElement(this.target,y)}onDragEnd(){const a=this.forceLayoutInstance;a&&sM(a,"simulation").alphaTarget(0),!this.options.fixed&&this.context.graph.getNodeData(this.target).forEach(y=>{a&&qx(a,"setFixedPosition",Br(y),[null,null,null])})}}var lM=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(de){try{oe(x.next(de))}catch(ge){ee(ge)}}function ae(de){try{oe(x.throw(de))}catch(ge){ee(ge)}}function oe(de){de.done?z(de.value):b(de.value).then(re,ae)}oe((x=x.apply(E,a||[])).next())})};class r1 extends Dd{constructor(a,y){super(a,Object.assign({},r1.defaultOptions,y)),this.isZoomEvent=x=>!!(x.data&&"scale"in x.data),this.relatedEdgeToUpdate=new Set,this.zoom=this.context.graph.getZoom(),this.fixElementSize=x=>lM(this,void 0,void 0,function*(){if(!this.validate(x))return;const{graph:b}=this.context,{state:z,nodeFilter:ee,edgeFilter:re,comboFilter:ae}=this.options,oe=(z?b.getElementDataByState("node",z):b.getNodeData()).filter(ee),de=(z?b.getElementDataByState("edge",z):b.getEdgeData()).filter(re),ge=(z?b.getElementDataByState("combo",z):b.getComboData()).filter(ae),ye=this.isZoomEvent(x)?this.zoom=Math.max(.01,Math.min(x.data.scale,10)):this.zoom,De=[...oe,...ge];De.length>0&&De.forEach(ke=>this.fixNodeLike(ke,ye)),this.updateRelatedEdges(),de.length>0&&de.forEach(ke=>this.fixEdge(ke,ye))}),this.cachedStyles=new Map,this.getOriginalFieldValue=(x,b,z)=>{var ee;const re=this.cachedStyles.get(x)||[],ae=((ee=re.find(oe=>oe.shape===b))===null||ee===void 0?void 0:ee.style)||{};return z in ae||(ae[z]=b.attributes[z],this.cachedStyles.set(x,[...re.filter(oe=>oe.shape!==b),{shape:b,style:ae}])),ae[z]},this.scaleEntireElement=(x,b,z)=>{b.setLocalScale(1/z);const ee=this.cachedStyles.get(x)||[];ee.push({shape:b}),this.cachedStyles.set(x,ee)},this.scaleSpecificShapes=(x,b,z)=>{const ee=X7(x);(Array.isArray(z)?z:[z]).forEach(ae=>{const{shape:oe,fields:de}=ae,ge=typeof oe=="function"?oe(ee):x.getShape(oe);if(ge){if(!de){this.scaleEntireElement(x.id,ge,b);return}de.forEach(ye=>{const De=this.getOriginalFieldValue(x.id,ge,ye);ji(De)&&(ge.style[ye]=De/b)})}})},this.skipIfExceedViewport=x=>{const{viewport:b}=this.context;return!(b!=null&&b.isInViewport(x.getRenderBounds(),!1,30))},this.fixNodeLike=(x,b)=>{const z=Br(x),{element:ee,model:re}=this.context,ae=ee.getElement(z);if(!ae||this.skipIfExceedViewport(ae))return;re.getRelatedEdgesData(z).forEach(ge=>this.relatedEdgeToUpdate.add(Br(ge)));const de=this.options[ae.type];if(!de){this.scaleEntireElement(z,ae,b);return}this.scaleSpecificShapes(ae,b,de)},this.fixEdge=(x,b)=>{const z=Br(x),ee=this.context.element.getElement(z);if(!ee||this.skipIfExceedViewport(ee))return;const re=this.options.edge;if(!re){ee.style.transformOrigin="center",this.scaleEntireElement(z,ee,b);return}this.scaleSpecificShapes(ee,b,re)},this.updateRelatedEdges=()=>{const{element:x}=this.context;this.relatedEdgeToUpdate.size>0&&this.relatedEdgeToUpdate.forEach(b=>{const z=x.getElement(b);z==null||z.update({})}),this.relatedEdgeToUpdate.clear()},this.resetTransform=x=>lM(this,void 0,void 0,function*(){var b;!((b=x.data)===null||b===void 0)&&b.firstRender||(this.options.reset?this.restoreCachedStyles():this.fixElementSize({data:{scale:this.zoom}}))}),this.bindEvents()}restoreCachedStyles(){if(this.cachedStyles.size>0){this.cachedStyles.forEach(b=>{b.forEach(({shape:z,style:ee})=>{if(Yf(ee))z.setLocalScale(1);else{if(this.options.state)return;Object.entries(ee).forEach(([re,ae])=>z.style[re]=ae)}})});const{graph:a,element:y}=this.context,x=Object.keys(Object.fromEntries(this.cachedStyles)).filter(b=>b&&a.getElementType(b)==="node");if(x.length>0){const b=new Set;x.forEach(z=>{a.getRelatedEdgesData(z).forEach(ee=>b.add(Br(ee)))}),b.forEach(z=>{const ee=y==null?void 0:y.getElement(z);ee==null||ee.update({})})}}}bindEvents(){const{graph:a}=this.context;a.on(hi.AFTER_DRAW,this.resetTransform),a.on(hi.AFTER_TRANSFORM,this.fixElementSize)}unbindEvents(){const{graph:a}=this.context;a.off(hi.AFTER_DRAW,this.resetTransform),a.off(hi.AFTER_TRANSFORM,this.fixElementSize)}validate(a){if(this.destroyed)return!1;const{enable:y}=this.options;return Xi(y)?y(a):!!y}destroy(){this.unbindEvents(),super.destroy()}}r1.defaultOptions={enable:E=>E.data.scale<1,nodeFilter:()=>!0,edgeFilter:()=>!0,comboFilter:()=>!0,edge:[{shape:"key",fields:["lineWidth"]},{shape:"halo",fields:["lineWidth"]},{shape:"label"}],reset:!1};var s_=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(de){try{oe(x.next(de))}catch(ge){ee(ge)}}function ae(de){try{oe(x.throw(de))}catch(ge){ee(ge)}}function oe(de){de.done?z(de.value):b(de.value).then(re,ae)}oe((x=x.apply(E,a||[])).next())})};class a1 extends Dd{constructor(a,y){super(a,Object.assign({},a1.defaultOptions,y)),this.focus=x=>s_(this,void 0,void 0,function*(){if(!this.validate(x))return;const{graph:b}=this.context;yield b.focusElement(x.target.id,this.options.animation)}),this.bindEvents()}bindEvents(){const{graph:a}=this.context;this.unbindEvents(),t0.forEach(y=>{a.on(`${y}:${Ea.CLICK}`,this.focus)})}validate(a){if(this.destroyed)return!1;const{enable:y}=this.options;return Xi(y)?y(a):!!y}unbindEvents(){const{graph:a}=this.context;t0.forEach(y=>{a.off(`${y}:${Ea.CLICK}`,this.focus)})}destroy(){this.unbindEvents(),super.destroy()}}a1.defaultOptions={animation:{easing:"ease-in",duration:500},enable:!0};class i1 extends Dd{constructor(a,y){super(a,Object.assign({},i1.defaultOptions,y)),this.isFrozen=!1,this.toggleFrozen=x=>{this.isFrozen=x.type==="dragstart"},this.hoverElement=x=>{if(!this.validate(x))return;const b=x.type===Ea.POINTER_ENTER;this.updateElementsState(x,b);const{onHover:z,onHoverEnd:ee}=this.options;b?z==null||z(x):ee==null||ee(x)},this.updateElementsState=(x,b)=>{if(!this.options.state&&!this.options.inactiveState)return;const{graph:z}=this.context,{state:ee,animation:re,inactiveState:ae}=this.options,oe=this.getActiveIds(x),de={};if(ee&&Object.assign(de,this.getElementsState(oe,ee,b)),ae){const ge=Zw(z.getData(),!0).filter(ye=>!oe.includes(ye));Object.assign(de,this.getElementsState(ge,ae,b))}z.setElementState(de,re)},this.getElementsState=(x,b,z)=>{const{graph:ee}=this.context,re={};return x.forEach(ae=>{const oe=ee.getElementState(ae);z?re[ae]=oe.includes(b)?oe:[...oe,b]:re[ae]=oe.filter(de=>de!==b)}),re},this.bindEvents()}bindEvents(){const{graph:a}=this.context;this.unbindEvents(),t0.forEach(x=>{a.on(`${x}:${Ea.POINTER_ENTER}`,this.hoverElement),a.on(`${x}:${Ea.POINTER_LEAVE}`,this.hoverElement)});const y=this.context.canvas.document;y.addEventListener(`${Ea.DRAG_START}`,this.toggleFrozen),y.addEventListener(`${Ea.DRAG_END}`,this.toggleFrozen)}getActiveIds(a){const{graph:y}=this.context,{degree:x,direction:b}=this.options,z=a.target.id;return x?c5(y,a.targetType,z,typeof x=="function"?x(a):x,b):[z]}validate(a){if(this.destroyed||this.isFrozen||Am(a.target)||this.context.graph.isCollapsingExpanding)return!1;const{enable:y}=this.options;return Xi(y)?y(a):!!y}unbindEvents(){const{graph:a}=this.context;t0.forEach(x=>{a.off(`${x}:${Ea.POINTER_ENTER}`,this.hoverElement),a.off(`${x}:${Ea.POINTER_LEAVE}`,this.hoverElement)});const y=this.context.canvas.document;y.removeEventListener(`${Ea.DRAG_START}`,this.toggleFrozen),y.removeEventListener(`${Ea.DRAG_END}`,this.toggleFrozen)}destroy(){this.unbindEvents(),super.destroy()}}i1.defaultOptions={animation:!1,enable:!0,degree:0,direction:"both",state:"active",inactiveState:void 0};class l_ extends dm{onPointerDown(a){if(!super.validate(a)||!super.isKeydown()||this.points)return;const{canvas:y,graph:x}=this.context;this.pathShape=new Cd({id:"g6-lasso-select",style:this.options.style}),y.appendChild(this.pathShape),this.points=[xy(a,x)]}onPointerMove(a){var y;if(!this.points)return;const{immediately:x,mode:b}=this.options;this.points.push(xy(a,this.context.graph)),(y=this.pathShape)===null||y===void 0||y.setAttribute("d",V7(this.points)),x&&b==="default"&&this.points.length>2&&super.updateElementsStates(this.points)}onPointerUp(){if(this.points){if(this.points.length<2){this.clearLasso();return}super.updateElementsStates(this.points),this.clearLasso()}}clearLasso(){var a;(a=this.pathShape)===null||a===void 0||a.remove(),this.pathShape=void 0,this.points=void 0}}class o1 extends Dd{constructor(a,y){super(a,Object.assign({},o1.defaultOptions,y)),this.hiddenShapes=[],this.isVisible=!0,this.setElementsVisibility=(x,b,z)=>{x.filter(Boolean).forEach(ee=>{b==="hidden"&&!ee.isVisible()?this.hiddenShapes.push(ee):b==="visible"&&this.hiddenShapes.includes(ee)?this.hiddenShapes.splice(this.hiddenShapes.indexOf(ee),1):$g(ee,b,z)})},this.filterShapes=(x,b)=>{if(Xi(b))return ee=>!b(x,ee);const z=b==null?void 0:b[x];return ee=>ee.className?!(z!=null&&z.includes(ee.className)):!0},this.hideShapes=x=>{if(!this.validate(x)||!this.isVisible)return;const{element:b}=this.context,{shapes:z={}}=this.options;this.setElementsVisibility(b.getNodes(),"hidden",this.filterShapes("node",z)),this.setElementsVisibility(b.getEdges(),"hidden",this.filterShapes("edge",z)),this.setElementsVisibility(b.getCombos(),"hidden",this.filterShapes("combo",z)),this.isVisible=!1},this.showShapes=xm(x=>{if(!this.validate(x)||this.isVisible)return;const{element:b}=this.context;this.setElementsVisibility(b.getNodes(),"visible"),this.setElementsVisibility(b.getEdges(),"visible"),this.setElementsVisibility(b.getCombos(),"visible"),this.isVisible=!0},this.options.debounce),this.bindEvents()}bindEvents(){const{graph:a}=this.context;a.on(hi.BEFORE_TRANSFORM,this.hideShapes),a.on(hi.AFTER_TRANSFORM,this.showShapes)}unbindEvents(){const{graph:a}=this.context;a.off(hi.BEFORE_TRANSFORM,this.hideShapes),a.off(hi.AFTER_TRANSFORM,this.showShapes)}validate(a){if(this.destroyed)return!1;const{enable:y}=this.options;return Xi(y)?y(a):!!y}update(a){this.unbindEvents(),super.update(a),this.bindEvents()}destroy(){this.unbindEvents(),super.destroy()}}o1.defaultOptions={enable:!0,debounce:200,shapes:E=>E==="node"};var uM=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(de){try{oe(x.next(de))}catch(ge){ee(ge)}}function ae(de){try{oe(x.throw(de))}catch(ge){ee(ge)}}function oe(de){de.done?z(de.value):b(de.value).then(re,ae)}oe((x=x.apply(E,a||[])).next())})};class s1 extends Dd{constructor(a,y){super(a,Object.assign({},s1.defaultOptions,y)),this.onWheel=x=>uM(this,void 0,void 0,function*(){this.options.preventDefault&&x.preventDefault();const b=x.deltaX,z=x.deltaY;yield this.scroll([-b,-z],x)}),this.shortcut=new X0(a.graph),this.bindEvents()}update(a){super.update(a),this.bindEvents()}bindEvents(){var a,y;const{trigger:x}=this.options;if(this.shortcut.unbindAll(),Tu(x)){(a=this.graphDom)===null||a===void 0||a.removeEventListener(Ea.WHEEL,this.onWheel);const{up:b=[],down:z=[],left:ee=[],right:re=[]}=x;this.shortcut.bind(b,ae=>this.scroll([0,-10],ae)),this.shortcut.bind(z,ae=>this.scroll([0,10],ae)),this.shortcut.bind(ee,ae=>this.scroll([-10,0],ae)),this.shortcut.bind(re,ae=>this.scroll([10,0],ae))}else(y=this.graphDom)===null||y===void 0||y.addEventListener(Ea.WHEEL,this.onWheel,{passive:!1})}get graphDom(){return this.context.graph.getCanvas().getContextService().getDomElement()}formatDisplacement(a){const{sensitivity:y}=this.options;return a=Af(a,y),a=this.clampByDirection(a),a=this.clampByRange(a),a}clampByDirection([a,y]){const{direction:x}=this.options;return x==="x"?y=0:x==="y"&&(a=0),[a,y]}clampByRange([a,y]){const{viewport:x,canvas:b}=this.context,[z,ee]=b.getSize(),[re,ae,oe,de]=Md(this.options.range),ge=[ee*re,z*ae,ee*oe,z*de],ye=$h(lx(x.getCanvasCenter()),ge),De=Fl(x.getViewportCenter(),[a,y,0]);if(!yf(De,ye)){const{min:[ke,ze],max:[We,Ve]}=ye;(De[0]<ke&&a>0||De[0]>We&&a<0)&&(a=0),(De[1]<ze&&y>0||De[1]>Ve&&y<0)&&(y=0)}return[a,y]}scroll(a,y){return uM(this,void 0,void 0,function*(){if(!this.validate(y))return;const{onFinish:x}=this.options,b=this.context.graph,z=this.formatDisplacement(a);yield b.translateBy(z,!1),x==null||x()})}validate(a){if(this.destroyed)return!1;const{enable:y}=this.options;return Xi(y)?y(a):!!y}destroy(){var a;this.shortcut.destroy(),(a=this.graphDom)===null||a===void 0||a.removeEventListener(Ea.WHEEL,this.onWheel),super.destroy()}}s1.defaultOptions={enable:!0,sensitivity:1,preventDefault:!0,range:1/0};var cM=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(de){try{oe(x.next(de))}catch(ge){ee(ge)}}function ae(de){try{oe(x.throw(de))}catch(ge){ee(ge)}}function oe(de){de.done?z(de.value):b(de.value).then(re,ae)}oe((x=x.apply(E,a||[])).next())})};class l1 extends Dd{constructor(a,y){super(a,Object.assign({},l1.defaultOptions,y)),this.zoom=(x,b,z)=>cM(this,void 0,void 0,function*(){if(!this.validate(b))return;const{graph:ee}=this.context;let re=this.options.origin;!re&&"viewport"in b&&(re=mc(b.viewport));const{sensitivity:ae,onFinish:oe}=this.options,de=1+gu(x,-50,50)*ae/100,ge=ee.getZoom();yield ee.zoomTo(ge*de,z,re),oe==null||oe()}),this.onReset=()=>cM(this,void 0,void 0,function*(){yield this.context.graph.zoomTo(1,this.options.animation)}),this.preventDefault=x=>{this.options.preventDefault&&x.preventDefault()},this.shortcut=new X0(a.graph),this.bindEvents()}update(a){super.update(a),this.bindEvents()}bindEvents(){const{trigger:a}=this.options;if(this.shortcut.unbindAll(),Array.isArray(a))if(a.includes(Ea.PINCH))this.shortcut.bind([Ea.PINCH],y=>{this.zoom(y.scale,y,!1)});else{const y=this.context.canvas.getContainer();y==null||y.addEventListener(Ea.WHEEL,this.preventDefault),this.shortcut.bind([...a,Ea.WHEEL],x=>{const{deltaX:b,deltaY:z}=x;this.zoom(-(z!=null?z:b),x,!1)})}if(typeof a=="object"){const{zoomIn:y=[],zoomOut:x=[],reset:b=[]}=a;this.shortcut.bind(y,z=>this.zoom(10,z,this.options.animation)),this.shortcut.bind(x,z=>this.zoom(-10,z,this.options.animation)),this.shortcut.bind(b,this.onReset)}}validate(a){if(this.destroyed)return!1;const{enable:y}=this.options;return Xi(y)?y(a):!!y}destroy(){var a;this.shortcut.destroy(),(a=this.context.canvas.getContainer())===null||a===void 0||a.removeEventListener(Ea.WHEEL,this.preventDefault),super.destroy()}}l1.defaultOptions={animation:{duration:200},enable:!0,sensitivity:1,trigger:[],preventDefault:!0};var u1=Te(13722);const u_=(E,a)=>{if(E!=="next"&&E!=="prev")return a},dM=E=>{E.prev.next=E.next,E.next.prev=E.prev,delete E.next,delete E.prev};class c_{constructor(){const a={};a.prev=a,a.next=a.prev,this.shortcut=a}dequeue(){const a=this.shortcut,y=a.prev;if(y&&y!==a)return dM(y),y}enqueue(a){const y=this.shortcut;a.prev&&a.next&&dM(a),a.next=y.next,y.next.prev=a,y.next=a,a.prev=y}toString(){const a=[],y=this.shortcut;let x=y.prev;for(;x!==y;)a.push(JSON.stringify(x,u_)),x=x==null?void 0:x.prev;return`[${a.join(", ")}]`}}class d_ extends c_{}const f_=()=>1,h_=(E,a)=>{var y;if(E.getAllNodes().length<=1)return[];const x=v_(E,a||f_);return(y=g_(x.graph,x.buckets,x.zeroIdx).map(z=>E.getRelatedEdges(z.v,"out").filter(({target:ee})=>ee===z.w)))===null||y===void 0?void 0:y.flat()},g_=(E,a,y)=>{let x=[];const b=a[a.length-1],z=a[0];let ee;for(;E.getAllNodes().length;){for(;ee=z.dequeue();)$x(E,a,y,ee);for(;ee=b.dequeue();)$x(E,a,y,ee);if(E.getAllNodes().length){for(let re=a.length-2;re>0;--re)if(ee=a[re].dequeue(),ee){x=x.concat($x(E,a,y,ee,!0));break}}}return x},$x=(E,a,y,x,b)=>{var z,ee;const re=[];return E.hasNode(x.v)&&((z=E.getRelatedEdges(x.v,"in"))===null||z===void 0||z.forEach(ae=>{const oe=ae.data.weight,de=E.getNode(ae.source);b&&re.push({v:ae.source,w:ae.target,in:0,out:0}),de.data.out===void 0&&(de.data.out=0),de.data.out-=oe,eS(a,y,Object.assign({v:de.id},de.data))}),(ee=E.getRelatedEdges(x.v,"out"))===null||ee===void 0||ee.forEach(ae=>{const oe=ae.data.weight,de=ae.target,ge=E.getNode(de);ge.data.in===void 0&&(ge.data.in=0),ge.data.in-=oe,eS(a,y,Object.assign({v:ge.id},ge.data))}),E.removeNode(x.v)),b?re:void 0},v_=(E,a)=>{const y=new ku;let x=0,b=0;E.getAllNodes().forEach(ae=>{y.addNode({id:ae.id,data:{v:ae.id,in:0,out:0}})}),E.getAllEdges().forEach(ae=>{const oe=y.getRelatedEdges(ae.source,"out").find(ge=>ge.target===ae.target),de=(a==null?void 0:a(ae))||1;oe?y.updateEdgeData(oe==null?void 0:oe.id,Object.assign(Object.assign({},oe.data),{weight:oe.data.weight+de})):y.addEdge({id:ae.id,source:ae.source,target:ae.target,data:{weight:de}}),b=Math.max(b,y.getNode(ae.source).data.out+=de),x=Math.max(x,y.getNode(ae.target).data.in+=de)});const z=[],ee=b+x+3;for(let ae=0;ae<ee;ae++)z.push(new d_);const re=x+1;return y.getAllNodes().forEach(ae=>{eS(z,re,Object.assign({v:ae.id},y.getNode(ae.id).data))}),{buckets:z,zeroIdx:re,graph:y}},eS=(E,a,y)=>{y.out?y.in?E[y.out-y.in+a].enqueue(y):E[E.length-1].enqueue(y):E[0].enqueue(y)},m_=(E,a)=>{const x=a==="greedy"?h_(E,(b=>z=>z.data.weight||1)(E)):p_(E);x==null||x.forEach(b=>{const z=b.data;E.removeEdge(b.id),z.forwardName=b.data.name,z.reversed=!0,E.addEdge({id:b.id,source:b.target,target:b.source,data:Object.assign({},z)})})},p_=E=>{const a=[],y={},x={},b=z=>{x[z]||(x[z]=!0,y[z]=!0,E.getRelatedEdges(z,"out").forEach(ee=>{y[ee.target]?a.push(ee):b(ee.target)}),delete y[z])};return E.getAllNodes().forEach(z=>b(z.id)),a},y_=E=>{E.getAllEdges().forEach(a=>{const y=a.data;if(y.reversed){E.removeEdge(a.id);const x=y.forwardName;delete y.reversed,delete y.forwardName,E.addEdge({id:a.id,source:a.target,target:a.source,data:Object.assign(Object.assign({},y),{forwardName:x})})}})},E_=(E,a)=>Number(E)-Number(a),ev=(E,a,y,x)=>{let b;do b=`${x}${Math.random()}`;while(E.hasNode(b));return y.dummy=a,E.addNode({id:b,data:y}),b},A_=E=>{const a=new ku;return E.getAllNodes().forEach(y=>{a.addNode(Object.assign({},y))}),E.getAllEdges().forEach(y=>{const x=a.getRelatedEdges(y.source,"out").find(b=>b.target===y.target);x?a.updateEdgeData(x==null?void 0:x.id,Object.assign(Object.assign({},x.data),{weight:x.data.weight+y.data.weight||0,minlen:Math.max(x.data.minlen,y.data.minlen||1)})):a.addEdge({id:y.id,source:y.source,target:y.target,data:{weight:y.data.weight||0,minlen:y.data.minlen||1}})}),a},fM=E=>{const a=new ku;return E.getAllNodes().forEach(y=>{E.getChildren(y.id).length||a.addNode(Object.assign({},y))}),E.getAllEdges().forEach(y=>{a.addEdge(y)}),a},hM=(E,a)=>E==null?void 0:E.reduce((y,x,b)=>(y[x]=a[b],y),{}),ene=E=>{const a={};return E.getAllNodes().forEach(y=>{const x={};E.getRelatedEdges(y.id,"out").forEach(b=>{x[b.target]=(x[b.target]||0)+(b.data.weight||0)}),a[y.id]=x}),a},tne=E=>{const a=E.getAllNodes(),y=a.map(x=>{const b={};return E.getRelatedEdges(x.id,"in").forEach(z=>{b[z.source]=(b[z.source]||0)+z.data.weight}),b});return hM(a.map(x=>x.id),y)},gM=(E,a)=>{const y=Number(E.x),x=Number(E.y),b=Number(a.x)-y,z=Number(a.y)-x;let ee=Number(E.width)/2,re=Number(E.height)/2;if(!b&&!z)return{x:0,y:0};let ae,oe;return Math.abs(z)*ee>Math.abs(b)*re?(z<0&&(re=-re),ae=re*b/z,oe=re):(b<0&&(ee=-ee),ae=ee,oe=ee*z/b),{x:y+ae,y:x+oe}},bm=E=>{const a=[],y=mM(E)+1;for(let x=0;x<y;x++)a.push([]);E.getAllNodes().forEach(x=>{const b=x.data.rank;b!==void 0&&a[b]&&a[b].push(x.id)});for(let x=0;x<y;x++)a[x]=a[x].sort((b,z)=>E_(E.getNode(b).data.order,E.getNode(z).data.order));return a},x_=E=>{const a=E.getAllNodes().filter(x=>x.data.rank!==void 0).map(x=>x.data.rank),y=Math.min(...a);E.getAllNodes().forEach(x=>{x.data.hasOwnProperty("rank")&&y!==1/0&&(x.data.rank-=y)})},S_=(E,a=0)=>{const y=E.getAllNodes(),x=y.filter(re=>re.data.rank!==void 0).map(re=>re.data.rank),b=Math.min(...x),z=[];y.forEach(re=>{const ae=(re.data.rank||0)-b;z[ae]||(z[ae]=[]),z[ae].push(re.id)});let ee=0;for(let re=0;re<z.length;re++){const ae=z[re];ae===void 0?re%a!==0&&(ee-=1):ee&&(ae==null||ae.forEach(oe=>{const de=E.getNode(oe);de&&(de.data.rank=de.data.rank||0,de.data.rank+=ee)}))}},vM=(E,a,y,x)=>{const b={width:0,height:0};return ji(y)&&ji(x)&&(b.rank=y,b.order=x),ev(E,"border",b,a)},mM=E=>{let a;return E.getAllNodes().forEach(y=>{const x=y.data.rank;x!==void 0&&(a===void 0||x>a)&&(a=x)}),a||(a=0),a},b_=(E,a)=>{const y={lhs:[],rhs:[]};return E==null||E.forEach(x=>{a(x)?y.lhs.push(x):y.rhs.push(x)}),y},tS=(E,a)=>E.reduce((y,x)=>{const b=a(y),z=a(x);return b>z?x:y}),pM=(E,a,y,x,b,z)=>{x.includes(a.id)||(x.push(a.id),y||z.push(a.id),b(a.id).forEach(ee=>pM(E,ee,y,x,b,z)),y&&z.push(a.id))},yM=(E,a,y,x)=>{const b=Array.isArray(a)?a:[a],z=ae=>x?E.getSuccessors(ae):E.getNeighbors(ae),ee=[],re=[];return b.forEach(ae=>{if(E.hasNode(ae.id))pM(E,ae,y==="post",re,z,ee);else throw new Error(`Graph does not have node: ${ae}`)}),ee},C_=E=>{const a=y=>{const x=E.getChildren(y),b=E.getNode(y);if(x!=null&&x.length&&x.forEach(z=>a(z.id)),b.data.hasOwnProperty("minRank")){b.data.borderLeft=[],b.data.borderRight=[];for(let z=b.data.minRank,ee=b.data.maxRank+1;z<ee;z+=1)EM(E,"borderLeft","_bl",y,b,z),EM(E,"borderRight","_br",y,b,z)}};E.getRoots().forEach(y=>a(y.id))},EM=(E,a,y,x,b,z)=>{const ee={rank:z,borderType:a,width:0,height:0},re=b.data[a][z-1],ae=ev(E,"border",ee,y);b.data[a][z]=ae,E.setParent(ae,x),re&&E.addEdge({id:`e${Math.random()}`,source:re,target:ae,data:{weight:1}})},P_=(E,a)=>{const y=a.toLowerCase();(y==="lr"||y==="rl")&&AM(E)},w_=(E,a)=>{const y=a.toLowerCase();(y==="bt"||y==="rl")&&M_(E),(y==="lr"||y==="rl")&&(D_(E),AM(E))},AM=E=>{E.getAllNodes().forEach(a=>{xM(a)}),E.getAllEdges().forEach(a=>{xM(a)})},xM=E=>{const a=E.data.width;E.data.width=E.data.height,E.data.height=a},M_=E=>{E.getAllNodes().forEach(a=>{nS(a.data)}),E.getAllEdges().forEach(a=>{var y;(y=a.data.points)===null||y===void 0||y.forEach(x=>nS(x)),a.data.hasOwnProperty("y")&&nS(a.data)})},nS=E=>{E!=null&&E.y&&(E.y=-E.y)},D_=E=>{E.getAllNodes().forEach(a=>{rS(a.data)}),E.getAllEdges().forEach(a=>{var y;(y=a.data.points)===null||y===void 0||y.forEach(x=>rS(x)),a.data.hasOwnProperty("x")&&rS(a.data)})},rS=E=>{const a=E.x;E.x=E.y,E.y=a},I_=E=>{const a=ev(E,"root",{},"_root"),y=O_(E);let x=Math.max(...Object.values(y));Math.abs(x)===1/0&&(x=1);const b=x-1,z=2*b+1;E.getAllEdges().forEach(re=>{re.data.minlen*=z});const ee=T_(E)+1;return E.getRoots().forEach(re=>{SM(E,a,z,ee,b,y,re.id)}),{nestingRoot:a,nodeRankFactor:z}},SM=(E,a,y,x,b,z,ee)=>{const re=E.getChildren(ee);if(!(re!=null&&re.length)){ee!==a&&E.addEdge({id:`e${Math.random()}`,source:a,target:ee,data:{weight:0,minlen:y}});return}const ae=vM(E,"_bt"),oe=vM(E,"_bb"),de=E.getNode(ee);E.setParent(ae,ee),de.data.borderTop=ae,E.setParent(oe,ee),de.data.borderBottom=oe,re==null||re.forEach(ge=>{SM(E,a,y,x,b,z,ge.id);const ye=ge.data.borderTop?ge.data.borderTop:ge.id,De=ge.data.borderBottom?ge.data.borderBottom:ge.id,ke=ge.data.borderTop?x:2*x,ze=ye!==De?1:b-z[ee]+1;E.addEdge({id:`e${Math.random()}`,source:ae,target:ye,data:{minlen:ze,weight:ke,nestingEdge:!0}}),E.addEdge({id:`e${Math.random()}`,source:De,target:oe,data:{minlen:ze,weight:ke,nestingEdge:!0}})}),E.getParent(ee)||E.addEdge({id:`e${Math.random()}`,source:a,target:ae,data:{weight:0,minlen:b+z[ee]}})},O_=E=>{const a={},y=(x,b)=>{const z=E.getChildren(x);z==null||z.forEach(ee=>y(ee.id,b+1)),a[x]=b};return E.getRoots().forEach(x=>y(x.id,1)),a},T_=E=>{let a=0;return E.getAllEdges().forEach(y=>{a+=y.data.weight}),a},L_=(E,a)=>{a&&E.removeNode(a),E.getAllEdges().forEach(y=>{y.data.nestingEdge&&E.removeEdge(y.id)})},B_="edge",bM="edge-label",N_=(E,a)=>{E.getAllEdges().forEach(y=>R_(E,y,a))},R_=(E,a,y)=>{let x=a.source,b=E.getNode(x).data.rank;const z=a.target,ee=E.getNode(z).data.rank,re=a.data.labelRank;if(ee===b+1)return;E.removeEdge(a.id);let ae,oe,de;for(de=0,++b;b<ee;++de,++b)a.data.points=[],oe={originalEdge:a,width:0,height:0,rank:b},ae=ev(E,B_,oe,"_d"),b===re&&(oe.width=a.data.width,oe.height=a.data.height,oe.dummy=bM,oe.labelpos=a.data.labelpos),E.addEdge({id:`e${Math.random()}`,source:x,target:ae,data:{weight:a.data.weight}}),de===0&&y.push(ae),x=ae;E.addEdge({id:`e${Math.random()}`,source:x,target:z,data:{weight:a.data.weight}})},F_=(E,a)=>{a.forEach(y=>{let x=E.getNode(y);const{data:b}=x,z=b.originalEdge;let ee;z&&E.addEdge(z);let re=y;for(;x.data.dummy;)ee=E.getSuccessors(re)[0],E.removeNode(re),z.data.points.push({x:x.data.x,y:x.data.y}),x.data.dummy===bM&&(z.data.x=x.data.x,z.data.y=x.data.y,z.data.width=x.data.width,z.data.height=x.data.height),re=ee.id,x=E.getNode(re)})},k_=(E,a,y)=>{const x={};let b;y==null||y.forEach(z=>{let ee=E.getParent(z),re,ae;for(;ee;){if(re=E.getParent(ee.id),re?(ae=x[re.id],x[re.id]=ee.id):(ae=b,b=ee.id),ae&&ae!==ee.id){a.hasNode(ae)||a.addNode({id:ae,data:{}}),a.hasNode(ee.id)||a.addNode({id:ee.id,data:{}}),a.hasEdge(`e${ae}-${ee.id}`)||a.addEdge({id:`e${ae}-${ee.id}`,source:ae,target:ee.id,data:{}});return}ee=re}})},__=(E,a,y)=>{const x=z_(E),b=new ku({tree:[{id:x,children:[],data:{}}]});return E.getAllNodes().forEach(z=>{const ee=E.getParent(z.id);(z.data.rank===a||z.data.minRank<=a&&a<=z.data.maxRank)&&(b.hasNode(z.id)||b.addNode(Object.assign({},z)),ee!=null&&ee.id&&!b.hasNode(ee==null?void 0:ee.id)&&b.addNode(Object.assign({},ee)),b.setParent(z.id,(ee==null?void 0:ee.id)||x),E.getRelatedEdges(z.id,y).forEach(re=>{const ae=re.source===z.id?re.target:re.source;b.hasNode(ae)||b.addNode(Object.assign({},E.getNode(ae)));const oe=b.getRelatedEdges(ae,"out").find(({target:ge})=>ge===z.id),de=oe!==void 0?oe.data.weight:0;oe?b.updateEdgeData(oe.id,Object.assign(Object.assign({},oe.data),{weight:re.data.weight+de})):b.addEdge({id:re.id,source:ae,target:z.id,data:{weight:re.data.weight+de}})}),z.data.hasOwnProperty("minRank")&&b.updateNodeData(z.id,Object.assign(Object.assign({},z.data),{borderLeft:z.data.borderLeft[a],borderRight:z.data.borderRight[a]})))}),b},z_=E=>{let a;for(;E.hasNode(a=`_root${Math.random()}`););return a},j_=(E,a,y)=>{const x=hM(y,y.map((de,ge)=>ge)),z=a.map(de=>{const ge=E.getRelatedEdges(de,"out").map(ye=>({pos:x[ye.target]||0,weight:ye.data.weight}));return ge==null?void 0:ge.sort((ye,De)=>ye.pos-De.pos)}).flat().filter(de=>de!==void 0);let ee=1;for(;ee<y.length;)ee<<=1;const re=2*ee-1;ee-=1;const ae=Array(re).fill(0,0,re);let oe=0;return z==null||z.forEach(de=>{if(de){let ge=de.pos+ee;ae[ge]+=de.weight;let ye=0;for(;ge>0;)ge%2&&(ye+=ae[ge+1]),ge=ge-1>>1,ae[ge]+=de.weight;oe+=de.weight*ye}}),oe},CM=(E,a)=>{let y=0;for(let x=1;x<(a==null?void 0:a.length);x+=1)y+=j_(E,a[x-1],a[x]);return y},PM=E=>{const a={},y=E.getAllNodes(),x=y.map(oe=>{var de;return(de=oe.data.rank)!==null&&de!==void 0?de:-1/0}),b=Math.max(...x),z=[];for(let oe=0;oe<b+1;oe++)z.push([]);const ee=y.sort((oe,de)=>E.getNode(oe.id).data.rank-E.getNode(de.id).data.rank),ae=ee.filter(oe=>E.getNode(oe.id).data.fixorder!==void 0).sort((oe,de)=>E.getNode(oe.id).data.fixorder-E.getNode(de.id).data.fixorder);return ae==null||ae.forEach(oe=>{isNaN(E.getNode(oe.id).data.rank)||z[E.getNode(oe.id).data.rank].push(oe.id),a[oe.id]=!0}),ee==null||ee.forEach(oe=>E.dfsTree(oe.id,de=>{if(a.hasOwnProperty(de.id))return!0;a[de.id]=!0,isNaN(de.data.rank)||z[de.data.rank].push(de.id)})),z},U_=(E,a)=>a.map(y=>{const x=E.getRelatedEdges(y,"in");if(!(x!=null&&x.length))return{v:y};const b={sum:0,weight:0};return x==null||x.forEach(z=>{const ee=E.getNode(z.source);b.sum+=z.data.weight*ee.data.order,b.weight+=z.data.weight}),{v:y,barycenter:b.sum/b.weight,weight:b.weight}}),W_=(E,a)=>{var y,x,b;const z={};E==null||E.forEach((re,ae)=>{z[re.v]={i:ae,indegree:0,in:[],out:[],vs:[re.v]};const oe=z[re.v];re.barycenter!==void 0&&(oe.barycenter=re.barycenter,oe.weight=re.weight)}),(y=a.getAllEdges())===null||y===void 0||y.forEach(re=>{const ae=z[re.source],oe=z[re.target];ae!==void 0&&oe!==void 0&&(oe.indegree++,ae.out.push(z[re.target]))});const ee=(b=(x=Object.values(z)).filter)===null||b===void 0?void 0:b.call(x,re=>!re.indegree);return G_(ee)},G_=E=>{var a,y;const x=[],b=ae=>oe=>{oe.merged||(oe.barycenter===void 0||ae.barycenter===void 0||oe.barycenter>=ae.barycenter)&&H_(ae,oe)},z=ae=>oe=>{oe.in.push(ae),--oe.indegree===0&&E.push(oe)};for(;E!=null&&E.length;){const ae=E.pop();x.push(ae),(a=ae.in.reverse())===null||a===void 0||a.forEach(oe=>b(ae)(oe)),(y=ae.out)===null||y===void 0||y.forEach(oe=>z(ae)(oe))}const ee=x.filter(ae=>!ae.merged),re=["vs","i","barycenter","weight"];return ee.map(ae=>{const oe={};return re==null||re.forEach(de=>{ae[de]!==void 0&&(oe[de]=ae[de])}),oe})},H_=(E,a)=>{var y;let x=0,b=0;E.weight&&(x+=E.barycenter*E.weight,b+=E.weight),a.weight&&(x+=a.barycenter*a.weight,b+=a.weight),E.vs=(y=a.vs)===null||y===void 0?void 0:y.concat(E.vs),E.barycenter=x/b,E.weight=b,E.i=Math.min(a.i,E.i),a.merged=!0};var V_=W_;const K_=(E,a,y,x)=>{const b=b_(E,ye=>{const De=ye.hasOwnProperty("fixorder")&&!isNaN(ye.fixorder);return x?!De&&ye.hasOwnProperty("barycenter"):De||ye.hasOwnProperty("barycenter")}),z=b.lhs,ee=b.rhs.sort((ye,De)=>-ye.i- -De.i),re=[];let ae=0,oe=0,de=0;z==null||z.sort(Z_(!!a,!!y)),de=wM(re,ee,de),z==null||z.forEach(ye=>{var De;de+=(De=ye.vs)===null||De===void 0?void 0:De.length,re.push(ye.vs),ae+=ye.barycenter*ye.weight,oe+=ye.weight,de=wM(re,ee,de)});const ge={vs:re.flat()};return oe&&(ge.barycenter=ae/oe,ge.weight=oe),ge},wM=(E,a,y)=>{let x=y,b;for(;a.length&&(b=a[a.length-1]).i<=x;)a.pop(),E==null||E.push(b.vs),x++;return x},Z_=(E,a)=>(y,x)=>{if(y.fixorder!==void 0&&x.fixorder!==void 0)return y.fixorder-x.fixorder;if(y.barycenter<x.barycenter)return-1;if(y.barycenter>x.barycenter)return 1;if(a&&y.order!==void 0&&x.order!==void 0){if(y.order<x.order)return-1;if(y.order>x.order)return 1}return E?x.i-y.i:y.i-x.i},MM=(E,a,y,x,b,z)=>{var ee,re,ae,oe;let de=E.getChildren(a).map(Ze=>Ze.id);const ge=E.getNode(a),ye=ge?ge.data.borderLeft:void 0,De=ge?ge.data.borderRight:void 0,ke={};ye&&(de=de==null?void 0:de.filter(Ze=>Ze!==ye&&Ze!==De));const ze=U_(E,de||[]);ze==null||ze.forEach(Ze=>{var Ye;if(!((Ye=E.getChildren(Ze.v))===null||Ye===void 0)&&Ye.length){const et=MM(E,Ze.v,y,x,z);ke[Ze.v]=et,et.hasOwnProperty("barycenter")&&Y_(Ze,et)}});const We=V_(ze,y);Q_(We,ke),(ee=We.filter(Ze=>Ze.vs.length>0))===null||ee===void 0||ee.forEach(Ze=>{const Ye=E.getNode(Ze.vs[0]);Ye&&(Ze.fixorder=Ye.data.fixorder,Ze.order=Ye.data.order)});const Ve=K_(We,x,b,z);if(ye&&(Ve.vs=[ye,Ve.vs,De].flat(),!((re=E.getPredecessors(ye))===null||re===void 0)&&re.length)){const Ze=E.getNode(((ae=E.getPredecessors(ye))===null||ae===void 0?void 0:ae[0].id)||""),Ye=E.getNode(((oe=E.getPredecessors(De))===null||oe===void 0?void 0:oe[0].id)||"");Ve.hasOwnProperty("barycenter")||(Ve.barycenter=0,Ve.weight=0),Ve.barycenter=(Ve.barycenter*Ve.weight+Ze.data.order+Ye.data.order)/(Ve.weight+2),Ve.weight+=2}return Ve},Q_=(E,a)=>{E==null||E.forEach(y=>{var x;const b=(x=y.vs)===null||x===void 0?void 0:x.map(z=>a[z]?a[z].vs:z);y.vs=b.flat()})},Y_=(E,a)=>{E.barycenter!==void 0?(E.barycenter=(E.barycenter*E.weight+a.barycenter*a.weight)/(E.weight+a.weight),E.weight+=a.weight):(E.barycenter=a.barycenter,E.weight=a.weight)},X_=(E,a)=>{const y=mM(E),x=[],b=[];for(let de=1;de<y+1;de++)x.push(de);for(let de=y-1;de>-1;de--)b.push(de);const z=DM(E,x,"in"),ee=DM(E,b,"out");let re=PM(E);aS(E,re);let ae=Number.POSITIVE_INFINITY,oe;for(let de=0,ge=0;ge<4;++de,++ge){IM(de%2?z:ee,de%4>=2,!1,a),re=bm(E);const ye=CM(E,re);ye<ae&&(ge=0,oe=Z0(re),ae=ye)}re=PM(E),aS(E,re);for(let de=0,ge=0;ge<4;++de,++ge){IM(de%2?z:ee,de%4>=2,!0,a),re=bm(E);const ye=CM(E,re);ye<ae&&(ge=0,oe=Z0(re),ae=ye)}aS(E,oe)},DM=(E,a,y)=>a.map(x=>__(E,x,y)),IM=(E,a,y,x)=>{const b=new ku;E==null||E.forEach(z=>{var ee;const re=z.getRoots()[0].id,ae=MM(z,re,b,a,y,x);for(let oe=0;oe<((ee=ae.vs)===null||ee===void 0?void 0:ee.length);oe++){const de=z.getNode(ae.vs[oe]);de&&(de.data.order=oe)}k_(z,b,ae.vs)})},aS=(E,a)=>{a==null||a.forEach(y=>{y==null||y.forEach((x,b)=>{E.getNode(x).data.order=b})})},J_=(E,a)=>{const x=E.getAllNodes().filter(ee=>{var re;return!(!((re=E.getChildren(ee.id))===null||re===void 0)&&re.length)}).map(ee=>ee.data.rank),b=Math.max(...x),z=[];for(let ee=0;ee<b+1;ee++)z[ee]=[];a==null||a.forEach(ee=>{const re=E.getNode(ee);!re||re.data.dummy||isNaN(re.data.rank)||(re.data.fixorder=z[re.data.rank].length,z[re.data.rank].push(ee))})},q_=E=>{const a={};let y=0;const x=b=>{const z=y;E.getChildren(b).forEach(ee=>x(ee.id)),a[b]={low:z,lim:y++}};return E.getRoots().forEach(b=>x(b.id)),a},$_=(E,a,y,x)=>{var b,z;const ee=[],re=[],ae=Math.min(a[y].low,a[x].low),oe=Math.max(a[y].lim,a[x].lim);let de,ge;de=y;do de=(b=E.getParent(de))===null||b===void 0?void 0:b.id,ee.push(de);while(de&&(a[de].low>ae||oe>a[de].lim));for(ge=de,de=x;de&&de!==ge;)re.push(de),de=(z=E.getParent(de))===null||z===void 0?void 0:z.id;return{lca:ge,path:ee.concat(re.reverse())}},ez=(E,a)=>{const y=q_(E);a.forEach(x=>{var b,z;let ee=x,re=E.getNode(ee);const ae=re.data.originalEdge;if(!ae)return;const oe=$_(E,y,ae.source,ae.target),de=oe.path,ge=oe.lca;let ye=0,De=de[ye],ke=!0;for(;ee!==ae.target;){if(re=E.getNode(ee),ke){for(;De!==ge&&((b=E.getNode(De))===null||b===void 0?void 0:b.data.maxRank)<re.data.rank;)ye++,De=de[ye];De===ge&&(ke=!1)}if(!ke){for(;ye<de.length-1&&((z=E.getNode(de[ye+1]))===null||z===void 0?void 0:z.data.minRank)<=re.data.rank;)ye++;De=de[ye]}E.hasNode(De)&&E.setParent(ee,De),ee=E.getSuccessors(ee)[0].id}})},OM=(E,a)=>{const y={},x=(b,z)=>{let ee=0,re=0;const ae=b.length,oe=z==null?void 0:z[(z==null?void 0:z.length)-1];return z==null||z.forEach((de,ge)=>{var ye;const De=tz(E,de),ke=De?E.getNode(De.id).data.order:ae;(De||de===oe)&&((ye=z.slice(re,ge+1))===null||ye===void 0||ye.forEach(ze=>{var We;(We=E.getPredecessors(ze))===null||We===void 0||We.forEach(Ve=>{var Ze;const Ye=E.getNode(Ve.id),et=Ye.data.order;(et<ee||ke<et)&&!(Ye.data.dummy&&(!((Ze=E.getNode(ze))===null||Ze===void 0)&&Ze.data.dummy))&&LM(y,Ve.id,ze)})}),re=ge+1,ee=ke)}),z};return a!=null&&a.length&&a.reduce(x),y},TM=(E,a)=>{const y={};function x(re,ae,oe,de,ge){var ye,De;let ke;for(let ze=ae;ze<oe;ze++)ke=re[ze],!((ye=E.getNode(ke))===null||ye===void 0)&&ye.data.dummy&&((De=E.getPredecessors(ke))===null||De===void 0||De.forEach(We=>{const Ve=E.getNode(We.id);Ve.data.dummy&&(Ve.data.order<de||Ve.data.order>ge)&&LM(y,We.id,ke)}))}function b(re){return JSON.stringify(re.slice(1))}function z(re,ae){const oe=b(re);ae.get(oe)||(x(...re),ae.set(oe,!0))}const ee=(re,ae)=>{let oe=-1,de,ge=0;const ye=new Map;return ae==null||ae.forEach((De,ke)=>{var ze;if(((ze=E.getNode(De))===null||ze===void 0?void 0:ze.data.dummy)==="border"){const We=E.getPredecessors(De)||[];We.length&&(de=E.getNode(We[0].id).data.order,z([ae,ge,ke,oe,de],ye),ge=ke,oe=de)}z([ae,ge,ae.length,de,re.length],ye)}),ae};return a!=null&&a.length&&a.reduce(ee),y},tz=(E,a)=>{var y,x;if(!((y=E.getNode(a))===null||y===void 0)&&y.data.dummy)return(x=E.getPredecessors(a))===null||x===void 0?void 0:x.find(b=>E.getNode(b.id).data.dummy)},LM=(E,a,y)=>{let x=a,b=y;if(x>b){const ee=x;x=b,b=ee}let z=E[x];z||(E[x]=z={}),z[b]=!0},nz=(E,a,y)=>{let x=a,b=y;if(x>b){const z=a;x=b,b=z}return!!E[x]},BM=(E,a,y,x)=>{const b={},z={},ee={};return a==null||a.forEach(re=>{re==null||re.forEach((ae,oe)=>{b[ae]=ae,z[ae]=ae,ee[ae]=oe})}),a==null||a.forEach(re=>{let ae=-1;re==null||re.forEach(oe=>{let de=x(oe).map(ge=>ge.id);if(de.length){de=de.sort((ye,De)=>ee[ye]-ee[De]);const ge=(de.length-1)/2;for(let ye=Math.floor(ge),De=Math.ceil(ge);ye<=De;++ye){const ke=de[ye];z[oe]===oe&&ae<ee[ke]&&!nz(y,oe,ke)&&(z[ke]=oe,z[oe]=b[oe]=b[ke],ae=ee[ke])}}})}),{root:b,align:z}},NM=(E,a,y,x,b,z,ee)=>{var re;const ae={},oe=rz(E,a,y,b,z,ee),de=ee?"borderLeft":"borderRight",ge=(ke,ze)=>{let We=oe.getAllNodes(),Ve=We.pop();const Ze={};for(;Ve;)Ze[Ve.id]?ke(Ve.id):(Ze[Ve.id]=!0,We.push(Ve),We=We.concat(ze(Ve.id))),Ve=We.pop()},ye=ke=>{ae[ke]=(oe.getRelatedEdges(ke,"in")||[]).reduce((ze,We)=>Math.max(ze,(ae[We.source]||0)+We.data.weight),0)},De=ke=>{const ze=(oe.getRelatedEdges(ke,"out")||[]).reduce((Ve,Ze)=>Math.min(Ve,(ae[Ze.target]||0)-Ze.data.weight),Number.POSITIVE_INFINITY),We=E.getNode(ke);ze!==Number.POSITIVE_INFINITY&&We.data.borderType!==de&&(ae[ke]=Math.max(ae[ke],ze))};return ge(ye,oe.getPredecessors.bind(oe)),ge(De,oe.getSuccessors.bind(oe)),(re=Object.values(x))===null||re===void 0||re.forEach(ke=>{ae[ke]=ae[y[ke]]}),ae},rz=(E,a,y,x,b,z)=>{const ee=new ku,re=az(x,b,z);return a==null||a.forEach(ae=>{let oe;ae==null||ae.forEach(de=>{const ge=y[de];if(ee.hasNode(ge)||ee.addNode({id:ge,data:{}}),oe){const ye=y[oe],De=ee.getRelatedEdges(ye,"out").find(ke=>ke.target===ge);De?ee.updateEdgeData(De.id,Object.assign(Object.assign({},De.data),{weight:Math.max(re(E,de,oe),De.data.weight||0)})):ee.addEdge({id:`e${Math.random()}`,source:ye,target:ge,data:{weight:Math.max(re(E,de,oe),0)}})}oe=de})}),ee},RM=(E,a)=>tS(Object.values(a),y=>{var x;let b=Number.NEGATIVE_INFINITY,z=Number.POSITIVE_INFINITY;return(x=Object.keys(y))===null||x===void 0||x.forEach(ee=>{const re=y[ee],ae=iz(E,ee)/2;b=Math.max(re+ae,b),z=Math.min(re-ae,z)}),b-z});function FM(E,a){const y=Object.values(a),x=Math.min(...y),b=Math.max(...y);["u","d"].forEach(z=>{["l","r"].forEach(ee=>{const re=z+ee,ae=E[re];let oe;if(ae===a)return;const de=Object.values(ae);oe=ee==="l"?x-Math.min(...de):b-Math.max(...de),oe&&(E[re]={},Object.keys(ae).forEach(ge=>{E[re][ge]=ae[ge]+oe}))})})}const kM=(E,a)=>{const y={};return Object.keys(E.ul).forEach(x=>{if(a)y[x]=E[a.toLowerCase()][x];else{const b=Object.values(E).map(z=>z[x]);y[x]=(b[0]+b[1])/2}}),y},nne=(E,a)=>{const{align:y,nodesep:x=0,edgesep:b=0}=a||{},z=buildLayerMatrix(E),ee=Object.assign(OM(E,z),TM(E,z)),re={};let ae;["u","d"].forEach(de=>{ae=de==="u"?z:Object.values(z).reverse(),["l","r"].forEach(ge=>{ge==="r"&&(ae=ae.map(ze=>Object.values(ze).reverse()));const ye=(de==="u"?E.getPredecessors:E.getSuccessors).bind(E),De=BM(E,ae,ee,ye),ke=NM(E,ae,De.root,De.align,x,b,ge==="r");ge==="r"&&Object.keys(ke).forEach(ze=>{ke[ze]=-ke[ze]}),re[de+ge]=ke})});const oe=RM(E,re);return FM(re,oe),kM(re,y)},az=(E,a,y)=>(x,b,z)=>{const ee=x.getNode(b),re=x.getNode(z);let ae=0,oe=0;if(ae+=ee.data.width/2,ee.data.hasOwnProperty("labelpos"))switch((ee.data.labelpos||"").toLowerCase()){case"l":oe=-ee.data.width/2;break;case"r":oe=ee.data.width/2;break}if(oe&&(ae+=y?oe:-oe),oe=0,ae+=(ee.data.dummy?a:E)/2,ae+=(re.data.dummy?a:E)/2,ae+=re.data.width/2,re.data.labelpos)switch((re.data.labelpos||"").toLowerCase()){case"l":oe=re.data.width/2;break;case"r":oe=-re.data.width/2;break}return oe&&(ae+=y?oe:-oe),oe=0,ae},iz=(E,a)=>E.getNode(a).data.width||0,oz=(E,a)=>{const{ranksep:y=0}=a||{},x=bm(E);let b=0;x==null||x.forEach(z=>{const ee=z.map(ae=>E.getNode(ae).data.height),re=Math.max(...ee,0);z==null||z.forEach(ae=>{E.getNode(ae).data.y=b+re/2}),b+=re+y})},sz=(E,a)=>{const{align:y,nodesep:x=0,edgesep:b=0}=a||{},z=bm(E),ee=Object.assign(OM(E,z),TM(E,z)),re={};let ae=[];["u","d"].forEach(de=>{ae=de==="u"?z:Object.values(z).reverse(),["l","r"].forEach(ge=>{ge==="r"&&(ae=ae.map(ze=>Object.values(ze).reverse()));const ye=(de==="u"?E.getPredecessors:E.getSuccessors).bind(E),De=BM(E,ae,ee,ye),ke=NM(E,ae,De.root,De.align,x,b,ge==="r");ge==="r"&&Object.keys(ke).forEach(ze=>ke[ze]=-ke[ze]),re[de+ge]=ke})});const oe=RM(E,re);return oe&&FM(re,oe),kM(re,y)},lz=(E,a)=>{var y;const x=fM(E);oz(x,a);const b=sz(x,a);(y=Object.keys(b))===null||y===void 0||y.forEach(z=>{x.getNode(z).data.x=b[z]})},_M=E=>{const a={},y=x=>{var b;const z=E.getNode(x);if(!z)return 0;if(a[x])return z.data.rank;a[x]=!0;let ee;return(b=E.getRelatedEdges(x,"out"))===null||b===void 0||b.forEach(re=>{const ae=y(re.target),oe=re.data.minlen,de=ae-oe;de&&(ee===void 0||de<ee)&&(ee=de)}),ee||(ee=0),z.data.rank=ee,ee};E.getAllNodes().filter(x=>E.getRelatedEdges(x.id,"in").length===0).forEach(x=>y(x.id))},uz=E=>{const a={};let y;const x=ee=>{var re;const ae=E.getNode(ee);if(!ae)return 0;if(a[ee])return ae.data.rank;a[ee]=!0;let oe;return(re=E.getRelatedEdges(ee,"out"))===null||re===void 0||re.forEach(de=>{const ge=x(de.target),ye=de.data.minlen,De=ge-ye;De&&(oe===void 0||De<oe)&&(oe=De)}),oe||(oe=0),(y===void 0||oe<y)&&(y=oe),ae.data.rank=oe,oe};E.getAllNodes().filter(ee=>E.getRelatedEdges(ee.id,"in").length===0).forEach(ee=>{ee&&x(ee.id)}),y===void 0&&(y=0);const b={},z=(ee,re)=>{var ae;const oe=E.getNode(ee),de=isNaN(oe.data.layer)?re:oe.data.layer;(oe.data.rank===void 0||oe.data.rank<de)&&(oe.data.rank=de),!b[ee]&&(b[ee]=!0,(ae=E.getRelatedEdges(ee,"out"))===null||ae===void 0||ae.forEach(ge=>{z(ge.target,de+ge.data.minlen)}))};E.getAllNodes().forEach(ee=>{const re=ee.data;re&&(isNaN(re.layer)?re.rank-=y:z(ee.id,re.layer))})},og=(E,a)=>E.getNode(a.target).data.rank-E.getNode(a.source).data.rank-a.data.minlen,cz=E=>{const a=new ku({tree:[]}),y=E.getAllNodes()[0],x=E.getAllNodes().length;a.addNode(y);let b,z;for(;dz(a,E)<x;)b=zM(a,E),z=a.hasNode(b.source)?og(E,b):-og(E,b),jM(a,E,z);return a},dz=(E,a)=>{const y=x=>{a.getRelatedEdges(x,"both").forEach(b=>{const z=b.source,ee=x===z?b.target:z;!E.hasNode(ee)&&!og(a,b)&&(E.addNode({id:ee,data:{}}),E.addEdge({id:b.id,source:x,target:ee,data:{}}),y(ee))})};return E.getAllNodes().forEach(x=>y(x.id)),E.getAllNodes().length},fz=E=>{const a=new ku({tree:[]}),y=E.getAllNodes()[0],x=E.getAllNodes().length;a.addNode(y);let b,z;for(;hz(a,E)<x;)b=zM(a,E),z=a.hasNode(b.source)?og(E,b):-og(E,b),jM(a,E,z);return a},hz=(E,a)=>{const y=x=>{var b;(b=a.getRelatedEdges(x,"both"))===null||b===void 0||b.forEach(z=>{const ee=z.source,re=x===ee?z.target:ee;!E.hasNode(re)&&(a.getNode(re).data.layer!==void 0||!og(a,z))&&(E.addNode({id:re,data:{}}),E.addEdge({id:z.id,source:x,target:re,data:{}}),y(re))})};return E.getAllNodes().forEach(x=>y(x.id)),E.getAllNodes().length},zM=(E,a)=>tS(a.getAllEdges(),y=>E.hasNode(y.source)!==E.hasNode(y.target)?og(a,y):1/0),jM=(E,a,y)=>{E.getAllNodes().forEach(x=>{const b=a.getNode(x.id);b.data.rank||(b.data.rank=0),b.data.rank+=y})},gz=E=>{const a=A_(E);_M(a);const y=cz(a);WM(y),UM(y,a);let x,b;for(;x=pz(y);)b=yz(y,a,x),Ez(y,a,x,b)},UM=(E,a)=>{let y=yM(E,E.getAllNodes(),"post",!1);y=y.slice(0,(y==null?void 0:y.length)-1),y.forEach(x=>{vz(E,a,x)})},vz=(E,a,y)=>{const b=E.getNode(y).data.parent,z=E.getRelatedEdges(y,"both").find(ee=>ee.target===b||ee.source===b);z.data.cutvalue=mz(E,a,y)},mz=(E,a,y)=>{const b=E.getNode(y).data.parent;let z=!0,ee=a.getRelatedEdges(y,"out").find(ae=>ae.target===b),re=0;return ee||(z=!1,ee=a.getRelatedEdges(b,"out").find(ae=>ae.target===y)),re=ee.data.weight,a.getRelatedEdges(y,"both").forEach(ae=>{const oe=ae.source===y,de=oe?ae.target:ae.source;if(de!==b){const ge=oe===z,ye=ae.data.weight;if(re+=ge?ye:-ye,xz(E,y,de)){const De=E.getRelatedEdges(y,"both").find(ke=>ke.source===de||ke.target===de).data.cutvalue;re+=ge?-De:De}}}),re},WM=(E,a=E.getAllNodes()[0].id)=>{GM(E,{},1,a)},GM=(E,a,y,x,b)=>{var z;const ee=y;let re=y;const ae=E.getNode(x);return a[x]=!0,(z=E.getNeighbors(x))===null||z===void 0||z.forEach(oe=>{a[oe.id]||(re=GM(E,a,re,oe.id,x))}),ae.data.low=ee,ae.data.lim=re++,b?ae.data.parent=b:delete ae.data.parent,re},pz=E=>E.getAllEdges().find(a=>a.data.cutvalue<0),yz=(E,a,y)=>{let x=y.source,b=y.target;a.getRelatedEdges(x,"out").find(de=>de.target===b)||(x=y.target,b=y.source);const z=E.getNode(x),ee=E.getNode(b);let re=z,ae=!1;z.data.lim>ee.data.lim&&(re=ee,ae=!0);const oe=a.getAllEdges().filter(de=>ae===HM(E.getNode(de.source),re)&&ae!==HM(E.getNode(de.target),re));return tS(oe,de=>og(a,de))},Ez=(E,a,y,x)=>{const b=E.getRelatedEdges(y.source,"both").find(z=>z.source===y.target||z.target===y.target);b&&E.removeEdge(b.id),E.addEdge({id:`e${Math.random()}`,source:x.source,target:x.target,data:{}}),WM(E),UM(E,a),Az(E,a)},Az=(E,a)=>{const y=E.getAllNodes().find(b=>!b.data.parent);let x=yM(E,y,"pre",!1);x=x.slice(1),x.forEach(b=>{const z=E.getNode(b).data.parent;let ee=a.getRelatedEdges(b,"out").find(ae=>ae.target===z),re=!1;!ee&&a.hasNode(z)&&(ee=a.getRelatedEdges(z,"out").find(ae=>ae.target===b),re=!0),a.getNode(b).data.rank=(a.hasNode(z)&&a.getNode(z).data.rank||0)+(re?ee==null?void 0:ee.data.minlen:-(ee==null?void 0:ee.data.minlen))})},xz=(E,a,y)=>E.getRelatedEdges(a,"both").find(x=>x.source===y||x.target===y),HM=(E,a)=>a.data.low<=E.data.lim&&E.data.lim<=a.data.lim,Sz=(E,a)=>{switch(a){case"network-simplex":Cz(E);break;case"tight-tree":VM(E);break;case"longest-path":bz(E);break;default:VM(E)}},bz=_M,VM=E=>{uz(E),fz(E)},Cz=E=>{gz(E)},Pz=(E,a)=>{const{edgeLabelSpace:y,keepNodeOrder:x,prevGraph:b,rankdir:z,ranksep:ee}=a;!x&&b&&Mz(E,b);const re=Bz(E);y&&(a.ranksep=Nz(re,{rankdir:z,ranksep:ee}));let ae;try{ae=wz(re,a)}catch(oe){if(oe.message==="Not possible to find intersection inside of the rectangle"){console.error(`The following error may be caused by improper layer setting, please make sure your manual layer setting does not violate the graph's structure:
|
|
|
`,oe);return}throw oe}return Dz(E,re),ae},wz=(E,a)=>{const{acyclicer:y,ranker:x,rankdir:b="tb",nodeOrder:z,keepNodeOrder:ee,align:re,nodesep:ae=50,edgesep:oe=20,ranksep:de=50}=a;Gz(E),m_(E,y);const{nestingRoot:ge,nodeRankFactor:ye}=I_(E);Sz(fM(E),x),Rz(E),S_(E,ye),L_(E,ge),x_(E),Fz(E),kz(E);const De=[];N_(E,De),ez(E,De),C_(E),ee&&J_(E,z),X_(E,ee),Hz(E),P_(E,b),lz(E,{align:re,nodesep:ae,edgesep:oe,ranksep:de}),Vz(E),Wz(E),F_(E,De),jz(E),w_(E,b);const{width:ke,height:ze}=_z(E);return zz(E),Uz(E),y_(E),{width:ke,height:ze}},Mz=(E,a)=>{E.getAllNodes().forEach(y=>{const x=E.getNode(y.id);if(a.hasNode(y.id)){const b=a.getNode(y.id);x.data.fixorder=b.data._order,delete b.data._order}else delete x.data.fixorder})},Dz=(E,a)=>{E.getAllNodes().forEach(y=>{var x;const b=E.getNode(y.id);if(b){const z=a.getNode(y.id);b.data.x=z.data.x,b.data.y=z.data.y,b.data._order=z.data.order,b.data._rank=z.data.rank,!((x=a.getChildren(y.id))===null||x===void 0)&&x.length&&(b.data.width=z.data.width,b.data.height=z.data.height)}}),E.getAllEdges().forEach(y=>{const x=E.getEdge(y.id),b=a.getEdge(y.id);x.data.points=b?b.data.points:[],b&&b.data.hasOwnProperty("x")&&(x.data.x=b.data.x,x.data.y=b.data.y)})},Iz=["width","height","layer","fixorder"],Oz={width:0,height:0},Tz=["minlen","weight","width","height","labeloffset"],Lz={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},iS=["labelpos"],Bz=E=>{const a=new ku({tree:[]});return E.getAllNodes().forEach(y=>{const x=ZM(E.getNode(y.id).data),b=Object.assign(Object.assign({},Oz),x),z=KM(b,Iz);a.hasNode(y.id)||a.addNode({id:y.id,data:Object.assign({},z)});const ee=E.hasTreeStructure("combo")?E.getParent(y.id,"combo"):E.getParent(y.id);Io(ee)||(a.hasNode(ee.id)||a.addNode(Object.assign({},ee)),a.setParent(y.id,ee.id))}),E.getAllEdges().forEach(y=>{const x=ZM(E.getEdge(y.id).data),b={};iS==null||iS.forEach(z=>{x[z]!==void 0&&(b[z]=x[z])}),a.addEdge({id:y.id,source:y.source,target:y.target,data:Object.assign({},Lz,KM(x,Tz),b)})}),a},Nz=(E,a)=>{const{ranksep:y=0,rankdir:x}=a;return E.getAllNodes().forEach(b=>{isNaN(b.data.layer)||b.data.layer||(b.data.layer=0)}),E.getAllEdges().forEach(b=>{var z;b.data.minlen*=2,((z=b.data.labelpos)===null||z===void 0?void 0:z.toLowerCase())!=="c"&&(x==="TB"||x==="BT"?b.data.width+=b.data.labeloffset:b.data.height+=b.data.labeloffset)}),y/2},Rz=E=>{E.getAllEdges().forEach(a=>{if(a.data.width&&a.data.height){const y=E.getNode(a.source),x=E.getNode(a.target),b={e:a,rank:(x.data.rank-y.data.rank)/2+y.data.rank};ev(E,"edge-proxy",b,"_ep")}})},Fz=E=>{let a=0;return E.getAllNodes().forEach(y=>{var x,b;y.data.borderTop&&(y.data.minRank=(x=E.getNode(y.data.borderTop))===null||x===void 0?void 0:x.data.rank,y.data.maxRank=(b=E.getNode(y.data.borderBottom))===null||b===void 0?void 0:b.data.rank,a=Math.max(a,y.data.maxRank||-1/0))}),a},kz=E=>{E.getAllNodes().forEach(a=>{a.data.dummy==="edge-proxy"&&(E.getEdge(a.data.e.id).data.labelRank=a.data.rank,E.removeNode(a.id))})},_z=(E,a)=>{let y,x=0,b,z=0;const{marginx:ee=0,marginy:re=0}=a||{},ae=oe=>{if(!oe.data)return;const de=oe.data.x,ge=oe.data.y,ye=oe.data.width,De=oe.data.height;!isNaN(de)&&!isNaN(ye)&&(y===void 0&&(y=de-ye/2),y=Math.min(y,de-ye/2),x=Math.max(x,de+ye/2)),!isNaN(ge)&&!isNaN(De)&&(b===void 0&&(b=ge-De/2),b=Math.min(b,ge-De/2),z=Math.max(z,ge+De/2))};return E.getAllNodes().forEach(oe=>{ae(oe)}),E.getAllEdges().forEach(oe=>{oe!=null&&oe.data.hasOwnProperty("x")&&ae(oe)}),y-=ee,b-=re,E.getAllNodes().forEach(oe=>{oe.data.x-=y,oe.data.y-=b}),E.getAllEdges().forEach(oe=>{var de;(de=oe.data.points)===null||de===void 0||de.forEach(ge=>{ge.x-=y,ge.y-=b}),oe.data.hasOwnProperty("x")&&(oe.data.x-=y),oe.data.hasOwnProperty("y")&&(oe.data.y-=b)}),{width:x-y+ee,height:z-b+re}},zz=E=>{E.getAllEdges().forEach(a=>{const y=E.getNode(a.source),x=E.getNode(a.target);let b,z;a.data.points?(b=a.data.points[0],z=a.data.points[a.data.points.length-1]):(a.data.points=[],b={x:x.data.x,y:x.data.y},z={x:y.data.x,y:y.data.y}),a.data.points.unshift(gM(y.data,b)),a.data.points.push(gM(x.data,z))})},jz=E=>{E.getAllEdges().forEach(a=>{if(a.data.hasOwnProperty("x"))switch((a.data.labelpos==="l"||a.data.labelpos==="r")&&(a.data.width-=a.data.labeloffset),a.data.labelpos){case"l":a.data.x-=a.data.width/2+a.data.labeloffset;break;case"r":a.data.x+=a.data.width/2+a.data.labeloffset;break}})},Uz=E=>{E.getAllEdges().forEach(a=>{var y;a.data.reversed&&((y=a.data.points)===null||y===void 0||y.reverse())})},Wz=E=>{E.getAllNodes().forEach(a=>{var y,x,b;if(!((y=E.getChildren(a.id))===null||y===void 0)&&y.length){const z=E.getNode(a.id),ee=E.getNode(z.data.borderTop),re=E.getNode(z.data.borderBottom),ae=E.getNode(z.data.borderLeft[((x=z.data.borderLeft)===null||x===void 0?void 0:x.length)-1]),oe=E.getNode(z.data.borderRight[((b=z.data.borderRight)===null||b===void 0?void 0:b.length)-1]);z.data.width=Math.abs((oe==null?void 0:oe.data.x)-(ae==null?void 0:ae.data.x))||10,z.data.height=Math.abs((re==null?void 0:re.data.y)-(ee==null?void 0:ee.data.y))||10,z.data.x=((ae==null?void 0:ae.data.x)||0)+z.data.width/2,z.data.y=((ee==null?void 0:ee.data.y)||0)+z.data.height/2}}),E.getAllNodes().forEach(a=>{a.data.dummy==="border"&&E.removeNode(a.id)})},Gz=E=>{E.getAllEdges().forEach(a=>{if(a.source===a.target){const y=E.getNode(a.source);y.data.selfEdges||(y.data.selfEdges=[]),y.data.selfEdges.push(a),E.removeEdge(a.id)}})},Hz=E=>{const a=bm(E);a==null||a.forEach(y=>{let x=0;y==null||y.forEach((b,z)=>{var ee;const re=E.getNode(b);re.data.order=z+x,(ee=re.data.selfEdges)===null||ee===void 0||ee.forEach(ae=>{ev(E,"selfedge",{width:ae.data.width,height:ae.data.height,rank:re.data.rank,order:z+ ++x,e:ae},"_se")}),delete re.data.selfEdges})})},Vz=E=>{E.getAllNodes().forEach(a=>{const y=E.getNode(a.id);if(y.data.dummy==="selfedge"){const x=E.getNode(y.data.e.source),b=x.data.x+x.data.width/2,z=x.data.y,ee=y.data.x-b,re=x.data.height/2;E.hasEdge(y.data.e.id)?E.updateEdgeData(y.data.e.id,y.data.e.data):E.addEdge({id:y.data.e.id,source:y.data.e.source,target:y.data.e.target,data:y.data.e.data}),E.removeNode(a.id),y.data.e.data.points=[{x:b+2*ee/3,y:z-re},{x:b+5*ee/6,y:z-re},{y:z,x:b+ee},{x:b+5*ee/6,y:z+re},{x:b+2*ee/3,y:z+re}],y.data.e.data.x=y.data.x,y.data.e.data.y=y.data.y}})},KM=(E,a)=>{const y={};return a==null||a.forEach(x=>{E[x]!==void 0&&(y[x]=+E[x])}),y},ZM=(E={})=>{const a={};return Object.keys(E).forEach(y=>{a[y.toLowerCase()]=E[y]}),a};function Cm(E){if(!E)return[0,0,0];if(ji(E))return[E,E,E];if(E.length===0)return[0,0,0];const[a,y=a,x=a]=E;return[a,y,x]}function l0(E,a){let y;return Xi(a)?y=a:ji(a)?y=()=>a:y=()=>E,y}function oS(E,a,y=!0){return!a&&a!==0?x=>{const{size:b}=x.data||{};return b?Array.isArray(b)?y?Math.max(...b)||E:b:Tu(b)&&b.width&&b.height?y?Math.max(b.width,b.height)||E:[b.width,b.height]:b:E}:Xi(a)?a:ji(a)?()=>a:Array.isArray(a)?()=>y?Math.max(...a)||E:a:Tu(a)&&a.width&&a.height?()=>y?Math.max(a.width,a.height)||E:[a.width,a.height]:()=>E}const sS=(E,a,y=10)=>{let x;const b=typeof a=="function"?a:()=>a||0;return E?Array.isArray(E)?x=ee=>E:Xi(E)?x=E:x=ee=>E:x=ee=>{var re,ae,oe;if(!((re=ee.data)===null||re===void 0)&&re.bboxSize)return(ae=ee.data)===null||ae===void 0?void 0:ae.bboxSize;if(!((oe=ee.data)===null||oe===void 0)&&oe.size){const de=ee.data.size;return Array.isArray(de)?de:Tu(de)?[de.width,de.height]:de}return y},ee=>{const re=x(ee),ae=b(ee);return Math.max(...Cm(re))+ae}},lS=E=>{if(E===null)return E;if(E instanceof Date)return new Date(E.getTime());if(E instanceof Array){const a=[];return E.forEach(y=>{a.push(y)}),a.map(y=>lS(y))}if(typeof E=="object"){const a={};return Object.keys(E).forEach(y=>{a[y]=lS(E[y])}),a}return E},Td=(E,a)=>{const y=lS(E);return y.data=y.data||{},a&&(ji(y.data.x)||(y.data.x=Math.random()*a[0]),ji(y.data.y)||(y.data.y=Math.random()*a[1])),y},Kz={rankdir:"TB",nodesep:50,ranksep:50,edgeLabelSpace:!0,ranker:"tight-tree",controlPoints:!1,radial:!1,focusNode:null};class Zz{constructor(a={}){this.options=a,this.id="antv-dagre",this.options=Object.assign(Object.assign({},Kz),a)}execute(a,y){return(0,Nt.mG)(this,void 0,void 0,function*(){return this.genericDagreLayout(!1,a,y)})}assign(a,y){return(0,Nt.mG)(this,void 0,void 0,function*(){yield this.genericDagreLayout(!0,a,y)})}genericDagreLayout(a,y,x){return(0,Nt.mG)(this,void 0,void 0,function*(){const b=Object.assign(Object.assign({},this.options),x),{nodeSize:z,align:ee,rankdir:re="TB",ranksep:ae,nodesep:oe,ranksepFunc:de,nodesepFunc:ge,edgeLabelSpace:ye,ranker:De,nodeOrder:ke,begin:ze,controlPoints:We,radial:Ve,sortByCombo:Ze,preset:Ye}=b,et=new ku({tree:[]}),st=l0(ae||50,de),ht=l0(oe||50,ge);let mt=ht,dt=st;(re==="LR"||re==="RL")&&(mt=st,dt=ht);const Ot=oS(10,z,!1),_t=y.getAllNodes(),wt=y.getAllEdges();_t.forEach(yn=>{const Cn=Cm(Ot(yn)),qn=dt(yn),pn=mt(yn),lr=Cn[0]+2*pn,Jr=Cn[1]+2*qn,na=yn.data.layer;ji(na)?et.addNode({id:yn.id,data:{width:lr,height:Jr,layer:na}}):et.addNode({id:yn.id,data:{width:lr,height:Jr}})}),Ze&&(et.attachTreeStructure("combo"),_t.forEach(yn=>{const{parentId:Cn}=yn.data;Cn!==void 0&&et.hasNode(Cn)&&et.setParent(yn.id,Cn,"combo")})),wt.forEach(yn=>{et.addEdge({id:yn.id,source:yn.source,target:yn.target,data:{weight:yn.data.weight||1}})});let $t;Ye!=null&&Ye.length&&($t=new ku({nodes:Ye})),Pz(et,{prevGraph:$t,edgeLabelSpace:ye,keepNodeOrder:!!ke,nodeOrder:ke||[],acyclicer:"greedy",ranker:De,rankdir:re,nodesep:oe,align:ee});const gn=[0,0];if(ze){let yn=1/0,Cn=1/0;et.getAllNodes().forEach(qn=>{yn>qn.data.x&&(yn=qn.data.x),Cn>qn.data.y&&(Cn=qn.data.y)}),et.getAllEdges().forEach(qn=>{var pn;(pn=qn.data.points)===null||pn===void 0||pn.forEach(lr=>{yn>lr.x&&(yn=lr.x),Cn>lr.y&&(Cn=lr.y)})}),gn[0]=ze[0]-yn,gn[1]=ze[1]-Cn}const Xt=re==="LR"||re==="RL";if(!Ve){const yn=new Set,qn=re==="BT"||re==="RL"?(na,Hr)=>Hr-na:(na,Hr)=>na-Hr;et.getAllNodes().forEach(na=>{na.data.x=na.data.x+gn[0],na.data.y=na.data.y+gn[1],yn.add(Xt?na.data.x:na.data.y)});const pn=Array.from(yn).sort(qn),lr=Xt?(na,Hr)=>na.x!==Hr.x:(na,Hr)=>na.y!==Hr.y,Jr=Xt?(na,Hr,Ar)=>{const Wr=Math.max(Hr.y,Ar.y),ya=Math.min(Hr.y,Ar.y);return na.filter(Ra=>Ra.y<=Wr&&Ra.y>=ya)}:(na,Hr,Ar)=>{const Wr=Math.max(Hr.x,Ar.x),ya=Math.min(Hr.x,Ar.x);return na.filter(Ra=>Ra.x<=Wr&&Ra.x>=ya)};et.getAllEdges().forEach((na,Hr)=>{var Ar;ye&&We&&na.data.type!=="loop"&&(na.data.controlPoints=Qz((Ar=na.data.points)===null||Ar===void 0?void 0:Ar.map(({x:Wr,y:ya})=>({x:Wr+gn[0],y:ya+gn[1]})),et.getNode(na.source),et.getNode(na.target),pn,Xt,lr,Jr))})}let Tn=[];Tn=et.getAllNodes().map(yn=>Td(yn));const er=et.getAllEdges();return a&&(Tn.forEach(yn=>{y.mergeNodeData(yn.id,{x:yn.data.x,y:yn.data.y})}),er.forEach(yn=>{y.mergeEdgeData(yn.id,{controlPoints:yn.data.controlPoints})})),{nodes:Tn,edges:er}})}}const Qz=(E,a,y,x,b,z,ee)=>{let re=(E==null?void 0:E.slice(1,E.length-1))||[];if(a&&y){let{x:ae,y:oe}=a.data,{x:de,y:ge}=y.data;if(b&&(ae=a.data.y,oe=a.data.x,de=y.data.y,ge=y.data.x),ge!==oe&&ae!==de){const ye=x.indexOf(oe),De=x[ye+1];if(De){const We=re[0],Ve=b?{x:(oe+De)/2,y:(We==null?void 0:We.y)||de}:{x:(We==null?void 0:We.x)||de,y:(oe+De)/2};(!We||z(We,Ve))&&re.unshift(Ve)}const ke=x.indexOf(ge),ze=Math.abs(ke-ye);if(ze===1)re=ee(re,a.data,y.data),re.length||re.push(b?{x:(oe+ge)/2,y:ae}:{x:ae,y:(oe+ge)/2});else if(ze>1){const We=x[ke-1];if(We){const Ve=re[re.length-1],Ze=b?{x:(ge+We)/2,y:(Ve==null?void 0:Ve.y)||de}:{x:(Ve==null?void 0:Ve.x)||ae,y:(ge+We)/2};(!Ve||z(Ve,Ze))&&re.push(Ze)}}}}return re},u0=(E,a,y)=>{const x=E.getAllNodes(),b=E.getAllEdges();if(!(x!=null&&x.length))return{nodes:[],edges:b};if(x.length===1)return a&&E.mergeNodeData(x[0].id,{x:y[0],y:y[1]}),{nodes:[Object.assign(Object.assign({},x[0]),{data:Object.assign(Object.assign({},x[0].data),{x:y[0],y:y[1]})})],edges:b}},Yz={radius:null,startRadius:null,endRadius:null,startAngle:0,endAngle:2*Math.PI,clockwise:!0,divisions:1,ordering:null,angleRatio:1};class Xz{constructor(a={}){this.options=a,this.id="circular",this.options=Object.assign(Object.assign({},Yz),a)}execute(a,y){return(0,Nt.mG)(this,void 0,void 0,function*(){return this.genericCircularLayout(!1,a,y)})}assign(a,y){return(0,Nt.mG)(this,void 0,void 0,function*(){yield this.genericCircularLayout(!0,a,y)})}genericCircularLayout(a,y,x){return(0,Nt.mG)(this,void 0,void 0,function*(){const b=Object.assign(Object.assign({},this.options),x),{width:z,height:ee,center:re,divisions:ae,startAngle:oe=0,endAngle:de=2*Math.PI,angleRatio:ge,ordering:ye,clockwise:De,nodeSpacing:ke,nodeSize:ze}=b,We=y.getAllNodes(),Ve=y.getAllEdges(),[Ze,Ye,et]=qz(z,ee,re),st=We==null?void 0:We.length;if(!st||st===1)return u0(y,a,et);const ht=(de-oe)/st;let{radius:mt,startRadius:dt,endRadius:Ot}=b;if(ke){const Xt=l0(10,ke),Tn=oS(10,ze);let er=-1/0;We.forEach(yn=>{const Cn=Tn(yn);er<Cn&&(er=Cn)});let En=0;We.forEach((yn,Cn)=>{Cn===0?En+=er||10:En+=(Xt(yn)||0)+(er||10)}),mt=En/(2*Math.PI)}else!mt&&!dt&&!Ot?mt=Math.min(Ye,Ze)/2:!dt&&Ot?dt=Ot:dt&&!Ot&&(Ot=dt);const _t=ht*ge;let wt=[];ye==="topology"?wt=QM(y,We):ye==="topology-directed"?wt=QM(y,We,!0):ye==="degree"?wt=Jz(y,We):wt=We.map(Xt=>Td(Xt));const $t=Math.ceil(st/ae);for(let Xt=0;Xt<st;++Xt){let Tn=mt;!Tn&&dt!==null&&Ot!==null&&(Tn=dt+Xt*(Ot-dt)/(st-1)),Tn||(Tn=10+Xt*100/(st-1));let er=oe+Xt%$t*_t+2*Math.PI/ae*Math.floor(Xt/$t);De||(er=de-Xt%$t*_t-2*Math.PI/ae*Math.floor(Xt/$t)),wt[Xt].data.x=et[0]+Math.cos(er)*Tn,wt[Xt].data.y=et[1]+Math.sin(er)*Tn}return a&&wt.forEach(Xt=>{y.mergeNodeData(Xt.id,{x:Xt.data.x,y:Xt.data.y})}),{nodes:wt,edges:Ve}})}}const QM=(E,a,y=!1)=>{const x=[Td(a[0])],b={},z=a.length;b[a[0].id]=!0;let ee=0;return a.forEach((re,ae)=>{if(ae!==0)if((ae===z-1||E.getDegree(re.id,"both")!==E.getDegree(a[ae+1].id,"both")||E.areNeighbors(x[ee].id,re.id))&&!b[re.id])x.push(Td(re)),b[re.id]=!0,ee++;else{const oe=y?E.getSuccessors(x[ee].id):E.getNeighbors(x[ee].id);let de=!1;for(let ye=0;ye<oe.length;ye++){const De=oe[ye];if(E.getDegree(De.id)===E.getDegree(re.id)&&!b[De.id]){x.push(Td(De)),b[De.id]=!0,de=!0;break}}let ge=0;for(;!de&&(b[a[ge].id]||(x.push(Td(a[ge])),b[a[ge].id]=!0,de=!0),ge++,ge!==z););}}),x};function Jz(E,a){const y=[];return a.forEach((x,b)=>{y.push(Td(x))}),y.sort((x,b)=>E.getDegree(x.id,"both")-E.getDegree(b.id,"both")),y}const qz=(E,a,y)=>{let x=E,b=a,z=y;return!x&&typeof window!="undefined"&&(x=window.innerWidth),!b&&typeof window!="undefined"&&(b=window.innerHeight),z||(z=[x/2,b/2]),[x,b,z]},Eh=Array.isArray,$z={nodeSize:30,nodeSpacing:10,preventOverlap:!1,sweep:void 0,equidistant:!1,startAngle:3/2*Math.PI,clockwise:!0,maxLevelDiff:void 0,sortBy:"degree"};class uS{constructor(a={}){this.options=a,this.id="concentric",this.options=Object.assign(Object.assign({},$z),a)}execute(a,y){return(0,Nt.mG)(this,void 0,void 0,function*(){return this.genericConcentricLayout(!1,a,y)})}assign(a,y){return(0,Nt.mG)(this,void 0,void 0,function*(){yield this.genericConcentricLayout(!0,a,y)})}genericConcentricLayout(a,y,x){return(0,Nt.mG)(this,void 0,void 0,function*(){const b=Object.assign(Object.assign({},this.options),x),{center:z,width:ee,height:re,sortBy:ae,maxLevelDiff:oe,sweep:de,clockwise:ge,equidistant:ye,preventOverlap:De,startAngle:ke=3/2*Math.PI,nodeSize:ze,nodeSpacing:We}=b,Ve=y.getAllNodes(),Ze=y.getAllEdges(),Ye=!ee&&typeof window!="undefined"?window.innerWidth:ee,et=!re&&typeof window!="undefined"?window.innerHeight:re,st=z||[Ye/2,et/2];if(!(Ve!=null&&Ve.length)||Ve.length===1)return u0(y,a,st);const ht=[];let mt,dt=0;Eh(ze)?mt=Math.max(ze[0],ze[1]):Xi(ze)?(mt=-1/0,Ve.forEach(yn=>{const Cn=Math.max(...Cm(ze(yn)));Cn>mt&&(mt=Cn)})):mt=ze,Eh(We)?dt=Math.max(We[0],We[1]):ji(We)&&(dt=We),Ve.forEach(yn=>{const Cn=Td(yn);ht.push(Cn);let qn=mt;const{data:pn}=Cn;Eh(pn.size)?qn=Math.max(pn.size[0],pn.size[1]):ji(pn.size)?qn=pn.size:Tu(pn.size)&&(qn=Math.max(pn.size.width,pn.size.height)),mt=Math.max(mt,qn),Xi(We)&&(dt=Math.max(We(yn),dt))});const Ot={};ht.forEach((yn,Cn)=>{Ot[yn.id]=Cn});let _t=ae;(!al(_t)||ht[0].data[_t]===void 0)&&(_t="degree"),_t==="degree"?ht.sort((yn,Cn)=>y.getDegree(Cn.id,"both")-y.getDegree(yn.id,"both")):ht.sort((yn,Cn)=>Cn.data[_t]-yn.data[_t]);const wt=ht[0],$t=(oe||(_t==="degree"?y.getDegree(wt.id,"both"):wt.data[_t]))/4,gn=[{nodes:[]}];let Xt=gn[0];ht.forEach(yn=>{if(Xt.nodes.length>0){const Cn=Math.abs(_t==="degree"?y.getDegree(Xt.nodes[0].id,"both")-y.getDegree(yn.id,"both"):Xt.nodes[0].data[_t]-yn.data[_t]);$t&&Cn>=$t&&(Xt={nodes:[]},gn.push(Xt))}Xt.nodes.push(yn)});let Tn=mt+dt;if(!De){const yn=gn.length>0&&gn[0].nodes.length>1,qn=(Math.min(Ye,et)/2-Tn)/(gn.length+(yn?1:0));Tn=Math.min(Tn,qn)}let er=0;if(gn.forEach(yn=>{const Cn=de===void 0?2*Math.PI-2*Math.PI/yn.nodes.length:de;if(yn.dTheta=Cn/Math.max(1,yn.nodes.length-1),yn.nodes.length>1&&De){const qn=Math.cos(yn.dTheta)-Math.cos(0),pn=Math.sin(yn.dTheta)-Math.sin(0),lr=Math.sqrt(Tn*Tn/(qn*qn+pn*pn));er=Math.max(lr,er)}yn.r=er,er+=Tn}),ye){let yn=0,Cn=0;for(let qn=0;qn<gn.length;qn++){const lr=(gn[qn].r||0)-Cn;yn=Math.max(yn,lr)}Cn=0,gn.forEach((qn,pn)=>{pn===0&&(Cn=qn.r||0),qn.r=Cn,Cn+=yn})}return gn.forEach(yn=>{const Cn=yn.dTheta||0,qn=yn.r||0;yn.nodes.forEach((pn,lr)=>{const Jr=ke+(ge?1:-1)*Cn*lr;pn.data.x=st[0]+qn*Math.cos(Jr),pn.data.y=st[1]+qn*Math.sin(Jr)})}),a&&ht.forEach(yn=>y.mergeNodeData(yn.id,{x:yn.data.x,y:yn.data.y})),{nodes:ht,edges:Ze}})}}function ej(E){const a=+this._x.call(null,E),y=+this._y.call(null,E);return YM(this.cover(a,y),a,y,E)}function YM(E,a,y,x){if(isNaN(a)||isNaN(y))return E;var b,z=E._root,ee={data:x},re=E._x0,ae=E._y0,oe=E._x1,de=E._y1,ge,ye,De,ke,ze,We,Ve,Ze;if(!z)return E._root=ee,E;for(;z.length;)if((ze=a>=(ge=(re+oe)/2))?re=ge:oe=ge,(We=y>=(ye=(ae+de)/2))?ae=ye:de=ye,b=z,!(z=z[Ve=We<<1|ze]))return b[Ve]=ee,E;if(De=+E._x.call(null,z.data),ke=+E._y.call(null,z.data),a===De&&y===ke)return ee.next=z,b?b[Ve]=ee:E._root=ee,E;do b=b?b[Ve]=new Array(4):E._root=new Array(4),(ze=a>=(ge=(re+oe)/2))?re=ge:oe=ge,(We=y>=(ye=(ae+de)/2))?ae=ye:de=ye;while((Ve=We<<1|ze)===(Ze=(ke>=ye)<<1|De>=ge));return b[Ze]=z,b[Ve]=ee,E}function tj(E){var a,y,x=E.length,b,z,ee=new Array(x),re=new Array(x),ae=1/0,oe=1/0,de=-1/0,ge=-1/0;for(y=0;y<x;++y)isNaN(b=+this._x.call(null,a=E[y]))||isNaN(z=+this._y.call(null,a))||(ee[y]=b,re[y]=z,b<ae&&(ae=b),b>de&&(de=b),z<oe&&(oe=z),z>ge&&(ge=z));if(ae>de||oe>ge)return this;for(this.cover(ae,oe).cover(de,ge),y=0;y<x;++y)YM(this,ee[y],re[y],E[y]);return this}function nj(E,a){if(isNaN(E=+E)||isNaN(a=+a))return this;var y=this._x0,x=this._y0,b=this._x1,z=this._y1;if(isNaN(y))b=(y=Math.floor(E))+1,z=(x=Math.floor(a))+1;else{for(var ee=b-y||1,re=this._root,ae,oe;y>E||E>=b||x>a||a>=z;)switch(oe=(a<x)<<1|E<y,ae=new Array(4),ae[oe]=re,re=ae,ee*=2,oe){case 0:b=y+ee,z=x+ee;break;case 1:y=b-ee,z=x+ee;break;case 2:b=y+ee,x=z-ee;break;case 3:y=b-ee,x=z-ee;break}this._root&&this._root.length&&(this._root=re)}return this._x0=y,this._y0=x,this._x1=b,this._y1=z,this}function rj(){var E=[];return this.visit(function(a){if(!a.length)do E.push(a.data);while(a=a.next)}),E}function aj(E){return arguments.length?this.cover(+E[0][0],+E[0][1]).cover(+E[1][0],+E[1][1]):isNaN(this._x0)?void 0:[[this._x0,this._y0],[this._x1,this._y1]]}function Wc(E,a,y,x,b){this.node=E,this.x0=a,this.y0=y,this.x1=x,this.y1=b}function ij(E,a,y){var x,b=this._x0,z=this._y0,ee,re,ae,oe,de=this._x1,ge=this._y1,ye=[],De=this._root,ke,ze;for(De&&ye.push(new Wc(De,b,z,de,ge)),y==null?y=1/0:(b=E-y,z=a-y,de=E+y,ge=a+y,y*=y);ke=ye.pop();)if(!(!(De=ke.node)||(ee=ke.x0)>de||(re=ke.y0)>ge||(ae=ke.x1)<b||(oe=ke.y1)<z))if(De.length){var We=(ee+ae)/2,Ve=(re+oe)/2;ye.push(new Wc(De[3],We,Ve,ae,oe),new Wc(De[2],ee,Ve,We,oe),new Wc(De[1],We,re,ae,Ve),new Wc(De[0],ee,re,We,Ve)),(ze=(a>=Ve)<<1|E>=We)&&(ke=ye[ye.length-1],ye[ye.length-1]=ye[ye.length-1-ze],ye[ye.length-1-ze]=ke)}else{var Ze=E-+this._x.call(null,De.data),Ye=a-+this._y.call(null,De.data),et=Ze*Ze+Ye*Ye;if(et<y){var st=Math.sqrt(y=et);b=E-st,z=a-st,de=E+st,ge=a+st,x=De.data}}return x}function oj(E){if(isNaN(de=+this._x.call(null,E))||isNaN(ge=+this._y.call(null,E)))return this;var a,y=this._root,x,b,z,ee=this._x0,re=this._y0,ae=this._x1,oe=this._y1,de,ge,ye,De,ke,ze,We,Ve;if(!y)return this;if(y.length)for(;;){if((ke=de>=(ye=(ee+ae)/2))?ee=ye:ae=ye,(ze=ge>=(De=(re+oe)/2))?re=De:oe=De,a=y,!(y=y[We=ze<<1|ke]))return this;if(!y.length)break;(a[We+1&3]||a[We+2&3]||a[We+3&3])&&(x=a,Ve=We)}for(;y.data!==E;)if(b=y,!(y=y.next))return this;return(z=y.next)&&delete y.next,b?(z?b.next=z:delete b.next,this):a?(z?a[We]=z:delete a[We],(y=a[0]||a[1]||a[2]||a[3])&&y===(a[3]||a[2]||a[1]||a[0])&&!y.length&&(x?x[Ve]=y:this._root=y),this):(this._root=z,this)}function sj(E){for(var a=0,y=E.length;a<y;++a)this.remove(E[a]);return this}function lj(){return this._root}function uj(){var E=0;return this.visit(function(a){if(!a.length)do++E;while(a=a.next)}),E}function cj(E){var a=[],y,x=this._root,b,z,ee,re,ae;for(x&&a.push(new Wc(x,this._x0,this._y0,this._x1,this._y1));y=a.pop();)if(!E(x=y.node,z=y.x0,ee=y.y0,re=y.x1,ae=y.y1)&&x.length){var oe=(z+re)/2,de=(ee+ae)/2;(b=x[3])&&a.push(new Wc(b,oe,de,re,ae)),(b=x[2])&&a.push(new Wc(b,z,de,oe,ae)),(b=x[1])&&a.push(new Wc(b,oe,ee,re,de)),(b=x[0])&&a.push(new Wc(b,z,ee,oe,de))}return this}function dj(E){var a=[],y=[],x;for(this._root&&a.push(new Wc(this._root,this._x0,this._y0,this._x1,this._y1));x=a.pop();){var b=x.node;if(b.length){var z,ee=x.x0,re=x.y0,ae=x.x1,oe=x.y1,de=(ee+ae)/2,ge=(re+oe)/2;(z=b[0])&&a.push(new Wc(z,ee,re,de,ge)),(z=b[1])&&a.push(new Wc(z,de,re,ae,ge)),(z=b[2])&&a.push(new Wc(z,ee,ge,de,oe)),(z=b[3])&&a.push(new Wc(z,de,ge,ae,oe))}y.push(x)}for(;x=y.pop();)E(x.node,x.x0,x.y0,x.x1,x.y1);return this}function fj(E){return E[0]}function hj(E){return arguments.length?(this._x=E,this):this._x}function gj(E){return E[1]}function vj(E){return arguments.length?(this._y=E,this):this._y}function c1(E,a,y){var x=new cS(a==null?fj:a,y==null?gj:y,NaN,NaN,NaN,NaN);return E==null?x:x.addAll(E)}function cS(E,a,y,x,b,z){this._x=E,this._y=a,this._x0=y,this._y0=x,this._x1=b,this._y1=z,this._root=void 0}function XM(E){for(var a={data:E.data},y=a;E=E.next;)y=y.next={data:E.data};return a}var Gc=c1.prototype=cS.prototype;Gc.copy=function(){var E=new cS(this._x,this._y,this._x0,this._y0,this._x1,this._y1),a=this._root,y,x;if(!a)return E;if(!a.length)return E._root=XM(a),E;for(y=[{source:a,target:E._root=new Array(4)}];a=y.pop();)for(var b=0;b<4;++b)(x=a.source[b])&&(x.length?y.push({source:x,target:a.target[b]=new Array(4)}):a.target[b]=XM(x));return E},Gc.add=ej,Gc.addAll=tj,Gc.cover=nj,Gc.data=rj,Gc.extent=aj,Gc.find=ij,Gc.remove=oj,Gc.removeAll=sj,Gc.root=lj,Gc.size=uj,Gc.visit=cj,Gc.visitAfter=dj,Gc.x=hj,Gc.y=vj;function mj(E){const a=+this._x.call(null,E),y=+this._y.call(null,E),x=+this._z.call(null,E);return JM(this.cover(a,y,x),a,y,x,E)}function JM(E,a,y,x,b){if(isNaN(a)||isNaN(y)||isNaN(x))return E;var z,ee=E._root,re={data:b},ae=E._x0,oe=E._y0,de=E._z0,ge=E._x1,ye=E._y1,De=E._z1,ke,ze,We,Ve,Ze,Ye,et,st,ht,mt,dt;if(!ee)return E._root=re,E;for(;ee.length;)if((et=a>=(ke=(ae+ge)/2))?ae=ke:ge=ke,(st=y>=(ze=(oe+ye)/2))?oe=ze:ye=ze,(ht=x>=(We=(de+De)/2))?de=We:De=We,z=ee,!(ee=ee[mt=ht<<2|st<<1|et]))return z[mt]=re,E;if(Ve=+E._x.call(null,ee.data),Ze=+E._y.call(null,ee.data),Ye=+E._z.call(null,ee.data),a===Ve&&y===Ze&&x===Ye)return re.next=ee,z?z[mt]=re:E._root=re,E;do z=z?z[mt]=new Array(8):E._root=new Array(8),(et=a>=(ke=(ae+ge)/2))?ae=ke:ge=ke,(st=y>=(ze=(oe+ye)/2))?oe=ze:ye=ze,(ht=x>=(We=(de+De)/2))?de=We:De=We;while((mt=ht<<2|st<<1|et)===(dt=(Ye>=We)<<2|(Ze>=ze)<<1|Ve>=ke));return z[dt]=ee,z[mt]=re,E}function pj(E){Array.isArray(E)||(E=Array.from(E));const a=E.length,y=new Float64Array(a),x=new Float64Array(a),b=new Float64Array(a);let z=1/0,ee=1/0,re=1/0,ae=-1/0,oe=-1/0,de=-1/0;for(let ge=0,ye,De,ke,ze;ge<a;++ge)isNaN(De=+this._x.call(null,ye=E[ge]))||isNaN(ke=+this._y.call(null,ye))||isNaN(ze=+this._z.call(null,ye))||(y[ge]=De,x[ge]=ke,b[ge]=ze,De<z&&(z=De),De>ae&&(ae=De),ke<ee&&(ee=ke),ke>oe&&(oe=ke),ze<re&&(re=ze),ze>de&&(de=ze));if(z>ae||ee>oe||re>de)return this;this.cover(z,ee,re).cover(ae,oe,de);for(let ge=0;ge<a;++ge)JM(this,y[ge],x[ge],b[ge],E[ge]);return this}function yj(E,a,y){if(isNaN(E=+E)||isNaN(a=+a)||isNaN(y=+y))return this;var x=this._x0,b=this._y0,z=this._z0,ee=this._x1,re=this._y1,ae=this._z1;if(isNaN(x))ee=(x=Math.floor(E))+1,re=(b=Math.floor(a))+1,ae=(z=Math.floor(y))+1;else{for(var oe=ee-x||1,de=this._root,ge,ye;x>E||E>=ee||b>a||a>=re||z>y||y>=ae;)switch(ye=(y<z)<<2|(a<b)<<1|E<x,ge=new Array(8),ge[ye]=de,de=ge,oe*=2,ye){case 0:ee=x+oe,re=b+oe,ae=z+oe;break;case 1:x=ee-oe,re=b+oe,ae=z+oe;break;case 2:ee=x+oe,b=re-oe,ae=z+oe;break;case 3:x=ee-oe,b=re-oe,ae=z+oe;break;case 4:ee=x+oe,re=b+oe,z=ae-oe;break;case 5:x=ee-oe,re=b+oe,z=ae-oe;break;case 6:ee=x+oe,b=re-oe,z=ae-oe;break;case 7:x=ee-oe,b=re-oe,z=ae-oe;break}this._root&&this._root.length&&(this._root=de)}return this._x0=x,this._y0=b,this._z0=z,this._x1=ee,this._y1=re,this._z1=ae,this}function Ej(){var E=[];return this.visit(function(a){if(!a.length)do E.push(a.data);while(a=a.next)}),E}function Aj(E){return arguments.length?this.cover(+E[0][0],+E[0][1],+E[0][2]).cover(+E[1][0],+E[1][1],+E[1][2]):isNaN(this._x0)?void 0:[[this._x0,this._y0,this._z0],[this._x1,this._y1,this._z1]]}function Vl(E,a,y,x,b,z,ee){this.node=E,this.x0=a,this.y0=y,this.z0=x,this.x1=b,this.y1=z,this.z1=ee}function xj(E,a,y,x){var b,z=this._x0,ee=this._y0,re=this._z0,ae,oe,de,ge,ye,De,ke=this._x1,ze=this._y1,We=this._z1,Ve=[],Ze=this._root,Ye,et;for(Ze&&Ve.push(new Vl(Ze,z,ee,re,ke,ze,We)),x==null?x=1/0:(z=E-x,ee=a-x,re=y-x,ke=E+x,ze=a+x,We=y+x,x*=x);Ye=Ve.pop();)if(!(!(Ze=Ye.node)||(ae=Ye.x0)>ke||(oe=Ye.y0)>ze||(de=Ye.z0)>We||(ge=Ye.x1)<z||(ye=Ye.y1)<ee||(De=Ye.z1)<re))if(Ze.length){var st=(ae+ge)/2,ht=(oe+ye)/2,mt=(de+De)/2;Ve.push(new Vl(Ze[7],st,ht,mt,ge,ye,De),new Vl(Ze[6],ae,ht,mt,st,ye,De),new Vl(Ze[5],st,oe,mt,ge,ht,De),new Vl(Ze[4],ae,oe,mt,st,ht,De),new Vl(Ze[3],st,ht,de,ge,ye,mt),new Vl(Ze[2],ae,ht,de,st,ye,mt),new Vl(Ze[1],st,oe,de,ge,ht,mt),new Vl(Ze[0],ae,oe,de,st,ht,mt)),(et=(y>=mt)<<2|(a>=ht)<<1|E>=st)&&(Ye=Ve[Ve.length-1],Ve[Ve.length-1]=Ve[Ve.length-1-et],Ve[Ve.length-1-et]=Ye)}else{var dt=E-+this._x.call(null,Ze.data),Ot=a-+this._y.call(null,Ze.data),_t=y-+this._z.call(null,Ze.data),wt=dt*dt+Ot*Ot+_t*_t;if(wt<x){var $t=Math.sqrt(x=wt);z=E-$t,ee=a-$t,re=y-$t,ke=E+$t,ze=a+$t,We=y+$t,b=Ze.data}}return b}const Sj=(E,a,y,x,b,z)=>Math.sqrt(Eg(E-x,2)+Eg(a-b,2)+Eg(y-z,2));function bj(E,a,y,x){const b=[],z=E-x,ee=a-x,re=y-x,ae=E+x,oe=a+x,de=y+x;return this.visit((ge,ye,De,ke,ze,We,Ve)=>{if(!ge.length)do{const Ze=ge.data;Sj(E,a,y,this._x(Ze),this._y(Ze),this._z(Ze))<=x&&b.push(Ze)}while(ge=ge.next);return ye>ae||De>oe||ke>de||ze<z||We<ee||Ve<re}),b}function Cj(E){if(isNaN(ye=+this._x.call(null,E))||isNaN(De=+this._y.call(null,E))||isNaN(ke=+this._z.call(null,E)))return this;var a,y=this._root,x,b,z,ee=this._x0,re=this._y0,ae=this._z0,oe=this._x1,de=this._y1,ge=this._z1,ye,De,ke,ze,We,Ve,Ze,Ye,et,st,ht;if(!y)return this;if(y.length)for(;;){if((Ze=ye>=(ze=(ee+oe)/2))?ee=ze:oe=ze,(Ye=De>=(We=(re+de)/2))?re=We:de=We,(et=ke>=(Ve=(ae+ge)/2))?ae=Ve:ge=Ve,a=y,!(y=y[st=et<<2|Ye<<1|Ze]))return this;if(!y.length)break;(a[st+1&7]||a[st+2&7]||a[st+3&7]||a[st+4&7]||a[st+5&7]||a[st+6&7]||a[st+7&7])&&(x=a,ht=st)}for(;y.data!==E;)if(b=y,!(y=y.next))return this;return(z=y.next)&&delete y.next,b?(z?b.next=z:delete b.next,this):a?(z?a[st]=z:delete a[st],(y=a[0]||a[1]||a[2]||a[3]||a[4]||a[5]||a[6]||a[7])&&y===(a[7]||a[6]||a[5]||a[4]||a[3]||a[2]||a[1]||a[0])&&!y.length&&(x?x[ht]=y:this._root=y),this):(this._root=z,this)}function Pj(E){for(var a=0,y=E.length;a<y;++a)this.remove(E[a]);return this}function wj(){return this._root}function Mj(){var E=0;return this.visit(function(a){if(!a.length)do++E;while(a=a.next)}),E}function Dj(E){var a=[],y,x=this._root,b,z,ee,re,ae,oe,de;for(x&&a.push(new Vl(x,this._x0,this._y0,this._z0,this._x1,this._y1,this._z1));y=a.pop();)if(!E(x=y.node,z=y.x0,ee=y.y0,re=y.z0,ae=y.x1,oe=y.y1,de=y.z1)&&x.length){var ge=(z+ae)/2,ye=(ee+oe)/2,De=(re+de)/2;(b=x[7])&&a.push(new Vl(b,ge,ye,De,ae,oe,de)),(b=x[6])&&a.push(new Vl(b,z,ye,De,ge,oe,de)),(b=x[5])&&a.push(new Vl(b,ge,ee,De,ae,ye,de)),(b=x[4])&&a.push(new Vl(b,z,ee,De,ge,ye,de)),(b=x[3])&&a.push(new Vl(b,ge,ye,re,ae,oe,De)),(b=x[2])&&a.push(new Vl(b,z,ye,re,ge,oe,De)),(b=x[1])&&a.push(new Vl(b,ge,ee,re,ae,ye,De)),(b=x[0])&&a.push(new Vl(b,z,ee,re,ge,ye,De))}return this}function Ij(E){var a=[],y=[],x;for(this._root&&a.push(new Vl(this._root,this._x0,this._y0,this._z0,this._x1,this._y1,this._z1));x=a.pop();){var b=x.node;if(b.length){var z,ee=x.x0,re=x.y0,ae=x.z0,oe=x.x1,de=x.y1,ge=x.z1,ye=(ee+oe)/2,De=(re+de)/2,ke=(ae+ge)/2;(z=b[0])&&a.push(new Vl(z,ee,re,ae,ye,De,ke)),(z=b[1])&&a.push(new Vl(z,ye,re,ae,oe,De,ke)),(z=b[2])&&a.push(new Vl(z,ee,De,ae,ye,de,ke)),(z=b[3])&&a.push(new Vl(z,ye,De,ae,oe,de,ke)),(z=b[4])&&a.push(new Vl(z,ee,re,ke,ye,De,ge)),(z=b[5])&&a.push(new Vl(z,ye,re,ke,oe,De,ge)),(z=b[6])&&a.push(new Vl(z,ee,De,ke,ye,de,ge)),(z=b[7])&&a.push(new Vl(z,ye,De,ke,oe,de,ge))}y.push(x)}for(;x=y.pop();)E(x.node,x.x0,x.y0,x.z0,x.x1,x.y1,x.z1);return this}function Oj(E){return E[0]}function Tj(E){return arguments.length?(this._x=E,this):this._x}function Lj(E){return E[1]}function Bj(E){return arguments.length?(this._y=E,this):this._y}function Nj(E){return E[2]}function Rj(E){return arguments.length?(this._z=E,this):this._z}function qM(E,a,y,x){var b=new dS(a==null?Oj:a,y==null?Lj:y,x==null?Nj:x,NaN,NaN,NaN,NaN,NaN,NaN);return E==null?b:b.addAll(E)}function dS(E,a,y,x,b,z,ee,re,ae){this._x=E,this._y=a,this._z=y,this._x0=x,this._y0=b,this._z0=z,this._x1=ee,this._y1=re,this._z1=ae,this._root=void 0}function $M(E){for(var a={data:E.data},y=a;E=E.next;)y=y.next={data:E.data};return a}var yc=qM.prototype=dS.prototype;yc.copy=function(){var E=new dS(this._x,this._y,this._z,this._x0,this._y0,this._z0,this._x1,this._y1,this._z1),a=this._root,y,x;if(!a)return E;if(!a.length)return E._root=$M(a),E;for(y=[{source:a,target:E._root=new Array(8)}];a=y.pop();)for(var b=0;b<8;++b)(x=a.source[b])&&(x.length?y.push({source:x,target:a.target[b]=new Array(8)}):a.target[b]=$M(x));return E},yc.add=mj,yc.addAll=pj,yc.cover=yj,yc.data=Ej,yc.extent=Aj,yc.find=xj,yc.findAllWithinRadius=bj,yc.remove=Cj,yc.removeAll=Pj,yc.root=wj,yc.size=Mj,yc.visit=Dj,yc.visitAfter=Ij,yc.x=Tj,yc.y=Bj,yc.z=Rj;const Fj=.81,fS=.1;function kj(E,a,y,x,b=2){const z=a/y,ee=E.getAllNodes(),re=ee.map((de,ge)=>{const{nodeStrength:ye,x:De,y:ke,z:ze,size:We}=de.data;return{x:De,y:ke,z:ze,size:We,index:ge,id:de.id,vx:0,vy:0,vz:0,weight:z*ye}}),ae=(b===2?c1(re,de=>de.x,de=>de.y):qM(re,de=>de.x,de=>de.y,de=>de.z)).visitAfter(_j),oe=new Map;return re.forEach(de=>{oe.set(de.id,de),jj(de,ae,b)}),re.map((de,ge)=>{const{id:ye,data:De}=ee[ge],{mass:ke=1}=De;x[ye]={x:de.vx/ke,y:de.vy/ke,z:de.vz/ke}}),x}function _j(E){let a=0,y=0,x=0,b=0,z=0;const ee=E.length;if(ee){for(let re=0;re<ee;re++){const ae=E[re];ae&&ae.weight&&(a+=ae.weight,y+=ae.x*ae.weight,x+=ae.y*ae.weight,b+=ae.z*ae.weight,z+=ae.size*ae.weight)}E.x=y/a,E.y=x/a,E.z=b/a,E.size=z/a,E.weight=a}else{const re=E;E.x=re.data.x,E.y=re.data.y,E.z=re.data.z,E.size=re.data.size,E.weight=re.data.weight}}const zj=(E,a,y,x,b,z,ee)=>{var re;if(((re=E.data)===null||re===void 0?void 0:re.id)===z.id)return;const ae=[y,x,b][ee-1],oe=z.x-E.x||fS,de=z.y-E.y||fS,ge=z.z-E.z||fS,ye=[oe,de,ge],De=ae-a;let ke=0;for(let Ve=0;Ve<ee;Ve++)ke+=ye[Ve]*ye[Ve];const We=Math.sqrt(ke)*ke;if(De*De*Fj<ke){const Ve=E.weight/We;return z.vx+=oe*Ve,z.vy+=de*Ve,z.vz+=ge*Ve,!0}if(E.length)return!1;if(E.data!==z){const Ve=E.data.weight/We;z.vx+=oe*Ve,z.vy+=de*Ve,z.vz+=ge*Ve}};function jj(E,a,y){a.visit((x,b,z,ee,re)=>zj(x,b,z,ee,re,E,y))}const Uj={dimensions:2,maxIteration:500,gravity:10,factor:1,edgeStrength:50,nodeStrength:1e3,coulombDisScale:.005,damping:.9,maxSpeed:200,minMovement:.4,interval:.02,linkDistance:200,clusterNodeStrength:20,preventOverlap:!0,distanceThresholdMode:"mean"};class eD{constructor(a={}){this.options=a,this.id="force",this.timeInterval=0,this.judgingDistance=0,this.running=!1,this.options=Object.assign(Object.assign({},Uj),a)}execute(a,y){return(0,Nt.mG)(this,void 0,void 0,function*(){return this.genericForceLayout(!1,a,y)})}assign(a,y){return(0,Nt.mG)(this,void 0,void 0,function*(){yield this.genericForceLayout(!0,a,y)})}stop(){this.timeInterval&&typeof window!="undefined"&&window.clearInterval(this.timeInterval),this.running=!1}tick(a=this.options.maxIteration||1){if(this.lastResult)return this.lastResult;for(let x=0;(this.judgingDistance>this.lastOptions.minMovement||x<1)&&x<a;x++)this.runOneStep(this.lastCalcGraph,this.lastGraph,x,this.lastVelMap,this.lastOptions),this.updatePosition(this.lastGraph,this.lastCalcGraph,this.lastVelMap,this.lastOptions);const y={nodes:this.lastLayoutNodes,edges:this.lastLayoutEdges};return this.lastAssign&&y.nodes.forEach(x=>this.lastGraph.mergeNodeData(x.id,{x:x.data.x,y:x.data.y,z:this.options.dimensions===3?x.data.z:void 0})),y}genericForceLayout(a,y,x){return(0,Nt.mG)(this,void 0,void 0,function*(){const b=Object.assign(Object.assign({},this.options),x),z=y.getAllNodes(),ee=y.getAllEdges(),re=this.formatOptions(b,y),{dimensions:ae,width:oe,height:de,nodeSize:ge,getMass:ye,nodeStrength:De,edgeStrength:ke,linkDistance:ze}=re,We=z.map((dt,Ot)=>Object.assign(Object.assign({},dt),{data:Object.assign(Object.assign({},dt.data),{x:ji(dt.data.x)?dt.data.x:Math.random()*oe,y:ji(dt.data.y)?dt.data.y:Math.random()*de,z:ji(dt.data.z)?dt.data.z:Math.random()*Math.sqrt(oe*de),size:ge(dt)||30,mass:ye(dt),nodeStrength:De(dt)})})),Ve=ee.map(dt=>Object.assign(Object.assign({},dt),{data:Object.assign(Object.assign({},dt.data),{edgeStrength:ke(dt),linkDistance:ze(dt,y.getNode(dt.source),y.getNode(dt.target))})}));if(!(z!=null&&z.length))return this.lastResult={nodes:[],edges:ee},{nodes:[],edges:ee};const Ze={};z.forEach((dt,Ot)=>{Ze[dt.id]={x:0,y:0,z:0}});const Ye=new ku({nodes:We,edges:Ve});this.formatCentripetal(re,Ye);const{maxIteration:et,minMovement:st,onTick:ht}=re;if(this.lastLayoutNodes=We,this.lastLayoutEdges=Ve,this.lastAssign=a,this.lastGraph=y,this.lastCalcGraph=Ye,this.lastOptions=re,this.lastVelMap=Ze,typeof window=="undefined")return;let mt=0;return new Promise(dt=>{this.timeInterval=window.setInterval(()=>{(!z||!this.running)&&dt({nodes:hS(y,We),edges:ee}),this.runOneStep(Ye,y,mt,Ze,re),this.updatePosition(y,Ye,Ze,re),a&&We.forEach(Ot=>y.mergeNodeData(Ot.id,{x:Ot.data.x,y:Ot.data.y,z:ae===3?Ot.data.z:void 0})),ht==null||ht({nodes:hS(y,We),edges:ee}),mt++,(mt>=et||this.judgingDistance<st)&&(window.clearInterval(this.timeInterval),dt({nodes:hS(y,We),edges:ee}))},0),this.running=!0})})}formatOptions(a,y){const x=Object.assign({},a),{width:b,height:z,getMass:ee}=a;x.width=!b&&typeof window!="undefined"?window.innerWidth:b,x.height=!z&&typeof window!="undefined"?window.innerHeight:z,a.center||(x.center=[x.width/2,x.height/2]),ee||(x.getMass=ae=>{let oe=1;ji(ae==null?void 0:ae.data.mass)&&(oe=ae==null?void 0:ae.data.mass);const de=y.getDegree(ae.id,"both");return!de||de<5?oe:de*5*oe}),x.nodeSize=sS(a.nodeSize,a.nodeSpacing);const re=a.linkDistance?l0(1,a.linkDistance):ae=>1+x.nodeSize(y.getNode(ae.source))+x.nodeSize(y.getNode(ae.target));return x.linkDistance=re,x.nodeStrength=l0(1,a.nodeStrength),x.edgeStrength=l0(1,a.edgeStrength),x}formatCentripetal(a,y){const{dimensions:x,centripetalOptions:b,center:z,clusterNodeStrength:ee,leafCluster:re,clustering:ae,nodeClusterBy:oe}=a,de=y.getAllNodes(),ge=b||{leaf:2,single:2,others:1,center:Ve=>({x:z[0],y:z[1],z:x===3?z[2]:void 0})};typeof ee!="function"&&(a.clusterNodeStrength=Ve=>ee);let ye,De;if(re&&oe&&(ye=tD(y,oe),De=Array.from(new Set(de==null?void 0:de.map(Ve=>Ve.data[oe])))||[],a.centripetalOptions=Object.assign(ge,{single:100,leaf:Ve=>{const{siblingLeaves:Ze,sameTypeLeaves:Ye}=ye[Ve.id]||{};return(Ye==null?void 0:Ye.length)===(Ze==null?void 0:Ze.length)||(De==null?void 0:De.length)===1?1:a.clusterNodeStrength(Ve)},others:1,center:Ve=>{const Ze=y.getDegree(Ve.id,"both");if(!Ze)return{x:100,y:100,z:0};let Ye;if(Ze===1){const{sameTypeLeaves:et=[]}=ye[Ve.id]||{};et.length===1?Ye=void 0:et.length>1&&(Ye=nD(et))}else Ye=void 0;return{x:Ye==null?void 0:Ye.x,y:Ye==null?void 0:Ye.y,z:Ye==null?void 0:Ye.z}}})),ae&&oe){ye||(ye=tD(y,oe)),De||(De=Array.from(new Set(de.map(Ze=>Ze.data[oe])))),De=De.filter(Ze=>Ze!==void 0);const Ve={};De.forEach(Ze=>{const Ye=de.filter(et=>et.data[oe]===Ze).map(et=>y.getNode(et.id));Ve[Ze]=nD(Ye)}),a.centripetalOptions=Object.assign(ge,{single:Ze=>a.clusterNodeStrength(Ze),leaf:Ze=>a.clusterNodeStrength(Ze),others:Ze=>a.clusterNodeStrength(Ze),center:Ze=>{const Ye=Ve[Ze.data[oe]];return{x:Ye==null?void 0:Ye.x,y:Ye==null?void 0:Ye.y,z:Ye==null?void 0:Ye.z}}})}const{leaf:ke,single:ze,others:We}=a.centripetalOptions||{};ke&&typeof ke!="function"&&(a.centripetalOptions.leaf=()=>ke),ze&&typeof ze!="function"&&(a.centripetalOptions.single=()=>ze),We&&typeof We!="function"&&(a.centripetalOptions.others=()=>We)}runOneStep(a,y,x,b,z){const ee={},re=a.getAllNodes(),ae=a.getAllEdges();if(!(re!=null&&re.length))return;const{monitor:oe}=z;if(this.calRepulsive(a,ee,z),ae&&this.calAttractive(a,ee,z),this.calGravity(a,y,ee,z),this.updateVelocity(a,ee,b,z),oe){const de=this.calTotalEnergy(ee,re);oe({energy:de,nodes:y.getAllNodes(),edges:y.getAllEdges(),iterations:x})}}calTotalEnergy(a,y){if(!(y!=null&&y.length))return 0;let x=0;return y.forEach((b,z)=>{const ee=a[b.id].x,re=a[b.id].y,ae=this.options.dimensions===3?a[b.id].z:0,oe=ee*ee+re*re+ae*ae,{mass:de=1}=b.data;x+=de*oe*.5}),x}calRepulsive(a,y,x){const{dimensions:b,factor:z,coulombDisScale:ee}=x;kj(a,z,ee*ee,y,b)}calAttractive(a,y,x){const{dimensions:b,nodeSize:z}=x;a.getAllEdges().forEach((ee,re)=>{const{source:ae,target:oe}=ee,de=a.getNode(ae),ge=a.getNode(oe);if(!de||!ge)return;let ye=ge.data.x-de.data.x,De=ge.data.y-de.data.y,ke=b===3?ge.data.z-de.data.z:0;!ye&&!De&&(ye=Math.random()*.01,De=Math.random()*.01,b===3&&!ke&&(ke=Math.random()*.01));const ze=Math.sqrt(ye*ye+De*De+ke*ke);if(ze<z(de)+z(ge))return;const We=ye/ze,Ve=De/ze,Ze=ke/ze,{linkDistance:Ye=200,edgeStrength:et=200}=ee.data||{},ht=(Ye-ze)*et,mt=de.data.mass||1,dt=ge.data.mass||1,Ot=1/mt,_t=1/dt,wt=We*ht,$t=Ve*ht,gn=Ze*ht;y[ae].x-=wt*Ot,y[ae].y-=$t*Ot,y[ae].z-=gn*Ot,y[oe].x+=wt*_t,y[oe].y+=$t*_t,y[oe].z+=gn*_t})}calGravity(a,y,x,b){const{getCenter:z}=b,ee=a.getAllNodes(),re=y.getAllNodes(),ae=y.getAllEdges(),{width:oe,height:de,center:ge,gravity:ye,centripetalOptions:De}=b;ee&&ee.forEach(ke=>{const{id:ze,data:We}=ke,{mass:Ve,x:Ze,y:Ye,z:et}=We,st=y.getNode(ze);let ht=0,mt=0,dt=0,Ot=ye;const _t=a.getDegree(ze,"in"),wt=a.getDegree(ze,"out"),$t=a.getDegree(ze,"both"),gn=z==null?void 0:z(st,$t);if(gn){const[Xt,Tn,er]=gn;ht=Ze-Xt,mt=Ye-Tn,Ot=er}else ht=Ze-ge[0],mt=Ye-ge[1],dt=et-ge[2];if(Ot&&(x[ze].x-=Ot*ht/Ve,x[ze].y-=Ot*mt/Ve,x[ze].z-=Ot*dt/Ve),De){const{leaf:Xt,single:Tn,others:er,center:En}=De,{x:yn,y:Cn,z:qn,centerStrength:pn}=(En==null?void 0:En(st,re,ae,oe,de))||{x:0,y:0,z:0,centerStrength:0};if(!ji(yn)||!ji(Cn))return;const lr=(Ze-yn)/Ve,Jr=(Ye-Cn)/Ve,na=(et-qn)/Ve;if(pn&&(x[ze].x-=pn*lr,x[ze].y-=pn*Jr,x[ze].z-=pn*na),$t===0){const Ar=Tn(st);if(!Ar)return;x[ze].x-=Ar*lr,x[ze].y-=Ar*Jr,x[ze].z-=Ar*na;return}if(_t===0||wt===0){const Ar=Xt(st,re,ae);if(!Ar)return;x[ze].x-=Ar*lr,x[ze].y-=Ar*Jr,x[ze].z-=Ar*na;return}const Hr=er(st);if(!Hr)return;x[ze].x-=Hr*lr,x[ze].y-=Hr*Jr,x[ze].z-=Hr*na}})}updateVelocity(a,y,x,b){const{damping:z,maxSpeed:ee,interval:re,dimensions:ae}=b,oe=a.getAllNodes();oe!=null&&oe.length&&oe.forEach(de=>{const{id:ge}=de;let ye=(x[ge].x+y[ge].x*re)*z||.01,De=(x[ge].y+y[ge].y*re)*z||.01,ke=ae===3?(x[ge].z+y[ge].z*re)*z||.01:0;const ze=Math.sqrt(ye*ye+De*De+ke*ke);if(ze>ee){const We=ee/ze;ye=We*ye,De=We*De,ke=We*ke}x[ge]={x:ye,y:De,z:ke}})}updatePosition(a,y,x,b){const{distanceThresholdMode:z,interval:ee,dimensions:re}=b,ae=y.getAllNodes();if(!(ae!=null&&ae.length)){this.judgingDistance=0;return}let oe=0;z==="max"?this.judgingDistance=-1/0:z==="min"&&(this.judgingDistance=1/0),ae.forEach(de=>{const{id:ge}=de,ye=a.getNode(ge);if(ji(ye.data.fx)&&ji(ye.data.fy)){y.mergeNodeData(ge,{x:ye.data.fx,y:ye.data.fy,z:re===3?ye.data.fz:void 0});return}const De=x[ge].x*ee,ke=x[ge].y*ee,ze=re===3?x[ge].z*ee:0;y.mergeNodeData(ge,{x:de.data.x+De,y:de.data.y+ke,z:de.data.z+ze});const We=Math.sqrt(De*De+ke*ke+ze*ze);switch(z){case"max":this.judgingDistance<We&&(this.judgingDistance=We);break;case"min":this.judgingDistance>We&&(this.judgingDistance=We);break;default:oe=oe+We;break}}),(!z||z==="mean")&&(this.judgingDistance=oe/ae.length)}}const tD=(E,a)=>{const y=E.getAllNodes();if(!(y!=null&&y.length))return{};const x={};return y.forEach((b,z)=>{E.getDegree(b.id,"both")===1&&(x[b.id]=Wj(E,"leaf",b,a))}),x},Wj=(E,a,y,x)=>{const b=E.getDegree(y.id,"in"),z=E.getDegree(y.id,"out");let ee=y,re=[];b===0?(ee=E.getSuccessors(y.id)[0],re=E.getNeighbors(ee.id)):z===0&&(ee=E.getPredecessors(y.id)[0],re=E.getNeighbors(ee.id)),re=re.filter(oe=>E.getDegree(oe.id,"in")===0||E.getDegree(oe.id,"out")===0);const ae=Gj(E,a,x,y,re);return{coreNode:ee,siblingLeaves:re,sameTypeLeaves:ae}},Gj=(E,a,y,x,b)=>{const z=x.data[y]||"";let ee=(b==null?void 0:b.filter(re=>re.data[y]===z))||[];return a==="leaf"&&(ee=ee.filter(re=>E.getDegree(re.id,"in")===0||E.getDegree(re.id,"out")===0)),ee},nD=E=>{const a={x:0,y:0};E.forEach(x=>{const{x:b,y:z}=x.data;a.x+=b||0,a.y+=z||0});const y=E.length||1;return{x:a.x/y,y:a.y/y}},hS=(E,a)=>a.map(y=>{const{id:x,data:b}=y,z=E.getNode(x);return Object.assign(Object.assign({},z),{data:Object.assign(Object.assign({},z.data),{x:b.x,y:b.y,z:b.z})})});var Ys=Te(49529);const rne=Ys.XA,ane=Ys.a_,ine=Ys.yQ,one=Ys.Hs,sne=Ys.Ec,lne=Ys.dx,une=Ys.LU,cne=Ys.Rm,sg=Ys.y3,dne=Ys.qK,fne=Ys.pb,hne=Ys.j,gne=Ys.sO,vne=Ys.BZ,mne=Ys.EK,pne=Ys.Db,yne=Ys.Fx,Ene=Ys.tU,Ane=Ys.Ym,xne=Ys.rs,Sne=Ys.QR,bne=Ys.TB,Cne=Ys.oH,rD=Ys.Sc,Pne=Ys.BN,wne=Ys.it,Mne=Ys.$r,Dne=Ys.QM,Ine=Ys.AV;var One=(Ys.y3,Ys.y3);const Tne=Ys.GH,Lne=Ys.SO,Bne=Ys.uZ,Nne=Ys.yU,Rne=Ys.F1,Fne=Ys.re,aD=E=>{const a=[],y=E.length;for(let x=0;x<y;x+=1){a[x]=[];for(let b=0;b<y;b+=1)x===b?a[x][b]=0:E[x][b]===0||!E[x][b]?a[x][b]=1/0:a[x][b]=E[x][b]}for(let x=0;x<y;x+=1)for(let b=0;b<y;b+=1)for(let z=0;z<y;z+=1)a[b][z]>a[b][x]+a[x][z]&&(a[b][z]=a[b][x]+a[x][z]);return a},iD=(E,a)=>{const{nodes:y,edges:x}=E,b=[],z={};if(!y)throw new Error("invalid nodes data!");return y&&y.forEach((ee,re)=>{z[ee.id]=re;const ae=[];b.push(ae)}),x==null||x.forEach(ee=>{const{source:re,target:ae}=ee,oe=z[re],de=z[ae];oe===void 0||de===void 0||(b[oe][de]=1,a||(b[de][oe]=1))}),b},Hj=(E,a)=>{const y=[];return E.forEach(x=>{const b=[];x.forEach(z=>{b.push(z*a)}),y.push(b)}),y},Vj=E=>{let a=1/0,y=1/0,x=-1/0,b=-1/0;return E.forEach(z=>{let ee=z.data.size;Eh(ee)?ee.length===1&&(ee=[ee[0],ee[0]]):ji(ee)?ee=[ee,ee]:(ee===void 0||isNaN(ee))&&(ee=[30,30]);const re=[ee[0]/2,ee[1]/2],ae=z.data.x-re[0],oe=z.data.x+re[0],de=z.data.y-re[1],ge=z.data.y+re[1];a>ae&&(a=ae),y>de&&(y=de),x<oe&&(x=oe),b<ge&&(b=ge)}),{minX:a,minY:y,maxX:x,maxY:b}},oD=(E,a)=>Math.sqrt((E.x-a.x)*(E.x-a.x)+(E.y-a.y)*(E.y-a.y)),gS=(E,a,y,x="TB",b,z={})=>{if(!(a!=null&&a.length))return;const{stopBranchFn:ee,stopAllFn:re}=z;for(let ae=0;ae<a.length;ae++){const oe=a[ae];if(E.hasNode(oe.id)&&!(ee!=null&&ee(oe))){if(re!=null&&re(oe))return;x==="TB"&&y(oe),gS(E,E.getChildren(oe.id,b),y,x,b,z),x!=="TB"&&y(oe)}}},Kj={center:[0,0],linkDistance:50};class sD{constructor(a={}){this.options=a,this.id="mds",this.options=Object.assign(Object.assign({},Kj),a)}execute(a,y){return(0,Nt.mG)(this,void 0,void 0,function*(){return this.genericMDSLayout(!1,a,y)})}assign(a,y){return(0,Nt.mG)(this,void 0,void 0,function*(){yield this.genericMDSLayout(!0,a,y)})}genericMDSLayout(a,y,x){return(0,Nt.mG)(this,void 0,void 0,function*(){const b=Object.assign(Object.assign({},this.options),x),{center:z=[0,0],linkDistance:ee=50}=b,re=y.getAllNodes(),ae=y.getAllEdges();if(!(re!=null&&re.length)||re.length===1)return u0(y,a,z);const oe=iD({nodes:re,edges:ae},!1),de=aD(oe);Zj(de);const ge=Hj(de,ee),ye=Qj(ge),De=[];return ye.forEach((ze,We)=>{const Ve=Td(re[We]);Ve.data.x=ze[0]+z[0],Ve.data.y=ze[1]+z[1],De.push(Ve)}),a&&De.forEach(ze=>y.mergeNodeData(ze.id,{x:ze.data.x,y:ze.data.y})),{nodes:De,edges:ae}})}}const Zj=E=>{let a=-999999;E.forEach(y=>{y.forEach(x=>{x!==1/0&&a<x&&(a=x)})}),E.forEach((y,x)=>{y.forEach((b,z)=>{b===1/0&&(E[x][z]=a)})})},Qj=E=>{const y=sg.mul(sg.pow(E,2),-.5),x=y.mean("row"),b=y.mean("column"),z=y.mean();y.add(z).subRowVector(x).subColumnVector(b);const ee=new rD(y),re=sg.sqrt(ee.diagonalMatrix).diagonal();return ee.leftSingularVectors.toJSON().map(ae=>sg.mul([ae],[re]).toJSON()[0].splice(0,2))};function vS(E){return!!E.tick&&!!E.stop}const Yj={gForce:!0,force2:!0,d3force:!0,fruchterman:!0,forceAtlas2:!0,force:!0,"graphin-force":!0},Xj={center:[0,0],comboPadding:10,treeKey:"combo"};class Jj{constructor(a={}){this.options=a,this.id="comboCombined",this.options=Object.assign(Object.assign({},Xj),a)}execute(a,y){return(0,Nt.mG)(this,void 0,void 0,function*(){return this.genericComboCombinedLayout(!1,a,y)})}assign(a,y){return(0,Nt.mG)(this,void 0,void 0,function*(){yield this.genericComboCombinedLayout(!0,a,y)})}genericComboCombinedLayout(a,y,x){return(0,Nt.mG)(this,void 0,void 0,function*(){const b=this.initVals(Object.assign(Object.assign({},this.options),x)),{center:z,treeKey:ee,outerLayout:re}=b,ae=y.getAllNodes().filter(dt=>!dt.data._isCombo),oe=y.getAllNodes().filter(dt=>dt.data._isCombo),de=y.getAllEdges(),ge=ae==null?void 0:ae.length;if(!ge||ge===1)return u0(y,a,z);const ye=[],De=new Map;ae.forEach(dt=>{De.set(dt.id,dt)});const ke=new Map;oe.forEach(dt=>{ke.set(dt.id,dt)});const ze=new Map,We=this.getInnerGraphs(y,ee,De,ke,de,b,ze);yield Promise.all(We);const Ve=new Map,Ze=[],Ye=new Map;let et=!0;y.getRoots(ee).forEach(dt=>{const Ot=ze.get(dt.id),_t=ke.get(dt.id)||De.get(dt.id),wt={id:dt.id,data:Object.assign(Object.assign({},dt.data),{x:Ot.data.x||_t.data.x,y:Ot.data.y||_t.data.y,fx:Ot.data.fx||_t.data.fx,fy:Ot.data.fy||_t.data.fy,mass:Ot.data.mass||_t.data.mass,size:Ot.data.size})};Ze.push(wt),Ve.set(dt.id,!0),!isNaN(wt.data.x)&&wt.data.x!==0&&!isNaN(wt.data.y)&&wt.data.y!==0?et=!1:(wt.data.x=Math.random()*100,wt.data.y=Math.random()*100),gS(y,[dt],$t=>{$t.id!==dt.id&&Ye.set($t.id,dt.id)},"TB",ee)});const st=[];de.forEach(dt=>{const Ot=Ye.get(dt.source)||dt.source,_t=Ye.get(dt.target)||dt.target;Ot!==_t&&Ve.has(Ot)&&Ve.has(_t)&&st.push({id:dt.id,source:Ot,target:_t,data:{}})});let ht;if(Ze!=null&&Ze.length){if(Ze.length===1)Ze[0].data.x=z[0],Ze[0].data.y=z[1];else{const dt=new ku({nodes:Ze,edges:st}),Ot=re||new eD;et&&Yj[Ot.id]&&(yield(Ze.length<100?new sD:new uS).assign(dt));const _t=Object.assign({center:z,kg:5,preventOverlap:!0,animate:!1},Ot.id==="force"?{gravity:1,factor:4,linkDistance:(wt,$t,gn)=>{const Xt=Math.max(...$t.data.size)||32,Tn=Math.max(...gn.data.size)||32;return Xt/2+Tn/2+200}}:{});ht=yield lD(Ot,dt,_t)}ze.forEach(dt=>{var Ot;const _t=ht.nodes.find(gn=>gn.id===dt.id);if(_t){const{x:gn,y:Xt}=_t.data;dt.data.visited=!0,dt.data.x=gn,dt.data.y=Xt,ye.push({id:dt.id,data:{x:gn,y:Xt}})}const{x:wt,y:$t}=dt.data;(Ot=dt.data.nodes)===null||Ot===void 0||Ot.forEach(gn=>{ye.push({id:gn.id,data:{x:gn.data.x+wt,y:gn.data.y+$t}})})}),ze.forEach(({data:dt})=>{const{x:Ot,y:_t,visited:wt,nodes:$t}=dt;$t==null||$t.forEach(gn=>{if(!wt){const Xt=ye.find(Tn=>Tn.id===gn.id);Xt.data.x+=Ot||0,Xt.data.y+=_t||0}})})}return a&&ye.forEach(dt=>{y.mergeNodeData(dt.id,{x:dt.data.x,y:dt.data.y})}),{nodes:ye,edges:de}})}initVals(a){const y=Object.assign({},a),{nodeSize:x,spacing:b,comboPadding:z}=a;let ee,re;if(ji(b)?re=()=>b:Xi(b)?re=b:re=()=>0,y.spacing=re,!x)ee=oe=>{const de=re(oe);return oe.size?Eh(oe.size)?((oe.size[0]>oe.size[1]?oe.size[0]:oe.size[1])+de)/2:Tu(oe.size)?((oe.size.width>oe.size.height?oe.size.width:oe.size.height)+de)/2:(oe.size+de)/2:32+de/2};else if(Xi(x))ee=oe=>{const de=x(oe),ge=re(oe);return Eh(oe.size)?((oe.size[0]>oe.size[1]?oe.size[0]:oe.size[1])+ge)/2:((de||32)+ge)/2};else if(Eh(x)){const de=(x[0]>x[1]?x[0]:x[1])/2;ee=ge=>de+re(ge)/2}else{const oe=x/2;ee=de=>oe+re(de)/2}y.nodeSize=ee;let ae;return ji(z)?ae=()=>z:Eh(z)?ae=()=>Math.max.apply(null,z):Xi(z)?ae=z:ae=()=>0,y.comboPadding=ae,y}getInnerGraphs(a,y,x,b,z,ee,re){const{nodeSize:ae,comboPadding:oe,spacing:de,innerLayout:ge}=ee,ye=ge||new uS({}),De={center:[0,0],preventOverlap:!0,nodeSpacing:de},ke=[],ze=We=>{let Ve=(oe==null?void 0:oe(We))||10;return Eh(Ve)&&(Ve=Math.max(...Ve)),{size:Ve?[Ve*2,Ve*2]:[30,30],padding:Ve}};return a.getRoots(y).forEach(We=>{re.set(We.id,{id:We.id,data:{nodes:[],size:ze(We).size}});let Ve=Promise.resolve();gS(a,[We],Ze=>{var Ye;if(!Ze.data._isCombo)return;const{size:et,padding:st}=ze(Ze);if(!(!((Ye=a.getChildren(Ze.id,y))===null||Ye===void 0)&&Ye.length))re.set(Ze.id,{id:Ze.id,data:Object.assign(Object.assign({},Ze.data),{size:et})});else{const ht=re.get(Ze.id);re.set(Ze.id,{id:Ze.id,data:Object.assign({nodes:[]},ht==null?void 0:ht.data)});const mt=new Map,dt=a.getChildren(Ze.id,y).map(wt=>{if(wt.data._isCombo)return re.has(wt.id)||re.set(wt.id,{id:wt.id,data:Object.assign({},wt.data)}),mt.set(wt.id,!0),re.get(wt.id);const $t=x.get(wt.id)||b.get(wt.id);return mt.set(wt.id,!0),{id:wt.id,data:Object.assign(Object.assign({},$t.data),wt.data)}}),Ot={nodes:dt,edges:z.filter(wt=>mt.has(wt.source)&&mt.has(wt.target))};let _t=1/0;dt.forEach(wt=>{var $t;let{size:gn}=wt.data;gn||(gn=(($t=re.get(wt.id))===null||$t===void 0?void 0:$t.data.size)||(ae==null?void 0:ae(wt))||[30,30]),ji(gn)&&(gn=[gn,gn]);const[Xt,Tn]=gn;_t>Xt&&(_t=Xt),_t>Tn&&(_t=Tn),wt.data.size=gn}),Ve=Ve.then(()=>(0,Nt.mG)(this,void 0,void 0,function*(){const wt=new ku(Ot);yield lD(ye,wt,De,!0);const{minX:$t,minY:gn,maxX:Xt,maxY:Tn}=Vj(dt),er={x:(Xt+$t)/2,y:(Tn+gn)/2};Ot.nodes.forEach(yn=>{yn.data.x-=er.x,yn.data.y-=er.y});const En=[Math.max(Xt-$t,_t)+st*2,Math.max(Tn-gn,_t)+st*2];re.get(Ze.id).data.size=En,re.get(Ze.id).data.nodes=dt}))}return!0},"BT",y),ke.push(Ve)}),ke}}function lD(E,a,y,x){var b;return(0,Nt.mG)(this,void 0,void 0,function*(){return vS(E)?(E.execute(a,y),E.stop(),E.tick((b=y.iterations)!==null&&b!==void 0?b:300)):x?yield E.assign(a,y):yield E.execute(a,y)})}function ec(E){return function(){return E}}function lg(E){return(E()-.5)*1e-6}function qj(E){return E.index}function uD(E,a){var y=E.get(a);if(!y)throw new Error("node not found: "+a);return y}function $j(E){var a=qj,y=ge,x,b=ec(30),z,ee,re,ae,oe,de=1;E==null&&(E=[]);function ge(We){return 1/Math.min(re[We.source.index],re[We.target.index])}function ye(We){for(var Ve=0,Ze=E.length;Ve<de;++Ve)for(var Ye=0,et,st,ht,mt,dt,Ot,_t;Ye<Ze;++Ye)et=E[Ye],st=et.source,ht=et.target,mt=ht.x+ht.vx-st.x-st.vx||lg(oe),dt=ht.y+ht.vy-st.y-st.vy||lg(oe),Ot=Math.sqrt(mt*mt+dt*dt),Ot=(Ot-z[Ye])/Ot*We*x[Ye],mt*=Ot,dt*=Ot,ht.vx-=mt*(_t=ae[Ye]),ht.vy-=dt*_t,st.vx+=mt*(_t=1-_t),st.vy+=dt*_t}function De(){if(ee){var We,Ve=ee.length,Ze=E.length,Ye=new Map(ee.map((st,ht)=>[a(st,ht,ee),st])),et;for(We=0,re=new Array(Ve);We<Ze;++We)et=E[We],et.index=We,typeof et.source!="object"&&(et.source=uD(Ye,et.source)),typeof et.target!="object"&&(et.target=uD(Ye,et.target)),re[et.source.index]=(re[et.source.index]||0)+1,re[et.target.index]=(re[et.target.index]||0)+1;for(We=0,ae=new Array(Ze);We<Ze;++We)et=E[We],ae[We]=re[et.source.index]/(re[et.source.index]+re[et.target.index]);x=new Array(Ze),ke(),z=new Array(Ze),ze()}}function ke(){if(ee)for(var We=0,Ve=E.length;We<Ve;++We)x[We]=+y(E[We],We,E)}function ze(){if(ee)for(var We=0,Ve=E.length;We<Ve;++We)z[We]=+b(E[We],We,E)}return ye.initialize=function(We,Ve){ee=We,oe=Ve,De()},ye.links=function(We){return arguments.length?(E=We,De(),ye):E},ye.id=function(We){return arguments.length?(a=We,ye):a},ye.iterations=function(We){return arguments.length?(de=+We,ye):de},ye.strength=function(We){return arguments.length?(y=typeof We=="function"?We:ec(+We),ke(),ye):y},ye.distance=function(We){return arguments.length?(b=typeof We=="function"?We:ec(+We),ze(),ye):b},ye}var eU={value:()=>{}};function cD(){for(var E=0,a=arguments.length,y={},x;E<a;++E){if(!(x=arguments[E]+"")||x in y||/[\s.]/.test(x))throw new Error("illegal type: "+x);y[x]=[]}return new d1(y)}function d1(E){this._=E}function tU(E,a){return E.trim().split(/^|\s+/).map(function(y){var x="",b=y.indexOf(".");if(b>=0&&(x=y.slice(b+1),y=y.slice(0,b)),y&&!a.hasOwnProperty(y))throw new Error("unknown type: "+y);return{type:y,name:x}})}d1.prototype=cD.prototype={constructor:d1,on:function(E,a){var y=this._,x=tU(E+"",y),b,z=-1,ee=x.length;if(arguments.length<2){for(;++z<ee;)if((b=(E=x[z]).type)&&(b=nU(y[b],E.name)))return b;return}if(a!=null&&typeof a!="function")throw new Error("invalid callback: "+a);for(;++z<ee;)if(b=(E=x[z]).type)y[b]=dD(y[b],E.name,a);else if(a==null)for(b in y)y[b]=dD(y[b],E.name,null);return this},copy:function(){var E={},a=this._;for(var y in a)E[y]=a[y].slice();return new d1(E)},call:function(E,a){if((b=arguments.length-2)>0)for(var y=new Array(b),x=0,b,z;x<b;++x)y[x]=arguments[x+2];if(!this._.hasOwnProperty(E))throw new Error("unknown type: "+E);for(z=this._[E],x=0,b=z.length;x<b;++x)z[x].value.apply(a,y)},apply:function(E,a,y){if(!this._.hasOwnProperty(E))throw new Error("unknown type: "+E);for(var x=this._[E],b=0,z=x.length;b<z;++b)x[b].value.apply(a,y)}};function nU(E,a){for(var y=0,x=E.length,b;y<x;++y)if((b=E[y]).name===a)return b.value}function dD(E,a,y){for(var x=0,b=E.length;x<b;++x)if(E[x].name===a){E[x]=eU,E=E.slice(0,x).concat(E.slice(x+1));break}return y!=null&&E.push({name:a,value:y}),E}var rU=cD,tv=0,Pm=0,wm=0,fD=1e3,f1,Mm,h1=0,c0=0,g1=0,Dm=typeof performance=="object"&&performance.now?performance:Date,hD=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(E){setTimeout(E,17)};function gD(){return c0||(hD(aU),c0=Dm.now()+g1)}function aU(){c0=0}function mS(){this._call=this._time=this._next=null}mS.prototype=vD.prototype={constructor:mS,restart:function(E,a,y){if(typeof E!="function")throw new TypeError("callback is not a function");y=(y==null?gD():+y)+(a==null?0:+a),!this._next&&Mm!==this&&(Mm?Mm._next=this:f1=this,Mm=this),this._call=E,this._time=y,pS()},stop:function(){this._call&&(this._call=null,this._time=1/0,pS())}};function vD(E,a,y){var x=new mS;return x.restart(E,a,y),x}function iU(){gD(),++tv;for(var E=f1,a;E;)(a=c0-E._time)>=0&&E._call.call(void 0,a),E=E._next;--tv}function mD(){c0=(h1=Dm.now())+g1,tv=Pm=0;try{iU()}finally{tv=0,sU(),c0=0}}function oU(){var E=Dm.now(),a=E-h1;a>fD&&(g1-=a,h1=E)}function sU(){for(var E,a=f1,y,x=1/0;a;)a._call?(x>a._time&&(x=a._time),E=a,a=a._next):(y=a._next,a._next=null,a=E?E._next=y:f1=y);Mm=E,pS(x)}function pS(E){if(!tv){Pm&&(Pm=clearTimeout(Pm));var a=E-c0;a>24?(E<1/0&&(Pm=setTimeout(mD,E-Dm.now()-g1)),wm&&(wm=clearInterval(wm))):(wm||(h1=Dm.now(),wm=setInterval(oU,fD)),tv=1,hD(mD))}}const lU=1664525,uU=1013904223,pD=4294967296;function cU(){let E=1;return()=>(E=(lU*E+uU)%pD)/pD}function dU(E){return E.x}function fU(E){return E.y}var hU=10,gU=Math.PI*(3-Math.sqrt(5));function vU(E){var a,y=1,x=.001,b=1-Math.pow(x,1/300),z=0,ee=.6,re=new Map,ae=vD(ge),oe=rU("tick","end"),de=cU();E==null&&(E=[]);function ge(){ye(),oe.call("tick",a),y<x&&(ae.stop(),oe.call("end",a))}function ye(ze){var We,Ve=E.length,Ze;ze===void 0&&(ze=1);for(var Ye=0;Ye<ze;++Ye)for(y+=(z-y)*b,re.forEach(function(et){et(y)}),We=0;We<Ve;++We)Ze=E[We],Ze.fx==null?Ze.x+=Ze.vx*=ee:(Ze.x=Ze.fx,Ze.vx=0),Ze.fy==null?Ze.y+=Ze.vy*=ee:(Ze.y=Ze.fy,Ze.vy=0);return a}function De(){for(var ze=0,We=E.length,Ve;ze<We;++ze){if(Ve=E[ze],Ve.index=ze,Ve.fx!=null&&(Ve.x=Ve.fx),Ve.fy!=null&&(Ve.y=Ve.fy),isNaN(Ve.x)||isNaN(Ve.y)){var Ze=hU*Math.sqrt(.5+ze),Ye=ze*gU;Ve.x=Ze*Math.cos(Ye),Ve.y=Ze*Math.sin(Ye)}(isNaN(Ve.vx)||isNaN(Ve.vy))&&(Ve.vx=Ve.vy=0)}}function ke(ze){return ze.initialize&&ze.initialize(E,de),ze}return De(),a={tick:ye,restart:function(){return ae.restart(ge),a},stop:function(){return ae.stop(),a},nodes:function(ze){return arguments.length?(E=ze,De(),re.forEach(ke),a):E},alpha:function(ze){return arguments.length?(y=+ze,a):y},alphaMin:function(ze){return arguments.length?(x=+ze,a):x},alphaDecay:function(ze){return arguments.length?(b=+ze,a):+b},alphaTarget:function(ze){return arguments.length?(z=+ze,a):z},velocityDecay:function(ze){return arguments.length?(ee=1-ze,a):1-ee},randomSource:function(ze){return arguments.length?(de=ze,re.forEach(ke),a):de},force:function(ze,We){return arguments.length>1?(We==null?re.delete(ze):re.set(ze,ke(We)),a):re.get(ze)},find:function(ze,We,Ve){var Ze=0,Ye=E.length,et,st,ht,mt,dt;for(Ve==null?Ve=1/0:Ve*=Ve,Ze=0;Ze<Ye;++Ze)mt=E[Ze],et=ze-mt.x,st=We-mt.y,ht=et*et+st*st,ht<Ve&&(dt=mt,Ve=ht);return dt},on:function(ze,We){return arguments.length>1?(oe.on(ze,We),a):oe.on(ze)}}}function mU(){var E,a,y,x,b=ec(-30),z,ee=1,re=1/0,ae=.81;function oe(De){var ke,ze=E.length,We=c1(E,dU,fU).visitAfter(ge);for(x=De,ke=0;ke<ze;++ke)a=E[ke],We.visit(ye)}function de(){if(E){var De,ke=E.length,ze;for(z=new Array(ke),De=0;De<ke;++De)ze=E[De],z[ze.index]=+b(ze,De,E)}}function ge(De){var ke=0,ze,We,Ve=0,Ze,Ye,et;if(De.length){for(Ze=Ye=et=0;et<4;++et)(ze=De[et])&&(We=Math.abs(ze.value))&&(ke+=ze.value,Ve+=We,Ze+=We*ze.x,Ye+=We*ze.y);De.x=Ze/Ve,De.y=Ye/Ve}else{ze=De,ze.x=ze.data.x,ze.y=ze.data.y;do ke+=z[ze.data.index];while(ze=ze.next)}De.value=ke}function ye(De,ke,ze,We){if(!De.value)return!0;var Ve=De.x-a.x,Ze=De.y-a.y,Ye=We-ke,et=Ve*Ve+Ze*Ze;if(Ye*Ye/ae<et)return et<re&&(Ve===0&&(Ve=lg(y),et+=Ve*Ve),Ze===0&&(Ze=lg(y),et+=Ze*Ze),et<ee&&(et=Math.sqrt(ee*et)),a.vx+=Ve*De.value*x/et,a.vy+=Ze*De.value*x/et),!0;if(De.length||et>=re)return;(De.data!==a||De.next)&&(Ve===0&&(Ve=lg(y),et+=Ve*Ve),Ze===0&&(Ze=lg(y),et+=Ze*Ze),et<ee&&(et=Math.sqrt(ee*et)));do De.data!==a&&(Ye=z[De.data.index]*x/et,a.vx+=Ve*Ye,a.vy+=Ze*Ye);while(De=De.next)}return oe.initialize=function(De,ke){E=De,y=ke,de()},oe.strength=function(De){return arguments.length?(b=typeof De=="function"?De:ec(+De),de(),oe):b},oe.distanceMin=function(De){return arguments.length?(ee=De*De,oe):Math.sqrt(ee)},oe.distanceMax=function(De){return arguments.length?(re=De*De,oe):Math.sqrt(re)},oe.theta=function(De){return arguments.length?(ae=De*De,oe):Math.sqrt(ae)},oe}function pU(E,a){var y,x=1;E==null&&(E=0),a==null&&(a=0);function b(){var z,ee=y.length,re,ae=0,oe=0;for(z=0;z<ee;++z)re=y[z],ae+=re.x,oe+=re.y;for(ae=(ae/ee-E)*x,oe=(oe/ee-a)*x,z=0;z<ee;++z)re=y[z],re.x-=ae,re.y-=oe}return b.initialize=function(z){y=z},b.x=function(z){return arguments.length?(E=+z,b):E},b.y=function(z){return arguments.length?(a=+z,b):a},b.strength=function(z){return arguments.length?(x=+z,b):x},b}function yU(E){return E.x+E.vx}function EU(E){return E.y+E.vy}function AU(E){var a,y,x,b=1,z=1;typeof E!="function"&&(E=ec(E==null?1:+E));function ee(){for(var oe,de=a.length,ge,ye,De,ke,ze,We,Ve=0;Ve<z;++Ve)for(ge=c1(a,yU,EU).visitAfter(re),oe=0;oe<de;++oe)ye=a[oe],ze=y[ye.index],We=ze*ze,De=ye.x+ye.vx,ke=ye.y+ye.vy,ge.visit(Ze);function Ze(Ye,et,st,ht,mt){var dt=Ye.data,Ot=Ye.r,_t=ze+Ot;if(dt){if(dt.index>ye.index){var wt=De-dt.x-dt.vx,$t=ke-dt.y-dt.vy,gn=wt*wt+$t*$t;gn<_t*_t&&(wt===0&&(wt=lg(x),gn+=wt*wt),$t===0&&($t=lg(x),gn+=$t*$t),gn=(_t-(gn=Math.sqrt(gn)))/gn*b,ye.vx+=(wt*=gn)*(_t=(Ot*=Ot)/(We+Ot)),ye.vy+=($t*=gn)*_t,dt.vx-=wt*(_t=1-_t),dt.vy-=$t*_t)}return}return et>De+_t||ht<De-_t||st>ke+_t||mt<ke-_t}}function re(oe){if(oe.data)return oe.r=y[oe.data.index];for(var de=oe.r=0;de<4;++de)oe[de]&&oe[de].r>oe.r&&(oe.r=oe[de].r)}function ae(){if(a){var oe,de=a.length,ge;for(y=new Array(de),oe=0;oe<de;++oe)ge=a[oe],y[ge.index]=+E(ge,oe,a)}}return ee.initialize=function(oe,de){a=oe,x=de,ae()},ee.iterations=function(oe){return arguments.length?(z=+oe,ee):z},ee.strength=function(oe){return arguments.length?(b=+oe,ee):b},ee.radius=function(oe){return arguments.length?(E=typeof oe=="function"?oe:ec(+oe),ae(),ee):E},ee}function xU(E,a,y){var x,b=ec(.1),z,ee;typeof E!="function"&&(E=ec(+E)),a==null&&(a=0),y==null&&(y=0);function re(oe){for(var de=0,ge=x.length;de<ge;++de){var ye=x[de],De=ye.x-a||1e-6,ke=ye.y-y||1e-6,ze=Math.sqrt(De*De+ke*ke),We=(ee[de]-ze)*z[de]*oe/ze;ye.vx+=De*We,ye.vy+=ke*We}}function ae(){if(x){var oe,de=x.length;for(z=new Array(de),ee=new Array(de),oe=0;oe<de;++oe)ee[oe]=+E(x[oe],oe,x),z[oe]=isNaN(ee[oe])?0:+b(x[oe],oe,x)}}return re.initialize=function(oe){x=oe,ae()},re.strength=function(oe){return arguments.length?(b=typeof oe=="function"?oe:ec(+oe),ae(),re):b},re.radius=function(oe){return arguments.length?(E=typeof oe=="function"?oe:ec(+oe),ae(),re):E},re.x=function(oe){return arguments.length?(a=+oe,re):a},re.y=function(oe){return arguments.length?(y=+oe,re):y},re}function SU(E){var a=ec(.1),y,x,b;typeof E!="function"&&(E=ec(E==null?0:+E));function z(re){for(var ae=0,oe=y.length,de;ae<oe;++ae)de=y[ae],de.vx+=(b[ae]-de.x)*x[ae]*re}function ee(){if(y){var re,ae=y.length;for(x=new Array(ae),b=new Array(ae),re=0;re<ae;++re)x[re]=isNaN(b[re]=+E(y[re],re,y))?0:+a(y[re],re,y)}}return z.initialize=function(re){y=re,ee()},z.strength=function(re){return arguments.length?(a=typeof re=="function"?re:ec(+re),ee(),z):a},z.x=function(re){return arguments.length?(E=typeof re=="function"?re:ec(+re),ee(),z):E},z}function bU(E){var a=ec(.1),y,x,b;typeof E!="function"&&(E=ec(E==null?0:+E));function z(re){for(var ae=0,oe=y.length,de;ae<oe;++ae)de=y[ae],de.vy+=(b[ae]-de.y)*x[ae]*re}function ee(){if(y){var re,ae=y.length;for(x=new Array(ae),b=new Array(ae),re=0;re<ae;++re)x[re]=isNaN(b[re]=+E(y[re],re,y))?0:+a(y[re],re,y)}}return z.initialize=function(re){y=re,ee()},z.strength=function(re){return arguments.length?(a=typeof re=="function"?re:ec(+re),ee(),z):a},z.y=function(re){return arguments.length?(E=typeof re=="function"?re:ec(+re),ee(),z):E},z}class CU{constructor(a){this.id="d3-force",this.config={inputNodeAttrs:["x","y","vx","vy","fx","fy"],outputNodeAttrs:["x","y","vx","vy"],simulationAttrs:["alpha","alphaMin","alphaDecay","alphaTarget","velocityDecay","randomSource"]},this.forceMap={link:$j,manyBody:mU,center:pU,collide:AU,radial:xU,x:SU,y:bU},this.options={link:{id:y=>y.id},manyBody:{},center:{x:0,y:0}},this.context={options:{},assign:!1,nodes:[],edges:[]},vc(this.options,a),this.options.forceSimulation&&(this.simulation=this.options.forceSimulation)}execute(a,y){return(0,Nt.mG)(this,void 0,void 0,function*(){return this.genericLayout(!1,a,y)})}assign(a,y){return(0,Nt.mG)(this,void 0,void 0,function*(){yield this.genericLayout(!0,a,y)})}stop(){this.simulation.stop()}tick(a){return this.simulation.tick(a),this.getResult()}restart(){this.simulation.restart()}setFixedPosition(a,y){const x=this.context.nodes.find(b=>b.id===a);x&&y.forEach((b,z)=>{if(typeof b=="number"||b===null){const ee=["fx","fy","fz"][z];x[ee]=b}})}getOptions(a){var y,x;const b=vc({},this.options,a);return b.collide&&((y=b.collide)===null||y===void 0?void 0:y.radius)===void 0&&(b.collide=b.collide||{},b.collide.radius=(x=b.nodeSize)!==null&&x!==void 0?x:10),b.iterations===void 0&&(b.link&&b.link.iterations===void 0&&(b.iterations=b.link.iterations),b.collide&&b.collide.iterations===void 0&&(b.iterations=b.collide.iterations)),this.context.options=b,b}genericLayout(a,y,x){var b;return(0,Nt.mG)(this,void 0,void 0,function*(){const z=this.getOptions(x),ee=y.getAllNodes().map(({id:de,data:ge})=>Object.assign(Object.assign({id:de},ge),i0(ge.data,this.config.inputNodeAttrs))),re=y.getAllEdges().map(de=>Object.assign({},de));Object.assign(this.context,{assign:a,nodes:ee,edges:re,graph:y});const ae=new Promise(de=>{this.resolver=de}),oe=this.setSimulation(z);return oe.nodes(ee),(b=oe.force("link"))===null||b===void 0||b.links(re),ae})}getResult(){const{assign:a,nodes:y,edges:x,graph:b}=this.context,z=y.map(re=>({id:re.id,data:Object.assign(Object.assign({},re.data),i0(re,this.config.outputNodeAttrs))})),ee=x.map(({id:re,source:ae,target:oe,data:de})=>({id:re,source:typeof ae=="object"?ae.id:ae,target:typeof oe=="object"?oe.id:oe,data:de}));return a&&z.forEach(re=>b.mergeNodeData(re.id,re.data)),{nodes:z,edges:ee}}initSimulation(){return vU()}setSimulation(a){const y=this.simulation||this.options.forceSimulation||this.initSimulation();return this.simulation||(this.simulation=y.on("tick",()=>{var x;return(x=a.onTick)===null||x===void 0?void 0:x.call(a,this.getResult())}).on("end",()=>{var x;return(x=this.resolver)===null||x===void 0?void 0:x.call(this,this.getResult())})),yD(y,this.config.simulationAttrs.map(x=>[x,a[x]])),Object.entries(this.forceMap).forEach(([x,b])=>{const z=x;if(a[x]){let ee=y.force(z);ee||(ee=b(),y.force(z,ee)),yD(ee,Object.entries(a[z]))}else y.force(z,null)}),y}}const yD=(E,a)=>a.reduce((y,[x,b])=>!y[x]||b===void 0?y:y[x].call(E,b),E);var ED=Te(92546),PU=Te.n(ED);class v1{constructor(a){this.id="dagre",this.options={},Object.assign(this.options,v1.defaultOptions,a)}execute(a,y){return(0,Nt.mG)(this,void 0,void 0,function*(){return this.genericDagreLayout(!1,a,Object.assign(Object.assign({},this.options),y))})}assign(a,y){return(0,Nt.mG)(this,void 0,void 0,function*(){yield this.genericDagreLayout(!0,a,Object.assign(Object.assign({},this.options),y))})}genericDagreLayout(a,y,x){return(0,Nt.mG)(this,void 0,void 0,function*(){const{nodeSize:b}=x,z=new ED.graphlib.Graph;z.setGraph(x),z.setDefaultEdgeLabel(()=>({}));const ee=y.getAllNodes(),re=y.getAllEdges();[...ee,...re].some(({id:oe})=>ji(oe))&&console.error("Dagre layout only support string id, it will convert number to string."),y.getAllNodes().forEach(oe=>{const{id:de}=oe,ge=Object.assign({},oe.data);if(b!==void 0){const[ye,De]=Cm(Xi(b)?b(oe):b);Object.assign(ge,{width:ye,height:De})}z.setNode(de.toString(),ge)}),y.getAllEdges().forEach(({id:oe,source:de,target:ge})=>{z.setEdge(de.toString(),ge.toString(),{id:oe})}),PU().layout(z);const ae={nodes:[],edges:[]};return z.nodes().forEach(oe=>{const de=z.node(oe);ae.nodes.push({id:oe,data:de}),a&&y.mergeNodeData(oe,de)}),z.edges().forEach(oe=>{const de=z.edge(oe),{id:ge}=de,ye=(0,Nt._T)(de,["id"]),{v:De,w:ke}=oe;ae.edges.push({id:ge,source:De,target:ke,data:ye}),a&&y.mergeEdgeData(ge,ye)}),ae})}}v1.defaultOptions={};class yS{constructor(a){this.id=a.id||0,this.rx=a.rx,this.ry=a.ry,this.fx=0,this.fy=0,this.mass=a.mass,this.degree=a.degree,this.g=a.g||0}distanceTo(a){const y=this.rx-a.rx,x=this.ry-a.ry;return Math.hypot(y,x)}setPos(a,y){this.rx=a,this.ry=y}resetForce(){this.fx=0,this.fy=0}addForce(a){const y=a.rx-this.rx,x=a.ry-this.ry;let b=Math.hypot(y,x);b=b<1e-4?1e-4:b;const z=this.g*(this.degree+1)*(a.degree+1)/b;this.fx+=z*y/b,this.fy+=z*x/b}in(a){return a.contains(this.rx,this.ry)}add(a){const y=this.mass+a.mass,x=(this.rx*this.mass+a.rx*a.mass)/y,b=(this.ry*this.mass+a.ry*a.mass)/y,z=this.degree+a.degree,ee={rx:x,ry:b,mass:y,degree:z};return new yS(ee)}}class nv{constructor(a){this.xmid=a.xmid,this.ymid=a.ymid,this.length=a.length,this.massCenter=a.massCenter||[0,0],this.mass=a.mass||1}getLength(){return this.length}contains(a,y){const x=this.length/2;return a<=this.xmid+x&&a>=this.xmid-x&&y<=this.ymid+x&&y>=this.ymid-x}NW(){const a=this.xmid-this.length/4,y=this.ymid+this.length/4,x=this.length/2,b={xmid:a,ymid:y,length:x};return new nv(b)}NE(){const a=this.xmid+this.length/4,y=this.ymid+this.length/4,x=this.length/2,b={xmid:a,ymid:y,length:x};return new nv(b)}SW(){const a=this.xmid-this.length/4,y=this.ymid-this.length/4,x=this.length/2,b={xmid:a,ymid:y,length:x};return new nv(b)}SE(){const a=this.xmid+this.length/4,y=this.ymid-this.length/4,x=this.length/2,b={xmid:a,ymid:y,length:x};return new nv(b)}}class rv{constructor(a){this.body=null,this.quad=null,this.NW=null,this.NE=null,this.SW=null,this.SE=null,this.theta=.5,a!=null&&(this.quad=a)}insert(a){if(this.body==null){this.body=a;return}this._isExternal()?(this.quad&&(this.NW=new rv(this.quad.NW()),this.NE=new rv(this.quad.NE()),this.SW=new rv(this.quad.SW()),this.SE=new rv(this.quad.SE())),this._putBody(this.body),this._putBody(a),this.body=this.body.add(a)):(this.body=this.body.add(a),this._putBody(a))}_putBody(a){this.quad&&(a.in(this.quad.NW())&&this.NW?this.NW.insert(a):a.in(this.quad.NE())&&this.NE?this.NE.insert(a):a.in(this.quad.SW())&&this.SW?this.SW.insert(a):a.in(this.quad.SE())&&this.SE&&this.SE.insert(a))}_isExternal(){return this.NW==null&&this.NE==null&&this.SW==null&&this.SE==null}updateForce(a){if(!(this.body==null||a===this.body))if(this._isExternal())a.addForce(this.body);else{const y=this.quad?this.quad.getLength():0,x=this.body.distanceTo(a);y/x<this.theta?a.addForce(this.body):(this.NW&&this.NW.updateForce(a),this.NE&&this.NE.updateForce(a),this.SW&&this.SW.updateForce(a),this.SE&&this.SE.updateForce(a))}}}const wU={center:[0,0],width:300,height:300,kr:5,kg:1,mode:"normal",preventOverlap:!1,dissuadeHubs:!1,maxIteration:0,ks:.1,ksmax:10,tao:.1};class MU{constructor(a={}){this.options=a,this.id="forceAtlas2",this.options=Object.assign(Object.assign({},wU),a)}execute(a,y){return(0,Nt.mG)(this,void 0,void 0,function*(){return this.genericForceAtlas2Layout(!1,a,y)})}assign(a,y){return(0,Nt.mG)(this,void 0,void 0,function*(){yield this.genericForceAtlas2Layout(!0,a,y)})}genericForceAtlas2Layout(a,y,x){return(0,Nt.mG)(this,void 0,void 0,function*(){const b=y.getAllEdges(),z=y.getAllNodes(),ee=this.formatOptions(x,z.length),{width:re,height:ae,prune:oe,maxIteration:de,nodeSize:ge,center:ye}=ee;if(!(z!=null&&z.length)||z.length===1)return u0(y,a,ye);const De=z.map(Ve=>Td(Ve,[re,ae])),ke=b.filter(Ve=>{const{source:Ze,target:Ye}=Ve;return Ze!==Ye}),ze=new ku({nodes:De,edges:ke}),We=this.getSizes(ze,ge);if(this.run(ze,y,de,We,a,ee),oe){for(let Ze=0;Ze<ke.length;Ze+=1){const{source:Ye,target:et}=ke[Ze],st=ze.getDegree(Ye),ht=ze.getDegree(Ye);if(st<=1){const mt=ze.getNode(et);ze.mergeNodeData(Ye,{x:mt.data.x,y:mt.data.y})}else if(ht<=1){const mt=ze.getNode(Ye);ze.mergeNodeData(et,{x:mt.data.x,y:mt.data.y})}}const Ve=Object.assign(Object.assign({},ee),{prune:!1,barnesHut:!1});this.run(ze,y,100,We,a,Ve)}return{nodes:De,edges:b}})}getSizes(a,y){const x=a.getAllNodes(),b={};for(let z=0;z<x.length;z+=1){const ee=x[z];b[ee.id]=sS(y,void 0)(ee)}return b}formatOptions(a={},y){const x=Object.assign(Object.assign({},this.options),a),{center:b,width:z,height:ee,barnesHut:re,prune:ae,maxIteration:oe,kr:de,kg:ge}=x;return x.width=!z&&typeof window!="undefined"?window.innerWidth:z,x.height=!ee&&typeof window!="undefined"?window.innerHeight:ee,x.center=b||[x.width/2,x.height/2],re===void 0&&y>250&&(x.barnesHut=!0),ae===void 0&&y>100&&(x.prune=!0),oe===0&&!ae?(x.maxIteration=250,y<=200&&y>100?x.maxIteration=1e3:y>200&&(x.maxIteration=1200)):oe===0&&ae&&(x.maxIteration=100,y<=200&&y>100?x.maxIteration=500:y>200&&(x.maxIteration=950)),de||(x.kr=50,y>100&&y<=500?x.kr=20:y>500&&(x.kr=1)),ge||(x.kg=20,y>100&&y<=500?x.kg=10:y>500&&(x.kg=1)),x}run(a,y,x,b,z,ee){const{kr:re,barnesHut:ae,onTick:oe}=ee,de=a.getAllNodes();let ge=0,ye=x;const De={},ke={},ze={};for(let We=0;We<de.length;We+=1){const{data:Ve,id:Ze}=de[We];if(De[Ze]=[0,0],ae){const Ye={id:We,rx:Ve.x,ry:Ve.y,mass:1,g:re,degree:a.getDegree(Ze)};ze[Ze]=new yS(Ye)}}for(;ye>0;)ge=this.oneStep(a,{iter:ye,preventOverlapIters:50,krPrime:100,sg:ge,forces:De,preForces:ke,bodies:ze,sizes:b},ee),ye--,oe==null||oe({nodes:de,edges:y.getAllEdges()});return a}oneStep(a,y,x){const{iter:b,preventOverlapIters:z,krPrime:ee,sg:re,preForces:ae,bodies:oe,sizes:de}=y;let{forces:ge}=y;const{preventOverlap:ye,barnesHut:De}=x,ke=a.getAllNodes();for(let ze=0;ze<ke.length;ze+=1){const{id:We}=ke[ze];ae[We]=[...ge[We]],ge[We]=[0,0]}return ge=this.getAttrForces(a,b,z,de,ge,x),De&&(ye&&b>z||!ye)?ge=this.getOptRepGraForces(a,ge,oe,x):ge=this.getRepGraForces(a,b,z,ge,ee,de,x),this.updatePos(a,ge,ae,re,x)}getAttrForces(a,y,x,b,z,ee){const{preventOverlap:re,dissuadeHubs:ae,mode:oe,prune:de}=ee,ge=a.getAllEdges();for(let ye=0;ye<ge.length;ye+=1){const{source:De,target:ke}=ge[ye],ze=a.getNode(De),We=a.getNode(ke),Ve=a.getDegree(De),Ze=a.getDegree(ke);if(de&&(Ve<=1||Ze<=1))continue;const Ye=[We.data.x-ze.data.x,We.data.y-ze.data.y];let et=Math.hypot(Ye[0],Ye[1]);et=et<1e-4?1e-4:et,Ye[0]=Ye[0]/et,Ye[1]=Ye[1]/et,re&&y<x&&(et=et-b[De]-b[ke]);let st=et,ht=st;oe==="linlog"&&(st=Math.log(1+et),ht=st),ae&&(st=et/Ve,ht=et/Ze),re&&y<x&&et<=0?(st=0,ht=0):re&&y<x&&et>0&&(st=et,ht=et),z[De][0]+=st*Ye[0],z[ke][0]-=ht*Ye[0],z[De][1]+=st*Ye[1],z[ke][1]-=ht*Ye[1]}return z}getOptRepGraForces(a,y,x,b){const{kg:z,center:ee,prune:re}=b,ae=a.getAllNodes(),oe=ae.length;let de=9e10,ge=-9e10,ye=9e10,De=-9e10;for(let Ze=0;Ze<oe;Ze+=1){const{id:Ye,data:et}=ae[Ze];re&&a.getDegree(Ye)<=1||(x[Ye].setPos(et.x,et.y),et.x>=ge&&(ge=et.x),et.x<=de&&(de=et.x),et.y>=De&&(De=et.y),et.y<=ye&&(ye=et.y))}const ke=Math.max(ge-de,De-ye),ze={xmid:(ge+de)/2,ymid:(De+ye)/2,length:ke,massCenter:ee,mass:oe},We=new nv(ze),Ve=new rv(We);for(let Ze=0;Ze<oe;Ze+=1){const{id:Ye}=ae[Ze];re&&a.getDegree(Ye)<=1||x[Ye].in(We)&&Ve.insert(x[Ye])}for(let Ze=0;Ze<oe;Ze+=1){const{id:Ye,data:et}=ae[Ze],st=a.getDegree(Ye);if(re&&st<=1)continue;x[Ye].resetForce(),Ve.updateForce(x[Ye]),y[Ye][0]-=x[Ye].fx,y[Ye][1]-=x[Ye].fy;const ht=[et.x-ee[0],et.y-ee[1]];let mt=Math.hypot(ht[0],ht[1]);mt=mt<1e-4?1e-4:mt,ht[0]=ht[0]/mt,ht[1]=ht[1]/mt;const dt=z*(st+1);y[Ye][0]-=dt*ht[0],y[Ye][1]-=dt*ht[1]}return y}getRepGraForces(a,y,x,b,z,ee,re){const{preventOverlap:ae,kr:oe,kg:de,center:ge,prune:ye}=re,De=a.getAllNodes(),ke=De.length;for(let ze=0;ze<ke;ze+=1){const We=De[ze],Ve=a.getDegree(We.id);for(let st=ze+1;st<ke;st+=1){const ht=De[st],mt=a.getDegree(ht.id);if(ye&&(Ve<=1||mt<=1))continue;const dt=[ht.data.x-We.data.x,ht.data.y-We.data.y];let Ot=Math.hypot(dt[0],dt[1]);Ot=Ot<1e-4?1e-4:Ot,dt[0]=dt[0]/Ot,dt[1]=dt[1]/Ot,ae&&y<x&&(Ot=Ot-ee[We.id]-ee[ht.id]);let _t=oe*(Ve+1)*(mt+1)/Ot;ae&&y<x&&Ot<0?_t=z*(Ve+1)*(mt+1):ae&&y<x&&Ot===0?_t=0:ae&&y<x&&Ot>0&&(_t=oe*(Ve+1)*(mt+1)/Ot),b[We.id][0]-=_t*dt[0],b[ht.id][0]+=_t*dt[0],b[We.id][1]-=_t*dt[1],b[ht.id][1]+=_t*dt[1]}const Ze=[We.data.x-ge[0],We.data.y-ge[1]],Ye=Math.hypot(Ze[0],Ze[1]);Ze[0]=Ze[0]/Ye,Ze[1]=Ze[1]/Ye;const et=de*(Ve+1);b[We.id][0]-=et*Ze[0],b[We.id][1]-=et*Ze[1]}return b}updatePos(a,y,x,b,z){const{ks:ee,tao:re,prune:ae,ksmax:oe}=z,de=a.getAllNodes(),ge=de.length,ye=[],De=[];let ke=0,ze=0,We=b;for(let Ze=0;Ze<ge;Ze+=1){const{id:Ye}=de[Ze],et=a.getDegree(Ye);if(ae&&et<=1)continue;const st=[y[Ye][0]-x[Ye][0],y[Ye][1]-x[Ye][1]],ht=Math.hypot(st[0],st[1]),mt=[y[Ye][0]+x[Ye][0],y[Ye][1]+x[Ye][1]],dt=Math.hypot(mt[0],mt[1]);ye[Ze]=ht,De[Ze]=dt/2,ke+=(et+1)*ye[Ze],ze+=(et+1)*De[Ze]}const Ve=We;We=re*ze/ke,Ve!==0&&(We=We>1.5*Ve?1.5*Ve:We);for(let Ze=0;Ze<ge;Ze+=1){const{id:Ye,data:et}=de[Ze],st=a.getDegree(Ye);if(ae&&st<=1||ji(et.fx)&&ji(et.fy))continue;let ht=ee*We/(1+We*Math.sqrt(ye[Ze])),mt=Math.hypot(y[Ye][0],y[Ye][1]);mt=mt<1e-4?1e-4:mt;const dt=oe/mt;ht=ht>dt?dt:ht;const Ot=ht*y[Ye][0],_t=ht*y[Ye][1];a.mergeNodeData(Ye,{x:et.x+Ot,y:et.y+_t})}return We}}const DU={maxIteration:1e3,gravity:10,speed:5,clustering:!1,clusterGravity:10,width:300,height:300,nodeClusterBy:"cluster"},IU=800;class OU{constructor(a={}){this.options=a,this.id="fruchterman",this.timeInterval=0,this.running=!1,this.options=Object.assign(Object.assign({},DU),a)}execute(a,y){return(0,Nt.mG)(this,void 0,void 0,function*(){return this.genericFruchtermanLayout(!1,a,y)})}assign(a,y){return(0,Nt.mG)(this,void 0,void 0,function*(){yield this.genericFruchtermanLayout(!0,a,y)})}stop(){this.timeInterval&&typeof window!="undefined"&&window.clearInterval(this.timeInterval),this.running=!1}tick(a=this.options.maxIteration||1){if(this.lastResult)return this.lastResult;for(let x=0;x<a;x++)this.runOneStep(this.lastGraph,this.lastClusterMap,this.lastOptions);const y={nodes:this.lastLayoutNodes,edges:this.lastLayoutEdges};return this.lastAssign&&y.nodes.forEach(x=>this.lastGraph.mergeNodeData(x.id,{x:x.data.x,y:x.data.y,z:this.options.dimensions===3?x.data.z:void 0})),y}genericFruchtermanLayout(a,y,x){return(0,Nt.mG)(this,void 0,void 0,function*(){if(this.running)return;const b=this.formatOptions(x),{dimensions:z,width:ee,height:re,center:ae,clustering:oe,nodeClusterBy:de,maxIteration:ge,onTick:ye}=b,De=y.getAllNodes(),ke=y.getAllEdges();if(!(De!=null&&De.length)){const Ye={nodes:[],edges:ke};return this.lastResult=Ye,Ye}if(De.length===1){a&&y.mergeNodeData(De[0].id,{x:ae[0],y:ae[1],z:z===3?ae[2]:void 0});const Ye={nodes:[Object.assign(Object.assign({},De[0]),{data:Object.assign(Object.assign({},De[0].data),{x:ae[0],y:ae[1],z:z===3?ae[2]:void 0})})],edges:ke};return this.lastResult=Ye,Ye}const ze=De.map(Ye=>Td(Ye,[ee,re])),We=new ku({nodes:ze,edges:ke}),Ve={};if(oe&&ze.forEach(Ye=>{const et=Ye.data[de];Ve[et]||(Ve[et]={name:et,cx:0,cy:0,count:0})}),this.lastLayoutNodes=ze,this.lastLayoutEdges=ke,this.lastAssign=a,this.lastGraph=We,this.lastOptions=b,this.lastClusterMap=Ve,typeof window=="undefined")return;let Ze=0;return new Promise(Ye=>{this.timeInterval=window.setInterval(()=>{if(!this.running){Ye({nodes:ze,edges:ke});return}this.runOneStep(We,Ve,b),a&&ze.forEach(({id:et,data:st})=>y.mergeNodeData(et,{x:st.x,y:st.y,z:z===3?st.z:void 0})),ye==null||ye({nodes:ze,edges:ke}),Ze++,Ze>=ge&&(window.clearInterval(this.timeInterval),Ye({nodes:ze,edges:ke}))},0),this.running=!0})})}formatOptions(a={}){const y=Object.assign(Object.assign({},this.options),a),{clustering:x,nodeClusterBy:b}=y,{center:z,width:ee,height:re}=y;return y.width=!ee&&typeof window!="undefined"?window.innerWidth:ee,y.height=!re&&typeof window!="undefined"?window.innerHeight:re,y.center=z||[y.width/2,y.height/2],y.clustering=x&&!!b,y}runOneStep(a,y,x){const{dimensions:b,height:z,width:ee,gravity:re,center:ae,speed:oe,clustering:de,nodeClusterBy:ge,clusterGravity:ye}=x,De=z*ee,ke=Math.sqrt(De)/10,ze=a.getAllNodes(),We=De/(ze.length+1),Ve=Math.sqrt(We),Ze={};if(this.applyCalculate(a,Ze,Ve,We),de){for(const et in y)y[et].cx=0,y[et].cy=0,y[et].count=0;ze.forEach(et=>{const{data:st}=et,ht=y[st[ge]];ji(st.x)&&(ht.cx+=st.x),ji(st.y)&&(ht.cy+=st.y),ht.count++});for(const et in y)y[et].cx/=y[et].count,y[et].cy/=y[et].count;const Ye=ye||re;ze.forEach((et,st)=>{const{id:ht,data:mt}=et;if(!ji(mt.x)||!ji(mt.y))return;const dt=y[mt[ge]],Ot=Math.sqrt((mt.x-dt.cx)*(mt.x-dt.cx)+(mt.y-dt.cy)*(mt.y-dt.cy)),_t=Ve*Ye;Ze[ht].x-=_t*(mt.x-dt.cx)/Ot,Ze[ht].y-=_t*(mt.y-dt.cy)/Ot})}ze.forEach((Ye,et)=>{const{id:st,data:ht}=Ye;if(!ji(ht.x)||!ji(ht.y))return;const mt=.01*Ve*re;Ze[st].x-=mt*(ht.x-ae[0]),Ze[st].y-=mt*(ht.y-ae[1]),b===3&&(Ze[st].z-=mt*(ht.z-ae[2]))}),ze.forEach((Ye,et)=>{const{id:st,data:ht}=Ye;if(ji(ht.fx)&&ji(ht.fy)){ht.x=ht.fx,ht.y=ht.fy,b===3&&(ht.z=ht.fz);return}if(!ji(ht.x)||!ji(ht.y))return;const mt=Math.sqrt(Ze[st].x*Ze[st].x+Ze[st].y*Ze[st].y+(b===3?Ze[st].z*Ze[st].z:0));if(mt>0){const dt=Math.min(ke*(oe/IU),mt);a.mergeNodeData(st,{x:ht.x+Ze[st].x/mt*dt,y:ht.y+Ze[st].y/mt*dt,z:b===3?ht.z+Ze[st].z/mt*dt:void 0})}})}applyCalculate(a,y,x,b){this.calRepulsive(a,y,b),this.calAttractive(a,y,x)}calRepulsive(a,y,x){const b=a.getAllNodes();b.forEach(({data:z,id:ee},re)=>{y[ee]={x:0,y:0,z:0},b.forEach(({data:ae,id:oe},de)=>{if(re<=de||!ji(z.x)||!ji(ae.x)||!ji(z.y)||!ji(ae.y))return;let ge=z.x-ae.x,ye=z.y-ae.y,De=this.options.dimensions===3?z.z-ae.z:0,ke=ge*ge+ye*ye+De*De;ke===0&&(ke=1,ge=.01,ye=.01,De=.01);const ze=x/ke,We=ge*ze,Ve=ye*ze,Ze=De*ze;y[ee].x+=We,y[ee].y+=Ve,y[oe].x-=We,y[oe].y-=Ve,this.options.dimensions===3&&(y[ee].z+=Ze,y[oe].z-=Ze)})})}calAttractive(a,y,x){a.getAllEdges().forEach(z=>{const{source:ee,target:re}=z;if(!ee||!re||ee===re)return;const{data:ae}=a.getNode(ee),{data:oe}=a.getNode(re);if(!ji(oe.x)||!ji(ae.x)||!ji(oe.y)||!ji(ae.y))return;const de=oe.x-ae.x,ge=oe.y-ae.y,ye=this.options.dimensions===3?oe.z-ae.z:0,De=Math.sqrt(de*de+ge*ge+ye*ye)/x,ke=de*De,ze=ge*De,We=ye*De;y[ee].x+=ke,y[ee].y+=ze,y[re].x-=ke,y[re].y-=ze,this.options.dimensions===3&&(y[ee].z+=We,y[re].z-=We)})}}const TU={begin:[0,0],preventOverlap:!0,preventOverlapPadding:10,condense:!1,rows:void 0,cols:void 0,position:void 0,sortBy:"degree",nodeSize:30,width:300,height:300};class LU{constructor(a={}){this.options=a,this.id="grid",this.options=Object.assign(Object.assign({},TU),a)}execute(a,y){return(0,Nt.mG)(this,void 0,void 0,function*(){return this.genericGridLayout(!1,a,y)})}assign(a,y){return(0,Nt.mG)(this,void 0,void 0,function*(){yield this.genericGridLayout(!0,a,y)})}genericGridLayout(a,y,x){return(0,Nt.mG)(this,void 0,void 0,function*(){const b=Object.assign(Object.assign({},this.options),x),{begin:z=[0,0],condense:ee,preventOverlapPadding:re,preventOverlap:ae,rows:oe,cols:de,nodeSpacing:ge,nodeSize:ye,width:De,height:ke,position:ze}=b;let{sortBy:We}=b;const Ve=y.getAllNodes(),Ze=y.getAllEdges(),Ye=Ve==null?void 0:Ve.length;if(!Ye||Ye===1)return u0(y,a,z);const et=Ve.map(Tn=>Td(Tn));We!=="id"&&(!al(We)||et[0].data[We]===void 0)&&(We="degree"),We==="degree"?et.sort((Tn,er)=>y.getDegree(er.id,"both")-y.getDegree(Tn.id,"both")):We==="id"?et.sort((Tn,er)=>ji(er.id)&&ji(Tn.id)?er.id-Tn.id:`${Tn.id}`.localeCompare(`${er.id}`)):et.sort((Tn,er)=>er.data[We]-Tn.data[We]);const st=!De&&typeof window!="undefined"?window.innerWidth:De,ht=!ke&&typeof window!="undefined"?window.innerHeight:ke,mt=Ye,dt={rows:oe,cols:de};if(oe!=null&&de!=null)dt.rows=oe,dt.cols=de;else if(oe!=null&&de==null)dt.rows=oe,dt.cols=Math.ceil(mt/dt.rows);else if(oe==null&&de!=null)dt.cols=de,dt.rows=Math.ceil(mt/dt.cols);else{const Tn=Math.sqrt(mt*ht/st);dt.rows=Math.round(Tn),dt.cols=Math.round(st/ht*Tn)}if(dt.rows=Math.max(dt.rows,1),dt.cols=Math.max(dt.cols,1),dt.cols*dt.rows>mt){const Tn=m1(dt),er=p1(dt);(Tn-1)*er>=mt?m1(dt,Tn-1):(er-1)*Tn>=mt&&p1(dt,er-1)}else for(;dt.cols*dt.rows<mt;){const Tn=m1(dt),er=p1(dt);(er+1)*Tn>=mt?p1(dt,er+1):m1(dt,Tn+1)}let Ot=ee?0:st/dt.cols,_t=ee?0:ht/dt.rows;if(ae||ge){const Tn=l0(10,ge),er=oS(30,ye,!1);et.forEach(En=>{(!En.data.x||!En.data.y)&&(En.data.x=0,En.data.y=0);const yn=y.getNode(En.id),[Cn,qn]=Cm(er(yn)||30),pn=Tn!==void 0?Tn(En):re,lr=Cn+pn,Jr=qn+pn;Ot=Math.max(Ot,lr),_t=Math.max(_t,Jr)})}const wt={},$t={row:0,col:0},gn={};for(let Tn=0;Tn<et.length;Tn++){const er=et[Tn];let En;if(ze&&(En=ze(y.getNode(er.id))),En&&(En.row!==void 0||En.col!==void 0)){const yn={row:En.row,col:En.col};if(yn.col===void 0)for(yn.col=0;ES(wt,yn);)yn.col++;else if(yn.row===void 0)for(yn.row=0;ES(wt,yn);)yn.row++;gn[er.id]=yn,AD(wt,yn)}BU(er,z,Ot,_t,gn,dt,$t,wt)}const Xt={nodes:et,edges:Ze};return a&&et.forEach(Tn=>{y.mergeNodeData(Tn.id,{x:Tn.data.x,y:Tn.data.y})}),Xt})}}const m1=(E,a)=>{let y;const x=E.rows||5,b=E.cols||5;return a==null?y=Math.min(x,b):Math.min(x,b)===E.rows?E.rows=a:E.cols=a,y},p1=(E,a)=>{let y;const x=E.rows||5,b=E.cols||5;return a==null?y=Math.max(x,b):Math.max(x,b)===E.rows?E.rows=a:E.cols=a,y},ES=(E,a)=>E[`c-${a.row}-${a.col}`]||!1,AD=(E,a)=>E[`c-${a.row}-${a.col}`]=!0,xD=(E,a)=>{const y=E.cols||5;a.col++,a.col>=y&&(a.col=0,a.row++)},BU=(E,a,y,x,b,z,ee,re)=>{let ae,oe;const de=b[E.id];if(de)ae=de.col*y+y/2+a[0],oe=de.row*x+x/2+a[1];else{for(;ES(re,ee);)xD(z,ee);ae=ee.col*y+y/2+a[0],oe=ee.row*x+x/2+a[1],AD(re,ee),xD(z,ee)}E.data.x=ae,E.data.y=oe},NU=(E,a,y)=>{try{const x=sg.mul(sg.pow(a,2),-.5),b=x.mean("row"),z=x.mean("column"),ee=x.mean();x.add(ee).subRowVector(b).subColumnVector(z);const re=new rD(x),ae=sg.sqrt(re.diagonalMatrix).diagonal();return re.leftSingularVectors.toJSON().map(oe=>sg.mul([oe],[ae]).toJSON()[0].splice(0,E))}catch(x){const b=[];for(let z=0;z<a.length;z++){const ee=Math.random()*y,re=Math.random()*y;b.push([ee,re])}return b}},RU=800,FU={iterations:10,height:10,width:10,speed:100,gravity:10,k:5},kU=(E,a)=>{const y=Object.assign(Object.assign({},FU),a),{positions:x,iterations:b,width:z,k:ee,speed:re=100,strictRadial:ae,focusIdx:oe,radii:de=[],nodeSizeFunc:ge}=y,ye=E.getAllNodes(),De=[],ke=z/10;for(let ze=0;ze<b;ze++)x.forEach((We,Ve)=>{De[Ve]={x:0,y:0}}),_U(ye,x,De,ee,de,ge),zU(x,De,re,ae,oe,ke,z,de);return x},_U=(E,a,y,x,b,z)=>{a.forEach((ee,re)=>{y[re]={x:0,y:0},a.forEach((ae,oe)=>{if(re===oe||b[re]!==b[oe])return;let de=ee.x-ae.x,ge=ee.y-ae.y,ye=Math.sqrt(de*de+ge*ge);if(ye===0){ye=1;const De=re>oe?1:-1;de=.01*De,ge=.01*De}if(ye<z(E[re])/2+z(E[oe])/2){const De=x*x/ye;y[re].x+=de/ye*De,y[re].y+=ge/ye*De}})})},zU=(E,a,y,x,b,z,ee,re)=>{const ae=z||ee/10;return x&&a.forEach((oe,de)=>{const ge=E[de].x-E[b].x,ye=E[de].y-E[b].y,De=Math.sqrt(ge*ge+ye*ye);let ke=ye/De,ze=-ge/De;const We=Math.sqrt(oe.x*oe.x+oe.y*oe.y);let Ve=Math.acos((ke*oe.x+ze*oe.y)/We);Ve>Math.PI/2&&(Ve-=Math.PI/2,ke*=-1,ze*=-1);const Ze=Math.cos(Ve)*We;oe.x=ke*Ze,oe.y=ze*Ze}),E.forEach((oe,de)=>{if(de===b)return;const ge=Math.sqrt(a[de].x*a[de].x+a[de].y*a[de].y);if(ge>0&&de!==b){const ye=Math.min(ae*(y/RU),ge);if(oe.x+=a[de].x/ge*ye,oe.y+=a[de].y/ge*ye,x){let De=oe.x-E[b].x,ke=oe.y-E[b].y;const ze=Math.sqrt(De*De+ke*ke);De=De/ze*re[de],ke=ke/ze*re[de],oe.x=E[b].x+De,oe.y=E[b].y+ke}}}),E},jU={maxIteration:1e3,focusNode:null,unitRadius:null,linkDistance:50,preventOverlap:!1,strictRadial:!0,maxPreventOverlapIteration:200,sortStrength:10};class UU{constructor(a={}){this.options=a,this.id="radial",this.options=Object.assign(Object.assign({},jU),a)}execute(a,y){return(0,Nt.mG)(this,void 0,void 0,function*(){return this.genericRadialLayout(!1,a,y)})}assign(a,y){return(0,Nt.mG)(this,void 0,void 0,function*(){yield this.genericRadialLayout(!0,a,y)})}genericRadialLayout(a,y,x){return(0,Nt.mG)(this,void 0,void 0,function*(){const b=Object.assign(Object.assign({},this.options),x),{width:z,height:ee,center:re,focusNode:ae,unitRadius:oe,nodeSize:de,nodeSpacing:ge,strictRadial:ye,preventOverlap:De,maxPreventOverlapIteration:ke,sortBy:ze,linkDistance:We=50,sortStrength:Ve=10,maxIteration:Ze=1e3}=b,Ye=y.getAllNodes(),et=y.getAllEdges(),st=!z&&typeof window!="undefined"?window.innerWidth:z,ht=!ee&&typeof window!="undefined"?window.innerHeight:ee,mt=re||[st/2,ht/2];if(!(Ye!=null&&Ye.length)||Ye.length===1)return u0(y,a,mt);let dt=Ye[0];if(al(ae)){for(let Wr=0;Wr<Ye.length;Wr++)if(Ye[Wr].id===ae){dt=Ye[Wr];break}}else dt=ae||Ye[0];const Ot=HU(Ye,dt.id),_t=iD({nodes:Ye,edges:et},!1),wt=aD(_t),$t=KU(wt,Ot);VU(wt,Ot,$t+1);const gn=wt[Ot];let Xt=st-mt[0]>mt[0]?mt[0]:st-mt[0],Tn=ht-mt[1]>mt[1]?mt[1]:ht-mt[1];Xt===0&&(Xt=st/2),Tn===0&&(Tn=ht/2);const er=Math.min(Xt,Tn),En=Math.max(...gn),yn=[],Cn=oe||er/En;gn.forEach((Wr,ya)=>{yn[ya]=Wr*Cn});const qn=WU(Ye,wt,We,yn,Cn,ze,Ve),pn=GU(qn),lr=NU(We,qn,We);let Jr=lr.map(([Wr,ya])=>({x:(isNaN(Wr)?Math.random()*We:Wr)-lr[Ot][0],y:(isNaN(ya)?Math.random()*We:ya)-lr[Ot][1]}));this.run(Ze,Jr,pn,qn,yn,Ot);let na;if(De){na=sS(de,ge);const Wr={nodes:Ye,nodeSizeFunc:na,positions:Jr,radii:yn,height:ht,width:st,strictRadial:!!ye,focusIdx:Ot,iterations:ke||200,k:Jr.length/4.5};Jr=kU(y,Wr)}const Hr=[];return Jr.forEach((Wr,ya)=>{const Ra=Td(Ye[ya]);Ra.data.x=Wr.x+mt[0],Ra.data.y=Wr.y+mt[1],Hr.push(Ra)}),a&&Hr.forEach(Wr=>y.mergeNodeData(Wr.id,{x:Wr.data.x,y:Wr.data.y})),{nodes:Hr,edges:et}})}run(a,y,x,b,z,ee){for(let re=0;re<=a;re++){const ae=re/a;this.oneIteration(ae,y,z,b,x,ee)}}oneIteration(a,y,x,b,z,ee){const re=1-a;y.forEach((ae,oe)=>{const de=oD(ae,{x:0,y:0}),ge=de===0?0:1/de;if(oe===ee)return;let ye=0,De=0,ke=0;y.forEach((We,Ve)=>{if(oe===Ve)return;const Ze=oD(ae,We),Ye=Ze===0?0:1/Ze,et=b[Ve][oe];ke+=z[oe][Ve],ye+=z[oe][Ve]*(We.x+et*(ae.x-We.x)*Ye),De+=z[oe][Ve]*(We.y+et*(ae.y-We.y)*Ye)});const ze=x[oe]===0?0:1/x[oe];ke*=re,ke+=a*ze*ze,ye*=re,ye+=a*ze*ae.x*ge,ae.x=ye/ke,De*=re,De+=a*ze*ae.y*ge,ae.y=De/ke})}}const WU=(E,a,y,x,b,z,ee)=>{if(!E)return[];const re=[];if(a){const ae={};a.forEach((oe,de)=>{const ge=[];oe.forEach((ye,De)=>{var ke,ze;if(de===De)ge.push(0);else if(x[de]===x[De])if(z==="data")ge.push(ye*(Math.abs(de-De)*ee)/(x[de]/b));else if(z){let We,Ve;if(ae[E[de].id])We=ae[E[de].id];else{const Ze=(z==="id"?E[de].id:(ke=E[de].data)===null||ke===void 0?void 0:ke[z])||0;al(Ze)?We=Ze.charCodeAt(0):We=Ze,ae[E[de].id]=We}if(ae[E[De].id])Ve=ae[E[De].id];else{const Ze=(z==="id"?E[De].id:(ze=E[De].data)===null||ze===void 0?void 0:ze[z])||0;al(Ze)?Ve=Ze.charCodeAt(0):Ve=Ze,ae[E[De].id]=Ve}ge.push(ye*(Math.abs(We-Ve)*ee)/(x[de]/b))}else ge.push(ye*y/(x[de]/b));else{const We=(y+b)/2;ge.push(ye*We)}}),re.push(ge)})}return re},GU=E=>{const a=E.length,y=E[0].length,x=[];for(let b=0;b<a;b++){const z=[];for(let ee=0;ee<y;ee++)E[b][ee]!==0?z.push(1/(E[b][ee]*E[b][ee])):z.push(0);x.push(z)}return x},HU=(E,a)=>{let y=-1;return E.forEach((x,b)=>{x.id===a&&(y=b)}),Math.max(y,0)},VU=(E,a,y)=>{const x=E.length;for(let b=0;b<x;b++)if(E[a][b]===1/0){E[a][b]=y,E[b][a]=y;for(let z=0;z<x;z++)E[b][z]!==1/0&&E[a][z]===1/0&&(E[a][z]=y+E[b][z],E[z][a]=y+E[b][z])}for(let b=0;b<x;b++)if(b!==a){for(let z=0;z<x;z++)if(E[b][z]===1/0){let ee=Math.abs(E[a][b]-E[a][z]);ee=ee===0?1:ee,E[b][z]=ee}}},KU=(E,a)=>{let y=0;for(let x=0;x<E[a].length;x++)E[a][x]!==1/0&&(y=E[a][x]>y?E[a][x]:y);return y},ZU={center:[0,0],width:300,height:300};class QU{constructor(a={}){this.options=a,this.id="random",this.options=Object.assign(Object.assign({},ZU),a)}execute(a,y){return(0,Nt.mG)(this,void 0,void 0,function*(){return this.genericRandomLayout(!1,a,y)})}assign(a,y){return(0,Nt.mG)(this,void 0,void 0,function*(){yield this.genericRandomLayout(!0,a,y)})}genericRandomLayout(a,y,x){return(0,Nt.mG)(this,void 0,void 0,function*(){const b=Object.assign(Object.assign({},this.options),x),{center:z,width:ee,height:re}=b,ae=y.getAllNodes(),oe=.9,de=!ee&&typeof window!="undefined"?window.innerWidth:ee,ge=!re&&typeof window!="undefined"?window.innerHeight:re,ye=z||[de/2,ge/2],De=[];return ae&&ae.forEach(ze=>{De.push({id:ze.id,data:{x:(Math.random()-.5)*oe*de+ye[0],y:(Math.random()-.5)*oe*ge+ye[1]}})}),a&&De.forEach(ze=>y.mergeNodeData(ze.id,{x:ze.data.x,y:ze.data.y})),{nodes:De,edges:y.getAllEdges()}})}}function YU(E){var a,y,x,b=E||1;function z(re,ae){++a>b&&(x=y,ee(1),++a),y[re]=ae}function ee(re){a=0,y=Object.create(null),re||(x=Object.create(null))}return ee(),{clear:ee,has:function(re){return y[re]!==void 0||x[re]!==void 0},get:function(re){var ae=y[re];if(ae!==void 0)return ae;if((ae=x[re])!==void 0)return z(re,ae),ae},set:function(re,ae){y[re]!==void 0?y[re]=ae:z(re,ae)}}}var AS=new Map;function xS(E,a,y){y===void 0&&(y=128);var x=function(){for(var b=[],z=0;z<arguments.length;z++)b[z]=arguments[z];var ee=a?a.apply(this,b):b[0];AS.has(E)||AS.set(E,YU(y));var re=AS.get(E);if(re.has(ee))return re.get(ee);var ae=E.apply(this,b);return re.set(ee,ae),ae};return x}var XU=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(de){try{oe(x.next(de))}catch(ge){ee(ge)}}function ae(de){try{oe(x.throw(de))}catch(ge){ee(ge)}}function oe(de){de.done?z(de.value):b(de.value).then(re,ae)}oe((x=x.apply(E,a||[])).next())})};class y1 extends t1{constructor(){super(...arguments),this.id="fishbone"}getRoot(){const a=this.context.model.getRootsData();if(!(Yf(a)||a.length>2))return a[0]}formatSize(a){const y=typeof a=="function"?a:()=>a;return x=>Id(y(x))}doLayout(a,y){const{hGap:x,getRibSep:b,vGap:z,nodeSize:ee,height:re}=y,{model:ae}=this.context,oe=this.formatSize(ee);let de=oe(a)[0]+b(a);const ge=(Ye,et=0)=>{var st;return et+=x*((Ye.children||[]).length+1),(st=Ye.children)===null||st===void 0||st.forEach(ht=>{var mt;(mt=ae.getNodeLikeDatum(ht).children)===null||mt===void 0||mt.forEach(Ot=>{const _t=ae.getNodeLikeDatum(Ot);et=ge(_t,et)})}),et},ye=Ye=>{if(Ye.depth===1)return de;const et=ae.getParentData(Ye.id,"tree");if(av(Ye)){const st=ae.getParentData(et.id,"tree"),ht=ze(Ye)-ze(st);return ye(et)+ht*x/z}else{const st=(et.children||[]).indexOf(Ye.id),ht=ae.getNodeData((et.children||[]).slice(st));return De(et)-ht.reduce((mt,dt)=>mt+ge(dt),0)-oe(et)[0]/2}},De=xS(Ye=>{if(SS(Ye))return oe(Ye)[0]/2;const et=ae.getParentData(Ye.id,"tree");if(av(Ye))return ye(Ye)+ge(Ye)+oe(Ye)[0]/2;{const st=ze(Ye)-ze(et),ht=x/z;return ye(Ye)+st*ht}},Ye=>Ye.id),ke=Ye=>ze(ae.getParentData(Ye,"tree")),ze=xS(Ye=>{if(SS(Ye))return re/2;if(av(Ye)){const et=ae.getParentData(Ye.id,"tree"),st=et.children.indexOf(Ye.id);if(st===0)return ke(et.id)+z;const ht=ae.getNodeLikeDatum(et.children[st-1]);if(Yf(ht.children))return ze(ht)+z;const mt=ae.getDescendantsData(ht.id);return Math.max(...mt.map(dt=>av(dt)?ke(dt.id):ze(dt)))+z}else{if(Yf(Ye.children))return ke(Ye.id)+z;const et=ae.getNodeLikeDatum(Ye.children.slice(-1)[0]);if(Yf(et.children))return ze(et)+z;const st=ae.getDescendantsData(Ye.id).slice(-1)[0];return(av(st)?ke(st.id):ze(st))+z}},Ye=>Ye.id);let We=0;const Ve={nodes:[],edges:[]},Ze=Ye=>{var et;(et=Ye.children)===null||et===void 0||et.forEach(Ot=>Ze(ae.getNodeLikeDatum(Ot)));const st=ze(Ye),ht=De(Ye);if(Ve.nodes.push({id:Ye.id,x:ht,y:st}),SS(Ye))return;const mt=ae.getRelatedEdgesData(Ye.id,"in")[0],dt=[ye(Ye),av(Ye)?st:ke(Ye.id)];Ve.edges.push({id:Br(mt),controlPoints:[dt],relatedNodeId:Ye.id}),We=Math.max(We,ht+b(Ye)),Ye.depth===1&&(de=We)};return Ze(a),Ve}placeAlterative(a,y){const x=(y.children||[]).filter((re,ae)=>ae%2!==0);if(x.length===0)return a;const{model:b}=this.context,z=a.nodes.find(re=>re.id===y.id).y,ee=re=>{const ae=b.getAncestorsData(re,"tree");if(Yf(ae))return!1;const oe=ae.length===1?re:ae[ae.length-2].id;return x.includes(oe)};a.nodes.forEach(re=>{ee(re.id)&&(re.y=2*z-re.y)}),a.edges.forEach(re=>{ee(re.relatedNodeId)&&(re.controlPoints=re.controlPoints.map(ae=>[ae[0],2*z-ae[1]]))})}rightToLeft(a,y){return a.nodes.forEach(x=>x.x=y.width-x.x),a.edges.forEach(x=>{x.controlPoints=x.controlPoints.map(b=>[y.width-b[0],b[1]])}),a}execute(a,y){return XU(this,void 0,void 0,function*(){const x=Object.assign(Object.assign(Object.assign({},y1.defaultOptions),this.options),y),{direction:b,nodeSize:z}=x,ee=this.getRoot();if(!ee)return a;const re=this.formatSize(z);x.vGap||(x.vGap=Math.max(...(a.nodes||[]).map(ye=>re(ye)[1]))),x.hGap||(x.hGap=Math.max(...(a.nodes||[]).map(ye=>re(ye)[0])));let ae=this.doLayout(ee,x);this.placeAlterative(ae,ee),b==="RL"&&(ae=this.rightToLeft(ae,x));const{model:oe}=this.context,de=[],ge=[];return ae.nodes.forEach(ye=>{const{id:De,x:ke,y:ze}=ye,We=oe.getNodeLikeDatum(De);de.push(SD(We,{x:ke,y:ze}))}),ae.edges.forEach(ye=>{const{id:De,controlPoints:ke}=ye,ze=oe.getEdgeDatum(De);ge.push(SD(ze,{controlPoints:ke}))}),{nodes:de,edges:ge}})}}y1.defaultOptions={direction:"RL",getRibSep:()=>60};const SD=(E,a)=>Object.assign(Object.assign({},E),{style:Object.assign(Object.assign({},E.style||{}),a)}),SS=E=>E.depth===0,av=E=>(E.depth||(E.depth=0))%2===0;var JU=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(de){try{oe(x.next(de))}catch(ge){ee(ge)}}function ae(de){try{oe(x.throw(de))}catch(ge){ee(ge)}}function oe(de){de.done?z(de.value):b(de.value).then(re,ae)}oe((x=x.apply(E,a||[])).next())})};class E1 extends t1{constructor(){super(...arguments),this.id="snake"}formatSize(a,y){const x=typeof y=="function"?y:()=>y;return a.reduce((b,z)=>{const[ee,re]=Id(x(z))||[0,0];return[Math.max(b[0],ee),Math.max(b[1],re)]},[0,0])}validate(a){const{nodes:y=[],edges:x=[]}=a,b={},z={},ee={};y.forEach(ye=>{b[ye.id]=0,z[ye.id]=0,ee[ye.id]=[]}),x.forEach(ye=>{b[ye.target]++,z[ye.source]++,ee[ye.source].push(ye.target)});const re=new Set,ae=ye=>{re.has(ye)||(re.add(ye),ee[ye].forEach(ae))};if(ae(y[0].id),re.size!==y.length)return!1;const oe=y.filter(ye=>b[ye.id]===0),de=y.filter(ye=>z[ye.id]===0);return!(oe.length!==1||de.length!==1||y.filter(ye=>b[ye.id]===1&&z[ye.id]===1).length!==y.length-2)}execute(a,y){return JU(this,void 0,void 0,function*(){var x;if(!this.validate(a))return a;const{nodeSize:b,padding:z,sortBy:ee,cols:re,colGap:ae,rowGap:oe,clockwise:de,width:ge,height:ye}=Object.assign({},E1.defaultOptions,this.options,y),[De,ke,ze,We]=Md(z),Ve=this.formatSize(a.nodes||[],b),Ze=Math.ceil((a.nodes||[]).length/re);let Ye=ae||(ge-We-ke-re*Ve[0])/(re-1),et=oe||(ye-De-ze-Ze*Ve[1])/(Ze-1);return(et===1/0||et<0)&&(et=0),(Ye===1/0||Ye<0)&&(Ye=0),{nodes:((ee?(x=a.nodes)===null||x===void 0?void 0:x.sort(ee):qU(a))||[]).map((mt,dt)=>{const Ot=Math.floor(dt/re),_t=dt%re,wt=de?Ot%2===0?_t:re-1-_t:Ot%2===0?re-1-_t:_t,$t=We+wt*(Ve[0]+Ye)+Ve[0]/2,gn=De+Ot*(Ve[1]+et)+Ve[1]/2;return{id:mt.id,style:{x:$t,y:gn}}})}})}}E1.defaultOptions={padding:0,cols:5,clockwise:!0};function qU(E){const{nodes:a=[],edges:y=[]}=E,x={},b={};a.forEach(re=>{x[re.id]=0,b[re.id]=[]}),y.forEach(re=>{x[re.target]++,b[re.source].push(re.target)});const z=[],ee=[];for(a.forEach(re=>{x[re.id]===0&&z.push(re.id)});z.length>0;){const re=z.shift(),ae=a.find(oe=>oe.id===re);ee.push(ae),b[re].forEach(oe=>{x[oe]--,x[oe]===0&&z.push(oe)})}return ee}const $U=["rgb(158, 1, 66)","rgb(213, 62, 79)","rgb(244, 109, 67)","rgb(253, 174, 97)","rgb(254, 224, 139)","rgb(255, 255, 191)","rgb(230, 245, 152)","rgb(171, 221, 164)","rgb(102, 194, 165)","rgb(50, 136, 189)","rgb(94, 79, 162)"],eW=["rgb(78, 121, 167)","rgb(242, 142, 44)","rgb(225, 87, 89)","rgb(118, 183, 178)","rgb(89, 161, 79)","rgb(237, 201, 73)","rgb(175, 122, 161)","rgb(255, 157, 167)","rgb(156, 117, 95)","rgb(186, 176, 171)"],tW=["rgb(255, 245, 235)","rgb(254, 230, 206)","rgb(253, 208, 162)","rgb(253, 174, 107)","rgb(253, 141, 60)","rgb(241, 105, 19)","rgb(217, 72, 1)","rgb(166, 54, 3)","rgb(127, 39, 4)"],nW=["rgb(247, 252, 245)","rgb(229, 245, 224)","rgb(199, 233, 192)","rgb(161, 217, 155)","rgb(116, 196, 118)","rgb(65, 171, 93)","rgb(35, 139, 69)","rgb(0, 109, 44)","rgb(0, 68, 27)"],rW=["rgb(247, 251, 255)","rgb(222, 235, 247)","rgb(198, 219, 239)","rgb(158, 202, 225)","rgb(107, 174, 214)","rgb(66, 146, 198)","rgb(33, 113, 181)","rgb(8, 81, 156)","rgb(8, 48, 107)"];var aW=function(E,a,y){if(!nd(E)&&!Y0(E))return E;var x=y;return R5(E,function(b,z){x=a(x,b,z)}),x},iW=aW,bS=function(E,a){return iW(E,function(y,x,b){return a.includes(b)||(y[b]=x),y},{})};class oc extends xx{}function iv(E,a=!0,y){const x=document.createElement("div");return x.setAttribute("class",`g6-${E}`),Object.assign(x.style,{position:"absolute",display:"block"}),a&&Object.assign(x.style,{position:"unset",gridArea:"1 / 1 / 2 / 2",inset:"0px",height:"100%",width:"100%",overflow:"hidden",pointerEvents:"none"}),y&&Object.assign(x.style,y),x}function CS(E,a="div",y={},x="",b=document.body){const z=document.getElementById(E);z&&z.remove();const ee=document.createElement(a);return ee.innerHTML=x,ee.id=E,Object.assign(ee.style,y),b.appendChild(ee),ee}var oW=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(de){try{oe(x.next(de))}catch(ge){ee(ge)}}function ae(de){try{oe(x.throw(de))}catch(ge){ee(ge)}}function oe(de){de.done?z(de.value):b(de.value).then(re,ae)}oe((x=x.apply(E,a||[])).next())})};class A1 extends oc{constructor(a,y){super(a,Object.assign({},A1.defaultOptions,y)),this.$element=iv("background"),this.context.canvas.getContainer().prepend(this.$element),this.update(y)}update(a){const y=Object.create(null,{update:{get:()=>super.update}});return oW(this,void 0,void 0,function*(){y.update.call(this,a),Object.assign(this.$element.style,bS(this.options,["key","type"]))})}destroy(){super.destroy(),this.$element.remove()}}A1.defaultOptions={transition:"background 0.5s",backgroundSize:"cover",zIndex:"-1"};function PS(E,a,y,x,b,z){const ee=E,re=a,ae=y-ee,oe=x-re;let de=b-ee,ge=z-re,ye=de*ae+ge*oe,De=0;ye<=0?De=0:(de=ae-de,ge=oe-ge,ye=de*ae+ge*oe,ye<=0?De=0:De=ye*ye/(ae*ae+oe*oe));const ke=de*de+ge*ge-De;return ke<0?0:ke}function ug(E,a,y,x){return(E-y)*(E-y)+(a-x)*(a-x)}function bD(E,a,y,x,b){return ug(E,a,y,x)<b*b}function sW(E){if(!Number.isFinite(E))return y=>y;if(E===0)return Math.round;const a=Math.pow(10,E);return y=>Math.round(y*a)/a}function CD(E){const a=Math.min(E.x1,E.x2),y=Math.max(E.x1,E.x2),x=Math.min(E.y1,E.y2),b=Math.max(E.y1,E.y2);return{x:a,y:x,x2:y,y2:b,width:y-a,height:b-x}}class sc{constructor(a,y,x,b){this.x1=a,this.y1=y,this.x2=x,this.y2=b}equals(a){return this.x1===a.x1&&this.y1===a.y1&&this.x2===a.x2&&this.y2===a.y2}draw(a){a.moveTo(this.x1,this.y1),a.lineTo(this.x2,this.y2)}toString(){return`Line(from=(${this.x1},${this.y1}),to=(${this.x2},${this.y2}))`}static from(a){return new sc(a.x1,a.y1,a.x2,a.y2)}cuts(a,y){if(this.y1===this.y2||y<this.y1&&y<=this.y2||y>this.y1&&y>=this.y2||a>this.x1&&a>=this.x2)return!1;if(a<this.x1&&a<=this.x2)return!0;const x=this.x1+(y-this.y1)*(this.x2-this.x1)/(this.y2-this.y1);return a<=x}distSquare(a,y){return PS(this.x1,this.y1,this.x2,this.y2,a,y)}ptClose(a,y,x){if(this.x1<this.x2){if(a<this.x1-x||a>this.x2+x)return!1}else if(a<this.x2-x||a>this.x1+x)return!1;if(this.y1<this.y2){if(y<this.y1-x||y>this.y2+x)return!1}else if(y<this.y2-x||y>this.y1+x)return!1;return!0}}var bu;(function(E){E[E.POINT=1]="POINT",E[E.PARALLEL=2]="PARALLEL",E[E.COINCIDENT=3]="COINCIDENT",E[E.NONE=4]="NONE"})(bu||(bu={}));class wS{constructor(a,y=0,x=0){this.state=a,this.x=y,this.y=x}}function x1(E,a){const y=(a.x2-a.x1)*(E.y1-a.y1)-(a.y2-a.y1)*(E.x1-a.x1),x=(E.x2-E.x1)*(E.y1-a.y1)-(E.y2-E.y1)*(E.x1-a.x1),b=(a.y2-a.y1)*(E.x2-E.x1)-(a.x2-a.x1)*(E.y2-E.y1);if(b){const z=y/b,ee=x/b;return 0<=z&&z<=1&&0<=ee&&ee<=1?new wS(bu.POINT,E.x1+z*(E.x2-E.x1),E.y1+z*(E.y2-E.y1)):new wS(bu.NONE)}return new wS(y===0||x===0?bu.COINCIDENT:bu.PARALLEL)}function PD(E,a){const y=(a.x2-a.x1)*(E.y1-a.y1)-(a.y2-a.y1)*(E.x1-a.x1),x=(E.x2-E.x1)*(E.y1-a.y1)-(E.y2-E.y1)*(E.x1-a.x1),b=(a.y2-a.y1)*(E.x2-E.x1)-(a.x2-a.x1)*(E.y2-E.y1);if(b){const z=y/b,ee=x/b;if(0<=z&&z<=1&&0<=ee&&ee<=1)return z}return Number.POSITIVE_INFINITY}function lW(E,a){function y(b,z,ee,re){let ae=PD(a,new sc(b,z,ee,re));return ae=Math.abs(ae-.5),ae>=0&&ae<=1?1:0}let x=y(E.x,E.y,E.x2,E.y);return x+=y(E.x,E.y,E.x,E.y2),x>1||(x+=y(E.x,E.y2,E.x2,E.y2),x>1)?!0:(x+=y(E.x2,E.y,E.x2,E.y2),x>0)}var Cu;(function(E){E[E.LEFT=0]="LEFT",E[E.TOP=1]="TOP",E[E.RIGHT=2]="RIGHT",E[E.BOTTOM=3]="BOTTOM"})(Cu||(Cu={}));function S1(E,a,y){const x=new Set;return E.width<=0?(x.add(Cu.LEFT),x.add(Cu.RIGHT)):a<E.x?x.add(Cu.LEFT):a>E.x+E.width&&x.add(Cu.RIGHT),E.height<=0?(x.add(Cu.TOP),x.add(Cu.BOTTOM)):y<E.y?x.add(Cu.TOP):y>E.y+E.height&&x.add(Cu.BOTTOM),x}function wD(E,a){let y=a.x1,x=a.y1;const b=a.x2,z=a.y2,ee=Array.from(S1(E,b,z));if(ee.length===0)return!0;let re=S1(E,y,x);for(;re.size!==0;){for(const ae of ee)if(re.has(ae))return!1;if(re.has(Cu.RIGHT)||re.has(Cu.LEFT)){let ae=E.x;re.has(Cu.RIGHT)&&(ae+=E.width),x=x+(ae-y)*(z-x)/(b-y),y=ae}else{let ae=E.y;re.has(Cu.BOTTOM)&&(ae+=E.height),y=y+(ae-x)*(b-y)/(z-x),x=ae}re=S1(E,y,x)}return!0}function uW(E,a){let y=Number.POSITIVE_INFINITY,x=0;function b(z,ee,re,ae){let oe=PD(a,new sc(z,ee,re,ae));oe=Math.abs(oe-.5),oe>=0&&oe<=1&&(x++,oe<y&&(y=oe))}return b(E.x,E.y,E.x2,E.y),b(E.x,E.y,E.x,E.y2),x>1||(b(E.x,E.y2,E.x2,E.y2),x>1)?y:(b(E.x2,E.y,E.x2,E.y2),x===0?-1:y)}function cW(E,a){let y=0;const x=x1(E,new sc(a.x,a.y,a.x2,a.y));y+=x.state===bu.POINT?1:0;const b=x1(E,new sc(a.x,a.y,a.x,a.y2));y+=b.state===bu.POINT?1:0;const z=x1(E,new sc(a.x,a.y2,a.x2,a.y2));y+=z.state===bu.POINT?1:0;const ee=x1(E,new sc(a.x2,a.y,a.x2,a.y2));return y+=ee.state===bu.POINT?1:0,{top:x,left:b,bottom:z,right:ee,count:y}}class Oc{constructor(a,y,x,b){this.x=a,this.y=y,this.width=x,this.height=b}get x2(){return this.x+this.width}get y2(){return this.y+this.height}get cx(){return this.x+this.width/2}get cy(){return this.y+this.height/2}get radius(){return Math.max(this.width,this.height)/2}static from(a){return new Oc(a.x,a.y,a.width,a.height)}equals(a){return this.x===a.x&&this.y===a.y&&this.width===a.width&&this.height===a.height}clone(){return new Oc(this.x,this.y,this.width,this.height)}add(a){const y=Math.min(this.x,a.x),x=Math.min(this.y,a.y),b=Math.max(this.x2,a.x+a.width),z=Math.max(this.y2,a.y+a.height);this.x=y,this.y=x,this.width=b-y,this.height=z-x}addPoint(a){const y=Math.min(this.x,a.x),x=Math.min(this.y,a.y),b=Math.max(this.x2,a.x),z=Math.max(this.y2,a.y);this.x=y,this.y=x,this.width=b-y,this.height=z-x}toString(){return`Rectangle[x=${this.x}, y=${this.y}, w=${this.width}, h=${this.height}]`}draw(a){a.rect(this.x,this.y,this.width,this.height)}containsPt(a,y){return a>=this.x&&a<=this.x2&&y>=this.y&&y<=this.y2}get area(){return this.width*this.height}intersects(a){return this.area<=0||a.width<=0||a.height<=0?!1:a.x+a.width>this.x&&a.y+a.height>this.y&&a.x<this.x2&&a.y<this.y2}distSquare(a,y){if(this.containsPt(a,y))return 0;const x=S1(this,a,y);return x.has(Cu.TOP)?x.has(Cu.LEFT)?ug(a,y,this.x,this.y):x.has(Cu.RIGHT)?ug(a,y,this.x2,this.y):(this.y-y)*(this.y-y):x.has(Cu.BOTTOM)?x.has(Cu.LEFT)?ug(a,y,this.x,this.y2):x.has(Cu.RIGHT)?ug(a,y,this.x2,this.y2):(y-this.y2)*(y-this.y2):x.has(Cu.LEFT)?(this.x-a)*(this.x-a):x.has(Cu.RIGHT)?(a-this.x2)*(a-this.x2):0}}function dW(E){if(E.length===0)return null;const a=E[0],y=new Oc(a.x,a.y,0,0);for(const x of E)y.addPoint(x);return y}class b1{constructor(a,y,x){this.cx=a,this.cy=y,this.radius=x}get x(){return this.cx-this.radius}get x2(){return this.cx+this.radius}get width(){return this.radius*2}get y(){return this.cy-this.radius}get y2(){return this.cy+this.radius}get height(){return this.radius*2}static from(a){return new b1(a.cx,a.cy,a.radius)}containsPt(a,y){return ug(this.cx,this.cy,a,y)<this.radius*this.radius}distSquare(a,y){const x=ug(this.cx,this.cy,a,y);if(x<this.radius*this.radius)return 0;const b=Math.sqrt(x)-this.radius;return b*b}draw(a){a.ellipse(this.cx,this.cy,this.radius,this.radius,0,0,Math.PI*2)}}class d0{constructor(a,y=0,x=0,b=0,z=0,ee=10,re=10,ae=new Float32Array(Math.max(0,ee*re)).fill(0)){this.pixelGroup=a,this.i=y,this.j=x,this.pixelX=b,this.pixelY=z,this.width=ee,this.height=re,this.area=ae}createSub(a,y){return new d0(this.pixelGroup,a.x,a.y,y.x,y.y,a.width,a.height)}static fromPixelRegion(a,y){return new d0(y,0,0,a.x,a.y,Math.ceil(a.width/y),Math.ceil(a.height/y))}copy(a,y){return new d0(this.pixelGroup,this.scaleX(y.x),this.scaleY(y.y),y.x,y.y,a.width,a.height,a.area)}boundX(a){return a<this.i?this.i:a>=this.width?this.width-1:a}boundY(a){return a<this.j?this.j:a>=this.height?this.height-1:a}scaleX(a){return this.boundX(Math.floor((a-this.pixelX)/this.pixelGroup))}scaleY(a){return this.boundY(Math.floor((a-this.pixelY)/this.pixelGroup))}scale(a){const y=this.scaleX(a.x),x=this.scaleY(a.y),b=this.boundX(Math.ceil((a.x+a.width-this.pixelX)/this.pixelGroup)),z=this.boundY(Math.ceil((a.y+a.height-this.pixelY)/this.pixelGroup)),ee=b-y,re=z-x;return new Oc(y,x,ee,re)}invertScaleX(a){return Math.round(a*this.pixelGroup+this.pixelX)}invertScaleY(a){return Math.round(a*this.pixelGroup+this.pixelY)}addPadding(a,y){const x=Math.ceil(y/this.pixelGroup),b=this.boundX(a.x-x),z=this.boundY(a.y-x),ee=this.boundX(a.x2+x),re=this.boundY(a.y2+x),ae=ee-b,oe=re-z;return new Oc(b,z,ae,oe)}get(a,y){return a<0||y<0||a>=this.width||y>=this.height?Number.NaN:this.area[a+y*this.width]}inc(a,y,x){a<0||y<0||a>=this.width||y>=this.height||(this.area[a+y*this.width]+=x)}set(a,y,x){a<0||y<0||a>=this.width||y>=this.height||(this.area[a+y*this.width]=x)}incArea(a,y){if(a.width<=0||a.height<=0||y===0)return;const x=this.width,b=a.width,z=Math.max(0,a.i),ee=Math.max(0,a.j),re=Math.min(a.i+a.width,x),ae=Math.min(a.j+a.height,this.height);if(!(ae<=0||re<=0||z>=x||ae>=this.height))for(let oe=ee;oe<ae;oe++){const de=(oe-a.j)*b,ge=oe*x;for(let ye=z;ye<re;ye++){const De=a.area[ye-a.i+de];De!==0&&(this.area[ye+ge]+=y*De)}}}fill(a){this.area.fill(a)}fillArea(a,y){const x=a.x+a.y*this.width;for(let b=0;b<a.height;b++){const z=x+b*this.width;this.area.fill(y,z,z+a.width)}}fillHorizontalLine(a,y,x,b){const z=a+y*this.width;this.area.fill(b,z,z+x)}fillVerticalLine(a,y,x,b){const z=a+y*this.width;for(let ee=0;ee<x;ee++)this.area[z+ee*this.width]=b}clear(){this.area.fill(0)}toString(){let a="";for(let y=0;y<this.height;y++){const x=y*this.width;for(let b=0;b<this.width;b++){const z=this.area[x+b];a+=z.toFixed(1).padStart(6),a+=" "}a+=`
|
|
|
`}return a}draw(a,y=!0){if(this.width<=0||this.height<=0)return;a.save(),y&&a.translate(this.pixelX,this.pixelY);const x=this.area.reduce((ee,re)=>Math.min(ee,re),Number.POSITIVE_INFINITY),b=this.area.reduce((ee,re)=>Math.max(ee,re),Number.NEGATIVE_INFINITY),z=ee=>(ee-x)/(b-x);a.scale(this.pixelGroup,this.pixelGroup);for(let ee=0;ee<this.width;ee++)for(let re=0;re<this.height;re++){const ae=this.area[ee+re*this.width];a.fillStyle=`rgba(0, 0, 0, ${z(ae)})`,a.fillRect(ee,re,1,1)}a.restore()}drawThreshold(a,y,x=!0){if(!(this.width<=0||this.height<=0)){a.save(),x&&a.translate(this.pixelX,this.pixelY),a.scale(this.pixelGroup,this.pixelGroup);for(let b=0;b<this.width;b++)for(let z=0;z<this.height;z++){const ee=this.area[b+z*this.width];a.fillStyle=ee>y?"black":"white",a.fillRect(b,z,1,1)}a.restore()}}}function MD(E,a){const y=x=>({x:x.x-a,y:x.y-a,width:x.width+2*a,height:x.height+2*a});return Array.isArray(E)?E.map(y):y(E)}function DD(E,a,y){return ID(Object.assign(CD(E),{distSquare:(x,b)=>PS(E.x1,E.y1,E.x2,E.y2,x,b)}),a,y)}function ID(E,a,y){const x=MD(E,y),b=a.scale(x),z=a.createSub(b,x);return fW(z,a,y,(ee,re)=>E.distSquare(ee,re)),z}function fW(E,a,y,x){const b=y*y;for(let z=0;z<E.height;z++)for(let ee=0;ee<E.width;ee++){const re=a.invertScaleX(E.i+ee),ae=a.invertScaleY(E.j+z),oe=x(re,ae);if(oe===0){E.set(ee,z,b);continue}if(oe<b){const de=y-Math.sqrt(oe);E.set(ee,z,de*de)}}return E}function hW(E,a,y){const x=a.scale(E),b=a.addPadding(x,y),z=a.createSub(b,{x:E.x-y,y:E.y-y}),ee=x.x-b.x,re=x.y-b.y,ae=b.x2-x.x2,oe=b.y2-x.y2,de=b.width-ee-ae,ge=b.height-re-oe,ye=y*y;z.fillArea({x:ee,y:re,width:de+1,height:ge+1},ye);const De=[0],ke=Math.max(re,ee,ae,oe);{const Ze=a.invertScaleX(x.x+x.width/2);for(let Ye=1;Ye<ke;Ye++){const et=a.invertScaleY(x.y-Ye),st=E.distSquare(Ze,et);if(st<ye){const ht=y-Math.sqrt(st);De.push(ht*ht)}else break}}const ze=[],We=Math.max(ee,ae),Ve=Math.max(re,ae);for(let Ze=1;Ze<We;Ze++){const Ye=a.invertScaleX(x.x-Ze),et=[];for(let st=1;st<Ve;st++){const ht=a.invertScaleY(x.y-st),mt=E.distSquare(Ye,ht);if(mt<ye){const dt=y-Math.sqrt(mt);et.push(dt*dt)}else et.push(0)}ze.push(et)}for(let Ze=1;Ze<Math.min(re,De.length);Ze++){const Ye=De[Ze];z.fillHorizontalLine(ee,re-Ze,de+1,Ye)}for(let Ze=1;Ze<Math.min(oe,De.length);Ze++){const Ye=De[Ze];z.fillHorizontalLine(ee,re+ge+Ze,de+1,Ye)}for(let Ze=1;Ze<Math.min(ee,De.length);Ze++){const Ye=De[Ze];z.fillVerticalLine(ee-Ze,re,ge+1,Ye)}for(let Ze=1;Ze<Math.min(oe,De.length);Ze++){const Ye=De[Ze];z.fillVerticalLine(ee+de+Ze,re,ge+1,Ye)}for(let Ze=1;Ze<ee;Ze++){const Ye=ze[Ze-1],et=ee-Ze;for(let st=1;st<re;st++)z.set(et,re-st,Ye[st-1]);for(let st=1;st<oe;st++)z.set(et,re+ge+st,Ye[st-1])}for(let Ze=1;Ze<ae;Ze++){const Ye=ze[Ze-1],et=ee+de+Ze;for(let st=1;st<re;st++)z.set(et,re-st,Ye[st-1]);for(let st=1;st<oe;st++)z.set(et,re+ge+st,Ye[st-1])}return z}function kne(E,a,y,x){return{x:E,y:a,width:y,height:x}}function _ne(E,a,y){return{cx:E,cy:a,radius:y}}function zne(E,a,y,x){return{x1:E,y1:a,x2:y,y2:x}}function tu(E,a){return{x:E,y:a}}function gW(E,a,y,x){if(E.length===0)return[];const b=EW(E);return b.map((z,ee)=>{const re=b.slice(0,ee);return vW(a,z,re,y,x)}).flat()}function vW(E,a,y,x,b){const z=tu(a.cx,a.cy),ee=yW(z,y,E);if(ee==null)return[];const re=new sc(z.x,z.y,ee.cx,ee.cy),ae=mW(re,E,x,b);return pW(ae,E)}function mW(E,a,y,x){const b=[],z=[];z.push(E);let ee=!0;for(let re=0;re<y&ⅇre++)for(ee=!1;!ee&&z.length>0;){const ae=z.pop(),oe=OD(a,ae),de=oe?cW(ae,oe):null;if(!oe||!de||de.count!==2){ee||b.push(ae);continue}let ge=x,ye=P1(oe,ge,de,!0),De=cg(ye,z)||cg(ye,b),ke=C1(ye,a);for(;!De&&ke&&ge>=1;)ge/=1.5,ye=P1(oe,ge,de,!0),De=cg(ye,z)||cg(ye,b),ke=C1(ye,a);if(ye&&!De&&!ke&&(z.push(new sc(ae.x1,ae.y1,ye.x,ye.y)),z.push(new sc(ye.x,ye.y,ae.x2,ae.y2)),ee=!0),ee)continue;ge=x,ye=P1(oe,ge,de,!1);let ze=cg(ye,z)||cg(ye,b);for(ke=C1(ye,a);!ze&&ke&&ge>=1;)ge/=1.5,ye=P1(oe,ge,de,!1),ze=cg(ye,z)||cg(ye,b),ke=C1(ye,a);ye&&!ze&&(z.push(new sc(ae.x1,ae.y1,ye.x,ye.y)),z.push(new sc(ye.x,ye.y,ae.x2,ae.y2)),ee=!0),ee||b.push(ae)}for(;z.length>0;)b.push(z.pop());return b}function pW(E,a){const y=[];for(;E.length>0;){const x=E.pop();if(E.length===0){y.push(x);break}const b=E.pop(),z=new sc(x.x1,x.y1,b.x2,b.y2);OD(a,z)?(y.push(x),E.push(b)):E.push(z)}return y}function yW(E,a,y){let x=Number.POSITIVE_INFINITY;return a.reduce((b,z)=>{const ee=ug(E.x,E.y,z.cx,z.cy);if(ee>x)return b;const re=new sc(E.x,E.y,z.cx,z.cy),ae=AW(y,re);return ee*(ae+1)*(ae+1)<x&&(b=z,x=ee*(ae+1)*(ae+1)),b},null)}function EW(E){if(E.length<2)return E;let a=0,y=0;return E.forEach(x=>{a+=x.cx,y+=x.cy}),a/=E.length,y/=E.length,E.map(x=>{const b=a-x.cx,z=y-x.cy,ee=b*b+z*z;return[x,ee]}).sort((x,b)=>x[1]-b[1]).map(x=>x[0])}function C1(E,a){return a.some(y=>y.containsPt(E.x,E.y))}function cg(E,a){return a.some(y=>!!(bD(y.x1,y.y1,E.x,E.y,.001)||bD(y.x2,y.y2,E.x,E.y,.001)))}function OD(E,a){let y=Number.POSITIVE_INFINITY,x=null;for(const b of E){if(!wD(b,a))continue;const z=uW(b,a);z>=0&&z<y&&(x=b,y=z)}return x}function AW(E,a){return E.reduce((y,x)=>wD(x,a)&&lW(x,a)?y+1:y,0)}function P1(E,a,y,x){const b=y.top,z=y.left,ee=y.bottom,re=y.right;if(x){if(z.state===bu.POINT){if(b.state===bu.POINT)return tu(E.x-a,E.y-a);if(ee.state===bu.POINT)return tu(E.x-a,E.y2+a);const ye=E.width*E.height;return E.width*((z.y-E.y+(re.y-E.y))*.5)<ye*.5?z.y>re.y?tu(E.x-a,E.y-a):tu(E.x2+a,E.y-a):z.y<re.y?tu(E.x-a,E.y2+a):tu(E.x2+a,E.y2+a)}if(re.state===bu.POINT){if(b.state===bu.POINT)return tu(E.x2+a,E.y-a);if(ee.state===bu.POINT)return tu(E.x2+a,E.y2+a)}const de=E.height*E.width;return E.height*((b.x-E.x+(re.x-E.x))*.5)<de*.5?b.x>ee.x?tu(E.x-a,E.y-a):tu(E.x-a,E.y2+a):b.x<ee.x?tu(E.x2+a,E.y-a):tu(E.x2+a,E.y2+a)}if(z.state===bu.POINT){if(b.state===bu.POINT)return tu(E.x2+a,E.y2+a);if(ee.state===bu.POINT)return tu(E.x2+a,E.y-a);const de=E.height*E.width;return E.width*((z.y-E.y+(re.y-E.y))*.5)<de*.5?z.y>re.y?tu(E.x2+a,E.y2+a):tu(E.x-a,E.y2+a):z.y<re.y?tu(E.x2+a,E.y-a):tu(E.x-a,E.y-a)}if(re.state===bu.POINT){if(b.state===bu.POINT)return tu(E.x-a,E.y2+a);if(ee.state===bu.POINT)return tu(E.x-a,E.y-a)}const ae=E.height*E.width;return E.height*((b.x-E.x+(re.x-E.x))*.5)<ae*.5?b.x>ee.x?tu(E.x2+a,E.y2+a):tu(E.x2+a,E.y-a):b.x<ee.x?tu(E.x-a,E.y2+a):tu(E.x-a,E.y-a)}function xW(E,a,y,x){if(!(E.closed?y<E.length:y<E.length-1))return!1;const z=E.get(a),ee=E.get(y+1);for(let re=a+1;re<=y;re++){const ae=E.get(re);if(PS(z.x,z.y,ee.x,ee.y,ae.x,ae.y)>x)return!1}return!0}function SW(E=0){return a=>{if(E<0||a.length<3)return a;const y=[];let x=0;const b=E*E;for(;x<a.length;){let z=x+1;for(;xW(a,x,z,b);)z++;y.push(a.get(x)),x=z}return new f0(y)}}function bW(E,a){switch(E){case-2:return(((-a+3)*a-3)*a+1)/6;case-1:return((3*a-6)*a*a+4)/6;case 0:return(((-3*a+3)*a+3)*a+1)/6;case 1:return a*a*a/6;default:throw new Error("unknown error")}}function CW(E=6){function z(ee,re,ae){let oe=0,de=0;for(let ge=-2;ge<=1;ge++){const ye=ee.get(re+ge),De=bW(ge,ae);oe+=De*ye.x,de+=De*ye.y}return{x:oe,y:de}}return ee=>{if(ee.length<3)return ee;const re=[],ae=ee.closed,oe=ee.length+3-1+(ae?0:2);re.push(z(ee,2-(ae?0:2),0));for(let de=2-(ae?0:2);de<oe;de++)for(let ge=1;ge<=E;ge++)re.push(z(ee,de,ge/E));return new f0(re)}}function PW(E=8){return a=>{let y=E,x=a.length;if(y>1)for(x=Math.floor(a.length/y);x<3&&y>1;)y-=1,x=Math.floor(a.length/y);const b=[];for(let z=0,ee=0;ee<x;ee++,z+=y)b.push(a.get(z));return new f0(b)}}class f0{constructor(a=[],y=!0){this.points=a,this.closed=y}get(a){const y=a,x=this.points.length;return a<0?this.closed?this.get(a+x):this.points[0]:a>=x?this.closed?this.get(a-x):this.points[x-1]:this.points[y]}get length(){return this.points.length}toString(a=1/0){const y=this.points;if(y.length===0)return"";const x=typeof a=="function"?a:sW(a);let b="M";for(const z of y)b+=`${x(z.x)},${x(z.y)} L`;return b=b.slice(0,-1),this.closed&&(b+=" Z"),b}draw(a){const y=this.points;if(y.length!==0){a.beginPath(),a.moveTo(y[0].x,y[0].y);for(const x of y)a.lineTo(x.x,x.y);this.closed&&a.closePath()}}sample(a){return PW(a)(this)}simplify(a){return SW(a)(this)}bSplines(a){return CW(a)(this)}apply(a){return a(this)}containsElements(a){const y=dW(this.points);return y?a.every(x=>y.containsPt(x.cx,x.cy)&&this.withinArea(x.cx,x.cy)):!1}withinArea(a,y){if(this.length===0)return!1;let x=0;const b=this.points[0],z=new sc(b.x,b.y,b.x,b.y);for(let ee=1;ee<this.points.length;ee++){const re=this.points[ee];z.x1=z.x2,z.y1=z.y2,z.x2=re.x,z.y2=re.y,z.cuts(a,y)&&x++}return z.x1=z.x2,z.y1=z.y2,z.x2=b.x,z.y2=b.y,z.cuts(a,y)&&x++,x%2===1}}class wW{constructor(a=0){this.count=0,this.arr=[],this.set=new Set,this.arr.length=a}add(a){this.set.add(`${a.x}x${a.y}`),this.arr[this.count++]=a}contains(a){return this.set.has(`${a.x}x${a.y}`)}isFirst(a){if(this.count===0)return!1;const y=this.arr[0];return y!=null&&y.x===a.x&&y.y===a.y}path(){return new f0(this.arr.slice(0,this.count))}clear(){this.set.clear(),this.count=0}get(a){return this.arr[a]}get length(){return this.count}}const Im=0,w1=1,M1=2,MS=3;function MW(E,a){const y=(Math.floor(E.width)+Math.floor(E.height))*2,x=new wW(y);function b(ae,oe,de,ge){const ye=E.get(ae,oe);return Number.isNaN(ye)?Number.NaN:ye>a?de+ge:de}function z(ae,oe){let de=Im;return de=b(ae,oe,de,1),de=b(ae+1,oe,de,2),de=b(ae,oe+1,de,4),de=b(ae+1,oe+1,de,8),Number.isNaN(de)?-1:de}let ee=w1;function re(ae,oe){let de=ae,ge=oe,ye=E.invertScaleX(de),De=E.invertScaleY(ge);for(let ke=0;ke<E.width*E.height;ke++){const ze={x:ye,y:De};if(x.contains(ze)){if(x.isFirst(ze))return!0}else x.add(ze);const We=z(de,ge);switch(We){case-1:return!0;case 0:case 3:case 2:case 7:ee=M1;break;case 12:case 14:case 4:ee=MS;break;case 6:ee=ee===Im?MS:M1;break;case 1:case 13:case 5:ee=Im;break;case 9:ee=ee===M1?Im:w1;break;case 10:case 8:case 11:ee=w1;break;default:return console.warn("Marching squares invalid state: "+We),!0}switch(ee){case Im:ge--,De-=E.pixelGroup;break;case w1:ge++,De+=E.pixelGroup;break;case MS:de--,ye-=E.pixelGroup;break;case M1:de++,ye+=E.pixelGroup;break;default:return console.warn("Marching squares invalid state: "+We),!0}}return!0}for(let ae=0;ae<E.width;ae++)for(let oe=0;oe<E.height;oe++){if(E.get(ae,oe)<=a)continue;const de=z(ae,oe);if(!(de<0||de===15)&&re(ae,oe))return x.path()}return null}const D1={maxRoutingIterations:100,maxMarchingIterations:20,pixelGroup:4,edgeR0:10,edgeR1:20,nodeR0:15,nodeR1:50,morphBuffer:10,threshold:1,memberInfluenceFactor:1,edgeInfluenceFactor:1,nonMemberInfluenceFactor:-.8,virtualEdges:!0};function Om(E){return E!=null&&typeof E.radius=="number"}function TD(E,a){if(Om(E)!==Om(a))return!1;if(Om(E)){const x=a;return E.cx===x.cx&&E.cy===x.cy&&E.radius===x.radius}const y=a;return E.x===y.x&&E.y===y.y&&E.width===y.width&&E.height===y.height}var Cf;(function(E){E[E.MEMBERS=0]="MEMBERS",E[E.NON_MEMBERS=1]="NON_MEMBERS",E[E.EDGES=2]="EDGES"})(Cf||(Cf={}));class DS{constructor(a={}){this.dirty=new Set,this.members=[],this.nonMembers=[],this.virtualEdges=[],this.edges=[],this.activeRegion=new Oc(0,0,0,0),this.potentialArea=new d0(1,0,0,0,0,0,0),this.o=Object.assign({},D1,a)}pushMember(...a){if(a.length!==0){this.dirty.add(Cf.MEMBERS);for(const y of a)this.members.push({raw:y,obj:Om(y)?b1.from(y):Oc.from(y),area:null})}}removeMember(a){const y=this.members.findIndex(x=>TD(x.raw,a));return y<0?!1:(this.members.splice(y,1),this.dirty.add(Cf.MEMBERS),!0)}removeNonMember(a){const y=this.nonMembers.findIndex(x=>TD(x.raw,a));return y<0?!1:(this.nonMembers.splice(y,1),this.dirty.add(Cf.NON_MEMBERS),!0)}removeEdge(a){const y=this.edges.findIndex(x=>x.obj.equals(a));return y<0?!1:(this.edges.splice(y,1),this.dirty.add(Cf.NON_MEMBERS),!0)}pushNonMember(...a){if(a.length!==0){this.dirty.add(Cf.NON_MEMBERS);for(const y of a)this.nonMembers.push({raw:y,obj:Om(y)?b1.from(y):Oc.from(y),area:null})}}pushEdge(...a){if(a.length!==0){this.dirty.add(Cf.EDGES);for(const y of a)this.edges.push({raw:y,obj:sc.from(y),area:null})}}update(){const a=this.dirty.has(Cf.MEMBERS),y=this.dirty.has(Cf.NON_MEMBERS);let x=this.dirty.has(Cf.EDGES);this.dirty.clear();const b=this.members.map(oe=>oe.obj);if(this.o.virtualEdges&&(a||y)){const oe=this.nonMembers.map(ye=>ye.obj),de=gW(b,oe,this.o.maxRoutingIterations,this.o.morphBuffer),ge=new Map(this.virtualEdges.map(ye=>[ye.obj.toString(),ye.area]));this.virtualEdges=de.map(ye=>{var De;return{raw:ye,obj:ye,area:(De=ge.get(ye.toString()))!==null&&De!==void 0?De:null}}),x=!0}let z=!1;if(a||x){const oe=this.virtualEdges.concat(this.edges).map(De=>De.obj),de=IW(b,oe),ge=Math.max(this.o.edgeR1,this.o.nodeR1)+this.o.morphBuffer,ye=Oc.from(MD(de,ge));ye.equals(this.activeRegion)||(z=!0,this.activeRegion=ye)}if(z){const oe=Math.ceil(this.activeRegion.width/this.o.pixelGroup),de=Math.ceil(this.activeRegion.height/this.o.pixelGroup);this.activeRegion.x!==this.potentialArea.pixelX||this.activeRegion.y!==this.potentialArea.pixelY?(this.potentialArea=d0.fromPixelRegion(this.activeRegion,this.o.pixelGroup),this.members.forEach(ge=>ge.area=null),this.nonMembers.forEach(ge=>ge.area=null),this.edges.forEach(ge=>ge.area=null),this.virtualEdges.forEach(ge=>ge.area=null)):(oe!==this.potentialArea.width||de!==this.potentialArea.height)&&(this.potentialArea=d0.fromPixelRegion(this.activeRegion,this.o.pixelGroup))}const ee=new Map,re=oe=>{if(oe.area){const de=`${oe.obj.width}x${oe.obj.height}x${oe.obj instanceof Oc?"R":"C"}`;ee.set(de,oe.area)}},ae=oe=>{if(oe.area)return;const de=`${oe.obj.width}x${oe.obj.height}x${oe.obj instanceof Oc?"R":"C"}`;if(ee.has(de)){const ye=ee.get(de);oe.area=this.potentialArea.copy(ye,{x:oe.obj.x-this.o.nodeR1,y:oe.obj.y-this.o.nodeR1});return}const ge=oe.obj instanceof Oc?hW(oe.obj,this.potentialArea,this.o.nodeR1):ID(oe.obj,this.potentialArea,this.o.nodeR1);oe.area=ge,ee.set(de,ge)};this.members.forEach(re),this.nonMembers.forEach(re),this.members.forEach(ae),this.nonMembers.forEach(oe=>{this.activeRegion.intersects(oe.obj)?ae(oe):oe.area=null}),this.edges.forEach(oe=>{oe.area||(oe.area=DD(oe.obj,this.potentialArea,this.o.edgeR1))}),this.virtualEdges.forEach(oe=>{oe.area||(oe.area=DD(oe.obj,this.potentialArea,this.o.edgeR1))})}drawMembers(a){for(const y of this.members)y.obj.draw(a)}drawNonMembers(a){for(const y of this.nonMembers)y.obj.draw(a)}drawEdges(a){for(const y of this.edges)y.obj.draw(a)}drawPotentialArea(a,y=!0){this.potentialArea.draw(a,y)}compute(){if(this.members.length===0)return new f0([]);this.dirty.size>0&&this.update();const{o:a,potentialArea:y}=this,x=this.members.map(re=>re.area),b=this.virtualEdges.concat(this.edges).map(re=>re.area),z=this.nonMembers.filter(re=>re.area!=null).map(re=>re.area),ee=this.members.map(re=>re.obj);return DW(y,x,b,z,re=>re.containsElements(ee),a)}}function DW(E,a,y,x,b,z={}){const ee=Object.assign({},D1,z);let re=ee.threshold,ae=ee.memberInfluenceFactor,oe=ee.edgeInfluenceFactor,de=ee.nonMemberInfluenceFactor;const ge=(ee.nodeR0-ee.nodeR1)*(ee.nodeR0-ee.nodeR1),ye=(ee.edgeR0-ee.edgeR1)*(ee.edgeR0-ee.edgeR1);for(let De=0;De<ee.maxMarchingIterations;De++){if(E.clear(),ae!==0){const ze=ae/ge;for(const We of a)E.incArea(We,ze)}if(oe!==0){const ze=oe/ye;for(const We of y)E.incArea(We,ze)}if(de!==0){const ze=de/ge;for(const We of x)E.incArea(We,ze)}const ke=MW(E,re);if(ke&&b(ke))return ke;if(re*=.95,De<=ee.maxMarchingIterations*.5)ae*=1.2,oe*=1.2;else if(de!==0&&x.length>0)de*=.8;else break}return new f0([])}function IW(E,a){if(E.length===0)return new Oc(0,0,0,0);const y=Oc.from(E[0]);for(const x of E)y.add(x);for(const x of a)y.add(CD(x));return y}function jne(E,a=[],y=[],x={}){if(E.length===0)return new f0([]);const b=new DS(x);return b.pushMember(...E),b.pushNonMember(...a),b.pushEdge(...y),b.compute()}var OW=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b<x.length;b++)a.indexOf(x[b])<0&&Object.prototype.propertyIsEnumerable.call(E,x[b])&&(y[x[b]]=E[x[b]]);return y};class I1 extends oc{constructor(a,y){super(a,vc({},I1.defaultOptions,y)),this.members=new Map,this.avoidMembers=new Map,this.bubbleSetOptions={},this.drawBubbleSets=()=>{const{style:x,bubbleSetOptions:b}=this.parseOptions();Nu(this.bubbleSetOptions,b)||this.init(),this.bubbleSetOptions=Object.assign({},b);const z=Object.assign(Object.assign({},x),{d:this.getPath()});this.shape?this.shape.update(z):(this.shape=new vm({style:z}),this.context.canvas.appendChild(this.shape))},this.updateBubbleSetsPath=x=>{if(!this.shape)return;const b=Br(x.data);[...this.options.members,...this.options.avoidMembers].includes(b)&&this.shape.update(Object.assign(Object.assign({},this.parseOptions().style),{d:this.getPath(b)}))},this.getPath=x=>{const{graph:b}=this.context,z=this.options.members,ee=[...this.members.keys()],re=this.options.avoidMembers,ae=[...this.avoidMembers.keys()];if(!x&&Nu(z,ee)&&Nu(re,ae))return this.path;const{enter:oe=[],exit:de=[]}=eg(ee,z,We=>We),{enter:ge=[],exit:ye=[]}=eg(ae,re,We=>We);x&&(de.push(x),oe.push(x));const De=(We,Ve,Ze)=>{We.forEach(Ye=>{const et=Ze?this.members:this.avoidMembers,st=Ze?"pushMember":"pushNonMember",ht=Ze?"removeMember":"removeNonMember";if(Ve){let mt;b.getElementType(Ye)==="edge"?([mt]=LW(b,Ye),this.bubbleSets.pushEdge(mt)):([mt]=TW(b,Ye),this.bubbleSets[st](mt)),et.set(Ye,mt)}else{const mt=et.get(Ye);mt&&(b.getElementType(Ye)==="edge"?this.bubbleSets.removeEdge(mt):this.bubbleSets[ht](mt),et.delete(Ye))}})};De(de,!1,!0),De(oe,!0,!0),De(ye,!1,!1),De(ge,!0,!1);const ze=this.bubbleSets.compute().sample(8).simplify(0).bSplines().simplify(0);return this.path=x5(ze.points.map(mc)),this.path},this.bindEvents(),this.bubbleSets=new DS(this.options)}bindEvents(){this.context.graph.on(hi.AFTER_RENDER,this.drawBubbleSets),this.context.graph.on(hi.AFTER_ELEMENT_UPDATE,this.updateBubbleSetsPath)}init(){this.bubbleSets=new DS(this.options),this.members=new Map,this.avoidMembers=new Map}parseOptions(){const a=this.options,{type:y,key:x,members:b,avoidMembers:z}=a,ee=OW(a,["type","key","members","avoidMembers"]),re=Object.keys(ee).reduce((ae,oe)=>(oe in D1?ae.bubbleSetOptions[oe]=ee[oe]:ae.style[oe]=ee[oe],ae),{style:{},bubbleSetOptions:{}});return Object.assign({type:y,key:x,members:b,avoidMembers:z},re)}addMember(a){const y=Array.isArray(a)?a:[a];y.some(x=>this.options.avoidMembers.includes(x))&&(this.options.avoidMembers=this.options.avoidMembers.filter(x=>!y.includes(x))),this.options.members=[...new Set([...this.options.members,...y])],this.drawBubbleSets()}removeMember(a){const y=Array.isArray(a)?a:[a];this.options.members=this.options.members.filter(x=>!y.includes(x)),this.drawBubbleSets()}updateMember(a){this.options.members=Xi(a)?a(this.options.members):a,this.drawBubbleSets()}getMember(){return this.options.members}addAvoidMember(a){const y=Array.isArray(a)?a:[a];y.some(x=>this.options.members.includes(x))&&(this.options.members=this.options.members.filter(x=>!y.includes(x))),this.options.avoidMembers=[...new Set([...this.options.avoidMembers,...y])],this.drawBubbleSets()}removeAvoidMember(a){const y=Array.isArray(a)?a:[a];this.options.avoidMembers.some(x=>y.includes(x))&&(this.options.avoidMembers=this.options.avoidMembers.filter(x=>!y.includes(x)),this.drawBubbleSets())}updateAvoidMember(a){this.options.avoidMembers=Array.isArray(a)?a:[a],this.drawBubbleSets()}getAvoidMember(){return this.options.avoidMembers}destroy(){this.context.graph.off(hi.AFTER_RENDER,this.drawBubbleSets),this.context.graph.off(hi.AFTER_ELEMENT_UPDATE,this.updateBubbleSetsPath),this.shape.destroy(),super.destroy()}}I1.defaultOptions=Object.assign({members:[],avoidMembers:[],fill:"lightblue",fillOpacity:.2,stroke:"blue",strokeOpacity:.2},D1);const TW=(E,a)=>(Array.isArray(a)?a:[a]).map(x=>{const b=E.getElementRenderBounds(x);return new Oc(b.min[0],b.min[1],Kf(b),Zf(b))}),LW=(E,a)=>(Array.isArray(a)?a:[a]).map(x=>{const b=E.getEdgeData(x),z=E.getElementPosition(b.source),ee=E.getElementPosition(b.target);return sc.from({x1:z[0],y1:z[1],x2:ee[0],y2:ee[1]})});class Une extends null{constructor(a,y){super(a,y),this.setOptions=x=>{const b={cameraType:"setType",near:"setNear",far:"setFar",fov:"setFov",aspect:"setAspect",projectionMode:"setProjectionMode",distance:"setDistance",minDistance:"setMinDistance",maxDistance:"setMaxDistance",roll:"setRoll",elevation:"setElevation",azimuth:"setAzimuth"},z=(ee,re)=>{switch(ee){case"projectionMode":return re==="perspective"?1:0;case"cameraType":return{orbiting:0,exploring:1,tracking:2}[re];case"aspect":return typeof re=="number"?re:this.getCanvasAspect();default:return re}};Object.entries(b).forEach(([ee,re])=>{const ae=x[ee];if(ae!==void 0){const oe=z(ee,ae);this.context.canvas.getCamera()[re](oe)}})},this.bindEvents()}update(a){this.setOptions(a),super.update(a)}bindEvents(){this.context.graph.once(GraphEvent.BEFORE_DRAW,()=>this.setOptions(this.options))}getCanvasAspect(){const[a,y]=this.context.viewport.getCanvasSize();return a/y}}function BW(E){return`
|
|
|
<ul class="g6-contextmenu-ul">
|
|
|
${E.map(a=>`<li class="g6-contextmenu-li" value="${a.value}">${a.name}</li>`).join("")}
|
|
|
</ul>
|
|
|
`}const NW=`
|
|
|
.g6-contextmenu {
|
|
|
font-size: 12px;
|
|
|
background-color: rgba(255, 255, 255, 0.96);
|
|
|
border-radius: 4px;
|
|
|
overflow: hidden;
|
|
|
box-shadow: rgba(0, 0, 0, 0.12) 0px 6px 12px 0px;
|
|
|
transition: visibility 0.2s cubic-bezier(0.23, 1, 0.32, 1) 0s, left 0.4s cubic-bezier(0.23, 1, 0.32, 1) 0s, top 0.4s cubic-bezier(0.23, 1, 0.32, 1) 0s;
|
|
|
}
|
|
|
|
|
|
.g6-contextmenu-ul {
|
|
|
max-width: 256px;
|
|
|
min-width: 96px;
|
|
|
list-style: none;
|
|
|
padding: 0;
|
|
|
margin: 0;
|
|
|
}
|
|
|
|
|
|
.g6-contextmenu-li {
|
|
|
padding: 8px 12px;
|
|
|
cursor: pointer;
|
|
|
user-select: none;
|
|
|
}
|
|
|
|
|
|
.g6-contextmenu-li:hover {
|
|
|
background-color: #f5f5f5;
|
|
|
cursor: pointer;
|
|
|
}
|
|
|
`;var LD=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(de){try{oe(x.next(de))}catch(ge){ee(ge)}}function ae(de){try{oe(x.throw(de))}catch(ge){ee(ge)}}function oe(de){de.done?z(de.value):b(de.value).then(re,ae)}oe((x=x.apply(E,a||[])).next())})};class O1 extends oc{constructor(a,y){super(a,Object.assign({},O1.defaultOptions,y)),this.targetElement=null,this.onTriggerEvent=x=>{var b;(b=x.preventDefault)===null||b===void 0||b.call(x),this.show(x)},this.onMenuItemClick=x=>{const{onClick:b,trigger:z}=this.options;if(x.target instanceof HTMLElement&&x.target.className.includes("g6-contextmenu-li")){const ee=x.target.getAttribute("value");b==null||b(ee,x.target,this.targetElement),this.hide()}z!=="click"&&this.hide()},this.initElement(),this.update(y)}initElement(){this.$element=iv("contextmenu",!1,{zIndex:"99"});const{className:a}=this.options;a&&this.$element.classList.add(a),this.context.canvas.getContainer().appendChild(this.$element),CS("g6-contextmenu-css","style",{},NW,document.head)}show(a){return LD(this,void 0,void 0,function*(){const{enable:y,offset:x}=this.options;if(typeof y=="function"&&!y(a)||!y){this.hide();return}const b=yield this.getDOMContent(a);b instanceof HTMLElement?(this.$element.innerHTML="",this.$element.appendChild(b)):this.$element.innerHTML=b;const z=this.context.graph.getCanvas().getContainer().getBoundingClientRect();this.$element.style.left=`${a.client.x-z.left+x[0]}px`,this.$element.style.top=`${a.client.y-z.top+x[1]}px`,this.$element.style.display="block",this.targetElement=a.target})}hide(){this.$element.style.display="none",this.targetElement=null}update(a){this.unbindEvents(),super.update(a),this.bindEvents()}destroy(){this.unbindEvents(),super.destroy(),this.$element.remove()}getDOMContent(a){return LD(this,void 0,void 0,function*(){const{getContent:y,getItems:x}=this.options;return x?BW(yield x(a)):yield y(a)})}bindEvents(){const{graph:a}=this.context,{trigger:y}=this.options;a.on(`canvas:${y}`,this.onTriggerEvent),a.on(`node:${y}`,this.onTriggerEvent),a.on(`edge:${y}`,this.onTriggerEvent),a.on(`combo:${y}`,this.onTriggerEvent),document.addEventListener("click",this.onMenuItemClick)}unbindEvents(){const{graph:a}=this.context,{trigger:y}=this.options;a.off(`canvas:${y}`,this.onTriggerEvent),a.off(`node:${y}`,this.onTriggerEvent),a.off(`edge:${y}`,this.onTriggerEvent),a.off(`combo:${y}`,this.onTriggerEvent),document.removeEventListener("click",this.onMenuItemClick)}}O1.defaultOptions={trigger:"contextmenu",offset:[4,4],loadingContent:'<div class="g6-contextmenu-loading">Loading...</div>',getContent:()=>"It is a empty context menu.",enable:()=>!0};class T1 extends oc{constructor(a,y){super(a,Object.assign({},T1.defaultOptions,y)),this.edgeBundles={},this.edgePoints={},this.onBundle=()=>{const{model:x,element:b}=this.context,z=x.getEdgeData();this.divideEdges(this.options.divisions);const{cycles:ee,iterRate:re,divRate:ae}=this.options;let{lambda:oe,divisions:de,iterations:ge}=this.options;for(let ye=0;ye<ee;ye++){for(let De=0;De<ge;De++){const ke={};z.forEach(ze=>{var We;if(ze.source===ze.target)return;const Ve=Br(ze);ke[Ve]=this.getEdgeForces(ze,de,oe);for(let Ze=0;Ze<de+1;Ze++)(We=this.edgePoints)[Ve]||(We[Ve]=[]),this.edgePoints[Ve][Ze]=us(this.edgePoints[Ve][Ze],ke[Ve][Ze])})}oe/=2,de*=ae,ge*=re,this.divideEdges(de)}z.forEach(ye=>{const De=Br(ye),ke=b.getElement(De);ke==null||ke.update({d:Hx(this.edgePoints[De])})})},this.bindEvents()}get nodeMap(){const a=this.context.model.getNodeData();return Object.fromEntries(a.map(y=>[Br(y),e0($u(y))]))}divideEdges(a){this.context.model.getEdgeData().forEach(x=>{var b;const z=Br(x);(b=this.edgePoints)[z]||(b[z]=[]);const ee=this.nodeMap[x.source],re=this.nodeMap[x.target];if(a===1)this.edgePoints[z].push(ee),this.edgePoints[z].push(xf(us(ee,re),2)),this.edgePoints[z].push(re);else{const oe=(this.edgePoints[z].length===0?Xl(ee,re):zW(this.edgePoints[z]))/(a+1);let de=oe;const ge=[ee];for(let ye=1;ye<this.edgePoints[z].length;ye++){const De=this.edgePoints[z][ye-1],ke=this.edgePoints[z][ye];let ze=Xl(ke,De);for(;ze>de;){const We=de/ze,Ve=us(De,Af(Fl(ke,De),We));ge.push(Ve),ze-=de,de=oe}de-=ze}ge.push(re),this.edgePoints[z]=ge}})}getVectorPosition(a){const y=this.nodeMap[a.source],x=this.nodeMap[a.target],[b,z]=Fl(x,y),ee=Xl(y,x);return{source:y,target:x,vx:b,vy:z,length:ee}}measureEdgeCompatibility(a,y){const x=this.getVectorPosition(a),b=this.getVectorPosition(y),z=RW(x,b),ee=FW(x,b),re=kW(x,b),ae=_W(x,b);return z*ee*re*ae}getEdgeBundles(){const a={},y=this.options.bundleThreshold,x=this.context.model.getEdgeData();return x.forEach((b,z)=>{x.forEach((ee,re)=>{var ae,oe;if(re<=z)return;this.measureEdgeCompatibility(b,ee)>=y&&(a[ae=Br(b)]||(a[ae]=[]),a[Br(b)].push(ee),a[oe=Br(ee)]||(a[oe]=[]),a[Br(ee)].push(b))})}),a}getSpringForce(a,y){const{pre:x,cur:b,next:z}=a;return Af(Fl(us(x,z),Af(b,2)),y)}getElectrostaticForce(a,y){Yf(this.edgeBundles)&&(this.edgeBundles=this.getEdgeBundles());const x=this.edgeBundles[Br(y)];let b=[0,0];return x==null||x.forEach(z=>{const ee=this.edgePoints[Br(z)][a],re=this.edgePoints[Br(y)][a],ae=Fl(ee,re),oe=Xl(ee,re);b=us(b,Af(ae,1/oe))}),b}getEdgeForces(a,y,x){const b=this.nodeMap[a.source],z=this.nodeMap[a.target],ee=this.options.K/(Xl(b,z)*(y+1)),re=[[0,0]],ae=Br(a);for(let oe=1;oe<y;oe++){const de=this.getSpringForce({pre:this.edgePoints[ae][oe-1],cur:this.edgePoints[ae][oe],next:this.edgePoints[ae][oe+1]||[0,0]},ee),ge=this.getElectrostaticForce(oe,a);re.push(Af(us(de,ge),x))}return re.push([0,0]),re}bindEvents(){const{graph:a}=this.context;a.on(hi.AFTER_RENDER,this.onBundle)}unbindEvents(){const{graph:a}=this.context;a.off(hi.AFTER_RENDER,this.onBundle)}destroy(){this.unbindEvents(),super.destroy()}}T1.defaultOptions={K:.1,lambda:.1,divisions:1,divRate:2,cycles:6,iterations:90,iterRate:2/3,bundleThreshold:.6};const RW=(E,a)=>Math.abs(p7([E.vx,E.vy],[a.vx,a.vy])/(E.length*a.length)),FW=(E,a)=>{const y=(E.length+a.length)/2;return 2/(y/Math.min(E.length,a.length)+Math.max(E.length,a.length)/y)},kW=(E,a)=>{const y=(E.length+a.length)/2,x=xf(us(E.source,E.target),2),b=xf(us(a.source,a.target),2);return y/(y+Xl(x,b))},BD=(E,a)=>{if(a.source[0]===a.target[0])return[a.source[0],E[1]];if(a.source[1]===a.target[1])return[E[0],a.source[1]];const y=(a.source[1]-a.target[1])/(a.source[0]-a.target[0]),x=(y*y*a.source[0]+y*(E[1]-a.source[1])+E[0])/(y*y+1),b=y*(x-a.source[0])+a.source[1];return[x,b]},ND=(E,a)=>{const y=BD(a.source,E),x=BD(a.target,E),b=xf(us(y,x),2),z=xf(us(E.source,E.target),2);return Xl(y,x)===0?0:Math.max(0,1-2*Xl(z,b)/Xl(y,x))},_W=(E,a)=>Math.min(ND(E,a),ND(a,E)),zW=E=>{let a=0;for(let y=1;y<E.length;y++)a+=Xl(E[y],E[y-1]);return a},jW={fill:"#fff",fillOpacity:1,lineWidth:1,stroke:"#000",strokeOpacity:.8,zIndex:-1/0},RD=.05;class L1 extends oc{constructor(a,y){super(a,Object.assign({},L1.defaultOptions,y)),this.shapes=new Map,this.r=this.options.r,this.onEdgeFilter=x=>{if(this.options.trigger==="drag"&&this.isLensOn)return;const b=mc(x.canvas);this.renderLens(b),this.renderFocusElements()},this.renderLens=x=>{const b=Object.assign({},jW,this.options.style);this.isLensOn||(this.lens=new r0({style:b}),this.canvas.appendChild(this.lens)),Object.assign(b,Sf(x),{size:this.r*2}),this.lens.update(b)},this.getFilterData=()=>{const{filter:x}=this.options,{model:b}=this.context,z=b.getData();if(!x)return z;const{nodes:ee,edges:re,combos:ae}=z;return{nodes:ee.filter(oe=>x(Br(oe),"node")),edges:re.filter(oe=>x(Br(oe),"edge")),combos:ae.filter(oe=>x(Br(oe),"combo"))}},this.getFocusElements=x=>{const{nodes:b,edges:z}=this.getFilterData(),ee=b.filter(oe=>Xl($u(oe),x)<this.r),re=ee.map(oe=>Br(oe)),ae=z.filter(oe=>{const{source:de,target:ge}=oe,ye=re.includes(de),De=re.includes(ge);switch(this.options.nodeType){case"both":return ye&&De;case"either":return ye!==De;case"source":return ye&&!De;case"target":return!ye&&De;default:return!1}});return{nodes:ee,edges:ae}},this.renderFocusElements=()=>{const{element:x,graph:b}=this.context;if(!this.isLensOn)return;const z=this.lens.getCenter(),{nodes:ee,edges:re}=this.getFocusElements(z),ae=new Set,oe=de=>{const ge=Br(de);ae.add(ge);const ye=x.getElement(ge);if(!ye)return;const De=this.shapes.get(ge)||ye.cloneNode();De.setPosition(ye.getPosition()),De.id=ye.id,this.shapes.has(ge)?Object.entries(ye.attributes).forEach(([We,Ve])=>{De.style[We]!==Ve&&(De.style[We]=Ve)}):(this.canvas.appendChild(De),this.shapes.set(ge,De));const ke=b.getElementType(ge),ze=this.getElementStyle(ke,de);De.update(ze)};ee.forEach(oe),re.forEach(oe),this.shapes.forEach((de,ge)=>{ae.has(ge)||(de.destroy(),this.shapes.delete(ge))})},this.scaleRByWheel=x=>{var b;this.options.preventDefault&&x.preventDefault();const{clientX:z,clientY:ee,deltaX:re,deltaY:ae}=x,{graph:oe,canvas:de}=this.context,ge=oe.getCanvasByClient([z,ee]),ye=(b=this.lens)===null||b===void 0?void 0:b.getCenter();if(!this.isLensOn||Xl(ge,ye)>this.r)return;const{maxR:De,minR:ke}=this.options,ze=re+ae>0?1/(1-RD):1-RD,We=Math.min(...de.getSize())/2;this.r=Math.max(ke||0,Math.min(De||We,this.r*ze)),this.renderLens(ye),this.renderFocusElements()},this.isLensDragging=!1,this.onDragStart=x=>{var b;const z=mc(x.canvas),ee=(b=this.lens)===null||b===void 0?void 0:b.getCenter();!this.isLensOn||Xl(z,ee)>this.r||(this.isLensDragging=!0)},this.onDrag=x=>{if(!this.isLensDragging)return;const b=mc(x.canvas);this.renderLens(b),this.renderFocusElements()},this.onDragEnd=()=>{this.isLensDragging=!1},this.bindEvents()}get canvas(){return this.context.canvas.getLayer("transient")}get isLensOn(){return this.lens&&!this.lens.destroyed}getElementStyle(a,y){const x=a==="node"?this.options.nodeStyle:this.options.edgeStyle;return typeof x=="function"?x(y):x}get graphDom(){return this.context.graph.getCanvas().getContextService().getDomElement()}bindEvents(){var a;const{graph:y}=this.context,{trigger:x,scaleRBy:b}=this.options,z=y.getCanvas().getLayer();["click","drag"].includes(x)&&z.addEventListener(Ea.CLICK,this.onEdgeFilter),x==="pointermove"?z.addEventListener(Ea.POINTER_MOVE,this.onEdgeFilter):x==="drag"&&(z.addEventListener(Ea.DRAG_START,this.onDragStart),z.addEventListener(Ea.DRAG,this.onDrag),z.addEventListener(Ea.DRAG_END,this.onDragEnd)),b==="wheel"&&((a=this.graphDom)===null||a===void 0||a.addEventListener(Ea.WHEEL,this.scaleRByWheel,{passive:!1}))}unbindEvents(){var a;const{graph:y}=this.context,{trigger:x,scaleRBy:b}=this.options,z=y.getCanvas().getLayer();["click","drag"].includes(x)&&z.removeEventListener(Ea.CLICK,this.onEdgeFilter),x==="pointermove"?z.removeEventListener(Ea.POINTER_MOVE,this.onEdgeFilter):x==="drag"&&(z.removeEventListener(Ea.DRAG_START,this.onDragStart),z.removeEventListener(Ea.DRAG,this.onDrag),z.removeEventListener(Ea.DRAG_END,this.onDragEnd)),b==="wheel"&&((a=this.graphDom)===null||a===void 0||a.removeEventListener(Ea.WHEEL,this.scaleRByWheel))}update(a){var y;this.unbindEvents(),super.update(a),this.r=(y=a.r)!==null&&y!==void 0?y:this.r,this.bindEvents()}destroy(){this.unbindEvents(),this.isLensOn&&this.lens.destroy(),this.shapes.forEach((a,y)=>{a.destroy(),this.shapes.delete(y)}),super.destroy()}}L1.defaultOptions={trigger:"pointermove",r:60,nodeType:"both",filter:()=>!0,style:{lineWidth:2},nodeStyle:{label:!1},edgeStyle:{label:!0},scaleRBy:"wheel",preventDefault:!0};const UW={fill:"#ccc",fillOpacity:.1,lineWidth:2,stroke:"#000",strokeOpacity:.8,labelFontSize:12},FD=.05,kD=.1;class B1 extends oc{constructor(a,y){super(a,Object.assign({},B1.defaultOptions,y)),this.r=this.options.r,this.d=this.options.d,this.onCreateFisheye=x=>{if(this.options.trigger==="drag"&&this.isLensOn)return;const b=mc(x.canvas);this.onMagnify(b)},this.onMagnify=x=>{x.some(isNaN)||(this.renderLens(x),this.renderFocusElements())},this.renderLens=x=>{const b=Object.assign({},UW,this.options.style);this.isLensOn||(this.lens=new r0({style:b}),this.canvas.appendChild(this.lens)),Object.assign(b,Sf(x),{size:this.r*2,label:this.options.showDPercent,labelText:this.getDPercent()}),this.lens.update(b)},this.getDPercent=()=>{const{minD:x,maxD:b}=this.options;return`${Math.round((this.d-x)/(b-x)*100)}%`},this.prevMagnifiedStyleMap=new Map,this.prevOriginStyleMap=new Map,this.renderFocusElements=()=>{if(!this.isLensOn)return;const{graph:x}=this.context,b=this.lens.getCenter(),z=(this.d+1)*this.r,ee=new Map,re=new Map;x.getNodeData().forEach(oe=>{const de=$u(oe),ge=Xl(de,b);if(ge>this.r)return;const ye=z*ge/(this.d*ge+this.r),[De,ke]=de,[ze,We]=b,Ve=(De-ze)/ge,Ze=(ke-We)/ge,Ye=[ze+ye*Ve,We+ye*Ze],et=Br(oe),st=this.getNodeStyle(oe),ht=i0(x.getElementRenderStyle(et),Object.keys(st));ee.set(et,Object.assign(Object.assign({},Sf(Ye)),st)),re.set(et,Object.assign(Object.assign({},Sf(de)),ht))}),this.updateStyle(ee,re)},this.getNodeStyle=x=>{const{nodeStyle:b}=this.options;return typeof b=="function"?b(x):b},this.updateStyle=(x,b)=>{const{graph:z,element:ee}=this.context,{enter:re,exit:ae,keep:oe}=eg(Array.from(this.prevMagnifiedStyleMap.keys()),Array.from(x.keys()),ye=>ye),de=new Set,ge=(ye,De)=>{const ke=ee.getElement(ye);ke==null||ke.update(De),z.getRelatedEdgesData(ye).forEach(ze=>{de.add(Br(ze))})};[...re,...oe].forEach(ye=>{ge(ye,x.get(ye))}),ae.forEach(ye=>{ge(ye,this.prevOriginStyleMap.get(ye)),this.prevOriginStyleMap.delete(ye)}),de.forEach(ye=>{const De=ee.getElement(ye);De==null||De.update({})}),this.prevMagnifiedStyleMap=x,b.forEach((ye,De)=>{this.prevOriginStyleMap.has(De)||this.prevOriginStyleMap.set(De,ye)})},this.isWheelValid=x=>{if(this.options.preventDefault&&x.preventDefault(),!this.isLensOn)return!1;const{clientX:b,clientY:z}=x,ee=this.context.graph.getCanvasByClient([b,z]),re=this.lens.getCenter();return!(Xl(ee,re)>this.r)},this.scaleR=x=>{const{maxR:b,minR:z}=this.options,ee=x?1/(1-FD):1-FD,re=Math.min(...this.context.canvas.getSize())/2;this.r=Math.max(z||0,Math.min(b||re,this.r*ee))},this.scaleD=x=>{const{maxD:b,minD:z}=this.options,ee=x?this.d+kD:this.d-kD;this.d=Math.max(z,Math.min(b,ee))},this.scaleRByWheel=x=>{if(!this.isWheelValid(x))return;const{deltaX:b,deltaY:z}=x;this.scaleR(b+z>0);const ee=this.lens.getCenter();this.onMagnify(ee)},this.scaleDByWheel=x=>{if(!this.isWheelValid(x))return;const{deltaX:b,deltaY:z}=x;this.scaleD(b+z>0);const ee=this.lens.getCenter();this.onMagnify(ee)},this.isDragValid=x=>{if(this.options.preventDefault&&x.preventDefault(),!this.isLensOn)return!1;const b=mc(x.canvas),z=this.lens.getCenter();return!(Xl(b,z)>this.r)},this.isLensDragging=!1,this.onDragStart=x=>{this.isDragValid(x)&&(this.isLensDragging=!0)},this.onDrag=x=>{if(!this.isLensDragging)return;const b=mc(x.canvas);this.onMagnify(b)},this.onDragEnd=()=>{this.isLensDragging=!1},this.scaleRByDrag=x=>{if(!this.isLensDragging)return;const{dx:b,dy:z}=x;this.scaleR(b-z>0);const ee=this.lens.getCenter();this.onMagnify(ee)},this.scaleDByDrag=x=>{if(!this.isLensDragging)return;const{dx:b,dy:z}=x;this.scaleD(b-z>0);const ee=this.lens.getCenter();this.onMagnify(ee)},this.bindEvents()}get canvas(){return this.context.canvas.getLayer("transient")}get isLensOn(){return this.lens&&!this.lens.destroyed}get graphDom(){return this.context.graph.getCanvas().getContextService().getDomElement()}bindEvents(){var a;const{graph:y}=this.context,{trigger:x,scaleRBy:b,scaleDBy:z}=this.options,ee=y.getCanvas().getLayer();if(["click","drag"].includes(x)&&ee.addEventListener(Ea.CLICK,this.onCreateFisheye),x==="pointermove"&&ee.addEventListener(Ea.POINTER_MOVE,this.onCreateFisheye),x==="drag"||b==="drag"||z==="drag"){ee.addEventListener(Ea.DRAG_START,this.onDragStart),ee.addEventListener(Ea.DRAG_END,this.onDragEnd);const re=x==="drag"?this.onDrag:b==="drag"?this.scaleRByDrag:this.scaleDByDrag;ee.addEventListener(Ea.DRAG,re)}if(b==="wheel"||z==="wheel"){const re=b==="wheel"?this.scaleRByWheel:this.scaleDByWheel;(a=this.graphDom)===null||a===void 0||a.addEventListener(Ea.WHEEL,re,{passive:!1})}}unbindEvents(){var a;const{graph:y}=this.context,{trigger:x,scaleRBy:b,scaleDBy:z}=this.options,ee=y.getCanvas().getLayer();if(["click","drag"].includes(x)&&ee.removeEventListener(Ea.CLICK,this.onCreateFisheye),x==="pointermove"&&ee.removeEventListener(Ea.POINTER_MOVE,this.onCreateFisheye),x==="drag"||b==="drag"||z==="drag"){ee.removeEventListener(Ea.DRAG_START,this.onDragStart),ee.removeEventListener(Ea.DRAG_END,this.onDragEnd);const re=x==="drag"?this.onDrag:b==="drag"?this.scaleRByDrag:this.scaleDByDrag;ee.removeEventListener(Ea.DRAG,re)}if(b==="wheel"||z==="wheel"){const re=b==="wheel"?this.scaleRByWheel:this.scaleDByWheel;(a=this.graphDom)===null||a===void 0||a.removeEventListener(Ea.WHEEL,re)}}update(a){var y,x;this.unbindEvents(),super.update(a),this.r=(y=a.r)!==null&&y!==void 0?y:this.r,this.d=(x=a.d)!==null&&x!==void 0?x:this.d,this.bindEvents()}destroy(){var a;this.unbindEvents(),this.isLensOn&&((a=this.lens)===null||a===void 0||a.destroy()),this.prevMagnifiedStyleMap.clear(),this.prevOriginStyleMap.clear(),super.destroy()}}B1.defaultOptions={trigger:"pointermove",r:120,d:1.5,maxD:5,minD:0,showDPercent:!0,style:{},nodeStyle:{label:!0},preventDefault:!0};class N1 extends oc{constructor(a,y){super(a,Object.assign({},N1.defaultOptions,y)),this.$el=this.context.canvas.getContainer(),this.graphSize=[0,0],this.onFullscreenChange=()=>{var x,b,z,ee;const re=!!document.fullscreenElement;this.options.autoFit&&this.setGraphSize(re),re?(b=(x=this.options).onEnter)===null||b===void 0||b.call(x):(ee=(z=this.options).onExit)===null||ee===void 0||ee.call(z)},this.shortcut=new X0(a.graph),this.bindEvents(),this.style=document.createElement("style"),document.head.appendChild(this.style),this.style.innerHTML=`
|
|
|
:not(:root):fullscreen::backdrop {
|
|
|
background: transparent;
|
|
|
}
|
|
|
`}bindEvents(){this.unbindEvents(),this.shortcut.unbindAll();const{request:a=[],exit:y=[]}=this.options.trigger;this.shortcut.bind(a,this.request),this.shortcut.bind(y,this.exit),["webkitfullscreenchange","mozfullscreenchange","fullscreenchange","MSFullscreenChange"].forEach(b=>{document.addEventListener(b,this.onFullscreenChange,!1)})}unbindEvents(){this.shortcut.unbindAll(),["webkitfullscreenchange","mozfullscreenchange","fullscreenchange","MSFullscreenChange"].forEach(y=>{document.removeEventListener(y,this.onFullscreenChange,!1)})}setGraphSize(a=!0){var y,x;let b,z;a?(b=((y=globalThis.screen)===null||y===void 0?void 0:y.width)||0,z=((x=globalThis.screen)===null||x===void 0?void 0:x.height)||0,this.graphSize=this.context.graph.getSize()):[b,z]=this.graphSize,this.context.graph.setSize(b,z),this.context.graph.render()}request(){document.fullscreenElement||!WW()||this.$el.requestFullscreen().catch(a=>{ld.warn(`Error attempting to enable full-screen: ${a.message} (${a.name})`)})}exit(){document.fullscreenElement&&document.exitFullscreen()}update(a){this.unbindEvents(),super.update(a),this.bindEvents()}destroy(){this.exit(),this.style.remove(),super.destroy()}}N1.defaultOptions={trigger:{},autoFit:!0};function WW(){return document.fullscreenEnabled||Reflect.get(document,"webkitFullscreenEnabled")||Reflect.get(document,"mozFullscreenEnabled")||Reflect.get(document,"msFullscreenEnabled")}class R1 extends oc{constructor(a,y){super(a,Object.assign({},R1.defaultOptions,y)),this.$element=iv("grid-line",!0),this.offset=[0,0],this.currentScale=1,this.followZoom=b=>{const{data:{scale:z,origin:ee}}=b;if(!z||ee===void 0&&this.context.viewport===void 0)return;const re=this.currentScale;this.currentScale=z;const ae=z/re,oe=Af(ee||this.context.graph.getCanvasCenter(),1-ae),de=this.baseSize*z,ge=Af(this.offset,ae),ye=bx(ge,de),De=us(ye,oe);this.$element.style.backgroundSize=`${de}px ${de}px`,this.$element.style.backgroundPosition=`${De[0]}px ${De[1]}px`,this.offset=bx(De,de)},this.followTranslate=b=>{if(!this.options.follow)return;const{data:{translate:z}}=b;z&&this.updateOffset(z)},this.onTransform=b=>{const z=this.parseFollow(this.options.follow);z.zoom&&this.followZoom(b),z.translate&&this.followTranslate(b)},this.context.canvas.getContainer().prepend(this.$element),this.baseSize=this.options.size,this.updateStyle(),this.bindEvents()}update(a){super.update(a),a.size!==void 0&&(this.baseSize=a.size),this.updateStyle()}bindEvents(){const{graph:a}=this.context;a.on(hi.AFTER_TRANSFORM,this.onTransform)}updateStyle(){const{stroke:a,lineWidth:y,border:x,borderLineWidth:b,borderStroke:z,borderStyle:ee}=this.options,re=this.baseSize*this.currentScale;Object.assign(this.$element.style,{border:x?`${b}px ${ee} ${z}`:"none",backgroundImage:`linear-gradient(${a} ${y}px, transparent ${y}px), linear-gradient(90deg, ${a} ${y}px, transparent ${y}px)`,backgroundSize:`${re}px ${re}px`,backgroundRepeat:"repeat"})}updateOffset(a){const y=this.baseSize*this.currentScale;this.offset=bx(us(this.offset,a),y),this.$element.style.backgroundPosition=`${this.offset[0]}px ${this.offset[1]}px`}parseFollow(a){var y,x;return _v(a)?{translate:a,zoom:a}:{translate:(y=a==null?void 0:a.translate)!==null&&y!==void 0?y:!1,zoom:(x=a==null?void 0:a.zoom)!==null&&x!==void 0?x:!1}}destroy(){this.context.graph.off(hi.AFTER_TRANSFORM,this.onTransform),this.$element.remove(),super.destroy()}}R1.defaultOptions={border:!0,borderLineWidth:1,borderStroke:"#eee",borderStyle:"solid",lineWidth:1,size:20,stroke:"#eee"};function IS(E){const a={Added:new Map,Updated:new Map,Removed:new Map};return E.forEach(y=>{const{type:x,value:b}=y,z=Br(b);if(x==="NodeAdded"||x==="EdgeAdded"||x==="ComboAdded")a.Added.set(z,y);else if(x==="NodeUpdated"||x==="EdgeUpdated"||x==="ComboUpdated")if(a.Added.has(z))a.Added.set(z,{type:x.replace("Updated","Added"),value:b});else if(a.Updated.has(z)){const{original:ee}=a.Updated.get(z);a.Updated.set(z,{type:x,value:b,original:ee})}else a.Removed.has(z)||a.Updated.set(z,y);else(x==="NodeRemoved"||x==="EdgeRemoved"||x==="ComboRemoved")&&(a.Added.has(z)?a.Added.delete(z):(a.Updated.has(z)&&a.Updated.delete(z),a.Removed.set(z,y)))}),[...Array.from(a.Added.values()),...Array.from(a.Updated.values()),...Array.from(a.Removed.values())]}function _D(E){const{NodeAdded:a=[],NodeUpdated:y=[],NodeRemoved:x=[],EdgeAdded:b=[],EdgeUpdated:z=[],EdgeRemoved:ee=[],ComboAdded:re=[],ComboUpdated:ae=[],ComboRemoved:oe=[]}=ny(E,de=>de.type);return{add:{nodes:a,edges:b,combos:re},update:{nodes:y,edges:z,combos:ae},remove:{nodes:x,edges:ee,combos:oe}}}function zD(E,a){for(const y in E)Tu(E[y])&&!Array.isArray(E[y])&&E[y]!==null?(a[y]||(a[y]={}),zD(E[y],a[y])):a[y]===void 0&&(a[y]=am(y))}function GW(E,a=!1,y){const x={animation:a,current:{add:{},update:{},remove:{}},original:{add:{},update:{},remove:{}}},{add:b,update:z,remove:ee}=_D(IS(E));return["nodes","edges","combos"].forEach(re=>{z[re]&&z[re].forEach(ae=>{var oe,de;const ge=Object.assign({},ae.value);let ye=Object.assign({},ae.original);if(y){const De=y.graph.getElementType(Br(ae.original)),ke=De==="edge"?"stroke":"fill",ze=y.element.getElementComputedStyle(De,ae.original);ye=Object.assign(Object.assign({},ae.original),{style:Object.assign({[ke]:ze[ke]},ae.original.style)})}zD(ge,ye),(oe=x.current.update)[re]||(oe[re]=[]),x.current.update[re].push(ge),(de=x.original.update)[re]||(de[re]=[]),x.original.update[re].push(ye)}),b[re]&&b[re].forEach(ae=>{var oe,de;const ge=Object.assign({},ae.value);(oe=x.current.add)[re]||(oe[re]=[]),x.current.add[re].push(ge),(de=x.original.remove)[re]||(de[re]=[]),x.original.remove[re].push(ge)}),ee[re]&&ee[re].forEach(ae=>{var oe,de;const ge=Object.assign({},ae.value);(oe=x.current.remove)[re]||(oe[re]=[]),x.current.remove[re].push(ge),(de=x.original.add)[re]||(de[re]=[]),x.original.add[re].push(ge)})}),x}class F1 extends oc{constructor(a,y){super(a,Object.assign({},F1.defaultOptions,y)),this.batchChanges=null,this.batchAnimation=!1,this.undoStack=[],this.redoStack=[],this.freezed=!1,this.executeCommand=(b,z=!0)=>{var ee,re,ae;this.freezed=!0,(re=(ee=this.options).executeCommand)===null||re===void 0||re.call(ee,b);const oe=z?b.original:b.current;this.context.graph.addData(oe.add),this.context.graph.updateData(oe.update),this.context.graph.removeData(Zw(oe.remove,!1)),(ae=this.context.element)===null||ae===void 0||ae.draw({silence:!0,animation:b.animation}),this.freezed=!1},this.addCommand=b=>{var z;if(!this.freezed){if(b.type===hi.AFTER_DRAW){const{dataChanges:ee=[],animation:re=!0}=b.data;if(!((z=this.context.batch)===null||z===void 0)&&z.isBatching){if(!this.batchChanges)return;this.batchChanges.push(ee),this.batchAnimation&&(this.batchAnimation=re);return}this.batchChanges=[ee],this.batchAnimation=re}this.undoStackPush(GW(this.batchChanges.flat(),this.batchAnimation,this.context)),this.notify(Xh.ADD,this.undoStack[this.undoStack.length-1])}},this.initBatchCommand=b=>{const{initiate:z}=b.data;this.batchAnimation=!1,z?this.batchChanges=[]:this.undoStack.pop()||(this.batchChanges=null)},this.emitter=new $y;const{graph:x}=this.context;x.on(hi.AFTER_DRAW,this.addCommand),x.on(hi.BATCH_START,this.initBatchCommand),x.on(hi.BATCH_END,this.addCommand)}canUndo(){return this.undoStack.length>0}canRedo(){return this.redoStack.length>0}undo(){var a,y,x,b;const z=this.undoStack.pop();if(z){if(this.executeCommand(z),((y=(a=this.options).beforeAddCommand)===null||y===void 0?void 0:y.call(a,z,!1))===!1)return;this.redoStack.push(z),(b=(x=this.options).afterAddCommand)===null||b===void 0||b.call(x,z,!1),this.notify(Xh.UNDO,z)}return this}redo(){const a=this.redoStack.pop();return a&&(this.executeCommand(a,!1),this.undoStackPush(a),this.notify(Xh.REDO,a)),this}undoAndCancel(){const a=this.undoStack.pop();return a&&(this.executeCommand(a,!1),this.redoStack=[],this.notify(Xh.CANCEL,a)),this}undoStackPush(a){var y,x,b,z;const{stackSize:ee}=this.options;ee!==0&&this.undoStack.length>=ee&&this.undoStack.shift(),((x=(y=this.options).beforeAddCommand)===null||x===void 0?void 0:x.call(y,a,!0))!==!1&&(this.undoStack.push(a),(z=(b=this.options).afterAddCommand)===null||z===void 0||z.call(b,a,!0))}clear(){this.undoStack=[],this.redoStack=[],this.batchChanges=null,this.batchAnimation=!1,this.notify(Xh.CLEAR,null)}notify(a,y){this.emitter.emit(a,{cmd:y}),this.emitter.emit(Xh.CHANGE,{cmd:y})}on(a,y){this.emitter.on(a,y)}destroy(){const{graph:a}=this.context;a.off(hi.AFTER_DRAW,this.addCommand),a.off(hi.BATCH_START,this.initBatchCommand),a.off(hi.BATCH_END,this.addCommand),this.emitter.off(),super.destroy(),this.undoStack=[],this.redoStack=[]}}F1.defaultOptions={stackSize:0};const OS={toXy(E,a){if(!a)return[...E];const y=a[0].slice(1),x=a[1].slice(1);return E.map(b=>[b[y],b[x]])},fromXy(E,a){if(!a)return[...E];const y=a[0].slice(1),x=a[1].slice(1);return E.map(([b,z])=>({[y]:b,[x]:z}))}};class HW{constructor(a,y){this._cells=[],this._cellSize=y,this._reverseCellSize=1/y;for(const x of a){const b=this.coordToCellNum(x[0]),z=this.coordToCellNum(x[1]);this._cells[b]||(this._cells[b]=[]),this._cells[b][z]||(this._cells[b][z]=[]),this._cells[b][z].push(x)}}cellPoints(a,y){var x;return((x=this._cells[a])===null||x===void 0?void 0:x[y])||[]}rangePoints(a){const y=this.coordToCellNum(a[0]),x=this.coordToCellNum(a[1]),b=this.coordToCellNum(a[2]),z=this.coordToCellNum(a[3]),ee=[];for(let re=y;re<=b;re++)for(let ae=x;ae<=z;ae++){const oe=this.cellPoints(re,ae);for(const de of oe)ee.push(de)}return ee}removePoint(a){const y=this.coordToCellNum(a[0]),x=this.coordToCellNum(a[1]),b=this._cells[y][x],z=b.findIndex(([ee,re])=>ee===a[0]&&re===a[1]);return z>-1&&b.splice(z,1),b}trunc(a){return Math.trunc(a)}coordToCellNum(a){return this.trunc(a*this._reverseCellSize)}extendBbox(a,y){return[a[0]-y*this._cellSize,a[1]-y*this._cellSize,a[2]+y*this._cellSize,a[3]+y*this._cellSize]}}function VW(E,a){return new HW(E,a)}const jD=+(Math.pow(2,27)+1);function k1(E,a,y){const x=E*a,b=jD*E,z=b-E,ee=b-z,re=E-ee,ae=jD*a,oe=ae-a,de=ae-oe,ge=a-de,ke=x-ee*de-re*de-ee*ge,ze=re*ge-ke;return y?(y[0]=ze,y[1]=x,y):[ze,x]}function KW(E,a,y){const x=E+a,b=x-E,z=x-b,ee=a-b,re=E-z;return y?(y[0]=re+ee,y[1]=x,y):[re+ee,x]}function ZW(E,a){const y=E.length;if(y===1){const re=k1(E[0],a);return re[0]?re:[re[1]]}const x=new Array(2*y),b=[.1,.1],z=[.1,.1];let ee=0;k1(E[0],a,b),b[0]&&(x[ee++]=b[0]);for(let re=1;re<y;++re){k1(E[re],a,z);const ae=b[1];KW(ae,z[0],b),b[0]&&(x[ee++]=b[0]);const oe=z[1],de=b[1],ge=oe+de,ye=ge-oe,De=de-ye;b[1]=ge,De&&(x[ee++]=De)}return b[1]&&(x[ee++]=b[1]),ee===0&&(x[ee++]=0),x.length=ee,x}function QW(E,a){const y=E+a,x=y-E,b=y-x,z=a-x,re=E-b+z;return re?[re,y]:[y]}function YW(E,a){const y=E.length|0,x=a.length|0;if(y===1&&x===1)return QW(E[0],-a[0]);const b=y+x,z=new Array(b);let ee=0,re=0,ae=0;const oe=Math.abs;let de=E[re],ge=oe(de),ye=-a[ae],De=oe(ye),ke,ze;ge<De?(ze=de,re+=1,re<y&&(de=E[re],ge=oe(de))):(ze=ye,ae+=1,ae<x&&(ye=-a[ae],De=oe(ye))),re<y&&ge<De||ae>=x?(ke=de,re+=1,re<y&&(de=E[re],ge=oe(de))):(ke=ye,ae+=1,ae<x&&(ye=-a[ae],De=oe(ye)));let We=ke+ze,Ve=We-ke,Ze=ze-Ve,Ye=Ze,et=We,st,ht,mt,dt,Ot;for(;re<y&&ae<x;)ge<De?(ke=de,re+=1,re<y&&(de=E[re],ge=oe(de))):(ke=ye,ae+=1,ae<x&&(ye=-a[ae],De=oe(ye))),ze=Ye,We=ke+ze,Ve=We-ke,Ze=ze-Ve,Ze&&(z[ee++]=Ze),st=et+We,ht=st-et,mt=st-ht,dt=We-ht,Ot=et-mt,Ye=Ot+dt,et=st;for(;re<y;)ke=de,ze=Ye,We=ke+ze,Ve=We-ke,Ze=ze-Ve,Ze&&(z[ee++]=Ze),st=et+We,ht=st-et,mt=st-ht,dt=We-ht,Ot=et-mt,Ye=Ot+dt,et=st,re+=1,re<y&&(de=E[re]);for(;ae<x;)ke=ye,ze=Ye,We=ke+ze,Ve=We-ke,Ze=ze-Ve,Ze&&(z[ee++]=Ze),st=et+We,ht=st-et,mt=st-ht,dt=We-ht,Ot=et-mt,Ye=Ot+dt,et=st,ae+=1,ae<x&&(ye=-a[ae]);return Ye&&(z[ee++]=Ye),et&&(z[ee++]=et),ee||(z[ee++]=0),z.length=ee,z}function XW(E,a){const y=E+a,x=y-E,b=y-x,z=a-x,re=E-b+z;return re?[re,y]:[y]}function JW(E,a){const y=E.length|0,x=a.length|0;if(y===1&&x===1)return XW(E[0],a[0]);const b=y+x,z=new Array(b);let ee=0,re=0,ae=0;const oe=Math.abs;let de=E[re],ge=oe(de),ye=a[ae],De=oe(ye),ke,ze;ge<De?(ze=de,re+=1,re<y&&(de=E[re],ge=oe(de))):(ze=ye,ae+=1,ae<x&&(ye=a[ae],De=oe(ye))),re<y&&ge<De||ae>=x?(ke=de,re+=1,re<y&&(de=E[re],ge=oe(de))):(ke=ye,ae+=1,ae<x&&(ye=a[ae],De=oe(ye)));let We=ke+ze,Ve=We-ke,Ze=ze-Ve,Ye=Ze,et=We,st,ht,mt,dt,Ot;for(;re<y&&ae<x;)ge<De?(ke=de,re+=1,re<y&&(de=E[re],ge=oe(de))):(ke=ye,ae+=1,ae<x&&(ye=a[ae],De=oe(ye))),ze=Ye,We=ke+ze,Ve=We-ke,Ze=ze-Ve,Ze&&(z[ee++]=Ze),st=et+We,ht=st-et,mt=st-ht,dt=We-ht,Ot=et-mt,Ye=Ot+dt,et=st;for(;re<y;)ke=de,ze=Ye,We=ke+ze,Ve=We-ke,Ze=ze-Ve,Ze&&(z[ee++]=Ze),st=et+We,ht=st-et,mt=st-ht,dt=We-ht,Ot=et-mt,Ye=Ot+dt,et=st,re+=1,re<y&&(de=E[re]);for(;ae<x;)ke=ye,ze=Ye,We=ke+ze,Ve=We-ke,Ze=ze-Ve,Ze&&(z[ee++]=Ze),st=et+We,ht=st-et,mt=st-ht,dt=We-ht,Ot=et-mt,Ye=Ot+dt,et=st,ae+=1,ae<x&&(ye=a[ae]);return Ye&&(z[ee++]=Ye),et&&(z[ee++]=et),ee||(z[ee++]=0),z.length=ee,z}const UD=5,_1=11102230246251565e-32,qW=(3+16*_1)*_1,$W=(7+56*_1)*_1;function eG(E,a,y,x){return function(z,ee,re){const ae=E(E(a(ee[1],re[0]),a(-re[1],ee[0])),E(a(z[1],ee[0]),a(-ee[1],z[0]))),oe=E(a(z[1],re[0]),a(-re[1],z[0])),de=x(ae,oe);return de[de.length-1]}}function tG(E,a,y,x){return function(z,ee,re,ae){const oe=E(E(y(E(a(re[1],ae[0]),a(-ae[1],re[0])),ee[2]),E(y(E(a(ee[1],ae[0]),a(-ae[1],ee[0])),-re[2]),y(E(a(ee[1],re[0]),a(-re[1],ee[0])),ae[2]))),E(y(E(a(ee[1],ae[0]),a(-ae[1],ee[0])),z[2]),E(y(E(a(z[1],ae[0]),a(-ae[1],z[0])),-ee[2]),y(E(a(z[1],ee[0]),a(-ee[1],z[0])),ae[2])))),de=E(E(y(E(a(re[1],ae[0]),a(-ae[1],re[0])),z[2]),E(y(E(a(z[1],ae[0]),a(-ae[1],z[0])),-re[2]),y(E(a(z[1],re[0]),a(-re[1],z[0])),ae[2]))),E(y(E(a(ee[1],re[0]),a(-re[1],ee[0])),z[2]),E(y(E(a(z[1],re[0]),a(-re[1],z[0])),-ee[2]),y(E(a(z[1],ee[0]),a(-ee[1],z[0])),re[2])))),ge=x(oe,de);return ge[ge.length-1]}}function nG(E,a,y,x){return function(z,ee,re,ae,oe){const de=E(E(E(y(E(y(E(a(ae[1],oe[0]),a(-oe[1],ae[0])),re[2]),E(y(E(a(re[1],oe[0]),a(-oe[1],re[0])),-ae[2]),y(E(a(re[1],ae[0]),a(-ae[1],re[0])),oe[2]))),ee[3]),E(y(E(y(E(a(ae[1],oe[0]),a(-oe[1],ae[0])),ee[2]),E(y(E(a(ee[1],oe[0]),a(-oe[1],ee[0])),-ae[2]),y(E(a(ee[1],ae[0]),a(-ae[1],ee[0])),oe[2]))),-re[3]),y(E(y(E(a(re[1],oe[0]),a(-oe[1],re[0])),ee[2]),E(y(E(a(ee[1],oe[0]),a(-oe[1],ee[0])),-re[2]),y(E(a(ee[1],re[0]),a(-re[1],ee[0])),oe[2]))),ae[3]))),E(y(E(y(E(a(re[1],ae[0]),a(-ae[1],re[0])),ee[2]),E(y(E(a(ee[1],ae[0]),a(-ae[1],ee[0])),-re[2]),y(E(a(ee[1],re[0]),a(-re[1],ee[0])),ae[2]))),-oe[3]),E(y(E(y(E(a(ae[1],oe[0]),a(-oe[1],ae[0])),ee[2]),E(y(E(a(ee[1],oe[0]),a(-oe[1],ee[0])),-ae[2]),y(E(a(ee[1],ae[0]),a(-ae[1],ee[0])),oe[2]))),z[3]),y(E(y(E(a(ae[1],oe[0]),a(-oe[1],ae[0])),z[2]),E(y(E(a(z[1],oe[0]),a(-oe[1],z[0])),-ae[2]),y(E(a(z[1],ae[0]),a(-ae[1],z[0])),oe[2]))),-ee[3])))),E(E(y(E(y(E(a(ee[1],oe[0]),a(-oe[1],ee[0])),z[2]),E(y(E(a(z[1],oe[0]),a(-oe[1],z[0])),-ee[2]),y(E(a(z[1],ee[0]),a(-ee[1],z[0])),oe[2]))),ae[3]),E(y(E(y(E(a(ee[1],ae[0]),a(-ae[1],ee[0])),z[2]),E(y(E(a(z[1],ae[0]),a(-ae[1],z[0])),-ee[2]),y(E(a(z[1],ee[0]),a(-ee[1],z[0])),ae[2]))),-oe[3]),y(E(y(E(a(re[1],ae[0]),a(-ae[1],re[0])),ee[2]),E(y(E(a(ee[1],ae[0]),a(-ae[1],ee[0])),-re[2]),y(E(a(ee[1],re[0]),a(-re[1],ee[0])),ae[2]))),z[3]))),E(y(E(y(E(a(re[1],ae[0]),a(-ae[1],re[0])),z[2]),E(y(E(a(z[1],ae[0]),a(-ae[1],z[0])),-re[2]),y(E(a(z[1],re[0]),a(-re[1],z[0])),ae[2]))),-ee[3]),E(y(E(y(E(a(ee[1],ae[0]),a(-ae[1],ee[0])),z[2]),E(y(E(a(z[1],ae[0]),a(-ae[1],z[0])),-ee[2]),y(E(a(z[1],ee[0]),a(-ee[1],z[0])),ae[2]))),re[3]),y(E(y(E(a(ee[1],re[0]),a(-re[1],ee[0])),z[2]),E(y(E(a(z[1],re[0]),a(-re[1],z[0])),-ee[2]),y(E(a(z[1],ee[0]),a(-ee[1],z[0])),re[2]))),-ae[3]))))),ge=E(E(E(y(E(y(E(a(ae[1],oe[0]),a(-oe[1],ae[0])),re[2]),E(y(E(a(re[1],oe[0]),a(-oe[1],re[0])),-ae[2]),y(E(a(re[1],ae[0]),a(-ae[1],re[0])),oe[2]))),z[3]),y(E(y(E(a(ae[1],oe[0]),a(-oe[1],ae[0])),z[2]),E(y(E(a(z[1],oe[0]),a(-oe[1],z[0])),-ae[2]),y(E(a(z[1],ae[0]),a(-ae[1],z[0])),oe[2]))),-re[3])),E(y(E(y(E(a(re[1],oe[0]),a(-oe[1],re[0])),z[2]),E(y(E(a(z[1],oe[0]),a(-oe[1],z[0])),-re[2]),y(E(a(z[1],re[0]),a(-re[1],z[0])),oe[2]))),ae[3]),y(E(y(E(a(re[1],ae[0]),a(-ae[1],re[0])),z[2]),E(y(E(a(z[1],ae[0]),a(-ae[1],z[0])),-re[2]),y(E(a(z[1],re[0]),a(-re[1],z[0])),ae[2]))),-oe[3]))),E(E(y(E(y(E(a(re[1],oe[0]),a(-oe[1],re[0])),ee[2]),E(y(E(a(ee[1],oe[0]),a(-oe[1],ee[0])),-re[2]),y(E(a(ee[1],re[0]),a(-re[1],ee[0])),oe[2]))),z[3]),y(E(y(E(a(re[1],oe[0]),a(-oe[1],re[0])),z[2]),E(y(E(a(z[1],oe[0]),a(-oe[1],z[0])),-re[2]),y(E(a(z[1],re[0]),a(-re[1],z[0])),oe[2]))),-ee[3])),E(y(E(y(E(a(ee[1],oe[0]),a(-oe[1],ee[0])),z[2]),E(y(E(a(z[1],oe[0]),a(-oe[1],z[0])),-ee[2]),y(E(a(z[1],ee[0]),a(-ee[1],z[0])),oe[2]))),re[3]),y(E(y(E(a(ee[1],re[0]),a(-re[1],ee[0])),z[2]),E(y(E(a(z[1],re[0]),a(-re[1],z[0])),-ee[2]),y(E(a(z[1],ee[0]),a(-ee[1],z[0])),re[2]))),-oe[3])))),ye=x(de,ge);return ye[ye.length-1]}}function z1(E){return(E===3?eG:E===4?tG:nG)(JW,k1,ZW,YW)}const rG=z1(3),aG=z1(4),h0=[function(){return 0},function(){return 0},function(a,y){return y[0]-a[0]},function(a,y,x){const b=(a[1]-x[1])*(y[0]-x[0]),z=(a[0]-x[0])*(y[1]-x[1]),ee=b-z;let re;if(b>0){if(z<=0)return ee;re=b+z}else if(b<0){if(z>=0)return ee;re=-(b+z)}else return ee;const ae=qW*re;return ee>=ae||ee<=-ae?ee:rG(a,y,x)},function(a,y,x,b){const z=a[0]-b[0],ee=y[0]-b[0],re=x[0]-b[0],ae=a[1]-b[1],oe=y[1]-b[1],de=x[1]-b[1],ge=a[2]-b[2],ye=y[2]-b[2],De=x[2]-b[2],ke=ee*de,ze=re*oe,We=re*ae,Ve=z*de,Ze=z*oe,Ye=ee*ae,et=ge*(ke-ze)+ye*(We-Ve)+De*(Ze-Ye),st=(Math.abs(ke)+Math.abs(ze))*Math.abs(ge)+(Math.abs(We)+Math.abs(Ve))*Math.abs(ye)+(Math.abs(Ze)+Math.abs(Ye))*Math.abs(De),ht=$W*st;return et>ht||-et>ht?et:aG(a,y,x,b)}];function iG(E){let a=h0[E.length];return a||(a=h0[E.length]=z1(E.length)),a.apply(void 0,...E)}function oG(E,a,y,x,b,z,ee){return function(...ae){switch(ae.length){case 0:case 1:return 0;case 2:return x(ae[0],ae[1]);case 3:return b(ae[0],ae[1],ae[2]);case 4:return z(ae[0],ae[1],ae[2],ae[3]);case 5:return ee(ae[0],ae[1],ae[2],ae[3],ae[4])}return E(ae)}}function sG(){for(;h0.length<=UD;)h0.push(z1(h0.length));const E=oG(void 0,iG,...h0);for(let a=0;a<=UD;++a)E[a]=h0[a];return E}var Tm=sG();const WD=Tm[3];function lG(E){const a=E.length;if(a<3){const re=new Array(a);for(let ae=0;ae<a;++ae)re[ae]=ae;return a===2&&E[0][0]===E[1][0]&&E[0][1]===E[1][1]?[0]:re}const y=new Array(a);for(let re=0;re<a;++re)y[re]=re;y.sort((re,ae)=>{const oe=E[re][0]-E[ae][0];return oe||E[re][1]-E[ae][1]});const x=[y[0],y[1]],b=[y[0],y[1]];for(let re=2;re<a;++re){const ae=y[re],oe=E[ae];let de=x.length;for(;de>1&&WD(E[x[de-2]],E[x[de-1]],oe)<=0;)de-=1,x.pop();for(x.push(ae),de=b.length;de>1&&WD(E[b[de-2]],E[b[de-1]],oe)>=0;)de-=1,b.pop();b.push(ae)}const z=new Array(b.length+x.length-2);let ee=0;for(let re=0,ae=x.length;re<ae;++re)z[ee++]=x[re];for(let re=b.length-2;re>0;--re)z[ee++]=b[re];return z}function uG(E,a,y,x){for(let b=0;b<2;++b){const z=E[b],ee=a[b],[re,ae]=[Math.min(z,ee),Math.max(z,ee)],oe=y[b],de=x[b],[ge,ye]=[Math.min(oe,de),Math.max(oe,de)];if(ye<re||ae<ge)return!1}return!0}function cG(E,a,y,x){const b=Tm(E,y,x),z=Tm(a,y,x);if(b>0&&z>0||b<0&&z<0)return!1;const ee=Tm(y,E,a),re=Tm(x,E,a);return ee>0&&re>0||ee<0&&re<0?!1:b===0&&z===0&&ee===0&&re===0?uG(E,a,y,x):!0}function dG(E){const a=[E[0]];let y=E[0];for(let x=1;x<E.length;x++){const b=E[x];(y[0]!==b[0]||y[1]!==b[1])&&a.push(b),y=b}return a}function fG(E){return E.sort(function(a,y){return a[0]-y[0]||a[1]-y[1]})}function TS(E,a){return Math.pow(a[0]-E[0],2)+Math.pow(a[1]-E[1],2)}function GD(E,a,y){const x=[a[0]-E[0],a[1]-E[1]],b=[y[0]-E[0],y[1]-E[1]],z=TS(E,a),ee=TS(E,y);return(x[0]*b[0]+x[1]*b[1])/Math.sqrt(z*ee)}function HD(E,a){for(let y=0;y<a.length-1;y++){const x=[a[y],a[y+1]];if(!(E[0][0]===x[0][0]&&E[0][1]===x[0][1]||E[0][0]===x[1][0]&&E[0][1]===x[1][1])&&cG(E[0],E[1],x[0],x[1]))return!0}return!1}function hG(E){let a=1/0,y=1/0,x=-1/0,b=-1/0;for(let z=E.length-1;z>=0;z--)E[z][0]<a&&(a=E[z][0]),E[z][1]<y&&(y=E[z][1]),E[z][0]>x&&(x=E[z][0]),E[z][1]>b&&(b=E[z][1]);return[x-a,b-y]}function gG(E){return[Math.min(E[0][0],E[1][0]),Math.min(E[0][1],E[1][1]),Math.max(E[0][0],E[1][0]),Math.max(E[0][1],E[1][1])]}function vG(E,a,y){let x=null,b=KD,z=KD,ee,re;for(let ae=0;ae<a.length;ae++)ee=GD(E[0],E[1],a[ae]),re=GD(E[1],E[0],a[ae]),ee>b&&re>z&&!HD([E[0],a[ae]],y)&&!HD([E[1],a[ae]],y)&&(b=ee,z=re,x=a[ae]);return x}function VD(E,a,y,x,b){let z=!1;for(let ee=0;ee<E.length-1;ee++){const re=[E[ee],E[ee+1]],ae=re[0][0]+","+re[0][1]+","+re[1][0]+","+re[1][1];if(TS(re[0],re[1])<a||b.has(ae))continue;let oe=0,de=gG(re),ge,ye,De;do de=x.extendBbox(de,oe),ge=de[2]-de[0],ye=de[3]-de[1],De=vG(re,x.rangePoints(de),E),oe++;while(De===null&&(y[0]>ge||y[1]>ye));ge>=y[0]&&ye>=y[1]&&b.add(ae),De!==null&&(E.splice(ee+1,0,De),x.removePoint(De),z=!0)}return z?VD(E,a,y,x,b):E}function mG(E,a,y){const x=a||20,b=dG(fG(OS.toXy(E,y)));if(b.length<4){const ge=b.concat([b[0]]);return y?OS.fromXy(ge,y):ge}const z=hG(b),ee=[z[0]*ZD,z[1]*ZD],re=lG(b).reverse().map(ge=>b[ge]);re.push(re[0]);const ae=b.filter(function(ge){return re.indexOf(ge)<0}),oe=Math.ceil(1/(b.length/(z[0]*z[1]))),de=VD(re,Math.pow(x,2),ee,VW(ae,oe),new Set);return y?OS.fromXy(de,y):de}const KD=Math.cos(90/(180/Math.PI)),ZD=.6;function pG(E,a,y){if(E.length===1)return yG(E[0],a,y);if(E.length===2)return QD(E,a,y);if(E.length===3){const[x,b,z]=Px(E);if(a5(x,b,z))return QD([x,z],a,y)}switch(y){case"smooth":return AG(E,a);case"sharp":return xG(E,a);case"rounded":default:return EG(E,a)}}const yG=(E,a,y)=>{if(y==="sharp")return[["M",E[0]-a,E[1]-a],["L",E[0]+a,E[1]-a],["L",E[0]+a,E[1]+a],["L",E[0]-a,E[1]+a],["Z"]];const x=[a,a,0,0,0];return[["M",E[0],E[1]-a],["A",...x,E[0],E[1]+a],["A",...x,E[0],E[1]-a]]},QD=(E,a,y)=>{const x=[a,a,0,0,0],b=y==="sharp"?us(E[0],tg(vh(Fl(E[0],E[1])),a)):E[0],z=y==="sharp"?us(E[1],tg(vh(Fl(E[1],E[0])),a)):E[1],ee=tg(vh(Ey(Fl(b,z),!1)),a),re=tg(ee,-1),ae=us(b,ee),oe=us(z,ee),de=us(z,re),ge=us(b,re);return y==="sharp"?[["M",ae[0],ae[1]],["L",oe[0],oe[1]],["L",de[0],de[1]],["L",ge[0],ge[1]],["Z"]]:[["M",ae[0],ae[1]],["L",oe[0],oe[1]],["A",...x,de[0],de[1]],["L",ge[0],ge[1]],["A",...x,ae[0],ae[1]]]},EG=(E,a)=>{const y=Px(E).map((re,ae)=>{const oe=(ae-2+E.length)%E.length,de=(ae-1+E.length)%E.length,ge=(ae+1)%E.length,ye=E[oe],De=E[de],ke=E[ge],ze=Fl(ye,De),We=Fl(De,re),Ve=Fl(re,ke),Ze=(mt,dt)=>Sx(mt,dt,!0)<Math.PI,Ye=Ze(ze,We),et=Ze(We,Ve),st=mt=>tg(vh(Ey(mt,!1)),a),ht=st(We);return[{p:e0(Ye?us(De,st(ze)):us(De,ht)),concave:Ye&&De},{p:e0(et?us(re,st(Ve)):us(re,ht)),concave:et&&re}]}),x=[a,a,0,0,0],b=y.findIndex((re,ae)=>!y[(ae-1+y.length)%y.length][0].concave&&!y[(ae-1+y.length)%y.length][1].concave&&!re[0].concave&&!re[0].concave&&!re[1].concave),z=y.slice(b).concat(y.slice(0,b));let ee=[];return z.flatMap((re,ae)=>{const oe=[],de=z[y.length-1];return ae===0&&oe.push(["M",...de[1].p]),re[0].concave?ee.push(re[0].p,re[1].p):oe.push(["A",...x,...re[0].p]),re[1].concave?ee.unshift(re[1].p):oe.push(["L",...re[1].p]),ee.length===3&&(oe.pop(),oe.push(["C",...ee.flat()]),ee=[]),oe})},AG=(E,a)=>{const y=Px(E).map((x,b)=>{const z=E[(b+1)%E.length];return{p:x,v:vh(Fl(z,x))}});return y.forEach((x,b)=>{const z=b>0?b-1:E.length-1,ee=y[z].v,re=vh(us(ee,tg(x.v,Sx(ee,x.v,!0)<Math.PI?1:-1)));x.p=us(x.p,tg(re,a))}),x5(y.map(x=>x.p))},xG=(E,a)=>{const x=E.map((z,ee)=>{const re=E[ee===0?E.length-1:ee-1],ae=um(tg(vh(Ey(Fl(re,z),!1)),a));return[us(re,ae),us(z,ae)]}).flat();return x.map((z,ee)=>{if(ee%2===0)return null;const re=[x[(ee-1)%x.length],x[ee%x.length]],ae=[x[(ee+1)%x.length],x[(ee+2)%x.length]];return Cx(re,ae,!0)}).filter(Boolean).map((z,ee)=>[ee===0?"M":"L",z[0],z[1]]).concat([["Z"]])};var SG=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b<x.length;b++)a.indexOf(x[b])<0&&Object.prototype.propertyIsEnumerable.call(E,x[b])&&(y[x[b]]=E[x[b]]);return y};class j1 extends oc{constructor(a,y){super(a,Object.assign({},j1.defaultOptions,y)),this.hullMemberIds=[],this.drawHull=()=>{if(!this.shape)this.shape=new vm({style:this.getHullStyle()}),this.context.canvas.appendChild(this.shape);else{const x=!Nu(this.optionsCache,this.options);this.shape.update(this.getHullStyle(x))}this.optionsCache=Object.assign({},this.options)},this.updateHullPath=x=>{this.shape&&this.options.members.includes(Br(x.data))&&this.shape.update({d:this.getHullPath(!0)})},this.getHullPath=(x=!1)=>{const{graph:b}=this.context,z=this.getMember();if(z.length===0)return"";const ee=z.map(oe=>b.getNodeData(oe)),re=mG(ee.map($u),this.options.concavity).slice(1).reverse(),ae=re.flatMap(oe=>ee.filter(de=>Nu($u(de),oe)).map(Br));return Nu(ae,this.hullMemberIds)&&!x?this.path:(this.hullMemberIds=ae,this.path=pG(re,this.getPadding(),this.options.corner),this.path)},this.bindEvents()}bindEvents(){this.context.graph.on(hi.AFTER_RENDER,this.drawHull),this.context.graph.on(hi.AFTER_ELEMENT_UPDATE,this.updateHullPath)}unbindEvents(){this.context.graph.off(hi.AFTER_RENDER,this.drawHull),this.context.graph.off(hi.AFTER_ELEMENT_UPDATE,this.updateHullPath)}getHullStyle(a){const y=this.options,{members:x,padding:b,corner:z}=y,ee=SG(y,["members","padding","corner"]);return Object.assign(Object.assign({},ee),{d:this.getHullPath(a)})}getPadding(){const{graph:a}=this.context;return this.hullMemberIds.reduce((x,b)=>{const{halfExtents:z}=a.getElementRenderBounds(b),ee=Math.max(z[0],z[1]);return Math.max(x,ee)},0)+this.options.padding}addMember(a){const y=Array.isArray(a)?a:[a];this.options.members=[...new Set([...this.options.members,...y])],this.shape.update({d:this.getHullPath()})}removeMember(a){const y=Array.isArray(a)?a:[a];this.options.members=this.options.members.filter(x=>!y.includes(x)),y.some(x=>this.hullMemberIds.includes(x))&&this.shape.update({d:this.getHullPath()})}updateMember(a){this.options.members=Xi(a)?a(this.options.members):a,this.shape.update(this.getHullStyle(!0))}getMember(){return this.options.members}destroy(){this.unbindEvents(),this.shape.destroy(),this.hullMemberIds=[],super.destroy()}}j1.defaultOptions={members:[],padding:10,corner:"rounded",concavity:1/0,fill:"lightblue",fillOpacity:.2,labelOpacity:1,stroke:"blue",strokeOpacity:.2};function YD(E,a){a(E),E.children&&E.children.forEach(function(y){y&&YD(y,a)})}function Lm(E){U1(E,!0)}function Pf(E){U1(E,!1)}function U1(E,a){var y=a?"visible":"hidden";YD(E,function(x){x.attr("visibility",y)})}var bG=5,XD=function(E,a,y,x){y===void 0&&(y=0),x===void 0&&(x=bG),Object.entries(a).forEach(function(b){var z=(0,Nt.CR)(b,2),ee=z[0],re=z[1],ae=E;Object.prototype.hasOwnProperty.call(a,ee)&&(re?Y0(re)?(Y0(E[ee])||(ae[ee]={}),y<x?XD(E[ee],re,y+1,x):ae[ee]=a[ee]):nd(re)?(ae[ee]=[],ae[ee]=ae[ee].concat(re)):ae[ee]=re:ae[ee]=re)})},Hu=function(E){for(var a=[],y=1;y<arguments.length;y++)a[y-1]=arguments[y];for(var x=0;x<a.length;x+=1)XD(E,a[x]);return E},CG=function(E){(0,Nt.ZT)(a,E);function a(){for(var y=[],x=0;x<arguments.length;x++)y[x]=arguments[x];var b=E.apply(this,(0,Nt.ev)([],(0,Nt.CR)(y),!1))||this;return b.isMutationObserved=!0,b.addEventListener(Bs.INSERTED,function(){Pf(b)}),b}return a}(qu);function JD(E){var a=E.appendChild(new CG({class:"offscreen"}));return Pf(a),a}function PG(E){for(var a=E;a;){if(a.className==="offscreen")return!0;a=a.parent}return!1}function wG(){U1(this,this.attributes.visibility!=="hidden")}var pu=function(E){(0,Nt.ZT)(a,E);function a(y,x){x===void 0&&(x={});var b=E.call(this,Hu({},{style:x},y))||this;return b.initialized=!1,b._defaultOptions=x,b}return Object.defineProperty(a.prototype,"offscreenGroup",{get:function(){return this._offscreen||(this._offscreen=JD(this)),this._offscreen},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"defaultOptions",{get:function(){return this._defaultOptions},enumerable:!1,configurable:!0}),a.prototype.connectedCallback=function(){this.render(this.attributes,this),this.bindEvents(this.attributes,this),this.initialized=!0},a.prototype.disconnectedCallback=function(){var y;(y=this._offscreen)===null||y===void 0||y.destroy()},a.prototype.attributeChangedCallback=function(y){y==="visibility"&&wG.call(this)},a.prototype.update=function(y,x){var b;return this.attr(Hu({},this.attributes,y||{})),(b=this.render)===null||b===void 0?void 0:b.call(this,this.attributes,this,x)},a.prototype.clear=function(){this.removeChildren()},a.prototype.bindEvents=function(y,x){},a.prototype.getSubShapeStyle=function(y){var x=y.x,b=y.y,z=y.transform,ee=y.transformOrigin,re=y.class,ae=y.className,oe=y.zIndex,de=(0,Nt._T)(y,["x","y","transform","transformOrigin","class","className","zIndex"]);return de},a}(HA);function LS(E){return E.toString().charAt(0).toUpperCase()+E.toString().slice(1)}function MG(E){return E.toString().charAt(0).toLowerCase()+E.toString().slice(1)}function DG(E,a){return"".concat(a).concat(LS(E))}function qD(E,a,y){var x;y===void 0&&(y=!0);var b=a||((x=E.match(/^([a-z][a-z0-9]+)/))===null||x===void 0?void 0:x[0])||"",z=E.replace(new RegExp("^(".concat(b,")")),"");return y?MG(z):z}function IG(E,a){Object.entries(a).forEach(function(y){var x=(0,Nt.CR)(y,2),b=x[0],z=x[1];(0,Nt.ev)([E],(0,Nt.CR)(E.querySelectorAll(b)),!1).filter(function(ee){return ee.matches(b)}).forEach(function(ee){if(ee){var re=ee;re.style.cssText+=Object.entries(z).reduce(function(ae,oe){return"".concat(ae).concat(oe.join(":"),";")},"")}})})}var W1=function(E,a){if(!(E!=null&&E.startsWith(a)))return!1;var y=E[a.length];return y>="A"&&y<="Z"};function cs(E,a,y){y===void 0&&(y=!1);var x={};return Object.entries(E).forEach(function(b){var z=(0,Nt.CR)(b,2),ee=z[0],re=z[1];if(!(ee==="className"||ee==="class")){if(W1(ee,"show")&&W1(qD(ee,"show"),a)!==y)ee===DG(a,"show")?x[ee]=re:x[ee.replace(new RegExp(LS(a)),"")]=re;else if(!W1(ee,"show")&&W1(ee,a)!==y){var ae=qD(ee,a);ae==="filter"&&typeof re=="function"||(x[ae]=re)}}}),x}function ov(E,a){return Object.entries(E).reduce(function(y,x){var b=(0,Nt.CR)(x,2),z=b[0],ee=b[1];return z.startsWith("show")?y["show".concat(a).concat(z.slice(4))]=ee:y["".concat(a).concat(LS(z))]=ee,y},{})}function Ah(E,a){a===void 0&&(a=["x","y","class","className"]);var y=["transform","transformOrigin","anchor","visibility","pointerEvents","zIndex","cursor","clipPath","clipPathTargets","offsetPath","offsetPathTargets","offsetDistance","draggable","droppable"],x={},b={};return Object.entries(E).forEach(function(z){var ee=(0,Nt.CR)(z,2),re=ee[0],ae=ee[1];a.includes(re)||(y.indexOf(re)!==-1?b[re]=ae:x[re]=ae)}),[x,b]}var OG=function(E){if(!nd(E))return[];for(var a=[],y=0;y<E.length;y++)a=a.concat(E[y]);return a},TG=OG,BS=function(E){(0,Nt.ZT)(a,E);function a(y){y===void 0&&(y={});var x=y.style,b=(0,Nt._T)(y,["style"]);return E.call(this,(0,Nt.pi)({style:(0,Nt.pi)({text:"",fill:"black",fontFamily:"sans-serif",fontSize:16,fontStyle:"normal",fontVariant:"normal",fontWeight:"normal",lineWidth:1,textAlign:"start",textBaseline:"middle"},x)},b))||this}return Object.defineProperty(a.prototype,"offscreenGroup",{get:function(){return this._offscreen||(this._offscreen=JD(this)),this._offscreen},enumerable:!1,configurable:!0}),a.prototype.disconnectedCallback=function(){var y;(y=this._offscreen)===null||y===void 0||y.destroy()},a}(Yg);function LG(E,a){var y=new Map;return E.forEach(function(x){var b=a(x);y.has(b)||y.set(b,[]),y.get(b).push(x)}),y}function BG(E){throw new Error(E)}var NG=function(){function E(b,z,ee,re,ae,oe,de){b===void 0&&(b=null),z===void 0&&(z=null),ee===void 0&&(ee=null),re===void 0&&(re=null),ae===void 0&&(ae=[null,null,null,null,null]),oe===void 0&&(oe=[]),de===void 0&&(de=[]),a.add(this),this._elements=Array.from(b),this._data=z,this._parent=ee,this._document=re,this._enter=ae[0],this._update=ae[1],this._exit=ae[2],this._merge=ae[3],this._split=ae[4],this._transitions=oe,this._facetElements=de}E.prototype.selectAll=function(b){var z=typeof b=="string"?this._parent.querySelectorAll(b):b;return new y(z,null,this._elements[0],this._document)},E.prototype.selectFacetAll=function(b){var z=typeof b=="string"?this._parent.querySelectorAll(b):b;return new y(this._elements,null,this._parent,this._document,void 0,void 0,z)},E.prototype.select=function(b){var z=typeof b=="string"?this._parent.querySelectorAll(b)[0]||null:b;return new y([z],null,z,this._document)},E.prototype.append=function(b){var z=this,ee=typeof b=="function"?b:function(){return z.createElement(b)},re=[];if(this._data!==null){for(var ae=0;ae<this._data.length;ae++){var oe=this._data[ae],de=(0,Nt.CR)(Array.isArray(oe)?oe:[oe,null],2),ge=de[0],ye=de[1],De=ee(ge,ae);De.__data__=ge,ye!==null&&(De.__fromElements__=ye),this._parent.appendChild(De),re.push(De)}return new y(re,null,this._parent,this._document)}for(var ae=0;ae<this._elements.length;ae++){var ke=this._elements[ae],ge=ke.__data__,De=ee(ge,ae);ke.appendChild(De),re.push(De)}return new y(re,null,re[0],this._document)},E.prototype.maybeAppend=function(b,z){var ee=(0,Nt.Q_)(this,a,"m",x).call(this,b[0]==="#"?b:"#".concat(b),z);return ee.attr("id",b),ee},E.prototype.maybeAppendByClassName=function(b,z){var ee=b.toString(),re=(0,Nt.Q_)(this,a,"m",x).call(this,ee[0]==="."?ee:".".concat(ee),z);return re.attr("className",ee),re},E.prototype.maybeAppendByName=function(b,z){var ee=(0,Nt.Q_)(this,a,"m",x).call(this,'[name="'.concat(b,'"]'),z);return ee.attr("name",b),ee},E.prototype.data=function(b,z,ee){var re,ae;z===void 0&&(z=function(_t){return _t}),ee===void 0&&(ee=function(){return null});for(var oe=[],de=[],ge=new Set(this._elements),ye=[],De=new Set,ke=new Map(this._elements.map(function(_t,wt){return[z(_t.__data__,wt),_t]})),ze=new Map(this._facetElements.map(function(_t,wt){return[z(_t.__data__,wt),_t]})),We=LG(this._elements,function(_t){return ee(_t.__data__)}),Ve=0;Ve<b.length;Ve++){var Ze=b[Ve],Ye=z(Ze,Ve),et=ee(Ze,Ve);if(ke.has(Ye)){var st=ke.get(Ye);st.__data__=Ze,st.__facet__=!1,de.push(st),ge.delete(st),ke.delete(Ye)}else if(ze.has(Ye)){var st=ze.get(Ye);st.__data__=Ze,st.__facet__=!0,de.push(st),ze.delete(Ye)}else if(We.has(Ye)){var ht=We.get(Ye);ye.push([Ze,ht]);try{for(var mt=(re=void 0,(0,Nt.XA)(ht)),dt=mt.next();!dt.done;dt=mt.next()){var st=dt.value;ge.delete(st)}}catch(_t){re={error:_t}}finally{try{dt&&!dt.done&&(ae=mt.return)&&ae.call(mt)}finally{if(re)throw re.error}}We.delete(Ye)}else if(ke.has(et)){var st=ke.get(et);st.__toData__?st.__toData__.push(Ze):st.__toData__=[Ze],De.add(st),ge.delete(st)}else oe.push(Ze)}var Ot=[new y([],oe,this._parent,this._document),new y(de,null,this._parent,this._document),new y(ge,null,this._parent,this._document),new y([],ye,this._parent,this._document),new y(De,null,this._parent,this._document)];return new y(this._elements,null,this._parent,this._document,Ot)},E.prototype.merge=function(b){var z=(0,Nt.ev)((0,Nt.ev)([],(0,Nt.CR)(this._elements),!1),(0,Nt.CR)(b._elements),!1),ee=(0,Nt.ev)((0,Nt.ev)([],(0,Nt.CR)(this._transitions),!1),(0,Nt.CR)(b._transitions),!1);return new y(z,null,this._parent,this._document,void 0,ee)},E.prototype.createElement=function(b){if(this._document)return this._document.createElement(b,{});var z=y.registry[b];return z?new z:BG("Unknown node type: ".concat(b))},E.prototype.join=function(b,z,ee,re,ae){b===void 0&&(b=function(ke){return ke}),z===void 0&&(z=function(ke){return ke}),ee===void 0&&(ee=function(ke){return ke.remove()}),re===void 0&&(re=function(ke){return ke}),ae===void 0&&(ae=function(ke){return ke.remove()});var oe=b(this._enter),de=z(this._update),ge=ee(this._exit),ye=re(this._merge),De=ae(this._split);return de.merge(oe).merge(ge).merge(ye).merge(De)},E.prototype.remove=function(){for(var b=function(re){var ae=z._elements[re],oe=z._transitions[re];oe?oe.then(function(){return ae.remove()}):ae.remove()},z=this,ee=0;ee<this._elements.length;ee++)b(ee);return new y([],null,this._parent,this._document,void 0,this._transitions)},E.prototype.each=function(b){for(var z=0;z<this._elements.length;z++){var ee=this._elements[z],re=ee.__data__;b.call(ee,re,z)}return this},E.prototype.attr=function(b,z){var ee=typeof z!="function"?function(){return z}:z;return this.each(function(re,ae){z!==void 0&&(this[b]=ee.call(this,re,ae))})},E.prototype.style=function(b,z,ee){ee===void 0&&(ee=!0);var re=typeof z!="function"||!ee?function(){return z}:z;return this.each(function(ae,oe){z!==void 0&&(this.style[b]=re.call(this,ae,oe))})},E.prototype.styles=function(b,z){return b===void 0&&(b={}),z===void 0&&(z=!0),this.each(function(ee,re){var ae=this;Object.entries(b).forEach(function(oe){var de=(0,Nt.CR)(oe,2),ge=de[0],ye=de[1],De=typeof ye!="function"||!z?function(){return ye}:ye;ye!==void 0&&ae.attr(ge,De.call(ae,ee,re))})})},E.prototype.update=function(b,z){z===void 0&&(z=!0);var ee=typeof b!="function"||!z?function(){return b}:b;return this.each(function(re,ae){b&&this.update&&this.update(ee.call(this,re,ae))})},E.prototype.maybeUpdate=function(b,z){z===void 0&&(z=!0);var ee=typeof b!="function"||!z?function(){return b}:b;return this.each(function(re,ae){b&&this.update&&this.update(ee.call(this,re,ae))})},E.prototype.transition=function(b){var z=this._transitions,ee=new Array(this._elements.length);return this.each(function(re,ae){ee[ae]=b.call(this,re,ae)}),this._transitions=TG(ee),this},E.prototype.on=function(b,z){return this.each(function(){this.addEventListener(b,z)}),this},E.prototype.call=function(b){for(var z=[],ee=1;ee<arguments.length;ee++)z[ee-1]=arguments[ee];return b.call.apply(b,(0,Nt.ev)([this._parent,this],(0,Nt.CR)(z),!1)),this},E.prototype.node=function(){return this._elements[0]},E.prototype.nodes=function(){return this._elements},E.prototype.transitions=function(){return this._transitions.filter(function(b){return!!b})},E.prototype.parent=function(){return this._parent};var a,y,x;return y=E,a=new WeakSet,x=function(z,ee){var re=this._elements[0],ae=re.querySelector(z);if(ae)return new y([ae],null,this._parent,this._document);var oe=typeof ee=="string"?this.createElement(ee):ee();return re.appendChild(oe),new y([oe],null,this._parent,this._document)},E.registry={g:qu,rect:gc,circle:Hf,path:Cd,text:BS,ellipse:qv,image:$v,line:Zg,polygon:Qg,polyline:Rp,html:Kg},E}();function Ji(E){return new NG([E],null,E,E.ownerDocument)}function RG(E,a,y){return E.querySelector(a)?Ji(E).select(a):Ji(E).append(y)}var Tc=function(){function E(a,y,x,b){a===void 0&&(a=0),y===void 0&&(y=0),x===void 0&&(x=0),b===void 0&&(b=0),this.x=0,this.y=0,this.width=0,this.height=0,this.x=a,this.y=y,this.width=x,this.height=b}return Object.defineProperty(E.prototype,"bottom",{get:function(){return this.y+this.height},enumerable:!1,configurable:!0}),Object.defineProperty(E.prototype,"left",{get:function(){return this.x},enumerable:!1,configurable:!0}),Object.defineProperty(E.prototype,"right",{get:function(){return this.x+this.width},enumerable:!1,configurable:!0}),Object.defineProperty(E.prototype,"top",{get:function(){return this.y},enumerable:!1,configurable:!0}),E.fromRect=function(a){return new E(a.x,a.y,a.width,a.height)},E.prototype.toJSON=function(){return{x:this.x,y:this.y,width:this.width,height:this.height,top:this.top,right:this.right,bottom:this.bottom,left:this.left}},E.prototype.isPointIn=function(a,y){return a>=this.left&&a<=this.right&&y>=this.top&&y<=this.bottom},E}();function Wne(E){var a=E.getRenderBounds(),y=__read(a.min,2),x=y[0],b=y[1],z=__read(a.max,2),ee=z[0],re=z[1],ae=ee-x,oe=re-b;return new Tc(x,b,ae,oe)}var wf=function(E,a){var y=function(b){return"".concat(a,"-").concat(b)},x=Object.fromEntries(Object.entries(E).map(function(b){var z=(0,Nt.CR)(b,2),ee=z[0],re=z[1],ae=y(re);return[ee,{name:ae,class:".".concat(ae),id:"#".concat(ae),toString:function(){return ae}}]}));return Object.assign(x,{prefix:y}),x};function G1(E){return/\S+-\S+/g.test(E)?E.split("-").map(function(a){return a[0]}):E.length>2?[E[0]]:E.split("")}function Ec(E){if(ji(E))return[E,E,E,E];if(nd(E)){var a=E.length;if(a===1)return[E[0],E[0],E[0],E[0]];if(a===2)return[E[0],E[1],E[0],E[1]];if(a===3)return[E[0],E[1],E[2],E[1]];if(a===4)return E}return[0,0,0,0]}function cd(E,a,y,x,b){return x===void 0&&(x=!0),b===void 0&&(b=function(z){z.node().removeChildren()}),E?y(a):(x&&b(a),null)}function Lc(E,a,y){return y?"".concat(E," ").concat(y,"legend-").concat(a):E}function Gne(E,a,y){var x=E.classNamePrefix,b=x===void 0?"":x;return Lc(a.name,y,b)}var Hc={title:"title",item:"item",marker:"marker",label:"label",value:"value",focusIcon:"focus-icon",background:"background",ribbon:"ribbon",track:"track",selection:"selection",handle:"handle",handleMarker:"handle-marker",handleLabel:"handle-label",indicator:"indicator",prevBtn:"prev-btn",nextBtn:"next-btn",pageInfo:"page-info"},NS=wf({text:"text"},"title");function FG(E,a){var y=E.attributes,x=y.position,b=y.spacing,z=y.inset,ee=y.text,re=E.getBBox(),ae=a.getBBox(),oe=G1(x),de=(0,Nt.CR)(Ec(ee?b:0),4),ge=de[0],ye=de[1],De=de[2],ke=de[3],ze=(0,Nt.CR)(Ec(z),4),We=ze[0],Ve=ze[1],Ze=ze[2],Ye=ze[3],et=(0,Nt.CR)([ke+ye,ge+De],2),st=et[0],ht=et[1],mt=(0,Nt.CR)([Ye+Ve,We+Ze],2),dt=mt[0],Ot=mt[1];if(oe[0]==="l")return new Tc(re.x,re.y,ae.width+re.width+st+dt,Math.max(ae.height+Ot,re.height));if(oe[0]==="t")return new Tc(re.x,re.y,Math.max(ae.width+dt,re.width),ae.height+re.height+ht+Ot);var _t=(0,Nt.CR)([a.attributes.width||ae.width,a.attributes.height||ae.height],2),wt=_t[0],$t=_t[1];return new Tc(ae.x,ae.y,wt+re.width+st+dt,$t+re.height+ht+Ot)}function kG(E,a){var y=Object.entries(a).reduce(function(x,b){var z=(0,Nt.CR)(b,2),ee=z[0],re=z[1],ae=E.node().attr(ee);return ae||(x[ee]=re),x},{});E.styles(y)}function _G(E){var a,y,x,b,z=E,ee=z.width,re=z.height,ae=z.position,oe=(0,Nt.CR)([+ee/2,+re/2],2),de=oe[0],ge=oe[1],ye=(0,Nt.CR)([+de,+ge,"center","middle"],4),De=ye[0],ke=ye[1],ze=ye[2],We=ye[3],Ve=G1(ae);return Ve.includes("l")&&(a=(0,Nt.CR)([0,"start"],2),De=a[0],ze=a[1]),Ve.includes("r")&&(y=(0,Nt.CR)([+ee,"end"],2),De=y[0],ze=y[1]),Ve.includes("t")&&(x=(0,Nt.CR)([0,"top"],2),ke=x[0],We=x[1]),Ve.includes("b")&&(b=(0,Nt.CR)([+re,"bottom"],2),ke=b[0],We=b[1]),{x:De,y:ke,textAlign:ze,textBaseline:We}}var zG=function(E){(0,Nt.ZT)(a,E);function a(y){return E.call(this,y,{text:"",width:0,height:0,fill:"#4a505a",fontWeight:"bold",fontSize:12,fontFamily:"sans-serif",inset:0,spacing:0,position:"top-left"})||this}return a.prototype.getAvailableSpace=function(){var y=this,x=this.attributes,b=x.width,z=x.height,ee=x.position,re=x.spacing,ae=x.inset,oe=y.querySelector(NS.text.class);if(!oe)return new Tc(0,0,+b,+z);var de=oe.getBBox(),ge=de.width,ye=de.height,De=(0,Nt.CR)(Ec(re),4),ke=De[0],ze=De[1],We=De[2],Ve=De[3],Ze=(0,Nt.CR)([0,0,+b,+z],4),Ye=Ze[0],et=Ze[1],st=Ze[2],ht=Ze[3],mt=G1(ee);if(mt.includes("i"))return new Tc(Ye,et,st,ht);mt.forEach(function(er,En){var yn,Cn,qn,pn;er==="t"&&(yn=(0,Nt.CR)(En===0?[ye+We,+z-ye-We]:[0,+z],2),et=yn[0],ht=yn[1]),er==="r"&&(Cn=(0,Nt.CR)([+b-ge-Ve],1),st=Cn[0]),er==="b"&&(qn=(0,Nt.CR)([+z-ye-ke],1),ht=qn[0]),er==="l"&&(pn=(0,Nt.CR)(En===0?[ge+ze,+b-ge-ze]:[0,+b],2),Ye=pn[0],st=pn[1])});var dt=(0,Nt.CR)(Ec(ae),4),Ot=dt[0],_t=dt[1],wt=dt[2],$t=dt[3],gn=(0,Nt.CR)([$t+_t,Ot+wt],2),Xt=gn[0],Tn=gn[1];return new Tc(Ye+$t,et+Ot,st-Xt,ht-Tn)},a.prototype.getBBox=function(){return this.title?this.title.getBBox():new Tc(0,0,0,0)},a.prototype.render=function(y,x){var b=this,z=y.width,ee=y.height,re=y.position,ae=y.spacing,oe=y.classNamePrefix,de=(0,Nt._T)(y,["width","height","position","spacing","classNamePrefix"]),ge=(0,Nt.CR)(Ah(de),1),ye=ge[0],De=_G(y),ke=De.x,ze=De.y,We=De.textAlign,Ve=De.textBaseline;cd(!!de.text,Ji(x),function(Ze){var Ye=Lc(NS.text.name,Hc.title,oe);b.title=Ze.maybeAppendByClassName(NS.text,"text").attr("className",Ye).styles(ye).call(kG,{x:ke,y:ze,textAlign:We,textBaseline:Ve}).node()})},a}(pu),RS=function(){};function dd(E,a){return Xi(E)?E.apply(void 0,(0,Nt.ev)([],(0,Nt.CR)(a),!1)):E}function jG(E,a){return E.reduce(function(y,x){return(y[x[a]]=y[x[a]]||[]).push(x),y},{})}function UG(E){return typeof E=="boolean"?!1:"enter"in E&&"update"in E&&"exit"in E}function $D(E){if(!E)return{enter:!1,update:!1,exit:!1};var a=["enter","update","exit"],y=Object.fromEntries(Object.entries(E).filter(function(x){var b=(0,Nt.CR)(x,1),z=b[0];return!a.includes(z)}));return Object.fromEntries(a.map(function(x){return UG(E)?E[x]===!1?[x,!1]:[x,(0,Nt.pi)((0,Nt.pi)({},E[x]),y)]:[x,y]}))}function sv(E,a){E?E.finished.then(a):a()}function WG(E,a){E.length===0?a():Promise.all(E.map(function(y){return y==null?void 0:y.finished})).then(a)}function e3(E,a){"update"in E?E.update(a):E.attr(a)}function t3(E,a,y){if(a.length===0)return null;if(!y){var x=a.slice(-1)[0];return e3(E,{style:x}),null}return E.animate(a,y)}function GG(E,a){return!(E.nodeName!=="text"||a.nodeName!=="text"||E.attributes.text!==a.attributes.text)}function HG(E,a,y,x){if(x===void 0&&(x="destroy"),GG(E,a))return E.remove(),[null];var b=function(){x==="destroy"?E.destroy():x==="hide"&&Pf(E),a.isVisible()&&Lm(a)};if(!y)return b(),[null];var z=y.duration,ee=z===void 0?0:z,re=y.delay,ae=re===void 0?0:re,oe=Math.ceil(+ee/2),de=+ee/4,ge=(0,Nt.CR)(E.getGeometryBounds().center,2),ye=ge[0],De=ge[1],ke=(0,Nt.CR)(a.getGeometryBounds().center,2),ze=ke[0],We=ke[1],Ve=(0,Nt.CR)([(ye+ze)/2-ye,(De+We)/2-De],2),Ze=Ve[0],Ye=Ve[1],et=E.style.opacity,st=et===void 0?1:et,ht=a.style.opacity,mt=ht===void 0?1:ht,dt=E.style.transform||"",Ot=a.style.transform||"",_t=E.animate([{opacity:st,transform:"translate(0, 0) ".concat(dt)},{opacity:0,transform:"translate(".concat(Ze,", ").concat(Ye,") ").concat(dt)}],(0,Nt.pi)((0,Nt.pi)({fill:"both"},y),{duration:ae+oe+de})),wt=a.animate([{opacity:0,transform:"translate(".concat(-Ze,", ").concat(-Ye,") ").concat(Ot),offset:.01},{opacity:mt,transform:"translate(0, 0) ".concat(Ot)}],(0,Nt.pi)((0,Nt.pi)({fill:"both"},y),{duration:oe+de,delay:ae+oe-de}));return sv(wt,b),[_t,wt]}function Mf(E,a,y){var x={},b={};return Object.entries(a).forEach(function(z){var ee=(0,Nt.CR)(z,2),re=ee[0],ae=ee[1];if(!Io(ae)){var oe=E.style[re]||E.parsedStyle[re]||0;oe!==ae&&(x[re]=oe,b[re]=ae)}}),y?t3(E,[x,b],(0,Nt.pi)({fill:"both"},y)):(e3(E,b),null)}function VG(E){var a;return((a=E[0])===null||a===void 0?void 0:a.map(function(y,x){return E.map(function(b){return b[x]})}))||[]}function FS(E,a,y){y===void 0&&(y=!1);var x=E.getBBox(),b=x.width,z=x.height,ee=a/Math.max(b,z);return y&&(E.style.transform="scale(".concat(ee,")")),ee}var n3=function(E,a,y){return[["M",E-y,a],["A",y,y,0,1,0,E+y,a],["A",y,y,0,1,0,E-y,a],["Z"]]},KG=n3,ZG=function(E,a,y){return[["M",E-y,a-y],["L",E+y,a-y],["L",E+y,a+y],["L",E-y,a+y],["Z"]]},QG=function(E,a,y){return[["M",E-y,a],["L",E,a-y],["L",E+y,a],["L",E,a+y],["Z"]]},YG=function(E,a,y){var x=y*Math.sin(.3333333333333333*Math.PI);return[["M",E-y,a+x],["L",E,a-x],["L",E+y,a+x],["Z"]]},XG=function(E,a,y){var x=y*Math.sin(.3333333333333333*Math.PI);return[["M",E-y,a-x],["L",E+y,a-x],["L",E,a+x],["Z"]]},JG=function(E,a,y){var x=y/2*Math.sqrt(3);return[["M",E,a-y],["L",E+x,a-y/2],["L",E+x,a+y/2],["L",E,a+y],["L",E-x,a+y/2],["L",E-x,a-y/2],["Z"]]},qG=function(E,a,y){var x=y-1.5;return[["M",E-y,a-x],["L",E+y,a+x],["L",E+y,a-x],["L",E-y,a+x],["Z"]]},r3=function(E,a,y){return[["M",E,a+y],["L",E,a-y]]},$G=function(E,a,y){return[["M",E-y,a-y],["L",E+y,a+y],["M",E+y,a-y],["L",E-y,a+y]]},eH=function(E,a,y){return[["M",E-y/2,a-y],["L",E+y/2,a-y],["M",E,a-y],["L",E,a+y],["M",E-y/2,a+y],["L",E+y/2,a+y]]},tH=function(E,a,y){return[["M",E-y,a],["L",E+y,a],["M",E,a-y],["L",E,a+y]]},nH=function(E,a,y){return[["M",E-y,a],["L",E+y,a]]},a3=function(E,a,y){return[["M",E-y,a],["L",E+y,a]]},rH=a3,aH=function(E,a,y){return[["M",E-y,a],["A",y/2,y/2,0,1,1,E,a],["A",y/2,y/2,0,1,0,E+y,a]]},iH=function(E,a,y){return[["M",E-y-1,a-2.5],["L",E,a-2.5],["L",E,a+2.5],["L",E+y+1,a+2.5]]},oH=function(E,a,y){return[["M",E-y-1,a+2.5],["L",E,a+2.5],["L",E,a-2.5],["L",E+y+1,a-2.5]]},sH=function(E,a,y){return[["M",E-(y+1),a+2.5],["L",E-y/2,a+2.5],["L",E-y/2,a-2.5],["L",E+y/2,a-2.5],["L",E+y/2,a+2.5],["L",E+y+1,a+2.5]]};function lH(E,a){return[["M",E-5,a+2.5],["L",E-5,a],["L",E,a],["L",E,a-3],["L",E,a+3],["L",E+6.5,a+3]]}var uH=function(E,a,y){return[["M",E-y,a-y],["L",E+y,a],["L",E-y,a+y],["Z"]]},cH=function(E,a,y){var x=y,b=y*.2,z=y*.7;return[["M",E-x,a],["A",x,x,0,1,0,E+x,a],["A",x,x,0,1,0,E-x,a],["Z"],["M",E-z,a],["L",E-b,a],["M",E+b,a],["L",E+z,a],["M",E,a-z],["L",E,a-b],["M",E,a+b],["L",E,a+z]]},Vc=wf({prevBtnGroup:"prev-btn-group",prevBtn:"prev-btn",nextBtnGroup:"next-btn-group",nextBtn:"next-btn",pageInfoGroup:"page-info-group",pageInfo:"page-info",playWindow:"play-window",contentGroup:"content-group",controller:"controller",clipPath:"clip-path"},"navigator"),dH=function(E){(0,Nt.ZT)(a,E);function a(y){var x=E.call(this,y,{x:0,y:0,animate:{easing:"linear",duration:200,fill:"both"},buttonCursor:"pointer",buttonFill:"black",buttonD:uH(0,0,6),buttonSize:12,controllerPadding:5,controllerSpacing:5,formatter:function(b,z){return"".concat(b,"/").concat(z)},defaultPage:0,loop:!1,orientation:"horizontal",pageNumFill:"black",pageNumFontSize:12,pageNumTextAlign:"start",pageNumTextBaseline:"middle"})||this;return x.playState="idle",x.contentGroup=x.appendChild(new qu({class:Vc.contentGroup.name})),x.playWindow=x.contentGroup.appendChild(new qu({class:Vc.playWindow.name})),x.innerCurrPage=x.defaultPage,x}return Object.defineProperty(a.prototype,"defaultPage",{get:function(){var y=this.attributes.defaultPage;return gu(y,0,Math.max(this.pageViews.length-1,0))},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"pageViews",{get:function(){return this.playWindow.children},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"controllerShape",{get:function(){return this.totalPages>1?{width:55,height:0}:{width:0,height:0}},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"pageShape",{get:function(){var y=this.pageViews,x=(0,Nt.CR)(VG(y.map(function(ge){var ye=ge.getBBox(),De=ye.width,ke=ye.height;return[De,ke]})).map(function(ge){return Math.max.apply(Math,(0,Nt.ev)([],(0,Nt.CR)(ge),!1))}),2),b=x[0],z=x[1],ee=this.attributes,re=ee.pageWidth,ae=re===void 0?b:re,oe=ee.pageHeight,de=oe===void 0?z:oe;return{pageWidth:ae,pageHeight:de}},enumerable:!1,configurable:!0}),a.prototype.getContainer=function(){return this.playWindow},Object.defineProperty(a.prototype,"totalPages",{get:function(){return this.pageViews.length},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"currPage",{get:function(){return this.innerCurrPage},enumerable:!1,configurable:!0}),a.prototype.getBBox=function(){var y=E.prototype.getBBox.call(this),x=y.x,b=y.y,z=this.controllerShape,ee=this.pageShape,re=ee.pageWidth,ae=ee.pageHeight;return new Tc(x,b,re+z.width,ae)},a.prototype.goTo=function(y){var x=this,b=this.attributes.animate,z=this,ee=z.currPage,re=z.playState,ae=z.playWindow,oe=z.pageViews;if(re!=="idle"||y<0||oe.length<=0||y>=oe.length)return null;oe[ee].setLocalPosition(0,0),this.prepareFollowingPage(y);var de=(0,Nt.CR)(this.getFollowingPageDiff(y),2),ge=de[0],ye=de[1];this.playState="running";var De=t3(ae,[{transform:"translate(0, 0)"},{transform:"translate(".concat(-ge,", ").concat(-ye,")")}],b);return sv(De,function(){x.innerCurrPage=y,x.playState="idle",x.setVisiblePages([y]),x.updatePageInfo()}),De},a.prototype.prev=function(){var y=this.attributes.loop,x=this.pageViews.length,b=this.currPage;if(!y&&b<=0)return null;var z=y?(b-1+x)%x:gu(b-1,0,x);return this.goTo(z)},a.prototype.next=function(){var y=this.attributes.loop,x=this.pageViews.length,b=this.currPage;if(!y&&b>=x-1)return null;var z=y?(b+1)%x:gu(b+1,0,x);return this.goTo(z)},a.prototype.renderClipPath=function(y){var x=this.pageShape,b=x.pageWidth,z=x.pageHeight;if(!b||!z){this.contentGroup.style.clipPath=void 0;return}this.clipPath=y.maybeAppendByClassName(Vc.clipPath,"rect").styles({width:b,height:z}),this.contentGroup.attr("clipPath",this.clipPath.node())},a.prototype.setVisiblePages=function(y){this.playWindow.children.forEach(function(x,b){y.includes(b)?Lm(x):Pf(x)})},a.prototype.adjustControllerLayout=function(){var y=this,x=y.prevBtnGroup,b=y.nextBtnGroup,z=y.pageInfoGroup,ee=this.attributes,re=ee.orientation,ae=ee.controllerPadding,oe=z.getBBox(),de=oe.width,ge=oe.height,ye=(0,Nt.CR)(re==="horizontal"?[-180,0]:[-90,90],2),De=ye[0],ke=ye[1];x.setLocalEulerAngles(De),b.setLocalEulerAngles(ke);var ze=x.getBBox(),We=ze.width,Ve=ze.height,Ze=b.getBBox(),Ye=Ze.width,et=Ze.height,st=Math.max(We,de,Ye),ht=re==="horizontal"?{offset:[[0,0],[We/2+ae,0],[We+de+ae*2,0]],textAlign:"start"}:{offset:[[st/2,-Ve-ae],[st/2,0],[st/2,et+ae]],textAlign:"center"},mt=(0,Nt.CR)(ht.offset,3),dt=(0,Nt.CR)(mt[0],2),Ot=dt[0],_t=dt[1],wt=(0,Nt.CR)(mt[1],2),$t=wt[0],gn=wt[1],Xt=(0,Nt.CR)(mt[2],2),Tn=Xt[0],er=Xt[1],En=ht.textAlign,yn=z.querySelector("text");yn&&(yn.style.textAlign=En),x.setLocalPosition(Ot,_t),z.setLocalPosition($t,gn),b.setLocalPosition(Tn,er)},a.prototype.updatePageInfo=function(){var y,x=this,b=x.currPage,z=x.pageViews,ee=x.attributes.formatter;z.length<2||((y=this.pageInfoGroup.querySelector(Vc.pageInfo.class))===null||y===void 0||y.attr("text",ee(b+1,z.length)),this.adjustControllerLayout())},a.prototype.getFollowingPageDiff=function(y){var x=this.currPage;if(x===y)return[0,0];var b=this.attributes.orientation,z=this.pageShape,ee=z.pageWidth,re=z.pageHeight,ae=y<x?-1:1;return b==="horizontal"?[ae*ee,0]:[0,ae*re]},a.prototype.prepareFollowingPage=function(y){var x=this,b=x.currPage,z=x.pageViews;if(this.setVisiblePages([y,b]),y!==b){var ee=(0,Nt.CR)(this.getFollowingPageDiff(y),2),re=ee[0],ae=ee[1];z[y].setLocalPosition(re,ae)}},a.prototype.renderController=function(y){var x=this,b=this.attributes,z=b.controllerSpacing,ee=b.classNamePrefix,re=ee===void 0?"":ee,ae=this.pageShape,oe=ae.pageWidth,de=ae.pageHeight,ge=this.pageViews.length>=2,ye=y.maybeAppendByClassName(Vc.controller,"g");if(U1(ye.node(),ge),!!ge){var De=cs(this.attributes,"button"),ke=cs(this.attributes,"pageNum"),ze=(0,Nt.CR)(Ah(De),2),We=ze[0],Ve=ze[1],Ze=We.size,Ye=(0,Nt._T)(We,["size"]),et=!ye.select(Vc.prevBtnGroup.class).node(),st=ye.maybeAppendByClassName(Vc.prevBtnGroup,"g").styles(Ve);this.prevBtnGroup=st.node();var ht=st.maybeAppendByClassName(Vc.prevBtn,"path");if(re){var mt=Lc(Vc.prevBtn.name,Hc.prevBtn,re);ht.node().setAttribute("class",mt)}var dt=ye.maybeAppendByClassName(Vc.nextBtnGroup,"g").styles(Ve);this.nextBtnGroup=dt.node();var Ot=dt.maybeAppendByClassName(Vc.nextBtn,"path");if(re){var _t=Lc(Vc.nextBtn.name,Hc.nextBtn,re);Ot.node().setAttribute("class",_t)}[ht,Ot].forEach(function(Xt){Xt.styles((0,Nt.pi)((0,Nt.pi)({},Ye),{transformOrigin:"center"})),FS(Xt.node(),Ze,!0)});var wt=ye.maybeAppendByClassName(Vc.pageInfoGroup,"g");this.pageInfoGroup=wt.node();var $t=wt.maybeAppendByClassName(Vc.pageInfo,"text");if($t.styles(ke),re){var gn=Lc(Vc.pageInfo.name,Hc.pageInfo,re);$t.node().setAttribute("class",gn)}this.updatePageInfo(),ye.node().setLocalPosition(oe+z,de/2),et&&(this.prevBtnGroup.addEventListener("click",function(){x.prev()}),this.nextBtnGroup.addEventListener("click",function(){x.next()}))}},a.prototype.render=function(y,x){var b=y.x,z=b===void 0?0:b,ee=y.y,re=ee===void 0?0:ee;this.attr("transform","translate(".concat(z,", ").concat(re,")"));var ae=Ji(x);this.renderClipPath(ae),this.renderController(ae),this.setVisiblePages([this.defaultPage]),this.goTo(this.defaultPage)},a.prototype.bindEvents=function(){var y=this,x=xm(function(){return y.render(y.attributes,y)},50);this.playWindow.addEventListener(Bs.INSERTED,x),this.playWindow.addEventListener(Bs.REMOVED,x)},a}(pu);function fH(E){var a="default";if(Tu(E)&&E instanceof Image)a="image";else if(Xi(E))a="symbol";else if(al(E)){var y=new RegExp("data:(image|text)");E.match(y)?a="base64":/^(https?:\/\/(([a-zA-Z0-9]+-?)+[a-zA-Z0-9]+\.)+[a-zA-Z]+)(:\d+)?(\/.*)?(\?.*)?(#.*)?$/.test(E)?a="url":a="symbol"}return a}function hH(E){var a=fH(E);return["base64","url","image"].includes(a)?"image":E&&a==="symbol"?"path":null}var Sl=function(E){(0,Nt.ZT)(a,E);function a(){return E!==null&&E.apply(this,arguments)||this}return a.prototype.render=function(y,x){var b=y.x,z=b===void 0?0:b,ee=y.y,re=ee===void 0?0:ee,ae=this.getSubShapeStyle(y),oe=ae.symbol,de=ae.size,ge=de===void 0?16:de,ye=(0,Nt._T)(ae,["symbol","size"]),De=hH(oe);cd(!!De,Ji(x),function(ke){ke.maybeAppendByClassName("marker",De).attr("className","marker ".concat(De,"-marker")).call(function(ze){if(De==="image"){var We=ge*2;ze.styles({img:oe,width:We,height:We,x:z-ge,y:re-ge})}else{var We=ge/2,Ve=Xi(oe)?oe:a.getSymbol(oe);ze.styles((0,Nt.pi)({d:Ve==null?void 0:Ve(z,re,We)},ye))}})})},a.MARKER_SYMBOL_MAP=new Map,a.registerSymbol=function(y,x){a.MARKER_SYMBOL_MAP.set(y,x)},a.getSymbol=function(y){return a.MARKER_SYMBOL_MAP.get(y)},a.getSymbols=function(){return Array.from(a.MARKER_SYMBOL_MAP.keys())},a}(pu);Sl.registerSymbol("cross",$G),Sl.registerSymbol("hyphen",nH),Sl.registerSymbol("line",r3),Sl.registerSymbol("plus",tH),Sl.registerSymbol("tick",eH),Sl.registerSymbol("circle",n3),Sl.registerSymbol("point",KG),Sl.registerSymbol("bowtie",qG),Sl.registerSymbol("hexagon",JG),Sl.registerSymbol("square",ZG),Sl.registerSymbol("diamond",QG),Sl.registerSymbol("triangle",YG),Sl.registerSymbol("triangle-down",XG),Sl.registerSymbol("line",r3),Sl.registerSymbol("dot",a3),Sl.registerSymbol("dash",rH),Sl.registerSymbol("smooth",aH),Sl.registerSymbol("hv",iH),Sl.registerSymbol("vh",oH),Sl.registerSymbol("hvh",sH),Sl.registerSymbol("vhv",lH),Sl.registerSymbol("focus",cH);function Hne(E,a,y){var x=Math.round((E-y)/a);return y+x*a}function gH(E,a,y){var x=1.4,b=x*y;return[["M",E-y,a-b],["L",E+y,a-b],["L",E+y,a+b],["L",E-y,a+b],["Z"]]}var i3=1.4,o3=.4;function vH(E,a,y){var x=y,b=x*i3,z=x/2,ee=x/6,re=E+b*o3;return[["M",E,a],["L",re,a+z],["L",E+b,a+z],["L",E+b,a-z],["L",re,a-z],["Z"],["M",re,a+ee],["L",E+b-2,a+ee],["M",re,a-ee],["L",E+b-2,a-ee]]}function mH(E,a,y){var x=y,b=x*i3,z=x/2,ee=x/6,re=a+b*o3;return[["M",E,a],["L",E-z,re],["L",E-z,a+b],["L",E+z,a+b],["L",E+z,re],["Z"],["M",E-ee,re],["L",E-ee,a+b-2],["M",E+ee,re],["L",E+ee,a+b-2]]}Sl.registerSymbol("hiddenHandle",gH),Sl.registerSymbol("verticalHandle",vH),Sl.registerSymbol("horizontalHandle",mH);var Vne=function(E,a,y){return E===void 0&&(E="horizontal"),E==="horizontal"?a:y};function Kne(E,a,y,x){var b;x===void 0&&(x=4);var z=__read(E,2),ee=z[0],re=z[1],ae=__read(a,2),oe=ae[0],de=ae[1],ge=__read(y,2),ye=ge[0],De=ge[1],ke=__read([oe,de],2),ze=ke[0],We=ke[1],Ve=We-ze;return ze>We&&(b=__read([We,ze],2),ze=b[0],We=b[1]),Ve>re-ee?[ee,re]:ze<ee?ye===ee&&De===We?[ee,We]:[ee,Ve+ee]:We>re?De===re&&ye===ze?[ze,re]:[re-Ve,re]:[ze,We]}function kS(E,a,y){return E===void 0&&(E="horizontal"),E==="horizontal"?a:y}function Zne(E){var a=E&&E.getRenderBounds();if(!a)return{width:0,height:0};var y=a.getMax(),x=a.getMin();return{width:y[0]-x[0],height:y[1]-x[1]}}function s3(E){var a=E.getLocalBounds(),y=a.min,x=a.max,b=(0,Nt.CR)([y,x],2),z=(0,Nt.CR)(b[0],2),ee=z[0],re=z[1],ae=(0,Nt.CR)(b[1],2),oe=ae[0],de=ae[1];return{x:ee,y:re,width:oe-ee,height:de-re,left:ee,bottom:de,top:re,right:oe}}function Qne(E,a){var y=select(E).append("text").node();return y.attr(__assign(__assign({},a),{visibility:"hidden"})),y}function pH(E,a){var y=(0,Nt.CR)(E,2),x=y[0],b=y[1],z=(0,Nt.CR)(a,2),ee=z[0],re=z[1];return x!==ee&&b===re}function Yne(E,a){var y=__read(E,2),x=y[0],b=y[1],z=__read(a,2),ee=z[0],re=z[1];return x===ee&&b!==re}function yH(E,a){var y,x,b=a.attributes;try{for(var z=(0,Nt.XA)(Object.entries(b)),ee=z.next();!ee.done;ee=z.next()){var re=(0,Nt.CR)(ee.value,2),ae=re[0],oe=re[1];ae!=="id"&&ae!=="className"&&E.attr(ae,oe)}}catch(de){y={error:de}}finally{try{ee&&!ee.done&&(x=z.return)&&x.call(z)}finally{if(y)throw y.error}}}function xh(E){return typeof E=="function"?E():al(E)||ji(E)?new BS({style:{text:String(E)}}):E}function EH(E,a){return typeof E=="function"?E():al(E)||ji(E)?new Kg({style:(0,Nt.pi)((0,Nt.pi)({pointerEvents:"auto"},a),{innerHTML:E})}):E}var H1,_S;function Xne(E){_S=E}var AH=xS(function(E,a){var y=a.fontSize,x=a.fontFamily,b=a.fontWeight,z=a.fontStyle,ee=a.fontVariant;return _S?_S(E,y):(H1||(H1=Xa.offscreenCanvasCreator.getOrCreateContext(void 0)),H1.font=[z,ee,b,"".concat(y,"px"),x].join(" "),H1.measureText(E).width)},function(E,a){return[E,Object.values(a||l3(E)).join()].join("")},4096),l3=function(E){var a=E.style.fontFamily||"sans-serif",y=E.style.fontWeight||"normal",x=E.style.fontStyle||"normal",b=E.style.fontVariant,z=E.style.fontSize;return z=typeof z=="object"?z.value:z,{fontSize:z,fontFamily:a,fontWeight:y,fontStyle:x,fontVariant:b}};function u3(E){return E.nodeName==="text"?E:E.nodeName==="g"&&E.children.length===1&&E.children[0].nodeName==="text"?E.children[0]:null}function c3(E,a){var y=u3(E);y&&y.attr(a)}function zS(E,a,y){y===void 0&&(y="..."),c3(E,{wordWrap:!0,wordWrapWidth:a,maxLines:1,textOverflow:y})}function jS(E,a){for(var y in a)a.hasOwnProperty(y)&&y!=="constructor"&&a[y]!==void 0&&(E[y]=a[y])}function xH(E,a,y,x){return a&&jS(E,a),y&&jS(E,y),x&&jS(E,x),E}function SH(E){return E instanceof Element||E instanceof Document}var Ns,bH="component-poptip",ys={CONTAINER:"component-poptip",ARROW:"component-poptip-arrow",TEXT:"component-poptip-text"},d3=(Ns={},Ns[".".concat(ys.CONTAINER)]={visibility:"visible",position:"absolute","background-color":"rgba(0, 0, 0)","box-shadow":"0px 0px 10px #aeaeae","border-radius":"3px",color:"#fff",opacity:.8,"font-size":"12px",padding:"4px 6px",display:"flex","justify-content":"center","align-items":"center","z-index":8,transition:"visibility 50ms"},Ns[".".concat(ys.TEXT)]={"text-align":"center"},Ns[".".concat(ys.CONTAINER,"[data-position='top']")]={transform:"translate(-50%, -100%)"},Ns[".".concat(ys.CONTAINER,"[data-position='left']")]={transform:"translate(-100%, -50%)"},Ns[".".concat(ys.CONTAINER,"[data-position='right']")]={transform:"translate(0, -50%)"},Ns[".".concat(ys.CONTAINER,"[data-position='bottom']")]={transform:"translate(-50%, 0)"},Ns[".".concat(ys.CONTAINER,"[data-position='top-left']")]={transform:"translate(0,-100%)"},Ns[".".concat(ys.CONTAINER,"[data-position='top-right']")]={transform:"translate(-100%,-100%)"},Ns[".".concat(ys.CONTAINER,"[data-position='left-top']")]={transform:"translate(-100%, 0)"},Ns[".".concat(ys.CONTAINER,"[data-position='left-bottom']")]={transform:"translate(-100%, -100%)"},Ns[".".concat(ys.CONTAINER,"[data-position='right-top']")]={transform:"translate(0, 0)"},Ns[".".concat(ys.CONTAINER,"[data-position='right-bottom']")]={transform:"translate(0, -100%)"},Ns[".".concat(ys.CONTAINER,"[data-position='bottom-left']")]={transform:"translate(0, 0)"},Ns[".".concat(ys.CONTAINER,"[data-position='bottom-right']")]={transform:"translate(-100%, 0)"},Ns[".".concat(ys.ARROW)]={width:"4px",height:"4px",transform:"rotate(45deg)","background-color":"rgba(0, 0, 0)",position:"absolute","z-index":-1},Ns[".".concat(ys.CONTAINER,"[data-position='top']")]={transform:"translate(-50%, calc(-100% - 5px))"},Ns["[data-position='top'] .".concat(ys.ARROW)]={bottom:"-2px"},Ns[".".concat(ys.CONTAINER,"[data-position='left']")]={transform:"translate(calc(-100% - 5px), -50%)"},Ns["[data-position='left'] .".concat(ys.ARROW)]={right:"-2px"},Ns[".".concat(ys.CONTAINER,"[data-position='right']")]={transform:"translate(5px, -50%)"},Ns["[data-position='right'] .".concat(ys.ARROW)]={left:"-2px"},Ns[".".concat(ys.CONTAINER,"[data-position='bottom']")]={transform:"translate(-50%, 5px)"},Ns["[data-position='bottom'] .".concat(ys.ARROW)]={top:"-2px"},Ns[".".concat(ys.CONTAINER,"[data-position='top-left']")]={transform:"translate(0, calc(-100% - 5px))"},Ns["[data-position='top-left'] .".concat(ys.ARROW)]={left:"10px",bottom:"-2px"},Ns[".".concat(ys.CONTAINER,"[data-position='top-right']")]={transform:"translate(-100%, calc(-100% - 5px))"},Ns["[data-position='top-right'] .".concat(ys.ARROW)]={right:"10px",bottom:"-2px"},Ns[".".concat(ys.CONTAINER,"[data-position='left-top']")]={transform:"translate(calc(-100% - 5px), 0)"},Ns["[data-position='left-top'] .".concat(ys.ARROW)]={right:"-2px",top:"8px"},Ns[".".concat(ys.CONTAINER,"[data-position='left-bottom']")]={transform:"translate(calc(-100% - 5px), -100%)"},Ns["[data-position='left-bottom'] .".concat(ys.ARROW)]={right:"-2px",bottom:"8px"},Ns[".".concat(ys.CONTAINER,"[data-position='right-top']")]={transform:"translate(5px, 0)"},Ns["[data-position='right-top'] .".concat(ys.ARROW)]={left:"-2px",top:"8px"},Ns[".".concat(ys.CONTAINER,"[data-position='right-bottom']")]={transform:"translate(5px, -100%)"},Ns["[data-position='right-bottom'] .".concat(ys.ARROW)]={left:"-2px",bottom:"8px"},Ns[".".concat(ys.CONTAINER,"[data-position='bottom-left']")]={transform:"translate(0, 5px)"},Ns["[data-position='bottom-left'] .".concat(ys.ARROW)]={top:"-2px",left:"8px"},Ns[".".concat(ys.CONTAINER,"[data-position='bottom-right']")]={transform:"translate(-100%, 5px)"},Ns["[data-position='bottom-right'] .".concat(ys.ARROW)]={top:"-2px",right:"8px"},Ns),CH=void 0;function PH(E,a,y,x,b,z){if(b===void 0&&(b=!1),z===void 0&&(z=!1),z)return[E,a];var ee=y.getBoundingClientRect(),re=ee.x,ae=ee.y,oe=ee.width,de=ee.height;switch(x){case"top":return b?[re+oe/2,ae]:[E,ae];case"left":return b?[re,ae+de/2]:[re,a];case"bottom":return b?[re+oe/2,ae+de]:[E,ae+de];case"right":return b?[re+oe,ae+de/2]:[re+oe,a];case"top-right":case"right-top":return[re+oe,ae];case"left-bottom":case"bottom-left":return[re,ae+de];case"right-bottom":case"bottom-right":return[re+oe,ae+de];case"top-left":case"left-top":default:return[re,ae]}}var wH=function(E){var a;return function(){for(var y=[],x=0;x<arguments.length;x++)y[x]=arguments[x];return a||(a=E.apply(CH,y)),a}};function MH(E){var a=E&&document.getElementById(E);return a||(a=document.createElement("div"),a.setAttribute("id",E),document.body.appendChild(a)),a}function DH(E){var a=wH(MH)(E);return a}var IH=function(E){(0,Nt.ZT)(a,E);function a(y){var x=E.call(this,vc({style:{id:bH}},a.defaultOptions,y))||this;return x.visibility="visible",x.map=new Map,x.domStyles="",x.initShape(),x.render(x.attributes,x),x}return Object.defineProperty(a.prototype,"visible",{get:function(){return this.visibility==="visible"},enumerable:!1,configurable:!0}),a.prototype.render=function(y,x){this.visibility=this.style.visibility,this.updatePoptipElement()},a.prototype.update=function(y){this.attr(vc({},this.style,y)),this.render(this.attributes,this)},a.prototype.bind=function(y,x){var b=this;if(y){var z=this.style.text,ee=function(ae){var oe=y,de=b.style,ge=z;if(x){var ye=typeof x=="function"?x.call(null,ae):x,De=ye.html,ke=ye.target,ze=(0,Nt._T)(ye,["html","target"]);de=xH({},b.style,ze),(ke||ke===!1)&&(oe=ke),typeof De=="string"&&(ge=De)}var We=de.position,Ve=de.arrowPointAtCenter,Ze=de.follow,Ye=de.offset;if(oe){var et=ae,st=et.clientX,ht=et.clientY,mt=(0,Nt.CR)(PH(st,ht,oe,We,Ve,Ze),2),dt=mt[0],Ot=mt[1];b.showTip(dt,Ot,{text:ge,position:We,offset:Ye})}else b.hideTip()},re=function(){b.hideTip()};y.addEventListener("mousemove",ee),y.addEventListener("mouseleave",re),this.map.set(y,[ee,re])}},a.prototype.unbind=function(y){if(this.map.has(y)){var x=(0,Nt.CR)(this.map.get(y)||[],2),b=x[0],z=x[1];b&&y.removeEventListener("mousemove",b),z&&y.removeEventListener("mouseleave",z),this.map.delete(y)}},a.prototype.clear=function(){this.container.innerHTML=""},a.prototype.destroy=function(){var y=this,x;(0,Nt.ev)([],(0,Nt.CR)(this.map.keys()),!1).forEach(function(b){return y.unbind(b)}),(x=this.container)===null||x===void 0||x.remove(),E.prototype.destroy.call(this)},a.prototype.showTip=function(y,x,b){var z=pc(b,"text");if(!(z&&typeof z!="string")&&(this.applyStyles(),y&&x&&b)){var ee=b.offset,re=b.position;if(re&&this.container.setAttribute("data-position",re),this.setOffsetPosition(y,x,ee),typeof z=="string"){var ae=this.container.querySelector(".".concat(ys.TEXT));ae&&(ae.innerHTML=z)}this.visibility="visible",this.container.style.visibility="visible"}},a.prototype.hideTip=function(){this.visibility="hidden",this.container.style.visibility="hidden"},a.prototype.getContainer=function(){return this.container},a.prototype.getClassName=function(){var y=this.style.containerClassName;return"".concat(ys.CONTAINER).concat(y?" ".concat(y):"")},a.prototype.initShape=function(){var y=this,x=this.style.id;this.container=DH(x),this.container.className=this.getClassName(),this.container.addEventListener("mousemove",function(){return y.showTip()}),this.container.addEventListener("mouseleave",function(){return y.hideTip()})},a.prototype.updatePoptipElement=function(){var y=this.container;this.clear();var x=this.style,b=x.id,z=x.template,ee=x.text;this.container.setAttribute("id",b),this.container.className=this.getClassName();var re='<span class="'.concat(ys.ARROW,'"></span>');y.innerHTML=re,al(z)?y.innerHTML+=z:z&&SH(z)&&y.appendChild(z),ee&&(y.getElementsByClassName(ys.TEXT)[0].textContent=ee),this.applyStyles(),this.container.style.visibility=this.visibility},a.prototype.applyStyles=function(){var y=Hu({},d3,this.style.domStyles),x=Object.entries(y).reduce(function(z,ee){var re=(0,Nt.CR)(ee,2),ae=re[0],oe=re[1],de=Object.entries(oe).reduce(function(ge,ye){var De=(0,Nt.CR)(ye,2),ke=De[0],ze=De[1];return"".concat(ge).concat(ke,": ").concat(ze,";")},"");return"".concat(z).concat(ae,"{").concat(de,"}")},"");if(this.domStyles!==x){this.domStyles=x;var b=this.container.querySelector("style");b&&this.container.removeChild(b),b=document.createElement("style"),b.innerHTML=x,this.container.appendChild(b)}},a.prototype.setOffsetPosition=function(y,x,b){b===void 0&&(b=this.style.offset);var z=(0,Nt.CR)(b,2),ee=z[0],re=ee===void 0?0:ee,ae=z[1],oe=ae===void 0?0:ae;this.container.style.left="".concat(y+re,"px"),this.container.style.top="".concat(x+oe,"px")},a.tag="poptip",a.defaultOptions={style:{x:0,y:0,width:0,height:0,target:null,visibility:"hidden",text:"",position:"top",follow:!1,offset:[0,0],domStyles:d3,template:'<div class="'.concat(ys.TEXT,'"></div>')}},a}(pu),Vu=wf({layout:"flex",markerGroup:"marker-group",marker:"marker",labelGroup:"label-group",label:"label",valueGroup:"value-group",focusGroup:"focus-group",focus:"focus",value:"value",backgroundGroup:"background-group",background:"background"},"legend-category-item"),OH={offset:[0,20],domStyles:{".component-poptip":{opacity:"1",padding:"8px 12px",background:"#fff",boxShadow:"0 2px 8px rgba(0, 0, 0, 0.15)"},".component-poptip-arrow":{display:"none"},".component-poptip-text":{color:"#000",lineHeight:"20px"}}};function TH(E){var a=E.querySelector(Vu.marker.class);return a?a.style:{}}var LH=function(E){(0,Nt.ZT)(a,E);function a(y,x){var b=E.call(this,y,{span:[1,1],marker:function(){return new Hf({style:{r:6}})},markerSize:10,labelFill:"#646464",valueFill:"#646464",labelFontSize:12,valueFontSize:12,labelTextBaseline:"middle",valueTextBaseline:"middle"})||this;return b.keyFields={},b.keyFields=x||{},b}return Object.defineProperty(a.prototype,"showValue",{get:function(){var y=this.attributes.valueText;return y?typeof y=="string"||typeof y=="number"?y!=="":typeof y=="function"?!0:y.attr("text")!=="":!1},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"actualSpace",{get:function(){var y=this.labelGroup,x=this.valueGroup,b=this.attributes,z=b.markerSize,ee=b.focus,re=b.focusMarkerSize,ae=y.node().getBBox(),oe=ae.width,de=ae.height,ge=x.node().getBBox(),ye=ge.width,De=ge.height,ke=ee?re!=null?re:12:0;return{markerWidth:z,labelWidth:oe,valueWidth:ye,focusWidth:ke,height:Math.max(z,de,De)}},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"span",{get:function(){var y=this.attributes.span;if(!y)return[1,1];var x=(0,Nt.CR)(Ec(y),2),b=x[0],z=x[1],ee=this.showValue?z:0,re=b+ee;return[b/re,ee/re]},enumerable:!1,configurable:!0}),a.prototype.setAttribute=function(y,x){E.prototype.setAttribute.call(this,y,x)},Object.defineProperty(a.prototype,"shape",{get:function(){var y,x=this.attributes,b=x.markerSize,z=x.width,ee=this.actualSpace,re=ee.markerWidth,ae=ee.focusWidth,oe=ee.height,de=this.actualSpace,ge=de.labelWidth,ye=de.valueWidth,De=(0,Nt.CR)(this.spacing,3),ke=De[0],ze=De[1],We=De[2];if(z){var Ve=z-b-ke-ze-ae-We,Ze=(0,Nt.CR)(this.span,2),Ye=Ze[0],et=Ze[1];y=(0,Nt.CR)([Ye*Ve,et*Ve],2),ge=y[0],ye=y[1]}var st=re+ge+ye+ke+ze+ae+We;return{width:st,height:oe,markerWidth:re,labelWidth:ge,valueWidth:ye,focusWidth:ae}},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"spacing",{get:function(){var y=this.attributes,x=y.spacing,b=y.focus;if(!x)return[0,0,0];var z=(0,Nt.CR)(Ec(x),3),ee=z[0],re=z[1],ae=z[2];return[ee,this.showValue?re:0,b?ae:0]},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"layout",{get:function(){var y=this.shape,x=y.markerWidth,b=y.labelWidth,z=y.valueWidth,ee=y.focusWidth,re=y.width,ae=y.height,oe=(0,Nt.CR)(this.spacing,3),de=oe[0],ge=oe[1],ye=oe[2];return{height:ae,width:re,markerWidth:x,labelWidth:b,valueWidth:z,focusWidth:ee,position:[x/2,x+de,x+b+de+ge,x+b+z+de+ge+ye+ee/2]}},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"scaleSize",{get:function(){var y=TH(this.markerGroup.node()),x=this.attributes,b=x.markerSize,z=x.markerStrokeWidth,ee=z===void 0?y.strokeWidth:z,re=x.markerLineWidth,ae=re===void 0?y.lineWidth:re,oe=x.markerStroke,de=oe===void 0?y.stroke:oe,ge=+(ee||ae||(de?1:0))*Math.sqrt(2),ye=this.markerGroup.node().getBBox(),De=ye.width,ke=ye.height;return(1-ge/Math.max(De,ke))*b},enumerable:!1,configurable:!0}),a.prototype.renderMarker=function(y){var x=this,b=this.attributes,z=b.marker,ee=b.classNamePrefix,re=cs(this.attributes,"marker");this.markerGroup=y.maybeAppendByClassName(Vu.markerGroup,"g").style("zIndex",0),cd(!!z,this.markerGroup,function(){var ae,oe=x.markerGroup.node(),de=(ae=oe.childNodes)===null||ae===void 0?void 0:ae[0],ge=Lc(Vu.marker.name,Hc.marker,ee),ye=typeof z=="string"?new Sl({style:{symbol:z},className:ge}):z();if(de)if(ye.nodeName===de.nodeName)de instanceof Sl?de.update((0,Nt.pi)((0,Nt.pi)({},re),{symbol:z})):(yH(de,ye),Ji(de).styles(re));else{if(de.remove(),!(ye instanceof Sl)){var ke=Lc(Vu.marker.name,Hc.marker,ee);ye.className=ke}Ji(ye).styles(re),oe.appendChild(ye)}else{if(!(ye instanceof Sl)){var De=Lc(Vu.marker.name,Hc.marker,ee);ye.className=De,Ji(ye).styles(re)}oe.appendChild(ye)}x.markerGroup.node().scale(1/x.markerGroup.node().getScale()[0]);var ze=FS(x.markerGroup.node(),x.scaleSize,!0);x.markerGroup.node().style._transform="scale(".concat(ze,")")})},a.prototype.renderLabel=function(y){var x=cs(this.attributes,"label"),b=x.text,z=(0,Nt._T)(x,["text"]),ee=this.attributes.classNamePrefix;this.labelGroup=y.maybeAppendByClassName(Vu.labelGroup,"g").style("zIndex",0);var re=Lc(Vu.label.name,Hc.label,ee),ae=this.labelGroup.maybeAppendByClassName(Vu.label,function(){return xh(b)});ae.node().setAttribute("class",re),ae.styles(z)},a.prototype.renderValue=function(y){var x=this,b=cs(this.attributes,"value"),z=b.text,ee=(0,Nt._T)(b,["text"]),re=this.attributes.classNamePrefix;this.valueGroup=y.maybeAppendByClassName(Vu.valueGroup,"g").style("zIndex",0),cd(this.showValue,this.valueGroup,function(){var ae=Lc(Vu.value.name,Hc.value,re),oe=x.valueGroup.maybeAppendByClassName(Vu.value,function(){return xh(z)});oe.node().setAttribute("class",ae),oe.styles(ee)})},a.prototype.createPoptip=function(){var y=this.attributes.poptip,x=y||{},b=x.render,z=(0,Nt._T)(x,["render"]),ee=new IH({style:Hu(OH,z)});return this.poptipGroup=ee,ee},a.prototype.bindPoptip=function(y){var x=this,b=this.attributes.poptip;if(b){var z=this.poptipGroup||this.createPoptip();z.bind(y,function(){var ee=x.attributes,re=ee.labelText,ae=ee.valueText,oe=ee.markerFill,de=typeof re=="string"?re:re==null?void 0:re.attr("text"),ge=typeof ae=="string"?ae:ae==null?void 0:ae.attr("text");if(typeof b.render=="function")return{html:b.render((0,Nt.pi)((0,Nt.pi)({},x.keyFields),{label:de,value:ge,color:oe}))};var ye="";return(typeof de=="string"||typeof de=="number")&&(ye+='<div class="component-poptip-label">'.concat(de,"</div>")),(typeof ge=="string"||typeof ge=="number")&&(ye+='<div class="component-poptip-value">'.concat(ge,"</div>")),{html:ye}})}},a.prototype.renderFocus=function(y){var x=this,b=this.attributes,z=b.focus,ee=b.focusMarkerSize,re=b.classNamePrefix,ae={x:0,y:0,size:ee,opacity:.6,symbol:"focus",stroke:"#aaaaaa",lineWidth:1};qo(z)||(this.focusGroup=y.maybeAppendByClassName(Vu.focusGroup,"g").style("zIndex",0),cd(z,this.focusGroup,function(){var oe=Lc(Vu.focus.name,Hc.focusIcon,re),de=new Sl({style:(0,Nt.pi)((0,Nt.pi)({},ae),{symbol:"focus"}),className:oe}),ge=new Hf({style:{r:ae.size/2,fill:"transparent"}}),ye=x.focusGroup.node();ye.appendChild(ge),ye.appendChild(de),de.update({opacity:0}),y.node().addEventListener("pointerenter",function(){de.update({opacity:1})}),y.node().addEventListener("pointerleave",function(){de.update({opacity:0})})}))},a.prototype.renderPoptip=function(y){var x=this,b=this.attributes.poptip;if(b){var z=y.maybeAppendByClassName(Vu.value,"g").node(),ee=y.maybeAppendByClassName(Vu.label,"g").node();[z,ee].forEach(function(re){re&&x.bindPoptip(re)})}},a.prototype.renderBackground=function(y){var x=this.shape,b=x.width,z=x.height,ee=cs(this.attributes,"background");this.background=y.maybeAppendByClassName(Vu.backgroundGroup,"g").style("zIndex",-1);var re=this.background.maybeAppendByClassName(Vu.background,"rect");re.styles((0,Nt.pi)({width:b,height:z},ee));var ae=this.attributes.classNamePrefix,oe=ae===void 0?"":ae;if(oe){var de=Lc(Vu.background.name,Hc.background,oe);re.node().setAttribute("class",de)}},a.prototype.adjustLayout=function(){var y=this.layout,x=y.labelWidth,b=y.valueWidth,z=y.height,ee=(0,Nt.CR)(y.position,4),re=ee[0],ae=ee[1],oe=ee[2],de=ee[3],ge=z/2;this.markerGroup.styles({transform:"translate(".concat(re,", ").concat(ge,")").concat(this.markerGroup.node().style._transform)}),this.labelGroup.styles({transform:"translate(".concat(ae,", ").concat(ge,")")}),this.focusGroup&&this.focusGroup.styles({transform:"translate(".concat(de,", ").concat(ge,")")}),zS(this.labelGroup.select(Vu.label.class).node(),Math.ceil(x)),this.showValue&&(this.valueGroup.styles({transform:"translate(".concat(oe,", ").concat(ge,")")}),zS(this.valueGroup.select(Vu.value.class).node(),Math.ceil(b)))},a.prototype.render=function(y,x){var b=Ji(x),z=y.x,ee=z===void 0?0:z,re=y.y,ae=re===void 0?0:re;b.styles({transform:"translate(".concat(ee,", ").concat(ae,")")}),this.renderMarker(b),this.renderLabel(b),this.renderValue(b),this.renderBackground(b),this.renderPoptip(b),this.renderFocus(b),this.adjustLayout()},a}(pu),g0=wf({page:"item-page",navigator:"navigator",item:"item"},"items"),f3=function(E,a,y){return y===void 0&&(y=!0),E?a(E):y},BH=function(E){(0,Nt.ZT)(a,E);function a(y){var x=E.call(this,y,{data:[],gridRow:1/0,gridCol:void 0,padding:0,width:1e3,height:100,rowPadding:0,colPadding:0,layout:"flex",orientation:"horizontal",click:RS,mouseenter:RS,mouseleave:RS})||this;return x.navigatorShape=[0,0],x}return Object.defineProperty(a.prototype,"pageViews",{get:function(){return this.navigator.getContainer()},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"grid",{get:function(){var y=this.attributes,x=y.gridRow,b=y.gridCol,z=y.data;if(!x&&!b)throw new Error("gridRow and gridCol can not be set null at the same time");return x&&b?[x,b]:x?[x,z.length]:[z.length,b]},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"renderData",{get:function(){var y=this.attributes,x=y.data,b=y.layout,z=y.poptip,ee=y.focus,re=y.focusMarkerSize,ae=y.classNamePrefix,oe=cs(this.attributes,"item"),de=x.map(function(ge,ye){var De=ge.id,ke=De===void 0?ye:De,ze=ge.label,We=ge.value;return{id:"".concat(ke),index:ye,style:(0,Nt.pi)({layout:b,labelText:ze,valueText:We,poptip:z,focus:ee,focusMarkerSize:re,classNamePrefix:ae},Object.fromEntries(Object.entries(oe).map(function(Ve){var Ze=(0,Nt.CR)(Ve,2),Ye=Ze[0],et=Ze[1];return[Ye,dd(et,[ge,ye,x])]})))}});return de},enumerable:!1,configurable:!0}),a.prototype.getGridLayout=function(){var y=this,x=this.attributes,b=x.orientation,z=x.width,ee=x.rowPadding,re=x.colPadding,ae=(0,Nt.CR)(this.navigatorShape,1),oe=ae[0],de=(0,Nt.CR)(this.grid,2),ge=de[0],ye=de[1],De=ye*ge,ke=0;return this.pageViews.children.map(function(ze,We){var Ve,Ze,Ye=Math.floor(We/De),et=We%De,st=y.ifHorizontal(ye,ge),ht=[Math.floor(et/st),et%st];b==="vertical"&&ht.reverse();var mt=(0,Nt.CR)(ht,2),dt=mt[0],Ot=mt[1],_t=(z-oe-(ye-1)*re)/ye,wt=ze.getBBox().height,$t=(0,Nt.CR)([0,0],2),gn=$t[0],Xt=$t[1];return b==="horizontal"?(Ve=(0,Nt.CR)([ke,dt*(wt+ee)],2),gn=Ve[0],Xt=Ve[1],ke=Ot===ye-1?0:ke+_t+re):(Ze=(0,Nt.CR)([Ot*(_t+re),ke],2),gn=Ze[0],Xt=Ze[1],ke=dt===ge-1?0:ke+wt+ee),{page:Ye,index:We,row:dt,col:Ot,pageIndex:et,width:_t,height:wt,x:gn,y:Xt}})},a.prototype.getFlexLayout=function(){var y=this.attributes,x=y.width,b=y.height,z=y.rowPadding,ee=y.colPadding,re=(0,Nt.CR)(this.navigatorShape,1),ae=re[0],oe=(0,Nt.CR)(this.grid,2),de=oe[0],ge=oe[1],ye=(0,Nt.CR)([x-ae,b],2),De=ye[0],ke=ye[1],ze=(0,Nt.CR)([0,0,0,0,0,0,0,0],8),We=ze[0],Ve=ze[1],Ze=ze[2],Ye=ze[3],et=ze[4],st=ze[5],ht=ze[6],mt=ze[7];return this.pageViews.children.map(function(dt,Ot){var _t,wt,$t,gn,Xt=dt.getBBox(),Tn=Xt.width,er=Xt.height,En=ht===0?0:ee,yn=ht+En+Tn;if(yn<=De&&f3(et,function(qn){return qn<ge}))return _t=(0,Nt.CR)([ht+En,mt,yn],3),We=_t[0],Ve=_t[1],ht=_t[2],{width:Tn,height:er,x:We,y:Ve,page:Ze,index:Ot,pageIndex:Ye++,row:st,col:et++};wt=(0,Nt.CR)([st+1,0,0,mt+er+z],4),st=wt[0],et=wt[1],ht=wt[2],mt=wt[3];var Cn=mt+er;return Cn<=ke&&f3(st,function(qn){return qn<de})?($t=(0,Nt.CR)([ht,mt,Tn],3),We=$t[0],Ve=$t[1],ht=$t[2],{width:Tn,height:er,x:We,y:Ve,page:Ze,index:Ot,pageIndex:Ye++,row:st,col:et++}):(gn=(0,Nt.CR)([0,0,Tn,0,Ze+1,0,0,0],8),We=gn[0],Ve=gn[1],ht=gn[2],mt=gn[3],Ze=gn[4],Ye=gn[5],st=gn[6],et=gn[7],{width:Tn,height:er,x:We,y:Ve,page:Ze,index:Ot,pageIndex:Ye++,row:st,col:et++})})},Object.defineProperty(a.prototype,"itemsLayout",{get:function(){this.navigatorShape=[0,0];var y=this.attributes.layout==="grid"?this.getGridLayout:this.getFlexLayout,x=y.call(this);return x.slice(-1)[0].page>0?(this.navigatorShape=[55,0],y.call(this)):x},enumerable:!1,configurable:!0}),a.prototype.ifHorizontal=function(y,x){var b=this.attributes.orientation;return kS(b,y,x)},a.prototype.flattenPage=function(y){y.querySelectorAll(g0.item.class).forEach(function(x){y.appendChild(x)}),y.querySelectorAll(g0.page.class).forEach(function(x){var b=y.removeChild(x);b.destroy()})},a.prototype.renderItems=function(y){var x=this.attributes,b=x.click,z=x.mouseenter,ee=x.mouseleave,re=x.classNamePrefix;this.flattenPage(y);var ae=this.dispatchCustomEvent.bind(this),oe=Lc(g0.item.name,Hc.item,re);Ji(y).selectAll(g0.item.class).data(this.renderData,function(de){return de.id}).join(function(de){return de.append(function(ge){var ye=ge.style,De=(0,Nt._T)(ge,["style"]);return new LH({style:ye},De)}).attr("className",oe).on("click",function(){b==null||b(this),ae("itemClick",{item:this})}).on("pointerenter",function(){z==null||z(this),ae("itemMouseenter",{item:this})}).on("pointerleave",function(){ee==null||ee(this),ae("itemMouseleave",{item:this})})},function(de){return de.each(function(ge){var ye=ge.style;this.update(ye)})},function(de){return de.remove()})},a.prototype.relayoutNavigator=function(){var y,x=this.attributes,b=x.layout,z=x.width,ee=((y=this.pageViews.children[0])===null||y===void 0?void 0:y.getBBox().height)||0,re=(0,Nt.CR)(this.navigatorShape,2),ae=re[0],oe=re[1];this.navigator.update(b==="grid"?{pageWidth:z-ae,pageHeight:ee-oe}:{})},a.prototype.adjustLayout=function(){var y=this,x=Object.entries(jG(this.itemsLayout,"page")).map(function(z){var ee=(0,Nt.CR)(z,2),re=ee[0],ae=ee[1];return{page:re,layouts:ae}}),b=(0,Nt.ev)([],(0,Nt.CR)(this.navigator.getContainer().children),!1);x.forEach(function(z){var ee=z.layouts,re=y.pageViews.appendChild(new qu({className:g0.page.name}));ee.forEach(function(ae){var oe=ae.x,de=ae.y,ge=ae.index,ye=ae.width,De=ae.height,ke=b[ge];re.appendChild(ke),fm(ke,"__layout__",ae),ke.update({x:oe,y:de,width:ye,height:De})})}),this.relayoutNavigator()},a.prototype.renderNavigator=function(y){var x=this.attributes,b=x.orientation,z=x.classNamePrefix,ee=cs(this.attributes,"nav"),re=Hu({orientation:b,classNamePrefix:z},ee),ae=this;return y.selectAll(g0.navigator.class).data(["nav"]).join(function(oe){return oe.append(function(){return new dH({style:re})}).attr("className",g0.navigator.name).each(function(){ae.navigator=this})},function(oe){return oe.each(function(){this.update(re)})},function(oe){return oe.remove()}),this.navigator},a.prototype.getBBox=function(){return this.navigator.getBBox()},a.prototype.render=function(y,x){var b=this.attributes.data;if(!(!b||b.length===0)){var z=this.renderNavigator(Ji(x));this.renderItems(z.getContainer()),this.adjustLayout()}},a.prototype.dispatchCustomEvent=function(y,x){var b=new Wu(y,{detail:x});this.dispatchEvent(b)},a}(pu),v0=wf({markerGroup:"marker-group",marker:"marker",labelGroup:"label-group",label:"label"},"handle"),h3={showLabel:!0,formatter:function(E){return E.toString()},markerSize:25,markerStroke:"#c5c5c5",markerFill:"#fff",markerLineWidth:1,labelFontSize:12,labelFill:"#c5c5c5",labelText:"",orientation:"vertical",spacing:0},Jne=function(E){(0,Nt.ZT)(a,E);function a(y){return E.call(this,y,h3)||this}return a.prototype.render=function(y,x){var b=Ji(x).maybeAppendByClassName(v0.markerGroup,"g");this.renderMarker(b);var z=Ji(x).maybeAppendByClassName(v0.labelGroup,"g");this.renderLabel(z)},a.prototype.renderMarker=function(y){var x=this,b=this.attributes,z=b.orientation,ee=b.classNamePrefix,re=b.markerSymbol,ae=re===void 0?kS(z,"horizontalHandle","verticalHandle"):re;cd(!!ae,y,function(oe){var de=cs(x.attributes,"marker"),ge=(0,Nt.pi)({symbol:ae},de),ye=Lc(v0.marker.name,Hc.handleMarker,ee);if(x.marker=oe.maybeAppendByClassName(v0.marker,function(){return new Sl({style:ge,className:ye})}).update(ge),ee){var De=x.marker.node().querySelector(".marker");if(De){var ke=De.getAttribute("class")||"",ze=ke.split(" ")[0],We=Lc(ze,Hc.handleMarker,ee);De.setAttribute("class",We)}}})},a.prototype.renderLabel=function(y){var x=this,b=this.attributes,z=b.showLabel,ee=b.orientation,re=b.spacing,ae=re===void 0?0:re,oe=b.formatter,de=b.classNamePrefix;cd(z,y,function(ge){var ye,De=cs(x.attributes,"label"),ke=De.text,ze=(0,Nt._T)(De,["text"]),We=((ye=ge.select(v0.marker.class))===null||ye===void 0?void 0:ye.node().getBBox())||{},Ve=We.width,Ze=Ve===void 0?0:Ve,Ye=We.height,et=Ye===void 0?0:Ye,st=(0,Nt.CR)(kS(ee,[0,et+ae,"center","top"],[Ze+ae,0,"start","middle"]),4),ht=st[0],mt=st[1],dt=st[2],Ot=st[3],_t=Lc(v0.label.name,Hc.handleLabel,de);ge.maybeAppendByClassName(v0.label,"text").attr("className",_t).styles((0,Nt.pi)((0,Nt.pi)({},ze),{x:ht,y:mt,text:oe(ke).toString(),textAlign:dt,textBaseline:Ot}))})},a}(pu),g3={showTitle:!0,padding:0,orientation:"horizontal",backgroundFill:"transparent",titleText:"",titleSpacing:4,titlePosition:"top-left",titleFill:"#2C3542",titleFontWeight:"bold",titleFontFamily:"sans-serif",titleFontSize:12},NH=Hu({},g3,{}),qne=Hu({},g3,ov(h3,"handle"),{color:["#d0e3fa","#acc7f6","#8daaf2","#6d8eea","#4d73cd","#325bb1","#5a3e75","#8c3c79","#e23455","#e7655b"],indicatorBackgroundFill:"#262626",indicatorLabelFill:"white",indicatorLabelFontSize:12,indicatorVisibility:"hidden",labelAlign:"value",labelDirection:"positive",labelSpacing:5,showHandle:!0,showIndicator:!0,showLabel:!0,slidable:!0,titleText:"",type:"continuous"}),$ne=.01,ere=.5,m0=wf({title:"title",html:"html",titleGroup:"title-group",items:"items",itemsGroup:"items-group",contentGroup:"content-group",ribbonGroup:"ribbon-group",ribbon:"ribbon",handlesGroup:"handles-group",handle:"handle",startHandle:"start-handle",endHandle:"end-handle",labelGroup:"label-group",label:"label",indicator:"indicator"},"legend"),RH=function(E){(0,Nt.ZT)(a,E);function a(){return E!==null&&E.apply(this,arguments)||this}return a.prototype.update=function(y){this.attr(y)},a}(Kg),FH=function(E){(0,Nt.ZT)(a,E);function a(y){return E.call(this,y,NH)||this}return a.prototype.renderTitle=function(y,x,b){var z=this.attributes,ee=z.showTitle,re=z.titleText,ae=z.classNamePrefix,oe=cs(this.attributes,"title"),de=(0,Nt.CR)(Ah(oe),2),ge=de[0],ye=de[1];this.titleGroup=y.maybeAppendByClassName(m0.titleGroup,"g").styles(ye);var De=(0,Nt.pi)((0,Nt.pi)({width:x,height:b},ge),{text:ee?re:"",classNamePrefix:ae});this.title=this.titleGroup.maybeAppendByClassName(m0.title,function(){return new zG({style:De})}).update(De)},a.prototype.renderCustom=function(y){var x=this.attributes.data,b={innerHTML:this.attributes.render(x),pointerEvents:"auto"};y.maybeAppendByClassName(m0.html,function(){return new RH({className:m0.html.name,style:b})}).update(b)},a.prototype.renderItems=function(y,x){var b=x.x,z=x.y,ee=x.width,re=x.height,ae=cs(this.attributes,"title",!0),oe=(0,Nt.CR)(Ah(ae),2),de=oe[0],ge=oe[1],ye=(0,Nt.pi)((0,Nt.pi)({},de),{width:ee,height:re,x:0,y:0});this.itemsGroup=y.maybeAppendByClassName(m0.itemsGroup,"g").styles((0,Nt.pi)((0,Nt.pi)({},ge),{transform:"translate(".concat(b,", ").concat(z,")")}));var De=this;this.itemsGroup.selectAll(m0.items.class).data(["items"]).join(function(ke){return ke.append(function(){return new BH({style:ye})}).attr("className",m0.items.name).each(function(){De.items=Ji(this)})},function(ke){return ke.update(ye)},function(ke){return ke.remove()})},a.prototype.adjustLayout=function(){var y=this.attributes.showTitle;if(y){var x=this.title.node().getAvailableSpace(),b=x.x,z=x.y;this.itemsGroup.node().style.transform="translate(".concat(b,", ").concat(z,")")}},Object.defineProperty(a.prototype,"availableSpace",{get:function(){var y=this.attributes,x=y.showTitle,b=y.width,z=y.height;return x?this.title.node().getAvailableSpace():new Tc(0,0,b,z)},enumerable:!1,configurable:!0}),a.prototype.getBBox=function(){var y,x,b=(y=this.title)===null||y===void 0?void 0:y.node(),z=(x=this.items)===null||x===void 0?void 0:x.node();return!b||!z?E.prototype.getBBox.call(this):FG(b,z)},a.prototype.render=function(y,x){var b=this.attributes,z=b.width,ee=b.height,re=b.x,ae=re===void 0?0:re,oe=b.y,de=oe===void 0?0:oe,ge=b.classNamePrefix,ye=b.render,De=Ji(x),ke=x.className||"legend-category";ge?x.attr("className","".concat(ke," ").concat(ge,"legend")):x.className||x.attr("className","legend-category"),x.style.transform="translate(".concat(ae,", ").concat(de,")"),ye?this.renderCustom(De):(this.renderTitle(De,z,ee),this.renderItems(De,this.availableSpace),this.adjustLayout())},a}(pu);function V1(E){const{width:a,height:y,renderer:x}=E,b=kH(E),z=new ZA({width:a,height:y,container:b,renderer:x||new mm});return[b,z]}function kH(E){var a;const{container:y,className:x,graphCanvas:b}=E;if(y)return typeof y=="string"?document.getElementById(y):y;const z=iv(x,!1),{width:ee,height:re,containerStyle:ae}=E,[oe,de]=_H(E);return Object.assign(z.style,Object.assign({position:"absolute",left:oe+"px",top:de+"px",width:ee+"px",height:re+"px"},ae)),(a=b.getContainer())===null||a===void 0||a.appendChild(z),z}function _H(E){const{width:a,height:y,placement:x,graphCanvas:b}=E,[z,ee]=b.getSize(),[re,ae]=t5(x);return[re*(z-a),ae*(ee-y)]}var zH=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b<x.length;b++)a.indexOf(x[b])<0&&Object.prototype.propertyIsEnumerable.call(E,x[b])&&(y[x[b]]=E[x[b]]);return y};class K1 extends oc{constructor(a,y){super(a,Object.assign({},K1.defaultOptions,y)),this.typePrefix="__data__",this.draw=!1,this.fieldMap={node:new Map,edge:new Map,combo:new Map},this.selectedItems=[],this.bindEvents=()=>{const{graph:x}=this.context;x.on(hi.AFTER_DRAW,this.createElement)},this.changeState=(x,b)=>{const{graph:z}=this.context,{typePrefix:ee}=this,re=pc(x,[ee,"id"]),ae=pc(x,[ee,"style","labelText"]),[oe]=re.split("__"),de=this.fieldMap[oe].get(ae)||[];z.setElementState(Object.fromEntries(de==null?void 0:de.map(ge=>[ge,b])))},this.click=x=>{if(this.options.trigger==="hover")return;const b=pc(x,[this.typePrefix,"id"]);this.selectedItems.includes(b)?(this.selectedItems=this.selectedItems.filter(z=>z!==b),this.changeState(x,[])):(this.selectedItems.push(b),this.changeState(x,"selected"))},this.mouseleave=x=>{this.options.trigger!=="click"&&(this.selectedItems=[],this.changeState(x,[]))},this.mouseenter=x=>{if(this.options.trigger==="click")return;const b=pc(x,[this.typePrefix,"id"]);this.selectedItems.includes(b)?this.selectedItems=this.selectedItems.filter(z=>z!==b):(this.selectedItems.push(b),this.changeState(x,"active"))},this.setFieldMap=(x,b,z)=>{if(!x)return;const ee=this.fieldMap[z];if(ee)if(!ee.has(x))ee.set(x,[b]);else{const re=ee.get(x);re&&(re.push(b),ee.set(x,re))}},this.getEvents=()=>({mouseenter:this.mouseenter,mouseleave:this.mouseleave,click:this.click}),this.getMarkerData=(x,b)=>{if(!x)return[];const{model:z,element:ee}=this.context,{nodes:re,edges:ae,combos:oe}=z.getData(),de={},ge=We=>Xi(x)?x(We):x,ye={node:"circle",edge:"line",combo:"rect"},De={circle:"circle",ellipse:"circle",image:"bowtie",rect:"square",star:"cross",triangle:"triangle",diamond:"diamond",cubic:"dot",line:"hyphen",polyline:"hyphen",quadratic:"hv","cubic-horizontal":"hyphen","cubic-vertical":"line"},ke=(We,Ve)=>ee==null?void 0:ee.getElementComputedStyle(We,Ve),ze=(We,Ve)=>{We.forEach(Ze=>{const{id:Ye}=Ze,et=pc(Ze,["data",ge(Ze)]),st=(ee==null?void 0:ee.getElementType(Ve,Ze))||"circle",ht=ke(Ve,Ze),mt=(Ve==="edge"?ht==null?void 0:ht.stroke:ht==null?void 0:ht.fill)||"#1783ff";Ye&&et&&et.replace(/\s+/g,"")&&(this.setFieldMap(et,Ye,Ve),de[et]||(de[et]={id:`${Ve}__${Ye}`,label:et,marker:De[st]||ye[Ve],elementType:Ve,lineWidth:1,stroke:mt,fill:mt}))})};switch(b){case"node":ze(re,"node");break;case"edge":ze(ae,"edge");break;case"combo":ze(oe,"combo");break;default:return[]}return Object.values(de)},this.createElement=()=>{if(this.draw){this.updateElement();return}const x=this.options,{width:b,height:z,nodeField:ee,edgeField:re,comboField:ae,trigger:oe,position:de,container:ge,containerStyle:ye,className:De}=x,ke=zH(x,["width","height","nodeField","edgeField","comboField","trigger","position","container","containerStyle","className"]),ze=this.getMarkerData(ee,"node"),We=this.getMarkerData(re,"edge"),Ve=this.getMarkerData(ae,"combo"),Ze=[...ze,...Ve,...We],Ye=Object.assign({width:b,height:z,data:Ze,itemMarkerLineWidth:({lineWidth:ht})=>ht,itemMarker:({marker:ht})=>ht,itemMarkerStroke:({stroke:ht})=>ht,itemMarkerFill:({fill:ht})=>ht,gridCol:ze.length},ke,this.getEvents()),et=new FH({className:"legend",style:Ye});this.category=et,this.upsertCanvas().appendChild(et),this.draw=!0},this.bindEvents()}update(a){super.update(a),this.clear(),this.createElement()}clear(){var a,y;(a=this.canvas)===null||a===void 0||a.destroy(),(y=this.container)===null||y===void 0||y.remove(),this.canvas=void 0,this.container=void 0,this.draw=!1}updateElement(){this.category&&this.category.update({itemMarkerOpacity:({id:a})=>!this.selectedItems.length||this.selectedItems.includes(a)?1:.5,itemLabelOpacity:({id:a})=>!this.selectedItems.length||this.selectedItems.includes(a)?1:.5})}upsertCanvas(){if(this.canvas)return this.canvas;const a=this.context.canvas,[y,x]=a.getSize(),{width:b=y,height:z=x,position:ee,container:re,containerStyle:ae,className:oe}=this.options,[de,ge]=V1({width:b,height:z,graphCanvas:a,container:re,containerStyle:ae,placement:ee,className:"legend"});return this.container=de,oe&&de.classList.add(oe),this.canvas=ge,this.canvas}destroy(){this.clear(),this.context.graph.off(hi.AFTER_DRAW,this.createElement),super.destroy()}}K1.defaultOptions={position:"bottom",trigger:"hover",orientation:"horizontal",layout:"flex",itemSpacing:4,rowPadding:10,colPadding:10,itemMarkerSize:16,itemLabelFontSize:16,width:240,height:160};class Z1 extends oc{constructor(a,y){super(a,Object.assign({},Z1.defaultOptions,y)),this.onDraw=x=>{var b;!((b=x==null?void 0:x.data)===null||b===void 0)&&b.render||this.onRender()},this.landmarkMap=new Map,this.mask=null,this.isMaskDragging=!1,this.onMaskDragStart=x=>{this.mask&&(this.isMaskDragging=!0,this.mask.setPointerCapture(x.pointerId),this.mask.addEventListener("pointermove",this.onMaskDrag),this.mask.addEventListener("pointerup",this.onMaskDragEnd),this.mask.addEventListener("pointercancel",this.onMaskDragEnd))},this.onMaskDrag=x=>{if(!this.mask||!this.isMaskDragging)return;const{size:[b,z]}=this.options,{movementX:ee,movementY:re}=x,{left:ae,top:oe,width:de,height:ge}=this.mask.style,[,,ye,De]=this.maskBBox;let ke=parseInt(ae)+ee,ze=parseInt(oe)+re,We=parseInt(de),Ve=parseInt(ge);ke<0&&(ke=0),ze<0&&(ze=0),ke+We>b&&(ke=fg(b-We,0)),ze+Ve>z&&(ze=fg(z-Ve,0)),We<ye&&(ee>0?(ke=fg(ke-ee,0),We=dg(We+ee,b)):ee<0&&(We=dg(We-ee,b))),Ve<De&&(re>0?(ze=fg(ze-re,0),Ve=dg(Ve+re,z)):re<0&&(Ve=dg(Ve-re,z))),Object.assign(this.mask.style,{left:ke+"px",top:ze+"px",width:We+"px",height:Ve+"px"});const Ze=parseInt(ae)-ke,Ye=parseInt(oe)-ze;if(Ze===0&&Ye===0)return;const et=this.context.canvas.getCamera().getZoom(),st=this.canvas.getCamera().getZoom(),ht=et/st;this.context.graph.translateBy([Ze*ht,Ye*ht],!1)},this.onMaskDragEnd=x=>{this.mask&&(this.isMaskDragging=!1,this.mask.releasePointerCapture(x.pointerId),this.mask.removeEventListener("pointermove",this.onMaskDrag),this.mask.removeEventListener("pointerup",this.onMaskDragEnd),this.mask.removeEventListener("pointercancel",this.onMaskDragEnd))},this.onTransform=lw(()=>{this.isMaskDragging||(this.updateMask(),this.setCamera())},32,{leading:!0}),this.setOnRender(),this.bindEvents()}update(a){this.unbindEvents(),super.update(a),"delay"in a&&this.setOnRender(),this.bindEvents()}setOnRender(){this.onRender=xm(()=>{this.renderMinimap(),this.renderMask()},this.options.delay)}bindEvents(){const{graph:a}=this.context;a.on(hi.AFTER_DRAW,this.onDraw),a.on(hi.AFTER_RENDER,this.onRender),a.on(hi.AFTER_ANIMATE,this.onRender),a.on(hi.AFTER_TRANSFORM,this.onTransform)}unbindEvents(){const{graph:a}=this.context;a.off(hi.AFTER_DRAW,this.onDraw),a.off(hi.AFTER_RENDER,this.onRender),a.off(hi.AFTER_ANIMATE,this.onRender),a.off(hi.AFTER_TRANSFORM,this.onTransform)}renderMinimap(){const a=this.getElements(),y=this.initCanvas();this.setShapes(y,a)}getElements(){const{filter:a}=this.options,{model:y,element:x}=this.context,b=y.getData(),z={nodes:b.nodes.filter(oe=>x==null?void 0:x.getElement(Br(oe))),edges:b.edges.filter(oe=>{const de=x==null?void 0:x.getElement(Br(oe));return de&&rM(de)}),combos:b.combos.filter(oe=>x==null?void 0:x.getElement(Br(oe)))};if(!a)return z;const{nodes:ee,edges:re,combos:ae}=z;return{nodes:ee.filter(oe=>a(Br(oe),"node")),edges:re.filter(oe=>a(Br(oe),"edge")),combos:ae.filter(oe=>a(Br(oe),"combo"))}}setShapes(a,y){const{nodes:x,edges:b,combos:z}=y,{shape:ee}=this.options,{element:re}=this.context,ae=(oe,de)=>{const ge=Br(oe),ye=re==null?void 0:re.getElement(ge);if(!ye)return;const De=ye.getShape("key");let ke;if(typeof ee=="string"){const ze=ee;ke=ye.getShape(ze).cloneNode()}else{const ze=ee(ge,de,ye);ze===ye?ke=ze.cloneNode(!0):ke=ze}ke.setPosition(De.getPosition()),ye.style.zIndex&&(ke.style.zIndex=ye.style.zIndex),ke.id=ye.id,a.appendChild(ke)};a.removeChildren(),b.forEach(oe=>ae(oe,"edge")),z.forEach(oe=>ae(oe,"combo")),x.forEach(oe=>ae(oe,"node"))}initCanvas(){const{renderer:a,size:[y,x]}=this.options;if(this.canvas){const{width:b,height:z}=this.canvas.getConfig();(y!==b||x!==z)&&this.canvas.resize(y,x),a&&this.canvas.setRenderer(a)}else{const{className:b,position:z,container:ee,containerStyle:re}=this.options,[ae,oe]=V1({renderer:a,width:y,height:x,placement:z,className:"minimap",container:ee,containerStyle:re,graphCanvas:this.context.canvas});b&&ae.classList.add(b),this.container=ae,this.canvas=oe}return this.setCamera(),this.canvas}createLandmark(a,y,x){const b=`${a.join(",")}-${y.join(",")}-${x}`;if(this.landmarkMap.has(b))return this.landmarkMap.get(b);const ee=this.canvas.getCamera().createLandmark(b,{position:a,focalPoint:y,zoom:x});return this.landmarkMap.set(b,ee),ee}setCamera(){var a;const{canvas:y}=this.context,x=(a=this.canvas)===null||a===void 0?void 0:a.getCamera();if(!x)return;const{size:[b,z],padding:ee}=this.options,[re,ae,oe,de]=Md(ee),{min:ge,max:ye,center:De}=y.getBounds("elements"),ke=ye[0]-ge[0],ze=ye[1]-ge[1],We=b-de-ae,Ve=z-re-oe,Ze=We/ke,Ye=Ve/ze,et=Math.min(Ze,Ye),st=this.createLandmark(De,De,et);x.gotoLandmark(st,0)}get maskBBox(){const{canvas:a}=this.context,y=a.getSize(),x=a.getCanvasByViewport([0,0]),b=a.getCanvasByViewport(y),z=this.canvas.canvas2Viewport(Sf(x)),ee=this.canvas.canvas2Viewport(Sf(b)),re=ee.x-z.x,ae=ee.y-z.y;return[z.x,z.y,re,ae]}calculateMaskBBox(){const{size:[a,y]}=this.options;let[x,b,z,ee]=this.maskBBox;return x<0&&(z=dg(z+x,a),x=0),b<0&&(ee=dg(ee+b,y),b=0),x+z>a&&(z=fg(a-x,0)),b+ee>y&&(ee=fg(y-b,0)),[dg(x,a),dg(b,y),fg(z,0),fg(ee,0)]}renderMask(){const{maskStyle:a}=this.options;this.mask||(this.mask=document.createElement("div"),this.mask.addEventListener("pointerdown",this.onMaskDragStart),this.mask.draggable=!0,this.mask.addEventListener("dragstart",y=>y.preventDefault&&y.preventDefault())),this.container.appendChild(this.mask),Object.assign(this.mask.style,Object.assign(Object.assign({},a),{cursor:"move",position:"absolute",pointerEvents:"auto"})),this.updateMask()}updateMask(){if(!this.mask)return;const[a,y,x,b]=this.calculateMaskBBox();Object.assign(this.mask.style,{top:y+"px",left:a+"px",width:x+"px",height:b+"px"})}destroy(){var a,y,x;this.unbindEvents(),(a=this.canvas)===null||a===void 0||a.destroy(),(y=this.mask)===null||y===void 0||y.remove(),(x=this.container)===null||x===void 0||x.remove(),super.destroy()}}Z1.defaultOptions={size:[240,160],shape:"key",padding:10,position:"right-bottom",maskStyle:{border:"1px solid #ddd",background:"rgba(0, 0, 0, 0.1)"},containerStyle:{border:"1px solid #ddd",background:"#fff"},delay:128};const dg=(E,a)=>Math.min(E,a),fg=(E,a)=>Math.max(E,a);var US=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(de){try{oe(x.next(de))}catch(ge){ee(ge)}}function ae(de){try{oe(x.throw(de))}catch(ge){ee(ge)}}function oe(de){de.done?z(de.value):b(de.value).then(re,ae)}oe((x=x.apply(E,a||[])).next())})};const WS={x1:0,y1:0,x2:0,y2:0,visibility:"hidden"};class Q1 extends oc{constructor(a,y){super(a,Object.assign({},Q1.defaultOptions,y)),this.initSnapline=()=>{const x=this.context.canvas.getLayer("transient");this.horizontalLine||(this.horizontalLine=x.appendChild(new Zg({style:Object.assign(Object.assign({},WS),this.options.horizontalLineStyle)}))),this.verticalLine||(this.verticalLine=x.appendChild(new Zg({style:Object.assign(Object.assign({},WS),this.options.verticalLineStyle)})))},this.isHorizontalSticking=!1,this.isVerticalSticking=!1,this.enableStick=!0,this.autoSnapToLine=(x,b,z)=>US(this,void 0,void 0,function*(){const{verticalX:ee,horizontalY:re}=z,{tolerance:ae}=this.options,{min:[oe,de],max:[ge,ye],center:[De,ke]}=b;let ze=0,We=0;ee!==null&&(Bc(ge,ee)<ae&&(ze=ee-ge),Bc(oe,ee)<ae&&(ze=ee-oe),Bc(De,ee)<ae&&(ze=ee-De),ze!==0&&(this.isVerticalSticking=!0)),re!==null&&(Bc(ye,re)<ae&&(We=re-ye),Bc(de,re)<ae&&(We=re-de),Bc(ke,re)<ae&&(We=re-ke),We!==0&&(this.isHorizontalSticking=!0)),(ze!==0||We!==0)&&(yield this.context.graph.translateElementBy({[x]:[ze,We]},!1))}),this.enableSnap=x=>{const{target:b}=x,z=.5;if(this.isHorizontalSticking||this.isVerticalSticking){const[ee,re]=this.getDelta(x);if(this.isHorizontalSticking&&this.isVerticalSticking&&Math.abs(ee)<=z&&Math.abs(re)<=z)return this.context.graph.translateElementBy({[b.id]:[-ee,-re]},!1),!1;if(this.isHorizontalSticking&&Math.abs(re)<=z)return this.context.graph.translateElementBy({[b.id]:[0,-re]},!1),!1;if(this.isVerticalSticking&&Math.abs(ee)<=z)return this.context.graph.translateElementBy({[b.id]:[-ee,0]},!1),!1;this.isHorizontalSticking=!1,this.isVerticalSticking=!1,this.enableStick=!1,setTimeout(()=>{this.enableStick=!0},200)}return this.enableStick},this.calcSnaplineMetadata=(x,b)=>{const{tolerance:z,shape:ee}=this.options,{min:[re,ae],max:[oe,de],center:[ge,ye]}=b;let De=null,ke=null,ze=null,We=null,Ve=null,Ze=null;return this.getNodes().some(Ye=>{if(Nu(x.id,Ye.id))return!1;const et=v3(Ye,ee).getRenderBounds(),{min:[st,ht],max:[mt,dt],center:[Ot,_t]}=et;return De===null&&(Bc(Ot,ge)<z?De=Ot:Bc(st,re)<z||Bc(st,oe)<z?De=st:(Bc(mt,oe)<z||Bc(mt,re)<z)&&(De=mt),De!==null&&(ke=Math.min(ht,ae),ze=Math.max(dt,de))),We===null&&(Bc(_t,ye)<z?We=_t:Bc(ht,ae)<z||Bc(ht,de)<z?We=ht:(Bc(dt,de)<z||Bc(dt,ae)<z)&&(We=dt),We!==null&&(Ve=Math.min(st,re),Ze=Math.max(mt,oe))),De!==null&&We!==null}),{verticalX:De,verticalMinY:ke,verticalMaxY:ze,horizontalY:We,horizontalMinX:Ve,horizontalMaxX:Ze}},this.onDragStart=()=>{this.initSnapline()},this.onDrag=x=>US(this,void 0,void 0,function*(){const{target:b}=x;if(this.options.autoSnap&&!this.enableSnap(x))return;const z=v3(b,this.options.shape).getRenderBounds(),ee=this.calcSnaplineMetadata(b,z);this.hideSnapline(),(ee.verticalX!==null||ee.horizontalY!==null)&&this.updateSnapline(ee),this.options.autoSnap&&(yield this.autoSnapToLine(b.id,z,ee))}),this.onDragEnd=()=>{this.hideSnapline()},this.bindEvents()}getNodes(){var a;const{filter:y}=this.options,b=(((a=this.context.element)===null||a===void 0?void 0:a.getNodes())||[]).filter(z=>{var ee;return rM(z)&&((ee=this.context.viewport)===null||ee===void 0?void 0:ee.isInViewport(z.getRenderBounds()))});return y?b.filter(z=>y(z)):b}hideSnapline(){this.horizontalLine.style.visibility="hidden",this.verticalLine.style.visibility="hidden"}getLineWidth(a){const{lineWidth:y}=this.options[`${a}LineStyle`];return+(y||WS.lineWidth||1)/this.context.graph.getZoom()}updateSnapline(a){const{verticalX:y,verticalMinY:x,verticalMaxY:b,horizontalY:z,horizontalMinX:ee,horizontalMaxX:re}=a,[ae,oe]=this.context.canvas.getSize(),{offset:de}=this.options;z!==null?Object.assign(this.horizontalLine.style,{x1:de===1/0?0:ee-de,y1:z,x2:de===1/0?ae:re+de,y2:z,visibility:"visible",lineWidth:this.getLineWidth("horizontal")}):this.horizontalLine.style.visibility="hidden",y!==null?Object.assign(this.verticalLine.style,{x1:y,y1:de===1/0?0:x-de,x2:y,y2:de===1/0?oe:b+de,visibility:"visible",lineWidth:this.getLineWidth("vertical")}):this.verticalLine.style.visibility="hidden"}getDelta(a){const y=this.context.graph.getZoom();return xf([a.dx,a.dy],y)}bindEvents(){return US(this,void 0,void 0,function*(){const{graph:a}=this.context;a.on(Yd.DRAG_START,this.onDragStart),a.on(Yd.DRAG,this.onDrag),a.on(Yd.DRAG_END,this.onDragEnd)})}unbindEvents(){const{graph:a}=this.context;a.off(Yd.DRAG_START,this.onDragStart),a.off(Yd.DRAG,this.onDrag),a.off(Yd.DRAG_END,this.onDragEnd)}destroyElements(){var a,y;(a=this.horizontalLine)===null||a===void 0||a.destroy(),(y=this.verticalLine)===null||y===void 0||y.destroy()}destroy(){this.destroyElements(),this.unbindEvents(),super.destroy()}}Q1.defaultOptions={tolerance:5,offset:20,autoSnap:!0,shape:"key",verticalLineStyle:{stroke:"#1783FF"},horizontalLineStyle:{stroke:"#1783FF"},filter:()=>!0};const Bc=(E,a)=>Math.abs(E-a),v3=(E,a)=>typeof a=="function"?a(E):E.getShape(a);var m3=null,jH=null;function Y1(E){return E instanceof Date?E:new Date(E)}function UH(E){for(var a=__read(E,2),y=a[0],x=a[1],b=m3.indexOf(y),z=m3.indexOf(x),ee="",re=b;re<=z;re+=1)if(ee+=jH[re],re<z){var ae="-";re===2?ae=" ":re>2&&(ae=":"),ee+=ae}return ee}function Kc(E,a){var y={YYYY:E.getFullYear(),MM:E.getMonth()+1,DD:E.getDate(),HH:E.getHours(),mm:E.getMinutes(),ss:E.getSeconds()},x=a;return Object.keys(y).forEach(function(b){var z=y[b];x=x.replace(b,b==="YYYY"?"".concat(z):"".concat(z).padStart(2,"0"))}),x}function tre(E,a){return Y1(E).getTime()-Y1(a).getTime()}function nre(E,a){var y=__read([Y1(E),Y1(a)],2),x=y[0],b=y[1];return x.getFullYear()!==b.getFullYear()?"year":x.getMonth()!==b.getMonth()?"month":x.getDay()!==b.getDay()?"day":x.getHours()!==b.getHours()?"hour":x.getMinutes()!==b.getMinutes()?"minute":"second"}function rre(E,a){var y=new Date(E),x={year:function(b){b.setMonth(0),b.setHours(0,0,0,0)},month:function(b){b.setDate(1),b.setHours(0,0,0,0)},day:function(b){return b.setHours(0,0,0,0)},hour:function(b){return b.setMinutes(0,0,0)},minute:function(b){return b.setSeconds(0,0)},second:function(b){return b.setMilliseconds(0)}};return x[a](y),Kc(y,UH(["year",a]))}function WH(E,a){if(E.length<=a)return E;for(var y=Math.floor(E.length/a),x=[],b=0;b<E.length;b+=y)x.push(E[b]);return x}var bl={gridGroup:"grid-group",mainGroup:"main-group",lineGroup:"line-group",tickGroup:"tick-group",labelGroup:"label-group",titleGroup:"title-group",grid:"grid",line:"line",lineFirst:"line-first",lineSecond:"line-second",tick:"tick",tickItem:"tick-item",label:"label",labelItem:"label-item",title:"title"},GS={data:[],animate:{enter:!1,update:{duration:100,easing:"ease-in-out-sine",fill:"both"},exit:{duration:100,fill:"both"}},showArrow:!0,showGrid:!0,showLabel:!0,showLine:!0,showTick:!0,showTitle:!0,showTrunc:!1,dataThreshold:100,lineLineWidth:1,lineStroke:"black",crossPadding:10,titleFill:"black",titleFontSize:12,titlePosition:"lb",titleSpacing:0,titleTextAlign:"center",titleTextBaseline:"middle",lineArrow:function(){return new Cd({style:{d:[["M",10,10],["L",-10,0],["L",10,-10],["L",0,0],["L",10,10],["Z"]],fill:"black",transformOrigin:"center"}})},labelAlign:"parallel",labelDirection:"positive",labelFontSize:12,labelSpacing:0,gridConnect:"line",gridControlAngles:[],gridDirection:"positive",gridLength:0,gridType:"segment",lineArrowOffset:15,lineArrowSize:10,tickDirection:"positive",tickLength:5,tickLineWidth:1,tickStroke:"black",labelOverlap:[]},are=vc({},GS,{style:{type:"arc"}}),ire=vc({},GS,{style:{}}),$o=wf({mainGroup:bl.mainGroup,gridGroup:bl.gridGroup,grid:bl.grid,lineGroup:bl.lineGroup,line:bl.line,tickGroup:bl.tickGroup,tick:bl.tick,tickItem:bl.tickItem,labelGroup:bl.labelGroup,label:bl.label,labelItem:bl.labelItem,titleGroup:bl.titleGroup,title:bl.title,lineFirst:bl.lineFirst,lineSecond:bl.lineSecond},"axis");function Sh(E,a){return[E[0]*a,E[1]*a]}function Bm(E,a){return[E[0]+a[0],E[1]+a[1]]}function HS(E,a){return[E[0]-a[0],E[1]-a[1]]}function p0(E,a){return[Math.min(E[0],a[0]),Math.min(E[1],a[1])]}function y0(E,a){return[Math.max(E[0],a[0]),Math.max(E[1],a[1])]}function Nm(E,a){return Math.sqrt(Math.pow(E[0]-a[0],2)+Math.pow(E[1]-a[1],2))}function p3(E){if(E[0]===0&&E[1]===0)return[0,0];var a=Math.sqrt(Math.pow(E[0],2)+Math.pow(E[1],2));return[E[0]/a,E[1]/a]}function ore(E,a,y){var x=__read(E,2),b=x[0],z=x[1],ee=__read(a,2),re=ee[0],ae=ee[1],oe=b-re,de=z-ae,ge=Math.sin(y),ye=Math.cos(y);return[oe*ye-de*ge+re,oe*ge+de*ye+ae]}function GH(E,a){return a?[E[1],-E[0]]:[-E[1],E[0]]}function lv(E){return E*Math.PI/180}function y3(E){return Number((E*180/Math.PI).toPrecision(5))}function X1(E,a){return E.style.opacity||(E.style.opacity=1),Mf(E,{opacity:0},a)}var HH=["$el","cx","cy","d","dx","dy","fill","fillOpacity","filter","fontFamily","fontSize","fontStyle","fontVariant","fontWeight","height","img","increasedLineWidthForHitTesting","innerHTML","isBillboard","billboardRotation","isSizeAttenuation","isClosed","isOverflowing","leading","letterSpacing","lineDash","lineHeight","lineWidth","markerEnd","markerEndOffset","markerMid","markerStart","markerStartOffset","maxLines","metrics","miterLimit","offsetX","offsetY","opacity","path","points","r","radius","rx","ry","shadowColor","src","stroke","strokeOpacity","text","textAlign","textBaseline","textDecorationColor","textDecorationLine","textDecorationStyle","textOverflow","textPath","textPathSide","textPathStartOffset","transform","transformOrigin","visibility","width","wordWrap","wordWrapWidth","x","x1","x2","y","y1","y2","z1","z2","zIndex"];function VH(E){return HH.includes(E)}function E3(E){var a={};for(var y in E)VH(y)&&(a[y]=E[y]);return a}var uv=wf({lineGroup:"line-group",line:"line",regionGroup:"region-group",region:"region"},"grid");function A3(E){return E.reduce(function(a,y,x){return a.push((0,Nt.ev)([x===0?"M":"L"],(0,Nt.CR)(y),!1)),a},[])}function KH(E,a,y){var x=a.connect,b=x===void 0?"line":x,z=a.center;if(b==="line")return A3(E);if(!z)return[];var ee=Nm(E[0],z),re=y?0:1;return E.reduce(function(ae,oe,de){return de===0?ae.push((0,Nt.ev)(["M"],(0,Nt.CR)(oe),!1)):ae.push((0,Nt.ev)(["A",ee,ee,0,0,re],(0,Nt.CR)(oe),!1)),ae},[])}function VS(E,a,y){return a.type==="surround"?KH(E,a,y):A3(E)}function ZH(E,a,y){var x=y.type,b=y.connect,z=y.center,ee=y.closed,re=ee?[["Z"]]:[],ae=(0,Nt.CR)([VS(E,y),VS(a.slice().reverse(),y,!0)],2),oe=ae[0],de=ae[1],ge=(0,Nt.CR)([E[0],a.slice(-1)[0]],2),ye=ge[0],De=ge[1],ke=function(Ze,Ye){return[oe,Ze,de,Ye,re].flat()};if(b==="line"||x==="surround")return ke([(0,Nt.ev)(["L"],(0,Nt.CR)(De),!1)],[(0,Nt.ev)(["L"],(0,Nt.CR)(ye),!1)]);if(!z)throw new Error("Arc grid need to specified center");var ze=(0,Nt.CR)([Nm(De,z),Nm(ye,z)],2),We=ze[0],Ve=ze[1];return ke([(0,Nt.ev)(["A",We,We,0,0,1],(0,Nt.CR)(De),!1),(0,Nt.ev)(["L"],(0,Nt.CR)(De),!1)],[(0,Nt.ev)(["A",Ve,Ve,0,0,0],(0,Nt.CR)(ye),!1),(0,Nt.ev)(["L"],(0,Nt.CR)(ye),!1)])}function QH(E,a,y,x){var b=y.animate,z=y.isBillboard,ee=a.map(function(re,ae){return{id:re.id||"grid-line-".concat(ae),d:VS(re.points,y)}});return E.selectAll(uv.line.class).data(ee,function(re){return re.id}).join(function(re){return re.append("path").each(function(ae,oe){var de=dd(E3((0,Nt.pi)({d:ae.d},x)),[ae,oe,ee]);this.attr((0,Nt.pi)({class:uv.line.name,stroke:"#D9D9D9",lineWidth:1,lineDash:[4,4],isBillboard:z},de))})},function(re){return re.transition(function(ae,oe){var de=dd(E3((0,Nt.pi)({d:ae.d},x)),[ae,oe,ee]);return Mf(this,de,b.update)})},function(re){return re.transition(function(){var ae=this,oe=X1(this,b.exit);return sv(oe,function(){return ae.remove()}),oe})}).transitions()}function YH(E,a,y){var x=y.animate,b=y.connect,z=y.areaFill;if(a.length<2||!z||!b)return[];for(var ee=Array.isArray(z)?z:[z,"transparent"],re=function(ke){return ee[ke%ee.length]},ae=[],oe=0;oe<a.length-1;oe++){var de=(0,Nt.CR)([a[oe].points,a[oe+1].points],2),ge=de[0],ye=de[1],De=ZH(ge,ye,y);ae.push({d:De,fill:re(oe)})}return E.selectAll(uv.region.class).data(ae,function(ke,ze){return ze}).join(function(ke){return ke.append("path").each(function(ze,We){var Ve=dd(ze,[ze,We,ae]);this.attr(Ve)}).attr("className",uv.region.name)},function(ke){return ke.transition(function(ze,We){var Ve=dd(ze,[ze,We,ae]);return Mf(this,Ve,x.update)})},function(ke){return ke.transition(function(){var ze=this,We=X1(this,x.exit);return sv(We,function(){return ze.remove()}),We})}).transitions()}function XH(E){var a=E.data,y=a===void 0?[]:a,x=E.closed;return x?y.map(function(b){var z=b.points,ee=(0,Nt.CR)(z,1),re=ee[0];return(0,Nt.pi)((0,Nt.pi)({},b),{points:(0,Nt.ev)((0,Nt.ev)([],(0,Nt.CR)(z),!1),[re],!1)})}):y}var JH=function(E){(0,Nt.ZT)(a,E);function a(){return E!==null&&E.apply(this,arguments)||this}return a.prototype.render=function(y,x){var b=y.type,z=y.center,ee=y.areaFill,re=y.closed,ae=(0,Nt._T)(y,["type","center","areaFill","closed"]),oe=XH(y),de=Ji(x).maybeAppendByClassName(uv.lineGroup,"g"),ge=Ji(x).maybeAppendByClassName(uv.regionGroup,"g"),ye=QH(de,oe,y,ae),De=YH(ge,oe,y);return(0,Nt.ev)((0,Nt.ev)([],(0,Nt.CR)(ye),!1),(0,Nt.CR)(De),!1)},a}(pu),qH=function(E,a){return function(y){return E*(1-y)+a*y}};function $H(E,a){var y=a?a.length:0,x=E?Math.min(y,E.length):0;return function(b){var z=new Array(x),ee=new Array(y),re=0;for(re=0;re<x;++re)z[re]=KS(E[re],a[re]);for(;re<y;++re)ee[re]=a[re];for(re=0;re<x;++re)ee[re]=z[re](b);return ee}}function eV(E,a){E===void 0&&(E={}),a===void 0&&(a={});var y={},x={};return Object.entries(a).forEach(function(b){var z=(0,Nt.CR)(b,2),ee=z[0],re=z[1];ee in E?y[ee]=KS(E[ee],re):x[ee]=re}),function(b){return Object.entries(y).forEach(function(z){var ee=(0,Nt.CR)(z,2),re=ee[0],ae=ee[1];return x[re]=ae(b)}),x}}function KS(E,a){return typeof E=="number"&&typeof a=="number"?qH(E,a):Array.isArray(E)&&Array.isArray(a)?$H(E,a):typeof E=="object"&&typeof a=="object"?eV(E,a):function(y){return E}}function tV(E,a,y,x){if(!x)return E.attr("__keyframe_data__",y),null;var b=x.duration,z=b===void 0?0:b,ee=KS(a,y),re=Math.ceil(+z/16),ae=new Array(re).fill(0).map(function(oe,de,ge){return{__keyframe_data__:ee(de/(ge.length-1))}});return E.animate(ae,(0,Nt.pi)({fill:"both"},x))}function ZS(E,a){var y={},x=Array.isArray(a)?a:[a];for(var b in E)x.includes(b)||(y[b]=E[b]);return y}function x3(E,a){return Object.fromEntries(Object.entries(E).map(function(y){var x=(0,Nt.CR)(y,2),b=x[0],z=x[1];return[b,dd(z,a)]}))}function sre(E){if(E.type==="linear"){var a=E.startPos,y=E.endPos;return __spreadArray(__spreadArray([],__read(a),!1),__read(y),!1)}var x=E.startAngle,b=E.endAngle,z=E.center,ee=E.radius;return __spreadArray(__spreadArray([x,b],__read(z),!1),[ee],!1)}function QS(E,a){return a&&Xi(a)?E.filter(a):E}function S3(E,a){var y=a.startAngle,x=a.endAngle;return(x-y)*E+y}function J1(E,a){if(a.type==="linear"){var y=(0,Nt.CR)(a.startPos,2),x=y[0],b=y[1],z=(0,Nt.CR)(a.endPos,2),ee=z[0],re=z[1],ae=(0,Nt.CR)([ee-x,re-b],2),oe=ae[0],de=ae[1];return p3([oe,de])}var ge=lv(S3(E,a));return[-Math.sin(ge),Math.cos(ge)]}function YS(E,a,y){var x=J1(E,y);return GH(x,a!=="positive")}function cv(E,a){return YS(E,a.labelDirection,a)}function Rm(E,a,y){return y?"".concat(E," ").concat(y,"axis-").concat(a):E}function lre(E,a,y){var x=E.classNamePrefix,b=x===void 0?"":x;return Rm(a.name,y,b)}function Ld(E,a,y,x){return x&&E.attr("className",Rm(a.name,y,x)),E}function nV(E,a){var y=(0,Nt.CR)(a.startPos,2),x=y[0],b=y[1],z=(0,Nt.CR)(a.endPos,2),ee=z[0],re=z[1],ae=(0,Nt.CR)([ee-x,re-b],2),oe=ae[0],de=ae[1];return[x+oe*E,b+de*E]}function rV(E,a){var y=a.radius,x=(0,Nt.CR)(a.center,2),b=x[0],z=x[1],ee=lv(S3(E,a));return[b+y*Math.cos(ee),z+y*Math.sin(ee)]}function q1(E,a){return a.type==="linear"?nV(E,a):rV(E,a)}function XS(E){return J1(0,E)[1]===0}function b3(E){return J1(0,E)[0]===0}function C3(E,a){return a-E===360}function P3(E,a,y,x,b){var z=a-E,ee=(0,Nt.CR)([b,b],2),re=ee[0],ae=ee[1],oe=(0,Nt.CR)([lv(E),lv(a)],2),de=oe[0],ge=oe[1],ye=function(_t){return[y+b*Math.cos(_t),x+b*Math.sin(_t)]},De=(0,Nt.CR)(ye(de),2),ke=De[0],ze=De[1],We=(0,Nt.CR)(ye(ge),2),Ve=We[0],Ze=We[1];if(C3(E,a)){var Ye=(ge+de)/2,et=(0,Nt.CR)(ye(Ye),2),st=et[0],ht=et[1];return[["M",ke,ze],["A",re,ae,0,1,0,st,ht],["A",re,ae,0,1,0,Ve,Ze]]}var mt=z>180?1:0,dt=E>a?0:1,Ot=!1;return Ot?"M".concat(y,",").concat(x,",L").concat(ke,",").concat(ze,",A").concat(re,",").concat(ae,",0,").concat(mt,",").concat(dt,",").concat(Ve,",").concat(Ze,",L").concat(y,",").concat(x):"M".concat(ke,",").concat(ze,",A").concat(re,",").concat(ae,",0,").concat(mt,",").concat(dt,",").concat(Ve,",").concat(Ze)}function aV(E){var a=E.attributes,y=a.startAngle,x=a.endAngle,b=a.center,z=a.radius;return(0,Nt.ev)((0,Nt.ev)([y,x],(0,Nt.CR)(b),!1),[z],!1)}function iV(E,a,y,x){var b=a.startAngle,z=a.endAngle,ee=a.center,re=a.radius,ae=a.classNamePrefix;return E.selectAll($o.line.class).data([{d:P3.apply(void 0,(0,Nt.ev)((0,Nt.ev)([b,z],(0,Nt.CR)(ee),!1),[re],!1))}],function(oe,de){return de}).join(function(oe){var de=oe.append("path").attr("className",$o.line.name).styles(a).styles({d:function(ge){return ge.d}});return Ld(de,$o.line,bl.line,ae),de},function(oe){return oe.transition(function(){var de=this,ge=tV(this,aV(this),(0,Nt.ev)((0,Nt.ev)([b,z],(0,Nt.CR)(ee),!1),[re],!1),x.update);if(ge){var ye=function(){var De=pc(de.attributes,"__keyframe_data__");de.style.d=P3.apply(void 0,(0,Nt.ev)([],(0,Nt.CR)(De),!1))};ge.onframe=ye,ge.onfinish=ye}return ge}).styles(a)},function(oe){return oe.remove()}).styles(y).transitions()}function oV(E,a){var y=a.truncRange,x=a.truncShape,b=a.lineExtension}function sV(E,a,y){y===void 0&&(y=[0,0]);var x=(0,Nt.CR)([E,a,y],3),b=(0,Nt.CR)(x[0],2),z=b[0],ee=b[1],re=(0,Nt.CR)(x[1],2),ae=re[0],oe=re[1],de=(0,Nt.CR)(x[2],2),ge=de[0],ye=de[1],De=(0,Nt.CR)([ae-z,oe-ee],2),ke=De[0],ze=De[1],We=Math.sqrt(Math.pow(ke,2)+Math.pow(ze,2)),Ve=(0,Nt.CR)([-ge/We,ye/We],2),Ze=Ve[0],Ye=Ve[1];return[Ze*ke,Ze*ze,Ye*ke,Ye*ze]}function w3(E){var a=(0,Nt.CR)(E,2),y=(0,Nt.CR)(a[0],2),x=y[0],b=y[1],z=(0,Nt.CR)(a[1],2),ee=z[0],re=z[1];return{x1:x,y1:b,x2:ee,y2:re}}function lV(E,a,y,x){var b=a.showTrunc,z=a.startPos,ee=a.endPos,re=a.truncRange,ae=a.lineExtension,oe=a.classNamePrefix,de=(0,Nt.CR)([z,ee],2),ge=(0,Nt.CR)(de[0],2),ye=ge[0],De=ge[1],ke=(0,Nt.CR)(de[1],2),ze=ke[0],We=ke[1],Ve=(0,Nt.CR)(ae?sV(z,ee,ae):new Array(4).fill(0),4),Ze=Ve[0],Ye=Ve[1],et=Ve[2],st=Ve[3],ht=function(Cn){return E.selectAll($o.line.class).data(Cn,function(qn,pn){return pn}).join(function(qn){var pn=qn.append("line").styles(y).transition(function(lr){return Mf(this,w3(lr.line),!1)});return pn.attr("className",function(lr){if(!oe)return"".concat($o.line.name," ").concat(lr.className);var Jr=Rm($o.line.name,bl.line,oe);if(lr.className===$o.lineFirst.name){var na=Rm($o.lineFirst.name,bl.lineFirst,oe);return"".concat(Jr," ").concat(na)}if(lr.className===$o.lineSecond.name){var na=Rm($o.lineSecond.name,bl.lineSecond,oe);return"".concat(Jr," ").concat(na)}return Jr}),pn},function(qn){return qn.styles(y).transition(function(pn){var lr=pn.line;return Mf(this,w3(lr),x.update)})},function(qn){return qn.remove()}).transitions()};if(!b||!re)return ht([{line:[[ye+Ze,De+Ye],[ze+et,We+st]],className:$o.line.name}]);var mt=(0,Nt.CR)(re,2),dt=mt[0],Ot=mt[1],_t=ze-ye,wt=We-De,$t=(0,Nt.CR)([ye+_t*dt,De+wt*dt],2),gn=$t[0],Xt=$t[1],Tn=(0,Nt.CR)([ye+_t*Ot,De+wt*Ot],2),er=Tn[0],En=Tn[1],yn=ht([{line:[[ye+Ze,De+Ye],[gn,Xt]],className:$o.lineFirst.name},{line:[[er,En],[ze+et,We+st]],className:$o.lineSecond.name}]);return oV(E,a),yn}function uV(E,a,y,x){var b=y.showArrow,z=y.showTrunc,ee=y.lineArrow,re=y.lineArrowOffset,ae=y.lineArrowSize,oe;if(a==="arc"?oe=E.select($o.line.class):z?oe=E.select($o.lineSecond.class):oe=E.select($o.line.class),!b||!ee||y.type==="arc"&&C3(y.startAngle,y.endAngle)){var de=oe.node();de&&(de.style.markerEnd=void 0);return}var ge=xh(ee);ge.attr(x),FS(ge,ae,!0),oe.style("markerEnd",ge).style("markerEndOffset",-re)}function cV(E,a,y){var x=a.type,b,z=cs(a,"line");return x==="linear"?b=lV(E,a,ZS(z,"arrow"),y):b=iV(E,a,ZS(z,"arrow"),y),uV(E,x,a,z),b}function dV(E,a){return YS(E,a.gridDirection,a)}function M3(E){var a=E.type,y=E.gridCenter;return a==="linear"?y:y||E.center}function fV(E,a){var y=a.gridLength;return E.map(function(x,b){var z=x.value,ee=(0,Nt.CR)(q1(z,a),2),re=ee[0],ae=ee[1],oe=(0,Nt.CR)(Sh(dV(z,a),y),2),de=oe[0],ge=oe[1];return{id:b,points:[[re,ae],[re+de,ae+ge]]}})}function hV(E,a){var y=a.gridControlAngles,x=M3(a);if(!x)throw new Error("grid center is not provide");if(E.length<2)throw new Error("Invalid grid data");if(!y||y.length===0)throw new Error("Invalid gridControlAngles");var b=(0,Nt.CR)(x,2),z=b[0],ee=b[1];return E.map(function(re,ae){var oe=re.value,de=(0,Nt.CR)(q1(oe,a),2),ge=de[0],ye=de[1],De=(0,Nt.CR)([ge-z,ye-ee],2),ke=De[0],ze=De[1],We=[];return y.forEach(function(Ve){var Ze=lv(Ve),Ye=(0,Nt.CR)([Math.cos(Ze),Math.sin(Ze)],2),et=Ye[0],st=Ye[1],ht=ke*et-ze*st+z,mt=ke*st+ze*et+ee;We.push([ht,mt])}),{points:We,id:ae}})}function gV(E,a,y,x){var b=y.classNamePrefix,z=cs(y,"grid"),ee=z.type,re=z.areaFill,ae=M3(y),oe=QS(a,y.gridFilter),de=ee==="segment"?fV(oe,y):hV(oe,y),ge=(0,Nt.pi)((0,Nt.pi)({},z),{center:ae,areaFill:Xi(re)?oe.map(function(ye,De){return dd(re,[ye,De,oe])}):re,animate:x,data:de});return E.selectAll($o.grid.class).data([1]).join(function(ye){var De=ye.append(function(){return new JH({style:ge})}).attr("className",$o.grid.name);return Ld(De,$o.grid,bl.grid,b),De},function(ye){return ye.transition(function(){return this.update(ge)})},function(ye){return ye.remove()}).transitions()}function Ac(E,a,y,x,b){return x===void 0&&(x=!0),b===void 0&&(b=!1),x&&E===a||b&&E===y?!0:E>a&&E<y}var vV=function(E){var a=new DOMParser,y=a.parseFromString(E,"text/html"),x=y.body.firstElementChild;if(console.log(x==null?void 0:x.getClientRects(),11),!x)return 0;var b=x.getAttribute("style")||"",z=Object.fromEntries(b.split(";").map(function(We){return We.trim()}).filter(function(We){return We.includes(":")}).map(function(We){var Ve=(0,Nt.CR)(We.split(":").map(function(et){return et.trim()}),2),Ze=Ve[0],Ye=Ve[1];return[Ze.toLowerCase(),Ye]})),ee=function(We){if(!We)return 0;var Ve=We.match(/([\d.]+)px/);return Ve?parseFloat(Ve[1]):0};if(z.height)return ee(z.height);var re=ee(z["font-size"])||16,ae=z["line-height"],oe;!ae||ae==="normal"?oe=1.2*re:ae.endsWith("px")?oe=ee(ae):/^[\d.]+$/.test(ae)?oe=parseFloat(ae)*re:oe=re;var de=ee(z["padding-top"]),ge=ee(z["padding-bottom"]);if(z.padding){var ye=z.padding.split(/\s+/).map(ee);ye.length===1||ye.length===2?(de=ye[0],ge=ye[0]):(ye.length===3||ye.length===4)&&(de=ye[0],ge=ye[2])}var De=ee(z["border-top-width"]),ke=ee(z["border-bottom-width"]);if(z.border){var ze=z.border.match(/([\d.]+)px/);ze&&(De=parseFloat(ze[1]),ke=parseFloat(ze[1]))}if(z["border-width"]){var ye=z["border-width"].split(/\s+/).map(ee);ye.length===1||ye.length===2?(De=ye[0],ke=ye[0]):(ye.length===3||ye.length===4)&&(De=ye[0],ke=ye[2])}return oe+de+ge+De+ke};function mV(E,a,y,x){y===void 0&&(y=2),x===void 0&&(x="top"),c3(E,{wordWrap:!0,wordWrapWidth:a,maxLines:y,textBaseline:x})}function pV(E,a,y){var x=E.getBBox(),b=x.width,z=x.height,ee=(0,Nt.CR)([a,y].map(function(oe,de){var ge;return oe.includes("%")?parseFloat(((ge=oe.match(/[+-]?([0-9]*[.])?[0-9]+/))===null||ge===void 0?void 0:ge[0])||"0")/100*(de===0?b:z):oe}),2),re=ee[0],ae=ee[1];return[re,ae]}function D3(E,a){if(a)try{var y=/translate\(([+-]*[\d]+[%]*),[ ]*([+-]*[\d]+[%]*)\)/g,x=a.replace(y,function(b,z,ee){return"translate(".concat(pV(E,z,ee),")")});E.attr("transform",x)}catch(b){}}var JS=function(){function E(a,y,x,b){this.set(a,y,x,b)}return Object.defineProperty(E.prototype,"left",{get:function(){return this.x1},enumerable:!1,configurable:!0}),Object.defineProperty(E.prototype,"top",{get:function(){return this.y1},enumerable:!1,configurable:!0}),Object.defineProperty(E.prototype,"right",{get:function(){return this.x2},enumerable:!1,configurable:!0}),Object.defineProperty(E.prototype,"bottom",{get:function(){return this.y2},enumerable:!1,configurable:!0}),Object.defineProperty(E.prototype,"width",{get:function(){return this.defined("x2")&&this.defined("x1")?this.x2-this.x1:void 0},enumerable:!1,configurable:!0}),Object.defineProperty(E.prototype,"height",{get:function(){return this.defined("y2")&&this.defined("y1")?this.y2-this.y1:void 0},enumerable:!1,configurable:!0}),E.prototype.rotatedPoints=function(a,y,x){var b=this,z=b.x1,ee=b.y1,re=b.x2,ae=b.y2,oe=Math.cos(a),de=Math.sin(a),ge=y-y*oe+x*de,ye=x-y*de-x*oe,De=[[oe*z-de*ae+ge,de*z+oe*ae+ye],[oe*re-de*ae+ge,de*re+oe*ae+ye],[oe*z-de*ee+ge,de*z+oe*ee+ye],[oe*re-de*ee+ge,de*re+oe*ee+ye]];return De},E.prototype.set=function(a,y,x,b){return x<a?(this.x2=a,this.x1=x):(this.x1=a,this.x2=x),b<y?(this.y2=y,this.y1=b):(this.y1=y,this.y2=b),this},E.prototype.defined=function(a){return this[a]!==Number.MAX_VALUE&&this[a]!==-Number.MAX_VALUE},E}();function $1(E,a){var y=E.getEulerAngles()||0;E.setEulerAngles(0);var x=E.getBounds(),b=(0,Nt.CR)(x.min,2),z=b[0],ee=b[1],re=(0,Nt.CR)(x.max,2),ae=re[0],oe=re[1],de=E.getBBox(),ge=de.width,ye=de.height,De=ye,ke=0,ze=0,We=z,Ve=ee,Ze=u3(E);if(Ze){De-=1.5;var Ye=Ze.style.textAlign,et=Ze.style.textBaseline;Ye==="center"?We=(z+ae)/2:(Ye==="right"||Ye==="end")&&(We=ae),et==="middle"?Ve=(ee+oe)/2:et==="bottom"&&(Ve=oe)}var st=(0,Nt.CR)(Ec(a),4),ht=st[0],mt=ht===void 0?0:ht,dt=st[1],Ot=dt===void 0?0:dt,_t=st[2],wt=_t===void 0?mt:_t,$t=st[3],gn=$t===void 0?Ot:$t,Xt=new JS((ke+=z)-gn,(ze+=ee)-mt,ke+ge+Ot,ze+De+wt);return E.setEulerAngles(y),Xt.rotatedPoints(lv(y),We,Ve)}function Fm(E,a){return a[0]<=Math.max(E[0][0],E[1][0])&&a[0]<=Math.min(E[0][0],E[1][0])&&a[1]<=Math.max(E[0][1],E[1][1])&&a[1]<=Math.min(E[0][1],E[1][1])}function km(E,a,y){var x=(a[1]-E[1])*(y[0]-a[0])-(a[0]-E[0])*(y[1]-a[1]);return x===0?0:x<0?2:1}function yV(E,a){var y=km(E[0],E[1],a[0]),x=km(E[0],E[1],a[1]),b=km(a[0],a[1],E[0]),z=km(a[0],a[1],E[1]);return!!(y!==x&&b!==z||y===0&&Fm(E,a[0])||x===0&&Fm(E,a[1])||b===0&&Fm(a,E[0])||z===0&&Fm(a,E[1]))}function EV(E,a){var y=E.length;if(y<3)return!1;var x=[a,[9999,a[1]]],b=0,z=0;do{var ee=[E[z],E[(z+1)%y]];if(yV(ee,x)){if(km(ee[0],a,ee[1])===0)return Fm(ee,a);b++}z=(z+1)%y}while(z!==0);return!!(b&1)}function AV(E,a){return a.every(function(y){return EV(E,y)})}function xV(E,a,y){var x=E.x1,b=E.x2,z=E.y1,ee=E.y2,re=[[x,z],[b,z],[b,ee],[x,ee]],ae=$1(a,y);return AV(re,ae)}function I3(E,a){var y=(0,Nt.CR)(E,4),x=y[0],b=y[1],z=y[2],ee=y[3],re=(0,Nt.CR)(a,4),ae=re[0],oe=re[1],de=re[2],ge=re[3],ye=z-x,De=ee-b,ke=de-ae,ze=ge-oe,We=ye*ze-ke*De;if(We===0)return!1;var Ve=We>0,Ze=x-ae,Ye=b-oe,et=ye*Ye-De*Ze;if(et<0===Ve)return!1;var st=ke*Ye-ze*Ze;return!(st<0===Ve||et>We===Ve||st>We===Ve)}function O3(E,a){var y=[[E[0],E[1],E[2],E[3]],[E[2],E[3],E[4],E[5]],[E[4],E[5],E[6],E[7]],[E[6],E[7],E[0],E[1]]];return y.some(function(x){return I3(a,x)})}var ure={lineToLine:I3,intersectBoxLine:O3,getBounds:$1};function SV(E,a,y){var x,b,z=$1(E,y).flat(1),ee=$1(a,y).flat(1),re=[[z[0],z[1],z[2],z[3]],[z[0],z[1],z[4],z[5]],[z[4],z[5],z[6],z[7]],[z[2],z[3],z[6],z[7]]];try{for(var ae=(0,Nt.XA)(re),oe=ae.next();!oe.done;oe=ae.next()){var de=oe.value;if(O3(ee,de))return!0}}catch(ge){x={error:ge}}finally{try{oe&&!oe.done&&(b=ae.return)&&b.call(ae)}finally{if(x)throw x.error}}return!1}function bV(E,a){var y=E.type,x=E.labelDirection,b=E.crossSize;if(!b)return!1;if(y==="arc"){var z=E.center,ee=E.radius,re=(0,Nt.CR)(z,2),ae=re[0],oe=re[1],de=x==="negative"?0:b,ge=-ee-de,ye=ee+de,De=(0,Nt.CR)(Ec(a),4),ke=De[0],ze=De[1],We=De[2],Ve=De[3];return new JS(ae+ge-Ve,oe+ge-ke,ae+ye+ze,oe+ye+We)}var Ze=(0,Nt.CR)(E.startPos,2),Ye=Ze[0],et=Ze[1],st=(0,Nt.CR)(E.endPos,2),ht=st[0],mt=st[1],dt=(0,Nt.CR)(b3(E)?[-a,0,a,0]:[0,a,0,-a],4),Ot=dt[0],_t=dt[1],wt=dt[2],$t=dt[3],gn=cv(0,E),Xt=Sh(gn,b),Tn=new JS(Ye,et,ht,mt);return Tn.x1+=$t,Tn.y1+=Ot,Tn.x2+=_t+Xt[0],Tn.y2+=wt+Xt[1],Tn}function eE(E,a,y){var x,b,z=a.crossPadding,ee=new Set,re=null,ae=bV(a,z),oe=function(ke){return ae?xV(ae,ke):!0},de=function(ke,ze){return!ke||!ke.firstChild?!0:!SV(ke.firstChild,ze.firstChild,Ec(y))};try{for(var ge=(0,Nt.XA)(E),ye=ge.next();!ye.done;ye=ge.next()){var De=ye.value;oe(De)?!re||de(re,De)?re=De:(ee.add(re),ee.add(De)):ee.add(De)}}catch(ke){x={error:ke}}finally{try{ye&&!ye.done&&(b=ge.return)&&b.call(ge)}finally{if(x)throw x.error}}return Array.from(ee)}function qS(E,a){return a===void 0&&(a={}),Io(E)?0:typeof E=="number"?E:Math.floor(AH(E,a))}function CV(E,a,y,x){if(!(E.length<=0)){var b=a.suffix,z=b===void 0?"...":b,ee=a.minLength,re=a.maxLength,ae=re===void 0?1/0:re,oe=a.step,de=oe===void 0?" ":oe,ge=a.margin,ye=ge===void 0?[0,0,0,0]:ge,De=l3(x.getTextShape(E[0])),ke=qS(de,De),ze=ee?qS(ee,De):ke,We=qS(ae,De);(Io(We)||We===1/0)&&(We=Math.max.apply(null,E.map(function(Xt){return Xt.getBBox().width})));for(var Ve=E.slice(),Ze=(0,Nt.CR)(ye,4),Ye=Ze[0],et=Ye===void 0?0:Ye,st=Ze[1],ht=st===void 0?0:st,mt=Ze[2],dt=mt===void 0?et:mt,Ot=Ze[3],_t=Ot===void 0?ht:Ot,wt=function(Xt){if(Ve.forEach(function(Tn){x.ellipsis(x.getTextShape(Tn),Xt,z)}),Ve=eE(E,y,ye),Ve.length<1)return{value:void 0}},$t=We;$t>ze+ke;$t-=ke){var gn=wt($t);if(typeof gn=="object")return gn.value}}}var PV=function(E){return E!==void 0&&E!=null&&!Number.isNaN(E)},wV={parity:function(E,a){var y=a.seq,x=y===void 0?2:y;return E.filter(function(b,z){return z%x?(Pf(b),!1):!0})}},MV=function(E){return E.filter(PV)};function DV(E,a,y,x){var b=E.length,z=a.keepHeader,ee=a.keepTail;if(!(b<=1||b===2&&z&&ee)){var re=wV.parity,ae=function(Ye){return Ye.forEach(x.show),Ye},oe=2,de=E.slice(),ge=E.slice(),ye=Math.min.apply(Math,(0,Nt.ev)([1],(0,Nt.CR)(E.map(function(Ye){return Ye.getBBox().width})),!1));if(y.type==="linear"&&(XS(y)||b3(y))){var De=s3(E[0]).left,ke=s3(E[b-1]).right,ze=Math.abs(ke-De)||1;oe=Math.max(Math.floor(b*ye/ze),oe)}var We,Ve;for(z&&(We=de.splice(0,1)[0]),ee&&(Ve=de.splice(-1,1)[0],de.reverse()),ae(de);oe<E.length&&eE(MV(Ve?(0,Nt.ev)((0,Nt.ev)([Ve],(0,Nt.CR)(ge),!1),[We],!1):(0,Nt.ev)([We],(0,Nt.CR)(ge),!1)),y,a==null?void 0:a.margin).length;){if(Ve&&!We&&oe%2===0){var Ze=de.splice(0,1);Ze.forEach(x.hide)}else if(Ve&&We){var Ze=de.splice(0,1);Ze.forEach(x.hide)}ge=re(ae(de),{seq:oe}),oe++}}}function IV(E,a,y,x){var b,z,ee=a.optionalAngles,re=ee===void 0?[0,45,90]:ee,ae=a.margin,oe=a.recoverWhenFailed,de=oe===void 0?!0:oe,ge=E.map(function(Ve){return Ve.getLocalEulerAngles()}),ye=function(){return eE(E,y,ae).length<1},De=function(Ve){return E.forEach(function(Ze,Ye){var et=Array.isArray(Ve)?Ve[Ye]:Ve;x.rotate(Ze,+et)})};try{for(var ke=(0,Nt.XA)(re),ze=ke.next();!ze.done;ze=ke.next()){var We=ze.value;if(De(We),ye())return}}catch(Ve){b={error:Ve}}finally{try{ze&&!ze.done&&(z=ke.return)&&z.call(ke)}finally{if(b)throw b.error}}de&&De(ge)}function OV(E){var a=E.type,y=E.labelDirection;return a==="linear"&&XS(E)?y==="negative"?"bottom":"top":"middle"}function TV(E,a,y,x,b){var z,ee=a.maxLines,re=ee===void 0?3:ee,ae=a.recoverWhenFailed,oe=ae===void 0?!0:ae,de=a.margin,ge=de===void 0?[0,0,0,0]:de,ye=dd((z=a.wordWrapWidth)!==null&&z!==void 0?z:50,[b]),De=E.map(function(Ye){return Ye.attr("maxLines")||1}),ke=Math.min.apply(Math,(0,Nt.ev)([],(0,Nt.CR)(De),!1)),ze=function(){return eE(E,y,ge).length<1},We=OV(y),Ve=function(Ye){return E.forEach(function(et,st){var ht=Array.isArray(Ye)?Ye[st]:Ye;x.wrap(et,ye,ht,We)})};if(!(ke>re)){if(y.type==="linear"&&XS(y)){if(Ve(re),ze())return}else for(var Ze=ke;Ze<=re;Ze++)if(Ve(Ze),ze())return;oe&&Ve(De)}}var LV=new Map([["hide",DV],["rotate",IV],["ellipsis",CV],["wrap",TV]]);function BV(E,a,y){return a.labelOverlap.length<1?!1:y==="hide"?!PG(E[0]):y==="rotate"?!E.some(function(x){var b;return!!(!((b=x.attr("transform"))===null||b===void 0)&&b.includes("rotate"))}):y==="ellipsis"||y==="wrap"?E.filter(function(x){return x.querySelector("text")}).length>=1:!0}function NV(E,a,y,x){var b=a.labelOverlap,z=b===void 0?[]:b;z.length&&z.forEach(function(ee){var re=ee.type,ae=LV.get(re);BV(E,a,re)&&(ae==null||ae(E,ee,a,x,y))})}function RV(){for(var E=[],a=0;a<arguments.length;a++)E[a]=arguments[a];var y=function(x){return x==="positive"?-1:1};return E.reduce(function(x,b){return x*y(b)},1)}function T3(E){for(var a=E;a<0;)a+=360;return Math.round(a%360)}function $S(E,a){var y=(0,Nt.CR)(E,2),x=y[0],b=y[1],z=(0,Nt.CR)(a,2),ee=z[0],re=z[1],ae=(0,Nt.CR)([x*ee+b*re,x*re-b*ee],2),oe=ae[0],de=ae[1];return Math.atan2(de,oe)}function FV(E){var a=(E+360)%180;return Ac(a,-90,90)||(a+=180),a}function kV(E,a,y){var x,b=y.labelAlign,z=(x=a.style.transform)===null||x===void 0?void 0:x.includes("rotate");if(z)return a.getLocalEulerAngles();var ee=0,re=cv(E.value,y),ae=J1(E.value,y);return b==="horizontal"?0:(b==="perpendicular"?ee=$S([1,0],re):ee=$S([ae[0]<0?-1:1,0],ae),FV(y3(ee)))}function L3(E,a,y){var x=y.type,b=y.labelAlign,z=cv(E,y),ee=T3(a),re=T3(y3($S([1,0],z))),ae="center",oe="middle";return x==="linear"?[90,270].includes(re)&&ee===0?(ae="center",oe=z[1]===1?"top":"bottom"):!(re%180)&&[90,270].includes(ee)?ae="center":re===0?(Ac(ee,0,90,!1,!0)||Ac(ee,0,90)||Ac(ee,270,360))&&(ae="start"):re===90?Ac(ee,0,90,!1,!0)?ae="start":(Ac(ee,90,180)||Ac(ee,270,360))&&(ae="end"):re===270?Ac(ee,0,90,!1,!0)?ae="end":(Ac(ee,90,180)||Ac(ee,270,360))&&(ae="start"):re===180&&(ee===90?ae="start":(Ac(ee,0,90)||Ac(ee,270,360))&&(ae="end")):b==="parallel"?Ac(re,0,180,!0)?oe="top":oe="bottom":b==="horizontal"?Ac(re,90,270,!1)?ae="end":(Ac(re,270,360,!1)||Ac(re,0,90))&&(ae="start"):b==="perpendicular"&&(Ac(re,90,270)?ae="end":ae="start"),{textAlign:ae,textBaseline:oe}}function _V(E,a,y){a.setLocalEulerAngles(E);var x=a.__data__.value,b=L3(x,E,y),z=a.querySelector($o.labelItem.class);z&&N3(z,b)}function B3(E,a,y){var x=y.showTick,b=y.tickLength,z=y.tickDirection,ee=y.labelDirection,re=y.labelSpacing,ae=a.indexOf(E),oe=dd(re,[E,ae,a]),de=(0,Nt.CR)([cv(E.value,y),RV(ee,z)],2),ge=de[0],ye=de[1],De=ye===1?dd(x?b:0,[E,ae,a]):0,ke=(0,Nt.CR)(Bm(Sh(ge,oe+De),q1(E.value,y)),2),ze=ke[0],We=ke[1];return{x:ze,y:We}}function zV(E,a,y,x){var b=x.labelFormatter,z=Xi(b)?function(){return xh(dd(b,[E,a,y,cv(E.value,x)]))}:function(){return xh(E.label||"")};return z}function jV(E,a,y,x){var b=x.labelRender,z=(pc(x,"endPos.0",400)-pc(x,"startPos.0",0))/y.length,ee=Xi(b)?dd(b,[E,a,y,cv(E.value,x)]):E.label||"",re=vV(ee)||30;return function(){return EH(ee,{width:z,height:re})}}var UV={html:["fill"],text:[]};function N3(E,a){["text","html"].includes(E.nodeName)&&E.attr(ZS(a,UV[E.nodeName]))}function WV(E,a){NV(this.node().childNodes,E,a,{hide:Pf,show:Lm,rotate:function(y,x){_V(+x,y,E)},ellipsis:function(y,x,b){y&&zS(y,x||1/0,b)},wrap:function(y,x,b){y&&mV(y,x,b)},getTextShape:function(y){return y.querySelector($o.labelItem.class)}})}function R3(E,a,y,x,b){var z=y.indexOf(a),ee=b.labelRender,re=b.classNamePrefix,ae=Ji(E).append(ee?jV(a,z,y,b):zV(a,z,y,b)).attr("className",$o.labelItem.name).node();Ld(Ji(ae),$o.labelItem,bl.labelItem,re);var oe=(0,Nt.CR)(Ah(x3(x,[a,z,y])),2),de=oe[0],ge=oe[1],ye=ge.transform,De=(0,Nt._T)(ge,["transform"]);D3(ae,ye);var ke=kV(a,ae,b);if(ae.getLocalEulerAngles()||ae.setLocalEulerAngles(ke),N3(ae,(0,Nt.pi)((0,Nt.pi)({},L3(a.value,ke,b)),de)),ae.nodeName==="html"){var ze=ae.getBBox(),We=ae.style.x||0;ae.attr("x",We-ze.width/2)}return E.attr(De),ae}function GV(E,a,y,x,b){var z=y.classNamePrefix,ee=QS(a,y.labelFilter),re=cs(y,"label"),ae,oe=E.selectAll($o.label.class).data(ee,function(de,ge){return ge}).join(function(de){var ge=de.append("g").attr("className",$o.label.name).transition(function(ye){R3(this,ye,a,re,y);var De=B3(ye,a,y),ke=De.x,ze=De.y;return this.style.transform="translate(".concat(ke,", ").concat(ze,")"),null});return Ld(ge,$o.label,bl.label,z),ge},function(de){return de.transition(function(ge){var ye=this.querySelector($o.labelItem.class),De=R3(this,ge,a,re,y),ke=HG(ye,De,x.update),ze=B3(ge,a,y),We=ze.x,Ve=ze.y,Ze=Mf(this,{transform:"translate(".concat(We,", ").concat(Ve,")")},x.update);return(0,Nt.ev)((0,Nt.ev)([],(0,Nt.CR)(ke),!1),[Ze],!1)})},function(de){return ae=de,de.transition(function(){var ge=this,ye=X1(this.childNodes[0],x.exit);return sv(ye,function(){return Ji(ge).remove()}),ye}),ae}).transitions();return WG(oe,function(){WV.call(E,y,b)}),oe}function F3(E,a){return YS(E,a.tickDirection,a)}function HV(E,a){var y=(0,Nt.CR)(E,2),x=y[0],b=y[1];return[[0,0],[x*a,b*a]]}function VV(E,a,y,x,b){var z=b.tickLength,ee=(0,Nt.CR)(HV(x,dd(z,[E,a,y])),2),re=(0,Nt.CR)(ee[0],2),ae=re[0],oe=re[1],de=(0,Nt.CR)(ee[1],2),ge=de[0],ye=de[1];return{x1:ae,x2:ge,y1:oe,y2:ye}}function KV(E,a,y,x,b){var z=b.tickFormatter,ee=b.classNamePrefix,re=F3(a.value,b),ae="line";Xi(z)&&(ae=function(){return dd(z,[a,y,x,re])});var oe=E.append(ae).attr("className",$o.tickItem.name);return Ld(oe,$o.tickItem,bl.tickItem,ee),oe}function ZV(E,a,y,x,b,z,ee){var re=F3(E.value,z),ae=VV(E,a,y,re,z),oe=ae.x1,de=ae.x2,ge=ae.y1,ye=ae.y2,De=(0,Nt.CR)(Ah(x3(ee,[E,a,y,re])),2),ke=De[0],ze=De[1];x.node().nodeName==="line"&&x.styles((0,Nt.pi)({x1:oe,x2:de,y1:ge,y2:ye},ke)),b.attr(ze),x.styles(ke)}function k3(E,a,y,x,b,z){var ee=KV(Ji(this),E,a,y,x);ZV(E,a,y,ee,this,x,b);var re=(0,Nt.CR)(q1(E.value,x),2),ae=re[0],oe=re[1];return Mf(this,{transform:"translate(".concat(ae,", ").concat(oe,")")},z)}function QV(E,a,y,x){var b=y.classNamePrefix,z=QS(a,y.tickFilter),ee=cs(y,"tick");return E.selectAll($o.tick.class).data(z,function(re){return re.id||re.label}).join(function(re){var ae=re.append("g").attr("className",$o.tick.name).transition(function(oe,de){return k3.call(this,oe,de,z,y,ee,!1)});return Ld(ae,$o.tick,bl.tick,b),ae},function(re){return re.transition(function(ae,oe){return this.removeChildren(),k3.call(this,ae,oe,z,y,ee,x.update)})},function(re){return re.transition(function(){var ae=this,oe=X1(this.childNodes[0],x.exit);return sv(oe,function(){return ae.remove()}),oe})}).transitions()}function YV(E,a,y){var x=y.titlePosition,b=x===void 0?"lb":x,z=y.titleSpacing,ee=G1(b),re=E.node().getLocalBounds(),ae=(0,Nt.CR)(re.min,2),oe=ae[0],de=ae[1],ge=(0,Nt.CR)(re.halfExtents,2),ye=ge[0],De=ge[1],ke=(0,Nt.CR)(a.node().getLocalBounds().halfExtents,2),ze=ke[0],We=ke[1],Ve=(0,Nt.CR)([oe+ye,de+De],2),Ze=Ve[0],Ye=Ve[1],et=(0,Nt.CR)(Ec(z),4),st=et[0],ht=et[1],mt=et[2],dt=et[3];if(["start","end"].includes(b)&&y.type==="linear"){var Ot=y.startPos,_t=y.endPos,wt=(0,Nt.CR)(b==="start"?[Ot,_t]:[_t,Ot],2),$t=wt[0],gn=wt[1],Xt=p3([-gn[0]+$t[0],-gn[1]+$t[1]]),Tn=(0,Nt.CR)(Sh(Xt,st),2),er=Tn[0],En=Tn[1];return{x:$t[0]+er,y:$t[1]+En}}return ee.includes("t")&&(Ye-=De+We+st),ee.includes("r")&&(Ze+=ye+ze+ht),ee.includes("l")&&(Ze-=ye+ze+dt),ee.includes("b")&&(Ye+=De+We+mt),{x:Ze,y:Ye}}function XV(E,a,y){var x=E.getGeometryBounds().halfExtents,b=x[1]*2;if(a==="vertical"){if(y==="left")return"rotate(-90) translate(0, ".concat(b/2,")");if(y==="right")return"rotate(-90) translate(0, -".concat(b/2,")")}return""}function _3(E,a,y,x,b){var z=cs(x,"title"),ee=(0,Nt.CR)(Ah(z),2),re=ee[0],ae=ee[1],oe=ae.transform,de=ae.transformOrigin,ge=(0,Nt._T)(ae,["transform","transformOrigin"]);a.styles(ge);var ye=oe||XV(E.node(),re.direction,re.position);E.styles((0,Nt.pi)((0,Nt.pi)({},re),{transformOrigin:de})),D3(E.node(),ye);var De=YV(Ji(y._offscreen||y.querySelector($o.mainGroup.class)),a,x),ke=De.x,ze=De.y,We=Mf(a.node(),{transform:"translate(".concat(ke,", ").concat(ze,")")},b);return We}function JV(E,a,y,x){var b=y.titleText,z=y.classNamePrefix;return E.selectAll($o.title.class).data([{title:b}].filter(function(ee){return!!ee.title}),function(ee,re){return ee.title}).join(function(ee){var re=ee.append(function(){return xh(b)}).attr("className",$o.title.name).transition(function(){return _3(Ji(this),E,a,y,x.enter)});return Ld(re,$o.title,bl.title,z),re},function(ee){return ee.transition(function(){return _3(Ji(this),E,a,y,x.update)})},function(ee){return ee.remove()}).transitions()}function z3(E,a,y,x){var b=E.showLine,z=E.showTick,ee=E.showLabel,re=E.classNamePrefix,ae=a.maybeAppendByClassName($o.lineGroup,"g");Ld(ae,$o.lineGroup,bl.lineGroup,re);var oe=cd(b,ae,function(ke){return cV(ke,E,x)})||[],de=a.maybeAppendByClassName($o.tickGroup,"g");Ld(de,$o.tickGroup,bl.tickGroup,re);var ge=cd(z,de,function(ke){return QV(ke,y,E,x)})||[],ye=a.maybeAppendByClassName($o.labelGroup,"g");Ld(ye,$o.labelGroup,bl.labelGroup,re);var De=cd(ee,ye,function(ke){return GV(ke,y,E,x,a.node())})||[];return(0,Nt.ev)((0,Nt.ev)((0,Nt.ev)([],(0,Nt.CR)(oe),!1),(0,Nt.CR)(ge),!1),(0,Nt.CR)(De),!1).filter(function(ke){return!!ke})}var qV=function(E){(0,Nt.ZT)(a,E);function a(y){return E.call(this,y,GS)||this}return a.prototype.render=function(y,x,b){var z=this,ee=y.titleText,re=y.data,ae=y.animate,oe=y.showTitle,de=y.showGrid,ge=y.dataThreshold,ye=y.truncRange,De=y.classNamePrefix,ke=x.className||"axis";De?x.attr("className","".concat(ke," ").concat(De,"axis")):x.className||x.attr("className","axis");var ze=WH(re,ge).filter(function(mt){var dt=mt.value;return!(ye&&dt>ye[0]&&dt<ye[1])}),We=$D(b===void 0?ae:b),Ve=Ji(x).maybeAppendByClassName($o.gridGroup,"g");Ld(Ve,$o.gridGroup,bl.gridGroup,De);var Ze=cd(de,Ve,function(mt){return gV(mt,ze,y,We)})||[],Ye=Ji(x).maybeAppendByClassName($o.mainGroup,"g");Ld(Ye,$o.mainGroup,bl.mainGroup,De),ee&&(!this.initialized&&We.enter||this.initialized&&We.update)&&z3(y,Ji(this.offscreenGroup),ze,$D(!1));var et=z3(y,Ji(Ye.node()),ze,We),st=Ji(x).maybeAppendByClassName($o.titleGroup,"g");Ld(st,$o.titleGroup,bl.titleGroup,De);var ht=cd(oe,st,function(mt){return JV(mt,z,y,We)})||[];return(0,Nt.ev)((0,Nt.ev)((0,Nt.ev)([],(0,Nt.CR)(Ze),!1),(0,Nt.CR)(et),!1),(0,Nt.CR)(ht),!1).flat().filter(function(mt){return!!mt})},a}(pu);function cre(E){var a=E.canvas,y=E.touches,x=E.offsetX,b=E.offsetY;if(a){var z=a.x,ee=a.y;return[z,ee]}if(y){var re=y[0],ae=re.clientX,oe=re.clientY;return[ae,oe]}return x&&b?[x,b]:[0,0]}function j3(E){var a=E.nativeEvent,y=E.touches,x=E.clientX,b=E.clientY;if(a)return[a.clientX,a.clientY];if(y){var z=y[0],ee=z.clientX,re=z.clientY;return[ee,re]}return typeof x=="number"&&typeof b=="number"?[x,b]:[0,0]}function Sb(E,a){return+E.toPrecision(a)}function dre(E){return E.toLocaleString()}function fre(E){return E.toExponential()}function hre(E,a){return a===void 0&&(a=0),Math.abs(E)<1e3?String(E):"".concat(Sb(E/1e3,a).toLocaleString(),"K")}var gre=function(E,a,y){return E<0&&Number.isFinite(E)?a:y},vre=function(E,a,y){return E>0&&Number.isFinite(E)?a:y},mre=function(E,a){return E*a},pre=function(E,a){return E/2+(a||0)/2},Pb=function(E){return E};class U3{constructor(a){this.options=vc({},this.getDefaultOptions()),this.update(a)}getOptions(){return this.options}update(a={}){this.options=vc({},this.options,a),this.rescale(a)}rescale(a){}}function Mb(E,a){return a-E?y=>(y-E)/(a-E):y=>.5}function tE(E,...a){return a.reduce((y,x)=>b=>y(x(b)),E)}function $V(E,a,y,x,b){let z=y||0,ee=x||E.length;const re=b||(ae=>ae);for(;z<ee;){const ae=Math.floor((z+ee)/2);re(E[ae])>a?ee=ae:z=ae+1}return z}var eK=Te(75196),tK=Te.n(eK);function Ib(E,a,y){let x=y;return x<0&&(x+=1),x>1&&(x-=1),x<1/6?E+(a-E)*6*x:x<1/2?a:x<2/3?E+(a-E)*(2/3-x)*6:E}function nK(E){const a=E[0]/360,y=E[1]/100,x=E[2]/100,b=E[3];if(y===0)return[x*255,x*255,x*255,b];const z=x<.5?x*(1+y):x+y-x*y,ee=2*x-z,re=Ib(ee,z,a+1/3),ae=Ib(ee,z,a),oe=Ib(ee,z,a-1/3);return[re*255,ae*255,oe*255,b]}function W3(E){const a=tK().get(E);if(!a)return null;const{model:y,value:x}=a;return y==="rgb"?x:y==="hsl"?nK(x):null}const nE=(E,a)=>y=>E*(1-y)+a*y,rK=(E,a)=>{const y=W3(E),x=W3(a);return y===null||x===null?y?()=>E:()=>a:b=>{const z=new Array(4);for(let de=0;de<4;de+=1){const ge=y[de],ye=x[de];z[de]=ge*(1-b)+ye*b}const[ee,re,ae,oe]=z;return`rgba(${Math.round(ee)}, ${Math.round(re)}, ${Math.round(ae)}, ${oe})`}},aK=(E,a)=>typeof E=="number"&&typeof a=="number"?nE(E,a):typeof E=="string"&&typeof a=="string"?rK(E,a):()=>E,iK=(E,a)=>{const y=nE(E,a);return x=>Math.round(y(x))};function oK(E){return E===null}function G3(E){return!qo(E)&&!oK(E)&&!Number.isNaN(E)}const Ob=Math.sqrt(50),Tb=Math.sqrt(10),Lb=Math.sqrt(2);function rE(E,a,y){const x=(a-E)/Math.max(0,y),b=Math.floor(Math.log(x)/Math.LN10),z=x/Eg(10,b);return b>=0?(z>=Ob?10:z>=Tb?5:z>=Lb?2:1)*Eg(10,b):-Eg(10,-b)/(z>=Ob?10:z>=Tb?5:z>=Lb?2:1)}function yre(E,a,y){const x=Math.abs(a-E)/Math.max(0,y);let b=Eg(10,Math.floor(Math.log(x)/Math.LN10));const z=x/b;return z>=Ob?b*=10:z>=Tb?b*=5:z>=Lb&&(b*=2),a<E?-b:b}const sK=(E,a,y=5)=>{const x=[E,a];let b=0,z=x.length-1,ee=x[b],re=x[z],ae;return re<ee&&([ee,re]=[re,ee],[b,z]=[z,b]),ae=rE(ee,re,y),ae>0?(ee=Math.floor(ee/ae)*ae,re=Math.ceil(re/ae)*ae,ae=rE(ee,re,y)):ae<0&&(ee=Math.ceil(ee*ae)/ae,re=Math.floor(re*ae)/ae,ae=rE(ee,re,y)),ae>0?(x[b]=Math.floor(ee/ae)*ae,x[z]=Math.ceil(re/ae)*ae):ae<0&&(x[b]=Math.ceil(ee*ae)/ae,x[z]=Math.floor(re*ae)/ae),x};function lK(E,a){const y=a<E?a:E,x=E>a?E:a;return b=>Math.min(Math.max(y,b),x)}const uK=(E,a,y)=>{const[x,b]=E,[z,ee]=a;let re,ae;return x<b?(re=Mb(x,b),ae=y(z,ee)):(re=Mb(b,x),ae=y(ee,z)),tE(ae,re)},cK=(E,a,y)=>{const x=Math.min(E.length,a.length)-1,b=new Array(x),z=new Array(x),ee=E[0]>E[x],re=ee?[...E].reverse():E,ae=ee?[...a].reverse():a;for(let oe=0;oe<x;oe+=1)b[oe]=Mb(re[oe],re[oe+1]),z[oe]=y(ae[oe],ae[oe+1]);return oe=>{const de=$V(E,oe,1,x)-1,ge=b[de],ye=z[de];return tE(ye,ge)(oe)}},H3=(E,a,y,x)=>(Math.min(E.length,a.length)>2?cK:uK)(E,a,x?iK:y);class dK extends U3{getDefaultOptions(){return{domain:[0,1],range:[0,1],nice:!1,clamp:!1,round:!1,interpolate:nE,tickCount:5}}map(a){return G3(a)?this.output(a):this.options.unknown}invert(a){return G3(a)?this.input(a):this.options.unknown}nice(){if(!this.options.nice)return;const[a,y,x,...b]=this.getTickMethodOptions();this.options.domain=this.chooseNice()(a,y,x,...b)}getTicks(){const{tickMethod:a}=this.options,[y,x,b,...z]=this.getTickMethodOptions();return a(y,x,b,...z)}getTickMethodOptions(){const{domain:a,tickCount:y}=this.options,x=a[0],b=a[a.length-1];return[x,b,y]}chooseNice(){return sK}rescale(){this.nice();const[a,y]=this.chooseTransforms();this.composeOutput(a,this.chooseClamp(a)),this.composeInput(a,y,this.chooseClamp(y))}chooseClamp(a){const{clamp:y,range:x}=this.options,b=this.options.domain.map(a),z=Math.min(b.length,x.length);return y?lK(b[0],b[z-1]):Pb}composeOutput(a,y){const{domain:x,range:b,round:z,interpolate:ee}=this.options,re=H3(x.map(a),b,ee,z);this.output=tE(re,y,a)}composeInput(a,y,x){const{domain:b,range:z}=this.options,ee=H3(z,b.map(a),nE);this.input=tE(y,x,ee)}}const fK=(E,a,y)=>{let x,b,z=E,ee=a;if(z===ee&&y>0)return[z];let re=rE(z,ee,y);if(re===0||!Number.isFinite(re))return[];if(re>0){z=Math.ceil(z/re),ee=Math.floor(ee/re),b=new Array(x=Math.ceil(ee-z+1));for(let ae=0;ae<x;ae+=1)b[ae]=(z+ae)*re}else{re=-re,z=Math.ceil(z*re),ee=Math.floor(ee*re),b=new Array(x=Math.ceil(ee-z+1));for(let ae=0;ae<x;ae+=1)b[ae]=(z+ae)/re}return b};class _m extends dK{getDefaultOptions(){return{domain:[0,1],range:[0,1],unknown:void 0,nice:!1,clamp:!1,round:!1,interpolate:aK,tickMethod:fK,tickCount:5}}chooseTransforms(){return[Pb,Pb]}clone(){return new _m(this.options)}}function V3({map:E,initKey:a},y){const x=a(y);return E.has(x)?E.get(x):y}function hK({map:E,initKey:a},y){const x=a(y);return E.has(x)?E.get(x):(E.set(x,y),y)}function gK({map:E,initKey:a},y){const x=a(y);return E.has(x)&&(y=E.get(x),E.delete(x)),y}function vK(E){return typeof E=="object"?E.valueOf():E}class K3 extends Map{constructor(a){if(super(),this.map=new Map,this.initKey=vK,a!==null)for(const[y,x]of a)this.set(y,x)}get(a){return super.get(V3({map:this.map,initKey:this.initKey},a))}has(a){return super.has(V3({map:this.map,initKey:this.initKey},a))}set(a,y){return super.set(hK({map:this.map,initKey:this.initKey},a),y)}delete(a){return super.delete(gK({map:this.map,initKey:this.initKey},a))}}const Nb=Symbol("defaultUnknown");function Z3(E,a,y){for(let x=0;x<a.length;x+=1)E.has(a[x])||E.set(y(a[x]),x)}function Q3(E){const{value:a,from:y,to:x,mapper:b,notFoundReturn:z}=E;let ee=b.get(a);if(ee===void 0){if(z!==Nb)return z;ee=y.push(a)-1,b.set(a,ee)}return x[ee%x.length]}function Y3(E){return E instanceof Date?a=>`${a}`:typeof E=="object"?a=>JSON.stringify(a):a=>a}class Rb extends U3{getDefaultOptions(){return{domain:[],range:[],unknown:Nb}}constructor(a){super(a)}map(a){return this.domainIndexMap.size===0&&Z3(this.domainIndexMap,this.getDomain(),this.domainKey),Q3({value:this.domainKey(a),mapper:this.domainIndexMap,from:this.getDomain(),to:this.getRange(),notFoundReturn:this.options.unknown})}invert(a){return this.rangeIndexMap.size===0&&Z3(this.rangeIndexMap,this.getRange(),this.rangeKey),Q3({value:this.rangeKey(a),mapper:this.rangeIndexMap,from:this.getRange(),to:this.getDomain(),notFoundReturn:this.options.unknown})}rescale(a){const[y]=this.options.domain,[x]=this.options.range;if(this.domainKey=Y3(y),this.rangeKey=Y3(x),!this.rangeIndexMap){this.rangeIndexMap=new Map,this.domainIndexMap=new Map;return}(!a||a.range)&&this.rangeIndexMap.clear(),(!a||a.domain||a.compare)&&(this.domainIndexMap.clear(),this.sortedDomain=void 0)}clone(){return new Rb(this.options)}getRange(){return this.options.range}getDomain(){if(this.sortedDomain)return this.sortedDomain;const{domain:a,compare:y}=this.options;return this.sortedDomain=y?[...a].sort(y):a,this.sortedDomain}}function mK(E){const a=Math.min(...E);return E.map(y=>y/a)}function pK(E,a){const y=E.length,x=a-y;return x>0?[...E,...new Array(x).fill(1)]:x<0?E.slice(0,a):E}function yK(E){return Math.round(E*1e12)/1e12}function EK(E){const{domain:a,range:y,paddingOuter:x,paddingInner:b,flex:z,round:ee,align:re}=E,ae=a.length,oe=pK(z,ae),[de,ge]=y,ye=ge-de,De=2/ae*x+1-1/ae*b,ke=ye/De,ze=ke*b/ae,We=ke-ae*ze,Ve=mK(oe),Ze=Ve.reduce(($t,gn)=>$t+gn),Ye=We/Ze,et=new K3(a.map(($t,gn)=>{const Xt=Ve[gn]*Ye;return[$t,ee?Math.floor(Xt):Xt]})),st=new K3(a.map(($t,gn)=>{const Tn=Ve[gn]*Ye+ze;return[$t,ee?Math.floor(Tn):Tn]})),ht=Array.from(st.values()).reduce(($t,gn)=>$t+gn),dt=(ye-(ht-ht/ae*b))*re,Ot=de+dt;let _t=ee?Math.round(Ot):Ot;const wt=new Array(ae);for(let $t=0;$t<ae;$t+=1){wt[$t]=yK(_t);const gn=a[$t];_t+=st.get(gn)}return{valueBandWidth:et,valueStep:st,adjustedRange:wt}}function AK(E){var a;const{domain:y}=E,x=y.length;if(x===0)return{valueBandWidth:void 0,valueStep:void 0,adjustedRange:[]};if(!!(!((a=E.flex)===null||a===void 0)&&a.length))return EK(E);const{range:z,paddingOuter:ee,paddingInner:re,round:ae,align:oe}=E;let de,ge,ye=z[0];const ke=z[1]-ye,ze=ee*2,We=x-re;de=ke/Math.max(1,ze+We),ae&&(de=Math.floor(de)),ye+=(ke-de*(x-re))*oe,ge=de*(1-re),ae&&(ye=Math.round(ye),ge=Math.round(ge));const Ve=new Array(x).fill(0).map((Ze,Ye)=>ye+Ye*de);return{valueStep:de,valueBandWidth:ge,adjustedRange:Ve}}class _b extends Rb{getDefaultOptions(){return{domain:[],range:[0,1],align:.5,round:!1,paddingInner:0,paddingOuter:0,padding:0,unknown:Nb,flex:[]}}constructor(a){super(a)}clone(){return new _b(this.options)}getStep(a){return this.valueStep===void 0?1:typeof this.valueStep=="number"?this.valueStep:a===void 0?Array.from(this.valueStep.values())[0]:this.valueStep.get(a)}getBandWidth(a){return this.valueBandWidth===void 0?1:typeof this.valueBandWidth=="number"?this.valueBandWidth:a===void 0?Array.from(this.valueBandWidth.values())[0]:this.valueBandWidth.get(a)}getRange(){return this.adjustedRange}getPaddingInner(){const{padding:a,paddingInner:y}=this.options;return a>0?a:y}getPaddingOuter(){const{padding:a,paddingOuter:y}=this.options;return a>0?a:y}rescale(){super.rescale();const{align:a,domain:y,range:x,round:b,flex:z}=this.options,{adjustedRange:ee,valueBandWidth:re,valueStep:ae}=AK({align:a,range:x,round:b,flex:z,paddingInner:this.getPaddingInner(),paddingOuter:this.getPaddingOuter(),domain:y});this.valueStep=ae,this.valueBandWidth=re,this.adjustedRange=ee}}var xK=function(E){(0,Nt.ZT)(a,E);function a(y){var x=this,b=y.style,z=(0,Nt._T)(y,["style"]);return x=E.call(this,vc({},{type:"column"},(0,Nt.pi)({style:b},z)))||this,x.columnsGroup=new qu({name:"columns"}),x.appendChild(x.columnsGroup),x.render(),x}return a.prototype.render=function(){var y=this.attributes,x=y.columns,b=y.x,z=y.y;this.columnsGroup.style.transform="translate(".concat(b,", ").concat(z,")"),Ji(this.columnsGroup).selectAll(".column").data(x.flat()).join(function(ee){return ee.append("rect").attr("className","column").each(function(re){this.attr(re)})},function(ee){return ee.each(function(re){this.attr(re)})},function(ee){return ee.remove()})},a.prototype.update=function(y){this.attr(Hu({},this.attributes,y)),this.render()},a.prototype.clear=function(){this.removeChildren()},a}(Hl),SK=function(E){(0,Nt.ZT)(a,E);function a(y){var x=this,b=y.style,z=(0,Nt._T)(y,["style"]);return x=E.call(this,vc({},{type:"lines"},(0,Nt.pi)({style:b},z)))||this,x.linesGroup=x.appendChild(new qu),x.areasGroup=x.appendChild(new qu),x.render(),x}return a.prototype.render=function(){var y=this.attributes,x=y.lines,b=y.areas,z=y.x,ee=y.y;this.style.transform="translate(".concat(z,", ").concat(ee,")"),x&&this.renderLines(x),b&&this.renderAreas(b)},a.prototype.clear=function(){this.linesGroup.removeChildren(),this.areasGroup.removeChildren()},a.prototype.update=function(y){this.attr(Hu({},this.attributes,y)),this.render()},a.prototype.renderLines=function(y){Ji(this.linesGroup).selectAll(".line").data(y).join(function(x){return x.append("path").attr("className","line").each(function(b){this.attr(b)})},function(x){return x.each(function(b){this.attr(b)})},function(x){return x.remove()})},a.prototype.renderAreas=function(y){Ji(this.linesGroup).selectAll(".area").data(y).join(function(x){return x.append("path").attr("className","area").each(function(b){this.attr(b)})},function(x){return x.each(function(b){this.style(b)})},function(x){return x.remove()})},a}(Hl);function bK(E,a,y,x){var b,z=[],ee=!!x,re,ae,oe=[1/0,1/0],de=[-1/0,-1/0],ge,ye,De;if(ee){b=(0,Nt.CR)(x,2),oe=b[0],de=b[1];for(var ke=0,ze=E.length;ke<ze;ke+=1){var We=E[ke];oe=p0(oe,We),de=y0(de,We)}}for(var ke=0,Ve=E.length;ke<Ve;ke+=1){var We=E[ke];if(ke===0&&!y)De=We;else if(ke===Ve-1&&!y)ye=We,z.push(De),z.push(ye);else{var Ze=[ke?ke-1:Ve-1,ke-1][y?0:1];re=E[Ze],ae=E[y?(ke+1)%Ve:ke+1];var Ye=[0,0];Ye=HS(ae,re),Ye=Sh(Ye,a);var et=Nm(We,re),st=Nm(We,ae),ht=et+st;ht!==0&&(et/=ht,st/=ht);var mt=Sh(Ye,-et),dt=Sh(Ye,st);ye=Bm(We,mt),ge=Bm(We,dt),ge=p0(ge,y0(ae,We)),ge=y0(ge,p0(ae,We)),mt=HS(ge,We),mt=Sh(mt,-et/st),ye=Bm(We,mt),ye=p0(ye,y0(re,We)),ye=y0(ye,p0(re,We)),dt=HS(We,ye),dt=Sh(dt,st/et),ge=Bm(We,dt),ee&&(ye=y0(ye,oe),ye=p0(ye,de),ge=y0(ge,oe),ge=p0(ge,de)),z.push(De),z.push(ye),De=ge}}return y&&z.push(z.shift()),z}function CK(E,a,y){var x;a===void 0&&(a=!1),y===void 0&&(y=[[0,0],[1,1]]);for(var b=!!a,z=[],ee=0,re=E.length;ee<re;ee+=2)z.push([E[ee],E[ee+1]]);for(var ae=bK(z,.4,b,y),oe=z.length,de=[],ge,ye,De,ee=0;ee<oe-1;ee+=1)ge=ae[ee*2],ye=ae[ee*2+1],De=z[ee+1],de.push(["C",ge[0],ge[1],ye[0],ye[1],De[0],De[1]]);return b&&(ge=ae[oe],ye=ae[oe+1],x=(0,Nt.CR)(z,1),De=x[0],de.push(["C",ge[0],ge[1],ye[0],ye[1],De[0],De[1]])),de}function PK(E,a){var y,x=a.x,b=a.y,z=(0,Nt.CR)(b.getOptions().range||[0,0],2),ee=z[0],re=z[1];return re>ee&&(y=(0,Nt.CR)([ee,re],2),re=y[0],ee=y[1]),E.map(function(ae){var oe=ae.map(function(de,ge){return[x.map(ge),gu(b.map(de),re,ee)]});return oe})}function zm(E,a){a===void 0&&(a=!1);var y=a?E.length-1:0,x=E.map(function(b,z){return(0,Nt.ev)([z===y?"M":"L"],(0,Nt.CR)(b),!1)});return a?x.reverse():x}function aE(E,a){if(a===void 0&&(a=!1),E.length<=2)return zm(E);for(var y=[],x=E.length,b=0;b<x;b+=1){var z=a?E[x-b-1]:E[b];Nu(z,y.slice(-2))||y.push.apply(y,(0,Nt.ev)([],(0,Nt.CR)(z),!1))}var ee=CK(y,!1);return a?ee.unshift((0,Nt.ev)(["M"],(0,Nt.CR)(E[x-1]),!1)):ee.unshift((0,Nt.ev)(["M"],(0,Nt.CR)(E[0]),!1)),ee}function Ub(E,a,y){var x=Z0(E);return x.push(["L",a,y],["L",0,y],["Z"]),x}function wK(E,a,y,x){return E.map(function(b){return Ub(a?aE(b):zm(b),y,x)})}function MK(E,a,y){for(var x=[],b=E.length-1;b>=0;b-=1){var z=E[b],ee=zm(z),re=void 0;if(b===0)re=Ub(ee,a,y);else{var ae=E[b-1],oe=zm(ae,!0);oe[0][0]="L",re=(0,Nt.ev)((0,Nt.ev)((0,Nt.ev)([],(0,Nt.CR)(ee),!1),(0,Nt.CR)(oe),!1),[["Z"]],!1)}x.push(re)}return x}function DK(E,a,y){for(var x=[],b=E.length-1;b>=0;b-=1){var z=E[b],ee=aE(z),re=void 0;if(b===0)re=Ub(ee,a,y);else{var ae=E[b-1],oe=aE(ae,!0),de=z[0];oe[0][0]="L",re=(0,Nt.ev)((0,Nt.ev)((0,Nt.ev)([],(0,Nt.CR)(ee),!1),(0,Nt.CR)(oe),!1),[(0,Nt.ev)(["M"],(0,Nt.CR)(de),!1),["Z"]],!1)}x.push(re)}return x}var IK=function(E,a){if(nd(E)){for(var y,x=1/0,b=0;b<E.length;b++){var z=E[b],ee=Xi(a)?a(z):z[a];ee<x&&(y=z,x=ee)}return y}},OK=function(E,a){if(nd(E)){for(var y,x=-1/0,b=0;b<E.length;b++){var z=E[b],ee=Xi(a)?a(z):z[a];ee>x&&(y=z,x=ee)}return y}};function X3(E){return E.length===0?[0,0]:[cp(IK(E,function(a){return cp(a)||0})),dp(OK(E,function(a){return dp(a)||0}))]}function J3(E){for(var a=Z0(E),y=a[0].length,x=(0,Nt.CR)([Array(y).fill(0),Array(y).fill(0)],2),b=x[0],z=x[1],ee=0;ee<a.length;ee+=1)for(var re=a[ee],ae=0;ae<y;ae+=1)re[ae]>=0?(re[ae]+=b[ae],b[ae]=re[ae]):(re[ae]+=z[ae],z[ae]=re[ae]);return a}var TK=function(E){(0,Nt.ZT)(a,E);function a(y){return E.call(this,y,{type:"line",x:0,y:0,width:200,height:20,isStack:!1,color:["#83daad","#edbf45","#d2cef9","#e290b3","#6f63f4"],smooth:!0,lineLineWidth:1,areaOpacity:0,isGroup:!1,columnLineWidth:1,columnStroke:"#fff",scale:1,spacing:0})||this}return Object.defineProperty(a.prototype,"rawData",{get:function(){var y=this.attributes.data;if(!y||(y==null?void 0:y.length)===0)return[[]];var x=Z0(y);return ji(x[0])?[x]:x},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"data",{get:function(){return this.attributes.isStack?J3(this.rawData):this.rawData},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"scales",{get:function(){return this.createScales(this.data)},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"baseline",{get:function(){var y=this.scales.y,x=(0,Nt.CR)(y.getOptions().domain||[0,0],2),b=x[0],z=x[1];return z<0?y.map(z):y.map(b<0?0:b)},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"containerShape",{get:function(){var y=this.attributes,x=y.width,b=y.height;return{width:x,height:b}},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"linesStyle",{get:function(){var y=this,x=this.attributes,b=x.type,z=x.isStack,ee=x.smooth;if(b!=="line")throw new Error("linesStyle can only be used in line type");var re=cs(this.attributes,"area"),ae=cs(this.attributes,"line"),oe=this.containerShape.width,de=this.data;if(de[0].length===0)return{lines:[],areas:[]};var ge=this.scales,ye=ge.x,De=ge.y,ke=PK(de,{type:"line",x:ye,y:De}),ze=[];if(re){var We=this.baseline;z?ze=ee?DK(ke,oe,We):MK(ke,oe,We):ze=wK(ke,ee,oe,We)}return{lines:ke.map(function(Ve,Ze){return(0,Nt.pi)({stroke:y.getColor(Ze),d:ee?aE(Ve):zm(Ve)},ae)}),areas:ze.map(function(Ve,Ze){return(0,Nt.pi)({d:Ve,fill:y.getColor(Ze)},re)})}},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"columnsStyle",{get:function(){var y=this,x=cs(this.attributes,"column"),b=this.attributes,z=b.isStack,ee=b.type,re=b.scale;if(ee!=="column")throw new Error("columnsStyle can only be used in column type");var ae=this.containerShape.height,oe=this.rawData;if(!oe)return{columns:[]};z&&(oe=J3(oe));var de=this.createScales(oe),ge=de.x,ye=de.y,De=(0,Nt.CR)(X3(oe),2),ke=De[0],ze=De[1],We=new _m({domain:[0,ze-(ke>0?0:ke)],range:[0,ae*re]}),Ve=ge.getBandWidth(),Ze=this.rawData;return{columns:oe.map(function(Ye,et){return Ye.map(function(st,ht){var mt=Ve/oe.length,dt=function(){return{x:ge.map(ht)+mt*et,y:st>=0?ye.map(st):ye.map(0),width:mt,height:We.map(Math.abs(st))}},Ot=function(){return{x:ge.map(ht),y:ye.map(st),width:Ve,height:We.map(Ze[et][ht])}};return(0,Nt.pi)((0,Nt.pi)({fill:y.getColor(et)},x),z?Ot():dt())})})}},enumerable:!1,configurable:!0}),a.prototype.render=function(y,x){RG(x,".container","rect").attr("className","container").node();var b=y.type,z=y.x,ee=y.y,re="spark".concat(b),ae=(0,Nt.pi)({x:z,y:ee},b==="line"?this.linesStyle:this.columnsStyle);Ji(x).selectAll(".spark").data([b]).join(function(oe){return oe.append(function(de){return de==="line"?new SK({className:re,style:ae}):new xK({className:re,style:ae})}).attr("className","spark ".concat(re))},function(oe){return oe.update(ae)},function(oe){return oe.remove()})},a.prototype.getColor=function(y){var x=this.attributes.color;return nd(x)?x[y%x.length]:Xi(x)?x.call(null,y):x},a.prototype.createScales=function(y){var x,b,z=this.attributes,ee=z.type,re=z.scale,ae=z.range,oe=ae===void 0?[]:ae,de=z.spacing,ge=this.containerShape,ye=ge.width,De=ge.height,ke=(0,Nt.CR)(X3(y),2),ze=ke[0],We=ke[1],Ve=new _m({domain:[(x=oe[0])!==null&&x!==void 0?x:ze,(b=oe[1])!==null&&b!==void 0?b:We],range:[De,De*(1-re)]});return ee==="line"?{type:ee,x:new _m({domain:[0,y[0].length-1],range:[0,ye]}),y:Ve}:{type:ee,x:new _b({domain:y[0].map(function(Ze,Ye){return Ye}),range:[0,ye],paddingInner:de,paddingOuter:de/2,align:.5}),y:Ve}},a.tag="sparkline",a}(pu),q3={fill:"#fff",lineWidth:1,radius:2,size:10,stroke:"#bfbfbf",strokeOpacity:1,zIndex:0},$3={fill:"#000",fillOpacity:.45,fontSize:12,textAlign:"center",textBaseline:"middle",zIndex:1},eI={x:0,y:0,orientation:"horizontal",showLabel:!0,type:"start"},qf=wf({foreground:"foreground",handle:"handle",selection:"selection",sparkline:"sparkline",sparklineGroup:"sparkline-group",track:"track",brushArea:"brush-area"},"slider"),qd=wf({labelGroup:"label-group",label:"label",iconGroup:"icon-group",icon:"icon",iconRect:"icon-rect",iconLine:"icon-line"},"handle"),LK=function(E){(0,Nt.ZT)(a,E);function a(){return E!==null&&E.apply(this,arguments)||this}return a.prototype.render=function(y,x){var b=y.x,z=y.y,ee=y.size,re=ee===void 0?10:ee,ae=y.radius,oe=ae===void 0?re/4:ae,de=y.orientation,ge=y.classNamePrefix,ye=(0,Nt._T)(y,["x","y","size","radius","orientation","classNamePrefix"]),De=re,ke=De*2.4,ze=ge?"".concat(qd.iconRect.name," ").concat(ge,"handle-icon-rect"):qd.iconRect.name,We=function(ht){return ge?"".concat(qd.iconLine,"-").concat(ht," ").concat(ge,"handle-icon-line"):"".concat(qd.iconLine,"-").concat(ht)},Ve=Ji(x).maybeAppendByClassName(qd.iconRect,"rect").attr("className",ze).styles((0,Nt.pi)((0,Nt.pi)({},ye),{width:De,height:ke,radius:oe,x:b-De/2,y:z-ke/2,transformOrigin:"center"})),Ze=b+1/3*De-De/2,Ye=b+2/3*De-De/2,et=z+1/4*ke-ke/2,st=z+3/4*ke-ke/2;Ve.maybeAppendByClassName("".concat(qd.iconLine,"-1"),"line").attr("className",We(1)).styles((0,Nt.pi)({x1:Ze,x2:Ze,y1:et,y2:st},ye)),Ve.maybeAppendByClassName("".concat(qd.iconLine,"-2"),"line").attr("className",We(2)).styles((0,Nt.pi)({x1:Ye,x2:Ye,y1:et,y2:st},ye)),de==="vertical"&&(Ve.node().style.transform="rotate(90)")},a}(pu),BK=function(E){(0,Nt.ZT)(a,E);function a(y){return E.call(this,y,eI)||this}return a.prototype.renderLabel=function(y){var x=this,b=this.attributes,z=b.x,ee=b.y,re=b.showLabel,ae=cs(this.attributes,"label"),oe=ae.x,de=oe===void 0?0:oe,ge=ae.y,ye=ge===void 0?0:ge,De=ae.transform,ke=ae.transformOrigin,ze=(0,Nt._T)(ae,["x","y","transform","transformOrigin"]),We=(0,Nt.CR)(Ah(ze,[]),2),Ve=We[0],Ze=We[1],Ye=Ji(y).maybeAppendByClassName(qd.labelGroup,"g").styles(Ze),et=(0,Nt.pi)((0,Nt.pi)({},$3),Ve),st=et.text,ht=(0,Nt._T)(et,["text"]);cd(!!re,Ye,function(mt){x.label=mt.maybeAppendByClassName(qd.label,"text").styles((0,Nt.pi)((0,Nt.pi)({},ht),{x:z+de,y:ee+ye,transform:De,transformOrigin:ke,text:"".concat(st)})),x.label.on("mousedown",function(dt){dt.stopPropagation()}),x.label.on("touchstart",function(dt){dt.stopPropagation()})})},a.prototype.renderIcon=function(y){var x=this.attributes,b=x.x,z=x.y,ee=x.orientation,re=x.type,ae=x.classNamePrefix,oe=(0,Nt.pi)((0,Nt.pi)({x:b,y:z,orientation:ee,classNamePrefix:ae},q3),cs(this.attributes,"icon")),de=this.attributes.iconShape,ge=de===void 0?function(){return new LK({style:oe})}:de,ye=Ji(y).maybeAppendByClassName(qd.iconGroup,"g");ye.selectAll(qd.icon.class).data([ge]).join(function(De){return De.append(typeof ge=="string"?ge:function(){return ge(re)}).attr("className",qd.icon.name)},function(De){return De.update(oe)},function(De){return De.remove()})},a.prototype.render=function(y,x){this.renderIcon(x),this.renderLabel(x)},a}(pu),NK=function(E){(0,Nt.ZT)(a,E);function a(y){var x=E.call(this,y,(0,Nt.pi)((0,Nt.pi)((0,Nt.pi)({x:0,y:0,animate:{duration:100,fill:"both"},brushable:!0,formatter:function(b){return b.toString()},handleSpacing:2,orientation:"horizontal",padding:0,autoFitLabel:!0,scrollable:!0,selectionFill:"#5B8FF9",selectionFillOpacity:.45,selectionZIndex:2,showHandle:!0,showLabel:!0,slidable:!0,trackFill:"#416180",trackLength:200,trackOpacity:.05,trackSize:20,trackZIndex:-1,values:[0,1],type:"range",selectionType:"select",handleIconOffset:0},ov(eI,"handle")),ov(q3,"handleIcon")),ov($3,"handleLabel")))||this;return x.range=[0,1],x.onDragStart=function(b){return function(z){z.stopPropagation(),x.target=b,x.prevPos=x.getOrientVal(j3(z));var ee=x.availableSpace,re=ee.x,ae=ee.y,oe=x.getBBox(),de=oe.x,ge=oe.y;x.selectionStartPos=x.getRatio(x.prevPos-x.getOrientVal([re,ae])-x.getOrientVal([+de,+ge])),x.selectionWidth=0,document.addEventListener("pointermove",x.onDragging),document.addEventListener("pointerup",x.onDragEnd)}},x.onDragging=function(b){var z=x.attributes,ee=z.slidable,re=z.brushable,ae=z.type;b.stopPropagation();var oe=x.getOrientVal(j3(b)),de=oe-x.prevPos;if(de){var ge=x.getRatio(de);switch(x.target){case"start":ee&&x.setValuesOffset(ge);break;case"end":ee&&x.setValuesOffset(0,ge);break;case"selection":ee&&x.setValuesOffset(ge,ge);break;case"track":if(!re)return;x.selectionWidth+=ge,ae==="range"?x.innerSetValues([x.selectionStartPos,x.selectionStartPos+x.selectionWidth].sort(),!0):x.innerSetValues([0,x.selectionStartPos+x.selectionWidth],!0);break;default:break}x.prevPos=oe}},x.onDragEnd=function(){document.removeEventListener("pointermove",x.onDragging),document.removeEventListener("pointermove",x.onDragging),document.removeEventListener("pointerup",x.onDragEnd),x.target="",x.updateHandlesPosition(!1)},x.onValueChange=function(b){var z=x.attributes,ee=z.onChange,re=z.type,ae=re==="range"?b:b[1],oe=re==="range"?x.getValues():x.getValues()[1],de=new Wu("valuechange",{detail:{oldValue:ae,value:oe}});x.dispatchEvent(de),ee==null||ee(oe)},x.selectionStartPos=0,x.selectionWidth=0,x.prevPos=0,x.target="",x}return Object.defineProperty(a.prototype,"values",{get:function(){return this.attributes.values},set:function(y){this.attributes.values=this.clampValues(y)},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"sparklineStyle",{get:function(){var y=this.attributes.orientation;if(y!=="horizontal")return null;var x=cs(this.attributes,"sparkline");return(0,Nt.pi)((0,Nt.pi)({zIndex:0},this.availableSpace),x)},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"shape",{get:function(){var y=this.attributes,x=y.trackLength,b=y.trackSize,z=(0,Nt.CR)(this.getOrientVal([[x,b],[b,x]]),2),ee=z[0],re=z[1];return{width:ee,height:re}},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"availableSpace",{get:function(){var y=this.attributes,x=y.x,b=y.y,z=y.padding,ee=(0,Nt.CR)(Ec(z),4),re=ee[0],ae=ee[1],oe=ee[2],de=ee[3],ge=this.shape,ye=ge.width,De=ge.height;return{x:de,y:re,width:ye-(de+ae),height:De-(re+oe)}},enumerable:!1,configurable:!0}),a.prototype.getValues=function(){return this.values},a.prototype.setValues=function(y,x){y===void 0&&(y=[0,0]),x===void 0&&(x=!1),this.attributes.values=y;var b=x===!1?!1:this.attributes.animate;this.updateSelectionArea(b),this.updateHandlesPosition(b)},a.prototype.updateSelectionArea=function(y){var x=this.calcSelectionArea();this.foregroundGroup.selectAll(qf.selection.class).each(function(b,z){Mf(this,x[z],y)})},a.prototype.updateHandlesPosition=function(y){this.attributes.showHandle&&(this.startHandle&&Mf(this.startHandle,this.getHandleStyle("start"),y),this.endHandle&&Mf(this.endHandle,this.getHandleStyle("end"),y))},a.prototype.innerSetValues=function(y,x){y===void 0&&(y=[0,0]),x===void 0&&(x=!1);var b=this.values,z=this.clampValues(y);this.attributes.values=z,this.setValues(z),x&&this.onValueChange(b)},a.prototype.renderTrack=function(y){var x=this.attributes,b=x.x,z=x.y,ee=cs(this.attributes,"track");this.trackShape=Ji(y).maybeAppendByClassName(qf.track,"rect").styles((0,Nt.pi)((0,Nt.pi)({x:b,y:z},this.shape),ee))},a.prototype.renderBrushArea=function(y){var x=this.attributes,b=x.x,z=x.y,ee=x.brushable;this.brushArea=Ji(y).maybeAppendByClassName(qf.brushArea,"rect").styles((0,Nt.pi)({x:b,y:z,fill:"transparent",cursor:ee?"crosshair":"default"},this.shape))},a.prototype.renderSparkline=function(y){var x=this,b=this.attributes,z=b.x,ee=b.y,re=b.orientation,ae=Ji(y).maybeAppendByClassName(qf.sparklineGroup,"g");cd(re==="horizontal",ae,function(oe){var de=(0,Nt.pi)((0,Nt.pi)({},x.sparklineStyle),{x:z,y:ee});oe.maybeAppendByClassName(qf.sparkline,function(){return new TK({style:de})}).update(de)})},a.prototype.renderHandles=function(){var y=this,x,b=this.attributes,z=b.showHandle,ee=b.type,re=ee==="range"?["start","end"]:["end"],ae=z?re:[],oe=this;(x=this.foregroundGroup)===null||x===void 0||x.selectAll(qf.handle.class).data(ae.map(function(de){return{type:de}}),function(de){return de.type}).join(function(de){return de.append(function(ge){var ye=ge.type;return new BK({style:y.getHandleStyle(ye)})}).each(function(ge){var ye=ge.type;this.attr("class","".concat(qf.handle.name," ").concat(ye,"-handle"));var De="".concat(ye,"Handle");oe[De]=this,this.addEventListener("pointerdown",oe.onDragStart(ye))})},function(de){return de.each(function(ge){var ye=ge.type;this.update(oe.getHandleStyle(ye))})},function(de){return de.each(function(ge){var ye=ge.type,De="".concat(ye,"Handle");oe[De]=void 0}).remove()})},a.prototype.renderSelection=function(y){var x=this.attributes,b=x.x,z=x.y,ee=x.type,re=x.selectionType;this.foregroundGroup=Ji(y).maybeAppendByClassName(qf.foreground,"g");var ae=cs(this.attributes,"selection"),oe=function(ge){return ge.style("visibility",function(ye){return ye.show?"visible":"hidden"}).style("cursor",function(ye){return re==="select"?"grab":re==="invert"?"crosshair":"default"}).styles((0,Nt.pi)((0,Nt.pi)({},ae),{transform:"translate(".concat(b,", ").concat(z,")")}))},de=this;this.foregroundGroup.selectAll(qf.selection.class).data(ee==="value"?[]:this.calcSelectionArea().map(function(ge,ye){return{style:(0,Nt.pi)({},ge),index:ye,show:re==="select"?ye===1:ye!==1}}),function(ge){return ge.index}).join(function(ge){return ge.append("rect").attr("className",qf.selection.name).call(oe).each(function(ye,De){var ke=this;De===1?(de.selectionShape=Ji(this),this.on("pointerdown",function(ze){ke.attr("cursor","grabbing"),de.onDragStart("selection")(ze)}),de.dispatchCustomEvent(this,"pointerenter","selectionMouseenter"),de.dispatchCustomEvent(this,"pointerleave","selectionMouseleave"),de.dispatchCustomEvent(this,"click","selectionClick"),this.addEventListener("pointerdown",function(){ke.attr("cursor","grabbing")}),this.addEventListener("pointerup",function(){ke.attr("cursor","pointer")}),this.addEventListener("pointerover",function(){ke.attr("cursor","pointer")})):this.on("pointerdown",de.onDragStart("track"))})},function(ge){return ge.call(oe)},function(ge){return ge.remove()}),this.updateSelectionArea(!1),this.renderHandles()},a.prototype.render=function(y,x){this.renderTrack(x),this.renderSparkline(x),this.renderBrushArea(x),this.renderSelection(x)},a.prototype.clampValues=function(y,x){var b;x===void 0&&(x=4);var z=(0,Nt.CR)(this.range,2),ee=z[0],re=z[1],ae=(0,Nt.CR)(this.getValues().map(function(We){return Sb(We,x)}),2),oe=ae[0],de=ae[1],ge=Array.isArray(y)?y:[oe,y!=null?y:de],ye=(0,Nt.CR)((ge||[oe,de]).map(function(We){return Sb(We,x)}),2),De=ye[0],ke=ye[1];if(this.attributes.type==="value")return[0,gu(ke,ee,re)];De>ke&&(b=(0,Nt.CR)([ke,De],2),De=b[0],ke=b[1]);var ze=ke-De;return ze>re-ee?[ee,re]:De<ee?oe===ee&&de===ke?[ee,ke]:[ee,ze+ee]:ke>re?de===re&&oe===De?[De,re]:[re-ze,re]:[De,ke]},a.prototype.calcSelectionArea=function(y){var x=(0,Nt.CR)(this.clampValues(y),2),b=x[0],z=x[1],ee=this.availableSpace,re=ee.x,ae=ee.y,oe=ee.width,de=ee.height;return this.getOrientVal([[{y:ae,height:de,x:re,width:b*oe},{y:ae,height:de,x:b*oe+re,width:(z-b)*oe},{y:ae,height:de,x:z*oe,width:(1-z)*oe}],[{x:re,width:oe,y:ae,height:b*de},{x:re,width:oe,y:b*de+ae,height:(z-b)*de},{x:re,width:oe,y:z*de,height:(1-z)*de}]])},a.prototype.calcHandlePosition=function(y){var x=this.attributes.handleIconOffset,b=this.availableSpace,z=b.x,ee=b.y,re=b.width,ae=b.height,oe=(0,Nt.CR)(this.clampValues(),2),de=oe[0],ge=oe[1],ye=y==="start"?-x:x,De=(y==="start"?de:ge)*this.getOrientVal([re,ae])+ye;return{x:z+this.getOrientVal([De,re/2]),y:ee+this.getOrientVal([ae/2,De])}},a.prototype.inferTextStyle=function(y){var x=this.attributes.orientation;return x==="horizontal"?{}:y==="start"?{transformOrigin:"left center",transform:"rotate(90)",textAlign:"start"}:y==="end"?{transformOrigin:"right center",transform:"rotate(90)",textAlign:"end"}:{}},a.prototype.calcHandleText=function(y){var x,b=this.attributes,z=b.type,ee=b.orientation,re=b.formatter,ae=b.autoFitLabel,oe=cs(this.attributes,"handle"),de=cs(oe,"label"),ge=oe.spacing,ye=this.getHandleSize(),De=this.clampValues(),ke=y==="start"?De[0]:De[1],ze=re(ke),We=new BS({style:(0,Nt.pi)((0,Nt.pi)((0,Nt.pi)({},de),this.inferTextStyle(y)),{text:ze})}),Ve=We.getBBox(),Ze=Ve.width,Ye=Ve.height;if(We.destroy(),!ae){if(z==="value")return{text:ze,x:0,y:-Ye-ge};var et=ge+ye+(ee==="horizontal"?Ze/2:0);return x={text:ze},x[ee==="horizontal"?"x":"y"]=y==="start"?-et:et,x}var st=0,ht=0,mt=this.availableSpace,dt=mt.width,Ot=mt.height,_t=this.calcSelectionArea()[1],wt=_t.x,$t=_t.y,gn=_t.width,Xt=_t.height,Tn=ge+ye;if(ee==="horizontal"){var er=Tn+Ze/2;if(y==="start"){var En=wt-Tn-Ze;st=En>0?-er:er}else{var yn=dt-wt-gn-Tn>Ze;st=yn?er:-er}}else{var Cn=Tn,qn=Ye+Tn;y==="start"?ht=$t-ye>Ye?-qn:Cn:ht=Ot-($t+Xt)-ye>Ye?qn:-Cn}return{x:st,y:ht,text:ze}},a.prototype.getHandleLabelStyle=function(y){var x=cs(this.attributes,"handleLabel");return(0,Nt.pi)((0,Nt.pi)((0,Nt.pi)({},x),this.calcHandleText(y)),this.inferTextStyle(y))},a.prototype.getHandleIconStyle=function(){var y=this.attributes.handleIconShape,x=cs(this.attributes,"handleIcon"),b=this.getOrientVal(["ew-resize","ns-resize"]),z=this.getHandleSize();return(0,Nt.pi)({cursor:b,shape:y,size:z},x)},a.prototype.getHandleStyle=function(y){var x=this.attributes,b=x.x,z=x.y,ee=x.showLabel,re=x.showLabelOnInteraction,ae=x.orientation,oe=this.calcHandlePosition(y),de=oe.x,ge=oe.y,ye=this.calcHandleText(y),De=ee;return!ee&&re&&(this.target?De=!0:De=!1),(0,Nt.pi)((0,Nt.pi)((0,Nt.pi)({},ov(this.getHandleIconStyle(),"icon")),ov((0,Nt.pi)((0,Nt.pi)({},this.getHandleLabelStyle(y)),ye),"label")),{transform:"translate(".concat(de+b,", ").concat(ge+z,")"),orientation:ae,showLabel:De,type:y,zIndex:3})},a.prototype.getHandleSize=function(){var y=this.attributes,x=y.handleIconSize,b=y.width,z=y.height;return x||Math.floor((this.getOrientVal([+z,+b])+4)/2.4)},a.prototype.getOrientVal=function(y){var x=(0,Nt.CR)(y,2),b=x[0],z=x[1],ee=this.attributes.orientation;return ee==="horizontal"?b:z},a.prototype.setValuesOffset=function(y,x){x===void 0&&(x=0);var b=this.attributes.type,z=(0,Nt.CR)(this.getValues(),2),ee=z[0],re=z[1],ae=b==="range"?y:0,oe=[ee+ae,re+x].sort();this.innerSetValues(oe,!0)},a.prototype.getRatio=function(y){var x=this.availableSpace,b=x.width,z=x.height;return y/this.getOrientVal([b,z])},a.prototype.dispatchCustomEvent=function(y,x,b){var z=this;y.on(x,function(ee){ee.stopPropagation(),z.dispatchEvent(new Wu(b,{detail:ee}))})},a.prototype.bindEvents=function(){this.addEventListener("wheel",this.onScroll);var y=this.brushArea;this.dispatchCustomEvent(y,"click","trackClick"),this.dispatchCustomEvent(y,"pointerenter","trackMouseenter"),this.dispatchCustomEvent(y,"pointerleave","trackMouseleave"),y.on("pointerdown",this.onDragStart("track"))},a.prototype.onScroll=function(y){var x=this.attributes.scrollable;if(x){var b=y.deltaX,z=y.deltaY,ee=z||b,re=this.getRatio(ee);this.setValuesOffset(re,re)}},a.tag="slider",a}(pu),RK={backgroundFill:"#262626",backgroundLineCap:"round",backgroundLineWidth:1,backgroundStroke:"#333",backgroundZIndex:-1,formatter:function(E){return E.toString()},labelFill:"#fff",labelFontSize:12,labelTextBaseline:"middle",padding:[2,4],position:"right",radius:0,zIndex:999},Wb=wf({background:"background",labelGroup:"label-group",label:"label"},"indicator"),FK=function(E){(0,Nt.ZT)(a,E);function a(y){var x=E.call(this,y,RK)||this;return x.point=[0,0],x.group=x.appendChild(new qu({})),x.isMutationObserved=!0,x}return a.prototype.renderBackground=function(){if(this.label){var y=this.attributes,x=y.position,b=y.padding,z=(0,Nt.CR)(Ec(b),4),ee=z[0],re=z[1],ae=z[2],oe=z[3],de=this.label.node().getLocalBounds(),ge=de.min,ye=de.max,De=new Tc(ge[0]-oe,ge[1]-ee,ye[0]+re-ge[0]+oe,ye[1]+ae-ge[1]+ee),ke=this.getPath(x,De),ze=cs(this.attributes,"background");this.background=Ji(this.group).maybeAppendByClassName(Wb.background,"path").styles((0,Nt.pi)((0,Nt.pi)({},ze),{d:ke})),this.group.appendChild(this.label.node())}},a.prototype.renderLabel=function(){var y=this.attributes,x=y.formatter,b=y.labelText,z=cs(this.attributes,"label"),ee=(0,Nt.CR)(Ah(z),2),re=ee[0],ae=ee[1],oe=re.text,de=(0,Nt._T)(re,["text"]);if(this.label=Ji(this.group).maybeAppendByClassName(Wb.labelGroup,"g").styles(ae),!!b){var ge=this.label.maybeAppendByClassName(Wb.label,function(){return xh(x(b))}).style("text",x(b).toString());ge.selectAll("text").styles(de)}},a.prototype.adjustLayout=function(){var y=(0,Nt.CR)(this.point,2),x=y[0],b=y[1],z=this.attributes,ee=z.x,re=z.y;this.group.attr("transform","translate(".concat(ee-x,", ").concat(re-b,")"))},a.prototype.getPath=function(y,x){var b=this.attributes.radius,z=x.x,ee=x.y,re=x.width,ae=x.height,oe=[["M",z+b,ee],["L",z+re-b,ee],["A",b,b,0,0,1,z+re,ee+b],["L",z+re,ee+ae-b],["A",b,b,0,0,1,z+re-b,ee+ae],["L",z+b,ee+ae],["A",b,b,0,0,1,z,ee+ae-b],["L",z,ee+b],["A",b,b,0,0,1,z+b,ee],["Z"]],de={top:4,right:6,bottom:0,left:2},ge=de[y],ye=this.createCorner([oe[ge].slice(-2),oe[ge+1].slice(-2)]);return oe.splice.apply(oe,(0,Nt.ev)([ge+1,1],(0,Nt.CR)(ye),!1)),oe[0][0]="M",oe},a.prototype.createCorner=function(y,x){x===void 0&&(x=10);var b=.8,z=pH.apply(void 0,(0,Nt.ev)([],(0,Nt.CR)(y),!1)),ee=(0,Nt.CR)(y,2),re=(0,Nt.CR)(ee[0],2),ae=re[0],oe=re[1],de=(0,Nt.CR)(ee[1],2),ge=de[0],ye=de[1],De=(0,Nt.CR)(z?[ge-ae,[ae,ge]]:[ye-oe,[oe,ye]],2),ke=De[0],ze=(0,Nt.CR)(De[1],2),We=ze[0],Ve=ze[1],Ze=ke/2,Ye=ke/Math.abs(ke),et=x*Ye,st=et/2,ht=et*Math.sqrt(3)/2*b,mt=(0,Nt.CR)([We,We+Ze-st,We+Ze,We+Ze+st,Ve],5),dt=mt[0],Ot=mt[1],_t=mt[2],wt=mt[3],$t=mt[4];return z?(this.point=[_t,oe-ht],[["L",dt,oe],["L",Ot,oe],["L",_t,oe-ht],["L",wt,oe],["L",$t,oe]]):(this.point=[ae+ht,_t],[["L",ae,dt],["L",ae,Ot],["L",ae+ht,_t],["L",ae,wt],["L",ae,$t]])},a.prototype.applyVisibility=function(){var y=this.attributes.visibility;y==="hidden"?Pf(this):Lm(this)},a.prototype.bindEvents=function(){this.label.on(Bs.BOUNDS_CHANGED,this.renderBackground)},a.prototype.render=function(){this.renderLabel(),this.renderBackground(),this.adjustLayout(),this.applyVisibility()},a}(pu),kK=function(E){(0,Nt.ZT)(a,E);function a(y){var x=E.call(this,Hu({},a.defaultOptions,y))||this;return x.hoverColor="#f5f5f5",x.selectedColor="#e6f7ff",x.background=x.appendChild(new gc({})),x.label=x.background.appendChild(new qu({})),x}return Object.defineProperty(a.prototype,"padding",{get:function(){return Ec(this.style.padding)},enumerable:!1,configurable:!0}),a.prototype.renderLabel=function(){var y=this.style,x=y.label,b=y.value,z=cs(this.attributes,"label");Ji(this.label).maybeAppend(".label",function(){return xh(x)}).attr("className","label").styles(z),this.label.attr("__data__",b)},a.prototype.renderBackground=function(){var y=this.label.getBBox(),x=(0,Nt.CR)(this.padding,4),b=x[0],z=x[1],ee=x[2],re=x[3],ae=y.width,oe=y.height,de=ae+re+z,ge=oe+b+ee,ye=cs(this.attributes,"background"),De=this.style,ke=De.width,ze=ke===void 0?0:ke,We=De.height,Ve=We===void 0?0:We,Ze=De.selected;this.background.attr((0,Nt.pi)((0,Nt.pi)({},ye),{width:Math.max(de,ze),height:Math.max(ge,Ve),fill:Ze?this.selectedColor:"#fff"})),this.label.attr({transform:"translate(".concat(re,", ").concat((ge-oe)/2,")")})},a.prototype.render=function(){this.renderLabel(),this.renderBackground()},a.prototype.bindEvents=function(){var y=this;this.addEventListener("pointerenter",function(){y.style.selected||y.background.attr("fill",y.hoverColor)}),this.addEventListener("pointerleave",function(){y.style.selected||y.background.attr("fill",y.style.backgroundFill)});var x=this;this.addEventListener("click",function(){var b=y.style,z=b.label,ee=b.value,re=b.onClick;re==null||re(ee,{label:z,value:ee},x)})},a.defaultOptions={style:{value:"",label:"",cursor:"pointer"}},a}(pu),_K=function(E){(0,Nt.ZT)(a,E);function a(y){var x,b,z=E.call(this,Hu({},a.defaultOptions,y))||this;z.currentValue=(x=a.defaultOptions.style)===null||x===void 0?void 0:x.defaultValue,z.isPointerInSelect=!1,z.select=z.appendChild(new gc({className:"select",style:{cursor:"pointer",width:0,height:0}})),z.dropdown=z.appendChild(new gc({className:"dropdown"}));var ee=z.style.defaultValue;return ee&&(!((b=z.style.options)===null||b===void 0)&&b.some(function(re){return re.value===ee}))&&(z.currentValue=ee),z}return a.prototype.setValue=function(y){this.currentValue=y,this.render()},a.prototype.getValue=function(){return this.currentValue},Object.defineProperty(a.prototype,"dropdownPadding",{get:function(){return Ec(this.style.dropdownPadding)},enumerable:!1,configurable:!0}),a.prototype.renderSelect=function(){var y=this,x,b=this.style,z=b.x,ee=b.y,re=b.width,ae=b.height,oe=b.bordered,de=b.showDropdownIcon,ge=cs(this.attributes,"select"),ye=cs(this.attributes,"placeholder");this.select.attr((0,Nt.pi)((0,Nt.pi)({x:z,y:ee,width:re,height:ae},ge),{fill:"#fff",strokeWidth:oe?1:0}));var De=this.dropdownPadding,ke=10;de&&Ji(this.select).maybeAppend(".dropdown-icon","path").style("d","M-5,-3.5 L0,3.5 L5,-3.5").style("transform","translate(".concat(z+re-ke-De[1]-De[3],", ").concat(ee+ae/2,")")).style("lineWidth",1).style("stroke",this.select.style.stroke);var ze=(x=this.style.options)===null||x===void 0?void 0:x.find(function(Ye){return Ye.value===y.currentValue}),We=(0,Nt.pi)({x:z+De[3]},ye);Ji(this.select).selectAll(".placeholder").data(ze?[]:[1]).join(function(Ye){return Ye.append("text").attr("className","placeholder").styles(We).style("y",function(){var et=this.getBBox();return ee+(ae-et.height)/2})},function(Ye){return Ye.styles(We)},function(Ye){return Ye.remove()});var Ve=cs(this.attributes,"optionLabel"),Ze=(0,Nt.pi)({x:z+De[3]},Ve);Ji(this.select).selectAll(".value").data(ze?[ze]:[]).join(function(Ye){return Ye.append(function(et){return xh(et.label)}).attr("className","value").styles(Ze).style("y",function(){var et=this.getBBox();return ee+(ae-et.height)/2})},function(Ye){return Ye.styles(Ze)},function(Ye){return Ye.remove()})},a.prototype.renderDropdown=function(){var y=this,x,b,z=this.style,ee=z.x,re=z.y,ae=z.width,oe=z.height,de=z.options,ge=z.onSelect,ye=z.open,De=cs(this.attributes,"dropdown"),ke=cs(this.attributes,"option"),ze=this.dropdownPadding;Ji(this.dropdown).maybeAppend(".dropdown-container","g").attr("className","dropdown-container").selectAll(".dropdown-item").data(de,function(Ze){return Ze.value}).join(function(Ze){return Ze.append(function(Ye){return new kK({className:"dropdown-item",style:(0,Nt.pi)((0,Nt.pi)((0,Nt.pi)({},Ye),ke),{width:ae-ze[1]-ze[3],selected:Ye.value===y.currentValue,onClick:function(et,st,ht){y.setValue(et),ge==null||ge(et,st,ht),y.dispatchEvent(new Wu("change",{detail:{value:et,option:st,item:ht}})),Pf(y.dropdown)}})})}).each(function(Ye,et){var st,ht=(st=this.parentNode)===null||st===void 0?void 0:st.children,mt=ht.reduce(function(dt,Ot,_t){return _t<et&&(dt+=Ot.getBBox().height),dt},0);this.attr("transform","translate(".concat(ze[3],", ").concat(ze[0]+mt,")"))})},function(Ze){return Ze.update(function(Ye){return{selected:Ye.value===y.currentValue}})},function(Ze){return Ze.remove()});var We=(b=(x=this.dropdown.getElementsByClassName("dropdown-container"))===null||x===void 0?void 0:x[0])===null||b===void 0?void 0:b.getBBox(),Ve=De.spacing;this.dropdown.attr((0,Nt.pi)({transform:"translate(".concat(ee,", ").concat(re+oe+Ve,")"),width:We.width+ze[1]+ze[3],height:We.height+ze[0]+ze[2]},De)),!ye&&Pf(this.dropdown)},a.prototype.render=function(){this.renderSelect(),this.renderDropdown()},a.prototype.bindEvents=function(){var y=this;this.addEventListener("click",function(x){x.stopPropagation()}),this.select.addEventListener("click",function(){y.dropdown.style.visibility==="visible"?Pf(y.dropdown):Lm(y.dropdown)}),this.addEventListener("pointerenter",function(){y.isPointerInSelect=!0}),this.addEventListener("pointerleave",function(){y.isPointerInSelect=!1}),document==null||document.addEventListener("click",function(){y.isPointerInSelect||Pf(y.dropdown)})},a.defaultOptions={style:{x:0,y:0,width:140,height:32,options:[],bordered:!0,defaultValue:"",selectRadius:8,selectStroke:"#d9d9d9",showDropdownIcon:!0,placeholderText:"\u8BF7\u9009\u62E9",placeholderFontSize:12,placeholderTextBaseline:"top",placeholderFill:"#c2c2c2",dropdownFill:"#fff",dropdownStroke:"#d9d9d9",dropdownRadius:8,dropdownShadowBlur:4,dropdownShadowColor:"rgba(0, 0, 0, 0.08)",dropdownPadding:8,dropdownSpacing:10,optionPadding:[8,12],optionFontSize:12,optionTextBaseline:"top",optionBackgroundFill:"#fff",optionBackgroundRadius:4,optionLabelFontSize:12,optionLabelTextBaseline:"top"}},a}(pu),Df=function(E){(0,Nt.ZT)(a,E);function a(y){var x=E.call(this,Hu({},{style:{backgroundOpacity:a.backgroundOpacities.default}},a.defaultOptions,y))||this;return x.showBackground=!0,x.background=x.appendChild(new gc({})),x.icon=x.appendChild(new qu({})),x}return Object.defineProperty(a.prototype,"label",{get:function(){return"BaseIcon"},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"lineWidth",{get:function(){return Math.log10(this.attributes.size)},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"padding",{get:function(){return Ec(this.attributes.size/5)},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"iconSize",{get:function(){var y=this.attributes.size,x=(0,Nt.CR)(this.padding,4),b=x[0],z=x[1],ee=x[2],re=x[3];return Math.max(y-Math.max(re+z,b+ee),this.lineWidth*2+1)},enumerable:!1,configurable:!0}),a.prototype.renderBackground=function(){var y=this.attributes,x=y.x,b=y.y,z=y.size,ee=z/2,re=cs(this.attributes,"background");this.background.attr((0,Nt.pi)({x:x-ee,y:b-ee,width:z,height:z},re))},a.prototype.showIndicator=function(){if(this.label){var y=this.attributes.size,x=this.background.getBBox(),b=x.x,z=x.y;this.indicator.update({x:b+y/2,y:z-5,labelText:this.label,visibility:"visible"})}},a.prototype.hideIndicator=function(){this.indicator.update({visibility:"hidden"})},a.prototype.connectedCallback=function(){var y;E.prototype.connectedCallback.call(this);var x=this.attributes.size,b=this.background.getBBox(),z=b.x,ee=b.y,re=(y=this.ownerDocument)===null||y===void 0?void 0:y.defaultView;re&&(this.indicator=re.appendChild(new FK({style:{x:z+x/2,y:ee-x/2,visibility:"hidden",position:"top",radius:3,zIndex:100}})))},a.prototype.disconnectedCallback=function(){this.indicator.destroy()},a.prototype.render=function(){this.renderIcon(),this.showBackground&&this.renderBackground()},a.prototype.bindEvents=function(){var y=this,x=this.attributes.onClick;if(this.addEventListener("click",function(){x==null||x(y)}),this.showBackground){var b=function(){return y.background.attr({opacity:a.backgroundOpacities.default})},z=function(){return y.background.attr({opacity:a.backgroundOpacities.hover})},ee=function(){return y.background.attr({opacity:a.backgroundOpacities.active})};this.addEventListener("pointerenter",function(){z(),y.showIndicator()}),this.addEventListener("pointerleave",function(){b(),y.hideIndicator()}),this.addEventListener("pointerdown",function(){ee()}),this.addEventListener("pointerup",function(){b()})}},a.tag="IconBase",a.defaultOptions={style:{x:0,y:0,size:10,color:"#565758",backgroundRadius:4,backgroundFill:"#e2e2e2"}},a.backgroundOpacities={default:0,hover:.8,active:1},a}(pu),jm=function(E,a){return a===void 0&&(a="#565758"),new Cd({style:{fill:a,d:"M ".concat(E,",").concat(E," L -").concat(E,",0 L ").concat(E,",-").concat(E," Z"),transformOrigin:"center"}})},zK=function(E){(0,Nt.ZT)(a,E);function a(){return E!==null&&E.apply(this,arguments)||this}return a.prototype.arcPath=function(y,x,b){var z=(0,Nt.CR)([b,b],2),ee=z[0],re=z[1],ae=function(ze){return[y+b*Math.cos(ze),x+b*Math.sin(ze)]},oe=(0,Nt.CR)(ae(-5/4*Math.PI),2),de=oe[0],ge=oe[1],ye=(0,Nt.CR)(ae(1/4*Math.PI),2),De=ye[0],ke=ye[1];return"M".concat(de,",").concat(ge,",A").concat(ee,",").concat(re,",0,1,1,").concat(De,",").concat(ke)},Object.defineProperty(a.prototype,"label",{get:function(){return"\u91CD\u7F6E"},enumerable:!1,configurable:!0}),a.prototype.renderIcon=function(){var y=this.attributes,x=y.x,b=y.y,z=y.color,ee=this.iconSize,re=this.lineWidth,ae=re+.5;Ji(this.icon).maybeAppend(".reset","path").styles({stroke:z,lineWidth:re,d:this.arcPath(x,b,ee/2-re),markerStart:jm(ae,z)})},a}(Df),jK=function(E){(0,Nt.ZT)(a,E);function a(){return E!==null&&E.apply(this,arguments)||this}return Object.defineProperty(a.prototype,"label",{get:function(){return"\u5FEB\u9000"},enumerable:!1,configurable:!0}),a.prototype.renderIcon=function(){var y=this.attributes,x=y.x,b=y.y,z=y.color,ee=this.iconSize,re=ee/2,ae=ee/2/Math.pow(3,.5),oe=[[x,b],[x,b-ae],[x-re,b],[x,b+ae],[x,b],[x+re,b-ae],[x+re,b+ae],[x,b]];Ji(this.icon).maybeAppend(".backward","polygon").styles({points:oe,fill:z})},a}(Df),UK=function(E){(0,Nt.ZT)(a,E);function a(){return E!==null&&E.apply(this,arguments)||this}return Object.defineProperty(a.prototype,"label",{get:function(){return"\u5FEB\u8FDB"},enumerable:!1,configurable:!0}),a.prototype.renderIcon=function(){var y=this.attributes,x=y.x,b=y.y,z=y.color,ee=this.iconSize,re=ee/2,ae=ee/2/Math.pow(3,.5),oe=[[x,b],[x,b-ae],[x+re,b],[x,b+ae],[x,b],[x-re,b-ae],[x-re,b+ae],[x,b]];Ji(this.icon).maybeAppend(".forward","polygon").styles({points:oe,fill:z})},a}(Df),WK=function(E){(0,Nt.ZT)(a,E);function a(){return E!==null&&E.apply(this,arguments)||this}return Object.defineProperty(a.prototype,"label",{get:function(){return"\u64AD\u653E"},enumerable:!1,configurable:!0}),a.prototype.renderIcon=function(){var y=this.attributes,x=y.x,b=y.y,z=y.color,ee=this.iconSize,re=ee/3*Math.pow(3,.5)*.8,ae=[[x+re,b],[x-re/2,b-ee/2*.8],[x-re/2,b+ee/2*.8],[x+re,b]];Ji(this.icon).maybeAppend(".play","polygon").styles({points:ae,fill:z})},a}(Df),GK=function(E){(0,Nt.ZT)(a,E);function a(){return E!==null&&E.apply(this,arguments)||this}return Object.defineProperty(a.prototype,"label",{get:function(){return"\u6682\u505C"},enumerable:!1,configurable:!0}),a.prototype.renderIcon=function(){var y=this.attributes,x=y.x,b=y.y,z=y.color,ee=this.iconSize,re=ee/3,ae=[[x-re,b-ee/2],[x-re,b+ee/2],[x-re/2,b+ee/2],[x-re/2,b-ee/2],[x-re,b-ee/2],[x+re/2,b-ee/2],[x+re/2,b+ee/2],[x+re,b+ee/2],[x+re,b-ee/2]];Ji(this.icon).maybeAppend(".pause","polygon").styles({points:ae,fill:z})},a}(Df),HK=function(E){(0,Nt.ZT)(a,E);function a(){return E!==null&&E.apply(this,arguments)||this}return Object.defineProperty(a.prototype,"label",{get:function(){return"\u8303\u56F4\u65F6\u95F4"},enumerable:!1,configurable:!0}),a.prototype.renderIcon=function(){var y=this.attributes,x=y.x,b=y.y,z=y.color,ee=this,re=ee.iconSize,ae=ee.lineWidth,oe=ae;Ji(this.icon).maybeAppend(".left-line","line").styles({x1:x-re/2,y1:b-re/2,x2:x-re/2,y2:b+re/2,stroke:z,lineWidth:ae}),Ji(this.icon).maybeAppend(".right-line","line").styles({x1:x+re/2,y1:b-re/2,x2:x+re/2,y2:b+re/2,stroke:z,lineWidth:ae}),Ji(this.icon).maybeAppend(".left-arrow","line").styles({x1:x,y1:b,x2:x-re/2+oe*2,y2:b,stroke:z,lineWidth:ae,markerEnd:jm(ae*2,z)}),Ji(this.icon).maybeAppend(".right-arrow","line").styles({x1:x,y1:b,x2:x+re/2-oe*2,y2:b,stroke:z,lineWidth:ae,markerEnd:jm(ae*2,z)})},a}(Df),VK=function(E){(0,Nt.ZT)(a,E);function a(){return E!==null&&E.apply(this,arguments)||this}return Object.defineProperty(a.prototype,"label",{get:function(){return"\u5355\u4E00\u65F6\u95F4"},enumerable:!1,configurable:!0}),a.prototype.renderIcon=function(){var y=this.attributes,x=y.x,b=y.y,z=y.color,ee=this,re=ee.iconSize,ae=ee.lineWidth;Ji(this.icon).maybeAppend(".line","line").styles({x1:x,y1:b-re/2,x2:x,y2:b+re/2,stroke:z,lineWidth:ae});var oe=ae;Ji(this.icon).maybeAppend(".left-arrow","line").styles({x1:x-re/2-oe*2,y1:b,x2:x-oe*2,y2:b,stroke:z,lineWidth:ae,markerEnd:jm(ae*2,z)}),Ji(this.icon).maybeAppend(".right-arrow","line").styles({x1:x+re/2+oe*2,y1:b,x2:x+oe*2,y2:b,stroke:z,lineWidth:ae,markerEnd:jm(ae*2,z)})},a}(Df),tI=function(E){return[[-E/2,-E/2],[-E/2,E/2],[E/2,E/2]]},KK=function(E){(0,Nt.ZT)(a,E);function a(){return E!==null&&E.apply(this,arguments)||this}return Object.defineProperty(a.prototype,"label",{get:function(){return"\u6298\u7EBF\u56FE"},enumerable:!1,configurable:!0}),a.prototype.renderIcon=function(){var y=this.attributes,x=y.x,b=y.y,z=y.color,ee=this,re=ee.iconSize,ae=ee.lineWidth,oe=ae,de=(re-oe*2-ae)/4,ge=(re-oe*2-ae)/2,ye=(0,Nt.CR)([x-re/2+oe,b+re/2-oe*2],2),De=ye[0],ke=ye[1];Ji(this.icon).maybeAppend(".coordinate","polyline").styles({points:tI(re).map(function(ze){var We=(0,Nt.CR)(ze,2),Ve=We[0],Ze=We[1];return[Ve+x,Ze+b]}),stroke:z,lineWidth:ae}),Ji(this.icon).maybeAppend(".line","polyline").styles({points:[[De,ke],[De+de,ke-ge],[De+de*2,ke],[De+de*4,ke-ge*2]],stroke:z,lineWidth:ae})},a}(Df),ZK=function(E){(0,Nt.ZT)(a,E);function a(){return E!==null&&E.apply(this,arguments)||this}return Object.defineProperty(a.prototype,"label",{get:function(){return"\u6761\u5F62\u56FE"},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"data",{get:function(){return[1,4,2,4,3]},enumerable:!1,configurable:!0}),a.prototype.renderIcon=function(){var y=this.data,x=this.attributes,b=x.x,z=x.y,ee=x.color,re=this,ae=re.iconSize,oe=re.lineWidth,de=oe,ge=(ae-de)/y.length,ye=(ae-de*2)/4,De=(0,Nt.CR)([b-ae/2+de*2,z+ae/2-de],2),ke=De[0],ze=De[1];Ji(this.icon).maybeAppend(".coordinate","polyline").styles({points:tI(ae).map(function(We){var Ve=(0,Nt.CR)(We,2),Ze=Ve[0],Ye=Ve[1];return[Ze+b,Ye+z]}),stroke:ee,lineWidth:oe}),Ji(this.icon).maybeAppend(".bars","g").selectAll(".column").data(this.data.map(function(We,Ve){return{value:We,index:Ve}})).join(function(We){return We.append("line").attr("className","column").style("x1",function(Ve){var Ze=Ve.index;return ke+ge*Ze}).style("y1",ze).style("x2",function(Ve){var Ze=Ve.index;return ke+ge*Ze}).style("y2",function(Ve){var Ze=Ve.value;return ze-ye*Ze}).styles({y1:ze,stroke:ee,lineWidth:oe})})},a}(Df),QK=function(E){(0,Nt.ZT)(a,E);function a(y){var x=E.call(this,Hu({},{style:{color:"#d8d9d9"}},y))||this;return x.showBackground=!1,x}return a.prototype.renderIcon=function(){var y=this.attributes,x=y.x,b=y.y,z=y.color,ee=this,re=ee.iconSize,ae=ee.lineWidth;Ji(this.icon).maybeAppend(".split","line").styles({x1:x,y1:b-re/2,x2:x,y2:b+re/2,stroke:z,lineWidth:ae})},a}(Df),Hb=function(E){(0,Nt.ZT)(a,E);function a(){var y=E.apply(this,(0,Nt.ev)([],(0,Nt.CR)(arguments),!1))||this;return y.showBackground=!1,y}return Object.defineProperty(a.prototype,"padding",{get:function(){return Ec(0)},enumerable:!1,configurable:!0}),a.prototype.renderIcon=function(){var y=this.iconSize,x=this.attributes,b=x.x,z=x.y,ee=x.speed,re=ee===void 0?1:ee,ae=bS(this.attributes,["x","y","transform","transformOrigin","width","height","size","color","speed"]),oe=gu(y,20,1/0),de=20,ge=(0,Nt.pi)((0,Nt.pi)({},ae),{x:b-oe/2,y:z-de/2,width:oe,height:de,defaultValue:re,bordered:!1,showDropdownIcon:!1,selectRadius:2,dropdownPadding:this.padding,dropdownRadius:2,dropdownSpacing:y/5,placeholderFontSize:y/2,optionPadding:0,optionLabelFontSize:y/2,optionBackgroundRadius:1,options:[{label:"1x",value:1},{label:"1.5x",value:1.5},{label:"2x",value:2}]});Ji(this.icon).maybeAppend(".speed",function(){return new _K({style:ge})}).attr("className","speed").each(function(){this.update(ge)})},a.tag="SpeedSelect",a}(Df),Vb=function(E){(0,Nt.ZT)(a,E);function a(y){var x=E.call(this,y)||this;return x.icon=x.appendChild(new qu({})),x.currentType=x.attributes.type,x}return a.prototype.getType=function(){return this.currentType},a.prototype.render=function(){var y=this,x=this.attributes,b=x.onChange,z=(0,Nt._T)(x,["onChange"]);Ji(this.icon).selectAll(".icon").data([this.currentType]).join(function(ee){return ee.append(function(re){var ae,oe=(ae=y.toggles.find(function(de){var ge=(0,Nt.CR)(de,1),ye=ge[0];return ye===re}))===null||ae===void 0?void 0:ae[1];if(!oe)throw new Error("Invalid type: ".concat(re));return new oe({})}).attr("className","icon").styles(z,!1).update({})},function(ee){return ee.styles({restStyles:z}).update({})},function(ee){return ee.remove()})},a.prototype.bindEvents=function(){var y=this,x=this.attributes.onChange;this.addEventListener("click",function(b){b.preventDefault(),b.stopPropagation();var z=(y.toggles.findIndex(function(re){var ae=(0,Nt.CR)(re,1),oe=ae[0];return oe===y.currentType})+1)%y.toggles.length,ee=y.toggles[z][0];x==null||x(y.currentType),y.currentType=ee,y.render()})},a.tag="ToggleIcon",a}(pu),Kb=function(E){(0,Nt.ZT)(a,E);function a(y){var x=E.call(this,Hu({},{style:{type:"play"}},y))||this;return x.toggles=[["play",WK],["pause",GK]],x}return a}(Vb),Zb=function(E){(0,Nt.ZT)(a,E);function a(y){var x=E.call(this,Hu({},{style:{type:"range"}},y))||this;return x.toggles=[["range",HK],["value",VK]],x}return a}(Vb),Qb=function(E){(0,Nt.ZT)(a,E);function a(y){var x=E.call(this,Hu({},{style:{type:"column"}},y))||this;return x.toggles=[["line",KK],["column",ZK]],x}return a}(Vb),YK={reset:zK,speed:Hb,backward:jK,playPause:Kb,forward:UK,selectionType:Zb,chartType:Qb,split:QK},XK=function(E){(0,Nt.ZT)(a,E);function a(y){var x=E.call(this,Hu({},a.defaultOptions,y))||this;return x.background=x.appendChild(new gc({})),x.functions=x.appendChild(new qu({})),x}return Object.defineProperty(a.prototype,"padding",{get:function(){return Ec(this.attributes.padding)},enumerable:!1,configurable:!0}),a.prototype.renderBackground=function(){var y=this.style,x=y.x,b=y.y,z=y.width,ee=y.height,re=cs(this.attributes,"background");this.background.attr((0,Nt.pi)({x,y:b,width:z,height:ee},re))},a.prototype.renderFunctions=function(){var y=this,x,b=this.attributes,z=b.functions,ee=b.iconSize,re=b.iconSpacing,ae=b.x,oe=b.y,de=b.width,ge=b.height,ye=b.align,De=(0,Nt.CR)(this.padding,4),ke=De[1],ze=De[3],We=z.reduce(function(Ye,et){return Ye.length&&et.length?Ye.concat.apply(Ye,(0,Nt.ev)(["split"],(0,Nt.CR)(et),!1)):Ye.concat.apply(Ye,(0,Nt.ev)([],(0,Nt.CR)(et),!1))},[]),Ve=We.length*(ee+re)-re,Ze={left:ze+ee/2,center:(de-Ve)/2+ee/2,right:de-Ve-ze-ke+ee/2}[ye]||0;(x=this.speedSelect)===null||x===void 0||x.destroy(),this.functions.removeChildren(),We.forEach(function(Ye,et){var st,ht=YK[Ye],mt={x:ae+et*(ee+re)+Ze,y:oe+ge/2,size:ee};if(ht===Hb?(mt.speed=y.attributes.speed,mt.onSelect=function(Ot){return y.handleFunctionChange(Ye,{value:Ot})}):[Kb,Zb,Qb].includes(ht)?(mt.onChange=function(Ot){return y.handleFunctionChange(Ye,{value:Ot})},ht===Kb&&(mt.type=y.attributes.state==="play"?"pause":"play"),ht===Zb&&(mt.type=y.attributes.selectionType==="range"?"value":"range"),ht===Qb&&(mt.type=y.attributes.chartType==="line"?"column":"line")):mt.onClick=function(){return y.handleFunctionChange(Ye,{value:Ye})},ht===Hb){var dt=(st=y.ownerDocument)===null||st===void 0?void 0:st.defaultView;dt&&(y.speedSelect=new ht({style:(0,Nt.pi)((0,Nt.pi)({},mt),{zIndex:100})}),dt.appendChild(y.speedSelect))}else y.functions.appendChild(new ht({style:mt}))})},a.prototype.disconnectedCallback=function(){var y;E.prototype.disconnectedCallback.call(this),(y=this.speedSelect)===null||y===void 0||y.destroy()},a.prototype.render=function(){this.renderBackground(),this.renderFunctions()},a.prototype.handleFunctionChange=function(y,x){var b=this.attributes.onChange;b==null||b(y,x)},a.defaultOptions={style:{x:0,y:0,width:300,height:40,padding:0,align:"center",iconSize:25,iconSpacing:0,speed:1,state:"pause",chartType:"line",selectionType:"range",backgroundFill:"#fbfdff",backgroundStroke:"#ebedf0",functions:[["reset","speed"],["backward","playPause","forward"],["selectionType","chartType"]]}},a}(pu),JK=function(E){(0,Nt.ZT)(a,E);function a(y){var x=E.call(this,Hu({},a.defaultOptions,y))||this;return x.bindEvents(),x}return a.prototype.bindEvents=function(){var y=this;this.addEventListener("mouseenter",function(){y.attr("lineWidth",Math.ceil(+(y.style.r||0)/2))}),this.addEventListener("mouseleave",function(){y.attr("lineWidth",0)})},a.defaultOptions={style:{r:5,fill:"#3f7cf7",lineWidth:0,stroke:"#3f7cf7",strokeOpacity:.5,cursor:"pointer"}},a}(Hf),qK=function(E){(0,Nt.ZT)(a,E);function a(y){return E.call(this,Hu({},a.defaultOptions,y))||this}return a.prototype.renderBackground=function(){var y=this.attributes,x=y.x,b=y.y,z=y.width,ee=y.height,re=cs(this.attributes,"background");Ji(this).maybeAppend("background","rect").attr("className","background").styles((0,Nt.pi)({x:x-z/2,y:b-ee/2,width:z,height:ee},re))},a.prototype.renderIcon=function(){var y=this.attributes,x=y.x,b=y.y,z=y.iconSize,ee=cs(this.attributes,"icon"),re=1,ae=z/2;Ji(this).maybeAppend("icon-left-line","line").attr("className","icon-left-line").styles((0,Nt.pi)({x1:x-re,y1:b-ae,x2:x-re,y2:b+ae},ee)),Ji(this).maybeAppend("icon-right-line","line").attr("className","icon-right-line").styles((0,Nt.pi)({x1:x+re,y1:b-ae,x2:x+re,y2:b+ae},ee))},a.prototype.renderBorder=function(){var y=this.attributes,x=y.x,b=y.y,z=y.width,ee=y.height,re=y.type,ae=cs(this.attributes,"border"),oe=re==="start"?+z/2:-z/2;Ji(this).maybeAppend("border","line").attr("className","border").styles((0,Nt.pi)({x1:oe+x,y1:b-ee/2,x2:oe+x,y2:b+ee/2},ae))},a.prototype.render=function(){this.renderBackground(),this.renderIcon(),this.renderBorder()},a.defaultOptions={style:{x:0,y:0,width:10,height:50,iconSize:10,type:"start",backgroundFill:"#fff",backgroundFillOpacity:.5,iconStroke:"#9a9a9a",iconLineWidth:1,borderStroke:"#e8e8e8",borderLineWidth:1}},a}(pu);function $K(E,a){return typeof E=="number"?nI(E):eZ(E,a)}function eZ(E,a){var y=new Date(E);switch(a){case"half-hour":case"hour":case"four-hour":return[0,6,12,18].includes(y.getHours())&&y.getMinutes()===0?Kc(y,`HH:mm
|
|
|
YYYY-MM-DD`):Kc(y,"HH:mm");case"half-day":return y.getHours()<12?`AM
|
|
|
`.concat(Kc(y,"YYYY-MM-DD")):"PM";case"day":return[1,10,20].includes(y.getDate())?Kc(y,`DD
|
|
|
YYYY-MM`):Kc(y,"DD");case"week":return y.getDate()<=7?Kc(y,`DD
|
|
|
YYYY-MM`):Kc(y,"DD");case"month":return[0,6].includes(y.getMonth())?Kc(y,`MM\u6708
|
|
|
YYYY`):Kc(y,"MM\u6708");case"season":return[0].includes(y.getMonth())?Kc(y,`MM\u6708
|
|
|
YYYY`):Kc(y,"MM\u6708");case"year":return Kc(y,"YYYY");default:return Kc(y,"YYYY-MM-DD HH:mm")}}function nI(E){var a=String(Math.floor(E/3600)).padStart(2,"0"),y=String(Math.floor(E%3600/60)).padStart(2,"0"),x=String(Math.floor(E%60)).padStart(2,"0");return E<3600?"".concat(y,":").concat(x):"".concat(a,":").concat(y,":").concat(x)}var tZ=function(E){(0,Nt.ZT)(a,E);function a(y){var x=E.call(this,Hu({},a.defaultOptions,y))||this;x.axis=x.appendChild(new qV({style:{type:"linear",startPos:[0,0],endPos:[0,0],data:[],showArrow:!1,animate:!1}})),x.timeline=x.appendChild(new NK({style:{onChange:function(ge){x.handleSliderChange(ge)}}})),x.controller=x.appendChild(new XK({})),x.states={},x.handleSliderChange=function(ge){var ye=function(){var De=x.states.values;return Array.isArray(De)?(0,Nt.ev)([],(0,Nt.CR)(De),!1):De}();x.setBySliderValues(ge),x.dispatchOnChange(ye)};var b=x.attributes,z=b.selectionType,ee=b.chartType,re=b.speed,ae=b.state,oe=b.playMode,de=b.values;return x.states={chartType:ee,playMode:oe,selectionType:z,speed:re,state:ae},x.setByTimebarValues(de),x}return Object.defineProperty(a.prototype,"data",{get:function(){var y=this.attributes.data,x=function(b,z){return b.time<z.time?-1:b.time>z.time?1:0};return y.sort(x)},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"space",{get:function(){var y=this.attributes,x=y.x,b=y.y,z=y.width,ee=y.height,re=y.type,ae=y.controllerHeight,oe=gu(+ee-ae,0,+ee),de=new Tc(x,b+ +ee-ae,+z,ae),ge,ye=0;re==="chart"?(ye=35,ge=new Tc(x,b+oe-ye,+z,ye)):ge=new Tc;var De=re==="time"?10:oe,ke=new Tc(x,b+(re==="time"?oe:oe-De),+z,De-ye);return{axisBBox:ge,controllerBBox:de,timelineBBox:ke}},enumerable:!1,configurable:!0}),a.prototype.setBySliderValues=function(y){var x,b,z=this.data,ee=(0,Nt.CR)(Array.isArray(y)?y:[0,y],2),re=ee[0],ae=ee[1],oe=z.length,de=z[Math.floor(re*oe)],ge=z[Math.ceil(ae*oe)-(Array.isArray(y)?0:1)];this.states.values=[(x=de==null?void 0:de.time)!==null&&x!==void 0?x:z[0].time,(b=ge==null?void 0:ge.time)!==null&&b!==void 0?b:1/0]},a.prototype.setByTimebarValues=function(y){var x,b,z,ee=this.data,re=(0,Nt.CR)(Array.isArray(y)?y:[void 0,y],2),ae=re[0],oe=re[1],de=ee.find(function(ye){var De=ye.time;return De===ae}),ge=ee.find(function(ye){var De=ye.time;return De===oe});this.states.values=[(x=de==null?void 0:de.time)!==null&&x!==void 0?x:(b=ee[0])===null||b===void 0?void 0:b.time,(z=ge==null?void 0:ge.time)!==null&&z!==void 0?z:1/0]},a.prototype.setByIndex=function(y){var x,b,z,ee,re=this.data,ae=(0,Nt.CR)(y,2),oe=ae[0],de=ae[1];this.states.values=[(b=(x=re[oe])===null||x===void 0?void 0:x.time)!==null&&b!==void 0?b:re[0].time,(ee=(z=this.data[de])===null||z===void 0?void 0:z.time)!==null&&ee!==void 0?ee:1/0]},Object.defineProperty(a.prototype,"sliderValues",{get:function(){var y=this.states,x=y.values,b=y.selectionType,z=(0,Nt.CR)(Array.isArray(x)?x:[void 0,x],2),ee=z[0],re=z[1],ae=this.data,oe=ae.length,de=b==="value",ge=function(){var De=ae.findIndex(function(ke){var ze=ke.time;return ze===ee});return de?0:De>-1?De/oe:0},ye=function(){if(re===1/0)return 1;var De=ae.findIndex(function(ke){var ze=ke.time;return ze===re});return De>-1?De/oe:de?.5:1};return[ge(),ye()]},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"values",{get:function(){var y=this.states,x=y.values,b=y.selectionType,z=(0,Nt.CR)(Array.isArray(x)?x:[this.data[0].time,x],2),ee=z[0],re=z[1];return b==="value"?re:[ee,re]},enumerable:!1,configurable:!0}),a.prototype.getDatumByRatio=function(y){var x=this.data,b=x.length,z=Math.floor(y*(b-1));return x[z]},Object.defineProperty(a.prototype,"chartHandleIconShape",{get:function(){var y=this.states.selectionType,x=this.space.timelineBBox.height;return y==="range"?function(b){return new qK({style:{type:b,height:x,iconSize:x/6}})}:function(){return new Zg({style:{x1:0,y1:-x/2,x2:0,y2:x/2,lineWidth:2,stroke:"#c8c8c8"}})}},enumerable:!1,configurable:!0}),a.prototype.getChartStyle=function(y){var x=this,b=y.x,z=y.y,ee=y.width,re=y.height,ae=this.states,oe=ae.selectionType,de=ae.chartType,ge=this.data,ye=this.attributes,De=ye.type,ke=ye.labelFormatter,ze=cs(this.attributes,"chart"),We=ze.type,Ve=(0,Nt._T)(ze,["type"]),Ze=oe==="range";if(De==="time")return(0,Nt.pi)({handleIconShape:function(){return new JK({})},selectionFill:"#2e7ff8",selectionFillOpacity:1,showLabelOnInteraction:!0,handleLabelDy:Ze?-15:0,autoFitLabel:Ze,handleSpacing:Ze?-15:0,trackFill:"#edeeef",trackLength:ee,trackOpacity:.5,trackRadius:re/2,trackSize:re/2,type:oe,values:this.sliderValues,formatter:function(st){if(ke)return ke(st);var ht=x.getDatumByRatio(st).time;return typeof ht=="number"?nI(ht):Kc(ht,"YYYY-MM-DD HH:mm:ss")},transform:"translate(".concat(b,", ").concat(z,")"),zIndex:1},Ve);var Ye=oe==="range"?5:0,et=ge.map(function(st){var ht=st.value;return ht});return(0,Nt.pi)({handleIconOffset:Ye,handleIconShape:this.chartHandleIconShape,selectionFill:"#fff",selectionFillOpacity:.5,selectionType:"invert",sparklineSpacing:.1,sparklineColumnLineWidth:0,sparklineColor:"#d4e5fd",sparklineAreaOpacity:1,sparklineAreaLineWidth:0,sparklineData:et,sparklineType:de,sparklineScale:.8,trackLength:ee,trackSize:re,type:oe,values:this.sliderValues,transform:"translate(".concat(b,", ").concat(z,")"),zIndex:1},Ve)},a.prototype.renderChart=function(y){y===void 0&&(y=this.space.timelineBBox),this.timeline.update(this.getChartStyle(y))},a.prototype.updateSelection=function(){this.timeline.setValues(this.sliderValues,!0),this.handleSliderChange(this.sliderValues)},a.prototype.getAxisStyle=function(y){var x=this.data,b=this.attributes,z=b.interval,ee=b.labelFormatter,re=cs(this.attributes,"axis"),ae=y.x,oe=y.y,de=y.width,ge=(0,Nt.ev)((0,Nt.ev)([],(0,Nt.CR)(x),!1),[{time:0}],!1).map(function(De,ke,ze){var We=De.time;return{label:"".concat(We),value:ke/(ze.length-1),time:We}}),ye=(0,Nt.pi)({startPos:[ae,oe],endPos:[ae+de,oe],data:ge,labelFilter:function(De,ke){return ke<ge.length-1},labelFormatter:function(De){var ke=De.time;return ee?ee(ke):$K(ke,z)}},re);return ye},a.prototype.renderAxis=function(y){y===void 0&&(y=this.space.axisBBox);var x=this.attributes.type;x==="chart"&&this.axis.update(this.getAxisStyle(y))},a.prototype.renderController=function(y){y===void 0&&(y=this.space.controllerBBox);var x=this.attributes.type,b=this.states,z=b.state,ee=b.speed,re=b.selectionType,ae=b.chartType,oe=cs(this.attributes,"controller"),de=this,ge=(0,Nt.pi)((0,Nt.pi)((0,Nt.pi)({},y),{iconSize:20,speed:ee,state:z,selectionType:re,chartType:ae,onChange:function(ye,De){var ke=De.value;switch(ye){case"reset":de.internalReset();break;case"speed":de.handleSpeedChange(ke);break;case"backward":de.internalBackward();break;case"playPause":ke==="play"?de.internalPlay():de.internalPause();break;case"forward":de.internalForward();break;case"selectionType":de.handleSelectionTypeChange(ke);break;case"chartType":de.handleChartTypeChange(ke);break;default:break}}}),oe);x==="time"&&(ge.functions=[["reset","speed"],["backward","playPause","forward"],["selectionType"]]),this.controller.update(ge)},a.prototype.dispatchOnChange=function(y){var x=this.data,b=this.attributes.onChange,z=this.states,ee=z.values,re=z.selectionType,ae=(0,Nt.CR)(ee,2),oe=ae[0],de=ae[1],ge=de===1/0?x.at(-1).time:de,ye=re==="range"?[oe,ge]:ge,De=function(ke,ze){return Array.isArray(ke)?Array.isArray(ze)?ke[0]===ze[0]&&(ke[1]===ze[1]||ke[1]===1/0||ze[1]===1/0):!1:Array.isArray(ze)?!1:ke===ze};(!y||!De(y,ye))&&(b==null||b(re==="range"?[oe,ge]:ge))},a.prototype.internalReset=function(y){var x,b,z=this.states.selectionType;this.internalPause(),this.setBySliderValues(z==="range"?[0,1]:[0,0]),this.renderController(),this.updateSelection(),y||((b=(x=this.attributes)===null||x===void 0?void 0:x.onReset)===null||b===void 0||b.call(x),this.dispatchOnChange())},a.prototype.reset=function(){this.internalReset()},a.prototype.moveSelection=function(y,x){var b=this.data,z=b.length,ee=this.states,re=ee.values,ae=ee.selectionType,oe=ee.playMode,de=(0,Nt.CR)(re,2),ge=de[0],ye=de[1],De=b.findIndex(function(Ye){var et=Ye.time;return et===ge}),ke=b.findIndex(function(Ye){var et=Ye.time;return et===ye});ke===-1&&(ke=z);var ze=y==="backward"?-1:1,We;ae==="range"?oe==="acc"?(We=[De,ke+ze],ze===-1&&De===ke&&(We=[De,z])):We=[De+ze,ke+ze]:We=[De,ke+ze];var Ve=function(Ye){var et=(0,Nt.CR)(Ye.sort(function(dt,Ot){return dt-Ot}),2),st=et[0],ht=et[1],mt=function(dt){return gu(dt,0,z)};return ht>z?ae==="value"?[0,0]:oe==="acc"?[mt(st),mt(st)]:[0,mt(ht-st)]:st<0?oe==="acc"?[0,mt(ht)]:[mt(st+z-ht),z]:[mt(st),mt(ht)]},Ze=Ve(We);return this.setByIndex(Ze),this.updateSelection(),Ze},a.prototype.internalBackward=function(y){var x,b,z=this.moveSelection("backward",y);return y||((b=(x=this.attributes)===null||x===void 0?void 0:x.onBackward)===null||b===void 0||b.call(x),this.dispatchOnChange()),z},a.prototype.backward=function(){this.internalBackward()},a.prototype.internalPlay=function(y){var x=this,b,z,ee=this.data,re=this.attributes.loop,ae=this.states.speed,oe=ae===void 0?1:ae;this.playInterval=window.setInterval(function(){var de=x.internalForward();de[1]===ee.length&&!re&&(x.internalPause(),x.renderController())},1e3/oe),this.states.state="play",!y&&((z=(b=this.attributes)===null||b===void 0?void 0:b.onPlay)===null||z===void 0||z.call(b))},a.prototype.play=function(){this.internalPlay()},a.prototype.internalPause=function(y){var x,b;clearInterval(this.playInterval),this.states.state="pause",!y&&((b=(x=this.attributes)===null||x===void 0?void 0:x.onPause)===null||b===void 0||b.call(x))},a.prototype.pause=function(){this.internalPause()},a.prototype.internalForward=function(y){var x,b,z=this.moveSelection("forward",y);return y||((b=(x=this.attributes)===null||x===void 0?void 0:x.onForward)===null||b===void 0||b.call(x),this.dispatchOnChange()),z},a.prototype.forward=function(){this.internalForward()},a.prototype.handleSpeedChange=function(y){var x,b;this.states.speed=y;var z=this.states.state;z==="play"&&(this.internalPause(!0),this.internalPlay(!0)),(b=(x=this.attributes)===null||x===void 0?void 0:x.onSpeedChange)===null||b===void 0||b.call(x,y)},a.prototype.handleSelectionTypeChange=function(y){var x,b;this.states.selectionType=y,this.renderChart(),(b=(x=this.attributes)===null||x===void 0?void 0:x.onSelectionTypeChange)===null||b===void 0||b.call(x,y)},a.prototype.handleChartTypeChange=function(y){var x,b;this.states.chartType=y,this.renderChart(),(b=(x=this.attributes)===null||x===void 0?void 0:x.onChartTypeChange)===null||b===void 0||b.call(x,y)},a.prototype.render=function(){var y=this.space,x=y.axisBBox,b=y.controllerBBox,z=y.timelineBBox;this.renderController(b),this.renderAxis(x),this.renderChart(z),this.states.state==="play"&&this.internalPlay()},a.prototype.destroy=function(){E.prototype.destroy.call(this),this.internalPause(!0)},a.defaultOptions={style:{x:0,y:0,axisLabelFill:"#6e6e6e",axisLabelTextAlign:"left",axisLabelTextBaseline:"top",axisLabelTransform:"translate(5, -12)",axisLineLineWidth:1,axisLineStroke:"#cacdd1",axisTickLength:15,axisTickLineWidth:1,axisTickStroke:"#cacdd1",chartShowLabel:!1,chartType:"line",controllerAlign:"center",controllerHeight:40,data:[],interval:"day",loop:!1,playMode:"acc",selectionType:"range",type:"time"}},a}(pu);function nZ(E){return E instanceof Date}var rZ=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(de){try{oe(x.next(de))}catch(ge){ee(ge)}}function ae(de){try{oe(x.throw(de))}catch(ge){ee(ge)}}function oe(de){de.done?z(de.value):b(de.value).then(re,ae)}oe((x=x.apply(E,a||[])).next())})},aZ=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b<x.length;b++)a.indexOf(x[b])<0&&Object.prototype.propertyIsEnumerable.call(E,x[b])&&(y[x[b]]=E[x[b]]);return y};const iZ=["timestamp","time","date","datetime"];class iE extends oc{get padding(){return Md(this.options.padding)}constructor(a,y){super(a,Object.assign({},iE.defaultOptions,y)),this.backup(),this.upsertTimebar()}play(){var a;(a=this.timebar)===null||a===void 0||a.play()}pause(){var a;(a=this.timebar)===null||a===void 0||a.pause()}forward(){var a;(a=this.timebar)===null||a===void 0||a.forward()}backward(){var a;(a=this.timebar)===null||a===void 0||a.backward()}reset(){var a;(a=this.timebar)===null||a===void 0||a.reset()}update(a){super.update(a),this.backup(),this.upsertTimebar()}backup(){this.originalData=rI(this.context.graph.getData())}upsertTimebar(){const{canvas:a}=this.context,y=this.options,{onChange:x,timebarType:b,data:z,x:ee,y:re,width:ae,height:oe,mode:de}=y,ge=aZ(y,["onChange","timebarType","data","x","y","width","height","mode"]),ye=a.getSize(),[De]=this.padding;this.upsertCanvas().ready.then(()=>{var ke;const ze=Object.assign(Object.assign({x:ye[0]/2-ae/2,y:De,onChange:We=>{const Ve=(nd(We)?We:[We,We]).map(Ze=>nZ(Ze)?Ze.getTime():Ze);this.options.mode==="modify"?this.filterElements(Ve):this.hiddenElements(Ve),x==null||x(Ve)}},ge),{data:z.map(We=>ji(We)?{time:We,value:0}:We),width:ae,height:oe,type:b});this.timebar?this.timebar.update(ze):(this.timebar=new tZ({style:ze}),(ke=this.canvas)===null||ke===void 0||ke.appendChild(this.timebar))})}upsertCanvas(){if(this.canvas)return this.canvas;const{className:a,height:y,position:x}=this.options,b=this.context.canvas,[z]=b.getSize(),[ee,,re]=this.padding,[ae,oe]=V1({width:z,height:y+ee+re,graphCanvas:b,className:"timebar",placement:x});return this.container=ae,a&&ae.classList.add(a),this.canvas=oe,this.canvas}filterElements(a){return rZ(this,void 0,void 0,function*(){var y;if(!this.originalData)return;const{elementTypes:x,getTime:b}=this.options,{graph:z,element:ee}=this.context,re=rI(this.originalData);x.forEach(oe=>{const de=`${oe}s`;re[de]=(this.originalData[de]||[]).filter(ge=>{const ye=b(ge);return!!aI(ye,a)})});const ae=[...re.nodes,...re.combos].map(oe=>Br(oe));re.edges=re.edges.filter(oe=>{const de=oe.source,ge=oe.target;return ae.includes(de)&&ae.includes(ge)}),z.setData(re),yield(y=ee.draw({animation:!1,silence:!0}))===null||y===void 0?void 0:y.finished})}hiddenElements(a){const{graph:y}=this.context,{elementTypes:x,getTime:b}=this.options,z=[],ee=[];x.forEach(re=>{var ae;const oe=`${re}s`;(((ae=this.originalData)===null||ae===void 0?void 0:ae[oe])||[]).forEach(ge=>{const ye=Br(ge),De=b(ge);aI(De,a)?ee.push(ye):z.push(ye)})}),y.hideElement(z,!1),y.showElement(ee,!1)}destroy(){var a,y,x;const{graph:b}=this.context;this.originalData&&b.setData(Object.assign({},this.originalData)),(a=this.timebar)===null||a===void 0||a.destroy(),(y=this.canvas)===null||y===void 0||y.destroy(),(x=this.container)===null||x===void 0||x.remove(),this.originalData=void 0,this.container=void 0,this.timebar=void 0,this.canvas=void 0,super.destroy()}}iE.defaultOptions={position:"bottom",enable:!0,timebarType:"time",className:"g6-timebar",width:450,height:60,zIndex:3,elementTypes:["node"],padding:10,mode:"modify",getTime:E=>oZ(E,iZ,void 0),loop:!1};const rI=E=>{const{nodes:a=[],edges:y=[],combos:x=[]}=E;return{nodes:[...a],edges:[...y],combos:[...x]}},aI=(E,a)=>{if(ji(a))return E===a;const[y,x]=a;return E>=y&&E<=x},oZ=(E,a,y)=>{var x;for(let b=0;b<a.length;b++){const z=a[b],ee=(x=E.data)===null||x===void 0?void 0:x[z];if(ee)return ee}return y};var sZ=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b<x.length;b++)a.indexOf(x[b])<0&&Object.prototype.propertyIsEnumerable.call(E,x[b])&&(y[x[b]]=E[x[b]]);return y};const iI={fill:"#1D2129",wordWrap:!0,maxLines:1,textOverflow:"ellipsis",textBaseline:"top",textAlign:"start",x:0},lZ=Object.assign(Object.assign({},iI),{fillOpacity:.9,fontSize:16,fontWeight:"bold"}),uZ=Object.assign(Object.assign({},iI),{fillOpacity:.65,fontSize:12,fontWeight:"normal"}),cZ={align:"left",spacing:8,size:44,padding:[16,24,0,24]},Yb="title",oI="subtitle";class dZ extends oc{get padding(){return Md(this.options.padding)}constructor(a,y){const x=Object.assign({},cZ,y);super(a,x),this.onRender=()=>{const b=this.updateCanvas();this.renderTitle(b)},this.bindEvents()}bindEvents(){const{graph:a}=this.context;a.on(hi.AFTER_RENDER,this.onRender),a.on(hi.AFTER_ANIMATE,this.onRender)}unbindEvents(){const{graph:a}=this.context;a.off(hi.AFTER_RENDER,this.onRender),a.off(hi.AFTER_ANIMATE,this.onRender)}destroy(){var a,y;this.unbindEvents(),(a=this.canvas)===null||a===void 0||a.destroy(),(y=this.container)===null||y===void 0||y.remove(),super.destroy()}updateCanvas(){const{size:a,className:y,align:x}=this.options,[b]=this.context.canvas.getSize(),[z=0,,ee=0]=this.padding,re=a+z+ee;if(this.canvas){const{width:ae,height:oe}=this.canvas.getConfig();(b!==ae||re!==oe)&&this.canvas.resize(b,re)}else{const ae={left:"left-top",center:"top",right:"right-top"},[oe,de]=V1({width:b,height:re,placement:ae[x]||ae.left,className:"title-canvas",graphCanvas:this.context.canvas});y&&oe.classList.add(y),this.container=oe,this.canvas=de}return this.canvas}renderTitle(a){const y=new fZ({options:this.options,ctx:this.context});a.removeChildren(),y.getTitle().forEach(x=>{x&&a.appendChild(x)})}}class fZ{get padding(){return Md(this.options.padding)}constructor(a){const{options:y,ctx:x}=a;this.options=y,this.context=x}getTitle(){const a=this.options,y=Yb,x=a[y],b=oI,z=a[b],{spacing:ee=44,padding:re,align:ae}=a,oe=sZ(a,[typeof y=="symbol"?y:y+"",typeof b=="symbol"?b:b+"","spacing","padding","align"]),de=x,ge=z,ye=Su(oe,Yb),De=Su(oe,oI),[ke]=this.context.graph.getSize(),[ze=0,We=0,,Ve=0]=this.padding,Ze=ke,Ye=Ze-Ve-We;let et=null,st=Ve,ht="left";switch(ae){case"left":st=Ve,ht="left";break;case"center":st=Ze/2,ht="center";break;case"right":st=Ze-We,ht="right";break;default:st=Ve,ht="left"}const mt=new Xf({className:Yb,style:Object.assign(Object.assign(Object.assign(Object.assign({},lZ),{wordWrapWidth:Ye-5,x:st,y:ze,textAlign:ht}),ye),{text:de})}),dt=mt.getBBox();return ge&&(et=new Xf({className:"subTitle",style:Object.assign(Object.assign(Object.assign(Object.assign({},uZ),{wordWrapWidth:Ye-5,x:st,y:dt.height+ee+ze,textAlign:ht}),De),{text:ge})})),[mt,et]}}function hZ(E){const a={top:"unset",right:"unset",bottom:"unset",left:"unset"};return E.split("-").forEach(x=>{a[x]="8px"}),a.flexDirection=E.startsWith("top")||E.startsWith("bottom")?"row":"column",a}const gZ=`
|
|
|
.g6-toolbar {
|
|
|
position: absolute;
|
|
|
z-index: 100;
|
|
|
display: flex;
|
|
|
flex-direction: row;
|
|
|
align-items: center;
|
|
|
justify-content: center;
|
|
|
border-radius: 4px;
|
|
|
box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.1);
|
|
|
opacity: 0.65;
|
|
|
}
|
|
|
.g6-toolbar .g6-toolbar-item {
|
|
|
display: inline-block;
|
|
|
width: 16px;
|
|
|
height: 16px;
|
|
|
padding: 4px;
|
|
|
cursor: pointer;
|
|
|
box-sizing: content-box;
|
|
|
}
|
|
|
|
|
|
.g6-toolbar .g6-toolbar-item:hover {
|
|
|
background-color: #f0f0f0;
|
|
|
}
|
|
|
|
|
|
.g6-toolbar .g6-toolbar-item svg {
|
|
|
display: inline-block;
|
|
|
width: 100%;
|
|
|
height: 100%;
|
|
|
pointer-events: none;
|
|
|
}
|
|
|
`,vZ=`
|
|
|
<svg>
|
|
|
<symbol id="zoom-in" viewBox="64 64 896 896">
|
|
|
<path d="M637 443H519V309c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v134H325c-4.4 0-8 3.6-8 8v60c0 4.4 3.6 8 8 8h118v134c0 4.4 3.6 8 8 8h60c4.4 0 8-3.6 8-8V519h118c4.4 0 8-3.6 8-8v-60c0-4.4-3.6-8-8-8zm284 424L775 721c122.1-148.9 113.6-369.5-26-509-148-148.1-388.4-148.1-537 0-148.1 148.6-148.1 389 0 537 139.5 139.6 360.1 148.1 509 26l146 146c3.2 2.8 8.3 2.8 11 0l43-43c2.8-2.7 2.8-7.8 0-11zM696 696c-118.8 118.7-311.2 118.7-430 0-118.7-118.8-118.7-311.2 0-430 118.8-118.7 311.2-118.7 430 0 118.7 118.8 118.7 311.2 0 430z"></path>
|
|
|
</symbol>
|
|
|
<symbol id="zoom-out" viewBox="64 64 896 896">
|
|
|
<path d="M637 443H325c-4.4 0-8 3.6-8 8v60c0 4.4 3.6 8 8 8h312c4.4 0 8-3.6 8-8v-60c0-4.4-3.6-8-8-8zm284 424L775 721c122.1-148.9 113.6-369.5-26-509-148-148.1-388.4-148.1-537 0-148.1 148.6-148.1 389 0 537 139.5 139.6 360.1 148.1 509 26l146 146c3.2 2.8 8.3 2.8 11 0l43-43c2.8-2.7 2.8-7.8 0-11zM696 696c-118.8 118.7-311.2 118.7-430 0-118.7-118.8-118.7-311.2 0-430 118.8-118.7 311.2-118.7 430 0 118.7 118.8 118.7 311.2 0 430z"></path>
|
|
|
</symbol>
|
|
|
<symbol id="edit" viewBox="64 64 896 896">
|
|
|
<path d="M257.7 752c2 0 4-.2 6-.5L431.9 722c2-.4 3.9-1.3 5.3-2.8l423.9-423.9a9.96 9.96 0 000-14.1L694.9 114.9c-1.9-1.9-4.4-2.9-7.1-2.9s-5.2 1-7.1 2.9L256.8 538.8c-1.5 1.5-2.4 3.3-2.8 5.3l-29.5 168.2a33.5 33.5 0 009.4 29.8c6.6 6.4 14.9 9.9 23.8 9.9zm67.4-174.4L687.8 215l73.3 73.3-362.7 362.6-88.9 15.7 15.6-89zM880 836H144c-17.7 0-32 14.3-32 32v36c0 4.4 3.6 8 8 8h784c4.4 0 8-3.6 8-8v-36c0-17.7-14.3-32-32-32z"></path>
|
|
|
</symbol>
|
|
|
<symbol id="delete" viewBox="64 64 896 896">
|
|
|
<path d="M360 184h-8c4.4 0 8-3.6 8-8v8h304v-8c0 4.4 3.6 8 8 8h-8v72h72v-80c0-35.3-28.7-64-64-64H352c-35.3 0-64 28.7-64 64v80h72v-72zm504 72H160c-17.7 0-32 14.3-32 32v32c0 4.4 3.6 8 8 8h60.4l24.7 523c1.6 34.1 29.8 61 63.9 61h454c34.2 0 62.3-26.8 63.9-61l24.7-523H888c4.4 0 8-3.6 8-8v-32c0-17.7-14.3-32-32-32zM731.3 840H292.7l-24.2-512h487l-24.2 512z"></path>
|
|
|
</symbol>
|
|
|
<symbol id="redo" viewBox="64 64 896 896">
|
|
|
<path d="M758.2 839.1C851.8 765.9 912 651.9 912 523.9 912 303 733.5 124.3 512.6 124 291.4 123.7 112 302.8 112 523.9c0 125.2 57.5 236.9 147.6 310.2 3.5 2.8 8.6 2.2 11.4-1.3l39.4-50.5c2.7-3.4 2.1-8.3-1.2-11.1-8.1-6.6-15.9-13.7-23.4-21.2a318.64 318.64 0 01-68.6-101.7C200.4 609 192 567.1 192 523.9s8.4-85.1 25.1-124.5c16.1-38.1 39.2-72.3 68.6-101.7 29.4-29.4 63.6-52.5 101.7-68.6C426.9 212.4 468.8 204 512 204s85.1 8.4 124.5 25.1c38.1 16.1 72.3 39.2 101.7 68.6 29.4 29.4 52.5 63.6 68.6 101.7 16.7 39.4 25.1 81.3 25.1 124.5s-8.4 85.1-25.1 124.5a318.64 318.64 0 01-68.6 101.7c-9.3 9.3-19.1 18-29.3 26L668.2 724a8 8 0 00-14.1 3l-39.6 162.2c-1.2 5 2.6 9.9 7.7 9.9l167 .8c6.7 0 10.5-7.7 6.3-12.9l-37.3-47.9z"></path>
|
|
|
</symbol>
|
|
|
<symbol id="undo" viewBox="64 64 896 896">
|
|
|
<path d="M511.4 124C290.5 124.3 112 303 112 523.9c0 128 60.2 242 153.8 315.2l-37.5 48c-4.1 5.3-.3 13 6.3 12.9l167-.8c5.2 0 9-4.9 7.7-9.9L369.8 727a8 8 0 00-14.1-3L315 776.1c-10.2-8-20-16.7-29.3-26a318.64 318.64 0 01-68.6-101.7C200.4 609 192 567.1 192 523.9s8.4-85.1 25.1-124.5c16.1-38.1 39.2-72.3 68.6-101.7 29.4-29.4 63.6-52.5 101.7-68.6C426.9 212.4 468.8 204 512 204s85.1 8.4 124.5 25.1c38.1 16.1 72.3 39.2 101.7 68.6 29.4 29.4 52.5 63.6 68.6 101.7 16.7 39.4 25.1 81.3 25.1 124.5s-8.4 85.1-25.1 124.5a318.64 318.64 0 01-68.6 101.7c-7.5 7.5-15.3 14.5-23.4 21.2a7.93 7.93 0 00-1.2 11.1l39.4 50.5c2.8 3.5 7.9 4.1 11.4 1.3C854.5 760.8 912 649.1 912 523.9c0-221.1-179.4-400.2-400.6-399.9z"></path>
|
|
|
</symbol>
|
|
|
<symbol id="export" viewBox="64 64 896 896">
|
|
|
<path d="M880 912H144c-17.7 0-32-14.3-32-32V144c0-17.7 14.3-32 32-32h360c4.4 0 8 3.6 8 8v56c0 4.4-3.6 8-8 8H184v656h656V520c0-4.4 3.6-8 8-8h56c4.4 0 8 3.6 8 8v360c0 17.7-14.3 32-32 32zM770.87 199.13l-52.2-52.2a8.01 8.01 0 014.7-13.6l179.4-21c5.1-.6 9.5 3.7 8.9 8.9l-21 179.4c-.8 6.6-8.9 9.4-13.6 4.7l-52.4-52.4-256.2 256.2a8.03 8.03 0 01-11.3 0l-42.4-42.4a8.03 8.03 0 010-11.3l256.1-256.3z"></path>
|
|
|
</symbol>
|
|
|
<symbol id="auto-fit" viewBox="64 64 896 896">
|
|
|
<path d="M952 474H829.8C812.5 327.6 696.4 211.5 550 194.2V72c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v122.2C327.6 211.5 211.5 327.6 194.2 474H72c-4.4 0-8 3.6-8 8v60c0 4.4 3.6 8 8 8h122.2C211.5 696.4 327.6 812.5 474 829.8V952c0 4.4 3.6 8 8 8h60c4.4 0 8-3.6 8-8V829.8C696.4 812.5 812.5 696.4 829.8 550H952c4.4 0 8-3.6 8-8v-60c0-4.4-3.6-8-8-8zM512 756c-134.8 0-244-109.2-244-244s109.2-244 244-244 244 109.2 244 244-109.2 244-244 244z"></path>
|
|
|
<path d="M512 392c-32.1 0-62.1 12.4-84.8 35.2-22.7 22.7-35.2 52.7-35.2 84.8s12.5 62.1 35.2 84.8C449.9 619.4 480 632 512 632s62.1-12.5 84.8-35.2C619.4 574.1 632 544 632 512s-12.5-62.1-35.2-84.8A118.57 118.57 0 00512 392z"></path>
|
|
|
</symbol>
|
|
|
<symbol id="reset" viewBox="64 64 896 896">
|
|
|
<path d="M909.1 209.3l-56.4 44.1C775.8 155.1 656.2 92 521.9 92 290 92 102.3 279.5 102 511.5 101.7 743.7 289.8 932 521.9 932c181.3 0 335.8-115 394.6-276.1 1.5-4.2-.7-8.9-4.9-10.3l-56.7-19.5a8 8 0 00-10.1 4.8c-1.8 5-3.8 10-5.9 14.9-17.3 41-42.1 77.8-73.7 109.4A344.77 344.77 0 01655.9 829c-42.3 17.9-87.4 27-133.8 27-46.5 0-91.5-9.1-133.8-27A341.5 341.5 0 01279 755.2a342.16 342.16 0 01-73.7-109.4c-17.9-42.4-27-87.4-27-133.9s9.1-91.5 27-133.9c17.3-41 42.1-77.8 73.7-109.4 31.6-31.6 68.4-56.4 109.3-73.8 42.3-17.9 87.4-27 133.8-27 46.5 0 91.5 9.1 133.8 27a341.5 341.5 0 01109.3 73.8c9.9 9.9 19.2 20.4 27.8 31.4l-60.2 47a8 8 0 003 14.1l175.6 43c5 1.2 9.9-2.6 9.9-7.7l.8-180.9c-.1-6.6-7.8-10.3-13-6.2z"></path>
|
|
|
</symbol>
|
|
|
<symbol id="exit-fullscreen" viewBox="0 0 1024 1024">
|
|
|
<path d="M418.13333333 361.43786666c0 0.2048-0.13653333 0.4096-0.13653334 0.68266667C417.99679999 362.32533333 418.13333333 362.53013333 418.13333333 362.73493333 418.13333333 371.54133333 414.44693333 379.392 408.78079999 385.39946666 408.43946666 385.7408 408.30293333 386.21866666 408.02986666 386.49173333c-1.09226667 1.09226667-2.59413333 1.77493333-3.82293333 2.73066667C398.40426666 393.65973333 391.64586666 396.8 383.93173333 396.8 383.72693333 396.8 383.59039999 396.73173333 383.38559999 396.73173333S382.97599999 396.8 382.77119999 396.8L112.29866666 396.8C92.50133333 396.8 76.79999999 381.50826666 76.79999999 362.66666666 76.66346666 343.89333333 92.63786666 328.53333333 112.16213333 328.53333333l189.44 0L87.44959999 114.51733333C73.59146666 100.59093333 73.25013333 78.5408 86.63039999 65.29706666c13.17546667-13.44853333 35.36213333-12.97066667 49.152 0.88746667l214.08426667 214.08426667L349.86666666 90.89706666C349.79839999 71.23626666 365.22666666 55.46666666 383.99999999 55.46666666 402.77333333 55.33013333 418.13333333 71.30453333 418.13333333 90.8288L418.13333333 361.43786666zM928.90453333 328.53333333l-189.44 0 214.15253333-214.08426667c13.85813333-13.9264 14.19946667-35.90826667 0.88746667-49.22026666-13.17546667-13.44853333-35.36213333-12.97066667-49.152 0.88746666l-214.08426667 214.08426667L691.26826666 90.89706666C691.26826666 71.23626666 675.83999999 55.46666666 657.06666666 55.46666666 638.29333333 55.33013333 622.93333333 71.30453333 622.93333333 90.8288l0 270.60906666c0 0.2048 0.13653333 0.4096 0.13653333 0.68266667C623.06986666 362.32533333 622.93333333 362.53013333 622.93333333 362.73493333 622.93333333 371.54133333 626.61973333 379.392 632.28586666 385.39946666c0.34133333 0.34133333 0.47786667 0.8192 0.8192 1.09226667 1.09226667 1.09226667 2.59413333 1.77493333 3.8912 2.73066667C642.66239999 393.65973333 649.42079999 396.8 657.13493333 396.8c0.2048 0 0.34133333-0.06826667 0.54613333-0.06826667S658.09066666 396.8 658.29546666 396.8l270.5408 0C948.56533333 396.8 964.26666666 381.50826666 964.26666666 362.66666666 964.40319999 343.89333333 948.42879999 328.53333333 928.90453333 328.53333333zM418.13333333 635.73333333c0-8.8064-3.6864-16.5888-9.35253334-22.66453333C408.43946666 612.72746666 408.30293333 612.2496 408.02986666 611.90826666 406.86933333 610.88426666 405.43573333 610.2016 404.20693333 609.24586666 398.47253333 604.80853333 391.64586666 601.6 383.93173333 601.6 383.72693333 601.6 383.59039999 601.73653333 383.38559999 601.73653333S382.97599999 601.6 382.77119999 601.6L112.29866666 601.6C92.50133333 601.6 76.79999999 616.96 76.79999999 635.73333333 76.66346666 654.50666666 92.63786666 669.86666666 112.16213333 669.86666666l189.44 0-214.15253334 214.15253334c-13.85813333 13.85813333-14.19946667 35.84-0.88746666 49.22026666 13.17546667 13.44853333 35.36213333 12.9024 49.152-0.95573333l214.08426666-214.08426667 0 189.37173334c0 19.59253333 15.42826667 35.49866667 34.2016 35.36213333C402.77333333 943.2064 418.13333333 927.232 418.13333333 907.5712L418.13333333 637.09866666c0-0.27306667-0.13653333-0.47786667-0.13653334-0.68266666C417.99679999 636.14293333 418.13333333 635.93813333 418.13333333 635.73333333zM739.46453333 669.86666666l189.44 0c19.456 0 35.49866667-15.36 35.36213333-34.13333333C964.26666666 616.96 948.56533333 601.6 928.76799999 601.6L658.29546666 601.6C658.09066666 601.6 657.88586666 601.73653333 657.68106666 601.73653333S657.33973333 601.6 657.13493333 601.6C649.42079999 601.6 642.59413333 604.80853333 636.85973333 609.24586666 635.63093333 610.2016 634.19733333 610.88426666 633.03679999 611.90826666 632.76373333 612.2496 632.62719999 612.72746666 632.28586666 613.0688 626.61973333 619.14453333 622.93333333 626.92693333 622.93333333 635.73333333c0 0.2048 0.13653333 0.4096 0.13653333 0.68266667C623.06986666 636.6208 622.93333333 636.8256 622.93333333 637.09866666l0 270.5408C622.93333333 927.232 638.29333333 943.2064 657.06666666 942.93333333c18.77333333 0.13653333 34.2016-15.70133333 34.2016-35.36213333l0-189.37173334 214.08426667 214.08426667c13.78986667 13.85813333 35.90826667 14.40426667 49.152 0.95573333 13.312-13.312 12.97066667-35.36213333-0.88746667-49.22026666L739.46453333 669.86666666z" ></path></symbol>
|
|
|
<symbol id="request-fullscreen" viewBox="0 0 1024 1024">
|
|
|
<path d="M69.818182 87.598545v273.128728a34.909091 34.909091 0 0 0 69.818182 0V163.653818l221.928727 222.021818a33.512727 33.512727 0 0 0 47.383273-47.383272L186.926545 116.363636h197.073455a34.909091 34.909091 0 0 0 0-69.818181H110.871273C85.364364 46.545455 69.818182 59.671273 69.818182 87.598545zM938.542545 46.545455H665.413818a34.909091 34.909091 0 0 0 0 69.818181h197.073455L640.465455 338.292364a33.512727 33.512727 0 0 0 47.383272 47.383272l221.928728-222.021818v197.073455a34.909091 34.909091 0 0 0 69.818181 0V87.598545c0-27.927273-15.453091-41.053091-40.96-41.05309z m-827.671272 907.636363h273.128727a34.909091 34.909091 0 0 0 0-69.818182H186.926545l222.021819-221.928727a33.512727 33.512727 0 0 0-47.383273-47.383273L139.636364 837.073455V640a34.909091 34.909091 0 0 0-69.818182 0v273.128727c0 27.927273 15.546182 41.053091 41.053091 41.053091z m868.724363-41.053091V640a34.909091 34.909091 0 0 0-69.818181 0v197.073455L687.941818 615.051636a33.512727 33.512727 0 0 0-47.383273 47.383273L862.487273 884.363636H665.413818a34.909091 34.909091 0 0 0 0 69.818182h273.128727c25.6 0 41.053091-13.125818 41.053091-41.053091z" ></path></symbol>
|
|
|
</svg>
|
|
|
`;var sI=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(de){try{oe(x.next(de))}catch(ge){ee(ge)}}function ae(de){try{oe(x.throw(de))}catch(ge){ee(ge)}}function oe(de){de.done?z(de.value):b(de.value).then(re,ae)}oe((x=x.apply(E,a||[])).next())})};class oE extends oc{constructor(a,y){super(a,Object.assign({},oE.defaultOptions,y)),this.$element=iv("toolbar",!1),this.onToolbarItemClick=b=>{const{onClick:z}=this.options;if(b.target instanceof Element&&b.target.className.includes("g6-toolbar-item")){const ee=b.target.getAttribute("value");z==null||z(ee,b.target)}};const x=this.context.canvas.getContainer();this.$element.style.display="flex",x.appendChild(this.$element),CS("g6-toolbar-css","style",{},gZ,document.head),CS("g6-toolbar-svgicon","div",{display:"none"},vZ),this.$element.addEventListener("click",this.onToolbarItemClick),this.update(y)}update(a){const y=Object.create(null,{update:{get:()=>super.update}});return sI(this,void 0,void 0,function*(){y.update.call(this,a);const{className:x,position:b,style:z}=this.options;this.$element.className=`g6-toolbar ${x||""}`,Object.assign(this.$element.style,z,hZ(b)),this.$element.innerHTML=yield this.getDOMContent()})}destroy(){this.$element.removeEventListener("click",this.onToolbarItemClick),this.$element.remove(),super.destroy()}getDOMContent(){return sI(this,void 0,void 0,function*(){return(yield this.options.getItems()).map(y=>{var x;return`
|
|
|
<div class="g6-toolbar-item" value="${y.value}" title="${(x=y.title)!==null&&x!==void 0?x:""}">
|
|
|
<svg aria-hidden="true" focusable="false">
|
|
|
<use xlink:href="#${y.id}"></use>
|
|
|
</svg>
|
|
|
</div>`}).join("")})}}oE.defaultOptions={position:"top-left"};function Xb(E){var a=document.createElement("div");a.innerHTML=E;var y=a.childNodes[0];return y&&a.contains(y)&&a.removeChild(y),y}function mZ(E,a){return!E||!a?E:E.replace(/\\?\{([^{}]+)\}/g,function(y,x){return y.charAt(0)==="\\"?y.slice(1):a[x]===void 0?"":a[x]})}var pZ=mZ,lI=function(E,a){if(a==null){E.innerHTML="";return}E.replaceChildren?Array.isArray(a)?E.replaceChildren.apply(E,(0,Nt.ev)([],(0,Nt.CR)(a),!1)):E.replaceChildren(a):(E.innerHTML="",Array.isArray(a)?a.forEach(function(y){return E.appendChild(y)}):E.appendChild(a))};function Jb(E){return E===void 0&&(E=""),{CONTAINER:"".concat(E,"tooltip"),TITLE:"".concat(E,"tooltip-title"),LIST:"".concat(E,"tooltip-list"),LIST_ITEM:"".concat(E,"tooltip-list-item"),NAME:"".concat(E,"tooltip-list-item-name"),MARKER:"".concat(E,"tooltip-list-item-marker"),NAME_LABEL:"".concat(E,"tooltip-list-item-name-label"),VALUE:"".concat(E,"tooltip-list-item-value"),CROSSHAIR_X:"".concat(E,"tooltip-crosshair-x"),CROSSHAIR_Y:"".concat(E,"tooltip-crosshair-y")}}var uI={overflow:"hidden","white-space":"nowrap","text-overflow":"ellipsis"};function yZ(E){var a;E===void 0&&(E="");var y=Jb(E);return a={},a[".".concat(y.CONTAINER)]={position:"absolute",visibility:"visible","z-index":8,transition:"visibility 0.2s cubic-bezier(0.23, 1, 0.32, 1), left 0.4s cubic-bezier(0.23, 1, 0.32, 1), top 0.4s cubic-bezier(0.23, 1, 0.32, 1)","background-color":"rgba(255, 255, 255, 0.96)","box-shadow":"0 6px 12px 0 rgba(0, 0, 0, 0.12)","border-radius":"4px",color:"rgba(0, 0, 0, 0.65)","font-size":"12px","line-height":"20px",padding:"12px","min-width":"120px","max-width":"360px","font-family":"Roboto-Regular"},a[".".concat(y.TITLE)]={color:"rgba(0, 0, 0, 0.45)"},a[".".concat(y.LIST)]={margin:"0px","list-style-type":"none",padding:"0px"},a[".".concat(y.LIST_ITEM)]={"list-style-type":"none",display:"flex","line-height":"2em","align-items":"center","justify-content":"space-between","white-space":"nowrap"},a[".".concat(y.MARKER)]={width:"8px",height:"8px","border-radius":"50%",display:"inline-block","margin-right":"4px"},a[".".concat(y.NAME)]={display:"flex","align-items":"center","max-width":"216px"},a[".".concat(y.NAME_LABEL)]=(0,Nt.pi)({flex:1},uI),a[".".concat(y.VALUE)]=(0,Nt.pi)({display:"inline-block",float:"right",flex:1,"text-align":"right","min-width":"28px","margin-left":"30px",color:"rgba(0, 0, 0, 0.85)"},uI),a[".".concat(y.CROSSHAIR_X)]={position:"absolute",width:"1px","background-color":"rgba(0, 0, 0, 0.25)"},a[".".concat(y.CROSSHAIR_Y)]={position:"absolute",height:"1px","background-color":"rgba(0, 0, 0, 0.25)"},a}var EZ=function(E){(0,Nt.ZT)(a,E);function a(y){var x=this,b,z,ee=(z=(b=y.style)===null||b===void 0?void 0:b.template)===null||z===void 0?void 0:z.prefixCls,re=Jb(ee);return x=E.call(this,y,{data:[],x:0,y:0,visibility:"visible",title:"",position:"bottom-right",offset:[5,5],enterable:!1,container:{x:0,y:0},bounding:null,template:{prefixCls:"",container:'<div class="'.concat(re.CONTAINER,'"></div>'),title:'<div class="'.concat(re.TITLE,'"></div>'),item:'<li class="'.concat(re.LIST_ITEM,`" data-index={index}>
|
|
|
<span class="`).concat(re.NAME,`">
|
|
|
<span class="`).concat(re.MARKER,`" style="background:{color}"></span>
|
|
|
<span class="`).concat(re.NAME_LABEL,`" title="{name}">{name}</span>
|
|
|
</span>
|
|
|
<span class="`).concat(re.VALUE,`" title="{value}">{value}</span>
|
|
|
</li>`)},style:yZ(ee)})||this,x.timestamp=-1,x.prevCustomContentKey=x.attributes.contentKey,x.initShape(),x.render(x.attributes,x),x}return Object.defineProperty(a.prototype,"HTMLTooltipElement",{get:function(){return this.element},enumerable:!1,configurable:!0}),a.prototype.getContainer=function(){return this.element},Object.defineProperty(a.prototype,"elementSize",{get:function(){var y=this.element.offsetWidth,x=this.element.offsetHeight;return{width:y,height:x}},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"HTMLTooltipItemsElements",{get:function(){var y=this.attributes,x=y.data,b=y.template;return x.map(function(z,ee){var re=z.name,ae=re===void 0?"":re,oe=z.color,de=oe===void 0?"black":oe,ge=z.index,ye=(0,Nt._T)(z,["name","color","index"]),De=(0,Nt.pi)({name:ae,color:de,index:ge!=null?ge:ee},ye);return Xb(pZ(b.item,De))})},enumerable:!1,configurable:!0}),a.prototype.render=function(y,x){this.renderHTMLTooltipElement(),this.updatePosition()},a.prototype.destroy=function(){var y;(y=this.element)===null||y===void 0||y.remove(),E.prototype.destroy.call(this)},a.prototype.show=function(y,x){var b=this;if(y!==void 0&&x!==void 0){var z=this.element.style.visibility==="hidden",ee=function(){b.attributes.x=y!=null?y:b.attributes.x,b.attributes.y=x!=null?x:b.attributes.y,b.updatePosition()};z?this.closeTransition(ee):ee()}this.element.style.visibility="visible"},a.prototype.hide=function(y,x){y===void 0&&(y=0),x===void 0&&(x=0);var b=this.attributes.enterable;b&&this.isCursorEntered(y,x)||(this.element.style.visibility="hidden")},a.prototype.initShape=function(){var y=this.attributes.template;this.element=Xb(y.container),this.id&&this.element.setAttribute("id",this.id)},a.prototype.renderCustomContent=function(){if(!(this.prevCustomContentKey!==void 0&&this.prevCustomContentKey===this.attributes.contentKey)){this.prevCustomContentKey=this.attributes.contentKey;var y=this.attributes.content;y&&(typeof y=="string"?this.element.innerHTML=y:lI(this.element,y))}},a.prototype.renderHTMLTooltipElement=function(){var y,x,b=this.attributes,z=b.template,ee=b.title,re=b.enterable,ae=b.style,oe=b.content,de=Jb(z.prefixCls),ge=this.element;if(this.element.style.pointerEvents=re?"auto":"none",oe)this.renderCustomContent();else{ee?(ge.innerHTML=z.title,ge.getElementsByClassName(de.TITLE)[0].innerHTML=ee):(x=(y=ge.getElementsByClassName(de.TITLE))===null||y===void 0?void 0:y[0])===null||x===void 0||x.remove();var ye=this.HTMLTooltipItemsElements,De=document.createElement("ul");De.className=de.LIST,lI(De,ye);var ke=this.element.querySelector(".".concat(de.LIST));ke?ke.replaceWith(De):ge.appendChild(De)}IG(ge,ae)},a.prototype.getRelativeOffsetFromCursor=function(y){var x=this.attributes,b=x.position,z=x.offset,ee=y||b,re=ee.split("-"),ae={left:[-1,0],right:[1,0],top:[0,-1],bottom:[0,1]},oe=this.elementSize,de=oe.width,ge=oe.height,ye=[-de/2,-ge/2];return re.forEach(function(De){var ke=(0,Nt.CR)(ye,2),ze=ke[0],We=ke[1],Ve=(0,Nt.CR)(ae[De],2),Ze=Ve[0],Ye=Ve[1];ye=[ze+(de/2+z[0])*Ze,We+(ge/2+z[1])*Ye]}),ye},a.prototype.setOffsetPosition=function(y){var x=(0,Nt.CR)(y,2),b=x[0],z=x[1],ee=this.attributes,re=ee.x,ae=re===void 0?0:re,oe=ee.y,de=oe===void 0?0:oe,ge=ee.container,ye=ge.x,De=ge.y;this.element.style.left="".concat(+ae+ye+b,"px"),this.element.style.top="".concat(+de+De+z,"px")},a.prototype.updatePosition=function(){var y=this.attributes.showDelay,x=y===void 0?60:y,b=Date.now();this.timestamp>0&&b-this.timestamp<x||(this.timestamp=b,this.setOffsetPosition(this.autoPosition(this.getRelativeOffsetFromCursor())))},a.prototype.autoPosition=function(y){var x=(0,Nt.CR)(y,2),b=x[0],z=x[1],ee=this.attributes,re=ee.x,ae=ee.y,oe=ee.bounding,de=ee.position;if(!oe)return[b,z];var ge=this.element,ye=ge.offsetWidth,De=ge.offsetHeight,ke=(0,Nt.CR)([+re+b,+ae+z],2),ze=ke[0],We=ke[1],Ve={left:"right",right:"left",top:"bottom",bottom:"top"},Ze=oe.x,Ye=oe.y,et=oe.width,st=oe.height,ht={left:ze<Ze,right:ze+ye>Ze+et,top:We<Ye,bottom:We+De>Ye+st},mt=[];de.split("-").forEach(function(Ot){ht[Ot]?mt.push(Ve[Ot]):mt.push(Ot)});var dt=mt.join("-");return this.getRelativeOffsetFromCursor(dt)},a.prototype.isCursorEntered=function(y,x){if(this.element){var b=this.element.getBoundingClientRect(),z=b.x,ee=b.y,re=b.width,ae=b.height;return new Tc(z,ee,re,ae).isPointIn(y,x)}return!1},a.prototype.closeTransition=function(y){var x=this,b=this.element.style.transition;this.element.style.transition="none",y(),setTimeout(function(){x.element.style.transition=b},10)},a.tag="tooltip",a}(pu),cI=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(de){try{oe(x.next(de))}catch(ge){ee(ge)}}function ae(de){try{oe(x.throw(de))}catch(ge){ee(ge)}}function oe(de){de.done?z(de.value):b(de.value).then(re,ae)}oe((x=x.apply(E,a||[])).next())})};class sE extends oc{constructor(a,y){super(a,Object.assign({},sE.defaultOptions,y)),this.currentTarget=null,this.tooltipElement=null,this.container=null,this.isEnable=(x,b)=>{const{enable:z}=this.options;return typeof z=="function"?z(x,b):z},this.onClick=x=>{const{target:{id:b}}=x;this.currentTarget===b?this.hide(x):this.show(x)},this.onPointerMove=x=>{const{target:b}=x;!this.currentTarget||b.id===this.currentTarget||this.show(x)},this.onPointerLeave=x=>{this.hide(x)},this.onCanvasMove=x=>{this.hide(x)},this.onPointerOver=x=>{this.show(x)},this.showById=x=>cI(this,void 0,void 0,function*(){const b={target:{id:x}};yield this.show(b)}),this.getElementData=(x,b)=>{const{model:z}=this.context;switch(b){case"node":return z.getNodeData([x]);case"edge":return z.getEdgeData([x]);case"combo":return z.getComboData([x]);default:return[]}},this.show=x=>cI(this,void 0,void 0,function*(){var b,z;const{client:ee,target:{id:re}}=x;if(Am(x.target))return;const ae=this.context.graph.getElementType(re),{getContent:oe,title:de}=this.options,ge=this.getElementData(re,ae);if(!this.tooltipElement||!this.isEnable(x,ge))return;let ye={};if(oe){if(ye.content=yield oe(x,ge),!ye.content)return}else{const ze=this.context.graph.getElementRenderStyle(re),We=ae==="node"?ze.fill:ze.stroke;ye={title:de||ae,data:ge.map(Ve=>({name:"ID",value:Ve.id||`${Ve.source} -> ${Ve.target}`,color:We}))}}this.currentTarget=re;let De,ke;if(ee)De=ee.x,ke=ee.y;else{const ze=pc(ge,"0.style",{x:0,y:0});De=ze.x,ke=ze.y}(z=(b=this.options).onOpenChange)===null||z===void 0||z.call(b,!0),this.tooltipElement.update(Object.assign(Object.assign(Object.assign({},this.tooltipStyleProps),{x:De,y:ke,style:{".tooltip":{visibility:"visible"}}}),ye))}),this.hide=x=>{var b,z,ee,re,ae;if(!x){(z=(b=this.options).onOpenChange)===null||z===void 0||z.call(b,!1),(ee=this.tooltipElement)===null||ee===void 0||ee.hide(),this.currentTarget=null;return}if(!this.tooltipElement||!this.currentTarget)return;const{client:{x:oe,y:de}}=x;(ae=(re=this.options).onOpenChange)===null||ae===void 0||ae.call(re,!1),this.tooltipElement.hide(oe,de),this.currentTarget=null},this.initTooltip=()=>{var x;const b=new EZ({className:"tooltip",style:this.tooltipStyleProps});return(x=this.container)===null||x===void 0||x.appendChild(b.HTMLTooltipElement),b},this.render(),this.bindEvents()}getEvents(){return this.options.trigger==="click"?{"node:click":this.onClick,"edge:click":this.onClick,"combo:click":this.onClick,"canvas:click":this.onPointerLeave,contextmenu:this.onPointerLeave,drag:this.onPointerLeave}:{"node:pointerover":this.onPointerOver,"node:pointermove":this.onPointerMove,"canvas:pointermove":this.onCanvasMove,"edge:pointerover":this.onPointerOver,"edge:pointermove":this.onPointerMove,"combo:pointerover":this.onPointerOver,"combo:pointermove":this.onPointerMove,contextmenu:this.onPointerLeave,"node:drag":this.onPointerLeave}}update(a){var y;this.unbindEvents(),super.update(a),this.tooltipElement&&((y=this.container)===null||y===void 0||y.removeChild(this.tooltipElement.HTMLTooltipElement)),this.tooltipElement=this.initTooltip(),this.bindEvents()}render(){const{canvas:a}=this.context,y=a.getContainer();y&&(this.container=y,this.tooltipElement=this.initTooltip())}unbindEvents(){const{graph:a}=this.context,y=this.getEvents();Object.keys(y).forEach(x=>{a.off(x,y[x])})}bindEvents(){const{graph:a}=this.context,y=this.getEvents();Object.keys(y).forEach(x=>{a.on(x,y[x])})}get tooltipStyleProps(){const{canvas:a}=this.context,{center:y}=a.getBounds(),x=a.getContainer(),{top:b,left:z}=x.getBoundingClientRect(),{style:ee,position:re,enterable:ae,container:oe={x:-z,y:-b},title:de,offset:ge}=this.options,[ye,De]=y,[ke,ze]=a.getSize();return{x:ye,y:De,container:oe,title:de,bounding:{x:0,y:0,width:ke,height:ze},position:re,enterable:ae,offset:ge,style:ee}}destroy(){var a;this.unbindEvents(),this.tooltipElement&&((a=this.container)===null||a===void 0||a.removeChild(this.tooltipElement.HTMLTooltipElement)),super.destroy()}}sE.defaultOptions={trigger:"hover",position:"top-right",enterable:!1,enable:!0,offset:[10,10],style:{".tooltip":{visibility:"hidden"}}};var dI=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(de){try{oe(x.next(de))}catch(ge){ee(ge)}}function ae(de){try{oe(x.throw(de))}catch(ge){ee(ge)}}function oe(de){de.done?z(de.value):b(de.value).then(re,ae)}oe((x=x.apply(E,a||[])).next())})};let dv;function fI(E,a){return dv||(dv=document.createElement("canvas")),dv.width=E,dv.height=a,dv.getContext("2d").clearRect(0,0,E,a),dv}function AZ(E,a,y,x){return dI(this,void 0,void 0,function*(){const b=fI(E,a),z=b.getContext("2d"),{rotate:ee,opacity:re,textFill:ae,textFontSize:oe,textFontFamily:de,textFontVariant:ge,textFontWeight:ye,textAlign:De,textBaseline:ke}=x;return z.textAlign=De,z.textBaseline=ke,z.translate(E/2,a/2),z.font=`${oe}px ${de} ${ge} ${ye}`,ee&&z.rotate(ee),re&&(z.globalAlpha=re),ae&&(z.fillStyle=ae,z.fillText(`${y}`,0,0)),b.toDataURL()})}function xZ(E,a,y,x){return dI(this,void 0,void 0,function*(){const b=fI(E,a),z=b.getContext("2d"),{rotate:ee,opacity:re}=x;ee&&z.rotate(ee),re&&(z.globalAlpha=re);const ae=new Image;return ae.crossOrigin="anonymous",ae.src=y,new Promise(oe=>{ae.onload=function(){const de=E>ae.width?(E-ae.width)/2:0,ge=a>ae.height?(a-ae.height)/2:0;z.drawImage(ae,0,0,ae.width,ae.height,de,ge,E-de*2,a-ge*2),oe(b.toDataURL())}})})}var SZ=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(de){try{oe(x.next(de))}catch(ge){ee(ge)}}function ae(de){try{oe(x.throw(de))}catch(ge){ee(ge)}}function oe(de){de.done?z(de.value):b(de.value).then(re,ae)}oe((x=x.apply(E,a||[])).next())})},bZ=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b<x.length;b++)a.indexOf(x[b])<0&&Object.prototype.propertyIsEnumerable.call(E,x[b])&&(y[x[b]]=E[x[b]]);return y};class lE extends oc{constructor(a,y){super(a,Object.assign({},lE.defaultOptions,y)),this.$element=iv("watermark"),this.context.canvas.getContainer().appendChild(this.$element),this.update(y)}update(a){const y=Object.create(null,{update:{get:()=>super.update}});return SZ(this,void 0,void 0,function*(){y.update.call(this,a);const x=this.options,{width:b,height:z,text:ee,imageURL:re}=x,ae=bZ(x,["width","height","text","imageURL"]);Object.keys(ae).forEach(de=>{de.startsWith("background")&&(this.$element.style[de]=a[de])});const oe=re?yield xZ(b,z,re,ae):yield AZ(b,z,ee,ae);this.$element.style.backgroundImage=`url(${oe})`})}destroy(){super.destroy(),this.$element.remove()}}lE.defaultOptions={width:200,height:100,opacity:.2,rotate:Math.PI/12,text:"",textFill:"#000",textFontSize:16,textAlign:"center",textBaseline:"middle",backgroundRepeat:"repeat"};const CZ=["#7E92B5","#F4664A","#FFBE3A"],PZ={type:"group",color:["#1783FF","#00C9C9","#F08F56","#D580FF","#7863FF","#DB9D0D","#60C42D","#FF80CA","#2491B3","#17C76F"]},wZ={type:"group",color:["#99ADD1","#1783FF","#00C9C9","#F08F56","#D580FF","#7863FF","#DB9D0D","#60C42D","#FF80CA","#2491B3","#17C76F"]};function hI(E){const{bgColor:a,textColor:y,nodeColor:x,nodeColorDisabled:b,nodeStroke:z,nodeHaloStrokeOpacityActive:ee=.15,nodeHaloStrokeOpacitySelected:re=.25,nodeOpacityDisabled:ae=.06,nodeIconOpacityInactive:oe=.85,nodeOpacityInactive:de=.25,nodeBadgePalette:ge=CZ,nodePaletteOptions:ye=PZ,edgeColor:De,edgeColorDisabled:ke,edgePaletteOptions:ze=wZ,comboColor:We,comboColorDisabled:Ve,comboStroke:Ze,comboStrokeDisabled:Ye,edgeColorInactive:et}=E;return{background:a,node:{palette:ye,style:{donutOpacity:1,badgeBackgroundOpacity:1,badgeFill:"#fff",badgeFontSize:8,badgePadding:[0,4],badgePalette:ge,fill:x,fillOpacity:1,halo:!1,iconFill:"#fff",iconOpacity:1,labelBackground:!1,labelBackgroundFill:a,labelBackgroundLineWidth:0,labelBackgroundOpacity:.75,labelFill:y,labelFillOpacity:.85,labelLineHeight:16,labelPadding:[0,2],labelFontSize:12,labelFontWeight:400,labelOpacity:1,labelOffsetY:2,lineWidth:0,portFill:x,portLineWidth:1,portStroke:z,portStrokeOpacity:.65,size:32,stroke:z,strokeOpacity:1,zIndex:2},state:{selected:{halo:!0,haloLineWidth:24,haloStrokeOpacity:re,labelFontSize:12,labelFontWeight:"bold",lineWidth:4,stroke:z},active:{halo:!0,haloLineWidth:12,haloStrokeOpacity:ee},highlight:{labelFontWeight:"bold",lineWidth:4,stroke:z,strokeOpacity:.85},inactive:{badgeBackgroundOpacity:de,donutOpacity:de,fillOpacity:de,iconOpacity:oe,labelFill:y,labelFillOpacity:de,strokeOpacity:de},disabled:{badgeBackgroundOpacity:.25,donutOpacity:ae,fill:b,fillOpacity:ae,iconFill:b,iconOpacity:.25,labelFill:y,labelFillOpacity:.25,strokeOpacity:ae}},animation:{enter:"fade",exit:"fade",show:"fade",hide:"fade",expand:"node-expand",collapse:"node-collapse",update:[{fields:["x","y","fill","stroke"]}],translate:[{fields:["x","y"]}]}},edge:{palette:ze,style:{badgeBackgroundFill:De,badgeFill:"#fff",badgeFontSize:8,badgeOffsetX:10,badgeBackgroundOpacity:1,fillOpacity:1,halo:!1,haloLineWidth:12,haloStrokeOpacity:1,increasedLineWidthForHitTesting:2,labelBackground:!1,labelBackgroundFill:a,labelBackgroundLineWidth:0,labelBackgroundOpacity:.75,labelBackgroundPadding:[4,4,4,4],labelFill:y,labelFontSize:12,labelFontWeight:400,labelOpacity:1,labelPlacement:"center",labelTextBaseline:"middle",lineWidth:1,stroke:De,strokeOpacity:1,zIndex:1},state:{selected:{halo:!0,haloStrokeOpacity:.25,labelFontSize:14,labelFontWeight:"bold",lineWidth:3},active:{halo:!0,haloStrokeOpacity:.15},highlight:{labelFontWeight:"bold",lineWidth:3},inactive:{stroke:et,fillOpacity:.08,labelOpacity:.25,strokeOpacity:.08,badgeBackgroundOpacity:.25},disabled:{stroke:ke,fillOpacity:.45,strokeOpacity:.45,labelOpacity:.25,badgeBackgroundOpacity:.45}},animation:{enter:"fade",exit:"fade",expand:"path-in",collapse:"path-out",show:"fade",hide:"fade",update:[{fields:["sourceNode","targetNode"]},{fields:["stroke"],shape:"key"}],translate:[{fields:["sourceNode","targetNode"]}]}},combo:{style:{collapsedMarkerFill:a,collapsedMarkerFontSize:12,collapsedMarkerFillOpacity:1,collapsedSize:32,collapsedFillOpacity:1,fill:We,halo:!1,haloLineWidth:12,haloStroke:Ze,haloStrokeOpacity:.25,labelBackground:!1,labelBackgroundFill:a,labelBackgroundLineWidth:0,labelBackgroundOpacity:.75,labelBackgroundPadding:[2,4,2,4],labelFill:y,labelFontSize:12,labelFontWeight:400,labelOpacity:1,lineDash:0,lineWidth:1,fillOpacity:.04,strokeOpacity:1,padding:10,stroke:Ze},state:{selected:{halo:!0,labelFontSize:14,labelFontWeight:700,lineWidth:4},active:{halo:!0},highlight:{labelFontWeight:700,lineWidth:4},inactive:{fillOpacity:.65,labelOpacity:.25,strokeOpacity:.65},disabled:{fill:Ve,fillOpacity:.25,labelOpacity:.25,stroke:Ye,strokeOpacity:.25}},animation:{enter:"fade",exit:"fade",show:"fade",hide:"fade",expand:"combo-expand",collapse:"combo-collapse",update:[{fields:["x","y"]},{fields:["fill","stroke","lineWidth"],shape:"key"}],translate:[{fields:["x","y"]}]}}}}const MZ=hI({bgColor:"#000000",comboColor:"#fdfdfd",comboColorDisabled:"#d0e4ff",comboStroke:"#99add1",comboStrokeDisabled:"#969696",edgeColor:"#637088",edgeColorDisabled:"#637088",edgeColorInactive:"#D0E4FF",edgePaletteOptions:{type:"group",color:["#637088","#0F55A6","#008383","#9C5D38","#8B53A6","#4E40A6","#8F6608","#3E801D","#A65383","#175E75","#0F8248"]},nodeColor:"#1783ff",nodeColorDisabled:"#D0E4FF",nodeHaloStrokeOpacityActive:.25,nodeHaloStrokeOpacitySelected:.45,nodeIconOpacityInactive:.45,nodeOpacityDisabled:.25,nodeOpacityInactive:.45,nodeStroke:"#d0e4ff",textColor:"#ffffff"}),DZ=hI({bgColor:"#ffffff",comboColor:"#99ADD1",comboColorDisabled:"#f0f0f0",comboStroke:"#99add1",comboStrokeDisabled:"#d9d9d9",edgeColor:"#99add1",edgeColorDisabled:"#d9d9d9",edgeColorInactive:"#1B324F",nodeColor:"#1783ff",nodeColorDisabled:"#1B324F",nodeHaloStrokeOpacityActive:.15,nodeHaloStrokeOpacitySelected:.25,nodeIconOpacityInactive:.85,nodeOpacityDisabled:.06,nodeOpacityInactive:.25,nodeStroke:"#000000",textColor:"#000000"});class hg extends xx{beforeDraw(a,y){return a}afterLayout(a,y){}}class IZ extends hg{beforeDraw(a){const{model:y}=this.context,x=a.add.combos,b=z=>{const ee=[];return z.forEach((re,ae)=>{const de=y.getAncestorsData(ae,"combo").map(ge=>Br(ge)).reverse();ee.push([ae,re,de.length])}),new Map(ee.sort(([,,re],[,,ae])=>ae-re).map(([re,ae])=>[re,ae]))};return a.add.combos=b(x),a.update.combos=b(a.update.combos),a}}function Bd(E,a,y,x,b){const z=Br(x),ee=`${y}s`,re=b?x:E.add[ee].get(z)||E.update[ee].get(z)||E.remove[ee].get(z)||x;Object.entries(E).forEach(([ae,oe])=>{a===ae?oe[ee].set(z,re):oe[ee].delete(z)})}function uE(E,a){return Object.keys(E).every(y=>E[y]===a[y])}class OZ extends hg{beforeDraw(a,y){if(y.stage==="visibility"||!this.context.model.model.hasTreeStructure(Ul))return a;const{model:x}=this.context,{add:b,update:z}=a,ee=[...a.update.combos.entries(),...a.add.combos.entries()];for(;ee.length;){const[re,ae]=ee.pop();if(ud(ae)){const oe=x.getDescendantsData(re),de=oe.map(Br),{internal:ge,external:ye}=Vx(de,De=>x.getRelatedEdgesData(De));oe.forEach(De=>{const ke=Br(De),ze=ee.findIndex(([Ve])=>Ve===ke);ze!==-1&&ee.splice(ze,1);const We=x.getElementType(ke);Bd(a,"remove",We,De)}),ge.forEach(De=>Bd(a,"remove","edge",De)),ye.forEach(De=>{var ke;const ze=Br(De);((ke=this.context.element)===null||ke===void 0?void 0:ke.getElement(ze))?z.edges.set(ze,De):b.edges.set(ze,De)})}else{const oe=x.getChildrenData(re),de=oe.map(Br),{edges:ge}=Vx(de,ye=>x.getRelatedEdgesData(ye));[...oe,...ge].forEach(ye=>{var De;const ke=Br(ye),ze=x.getElementType(ke);((De=this.context.element)===null||De===void 0?void 0:De.getElement(ke))?Bd(a,"update",ze,ye):Bd(a,"add",ze,ye),ze==="combo"&&ee.push([ke,ye])})}}return a}}const gI=(E,a,y,x)=>{const b=`${y}s`,z=Br(x);!E.add[b].has(z)&&!E.update[b].has(z)&&E[a][b].set(Br(x),x)};class TZ extends hg{getElement(a){return this.context.element.getElement(a)}handleExpand(a,y){if(gI(y,"add","node",a),ud(a))return;const x=Br(a);gI(y,"add","node",a),this.context.model.getRelatedEdgesData(x).forEach(ee=>{Bd(y,"add","edge",ee)}),this.context.model.getChildrenData(x).forEach(ee=>{this.handleExpand(ee,y)})}beforeDraw(a){const{graph:y,model:x}=this.context;if(!x.model.hasTreeStructure(wd))return a;const{add:{nodes:b,edges:z},update:{nodes:ee}}=a,re=new Map,ae=new Map;b.forEach((de,ge)=>{ud(de)&&re.set(ge,de)}),z.forEach(de=>{if(y.getElementType(de.source)!=="node")return;const ge=y.getNodeData(de.source);ud(ge)&&re.set(de.source,ge)}),ee.forEach((de,ge)=>{const ye=this.getElement(ge);if(!ye)return;const De=ye.attributes.collapsed;ud(de)?De||re.set(ge,de):De&&ae.set(ge,de)});const oe=new Set;return re.forEach((de,ge)=>{x.getDescendantsData(ge).forEach(De=>{const ke=Br(De);if(oe.has(ke))return;Bd(a,"remove","node",De),x.getRelatedEdgesData(ke).forEach(We=>{Bd(a,"remove","edge",We)}),oe.add(ke)})}),ae.forEach((de,ge)=>{if(x.getAncestorsData(ge,wd).some(ud)){Bd(a,"remove","node",de);return}this.handleExpand(de,a)}),a}}const $b=new WeakMap;function Sre(E,a,y){$b.has(E)||$b.set(E,{});const x=$b.get(E);if(!x[a])return x[a]=y,!0;const b=x[a];return vI(b,y)?!1:(x[a]=y,!0)}const vI=(E,a,y=2)=>{if(typeof E!="object"||typeof a!="object")return E===a;const x=Object.keys(E),b=Object.keys(a);if(x.length!==b.length)return!1;for(const z of x){const ee=E[z],re=a[z];if(y>1&&typeof ee=="object"&&typeof re=="object"){if(!vI(ee,re,y-1))return!1}else if(ee!==re)return!1}return!0};function LZ(E,a,y){ax[E][a]&&ld.warn(`The extension ${a} of ${E} has been registered before, and will be overridden.`),Object.assign(ax[E],{[a]:y})}var mI=function(){function E(a){(0,Ha.Z)(this,E),this.dragndropPluginOptions=a}return(0,Va.Z)(E,[{key:"apply",value:function(y){var x=this,b=y.renderingService,z=y.renderingContext,ee=z.root.ownerDocument,re=ee.defaultView,ae=function(de){var ge=de.target,ye=ge===ee,De=ye&&x.dragndropPluginOptions.isDocumentDraggable?ee:ge.closest&&ge.closest("[draggable=true]");if(De){var ke=!1,ze=de.timeStamp,We=[de.clientX,de.clientY],Ve=null,Ze=[de.clientX,de.clientY],Ye=function(){var st=(0,Kh.Z)((0,Ic.Z)().mark(function ht(mt){var dt,Ot,_t,wt,$t,gn;return(0,Ic.Z)().wrap(function(Xt){for(;;)switch(Xt.prev=Xt.next){case 0:if(ke){Xt.next=2;break}if(dt=mt.timeStamp-ze,Ot=td([mt.clientX,mt.clientY],We),!(dt<=x.dragndropPluginOptions.dragstartTimeThreshold||Ot<=x.dragndropPluginOptions.dragstartDistanceThreshold)){Xt.next=1;break}return Xt.abrupt("return");case 1:mt.type="dragstart",De.dispatchEvent(mt),ke=!0;case 2:if(mt.type="drag",mt.dx=mt.clientX-Ze[0],mt.dy=mt.clientY-Ze[1],De.dispatchEvent(mt),Ze=[mt.clientX,mt.clientY],ye){Xt.next=4;break}return _t=x.dragndropPluginOptions.overlap==="pointer"?[mt.canvasX,mt.canvasY]:ge.getBounds().center,Xt.next=3,ee.elementsFromPoint(_t[0],_t[1]);case 3:wt=Xt.sent,$t=wt[wt.indexOf(ge)+1],gn=($t==null?void 0:$t.closest("[droppable=true]"))||(x.dragndropPluginOptions.isDocumentDroppable?ee:null),Ve!==gn&&(Ve&&(mt.type="dragleave",mt.target=Ve,Ve.dispatchEvent(mt)),gn&&(mt.type="dragenter",mt.target=gn,gn.dispatchEvent(mt)),Ve=gn,Ve&&(mt.type="dragover",mt.target=Ve,Ve.dispatchEvent(mt)));case 4:case"end":return Xt.stop()}},ht)}));return function(mt){return st.apply(this,arguments)}}();re.addEventListener("pointermove",Ye);var et=function(ht){if(ke){ht.detail={preventClick:!0};var mt=ht.clone();Ve&&(mt.type="drop",mt.target=Ve,Ve.dispatchEvent(mt)),mt.type="dragend",De.dispatchEvent(mt),ke=!1}re.removeEventListener("pointermove",Ye)};ge.addEventListener("pointerup",et,{once:!0}),ge.addEventListener("pointerupoutside",et,{once:!0})}};b.hooks.init.tap(E.tag,function(){re.addEventListener("pointerdown",ae)}),b.hooks.destroy.tap(E.tag,function(){re.removeEventListener("pointerdown",ae)})}}])}();mI.tag="Dragndrop";var BZ=function(E){function a(){var y,x=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return(0,Ha.Z)(this,a),y=bs(this,a),y.name="dragndrop",y.options=x,y}return(0,Cs.Z)(a,E),(0,Va.Z)(a,[{key:"init",value:function(){this.addRenderingPlugin(new mI((0,ps.Z)({overlap:"pointer",isDocumentDraggable:!1,isDocumentDroppable:!1,dragstartDistanceThreshold:0,dragstartTimeThreshold:0},this.options)))}},{key:"destroy",value:function(){this.removeAllRenderingPlugins()}},{key:"setOptions",value:function(x){Object.assign(this.plugins[0].dragndropPluginOptions,x)}}])}(Qh),pI=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(de){try{oe(x.next(de))}catch(ge){ee(ge)}}function ae(de){try{oe(x.throw(de))}catch(ge){ee(ge)}}function oe(de){de.done?z(de.value):b(de.value).then(re,ae)}oe((x=x.apply(E,a||[])).next())})},yI=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b<x.length;b++)a.indexOf(x[b])<0&&Object.prototype.propertyIsEnumerable.call(E,x[b])&&(y[x[b]]=E[x[b]]);return y};const EI=["main"],AI=["background","main","label","transient"];function NZ(E){return E.main}class xI{getConfig(){return this.config}getLayer(a="main"){return this.extends.layers[a]||NZ(this.getLayers())}getLayers(){return this.extends.layers}getRenderer(a){return this.extends.renderers[a]}getCamera(a="main"){return this.getLayer(a).getCamera()}getRoot(a="main"){return this.getLayer(a).getRoot()}getContextService(a="main"){return this.getLayer(a).getContextService()}setCursor(a){this.config.cursor=a,this.getLayer().setCursor(a)}get document(){return this.getLayer().document}get context(){return this.getLayer().context}constructor(a){this.config={enableMultiLayer:!0},Object.assign(this.config,a);const y=this.config,{renderer:x,background:b,cursor:z,enableMultiLayer:ee}=y,re=yI(y,["renderer","background","cursor","enableMultiLayer"]),ae=ee?AI:EI,oe=SI(x,ae),de=Object.fromEntries(ae.map(ge=>{const ye=new ZA(Object.assign(Object.assign({},re),{supportsMutipleCanvasesInOneContainer:ee,renderer:oe[ge],background:ee?ge==="background"?b:void 0:b}));return[ge,ye]}));bI(de),this.extends={config:this.config,renderer:x,renderers:oe,layers:de}}get ready(){return Promise.all(Object.entries(this.getLayers()).map(([,a])=>a.ready))}resize(a,y){Object.assign(this.extends.config,{width:a,height:y}),Object.values(this.getLayers()).forEach(x=>{const b=x.getCamera(),z=b.getPosition(),ee=b.getFocalPoint();x.resize(a,y),b.setPosition(z),b.setFocalPoint(ee)})}getBounds(a){return im(Object.values(this.getLayers()).map(y=>a?y.getRoot().childNodes.find(b=>b.classList.includes(a)):y.getRoot()).filter(y=>(y==null?void 0:y.childNodes.length)>0).map(y=>y.getBounds()))}getContainer(){const a=this.extends.config.container;return typeof a=="string"?document.getElementById(a):a}getSize(){return[this.extends.config.width||0,this.extends.config.height||0]}appendChild(a,y){var x;const b=((x=a.style)===null||x===void 0?void 0:x.$layer)||"main";return this.getLayer(b).appendChild(a,y)}setRenderer(a){if(a===this.extends.renderer)return;const y=SI(a,this.config.enableMultiLayer?AI:EI);this.extends.renderers=y,Object.entries(y).forEach(([x,b])=>this.getLayer(x).setRenderer(b)),bI(this.getLayers())}getCanvasByViewport(a){return mc(this.getLayer().viewport2Canvas(Sf(a)))}getViewportByCanvas(a){return mc(this.getLayer().canvas2Viewport(Sf(a)))}getViewportByClient(a){return mc(this.getLayer().client2Viewport(Sf(a)))}getClientByViewport(a){return mc(this.getLayer().viewport2Client(Sf(a)))}getClientByCanvas(a){return this.getClientByViewport(this.getViewportByCanvas(a))}getCanvasByClient(a){const y=this.getLayer(),x=y.client2Viewport(Sf(a));return mc(y.viewport2Canvas(x))}toDataURL(){return pI(this,arguments,void 0,function*(a={}){const y=globalThis.devicePixelRatio||1,{mode:x="viewport"}=a,b=yI(a,["mode"]);let[z,ee,re,ae]=[0,0,0,0];if(x==="viewport")[re,ae]=this.getSize();else if(x==="overall"){const Ve=this.getBounds(),Ze=Jh(Ve);[z,ee]=Ve.min,[re,ae]=Ze}const oe=Xb('<div id="virtual-image"></div>'),de=new ZA({width:re,height:ae,renderer:new mm,devicePixelRatio:y,container:oe,background:this.extends.config.background});yield de.ready,de.appendChild(this.getLayer("background").getRoot().cloneNode(!0)),de.appendChild(this.getRoot().cloneNode(!0));const ge=this.getLayer("label").getRoot().cloneNode(!0),ye=de.viewport2Canvas({x:0,y:0}),De=this.getCanvasByViewport([0,0]);ge.translate([De[0]-ye.x,De[1]-ye.y]),ge.scale(1/this.getCamera().getZoom()),de.appendChild(ge),de.appendChild(this.getLayer("transient").getRoot().cloneNode(!0));const ke=this.getCamera(),ze=de.getCamera();if(x==="viewport")ze.setZoom(ke.getZoom()),ze.setPosition(ke.getPosition()),ze.setFocalPoint(ke.getFocalPoint());else if(x==="overall"){const[Ve,Ze,Ye]=ze.getPosition(),[et,st,ht]=ze.getFocalPoint();ze.setPosition([Ve+z,Ze+ee,Ye]),ze.setFocalPoint([et+z,st+ee,ht])}const We=de.getContextService();return new Promise(Ve=>{de.addEventListener(Pd.RERENDER,()=>pI(this,void 0,void 0,function*(){yield new Promise(Ye=>setTimeout(Ye,300));const Ze=yield We.toDataURL(b);Ve(Ze)}))})})}destroy(){Object.values(this.getLayers()).forEach(a=>{a.getCamera().cancelLandmarkAnimation(),a.destroy()})}}function SI(E,a){return Object.fromEntries(a.map(y=>{const x=(E==null?void 0:E(y))||new mm;return x instanceof mm&&x.setConfig({enableDirtyRectangleRendering:!1}),y==="main"?x.registerPlugin(new BZ({isDocumentDraggable:!0,isDocumentDroppable:!0,dragstartDistanceThreshold:10,dragstartTimeThreshold:100})):x.unregisterPlugin(x.getPlugin("dom-interaction")),[y,x]}))}function bI(E){Object.entries(E).forEach(([a,y])=>{const x=y.getContextService().getDomElement();x!=null&&x.style&&(x.style.gridArea="1 / 1 / 2 / 2",x.style.outline="none",x.tabIndex=1,a!=="main"&&(x.style.pointerEvents="none")),x!=null&&x.parentElement&&(x.parentElement.style.display="grid",x.parentElement.style.isolation="isolate")})}const fv=E=>E?parseInt(E):0;function RZ(E){const a=getComputedStyle(E),y=E.clientWidth||fv(a.width),x=E.clientHeight||fv(a.height),b=fv(a.paddingLeft)+fv(a.paddingRight),z=fv(a.paddingTop)+fv(a.paddingBottom);return[y-b,x-z]}function CI(E){if(!E)return[0,0];let a=640,y=480;const[x,b]=RZ(E);a=x||a,y=b||y;const z=1,ee=1;return[Math.max(ji(a)?a:z,z),Math.max(ji(y)?y:ee,ee)]}class cE{constructor(a){this.type=a}}class Ku extends cE{constructor(a,y){super(a),this.data=y}}class $d extends cE{constructor(a,y,x,b){super(a),this.animationType=y,this.animation=x,this.data=b}}class hv extends cE{constructor(a,y,x){super(a),this.elementType=y,this.data=x}}class dE extends cE{constructor(a,y){super(a),this.data=y}}function tc(E,a){E.emit(a.type,a)}function FZ(E){if(!E)return null;if(E instanceof LP)return{type:"canvas",element:E};let a=E;for(;a;){if(ym(a))return{type:"node",element:a};if(q5(a))return{type:"edge",element:a};if(Kx(a))return{type:"combo",element:a};a=a.parentElement}return null}function PI(E){var a;return((a=E==null?void 0:E.style)===null||a===void 0?void 0:a.zIndex)||0}const gv="cachedStyle",fE=E=>`__${E}__`;function kZ(E,a){const y=Array.isArray(a)?a:[a];pc(E,gv)||fm(E,gv,{}),y.forEach(x=>{fm(pc(E,gv),fE(x),E.attributes[x])})}function wI(E,a){return pc(E,[gv,fE(a)])}function _Z(E,a){return fE(a)in(pc(E,gv)||{})}function bre(E,a,y){set(E,[gv,fE(a)],y)}class zZ{constructor(a){this.tasks=[],this.animations=new Set,this.context=a}getTasks(){const a=[...this.tasks];return this.tasks=[],a}add(a,y){this.tasks.push([a,y])}animate(a,y,x){var b,z,ee;(b=y==null?void 0:y.before)===null||b===void 0||b.call(y);const re=this.getTasks().map(([oe,de])=>{var ge,ye,De;const{element:ke,elementType:ze,stage:We}=oe,Ve=fR(this.context.options,ze,We,a);(ge=de==null?void 0:de.before)===null||ge===void 0||ge.call(de);const Ze=Ve.length?gR(ke,this.inferStyle(oe,x),Ve):null;return Ze?((ye=de==null?void 0:de.beforeAnimate)===null||ye===void 0||ye.call(de,Ze),Ze.finished.then(()=>{var Ye,et;(Ye=de==null?void 0:de.afterAnimate)===null||Ye===void 0||Ye.call(de,Ze),(et=de==null?void 0:de.after)===null||et===void 0||et.call(de),this.animations.delete(Ze)})):(De=de==null?void 0:de.after)===null||De===void 0||De.call(de),Ze}).filter(Boolean);re.forEach(oe=>this.animations.add(oe));const ae=ix(re);return ae?((z=y==null?void 0:y.beforeAnimate)===null||z===void 0||z.call(y,ae),ae.finished.then(()=>{var oe,de;(oe=y==null?void 0:y.afterAnimate)===null||oe===void 0||oe.call(y,ae),(de=y==null?void 0:y.after)===null||de===void 0||de.call(y),this.release()})):(ee=y==null?void 0:y.after)===null||ee===void 0||ee.call(y),ae}inferStyle(a,y){var x,b;const{element:z,elementType:ee,stage:re,originalStyle:ae,updatedStyle:oe={}}=a;a.modifiedStyle||(a.modifiedStyle=Object.assign(Object.assign({},ae),oe));const{modifiedStyle:de}=a,ge={},ye={};if(re==="enter")Object.assign(ge,{opacity:0});else if(re==="exit")Object.assign(ye,{opacity:0});else if(re==="show")Object.assign(ge,{opacity:0}),Object.assign(ye,{opacity:(x=wI(z,"opacity"))!==null&&x!==void 0?x:am("opacity")});else if(re==="hide")Object.assign(ge,{opacity:(b=wI(z,"opacity"))!==null&&b!==void 0?b:am("opacity")}),Object.assign(ye,{opacity:0});else if(re==="collapse"){const{collapse:De}=y||{},{target:ke,descendants:ze,position:We}=De;if(ee==="node"){if(ze.includes(z.id)){const[Ve,Ze,Ye]=We;Object.assign(ye,{x:Ve,y:Ze,z:Ye})}}else if(ee==="combo"){if(z.id===ke||ze.includes(z.id)){const[Ve,Ze]=We;Object.assign(ye,{x:Ve,y:Ze,childrenNode:ae.childrenNode})}}else ee==="edge"&&Object.assign(ye,{sourceNode:de.sourceNode,targetNode:de.targetNode})}else if(re==="expand"){const{expand:De}=y||{},{target:ke,descendants:ze,position:We}=De;if(ee==="node"){if(z.id===ke||ze.includes(z.id)){const[Ve,Ze,Ye]=We;Object.assign(ge,{x:Ve,y:Ze,z:Ye})}}else if(ee==="combo"){if(z.id===ke||ze.includes(z.id)){const[Ve,Ze,Ye]=We;Object.assign(ge,{x:Ve,y:Ze,z:Ye,childrenNode:de.childrenNode})}}else ee==="edge"&&Object.assign(ge,{sourceNode:de.sourceNode,targetNode:de.targetNode})}return[Object.keys(ge).length>0?Object.assign({},ae,ge):ae,Object.keys(ye).length>0?Object.assign({},de,ye):de]}stop(){this.animations.forEach(a=>a.cancel())}clear(){this.tasks=[]}release(){var a,y;const{canvas:x}=this.context,b=(y=(a=x.document)===null||a===void 0?void 0:a.timeline)===null||y===void 0?void 0:y.animationsWithPromises;b&&(x.document.timeline.animationsWithPromises=b.filter(z=>z.playState!=="finished"))}destroy(){this.stop(),this.animations.clear(),this.tasks=[]}}class jZ{constructor(a){this.batchCount=0,this.context=a}emit(a){const{graph:y}=this.context;y.emit(a.type,a)}startBatch(a=!0){this.batchCount++,this.batchCount===1&&this.emit(new Ku(hi.BATCH_START,{initiate:a}))}endBatch(){this.batchCount--,this.batchCount===0&&this.emit(new Ku(hi.BATCH_END))}get isBatching(){return this.batchCount>0}destroy(){this.context=null}}class UZ extends Ax{constructor(a){super(a),this.currentTarget=null,this.currentTargetType=null,this.category="behavior",this.forwardCanvasEvents=y=>{const{target:x}=y,b=FZ(x);if(!b)return;const{graph:z,canvas:ee}=this.context,{type:re,element:ae}=b;if("destroyed"in ae&&(Am(ae)||ae.destroyed))return;const{type:oe,detail:de,button:ge}=y,ye=Object.assign(Object.assign({},y),{target:ae,targetType:re,originalTarget:x});oe===Ea.POINTER_MOVE&&(this.currentTarget!==ae&&(this.currentTarget&&z.emit(`${this.currentTargetType}:${Ea.POINTER_LEAVE}`,Object.assign(Object.assign({},ye),{type:Ea.POINTER_LEAVE,target:this.currentTarget,targetType:this.currentTargetType})),ae&&(Object.assign(ye,{type:Ea.POINTER_ENTER}),z.emit(`${re}:${Ea.POINTER_ENTER}`,ye))),this.currentTarget=ae,this.currentTargetType=re),oe===Ea.CLICK&&ge===2||(z.emit(`${re}:${oe}`,ye),z.emit(oe,ye)),oe===Ea.CLICK&&de===2&&(Object.assign(ye,{type:Ea.DBLCLICK}),z.emit(`${re}:${Ea.DBLCLICK}`,ye),z.emit(Ea.DBLCLICK,ye)),oe===Ea.POINTER_DOWN&&ge===2&&(Object.assign(ye,{type:Ea.CONTEXT_MENU,preventDefault:()=>{var De;(De=ee.getContainer())===null||De===void 0||De.addEventListener(Ea.CONTEXT_MENU,ke=>ke.preventDefault(),{once:!0})}}),z.emit(`${re}:${Ea.CONTEXT_MENU}`,ye),z.emit(Ea.CONTEXT_MENU,ye))},this.forwardContainerEvents=y=>{this.context.graph.emit(y.type,y)},this.forwardEvents(),this.setBehaviors(this.context.options.behaviors||[])}setBehaviors(a){this.setExtensions(a)}forwardEvents(){const a=this.context.canvas.getContainer();a&&[K0.KEY_DOWN,K0.KEY_UP].forEach(x=>{a.addEventListener(x,this.forwardContainerEvents)});const y=this.context.canvas.document;y&&[Ea.CLICK,Ea.DBLCLICK,Ea.POINTER_OVER,Ea.POINTER_LEAVE,Ea.POINTER_ENTER,Ea.POINTER_MOVE,Ea.POINTER_OUT,Ea.POINTER_DOWN,Ea.POINTER_UP,Ea.CONTEXT_MENU,Ea.DRAG_START,Ea.DRAG,Ea.DRAG_END,Ea.DRAG_ENTER,Ea.DRAG_OVER,Ea.DRAG_LEAVE,Ea.DROP,Ea.WHEEL].forEach(x=>{y.addEventListener(x,this.forwardCanvasEvents)})}destroy(){const a=this.context.canvas.getContainer();a&&[K0.KEY_DOWN,K0.KEY_UP].forEach(y=>{a.removeEventListener(y,this.forwardContainerEvents)}),this.context.canvas.document.removeAllEventListeners(),super.destroy()}}function WZ(E,a){a===void 0&&(a=new Map);var y=[];if(Array.isArray(E))for(var x=0,b=E.length;x<b;x++){var z=E[x];a.has(z)||(y.push(z),a.set(z,!0))}return y}var Um=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b<x.length;b++)a.indexOf(x[b])<0&&Object.prototype.propertyIsEnumerable.call(E,x[b])&&(y[x[b]]=E[x[b]]);return y};function gg(E,a){const{data:y,style:x}=E,b=Um(E,["data","style"]),{data:z,style:ee}=a,re=Um(a,["data","style"]),ae=Object.assign(Object.assign({},b),re);return(y||z)&&Object.assign(ae,{data:Object.assign(Object.assign({},y),z)}),(x||ee)&&Object.assign(ae,{style:Object.assign(Object.assign({},x),ee)}),ae}function eC(E){const{data:a,style:y}=E,b=Um(E,["data","style"]);return a&&(b.data=Object.assign({},a)),y&&(b.style=Object.assign({},y)),b}function Cre(E){return!get(E,["nodes","length"])&&!get(E,["edges","length"])&&!get(E,["combos","length"])}function vv(E={},a={}){const{states:y=[],data:x={},style:b={},children:z=[]}=E,ee=Um(E,["states","data","style","children"]),{states:re=[],data:ae={},style:oe={},children:de=[]}=a,ge=Um(a,["states","data","style","children"]),ye=(ke,ze)=>ke.length!==ze.length?!1:ke.every((We,Ve)=>We===ze[Ve]),De=(ke,ze)=>{const We=Object.keys(ke),Ve=Object.keys(ze);return We.length!==Ve.length?!1:We.every(Ze=>ke[Ze]===ze[Ze])};return!(!De(ee,ge)||!ye(z,de)||!ye(y,re)||!De(x,ae)||!De(b,oe))}var GZ=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b<x.length;b++)a.indexOf(x[b])<0&&Object.prototype.propertyIsEnumerable.call(E,x[b])&&(y[x[b]]=E[x[b]]);return y};function tC(E){const{id:a=Br(E),style:y,data:x}=E,b=GZ(E,["id","style","data"]),z=Object.assign(Object.assign({},E),{style:Object.assign({},y),data:Object.assign({},x)});return SR(E)?Object.assign({id:a,data:z},b):{id:a,data:z}}function lc(E){return E.data}function HZ(E){if(E.hasTreeStructure(wd))return;E.attachTreeStructure(wd);const a=E.getAllEdges();for(const y of a){const{source:x,target:b}=y;E.setParent(b,x,wd)}}class VZ{constructor(){this.latestRemovedComboIds=new Set,this.comboIds=new Set,this.changes=[],this.batchCount=0,this.isTraceless=!1,this.enableUpdateNodeLikeHierarchy=!0,this.model=new ku}pushChange(a){if(this.isTraceless)return;const{type:y}=a;if(y===eu.NodeUpdated||y===eu.EdgeUpdated||y===eu.ComboUpdated){const{value:x,original:b}=a;this.changes.push({value:eC(x),original:eC(b),type:y})}else this.changes.push({value:eC(a.value),type:y})}getChanges(){return this.changes}clearChanges(){this.changes=[]}batch(a){this.batchCount++,this.model.batch(a),this.batchCount--}isBatching(){return this.batchCount>0}silence(a){this.isTraceless=!0,a(),this.isTraceless=!1}isCombo(a){return this.comboIds.has(a)||this.latestRemovedComboIds.has(a)}getData(){return{nodes:this.getNodeData(),edges:this.getEdgeData(),combos:this.getComboData()}}getNodeData(a){return this.model.getAllNodes().reduce((y,x)=>{const b=lc(x);return this.isCombo(Br(b))||(a===void 0||a.includes(Br(b)))&&y.push(b),y},[])}getEdgeDatum(a){return lc(this.model.getEdge(a))}getEdgeData(a){return this.model.getAllEdges().reduce((y,x)=>{const b=lc(x);return(a===void 0||a.includes(Br(b)))&&y.push(b),y},[])}getComboData(a){return this.model.getAllNodes().reduce((y,x)=>{const b=lc(x);return this.isCombo(Br(b))&&(a===void 0||a.includes(Br(b)))&&y.push(b),y},[])}getRootsData(a=wd){return this.model.getRoots(a).map(lc)}getAncestorsData(a,y){const{model:x}=this;return!x.hasNode(a)||!x.hasTreeStructure(y)?[]:x.getAncestors(a,y).map(lc)}getDescendantsData(a){const y=this.getElementDataById(a),x=[];return n0(y,b=>{b!==y&&x.push(b)},b=>this.getChildrenData(Br(b)),"TB"),x}getParentData(a,y){const{model:x}=this;if(!y){ld.warn("The hierarchy structure key is not specified");return}if(!x.hasNode(a)||!x.hasTreeStructure(y))return;const b=x.getParent(a,y);return b?lc(b):void 0}getChildrenData(a){const y=this.getElementType(a)==="node"?wd:Ul,{model:x}=this;return!x.hasNode(a)||!x.hasTreeStructure(y)?[]:x.getChildren(a,y).map(lc)}getElementsDataByType(a){return a==="node"?this.getNodeData():a==="edge"?this.getEdgeData():a==="combo"?this.getComboData():[]}getElementDataById(a){return this.getElementType(a)==="edge"?this.getEdgeDatum(a):this.getNodeLikeDatum(a)}getNodeLikeDatum(a){const y=this.model.getNode(a);return lc(y)}getNodeLikeData(a){return this.model.getAllNodes().reduce((y,x)=>{const b=lc(x);return a?a.includes(Br(b))&&y.push(b):y.push(b),y},[])}getElementDataByState(a,y){return this.getElementsDataByType(a).filter(b=>{var z;return(z=b.states)===null||z===void 0?void 0:z.includes(y)})}getElementState(a){var y;return((y=this.getElementDataById(a))===null||y===void 0?void 0:y.states)||[]}hasNode(a){return this.model.hasNode(a)&&!this.isCombo(a)}hasEdge(a){return this.model.hasEdge(a)}hasCombo(a){return this.model.hasNode(a)&&this.isCombo(a)}getRelatedEdgesData(a,y="both"){return this.model.getRelatedEdges(a,y).map(lc)}getNeighborNodesData(a){return this.model.getNeighbors(a).map(lc)}setData(a){const{nodes:y=[],edges:x=[],combos:b=[]}=a,{nodes:z,edges:ee,combos:re}=this.getData(),ae=eg(z,y,ge=>Br(ge),vv),oe=eg(ee,x,ge=>Br(ge),vv),de=eg(re,b,ge=>Br(ge),vv);this.batch(()=>{const ge={nodes:ae.enter,edges:oe.enter,combos:de.enter};this.addData(ge),this.computeZIndex(ge,"add",!0);const ye={nodes:ae.update,edges:oe.update,combos:de.update};this.updateData(ye),this.computeZIndex(ye,"update",!0);const De={nodes:ae.exit.map(Br),edges:oe.exit.map(Br),combos:de.exit.map(Br)};this.removeData(De)})}addData(a){const{nodes:y,edges:x,combos:b}=a;this.batch(()=>{this.addComboData(b),this.addNodeData(y),this.addEdgeData(x)}),this.computeZIndex(a,"add")}addNodeData(a=[]){a.length&&(this.model.addNodes(a.map(y=>(this.pushChange({value:y,type:eu.NodeAdded}),tC(y)))),this.updateNodeLikeHierarchy(a),this.computeZIndex({nodes:a},"add"))}addEdgeData(a=[]){a.length&&(this.model.addEdges(a.map(y=>(this.pushChange({value:y,type:eu.EdgeAdded}),tC(y)))),this.computeZIndex({edges:a},"add"))}addComboData(a=[]){if(!a.length)return;const{model:y}=this;y.hasTreeStructure(Ul)||y.attachTreeStructure(Ul),y.addNodes(a.map(x=>(this.comboIds.add(Br(x)),this.pushChange({value:x,type:eu.ComboAdded}),tC(x)))),this.updateNodeLikeHierarchy(a),this.computeZIndex({combos:a},"add")}addChildrenData(a,y){const x=this.getNodeLikeDatum(a),b=y.map(Br);this.addNodeData(y),this.updateNodeData([{id:a,children:[...x.children||[],...b]}]),this.addEdgeData(b.map(z=>({source:a,target:z})))}computeZIndex(a,y,x=!1){!x&&this.isBatching()||this.batch(()=>{const{nodes:b=[],edges:z=[],combos:ee=[]}=a;ee.forEach(re=>{var ae,oe,de;const ge=Br(re);if(y==="add"&&ji((ae=re.style)===null||ae===void 0?void 0:ae.zIndex)||y==="update"&&!("combo"in re))return;const ye=this.getParentData(ge,Ul),De=ye?((de=(oe=ye.style)===null||oe===void 0?void 0:oe.zIndex)!==null&&de!==void 0?de:0)+1:0;this.preventUpdateNodeLikeHierarchy(()=>{this.updateComboData([{id:ge,style:{zIndex:De}}])})}),b.forEach(re=>{var ae,oe,de;const ge=Br(re);if(y==="add"&&ji((ae=re.style)===null||ae===void 0?void 0:ae.zIndex)||y==="update"&&!("combo"in re)&&!("children"in re))return;let ye=0;const De=this.getParentData(ge,Ul);if(De)ye=(((oe=De.style)===null||oe===void 0?void 0:oe.zIndex)||0)+1;else{const ke=this.getParentData(ge,wd);ke&&(ye=((de=ke==null?void 0:ke.style)===null||de===void 0?void 0:de.zIndex)||0)}this.preventUpdateNodeLikeHierarchy(()=>{this.updateNodeData([{id:ge,style:{zIndex:ye}}])})}),z.forEach(re=>{var ae,oe,de,ge,ye;if(ji((ae=re.style)===null||ae===void 0?void 0:ae.zIndex))return;let{id:De,source:ke,target:ze}=re;if(!De)De=Br(re);else{const Ze=this.getEdgeDatum(De);ke=Ze.source,ze=Ze.target}if(!ke||!ze)return;const We=((de=(oe=this.getNodeLikeDatum(ke))===null||oe===void 0?void 0:oe.style)===null||de===void 0?void 0:de.zIndex)||0,Ve=((ye=(ge=this.getNodeLikeDatum(ze))===null||ge===void 0?void 0:ge.style)===null||ye===void 0?void 0:ye.zIndex)||0;this.updateEdgeData([{id:Br(re),style:{zIndex:Math.max(We,Ve)-1}}])})})}getFrontZIndex(a){var y;const x=this.getElementType(a),b=this.getElementDataById(a),z=this.getData();if(Object.assign(z,{[`${x}s`]:z[`${x}s`].filter(ee=>Br(ee)!==a)}),x==="combo"&&!ud(b)){const ee=new Set(this.getAncestorsData(a,Ul).map(Br));z.nodes=z.nodes.filter(re=>!ee.has(Br(re))),z.combos=z.combos.filter(re=>!ee.has(Br(re))),z.edges=z.edges.filter(({source:re,target:ae})=>!ee.has(re)&&!ee.has(ae))}return Math.max(((y=b.style)===null||y===void 0?void 0:y.zIndex)||0,0,...Object.values(z).flat().map(ee=>{var re;return(((re=ee==null?void 0:ee.style)===null||re===void 0?void 0:re.zIndex)||0)+1}))}updateNodeLikeHierarchy(a){if(!this.enableUpdateNodeLikeHierarchy)return;const{model:y}=this;a.forEach(x=>{const b=Br(x),z=my(x);z!==void 0&&(y.hasTreeStructure(Ul)||y.attachTreeStructure(Ul),z===null&&this.refreshComboData(b),this.setParent(b,my(x),Ul));const ee=x.children||[];if(ee.length){y.hasTreeStructure(wd)||y.attachTreeStructure(wd);const re=ee.filter(ae=>y.hasNode(ae));re.forEach(ae=>this.setParent(ae,b,wd)),re.length!==ee.length&&this.updateNodeData([{id:b,children:re}])}})}preventUpdateNodeLikeHierarchy(a){this.enableUpdateNodeLikeHierarchy=!1,a(),this.enableUpdateNodeLikeHierarchy=!0}updateData(a){const{nodes:y,edges:x,combos:b}=a;this.batch(()=>{this.updateNodeData(y),this.updateComboData(b),this.updateEdgeData(x)}),this.computeZIndex(a,"update")}updateNodeData(a=[]){if(!a.length)return;const{model:y}=this;this.batch(()=>{const x=[];a.forEach(b=>{const z=Br(b),ee=lc(y.getNode(z));if(vv(ee,b))return;const re=gg(ee,b);this.pushChange({value:re,original:ee,type:eu.NodeUpdated}),y.mergeNodeData(z,re),x.push(re)}),this.updateNodeLikeHierarchy(x)}),this.computeZIndex({nodes:a},"update")}refreshData(){const{nodes:a,edges:y,combos:x}=this.getData();a.forEach(b=>{this.pushChange({value:b,original:b,type:eu.NodeUpdated})}),y.forEach(b=>{this.pushChange({value:b,original:b,type:eu.EdgeUpdated})}),x.forEach(b=>{this.pushChange({value:b,original:b,type:eu.ComboUpdated})})}syncNodeLikeDatum(a){const{model:y}=this,x=Br(a);if(!y.hasNode(x))return;const b=lc(y.getNode(x)),z=gg(b,a);y.mergeNodeData(x,z)}syncEdgeDatum(a){const{model:y}=this,x=Br(a);if(!y.hasEdge(x))return;const b=lc(y.getEdge(x)),z=gg(b,a);y.mergeEdgeData(x,z)}updateEdgeData(a=[]){if(!a.length)return;const{model:y}=this;this.batch(()=>{a.forEach(x=>{const b=Br(x),z=lc(y.getEdge(b));if(vv(z,x))return;x.source&&z.source!==x.source&&y.updateEdgeSource(b,x.source),x.target&&z.target!==x.target&&y.updateEdgeTarget(b,x.target);const ee=gg(z,x);this.pushChange({value:ee,original:z,type:eu.EdgeUpdated}),y.mergeEdgeData(b,ee)})}),this.computeZIndex({edges:a},"update")}updateComboData(a=[]){if(!a.length)return;const{model:y}=this;y.batch(()=>{const x=[];a.forEach(b=>{const z=Br(b),ee=lc(y.getNode(z));if(vv(ee,b))return;const re=gg(ee,b);this.pushChange({value:re,original:ee,type:eu.ComboUpdated}),y.mergeNodeData(z,re),x.push(re)}),this.updateNodeLikeHierarchy(x)}),this.computeZIndex({combos:a},"update")}setParent(a,y,x,b=!0){if(a===y)return;const z=this.getNodeLikeDatum(a),ee=my(z);if(ee!==y&&x===Ul){const re={id:a,combo:y};this.isCombo(a)?this.syncNodeLikeDatum(re):this.syncNodeLikeDatum(re)}this.model.setParent(a,y,x),b&&x===Ul&&WZ([ee,y]).forEach(re=>{re!==void 0&&this.refreshComboData(re)})}refreshComboData(a){const y=this.getComboData([a])[0],x=this.getAncestorsData(a,Ul);y&&this.pushChange({value:y,original:y,type:eu.ComboUpdated}),x.forEach(b=>{this.pushChange({value:b,original:b,type:eu.ComboUpdated})})}getElementPosition(a){const y=this.getElementDataById(a);return $u(y)}translateNodeLikeBy(a,y){this.isCombo(a)?this.translateComboBy(a,y):this.translateNodeBy(a,y)}translateNodeLikeTo(a,y){this.isCombo(a)?this.translateComboTo(a,y):this.translateNodeTo(a,y)}translateNodeBy(a,y){const x=this.getElementPosition(a),b=us(x,[...y,0].slice(0,3));this.translateNodeTo(a,b)}translateNodeTo(a,y){const[x=0,b=0,z=0]=y;this.preventUpdateNodeLikeHierarchy(()=>{this.updateNodeData([{id:a,style:{x,y:b,z}}])})}translateComboBy(a,y){const[x=0,b=0,z=0]=y;if([x,b,z].some(isNaN)||[x,b,z].every(ae=>ae===0))return;const ee=this.getComboData([a])[0];if(!ee)return;const re=new Set;n0(ee,ae=>{const oe=Br(ae);if(re.has(oe))return;re.add(oe);const[de,ge,ye]=$u(ae),De=gg(ae,{style:{x:de+x,y:ge+b,z:ye+z}});this.pushChange({value:De,original:ae,type:this.isCombo(oe)?eu.ComboUpdated:eu.NodeUpdated}),this.model.mergeNodeData(oe,De)},ae=>this.getChildrenData(Br(ae)),"BT")}translateComboTo(a,y){var x;if(y.some(isNaN))return;const[b=0,z=0,ee=0]=y,re=(x=this.getComboData([a]))===null||x===void 0?void 0:x[0];if(!re)return;const[ae,oe,de]=$u(re),ge=b-ae,ye=z-oe,De=ee-de;n0(re,ke=>{const ze=Br(ke),[We,Ve,Ze]=$u(ke),Ye=gg(ke,{style:{x:We+ge,y:Ve+ye,z:Ze+De}});this.pushChange({value:Ye,original:ke,type:this.isCombo(ze)?eu.ComboUpdated:eu.NodeUpdated}),this.model.mergeNodeData(ze,Ye)},ke=>this.getChildrenData(Br(ke)),"BT")}removeData(a){const{nodes:y,edges:x,combos:b}=a;this.batch(()=>{this.removeEdgeData(x),this.removeNodeData(y),this.removeComboData(b),this.latestRemovedComboIds=new Set(b)})}removeNodeData(a=[]){a.length&&this.batch(()=>{a.forEach(y=>{this.removeEdgeData(this.getRelatedEdgesData(y).map(Br)),this.pushChange({value:this.getNodeData([y])[0],type:eu.NodeRemoved}),this.removeNodeLikeHierarchy(y)}),this.model.removeNodes(a)})}removeEdgeData(a=[]){a.length&&(a.forEach(y=>this.pushChange({value:this.getEdgeData([y])[0],type:eu.EdgeRemoved})),this.model.removeEdges(a))}removeComboData(a=[]){a.length&&this.batch(()=>{a.forEach(y=>{this.pushChange({value:this.getComboData([y])[0],type:eu.ComboRemoved}),this.removeNodeLikeHierarchy(y),this.comboIds.delete(y)}),this.model.removeNodes(a)})}removeNodeLikeHierarchy(a){if(this.model.hasTreeStructure(Ul)){const y=my(this.getNodeLikeDatum(a));this.setParent(a,void 0,Ul,!1),this.model.getChildren(a,Ul).forEach(x=>{const b=lc(x),z=Br(b);this.setParent(Br(b),y,Ul,!1);const ee=gg(b,{id:Br(b),combo:y});this.pushChange({value:ee,original:b,type:this.isCombo(z)?eu.ComboUpdated:eu.NodeUpdated}),this.model.mergeNodeData(Br(b),ee)}),Io(y)||this.refreshComboData(y)}}getElementType(a){if(this.model.hasNode(a))return this.isCombo(a)?"combo":"node";if(this.model.hasEdge(a))return"edge";throw new Error(gh(`Unknown element type of id: ${a}`))}destroy(){const{model:a}=this,y=a.getAllNodes(),x=a.getAllEdges();a.removeEdges(x.map(b=>b.id)),a.removeNodes(y.map(b=>b.id)),this.context={}}}var Wm=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(de){try{oe(x.next(de))}catch(ge){ee(ge)}}function ae(de){try{oe(x.throw(de))}catch(ge){ee(ge)}}function oe(de){de.done?z(de.value):b(de.value).then(re,ae)}oe((x=x.apply(E,a||[])).next())})};class KZ{constructor(a){this.elementMap={},this.shapeTypeMap={},this.paletteStyle={},this.defaultStyle={},this.stateStyle={},this.visibilityCache=new WeakMap,this.context=a}init(){this.initContainer()}initContainer(){if(!this.container||this.container.destroyed){const{canvas:a}=this.context;this.container=a.appendChild(new qu({className:"elements"}))}}emit(a,y){y.silence||tc(this.context.graph,a)}forEachElementData(a){t0.forEach(y=>{const x=this.context.model.getElementsDataByType(y);a(y,x)})}getElementType(a,y){var x;const{options:b,graph:z}=this.context,ee=((x=b[a])===null||x===void 0?void 0:x.type)||y.type;return ee?typeof ee=="string"?ee:ee.call(z,y):a==="edge"?"line":"circle"}getTheme(a){return nw(this.context.options)[a]||{}}getThemeStyle(a){return this.getTheme(a).style||{}}getThemeStateStyle(a,y){const{state:x={}}=this.getTheme(a);return Object.assign({},...y.map(b=>x[b]||{}))}computePaletteStyle(){const{options:a}=this.context;this.paletteStyle={},this.forEachElementData((y,x)=>{var b,z;const ee=Object.assign({},v5((b=this.getTheme(y))===null||b===void 0?void 0:b.palette),v5((z=a[y])===null||z===void 0?void 0:z.palette));ee!=null&&ee.field&&Object.assign(this.paletteStyle,N7(x,ee))})}getPaletteStyle(a,y){const x=this.paletteStyle[y];return x?a==="edge"?{stroke:x}:{fill:x}:{}}computeElementDefaultStyle(a,y){var x;const{options:b}=this.context,z=((x=b[a])===null||x===void 0?void 0:x.style)||{};"transform"in z&&Array.isArray(z.transform)&&(z.transform=[...z.transform]),this.defaultStyle[Br(y.datum)]=g5(z,y)}computeElementsDefaultStyle(a){const{graph:y}=this.context;this.forEachElementData((x,b)=>{const z=b.length;for(let ee=0;ee<z;ee++){const re=b[ee];(a===void 0||a.includes(Br(re)))&&this.computeElementDefaultStyle(x,{datum:re,graph:y})}})}getDefaultStyle(a){return this.defaultStyle[a]||{}}getElementState(a){try{const{model:y}=this.context;return y.getElementState(a)}catch(y){return[]}}getElementStateStyle(a,y,x){var b,z;const{options:ee}=this.context,re=((z=(b=ee[a])===null||b===void 0?void 0:b.state)===null||z===void 0?void 0:z[y])||{};return g5(re,x)}computeElementStatesStyle(a,y,x){this.stateStyle[Br(x.datum)]=Object.assign({},...y.map(b=>this.getElementStateStyle(a,b,x)))}computeElementsStatesStyle(a){const{graph:y}=this.context;this.forEachElementData((x,b)=>{const z=b.length;for(let ee=0;ee<z;ee++){const re=b[ee];if(a===void 0||a.includes(Br(re))){const ae=this.getElementState(Br(re));this.computeElementStatesStyle(x,ae,{datum:re,graph:y})}}})}getStateStyle(a){return this.stateStyle[a]||{}}computeStyle(a,y){a&&["translate","zIndex"].includes(a)||(this.computePaletteStyle(),this.computeElementsDefaultStyle(y),this.computeElementsStatesStyle(y))}getElement(a){return this.elementMap[a]}getNodes(){return this.context.model.getNodeData().map(({id:a})=>this.elementMap[a])}getEdges(){return this.context.model.getEdgeData().map(a=>this.elementMap[Br(a)])}getCombos(){return this.context.model.getComboData().map(({id:a})=>this.elementMap[a])}getElementComputedStyle(a,y){const x=Br(y),b=this.getThemeStyle(a),z=this.getPaletteStyle(a,x),ee=y.style||{},re=this.getDefaultStyle(x),ae=this.getThemeStateStyle(a,this.getElementState(x)),oe=this.getStateStyle(x),de=Object.assign({},b,z,ee,re,ae,oe);if(a==="combo"){const ge=this.context.model.getChildrenData(x),De=!!de.collapsed?[]:ge.map(Br).filter(ke=>this.getElement(ke));Object.assign(de,{childrenNode:De,childrenData:ge})}return de}getDrawData(a){this.init();const y=this.computeChangesAndDrawData(a);if(!y)return null;const{type:x="draw",stage:b=x}=a;return this.markDestroyElement(y.drawData),this.computeStyle(b),{type:x,stage:b,data:y}}draw(a={animation:!0}){const y=this.getDrawData(a);if(!y)return;const{data:{drawData:{add:x,update:b,remove:z}}}=y;return this.destroyElements(z,a),this.createElements(x,a),this.updateElements(b,a),this.setAnimationTask(a,y)}preLayoutDraw(){return Wm(this,arguments,void 0,function*(a={animation:!0}){var y,x;const b=this.getDrawData(a);if(!b)return;const{data:{drawData:z}}=b;yield(x=(y=this.context.layout)===null||y===void 0?void 0:y.preLayout)===null||x===void 0?void 0:x.call(y,z);const{add:ee,update:re,remove:ae}=z;return this.destroyElements(ae,a),this.createElements(ee,a),this.updateElements(re,a),this.setAnimationTask(a,b)})}setAnimationTask(a,y){const{animation:x,silence:b}=a,{data:{dataChanges:z,drawData:ee},stage:re,type:ae}=y;return this.context.animation.animate(x,b?{}:{before:()=>this.emit(new Ku(hi.BEFORE_DRAW,{dataChanges:z,animation:x,stage:re,render:ae==="render"}),a),beforeAnimate:oe=>this.emit(new $d(hi.BEFORE_ANIMATE,sd.DRAW,oe,ee),a),afterAnimate:oe=>this.emit(new $d(hi.AFTER_ANIMATE,sd.DRAW,oe,ee),a),after:()=>this.emit(new Ku(hi.AFTER_DRAW,{dataChanges:z,animation:x,stage:re,render:ae==="render",firstRender:this.context.graph.rendered===!1}),a)})}computeChangesAndDrawData(a){const{model:y}=this.context,x=y.getChanges(),b=IS(x);if(b.length===0)return null;const{NodeAdded:z=[],NodeUpdated:ee=[],NodeRemoved:re=[],EdgeAdded:ae=[],EdgeUpdated:oe=[],EdgeRemoved:de=[],ComboAdded:ge=[],ComboUpdated:ye=[],ComboRemoved:De=[]}=ny(b,Ve=>Ve.type),ke=Ve=>new Map(Ve.map(Ze=>{const Ye=Ze.value;return[Br(Ye),Ye]})),ze={add:{nodes:ke(z),edges:ke(ae),combos:ke(ge)},update:{nodes:ke(ee),edges:ke(oe),combos:ke(ye)},remove:{nodes:ke(re),edges:ke(de),combos:ke(De)}},We=this.transformData(ze,a);return y.clearChanges(),{dataChanges:x,drawData:We}}transformData(a,y){const x=this.context.transform.getTransformInstance();return Object.values(x).reduce((b,z)=>z.beforeDraw(b,y),a)}createElement(a,y,x){var b;const z=Br(y);if(this.getElement(z))return;const re=this.getElementType(a,y),ae=this.getElementComputedStyle(a,y),oe=hh(a,re);if(!oe)return ld.warn(`The element ${re} of ${a} is not registered.`);this.emit(new hv(hi.BEFORE_ELEMENT_CREATE,a,y),x);const de=this.container.appendChild(new oe({id:z,context:this.context,style:ae}));this.shapeTypeMap[z]=re,this.elementMap[z]=de;const{stage:ge="enter"}=x;(b=this.context.animation)===null||b===void 0||b.add({element:de,elementType:a,stage:ge,originalStyle:Object.assign({},de.attributes),updatedStyle:ae},{after:()=>{var ye;this.emit(new hv(hi.AFTER_ELEMENT_CREATE,a,y),x),(ye=de.onCreate)===null||ye===void 0||ye.call(de)}})}createElements(a,y){const{nodes:x,edges:b,combos:z}=a;[["node",x],["combo",z],["edge",b]].forEach(([re,ae])=>{ae.forEach(oe=>this.createElement(re,oe,y))})}getUpdateStageStyle(a,y,x){const{stage:b="update"}=x;if(b==="translate")if(a==="node"||a==="combo"){const{style:{x:z=0,y:ee=0,z:re=0}={}}=y;return{x:z,y:ee,z:re}}else return{};return this.getElementComputedStyle(a,y)}updateElement(a,y,x){var b;const z=Br(y),{stage:ee="update"}=x,re=this.getElement(z);if(!re)return()=>null;this.emit(new hv(hi.BEFORE_ELEMENT_UPDATE,a,y),x);const ae=this.getElementType(a,y),oe=this.getUpdateStageStyle(a,y,x);this.shapeTypeMap[z]!==ae&&(re.destroy(),delete this.shapeTypeMap[z],delete this.elementMap[z],this.createElement(a,y,{animation:!1,silence:!0}));const de=ee!=="visibility"?ee:oe.visibility==="hidden"?"hide":"show";de==="hide"&&delete oe.visibility,(b=this.context.animation)===null||b===void 0||b.add({element:re,elementType:a,stage:de,originalStyle:Object.assign({},re.attributes),updatedStyle:oe},{before:()=>{const ge=this.elementMap[z];ee!=="collapse"&&Xx(ge,oe),ee==="visibility"&&(_Z(ge,"opacity")||kZ(ge,"opacity"),this.visibilityCache.set(ge,de==="show"?"visible":"hidden"),de==="show"&&$g(ge,"visible"))},after:()=>{var ge;const ye=this.elementMap[z];ee==="collapse"&&Xx(ye,oe),de==="hide"&&$g(ye,this.visibilityCache.get(ye)),this.emit(new hv(hi.AFTER_ELEMENT_UPDATE,a,y),x),(ge=ye.onUpdate)===null||ge===void 0||ge.call(ye)}})}updateElements(a,y){const{nodes:x,edges:b,combos:z}=a;[["node",x],["combo",z],["edge",b]].forEach(([re,ae])=>{ae.forEach(oe=>this.updateElement(re,oe,y))})}markDestroyElement(a){Object.values(a.remove).forEach(y=>{y.forEach(x=>{const b=Br(x),z=this.getElement(b);z&&Kk(z)})})}destroyElement(a,y,x){var b;const{stage:z="exit"}=x,ee=Br(y),re=this.elementMap[ee];if(!re)return()=>null;this.emit(new hv(hi.BEFORE_ELEMENT_DESTROY,a,y),x),(b=this.context.animation)===null||b===void 0||b.add({element:re,elementType:a,stage:z,originalStyle:Object.assign({},re.attributes),updatedStyle:{}},{after:()=>{var ae;this.clearElement(ee),re.destroy(),(ae=re.onDestroy)===null||ae===void 0||ae.call(re),this.emit(new hv(hi.AFTER_ELEMENT_DESTROY,a,y),x)}})}destroyElements(a,y){const{nodes:x,edges:b,combos:z}=a;[["combo",z],["edge",b],["node",x]].forEach(([re,ae])=>{ae.forEach(oe=>this.destroyElement(re,oe,y))})}clearElement(a){delete this.paletteStyle[a],delete this.defaultStyle[a],delete this.stateStyle[a],delete this.elementMap[a],delete this.shapeTypeMap[a]}alignLayoutResultToElement(a,y){var x,b;const z=(x=a.nodes)===null||x===void 0?void 0:x.find(ee=>Br(ee)===y);if(z){const ee=$u(this.context.model.getNodeLikeDatum(y)),re=$u(z),ae=Fl(ee,re);(b=a.nodes)===null||b===void 0||b.forEach(oe=>{var de,ge,ye;!((de=oe.style)===null||de===void 0)&&de.x&&(oe.style.x+=ae[0]),!((ge=oe.style)===null||ge===void 0)&&ge.y&&(oe.style.y+=ae[1]),!((ye=oe.style)===null||ye===void 0)&&ye.z&&(oe.style.z+=ae[2]||0)})}}collapseNode(a,y){return Wm(this,void 0,void 0,function*(){var x;const{animation:b}=y,{model:z}=this.context,ee=this.computeChangesAndDrawData({stage:"collapse",animation:b});if(!ee)return;const{drawData:re}=ee,{add:ae,remove:oe,update:de}=re;this.markDestroyElement(re);const ge={animation:b,stage:"collapse",data:re};this.destroyElements(oe,ge),this.createElements(ae,ge),this.updateElements(de,ge),yield(x=this.context.animation.animate(b,{beforeAnimate:ye=>this.emit(new $d(hi.BEFORE_ANIMATE,sd.COLLAPSE,ye,re),ge),afterAnimate:ye=>this.emit(new $d(hi.AFTER_ANIMATE,sd.COLLAPSE,ye,re),ge)},{collapse:{target:a,descendants:Array.from(oe.nodes).map(([,ye])=>Br(ye)),position:$u(de.nodes.get(a))}}))===null||x===void 0?void 0:x.finished})}expandNode(a,y){return Wm(this,void 0,void 0,function*(){var x;const{model:b,layout:z}=this.context,{animation:ee,align:re}=y,ae=$u(b.getNodeData([a])[0]),oe=this.computeChangesAndDrawData({stage:"expand",animation:ee});if(this.createElements(oe.drawData.add,{animation:!1,stage:"expand",target:a}),this.context.animation.clear(),this.computeStyle("expand"),!oe)return;const{drawData:de}=oe,{update:ge,add:ye}=de,De={animation:ee,stage:"expand",data:de};ye.edges.forEach(ke=>ge.edges.set(Br(ke),ke)),ye.nodes.forEach(ke=>ge.nodes.set(Br(ke),ke)),this.updateElements(ge,De),yield(x=this.context.animation.animate(ee,{beforeAnimate:ke=>this.emit(new $d(hi.BEFORE_ANIMATE,sd.EXPAND,ke,de),De),afterAnimate:ke=>this.emit(new $d(hi.AFTER_ANIMATE,sd.EXPAND,ke,de),De)},{expand:{target:a,descendants:Array.from(ye.nodes).map(([,ke])=>Br(ke)),position:ae}}))===null||x===void 0?void 0:x.finished})}collapseCombo(a,y){return Wm(this,void 0,void 0,function*(){var x;const{model:b,element:z}=this.context;if(b.getAncestorsData(a,Ul).some(ze=>ud(ze)))return;const ee=z.getElement(a),re=ee.getComboPosition(Object.assign(Object.assign({},ee.attributes),{collapsed:!0})),ae=this.computeChangesAndDrawData({stage:"collapse",animation:y});if(!ae)return;const{dataChanges:oe,drawData:de}=ae;this.markDestroyElement(de);const{update:ge,remove:ye}=de,De={animation:y,stage:"collapse",data:de};this.destroyElements(ye,De),this.updateElements(ge,De);const ke=ze=>Array.from(ze).map(([,We])=>Br(We));yield(x=this.context.animation.animate(y,{before:()=>this.emit(new Ku(hi.BEFORE_DRAW,{dataChanges:oe,animation:y}),De),beforeAnimate:ze=>this.emit(new $d(hi.BEFORE_ANIMATE,sd.COLLAPSE,ze,de),De),afterAnimate:ze=>this.emit(new $d(hi.AFTER_ANIMATE,sd.COLLAPSE,ze,de),De),after:()=>this.emit(new Ku(hi.AFTER_DRAW,{dataChanges:oe,animation:y}),De)},{collapse:{target:a,descendants:[...ke(ye.nodes),...ke(ye.combos)],position:re}}))===null||x===void 0?void 0:x.finished})}expandCombo(a,y){return Wm(this,void 0,void 0,function*(){var x;const{model:b}=this.context,z=$u(b.getComboData([a])[0]);this.computeStyle("expand");const ee=this.computeChangesAndDrawData({stage:"expand",animation:y});if(!ee)return;const{dataChanges:re,drawData:ae}=ee,{add:oe,update:de}=ae,ge={animation:y,stage:"expand",data:ae,target:a};this.createElements(oe,ge),this.updateElements(de,ge);const ye=De=>Array.from(De).map(([,ke])=>Br(ke));yield(x=this.context.animation.animate(y,{before:()=>this.emit(new Ku(hi.BEFORE_DRAW,{dataChanges:re,animation:y}),ge),beforeAnimate:De=>this.emit(new $d(hi.BEFORE_ANIMATE,sd.EXPAND,De,ae),ge),afterAnimate:De=>this.emit(new $d(hi.AFTER_ANIMATE,sd.EXPAND,De,ae),ge),after:()=>this.emit(new Ku(hi.AFTER_DRAW,{dataChanges:re,animation:y}),ge)},{expand:{target:a,descendants:[...ye(oe.nodes),...ye(oe.combos)],position:z}}))===null||x===void 0?void 0:x.finished})}clear(){this.container.destroy(),this.initContainer(),this.elementMap={},this.shapeTypeMap={},this.defaultStyle={},this.stateStyle={},this.paletteStyle={}}destroy(){this.clear(),this.container.destroy(),this.context={}}}const MI=Symbol("Comlink.proxy"),ZZ=Symbol("Comlink.endpoint"),DI=Symbol("Comlink.releaseProxy"),nC=Symbol("Comlink.finalizer"),hE=Symbol("Comlink.thrown"),II=E=>typeof E=="object"&&E!==null||typeof E=="function",QZ={canHandle:E=>II(E)&&E[MI],serialize(E){const{port1:a,port2:y}=new MessageChannel;return TI(E,a),[y,[y]]},deserialize(E){return E.start(),BI(E)}},YZ={canHandle:E=>II(E)&&hE in E,serialize({value:E}){let a;return E instanceof Error?a={isError:!0,value:{message:E.message,name:E.name,stack:E.stack}}:a={isError:!1,value:E},[a,[]]},deserialize(E){throw E.isError?Object.assign(new Error(E.value.message),E.value):E.value}},OI=new Map([["proxy",QZ],["throw",YZ]]);function XZ(E,a){for(const y of E)if(a===y||y==="*"||y instanceof RegExp&&y.test(a))return!0;return!1}function TI(E,a=globalThis,y=["*"]){a.addEventListener("message",function x(b){if(!b||!b.data)return;if(!XZ(y,b.origin)){console.warn(`Invalid origin '${b.origin}' for comlink proxy`);return}const{id:z,type:ee,path:re}=Object.assign({path:[]},b.data),ae=(b.data.argumentList||[]).map(E0);let oe;try{const de=re.slice(0,-1).reduce((ye,De)=>ye[De],E),ge=re.reduce((ye,De)=>ye[De],E);switch(ee){case"GET":oe=ge;break;case"SET":de[re.slice(-1)[0]]=E0(b.data.value),oe=!0;break;case"APPLY":oe=ge.apply(de,ae);break;case"CONSTRUCT":{const ye=new ge(...ae);oe=nQ(ye)}break;case"ENDPOINT":{const{port1:ye,port2:De}=new MessageChannel;TI(E,De),oe=tQ(ye,[ye])}break;case"RELEASE":oe=void 0;break;default:return}}catch(de){oe={value:de,[hE]:0}}Promise.resolve(oe).catch(de=>({value:de,[hE]:0})).then(de=>{const[ge,ye]=pE(de);a.postMessage(Object.assign(Object.assign({},ge),{id:z}),ye),ee==="RELEASE"&&(a.removeEventListener("message",x),LI(a),nC in E&&typeof E[nC]=="function"&&E[nC]())}).catch(de=>{const[ge,ye]=pE({value:new TypeError("Unserializable return value"),[hE]:0});a.postMessage(Object.assign(Object.assign({},ge),{id:z}),ye)})}),a.start&&a.start()}function JZ(E){return E.constructor.name==="MessagePort"}function LI(E){JZ(E)&&E.close()}function BI(E,a){const y=new Map;return E.addEventListener("message",function(b){const{data:z}=b;if(!z||!z.id)return;const ee=y.get(z.id);if(ee)try{ee(z)}finally{y.delete(z.id)}}),rC(E,y,[],a)}function gE(E){if(E)throw new Error("Proxy has been released and is not useable")}function NI(E){return mv(E,new Map,{type:"RELEASE"}).then(()=>{LI(E)})}const vE=new WeakMap,mE="FinalizationRegistry"in globalThis&&new FinalizationRegistry(E=>{const a=(vE.get(E)||0)-1;vE.set(E,a),a===0&&NI(E)});function qZ(E,a){const y=(vE.get(a)||0)+1;vE.set(a,y),mE&&mE.register(E,a,E)}function $Z(E){mE&&mE.unregister(E)}function rC(E,a,y=[],x=function(){}){let b=!1;const z=new Proxy(x,{get(ee,re){if(gE(b),re===DI)return()=>{$Z(z),NI(E),a.clear(),b=!0};if(re==="then"){if(y.length===0)return{then:()=>z};const ae=mv(E,a,{type:"GET",path:y.map(oe=>oe.toString())}).then(E0);return ae.then.bind(ae)}return rC(E,a,[...y,re])},set(ee,re,ae){gE(b);const[oe,de]=pE(ae);return mv(E,a,{type:"SET",path:[...y,re].map(ge=>ge.toString()),value:oe},de).then(E0)},apply(ee,re,ae){gE(b);const oe=y[y.length-1];if(oe===ZZ)return mv(E,a,{type:"ENDPOINT"}).then(E0);if(oe==="bind")return rC(E,a,y.slice(0,-1));const[de,ge]=RI(ae);return mv(E,a,{type:"APPLY",path:y.map(ye=>ye.toString()),argumentList:de},ge).then(E0)},construct(ee,re){gE(b);const[ae,oe]=RI(re);return mv(E,a,{type:"CONSTRUCT",path:y.map(de=>de.toString()),argumentList:ae},oe).then(E0)}});return qZ(z,E),z}function eQ(E){return Array.prototype.concat.apply([],E)}function RI(E){const a=E.map(pE);return[a.map(y=>y[0]),eQ(a.map(y=>y[1]))]}const FI=new WeakMap;function tQ(E,a){return FI.set(E,a),E}function nQ(E){return Object.assign(E,{[MI]:!0})}function Pre(E,a=globalThis,y="*"){return{postMessage:(x,b)=>E.postMessage(x,y,b),addEventListener:a.addEventListener.bind(a),removeEventListener:a.removeEventListener.bind(a)}}function pE(E){for(const[a,y]of OI)if(y.canHandle(E)){const[x,b]=y.serialize(E);return[{type:"HANDLER",name:a,value:x},b]}return[{type:"RAW",value:E},FI.get(E)||[]]}function E0(E){switch(E.type){case"HANDLER":return OI.get(E.name).deserialize(E.value);case"RAW":return E.value}}function mv(E,a,y,x){return new Promise(b=>{const z=rQ();a.set(z,b),E.start&&E.start(),E.postMessage(Object.assign({id:z},y),x)})}function rQ(){return new Array(4).fill(0).map(()=>Math.floor(Math.random()*Number.MAX_SAFE_INTEGER).toString(16)).join("-")}class aQ extends $y{constructor(a,y,x){super(),this.graph=a,this.layout=y,this.options=x,this.spawnWorker()}spawnWorker(){this.proxy=BI(new Worker(new URL(Te.p+Te.u(8954),Te.b),{type:void 0})),this.running&&(this.running=!1,this.execute())}execute(){var a;return(0,Nt.mG)(this,void 0,void 0,function*(){if(this.running)return this;this.running=!0;const y=this.layout.options,{onTick:x}=y,b=(0,Nt._T)(y,["onTick"]),z={};Object.keys(b).forEach(oe=>{Xi(b[oe])||(z[oe]=b[oe])});const ee={layout:{id:this.layout.id,options:z,iterations:(a=this.options)===null||a===void 0?void 0:a.iterations},nodes:this.graph.getAllNodes(),edges:this.graph.getAllEdges()},re=new Float32Array([0]),[ae]=yield this.proxy.calculateLayout(ee,[re]);return ae})}stop(){return this.running=!1,this.proxy.stopLayout(),this}kill(){this.proxy[DI]()}isRunning(){return this.running}}var pv=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(de){try{oe(x.next(de))}catch(ge){ee(ge)}}function ae(de){try{oe(x.throw(de))}catch(ge){ee(ge)}}function oe(de){de.done?z(de.value):b(de.value).then(re,ae)}oe((x=x.apply(E,a||[])).next())})},iQ=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b<x.length;b++)a.indexOf(x[b])<0&&Object.prototype.propertyIsEnumerable.call(E,x[b])&&(y[x[b]]=E[x[b]]);return y};class oQ{get presetOptions(){return{animation:!!rw(this.context.options,!0)}}get options(){const{options:a}=this.context;return a.layout}constructor(a){this.instances=[],this.context=a}getLayoutInstance(){return this.instances}preLayout(a){return pv(this,void 0,void 0,function*(){var y,x,b,z;const{graph:ee,model:re}=this.context,{add:ae}=a;tc(ee,new Ku(hi.BEFORE_LAYOUT,{type:"pre"}));const oe=yield(y=this.context.layout)===null||y===void 0?void 0:y.simulate();(x=oe==null?void 0:oe.nodes)===null||x===void 0||x.forEach(de=>{const ge=Br(de),ye=ae.nodes.get(ge);re.syncNodeLikeDatum(de),ye&&Object.assign(ye.style,de.style)}),(b=oe==null?void 0:oe.edges)===null||b===void 0||b.forEach(de=>{const ge=Br(de),ye=ae.edges.get(ge);re.syncEdgeDatum(de),ye&&Object.assign(ye.style,de.style)}),(z=oe==null?void 0:oe.combos)===null||z===void 0||z.forEach(de=>{const ge=Br(de),ye=ae.combos.get(ge);re.syncNodeLikeDatum(de),ye&&Object.assign(ye.style,de.style)}),tc(ee,new Ku(hi.AFTER_LAYOUT,{type:"pre"})),this.transformDataAfterLayout("pre",a)})}postLayout(){return pv(this,arguments,void 0,function*(a=this.options){if(!a)return;const y=Array.isArray(a)?a:[a],{graph:x}=this.context;tc(x,new Ku(hi.BEFORE_LAYOUT,{type:"post"}));for(let b=0;b<y.length;b++){const z=y[b],ee=this.getLayoutData(z),re=Object.assign(Object.assign({},this.presetOptions),z);tc(x,new Ku(hi.BEFORE_STAGE_LAYOUT,{options:re,index:b}));const ae=yield this.stepLayout(ee,re,b);tc(x,new Ku(hi.AFTER_STAGE_LAYOUT,{options:re,index:b})),z.animation||this.updateElementPosition(ae,!1)}tc(x,new Ku(hi.AFTER_LAYOUT,{type:"post"})),this.transformDataAfterLayout("post")})}transformDataAfterLayout(a,y){const x=this.context.transform.getTransformInstance();Object.values(x).forEach(b=>b.afterLayout(a,y))}simulate(){return pv(this,void 0,void 0,function*(){if(!this.options)return{};const a=Array.isArray(this.options)?this.options:[this.options];let y={};for(let x=0;x<a.length;x++){const b=a[x],z=this.getLayoutData(b);y=yield this.stepLayout(z,Object.assign(Object.assign(Object.assign({},this.presetOptions),b),{animation:!1}),x)}return y})}stepLayout(a,y,x){return pv(this,void 0,void 0,function*(){return n_(y)?yield this.treeLayout(a,y,x):yield this.graphLayout(a,y,x)})}graphLayout(a,y,x){return pv(this,void 0,void 0,function*(){const{animation:b,enableWorker:z,iterations:ee=300}=y,re=this.initGraphLayout(y);if(!re)return{};if(this.instances[x]=re,this.instance=re,z){const oe=re;return this.supervisor=new aQ(oe.graphData2LayoutModel(a),oe.instance,{iterations:ee}),n1(yield this.supervisor.execute())}if(vS(re))return b?yield re.execute(a,{onTick:oe=>{this.updateElementPosition(oe,!1)}}):(re.execute(a),re.stop(),re.tick(ee));const ae=yield re.execute(a);if(b){const oe=this.updateElementPosition(ae,b);yield oe==null?void 0:oe.finished}return ae})}treeLayout(a,y,x){return pv(this,void 0,void 0,function*(){const{type:b,animation:z}=y,ee=hh("layout",b);if(!ee)return{};const{nodes:re=[],edges:ae=[]}=a,oe=new ku({nodes:re.map(ke=>({id:Br(ke),data:ke.data||{}})),edges:ae.map(ke=>({id:Br(ke),source:ke.source,target:ke.target,data:ke.data||{}}))});HZ(oe);const de={nodes:[],edges:[]},ge={nodes:[],edges:[]};oe.getRoots(wd).forEach(ke=>{n0(ke,Ye=>{Ye.children=oe.getSuccessors(Ye.id)},Ye=>oe.getSuccessors(Ye.id),"TB");const ze=ee(ke,y),{x:We,y:Ve,z:Ze=0}=ze;n0(ze,Ye=>{const{id:et,x:st,y:ht,z:mt=0}=Ye;de.nodes.push({id:et,style:{x:We,y:Ve,z:Ze}}),ge.nodes.push({id:et,style:{x:st,y:ht,z:mt}})},Ye=>Ye.children,"TB")});const De=this.inferTreeLayoutOffset(ge);if(kI(ge,De),z){kI(de,De),this.updateElementPosition(de,!1);const ke=this.updateElementPosition(ge,z);yield ke==null?void 0:ke.finished}return ge})}inferTreeLayoutOffset(a){var y;let[x,b]=[1/0,-1/0],[z,ee]=[1/0,-1/0];(y=a.nodes)===null||y===void 0||y.forEach(ze=>{const{x:We=0,y:Ve=0}=ze.style||{};x=Math.min(x,We),b=Math.max(b,We),z=Math.min(z,Ve),ee=Math.max(ee,Ve)});const{canvas:re}=this.context,ae=re.getSize(),[oe,de]=re.getCanvasByViewport([0,0]),[ge,ye]=re.getCanvasByViewport(ae);if(x>=oe&&b<=ge&&z>=de&&ee<=ye)return[0,0];const De=(oe+ge)/2,ke=(de+ye)/2;return[De-(x+b)/2,ke-(z+ee)/2]}stopLayout(){this.instance&&vS(this.instance)&&(this.instance.stop(),this.instance=void 0),this.supervisor&&(this.supervisor.stop(),this.supervisor=void 0),this.animationResult&&(this.animationResult.finish(),this.animationResult=void 0)}getLayoutData(a){const{nodeFilter:y=()=>!0,comboFilter:x=()=>!0,preLayout:b=!1,isLayoutInvisibleNodes:z=!1}=a,{nodes:ee,edges:re,combos:ae}=this.context.model.getData(),{element:oe,model:de}=this.context,ge=Ve=>oe.getElement(Ve),ye=b?Ve=>{var Ze;return!z&&(((Ze=Ve.style)===null||Ze===void 0?void 0:Ze.visibility)==="hidden"||de.getAncestorsData(Ve.id,wd).some(ud)||de.getAncestorsData(Ve.id,Ul).some(ud))?!1:y(Ve)}:Ve=>{const Ze=Br(Ve),Ye=ge(Ze);return!Ye||Am(Ye)?!1:y(Ve)},De=ee.filter(ye),ke=ae.filter(x),ze=new Map(De.map(Ve=>[Br(Ve),Ve]));ke.forEach(Ve=>ze.set(Br(Ve),Ve));const We=re.filter(({source:Ve,target:Ze})=>ze.has(Ve)&&ze.has(Ze));return{nodes:De,edges:We,combos:ke}}initGraphLayout(a){var y;const{element:x,viewport:b}=this.context,{type:z,enableWorker:ee,animation:re,iterations:ae}=a,oe=iQ(a,["type","enableWorker","animation","iterations"]),[de,ge]=b.getCanvasSize(),ye=[de/2,ge/2],De=(y=a==null?void 0:a.nodeSize)!==null&&y!==void 0?y:Ze=>{const Ye=x==null?void 0:x.getElement(Ze.id);return Ye?Ye.attributes.size:x==null?void 0:x.getElementComputedStyle("node",Ze).size},ke=hh("layout",z);if(!ke)return ld.warn(`The layout of ${z} is not registered.`);const ze=Object.getPrototypeOf(ke.prototype)===t1.prototype?ke:a_(ke,this.context),We=new ze(this.context),Ve={nodeSize:De,width:de,height:ge,center:ye};switch(We.id){case"d3-force":case"d3-force-3d":Object.assign(Ve,{center:{x:de/2,y:ge/2,z:0}});break;default:break}return vc(We.options,Ve,oe),We}updateElementPosition(a,y){const{model:x,element:b}=this.context;return b?(x.updateData(a),b.draw({animation:y,silence:!0})):null}destroy(){var a;this.stopLayout(),this.context={},(a=this.supervisor)===null||a===void 0||a.kill(),this.supervisor=void 0,this.instance=void 0,this.instances=[],this.animationResult=void 0}}const kI=(E,a)=>{var y;const[x,b]=a;(y=E.nodes)===null||y===void 0||y.forEach(z=>{if(z.style){const{x:ee=0,y:re=0}=z.style;z.style.x=ee+x,z.style.y=re+b}else z.style={x,y:b}})};function sQ(E){return[lQ].reduce((y,x)=>x(y),E)}function lQ(E){return!E.layout||Array.isArray(E.layout)||"preLayout"in E.layout||["antv-dagre","combo-combined","compact-box","circular","concentric","dagre","fishbone","grid","indented","mds","radial","random","snake","dendrogram","mindmap"].includes(E.layout.type)&&(E.layout.preLayout=!0),E}class uQ extends Ax{constructor(a){super(a),this.category="plugin",this.setPlugins(this.context.options.plugins||[])}setPlugins(a){this.setExtensions(a)}getPluginInstance(a){const y=this.extensionMap[a];if(y)return y;ld.warn(`Cannot find the plugin ${a}, will try to find it by type.`);const x=this.extensions.find(b=>b.type===a);if(x)return this.extensionMap[x.key]}}const yE=["update-related-edges","collapse-expand-node","collapse-expand-combo","get-edge-actual-ends","arrange-draw-order"];class cQ extends Ax{constructor(a){super(a),this.category="transform",this.setTransforms(this.context.options.transforms||[])}getTransforms(){}setTransforms(a){this.setExtensions([...yE.slice(0,yE.length-1),...a,yE[yE.length-1]])}getTransformInstance(a){return a?this.extensionMap[a]:this.extensionMap}}var Gm=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(de){try{oe(x.next(de))}catch(ge){ee(ge)}}function ae(de){try{oe(x.throw(de))}catch(ge){ee(ge)}}function oe(de){de.done?z(de.value):b(de.value).then(re,ae)}oe((x=x.apply(E,a||[])).next())})};class dQ{get padding(){return Md(this.context.options.padding)}get paddingOffset(){const[a,y,x,b]=this.padding,[z,ee,re]=[(b-y)/2,(a-x)/2,0];return[z,ee,re]}constructor(a){this.landmarkCounter=0,this.context=a;const[y,x]=this.paddingOffset,{zoom:b,rotation:z,x:ee=y,y:re=x}=a.options;this.transform({mode:"absolute",scale:b,translate:[ee,re],rotate:z},!1)}get camera(){const{canvas:a}=this.context;return new Proxy(a.getCamera(),{get:(y,x)=>{const z=Object.entries(a.getLayers()).filter(([re])=>!["main"].includes(re)).map(([,re])=>re.getCamera()),ee=y[x];if(typeof ee=="function")return(...re)=>{const ae=ee.apply(y,re);return z.forEach(oe=>{oe[x].apply(oe,re)}),ae}}})}createLandmark(a){return this.camera.createLandmark(`landmark-${this.landmarkCounter++}`,a)}getAnimation(a){const y=rw(this.context.options,a);return y?i0(Object.assign({},y),["easing","duration"]):!1}getCanvasSize(){const{canvas:a}=this.context,{width:y=0,height:x=0}=a.getConfig();return[y,x]}getCanvasCenter(){const{canvas:a}=this.context,{width:y=0,height:x=0}=a.getConfig();return[y/2,x/2,0]}getViewportCenter(){const[a,y]=this.camera.getPosition();return[a,y,0]}getGraphCenter(){return this.context.graph.getViewportByCanvas(this.getCanvasCenter())}getZoom(){return this.camera.getZoom()}getRotation(){return this.camera.getRoll()}getTranslateOptions(a){const{camera:y}=this,{mode:x,translate:b=[]}=a,z=this.getZoom(),ee=y.getPosition(),re=y.getFocalPoint(),[ae,oe]=this.getCanvasCenter(),[de=0,ge=0,ye=0]=b,De=xf([-de,-ge,-ye],z);return x==="relative"?{position:us(ee,De),focalPoint:us(re,De)}:{position:us([ae,oe,ee[2]],De),focalPoint:us([ae,oe,re[2]],De)}}getRotateOptions(a){const{mode:y,rotate:x=0}=a;return{roll:y==="relative"?this.camera.getRoll()+x:x}}getZoomOptions(a){const{zoomRange:y}=this.context.options,x=this.camera.getZoom(),{mode:b,scale:z=1}=a;return gu(b==="relative"?x*z:z,...y)}transform(a,y){return Gm(this,void 0,void 0,function*(){const{graph:x}=this.context,{translate:b,rotate:z,scale:ee,origin:re}=a;this.cancelAnimation();const ae=this.getAnimation(y);if(tc(x,new dE(hi.BEFORE_TRANSFORM,a)),!z&&ee&&!b&&re&&!ae){this.camera.setZoomByViewportPoint(this.getZoomOptions(a),re),tc(x,new dE(hi.AFTER_TRANSFORM,a));return}const oe={};if(b&&Object.assign(oe,this.getTranslateOptions(a)),ji(z)&&Object.assign(oe,this.getRotateOptions(a)),ji(ee)&&Object.assign(oe,{zoom:this.getZoomOptions(a)}),ae)return tc(x,new $d(hi.BEFORE_ANIMATE,sd.TRANSFORM,null,a)),new Promise(de=>{this.transformResolver=de,this.camera.gotoLandmark(this.createLandmark(oe),Object.assign(Object.assign({},ae),{onfinish:()=>{tc(x,new $d(hi.AFTER_ANIMATE,sd.TRANSFORM,null,a)),tc(x,new dE(hi.AFTER_TRANSFORM,a)),this.transformResolver=void 0,de()}}))});this.camera.gotoLandmark(this.createLandmark(oe),{duration:0}),tc(x,new dE(hi.AFTER_TRANSFORM,a))})}fitView(a,y){return Gm(this,void 0,void 0,function*(){const[x,b,z,ee]=this.padding,{when:re="always",direction:ae="both"}=a||{},[oe,de]=this.context.canvas.getSize(),ge=oe-ee-b,ye=de-x-z,De=this.context.canvas.getBounds(),ke=this.getBBoxInViewport(De),[ze,We]=Jh(ke),Ve=ae==="x"&&ze>=ge||ae==="y"&&We>=ye||ae==="both"&&ze>=ge&&We>=ye;if(re==="overflow"&&!Ve)return yield this.fitCenter({animation:y});const Ze=ge/ze,Ye=ye/We,et=ae==="x"?Ze:ae==="y"?Ye:Math.min(Ze,Ye),st=this.getAnimation(y);Number.isFinite(et)&&(yield this.transform({mode:"relative",scale:et,translate:us(Fl(this.getCanvasCenter(),this.getBBoxInViewport(De).center),xf(this.paddingOffset,et))},st))})}fitCenter(a){return Gm(this,void 0,void 0,function*(){const y=this.context.canvas.getBounds();yield this.focus(y,a)})}focusElements(a){return Gm(this,arguments,void 0,function*(y,x={}){const{element:b}=this.context;if(!b)return;const z=re=>x.shapes?re.getShape(x.shapes).getRenderBounds():re.getRenderBounds(),ee=im(y.map(re=>z(b.getElement(re))));yield this.focus(ee,x)})}focus(a,y){return Gm(this,void 0,void 0,function*(){const x=this.context.graph.getViewportByCanvas(a.center),b=y.position||this.getCanvasCenter(),z=Fl(b,x);yield this.transform({mode:"relative",translate:us(z,this.paddingOffset)},y.animation)})}getBBoxInViewport(a){const{min:y,max:x}=a,{graph:b}=this.context,[z,ee]=b.getViewportByCanvas(y),[re,ae]=b.getViewportByCanvas(x),oe=new Gl;return oe.setMinMax([z,ee,0],[re,ae,0]),oe}isInViewport(a,y=!1,x=0){const{graph:b}=this.context,z=this.getCanvasSize(),[ee,re]=b.getCanvasByViewport([0,0]),[ae,oe]=b.getCanvasByViewport(z);let de=new Gl;return de.setMinMax([ee,re,0],[ae,oe,0]),x&&(de=$h(de,x)),Q0(a)?yf(a,de):y?PR(a,de):de.intersects(a)}cancelAnimation(){var a,y;!((a=this.camera.landmarks)===null||a===void 0)&&a.length&&this.camera.cancelLandmarkAnimation(),(y=this.transformResolver)===null||y===void 0||y.call(this)}}var Kl=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(ee){ee(z)})}return new(y||(y=Promise))(function(z,ee){function re(de){try{oe(x.next(de))}catch(ge){ee(ge)}}function ae(de){try{oe(x.throw(de))}catch(ge){ee(ge)}}function oe(de){de.done?z(de.value):b(de.value).then(re,ae)}oe((x=x.apply(E,a||[])).next())})};class yv extends $y{constructor(a){var y;super(),this.options={},this.rendered=!1,this.destroyed=!1,this.context={model:new VZ},this.isCollapsingExpanding=!1,this.onResize=xm(()=>{this.resize()},300),this._setOptions(Object.assign({},yv.defaultOptions,a),!0),this.context.graph=this,this.options.autoResize&&((y=globalThis.addEventListener)===null||y===void 0||y.call(globalThis,"resize",this.onResize))}getOptions(){return this.options}setOptions(a){this._setOptions(a,!1)}_setOptions(a,y){if(this.updateCanvas(a),Object.assign(this.options,sQ(a)),y){const{data:ye}=a;ye&&this.addData(ye);return}const{behaviors:x,combo:b,data:z,edge:ee,layout:re,node:ae,plugins:oe,theme:de,transforms:ge}=a;x&&this.setBehaviors(x),z&&this.setData(z),ae&&this.setNode(ae),ee&&this.setEdge(ee),b&&this.setCombo(b),re&&this.setLayout(re),de&&this.setTheme(de),oe&&this.setPlugins(oe),ge&&this.setTransforms(ge)}getSize(){return this.context.canvas?this.context.canvas.getSize():[this.options.width||0,this.options.height||0]}setSize(a,y){a&&(this.options.width=a),y&&(this.options.height=y),this.resize(a,y)}setZoomRange(a){this.options.zoomRange=a}getZoomRange(){return this.options.zoomRange}setNode(a){this.options.node=a,this.context.model.refreshData()}setEdge(a){this.options.edge=a,this.context.model.refreshData()}setCombo(a){this.options.combo=a,this.context.model.refreshData()}getTheme(){return this.options.theme}setTheme(a){this.options.theme=Xi(a)?a(this.getTheme()):a}setLayout(a){this.options.layout=Xi(a)?a(this.getLayout()):a}getLayout(){return this.options.layout}setBehaviors(a){var y;this.options.behaviors=Xi(a)?a(this.getBehaviors()):a,(y=this.context.behavior)===null||y===void 0||y.setBehaviors(this.options.behaviors)}updateBehavior(a){this.setBehaviors(y=>y.map(x=>typeof x=="object"&&x.key===a.key?Object.assign(Object.assign({},x),a):x))}getBehaviors(){return this.options.behaviors||[]}setPlugins(a){var y;this.options.plugins=Xi(a)?a(this.getPlugins()):a,(y=this.context.plugin)===null||y===void 0||y.setPlugins(this.options.plugins)}updatePlugin(a){this.setPlugins(y=>y.map(x=>typeof x=="object"&&x.key===a.key?Object.assign(Object.assign({},x),a):x))}getPlugins(){return this.options.plugins||[]}getPluginInstance(a){return this.context.plugin.getPluginInstance(a)}setTransforms(a){var y;this.options.transforms=Xi(a)?a(this.getTransforms()):a,(y=this.context.transform)===null||y===void 0||y.setTransforms(this.options.transforms)}updateTransform(a){this.setTransforms(y=>y.map(x=>typeof x=="object"&&x.key===a.key?Object.assign(Object.assign({},x),a):x)),this.context.model.refreshData()}getTransforms(){return this.options.transforms||[]}getData(){return this.context.model.getData()}hasNode(a){return this.context.model.hasNode(a)}hasEdge(a){return this.context.model.hasEdge(a)}hasCombo(a){return this.context.model.hasCombo(a)}getElementData(a){return Array.isArray(a)?a.map(y=>this.context.model.getElementDataById(y)):this.context.model.getElementDataById(a)}getNodeData(a){return a===void 0?this.context.model.getNodeData():Array.isArray(a)?this.context.model.getNodeData(a):this.context.model.getNodeLikeDatum(a)}getEdgeData(a){return a===void 0?this.context.model.getEdgeData():Array.isArray(a)?this.context.model.getEdgeData(a):this.context.model.getEdgeDatum(a)}getComboData(a){return a===void 0?this.context.model.getComboData():Array.isArray(a)?this.context.model.getComboData(a):this.context.model.getNodeLikeDatum(a)}setData(a){this.context.model.setData(Xi(a)?a(this.getData()):a)}addData(a){this.context.model.addData(Xi(a)?a(this.getData()):a)}addNodeData(a){this.context.model.addNodeData(Xi(a)?a(this.getNodeData()):a)}addEdgeData(a){this.context.model.addEdgeData(Xi(a)?a(this.getEdgeData()):a)}addComboData(a){this.context.model.addComboData(Xi(a)?a(this.getComboData()):a)}addChildrenData(a,y){this.context.model.addChildrenData(a,y)}updateData(a){this.context.model.updateData(Xi(a)?a(this.getData()):a)}updateNodeData(a){this.context.model.updateNodeData(Xi(a)?a(this.getNodeData()):a)}updateEdgeData(a){this.context.model.updateEdgeData(Xi(a)?a(this.getEdgeData()):a)}updateComboData(a){this.context.model.updateComboData(Xi(a)?a(this.getComboData()):a)}removeData(a){this.context.model.removeData(Xi(a)?a(this.getData()):a)}removeNodeData(a){this.context.model.removeNodeData(Xi(a)?a(this.getNodeData()):a)}removeEdgeData(a){this.context.model.removeEdgeData(Xi(a)?a(this.getEdgeData()):a)}removeComboData(a){this.context.model.removeComboData(Xi(a)?a(this.getComboData()):a)}getElementType(a){return this.context.model.getElementType(a)}getRelatedEdgesData(a,y="both"){return this.context.model.getRelatedEdgesData(a,y)}getNeighborNodesData(a){return this.context.model.getNeighborNodesData(a)}getAncestorsData(a,y){return this.context.model.getAncestorsData(a,y)}getParentData(a,y){return this.context.model.getParentData(a,y)}getChildrenData(a){return this.context.model.getChildrenData(a)}getDescendantsData(a){return this.context.model.getDescendantsData(a)}getElementDataByState(a,y){return this.context.model.getElementDataByState(a,y)}initCanvas(){return Kl(this,void 0,void 0,function*(){var a;if(this.context.canvas)return yield this.context.canvas.ready;const{container:y="container",width:x,height:b,renderer:z,cursor:ee,background:re,canvas:ae,devicePixelRatio:oe=(a=globalThis.devicePixelRatio)!==null&&a!==void 0?a:1}=this.options;if(y instanceof xI)this.context.canvas=y,ee&&y.setCursor(ee),z&&y.setRenderer(z),yield y.ready;else{const de=al(y)?document.getElementById(y):y,ge=CI(de);this.emit(hi.BEFORE_CANVAS_INIT,{container:de,width:x,height:b});const ye=Object.assign(Object.assign({},ae),{container:de,width:x||ge[0],height:b||ge[1],background:re,renderer:z,cursor:ee,devicePixelRatio:oe}),De=new xI(ye);this.context.canvas=De,yield De.ready,this.emit(hi.AFTER_CANVAS_INIT,{canvas:De})}})}updateCanvas(a){var y,x;const{renderer:b,cursor:z,height:ee,width:re}=a,ae=this.context.canvas;ae&&(b&&(this.emit(hi.BEFORE_RENDERER_CHANGE,{renderer:this.options.renderer}),ae.setRenderer(b),this.emit(hi.AFTER_RENDERER_CHANGE,{renderer:b})),z&&ae.setCursor(z),(ji(re)||ji(ee))&&this.setSize((y=re!=null?re:this.options.width)!==null&&y!==void 0?y:0,(x=ee!=null?ee:this.options.height)!==null&&x!==void 0?x:0))}initRuntime(){this.context.options=this.options,this.context.batch||(this.context.batch=new jZ(this.context)),this.context.plugin||(this.context.plugin=new uQ(this.context)),this.context.viewport||(this.context.viewport=new dQ(this.context)),this.context.transform||(this.context.transform=new cQ(this.context)),this.context.element||(this.context.element=new KZ(this.context)),this.context.animation||(this.context.animation=new zZ(this.context)),this.context.layout||(this.context.layout=new oQ(this.context)),this.context.behavior||(this.context.behavior=new UZ(this.context))}prepare(){return Kl(this,void 0,void 0,function*(){if(yield Promise.resolve(),this.destroyed){console.error(gh("The graph instance has been destroyed"));return}yield this.initCanvas(),this.initRuntime()})}render(){return Kl(this,void 0,void 0,function*(){if(yield this.prepare(),tc(this,new Ku(hi.BEFORE_RENDER)),this.options.layout)if(!this.rendered&&r_(this.options.layout)){const a=yield this.context.element.preLayoutDraw({type:"render"});yield Promise.all([a==null?void 0:a.finished,this.autoFit()])}else{const a=this.context.element.draw({type:"render"});yield Promise.all([a==null?void 0:a.finished,this.context.layout.postLayout()]),yield this.autoFit()}else{const a=this.context.element.draw({type:"render"});yield Promise.all([a==null?void 0:a.finished,this.autoFit()])}this.rendered=!0,tc(this,new Ku(hi.AFTER_RENDER))})}draw(){return Kl(this,void 0,void 0,function*(){var a;yield this.prepare(),yield(a=this.context.element.draw())===null||a===void 0?void 0:a.finished})}layout(a){return Kl(this,void 0,void 0,function*(){yield this.context.layout.postLayout(a)})}stopLayout(){this.context.layout.stopLayout()}clear(){return Kl(this,void 0,void 0,function*(){const{model:a,element:y}=this.context;a.setData({}),a.clearChanges(),y==null||y.clear()})}destroy(){var a;tc(this,new Ku(hi.BEFORE_DESTROY));const{layout:y,animation:x,element:b,model:z,canvas:ee,behavior:re,plugin:ae}=this.context;ae==null||ae.destroy(),re==null||re.destroy(),y==null||y.destroy(),x==null||x.destroy(),b==null||b.destroy(),z.destroy(),ee==null||ee.destroy(),this.options={},this.context={},this.off(),(a=globalThis.removeEventListener)===null||a===void 0||a.call(globalThis,"resize",this.onResize),this.destroyed=!0,tc(this,new Ku(hi.AFTER_DESTROY))}getCanvas(){return this.context.canvas}resize(a,y){var x;const b=CI((x=this.context.canvas)===null||x===void 0?void 0:x.getContainer()),z=[a||b[0],y||b[1]];if(!this.context.canvas)return;const ee=this.context.canvas.getSize();Nu(z,ee)||(tc(this,new Ku(hi.BEFORE_SIZE_CHANGE,{size:z})),this.context.canvas.resize(...z),tc(this,new Ku(hi.AFTER_SIZE_CHANGE,{size:z})))}fitView(a,y){return Kl(this,void 0,void 0,function*(){var x;yield(x=this.context.viewport)===null||x===void 0?void 0:x.fitView(a,y)})}fitCenter(a){return Kl(this,void 0,void 0,function*(){var y;yield(y=this.context.viewport)===null||y===void 0?void 0:y.fitCenter({animation:a})})}autoFit(){return Kl(this,void 0,void 0,function*(){const{autoFit:a}=this.context.options;if(a)if(al(a))a==="view"?yield this.fitView():a==="center"&&(yield this.fitCenter());else{const{type:y,animation:x}=a;y==="view"?yield this.fitView(a.options,x):y==="center"&&(yield this.fitCenter(x))}})}focusElement(a,y){return Kl(this,void 0,void 0,function*(){var x;yield(x=this.context.viewport)===null||x===void 0?void 0:x.focusElements(Array.isArray(a)?a:[a],{animation:y})})}zoomBy(a,y,x){return Kl(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:"relative",scale:a,origin:x},y)})}zoomTo(a,y,x){return Kl(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:"absolute",scale:a,origin:x},y)})}getZoom(){return this.context.viewport.getZoom()}rotateBy(a,y,x){return Kl(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:"relative",rotate:a,origin:x},y)})}rotateTo(a,y,x){return Kl(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:"absolute",rotate:a,origin:x},y)})}getRotation(){return this.context.viewport.getRotation()}translateBy(a,y){return Kl(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:"relative",translate:a},y)})}translateTo(a,y){return Kl(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:"absolute",translate:a},y)})}getPosition(){return Fl([0,0],this.getCanvasByViewport([0,0]))}translateElementBy(a,y){return Kl(this,arguments,void 0,function*(x,b,z=!0){var ee,re;const[ae,oe]=Tu(x)?[x,(ee=b)!==null&&ee!==void 0?ee:!0]:[{[x]:b},z];Object.entries(ae).forEach(([de,ge])=>this.context.model.translateNodeLikeBy(de,ge)),yield(re=this.context.element.draw({animation:oe,stage:"translate"}))===null||re===void 0?void 0:re.finished})}translateElementTo(a,y){return Kl(this,arguments,void 0,function*(x,b,z=!0){var ee,re;const[ae,oe]=Tu(x)?[x,(ee=b)!==null&&ee!==void 0?ee:!0]:[{[x]:b},z];Object.entries(ae).forEach(([de,ge])=>this.context.model.translateNodeLikeTo(de,ge)),yield(re=this.context.element.draw({animation:oe,stage:"translate"}))===null||re===void 0?void 0:re.finished})}getElementPosition(a){return this.context.model.getElementPosition(a)}getElementRenderStyle(a){return bS(this.context.element.getElement(a).attributes,["context"])}setElementVisibility(a,y){return Kl(this,arguments,void 0,function*(x,b,z=!0){var ee,re;const[ae,oe]=Tu(x)?[x,(ee=b)!==null&&ee!==void 0?ee:!0]:[{[x]:b},z],de={nodes:[],edges:[],combos:[]};Object.entries(ae).forEach(([De,ke])=>{const ze=this.getElementType(De);de[`${ze}s`].push({id:De,style:{visibility:ke}})});const{model:ge,element:ye}=this.context;ge.preventUpdateNodeLikeHierarchy(()=>{ge.updateData(de)}),yield(re=ye.draw({animation:oe,stage:"visibility"}))===null||re===void 0?void 0:re.finished})}showElement(a,y){return Kl(this,void 0,void 0,function*(){const x=Array.isArray(a)?a:[a];yield this.setElementVisibility(Object.fromEntries(x.map(b=>[b,"visible"])),y)})}hideElement(a,y){return Kl(this,void 0,void 0,function*(){const x=Array.isArray(a)?a:[a];yield this.setElementVisibility(Object.fromEntries(x.map(b=>[b,"hidden"])),y)})}getElementVisibility(a){var y,x;const b=this.context.element.getElement(a);return(x=(y=b==null?void 0:b.style)===null||y===void 0?void 0:y.visibility)!==null&&x!==void 0?x:"visible"}setElementZIndex(a,y){return Kl(this,void 0,void 0,function*(){var x;const b={nodes:[],edges:[],combos:[]},z=Tu(a)?a:{[a]:y};Object.entries(z).forEach(([ae,oe])=>{const de=this.getElementType(ae);b[`${de}s`].push({id:ae,style:{zIndex:oe}})});const{model:ee,element:re}=this.context;ee.preventUpdateNodeLikeHierarchy(()=>ee.updateData(b)),yield(x=re.draw({animation:!1,stage:"zIndex"}))===null||x===void 0?void 0:x.finished})}frontElement(a){return Kl(this,void 0,void 0,function*(){const y=Array.isArray(a)?a:[a],{model:x}=this.context,b={};y.map(z=>{const ee=x.getFrontZIndex(z);if(x.getElementType(z)==="combo"){const ae=x.getAncestorsData(z,Ul).at(-1)||this.getComboData(z),oe=[ae,...x.getDescendantsData(Br(ae))],de=ee-PI(ae);oe.forEach(ye=>{b[Br(ye)]=this.getElementZIndex(Br(ye))+de});const{internal:ge}=Vx(oe.map(Br),ye=>x.getRelatedEdgesData(ye));ge.forEach(ye=>{const De=Br(ye);b[De]=this.getElementZIndex(De)+de})}else b[z]=ee}),yield this.setElementZIndex(b)})}getElementZIndex(a){return PI(this.context.model.getElementDataById(a))}setElementState(a,y){return Kl(this,arguments,void 0,function*(x,b,z=!0){var ee,re;const[ae,oe]=Tu(x)?[x,(ee=b)!==null&&ee!==void 0?ee:!0]:[{[x]:b},z],de=ye=>ye?Array.isArray(ye)?ye:[ye]:[],ge={nodes:[],edges:[],combos:[]};Object.entries(ae).forEach(([ye,De])=>{const ke=this.getElementType(ye);ge[`${ke}s`].push({id:ye,states:de(De)})}),this.updateData(ge),yield(re=this.context.element.draw({animation:oe,stage:"state"}))===null||re===void 0?void 0:re.finished})}getElementState(a){return this.context.model.getElementState(a)}getElementRenderBounds(a){return this.context.element.getElement(a).getRenderBounds()}collapseElement(a){return Kl(this,arguments,void 0,function*(y,x=!0){const{model:b,element:z}=this.context;if(ud(b.getNodeLikeData([y])[0])||this.isCollapsingExpanding)return;typeof x=="boolean"&&(x={animation:x,align:!0});const ee=b.getElementType(y);yield this.frontElement(y),this.isCollapsingExpanding=!0,b.updateData(ee==="node"?{nodes:[{id:y,style:{collapsed:!0}}]}:{combos:[{id:y,style:{collapsed:!0}}]}),ee==="node"?yield z.collapseNode(y,x):ee==="combo"&&(yield z.collapseCombo(y,!!x.animation)),this.isCollapsingExpanding=!1})}expandElement(a){return Kl(this,arguments,void 0,function*(y,x=!0){const{model:b,element:z}=this.context;if(!ud(b.getNodeLikeData([y])[0])||this.isCollapsingExpanding)return;typeof x=="boolean"&&(x={animation:x,align:!0});const ee=b.getElementType(y);this.isCollapsingExpanding=!0,b.updateData(ee==="node"?{nodes:[{id:y,style:{collapsed:!1}}]}:{combos:[{id:y,style:{collapsed:!1}}]}),ee==="node"?yield z.expandNode(y,x):ee==="combo"&&(yield z.expandCombo(y,!!x.animation)),this.isCollapsingExpanding=!1})}setElementCollapsibility(a,y){const x=this.getElementType(a);x==="node"?this.updateNodeData([{id:a,style:{collapsed:y}}]):x==="combo"&&this.updateComboData([{id:a,style:{collapsed:y}}])}toDataURL(){return Kl(this,arguments,void 0,function*(a={}){return this.context.canvas.toDataURL(a)})}getCanvasByViewport(a){return this.context.canvas.getCanvasByViewport(a)}getViewportByCanvas(a){return this.context.canvas.getViewportByCanvas(a)}getClientByCanvas(a){return this.context.canvas.getClientByCanvas(a)}getCanvasByClient(a){return this.context.canvas.getCanvasByClient(a)}getViewportCenter(){return this.context.viewport.getViewportCenter()}getCanvasCenter(){return this.context.viewport.getCanvasCenter()}on(a,y,x){return super.on(a,y,x)}once(a,y){return super.once(a,y)}off(a,y){return super.off(a,y)}}yv.defaultOptions={autoResize:!1,theme:"light",rotation:0,zoom:1,zoomRange:[.01,10]};var fQ=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b<x.length;b++)a.indexOf(x[b])<0&&Object.prototype.propertyIsEnumerable.call(E,x[b])&&(y[x[b]]=E[x[b]]);return y};function aC(E,a){const{getNodeData:y=(re,ae)=>{if(re.depth=ae,!re.children)return re;const{children:oe}=re,de=fQ(re,["children"]);return Object.assign(Object.assign({},de),{children:oe.map(ge=>ge.id)})},getEdgeData:x=(re,ae)=>({source:re.id,target:ae.id}),getChildren:b=re=>re.children||[]}=a||{},z=[],ee=[];return n0(E,(re,ae)=>{z.push(y(re,ae));const oe=b(re);for(const de of oe)ee.push(x(re,de))},re=>b(re),"TB"),{nodes:z,edges:ee}}class hQ extends hg{beforeDraw(a){const{add:y,update:x}=a,{model:b}=this.context;return[...y.edges.entries(),...x.edges.entries()].forEach(([,z])=>{_I(b,z)}),a}}const _I=(E,a)=>{const{source:y,target:x}=a,b=E.getElementDataById(y),z=E.getElementDataById(x),ee=K5(b,ge=>E.getParentData(ge,Ul)),re=K5(z,ge=>E.getParentData(ge,Ul)),ae=Br(ee),oe=Br(re),de={sourceNode:ae,targetNode:oe};return a.style?Object.assign(a.style,de):a.style=de,a},gQ=(E,a,y)=>{const[x,b]=a,[z,ee]=y;if(b===x)return z;const re=(E-x)/(b-x);return z+re*(ee-z)},vQ=(E,a,y)=>{const[x,b]=a,[z,ee]=y,re=Math.log(E-x+1)/Math.log(b-x+1);return z+re*(ee-z)},mQ=(E,a,y,x=2)=>{const[b,z]=a,[ee,re]=y,ae=Math.pow((E-b)/(z-b),x);return ee+ae*(re-ee)},pQ=(E,a,y)=>{const[x,b]=a,[z,ee]=y,re=Math.sqrt((E-x)/(b-x));return z+re*(ee-z)};class EE extends hg{constructor(a,y){super(a,vc({},EE.defaultOptions,y)),this.assignSizeByCentrality=(x,b,z,ee,re,ae)=>{const oe=[b,z],de=[ee[0],re[0]],ge=[ee[1],re[1]],ye=[ee[2],re[2]],De=(ke,ze)=>{if(typeof ae=="function")return ae(ke,oe,ze);switch(ae){case"linear":return gQ(ke,oe,ze);case"log":return vQ(ke,oe,ze);case"pow":return mQ(ke,oe,ze,2);case"sqrt":return pQ(ke,oe,ze);default:return ze[0]}};return[De(x,de),De(x,ge),De(x,ye)]}}beforeDraw(a){const{model:y}=this.context,x=y.getNodeData(),b=Id(this.options.maxSize),z=Id(this.options.minSize),ee=this.getCentralities(this.options.centrality),re=ee.size>0?Math.max(...ee.values()):0,ae=ee.size>0?Math.min(...ee.values()):0;return x.forEach(oe=>{var de;const ge=this.assignSizeByCentrality(ee.get(Br(oe))||0,ae,re,z,b,this.options.scale),ye=(de=this.context.element)===null||de===void 0?void 0:de.getElement(Br(oe)),De={size:ge};this.assignLabelStyle(De,ge,oe,ye),(!ye||!uE(De,ye.attributes))&&Bd(a,ye?"update":"add","node",vc(oe,{style:De}),!0)}),a}assignLabelStyle(a,y,x,b){var z;const ee=b?b.config.style:(z=this.context.element)===null||z===void 0?void 0:z.getElementComputedStyle("node",x);if(Object.assign(a,i0(ee,["labelFontSize","labelLineHeight"])),this.options.mapLabelSize){const re=this.getLabelSizeByNodeSize(y,1/0,Number(a.labelFontSize));Object.assign(a,{labelFontSize:re,labelLineHeight:re+CR(a.labelPadding)})}return a}getLabelSizeByNodeSize(a,y,x){const b=Math.min(...a)/2,[z,ee]=Array.isArray(this.options.mapLabelSize)?this.options.mapLabelSize:[x,y];return Math.min(ee,Math.max(b,z))}getCentralities(a){const{model:y}=this.context,x=y.getData();if(typeof a=="function")return a(x);const b=y.getRelatedEdgesData.bind(y);return Qw(x,b,a)}}EE.defaultOptions={centrality:{type:"degree"},maxSize:80,minSize:20,scale:"linear",mapLabelSize:!1};class AE extends hg{constructor(a,y){super(a,Object.assign({},AE.defaultOptions,y))}get ref(){return this.context.model.getRootsData()[0]}afterLayout(){var a;const y=$u(this.ref),{graph:x,model:b}=this.context;(a=b.getData().nodes)===null||a===void 0||a.forEach(ee=>{var re;if(Br(ee)===Br(this.ref))return;const ae=qw(Fl($u(ee),y)),oe=Math.abs(ae)>Math.PI/2,de=!ee.children||ee.children.length===0,ge=Br(ee),ye=(re=this.context.element)===null||re===void 0?void 0:re.getElement(ge);if(!ye||!ye.isVisible())return;const De=Id(x.getElementRenderStyle(ge).size)[0]/2,ke=(de?1:-1)*(De+this.options.offset),ze=[["translate",ke*Math.cos(ae),ke*Math.sin(ae)],["rotate",oe?rd(ae)+180:rd(ae)]];b.updateNodeData([{id:Br(ee),style:{labelTextAlign:oe===de?"right":"left",labelTextBaseline:"middle",labelTransform:ze}}])}),x.draw()}}AE.defaultOptions={offset:5};const yQ="quadratic",zI=["top","top-right","right","right-bottom","bottom","bottom-left","left","left-top"];class xE extends hg{constructor(a,y){super(a,Object.assign({},xE.defaultOptions,y)),this.cacheMergeStyle=new Map,this.getAffectedParallelEdges=x=>{const{add:{edges:b},update:{nodes:z,edges:ee,combos:re},remove:{edges:ae}}=x,{model:oe}=this.context,de=new Map,ge=(ke,ze)=>{oe.getRelatedEdgesData(ze).forEach(Ve=>!de.has(Br(Ve))&&de.set(Br(Ve),Ve))};z.forEach(ge),re.forEach(ge);const ye=ke=>{const ze=new Set(x.remove.edges.keys()),We=oe.getEdgeData().filter(Ve=>!ze.has(Br(Ve))).map(Ve=>_I(oe,Ve));EQ(ke,We,!0).forEach(Ve=>{const Ze=Br(Ve);de.has(Ze)||de.set(Ze,Ve)})};if(ae.size&&ae.forEach(ye),b.size&&b.forEach(ye),ee.size){const ke=_D(IS(oe.getChanges())).update.edges;ee.forEach(ze=>{var We;ye(ze);const Ve=(We=ke.find(Ze=>Br(Ze.value)===Br(ze)))===null||We===void 0?void 0:We.original;Ve&&!iC(ze,Ve)&&ye(Ve)})}Yf(this.options.edges)||de.forEach((ke,ze)=>!this.options.edges.includes(ze)&&de.delete(ze));const De=oe.getEdgeData().map(Br);return new Map([...de].sort((ke,ze)=>De.indexOf(ke[0])-De.indexOf(ze[0])))},this.applyBundlingStyle=(x,b,z)=>{const{edgeMap:ee,reverses:re}=jI(b);ee.forEach(ae=>{ae.forEach((oe,de,ge)=>{var ye;const De=ge.length,ke=oe.style||{};if(oe.source===oe.target){const Ve=zI.length;ke.loopPlacement=zI[de%Ve],ke.loopDist=Math.floor(de/Ve)*z+50}else if(De===1)ke.curveOffset=0;else{const Ve=(de%2===0?1:-1)*(re[`${oe.source}|${oe.target}|${de}`]?-1:1);ke.curveOffset=De%2===1?Ve*Math.ceil(de/2)*z*2:Ve*(Math.floor(de/2)*z*2+z)}const ze=Object.assign(oe,{type:yQ,style:ke}),We=(ye=this.context.element)===null||ye===void 0?void 0:ye.getElement(Br(oe));(!We||!uE(ze.style,We.attributes))&&Bd(x,We?"update":"add","edge",ze,!0)})})},this.resetEdgeStyle=x=>{const b=x.style||{},z=this.cacheMergeStyle.get(Br(x))||{};return Object.keys(z).forEach(ee=>{Nu(b[ee],z[ee])&&(x[ee]?b[ee]=x[ee]:delete b[ee])}),Object.assign(x,{style:b})},this.applyMergingStyle=(x,b)=>{const{edgeMap:z,reverses:ee}=jI(b);z.forEach(re=>{var ae;if(re.length===1){const de=re[0],ge=(ae=this.context.element)===null||ae===void 0?void 0:ae.getElement(Br(de)),ye=this.resetEdgeStyle(de);(!ge||!uE(ye,ge.attributes))&&Bd(x,ge?"update":"add","edge",ye);return}const oe=re.map(({source:de,target:ge,style:ye={}},De)=>{const{startArrow:ke,endArrow:ze}=ye,We={},[Ve,Ze]=ee[`${de}|${ge}|${De}`]?["endArrow","startArrow"]:["startArrow","endArrow"];return _v(ke)&&(We[Ve]=ke),_v(ze)&&(We[Ze]=ze),We}).reduce((de,ge)=>Object.assign(Object.assign({},de),ge),{});re.forEach((de,ge,ye)=>{var De;if(ge!==0){Bd(x,"remove","edge",de);return}const ke=Object.assign({},Xi(this.options.style)?this.options.style(ye):this.options.style,{childrenData:ye});this.cacheMergeStyle.set(Br(de),ke);const ze=Object.assign(Object.assign({},de),{type:"line",style:Object.assign(Object.assign(Object.assign({},de.style),oe),ke)}),We=(De=this.context.element)===null||De===void 0?void 0:De.getElement(Br(de));(!We||!uE(ze.style,We.attributes))&&Bd(x,We?"update":"add","edge",ze,!0)})})}}beforeDraw(a){const y=this.getAffectedParallelEdges(a);return y.size===0||(this.options.mode==="bundle"?this.applyBundlingStyle(a,y,this.options.distance):this.applyMergingStyle(a,y)),a}}xE.defaultOptions={mode:"bundle",distance:15};const jI=E=>{const a=new Map,y=new Set,x={},b=new Map;for(const[z,ee]of E){if(y.has(z))continue;const{source:re,target:ae}=ee,oe=`${re}-${ae}`;a.has(oe)||(a.set(oe,[]),b.set(oe,new Set));const de=a.get(oe),ge=b.get(oe);de&&ge&&!ge.has(z)&&(de.push(ee),ge.add(z),y.add(z));for(const[ye,De]of E)if(!(y.has(ye)||ye===z)&&iC(ee,De)){const ke=a.get(oe),ze=b.get(oe);ke&&ze&&!ze.has(ye)&&(ke.push(De),ze.add(ye),re===De.target&&ae===De.source&&(x[`${De.source}|${De.target}|${ke.length-1}`]=!0),y.add(ye))}}return{edgeMap:a,reverses:x}},EQ=(E,a,y)=>a.filter(x=>(y||Br(x)!==Br(E))&&iC(x,E)),iC=(E,a)=>{const{sourceNode:y,targetNode:x}=E.style||{},{sourceNode:b,targetNode:z}=a.style||{};return y===b&&x===z||y===z&&x===b};class AQ extends hg{beforeDraw(a,y){const{stage:x}=y;if(x==="visibility")return a;const{model:b}=this.context,{update:{nodes:z,edges:ee,combos:re}}=a,ae=(oe,de)=>{b.getRelatedEdgesData(de).forEach(ye=>!ee.has(Br(ye))&&ee.set(Br(ye),ye))};return z.forEach(ae),re.forEach(ae),a}}const xQ={animation:{"combo-collapse":sw,"combo-expand":ER,"node-collapse":iw,"node-expand":pR,"path-in":ow,"path-out":yR,fade:vR,translate:mR},behavior:{"brush-select":dm,"click-select":by,"collapse-expand":Zy,"create-edge":Jy,"drag-canvas":qy,"drag-element-force":o_,"drag-element":Sm,"fix-element-size":r1,"focus-element":a1,"hover-activate":i1,"lasso-select":l_,"auto-adapt-label":py,"optimize-viewport-transform":o1,"scroll-canvas":s1,"zoom-canvas":l1},combo:{circle:q9,rect:$9},edge:{cubic:o0,line:Hy,polyline:Vy,quadratic:Ky,"cubic-horizontal":Uy,"cubic-radial":Wy,"cubic-vertical":Gy},layout:{"antv-dagre":Zz,"combo-combined":Jj,"compact-box":u1.compactBox,"d3-force":CU,"force-atlas2":MU,circular:Xz,concentric:uS,dagre:v1,dendrogram:u1.dendrogram,fishbone:y1,force:eD,fruchterman:OU,grid:LU,indented:u1.indented,mds:sD,mindmap:u1.mindmap,radial:UU,random:QU,snake:E1},node:{circle:r0,diamond:$7,ellipse:Dy,hexagon:a9,html:Fy,image:ky,rect:X9,star:J9,donut:wy,triangle:_y},palette:{spectral:$U,tableau:eW,oranges:tW,greens:nW,blues:rW},theme:{dark:MZ,light:DZ},plugin:{"bubble-sets":I1,"edge-bundling":T1,"edge-filter-lens":L1,"grid-line":R1,background:A1,contextmenu:O1,fisheye:B1,fullscreen:N1,history:F1,hull:j1,legend:K1,minimap:Z1,snapline:Q1,timebar:iE,title:dZ,toolbar:oE,tooltip:sE,watermark:lE},transform:{"arrange-draw-order":IZ,"collapse-expand-combo":OZ,"collapse-expand-node":TZ,"get-edge-actual-ends":hQ,"map-node-size":EE,"place-radial-labels":AE,"process-parallel-edges":xE,"update-related-edges":AQ},shape:{circle:Hf,ellipse:qv,group:qu,html:Kg,image:Ox,line:Zg,path:Cd,polygon:Qg,polyline:Rp,rect:gc,text:Yg,label:Xf,badge:J0}};function SQ(){Object.entries(xQ).forEach(([E,a])=>{Object.entries(a).forEach(([y,x])=>{LZ(E,y,x)})})}SQ();const wre={css:"//at.alicdn.com/t/a/font_470089_8hnbbf8n4u8.css",js:"//at.alicdn.com/t/a/font_470089_8hnbbf8n4u8.js"};var oC=Te(59301),bQ=Object.defineProperty,CQ=Object.defineProperties,PQ=Object.getOwnPropertyDescriptors,UI=Object.getOwnPropertySymbols,wQ=Object.prototype.hasOwnProperty,MQ=Object.prototype.propertyIsEnumerable,WI=(E,a,y)=>a in E?bQ(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,sC=(E,a)=>{for(var y in a||(a={}))wQ.call(a,y)&&WI(E,y,a[y]);if(UI)for(var y of UI(a))MQ.call(a,y)&&WI(E,y,a[y]);return E},lC=(E,a)=>CQ(E,PQ(a)),DQ=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(oe){b(oe)}},ee=ae=>{try{re(y.throw(ae))}catch(oe){b(oe)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});const IQ=(E,a)=>{const y=E.getParentData(a.id,"tree");return y?a.style.x>y.style.x?"right":"left":"center"},OQ=[3,2,1];let SE=[{name:"\u6839\u8282\u70B9",src:"/images/one.svg",color:"#CC7CF5"},{name:"\u8BFE\u7A0B",src:"/images/kc.svg",color:"#3241F7"},{name:"\u7AE0\u8282",src:"/images/zj.svg",color:"#5e54e7"},{name:"\u77E5\u8BC6\u70B9",src:"/images/zsd.svg",color:"#FFDF55"},{name:"\u5B9E\u8BAD",src:"/images/sx.svg",color:"#4E9DFF"},{name:"\u4F5C\u4E1A",src:"/images/zy.svg",color:"#445DF3"},{name:"\u89C6\u9891",src:"/images/sp.svg",color:"#6BC4DE"},{name:"\u8BFE\u4EF6",src:"/images/fj.svg",color:"#6BDE73"},{name:"\u8BD5\u5377",src:"/images/sj.svg",color:"#2D9534"},{name:"\u5176\u4ED6",src:"/images/qt.svg",color:"#2D947C"}];const TQ=(E,a)=>{const y={};let x=null;return E.forEach(b=>{y[b.properties.uuid]=lC(sC({},b),{id:b.properties.uuid,children:[]})}),a.forEach(b=>{const z=y[b.startNodeUuid],ee=y[b.endNodeUuid];z&&(z.id=z.properties.uuid),z&&ee&&z.children.push(ee)}),E.forEach(b=>{!a.some(ee=>ee.endNodeUuid===b.properties.uuid)&&(x=y[b.properties.uuid])}),x};var LQ=(0,Ne.forwardRef)(({nodeUuid:E,subject_id:a,setshowdetail:y,setitems:x,setzoomsize:b},z)=>{const[ee,re]=(0,Ne.useState)(!1),ae=(0,Ne.useRef)(0),oe=(0,Ne.useRef)(null),de=(0,Ne.useRef)();(0,Ne.useEffect)(()=>{We()},[]);function ge(Ze){de.current.zoomBy(Ze)}function ye(){setTimeout(()=>{var Ze;b((((Ze=de==null?void 0:de.current)==null?void 0:Ze.getZoom())*100).toFixed(0))},300)}function De(Ze){var Ye;let et=de.current.getElementDataByState("node","selected");(et==null?void 0:et.length)>0&&de.current.setElementState((Ye=et==null?void 0:et[0])==null?void 0:Ye.id,[""]),de.current.setElementState(Ze,["selected"])}function ke(Ze,Ye){try{const et={},st={};de.current.getEdgeData().map(ht=>{et[ht.id]=Ze==="Enter"?"inactive":"active"}),de.current.getNodeData().map(ht=>{Ze==="Enter"?st[ht.id]=ht.colornodeType===Ye?"highlight":"inactive":st[ht.id]="active"}),de.current.setElementState(et),de.current.setElementState(st)}catch(et){}}function ze(Ze,Ye){var et;(et=de==null?void 0:de.current)==null||et.fitView(Ze,Ye)}(0,Ne.useImperativeHandle)(z,()=>({zoomBy:ge,getData:We,selectall:De,onMouse:ke,fitView:ze,getZooms:ye}));const We=()=>DQ(void 0,null,function*(){var Ze,Ye,et,st,ht,mt,dt,Ot,_t;re(!0);let wt=yield(0,te.ZP)("/api/knowledge/v2/get_node.json",{method:"get",params:{nodeUuid:E,subject_id:a,depth:-1,relationshipFilter:"\u5305\u542B>"}});re(!1);let $t=(Ye=(Ze=wt==null?void 0:wt.data)==null?void 0:Ze.nodes)==null?void 0:Ye.map(En=>{var yn,Cn,qn,pn,lr,Jr,na,Hr,Ar,Wr,ya,Ra;return lC(sC({},En==null?void 0:En.properties),{rootNodeUuid:(yn=En==null?void 0:En.properties)==null?void 0:yn.rootNodeUuid,id:(Cn=En==null?void 0:En.properties)==null?void 0:Cn.uuid,name:(qn=En==null?void 0:En.properties)==null?void 0:qn.name,description:(pn=En==null?void 0:En.properties)==null?void 0:pn.description,nodeType:(lr=En==null?void 0:En.properties)==null?void 0:lr.nodeType,tags:((Jr=En==null?void 0:En.properties)==null?void 0:Jr.tags)&&((Ar=(Hr=(na=En==null?void 0:En.properties)==null?void 0:na.tags)==null?void 0:Hr.split("\uFF0C"))==null?void 0:Ar.map(Aa=>({name:Aa})))||[],colorType:parseInt((Wr=En==null?void 0:En.properties)==null?void 0:Wr.color)>3?"3":(ya=En==null?void 0:En.properties)==null?void 0:ya.color,activeColor:"#FA6400",size:OQ[((Ra=En==null?void 0:En.properties)==null?void 0:Ra.color)-1]||1,shape:"circle",hide:!1,isExtendedState:!0})}),gn=TQ((st=(et=wt==null?void 0:wt.data)==null?void 0:et.nodes)==null?void 0:st.map((En,yn)=>{var Cn,qn,pn,lr,Jr;return lC(sC({},En),{key:yn,title:(Cn=En==null?void 0:En.properties)==null?void 0:Cn.name,newcolor:parseInt((qn=En==null?void 0:En.properties)==null?void 0:qn.color)===1?"#CC7CF5":((pn=SE==null?void 0:SE.find(na=>{var Hr;return(na==null?void 0:na.name)===((Hr=En==null?void 0:En.properties)==null?void 0:Hr.nodeType)}))==null?void 0:pn.color)||"#2D947C",colornodeType:parseInt((lr=En==null?void 0:En.properties)==null?void 0:lr.color)===1?"\u6839\u8282\u70B9":((Jr=SE==null?void 0:SE.find(na=>{var Hr;return(na==null?void 0:na.name)===((Hr=En==null?void 0:En.properties)==null?void 0:Hr.nodeType)}))==null?void 0:Jr.name)||"\u5176\u4ED6"})}),(mt=(ht=wt==null?void 0:wt.data)==null?void 0:ht.relationships)==null?void 0:mt.filter(En=>En.type==="\u5305\u542B"));de!=null&&de.current&&((dt=de==null?void 0:de.current)==null||dt.destroy());let Xt=aC(gn),Tn=(Ot=Xt.nodes)==null?void 0:Ot.filter((En,yn,Cn)=>yn===Cn.findIndex(qn=>qn.id===En.id)),er=(_t=Xt.edges)==null?void 0:_t.filter((En,yn,Cn)=>yn===Cn.findIndex(qn=>qn.source===En.source&&qn.target===En.target));Ve({nodes:Tn,edges:er},$t)}),Ve=(Ze,Ye)=>{var et,st;de.current=null,de.current=new yv({container:oe.current,autoResize:!0,autoFit:{type:((et=Ze==null?void 0:Ze.nodes)==null?void 0:et.length)>20?"view":"center",options:{direction:"both",when:"always"}},animation:!(((st=Ze==null?void 0:Ze.nodes)==null?void 0:st.length)>300),data:Ze,node:{style:{labelText:ht=>ht.title,labelFill:"#ffffff",fill:ht=>ht.newcolor,labelBackground:!1,labelPlacement:function(ht){const mt=IQ(this,ht);return mt==="center"?"right":mt},halo:!0,haloStrokeOpacity:.5,haloLineWidth:10,ports:[{placement:"right"},{placement:"left"}]},animation:{enter:!1}},edge:{type:"cubic-horizontal",animation:{enter:!1}},layout:{type:"mindmap",direction:"H",getHeight:()=>32,getWidth:()=>32,getVGap:()=>4,getHGap:()=>64,getSide:ht=>(ae.current++,ae.current%2==0?"left":"right")},behaviors:["drag-element",{type:"zoom-canvas",onFinish:()=>{setTimeout(()=>{var ht;b((((ht=de==null?void 0:de.current)==null?void 0:ht.getZoom())*100).toFixed(0))},300)}},"collapse-expand","drag-canvas",{type:"click-select",state:"selected",onClick:ht=>{let mt=Ye.filter(dt=>{var Ot,_t;return(dt==null?void 0:dt.id)===((_t=(Ot=ht.target)==null?void 0:Ot.config)==null?void 0:_t.id)});if((mt==null?void 0:mt.length)===0){y(!1);return}x(mt==null?void 0:mt[0]),y(!0),ht.view.setCursor("pointer")},multiple:!1}]}),de.current.render(),setTimeout(()=>{var ht;b((((ht=de==null?void 0:de.current)==null?void 0:ht.getZoom())*100).toFixed(0))},300)};return oC.createElement("div",{style:{height:"100%"}},oC.createElement(ce.Z,{spinning:ee,className:"mt60 w100",tip:"\u52A0\u8F7D\u4E2D..."}),oC.createElement("div",{style:{height:"100%"},ref:oe}))}),Jl={flex_box_center:"flex_box_center___mORrQ",flex_space_between:"flex_space_between___AGgBm",flex_box_vertical_center:"flex_box_vertical_center____H93g",flex_box_center_end:"flex_box_center_end___VPK8Q",flex_box_column:"flex_box_column___qksG3",autocomp:"autocomp___H_feM",autocompwidth:"autocompwidth___RMYtG",hoverone:"hoverone___j7m8k",name:"name___qwPqM",img:"img___WHKD_",autopop:"autopop___YCC3k",studentHead:"studentHead___DeVom",headLi:"headLi___qiYnp",btn:"btn___s7HI8",tupugx:"tupugx___JCYSy",textname:"textname___iEAMA",dropdownst:"dropdownst___ca1cn"},uC=Te(16769),GI=Te(59301),BQ=Object.defineProperty,NQ=Object.defineProperties,RQ=Object.getOwnPropertyDescriptors,bE=Object.getOwnPropertySymbols,HI=Object.prototype.hasOwnProperty,VI=Object.prototype.propertyIsEnumerable,KI=(E,a,y)=>a in E?BQ(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,ZI=(E,a)=>{for(var y in a||(a={}))HI.call(a,y)&&KI(E,y,a[y]);if(bE)for(var y of bE(a))VI.call(a,y)&&KI(E,y,a[y]);return E},FQ=(E,a)=>NQ(E,RQ(a)),kQ=(E,a)=>{var y={};for(var x in E)HI.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&bE)for(var x of bE(E))a.indexOf(x)<0&&VI.call(E,x)&&(y[x]=E[x]);return y},_Q=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(oe){b(oe)}},ee=ae=>{try{re(y.throw(ae))}catch(oe){b(oe)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});let CE=[{name:"\u6839\u8282\u70B9",src:"/images/one.svg",color:"#CC7CF5",bordercolor:"#A150CB"},{name:"\u8BFE\u7A0B",src:"/images/kc.svg",color:"#3241F7",bordercolor:"#3437D9"},{name:"\u7AE0\u8282",src:"/images/zj.svg",color:"#5e54e7",bordercolor:"#7f77f9"},{name:"\u77E5\u8BC6\u70B9",src:"/images/zsd.svg",color:"#FFDF55",bordercolor:"#FFD60F"},{name:"\u5B9E\u8BAD",src:"/images/sx.svg",color:"#4E9DFF",bordercolor:"#0882FB"},{name:"\u4F5C\u4E1A",src:"/images/zy.svg",color:"#445DF3",bordercolor:"#3149D5"},{name:"\u89C6\u9891",src:"/images/sp.svg",color:"#6BC4DE",bordercolor:"#339DC4"},{name:"\u8BFE\u4EF6",src:"/images/fj.svg",color:"#6BDE73",bordercolor:"#33C448"},{name:"\u8BD5\u5377",src:"/images/sj.svg",color:"#2D9534",bordercolor:"#077A04"},{name:"\u5176\u4ED6",src:"/images/qt.svg",color:"#2D947C",bordercolor:"#157660"}];const Dre=null;let Ire=null;const zQ=E=>{var a=E,{pathsDetail:y,user:x,globalSetting:b,loading:z,dispatch:ee,datas:re}=a,ae=kQ(a,["pathsDetail","user","globalSetting","loading","dispatch","datas"]);const oe=(0,Ne.useRef)(),de=(0,Ne.useRef)(null);(0,Ne.useEffect)(()=>{ge()},[re]);function ge(){return _Q(this,null,function*(){var ye,De,ke,ze,We,Ve,Ze;if(((ye=re==null?void 0:re.nodes)==null?void 0:ye.length)>0){let Ye=(0,vt.fX)((De=re==null?void 0:re.nodes)==null?void 0:De.map((dt,Ot)=>{var _t,wt,$t,gn,Xt,Tn,er,En,yn,Cn,qn,pn,lr,Jr,na,Hr;return FQ(ZI(ZI({},dt),dt==null?void 0:dt.properties),{rootNodeUuid:(_t=dt==null?void 0:dt.properties)==null?void 0:_t.rootNodeUuid,id:(wt=dt==null?void 0:dt.properties)==null?void 0:wt.uuid,name:($t=dt==null?void 0:dt.properties)==null?void 0:$t.name,labelstype:(gn=dt==null?void 0:dt.labels)==null?void 0:gn[1],description:(Xt=dt==null?void 0:dt.properties)==null?void 0:Xt.description,nodeType:(Tn=dt==null?void 0:dt.properties)==null?void 0:Tn.nodeType,colornodeType:parseInt((er=dt==null?void 0:dt.properties)==null?void 0:er.color)===1?"\u6839\u8282\u70B9":((En=CE==null?void 0:CE.find(Ar=>{var Wr;return(Ar==null?void 0:Ar.name)===((Wr=dt==null?void 0:dt.properties)==null?void 0:Wr.nodeType)}))==null?void 0:En.name)||"\u5176\u4ED6",newcolor:parseInt((yn=dt==null?void 0:dt.properties)==null?void 0:yn.color)===1?"#CC7CF5":((Cn=CE==null?void 0:CE.find(Ar=>{var Wr;return(Ar==null?void 0:Ar.name)===((Wr=dt==null?void 0:dt.properties)==null?void 0:Wr.nodeType)}))==null?void 0:Cn.color)||"#2D947C",tags:((qn=dt==null?void 0:dt.properties)==null?void 0:qn.tags)&&((Jr=(lr=(pn=dt==null?void 0:dt.properties)==null?void 0:pn.tags)==null?void 0:lr.split("\uFF0C"))==null?void 0:Jr.map(Ar=>({name:Ar})))||[],colorType:parseInt((na=dt==null?void 0:dt.properties)==null?void 0:na.color)>3?"3":(Hr=dt==null?void 0:dt.properties)==null?void 0:Hr.color})}),(We=(ze=(ke=re==null?void 0:re.relationships)==null?void 0:ke.filter(dt=>{var Ot,_t,wt;return(dt==null?void 0:dt.endNodeUuid)!==((wt=(_t=(Ot=re==null?void 0:re.nodes)==null?void 0:Ot[0])==null?void 0:_t.properties)==null?void 0:wt.rootNodeUuid)}))==null?void 0:ze.filter(dt=>{var Ot,_t,wt;return(dt==null?void 0:dt.startNodeUuid)!==((wt=(_t=(Ot=re==null?void 0:re.nodes)==null?void 0:Ot[0])==null?void 0:_t.properties)==null?void 0:wt.rootNodeUuid)}))==null?void 0:We.filter(dt=>dt.type==="\u5305\u542B")),et=aC(Ye),st=(Ve=et.nodes)==null?void 0:Ve.filter((dt,Ot,_t)=>Ot===_t.findIndex(wt=>wt.id===dt.id)),ht=(Ze=et.edges)==null?void 0:Ze.filter((dt,Ot,_t)=>Ot===_t.findIndex(wt=>wt.source===dt.source&&wt.target===dt.target));st.map(dt=>(dt.transformd=!0,dt.style={labelWordWrap:!0,labelPlacement:dt.depth===0?"center":dt.depth<3?"top-left":"top",haloLineWidth:Math.max(20-dt.depth*6,0),labelMaxWidth:dt.depth===0?300:200,labelFontSize:dt.depth===0?22:st.length>300?12:14,labelLineHeight:100,halo:dt.depth<3},dt)),oe.current=null;let mt=st==null?void 0:st.length;oe.current=new yv({container:de.current,autoResize:!0,background:"#010A23",autoFit:{type:st.length>50?"view":"center",options:{direction:"both",when:"always"}},animation:!1,padding:50,data:{nodes:st,edges:ht},node:{type:"circle",style:{size:dt=>dt.colorType==1?100:dt.depth<2?50:mt>250?10:20,fill:dt=>dt.newcolor,labelText:dt=>dt.name,labelFill:"#ffffff"},state:{highlight:{stroke:"transparent"},selected:{stroke:"transparent"},inactive:{fill:dt=>dt.newcolor,port:!1,labelBackground:!1,halo:!1,badgeBackground:!1}}},edge:{style:{labelBackground:!1,halo:!1,stroke:"#A150CB",strokeOpacity:.5},state:{inactive:{stroke:"#f9f0ff",strokeOpacity:.5,halo:!1,labelBackground:!1,lineWidth:1},highlight:{stroke:"#43E93F",strokeOpacity:1,halo:!1,lineWidth:1},selected:{stroke:"#43E93F",strokeOpacity:1,halo:!1,lineWidth:1},active:{halo:!1},disable:{halo:!1}}},layout:[{type:"dendrogram",radial:!0,nodeSep:40,rankSep:st.length>250?360:240,direction:"RL",unitRadius:90,linkDistance:200,preventOverlap:!0,maxPreventOverlapIteration:100,strictRadial:!1}],plugins:[{type:"tooltip",enable:dt=>dt.targetType==="node",getContent:(dt,Ot)=>{let _t="";return Ot.forEach(wt=>{_t+=`<div>${wt.name||""}</div>`}),_t}}],behaviors:["drag-canvas",{type:"zoom-canvas"},"drag-element",{type:"collapse-expand",onExpand:(dt,Ot)=>{console.log("----",dt,Ot)}},{type:"fix-element-size",state:"fix-element-size",enable:!0}],transforms:[{type:"place-radial-labels"}]}),oe.current.render()}})}return GI.createElement("div",{style:{background:"#fff",height:"800rem"}},GI.createElement("div",{style:{width:"100%",height:"800rem"},ref:de}))};var jQ=(0,be.connect)(({pathsDetail:E,user:a,loading:y,globalSetting:x})=>({pathsDetail:E,user:a,globalSetting:x,loading:y.models.index}))(zQ),Ba=Te(59301),UQ=Object.defineProperty,WQ=Object.defineProperties,GQ=Object.getOwnPropertyDescriptors,PE=Object.getOwnPropertySymbols,QI=Object.prototype.hasOwnProperty,YI=Object.prototype.propertyIsEnumerable,XI=(E,a,y)=>a in E?UQ(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,A0=(E,a)=>{for(var y in a||(a={}))QI.call(a,y)&&XI(E,y,a[y]);if(PE)for(var y of PE(a))YI.call(a,y)&&XI(E,y,a[y]);return E},HQ=(E,a)=>WQ(E,GQ(a)),VQ=(E,a)=>{var y={};for(var x in E)QI.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&PE)for(var x of PE(E))a.indexOf(x)<0&&YI.call(E,x)&&(y[x]=E[x]);return y},vg=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(oe){b(oe)}},ee=ae=>{try{re(y.throw(ae))}catch(oe){b(oe)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});let Hm=[{name:"\u6839\u8282\u70B9",src:"/images/one.svg",color:"#CC7CF5",bordercolor:"#A150CB"},{name:"\u8BFE\u7A0B",src:"/images/kc.svg",color:"#3241F7",bordercolor:"#3437D9"},{name:"\u7AE0\u8282",src:"/images/zj.svg",color:"#5e54e7",bordercolor:"#7f77f9"},{name:"\u77E5\u8BC6\u70B9",src:"/images/zsd.svg",color:"#FFDF55",bordercolor:"#FFD60F"},{name:"\u5B9E\u8BAD",src:"/images/sx.svg",color:"#4E9DFF",bordercolor:"#0882FB"},{name:"\u4F5C\u4E1A",src:"/images/zy.svg",color:"#445DF3",bordercolor:"#3149D5"},{name:"\u89C6\u9891",src:"/images/sp.svg",color:"#6BC4DE",bordercolor:"#339DC4"},{name:"\u8BFE\u4EF6",src:"/images/fj.svg",color:"#6BDE73",bordercolor:"#33C448"},{name:"\u8BD5\u5377",src:"/images/sj.svg",color:"#2D9534",bordercolor:"#077A04"},{name:"\u5176\u4ED6",src:"/images/qt.svg",color:"#2D947C",bordercolor:"#157660"}];const KQ=E=>{var a=E,{pathsDetail:y,user:x,globalSetting:b,loading:z,dispatch:ee,uuid:re,Tabsdatas:ae,initdata:oe,setactivied:de,tpacti:ge}=a,ye=VQ(a,["pathsDetail","user","globalSetting","loading","dispatch","uuid","Tabsdatas","initdata","setactivied","tpacti"]),De,ke,ze,We,Ve,Ze,Ye,et;const st=(0,Ne.useRef)(),ht=(0,Ne.useRef)(),mt=(0,Ne.useRef)(),[dt,Ot]=(0,Ne.useState)([]),[_t,wt]=(0,Ne.useState)(!0),[$t,gn]=(0,Ne.useState)([]),[Xt,Tn]=(0,Ne.useState)(""),[er,En]=(0,Ne.useState)(!1),yn=(0,Ne.useRef)(null),[Cn,qn]=(0,Ne.useState)(),[pn,lr]=(0,Ne.useState)(!1),[Jr,na]=(0,Ne.useState)([]);let[Hr,Ar]=(0,Ne.useState)(!1);const[Wr,ya]=(0,Ne.useState)(!1),[Ra,Aa]=(0,Ne.useState)(!1),[co,So]=(0,Ne.useState)([]),[ti,qi]=(0,Ne.useState)(!1),[Gi,fo]=(0,Ne.useState)([]),[Po]=(0,be.useSearchParams)(),[Es,as]=(0,Ne.useState)(!1),[yi,Ri]=(0,Ne.useState)(0),[Sa,Fa]=(0,Ne.useState)("\u5168\u90E8");let[ni,Ki]=(0,Ne.useState)({page:1,limit:10});const[Oa,xo]=(0,Ne.useState)({}),[Qi,Hs]=(0,Ne.useState)([]),fs=(0,Ne.useRef)(null),Ds=(0,Ne.useRef)(null),[Is,As]=(0,Ne.useState)(!1),Fo=window.ENV==="build"?"/react/build":"";(0,Ne.useEffect)(()=>(Hr=!1,Ar(!1),$s(2),_e.ZP.config({getContainer:()=>yn.current}),()=>{wt(!1),gn([]),lr(!1),Tn("")}),[re]);const fd=()=>Ba.createElement("div",{className:Jl.studentHead},Ba.createElement("div",{className:Jl.headLi},Ba.createElement("img",{src:Jc}),Ba.createElement("aside",null,Ba.createElement("span",null,"\u8D44\u6E90\u603B\u6570"),Ba.createElement("b",null,Oa==null?void 0:Oa.resource_count))),Ba.createElement("div",{className:Jl.headLi},Ba.createElement("img",{src:yd}),Ba.createElement("aside",null,Ba.createElement("span",null,"\u5B66\u4E60\u5B8C\u6210\u7387"),Ba.createElement("b",{style:{color:"#F7B500"}},Oa==null?void 0:Oa.complete_rate,"%"))),Ba.createElement("div",{className:Jl.headLi},Ba.createElement("img",{src:Lf}),Ba.createElement("aside",null,Ba.createElement("span",null,"\u5B66\u4E60\u638C\u63E1\u7387"),Ba.createElement("b",{style:{color:"#3AFFC8"}},Oa==null?void 0:Oa.grasp_rate,"%"))),Ba.createElement("div",{className:Jl.headLi},Ba.createElement("img",{src:af}),Ba.createElement("aside",null,Ba.createElement("span",{style:{marginBottom:"10rem"}},"\u4E0A\u6B21\u5B66\u5230"),Ba.createElement(on.Z,{title:Oa==null?void 0:Oa.last_knowledge_name},Ba.createElement("b",{style:{color:"#7FAAFF",fontSize:"16rem"}},(0,vt.Pq)(Oa==null?void 0:Oa.last_knowledge_name,13))))),Ba.createElement("div",{onClick:()=>handleClickDetails({knowledge_uuid:Oa==null?void 0:Oa.last_knowledge_uuid}),className:Jl.btn},"\u7EE7\u7EED\u5B66\u4E60")),hd={onRemove:()=>{So([])},beforeUpload:si=>{if(console.log(si),(si==null?void 0:si.size)>1024*1024*50)return _e.ZP.info("\u6587\u4EF6\u8D85\u8FC750M\uFF0C\u4E0D\u7B26\u5408\u4E0A\u4F20\u8981\u6C42"),!1;let so=[];return so.push(si),So([...so]),!1},fileList:co,accept:".xls,.xlsx"};(0,Ne.useEffect)(()=>{},[Hr]),(0,Ne.useEffect)(()=>(window.addEventListener("resize",yu),()=>{window.removeEventListener("resize",yu)}),[]);function yu(){var si,so;(so=(si=st.current)==null?void 0:si.update)==null||so.call(si)}function $s(si){return vg(this,null,function*(){var so,Qo,is,To,wu,Nd,tf,x0,pg,Av,yg;as(!0);let Zc=yield(0,te.ZP)("/api/knowledge/v2/get_node.json",{method:"get",params:{nodeUuid:re,subject_id:(so=y==null?void 0:y.detail)==null?void 0:so.id,depth:si===0?si:si||-1,relationshipFilter:"\u5305\u542B>"}});if(as(!1),(Zc==null?void 0:Zc.status)===0){if(Po.get("type")==="classrooms"?ee({type:"pathsDetail/getCourseDetail",payload:A0({id:(Qo=y==null?void 0:y.detail)==null?void 0:Qo.id,knowledge:!0},(0,vt.oP)())}):ee({type:"pathsDetail/getPathsDetail",payload:A0({id:(is=y==null?void 0:y.detail)==null?void 0:is.id,knowledge:!0},(0,vt.oP)())}),Hr){ht.current.getData();return}wt(!0);let dl=(0,vt.fX)((wu=(To=Zc==null?void 0:Zc.data)==null?void 0:To.nodes)==null?void 0:wu.map((Ti,Sc)=>{var rc,bc,If,S0,BE,Vm,NE,Km,Rd,RE,vo,Fd,FE,kE,_E,zE;return HQ(A0(A0({},Ti),Ti==null?void 0:Ti.properties),{rootNodeUuid:(rc=Ti==null?void 0:Ti.properties)==null?void 0:rc.rootNodeUuid,id:(bc=Ti==null?void 0:Ti.properties)==null?void 0:bc.uuid,name:(If=Ti==null?void 0:Ti.properties)==null?void 0:If.name,labelstype:(S0=Ti==null?void 0:Ti.labels)==null?void 0:S0[1],description:(BE=Ti==null?void 0:Ti.properties)==null?void 0:BE.description,nodeType:(Vm=Ti==null?void 0:Ti.properties)==null?void 0:Vm.nodeType,colornodeType:parseInt((NE=Ti==null?void 0:Ti.properties)==null?void 0:NE.color)===1?"\u6839\u8282\u70B9":((Km=Hm==null?void 0:Hm.find(kd=>{var b0;return(kd==null?void 0:kd.name)===((b0=Ti==null?void 0:Ti.properties)==null?void 0:b0.nodeType)}))==null?void 0:Km.name)||"\u5176\u4ED6",newcolor:parseInt((Rd=Ti==null?void 0:Ti.properties)==null?void 0:Rd.color)===1?"#CC7CF5":((RE=Hm==null?void 0:Hm.find(kd=>{var b0;return(kd==null?void 0:kd.name)===((b0=Ti==null?void 0:Ti.properties)==null?void 0:b0.nodeType)}))==null?void 0:RE.color)||"#2D947C",tags:((vo=Ti==null?void 0:Ti.properties)==null?void 0:vo.tags)&&((kE=(FE=(Fd=Ti==null?void 0:Ti.properties)==null?void 0:Fd.tags)==null?void 0:FE.split("\uFF0C"))==null?void 0:kE.map(kd=>({name:kd})))||[],colorType:parseInt((_E=Ti==null?void 0:Ti.properties)==null?void 0:_E.color)>3?"3":(zE=Ti==null?void 0:Ti.properties)==null?void 0:zE.color})}),(tf=(Nd=Zc==null?void 0:Zc.data)==null?void 0:Nd.relationships)==null?void 0:tf.filter(Ti=>Ti.type==="\u5305\u542B"));console.log("----types",dl,Zc==null?void 0:Zc.data);let El=aC(dl),Us=(x0=El.nodes)==null?void 0:x0.filter((Ti,Sc,rc)=>Sc===rc.findIndex(bc=>bc.id===Ti.id));Ot(Us);let ou=(pg=El.edges)==null?void 0:pg.filter((Ti,Sc,rc)=>Sc===rc.findIndex(bc=>bc.source===Ti.source&&bc.target===Ti.target));Us.map(Ti=>(Ti.transformd=!0,Ti.style={labelWordWrap:!0,labelPlacement:Ti.depth===0?"center":Ti.depth<3?"top-left":"top",haloLineWidth:Math.max(20-Ti.depth*6,0),labelMaxWidth:Ti.depth===0?300:200,labelFontSize:Ti.depth===0?22:Us.length>300?12:14,labelLineHeight:100,halo:Ti.depth<3},Ti)),mt.current=null;let nf=Us==null?void 0:Us.length;mt.current=new yv({container:Ds.current,autoResize:!0,background:"#010A23",autoFit:{type:Us.length>50?"view":"center",options:{direction:"both",when:"always"}},animation:!1,padding:50,data:{nodes:Us,edges:ou},node:{type:"circle",style:{size:Ti=>Ti.colorType==1?100:Ti.depth<2?50:nf>250?10:20,fill:Ti=>Ti.newcolor,labelText:Ti=>Ti.name,labelFill:"#ffffff"},state:{highlight:{stroke:"transparent"},selected:{stroke:"transparent"},inactive:{fill:Ti=>Ti.newcolor,port:!1,labelBackground:!1,halo:!1,badgeBackground:!1}}},edge:{style:{labelBackground:!1,halo:!1,stroke:"#A150CB",strokeOpacity:.5},state:{inactive:{stroke:"#f9f0ff",strokeOpacity:.5,halo:!1,labelBackground:!1,lineWidth:1},highlight:{stroke:"#43E93F",strokeOpacity:1,halo:!1,lineWidth:1},selected:{stroke:"#43E93F",strokeOpacity:1,halo:!1,lineWidth:1},active:{halo:!1},disable:{halo:!1}}},layout:[{type:"dendrogram",radial:!0,nodeSep:40,rankSep:Us.length>250?360:240,direction:"RL",unitRadius:90,linkDistance:200,preventOverlap:!0,maxPreventOverlapIteration:100,strictRadial:!1}],plugins:[{type:"tooltip",enable:Ti=>Ti.targetType==="node",getContent:(Ti,Sc)=>{let rc="";return Sc.forEach(bc=>{rc+=`<div>${bc.name||""}</div>`}),rc}}],behaviors:["drag-canvas",{type:"zoom-canvas",onFinish:()=>{setTimeout(()=>{var Ti;Ri((((Ti=mt==null?void 0:mt.current)==null?void 0:Ti.getZoom())*100).toFixed(0))},300)}},"drag-element",{type:"collapse-expand",onExpand:(Ti,Sc)=>{console.log("----",Ti,Sc)}},{type:"fix-element-size",state:"fix-element-size",enable:!0},{type:"click-select",state:"selected",onClick:Ti=>{fs.current?(clearTimeout(fs.current),fs.current=null):fs.current=setTimeout(()=>{let Sc=Us.filter(rc=>{var bc,If;return(rc==null?void 0:rc.id)===((If=(bc=Ti.target)==null?void 0:bc.config)==null?void 0:If.id)});if((Sc==null?void 0:Sc.length)===0){lr(!1);return}qn(Sc==null?void 0:Sc[0]),lr(!0),Ti.view.setCursor("pointer"),fs.current=null},300)},multiple:!1},{type:"hover-activate",enable:Ti=>Ti.targetType==="node",degree:1,state:"highlight",direction:"both",inactiveState:"inactive",onHover:Ti=>{Ti.view.setCursor("pointer")},onHoverEnd:Ti=>{Ti.view.setCursor("default")}}],transforms:[{type:"place-radial-labels"}]}),mt.current.render(),Ds.current.style.opacity=1,(Av=mt==null?void 0:mt.current)==null||Av.fitView(),setTimeout(()=>{var Ti;Ri((((Ti=mt==null?void 0:mt.current)==null?void 0:Ti.getZoom())*100).toFixed(0))},300);var gd=mt.current.getOptions();setTimeout(()=>{gd.animation=!0,mt.current.setOptions(gd)},2500),window.graphsRef=mt.current}let Qc=yield(0,te.ZP)("/api/knowledge_items.json",{method:"get",params:{item_type:3,subject_id:(yg=y==null?void 0:y.detail)==null?void 0:yg.id}});(Qc==null?void 0:Qc.status)===0&&Hs(Qc==null?void 0:Qc.data)})}const xc=(si,so)=>{if(mt.current){if(Hr){ht.current.onMouse(si,so.name);return}try{const Qo={},is={};mt.current.getEdgeData().map(To=>{Qo[To.id]=si==="Enter"?"inactive":"active"}),mt.current.getNodeData().map(To=>{si==="Enter"?is[To.id]=To.colornodeType===so.name?"highlight":"inactive":is[To.id]="active"}),mt.current.setElementState(Qo),mt.current.setElementState(is)}catch(Qo){}}},el=(si,so)=>{if(mt.current){if(Hr){ht.current.onMouse(si,so.name);return}try{const Qo={},is={};mt.current.getEdgeData().map(To=>{Qo[To.id]=si==="Enter"?"inactive":"active"}),mt.current.getNodeData().map(To=>{var wu,Nd;si==="Enter"?is[To.id]=(Nd=(wu=To.tags)==null?void 0:wu.map(tf=>tf==null?void 0:tf.name))!=null&&Nd.includes(so.name)?"highlight":"inactive":is[To.id]="active"}),mt.current.setElementState(Qo),mt.current.setElementState(is)}catch(Qo){}}};return Ba.createElement(ce.Z,{spinning:Es},Ba.createElement("div",{ref:yn,style:{background:"#010A23",height:"100vh",overflow:"hidden",position:"relative"}},Ba.createElement("div",{style:{color:"#fff",display:"flex",alignItems:"center",marginLeft:"10rem",position:"fixed",bottom:"30px",zIndex:1}},(De=Hm.filter(si=>{var so;return(so=dt==null?void 0:dt.map(Qo=>Qo==null?void 0:Qo.colornodeType))==null?void 0:so.includes(si==null?void 0:si.name)}))==null?void 0:De.map(si=>Ba.createElement("div",{onMouseLeave:()=>xc("Leave",si),onMouseEnter:()=>xc("Enter",si),style:{display:"flex",alignItems:"center",margin:"0 2px",cursor:"pointer"}},Ba.createElement("span",{style:{display:"inline-flex",marginLeft:"10rem",width:"20rem",height:"20rem",borderRadius:"50%",background:si.color}}),Ba.createElement("span",{style:{marginLeft:"5rem"}},si==null?void 0:si.name)))),Ba.createElement("div",{style:{color:"#fff",display:"flex",alignItems:"center",marginLeft:"10rem",position:"fixed",bottom:"30px",zIndex:1,right:40}},Ba.createElement($m.Z,{overlayClassName:Jl.dropdownst,getPopupContainer:()=>yn.current,menu:{items:[{label:Ba.createElement("div",{onClick:()=>{$s()}},"\u5C55\u5F00\u5168\u90E8"),key:"1"},{label:Ba.createElement("div",{onClick:()=>{$s(3)}},"\u5C55\u5F003\u5C42"),key:"2"},{label:Ba.createElement("div",{onClick:()=>{$s(2)}},"\u5C55\u5F002\u5C42"),key:"3"},{label:Ba.createElement("div",{onClick:()=>{$s(1)}},"\u5C55\u5F001\u5C42"),key:"4"},{label:Ba.createElement("div",{onClick:()=>{$s(0)}},"\u6536\u8D77\u5168\u90E8"),key:"5"}]}},Ba.createElement("img",{style:{cursor:"pointer"},onClick:()=>{},src:Is===7?`${Fo}/images/xscjxz.png`:`${Fo}/images/xscj.png`,onMouseOut:()=>{As(!1)},onMouseOver:()=>{As(7)}})),Ba.createElement(on.Z,{title:"\u5C45\u4E2D\u663E\u793A"},Ba.createElement("img",{onClick:()=>{wt(!1),$s()},style:{marginLeft:"10rem",cursor:"pointer"},src:Is===8?`${Fo}/images/jzxsxz.png`:`${Fo}/images/jzxs.png`,onMouseOut:()=>{As(!1)},onMouseOver:()=>{As(8)},className:Jl.img})),Ba.createElement("div",{style:{marginLeft:"10rem",background:"#202F4F",borderRadius:"4px",alignItems:"center"}},Ba.createElement("img",{style:{cursor:"pointer"},onClick:()=>{Hr?(ht.current.zoomBy(.9),ht.current.getZooms()):(mt.current.zoomBy(.9),setTimeout(()=>{var si;Ri((((si=mt==null?void 0:mt.current)==null?void 0:si.getZoom())*100).toFixed(0))},300))},src:Is===9?`${Fo}/images/newsxxz.png`:`${Fo}/images/newsx.png`,onMouseOut:()=>{As(!1)},onMouseOver:()=>{As(9)}}),Ba.createElement("span",{style:{display:"inline-flex",width:"46px",justifyContent:"center"},onClick:()=>{}}," ",yi+"%"),Ba.createElement("img",{style:{cursor:"pointer"},onClick:()=>{Hr?(ht.current.zoomBy(1.1),ht.current.getZooms()):(mt.current.zoomBy(1.1),setTimeout(()=>{var si;Ri((((si=mt==null?void 0:mt.current)==null?void 0:si.getZoom())*100).toFixed(0))},300))},src:Is===12?`${Fo}/images/newfdxz.png`:`${Fo}/images/newfd.png`,onMouseOut:()=>{As(!1)},onMouseOver:()=>{As(12)}}))),Ba.createElement("div",{style:{display:"flex",justifyContent:"start",width:"1840rem",left:"40rem",paddingTop:"25rem",position:"absolute",zIndex:1}},Ba.createElement("span",{className:Jl.tupugx,onClick:()=>{de()}},Ba.createElement("img",{src:`${Fo}/images/tpgx.svg`,style:{marginRight:"10rem",width:"16rem"}}),"\u56FE\u8C31\u5173\u7CFB"),Ba.createElement("div",{className:Jl.autocomp},_t&&Ba.createElement("div",{style:{display:"flex",alignItems:"center"}},Ba.createElement(wT.Z,{className:Jl.autocompwidth,options:$t,popupClassName:Jl.autopop,getPopupContainer:()=>yn.current,value:Xt,onSelect:(si,so)=>{var Qo;if(Tn(dt.find(is=>is.id===si).name),qn(dt.find(is=>is.id===si)),lr(!0),Hr)ht.current.selectall(si);else{let is=mt.current.getElementDataByState("node","selected");(is==null?void 0:is.length)>0&&mt.current.setElementState((Qo=is==null?void 0:is[0])==null?void 0:Qo.id,[""]),mt.current.setElementState(si,["selected"])}},onChange:si=>{Tn(si)},onSearch:si=>{gn(()=>{var so,Qo,is;return Sa==="\u5168\u90E8"?(so=dt==null?void 0:dt.filter(To=>To.name.includes(si)))==null?void 0:so.map(To=>({label:Ba.createElement("div",{style:{display:"flex",alignItems:"center"}},Ba.createElement("span",{style:{marginRight:"10rem",height:"20rem",lineHeight:"20rem",padding:"0rem 6rem",color:"#fff",fontSize:"12rem",background:"#1890FF",borderRadius:"2rem"}},To==null?void 0:To.nodeType)," ",Ba.createElement("div",{style:{color:"#fff"},dangerouslySetInnerHTML:{__html:To==null?void 0:To.name.replaceAll(si,`<span style= "color: #00B187" >${si}</span>`)}})),value:To==null?void 0:To.id})):(is=(Qo=dt==null?void 0:dt.filter(To=>{var wu;return(wu=To==null?void 0:To.tags)==null?void 0:wu.find(Nd=>Nd.name===Sa)}))==null?void 0:Qo.filter(To=>To.name.includes(si)))==null?void 0:is.map(To=>({label:Ba.createElement("div",{style:{display:"flex",alignItems:"center"}},Ba.createElement("span",{style:{marginRight:"10rem",height:"20rem",padding:"2rem 6rem",color:"#fff",fontSize:"12rem",background:"#1890FF",borderRadius:"2rem"}},To==null?void 0:To.nodeType)," ",Ba.createElement("div",{style:{color:"#fff"},dangerouslySetInnerHTML:{__html:To==null?void 0:To.name.replaceAll(si,`<span style= "color: #00B187" >${si}</span>`)}})),value:To==null?void 0:To.id}))})}},Ba.createElement(Se.default,{placeholder:"\u8BF7\u8F93\u5165\u5173\u952E\u8BCD\u641C\u7D22",addonBefore:Ba.createElement($m.Z,{overlayClassName:Jl.dropdownst,menu:{items:[{label:Ba.createElement("div",{onClick:()=>{Fa("\u5168\u90E8"),el("\u5168\u90E8","")}},"\u5168\u90E8"),key:"1"},...Qi==null?void 0:Qi.map(si=>({label:Ba.createElement("div",{onClick:()=>{Fa(si.name),el("Enter",si)}},si==null?void 0:si.name),key:si.id}))]}},Ba.createElement("div",{style:{display:"flex",alignItems:"center"}},Ba.createElement("div",{className:Jl.textname,style:{width:"60rem"}},Sa),Ba.createElement("div",{style:{height:"22rem",background:"linear-gradient( 180deg, rgba(255,255,255,0) 0%, #AEAEAE 52%, rgba(255,255,255,0) 100%)",width:"1rem"}})))})))),Ba.createElement("div",{style:{display:"flex",position:"absolute",right:"0rem",zIndex:"3"}},((ke=y==null?void 0:y.detail)==null?void 0:ke.sync_uuid)&&((ze=y==null?void 0:y.detail)==null?void 0:ze.sync_uuid)===re&&((We=y==null?void 0:y.detail)==null?void 0:We.can_managed)&&Ba.createElement(on.Z,{title:"\u540C\u6B65"},Ba.createElement("img",{className:"current",onClick:(0,no.debounce)(()=>{Me.default.confirm({title:"\u63D0\u793A",icon:null,centered:!0,getContainer:()=>yn.current,content:"\u8BF7\u786E\u5B9A\u662F\u5426\u5C06\u540C\u6B65\u8BFE\u7A0B\u7AE0\u8282\u5185\u5BB9\uFF0C\u66F4\u65B0\u540E\u539F\u6709\u77E5\u8BC6\u56FE\u8C31\u5185\u5BB9\u5C06\u88AB\u8986\u76D6\uFF0C\u8986\u76D6\u540E\u53EF\u5728\u7248\u672C\u7BA1\u7406\u4E2D\u9009\u62E9\u6062\u590D\u3002",onOk:()=>vg(void 0,null,function*(){var si,so;const Qo=(si=ae==null?void 0:ae.find(To=>(To==null?void 0:To.uuid)===re))==null?void 0:si.name;let is=yield(0,te.ZP)("/api/knowledge/v2/sync.json",{method:"post",body:{subject_id:(so=y==null?void 0:y.detail)==null?void 0:so.id,uuid:re,name:Qo}});is.status===0&&_e.ZP.info(is==null?void 0:is.message)})})},500),src:Is===1?`${Fo}/images/gxxz.png`:`${Fo}/images/gx.png`,onMouseOut:()=>{As(!1)},onMouseOver:()=>{As(1)},style:{width:"40rem",height:"40rem",marginRight:"15rem",marginTop:"5rem"}})),((Ve=y==null?void 0:y.detail)==null?void 0:Ve.can_managed)&&Ba.createElement("div",{className:Jl.hoverone},Ba.createElement("div",{onClick:()=>vg(void 0,null,function*(){var si;let so=yield(0,te.ZP)("/api/knowledge/v2/backup.json",{method:"POST",body:{subject_id:(si=y==null?void 0:y.detail)==null?void 0:si.id,parentNodeUuid:re}});(so==null?void 0:so.status)===0&&_e.ZP.info("\u56FE\u8C31\u4FDD\u5B58\u6210\u529F")})},Ba.createElement("img",{src:Is===2?`${Fo}/images/bcbbxz.png`:`${Fo}/images/bcbb.png`,onMouseOut:()=>{As(!1)},onMouseOver:()=>{As(2)}}),Ba.createElement("div",{className:Jl.name},"\u4FDD\u5B58\u7248\u672C")),Ba.createElement("div",{onClick:()=>vg(void 0,null,function*(){var si;ni.page=1,ni.limit=10;let so=yield(0,te.ZP)("/api/knowledge/v2/knowledge_histories.json",{mehtod:"get",params:A0({subject_id:(si=y==null?void 0:y.detail)==null?void 0:si.id,nodeUuid:re},ni)});Ki(ni),(so==null?void 0:so.status)===0&&(qi(!0),fo(so))})},Ba.createElement("img",{src:Is===3?`${Fo}/images/qhbbxz.png`:`${Fo}/images/qhbb.png`,onMouseOut:()=>{As(!1)},onMouseOver:()=>{As(3)},className:Jl.img}),Ba.createElement("div",{className:Jl.name},"\u5207\u6362\u7248\u672C"))),Ba.createElement("div",{className:Jl.hoverone},Ba.createElement("div",{onClick:()=>{Hr=!1,Ar(!1),wt(!1),$s()}},Ba.createElement("img",{src:Is===4?`${Fo}/images/gxtxz.png`:`${Fo}/images/gxt.png`,onMouseOut:()=>{As(!1)},onMouseOver:()=>{As(4)}}),Ba.createElement("div",{className:Jl.name},"\u5173\u7CFB\u56FE")),Ba.createElement("div",{onClick:()=>{Hr=!0,Ar(!0)}},Ba.createElement("img",{src:Is===5?`${Fo}/images/zssxz.png`:`${Fo}/images/zss.png`,onMouseOut:()=>{As(!1)},onMouseOver:()=>{As(5)},className:Jl.img}),Ba.createElement("div",{className:Jl.name},"\u77E5\u8BC6\u6811"))),Ba.createElement(on.Z,{title:"\u5168\u5C4F"},Ba.createElement("img",{className:"current",onClick:()=>{var si,so,Qo,is;(0,uC.vp)()?(En(!1),(0,uC.BU)(),!Hr&&_t?(si=mt==null?void 0:mt.current)==null||si.fitCenter():(so=ht==null?void 0:ht.current)==null||so.fitView()):(En(!0),(0,uC.Dj)(yn.current),!Hr&&_t?(Qo=mt==null?void 0:mt.current)==null||Qo.fitCenter():(is=ht==null?void 0:ht.current)==null||is.fitView())},src:Is===6?`${Fo}/images/qpxz.png`:`${Fo}/images/qp.png`,onMouseOut:()=>{As(!1)},onMouseOver:()=>{As(6)},style:{width:"40rem",height:"40rem",marginRight:"15rem",marginTop:"5rem"}})),((Ze=y==null?void 0:y.detail)==null?void 0:Ze.can_managed)&&Ba.createElement("div",{className:Jl.hoverone,style:{marginRight:"0rem"}},Ba.createElement("div",{onClick:()=>{ya(!0)}},Ba.createElement("img",{src:Is===10?`${Fo}/images/drxz.png`:`${Fo}/images/dr.png`,onMouseOut:()=>{As(!1)},onMouseOver:()=>{As(10)}}),Ba.createElement("div",{className:Jl.name},"\u5BFC\u5165")),Ba.createElement("div",{onClick:()=>{var si;(0,vt.FH)("",Mn.Z.API_SERVER+`/api/knowledge/v2/export.json?subject_id=${(si=y==null?void 0:y.detail)==null?void 0:si.id}&fileType=xlsx&parentNodeUuid=${re}`)}},Ba.createElement("img",{src:Is===11?`${Fo}/images/dcxz.png`:`${Fo}/images/dc.png`,onMouseOut:()=>{As(!1)},onMouseOver:()=>{As(11)},className:Jl.img}),Ba.createElement("div",{className:Jl.name},"\u5BFC\u51FA"))))),_t&&!Hr&&Ba.createElement("div",{style:{width:"100%",height:"100vh",opacity:0},ref:Ds}),Ba.createElement("div",{id:"myDiagramDiv",style:{height:"100vh",width:"100%",visibility:Hr?"visible":"hidden"}},Hr?Ba.createElement(LQ,{ref:ht,setzoomsize:Ri,setshowdetail:lr,setitems:qn,nodeUuid:re,subject_id:(Ye=y==null?void 0:y.detail)==null?void 0:Ye.id}):""),Ba.createElement(bg,{tpacti:ge,initdata:oe,uuid:re,Tabsdatas:ae,setshow:wt,getData:$s,containerRef:yn,showdetail:pn,setshowdetail:lr,items:Cn}),Ba.createElement(Me.default,{title:"\u6587\u4EF6\u5BFC\u5165",open:Wr,centered:!0,getContainer:()=>yn.current,okButtonProps:{loading:Ra},onCancel:()=>{ya(!1),So([])},onOk:()=>vg(void 0,null,function*(){var si,so,Qo,is;const To=new FormData;if(co.length>0)To.append("file",co[0]);else{_e.ZP.warning("\u8BF7\u9009\u62E9\u6587\u4EF6");return}Aa(!0),To.append("subject_id",((si=y.detail)==null?void 0:si.id)+""),To.append("parentNodeUuid",re);let wu=yield(0,te.ZP)("/api/knowledge/v2/import.json",{method:"post",body:To},!0);Aa(!1),(wu==null?void 0:wu.status)===0&&((so=wu==null?void 0:wu.data)!=null&&so.importErrorFilePath?Me.default.confirm({icon:null,title:"\u5BFC\u5165\u5931\u8D25",centered:!0,content:Ba.createElement("span",null,"\u68C0\u6D4B\u5230\u672C\u6B21\u5BFC\u5165\u5B58\u5728\u4E0D\u7B26\u5408\u8981\u6C42\u7684\u6570\u636E\uFF0C\u70B9\u51FB\u4E0B\u8F7D",Ba.createElement("a",{href:`${Mn.Z.API_SERVER}${(Qo=wu==null?void 0:wu.data)==null?void 0:Qo.importErrorFilePath}`,download:"\u5931\u8D25\u6570\u636E.xlsx"},"\u5BFC\u5165\u5931\u8D25\u7684\u6570\u636E"),"\u67E5\u770B")}):($s(),wt(!1),(is=wu==null?void 0:wu.data)!=null&&is.has_route?_e.ZP.info("\u77E5\u8BC6\u56FE\u8C31\u6570\u636E\u5BFC\u5165\u6210\u529F\uFF0C\u4E3A\u4FDD\u8BC1\u5B66\u4E60\u8DEF\u5F84\u7684\u8282\u70B9\u4E0E\u77E5\u8BC6\u56FE\u8C31\u8282\u70B9\u7ED1\u5B9A\uFF0C\u8BF7\u66F4\u65B0\u5B66\u4E60\u8DEF\u5F84"):_e.ZP.info("\u5BFC\u5165\u6210\u529F"),So([]),qn({}),ya(!1)))})},(dt==null?void 0:dt.length)>0&&Ba.createElement("div",{style:{marginBottom:30,color:"#333333"}},"\u68C0\u6D4B\u5F53\u524D\u5DF2\u5B58\u5728\u6570\u636E\uFF0C\u5BFC\u5165\u540E\u539F\u6570\u636E\u5C06\u4F1A\u88AB\u8986\u76D6\uFF0C\u6309\u7167\u6700\u65B0\u5BFC\u5165\u7684\u4E3A\u4E3B\uFF0C\u5982\u9700\u7EE7\u7EED\u5BFC\u5165\uFF0C\u8BF7\u6309\u7167\u4E0B\u65B9\u6B65\u9AA4\u8FDB\u884C"),Ba.createElement("p",{style:{color:"#5F6368"}},"\u6B65\u9AA41\uFF1A",Ba.createElement("span",{style:{color:"#000000"}},"\u4E0B\u8F7D"),Ba.createElement("a",{href:`${Mn.Z.API_SERVER}/api/knowledge/v2/down_template.json`,download:"\u6A21\u7248.xlsx"},"\u77E5\u8BC6\u56FE\u8C31\u5BFC\u5165\u6A21\u7248")),Ba.createElement(Ou.Z,null,Ba.createElement(ah.Z,{style:{color:"#5F6368"}},"\u6B65\u9AA42\uFF1A",Ba.createElement("span",{style:{color:"#000000"}},"\u4E0A\u4F20\u586B\u5199\u597D\u7684\u300A\u77E5\u8BC6\u56FE\u8C31\u5BFC\u5165\u6A21\u7248\u300B"))),Ba.createElement(Ou.Z,{style:{marginTop:10,marginLeft:50}},Ba.createElement(Ss.default,A0({},hd),Ba.createElement("span",{style:{padding:"0px 16px",color:"#1b8565",cursor:"pointer",height:32,alignItems:"center",display:"inline-flex",borderRadius:2,border:"1px solid #1b8565",background:"#1b8565 linear-gradient(180deg, #FFFFFF 0%, #F6F7F9 100%)",boxShadow:"0px 2px 4px 0px #E0DFE1, inset 0px 1px 3px 0px rgba(255,255,255,0.5)"}},Ba.createElement("i",{style:{fontSize:12,marginRight:6},className:"iconfont icon-tianjiashitixiaojiahao"})," \u9009\u62E9\u6587\u4EF6")))),Ba.createElement(Qt,null,Ba.createElement(Ba.Fragment,null,Ba.createElement(Me.default,{title:"\u7248\u672C\u8BB0\u5F55",centered:!0,width:1200,open:ti,footer:!1,getContainer:()=>yn.current,onCancel:()=>{qi(!1)}},Ba.createElement(Jt.default,{dataSource:Gi==null?void 0:Gi.data,pagination:!1,columns:[{title:"\u7248\u672C\u4FDD\u5B58\u65F6\u95F4",dataIndex:"created_at",ellipsis:!0,key:"created_at",render:(si,so)=>Ba.createElement("div",null,Ba.createElement("span",null,si),(so==null?void 0:so.is_now_version)&&Ba.createElement("span",{style:{background:"#2BAC8E",padding:"4rem",fontSize:"12rem",marginLeft:"5rem",color:"#fff"}},"\u5F53\u524D\u4F7F\u7528\u7248\u672C"))},{title:"\u4FDD\u5B58\u4EBA",dataIndex:"username",ellipsis:!0,key:"username"},{title:"\u64CD\u4F5C",dataIndex:"name",ellipsis:!0,key:"name",render:(si,so)=>Ba.createElement("div",null,Ba.createElement("span",{style:{color:"#1B8565",marginRight:"30rem",cursor:"pointer"},onClick:()=>vg(void 0,null,function*(){var Qo,is;let To=yield(0,te.ZP)(`${so==null?void 0:so.url}`,{method:"get"});(To==null?void 0:To.status)===0&&((is=(Qo=To==null?void 0:To.data)==null?void 0:Qo.nodes)==null?void 0:is.length)>0&&na(To==null?void 0:To.data)})},"\u67E5\u770B"),Ba.createElement("span",{onClick:()=>vg(void 0,null,function*(){var Qo;if(so!=null&&so.is_now_version)return;let is=yield(0,te.ZP)("/api/knowledge/v2/restore.json",{method:"post",body:{subject_id:(Qo=y==null?void 0:y.detail)==null?void 0:Qo.id,backupFilePath:so==null?void 0:so.backupFilePath}});(is==null?void 0:is.status)===0&&($s(),qi(!1),wt(!1),_e.ZP.info("\u5207\u6362\u6210\u529F"))}),style:{color:so!=null&&so.is_now_version?"#999999":"#1B8565",cursor:"pointer"}},"\u5207\u6362\u81F3\u5F53\u524D\u7248\u672C"))}]}),Ba.createElement(ln.Z,{hideOnSinglePage:!0,style:{marginTop:"20rem"},pageSize:ni.limit,total:Gi==null?void 0:Gi.total_count,current:ni.page,onChange:(si,so)=>vg(void 0,null,function*(){var Qo;ni.page=si,ni.limit=so,Ki(ni);let is=yield(0,te.ZP)("/api/knowledge/v2/knowledge_histories.json",{mehtod:"get",params:A0({subject_id:(Qo=y==null?void 0:y.detail)==null?void 0:Qo.id,nodeUuid:re},ni)});(is==null?void 0:is.status)===0&&(qi(!0),fo(is))})})),Ba.createElement(Me.default,{open:((et=Jr==null?void 0:Jr.nodes)==null?void 0:et.length)>0,title:"\u5386\u53F2\u56FE\u8C31",width:"1200rem",footer:null,getContainer:()=>yn.current,destroyOnClose:!0,onCancel:()=>{na({})}},Ba.createElement(jQ,{datas:Jr}))))))};var ZQ=(0,be.connect)(({pathsDetail:E,user:a,loading:y,globalSetting:x})=>({pathsDetail:E,user:a,globalSetting:x,loading:y.models.index}))(KQ),bh={wrap:"wrap___HuFFi",add:"add___GrP2R",dimensionalBall:"dimensionalBall___flm6B",archer:"archer___biVqC",svg:"svg___hXxGw",modal:"modal___DR9M_",mHead:"mHead___I923K",form:"form___W2fTe",mType:"mType___hoISa",listItem:"listItem___JCZwd"},ef={flex_box_center:"flex_box_center___aEG4A",flex_space_between:"flex_space_between___O70yE",flex_box_vertical_center:"flex_box_vertical_center___rEvY1",flex_box_center_end:"flex_box_center_end___Xp3ui",flex_box_column:"flex_box_column___McZmY",largeBall:"largeBall___SbxSR",middleBall:"middleBall___eKLzh",smallBall:"smallBall___r7xv5",largeBallDish:"largeBallDish___EeTGm",middleBallDish:"middleBallDish___hca4h",smallBallDish:"smallBallDish___rrHxf",smallBallGather:"smallBallGather___hHHqa",box:"box___yWjPn",spectrum:"spectrum___r9a7p",pedestal:"pedestal___Grjvz",spectrumHover:"spectrumHover___OibBM",pedestalHover:"pedestalHover___EcKUJ"};const QQ="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMjkxcHgiIGhlaWdodD0iMTk0cHgiIHZpZXdCb3g9IjAgMCAyOTEgMTk0IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPgogICAgPCEtLSBHZW5lcmF0b3I6IFNrZXRjaCA2MSAoODk1ODEpIC0gaHR0cHM6Ly9za2V0Y2guY29tIC0tPgogICAgPHRpdGxlPuWfuuW6pzwvdGl0bGU+CiAgICA8ZGVzYz5DcmVhdGVkIHdpdGggU2tldGNoLjwvZGVzYz4KICAgIDxkZWZzPgogICAgICAgIDxsaW5lYXJHcmFkaWVudCB4MT0iMjcuNzcyODY0MyUiIHkxPSI0My4xNzgwNjE3JSIgeDI9Ijk3LjIyMjIyMjIlIiB5Mj0iNTAlIiBpZD0ibGluZWFyR3JhZGllbnQtMSI+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiMzMTdDRDMiIG9mZnNldD0iMCUiPjwvc3RvcD4KICAgICAgICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iIzI3MkE5NSIgb2Zmc2V0PSIxMDAlIj48L3N0b3A+CiAgICAgICAgPC9saW5lYXJHcmFkaWVudD4KICAgICAgICA8bGluZWFyR3JhZGllbnQgeDE9IjE0LjI3MTI2ODMlIiB5MT0iMzEuNjQ0NzI5NyUiIHgyPSIxMDAlIiB5Mj0iNzMuMTEyMDA3OCUiIGlkPSJsaW5lYXJHcmFkaWVudC0yIj4KICAgICAgICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iIzI3NzFEQiIgb2Zmc2V0PSIwJSI+PC9zdG9wPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjMjg0REIwIiBvZmZzZXQ9IjEwMCUiPjwvc3RvcD4KICAgICAgICA8L2xpbmVhckdyYWRpZW50PgogICAgICAgIDxsaW5lYXJHcmFkaWVudCB4MT0iMTAwJSIgeTE9IjM1LjA0MTMwMTklIiB4Mj0iMCUiIHkyPSI2NS41NDY3MzEzJSIgaWQ9ImxpbmVhckdyYWRpZW50LTMiPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjMzA2NkI0IiBvZmZzZXQ9IjAlIj48L3N0b3A+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiMxNDM4OTQiIG9mZnNldD0iMTAwJSI+PC9zdG9wPgogICAgICAgIDwvbGluZWFyR3JhZGllbnQ+CiAgICAgICAgPGxpbmVhckdyYWRpZW50IHgxPSIyNy43NzI4NjQzJSIgeTE9IjQzLjE1NTA2NzMlIiB4Mj0iOTcuMjIyMjIyMiUiIHkyPSI1MCUiIGlkPSJsaW5lYXJHcmFkaWVudC00Ij4KICAgICAgICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iIzMxN0NEMyIgb2Zmc2V0PSIwJSI+PC9zdG9wPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjMjcyQTk1IiBvZmZzZXQ9IjEwMCUiPjwvc3RvcD4KICAgICAgICA8L2xpbmVhckdyYWRpZW50PgogICAgICAgIDxsaW5lYXJHcmFkaWVudCB4MT0iMCUiIHkxPSI1MCUiIHgyPSI1MCUiIHkyPSI2NC4yMTc0OTQ1JSIgaWQ9ImxpbmVhckdyYWRpZW50LTUiPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjMkY3MEM5IiBvZmZzZXQ9IjAlIj48L3N0b3A+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiM1QjVGRkYiIG9mZnNldD0iMTAwJSI+PC9zdG9wPgogICAgICAgIDwvbGluZWFyR3JhZGllbnQ+CiAgICAgICAgPHBvbHlnb24gaWQ9InBhdGgtNiIgcG9pbnRzPSIxNDQuNzQ1OSAxNi40Njc5NzAxIDI2MC4xMzI5MzUgNzIuOTI3OTU1NiAxNDYuMTg4MjM4IDEzOC43NTc4OTYgMzAuODAxMjAzMyA3Mi4yMDcxODk5Ij48L3BvbHlnb24+CiAgICAgICAgPGZpbHRlciB4PSItMS41JSIgeT0iLTIuOSUiIHdpZHRoPSIxMDMuMSUiIGhlaWdodD0iMTA1LjclIiBmaWx0ZXJVbml0cz0ib2JqZWN0Qm91bmRpbmdCb3giIGlkPSJmaWx0ZXItNyI+CiAgICAgICAgICAgIDxmZUdhdXNzaWFuQmx1ciBzdGREZXZpYXRpb249IjEiIGluPSJTb3VyY2VBbHBoYSIgcmVzdWx0PSJzaGFkb3dCbHVySW5uZXIxIj48L2ZlR2F1c3NpYW5CbHVyPgogICAgICAgICAgICA8ZmVPZmZzZXQgZHg9IjAiIGR5PSI1IiBpbj0ic2hhZG93Qmx1cklubmVyMSIgcmVzdWx0PSJzaGFkb3dPZmZzZXRJbm5lcjEiPjwvZmVPZmZzZXQ+CiAgICAgICAgICAgIDxmZUNvbXBvc2l0ZSBpbj0ic2hhZG93T2Zmc2V0SW5uZXIxIiBpbjI9IlNvdXJjZUFscGhhIiBvcGVyYXRvcj0iYXJpdGhtZXRpYyIgazI9Ii0xIiBrMz0iMSIgcmVzdWx0PSJzaGFkb3dJbm5lcklubmVyMSI+PC9mZUNvbXBvc2l0ZT4KICAgICAgICAgICAgPGZlQ29sb3JNYXRyaXggdmFsdWVzPSIwIDAgMCAwIDAuNzk2ODM2ODkgICAwIDAgMCAwIDAuOTc0NjYwMTA4ICAgMCAwIDAgMCAxICAwIDAgMCAwLjUgMCIgdHlwZT0ibWF0cml4IiBpbj0ic2hhZG93SW5uZXJJbm5lcjEiPjwvZmVDb2xvck1hdHJpeD4KICAgICAgICA8L2ZpbHRlcj4KICAgIDwvZGVmcz4KICAgIDxnIGlkPSLpobXpnaItMSIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9IjA4MjAtM0Tlm77osLEt5YiH5Zu+VjQuMCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTQ0OS4wMDAwMDAsIC0xMzQ0LjAwMDAwMCkiPgogICAgICAgICAgICA8ZyBpZD0i5Z+65bqnIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg0NDkuMDAwMDAwLCAxMzQ0LjAwMDAwMCkiPgogICAgICAgICAgICAgICAgPHBvbHlnb24gaWQ9IuefqeW9oiIgZmlsbD0idXJsKCNsaW5lYXJHcmFkaWVudC0xKSIgb3BhY2l0eT0iMC4zMjA4NzA1MzYiIHBvaW50cz0iMTQ0LjU4NDkwNiAzOC45MDI0MTk0IDI5MSAxMTAuNDY0MzA1IDE0Ni40MTUwOTQgMTkzLjkwMjQxOSAwIDEwOS41NTA3NDkiPjwvcG9seWdvbj4KICAgICAgICAgICAgICAgIDxwb2x5Z29uIGlkPSLnn6nlvaIiIGZpbGw9InVybCgjbGluZWFyR3JhZGllbnQtMikiIHBvaW50cz0iLTcuNTMxNzUzZS0xMyA3MC43NTEyNzkgMTQ2LjA3Njk5NCAxNTUuMjI1ODY2IDE0Ni4wNzY5OTQgMTc3Ljc5MzA4NSAtNy41MzE3NTNlLTEzIDkzLjMxODQ5NzMiPjwvcG9seWdvbj4KICAgICAgICAgICAgICAgIDxwb2x5Z29uIGlkPSLnn6nlvaIiIGZpbGw9InVybCgjbGluZWFyR3JhZGllbnQtMykiIHBvaW50cz0iMTQ2LjA3Njk5NCAxNTUuMjI1ODY2IDI5MC45MzQxMzggNzEuNjY2MTY2MiAyOTAuOTM0MTM4IDk0LjIzMzM4NDUgMTQ2LjA3Njk5NCAxNzcuNzkzMDg1Ij48L3BvbHlnb24+CiAgICAgICAgICAgICAgICA8cG9seWdvbiBpZD0i55+p5b2iIiBmaWxsPSJ1cmwoI2xpbmVhckdyYWRpZW50LTQpIiBwb2ludHM9IjE0NC41NTIxODIgLTUuODk5OTA5NzdlLTEzIDI5MC45MzQxMzggNzEuNjY2MTY2MiAxNDYuMzgxOTU2IDE1NS4yMjU4NjYgLTUuNjg0MzQxODllLTEzIDcwLjc1MTI3OSI+PC9wb2x5Z29uPgogICAgICAgICAgICAgICAgPGcgaWQ9IuefqeW9oiI+CiAgICAgICAgICAgICAgICAgICAgPHVzZSBmaWxsPSJ1cmwoI2xpbmVhckdyYWRpZW50LTUpIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIHhsaW5rOmhyZWY9IiNwYXRoLTYiPjwvdXNlPgogICAgICAgICAgICAgICAgICAgIDx1c2UgZmlsbD0iYmxhY2siIGZpbGwtb3BhY2l0eT0iMSIgZmlsdGVyPSJ1cmwoI2ZpbHRlci03KSIgeGxpbms6aHJlZj0iI3BhdGgtNiI+PC91c2U+CiAgICAgICAgICAgICAgICA8L2c+CiAgICAgICAgICAgIDwvZz4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==",YQ="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMjk1cHgiIGhlaWdodD0iMTk3cHgiIHZpZXdCb3g9IjAgMCAyOTUgMTk3IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPgogICAgPCEtLSBHZW5lcmF0b3I6IFNrZXRjaCA2MSAoODk1ODEpIC0gaHR0cHM6Ly9za2V0Y2guY29tIC0tPgogICAgPHRpdGxlPuW6leW6p+mAieS4rTwvdGl0bGU+CiAgICA8ZGVzYz5DcmVhdGVkIHdpdGggU2tldGNoLjwvZGVzYz4KICAgIDxkZWZzPgogICAgICAgIDxsaW5lYXJHcmFkaWVudCB4MT0iMjcuNzcyODY0MyUiIHkxPSI0My4xNTUwNjczJSIgeDI9Ijk3LjIyMjIyMjIlIiB5Mj0iNTAlIiBpZD0ibGluZWFyR3JhZGllbnQtMSI+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiMzMTdDRDMiIG9mZnNldD0iMCUiPjwvc3RvcD4KICAgICAgICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iIzI3MkE5NSIgb2Zmc2V0PSIxMDAlIj48L3N0b3A+CiAgICAgICAgPC9saW5lYXJHcmFkaWVudD4KICAgICAgICA8bGluZWFyR3JhZGllbnQgeDE9IjE0LjI3MTI2ODMlIiB5MT0iMzEuNjQ0NzI5NyUiIHgyPSIxMDAlIiB5Mj0iNzMuMTEyMDA3OCUiIGlkPSJsaW5lYXJHcmFkaWVudC0yIj4KICAgICAgICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iIzI3NzFEQiIgb2Zmc2V0PSIwJSI+PC9zdG9wPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjMjg0REIwIiBvZmZzZXQ9IjEwMCUiPjwvc3RvcD4KICAgICAgICA8L2xpbmVhckdyYWRpZW50PgogICAgICAgIDxsaW5lYXJHcmFkaWVudCB4MT0iMTAwJSIgeTE9IjM1LjA0MTMwMTklIiB4Mj0iMCUiIHkyPSI2NS41NDY3MzEzJSIgaWQ9ImxpbmVhckdyYWRpZW50LTMiPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjMzA2NkI0IiBvZmZzZXQ9IjAlIj48L3N0b3A+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiMxNDM4OTQiIG9mZnNldD0iMTAwJSI+PC9zdG9wPgogICAgICAgIDwvbGluZWFyR3JhZGllbnQ+CiAgICAgICAgPGxpbmVhckdyYWRpZW50IHgxPSI1MCUiIHkxPSI2LjA2MjU2MyUiIHgyPSI1MCUiIHkyPSI2NC40MjMxOTgxJSIgaWQ9ImxpbmVhckdyYWRpZW50LTQiPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjMkY3MEM5IiBvZmZzZXQ9IjAlIj48L3N0b3A+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiMyREUxRkQiIG9mZnNldD0iMTAwJSI+PC9zdG9wPgogICAgICAgIDwvbGluZWFyR3JhZGllbnQ+CiAgICAgICAgPHBvbHlnb24gaWQ9InBhdGgtNSIgcG9pbnRzPSIxNDYuMzI3NiAxNi42NDc5MjI2IDI2Mi45NzU1MTcgNzMuNzI0ODcwMiAxNDcuNzg1Njk5IDE0MC4yNzQxNjIgMzEuMTM3NzgxMSA3Mi45OTYyMjgzIj48L3BvbHlnb24+CiAgICAgICAgPGZpbHRlciB4PSItMS4xJSIgeT0iLTIuMCUiIHdpZHRoPSIxMDIuMiUiIGhlaWdodD0iMTA0LjAlIiBmaWx0ZXJVbml0cz0ib2JqZWN0Qm91bmRpbmdCb3giIGlkPSJmaWx0ZXItNiI+CiAgICAgICAgICAgIDxmZUdhdXNzaWFuQmx1ciBzdGREZXZpYXRpb249IjAuNSIgaW49IlNvdXJjZUFscGhhIiByZXN1bHQ9InNoYWRvd0JsdXJJbm5lcjEiPjwvZmVHYXVzc2lhbkJsdXI+CiAgICAgICAgICAgIDxmZU9mZnNldCBkeD0iMCIgZHk9IjQiIGluPSJzaGFkb3dCbHVySW5uZXIxIiByZXN1bHQ9InNoYWRvd09mZnNldElubmVyMSI+PC9mZU9mZnNldD4KICAgICAgICAgICAgPGZlQ29tcG9zaXRlIGluPSJzaGFkb3dPZmZzZXRJbm5lcjEiIGluMj0iU291cmNlQWxwaGEiIG9wZXJhdG9yPSJhcml0aG1ldGljIiBrMj0iLTEiIGszPSIxIiByZXN1bHQ9InNoYWRvd0lubmVySW5uZXIxIj48L2ZlQ29tcG9zaXRlPgogICAgICAgICAgICA8ZmVDb2xvck1hdHJpeCB2YWx1ZXM9IjAgMCAwIDAgMC43OTY4MzY4OSAgIDAgMCAwIDAgMC45NzQ2NjAxMDggICAwIDAgMCAwIDEgIDAgMCAwIDAuNSAwIiB0eXBlPSJtYXRyaXgiIGluPSJzaGFkb3dJbm5lcklubmVyMSI+PC9mZUNvbG9yTWF0cml4PgogICAgICAgIDwvZmlsdGVyPgogICAgPC9kZWZzPgogICAgPGcgaWQ9Iumhtemdoi0xIiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4KICAgICAgICA8ZyBpZD0iMDgyMC0zROWbvuiwsS3liIflm75WNC4wIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMTQ3MS4wMDAwMDAsIC0xMzU0LjAwMDAwMCkiPgogICAgICAgICAgICA8ZyBpZD0i5bqV5bqn6YCJ5LitIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxNDcxLjAwMDAwMCwgMTM1NC4wMDAwMDApIj4KICAgICAgICAgICAgICAgIDxnIGlkPSLnvJbnu4QtMyI+CiAgICAgICAgICAgICAgICAgICAgPHBvbHlnb24gaWQ9IuefqeW9oiIgZmlsbD0idXJsKCNsaW5lYXJHcmFkaWVudC0xKSIgb3BhY2l0eT0iMC4zMjA4NzA1MzYiIHBvaW50cz0iMTQ2LjEzMTc2NSAzOS40MTkzNDQyIDI5NC4xMTMyOTggMTExLjg2ODYzNyAxNDcuOTgxNTM0IDE5Ni4zNDE0MjkgLTEuNDIxMDg1NDdlLTEzIDExMC45NDM3NTIiPjwvcG9seWdvbj4KICAgICAgICAgICAgICAgICAgICA8cG9seWdvbiBpZD0i55+p5b2iIiBmaWxsPSJ1cmwoI2xpbmVhckdyYWRpZW50LTIpIiBwb2ludHM9IjEuMTM2ODY4MzhlLTEzIDcxLjUyNDQwOCAxNDcuNjczMjM5IDE1Ni45MjIwODUgMTQ3LjY3MzIzOSAxNzkuNzM1OTA1IDEuMTM2ODY4MzhlLTEzIDk0LjMzODIyNzgiPjwvcG9seWdvbj4KICAgICAgICAgICAgICAgICAgICA8cG9seWdvbiBpZD0i55+p5b2iIiBmaWxsPSJ1cmwoI2xpbmVhckdyYWRpZW50LTMpIiBwb2ludHM9IjE0Ny42NzMyMzkgMTU2LjkyMjA4NSAyOTQuMTEzMjk4IDcyLjQ0OTI5MjYgMjk0LjExMzI5OCA5NS4yNjMxMTI0IDE0Ny42NzMyMzkgMTc5LjczNTkwNSI+PC9wb2x5Z29uPgogICAgICAgICAgICAgICAgICAgIDxwb2x5Z29uIGlkPSLnn6nlvaIiIGZpbGw9InVybCgjbGluZWFyR3JhZGllbnQtMSkiIHBvaW50cz0iMTQ2LjEzMTc2NSAtNC43OTMzNDg4M2UtMTMgMjk0LjExMzI5OCA3Mi40NDkyOTI2IDE0Ny45ODE1MzQgMTU2LjkyMjA4NSAtMS40MjEwODU0N2UtMTMgNzEuNTI0NDA4Ij48L3BvbHlnb24+CiAgICAgICAgICAgICAgICAgICAgPGcgaWQ9IuefqeW9oiI+CiAgICAgICAgICAgICAgICAgICAgICAgIDx1c2UgZmlsbD0idXJsKCNsaW5lYXJHcmFkaWVudC00KSIgZmlsbC1ydWxlPSJldmVub2RkIiB4bGluazpocmVmPSIjcGF0aC01Ij48L3VzZT4KICAgICAgICAgICAgICAgICAgICAgICAgPHVzZSBmaWxsPSJibGFjayIgZmlsbC1vcGFjaXR5PSIxIiBmaWx0ZXI9InVybCgjZmlsdGVyLTYpIiB4bGluazpocmVmPSIjcGF0aC01Ij48L3VzZT4KICAgICAgICAgICAgICAgICAgICA8L2c+CiAgICAgICAgICAgICAgICA8L2c+CiAgICAgICAgICAgIDwvZz4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==",XQ="data:image/png;base64,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",JQ="data:image/png;base64,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";var qQ=Object.defineProperty,$Q=Object.defineProperties,eY=Object.getOwnPropertyDescriptors,JI=Object.getOwnPropertySymbols,tY=Object.prototype.hasOwnProperty,nY=Object.prototype.propertyIsEnumerable,qI=(E,a,y)=>a in E?qQ(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,wE=(E,a)=>{for(var y in a||(a={}))tY.call(a,y)&&qI(E,y,a[y]);if(JI)for(var y of JI(a))nY.call(a,y)&&qI(E,y,a[y]);return E},ME=(E,a)=>$Q(E,eY(a)),rY=({className:E,style:a={},title:y="",childNode:x=[],knowledgeNode:b=[]})=>{const z="rem",ee=[{position:"absolute",zIndex:2,bottom:112,left:44},{position:"absolute",zIndex:3,bottom:94,left:74},{position:"absolute",zIndex:4,bottom:78,left:104},{position:"absolute",zIndex:5,bottom:66,left:136},{position:"absolute",zIndex:6,bottom:82,left:168},{position:"absolute",zIndex:7,bottom:104,left:202},{position:"absolute",zIndex:8,bottom:122,left:166}],re=[{position:"absolute",zIndex:10,bottom:166,left:66},{position:"absolute",zIndex:11,bottom:148,left:120},{position:"absolute",zIndex:12,bottom:150,left:180},{position:"absolute",zIndex:13,bottom:188,left:164},{position:"absolute",zIndex:14,bottom:192,left:114}],ae=(ye="")=>{if(!ye)return"-";let De=3;return/[\u4e00-\u9fff]/.test(ye)||(De=7),(ye==null?void 0:ye.length)>=De?(ye==null?void 0:ye.slice(0,De-1))+"...":ye},oe=()=>(Array.isArray(b)?b.slice(0,7):Array(7).fill("\u77E5\u8BC6\u70B9")).map((ke,ze)=>{const We=ee[ze],Ve=ME(wE({},We),{bottom:`${We.bottom}${z}`,left:`${We.left}${z}`});return Ne.createElement("div",{key:ze,style:Ve,className:ef.smallBallGather},Ne.createElement("div",{className:ef.smallBall},Ne.createElement("b",null,ae(ke))),Ne.createElement("div",{className:ef.smallBallDish}))}),de=()=>(Array.isArray(x)?x.slice(0,5):Array(5).fill("\u5B50\u8282\u70B9")).map((ke,ze)=>{const We=re[ze],Ve=ME(wE({},We),{bottom:`${We.bottom}${z}`,left:`${We.left}${z}`});return Ne.createElement("div",{key:ze,style:Ve,className:ef.middleBall},Ne.createElement("div",null,Ne.createElement("b",null,ae(ke))))}),ge={position:"absolute",zIndex:1,bottom:0,width:"100%"};return Ne.createElement("div",{className:Gn()(ef.box,E),style:a},Ne.createElement("img",{className:ef.pedestal,style:ge,src:QQ}),Ne.createElement("img",{className:ef.pedestalHover,style:ge,src:YQ}),oe(),Ne.createElement("div",{style:{position:"absolute",zIndex:9,bottom:138+z,left:"50%",transform:"translateX(-50%)"},className:ef.middleBallDish}),de(),Ne.createElement("div",{style:{position:"absolute",zIndex:15,bottom:214+z,left:"50%",transform:"translateX(-50%)"},className:ef.largeBallDish}),Ne.createElement("div",{style:{position:"absolute",zIndex:16,bottom:234+z,left:120+z},className:ef.largeBall},Ne.createElement("b",null,ae(y))),Ne.createElement("img",{style:ME(wE({},ge),{zIndex:17}),className:ef.spectrum,src:XQ}),Ne.createElement("img",{style:ME(wE({},ge),{zIndex:17}),className:ef.spectrumHover,src:JQ}),Ne.createElement("div",{title:y,style:{position:"absolute",zIndex:18,bottom:304+z,left:0,fontSize:24+z,width:"100%",textAlign:"center"},className:"c-white blod"},(0,vt.Pq)(y,9)))},aY=Object.defineProperty,iY=Object.defineProperties,oY=Object.getOwnPropertyDescriptors,$I=Object.getOwnPropertySymbols,sY=Object.prototype.hasOwnProperty,lY=Object.prototype.propertyIsEnumerable,eO=(E,a,y)=>a in E?aY(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,tO=(E,a)=>{for(var y in a||(a={}))sY.call(a,y)&&eO(E,y,a[y]);if($I)for(var y of $I(a))lY.call(a,y)&&eO(E,y,a[y]);return E},nO=(E,a)=>iY(E,oY(a));function uY(E){const a=new Map,y=[];return E.nodes.forEach(x=>{const b=nO(tO({},x.properties),{children:[]});a.set(b.uuid,b)}),E.relationships.forEach(x=>{const b=a.get(x.startNodeUuid),z=a.get(x.endNodeUuid);b&&z&&b.children.push(z)}),E.nodes.forEach(x=>{const b=x.properties;if(!E.relationships.some(re=>re.startNodeUuid===b.uuid||re.endNodeUuid===b.uuid))return;E.relationships.some(re=>re.endNodeUuid===b.uuid)||y.push(a.get(b.uuid))}),y.length===1?y[0]:y}function rO(E,a){const y=new Set,x=[];return E.forEach(b=>{const z=b[a[0]],ee=b[a[1]];if(!z||!ee)return;const re=`${z}-${ee}`,ae=`${ee}-${z}`;z!==ee&&!y.has(re)&&!y.has(ae)&&(x.push(b),y.add(re),y.add(ae))}),x}const cY=(E,a)=>{const y=E==null?void 0:E.map(b=>{const z=ee=>{let re=[ee.uuid];return ee.children.forEach(ae=>{re=re.concat(z(ae))}),re};return z(b)});return a.map(b=>{let z,ee;return y.forEach(re=>{re.includes(b.startNodeUuid)&&(z=re[0]),re.includes(b.endNodeUuid)&&(ee=re[0])}),nO(tO({},b),{firstStartNodeUuid:z,firstEndNodeUuid:ee})})};var nc=Te(59301),dY=({data:E})=>{const a=(0,Ne.useRef)(),y=(0,Ne.useRef)();function x(ee,re,ae){let oe,de;switch(re){case"top":oe=Math.ceil(ee.left+ee.width/2-ae.left),de=Math.ceil(ee.top-ae.top);break;case"bottom":oe=Math.ceil(ee.left+ee.width/2-ae.left),de=Math.ceil(ee.bottom-ae.top+15);break;case"left":oe=Math.ceil(ee.left-ae.left-10),de=Math.ceil(ee.top+ee.height/2-ae.top+80);break;case"right":oe=Math.ceil(ee.right-ae.left+10),de=Math.ceil(ee.top+ee.height/2-ae.top+50);break}return{x:oe,y:de}}function b(ee,re){const ae={x:parseInt(ee.left+ee.width/2),y:parseInt(ee.top+ee.height/2)},oe={x:parseInt(re.left+re.width/2),y:parseInt(re.top+re.height/2)},de=oe.x-ae.x,ge=oe.y-ae.y;let ye,De;return Math.abs(de)>Math.abs(ge)?(ye=de>0?"right":"left",De=de>0?"left":"right"):(ye=ge>0?"bottom":"top",De=ge>0?"top":"bottom"),{startEdge:ye,endEdge:De}}function z(){let ee=E;if(!(ee!=null&&ee.length))return;const re=document.getElementById("lineContainer"),ae=document.getElementById("parentContainer").getBoundingClientRect();re.querySelectorAll("line").forEach(oe=>oe.remove()),ee.forEach(oe=>{const de=document.getElementById(oe.from),ge=document.getElementById(oe.to),ye=de.getBoundingClientRect(),De=ge.getBoundingClientRect();let{startEdge:ke,endEdge:ze}=oe;if(!ke||!ze){const Ye=b(ye,De);ke=ke||Ye.startEdge,ze=ze||Ye.endEdge}const We=x(ye,ke,ae),Ve=x(De,ze,ae),Ze=document.createElementNS("http://www.w3.org/2000/svg","line");if(Ze.setAttribute("x1",We.x+oe.offsetStart.x),Ze.setAttribute("y1",We.y+oe.offsetStart.y),Ze.setAttribute("x2",We.x+oe.offsetStart.x+.01),Ze.setAttribute("y2",We.y+oe.offsetStart.y),Ze.setAttribute("stroke",`url(#${oe.gradient})`),Ze.setAttribute("stroke-width","2"),oe.dashed&&Ze.setAttribute("stroke-dasharray","5, 5"),oe.arrow==="start"?Ze.setAttribute("marker-start",oe!=null&&oe.animated?"url(#triangle-start-h)":"url(#triangle-start)"):oe.arrow==="end"?Ze.setAttribute("marker-end",oe!=null&&oe.animated?"url(#triangle-end-h)":"url(#triangle-end)"):oe.arrow==="both"&&(Ze.setAttribute("marker-start",oe!=null&&oe.animated?"url(#triangle-start-h)":"url(#triangle-start)"),Ze.setAttribute("marker-end",oe!=null&&oe.animated?"url(#triangle-end-h)":"url(#triangle-end)")),oe.animated){Ze.classList.add("dashed-line");const Ye=document.createElementNS("http://www.w3.org/2000/svg","animate");Ye.setAttribute("attributeName","x2"),Ye.setAttribute("from",We.x+oe.offsetStart.x),Ye.setAttribute("to",Ve.x+oe.offsetEnd.x+.01),Ye.setAttribute("dur","1s"),Ye.setAttribute("fill","freeze"),Ze.appendChild(Ye);const et=document.createElementNS("http://www.w3.org/2000/svg","animate");et.setAttribute("attributeName","y2"),et.setAttribute("from",We.y+oe.offsetStart.y),et.setAttribute("to",Ve.y+oe.offsetEnd.y),et.setAttribute("dur","1s"),et.setAttribute("fill","freeze"),Ze.appendChild(et)}else Ze.setAttribute("x2",Ve.x+oe.offsetEnd.x+.01),Ze.setAttribute("y2",Ve.y+oe.offsetEnd.y);re.appendChild(Ze)})}return(0,Ne.useEffect)(()=>{E!=null&&E.length&&z()},[E]),(0,Ne.useEffect)(()=>(window.addEventListener("resize",()=>z),window.addEventListener("scroll",()=>z),()=>{window.removeEventListener("resize",z),window.removeEventListener("scroll",z)}),[]),nc.createElement(nc.Fragment,null,nc.createElement("svg",{id:"lineContainer",style:{width:"100%",height:"100%",position:"absolute",top:0,left:0}}),nc.createElement("svg",null,nc.createElement("defs",null,nc.createElement("linearGradient",{id:"gradient1",x1:"0%",y1:"0%",x2:"0%",y2:"100%"},nc.createElement("stop",{"stop-color":"#42BECD",offset:"0%"}),nc.createElement("stop",{"stop-color":"#3C30C6",offset:"100%"})),nc.createElement("linearGradient",{id:"gradient2",x1:"0%",y1:"0%",x2:"100%",y2:"100%"},nc.createElement("stop",{"stop-color":"#2DE1FD",offset:"0%"}),nc.createElement("stop",{"stop-color":"#C7FFB0",offset:"100%"})),nc.createElement("marker",{id:"triangle-start",viewBox:"0 0 10 10",refX:"2",refY:"5",markerWidth:"6",markerHeight:"6",orient:"auto"},nc.createElement("path",{d:"M 10 0 L 0 5 L 10 10 z",fill:"url(#gradient1)"})),nc.createElement("marker",{id:"triangle-end",viewBox:"0 0 10 10",refX:"8",refY:"5",markerWidth:"6",markerHeight:"6",orient:"auto"},nc.createElement("path",{d:"M 0 0 L 10 5 L 0 10 z",fill:"url(#gradient1)"})),nc.createElement("marker",{id:"triangle-start-h",viewBox:"0 0 10 10",refX:"2",refY:"5",markerWidth:"6",markerHeight:"6",orient:"auto"},nc.createElement("path",{d:"M 10 0 L 0 5 L 10 10 z",fill:"url(#gradient2)"})),nc.createElement("marker",{id:"triangle-end-h",viewBox:"0 0 10 10",refX:"8",refY:"5",markerWidth:"6",markerHeight:"6",orient:"auto"},nc.createElement("path",{d:"M 0 0 L 10 5 L 0 10 z",fill:"url(#gradient2)"})))))},fY=Object.defineProperty,hY=Object.defineProperties,gY=Object.getOwnPropertyDescriptors,aO=Object.getOwnPropertySymbols,vY=Object.prototype.hasOwnProperty,mY=Object.prototype.propertyIsEnumerable,iO=(E,a,y)=>a in E?fY(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,oO=(E,a)=>{for(var y in a||(a={}))vY.call(a,y)&&iO(E,y,a[y]);if(aO)for(var y of aO(a))mY.call(a,y)&&iO(E,y,a[y]);return E},pY=(E,a)=>hY(E,gY(a)),sO=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(oe){b(oe)}},ee=ae=>{try{re(y.throw(ae))}catch(oe){b(oe)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())}),yY=({subjectId:E,setActivated:a,onAddSuccess:y})=>{const x=(0,be.useSelector)(yn=>yn),{pathsDetail:{detail:b={}}}=x,[z]=xe.default.useForm(),[ee,re]=(0,Ne.useState)(""),[ae,oe]=(0,Ne.useState)(!1),[de,ge]=(0,Ne.useState)(!0),[ye,De]=(0,Ne.useState)(!1),[ke,ze]=(0,Ne.useState)([]),[We,Ve]=(0,Ne.useState)([]),[Ze,Ye]=(0,Ne.useState)(null),[et,st]=(0,Ne.useState)(),ht=(0,Ne.useRef)(),mt=(0,Ne.useRef)();let dt=(0,Ne.useRef)().current,Ot=(0,Ne.useRef)().current,_t=(0,Ne.useRef)(!1).current;const wt=b==null?void 0:b.edit_of_subject_knowledge;(0,Ne.useEffect)(()=>{E&&$t()},[E]);const $t=()=>sO(void 0,null,function*(){var yn,Cn,qn,pn,lr;ge(!0);const Jr=yield(0,te.ZP)("/api/knowledge/v2/get_node.json",{method:"get",params:{depth:-1,subject_id:E}});if(Jr.status===0){re((pn=(qn=(Cn=(yn=Jr==null?void 0:Jr.data)==null?void 0:yn.nodes)==null?void 0:Cn[0])==null?void 0:qn.properties)==null?void 0:pn.uuid);const na=((lr=Jr==null?void 0:Jr.data)==null?void 0:lr.relationships)||[];let Hr=[],Ar=[];na==null||na.forEach(Aa=>{["\u5173\u8054"].includes(Aa.type)?Hr.push(Aa):["\u5305\u542B"].includes(Aa.type)&&Ar.push(Aa)}),Hr=rO(Hr,["startNodeUuid","endNodeUuid"]);const Wr=pY(oO({},Jr==null?void 0:Jr.data),{relationships:Ar}),ya=uY(Wr);let Ra=cY((ya==null?void 0:ya.children)||[],Hr);console.log(Ra,3),Ra=rO(Ra,["firstStartNodeUuid","firstEndNodeUuid"]),ze((ya==null?void 0:ya.children)||[]),Ve(Ra),console.log(Ra,ya==null?void 0:ya.children,222)}ge(!1)});(0,Ne.useEffect)(()=>{We!=null&&We.length&&st(We.map(yn=>({from:yn.firstStartNodeUuid,to:yn.firstEndNodeUuid,animated:!1,dashed:!0,arrow:"both",offsetStart:{x:0,y:0},offsetEnd:{x:0,y:1},gradient:"gradient1"})))},[We]),(0,Ne.useEffect)(()=>{var yn;et!=null&&et.length&&((yn=et==null?void 0:et.map)==null||yn.call(et,Cn=>{Cn.animated=Cn.from===Ze||Cn.to===Ze,Cn.gradient=Cn.from===Ze||Cn.to===Ze?"gradient2":"gradient1"}),st([...et]))},[Ze]);function gn(yn){var Cn,qn;if(!_t)return;const pn=yn.pageY-dt;(qn=(Cn=ht.current)==null?void 0:Cn.scrollTo)==null||qn.call(Cn,0,Ot-pn)}function Xt(yn){var Cn;_t=!0,dt=yn.pageY,Ot=((Cn=ht.current)==null?void 0:Cn.scrollTop)||0}function Tn(yn){_t=!1}(0,Ne.useEffect)(()=>(document.addEventListener("mousedown",Xt),document.addEventListener("mousemove",gn),document.addEventListener("mouseup",Tn),()=>{document.removeEventListener("mouseup",Tn),document.removeEventListener("mousemove",gn),document.removeEventListener("mousedown",Xt)}),[]);const er=yn=>sO(void 0,null,function*(){const{nodeType:Cn,description:qn,name:pn,tags:lr}=yn;De(!0);const Jr=yield(0,te.ZP)("/api/knowledge/v2/add_node.json",{method:"POST",body:{label:"\u56FE\u8C31",subject_id:E,properties:{description:qn,rootNodeUuid:ee,name:pn,nodeType:Cn[0],tags:(lr==null?void 0:lr.join("\uFF0C"))||"",color:"1"},relationships:[{startNodeUuid:ee,type:"\u5305\u542B"}]}});(Jr==null?void 0:Jr.status)===0&&(oe(!1),$t(),y()),De(!1)}),En=()=>{const yn=[],Cn=ke==null?void 0:ke.map((pn,lr)=>{var Jr;let na;const Hr=lr+1,Ar=yn.length-3,Wr=yn[Ar];Hr%3===1&&(na={top:Wr!==void 0?`${parseFloat(Wr==null?void 0:Wr.top)+600}rem`:"100rem",left:"50%",marginLeft:"-146rem"}),Hr%3===2&&(na={top:Wr!==void 0?`${parseFloat(Wr==null?void 0:Wr.top)+600}rem`:"380rem",left:0}),Hr%3===0&&(na={top:Wr!==void 0?`${parseFloat(Wr==null?void 0:Wr.top)+600}rem`:"380rem",right:0}),yn.push(na);let ya=[],Ra=(Jr=pn==null?void 0:pn.children)==null?void 0:Jr.map(Aa=>{var co;return Aa!=null&&Aa.children&&((co=Aa==null?void 0:Aa.children)==null||co.forEach(So=>{ya.push(So.name)})),Aa.name});return Ra.length>5&&(Ra[0]="..."),ya.length>7&&(ya[0]="..."),Ne.createElement("div",{className:bh.listItem,key:lr,onMouseEnter:()=>Ye(pn==null?void 0:pn.uuid),onMouseLeave:()=>Ye(null),id:pn==null?void 0:pn.uuid,onClick:()=>a(pn==null?void 0:pn.uuid),style:oO({position:"absolute",zIndex:10},na)},Ne.createElement(rY,{childNode:Ra,knowledgeNode:ya,title:pn==null?void 0:pn.name}))}),qn=parseFloat(yn[yn.length-1].top)+352+80+"rem";return Ne.createElement("div",{ref:mt,style:{height:qn}},Cn)};return Ne.createElement(Qt,null,Ne.createElement("div",{className:bh.wrap},de&&Ne.createElement(ce.Z,{style:{width:"100%",marginTop:"300rem"},spinning:de}),!de&&Ne.createElement(Ne.Fragment,null,wt&&Ne.createElement("div",{className:bh.add,onClick:()=>oe(!0)},Ne.createElement("i",{className:"iconfont icon-tianjiatixing"})),ke!=null&&ke.length?Ne.createElement("div",{className:bh.dimensionalBall,ref:ht},Ne.createElement("div",{className:bh.archer,id:"parentContainer"},En(),Ne.createElement(dY,{data:et}))):Ne.createElement(mr,{text:"\u6682\u65E0\u56FE\u8C31\uFF0C\u7ACB\u5373\u65B0\u5EFA\u4E00\u4E2A\u56FE\u8C31\u5427\uFF5E",textColor:"#fff",buttonText:wt&&"\u65B0\u5EFA\u56FE\u8C31",onClick:()=>oe(!0)})),Ne.createElement(Me.default,{open:ae,centered:!0,width:"1000rem",okText:"\u4FDD\u5B58",onCancel:()=>oe(!1),cancelText:"\u53D6\u6D88",afterClose:()=>{z.resetFields()},confirmLoading:ye,onOk:()=>z.submit(),title:"\u65B0\u589E\u77E5\u8BC6\u56FE\u8C31"},Ne.createElement("div",{className:bh.modal},Ne.createElement("div",{className:bh.mHead},"\u8282\u70B9\u5C5E\u6027"),Ne.createElement(xe.default,{form:z,scrollToFirstError:!0,layout:"horizontal",colon:!1,size:"large",labelCol:{flex:"110rem"},onFinish:er,className:bh.form},Ne.createElement(xe.default.Item,{label:"\u56FE\u8C31\u540D\u79F0",name:"name",rules:[{required:!0,message:"\u8BF7\u8F93\u5165\u8282\u70B9\u540D\u79F0"},{type:"string",max:60,message:"\u8F93\u5165\u8D85\u9650\uFF0C\u8BF7\u7F29\u51CF\u5B57\u7B26\u6570"},{type:"string",whitespace:!0,message:"\u5185\u5BB9\u4E0D\u80FD\u5168\u4E3A\u7A7A\u683C"}]},Ne.createElement(Se.default,{maxLength:60,showCount:!0,placeholder:"\u8BF7\u8F93\u5165"})),Ne.createElement(xe.default.Item,{label:"\u7B80\u4ECB",name:"description",rules:[{type:"string",max:5e3,message:"\u8F93\u5165\u8D85\u9650\uFF0C\u8BF7\u7F29\u51CF\u5B57\u7B26\u6570"},{type:"string",whitespace:!0,message:"\u5185\u5BB9\u4E0D\u80FD\u5168\u4E3A\u7A7A\u683C"}]},Ne.createElement(Se.default.TextArea,{maxLength:5e3,showCount:!0,placeholder:"\u8BF7\u8F93\u5165"})),Ne.createElement(xe.default.Item,{className:bh.mType,label:Ne.createElement("span",null,"\u56FE\u8C31\u7C7B\u578B ",Ne.createElement(on.Z,{title:"\u5F53\u524D\u77E5\u8BC6\u56FE\u8C31\u7684\u7C7B\u578B\uFF0C\u5982\uFF1A\u5927\u7EB2\u56FE\u8C31\u3001\u80FD\u529B\u56FE\u8C31"},Ne.createElement(Vr.Z,null))),name:"nodeType",rules:[{required:!0,message:"\u8BF7\u9009\u62E9\u8282\u70B9\u7C7B\u578B"}]},Ne.createElement(EC,{subjectId:E,type:1})))))))},nu={statistics:"statistics___BP4qi",noUnfold:"noUnfold___EpqXR",wrapBox:"wrapBox___TsFlb",scrollBox:"scrollBox___Oh4zJ",content:"content___NRQFH",title:"title___z20Sn",box:"box___k6Eep",left:"left___Gnxfc",right:"right___rNC9V",head:"head___mT3Wl",radio:"radio___sjK3F",active:"active___oX7gd",average:"average___KVA2l",li:"li____NnY1",yellow:"yellow___CCujs",blue:"blue___m_425",lineTitle:"lineTitle___qo6vf",echartsTwo:"echartsTwo___aC24D",echartsThree:"echartsThree___Z2Q2A",unfold:"unfold___VUl4t",select:"select___dM1mS"},EY="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEQAAABCCAYAAADuSnCvAAAAAXNSR0IArs4c6QAAGBVJREFUeF7VW2l0Vdd13vucc+99TxODkACBABs8IcCADXbi2E5qJ24cd0hSD7XbONOK0wxOsGmbrtWuyF3JajO5SbzSDF14pYkb2+AR23EdJ3E8MQozDwbhCA1PSEKg6U33nnN2u899Dx4ggQATk/tD7613p3O+8+29v733EcIf49FIifpx+le5kASg6PAQX7dSrN7fB5uhEcMzmRKeyc3v2L2N5E+uyDWjEPU8BkQEo41FIbaiVE8YEg91LcG3Tmd8fxyANL6kxsL8iiAIx1MUVUoIlE0kn0Yhp5A1hXkjCClBCgF5TX0W5C8MRt/sW5rcdyrAnLOA1H59aCIONr/XG2i5Tgx2LoRsXx3qfDlYHYCfpPyCu3zyywSQPW6+iAKkUmCs7YzI+7feIfEDaMTjLxwGqXMOkJrG9vl+98a7ZPe2vxA6M9mNmSxQceL8GVRBePnfgRUBnxyRACgkCCHBWnpCS/2FA0vKO0/GlnMGkImNg7XqwGtfwbY1d3nCllmjAWiYyTIgZdUQXvZZsKhOCEhx8srzwRraBtK/pXMJ7jwRKOcEIBP/uflP/OZnfqjyhy4kEwENB0RxFmSAKiZBfuFdJ1vso85L5YEx0GqF/5c99+LGkW5+xwGp+/umT6vmZ78nbFR2xEGeYK4MSOUUxxCy+pRBIUu7AYIPdC7FYZ3tOwrIxHtXf9Fvfu67EqwgOyqfB2A10NgZEC74FIwKwGMgY6ZEBlf1pL33QyNmjkX0HQNk8j9t/Uiwa8UjZCJvWF8x0tpbDbb6QtCX3gnWRKfEkFKfYizev/9e795zApBJjZ2zvS0PviJNunrUzCiO3EZAE+dB1HDbaQPCYRkAtRXq2u57vVWloJx1htQ0UoWoiL4GCI903euv4ZfX37nsRdnfcj070FM+TAhmymIwF3/4tAHhd7LpEOHLnYPe9dCIh53RWQdk4nf1rT7QI1qbPEj1U+ze9Za/9affIBAAbqVO8TAh2OnXgJ71wTMCBABBSvZe6sb9S9TzxVGcXUBuJjn5ivAVFPBuY4wbAOgcyNR6EK2rAHKHAKTP9B09KiYP+vz3gz3vujMEJGaJNvB8d9q/qahkT2Ekox9z8crJ3w4vI7CrgaxXVJpsv6wgIRwC1b4aRMda933UwJg8mJk3gJnxvjMGhMdiCLNWJBb2LsVdPO6zCsik7+T/VQr8Fx0Nk5GjcLIaswdBtr0OovMNxx6Q3omHxT7kwpvA1F91xoAwAKxiCeQ/ppbIb551QCZ8I/OaRXkVm8twB68GIYIQAjDdDar1NRBdWwBMOLJ/MSHohlvB1F0G1hi3oogAvijK/JFzm+HGwGZjLTy/f6n/IQAk97yp9/ePu7K+agFK7cHJxJ/i/CE+yBiUIIHQOKYRHmGcQCjrH9JfCy2NA7DINQuW5Eh8VeF7iVMlkAgCUfW3Ee7fAKBjVh2l4hEIyICZ+i6AMdOdUuWfshGKN3thDJPOTeiohC8GiN8/7KIIxYljRz6dnNPXiH0INy+Xj953888vnwzXWwNHLWVRO3IssNaB5x5MQOjmFqdWgqdIRAIIhCVC6z5BWAuhtXwFCr7f8jWIaA0VAUIefnGwLocRjAxIh0VhselISkuGx2FZvxtAFEwwUGjh/jUm/8JbUJX0eFXIMYwfwI+IoaARQOGzQlsvsahnCW5CaEyVvfKJyS9U+DBVGxhZGPBkisxgbsX8QmuJycpLLt13QqGtlQQOBJ6YMAwa8TleQUQCdw8TpbBsJatH8W/HJ3jEiwI84UtqFYMLO7siymmApAe4crftWfaGmVAZAIoiG5CxK/UMw4MipAeGxJ92L/VewAnf6Kl89JYJz45PwDRjRzYYYqqXAsIMYUCI3CSttdISuokbBscBBI41DAgDE7MI0YJlEVICSMERFBbyaFNhfsRUMQRwRb0PtRXxjDsHNKxvi6jcR3h8Z9S7rCmqHpMUyD7JkYojWkxr4KHwc4azHPYjCPLjHfeo/8bxX+2tWvHx8c+MHpASkykBxFiSzIBRA+IGa53JHB5lgR1F51Gw/nhyRG61r5rh4bhkTNYDaQur94UxIDvC3mXr89VVSeHM0T2T31GgIT86fvzxLOFIAyDv7Vgi78dx/35wzGO3jlv5zgBSYF1x2UoBKdCkNGYwIOOSCA210vmvbfsj6s8BlHmEj++IDvxkTbp6bJlEwa6VHXYREPe9yBJ7nC9hhgCqu1NL5AOHGVKbhBkWTmQyRyIIk5GdJzOw4LNiZlgQFmMz0ew/LEnjTCs2JbLODzkf4uylJCoV/d5wkaA00rDvKDpJ54M55CrAB5uy3Q81DdaMLVfo9A2DzALQgRIDUhzusWbjQq+Qd+7/svqZ8yHfuWHsCmPtJGtgxKIEA1AInY6FNuYg+wt2kML5EAPSALBzlcaSMtYqAyRZ+bA/sYD86QBBFIcjFbJjcSuIGCtaB1YcpkvjRAGZIihuIDxvRPzVntz+zW2ZiclAoZSxGnaKGPkzBqVoNsMBYlBc17XE+y1Ovb8ted/7Ji/v6NdjIkOWB1dcJabokbAV/8pAMCGNAQFIUvMnOAAYCBVZUmTJc2AQeNqCMoYUFR0tkXSMsYjE3GagXeSJDw7ppQK6qCnc+ZIwenhciBx58K1e3bmhZWBSeUJhEQyUqgSY2J9w1D4aEJY/IpReYlH7l3ELQiP5P/8IrejL2SpjKY5SxcEV+FLUT7x4vGjWwU1oLLHecAwwZJXWVhGg0kZ7hoQyxnqWUEXGOIB4mawFvsaZD/PCOf7YC8aAoDPFYY7jf+Tr+M6EJ3BLezbV9Pu+yUHgIfdmYjCU+2SWuMgzDCDuGqQWPZiY29OIQwifIe8Xd9Njg3ksd478mNEUFWa8eizAwKk3ZorRRlg2CQB+q2eJVKRJWSLPWvKYLUZbn4iYLUoTMwkdMOAA4ajE7HBiyoHCgMRoDKcsjwYljhkAvgTc3J5NrW0+NDnw2alKTmWB9YUzm0I7YjhA4pALT3TcE3w0futnyHv4bnpsKA/lNp7rUQc6McxKFSjUhnwBXmUA5ZUBJgNhA/aTvTmb7x6ifC7i1abAgjMTz5AzHc+w2VhSbFIWhCTLvsY52BJvFxM5FmxUMKEiKHHINSUeTsV3usOXiG+0plPr9vRODgI2GWYG+w7+9BwgzoyGYYhrUaD8bOeX5Y9HBQiPMG/BVHo2Obsa62dOwEnVSSw/FriuIZvZ0GG6NnfZfkMoAch3LDHkmGOcXyHF5qUJpWVfyFUiZJkfT60gSuJMpIQp7ETLPYCpVWypcWRp6bOQNzEonkTc1JrpWLunp45NBgSzIwaEvx/2JccCEgu3/lAk5x68F9tOCohxqYDFi6tx6uI6nFnuY8COd9/BqL8nrTOZECN2rPVjVeWsCd5Ylsx7e83gC81RqmsIjJLga0ueNuTFZsPmhCzglLUojmNJHFpi02H6IIAFwsGcgfdMk/CpRWUOuL6shft+k6aIOJsTpBTi5rZ0au3uUwPE9Wos/E/X0uBvigs8oskYC7a2zI67drqcPaEcKrUlu3ZfrmNDe5g6lLU51zUQHG04RzGqrkpW3nBxZf2sCV5VOiS9cmeuc1s3pgMFDKIiaz3tgABmB+c6hVBcMB0nEmLvWvQUhhDCyMC7pwn8yJwEViVihfrsjiw9vi1PlUnfUcQB0ppOnQpDYm0iIgBx1f+n/utPCkheG3vReJr6/plqzu4efeDlvZmWrkEa8JVE6SEqodgDoxNjRst0GEmrrbp6ZrLuhovLJ/OkntuZ61rdZgaEFD4yU5xGscpYZgmLNvZ4gMTJoMvI4oBD1qLmiGYtfnSOj9fNCjAyBC/uGqSaCg9Wbs9SV1ZC4HEkEaAk4Jb2TGrN7gN17ENGYzIFdjzctdS/o2QNRnaqmlUW6YQk63cPhlkhJAW+AiUVSVbOhXDJtNeWhAm1yoahGsxEsmGiqr5lQdW0hCfE6/uiQ8/vzh8ikArBhWHpTMfpFmaLEIXsl30pFxIETx7J4p0Lk2JRvYddgxp+8HKv3bE/DwlfQTLhQ+D7zk+wB2anuqk90zlqQIRgch/SEhf33JNoLvWHI5oMr06oLWquSrmtF8p6kofsShVOdvNfZomT6sbIMLIyl8/5A9lQ1I+RY26/bEz9+DLhb+/S6Se353sHQkCOUoaBIFIs0BxATsXGsj4fWlHhE37y8qScPdHDvQdC+o+XDtqDOYLyhOciNherlYy1RRx2ETe2ZTrX7hkdQ5gdIanP9y6V/3lcVD1R2LWWs9GCKmDnJV19gWsg4ClXJkPOWYyxypLAyBipDckwCr2BTE5Werb8tgVjp54/wSs7kLbR09tzB3cdpFA43UIeRxwGxRjiyIO5yOB5Y4X62MKkVzdG4rZUjh549aDJGgFlgc81WJfaC+k03eF0XqJjyP41e3rrEicxGaEC3lDzUO8/+B8rNZWT+pBhpOJRP61upyn7+mjswkm4/4IJ2Oe0BVkuCgkGJZvP+/kwlFEYJT40p2LSVeeVj+UHbEzpzOst+XRqEEzIStcSm5KsLVdq8RTpXzMz8KRA+N2etHmoqU8blJj0fOQNMKwtXGg8LE+cpOOFwk3t2e6TmYzyAtCWfhPq4KOHvoL9w83xpMLs2Js4++jJQuI7q/Q1nIxNqYD+LyyWTVwyZMb0ZW3ikR10cX/O+tdPs+1Ty3OZgUzea6j1x94wu6JmyhhXfIDetDUHc1wKJBybEKKmwjlYOJjW9MTmgeiVtzIm4XvgFcCI/W0xuT5KsbIPgY1tmQNrdvdOGcmpqqCM1eVvh0Ti5oF78OBIC35SQIryuPgAXyK1D1Dy++v01Vwqq0niwBcWyfUWAT200NRJNY/uoLlcGG2otj1/fqFtGUyHQSanJaL150yUYy6fVlFZP04GSc8lGJSNLLX3RWZDa1qvbclFA3nAsjIffClRKC4XssdyLsYNg9MLRj/WKkS+QNzYke19bdeBqceZjPRBJSq4/PhkaIJPjMSMUZmMkmjzESlPgnbVMHCqkDqGIPn9NdFhQD5/hVzHOSTL0KZOmrBip7mUBzy3Frs/fBHszeSiIIyMyoZaZcJIkjEqochL+kpZY+VgaCGbJ4wsiERCoZIeCimE4FDMuUOh8sdlzGLVq6BsXUbvSwFNrem+13cfqi8FRAQVnNhl0Qu+3jXY/C1obAhdb+CI1DmOKCMyhMH45R49840U1M0cj723NIidnJkOC8giuZbjmIdI61O29rEiIBOw668aoDkTks/ZbaS10saqvLZSR5GKuMZqXEGa/aIQ7AxAChRxqYsPy1PiyjUSJ1poCn6+YDyuQBF4itbtS/e/uqt3hgPES4L0AhAy+J1V6qs9S5OvQONLCrb3EKy4mR85YvNmWED4ZaEF/NYqc3U2ogRvA136LvXa+DLMcZhJMUNKTObzi+RazrgDiXZth61dvsPMjxki9t/SALtzGjzWHOCKzEYYa2UuYhlvlTWF+gi5HicnK8WitGttsNLoyaPqGBD+5AobVScsq5RCqY67PESBQFjXls282jw0I5AE5JevEcJflovkyqGhdBoqeNCpCA69Zc8AEMRvrzLvyWmblIj6S1fK16tPAEicZAE1dULN8u16AbN93kTReVsDvZkNgckjerMi8eu9pl5JoGunU1dSAnGFnnWJRMCcJuVxOlAoR/J0DSIu36Vqe7PgVfmob78k6mG2uDIFSzmBFAgSa1vzqVeaM9uU570oyGxA8gbABwojPz8A6dxZA4TZ03GMU/3iFWoN27evwK5PUe3y7aYEENyZi4znKaRnd+P0V9vsdJ7MTRdAy6JJcDDU5HE0Xd8B1as6sHZCGYQ3nm/2B5wvs1AzIB7arqaExiophPnri8P9ZQrjMkWsy8AXEGxM6Ydf3NT+Q1leEQD4YCVmPS2yIfq5Pzwgi+Ua7g4pQbYpRTWPbjcLY4Zg6tYGsSPS4PnK0lM77flrUzCN88IbZsqWd9WZ7rwFxUx4aKuY2TFEVZzQ3XaJaZlaCTl25FlN8ufb5LTQsj8H87EG05rkNCpunbpqUiAxaGoPV7y4ufNnJAMp/ET4zgJyhQMEPGSG2NpSQG5rENtDA8oXlp7ZDeevardc3YcbZ8q9V06x3XkDLIDhZ1vgwo4hGsM1z9tm2+b6KsiyCs4bFD/dDDPzBj0lUN85175Vpkq2LyNSQkKwti164lebOh46RwBRa5jgvsRjABEdt88R2/OGVCCsffpNO2tVu2t3wI2zRPNV9dDpAAGABzfTJalBGstVsdvn4q4ZlTbLOU7OoFi2CS/KGfI9idEn59k9SXWkssdyxFcQrG+LnvrlGx0PnzOAsG4KBJi1Kap9dJu+zJlMLXbcPk9ujQx4PpJ98k07c3W7PZ8B+eBM3PPeGbIjG1nFruDBTdDQMUTjGJA75+H26WMgrQFFPrTyJ29AQ9aA7wmIPr0AdpZzK9YV6mPp7jNDWvLPPNeUWk6eL955k2EfIjEGpN3WPrrDOEDm1mLHHfPEVjaZQKJ5cqe5oAjIhy6Qb14zDTtihlhatonmtg3QeAbk4/Nwy4xxOORyIgPixxtoXk5DwIB89nK5pUzxv0AcaTUHEhOv78s989y6lsfJKz97gHxrlb46r2MdsuRK9RqH3TjKQPJ7a6NrpACoLsPBLy2Wq9nbJxQyQyY+sk0vZIk1twZTd1wqtkQaZKDQPL7TXLSm3Z7nGDJLvvne6dgW8tYzBPrxG2Z+apDGc2Hok/PlpvPG4aDWVuQtiAfW2YWhgUAJjD53GWysSCAr58JB4EkRrPp95pfPrmt94qwA4iIagn1wo1mwq5cmTqrA/rsXyXWyEOayGuQD6/QVB7JQMX+SaP/beWIbN6wUArUOQOWPNphFWQ3qzy4Quz4wU7RkI1IMyKo2W7dip5nLHa5PXCo2XlyDByMLUgmwT+3UF6zqgOkVCsLPLRYbxgYitNw3+/9tnMs20ZyWPhpfX4X9n5oPW4Vr5xzZ95HwZPDq3vTzK9e1PnXWAOFKXl6D7ByyFTVlMlPhU+TalzFYNBCCfzALyckVMOjHxfBYGiBQdwbKchrU1EocLO51KTSkqGOQKvmaSeWQdk00y3V3BK2NaB+EiqqECCckuWTh2nlce6dsCKorQ2U1ZZSr8MThcbh2bdyXSbzy+/T/rlzT+vRZA6SQPAFv5eR+bBGMIlGVa8ATcUvz2MSAJywEkjbEeQmU9gP5PgZHs+AoaUy5Jg1fyo10E+89OdILJ2D2sWbn80VbKZ4PJCRe3pt54emmlmdIlOPb7lRHqhWc7u/FZlcpMAyK27YQb9eK0/rCDN0WLjYJV7E7+eZe38Pg5eahF59uan17AFl+Nz3Rn4fkcJ270wXhVO7jCpkDplCeLL33qM5qYUNQfPGRnXUJHxOv7c38+vHVLSvZZKQM8sYXOZbuUcLL9ucz+dHnMjeT/NFX4L8qPJqtCdzWv9L3uhLy23AM1zMuPpaVKm+Xciwh3o94pJRb+uriNfwb31M8Egr8xzYNPPLC5v0vgR8IwYCAyHmeyEbCy50aIAAw6/s0df5kWMytRVLcATAKwEjUbgeyArDxdilutx27yeVtAOtMHsGmF1rKrW8d2prL6BClMpJEqAOR00ZkPfByfZANR8+Q40eD8MU9/rgp1Ykwp5NeNBRYJN8LjWsbEOiTG/WZzPA07yWZkCA9EiC19mUotcpH6OW8RJQ/1JUOId2loe5ZA41fdZsYRnrN0XsOGhsFwJ3+eKryI/R8X4WBJu1bIz1fRpLCAiDSe1vM6DTnPuxtXERBn2wESiNY7WmZzwdBPpD58EB2KAJo0QAv21MHpPcOD6ZVqrHpwNOQ9wOlPAOhIs3/JQxIZoQtwW/n7E7jWa6FDrwvyVrusedFEKpQR33l+QhaBzVUt5vTAyR1k4TyiapmTCDDwPdsXkjrCZmErIAQkLxzExDGEJFsFqwVUdJIMNqDSPdwjpjqNUfKh+7KUZoMK4HG30mAWgH9VRLqPDF+yJP8T/Xcgy0uHPnnFigYxsEZAyLMu+2O9mBFZCCdNQAZC9BtS9jhgtnofIgD5D4EuFY4UHp9hGqF0K8QxkiE8oJgOA1K/0FuSRcUXr8h0DkL+X4LdYN0BIwTs8OdPXqghf1dDMr22QgNNfH5VCVCXXK4TV9/kHme0ktS2Xj1GQhuOzTsoNiRHp7uCQPCsZMs9MMKQ3BsKRwM0B/DwQAUj8NAjA6MYRhy0hmfy6C8LVLg/wD5mj8kI0DCbQAAAABJRU5ErkJggg==",AY="data:image/png;base64,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",xY="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAAsCAYAAAA5KtvpAAAAAXNSR0IArs4c6QAABFJJREFUaEPtml9MW1Ucxz+nlxbaUkYvYjdENG7RiEg6jNGQ+aIx08SE6IvZxGS+qGGPPjnj2+J8MIuJMVk00Zgg0zc1Rpm+Gf+M+GdkZKhT4gyMjnWllJWWtrf3mNPLHJcWaBmlXcMvaV96fufez/n+fuf8zjkV/a8ZBzB5R4JO7VpICHlo8A3nt6L/VWNSIttrl9UiEzAyeMz5sOg/khmTkq7aBxbfDB6r2y8OHZFBjzf7rt5Mb61ChyOcWkxrhz86KiaEggxF5Aum5INaBRaCJ9taxPBSaG8D15zQVaVwnQaao/QxlhLSxnU/1Y+RLdxP1QA7BAT8IHIzSekWjUMyBS1NUO+EuTgkUvn9lB84mwVNK4pA921c4bkFS1V/IzS4QA3AYroCwM2nBpnf14fp9RUFvRmNVLSYskIh3XryOMJIc+WZw1sKvdrAlT2kFbAzPEVGDxB5eqDi0EUDzyetSWC1UFk+oq74LPqFURrD/9AUOo8jm8n9nNwR4M/HBzDc5Q1vhwO8LvC5N5jDV5MQXVg/u1wLUe789TP8F88hpFnQIdkUYPyxATJlhlYPb/WBu97+GkUpHJ6HZIEZb3lX/qkx9vw0hJYpsBasQE807+LsE6+AkqKM1tgAeuMGgC/HYNGKyoKmFL37uw9XVXW5k3Ro/NX7PLMd3WVEtbr21kPLiuwpSuG1gLVUguCXb+JMxdcF2ErYsgHfNfIpt06M5GANl4doWyfzgT25HM3U+9h9eghP7BKbBauKi08+t9eNDg0O9uUXN5uusGdumu6v3iLT4ONCTx+RjmBeXt7/9XE8sdCmhbECPjG4rHAG6jTBy/1bANx+dhjPXIiJh54lW+8pGNJdw28z3floSTkbnoVozF4qteoC/w4wDDjxcYWAO377gsngU8g1ZltP9CIJ/23r5vfyBj/8YnLmnH1Z631Ao6dL5OrlyihsmjiyBqbTVRKMamxm4cy4XUG1LQzeZ22V1gSupMIlky45pDPw3pA9LJ11gpees/KwOhVeh/bvfyVTIbuKu+8Q3L5LcEPA1arw9z+bjI7b83DfgxrBzhsErlgOAwsJu8xqH+peKtjLBlwphVNpeP+kPQ9dTsGLB608LBtwpRTeBga2Fa6lSaumQ3r2KsRX7OtvBuAmNzR7N3AAkMnCzJz9PKvagVWpurM5/5y7qAMANUZZE1KZ69DqfH30D3slpfYQe++16uHJS3A5Yv+9PSAI3GL1Nfr7Cl8Bezst36kZmLlS2Nc08+vw3HOXfJW/ur1wu0DVBSutaOCN1s3V5rcNvNaFuAoVV121aZb/PmpzsspNiwr34i/Er93MVTtyYhHU5VohKwnY2wDqU82m7orjydXP0UsCrmbQYt8tD3g6IvdLSe5PH7VomoPunboYyy1f6ktK2TAdYRS4p+aABT+26TwihMidTPy/TM/EZcBY5HUEPUJyE8zL60gjSEk47RYc1XURu9b6P7vslVpOgNBqAAAAAElFTkSuQmCC",SY="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAALQAAACYCAYAAABNo8N/AAAAAXNSR0IArs4c6QAAIABJREFUeF7svQmQJcd5Hvj/mVnXu/uamZ4bg8E1wwMQIUqkKJKwSFGiRGklLWFRorSWw0HL2tB6FVJI1kZseLixDu/acmht7VIrru31+gjboC9ZIkiKpAcWZZqkAJGAMINjAMzVMz3T9zvryGv5Z73qfv36TV+DATgRnTHAX68rMysr66u//vyvRLhLi7UWAdCNHhGstYBE6XdxTHQ75zdOAXVDTV13ecf9Tvv90zXpOtu6/nD/W403v+7a9TeOrzj3xt3/6mR8h+Mln5G7sDhAf5Jg9e2p/ptnAD55JqfbKUVdot+Gziepiz513f3NM/DJT55xNC9nvo2wM9++FlH3u39MdOtS9EV0dP9DfQyNb8P9bXV+qyHt4v4LZrFV12/2+W09kDd7kKOuT4D+zGceZ3Tuox89bT/zmXNI9PUYa9EX0VH9bXW94fbD9T/zmVP40Y+et0Tz8efHRLcz/q36304fm9UZ7v/8+dP2zJkz5nb7fSPa38WAPsMAckDsvHyGYAQARNfKU0/N9/t7PwA89e3/iFIpjolS2er88Ii2qj98frj95td///tPbetFWOt19P2vnS/mhiiV8xZxD9A7x9kOWli7BuinnjqP9FCJjoIb0AOnc/0Hv6H++wE+/enr+J73HHTtz50DOH06p6PKaarz7deBqCtDfxhuP1y/aFt0f+LEtH3ttVkkSt0Vx0RHXX+wfrs969rc7v0/9RT10X99+8f0t7xvMHuA3gE4d1OVAP3MM9c5tX3HOw7aZ565jkRH9VWcIzqqfvH3dvug6+/w4XE7M7OEROl3cUx01PndjH+wzU77H6wfx4v2h394Qt/u/RdzeIv53AP07T7krdo7Dt0HNLwDAJ4hZPdbFcdER5UR9c9Hy3iq9GEnk8NxALjUp3R4CeD48ZyOOL2h/mrbfv3h/jac3+pmh8azrr1qWzj5vLnd+1+dQ4foofmEg3qPQ2/1kG7zPAH6/PlzYlQ3p06N2fPnl5EonS+Oieb1NwoBc3On2QMPTOeA3rIcBIDrAECUSnFMlMr689PTsZ2djZAonZ2dXcbp6TFLlH5Pw0GYheuOuvP9Y6LufL8u0eH2ly69aOv1GT045N3c/9qcbLz5c+dAP/74Z9ZdY8spepMq7HJR9SaNduCy1j7BAc47EeGVVxbx5MkJS5R+F8dER470/DmAU6cBiFI5dRouPXWJHX//x1x/8/NNnJqqW6L0e8okdp6FSNTV378f4ObNnI6q329LfWxrpm5SnwBAlPpjTZwydUvUXX+T/mZnL9lu93l9u/fv5oLmZNR8fvOGwj1Ab+tR7rqSA/QrX3Ec+hUCcZ+O6rA4R3RUofbhvGDd8be4/iYAYLFP6XdxTHQ754evsdP+httvdn2dLpl26Yq63fsfbL9hvk5+v0J8fI9D7xqt22hIgL506UlvG1W3VSUIjrM4nPZgeVvV72ilRqNsV1a6SJQuVBwTXXfhMQA5t2KC4AV5Jwd06dJx9dhjZ9SdvMbr1ffdLXL0AT0jxvCwWrZEaWKKY6L5RG22qspr3GxN8qB2euQL0mI+1kxmiVLd4pjo6/UgNu+nQbAGAKIO4v3jFWikRs+Un1e3e/+bXv/4cYW4B+g7+qzPnj0jTp5sbotDHybVGwG9P6LimKh7AWjh2Krzw7VTPrSA/kENcpqX4b8UZ4mu1c1/bSybt96q91Hj6V+jBpBly9r3X8w2m+zt3P+m83O4LvcAfUfhDGDPnhGzD1z3t3WZISXE9P6ynb3ZRaLU3h0ffTtrL1aCTtfDSjm0nW7iKJ3vsAQrJrRER16vDQBVACAKAFu1L/oiOrL/7fZXT1DKFe1530o3nYft3H9/Tqif4fmBPUBvC2a3VcnaM+Lmc68G1ImZiiybj5GoeyBO9ZXT7Zal7rTwyg+4F6TAJlEqQ/ja0OVW9bGboC2Hlig1Lo6Jbmd8HXpJ6MXqVy76Yz3FZLqg+NiLye3e/6bjmD6Y7XHo7Typ26jjAH0zB/SazitXo62q1Ei15rRs++HmzZuO5qfzY6JF8+7MQVE+fDrvbxhBBZqIujL0h04HoFIBIDri9Mb++nWpzagLbnn9vBX2BEp/SQlxKcl1fru//8Hmq8f96ZmRUfboo5++owvP24DCuqZ37aLw6ac/4R2NhAPg1ETbzi9WkSj9Lo6JbneiYn3Ei6oH+i/IcKsyAHQBgCiV4pgoQKkU2F4vRaL0u9cTWCopS3R0/fwc1Rldf5vXLwOo5WU1Xf+T+Hbvf7N5mopVinuA3i6UdlfPPv0Jb/5oH9AEYgJ2v6uFpQQnx0NLlP5UHBOl3y8tJVjohun3+Hho4/iIV8J9EUS+LREoCaj9/opjoiNLnCG1A6LULvJtL86QqANsv6+i/XD/w31uVX/tvEClYnmAPx0X90R9rayk2GjkL9eo+y/miuioQvM4OJ8wpVLEPQ69O6RusxUBeuGYCl31YcvDJn3Qwx51Oqqf9iIxFQHk/yCGnI4qxTmiIzsbaj9c//XqfxyAAN26+FS8ag0aGM8gqLc5rXm1IUvQ3Fw7PX36M5tqUnbU/x2svO1P8h0cw666tvYT3tIrwS0gt0R8FwCIUimOx2GlmSLjxEkL3S5ArSJNBqeD+vgDAUCGScIxDLUlSq2LY6L0e/j8GvpzhIehb5MkQ6Kj6m/d3/CU3OqNGINANuWNha/0GC8NPMtcT12rzPed8tfuP+95/fyMNwK7tJIiUXd2pYzjja4l6mYvu5HgHqB3hdNtN7L297ylV54fCejxcYClJRIl+o+vf0x/c4CeKOGgnYK1Uxy/5yGh2odKYQSQECgJuMVohvDk6sQAREeV4fZFX/nnZOv+N/Q5zNEHxqNUJjuLX18nDTUaJHYAHD+qHaCLuSA69H67n7iSom0Elij9Lo6JOkDfmEjw9Jk9Dr1tdO6i4rlzZ/zp8PqthIJb9oishMjCdV+mZrMJ4/tOeMqeLMTmXYzojW+SphI90ZSdpT/r1uv1DQMwaul1CZsaO3EwRtwD9B19wvbcGX+ldGkkABt13640MyRKgyiOiSKLsNNj69xErUlsUHrAt3xfGQJvg244CDxL4CFK/RXHRLd3k1vy6HXdbP96Ej2Vyu7KNzqDL2m14tt2J8ND+6Xzvxi8/+2Nd32txvHjvT1A72bmdtBmPaBv7euQd7l2vtNDVq+H2GoD1PqWk1a7BWOTb/OXklI519vR/8n4VmjxiuPcIBdAACmkjjqA94+J5mXz9htvkyGAsQBEqdCLQy9L8XKtv/5q+wCgIky2dPPF7pqBnM7mxvZyONv3kFs/P4VIQtQBfmUFGo2Go8PzRb8XlI7vu+93NrdG7uDZ3cmq2+Qwd3IIu+vb2jN+88rNQjG87U6IO3NRG+LQmfVLJwOLY+W74qkVr03gg1BpFree7mDfcWpwIlQ2p4lbb3tyblGxnoke7gH6dqdx8/YE6NbMVWdqqxnftliGREe1Ks4RRd5gyKrrAF0xYJZ61ciLjpQ6mUJisJ4VVqJyL3xxTJR+0983O0+rJ7KhF6soRIXWCkt0ZH+ZQs8XVtK1RzD4W1/fMM576T59pdVhwCp2/f23ll7Vtcra3ND9j5qf4fkbnC83v0mpuwfoO4tnuHDhl4OToXAcugUtqEHN0a3KKECTBTDTLEjxnr4tehiSBTwLX6jh8+uv6oMPGWRAlEpxTHRU2W39AEPkLEm5fbFdgTJ0nAVzrTSXX9PVysY1wcYxrPceHPbvW1JHevfcc2ZV6bPVHL+Z5+9ekePCLwftyKx6V6ybxHYboFoFIEqlOK5WAXmNxUnAnRW7//xLJc/Kbj1MogOj+xt+QlkG4Pvku5mfKY6Jjio7rb9dRPgAXKdZyV5q9XBggdrtApTLoK68pCplzw7ev+t62Ntq2Ltq6PpVOdXFPUBv96nsrp4lQJvULeuqZc+2uxKJuufVPyaaA3rtIcZJxFnW4KUJaQtA93oAIjoSpGKicLBbNyjfEzaTComOxGv/HNXZzd0M95+BQh+EJer6I7cg8vwecg+SkiGDOK3jq03EDEulvqm9lx/fmLmsyw7QAyAeBegtBl31D3b2AL2bJ7uDNtb+ctCezQG9k8L4JEfm8d6A2bpkpG3DdIh8elv9eeCBBAlEc7zlx0TfyEKyPGNxWvcuNHuxt+FlUukV6QB9m6U6fbCDuCdy3OY0bt784sW/FE6GJEuQu+eQ++Zw08K1s1IB5BM8bUYiGpPW+WuQZSyUtrO8P5SlyVsFnazvUUoAzwMgSqU4JjqKoxbctYivGea4w+eHx3+L66HPkDGdeq0XmqWJCCBe71yi00UJNrWrrq2Fu+o23VOLYawo0Tly5Ldv5blyR5/zTjvf1Sdypxe5E/XtxTNhR98YDUDiSiRuFNypOO5KTFRNlKcmWLwsEcKce41baefsVIh8wvW3Fd6UVCg8YYm6F8ITFqVCovS7OOa9ywFPb0YmmEq0dyC1Xh6AUJwnSr+LvoiOuv5w/dX5RIaBr5JIv9SMkwEOTfeVSPQrK6kD9MD9u7ZD8zPs7r0B70p0cA/QdwLGa306QEd9QO+A4yTZfsF55NIVhGHujwwgbUfvC9vJeINEBwESyMRWZLEpjrcb9oy6xWuz/+RRzBbzZHkUVWOFBL+2qP2phRiPL6bjb18Rtpybprfg0DSOUeOJAbHsZ7HXudKMxgacT/qGSSPmM0uA3mHZEM8go/YeoHc4iTutfvWrvxKNHWjfQkQYdshf6515FZFKAvSa+1GcAHhBFMTeofq2om43DHY9IivXf/u7MVk4DHArVwoG1qJBr76og8lFLY4s2ql3LmYmukXui9Eyi8IEfakSL3htBdNBGTq/Nw+bKdhRkenrAxS2mvvWEmsffPTTt3QH36r9G3n+rhU5rl79lWhMpRs9cmj2Sp6FnkRHhwrjFZEthH6wPzJJkmtBkgRA+PUgMfuKPAGbPwPBLSiNQJRKcaw0YvfVUuPm//eDO32IBH3DoiaIyQVVPrZgKqeW0ujYaN1v/3qYGAbQSspwY8W9n0XpixweX0pGArqYG6LbKOVAtfDgHqC3MVW7r2Kv/krUDW4B6GEGNMCwUznmcRkKCMNV/9DAKrssa5HxDuQvyE4XcQNCdzj3z+/3ey+e2v2drbW0POxab2JB84NLduKBhYQ9mGvOV8enETFOSqXry5gW4V79NzQMwUuuJZY49OYRZBuHOlS/rPYA/Xo8z037IED3dPcWHPXWQVSpHvNKoiGSAY4WWGFX2rxkvCP1XG+xU6l5TcqtX/v77+JycR8AWdcLkaM4Lizu9PfB89ubLstEalhjyUbTC0nw4Lysnu54ECdjwdWlFAcA3Ren1MpcGgXWbAwCG77e5kFnJR+aexx6e89o17Ws/ZWod1XSUgjACAtMoaNUimOiQ4WpuoflSZ6kEsNVV9EElpOJKING3p/bDmhoW6DVvwEIwa1SGok6+KsYBHigZAzjM7/1YW2sl4M5B/BWcCZnVmMA1ju1bj01hlVX9PjDz/DqsQuAfPV+invrtl7LQgfoobLVfFFGKHJ26meGaoe11oEDv7Xerr718N6UGtuSod6UkW1x0evXP1GqK397Mu9AX0zUvXav4vl+X/4lbUfg2V5aLXWgPFbw2g2XVwosz9vgt7MlQygAFEONmtw8EdGg3zpfryz82/f2X4nVuR0F6HwTHgsObgwsum22ij+Y/H1AtMZavDXQGXCQiTdx+j/2at9bxKOsDl2nV9ORgN7hA237YXMP0DuctJ1Wt9c/UYo163PU7bfOdMVHvU+k/pq/cwDaJnKylIa1htYaOYFLMOefbDLgfvpqvbTw5KNCLxy2WesQM2m9v6Pc6oUJvdaoCK3cnj/IqCEjUwa8FvBgxfL6rOKVJYbWGGOAWYK+sYTxNe5Ppu9Ecgvn2/f+3NeGu+TpbBIFxPuHyyYxXSPGFXmVFdzj0NsH2W5q2utnSrFZ7EcNbtHDQAxeZid8jDjHjKP1tSUHuMAXtgfjUQ8nJzONwjAhEIFLVHzf5d/+QNj8rz+HRo3WqOxm8NtoQ9sgaq9xLovu+QZikDpGbknuoX/aMms16c/RpGmI3Wvxvf/D5wv31KJ7ld5IHIcejrENpQUyxBB1nxwPwUrr6ChAi2B5D9DbeGi3U2VHgB64UKYnfKa5Z73AUFxJ1zCvbctBEEzUVlRpAo1lAJw22rQHr/z6T/ntcx+7nXHedlvmzSeVtz4ByEEbkj4Y0j9r8+gWNKlEoS/ae3/xi7q3kvkemhzYAQi8nIDj7OvLzvgzQKepV/ad/lSRiey2b+lOdnDXytA3bvxauaZNn0NviNO+5ZxlquYpU/M7WImUVysJG/kKNIINfalFGRmokCUqWPkvE2NX/sGnrbW3yKZ0Jx/L+r6tP3FW8YPfAsFAk0jNOBogyUhwRK2NN36hffgTzxmWaA9V4smVXoktZzqbT4NRi8IdDj3yYBn37QF6h9O2s+r2xq+VQfccoONEYBQqS9T1QiZtOi5M28VxIrDl31dvi/3jNgM/4NpoY2TkdWNUgqUmqHLOLGgBY6/+yi+xeOYndzaqO1QbWTeJ3vYPc6WJAY5oaONR+mlBKSgd/5N4+qfm2qoSoic4GVNUmqVj/sUbFTaXrs7FLeZnY96boaBer7aM+87sceg79HhdtwToWGeU42fLQg9s3pT8FO6fMFitpNqyssh6nm12uW5mZaH1kpqoKBx3/SngcODFv/K3UDYf3bLzN6iCKr/ldw36/YiCXDViwCKHNDP73/GvWe2hTk95wkA1TL1aOZF+KDyTRHpp5RCeXx5MBLVVIqcN573xpT1A3+EHTYBOTDzpLrNFZhdppoJr8t6DiJYFNu3VheylyYoiLUYeZGKswfFSR9fy/gDgwIu/8I/BpDvJyHtH71iVTvwrw+pz7iKFHhBJWW7beOzxf5H5DPMIL2Mp8qvbq5bisBQihKFI49Z0+M2ba5lzdjbUTrW8NDX1d/rhPztr+0bXvmtlaAfoWLn8jGEgbZJ6SDSfwLVPZsqrfCa+n/akgLK8clOwptRQDwaDpawAY9lkuaMrE6S28zm3U+c/9vvWkoHkO6OY8NAfKm/fxcHRkBIPee0yP/IXPieVzzwvT1VGIbqZjW0ZluM5fGC8Y8b2lXHx5j7zcrHv0Y5uKqz4i7gH6B3N2Y4rz839UqWqfcdRN0vjct0+ONnL6vun7UuvToQrCYh9/rIOHaDXQla1zWStnOjGhAbjXvJDDtDgtnn7TijaP/SkDPa/NjgWMsVkpXu/WT7yzq9L4DgcwitwrmtNYublg5MreuLQMfHMuZpI1PaX0H32IPYAfccxYOfOVJLeQpFB95bXu5B+74NVv7s0xr41H1hupZ0MmGj42bpwKW0zNVHummjSGIbAORx58S/+++8oQIeHnpRius+h++ZFsNgd/+CXyuXqq+BtDNDl6fWeL6RzST2v3/fIPrz0yiS7vLXo4By3EnIYd/Paa6eLE/f9ztYh9Xf8qW99gbtX5Jg7UwFTAHo9j05TjUHALdEX1fecqsLizQnz4lJIuS/seKCiug9SY8kLnI5WZl1I9Xi5idGkJrM2EKAf/3ffSYCW4eHPZXy/22yZ1NDGAjLmqfaxv/wfJ1hvLsdzDmopFXqesEnnYhwI5QD95+n3PjJduv7qpL7SKuaGaA6RLRYh7XQR9wC99dt0OzWIQ4Nt7qM+0gQgCHM6XC4nJw/2oFG7t/z8K75OFAEaS5VAZrDK1KQ1tpeUKj0ccyIM+XNMP//T//aOAZqFwA//AmBwAPSNfw+2/a0tp0IGhz+fif2OQxe+Hdbft9CZ/pmvTPC5OfAZ0j0NFpZe7xKgb9jD9QV59OQx/uxzVd6VxVwRdfM3kLyMfg8nMgOhFnBij0Nv+ZBup8L8i79erZZiB+jNSsfU/avZAyd8lsT7xeXZqg/Qy8YG3eEBhLa9JCrHMDEFYCiUhB196S/+6zsC6OAg+O/8I2DVfBtiaxTIpz8MZuGLm95HFp34svL3XwKDFlAb0kTL6n0Xuo0P/vk+/8ZNqbyhfcoziPhce6azr76MRw+XWXv5RHju2lbzNep8UIb5PUDvZuZ20MbO/3oVTAHoIZEjU0j+GWk/tdYCTldutPYdCjwtq17cLmOSlQTm4obUGDPGM76/0e0FByxyrjni/S/81P9jrX1dF4UY3QPe93wJWOnEujvV818A+ac/tOndq+jEl2NxaIZUdoXWrl3/wW9C9cTVhmheN7opoyjUKPNFbcxCMd/xSp3Mr1cD2ZlgF65NlmMXFplmgoJrLdGRAO7PHc2hOy9K8zjxyT0Zegf43HFVB2gr3bZPaQoQBDkd+ckMAOY6+8s31fiUwqjElDTlMO0EgdDc+gEiE61EVEAENQbWZBmaky//5D9+PTk0lh8E/3u+BBge2nCveuFLIL/xwc05dHjkj5R/8JIxyJlgqA3HpSO/+F88HsYc4mXfGpORX4fOslT7UdeWy8woXQ3SlYPVF24GiTVFMtUN89WfO5rDkfNZ9udx/H9v7vghvQkN7t5F4fyvV9MkOTAawqPTz3aUx2/oE9OpGT+WaVr6UUoNZiOuVjyWaiWjMvNAa63h+Isf/1dbApoFwA78FCAvg775+wBZbvcYLlh7BPzv/gJgMFopkz39Y2Dm/mBbgHaVjAHjN1YW9//CMwJ1ZkHGiS3XUy1qEkyMipV9K1sHSldeHuczW2s1tgBeUI7m9gB9h99Ox6ETmwN6QzrmYZads6AbcHzMsH2NtuI1lVqboGVWas40ZBLBRxaWfWQq9I2856XH/+mmgGYB+O/6KrD6d7kh2GwBsj/9UbDNr6+7c2y8G/zvfhLQ2+h9So5w6vm/Bvrqp7ecLRUe/SPp779EXnbGIkvC+6/O13/sqjZWeTxtK4sCLPO4Z3sRs14Qogx1Z7liry9Wwm66+hlzIofGwOeWqJs+y22KGomOnE/B9gC95RO6zQr2wi/XIPL6HHqLzljAZtWxfRqDklJkiEmSkoh7FD/Yk6WwnYlSYsK6NMGEoTARZu07Lj3+DzaTodnBj4P/8D9bd2Erm5B944Ngm3/q/s4mPgDeO/4DYJ4kdX1dWgw++/NgZv/ltmYiCe55KhZHZyjqABjD+cpfeKETvWXZszIue8lcyaZJ2c+6IYslMJ93dLVqKKCFUvvZ5YU6m9m1DLwizdzYPf9HkQ19W+N9syrdvSLH4i/X0oRt6WuRZRpb+Mh0G1lln+0tBmKll9hysJq1i1AtYqN6Y7Ubqn5QWvC0NuLhyx//1GaA5kf/Gnhv+dRGoMoVB2oMD4P38L8C5Bu9T61OQX7zo1uKGYOd9/wH/qQjpq+R8wYHa66NffxPRFBJyyJbnghu9LUXDNeSOhprVJxl3v5xaWrVirgyM2mXR3rMbdyBYP1tBRnexD1A39l31C7+zVqWdg7SVXzLbYYaidLv4phoW01Wl+Sxo5F/beYwm1/pZvUo9epRvgVEXiSFdOiJ8mIWHWCMWR+sPfTSz/yzTUUO/wAE7zsP6G2MArOyBcBLgKzIvbQ2F1Z1QT7zY2AW/9OOJog4tBTTlxi3xohKp73vF76WGOAlkXbGRXOWxCcB/aBd0EjHvr7WBpuapnjLwY70KvfguZd9b2P2m8H5GjWfUCrdxLEzexx6R09sh5UJ0NAH9GZNX8seujdAlRzyXrsOoG3P1qME6pFHtrZ+sWDsii5X46yyv4jUPn7hZ/7JVotCHHsP+N/9OUCxvTBCS9z7T38Y7MqG8L8t7z4Lj31Z+gcvuxcwOHKtOfbfvEzOdgFmnbFwYdaFsQyVwMy3fZGqTAp+Gb/rbWPmlZcm/aWdZ0CKqjf2AL3lI7q9CvbV36hDlDoOvTHf/loG/QvZW09NRM3rleRi0/e4bcpKycBYKFwQbIHozLZNqdpJCdB5OXbhZ//frQBN9XDs+/ug3ny7F5vOQfaNHwTbfnZXN67CY1/OvOkr1Lhbfef5uPI9N8lHMAhkuypWZj1kWCTzLbLzVcxC2+ep0z2/kL7tbePezcv72c0dq9+akt1oHPvflnc18De40d0rQ7/6G/VMKKfUJaBmUiNRB/D+MdHr8qGjBi3bZ1+6UikxnQO6FkH/80z1RYhmJfVrsaruM1JThJM99vLPblsPjWPvzTUZIxZ/1L+NZyD7xgfAdl/a9eMlQKfe9FXqYGXqY/9Ve5MJBYMjpp2pUvu6TixbyxOS5wzx9Wzb46mSpupfVPe/5bD3yrmG39n51hKS3cA9QO/62W2roV36jTqkOaA3K005VrqWHj5RE+25feFr88qOhamqlIRltsgmKoS1zSyqdjRxaA2Mczj2wsf/0XY4dHFtHH9fDmq+futE030Fsq9/ACBx0sKui4zu/c+Zd/CKxbA3t+/nv84YGmMsi4RpTwZLs0qRU9X6MoYzK11WETPx0WOcG3MyeuHVXQ0g8maxscehdzV3221kL/6PDWBBDugNe/qs3wOlhftK15PJI8AFTODiQmjBJAiMwvEEF84EHmNjbEGWjjD0hUXN77/w0393p6ZvNv7+XE3X1zmb1rOQfeOHALIb272tW9ZLwnu/osJj1+Lw1Mxy7X1Oq0HRjz7GK/vKrcs2ppQeBhUYDCUY5TFsJyJomtr+ahAvTNlLN8qRy3GW7w0zuEfMxglcv48Xg1k88tsbEtnc9k3dgQ7uXpGDAM3FYTcnJGpIjY7eojTteLSc1iaaWXmfAC0nw+68UACpF1QyKEVKQbln/SpHI5m25sSFj/3OTgHtLh0cAr7/x8GqFTCz/4YsLq/LY5PRPU+l3olXl8Z/8lvGG5MaDbeWC0SrygEsM5vpiKkWil683PaqbVOZ8oXsTbCl2clys+mZbC29dTFXREfN3/B51Nf3AP26PMZbd+I4dNQH9PAD2MBx8n6kjrxFNVafs+P3JtKvMs/aGsduJFpzaBTrqOokOQ9zLeG6U16qAAAgAElEQVSeV3/hd3cictzh24WkfPoPFyd+/ovS3xdbxii7NDLOANF0K2x5KeWNekdGB3qJMpx5ftVrz0zaG1cqYafrQxGa1R8lhWpJjrAasjU0+g3zCdf2AH2Hn7C9/DfGgKkjO7lMrMfL87j/iLJBRaVJTxlgynolwxnojHbGZKFgRvoC1b2v/Pz/tSsOvZMB7aBue/xHPtWc/OlvOvnIIGbWcKnBl4ZZH3WsEUXAdRZy2wIuIg7cr3jN6w11cdYTIxI27uDagN41PPy3dxWPuJPLvB51716RgwDNs6PbnYQ5c/SAZNW60DJm1ihreu4TnBkuDPNFW0bjbekdUBKdNeS7Z3/uk99JgF6of+Qf3Rz72PlUW89oKygtB3JrAmbajSC5VuJZypiS3FhNicwkiMAw7hn0vX3i2mVPrexcu7E6ucHMHqC3i7Rd1rMrf2MMOsmxvPnmm5TM26PTmSlVyzh7g3MwxlYDpTMUIGhdCFpnmPFKdTmrHNQuMBbxwct/6e+AMd8xUd8z9b/4L26UP/KC8KziViuPMy2YMQHTrQnRvmY5RbwLQK2xyJJa4t1OjLVaR1X2TfHrr0Sw0Af1+vmSSlN+GkvUzWb/mKibXmZm8ODfW9jlo3pDm929HPrqr4yDti49AXjMAjm2E3VO+wbJLZRol01WWurAsZq4cblhFjqxrpfaWC6tS5urNWSsXGmn5WkKkKX42WMz//3/zHR31dDyhj6VERe7NvnX/m5c/54ZhmgYaLBAcjTF1pj2ZNi+prVkw5sahTDrzNUpOz7Z1aX6IfvnL3tkUNpkvnL2wKwEg0TdUHy8ugfoO4wAe/XMOJj2PaMuI6UEz/OA6Kx94J6AJck4zNygUKuurpYN1ktuX6r+PleJUiChWm2a4IAxBgUT9vCV3/yrIrv5ljt8G9vu/srxv/erRoytU5kYC8xjuj2BzetiwG1EkTpSUAr2GytCZ0pxX8yaB06N4ZVXKrzZ22rj0OHznSy7Ur3vd+a3Pdg3seJdy6FbL/zmRNVPRgN6QAiZMfc/NM6WrntqrlWKmO3osXKMfmlt0zaAQIJZ1F49ltUDzpeDARy4+VsfKcXPf+BNfDarlzYsWrx09Hf/lyLTMyUBM8CAc4sBk+0GLF7XlAC4/4I6TQ0AVOzcsmBSkWfhxezUqXGcu1b3FjaavrfamDENL+N9f3sP0HcSDHbmNycg7bngPElhreSrj3k8XXFMdBbucQvHSX1xxuNgOqZajlmtpHVel0pgwXR0WOtB5QDliyPjRCmbLR+89r/+TwiKUuO9qaXT+IF/Pj/x088M+8kZgxgw3a4Hi9e1ZlgkyeHALB3vx6VFArRknF+Rp95+kF84F0HSD1S79S1tmE8TXMKTvzU6HOdNnZmNF79rOTQBWvZ6Jx2AhbFSMSQ6fIsJlMKZ5MT94/7cTJTNrWRsoiRZaZ19mnNlmllU79qSCxgwiqIMrZ2a/6ffV+v8l596M5+Z5JOvXDn6tz5llEAm8o1Ci2OrBRMsbe8PV2a0Fizf7GitNPy5RZtJM2MevE8ILSezVy+vc8rqVx2ev2Iuibr5Zd7FPUDfYRTYl351UrLMAXqrsmgmxzp2Ytqz3ZUGj1tSiwgGhU5rbEtG9Z6pbIiAGWt/8b6x1md/gunulikTthrHTs4j42m39MiXZsf+uz+2GI7ckJPsKxzSToN1r/EBGVorAM61QdtNVszBwwyVHrPXrpbF1tx51Bgzzi5WTvz9mzsZ/5tV9+7l0Nd/dVJ1k/to4m61dXDBr6RGlvFGeV5O7LcYRELFvZIXt0mFp50vkjBdHdS6MpqmEKzhhyFszMu9Zw6H8voEV/OT3PQ29xXd5dM04Eklxhelf2ChF771eiKm3c5TJA8XcjH9Lo6VBfRRtvd7rWspGCRRAzh9rTyvq8vjiiOvis5iWS8uVnh313powcVruAfoXT7VbTazF355SiE6QG/cV3A9xItfqa5ES3Jsqm2rUwAWQ5Z0Sly2BaRpApVqM6McA0P5WlyKcVqC5UuxUaU4R3RUGW4/XH+r88N9ru5yyBADkO3xYOGqMR5PjYg6Kmwo60e+UPGEWLwS6pVOxdNycK/wbU7xarVuql6rnP7U7XtY7fTCu6h/93JoArTRD2znnp2rKBok2tKVasdONBT4QddAxVjPY2hoxxxUVtRo0ynGGO05DApsf37I4EBGhr4zz5YXLeoWzlLr2zPg1oBGotRVcUyUfm88P7yNJ0GaW221ANBZJGw7kaLMGMX3Jkno6U7E0rRh5+cEy9Tg/W/9+o9gD4F5Fe/ZA/SWj/12KrSf/cV9YYg5oHew8Wtb1yq0KDSGM8OQG+sLSo3XUf5YRwWTxIQ5GsMESK6t8Rko8j1evytsMfK1zTU3vZetdt68RePii5BzdECLhknNuQLwlEJB7v0e10mNJzcjoWMElQVgJCXuYNbYGiwuCXTM+bZKhvqV8qlPz95WJ29Q47uXQ7/ya/tU1n4wn6etpOi1821Vq6QmqHDPN0WGaMo42oWg0ZTVg9Zapi2SIZlbcmuzlFUcLTC0gnapt8wwZgwnfzcOhmrQppmMceu2g3XJFCmF1iDYh7dCZmAM7VSViyjEmeky9FMpWuppRj1qbblGZMYK2sWNgWFA+wVxrrUwTAthjMey1pTfmbFWWQ58nUxUhZt9QG81P5ujTYC9gHuAvrOvpCVAy+5DO71KT9UqMZQqlqEtRGLO0PRMUGuaaBotkkUZrXViM2hrGRiO0mpODkEEb2uAGQTa5jXfWg2wry4kQse0tMz7JzFgjZ/n9R14HZJtvkXbqmiT82IaG+1JiIz86ig9o7Ee0v61ThyyaKlPbSkNaYhZezzozGhJ29GtLw224PTQO52j4foZ8gvlB//P67fbzxvR/q7l0J0//+v7A5GOBjQZTdxuVrnxZFAiiW29rHilbCj9UB9sWlsbY1DrZJU8z8eQiGCURUZbqmmLYAzS9mpWW9pazf2HVqNh9DeHR3K2AGK5Fjnt/Lo2x4aWosTPdc71+3nLSdtClyUen48p75W6pDMkeqBL0VB8AUjSd/u7gWBZe5K3rlGDAjCUWoleilJ2czkQanVBuBpyxplV2qCgORqeoBEfPIHiZdwD9J19H+2f//X9iqUuJ23hu0B0VKEHVzzANtQqmalUKWU4J0ckUoNpZWNbra1Iz0WRE1DcdsQDm2wTZ1zltP1zVCcv/V2pCOwD7RG5+22MIjHEUQdcTsk11vrP+14TUWjTT4d42qK5X+hPq0oUA3TsdnbzuG5PwNIM5wIpJ99gidTcki+UHLx/dx5XU6bnL3zf96OYP/IDKf5G56WEl0oP/9+7SsV7Z1Gwsfe7lkPbc790QCmdJ1neQelgtRLrasVpc/scihZQsSrVViCazlVv62Xe1V8EYOKK9BIQRyQJABhI4pVODqA/kRtcLg87Vt8XS4ohksyd6ygcl3VSOlq3kb11e4zT1sdOKHGbfLvrrY2okLlzNSJ9F0KbtSdEe0YTSIdKxc4tBaCL7AarZ7daQw9L3NLii3uA3gHIdlOVAJ1q6bzhhg0Pw/0VhgiiHahVtKlUNG1guYoyYzsqrLVNOefQqzIxQZtEWQGKUa5ozoxlnHglffBpf2JS95H/tOtqI6Y23NoA883lbwdcuiZJF5Zy3ljBSXSnhac1OaX3xxi6YPFNIGiTFB0I3Zrgy9c0qWwGr8bQVmB+yQflNlkp5mg78zU8aGnti6W3/8OZ3TynN7rNXcuhu09/YpoL9Vb3gCwjKRaJugkcYjHkiEQ7xBJ1gIZyLkP3gUvgjk1EgaXTjrtSwkYkJsq5BhQUW2itYARj6p44MQnMlKaZdGmWNixGZkCrfBtukhY0APJcHl6n8FhdFNL1GSUkI5mblnqoweYvCpDihPb0JlmcNm+jbQWcfK3QKo1GU9SYonvwMGtPYWvGIPHy/gK0z9IrYmHRRy0H73/UfBVzR3TUecHgBdwD9J19N+35T0ynsX2bu8oQiyYGp4HTdu8O4LSY4xwt0S7WKpktV0kN52zIBDAmTc9UG8u6fASAQrK4sEg6amRIsEdtrCFdhyF9miamysFqcoVySgqV801kpADpL9xo0VeoUQijffHBVaT8zk5koc3n6SXpixLUgdN4kATNGKnsLDJuOHLUSHpzx85pucu41SiVjpCSNbYuu/RRoi/DW2up/xrML/io5OD953e8lRpv/flA2HN7gL6zeIbun/3lg9xiDugdlAQbla6Nqo6bWWUJvIqXyl1bnmxnfNKByAXskbVQK7RacbCKWcqdT3yyL2KT5mFAJTc4hEKdt9mw6CqjzOxrbRmQNsWQiG0svVhMAfMMQ0EKCvcCIdqA6bjBs5ueTVoe9HpOBidlHwMom8VFEjl2MD0jqxo/OFd666dc1qbv9HL3ihwEaIC373SCu1itZKZUIbaeca8iWaWhUUSpZmE3sxUSHRBkxsFIkWv8co2E47hvYnHCdp69wAA5krJAA/d8brOaDx3GjeQq6QYqWeLQzej+amJpgeduHLdVjBHnSo9+2uXV+04vdy2g7Z/95YMpmofdBG+1bCeJ2CkhLCZYrfSgXEtZdSzDcMxycrxkIKX1Oyn4PlMxcWa321TfVEGTRIs/J6Hnlo6+LN3XMZPimZGsXDQoxIhc/CAxgowvhQEFi76dgWSjwxMKtEzT9XPjI4nlrp9+VcwlGC4ZD7gQrCxs7ORtkrNRJ17WXvBtt9PgKzmgB+5/JCD7c+PmiMqQRGK0//weoO/wq9z76s8fYpw/QpfRoIEDd5RKcUw0/wOt22iHWGO7plpZEgfuURhN2NxGjdwwiLX1pDQUI0u+EECs0Ir8AaPKDRW5vOtM1eRWAdaB2Lh0YtqS4qzvjEQ6Y+LoRIfxSvK0wzYZZkgGd2JzLsuQqOD02KTN4OheElf6L0qhv3ODMLSgZIJ7PAhAUnNaFJCoJABSoeZn96mblzlqPXj/br4G1hRbzZd7kVLxfPR9/+j2kvPdYTwU3d+9HPpbv3iolyVug5NhtV2mFQKLuGGWox8Io0MvsSi48Fhmo3rLVo+6mBS3ICTcok2lAplpA2QEIZY2IGLkRg1CE2kfSBvhPOWcRZB+O+aItMlJ7mVPqr5igomz04qSkR3b0dxCQos7JP8Px/RJS9c3oTuTNynrSNfsbCuW1HWD46HXltTXOh8XK5c9Mooi7VTozPZgwAfTLcH8qwKU9NBoa7RiqJSfKWVRa26VKcwwW6k9reDPRd+1B+g7+k72vvZXDnPQ79AghOS+Z7jnGfA8QonTIOTJDI1TRlhpPLAK0Ogmm5ju2drR3Ae5b4kjy6CySOl3CZikoiOeTP4clnESWpE0DM7Pw4HVLSlp78scuAV813lTFD8G1HaFSOI+6cYt+pzIUUi5uUhjOe05kadIchIOyRrk22FJvjdkf3efEIvaGM9jxuPUz5r4Qq3o3sblzecCkaSGCa7pRjgN3HcDM8TNSeuttSGBy7Mq4zpV5BI1/OCswueid/0Tty3zd3q5azj0E088wU+850Qw226XfF6OjiXPHB3LLr+VPs9gjRaG5F4yL2SKodFOjeWR27EmNmp8BJNZzZr8yNE2a9xL2jhKBE2qudxFCJnUgHGqaNG1aiMh4cE668naVJHCgzQcjqs6nk3rtdx65wzWhXPSLZaRuXElB7xzVOp3vXatwbfEyeA0gL5F0Qnlzr8j4GhpNyun+wZN7xo5MpE2kV4CfUBffTowKx2SrJ3S3NCHhYPU3NOQx1UKlmWUDEEx5jlrPFlPlTaCqUzoNAOdSWHNM3uAvs1X+ckLTwbR5HQEC2kFQhNq5KR6NaBQeZUgO3bjy5O13iunSWrULKparbIKNFucVMHEeFgoJHq+smEkuV/SGISWcV9ar5JAab+TigecIwguxtKztCi1AVIyEzKck1DfVkKmardpD6V4IebeBzNhiZKkF74dufcdiRd9B36nBnT99y2KuVyMRjtRppBpnYefk3Gd60fxWtDrll+JLu489SyGPrmxInLy9aNru1CywpKIiEYlESazAtPEKik90D0uu7Fnk1RiGCjwPF83u8A9TKBMG46qSHe6lIRKmsAnLxFSadI+ny1x+IUrlXdc8qKoF8/N95ovNZPHH398ZJzjbT72227+HcOhCcAsbJStwlrFY76SmmmmM4OYsK6XctZDXS7ZmPFYpW3/oYXnTzfUhYfKcnHF+LWwp0VVCC4BGNec+xrCQCMGBnlgme9TkiHDkdyAiHthBqJiyaM5Vz4Q4PoqXJJf6T/yJVKWzNFGEdIcX81dQglAJMGg17cE9n0uHMpzsG7qDz1gaCFrn6vb/xs5RDmZPXckze2GTtQBdBIKYV0w93UhQSg3eJN8Lml565g5B5NwNDExdVoOcMaUMVJ6CCmDLLUqUwJsxnUcuzdWaeObVodAnPBKVUsDVd5appQ7BO4kajx3Yf9PzkBXhSbQATEXZqTmJuhBr9t5/6n39+gVum00vg4dvGmAprXO5175eoVjWvdYqaSZYlpZWfFNT2rZ81JPy6DMM93zGQZph3GsmE4ta2bYDdjiI/Irx2rp8veTasGQ3GwZRU6BBuLKfghchBq9gPwdBJjMs1lb2F7HGkOZ3PwEKwc08+qaYlNIhnCGP+aUDS45vns8zt+N7G7O+87JnkXsym1ppQmehNRBLcZQ9EthPySNIDkokYzklqUO4049kjtdOxM+kkWRwCvQZp6J5yLoLDJELa2IFIuqGkXJAhcIWgmrY2azhFudWqW08C0piAx56wmmMz9tdRzn5uUafapWNP/a+cpHLosSCD/J4nJQZknF83WSlBAh1JKzUsPLuu20Ewndfuyex3YdkHu7mH5DAX3WnhX6RV2HUr0OWRxyI4wSuoeB381iK/eVhVqcX0QxXm0krVSjD4IjQ901dula3KqeqFlj5URV8NJ07/z0VPLSQ7R6J/2FNFFZe35ZoYisAUo/EXs6bvsmbnKTxIYJEUO5ZoQXMW2MANkjCPWgNCmVqFuGwgmmzneCOHDua5Tjur/w60cA9klfIzeCMfWxuepdOtDegXHkIrLP2/suq7nn0nqf/dVlZn9s5HEN5DXNnMNJ4rN40Ye0hUx4ErxIIBim445nOh2ax4SXKxLCuuZhhdL/Ca5TobIeGtn1DHFrZqzhvhHAaE3CQcZCd+JF7/grF8LHZpuxkRHrtMYqY3yumfjekUbsMw91O+Y+h8hjWDJWB9pwg0p3VdJe+dDbP+Qi19+ocscBffbsWaEP6DqvlMZsYgLQQO7ynTjVvTJXMvYPy+jkjOaX+dRykmBgQiszyQy3CqTh0IvbuhpGUVAeYwK9EFUqMWjds/TZfaWs+V7Jo7phUUkDL5GkyW3WikxnieukK6zKUDDegdqEZqUagpHcdJtc9mJPgJHOD4302GHUxdKE5lFdGx4RHyT9Wn99tx7PhDNOzkfk7ZHrqVcjUAql88aIq00lEFd9QMc83P86MJD4QQZ7TisK8sSTvTKmC55qrQTMZE7B4VJIc5byck2zoEYCVGh6S4FaXjHM48qKQHm1WgKlCcN4iQNKa9Keb9OOr9tNpqU0fuRLI0q0iugGB565WXr3n8lZKc3JYKLb1BxVppVtdaeiKT0fSy5XQMHJQB/sGkHcGzNVYYgRZClJRJ1qubr06MFHd76l3A7fhDsG6CcvPFnzbXVSM1UiEAswbSPqHdNZVE3RlB899VH19Ytfn1pJMpbqzAiJoeAq7ngRF0vLnXTsZDohmlOK2zF6dBptu9c27SP7q1k7bdcmOy+/o9q58m7iyuR84dl4MdCtBSHTxNo0C9GaJmtMZl5jkrZzZSpeKunlxcDKLEXuCZtJMEY7fyJkqKznxxCGhkWVFIN6ZkUFUAS2v7JzZpKcaVpGC8Y1c8eQ97QzJvaB7uJIXGxUUZ80JoXdchOBo8+unX81OSu5EFkSfyi3tYc6ZiZrh9BrBZB0hE0yppUiDQZpbehrxBlnCpTSGJVSVt+fYlAJTNaO9PINX7faBrmXYugbUar0WG0/8LAKRmUIqhuaXsvXK0vMkl7EF/PRva++NvHeBZQqNb632LoK8Ynji9hMxqdUN/fMarbjLkAtjvxFrExU3N+81POSSuLLNq+WojBK0sRyL1peiq8sP3768ddnr44hwL+ugCaRAi7BpGZ8nGUMrUw7ftlv1YJaJmdk9uijj0oCeiNsiFYLIGZprYwyM53QLqllI6qp2wuvwRuT2g8nQyky7fWWwyzsXdfXU6gd5mOxPG4tHhxLX7t3PLn8Nm7SpYpemuVZr8dQZuSszwXDFZw4IEV9n2XcE2lztgqL80zJTIlS5KlMaiO1VzgXUeQKqfdcLJQQEqwwPPSk9KME/IrifmSBR8oy3zAmnBmQNBf9ybSckdHQ6dZyEYV0L9xR97uQl53DKOlgnBWFrDqry0dCIvmiFn06nxJanhqjfKZTBBn7OusFKLsAaRLSitVm0r2Qww+VIUttFAieOseqVPthHE0d1EZ4ApJeJVu4wQz5q1DmYM5NEAWxLTcSf+wQMM/nWdpjQveibGW+JJeXm2L8uRcP/bfXlBE1JdNGAGEq0+pMdbzrrt2TrBZwWV7odQzXFaPnVesnHnvMpfI9Yy1736Wn/FjFfh3rYQZYy7I0FJ6JU0jnP3zfh3e9B/ko5v26APrsxbOhsWa/Ba/OMnqLzUqms5hSE3/4vg+ntAB86tJTtW5bYMCSqo38IOkkSmplogyXX5mA9N3NfWZ5DEqQdY9yo40Mgnk/zXrzp+bjx/Fxffbi2UYm7QMW9KRAETWSK9OHWt+Myqa9YE038Ujt1jd999jEZNtrHGbgeRxUr5Fcf0Vg6pIUZqxURtXtEZiL+rTHuzM09E3lxXFiNaeVP+1KpMgnGiNfIfe1ZYFBz9cWfTLQ0a6A5I5NSjharDnfZkvxrAU8B3g0QYDkFdrj2GoyzxjubOhKcQSF1kphZcbRpKhl5nGdMh0rWuCRZsHnRrkYl4FcSsV4B+8ntSKgEDNh8vtWNgiAcUarP2bi1ENmButLBlxjrdTzJo+kzBvnhrQkWvqmvejJ3mcn3/cPXyBNlMf2hSprj3EODWtYs/nAzStwHviJsRNi9vosTOyfsP5NXxHzGgbcE/YJfnjmsN/NfN+33Zr0sGpTa4U184898BhteXFbS+3B5ckOJZW8+levfjWKk/igNFgpo9fuyu4KKkybb2smDoRnz4pqtYpRFOFieXEibseipwwvRSXMOq12nE10YWYmI53m51743HG0/njgsbmW9prpc9d7ha7z81c/P45t7y3IsMFJo2FMdLD1zI0jybeOeKClNqSacnoK1IzzlnfoXoVelYRbD2S70bv2Mmf0aeSQYhBpRil0k2TV1cNSmKsLac39p/vHROm3g14R4mTok84ZfYwpypSg6WIFuEClkVMwABkVyfSSx3BTAhtauZFOmlRr5HgEhvBMLqlk5Wa+0eTJSvoUxmhJpVyyG5CZ06nTl2NwDMW9EnXjHbh/92AMspiVSxF2e5ySnQ05B2y8v7X7l1iKlsKpEwZLdbRpxhF1m9e+cq50z+cLMeHcuXP+Rb1U9oIeMbHAsOTiTjkt9XHZvxwyWSlHwjY0aiYxmP/Qye+jtL27BvauODS9qb71DzHLqjzgrXarvdLrjCePv/vdpK5ZHQxxVeazaqepGLfSkxnDUOPccracnU/PyzOPnVH01o5dGLvfKMGtTa9PxpPtwbf77NmzFTWlHgbBJ9yz0qbC0L768OJ/WIrS+XcOv4kKgqBdPnh/pplPmOAAKkwXL5X0cpMeLAHQisB3zvtWS49k6depOKDQNQonpv5vRsoDQ7pj4/RjoDn4wjq7JqnKCmDeahhFcAJRB+Ah56KiHd2bIpHBQ7RSqZBJJ6dSql1Om6+Qg9Y2CollK8HhtxoysyMzzdLRF+dLJ/74A/d94KUBfTP+wfWno0q3PW6V3S8zefVDb//QjlPuOjH1PIQ60mVPeeMJM2REuPHYA4/taguMbd3gwBzg2WfPHrJVO4EGu91ed7G8WI4fe2xN70hM5usXvzwVa+71ZI8iLQQBOUhhaa49l4bNcNXKRHU/+8IfnQoE05GJZt7z4Hs6gy8EyV/f8/yX38I9dhyk4oZRjBBWfMG/8L3Xf6+ijf7+4edDMvCyf/h+gywszjHQcaRWbgRmZcVxYUP7YqOgjQ0lcVLUxjNGWS51waXX9Xu7QXlbgeg2+neLQC4ExbDTEpSB0cwoRfbHW152G9dbDg6fzHg0xbROF8N7LyxUTryGIvqzD538vnWg/b2nf8873jg+xhN+LAuySx++78O7SoxOjG3q/FQEJaiAhklttQl19+p7Hvzx9lbTN3h+24CmxZynvGMBRcsbPheUgu67j7yb5OTVQiJGfDjmHHk9yixvZh6TqGRJWNWCVmd4Zfull790wmpbNmPmtQ8d+BCpdNZ9ar524claW3nvMhYjcg51HNpgdEPb//hzS//S66rOj20AtLEYB/v2dXjlUJGfwokN2mTCxs2S6S4J2+mR91EuKlCeL8bBCiaRJAHnlWRyvxDiabe5JdpOnsZWdZE53xPDyJAkGEV9OwdZElsIyERpvE6Lfnul5e0/3PPqx7hVvfnooWdb0ZEVMPLaD5z+oWeGrYLkZxM8FEyGLDwOCp6/Hd0zAbvy9UrZq3gN4Ytx8GBl/k/nr27X1L4tQH/5/JePCc+MJ4lZ8Jm//Nhn/nMPzpzZsLr+40t/PI069TqZYr41tisF00u95Weh0Tnz2GOEyDVx5NzZSgbZ6TIvnx/mzMWj+Oz5zx4LFD6SO5xzcqKw2pp6ibEv/qcnvnbzV9/13E9ahArlEBhMHKNQeB0+MS15ecI51ReO8bSwIq8ym3Z922v5JunRAoxAop1TsvNRQsYRleac8n3lbxGAcIEihhyhKF5Qry4AACAASURBVBS3DxqyT5JCbz2AirHkZu08e9Lg+Ea9hO5vZERy8nCufmMokILE3EvXTyzjbD/aWM+5fzvHLEqF4Kx8nlh1oN4RmkeNd14cOQVeUEWA+LXK933VeEJrzbt+xf/KKEvg2bNnRDb9riMqU5UfeduP/PmOBjCi8tNPP+3d8G9UyoG3n1IMhlC9+J4H37Mlt94U0E+ce8Ifh8pJTkp6a69Pxpfbjz76VzfInF989Yv1MR6UukkcKi6YbEmUkhTL4Zxoi+5jjz22IQzoPz37uQcygbp1rnXxVm/fl7712fu1L06ByrkzARoVi4zVy+Fy+T+/I/nUMcb1u0Y9kEx7QebXxxJRnlQGA/J5zsMBXQg3aZJpe7TMQ91DlSQBZj1m0ozRIoo4IYFxNddFzhlJRs7DV7mLWll1zidNdt/FuXg2ubEkl53FGp7JT49esA311z1TNzy3nRrpPwyjjTOLvzmrN/kiAXj9r8dWL9BOz6e81ljx9j/EUaU9f/LqtfLDL7v3DTCLW9lXfvw9o8WAJ65+NRpfbj4cZ+rZjzz6kdfDiIJfePYLJWAwLridkgCzP3TqhzZNGnlLQH/h2S+UmdD3i4C1PZXefM+DP75Ovh18AM6Iwv0IumTlLEO3OwcmiNLGSqMzCszU9vPf+vw7ueIvffDRD5IecuQn8nPf/Nxxxu3DayqqPDLFMBsZbWektM+8d+EfvxcRXD6NDZyPdMrMLyW8NpbZoE5+PWQY6ftf5pihkFLQGslfmpzhjUrB6swHmSLKjPYFh1QbEAQuyqgETl9MrsWrpdDK8bVFVxGmRYKLE3mKROXE5d11B2IUCay5UjgvedIN9zeX48iFo9A+yOTRcYv0ULfLEvvtY15tdMTEveT8ZC12X2t899c1RrQnAIV49bx69Me38tUgcaH6fPV0meP8e7cA3k6GS9y6V3+toW3jEDO2+b4HP3TxVu1HAvrsubMVy7IHrFULiyvducff/fg6WbnojLQdVebtN9JwySTq2Ng0ScCgr26ywzf+6ghdZNH2S8/9wbuWxia+9fiQHD440C8+/cW68eN3AyCZzPNnzSlWw31kAzC4WLGzL5+68YePcASnBdkAauK2yD2JQZRhqSZJnYfCzxNrDQa+Uv44+u3SFxnKeoDGaKC0BRT9DVpx8huxljzVCPxaGEonQF97ZUmvq5my1MRFB9wiIrwYH3FNx+VBIAHXyfOWM4Uu9oqTidoCCgNckFORtMyjb4MHmTNP+zYd+Ux2ApTBuoTYNJjcn0Bt2nDnepjcKL31zzpi0n3maTWOHlz72qkfffrMLTzrSJauPxjdZ7RIfviRH359AwLOnGFnf/ztNR2FRyExyQce/hH31RguGwD91a8+EaXV8ukM5M0my27eykTZN5b4pUSXlae5zixf6iTCEx5bvrG8/PEPf5wm4paLky+f+4N3xkutCz/6/T9LFqWR9WiCaqeit1ilTzCXrLBfyAhnLUewntIoA5lcf2T58we5XBgfCSTifqQi4UyQH7BiXimDoGIwiMi2a51jZhHk6mzNbkC5Oo24Y9/5mSgZoHO/aArqIyWgS91MOmXnXkoWcqus0zujzkWHtRjZfigXNSVP+ty90+mtgZPWm5LFIMk8zEXGcNrZKt9njn67eC7QnNuMq14nBNniptsjMYmMKMO57Qbna92eFutQwDAWjbFYVPZr65XJeVWD6M5WHni2JyZymZXiiKVUSgdP/8g7f+SWmfxJjo7HHnlr5InZx07fut5uXzqSep688GTVT/A4Z1nvsdM//sqmgCYtBZ9OTmkLrWp36tooa0/Rwdlv/vuGX6/VkyQBYs6pjDWmqLMgMfFrovX445vb6v/om//mPssD3nwxvrDZCvb3/+T3q+Uqf1haPUXXRovEAlPU0LOcdci/KZFG+R6vHVx57uh+9doRXy1nZH1zThfUhtb+ZP7of/5JO2BMIKzHeGa80HA/VOhFFrlvgFEYF4nH7mXPrXJ5KQ4oA4zh2iXoyh841eoHvzp2tt47qXDuz+lallDG0GVOcqGDzlCZ+1OvBR70r9t3hDIkkLvgKnrpKL+vin3dWymZ3hJQHEpfDCru9Vb3T39XtMYIK/WElScs8yKXDgqtjVlj5lLpoZe4CN3KhYLijZSU8ObFqFl/+VYiJI30q1efiLqL4TvEcvXpQVXubQB4JBN+8mtPVis1dlJyefMHHvjIuiSS6zj02Wd+/ySrcq+L7DUyWW8yEDx78WwAKyuhDi0HxYXxIi4XpWeyZveZ939s6VafpaJPsjJ2Fua/qwvm3E888hO0GeStuDl+6YV/N6669phgUZJC3C0ZvxsrnmmhVfxarCqPVDCdSaPSJFa9bnffgd5zp2vpwqHA9sg3uEcqOM5JM5urO4pjRx2D5GSC4aQOsySeAA/IZ5qSe2rLKThAME42PMMo5YtzaCsCX3OtWT+KL+/fgU7nK79RxQXI8oFMdQO+HvRAnAjdjxLM4wqAMjUppA3nrJLM6ozc3bhSJOOn1vQyj+J5RtwfXZ/+TvcqDYiUlyvGqzSkFRXLhF9cLPUqNxdL97zc8SZpreSKQYPMknSmLnmNxoub+TmT/Dz5bPig1sp88B0/+eJ2rX3UjqzKOwQ9fv7cE2M+lO/zuTo/qKteBTRpKkSvd59K0wsffPTxWy7U6MK0YJyqqslmmiFTxJ1RxxloJroaoNr7yKMfIfluK10onn32yUMZZIcAWs9/6O0/f0u/WTKw/Ogzfxi2286LSz02pAIsJuPpp3/PS5IDYauUhr40Ywd7L54qycV7fdOtM53GgSHf3zQj7QFxs77r0Pq5dLoLziRSVkaP0m8x8uNAJrhybse0VYsn3M4VKLiLesmz0JCUkCdv7Afp5okeaX1H+Qmcx5xjwRRM5lLskkOzk0ddvgNSgGhmjNaoDMnnyJSkzE2CkudZpQo9s6VFC1LgpKJkeKv3sm6hmudTZwr9UHlROcOwqtEr2TzMBjnSRqWQdsTY9Xbp2OUe1gZkcqfFoTyr/3973x4b13Xe+Z3Hfc3M5XBIDkWGeti0JcWULb8oWZYlS2wTO/Y6zSYLa7eLYFM32appGgP7R7F/lv8uFigW2XVTB+h2GyTZBV2g29prw3YQSY0t2xJpVVJEO5EtWxYtSqQ4nOE87uO8Vt8lqVDUDElRlC25voAggjz33HPP/Z3vfOd7/L5YifCU4t6HC1kt8Ps8eOz5dSB0eymOjzU6c80HLYL5C+81fZESko3DSBglgxh4NQxMDSTUzrnnwr11rGrYD6qjuR63ixPW0rfpXx2dxdslQB849n/vAgJFfSE7utC2gp2hahK3xE6riE28KjDRe1UzPp7W+XxeHzhwQPfXsVHXW4HoZbrNtK1RxOQp6HcXW0hLXcX9Fw8Qu3btsgMvsBVXdmt8ti0bfrTREVPrbFNt4xgVr6LQMjLECD0ulZhLz5kc1tDxMqN2JHbkaW5F0MhgkPye466fEJ4nMRuIWOSDxnzs5FA1Q/k4o+YkkhCNlwTd39N542i9QJMeAh21FI4Uo5iLmIh8VEOm7d5op8Mowtn3n9WXZ/mtp/XjpOiRpYjlRmClNLNTGrijKbEVUlUmZwFiBHPLMc9cmGL5c2W3q4BRJ3PnNUlcTMQ6KUht3odWDyPiGu7WCKzm9bTbKN5iM/Prvnu/nkTZLeXC7/TYd3bklAncqMItENIVSrpGEYcYxWOA0Se2/JtTjfrat+9vXJJvuksycupLd3wDg5umcydQ4to0vCPW7jvX4uVZykvMb/Piiz9wnI6uDqlNB2h+9o0tX/t4MXXlKp9DBk4MWPkxsKHZ4lNR4NxSHeki5sJaX0eriInabC2RL9rgds5AxiCVtEDESbx0krI6yxc3kzOYcMfN/K6O40RolZj1VFLyBFcB5uMmtuXEyYOnWXyH2QPsfDvx/PebdcwkagAwJgmzCLO5INRV1HIQuECYbQy1VJI3Ow1KY6gQ3C0l/2jz5JTTPhFSL8aaG5fz6zJMoEwywqk2ZSD0jJKps15wqNbX19+QSuz5wedTjg42YOw1ZfRU38Kq4xWfDRfD6ru99ZSbtjCAyCBrFeXVoCJCB2wxXg7CPX17LqlA8zvAnWHn0Rc6iRZtv3PfN1BKTwP6l7/6x7VEGc8VXacWOgheJZCW3BxVhYkonzNOvJpqisn2H6yUtK43CT3Dz/HsSGjRVpdHdoqqqfNel/q41YvCdqbjVkp1jsrQ56A9osIURS0BZfOsKU9rxSjSJqAugaY9ZFOc8R6qae9hwnIw46FMGErnXHgQTHJikwMieicNkejFTlJ20WSHgVqGG7C4STKvCdeEo9kOTT3coFkvObgij4gVaeIEkrJQMq8mmVutQaoa2Jmy4s3hbBUABPEVxDJo506OzgS3iikl4BzVcE7nM9XFpLK/Rq3htt0htZo0Kh59fNs3rzquGS1lrx3/f9l0s/KqRelK7qRIFHkxgK0iLHEnp8of8RMLGQ0GDg547Rl+TyZeO4jYTQCN6oZm1vh4T3V8GQr6koG7UEPcfrZ+5faMzbw2JeM8c1jZrZXP7Njx7YYOnRV58MVOpnX0IXYqPsUdXeZaUGa15omZmGIWUxYxoZsVRd8hUYaDyABEaWKMw8A4WgiHaGVxBtxgEe5k80duBfQBJSoyNdpCRyVPSGpQXUkscehaTGTKtCo+Tb6BSwMZwQwBS4kkgIVLBUxqyqU2REiWigy3oog4cQSe4Mghg/zYSTw3xVRhg+a7S6rDvElK/Df4kMTTbiIDrGAzPUaZMxFknODx9Y9jhF5DM2rrBugQQnQxcERs9Ggqny8uMymWDL4/0CSEc6chWmjJqoSICggSBCGaJi0SR5P0jVdPXVhIhUX1lzQX7jVAT6K6kwD6F8cG7ifKev/APxydWqr+u1JgqqeCeJ1rPBVH7ZLSZqNkaBH349de+sZkf38dZsPrNZCZfpOMi/37aRAcZ5XmDppNhzQsZ2kURDTfZpEomKAATVCrBaTJ9yGohUTYkmLt5JBxwoOIgJ3aQLnqIgTjL7AQwHQIacJhp9GSMA3I2SsBZaKsTBO4o5RlSMCgFPpeZtQVYzCebhq488Pn5k5KwtyRRGgbaZDYOgYBU5ozpNqdqMqg1uXeHS60M584MWCPVKCLU8hLJZQN7nlL8tLPH/q96nLVw+ms/5esLhJmi1WeBltnVCxTSmgrKc6hVBiJYPz3dn5rQdZTPFiuOg49TKqJHff9/tkE0PuO/12vjPTJ11/YU/40QFMPk5gFUx0567ku5LSmLdM6py4oW51/9O7/cEVk3nXG9XK6T+a2v7+fbHv0i/cwQm6VM1wIFO3NdTA4W5ho7p8SfXfetWD0J3odtUGemuQMSoEIBiaQxpriTBfB6FIMOoDWlujQ7Y+JRoBMHGdD/7tFxrwTHJ1WEgJqmXEZq4oXdNUWMxwsMmFk35G/z2Z8ukkaGsQiKmujy9WCiNIe0opwrqlO6yASX14CoDuOwEYjVXnX1t8/k0zWPx39P/dxTj98pefJ4nJX3HK++FLuSdJ+ShXXAZaSOmqJgKY4MZJzmIQiu9DXtwfNfYuZCJfyqOvW5uU3f3q/UeQWgkygydWoHP1S6ROne0FiXyRpnO0uUT8AaWIgAA1VAmSKAy8HStRq0hLQDvFwz7DsJ1dGSiaCbd8+Dv5os5K8XXHlMyyEYaAUR7VJT2WC8d2QpMNd40SRwcHnPYy+0ZNBkwTIADi+oLFHQooElBElUAprtHQ2Lk091ffUghwf6J3k+c2bLMPObbvra+cTQP/87YEeo6HCy/mz17jyrvFdG9+ehCfG3Y5IMdtyaMYC06SBphT6RCJZhbQs2AU11bfIBFy3AS7Q8Uuv/2QLAbM2UTmWeKE5MIE9mtUUA46pN7O0o4ZoBlom6oOikQYTGAZVYkQtJk6Q4jzUVijVx0VZeaxDNgIhSuHXX//HdEQqLcqCHNHMJRSJh+kUMVAqVqthM0DY1/cUmu1WRGigZWPd/fw2okwHGAjiUE0Jni45UI3LMuQsZhlmrKY4Emx1i3V80yLZ4YkOnR3dYkr8eF/fnso0oI//bBUVtCM8N/bu448/vZCHcImf4/o2S7IkLM+2tW9F5YrHHe0zwlORBNuymdQiDhwrXVSeKo+fgGCpweHXa9Qv7f/bB5lNViNl3vxnoG6cMCRIAGKBRj3XYM4BtuVaUkOEASKkNrFNaRQrFdkAYSx1zBwVa+pKVtLKtlH63yIX8gOgidRuzWaA8iwz0CS1SbJ6DEXZCFMqVpVarGLhpKMnH3wyWml6L7Rm9fbulSdODKSrABlNqC+kbjKKuagghUJWLUWLkalOBRHT/3r3H0wtMgby4ps/8dMOu/P8SfYWfucE0AMDA3bnRnWvJ9i7L9xAevRSAJak7nyYt+R7v3HcVRkaV2TKKEhrh6e0lLaVMMpQgVJMUV3RglRpR662iGt/KY9ecpuXD/z4VsJVFhPEMUZUG3RTY+aU0BL/l1QbV0rKXEVQ5oYVBb4tWU0rKWNT87h2q5ZG0La3p/XYWF7v3r0bPYt1aJtQdejncUu3AxVIK9A+5Sj1iIcBqbhLMIIS3apQHVQjqeJIE3F7zo82bdqDAawrIonnTw6CGbJtd4kYA8qicTIVjk+t6oxbJgoOyaasWqnmUYv7MlJIvFn80s5v1Y2mm9tvciB8W2+gDNTOe/7dTMz2TItfHv5ptwSVGk+5v7leJCBLRsA1NEz0wFuAB+8ct7XfyiyqLOoYVxrqsVh61LIsEwPTmMQERBDGIh3hoUkHaUJDxqzw+PFJuXfvlYkMyx0WWglKJWAjMAL5KHcJMEFQNuvWdZgg6DZDQ0OwYcOoGR/vMcPDw6a/vx/b1QVXYiF46b9boiltW5q4FmGeZjpFgXqgtWOQCTq5mUqiWUS5rDHDasBpWA0MhkeKIDgnHnvs+2KlpfD8OZqN1Ui8gv92c84Y3UIoZEEJT2Kuu+EFQ8TY6F3WFLwBdj6qOgBpierDIvNNXnvtrzPSs+/JmNpQb+/eJKHg0gn65MkXnY8nC5spNSO/eOH985+2+W654Jl/H07kE090sjjO8WLxnOV1+jQKFHV4k402ZMOlY5R2KOGWBGFpzaiVZMcgJ0ISu5TYfy1DhDYCmXaF7REBVUdWuVHNJJRV39KlqqszxYyurKuY7mDSlMsbDMCBZDi7d/ckwNy/f5gA7Ep+h/QOY2MHqef5pOLHVIecpVyfkmLAAWJOUjanRFtKUpsSYyklbeTwS2omJhwgBDkT0EevNCeCRiY2DoT4E7GsCLUUZmsFxbQEqEqA03Ihr99KzffcfhKpnGq7S2KmtGFnobbuwlh2jLZAweGa2tWi9IFazZSYtBCJm+l037ZvLqnAJ+5CzL9tswBV+t3eP0D3+Eyk4pwR7Bv8WRuQ6HYr0Cc+CYfG9ZjEpfaZEKh3T9Jy2WYANS4lZ7ytPbErpyRlNbA4IzWLUsfCuAIMCpbEWAgmwyQmHFKtDCU2xQTERDAgd8fcejuztYzQCow/IwAVmW47244l6gdGW+BfsU4tUp8iTy7VBMstYgEjwmQESuKiUg4IG3BBxVIp14ROVVOrSaEerbrbpDfiqauJp1nqfF1Fu9lwcjRZ0i9/vbuNcbdNa9XMNLCYkSmq4tHtv3YnhnD+vZyjKoFjhSql027Q1/vvF6UvwG+3am21WwFpCgtTv5p77rvMxokNO7uDLiFUZ9USx786I8av4mU+K03JwMAAzefzpL19nJ44McKy2TYapgW1uEOiAP8PCGc24bWQwIxDJeP7EEclygJO0BgVBZyk0kjchQ5EAMeVBqoAypMGs1w85RilxDTXRso1UC6DTLlGqtg4XpsWMjZeUNIVn+tM2dbTAWDDevdudCbWN719mh8A8XPrRridWDqtiH36gYsBQwjqRx7pcVRGuMSmHolIi4plNlnYhhStSJzesePb5eQstD9PFrOyGdNPDx5Zv8YY0wlBhIL3ssTZK4z2uE3EJLVORlFLNm2fuHuBsM5Pc/Ju8GeT/n5U5/rrDnNGP55Wc2/uK9FjKfXl9otpegjeJ5/saS4zuZrGplkqLRk1o7WCGkVz6syu6MQec6Oym2KgWhTVY31bn2qYBTN3ehDMb/7zurVRTDttJX69fft3CvOnr25OYZIrWDzXBYTnWRyf3L79O0iieLNP/s0NnRtw9AnA3t241iP61liRMUfKDzdvPhUMDXW6AH4qgjhLgbYJDS4xosiUOfPKKyNFPJ/NgnssG6nH1y9uKsb2+dXV9cyiTbGG97/0wLcQzFdgsi6gce7QZplOZ9q1Q7o4p2d33P/ByI24zd2A3/kzOSQE7+Hhde2ylC6hNJ55STI4+KwnrXSLRciqmGifgC5AlX24bds3p5JDIeRSNYhSIHXeUNEcBXL0kV1/fPJqJmlw8NlUbNyNaFPUFf1BX99TDTOcGgIaH5jkGLLjOWJ7aw3Ygmvv5JyXuZoxfd72Jp8BlJC3b4o3Cqk7wJiR2uTaU7P6LoL99dfXpF3XzsRcd+hQNmtDSkSGH+zc+SdF099Php7odIvK9dC23tf31JKSAFCF2fnIqk6X2WsjCgU7grPzdeYlqRxzG2GnX/nK7RlBahiAnwMpRnfsGP1cWt/kAF1o+EeGf7o+iGVt+z3fmpuAStDDFwRBC7WhK5TKNoH+8NVXR87MmngRK1//erc3HkQZG2CVUaSZg3j3oYe+e4kPD9sswSRM9u17Js1T7m0QS9fzUh+Vy3JyKWENC0rouS+N6S4AtWbHcToVNVRyffrAC6OFJQzuM/zpb95XO3r0x+lq1dX1dtx//vXfdokI7tBSFlv8zuPr56RgoaRev77qS2laIq260NRoYnj/4Yf3zmU0Is8PPutlypBynFz1anZ1dEIVCsVbKGWtkYkKRHjnx8fT5aWGLywZ0MmR3PTTt95qyShFcwLsdixpRwj96GY9NOIiPXDgdPwZXpTk6NEfp+pZqo4f/9mqUEabSco50rvxctvvtO4LWUX5LQRYFqT+zdatf3hm7vJNrGEx87WO85ryDiPE2K5d33unzhK/ZJdeaPljf0Gg1hDLaucAtThmo0qR8lKk8tx+rwrQszfiw8vlWppzp4VSjoxFInbMyM0ksX957C9zpkh6KhUx2Cgga9++ZzK+z6N6fH43imzGA1O5vCGuZ7+dVgHWbQ2NKDxwzx9dFhuBnuGKOL9Wx6bbSPFeb+/e9+e/04kTz2QqFTtvjL5FSlOedMnwfN8EGg9aW2lmItL08Yefvmoq3WTnd2qrLUraiOJhbFnnoFqrHDjwvdpyYvOXBejZF8eX8Tzfo1TmGFOthmtjgXWec33+RgYBjru5zd6hYz1y9mzbe/W2M1y0UWQeJKTlcKMtEwGfShnngQf+NMk4rncdPPgX3oMPTkX1LEQzkhAj0BoSGx49+pPVQlQLjdoMDv6v25hrWu6986nD9Z5/9OiP24UR9xClz9x//3+8TIImUpbrdh6TLypFJs+cyR2dPxfoYk6lbs1qHa6TUqakTA3Wk5qoiixVLcCQi1dffbbJ902XUpDVOq45jn8+jnX17Fn/UuWG5QiNawL07ANR7xkb+zjleZkMIapVKeMA0Kkoqp3r6/tPC5HILGfM13zPoSM/2hJXJaO07WgjsB4+/D+7pYzWnjnT+stGH+rNf/rLzQBUbnv4j4cbDeqNwz98KKy4Q/VAcOzYT3Ohqt6x9d4/Otjo/rd/9dd3Y93y++77dpLVPP9CXVgauUMLOLllyx9ekfKfSOkvr2qLbbZZCHN++/a9l1Hdohp56FBbTil7ozGaG1M6smPHf76CthafEwRRhnONi2tZVQ+QzTY/dq7dskgHcIaZwCUhvAtKBcH4eH5FwnxXBNCzk4xxyptC7hISe8aYHCGmSTOibaIKxWI49uijf/app0699daPNhCi11BKBnt799Yl1EGp5PudvyNlNLxt29MNg2XeeuuHj0YRPTbvQHQZ5oaGfvSEMeYX9SQsSm/P8h9RRL/YCCQI+khWdzb74cvrGzggDh36mw7Dwt64Zl7fufNPkkpi8y60F7cqpTdLqQvbt48fm79jvPnmD5qUYt1EUrJ913eP1Fs8MxaKhlGA9e4xAwPsYNdEKyFylTEkQylEAKwgpSkx1ha+8sqeaDmqRSMBsKKAnn3ItP++yfGinBM4YdpEcY44dgp1bUJgEonT+/q+94mnTg0OPpt1GN0aiPj4iy+OjzU6DB458sNbdAzdUzX3YKNDCZJaWrTwyAcfnXtpz57+hjX3hg791VcvTJZ/8eijf1aPGYocfvtHX6loc7ivd2/doBycy68+1v6QMHRi27b6OwFK2Tfe6NxAjVz70cfj+xuN5+DBv2ghytpMNZx+YNf3r6Ckff75Z1OdLli9X96Lu+qyr8Fnn7WiO3XOMiqvgfoK6zlpU6KUFRkT4UcfFcKF5mzZD54bPnotnSx0L0728HAPL5VGWK1GmzzPyTOtm/EeRWVRKXI+9Y5T7F3B+ONG4zl58gdOqeS4L7wwejEZuFFeXT/P5b7wu1ZsHX3uxdMNQT809MztWtPVW7Z8d/9C73/o0DNfnZysNQI0HHr9mS2U6LB3+/cbst7jQlSx6mvJy5caSWmUhIe7xu+LY8V29D39ZqMx4a4wYafJCgeeTduNedxOCGvnwDxCWBjK6ILWehygOfyNH6u9vXsx6PC6hlBcFwndaDLx4LBpE7CxsSpNpappIWQbB5pThNpEaWRjKCg+NTE6ehuyly45/+4qFuPs+zacVBzjHXeU2t65M3thoYTQt9/+q16t48ne3qevsA7MHc/hN//H1+xS8PO760toOHTomTU6Nl/ctuNPX230HkkY5u7sA4bz0zt2fP9so3Z4lpmYOJd9eHFrw5JMaQvNKy4Mra0cIbKdamjGgFhFoEIIGWclPRl4bDvSowAABHZJREFUfuz7scKUq+sN4rnj/EQBPffBKLmHhjoZxiO3Q42XQTUD0y0GmG/AYLhwoAgtShkW2tvXTi2WLHkVoF606VJO7GguQxVqsQPS4OB/WwtD3mijHQh3jcmzrH3rru9dZuedP8hpi9Jdainhldcj5ua1f/gvvmlxckzTVkJVFhmewMgAtF0wcVggPivn81yPjBRUX1//ZfV0Fp3wFWzwqQF6/qEF449npbeU5x2fp3xlm2YioYlQbROJbFmqKkAXKU0XPY9VFgPTCs7TsrtCVYAsvNsksdfXaUdazrjJyy//11Srx5tqwHKOVllFdYoltcF0jVlsUoVQ5M1euVy2NUrh++8fvciUfWPEZ98ogJ4/8clHngV4HF9gGYC0k3F8I6FJ6TiNZRqwciZwCJTQFZuxkqywKm93gpsB6MtB2krfg06NlKqmwQqapOZZxlWGGuIkBDXEREKQMidxyUTOFDRBEEVTxvc71alTP9d79jx3PVTCa37FGxXQV7zYrIoyNhYleXgAp7nvZ1xRZhkjI59yK60NcQhWUTXCaMUiznSNEV5RFqlCgQb+uo7wk1RdrvnrXGMHScyxN+zErU0uFyatQGa0YVjY0rMsYimVsDJJzlhNga5QQ8oR9SpekUXljK2nM8yH9YEDsGSK5Gsc8jXfftMAut6bIsj37wfa3t5Dx8aGqeM0ET0uuNvEHJAyFXOesplOCQkeWMTSMVDGkITfKCGMIBYNCdCQhjKMTBw2p3PhhBwTq4MWcaTSIW8gNeDS6/826bfKsQo8dVJ22QjXAeWCIB6zmau1dLDET1JsHBErAcsdxribMQFVlSJVpdxarVaNfZ/p30renB4e3nMx4/yT5xC8ZiTPdHBTA7rRJMwC3fc7yaxEd5xJki4rqm1uFWvCtV3qcJs4IIRHKLeV1vYsCJArmRnbSJCQ1AkkRimszQlEEvxnEUmwiA7higqtmKeUlKAZxW6kkQK069pGK9wp7EsWFcpiQhkyvqYgFgbZBajgLuXcUMxWsgxlERjOOWNGIJ0uHo4NZwwrx2IeLWXIWwdKI4W5wWrhybiMEagiMGoiiQsUWMiJFeqoFkOYE3Fr1SBog6DFtLc7+tQpBG5ClVCX12OlwPVp9POZBPRCE9nfD7Sn50mSz28iCHjPGyX26RYy4vkEQW9PTBG001KqeFrZjPLA0sRwF1weUmEh6GJCLW4UwxxtbRSjlFOUhsi1jNRdWHNWEk14YsqazvKevTDLO/nZ6KSeMVLhYggmIUxRonFBaGJsSalSMS4eQ6SjtQiRQloq0ewTWSuHird/QcLoKMStTSaKcgY5PiqVgunu7jQI2CefHL5IC9CY2+PTANsn8cx/cYC+ikm9mOjaT/78zwGee66H5PPIqYF8Gp3k1KlRsmkTwOnTLWQ9AIx4hZl5XAfO+OT0z6sXedKMQx153gFOT98StBjMTVq3rmBOnABAcJbL0+Qz+Pd/qSC9im/2W6KZq7np87afz8CNOgOfS+gb9ct8Pq5lzcD/B6kPVvCV/7fcAAAAAElFTkSuQmCC",bY="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAALQAAACYCAYAAABNo8N/AAAAAXNSR0IArs4c6QAAIABJREFUeF7svQmUZsdVJnhvRLztX3OtfZNU2kqWF2QMmM3mAN3tpqGbRmJfBhjDwBG2B69Dn1aqafA62Fi0D2iaHvf0GWaQu5k2PkBz4IxtmIFhRgK8SJZdJVVJlbVm5fZvb4uIO77x/pf1559/bpWVlqpPxjlV9/0Z8WJ737vvxr03biDcoomIEBHL3hMA8A+mmyciBEQCppzKa6ZcSVE3MS2yi2umm1c+osQm7a25Y6j88OB43ETE/fqajf+Gxv0S3LQyIy9B2ztq0gGsX8MMPIoz8AgxLf70yFdh+Gifrm1m5tFHYeaRR4BpUfwRgkcfRUe/mobrK+tm6sqXZZly+X5dTItUtl3UP3z/zFdfvpmvvnxMXf5wf4a6PFx/eS/TUf3djfG7l/4WSLc0oB/tA+Jmz/PTn/gE3vfgg8SU6y6vmd6Mtk594hP4zIMPElOur7xmejPq32kdw+N/4sEH7Q1/nXbamW3ef8sCeoZInLpBQH8CAB78KlCZDqa5z3zGzccbvvrvM33Kvz8Dn4U3wLc7WuQX10yL/Ov3FPVxOc7bWvnh9oaf4XD9w+VPveEN23oR1ht/2W45N0zdCweP0gzO2G1i6yUpfksDGj7zGTFy1tYicjXiRiDo4lNfwUPReDEfTzNb7tNRDZR5TEel4fuHy29W/3CdG9x/cXGRDt1112pA38D4VzW55g16g51B3AP0br6izKEvPvWU5DYOPfAAXXzqKWTKv8trpqP6MKq8q6fddvVNHDlCC7OzyJR/l9dMR+VvNs7N7h/OH65vo/7MxzFN/qN/ZHY6/nJORs0nAOwBerOHvNN8B2gAB8C16SkAeAAAmI5KZR5TTk/B4jMRvulUpc/xTwDAOQBgyqm8ZsppOH+4jc3K7zT/enttAPriVwG3ugfbH//q+Vo9P4cAzB6H3iliN7n/wSeekHDffesAevXNaySEU04wBGDKksUzAPdVroqDwd0O0IeYy/cp/y6vmbr8gwAXLxXU5fevmW4lf3how/UB18N19+sbbn/w/mfPnaPZZtNsNF1bGv+pYh44rZFwnn7afOKhhzZsY5cf95arv2Vl6CeI5F+eOaO2PNKBgpMnT9L8mTPIlP/srpXCU9XqyPqa09O0PDeHTLl8ec30Rtofvmcn9b9w6RK9WKno7fRj5Pj7czKqnm89eVI/hLgH6O1M8nbLOkDDjQG6fU5h/YQmptwuX6dPLctvOF7bEsffbl93s/yCSe2L+7cH6FHjL/82EtCwB+jdfIaubgb0M3DO4+tz5wBOnCioS5uJwMO9OwHgXwrEAwdDb3FxEcYXARbHwVFO5TVTTkw4q/8TFhcBxsfBUZffv2bq7h+4x+UP1T9c4Zr6htory4/fPg7ta1ftX3aCfKfj32jJcOLEOT2Db9zWV2DXAbBOAzflk/lSdH7m059WT58MHKCPwFGYhfOOOgAd0TQ+q5CpA1D/min/LssyLdN0K5VHa5Ne0/2hCcuwDE0ofg2ntGEpaAlkynnlNdObUX6z+Sz7tgwASS0zrV6Y73T8g20Oz2fzyJF8BnEP0Js9mJ3kz9Cn1TKcdIDeLHUvXcHqwf3ElMuW10z5N//9kIrEVCaCUXWF9Rol7Q4yHZVf5jHdyv3D5Yfr32p9++qHaNFcM8+O+9lGc7CV8Q/Oz3Bdhw4+kO0BejOU7TB/hkhdhEv+lqoZ0hqMumfM8+R9aeAnYgQoawDQAQCmo1KZx3RUGr5/uPxm+cN19svXawAv2NycbXrphvOwhfFvdP+hgwf3AL0loO2gEAO6c+WK46hX4Arsh/2Ojk77XSkApmsT/1V2u+qByr7iBRkC2Bq8djoAtRoA01E3rKC/yK9BDTrQcZTTmvo2BfTqO8r6FCJmea4/6y2kOx3/+rMD0JqdzR5/7WvzHTyur9mtt6wM/eYnn/QaDxxxAOzNzWNlepKY8u/29CTV5+aRKf8ur5mOyneAXuyq+7x9QQ26awA3jLek18OwUiGmXJ+uVEj1esiUf5fXTPl3WZYp/x6+fzh/GPDr1QfVKizYXD+TLKc7Hf8goMvrkj1EMJs9jnuA3tW38s30pKfgWCHzzgHAdJ/y7/Ka6VbyAaCxHHt3q8jVl8U99KMKMeXf5TXTkYPqAUCF36x+bnnNdFTaZvl1+zM1RRlY/bm5JNnp+Ae7mVxbwHBqgpi6F3Tq7uRxxD0OvZuIfjORp699ORzdxiSbSwCA6dqULj2HRR6XAQjGxuhYYrz9USPyIyKACABiKCin8prpqPTSlFdxgj2d5v+f1HG6tDTwtS3GFozdsY4XXjk3xfjXptXz1756Nf3EffdtuPDczWe9nbpvXZGDyAsWzjjELbBDUZ+OGnwwMUbpwhKWtLq0jN2xJjHl8qwn/oao7kWBjBjEw/AcrnMY3rtdfrj9sj0ec2K8/I/bL8albnywrD/WLNSKA+Pn39WFJexOjBHTUfNXziVTTpMTWTKDe4Dezou17bK/Q+Q9tfj8yI96MD5G6eISMuWKy2um2XILx8bGIG21MWjUXX5vwdKJfRX/tqwZZphgjgl6FBJTzi+vmfLvzfKHB7Npef7OJCxsF3fmaYJeEBJT137/mulgvkoRF7TOn+rM9iIhV5gTj4vHp44ddubqwfE7gA/NzzBHSHEJAxojplz+0Pjt8QziHofeNkq3ccPM00/7Fw+GpUwwdOcaW96KrY4BPfjw3Y3NJtwuA+9QrVnUlyQAYVjQkWkIgUM/196/pkAfvevVv7WJEEmCS4GXf37uYim9929kg9AymPqRvhfesK1yeLqGTZurTZ97gN7a89hRqRl62l9aqjgOvQQAY306qtIyj2mIAlMUWDzyfmq1YGp8yjuqydXHSl1eHZbK3fK6tLoM5+9oIANtbbX+sj8SEGOj87/tLXWPNhrXx9Pv0KLVDtCD4x81X5vl16/p+LE779xY173TSbhJ99+yMvQMkX9l+cXqqHkImg1Kl1vIdDg/BMT80hXp16qUdbpu/Im1dGh8yt/fTarGL8SQweRBSDkkyJT/Xl4zHdW+F4aUJwkydeX710z596b5W2xPYoaJ1fmXusudUFw3u5djMwf3jTRXl3PDdCs4UnNZbw/QW5mpHZTZCNAbVSs6PRE2mgidNkCtXhTttGFfc8JvaqoWXHITnhwEAGkKwNSx9P41063cP9TBHBE9ImLqAN+/ZrrZFBnfy760eLU7qlyvEo52+Ww2AZaXnajlUnnN1KXy+1Xkq+Zc7zHc49CbPYsd5T98+nTQ2xeO5NAbVSy7PdEQctVexJSIjvhRMGWDajrSm2NHXd21mwMIwFqbfT6e6wQDQTrKBq/q3Hjr+J9sp1NmQfc+ftttOxP4t9PgDspu6ZOzg/p37daH6XRg25GzJbfZGtinoxos85g2UIoailWAXiSiqdyEdRtUDeYY+R7xkr50FLG+TyLLkCnXX14z5d9l2VINoHyfdJYh062U53YG2xsew3rte51c5FKmp2XSHkfEYTZ9trVkvFqVBsc/an6G52+4fLeedz+Oe4DeNTBzxQzotF11MoMHNcqhg0xdo8NPpN0CqDcA2q0+oOsCgB9/weCXoIeHhfIrxj17UACkAZAp/y6vmRb5PmnIkGkxyNWQXlN+COCQZQC+D46OrH91+8MTeb1+H2MbZ1dkpeVDDz3oWzJ5WF12XGoVHHpg/EVdDQBo9SmvCYq5Y1rMp6UcBDLl39P1w90ZxD0OvZuIfpgoSNuX+kLw1ltqoBC+kKt2pvhEVJNe0NCqJiC/pb5aCZnsmqBWNkLkuNRa0l61uqkcvtnsHaof7OwBerNZ2mH+zNmz4QtT4UhAb+TtGcaJ9EVdKmfi7qdeDDXPD571eq/oYbZGt80rK34D1ttUV+YpkDQu/KVX98JVbn/sBMGO26UzRHnN9JLMotMq2afRRGX9ZX3r7Qcr+8O96kmbp6hmX5k3LpTDKS2JrfbyTQG0WtKdDx89up7df4dP8ubefktxo8GhM6AvT0X87dw0eUCUAyLTEKVsCiHjAVOEiiL6o/DMWzsif8emlW2hgAC8Nm6D3//h9pF/FxEZA4ASgJjy7Xz9+7WLb7oskwczhFcB0OiAOVtoqyyChE+e6o3/zB1pkz0BXFrQy7mqVGhw/COrLF1hmXIaco9VNd35MO4BehuPY/tFZ+hseBmmCkB3ugC1akE3SRNCSkyEUtH1SKUaiD4VvvixDO33bnb/dvI9wi9/Yzb9zm8wk+dLufl5vzf2x/L8BxO0ZVCQ7VS5YVkf5O/9s/jYu8pCS1bnrMHZfgN9Iby/xohqS+09QG9/Frd1x9vOn4/a474D9Orpv77cK+E9mF9LMqUqVcm+E+UqRxHRp8Zf+DcZ2n+yrU5sobAH4tkfnj/2U1VS+qrKqp9szv47jfaOLdy67SICxOkHF098Z+kWMufrLAOizeZns4ZEy7QfP3RoyLy+2V0vTf4tK3K8jc5HaTdwmn+vWqG820Om/Lu8Zjo8rbVUqorIXPwNVVryiOg/h+d+K90FQHM7k8b/nR/pHv/dj9fP/ss26u8p+zQOCn4S9sMroAJjrFu5gfTbcAn+3Bn/AQTACz8Bp75NJymqMKDLvW6e3RCHXt0RXdWtx3EP0DfweLZ+y9uIorQ7N3JbtkZE5rpM1wAahWqkmdRhhCopPsdJksCfHLj00RRWc+ijOvzVfRQ+t1mvyABeUPFrrqj0l0aVlQTzr8snf/Gv/YX/DaAIov4KqMLjcBIY1DtJ/xJegE/AtT6g8YWHlm5/Qzn+a45Drw0CX84N0620vQforczSDsswoKl3jf1q3EaRwQ0jG1VdQ6GmM+3pIFh5mMtpAn/WuPTRFM0K91QgZt9y5XgZUXZVletpLT66/9xnAWjkxt2GUZ9qSe1EGh8EfBJOwQlnYt9ZegRehCfclh3m0PjC9yd3vLGsccnm6ShAD2+o2WwDzVhlankGcU/k2Nmj2vjuN1+8WPGbngP0dlKQ5d5UVBnSiKXw+/7FjyZo/nFZlwLxwi8tHP+R7dT94fGz/yfhaJRKwqsGaR/X9zqow7+Hu7ZT9bplhwH94+kd31EWvmp1mm+RC2/UmbBtlj904MDmK+6bMqKdVXLLytBvposVv9cHNHuR9noAhTcp6DhGVsUx5d+Dn9imUJ6X5V4Q+La0/HGZ/+Sf/c1VgCa8/N8t3ek4tFCKrNbIlH+X10zL6U8R5f809pU/I6B1YoVwfOVCPfdjsA9+pR8UZ2ePjw+fWM2hfxzu+w6dJqiCkM4vzOc2CuywiLGRSDaqP7VIL30I9wC902e14f0M6CqMuWBbcdyDKKo4ymnNlqioAsB5UQWagB602qoRBJD2veNk4NPvDQGa6xk3wRM18s4yCtmxuFQWl9fXY9haWML8VW2Z/8OtDPqn4QC8Aw5vpeimZdYAunX0O0tfwTnW2kWB5XGX49/KfA1vMatFk0sfWusqsmnfXooCtyyHniGqzMcL5ba3Lc9dE6VXyXNPUemHAWACoCf8538zRvOmLVe0g4K7BmiCF3+qfed3ll2bNZ2UwnDHkfdNxyx9bN++9cLo7GAmbv6ttzSgr8YLI7d1yygiE8fIlKesvGZazbQfCLFKtcBOSJ+szX74lgc0wIvf3z7+3RU/oF6WYkvJmKLQDo7/hiAUmcWP4R6gb2jutnrT2y9frtr9DcehdZygikJi6mTm/jVT/p3EALz7kGk1y/xA5GrQ4bTh+/b3/Oc/ktzqHBrwxYfax/+B9Gtksg62PRlTGNjB8Rfzu1qoCKMIkjgGpqPmU0d6YQ/QW0XmDZZ7O12uZrE/OvDGBnVWcumrUHhBSpYdngWiJ1pJ8AeTl97Xxmzlc32D3drSbbsmcgC++MPtY99tIHAv9pJnEku0VuSIQoA4AWDq8N2/ZjoiTUTjCzOIeyLHlp7uDRZ6O1E1Tpamtnu7n+VeKKQfJTaqBEGEtog4+r/XzvyLttR8fpRLCJi/vjf18P3J5PPOI7pvALGgUYMRn2pe/qk5Gf/gdtvn8rsFaAXiwo+37viBNJRdC0l+LdYpBcGOZehqRy98YHqa9wG87NMtK0P/wtWrNZyuOw7tJQnmYUhM+XcOIXmQIFOX379mOpFAM1DhhMwyHwJpKZd5LrL4P9bP/qse6u8un5gH4vzPd+/6Wf5tuwZFVRJT/k2BpL9WV1/1d9WFD9zIE94tQEvCiz+zeMd/k0tFKLLkMqgrqeelg+N389OfK6aj+j8cdEFCZ+EDuAfoG3nWW77nF+hqzU/qfQ5duuOUn8y1cTNEO/fHACYrwq9BVws1IbpZl3o9azNdBfNH3vO/EeN1tZtHYvZnF+/6b12H2AGU9wQw7af/pzZ//99FLzdAw/kfi+/85yLzazLPwtTzEwN2aWFMLA4Gslm5Xme6hh+CD535PUBvGZo3VpABLRK/DMc4VMnqXdv1PA8qmXdIhAbJ2hiF6HWzTEuf/ZN9MET0X6rPfaiH+h+UFUkQiz+9ePePiVG+ECDhz6PZb/5yuPQrN9L73ePQcP77ure/if0PQ5tEwopIWi9MIG3NV/wr1yONbK/X2DPzj01O8p6tl326ZUWOGaLacrrsTMl5EJCXpsjUiRj9a6YKUDY6dByUgo7Nrmhl86aRq50oPM/+58qZDw4CmuuJSH4+sur6uRX9x0mAsiXSbzBI5TEr23rQuwZowPM/0L37e2SeY+55dtn0kn1eMO4nuC+RdGUxoPWiM27Yfx2Ya4/hHqC39ZC3W9gBGlIH6I1SM7ZTspUe6FXVmY5n0iZK38eAd6iu7OuWRPSfvC8xoFdk6M3q3Un+bgL6B/P7V3y6e57tpgC2GadTfhoeuiJbX7K+p9ksXprHtzIODcG1xxD3OPRWJutGy7yT5uoEdQfoJE0gDEJHi3Rdhj7YMne3JS4uV8Ucb32q5XkwHgR+L8vA6/vFJZlPf1x55gPd/woA/WD39u8tdzC2rOzlvu8E/32t/DUtD88kkWqHAc8ZANNi/oprpm72hvMhmNsD9I0idYv3MaDz1B99xsRA5KOJJXMqi/DKMuQLMggcoKUxgQceGK/wFZYe0R+IMx/oSv1dW2x+R8V2lUP37vm+EtAdY1YAPdGyr459ej4OZWtt9L6Nh+P3zNz7JyZWQgHuaPC7fPMtK0O/k6iepK0DDpBBQCZNkenwfNUW6aCEvNkeD85YIF3L8sCLTSg9j0zeD1lQ8ewn1en3d/HWB/SP9O75p+UcLEvTzQPfBMtJs5L5d3Sa8gu5T3k5V0xHzd9wfhSYq+/HPUDv6rvIgCZIHaA3SgrQC6/pO8ijOI7okgstgyL08uthBdiv81PR6ffd8oAmmP2x+N4VQM9VZNtvmWaYw2GQdqk75rlQB5tFTx2O7CcguPp+xD0OvRnYdpL/8Px8w6tWRwN66IngsqlXE3Mos34uVdYJApkKArIekMgBrY/yD/3T7+3IfGW3x076ttm9uyZyEMz+cOvef2YrQEajl3dNhIYaEkWvNUazgrzRoUU2iU1p4/jqR8bHi42LL/N0y4ocD9N8I0qrB3l+dQCkUkCm/NukgDIAYsq/+XllialWenraB4wsi8/odWUARqEJ0KD3H6tn3r0s82/5Wjyv3QM0XvzB9NQP9RazqpK2Qto3xhfLtiGupES21FVuNl/l3DHl+WhAcHUGcQ/QuwmOR4gaMaQO0JuGv+13xGS5rMfqgJfkJxJTLJ28wLMgafkP6mfe0pbZt+9mn8u6dwvQPsmr/+TyPW9XkFaF5y9nFTqdV+SOfTAqEFzZA/QuI4MB3YHs0MhmhsOB9sN71hDHqhmOWZ030gwos5mQoEROlP/51PNvbav8m3e526763QK0R+LKP5675xcrwnieB7kGtZgpOd+rUrpheNNNBl0H//IeoHcZGe9aWGjSeHU0oIfazjMQU5ndBxYrFgxZEqmtyC470VE3jVCK6I/rz/8PbZXe0oBWJC78UHLPDwgAqXJR1woEgcFEe9fSBrX6wU7XPJkyECrTUUksx5ffNzbGB7W87NMtK0O/i4jPLNsU0CbLsJGLg57Fagy0CJJ6HqJv+1FGhecRENlPii/9elfmKzumd/PJ7RaHliBmf1Df/xD3nT87PQVZZHFCdvJGHKnzPUUjd25L3yeeJ6YjAQ1w+X2Ie4DeTVAwoAUUO02HJYzBdit5Xg96+ljqe7O9yC57uY6CxI+syqmQogE8T9lPyi/86y5mtzagCS98f/LKFR/tjrRsrraNnA7zC70UZKfJ920Ryn2jEOurn5wHcGkP0LuJ5q/uxngr0VgAWX/r9OoHlEEGPvjAtN6m21FAuljFixEAqRyjIDGRUNejBrEe+g/D07/awVtbbVeIHPf/UA45sCV0QaVt8jwts1yOd+GVvZr/rPZo22FxM/AvfRhxJarpLj/aHVV/y4ocDGgF2ZHNRl9bNqdyHy72pF2WvucAHaYM6CLGBidDOf1RePpf3fKABnHhoeT+Hy7H1ZYFoPl3fdHcr0N4MY7ktg0kBvyLe4DeDGk7zO9z6KOjq7nOsSut9JhBEJ1QvEge2UqOkTBmOKi5/ZOAAZ2tbMHaYfc2vH23ZGjegvVQcu+PFtvFNPSkbDGgqdcLGrG4bzGyz9iK2vbREk3wL8zscejdhATAu2lpXEOzD+j1pWgPMBLXstvRU3O9ppgLcggDg5EEvRKR32hFf1L90sx/DYD+geTeHytnvivlEua58jN1DEDbZEw9vxkDGJXvQfvCe7FxQ77Uu4uCtbXfsiLHu4nGM8iPFUMaPOSBf68OpyhirARZfoSjhELFm/NBkwWFzMWsZmuYhj+tnn20jdm3fS0ewG5y6O9P7v9xC5rYhVZn3VAksI/C8FoWpVfIq/QP4hwON7nxqAPwZt+LuAfo3QQHA9oAHC/gWyyCmBbwLq6ZlklpiLCXToiU9vEOUozEvFRgA4s1kUPlk5UvPbyo0tftZp/LuncR0Jf+affUT0CCNa31lJQipggu62q47N7aG0wWYPZ/RCxi9r7M0y3Lod9GNIF9QA/Psc1zZP0y08E8pbWHsW1GVt2Wal0XIKASqC56dPUPo2ff2roFfTkG40P7JK/9w6v3/pqfZwGFwWyi7Pm8KrvD+yLLuXE6eJc2OtbIHQxzfg/Qu/wmM6BNnt/Gzax9QMONFw/MS5Jq09ARq0U9tdTVuZGCnZWEhE83z/xMy0u+fpe77apnDv0QTMH/Alfhc9CFc5BQF4oQCTtJvpVX3tS+/y2hgMiz1k89caldsZfIxZq8fg6XzQGFB8R01PzxnkTjecSU87M0ffGxer0IQv0yTzuexJdqfO9ptSaTMHSA3kSEdkXqudgvdT5mhYgNkbaykE8wNSq36H2m+dw7Wir9xq/FeKbBg3mW39cG199R8xUK/uq7szt/VaUcARh9tHyGpvV7nnohU7Rt7UbZmdDzXngv4h6gd/R0Nrn5PUSTvTy/fStt1BN7UPAOFwmXQYIVBgM+XM0pt9yhfwb+xjv7Q5f87k9upb6XYxkJYuH+5NC7b8/GZq2UTpRIpe5GGTZ8S9PdEJ7LpBwN6o3X1LyL/oUP1etXX47jHu7TrcuhiSYTyN1pUjoHUF5Bhzl2oE2tEcOxVgQvGiU7gcaKyUxFSQZz4e/ugSRI8npbpXdloANtBfBp4CYH0T8VXBhjBAqBYEGY3EhUCgwXRECrkcVx/n5jz0/qLT/bP1ftviaVep24IUU3kcA0svDZeupfUEamQqEFskBCWgGWTZkEAqwLTi3RoiUiURzSgggcmx9JQmIEnL/djn2xpsPCV6N/cmde8Z3/RS0106ix0aqa0wIUDc9XOXdMR81n4HnnPoS4B+jdfKN/mVpTGsLRx6MNrHFqKZ2wGtJOFS/z4igwWJE2qyKDuH8wBaVAQmAdu/kBsoCogIYjnBPjtYjBj4K3j1vGo0WmHAqd88laZGCTBkf/buzyt56vtDgI+ppDYT0rlr5u4cD/fDBrXHLtaQuoBCFXZRnUglgoQj5laLg/5cQiCBTY1lV5kV+mlfnuHzXbs3aJlNISUVa7+lRXwnMmkL1NRbQhju2Bd3YP0LuJZgD4ZaKpDPKTI5sZAHS9a+7Ja+piL8/bIlLkJabqWVsBI6/DTCqLadaQGexnkG7UdWSgcVonpD8ZiyvnKEuAz1WvfP1z0eKKObpgoBh/3fKhjx3N6xdcfcNHAgycK+tekuGzmfscGCWgkdQxgbgojCzadbJGsechRrvIgGYA15fMqbymZhNF246vISA7+5tYW3Xc8y4/3huu/pYVORjQsY7dyTuFobeMD3r9mv9W6ZljypO0APqCF0XGT03VBxXxprty1nRmwBOiholxO2CGj6C44dnt3/jXzdnvWvSSV/DP0HhXTsYTnzmW1C+WYUG3216Jf375jMAOBILr4uOXXSrx3/EY0FIr5YnaYvaq9rj/RVu42a1KpHNE5RHTUfOJKnruNxH3AL1TIGx0/8PUniYtHaCF8sjqHJny7xLcTEWiw2ps78wr8kJis6XAioqHWBkMvAjSt5hSQxpyHNpYi1IIYsr1MRdlTlly5/LacU/muP2yTAeZdwlYtBZZhGDK+eW1Eyu4/qH8NYDr3ztcXmgrrIdtEUUXjEkFysLhqgR0ryIWcshto40nWajpePkLwrvulFW2Mzx/5VwydeNR9rmPYe3ybj7Pm1X3LcuhHyaaNjq+eysTEWZiTKXmUE52yQTYCi2GViGu2M6ktJjlTZHApmERRgF2s0OFtsuBiWVpbZGpA7zWSEoR02K8RY0sN5PEDlXFBcuHjK6yBZLNBSVeao8Iz9M9D85bRWu481bmD1R05mOIe4De0mTdYKGfb7f3Yai2BGittYhQVFVM+4BUhDbrUaA6xOwYjRBSWurZhsztAcKBxdUN9u3m3zZKyGZACwSFbRPARQLJx+YSCGltnvmYe+OIRloPFzJp522wjspuC51AsbCwAAAgAElEQVQ1mT3zeLV6aQtFX/IityyHfju197W1umfUDA7L1KWUrVIVqUxPkTHTxIdRAHWEb9uAMhXGNiDVh4qyq4Perz3GbXWrm3Hg0XBc/5g41gGyrs7pAl1aXcOKDG0BraI2VMPzZEFanVcwpyYYjIAd+SNx3hAvGoN8/VXG5hjMlT39OO4BevOZ2kGJtxPt6+rk3u1WERisiZ4eJ8IAja0SkYfI+7GYWZsGS8tCCIfoQuMxoHJYaayvZlhRKwyrIbbbq62WL1405L2vTlZGCUQZBbJtU6qy2o/IJEJQFz2R5r68mqsbd0oqeyUze/q3qtWLW+3lS1nuluXQb+l09qdB0Af04DJw4+n0MqxinldRShSIEnLjGaIAUhozmZ2yxDYMZVAa1iZbKYQWWAB8mHMXfxsF+NV9GF5EDi8yV5cefSQK67ktgbDMiQ161mrFIgcKTFQFroAKYkTDR3trEsYKA5SE3gJJugEvu9XfOKWyr/wW7gF6V1/Ut1Bnf6zlKQez/rHF5VHFw0cZC82fZiCmvFkUbV6V7MwhDEmQzkiChpo21odYCmUlhyErkUC4PGc3AUIEg1JY4e4Ay/YVFMoS8GtQWO8cLXXV68wA6dIA0/8CSEYroBVcsxYOuPymGJJMuR/WFscqC4FWoDAgwSjuhydb1jMXleeZzBamUiU8ImswDbx5BvTg+N189eeC6VYekq/CL/8W4h6H3spk3WiZX+h0Dhgp73OfXgUkNSBT/i21QaMkMR2unwEtU1FDyZblQnNrISHUfl1k2cG+RbCwAqJAsgKtNYLY9metIAY5IFpjV1gzoSAkNqhIy9jmDBJEJV9fpdlmk7plgyAC10CW0N3LNnbHnAsJWUiwyF1g3xMAvsMKQe4lAvfFKDg58aKwombRstWw8OEQ1iC/dRkbVnhrzpq0mci0Oh+Jnv3tSsUFeny5p1tW5PgF6hzIU3DGirXPSwEYzeFWiqwBEdc3WBVpXltxeOB8Hyxk1MC8r7ZjDsoqM6YOIX0OCoKh7MDOf7SauSZfKyDUSJalAAapRiKBvLRz2rXVazsHOkLm7oWVkL8ASP2vAF/zewSWX7cin18YZ20vAV90it8KEti2obiIvBunTP0DjpIKLoCU+RpL4ypNPYCQkqwxyNS10L9myr9lIL7027gH6F19md/c7R60viwAXYKX6SZJZbYmjai5JVV53jdzwcw2bN4PLYYOlQ5pfTyzJFKwXk7a8ncd2OdiUAFB2H8B+vezJqW4YVBL4ZxFOPbpSv1o+3WvFBso31ehrNTN1fXrZ2cpQmzL0Js1TkQZDC5qIAmgAPSatJFtlRE8xBCU/dK/xcrsZnP7csi/ZTk0A1r78n6exDWPx2hQUoEuAT7wgLzc1oIcq+zKUQKAQFqR6CZYe8CpzAR/tsFRB2hri2tTgFAJxg6LCYwsBGONkJI98Vgq0c5Vz4ku/AY4h6U++JkW3nLO555969ijDlk+cXI4ujwpnCdd4Zffv5fd/vj9KTpU1Mc1k6C2qngX9KDp2xiQUkIXswViQA8DdDMGMFReKPvMHqB3+XV9M9HBPO2+chSghx8gA7sEuMqpFtqgaiADXhAWKQPMRd1ocqHF2E2zD0Ygxp+QgAJZoycZTSwtC16kCclFBTNiRuOKUM3YZOZcrBWvX3M5lpnBAZl/OHHCWMt+qmStZupkGvYjlU7gsCyVG3R2c/5L4U3KAOcXCX3Rkh5dNOL6aMozFZOgEDkGx1/MF+vytKMurRGp++JanyF4VjzzsUplzWlgu/yIb6j6W5ZD/3S3ewgkvMoBsHANdi7CxQNa/ckkYxClJKYqtzWlqcqAKjgln7HiWZNkDcrwILs8O99nh2KQCKQMKYmoWS5wjs8s/5b+ow7fxG8AugUhw94t2pidlsdsD4owfQdrZ9ghlrsRkRUXKMEgeztb6fqfG4F8+As3Zy0jn+vkgxaN038YYJDzbW1RU7M6t7IcD/DGMgBK/ALQg+PfynwNi3DSZs88Xpl48YYQ9jW+6dYFNHUP2RRePWq+BiTgNWopBrTQol68BNb5OKMHBnMxRpk9YlEoMuQ5FlhoNhyUeKcLWtCAZJg/M8h4UcdYY/AiR2Jy3JPDTbPI3RczBkQE9zdOhv2dAVmsQGQ/ambUboHIBZDIsgpPIH8XyErrPLCLvEJ9KIxbsZIwKO0i+tKBrXR9Lb8AeSTnRu327kvvTop33WP9nwZkyr/La6b827fpF/cAvctv5k9T95BJ9WuKZlZL0eUDLTlWyY2ZejnWJFHNfczJkEJUbDEE9CfzXjZpDUnhSSBDrI3TAiG34PR2FhXYAsB95yBReK6xhoJ9QPqaCrCs6+t76Ln8Nd56GgUqWy70Bk3dbIRZcbXuy+JoLOvsBBLxId6KiJyswH3xAtnzfHU1R90iEjGScepIQoN5KOcsuCAd18WcUc9lWKYe+sIFAX7hcazscejdxPRP9HqHpaA+oDduyQDbISQw9SzVIMYaO70HuaiCwDEPMcozG2apraFwqooMEHKJxPoMIq1512nBjR1LKxUX17UgpvB+66fVvhcCFDBzZzoqcb3Foq+of3AN6dSDhQoPNYvRbBskoSzymc7oSYV5FMgOCOQXr6utXTSCUpaYdADzlnjb5PXxF1+IAbmZL6VkMcvRkV88yr7wu9H4C7v5PG9W3besyPHzvd7hRNDXFROxmS/F9VWP0lSTGusSaMIDMUbE0LZgjPDiJAmkwBgRNfJabECB7FRwbinnFMgF82e+x4lYX8ttFLeg24I1qCYZ3uHC2gu27DCD74O/WFeuPNdSE+JEIre6HBBhlAJriO3eAQohg5B6ThcOmggpMYTXjLSdEtBrV33D8FlnS0x/0SxJfP53o2gP0DfrrRtVz8/25o/kIuwDerOWrj8wBrSv/ePC5FNSKMnyK3PETJOX5Wxus7oAGQd8LPXaJUu+3g5RYR10ajfJ4uvaMqv3vgzu2Sp8T4g0spbD6fJII2Cfg7tOMY7LL0LfijjoNuLkdfbpVzL0kcWK/lYuYYlslmF+KQnwBRTSrH3hh9UaGwMcyXz+49H4uc1m+eWQf8ty6J/t9Y5kUj9QTOLqB2R1hhIDKSGT/MTBgoeWzXie8Aw1MbdHWYXAnI8Nz4wFbSyk2vLXudhRLYDYa6Ow/BWWQbcRlS2FvEG2b7tGMoLVZM58zSY/6rNZd6vb8doX5d16jisodB9OpccSRNFWYaRhe/l1HTVXZ/nFcT4jg34XbnO4WzxKIUQYcJw+XlkWhnFeaxJgNw/McxzL3wphSBhNRnA8Em1c8AZ2Exl9ytvwfAorPvfxKNoD9G6+sT9LvSNxpr/eM6gA0ZOSzzpGz51pVX67JVunwbISjQRptoYIjQc9UkfAGGQVQcH0CsDGSc6qBuaazDaZCHYachoJ1qyJvt9FIYr0TeBO6u0PdT3+UIC3ryUcuC7Ll8oY97kg5LNf+iDn34bYNcSZTlj77bxLSDP4tQ08ZSUr7CwBLwddb9xv9razXyBBqcqlsh7Hh5LsGCuJTdzGgHYqdVbSGY0kMmMyYyRrTgoVJ1OuT/ni7z+Oe4C+qXh+4okn5OK3fEtwCWoVFaho0dPHlxFfxQ9cW+CYXtoSGZaGQUpjjXFGClaRGV8YNMw8DQZaHFNa3s6LLI5dIKxmq4nzw9TGYpIZ1iT3xWMnRqBhzTKzSVZPu0Wbi3lUuL85PZosbH59j7u+cz6rBYu/FS8FMS0Qx2oRVpyzHO12dbOphkHklHV996T+/vN+HSxwy/4O8b58wXw58CWrCJ2Nsu/2xypFYjkj8ekpq7DjzPzuZsMOVPyRUdKSO1QXBGWch7z3xZnPuTSrTzCzBjJDlAOqJ/9DFJ29qQ90lyp72YocHz19OjBTJ6PMQs2aNGR7HfqBhV6iRSPMZrPudCuEV3CIXB+pbg1leYAtFoAl+zRIKZW1gWcxBFIVqXUkpPSQZBVyvV8IWbq3les7BgHonNDwS8CG577jUGEuLMzUzvGt0AX3zdWMeWbomgPE9DFsNnQhLUSYgUXkigNT3/eDOIBNYT5nPXV/Rzdbyguph3m1FBSwpprt5CxN8wsi2du12HRrERKL9jIgpRpEBkg9jRgTmBQtBmjRyzDvsvnIp6BuTW6Mwi4DXhjw2dIjCn2oCDLxzIEYzop62PO6V3rH/+Ivkoceemg9eWWXoLq1al82gGYAL+zbV4We3/BV6ANmAhVlSW6SIDVpJgD9Wp2yDsSQLvkLTfmKZQ9PGTBLUqkQM1MTQmkhgLVtvrQyQIk+aBtIlD6R9QtLX+E0YS3VhKUCVU4edmYUB1rSlnKyZK3g/8BYBjGDttjIwpwVHPxZpdHHOdsr+zLF2i1U5aK09JcrSrjFoPP16IskTlvCdRa8n/XUBXdno6VxTJTNPVIiKiUQWZByHxMnzjhfELfCRJug9HoIml2p2UHEIFBmCDJCkVphchYxNJiEF5/GGPbC7vBiQPIZ6gbI+LiE7IVi0Je5+dy9cuy8yeMwk1EAGQhDqQHUvWnodeamp3sz3NOXQXrJAD3DaoIFqHlJ3CQ/qjCAjaU8wqAXd5Z6UU2bWE1JSMGPu5BGE8xj4oZOU1yM83l7sHki8bJv44cgbC55ecQsRQAwFw6RTCRIBMVTtmwYblukDhmjEaWvLOwHg2NIoPiBFxaTvrNQYUZ0/yyH5uq7Hjsviv5jW22C3ExGHn7SWytfOocIofiNc2AvrNpOwGegsuKQnbPZr4T1ivzxyLWAq+ThvCXBQlLoGdMAlBW2OhIfKQMYg4JYG8xIgOaX3Lhvi+G3O0uROopfK6IGexlKTX91bCl/oR1IdUD0Yiv3CxO0fdtWFfJECDkIqAaZjDudLLnWnrntthsODLnTd+JrCugZIpVeaDcbtXozNVnop2BF6Pesgm56ZSHH6oSuiiuYqv1j2nYNZUJpjFBRTAuzcSsasySC2mQYisq8lx/qBnSvAX4g1hOEVUWyAkAV/p4TQkIW27m0y5ooRlZ38EHuEiM01miBMQNUWZwErZtIUrEejvG7SqPgMDzEfPpoXvF+G1jube2BDG+rdTKu00mX1vFC+C5qu75ZtnhjS901g5w3HDhcC0yMsvNWypaw4CvEkMGYI7UJqWONEUqImmewKdhS6iyONqNCFOkyu+C1s0TpFbtl3JsfW6HjqpGnpzvexWypk1fHdSvyDsqla20/aNbjqgDseAvS10Fkg2rF6CzwybcW426gW0vvOHBg5NmIW5un7ZfadUDPfPrTyr/zgSb69fFcQoBJqjGwnU4364VRlk9MT+f3A5i/utabzmLA3FYI5bygPNSsfQPotSsqjGTkjRuJnhSUCgpaL4x19+WZ+HYw1PQEVNBghVhCAGrlAhYMmZ4VyJKK9EFMSIMNAqtzsMsGVc9KQ7xQdLjRuqLIG5eWxsDaqHBjLhw7V/ygB9XIg/7N/TVbuSgsHkGp0Sind2PDxXXwln7Rfcth+SINGB77QrSr2AnxArtG2AXyvEVCk7MXSN/eJ4QRDZ943MAixUKGdsktLojPAzNNBWoCUURotNaIPYOmo9G2LIlMoQ2QVMQCUIDBkyeSpb+NO1O52g+T+aVYtnwwpNPuwdqYiTsgr/bm9MlGavLwiDIB+LaT1IQfRlmWcUDBzqE0Wvi5Q9jbPkS3d8euAfqR+fkG6uoUEFbY7qt801Yi6lzLruja/Hz+yKlT+tevwnQ37nGgTXaNDD2r40wJqZNep2KmUrU/ntZajvuspbWmrbO0DcFYBqrbWFLqgY4yr5eEVV695QrnDdhrWlOqPZ0q1k6RmPAsTANhoMEu5MLO8+qdF0QkKLfGmCLSp/ui+6B1qEjVhMWGtLbG3wP2nyi2nfCOrEKVUSgrSrGhr1MecBdF3o3obObErnR9i2NfZma5uO/7cd29dLUlsTQyslKN3U1Z/4BOjHf/a0uYgKK2EWLZIHWBKNe8RZLFD2ME+EqKHKTxKFccKUrDfoVY5ZAGKdJlraiN1nqCRS+imm/VPkHQIDCZBdnRSG0t8wXe0shftnrPPndI+nOyS6lpBPON1mzckkcwj5Jp6BUCWW8p78JyK26ekAhp6v4W1U54LJpkXa8uvTAyWUae9Bfza88sztx3340FvdkE3zcV0CxSwFx3CmR1QmQZCrIdWQlbKoGssR+yn0PMGehNNaFarRYk2m8E0rKBjrrtjh0X1xYBTgHVe1MQqCmUfpaZ7mJTVHvx1WfSRqMhu3LfidzaQ+0K3tGV5pU5+y749lJG2DOSMgaLsuxAhvs9LfhBeZm0l3Iw17QSqSCMBBmdA+nrngvXDTNkrCK0yrfSI0MREFWFkBEaiLguRGJDjWCdHbKTv2PIrIcbZOFuJVdsdXVvwOodA+4NcgaQfr6zFg7YvQuJhK0wbAzMubtWiB5J6hFiz0oZg8mN9RTLwGsWYzI3kpTy0YCxgtiMH0SkDrGByUjqaciuaOWlvPcQjJUKVSBBNH0jDvPaO0fTQ8I4VXYuQbPoEf393dfEBWqONfJud0wIlTZlMCvzou3Y7zbyQFWTxdiSDWzaSlsfec34EufxWgnOnfNJN3ysT4QgoAE2CzVSLFvduUfvnNx28MiNMH1TAD1zlsJ8LNmvMtE0mlKr9JKn0nhhYSF97M47U45q/OgSNJLWMgbKrxtPBMlCosknWzN2cQEW0nT5pL39dqh0s+4xIM9K9OdAzPVOTU/HDyGamUUaM2l8tyExxcdIdDw6uOTripZ2PhEUs4HXsgmaAyJmMKVIHpZEviETx0hnyKOUVWWSqJohdp3E2i8vDCBfM3X461/396lIoVGhBIGaApZPBZGPhAGxLoCEAiUl5lqR4PhiwApl9rYDyk25U3tFSHGe1EWsOhfzmUV0CcISkmZLCYLWJDG1hBlJk4LADFDkjE1jyChP6MJ2VIoxA/1dGY9xXxyOTkpUjButDthSyl8zo2zCmwWGxi98TdXISD4qb5wBbSTkGuy8yfM/+l8nJ595+PTp4PDkyXBpORkPq3JMW7P8yv3hi88884yE8VPObt8wQM9eAf34a3HN1q8niOQsgJ8tgq8JGhqgLtOMDKRzM4fcsXFb2oW+a4D+jfMULfjpIcxFTXpeG7LWUnUhTo+/cn/iQPjpT6uD9TpeeuAB9K7BZC+LlclSqTDEOF1s28rB7uxffyL7xFd1mjOX4hMZ2QkvwKvxXHf57Oc/3eO/u7f8/PJELv1XIOGYUCjJ2GjOh8uLfnKcRYfVplqUFUN3CCvqTiWG1On59JU+C+VYAaEDLemU9bbbkdCcLYR5Ju9B4R3gQvJGEma/rEMTbKAAbXnrt0DhobA5cogu/rNbyLFZ3SlP3OrPkuCbqbBmFupE1v0wtQ73JBl+xI7+gwDe1DfDWvbYjqziY5CdfnHLSViKIi1vk4BjFiFlIaZC8i+mLp77L6WYMEPkJy8uV0Mv2m8sBiJun90up+U66MxCmHthNfLVWMY7Kr7KxGYOuKMvtvVcBgd3Qxza6YwbRw8bEHWfvFY3XV5KRTv58NGjrK5Z6czM4uKYsmP1eDkRxss8kwUooHc1u9LNmumZfOaNb9T81n7+UnaXFSD9PLl48Mrp9s+99rUrb/fM01dr+Vjt1RLkpHsy1tYA6bkXpvRiqs2aY9ikRT/QcA+ral30DIE6FfpcBrbFplyn4rLKdydTeJiTCyt+c1JpcnefcvZJdgcBDbtkOo2G06S48RiOf8SAXS2yXHds2nrfirGhL6UUbOEjcWNjk4RRNcf7OXQCr7LrGp5tGP+z6qD/5QF9M85cpIgCmLBpvl+K9PzMge0fW1GIqRBm1K1Gxptgzxiw/uWZQzd2jNx2AY2PzPYOS09NWrTdJE7mQ7sYD+odWWbyrsJ0lsdeJ0MZqVR1M+R3fUHqOH3hy3+RrHBeIpGd75wSyjd1z5991zSbaQdeCM6f7b5CeOoEbzGSnrTGQi0E/0+frizXSdG3Dj9uslZVtXeXIAxLpbFFirWky6mEJVbUOhHWWuVMFCxl8msikB2WGYGrFnF9IXjACXrrAPtalGQQC3bTQ5QcysDyFkUh2J1vW5x5dV8FVA3coUhNG6K0meHpupHPKxH87cyB1UdTvPnJJ71DR+4eNySOa7Dn3nvwxk7LYsb2zNxcBDBdy2w2RZTZseXk/LvumW5vZx63DGhezNk8OC7JM0D+1WUD3Q8fxXiwMRYx5o8ckZP1A01PCnktQSFTk5vA6mar0Zm5D1etbN99Jbndy3S14VWff8cBp9JZ9al5ZJ4aeZp+EwFGZbBB0ibSi60/vHg89FNF37sW0Byp0N8nMnPY2QX74QIIMTVCL2spF3O0PWe+5sWdBJQGOXSn4OAxLlqcMzSw/RkM9ePcbWdSd6usswpaF4PGGZL4ZXSb0QsRhn2YnPPSyt7CHXQk1HTEt+oYEcVjmfz7iLwl0smF8GjjqWGr4INPPCHvfO2bpqgiTuRXWl/80KtuXPfMwH76zEIVKtFYTmrCl2bp1F9+6vxWTe1bAvSvXIyPCyUnbK6veV60OPOxR3swM7Nmdf1rXTqYLYGXioS9GijNUqEXaXFs6e87M298I3OM6+LIVaqlaXyfCaNnPjDEmcvn8CvPx8etsiu7UtwihqgpNf6Z//EPXvncLz/8z4GgNrzFSSAqX+NBqe0UW9ScCs1pEngjIGUcU9kAtC2ZnlGYsY27f0aJs7wJlBwZqTA9cqeLgOSWTxHiTzAoz4Blfw3m7IV75yB2thfLrnRPdTW49p0DETsqFf0QzvLdN5O7fYy5BuEJo3mbWOFaatkZy/ka3kAa1d9qhvdKwAYRxAd73v9tJRmVU9e31b+cuQ3XWAKZmel7v/Fonpva+4/WvnAD3Vh1y+8QeWdfXK6xnJ6Z3G+G1bPvmsZNufWGgJ55+mk/nTh5MkAQy3ly8Z4h+bbswbsWFpoNM16JTRKyTbbbTtEgs9XG1ehF6M68kR0iV6d/caF1t7ZknvvrPz1biiDDZd4zm9xlBJ4CXdzuHOkNRhrsYt3MffbpycnjWpjX92NfsLa6780mSGgd+OCNo8EpNJaF9wJ0LhqjNLxPkLk2IsYadWzYcUcJ1sgYBjiLcuRMygw4Xgw6TzjnCy28Irodh95ycnIRe+N6+042dqH9CYxFBhqHH0fB1KnKWOFAkPf7O+jO3b+PZasCrOzwybEM+u58hcOUM1K6PDemofbLvqycB7NJ/tDE+zmMBxbvsYhpoGl2MhFfLvYp6gy72V9+YB0x4G3nKQpN/OrAX/rczKFDN8OIgm+/fLkSmMYEoZqGLL/06yc2Duu7LqA/ePlydd7U7wJPtu1C+8oH7pleJd8OzgGLI7kOIugbObvQBUQ/HTvnOPPIcEbvPN97HWbJl99/xwTrIUeuat99Nj5hpV3Z2V0qqkhiBEbPVq92nvrcPcG3kYXDozgCWd6LTZVAwzigaAhLXulgz05qfG6947hf1ciwlZhQ5JZMZjlErUSnMuOFFRnjODG3wZEci8XfwKFD/cbZ848veWse+xMX3L3cp1UUum6cKXyNi6C45XXxF6eCdH7/xWlYPG5lkQVjdvLbPDzU0GQMG9oHDI9rps0D0QwyvMNpchA6E7H8G986mZw9SXqhCf5iFIfmfBYX/t/Z7n2+wbnNgDfqea33t995krxzhy+PoZw8LKxZ/tcH1ndlHQnomatUSzC/W+bmWs9cu/rho0dXycplw6yXnJg8ud9kieTNRDomgiQFq4zuLE1cHqWLLO99z2zvmxKK/n5YDh8c1LueW2iCH7xeEwT8kB0geEO2iwdqAiKc79r26Utj3mukxEILMrR/xcmdhJ6wJkItGgpEDYmCYsfJQGuFgEqFzOwsciyoGEKh2UyJEp1lEQW7sCFv+TCgGGvCkCnucyIRf/oLzjpSX1bqPBjozN3dTnTpFMi8mYCtplxECka5texTx7tzlSTyWM/tLIMAy7m08fAhQaPGX7wyqyL5jcaNtTIktV9pOui0kGSSqSR4ys/5M2/AKsUrkguVI9GT63nWsSx98lu+705KbfK+227yhoCZGTHzk29pZBXvGOU2ee+RxldGDWQNoN92/nxUkfvvA9JXvKXoyvBCrqyktAClk5PVoFeXWdKTiU4UiorIrvYWH/vGSZZ31tUnvvNS73ViLjv9vleOsUVpZDmeoKOvf9MrSNvb3Y7+FVsCiwO8+8h4lk/FsdnFyxNwuCfthPv0DyX3RUdEZZ0R2UNDFWGhxlZDIPKlEGi4wsJid90O7c4LZIOe+3P/0Esig4KVzbz5ivXFjEDeVeIig3Jh7daaLvhMwdUHLdu8RcTFlnHcnMUVwe27DVwuGhOruK3g6NX8ZvX3Grh3xHXCeV9jZoTtEEBLS9szQhSRzdZhcRvGGkXE0IhxYWi/sljlF1kgdRsd8bkQS5mVV8pGS5s8+cHb9q171grL0a3bXne/rNClD+7blUOG8JHT8/U8DE5YML33HW2eGR7yKkBzh7JTrz9lrW3ddiC8wKbq9T4DM2cXx9TYWDOOE3DfaU1G6TZzK1v/3GJr5qGNbfXveG75ThWF8sz/9cnT68nQ3PY7n52r55XaqwXSNHM/Vksp9ukl6hklOn4Wx4nxtKdUYzGMj3VCeTQhkwspOBKdS2s+uQZ4Q6E0HIzWUChJhgIxREMBR/TnsEkrpuh+zOcVZ+ehL4ALkOSifbFzPQvYBYjXfZdXOTkVPhrMmF1U05XIL6tn3dnFC41N/0QBF6SJYxPEBmHJCFiwEgqz5FBoyJHj59Nzc+sjyjFlYQIBK849lYQNLMw2Y/iydBJOWaHbsvts/fnaV0ath8piLEP7Nn4gstGT64kl6+FpG393oO5V6yd9X1/5tanVUVFXAfrd55dPWhl6cdd//rE7kY9vXC/hzFkKAJbC1JMS2c1Toexq4YX5Yrd+18GFzRy+2cp4yWLDHlYAABzISURBVMZfl9v06Y/cNr68ATfH98y2JmJtj0uMEjC9LoSyW+vWM6xe0k8vLuoD/imUnaVI1IO69rJ9C76+LwnEYdZoWPYiK2Isr0gYgwBn1RfzerAciRmkRPLA8Njcrg2+ZjM3f2/5G3Ed6AMzMyyTDr9Aw5O4afnS98nJ4C66EnvVcXAE3maWQzEuVoFmVmKaC8qKw23XeYGv73pUwoiab+0YAvIXire2u5lRGq9UjfhKJXW2gOKv/NUQksX4c9W8+uxGIH2QSN7+Yuce/kR94ET92a1a+1juZqvyNgDNRfFt55fHQ8+70yx1nxlcpK4AmjUVlAR3Ypye3mihxrW9/fLl6liwf6qTJLxt0+SGTMocOm+Zdh16jx86xDL3ZuZLfOds77AlOAxe64sf2sBv1ok3lyCEFCyc+4weVgGWk/HmJ8kbq10LY6lDL6qOL3jmVAL2pJbQtGBii7JnUGfkeVYYi3aE6Zs/8ezcxOZraYuQoi44I0vvLLIQcSBdZ8hw+gcqouyzqwcZ4zboctCYwfNZXMi7AiB9EYRXoqzuc7KMi5/OOwJRcdh2wUtQXhMaUCK37OOhrSVf5siyOus0FB9vxftk3SZXt7dxFeN3p9kKwlxLJAwliCpaqEuiCnLAr74jFEpMggwvVmL1gm9svMqoyVuEUWQIyfP1ufTczGvX11rw8+m8sHwcCPcZ1fr8emuuYdAymL+wkN3DjlFJluUit3FmVTe3rV6Qid5S54Xk8QGr8eD9LI7e/s3fc9iSmvjgEf9zJd6uA/p85/5ciKXGV/7m0nqaibJCFk06994b1Ox+Wjaz1NSaoNezcPWqnfnsZ+0oHfWoN5CtTNXpk0etxenQmmc3e5G2/Ba7BcQj/rxe8P2q57cBpjoC7rbCHNceTLGzlJGYWKNT5nYkxKbm7350UbYwFifbsycGu96zmc6CYzHOv8MFM3Cbl4rtVfyP494Vx1AUQc6L/V5kOO5iP7AjO3Xw39zGGaWcnrvwpCtDG1xnEKxpYa0LU8euihh7riuSLaSGKhKgIjgQDftM8NeHk0CSltpeauYjlJcqmVxYFd3GiTa8V5bhYRY8LZ+LIZrb6GvNwDr4wBtu90UwocF++SO3FV52W0ozM+I9//0j41UFYSdNPIzzUFsRZjkH0OEzZOylDx8fe369umbOng2TcN/9aMzz7z3inJsKNdPbL1NV2N69VlS+9KED+DXdYcCaEl9OHdAoDkjfu9g4FF3YTFzZ0mRdL4QzT5N3FeZ8vzKtiK4GrTA4nIA+Bp7Yb4yetr5fYxchw2sGQRn7dxSfdPaXLmTx9USWUX0xJkcXeqyvhpBuMzWzc3ceRXHLNh2j3D3MeV0oX1SI6LHHnyAMJFIAxHuFyeO94c6Y5FaThuMyLEurlkMLi0EO854VWeFjMpSKQJEs37QVivOZzi9Ozn6+txFzm7lIlaV06a7iFBp6fhPRcU2T/DLc9x3fd2cuxJRhKxyqOONwZolNpG/yeDFJPnbfvhURaLgC/jLks/HBGO3UbxypMZcuAP2uC71jBCK641Dw/EYLwW0CacvFWVRojHXGtTJH2Js5sNnZm8ath3rhxJdnQHX0FU/WfNVSQqTzrcgemphMdLJP+ThpCMcNmDoIFeVkKi6CC0cdFXy2FIdKcOH/edFkGfBkjFMaF8dGMJNmbZ8ztLjWSx22Y5LuD0UQdGew4U2qLMBr3pHgon7xvmsOjKEESWaXTnUHxL6fHPfAcvh/yWHXWd/CXjIesH+0STxQPQnYlanu+hbbHmDiwnAAR+flACZFWjkXvb/ry+3YRWyZ3FxWobqsk0Z3M658+Ou/66gAccAQLlqTX3rsBvya+VkkLy43g6lmlHbSUBBW0kxHhozPB0AhQuvik3/+9EZKg7f91flI3jH56jv3RU8ydgtAn+/cb4Pq3LlpmPvE9gX0LQN3w4IzM+LhH324pnw5Za2etiJoR3FyfiODzs1puHBCv/gUyGo2q7yJUGWxkukEokl6smI8TwsTJlWsG6FqFqCWWl31hBdYYQM+Ei5H6SlJyhjLe0sl+05by/GaOWAosVqO435xqFIXtKYINlAc8MlaDrY4uhO0WLR2WhNNAqURlgOdcxBpF7SOA1TngcZUSJWiNZm0lCuSxkpNoFnE5w04189JGQawA7JkRs/LAP5FqZRqweT2qlQ0b/RY/NidbrG5rhr1yDd9zwGd54dB2NxQfmkfTC/doEYD37Ww0PCh/gprKddIXZXaTip0HC+SCZuA3bme+O3/47evbSTCsvjbvuN1r6mbyumZ25CdzwB++WL3AZNWnvvIv3+0tVX592aBabgeFkGkmopyq/cJ9McEmET76sK/+be/sfhS9M1x9M+AmD9yRqq5UMjbPSGWpFjqSFGZRMReRwA0IBNtZJozYJOegGoVAoGYxz02fd8lpDjM1gqO8lmaOVZFKBpY56843hfRHJ0PNVLh1G/7UY8GgbvhsyjibCCH12WluUDKQEMLBM0LGcwHWdxb6kwlGxnBZp4mv1NdPpxanEaOQRz6V6JOtFy5G7o3Kh7yvM6fOeNNHjjZ7HSTqgRTM7mokNWe4S9dbhNIunMffcXhDcP4snblyGz3lEc4/4Fj1YsO0G+72H2tz9qN//DR9ksBmlEPhHfBXGkvR2ETxnMNE1zGM7AgG8mVDx04sMYzb7desB3UW8ipMzP4iz/61lejgNuICs3aoDPToBXPgdRpf6//1UnNQ2k9Q4krJiXYnM986R8ho2QuycYsUljCJYVi2Zo0BphIJ09Cvh4gGXDtS+2JNNYHUYRVoDSOlD8Xp0lncnait5E+egtzhjNnF5tps3YfCorzzLahq9tS6DT3hBSpUIlUVcx7+Ufv2PjkAAb0scudu8lm7d84PHneTdZbL3a/Do0+1zzSWLrRN24Lg7ihIg+fpqAiFsNUBhVEO2G1rVhptSRYzHr5tY/dt48XsZupCG+o7Zt10y+dWXogs+aEYhl8q6boDRpfMZ8XpwytAB7d2lPkRDaWQnQJseVlqp2EWQ87Wb4PpjM4BXpdEH+aVPv/b+/KguQ6q/P5t3tv316nZ9NoRqORNMYgJYLEllMunIogVUAoJzzpIQ+pokJKAdkKMRCSyotbL0klLCYYi6AyxCne0HtIAkUplUCFwirKGE0Elu2RNZqtZ3rvvsu/ReeORozG07NoRptRv8zSd/n/c889//nP+c53Hm4WYkkGjDFZzrhRUtepaVd1zILywf5gB1xSUpqeTsHQELTL7RwDngGgWWtVCjsGKGSwIaoeR7QeXllovPSB9Tk+kuzkQ0cOeQJm/24wM7fkclxuHpRKtopvvTK9Uchupx7yVq+ThAqL73HbBc8hUmeIcHJcGd9yjlCLtpcilUyw0LibJCfd5nTi9foRqtUopqg3nPcyB8F1oNNKhcVz0W1IWgcl3QVoDMpG1upAU9ImnHbcVhwEvghz6VhFzaaaHR9X3ZQQrXDnF5BuO7WiIAI3wh6yoAlCGg6hdQkyLEAtLO3bh0m2HTEaCd7jI390gBK2S0c2MDZsWJutKxdiVm5xLXTGGp6LdMAGo75Xu0EvluWIFS+1q80jcT18FSMiiUJ/eq41aKTcBcHCRSxq3VDod/kAjF/nRkYcFbiiQ1RKaMgKmvJDqx2PchVDEDiQqsXtdrN84Vyw3i75TkzlqdcWHzfARrDhVXK/Gx4FGlTkxFnCqTCBuGa71PwFSUcNJlqsJMRITUwsgEXITSeBhTxUcQRR7Du+cjtSL+QCPTY5pkr/daprHgD3J0alMoZl8q7guQi0hxtHDSa0lDSsDFsec2My04ryj49EO71a43M78+ijqjRv021oZwB41iido4x4El2t2LQBWI10Fho2zpjC+wqNDcZATr62mBW++I0rP/z3H+NzThQacc/V3L7f8tKpi//w1VP3jB+9GWVDH+rQJIjpxarL+im1ofIZd9KWat9Y6gi8COUSrRhRsqWCVpunRjsbpPY3c+tNH/NnF2f3OdTNU2axmxwogZWy1giD+OjIJDR6PgZTjKaO0axutOIpJTytO8ZaJbUpRtpkcoMaOmDgYJIYNN1dh6XVrJWGtLEk67J0RmmdYgR7mEvNmRsA5y2tVTvqVGPLPDmq+6LSoQS7syOWeLVwUJn7xg//plVKWE3LptosB6wvLkLFjVNCtAKZYmknq0OTNTauvXCgf0003crr4rMfvtx6F7Z5+vJ19N0N/+uZy7X9mjC/2Hzrl7eLBGTTGrCNA9E1gbGjHLOEymHMylAY4niM8BRROgWMCptQxEkLhEuQLDK4ZDsiYESGHs2H7bnzqlvK9VaGhlGCem6KwRWA/NCInYQl7vCsUrY3HrfTB8HC+fOwu9m0F8ple3ZiwkKptJQWX+OzHCFo64KTZsoj1E3h3kIhfwgYF9kk0fJaxpSVJiKMdajLOw5VYWcBobCxZE5d9o6Pd90U3so81zrnBlbjelZQhRgQpXlrdUpaTOvTSqzC+YXRfGNkasqxKuPGHanWS6hcvw/5/MVyRvru+/K8dX65oOCGQuPmi7qNw8Twqa+89IW5eyXasW3Blkr0+JPPsvTgFFehLxinlGAyRTGHWOmCZa4E5QrmCmkDQRSCHQQYLpFvBmEVS8s+5RJUsPSTaZmKPdWJjM46UpmCNlpKo8IR0xtP2OkgsKicy2M/ePRo8vvEuXNL8j56FKaRYuvSJdrknDiuS1VDMC4YFXGHR4gddBgHhwltlOMYKjSyXFOX48uImJEEOJRQ9WNZAZNampg4LESXJEWcSEU1Jby0jtNSddptNTY5iRiYLRcHbEf+y1bZSIlYlum9ff7Czy9dosXiuNuKmg6hIhtpUyBKp5MquVhefv6h3k21YEbDVdv32GFNZf350SQ9fj3EuWLEn51u9MXGjqda8YU7kdDYjrC2ey5uTnqOHaO7JxNeNq48znyKeV9K/bDDIsk5uOjVSsFYilMtkaZIcIq8IArhysgKg+V+BMsLMU+CSiaWUSHo6+DvSUsiQjAcl9AjKkWSf17/LP0vYZu2moPFPy3jiEIyGPPlyOeuDbJ9KFBCEqolMFeq2CiBxKjSGJ7SGv3oyB9UveOgS6e6+9Hbldsmzv8VVrBUop/75Gf7hHD6IqULuHIQqxvU2pnHBjOL3wegu8vgluOma0PpK18EZ3bnFja6R4IfefzD+8HYnI3LP1+577spxpkc+P4nh3Ush6TbfvXMztSFbTS+e/F7cuw736GHjh0jMAG0Xp9iLC1oxWU0zShptihNsQaJGSUIpIZsDmS7RSCbAdrpUBUQkk6nQRIsLvdBkSCRMzYYxJ/C+jYyLSts2iKwG6AFIp2x0GxAaJDuKWt12hgXWxLE2qgeZeIoMu1Oxxy6BgCDo0e7+s93U5ioP/s+8JFxK1iaU33573PXAEOlEn3mE8+6bhY8IzupUJsi1SxvQCFrdc3rhJcR/pnsha6F6Evk7fWnK+eE7lZ5JtxDjR1KuakL/7iqcPZtQXustn1lqrGXARRdkbtwp8FKd/OB7OC9CSZUul5vyT/Gz23ZgO3gPDa61JIfmw5VAhlFlOMzzxZauj1iFStYi51gyMxCMDvz0r59YQJGeuIJt67TniLKVzEpEuLMn963ueoWVObabG1URmzIYfYXz+3JV1YPcE2hoz/Nc/VhE5N+CvDac3vy1XeA8Dd6OA++36IEEnBRLRw1CvZJSueZrE5mBgcDmJnxmpDxY2by1Dp9xmoPAlLjQl957pvP1XB/hha5ZwZctw16MxEnfBkGj3zwIcL9nCHq9RdGcqjMbzMIXa0Ixiw1KQ5Yjw8LoqeLu3umdjouuUX5PTj8LkoAlbddbg+oqFpfAeBPsn4dt1DUxg4SoFlpdMU0oklE3x23VvRUq37UcP3IRP0USEFZOfONAwOvbWUqx6enfdfmHwYZI03lm+vBVLsvi9fuiFmYxUuzPcpJjTqUSwrp19ar0t7KIB8ce39JIMnw/cHHHpaR2WVCOZUbzr6x7O8mGceFhXQMfkZb2KXjJHJRNwTe/PreQq2EfDgz4JVNMyWk1psuAiiV6Cf/+OkhlnZGDYFKthlNd+MEWZbmugqdHISwzpMnMyYQu8DaHhbrmeL+B9b6/lLHrY32r+rhQ0qaznM3F6ASzPBVZLVIPW9Yx9oxVk2+cOafrtwI8SZRjWdTsjOfiYUYNJIUiOEX/3l8BYnjNT97EyFhcuLCfJrlxYFIas8nqbcK1q9uBqa6sUJflwWi3+ahXDBEDCEs3Rf08pfOfLmyicFtTZoPjr4jEsC6UIydr1X/98xCZ5gBfY+2uqZq/qsrfdwkO1erZUmcKqooHtaYG7H69TNj/TMrBk6OIwCpCX7aH3obB+J6E0Sa3atvLIw5rttr4qjiEj53dazQ3CwoatMKnRjrBMNayRhGe6ylAwjydjl9637dNOJLWvrXU/E7+KUkn5u1/lqRqr9ttQajCA6DMD/9Uu7m2C/6vtmZZj4CNkapzStNf3l62L+yUhGTetDBh7KhjPuB8F2E6PnTY33/t4ayrqhh767KeE/2Vn0PMDIAVnc4FzO9Yaa5Gau88qpbUujlE/Hm/mQtHdG4SIjXi4qtKJs6cx9Z7E9drvVYoAdFPPdyN0DWiQvzGRW8Fe1kGnynzS/W9cEQxGvGb0sl+pmTn38MjKp8uf9mpiGMZHn5aDS2sN9AeOn5wcLrq8d2Yn4+Q43TbxQb00Y3Le9MrM5NJICn1GCmE7Tpvzw0hGTlW/pgoesVXRxxPOgjYEJwxCyUO63TZ0+vSQi60cVvSaGXL7pcXdIipIdR6MVULGd6Lhouzp1Zh6Rmo0Hd7u9x3HGq/wkay6mFfX2X1lrO0AKRgQOP+6Twk24bYVR4kvfcF65XHK81bmSiyo+sjVzDmP/MDIjSOt2hPr/YGalFtUq3JNfJudoBh4nil/rSP1nr/p+bbQ5oQt5nmb3ylb7sTRYUDVN6KhiIhXk3GFX9vf/5z1dW09ZiYKB8tZmXyuwFYvzY9Lz80hrso7hp3AKqkRx/vZIjvhiGyObB6A4jYi6MgnZzReeGW9GDbSn08g3R75mcnPS5GMwwML3Eatcw0ogjPfvS+iQytzLmbZ/z6YX2kTgMmWeLr3RT1k/N1fbb2I4ujhT+u5v/9qkrlcNIj/GNvb0T3Qb19NXG+1vx4nlMLKw+5m9qtZ5O5Lznq4P+j7qd/5lq672YQX++Z6mqefUHK/YlaT9Bgb/23KD39pL/6+nniJDDNo7nvraneBPVbZJ5u9rssQQe1lpz2VE//dYa7KLoc9c6mQytXKzc6op17IJ18vnKADNmF6UOJ0rWmesuaBYE5XM7A/PdEYW+4Yq8/LIoZPZ6Da5TJOX3KG1zCJP0LFS8ejj/xffe/dKpp8qNd4Gme2Q7fvlMF+bThLj94JEPBjKaeHGkO1jmk9P1D5s4/tmqDdFNOvdUuf2klP4PzqxhhdF6a5H/UDiY/bduKxoqfUuK3yV9/n88T9Zmszox39pFDHnURPKHX99bwCTY6g85Pt3opdQc1spWhocLP1udUzi5uJgLG3Q/4lG+Odbz0zVfsKUIRVcU4FrnINruB6/P9RrXGSTaZqzDIhrZCqGkjsjG5755KtrJPcyOKvSNCSX5+0+4CAUMuU5DRHuky3yBSDUaV2nl7pRO/XXF5kMaPSZj9erp01+c7ybIv5ypjinC97eChR+tZVlxnsjjFtPmh/prV767Htz2xGzjD5tznR98e21We/L0fPsjsdI/6QrKwbDp8c+8P5ZysdtKgFZ2Yab5rliZ0d3Nq+e6jecTV+pFAeaw0uTyi2OFN1cr4PGXp33o8cSZA0WkZrvlD7prtDDSo0W63zKTJQY0SFJntlMTVoS98Wx4uyDKt0ehV4himQcD8cBN6eQ4F/2G8QKSmCPRoC/EXHT1F7VbXca2IvWT1rp+Fbz1ihjQOlcPP/77jlavfGEdpX9mvj4uCR35Wn/23Hpj2ECh4cRM/QglLPzaru6s98crlTwL+Qd4O/vdbmlitITfu9L4bUQCvriv93+7jQlXhTZjZIeBZ0ncOMw4A9ToASpoigALoyhcKFBRrkEhdBbPa6xWud0Qituu0CsFm4BTDh1jkz7QtGimgxj6qGN7mDGOIhR9zIpjaosLP/5xYwsbjK3o9PJ8u4KCcIy7P/rRvul0emG92OfT5fajxMjqWtGBlQN6arbxsQZ0vv/tLtx9J64u7omBvfvF4cL3uk6kVKJ//vGTvyOpufyt0f7pbsfhXubypdn8JqINmwqlrSdYfDGkLfZEOh6wAAXOkXpEtxS3Zb9tqk1ejO+UEq8c5x1V6JU3TshdAFg8CcxPl3kcswJYUrSUZ6nRyJcYUEJqhEJldzXb2KhYcitavdGxm9mxH8dw2fR5udHK8heVzmj4xsRMt+MwfKb9ysDp4d6b4ryrx4iRmd7xcb0ZeOXtwNz86cVylgvWoz3SS2LIIzsgtSQg1laoVpWUK5tJgcPUOd2NTHMjue/E93dNoVcNnhyzlh6agMR6O+YN17iFrDWkYIzNMUudpMWvJW0CpCaQE3k037qXQ4PL89sEXWwy981mwnbioW9wDfInr8z6qTzLSUJ7CBN5omOfIPGT1R3hiKqMghr1BppxBMYZA737Wp3t7XiJbmWu94pCrx77TQquG3MM0pBOOV5WM5uzCvtvI99b0vwnMFq1HJKquzJsR/U3g42s5q0I6p14zsfftJ4RzbSjTE7ZOO9QntFAXaTVtdpEoEnTkLDOuN/IQS6oqknrjI3p6tmz5ja5hNsW872q0G+b2BL/3Hnm5vO0yceJj2VTPZ4XRzoDxmaB2jTh1GXYUx5bQygTcYuN3mmL6qid0jzojYvhnXRdtv10tnmBBHN8fsbVg2nPUJVm0maUhgwTLAWUCKxGpMYqy2nHGNUCCU1PsJYud6K4d8iMYYX5/LktUSRvc8jbPv2+Uei1ZppEUJDQcwLopD9J25yTbNvjPOe6ECg/psZ3CPcjYlKCEoEtfwi32ANCS2OkAB0SwM2oCkNgYZaIEBmGmNMvZ8ehK0HLtqW+nQskRb9PsvTgIG/HaUf6woF27FmiPU54ygrjaUtdYowgBEkZsRO5VVqbmIIOqCbtyCHttOGdVi2M+4rSVJVasrwA5uypU1hxfkv9DrczrZ06975W6HV2+xTOnaPTR49er6weJ20+RTwhKAtcASA9ZpUrnYzL4yBlOHOspQ4xSBpEsEoQG3EmfLnIX4ukL8pyTY1R6MszxhXTRmFvGaSGwdbOxgSGOI5mHWxvaAz3AImmsejVAqQBoA1JpzBCiA8AIcMuuxH2PqTYaMmqmCWUo1px4bkMs3aUEW404fh/pPRN+hqhfibEiwlNrtFIAkqZZNh3hpgIX05CWQjUCUVHxpAKZVoPWXQXkDYhqtdN9ZFH7nvF7fbs35EKve7bXirRYwcPkkP9/WQ6e5TsTgFZdIA0OSRK3zPHSCAoSWXaXDsOI9IRccIwwHjUkcJJESYDJgRWfy9XgDuAOobctzRxebTCxmhI7YzUuL+SMZLtKmTVRUovaQ3j2PvFYsU3khMQyzWWcSM/LtaW40ujseKbCimEVjZS0nNSqhFrnU5HCrkQ0oPaVtUINpi3s/GE7QkCiwp76Fp5Ugk7x93/dYtbMt6/fgq9efEkha6lZ5+FCwDkEHJqIJ/GeSDV1AQ5BAdh0blEAMahySevy3EM2jNTBPb86iYjq+53g3TiepAuPTRi4QbxzJgFuASz8bgFmABUzt2PPGIvoFKePQuHjh37tVTSzT+y6wz+WznhwbEPJHAvS+CBhb6Xn86DsW1ZAv8PfBkFtGSaHhUAAAAASUVORK5CYII=",cC={wave:"wave___rx4XG",fillWrap:"fillWrap___q512j",svgBox:"svgBox___DfbUu"},CY=Object.defineProperty,lO=Object.getOwnPropertySymbols,PY=Object.prototype.hasOwnProperty,wY=Object.prototype.propertyIsEnumerable,uO=(E,a,y)=>a in E?CY(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,MY=(E,a)=>{for(var y in a||(a={}))PY.call(a,y)&&uO(E,y,a[y]);if(lO)for(var y of lO(a))wY.call(a,y)&&uO(E,y,a[y]);return E};const Bre=E=>React.createElement("svg",MY({width:449,height:204,xmlns:"http://www.w3.org/2000/svg",xmlnsXlink:"http://www.w3.org/1999/xlink"},E),React.createElement("title",null,"\u6CE2\u7EB9"),React.createElement("defs",null,React.createElement("linearGradient",{x1:"50%",y1:"41.532%",x2:"51.437%",y2:"65.254%",id:"water_svg__c"},React.createElement("stop",{stopColor:"#34D5A2",offset:"0%"}),React.createElement("stop",{stopColor:"#1D9F76",offset:"100%"})),React.createElement("path",{id:"water_svg__a",d:"M0 0h449v204H0z"})),React.createElement("g",{fill:"none",fillRule:"evenodd"},React.createElement("mask",{id:"water_svg__b",fill:"#fff"},React.createElement("use",{xlinkHref:"#water_svg__a"})),React.createElement("g",{mask:"url(#water_svg__b)"},React.createElement("path",{d:"M0 7.704c14.667 8 29.667 8 45 0 6.537-3.41 23.776-14.982 45 0 17 12 29 9 45 0s31-9 45 0c25 17 35 8 45 0s32.344-7.91 45 0c16 10 32 10 45 0 10.947-8.42 33.124-8.71 45 0 15 11 31.839 11.136 45 0 13-11 30-9.517 45 0s15 17 45 0v196H0v-196Z",fill:"url(#water_svg__c)",transform:"translate(-40)"}),React.createElement("path",{d:"M0 11c14.667 8 29.667 8 45 0 6.537-3.41 23.776-14.982 45 0 17 12 29 9 45 0s31-9 45 0c25 17 35 8 45 0s32.344-7.91 45 0c16 10 32 10 45 0 10.947-8.42 33.124-8.71 45 0 15 11 31.839 11.137 45 0 13-11 30-10 45 0s15 17 45 0v193H0V11Z",fill:"#38E5AE"}))));var DY="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDQ5IiBoZWlnaHQ9IjIwNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+PGRlZnM+PGxpbmVhckdyYWRpZW50IHgxPSI1MCUiIHkxPSI0MS41MzIlIiB4Mj0iNTEuNDM3JSIgeTI9IjY1LjI1NCUiIGlkPSJjIj48c3RvcCBzdG9wLWNvbG9yPSIjMzRENUEyIiBvZmZzZXQ9IjAlIi8+PHN0b3Agc3RvcC1jb2xvcj0iIzFEOUY3NiIgb2Zmc2V0PSIxMDAlIi8+PC9saW5lYXJHcmFkaWVudD48cGF0aCBpZD0iYSIgZD0iTTAgMGg0NDl2MjA0SDB6Ii8+PC9kZWZzPjxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+PG1hc2sgaWQ9ImIiIGZpbGw9IiNmZmYiPjx1c2UgeGxpbms6aHJlZj0iI2EiLz48L21hc2s+PGcgbWFzaz0idXJsKCNiKSI+PHBhdGggZD0iTTAgNy43MDRjMTQuNjY3IDggMjkuNjY3IDggNDUgMCA2LjUzNy0zLjQxIDIzLjc3Ni0xNC45ODIgNDUgMCAxNyAxMiAyOSA5IDQ1IDBzMzEtOSA0NSAwYzI1IDE3IDM1IDggNDUgMHMzMi4zNDQtNy45MSA0NSAwYzE2IDEwIDMyIDEwIDQ1IDAgMTAuOTQ3LTguNDIgMzMuMTI0LTguNzEgNDUgMCAxNSAxMSAzMS44MzkgMTEuMTM2IDQ1IDAgMTMtMTEgMzAtOS41MTcgNDUgMHMxNSAxNyA0NSAwdjE5Nkgwdi0xOTZaIiBmaWxsPSJ1cmwoI2MpIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtNDApIi8+PHBhdGggZD0iTTAgMTFjMTQuNjY3IDggMjkuNjY3IDggNDUgMCA2LjUzNy0zLjQxIDIzLjc3Ni0xNC45ODIgNDUgMCAxNyAxMiAyOSA5IDQ1IDBzMzEtOSA0NSAwYzI1IDE3IDM1IDggNDUgMHMzMi4zNDQtNy45MSA0NSAwYzE2IDEwIDMyIDEwIDQ1IDAgMTAuOTQ3LTguNDIgMzMuMTI0LTguNzEgNDUgMCAxNSAxMSAzMS44MzkgMTEuMTM3IDQ1IDAgMTMtMTEgMzAtMTAgNDUgMHMxNSAxNyA0NSAwdjE5M0gwVjExWiIgZmlsbD0iIzM4RTVBRSIvPjwvZz48L2c+PC9zdmc+",IY=({percentage:E,size:a=180,unit:y="rem"})=>{const[x,b]=(0,Ne.useState)(["",""]),[z,ee]=(0,Ne.useState)(0),re=(0,Ne.useRef)(null),ae=(0,Ne.useRef)(null);(0,Ne.useEffect)(()=>(re.current&&(clearTimeout(ae.current),ae.current=setTimeout(()=>{var De;const ke=z+20;ke+a>((De=re.current)==null?void 0:De.offsetWidth)-40&&b([...x,""]),ee(ke)},200)),()=>{clearTimeout(ae.current)}),[re.current,z]),(0,Ne.useEffect)(()=>(window.addEventListener("resize",oe),()=>{window.removeEventListener("resize",oe)}),[]);const oe=()=>{ee(0)},de={width:a+y,height:a+y},ge=148-a*(E/100),ye=()=>Ne.createElement("img",{src:DY,style:{width:`449${y}`,height:`204${y}`}});return Ne.createElement("div",{className:cC.wave,style:de},Ne.createElement("div",{className:cC.fillWrap},Ne.createElement("div",{style:{fontSize:`28${y}`,zIndex:2,color:"#fff"}},E,"%"),Ne.createElement("div",{className:cC.svgBox,ref:re,style:{top:ge+y,transform:`translateX(-${z}px)`}},x.map((De,ke)=>Ne.createElement(ye,{key:ke})))))},Ch={trapezoid:"trapezoid___qw8yM",pillarBox:"pillarBox___rGJCP",pillar1:"pillar1___uJ0zx",point:"point____XIHt",pillar2:"pillar2___pL9k5",pillar3:"pillar3___dUdZf",textBox:"textBox___isldE",text1:"text1___g5Hy9",tip:"tip___PXfJr",line:"line___A5wA_",l:"l___hfZzL",text2:"text2___u2scn",text3:"text3___WSnmy"},OY=Object.defineProperty,TY=Object.defineProperties,LY=Object.getOwnPropertyDescriptors,cO=Object.getOwnPropertySymbols,BY=Object.prototype.hasOwnProperty,NY=Object.prototype.propertyIsEnumerable,dO=(E,a,y)=>a in E?OY(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,fO=(E,a)=>{for(var y in a||(a={}))BY.call(a,y)&&dO(E,y,a[y]);if(cO)for(var y of cO(a))NY.call(a,y)&&dO(E,y,a[y]);return E},hO=(E,a)=>TY(E,LY(a)),RY=({dataSource:E=[]})=>{const[a,y]=(0,Ne.useState)([]),[x,b]=(0,Ne.useState)(0),z=(0,Ne.useRef)(String(Math.random()).slice(-6));(0,Ne.useEffect)(()=>{if(E!=null&&E.length){const oe=ae(E),de=E.map((ge,ye)=>hO(fO({value:ge,lineWidth:30,pillarWidth:104+oe[ye]},re[ye]),{from:re[ye].from+z.current,to:re[ye].to+z.current}));y(de),b(x+1)}},[JSON.stringify(E)]),(0,Ne.useEffect)(()=>{x>0&&ee()},[x]),(0,Ne.useEffect)(()=>(window.addEventListener("resize",ee),()=>{window.removeEventListener("resize",ee)}),[x]);const ee=()=>{const oe=a.map((de,ge)=>{const{from:ye,to:De}=de,ke=document.querySelector(`#${ye}`),ze=document.querySelector(`#${De}`),We=ke.getBoundingClientRect(),Ve=ze.getBoundingClientRect(),Ze=Math.abs(Ve.left-We.left);return hO(fO({},de),{lineWidth:Ze})});y(oe)},re=[{title:"\u5B8C\u6210\u738780%\uFF5E100%",pillarTitle:"80\uFF5E100%",from:"lineStart1",to:"lineEnd1"},{title:"\u5B8C\u6210\u738760%\uFF5E79%",pillarTitle:"60\uFF5E79%",from:"lineStart2",to:"lineEnd2"},{title:"\u5B8C\u6210\u738759%\u4EE5\u4E0B",pillarTitle:"59%\u4EE5\u4E0B",from:"lineStart3",to:"lineEnd3"}];function ae(oe){const de=oe.reduce((ge,ye)=>ge+ye,0);return oe.map(ge=>ge/de*100)}return Ne.createElement("div",{className:Ch.trapezoid},Ne.createElement("div",{className:Ch.textBox},a.map((oe,de)=>{const{value:ge,lineWidth:ye,title:De,from:ke}=oe,ze=de+1;return Ne.createElement("div",{key:de,className:Ch[`text${ze}`]},Ne.createElement("div",{className:Ch.tip},De,Ne.createElement("span",null,ge)),Ne.createElement("div",{id:ke,className:Ch.line},Ne.createElement("div",{style:{width:ye},className:Ch.l})))})),Ne.createElement("div",{className:Ch.pillarBox},a.map((oe,de)=>{const{pillarWidth:ge,pillarTitle:ye,to:De}=oe,ke=de+1;return Ne.createElement("div",{key:de,className:Ch[`pillar${ke}`],style:{width:ge+"rem"}},Ne.createElement("span",null,ye),Ne.createElement("div",{id:De,className:Ch.point}))})))},ro=Te(59301),FY=Object.defineProperty,gO=Object.getOwnPropertySymbols,kY=Object.prototype.hasOwnProperty,_Y=Object.prototype.propertyIsEnumerable,vO=(E,a,y)=>a in E?FY(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,dC=(E,a)=>{for(var y in a||(a={}))kY.call(a,y)&&vO(E,y,a[y]);if(gO)for(var y of gO(a))_Y.call(a,y)&&vO(E,y,a[y]);return E},zY=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(oe){b(oe)}},ee=ae=>{try{re(y.throw(ae))}catch(oe){b(oe)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())}),jY=({subjectId:E,uuid:a,isAll:y})=>{const[x,b]=(0,Ne.useState)(!1),[z,ee]=(0,Ne.useState)({type:0,course_id:null}),[re,ae]=(0,Ne.useState)(!0),[oe,de]=(0,Ne.useState)(!0),[ge,ye]=(0,Ne.useState)([]),[De]=(0,be.useSearchParams)(),[ke,ze]=(0,Ne.useState)({graphCount:0,tagCount:0,resourceCount:0,proportionCount:0}),We=[{name:"",value:0,itemStyle:{color:"rgb(223,209,38)"}},{name:"",value:0,itemStyle:{color:"rgb(6,234,230)"}},{name:"",value:0,itemStyle:{color:"rgb(6,110,247)"}}],[Ve,Ze]=(0,Ne.useState)({averageCompletionRate:0,averageMasteryRate:0,completionRate:[0,0,0],masteryRate:We});(0,Ne.useEffect)(()=>{x?Ye(z):ee({type:0,course_id:null})},[x]),(0,Ne.useEffect)(()=>{x&&b(!1)},[a]);const Ye=(mt,dt=!1)=>zY(void 0,null,function*(){var Ot,_t,wt,$t,gn,Xt,Tn,er,En,yn;dt?de(!0):ae(!0);const Cn=yield(0,te.ZP)(y?"/api/knowledge/v2/subject_statistics.json":"/api/knowledge/v2/knowledge_statistics.json",{method:"get",params:dC({subject_id:E,parentNodeUuid:a,labels:"\u56FE\u8C31,\u6807\u7B7E,\u8D44\u6E90",depth:-1},mt)});if((Cn==null?void 0:Cn.status)===0){let qn=(Ot=Cn==null?void 0:Cn.data)==null?void 0:Ot.metricCounters;qn=qn||[];const pn={graphCount:((_t=qn.find(Hr=>(Hr==null?void 0:Hr.name)==="\u56FE\u8C31"))==null?void 0:_t.count)||0,tagCount:((wt=qn.find(Hr=>(Hr==null?void 0:Hr.name)==="\u6807\u7B7E"))==null?void 0:wt.count)||0,resourceCount:(($t=qn.find(Hr=>(Hr==null?void 0:Hr.name)==="\u8D44\u6E90"))==null?void 0:$t.count)||0,proportionCount:(gn=Cn==null?void 0:Cn.data)==null?void 0:gn.resource_rate};let lr=Object.entries((Xt=Cn==null?void 0:Cn.data)==null?void 0:Xt.study_grasp_hash).map(([Hr,Ar],Wr)=>({name:Hr,value:Ar,itemStyle:We[Wr].itemStyle}));const Jr={averageCompletionRate:(Tn=Cn==null?void 0:Cn.data)==null?void 0:Tn.study_complete_rate,averageMasteryRate:(er=Cn==null?void 0:Cn.data)==null?void 0:er.study_grasp_rate,completionRate:Object.values((En=Cn==null?void 0:Cn.data)==null?void 0:En.study_complete_hash),masteryRate:lr};console.log(lr,"newMasteryRate");const na=(yn=Cn==null?void 0:Cn.courses)==null?void 0:yn.map(Hr=>({label:Hr.name,value:Hr.id}));ye(na),ze(pn),Ze(Jr)}setTimeout(()=>{ae(!1)},500),de(!1)}),et=mt=>{z.type=mt,ee(dC({},z)),(mt!==2||z.course_id)&&Ye(z,!0)},st=mt=>{z.course_id=mt,ee(dC({},z)),Ye(z,!0)},ht=[{name:"\u5168\u90E8",id:0},{name:"\u81EA\u4E3B\u5B66\u4E60",id:1},{name:"\u8BFE\u5802\u5B66\u4E60",id:2}];return ro.createElement(Qt,null,ro.createElement("div",{className:nu.statistics},ro.createElement("div",{onClick:()=>b(!0),className:nu.noUnfold},ro.createElement("img",{style:{width:"32rem",marginBottom:"4rem"},src:EY}),ro.createElement("span",null,"\u7EDF"),ro.createElement("span",null,"\u8BA1")),ro.createElement("div",{className:nu.wrapBox,style:{right:x?0:"-600rem"}},re&&ro.createElement(ce.Z,{style:{width:"100%",marginTop:"200rem"},spinning:!0}),!re&&ro.createElement(ro.Fragment,null,ro.createElement("div",{className:nu.scrollBox},ro.createElement("div",{className:nu.content},ro.createElement("div",{className:nu.title},ro.createElement("img",{src:AY}),ro.createElement("span",null,"\u56FE\u8C31\u7EDF\u8BA1\u5206\u6790")),ro.createElement(Ou.Z,{className:nu.box,justify:"space-between"},ro.createElement("div",{className:nu.left},ro.createElement("div",null,ro.createElement("span",null,"\u77E5\u8BC6\u56FE\u8C31\u6570\u91CF"),ro.createElement("b",null,ke==null?void 0:ke.graphCount)),ro.createElement("div",{style:{margin:"18rem 0"}},ro.createElement("span",null,"\u6807\u7B7E\u8282\u70B9\u6570\u91CF"),ro.createElement("b",null,ke==null?void 0:ke.tagCount)),ro.createElement("div",null,ro.createElement("span",null,"\u8D44\u6E90\u8282\u70B9\u6570\u91CF"),ro.createElement("b",null,ke==null?void 0:ke.resourceCount))),ro.createElement("div",{className:nu.right},x&&ro.createElement(IY,{percentage:ke==null?void 0:ke.proportionCount}),ro.createElement("div",{className:"c-white",style:{marginTop:"20rem",fontSize:"14rem"}},"\u5DF2\u5173\u8054\u8D44\u6E90\u7684\u6807\u7B7E\u8282\u70B9\u5360\u6BD4"))),ro.createElement("div",{style:{marginTop:"20rem"},className:nu.title},ro.createElement("img",{src:xY}),ro.createElement("span",null,"\u5B66\u4E60\u7EDF\u8BA1\u5206\u6790")),ro.createElement("div",{className:nu.box},De.get("type")!=="classrooms"&&ro.createElement("div",{className:nu.head},ro.createElement("span",{style:{marginRight:"10rem",fontSize:"16rem"}},"\u7EDF\u8BA1\u8303\u56F4"),ro.createElement("div",{className:nu.radio},ht.map(mt=>ro.createElement("div",{className:z.type===mt.id?nu.active:"",key:mt.id,onClick:()=>et(mt.id)},ro.createElement("b",null),ro.createElement("span",null,mt.name)))),z.type===2&&ro.createElement(xt.default,{className:nu.select,options:ge,value:z==null?void 0:z.course_id,onChange:st,placeholder:"\u8BF7\u9009\u62E9",getPopupContainer:mt=>mt.parentNode,style:{width:"156rem",marginLeft:"10rem"},suffixIcon:ro.createElement("i",{className:"iconfont icon-a-bianzu11",style:{color:"#1B8565",fontSize:"16rem"}})})),ro.createElement(ce.Z,{spinning:oe},ro.createElement("div",{className:nu.average},ro.createElement("div",{className:nu.li},ro.createElement("img",{src:SY,style:{marginLeft:0}}),ro.createElement("aside",{className:nu.yellow},ro.createElement("div",{style:{fontSize:"16rem"}},"\u5E73\u5747\u5B8C\u6210\u7387"),ro.createElement("div",null,ro.createElement("b",{style:{fontSize:"40rem"}},Ve==null?void 0:Ve.averageCompletionRate),ro.createElement("span",{style:{fontSize:"20rem"}},"%")))),ro.createElement("div",{className:nu.li},ro.createElement("img",{src:bY}),ro.createElement("aside",{className:nu.blue},ro.createElement("div",{style:{fontSize:"16rem"}},"\u5E73\u5747\u638C\u63E1\u7387"),ro.createElement("div",null,ro.createElement("b",{style:{fontSize:"40rem"}},Ve==null?void 0:Ve.averageMasteryRate),ro.createElement("span",{style:{fontSize:"20rem"}},"%"))))),ro.createElement("div",{className:nu.lineTitle},ro.createElement("b",null),ro.createElement("span",null,"\u5B8C\u6210\u7387"),ro.createElement("b",null)),ro.createElement("div",{className:nu.echartsTwo},ro.createElement(RY,{dataSource:Ve==null?void 0:Ve.completionRate})),ro.createElement("div",{className:nu.lineTitle,style:{marginTop:"40rem"}},ro.createElement("b",null),ro.createElement("span",null,"\u638C\u63E1\u7387"),ro.createElement("b",null)),ro.createElement("div",{className:nu.echartsThree},ro.createElement(Ur,{dataSource:Ve==null?void 0:Ve.masteryRate})))))),x&&ro.createElement("div",{onClick:()=>b(!1),className:nu.unfold})))))},Pu={statistics:"statistics___BZJje",noUnfold:"noUnfold___L4va9",wrapBox:"wrapBox___tHLW6",scrollBox:"scrollBox___m8AGu",content:"content____Gl9N",title:"title___SAaGy",top:"top___h1nbU",topLi:"topLi___Ib2Tu",bottom:"bottom___ZKnwW",bottomLi:"bottomLi___YAGiM",echarts:"echarts___M5Dkf",name:"name___XhFko",unfold:"unfold___I5om1",select:"select___TcV_B"},UY="data:image/png;base64,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",WY="data:image/png;base64,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",GY="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAAsCAYAAAA5KtvpAAAAAXNSR0IArs4c6QAABFJJREFUaEPtml9MW1Ucxz+nlxbaUkYvYjdENG7RiEg6jNGQ+aIx08SE6IvZxGS+qGGPPjnj2+J8MIuJMVk00Zgg0zc1Rpm+Gf+M+GdkZKhT4gyMjnWllJWWtrf3mNPLHJcWaBmlXcMvaV96fufez/n+fuf8zjkV/a8ZBzB5R4JO7VpICHlo8A3nt6L/VWNSIttrl9UiEzAyeMz5sOg/khmTkq7aBxbfDB6r2y8OHZFBjzf7rt5Mb61ChyOcWkxrhz86KiaEggxF5Aum5INaBRaCJ9taxPBSaG8D15zQVaVwnQaao/QxlhLSxnU/1Y+RLdxP1QA7BAT8IHIzSekWjUMyBS1NUO+EuTgkUvn9lB84mwVNK4pA921c4bkFS1V/IzS4QA3AYroCwM2nBpnf14fp9RUFvRmNVLSYskIh3XryOMJIc+WZw1sKvdrAlT2kFbAzPEVGDxB5eqDi0EUDzyetSWC1UFk+oq74LPqFURrD/9AUOo8jm8n9nNwR4M/HBzDc5Q1vhwO8LvC5N5jDV5MQXVg/u1wLUe789TP8F88hpFnQIdkUYPyxATJlhlYPb/WBu97+GkUpHJ6HZIEZb3lX/qkx9vw0hJYpsBasQE807+LsE6+AkqKM1tgAeuMGgC/HYNGKyoKmFL37uw9XVXW5k3Ro/NX7PLMd3WVEtbr21kPLiuwpSuG1gLVUguCXb+JMxdcF2ErYsgHfNfIpt06M5GANl4doWyfzgT25HM3U+9h9eghP7BKbBauKi08+t9eNDg0O9uUXN5uusGdumu6v3iLT4ONCTx+RjmBeXt7/9XE8sdCmhbECPjG4rHAG6jTBy/1bANx+dhjPXIiJh54lW+8pGNJdw28z3floSTkbnoVozF4qteoC/w4wDDjxcYWAO377gsngU8g1ZltP9CIJ/23r5vfyBj/8YnLmnH1Z631Ao6dL5OrlyihsmjiyBqbTVRKMamxm4cy4XUG1LQzeZ22V1gSupMIlky45pDPw3pA9LJ11gpees/KwOhVeh/bvfyVTIbuKu+8Q3L5LcEPA1arw9z+bjI7b83DfgxrBzhsErlgOAwsJu8xqH+peKtjLBlwphVNpeP+kPQ9dTsGLB608LBtwpRTeBga2Fa6lSaumQ3r2KsRX7OtvBuAmNzR7N3AAkMnCzJz9PKvagVWpurM5/5y7qAMANUZZE1KZ69DqfH30D3slpfYQe++16uHJS3A5Yv+9PSAI3GL1Nfr7Cl8Bezst36kZmLlS2Nc08+vw3HOXfJW/ur1wu0DVBSutaOCN1s3V5rcNvNaFuAoVV121aZb/PmpzsspNiwr34i/Er93MVTtyYhHU5VohKwnY2wDqU82m7orjydXP0UsCrmbQYt8tD3g6IvdLSe5PH7VomoPunboYyy1f6ktK2TAdYRS4p+aABT+26TwihMidTPy/TM/EZcBY5HUEPUJyE8zL60gjSEk47RYc1XURu9b6P7vslVpOgNBqAAAAAElFTkSuQmCC",HY=Te.p+"static/a.d3f19668.png",VY=Te.p+"static/b.ba7414bd.png",KY=Te.p+"static/c.2b6f6bd3.png",ZY=Te.p+"static/d.f1216ccd.png",mg={cylinder:"cylinder___rUBlO",cylinderBox:"cylinderBox___NurwX",cylinder1:"cylinder1___LPJD0",item1:"item1___ekrFi",item2:"item2___PuVOv",item3:"item3___x9UjL",point:"point___ZJ1ZD",cylinder2:"cylinder2___aQBbC",cylinder3:"cylinder3___lefpl",textBox:"textBox____wuhT"},QY=Object.defineProperty,YY=Object.defineProperties,XY=Object.getOwnPropertyDescriptors,mO=Object.getOwnPropertySymbols,JY=Object.prototype.hasOwnProperty,qY=Object.prototype.propertyIsEnumerable,pO=(E,a,y)=>a in E?QY(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,yO=(E,a)=>{for(var y in a||(a={}))JY.call(a,y)&&pO(E,y,a[y]);if(mO)for(var y of mO(a))qY.call(a,y)&&pO(E,y,a[y]);return E},EO=(E,a)=>YY(E,XY(a)),$Y=({dataSource:E=[]})=>{const[a,y]=(0,Ne.useState)([]),[x,b]=(0,Ne.useState)(0),z=(0,Ne.useRef)(String(Math.random()).slice(-6));console.log(E,a,223),(0,Ne.useEffect)(()=>{if(E!=null&&E.length){const oe=ae(E),de=E.map((ge,ye)=>EO(yO({value:ge,lineWidth:30,cylinderWidth:40+oe[ye]},re[ye]),{from:re[ye].from+z.current,to:re[ye].to+z.current}));y(de),b(x+1)}},[JSON.stringify(E)]),(0,Ne.useEffect)(()=>{x>0&&ee()},[x]),(0,Ne.useEffect)(()=>(window.addEventListener("resize",ee),()=>{window.removeEventListener("resize",ee)}),[x]);const ee=()=>{const oe=a.map((de,ge)=>{const{from:ye,to:De}=de,ke=document.querySelector(`#${ye}`),ze=document.querySelector(`#${De}`),We=ke.getBoundingClientRect(),Ve=ze.getBoundingClientRect(),Ze=Math.abs(Ve.left-We.left);return EO(yO({},de),{lineWidth:Ze})});y(oe)},re=[{title:"\u90E8\u5206\u638C\u63E1 ",from:"lineStart1",to:"lineEnd1"},{title:"\u5168\u90E8\u638C\u63E1 ",from:"lineStart2",to:"lineEnd2"},{title:"\u672A \u638C \u63E1 ",from:"lineStart3",to:"lineEnd3"}];function ae(oe){const de=oe.reduce((ge,ye)=>ge+ye,0);return oe.map(ge=>ge/de*122)}return Ne.createElement("div",{className:mg.cylinder},Ne.createElement("div",{className:mg.cylinderBox},a.map((oe,de)=>{const{cylinderWidth:ge,lineWidth:ye,from:De}=oe,ke=de+1;return Ne.createElement("div",{key:ke,className:mg[`cylinder${ke}`],style:{width:ge+"rem"}},Ne.createElement("div",{className:mg.item1}),Ne.createElement("div",{className:mg.item2}),Ne.createElement("div",{className:mg.item3}),Ne.createElement("div",{id:De,style:{width:ye},className:mg.point}))})),Ne.createElement("div",{className:mg.textBox},a.map((oe,de)=>{const{title:ge,to:ye,value:De}=oe,ke=de+1;return Ne.createElement("div",{key:ke,id:ye},Ne.createElement("span",{dangerouslySetInnerHTML:{__html:`${ge}${De}%`}}))})))},Mo=Te(59301),eX=Object.defineProperty,AO=Object.getOwnPropertySymbols,tX=Object.prototype.hasOwnProperty,nX=Object.prototype.propertyIsEnumerable,xO=(E,a,y)=>a in E?eX(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,SO=(E,a)=>{for(var y in a||(a={}))tX.call(a,y)&&xO(E,y,a[y]);if(AO)for(var y of AO(a))nX.call(a,y)&&xO(E,y,a[y]);return E},rX=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(oe){b(oe)}},ee=ae=>{try{re(y.throw(ae))}catch(oe){b(oe)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())}),aX=({subjectId:E,uuid:a,isAll:y})=>{const[x,b]=(0,Ne.useState)(!1),[z,ee]=(0,Ne.useState)({course_id:null}),[re,ae]=(0,Ne.useState)(!0),[oe,de]=(0,Ne.useState)(!0),[ge,ye]=(0,Ne.useState)([]),[De]=(0,be.useSearchParams)(),[ke,ze]=(0,Ne.useState)({graphCount:0,tagCount:0,resourceCount:0,proportionCount:0}),We=[{name:"\u5DF2\u5B8C\u6210",value:0,itemStyle:{color:"rgb(223,209,38)"}},{name:"\u5F85\u5F00\u59CB",value:0,itemStyle:{color:"rgb(6,234,230)"}},{name:"\u90E8\u5206\u5B8C\u6210",value:0,itemStyle:{color:"rgb(6,110,247)"}}],[Ve,Ze]=(0,Ne.useState)({averageCompletionRate:0,averageMasteryRate:0,completionRate:We,masteryRate:[0,0,0],course_rank_num:0,course_rank_all_num:0,system_rank_num:0,system_rank_all_num:0});(0,Ne.useEffect)(()=>{x?Ye(z):ee({course_id:null})},[x]),(0,Ne.useEffect)(()=>{x&&b(!1)},[a]);const Ye=(st,ht=!1)=>rX(void 0,null,function*(){var mt,dt,Ot,_t,wt,$t,gn,Xt,Tn,er,En,yn,Cn,qn,pn;ht?de(!0):ae(!0);const lr=yield(0,te.ZP)(y?"/api/knowledge/v2/subject_statistics.json":"/api/knowledge/v2/knowledge_statistics.json",{method:"get",params:SO({subject_id:E,parentNodeUuid:a,labels:"\u56FE\u8C31,\u6807\u7B7E,\u8D44\u6E90",depth:-1},st)});if((lr==null?void 0:lr.status)===0){let Jr=(mt=lr==null?void 0:lr.data)==null?void 0:mt.metricCounters;Jr=Jr||[];const na={graphCount:((dt=Jr.find(ya=>(ya==null?void 0:ya.name)==="\u56FE\u8C31"))==null?void 0:dt.count)||0,tagCount:((Ot=Jr.find(ya=>(ya==null?void 0:ya.name)==="\u6807\u7B7E"))==null?void 0:Ot.count)||0,resourceCount:((_t=Jr.find(ya=>(ya==null?void 0:ya.name)==="\u8D44\u6E90"))==null?void 0:_t.count)||0,proportionCount:(wt=lr==null?void 0:lr.data)==null?void 0:wt.resource_rate};let Hr=Object.entries(($t=lr==null?void 0:lr.data)==null?void 0:$t.study_complete_hash).map(([ya,Ra],Aa)=>({name:We[Aa].name,value:Ra,itemStyle:We[Aa].itemStyle}));const Ar={averageCompletionRate:(gn=lr==null?void 0:lr.data)==null?void 0:gn.study_complete_rate,averageMasteryRate:(Xt=lr==null?void 0:lr.data)==null?void 0:Xt.study_grasp_rate,completionRate:Hr,masteryRate:Object.values((Tn=lr==null?void 0:lr.data)==null?void 0:Tn.study_grasp_hash),course_rank_num:(er=lr==null?void 0:lr.data)==null?void 0:er.course_rank_num,course_rank_all_num:(En=lr==null?void 0:lr.data)==null?void 0:En.course_rank_all_num,system_rank_num:(yn=lr==null?void 0:lr.data)==null?void 0:yn.system_rank_num,system_rank_all_num:(Cn=lr==null?void 0:lr.data)==null?void 0:Cn.system_rank_all_num},Wr=(qn=lr==null?void 0:lr.courses)==null?void 0:qn.map(ya=>({label:ya.name,value:ya.id}));ye(Wr),ze(na),Ze(Ar),ht||ee({course_id:((pn=Wr==null?void 0:Wr[0])==null?void 0:pn.value)||null})}setTimeout(()=>{ae(!1)},500),de(!1)}),et=st=>{z.course_id=st,ee(SO({},z)),Ye(z,!0)};return Mo.createElement(Qt,null,Mo.createElement("div",{className:Pu.statistics},Mo.createElement("div",{onClick:()=>b(!0),className:Pu.noUnfold},Mo.createElement("img",{style:{width:"32rem",marginBottom:"4rem"},src:UY}),Mo.createElement("span",null,"\u7EDF"),Mo.createElement("span",null,"\u8BA1")),Mo.createElement("div",{className:Pu.wrapBox,style:{right:x?0:"-600rem"}},re&&Mo.createElement(ce.Z,{style:{width:"100%",marginTop:"200rem"},spinning:!0}),!re&&Mo.createElement(Mo.Fragment,null,Mo.createElement("div",{className:Pu.scrollBox},Mo.createElement("div",{className:Pu.content},Mo.createElement("div",{className:Pu.title},Mo.createElement("img",{src:WY}),Mo.createElement("span",null,"\u56FE\u8C31\u7EDF\u8BA1\u5206\u6790")),Mo.createElement("div",{className:Pu.top},Mo.createElement("div",{className:Pu.topLi},Mo.createElement("div",null,ke==null?void 0:ke.graphCount),Mo.createElement("div",null,"\u77E5\u8BC6\u56FE\u8C31\u6570\u91CF")),Mo.createElement("div",{className:Pu.topLi},Mo.createElement("div",null,ke==null?void 0:ke.tagCount),Mo.createElement("div",null,"\u6807\u7B7E\u8282\u70B9\u6570\u91CF")),Mo.createElement("div",{className:Pu.topLi},Mo.createElement("div",null,ke==null?void 0:ke.resourceCount),Mo.createElement("div",null,"\u8D44\u6E90\u8282\u70B9\u6570\u91CF"))),Mo.createElement("div",{style:{marginTop:"20rem"},className:Pu.title},Mo.createElement("img",{src:GY}),Mo.createElement("span",null,"\u5B66\u4E60\u7EDF\u8BA1\u5206\u6790")),Mo.createElement(ce.Z,{spinning:oe},Mo.createElement("div",{className:Pu.bottom},Mo.createElement("div",{className:Pu.bottomLi,style:{marginTop:"82rem",marginRight:"26rem"}},De.get("type")!=="classrooms"&&Mo.createElement(xt.default,{className:Pu.select,options:ge,value:z==null?void 0:z.course_id,size:"small",onChange:et,placeholder:"\u8BF7\u9009\u62E9",getPopupContainer:st=>st.parentNode,style:{width:"222rem"},suffixIcon:Mo.createElement("i",{className:"iconfont icon-a-bianzu11",style:{color:"#fff",fontSize:"12rem"}})}),Mo.createElement("b",{style:{fontSize:"26rem",marginTop:"5rem"}},Ve==null?void 0:Ve.course_rank_num),Mo.createElement("div",{style:{fontSize:"16rem",marginTop:"4rem"}},"\u8BFE\u5802\u6392\u540D"),Mo.createElement("div",{style:{fontSize:"16rem",marginTop:"4rem"}},"\uFF08\u5171",Ve==null?void 0:Ve.course_rank_all_num,"\u4EBA\uFF09"),Mo.createElement("img",{src:HY})),Mo.createElement("div",{className:Pu.bottomLi,style:{marginTop:"82rem"}},Mo.createElement("b",{style:{fontSize:"26rem",marginTop:"30rem"}},Ve==null?void 0:Ve.system_rank_num),Mo.createElement("div",{style:{fontSize:"16rem",marginTop:"4rem"}},"\u7CFB\u7EDF\u6392\u540D"),Mo.createElement("div",{style:{fontSize:"16rem",marginTop:"4rem"}},"\uFF08\u5171",Ve==null?void 0:Ve.system_rank_all_num,"\u4EBA\uFF09"),Mo.createElement("img",{src:VY})),Mo.createElement("div",{className:Pu.bottomLi,style:{marginTop:"104rem",marginRight:"26rem"}},Mo.createElement("b",{style:{fontSize:"26rem",marginTop:"30rem"}},Ve==null?void 0:Ve.averageCompletionRate,"%"),Mo.createElement("div",{style:{fontSize:"14rem",marginTop:"2rem"}},"\u5E73\u5747\u5B8C\u6210\u7387"),Mo.createElement("img",{src:KY})),Mo.createElement("div",{className:Pu.bottomLi,style:{marginTop:"104rem"}},Mo.createElement("b",{style:{fontSize:"26rem",marginTop:"30rem"}},Ve==null?void 0:Ve.averageMasteryRate,"%"),Mo.createElement("div",{style:{fontSize:"14rem",marginTop:"2rem"}},"\u5E73\u5747\u638C\u63E1\u7387"),Mo.createElement("img",{src:ZY})),Mo.createElement("div",{className:Pu.echarts},Mo.createElement("div",{className:Pu.name},"\u5B8C\u6210\u60C5\u51B5"),Mo.createElement(Ur,{dataSource:Ve==null?void 0:Ve.completionRate})),Mo.createElement("div",{className:Pu.echarts},Mo.createElement("div",{className:Pu.name},"\u638C\u63E1\u60C5\u51B5"),Mo.createElement($Y,{dataSource:Ve==null?void 0:Ve.masteryRate})))))),x&&Mo.createElement("div",{onClick:()=>b(!1),className:Pu.unfold})))))},Ev=Te(59301),iX=Object.defineProperty,DE=Object.getOwnPropertySymbols,bO=Object.prototype.hasOwnProperty,CO=Object.prototype.propertyIsEnumerable,PO=(E,a,y)=>a in E?iX(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,IE=(E,a)=>{for(var y in a||(a={}))bO.call(a,y)&&PO(E,y,a[y]);if(DE)for(var y of DE(a))CO.call(a,y)&&PO(E,y,a[y]);return E},oX=(E,a)=>{var y={};for(var x in E)bO.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&DE)for(var x of DE(E))a.indexOf(x)<0&&CO.call(E,x)&&(y[x]=E[x]);return y},wO=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(oe){b(oe)}},ee=ae=>{try{re(y.throw(ae))}catch(oe){b(oe)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});const sX=E=>{var a=E,{pathsDetail:y,user:x,globalSetting:b,loading:z,dispatch:ee,tpacti:re,settupuname:ae,settpacti:oe}=a,de=oX(a,["pathsDetail","user","globalSetting","loading","dispatch","tpacti","settupuname","settpacti"]),ge,ye,De,ke,ze,We,Ve,Ze,Ye;const et=(0,be.useParams)(),[st,ht]=(0,Ne.useState)(""),[mt,dt]=(0,Ne.useState)([]),[Ot]=(0,be.useSearchParams)(),[_t,wt]=(0,Ne.useState)([]),[$t,gn]=(0,Ne.useState)(1);(0,Ne.useEffect)(()=>{var er,En,yn,Cn,qn,pn;if((er=y==null?void 0:y.detail)!=null&&er.nodes&&$t===1){dt((En=y==null?void 0:y.detail)==null?void 0:En.nodes),ht((qn=(Cn=(yn=y==null?void 0:y.detail)==null?void 0:yn.nodes)==null?void 0:Cn[1])==null?void 0:qn.uuid);let lr=[...(pn=y==null?void 0:y.detail)==null?void 0:pn.nodes];wt(lr==null?void 0:lr.splice(1)),gn(2)}},[(ge=y==null?void 0:y.detail)==null?void 0:ge.nodes]),(0,Ne.useEffect)(()=>{var er,En,yn;ht(re||((yn=(En=(er=y==null?void 0:y.detail)==null?void 0:er.nodes)==null?void 0:En[1])==null?void 0:yn.uuid))},[re]);function Xt(){return wO(this,null,function*(){var er,En,yn,Cn,qn,pn,lr,Jr;if(Ot.get("type")==="classrooms"){let na=yield ee({type:"pathsDetail/getCourseDetail",payload:IE({id:et.pathId,knowledge:!0},(0,vt.oP)())});dt(na==null?void 0:na.nodes),ht((En=(er=na==null?void 0:na.nodes)==null?void 0:er[1])==null?void 0:En.uuid),oe((Cn=(yn=na==null?void 0:na.nodes)==null?void 0:yn[1])==null?void 0:Cn.uuid);let Hr=[...na==null?void 0:na.nodes];wt(Hr==null?void 0:Hr.splice(1))}else{let na=yield ee({type:"pathsDetail/getPathsDetail",payload:IE({id:et.pathId,knowledge:!0},(0,vt.oP)())});dt(na==null?void 0:na.nodes),ht((pn=(qn=na==null?void 0:na.nodes)==null?void 0:qn[1])==null?void 0:pn.uuid),oe((Jr=(lr=na==null?void 0:na.nodes)==null?void 0:lr[1])==null?void 0:Jr.uuid);let Hr=[...na==null?void 0:na.nodes];wt(Hr==null?void 0:Hr.splice(1))}})}function Tn(){return wO(this,null,function*(){var er,En,yn,Cn,qn,pn,lr,Jr,na,Hr,Ar,Wr,ya,Ra;if(Ot.get("type")==="classrooms"){let Aa=yield ee({type:"pathsDetail/getCourseDetail",payload:IE({id:(er=y==null?void 0:y.detail)==null?void 0:er.id,knowledge:!0},(0,vt.oP)())});ht((yn=(En=Aa==null?void 0:Aa.nodes)==null?void 0:En[1])==null?void 0:yn.uuid),oe((qn=(Cn=Aa==null?void 0:Aa.nodes)==null?void 0:Cn[1])==null?void 0:qn.uuid),ae(((lr=(pn=Aa==null?void 0:Aa.nodes)==null?void 0:pn[1])==null?void 0:lr.name)||"\u8BFE\u7A0B\u56FE\u8C31")}else{let Aa=yield ee({type:"pathsDetail/getPathsDetail",payload:IE({id:(Jr=y==null?void 0:y.detail)==null?void 0:Jr.id,knowledge:!0},(0,vt.oP)())});ht((Hr=(na=Aa==null?void 0:Aa.nodes)==null?void 0:na[1])==null?void 0:Hr.uuid),oe((Wr=(Ar=Aa==null?void 0:Aa.nodes)==null?void 0:Ar[1])==null?void 0:Wr.uuid),ae(((Ra=(ya=Aa==null?void 0:Aa.nodes)==null?void 0:ya[1])==null?void 0:Ra.name)||"\u8BFE\u7A0B\u56FE\u8C31")}})}return Ev.createElement("div",{style:{height:"calc(100vh - 72px - 170rem)"}},(mt==null?void 0:mt.length)>0&&Ev.createElement("div",{className:PT.content},((ye=mt==null?void 0:mt[0])==null?void 0:ye.uuid)===st&&st&&Ev.createElement(yY,{onAddSuccess:Tn,setActivated:ht,subjectId:(De=y==null?void 0:y.detail)==null?void 0:De.id}),((ke=mt==null?void 0:mt[0])==null?void 0:ke.uuid)!==st&&st&&Ev.createElement(ZQ,{tpacti:re,setactivied:()=>{var er;ht((er=mt==null?void 0:mt[0])==null?void 0:er.uuid)},initdata:Tn,Tabsdatas:_t,uuid:st})),(ze=y==null?void 0:y.detail)!=null&&ze.can_managed?Ev.createElement(jY,{isAll:((We=mt==null?void 0:mt[0])==null?void 0:We.uuid)===st,subjectId:(Ve=y==null?void 0:y.detail)==null?void 0:Ve.id,uuid:st}):Ev.createElement(aX,{isAll:((Ze=mt==null?void 0:mt[0])==null?void 0:Ze.uuid)===st,subjectId:(Ye=y==null?void 0:y.detail)==null?void 0:Ye.id,uuid:st}))};var lX=(0,be.connect)(({pathsDetail:E,user:a,loading:y,globalSetting:x})=>({pathsDetail:E,user:a,globalSetting:x,loading:y.models.index}))(sX),Ms=Te(59301),uX=Object.defineProperty,OE=Object.getOwnPropertySymbols,MO=Object.prototype.hasOwnProperty,DO=Object.prototype.propertyIsEnumerable,IO=(E,a,y)=>a in E?uX(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,OO=(E,a)=>{for(var y in a||(a={}))MO.call(a,y)&&IO(E,y,a[y]);if(OE)for(var y of OE(a))DO.call(a,y)&&IO(E,y,a[y]);return E},cX=(E,a)=>{var y={};for(var x in E)MO.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&OE)for(var x of OE(E))a.indexOf(x)<0&&DO.call(E,x)&&(y[x]=E[x]);return y},TO=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(oe){b(oe)}},ee=ae=>{try{re(y.throw(ae))}catch(oe){b(oe)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});const dX=E=>{var a=E,{pathsDetail:y,user:x,globalSetting:b,loading:z,dispatch:ee,activied:re,setactivied:ae}=a,oe=cX(a,["pathsDetail","user","globalSetting","loading","dispatch","activied","setactivied"]),de,ge,ye,De,ke,ze,We,Ve,Ze,Ye,et,st,ht,mt;const dt=(0,be.useParams)(),[Ot]=(0,be.useSearchParams)(),[_t,wt]=(0,Ne.useState)(((ye=(ge=(de=y==null?void 0:y.detail)==null?void 0:de.nodes)==null?void 0:ge[0])==null?void 0:ye.name)||"\u8BFE\u7A0B\u56FE\u8C31"),[$t,gn]=(0,Ne.useState)(((ze=(ke=(De=y==null?void 0:y.detail)==null?void 0:De.route_nodes)==null?void 0:ke[0])==null?void 0:ze.name)||"\u5B66\u4E60\u8DEF\u5F84"),[Xt,Tn]=(0,Ne.useState)([]),[er,En]=(0,Ne.useState)(),[yn,Cn]=(0,Ne.useState)(),[qn]=xe.default.useForm(),[pn,lr]=(0,Ne.useState)(!1),[Jr,na]=(0,Ne.useState)(!1),Hr=[{name:"\u8BFE\u7A0B\u4FE1\u606F",key:1,content:Ms.createElement(kt,null),isshow:Ot.get("type")!=="classrooms"},{name:"\u8BFE\u7A0B\u56FE\u8C31",key:3,content:((Ve=(We=y==null?void 0:y.detail)==null?void 0:We.nodes)==null?void 0:Ve.length)<=1?Ms.createElement(mr,{text:"\u6682\u65E0\u56FE\u8C31\uFF0C\u7ACB\u5373\u65B0\u5EFA\u4E00\u4E2A\u56FE\u8C31\u5427\uFF5E",textColor:"#fff",buttonText:((Ze=y==null?void 0:y.detail)==null?void 0:Ze.can_managed)&&"\u65B0\u5EFA\u56FE\u8C31",buttonTexttow:((Ye=y==null?void 0:y.detail)==null?void 0:Ye.can_managed)&&Ot.get("type")!=="classrooms"&&"\u751F\u6210\u56FE\u8C31",ontwoClick:()=>TO(void 0,null,function*(){var Wr;let ya=yield(0,te.ZP)("/api/knowledge/v2/sync.json",{method:"post",body:{subject_id:(Wr=y==null?void 0:y.detail)==null?void 0:Wr.id}});ya.status===0&&_e.ZP.info(ya==null?void 0:ya.message)}),onClick:()=>na(!0)}):Ms.createElement(lX,{settupuname:wt,settpacti:En,tpacti:er}),isshow:!0},{name:"\u5B66\u4E60\u8DEF\u5F84",key:2,content:Ms.createElement(oo,{setxxljac:Cn,dispatch:ee,xxljac:yn,pathsDetail:y}),isshow:!0},{name:"\u4EA4\u6D41\u53CD\u9988",key:4,content:Ms.createElement(Le,null),isshow:Ot.get("type")!=="classrooms"},{name:"\u5B66\u60C5\u9884\u8B66",key:7,content:Ms.createElement(ju,null),isshow:Ot.get("type")=="classrooms"}].filter(Wr=>Wr==null?void 0:Wr.isshow);(0,Ne.useEffect)(()=>{var Wr,ya;if((Wr=y==null?void 0:y.detail)!=null&&Wr.nodes){let Ra=[...(ya=y==null?void 0:y.detail)==null?void 0:ya.nodes];Tn(Ra==null?void 0:Ra.splice(1))}},[(et=y==null?void 0:y.detail)==null?void 0:et.nodes]);const Ar=Wr=>TO(void 0,null,function*(){var ya,Ra,Aa,co,So,ti,qi,Gi,fo,Po;const{nodeType:Es,description:as,name:yi,tags:Ri}=Wr;lr(!0);const Sa=yield(0,te.ZP)("/api/knowledge/v2/add_node.json",{method:"POST",body:{label:"\u56FE\u8C31",subject_id:(ya=y==null?void 0:y.detail)==null?void 0:ya.id,properties:{description:as,rootNodeUuid:(co=(Aa=(Ra=y==null?void 0:y.detail)==null?void 0:Ra.nodes)==null?void 0:Aa[0])==null?void 0:co.uuid,name:yi,nodeType:Es[0],tags:(Ri==null?void 0:Ri.join("\uFF0C"))||"",color:"1"},relationships:[{startNodeUuid:(qi=(ti=(So=y==null?void 0:y.detail)==null?void 0:So.nodes)==null?void 0:ti[0])==null?void 0:qi.uuid,type:"\u5305\u542B"}]}});(Sa==null?void 0:Sa.status)===0&&(na(!1),En((Gi=Sa==null?void 0:Sa.data)==null?void 0:Gi.uuid),wt(yi),ae(3),Ot.get("type")==="classrooms"?ee({type:"pathsDetail/getCourseDetail",payload:OO({id:(fo=y==null?void 0:y.detail)==null?void 0:fo.id,knowledge:!0},(0,vt.oP)())}):ee({type:"pathsDetail/getPathsDetail",payload:OO({id:(Po=y==null?void 0:y.detail)==null?void 0:Po.id,knowledge:!0},(0,vt.oP)())})),lr(!1)});return Ms.createElement("div",null,Ms.createElement("div",{className:Ut.tabs},Hr==null?void 0:Hr.map(Wr=>{var ya,Ra,Aa,co,So,ti,qi,Gi,fo,Po,Es,as;return Ms.createElement("div",{onClick:()=>{var yi,Ri,Sa,Fa,ni,Ki,Oa,xo;ae(Wr.key),(Wr==null?void 0:Wr.name)==="\u8BFE\u7A0B\u56FE\u8C31"&&(console.log("---",2),wt(((yi=Xt==null?void 0:Xt[0])==null?void 0:yi.name)||"\u8BFE\u7A0B\u56FE\u8C31"),En((Ri=Xt==null?void 0:Xt[0])==null?void 0:Ri.uuid)),(Wr==null?void 0:Wr.name)==="\u5B66\u4E60\u8DEF\u5F84"&&(gn(((ni=(Fa=(Sa=y==null?void 0:y.detail)==null?void 0:Sa.route_nodes)==null?void 0:Fa[0])==null?void 0:ni.name)||"\u5B66\u4E60\u8DEF\u5F84"),Cn((xo=(Oa=(Ki=y==null?void 0:y.detail)==null?void 0:Ki.route_nodes)==null?void 0:Oa[0])==null?void 0:xo.id))},className:re===(Wr==null?void 0:Wr.key)?Ut.activied:Ut.tab},((Wr==null?void 0:Wr.name)==="\u8BFE\u7A0B\u4FE1\u606F"||(Wr==null?void 0:Wr.name)==="\u4EA4\u6D41\u53CD\u9988"||(Wr==null?void 0:Wr.name)==="\u5B66\u60C5\u9884\u8B66")&&(Wr==null?void 0:Wr.name),(Wr==null?void 0:Wr.name)==="\u8BFE\u7A0B\u56FE\u8C31"&&Ms.createElement($m.Z,{overlayClassName:Ut.dropdownst,disabled:(Xt==null?void 0:Xt.length)===0,menu:{items:Xt==null?void 0:Xt.map(yi=>({label:Ms.createElement(on.Z,{title:yi==null?void 0:yi.name}," ",Ms.createElement("span",{className:Ut.dropnametext,style:{width:"100%"},onClick:Ri=>{Ri.stopPropagation(),wt(yi==null?void 0:yi.name),En(yi==null?void 0:yi.uuid),ae(3)}},yi==null?void 0:yi.name)),key:yi==null?void 0:yi.uuid,show:!0})),selectable:!0,selectedKeys:[er||((Aa=(Ra=(ya=y==null?void 0:y.detail)==null?void 0:ya.nodes)==null?void 0:Ra[1])==null?void 0:Aa.uuid)]}},Ms.createElement("span",{className:Ut.nametext},"\u8BFE\u7A0B\u56FE\u8C31 ",(Xt==null?void 0:Xt.length)>0&&Ms.createElement("i",{style:{fontSize:"12rem",marginLeft:"10rem"},className:"iconfont icon-zhankai10"}))),(Wr==null?void 0:Wr.name)==="\u5B66\u4E60\u8DEF\u5F84"&&Ms.createElement($m.Z,{overlayClassName:Ut.dropdownst,disabled:((So=(co=y==null?void 0:y.detail)==null?void 0:co.route_nodes)==null?void 0:So.length)===0,overlayStyle:{background:"#13203D"},menu:{items:(qi=(ti=y==null?void 0:y.detail)==null?void 0:ti.route_nodes)==null?void 0:qi.map((yi,Ri)=>({label:Ms.createElement(on.Z,{title:yi==null?void 0:yi.name},Ms.createElement("span",{className:Ut.dropnametext,style:{width:"100%"},onClick:Sa=>{Sa.stopPropagation(),gn(yi==null?void 0:yi.name),Cn(yi==null?void 0:yi.id),ae(2)}},yi==null?void 0:yi.name)),key:yi==null?void 0:yi.id,show:!0})),selectable:!0,selectedKeys:[(yn||((Po=(fo=(Gi=y==null?void 0:y.detail)==null?void 0:Gi.route_nodes)==null?void 0:fo[0])==null?void 0:Po.id))+""]}},Ms.createElement("span",{className:Ut.nametext},"\u5B66\u4E60\u8DEF\u5F84 ",((as=(Es=y==null?void 0:y.detail)==null?void 0:Es.route_nodes)==null?void 0:as.length)>0&&Ms.createElement("i",{style:{fontSize:"12rem",marginLeft:"10rem"},className:"iconfont icon-zhankai10"}))))}),Ms.createElement(Qt,null,Ms.createElement(Ms.Fragment,null,Ot.get("type")==="classrooms"&&(0,fn.JA)()&&Ms.createElement("div",{style:{position:"fixed",right:"20rem",top:"7rem"}},Ms.createElement("span",{onClick:()=>{var Wr;window.open((Wr=y==null?void 0:y.detail)==null?void 0:Wr.first_category_url)},style:{width:"128rem",height:"36rem",lineHeight:"36rem",display:"inline-block",textAlign:"center",background:"#fff",color:"#1B8565",fontSize:"14rem",borderRadius:"20rem",cursor:"pointer"}},"\u8FD4\u56DE\u6559\u5B66\u8BFE\u5802")),re===3&&((st=y==null?void 0:y.detail)==null?void 0:st.can_managed)&&Ms.createElement("div",{style:{position:"fixed",right:Ot.get("type")!=="classrooms"?"170rem":"20rem",top:"7rem"}},Ms.createElement("span",{onClick:()=>{na(!0)},style:{width:"128rem",height:"36rem",lineHeight:"36rem",display:"inline-block",textAlign:"center",background:"#fff",color:"#1B8565",fontSize:"14rem",borderRadius:"20rem",cursor:"pointer"}},"\u521B\u5EFA\u77E5\u8BC6\u56FE\u8C31")),Ot.get("type")!=="classrooms"&&(re===2||re===3)&&!(0,fn.JA)()&&Ms.createElement(AT,{activied:re,styles:{position:"fixed",right:re===3?"20rem":"170rem",top:"7rem"}})))),Ms.createElement(Me.default,{open:Jr,centered:!0,width:"1000rem",okText:"\u4FDD\u5B58",onCancel:()=>na(!1),cancelText:"\u53D6\u6D88",afterClose:()=>{qn.resetFields()},confirmLoading:pn,onOk:()=>qn.submit(),title:"\u65B0\u589E\u77E5\u8BC6\u56FE\u8C31"},Ms.createElement("div",{className:Ut.modal},Ms.createElement("div",{className:Ut.mHead},"\u8282\u70B9\u5C5E\u6027"),Ms.createElement(xe.default,{form:qn,scrollToFirstError:!0,layout:"horizontal",colon:!1,size:"large",labelCol:{flex:"110rem"},onFinish:Ar,className:Ut.form},Ms.createElement(xe.default.Item,{label:"\u56FE\u8C31\u540D\u79F0",name:"name",rules:[{required:!0,message:"\u8BF7\u8F93\u5165\u8282\u70B9\u540D\u79F0"},{type:"string",max:60,message:"\u8F93\u5165\u8D85\u9650\uFF0C\u8BF7\u7F29\u51CF\u5B57\u7B26\u6570"},{type:"string",whitespace:!0,message:"\u5185\u5BB9\u4E0D\u80FD\u5168\u4E3A\u7A7A\u683C"}]},Ms.createElement(Se.default,{maxLength:60,showCount:!0,placeholder:"\u8BF7\u8F93\u5165"})),Ms.createElement(xe.default.Item,{label:"\u7B80\u4ECB",name:"description",rules:[{type:"string",max:5e3,message:"\u8F93\u5165\u8D85\u9650\uFF0C\u8BF7\u7F29\u51CF\u5B57\u7B26\u6570"},{type:"string",whitespace:!0,message:"\u5185\u5BB9\u4E0D\u80FD\u5168\u4E3A\u7A7A\u683C"}]},Ms.createElement(Se.default.TextArea,{maxLength:5e3,showCount:!0,placeholder:"\u8BF7\u8F93\u5165"})),Ms.createElement(xe.default.Item,{className:Ut.mType,label:Ms.createElement("span",null,"\u56FE\u8C31\u7C7B\u578B ",Ms.createElement(on.Z,{title:"\u5F53\u524D\u77E5\u8BC6\u56FE\u8C31\u7684\u7C7B\u578B\uFF0C\u5982\uFF1A\u5927\u7EB2\u56FE\u8C31\u3001\u80FD\u529B\u56FE\u8C31"},Ms.createElement(Vr.Z,null))),name:"nodeType",rules:[{required:!0,message:"\u8BF7\u9009\u62E9\u8282\u70B9\u7C7B\u578B"}]},Ms.createElement(EC,{subjectId:(ht=y==null?void 0:y.detail)==null?void 0:ht.id,type:1}))))),Ms.createElement("div",{className:Ut.placeholder}),Ms.createElement("div",{className:Ut.content},(mt=Hr.find(Wr=>Wr.key===re))==null?void 0:mt.content))};var fX=(0,be.connect)(({pathsDetail:E,user:a,loading:y,globalSetting:x})=>({pathsDetail:E,user:a,globalSetting:x,loading:y.models.index}))(dX),TE=Te(59301),hX=Object.defineProperty,LE=Object.getOwnPropertySymbols,LO=Object.prototype.hasOwnProperty,BO=Object.prototype.propertyIsEnumerable,NO=(E,a,y)=>a in E?hX(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,RO=(E,a)=>{for(var y in a||(a={}))LO.call(a,y)&&NO(E,y,a[y]);if(LE)for(var y of LE(a))BO.call(a,y)&&NO(E,y,a[y]);return E},gX=(E,a)=>{var y={};for(var x in E)LO.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&LE)for(var x of LE(E))a.indexOf(x)<0&&BO.call(E,x)&&(y[x]=E[x]);return y},vX=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(oe){b(oe)}},ee=ae=>{try{re(y.throw(ae))}catch(oe){b(oe)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,ee);re((y=y.apply(E,a)).next())});const{TabPane:zre}=yt.default;var mX=(E=>(E.All="",E.Shixun="shixun",E.VideoItem="video",E.Attachment="attachment",E.group_count="group_homework",E.normal_count="normal_homework",E.ExaminationBank="exercise",E.HomeworkCommon="hack_homework",E.Discusses="Discusses",E))(mX||{});function FO(E){const a=(b,z)=>{if(b.localName===z)return b;for(let ee=0,re=b;re=re.parentNode;ee++){if(re.localName===z)return re;if(re==document.documentElement)return!1}},y=E.target,x=a(y,"a");if(console.log([x],x==null?void 0:x.href,44),!(x!=null&&x.href)&&y.tagName.toUpperCase()==="IMG"){let b=y.src||y.getAttribute("src");b&&b.indexOf("/images/avatars/User")===-1&&(E.stopPropagation(),E.preventDefault(),ft.Z.publish("preview-image",b))}}const pX=E=>{var a=E,{pathsDetail:y,globalSetting:x,loading:b,dispatch:z}=a,ee=gX(a,["pathsDetail","globalSetting","loading","dispatch"]);const[re]=(0,be.useSearchParams)(),ae=(0,be.useParams)(),oe=(0,Ne.useRef)(),[de,ge]=(0,Ne.useState)(""),[ye,De]=(0,Ne.useState)(1);(0,Ne.useEffect)(()=>{re.get("tabs")&&De(parseInt(re.get("tabs"))||3)},[re.get("tabs")]),(0,Ne.useEffect)(()=>{if(oe.current)return oe.current.addEventListener("mousedown",FO),()=>{var ze;(ze=oe.current)==null||ze.removeEventListener("mousedown",FO)}},[oe.current]),(0,Ne.useEffect)(()=>{ae.pathId&&ke()},[ae.pathId]),(0,Ne.useEffect)(()=>(z({type:"globalSetting/footerToggle",payload:!1}),()=>{z({type:"globalSetting/footerToggle",payload:!0})}),[]);const ke=()=>vX(void 0,null,function*(){if(re.get("type")==="classrooms"){z({type:"pathsDetail/getCourseDetail",payload:RO({id:ae.pathId,knowledge:!0},(0,vt.oP)())});return}const ze=yield z({type:"pathsDetail/getPathsDetail",payload:RO({id:ae.pathId,knowledge:!0},(0,vt.oP)())});ze!=null&&ze.id&&re.get("token")&&(location.href=location.pathname)});return TE.createElement(ce.Z,{spinning:!1},TE.createElement("section",{id:"knowledgegraphDetail",className:ct.bg},TE.createElement(lt,null),TE.createElement(fX,{activied:ye,setactivied:De})))};var yX=(0,be.connect)(({pathsDetail:E,loading:a,globalSetting:y})=>({pathsDetail:E,globalSetting:y,loading:a}))(pX)},16769:function(At,It,Te){"use strict";Te.d(It,{BU:function(){return He},Dj:function(){return Oe},gH:function(){return Ne},vp:function(){return be}});function Oe(_e){try{_e.mozRequestFullScreen?_e.mozRequestFullScreen():_e.webkitRequestFullScreen&&_e.webkitRequestFullScreen()}catch(Me){console.log(Me,":e")}}function He(){window.top.document.webkitExitFullscreen?window.top.document.webkitExitFullscreen():document.exitFullscreen?window.top.document.exitFullscreen():document.msExitFullscreen?window.top.document.msExitFullscreen():document.mozCancelFullScreen&&window.top.document.mozCancelFullScreen()}const Ne=()=>{if(document.webkitExitFullscreen)return"webkitfullscreenchange";if(document.exitFullscreen)return"fullscreenchange";if(document.msExitFullscreen)return"msfullscreenchange";if(document.mozCancelFullScreen)return"mozfullscreenchange"};function be(){var _e=window.top.document.fullscreenElement||window.top.document.mozFullscreenElement||window.top.document.webkitFullscreenElement,Me=document.fullscreenEnabled||document.mozFullscreenEnabled||document.webkitFullscreenEnabled;return console.log("fullscreenElement",_e),window.isFullScreen?window.isFullScreen:_e!=null}},91723:function(At,It,Te){"use strict";Te.d(It,{rX:function(){return ie},pW:function(){return ue},gy:function(){return me},xY:function(){return he},O5:function(){return fe},tJ:function(){return ce},o1:function(){return te},Rd:function(){return se}});var Oe=Te(90115),He=Te(43418),Ne=Te(28103),be=Te(8591),_e=Te(16624),Me=Te(22566),ve=Te(87169),Ee=Te(25510),Pe="data:image/png;base64,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",xe=Te.p+"static/newqrcode.a8740efb.png",pe=Te(32637),Ae=Te(59301),Se=(Ce,Ie,Fe)=>new Promise((Re,Ue)=>{var Ge=rt=>{try{Qe(Fe.next(rt))}catch($e){Ue($e)}},Je=rt=>{try{Qe(Fe.throw(rt))}catch($e){Ue($e)}},Qe=rt=>rt.done?Re(rt.value):Promise.resolve(rt.value).then(Ge,Je);Qe((Fe=Fe.apply(Ce,Ie)).next())});const ce=(Ce,Ie=!1)=>!!(te(Ce)&&ne(Ie)),te=Ce=>(0,_e.bg)()?!0:(Ce({type:"user/showPopLogin",payload:{showPopLogin:!0,showClosable:!0}}),!1),ne=(Ce=!1)=>{var Ie;const{user:Fe}=(0,Oe.getDvaApp)()._store.getState();return(Ie=Fe.userInfo)!=null&&Ie.profile_completed?!0:(He.default.confirm({title:"\u63D0\u793A",width:530,centered:!0,content:"\u60A8\u9700\u8981\u53BB\u5B8C\u5584\u60A8\u7684\u4E2A\u4EBA\u8D44\u6599\uFF0C\u624D\u80FD\u4F7F\u7528\u6B64\u529F\u80FD",okText:"\u7ACB\u5373\u5B8C\u5584",cancelText:"\u7A0D\u540E\u5B8C\u5584",onOk:()=>{(0,Me.xg)("/account/profile/edit"),le()}}),!1)},le=()=>{He.default.success({title:"\u63D0\u793A",width:430,closable:!0,centered:!0,content:"\u5DF2\u5B8C\u5584\u4E2A\u4EBA\u8D44\u6599\uFF1F\u8BF7\u5237\u65B0\u9875\u9762",okText:"\u7ACB\u5373\u5237\u65B0",icon:null,onOk:()=>{location.reload()}})},se=()=>{He.default.warning({title:"\u63D0\u793A",icon:null,width:400,content:Ae.createElement("div",{style:{textAlign:"center"}},Ae.createElement("div",{style:{color:"#191919",fontSize:14,marginBottom:15,textAlign:"left"}},"\u8001\u5E08\u60A8\u597D\uFF0C\u60A8\u7684\u8BFE\u5802\u8BD5\u7528\u671F\u5DF2\u7ED3\u675F\uFF0C\u76F8\u5173\u529F\u80FD\u88AB\u9650\u5236\u3002 \u5982\u9700\u7EE7\u7EED\u4F7F\u7528\uFF0C\u8BF7\u5C3D\u5FEB\u5BF9\u63A5\u4EBA\u5DE5\u652F\u6301\uFF01"),Ae.createElement("img",{style:{border:"1px solid #D8E3E9",width:190,height:180},src:pe}),Ae.createElement("div",{style:{color:"#666666",fontSize:14,marginTop:15}},"\u6DFB\u52A0\u5BA2\u670D\u4EBA\u5458\u5FAE\u4FE1\uFF0C\u83B7\u5F97\u66F4\u591A\u652F\u6301"))})},fe=()=>{var Ce;const{user:Ie}=(0,Oe.getDvaApp)()._store.getState();return(Ce=Ie.userInfo)!=null&&Ce.professional_certification?!0:(He.default.confirm({title:"\u63D0\u793A",centered:!0,content:Ae.createElement("div",{className:"tc"},"\u60A8\u9700\u8981\u53BB\u5B8C\u6210\u60A8\u7684\u804C\u4E1A\u8BA4\u8BC1\uFF0C\u624D\u80FD\u4F7F\u7528\u6B64\u529F\u80FD"),okText:"\u7ACB\u5373\u5B8C\u5584",cancelText:"\u7A0D\u540E\u5B8C\u5584",onOk:()=>{(0,Me.xg)("/account/certification")}}),!1)},he=()=>(0,_e.V9)()?!0:(He.default.warning({centered:!0,width:530,title:"\u63D0\u793A",content:Ae.createElement("div",{className:"tc",style:{marginLeft:-38}},Ae.createElement("p",null,"\u626B\u7801\u52A0\u52A9\u6559\uFF0C\u7533\u8BF7\u64CD\u4F5C\u6743\u9650"),Ae.createElement("img",{src:xe,width:200})),okText:"\u6211\u77E5\u9053\u4E86",maskClosable:!0}),!1),ie=(Ce,Ie)=>Ce?!0:(He.default.confirm({centered:!0,zIndex:1e4,width:530,title:"\u63D0\u793A",content:Ae.createElement("div",null,Ae.createElement("p",null,Ie||"\u8BE5\u5B9E\u8DF5\u8D44\u6E90\u9700\u6388\u6743\u540E\u624D\u53EF\u4F7F\u7528\u3002 \u60A8\u53EF\u4EE5\u5728QQ\u670D\u52A1\u7FA4\u5411\u7BA1\u7406\u5458\u7533\u8BF7\uFF0C\u83B7\u5F97\u7EE7\u7EED\u64CD\u4F5C\u7684\u6743\u9650\u3002"),Ae.createElement("div",{style:{marginLeft:"110px"}},Ae.createElement("img",{src:Pe,width:200}),Ae.createElement("div",{style:{marginLeft:"35px"}},"\u7FA4\u53F7\uFF1A","714336072"))),okText:"\u7ACB\u5373\u8054\u7CFB",cancelText:"\u53D6\u6D88",onOk:()=>{(0,Me.xg)("https://qm.qq.com/cgi-bin/qm/qr?k=tIyDPXUtE0yEk-MOJxhH55lTUJS-nYAM&jump_from=webapi")}}),!1),ue=Ce=>{He.default.info({title:"\u8054\u7CFB\u5E73\u53F0\u8FD0\u8425",icon:null,width:615,centered:!0,content:Ae.createElement("div",null,Ae.createElement("div",null,Ae.createElement("p",{style:{color:"#191919",fontWeight:400,fontSize:14}},"\u201C\u4FDD\u5B58\u5B9E\u9A8C\u4E34\u65F6\u6570\u636E\u201D\u529F\u80FD\u4E3A\u4ED8\u8D39\u529F\u80FD\uFF0C\u8BF7\u8054\u7CFB\u5E73\u53F0\u8FD0\u8425\u8FDB\u884C\u5F00\u901A\u3002"),Ae.createElement(Ne.Z,null),Ae.createElement("p",{style:{color:"#666666",fontSize:12}}," ",Ae.createElement("span",{style:{display:"inline-flex",width:14,height:14,borderRadius:2,background:"#F3F3F3",justifyContent:"center",color:"#666666",fontSize:12,lineHeight:"14px",marginRight:8}},"1")," \u56E0\u5E73\u53F0\u7684\u5B9E\u9A8C\u6570\u636E\u50A8\u5B58\u5BB9\u91CF\u548C\u6210\u672C\u6D88\u8017\u8F83\u5927\uFF0C\u5B9E\u8DF5\u9879\u76EE\u9ED8\u8BA4\u4FDD\u5B58\u5B9E\u9A8C\u73AF\u5883\u4E2D\u4E34\u65F6\u6570\u636E ",Ae.createElement("a",null,Ce),"\u5929\u3002"),Ae.createElement("p",{style:{color:"#666666",fontSize:12}}," ",Ae.createElement("span",{style:{display:"inline-flex",width:14,height:14,borderRadius:2,background:"#F3F3F3",justifyContent:"center",color:"#666666",fontSize:12,lineHeight:"14px",marginRight:8}},"2"),"\u82E5\u60A8\u9700\u8981\u4E2A\u6027\u5316\u7684\u6570\u636E\u4FDD\u5B58\u5468\u671F\u670D\u52A1\uFF0C\u6211\u4EEC\u53EF\u4EE5\u63D0\u4F9B\u76F8\u5173\u6280\u672F\u652F\u6301\uFF0C\u5E76\u6839\u636E\u60A8\u7684\u9700\u6C42\u6536\u53D6\u5B9A\u5236\u8D39\u7528\u3002")),Ae.createElement("div",{style:{textAlign:"center",marginTop:30}},Ae.createElement("img",{style:{border:"4px solid #0152d9",borderRadius:"4px"},src:Ee,alt:"\u4E8C\u7EF4\u7801",width:160})))})},me=(Ce,Ie="")=>{const{shixunsDetail:{detail:Fe}}=(0,Oe.getDvaApp)()._store.getState();if((Fe==null?void 0:Fe.public)===2||(Fe==null?void 0:Fe.public)===1||(Fe==null?void 0:Fe.shixun_status)===3){let Re="";return(Fe==null?void 0:Fe.public)===2&&(Re="\u5DF2\u516C\u5F00"),(Fe==null?void 0:Fe.public)===1&&(Re="\u5F85\u5BA1\u6838"),(Fe==null?void 0:Fe.shixun_status)===3&&(Re="\u5DF2\u5173\u95ED"),He.default.info({centered:!0,icon:Ae.createElement(ve.Z,{style:{color:"#faad14"}}),width:460,title:"\u63D0\u793A",content:Ae.createElement("div",{className:"tc",style:{marginLeft:-38}},Ae.createElement("div",{style:{display:"flex",flexDirection:"column",alignItems:"flex-start",paddingLeft:38,margin:"12px 0"}},Ae.createElement("span",null,"\u8BE5\u5B9E\u8DF5\u9879\u76EE\u7684\u72B6\u6001\u4E3A",Re,"\uFF0C",Ie,"\u3002"),Ae.createElement("p",null,"\u5982\u6709\u9700\u8981\uFF0C\u8BF7\u8054\u7CFB\u5E73\u53F0\u7BA1\u7406\u5458\u8FDB\u884C\u6280\u672F\u652F\u6301\u3002")),Ae.createElement("img",{style:{border:"4px solid #0152d9",borderRadius:"4px"},src:Ee,alt:"\u4E8C\u7EF4\u7801",width:160})),okText:"\u6211\u77E5\u9053\u4E86"}),!0}return(Fe==null?void 0:Fe.shixun_status)===2?(He.default.confirm({centered:!0,icon:Ae.createElement(ve.Z,null),title:"\u63D0\u793A",content:Ae.createElement("div",null,Ae.createElement("span",null,"\u8BE5\u5B9E\u8DF5\u9879\u76EE\u5DF2\u53D1\u5E03\uFF0C",Ie,"\u3002"),Ae.createElement("br",null),Ae.createElement("span",null,"\u5982\u6709\u9700\u8981\uFF0C\u60A8\u53EF\u4EE5\u64A4\u9500\u53D1\u5E03\u540E\uFF0C\u518D\u8FDB\u884C\u64CD\u4F5C\u3002")),okText:"\u64A4\u9500\u53D1\u5E03",cancelText:"\u53D6\u6D88",onOk:()=>{He.default.confirm({width:440,centered:!0,icon:Ae.createElement(ve.Z,{style:{color:"#faad14"}}),title:"\u63D0\u793A",content:"\u64A4\u9500\u53D1\u5E03\u540E\uFF0C\u5B66\u5458\u5C06\u65E0\u6CD5\u8FDB\u884C\u7EC3\u4E60\u3002\u662F\u5426\u786E\u8BA4\u64A4\u9500\u53D1\u5E03\uFF1F",okText:"\u786E\u5B9A\u64A4\u9500\u53D1\u5E03",cancelText:"\u53D6\u6D88",onOk:()=>Se(void 0,null,function*(){(yield Ce({type:"shixunsDetail/cancelRelease",payload:{id:Fe==null?void 0:Fe.identifier}})).status!==401&&(be.ZP.success("\u64A4\u9500\u53D1\u5E03\u6210\u529F\u3002\u5B9E\u8BAD\u56DE\u5230\u672A\u53D1\u5E03\u7684\u72B6\u6001\u3002"),Ce({type:"shixunsDetail/getShixunsDetail",payload:{id:Fe==null?void 0:Fe.identifier}}),Ce({type:"practiceSetting/getCommonData",payload:{id:Fe==null?void 0:Fe.identifier}}))})})}}),!0):!1}},69083:function(At,It,Te){"use strict";Te.d(It,{Z:function(){return ha}});class Oe{static install(){Object.setPrototypeOf=Object.setPrototypeOf||function(we,Be){return we.__proto__=Be,we},Object.assign=Object.assign||function(we){if(we==null)throw new TypeError("Cannot convert undefined or null to object");let Be=Object(we);for(let Le=1;Le<arguments.length;Le++){let je=arguments[Le];if(je!=null)for(let Xe in je)je.hasOwnProperty(Xe)&&(Be[Xe]=je[Xe])}return Be},typeof self.Promise!="function"&&Te(3867).polyfill()}}Oe.install();var He=Oe,Ne=Te(86204),be=Te.n(Ne);class _e{static e(we,Be){(!we||_e.FORCE_GLOBAL_TAG)&&(we=_e.GLOBAL_TAG);let Le=`[${we}] > ${Be}`;_e.ENABLE_CALLBACK&&_e.emitter.emit("log","error",Le),_e.ENABLE_ERROR&&(console.error?console.error(Le):console.warn?console.warn(Le):console.log(Le))}static i(we,Be){(!we||_e.FORCE_GLOBAL_TAG)&&(we=_e.GLOBAL_TAG);let Le=`[${we}] > ${Be}`;_e.ENABLE_CALLBACK&&_e.emitter.emit("log","info",Le),_e.ENABLE_INFO&&(console.info?console.info(Le):console.log(Le))}static w(we,Be){(!we||_e.FORCE_GLOBAL_TAG)&&(we=_e.GLOBAL_TAG);let Le=`[${we}] > ${Be}`;_e.ENABLE_CALLBACK&&_e.emitter.emit("log","warn",Le),_e.ENABLE_WARN&&(console.warn?console.warn(Le):console.log(Le))}static d(we,Be){(!we||_e.FORCE_GLOBAL_TAG)&&(we=_e.GLOBAL_TAG);let Le=`[${we}] > ${Be}`;_e.ENABLE_CALLBACK&&_e.emitter.emit("log","debug",Le),_e.ENABLE_DEBUG&&(console.debug?console.debug(Le):console.log(Le))}static v(we,Be){(!we||_e.FORCE_GLOBAL_TAG)&&(we=_e.GLOBAL_TAG);let Le=`[${we}] > ${Be}`;_e.ENABLE_CALLBACK&&_e.emitter.emit("log","verbose",Le),_e.ENABLE_VERBOSE&&console.log(Le)}}_e.GLOBAL_TAG="flv.js",_e.FORCE_GLOBAL_TAG=!1,_e.ENABLE_ERROR=!0,_e.ENABLE_INFO=!0,_e.ENABLE_WARN=!0,_e.ENABLE_DEBUG=!0,_e.ENABLE_VERBOSE=!0,_e.ENABLE_CALLBACK=!1,_e.emitter=new(be());var Me=_e;class ve{constructor(){this._firstCheckpoint=0,this._lastCheckpoint=0,this._intervalBytes=0,this._totalBytes=0,this._lastSecondBytes=0,self.performance&&self.performance.now?this._now=self.performance.now.bind(self.performance):this._now=Date.now}reset(){this._firstCheckpoint=this._lastCheckpoint=0,this._totalBytes=this._intervalBytes=0,this._lastSecondBytes=0}addBytes(we){this._firstCheckpoint===0?(this._firstCheckpoint=this._now(),this._lastCheckpoint=this._firstCheckpoint,this._intervalBytes+=we,this._totalBytes+=we):this._now()-this._lastCheckpoint<1e3?(this._intervalBytes+=we,this._totalBytes+=we):(this._lastSecondBytes=this._intervalBytes,this._intervalBytes=we,this._totalBytes+=we,this._lastCheckpoint=this._now())}get currentKBps(){this.addBytes(0);let we=(this._now()-this._lastCheckpoint)/1e3;return we==0&&(we=1),this._intervalBytes/we/1024}get lastSecondKBps(){return this.addBytes(0),this._lastSecondBytes!==0?this._lastSecondBytes/1024:this._now()-this._lastCheckpoint>=500?this.currentKBps:0}get averageKBps(){let we=(this._now()-this._firstCheckpoint)/1e3;return this._totalBytes/we/1024}}var Ee=ve;class Pe{constructor(we){this._message=we}get name(){return"RuntimeException"}get message(){return this._message}toString(){return this.name+": "+this.message}}class xe extends Pe{constructor(we){super(we)}get name(){return"IllegalStateException"}}class pe extends Pe{constructor(we){super(we)}get name(){return"InvalidArgumentException"}}class Ae extends Pe{constructor(we){super(we)}get name(){return"NotImplementedException"}}const Se={kIdle:0,kConnecting:1,kBuffering:2,kError:3,kComplete:4},ce={OK:"OK",EXCEPTION:"Exception",HTTP_STATUS_CODE_INVALID:"HttpStatusCodeInvalid",CONNECTING_TIMEOUT:"ConnectingTimeout",EARLY_EOF:"EarlyEof",UNRECOVERABLE_EARLY_EOF:"UnrecoverableEarlyEof"};class te{constructor(we){this._type=we||"undefined",this._status=Se.kIdle,this._needStash=!1,this._onContentLengthKnown=null,this._onURLRedirect=null,this._onDataArrival=null,this._onError=null,this._onComplete=null}destroy(){this._status=Se.kIdle,this._onContentLengthKnown=null,this._onURLRedirect=null,this._onDataArrival=null,this._onError=null,this._onComplete=null}isWorking(){return this._status===Se.kConnecting||this._status===Se.kBuffering}get type(){return this._type}get status(){return this._status}get needStashBuffer(){return this._needStash}get onContentLengthKnown(){return this._onContentLengthKnown}set onContentLengthKnown(we){this._onContentLengthKnown=we}get onURLRedirect(){return this._onURLRedirect}set onURLRedirect(we){this._onURLRedirect=we}get onDataArrival(){return this._onDataArrival}set onDataArrival(we){this._onDataArrival=we}get onError(){return this._onError}set onError(we){this._onError=we}get onComplete(){return this._onComplete}set onComplete(we){this._onComplete=we}open(we,Be){throw new Ae("Unimplemented abstract function!")}abort(){throw new Ae("Unimplemented abstract function!")}}let ne={};function le(){let Ct=self.navigator.userAgent.toLowerCase(),we=/(edge)\/([\w.]+)/.exec(Ct)||/(opr)[\/]([\w.]+)/.exec(Ct)||/(chrome)[ \/]([\w.]+)/.exec(Ct)||/(iemobile)[\/]([\w.]+)/.exec(Ct)||/(version)(applewebkit)[ \/]([\w.]+).*(safari)[ \/]([\w.]+)/.exec(Ct)||/(webkit)[ \/]([\w.]+).*(version)[ \/]([\w.]+).*(safari)[ \/]([\w.]+)/.exec(Ct)||/(webkit)[ \/]([\w.]+)/.exec(Ct)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(Ct)||/(msie) ([\w.]+)/.exec(Ct)||Ct.indexOf("trident")>=0&&/(rv)(?::| )([\w.]+)/.exec(Ct)||Ct.indexOf("compatible")<0&&/(firefox)[ \/]([\w.]+)/.exec(Ct)||[],Be=/(ipad)/.exec(Ct)||/(ipod)/.exec(Ct)||/(windows phone)/.exec(Ct)||/(iphone)/.exec(Ct)||/(kindle)/.exec(Ct)||/(android)/.exec(Ct)||/(windows)/.exec(Ct)||/(mac)/.exec(Ct)||/(linux)/.exec(Ct)||/(cros)/.exec(Ct)||[],Le={browser:we[5]||we[3]||we[1]||"",version:we[2]||we[4]||"0",majorVersion:we[4]||we[2]||"0",platform:Be[0]||""},je={};if(Le.browser){je[Le.browser]=!0;let Xe=Le.majorVersion.split(".");je.version={major:parseInt(Le.majorVersion,10),string:Le.version},Xe.length>1&&(je.version.minor=parseInt(Xe[1],10)),Xe.length>2&&(je.version.build=parseInt(Xe[2],10))}if(Le.platform&&(je[Le.platform]=!0),(je.chrome||je.opr||je.safari)&&(je.webkit=!0),je.rv||je.iemobile){je.rv&&delete je.rv;let Xe="msie";Le.browser=Xe,je[Xe]=!0}if(je.edge){delete je.edge;let Xe="msedge";Le.browser=Xe,je[Xe]=!0}if(je.opr){let Xe="opera";Le.browser=Xe,je[Xe]=!0}if(je.safari&&je.android){let Xe="android";Le.browser=Xe,je[Xe]=!0}je.name=Le.browser,je.platform=Le.platform;for(let Xe in ne)ne.hasOwnProperty(Xe)&&delete ne[Xe];Object.assign(ne,je)}le();var se=ne;class fe extends te{static isSupported(){try{let we=se.msedge&&se.version.minor>=15048,Be=se.msedge?we:!0;return self.fetch&&self.ReadableStream&&Be}catch(we){return!1}}constructor(we,Be){super("fetch-stream-loader"),this.TAG="FetchStreamLoader",this._seekHandler=we,this._config=Be,this._needStash=!0,this._requestAbort=!1,this._contentLength=null,this._receivedLength=0}destroy(){this.isWorking()&&this.abort(),super.destroy()}open(we,Be){this._dataSource=we,this._range=Be;let Le=we.url;this._config.reuseRedirectedURL&&we.redirectedURL!=null&&(Le=we.redirectedURL);let je=this._seekHandler.getConfig(Le,Be),Xe=new self.Headers;if(typeof je.headers=="object"){let xt=je.headers;for(let Jt in xt)xt.hasOwnProperty(Jt)&&Xe.append(Jt,xt[Jt])}let Et={method:"GET",headers:Xe,mode:"cors",cache:"default",referrerPolicy:"no-referrer-when-downgrade"};if(typeof this._config.headers=="object")for(let xt in this._config.headers)Xe.append(xt,this._config.headers[xt]);we.cors===!1&&(Et.mode="same-origin"),we.withCredentials&&(Et.credentials="include"),we.referrerPolicy&&(Et.referrerPolicy=we.referrerPolicy),this._status=Se.kConnecting,self.fetch(je.url,Et).then(xt=>{if(this._requestAbort){this._requestAbort=!1,this._status=Se.kIdle;return}if(xt.ok&&xt.status>=200&&xt.status<=299){if(xt.url!==je.url&&this._onURLRedirect){let Vt=this._seekHandler.removeURLParameters(xt.url);this._onURLRedirect(Vt)}let Jt=xt.headers.get("Content-Length");return Jt!=null&&(this._contentLength=parseInt(Jt),this._contentLength!==0&&this._onContentLengthKnown&&this._onContentLengthKnown(this._contentLength)),this._pump.call(this,xt.body.getReader())}else if(this._status=Se.kError,this._onError)this._onError(ce.HTTP_STATUS_CODE_INVALID,{code:xt.status,msg:xt.statusText});else throw new Pe("FetchStreamLoader: Http code invalid, "+xt.status+" "+xt.statusText)}).catch(xt=>{if(this._status=Se.kError,this._onError)this._onError(ce.EXCEPTION,{code:-1,msg:xt.message});else throw xt})}abort(){this._requestAbort=!0}_pump(we){return we.read().then(Be=>{if(Be.done)if(this._contentLength!==null&&this._receivedLength<this._contentLength){this._status=Se.kError;let Le=ce.EARLY_EOF,je={code:-1,msg:"Fetch stream meet Early-EOF"};if(this._onError)this._onError(Le,je);else throw new Pe(je.msg)}else this._status=Se.kComplete,this._onComplete&&this._onComplete(this._range.from,this._range.from+this._receivedLength-1);else{if(this._requestAbort===!0)return this._requestAbort=!1,this._status=Se.kComplete,we.cancel();this._status=Se.kBuffering;let Le=Be.value.buffer,je=this._range.from+this._receivedLength;this._receivedLength+=Le.byteLength,this._onDataArrival&&this._onDataArrival(Le,je,this._receivedLength),this._pump(we)}}).catch(Be=>{if(Be.code===11&&se.msedge)return;this._status=Se.kError;let Le=0,je=null;if((Be.code===19||Be.message==="network error")&&(this._contentLength===null||this._contentLength!==null&&this._receivedLength<this._contentLength)?(Le=ce.EARLY_EOF,je={code:Be.code,msg:"Fetch stream meet Early-EOF"}):(Le=ce.EXCEPTION,je={code:Be.code,msg:Be.message}),this._onError)this._onError(Le,je);else throw new Pe(je.msg)})}}var he=fe;class ie extends te{static isSupported(){try{let we=new XMLHttpRequest;return we.open("GET","https://example.com",!0),we.responseType="moz-chunked-arraybuffer",we.responseType==="moz-chunked-arraybuffer"}catch(we){return Me.w("MozChunkedLoader",we.message),!1}}constructor(we,Be){super("xhr-moz-chunked-loader"),this.TAG="MozChunkedLoader",this._seekHandler=we,this._config=Be,this._needStash=!0,this._xhr=null,this._requestAbort=!1,this._contentLength=null,this._receivedLength=0}destroy(){this.isWorking()&&this.abort(),this._xhr&&(this._xhr.onreadystatechange=null,this._xhr.onprogress=null,this._xhr.onloadend=null,this._xhr.onerror=null,this._xhr=null),super.destroy()}open(we,Be){this._dataSource=we,this._range=Be;let Le=we.url;this._config.reuseRedirectedURL&&we.redirectedURL!=null&&(Le=we.redirectedURL);let je=this._seekHandler.getConfig(Le,Be);this._requestURL=je.url;let Xe=this._xhr=new XMLHttpRequest;if(Xe.open("GET",je.url,!0),Xe.responseType="moz-chunked-arraybuffer",Xe.onreadystatechange=this._onReadyStateChange.bind(this),Xe.onprogress=this._onProgress.bind(this),Xe.onloadend=this._onLoadEnd.bind(this),Xe.onerror=this._onXhrError.bind(this),we.withCredentials&&(Xe.withCredentials=!0),typeof je.headers=="object"){let Et=je.headers;for(let xt in Et)Et.hasOwnProperty(xt)&&Xe.setRequestHeader(xt,Et[xt])}if(typeof this._config.headers=="object"){let Et=this._config.headers;for(let xt in Et)Et.hasOwnProperty(xt)&&Xe.setRequestHeader(xt,Et[xt])}this._status=Se.kConnecting,Xe.send()}abort(){this._requestAbort=!0,this._xhr&&this._xhr.abort(),this._status=Se.kComplete}_onReadyStateChange(we){let Be=we.target;if(Be.readyState===2){if(Be.responseURL!=null&&Be.responseURL!==this._requestURL&&this._onURLRedirect){let Le=this._seekHandler.removeURLParameters(Be.responseURL);this._onURLRedirect(Le)}if(Be.status!==0&&(Be.status<200||Be.status>299))if(this._status=Se.kError,this._onError)this._onError(ce.HTTP_STATUS_CODE_INVALID,{code:Be.status,msg:Be.statusText});else throw new Pe("MozChunkedLoader: Http code invalid, "+Be.status+" "+Be.statusText);else this._status=Se.kBuffering}}_onProgress(we){if(this._status===Se.kError)return;this._contentLength===null&&we.total!==null&&we.total!==0&&(this._contentLength=we.total,this._onContentLengthKnown&&this._onContentLengthKnown(this._contentLength));let Be=we.target.response,Le=this._range.from+this._receivedLength;this._receivedLength+=Be.byteLength,this._onDataArrival&&this._onDataArrival(Be,Le,this._receivedLength)}_onLoadEnd(we){if(this._requestAbort===!0){this._requestAbort=!1;return}else if(this._status===Se.kError)return;this._status=Se.kComplete,this._onComplete&&this._onComplete(this._range.from,this._range.from+this._receivedLength-1)}_onXhrError(we){this._status=Se.kError;let Be=0,Le=null;if(this._contentLength&&we.loaded<this._contentLength?(Be=ce.EARLY_EOF,Le={code:-1,msg:"Moz-Chunked stream meet Early-Eof"}):(Be=ce.EXCEPTION,Le={code:-1,msg:we.constructor.name+" "+we.type}),this._onError)this._onError(Be,Le);else throw new Pe(Le.msg)}}var ue=ie;class me extends null{static isSupported(){try{if(typeof self.MSStream=="undefined"||typeof self.MSStreamReader=="undefined")return!1;let we=new XMLHttpRequest;return we.open("GET","https://example.com",!0),we.responseType="ms-stream",we.responseType==="ms-stream"}catch(we){return Log.w("MSStreamLoader",we.message),!1}}constructor(we,Be){super("xhr-msstream-loader"),this.TAG="MSStreamLoader",this._seekHandler=we,this._config=Be,this._needStash=!0,this._xhr=null,this._reader=null,this._totalRange=null,this._currentRange=null,this._currentRequestURL=null,this._currentRedirectedURL=null,this._contentLength=null,this._receivedLength=0,this._bufferLimit=16*1024*1024,this._lastTimeBufferSize=0,this._isReconnecting=!1}destroy(){this.isWorking()&&this.abort(),this._reader&&(this._reader.onprogress=null,this._reader.onload=null,this._reader.onerror=null,this._reader=null),this._xhr&&(this._xhr.onreadystatechange=null,this._xhr=null),super.destroy()}open(we,Be){this._internalOpen(we,Be,!1)}_internalOpen(we,Be,Le){this._dataSource=we,Le?this._currentRange=Be:this._totalRange=Be;let je=we.url;this._config.reuseRedirectedURL&&(this._currentRedirectedURL!=null?je=this._currentRedirectedURL:we.redirectedURL!=null&&(je=we.redirectedURL));let Xe=this._seekHandler.getConfig(je,Be);this._currentRequestURL=Xe.url;let Et=this._reader=new self.MSStreamReader;Et.onprogress=this._msrOnProgress.bind(this),Et.onload=this._msrOnLoad.bind(this),Et.onerror=this._msrOnError.bind(this);let xt=this._xhr=new XMLHttpRequest;if(xt.open("GET",Xe.url,!0),xt.responseType="ms-stream",xt.onreadystatechange=this._xhrOnReadyStateChange.bind(this),xt.onerror=this._xhrOnError.bind(this),we.withCredentials&&(xt.withCredentials=!0),typeof Xe.headers=="object"){let Jt=Xe.headers;for(let Vt in Jt)Jt.hasOwnProperty(Vt)&&xt.setRequestHeader(Vt,Jt[Vt])}if(typeof this._config.headers=="object"){let Jt=this._config.headers;for(let Vt in Jt)Jt.hasOwnProperty(Vt)&&xt.setRequestHeader(Vt,Jt[Vt])}this._isReconnecting?this._isReconnecting=!1:this._status=LoaderStatus.kConnecting,xt.send()}abort(){this._internalAbort(),this._status=LoaderStatus.kComplete}_internalAbort(){this._reader&&(this._reader.readyState===1&&this._reader.abort(),this._reader.onprogress=null,this._reader.onload=null,this._reader.onerror=null,this._reader=null),this._xhr&&(this._xhr.abort(),this._xhr.onreadystatechange=null,this._xhr=null)}_xhrOnReadyStateChange(we){let Be=we.target;if(Be.readyState===2)if(Be.status>=200&&Be.status<=299){if(this._status=LoaderStatus.kBuffering,Be.responseURL!=null){let je=this._seekHandler.removeURLParameters(Be.responseURL);Be.responseURL!==this._currentRequestURL&&je!==this._currentRedirectedURL&&(this._currentRedirectedURL=je,this._onURLRedirect&&this._onURLRedirect(je))}let Le=Be.getResponseHeader("Content-Length");if(Le!=null&&this._contentLength==null){let je=parseInt(Le);je>0&&(this._contentLength=je,this._onContentLengthKnown&&this._onContentLengthKnown(this._contentLength))}}else if(this._status=LoaderStatus.kError,this._onError)this._onError(LoaderErrors.HTTP_STATUS_CODE_INVALID,{code:Be.status,msg:Be.statusText});else throw new RuntimeException("MSStreamLoader: Http code invalid, "+Be.status+" "+Be.statusText);else if(Be.readyState===3&&Be.status>=200&&Be.status<=299){this._status=LoaderStatus.kBuffering;let Le=Be.response;this._reader.readAsArrayBuffer(Le)}}_xhrOnError(we){this._status=LoaderStatus.kError;let Be=LoaderErrors.EXCEPTION,Le={code:-1,msg:we.constructor.name+" "+we.type};if(this._onError)this._onError(Be,Le);else throw new RuntimeException(Le.msg)}_msrOnProgress(we){let Le=we.target.result;if(Le==null){this._doReconnectIfNeeded();return}let je=Le.slice(this._lastTimeBufferSize);this._lastTimeBufferSize=Le.byteLength;let Xe=this._totalRange.from+this._receivedLength;this._receivedLength+=je.byteLength,this._onDataArrival&&this._onDataArrival(je,Xe,this._receivedLength),Le.byteLength>=this._bufferLimit&&(Log.v(this.TAG,`MSStream buffer exceeded max size near ${Xe+je.byteLength}, reconnecting...`),this._doReconnectIfNeeded())}_doReconnectIfNeeded(){if(this._contentLength==null||this._receivedLength<this._contentLength){this._isReconnecting=!0,this._lastTimeBufferSize=0,this._internalAbort();let we={from:this._totalRange.from+this._receivedLength,to:-1};this._internalOpen(this._dataSource,we,!0)}}_msrOnLoad(we){this._status=LoaderStatus.kComplete,this._onComplete&&this._onComplete(this._totalRange.from,this._totalRange.from+this._receivedLength-1)}_msrOnError(we){this._status=LoaderStatus.kError;let Be=0,Le=null;if(this._contentLength&&this._receivedLength<this._contentLength?(Be=LoaderErrors.EARLY_EOF,Le={code:-1,msg:"MSStream meet Early-Eof"}):(Be=LoaderErrors.EARLY_EOF,Le={code:-1,msg:we.constructor.name+" "+we.type}),this._onError)this._onError(Be,Le);else throw new RuntimeException(Le.msg)}}var Ce=null;class Ie extends te{static isSupported(){try{let we=new XMLHttpRequest;return we.open("GET","https://example.com",!0),we.responseType="arraybuffer",we.responseType==="arraybuffer"}catch(we){return Me.w("RangeLoader",we.message),!1}}constructor(we,Be){super("xhr-range-loader"),this.TAG="RangeLoader",this._seekHandler=we,this._config=Be,this._needStash=!1,this._chunkSizeKBList=[128,256,384,512,768,1024,1536,2048,3072,4096,5120,6144,7168,8192],this._currentChunkSizeKB=384,this._currentSpeedNormalized=0,this._zeroSpeedChunkCount=0,this._xhr=null,this._speedSampler=new Ee,this._requestAbort=!1,this._waitForTotalLength=!1,this._totalLengthReceived=!1,this._currentRequestURL=null,this._currentRedirectedURL=null,this._currentRequestRange=null,this._totalLength=null,this._contentLength=null,this._receivedLength=0,this._lastTimeLoaded=0}destroy(){this.isWorking()&&this.abort(),this._xhr&&(this._xhr.onreadystatechange=null,this._xhr.onprogress=null,this._xhr.onload=null,this._xhr.onerror=null,this._xhr=null),super.destroy()}get currentSpeed(){return this._speedSampler.lastSecondKBps}open(we,Be){this._dataSource=we,this._range=Be,this._status=Se.kConnecting;let Le=!1;this._dataSource.filesize!=null&&this._dataSource.filesize!==0&&(Le=!0,this._totalLength=this._dataSource.filesize),!this._totalLengthReceived&&!Le?(this._waitForTotalLength=!0,this._internalOpen(this._dataSource,{from:0,to:-1})):this._openSubRange()}_openSubRange(){let we=this._currentChunkSizeKB*1024,Be=this._range.from+this._receivedLength,Le=Be+we;this._contentLength!=null&&Le-this._range.from>=this._contentLength&&(Le=this._range.from+this._contentLength-1),this._currentRequestRange={from:Be,to:Le},this._internalOpen(this._dataSource,this._currentRequestRange)}_internalOpen(we,Be){this._lastTimeLoaded=0;let Le=we.url;this._config.reuseRedirectedURL&&(this._currentRedirectedURL!=null?Le=this._currentRedirectedURL:we.redirectedURL!=null&&(Le=we.redirectedURL));let je=this._seekHandler.getConfig(Le,Be);this._currentRequestURL=je.url;let Xe=this._xhr=new XMLHttpRequest;if(Xe.open("GET",je.url,!0),Xe.responseType="arraybuffer",Xe.onreadystatechange=this._onReadyStateChange.bind(this),Xe.onprogress=this._onProgress.bind(this),Xe.onload=this._onLoad.bind(this),Xe.onerror=this._onXhrError.bind(this),we.withCredentials&&(Xe.withCredentials=!0),typeof je.headers=="object"){let Et=je.headers;for(let xt in Et)Et.hasOwnProperty(xt)&&Xe.setRequestHeader(xt,Et[xt])}if(typeof this._config.headers=="object"){let Et=this._config.headers;for(let xt in Et)Et.hasOwnProperty(xt)&&Xe.setRequestHeader(xt,Et[xt])}Xe.send()}abort(){this._requestAbort=!0,this._internalAbort(),this._status=Se.kComplete}_internalAbort(){this._xhr&&(this._xhr.onreadystatechange=null,this._xhr.onprogress=null,this._xhr.onload=null,this._xhr.onerror=null,this._xhr.abort(),this._xhr=null)}_onReadyStateChange(we){let Be=we.target;if(Be.readyState===2){if(Be.responseURL!=null){let Le=this._seekHandler.removeURLParameters(Be.responseURL);Be.responseURL!==this._currentRequestURL&&Le!==this._currentRedirectedURL&&(this._currentRedirectedURL=Le,this._onURLRedirect&&this._onURLRedirect(Le))}if(Be.status>=200&&Be.status<=299){if(this._waitForTotalLength)return;this._status=Se.kBuffering}else if(this._status=Se.kError,this._onError)this._onError(ce.HTTP_STATUS_CODE_INVALID,{code:Be.status,msg:Be.statusText});else throw new Pe("RangeLoader: Http code invalid, "+Be.status+" "+Be.statusText)}}_onProgress(we){if(this._status===Se.kError)return;if(this._contentLength===null){let Le=!1;if(this._waitForTotalLength){this._waitForTotalLength=!1,this._totalLengthReceived=!0,Le=!0;let je=we.total;this._internalAbort(),je!=null&je!==0&&(this._totalLength=je)}if(this._range.to===-1?this._contentLength=this._totalLength-this._range.from:this._contentLength=this._range.to-this._range.from+1,Le){this._openSubRange();return}this._onContentLengthKnown&&this._onContentLengthKnown(this._contentLength)}let Be=we.loaded-this._lastTimeLoaded;this._lastTimeLoaded=we.loaded,this._speedSampler.addBytes(Be)}_normalizeSpeed(we){let Be=this._chunkSizeKBList,Le=Be.length-1,je=0,Xe=0,Et=Le;if(we<Be[0])return Be[0];for(;Xe<=Et;){if(je=Xe+Math.floor((Et-Xe)/2),je===Le||we>=Be[je]&&we<Be[je+1])return Be[je];Be[je]<we?Xe=je+1:Et=je-1}}_onLoad(we){if(this._status===Se.kError)return;if(this._waitForTotalLength){this._waitForTotalLength=!1;return}this._lastTimeLoaded=0;let Be=this._speedSampler.lastSecondKBps;if(Be===0&&(this._zeroSpeedChunkCount++,this._zeroSpeedChunkCount>=3&&(Be=this._speedSampler.currentKBps)),Be!==0){let Et=this._normalizeSpeed(Be);this._currentSpeedNormalized!==Et&&(this._currentSpeedNormalized=Et,this._currentChunkSizeKB=Et)}let Le=we.target.response,je=this._range.from+this._receivedLength;this._receivedLength+=Le.byteLength;let Xe=!1;this._contentLength!=null&&this._receivedLength<this._contentLength?this._openSubRange():Xe=!0,this._onDataArrival&&this._onDataArrival(Le,je,this._receivedLength),Xe&&(this._status=Se.kComplete,this._onComplete&&this._onComplete(this._range.from,this._range.from+this._receivedLength-1))}_onXhrError(we){this._status=Se.kError;let Be=0,Le=null;if(this._contentLength&&this._receivedLength>0&&this._receivedLength<this._contentLength?(Be=ce.EARLY_EOF,Le={code:-1,msg:"RangeLoader meet Early-Eof"}):(Be=ce.EXCEPTION,Le={code:-1,msg:we.constructor.name+" "+we.type}),this._onError)this._onError(Be,Le);else throw new Pe(Le.msg)}}var Fe=Ie;class Re extends te{static isSupported(){try{return typeof self.WebSocket!="undefined"}catch(we){return!1}}constructor(){super("websocket-loader"),this.TAG="WebSocketLoader",this._needStash=!0,this._ws=null,this._requestAbort=!1,this._receivedLength=0}destroy(){this._ws&&this.abort(),super.destroy()}open(we){try{let Be=this._ws=new self.WebSocket(we.url);Be.binaryType="arraybuffer",Be.onopen=this._onWebSocketOpen.bind(this),Be.onclose=this._onWebSocketClose.bind(this),Be.onmessage=this._onWebSocketMessage.bind(this),Be.onerror=this._onWebSocketError.bind(this),this._status=Se.kConnecting}catch(Be){this._status=Se.kError;let Le={code:Be.code,msg:Be.message};if(this._onError)this._onError(ce.EXCEPTION,Le);else throw new Pe(Le.msg)}}abort(){let we=this._ws;we&&(we.readyState===0||we.readyState===1)&&(this._requestAbort=!0,we.close()),this._ws=null,this._status=Se.kComplete}_onWebSocketOpen(we){this._status=Se.kBuffering}_onWebSocketClose(we){if(this._requestAbort===!0){this._requestAbort=!1;return}this._status=Se.kComplete,this._onComplete&&this._onComplete(0,this._receivedLength-1)}_onWebSocketMessage(we){if(we.data instanceof ArrayBuffer)this._dispatchArrayBuffer(we.data);else if(we.data instanceof Blob){let Be=new FileReader;Be.onload=()=>{this._dispatchArrayBuffer(Be.result)},Be.readAsArrayBuffer(we.data)}else{this._status=Se.kError;let Be={code:-1,msg:"Unsupported WebSocket message type: "+we.data.constructor.name};if(this._onError)this._onError(ce.EXCEPTION,Be);else throw new Pe(Be.msg)}}_dispatchArrayBuffer(we){let Be=we,Le=this._receivedLength;this._receivedLength+=Be.byteLength,this._onDataArrival&&this._onDataArrival(Be,Le,this._receivedLength)}_onWebSocketError(we){this._status=Se.kError;let Be={code:we.code,msg:we.message};if(this._onError)this._onError(ce.EXCEPTION,Be);else throw new Pe(Be.msg)}}var Ue=Re;class Ge{constructor(we){this._zeroStart=we||!1}getConfig(we,Be){let Le={};if(Be.from!==0||Be.to!==-1){let je;Be.to!==-1?je=`bytes=${Be.from.toString()}-${Be.to.toString()}`:je=`bytes=${Be.from.toString()}-`,Le.Range=je}else this._zeroStart&&(Le.Range="bytes=0-");return{url:we,headers:Le}}removeURLParameters(we){return we}}var Je=Ge;class Qe{constructor(we,Be){this._startName=we,this._endName=Be}getConfig(we,Be){let Le=we;if(Be.from!==0||Be.to!==-1){let je=!0;Le.indexOf("?")===-1&&(Le+="?",je=!1),je&&(Le+="&"),Le+=`${this._startName}=${Be.from.toString()}`,Be.to!==-1&&(Le+=`&${this._endName}=${Be.to.toString()}`)}return{url:Le,headers:{}}}removeURLParameters(we){let Be=we.split("?")[0],Le,je=we.indexOf("?");je!==-1&&(Le=we.substring(je+1));let Xe="";if(Le!=null&&Le.length>0){let Et=Le.split("&");for(let xt=0;xt<Et.length;xt++){let Jt=Et[xt].split("="),Vt=xt>0;Jt[0]!==this._startName&&Jt[0]!==this._endName&&(Vt&&(Xe+="&"),Xe+=Et[xt])}}return Xe.length===0?Be:Be+"?"+Xe}}var rt=Qe;class $e{constructor(we,Be,Le){this.TAG="IOController",this._config=Be,this._extraData=Le,this._stashInitialSize=1024*384,Be.stashInitialSize!=null&&Be.stashInitialSize>0&&(this._stashInitialSize=Be.stashInitialSize),this._stashUsed=0,this._stashSize=this._stashInitialSize,this._bufferSize=1024*1024*3,this._stashBuffer=new ArrayBuffer(this._bufferSize),this._stashByteStart=0,this._enableStash=!0,Be.enableStashBuffer===!1&&(this._enableStash=!1),this._loader=null,this._loaderClass=null,this._seekHandler=null,this._dataSource=we,this._isWebSocketURL=/wss?:\/\/(.+?)/.test(we.url),this._refTotalLength=we.filesize?we.filesize:null,this._totalLength=this._refTotalLength,this._fullRequestFlag=!1,this._currentRange=null,this._redirectedURL=null,this._speedNormalized=0,this._speedSampler=new Ee,this._speedNormalizeList=[64,128,256,384,512,768,1024,1536,2048,3072,4096],this._isEarlyEofReconnecting=!1,this._paused=!1,this._resumeFrom=0,this._onDataArrival=null,this._onSeeked=null,this._onError=null,this._onComplete=null,this._onRedirect=null,this._onRecoveredEarlyEof=null,this._selectSeekHandler(),this._selectLoader(),this._createLoader()}destroy(){this._loader.isWorking()&&this._loader.abort(),this._loader.destroy(),this._loader=null,this._loaderClass=null,this._dataSource=null,this._stashBuffer=null,this._stashUsed=this._stashSize=this._bufferSize=this._stashByteStart=0,this._currentRange=null,this._speedSampler=null,this._isEarlyEofReconnecting=!1,this._onDataArrival=null,this._onSeeked=null,this._onError=null,this._onComplete=null,this._onRedirect=null,this._onRecoveredEarlyEof=null,this._extraData=null}isWorking(){return this._loader&&this._loader.isWorking()&&!this._paused}isPaused(){return this._paused}get status(){return this._loader.status}get extraData(){return this._extraData}set extraData(we){this._extraData=we}get onDataArrival(){return this._onDataArrival}set onDataArrival(we){this._onDataArrival=we}get onSeeked(){return this._onSeeked}set onSeeked(we){this._onSeeked=we}get onError(){return this._onError}set onError(we){this._onError=we}get onComplete(){return this._onComplete}set onComplete(we){this._onComplete=we}get onRedirect(){return this._onRedirect}set onRedirect(we){this._onRedirect=we}get onRecoveredEarlyEof(){return this._onRecoveredEarlyEof}set onRecoveredEarlyEof(we){this._onRecoveredEarlyEof=we}get currentURL(){return this._dataSource.url}get hasRedirect(){return this._redirectedURL!=null||this._dataSource.redirectedURL!=null}get currentRedirectedURL(){return this._redirectedURL||this._dataSource.redirectedURL}get currentSpeed(){return this._loaderClass===Fe?this._loader.currentSpeed:this._speedSampler.lastSecondKBps}get loaderType(){return this._loader.type}_selectSeekHandler(){let we=this._config;if(we.seekType==="range")this._seekHandler=new Je(this._config.rangeLoadZeroStart);else if(we.seekType==="param"){let Be=we.seekParamStart||"bstart",Le=we.seekParamEnd||"bend";this._seekHandler=new rt(Be,Le)}else if(we.seekType==="custom"){if(typeof we.customSeekHandler!="function")throw new pe("Custom seekType specified in config but invalid customSeekHandler!");this._seekHandler=new we.customSeekHandler}else throw new pe(`Invalid seekType in config: ${we.seekType}`)}_selectLoader(){if(this._config.customLoader!=null)this._loaderClass=this._config.customLoader;else if(this._isWebSocketURL)this._loaderClass=Ue;else if(he.isSupported())this._loaderClass=he;else if(ue.isSupported())this._loaderClass=ue;else if(Fe.isSupported())this._loaderClass=Fe;else throw new Pe("Your browser doesn't support xhr with arraybuffer responseType!")}_createLoader(){this._loader=new this._loaderClass(this._seekHandler,this._config),this._loader.needStashBuffer===!1&&(this._enableStash=!1),this._loader.onContentLengthKnown=this._onContentLengthKnown.bind(this),this._loader.onURLRedirect=this._onURLRedirect.bind(this),this._loader.onDataArrival=this._onLoaderChunkArrival.bind(this),this._loader.onComplete=this._onLoaderComplete.bind(this),this._loader.onError=this._onLoaderError.bind(this)}open(we){this._currentRange={from:0,to:-1},we&&(this._currentRange.from=we),this._speedSampler.reset(),we||(this._fullRequestFlag=!0),this._loader.open(this._dataSource,Object.assign({},this._currentRange))}abort(){this._loader.abort(),this._paused&&(this._paused=!1,this._resumeFrom=0)}pause(){this.isWorking()&&(this._loader.abort(),this._stashUsed!==0?(this._resumeFrom=this._stashByteStart,this._currentRange.to=this._stashByteStart-1):this._resumeFrom=this._currentRange.to+1,this._stashUsed=0,this._stashByteStart=0,this._paused=!0)}resume(){if(this._paused){this._paused=!1;let we=this._resumeFrom;this._resumeFrom=0,this._internalSeek(we,!0)}}seek(we){this._paused=!1,this._stashUsed=0,this._stashByteStart=0,this._internalSeek(we,!0)}_internalSeek(we,Be){this._loader.isWorking()&&this._loader.abort(),this._flushStashBuffer(Be),this._loader.destroy(),this._loader=null;let Le={from:we,to:-1};this._currentRange={from:Le.from,to:-1},this._speedSampler.reset(),this._stashSize=this._stashInitialSize,this._createLoader(),this._loader.open(this._dataSource,Le),this._onSeeked&&this._onSeeked()}updateUrl(we){if(!we||typeof we!="string"||we.length===0)throw new pe("Url must be a non-empty string!");this._dataSource.url=we}_expandBuffer(we){let Be=this._stashSize;for(;Be+1024*1024*1<we;)Be*=2;if(Be+=1024*1024*1,Be===this._bufferSize)return;let Le=new ArrayBuffer(Be);if(this._stashUsed>0){let je=new Uint8Array(this._stashBuffer,0,this._stashUsed);new Uint8Array(Le,0,Be).set(je,0)}this._stashBuffer=Le,this._bufferSize=Be}_normalizeSpeed(we){let Be=this._speedNormalizeList,Le=Be.length-1,je=0,Xe=0,Et=Le;if(we<Be[0])return Be[0];for(;Xe<=Et;){if(je=Xe+Math.floor((Et-Xe)/2),je===Le||we>=Be[je]&&we<Be[je+1])return Be[je];Be[je]<we?Xe=je+1:Et=je-1}}_adjustStashSize(we){let Be=0;this._config.isLive||we<512?Be=we:we>=512&&we<=1024?Be=Math.floor(we*1.5):Be=we*2,Be>8192&&(Be=8192);let Le=Be*1024+1024*1024*1;this._bufferSize<Le&&this._expandBuffer(Le),this._stashSize=Be*1024}_dispatchChunks(we,Be){return this._currentRange.to=Be+we.byteLength-1,this._onDataArrival(we,Be)}_onURLRedirect(we){this._redirectedURL=we,this._onRedirect&&this._onRedirect(we)}_onContentLengthKnown(we){we&&this._fullRequestFlag&&(this._totalLength=we,this._fullRequestFlag=!1)}_onLoaderChunkArrival(we,Be,Le){if(!this._onDataArrival)throw new xe("IOController: No existing consumer (onDataArrival) callback!");if(this._paused)return;this._isEarlyEofReconnecting&&(this._isEarlyEofReconnecting=!1,this._onRecoveredEarlyEof&&this._onRecoveredEarlyEof()),this._speedSampler.addBytes(we.byteLength);let je=this._speedSampler.lastSecondKBps;if(je!==0){let Xe=this._normalizeSpeed(je);this._speedNormalized!==Xe&&(this._speedNormalized=Xe,this._adjustStashSize(Xe))}if(this._enableStash)if(this._stashUsed===0&&this._stashByteStart===0&&(this._stashByteStart=Be),this._stashUsed+we.byteLength<=this._stashSize)new Uint8Array(this._stashBuffer,0,this._stashSize).set(new Uint8Array(we),this._stashUsed),this._stashUsed+=we.byteLength;else{let Xe=new Uint8Array(this._stashBuffer,0,this._bufferSize);if(this._stashUsed>0){let Et=this._stashBuffer.slice(0,this._stashUsed),xt=this._dispatchChunks(Et,this._stashByteStart);if(xt<Et.byteLength){if(xt>0){let Jt=new Uint8Array(Et,xt);Xe.set(Jt,0),this._stashUsed=Jt.byteLength,this._stashByteStart+=xt}}else this._stashUsed=0,this._stashByteStart+=xt;this._stashUsed+we.byteLength>this._bufferSize&&(this._expandBuffer(this._stashUsed+we.byteLength),Xe=new Uint8Array(this._stashBuffer,0,this._bufferSize)),Xe.set(new Uint8Array(we),this._stashUsed),this._stashUsed+=we.byteLength}else{let Et=this._dispatchChunks(we,Be);if(Et<we.byteLength){let xt=we.byteLength-Et;xt>this._bufferSize&&(this._expandBuffer(xt),Xe=new Uint8Array(this._stashBuffer,0,this._bufferSize)),Xe.set(new Uint8Array(we,Et),0),this._stashUsed+=xt,this._stashByteStart=Be+Et}}}else if(this._stashUsed===0){let Xe=this._dispatchChunks(we,Be);if(Xe<we.byteLength){let Et=we.byteLength-Xe;Et>this._bufferSize&&this._expandBuffer(Et),new Uint8Array(this._stashBuffer,0,this._bufferSize).set(new Uint8Array(we,Xe),0),this._stashUsed+=Et,this._stashByteStart=Be+Xe}}else{this._stashUsed+we.byteLength>this._bufferSize&&this._expandBuffer(this._stashUsed+we.byteLength);let Xe=new Uint8Array(this._stashBuffer,0,this._bufferSize);Xe.set(new Uint8Array(we),this._stashUsed),this._stashUsed+=we.byteLength;let Et=this._dispatchChunks(this._stashBuffer.slice(0,this._stashUsed),this._stashByteStart);if(Et<this._stashUsed&&Et>0){let xt=new Uint8Array(this._stashBuffer,Et);Xe.set(xt,0)}this._stashUsed-=Et,this._stashByteStart+=Et}}_flushStashBuffer(we){if(this._stashUsed>0){let Be=this._stashBuffer.slice(0,this._stashUsed),Le=this._dispatchChunks(Be,this._stashByteStart),je=Be.byteLength-Le;if(Le<Be.byteLength)if(we)Me.w(this.TAG,`${je} bytes unconsumed data remain when flush buffer, dropped`);else{if(Le>0){let Xe=new Uint8Array(this._stashBuffer,0,this._bufferSize),Et=new Uint8Array(Be,Le);Xe.set(Et,0),this._stashUsed=Et.byteLength,this._stashByteStart+=Le}return 0}return this._stashUsed=0,this._stashByteStart=0,je}return 0}_onLoaderComplete(we,Be){this._flushStashBuffer(!0),this._onComplete&&this._onComplete(this._extraData)}_onLoaderError(we,Be){switch(Me.e(this.TAG,`Loader error, code = ${Be.code}, msg = ${Be.msg}`),this._flushStashBuffer(!1),this._isEarlyEofReconnecting&&(this._isEarlyEofReconnecting=!1,we=ce.UNRECOVERABLE_EARLY_EOF),we){case ce.EARLY_EOF:{if(!this._config.isLive&&this._totalLength){let Le=this._currentRange.to+1;Le<this._totalLength&&(Me.w(this.TAG,"Connection lost, trying reconnect..."),this._isEarlyEofReconnecting=!0,this._internalSeek(Le,!1));return}we=ce.UNRECOVERABLE_EARLY_EOF;break}case ce.UNRECOVERABLE_EARLY_EOF:case ce.CONNECTING_TIMEOUT:case ce.HTTP_STATUS_CODE_INVALID:case ce.EXCEPTION:break}if(this._onError)this._onError(we,Be);else throw new Pe("IOException: "+Be.msg)}}var qe=$e;const ot={enableWorker:!1,enableStashBuffer:!0,stashInitialSize:void 0,isLive:!1,lazyLoad:!0,lazyLoadMaxDuration:3*60,lazyLoadRecoverDuration:30,deferLoadAfterSourceOpen:!0,autoCleanupMaxBackwardDuration:3*60,autoCleanupMinBackwardDuration:2*60,statisticsInfoReportInterval:600,fixAudioTimestampGap:!0,accurateSeek:!1,seekType:"range",seekParamStart:"bstart",seekParamEnd:"bend",rangeLoadZeroStart:!1,customSeekHandler:void 0,reuseRedirectedURL:!1,headers:void 0,customLoader:void 0};function at(){return Object.assign({},ot)}class ut{static supportMSEH264Playback(){return window.MediaSource&&window.MediaSource.isTypeSupported('video/mp4; codecs="avc1.42E01E,mp4a.40.2"')}static supportNetworkStreamIO(){let we=new qe({},at()),Be=we.loaderType;return we.destroy(),Be=="fetch-stream-loader"||Be=="xhr-moz-chunked-loader"}static getNetworkLoaderTypeName(){let we=new qe({},at()),Be=we.loaderType;return we.destroy(),Be}static supportNativeMediaPlayback(we){ut.videoElement==null&&(ut.videoElement=window.document.createElement("video"));let Be=ut.videoElement.canPlayType(we);return Be==="probably"||Be=="maybe"}static getFeatureList(){let we={mseFlvPlayback:!1,mseLiveFlvPlayback:!1,networkStreamIO:!1,networkLoaderName:"",nativeMP4H264Playback:!1,nativeWebmVP8Playback:!1,nativeWebmVP9Playback:!1};return we.mseFlvPlayback=ut.supportMSEH264Playback(),we.networkStreamIO=ut.supportNetworkStreamIO(),we.networkLoaderName=ut.getNetworkLoaderTypeName(),we.mseLiveFlvPlayback=we.mseFlvPlayback&&we.networkStreamIO,we.nativeMP4H264Playback=ut.supportNativeMediaPlayback('video/mp4; codecs="avc1.42001E, mp4a.40.2"'),we.nativeWebmVP8Playback=ut.supportNativeMediaPlayback('video/webm; codecs="vp8.0, vorbis"'),we.nativeWebmVP9Playback=ut.supportNativeMediaPlayback('video/webm; codecs="vp9"'),we}}var nt=ut,yt={ERROR:"error",LOADING_COMPLETE:"loading_complete",RECOVERED_EARLY_EOF:"recovered_early_eof",MEDIA_INFO:"media_info",METADATA_ARRIVED:"metadata_arrived",SCRIPTDATA_ARRIVED:"scriptdata_arrived",STATISTICS_INFO:"statistics_info"};class ft{static get forceGlobalTag(){return Me.FORCE_GLOBAL_TAG}static set forceGlobalTag(we){Me.FORCE_GLOBAL_TAG=we,ft._notifyChange()}static get globalTag(){return Me.GLOBAL_TAG}static set globalTag(we){Me.GLOBAL_TAG=we,ft._notifyChange()}static get enableAll(){return Me.ENABLE_VERBOSE&&Me.ENABLE_DEBUG&&Me.ENABLE_INFO&&Me.ENABLE_WARN&&Me.ENABLE_ERROR}static set enableAll(we){Me.ENABLE_VERBOSE=we,Me.ENABLE_DEBUG=we,Me.ENABLE_INFO=we,Me.ENABLE_WARN=we,Me.ENABLE_ERROR=we,ft._notifyChange()}static get enableDebug(){return Me.ENABLE_DEBUG}static set enableDebug(we){Me.ENABLE_DEBUG=we,ft._notifyChange()}static get enableVerbose(){return Me.ENABLE_VERBOSE}static set enableVerbose(we){Me.ENABLE_VERBOSE=we,ft._notifyChange()}static get enableInfo(){return Me.ENABLE_INFO}static set enableInfo(we){Me.ENABLE_INFO=we,ft._notifyChange()}static get enableWarn(){return Me.ENABLE_WARN}static set enableWarn(we){Me.ENABLE_WARN=we,ft._notifyChange()}static get enableError(){return Me.ENABLE_ERROR}static set enableError(we){Me.ENABLE_ERROR=we,ft._notifyChange()}static getConfig(){return{globalTag:Me.GLOBAL_TAG,forceGlobalTag:Me.FORCE_GLOBAL_TAG,enableVerbose:Me.ENABLE_VERBOSE,enableDebug:Me.ENABLE_DEBUG,enableInfo:Me.ENABLE_INFO,enableWarn:Me.ENABLE_WARN,enableError:Me.ENABLE_ERROR,enableCallback:Me.ENABLE_CALLBACK}}static applyConfig(we){Me.GLOBAL_TAG=we.globalTag,Me.FORCE_GLOBAL_TAG=we.forceGlobalTag,Me.ENABLE_VERBOSE=we.enableVerbose,Me.ENABLE_DEBUG=we.enableDebug,Me.ENABLE_INFO=we.enableInfo,Me.ENABLE_WARN=we.enableWarn,Me.ENABLE_ERROR=we.enableError,Me.ENABLE_CALLBACK=we.enableCallback}static _notifyChange(){let we=ft.emitter;if(we.listenerCount("change")>0){let Be=ft.getConfig();we.emit("change",Be)}}static registerListener(we){ft.emitter.addListener("change",we)}static removeListener(we){ft.emitter.removeListener("change",we)}static addLogListener(we){Me.emitter.addListener("log",we),Me.emitter.listenerCount("log")>0&&(Me.ENABLE_CALLBACK=!0,ft._notifyChange())}static removeLogListener(we){Me.emitter.removeListener("log",we),Me.emitter.listenerCount("log")===0&&(Me.ENABLE_CALLBACK=!1,ft._notifyChange())}}ft.emitter=new(be());var ct=ft;class vt{constructor(){this.mimeType=null,this.duration=null,this.hasAudio=null,this.hasVideo=null,this.audioCodec=null,this.videoCodec=null,this.audioDataRate=null,this.videoDataRate=null,this.audioSampleRate=null,this.audioChannelCount=null,this.width=null,this.height=null,this.fps=null,this.profile=null,this.level=null,this.refFrames=null,this.chromaFormat=null,this.sarNum=null,this.sarDen=null,this.metadata=null,this.segments=null,this.segmentCount=null,this.hasKeyframesIndex=null,this.keyframesIndex=null}isComplete(){let we=this.hasAudio===!1||this.hasAudio===!0&&this.audioCodec!=null&&this.audioSampleRate!=null&&this.audioChannelCount!=null,Be=this.hasVideo===!1||this.hasVideo===!0&&this.videoCodec!=null&&this.width!=null&&this.height!=null&&this.fps!=null&&this.profile!=null&&this.level!=null&&this.refFrames!=null&&this.chromaFormat!=null&&this.sarNum!=null&&this.sarDen!=null;return this.mimeType!=null&&this.duration!=null&&this.metadata!=null&&this.hasKeyframesIndex!=null&&we&&Be}isSeekable(){return this.hasKeyframesIndex===!0}getNearestKeyframe(we){if(this.keyframesIndex==null)return null;let Be=this.keyframesIndex,Le=this._search(Be.times,we);return{index:Le,milliseconds:Be.times[Le],fileposition:Be.filepositions[Le]}}_search(we,Be){let Le=0,je=we.length-1,Xe=0,Et=0,xt=je;for(Be<we[0]&&(Le=0,Et=xt+1);Et<=xt;)if(Xe=Et+Math.floor((xt-Et)/2),Xe===je||Be>=we[Xe]&&Be<we[Xe+1]){Le=Xe;break}else we[Xe]<Be?Et=Xe+1:xt=Xe-1;return Le}}var Ut=vt;function Zt(Ct,we,Be){let Le=Ct;if(we+Be<Le.length){for(;Be--;)if((Le[++we]&192)!==128)return!1;return!0}else return!1}function en(Ct){let we=[],Be=Ct,Le=0,je=Ct.length;for(;Le<je;){if(Be[Le]<128){we.push(String.fromCharCode(Be[Le])),++Le;continue}else if(!(Be[Le]<192)){if(Be[Le]<224){if(Zt(Be,Le,1)){let Xe=(Be[Le]&31)<<6|Be[Le+1]&63;if(Xe>=128){we.push(String.fromCharCode(Xe&65535)),Le+=2;continue}}}else if(Be[Le]<240){if(Zt(Be,Le,2)){let Xe=(Be[Le]&15)<<12|(Be[Le+1]&63)<<6|Be[Le+2]&63;if(Xe>=2048&&(Xe&63488)!==55296){we.push(String.fromCharCode(Xe&65535)),Le+=3;continue}}}else if(Be[Le]<248&&Zt(Be,Le,3)){let Xe=(Be[Le]&7)<<18|(Be[Le+1]&63)<<12|(Be[Le+2]&63)<<6|Be[Le+3]&63;if(Xe>65536&&Xe<1114112){Xe-=65536,we.push(String.fromCharCode(Xe>>>10|55296)),we.push(String.fromCharCode(Xe&1023|56320)),Le+=4;continue}}}we.push("\uFFFD"),++Le}return we.join("")}var mn=en;let Bt=function(){let Ct=new ArrayBuffer(2);return new DataView(Ct).setInt16(0,256,!0),new Int16Array(Ct)[0]===256}();class tn{static parseScriptData(we,Be,Le){let je={};try{let Xe=tn.parseValue(we,Be,Le),Et=tn.parseValue(we,Be+Xe.size,Le-Xe.size);je[Xe.data]=Et.data}catch(Xe){Me.e("AMF",Xe.toString())}return je}static parseObject(we,Be,Le){if(Le<3)throw new xe("Data not enough when parse ScriptDataObject");let je=tn.parseString(we,Be,Le),Xe=tn.parseValue(we,Be+je.size,Le-je.size),Et=Xe.objectEnd;return{data:{name:je.data,value:Xe.data},size:je.size+Xe.size,objectEnd:Et}}static parseVariable(we,Be,Le){return tn.parseObject(we,Be,Le)}static parseString(we,Be,Le){if(Le<2)throw new xe("Data not enough when parse String");let Xe=new DataView(we,Be,Le).getUint16(0,!Bt),Et;return Xe>0?Et=mn(new Uint8Array(we,Be+2,Xe)):Et="",{data:Et,size:2+Xe}}static parseLongString(we,Be,Le){if(Le<4)throw new xe("Data not enough when parse LongString");let Xe=new DataView(we,Be,Le).getUint32(0,!Bt),Et;return Xe>0?Et=mn(new Uint8Array(we,Be+4,Xe)):Et="",{data:Et,size:4+Xe}}static parseDate(we,Be,Le){if(Le<10)throw new xe("Data size invalid when parse Date");let je=new DataView(we,Be,Le),Xe=je.getFloat64(0,!Bt),Et=je.getInt16(8,!Bt);return Xe+=Et*60*1e3,{data:new Date(Xe),size:10}}static parseValue(we,Be,Le){if(Le<1)throw new xe("Data not enough when parse Value");let je=new DataView(we,Be,Le),Xe=1,Et=je.getUint8(0),xt,Jt=!1;try{switch(Et){case 0:xt=je.getFloat64(1,!Bt),Xe+=8;break;case 1:{xt=!!je.getUint8(1),Xe+=1;break}case 2:{let Vt=tn.parseString(we,Be+1,Le-1);xt=Vt.data,Xe+=Vt.size;break}case 3:{xt={};let Vt=0;for((je.getUint32(Le-4,!Bt)&16777215)===9&&(Vt=3);Xe<Le-4;){let fn=tn.parseObject(we,Be+Xe,Le-Xe-Vt);if(fn.objectEnd)break;xt[fn.data.name]=fn.data.value,Xe+=fn.size}Xe<=Le-3&&(je.getUint32(Xe-1,!Bt)&16777215)===9&&(Xe+=3);break}case 8:{xt={},Xe+=4;let Vt=0;for((je.getUint32(Le-4,!Bt)&16777215)===9&&(Vt=3);Xe<Le-8;){let fn=tn.parseVariable(we,Be+Xe,Le-Xe-Vt);if(fn.objectEnd)break;xt[fn.data.name]=fn.data.value,Xe+=fn.size}Xe<=Le-3&&(je.getUint32(Xe-1,!Bt)&16777215)===9&&(Xe+=3);break}case 9:xt=void 0,Xe=1,Jt=!0;break;case 10:{xt=[];let Vt=je.getUint32(1,!Bt);Xe+=4;for(let fn=0;fn<Vt;fn++){let dn=tn.parseValue(we,Be+Xe,Le-Xe);xt.push(dn.data),Xe+=dn.size}break}case 11:{let Vt=tn.parseDate(we,Be+1,Le-1);xt=Vt.data,Xe+=Vt.size;break}case 12:{let Vt=tn.parseString(we,Be+1,Le-1);xt=Vt.data,Xe+=Vt.size;break}default:Xe=Le,Me.w("AMF","Unsupported AMF value type "+Et)}}catch(Vt){Me.e("AMF",Vt.toString())}return{data:xt,size:Xe,objectEnd:Jt}}}var on=tn;class Mn{constructor(we){this.TAG="ExpGolomb",this._buffer=we,this._buffer_index=0,this._total_bytes=we.byteLength,this._total_bits=we.byteLength*8,this._current_word=0,this._current_word_bits_left=0}destroy(){this._buffer=null}_fillCurrentWord(){let we=this._total_bytes-this._buffer_index;if(we<=0)throw new xe("ExpGolomb: _fillCurrentWord() but no bytes available");let Be=Math.min(4,we),Le=new Uint8Array(4);Le.set(this._buffer.subarray(this._buffer_index,this._buffer_index+Be)),this._current_word=new DataView(Le.buffer).getUint32(0,!1),this._buffer_index+=Be,this._current_word_bits_left=Be*8}readBits(we){if(we>32)throw new pe("ExpGolomb: readBits() bits exceeded max 32bits!");if(we<=this._current_word_bits_left){let Et=this._current_word>>>32-we;return this._current_word<<=we,this._current_word_bits_left-=we,Et}let Be=this._current_word_bits_left?this._current_word:0;Be=Be>>>32-this._current_word_bits_left;let Le=we-this._current_word_bits_left;this._fillCurrentWord();let je=Math.min(Le,this._current_word_bits_left),Xe=this._current_word>>>32-je;return this._current_word<<=je,this._current_word_bits_left-=je,Be=Be<<je|Xe,Be}readBool(){return this.readBits(1)===1}readByte(){return this.readBits(8)}_skipLeadingZero(){let we;for(we=0;we<this._current_word_bits_left;we++)if(this._current_word&2147483648>>>we)return this._current_word<<=we,this._current_word_bits_left-=we,we;return this._fillCurrentWord(),we+this._skipLeadingZero()}readUEG(){let we=this._skipLeadingZero();return this.readBits(we+1)-1}readSEG(){let we=this.readUEG();return we&1?we+1>>>1:-1*(we>>>1)}}var Dn=Mn;class sn{static _ebsp2rbsp(we){let Be=we,Le=Be.byteLength,je=new Uint8Array(Le),Xe=0;for(let Et=0;Et<Le;Et++)Et>=2&&Be[Et]===3&&Be[Et-1]===0&&Be[Et-2]===0||(je[Xe]=Be[Et],Xe++);return new Uint8Array(je.buffer,0,Xe)}static parseSPS(we){let Be=sn._ebsp2rbsp(we),Le=new Dn(Be);Le.readByte();let je=Le.readByte();Le.readByte();let Xe=Le.readByte();Le.readUEG();let Et=sn.getProfileString(je),xt=sn.getLevelString(Xe),Jt=1,Vt=420,fn=[0,420,422,444],dn=8;if((je===100||je===110||je===122||je===244||je===44||je===83||je===86||je===118||je===128||je===138||je===144)&&(Jt=Le.readUEG(),Jt===3&&Le.readBits(1),Jt<=3&&(Vt=fn[Jt]),dn=Le.readUEG()+8,Le.readUEG(),Le.readBits(1),Le.readBool())){let Ta=Jt!==3?8:12;for(let la=0;la<Ta;la++)Le.readBool()&&(la<6?sn._skipScalingList(Le,16):sn._skipScalingList(Le,64))}Le.readUEG();let Vn=Le.readUEG();if(Vn===0)Le.readUEG();else if(Vn===1){Le.readBits(1),Le.readSEG(),Le.readSEG();let Ta=Le.readUEG();for(let la=0;la<Ta;la++)Le.readSEG()}let Pn=Le.readUEG();Le.readBits(1);let Jn=Le.readUEG(),$n=Le.readUEG(),hr=Le.readBits(1);hr===0&&Le.readBits(1),Le.readBits(1);let hn=0,an=0,In=0,jn=0;Le.readBool()&&(hn=Le.readUEG(),an=Le.readUEG(),In=Le.readUEG(),jn=Le.readUEG());let or=1,Qn=1,dr=0,xr=!0,On=0,vr=0;if(Le.readBool()){if(Le.readBool()){let Ta=Le.readByte(),la=[1,12,10,16,40,24,20,32,80,18,15,64,160,4,3,2],ei=[1,11,11,11,33,11,11,11,33,11,11,33,99,3,2,1];Ta>0&&Ta<16?(or=la[Ta-1],Qn=ei[Ta-1]):Ta===255&&(or=Le.readByte()<<8|Le.readByte(),Qn=Le.readByte()<<8|Le.readByte())}if(Le.readBool()&&Le.readBool(),Le.readBool()&&(Le.readBits(4),Le.readBool()&&Le.readBits(24)),Le.readBool()&&(Le.readUEG(),Le.readUEG()),Le.readBool()){let Ta=Le.readBits(32),la=Le.readBits(32);xr=Le.readBool(),On=la,vr=Ta*2,dr=On/vr}}let jr=1;(or!==1||Qn!==1)&&(jr=or/Qn);let ri=0,vi=0;if(Jt===0)ri=1,vi=2-hr;else{let Ta=Jt===3?1:2,la=Jt===1?2:1;ri=Ta,vi=la*(2-hr)}let ci=(Jn+1)*16,Kr=(2-hr)*(($n+1)*16);ci-=(hn+an)*ri,Kr-=(In+jn)*vi;let Ia=Math.ceil(ci*jr);return Le.destroy(),Le=null,{profile_string:Et,level_string:xt,bit_depth:dn,ref_frames:Pn,chroma_format:Vt,chroma_format_string:sn.getChromaFormatString(Vt),frame_rate:{fixed:xr,fps:dr,fps_den:vr,fps_num:On},sar_ratio:{width:or,height:Qn},codec_size:{width:ci,height:Kr},present_size:{width:Ia,height:Kr}}}static _skipScalingList(we,Be){let Le=8,je=8,Xe=0;for(let Et=0;Et<Be;Et++)je!==0&&(Xe=we.readSEG(),je=(Le+Xe+256)%256),Le=je===0?Le:je}static getProfileString(we){switch(we){case 66:return"Baseline";case 77:return"Main";case 88:return"Extended";case 100:return"High";case 110:return"High10";case 122:return"High422";case 244:return"High444";default:return"Unknown"}}static getLevelString(we){return(we/10).toFixed(1)}static getChromaFormatString(we){switch(we){case 420:return"4:2:0";case 422:return"4:2:2";case 444:return"4:4:4";default:return"Unknown"}}}var rn=sn,Tt={OK:"OK",FORMAT_ERROR:"FormatError",FORMAT_UNSUPPORTED:"FormatUnsupported",CODEC_UNSUPPORTED:"CodecUnsupported"};function St(Ct){return Ct>>>8&255|(Ct&255)<<8}function Qt(Ct){return(Ct&4278190080)>>>24|(Ct&16711680)>>>8|(Ct&65280)<<8|(Ct&255)<<24}function gt(Ct,we){return Ct[we]<<24|Ct[we+1]<<16|Ct[we+2]<<8|Ct[we+3]}class bt{constructor(we,Be){this.TAG="FLVDemuxer",this._config=Be,this._onError=null,this._onMediaInfo=null,this._onMetaDataArrived=null,this._onScriptDataArrived=null,this._onTrackMetadata=null,this._onDataAvailable=null,this._dataOffset=we.dataOffset,this._firstParse=!0,this._dispatch=!1,this._hasAudio=we.hasAudioTrack,this._hasVideo=we.hasVideoTrack,this._hasAudioFlagOverrided=!1,this._hasVideoFlagOverrided=!1,this._audioInitialMetadataDispatched=!1,this._videoInitialMetadataDispatched=!1,this._mediaInfo=new Ut,this._mediaInfo.hasAudio=this._hasAudio,this._mediaInfo.hasVideo=this._hasVideo,this._metadata=null,this._audioMetadata=null,this._videoMetadata=null,this._naluLengthSize=4,this._timestampBase=0,this._timescale=1e3,this._duration=0,this._durationOverrided=!1,this._referenceFrameRate={fixed:!0,fps:23.976,fps_num:23976,fps_den:1e3},this._flvSoundRateTable=[5500,11025,22050,44100,48e3],this._mpegSamplingRates=[96e3,88200,64e3,48e3,44100,32e3,24e3,22050,16e3,12e3,11025,8e3,7350],this._mpegAudioV10SampleRateTable=[44100,48e3,32e3,0],this._mpegAudioV20SampleRateTable=[22050,24e3,16e3,0],this._mpegAudioV25SampleRateTable=[11025,12e3,8e3,0],this._mpegAudioL1BitRateTable=[0,32,64,96,128,160,192,224,256,288,320,352,384,416,448,-1],this._mpegAudioL2BitRateTable=[0,32,48,56,64,80,96,112,128,160,192,224,256,320,384,-1],this._mpegAudioL3BitRateTable=[0,32,40,48,56,64,80,96,112,128,160,192,224,256,320,-1],this._videoTrack={type:"video",id:1,sequenceNumber:0,samples:[],length:0},this._audioTrack={type:"audio",id:2,sequenceNumber:0,samples:[],length:0},this._littleEndian=function(){let Le=new ArrayBuffer(2);return new DataView(Le).setInt16(0,256,!0),new Int16Array(Le)[0]===256}()}destroy(){this._mediaInfo=null,this._metadata=null,this._audioMetadata=null,this._videoMetadata=null,this._videoTrack=null,this._audioTrack=null,this._onError=null,this._onMediaInfo=null,this._onMetaDataArrived=null,this._onScriptDataArrived=null,this._onTrackMetadata=null,this._onDataAvailable=null}static probe(we){let Be=new Uint8Array(we),Le={match:!1};if(Be[0]!==70||Be[1]!==76||Be[2]!==86||Be[3]!==1)return Le;let je=(Be[4]&4)>>>2!==0,Xe=(Be[4]&1)!==0,Et=gt(Be,5);return Et<9?Le:{match:!0,consumed:Et,dataOffset:Et,hasAudioTrack:je,hasVideoTrack:Xe}}bindDataSource(we){return we.onDataArrival=this.parseChunks.bind(this),this}get onTrackMetadata(){return this._onTrackMetadata}set onTrackMetadata(we){this._onTrackMetadata=we}get onMediaInfo(){return this._onMediaInfo}set onMediaInfo(we){this._onMediaInfo=we}get onMetaDataArrived(){return this._onMetaDataArrived}set onMetaDataArrived(we){this._onMetaDataArrived=we}get onScriptDataArrived(){return this._onScriptDataArrived}set onScriptDataArrived(we){this._onScriptDataArrived=we}get onError(){return this._onError}set onError(we){this._onError=we}get onDataAvailable(){return this._onDataAvailable}set onDataAvailable(we){this._onDataAvailable=we}get timestampBase(){return this._timestampBase}set timestampBase(we){this._timestampBase=we}get overridedDuration(){return this._duration}set overridedDuration(we){this._durationOverrided=!0,this._duration=we,this._mediaInfo.duration=we}set overridedHasAudio(we){this._hasAudioFlagOverrided=!0,this._hasAudio=we,this._mediaInfo.hasAudio=we}set overridedHasVideo(we){this._hasVideoFlagOverrided=!0,this._hasVideo=we,this._mediaInfo.hasVideo=we}resetMediaInfo(){this._mediaInfo=new Ut}_isInitialMetadataDispatched(){return this._hasAudio&&this._hasVideo?this._audioInitialMetadataDispatched&&this._videoInitialMetadataDispatched:this._hasAudio&&!this._hasVideo?this._audioInitialMetadataDispatched:!this._hasAudio&&this._hasVideo?this._videoInitialMetadataDispatched:!1}parseChunks(we,Be){if(!this._onError||!this._onMediaInfo||!this._onTrackMetadata||!this._onDataAvailable)throw new xe("Flv: onError & onMediaInfo & onTrackMetadata & onDataAvailable callback must be specified");let Le=0,je=this._littleEndian;if(Be===0)if(we.byteLength>13)Le=bt.probe(we).dataOffset;else return 0;for(this._firstParse&&(this._firstParse=!1,Be+Le!==this._dataOffset&&Me.w(this.TAG,"First time parsing but chunk byteStart invalid!"),new DataView(we,Le).getUint32(0,!je)!==0&&Me.w(this.TAG,"PrevTagSize0 !== 0 !!!"),Le+=4);Le<we.byteLength;){this._dispatch=!0;let Xe=new DataView(we,Le);if(Le+11+4>we.byteLength)break;let Et=Xe.getUint8(0),xt=Xe.getUint32(0,!je)&16777215;if(Le+11+xt+4>we.byteLength)break;if(Et!==8&&Et!==9&&Et!==18){Me.w(this.TAG,`Unsupported tag type ${Et}, skipped`),Le+=11+xt+4;continue}let Jt=Xe.getUint8(4),Vt=Xe.getUint8(5),fn=Xe.getUint8(6),dn=Xe.getUint8(7),Vn=fn|Vt<<8|Jt<<16|dn<<24;(Xe.getUint32(7,!je)&16777215)!==0&&Me.w(this.TAG,"Meet tag which has StreamID != 0!");let Jn=Le+11;switch(Et){case 8:this._parseAudioData(we,Jn,xt,Vn);break;case 9:this._parseVideoData(we,Jn,xt,Vn,Be+Le);break;case 18:this._parseScriptData(we,Jn,xt);break}let $n=Xe.getUint32(11+xt,!je);$n!==11+xt&&Me.w(this.TAG,`Invalid PrevTagSize ${$n}`),Le+=11+xt+4}return this._isInitialMetadataDispatched()&&this._dispatch&&(this._audioTrack.length||this._videoTrack.length)&&this._onDataAvailable(this._audioTrack,this._videoTrack),Le}_parseScriptData(we,Be,Le){let je=on.parseScriptData(we,Be,Le);if(je.hasOwnProperty("onMetaData")){if(je.onMetaData==null||typeof je.onMetaData!="object"){Me.w(this.TAG,"Invalid onMetaData structure!");return}this._metadata&&Me.w(this.TAG,"Found another onMetaData tag!"),this._metadata=je;let Xe=this._metadata.onMetaData;if(this._onMetaDataArrived&&this._onMetaDataArrived(Object.assign({},Xe)),typeof Xe.hasAudio=="boolean"&&this._hasAudioFlagOverrided===!1&&(this._hasAudio=Xe.hasAudio,this._mediaInfo.hasAudio=this._hasAudio),typeof Xe.hasVideo=="boolean"&&this._hasVideoFlagOverrided===!1&&(this._hasVideo=Xe.hasVideo,this._mediaInfo.hasVideo=this._hasVideo),typeof Xe.audiodatarate=="number"&&(this._mediaInfo.audioDataRate=Xe.audiodatarate),typeof Xe.videodatarate=="number"&&(this._mediaInfo.videoDataRate=Xe.videodatarate),typeof Xe.width=="number"&&(this._mediaInfo.width=Xe.width),typeof Xe.height=="number"&&(this._mediaInfo.height=Xe.height),typeof Xe.duration=="number"){if(!this._durationOverrided){let Et=Math.floor(Xe.duration*this._timescale);this._duration=Et,this._mediaInfo.duration=Et}}else this._mediaInfo.duration=0;if(typeof Xe.framerate=="number"){let Et=Math.floor(Xe.framerate*1e3);if(Et>0){let xt=Et/1e3;this._referenceFrameRate.fixed=!0,this._referenceFrameRate.fps=xt,this._referenceFrameRate.fps_num=Et,this._referenceFrameRate.fps_den=1e3,this._mediaInfo.fps=xt}}if(typeof Xe.keyframes=="object"){this._mediaInfo.hasKeyframesIndex=!0;let Et=Xe.keyframes;this._mediaInfo.keyframesIndex=this._parseKeyframesIndex(Et),Xe.keyframes=null}else this._mediaInfo.hasKeyframesIndex=!1;this._dispatch=!1,this._mediaInfo.metadata=Xe,Me.v(this.TAG,"Parsed onMetaData"),this._mediaInfo.isComplete()&&this._onMediaInfo(this._mediaInfo)}Object.keys(je).length>0&&this._onScriptDataArrived&&this._onScriptDataArrived(Object.assign({},je))}_parseKeyframesIndex(we){let Be=[],Le=[];for(let je=1;je<we.times.length;je++){let Xe=this._timestampBase+Math.floor(we.times[je]*1e3);Be.push(Xe),Le.push(we.filepositions[je])}return{times:Be,filepositions:Le}}_parseAudioData(we,Be,Le,je){if(Le<=1){Me.w(this.TAG,"Flv: Invalid audio packet, missing SoundData payload!");return}if(this._hasAudioFlagOverrided===!0&&this._hasAudio===!1)return;let Xe=this._littleEndian,xt=new DataView(we,Be,Le).getUint8(0),Jt=xt>>>4;if(Jt!==2&&Jt!==10){this._onError(Tt.CODEC_UNSUPPORTED,"Flv: Unsupported audio codec idx: "+Jt);return}let Vt=0,fn=(xt&12)>>>2;if(fn>=0&&fn<=4)Vt=this._flvSoundRateTable[fn];else{this._onError(Tt.FORMAT_ERROR,"Flv: Invalid audio sample rate idx: "+fn);return}let dn=(xt&2)>>>1,Vn=xt&1,Pn=this._audioMetadata,Jn=this._audioTrack;if(Pn||(this._hasAudio===!1&&this._hasAudioFlagOverrided===!1&&(this._hasAudio=!0,this._mediaInfo.hasAudio=!0),Pn=this._audioMetadata={},Pn.type="audio",Pn.id=Jn.id,Pn.timescale=this._timescale,Pn.duration=this._duration,Pn.audioSampleRate=Vt,Pn.channelCount=Vn===0?1:2),Jt===10){let $n=this._parseAACAudioData(we,Be+1,Le-1);if($n==null)return;if($n.packetType===0){Pn.config&&Me.w(this.TAG,"Found another AudioSpecificConfig!");let hr=$n.data;Pn.audioSampleRate=hr.samplingRate,Pn.channelCount=hr.channelCount,Pn.codec=hr.codec,Pn.originalCodec=hr.originalCodec,Pn.config=hr.config,Pn.refSampleDuration=1024/Pn.audioSampleRate*Pn.timescale,Me.v(this.TAG,"Parsed AudioSpecificConfig"),this._isInitialMetadataDispatched()?this._dispatch&&(this._audioTrack.length||this._videoTrack.length)&&this._onDataAvailable(this._audioTrack,this._videoTrack):this._audioInitialMetadataDispatched=!0,this._dispatch=!1,this._onTrackMetadata("audio",Pn);let hn=this._mediaInfo;hn.audioCodec=Pn.originalCodec,hn.audioSampleRate=Pn.audioSampleRate,hn.audioChannelCount=Pn.channelCount,hn.hasVideo?hn.videoCodec!=null&&(hn.mimeType='video/x-flv; codecs="'+hn.videoCodec+","+hn.audioCodec+'"'):hn.mimeType='video/x-flv; codecs="'+hn.audioCodec+'"',hn.isComplete()&&this._onMediaInfo(hn)}else if($n.packetType===1){let hr=this._timestampBase+je,hn={unit:$n.data,length:$n.data.byteLength,dts:hr,pts:hr};Jn.samples.push(hn),Jn.length+=$n.data.length}else Me.e(this.TAG,`Flv: Unsupported AAC data type ${$n.packetType}`)}else if(Jt===2){if(!Pn.codec){let an=this._parseMP3AudioData(we,Be+1,Le-1,!0);if(an==null)return;Pn.audioSampleRate=an.samplingRate,Pn.channelCount=an.channelCount,Pn.codec=an.codec,Pn.originalCodec=an.originalCodec,Pn.refSampleDuration=1152/Pn.audioSampleRate*Pn.timescale,Me.v(this.TAG,"Parsed MPEG Audio Frame Header"),this._audioInitialMetadataDispatched=!0,this._onTrackMetadata("audio",Pn);let In=this._mediaInfo;In.audioCodec=Pn.codec,In.audioSampleRate=Pn.audioSampleRate,In.audioChannelCount=Pn.channelCount,In.audioDataRate=an.bitRate,In.hasVideo?In.videoCodec!=null&&(In.mimeType='video/x-flv; codecs="'+In.videoCodec+","+In.audioCodec+'"'):In.mimeType='video/x-flv; codecs="'+In.audioCodec+'"',In.isComplete()&&this._onMediaInfo(In)}let $n=this._parseMP3AudioData(we,Be+1,Le-1,!1);if($n==null)return;let hr=this._timestampBase+je,hn={unit:$n,length:$n.byteLength,dts:hr,pts:hr};Jn.samples.push(hn),Jn.length+=$n.length}}_parseAACAudioData(we,Be,Le){if(Le<=1){Me.w(this.TAG,"Flv: Invalid AAC packet, missing AACPacketType or/and Data!");return}let je={},Xe=new Uint8Array(we,Be,Le);return je.packetType=Xe[0],Xe[0]===0?je.data=this._parseAACAudioSpecificConfig(we,Be+1,Le-1):je.data=Xe.subarray(1),je}_parseAACAudioSpecificConfig(we,Be,Le){let je=new Uint8Array(we,Be,Le),Xe=null,Et=0,xt=0,Jt=null,Vt=0,fn=null;if(Et=xt=je[0]>>>3,Vt=(je[0]&7)<<1|je[1]>>>7,Vt<0||Vt>=this._mpegSamplingRates.length){this._onError(Tt.FORMAT_ERROR,"Flv: AAC invalid sampling frequency index!");return}let dn=this._mpegSamplingRates[Vt],Vn=(je[1]&120)>>>3;if(Vn<0||Vn>=8){this._onError(Tt.FORMAT_ERROR,"Flv: AAC invalid channel configuration");return}Et===5&&(fn=(je[1]&7)<<1|je[2]>>>7,Jt=(je[2]&124)>>>2);let Pn=self.navigator.userAgent.toLowerCase();return Pn.indexOf("firefox")!==-1?Vt>=6?(Et=5,Xe=new Array(4),fn=Vt-3):(Et=2,Xe=new Array(2),fn=Vt):Pn.indexOf("android")!==-1?(Et=2,Xe=new Array(2),fn=Vt):(Et=5,fn=Vt,Xe=new Array(4),Vt>=6?fn=Vt-3:Vn===1&&(Et=2,Xe=new Array(2),fn=Vt)),Xe[0]=Et<<3,Xe[0]|=(Vt&15)>>>1,Xe[1]=(Vt&15)<<7,Xe[1]|=(Vn&15)<<3,Et===5&&(Xe[1]|=(fn&15)>>>1,Xe[2]=(fn&1)<<7,Xe[2]|=8,Xe[3]=0),{config:Xe,samplingRate:dn,channelCount:Vn,codec:"mp4a.40."+Et,originalCodec:"mp4a.40."+xt}}_parseMP3AudioData(we,Be,Le,je){if(Le<4){Me.w(this.TAG,"Flv: Invalid MP3 packet, header missing!");return}let Xe=this._littleEndian,Et=new Uint8Array(we,Be,Le),xt=null;if(je){if(Et[0]!==255)return;let Jt=Et[1]>>>3&3,Vt=(Et[1]&6)>>1,fn=(Et[2]&240)>>>4,dn=(Et[2]&12)>>>2,Pn=(Et[3]>>>6&3)!==3?2:1,Jn=0,$n=0,hr=34,hn="mp3";switch(Jt){case 0:Jn=this._mpegAudioV25SampleRateTable[dn];break;case 2:Jn=this._mpegAudioV20SampleRateTable[dn];break;case 3:Jn=this._mpegAudioV10SampleRateTable[dn];break}switch(Vt){case 1:hr=34,fn<this._mpegAudioL3BitRateTable.length&&($n=this._mpegAudioL3BitRateTable[fn]);break;case 2:hr=33,fn<this._mpegAudioL2BitRateTable.length&&($n=this._mpegAudioL2BitRateTable[fn]);break;case 3:hr=32,fn<this._mpegAudioL1BitRateTable.length&&($n=this._mpegAudioL1BitRateTable[fn]);break}xt={bitRate:$n,samplingRate:Jn,channelCount:Pn,codec:hn,originalCodec:hn}}else xt=Et;return xt}_parseVideoData(we,Be,Le,je,Xe){if(Le<=1){Me.w(this.TAG,"Flv: Invalid video packet, missing VideoData payload!");return}if(this._hasVideoFlagOverrided===!0&&this._hasVideo===!1)return;let Et=new Uint8Array(we,Be,Le)[0],xt=(Et&240)>>>4,Jt=Et&15;if(Jt!==7){this._onError(Tt.CODEC_UNSUPPORTED,`Flv: Unsupported codec in video frame: ${Jt}`);return}this._parseAVCVideoPacket(we,Be+1,Le-1,je,Xe,xt)}_parseAVCVideoPacket(we,Be,Le,je,Xe,Et){if(Le<4){Me.w(this.TAG,"Flv: Invalid AVC packet, missing AVCPacketType or/and CompositionTime");return}let xt=this._littleEndian,Jt=new DataView(we,Be,Le),Vt=Jt.getUint8(0),dn=(Jt.getUint32(0,!xt)&16777215)<<8>>8;if(Vt===0)this._parseAVCDecoderConfigurationRecord(we,Be+4,Le-4);else if(Vt===1)this._parseAVCVideoData(we,Be+4,Le-4,je,Xe,Et,dn);else if(Vt!==2){this._onError(Tt.FORMAT_ERROR,`Flv: Invalid video packet type ${Vt}`);return}}_parseAVCDecoderConfigurationRecord(we,Be,Le){if(Le<7){Me.w(this.TAG,"Flv: Invalid AVCDecoderConfigurationRecord, lack of data!");return}let je=this._videoMetadata,Xe=this._videoTrack,Et=this._littleEndian,xt=new DataView(we,Be,Le);je?typeof je.avcc!="undefined"&&Me.w(this.TAG,"Found another AVCDecoderConfigurationRecord!"):(this._hasVideo===!1&&this._hasVideoFlagOverrided===!1&&(this._hasVideo=!0,this._mediaInfo.hasVideo=!0),je=this._videoMetadata={},je.type="video",je.id=Xe.id,je.timescale=this._timescale,je.duration=this._duration);let Jt=xt.getUint8(0),Vt=xt.getUint8(1),fn=xt.getUint8(2),dn=xt.getUint8(3);if(Jt!==1||Vt===0){this._onError(Tt.FORMAT_ERROR,"Flv: Invalid AVCDecoderConfigurationRecord");return}if(this._naluLengthSize=(xt.getUint8(4)&3)+1,this._naluLengthSize!==3&&this._naluLengthSize!==4){this._onError(Tt.FORMAT_ERROR,`Flv: Strange NaluLengthSizeMinusOne: ${this._naluLengthSize-1}`);return}let Vn=xt.getUint8(5)&31;if(Vn===0){this._onError(Tt.FORMAT_ERROR,"Flv: Invalid AVCDecoderConfigurationRecord: No SPS");return}else Vn>1&&Me.w(this.TAG,`Flv: Strange AVCDecoderConfigurationRecord: SPS Count = ${Vn}`);let Pn=6;for(let $n=0;$n<Vn;$n++){let hr=xt.getUint16(Pn,!Et);if(Pn+=2,hr===0)continue;let hn=new Uint8Array(we,Be+Pn,hr);Pn+=hr;let an=rn.parseSPS(hn);if($n!==0)continue;je.codecWidth=an.codec_size.width,je.codecHeight=an.codec_size.height,je.presentWidth=an.present_size.width,je.presentHeight=an.present_size.height,je.profile=an.profile_string,je.level=an.level_string,je.bitDepth=an.bit_depth,je.chromaFormat=an.chroma_format,je.sarRatio=an.sar_ratio,je.frameRate=an.frame_rate,(an.frame_rate.fixed===!1||an.frame_rate.fps_num===0||an.frame_rate.fps_den===0)&&(je.frameRate=this._referenceFrameRate);let In=je.frameRate.fps_den,jn=je.frameRate.fps_num;je.refSampleDuration=je.timescale*(In/jn);let cr=hn.subarray(1,4),or="avc1.";for(let dr=0;dr<3;dr++){let xr=cr[dr].toString(16);xr.length<2&&(xr="0"+xr),or+=xr}je.codec=or;let Qn=this._mediaInfo;Qn.width=je.codecWidth,Qn.height=je.codecHeight,Qn.fps=je.frameRate.fps,Qn.profile=je.profile,Qn.level=je.level,Qn.refFrames=an.ref_frames,Qn.chromaFormat=an.chroma_format_string,Qn.sarNum=je.sarRatio.width,Qn.sarDen=je.sarRatio.height,Qn.videoCodec=or,Qn.hasAudio?Qn.audioCodec!=null&&(Qn.mimeType='video/x-flv; codecs="'+Qn.videoCodec+","+Qn.audioCodec+'"'):Qn.mimeType='video/x-flv; codecs="'+Qn.videoCodec+'"',Qn.isComplete()&&this._onMediaInfo(Qn)}let Jn=xt.getUint8(Pn);if(Jn===0){this._onError(Tt.FORMAT_ERROR,"Flv: Invalid AVCDecoderConfigurationRecord: No PPS");return}else Jn>1&&Me.w(this.TAG,`Flv: Strange AVCDecoderConfigurationRecord: PPS Count = ${Jn}`);Pn++;for(let $n=0;$n<Jn;$n++){let hr=xt.getUint16(Pn,!Et);Pn+=2,hr!==0&&(Pn+=hr)}je.avcc=new Uint8Array(Le),je.avcc.set(new Uint8Array(we,Be,Le),0),Me.v(this.TAG,"Parsed AVCDecoderConfigurationRecord"),this._isInitialMetadataDispatched()?this._dispatch&&(this._audioTrack.length||this._videoTrack.length)&&this._onDataAvailable(this._audioTrack,this._videoTrack):this._videoInitialMetadataDispatched=!0,this._dispatch=!1,this._onTrackMetadata("video",je)}_parseAVCVideoData(we,Be,Le,je,Xe,Et,xt){let Jt=this._littleEndian,Vt=new DataView(we,Be,Le),fn=[],dn=0,Vn=0;const Pn=this._naluLengthSize;let Jn=this._timestampBase+je,$n=Et===1;for(;Vn<Le;){if(Vn+4>=Le){Me.w(this.TAG,`Malformed Nalu near timestamp ${Jn}, offset = ${Vn}, dataSize = ${Le}`);break}let hr=Vt.getUint32(Vn,!Jt);if(Pn===3&&(hr>>>=8),hr>Le-Pn){Me.w(this.TAG,`Malformed Nalus near timestamp ${Jn}, NaluSize > DataSize!`);return}let hn=Vt.getUint8(Vn+Pn)&31;hn===5&&($n=!0);let an=new Uint8Array(we,Be+Vn,Pn+hr),In={type:hn,data:an};fn.push(In),dn+=an.byteLength,Vn+=Pn+hr}if(fn.length){let hr=this._videoTrack,hn={units:fn,length:dn,isKeyframe:$n,dts:Jn,cts:xt,pts:Jn+xt};$n&&(hn.fileposition=Xe),hr.samples.push(hn),hr.length+=dn}}}var Yt=bt;class kt{static init(){kt.types={avc1:[],avcC:[],btrt:[],dinf:[],dref:[],esds:[],ftyp:[],hdlr:[],mdat:[],mdhd:[],mdia:[],mfhd:[],minf:[],moof:[],moov:[],mp4a:[],mvex:[],mvhd:[],sdtp:[],stbl:[],stco:[],stsc:[],stsd:[],stsz:[],stts:[],tfdt:[],tfhd:[],traf:[],trak:[],trun:[],trex:[],tkhd:[],vmhd:[],smhd:[],".mp3":[]};for(let Be in kt.types)kt.types.hasOwnProperty(Be)&&(kt.types[Be]=[Be.charCodeAt(0),Be.charCodeAt(1),Be.charCodeAt(2),Be.charCodeAt(3)]);let we=kt.constants={};we.FTYP=new Uint8Array([105,115,111,109,0,0,0,1,105,115,111,109,97,118,99,49]),we.STSD_PREFIX=new Uint8Array([0,0,0,0,0,0,0,1]),we.STTS=new Uint8Array([0,0,0,0,0,0,0,0]),we.STSC=we.STCO=we.STTS,we.STSZ=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0]),we.HDLR_VIDEO=new Uint8Array([0,0,0,0,0,0,0,0,118,105,100,101,0,0,0,0,0,0,0,0,0,0,0,0,86,105,100,101,111,72,97,110,100,108,101,114,0]),we.HDLR_AUDIO=new Uint8Array([0,0,0,0,0,0,0,0,115,111,117,110,0,0,0,0,0,0,0,0,0,0,0,0,83,111,117,110,100,72,97,110,100,108,101,114,0]),we.DREF=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,12,117,114,108,32,0,0,0,1]),we.SMHD=new Uint8Array([0,0,0,0,0,0,0,0]),we.VMHD=new Uint8Array([0,0,0,1,0,0,0,0,0,0,0,0])}static box(we){let Be=8,Le=null,je=Array.prototype.slice.call(arguments,1),Xe=je.length;for(let xt=0;xt<Xe;xt++)Be+=je[xt].byteLength;Le=new Uint8Array(Be),Le[0]=Be>>>24&255,Le[1]=Be>>>16&255,Le[2]=Be>>>8&255,Le[3]=Be&255,Le.set(we,4);let Et=8;for(let xt=0;xt<Xe;xt++)Le.set(je[xt],Et),Et+=je[xt].byteLength;return Le}static generateInitSegment(we){let Be=kt.box(kt.types.ftyp,kt.constants.FTYP),Le=kt.moov(we),je=new Uint8Array(Be.byteLength+Le.byteLength);return je.set(Be,0),je.set(Le,Be.byteLength),je}static moov(we){let Be=kt.mvhd(we.timescale,we.duration),Le=kt.trak(we),je=kt.mvex(we);return kt.box(kt.types.moov,Be,Le,je)}static mvhd(we,Be){return kt.box(kt.types.mvhd,new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,we>>>24&255,we>>>16&255,we>>>8&255,we&255,Be>>>24&255,Be>>>16&255,Be>>>8&255,Be&255,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255]))}static trak(we){return kt.box(kt.types.trak,kt.tkhd(we),kt.mdia(we))}static tkhd(we){let Be=we.id,Le=we.duration,je=we.presentWidth,Xe=we.presentHeight;return kt.box(kt.types.tkhd,new Uint8Array([0,0,0,7,0,0,0,0,0,0,0,0,Be>>>24&255,Be>>>16&255,Be>>>8&255,Be&255,0,0,0,0,Le>>>24&255,Le>>>16&255,Le>>>8&255,Le&255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,je>>>8&255,je&255,0,0,Xe>>>8&255,Xe&255,0,0]))}static mdia(we){return kt.box(kt.types.mdia,kt.mdhd(we),kt.hdlr(we),kt.minf(we))}static mdhd(we){let Be=we.timescale,Le=we.duration;return kt.box(kt.types.mdhd,new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,Be>>>24&255,Be>>>16&255,Be>>>8&255,Be&255,Le>>>24&255,Le>>>16&255,Le>>>8&255,Le&255,85,196,0,0]))}static hdlr(we){let Be=null;return we.type==="audio"?Be=kt.constants.HDLR_AUDIO:Be=kt.constants.HDLR_VIDEO,kt.box(kt.types.hdlr,Be)}static minf(we){let Be=null;return we.type==="audio"?Be=kt.box(kt.types.smhd,kt.constants.SMHD):Be=kt.box(kt.types.vmhd,kt.constants.VMHD),kt.box(kt.types.minf,Be,kt.dinf(),kt.stbl(we))}static dinf(){return kt.box(kt.types.dinf,kt.box(kt.types.dref,kt.constants.DREF))}static stbl(we){return kt.box(kt.types.stbl,kt.stsd(we),kt.box(kt.types.stts,kt.constants.STTS),kt.box(kt.types.stsc,kt.constants.STSC),kt.box(kt.types.stsz,kt.constants.STSZ),kt.box(kt.types.stco,kt.constants.STCO))}static stsd(we){return we.type==="audio"?we.codec==="mp3"?kt.box(kt.types.stsd,kt.constants.STSD_PREFIX,kt.mp3(we)):kt.box(kt.types.stsd,kt.constants.STSD_PREFIX,kt.mp4a(we)):kt.box(kt.types.stsd,kt.constants.STSD_PREFIX,kt.avc1(we))}static mp3(we){let Be=we.channelCount,Le=we.audioSampleRate,je=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,Be,0,16,0,0,0,0,Le>>>8&255,Le&255,0,0]);return kt.box(kt.types[".mp3"],je)}static mp4a(we){let Be=we.channelCount,Le=we.audioSampleRate,je=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,Be,0,16,0,0,0,0,Le>>>8&255,Le&255,0,0]);return kt.box(kt.types.mp4a,je,kt.esds(we))}static esds(we){let Be=we.config||[],Le=Be.length,je=new Uint8Array([0,0,0,0,3,23+Le,0,1,0,4,15+Le,64,21,0,0,0,0,0,0,0,0,0,0,0,5].concat([Le]).concat(Be).concat([6,1,2]));return kt.box(kt.types.esds,je)}static avc1(we){let Be=we.avcc,Le=we.codecWidth,je=we.codecHeight,Xe=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,Le>>>8&255,Le&255,je>>>8&255,je&255,0,72,0,0,0,72,0,0,0,0,0,0,0,1,10,120,113,113,47,102,108,118,46,106,115,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,255,255]);return kt.box(kt.types.avc1,Xe,kt.box(kt.types.avcC,Be))}static mvex(we){return kt.box(kt.types.mvex,kt.trex(we))}static trex(we){let Be=we.id,Le=new Uint8Array([0,0,0,0,Be>>>24&255,Be>>>16&255,Be>>>8&255,Be&255,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,1]);return kt.box(kt.types.trex,Le)}static moof(we,Be){return kt.box(kt.types.moof,kt.mfhd(we.sequenceNumber),kt.traf(we,Be))}static mfhd(we){let Be=new Uint8Array([0,0,0,0,we>>>24&255,we>>>16&255,we>>>8&255,we&255]);return kt.box(kt.types.mfhd,Be)}static traf(we,Be){let Le=we.id,je=kt.box(kt.types.tfhd,new Uint8Array([0,0,0,0,Le>>>24&255,Le>>>16&255,Le>>>8&255,Le&255])),Xe=kt.box(kt.types.tfdt,new Uint8Array([0,0,0,0,Be>>>24&255,Be>>>16&255,Be>>>8&255,Be&255])),Et=kt.sdtp(we),xt=kt.trun(we,Et.byteLength+16+16+8+16+8+8);return kt.box(kt.types.traf,je,Xe,xt,Et)}static sdtp(we){let Be=we.samples||[],Le=Be.length,je=new Uint8Array(4+Le);for(let Xe=0;Xe<Le;Xe++){let Et=Be[Xe].flags;je[Xe+4]=Et.isLeading<<6|Et.dependsOn<<4|Et.isDependedOn<<2|Et.hasRedundancy}return kt.box(kt.types.sdtp,je)}static trun(we,Be){let Le=we.samples||[],je=Le.length,Xe=12+16*je,Et=new Uint8Array(Xe);Be+=8+Xe,Et.set([0,0,15,1,je>>>24&255,je>>>16&255,je>>>8&255,je&255,Be>>>24&255,Be>>>16&255,Be>>>8&255,Be&255],0);for(let xt=0;xt<je;xt++){let Jt=Le[xt].duration,Vt=Le[xt].size,fn=Le[xt].flags,dn=Le[xt].cts;Et.set([Jt>>>24&255,Jt>>>16&255,Jt>>>8&255,Jt&255,Vt>>>24&255,Vt>>>16&255,Vt>>>8&255,Vt&255,fn.isLeading<<2|fn.dependsOn,fn.isDependedOn<<6|fn.hasRedundancy<<4|fn.isNonSync,0,0,dn>>>24&255,dn>>>16&255,dn>>>8&255,dn&255],12+16*xt)}return kt.box(kt.types.trun,Et)}static mdat(we){return kt.box(kt.types.mdat,we)}}kt.init();var Mt=kt;class ln{static getSilentFrame(we,Be){if(we==="mp4a.40.2"){if(Be===1)return new Uint8Array([0,200,0,128,35,128]);if(Be===2)return new Uint8Array([33,0,73,144,2,25,0,35,128]);if(Be===3)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,142]);if(Be===4)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,128,44,128,8,2,56]);if(Be===5)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,130,48,4,153,0,33,144,2,56]);if(Be===6)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,130,48,4,153,0,33,144,2,0,178,0,32,8,224])}else{if(Be===1)return new Uint8Array([1,64,34,128,163,78,230,128,186,8,0,0,0,28,6,241,193,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94]);if(Be===2)return new Uint8Array([1,64,34,128,163,94,230,128,186,8,0,0,0,0,149,0,6,241,161,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94]);if(Be===3)return new Uint8Array([1,64,34,128,163,94,230,128,186,8,0,0,0,0,149,0,6,241,161,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94])}return null}}var zn=ln;class Gn{constructor(we,Be,Le,je,Xe){this.dts=we,this.pts=Be,this.duration=Le,this.originalDts=je,this.isSyncPoint=Xe,this.fileposition=null}}class Hn{constructor(){this.beginDts=0,this.endDts=0,this.beginPts=0,this.endPts=0,this.originalBeginDts=0,this.originalEndDts=0,this.syncPoints=[],this.firstSample=null,this.lastSample=null}appendSyncPoint(we){we.isSyncPoint=!0,this.syncPoints.push(we)}}class nr{constructor(){this._list=[]}clear(){this._list=[]}appendArray(we){let Be=this._list;we.length!==0&&(Be.length>0&&we[0].originalDts<Be[Be.length-1].originalDts&&this.clear(),Array.prototype.push.apply(Be,we))}getLastSyncPointBeforeDts(we){if(this._list.length==0)return null;let Be=this._list,Le=0,je=Be.length-1,Xe=0,Et=0,xt=je;for(we<Be[0].dts&&(Le=0,Et=xt+1);Et<=xt;)if(Xe=Et+Math.floor((xt-Et)/2),Xe===je||we>=Be[Xe].dts&&we<Be[Xe+1].dts){Le=Xe;break}else Be[Xe].dts<we?Et=Xe+1:xt=Xe-1;return this._list[Le]}}class Xn{constructor(we){this._type=we,this._list=[],this._lastAppendLocation=-1}get type(){return this._type}get length(){return this._list.length}isEmpty(){return this._list.length===0}clear(){this._list=[],this._lastAppendLocation=-1}_searchNearestSegmentBefore(we){let Be=this._list;if(Be.length===0)return-2;let Le=Be.length-1,je=0,Xe=0,Et=Le,xt=0;if(we<Be[0].originalBeginDts)return xt=-1,xt;for(;Xe<=Et;)if(je=Xe+Math.floor((Et-Xe)/2),je===Le||we>Be[je].lastSample.originalDts&&we<Be[je+1].originalBeginDts){xt=je;break}else Be[je].originalBeginDts<we?Xe=je+1:Et=je-1;return xt}_searchNearestSegmentAfter(we){return this._searchNearestSegmentBefore(we)+1}append(we){let Be=this._list,Le=we,je=this._lastAppendLocation,Xe=0;je!==-1&&je<Be.length&&Le.originalBeginDts>=Be[je].lastSample.originalDts&&(je===Be.length-1||je<Be.length-1&&Le.originalBeginDts<Be[je+1].originalBeginDts)?Xe=je+1:Be.length>0&&(Xe=this._searchNearestSegmentBefore(Le.originalBeginDts)+1),this._lastAppendLocation=Xe,this._list.splice(Xe,0,Le)}getLastSegmentBefore(we){let Be=this._searchNearestSegmentBefore(we);return Be>=0?this._list[Be]:null}getLastSampleBefore(we){let Be=this.getLastSegmentBefore(we);return Be!=null?Be.lastSample:null}getLastSyncPointBefore(we){let Be=this._searchNearestSegmentBefore(we),Le=this._list[Be].syncPoints;for(;Le.length===0&&Be>0;)Be--,Le=this._list[Be].syncPoints;return Le.length>0?Le[Le.length-1]:null}}class qt{constructor(we){this.TAG="MP4Remuxer",this._config=we,this._isLive=we.isLive===!0,this._dtsBase=-1,this._dtsBaseInited=!1,this._audioDtsBase=1/0,this._videoDtsBase=1/0,this._audioNextDts=void 0,this._videoNextDts=void 0,this._audioStashedLastSample=null,this._videoStashedLastSample=null,this._audioMeta=null,this._videoMeta=null,this._audioSegmentInfoList=new Xn("audio"),this._videoSegmentInfoList=new Xn("video"),this._onInitSegment=null,this._onMediaSegment=null,this._forceFirstIDR=!!(se.chrome&&(se.version.major<50||se.version.major===50&&se.version.build<2661)),this._fillSilentAfterSeek=se.msedge||se.msie,this._mp3UseMpegAudio=!se.firefox,this._fillAudioTimestampGap=this._config.fixAudioTimestampGap}destroy(){this._dtsBase=-1,this._dtsBaseInited=!1,this._audioMeta=null,this._videoMeta=null,this._audioSegmentInfoList.clear(),this._audioSegmentInfoList=null,this._videoSegmentInfoList.clear(),this._videoSegmentInfoList=null,this._onInitSegment=null,this._onMediaSegment=null}bindDataSource(we){return we.onDataAvailable=this.remux.bind(this),we.onTrackMetadata=this._onTrackMetadataReceived.bind(this),this}get onInitSegment(){return this._onInitSegment}set onInitSegment(we){this._onInitSegment=we}get onMediaSegment(){return this._onMediaSegment}set onMediaSegment(we){this._onMediaSegment=we}insertDiscontinuity(){this._audioNextDts=this._videoNextDts=void 0}seek(we){this._audioStashedLastSample=null,this._videoStashedLastSample=null,this._videoSegmentInfoList.clear(),this._audioSegmentInfoList.clear()}remux(we,Be){if(!this._onMediaSegment)throw new xe("MP4Remuxer: onMediaSegment callback must be specificed!");this._dtsBaseInited||this._calculateDtsBase(we,Be),this._remuxVideo(Be),this._remuxAudio(we)}_onTrackMetadataReceived(we,Be){let Le=null,je="mp4",Xe=Be.codec;if(we==="audio")this._audioMeta=Be,Be.codec==="mp3"&&this._mp3UseMpegAudio?(je="mpeg",Xe="",Le=new Uint8Array):Le=Mt.generateInitSegment(Be);else if(we==="video")this._videoMeta=Be,Le=Mt.generateInitSegment(Be);else return;if(!this._onInitSegment)throw new xe("MP4Remuxer: onInitSegment callback must be specified!");this._onInitSegment(we,{type:we,data:Le.buffer,codec:Xe,container:`${we}/${je}`,mediaDuration:Be.duration})}_calculateDtsBase(we,Be){this._dtsBaseInited||(we.samples&&we.samples.length&&(this._audioDtsBase=we.samples[0].dts),Be.samples&&Be.samples.length&&(this._videoDtsBase=Be.samples[0].dts),this._dtsBase=Math.min(this._audioDtsBase,this._videoDtsBase),this._dtsBaseInited=!0)}flushStashedSamples(){let we=this._videoStashedLastSample,Be=this._audioStashedLastSample,Le={type:"video",id:1,sequenceNumber:0,samples:[],length:0};we!=null&&(Le.samples.push(we),Le.length=we.length);let je={type:"audio",id:2,sequenceNumber:0,samples:[],length:0};Be!=null&&(je.samples.push(Be),je.length=Be.length),this._videoStashedLastSample=null,this._audioStashedLastSample=null,this._remuxVideo(Le,!0),this._remuxAudio(je,!0)}_remuxAudio(we,Be){if(this._audioMeta==null)return;let Le=we,je=Le.samples,Xe,Et=-1,xt=-1,Jt=-1,Vt=this._audioMeta.refSampleDuration,fn=this._audioMeta.codec==="mp3"&&this._mp3UseMpegAudio,dn=this._dtsBaseInited&&this._audioNextDts===void 0,Vn=!1;if(!je||je.length===0||je.length===1&&!Be)return;let Pn=0,Jn=null,$n=0;fn?(Pn=0,$n=Le.length):(Pn=8,$n=8+Le.length);let hr=null;if(je.length>1&&(hr=je.pop(),$n-=hr.length),this._audioStashedLastSample!=null){let Qn=this._audioStashedLastSample;this._audioStashedLastSample=null,je.unshift(Qn),$n+=Qn.length}hr!=null&&(this._audioStashedLastSample=hr);let hn=je[0].dts-this._dtsBase;if(this._audioNextDts)Xe=hn-this._audioNextDts;else if(this._audioSegmentInfoList.isEmpty())Xe=0,this._fillSilentAfterSeek&&!this._videoSegmentInfoList.isEmpty()&&this._audioMeta.originalCodec!=="mp3"&&(Vn=!0);else{let Qn=this._audioSegmentInfoList.getLastSampleBefore(hn);if(Qn!=null){let dr=hn-(Qn.originalDts+Qn.duration);dr<=3&&(dr=0);let xr=Qn.dts+Qn.duration+dr;Xe=hn-xr}else Xe=0}if(Vn){let Qn=hn-Xe,dr=this._videoSegmentInfoList.getLastSegmentBefore(hn);if(dr!=null&&dr.beginDts<Qn){let xr=zn.getSilentFrame(this._audioMeta.originalCodec,this._audioMeta.channelCount);if(xr){let On=dr.beginDts,vr=Qn-dr.beginDts;Me.v(this.TAG,`InsertPrefixSilentAudio: dts: ${On}, duration: ${vr}`),je.unshift({unit:xr,dts:On,pts:On}),$n+=xr.byteLength}}else Vn=!1}let an=[];for(let Qn=0;Qn<je.length;Qn++){let dr=je[Qn],xr=dr.unit,On=dr.dts-this._dtsBase,vr=On-Xe;Et===-1&&(Et=vr);let Yn=0;Qn!==je.length-1?Yn=je[Qn+1].dts-this._dtsBase-Xe-vr:hr!=null?Yn=hr.dts-this._dtsBase-Xe-vr:an.length>=1?Yn=an[an.length-1].duration:Yn=Math.floor(Vt);let jr=!1,ri=null;if(Yn>Vt*1.5&&this._audioMeta.codec!=="mp3"&&this._fillAudioTimestampGap&&!se.safari){jr=!0;let vi=Math.abs(Yn-Vt),ci=Math.ceil(vi/Vt),Kr=vr+Vt;Me.w(this.TAG,`Large audio timestamp gap detected, may cause AV sync to drift. Silent frames will be generated to avoid unsync.
|
|
|
dts: ${vr+Yn} ms, expected: ${vr+Math.round(Vt)} ms, delta: ${Math.round(vi)} ms, generate: ${ci} frames`);let Ia=zn.getSilentFrame(this._audioMeta.originalCodec,this._audioMeta.channelCount);Ia==null&&(Me.w(this.TAG,`Unable to generate silent frame for ${this._audioMeta.originalCodec} with ${this._audioMeta.channelCount} channels, repeat last frame`),Ia=xr),ri=[];for(let la=0;la<ci;la++){let ei=Math.round(Kr);if(ri.length>0){let za=ri[ri.length-1];za.duration=ei-za.dts}let Wi={dts:ei,pts:ei,cts:0,unit:Ia,size:Ia.byteLength,duration:0,originalDts:On,flags:{isLeading:0,dependsOn:1,isDependedOn:0,hasRedundancy:0}};ri.push(Wi),$n+=Wi.size,Kr+=Vt}let Ta=ri[ri.length-1];Ta.duration=vr+Yn-Ta.dts,Yn=Math.round(Vt)}an.push({dts:vr,pts:vr,cts:0,unit:dr.unit,size:dr.unit.byteLength,duration:Yn,originalDts:On,flags:{isLeading:0,dependsOn:1,isDependedOn:0,hasRedundancy:0}}),jr&&an.push.apply(an,ri)}fn?Jn=new Uint8Array($n):(Jn=new Uint8Array($n),Jn[0]=$n>>>24&255,Jn[1]=$n>>>16&255,Jn[2]=$n>>>8&255,Jn[3]=$n&255,Jn.set(Mt.types.mdat,4));for(let Qn=0;Qn<an.length;Qn++){let dr=an[Qn].unit;Jn.set(dr,Pn),Pn+=dr.byteLength}let In=an[an.length-1];xt=In.dts+In.duration,this._audioNextDts=xt;let jn=new Hn;jn.beginDts=Et,jn.endDts=xt,jn.beginPts=Et,jn.endPts=xt,jn.originalBeginDts=an[0].originalDts,jn.originalEndDts=In.originalDts+In.duration,jn.firstSample=new Gn(an[0].dts,an[0].pts,an[0].duration,an[0].originalDts,!1),jn.lastSample=new Gn(In.dts,In.pts,In.duration,In.originalDts,!1),this._isLive||this._audioSegmentInfoList.append(jn),Le.samples=an,Le.sequenceNumber++;let cr=null;fn?cr=new Uint8Array:cr=Mt.moof(Le,Et),Le.samples=[],Le.length=0;let or={type:"audio",data:this._mergeBoxes(cr,Jn).buffer,sampleCount:an.length,info:jn};fn&&dn&&(or.timestampOffset=Et),this._onMediaSegment("audio",or)}_remuxVideo(we,Be){if(this._videoMeta==null)return;let Le=we,je=Le.samples,Xe,Et=-1,xt=-1,Jt=-1,Vt=-1;if(!je||je.length===0||je.length===1&&!Be)return;let fn=8,dn=null,Vn=8+we.length,Pn=null;if(je.length>1&&(Pn=je.pop(),Vn-=Pn.length),this._videoStashedLastSample!=null){let In=this._videoStashedLastSample;this._videoStashedLastSample=null,je.unshift(In),Vn+=In.length}Pn!=null&&(this._videoStashedLastSample=Pn);let Jn=je[0].dts-this._dtsBase;if(this._videoNextDts)Xe=Jn-this._videoNextDts;else if(this._videoSegmentInfoList.isEmpty())Xe=0;else{let In=this._videoSegmentInfoList.getLastSampleBefore(Jn);if(In!=null){let jn=Jn-(In.originalDts+In.duration);jn<=3&&(jn=0);let cr=In.dts+In.duration+jn;Xe=Jn-cr}else Xe=0}let $n=new Hn,hr=[];for(let In=0;In<je.length;In++){let jn=je[In],cr=jn.dts-this._dtsBase,or=jn.isKeyframe,Qn=cr-Xe,dr=jn.cts,xr=Qn+dr;Et===-1&&(Et=Qn,Jt=xr);let On=0;if(In!==je.length-1?On=je[In+1].dts-this._dtsBase-Xe-Qn:Pn!=null?On=Pn.dts-this._dtsBase-Xe-Qn:hr.length>=1?On=hr[hr.length-1].duration:On=Math.floor(this._videoMeta.refSampleDuration),or){let vr=new Gn(Qn,xr,On,jn.dts,!0);vr.fileposition=jn.fileposition,$n.appendSyncPoint(vr)}hr.push({dts:Qn,pts:xr,cts:dr,units:jn.units,size:jn.length,isKeyframe:or,duration:On,originalDts:cr,flags:{isLeading:0,dependsOn:or?2:1,isDependedOn:or?1:0,hasRedundancy:0,isNonSync:or?0:1}})}dn=new Uint8Array(Vn),dn[0]=Vn>>>24&255,dn[1]=Vn>>>16&255,dn[2]=Vn>>>8&255,dn[3]=Vn&255,dn.set(Mt.types.mdat,4);for(let In=0;In<hr.length;In++){let jn=hr[In].units;for(;jn.length;){let or=jn.shift().data;dn.set(or,fn),fn+=or.byteLength}}let hn=hr[hr.length-1];if(xt=hn.dts+hn.duration,Vt=hn.pts+hn.duration,this._videoNextDts=xt,$n.beginDts=Et,$n.endDts=xt,$n.beginPts=Jt,$n.endPts=Vt,$n.originalBeginDts=hr[0].originalDts,$n.originalEndDts=hn.originalDts+hn.duration,$n.firstSample=new Gn(hr[0].dts,hr[0].pts,hr[0].duration,hr[0].originalDts,hr[0].isKeyframe),$n.lastSample=new Gn(hn.dts,hn.pts,hn.duration,hn.originalDts,hn.isKeyframe),this._isLive||this._videoSegmentInfoList.append($n),Le.samples=hr,Le.sequenceNumber++,this._forceFirstIDR){let In=hr[0].flags;In.dependsOn=2,In.isNonSync=0}let an=Mt.moof(Le,Et);Le.samples=[],Le.length=0,this._onMediaSegment("video",{type:"video",data:this._mergeBoxes(an,dn).buffer,sampleCount:hr.length,info:$n})}_mergeBoxes(we,Be){let Le=new Uint8Array(we.byteLength+Be.byteLength);return Le.set(we,0),Le.set(Be,we.byteLength),Le}}var vn=qt,Ln={IO_ERROR:"io_error",DEMUX_ERROR:"demux_error",INIT_SEGMENT:"init_segment",MEDIA_SEGMENT:"media_segment",LOADING_COMPLETE:"loading_complete",RECOVERED_EARLY_EOF:"recovered_early_eof",MEDIA_INFO:"media_info",METADATA_ARRIVED:"metadata_arrived",SCRIPTDATA_ARRIVED:"scriptdata_arrived",STATISTICS_INFO:"statistics_info",RECOMMEND_SEEKPOINT:"recommend_seekpoint"};class yr{constructor(we,Be){this.TAG="TransmuxingController",this._emitter=new(be()),this._config=Be,we.segments||(we.segments=[{duration:we.duration,filesize:we.filesize,url:we.url}]),typeof we.cors!="boolean"&&(we.cors=!0),typeof we.withCredentials!="boolean"&&(we.withCredentials=!1),this._mediaDataSource=we,this._currentSegmentIndex=0;let Le=0;this._mediaDataSource.segments.forEach(je=>{je.timestampBase=Le,Le+=je.duration,je.cors=we.cors,je.withCredentials=we.withCredentials,Be.referrerPolicy&&(je.referrerPolicy=Be.referrerPolicy)}),!isNaN(Le)&&this._mediaDataSource.duration!==Le&&(this._mediaDataSource.duration=Le),this._mediaInfo=null,this._demuxer=null,this._remuxer=null,this._ioctl=null,this._pendingSeekTime=null,this._pendingResolveSeekPoint=null,this._statisticsReporter=null}destroy(){this._mediaInfo=null,this._mediaDataSource=null,this._statisticsReporter&&this._disableStatisticsReporter(),this._ioctl&&(this._ioctl.destroy(),this._ioctl=null),this._demuxer&&(this._demuxer.destroy(),this._demuxer=null),this._remuxer&&(this._remuxer.destroy(),this._remuxer=null),this._emitter.removeAllListeners(),this._emitter=null}on(we,Be){this._emitter.addListener(we,Be)}off(we,Be){this._emitter.removeListener(we,Be)}start(){this._loadSegment(0),this._enableStatisticsReporter()}_loadSegment(we,Be){this._currentSegmentIndex=we;let Le=this._mediaDataSource.segments[we],je=this._ioctl=new qe(Le,this._config,we);je.onError=this._onIOException.bind(this),je.onSeeked=this._onIOSeeked.bind(this),je.onComplete=this._onIOComplete.bind(this),je.onRedirect=this._onIORedirect.bind(this),je.onRecoveredEarlyEof=this._onIORecoveredEarlyEof.bind(this),Be?this._demuxer.bindDataSource(this._ioctl):je.onDataArrival=this._onInitChunkArrival.bind(this),je.open(Be)}stop(){this._internalAbort(),this._disableStatisticsReporter()}_internalAbort(){this._ioctl&&(this._ioctl.destroy(),this._ioctl=null)}pause(){this._ioctl&&this._ioctl.isWorking()&&(this._ioctl.pause(),this._disableStatisticsReporter())}resume(){this._ioctl&&this._ioctl.isPaused()&&(this._ioctl.resume(),this._enableStatisticsReporter())}seek(we){if(this._mediaInfo==null||!this._mediaInfo.isSeekable())return;let Be=this._searchSegmentIndexContains(we);if(Be===this._currentSegmentIndex){let Le=this._mediaInfo.segments[Be];if(Le==null)this._pendingSeekTime=we;else{let je=Le.getNearestKeyframe(we);this._remuxer.seek(je.milliseconds),this._ioctl.seek(je.fileposition),this._pendingResolveSeekPoint=je.milliseconds}}else{let Le=this._mediaInfo.segments[Be];if(Le==null)this._pendingSeekTime=we,this._internalAbort(),this._remuxer.seek(),this._remuxer.insertDiscontinuity(),this._loadSegment(Be);else{let je=Le.getNearestKeyframe(we);this._internalAbort(),this._remuxer.seek(we),this._remuxer.insertDiscontinuity(),this._demuxer.resetMediaInfo(),this._demuxer.timestampBase=this._mediaDataSource.segments[Be].timestampBase,this._loadSegment(Be,je.fileposition),this._pendingResolveSeekPoint=je.milliseconds,this._reportSegmentMediaInfo(Be)}}this._enableStatisticsReporter()}_searchSegmentIndexContains(we){let Be=this._mediaDataSource.segments,Le=Be.length-1;for(let je=0;je<Be.length;je++)if(we<Be[je].timestampBase){Le=je-1;break}return Le}_onInitChunkArrival(we,Be){let Le=null,je=0;if(Be>0)this._demuxer.bindDataSource(this._ioctl),this._demuxer.timestampBase=this._mediaDataSource.segments[this._currentSegmentIndex].timestampBase,je=this._demuxer.parseChunks(we,Be);else if((Le=Yt.probe(we)).match){this._demuxer=new Yt(Le,this._config),this._remuxer||(this._remuxer=new vn(this._config));let Xe=this._mediaDataSource;Xe.duration!=null&&!isNaN(Xe.duration)&&(this._demuxer.overridedDuration=Xe.duration),typeof Xe.hasAudio=="boolean"&&(this._demuxer.overridedHasAudio=Xe.hasAudio),typeof Xe.hasVideo=="boolean"&&(this._demuxer.overridedHasVideo=Xe.hasVideo),this._demuxer.timestampBase=Xe.segments[this._currentSegmentIndex].timestampBase,this._demuxer.onError=this._onDemuxException.bind(this),this._demuxer.onMediaInfo=this._onMediaInfo.bind(this),this._demuxer.onMetaDataArrived=this._onMetaDataArrived.bind(this),this._demuxer.onScriptDataArrived=this._onScriptDataArrived.bind(this),this._remuxer.bindDataSource(this._demuxer.bindDataSource(this._ioctl)),this._remuxer.onInitSegment=this._onRemuxerInitSegmentArrival.bind(this),this._remuxer.onMediaSegment=this._onRemuxerMediaSegmentArrival.bind(this),je=this._demuxer.parseChunks(we,Be)}else Le=null,Me.e(this.TAG,"Non-FLV, Unsupported media type!"),Promise.resolve().then(()=>{this._internalAbort()}),this._emitter.emit(Ln.DEMUX_ERROR,Tt.FORMAT_UNSUPPORTED,"Non-FLV, Unsupported media type"),je=0;return je}_onMediaInfo(we){this._mediaInfo==null&&(this._mediaInfo=Object.assign({},we),this._mediaInfo.keyframesIndex=null,this._mediaInfo.segments=[],this._mediaInfo.segmentCount=this._mediaDataSource.segments.length,Object.setPrototypeOf(this._mediaInfo,Ut.prototype));let Be=Object.assign({},we);Object.setPrototypeOf(Be,Ut.prototype),this._mediaInfo.segments[this._currentSegmentIndex]=Be,this._reportSegmentMediaInfo(this._currentSegmentIndex),this._pendingSeekTime!=null&&Promise.resolve().then(()=>{let Le=this._pendingSeekTime;this._pendingSeekTime=null,this.seek(Le)})}_onMetaDataArrived(we){this._emitter.emit(Ln.METADATA_ARRIVED,we)}_onScriptDataArrived(we){this._emitter.emit(Ln.SCRIPTDATA_ARRIVED,we)}_onIOSeeked(){this._remuxer.insertDiscontinuity()}_onIOComplete(we){let Le=we+1;Le<this._mediaDataSource.segments.length?(this._internalAbort(),this._remuxer.flushStashedSamples(),this._loadSegment(Le)):(this._remuxer.flushStashedSamples(),this._emitter.emit(Ln.LOADING_COMPLETE),this._disableStatisticsReporter())}_onIORedirect(we){let Be=this._ioctl.extraData;this._mediaDataSource.segments[Be].redirectedURL=we}_onIORecoveredEarlyEof(){this._emitter.emit(Ln.RECOVERED_EARLY_EOF)}_onIOException(we,Be){Me.e(this.TAG,`IOException: type = ${we}, code = ${Be.code}, msg = ${Be.msg}`),this._emitter.emit(Ln.IO_ERROR,we,Be),this._disableStatisticsReporter()}_onDemuxException(we,Be){Me.e(this.TAG,`DemuxException: type = ${we}, info = ${Be}`),this._emitter.emit(Ln.DEMUX_ERROR,we,Be)}_onRemuxerInitSegmentArrival(we,Be){this._emitter.emit(Ln.INIT_SEGMENT,we,Be)}_onRemuxerMediaSegmentArrival(we,Be){if(this._pendingSeekTime==null&&(this._emitter.emit(Ln.MEDIA_SEGMENT,we,Be),this._pendingResolveSeekPoint!=null&&we==="video")){let Le=Be.info.syncPoints,je=this._pendingResolveSeekPoint;this._pendingResolveSeekPoint=null,se.safari&&Le.length>0&&Le[0].originalDts===je&&(je=Le[0].pts),this._emitter.emit(Ln.RECOMMEND_SEEKPOINT,je)}}_enableStatisticsReporter(){this._statisticsReporter==null&&(this._statisticsReporter=self.setInterval(this._reportStatisticsInfo.bind(this),this._config.statisticsInfoReportInterval))}_disableStatisticsReporter(){this._statisticsReporter&&(self.clearInterval(this._statisticsReporter),this._statisticsReporter=null)}_reportSegmentMediaInfo(we){let Be=this._mediaInfo.segments[we],Le=Object.assign({},Be);Le.duration=this._mediaInfo.duration,Le.segmentCount=this._mediaInfo.segmentCount,delete Le.segments,delete Le.keyframesIndex,this._emitter.emit(Ln.MEDIA_INFO,Le)}_reportStatisticsInfo(){let we={};we.url=this._ioctl.currentURL,we.hasRedirect=this._ioctl.hasRedirect,we.hasRedirect&&(we.redirectedURL=this._ioctl.currentRedirectedURL),we.speed=this._ioctl.currentSpeed,we.loaderType=this._ioctl.loaderType,we.currentSegmentIndex=this._currentSegmentIndex,we.totalSegmentCount=this._mediaDataSource.segments.length,this._emitter.emit(Ln.STATISTICS_INFO,we)}}var kr=yr,Gr=function(Ct){let we="TransmuxingWorker",Be=null,Le=$n.bind(this);He.install(),Ct.addEventListener("message",function(hr){switch(hr.data.cmd){case"init":Be=new kr(hr.data.param[0],hr.data.param[1]),Be.on(Ln.IO_ERROR,Vn.bind(this)),Be.on(Ln.DEMUX_ERROR,Pn.bind(this)),Be.on(Ln.INIT_SEGMENT,je.bind(this)),Be.on(Ln.MEDIA_SEGMENT,Xe.bind(this)),Be.on(Ln.LOADING_COMPLETE,Et.bind(this)),Be.on(Ln.RECOVERED_EARLY_EOF,xt.bind(this)),Be.on(Ln.MEDIA_INFO,Jt.bind(this)),Be.on(Ln.METADATA_ARRIVED,Vt.bind(this)),Be.on(Ln.SCRIPTDATA_ARRIVED,fn.bind(this)),Be.on(Ln.STATISTICS_INFO,dn.bind(this)),Be.on(Ln.RECOMMEND_SEEKPOINT,Jn.bind(this));break;case"destroy":Be&&(Be.destroy(),Be=null),Ct.postMessage({msg:"destroyed"});break;case"start":Be.start();break;case"stop":Be.stop();break;case"seek":Be.seek(hr.data.param);break;case"pause":Be.pause();break;case"resume":Be.resume();break;case"logging_config":{let hn=hr.data.param;ct.applyConfig(hn),hn.enableCallback===!0?ct.addLogListener(Le):ct.removeLogListener(Le);break}}});function je(hr,hn){let an={msg:Ln.INIT_SEGMENT,data:{type:hr,data:hn}};Ct.postMessage(an,[hn.data])}function Xe(hr,hn){let an={msg:Ln.MEDIA_SEGMENT,data:{type:hr,data:hn}};Ct.postMessage(an,[hn.data])}function Et(){let hr={msg:Ln.LOADING_COMPLETE};Ct.postMessage(hr)}function xt(){let hr={msg:Ln.RECOVERED_EARLY_EOF};Ct.postMessage(hr)}function Jt(hr){let hn={msg:Ln.MEDIA_INFO,data:hr};Ct.postMessage(hn)}function Vt(hr){let hn={msg:Ln.METADATA_ARRIVED,data:hr};Ct.postMessage(hn)}function fn(hr){let hn={msg:Ln.SCRIPTDATA_ARRIVED,data:hr};Ct.postMessage(hn)}function dn(hr){let hn={msg:Ln.STATISTICS_INFO,data:hr};Ct.postMessage(hn)}function Vn(hr,hn){Ct.postMessage({msg:Ln.IO_ERROR,data:{type:hr,info:hn}})}function Pn(hr,hn){Ct.postMessage({msg:Ln.DEMUX_ERROR,data:{type:hr,info:hn}})}function Jn(hr){Ct.postMessage({msg:Ln.RECOMMEND_SEEKPOINT,data:hr})}function $n(hr,hn){Ct.postMessage({msg:"logcat_callback",data:{type:hr,logcat:hn}})}};class Ma{constructor(we,Be){if(this.TAG="Transmuxer",this._emitter=new(be()),Be.enableWorker&&typeof Worker!="undefined")try{let Le=Te(82059);this._worker=Le(Gr),this._workerDestroying=!1,this._worker.addEventListener("message",this._onWorkerMessage.bind(this)),this._worker.postMessage({cmd:"init",param:[we,Be]}),this.e={onLoggingConfigChanged:this._onLoggingConfigChanged.bind(this)},ct.registerListener(this.e.onLoggingConfigChanged),this._worker.postMessage({cmd:"logging_config",param:ct.getConfig()})}catch(Le){Me.e(this.TAG,"Error while initialize transmuxing worker, fallback to inline transmuxing"),this._worker=null,this._controller=new kr(we,Be)}else this._controller=new kr(we,Be);if(this._controller){let Le=this._controller;Le.on(Ln.IO_ERROR,this._onIOError.bind(this)),Le.on(Ln.DEMUX_ERROR,this._onDemuxError.bind(this)),Le.on(Ln.INIT_SEGMENT,this._onInitSegment.bind(this)),Le.on(Ln.MEDIA_SEGMENT,this._onMediaSegment.bind(this)),Le.on(Ln.LOADING_COMPLETE,this._onLoadingComplete.bind(this)),Le.on(Ln.RECOVERED_EARLY_EOF,this._onRecoveredEarlyEof.bind(this)),Le.on(Ln.MEDIA_INFO,this._onMediaInfo.bind(this)),Le.on(Ln.METADATA_ARRIVED,this._onMetaDataArrived.bind(this)),Le.on(Ln.SCRIPTDATA_ARRIVED,this._onScriptDataArrived.bind(this)),Le.on(Ln.STATISTICS_INFO,this._onStatisticsInfo.bind(this)),Le.on(Ln.RECOMMEND_SEEKPOINT,this._onRecommendSeekpoint.bind(this))}}destroy(){this._worker?this._workerDestroying||(this._workerDestroying=!0,this._worker.postMessage({cmd:"destroy"}),ct.removeListener(this.e.onLoggingConfigChanged),this.e=null):(this._controller.destroy(),this._controller=null),this._emitter.removeAllListeners(),this._emitter=null}on(we,Be){this._emitter.addListener(we,Be)}off(we,Be){this._emitter.removeListener(we,Be)}hasWorker(){return this._worker!=null}open(){this._worker?this._worker.postMessage({cmd:"start"}):this._controller.start()}close(){this._worker?this._worker.postMessage({cmd:"stop"}):this._controller.stop()}seek(we){this._worker?this._worker.postMessage({cmd:"seek",param:we}):this._controller.seek(we)}pause(){this._worker?this._worker.postMessage({cmd:"pause"}):this._controller.pause()}resume(){this._worker?this._worker.postMessage({cmd:"resume"}):this._controller.resume()}_onInitSegment(we,Be){Promise.resolve().then(()=>{this._emitter.emit(Ln.INIT_SEGMENT,we,Be)})}_onMediaSegment(we,Be){Promise.resolve().then(()=>{this._emitter.emit(Ln.MEDIA_SEGMENT,we,Be)})}_onLoadingComplete(){Promise.resolve().then(()=>{this._emitter.emit(Ln.LOADING_COMPLETE)})}_onRecoveredEarlyEof(){Promise.resolve().then(()=>{this._emitter.emit(Ln.RECOVERED_EARLY_EOF)})}_onMediaInfo(we){Promise.resolve().then(()=>{this._emitter.emit(Ln.MEDIA_INFO,we)})}_onMetaDataArrived(we){Promise.resolve().then(()=>{this._emitter.emit(Ln.METADATA_ARRIVED,we)})}_onScriptDataArrived(we){Promise.resolve().then(()=>{this._emitter.emit(Ln.SCRIPTDATA_ARRIVED,we)})}_onStatisticsInfo(we){Promise.resolve().then(()=>{this._emitter.emit(Ln.STATISTICS_INFO,we)})}_onIOError(we,Be){Promise.resolve().then(()=>{this._emitter.emit(Ln.IO_ERROR,we,Be)})}_onDemuxError(we,Be){Promise.resolve().then(()=>{this._emitter.emit(Ln.DEMUX_ERROR,we,Be)})}_onRecommendSeekpoint(we){Promise.resolve().then(()=>{this._emitter.emit(Ln.RECOMMEND_SEEKPOINT,we)})}_onLoggingConfigChanged(we){this._worker&&this._worker.postMessage({cmd:"logging_config",param:we})}_onWorkerMessage(we){let Be=we.data,Le=Be.data;if(Be.msg==="destroyed"||this._workerDestroying){this._workerDestroying=!1,this._worker.terminate(),this._worker=null;return}switch(Be.msg){case Ln.INIT_SEGMENT:case Ln.MEDIA_SEGMENT:this._emitter.emit(Be.msg,Le.type,Le.data);break;case Ln.LOADING_COMPLETE:case Ln.RECOVERED_EARLY_EOF:this._emitter.emit(Be.msg);break;case Ln.MEDIA_INFO:Object.setPrototypeOf(Le,Ut.prototype),this._emitter.emit(Be.msg,Le);break;case Ln.METADATA_ARRIVED:case Ln.SCRIPTDATA_ARRIVED:case Ln.STATISTICS_INFO:this._emitter.emit(Be.msg,Le);break;case Ln.IO_ERROR:case Ln.DEMUX_ERROR:this._emitter.emit(Be.msg,Le.type,Le.info);break;case Ln.RECOMMEND_SEEKPOINT:this._emitter.emit(Be.msg,Le);break;case"logcat_callback":Me.emitter.emit("log",Le.type,Le.logcat);break;default:break}}}var Ja=Ma,Da={ERROR:"error",SOURCE_OPEN:"source_open",UPDATE_END:"update_end",BUFFER_FULL:"buffer_full"};class Di{constructor(we){this.TAG="MSEController",this._config=we,this._emitter=new(be()),this._config.isLive&&this._config.autoCleanupSourceBuffer==null&&(this._config.autoCleanupSourceBuffer=!0),this.e={onSourceOpen:this._onSourceOpen.bind(this),onSourceEnded:this._onSourceEnded.bind(this),onSourceClose:this._onSourceClose.bind(this),onSourceBufferError:this._onSourceBufferError.bind(this),onSourceBufferUpdateEnd:this._onSourceBufferUpdateEnd.bind(this)},this._mediaSource=null,this._mediaSourceObjectURL=null,this._mediaElement=null,this._isBufferFull=!1,this._hasPendingEos=!1,this._requireSetMediaDuration=!1,this._pendingMediaDuration=0,this._pendingSourceBufferInit=[],this._mimeTypes={video:null,audio:null},this._sourceBuffers={video:null,audio:null},this._lastInitSegments={video:null,audio:null},this._pendingSegments={video:[],audio:[]},this._pendingRemoveRanges={video:[],audio:[]},this._idrList=new nr}destroy(){(this._mediaElement||this._mediaSource)&&this.detachMediaElement(),this.e=null,this._emitter.removeAllListeners(),this._emitter=null}on(we,Be){this._emitter.addListener(we,Be)}off(we,Be){this._emitter.removeListener(we,Be)}attachMediaElement(we){if(this._mediaSource)throw new xe("MediaSource has been attached to an HTMLMediaElement!");let Be=this._mediaSource=new window.MediaSource;Be.addEventListener("sourceopen",this.e.onSourceOpen),Be.addEventListener("sourceended",this.e.onSourceEnded),Be.addEventListener("sourceclose",this.e.onSourceClose),this._mediaElement=we,this._mediaSourceObjectURL=window.URL.createObjectURL(this._mediaSource),we.src=this._mediaSourceObjectURL}detachMediaElement(){if(this._mediaSource){let we=this._mediaSource;for(let Be in this._sourceBuffers){let Le=this._pendingSegments[Be];Le.splice(0,Le.length),this._pendingSegments[Be]=null,this._pendingRemoveRanges[Be]=null,this._lastInitSegments[Be]=null;let je=this._sourceBuffers[Be];if(je){if(we.readyState!=="closed"){try{we.removeSourceBuffer(je)}catch(Xe){Me.e(this.TAG,Xe.message)}je.removeEventListener("error",this.e.onSourceBufferError),je.removeEventListener("updateend",this.e.onSourceBufferUpdateEnd)}this._mimeTypes[Be]=null,this._sourceBuffers[Be]=null}}if(we.readyState==="open")try{we.endOfStream()}catch(Be){Me.e(this.TAG,Be.message)}we.removeEventListener("sourceopen",this.e.onSourceOpen),we.removeEventListener("sourceended",this.e.onSourceEnded),we.removeEventListener("sourceclose",this.e.onSourceClose),this._pendingSourceBufferInit=[],this._isBufferFull=!1,this._idrList.clear(),this._mediaSource=null}this._mediaElement&&(this._mediaElement.src="",this._mediaElement.removeAttribute("src"),this._mediaElement=null),this._mediaSourceObjectURL&&(window.URL.revokeObjectURL(this._mediaSourceObjectURL),this._mediaSourceObjectURL=null)}appendInitSegment(we,Be){if(!this._mediaSource||this._mediaSource.readyState!=="open"){this._pendingSourceBufferInit.push(we),this._pendingSegments[we.type].push(we);return}let Le=we,je=`${Le.container}`;Le.codec&&Le.codec.length>0&&(je+=`;codecs=${Le.codec}`);let Xe=!1;if(Me.v(this.TAG,"Received Initialization Segment, mimeType: "+je),this._lastInitSegments[Le.type]=Le,je!==this._mimeTypes[Le.type]){if(this._mimeTypes[Le.type])Me.v(this.TAG,`Notice: ${Le.type} mimeType changed, origin: ${this._mimeTypes[Le.type]}, target: ${je}`);else{Xe=!0;try{let Et=this._sourceBuffers[Le.type]=this._mediaSource.addSourceBuffer(je);Et.addEventListener("error",this.e.onSourceBufferError),Et.addEventListener("updateend",this.e.onSourceBufferUpdateEnd)}catch(Et){Me.e(this.TAG,Et.message),this._emitter.emit(Da.ERROR,{code:Et.code,msg:Et.message});return}}this._mimeTypes[Le.type]=je}Be||this._pendingSegments[Le.type].push(Le),Xe||this._sourceBuffers[Le.type]&&!this._sourceBuffers[Le.type].updating&&this._doAppendSegments(),se.safari&&Le.container==="audio/mpeg"&&Le.mediaDuration>0&&(this._requireSetMediaDuration=!0,this._pendingMediaDuration=Le.mediaDuration/1e3,this._updateMediaSourceDuration())}appendMediaSegment(we){let Be=we;this._pendingSegments[Be.type].push(Be),this._config.autoCleanupSourceBuffer&&this._needCleanupSourceBuffer()&&this._doCleanupSourceBuffer();let Le=this._sourceBuffers[Be.type];Le&&!Le.updating&&!this._hasPendingRemoveRanges()&&this._doAppendSegments()}seek(we){for(let Be in this._sourceBuffers){if(!this._sourceBuffers[Be])continue;let Le=this._sourceBuffers[Be];if(this._mediaSource.readyState==="open")try{Le.abort()}catch(Xe){Me.e(this.TAG,Xe.message)}this._idrList.clear();let je=this._pendingSegments[Be];if(je.splice(0,je.length),this._mediaSource.readyState!=="closed"){for(let Xe=0;Xe<Le.buffered.length;Xe++){let Et=Le.buffered.start(Xe),xt=Le.buffered.end(Xe);this._pendingRemoveRanges[Be].push({start:Et,end:xt})}if(Le.updating||this._doRemoveRanges(),se.safari){let Xe=this._lastInitSegments[Be];Xe&&(this._pendingSegments[Be].push(Xe),Le.updating||this._doAppendSegments())}}}}endOfStream(){let we=this._mediaSource,Be=this._sourceBuffers;if(!we||we.readyState!=="open"){we&&we.readyState==="closed"&&this._hasPendingSegments()&&(this._hasPendingEos=!0);return}Be.video&&Be.video.updating||Be.audio&&Be.audio.updating?this._hasPendingEos=!0:(this._hasPendingEos=!1,we.endOfStream())}getNearestKeyframe(we){return this._idrList.getLastSyncPointBeforeDts(we)}_needCleanupSourceBuffer(){if(!this._config.autoCleanupSourceBuffer)return!1;let we=this._mediaElement.currentTime;for(let Be in this._sourceBuffers){let Le=this._sourceBuffers[Be];if(Le){let je=Le.buffered;if(je.length>=1&&we-je.start(0)>=this._config.autoCleanupMaxBackwardDuration)return!0}}return!1}_doCleanupSourceBuffer(){let we=this._mediaElement.currentTime;for(let Be in this._sourceBuffers){let Le=this._sourceBuffers[Be];if(Le){let je=Le.buffered,Xe=!1;for(let Et=0;Et<je.length;Et++){let xt=je.start(Et),Jt=je.end(Et);if(xt<=we&&we<Jt+3){if(we-xt>=this._config.autoCleanupMaxBackwardDuration){Xe=!0;let Vt=we-this._config.autoCleanupMinBackwardDuration;this._pendingRemoveRanges[Be].push({start:xt,end:Vt})}}else Jt<we&&(Xe=!0,this._pendingRemoveRanges[Be].push({start:xt,end:Jt}))}Xe&&!Le.updating&&this._doRemoveRanges()}}}_updateMediaSourceDuration(){let we=this._sourceBuffers;if(this._mediaElement.readyState===0||this._mediaSource.readyState!=="open"||we.video&&we.video.updating||we.audio&&we.audio.updating)return;let Be=this._mediaSource.duration,Le=this._pendingMediaDuration;Le>0&&(isNaN(Be)||Le>Be)&&(Me.v(this.TAG,`Update MediaSource duration from ${Be} to ${Le}`),this._mediaSource.duration=Le),this._requireSetMediaDuration=!1,this._pendingMediaDuration=0}_doRemoveRanges(){for(let we in this._pendingRemoveRanges){if(!this._sourceBuffers[we]||this._sourceBuffers[we].updating)continue;let Be=this._sourceBuffers[we],Le=this._pendingRemoveRanges[we];for(;Le.length&&!Be.updating;){let je=Le.shift();Be.remove(je.start,je.end)}}}_doAppendSegments(){let we=this._pendingSegments;for(let Be in we)if(!(!this._sourceBuffers[Be]||this._sourceBuffers[Be].updating)&&we[Be].length>0){let Le=we[Be].shift();if(Le.timestampOffset){let je=this._sourceBuffers[Be].timestampOffset,Xe=Le.timestampOffset/1e3;Math.abs(je-Xe)>.1&&(Me.v(this.TAG,`Update MPEG audio timestampOffset from ${je} to ${Xe}`),this._sourceBuffers[Be].timestampOffset=Xe),delete Le.timestampOffset}if(!Le.data||Le.data.byteLength===0)continue;try{this._sourceBuffers[Be].appendBuffer(Le.data),this._isBufferFull=!1,Be==="video"&&Le.hasOwnProperty("info")&&this._idrList.appendArray(Le.info.syncPoints)}catch(je){this._pendingSegments[Be].unshift(Le),je.code===22?(this._isBufferFull||this._emitter.emit(Da.BUFFER_FULL),this._isBufferFull=!0):(Me.e(this.TAG,je.message),this._emitter.emit(Da.ERROR,{code:je.code,msg:je.message}))}}}_onSourceOpen(){if(Me.v(this.TAG,"MediaSource onSourceOpen"),this._mediaSource.removeEventListener("sourceopen",this.e.onSourceOpen),this._pendingSourceBufferInit.length>0){let we=this._pendingSourceBufferInit;for(;we.length;){let Be=we.shift();this.appendInitSegment(Be,!0)}}this._hasPendingSegments()&&this._doAppendSegments(),this._emitter.emit(Da.SOURCE_OPEN)}_onSourceEnded(){Me.v(this.TAG,"MediaSource onSourceEnded")}_onSourceClose(){Me.v(this.TAG,"MediaSource onSourceClose"),this._mediaSource&&this.e!=null&&(this._mediaSource.removeEventListener("sourceopen",this.e.onSourceOpen),this._mediaSource.removeEventListener("sourceended",this.e.onSourceEnded),this._mediaSource.removeEventListener("sourceclose",this.e.onSourceClose))}_hasPendingSegments(){let we=this._pendingSegments;return we.video.length>0||we.audio.length>0}_hasPendingRemoveRanges(){let we=this._pendingRemoveRanges;return we.video.length>0||we.audio.length>0}_onSourceBufferUpdateEnd(){this._requireSetMediaDuration?this._updateMediaSourceDuration():this._hasPendingRemoveRanges()?this._doRemoveRanges():this._hasPendingSegments()?this._doAppendSegments():this._hasPendingEos&&this.endOfStream(),this._emitter.emit(Da.UPDATE_END)}_onSourceBufferError(we){Me.e(this.TAG,`SourceBuffer Error: ${we}`)}}var _a=Di;const Vr={NETWORK_ERROR:"NetworkError",MEDIA_ERROR:"MediaError",OTHER_ERROR:"OtherError"},Ya={NETWORK_EXCEPTION:ce.EXCEPTION,NETWORK_STATUS_CODE_INVALID:ce.HTTP_STATUS_CODE_INVALID,NETWORK_TIMEOUT:ce.CONNECTING_TIMEOUT,NETWORK_UNRECOVERABLE_EARLY_EOF:ce.UNRECOVERABLE_EARLY_EOF,MEDIA_MSE_ERROR:"MediaMSEError",MEDIA_FORMAT_ERROR:Tt.FORMAT_ERROR,MEDIA_FORMAT_UNSUPPORTED:Tt.FORMAT_UNSUPPORTED,MEDIA_CODEC_UNSUPPORTED:Tt.CODEC_UNSUPPORTED};class ui{constructor(we,Be){if(this.TAG="FlvPlayer",this._type="FlvPlayer",this._emitter=new(be()),this._config=at(),typeof Be=="object"&&Object.assign(this._config,Be),we.type.toLowerCase()!=="flv")throw new pe("FlvPlayer requires an flv MediaDataSource input!");we.isLive===!0&&(this._config.isLive=!0),this.e={onvLoadedMetadata:this._onvLoadedMetadata.bind(this),onvSeeking:this._onvSeeking.bind(this),onvCanPlay:this._onvCanPlay.bind(this),onvStalled:this._onvStalled.bind(this),onvProgress:this._onvProgress.bind(this)},self.performance&&self.performance.now?this._now=self.performance.now.bind(self.performance):this._now=Date.now,this._pendingSeekTime=null,this._requestSetTime=!1,this._seekpointRecord=null,this._progressChecker=null,this._mediaDataSource=we,this._mediaElement=null,this._msectl=null,this._transmuxer=null,this._mseSourceOpened=!1,this._hasPendingLoad=!1,this._receivedCanPlay=!1,this._mediaInfo=null,this._statisticsInfo=null;let Le=se.chrome&&(se.version.major<50||se.version.major===50&&se.version.build<2661);this._alwaysSeekKeyframe=!!(Le||se.msedge||se.msie),this._alwaysSeekKeyframe&&(this._config.accurateSeek=!1)}destroy(){this._progressChecker!=null&&(window.clearInterval(this._progressChecker),this._progressChecker=null),this._transmuxer&&this.unload(),this._mediaElement&&this.detachMediaElement(),this.e=null,this._mediaDataSource=null,this._emitter.removeAllListeners(),this._emitter=null}on(we,Be){we===yt.MEDIA_INFO?this._mediaInfo!=null&&Promise.resolve().then(()=>{this._emitter.emit(yt.MEDIA_INFO,this.mediaInfo)}):we===yt.STATISTICS_INFO&&this._statisticsInfo!=null&&Promise.resolve().then(()=>{this._emitter.emit(yt.STATISTICS_INFO,this.statisticsInfo)}),this._emitter.addListener(we,Be)}off(we,Be){this._emitter.removeListener(we,Be)}attachMediaElement(we){if(this._mediaElement=we,we.addEventListener("loadedmetadata",this.e.onvLoadedMetadata),we.addEventListener("seeking",this.e.onvSeeking),we.addEventListener("canplay",this.e.onvCanPlay),we.addEventListener("stalled",this.e.onvStalled),we.addEventListener("progress",this.e.onvProgress),this._msectl=new _a(this._config),this._msectl.on(Da.UPDATE_END,this._onmseUpdateEnd.bind(this)),this._msectl.on(Da.BUFFER_FULL,this._onmseBufferFull.bind(this)),this._msectl.on(Da.SOURCE_OPEN,()=>{this._mseSourceOpened=!0,this._hasPendingLoad&&(this._hasPendingLoad=!1,this.load())}),this._msectl.on(Da.ERROR,Be=>{this._emitter.emit(yt.ERROR,Vr.MEDIA_ERROR,Ya.MEDIA_MSE_ERROR,Be)}),this._msectl.attachMediaElement(we),this._pendingSeekTime!=null)try{we.currentTime=this._pendingSeekTime,this._pendingSeekTime=null}catch(Be){}}detachMediaElement(){this._mediaElement&&(this._msectl.detachMediaElement(),this._mediaElement.removeEventListener("loadedmetadata",this.e.onvLoadedMetadata),this._mediaElement.removeEventListener("seeking",this.e.onvSeeking),this._mediaElement.removeEventListener("canplay",this.e.onvCanPlay),this._mediaElement.removeEventListener("stalled",this.e.onvStalled),this._mediaElement.removeEventListener("progress",this.e.onvProgress),this._mediaElement=null),this._msectl&&(this._msectl.destroy(),this._msectl=null)}load(){if(!this._mediaElement)throw new xe("HTMLMediaElement must be attached before load()!");if(this._transmuxer)throw new xe("FlvPlayer.load() has been called, please call unload() first!");if(!this._hasPendingLoad){if(this._config.deferLoadAfterSourceOpen&&this._mseSourceOpened===!1){this._hasPendingLoad=!0;return}this._mediaElement.readyState>0&&(this._requestSetTime=!0,this._mediaElement.currentTime=0),this._transmuxer=new Ja(this._mediaDataSource,this._config),this._transmuxer.on(Ln.INIT_SEGMENT,(we,Be)=>{this._msectl.appendInitSegment(Be)}),this._transmuxer.on(Ln.MEDIA_SEGMENT,(we,Be)=>{if(this._msectl.appendMediaSegment(Be),this._config.lazyLoad&&!this._config.isLive){let Le=this._mediaElement.currentTime;Be.info.endDts>=(Le+this._config.lazyLoadMaxDuration)*1e3&&this._progressChecker==null&&(Me.v(this.TAG,"Maximum buffering duration exceeded, suspend transmuxing task"),this._suspendTransmuxer())}}),this._transmuxer.on(Ln.LOADING_COMPLETE,()=>{this._msectl.endOfStream(),this._emitter.emit(yt.LOADING_COMPLETE)}),this._transmuxer.on(Ln.RECOVERED_EARLY_EOF,()=>{this._emitter.emit(yt.RECOVERED_EARLY_EOF)}),this._transmuxer.on(Ln.IO_ERROR,(we,Be)=>{this._emitter.emit(yt.ERROR,Vr.NETWORK_ERROR,we,Be)}),this._transmuxer.on(Ln.DEMUX_ERROR,(we,Be)=>{this._emitter.emit(yt.ERROR,Vr.MEDIA_ERROR,we,{code:-1,msg:Be})}),this._transmuxer.on(Ln.MEDIA_INFO,we=>{this._mediaInfo=we,this._emitter.emit(yt.MEDIA_INFO,Object.assign({},we))}),this._transmuxer.on(Ln.METADATA_ARRIVED,we=>{this._emitter.emit(yt.METADATA_ARRIVED,we)}),this._transmuxer.on(Ln.SCRIPTDATA_ARRIVED,we=>{this._emitter.emit(yt.SCRIPTDATA_ARRIVED,we)}),this._transmuxer.on(Ln.STATISTICS_INFO,we=>{this._statisticsInfo=this._fillStatisticsInfo(we),this._emitter.emit(yt.STATISTICS_INFO,Object.assign({},this._statisticsInfo))}),this._transmuxer.on(Ln.RECOMMEND_SEEKPOINT,we=>{this._mediaElement&&!this._config.accurateSeek&&(this._requestSetTime=!0,this._mediaElement.currentTime=we/1e3)}),this._transmuxer.open()}}unload(){this._mediaElement&&this._mediaElement.pause(),this._msectl&&this._msectl.seek(0),this._transmuxer&&(this._transmuxer.close(),this._transmuxer.destroy(),this._transmuxer=null)}play(){return this._mediaElement.play()}pause(){this._mediaElement.pause()}get type(){return this._type}get buffered(){return this._mediaElement.buffered}get duration(){return this._mediaElement.duration}get volume(){return this._mediaElement.volume}set volume(we){this._mediaElement.volume=we}get muted(){return this._mediaElement.muted}set muted(we){this._mediaElement.muted=we}get currentTime(){return this._mediaElement?this._mediaElement.currentTime:0}set currentTime(we){this._mediaElement?this._internalSeek(we):this._pendingSeekTime=we}get mediaInfo(){return Object.assign({},this._mediaInfo)}get statisticsInfo(){return this._statisticsInfo==null&&(this._statisticsInfo={}),this._statisticsInfo=this._fillStatisticsInfo(this._statisticsInfo),Object.assign({},this._statisticsInfo)}_fillStatisticsInfo(we){if(we.playerType=this._type,!(this._mediaElement instanceof HTMLVideoElement))return we;let Be=!0,Le=0,je=0;if(this._mediaElement.getVideoPlaybackQuality){let Xe=this._mediaElement.getVideoPlaybackQuality();Le=Xe.totalVideoFrames,je=Xe.droppedVideoFrames}else this._mediaElement.webkitDecodedFrameCount!=null?(Le=this._mediaElement.webkitDecodedFrameCount,je=this._mediaElement.webkitDroppedFrameCount):Be=!1;return Be&&(we.decodedFrames=Le,we.droppedFrames=je),we}_onmseUpdateEnd(){if(!this._config.lazyLoad||this._config.isLive)return;let we=this._mediaElement.buffered,Be=this._mediaElement.currentTime,Le=0,je=0;for(let Xe=0;Xe<we.length;Xe++){let Et=we.start(Xe),xt=we.end(Xe);if(Et<=Be&&Be<xt){Le=Et,je=xt;break}}je>=Be+this._config.lazyLoadMaxDuration&&this._progressChecker==null&&(Me.v(this.TAG,"Maximum buffering duration exceeded, suspend transmuxing task"),this._suspendTransmuxer())}_onmseBufferFull(){Me.v(this.TAG,"MSE SourceBuffer is full, suspend transmuxing task"),this._progressChecker==null&&this._suspendTransmuxer()}_suspendTransmuxer(){this._transmuxer&&(this._transmuxer.pause(),this._progressChecker==null&&(this._progressChecker=window.setInterval(this._checkProgressAndResume.bind(this),1e3)))}_checkProgressAndResume(){let we=this._mediaElement.currentTime,Be=this._mediaElement.buffered,Le=!1;for(let je=0;je<Be.length;je++){let Xe=Be.start(je),Et=Be.end(je);if(we>=Xe&&we<Et){we>=Et-this._config.lazyLoadRecoverDuration&&(Le=!0);break}}Le&&(window.clearInterval(this._progressChecker),this._progressChecker=null,Le&&(Me.v(this.TAG,"Continue loading from paused position"),this._transmuxer.resume()))}_isTimepointBuffered(we){let Be=this._mediaElement.buffered;for(let Le=0;Le<Be.length;Le++){let je=Be.start(Le),Xe=Be.end(Le);if(we>=je&&we<Xe)return!0}return!1}_internalSeek(we){let Be=this._isTimepointBuffered(we),Le=!1,je=0;if(we<1&&this._mediaElement.buffered.length>0){let Xe=this._mediaElement.buffered.start(0);(Xe<1&&we<Xe||se.safari)&&(Le=!0,je=se.safari?.1:Xe)}if(Le)this._requestSetTime=!0,this._mediaElement.currentTime=je;else if(Be){if(!this._alwaysSeekKeyframe)this._requestSetTime=!0,this._mediaElement.currentTime=we;else{let Xe=this._msectl.getNearestKeyframe(Math.floor(we*1e3));this._requestSetTime=!0,Xe!=null?this._mediaElement.currentTime=Xe.dts/1e3:this._mediaElement.currentTime=we}this._progressChecker!=null&&this._checkProgressAndResume()}else this._progressChecker!=null&&(window.clearInterval(this._progressChecker),this._progressChecker=null),this._msectl.seek(we),this._transmuxer.seek(Math.floor(we*1e3)),this._config.accurateSeek&&(this._requestSetTime=!0,this._mediaElement.currentTime=we)}_checkAndApplyUnbufferedSeekpoint(){if(this._seekpointRecord)if(this._seekpointRecord.recordTime<=this._now()-100){let we=this._mediaElement.currentTime;this._seekpointRecord=null,this._isTimepointBuffered(we)||(this._progressChecker!=null&&(window.clearTimeout(this._progressChecker),this._progressChecker=null),this._msectl.seek(we),this._transmuxer.seek(Math.floor(we*1e3)),this._config.accurateSeek&&(this._requestSetTime=!0,this._mediaElement.currentTime=we))}else window.setTimeout(this._checkAndApplyUnbufferedSeekpoint.bind(this),50)}_checkAndResumeStuckPlayback(we){let Be=this._mediaElement;if(we||!this._receivedCanPlay||Be.readyState<2){let Le=Be.buffered;Le.length>0&&Be.currentTime<Le.start(0)&&(Me.w(this.TAG,`Playback seems stuck at ${Be.currentTime}, seek to ${Le.start(0)}`),this._requestSetTime=!0,this._mediaElement.currentTime=Le.start(0),this._mediaElement.removeEventListener("progress",this.e.onvProgress))}else this._mediaElement.removeEventListener("progress",this.e.onvProgress)}_onvLoadedMetadata(we){this._pendingSeekTime!=null&&(this._mediaElement.currentTime=this._pendingSeekTime,this._pendingSeekTime=null)}_onvSeeking(we){let Be=this._mediaElement.currentTime,Le=this._mediaElement.buffered;if(this._requestSetTime){this._requestSetTime=!1;return}if(Be<1&&Le.length>0){let je=Le.start(0);if(je<1&&Be<je||se.safari){this._requestSetTime=!0,this._mediaElement.currentTime=se.safari?.1:je;return}}if(this._isTimepointBuffered(Be)){if(this._alwaysSeekKeyframe){let je=this._msectl.getNearestKeyframe(Math.floor(Be*1e3));je!=null&&(this._requestSetTime=!0,this._mediaElement.currentTime=je.dts/1e3)}this._progressChecker!=null&&this._checkProgressAndResume();return}this._seekpointRecord={seekPoint:Be,recordTime:this._now()},window.setTimeout(this._checkAndApplyUnbufferedSeekpoint.bind(this),50)}_onvCanPlay(we){this._receivedCanPlay=!0,this._mediaElement.removeEventListener("canplay",this.e.onvCanPlay)}_onvStalled(we){this._checkAndResumeStuckPlayback(!0)}_onvProgress(we){this._checkAndResumeStuckPlayback()}}var mr=ui;class Er{constructor(we,Be){if(this.TAG="NativePlayer",this._type="NativePlayer",this._emitter=new(be()),this._config=at(),typeof Be=="object"&&Object.assign(this._config,Be),we.type.toLowerCase()==="flv")throw new pe("NativePlayer does't support flv MediaDataSource input!");if(we.hasOwnProperty("segments"))throw new pe(`NativePlayer(${we.type}) doesn't support multipart playback!`);this.e={onvLoadedMetadata:this._onvLoadedMetadata.bind(this)},this._pendingSeekTime=null,this._statisticsReporter=null,this._mediaDataSource=we,this._mediaElement=null}destroy(){this._mediaElement&&(this.unload(),this.detachMediaElement()),this.e=null,this._mediaDataSource=null,this._emitter.removeAllListeners(),this._emitter=null}on(we,Be){we===yt.MEDIA_INFO?this._mediaElement!=null&&this._mediaElement.readyState!==0&&Promise.resolve().then(()=>{this._emitter.emit(yt.MEDIA_INFO,this.mediaInfo)}):we===yt.STATISTICS_INFO&&this._mediaElement!=null&&this._mediaElement.readyState!==0&&Promise.resolve().then(()=>{this._emitter.emit(yt.STATISTICS_INFO,this.statisticsInfo)}),this._emitter.addListener(we,Be)}off(we,Be){this._emitter.removeListener(we,Be)}attachMediaElement(we){if(this._mediaElement=we,we.addEventListener("loadedmetadata",this.e.onvLoadedMetadata),this._pendingSeekTime!=null)try{we.currentTime=this._pendingSeekTime,this._pendingSeekTime=null}catch(Be){}}detachMediaElement(){this._mediaElement&&(this._mediaElement.src="",this._mediaElement.removeAttribute("src"),this._mediaElement.removeEventListener("loadedmetadata",this.e.onvLoadedMetadata),this._mediaElement=null),this._statisticsReporter!=null&&(window.clearInterval(this._statisticsReporter),this._statisticsReporter=null)}load(){if(!this._mediaElement)throw new xe("HTMLMediaElement must be attached before load()!");this._mediaElement.src=this._mediaDataSource.url,this._mediaElement.readyState>0&&(this._mediaElement.currentTime=0),this._mediaElement.preload="auto",this._mediaElement.load(),this._statisticsReporter=window.setInterval(this._reportStatisticsInfo.bind(this),this._config.statisticsInfoReportInterval)}unload(){this._mediaElement&&(this._mediaElement.src="",this._mediaElement.removeAttribute("src")),this._statisticsReporter!=null&&(window.clearInterval(this._statisticsReporter),this._statisticsReporter=null)}play(){return this._mediaElement.play()}pause(){this._mediaElement.pause()}get type(){return this._type}get buffered(){return this._mediaElement.buffered}get duration(){return this._mediaElement.duration}get volume(){return this._mediaElement.volume}set volume(we){this._mediaElement.volume=we}get muted(){return this._mediaElement.muted}set muted(we){this._mediaElement.muted=we}get currentTime(){return this._mediaElement?this._mediaElement.currentTime:0}set currentTime(we){this._mediaElement?this._mediaElement.currentTime=we:this._pendingSeekTime=we}get mediaInfo(){let Be={mimeType:(this._mediaElement instanceof HTMLAudioElement?"audio/":"video/")+this._mediaDataSource.type};return this._mediaElement&&(Be.duration=Math.floor(this._mediaElement.duration*1e3),this._mediaElement instanceof HTMLVideoElement&&(Be.width=this._mediaElement.videoWidth,Be.height=this._mediaElement.videoHeight)),Be}get statisticsInfo(){let we={playerType:this._type,url:this._mediaDataSource.url};if(!(this._mediaElement instanceof HTMLVideoElement))return we;let Be=!0,Le=0,je=0;if(this._mediaElement.getVideoPlaybackQuality){let Xe=this._mediaElement.getVideoPlaybackQuality();Le=Xe.totalVideoFrames,je=Xe.droppedVideoFrames}else this._mediaElement.webkitDecodedFrameCount!=null?(Le=this._mediaElement.webkitDecodedFrameCount,je=this._mediaElement.webkitDroppedFrameCount):Be=!1;return Be&&(we.decodedFrames=Le,we.droppedFrames=je),we}_onvLoadedMetadata(we){this._pendingSeekTime!=null&&(this._mediaElement.currentTime=this._pendingSeekTime,this._pendingSeekTime=null),this._emitter.emit(yt.MEDIA_INFO,this.mediaInfo)}_reportStatisticsInfo(){this._emitter.emit(yt.STATISTICS_INFO,this.statisticsInfo)}}var ba=Er;He.install();function Fn(Ct,we){let Be=Ct;if(Be==null||typeof Be!="object")throw new pe("MediaDataSource must be an javascript object!");if(!Be.hasOwnProperty("type"))throw new pe("MediaDataSource must has type field to indicate video file type!");switch(Be.type){case"flv":return new mr(Be,we);default:return new ba(Be,we)}}function gr(){return nt.supportMSEH264Playback()}function br(){return nt.getFeatureList()}let _r={};_r.createPlayer=Fn,_r.isSupported=gr,_r.getFeatureList=br,_r.BaseLoader=te,_r.LoaderStatus=Se,_r.LoaderErrors=ce,_r.Events=yt,_r.ErrorTypes=Vr,_r.ErrorDetails=Ya,_r.FlvPlayer=mr,_r.NativePlayer=ba,_r.LoggingControl=ct,Object.defineProperty(_r,"version",{enumerable:!0,get:function(){return"__VERSION__"}});var ha=_r},49529:function(At,It,Te){"use strict";var Oe,He=Object.defineProperty,Ne=Ct=>{throw TypeError(Ct)},be=Math.pow,_e=(Ct,we,Be)=>we in Ct?He(Ct,we,{enumerable:!0,configurable:!0,writable:!0,value:Be}):Ct[we]=Be,Me=(Ct,we,Be)=>_e(Ct,typeof we!="symbol"?we+"":we,Be),ve=(Ct,we,Be)=>we.has(Ct)||Ne("Cannot "+Be),Ee=(Ct,we,Be)=>(ve(Ct,we,"read from private field"),Be?Be.call(Ct):we.get(Ct)),Pe=(Ct,we,Be)=>we.has(Ct)?Ne("Cannot add the same private member more than once"):we instanceof WeakSet?we.add(Ct):we.set(Ct,Be),xe=(Ct,we,Be,Le)=>(ve(Ct,we,"write to private field"),Le?Le.call(Ct,Be):we.set(Ct,Be),Be),pe=(Ct,we,Be)=>(ve(Ct,we,"access private method"),Be),Ae,Se,ce;Oe={value:!0};var te=Te(34634),ne=Te(34402);const le=" ".repeat(2),se=" ".repeat(4);function fe(){return he(this)}function he(Ct,we={}){const{maxRows:Be=15,maxColumns:Le=10,maxNumSize:je=8,padMinus:Xe="auto"}=we;return`${Ct.constructor.name} {
|
|
|
${le}[
|
|
|
${se}${ie(Ct,Be,Le,je,Xe)}
|
|
|
${le}]
|
|
|
${le}rows: ${Ct.rows}
|
|
|
${le}columns: ${Ct.columns}
|
|
|
}`}function ie(Ct,we,Be,Le,je){const{rows:Xe,columns:Et}=Ct,xt=Math.min(Xe,we),Jt=Math.min(Et,Be),Vt=[];if(je==="auto"){je=!1;e:for(let fn=0;fn<xt;fn++)for(let dn=0;dn<Jt;dn++)if(Ct.get(fn,dn)<0){je=!0;break e}}for(let fn=0;fn<xt;fn++){let dn=[];for(let Vn=0;Vn<Jt;Vn++)dn.push(ue(Ct.get(fn,Vn),Le,je));Vt.push(`${dn.join(" ")}`)}return Jt!==Et&&(Vt[Vt.length-1]+=` ... ${Et-Be} more columns`),xt!==Xe&&Vt.push(`... ${Xe-we} more rows`),Vt.join(`
|
|
|
${se}`)}function ue(Ct,we,Be){return(Ct>=0&&Be?` ${me(Ct,we-1)}`:me(Ct,we)).padEnd(we)}function me(Ct,we){let Be=Ct.toString();if(Be.length<=we)return Be;let Le=Ct.toFixed(we);if(Le.length>we&&(Le=Ct.toFixed(Math.max(0,we-(Le.length-we)))),Le.length<=we&&!Le.startsWith("0.000")&&!Le.startsWith("-0.000"))return Le;let je=Ct.toExponential(we);return je.length>we&&(je=Ct.toExponential(Math.max(0,we-(je.length-we)))),je.slice(0)}function Ce(Ct,we){Ct.prototype.add=function(Le){return typeof Le=="number"?this.addS(Le):this.addM(Le)},Ct.prototype.addS=function(Le){for(let je=0;je<this.rows;je++)for(let Xe=0;Xe<this.columns;Xe++)this.set(je,Xe,this.get(je,Xe)+Le);return this},Ct.prototype.addM=function(Le){if(Le=we.checkMatrix(Le),this.rows!==Le.rows||this.columns!==Le.columns)throw new RangeError("Matrices dimensions must be equal");for(let je=0;je<this.rows;je++)for(let Xe=0;Xe<this.columns;Xe++)this.set(je,Xe,this.get(je,Xe)+Le.get(je,Xe));return this},Ct.add=function(Le,je){return new we(Le).add(je)},Ct.prototype.sub=function(Le){return typeof Le=="number"?this.subS(Le):this.subM(Le)},Ct.prototype.subS=function(Le){for(let je=0;je<this.rows;je++)for(let Xe=0;Xe<this.columns;Xe++)this.set(je,Xe,this.get(je,Xe)-Le);return this},Ct.prototype.subM=function(Le){if(Le=we.checkMatrix(Le),this.rows!==Le.rows||this.columns!==Le.columns)throw new RangeError("Matrices dimensions must be equal");for(let je=0;je<this.rows;je++)for(let Xe=0;Xe<this.columns;Xe++)this.set(je,Xe,this.get(je,Xe)-Le.get(je,Xe));return this},Ct.sub=function(Le,je){return new we(Le).sub(je)},Ct.prototype.subtract=Ct.prototype.sub,Ct.prototype.subtractS=Ct.prototype.subS,Ct.prototype.subtractM=Ct.prototype.subM,Ct.subtract=Ct.sub,Ct.prototype.mul=function(Le){return typeof Le=="number"?this.mulS(Le):this.mulM(Le)},Ct.prototype.mulS=function(Le){for(let je=0;je<this.rows;je++)for(let Xe=0;Xe<this.columns;Xe++)this.set(je,Xe,this.get(je,Xe)*Le);return this},Ct.prototype.mulM=function(Le){if(Le=we.checkMatrix(Le),this.rows!==Le.rows||this.columns!==Le.columns)throw new RangeError("Matrices dimensions must be equal");for(let je=0;je<this.rows;je++)for(let Xe=0;Xe<this.columns;Xe++)this.set(je,Xe,this.get(je,Xe)*Le.get(je,Xe));return this},Ct.mul=function(Le,je){return new we(Le).mul(je)},Ct.prototype.multiply=Ct.prototype.mul,Ct.prototype.multiplyS=Ct.prototype.mulS,Ct.prototype.multiplyM=Ct.prototype.mulM,Ct.multiply=Ct.mul,Ct.prototype.div=function(Le){return typeof Le=="number"?this.divS(Le):this.divM(Le)},Ct.prototype.divS=function(Le){for(let je=0;je<this.rows;je++)for(let Xe=0;Xe<this.columns;Xe++)this.set(je,Xe,this.get(je,Xe)/Le);return this},Ct.prototype.divM=function(Le){if(Le=we.checkMatrix(Le),this.rows!==Le.rows||this.columns!==Le.columns)throw new RangeError("Matrices dimensions must be equal");for(let je=0;je<this.rows;je++)for(let Xe=0;Xe<this.columns;Xe++)this.set(je,Xe,this.get(je,Xe)/Le.get(je,Xe));return this},Ct.div=function(Le,je){return new we(Le).div(je)},Ct.prototype.divide=Ct.prototype.div,Ct.prototype.divideS=Ct.prototype.divS,Ct.prototype.divideM=Ct.prototype.divM,Ct.divide=Ct.div,Ct.prototype.mod=function(Le){return typeof Le=="number"?this.modS(Le):this.modM(Le)},Ct.prototype.modS=function(Le){for(let je=0;je<this.rows;je++)for(let Xe=0;Xe<this.columns;Xe++)this.set(je,Xe,this.get(je,Xe)%Le);return this},Ct.prototype.modM=function(Le){if(Le=we.checkMatrix(Le),this.rows!==Le.rows||this.columns!==Le.columns)throw new RangeError("Matrices dimensions must be equal");for(let je=0;je<this.rows;je++)for(let Xe=0;Xe<this.columns;Xe++)this.set(je,Xe,this.get(je,Xe)%Le.get(je,Xe));return this},Ct.mod=function(Le,je){return new we(Le).mod(je)},Ct.prototype.modulus=Ct.prototype.mod,Ct.prototype.modulusS=Ct.prototype.modS,Ct.prototype.modulusM=Ct.prototype.modM,Ct.modulus=Ct.mod,Ct.prototype.and=function(Le){return typeof Le=="number"?this.andS(Le):this.andM(Le)},Ct.prototype.andS=function(Le){for(let je=0;je<this.rows;je++)for(let Xe=0;Xe<this.columns;Xe++)this.set(je,Xe,this.get(je,Xe)&Le);return this},Ct.prototype.andM=function(Le){if(Le=we.checkMatrix(Le),this.rows!==Le.rows||this.columns!==Le.columns)throw new RangeError("Matrices dimensions must be equal");for(let je=0;je<this.rows;je++)for(let Xe=0;Xe<this.columns;Xe++)this.set(je,Xe,this.get(je,Xe)&Le.get(je,Xe));return this},Ct.and=function(Le,je){return new we(Le).and(je)},Ct.prototype.or=function(Le){return typeof Le=="number"?this.orS(Le):this.orM(Le)},Ct.prototype.orS=function(Le){for(let je=0;je<this.rows;je++)for(let Xe=0;Xe<this.columns;Xe++)this.set(je,Xe,this.get(je,Xe)|Le);return this},Ct.prototype.orM=function(Le){if(Le=we.checkMatrix(Le),this.rows!==Le.rows||this.columns!==Le.columns)throw new RangeError("Matrices dimensions must be equal");for(let je=0;je<this.rows;je++)for(let Xe=0;Xe<this.columns;Xe++)this.set(je,Xe,this.get(je,Xe)|Le.get(je,Xe));return this},Ct.or=function(Le,je){return new we(Le).or(je)},Ct.prototype.xor=function(Le){return typeof Le=="number"?this.xorS(Le):this.xorM(Le)},Ct.prototype.xorS=function(Le){for(let je=0;je<this.rows;je++)for(let Xe=0;Xe<this.columns;Xe++)this.set(je,Xe,this.get(je,Xe)^Le);return this},Ct.prototype.xorM=function(Le){if(Le=we.checkMatrix(Le),this.rows!==Le.rows||this.columns!==Le.columns)throw new RangeError("Matrices dimensions must be equal");for(let je=0;je<this.rows;je++)for(let Xe=0;Xe<this.columns;Xe++)this.set(je,Xe,this.get(je,Xe)^Le.get(je,Xe));return this},Ct.xor=function(Le,je){return new we(Le).xor(je)},Ct.prototype.leftShift=function(Le){return typeof Le=="number"?this.leftShiftS(Le):this.leftShiftM(Le)},Ct.prototype.leftShiftS=function(Le){for(let je=0;je<this.rows;je++)for(let Xe=0;Xe<this.columns;Xe++)this.set(je,Xe,this.get(je,Xe)<<Le);return this},Ct.prototype.leftShiftM=function(Le){if(Le=we.checkMatrix(Le),this.rows!==Le.rows||this.columns!==Le.columns)throw new RangeError("Matrices dimensions must be equal");for(let je=0;je<this.rows;je++)for(let Xe=0;Xe<this.columns;Xe++)this.set(je,Xe,this.get(je,Xe)<<Le.get(je,Xe));return this},Ct.leftShift=function(Le,je){return new we(Le).leftShift(je)},Ct.prototype.signPropagatingRightShift=function(Le){return typeof Le=="number"?this.signPropagatingRightShiftS(Le):this.signPropagatingRightShiftM(Le)},Ct.prototype.signPropagatingRightShiftS=function(Le){for(let je=0;je<this.rows;je++)for(let Xe=0;Xe<this.columns;Xe++)this.set(je,Xe,this.get(je,Xe)>>Le);return this},Ct.prototype.signPropagatingRightShiftM=function(Le){if(Le=we.checkMatrix(Le),this.rows!==Le.rows||this.columns!==Le.columns)throw new RangeError("Matrices dimensions must be equal");for(let je=0;je<this.rows;je++)for(let Xe=0;Xe<this.columns;Xe++)this.set(je,Xe,this.get(je,Xe)>>Le.get(je,Xe));return this},Ct.signPropagatingRightShift=function(Le,je){return new we(Le).signPropagatingRightShift(je)},Ct.prototype.rightShift=function(Le){return typeof Le=="number"?this.rightShiftS(Le):this.rightShiftM(Le)},Ct.prototype.rightShiftS=function(Le){for(let je=0;je<this.rows;je++)for(let Xe=0;Xe<this.columns;Xe++)this.set(je,Xe,this.get(je,Xe)>>>Le);return this},Ct.prototype.rightShiftM=function(Le){if(Le=we.checkMatrix(Le),this.rows!==Le.rows||this.columns!==Le.columns)throw new RangeError("Matrices dimensions must be equal");for(let je=0;je<this.rows;je++)for(let Xe=0;Xe<this.columns;Xe++)this.set(je,Xe,this.get(je,Xe)>>>Le.get(je,Xe));return this},Ct.rightShift=function(Le,je){return new we(Le).rightShift(je)},Ct.prototype.zeroFillRightShift=Ct.prototype.rightShift,Ct.prototype.zeroFillRightShiftS=Ct.prototype.rightShiftS,Ct.prototype.zeroFillRightShiftM=Ct.prototype.rightShiftM,Ct.zeroFillRightShift=Ct.rightShift,Ct.prototype.not=function(){for(let Le=0;Le<this.rows;Le++)for(let je=0;je<this.columns;je++)this.set(Le,je,~this.get(Le,je));return this},Ct.not=function(Le){return new we(Le).not()},Ct.prototype.abs=function(){for(let Le=0;Le<this.rows;Le++)for(let je=0;je<this.columns;je++)this.set(Le,je,Math.abs(this.get(Le,je)));return this},Ct.abs=function(Le){return new we(Le).abs()},Ct.prototype.acos=function(){for(let Le=0;Le<this.rows;Le++)for(let je=0;je<this.columns;je++)this.set(Le,je,Math.acos(this.get(Le,je)));return this},Ct.acos=function(Le){return new we(Le).acos()},Ct.prototype.acosh=function(){for(let Le=0;Le<this.rows;Le++)for(let je=0;je<this.columns;je++)this.set(Le,je,Math.acosh(this.get(Le,je)));return this},Ct.acosh=function(Le){return new we(Le).acosh()},Ct.prototype.asin=function(){for(let Le=0;Le<this.rows;Le++)for(let je=0;je<this.columns;je++)this.set(Le,je,Math.asin(this.get(Le,je)));return this},Ct.asin=function(Le){return new we(Le).asin()},Ct.prototype.asinh=function(){for(let Le=0;Le<this.rows;Le++)for(let je=0;je<this.columns;je++)this.set(Le,je,Math.asinh(this.get(Le,je)));return this},Ct.asinh=function(Le){return new we(Le).asinh()},Ct.prototype.atan=function(){for(let Le=0;Le<this.rows;Le++)for(let je=0;je<this.columns;je++)this.set(Le,je,Math.atan(this.get(Le,je)));return this},Ct.atan=function(Le){return new we(Le).atan()},Ct.prototype.atanh=function(){for(let Le=0;Le<this.rows;Le++)for(let je=0;je<this.columns;je++)this.set(Le,je,Math.atanh(this.get(Le,je)));return this},Ct.atanh=function(Le){return new we(Le).atanh()},Ct.prototype.cbrt=function(){for(let Le=0;Le<this.rows;Le++)for(let je=0;je<this.columns;je++)this.set(Le,je,Math.cbrt(this.get(Le,je)));return this},Ct.cbrt=function(Le){return new we(Le).cbrt()},Ct.prototype.ceil=function(){for(let Le=0;Le<this.rows;Le++)for(let je=0;je<this.columns;je++)this.set(Le,je,Math.ceil(this.get(Le,je)));return this},Ct.ceil=function(Le){return new we(Le).ceil()},Ct.prototype.clz32=function(){for(let Le=0;Le<this.rows;Le++)for(let je=0;je<this.columns;je++)this.set(Le,je,Math.clz32(this.get(Le,je)));return this},Ct.clz32=function(Le){return new we(Le).clz32()},Ct.prototype.cos=function(){for(let Le=0;Le<this.rows;Le++)for(let je=0;je<this.columns;je++)this.set(Le,je,Math.cos(this.get(Le,je)));return this},Ct.cos=function(Le){return new we(Le).cos()},Ct.prototype.cosh=function(){for(let Le=0;Le<this.rows;Le++)for(let je=0;je<this.columns;je++)this.set(Le,je,Math.cosh(this.get(Le,je)));return this},Ct.cosh=function(Le){return new we(Le).cosh()},Ct.prototype.exp=function(){for(let Le=0;Le<this.rows;Le++)for(let je=0;je<this.columns;je++)this.set(Le,je,Math.exp(this.get(Le,je)));return this},Ct.exp=function(Le){return new we(Le).exp()},Ct.prototype.expm1=function(){for(let Le=0;Le<this.rows;Le++)for(let je=0;je<this.columns;je++)this.set(Le,je,Math.expm1(this.get(Le,je)));return this},Ct.expm1=function(Le){return new we(Le).expm1()},Ct.prototype.floor=function(){for(let Le=0;Le<this.rows;Le++)for(let je=0;je<this.columns;je++)this.set(Le,je,Math.floor(this.get(Le,je)));return this},Ct.floor=function(Le){return new we(Le).floor()},Ct.prototype.fround=function(){for(let Le=0;Le<this.rows;Le++)for(let je=0;je<this.columns;je++)this.set(Le,je,Math.fround(this.get(Le,je)));return this},Ct.fround=function(Le){return new we(Le).fround()},Ct.prototype.log=function(){for(let Le=0;Le<this.rows;Le++)for(let je=0;je<this.columns;je++)this.set(Le,je,Math.log(this.get(Le,je)));return this},Ct.log=function(Le){return new we(Le).log()},Ct.prototype.log1p=function(){for(let Le=0;Le<this.rows;Le++)for(let je=0;je<this.columns;je++)this.set(Le,je,Math.log1p(this.get(Le,je)));return this},Ct.log1p=function(Le){return new we(Le).log1p()},Ct.prototype.log10=function(){for(let Le=0;Le<this.rows;Le++)for(let je=0;je<this.columns;je++)this.set(Le,je,Math.log10(this.get(Le,je)));return this},Ct.log10=function(Le){return new we(Le).log10()},Ct.prototype.log2=function(){for(let Le=0;Le<this.rows;Le++)for(let je=0;je<this.columns;je++)this.set(Le,je,Math.log2(this.get(Le,je)));return this},Ct.log2=function(Le){return new we(Le).log2()},Ct.prototype.round=function(){for(let Le=0;Le<this.rows;Le++)for(let je=0;je<this.columns;je++)this.set(Le,je,Math.round(this.get(Le,je)));return this},Ct.round=function(Le){return new we(Le).round()},Ct.prototype.sign=function(){for(let Le=0;Le<this.rows;Le++)for(let je=0;je<this.columns;je++)this.set(Le,je,Math.sign(this.get(Le,je)));return this},Ct.sign=function(Le){return new we(Le).sign()},Ct.prototype.sin=function(){for(let Le=0;Le<this.rows;Le++)for(let je=0;je<this.columns;je++)this.set(Le,je,Math.sin(this.get(Le,je)));return this},Ct.sin=function(Le){return new we(Le).sin()},Ct.prototype.sinh=function(){for(let Le=0;Le<this.rows;Le++)for(let je=0;je<this.columns;je++)this.set(Le,je,Math.sinh(this.get(Le,je)));return this},Ct.sinh=function(Le){return new we(Le).sinh()},Ct.prototype.sqrt=function(){for(let Le=0;Le<this.rows;Le++)for(let je=0;je<this.columns;je++)this.set(Le,je,Math.sqrt(this.get(Le,je)));return this},Ct.sqrt=function(Le){return new we(Le).sqrt()},Ct.prototype.tan=function(){for(let Le=0;Le<this.rows;Le++)for(let je=0;je<this.columns;je++)this.set(Le,je,Math.tan(this.get(Le,je)));return this},Ct.tan=function(Le){return new we(Le).tan()},Ct.prototype.tanh=function(){for(let Le=0;Le<this.rows;Le++)for(let je=0;je<this.columns;je++)this.set(Le,je,Math.tanh(this.get(Le,je)));return this},Ct.tanh=function(Le){return new we(Le).tanh()},Ct.prototype.trunc=function(){for(let Le=0;Le<this.rows;Le++)for(let je=0;je<this.columns;je++)this.set(Le,je,Math.trunc(this.get(Le,je)));return this},Ct.trunc=function(Le){return new we(Le).trunc()},Ct.pow=function(Le,je){return new we(Le).pow(je)},Ct.prototype.pow=function(Le){return typeof Le=="number"?this.powS(Le):this.powM(Le)},Ct.prototype.powS=function(Le){for(let je=0;je<this.rows;je++)for(let Xe=0;Xe<this.columns;Xe++)this.set(je,Xe,be(this.get(je,Xe),Le));return this},Ct.prototype.powM=function(Le){if(Le=we.checkMatrix(Le),this.rows!==Le.rows||this.columns!==Le.columns)throw new RangeError("Matrices dimensions must be equal");for(let je=0;je<this.rows;je++)for(let Xe=0;Xe<this.columns;Xe++)this.set(je,Xe,be(this.get(je,Xe),Le.get(je,Xe)));return this}}function Ie(Ct,we,Be){let Le=Be?Ct.rows:Ct.rows-1;if(we<0||we>Le)throw new RangeError("Row index out of range")}function Fe(Ct,we,Be){let Le=Be?Ct.columns:Ct.columns-1;if(we<0||we>Le)throw new RangeError("Column index out of range")}function Re(Ct,we){if(we.to1DArray&&(we=we.to1DArray()),we.length!==Ct.columns)throw new RangeError("vector size must be the same as the number of columns");return we}function Ue(Ct,we){if(we.to1DArray&&(we=we.to1DArray()),we.length!==Ct.rows)throw new RangeError("vector size must be the same as the number of rows");return we}function Ge(Ct,we){if(!te.isAnyArray(we))throw new TypeError("row indices must be an array");for(let Be=0;Be<we.length;Be++)if(we[Be]<0||we[Be]>=Ct.rows)throw new RangeError("row indices are out of range")}function Je(Ct,we){if(!te.isAnyArray(we))throw new TypeError("column indices must be an array");for(let Be=0;Be<we.length;Be++)if(we[Be]<0||we[Be]>=Ct.columns)throw new RangeError("column indices are out of range")}function Qe(Ct,we,Be,Le,je){if(arguments.length!==5)throw new RangeError("expected 4 arguments");if($e("startRow",we),$e("endRow",Be),$e("startColumn",Le),$e("endColumn",je),we>Be||Le>je||we<0||we>=Ct.rows||Be<0||Be>=Ct.rows||Le<0||Le>=Ct.columns||je<0||je>=Ct.columns)throw new RangeError("Submatrix indices are out of range")}function rt(Ct,we=0){let Be=[];for(let Le=0;Le<Ct;Le++)Be.push(we);return Be}function $e(Ct,we){if(typeof we!="number")throw new TypeError(`${Ct} must be a number`)}function qe(Ct){if(Ct.isEmpty())throw new Error("Empty matrix has no elements to index")}function ot(Ct){let we=rt(Ct.rows);for(let Be=0;Be<Ct.rows;++Be)for(let Le=0;Le<Ct.columns;++Le)we[Be]+=Ct.get(Be,Le);return we}function at(Ct){let we=rt(Ct.columns);for(let Be=0;Be<Ct.rows;++Be)for(let Le=0;Le<Ct.columns;++Le)we[Le]+=Ct.get(Be,Le);return we}function ut(Ct){let we=0;for(let Be=0;Be<Ct.rows;Be++)for(let Le=0;Le<Ct.columns;Le++)we+=Ct.get(Be,Le);return we}function nt(Ct){let we=rt(Ct.rows,1);for(let Be=0;Be<Ct.rows;++Be)for(let Le=0;Le<Ct.columns;++Le)we[Be]*=Ct.get(Be,Le);return we}function lt(Ct){let we=rt(Ct.columns,1);for(let Be=0;Be<Ct.rows;++Be)for(let Le=0;Le<Ct.columns;++Le)we[Le]*=Ct.get(Be,Le);return we}function yt(Ct){let we=1;for(let Be=0;Be<Ct.rows;Be++)for(let Le=0;Le<Ct.columns;Le++)we*=Ct.get(Be,Le);return we}function ft(Ct,we,Be){const Le=Ct.rows,je=Ct.columns,Xe=[];for(let Et=0;Et<Le;Et++){let xt=0,Jt=0,Vt=0;for(let fn=0;fn<je;fn++)Vt=Ct.get(Et,fn)-Be[Et],xt+=Vt,Jt+=Vt*Vt;we?Xe.push((Jt-xt*xt/je)/(je-1)):Xe.push((Jt-xt*xt/je)/je)}return Xe}function ct(Ct,we,Be){const Le=Ct.rows,je=Ct.columns,Xe=[];for(let Et=0;Et<je;Et++){let xt=0,Jt=0,Vt=0;for(let fn=0;fn<Le;fn++)Vt=Ct.get(fn,Et)-Be[Et],xt+=Vt,Jt+=Vt*Vt;we?Xe.push((Jt-xt*xt/Le)/(Le-1)):Xe.push((Jt-xt*xt/Le)/Le)}return Xe}function vt(Ct,we,Be){const Le=Ct.rows,je=Ct.columns,Xe=Le*je;let Et=0,xt=0,Jt=0;for(let Vt=0;Vt<Le;Vt++)for(let fn=0;fn<je;fn++)Jt=Ct.get(Vt,fn)-Be,Et+=Jt,xt+=Jt*Jt;return we?(xt-Et*Et/Xe)/(Xe-1):(xt-Et*Et/Xe)/Xe}function Ut(Ct,we){for(let Be=0;Be<Ct.rows;Be++)for(let Le=0;Le<Ct.columns;Le++)Ct.set(Be,Le,Ct.get(Be,Le)-we[Be])}function Zt(Ct,we){for(let Be=0;Be<Ct.rows;Be++)for(let Le=0;Le<Ct.columns;Le++)Ct.set(Be,Le,Ct.get(Be,Le)-we[Le])}function en(Ct,we){for(let Be=0;Be<Ct.rows;Be++)for(let Le=0;Le<Ct.columns;Le++)Ct.set(Be,Le,Ct.get(Be,Le)-we)}function mn(Ct){const we=[];for(let Be=0;Be<Ct.rows;Be++){let Le=0;for(let je=0;je<Ct.columns;je++)Le+=be(Ct.get(Be,je),2)/(Ct.columns-1);we.push(Math.sqrt(Le))}return we}function Bt(Ct,we){for(let Be=0;Be<Ct.rows;Be++)for(let Le=0;Le<Ct.columns;Le++)Ct.set(Be,Le,Ct.get(Be,Le)/we[Be])}function tn(Ct){const we=[];for(let Be=0;Be<Ct.columns;Be++){let Le=0;for(let je=0;je<Ct.rows;je++)Le+=be(Ct.get(je,Be),2)/(Ct.rows-1);we.push(Math.sqrt(Le))}return we}function on(Ct,we){for(let Be=0;Be<Ct.rows;Be++)for(let Le=0;Le<Ct.columns;Le++)Ct.set(Be,Le,Ct.get(Be,Le)/we[Le])}function Mn(Ct){const we=Ct.size-1;let Be=0;for(let Le=0;Le<Ct.columns;Le++)for(let je=0;je<Ct.rows;je++)Be+=be(Ct.get(je,Le),2)/we;return Math.sqrt(Be)}function Dn(Ct,we){for(let Be=0;Be<Ct.rows;Be++)for(let Le=0;Le<Ct.columns;Le++)Ct.set(Be,Le,Ct.get(Be,Le)/we)}class sn{static from1DArray(we,Be,Le){if(we*Be!==Le.length)throw new RangeError("data length does not match given dimensions");let Xe=new St(we,Be);for(let Et=0;Et<we;Et++)for(let xt=0;xt<Be;xt++)Xe.set(Et,xt,Le[Et*Be+xt]);return Xe}static rowVector(we){let Be=new St(1,we.length);for(let Le=0;Le<we.length;Le++)Be.set(0,Le,we[Le]);return Be}static columnVector(we){let Be=new St(we.length,1);for(let Le=0;Le<we.length;Le++)Be.set(Le,0,we[Le]);return Be}static zeros(we,Be){return new St(we,Be)}static ones(we,Be){return new St(we,Be).fill(1)}static rand(we,Be,Le={}){if(typeof Le!="object")throw new TypeError("options must be an object");const{random:je=Math.random}=Le;let Xe=new St(we,Be);for(let Et=0;Et<we;Et++)for(let xt=0;xt<Be;xt++)Xe.set(Et,xt,je());return Xe}static randInt(we,Be,Le={}){if(typeof Le!="object")throw new TypeError("options must be an object");const{min:je=0,max:Xe=1e3,random:Et=Math.random}=Le;if(!Number.isInteger(je))throw new TypeError("min must be an integer");if(!Number.isInteger(Xe))throw new TypeError("max must be an integer");if(je>=Xe)throw new RangeError("min must be smaller than max");let xt=Xe-je,Jt=new St(we,Be);for(let Vt=0;Vt<we;Vt++)for(let fn=0;fn<Be;fn++){let dn=je+Math.round(Et()*xt);Jt.set(Vt,fn,dn)}return Jt}static eye(we,Be,Le){Be===void 0&&(Be=we),Le===void 0&&(Le=1);let je=Math.min(we,Be),Xe=this.zeros(we,Be);for(let Et=0;Et<je;Et++)Xe.set(Et,Et,Le);return Xe}static diag(we,Be,Le){let je=we.length;Be===void 0&&(Be=je),Le===void 0&&(Le=Be);let Xe=Math.min(je,Be,Le),Et=this.zeros(Be,Le);for(let xt=0;xt<Xe;xt++)Et.set(xt,xt,we[xt]);return Et}static min(we,Be){we=this.checkMatrix(we),Be=this.checkMatrix(Be);let Le=we.rows,je=we.columns,Xe=new St(Le,je);for(let Et=0;Et<Le;Et++)for(let xt=0;xt<je;xt++)Xe.set(Et,xt,Math.min(we.get(Et,xt),Be.get(Et,xt)));return Xe}static max(we,Be){we=this.checkMatrix(we),Be=this.checkMatrix(Be);let Le=we.rows,je=we.columns,Xe=new this(Le,je);for(let Et=0;Et<Le;Et++)for(let xt=0;xt<je;xt++)Xe.set(Et,xt,Math.max(we.get(Et,xt),Be.get(Et,xt)));return Xe}static checkMatrix(we){return sn.isMatrix(we)?we:new St(we)}static isMatrix(we){return we!=null&&we.klass==="Matrix"}get size(){return this.rows*this.columns}apply(we){if(typeof we!="function")throw new TypeError("callback must be a function");for(let Be=0;Be<this.rows;Be++)for(let Le=0;Le<this.columns;Le++)we.call(this,Be,Le);return this}to1DArray(){let we=[];for(let Be=0;Be<this.rows;Be++)for(let Le=0;Le<this.columns;Le++)we.push(this.get(Be,Le));return we}to2DArray(){let we=[];for(let Be=0;Be<this.rows;Be++){we.push([]);for(let Le=0;Le<this.columns;Le++)we[Be].push(this.get(Be,Le))}return we}toJSON(){return this.to2DArray()}isRowVector(){return this.rows===1}isColumnVector(){return this.columns===1}isVector(){return this.rows===1||this.columns===1}isSquare(){return this.rows===this.columns}isEmpty(){return this.rows===0||this.columns===0}isSymmetric(){if(this.isSquare()){for(let we=0;we<this.rows;we++)for(let Be=0;Be<=we;Be++)if(this.get(we,Be)!==this.get(Be,we))return!1;return!0}return!1}isDistance(){if(!this.isSymmetric())return!1;for(let we=0;we<this.rows;we++)if(this.get(we,we)!==0)return!1;return!0}isEchelonForm(){let we=0,Be=0,Le=-1,je=!0,Xe=!1;for(;we<this.rows&&je;){for(Be=0,Xe=!1;Be<this.columns&&Xe===!1;)this.get(we,Be)===0?Be++:this.get(we,Be)===1&&Be>Le?(Xe=!0,Le=Be):(je=!1,Xe=!0);we++}return je}isReducedEchelonForm(){let we=0,Be=0,Le=-1,je=!0,Xe=!1;for(;we<this.rows&&je;){for(Be=0,Xe=!1;Be<this.columns&&Xe===!1;)this.get(we,Be)===0?Be++:this.get(we,Be)===1&&Be>Le?(Xe=!0,Le=Be):(je=!1,Xe=!0);for(let Et=Be+1;Et<this.rows;Et++)this.get(we,Et)!==0&&(je=!1);we++}return je}echelonForm(){let we=this.clone(),Be=0,Le=0;for(;Be<we.rows&&Le<we.columns;){let je=Be;for(let Xe=Be;Xe<we.rows;Xe++)we.get(Xe,Le)>we.get(je,Le)&&(je=Xe);if(we.get(je,Le)===0)Le++;else{we.swapRows(Be,je);let Xe=we.get(Be,Le);for(let Et=Le;Et<we.columns;Et++)we.set(Be,Et,we.get(Be,Et)/Xe);for(let Et=Be+1;Et<we.rows;Et++){let xt=we.get(Et,Le)/we.get(Be,Le);we.set(Et,Le,0);for(let Jt=Le+1;Jt<we.columns;Jt++)we.set(Et,Jt,we.get(Et,Jt)-we.get(Be,Jt)*xt)}Be++,Le++}}return we}reducedEchelonForm(){let we=this.echelonForm(),Be=we.columns,Le=we.rows,je=Le-1;for(;je>=0;)if(we.maxRow(je)===0)je--;else{let Xe=0,Et=!1;for(;Xe<Le&&Et===!1;)we.get(je,Xe)===1?Et=!0:Xe++;for(let xt=0;xt<je;xt++){let Jt=we.get(xt,Xe);for(let Vt=Xe;Vt<Be;Vt++){let fn=we.get(xt,Vt)-Jt*we.get(je,Vt);we.set(xt,Vt,fn)}}je--}return we}set(){throw new Error("set method is unimplemented")}get(){throw new Error("get method is unimplemented")}repeat(we={}){if(typeof we!="object")throw new TypeError("options must be an object");const{rows:Be=1,columns:Le=1}=we;if(!Number.isInteger(Be)||Be<=0)throw new TypeError("rows must be a positive integer");if(!Number.isInteger(Le)||Le<=0)throw new TypeError("columns must be a positive integer");let je=new St(this.rows*Be,this.columns*Le);for(let Xe=0;Xe<Be;Xe++)for(let Et=0;Et<Le;Et++)je.setSubMatrix(this,this.rows*Xe,this.columns*Et);return je}fill(we){for(let Be=0;Be<this.rows;Be++)for(let Le=0;Le<this.columns;Le++)this.set(Be,Le,we);return this}neg(){return this.mulS(-1)}getRow(we){Ie(this,we);let Be=[];for(let Le=0;Le<this.columns;Le++)Be.push(this.get(we,Le));return Be}getRowVector(we){return St.rowVector(this.getRow(we))}setRow(we,Be){Ie(this,we),Be=Re(this,Be);for(let Le=0;Le<this.columns;Le++)this.set(we,Le,Be[Le]);return this}swapRows(we,Be){Ie(this,we),Ie(this,Be);for(let Le=0;Le<this.columns;Le++){let je=this.get(we,Le);this.set(we,Le,this.get(Be,Le)),this.set(Be,Le,je)}return this}getColumn(we){Fe(this,we);let Be=[];for(let Le=0;Le<this.rows;Le++)Be.push(this.get(Le,we));return Be}getColumnVector(we){return St.columnVector(this.getColumn(we))}setColumn(we,Be){Fe(this,we),Be=Ue(this,Be);for(let Le=0;Le<this.rows;Le++)this.set(Le,we,Be[Le]);return this}swapColumns(we,Be){Fe(this,we),Fe(this,Be);for(let Le=0;Le<this.rows;Le++){let je=this.get(Le,we);this.set(Le,we,this.get(Le,Be)),this.set(Le,Be,je)}return this}addRowVector(we){we=Re(this,we);for(let Be=0;Be<this.rows;Be++)for(let Le=0;Le<this.columns;Le++)this.set(Be,Le,this.get(Be,Le)+we[Le]);return this}subRowVector(we){we=Re(this,we);for(let Be=0;Be<this.rows;Be++)for(let Le=0;Le<this.columns;Le++)this.set(Be,Le,this.get(Be,Le)-we[Le]);return this}mulRowVector(we){we=Re(this,we);for(let Be=0;Be<this.rows;Be++)for(let Le=0;Le<this.columns;Le++)this.set(Be,Le,this.get(Be,Le)*we[Le]);return this}divRowVector(we){we=Re(this,we);for(let Be=0;Be<this.rows;Be++)for(let Le=0;Le<this.columns;Le++)this.set(Be,Le,this.get(Be,Le)/we[Le]);return this}addColumnVector(we){we=Ue(this,we);for(let Be=0;Be<this.rows;Be++)for(let Le=0;Le<this.columns;Le++)this.set(Be,Le,this.get(Be,Le)+we[Be]);return this}subColumnVector(we){we=Ue(this,we);for(let Be=0;Be<this.rows;Be++)for(let Le=0;Le<this.columns;Le++)this.set(Be,Le,this.get(Be,Le)-we[Be]);return this}mulColumnVector(we){we=Ue(this,we);for(let Be=0;Be<this.rows;Be++)for(let Le=0;Le<this.columns;Le++)this.set(Be,Le,this.get(Be,Le)*we[Be]);return this}divColumnVector(we){we=Ue(this,we);for(let Be=0;Be<this.rows;Be++)for(let Le=0;Le<this.columns;Le++)this.set(Be,Le,this.get(Be,Le)/we[Be]);return this}mulRow(we,Be){Ie(this,we);for(let Le=0;Le<this.columns;Le++)this.set(we,Le,this.get(we,Le)*Be);return this}mulColumn(we,Be){Fe(this,we);for(let Le=0;Le<this.rows;Le++)this.set(Le,we,this.get(Le,we)*Be);return this}max(we){if(this.isEmpty())return NaN;switch(we){case"row":{const Be=new Array(this.rows).fill(Number.NEGATIVE_INFINITY);for(let Le=0;Le<this.rows;Le++)for(let je=0;je<this.columns;je++)this.get(Le,je)>Be[Le]&&(Be[Le]=this.get(Le,je));return Be}case"column":{const Be=new Array(this.columns).fill(Number.NEGATIVE_INFINITY);for(let Le=0;Le<this.rows;Le++)for(let je=0;je<this.columns;je++)this.get(Le,je)>Be[je]&&(Be[je]=this.get(Le,je));return Be}case void 0:{let Be=this.get(0,0);for(let Le=0;Le<this.rows;Le++)for(let je=0;je<this.columns;je++)this.get(Le,je)>Be&&(Be=this.get(Le,je));return Be}default:throw new Error(`invalid option: ${we}`)}}maxIndex(){qe(this);let we=this.get(0,0),Be=[0,0];for(let Le=0;Le<this.rows;Le++)for(let je=0;je<this.columns;je++)this.get(Le,je)>we&&(we=this.get(Le,je),Be[0]=Le,Be[1]=je);return Be}min(we){if(this.isEmpty())return NaN;switch(we){case"row":{const Be=new Array(this.rows).fill(Number.POSITIVE_INFINITY);for(let Le=0;Le<this.rows;Le++)for(let je=0;je<this.columns;je++)this.get(Le,je)<Be[Le]&&(Be[Le]=this.get(Le,je));return Be}case"column":{const Be=new Array(this.columns).fill(Number.POSITIVE_INFINITY);for(let Le=0;Le<this.rows;Le++)for(let je=0;je<this.columns;je++)this.get(Le,je)<Be[je]&&(Be[je]=this.get(Le,je));return Be}case void 0:{let Be=this.get(0,0);for(let Le=0;Le<this.rows;Le++)for(let je=0;je<this.columns;je++)this.get(Le,je)<Be&&(Be=this.get(Le,je));return Be}default:throw new Error(`invalid option: ${we}`)}}minIndex(){qe(this);let we=this.get(0,0),Be=[0,0];for(let Le=0;Le<this.rows;Le++)for(let je=0;je<this.columns;je++)this.get(Le,je)<we&&(we=this.get(Le,je),Be[0]=Le,Be[1]=je);return Be}maxRow(we){if(Ie(this,we),this.isEmpty())return NaN;let Be=this.get(we,0);for(let Le=1;Le<this.columns;Le++)this.get(we,Le)>Be&&(Be=this.get(we,Le));return Be}maxRowIndex(we){Ie(this,we),qe(this);let Be=this.get(we,0),Le=[we,0];for(let je=1;je<this.columns;je++)this.get(we,je)>Be&&(Be=this.get(we,je),Le[1]=je);return Le}minRow(we){if(Ie(this,we),this.isEmpty())return NaN;let Be=this.get(we,0);for(let Le=1;Le<this.columns;Le++)this.get(we,Le)<Be&&(Be=this.get(we,Le));return Be}minRowIndex(we){Ie(this,we),qe(this);let Be=this.get(we,0),Le=[we,0];for(let je=1;je<this.columns;je++)this.get(we,je)<Be&&(Be=this.get(we,je),Le[1]=je);return Le}maxColumn(we){if(Fe(this,we),this.isEmpty())return NaN;let Be=this.get(0,we);for(let Le=1;Le<this.rows;Le++)this.get(Le,we)>Be&&(Be=this.get(Le,we));return Be}maxColumnIndex(we){Fe(this,we),qe(this);let Be=this.get(0,we),Le=[0,we];for(let je=1;je<this.rows;je++)this.get(je,we)>Be&&(Be=this.get(je,we),Le[0]=je);return Le}minColumn(we){if(Fe(this,we),this.isEmpty())return NaN;let Be=this.get(0,we);for(let Le=1;Le<this.rows;Le++)this.get(Le,we)<Be&&(Be=this.get(Le,we));return Be}minColumnIndex(we){Fe(this,we),qe(this);let Be=this.get(0,we),Le=[0,we];for(let je=1;je<this.rows;je++)this.get(je,we)<Be&&(Be=this.get(je,we),Le[0]=je);return Le}diag(){let we=Math.min(this.rows,this.columns),Be=[];for(let Le=0;Le<we;Le++)Be.push(this.get(Le,Le));return Be}norm(we="frobenius"){switch(we){case"max":return this.max();case"frobenius":return Math.sqrt(this.dot(this));default:throw new RangeError(`unknown norm type: ${we}`)}}cumulativeSum(){let we=0;for(let Be=0;Be<this.rows;Be++)for(let Le=0;Le<this.columns;Le++)we+=this.get(Be,Le),this.set(Be,Le,we);return this}dot(we){sn.isMatrix(we)&&(we=we.to1DArray());let Be=this.to1DArray();if(Be.length!==we.length)throw new RangeError("vectors do not have the same size");let Le=0;for(let je=0;je<Be.length;je++)Le+=Be[je]*we[je];return Le}mmul(we){we=St.checkMatrix(we);let Be=this.rows,Le=this.columns,je=we.columns,Xe=new St(Be,je),Et=new Float64Array(Le);for(let xt=0;xt<je;xt++){for(let Jt=0;Jt<Le;Jt++)Et[Jt]=we.get(Jt,xt);for(let Jt=0;Jt<Be;Jt++){let Vt=0;for(let fn=0;fn<Le;fn++)Vt+=this.get(Jt,fn)*Et[fn];Xe.set(Jt,xt,Vt)}}return Xe}mpow(we){if(!this.isSquare())throw new RangeError("Matrix must be square");if(!Number.isInteger(we)||we<0)throw new RangeError("Exponent must be a non-negative integer");let Be=St.eye(this.rows),Le=this;for(let je=we;je>=1;je/=2)je&1&&(Be=Be.mmul(Le)),Le=Le.mmul(Le);return Be}strassen2x2(we){we=St.checkMatrix(we);let Be=new St(2,2);const Le=this.get(0,0),je=we.get(0,0),Xe=this.get(0,1),Et=we.get(0,1),xt=this.get(1,0),Jt=we.get(1,0),Vt=this.get(1,1),fn=we.get(1,1),dn=(Le+Vt)*(je+fn),Vn=(xt+Vt)*je,Pn=Le*(Et-fn),Jn=Vt*(Jt-je),$n=(Le+Xe)*fn,hr=(xt-Le)*(je+Et),hn=(Xe-Vt)*(Jt+fn),an=dn+Jn-$n+hn,In=Pn+$n,jn=Vn+Jn,cr=dn-Vn+Pn+hr;return Be.set(0,0,an),Be.set(0,1,In),Be.set(1,0,jn),Be.set(1,1,cr),Be}strassen3x3(we){we=St.checkMatrix(we);let Be=new St(3,3);const Le=this.get(0,0),je=this.get(0,1),Xe=this.get(0,2),Et=this.get(1,0),xt=this.get(1,1),Jt=this.get(1,2),Vt=this.get(2,0),fn=this.get(2,1),dn=this.get(2,2),Vn=we.get(0,0),Pn=we.get(0,1),Jn=we.get(0,2),$n=we.get(1,0),hr=we.get(1,1),hn=we.get(1,2),an=we.get(2,0),In=we.get(2,1),jn=we.get(2,2),cr=(Le+je+Xe-Et-xt-fn-dn)*hr,or=(Le-Et)*(-Pn+hr),Qn=xt*(-Vn+Pn+$n-hr-hn-an+jn),dr=(-Le+Et+xt)*(Vn-Pn+hr),xr=(Et+xt)*(-Vn+Pn),On=Le*Vn,vr=(-Le+Vt+fn)*(Vn-Jn+hn),Yn=(-Le+Vt)*(Jn-hn),jr=(Vt+fn)*(-Vn+Jn),ri=(Le+je+Xe-xt-Jt-Vt-fn)*hn,vi=fn*(-Vn+Jn+$n-hr-hn-an+In),ci=(-Xe+fn+dn)*(hr+an-In),Kr=(Xe-dn)*(hr-In),Ia=Xe*an,Ta=(fn+dn)*(-an+In),la=(-Xe+xt+Jt)*(hn+an-jn),ei=(Xe-Jt)*(hn-jn),Wi=(xt+Jt)*(-an+jn),za=je*$n,_i=Jt*In,$i=Et*Jn,Uo=Vt*Pn,yo=dn*jn,sl=On+Ia+za,ds=cr+dr+xr+On+ci+Ia+Ta,bo=On+vr+jr+ri+Ia+la+Wi,hs=or+Qn+dr+On+Ia+la+ei,ss=or+dr+xr+On+_i,Yo=Ia+la+ei+Wi+$i,Wo=On+vr+Yn+vi+ci+Kr+Ia,Rs=ci+Kr+Ia+Ta+Uo,tl=On+vr+Yn+jr+yo;return Be.set(0,0,sl),Be.set(0,1,ds),Be.set(0,2,bo),Be.set(1,0,hs),Be.set(1,1,ss),Be.set(1,2,Yo),Be.set(2,0,Wo),Be.set(2,1,Rs),Be.set(2,2,tl),Be}mmulStrassen(we){we=St.checkMatrix(we);let Be=this.clone(),Le=Be.rows,je=Be.columns,Xe=we.rows,Et=we.columns;je!==Xe&&console.warn(`Multiplying ${Le} x ${je} and ${Xe} x ${Et} matrix: dimensions do not match.`);function xt(dn,Vn,Pn){let Jn=dn.rows,$n=dn.columns;if(Jn===Vn&&$n===Pn)return dn;{let hr=sn.zeros(Vn,Pn);return hr=hr.setSubMatrix(dn,0,0),hr}}let Jt=Math.max(Le,Xe),Vt=Math.max(je,Et);Be=xt(Be,Jt,Vt),we=xt(we,Jt,Vt);function fn(dn,Vn,Pn,Jn){if(Pn<=512||Jn<=512)return dn.mmul(Vn);Pn%2===1&&Jn%2===1?(dn=xt(dn,Pn+1,Jn+1),Vn=xt(Vn,Pn+1,Jn+1)):Pn%2===1?(dn=xt(dn,Pn+1,Jn),Vn=xt(Vn,Pn+1,Jn)):Jn%2===1&&(dn=xt(dn,Pn,Jn+1),Vn=xt(Vn,Pn,Jn+1));let $n=parseInt(dn.rows/2,10),hr=parseInt(dn.columns/2,10),hn=dn.subMatrix(0,$n-1,0,hr-1),an=Vn.subMatrix(0,$n-1,0,hr-1),In=dn.subMatrix(0,$n-1,hr,dn.columns-1),jn=Vn.subMatrix(0,$n-1,hr,Vn.columns-1),cr=dn.subMatrix($n,dn.rows-1,0,hr-1),or=Vn.subMatrix($n,Vn.rows-1,0,hr-1),Qn=dn.subMatrix($n,dn.rows-1,hr,dn.columns-1),dr=Vn.subMatrix($n,Vn.rows-1,hr,Vn.columns-1),xr=fn(sn.add(hn,Qn),sn.add(an,dr),$n,hr),On=fn(sn.add(cr,Qn),an,$n,hr),vr=fn(hn,sn.sub(jn,dr),$n,hr),Yn=fn(Qn,sn.sub(or,an),$n,hr),jr=fn(sn.add(hn,In),dr,$n,hr),ri=fn(sn.sub(cr,hn),sn.add(an,jn),$n,hr),vi=fn(sn.sub(In,Qn),sn.add(or,dr),$n,hr),ci=sn.add(xr,Yn);ci.sub(jr),ci.add(vi);let Kr=sn.add(vr,jr),Ia=sn.add(On,Yn),Ta=sn.sub(xr,On);Ta.add(vr),Ta.add(ri);let la=sn.zeros(2*ci.rows,2*ci.columns);return la=la.setSubMatrix(ci,0,0),la=la.setSubMatrix(Kr,ci.rows,0),la=la.setSubMatrix(Ia,0,ci.columns),la=la.setSubMatrix(Ta,ci.rows,ci.columns),la.subMatrix(0,Pn-1,0,Jn-1)}return fn(Be,we,Jt,Vt)}scaleRows(we={}){if(typeof we!="object")throw new TypeError("options must be an object");const{min:Be=0,max:Le=1}=we;if(!Number.isFinite(Be))throw new TypeError("min must be a number");if(!Number.isFinite(Le))throw new TypeError("max must be a number");if(Be>=Le)throw new RangeError("min must be smaller than max");let je=new St(this.rows,this.columns);for(let Xe=0;Xe<this.rows;Xe++){const Et=this.getRow(Xe);Et.length>0&&ne(Et,{min:Be,max:Le,output:Et}),je.setRow(Xe,Et)}return je}scaleColumns(we={}){if(typeof we!="object")throw new TypeError("options must be an object");const{min:Be=0,max:Le=1}=we;if(!Number.isFinite(Be))throw new TypeError("min must be a number");if(!Number.isFinite(Le))throw new TypeError("max must be a number");if(Be>=Le)throw new RangeError("min must be smaller than max");let je=new St(this.rows,this.columns);for(let Xe=0;Xe<this.columns;Xe++){const Et=this.getColumn(Xe);Et.length&&ne(Et,{min:Be,max:Le,output:Et}),je.setColumn(Xe,Et)}return je}flipRows(){const we=Math.ceil(this.columns/2);for(let Be=0;Be<this.rows;Be++)for(let Le=0;Le<we;Le++){let je=this.get(Be,Le),Xe=this.get(Be,this.columns-1-Le);this.set(Be,Le,Xe),this.set(Be,this.columns-1-Le,je)}return this}flipColumns(){const we=Math.ceil(this.rows/2);for(let Be=0;Be<this.columns;Be++)for(let Le=0;Le<we;Le++){let je=this.get(Le,Be),Xe=this.get(this.rows-1-Le,Be);this.set(Le,Be,Xe),this.set(this.rows-1-Le,Be,je)}return this}kroneckerProduct(we){we=St.checkMatrix(we);let Be=this.rows,Le=this.columns,je=we.rows,Xe=we.columns,Et=new St(Be*je,Le*Xe);for(let xt=0;xt<Be;xt++)for(let Jt=0;Jt<Le;Jt++)for(let Vt=0;Vt<je;Vt++)for(let fn=0;fn<Xe;fn++)Et.set(je*xt+Vt,Xe*Jt+fn,this.get(xt,Jt)*we.get(Vt,fn));return Et}kroneckerSum(we){if(we=St.checkMatrix(we),!this.isSquare()||!we.isSquare())throw new Error("Kronecker Sum needs two Square Matrices");let Be=this.rows,Le=we.rows,je=this.kroneckerProduct(St.eye(Le,Le)),Xe=St.eye(Be,Be).kroneckerProduct(we);return je.add(Xe)}transpose(){let we=new St(this.columns,this.rows);for(let Be=0;Be<this.rows;Be++)for(let Le=0;Le<this.columns;Le++)we.set(Le,Be,this.get(Be,Le));return we}sortRows(we=rn){for(let Be=0;Be<this.rows;Be++)this.setRow(Be,this.getRow(Be).sort(we));return this}sortColumns(we=rn){for(let Be=0;Be<this.columns;Be++)this.setColumn(Be,this.getColumn(Be).sort(we));return this}subMatrix(we,Be,Le,je){Qe(this,we,Be,Le,je);let Xe=new St(Be-we+1,je-Le+1);for(let Et=we;Et<=Be;Et++)for(let xt=Le;xt<=je;xt++)Xe.set(Et-we,xt-Le,this.get(Et,xt));return Xe}subMatrixRow(we,Be,Le){if(Be===void 0&&(Be=0),Le===void 0&&(Le=this.columns-1),Be>Le||Be<0||Be>=this.columns||Le<0||Le>=this.columns)throw new RangeError("Argument out of range");let je=new St(we.length,Le-Be+1);for(let Xe=0;Xe<we.length;Xe++)for(let Et=Be;Et<=Le;Et++){if(we[Xe]<0||we[Xe]>=this.rows)throw new RangeError(`Row index out of range: ${we[Xe]}`);je.set(Xe,Et-Be,this.get(we[Xe],Et))}return je}subMatrixColumn(we,Be,Le){if(Be===void 0&&(Be=0),Le===void 0&&(Le=this.rows-1),Be>Le||Be<0||Be>=this.rows||Le<0||Le>=this.rows)throw new RangeError("Argument out of range");let je=new St(Le-Be+1,we.length);for(let Xe=0;Xe<we.length;Xe++)for(let Et=Be;Et<=Le;Et++){if(we[Xe]<0||we[Xe]>=this.columns)throw new RangeError(`Column index out of range: ${we[Xe]}`);je.set(Et-Be,Xe,this.get(Et,we[Xe]))}return je}setSubMatrix(we,Be,Le){if(we=St.checkMatrix(we),we.isEmpty())return this;let je=Be+we.rows-1,Xe=Le+we.columns-1;Qe(this,Be,je,Le,Xe);for(let Et=0;Et<we.rows;Et++)for(let xt=0;xt<we.columns;xt++)this.set(Be+Et,Le+xt,we.get(Et,xt));return this}selection(we,Be){Ge(this,we),Je(this,Be);let Le=new St(we.length,Be.length);for(let je=0;je<we.length;je++){let Xe=we[je];for(let Et=0;Et<Be.length;Et++){let xt=Be[Et];Le.set(je,Et,this.get(Xe,xt))}}return Le}trace(){let we=Math.min(this.rows,this.columns),Be=0;for(let Le=0;Le<we;Le++)Be+=this.get(Le,Le);return Be}clone(){return this.constructor.copy(this,new St(this.rows,this.columns))}static copy(we,Be){for(const[Le,je,Xe]of we.entries())Be.set(Le,je,Xe);return Be}sum(we){switch(we){case"row":return ot(this);case"column":return at(this);case void 0:return ut(this);default:throw new Error(`invalid option: ${we}`)}}product(we){switch(we){case"row":return nt(this);case"column":return lt(this);case void 0:return yt(this);default:throw new Error(`invalid option: ${we}`)}}mean(we){const Be=this.sum(we);switch(we){case"row":{for(let Le=0;Le<this.rows;Le++)Be[Le]/=this.columns;return Be}case"column":{for(let Le=0;Le<this.columns;Le++)Be[Le]/=this.rows;return Be}case void 0:return Be/this.size;default:throw new Error(`invalid option: ${we}`)}}variance(we,Be={}){if(typeof we=="object"&&(Be=we,we=void 0),typeof Be!="object")throw new TypeError("options must be an object");const{unbiased:Le=!0,mean:je=this.mean(we)}=Be;if(typeof Le!="boolean")throw new TypeError("unbiased must be a boolean");switch(we){case"row":{if(!te.isAnyArray(je))throw new TypeError("mean must be an array");return ft(this,Le,je)}case"column":{if(!te.isAnyArray(je))throw new TypeError("mean must be an array");return ct(this,Le,je)}case void 0:{if(typeof je!="number")throw new TypeError("mean must be a number");return vt(this,Le,je)}default:throw new Error(`invalid option: ${we}`)}}standardDeviation(we,Be){typeof we=="object"&&(Be=we,we=void 0);const Le=this.variance(we,Be);if(we===void 0)return Math.sqrt(Le);for(let je=0;je<Le.length;je++)Le[je]=Math.sqrt(Le[je]);return Le}center(we,Be={}){if(typeof we=="object"&&(Be=we,we=void 0),typeof Be!="object")throw new TypeError("options must be an object");const{center:Le=this.mean(we)}=Be;switch(we){case"row":{if(!te.isAnyArray(Le))throw new TypeError("center must be an array");return Ut(this,Le),this}case"column":{if(!te.isAnyArray(Le))throw new TypeError("center must be an array");return Zt(this,Le),this}case void 0:{if(typeof Le!="number")throw new TypeError("center must be a number");return en(this,Le),this}default:throw new Error(`invalid option: ${we}`)}}scale(we,Be={}){if(typeof we=="object"&&(Be=we,we=void 0),typeof Be!="object")throw new TypeError("options must be an object");let Le=Be.scale;switch(we){case"row":{if(Le===void 0)Le=mn(this);else if(!te.isAnyArray(Le))throw new TypeError("scale must be an array");return Bt(this,Le),this}case"column":{if(Le===void 0)Le=tn(this);else if(!te.isAnyArray(Le))throw new TypeError("scale must be an array");return on(this,Le),this}case void 0:{if(Le===void 0)Le=Mn(this);else if(typeof Le!="number")throw new TypeError("scale must be a number");return Dn(this,Le),this}default:throw new Error(`invalid option: ${we}`)}}toString(we){return he(this,we)}[Symbol.iterator](){return this.entries()}*entries(){for(let we=0;we<this.rows;we++)for(let Be=0;Be<this.columns;Be++)yield[we,Be,this.get(we,Be)]}*values(){for(let we=0;we<this.rows;we++)for(let Be=0;Be<this.columns;Be++)yield this.get(we,Be)}}sn.prototype.klass="Matrix",typeof Symbol!="undefined"&&(sn.prototype[Symbol.for("nodejs.util.inspect.custom")]=fe);function rn(Ct,we){return Ct-we}function Ht(Ct){return Ct.every(we=>typeof we=="number")}sn.random=sn.rand,sn.randomInt=sn.randInt,sn.diagonal=sn.diag,sn.prototype.diagonal=sn.prototype.diag,sn.identity=sn.eye,sn.prototype.negate=sn.prototype.neg,sn.prototype.tensorProduct=sn.prototype.kroneckerProduct;const Tt=class gC extends sn{constructor(we,Be){if(super(),Pe(this,Ae),Me(this,"data"),gC.isMatrix(we))pe(this,Ae,Se).call(this,we.rows,we.columns),gC.copy(we,this);else if(Number.isInteger(we)&&we>=0)pe(this,Ae,Se).call(this,we,Be);else if(te.isAnyArray(we)){const Le=we;if(we=Le.length,Be=we?Le[0].length:0,typeof Be!="number")throw new TypeError("Data must be a 2D array with at least one element");this.data=[];for(let je=0;je<we;je++){if(Le[je].length!==Be)throw new RangeError("Inconsistent array dimensions");if(!Ht(Le[je]))throw new TypeError("Input data contains non-numeric values");this.data.push(Float64Array.from(Le[je]))}this.rows=we,this.columns=Be}else throw new TypeError("First argument must be a positive number or an array")}set(we,Be,Le){return this.data[we][Be]=Le,this}get(we,Be){return this.data[we][Be]}removeRow(we){return Ie(this,we),this.data.splice(we,1),this.rows-=1,this}addRow(we,Be){return Be===void 0&&(Be=we,we=this.rows),Ie(this,we,!0),Be=Float64Array.from(Re(this,Be)),this.data.splice(we,0,Be),this.rows+=1,this}removeColumn(we){Fe(this,we);for(let Be=0;Be<this.rows;Be++){const Le=new Float64Array(this.columns-1);for(let je=0;je<we;je++)Le[je]=this.data[Be][je];for(let je=we+1;je<this.columns;je++)Le[je-1]=this.data[Be][je];this.data[Be]=Le}return this.columns-=1,this}addColumn(we,Be){typeof Be=="undefined"&&(Be=we,we=this.columns),Fe(this,we,!0),Be=Ue(this,Be);for(let Le=0;Le<this.rows;Le++){const je=new Float64Array(this.columns+1);let Xe=0;for(;Xe<we;Xe++)je[Xe]=this.data[Le][Xe];for(je[Xe++]=Be[Le];Xe<this.columns+1;Xe++)je[Xe]=this.data[Le][Xe-1];this.data[Le]=je}return this.columns+=1,this}};Ae=new WeakSet,Se=function(Ct,we){if(this.data=[],Number.isInteger(we)&&we>=0)for(let Be=0;Be<Ct;Be++)this.data.push(new Float64Array(we));else throw new TypeError("nColumns must be a positive integer");this.rows=Ct,this.columns=we};let St=Tt;Ce(sn,St);const Qt=class vC extends sn{constructor(we){if(super(),Pe(this,ce),St.isMatrix(we)){if(!we.isSymmetric())throw new TypeError("not symmetric data");xe(this,ce,St.copy(we,new St(we.rows,we.rows)))}else if(Number.isInteger(we)&&we>=0)xe(this,ce,new St(we,we));else if(xe(this,ce,new St(we)),!this.isSymmetric())throw new TypeError("not symmetric data")}get size(){return Ee(this,ce).size}get rows(){return Ee(this,ce).rows}get columns(){return Ee(this,ce).columns}get diagonalSize(){return this.rows}static isSymmetricMatrix(we){return St.isMatrix(we)&&we.klassType==="SymmetricMatrix"}static zeros(we){return new this(we)}static ones(we){return new this(we).fill(1)}clone(){const we=new vC(this.diagonalSize);for(const[Be,Le,je]of this.upperRightEntries())we.set(Be,Le,je);return we}toMatrix(){return new St(this)}get(we,Be){return Ee(this,ce).get(we,Be)}set(we,Be,Le){return Ee(this,ce).set(we,Be,Le),Ee(this,ce).set(Be,we,Le),this}removeCross(we){return Ee(this,ce).removeRow(we),Ee(this,ce).removeColumn(we),this}addCross(we,Be){Be===void 0&&(Be=we,we=this.diagonalSize);const Le=Be.slice();return Le.splice(we,1),Ee(this,ce).addRow(we,Le),Ee(this,ce).addColumn(we,Be),this}applyMask(we){if(we.length!==this.diagonalSize)throw new RangeError("Mask size do not match with matrix size");const Be=[];for(const[Le,je]of we.entries())je||Be.push(Le);Be.reverse();for(const Le of Be)this.removeCross(Le);return this}toCompact(){const{diagonalSize:we}=this,Be=new Array(we*(we+1)/2);for(let Le=0,je=0,Xe=0;Xe<Be.length;Xe++)Be[Xe]=this.get(je,Le),++Le>=we&&(Le=++je);return Be}static fromCompact(we){const Be=we.length,Le=(Math.sqrt(8*Be+1)-1)/2;if(!Number.isInteger(Le))throw new TypeError(`This array is not a compact representation of a Symmetric Matrix, ${JSON.stringify(we)}`);const je=new vC(Le);for(let Xe=0,Et=0,xt=0;xt<Be;xt++)je.set(Xe,Et,we[xt]),++Xe>=Le&&(Xe=++Et);return je}*upperRightEntries(){for(let we=0,Be=0;we<this.diagonalSize;void 0){const Le=this.get(we,Be);yield[we,Be,Le],++Be>=this.diagonalSize&&(Be=++we)}}*upperRightValues(){for(let we=0,Be=0;we<this.diagonalSize;void 0)yield this.get(we,Be),++Be>=this.diagonalSize&&(Be=++we)}};ce=new WeakMap;let gt=Qt;gt.prototype.klassType="SymmetricMatrix";class bt extends gt{static isDistanceMatrix(we){return gt.isSymmetricMatrix(we)&&we.klassSubType==="DistanceMatrix"}constructor(we){if(super(we),!this.isDistance())throw new TypeError("Provided arguments do no produce a distance matrix")}set(we,Be,Le){return we===Be&&(Le=0),super.set(we,Be,Le)}addCross(we,Be){return Be===void 0&&(Be=we,we=this.diagonalSize),Be=Be.slice(),Be[we]=0,super.addCross(we,Be)}toSymmetricMatrix(){return new gt(this)}clone(){const we=new bt(this.diagonalSize);for(const[Be,Le,je]of this.upperRightEntries())Be!==Le&&we.set(Be,Le,je);return we}toCompact(){const{diagonalSize:we}=this,Be=(we-1)*we/2,Le=new Array(Be);for(let je=1,Xe=0,Et=0;Et<Le.length;Et++)Le[Et]=this.get(Xe,je),++je>=we&&(je=++Xe+1);return Le}static fromCompact(we){const Be=we.length;if(Be===0)return new this(0);const Le=(Math.sqrt(8*Be+1)+1)/2;if(!Number.isInteger(Le))throw new TypeError(`This array is not a compact representation of a DistanceMatrix, ${JSON.stringify(we)}`);const je=new this(Le);for(let Xe=1,Et=0,xt=0;xt<Be;xt++)je.set(Xe,Et,we[xt]),++Xe>=Le&&(Xe=++Et+1);return je}}bt.prototype.klassSubType="DistanceMatrix";class Yt extends sn{constructor(we,Be,Le){super(),this.matrix=we,this.rows=Be,this.columns=Le}}class kt extends Yt{constructor(we,Be){Fe(we,Be),super(we,we.rows,1),this.column=Be}set(we,Be,Le){return this.matrix.set(we,this.column,Le),this}get(we){return this.matrix.get(we,this.column)}}class Mt extends Yt{constructor(we,Be){Je(we,Be),super(we,we.rows,Be.length),this.columnIndices=Be}set(we,Be,Le){return this.matrix.set(we,this.columnIndices[Be],Le),this}get(we,Be){return this.matrix.get(we,this.columnIndices[Be])}}class ln extends Yt{constructor(we){super(we,we.rows,we.columns)}set(we,Be,Le){return this.matrix.set(we,this.columns-Be-1,Le),this}get(we,Be){return this.matrix.get(we,this.columns-Be-1)}}class zn extends Yt{constructor(we){super(we,we.rows,we.columns)}set(we,Be,Le){return this.matrix.set(this.rows-we-1,Be,Le),this}get(we,Be){return this.matrix.get(this.rows-we-1,Be)}}class Gn extends Yt{constructor(we,Be){Ie(we,Be),super(we,1,we.columns),this.row=Be}set(we,Be,Le){return this.matrix.set(this.row,Be,Le),this}get(we,Be){return this.matrix.get(this.row,Be)}}class Hn extends Yt{constructor(we,Be){Ge(we,Be),super(we,Be.length,we.columns),this.rowIndices=Be}set(we,Be,Le){return this.matrix.set(this.rowIndices[we],Be,Le),this}get(we,Be){return this.matrix.get(this.rowIndices[we],Be)}}class nr extends Yt{constructor(we,Be,Le){Ge(we,Be),Je(we,Le),super(we,Be.length,Le.length),this.rowIndices=Be,this.columnIndices=Le}set(we,Be,Le){return this.matrix.set(this.rowIndices[we],this.columnIndices[Be],Le),this}get(we,Be){return this.matrix.get(this.rowIndices[we],this.columnIndices[Be])}}class Xn extends Yt{constructor(we,Be,Le,je,Xe){Qe(we,Be,Le,je,Xe),super(we,Le-Be+1,Xe-je+1),this.startRow=Be,this.startColumn=je}set(we,Be,Le){return this.matrix.set(this.startRow+we,this.startColumn+Be,Le),this}get(we,Be){return this.matrix.get(this.startRow+we,this.startColumn+Be)}}class qt extends Yt{constructor(we){super(we,we.columns,we.rows)}set(we,Be,Le){return this.matrix.set(Be,we,Le),this}get(we,Be){return this.matrix.get(Be,we)}}class vn extends sn{constructor(we,Be={}){const{rows:Le=1}=Be;if(we.length%Le!==0)throw new Error("the data length is not divisible by the number of rows");super(),this.rows=Le,this.columns=we.length/Le,this.data=we}set(we,Be,Le){let je=this._calculateIndex(we,Be);return this.data[je]=Le,this}get(we,Be){let Le=this._calculateIndex(we,Be);return this.data[Le]}_calculateIndex(we,Be){return we*this.columns+Be}}class Un extends sn{constructor(we){super(),this.data=we,this.rows=we.length,this.columns=we[0].length}set(we,Be,Le){return this.data[we][Be]=Le,this}get(we,Be){return this.data[we][Be]}}function Ln(Ct,we){if(te.isAnyArray(Ct))return Ct[0]&&te.isAnyArray(Ct[0])?new Un(Ct):new vn(Ct,we);throw new Error("the argument is not an array")}class yr{constructor(we){we=Un.checkMatrix(we);let Be=we.clone(),Le=Be.rows,je=Be.columns,Xe=new Float64Array(Le),Et=1,xt,Jt,Vt,fn,dn,Vn,Pn,Jn,$n;for(xt=0;xt<Le;xt++)Xe[xt]=xt;for(Jn=new Float64Array(Le),Jt=0;Jt<je;Jt++){for(xt=0;xt<Le;xt++)Jn[xt]=Be.get(xt,Jt);for(xt=0;xt<Le;xt++){for($n=Math.min(xt,Jt),dn=0,Vt=0;Vt<$n;Vt++)dn+=Be.get(xt,Vt)*Jn[Vt];Jn[xt]-=dn,Be.set(xt,Jt,Jn[xt])}for(fn=Jt,xt=Jt+1;xt<Le;xt++)Math.abs(Jn[xt])>Math.abs(Jn[fn])&&(fn=xt);if(fn!==Jt){for(Vt=0;Vt<je;Vt++)Vn=Be.get(fn,Vt),Be.set(fn,Vt,Be.get(Jt,Vt)),Be.set(Jt,Vt,Vn);Pn=Xe[fn],Xe[fn]=Xe[Jt],Xe[Jt]=Pn,Et=-Et}if(Jt<Le&&Be.get(Jt,Jt)!==0)for(xt=Jt+1;xt<Le;xt++)Be.set(xt,Jt,Be.get(xt,Jt)/Be.get(Jt,Jt))}this.LU=Be,this.pivotVector=Xe,this.pivotSign=Et}isSingular(){let we=this.LU,Be=we.columns;for(let Le=0;Le<Be;Le++)if(we.get(Le,Le)===0)return!0;return!1}solve(we){we=St.checkMatrix(we);let Be=this.LU;if(Be.rows!==we.rows)throw new Error("Invalid matrix dimensions");if(this.isSingular())throw new Error("LU matrix is singular");let je=we.columns,Xe=we.subMatrixRow(this.pivotVector,0,je-1),Et=Be.columns,xt,Jt,Vt;for(Vt=0;Vt<Et;Vt++)for(xt=Vt+1;xt<Et;xt++)for(Jt=0;Jt<je;Jt++)Xe.set(xt,Jt,Xe.get(xt,Jt)-Xe.get(Vt,Jt)*Be.get(xt,Vt));for(Vt=Et-1;Vt>=0;Vt--){for(Jt=0;Jt<je;Jt++)Xe.set(Vt,Jt,Xe.get(Vt,Jt)/Be.get(Vt,Vt));for(xt=0;xt<Vt;xt++)for(Jt=0;Jt<je;Jt++)Xe.set(xt,Jt,Xe.get(xt,Jt)-Xe.get(Vt,Jt)*Be.get(xt,Vt))}return Xe}get determinant(){let we=this.LU;if(!we.isSquare())throw new Error("Matrix must be square");let Be=this.pivotSign,Le=we.columns;for(let je=0;je<Le;je++)Be*=we.get(je,je);return Be}get lowerTriangularMatrix(){let we=this.LU,Be=we.rows,Le=we.columns,je=new St(Be,Le);for(let Xe=0;Xe<Be;Xe++)for(let Et=0;Et<Le;Et++)Xe>Et?je.set(Xe,Et,we.get(Xe,Et)):Xe===Et?je.set(Xe,Et,1):je.set(Xe,Et,0);return je}get upperTriangularMatrix(){let we=this.LU,Be=we.rows,Le=we.columns,je=new St(Be,Le);for(let Xe=0;Xe<Be;Xe++)for(let Et=0;Et<Le;Et++)Xe<=Et?je.set(Xe,Et,we.get(Xe,Et)):je.set(Xe,Et,0);return je}get pivotPermutationVector(){return Array.from(this.pivotVector)}}function kr(Ct,we){let Be=0;return Math.abs(Ct)>Math.abs(we)?(Be=we/Ct,Math.abs(Ct)*Math.sqrt(1+Be*Be)):we!==0?(Be=Ct/we,Math.abs(we)*Math.sqrt(1+Be*Be)):0}class Dr{constructor(we){we=Un.checkMatrix(we);let Be=we.clone(),Le=we.rows,je=we.columns,Xe=new Float64Array(je),Et,xt,Jt,Vt;for(Jt=0;Jt<je;Jt++){let fn=0;for(Et=Jt;Et<Le;Et++)fn=kr(fn,Be.get(Et,Jt));if(fn!==0){for(Be.get(Jt,Jt)<0&&(fn=-fn),Et=Jt;Et<Le;Et++)Be.set(Et,Jt,Be.get(Et,Jt)/fn);for(Be.set(Jt,Jt,Be.get(Jt,Jt)+1),xt=Jt+1;xt<je;xt++){for(Vt=0,Et=Jt;Et<Le;Et++)Vt+=Be.get(Et,Jt)*Be.get(Et,xt);for(Vt=-Vt/Be.get(Jt,Jt),Et=Jt;Et<Le;Et++)Be.set(Et,xt,Be.get(Et,xt)+Vt*Be.get(Et,Jt))}}Xe[Jt]=-fn}this.QR=Be,this.Rdiag=Xe}solve(we){we=St.checkMatrix(we);let Be=this.QR,Le=Be.rows;if(we.rows!==Le)throw new Error("Matrix row dimensions must agree");if(!this.isFullRank())throw new Error("Matrix is rank deficient");let je=we.columns,Xe=we.clone(),Et=Be.columns,xt,Jt,Vt,fn;for(Vt=0;Vt<Et;Vt++)for(Jt=0;Jt<je;Jt++){for(fn=0,xt=Vt;xt<Le;xt++)fn+=Be.get(xt,Vt)*Xe.get(xt,Jt);for(fn=-fn/Be.get(Vt,Vt),xt=Vt;xt<Le;xt++)Xe.set(xt,Jt,Xe.get(xt,Jt)+fn*Be.get(xt,Vt))}for(Vt=Et-1;Vt>=0;Vt--){for(Jt=0;Jt<je;Jt++)Xe.set(Vt,Jt,Xe.get(Vt,Jt)/this.Rdiag[Vt]);for(xt=0;xt<Vt;xt++)for(Jt=0;Jt<je;Jt++)Xe.set(xt,Jt,Xe.get(xt,Jt)-Xe.get(Vt,Jt)*Be.get(xt,Vt))}return Xe.subMatrix(0,Et-1,0,je-1)}isFullRank(){let we=this.QR.columns;for(let Be=0;Be<we;Be++)if(this.Rdiag[Be]===0)return!1;return!0}get upperTriangularMatrix(){let we=this.QR,Be=we.columns,Le=new St(Be,Be),je,Xe;for(je=0;je<Be;je++)for(Xe=0;Xe<Be;Xe++)je<Xe?Le.set(je,Xe,we.get(je,Xe)):je===Xe?Le.set(je,Xe,this.Rdiag[je]):Le.set(je,Xe,0);return Le}get orthogonalMatrix(){let we=this.QR,Be=we.rows,Le=we.columns,je=new St(Be,Le),Xe,Et,xt,Jt;for(xt=Le-1;xt>=0;xt--){for(Xe=0;Xe<Be;Xe++)je.set(Xe,xt,0);for(je.set(xt,xt,1),Et=xt;Et<Le;Et++)if(we.get(xt,xt)!==0){for(Jt=0,Xe=xt;Xe<Be;Xe++)Jt+=we.get(Xe,xt)*je.get(Xe,Et);for(Jt=-Jt/we.get(xt,xt),Xe=xt;Xe<Be;Xe++)je.set(Xe,Et,je.get(Xe,Et)+Jt*we.get(Xe,xt))}}return je}}class Gr{constructor(we,Be={}){if(we=Un.checkMatrix(we),we.isEmpty())throw new Error("Matrix must be non-empty");let Le=we.rows,je=we.columns;const{computeLeftSingularVectors:Xe=!0,computeRightSingularVectors:Et=!0,autoTranspose:xt=!1}=Be;let Jt=!!Xe,Vt=!!Et,fn=!1,dn;if(Le<je)if(!xt)dn=we.clone(),console.warn("Computing SVD on a matrix with more columns than rows. Consider enabling autoTranspose");else{dn=we.transpose(),Le=dn.rows,je=dn.columns,fn=!0;let On=Jt;Jt=Vt,Vt=On}else dn=we.clone();let Vn=Math.min(Le,je),Pn=Math.min(Le+1,je),Jn=new Float64Array(Pn),$n=new St(Le,Vn),hr=new St(je,je),hn=new Float64Array(je),an=new Float64Array(Le),In=new Float64Array(Pn);for(let On=0;On<Pn;On++)In[On]=On;let jn=Math.min(Le-1,je),cr=Math.max(0,Math.min(je-2,Le)),or=Math.max(jn,cr);for(let On=0;On<or;On++){if(On<jn){Jn[On]=0;for(let vr=On;vr<Le;vr++)Jn[On]=kr(Jn[On],dn.get(vr,On));if(Jn[On]!==0){dn.get(On,On)<0&&(Jn[On]=-Jn[On]);for(let vr=On;vr<Le;vr++)dn.set(vr,On,dn.get(vr,On)/Jn[On]);dn.set(On,On,dn.get(On,On)+1)}Jn[On]=-Jn[On]}for(let vr=On+1;vr<je;vr++){if(On<jn&&Jn[On]!==0){let Yn=0;for(let jr=On;jr<Le;jr++)Yn+=dn.get(jr,On)*dn.get(jr,vr);Yn=-Yn/dn.get(On,On);for(let jr=On;jr<Le;jr++)dn.set(jr,vr,dn.get(jr,vr)+Yn*dn.get(jr,On))}hn[vr]=dn.get(On,vr)}if(Jt&&On<jn)for(let vr=On;vr<Le;vr++)$n.set(vr,On,dn.get(vr,On));if(On<cr){hn[On]=0;for(let vr=On+1;vr<je;vr++)hn[On]=kr(hn[On],hn[vr]);if(hn[On]!==0){hn[On+1]<0&&(hn[On]=0-hn[On]);for(let vr=On+1;vr<je;vr++)hn[vr]/=hn[On];hn[On+1]+=1}if(hn[On]=-hn[On],On+1<Le&&hn[On]!==0){for(let vr=On+1;vr<Le;vr++)an[vr]=0;for(let vr=On+1;vr<Le;vr++)for(let Yn=On+1;Yn<je;Yn++)an[vr]+=hn[Yn]*dn.get(vr,Yn);for(let vr=On+1;vr<je;vr++){let Yn=-hn[vr]/hn[On+1];for(let jr=On+1;jr<Le;jr++)dn.set(jr,vr,dn.get(jr,vr)+Yn*an[jr])}}if(Vt)for(let vr=On+1;vr<je;vr++)hr.set(vr,On,hn[vr])}}let Qn=Math.min(je,Le+1);if(jn<je&&(Jn[jn]=dn.get(jn,jn)),Le<Qn&&(Jn[Qn-1]=0),cr+1<Qn&&(hn[cr]=dn.get(cr,Qn-1)),hn[Qn-1]=0,Jt){for(let On=jn;On<Vn;On++){for(let vr=0;vr<Le;vr++)$n.set(vr,On,0);$n.set(On,On,1)}for(let On=jn-1;On>=0;On--)if(Jn[On]!==0){for(let vr=On+1;vr<Vn;vr++){let Yn=0;for(let jr=On;jr<Le;jr++)Yn+=$n.get(jr,On)*$n.get(jr,vr);Yn=-Yn/$n.get(On,On);for(let jr=On;jr<Le;jr++)$n.set(jr,vr,$n.get(jr,vr)+Yn*$n.get(jr,On))}for(let vr=On;vr<Le;vr++)$n.set(vr,On,-$n.get(vr,On));$n.set(On,On,1+$n.get(On,On));for(let vr=0;vr<On-1;vr++)$n.set(vr,On,0)}else{for(let vr=0;vr<Le;vr++)$n.set(vr,On,0);$n.set(On,On,1)}}if(Vt)for(let On=je-1;On>=0;On--){if(On<cr&&hn[On]!==0)for(let vr=On+1;vr<je;vr++){let Yn=0;for(let jr=On+1;jr<je;jr++)Yn+=hr.get(jr,On)*hr.get(jr,vr);Yn=-Yn/hr.get(On+1,On);for(let jr=On+1;jr<je;jr++)hr.set(jr,vr,hr.get(jr,vr)+Yn*hr.get(jr,On))}for(let vr=0;vr<je;vr++)hr.set(vr,On,0);hr.set(On,On,1)}let dr=Qn-1,xr=Number.EPSILON;for(;Qn>0;){let On,vr;for(On=Qn-2;On>=-1&&On!==-1;On--){const Yn=Number.MIN_VALUE+xr*Math.abs(Jn[On]+Math.abs(Jn[On+1]));if(Math.abs(hn[On])<=Yn||Number.isNaN(hn[On])){hn[On]=0;break}}if(On===Qn-2)vr=4;else{let Yn;for(Yn=Qn-1;Yn>=On&&Yn!==On;Yn--){let jr=(Yn!==Qn?Math.abs(hn[Yn]):0)+(Yn!==On+1?Math.abs(hn[Yn-1]):0);if(Math.abs(Jn[Yn])<=xr*jr){Jn[Yn]=0;break}}Yn===On?vr=3:Yn===Qn-1?vr=1:(vr=2,On=Yn)}switch(On++,vr){case 1:{let Yn=hn[Qn-2];hn[Qn-2]=0;for(let jr=Qn-2;jr>=On;jr--){let ri=kr(Jn[jr],Yn),vi=Jn[jr]/ri,ci=Yn/ri;if(Jn[jr]=ri,jr!==On&&(Yn=-ci*hn[jr-1],hn[jr-1]=vi*hn[jr-1]),Vt)for(let Kr=0;Kr<je;Kr++)ri=vi*hr.get(Kr,jr)+ci*hr.get(Kr,Qn-1),hr.set(Kr,Qn-1,-ci*hr.get(Kr,jr)+vi*hr.get(Kr,Qn-1)),hr.set(Kr,jr,ri)}break}case 2:{let Yn=hn[On-1];hn[On-1]=0;for(let jr=On;jr<Qn;jr++){let ri=kr(Jn[jr],Yn),vi=Jn[jr]/ri,ci=Yn/ri;if(Jn[jr]=ri,Yn=-ci*hn[jr],hn[jr]=vi*hn[jr],Jt)for(let Kr=0;Kr<Le;Kr++)ri=vi*$n.get(Kr,jr)+ci*$n.get(Kr,On-1),$n.set(Kr,On-1,-ci*$n.get(Kr,jr)+vi*$n.get(Kr,On-1)),$n.set(Kr,jr,ri)}break}case 3:{const Yn=Math.max(Math.abs(Jn[Qn-1]),Math.abs(Jn[Qn-2]),Math.abs(hn[Qn-2]),Math.abs(Jn[On]),Math.abs(hn[On])),jr=Jn[Qn-1]/Yn,ri=Jn[Qn-2]/Yn,vi=hn[Qn-2]/Yn,ci=Jn[On]/Yn,Kr=hn[On]/Yn,Ia=((ri+jr)*(ri-jr)+vi*vi)/2,Ta=jr*vi*(jr*vi);let la=0;(Ia!==0||Ta!==0)&&(Ia<0?la=0-Math.sqrt(Ia*Ia+Ta):la=Math.sqrt(Ia*Ia+Ta),la=Ta/(Ia+la));let ei=(ci+jr)*(ci-jr)+la,Wi=ci*Kr;for(let za=On;za<Qn-1;za++){let _i=kr(ei,Wi);_i===0&&(_i=Number.MIN_VALUE);let $i=ei/_i,Uo=Wi/_i;if(za!==On&&(hn[za-1]=_i),ei=$i*Jn[za]+Uo*hn[za],hn[za]=$i*hn[za]-Uo*Jn[za],Wi=Uo*Jn[za+1],Jn[za+1]=$i*Jn[za+1],Vt)for(let yo=0;yo<je;yo++)_i=$i*hr.get(yo,za)+Uo*hr.get(yo,za+1),hr.set(yo,za+1,-Uo*hr.get(yo,za)+$i*hr.get(yo,za+1)),hr.set(yo,za,_i);if(_i=kr(ei,Wi),_i===0&&(_i=Number.MIN_VALUE),$i=ei/_i,Uo=Wi/_i,Jn[za]=_i,ei=$i*hn[za]+Uo*Jn[za+1],Jn[za+1]=-Uo*hn[za]+$i*Jn[za+1],Wi=Uo*hn[za+1],hn[za+1]=$i*hn[za+1],Jt&&za<Le-1)for(let yo=0;yo<Le;yo++)_i=$i*$n.get(yo,za)+Uo*$n.get(yo,za+1),$n.set(yo,za+1,-Uo*$n.get(yo,za)+$i*$n.get(yo,za+1)),$n.set(yo,za,_i)}hn[Qn-2]=ei;break}case 4:{if(Jn[On]<=0&&(Jn[On]=Jn[On]<0?-Jn[On]:0,Vt))for(let Yn=0;Yn<=dr;Yn++)hr.set(Yn,On,-hr.get(Yn,On));for(;On<dr&&!(Jn[On]>=Jn[On+1]);){let Yn=Jn[On];if(Jn[On]=Jn[On+1],Jn[On+1]=Yn,Vt&&On<je-1)for(let jr=0;jr<je;jr++)Yn=hr.get(jr,On+1),hr.set(jr,On+1,hr.get(jr,On)),hr.set(jr,On,Yn);if(Jt&&On<Le-1)for(let jr=0;jr<Le;jr++)Yn=$n.get(jr,On+1),$n.set(jr,On+1,$n.get(jr,On)),$n.set(jr,On,Yn);On++}Qn--;break}}}if(fn){let On=hr;hr=$n,$n=On}this.m=Le,this.n=je,this.s=Jn,this.U=$n,this.V=hr}solve(we){let Be=we,Le=this.threshold,je=this.s.length,Xe=St.zeros(je,je);for(let Vn=0;Vn<je;Vn++)Math.abs(this.s[Vn])<=Le?Xe.set(Vn,Vn,0):Xe.set(Vn,Vn,1/this.s[Vn]);let Et=this.U,xt=this.rightSingularVectors,Jt=xt.mmul(Xe),Vt=xt.rows,fn=Et.rows,dn=St.zeros(Vt,fn);for(let Vn=0;Vn<Vt;Vn++)for(let Pn=0;Pn<fn;Pn++){let Jn=0;for(let $n=0;$n<je;$n++)Jn+=Jt.get(Vn,$n)*Et.get(Pn,$n);dn.set(Vn,Pn,Jn)}return dn.mmul(Be)}solveForDiagonal(we){return this.solve(St.diag(we))}inverse(){let we=this.V,Be=this.threshold,Le=we.rows,je=we.columns,Xe=new St(Le,this.s.length);for(let fn=0;fn<Le;fn++)for(let dn=0;dn<je;dn++)Math.abs(this.s[dn])>Be&&Xe.set(fn,dn,we.get(fn,dn)/this.s[dn]);let Et=this.U,xt=Et.rows,Jt=Et.columns,Vt=new St(Le,xt);for(let fn=0;fn<Le;fn++)for(let dn=0;dn<xt;dn++){let Vn=0;for(let Pn=0;Pn<Jt;Pn++)Vn+=Xe.get(fn,Pn)*Et.get(dn,Pn);Vt.set(fn,dn,Vn)}return Vt}get condition(){return this.s[0]/this.s[Math.min(this.m,this.n)-1]}get norm2(){return this.s[0]}get rank(){let we=Math.max(this.m,this.n)*this.s[0]*Number.EPSILON,Be=0,Le=this.s;for(let je=0,Xe=Le.length;je<Xe;je++)Le[je]>we&&Be++;return Be}get diagonal(){return Array.from(this.s)}get threshold(){return Number.EPSILON/2*Math.max(this.m,this.n)*this.s[0]}get leftSingularVectors(){return this.U}get rightSingularVectors(){return this.V}get diagonalMatrix(){return St.diag(this.s)}}function Ma(Ct,we=!1){return Ct=Un.checkMatrix(Ct),we?new Gr(Ct).inverse():Ja(Ct,St.eye(Ct.rows))}function Ja(Ct,we,Be=!1){return Ct=Un.checkMatrix(Ct),we=Un.checkMatrix(we),Be?new Gr(Ct).solve(we):Ct.isSquare()?new yr(Ct).solve(we):new Dr(Ct).solve(we)}function Na(Ct){if(Ct=St.checkMatrix(Ct),Ct.isSquare()){if(Ct.columns===0)return 1;let we,Be,Le,je;if(Ct.columns===2)return we=Ct.get(0,0),Be=Ct.get(0,1),Le=Ct.get(1,0),je=Ct.get(1,1),we*je-Be*Le;if(Ct.columns===3){let Xe,Et,xt;return Xe=new nr(Ct,[1,2],[1,2]),Et=new nr(Ct,[1,2],[0,2]),xt=new nr(Ct,[1,2],[0,1]),we=Ct.get(0,0),Be=Ct.get(0,1),Le=Ct.get(0,2),we*Na(Xe)-Be*Na(Et)+Le*Na(xt)}else return new yr(Ct).determinant}else throw Error("determinant can only be calculated for a square matrix")}function Da(Ct,we){let Be=[];for(let Le=0;Le<Ct;Le++)Le!==we&&Be.push(Le);return Be}function Di(Ct,we,Be,Le=1e-9,je=1e-9){if(Ct>je)return new Array(we.rows+1).fill(0);{let Xe=we.addRow(Be,[0]);for(let Et=0;Et<Xe.rows;Et++)Math.abs(Xe.get(Et,0))<Le&&Xe.set(Et,0,0);return Xe.to1DArray()}}function _a(Ct,we={}){const{thresholdValue:Be=1e-9,thresholdError:Le=1e-9}=we;Ct=St.checkMatrix(Ct);let je=Ct.rows,Xe=new St(je,je);for(let Et=0;Et<je;Et++){let xt=St.columnVector(Ct.getRow(Et)),Jt=Ct.subMatrixRow(Da(je,Et)).transpose(),fn=new Gr(Jt).solve(xt),dn=St.sub(xt,Jt.mmul(fn)).abs().max();Xe.setRow(Et,Di(dn,fn,Et,Be,Le))}return Xe}function Vr(Ct,we=Number.EPSILON){if(Ct=St.checkMatrix(Ct),Ct.isEmpty())return Ct.transpose();let Be=new Gr(Ct,{autoTranspose:!0}),Le=Be.leftSingularVectors,je=Be.rightSingularVectors,Xe=Be.diagonal;for(let Et=0;Et<Xe.length;Et++)Math.abs(Xe[Et])>we?Xe[Et]=1/Xe[Et]:Xe[Et]=0;return je.mmul(St.diag(Xe).mmul(Le.transpose()))}function Ya(Ct,we=Ct,Be={}){Ct=new St(Ct);let Le=!1;if(typeof we=="object"&&!St.isMatrix(we)&&!te.isAnyArray(we)?(Be=we,we=Ct,Le=!0):we=new St(we),Ct.rows!==we.rows)throw new TypeError("Both matrices must have the same number of rows");const{center:je=!0}=Be;je&&(Ct=Ct.center("column"),Le||(we=we.center("column")));const Xe=Ct.transpose().mmul(we);for(let Et=0;Et<Xe.rows;Et++)for(let xt=0;xt<Xe.columns;xt++)Xe.set(Et,xt,Xe.get(Et,xt)*(1/(Ct.rows-1)));return Xe}function ui(Ct,we=Ct,Be={}){Ct=new St(Ct);let Le=!1;if(typeof we=="object"&&!St.isMatrix(we)&&!te.isAnyArray(we)?(Be=we,we=Ct,Le=!0):we=new St(we),Ct.rows!==we.rows)throw new TypeError("Both matrices must have the same number of rows");const{center:je=!0,scale:Xe=!0}=Be;je&&(Ct.center("column"),Le||we.center("column")),Xe&&(Ct.scale("column"),Le||we.scale("column"));const Et=Ct.standardDeviation("column",{unbiased:!0}),xt=Le?Et:we.standardDeviation("column",{unbiased:!0}),Jt=Ct.transpose().mmul(we);for(let Vt=0;Vt<Jt.rows;Vt++)for(let fn=0;fn<Jt.columns;fn++)Jt.set(Vt,fn,Jt.get(Vt,fn)*(1/(Et[Vt]*xt[fn]))*(1/(Ct.rows-1)));return Jt}class mr{constructor(we,Be={}){const{assumeSymmetric:Le=!1}=Be;if(we=Un.checkMatrix(we),!we.isSquare())throw new Error("Matrix is not a square matrix");if(we.isEmpty())throw new Error("Matrix must be non-empty");let je=we.columns,Xe=new St(je,je),Et=new Float64Array(je),xt=new Float64Array(je),Jt=we,Vt,fn,dn=!1;if(Le?dn=!0:dn=we.isSymmetric(),dn){for(Vt=0;Vt<je;Vt++)for(fn=0;fn<je;fn++)Xe.set(Vt,fn,Jt.get(Vt,fn));Er(je,xt,Et,Xe),ba(je,xt,Et,Xe)}else{let Vn=new St(je,je),Pn=new Float64Array(je);for(fn=0;fn<je;fn++)for(Vt=0;Vt<je;Vt++)Vn.set(Vt,fn,Jt.get(Vt,fn));Fn(je,Vn,Pn,Xe),gr(je,xt,Et,Xe,Vn)}this.n=je,this.e=xt,this.d=Et,this.V=Xe}get realEigenvalues(){return Array.from(this.d)}get imaginaryEigenvalues(){return Array.from(this.e)}get eigenvectorMatrix(){return this.V}get diagonalMatrix(){let we=this.n,Be=this.e,Le=this.d,je=new St(we,we),Xe,Et;for(Xe=0;Xe<we;Xe++){for(Et=0;Et<we;Et++)je.set(Xe,Et,0);je.set(Xe,Xe,Le[Xe]),Be[Xe]>0?je.set(Xe,Xe+1,Be[Xe]):Be[Xe]<0&&je.set(Xe,Xe-1,Be[Xe])}return je}}function Er(Ct,we,Be,Le){let je,Xe,Et,xt,Jt,Vt,fn,dn;for(Jt=0;Jt<Ct;Jt++)Be[Jt]=Le.get(Ct-1,Jt);for(xt=Ct-1;xt>0;xt--){for(dn=0,Et=0,Vt=0;Vt<xt;Vt++)dn=dn+Math.abs(Be[Vt]);if(dn===0)for(we[xt]=Be[xt-1],Jt=0;Jt<xt;Jt++)Be[Jt]=Le.get(xt-1,Jt),Le.set(xt,Jt,0),Le.set(Jt,xt,0);else{for(Vt=0;Vt<xt;Vt++)Be[Vt]/=dn,Et+=Be[Vt]*Be[Vt];for(je=Be[xt-1],Xe=Math.sqrt(Et),je>0&&(Xe=-Xe),we[xt]=dn*Xe,Et=Et-je*Xe,Be[xt-1]=je-Xe,Jt=0;Jt<xt;Jt++)we[Jt]=0;for(Jt=0;Jt<xt;Jt++){for(je=Be[Jt],Le.set(Jt,xt,je),Xe=we[Jt]+Le.get(Jt,Jt)*je,Vt=Jt+1;Vt<=xt-1;Vt++)Xe+=Le.get(Vt,Jt)*Be[Vt],we[Vt]+=Le.get(Vt,Jt)*je;we[Jt]=Xe}for(je=0,Jt=0;Jt<xt;Jt++)we[Jt]/=Et,je+=we[Jt]*Be[Jt];for(fn=je/(Et+Et),Jt=0;Jt<xt;Jt++)we[Jt]-=fn*Be[Jt];for(Jt=0;Jt<xt;Jt++){for(je=Be[Jt],Xe=we[Jt],Vt=Jt;Vt<=xt-1;Vt++)Le.set(Vt,Jt,Le.get(Vt,Jt)-(je*we[Vt]+Xe*Be[Vt]));Be[Jt]=Le.get(xt-1,Jt),Le.set(xt,Jt,0)}}Be[xt]=Et}for(xt=0;xt<Ct-1;xt++){if(Le.set(Ct-1,xt,Le.get(xt,xt)),Le.set(xt,xt,1),Et=Be[xt+1],Et!==0){for(Vt=0;Vt<=xt;Vt++)Be[Vt]=Le.get(Vt,xt+1)/Et;for(Jt=0;Jt<=xt;Jt++){for(Xe=0,Vt=0;Vt<=xt;Vt++)Xe+=Le.get(Vt,xt+1)*Le.get(Vt,Jt);for(Vt=0;Vt<=xt;Vt++)Le.set(Vt,Jt,Le.get(Vt,Jt)-Xe*Be[Vt])}}for(Vt=0;Vt<=xt;Vt++)Le.set(Vt,xt+1,0)}for(Jt=0;Jt<Ct;Jt++)Be[Jt]=Le.get(Ct-1,Jt),Le.set(Ct-1,Jt,0);Le.set(Ct-1,Ct-1,1),we[0]=0}function ba(Ct,we,Be,Le){let je,Xe,Et,xt,Jt,Vt,fn,dn,Vn,Pn,Jn,$n,hr,hn,an,In;for(Et=1;Et<Ct;Et++)we[Et-1]=we[Et];we[Ct-1]=0;let jn=0,cr=0,or=Number.EPSILON;for(Vt=0;Vt<Ct;Vt++){for(cr=Math.max(cr,Math.abs(Be[Vt])+Math.abs(we[Vt])),fn=Vt;fn<Ct&&!(Math.abs(we[fn])<=or*cr);)fn++;if(fn>Vt)do{for(je=Be[Vt],dn=(Be[Vt+1]-je)/(2*we[Vt]),Vn=kr(dn,1),dn<0&&(Vn=-Vn),Be[Vt]=we[Vt]/(dn+Vn),Be[Vt+1]=we[Vt]*(dn+Vn),Pn=Be[Vt+1],Xe=je-Be[Vt],Et=Vt+2;Et<Ct;Et++)Be[Et]-=Xe;for(jn=jn+Xe,dn=Be[fn],Jn=1,$n=Jn,hr=Jn,hn=we[Vt+1],an=0,In=0,Et=fn-1;Et>=Vt;Et--)for(hr=$n,$n=Jn,In=an,je=Jn*we[Et],Xe=Jn*dn,Vn=kr(dn,we[Et]),we[Et+1]=an*Vn,an=we[Et]/Vn,Jn=dn/Vn,dn=Jn*Be[Et]-an*je,Be[Et+1]=Xe+an*(Jn*je+an*Be[Et]),Jt=0;Jt<Ct;Jt++)Xe=Le.get(Jt,Et+1),Le.set(Jt,Et+1,an*Le.get(Jt,Et)+Jn*Xe),Le.set(Jt,Et,Jn*Le.get(Jt,Et)-an*Xe);dn=-an*In*hr*hn*we[Vt]/Pn,we[Vt]=an*dn,Be[Vt]=Jn*dn}while(Math.abs(we[Vt])>or*cr);Be[Vt]=Be[Vt]+jn,we[Vt]=0}for(Et=0;Et<Ct-1;Et++){for(Jt=Et,dn=Be[Et],xt=Et+1;xt<Ct;xt++)Be[xt]<dn&&(Jt=xt,dn=Be[xt]);if(Jt!==Et)for(Be[Jt]=Be[Et],Be[Et]=dn,xt=0;xt<Ct;xt++)dn=Le.get(xt,Et),Le.set(xt,Et,Le.get(xt,Jt)),Le.set(xt,Jt,dn)}}function Fn(Ct,we,Be,Le){let je=0,Xe=Ct-1,Et,xt,Jt,Vt,fn,dn,Vn;for(dn=je+1;dn<=Xe-1;dn++){for(Vn=0,Vt=dn;Vt<=Xe;Vt++)Vn=Vn+Math.abs(we.get(Vt,dn-1));if(Vn!==0){for(Jt=0,Vt=Xe;Vt>=dn;Vt--)Be[Vt]=we.get(Vt,dn-1)/Vn,Jt+=Be[Vt]*Be[Vt];for(xt=Math.sqrt(Jt),Be[dn]>0&&(xt=-xt),Jt=Jt-Be[dn]*xt,Be[dn]=Be[dn]-xt,fn=dn;fn<Ct;fn++){for(Et=0,Vt=Xe;Vt>=dn;Vt--)Et+=Be[Vt]*we.get(Vt,fn);for(Et=Et/Jt,Vt=dn;Vt<=Xe;Vt++)we.set(Vt,fn,we.get(Vt,fn)-Et*Be[Vt])}for(Vt=0;Vt<=Xe;Vt++){for(Et=0,fn=Xe;fn>=dn;fn--)Et+=Be[fn]*we.get(Vt,fn);for(Et=Et/Jt,fn=dn;fn<=Xe;fn++)we.set(Vt,fn,we.get(Vt,fn)-Et*Be[fn])}Be[dn]=Vn*Be[dn],we.set(dn,dn-1,Vn*xt)}}for(Vt=0;Vt<Ct;Vt++)for(fn=0;fn<Ct;fn++)Le.set(Vt,fn,Vt===fn?1:0);for(dn=Xe-1;dn>=je+1;dn--)if(we.get(dn,dn-1)!==0){for(Vt=dn+1;Vt<=Xe;Vt++)Be[Vt]=we.get(Vt,dn-1);for(fn=dn;fn<=Xe;fn++){for(xt=0,Vt=dn;Vt<=Xe;Vt++)xt+=Be[Vt]*Le.get(Vt,fn);for(xt=xt/Be[dn]/we.get(dn,dn-1),Vt=dn;Vt<=Xe;Vt++)Le.set(Vt,fn,Le.get(Vt,fn)+xt*Be[Vt])}}}function gr(Ct,we,Be,Le,je){let Xe=Ct-1,Et=0,xt=Ct-1,Jt=Number.EPSILON,Vt=0,fn=0,dn=0,Vn=0,Pn=0,Jn=0,$n=0,hr=0,hn,an,In,jn,cr,or,Qn,dr,xr,On,vr,Yn,jr,ri,vi;for(hn=0;hn<Ct;hn++)for((hn<Et||hn>xt)&&(Be[hn]=je.get(hn,hn),we[hn]=0),an=Math.max(hn-1,0);an<Ct;an++)fn=fn+Math.abs(je.get(hn,an));for(;Xe>=Et;){for(jn=Xe;jn>Et&&(Jn=Math.abs(je.get(jn-1,jn-1))+Math.abs(je.get(jn,jn)),Jn===0&&(Jn=fn),!(Math.abs(je.get(jn,jn-1))<Jt*Jn));)jn--;if(jn===Xe)je.set(Xe,Xe,je.get(Xe,Xe)+Vt),Be[Xe]=je.get(Xe,Xe),we[Xe]=0,Xe--,hr=0;else if(jn===Xe-1){if(Qn=je.get(Xe,Xe-1)*je.get(Xe-1,Xe),dn=(je.get(Xe-1,Xe-1)-je.get(Xe,Xe))/2,Vn=dn*dn+Qn,$n=Math.sqrt(Math.abs(Vn)),je.set(Xe,Xe,je.get(Xe,Xe)+Vt),je.set(Xe-1,Xe-1,je.get(Xe-1,Xe-1)+Vt),dr=je.get(Xe,Xe),Vn>=0){for($n=dn>=0?dn+$n:dn-$n,Be[Xe-1]=dr+$n,Be[Xe]=Be[Xe-1],$n!==0&&(Be[Xe]=dr-Qn/$n),we[Xe-1]=0,we[Xe]=0,dr=je.get(Xe,Xe-1),Jn=Math.abs(dr)+Math.abs($n),dn=dr/Jn,Vn=$n/Jn,Pn=Math.sqrt(dn*dn+Vn*Vn),dn=dn/Pn,Vn=Vn/Pn,an=Xe-1;an<Ct;an++)$n=je.get(Xe-1,an),je.set(Xe-1,an,Vn*$n+dn*je.get(Xe,an)),je.set(Xe,an,Vn*je.get(Xe,an)-dn*$n);for(hn=0;hn<=Xe;hn++)$n=je.get(hn,Xe-1),je.set(hn,Xe-1,Vn*$n+dn*je.get(hn,Xe)),je.set(hn,Xe,Vn*je.get(hn,Xe)-dn*$n);for(hn=Et;hn<=xt;hn++)$n=Le.get(hn,Xe-1),Le.set(hn,Xe-1,Vn*$n+dn*Le.get(hn,Xe)),Le.set(hn,Xe,Vn*Le.get(hn,Xe)-dn*$n)}else Be[Xe-1]=dr+dn,Be[Xe]=dr+dn,we[Xe-1]=$n,we[Xe]=-$n;Xe=Xe-2,hr=0}else{if(dr=je.get(Xe,Xe),xr=0,Qn=0,jn<Xe&&(xr=je.get(Xe-1,Xe-1),Qn=je.get(Xe,Xe-1)*je.get(Xe-1,Xe)),hr===10){for(Vt+=dr,hn=Et;hn<=Xe;hn++)je.set(hn,hn,je.get(hn,hn)-dr);Jn=Math.abs(je.get(Xe,Xe-1))+Math.abs(je.get(Xe-1,Xe-2)),dr=xr=.75*Jn,Qn=-.4375*Jn*Jn}if(hr===30&&(Jn=(xr-dr)/2,Jn=Jn*Jn+Qn,Jn>0)){for(Jn=Math.sqrt(Jn),xr<dr&&(Jn=-Jn),Jn=dr-Qn/((xr-dr)/2+Jn),hn=Et;hn<=Xe;hn++)je.set(hn,hn,je.get(hn,hn)-Jn);Vt+=Jn,dr=xr=Qn=.964}for(hr=hr+1,cr=Xe-2;cr>=jn&&($n=je.get(cr,cr),Pn=dr-$n,Jn=xr-$n,dn=(Pn*Jn-Qn)/je.get(cr+1,cr)+je.get(cr,cr+1),Vn=je.get(cr+1,cr+1)-$n-Pn-Jn,Pn=je.get(cr+2,cr+1),Jn=Math.abs(dn)+Math.abs(Vn)+Math.abs(Pn),dn=dn/Jn,Vn=Vn/Jn,Pn=Pn/Jn,!(cr===jn||Math.abs(je.get(cr,cr-1))*(Math.abs(Vn)+Math.abs(Pn))<Jt*(Math.abs(dn)*(Math.abs(je.get(cr-1,cr-1))+Math.abs($n)+Math.abs(je.get(cr+1,cr+1))))));)cr--;for(hn=cr+2;hn<=Xe;hn++)je.set(hn,hn-2,0),hn>cr+2&&je.set(hn,hn-3,0);for(In=cr;In<=Xe-1&&(ri=In!==Xe-1,In!==cr&&(dn=je.get(In,In-1),Vn=je.get(In+1,In-1),Pn=ri?je.get(In+2,In-1):0,dr=Math.abs(dn)+Math.abs(Vn)+Math.abs(Pn),dr!==0&&(dn=dn/dr,Vn=Vn/dr,Pn=Pn/dr)),dr!==0);In++)if(Jn=Math.sqrt(dn*dn+Vn*Vn+Pn*Pn),dn<0&&(Jn=-Jn),Jn!==0){for(In!==cr?je.set(In,In-1,-Jn*dr):jn!==cr&&je.set(In,In-1,-je.get(In,In-1)),dn=dn+Jn,dr=dn/Jn,xr=Vn/Jn,$n=Pn/Jn,Vn=Vn/dn,Pn=Pn/dn,an=In;an<Ct;an++)dn=je.get(In,an)+Vn*je.get(In+1,an),ri&&(dn=dn+Pn*je.get(In+2,an),je.set(In+2,an,je.get(In+2,an)-dn*$n)),je.set(In,an,je.get(In,an)-dn*dr),je.set(In+1,an,je.get(In+1,an)-dn*xr);for(hn=0;hn<=Math.min(Xe,In+3);hn++)dn=dr*je.get(hn,In)+xr*je.get(hn,In+1),ri&&(dn=dn+$n*je.get(hn,In+2),je.set(hn,In+2,je.get(hn,In+2)-dn*Pn)),je.set(hn,In,je.get(hn,In)-dn),je.set(hn,In+1,je.get(hn,In+1)-dn*Vn);for(hn=Et;hn<=xt;hn++)dn=dr*Le.get(hn,In)+xr*Le.get(hn,In+1),ri&&(dn=dn+$n*Le.get(hn,In+2),Le.set(hn,In+2,Le.get(hn,In+2)-dn*Pn)),Le.set(hn,In,Le.get(hn,In)-dn),Le.set(hn,In+1,Le.get(hn,In+1)-dn*Vn)}}}if(fn!==0){for(Xe=Ct-1;Xe>=0;Xe--)if(dn=Be[Xe],Vn=we[Xe],Vn===0)for(jn=Xe,je.set(Xe,Xe,1),hn=Xe-1;hn>=0;hn--){for(Qn=je.get(hn,hn)-dn,Pn=0,an=jn;an<=Xe;an++)Pn=Pn+je.get(hn,an)*je.get(an,Xe);if(we[hn]<0)$n=Qn,Jn=Pn;else if(jn=hn,we[hn]===0?je.set(hn,Xe,Qn!==0?-Pn/Qn:-Pn/(Jt*fn)):(dr=je.get(hn,hn+1),xr=je.get(hn+1,hn),Vn=(Be[hn]-dn)*(Be[hn]-dn)+we[hn]*we[hn],or=(dr*Jn-$n*Pn)/Vn,je.set(hn,Xe,or),je.set(hn+1,Xe,Math.abs(dr)>Math.abs($n)?(-Pn-Qn*or)/dr:(-Jn-xr*or)/$n)),or=Math.abs(je.get(hn,Xe)),Jt*or*or>1)for(an=hn;an<=Xe;an++)je.set(an,Xe,je.get(an,Xe)/or)}else if(Vn<0)for(jn=Xe-1,Math.abs(je.get(Xe,Xe-1))>Math.abs(je.get(Xe-1,Xe))?(je.set(Xe-1,Xe-1,Vn/je.get(Xe,Xe-1)),je.set(Xe-1,Xe,-(je.get(Xe,Xe)-dn)/je.get(Xe,Xe-1))):(vi=br(0,-je.get(Xe-1,Xe),je.get(Xe-1,Xe-1)-dn,Vn),je.set(Xe-1,Xe-1,vi[0]),je.set(Xe-1,Xe,vi[1])),je.set(Xe,Xe-1,0),je.set(Xe,Xe,1),hn=Xe-2;hn>=0;hn--){for(On=0,vr=0,an=jn;an<=Xe;an++)On=On+je.get(hn,an)*je.get(an,Xe-1),vr=vr+je.get(hn,an)*je.get(an,Xe);if(Qn=je.get(hn,hn)-dn,we[hn]<0)$n=Qn,Pn=On,Jn=vr;else if(jn=hn,we[hn]===0?(vi=br(-On,-vr,Qn,Vn),je.set(hn,Xe-1,vi[0]),je.set(hn,Xe,vi[1])):(dr=je.get(hn,hn+1),xr=je.get(hn+1,hn),Yn=(Be[hn]-dn)*(Be[hn]-dn)+we[hn]*we[hn]-Vn*Vn,jr=(Be[hn]-dn)*2*Vn,Yn===0&&jr===0&&(Yn=Jt*fn*(Math.abs(Qn)+Math.abs(Vn)+Math.abs(dr)+Math.abs(xr)+Math.abs($n))),vi=br(dr*Pn-$n*On+Vn*vr,dr*Jn-$n*vr-Vn*On,Yn,jr),je.set(hn,Xe-1,vi[0]),je.set(hn,Xe,vi[1]),Math.abs(dr)>Math.abs($n)+Math.abs(Vn)?(je.set(hn+1,Xe-1,(-On-Qn*je.get(hn,Xe-1)+Vn*je.get(hn,Xe))/dr),je.set(hn+1,Xe,(-vr-Qn*je.get(hn,Xe)-Vn*je.get(hn,Xe-1))/dr)):(vi=br(-Pn-xr*je.get(hn,Xe-1),-Jn-xr*je.get(hn,Xe),$n,Vn),je.set(hn+1,Xe-1,vi[0]),je.set(hn+1,Xe,vi[1]))),or=Math.max(Math.abs(je.get(hn,Xe-1)),Math.abs(je.get(hn,Xe))),Jt*or*or>1)for(an=hn;an<=Xe;an++)je.set(an,Xe-1,je.get(an,Xe-1)/or),je.set(an,Xe,je.get(an,Xe)/or)}for(hn=0;hn<Ct;hn++)if(hn<Et||hn>xt)for(an=hn;an<Ct;an++)Le.set(hn,an,je.get(hn,an));for(an=Ct-1;an>=Et;an--)for(hn=Et;hn<=xt;hn++){for($n=0,In=Et;In<=Math.min(an,xt);In++)$n=$n+Le.get(hn,In)*je.get(In,an);Le.set(hn,an,$n)}}}function br(Ct,we,Be,Le){let je,Xe;return Math.abs(Be)>Math.abs(Le)?(je=Le/Be,Xe=Be+je*Le,[(Ct+je*we)/Xe,(we-je*Ct)/Xe]):(je=Be/Le,Xe=Le+je*Be,[(je*Ct+we)/Xe,(je*we-Ct)/Xe])}class _r{constructor(we){if(we=Un.checkMatrix(we),!we.isSymmetric())throw new Error("Matrix is not symmetric");let Be=we,Le=Be.rows,je=new St(Le,Le),Xe=!0,Et,xt,Jt;for(xt=0;xt<Le;xt++){let Vt=0;for(Jt=0;Jt<xt;Jt++){let fn=0;for(Et=0;Et<Jt;Et++)fn+=je.get(Jt,Et)*je.get(xt,Et);fn=(Be.get(xt,Jt)-fn)/je.get(Jt,Jt),je.set(xt,Jt,fn),Vt=Vt+fn*fn}for(Vt=Be.get(xt,xt)-Vt,Xe&&(Xe=Vt>0),je.set(xt,xt,Math.sqrt(Math.max(Vt,0))),Jt=xt+1;Jt<Le;Jt++)je.set(xt,Jt,0)}this.L=je,this.positiveDefinite=Xe}isPositiveDefinite(){return this.positiveDefinite}solve(we){we=Un.checkMatrix(we);let Be=this.L,Le=Be.rows;if(we.rows!==Le)throw new Error("Matrix dimensions do not match");if(this.isPositiveDefinite()===!1)throw new Error("Matrix is not positive definite");let je=we.columns,Xe=we.clone(),Et,xt,Jt;for(Jt=0;Jt<Le;Jt++)for(xt=0;xt<je;xt++){for(Et=0;Et<Jt;Et++)Xe.set(Jt,xt,Xe.get(Jt,xt)-Xe.get(Et,xt)*Be.get(Jt,Et));Xe.set(Jt,xt,Xe.get(Jt,xt)/Be.get(Jt,Jt))}for(Jt=Le-1;Jt>=0;Jt--)for(xt=0;xt<je;xt++){for(Et=Jt+1;Et<Le;Et++)Xe.set(Jt,xt,Xe.get(Jt,xt)-Xe.get(Et,xt)*Be.get(Et,Jt));Xe.set(Jt,xt,Xe.get(Jt,xt)/Be.get(Jt,Jt))}return Xe}get lowerTriangularMatrix(){return this.L}}class ha{constructor(we,Be={}){we=Un.checkMatrix(we);let{Y:Le}=Be;const{scaleScores:je=!1,maxIterations:Xe=1e3,terminationCriteria:Et=1e-10}=Be;let xt;if(Le){if(te.isAnyArray(Le)&&typeof Le[0]=="number"?Le=St.columnVector(Le):Le=Un.checkMatrix(Le),Le.rows!==we.rows)throw new Error("Y should have the same number of rows as X");xt=Le.getColumnVector(0)}else xt=we.getColumnVector(0);let Jt=1,Vt,fn,dn,Vn;for(let Pn=0;Pn<Xe&&Jt>Et;Pn++)dn=we.transpose().mmul(xt).div(xt.transpose().mmul(xt).get(0,0)),dn=dn.div(dn.norm()),Vt=we.mmul(dn).div(dn.transpose().mmul(dn).get(0,0)),Pn>0&&(Jt=Vt.clone().sub(Vn).pow(2).sum()),Vn=Vt.clone(),Le?(fn=Le.transpose().mmul(Vt).div(Vt.transpose().mmul(Vt).get(0,0)),fn=fn.div(fn.norm()),xt=Le.mmul(fn).div(fn.transpose().mmul(fn).get(0,0))):xt=Vt;if(Le){let Pn=we.transpose().mmul(Vt).div(Vt.transpose().mmul(Vt).get(0,0));Pn=Pn.div(Pn.norm());let Jn=we.clone().sub(Vt.clone().mmul(Pn.transpose())),$n=xt.transpose().mmul(Vt).div(Vt.transpose().mmul(Vt).get(0,0)),hr=Le.clone().sub(Vt.clone().mulS($n.get(0,0)).mmul(fn.transpose()));this.t=Vt,this.p=Pn.transpose(),this.w=dn.transpose(),this.q=fn,this.u=xt,this.s=Vt.transpose().mmul(Vt),this.xResidual=Jn,this.yResidual=hr,this.betas=$n}else this.w=dn.transpose(),this.s=Vt.transpose().mmul(Vt).sqrt(),je?this.t=Vt.clone().div(this.s.get(0,0)):this.t=Vt,this.xResidual=we.sub(Vt.mmul(dn.transpose()))}}It.XA=sn,It.a_=_r,It.yQ=_r,It.Hs=bt,It.Ec=mr,It.dx=mr,It.LU=yr,It.Rm=yr,It.y3=St,It.qK=Mt,It.pb=kt,It.j=ln,It.sO=zn,It.BZ=Hn,It.EK=Gn,It.Db=nr,It.Fx=Xn,It.tU=qt,It.Ym=ha,It.rs=ha,It.QR=Dr,It.TB=Dr,It.oH=Gr,It.Sc=Gr,It.BN=gt,It.it=vn,It.$r=Un,It.QM=ui,It.AV=Ya,Oe=St,It.GH=Na,It.SO=Ma,It.uZ=_a,It.yU=Vr,It.F1=Ja,It.re=Ln},50371:function(At,It){"use strict";function Te(){const Oe=Object.assign({},arguments.length<=0?void 0:arguments[0]);for(let He=1;He<arguments.length;He++){const Ne=He<0||arguments.length<=He?void 0:arguments[He];Ne&&Object.keys(Ne).forEach(be=>{const _e=Ne[be];_e!==void 0&&(Oe[be]=_e)})}return Oe}It.Z=Te},13845:function(At,It,Te){"use strict";Te.d(It,{F:function(){return Oe},Z:function(){return He}});function Oe(Ne){return Ne!=null&&Ne===Ne.window}function He(Ne,be){var _e,Me;if(typeof window=="undefined")return 0;const ve=be?"scrollTop":"scrollLeft";let Ee=0;return Oe(Ne)?Ee=Ne[be?"pageYOffset":"pageXOffset"]:Ne instanceof Document?Ee=Ne.documentElement[ve]:(Ne instanceof HTMLElement||Ne)&&(Ee=Ne[ve]),Ne&&!Oe(Ne)&&typeof Ee!="number"&&(Ee=(Me=((_e=Ne.ownerDocument)!==null&&_e!==void 0?_e:Ne).documentElement)===null||Me===void 0?void 0:Me[ve]),Ee}},56762:function(At,It,Te){"use strict";Te.d(It,{Z:function(){return He}});var Oe=Te(59301);function He(){const[,Ne]=Oe.useReducer(be=>be+1,0);return Ne}},68031:function(At,It,Te){"use strict";Te.d(It,{Z:function(){return be}});var Oe=Te(16089);function He(_e,Me,ve,Ee){const Pe=ve-Me;return _e/=Ee/2,_e<1?Pe/2*_e*_e*_e+Me:Pe/2*((_e-=2)*_e*_e+2)+Me}var Ne=Te(13845);function be(_e){let Me=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};const{getContainer:ve=()=>window,callback:Ee,duration:Pe=450}=Me,xe=ve(),pe=(0,Ne.Z)(xe,!0),Ae=Date.now(),Se=()=>{const te=Date.now()-Ae,ne=He(te>Pe?Pe:te,pe,_e,Pe);(0,Ne.F)(xe)?xe.scrollTo(window.pageXOffset,ne):xe instanceof Document||xe.constructor.name==="HTMLDocument"?xe.documentElement.scrollTop=ne:xe.scrollTop=ne,te<Pe?(0,Oe.Z)(Se):typeof Ee=="function"&&Ee()};(0,Oe.Z)(Se)}},88522:function(At,It,Te){"use strict";var Oe=Te(92310),He=Te.n(Oe),Ne=Te(11592),be=Te(2738),_e=Te(59301),Me=Te(53487),ve=Te(92343),Ee=Te(36355),Pe=Te(57809);const{Option:xe}=Pe.default;function pe(te){return te&&te.type&&(te.type.isSelectOption||te.type.isSelectOptGroup)}const Ae=(te,ne)=>{const{prefixCls:le,className:se,popupClassName:fe,dropdownClassName:he,children:ie,dataSource:ue}=te,me=(0,Ne.Z)(ie);let Ce;me.length===1&&(0,ve.l$)(me[0])&&!pe(me[0])&&([Ce]=me);const Ie=Ce?()=>Ce:void 0;let Fe;me.length&&pe(me[0])?Fe=ie:Fe=ue?ue.map(Ge=>{if((0,ve.l$)(Ge))return Ge;switch(typeof Ge){case"string":return _e.createElement(xe,{key:Ge,value:Ge},Ge);case"object":{const{value:Je}=Ge;return _e.createElement(xe,{key:Je,value:Je},Ge.text)}default:return}}):[];const{getPrefixCls:Re}=_e.useContext(Ee.E_),Ue=Re("select",le);return _e.createElement(Pe.default,Object.assign({ref:ne,suffixIcon:null},(0,be.Z)(te,["dataSource","dropdownClassName"]),{prefixCls:Ue,popupClassName:fe||he,className:He()(`${Ue}-auto-complete`,se),mode:Pe.default.SECRET_COMBOBOX_MODE_DO_NOT_USE},{getInputElement:Ie}),Fe)},Se=_e.forwardRef(Ae),ce=(0,Me.Z)(Se);Se.Option=xe,Se._InternalPanelDoNotUseOrYouWillBeFired=ce,It.Z=Se},19842:function(At,It,Te){"use strict";Te.d(It,{Z:function(){return ba}});var Oe=Te(94480),He=Te(59301),Ne=Te(33853),be=Te(58617),_e=Te(38819),Me=Te(92310),ve=Te.n(Me),Ee=Te(54476),Pe=Te(42978),xe=Te(75931),pe=Te(77861),Ae=Te(17115),Se=Te(90782),ce=Te(6089),te=Te(18929),ne=He.createContext(null),le=ne,se=Te(76190),fe=Te(20068),he=Te(33885),ie="__rc_cascader_search_mark__",ue=function(gr,br,_r){var ha=_r.label;return br.some(function(Ct){return String(Ct[ha]).toLowerCase().includes(gr.toLowerCase())})},me=function(gr,br,_r,ha){return br.map(function(Ct){return Ct[ha.label]}).join(" / ")},Ce=function(Fn,gr,br,_r,ha,Ct){var we=ha.filter,Be=we===void 0?ue:we,Le=ha.render,je=Le===void 0?me:Le,Xe=ha.limit,Et=Xe===void 0?50:Xe,xt=ha.sort;return He.useMemo(function(){var Jt=[];if(!Fn)return[];function Vt(fn,dn){var Vn=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;fn.forEach(function(Pn){if(!(!xt&&Et!==!1&&Et>0&&Jt.length>=Et)){var Jn=[].concat((0,Oe.Z)(dn),[Pn]),$n=Pn[br.children],hr=Vn||Pn.disabled;if((!$n||$n.length===0||Ct)&&Be(Fn,Jn,{label:br.label})){var hn;Jt.push((0,he.Z)((0,he.Z)({},Pn),{},(hn={disabled:hr},(0,fe.Z)(hn,br.label,je(Fn,Jn,_r,br)),(0,fe.Z)(hn,ie,Jn),(0,fe.Z)(hn,br.children,void 0),hn)))}$n&&Vt(Pn[br.children],Jn,hr)}})}return Vt(gr,[]),xt&&Jt.sort(function(fn,dn){return xt(fn[ie],dn[ie],Fn,br)}),Et!==!1&&Et>0?Jt.slice(0,Et):Jt},[Fn,gr,br,_r,je,Ct,Be,xt,Et])},Ie="__RC_CASCADER_SPLIT__",Fe="SHOW_PARENT",Re="SHOW_CHILD";function Ue(Fn){return Fn.join(Ie)}function Ge(Fn){return Fn.map(Ue)}function Je(Fn){return Fn.split(Ie)}function Qe(Fn){var gr=Fn||{},br=gr.label,_r=gr.value,ha=gr.children,Ct=_r||"value";return{label:br||"label",value:Ct,key:Ct,children:ha||"children"}}function rt(Fn,gr){var br,_r;return(br=Fn.isLeaf)!==null&&br!==void 0?br:!((_r=Fn[gr.children])!==null&&_r!==void 0&&_r.length)}function $e(Fn){var gr=Fn.parentElement;if(gr){var br=Fn.offsetTop-gr.offsetTop;br-gr.scrollTop<0?gr.scrollTo({top:br}):br+Fn.offsetHeight-gr.scrollTop>gr.offsetHeight&&gr.scrollTo({top:br+Fn.offsetHeight-gr.offsetHeight})}}function qe(Fn,gr){return Fn.map(function(br){var _r;return(_r=br[ie])===null||_r===void 0?void 0:_r.map(function(ha){return ha[gr.value]})})}function ot(Fn,gr,br){var _r=new Set(Fn),ha=gr();return Fn.filter(function(Ct){var we=ha[Ct],Be=we?we.parent:null,Le=we?we.children:null;return we&&we.node.disabled?!0:br===Re?!(Le&&Le.some(function(je){return je.key&&_r.has(je.key)})):!(Be&&!Be.node.disabled&&_r.has(Be.key))})}function at(Fn,gr,br){for(var _r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,ha=gr,Ct=[],we=function(){var je,Xe,Et,xt=Fn[Be],Jt=(je=ha)===null||je===void 0?void 0:je.findIndex(function(fn){var dn=fn[br.value];return _r?String(dn)===String(xt):dn===xt}),Vt=Jt!==-1?(Xe=ha)===null||Xe===void 0?void 0:Xe[Jt]:null;Ct.push({value:(Et=Vt==null?void 0:Vt[br.value])!==null&&Et!==void 0?Et:xt,index:Jt,option:Vt}),ha=Vt==null?void 0:Vt[br.children]},Be=0;Be<Fn.length;Be+=1)we();return Ct}var ut=function(Fn,gr,br,_r,ha){return He.useMemo(function(){var Ct=ha||function(we){var Be=_r?we.slice(-1):we,Le=" / ";return Be.every(function(je){return["string","number"].includes((0,se.Z)(je))})?Be.join(Le):Be.reduce(function(je,Xe,Et){var xt=He.isValidElement(Xe)?He.cloneElement(Xe,{key:Et}):Xe;return Et===0?[xt]:[].concat((0,Oe.Z)(je),[Le,xt])},[])};return Fn.map(function(we){var Be,Le,je=at(we,gr,br),Xe=Ct(je.map(function(xt){var Jt,Vt=xt.option,fn=xt.value;return(Jt=Vt==null?void 0:Vt[br.label])!==null&&Jt!==void 0?Jt:fn}),je.map(function(xt){var Jt=xt.option;return Jt})),Et=Ue(we);return{label:Xe,value:Et,key:Et,valueCells:we,disabled:(Be=je[je.length-1])===null||Be===void 0||(Le=Be.option)===null||Le===void 0?void 0:Le.disabled}})},[Fn,gr,br,ha,_r])},nt=Te(71430),lt=function(Fn,gr){var br=He.useRef({options:null,info:null}),_r=He.useCallback(function(){return br.current.options!==Fn&&(br.current.options=Fn,br.current.info=(0,nt.I8)(Fn,{fieldNames:gr,initWrapper:function(Ct){return(0,he.Z)((0,he.Z)({},Ct),{},{pathKeyEntities:{}})},processEntity:function(Ct,we){var Be=Ct.nodes.map(function(Le){return Le[gr.value]}).join(Ie);we.pathKeyEntities[Be]=Ct,Ct.key=Be}})),br.current.info.pathKeyEntities},[gr,Fn]);return _r},yt=function(Fn,gr){return He.useCallback(function(br){var _r=[],ha=[];return br.forEach(function(Ct){var we=at(Ct,Fn,gr);we.every(function(Be){return Be.option})?ha.push(Ct):_r.push(Ct)}),[ha,_r]},[Fn,gr])},ft=Te(48736);function ct(Fn){return He.useMemo(function(){if(!Fn)return[!1,{}];var gr={matchInputWidth:!0,limit:50};return Fn&&(0,se.Z)(Fn)==="object"&&(gr=(0,he.Z)((0,he.Z)({},gr),Fn)),gr.limit<=0&&delete gr.limit,[!0,gr]},[Fn])}var vt=He.memo(function(Fn){var gr=Fn.children;return gr},function(Fn,gr){return!gr.open}),Ut=vt;function Zt(Fn){var gr,br=Fn.prefixCls,_r=Fn.checked,ha=Fn.halfChecked,Ct=Fn.disabled,we=Fn.onClick,Be=Fn.disableCheckbox,Le=He.useContext(le),je=Le.checkable,Xe=typeof je!="boolean"?je:null;return He.createElement("span",{className:ve()("".concat(br),(gr={},(0,fe.Z)(gr,"".concat(br,"-checked"),_r),(0,fe.Z)(gr,"".concat(br,"-indeterminate"),!_r&&ha),(0,fe.Z)(gr,"".concat(br,"-disabled"),Ct||Be),gr)),onClick:we},Xe)}var en="__cascader_fix_label__";function mn(Fn){var gr=Fn.prefixCls,br=Fn.multiple,_r=Fn.options,ha=Fn.activeValue,Ct=Fn.prevValuePath,we=Fn.onToggleOpen,Be=Fn.onSelect,Le=Fn.onActive,je=Fn.checkedSet,Xe=Fn.halfCheckedSet,Et=Fn.loadingKeys,xt=Fn.isSelectable,Jt=Fn.searchValue,Vt="".concat(gr,"-menu"),fn="".concat(gr,"-menu-item"),dn=He.useContext(le),Vn=dn.fieldNames,Pn=dn.changeOnSelect,Jn=dn.expandTrigger,$n=dn.expandIcon,hr=dn.loadingIcon,hn=dn.dropdownMenuColumnStyle,an=Jn==="hover",In=He.useMemo(function(){return _r.map(function(jn){var cr,or=jn.disabled,Qn=jn.disableCheckbox,dr=jn[ie],xr=(cr=jn[en])!==null&&cr!==void 0?cr:jn[Vn.label],On=jn[Vn.value],vr=rt(jn,Vn),Yn=dr?dr.map(function(Kr){return Kr[Vn.value]}):[].concat((0,Oe.Z)(Ct),[On]),jr=Ue(Yn),ri=Et.includes(jr),vi=je.has(jr),ci=Xe.has(jr);return{disabled:or,label:xr,value:On,isLeaf:vr,isLoading:ri,checked:vi,halfChecked:ci,option:jn,disableCheckbox:Qn,fullPath:Yn,fullPathKey:jr}})},[_r,je,Vn,Xe,Et,Ct]);return He.createElement("ul",{className:Vt,role:"menu"},In.map(function(jn){var cr,or=jn.disabled,Qn=jn.label,dr=jn.value,xr=jn.isLeaf,On=jn.isLoading,vr=jn.checked,Yn=jn.halfChecked,jr=jn.option,ri=jn.fullPath,vi=jn.fullPathKey,ci=jn.disableCheckbox,Kr=function(){if(!(or||Jt)){var ei=(0,Oe.Z)(ri);an&&xr&&ei.pop(),Le(ei)}},Ia=function(){xt(jr)&&Be(ri,xr)},Ta;return typeof jr.title=="string"?Ta=jr.title:typeof Qn=="string"&&(Ta=Qn),He.createElement("li",{key:vi,className:ve()(fn,(cr={},(0,fe.Z)(cr,"".concat(fn,"-expand"),!xr),(0,fe.Z)(cr,"".concat(fn,"-active"),ha===dr||ha===vi),(0,fe.Z)(cr,"".concat(fn,"-disabled"),or),(0,fe.Z)(cr,"".concat(fn,"-loading"),On),cr)),style:hn,role:"menuitemcheckbox",title:Ta,"aria-checked":vr,"data-path-key":vi,onClick:function(){Kr(),!ci&&(!br||xr)&&Ia()},onDoubleClick:function(){Pn&&we(!1)},onMouseEnter:function(){an&&Kr()},onMouseDown:function(ei){ei.preventDefault()}},br&&He.createElement(Zt,{prefixCls:"".concat(gr,"-checkbox"),checked:vr,halfChecked:Yn,disabled:or||ci,disableCheckbox:ci,onClick:function(ei){ci||(ei.stopPropagation(),Ia())}}),He.createElement("div",{className:"".concat(fn,"-content")},Qn),!On&&$n&&!xr&&He.createElement("div",{className:"".concat(fn,"-expand-icon")},$n),On&&hr&&He.createElement("div",{className:"".concat(fn,"-loading-icon")},hr))}))}var Bt=function(){var Fn=(0,pe.lk)(),gr=Fn.multiple,br=Fn.open,_r=He.useContext(le),ha=_r.values,Ct=He.useState([]),we=(0,Pe.Z)(Ct,2),Be=we[0],Le=we[1];return He.useEffect(function(){if(br&&!gr){var je=ha[0];Le(je||[])}},[br]),[Be,Le]},tn=Te(10228),on=function(Fn,gr,br,_r,ha,Ct){var we=(0,pe.lk)(),Be=we.direction,Le=we.searchValue,je=we.toggleOpen,Xe=we.open,Et=Be==="rtl",xt=He.useMemo(function(){for(var hn=-1,an=gr,In=[],jn=[],cr=_r.length,or=qe(gr,br),Qn=function(jr){var ri=an.findIndex(function(vi,ci){return(or[ci]?Ue(or[ci]):vi[br.value])===_r[jr]});if(ri===-1)return"break";hn=ri,In.push(hn),jn.push(_r[jr]),an=an[hn][br.children]},dr=0;dr<cr&&an;dr+=1){var xr=Qn(dr);if(xr==="break")break}for(var On=gr,vr=0;vr<In.length-1;vr+=1)On=On[In[vr]][br.children];return[jn,hn,On,or]},[_r,br,gr]),Jt=(0,Pe.Z)(xt,4),Vt=Jt[0],fn=Jt[1],dn=Jt[2],Vn=Jt[3],Pn=function(an){ha(an)},Jn=function(an){var In=dn.length,jn=fn;jn===-1&&an<0&&(jn=In);for(var cr=0;cr<In;cr+=1){jn=(jn+an+In)%In;var or=dn[jn];if(or&&!or.disabled){var Qn=Vt.slice(0,-1).concat(Vn[jn]?Ue(Vn[jn]):or[br.value]);Pn(Qn);return}}},$n=function(){if(Vt.length>1){var an=Vt.slice(0,-1);Pn(an)}else je(!1)},hr=function(){var an,In=((an=dn[fn])===null||an===void 0?void 0:an[br.children])||[],jn=In.find(function(or){return!or.disabled});if(jn){var cr=[].concat((0,Oe.Z)(Vt),[jn[br.value]]);Pn(cr)}};He.useImperativeHandle(Fn,function(){return{onKeyDown:function(an){var In=an.which;switch(In){case tn.Z.UP:case tn.Z.DOWN:{var jn=0;In===tn.Z.UP?jn=-1:In===tn.Z.DOWN&&(jn=1),jn!==0&&Jn(jn);break}case tn.Z.LEFT:{if(Le)break;Et?hr():$n();break}case tn.Z.RIGHT:{if(Le)break;Et?$n():hr();break}case tn.Z.BACKSPACE:{Le||$n();break}case tn.Z.ENTER:{if(Vt.length){var cr=dn[fn],or=(cr==null?void 0:cr[ie])||[];or.length?Ct(or.map(function(Qn){return Qn[br.value]}),or[or.length-1]):Ct(Vt,dn[fn])}break}case tn.Z.ESC:je(!1),Xe&&an.stopPropagation()}},onKeyUp:function(){}}})},Mn=He.forwardRef(function(Fn,gr){var br,_r,ha,Ct,we=(0,pe.lk)(),Be=we.prefixCls,Le=we.multiple,je=we.searchValue,Xe=we.toggleOpen,Et=we.notFoundContent,xt=we.direction,Jt=we.open,Vt=He.useRef(),fn=xt==="rtl",dn=He.useContext(le),Vn=dn.options,Pn=dn.values,Jn=dn.halfValues,$n=dn.fieldNames,hr=dn.changeOnSelect,hn=dn.onSelect,an=dn.searchOptions,In=dn.dropdownPrefixCls,jn=dn.loadData,cr=dn.expandTrigger,or=In||Be,Qn=He.useState([]),dr=(0,Pe.Z)(Qn,2),xr=dr[0],On=dr[1],vr=function(bo){if(!(!jn||je)){var hs=at(bo,Vn,$n),ss=hs.map(function(Rs){var tl=Rs.option;return tl}),Yo=ss[ss.length-1];if(Yo&&!rt(Yo,$n)){var Wo=Ue(bo);On(function(Rs){return[].concat((0,Oe.Z)(Rs),[Wo])}),jn(ss)}}};He.useEffect(function(){xr.length&&xr.forEach(function(ds){var bo=Je(ds),hs=at(bo,Vn,$n,!0).map(function(Yo){var Wo=Yo.option;return Wo}),ss=hs[hs.length-1];(!ss||ss[$n.children]||rt(ss,$n))&&On(function(Yo){return Yo.filter(function(Wo){return Wo!==ds})})})},[Vn,xr,$n]);var Yn=He.useMemo(function(){return new Set(Ge(Pn))},[Pn]),jr=He.useMemo(function(){return new Set(Ge(Jn))},[Jn]),ri=Bt(),vi=(0,Pe.Z)(ri,2),ci=vi[0],Kr=vi[1],Ia=function(bo){Kr(bo),vr(bo)},Ta=function(bo){var hs=bo.disabled,ss=rt(bo,$n);return!hs&&(ss||hr||Le)},la=function(bo,hs){var ss=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;hn(bo),!Le&&(hs||hr&&(cr==="hover"||ss))&&Xe(!1)},ei=He.useMemo(function(){return je?an:Vn},[je,an,Vn]),Wi=He.useMemo(function(){for(var ds=[{options:ei}],bo=ei,hs=qe(bo,$n),ss=function(){var tl=ci[Yo],Pl=bo.find(function(il,nl){return(hs[nl]?Ue(hs[nl]):il[$n.value])===tl}),Gs=Pl==null?void 0:Pl[$n.children];if(!(Gs!=null&&Gs.length))return"break";bo=Gs,ds.push({options:Gs})},Yo=0;Yo<ci.length;Yo+=1){var Wo=ss();if(Wo==="break")break}return ds},[ei,ci,$n]),za=function(bo,hs){Ta(hs)&&la(bo,rt(hs,$n),!0)};on(gr,ei,$n,ci,Ia,za),He.useEffect(function(){for(var ds=0;ds<ci.length;ds+=1){var bo,hs=ci.slice(0,ds+1),ss=Ue(hs),Yo=(bo=Vt.current)===null||bo===void 0?void 0:bo.querySelector('li[data-path-key="'.concat(ss.replace(/\\{0,2}"/g,'\\"'),'"]'));Yo&&$e(Yo)}},[ci]);var _i=!((br=Wi[0])!==null&&br!==void 0&&(_r=br.options)!==null&&_r!==void 0&&_r.length),$i=[(ha={},(0,fe.Z)(ha,$n.value,"__EMPTY__"),(0,fe.Z)(ha,en,Et),(0,fe.Z)(ha,"disabled",!0),ha)],Uo=(0,he.Z)((0,he.Z)({},Fn),{},{multiple:!_i&&Le,onSelect:la,onActive:Ia,onToggleOpen:Xe,checkedSet:Yn,halfCheckedSet:jr,loadingKeys:xr,isSelectable:Ta}),yo=_i?[{options:$i}]:Wi,sl=yo.map(function(ds,bo){var hs=ci.slice(0,bo),ss=ci[bo];return He.createElement(mn,(0,Ee.Z)({key:bo},Uo,{searchValue:je,prefixCls:or,options:ds.options,prevValuePath:hs,activeValue:ss}))});return He.createElement(Ut,{open:Jt},He.createElement("div",{className:ve()("".concat(or,"-menus"),(Ct={},(0,fe.Z)(Ct,"".concat(or,"-menu-empty"),_i),(0,fe.Z)(Ct,"".concat(or,"-rtl"),fn),Ct)),ref:Vt},sl))}),Dn=Mn;function sn(Fn){var gr=Fn.onPopupVisibleChange,br=Fn.popupVisible,_r=Fn.popupClassName,ha=Fn.popupPlacement;warning(!gr,"`onPopupVisibleChange` is deprecated. Please use `onDropdownVisibleChange` instead."),warning(br===void 0,"`popupVisible` is deprecated. Please use `open` instead."),warning(_r===void 0,"`popupClassName` is deprecated. Please use `dropdownClassName` instead."),warning(ha===void 0,"`popupPlacement` is deprecated. Please use `placement` instead.")}function rn(Fn,gr){if(Fn){var br=function _r(ha){for(var Ct=0;Ct<ha.length;Ct++){var we=ha[Ct];if(we[gr==null?void 0:gr.value]===null)return warning(!1,"`value` in Cascader options should not be `null`."),!0;if(Array.isArray(we[gr==null?void 0:gr.children])&&_r(we[gr==null?void 0:gr.children]))return!0}};br(Fn)}}var Ht=null,Tt=["id","prefixCls","fieldNames","defaultValue","value","changeOnSelect","onChange","displayRender","checkable","autoClearSearchValue","searchValue","onSearch","showSearch","expandTrigger","options","dropdownPrefixCls","loadData","popupVisible","open","popupClassName","dropdownClassName","dropdownMenuColumnStyle","popupPlacement","placement","onDropdownVisibleChange","onPopupVisibleChange","expandIcon","loadingIcon","children","dropdownMatchSelectWidth","showCheckedStrategy"];function St(Fn){return Array.isArray(Fn)&&Array.isArray(Fn[0])}function Qt(Fn){return Fn?St(Fn)?Fn:(Fn.length===0?[]:[Fn]).map(function(gr){return Array.isArray(gr)?gr:[gr]}):[]}var gt=He.forwardRef(function(Fn,gr){var br=Fn.id,_r=Fn.prefixCls,ha=_r===void 0?"rc-cascader":_r,Ct=Fn.fieldNames,we=Fn.defaultValue,Be=Fn.value,Le=Fn.changeOnSelect,je=Fn.onChange,Xe=Fn.displayRender,Et=Fn.checkable,xt=Fn.autoClearSearchValue,Jt=xt===void 0?!0:xt,Vt=Fn.searchValue,fn=Fn.onSearch,dn=Fn.showSearch,Vn=Fn.expandTrigger,Pn=Fn.options,Jn=Fn.dropdownPrefixCls,$n=Fn.loadData,hr=Fn.popupVisible,hn=Fn.open,an=Fn.popupClassName,In=Fn.dropdownClassName,jn=Fn.dropdownMenuColumnStyle,cr=Fn.popupPlacement,or=Fn.placement,Qn=Fn.onDropdownVisibleChange,dr=Fn.onPopupVisibleChange,xr=Fn.expandIcon,On=xr===void 0?">":xr,vr=Fn.loadingIcon,Yn=Fn.children,jr=Fn.dropdownMatchSelectWidth,ri=jr===void 0?!1:jr,vi=Fn.showCheckedStrategy,ci=vi===void 0?Fe:vi,Kr=(0,xe.Z)(Fn,Tt),Ia=(0,Ae.ZP)(br),Ta=!!Et,la=(0,te.Z)(we,{value:Be,postState:Qt}),ei=(0,Pe.Z)(la,2),Wi=ei[0],za=ei[1],_i=He.useMemo(function(){return Qe(Ct)},[JSON.stringify(Ct)]),$i=He.useMemo(function(){return Pn||[]},[Pn]),Uo=lt($i,_i),yo=He.useCallback(function(Ga){var ja=Uo();return Ga.map(function(Ua){var ao=ja[Ua].nodes;return ao.map(function(ko){return ko[_i.value]})})},[Uo,_i]),sl=(0,te.Z)("",{value:Vt,postState:function(ja){return ja||""}}),ds=(0,Pe.Z)(sl,2),bo=ds[0],hs=ds[1],ss=function(ja,Ua){hs(ja),Ua.source!=="blur"&&fn&&fn(ja)},Yo=ct(dn),Wo=(0,Pe.Z)(Yo,2),Rs=Wo[0],tl=Wo[1],Pl=Ce(bo,$i,_i,Jn||ha,tl,Le),Gs=yt($i,_i),il=He.useMemo(function(){var Ga=Gs(Wi),ja=(0,Pe.Z)(Ga,2),Ua=ja[0],ao=ja[1];if(!Ta||!Wi.length)return[Ua,[],ao];var ko=Ge(Ua),Ts=Uo(),ws=(0,Se.S)(ko,!0,Ts),Ks=ws.checkedKeys,Oo=ws.halfCheckedKeys;return[yo(Ks),yo(Oo),ao]},[Ta,Wi,Uo,yo,Gs]),nl=(0,Pe.Z)(il,3),uo=nl[0],Xo=nl[1],Ho=nl[2],Xs=He.useMemo(function(){var Ga=Ge(uo),ja=ot(Ga,Uo,ci);return[].concat((0,Oe.Z)(Ho),(0,Oe.Z)(yo(ja)))},[uo,Uo,yo,Ho,ci]),Il=ut(Xs,$i,_i,Ta,Xe),_l=(0,ce.Z)(function(Ga){if(za(Ga),je){var ja=Qt(Ga),Ua=ja.map(function(Ts){return at(Ts,$i,_i).map(function(ws){return ws.option})}),ao=Ta?ja:ja[0],ko=Ta?Ua:Ua[0];je(ao,ko)}}),Go=(0,ce.Z)(function(Ga){if((!Ta||Jt)&&hs(""),!Ta)_l(Ga);else{var ja=Ue(Ga),Ua=Ge(uo),ao=Ge(Xo),ko=Ua.includes(ja),Ts=Ho.some(function(_o){return Ue(_o)===ja}),ws=uo,Ks=Ho;if(Ts&&!ko)Ks=Ho.filter(function(_o){return Ue(_o)!==ja});else{var Oo=ko?Ua.filter(function(_o){return _o!==ja}):[].concat((0,Oe.Z)(Ua),[ja]),uu=Uo(),fl;if(ko){var Co=(0,Se.S)(Oo,{checked:!1,halfCheckedKeys:ao},uu);fl=Co.checkedKeys}else{var Jo=(0,Se.S)(Oo,!0,uu);fl=Jo.checkedKeys}var Fs=ot(fl,Uo,ci);ws=yo(Fs)}_l([].concat((0,Oe.Z)(Ks),(0,Oe.Z)(ws)))}}),lu=function(ja,Ua){if(Ua.type==="clear"){_l([]);return}var ao=Ua.values[0],ko=ao.valueCells;Go(ko)},Os=hn!==void 0?hn:hr,Vs=In||an,Mu=or||cr,Al=function(ja){Qn==null||Qn(ja),dr==null||dr(ja)},ol=He.useMemo(function(){return{options:$i,fieldNames:_i,values:uo,halfValues:Xo,changeOnSelect:Le,onSelect:Go,checkable:Et,searchOptions:Pl,dropdownPrefixCls:Jn,loadData:$n,expandTrigger:Vn,expandIcon:On,loadingIcon:vr,dropdownMenuColumnStyle:jn}},[$i,_i,uo,Xo,Le,Go,Et,Pl,Jn,$n,Vn,On,vr,jn]),uc=!(bo?Pl:$i).length,zi=bo&&tl.matchInputWidth||uc?{}:{minWidth:"auto"};return He.createElement(le.Provider,{value:ol},He.createElement(pe.Ac,(0,Ee.Z)({},Kr,{ref:gr,id:Ia,prefixCls:ha,autoClearSearchValue:Jt,dropdownMatchSelectWidth:ri,dropdownStyle:zi,displayValues:Il,onDisplayValuesChange:lu,mode:Ta?"multiple":void 0,searchValue:bo,onSearch:ss,showSearch:Rs,OptionList:Dn,emptyOptions:uc,open:Os,dropdownClassName:Vs,placement:Mu,onDropdownVisibleChange:Al,getRawInputElement:function(){return Yn}})))});gt.SHOW_PARENT=Fe,gt.SHOW_CHILD=Re;var bt=gt,Yt=bt,kt=Te(2738),Mt=Te(62892),ln=Te(53487),zn=Te(19080),Gn=Te(36355),Hn=Te(93891),nr=Te(1684),Xn=Te(19716),qt=Te(32441),vn=Te(14154),Un=Te(58582),Ln=Te(84443),yr=Te(66339),kr=Te(33234),Dr=Te(98447),Gr=Te(17313),Ma=Te(74207),Ja=Te(83116);const Na=Fn=>{const{prefixCls:gr,componentCls:br,antCls:_r}=Fn,ha=`${br}-menu-item`,Ct=`
|
|
|
&${ha}-expand ${ha}-expand-icon,
|
|
|
${ha}-loading-icon
|
|
|
`;return[{[br]:{width:Fn.controlWidth}},{[`${br}-dropdown`]:[(0,Dr.C2)(`${gr}-checkbox`,Fn),{[`&${_r}-select-dropdown`]:{padding:0}},{[br]:{"&-checkbox":{top:0,marginInlineEnd:Fn.paddingXS},"&-menus":{display:"flex",flexWrap:"nowrap",alignItems:"flex-start",[`&${br}-menu-empty`]:{[`${br}-menu`]:{width:"100%",height:"auto",[ha]:{color:Fn.colorTextDisabled}}}},"&-menu":{flexGrow:1,minWidth:Fn.controlItemWidth,height:Fn.dropdownHeight,margin:0,padding:Fn.menuPadding,overflow:"auto",verticalAlign:"top",listStyle:"none","-ms-overflow-style":"-ms-autohiding-scrollbar","&:not(:last-child)":{borderInlineEnd:`${Fn.lineWidth}px ${Fn.lineType} ${Fn.colorSplit}`},"&-item":Object.assign(Object.assign({},Gr.vS),{display:"flex",flexWrap:"nowrap",alignItems:"center",padding:Fn.optionPadding,lineHeight:Fn.lineHeight,cursor:"pointer",transition:`all ${Fn.motionDurationMid}`,borderRadius:Fn.borderRadiusSM,"&:hover":{background:Fn.controlItemBgHover},"&-disabled":{color:Fn.colorTextDisabled,cursor:"not-allowed","&:hover":{background:"transparent"},[Ct]:{color:Fn.colorTextDisabled}},[`&-active:not(${ha}-disabled)`]:{"&, &:hover":{fontWeight:Fn.optionSelectedFontWeight,backgroundColor:Fn.optionSelectedBg}},"&-content":{flex:"auto"},[Ct]:{marginInlineStart:Fn.paddingXXS,color:Fn.colorTextDescription,fontSize:Fn.fontSizeIcon},"&-keyword":{color:Fn.colorHighlight}})}}}]},{[`${br}-dropdown-rtl`]:{direction:"rtl"}},(0,Ma.c)(Fn)]};var Da=(0,Ja.Z)("Cascader",Fn=>[Na(Fn)],Fn=>{const gr=Math.round((Fn.controlHeight-Fn.fontSize*Fn.lineHeight)/2);return{controlWidth:184,controlItemWidth:111,dropdownHeight:180,optionSelectedBg:Fn.controlItemBgActive,optionSelectedFontWeight:Fn.fontWeightStrong,optionPadding:`${gr}px ${Fn.paddingSM}px`,menuPadding:Fn.paddingXXS}}),Di=function(Fn,gr){var br={};for(var _r in Fn)Object.prototype.hasOwnProperty.call(Fn,_r)&&gr.indexOf(_r)<0&&(br[_r]=Fn[_r]);if(Fn!=null&&typeof Object.getOwnPropertySymbols=="function")for(var ha=0,_r=Object.getOwnPropertySymbols(Fn);ha<_r.length;ha++)gr.indexOf(_r[ha])<0&&Object.prototype.propertyIsEnumerable.call(Fn,_r[ha])&&(br[_r[ha]]=Fn[_r[ha]]);return br};const{SHOW_CHILD:_a,SHOW_PARENT:Vr}=Yt;function Ya(Fn,gr,br){const _r=Fn.toLowerCase().split(gr).reduce((we,Be,Le)=>Le===0?[Be]:[].concat((0,Oe.Z)(we),[gr,Be]),[]),ha=[];let Ct=0;return _r.forEach((we,Be)=>{const Le=Ct+we.length;let je=Fn.slice(Ct,Le);Ct=Le,Be%2===1&&(je=He.createElement("span",{className:`${br}-menu-item-keyword`,key:`separator-${Be}`},je)),ha.push(je)}),ha}const ui=(Fn,gr,br,_r)=>{const ha=[],Ct=Fn.toLowerCase();return gr.forEach((we,Be)=>{Be!==0&&ha.push(" / ");let Le=we[_r.label];const je=typeof Le;(je==="string"||je==="number")&&(Le=Ya(String(Le),Ct,br)),ha.push(Le)}),ha},mr=He.forwardRef((Fn,gr)=>{const{prefixCls:br,size:_r,disabled:ha,className:Ct,rootClassName:we,multiple:Be,bordered:Le=!0,transitionName:je,choiceTransitionName:Xe="",popupClassName:Et,dropdownClassName:xt,expandIcon:Jt,placement:Vt,showSearch:fn,allowClear:dn=!0,notFoundContent:Vn,direction:Pn,getPopupContainer:Jn,status:$n,showArrow:hr,builtinPlacements:hn,style:an}=Fn,In=Di(Fn,["prefixCls","size","disabled","className","rootClassName","multiple","bordered","transitionName","choiceTransitionName","popupClassName","dropdownClassName","expandIcon","placement","showSearch","allowClear","notFoundContent","direction","getPopupContainer","status","showArrow","builtinPlacements","style"]),jn=(0,kt.Z)(In,["suffixIcon"]),{getPopupContainer:cr,getPrefixCls:or,renderEmpty:Qn,direction:dr,popupOverflow:xr,cascader:On}=He.useContext(Gn.E_),vr=Pn||dr,Yn=vr==="rtl",{status:jr,hasFeedback:ri,isFormItemInput:vi,feedbackIcon:ci}=He.useContext(qt.aM),Kr=(0,zn.F)(jr,$n),Ia=Vn||(Qn==null?void 0:Qn("Cascader"))||He.createElement(Hn.Z,{componentName:"Cascader"}),Ta=or(),la=or("select",br),ei=or("cascader",br),[Wi,za]=(0,vn.Z)(la),[_i]=Da(ei),{compactSize:$i,compactItemClassnames:Uo}=(0,kr.ri)(la,Pn),yo=ve()(Et||xt,`${ei}-dropdown`,{[`${ei}-dropdown-rtl`]:vr==="rtl"},we,za),sl=He.useMemo(()=>{if(!fn)return fn;let Ho={render:ui};return typeof fn=="object"&&(Ho=Object.assign(Object.assign({},Ho),fn)),Ho},[fn]),ds=(0,Xn.Z)(Ho=>{var Xs;return(Xs=_r!=null?_r:$i)!==null&&Xs!==void 0?Xs:Ho}),bo=He.useContext(nr.Z),hs=ha!=null?ha:bo;let ss=Jt;Jt||(ss=Yn?He.createElement(Ne.Z,null):He.createElement(_e.Z,null));const Yo=He.createElement("span",{className:`${la}-menu-item-loading-icon`},He.createElement(be.Z,{spin:!0})),Wo=He.useMemo(()=>Be?He.createElement("span",{className:`${ei}-checkbox-inner`}):!1,[Be]),Rs=(0,Ln.Z)(Fn.suffixIcon,hr),{suffixIcon:tl,removeIcon:Pl,clearIcon:Gs}=(0,yr.Z)(Object.assign(Object.assign({},Fn),{hasFeedback:ri,feedbackIcon:ci,showSuffixIcon:Rs,multiple:Be,prefixCls:la,componentName:"Cascader"})),il=He.useMemo(()=>Vt!==void 0?Vt:Yn?"bottomRight":"bottomLeft",[Vt,Yn]),nl=(0,Un.Z)(hn,xr),uo=dn===!0?{clearIcon:Gs}:dn,Xo=He.createElement(Yt,Object.assign({prefixCls:la,className:ve()(!br&&ei,{[`${la}-lg`]:ds==="large",[`${la}-sm`]:ds==="small",[`${la}-rtl`]:Yn,[`${la}-borderless`]:!Le,[`${la}-in-form-item`]:vi},(0,zn.Z)(la,Kr,ri),Uo,On==null?void 0:On.className,Ct,we,za),disabled:hs,style:Object.assign(Object.assign({},On==null?void 0:On.style),an)},jn,{builtinPlacements:nl,direction:vr,placement:il,notFoundContent:Ia,allowClear:uo,showSearch:sl,expandIcon:ss,suffixIcon:tl,removeIcon:Pl,loadingIcon:Yo,checkable:Wo,dropdownClassName:yo,dropdownPrefixCls:br||ei,choiceTransitionName:(0,Mt.m)(Ta,"",Xe),transitionName:(0,Mt.m)(Ta,"slide-up",je),getPopupContainer:Jn||cr,ref:gr}));return _i(Wi(Xo))}),Er=(0,ln.Z)(mr);mr.SHOW_PARENT=Vr,mr.SHOW_CHILD=_a,mr._InternalPanelDoNotUseOrYouWillBeFired=Er;var ba=mr},24905:function(At,It,Te){"use strict";Te.d(It,{default:function(){return Ce}});var Oe=Te(92310),He=Te.n(Oe),Ne=Te(5630),be=Te(59301),_e=Te(36355),Me=Te(1684),ve=Te(32441),Pe=be.createContext(null),xe=Te(98447),pe=Te(14088),Ae=Te(4572),Se=function(Ie,Fe){var Re={};for(var Ue in Ie)Object.prototype.hasOwnProperty.call(Ie,Ue)&&Fe.indexOf(Ue)<0&&(Re[Ue]=Ie[Ue]);if(Ie!=null&&typeof Object.getOwnPropertySymbols=="function")for(var Ge=0,Ue=Object.getOwnPropertySymbols(Ie);Ge<Ue.length;Ge++)Fe.indexOf(Ue[Ge])<0&&Object.prototype.propertyIsEnumerable.call(Ie,Ue[Ge])&&(Re[Ue[Ge]]=Ie[Ue[Ge]]);return Re};const ce=(Ie,Fe)=>{var Re;const{prefixCls:Ue,className:Ge,rootClassName:Je,children:Qe,indeterminate:rt=!1,style:$e,onMouseEnter:qe,onMouseLeave:ot,skipGroup:at=!1,disabled:ut}=Ie,nt=Se(Ie,["prefixCls","className","rootClassName","children","indeterminate","style","onMouseEnter","onMouseLeave","skipGroup","disabled"]),{getPrefixCls:lt,direction:yt,checkbox:ft}=be.useContext(_e.E_),ct=be.useContext(Pe),{isFormItemInput:vt}=be.useContext(ve.aM),Ut=be.useContext(Me.Z),Zt=(Re=(ct==null?void 0:ct.disabled)||ut)!==null&&Re!==void 0?Re:Ut,en=be.useRef(nt.value);be.useEffect(()=>{ct==null||ct.registerValue(nt.value)},[]),be.useEffect(()=>{if(!at)return nt.value!==en.current&&(ct==null||ct.cancelValue(en.current),ct==null||ct.registerValue(nt.value),en.current=nt.value),()=>ct==null?void 0:ct.cancelValue(nt.value)},[nt.value]);const mn=lt("checkbox",Ue),[Bt,tn]=(0,xe.ZP)(mn),on=Object.assign({},nt);ct&&!at&&(on.onChange=function(){nt.onChange&&nt.onChange.apply(nt,arguments),ct.toggleOption&&ct.toggleOption({label:Qe,value:nt.value})},on.name=ct.name,on.checked=ct.value.includes(nt.value));const Mn=He()(`${mn}-wrapper`,{[`${mn}-rtl`]:yt==="rtl",[`${mn}-wrapper-checked`]:on.checked,[`${mn}-wrapper-disabled`]:Zt,[`${mn}-wrapper-in-form-item`]:vt},ft==null?void 0:ft.className,Ge,Je,tn),Dn=He()({[`${mn}-indeterminate`]:rt},Ae.A,tn),sn=rt?"mixed":void 0;return Bt(be.createElement(pe.Z,{component:"Checkbox",disabled:Zt},be.createElement("label",{className:Mn,style:Object.assign(Object.assign({},ft==null?void 0:ft.style),$e),onMouseEnter:qe,onMouseLeave:ot},be.createElement(Ne.Z,Object.assign({"aria-checked":sn},on,{prefixCls:mn,className:Dn,disabled:Zt,ref:Fe})),Qe!==void 0&&be.createElement("span",null,Qe))))};var ne=be.forwardRef(ce),le=Te(94480),se=Te(2738),fe=function(Ie,Fe){var Re={};for(var Ue in Ie)Object.prototype.hasOwnProperty.call(Ie,Ue)&&Fe.indexOf(Ue)<0&&(Re[Ue]=Ie[Ue]);if(Ie!=null&&typeof Object.getOwnPropertySymbols=="function")for(var Ge=0,Ue=Object.getOwnPropertySymbols(Ie);Ge<Ue.length;Ge++)Fe.indexOf(Ue[Ge])<0&&Object.prototype.propertyIsEnumerable.call(Ie,Ue[Ge])&&(Re[Ue[Ge]]=Ie[Ue[Ge]]);return Re};const he=(Ie,Fe)=>{const{defaultValue:Re,children:Ue,options:Ge=[],prefixCls:Je,className:Qe,rootClassName:rt,style:$e,onChange:qe}=Ie,ot=fe(Ie,["defaultValue","children","options","prefixCls","className","rootClassName","style","onChange"]),{getPrefixCls:at,direction:ut}=be.useContext(_e.E_),[nt,lt]=be.useState(ot.value||Re||[]),[yt,ft]=be.useState([]);be.useEffect(()=>{"value"in ot&<(ot.value||[])},[ot.value]);const ct=be.useMemo(()=>Ge.map(rn=>typeof rn=="string"||typeof rn=="number"?{label:rn,value:rn}:rn),[Ge]),vt=rn=>{ft(Ht=>Ht.filter(Tt=>Tt!==rn))},Ut=rn=>{ft(Ht=>[].concat((0,le.Z)(Ht),[rn]))},Zt=rn=>{const Ht=nt.indexOf(rn.value),Tt=(0,le.Z)(nt);Ht===-1?Tt.push(rn.value):Tt.splice(Ht,1),"value"in ot||lt(Tt),qe==null||qe(Tt.filter(St=>yt.includes(St)).sort((St,Qt)=>{const gt=ct.findIndex(Yt=>Yt.value===St),bt=ct.findIndex(Yt=>Yt.value===Qt);return gt-bt}))},en=at("checkbox",Je),mn=`${en}-group`,[Bt,tn]=(0,xe.ZP)(en),on=(0,se.Z)(ot,["value","disabled"]),Mn=Ge.length?ct.map(rn=>be.createElement(ne,{prefixCls:en,key:rn.value.toString(),disabled:"disabled"in rn?rn.disabled:ot.disabled,value:rn.value,checked:nt.includes(rn.value),onChange:rn.onChange,className:`${mn}-item`,style:rn.style,title:rn.title},rn.label)):Ue,Dn={toggleOption:Zt,value:nt,disabled:ot.disabled,name:ot.name,registerValue:Ut,cancelValue:vt},sn=He()(mn,{[`${mn}-rtl`]:ut==="rtl"},Qe,rt,tn);return Bt(be.createElement("div",Object.assign({className:sn,style:$e},on,{ref:Fe}),be.createElement(Pe.Provider,{value:Dn},Mn)))},ie=be.forwardRef(he);var ue=be.memo(ie);const me=ne;me.Group=ue,me.__ANT_CHECKBOX=!0;var Ce=me},98447:function(At,It,Te){"use strict";Te.d(It,{C2:function(){return _e}});var Oe=Te(17313),He=Te(37613),Ne=Te(83116);const be=Me=>{const{checkboxCls:ve}=Me,Ee=`${ve}-wrapper`;return[{[`${ve}-group`]:Object.assign(Object.assign({},(0,Oe.Wf)(Me)),{display:"inline-flex",flexWrap:"wrap",columnGap:Me.marginXS,[`> ${Me.antCls}-row`]:{flex:1}}),[Ee]:Object.assign(Object.assign({},(0,Oe.Wf)(Me)),{display:"inline-flex",alignItems:"baseline",cursor:"pointer","&:after":{display:"inline-block",width:0,overflow:"hidden",content:"'\\a0'"},[`& + ${Ee}`]:{marginInlineStart:0},[`&${Ee}-in-form-item`]:{'input[type="checkbox"]':{width:14,height:14}}}),[ve]:Object.assign(Object.assign({},(0,Oe.Wf)(Me)),{position:"relative",whiteSpace:"nowrap",lineHeight:1,cursor:"pointer",borderRadius:Me.borderRadiusSM,alignSelf:"center",[`${ve}-input`]:{position:"absolute",inset:0,zIndex:1,cursor:"pointer",opacity:0,margin:0,[`&:focus-visible + ${ve}-inner`]:Object.assign({},(0,Oe.oN)(Me))},[`${ve}-inner`]:{boxSizing:"border-box",position:"relative",top:0,insetInlineStart:0,display:"block",width:Me.checkboxSize,height:Me.checkboxSize,direction:"ltr",backgroundColor:Me.colorBgContainer,border:`${Me.lineWidth}px ${Me.lineType} ${Me.colorBorder}`,borderRadius:Me.borderRadiusSM,borderCollapse:"separate",transition:`all ${Me.motionDurationSlow}`,"&:after":{boxSizing:"border-box",position:"absolute",top:"50%",insetInlineStart:"21.5%",display:"table",width:Me.checkboxSize/14*5,height:Me.checkboxSize/14*8,border:`${Me.lineWidthBold}px solid ${Me.colorWhite}`,borderTop:0,borderInlineStart:0,transform:"rotate(45deg) scale(0) translate(-50%,-50%)",opacity:0,content:'""',transition:`all ${Me.motionDurationFast} ${Me.motionEaseInBack}, opacity ${Me.motionDurationFast}`}},"& + span":{paddingInlineStart:Me.paddingXS,paddingInlineEnd:Me.paddingXS}})},{[`
|
|
|
${Ee}:not(${Ee}-disabled),
|
|
|
${ve}:not(${ve}-disabled)
|
|
|
`]:{[`&:hover ${ve}-inner`]:{borderColor:Me.colorPrimary}},[`${Ee}:not(${Ee}-disabled)`]:{[`&:hover ${ve}-checked:not(${ve}-disabled) ${ve}-inner`]:{backgroundColor:Me.colorPrimaryHover,borderColor:"transparent"},[`&:hover ${ve}-checked:not(${ve}-disabled):after`]:{borderColor:Me.colorPrimaryHover}}},{[`${ve}-checked`]:{[`${ve}-inner`]:{backgroundColor:Me.colorPrimary,borderColor:Me.colorPrimary,"&:after":{opacity:1,transform:"rotate(45deg) scale(1) translate(-50%,-50%)",transition:`all ${Me.motionDurationMid} ${Me.motionEaseOutBack} ${Me.motionDurationFast}`}}},[`
|
|
|
${Ee}-checked:not(${Ee}-disabled),
|
|
|
${ve}-checked:not(${ve}-disabled)
|
|
|
`]:{[`&:hover ${ve}-inner`]:{backgroundColor:Me.colorPrimaryHover,borderColor:"transparent"}}},{[ve]:{"&-indeterminate":{[`${ve}-inner`]:{backgroundColor:Me.colorBgContainer,borderColor:Me.colorBorder,"&:after":{top:"50%",insetInlineStart:"50%",width:Me.fontSizeLG/2,height:Me.fontSizeLG/2,backgroundColor:Me.colorPrimary,border:0,transform:"translate(-50%, -50%) scale(1)",opacity:1,content:'""'}}}}},{[`${Ee}-disabled`]:{cursor:"not-allowed"},[`${ve}-disabled`]:{[`&, ${ve}-input`]:{cursor:"not-allowed",pointerEvents:"none"},[`${ve}-inner`]:{background:Me.colorBgContainerDisabled,borderColor:Me.colorBorder,"&:after":{borderColor:Me.colorTextDisabled}},"&:after":{display:"none"},"& + span":{color:Me.colorTextDisabled},[`&${ve}-indeterminate ${ve}-inner::after`]:{background:Me.colorTextDisabled}}}]};function _e(Me,ve){const Ee=(0,He.TS)(ve,{checkboxCls:`.${Me}`,checkboxSize:ve.controlInteractiveSize});return[be(Ee)]}It.ZP=(0,Ne.Z)("Checkbox",(Me,ve)=>{let{prefixCls:Ee}=ve;return[_e(Ee,Me)]})},5083:function(At,It,Te){"use strict";Te.d(It,{default:function(){return M0}});var Oe=Te(66649),He=Te.n(Oe),Ne=Te(48736),be=Te(9007),_e=Te.n(be),Me=Te(50991),ve=Te.n(Me),Ee=Te(9084),Pe=Te.n(Ee),xe=Te(58626),pe=Te.n(xe),Ae=Te(13477),Se=Te.n(Ae),ce=Te(64796),te=Te.n(ce);He().extend(te()),He().extend(Se()),He().extend(_e()),He().extend(ve()),He().extend(Pe()),He().extend(pe()),He().extend(function(Pt,Rt){var jt=Rt.prototype,Sn=jt.format;jt.format=function(sr){var ir=(sr||"").replace("Wo","wo");return Sn.bind(this)(ir)}});var ne={bn_BD:"bn-bd",by_BY:"be",en_GB:"en-gb",en_US:"en",fr_BE:"fr",fr_CA:"fr-ca",hy_AM:"hy-am",kmr_IQ:"ku",nl_BE:"nl-be",pt_BR:"pt-br",zh_CN:"zh-cn",zh_HK:"zh-hk",zh_TW:"zh-tw"},le=function(Rt){var jt=ne[Rt];return jt||Rt.split("_")[0]},se=function(){(0,Ne.ET)(!1,"Not match any format. Please help to fire a issue about this.")},fe={getNow:function(){return He()()},getFixedDate:function(Rt){return He()(Rt,["YYYY-M-DD","YYYY-MM-DD"])},getEndDate:function(Rt){return Rt.endOf("month")},getWeekDay:function(Rt){var jt=Rt.locale("en");return jt.weekday()+jt.localeData().firstDayOfWeek()},getYear:function(Rt){return Rt.year()},getMonth:function(Rt){return Rt.month()},getDate:function(Rt){return Rt.date()},getHour:function(Rt){return Rt.hour()},getMinute:function(Rt){return Rt.minute()},getSecond:function(Rt){return Rt.second()},addYear:function(Rt,jt){return Rt.add(jt,"year")},addMonth:function(Rt,jt){return Rt.add(jt,"month")},addDate:function(Rt,jt){return Rt.add(jt,"day")},setYear:function(Rt,jt){return Rt.year(jt)},setMonth:function(Rt,jt){return Rt.month(jt)},setDate:function(Rt,jt){return Rt.date(jt)},setHour:function(Rt,jt){return Rt.hour(jt)},setMinute:function(Rt,jt){return Rt.minute(jt)},setSecond:function(Rt,jt){return Rt.second(jt)},isAfter:function(Rt,jt){return Rt.isAfter(jt)},isValidate:function(Rt){return Rt.isValid()},locale:{getWeekFirstDay:function(Rt){return He()().locale(le(Rt)).localeData().firstDayOfWeek()},getWeekFirstDate:function(Rt,jt){return jt.locale(le(Rt)).weekday(0)},getWeek:function(Rt,jt){return jt.locale(le(Rt)).week()},getShortWeekDays:function(Rt){return He()().locale(le(Rt)).localeData().weekdaysMin()},getShortMonths:function(Rt){return He()().locale(le(Rt)).localeData().monthsShort()},format:function(Rt,jt,Sn){return jt.locale(le(Rt)).format(Sn)},parse:function(Rt,jt,Sn){for(var bn=le(Rt),sr=0;sr<Sn.length;sr+=1){var ir=Sn[sr],Pr=jt;if(ir.includes("wo")||ir.includes("Wo")){for(var Lr=Pr.split("-")[0],qr=Pr.split("-")[1],ka=He()(Lr,"YYYY").startOf("year").locale(bn),ra=0;ra<=52;ra+=1){var $r=ka.add(ra,"week");if($r.format("Wo")===qr)return $r}return se(),null}var Pa=He()(Pr,ir,!0).locale(bn);if(Pa.isValid())return Pa}return jt&&se(),null}}},he=fe,ie=Te(53487),ue=Te(54476),me=Te(59301),Ce={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M880 184H712v-64c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v64H384v-64c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v64H144c-17.7 0-32 14.3-32 32v664c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V216c0-17.7-14.3-32-32-32zm-40 656H184V460h656v380zM184 392V256h128v48c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8v-48h256v48c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8v-48h128v136H184z"}}]},name:"calendar",theme:"outlined"},Ie=Ce,Fe=Te(7657),Re=function(Rt,jt){return me.createElement(Fe.Z,(0,ue.Z)({},Rt,{ref:jt,icon:Ie}))},Ue=me.forwardRef(Re),Ge=Ue,Je={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z"}},{tag:"path",attrs:{d:"M686.7 638.6L544.1 535.5V288c0-4.4-3.6-8-8-8H488c-4.4 0-8 3.6-8 8v275.4c0 2.6 1.2 5 3.3 6.5l165.4 120.6c3.6 2.6 8.6 1.8 11.2-1.7l28.6-39c2.6-3.7 1.8-8.7-1.8-11.2z"}}]},name:"clock-circle",theme:"outlined"},Qe=Je,rt=function(Rt,jt){return me.createElement(Fe.Z,(0,ue.Z)({},Rt,{ref:jt,icon:Qe}))},$e=me.forwardRef(rt),qe=$e,ot=Te(19248),at={icon:{tag:"svg",attrs:{viewBox:"0 0 1024 1024",focusable:"false"},children:[{tag:"path",attrs:{d:"M873.1 596.2l-164-208A32 32 0 00684 376h-64.8c-6.7 0-10.4 7.7-6.3 13l144.3 183H152c-4.4 0-8 3.6-8 8v60c0 4.4 3.6 8 8 8h695.9c26.8 0 41.7-30.8 25.2-51.8z"}}]},name:"swap-right",theme:"outlined"},ut=at,nt=function(Rt,jt){return me.createElement(Fe.Z,(0,ue.Z)({},Rt,{ref:jt,icon:ut}))},lt=me.forwardRef(nt),yt=lt,ft=Te(92310),ct=Te.n(ft),vt=Te(67732),Ut=Te(83652),Zt=Te(31226),en=Te(42403),mn=Te(158),Bt=Te(20068),tn=Te(33885),on=Te(42978),Mn=Te(18929),Dn=Te(26112),sn=Te(80547),rn=Te(13697),Ht=10,Tt=Ht*10,St=7;function Qt(Pt,Rt){if(!Pt&&!Rt)return!0;if(!Pt||!Rt)return!1}function gt(Pt,Rt,jt){var Sn=Qt(Rt,jt);if(typeof Sn=="boolean")return Sn;var bn=Math.floor(Pt.getYear(Rt)/10),sr=Math.floor(Pt.getYear(jt)/10);return bn===sr}function bt(Pt,Rt,jt){var Sn=Qt(Rt,jt);return typeof Sn=="boolean"?Sn:Pt.getYear(Rt)===Pt.getYear(jt)}function Yt(Pt,Rt){var jt=Math.floor(Pt.getMonth(Rt)/3);return jt+1}function kt(Pt,Rt,jt){var Sn=Qt(Rt,jt);return typeof Sn=="boolean"?Sn:bt(Pt,Rt,jt)&&Yt(Pt,Rt)===Yt(Pt,jt)}function Mt(Pt,Rt,jt){var Sn=Qt(Rt,jt);return typeof Sn=="boolean"?Sn:bt(Pt,Rt,jt)&&Pt.getMonth(Rt)===Pt.getMonth(jt)}function ln(Pt,Rt,jt){var Sn=Qt(Rt,jt);return typeof Sn=="boolean"?Sn:Pt.getYear(Rt)===Pt.getYear(jt)&&Pt.getMonth(Rt)===Pt.getMonth(jt)&&Pt.getDate(Rt)===Pt.getDate(jt)}function zn(Pt,Rt,jt){var Sn=Qt(Rt,jt);return typeof Sn=="boolean"?Sn:Pt.getHour(Rt)===Pt.getHour(jt)&&Pt.getMinute(Rt)===Pt.getMinute(jt)&&Pt.getSecond(Rt)===Pt.getSecond(jt)}function Gn(Pt,Rt,jt,Sn){var bn=Qt(jt,Sn);return typeof bn=="boolean"?bn:bt(Pt,jt,Sn)&&Pt.locale.getWeek(Rt,jt)===Pt.locale.getWeek(Rt,Sn)}function Hn(Pt,Rt,jt){return ln(Pt,Rt,jt)&&zn(Pt,Rt,jt)}function nr(Pt,Rt,jt,Sn){return!Rt||!jt||!Sn?!1:!ln(Pt,Rt,Sn)&&!ln(Pt,jt,Sn)&&Pt.isAfter(Sn,Rt)&&Pt.isAfter(jt,Sn)}function Xn(Pt,Rt,jt){var Sn=Rt.locale.getWeekFirstDay(Pt),bn=Rt.setDate(jt,1),sr=Rt.getWeekDay(bn),ir=Rt.addDate(bn,Sn-sr);return Rt.getMonth(ir)===Rt.getMonth(jt)&&Rt.getDate(ir)>1&&(ir=Rt.addDate(ir,-7)),ir}function qt(Pt,Rt,jt){var Sn=arguments.length>3&&arguments[3]!==void 0?arguments[3]:1;switch(Rt){case"year":return jt.addYear(Pt,Sn*10);case"quarter":case"month":return jt.addYear(Pt,Sn);default:return jt.addMonth(Pt,Sn)}}function vn(Pt,Rt){var jt=Rt.generateConfig,Sn=Rt.locale,bn=Rt.format;return typeof bn=="function"?bn(Pt):jt.locale.format(Sn.locale,Pt,bn)}function Un(Pt,Rt){var jt=Rt.generateConfig,Sn=Rt.locale,bn=Rt.formatList;return!Pt||typeof bn[0]=="function"?null:jt.locale.parse(Sn.locale,Pt,bn)}function Ln(Pt){var Rt=Pt.cellDate,jt=Pt.mode,Sn=Pt.disabledDate,bn=Pt.generateConfig;if(!Sn)return!1;var sr=function(ua,Nr,Qr){for(var wa=Nr;wa<=Qr;){var Ei=void 0;switch(ua){case"date":{if(Ei=bn.setDate(Rt,wa),!Sn(Ei))return!1;break}case"month":{if(Ei=bn.setMonth(Rt,wa),!Ln({cellDate:Ei,mode:"month",generateConfig:bn,disabledDate:Sn}))return!1;break}case"year":{if(Ei=bn.setYear(Rt,wa),!Ln({cellDate:Ei,mode:"year",generateConfig:bn,disabledDate:Sn}))return!1;break}}wa+=1}return!0};switch(jt){case"date":case"week":return Sn(Rt);case"month":{var ir=1,Pr=bn.getDate(bn.getEndDate(Rt));return sr("date",ir,Pr)}case"quarter":{var Lr=Math.floor(bn.getMonth(Rt)/3)*3,qr=Lr+2;return sr("month",Lr,qr)}case"year":return sr("month",0,11);case"decade":{var ka=bn.getYear(Rt),ra=Math.floor(ka/Ht)*Ht,$r=ra+Ht-1;return sr("year",ra,$r)}}}function yr(Pt,Rt){var jt=Rt.formatList,Sn=Rt.generateConfig,bn=Rt.locale;return(0,sn.Z)(function(){if(!Pt)return[[""],""];for(var sr="",ir=[],Pr=0;Pr<jt.length;Pr+=1){var Lr=jt[Pr],qr=vn(Pt,{generateConfig:Sn,locale:bn,format:Lr});ir.push(qr),Pr===0&&(sr=qr)}return[ir,sr]},[Pt,jt,bn],function(sr,ir){return!Hn(Sn,sr[0],ir[0])||!(0,rn.Z)(sr[1],ir[1],!0)||!(0,rn.Z)(sr[2],ir[2],!0)})}function kr(Pt,Rt){var jt=Rt.formatList,Sn=Rt.generateConfig,bn=Rt.locale,sr=(0,me.useState)(null),ir=(0,on.Z)(sr,2),Pr=ir[0],Lr=ir[1],qr=(0,me.useRef)(null);function ka(Qr){var wa=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;if(cancelAnimationFrame(qr.current),wa){Lr(Qr);return}qr.current=requestAnimationFrame(function(){Lr(Qr)})}var ra=yr(Pr,{formatList:jt,generateConfig:Sn,locale:bn}),$r=(0,on.Z)(ra,2),Pa=$r[1];function ua(Qr){ka(Qr)}function Nr(){var Qr=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;ka(null,Qr)}return(0,me.useEffect)(function(){Nr(!0)},[Pt]),(0,me.useEffect)(function(){return function(){return cancelAnimationFrame(qr.current)}},[]),[Pa,ua,Nr]}var Dr=Te(10228),Gr=Te(16089),Ma=Te(94480),Ja=Te(29194),Na=new Map;function Da(Pt,Rt){var jt;function Sn(){(0,Ja.Z)(Pt)?Rt():jt=(0,Gr.Z)(function(){Sn()})}return Sn(),function(){Gr.Z.cancel(jt)}}function Di(Pt,Rt,jt){if(Na.get(Pt)&&cancelAnimationFrame(Na.get(Pt)),jt<=0){Na.set(Pt,requestAnimationFrame(function(){Pt.scrollTop=Rt}));return}var Sn=Rt-Pt.scrollTop,bn=Sn/jt*10;Na.set(Pt,requestAnimationFrame(function(){Pt.scrollTop+=bn,Pt.scrollTop!==Rt&&Di(Pt,Rt,jt-10)}))}function _a(Pt,Rt){var jt=Rt.onLeftRight,Sn=Rt.onCtrlLeftRight,bn=Rt.onUpDown,sr=Rt.onPageUpDown,ir=Rt.onEnter,Pr=Pt.which,Lr=Pt.ctrlKey,qr=Pt.metaKey;switch(Pr){case Dr.Z.LEFT:if(Lr||qr){if(Sn)return Sn(-1),!0}else if(jt)return jt(-1),!0;break;case Dr.Z.RIGHT:if(Lr||qr){if(Sn)return Sn(1),!0}else if(jt)return jt(1),!0;break;case Dr.Z.UP:if(bn)return bn(-1),!0;break;case Dr.Z.DOWN:if(bn)return bn(1),!0;break;case Dr.Z.PAGE_UP:if(sr)return sr(-1),!0;break;case Dr.Z.PAGE_DOWN:if(sr)return sr(1),!0;break;case Dr.Z.ENTER:if(ir)return ir(),!0;break}return!1}function Vr(Pt,Rt,jt,Sn){var bn=Pt;if(!bn)switch(Rt){case"time":bn=Sn?"hh:mm:ss a":"HH:mm:ss";break;case"week":bn="gggg-wo";break;case"month":bn="YYYY-MM";break;case"quarter":bn="YYYY-[Q]Q";break;case"year":bn="YYYY";break;default:bn=jt?"YYYY-MM-DD HH:mm:ss":"YYYY-MM-DD"}return bn}function Ya(Pt,Rt,jt){var Sn=Pt==="time"?8:10,bn=typeof Rt=="function"?Rt(jt.getNow()).length:Rt.length;return Math.max(Sn,bn)+2}var ui=null,mr=new Set;function Er(Pt){return!ui&&typeof window!="undefined"&&window.addEventListener&&(ui=function(jt){(0,Ma.Z)(mr).forEach(function(Sn){Sn(jt)})},window.addEventListener("mousedown",ui)),mr.add(Pt),function(){mr.delete(Pt),mr.size===0&&(window.removeEventListener("mousedown",ui),ui=null)}}function ba(Pt){var Rt=Pt.target;if(Pt.composed&&Rt.shadowRoot){var jt;return((jt=Pt.composedPath)===null||jt===void 0?void 0:jt.call(Pt)[0])||Rt}return Rt}var Fn=function(Rt){return Rt==="month"||Rt==="date"?"year":Rt},gr=function(Rt){return Rt==="date"?"month":Rt},br=function(Rt){return Rt==="month"||Rt==="date"?"quarter":Rt},_r=function(Rt){return Rt==="date"?"week":Rt},ha={year:Fn,month:gr,quarter:br,week:_r,time:null,date:null};function Ct(Pt,Rt){return Pt.some(function(jt){return jt&&jt.contains(Rt)})}function we(Pt){var Rt=Pt.open,jt=Pt.value,Sn=Pt.isClickOutside,bn=Pt.triggerOpen,sr=Pt.forwardKeyDown,ir=Pt.onKeyDown,Pr=Pt.blurToCancel,Lr=Pt.onSubmit,qr=Pt.onCancel,ka=Pt.onFocus,ra=Pt.onBlur,$r=Pt.changeOnBlur,Pa=(0,me.useState)(!1),ua=(0,on.Z)(Pa,2),Nr=ua[0],Qr=ua[1],wa=(0,me.useState)(!1),Ei=(0,on.Z)(wa,2),gi=Ei[0],Si=Ei[1],Ii=(0,me.useRef)(!1),bi=(0,me.useRef)(!1),mi=(0,me.useRef)(!1),jo={onMouseDown:function(){Qr(!0),bn(!0)},onKeyDown:function(Vo){var ts=function(){mi.current=!0};if(ir(Vo,ts),!mi.current){switch(Vo.which){case Dr.Z.ENTER:{Rt?Lr()!==!1&&Qr(!0):bn(!0),Vo.preventDefault();return}case Dr.Z.TAB:{Nr&&Rt&&!Vo.shiftKey?(Qr(!1),Vo.preventDefault()):!Nr&&Rt&&!sr(Vo)&&Vo.shiftKey&&(Qr(!0),Vo.preventDefault());return}case Dr.Z.ESC:{Qr(!0),qr();return}}!Rt&&![Dr.Z.SHIFT].includes(Vo.which)?bn(!0):Nr||sr(Vo)}},onFocus:function(Vo){Qr(!0),Si(!0),ka&&ka(Vo)},onBlur:function(Vo){if(Ii.current||!Sn(document.activeElement)){Ii.current=!1;return}Pr?setTimeout(function(){for(var ts=document,Ss=ts.activeElement;Ss&&Ss.shadowRoot;)Ss=Ss.shadowRoot.activeElement;Sn(Ss)&&qr()},0):Rt&&(bn(!1),bi.current&&Lr()),Si(!1),ra==null||ra(Vo)}};return(0,me.useEffect)(function(){bi.current=!1},[Rt]),(0,me.useEffect)(function(){bi.current=!0},[jt]),(0,me.useEffect)(function(){return Er(function(ho){var Vo=ba(ho),ts=Sn(Vo);Rt&&(ts?!$r&&(!gi||ts)&&bn(!1):(Ii.current=!0,(0,Gr.Z)(function(){Ii.current=!1})))})}),[jo,{focused:gi,typing:Nr}]}function Be(Pt,Rt){return me.useMemo(function(){return Pt||(Rt?((0,Ne.ZP)(!1,"`ranges` is deprecated. Please use `presets` instead."),Object.entries(Rt).map(function(jt){var Sn=(0,on.Z)(jt,2),bn=Sn[0],sr=Sn[1];return{label:bn,value:sr}})):[])},[Pt,Rt])}var Le=Te(34280);function je(Pt){var Rt=Pt.valueTexts,jt=Pt.onTextChange,Sn=me.useState(""),bn=(0,on.Z)(Sn,2),sr=bn[0],ir=bn[1],Pr=me.useRef([]);Pr.current=Rt;function Lr(ka){ir(ka),jt(ka)}function qr(){ir(Pr.current[0])}return(0,Le.Z)(function(){Rt.every(function(ka){return ka!==sr})&&qr()},[Rt.join("||")]),[sr,Lr,qr]}var Xe=me.createContext({}),Et=Xe,xt=Te(76190);function Jt(Pt){var Rt=Pt.cellRender,jt=Pt.monthCellRender,Sn=Pt.dateRender,bn=me.useMemo(function(){if(Rt)return Rt;if(!(!jt&&!Sn))return function(sr,ir){var Pr=sr;return Sn&&ir.type==="date"?Sn(Pr,ir.today):jt&&ir.type==="month"?jt(Pr,ir.locale):ir.originNode}},[Rt,jt,Sn]);return bn}function Vt(Pt,Rt){for(var jt=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"0",Sn=String(Pt);Sn.length<Rt;)Sn="".concat(jt).concat(Pt);return Sn}var fn=function(){for(var Rt=arguments.length,jt=new Array(Rt),Sn=0;Sn<Rt;Sn++)jt[Sn]=arguments[Sn];return jt};function dn(Pt){return Pt==null?[]:Array.isArray(Pt)?Pt:[Pt]}function Vn(Pt,Rt){return Pt?Pt[Rt]:null}function Pn(Pt,Rt,jt){var Sn=[Vn(Pt,0),Vn(Pt,1)];return Sn[jt]=typeof Rt=="function"?Rt(Sn[jt]):Rt,!Sn[0]&&!Sn[1]?null:Sn}function Jn(Pt){return typeof Pt=="function"?Pt():Pt}function $n(Pt){var Rt=Pt.cellPrefixCls,jt=Pt.generateConfig,Sn=Pt.rangedValue,bn=Pt.hoverRangedValue,sr=Pt.isInView,ir=Pt.isSameCell,Pr=Pt.offsetCell,Lr=Pt.today,qr=Pt.value;function ka(ra){var $r,Pa=Pr(ra,-1),ua=Pr(ra,1),Nr=Vn(Sn,0),Qr=Vn(Sn,1),wa=Vn(bn,0),Ei=Vn(bn,1),gi=nr(jt,wa,Ei,ra);function Si(Vo){return ir(Nr,Vo)}function Ii(Vo){return ir(Qr,Vo)}var bi=ir(wa,ra),mi=ir(Ei,ra),jo=(gi||mi)&&(!sr(Pa)||Ii(Pa)),ho=(gi||bi)&&(!sr(ua)||Si(ua));return $r={},(0,Bt.Z)($r,"".concat(Rt,"-in-view"),sr(ra)),(0,Bt.Z)($r,"".concat(Rt,"-in-range"),nr(jt,Nr,Qr,ra)),(0,Bt.Z)($r,"".concat(Rt,"-range-start"),Si(ra)),(0,Bt.Z)($r,"".concat(Rt,"-range-end"),Ii(ra)),(0,Bt.Z)($r,"".concat(Rt,"-range-start-single"),Si(ra)&&!Qr),(0,Bt.Z)($r,"".concat(Rt,"-range-end-single"),Ii(ra)&&!Nr),(0,Bt.Z)($r,"".concat(Rt,"-range-start-near-hover"),Si(ra)&&(ir(Pa,wa)||nr(jt,wa,Ei,Pa))),(0,Bt.Z)($r,"".concat(Rt,"-range-end-near-hover"),Ii(ra)&&(ir(ua,Ei)||nr(jt,wa,Ei,ua))),(0,Bt.Z)($r,"".concat(Rt,"-range-hover"),gi),(0,Bt.Z)($r,"".concat(Rt,"-range-hover-start"),bi),(0,Bt.Z)($r,"".concat(Rt,"-range-hover-end"),mi),(0,Bt.Z)($r,"".concat(Rt,"-range-hover-edge-start"),jo),(0,Bt.Z)($r,"".concat(Rt,"-range-hover-edge-end"),ho),(0,Bt.Z)($r,"".concat(Rt,"-range-hover-edge-start-near-range"),jo&&ir(Pa,Qr)),(0,Bt.Z)($r,"".concat(Rt,"-range-hover-edge-end-near-range"),ho&&ir(ua,Nr)),(0,Bt.Z)($r,"".concat(Rt,"-today"),ir(Lr,ra)),(0,Bt.Z)($r,"".concat(Rt,"-selected"),ir(qr,ra)),$r}return ka}var hr=me.createContext({}),hn=hr;function an(Pt,Rt,jt,Sn,bn){var sr=Pt.setHour(Rt,jt);return sr=Pt.setMinute(sr,Sn),sr=Pt.setSecond(sr,bn),sr}function In(Pt,Rt,jt){if(!jt)return Rt;var Sn=Rt;return Sn=Pt.setHour(Sn,Pt.getHour(jt)),Sn=Pt.setMinute(Sn,Pt.getMinute(jt)),Sn=Pt.setSecond(Sn,Pt.getSecond(jt)),Sn}function jn(Pt,Rt,jt,Sn,bn,sr){var ir=Math.floor(Pt/Sn)*Sn;if(ir<Pt)return[ir,60-bn,60-sr];var Pr=Math.floor(Rt/bn)*bn;if(Pr<Rt)return[ir,Pr,60-sr];var Lr=Math.floor(jt/sr)*sr;return[ir,Pr,Lr]}function cr(Pt,Rt){var jt=Pt.getYear(Rt),Sn=Pt.getMonth(Rt)+1,bn=Pt.getEndDate(Pt.getFixedDate("".concat(jt,"-").concat(Sn,"-01"))),sr=Pt.getDate(bn),ir=Sn<10?"0".concat(Sn):"".concat(Sn);return"".concat(jt,"-").concat(ir,"-").concat(sr)}function or(Pt){for(var Rt=Pt.prefixCls,jt=Pt.disabledDate,Sn=Pt.onSelect,bn=Pt.picker,sr=Pt.rowNum,ir=Pt.colNum,Pr=Pt.prefixColumn,Lr=Pt.rowClassName,qr=Pt.baseDate,ka=Pt.getCellClassName,ra=Pt.getCellText,$r=Pt.getCellNode,Pa=Pt.getCellDate,ua=Pt.generateConfig,Nr=Pt.titleCell,Qr=Pt.headerCells,wa=me.useContext(Et),Ei=wa.onDateMouseEnter,gi=wa.onDateMouseLeave,Si=wa.mode,Ii="".concat(Rt,"-cell"),bi=[],mi=0;mi<sr;mi+=1){for(var jo=[],ho=void 0,Vo=function(){var Zs,fa=mi*ir+ts,Ko=Pa(qr,fa),No=Ln({cellDate:Ko,mode:Si,disabledDate:jt,generateConfig:ua});ts===0&&(ho=Ko,Pr&&jo.push(Pr(ho)));var ns=Nr&&Nr(Ko),Eo=me.createElement("div",{className:"".concat(Ii,"-inner")},ra(Ko));jo.push(me.createElement("td",{key:ts,title:ns,className:ct()(Ii,(0,tn.Z)((Zs={},(0,Bt.Z)(Zs,"".concat(Ii,"-disabled"),No),(0,Bt.Z)(Zs,"".concat(Ii,"-start"),ra(Ko)===1||bn==="year"&&Number(ns)%10===0),(0,Bt.Z)(Zs,"".concat(Ii,"-end"),ns===cr(ua,Ko)||bn==="year"&&Number(ns)%10===9),Zs),ka(Ko))),onClick:function(){No||Sn(Ko)},onMouseEnter:function(){!No&&Ei&&Ei(Ko)},onMouseLeave:function(){!No&&gi&&gi(Ko)}},$r?$r(Ko,Eo):Eo))},ts=0;ts<ir;ts+=1)Vo();bi.push(me.createElement("tr",{key:mi,className:Lr&&Lr(ho)},jo))}return me.createElement("div",{className:"".concat(Rt,"-body")},me.createElement("table",{className:"".concat(Rt,"-content")},Qr&&me.createElement("thead",null,me.createElement("tr",null,Qr)),me.createElement("tbody",null,bi)))}function Qn(Pt){var Rt=Pt.prefixCls,jt=Pt.generateConfig,Sn=Pt.prefixColumn,bn=Pt.locale,sr=Pt.rowCount,ir=Pt.viewDate,Pr=Pt.value,Lr=Pt.cellRender,qr=Pt.isSameCell,ka=me.useContext(hn),ra=ka.rangedValue,$r=ka.hoverRangedValue,Pa=Xn(bn.locale,jt,ir),ua="".concat(Rt,"-cell"),Nr=jt.locale.getWeekFirstDay(bn.locale),Qr=jt.getNow(),wa=[],Ei=bn.shortWeekDays||(jt.locale.getShortWeekDays?jt.locale.getShortWeekDays(bn.locale):[]);Sn&&wa.push(me.createElement("th",{key:"empty","aria-label":"empty cell"}));for(var gi=0;gi<St;gi+=1)wa.push(me.createElement("th",{key:gi},Ei[(gi+Nr)%St]));var Si=$n({cellPrefixCls:ua,today:Qr,value:Pr,generateConfig:jt,rangedValue:Sn?null:ra,hoverRangedValue:Sn?null:$r,isSameCell:qr||function(bi,mi){return ln(jt,bi,mi)},isInView:function(mi){return Mt(jt,mi,ir)},offsetCell:function(mi,jo){return jt.addDate(mi,jo)}}),Ii=Lr?function(bi,mi){return Lr(bi,{originNode:mi,today:Qr,type:"date",locale:bn})}:void 0;return me.createElement(or,(0,ue.Z)({},Pt,{rowNum:sr,colNum:St,baseDate:Pa,getCellNode:Ii,getCellText:jt.getDate,getCellClassName:Si,getCellDate:jt.addDate,titleCell:function(mi){return vn(mi,{locale:bn,format:"YYYY-MM-DD",generateConfig:jt})},headerCells:wa}))}var dr=Qn,xr={visibility:"hidden"};function On(Pt){var Rt=Pt.prefixCls,jt=Pt.prevIcon,Sn=jt===void 0?"\u2039":jt,bn=Pt.nextIcon,sr=bn===void 0?"\u203A":bn,ir=Pt.superPrevIcon,Pr=ir===void 0?"\xAB":ir,Lr=Pt.superNextIcon,qr=Lr===void 0?"\xBB":Lr,ka=Pt.onSuperPrev,ra=Pt.onSuperNext,$r=Pt.onPrev,Pa=Pt.onNext,ua=Pt.children,Nr=me.useContext(Et),Qr=Nr.hideNextBtn,wa=Nr.hidePrevBtn;return me.createElement("div",{className:Rt},ka&&me.createElement("button",{type:"button",onClick:ka,tabIndex:-1,className:"".concat(Rt,"-super-prev-btn"),style:wa?xr:{}},Pr),$r&&me.createElement("button",{type:"button",onClick:$r,tabIndex:-1,className:"".concat(Rt,"-prev-btn"),style:wa?xr:{}},Sn),me.createElement("div",{className:"".concat(Rt,"-view")},ua),Pa&&me.createElement("button",{type:"button",onClick:Pa,tabIndex:-1,className:"".concat(Rt,"-next-btn"),style:Qr?xr:{}},sr),ra&&me.createElement("button",{type:"button",onClick:ra,tabIndex:-1,className:"".concat(Rt,"-super-next-btn"),style:Qr?xr:{}},qr))}var vr=On;function Yn(Pt){var Rt=Pt.prefixCls,jt=Pt.generateConfig,Sn=Pt.locale,bn=Pt.viewDate,sr=Pt.onNextMonth,ir=Pt.onPrevMonth,Pr=Pt.onNextYear,Lr=Pt.onPrevYear,qr=Pt.onYearClick,ka=Pt.onMonthClick,ra=me.useContext(Et),$r=ra.hideHeader;if($r)return null;var Pa="".concat(Rt,"-header"),ua=Sn.shortMonths||(jt.locale.getShortMonths?jt.locale.getShortMonths(Sn.locale):[]),Nr=jt.getMonth(bn),Qr=me.createElement("button",{type:"button",key:"year",onClick:qr,tabIndex:-1,className:"".concat(Rt,"-year-btn")},vn(bn,{locale:Sn,format:Sn.yearFormat,generateConfig:jt})),wa=me.createElement("button",{type:"button",key:"month",onClick:ka,tabIndex:-1,className:"".concat(Rt,"-month-btn")},Sn.monthFormat?vn(bn,{locale:Sn,format:Sn.monthFormat,generateConfig:jt}):ua[Nr]),Ei=Sn.monthBeforeYear?[wa,Qr]:[Qr,wa];return me.createElement(vr,(0,ue.Z)({},Pt,{prefixCls:Pa,onSuperPrev:Lr,onPrev:ir,onNext:sr,onSuperNext:Pr}),Ei)}var jr=Yn,ri=6;function vi(Pt){var Rt=Pt.prefixCls,jt=Pt.panelName,Sn=jt===void 0?"date":jt,bn=Pt.keyboardConfig,sr=Pt.active,ir=Pt.operationRef,Pr=Pt.generateConfig,Lr=Pt.value,qr=Pt.viewDate,ka=Pt.onViewDateChange,ra=Pt.onPanelChange,$r=Pt.onSelect,Pa="".concat(Rt,"-").concat(Sn,"-panel");ir.current={onKeyDown:function(wa){return _a(wa,(0,tn.Z)({onLeftRight:function(gi){$r(Pr.addDate(Lr||qr,gi),"key")},onCtrlLeftRight:function(gi){$r(Pr.addYear(Lr||qr,gi),"key")},onUpDown:function(gi){$r(Pr.addDate(Lr||qr,gi*St),"key")},onPageUpDown:function(gi){$r(Pr.addMonth(Lr||qr,gi),"key")}},bn))}};var ua=function(wa){var Ei=Pr.addYear(qr,wa);ka(Ei),ra(null,Ei)},Nr=function(wa){var Ei=Pr.addMonth(qr,wa);ka(Ei),ra(null,Ei)};return me.createElement("div",{className:ct()(Pa,(0,Bt.Z)({},"".concat(Pa,"-active"),sr))},me.createElement(jr,(0,ue.Z)({},Pt,{prefixCls:Rt,value:Lr,viewDate:qr,onPrevYear:function(){ua(-1)},onNextYear:function(){ua(1)},onPrevMonth:function(){Nr(-1)},onNextMonth:function(){Nr(1)},onMonthClick:function(){ra("month",qr)},onYearClick:function(){ra("year",qr)}})),me.createElement(dr,(0,ue.Z)({},Pt,{onSelect:function(wa){return $r(wa,"mouse")},prefixCls:Rt,value:Lr,viewDate:qr,rowCount:ri})))}var ci=vi;function Kr(Pt){var Rt=me.useContext(Et),jt=Rt.hideHeader;if(jt)return null;var Sn=Pt.prefixCls,bn=Pt.generateConfig,sr=Pt.locale,ir=Pt.value,Pr=Pt.format,Lr="".concat(Sn,"-header");return me.createElement(vr,{prefixCls:Lr},ir?vn(ir,{locale:sr,format:Pr,generateConfig:bn}):"\xA0")}var Ia=Kr;function Ta(Pt){var Rt=Pt.value,jt=Pt.generateConfig,Sn=Pt.disabledMinutes,bn=Pt.disabledSeconds,sr=Pt.minutes,ir=Pt.seconds,Pr=Pt.use12Hours,Lr=function(ka,ra,$r,Pa){var ua=jt.getNow(),Nr=Rt||ua,Qr=ra<0?jt.getHour(ua):ra,wa=$r<0?jt.getMinute(ua):$r,Ei=Pa<0?jt.getSecond(ua):Pa,gi=Sn&&Sn(Qr);if(gi!=null&&gi.includes(wa)){var Si=sr.find(function(mi){return!gi.includes(mi.value)});if(Si)wa=Si.value;else return null}var Ii=bn&&bn(Qr,wa);if(Ii!=null&&Ii.includes(Ei)){var bi=ir.find(function(mi){return!Ii.includes(mi.value)});if(bi)Ei=bi.value;else return null}return Nr=an(jt,Nr,!Pr||!ka?Qr:Qr+12,wa,Ei),Nr};return Lr}function la(Pt){var Rt=Pt.prefixCls,jt=Pt.units,Sn=Pt.onSelect,bn=Pt.value,sr=Pt.active,ir=Pt.hideDisabledOptions,Pr=Pt.info,Lr=Pt.type,qr="".concat(Rt,"-cell"),ka=me.useContext(Et),ra=ka.open,$r=(0,me.useRef)(null),Pa=(0,me.useRef)(new Map),ua=(0,me.useRef)();return(0,me.useLayoutEffect)(function(){var Nr=Pa.current.get(bn);Nr&&ra!==!1&&Di($r.current,Nr.offsetTop,120)},[bn]),(0,me.useLayoutEffect)(function(){if(ra){var Nr=Pa.current.get(bn);Nr&&(ua.current=Da(Nr,function(){Di($r.current,Nr.offsetTop,0)}))}return function(){var Qr;(Qr=ua.current)===null||Qr===void 0||Qr.call(ua)}},[ra]),me.createElement("ul",{className:ct()("".concat(Rt,"-column"),(0,Bt.Z)({},"".concat(Rt,"-column-active"),sr)),ref:$r,style:{position:"relative"}},jt.map(function(Nr){var Qr;return ir&&Nr.disabled?null:me.createElement("li",{key:Nr.value,ref:function(Ei){Pa.current.set(Nr.value,Ei)},className:ct()(qr,(Qr={},(0,Bt.Z)(Qr,"".concat(qr,"-disabled"),Nr.disabled),(0,Bt.Z)(Qr,"".concat(qr,"-selected"),bn===Nr.value),Qr)),onClick:function(){Nr.disabled||Sn(Nr.value)}},Pr.cellRender?Pr.cellRender(Nr.value,{today:Pr.today,locale:Pr.locale,originNode:me.createElement("div",{className:"".concat(qr,"-inner")},Nr.label),type:"time",subType:Lr}):me.createElement("div",{className:"".concat(qr,"-inner")},Nr.label))}))}var ei=la;function Wi(Pt,Rt){if(Pt.length!==Rt.length)return!0;for(var jt=0;jt<Pt.length;jt+=1)if(Pt[jt].disabled!==Rt[jt].disabled)return!0;return!1}function za(Pt,Rt,jt,Sn){for(var bn=[],sr=jt>=1?jt|0:1,ir=Pt;ir<=Rt;ir+=sr)bn.push({label:Vt(ir,2),value:ir,disabled:(Sn||[]).includes(ir)});return bn}function _i(Pt){var Rt=Pt.generateConfig,jt=Pt.prefixCls,Sn=Pt.operationRef,bn=Pt.activeColumnIndex,sr=Pt.value,ir=Pt.showHour,Pr=Pt.showMinute,Lr=Pt.showSecond,qr=Pt.use12Hours,ka=Pt.hourStep,ra=ka===void 0?1:ka,$r=Pt.minuteStep,Pa=$r===void 0?1:$r,ua=Pt.secondStep,Nr=ua===void 0?1:ua,Qr=Pt.disabledHours,wa=Pt.disabledMinutes,Ei=Pt.disabledSeconds,gi=Pt.disabledTime,Si=Pt.hideDisabledOptions,Ii=Pt.onSelect,bi=Pt.cellRender,mi=Pt.locale,jo=[],ho="".concat(jt,"-content"),Vo="".concat(jt,"-time-panel"),ts,Ss=sr?Rt.getHour(sr):-1,Zs=Ss,fa=sr?Rt.getMinute(sr):-1,Ko=sr?Rt.getSecond(sr):-1,No=Rt.getNow(),ns=me.useMemo(function(){if(gi){var Sr=gi(No);return[Sr.disabledHours,Sr.disabledMinutes,Sr.disabledSeconds]}return[Qr,wa,Ei]},[Qr,wa,Ei,gi,No]),Eo=(0,on.Z)(ns,3),Ui=Eo[0],ms=Eo[1],rs=Eo[2],Ol=za(0,23,ra,Ui&&Ui()),ml=(0,sn.Z)(function(){return Ol},Ol,Wi);qr&&(ts=Zs>=12,Zs%=12);var Ft=me.useMemo(function(){if(!qr)return[!1,!1];var Sr=[!0,!0];return ml.forEach(function(wr){var ta=wr.disabled,Yr=wr.value;ta||(Yr>=12?Sr[1]=!1:Sr[0]=!1)}),Sr},[qr,ml]),Wt=(0,on.Z)(Ft,2),cn=Wt[0],An=Wt[1],Nn=me.useMemo(function(){return qr?ml.filter(ts?function(Sr){return Sr.value>=12}:function(Sr){return Sr.value<12}).map(function(Sr){var wr=Sr.value%12,ta=wr===0?"12":Vt(wr,2);return(0,tn.Z)((0,tn.Z)({},Sr),{},{label:ta,value:wr})}):ml},[qr,ts,ml]),kn=za(0,59,Pa,ms&&ms(Ss)),fr=za(0,59,Nr,rs&&rs(Ss,fa)),ur=Ta({value:sr,generateConfig:Rt,disabledMinutes:ms,disabledSeconds:rs,minutes:kn,seconds:fr,use12Hours:qr});Sn.current={onUpDown:function(wr){var ta=jo[bn];if(ta)for(var Yr=ta.units.findIndex(function(Ka){return Ka.value===ta.value}),Xr=ta.units.length,xa=1;xa<Xr;xa+=1){var ma=ta.units[(Yr+wr*xa+Xr)%Xr];if(ma.disabled!==!0){ta.onSelect(ma.value);break}}}};function tr(Sr,wr,ta,Yr,Xr){Sr!==!1&&jo.push({node:me.cloneElement(wr,{prefixCls:Vo,value:ta,active:bn===jo.length,onSelect:Xr,units:Yr,hideDisabledOptions:Si}),onSelect:Xr,value:ta,units:Yr})}tr(ir,me.createElement(ei,{key:"hour",type:"hour",info:{today:No,locale:mi,cellRender:bi}}),Zs,Nn,function(Sr){Ii(ur(ts,Sr,fa,Ko),"mouse")}),tr(Pr,me.createElement(ei,{key:"minute",type:"minute",info:{today:No,locale:mi,cellRender:bi}}),fa,kn,function(Sr){Ii(ur(ts,Zs,Sr,Ko),"mouse")}),tr(Lr,me.createElement(ei,{key:"second",type:"second",info:{today:No,locale:mi,cellRender:bi}}),Ko,fr,function(Sr){Ii(ur(ts,Zs,fa,Sr),"mouse")});var Ir=-1;return typeof ts=="boolean"&&(Ir=ts?1:0),tr(qr===!0,me.createElement(ei,{key:"meridiem",type:"meridiem",info:{today:No,locale:mi,cellRender:bi}}),Ir,[{label:"AM",value:0,disabled:cn},{label:"PM",value:1,disabled:An}],function(Sr){Ii(ur(!!Sr,Zs,fa,Ko),"mouse")}),me.createElement("div",{className:ho},jo.map(function(Sr){var wr=Sr.node;return wr}))}var $i=_i,Uo=function(Rt){return Rt.filter(function(jt){return jt!==!1}).length};function yo(Pt){var Rt=Pt.generateConfig,jt=Pt.format,Sn=jt===void 0?"HH:mm:ss":jt,bn=Pt.prefixCls,sr=Pt.active,ir=Pt.operationRef,Pr=Pt.showHour,Lr=Pt.showMinute,qr=Pt.showSecond,ka=Pt.use12Hours,ra=ka===void 0?!1:ka,$r=Pt.onSelect,Pa=Pt.value,ua="".concat(bn,"-time-panel"),Nr=me.useRef(),Qr=me.useState(-1),wa=(0,on.Z)(Qr,2),Ei=wa[0],gi=wa[1],Si=Uo([Pr,Lr,qr,ra]);return ir.current={onKeyDown:function(bi){return _a(bi,{onLeftRight:function(jo){gi((Ei+jo+Si)%Si)},onUpDown:function(jo){Ei===-1?gi(0):Nr.current&&Nr.current.onUpDown(jo)},onEnter:function(){$r(Pa||Rt.getNow(),"key"),gi(-1)}})},onBlur:function(){gi(-1)}},me.createElement("div",{className:ct()(ua,(0,Bt.Z)({},"".concat(ua,"-active"),sr))},me.createElement(Ia,(0,ue.Z)({},Pt,{format:Sn,prefixCls:bn})),me.createElement($i,(0,ue.Z)({},Pt,{prefixCls:bn,activeColumnIndex:Ei,operationRef:Nr})))}var sl=yo,ds=fn("date","time");function bo(Pt){var Rt=Pt.prefixCls,jt=Pt.operationRef,Sn=Pt.generateConfig,bn=Pt.value,sr=Pt.defaultValue,ir=Pt.disabledTime,Pr=Pt.showTime,Lr=Pt.onSelect,qr=Pt.cellRender,ka="".concat(Rt,"-datetime-panel"),ra=me.useState(null),$r=(0,on.Z)(ra,2),Pa=$r[0],ua=$r[1],Nr=me.useRef({}),Qr=me.useRef({}),wa=(0,xt.Z)(Pr)==="object"?(0,tn.Z)({},Pr):{};function Ei(bi){var mi=ds.indexOf(Pa)+bi,jo=ds[mi]||null;return jo}var gi=function(mi){Qr.current.onBlur&&Qr.current.onBlur(mi),ua(null)};jt.current={onKeyDown:function(mi){if(mi.which===Dr.Z.TAB){var jo=Ei(mi.shiftKey?-1:1);return ua(jo),jo&&mi.preventDefault(),!0}if(Pa){var ho=Pa==="date"?Nr:Qr;return ho.current&&ho.current.onKeyDown&&ho.current.onKeyDown(mi),!0}return[Dr.Z.LEFT,Dr.Z.RIGHT,Dr.Z.UP,Dr.Z.DOWN].includes(mi.which)?(ua("date"),!0):!1},onBlur:gi,onClose:gi};var Si=function(mi,jo){var ho=mi;jo==="date"&&!bn&&wa.defaultValue?(ho=Sn.setHour(ho,Sn.getHour(wa.defaultValue)),ho=Sn.setMinute(ho,Sn.getMinute(wa.defaultValue)),ho=Sn.setSecond(ho,Sn.getSecond(wa.defaultValue))):jo==="time"&&!bn&&sr&&(ho=Sn.setYear(ho,Sn.getYear(sr)),ho=Sn.setMonth(ho,Sn.getMonth(sr)),ho=Sn.setDate(ho,Sn.getDate(sr))),Lr&&Lr(ho,"mouse")},Ii=ir?ir(bn||null):{};return me.createElement("div",{className:ct()(ka,(0,Bt.Z)({},"".concat(ka,"-active"),Pa))},me.createElement(ci,(0,ue.Z)({},Pt,{cellRender:qr,operationRef:Nr,active:Pa==="date",onSelect:function(mi){Si(In(Sn,mi,!bn&&(0,xt.Z)(Pr)==="object"?Pr.defaultValue:null),"date")}})),me.createElement(sl,(0,ue.Z)({},Pt,{cellRender:qr?function(bi,mi){return qr(bi,(0,tn.Z)((0,tn.Z)({},mi),{},{type:"time"}))}:void 0,format:void 0},wa,Ii,{disabledTime:null,defaultValue:void 0,operationRef:Qr,active:Pa==="time",onSelect:function(mi){Si(mi,"time")}})))}var hs=bo;function ss(Pt){var Rt=Pt.prefixCls,jt=Pt.generateConfig,Sn=Pt.viewDate,bn=Pt.onPrevDecades,sr=Pt.onNextDecades,ir=me.useContext(Et),Pr=ir.hideHeader;if(Pr)return null;var Lr="".concat(Rt,"-header"),qr=jt.getYear(Sn),ka=Math.floor(qr/Tt)*Tt,ra=ka+Tt-1;return me.createElement(vr,(0,ue.Z)({},Pt,{prefixCls:Lr,onSuperPrev:bn,onSuperNext:sr}),ka,"-",ra)}var Yo=ss,Wo=3,Rs=4;function tl(Pt){var Rt=Ht-1,jt=Pt.prefixCls,Sn=Pt.viewDate,bn=Pt.generateConfig,sr=Pt.cellRender,ir=Pt.locale,Pr="".concat(jt,"-cell"),Lr=bn.getYear(Sn),qr=Math.floor(Lr/Ht)*Ht,ka=Math.floor(Lr/Tt)*Tt,ra=ka+Tt-1,$r=bn.setYear(Sn,ka-Math.ceil((Wo*Rs*Ht-Tt)/2)),Pa=function(Qr){var wa,Ei=bn.getYear(Qr),gi=Ei+Rt;return wa={},(0,Bt.Z)(wa,"".concat(Pr,"-in-view"),ka<=Ei&&gi<=ra),(0,Bt.Z)(wa,"".concat(Pr,"-selected"),Ei===qr),wa},ua=sr?function(Nr,Qr){return sr(Nr,{originNode:Qr,today:bn.getNow(),type:"decade",locale:ir})}:void 0;return me.createElement(or,(0,ue.Z)({},Pt,{rowNum:Rs,colNum:Wo,baseDate:$r,getCellNode:ua,getCellText:function(Qr){var wa=bn.getYear(Qr);return"".concat(wa,"-").concat(wa+Rt)},getCellClassName:Pa,getCellDate:function(Qr,wa){return bn.addYear(Qr,wa*Ht)}}))}var Pl=tl;function Gs(Pt){var Rt=Pt.prefixCls,jt=Pt.onViewDateChange,Sn=Pt.generateConfig,bn=Pt.viewDate,sr=Pt.operationRef,ir=Pt.onSelect,Pr=Pt.onPanelChange,Lr="".concat(Rt,"-decade-panel");sr.current={onKeyDown:function($r){return _a($r,{onLeftRight:function(ua){ir(Sn.addYear(bn,ua*Ht),"key")},onCtrlLeftRight:function(ua){ir(Sn.addYear(bn,ua*Tt),"key")},onUpDown:function(ua){ir(Sn.addYear(bn,ua*Ht*Wo),"key")},onEnter:function(){Pr("year",bn)}})}};var qr=function($r){var Pa=Sn.addYear(bn,$r*Tt);jt(Pa),Pr(null,Pa)},ka=function($r){ir($r,"mouse"),Pr("year",$r)};return me.createElement("div",{className:Lr},me.createElement(Yo,(0,ue.Z)({},Pt,{prefixCls:Rt,onPrevDecades:function(){qr(-1)},onNextDecades:function(){qr(1)}})),me.createElement(Pl,(0,ue.Z)({},Pt,{prefixCls:Rt,onSelect:ka})))}var il=Gs;function nl(Pt){var Rt=Pt.prefixCls,jt=Pt.generateConfig,Sn=Pt.locale,bn=Pt.viewDate,sr=Pt.onNextYear,ir=Pt.onPrevYear,Pr=Pt.onYearClick,Lr=me.useContext(Et),qr=Lr.hideHeader;if(qr)return null;var ka="".concat(Rt,"-header");return me.createElement(vr,(0,ue.Z)({},Pt,{prefixCls:ka,onSuperPrev:ir,onSuperNext:sr}),me.createElement("button",{type:"button",onClick:Pr,className:"".concat(Rt,"-year-btn")},vn(bn,{locale:Sn,format:Sn.yearFormat,generateConfig:jt})))}var uo=nl,Xo=3,Ho=4;function Xs(Pt){var Rt=Pt.prefixCls,jt=Pt.locale,Sn=Pt.value,bn=Pt.viewDate,sr=Pt.generateConfig,ir=Pt.cellRender,Pr=me.useContext(hn),Lr=Pr.rangedValue,qr=Pr.hoverRangedValue,ka="".concat(Rt,"-cell"),ra=$n({cellPrefixCls:ka,value:Sn,generateConfig:sr,rangedValue:Lr,hoverRangedValue:qr,isSameCell:function(Qr,wa){return Mt(sr,Qr,wa)},isInView:function(){return!0},offsetCell:function(Qr,wa){return sr.addMonth(Qr,wa)}}),$r=jt.shortMonths||(sr.locale.getShortMonths?sr.locale.getShortMonths(jt.locale):[]),Pa=sr.setMonth(bn,0),ua=ir?function(Nr,Qr){return ir(Nr,{originNode:Qr,locale:jt,today:sr.getNow(),type:"month"})}:void 0;return me.createElement(or,(0,ue.Z)({},Pt,{rowNum:Ho,colNum:Xo,baseDate:Pa,getCellNode:ua,getCellText:function(Qr){return jt.monthFormat?vn(Qr,{locale:jt,format:jt.monthFormat,generateConfig:sr}):$r[sr.getMonth(Qr)]},getCellClassName:ra,getCellDate:sr.addMonth,titleCell:function(Qr){return vn(Qr,{locale:jt,format:"YYYY-MM",generateConfig:sr})}}))}var Il=Xs;function _l(Pt){var Rt=Pt.prefixCls,jt=Pt.operationRef,Sn=Pt.onViewDateChange,bn=Pt.generateConfig,sr=Pt.value,ir=Pt.viewDate,Pr=Pt.onPanelChange,Lr=Pt.onSelect,qr="".concat(Rt,"-month-panel");jt.current={onKeyDown:function($r){return _a($r,{onLeftRight:function(ua){Lr(bn.addMonth(sr||ir,ua),"key")},onCtrlLeftRight:function(ua){Lr(bn.addYear(sr||ir,ua),"key")},onUpDown:function(ua){Lr(bn.addMonth(sr||ir,ua*Xo),"key")},onEnter:function(){Pr("date",sr||ir)}})}};var ka=function($r){var Pa=bn.addYear(ir,$r);Sn(Pa),Pr(null,Pa)};return me.createElement("div",{className:qr},me.createElement(uo,(0,ue.Z)({},Pt,{prefixCls:Rt,onPrevYear:function(){ka(-1)},onNextYear:function(){ka(1)},onYearClick:function(){Pr("year",ir)}})),me.createElement(Il,(0,ue.Z)({},Pt,{prefixCls:Rt,onSelect:function($r){Lr($r,"mouse"),Pr("date",$r)}})))}var Go=_l;function lu(Pt){var Rt=Pt.prefixCls,jt=Pt.generateConfig,Sn=Pt.locale,bn=Pt.viewDate,sr=Pt.onNextYear,ir=Pt.onPrevYear,Pr=Pt.onYearClick,Lr=me.useContext(Et),qr=Lr.hideHeader;if(qr)return null;var ka="".concat(Rt,"-header");return me.createElement(vr,(0,ue.Z)({},Pt,{prefixCls:ka,onSuperPrev:ir,onSuperNext:sr}),me.createElement("button",{type:"button",onClick:Pr,className:"".concat(Rt,"-year-btn")},vn(bn,{locale:Sn,format:Sn.yearFormat,generateConfig:jt})))}var Os=lu,Vs=4,Mu=1;function Al(Pt){var Rt=Pt.prefixCls,jt=Pt.locale,Sn=Pt.value,bn=Pt.viewDate,sr=Pt.generateConfig,ir=Pt.cellRender,Pr=me.useContext(hn),Lr=Pr.rangedValue,qr=Pr.hoverRangedValue,ka="".concat(Rt,"-cell"),ra=$n({cellPrefixCls:ka,value:Sn,generateConfig:sr,rangedValue:Lr,hoverRangedValue:qr,isSameCell:function(Nr,Qr){return kt(sr,Nr,Qr)},isInView:function(){return!0},offsetCell:function(Nr,Qr){return sr.addMonth(Nr,Qr*3)}}),$r=sr.setDate(sr.setMonth(bn,0),1),Pa=ir?function(ua,Nr){return ir(ua,{originNode:Nr,locale:jt,today:sr.getNow(),type:"quarter"})}:void 0;return me.createElement(or,(0,ue.Z)({},Pt,{rowNum:Mu,colNum:Vs,baseDate:$r,getCellNode:Pa,getCellText:function(Nr){return vn(Nr,{locale:jt,format:jt.quarterFormat||"[Q]Q",generateConfig:sr})},getCellClassName:ra,getCellDate:function(Nr,Qr){return sr.addMonth(Nr,Qr*3)},titleCell:function(Nr){return vn(Nr,{locale:jt,format:"YYYY-[Q]Q",generateConfig:sr})}}))}var ol=Al;function uc(Pt){var Rt=Pt.prefixCls,jt=Pt.operationRef,Sn=Pt.onViewDateChange,bn=Pt.generateConfig,sr=Pt.value,ir=Pt.viewDate,Pr=Pt.onPanelChange,Lr=Pt.onSelect,qr="".concat(Rt,"-quarter-panel");jt.current={onKeyDown:function($r){return _a($r,{onLeftRight:function(ua){Lr(bn.addMonth(sr||ir,ua*3),"key")},onCtrlLeftRight:function(ua){Lr(bn.addYear(sr||ir,ua),"key")},onUpDown:function(ua){Lr(bn.addYear(sr||ir,ua),"key")}})}};var ka=function($r){var Pa=bn.addYear(ir,$r);Sn(Pa),Pr(null,Pa)};return me.createElement("div",{className:qr},me.createElement(Os,(0,ue.Z)({},Pt,{prefixCls:Rt,onPrevYear:function(){ka(-1)},onNextYear:function(){ka(1)},onYearClick:function(){Pr("year",ir)}})),me.createElement(ol,(0,ue.Z)({},Pt,{prefixCls:Rt,onSelect:function($r){Lr($r,"mouse")}})))}var zi=uc;function Ga(Pt){var Rt=Pt.prefixCls,jt=Pt.generateConfig,Sn=Pt.locale,bn=Pt.value,sr=Pt.disabledDate,ir=Pt.onSelect,Pr=me.useContext(hn),Lr=Pr.rangedValue,qr=Pr.hoverRangedValue,ka=me.useContext(Et),ra=ka.onDateMouseEnter,$r=ka.onDateMouseLeave,Pa=(qr==null?void 0:qr[0])||(Lr==null?void 0:Lr[0]),ua=(qr==null?void 0:qr[1])||(Lr==null?void 0:Lr[1]),Nr="".concat(Rt,"-cell"),Qr=function(Si){var Ii=Ln({cellDate:Si,mode:"week",disabledDate:sr,generateConfig:jt});return me.createElement("td",{key:"week",className:ct()(Nr,"".concat(Nr,"-week")),onClick:function(){Ii||ir(Si,"mouse")},onMouseEnter:function(){!Ii&&ra&&ra(Si)},onMouseLeave:function(){!Ii&&$r&&$r(Si)}},me.createElement("div",{className:"".concat(Nr,"-inner")},jt.locale.getWeek(Sn.locale,Si)))},wa="".concat(Rt,"-week-panel-row"),Ei=function(Si){var Ii,bi=Gn(jt,Sn.locale,Pa,Si),mi=Gn(jt,Sn.locale,ua,Si);return ct()(wa,(Ii={},(0,Bt.Z)(Ii,"".concat(wa,"-selected"),!Lr&&Gn(jt,Sn.locale,bn,Si)),(0,Bt.Z)(Ii,"".concat(wa,"-range-start"),bi),(0,Bt.Z)(Ii,"".concat(wa,"-range-end"),mi),(0,Bt.Z)(Ii,"".concat(wa,"-range-hover"),!bi&&!mi&&nr(jt,Pa,ua,Si)),Ii))};return me.createElement(ci,(0,ue.Z)({},Pt,{panelName:"week",prefixColumn:Qr,rowClassName:Ei,keyboardConfig:{onLeftRight:null},isSameCell:function(){return!1}}))}var ja=Ga,Ua=10;function ao(Pt){var Rt=Pt.prefixCls,jt=Pt.generateConfig,Sn=Pt.viewDate,bn=Pt.onPrevDecade,sr=Pt.onNextDecade,ir=Pt.onDecadeClick,Pr=me.useContext(Et),Lr=Pr.hideHeader;if(Lr)return null;var qr="".concat(Rt,"-header"),ka=jt.getYear(Sn),ra=Math.floor(ka/Ua)*Ua,$r=ra+Ua-1;return me.createElement(vr,(0,ue.Z)({},Pt,{prefixCls:qr,onSuperPrev:bn,onSuperNext:sr}),me.createElement("button",{type:"button",onClick:ir,className:"".concat(Rt,"-decade-btn")},ra,"-",$r))}var ko=ao,Ts=3,ws=4;function Ks(Pt){var Rt=Pt.prefixCls,jt=Pt.value,Sn=Pt.viewDate,bn=Pt.locale,sr=Pt.generateConfig,ir=Pt.cellRender,Pr=me.useContext(hn),Lr=Pr.rangedValue,qr=Pr.hoverRangedValue,ka="".concat(Rt,"-cell"),ra=sr.getYear(Sn),$r=Math.floor(ra/Ua)*Ua,Pa=$r+Ua-1,ua=sr.setYear(Sn,$r-Math.ceil((Ts*ws-Ua)/2)),Nr=sr.getNow(),Qr=function(Si){var Ii=sr.getYear(Si);return $r<=Ii&&Ii<=Pa},wa=$n({cellPrefixCls:ka,value:jt,generateConfig:sr,rangedValue:Lr,hoverRangedValue:qr,isSameCell:function(Si,Ii){return bt(sr,Si,Ii)},isInView:Qr,offsetCell:function(Si,Ii){return sr.addYear(Si,Ii)}}),Ei=ir?function(gi,Si){return ir(gi,{originNode:Si,today:Nr,type:"year",locale:bn})}:void 0;return me.createElement(or,(0,ue.Z)({},Pt,{rowNum:ws,colNum:Ts,baseDate:ua,getCellNode:Ei,getCellText:sr.getYear,getCellClassName:wa,getCellDate:sr.addYear,titleCell:function(Si){return vn(Si,{locale:bn,format:"YYYY",generateConfig:sr})}}))}var Oo=Ks;function uu(Pt){var Rt=Pt.prefixCls,jt=Pt.operationRef,Sn=Pt.onViewDateChange,bn=Pt.generateConfig,sr=Pt.value,ir=Pt.viewDate,Pr=Pt.sourceMode,Lr=Pt.onSelect,qr=Pt.onPanelChange,ka="".concat(Rt,"-year-panel");jt.current={onKeyDown:function(Pa){return _a(Pa,{onLeftRight:function(Nr){Lr(bn.addYear(sr||ir,Nr),"key")},onCtrlLeftRight:function(Nr){Lr(bn.addYear(sr||ir,Nr*Ua),"key")},onUpDown:function(Nr){Lr(bn.addYear(sr||ir,Nr*Ts),"key")},onEnter:function(){qr(Pr==="date"?"date":"month",sr||ir)}})}};var ra=function(Pa){var ua=bn.addYear(ir,Pa*10);Sn(ua),qr(null,ua)};return me.createElement("div",{className:ka},me.createElement(ko,(0,ue.Z)({},Pt,{prefixCls:Rt,onPrevDecade:function(){ra(-1)},onNextDecade:function(){ra(1)},onDecadeClick:function(){qr("decade",ir)}})),me.createElement(Oo,(0,ue.Z)({},Pt,{prefixCls:Rt,onSelect:function(Pa){qr(Pr==="date"?"date":"month",Pa),Lr(Pa,"mouse")}})))}var fl=uu;function Co(Pt,Rt,jt){return jt?me.createElement("div",{className:"".concat(Pt,"-footer-extra")},jt(Rt)):null}function Jo(Pt){var Rt=Pt.prefixCls,jt=Pt.components,Sn=jt===void 0?{}:jt,bn=Pt.needConfirmButton,sr=Pt.onNow,ir=Pt.onOk,Pr=Pt.okDisabled,Lr=Pt.showNow,qr=Pt.locale,ka,ra;if(bn){var $r=Sn.button||"button";sr&&Lr!==!1&&(ka=me.createElement("li",{className:"".concat(Rt,"-now")},me.createElement("a",{className:"".concat(Rt,"-now-btn"),onClick:sr},qr.now))),ra=bn&&me.createElement("li",{className:"".concat(Rt,"-ok")},me.createElement($r,{disabled:Pr,onClick:ir},qr.ok))}return!ka&&!ra?null:me.createElement("ul",{className:"".concat(Rt,"-ranges")},ka,ra)}var Fs=["date","month"];function _o(Pt){var Rt,jt=Pt,Sn=jt.prefixCls,bn=Sn===void 0?"rc-picker":Sn,sr=jt.className,ir=jt.style,Pr=jt.locale,Lr=jt.generateConfig,qr=jt.value,ka=jt.defaultValue,ra=jt.pickerValue,$r=jt.defaultPickerValue,Pa=jt.disabledDate,ua=jt.mode,Nr=jt.picker,Qr=Nr===void 0?"date":Nr,wa=jt.tabIndex,Ei=wa===void 0?0:wa,gi=jt.showNow,Si=jt.showTime,Ii=jt.showToday,bi=jt.renderExtraFooter,mi=jt.hideHeader,jo=jt.onSelect,ho=jt.onChange,Vo=jt.onPanelChange,ts=jt.onMouseDown,Ss=jt.onPickerValueChange,Zs=jt.onOk,fa=jt.components,Ko=jt.direction,No=jt.hourStep,ns=No===void 0?1:No,Eo=jt.minuteStep,Ui=Eo===void 0?1:Eo,ms=jt.secondStep,rs=ms===void 0?1:ms,Ol=jt.dateRender,ml=jt.monthCellRender,Ft=jt.cellRender,Wt=Qr==="date"&&!!Si||Qr==="time",cn=24%ns===0,An=60%Ui===0,Nn=60%rs===0,kn=me.useContext(Et),fr=kn.operationRef,ur=kn.onSelect,tr=kn.hideRanges,Ir=kn.defaultOpenValue,Sr=me.useContext(hn),wr=Sr.inRange,ta=Sr.panelPosition,Yr=Sr.rangedValue,Xr=Sr.hoverRangedValue,xa=me.useRef({}),ma=me.useRef(!0),Ka=(0,Mn.Z)(null,{value:qr,defaultValue:ka,postState:function(Rn){return!Rn&&Ir&&Qr==="time"?Ir:Rn}}),Fr=(0,on.Z)(Ka,2),Wa=Fr[0],Bi=Fr[1],Fi=(0,Mn.Z)(null,{value:ra,defaultValue:$r||Wa,postState:function(Rn){var Kn=Lr.getNow();if(!Rn)return Kn;if(!Wa&&Si){var Cr=(0,xt.Z)(Si)==="object"?Si.defaultValue:ka;return In(Lr,Array.isArray(Rn)?Rn[0]:Rn,Cr||Kn)}return Array.isArray(Rn)?Rn[0]:Rn}}),Ai=(0,on.Z)(Fi,2),Ni=Ai[0],to=Ai[1],ii=function(Rn){to(Rn),Ss&&Ss(Rn)},Pi=function(Rn){var Kn=ha[Qr];return Kn?Kn(Rn):Rn},li=(0,Mn.Z)(function(){return Qr==="time"?"time":Pi("date")},{value:ua}),Za=(0,on.Z)(li,2),qa=Za[0],ki=Za[1];me.useEffect(function(){ki(Qr)},[Qr]);var Ao=me.useState(function(){return qa}),no=(0,on.Z)(Ao,2),Oi=no[0],Ke=no[1],tt=function(Rn,Kn){var Cr=Pi(Rn||qa);Ke(qa),ki(Cr),Vo&&(qa!==Cr||Hn(Lr,Ni,Ni))&&Vo(Kn,Cr)},it=function(Rn,Kn){var Cr=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;(qa===Qr||Cr)&&(Bi(Rn),jo&&jo(Rn),ur&&ur(Rn,Kn),ho&&!Hn(Lr,Rn,Wa)&&!(Pa!=null&&Pa(Rn))&&ho(Rn))},pt=function(Rn){if(Fs.includes(qa)){var Kn,Cr,Ur=qa==="date";switch(Rn===Dr.Z.PAGE_UP||Rn===Dr.Z.PAGE_DOWN?Cr=Ur?Lr.addMonth:Lr.addYear:Cr=Ur?Lr.addDate:Lr.addMonth,Rn){case Dr.Z.LEFT:case Dr.Z.PAGE_UP:Kn=Cr(Ni,-1);break;case Dr.Z.RIGHT:case Dr.Z.PAGE_DOWN:Kn=Cr(Ni,1);break;case Dr.Z.UP:case Dr.Z.DOWN:Kn=Cr(Ni,Number("".concat(Rn===Dr.Z.UP?"-":"").concat(Ur?St:Xo)));break}if(Kn)return!(Pa!=null&&Pa(Kn))}return!0},Dt=function(Rn){if(xa.current&&xa.current.onKeyDown){var Kn=!0,Cr=Rn.which;if([Dr.Z.LEFT,Dr.Z.RIGHT,Dr.Z.UP,Dr.Z.DOWN,Dr.Z.PAGE_UP,Dr.Z.PAGE_DOWN,Dr.Z.ENTER].includes(Cr)&&(Rn.preventDefault(),Cr!==Dr.Z.ENTER&&Ei===0&&(Kn=pt(Cr))),Kn)return xa.current.onKeyDown(Rn)}return(0,Ne.ZP)(!1,"Panel not correct handle keyDown event. Please help to fire issue about this."),!1},Lt=function(Rn){xa.current&&xa.current.onBlur&&xa.current.onBlur(Rn)};fr&&ta!=="right"&&(fr.current={onKeyDown:Dt,onClose:function(){xa.current&&xa.current.onClose&&xa.current.onClose()}}),me.useEffect(function(){qr&&!ma.current&&to(qr)},[qr]),me.useEffect(function(){ma.current=!1},[]);var Gt,zt=Jt({cellRender:Ft,monthCellRender:ml,dateRender:Ol}),nn=(0,tn.Z)((0,tn.Z)({},Pt),{},{cellRender:zt,operationRef:xa,prefixCls:bn,viewDate:Ni,value:Wa,onViewDateChange:ii,sourceMode:Oi,onPanelChange:tt,disabledDate:Pa});switch(delete nn.onChange,delete nn.onSelect,qa){case"decade":Gt=me.createElement(il,(0,ue.Z)({},nn,{onSelect:function(Rn,Kn){ii(Rn),it(Rn,Kn)}}));break;case"year":Gt=me.createElement(fl,(0,ue.Z)({},nn,{onSelect:function(Rn,Kn){ii(Rn),it(Rn,Kn)}}));break;case"month":Gt=me.createElement(Go,(0,ue.Z)({},nn,{onSelect:function(Rn,Kn){ii(Rn),it(Rn,Kn)}}));break;case"quarter":Gt=me.createElement(zi,(0,ue.Z)({},nn,{onSelect:function(Rn,Kn){ii(Rn),it(Rn,Kn)}}));break;case"week":Gt=me.createElement(ja,(0,ue.Z)({},nn,{onSelect:function(Rn,Kn){ii(Rn),it(Rn,Kn)}}));break;case"time":delete nn.showTime,Gt=me.createElement(sl,(0,ue.Z)({},nn,(0,xt.Z)(Si)==="object"?Si:null,{onSelect:function(Rn,Kn){ii(Rn),it(Rn,Kn)}}));break;default:Si?Gt=me.createElement(hs,(0,ue.Z)({},nn,{onSelect:function(Rn,Kn){ii(Rn),it(Rn,Kn)}})):Gt=me.createElement(ci,(0,ue.Z)({},nn,{onSelect:function(Rn,Kn){ii(Rn),it(Rn,Kn)}}))}var Kt,un,wn=function(){var Rn=Lr.getNow(),Kn=jn(Lr.getHour(Rn),Lr.getMinute(Rn),Lr.getSecond(Rn),cn?ns:1,An?Ui:1,Nn?rs:1),Cr=an(Lr,Rn,Kn[0],Kn[1],Kn[2]);it(Cr,"submit")};tr||(Kt=Co(bn,qa,bi),Si&&qa!=="date"?un=null:un=Jo({prefixCls:bn,components:fa,needConfirmButton:Wt,okDisabled:!Wa||Pa&&Pa(Wa),locale:Pr,showNow:gi,onNow:Wt&&wn,onOk:function(){Wa&&(it(Wa,"submit",!0),Zs&&Zs(Wa))}}));var xn;if(Ii&&qa==="date"&&Qr==="date"&&!Si){var Zn=Lr.getNow(),Wn="".concat(bn,"-today-btn"),Bn=Pa&&Pa(Zn);xn=me.createElement("a",{className:ct()(Wn,Bn&&"".concat(Wn,"-disabled")),"aria-disabled":Bn,onClick:function(){Bn||it(Zn,"mouse",!0)}},Pr.today)}return me.createElement(Et.Provider,{value:(0,tn.Z)((0,tn.Z)({},kn),{},{mode:qa,hideHeader:"hideHeader"in Pt?mi:kn.hideHeader,hidePrevBtn:wr&&ta==="right",hideNextBtn:wr&&ta==="left"})},me.createElement("div",{tabIndex:Ei,className:ct()("".concat(bn,"-panel"),sr,(Rt={},(0,Bt.Z)(Rt,"".concat(bn,"-panel-has-range"),Yr&&Yr[0]&&Yr[1]),(0,Bt.Z)(Rt,"".concat(bn,"-panel-has-range-hover"),Xr&&Xr[0]&&Xr[1]),(0,Bt.Z)(Rt,"".concat(bn,"-panel-rtl"),Ko==="rtl"),Rt)),style:ir,onKeyDown:Dt,onBlur:Lt,onMouseDown:ts},Gt,Kt||un||xn?me.createElement("div",{className:"".concat(bn,"-footer")},Kt,un,xn):null))}var gs=_o,Or=Te(35593),pr={bottomLeft:{points:["tl","bl"],offset:[0,4],overflow:{adjustX:1,adjustY:1}},bottomRight:{points:["tr","br"],offset:[0,4],overflow:{adjustX:1,adjustY:1}},topLeft:{points:["bl","tl"],offset:[0,-4],overflow:{adjustX:0,adjustY:1}},topRight:{points:["br","tr"],offset:[0,-4],overflow:{adjustX:0,adjustY:1}}};function Rr(Pt){var Rt,jt=Pt.prefixCls,Sn=Pt.popupElement,bn=Pt.popupStyle,sr=Pt.visible,ir=Pt.dropdownClassName,Pr=Pt.dropdownAlign,Lr=Pt.transitionName,qr=Pt.getPopupContainer,ka=Pt.children,ra=Pt.range,$r=Pt.popupPlacement,Pa=Pt.direction,ua="".concat(jt,"-dropdown"),Nr=function(){return $r!==void 0?$r:Pa==="rtl"?"bottomRight":"bottomLeft"};return me.createElement(Or.Z,{showAction:[],hideAction:[],popupPlacement:Nr(),builtinPlacements:pr,prefixCls:ua,popupTransitionName:Lr,popup:Sn,popupAlign:Pr,popupVisible:sr,popupClassName:ct()(ir,(Rt={},(0,Bt.Z)(Rt,"".concat(ua,"-range"),ra),(0,Bt.Z)(Rt,"".concat(ua,"-rtl"),Pa==="rtl"),Rt)),popupStyle:bn,getPopupContainer:qr},ka)}var ga=Rr;function pi(Pt){var Rt=Pt.prefixCls,jt=Pt.presets,Sn=Pt.onClick,bn=Pt.onHover;return jt.length?me.createElement("div",{className:"".concat(Rt,"-presets")},me.createElement("ul",null,jt.map(function(sr,ir){var Pr=sr.label,Lr=sr.value;return me.createElement("li",{key:ir,onClick:function(){return Sn==null?void 0:Sn(Jn(Lr))},onMouseEnter:function(){return bn==null?void 0:bn(Jn(Lr))},onMouseLeave:function(){return bn==null?void 0:bn(null)}},Pr)}))):null}function Ca(Pt){var Rt=Pt.picker,jt=Pt.disabledHours,Sn=Pt.disabledMinutes,bn=Pt.disabledSeconds;Rt==="time"&&(jt||Sn||bn)&&warning(!1,"'disabledHours', 'disabledMinutes', 'disabledSeconds' will be removed in the next major version, please use 'disabledTime' instead.")}function rr(Pt,Rt,jt){var Sn=(0,xt.Z)(Rt)==="object"?Rt.clearIcon:jt;return Sn||me.createElement("span",{className:"".concat(Pt,"-clear-btn")})}function Li(Pt){var Rt,jt=Pt,Sn=jt.prefixCls,bn=Sn===void 0?"rc-picker":Sn,sr=jt.id,ir=jt.name,Pr=jt.tabIndex,Lr=jt.style,qr=jt.className,ka=jt.dropdownClassName,ra=jt.dropdownAlign,$r=jt.popupStyle,Pa=jt.transitionName,ua=jt.generateConfig,Nr=jt.locale,Qr=jt.inputReadOnly,wa=jt.allowClear,Ei=jt.autoFocus,gi=jt.showTime,Si=jt.picker,Ii=Si===void 0?"date":Si,bi=jt.format,mi=jt.use12Hours,jo=jt.value,ho=jt.defaultValue,Vo=jt.presets,ts=jt.open,Ss=jt.defaultOpen,Zs=jt.defaultOpenValue,fa=jt.suffixIcon,Ko=jt.clearIcon,No=jt.disabled,ns=jt.disabledDate,Eo=jt.placeholder,Ui=jt.getPopupContainer,ms=jt.pickerRef,rs=jt.panelRender,Ol=jt.onChange,ml=jt.onOpenChange,Ft=jt.onFocus,Wt=jt.onBlur,cn=jt.onMouseDown,An=jt.onMouseUp,Nn=jt.onMouseEnter,kn=jt.onMouseLeave,fr=jt.onContextMenu,ur=jt.onClick,tr=jt.onKeyDown,Ir=jt.onSelect,Sr=jt.direction,wr=jt.autoComplete,ta=wr===void 0?"off":wr,Yr=jt.inputRender,Xr=jt.changeOnBlur,xa=me.useRef(null),ma=Ii==="date"&&!!gi||Ii==="time",Ka=Be(Vo),Fr=dn(Vr(bi,Ii,gi,mi)),Wa=me.useRef(null),Bi=me.useRef(null),Fi=me.useRef(null),Ai=(0,Mn.Z)(null,{value:jo,defaultValue:ho}),Ni=(0,on.Z)(Ai,2),to=Ni[0],ii=Ni[1],Pi=me.useState(to),li=(0,on.Z)(Pi,2),Za=li[0],qa=li[1],ki=me.useRef(null),Ao=(0,Mn.Z)(!1,{value:ts,defaultValue:Ss,postState:function(oa){return No?!1:oa},onChange:function(oa){ml&&ml(oa),!oa&&ki.current&&ki.current.onClose&&ki.current.onClose()}}),no=(0,on.Z)(Ao,2),Oi=no[0],Ke=no[1],tt=yr(Za,{formatList:Fr,generateConfig:ua,locale:Nr}),it=(0,on.Z)(tt,2),pt=it[0],Dt=it[1],Lt=je({valueTexts:pt,onTextChange:function(oa){var mo=Un(oa,{locale:Nr,formatList:Fr,generateConfig:ua});mo&&(!ns||!ns(mo))&&qa(mo)}}),Gt=(0,on.Z)(Lt,3),zt=Gt[0],nn=Gt[1],Kt=Gt[2],un=function(oa){qa(oa),ii(oa),Ol&&!Hn(ua,to,oa)&&Ol(oa,oa?vn(oa,{generateConfig:ua,locale:Nr,format:Fr[0]}):"")},wn=function(oa){No&&oa||Ke(oa)},xn=function(oa){return Oi&&ki.current&&ki.current.onKeyDown?ki.current.onKeyDown(oa):((0,Ne.ZP)(!1,"Picker not correct forward KeyDown operation. Please help to fire issue about this."),!1)},Zn=function(){for(var oa=arguments.length,mo=new Array(oa),wo=0;wo<oa;wo++)mo[wo]=arguments[wo];ur==null||ur.apply(void 0,mo),xa.current&&(xa.current.focus(),wn(!0))},Wn=function(oa){Xr&&un(Za),Wt==null||Wt(oa)},Bn=we({blurToCancel:ma,open:Oi,value:zt,triggerOpen:wn,forwardKeyDown:xn,isClickOutside:function(oa){return!Ct([Wa.current,Bi.current,Fi.current],oa)},onSubmit:function(){return!Za||ns&&ns(Za)?!1:(un(Za),wn(!1),Kt(),!0)},onCancel:function(){wn(!1),qa(to),Kt()},onKeyDown:function(oa,mo){tr==null||tr(oa,mo)},onFocus:Ft,onBlur:Wn,changeOnBlur:Xr}),_n=(0,on.Z)(Bn,2),Rn=_n[0],Kn=_n[1],Cr=Kn.focused,Ur=Kn.typing;me.useEffect(function(){Oi||(qa(to),!pt.length||pt[0]===""?nn(""):Dt!==zt&&Kt())},[Oi,pt]),me.useEffect(function(){Oi||Kt()},[Ii]),me.useEffect(function(){qa(to)},[to]),ms&&(ms.current={focus:function(){var oa;(oa=xa.current)===null||oa===void 0||oa.focus()},blur:function(){var oa;(oa=xa.current)===null||oa===void 0||oa.blur()}});var Qa=kr(zt,{formatList:Fr,generateConfig:ua,locale:Nr}),ea=(0,on.Z)(Qa,3),pa=ea[0],oi=ea[1],$a=ea[2],Mr=(0,tn.Z)((0,tn.Z)({},Pt),{},{className:void 0,style:void 0,pickerValue:void 0,onPickerValueChange:void 0,onChange:null}),aa=me.createElement("div",{className:"".concat(bn,"-panel-layout")},me.createElement(pi,{prefixCls:bn,presets:Ka,onClick:function(oa){un(oa),wn(!1)}}),me.createElement(gs,(0,ue.Z)({},Mr,{generateConfig:ua,className:ct()((0,Bt.Z)({},"".concat(bn,"-panel-focused"),!Ur)),value:Za,locale:Nr,tabIndex:-1,onSelect:function(oa){Ir==null||Ir(oa),qa(oa)},direction:Sr,onPanelChange:function(oa,mo){var wo=Pt.onPanelChange;$a(!0),wo==null||wo(oa,mo)}})));rs&&(aa=rs(aa));var di=me.createElement("div",{className:"".concat(bn,"-panel-container"),ref:Wa,onMouseDown:function(oa){oa.preventDefault()}},aa),ar;fa&&(ar=me.createElement("span",{className:"".concat(bn,"-suffix"),onMouseDown:function(oa){oa.preventDefault()}},fa));var Tr=rr(bn,wa,Ko),sa=me.createElement("span",{onMouseDown:function(oa){oa.preventDefault(),oa.stopPropagation()},onMouseUp:function(oa){oa.preventDefault(),oa.stopPropagation(),un(null),wn(!1)},className:"".concat(bn,"-clear"),role:"button"},Tr),ca=!!wa&&to&&!No,La=(0,tn.Z)((0,tn.Z)((0,tn.Z)({id:sr,tabIndex:Pr,disabled:No,readOnly:Qr||typeof Fr[0]=="function"||!Ur,value:pa||zt,onChange:function(oa){nn(oa.target.value)},autoFocus:Ei,placeholder:Eo,ref:xa,title:zt},Rn),{},{size:Ya(Ii,Fr[0],ua),name:ir},(0,Dn.Z)(Pt,{aria:!0,data:!0})),{},{autoComplete:ta}),ia=Yr?Yr(La):me.createElement("input",La),da=function(oa,mo){(mo==="submit"||mo!=="key"&&!ma)&&(un(oa),wn(!1))},wi=Sr==="rtl"?"bottomRight":"bottomLeft";return me.createElement(Et.Provider,{value:{operationRef:ki,hideHeader:Ii==="time",onSelect:da,open:Oi,defaultOpenValue:Zs,onDateMouseEnter:oi,onDateMouseLeave:$a}},me.createElement(ga,{visible:Oi,popupElement:di,popupStyle:$r,prefixCls:bn,dropdownClassName:ka,dropdownAlign:ra,getPopupContainer:Ui,transitionName:Pa,popupPlacement:wi,direction:Sr},me.createElement("div",{ref:Fi,className:ct()(bn,qr,(Rt={},(0,Bt.Z)(Rt,"".concat(bn,"-disabled"),No),(0,Bt.Z)(Rt,"".concat(bn,"-focused"),Cr),(0,Bt.Z)(Rt,"".concat(bn,"-rtl"),Sr==="rtl"),Rt)),style:Lr,onMouseDown:cn,onMouseUp:An,onMouseEnter:Nn,onMouseLeave:kn,onContextMenu:fr,onClick:Zn},me.createElement("div",{className:ct()("".concat(bn,"-input"),(0,Bt.Z)({},"".concat(bn,"-input-placeholder"),!!pa)),ref:Bi},ia,ar,ca&&sa))))}var io=function(Pt){(0,en.Z)(jt,Pt);var Rt=(0,mn.Z)(jt);function jt(){var Sn;(0,vt.Z)(this,jt);for(var bn=arguments.length,sr=new Array(bn),ir=0;ir<bn;ir++)sr[ir]=arguments[ir];return Sn=Rt.call.apply(Rt,[this].concat(sr)),(0,Bt.Z)((0,Zt.Z)(Sn),"pickerRef",me.createRef()),(0,Bt.Z)((0,Zt.Z)(Sn),"focus",function(){Sn.pickerRef.current&&Sn.pickerRef.current.focus()}),(0,Bt.Z)((0,Zt.Z)(Sn),"blur",function(){Sn.pickerRef.current&&Sn.pickerRef.current.blur()}),Sn}return(0,Ut.Z)(jt,[{key:"render",value:function(){return me.createElement(Li,(0,ue.Z)({},this.props,{pickerRef:this.pickerRef}))}}]),jt}(me.Component),Lo=io;function Zi(Pt,Rt){var jt=Pt.picker,Sn=Pt.locale,bn=Pt.selectedValue,sr=Pt.disabledDate,ir=Pt.disabled,Pr=Pt.generateConfig,Lr=Vn(bn,0),qr=Vn(bn,1);function ka(Nr){return Pr.locale.getWeekFirstDate(Sn.locale,Nr)}function ra(Nr){var Qr=Pr.getYear(Nr),wa=Pr.getMonth(Nr);return Qr*100+wa}function $r(Nr){var Qr=Pr.getYear(Nr),wa=Yt(Pr,Nr);return Qr*10+wa}var Pa=me.useCallback(function(Nr){if(ir[0]||sr&&sr(Nr))return!0;if(ir[1]&&qr)return!ln(Pr,Nr,qr)&&Pr.isAfter(Nr,qr);if(!Rt&&qr)switch(jt){case"quarter":return $r(Nr)>$r(qr);case"month":return ra(Nr)>ra(qr);case"week":return ka(Nr)>ka(qr);default:return!ln(Pr,Nr,qr)&&Pr.isAfter(Nr,qr)}return!1},[sr,ir[1],qr,Rt]),ua=me.useCallback(function(Nr){if(ir[1]||sr&&sr(Nr))return!0;if(ir[0]&&Lr)return!ln(Pr,Nr,qr)&&Pr.isAfter(Lr,Nr);if(!Rt&&Lr)switch(jt){case"quarter":return $r(Nr)<$r(Lr);case"month":return ra(Nr)<ra(Lr);case"week":return ka(Nr)<ka(Lr);default:return!ln(Pr,Nr,Lr)&&Pr.isAfter(Lr,Nr)}return!1},[sr,ir[0],Lr,Rt]);return[Pa,ua]}var ai=Te(70425),Bo=Te(6089);function vs(Pt,Rt,jt,Sn,bn,sr,ir,Pr,Lr,qr){var ka=me.useState(!1),ra=(0,on.Z)(ka,2),$r=ra[0],Pa=ra[1],ua=(0,ai.useMergedState)(Pt||!1,{value:Rt}),Nr=(0,on.Z)(ua,2),Qr=Nr[0],wa=Nr[1],Ei=(0,ai.useMergedState)(Pt||!1,{value:Rt,onChange:function(ns){qr==null||qr(ns)}}),gi=(0,on.Z)(Ei,2),Si=gi[0],Ii=gi[1],bi=(0,ai.useMergedState)(0,{value:jt}),mi=(0,on.Z)(bi,2),jo=mi[0],ho=mi[1],Vo=me.useState(null),ts=(0,on.Z)(Vo,2),Ss=ts[0],Zs=ts[1];me.useEffect(function(){Si&&Pa(!0)},[Si]);var fa=function(ns){return ns===0?1:0},Ko=(0,Bo.Z)(function(No,ns,Eo){if(ns===!1)Ii(No);else if(No){ho(ns),Ii(No);var Ui=fa(ns);!Si||![ir,Pr][Ui]?Zs(Ui):(Pa(!1),Ss!==null&&Zs(null))}else if(Eo==="confirm"||Eo==="blur"&&Sn){var ms=Qr?fa(ns):Ss;ms!==null&&(Pa(!1),ho(ms)),Zs(null),ms!==null&&!Lr[ms]?(0,Gr.Z)(function(){var rs,Ol=[bn,sr][ms];(rs=Ol.current)===null||rs===void 0||rs.focus()}):Ii(!1)}else Ii(!1),wa(!1)});return[Si,jo,$r,Ko]}function rl(Pt,Rt,jt,Sn){var bn=qt(Pt,jt,Sn,1);function sr(ir){return ir(Pt,Rt)?"same":ir(bn,Rt)?"closing":"far"}switch(jt){case"year":return sr(function(ir,Pr){return gt(Sn,ir,Pr)});case"quarter":case"month":return sr(function(ir,Pr){return bt(Sn,ir,Pr)});default:return sr(function(ir,Pr){return Mt(Sn,ir,Pr)})}}function eo(Pt,Rt,jt,Sn){var bn=Vn(Pt,0),sr=Vn(Pt,1);if(Rt===0)return bn;if(bn&&sr){var ir=rl(bn,sr,jt,Sn);switch(ir){case"same":return bn;case"closing":return bn;default:return qt(sr,jt,Sn,-1)}}return bn}function Hi(Pt){var Rt=Pt.values,jt=Pt.picker,Sn=Pt.defaultDates,bn=Pt.generateConfig,sr=me.useState(function(){return[Vn(Sn,0),Vn(Sn,1)]}),ir=(0,on.Z)(sr,2),Pr=ir[0],Lr=ir[1],qr=me.useState(null),ka=(0,on.Z)(qr,2),ra=ka[0],$r=ka[1],Pa=Vn(Rt,0),ua=Vn(Rt,1);function Nr(wa){return Pr[wa]?Pr[wa]:Vn(ra,wa)||eo(Rt,wa,jt,bn)||Pa||ua||bn.getNow()}function Qr(wa,Ei){if(wa){var gi=Pn(ra,wa,Ei);Lr(Pn(Pr,null,Ei)||[null,null]);var Si=(Ei+1)%2;Vn(Rt,Si)||(gi=Pn(gi,wa,Si)),$r(gi)}else(Pa||ua)&&$r(null)}return[Nr,Qr]}function xs(Pt,Rt){return Pt&&Pt[0]&&Pt[1]&&Rt.isAfter(Pt[0],Pt[1])?[Pt[1],Pt[0]]:Pt}function zo(Pt,Rt,jt,Sn){return!!(Pt||Sn&&Sn[Rt]||jt[(Rt+1)%2])}function hl(Pt){var Rt,jt,Sn,bn=Pt,sr=bn.prefixCls,ir=sr===void 0?"rc-picker":sr,Pr=bn.id,Lr=bn.style,qr=bn.className,ka=bn.popupStyle,ra=bn.dropdownClassName,$r=bn.transitionName,Pa=bn.dropdownAlign,ua=bn.getPopupContainer,Nr=bn.generateConfig,Qr=bn.locale,wa=bn.placeholder,Ei=bn.autoFocus,gi=bn.disabled,Si=bn.format,Ii=bn.picker,bi=Ii===void 0?"date":Ii,mi=bn.showTime,jo=bn.use12Hours,ho=bn.separator,Vo=ho===void 0?"~":ho,ts=bn.value,Ss=bn.defaultValue,Zs=bn.defaultPickerValue,fa=bn.open,Ko=bn.defaultOpen,No=bn.disabledDate,ns=bn.disabledTime,Eo=bn.dateRender,Ui=bn.monthCellRender,ms=bn.cellRender,rs=bn.panelRender,Ol=bn.presets,ml=bn.ranges,Ft=bn.allowEmpty,Wt=bn.allowClear,cn=bn.suffixIcon,An=bn.clearIcon,Nn=bn.pickerRef,kn=bn.inputReadOnly,fr=bn.mode,ur=bn.renderExtraFooter,tr=bn.onChange,Ir=bn.onOpenChange,Sr=bn.onPanelChange,wr=bn.onCalendarChange,ta=bn.onFocus,Yr=bn.onBlur,Xr=bn.onMouseDown,xa=bn.onMouseUp,ma=bn.onMouseEnter,Ka=bn.onMouseLeave,Fr=bn.onClick,Wa=bn.onOk,Bi=bn.onKeyDown,Fi=bn.components,Ai=bn.order,Ni=bn.direction,to=bn.activePickerIndex,ii=bn.autoComplete,Pi=ii===void 0?"off":ii,li=bn.changeOnBlur,Za=bi==="date"&&!!mi||bi==="time",qa=(0,me.useRef)(null),ki=(0,me.useRef)(null),Ao=(0,me.useRef)(null),no=(0,me.useRef)(null),Oi=(0,me.useRef)(null),Ke=(0,me.useRef)(null),tt=(0,me.useRef)(null),it=(0,me.useRef)(null),pt=dn(Vr(Si,bi,mi,jo)),Dt=(0,me.useRef)(null),Lt=me.useMemo(function(){return Array.isArray(gi)?gi:[gi||!1,gi||!1]},[gi]),Gt=(0,Mn.Z)(null,{value:ts,defaultValue:Ss,postState:function(oo){return bi==="time"&&!Ai?oo:xs(oo,Nr)}}),zt=(0,on.Z)(Gt,2),nn=zt[0],Kt=zt[1],un=Hi({values:nn,picker:bi,defaultDates:Zs,generateConfig:Nr}),wn=(0,on.Z)(un,2),xn=wn[0],Zn=wn[1],Wn=(0,Mn.Z)(nn,{postState:function(oo){var Do=oo;if(Lt[0]&&Lt[1])return Do;for(var Ro=0;Ro<2;Ro+=1)Lt[Ro]&&!Do&&!Vn(Do,Ro)&&!Vn(Ft,Ro)&&(Do=Pn(Do,Nr.getNow(),Ro));return Do}}),Bn=(0,on.Z)(Wn,2),_n=Bn[0],Rn=Bn[1],Kn=(0,Mn.Z)([bi,bi],{value:fr}),Cr=(0,on.Z)(Kn,2),Ur=Cr[0],Qa=Cr[1];(0,me.useEffect)(function(){Qa([bi,bi])},[bi]);var ea=function(oo,Do){Qa(oo),Sr&&Sr(Do,oo)},pa=vs(Ko,fa,to,li,Ke,tt,Vn(_n,0),Vn(_n,1),Lt,Ir),oi=(0,on.Z)(pa,4),$a=oi[0],Mr=oi[1],aa=oi[2],di=oi[3],ar=$a&&Mr===0,Tr=$a&&Mr===1,sa=Zi({picker:bi,selectedValue:_n,locale:Qr,disabled:Lt,disabledDate:No,generateConfig:Nr},!$a||aa),ca=(0,on.Z)(sa,2),La=ca[0],ia=ca[1],da=(0,me.useState)(0),wi=(0,on.Z)(da,2),xi=wi[0],oa=wi[1];(0,me.useEffect)(function(){!$a&&qa.current&&oa(qa.current.offsetWidth)},[$a]);function mo(qs){di(!0,qs,"open"),(0,Gr.Z)(function(){var oo,Do=[Ke,tt][qs];(oo=Do.current)===null||oo===void 0||oo.focus()},0)}function wo(qs,oo){var Do=qs,Ro=Vn(Do,0),Wl=Vn(Do,1);Ro&&Wl&&Nr.isAfter(Ro,Wl)&&(bi==="week"&&!Gn(Nr,Qr.locale,Ro,Wl)||bi==="quarter"&&!kt(Nr,Ro,Wl)||bi!=="week"&&bi!=="quarter"&&bi!=="time"&&!ln(Nr,Ro,Wl)?oo===0?(Do=[Ro,null],Wl=null):(Ro=null,Do=[null,Wl]):(bi!=="time"||Ai!==!1)&&(Do=xs(Do,Nr))),Rn(Do);var cf=Do&&Do[0]?vn(Do[0],{generateConfig:Nr,locale:Qr,format:pt[0]}):"",$c=Do&&Do[1]?vn(Do[1],{generateConfig:Nr,locale:Qr,format:pt[0]}):"";if(wr){var df={range:oo===0?"start":"end"};wr(Do,[cf,$c],df)}var ff=zo(Ro,0,Lt,Ft),Tg=zo(Wl,1,Lt,Ft),sh=Do===null||ff&&Tg;sh&&(Kt(Do),tr&&(!Hn(Nr,Vn(nn,0),Ro)||!Hn(Nr,Vn(nn,1),Wl))&&tr(Do,[cf,$c]))}var ks=function(oo){return $a&&Dt.current&&Dt.current.onKeyDown?Dt.current.onKeyDown(oo):((0,Ne.ZP)(!1,"Picker not correct forward KeyDown operation. Please help to fire issue about this."),!1)},Ls={formatList:pt,generateConfig:Nr,locale:Qr},Js=yr(Vn(_n,0),Ls),Tl=(0,on.Z)(Js,2),pl=Tl[0],ll=Tl[1],kc=yr(Vn(_n,1),Ls),Wd=(0,on.Z)(kc,2),_c=Wd[0],Zr=Wd[1],rh=function(oo,Do){var Ro=Un(oo,{locale:Qr,formatList:pt,generateConfig:Nr}),Wl=Do===0?La:ia;Ro&&!Wl(Ro)&&(Rn(Pn(_n,Ro,Do)),Zn(Ro,Do))},xg=je({valueTexts:pl,onTextChange:function(oo){return rh(oo,0)}}),ls=(0,on.Z)(xg,3),Qs=ls[0],hu=ls[1],yl=ls[2],Eu=je({valueTexts:_c,onTextChange:function(oo){return rh(oo,1)}}),xl=(0,on.Z)(Eu,3),Au=xl[0],Zl=xl[1],Ih=xl[2],bv=(0,me.useState)(null),Sg=(0,on.Z)(bv,2),Cv=Sg[0],bg=Sg[1],ul=(0,me.useState)(null),Ou=(0,on.Z)(ul,2),sf=Ou[0],D0=Ou[1],I0=kr(Qs,{formatList:pt,generateConfig:Nr,locale:Qr}),Cg=(0,on.Z)(I0,3),Pg=Cg[0],Oh=Cg[1],Th=Cg[2],Pv=kr(Au,{formatList:pt,generateConfig:Nr,locale:Qr}),Lh=(0,on.Z)(Pv,3),ah=Lh[0],wv=Lh[1],qc=Lh[2],Mv=function(oo){D0(Pn(_n,oo,Mr)),Mr===0?Oh(oo):wv(oo)},O0=function(){D0(Pn(_n,null,Mr)),Mr===0?Th():qc()},lf=me.useState($a),Bh=(0,on.Z)(lf,2),wl=Bh[0],T0=Bh[1];me.useEffect(function(){T0($a)},[$a]);var L0=function(oo){if(li&&wl){var Do=Vn(_n,Mr);Do&&wo(_n,Mr)}return Yr==null?void 0:Yr(oo)},wg=function(oo,Do){return{blurToCancel:!li&&Za,forwardKeyDown:ks,onBlur:L0,isClickOutside:function(Wl){return!Ct([ki.current,Ao.current,no.current,qa.current],Wl)},onFocus:function(Wl){ta&&ta(Wl)},triggerOpen:function(Wl){Wl?di(Wl,oo,"open"):di(Wl,Vn(_n,oo)?oo:!1,"blur")},onSubmit:function(){if(!_n||No&&No(_n[oo]))return!1;wo(_n,oo),Do(),di(!1,Mr,"confirm")},onCancel:function(){di(!1,oo,"cancel"),Rn(nn),Do()}}},Nh={onKeyDown:function(oo,Do){Bi==null||Bi(oo,Do)},changeOnBlur:li},Dv=we((0,tn.Z)((0,tn.Z)({},wg(0,yl)),{},{open:ar,value:Qs},Nh)),Mg=(0,on.Z)(Dv,2),Rh=Mg[0],ih=Mg[1],Fh=ih.focused,kh=ih.typing,Iv=we((0,tn.Z)((0,tn.Z)({},wg(1,Ih)),{},{open:Tr,value:Au},Nh)),_s=(0,on.Z)(Iv,2),fi=_s[0],fc=_s[1],xd=fc.focused,Sd=fc.typing,Dg=function(oo){Fr&&Fr(oo),!$a&&!Ke.current.contains(oo.target)&&!tt.current.contains(oo.target)&&(Lt[0]?Lt[1]||mo(1):mo(0))},Ig=function(oo){Xr&&Xr(oo),$a&&(Fh||xd)&&!Ke.current.contains(oo.target)&&!tt.current.contains(oo.target)&&oo.preventDefault()},Og=nn&&nn[0]?vn(nn[0],{locale:Qr,format:"YYYYMMDDHHmmss",generateConfig:Nr}):"",_h=nn&&nn[1]?vn(nn[1],{locale:Qr,format:"YYYYMMDDHHmmss",generateConfig:Nr}):"";(0,me.useEffect)(function(){$a||(Rn(nn),!pl.length||pl[0]===""?hu(""):ll!==Qs&&yl(),!_c.length||_c[0]===""?Zl(""):Zr!==Au&&Ih())},[$a,pl,_c]),(0,me.useEffect)(function(){Rn(nn)},[Og,_h]);var Bf=Jt({cellRender:ms,monthCellRender:Ui,dateRender:Eo}),Zm=me.useMemo(function(){if(Bf)return function(qs,oo){return Bf(qs,(0,tn.Z)((0,tn.Z)({},oo),{},{range:Mr?"end":"start"}))}},[Mr,Bf]);Nn&&(Nn.current={focus:function(){Ke.current&&Ke.current.focus()},blur:function(){Ke.current&&Ke.current.blur(),tt.current&&tt.current.blur()}});var Nf=Be(Ol,ml);function Ov(){var qs=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,oo=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},Do=null;$a&&sf&&sf[0]&&sf[1]&&Nr.isAfter(sf[1],sf[0])&&(Do=sf);var Ro=mi;if(mi&&(0,xt.Z)(mi)==="object"&&mi.defaultValue){var Wl=mi.defaultValue;Ro=(0,tn.Z)((0,tn.Z)({},mi),{},{defaultValue:Vn(Wl,Mr)||void 0})}return me.createElement(hn.Provider,{value:{inRange:!0,panelPosition:qs,rangedValue:Cv||_n,hoverRangedValue:Do}},me.createElement(gs,(0,ue.Z)({},Pt,oo,{cellRender:Zm,showTime:Ro,mode:Ur[Mr],generateConfig:Nr,style:void 0,direction:Ni,disabledDate:Mr===0?La:ia,disabledTime:function($c){return ns?ns($c,Mr===0?"start":"end"):!1},className:ct()((0,Bt.Z)({},"".concat(ir,"-panel-focused"),Mr===0?!kh:!Sd)),value:Vn(_n,Mr),locale:Qr,tabIndex:-1,onPanelChange:function($c,df){Mr===0&&Th(!0),Mr===1&&qc(!0),ea(Pn(Ur,df,Mr),Pn(_n,$c,Mr));var ff=$c;qs==="right"&&Ur[Mr]===df&&(ff=qt(ff,df,Nr,-1)),Zn(ff,Mr)},onOk:null,onSelect:void 0,onChange:void 0,defaultValue:Mr===0?Vn(_n,1):Vn(_n,0)})))}var uf=0,Qm=0;if(Mr&&Ao.current&&Oi.current&&ki.current&&it.current){uf=Ao.current.offsetWidth+Oi.current.offsetWidth;var mC=it.current.offsetLeft>uf?it.current.offsetLeft-uf:it.current.offsetLeft,Ym=ki.current.offsetWidth,Xm=it.current.offsetWidth;Ym&&Xm&&uf>Ym-Xm-(Ni==="rtl"?0:mC)&&(Qm=uf)}var Yi=Ni==="rtl"?{right:uf}:{left:uf};function HE(){var qs,oo=Co(ir,Ur[Mr],ur),Do=Jo({prefixCls:ir,components:Fi,needConfirmButton:Za,okDisabled:!Vn(_n,Mr)||No&&No(_n[Mr]),locale:Qr,onOk:function(){var ed=Vn(_n,Mr);ed&&(wo(_n,Mr),Wa==null||Wa(_n),di(!1,Mr,"confirm"))}});if(bi!=="time"&&!mi){var Ro=xn(Mr),Wl=qt(Ro,bi,Nr),cf=Ur[Mr],$c=cf===bi,df=Ov($c?"left":!1,{pickerValue:Ro,onPickerValueChange:function(ed){Zn(ed,Mr)}}),ff=Ov("right",{pickerValue:Wl,onPickerValueChange:function(ed){Zn(qt(ed,bi,Nr,-1),Mr)}});Ni==="rtl"?qs=me.createElement(me.Fragment,null,ff,$c&&df):qs=me.createElement(me.Fragment,null,df,$c&&ff)}else qs=Ov();var Tg=me.createElement("div",{className:"".concat(ir,"-panel-layout")},me.createElement(pi,{prefixCls:ir,presets:Nf,onClick:function(ed){wo(ed,null),di(!1,Mr,"preset")},onHover:function(ed){bg(ed)}}),me.createElement("div",null,me.createElement("div",{className:"".concat(ir,"-panels")},qs),(oo||Do)&&me.createElement("div",{className:"".concat(ir,"-footer")},oo,Do)));return rs&&(Tg=rs(Tg)),me.createElement("div",{className:"".concat(ir,"-panel-container"),style:{marginLeft:Qm},ref:ki,onMouseDown:function(ed){ed.preventDefault()}},Tg)}var VE=me.createElement("div",{className:ct()("".concat(ir,"-range-wrapper"),"".concat(ir,"-").concat(bi,"-range-wrapper")),style:{minWidth:xi}},me.createElement("div",{ref:it,className:"".concat(ir,"-range-arrow"),style:Yi}),HE()),Jm;cn&&(Jm=me.createElement("span",{className:"".concat(ir,"-suffix"),onMouseDown:function(oo){oo.preventDefault()}},cn));var qm=rr(ir,Wt,An),KE=me.createElement("span",{onMouseDown:function(oo){oo.preventDefault(),oo.stopPropagation()},onMouseUp:function(oo){oo.preventDefault(),oo.stopPropagation();var Do=nn;Lt[0]||(Do=Pn(Do,null,0)),Lt[1]||(Do=Pn(Do,null,1)),wo(Do,null),di(!1,Mr,"clear")},className:"".concat(ir,"-clear"),role:"button"},qm),ZE=Wt&&(Vn(nn,0)&&!Lt[0]||Vn(nn,1)&&!Lt[1]),Tv={size:Ya(bi,pt[0],Nr)},oh=0,Lv=0;Ao.current&&no.current&&Oi.current&&(Mr===0?Lv=Ao.current.offsetWidth:(oh=uf,Lv=no.current.offsetWidth));var zh=Ni==="rtl"?{right:oh}:{left:oh},QE=function(oo,Do){var Ro=Pn(_n,oo,Mr);if(Do==="submit"||Do!=="key"&&!Za){wo(Ro,Mr),Mr===0?Th():qc();var Wl=Mr===0?1:0;Lt[Wl]?di(!1,!1,"confirm"):di(!1,Mr,"confirm")}else Rn(Ro)};return me.createElement(Et.Provider,{value:{operationRef:Dt,hideHeader:bi==="time",onDateMouseEnter:Mv,onDateMouseLeave:O0,hideRanges:!0,onSelect:QE,open:$a}},me.createElement(ga,{visible:$a,popupElement:VE,popupStyle:ka,prefixCls:ir,dropdownClassName:ra,dropdownAlign:Pa,getPopupContainer:ua,transitionName:$r,range:!0,direction:Ni},me.createElement("div",(0,ue.Z)({ref:qa,className:ct()(ir,"".concat(ir,"-range"),qr,(Rt={},(0,Bt.Z)(Rt,"".concat(ir,"-disabled"),Lt[0]&&Lt[1]),(0,Bt.Z)(Rt,"".concat(ir,"-focused"),Mr===0?Fh:xd),(0,Bt.Z)(Rt,"".concat(ir,"-rtl"),Ni==="rtl"),Rt)),style:Lr,onClick:Dg,onMouseEnter:ma,onMouseLeave:Ka,onMouseDown:Ig,onMouseUp:xa},(0,Dn.Z)(Pt,{aria:!0,data:!0})),me.createElement("div",{className:ct()("".concat(ir,"-input"),(jt={},(0,Bt.Z)(jt,"".concat(ir,"-input-active"),Mr===0),(0,Bt.Z)(jt,"".concat(ir,"-input-placeholder"),!!Pg),jt)),ref:Ao},me.createElement("input",(0,ue.Z)({id:Pr,disabled:Lt[0],readOnly:kn||typeof pt[0]=="function"||!kh,value:Pg||Qs,onChange:function(oo){hu(oo.target.value)},autoFocus:Ei,placeholder:Vn(wa,0)||"",ref:Ke},Rh,Tv,{autoComplete:Pi}))),me.createElement("div",{className:"".concat(ir,"-range-separator"),ref:Oi},Vo),me.createElement("div",{className:ct()("".concat(ir,"-input"),(Sn={},(0,Bt.Z)(Sn,"".concat(ir,"-input-active"),Mr===1),(0,Bt.Z)(Sn,"".concat(ir,"-input-placeholder"),!!ah),Sn)),ref:no},me.createElement("input",(0,ue.Z)({disabled:Lt[1],readOnly:kn||typeof pt[0]=="function"||!Sd,value:ah||Au,onChange:function(oo){Zl(oo.target.value)},placeholder:Vn(wa,1)||"",ref:tt},fi,Tv,{autoComplete:Pi}))),me.createElement("div",{className:"".concat(ir,"-active-bar"),style:(0,tn.Z)((0,tn.Z)({},zh),{},{width:Lv,position:"absolute"})}),Jm,ZE&&KE)))}var gl=function(Pt){(0,en.Z)(jt,Pt);var Rt=(0,mn.Z)(jt);function jt(){var Sn;(0,vt.Z)(this,jt);for(var bn=arguments.length,sr=new Array(bn),ir=0;ir<bn;ir++)sr[ir]=arguments[ir];return Sn=Rt.call.apply(Rt,[this].concat(sr)),(0,Bt.Z)((0,Zt.Z)(Sn),"pickerRef",me.createRef()),(0,Bt.Z)((0,Zt.Z)(Sn),"focus",function(){Sn.pickerRef.current&&Sn.pickerRef.current.focus()}),(0,Bt.Z)((0,Zt.Z)(Sn),"blur",function(){Sn.pickerRef.current&&Sn.pickerRef.current.blur()}),Sn}return(0,Ut.Z)(jt,[{key:"render",value:function(){return me.createElement(hl,(0,ue.Z)({},this.props,{pickerRef:this.pickerRef}))}}]),jt}(me.Component),cc=gl,Yc=Lo,Du=Te(19080),Xu=Te(36355),Nc=Te(1684),zd=Te(19716),ac=Te(32441),zl=Te(9763),vd=Te(33234),jd=Te(48183),Ju=Te(64993),cu=Te(9937),Rc=Te(17313),ql=Te(47585),du=Te(74207),au=Te(13826),md=Te(92899),$f=Te(37613),C0=Te(83116);const dc=(Pt,Rt,jt,Sn)=>{const{lineHeight:bn}=Pt,sr=Math.floor(jt*bn)+2,ir=Math.max((Rt-sr)/2,0),Pr=Math.max(Rt-sr-ir,0);return{padding:`${ir}px ${Sn}px ${Pr}px`}},eh=Pt=>{const{componentCls:Rt,pickerCellCls:jt,pickerCellInnerCls:Sn,cellHeight:bn,motionDurationSlow:sr,borderRadiusSM:ir,motionDurationMid:Pr,cellHoverBg:Lr,lineWidth:qr,lineType:ka,colorPrimary:ra,cellActiveWithRangeBg:$r,colorTextLightSolid:Pa,controlHeightSM:ua,cellRangeBorderColor:Nr,pickerCellBorderGap:Qr,cellHoverWithRangeBg:wa,cellWidth:Ei,colorTextDisabled:gi,cellBgDisabled:Si}=Pt;return{"&::before":{position:"absolute",top:"50%",insetInlineStart:0,insetInlineEnd:0,zIndex:1,height:bn,transform:"translateY(-50%)",transition:`all ${sr}`,content:'""'},[Sn]:{position:"relative",zIndex:2,display:"inline-block",minWidth:bn,height:bn,lineHeight:`${bn}px`,borderRadius:ir,transition:`background ${Pr}, border ${Pr}`},"&-range-hover-start, &-range-hover-end":{[Sn]:{borderStartEndRadius:0,borderEndEndRadius:0}},[`&:hover:not(${jt}-in-view),
|
|
|
&:hover:not(${jt}-selected):not(${jt}-range-start):not(${jt}-range-end):not(${jt}-range-hover-start):not(${jt}-range-hover-end)`]:{[Sn]:{background:Lr}},[`&-in-view${jt}-today ${Sn}`]:{"&::before":{position:"absolute",top:0,insetInlineEnd:0,bottom:0,insetInlineStart:0,zIndex:1,border:`${qr}px ${ka} ${ra}`,borderRadius:ir,content:'""'}},[`&-in-view${jt}-in-range`]:{position:"relative","&::before":{background:$r}},[`&-in-view${jt}-selected ${Sn},
|
|
|
&-in-view${jt}-range-start ${Sn},
|
|
|
&-in-view${jt}-range-end ${Sn}`]:{color:Pa,background:ra},[`&-in-view${jt}-range-start:not(${jt}-range-start-single),
|
|
|
&-in-view${jt}-range-end:not(${jt}-range-end-single)`]:{"&::before":{background:$r}},[`&-in-view${jt}-range-start::before`]:{insetInlineStart:"50%"},[`&-in-view${jt}-range-end::before`]:{insetInlineEnd:"50%"},[`&-in-view${jt}-range-hover-start:not(${jt}-in-range):not(${jt}-range-start):not(${jt}-range-end),
|
|
|
&-in-view${jt}-range-hover-end:not(${jt}-in-range):not(${jt}-range-start):not(${jt}-range-end),
|
|
|
&-in-view${jt}-range-hover-start${jt}-range-start-single,
|
|
|
&-in-view${jt}-range-hover-start${jt}-range-start${jt}-range-end${jt}-range-end-near-hover,
|
|
|
&-in-view${jt}-range-hover-end${jt}-range-start${jt}-range-end${jt}-range-start-near-hover,
|
|
|
&-in-view${jt}-range-hover-end${jt}-range-end-single,
|
|
|
&-in-view${jt}-range-hover:not(${jt}-in-range)`]:{"&::after":{position:"absolute",top:"50%",zIndex:0,height:ua,borderTop:`${qr}px dashed ${Nr}`,borderBottom:`${qr}px dashed ${Nr}`,transform:"translateY(-50%)",transition:`all ${sr}`,content:'""'}},"&-range-hover-start::after,\n &-range-hover-end::after,\n &-range-hover::after":{insetInlineEnd:0,insetInlineStart:Qr},[`&-in-view${jt}-in-range${jt}-range-hover::before,
|
|
|
&-in-view${jt}-in-range${jt}-range-hover-start::before,
|
|
|
&-in-view${jt}-in-range${jt}-range-hover-end::before,
|
|
|
&-in-view${jt}-range-start${jt}-range-hover::before,
|
|
|
&-in-view${jt}-range-end${jt}-range-hover::before,
|
|
|
&-in-view${jt}-range-start:not(${jt}-range-start-single)${jt}-range-hover-start::before,
|
|
|
&-in-view${jt}-range-end:not(${jt}-range-end-single)${jt}-range-hover-end::before,
|
|
|
${Rt}-panel
|
|
|
> :not(${Rt}-date-panel)
|
|
|
&-in-view${jt}-in-range${jt}-range-hover-start::before,
|
|
|
${Rt}-panel
|
|
|
> :not(${Rt}-date-panel)
|
|
|
&-in-view${jt}-in-range${jt}-range-hover-end::before`]:{background:wa},[`&-in-view${jt}-range-start:not(${jt}-range-start-single):not(${jt}-range-end) ${Sn}`]:{borderStartStartRadius:ir,borderEndStartRadius:ir,borderStartEndRadius:0,borderEndEndRadius:0},[`&-in-view${jt}-range-end:not(${jt}-range-end-single):not(${jt}-range-start) ${Sn}`]:{borderStartStartRadius:0,borderEndStartRadius:0,borderStartEndRadius:ir,borderEndEndRadius:ir},[`&-range-hover${jt}-range-end::after`]:{insetInlineStart:"50%"},[`tr > &-in-view${jt}-range-hover:first-child::after,
|
|
|
tr > &-in-view${jt}-range-hover-end:first-child::after,
|
|
|
&-in-view${jt}-start${jt}-range-hover-edge-start${jt}-range-hover-edge-start-near-range::after,
|
|
|
&-in-view${jt}-range-hover-edge-start:not(${jt}-range-hover-edge-start-near-range)::after,
|
|
|
&-in-view${jt}-range-hover-start::after`]:{insetInlineStart:(Ei-bn)/2,borderInlineStart:`${qr}px dashed ${Nr}`,borderStartStartRadius:ir,borderEndStartRadius:ir},[`tr > &-in-view${jt}-range-hover:last-child::after,
|
|
|
tr > &-in-view${jt}-range-hover-start:last-child::after,
|
|
|
&-in-view${jt}-end${jt}-range-hover-edge-end${jt}-range-hover-edge-end-near-range::after,
|
|
|
&-in-view${jt}-range-hover-edge-end:not(${jt}-range-hover-edge-end-near-range)::after,
|
|
|
&-in-view${jt}-range-hover-end::after`]:{insetInlineEnd:(Ei-bn)/2,borderInlineEnd:`${qr}px dashed ${Nr}`,borderStartEndRadius:ir,borderEndEndRadius:ir},"&-disabled":{color:gi,pointerEvents:"none",[Sn]:{background:"transparent"},"&::before":{background:Si}},[`&-disabled${jt}-today ${Sn}::before`]:{borderColor:gi}}},rf=Pt=>{const{componentCls:Rt,pickerCellCls:jt,pickerCellInnerCls:Sn,pickerYearMonthCellWidth:bn,pickerControlIconSize:sr,cellWidth:ir,paddingSM:Pr,paddingXS:Lr,paddingXXS:qr,colorBgContainer:ka,lineWidth:ra,lineType:$r,borderRadiusLG:Pa,colorPrimary:ua,colorTextHeading:Nr,colorSplit:Qr,pickerControlIconBorderWidth:wa,colorIcon:Ei,textHeight:gi,motionDurationMid:Si,colorIconHover:Ii,fontWeightStrong:bi,cellHeight:mi,pickerCellPaddingVertical:jo,colorTextDisabled:ho,colorText:Vo,fontSize:ts,cellHoverWithRangeBg:Ss,motionDurationSlow:Zs,withoutTimeCellHeight:fa,pickerQuarterPanelContentHeight:Ko,colorLink:No,colorLinkActive:ns,colorLinkHover:Eo,cellRangeBorderColor:Ui,borderRadiusSM:ms,colorTextLightSolid:rs,cellHoverBg:Ol,timeColumnHeight:ml,timeColumnWidth:Ft,timeCellHeight:Wt,controlItemBgActive:cn,marginXXS:An,pickerDatePanelPaddingHorizontal:Nn}=Pt,kn=ir*7+Nn*2,fr=(kn-Lr*2)/3-bn-Pr,ur=(kn-Lr*2)/4-bn;return{[Rt]:{"&-panel":{display:"inline-flex",flexDirection:"column",textAlign:"center",background:ka,border:`${ra}px ${$r} ${Qr}`,borderRadius:Pa,outline:"none","&-focused":{borderColor:ua},"&-rtl":{direction:"rtl",[`${Rt}-prev-icon,
|
|
|
${Rt}-super-prev-icon`]:{transform:"rotate(45deg)"},[`${Rt}-next-icon,
|
|
|
${Rt}-super-next-icon`]:{transform:"rotate(-135deg)"}}},"&-decade-panel,\n &-year-panel,\n &-quarter-panel,\n &-month-panel,\n &-week-panel,\n &-date-panel,\n &-time-panel":{display:"flex",flexDirection:"column",width:kn},"&-header":{display:"flex",padding:`0 ${Lr}px`,color:Nr,borderBottom:`${ra}px ${$r} ${Qr}`,"> *":{flex:"none"},button:{padding:0,color:Ei,lineHeight:`${gi}px`,background:"transparent",border:0,cursor:"pointer",transition:`color ${Si}`,fontSize:"inherit"},"> button":{minWidth:"1.6em",fontSize:ts,"&:hover":{color:Ii}},"&-view":{flex:"auto",fontWeight:bi,lineHeight:`${gi}px`,button:{color:"inherit",fontWeight:"inherit",verticalAlign:"top","&:not(:first-child)":{marginInlineStart:Lr},"&:hover":{color:ua}}}},"&-prev-icon,\n &-next-icon,\n &-super-prev-icon,\n &-super-next-icon":{position:"relative",display:"inline-block",width:sr,height:sr,"&::before":{position:"absolute",top:0,insetInlineStart:0,display:"inline-block",width:sr,height:sr,border:"0 solid currentcolor",borderBlockStartWidth:wa,borderBlockEndWidth:0,borderInlineStartWidth:wa,borderInlineEndWidth:0,content:'""'}},"&-super-prev-icon,\n &-super-next-icon":{"&::after":{position:"absolute",top:Math.ceil(sr/2),insetInlineStart:Math.ceil(sr/2),display:"inline-block",width:sr,height:sr,border:"0 solid currentcolor",borderBlockStartWidth:wa,borderBlockEndWidth:0,borderInlineStartWidth:wa,borderInlineEndWidth:0,content:'""'}},"&-prev-icon,\n &-super-prev-icon":{transform:"rotate(-45deg)"},"&-next-icon,\n &-super-next-icon":{transform:"rotate(135deg)"},"&-content":{width:"100%",tableLayout:"fixed",borderCollapse:"collapse","th, td":{position:"relative",minWidth:mi,fontWeight:"normal"},th:{height:mi+jo*2,color:Vo,verticalAlign:"middle"}},"&-cell":Object.assign({padding:`${jo}px 0`,color:ho,cursor:"pointer","&-in-view":{color:Vo}},eh(Pt)),[`&-date-panel ${Rt}-cell-in-view${Rt}-cell-in-range${Rt}-cell-range-hover-start ${Sn},
|
|
|
&-date-panel ${Rt}-cell-in-view${Rt}-cell-in-range${Rt}-cell-range-hover-end ${Sn}`]:{"&::after":{position:"absolute",top:0,bottom:0,zIndex:-1,background:Ss,transition:`all ${Zs}`,content:'""'}},[`&-date-panel
|
|
|
${Rt}-cell-in-view${Rt}-cell-in-range${Rt}-cell-range-hover-start
|
|
|
${Sn}::after`]:{insetInlineEnd:-(ir-mi)/2,insetInlineStart:0},[`&-date-panel ${Rt}-cell-in-view${Rt}-cell-in-range${Rt}-cell-range-hover-end ${Sn}::after`]:{insetInlineEnd:0,insetInlineStart:-(ir-mi)/2},[`&-range-hover${Rt}-range-start::after`]:{insetInlineEnd:"50%"},"&-decade-panel,\n &-year-panel,\n &-quarter-panel,\n &-month-panel":{[`${Rt}-content`]:{height:fa*4},[Sn]:{padding:`0 ${Lr}px`}},"&-quarter-panel":{[`${Rt}-content`]:{height:Ko},[`${Rt}-cell-range-hover-start::after`]:{insetInlineStart:ur,borderInlineStart:`${ra}px dashed ${Ui}`,[`${Rt}-panel-rtl &`]:{insetInlineEnd:ur,borderInlineEnd:`${ra}px dashed ${Ui}`}},[`${Rt}-cell-range-hover-end::after`]:{insetInlineEnd:ur,borderInlineEnd:`${ra}px dashed ${Ui}`,[`${Rt}-panel-rtl &`]:{insetInlineStart:ur,borderInlineStart:`${ra}px dashed ${Ui}`}}},[`&-panel ${Rt}-footer`]:{borderTop:`${ra}px ${$r} ${Qr}`},"&-footer":{width:"min-content",minWidth:"100%",lineHeight:`${gi-2*ra}px`,textAlign:"center","&-extra":{padding:`0 ${Pr}px`,lineHeight:`${gi-2*ra}px`,textAlign:"start","&:not(:last-child)":{borderBottom:`${ra}px ${$r} ${Qr}`}}},"&-now":{textAlign:"start"},"&-today-btn":{color:No,"&:hover":{color:Eo},"&:active":{color:ns},[`&${Rt}-today-btn-disabled`]:{color:ho,cursor:"not-allowed"}},"&-decade-panel":{[Sn]:{padding:`0 ${Lr/2}px`},[`${Rt}-cell::before`]:{display:"none"}},"&-year-panel,\n &-quarter-panel,\n &-month-panel":{[`${Rt}-body`]:{padding:`0 ${Lr}px`},[Sn]:{width:bn},[`${Rt}-cell-range-hover-start::after`]:{borderStartStartRadius:ms,borderEndStartRadius:ms,borderStartEndRadius:0,borderEndEndRadius:0,[`${Rt}-panel-rtl &`]:{borderStartStartRadius:0,borderEndStartRadius:0,borderStartEndRadius:ms,borderEndEndRadius:ms}},[`${Rt}-cell-range-hover-end::after`]:{borderStartStartRadius:0,borderEndStartRadius:0,borderStartEndRadius:ms,borderEndEndRadius:ms,[`${Rt}-panel-rtl &`]:{borderStartStartRadius:ms,borderEndStartRadius:ms,borderStartEndRadius:0,borderEndEndRadius:0}}},"&-year-panel,\n &-month-panel":{[`${Rt}-cell-range-hover-start::after`]:{insetInlineStart:fr,borderInlineStart:`${ra}px dashed ${Ui}`,[`${Rt}-panel-rtl &`]:{insetInlineEnd:fr,borderInlineEnd:`${ra}px dashed ${Ui}`}},[`${Rt}-cell-range-hover-end::after`]:{insetInlineEnd:fr,borderInlineEnd:`${ra}px dashed ${Ui}`,[`${Rt}-panel-rtl &`]:{insetInlineStart:fr,borderInlineStart:`${ra}px dashed ${Ui}`}}},"&-week-panel":{[`${Rt}-body`]:{padding:`${Lr}px ${Pr}px`},[`${Rt}-cell`]:{[`&:hover ${Sn},
|
|
|
&-selected ${Sn},
|
|
|
${Sn}`]:{background:"transparent !important"}},"&-row":{td:{"&:before":{transition:`background ${Si}`},"&:first-child:before":{borderStartStartRadius:ms,borderEndStartRadius:ms},"&:last-child:before":{borderStartEndRadius:ms,borderEndEndRadius:ms}},"&:hover td":{"&:before":{background:Ol}},"&-range-start td,\n &-range-end td,\n &-selected td":{[`&${jt}`]:{"&:before":{background:ua},[`&${Rt}-cell-week`]:{color:new Ju.C(rs).setAlpha(.5).toHexString()},[Sn]:{color:rs}}},"&-range-hover td:before":{background:cn}}},"&-date-panel":{[`${Rt}-body`]:{padding:`${Lr}px ${Nn}px`},[`${Rt}-content`]:{width:ir*7,th:{width:ir,boxSizing:"border-box",padding:0}}},"&-datetime-panel":{display:"flex",[`${Rt}-time-panel`]:{borderInlineStart:`${ra}px ${$r} ${Qr}`},[`${Rt}-date-panel,
|
|
|
${Rt}-time-panel`]:{transition:`opacity ${Zs}`},"&-active":{[`${Rt}-date-panel,
|
|
|
${Rt}-time-panel`]:{opacity:.3,"&-active":{opacity:1}}}},"&-time-panel":{width:"auto",minWidth:"auto",direction:"ltr",[`${Rt}-content`]:{display:"flex",flex:"auto",height:ml},"&-column":{flex:"1 0 auto",width:Ft,margin:`${qr}px 0`,padding:0,overflowY:"hidden",textAlign:"start",listStyle:"none",transition:`background ${Si}`,overflowX:"hidden","&::after":{display:"block",height:ml-Wt,content:'""'},"&:not(:first-child)":{borderInlineStart:`${ra}px ${$r} ${Qr}`},"&-active":{background:new Ju.C(cn).setAlpha(.2).toHexString()},"&:hover":{overflowY:"auto"},"> li":{margin:0,padding:0,[`&${Rt}-time-panel-cell`]:{marginInline:An,[`${Rt}-time-panel-cell-inner`]:{display:"block",width:Ft-2*An,height:Wt,margin:0,paddingBlock:0,paddingInlineEnd:0,paddingInlineStart:(Ft-Wt)/2,color:Vo,lineHeight:`${Wt}px`,borderRadius:ms,cursor:"pointer",transition:`background ${Si}`,"&:hover":{background:Ol}},"&-selected":{[`${Rt}-time-panel-cell-inner`]:{background:cn}},"&-disabled":{[`${Rt}-time-panel-cell-inner`]:{color:ho,background:"transparent",cursor:"not-allowed"}}}}}},[`&-datetime-panel ${Rt}-time-panel-column:after`]:{height:ml-Wt+qr*2}}}},th=Pt=>{const{componentCls:Rt,colorBgContainer:jt,colorError:Sn,errorActiveShadow:bn,colorWarning:sr,warningActiveShadow:ir}=Pt;return{[`${Rt}:not(${Rt}-disabled)`]:{[`&${Rt}-status-error`]:{"&, &:not([disabled]):hover":{backgroundColor:jt,borderColor:Sn},[`&${Rt}-focused, &:focus`]:Object.assign({},(0,cu.M1)((0,$f.TS)(Pt,{activeBorderColor:Sn,activeShadow:bn}))),[`${Rt}-active-bar`]:{background:Sn}},[`&${Rt}-status-warning`]:{"&, &:not([disabled]):hover":{backgroundColor:jt,borderColor:sr},[`&${Rt}-focused, &:focus`]:Object.assign({},(0,cu.M1)((0,$f.TS)(Pt,{activeBorderColor:sr,activeShadow:ir}))),[`${Rt}-active-bar`]:{background:sr}}}}},Ph=Pt=>{const{componentCls:Rt,antCls:jt,controlHeight:Sn,fontSize:bn,paddingInline:sr,colorBgContainer:ir,lineWidth:Pr,lineType:Lr,colorBorder:qr,borderRadius:ka,motionDurationMid:ra,colorBgContainerDisabled:$r,colorTextDisabled:Pa,colorTextPlaceholder:ua,controlHeightLG:Nr,fontSizeLG:Qr,controlHeightSM:wa,paddingInlineSM:Ei,paddingXS:gi,marginXS:Si,colorTextDescription:Ii,lineWidthBold:bi,lineHeight:mi,colorPrimary:jo,motionDurationSlow:ho,zIndexPopup:Vo,paddingXXS:ts,paddingSM:Ss,textHeight:Zs,cellActiveWithRangeBg:fa,colorPrimaryBorder:Ko,sizePopupArrow:No,borderRadiusXS:ns,borderRadiusOuter:Eo,colorBgElevated:Ui,borderRadiusLG:ms,boxShadowSecondary:rs,borderRadiusSM:Ol,colorSplit:ml,cellHoverBg:Ft,presetsWidth:Wt,presetsMaxWidth:cn,boxShadowPopoverArrow:An,colorTextQuaternary:Nn}=Pt;return[{[Rt]:Object.assign(Object.assign(Object.assign({},(0,Rc.Wf)(Pt)),dc(Pt,Sn,bn,sr)),{position:"relative",display:"inline-flex",alignItems:"center",background:ir,lineHeight:1,border:`${Pr}px ${Lr} ${qr}`,borderRadius:ka,transition:`border ${ra}, box-shadow ${ra}`,"&:hover, &-focused":Object.assign({},(0,cu.pU)(Pt)),"&-focused":Object.assign({},(0,cu.M1)(Pt)),[`&${Rt}-disabled`]:{background:$r,borderColor:qr,cursor:"not-allowed",[`${Rt}-suffix`]:{color:Nn}},[`&${Rt}-borderless`]:{backgroundColor:"transparent !important",borderColor:"transparent !important",boxShadow:"none !important"},[`${Rt}-input`]:{position:"relative",display:"inline-flex",alignItems:"center",width:"100%","> input":Object.assign(Object.assign({},(0,cu.ik)(Pt)),{flex:"auto",minWidth:1,height:"auto",padding:0,background:"transparent",border:0,borderRadius:0,"&:focus":{boxShadow:"none"},"&[disabled]":{background:"transparent"}}),"&:hover":{[`${Rt}-clear`]:{opacity:1}},"&-placeholder":{"> input":{color:ua}}},"&-large":Object.assign(Object.assign({},dc(Pt,Nr,Qr,sr)),{[`${Rt}-input > input`]:{fontSize:Qr}}),"&-small":Object.assign({},dc(Pt,wa,bn,Ei)),[`${Rt}-suffix`]:{display:"flex",flex:"none",alignSelf:"center",marginInlineStart:gi/2,color:Pa,lineHeight:1,pointerEvents:"none","> *":{verticalAlign:"top","&:not(:last-child)":{marginInlineEnd:Si}}},[`${Rt}-clear`]:{position:"absolute",top:"50%",insetInlineEnd:0,color:Pa,lineHeight:1,background:ir,transform:"translateY(-50%)",cursor:"pointer",opacity:0,transition:`opacity ${ra}, color ${ra}`,"> *":{verticalAlign:"top"},"&:hover":{color:Ii}},[`${Rt}-separator`]:{position:"relative",display:"inline-block",width:"1em",height:Qr,color:Pa,fontSize:Qr,verticalAlign:"top",cursor:"default",[`${Rt}-focused &`]:{color:Ii},[`${Rt}-range-separator &`]:{[`${Rt}-disabled &`]:{cursor:"not-allowed"}}},"&-range":{position:"relative",display:"inline-flex",[`${Rt}-clear`]:{insetInlineEnd:sr},"&:hover":{[`${Rt}-clear`]:{opacity:1}},[`${Rt}-active-bar`]:{bottom:-Pr,height:bi,marginInlineStart:sr,background:jo,opacity:0,transition:`all ${ho} ease-out`,pointerEvents:"none"},[`&${Rt}-focused`]:{[`${Rt}-active-bar`]:{opacity:1}},[`${Rt}-range-separator`]:{alignItems:"center",padding:`0 ${gi}px`,lineHeight:1},[`&${Rt}-small`]:{[`${Rt}-clear`]:{insetInlineEnd:Ei},[`${Rt}-active-bar`]:{marginInlineStart:Ei}}},"&-dropdown":Object.assign(Object.assign(Object.assign({},(0,Rc.Wf)(Pt)),rf(Pt)),{position:"absolute",top:-9999,left:{_skip_check_:!0,value:-9999},zIndex:Vo,[`&${Rt}-dropdown-hidden`]:{display:"none"},[`&${Rt}-dropdown-placement-bottomLeft`]:{[`${Rt}-range-arrow`]:{top:0,display:"block",transform:"translateY(-100%)"}},[`&${Rt}-dropdown-placement-topLeft`]:{[`${Rt}-range-arrow`]:{bottom:0,display:"block",transform:"translateY(100%) rotate(180deg)"}},[`&${jt}-slide-up-enter${jt}-slide-up-enter-active${Rt}-dropdown-placement-topLeft,
|
|
|
&${jt}-slide-up-enter${jt}-slide-up-enter-active${Rt}-dropdown-placement-topRight,
|
|
|
&${jt}-slide-up-appear${jt}-slide-up-appear-active${Rt}-dropdown-placement-topLeft,
|
|
|
&${jt}-slide-up-appear${jt}-slide-up-appear-active${Rt}-dropdown-placement-topRight`]:{animationName:au.Qt},[`&${jt}-slide-up-enter${jt}-slide-up-enter-active${Rt}-dropdown-placement-bottomLeft,
|
|
|
&${jt}-slide-up-enter${jt}-slide-up-enter-active${Rt}-dropdown-placement-bottomRight,
|
|
|
&${jt}-slide-up-appear${jt}-slide-up-appear-active${Rt}-dropdown-placement-bottomLeft,
|
|
|
&${jt}-slide-up-appear${jt}-slide-up-appear-active${Rt}-dropdown-placement-bottomRight`]:{animationName:au.fJ},[`&${jt}-slide-up-leave${jt}-slide-up-leave-active${Rt}-dropdown-placement-topLeft,
|
|
|
&${jt}-slide-up-leave${jt}-slide-up-leave-active${Rt}-dropdown-placement-topRight`]:{animationName:au.ly},[`&${jt}-slide-up-leave${jt}-slide-up-leave-active${Rt}-dropdown-placement-bottomLeft,
|
|
|
&${jt}-slide-up-leave${jt}-slide-up-leave-active${Rt}-dropdown-placement-bottomRight`]:{animationName:au.Uw},[`${Rt}-panel > ${Rt}-time-panel`]:{paddingTop:ts},[`${Rt}-ranges`]:{marginBottom:0,padding:`${ts}px ${Ss}px`,overflow:"hidden",lineHeight:`${Zs-2*Pr-gi/2}px`,textAlign:"start",listStyle:"none",display:"flex",justifyContent:"space-between","> li":{display:"inline-block"},[`${Rt}-preset > ${jt}-tag-blue`]:{color:jo,background:fa,borderColor:Ko,cursor:"pointer"},[`${Rt}-ok`]:{marginInlineStart:"auto"}},[`${Rt}-range-wrapper`]:{display:"flex",position:"relative"},[`${Rt}-range-arrow`]:Object.assign({position:"absolute",zIndex:1,display:"none",marginInlineStart:sr*1.5,transition:`left ${ho} ease-out`},(0,ql.r)(No,ns,Eo,Ui,An)),[`${Rt}-panel-container`]:{overflow:"hidden",verticalAlign:"top",background:Ui,borderRadius:ms,boxShadow:rs,transition:`margin ${ho}`,[`${Rt}-panel-layout`]:{display:"flex",flexWrap:"nowrap",alignItems:"stretch"},[`${Rt}-presets`]:{display:"flex",flexDirection:"column",minWidth:Wt,maxWidth:cn,ul:{height:0,flex:"auto",listStyle:"none",overflow:"auto",margin:0,padding:gi,borderInlineEnd:`${Pr}px ${Lr} ${ml}`,li:Object.assign(Object.assign({},Rc.vS),{borderRadius:Ol,paddingInline:gi,paddingBlock:(wa-Math.round(bn*mi))/2,cursor:"pointer",transition:`all ${ho}`,"+ li":{marginTop:Si},"&:hover":{background:Ft}})}},[`${Rt}-panels`]:{display:"inline-flex",flexWrap:"nowrap",direction:"ltr",[`${Rt}-panel`]:{borderWidth:`0 0 ${Pr}px`},"&:last-child":{[`${Rt}-panel`]:{borderWidth:0}}},[`${Rt}-panel`]:{verticalAlign:"top",background:"transparent",borderRadius:0,borderWidth:0,[`${Rt}-content,
|
|
|
table`]:{textAlign:"center"},"&-focused":{borderColor:qr}}}}),"&-dropdown-range":{padding:`${No*2/3}px 0`,"&-hidden":{display:"none"}},"&-rtl":{direction:"rtl",[`${Rt}-separator`]:{transform:"rotate(180deg)"},[`${Rt}-footer`]:{"&-extra":{direction:"rtl"}}}})},(0,au.oN)(Pt,"slide-up"),(0,au.oN)(Pt,"slide-down"),(0,md.Fm)(Pt,"move-up"),(0,md.Fm)(Pt,"move-down")]},nh=Pt=>{const{componentCls:Rt,controlHeightLG:jt,paddingXXS:Sn,padding:bn}=Pt;return{pickerCellCls:`${Rt}-cell`,pickerCellInnerCls:`${Rt}-cell-inner`,pickerYearMonthCellWidth:jt*1.5,pickerQuarterPanelContentHeight:jt*1.4,pickerCellPaddingVertical:Sn+Sn/2,pickerCellBorderGap:2,pickerControlIconSize:7,pickerControlIconBorderWidth:1.5,pickerDatePanelPaddingHorizontal:bn+Sn/2}},P0=Pt=>({cellHoverBg:Pt.controlItemBgHover,cellActiveWithRangeBg:Pt.controlItemBgActive,cellHoverWithRangeBg:new Ju.C(Pt.colorPrimary).lighten(35).toHexString(),cellRangeBorderColor:new Ju.C(Pt.colorPrimary).lighten(20).toHexString(),cellBgDisabled:Pt.colorBgContainerDisabled,timeColumnWidth:Pt.controlHeightLG*1.4,timeColumnHeight:28*8,timeCellHeight:28,cellWidth:Pt.controlHeightSM*1.5,cellHeight:Pt.controlHeightSM,textHeight:Pt.controlHeightLG,withoutTimeCellHeight:Pt.controlHeightLG*1.65});var Iu=(0,C0.Z)("DatePicker",Pt=>{const Rt=(0,$f.TS)((0,cu.e5)(Pt),nh(Pt));return[Ph(Rt),th(Rt),(0,du.c)(Pt,{focusElCls:`${Pt.componentCls}-focused`})]},Pt=>Object.assign(Object.assign(Object.assign({},(0,cu.TM)(Pt)),P0(Pt)),{presetsWidth:120,presetsMaxWidth:200,zIndexPopup:Pt.zIndexPopupBase+50}));function wh(Pt,Rt,jt){return jt!==void 0?jt:Rt==="year"&&Pt.lang.yearPlaceholder?Pt.lang.yearPlaceholder:Rt==="quarter"&&Pt.lang.quarterPlaceholder?Pt.lang.quarterPlaceholder:Rt==="month"&&Pt.lang.monthPlaceholder?Pt.lang.monthPlaceholder:Rt==="week"&&Pt.lang.weekPlaceholder?Pt.lang.weekPlaceholder:Rt==="time"&&Pt.timePickerLocale.placeholder?Pt.timePickerLocale.placeholder:Pt.lang.placeholder}function vl(Pt,Rt,jt){return jt!==void 0?jt:Rt==="year"&&Pt.lang.yearPlaceholder?Pt.lang.rangeYearPlaceholder:Rt==="quarter"&&Pt.lang.quarterPlaceholder?Pt.lang.rangeQuarterPlaceholder:Rt==="month"&&Pt.lang.monthPlaceholder?Pt.lang.rangeMonthPlaceholder:Rt==="week"&&Pt.lang.weekPlaceholder?Pt.lang.rangeWeekPlaceholder:Rt==="time"&&Pt.timePickerLocale.placeholder?Pt.timePickerLocale.rangePlaceholder:Pt.lang.rangePlaceholder}function Fc(Pt,Rt){const jt={adjustX:1,adjustY:1};switch(Rt){case"bottomLeft":return{points:["tl","bl"],offset:[0,4],overflow:jt};case"bottomRight":return{points:["tr","br"],offset:[0,4],overflow:jt};case"topLeft":return{points:["bl","tl"],offset:[0,-4],overflow:jt};case"topRight":return{points:["br","tr"],offset:[0,-4],overflow:jt};default:return{points:Pt==="rtl"?["tr","br"]:["tl","bl"],offset:[0,4],overflow:jt}}}function Tf(Pt){return Pt?Array.isArray(Pt)?Pt:[Pt]:[]}function Xc(Pt){const{format:Rt,picker:jt,showHour:Sn,showMinute:bn,showSecond:sr,use12Hours:ir}=Pt,Pr=Tf(Rt)[0],Lr=Object.assign({},Pt);return Rt&&Array.isArray(Rt)&&(Lr.format=Pr),Pr&&typeof Pr=="string"&&(!Pr.includes("s")&&sr===void 0&&(Lr.showSecond=!1),!Pr.includes("m")&&bn===void 0&&(Lr.showMinute=!1),!Pr.includes("H")&&!Pr.includes("h")&&!Pr.includes("K")&&!Pr.includes("k")&&Sn===void 0&&(Lr.showHour=!1),(Pr.includes("a")||Pr.includes("A"))&&ir===void 0&&(Lr.use12Hours=!0)),jt==="time"?Lr:(typeof Pr=="function"&&delete Lr.format,{showTime:Lr})}function zu(Pt,Rt,jt){if(Pt===!1)return!1;const Sn={clearIcon:Rt!=null?Rt:jt};return typeof Pt=="object"?Object.assign(Object.assign({},Sn),Pt):Sn}var pd=Te(3113);function ju(Pt){return me.createElement(pd.ZP,Object.assign({size:"small",type:"primary"},Pt))}var Jc={button:ju},yd=function(Pt,Rt){var jt={};for(var Sn in Pt)Object.prototype.hasOwnProperty.call(Pt,Sn)&&Rt.indexOf(Sn)<0&&(jt[Sn]=Pt[Sn]);if(Pt!=null&&typeof Object.getOwnPropertySymbols=="function")for(var bn=0,Sn=Object.getOwnPropertySymbols(Pt);bn<Sn.length;bn++)Rt.indexOf(Sn[bn])<0&&Object.prototype.propertyIsEnumerable.call(Pt,Sn[bn])&&(jt[Sn[bn]]=Pt[Sn[bn]]);return jt};function Lf(Pt){return(0,me.forwardRef)((jt,Sn)=>{const{prefixCls:bn,getPopupContainer:sr,className:ir,placement:Pr,size:Lr,disabled:qr,bordered:ka=!0,placeholder:ra,popupClassName:$r,dropdownClassName:Pa,status:ua,clearIcon:Nr,allowClear:Qr,rootClassName:wa}=jt,Ei=yd(jt,["prefixCls","getPopupContainer","className","placement","size","disabled","bordered","placeholder","popupClassName","dropdownClassName","status","clearIcon","allowClear","rootClassName"]),gi=me.useRef(null),{getPrefixCls:Si,direction:Ii,getPopupContainer:bi}=(0,me.useContext)(Xu.E_),mi=Si("picker",bn),{compactSize:jo,compactItemClassnames:ho}=(0,vd.ri)(mi,Ii),{format:Vo,showTime:ts,picker:Ss}=jt,Zs=Si(),[fa,Ko]=Iu(mi),No=Object.assign(Object.assign({},ts?Xc(Object.assign({format:Vo,picker:Ss},ts)):{}),Ss==="time"?Xc(Object.assign(Object.assign({format:Vo},jt),{picker:Ss})):{}),ns=(0,zd.Z)(An=>{var Nn;return(Nn=Lr!=null?Lr:jo)!==null&&Nn!==void 0?Nn:An}),Eo=me.useContext(Nc.Z),Ui=qr!=null?qr:Eo,ms=(0,me.useContext)(ac.aM),{hasFeedback:rs,status:Ol,feedbackIcon:ml}=ms,Ft=me.createElement(me.Fragment,null,Ss==="time"?me.createElement(qe,null):me.createElement(Ge,null),rs&&ml);(0,me.useImperativeHandle)(Sn,()=>({focus:()=>{var An;return(An=gi.current)===null||An===void 0?void 0:An.focus()},blur:()=>{var An;return(An=gi.current)===null||An===void 0?void 0:An.blur()}}));const[Wt]=(0,zl.Z)("Calendar",jd.Z),cn=Object.assign(Object.assign({},Wt),jt.locale);return fa(me.createElement(cc,Object.assign({separator:me.createElement("span",{"aria-label":"to",className:`${mi}-separator`},me.createElement(yt,null)),disabled:Ui,ref:gi,dropdownAlign:Fc(Ii,Pr),placeholder:vl(cn,Ss,ra),suffixIcon:Ft,prevIcon:me.createElement("span",{className:`${mi}-prev-icon`}),nextIcon:me.createElement("span",{className:`${mi}-next-icon`}),superPrevIcon:me.createElement("span",{className:`${mi}-super-prev-icon`}),superNextIcon:me.createElement("span",{className:`${mi}-super-next-icon`}),transitionName:`${Zs}-slide-up`},Ei,No,{className:ct()({[`${mi}-${ns}`]:ns,[`${mi}-borderless`]:!ka},(0,Du.Z)(mi,(0,Du.F)(Ol,ua),rs),Ko,ho,ir,wa),locale:cn.lang,prefixCls:mi,getPopupContainer:sr||bi,generateConfig:Pt,components:Jc,direction:Ii,dropdownClassName:ct()(Ko,$r||Pa,wa),allowClear:zu(Qr,Nr,me.createElement(ot.Z,null))})))})}var af=function(Pt,Rt){var jt={};for(var Sn in Pt)Object.prototype.hasOwnProperty.call(Pt,Sn)&&Rt.indexOf(Sn)<0&&(jt[Sn]=Pt[Sn]);if(Pt!=null&&typeof Object.getOwnPropertySymbols=="function")for(var bn=0,Sn=Object.getOwnPropertySymbols(Pt);bn<Sn.length;bn++)Rt.indexOf(Sn[bn])<0&&Object.prototype.propertyIsEnumerable.call(Pt,Sn[bn])&&(jt[Sn[bn]]=Pt[Sn[bn]]);return jt};function of(Pt){function Rt(Lr,qr){const ka=qr==="TimePicker"?"timePicker":"datePicker",ra=(0,me.forwardRef)(($r,Pa)=>{const{prefixCls:ua,getPopupContainer:Nr,style:Qr,className:wa,rootClassName:Ei,size:gi,bordered:Si=!0,placement:Ii,placeholder:bi,popupClassName:mi,dropdownClassName:jo,disabled:ho,status:Vo,clearIcon:ts,allowClear:Ss}=$r,Zs=af($r,["prefixCls","getPopupContainer","style","className","rootClassName","size","bordered","placement","placeholder","popupClassName","dropdownClassName","disabled","status","clearIcon","allowClear"]),{getPrefixCls:fa,direction:Ko,getPopupContainer:No,[ka]:ns}=(0,me.useContext)(Xu.E_),Eo=fa("picker",ua),{compactSize:Ui,compactItemClassnames:ms}=(0,vd.ri)(Eo,Ko),rs=me.useRef(null),{format:Ol,showTime:ml}=$r,[Ft,Wt]=Iu(Eo);(0,me.useImperativeHandle)(Pa,()=>({focus:()=>{var ma;return(ma=rs.current)===null||ma===void 0?void 0:ma.focus()},blur:()=>{var ma;return(ma=rs.current)===null||ma===void 0?void 0:ma.blur()}}));const cn={showToday:!0};let An={};Lr&&(An.picker=Lr);const Nn=Lr||$r.picker;An=Object.assign(Object.assign(Object.assign({},An),ml?Xc(Object.assign({format:Ol,picker:Nn},ml)):{}),Nn==="time"?Xc(Object.assign(Object.assign({format:Ol},$r),{picker:Nn})):{});const kn=fa(),fr=(0,zd.Z)(ma=>{var Ka;return(Ka=gi!=null?gi:Ui)!==null&&Ka!==void 0?Ka:ma}),ur=me.useContext(Nc.Z),tr=ho!=null?ho:ur,Ir=(0,me.useContext)(ac.aM),{hasFeedback:Sr,status:wr,feedbackIcon:ta}=Ir,Yr=me.createElement(me.Fragment,null,Nn==="time"?me.createElement(qe,null):me.createElement(Ge,null),Sr&&ta),[Xr]=(0,zl.Z)("DatePicker",jd.Z),xa=Object.assign(Object.assign({},Xr),$r.locale);return Ft(me.createElement(Yc,Object.assign({ref:rs,placeholder:wh(xa,Nn,bi),suffixIcon:Yr,dropdownAlign:Fc(Ko,Ii),prevIcon:me.createElement("span",{className:`${Eo}-prev-icon`}),nextIcon:me.createElement("span",{className:`${Eo}-next-icon`}),superPrevIcon:me.createElement("span",{className:`${Eo}-super-prev-icon`}),superNextIcon:me.createElement("span",{className:`${Eo}-super-next-icon`}),transitionName:`${kn}-slide-up`},cn,Zs,An,{locale:xa.lang,className:ct()({[`${Eo}-${fr}`]:fr,[`${Eo}-borderless`]:!Si},(0,Du.Z)(Eo,(0,Du.F)(wr,Vo),Sr),Wt,ms,ns==null?void 0:ns.className,wa,Ei),style:Object.assign(Object.assign({},ns==null?void 0:ns.style),Qr),prefixCls:Eo,getPopupContainer:Nr||No,generateConfig:Pt,components:Jc,direction:Ko,disabled:tr,dropdownClassName:ct()(Wt,Ei,mi||jo),allowClear:zu(Ss,ts,me.createElement(ot.Z,null))})))});return qr&&(ra.displayName=qr),ra}const jt=Rt(),Sn=Rt("week","WeekPicker"),bn=Rt("month","MonthPicker"),sr=Rt("year","YearPicker"),ir=Rt("time","TimePicker"),Pr=Rt("quarter","QuarterPicker");return{DatePicker:jt,WeekPicker:Sn,MonthPicker:bn,YearPicker:sr,TimePicker:ir,QuarterPicker:Pr}}const Ag=null;function Mh(Pt){const{DatePicker:Rt,WeekPicker:jt,MonthPicker:Sn,YearPicker:bn,TimePicker:sr,QuarterPicker:ir}=of(Pt),Pr=Lf(Pt),Lr=Rt;return Lr.WeekPicker=jt,Lr.MonthPicker=Sn,Lr.YearPicker=bn,Lr.RangePicker=Pr,Lr.TimePicker=sr,Lr.QuarterPicker=ir,Lr}var Dh=Mh;const Ud=Dh(he);function Ed(Pt){const Rt=Fc(Pt.direction,Pt.placement);return Rt.overflow.adjustY=!1,Rt.overflow.adjustX=!1,Object.assign(Object.assign({},Pt),{dropdownAlign:Rt})}const Ad=(0,ie.Z)(Ud,"picker",null,Ed);Ud._InternalPanelDoNotUseOrYouWillBeFired=Ad;const w0=(0,ie.Z)(Ud.RangePicker,"picker",null,Ed);Ud._InternalRangePanelDoNotUseOrYouWillBeFired=w0,Ud.generatePicker=Dh;var M0=Ud},28103:function(At,It,Te){"use strict";Te.d(It,{Z:function(){return Ae}});var Oe=Te(92310),He=Te.n(Oe),Ne=Te(59301),be=Te(36355),_e=Te(17313),Me=Te(83116),ve=Te(37613);const Ee=Se=>{const{componentCls:ce,sizePaddingEdgeHorizontal:te,colorSplit:ne,lineWidth:le,textPaddingInline:se,orientationMargin:fe,verticalMarginInline:he}=Se;return{[ce]:Object.assign(Object.assign({},(0,_e.Wf)(Se)),{borderBlockStart:`${le}px solid ${ne}`,"&-vertical":{position:"relative",top:"-0.06em",display:"inline-block",height:"0.9em",marginInline:he,marginBlock:0,verticalAlign:"middle",borderTop:0,borderInlineStart:`${le}px solid ${ne}`},"&-horizontal":{display:"flex",clear:"both",width:"100%",minWidth:"100%",margin:`${Se.dividerHorizontalGutterMargin}px 0`},[`&-horizontal${ce}-with-text`]:{display:"flex",alignItems:"center",margin:`${Se.dividerHorizontalWithTextGutterMargin}px 0`,color:Se.colorTextHeading,fontWeight:500,fontSize:Se.fontSizeLG,whiteSpace:"nowrap",textAlign:"center",borderBlockStart:`0 ${ne}`,"&::before, &::after":{position:"relative",width:"50%",borderBlockStart:`${le}px solid transparent`,borderBlockStartColor:"inherit",borderBlockEnd:0,transform:"translateY(50%)",content:"''"}},[`&-horizontal${ce}-with-text-left`]:{"&::before":{width:`${fe*100}%`},"&::after":{width:`${100-fe*100}%`}},[`&-horizontal${ce}-with-text-right`]:{"&::before":{width:`${100-fe*100}%`},"&::after":{width:`${fe*100}%`}},[`${ce}-inner-text`]:{display:"inline-block",paddingBlock:0,paddingInline:se},"&-dashed":{background:"none",borderColor:ne,borderStyle:"dashed",borderWidth:`${le}px 0 0`},[`&-horizontal${ce}-with-text${ce}-dashed`]:{"&::before, &::after":{borderStyle:"dashed none none"}},[`&-vertical${ce}-dashed`]:{borderInlineStartWidth:le,borderInlineEnd:0,borderBlockStart:0,borderBlockEnd:0},[`&-plain${ce}-with-text`]:{color:Se.colorText,fontWeight:"normal",fontSize:Se.fontSize},[`&-horizontal${ce}-with-text-left${ce}-no-default-orientation-margin-left`]:{"&::before":{width:0},"&::after":{width:"100%"},[`${ce}-inner-text`]:{paddingInlineStart:te}},[`&-horizontal${ce}-with-text-right${ce}-no-default-orientation-margin-right`]:{"&::before":{width:"100%"},"&::after":{width:0},[`${ce}-inner-text`]:{paddingInlineEnd:te}}})}};var Pe=(0,Me.Z)("Divider",Se=>{const ce=(0,ve.TS)(Se,{dividerHorizontalWithTextGutterMargin:Se.margin,dividerHorizontalGutterMargin:Se.marginLG,sizePaddingEdgeHorizontal:0});return[Ee(ce)]},Se=>({textPaddingInline:"1em",orientationMargin:.05,verticalMarginInline:Se.marginXS})),xe=function(Se,ce){var te={};for(var ne in Se)Object.prototype.hasOwnProperty.call(Se,ne)&&ce.indexOf(ne)<0&&(te[ne]=Se[ne]);if(Se!=null&&typeof Object.getOwnPropertySymbols=="function")for(var le=0,ne=Object.getOwnPropertySymbols(Se);le<ne.length;le++)ce.indexOf(ne[le])<0&&Object.prototype.propertyIsEnumerable.call(Se,ne[le])&&(te[ne[le]]=Se[ne[le]]);return te},Ae=Se=>{const{getPrefixCls:ce,direction:te,divider:ne}=Ne.useContext(be.E_),{prefixCls:le,type:se="horizontal",orientation:fe="center",orientationMargin:he,className:ie,rootClassName:ue,children:me,dashed:Ce,plain:Ie,style:Fe}=Se,Re=xe(Se,["prefixCls","type","orientation","orientationMargin","className","rootClassName","children","dashed","plain","style"]),Ue=ce("divider",le),[Ge,Je]=Pe(Ue),Qe=fe.length>0?`-${fe}`:fe,rt=!!me,$e=fe==="left"&&he!=null,qe=fe==="right"&&he!=null,ot=He()(Ue,ne==null?void 0:ne.className,Je,`${Ue}-${se}`,{[`${Ue}-with-text`]:rt,[`${Ue}-with-text${Qe}`]:rt,[`${Ue}-dashed`]:!!Ce,[`${Ue}-plain`]:!!Ie,[`${Ue}-rtl`]:te==="rtl",[`${Ue}-no-default-orientation-margin-left`]:$e,[`${Ue}-no-default-orientation-margin-right`]:qe},ie,ue),at=Ne.useMemo(()=>typeof he=="number"?he:/^\d+$/.test(he)?Number(he):he,[he]),ut=Object.assign(Object.assign({},$e&&{marginLeft:at}),qe&&{marginRight:at});return Ge(Ne.createElement("div",Object.assign({className:ot,style:Object.assign(Object.assign({},ne==null?void 0:ne.style),Fe)},Re,{role:"separator"}),me&&se!=="vertical"&&Ne.createElement("span",{className:`${Ue}-inner-text`,style:ut},me)))}},43428:function(At,It,Te){"use strict";Te.d(It,{Z:function(){return Bt}});var Oe=Te(92310),He=Te.n(Oe),Ne=Te(33885),be=Te(42978),_e=Te(43403),Me=Te(34280),ve=Te(59301),Ee=ve.createContext(null),Pe=ve.createContext({}),xe=Ee,pe=Te(20068),Ae=Te(54476),Se=Te(77900),ce=Te(10228),te=Te(26112),ne=Te(70425),le=function(on){var Mn=on.prefixCls,Dn=on.className,sn=on.style,rn=on.children,Ht=on.containerRef,Tt=on.id,St=on.onMouseEnter,Qt=on.onMouseOver,gt=on.onMouseLeave,bt=on.onClick,Yt=on.onKeyDown,kt=on.onKeyUp,Mt={onMouseEnter:St,onMouseOver:Qt,onMouseLeave:gt,onClick:bt,onKeyDown:Yt,onKeyUp:kt},ln=ve.useContext(Pe),zn=ln.panel,Gn=(0,ne.useComposeRef)(zn,Ht);return ve.createElement(ve.Fragment,null,ve.createElement("div",(0,Ae.Z)({id:Tt,className:He()("".concat(Mn,"-content"),Dn),style:(0,Ne.Z)({},sn),"aria-modal":"true",role:"dialog",ref:Gn},Mt),rn))},se=le,fe=Te(48736);function he(tn){return typeof tn=="string"&&String(Number(tn))===tn?((0,fe.ZP)(!1,"Invalid value type of `width` or `height` which should be number type instead."),Number(tn)):tn}function ie(tn){warning(!("wrapperClassName"in tn),"'wrapperClassName' is removed. Please use 'rootClassName' instead."),warning(canUseDom()||!tn.open,"Drawer with 'open' in SSR is not work since no place to createPortal. Please move to 'useEffect' instead.")}var ue={width:0,height:0,overflow:"hidden",outline:"none",position:"absolute"};function me(tn,on){var Mn,Dn,sn,rn,Ht=tn.prefixCls,Tt=tn.open,St=tn.placement,Qt=tn.inline,gt=tn.push,bt=tn.forceRender,Yt=tn.autoFocus,kt=tn.keyboard,Mt=tn.rootClassName,ln=tn.rootStyle,zn=tn.zIndex,Gn=tn.className,Hn=tn.id,nr=tn.style,Xn=tn.motion,qt=tn.width,vn=tn.height,Un=tn.children,Ln=tn.contentWrapperStyle,yr=tn.mask,kr=tn.maskClosable,Dr=tn.maskMotion,Gr=tn.maskClassName,Ma=tn.maskStyle,Ja=tn.afterOpenChange,Na=tn.onClose,Da=tn.onMouseEnter,Di=tn.onMouseOver,_a=tn.onMouseLeave,Vr=tn.onClick,Ya=tn.onKeyDown,ui=tn.onKeyUp,mr=ve.useRef(),Er=ve.useRef(),ba=ve.useRef();ve.useImperativeHandle(on,function(){return mr.current});var Fn=function(dn){var Vn=dn.keyCode,Pn=dn.shiftKey;switch(Vn){case ce.Z.TAB:{if(Vn===ce.Z.TAB){if(!Pn&&document.activeElement===ba.current){var Jn;(Jn=Er.current)===null||Jn===void 0||Jn.focus({preventScroll:!0})}else if(Pn&&document.activeElement===Er.current){var $n;($n=ba.current)===null||$n===void 0||$n.focus({preventScroll:!0})}}break}case ce.Z.ESC:{Na&&kt&&(dn.stopPropagation(),Na(dn));break}}};ve.useEffect(function(){if(Tt&&Yt){var fn;(fn=mr.current)===null||fn===void 0||fn.focus({preventScroll:!0})}},[Tt]);var gr=ve.useState(!1),br=(0,be.Z)(gr,2),_r=br[0],ha=br[1],Ct=ve.useContext(xe),we;gt===!1?we={distance:0}:gt===!0?we={}:we=gt||{};var Be=(Mn=(Dn=(sn=we)===null||sn===void 0?void 0:sn.distance)!==null&&Dn!==void 0?Dn:Ct==null?void 0:Ct.pushDistance)!==null&&Mn!==void 0?Mn:180,Le=ve.useMemo(function(){return{pushDistance:Be,push:function(){ha(!0)},pull:function(){ha(!1)}}},[Be]);ve.useEffect(function(){if(Tt){var fn;Ct==null||(fn=Ct.push)===null||fn===void 0||fn.call(Ct)}else{var dn;Ct==null||(dn=Ct.pull)===null||dn===void 0||dn.call(Ct)}},[Tt]),ve.useEffect(function(){return function(){var fn;Ct==null||(fn=Ct.pull)===null||fn===void 0||fn.call(Ct)}},[]);var je=yr&&ve.createElement(Se.default,(0,Ae.Z)({key:"mask"},Dr,{visible:Tt}),function(fn,dn){var Vn=fn.className,Pn=fn.style;return ve.createElement("div",{className:He()("".concat(Ht,"-mask"),Vn,Gr),style:(0,Ne.Z)((0,Ne.Z)({},Pn),Ma),onClick:kr&&Tt?Na:void 0,ref:dn})}),Xe=typeof Xn=="function"?Xn(St):Xn,Et={};if(_r&&Be)switch(St){case"top":Et.transform="translateY(".concat(Be,"px)");break;case"bottom":Et.transform="translateY(".concat(-Be,"px)");break;case"left":Et.transform="translateX(".concat(Be,"px)");break;default:Et.transform="translateX(".concat(-Be,"px)");break}St==="left"||St==="right"?Et.width=he(qt):Et.height=he(vn);var xt={onMouseEnter:Da,onMouseOver:Di,onMouseLeave:_a,onClick:Vr,onKeyDown:Ya,onKeyUp:ui},Jt=ve.createElement(Se.default,(0,Ae.Z)({key:"panel"},Xe,{visible:Tt,forceRender:bt,onVisibleChanged:function(dn){Ja==null||Ja(dn)},removeOnLeave:!1,leavedClassName:"".concat(Ht,"-content-wrapper-hidden")}),function(fn,dn){var Vn=fn.className,Pn=fn.style;return ve.createElement("div",(0,Ae.Z)({className:He()("".concat(Ht,"-content-wrapper"),Vn),style:(0,Ne.Z)((0,Ne.Z)((0,Ne.Z)({},Et),Pn),Ln)},(0,te.Z)(tn,{data:!0})),ve.createElement(se,(0,Ae.Z)({id:Hn,containerRef:dn,prefixCls:Ht,className:Gn,style:nr},xt),Un))}),Vt=(0,Ne.Z)({},ln);return zn&&(Vt.zIndex=zn),ve.createElement(xe.Provider,{value:Le},ve.createElement("div",{className:He()(Ht,"".concat(Ht,"-").concat(St),Mt,(rn={},(0,pe.Z)(rn,"".concat(Ht,"-open"),Tt),(0,pe.Z)(rn,"".concat(Ht,"-inline"),Qt),rn)),style:Vt,tabIndex:-1,ref:mr,onKeyDown:Fn},je,ve.createElement("div",{tabIndex:0,ref:Er,style:ue,"aria-hidden":"true","data-sentinel":"start"}),Jt,ve.createElement("div",{tabIndex:0,ref:ba,style:ue,"aria-hidden":"true","data-sentinel":"end"})))}var Ce=ve.forwardRef(me),Ie=Ce,Fe=function(on){var Mn=on.open,Dn=Mn===void 0?!1:Mn,sn=on.prefixCls,rn=sn===void 0?"rc-drawer":sn,Ht=on.placement,Tt=Ht===void 0?"right":Ht,St=on.autoFocus,Qt=St===void 0?!0:St,gt=on.keyboard,bt=gt===void 0?!0:gt,Yt=on.width,kt=Yt===void 0?378:Yt,Mt=on.mask,ln=Mt===void 0?!0:Mt,zn=on.maskClosable,Gn=zn===void 0?!0:zn,Hn=on.getContainer,nr=on.forceRender,Xn=on.afterOpenChange,qt=on.destroyOnClose,vn=on.onMouseEnter,Un=on.onMouseOver,Ln=on.onMouseLeave,yr=on.onClick,kr=on.onKeyDown,Dr=on.onKeyUp,Gr=on.panelRef,Ma=ve.useState(!1),Ja=(0,be.Z)(Ma,2),Na=Ja[0],Da=Ja[1],Di=ve.useState(!1),_a=(0,be.Z)(Di,2),Vr=_a[0],Ya=_a[1];(0,Me.Z)(function(){Ya(!0)},[]);var ui=Vr?Dn:!1,mr=ve.useRef(),Er=ve.useRef();(0,Me.Z)(function(){ui&&(Er.current=document.activeElement)},[ui]);var ba=function(ha){var Ct;if(Da(ha),Xn==null||Xn(ha),!ha&&Er.current&&!((Ct=mr.current)!==null&&Ct!==void 0&&Ct.contains(Er.current))){var we;(we=Er.current)===null||we===void 0||we.focus({preventScroll:!0})}},Fn=ve.useMemo(function(){return{panel:Gr}},[Gr]);if(!nr&&!Na&&!ui&&qt)return null;var gr={onMouseEnter:vn,onMouseOver:Un,onMouseLeave:Ln,onClick:yr,onKeyDown:kr,onKeyUp:Dr},br=(0,Ne.Z)((0,Ne.Z)({},on),{},{open:ui,prefixCls:rn,placement:Tt,autoFocus:Qt,keyboard:bt,width:kt,mask:ln,maskClosable:Gn,inline:Hn===!1,afterOpenChange:ba,ref:mr},gr);return ve.createElement(Pe.Provider,{value:Fn},ve.createElement(_e.Z,{open:ui||nr||Na,autoDestroy:!1,getContainer:Hn,autoLock:ln&&(ui||Na)},ve.createElement(Ie,br)))},Re=Fe,Ue=Re,Ge=Te(62892),Je=Te(36355),Qe=Te(32441),rt=Te(47729),qe=tn=>{const{prefixCls:on,title:Mn,footer:Dn,extra:sn,closeIcon:rn,closable:Ht,onClose:Tt,headerStyle:St,drawerStyle:Qt,bodyStyle:gt,footerStyle:bt,children:Yt}=tn,kt=ve.useCallback(Hn=>ve.createElement("button",{type:"button",onClick:Tt,"aria-label":"Close",className:`${on}-close`},Hn),[Tt]),[Mt,ln]=(0,rt.Z)(Ht,rn,kt,void 0,!0),zn=ve.useMemo(()=>!Mn&&!Mt?null:ve.createElement("div",{style:St,className:He()(`${on}-header`,{[`${on}-header-close-only`]:Mt&&!Mn&&!sn})},ve.createElement("div",{className:`${on}-header-title`},ln,Mn&&ve.createElement("div",{className:`${on}-title`},Mn)),sn&&ve.createElement("div",{className:`${on}-extra`},sn)),[Mt,ln,sn,St,on,Mn]),Gn=ve.useMemo(()=>{if(!Dn)return null;const Hn=`${on}-footer`;return ve.createElement("div",{className:Hn,style:bt},Dn)},[Dn,bt,on]);return ve.createElement("div",{className:`${on}-wrapper-body`,style:Qt},zn,ve.createElement("div",{className:`${on}-body`,style:gt},Yt),Gn)},ot=Te(33234),at=Te(83116),ut=Te(37613),lt=tn=>{const{componentCls:on,motionDurationSlow:Mn}=tn,Dn={"&-enter, &-appear, &-leave":{"&-start":{transition:"none"},"&-active":{transition:`all ${Mn}`}}};return{[on]:{[`${on}-mask-motion`]:{"&-enter, &-appear, &-leave":{"&-active":{transition:`all ${Mn}`}},"&-enter, &-appear":{opacity:0,"&-active":{opacity:1}},"&-leave":{opacity:1,"&-active":{opacity:0}}},[`${on}-panel-motion`]:{"&-left":[Dn,{"&-enter, &-appear":{"&-start":{transform:"translateX(-100%) !important"},"&-active":{transform:"translateX(0)"}},"&-leave":{transform:"translateX(0)","&-active":{transform:"translateX(-100%)"}}}],"&-right":[Dn,{"&-enter, &-appear":{"&-start":{transform:"translateX(100%) !important"},"&-active":{transform:"translateX(0)"}},"&-leave":{transform:"translateX(0)","&-active":{transform:"translateX(100%)"}}}],"&-top":[Dn,{"&-enter, &-appear":{"&-start":{transform:"translateY(-100%) !important"},"&-active":{transform:"translateY(0)"}},"&-leave":{transform:"translateY(0)","&-active":{transform:"translateY(-100%)"}}}],"&-bottom":[Dn,{"&-enter, &-appear":{"&-start":{transform:"translateY(100%) !important"},"&-active":{transform:"translateY(0)"}},"&-leave":{transform:"translateY(0)","&-active":{transform:"translateY(100%)"}}}]}}}};const yt=tn=>{const{componentCls:on,zIndexPopup:Mn,colorBgMask:Dn,colorBgElevated:sn,motionDurationSlow:rn,motionDurationMid:Ht,padding:Tt,paddingLG:St,fontSizeLG:Qt,lineHeightLG:gt,lineWidth:bt,lineType:Yt,colorSplit:kt,marginSM:Mt,colorIcon:ln,colorIconHover:zn,colorText:Gn,fontWeightStrong:Hn,footerPaddingBlock:nr,footerPaddingInline:Xn}=tn,qt=`${on}-content-wrapper`;return{[on]:{position:"fixed",inset:0,zIndex:Mn,pointerEvents:"none","&-pure":{position:"relative",background:sn,[`&${on}-left`]:{boxShadow:tn.boxShadowDrawerLeft},[`&${on}-right`]:{boxShadow:tn.boxShadowDrawerRight},[`&${on}-top`]:{boxShadow:tn.boxShadowDrawerUp},[`&${on}-bottom`]:{boxShadow:tn.boxShadowDrawerDown}},"&-inline":{position:"absolute"},[`${on}-mask`]:{position:"absolute",inset:0,zIndex:Mn,background:Dn,pointerEvents:"auto"},[qt]:{position:"absolute",zIndex:Mn,maxWidth:"100vw",transition:`all ${rn}`,"&-hidden":{display:"none"}},[`&-left > ${qt}`]:{top:0,bottom:0,left:{_skip_check_:!0,value:0},boxShadow:tn.boxShadowDrawerLeft},[`&-right > ${qt}`]:{top:0,right:{_skip_check_:!0,value:0},bottom:0,boxShadow:tn.boxShadowDrawerRight},[`&-top > ${qt}`]:{top:0,insetInline:0,boxShadow:tn.boxShadowDrawerUp},[`&-bottom > ${qt}`]:{bottom:0,insetInline:0,boxShadow:tn.boxShadowDrawerDown},[`${on}-content`]:{width:"100%",height:"100%",overflow:"auto",background:sn,pointerEvents:"auto"},[`${on}-wrapper-body`]:{display:"flex",flexDirection:"column",width:"100%",height:"100%"},[`${on}-header`]:{display:"flex",flex:0,alignItems:"center",padding:`${Tt}px ${St}px`,fontSize:Qt,lineHeight:gt,borderBottom:`${bt}px ${Yt} ${kt}`,"&-title":{display:"flex",flex:1,alignItems:"center",minWidth:0,minHeight:0}},[`${on}-extra`]:{flex:"none"},[`${on}-close`]:{display:"inline-block",marginInlineEnd:Mt,color:ln,fontWeight:Hn,fontSize:Qt,fontStyle:"normal",lineHeight:1,textAlign:"center",textTransform:"none",textDecoration:"none",background:"transparent",border:0,outline:0,cursor:"pointer",transition:`color ${Ht}`,textRendering:"auto","&:focus, &:hover":{color:zn,textDecoration:"none"}},[`${on}-title`]:{flex:1,margin:0,color:Gn,fontWeight:tn.fontWeightStrong,fontSize:Qt,lineHeight:gt},[`${on}-body`]:{flex:1,minWidth:0,minHeight:0,padding:St,overflow:"auto"},[`${on}-footer`]:{flexShrink:0,padding:`${nr}px ${Xn}px`,borderTop:`${bt}px ${Yt} ${kt}`},"&-rtl":{direction:"rtl"}}}};var ft=(0,at.Z)("Drawer",tn=>{const on=(0,ut.TS)(tn,{});return[yt(on),lt(on)]},tn=>({zIndexPopup:tn.zIndexPopupBase,footerPaddingBlock:tn.paddingXS,footerPaddingInline:tn.padding})),ct=Te(11575),vt=function(tn,on){var Mn={};for(var Dn in tn)Object.prototype.hasOwnProperty.call(tn,Dn)&&on.indexOf(Dn)<0&&(Mn[Dn]=tn[Dn]);if(tn!=null&&typeof Object.getOwnPropertySymbols=="function")for(var sn=0,Dn=Object.getOwnPropertySymbols(tn);sn<Dn.length;sn++)on.indexOf(Dn[sn])<0&&Object.prototype.propertyIsEnumerable.call(tn,Dn[sn])&&(Mn[Dn[sn]]=tn[Dn[sn]]);return Mn};const Ut=null,Zt={distance:180},en=tn=>{var on;const{rootClassName:Mn,width:Dn,height:sn,size:rn="default",mask:Ht=!0,push:Tt=Zt,open:St,afterOpenChange:Qt,onClose:gt,prefixCls:bt,getContainer:Yt,style:kt,className:Mt,visible:ln,afterVisibleChange:zn}=tn,Gn=vt(tn,["rootClassName","width","height","size","mask","push","open","afterOpenChange","onClose","prefixCls","getContainer","style","className","visible","afterVisibleChange"]),{getPopupContainer:Hn,getPrefixCls:nr,direction:Xn,drawer:qt}=ve.useContext(Je.E_),vn=nr("drawer",bt),[Un,Ln]=ft(vn),yr=Yt===void 0&&Hn?()=>Hn(document.body):Yt,kr=He()({"no-mask":!Ht,[`${vn}-rtl`]:Xn==="rtl"},Mn,Ln),Dr=ve.useMemo(()=>Dn!=null?Dn:rn==="large"?736:378,[Dn,rn]),Gr=ve.useMemo(()=>sn!=null?sn:rn==="large"?736:378,[sn,rn]),Ma={motionName:(0,Ge.m)(vn,"mask-motion"),motionAppear:!0,motionEnter:!0,motionLeave:!0,motionDeadline:500},Ja=Da=>({motionName:(0,Ge.m)(vn,`panel-motion-${Da}`),motionAppear:!0,motionEnter:!0,motionLeave:!0,motionDeadline:500}),Na=(0,ct.H)();return Un(ve.createElement(ot.BR,null,ve.createElement(Qe.Ux,{status:!0,override:!0},ve.createElement(Ue,Object.assign({prefixCls:vn,onClose:gt,maskMotion:Ma,motion:Ja},Gn,{open:St!=null?St:ln,mask:Ht,push:Tt,width:Dr,height:Gr,style:Object.assign(Object.assign({},qt==null?void 0:qt.style),kt),className:He()(qt==null?void 0:qt.className,Mt),rootClassName:kr,getContainer:yr,afterOpenChange:Qt!=null?Qt:zn,panelRef:Na}),ve.createElement(qe,Object.assign({prefixCls:vn},Gn,{onClose:gt}))))))},mn=tn=>{const{prefixCls:on,style:Mn,className:Dn,placement:sn="right"}=tn,rn=vt(tn,["prefixCls","style","className","placement"]),{getPrefixCls:Ht}=ve.useContext(Je.E_),Tt=Ht("drawer",on),[St,Qt]=ft(Tt),gt=He()(Tt,`${Tt}-pure`,`${Tt}-${sn}`,Qt,Dn);return St(ve.createElement("div",{className:gt,style:Mn},ve.createElement(qe,Object.assign({prefixCls:Tt},rn))))};en._InternalPanelDoNotUseOrYouWillBeFired=mn;var Bt=en},91857:function(At,It,Te){"use strict";var Oe=Te(59301),He=Te(38819),Ne=Te(92310),be=Te.n(Ne),_e=Te(31561),Me=Te(70425),ve=Te(18929),Ee=Te(2738),Pe=Te(79676),xe=Te(53487),pe=Te(92343),Ae=Te(36355),Se=Te(20834),ce=Te(40875),te=Te(88088),ne=Te(47211);const le=null,se=ue=>{const{menu:me,arrow:Ce,prefixCls:Ie,children:Fe,trigger:Re,disabled:Ue,dropdownRender:Ge,getPopupContainer:Je,overlayClassName:Qe,rootClassName:rt,open:$e,onOpenChange:qe,visible:ot,onVisibleChange:at,mouseEnterDelay:ut=.15,mouseLeaveDelay:nt=.1,autoAdjustOverflow:lt=!0,placement:yt="",overlay:ft,transitionName:ct}=ue,{getPopupContainer:vt,getPrefixCls:Ut,direction:Zt}=Oe.useContext(Ae.E_),en=Oe.useMemo(()=>{const Mt=Ut();return ct!==void 0?ct:yt.includes("top")?`${Mt}-slide-down`:`${Mt}-slide-up`},[Ut,yt,ct]),mn=Oe.useMemo(()=>yt?yt.includes("Center")?yt.slice(0,yt.indexOf("Center")):yt:Zt==="rtl"?"bottomRight":"bottomLeft",[yt,Zt]),Bt=Ut("dropdown",Ie),[tn,on]=(0,ne.Z)(Bt),[,Mn]=(0,te.Z)(),Dn=Oe.Children.only(Fe),sn=(0,pe.Tm)(Dn,{className:be()(`${Bt}-trigger`,{[`${Bt}-rtl`]:Zt==="rtl"},Dn.props.className),disabled:Ue}),rn=Ue?[]:Re;let Ht;rn&&rn.includes("contextMenu")&&(Ht=!0);const[Tt,St]=(0,ve.Z)(!1,{value:$e!=null?$e:ot}),Qt=(0,Me.useEvent)(Mt=>{qe==null||qe(Mt),at==null||at(Mt),St(Mt)}),gt=be()(Qe,rt,on,{[`${Bt}-rtl`]:Zt==="rtl"}),bt=(0,Pe.Z)({arrowPointAtCenter:typeof Ce=="object"&&Ce.pointAtCenter,autoAdjustOverflow:lt,offset:Mn.marginXXS,arrowWidth:Ce?Mn.sizePopupArrow:0,borderRadius:Mn.borderRadius}),Yt=Oe.useCallback(()=>{St(!1)},[]),kt=()=>{let Mt;return me!=null&&me.items?Mt=Oe.createElement(Se.default,Object.assign({},me)):typeof ft=="function"?Mt=ft():Mt=ft,Ge&&(Mt=Ge(Mt)),Mt=Oe.Children.only(typeof Mt=="string"?Oe.createElement("span",null,Mt):Mt),Oe.createElement(ce.J,{prefixCls:`${Bt}-menu`,expandIcon:Oe.createElement("span",{className:`${Bt}-menu-submenu-arrow`},Oe.createElement(He.Z,{className:`${Bt}-menu-submenu-arrow-icon`})),mode:"vertical",selectable:!1,onClick:Yt,validator:ln=>{let{mode:zn}=ln}},Mt)};return tn(Oe.createElement(_e.Z,Object.assign({alignPoint:Ht},(0,Ee.Z)(ue,["rootClassName"]),{mouseEnterDelay:ut,mouseLeaveDelay:nt,visible:Tt,builtinPlacements:bt,arrow:!!Ce,overlayClassName:gt,prefixCls:Bt,getPopupContainer:Je||vt,transitionName:en,trigger:rn,overlay:kt,placement:mn,onVisibleChange:Qt}),sn))};function fe(ue){return Object.assign(Object.assign({},ue),{align:{overflow:{adjustX:!1,adjustY:!1}}})}const he=(0,xe.Z)(se,"dropdown",ue=>ue,fe),ie=ue=>Oe.createElement(he,Object.assign({},ue),Oe.createElement("span",null));se._InternalPanelDoNotUseOrYouWillBeFired=ie,It.Z=se},38854:function(At,It,Te){"use strict";Te.d(It,{Z:function(){return te}});var Oe=Te(91857),He=Te(92310),Ne=Te.n(He),be=Te(59301),_e=Te(18785),Me=Te(3113),ve=Te(36355),Ee=Te(81327),Pe=Te(33234),xe=Te(47211),pe=function(ne,le){var se={};for(var fe in ne)Object.prototype.hasOwnProperty.call(ne,fe)&&le.indexOf(fe)<0&&(se[fe]=ne[fe]);if(ne!=null&&typeof Object.getOwnPropertySymbols=="function")for(var he=0,fe=Object.getOwnPropertySymbols(ne);he<fe.length;he++)le.indexOf(fe[he])<0&&Object.prototype.propertyIsEnumerable.call(ne,fe[he])&&(se[fe[he]]=ne[fe[he]]);return se};const Ae=ne=>{const{getPopupContainer:le,getPrefixCls:se,direction:fe}=be.useContext(ve.E_),{prefixCls:he,type:ie="default",danger:ue,disabled:me,loading:Ce,onClick:Ie,htmlType:Fe,children:Re,className:Ue,menu:Ge,arrow:Je,autoFocus:Qe,overlay:rt,trigger:$e,align:qe,open:ot,onOpenChange:at,placement:ut,getPopupContainer:nt,href:lt,icon:yt=be.createElement(_e.Z,null),title:ft,buttonsRender:ct=kt=>kt,mouseEnterDelay:vt,mouseLeaveDelay:Ut,overlayClassName:Zt,overlayStyle:en,destroyPopupOnHide:mn,dropdownRender:Bt}=ne,tn=pe(ne,["prefixCls","type","danger","disabled","loading","onClick","htmlType","children","className","menu","arrow","autoFocus","overlay","trigger","align","open","onOpenChange","placement","getPopupContainer","href","icon","title","buttonsRender","mouseEnterDelay","mouseLeaveDelay","overlayClassName","overlayStyle","destroyPopupOnHide","dropdownRender"]),on=se("dropdown",he),Mn=`${on}-button`,[Dn,sn]=(0,xe.Z)(on),rn={menu:Ge,arrow:Je,autoFocus:Qe,align:qe,disabled:me,trigger:me?[]:$e,onOpenChange:at,getPopupContainer:nt||le,mouseEnterDelay:vt,mouseLeaveDelay:Ut,overlayClassName:Zt,overlayStyle:en,destroyPopupOnHide:mn,dropdownRender:Bt},{compactSize:Ht,compactItemClassnames:Tt}=(0,Pe.ri)(on,fe),St=Ne()(Mn,Tt,Ue,sn);"overlay"in ne&&(rn.overlay=rt),"open"in ne&&(rn.open=ot),"placement"in ne?rn.placement=ut:rn.placement=fe==="rtl"?"bottomLeft":"bottomRight";const Qt=be.createElement(Me.ZP,{type:ie,danger:ue,disabled:me,loading:Ce,onClick:Ie,htmlType:Fe,href:lt,title:ft},Re),gt=be.createElement(Me.ZP,{type:ie,danger:ue,icon:yt}),[bt,Yt]=ct([Qt,gt]);return Dn(be.createElement(Ee.Z.Compact,Object.assign({className:St,size:Ht,block:!0},tn),bt,be.createElement(Oe.Z,Object.assign({},rn),Yt)))};Ae.__ANT_BUTTON=!0;var Se=Ae;const ce=Oe.Z;ce.Button=Se;var te=ce},47211:function(At,It,Te){"use strict";Te.d(It,{Z:function(){return pe}});var Oe=Te(17313),He=Te(13826),Ne=Te(92899),be=Te(29878),_e=Te(19447),Me=Te(83116),ve=Te(37613),Pe=Ae=>{const{componentCls:Se,menuCls:ce,colorError:te,colorTextLightSolid:ne}=Ae,le=`${ce}-item`;return{[`${Se}, ${Se}-menu-submenu`]:{[`${ce} ${le}`]:{[`&${le}-danger:not(${le}-disabled)`]:{color:te,"&:hover":{color:ne,backgroundColor:te}}}}}};const xe=Ae=>{const{componentCls:Se,menuCls:ce,zIndexPopup:te,dropdownArrowDistance:ne,sizePopupArrow:le,antCls:se,iconCls:fe,motionDurationMid:he,dropdownPaddingVertical:ie,fontSize:ue,dropdownEdgeChildPadding:me,colorTextDisabled:Ce,fontSizeIcon:Ie,controlPaddingHorizontal:Fe,colorBgElevated:Re}=Ae;return[{[Se]:Object.assign(Object.assign({},(0,Oe.Wf)(Ae)),{position:"absolute",top:-9999,left:{_skip_check_:!0,value:-9999},zIndex:te,display:"block","&::before":{position:"absolute",insetBlock:-ne+le/2,zIndex:-9999,opacity:1e-4,content:'""'},[`&-trigger${se}-btn`]:{[`& > ${fe}-down, & > ${se}-btn-icon > ${fe}-down`]:{fontSize:Ie}},[`${Se}-wrap`]:{position:"relative",[`${se}-btn > ${fe}-down`]:{fontSize:Ie},[`${fe}-down::before`]:{transition:`transform ${he}`}},[`${Se}-wrap-open`]:{[`${fe}-down::before`]:{transform:"rotate(180deg)"}},"\n &-hidden,\n &-menu-hidden,\n &-menu-submenu-hidden\n ":{display:"none"},[`&${se}-slide-down-enter${se}-slide-down-enter-active${Se}-placement-bottomLeft,
|
|
|
&${se}-slide-down-appear${se}-slide-down-appear-active${Se}-placement-bottomLeft,
|
|
|
&${se}-slide-down-enter${se}-slide-down-enter-active${Se}-placement-bottom,
|
|
|
&${se}-slide-down-appear${se}-slide-down-appear-active${Se}-placement-bottom,
|
|
|
&${se}-slide-down-enter${se}-slide-down-enter-active${Se}-placement-bottomRight,
|
|
|
&${se}-slide-down-appear${se}-slide-down-appear-active${Se}-placement-bottomRight`]:{animationName:He.fJ},[`&${se}-slide-up-enter${se}-slide-up-enter-active${Se}-placement-topLeft,
|
|
|
&${se}-slide-up-appear${se}-slide-up-appear-active${Se}-placement-topLeft,
|
|
|
&${se}-slide-up-enter${se}-slide-up-enter-active${Se}-placement-top,
|
|
|
&${se}-slide-up-appear${se}-slide-up-appear-active${Se}-placement-top,
|
|
|
&${se}-slide-up-enter${se}-slide-up-enter-active${Se}-placement-topRight,
|
|
|
&${se}-slide-up-appear${se}-slide-up-appear-active${Se}-placement-topRight`]:{animationName:He.Qt},[`&${se}-slide-down-leave${se}-slide-down-leave-active${Se}-placement-bottomLeft,
|
|
|
&${se}-slide-down-leave${se}-slide-down-leave-active${Se}-placement-bottom,
|
|
|
&${se}-slide-down-leave${se}-slide-down-leave-active${Se}-placement-bottomRight`]:{animationName:He.Uw},[`&${se}-slide-up-leave${se}-slide-up-leave-active${Se}-placement-topLeft,
|
|
|
&${se}-slide-up-leave${se}-slide-up-leave-active${Se}-placement-top,
|
|
|
&${se}-slide-up-leave${se}-slide-up-leave-active${Se}-placement-topRight`]:{animationName:He.ly}})},(0,_e.ZP)(Ae,{colorBg:Re,limitVerticalRadius:!0,arrowPlacement:{top:!0,bottom:!0}}),{[`${Se} ${ce}`]:{position:"relative",margin:0},[`${ce}-submenu-popup`]:{position:"absolute",zIndex:te,background:"transparent",boxShadow:"none",transformOrigin:"0 0","ul, li":{listStyle:"none",margin:0}},[`${Se}, ${Se}-menu-submenu`]:{[ce]:Object.assign(Object.assign({padding:me,listStyleType:"none",backgroundColor:Re,backgroundClip:"padding-box",borderRadius:Ae.borderRadiusLG,outline:"none",boxShadow:Ae.boxShadowSecondary},(0,Oe.Qy)(Ae)),{[`${ce}-item-group-title`]:{padding:`${ie}px ${Fe}px`,color:Ae.colorTextDescription,transition:`all ${he}`},[`${ce}-item`]:{position:"relative",display:"flex",alignItems:"center"},[`${ce}-item-icon`]:{minWidth:ue,marginInlineEnd:Ae.marginXS,fontSize:Ae.fontSizeSM},[`${ce}-title-content`]:{flex:"auto","> a":{color:"inherit",transition:`all ${he}`,"&:hover":{color:"inherit"},"&::after":{position:"absolute",inset:0,content:'""'}}},[`${ce}-item, ${ce}-submenu-title`]:Object.assign(Object.assign({clear:"both",margin:0,padding:`${ie}px ${Fe}px`,color:Ae.colorText,fontWeight:"normal",fontSize:ue,lineHeight:Ae.lineHeight,cursor:"pointer",transition:`all ${he}`,borderRadius:Ae.borderRadiusSM,"&:hover, &-active":{backgroundColor:Ae.controlItemBgHover}},(0,Oe.Qy)(Ae)),{"&-selected":{color:Ae.colorPrimary,backgroundColor:Ae.controlItemBgActive,"&:hover, &-active":{backgroundColor:Ae.controlItemBgActiveHover}},"&-disabled":{color:Ce,cursor:"not-allowed","&:hover":{color:Ce,backgroundColor:Re,cursor:"not-allowed"},a:{pointerEvents:"none"}},"&-divider":{height:1,margin:`${Ae.marginXXS}px 0`,overflow:"hidden",lineHeight:0,backgroundColor:Ae.colorSplit},[`${Se}-menu-submenu-expand-icon`]:{position:"absolute",insetInlineEnd:Ae.paddingXS,[`${Se}-menu-submenu-arrow-icon`]:{marginInlineEnd:"0 !important",color:Ae.colorTextDescription,fontSize:Ie,fontStyle:"normal"}}}),[`${ce}-item-group-list`]:{margin:`0 ${Ae.marginXS}px`,padding:0,listStyle:"none"},[`${ce}-submenu-title`]:{paddingInlineEnd:Fe+Ae.fontSizeSM},[`${ce}-submenu-vertical`]:{position:"relative"},[`${ce}-submenu${ce}-submenu-disabled ${Se}-menu-submenu-title`]:{[`&, ${Se}-menu-submenu-arrow-icon`]:{color:Ce,backgroundColor:Re,cursor:"not-allowed"}},[`${ce}-submenu-selected ${Se}-menu-submenu-title`]:{color:Ae.colorPrimary}})}},[(0,He.oN)(Ae,"slide-up"),(0,He.oN)(Ae,"slide-down"),(0,Ne.Fm)(Ae,"move-up"),(0,Ne.Fm)(Ae,"move-down"),(0,be._y)(Ae,"zoom-big")]]};var pe=(0,Me.Z)("Dropdown",(Ae,Se)=>{let{rootPrefixCls:ce}=Se;const{marginXXS:te,sizePopupArrow:ne,controlHeight:le,fontSize:se,lineHeight:fe,paddingXXS:he,componentCls:ie,borderRadiusLG:ue}=Ae,me=(le-se*fe)/2,{dropdownArrowOffset:Ce}=(0,_e.fS)({contentRadius:ue}),Ie=(0,ve.TS)(Ae,{menuCls:`${ie}-menu`,rootPrefixCls:ce,dropdownArrowDistance:ne/2+te,dropdownArrowOffset:Ce,dropdownPaddingVertical:me,dropdownEdgeChildPadding:he});return[xe(Ie),Pe(Ie)]},Ae=>({zIndexPopup:Ae.zIndexPopupBase+50}))},8628:function(At,It,Te){"use strict";var Oe=Te(59301),He=Te(34280),Ne=Te(56762),be=Te(69507);function _e(){let Me=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;const ve=(0,Oe.useRef)({}),Ee=(0,Ne.Z)(),Pe=(0,be.ZP)();return(0,He.Z)(()=>{const xe=Pe.subscribe(pe=>{ve.current=pe,Me&&Ee()});return()=>Pe.unsubscribe(xe)},[]),ve.current}It.Z=_e},45818:function(At,It,Te){"use strict";Te.d(It,{D:function(){return he},Z:function(){return me}});var Oe=Te(54476),He=Te(59301),Ne={icon:{tag:"svg",attrs:{viewBox:"0 0 1024 1024",focusable:"false"},children:[{tag:"path",attrs:{d:"M912 192H328c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h584c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zm0 284H328c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h584c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zm0 284H328c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h584c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zM104 228a56 56 0 10112 0 56 56 0 10-112 0zm0 284a56 56 0 10112 0 56 56 0 10-112 0zm0 284a56 56 0 10112 0 56 56 0 10-112 0z"}}]},name:"bars",theme:"outlined"},be=Ne,_e=Te(7657),Me=function(Ie,Fe){return He.createElement(_e.Z,(0,Oe.Z)({},Ie,{ref:Fe,icon:be}))},ve=He.forwardRef(Me),Ee=ve,Pe=Te(33853),xe=Te(38819),pe=Te(92310),Ae=Te.n(pe),Se=Te(2738),te=Ce=>!isNaN(parseFloat(Ce))&&isFinite(Ce),ne=Te(36355),le=Te(84966),se=function(Ce,Ie){var Fe={};for(var Re in Ce)Object.prototype.hasOwnProperty.call(Ce,Re)&&Ie.indexOf(Re)<0&&(Fe[Re]=Ce[Re]);if(Ce!=null&&typeof Object.getOwnPropertySymbols=="function")for(var Ue=0,Re=Object.getOwnPropertySymbols(Ce);Ue<Re.length;Ue++)Ie.indexOf(Re[Ue])<0&&Object.prototype.propertyIsEnumerable.call(Ce,Re[Ue])&&(Fe[Re[Ue]]=Ce[Re[Ue]]);return Fe};const fe={xs:"479.98px",sm:"575.98px",md:"767.98px",lg:"991.98px",xl:"1199.98px",xxl:"1599.98px"},he=He.createContext({}),ie=(()=>{let Ce=0;return function(){let Ie=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"";return Ce+=1,`${Ie}${Ce}`}})();var me=He.forwardRef((Ce,Ie)=>{const{prefixCls:Fe,className:Re,trigger:Ue,children:Ge,defaultCollapsed:Je=!1,theme:Qe="dark",style:rt={},collapsible:$e=!1,reverseArrow:qe=!1,width:ot=200,collapsedWidth:at=80,zeroWidthTriggerStyle:ut,breakpoint:nt,onCollapse:lt,onBreakpoint:yt}=Ce,ft=se(Ce,["prefixCls","className","trigger","children","defaultCollapsed","theme","style","collapsible","reverseArrow","width","collapsedWidth","zeroWidthTriggerStyle","breakpoint","onCollapse","onBreakpoint"]),{siderHook:ct}=(0,He.useContext)(le.Gs),[vt,Ut]=(0,He.useState)("collapsed"in Ce?Ce.collapsed:Je),[Zt,en]=(0,He.useState)(!1);(0,He.useEffect)(()=>{"collapsed"in Ce&&Ut(Ce.collapsed)},[Ce.collapsed]);const mn=(sn,rn)=>{"collapsed"in Ce||Ut(sn),lt==null||lt(sn,rn)},Bt=(0,He.useRef)();Bt.current=sn=>{en(sn.matches),yt==null||yt(sn.matches),vt!==sn.matches&&mn(sn.matches,"responsive")},(0,He.useEffect)(()=>{function sn(Ht){return Bt.current(Ht)}let rn;if(typeof window!="undefined"){const{matchMedia:Ht}=window;if(Ht&&nt&&nt in fe){rn=Ht(`(max-width: ${fe[nt]})`);try{rn.addEventListener("change",sn)}catch(Tt){rn.addListener(sn)}sn(rn)}}return()=>{try{rn==null||rn.removeEventListener("change",sn)}catch(Ht){rn==null||rn.removeListener(sn)}}},[nt]),(0,He.useEffect)(()=>{const sn=ie("ant-sider-");return ct.addSider(sn),()=>ct.removeSider(sn)},[]);const tn=()=>{mn(!vt,"clickTrigger")},{getPrefixCls:on}=(0,He.useContext)(ne.E_),Mn=()=>{const sn=on("layout-sider",Fe),rn=(0,Se.Z)(ft,["collapsed"]),Ht=vt?at:ot,Tt=te(Ht)?`${Ht}px`:String(Ht),St=parseFloat(String(at||0))===0?He.createElement("span",{onClick:tn,className:Ae()(`${sn}-zero-width-trigger`,`${sn}-zero-width-trigger-${qe?"right":"left"}`),style:ut},Ue||He.createElement(Ee,null)):null,bt={expanded:qe?He.createElement(xe.Z,null):He.createElement(Pe.Z,null),collapsed:qe?He.createElement(Pe.Z,null):He.createElement(xe.Z,null)}[vt?"collapsed":"expanded"],Yt=Ue!==null?St||He.createElement("div",{className:`${sn}-trigger`,onClick:tn,style:{width:Tt}},Ue||bt):null,kt=Object.assign(Object.assign({},rt),{flex:`0 0 ${Tt}`,maxWidth:Tt,minWidth:Tt,width:Tt}),Mt=Ae()(sn,`${sn}-${Qe}`,{[`${sn}-collapsed`]:!!vt,[`${sn}-has-trigger`]:$e&&Ue!==null&&!St,[`${sn}-below`]:!!Zt,[`${sn}-zero-width`]:parseFloat(Tt)===0},Re);return He.createElement("aside",Object.assign({className:Mt},rn,{style:kt,ref:Ie}),He.createElement("div",{className:`${sn}-children`},Ge),$e||Zt&&St?Yt:null)},Dn=He.useMemo(()=>({siderCollapsed:vt}),[vt]);return He.createElement(he.Provider,{value:Dn},Mn())})},84966:function(At,It,Te){"use strict";Te.d(It,{VY:function(){return he},$_:function(){return fe},h4:function(){return se},Gs:function(){return Se},ZP:function(){return ie}});var Oe=Te(94480),He=Te(92310),Ne=Te.n(He),be=Te(2738),_e=Te(59301),Me=Te(36355),ve=Te(83116),Pe=ue=>{const{componentCls:me,bodyBg:Ce,lightSiderBg:Ie,lightTriggerBg:Fe,lightTriggerColor:Re}=ue;return{[`${me}-sider-light`]:{background:Ie,[`${me}-sider-trigger`]:{color:Re,background:Fe},[`${me}-sider-zero-width-trigger`]:{color:Re,background:Fe,border:`1px solid ${Ce}`,borderInlineStart:0}}}};const xe=ue=>{const{antCls:me,componentCls:Ce,colorText:Ie,triggerColor:Fe,footerBg:Re,triggerBg:Ue,headerHeight:Ge,headerPadding:Je,headerColor:Qe,footerPadding:rt,triggerHeight:$e,zeroTriggerHeight:qe,zeroTriggerWidth:ot,motionDurationMid:at,motionDurationSlow:ut,fontSize:nt,borderRadius:lt,bodyBg:yt,headerBg:ft,siderBg:ct}=ue;return{[Ce]:Object.assign(Object.assign({display:"flex",flex:"auto",flexDirection:"column",minHeight:0,background:yt,"&, *":{boxSizing:"border-box"},[`&${Ce}-has-sider`]:{flexDirection:"row",[`> ${Ce}, > ${Ce}-content`]:{width:0}},[`${Ce}-header, &${Ce}-footer`]:{flex:"0 0 auto"},[`${Ce}-sider`]:{position:"relative",minWidth:0,background:ct,transition:`all ${at}, background 0s`,"&-children":{height:"100%",marginTop:-.1,paddingTop:.1,[`${me}-menu${me}-menu-inline-collapsed`]:{width:"auto"}},"&-has-trigger":{paddingBottom:$e},"&-right":{order:1},"&-trigger":{position:"fixed",bottom:0,zIndex:1,height:$e,color:Fe,lineHeight:`${$e}px`,textAlign:"center",background:Ue,cursor:"pointer",transition:`all ${at}`},"&-zero-width":{"> *":{overflow:"hidden"},"&-trigger":{position:"absolute",top:Ge,insetInlineEnd:-ot,zIndex:1,width:ot,height:qe,color:Fe,fontSize:ue.fontSizeXL,display:"flex",alignItems:"center",justifyContent:"center",background:ct,borderStartStartRadius:0,borderStartEndRadius:lt,borderEndEndRadius:lt,borderEndStartRadius:0,cursor:"pointer",transition:`background ${ut} ease`,"&::after":{position:"absolute",inset:0,background:"transparent",transition:`all ${ut}`,content:'""'},"&:hover::after":{background:"rgba(255, 255, 255, 0.2)"},"&-right":{insetInlineStart:-ot,borderStartStartRadius:lt,borderStartEndRadius:0,borderEndEndRadius:0,borderEndStartRadius:lt}}}}},Pe(ue)),{"&-rtl":{direction:"rtl"}}),[`${Ce}-header`]:{height:Ge,padding:Je,color:Qe,lineHeight:`${Ge}px`,background:ft,[`${me}-menu`]:{lineHeight:"inherit"}},[`${Ce}-footer`]:{padding:rt,color:Ie,fontSize:nt,background:Re},[`${Ce}-content`]:{flex:"auto",minHeight:0}}};var pe=(0,ve.Z)("Layout",ue=>[xe(ue)],ue=>{const{colorBgLayout:me,controlHeight:Ce,controlHeightLG:Ie,colorText:Fe,controlHeightSM:Re,marginXXS:Ue,colorTextLightSolid:Ge,colorBgContainer:Je}=ue,Qe=Ie*1.25;return{colorBgHeader:"#001529",colorBgBody:me,colorBgTrigger:"#002140",bodyBg:me,headerBg:"#001529",headerHeight:Ce*2,headerPadding:`0 ${Qe}px`,headerColor:Fe,footerPadding:`${Re}px ${Qe}px`,footerBg:me,siderBg:"#001529",triggerHeight:Ie+Ue*2,triggerBg:"#002140",triggerColor:Ge,zeroTriggerWidth:Ie,zeroTriggerHeight:Ie,lightSiderBg:Je,lightTriggerBg:Je,lightTriggerColor:Fe}},{deprecatedTokens:[["colorBgBody","bodyBg"],["colorBgHeader","headerBg"],["colorBgTrigger","triggerBg"]]}),Ae=function(ue,me){var Ce={};for(var Ie in ue)Object.prototype.hasOwnProperty.call(ue,Ie)&&me.indexOf(Ie)<0&&(Ce[Ie]=ue[Ie]);if(ue!=null&&typeof Object.getOwnPropertySymbols=="function")for(var Fe=0,Ie=Object.getOwnPropertySymbols(ue);Fe<Ie.length;Fe++)me.indexOf(Ie[Fe])<0&&Object.prototype.propertyIsEnumerable.call(ue,Ie[Fe])&&(Ce[Ie[Fe]]=ue[Ie[Fe]]);return Ce};const Se=_e.createContext({siderHook:{addSider:()=>null,removeSider:()=>null}});function ce(ue){let{suffixCls:me,tagName:Ce,displayName:Ie}=ue;return Fe=>_e.forwardRef((Ue,Ge)=>_e.createElement(Fe,Object.assign({ref:Ge,suffixCls:me,tagName:Ce},Ue)))}const te=_e.forwardRef((ue,me)=>{const{prefixCls:Ce,suffixCls:Ie,className:Fe,tagName:Re}=ue,Ue=Ae(ue,["prefixCls","suffixCls","className","tagName"]),{getPrefixCls:Ge}=_e.useContext(Me.E_),Je=Ge("layout",Ce),[Qe,rt]=pe(Je),$e=Ie?`${Je}-${Ie}`:Je;return Qe(_e.createElement(Re,Object.assign({className:Ne()(Ce||$e,Fe,rt),ref:me},Ue)))}),ne=_e.forwardRef((ue,me)=>{const{direction:Ce}=_e.useContext(Me.E_),[Ie,Fe]=_e.useState([]),{prefixCls:Re,className:Ue,rootClassName:Ge,children:Je,hasSider:Qe,tagName:rt,style:$e}=ue,qe=Ae(ue,["prefixCls","className","rootClassName","children","hasSider","tagName","style"]),ot=(0,be.Z)(qe,["suffixCls"]),{getPrefixCls:at,layout:ut}=_e.useContext(Me.E_),nt=at("layout",Re),[lt,yt]=pe(nt),ft=Ne()(nt,{[`${nt}-has-sider`]:typeof Qe=="boolean"?Qe:Ie.length>0,[`${nt}-rtl`]:Ce==="rtl"},ut==null?void 0:ut.className,Ue,Ge,yt),ct=_e.useMemo(()=>({siderHook:{addSider:vt=>{Fe(Ut=>[].concat((0,Oe.Z)(Ut),[vt]))},removeSider:vt=>{Fe(Ut=>Ut.filter(Zt=>Zt!==vt))}}}),[]);return lt(_e.createElement(Se.Provider,{value:ct},_e.createElement(rt,Object.assign({ref:me,className:ft,style:Object.assign(Object.assign({},ut==null?void 0:ut.style),$e)},ot),Je)))}),le=ce({tagName:"div",displayName:"Layout"})(ne),se=ce({suffixCls:"header",tagName:"header",displayName:"Header"})(te),fe=ce({suffixCls:"footer",tagName:"footer",displayName:"Footer"})(te),he=ce({suffixCls:"content",tagName:"main",displayName:"Content"})(te);var ie=le},40875:function(At,It,Te){"use strict";Te.d(It,{J:function(){return Me}});var Oe=Te(59301),He=Te(33234),Ne=Te(70425),be=function(ve,Ee){var Pe={};for(var xe in ve)Object.prototype.hasOwnProperty.call(ve,xe)&&Ee.indexOf(xe)<0&&(Pe[xe]=ve[xe]);if(ve!=null&&typeof Object.getOwnPropertySymbols=="function")for(var pe=0,xe=Object.getOwnPropertySymbols(ve);pe<xe.length;pe++)Ee.indexOf(xe[pe])<0&&Object.prototype.propertyIsEnumerable.call(ve,xe[pe])&&(Pe[xe[pe]]=ve[xe[pe]]);return Pe};const _e=Oe.createContext(null),Me=Oe.forwardRef((ve,Ee)=>{const{children:Pe}=ve,xe=be(ve,["children"]),pe=Oe.useContext(_e),Ae=Oe.useMemo(()=>Object.assign(Object.assign({},pe),xe),[pe,xe.prefixCls,xe.mode,xe.selectable]);return Oe.createElement(_e.Provider,{value:Ae},Oe.createElement(He.BR,null,(0,Ne.supportNodeRef)(Pe)?Oe.cloneElement(Pe,{ref:Ee}):Pe))});It.Z=_e},20834:function(At,It,Te){"use strict";Te.d(It,{default:function(){return Dn}});var Oe=Te(15285),He=Te(59301),Ne=Te(45818),be=Te(92310),_e=Te.n(be),Me=Te(36355),ve=function(sn,rn){var Ht={};for(var Tt in sn)Object.prototype.hasOwnProperty.call(sn,Tt)&&rn.indexOf(Tt)<0&&(Ht[Tt]=sn[Tt]);if(sn!=null&&typeof Object.getOwnPropertySymbols=="function")for(var St=0,Tt=Object.getOwnPropertySymbols(sn);St<Tt.length;St++)rn.indexOf(Tt[St])<0&&Object.prototype.propertyIsEnumerable.call(sn,Tt[St])&&(Ht[Tt[St]]=sn[Tt[St]]);return Ht},Pe=sn=>{const{prefixCls:rn,className:Ht,dashed:Tt}=sn,St=ve(sn,["prefixCls","className","dashed"]),{getPrefixCls:Qt}=He.useContext(Me.E_),gt=Qt("menu",rn),bt=_e()({[`${gt}-item-divider-dashed`]:!!Tt},Ht);return He.createElement(Oe.iz,Object.assign({className:bt},St))},xe=Te(11592),pe=Te(2738),Ae=Te(6848),Se=Te(92343),te=(0,He.createContext)({prefixCls:"",firstLevel:!0,inlineCollapsed:!1}),le=sn=>{var rn;const{className:Ht,children:Tt,icon:St,title:Qt,danger:gt}=sn,{prefixCls:bt,firstLevel:Yt,direction:kt,disableMenuItemTitleTooltip:Mt,inlineCollapsed:ln}=He.useContext(te),zn=vn=>{const Un=He.createElement("span",{className:`${bt}-title-content`},Tt);return(!St||(0,Se.l$)(Tt)&&Tt.type==="span")&&Tt&&vn&&Yt&&typeof Tt=="string"?He.createElement("div",{className:`${bt}-inline-collapsed-noicon`},Tt.charAt(0)):Un},{siderCollapsed:Gn}=He.useContext(Ne.D);let Hn=Qt;typeof Qt=="undefined"?Hn=Yt?Tt:"":Qt===!1&&(Hn="");const nr={title:Hn};!Gn&&!ln&&(nr.title=null,nr.open=!1);const Xn=(0,xe.Z)(Tt).length;let qt=He.createElement(Oe.ck,Object.assign({},(0,pe.Z)(sn,["title","icon","danger"]),{className:_e()({[`${bt}-item-danger`]:gt,[`${bt}-item-only-child`]:(St?Xn+1:Xn)===1},Ht),title:typeof Qt=="string"?Qt:void 0}),(0,Se.Tm)(St,{className:_e()((0,Se.l$)(St)?(rn=St.props)===null||rn===void 0?void 0:rn.className:"",`${bt}-item-icon`)}),zn(ln));return Mt||(qt=He.createElement(Ae.Z,Object.assign({},nr,{placement:kt==="rtl"?"left":"right",overlayClassName:`${bt}-inline-collapsed-tooltip`}),qt)),qt},fe=sn=>{var rn;const{popupClassName:Ht,icon:Tt,title:St,theme:Qt}=sn,gt=He.useContext(te),{prefixCls:bt,inlineCollapsed:Yt,theme:kt}=gt,Mt=(0,Oe.Xl)();let ln;if(!Tt)ln=Yt&&!Mt.length&&St&&typeof St=="string"?He.createElement("div",{className:`${bt}-inline-collapsed-noicon`},St.charAt(0)):He.createElement("span",{className:`${bt}-title-content`},St);else{const Gn=(0,Se.l$)(St)&&St.type==="span";ln=He.createElement(He.Fragment,null,(0,Se.Tm)(Tt,{className:_e()((0,Se.l$)(Tt)?(rn=Tt.props)===null||rn===void 0?void 0:rn.className:"",`${bt}-item-icon`)}),Gn?St:He.createElement("span",{className:`${bt}-title-content`},St))}const zn=He.useMemo(()=>Object.assign(Object.assign({},gt),{firstLevel:!1}),[gt]);return He.createElement(te.Provider,{value:zn},He.createElement(Oe.Wd,Object.assign({},(0,pe.Z)(sn,["icon"]),{title:ln,popupClassName:_e()(bt,Ht,`${bt}-${Qt||kt}`)})))},he=Te(18785),ie=Te(70425),ue=Te(62892),me=Te(40875),Ce=function(sn,rn){var Ht={};for(var Tt in sn)Object.prototype.hasOwnProperty.call(sn,Tt)&&rn.indexOf(Tt)<0&&(Ht[Tt]=sn[Tt]);if(sn!=null&&typeof Object.getOwnPropertySymbols=="function")for(var St=0,Tt=Object.getOwnPropertySymbols(sn);St<Tt.length;St++)rn.indexOf(Tt[St])<0&&Object.prototype.propertyIsEnumerable.call(sn,Tt[St])&&(Ht[Tt[St]]=sn[Tt[St]]);return Ht};function Ie(sn){return(sn||[]).map((rn,Ht)=>{if(rn&&typeof rn=="object"){const Tt=rn,{label:St,children:Qt,key:gt,type:bt}=Tt,Yt=Ce(Tt,["label","children","key","type"]),kt=gt!=null?gt:`tmp-${Ht}`;return Qt||bt==="group"?bt==="group"?He.createElement(Oe.BW,Object.assign({key:kt},Yt,{title:St}),Ie(Qt)):He.createElement(fe,Object.assign({key:kt},Yt,{title:St}),Ie(Qt)):bt==="divider"?He.createElement(Pe,Object.assign({key:kt},Yt)):He.createElement(le,Object.assign({key:kt},Yt),St)}return null}).filter(rn=>rn)}function Fe(sn){return He.useMemo(()=>sn&&Ie(sn),[sn])}var Re=Te(64993),Ue=Te(17313),Ge=Te(8378),Je=Te(13826),Qe=Te(29878),rt=Te(83116),$e=Te(37613),ot=sn=>{const{componentCls:rn,motionDurationSlow:Ht,horizontalLineHeight:Tt,colorSplit:St,lineWidth:Qt,lineType:gt,itemPaddingInline:bt}=sn;return{[`${rn}-horizontal`]:{lineHeight:Tt,border:0,borderBottom:`${Qt}px ${gt} ${St}`,boxShadow:"none","&::after":{display:"block",clear:"both",height:0,content:'"\\20"'},[`${rn}-item, ${rn}-submenu`]:{position:"relative",display:"inline-block",verticalAlign:"bottom",paddingInline:bt},[`> ${rn}-item:hover,
|
|
|
> ${rn}-item-active,
|
|
|
> ${rn}-submenu ${rn}-submenu-title:hover`]:{backgroundColor:"transparent"},[`${rn}-item, ${rn}-submenu-title`]:{transition:[`border-color ${Ht}`,`background ${Ht}`].join(",")},[`${rn}-submenu-arrow`]:{display:"none"}}}},ut=sn=>{let{componentCls:rn,menuArrowOffset:Ht}=sn;return{[`${rn}-rtl`]:{direction:"rtl"},[`${rn}-submenu-rtl`]:{transformOrigin:"100% 0"},[`${rn}-rtl${rn}-vertical,
|
|
|
${rn}-submenu-rtl ${rn}-vertical`]:{[`${rn}-submenu-arrow`]:{"&::before":{transform:`rotate(-45deg) translateY(-${Ht})`},"&::after":{transform:`rotate(45deg) translateY(${Ht})`}}}}};const nt=sn=>Object.assign({},(0,Ue.oN)(sn));var yt=(sn,rn)=>{const{componentCls:Ht,itemColor:Tt,itemSelectedColor:St,groupTitleColor:Qt,itemBg:gt,subMenuItemBg:bt,itemSelectedBg:Yt,activeBarHeight:kt,activeBarWidth:Mt,activeBarBorderWidth:ln,motionDurationSlow:zn,motionEaseInOut:Gn,motionEaseOut:Hn,itemPaddingInline:nr,motionDurationMid:Xn,itemHoverColor:qt,lineType:vn,colorSplit:Un,itemDisabledColor:Ln,dangerItemColor:yr,dangerItemHoverColor:kr,dangerItemSelectedColor:Dr,dangerItemActiveBg:Gr,dangerItemSelectedBg:Ma,itemHoverBg:Ja,itemActiveBg:Na,menuSubMenuBg:Da,horizontalItemSelectedColor:Di,horizontalItemSelectedBg:_a,horizontalItemBorderRadius:Vr,horizontalItemHoverBg:Ya,popupBg:ui}=sn;return{[`${Ht}-${rn}, ${Ht}-${rn} > ${Ht}`]:{color:Tt,background:gt,[`&${Ht}-root:focus-visible`]:Object.assign({},nt(sn)),[`${Ht}-item-group-title`]:{color:Qt},[`${Ht}-submenu-selected`]:{[`> ${Ht}-submenu-title`]:{color:St}},[`${Ht}-item-disabled, ${Ht}-submenu-disabled`]:{color:`${Ln} !important`},[`${Ht}-item:not(${Ht}-item-selected):not(${Ht}-submenu-selected)`]:{[`&:hover, > ${Ht}-submenu-title:hover`]:{color:qt}},[`&:not(${Ht}-horizontal)`]:{[`${Ht}-item:not(${Ht}-item-selected)`]:{"&:hover":{backgroundColor:Ja},"&:active":{backgroundColor:Na}},[`${Ht}-submenu-title`]:{"&:hover":{backgroundColor:Ja},"&:active":{backgroundColor:Na}}},[`${Ht}-item-danger`]:{color:yr,[`&${Ht}-item:hover`]:{[`&:not(${Ht}-item-selected):not(${Ht}-submenu-selected)`]:{color:kr}},[`&${Ht}-item:active`]:{background:Gr}},[`${Ht}-item a`]:{"&, &:hover":{color:"inherit"}},[`${Ht}-item-selected`]:{color:St,[`&${Ht}-item-danger`]:{color:Dr},"a, a:hover":{color:"inherit"}},[`& ${Ht}-item-selected`]:{backgroundColor:Yt,[`&${Ht}-item-danger`]:{backgroundColor:Ma}},[`${Ht}-item, ${Ht}-submenu-title`]:{[`&:not(${Ht}-item-disabled):focus-visible`]:Object.assign({},nt(sn))},[`&${Ht}-submenu > ${Ht}`]:{backgroundColor:Da},[`&${Ht}-popup > ${Ht}`]:{backgroundColor:ui},[`&${Ht}-horizontal`]:Object.assign(Object.assign({},rn==="dark"?{borderBottom:0}:{}),{[`> ${Ht}-item, > ${Ht}-submenu`]:{top:ln,marginTop:-ln,marginBottom:0,borderRadius:Vr,"&::after":{position:"absolute",insetInline:nr,bottom:0,borderBottom:`${kt}px solid transparent`,transition:`border-color ${zn} ${Gn}`,content:'""'},"&:hover, &-active, &-open":{background:Ya,"&::after":{borderBottomWidth:kt,borderBottomColor:Di}},"&-selected":{color:Di,backgroundColor:_a,"&:hover":{backgroundColor:_a},"&::after":{borderBottomWidth:kt,borderBottomColor:Di}}}}),[`&${Ht}-root`]:{[`&${Ht}-inline, &${Ht}-vertical`]:{borderInlineEnd:`${ln}px ${vn} ${Un}`}},[`&${Ht}-inline`]:{[`${Ht}-sub${Ht}-inline`]:{background:bt},[`${Ht}-item, ${Ht}-submenu-title`]:ln&&Mt?{width:`calc(100% + ${ln}px)`}:{},[`${Ht}-item`]:{position:"relative","&::after":{position:"absolute",insetBlock:0,insetInlineEnd:0,borderInlineEnd:`${Mt}px solid ${St}`,transform:"scaleY(0.0001)",opacity:0,transition:[`transform ${Xn} ${Hn}`,`opacity ${Xn} ${Hn}`].join(","),content:'""'},[`&${Ht}-item-danger`]:{"&::after":{borderInlineEndColor:Dr}}},[`${Ht}-selected, ${Ht}-item-selected`]:{"&::after":{transform:"scaleY(1)",opacity:1,transition:[`transform ${Xn} ${Gn}`,`opacity ${Xn} ${Gn}`].join(",")}}}}}};const ft=sn=>{const{componentCls:rn,itemHeight:Ht,itemMarginInline:Tt,padding:St,menuArrowSize:Qt,marginXS:gt,itemMarginBlock:bt}=sn,Yt=St+Qt+gt;return{[`${rn}-item`]:{position:"relative",overflow:"hidden"},[`${rn}-item, ${rn}-submenu-title`]:{height:Ht,lineHeight:`${Ht}px`,paddingInline:St,overflow:"hidden",textOverflow:"ellipsis",marginInline:Tt,marginBlock:bt,width:`calc(100% - ${Tt*2}px)`},[`> ${rn}-item,
|
|
|
> ${rn}-submenu > ${rn}-submenu-title`]:{height:Ht,lineHeight:`${Ht}px`},[`${rn}-item-group-list ${rn}-submenu-title,
|
|
|
${rn}-submenu-title`]:{paddingInlineEnd:Yt}}};var vt=sn=>{const{componentCls:rn,iconCls:Ht,itemHeight:Tt,colorTextLightSolid:St,dropdownWidth:Qt,controlHeightLG:gt,motionDurationMid:bt,motionEaseOut:Yt,paddingXL:kt,itemMarginInline:Mt,fontSizeLG:ln,motionDurationSlow:zn,paddingXS:Gn,boxShadowSecondary:Hn,collapsedWidth:nr,collapsedIconSize:Xn}=sn,qt={height:Tt,lineHeight:`${Tt}px`,listStylePosition:"inside",listStyleType:"disc"};return[{[rn]:{"&-inline, &-vertical":Object.assign({[`&${rn}-root`]:{boxShadow:"none"}},ft(sn))},[`${rn}-submenu-popup`]:{[`${rn}-vertical`]:Object.assign(Object.assign({},ft(sn)),{boxShadow:Hn})}},{[`${rn}-submenu-popup ${rn}-vertical${rn}-sub`]:{minWidth:Qt,maxHeight:`calc(100vh - ${gt*2.5}px)`,padding:"0",overflow:"hidden",borderInlineEnd:0,"&:not([class*='-active'])":{overflowX:"hidden",overflowY:"auto"}}},{[`${rn}-inline`]:{width:"100%",[`&${rn}-root`]:{[`${rn}-item, ${rn}-submenu-title`]:{display:"flex",alignItems:"center",transition:[`border-color ${zn}`,`background ${zn}`,`padding ${bt} ${Yt}`].join(","),[`> ${rn}-title-content`]:{flex:"auto",minWidth:0,overflow:"hidden",textOverflow:"ellipsis"},"> *":{flex:"none"}}},[`${rn}-sub${rn}-inline`]:{padding:0,border:0,borderRadius:0,boxShadow:"none",[`& > ${rn}-submenu > ${rn}-submenu-title`]:qt,[`& ${rn}-item-group-title`]:{paddingInlineStart:kt}},[`${rn}-item`]:qt}},{[`${rn}-inline-collapsed`]:{width:nr,[`&${rn}-root`]:{[`${rn}-item, ${rn}-submenu ${rn}-submenu-title`]:{[`> ${rn}-inline-collapsed-noicon`]:{fontSize:ln,textAlign:"center"}}},[`> ${rn}-item,
|
|
|
> ${rn}-item-group > ${rn}-item-group-list > ${rn}-item,
|
|
|
> ${rn}-item-group > ${rn}-item-group-list > ${rn}-submenu > ${rn}-submenu-title,
|
|
|
> ${rn}-submenu > ${rn}-submenu-title`]:{insetInlineStart:0,paddingInline:`calc(50% - ${ln/2}px - ${Mt}px)`,textOverflow:"clip",[`
|
|
|
${rn}-submenu-arrow,
|
|
|
${rn}-submenu-expand-icon
|
|
|
`]:{opacity:0},[`${rn}-item-icon, ${Ht}`]:{margin:0,fontSize:Xn,lineHeight:`${Tt}px`,"+ span":{display:"inline-block",opacity:0}}},[`${rn}-item-icon, ${Ht}`]:{display:"inline-block"},"&-tooltip":{pointerEvents:"none",[`${rn}-item-icon, ${Ht}`]:{display:"none"},"a, a:hover":{color:St}},[`${rn}-item-group-title`]:Object.assign(Object.assign({},Ue.vS),{paddingInline:Gn})}}]};const Ut=sn=>{const{componentCls:rn,motionDurationSlow:Ht,motionDurationMid:Tt,motionEaseInOut:St,motionEaseOut:Qt,iconCls:gt,iconSize:bt,iconMarginInlineEnd:Yt}=sn;return{[`${rn}-item, ${rn}-submenu-title`]:{position:"relative",display:"block",margin:0,whiteSpace:"nowrap",cursor:"pointer",transition:[`border-color ${Ht}`,`background ${Ht}`,`padding ${Ht} ${St}`].join(","),[`${rn}-item-icon, ${gt}`]:{minWidth:bt,fontSize:bt,transition:[`font-size ${Tt} ${Qt}`,`margin ${Ht} ${St}`,`color ${Ht}`].join(","),"+ span":{marginInlineStart:Yt,opacity:1,transition:[`opacity ${Ht} ${St}`,`margin ${Ht}`,`color ${Ht}`].join(",")}},[`${rn}-item-icon`]:Object.assign({},(0,Ue.Ro)()),[`&${rn}-item-only-child`]:{[`> ${gt}, > ${rn}-item-icon`]:{marginInlineEnd:0}}},[`${rn}-item-disabled, ${rn}-submenu-disabled`]:{background:"none !important",cursor:"not-allowed","&::after":{borderColor:"transparent !important"},a:{color:"inherit !important"},[`> ${rn}-submenu-title`]:{color:"inherit !important",cursor:"not-allowed"}}}},Zt=sn=>{const{componentCls:rn,motionDurationSlow:Ht,motionEaseInOut:Tt,borderRadius:St,menuArrowSize:Qt,menuArrowOffset:gt}=sn;return{[`${rn}-submenu`]:{"&-expand-icon, &-arrow":{position:"absolute",top:"50%",insetInlineEnd:sn.margin,width:Qt,color:"currentcolor",transform:"translateY(-50%)",transition:`transform ${Ht} ${Tt}, opacity ${Ht}`},"&-arrow":{"&::before, &::after":{position:"absolute",width:Qt*.6,height:Qt*.15,backgroundColor:"currentcolor",borderRadius:St,transition:[`background ${Ht} ${Tt}`,`transform ${Ht} ${Tt}`,`top ${Ht} ${Tt}`,`color ${Ht} ${Tt}`].join(","),content:'""'},"&::before":{transform:`rotate(45deg) translateY(-${gt})`},"&::after":{transform:`rotate(-45deg) translateY(${gt})`}}}}},en=sn=>{const{antCls:rn,componentCls:Ht,fontSize:Tt,motionDurationSlow:St,motionDurationMid:Qt,motionEaseInOut:gt,paddingXS:bt,padding:Yt,colorSplit:kt,lineWidth:Mt,zIndexPopup:ln,borderRadiusLG:zn,subMenuItemBorderRadius:Gn,menuArrowSize:Hn,menuArrowOffset:nr,lineType:Xn,menuPanelMaskInset:qt,groupTitleLineHeight:vn,groupTitleFontSize:Un}=sn;return[{"":{[`${Ht}`]:Object.assign(Object.assign({},(0,Ue.dF)()),{"&-hidden":{display:"none"}})},[`${Ht}-submenu-hidden`]:{display:"none"}},{[Ht]:Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},(0,Ue.Wf)(sn)),(0,Ue.dF)()),{marginBottom:0,paddingInlineStart:0,fontSize:Tt,lineHeight:0,listStyle:"none",outline:"none",transition:`width ${St} cubic-bezier(0.2, 0, 0, 1) 0s`,"ul, ol":{margin:0,padding:0,listStyle:"none"},"&-overflow":{display:"flex",[`${Ht}-item`]:{flex:"none"}},[`${Ht}-item, ${Ht}-submenu, ${Ht}-submenu-title`]:{borderRadius:sn.itemBorderRadius},[`${Ht}-item-group-title`]:{padding:`${bt}px ${Yt}px`,fontSize:Un,lineHeight:vn,transition:`all ${St}`},[`&-horizontal ${Ht}-submenu`]:{transition:[`border-color ${St} ${gt}`,`background ${St} ${gt}`].join(",")},[`${Ht}-submenu, ${Ht}-submenu-inline`]:{transition:[`border-color ${St} ${gt}`,`background ${St} ${gt}`,`padding ${Qt} ${gt}`].join(",")},[`${Ht}-submenu ${Ht}-sub`]:{cursor:"initial",transition:[`background ${St} ${gt}`,`padding ${St} ${gt}`].join(",")},[`${Ht}-title-content`]:{transition:`color ${St}`},[`${Ht}-item a`]:{"&::before":{position:"absolute",inset:0,backgroundColor:"transparent",content:'""'}},[`${Ht}-item-divider`]:{overflow:"hidden",lineHeight:0,borderColor:kt,borderStyle:Xn,borderWidth:0,borderTopWidth:Mt,marginBlock:Mt,padding:0,"&-dashed":{borderStyle:"dashed"}}}),Ut(sn)),{[`${Ht}-item-group`]:{[`${Ht}-item-group-list`]:{margin:0,padding:0,[`${Ht}-item, ${Ht}-submenu-title`]:{paddingInline:`${Tt*2}px ${Yt}px`}}},"&-submenu":{"&-popup":{position:"absolute",zIndex:ln,borderRadius:zn,boxShadow:"none",transformOrigin:"0 0",[`&${Ht}-submenu`]:{background:"transparent"},"&::before":{position:"absolute",inset:`${qt}px 0 0`,zIndex:-1,width:"100%",height:"100%",opacity:0,content:'""'}},"&-placement-rightTop::before":{top:0,insetInlineStart:qt},"\n &-placement-leftTop,\n &-placement-bottomRight,\n ":{transformOrigin:"100% 0"},"\n &-placement-leftBottom,\n &-placement-topRight,\n ":{transformOrigin:"100% 100%"},"\n &-placement-rightBottom,\n &-placement-topLeft,\n ":{transformOrigin:"0 100%"},"\n &-placement-bottomLeft,\n &-placement-rightTop,\n ":{transformOrigin:"0 0"},"\n &-placement-leftTop,\n &-placement-leftBottom\n ":{paddingInlineEnd:sn.paddingXS},"\n &-placement-rightTop,\n &-placement-rightBottom\n ":{paddingInlineStart:sn.paddingXS},"\n &-placement-topRight,\n &-placement-topLeft\n ":{paddingBottom:sn.paddingXS},"\n &-placement-bottomRight,\n &-placement-bottomLeft\n ":{paddingTop:sn.paddingXS},[`> ${Ht}`]:Object.assign(Object.assign(Object.assign({borderRadius:zn},Ut(sn)),Zt(sn)),{[`${Ht}-item, ${Ht}-submenu > ${Ht}-submenu-title`]:{borderRadius:Gn},[`${Ht}-submenu-title::after`]:{transition:`transform ${St} ${gt}`}})}}),Zt(sn)),{[`&-inline-collapsed ${Ht}-submenu-arrow,
|
|
|
&-inline ${Ht}-submenu-arrow`]:{"&::before":{transform:`rotate(-45deg) translateX(${nr})`},"&::after":{transform:`rotate(45deg) translateX(-${nr})`}},[`${Ht}-submenu-open${Ht}-submenu-inline > ${Ht}-submenu-title > ${Ht}-submenu-arrow`]:{transform:`translateY(-${Hn*.2}px)`,"&::after":{transform:`rotate(-45deg) translateX(-${nr})`},"&::before":{transform:`rotate(45deg) translateX(${nr})`}}})},{[`${rn}-layout-header`]:{[Ht]:{lineHeight:"inherit"}}}]};var mn=(sn,rn)=>(0,rt.Z)("Menu",Tt=>{if(rn===!1)return[];const{colorBgElevated:St,colorPrimary:Qt,colorTextLightSolid:gt,controlHeightLG:bt,fontSize:Yt,darkItemColor:kt,darkDangerItemColor:Mt,darkItemBg:ln,darkSubMenuItemBg:zn,darkItemSelectedColor:Gn,darkItemSelectedBg:Hn,darkDangerItemSelectedBg:nr,darkItemHoverBg:Xn,darkGroupTitleColor:qt,darkItemHoverColor:vn,darkItemDisabledColor:Un,darkDangerItemHoverColor:Ln,darkDangerItemSelectedColor:yr,darkDangerItemActiveBg:kr}=Tt,Dr=Yt/7*5,Gr=(0,$e.TS)(Tt,{menuArrowSize:Dr,menuHorizontalHeight:bt*1.15,menuArrowOffset:`${Dr*.25}px`,menuPanelMaskInset:-7,menuSubMenuBg:St}),Ma=(0,$e.TS)(Gr,{itemColor:kt,itemHoverColor:vn,groupTitleColor:qt,itemSelectedColor:Gn,itemBg:ln,popupBg:ln,subMenuItemBg:zn,itemActiveBg:"transparent",itemSelectedBg:Hn,activeBarHeight:0,activeBarBorderWidth:0,itemHoverBg:Xn,itemDisabledColor:Un,dangerItemColor:Mt,dangerItemHoverColor:Ln,dangerItemSelectedColor:yr,dangerItemActiveBg:kr,dangerItemSelectedBg:nr,menuSubMenuBg:zn,horizontalItemSelectedColor:gt,horizontalItemSelectedBg:Qt});return[en(Gr),ot(Gr),vt(Gr),yt(Gr,"light"),yt(Ma,"dark"),ut(Gr),(0,Ge.Z)(Gr),(0,Je.oN)(Gr,"slide-up"),(0,Je.oN)(Gr,"slide-down"),(0,Qe._y)(Gr,"zoom-big")]},Tt=>{const{colorPrimary:St,colorError:Qt,colorTextDisabled:gt,colorErrorBg:bt,colorText:Yt,colorTextDescription:kt,colorBgContainer:Mt,colorFillAlter:ln,colorFillContent:zn,lineWidth:Gn,lineWidthBold:Hn,controlItemBgActive:nr,colorBgTextHover:Xn,controlHeightLG:qt,lineHeight:vn,colorBgElevated:Un,marginXXS:Ln,padding:yr,fontSize:kr,controlHeightSM:Dr,fontSizeLG:Gr,colorTextLightSolid:Ma,colorErrorHover:Ja}=Tt,Na=new Re.C(Ma).setAlpha(.65).toRgbString();return{dropdownWidth:160,zIndexPopup:Tt.zIndexPopupBase+50,radiusItem:Tt.borderRadiusLG,itemBorderRadius:Tt.borderRadiusLG,radiusSubMenuItem:Tt.borderRadiusSM,subMenuItemBorderRadius:Tt.borderRadiusSM,colorItemText:Yt,itemColor:Yt,colorItemTextHover:Yt,itemHoverColor:Yt,colorItemTextHoverHorizontal:St,horizontalItemHoverColor:St,colorGroupTitle:kt,groupTitleColor:kt,colorItemTextSelected:St,itemSelectedColor:St,colorItemTextSelectedHorizontal:St,horizontalItemSelectedColor:St,colorItemBg:Mt,itemBg:Mt,colorItemBgHover:Xn,itemHoverBg:Xn,colorItemBgActive:zn,itemActiveBg:nr,colorSubItemBg:ln,subMenuItemBg:ln,colorItemBgSelected:nr,itemSelectedBg:nr,colorItemBgSelectedHorizontal:"transparent",horizontalItemSelectedBg:"transparent",colorActiveBarWidth:0,activeBarWidth:0,colorActiveBarHeight:Hn,activeBarHeight:Hn,colorActiveBarBorderSize:Gn,activeBarBorderWidth:Gn,colorItemTextDisabled:gt,itemDisabledColor:gt,colorDangerItemText:Qt,dangerItemColor:Qt,colorDangerItemTextHover:Qt,dangerItemHoverColor:Qt,colorDangerItemTextSelected:Qt,dangerItemSelectedColor:Qt,colorDangerItemBgActive:bt,dangerItemActiveBg:bt,colorDangerItemBgSelected:bt,dangerItemSelectedBg:bt,itemMarginInline:Tt.marginXXS,horizontalItemBorderRadius:0,horizontalItemHoverBg:"transparent",itemHeight:qt,groupTitleLineHeight:vn,collapsedWidth:qt*2,popupBg:Un,itemMarginBlock:Ln,itemPaddingInline:yr,horizontalLineHeight:`${qt*1.15}px`,iconSize:kr,iconMarginInlineEnd:Dr-kr,collapsedIconSize:Gr,groupTitleFontSize:kr,darkItemDisabledColor:new Re.C(Ma).setAlpha(.25).toRgbString(),darkItemColor:Na,darkDangerItemColor:Qt,darkItemBg:"#001529",darkSubMenuItemBg:"#000c17",darkItemSelectedColor:Ma,darkItemSelectedBg:St,darkDangerItemSelectedBg:Qt,darkItemHoverBg:"transparent",darkGroupTitleColor:Na,darkItemHoverColor:Ma,darkDangerItemHoverColor:Ja,darkDangerItemSelectedColor:Ma,darkDangerItemActiveBg:Qt}},{deprecatedTokens:[["colorGroupTitle","groupTitleColor"],["radiusItem","itemBorderRadius"],["radiusSubMenuItem","subMenuItemBorderRadius"],["colorItemText","itemColor"],["colorItemTextHover","itemHoverColor"],["colorItemTextHoverHorizontal","horizontalItemHoverColor"],["colorItemTextSelected","itemSelectedColor"],["colorItemTextSelectedHorizontal","horizontalItemSelectedColor"],["colorItemTextDisabled","itemDisabledColor"],["colorDangerItemText","dangerItemColor"],["colorDangerItemTextHover","dangerItemHoverColor"],["colorDangerItemTextSelected","dangerItemSelectedColor"],["colorDangerItemBgActive","dangerItemActiveBg"],["colorDangerItemBgSelected","dangerItemSelectedBg"],["colorItemBg","itemBg"],["colorItemBgHover","itemHoverBg"],["colorSubItemBg","subMenuItemBg"],["colorItemBgActive","itemActiveBg"],["colorItemBgSelectedHorizontal","horizontalItemSelectedBg"],["colorActiveBarWidth","activeBarWidth"],["colorActiveBarHeight","activeBarHeight"],["colorActiveBarBorderSize","activeBarBorderWidth"],["colorItemBgSelected","itemSelectedBg"]]})(sn),Bt=function(sn,rn){var Ht={};for(var Tt in sn)Object.prototype.hasOwnProperty.call(sn,Tt)&&rn.indexOf(Tt)<0&&(Ht[Tt]=sn[Tt]);if(sn!=null&&typeof Object.getOwnPropertySymbols=="function")for(var St=0,Tt=Object.getOwnPropertySymbols(sn);St<Tt.length;St++)rn.indexOf(Tt[St])<0&&Object.prototype.propertyIsEnumerable.call(sn,Tt[St])&&(Ht[Tt[St]]=sn[Tt[St]]);return Ht},on=(0,He.forwardRef)((sn,rn)=>{var Ht,Tt;const St=He.useContext(me.Z),Qt=St||{},{getPrefixCls:gt,getPopupContainer:bt,direction:Yt,menu:kt}=He.useContext(Me.E_),Mt=gt(),{prefixCls:ln,className:zn,style:Gn,theme:Hn="light",expandIcon:nr,_internalDisableMenuItemTitleTooltip:Xn,inlineCollapsed:qt,siderCollapsed:vn,items:Un,children:Ln,rootClassName:yr,mode:kr,selectable:Dr,onClick:Gr,overflowedIndicatorPopupClassName:Ma}=sn,Ja=Bt(sn,["prefixCls","className","style","theme","expandIcon","_internalDisableMenuItemTitleTooltip","inlineCollapsed","siderCollapsed","items","children","rootClassName","mode","selectable","onClick","overflowedIndicatorPopupClassName"]),Na=(0,pe.Z)(Ja,["collapsedWidth"]),Da=Fe(Un)||Ln;(Ht=Qt.validator)===null||Ht===void 0||Ht.call(Qt,{mode:kr});const Di=(0,ie.useEvent)(function(){var _r;Gr==null||Gr.apply(void 0,arguments),(_r=Qt.onClick)===null||_r===void 0||_r.call(Qt)}),_a=Qt.mode||kr,Vr=Dr!=null?Dr:Qt.selectable,Ya=He.useMemo(()=>vn!==void 0?vn:qt,[qt,vn]),ui={horizontal:{motionName:`${Mt}-slide-up`},inline:(0,ue.Z)(Mt),other:{motionName:`${Mt}-zoom-big`}},mr=gt("menu",ln||Qt.prefixCls),[Er,ba]=mn(mr,!St),Fn=_e()(`${mr}-${Hn}`,kt==null?void 0:kt.className,zn);let gr;if(typeof nr=="function")gr=nr;else if(nr===null||nr===!1)gr=null;else if(Qt.expandIcon===null||Qt.expandIcon===!1)gr=null;else{const _r=nr!=null?nr:Qt.expandIcon;gr=(0,Se.Tm)(_r,{className:_e()(`${mr}-submenu-expand-icon`,(0,Se.l$)(_r)?(Tt=_r.props)===null||Tt===void 0?void 0:Tt.className:"")})}const br=He.useMemo(()=>({prefixCls:mr,inlineCollapsed:Ya||!1,direction:Yt,firstLevel:!0,theme:Hn,mode:_a,disableMenuItemTitleTooltip:Xn}),[mr,Ya,Yt,Xn,Hn]);return Er(He.createElement(me.Z.Provider,{value:null},He.createElement(te.Provider,{value:br},He.createElement(Oe.ZP,Object.assign({getPopupContainer:bt,overflowedIndicator:He.createElement(he.Z,null),overflowedIndicatorPopupClassName:_e()(mr,`${mr}-${Hn}`,Ma),mode:_a,selectable:Vr,onClick:Di},Na,{inlineCollapsed:Ya,style:Object.assign(Object.assign({},kt==null?void 0:kt.style),Gn),className:Fn,prefixCls:mr,direction:Yt,defaultMotions:ui,expandIcon:gr,ref:rn,rootClassName:_e()(yr,ba)}),Da))))});const Mn=(0,He.forwardRef)((sn,rn)=>{const Ht=(0,He.useRef)(null),Tt=He.useContext(Ne.D);return(0,He.useImperativeHandle)(rn,()=>({menu:Ht.current,focus:St=>{var Qt;(Qt=Ht.current)===null||Qt===void 0||Qt.focus(St)}})),He.createElement(on,Object.assign({ref:Ht},sn,Tt))});Mn.Item=le,Mn.SubMenu=fe,Mn.Divider=Pe,Mn.ItemGroup=Oe.BW;var Dn=Mn},58421:function(At,It,Te){"use strict";Te.d(It,{Z:function(){return Qt}});var Oe=Te(54476),He=Te(59301),Ne={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M272.9 512l265.4-339.1c4.1-5.2.4-12.9-6.3-12.9h-77.3c-4.9 0-9.6 2.3-12.6 6.1L186.8 492.3a31.99 31.99 0 000 39.5l255.3 326.1c3 3.9 7.7 6.1 12.6 6.1H532c6.7 0 10.4-7.7 6.3-12.9L272.9 512zm304 0l265.4-339.1c4.1-5.2.4-12.9-6.3-12.9h-77.3c-4.9 0-9.6 2.3-12.6 6.1L490.8 492.3a31.99 31.99 0 000 39.5l255.3 326.1c3 3.9 7.7 6.1 12.6 6.1H836c6.7 0 10.4-7.7 6.3-12.9L576.9 512z"}}]},name:"double-left",theme:"outlined"},be=Ne,_e=Te(7657),Me=function(bt,Yt){return He.createElement(_e.Z,(0,Oe.Z)({},bt,{ref:Yt,icon:be}))},ve=He.forwardRef(Me),Ee=ve,Pe=Te(49198),xe=Te(33853),pe=Te(38819),Ae=Te(92310),Se=Te.n(Ae),ce=Te(20068),te=Te(33885),ne=Te(67732),le=Te(83652),se=Te(42403),fe=Te(158),he=Te(26112),ie={ZERO:48,NINE:57,NUMPAD_ZERO:96,NUMPAD_NINE:105,BACKSPACE:8,DELETE:46,ENTER:13,ARROW_UP:38,ARROW_DOWN:40},ue=ie,me=Te(91735),Ce=function(gt){(0,se.Z)(Yt,gt);var bt=(0,fe.Z)(Yt);function Yt(){var kt;(0,ne.Z)(this,Yt);for(var Mt=arguments.length,ln=new Array(Mt),zn=0;zn<Mt;zn++)ln[zn]=arguments[zn];return kt=bt.call.apply(bt,[this].concat(ln)),kt.state={goInputText:""},kt.getValidValue=function(){var Gn=kt.state.goInputText;return!Gn||Number.isNaN(Gn)?void 0:Number(Gn)},kt.buildOptionText=function(Gn){return"".concat(Gn," ").concat(kt.props.locale.items_per_page)},kt.changeSize=function(Gn){kt.props.changeSize(Number(Gn))},kt.handleChange=function(Gn){kt.setState({goInputText:Gn.target.value})},kt.handleBlur=function(Gn){var Hn=kt.props,nr=Hn.goButton,Xn=Hn.quickGo,qt=Hn.rootPrefixCls,vn=kt.state.goInputText;nr||vn===""||(kt.setState({goInputText:""}),!(Gn.relatedTarget&&(Gn.relatedTarget.className.indexOf("".concat(qt,"-item-link"))>=0||Gn.relatedTarget.className.indexOf("".concat(qt,"-item"))>=0))&&Xn(kt.getValidValue()))},kt.go=function(Gn){var Hn=kt.state.goInputText;Hn!==""&&(Gn.keyCode===ue.ENTER||Gn.type==="click")&&(kt.setState({goInputText:""}),kt.props.quickGo(kt.getValidValue()))},kt}return(0,le.Z)(Yt,[{key:"getPageSizeOptions",value:function(){var Mt=this.props,ln=Mt.pageSize,zn=Mt.pageSizeOptions;return zn.some(function(Gn){return Gn.toString()===ln.toString()})?zn:zn.concat([ln.toString()]).sort(function(Gn,Hn){var nr=Number.isNaN(Number(Gn))?0:Number(Gn),Xn=Number.isNaN(Number(Hn))?0:Number(Hn);return nr-Xn})}},{key:"render",value:function(){var Mt=this,ln=this.props,zn=ln.pageSize,Gn=ln.locale,Hn=ln.rootPrefixCls,nr=ln.changeSize,Xn=ln.quickGo,qt=ln.goButton,vn=ln.selectComponentClass,Un=ln.buildOptionText,Ln=ln.selectPrefixCls,yr=ln.disabled,kr=this.state.goInputText,Dr="".concat(Hn,"-options"),Gr=vn,Ma=null,Ja=null,Na=null;if(!nr&&!Xn)return null;var Da=this.getPageSizeOptions();if(nr&&Gr){var Di=Da.map(function(_a,Vr){return He.createElement(Gr.Option,{key:Vr,value:_a.toString()},(Un||Mt.buildOptionText)(_a))});Ma=He.createElement(Gr,{disabled:yr,prefixCls:Ln,showSearch:!1,className:"".concat(Dr,"-size-changer"),optionLabelProp:"children",popupMatchSelectWidth:!1,value:(zn||Da[0]).toString(),onChange:this.changeSize,getPopupContainer:function(Vr){return Vr.parentNode},"aria-label":Gn.page_size,defaultOpen:!1},Di)}return Xn&&(qt&&(Na=typeof qt=="boolean"?He.createElement("button",{type:"button",onClick:this.go,onKeyUp:this.go,disabled:yr,className:"".concat(Dr,"-quick-jumper-button")},Gn.jump_to_confirm):He.createElement("span",{onClick:this.go,onKeyUp:this.go},qt)),Ja=He.createElement("div",{className:"".concat(Dr,"-quick-jumper")},Gn.jump_to,He.createElement("input",{disabled:yr,type:"text",value:kr,onChange:this.handleChange,onKeyUp:this.go,onBlur:this.handleBlur,"aria-label":Gn.page}),Gn.page,Na)),He.createElement("li",{className:"".concat(Dr)},Ma,Ja)}}]),Yt}(He.Component);Ce.defaultProps={pageSizeOptions:["10","20","50","100"]};var Ie=Ce,Fe=function(bt){var Yt,kt=bt.rootPrefixCls,Mt=bt.page,ln=bt.active,zn=bt.className,Gn=bt.showTitle,Hn=bt.onClick,nr=bt.onKeyPress,Xn=bt.itemRender,qt="".concat(kt,"-item"),vn=Se()(qt,"".concat(qt,"-").concat(Mt),(Yt={},(0,ce.Z)(Yt,"".concat(qt,"-active"),ln),(0,ce.Z)(Yt,"".concat(qt,"-disabled"),!Mt),(0,ce.Z)(Yt,bt.className,zn),Yt)),Un=function(){Hn(Mt)},Ln=function(Dr){nr(Dr,Hn,Mt)},yr=Xn(Mt,"page",He.createElement("a",{rel:"nofollow"},Mt));return yr?He.createElement("li",{title:Gn?Mt.toString():null,className:vn,onClick:Un,onKeyPress:Ln,tabIndex:0},yr):null},Re=Fe;function Ue(){}function Ge(gt){var bt=Number(gt);return typeof bt=="number"&&!Number.isNaN(bt)&&isFinite(bt)&&Math.floor(bt)===bt}var Je=function(bt,Yt,kt){return kt};function Qe(gt,bt,Yt){var kt=typeof gt=="undefined"?bt.pageSize:gt;return Math.floor((Yt.total-1)/kt)+1}var rt=function(gt){(0,se.Z)(Yt,gt);var bt=(0,fe.Z)(Yt);function Yt(kt){var Mt;(0,ne.Z)(this,Yt),Mt=bt.call(this,kt),Mt.paginationNode=He.createRef(),Mt.getJumpPrevPage=function(){return Math.max(1,Mt.state.current-(Mt.props.showLessItems?3:5))},Mt.getJumpNextPage=function(){return Math.min(Qe(void 0,Mt.state,Mt.props),Mt.state.current+(Mt.props.showLessItems?3:5))},Mt.getItemIcon=function(nr,Xn){var qt=Mt.props.prefixCls,vn=nr||He.createElement("button",{type:"button","aria-label":Xn,className:"".concat(qt,"-item-link")});return typeof nr=="function"&&(vn=He.createElement(nr,(0,te.Z)({},Mt.props))),vn},Mt.isValid=function(nr){var Xn=Mt.props.total;return Ge(nr)&&nr!==Mt.state.current&&Ge(Xn)&&Xn>0},Mt.shouldDisplayQuickJumper=function(){var nr=Mt.props,Xn=nr.showQuickJumper,qt=nr.total,vn=Mt.state.pageSize;return qt<=vn?!1:Xn},Mt.handleKeyDown=function(nr){(nr.keyCode===ue.ARROW_UP||nr.keyCode===ue.ARROW_DOWN)&&nr.preventDefault()},Mt.handleKeyUp=function(nr){var Xn=Mt.getValidValue(nr),qt=Mt.state.currentInputValue;Xn!==qt&&Mt.setState({currentInputValue:Xn}),nr.keyCode===ue.ENTER?Mt.handleChange(Xn):nr.keyCode===ue.ARROW_UP?Mt.handleChange(Xn-1):nr.keyCode===ue.ARROW_DOWN&&Mt.handleChange(Xn+1)},Mt.handleBlur=function(nr){var Xn=Mt.getValidValue(nr);Mt.handleChange(Xn)},Mt.changePageSize=function(nr){var Xn=Mt.state.current,qt=Qe(nr,Mt.state,Mt.props);Xn=Xn>qt?qt:Xn,qt===0&&(Xn=Mt.state.current),typeof nr=="number"&&("pageSize"in Mt.props||Mt.setState({pageSize:nr}),"current"in Mt.props||Mt.setState({current:Xn,currentInputValue:Xn})),Mt.props.onShowSizeChange(Xn,nr),"onChange"in Mt.props&&Mt.props.onChange&&Mt.props.onChange(Xn,nr)},Mt.handleChange=function(nr){var Xn=Mt.props,qt=Xn.disabled,vn=Xn.onChange,Un=Mt.state,Ln=Un.pageSize,yr=Un.current,kr=Un.currentInputValue;if(Mt.isValid(nr)&&!qt){var Dr=Qe(void 0,Mt.state,Mt.props),Gr=nr;return nr>Dr?Gr=Dr:nr<1&&(Gr=1),"current"in Mt.props||Mt.setState({current:Gr}),Gr!==kr&&Mt.setState({currentInputValue:Gr}),vn(Gr,Ln),Gr}return yr},Mt.prev=function(){Mt.hasPrev()&&Mt.handleChange(Mt.state.current-1)},Mt.next=function(){Mt.hasNext()&&Mt.handleChange(Mt.state.current+1)},Mt.jumpPrev=function(){Mt.handleChange(Mt.getJumpPrevPage())},Mt.jumpNext=function(){Mt.handleChange(Mt.getJumpNextPage())},Mt.hasPrev=function(){return Mt.state.current>1},Mt.hasNext=function(){return Mt.state.current<Qe(void 0,Mt.state,Mt.props)},Mt.runIfEnter=function(nr,Xn){if(nr.key==="Enter"||nr.charCode===13){for(var qt=arguments.length,vn=new Array(qt>2?qt-2:0),Un=2;Un<qt;Un++)vn[Un-2]=arguments[Un];Xn.apply(void 0,vn)}},Mt.runIfEnterPrev=function(nr){Mt.runIfEnter(nr,Mt.prev)},Mt.runIfEnterNext=function(nr){Mt.runIfEnter(nr,Mt.next)},Mt.runIfEnterJumpPrev=function(nr){Mt.runIfEnter(nr,Mt.jumpPrev)},Mt.runIfEnterJumpNext=function(nr){Mt.runIfEnter(nr,Mt.jumpNext)},Mt.handleGoTO=function(nr){(nr.keyCode===ue.ENTER||nr.type==="click")&&Mt.handleChange(Mt.state.currentInputValue)},Mt.renderPrev=function(nr){var Xn=Mt.props,qt=Xn.prevIcon,vn=Xn.itemRender,Un=vn(nr,"prev",Mt.getItemIcon(qt,"prev page")),Ln=!Mt.hasPrev();return(0,He.isValidElement)(Un)?(0,He.cloneElement)(Un,{disabled:Ln}):Un},Mt.renderNext=function(nr){var Xn=Mt.props,qt=Xn.nextIcon,vn=Xn.itemRender,Un=vn(nr,"next",Mt.getItemIcon(qt,"next page")),Ln=!Mt.hasNext();return(0,He.isValidElement)(Un)?(0,He.cloneElement)(Un,{disabled:Ln}):Un};var ln=kt.onChange!==Ue,zn="current"in kt;zn&&!ln&&console.warn("Warning: You provided a `current` prop to a Pagination component without an `onChange` handler. This will render a read-only component.");var Gn=kt.defaultCurrent;"current"in kt&&(Gn=kt.current);var Hn=kt.defaultPageSize;return"pageSize"in kt&&(Hn=kt.pageSize),Gn=Math.min(Gn,Qe(Hn,void 0,kt)),Mt.state={current:Gn,currentInputValue:Gn,pageSize:Hn},Mt}return(0,le.Z)(Yt,[{key:"componentDidUpdate",value:function(Mt,ln){var zn=this.props.prefixCls;if(ln.current!==this.state.current&&this.paginationNode.current){var Gn=this.paginationNode.current.querySelector(".".concat(zn,"-item-").concat(ln.current));if(Gn&&document.activeElement===Gn){var Hn;Gn==null||(Hn=Gn.blur)===null||Hn===void 0||Hn.call(Gn)}}}},{key:"getValidValue",value:function(Mt){var ln=Mt.target.value,zn=Qe(void 0,this.state,this.props),Gn=this.state.currentInputValue,Hn;return ln===""?Hn=ln:Number.isNaN(Number(ln))?Hn=Gn:ln>=zn?Hn=zn:Hn=Number(ln),Hn}},{key:"getShowSizeChanger",value:function(){var Mt=this.props,ln=Mt.showSizeChanger,zn=Mt.total,Gn=Mt.totalBoundaryShowSizeChanger;return typeof ln!="undefined"?ln:zn>Gn}},{key:"render",value:function(){var Mt=this.props,ln=Mt.prefixCls,zn=Mt.className,Gn=Mt.style,Hn=Mt.disabled,nr=Mt.hideOnSinglePage,Xn=Mt.total,qt=Mt.locale,vn=Mt.showQuickJumper,Un=Mt.showLessItems,Ln=Mt.showTitle,yr=Mt.showTotal,kr=Mt.simple,Dr=Mt.itemRender,Gr=Mt.showPrevNextJumpers,Ma=Mt.jumpPrevIcon,Ja=Mt.jumpNextIcon,Na=Mt.selectComponentClass,Da=Mt.selectPrefixCls,Di=Mt.pageSizeOptions,_a=this.state,Vr=_a.current,Ya=_a.pageSize,ui=_a.currentInputValue;if(nr===!0&&Xn<=Ya)return null;var mr=Qe(void 0,this.state,this.props),Er=[],ba=null,Fn=null,gr=null,br=null,_r=null,ha=vn&&vn.goButton,Ct=Un?1:2,we=Vr-1>0?Vr-1:0,Be=Vr+1<mr?Vr+1:mr,Le=(0,he.Z)(this.props,{aria:!0,data:!0}),je=yr&&He.createElement("li",{className:"".concat(ln,"-total-text")},yr(Xn,[Xn===0?0:(Vr-1)*Ya+1,Vr*Ya>Xn?Xn:Vr*Ya]));if(kr){ha&&(typeof ha=="boolean"?_r=He.createElement("button",{type:"button",onClick:this.handleGoTO,onKeyUp:this.handleGoTO},qt.jump_to_confirm):_r=He.createElement("span",{onClick:this.handleGoTO,onKeyUp:this.handleGoTO},ha),_r=He.createElement("li",{title:Ln?"".concat(qt.jump_to).concat(Vr,"/").concat(mr):null,className:"".concat(ln,"-simple-pager")},_r));var Xe=this.renderPrev(we);return He.createElement("ul",(0,Oe.Z)({className:Se()(ln,"".concat(ln,"-simple"),(0,ce.Z)({},"".concat(ln,"-disabled"),Hn),zn),style:Gn,ref:this.paginationNode},Le),je,Xe?He.createElement("li",{title:Ln?qt.prev_page:null,onClick:this.prev,tabIndex:this.hasPrev()?0:null,onKeyPress:this.runIfEnterPrev,className:Se()("".concat(ln,"-prev"),(0,ce.Z)({},"".concat(ln,"-disabled"),!this.hasPrev())),"aria-disabled":!this.hasPrev()},Xe):null,He.createElement("li",{title:Ln?"".concat(Vr,"/").concat(mr):null,className:"".concat(ln,"-simple-pager")},He.createElement("input",{type:"text",value:ui,disabled:Hn,onKeyDown:this.handleKeyDown,onKeyUp:this.handleKeyUp,onChange:this.handleKeyUp,onBlur:this.handleBlur,size:3}),He.createElement("span",{className:"".concat(ln,"-slash")},"/"),mr),He.createElement("li",{title:Ln?qt.next_page:null,onClick:this.next,tabIndex:this.hasPrev()?0:null,onKeyPress:this.runIfEnterNext,className:Se()("".concat(ln,"-next"),(0,ce.Z)({},"".concat(ln,"-disabled"),!this.hasNext())),"aria-disabled":!this.hasNext()},this.renderNext(Be)),_r)}if(mr<=3+Ct*2){var Et={locale:qt,rootPrefixCls:ln,onClick:this.handleChange,onKeyPress:this.runIfEnter,showTitle:Ln,itemRender:Dr};mr||Er.push(He.createElement(Re,(0,Oe.Z)({},Et,{key:"noPager",page:1,className:"".concat(ln,"-item-disabled")})));for(var xt=1;xt<=mr;xt+=1){var Jt=Vr===xt;Er.push(He.createElement(Re,(0,Oe.Z)({},Et,{key:xt,page:xt,active:Jt})))}}else{var Vt=Un?qt.prev_3:qt.prev_5,fn=Un?qt.next_3:qt.next_5,dn=Dr(this.getJumpPrevPage(),"jump-prev",this.getItemIcon(Ma,"prev page")),Vn=Dr(this.getJumpNextPage(),"jump-next",this.getItemIcon(Ja,"next page"));Gr&&(ba=dn?He.createElement("li",{title:Ln?Vt:null,key:"prev",onClick:this.jumpPrev,tabIndex:0,onKeyPress:this.runIfEnterJumpPrev,className:Se()("".concat(ln,"-jump-prev"),(0,ce.Z)({},"".concat(ln,"-jump-prev-custom-icon"),!!Ma))},dn):null,Fn=Vn?He.createElement("li",{title:Ln?fn:null,key:"next",tabIndex:0,onClick:this.jumpNext,onKeyPress:this.runIfEnterJumpNext,className:Se()("".concat(ln,"-jump-next"),(0,ce.Z)({},"".concat(ln,"-jump-next-custom-icon"),!!Ja))},Vn):null),br=He.createElement(Re,{locale:qt,last:!0,rootPrefixCls:ln,onClick:this.handleChange,onKeyPress:this.runIfEnter,key:mr,page:mr,active:!1,showTitle:Ln,itemRender:Dr}),gr=He.createElement(Re,{locale:qt,rootPrefixCls:ln,onClick:this.handleChange,onKeyPress:this.runIfEnter,key:1,page:1,active:!1,showTitle:Ln,itemRender:Dr});var Pn=Math.max(1,Vr-Ct),Jn=Math.min(Vr+Ct,mr);Vr-1<=Ct&&(Jn=1+Ct*2),mr-Vr<=Ct&&(Pn=mr-Ct*2);for(var $n=Pn;$n<=Jn;$n+=1){var hr=Vr===$n;Er.push(He.createElement(Re,{locale:qt,rootPrefixCls:ln,onClick:this.handleChange,onKeyPress:this.runIfEnter,key:$n,page:$n,active:hr,showTitle:Ln,itemRender:Dr}))}Vr-1>=Ct*2&&Vr!==3&&(Er[0]=(0,He.cloneElement)(Er[0],{className:"".concat(ln,"-item-after-jump-prev")}),Er.unshift(ba)),mr-Vr>=Ct*2&&Vr!==mr-2&&(Er[Er.length-1]=(0,He.cloneElement)(Er[Er.length-1],{className:"".concat(ln,"-item-before-jump-next")}),Er.push(Fn)),Pn!==1&&Er.unshift(gr),Jn!==mr&&Er.push(br)}var hn=!this.hasPrev()||!mr,an=!this.hasNext()||!mr,In=this.renderPrev(we),jn=this.renderNext(Be);return He.createElement("ul",(0,Oe.Z)({className:Se()(ln,zn,(0,ce.Z)({},"".concat(ln,"-disabled"),Hn)),style:Gn,ref:this.paginationNode},Le),je,In?He.createElement("li",{title:Ln?qt.prev_page:null,onClick:this.prev,tabIndex:hn?null:0,onKeyPress:this.runIfEnterPrev,className:Se()("".concat(ln,"-prev"),(0,ce.Z)({},"".concat(ln,"-disabled"),hn)),"aria-disabled":hn},In):null,Er,jn?He.createElement("li",{title:Ln?qt.next_page:null,onClick:this.next,tabIndex:an?null:0,onKeyPress:this.runIfEnterNext,className:Se()("".concat(ln,"-next"),(0,ce.Z)({},"".concat(ln,"-disabled"),an)),"aria-disabled":an},jn):null,He.createElement(Ie,{disabled:Hn,locale:qt,rootPrefixCls:ln,selectComponentClass:Na,selectPrefixCls:Da,changeSize:this.getShowSizeChanger()?this.changePageSize:null,current:Vr,pageSize:Ya,pageSizeOptions:Di,quickGo:this.shouldDisplayQuickJumper()?this.handleChange:null,goButton:ha}))}}],[{key:"getDerivedStateFromProps",value:function(Mt,ln){var zn={};if("current"in Mt&&(zn.current=Mt.current,Mt.current!==ln.current&&(zn.currentInputValue=zn.current)),"pageSize"in Mt&&Mt.pageSize!==ln.pageSize){var Gn=ln.current,Hn=Qe(Mt.pageSize,ln,Mt);Gn=Gn>Hn?Hn:Gn,"current"in Mt||(zn.current=Gn,zn.currentInputValue=Gn),zn.pageSize=Mt.pageSize}return zn}}]),Yt}(He.Component);rt.defaultProps={defaultCurrent:1,total:0,defaultPageSize:10,onChange:Ue,className:"",selectPrefixCls:"rc-select",prefixCls:"rc-pagination",selectComponentClass:null,hideOnSinglePage:!1,showPrevNextJumpers:!0,showQuickJumper:!1,showLessItems:!1,showTitle:!0,onShowSizeChange:Ue,locale:me.Z,style:{},itemRender:Je,totalBoundaryShowSizeChanger:50};var $e=rt,qe=Te(22075),ot=Te(36355),at=Te(19716),ut=Te(8628),nt=Te(9763),lt=Te(57809);const yt=gt=>He.createElement(lt.default,Object.assign({},gt,{showSearch:!0,size:"small"})),ft=gt=>He.createElement(lt.default,Object.assign({},gt,{showSearch:!0,size:"middle"}));yt.Option=lt.default.Option,ft.Option=lt.default.Option;var ct=Te(9937),vt=Te(17313),Ut=Te(83116),Zt=Te(37613);const en=gt=>{const{componentCls:bt}=gt;return{[`${bt}-disabled`]:{"&, &:hover":{cursor:"not-allowed",[`${bt}-item-link`]:{color:gt.colorTextDisabled,cursor:"not-allowed"}},"&:focus-visible":{cursor:"not-allowed",[`${bt}-item-link`]:{color:gt.colorTextDisabled,cursor:"not-allowed"}}},[`&${bt}-disabled`]:{cursor:"not-allowed",[`${bt}-item`]:{cursor:"not-allowed","&:hover, &:active":{backgroundColor:"transparent"},a:{color:gt.colorTextDisabled,backgroundColor:"transparent",border:"none",cursor:"not-allowed"},"&-active":{borderColor:gt.colorBorder,backgroundColor:gt.itemActiveBgDisabled,"&:hover, &:active":{backgroundColor:gt.itemActiveBgDisabled},a:{color:gt.itemActiveColorDisabled}}},[`${bt}-item-link`]:{color:gt.colorTextDisabled,cursor:"not-allowed","&:hover, &:active":{backgroundColor:"transparent"},[`${bt}-simple&`]:{backgroundColor:"transparent","&:hover, &:active":{backgroundColor:"transparent"}}},[`${bt}-simple-pager`]:{color:gt.colorTextDisabled},[`${bt}-jump-prev, ${bt}-jump-next`]:{[`${bt}-item-link-icon`]:{opacity:0},[`${bt}-item-ellipsis`]:{opacity:1}}},[`&${bt}-simple`]:{[`${bt}-prev, ${bt}-next`]:{[`&${bt}-disabled ${bt}-item-link`]:{"&:hover, &:active":{backgroundColor:"transparent"}}}}}},mn=gt=>{const{componentCls:bt}=gt;return{[`&${bt}-mini ${bt}-total-text, &${bt}-mini ${bt}-simple-pager`]:{height:gt.itemSizeSM,lineHeight:`${gt.itemSizeSM}px`},[`&${bt}-mini ${bt}-item`]:{minWidth:gt.itemSizeSM,height:gt.itemSizeSM,margin:0,lineHeight:`${gt.itemSizeSM-2}px`},[`&${bt}-mini:not(${bt}-disabled) ${bt}-item:not(${bt}-item-active)`]:{backgroundColor:"transparent",borderColor:"transparent","&:hover":{backgroundColor:gt.colorBgTextHover},"&:active":{backgroundColor:gt.colorBgTextActive}},[`&${bt}-mini ${bt}-prev, &${bt}-mini ${bt}-next`]:{minWidth:gt.itemSizeSM,height:gt.itemSizeSM,margin:0,lineHeight:`${gt.itemSizeSM}px`},[`&${bt}-mini:not(${bt}-disabled)`]:{[`${bt}-prev, ${bt}-next`]:{[`&:hover ${bt}-item-link`]:{backgroundColor:gt.colorBgTextHover},[`&:active ${bt}-item-link`]:{backgroundColor:gt.colorBgTextActive},[`&${bt}-disabled:hover ${bt}-item-link`]:{backgroundColor:"transparent"}}},[`
|
|
|
&${bt}-mini ${bt}-prev ${bt}-item-link,
|
|
|
&${bt}-mini ${bt}-next ${bt}-item-link
|
|
|
`]:{backgroundColor:"transparent",borderColor:"transparent","&::after":{height:gt.itemSizeSM,lineHeight:`${gt.itemSizeSM}px`}},[`&${bt}-mini ${bt}-jump-prev, &${bt}-mini ${bt}-jump-next`]:{height:gt.itemSizeSM,marginInlineEnd:0,lineHeight:`${gt.itemSizeSM}px`},[`&${bt}-mini ${bt}-options`]:{marginInlineStart:gt.paginationMiniOptionsMarginInlineStart,"&-size-changer":{top:gt.miniOptionsSizeChangerTop},"&-quick-jumper":{height:gt.itemSizeSM,lineHeight:`${gt.itemSizeSM}px`,input:Object.assign(Object.assign({},(0,ct.x0)(gt)),{width:gt.paginationMiniQuickJumperInputWidth,height:gt.controlHeightSM})}}}},Bt=gt=>{const{componentCls:bt}=gt;return{[`
|
|
|
&${bt}-simple ${bt}-prev,
|
|
|
&${bt}-simple ${bt}-next
|
|
|
`]:{height:gt.itemSizeSM,lineHeight:`${gt.itemSizeSM}px`,verticalAlign:"top",[`${bt}-item-link`]:{height:gt.itemSizeSM,backgroundColor:"transparent",border:0,"&:hover":{backgroundColor:gt.colorBgTextHover},"&:active":{backgroundColor:gt.colorBgTextActive},"&::after":{height:gt.itemSizeSM,lineHeight:`${gt.itemSizeSM}px`}}},[`&${bt}-simple ${bt}-simple-pager`]:{display:"inline-block",height:gt.itemSizeSM,marginInlineEnd:gt.marginXS,input:{boxSizing:"border-box",height:"100%",marginInlineEnd:gt.marginXS,padding:`0 ${gt.paginationItemPaddingInline}px`,textAlign:"center",backgroundColor:gt.itemInputBg,border:`${gt.lineWidth}px ${gt.lineType} ${gt.colorBorder}`,borderRadius:gt.borderRadius,outline:"none",transition:`border-color ${gt.motionDurationMid}`,color:"inherit","&:hover":{borderColor:gt.colorPrimary},"&:focus":{borderColor:gt.colorPrimaryHover,boxShadow:`${gt.inputOutlineOffset}px 0 ${gt.controlOutlineWidth}px ${gt.controlOutline}`},"&[disabled]":{color:gt.colorTextDisabled,backgroundColor:gt.colorBgContainerDisabled,borderColor:gt.colorBorder,cursor:"not-allowed"}}}}},tn=gt=>{const{componentCls:bt}=gt;return{[`${bt}-jump-prev, ${bt}-jump-next`]:{outline:0,[`${bt}-item-container`]:{position:"relative",[`${bt}-item-link-icon`]:{color:gt.colorPrimary,fontSize:gt.fontSizeSM,opacity:0,transition:`all ${gt.motionDurationMid}`,"&-svg":{top:0,insetInlineEnd:0,bottom:0,insetInlineStart:0,margin:"auto"}},[`${bt}-item-ellipsis`]:{position:"absolute",top:0,insetInlineEnd:0,bottom:0,insetInlineStart:0,display:"block",margin:"auto",color:gt.colorTextDisabled,fontFamily:"Arial, Helvetica, sans-serif",letterSpacing:gt.paginationEllipsisLetterSpacing,textAlign:"center",textIndent:gt.paginationEllipsisTextIndent,opacity:1,transition:`all ${gt.motionDurationMid}`}},"&:hover":{[`${bt}-item-link-icon`]:{opacity:1},[`${bt}-item-ellipsis`]:{opacity:0}}},[`
|
|
|
${bt}-prev,
|
|
|
${bt}-jump-prev,
|
|
|
${bt}-jump-next
|
|
|
`]:{marginInlineEnd:gt.marginXS},[`
|
|
|
${bt}-prev,
|
|
|
${bt}-next,
|
|
|
${bt}-jump-prev,
|
|
|
${bt}-jump-next
|
|
|
`]:{display:"inline-block",minWidth:gt.itemSize,height:gt.itemSize,color:gt.colorText,fontFamily:gt.fontFamily,lineHeight:`${gt.itemSize}px`,textAlign:"center",verticalAlign:"middle",listStyle:"none",borderRadius:gt.borderRadius,cursor:"pointer",transition:`all ${gt.motionDurationMid}`},[`${bt}-prev, ${bt}-next`]:{fontFamily:"Arial, Helvetica, sans-serif",outline:0,button:{color:gt.colorText,cursor:"pointer",userSelect:"none"},[`${bt}-item-link`]:{display:"block",width:"100%",height:"100%",padding:0,fontSize:gt.fontSizeSM,textAlign:"center",backgroundColor:"transparent",border:`${gt.lineWidth}px ${gt.lineType} transparent`,borderRadius:gt.borderRadius,outline:"none",transition:`all ${gt.motionDurationMid}`},[`&:hover ${bt}-item-link`]:{backgroundColor:gt.colorBgTextHover},[`&:active ${bt}-item-link`]:{backgroundColor:gt.colorBgTextActive},[`&${bt}-disabled:hover`]:{[`${bt}-item-link`]:{backgroundColor:"transparent"}}},[`${bt}-slash`]:{marginInlineEnd:gt.paginationSlashMarginInlineEnd,marginInlineStart:gt.paginationSlashMarginInlineStart},[`${bt}-options`]:{display:"inline-block",marginInlineStart:gt.margin,verticalAlign:"middle","&-size-changer.-select":{display:"inline-block",width:"auto"},"&-quick-jumper":{display:"inline-block",height:gt.controlHeight,marginInlineStart:gt.marginXS,lineHeight:`${gt.controlHeight}px`,verticalAlign:"top",input:Object.assign(Object.assign({},(0,ct.ik)(gt)),{width:gt.controlHeightLG*1.25,height:gt.controlHeight,boxSizing:"border-box",margin:0,marginInlineStart:gt.marginXS,marginInlineEnd:gt.marginXS})}}}},on=gt=>{const{componentCls:bt}=gt;return{[`${bt}-item`]:{display:"inline-block",minWidth:gt.itemSize,height:gt.itemSize,marginInlineEnd:gt.marginXS,fontFamily:gt.fontFamily,lineHeight:`${gt.itemSize-2}px`,textAlign:"center",verticalAlign:"middle",listStyle:"none",backgroundColor:"transparent",border:`${gt.lineWidth}px ${gt.lineType} transparent`,borderRadius:gt.borderRadius,outline:0,cursor:"pointer",userSelect:"none",a:{display:"block",padding:`0 ${gt.paginationItemPaddingInline}px`,color:gt.colorText,"&:hover":{textDecoration:"none"}},[`&:not(${bt}-item-active)`]:{"&:hover":{transition:`all ${gt.motionDurationMid}`,backgroundColor:gt.colorBgTextHover},"&:active":{backgroundColor:gt.colorBgTextActive}},"&-active":{fontWeight:gt.fontWeightStrong,backgroundColor:gt.itemActiveBg,borderColor:gt.colorPrimary,a:{color:gt.colorPrimary},"&:hover":{borderColor:gt.colorPrimaryHover},"&:hover a":{color:gt.colorPrimaryHover}}}}},Mn=gt=>{const{componentCls:bt}=gt;return{[bt]:Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},(0,vt.Wf)(gt)),{"ul, ol":{margin:0,padding:0,listStyle:"none"},"&::after":{display:"block",clear:"both",height:0,overflow:"hidden",visibility:"hidden",content:'""'},[`${bt}-total-text`]:{display:"inline-block",height:gt.itemSize,marginInlineEnd:gt.marginXS,lineHeight:`${gt.itemSize-2}px`,verticalAlign:"middle"}}),on(gt)),tn(gt)),Bt(gt)),mn(gt)),en(gt)),{[`@media only screen and (max-width: ${gt.screenLG}px)`]:{[`${bt}-item`]:{"&-after-jump-prev, &-before-jump-next":{display:"none"}}},[`@media only screen and (max-width: ${gt.screenSM}px)`]:{[`${bt}-options`]:{display:"none"}}}),[`&${gt.componentCls}-rtl`]:{direction:"rtl"}}},Dn=gt=>{const{componentCls:bt}=gt;return{[`${bt}${bt}-disabled:not(${bt}-mini)`]:{"&, &:hover":{[`${bt}-item-link`]:{borderColor:gt.colorBorder}},"&:focus-visible":{[`${bt}-item-link`]:{borderColor:gt.colorBorder}},[`${bt}-item, ${bt}-item-link`]:{backgroundColor:gt.colorBgContainerDisabled,borderColor:gt.colorBorder,[`&:hover:not(${bt}-item-active)`]:{backgroundColor:gt.colorBgContainerDisabled,borderColor:gt.colorBorder,a:{color:gt.colorTextDisabled}},[`&${bt}-item-active`]:{backgroundColor:gt.itemActiveBgDisabled}},[`${bt}-prev, ${bt}-next`]:{"&:hover button":{backgroundColor:gt.colorBgContainerDisabled,borderColor:gt.colorBorder,color:gt.colorTextDisabled},[`${bt}-item-link`]:{backgroundColor:gt.colorBgContainerDisabled,borderColor:gt.colorBorder}}},[`${bt}:not(${bt}-mini)`]:{[`${bt}-prev, ${bt}-next`]:{"&:hover button":{borderColor:gt.colorPrimaryHover,backgroundColor:gt.itemBg},[`${bt}-item-link`]:{backgroundColor:gt.itemLinkBg,borderColor:gt.colorBorder},[`&:hover ${bt}-item-link`]:{borderColor:gt.colorPrimary,backgroundColor:gt.itemBg,color:gt.colorPrimary},[`&${bt}-disabled`]:{[`${bt}-item-link`]:{borderColor:gt.colorBorder,color:gt.colorTextDisabled}}},[`${bt}-item`]:{backgroundColor:gt.itemBg,border:`${gt.lineWidth}px ${gt.lineType} ${gt.colorBorder}`,[`&:hover:not(${bt}-item-active)`]:{borderColor:gt.colorPrimary,backgroundColor:gt.itemBg,a:{color:gt.colorPrimary}},"&-active":{borderColor:gt.colorPrimary}}}}},sn=gt=>{const{componentCls:bt}=gt;return{[`${bt}:not(${bt}-disabled)`]:{[`${bt}-item`]:Object.assign({},(0,vt.Qy)(gt)),[`${bt}-jump-prev, ${bt}-jump-next`]:{"&:focus-visible":Object.assign({[`${bt}-item-link-icon`]:{opacity:1},[`${bt}-item-ellipsis`]:{opacity:0}},(0,vt.oN)(gt))},[`${bt}-prev, ${bt}-next`]:{[`&:focus-visible ${bt}-item-link`]:Object.assign({},(0,vt.oN)(gt))}}}};var rn=(0,Ut.Z)("Pagination",gt=>{const bt=(0,Zt.TS)(gt,{inputOutlineOffset:0,paginationMiniOptionsMarginInlineStart:gt.marginXXS/2,paginationMiniQuickJumperInputWidth:gt.controlHeightLG*1.1,paginationItemPaddingInline:gt.marginXXS*1.5,paginationEllipsisLetterSpacing:gt.marginXXS/2,paginationSlashMarginInlineStart:gt.marginXXS,paginationSlashMarginInlineEnd:gt.marginSM,paginationEllipsisTextIndent:"0.13em"},(0,ct.e5)(gt),(0,ct.TM)(gt));return[Mn(bt),sn(bt),gt.wireframe&&Dn(bt)]},gt=>({itemBg:gt.colorBgContainer,itemSize:gt.controlHeight,itemSizeSM:gt.controlHeightSM,itemActiveBg:gt.colorBgContainer,itemLinkBg:gt.colorBgContainer,itemActiveColorDisabled:gt.colorTextDisabled,itemActiveBgDisabled:gt.controlItemBgActiveDisabled,itemInputBg:gt.colorBgContainer,miniOptionsSizeChangerTop:0})),Ht=function(gt,bt){var Yt={};for(var kt in gt)Object.prototype.hasOwnProperty.call(gt,kt)&&bt.indexOf(kt)<0&&(Yt[kt]=gt[kt]);if(gt!=null&&typeof Object.getOwnPropertySymbols=="function")for(var Mt=0,kt=Object.getOwnPropertySymbols(gt);Mt<kt.length;Mt++)bt.indexOf(kt[Mt])<0&&Object.prototype.propertyIsEnumerable.call(gt,kt[Mt])&&(Yt[kt[Mt]]=gt[kt[Mt]]);return Yt},St=gt=>{const{prefixCls:bt,selectPrefixCls:Yt,className:kt,rootClassName:Mt,style:ln,size:zn,locale:Gn,selectComponentClass:Hn,responsive:nr,showSizeChanger:Xn}=gt,qt=Ht(gt,["prefixCls","selectPrefixCls","className","rootClassName","style","size","locale","selectComponentClass","responsive","showSizeChanger"]),{xs:vn}=(0,ut.Z)(nr),{getPrefixCls:Un,direction:Ln,pagination:yr={}}=He.useContext(ot.E_),kr=Un("pagination",bt),[Dr,Gr]=rn(kr),Ma=Xn!=null?Xn:yr.showSizeChanger,Ja=He.useMemo(()=>{const mr=He.createElement("span",{className:`${kr}-item-ellipsis`},"\u2022\u2022\u2022"),Er=He.createElement("button",{className:`${kr}-item-link`,type:"button",tabIndex:-1},Ln==="rtl"?He.createElement(pe.Z,null):He.createElement(xe.Z,null)),ba=He.createElement("button",{className:`${kr}-item-link`,type:"button",tabIndex:-1},Ln==="rtl"?He.createElement(xe.Z,null):He.createElement(pe.Z,null)),Fn=He.createElement("a",{className:`${kr}-item-link`},He.createElement("div",{className:`${kr}-item-container`},Ln==="rtl"?He.createElement(Pe.Z,{className:`${kr}-item-link-icon`}):He.createElement(Ee,{className:`${kr}-item-link-icon`}),mr)),gr=He.createElement("a",{className:`${kr}-item-link`},He.createElement("div",{className:`${kr}-item-container`},Ln==="rtl"?He.createElement(Ee,{className:`${kr}-item-link-icon`}):He.createElement(Pe.Z,{className:`${kr}-item-link-icon`}),mr));return{prevIcon:Er,nextIcon:ba,jumpPrevIcon:Fn,jumpNextIcon:gr}},[Ln,kr]),[Na]=(0,nt.Z)("Pagination",qe.Z),Da=Object.assign(Object.assign({},Na),Gn),Di=(0,at.Z)(zn),_a=Di==="small"||!!(vn&&!Di&&nr),Vr=Un("select",Yt),Ya=Se()({[`${kr}-mini`]:_a,[`${kr}-rtl`]:Ln==="rtl"},yr==null?void 0:yr.className,kt,Mt,Gr),ui=Object.assign(Object.assign({},yr==null?void 0:yr.style),ln);return Dr(He.createElement($e,Object.assign({},Ja,qt,{style:ui,prefixCls:kr,selectPrefixCls:Vr,className:Ya,selectComponentClass:Hn||(_a?yt:ft),locale:Da,showSizeChanger:Ma})))},Qt=St},93948:function(At,It,Te){"use strict";Te.d(It,{Z:function(){return Xn}});var Oe=Te(59301),He=Te(29679),Ne=Te(40001),be=Te(19248),_e=Te(99267),Me=Te(92310),ve=Te.n(Me),Ee=Te(2738),Pe=Te(36355),xe=Te(54476),pe=Te(33885),Ae=Te(75931),Se={percent:0,prefixCls:"rc-progress",strokeColor:"#2db7f5",strokeLinecap:"round",strokeWidth:1,trailColor:"#D9D9D9",trailWidth:1,gapPosition:"bottom"},ce=function(){var vn=(0,Oe.useRef)([]),Un=(0,Oe.useRef)(null);return(0,Oe.useEffect)(function(){var Ln=Date.now(),yr=!1;vn.current.forEach(function(kr){if(kr){yr=!0;var Dr=kr.style;Dr.transitionDuration=".3s, .3s, .3s, .06s",Un.current&&Ln-Un.current<100&&(Dr.transitionDuration="0s, 0s")}}),yr&&(Un.current=Date.now())}),vn.current},te=["className","percent","prefixCls","strokeColor","strokeLinecap","strokeWidth","style","trailColor","trailWidth","transition"],ne=function(vn){var Un=(0,pe.Z)((0,pe.Z)({},Se),vn),Ln=Un.className,yr=Un.percent,kr=Un.prefixCls,Dr=Un.strokeColor,Gr=Un.strokeLinecap,Ma=Un.strokeWidth,Ja=Un.style,Na=Un.trailColor,Da=Un.trailWidth,Di=Un.transition,_a=(0,Ae.Z)(Un,te);delete _a.gapPosition;var Vr=Array.isArray(yr)?yr:[yr],Ya=Array.isArray(Dr)?Dr:[Dr],ui=ce(),mr=Ma/2,Er=100-Ma/2,ba="M ".concat(Gr==="round"?mr:0,",").concat(mr,`
|
|
|
L `).concat(Gr==="round"?Er:100,",").concat(mr),Fn="0 0 100 ".concat(Ma),gr=0;return Oe.createElement("svg",(0,xe.Z)({className:ve()("".concat(kr,"-line"),Ln),viewBox:Fn,preserveAspectRatio:"none",style:Ja},_a),Oe.createElement("path",{className:"".concat(kr,"-line-trail"),d:ba,strokeLinecap:Gr,stroke:Na,strokeWidth:Da||Ma,fillOpacity:"0"}),Vr.map(function(br,_r){var ha=1;switch(Gr){case"round":ha=1-Ma/100;break;case"square":ha=1-Ma/2/100;break;default:ha=1;break}var Ct={strokeDasharray:"".concat(br*ha,"px, 100px"),strokeDashoffset:"-".concat(gr,"px"),transition:Di||"stroke-dashoffset 0.3s ease 0s, stroke-dasharray .3s ease 0s, stroke 0.3s linear"},we=Ya[_r]||Ya[Ya.length-1];return gr+=br,Oe.createElement("path",{key:_r,className:"".concat(kr,"-line-path"),d:ba,strokeLinecap:Gr,stroke:we,strokeWidth:Ma,fillOpacity:"0",ref:function(Le){ui[_r]=Le},style:Ct})}))},le=ne,se=Te(76190),fe=Te(42978),he=Te(47273),ie=0,ue=(0,he.Z)();function me(){var qt;return ue?(qt=ie,ie+=1):qt="TEST_OR_SSR",qt}var Ce=function(qt){var vn=Oe.useState(),Un=(0,fe.Z)(vn,2),Ln=Un[0],yr=Un[1];return Oe.useEffect(function(){yr("rc_progress_".concat(me()))},[]),qt||Ln},Ie=function(vn){var Un=vn.bg,Ln=vn.children;return Oe.createElement("div",{style:{width:"100%",height:"100%",background:Un}},Ln)};function Fe(qt,vn){return Object.keys(qt).map(function(Un){var Ln=parseFloat(Un),yr="".concat(Math.floor(Ln*vn),"%");return"".concat(qt[Un]," ").concat(yr)})}var Re=Oe.forwardRef(function(qt,vn){var Un=qt.prefixCls,Ln=qt.color,yr=qt.gradientId,kr=qt.radius,Dr=qt.style,Gr=qt.ptg,Ma=qt.strokeLinecap,Ja=qt.strokeWidth,Na=qt.size,Da=qt.gapDegree,Di=Ln&&(0,se.Z)(Ln)==="object",_a=Di?"#FFF":void 0,Vr=Na/2,Ya=Oe.createElement("circle",{className:"".concat(Un,"-circle-path"),r:kr,cx:Vr,cy:Vr,stroke:_a,strokeLinecap:Ma,strokeWidth:Ja,opacity:Gr===0?0:1,style:Dr,ref:vn});if(!Di)return Ya;var ui="".concat(yr,"-conic"),mr=Da?"".concat(180+Da/2,"deg"):"0deg",Er=Fe(Ln,(360-Da)/360),ba=Fe(Ln,1),Fn="conic-gradient(from ".concat(mr,", ").concat(Er.join(", "),")"),gr="linear-gradient(to ".concat(Da?"bottom":"top",", ").concat(ba.join(", "),")");return Oe.createElement(Oe.Fragment,null,Oe.createElement("mask",{id:ui},Ya),Oe.createElement("foreignObject",{x:0,y:0,width:Na,height:Na,mask:"url(#".concat(ui,")")},Oe.createElement(Ie,{bg:gr},Oe.createElement(Ie,{bg:Fn}))))}),Ue=Re,Ge=100,Je=function(vn,Un,Ln,yr,kr,Dr,Gr,Ma,Ja,Na){var Da=arguments.length>10&&arguments[10]!==void 0?arguments[10]:0,Di=Ln/100*360*((360-Dr)/360),_a=Dr===0?0:{bottom:0,top:180,left:90,right:-90}[Gr],Vr=(100-yr)/100*Un;Ja==="round"&&yr!==100&&(Vr+=Na/2,Vr>=Un&&(Vr=Un-.01));var Ya=Ge/2;return{stroke:typeof Ma=="string"?Ma:void 0,strokeDasharray:"".concat(Un,"px ").concat(vn),strokeDashoffset:Vr+Da,transform:"rotate(".concat(kr+Di+_a,"deg)"),transformOrigin:"".concat(Ya,"px ").concat(Ya,"px"),transition:"stroke-dashoffset .3s ease 0s, stroke-dasharray .3s ease 0s, stroke .3s, stroke-width .06s ease .3s, opacity .3s ease 0s",fillOpacity:0}},Qe=["id","prefixCls","steps","strokeWidth","trailWidth","gapDegree","gapPosition","trailColor","strokeLinecap","style","className","strokeColor","percent"];function rt(qt){var vn=qt!=null?qt:[];return Array.isArray(vn)?vn:[vn]}var $e=function(vn){var Un=(0,pe.Z)((0,pe.Z)({},Se),vn),Ln=Un.id,yr=Un.prefixCls,kr=Un.steps,Dr=Un.strokeWidth,Gr=Un.trailWidth,Ma=Un.gapDegree,Ja=Ma===void 0?0:Ma,Na=Un.gapPosition,Da=Un.trailColor,Di=Un.strokeLinecap,_a=Un.style,Vr=Un.className,Ya=Un.strokeColor,ui=Un.percent,mr=(0,Ae.Z)(Un,Qe),Er=Ge/2,ba=Ce(Ln),Fn="".concat(ba,"-gradient"),gr=Er-Dr/2,br=Math.PI*2*gr,_r=Ja>0?90+Ja/2:-90,ha=br*((360-Ja)/360),Ct=(0,se.Z)(kr)==="object"?kr:{count:kr,space:2},we=Ct.count,Be=Ct.space,Le=rt(ui),je=rt(Ya),Xe=je.find(function(Vn){return Vn&&(0,se.Z)(Vn)==="object"}),Et=Xe&&(0,se.Z)(Xe)==="object",xt=Et?"butt":Di,Jt=Je(br,ha,0,100,_r,Ja,Na,Da,xt,Dr),Vt=ce(),fn=function(){var Pn=0;return Le.map(function(Jn,$n){var hr=je[$n]||je[je.length-1],hn=Je(br,ha,Pn,Jn,_r,Ja,Na,hr,xt,Dr);return Pn+=Jn,Oe.createElement(Ue,{key:$n,color:hr,ptg:Jn,radius:gr,prefixCls:yr,gradientId:Fn,style:hn,strokeLinecap:xt,strokeWidth:Dr,gapDegree:Ja,ref:function(In){Vt[$n]=In},size:Ge})}).reverse()},dn=function(){var Pn=Math.round(we*(Le[0]/100)),Jn=100/we,$n=0;return new Array(we).fill(null).map(function(hr,hn){var an=hn<=Pn-1?je[0]:Da,In=an&&(0,se.Z)(an)==="object"?"url(#".concat(Fn,")"):void 0,jn=Je(br,ha,$n,Jn,_r,Ja,Na,an,"butt",Dr,Be);return $n+=(ha-jn.strokeDashoffset+Be)*100/ha,Oe.createElement("circle",{key:hn,className:"".concat(yr,"-circle-path"),r:gr,cx:Er,cy:Er,stroke:In,strokeWidth:Dr,opacity:1,style:jn,ref:function(or){Vt[hn]=or}})})};return Oe.createElement("svg",(0,xe.Z)({className:ve()("".concat(yr,"-circle"),Vr),viewBox:"0 0 ".concat(Ge," ").concat(Ge),style:_a,id:Ln,role:"presentation"},mr),!we&&Oe.createElement("circle",{className:"".concat(yr,"-circle-trail"),r:gr,cx:Er,cy:Er,stroke:Da,strokeLinecap:xt,strokeWidth:Gr||Dr,style:Jt}),we?dn():fn())},qe=$e,ot={Line:le,Circle:qe},at=Te(6848),ut=Te(30071);function nt(qt){return!qt||qt<0?0:qt>100?100:qt}function lt(qt){let{success:vn,successPercent:Un}=qt,Ln=Un;return vn&&"progress"in vn&&(Ln=vn.progress),vn&&"percent"in vn&&(Ln=vn.percent),Ln}const yt=qt=>{let{percent:vn,success:Un,successPercent:Ln}=qt;const yr=nt(lt({success:Un,successPercent:Ln}));return[yr,nt(nt(vn)-yr)]},ft=qt=>{let{success:vn={},strokeColor:Un}=qt;const{strokeColor:Ln}=vn;return[Ln||ut.presetPrimaryColors.green,Un||null]},ct=(qt,vn,Un)=>{var Ln,yr,kr,Dr;let Gr=-1,Ma=-1;if(vn==="step"){const Ja=Un.steps,Na=Un.strokeWidth;typeof qt=="string"||typeof qt=="undefined"?(Gr=qt==="small"?2:14,Ma=Na!=null?Na:8):typeof qt=="number"?[Gr,Ma]=[qt,qt]:[Gr=14,Ma=8]=qt,Gr*=Ja}else if(vn==="line"){const Ja=Un==null?void 0:Un.strokeWidth;typeof qt=="string"||typeof qt=="undefined"?Ma=Ja||(qt==="small"?6:8):typeof qt=="number"?[Gr,Ma]=[qt,qt]:[Gr=-1,Ma=8]=qt}else(vn==="circle"||vn==="dashboard")&&(typeof qt=="string"||typeof qt=="undefined"?[Gr,Ma]=qt==="small"?[60,60]:[120,120]:typeof qt=="number"?[Gr,Ma]=[qt,qt]:(Gr=(yr=(Ln=qt[0])!==null&&Ln!==void 0?Ln:qt[1])!==null&&yr!==void 0?yr:120,Ma=(Dr=(kr=qt[0])!==null&&kr!==void 0?kr:qt[1])!==null&&Dr!==void 0?Dr:120));return[Gr,Ma]},vt=3,Ut=qt=>vt/qt*100;var en=qt=>{const{prefixCls:vn,trailColor:Un=null,strokeLinecap:Ln="round",gapPosition:yr,gapDegree:kr,width:Dr=120,type:Gr,children:Ma,success:Ja,size:Na=Dr}=qt,[Da,Di]=ct(Na,"circle");let{strokeWidth:_a}=qt;_a===void 0&&(_a=Math.max(Ut(Da),6));const Vr={width:Da,height:Di,fontSize:Da*.15+6},Ya=Oe.useMemo(()=>{if(kr||kr===0)return kr;if(Gr==="dashboard")return 75},[kr,Gr]),ui=yr||Gr==="dashboard"&&"bottom"||void 0,mr=Object.prototype.toString.call(qt.strokeColor)==="[object Object]",Er=ft({success:Ja,strokeColor:qt.strokeColor}),ba=ve()(`${vn}-inner`,{[`${vn}-circle-gradient`]:mr}),Fn=Oe.createElement(qe,{percent:yt(qt),strokeWidth:_a,trailWidth:_a,strokeColor:Er,strokeLinecap:Ln,trailColor:Un,prefixCls:vn,gapDegree:Ya,gapPosition:ui});return Oe.createElement("div",{className:ba,style:Vr},Da<=20?Oe.createElement(at.Z,{title:Ma},Oe.createElement("span",null,Fn)):Oe.createElement(Oe.Fragment,null,Fn,Ma))},mn=function(qt,vn){var Un={};for(var Ln in qt)Object.prototype.hasOwnProperty.call(qt,Ln)&&vn.indexOf(Ln)<0&&(Un[Ln]=qt[Ln]);if(qt!=null&&typeof Object.getOwnPropertySymbols=="function")for(var yr=0,Ln=Object.getOwnPropertySymbols(qt);yr<Ln.length;yr++)vn.indexOf(Ln[yr])<0&&Object.prototype.propertyIsEnumerable.call(qt,Ln[yr])&&(Un[Ln[yr]]=qt[Ln[yr]]);return Un};const Bt=qt=>{let vn=[];return Object.keys(qt).forEach(Un=>{const Ln=parseFloat(Un.replace(/%/g,""));isNaN(Ln)||vn.push({key:Ln,value:qt[Un]})}),vn=vn.sort((Un,Ln)=>Un.key-Ln.key),vn.map(Un=>{let{key:Ln,value:yr}=Un;return`${yr} ${Ln}%`}).join(", ")},tn=(qt,vn)=>{const{from:Un=ut.presetPrimaryColors.blue,to:Ln=ut.presetPrimaryColors.blue,direction:yr=vn==="rtl"?"to left":"to right"}=qt,kr=mn(qt,["from","to","direction"]);if(Object.keys(kr).length!==0){const Dr=Bt(kr);return{backgroundImage:`linear-gradient(${yr}, ${Dr})`}}return{backgroundImage:`linear-gradient(${yr}, ${Un}, ${Ln})`}};var Mn=qt=>{const{prefixCls:vn,direction:Un,percent:Ln,size:yr,strokeWidth:kr,strokeColor:Dr,strokeLinecap:Gr="round",children:Ma,trailColor:Ja=null,success:Na}=qt,Da=Dr&&typeof Dr!="string"?tn(Dr,Un):{backgroundColor:Dr},Di=Gr==="square"||Gr==="butt"?0:void 0,_a={backgroundColor:Ja||void 0,borderRadius:Di},Vr=yr!=null?yr:[-1,kr||(yr==="small"?6:8)],[Ya,ui]=ct(Vr,"line",{strokeWidth:kr}),mr=Object.assign({width:`${nt(Ln)}%`,height:ui,borderRadius:Di},Da),Er=lt(qt),ba={width:`${nt(Er)}%`,height:ui,borderRadius:Di,backgroundColor:Na==null?void 0:Na.strokeColor},Fn={width:Ya<0?"100%":Ya,height:ui};return Oe.createElement(Oe.Fragment,null,Oe.createElement("div",{className:`${vn}-outer`,style:Fn},Oe.createElement("div",{className:`${vn}-inner`,style:_a},Oe.createElement("div",{className:`${vn}-bg`,style:mr}),Er!==void 0?Oe.createElement("div",{className:`${vn}-success-bg`,style:ba}):null)),Ma)},sn=qt=>{const{size:vn,steps:Un,percent:Ln=0,strokeWidth:yr=8,strokeColor:kr,trailColor:Dr=null,prefixCls:Gr,children:Ma}=qt,Ja=Math.round(Un*(Ln/100)),Na=vn==="small"?2:14,Da=vn!=null?vn:[Na,yr],[Di,_a]=ct(Da,"step",{steps:Un,strokeWidth:yr}),Vr=Di/Un,Ya=new Array(Un);for(let ui=0;ui<Un;ui++){const mr=Array.isArray(kr)?kr[ui]:kr;Ya[ui]=Oe.createElement("div",{key:ui,className:ve()(`${Gr}-steps-item`,{[`${Gr}-steps-item-active`]:ui<=Ja-1}),style:{backgroundColor:ui<=Ja-1?mr:Dr,width:Vr,height:_a}})}return Oe.createElement("div",{className:`${Gr}-steps-outer`},Ya,Ma)},rn=Te(36237),Ht=Te(17313),Tt=Te(83116),St=Te(37613);const Qt=qt=>{const vn=qt?"100%":"-100%";return new rn.Keyframes(`antProgress${qt?"RTL":"LTR"}Active`,{"0%":{transform:`translateX(${vn}) scaleX(0)`,opacity:.1},"20%":{transform:`translateX(${vn}) scaleX(0)`,opacity:.5},to:{transform:"translateX(0) scaleX(1)",opacity:0}})},gt=qt=>{const{componentCls:vn,iconCls:Un}=qt;return{[vn]:Object.assign(Object.assign({},(0,Ht.Wf)(qt)),{display:"inline-block","&-rtl":{direction:"rtl"},"&-line":{position:"relative",width:"100%",fontSize:qt.fontSize,marginInlineEnd:qt.marginXS,marginBottom:qt.marginXS},[`${vn}-outer`]:{display:"inline-block",width:"100%"},[`&${vn}-show-info`]:{[`${vn}-outer`]:{marginInlineEnd:`calc(-2em - ${qt.marginXS}px)`,paddingInlineEnd:`calc(2em + ${qt.paddingXS}px)`}},[`${vn}-inner`]:{position:"relative",display:"inline-block",width:"100%",overflow:"hidden",verticalAlign:"middle",backgroundColor:qt.remainingColor,borderRadius:qt.lineBorderRadius},[`${vn}-inner:not(${vn}-circle-gradient)`]:{[`${vn}-circle-path`]:{stroke:qt.defaultColor}},[`${vn}-success-bg, ${vn}-bg`]:{position:"relative",backgroundColor:qt.defaultColor,borderRadius:qt.lineBorderRadius,transition:`all ${qt.motionDurationSlow} ${qt.motionEaseInOutCirc}`},[`${vn}-success-bg`]:{position:"absolute",insetBlockStart:0,insetInlineStart:0,backgroundColor:qt.colorSuccess},[`${vn}-text`]:{display:"inline-block",width:"2em",marginInlineStart:qt.marginXS,color:qt.colorText,lineHeight:1,whiteSpace:"nowrap",textAlign:"start",verticalAlign:"middle",wordBreak:"normal",[Un]:{fontSize:qt.fontSize}},[`&${vn}-status-active`]:{[`${vn}-bg::before`]:{position:"absolute",inset:0,backgroundColor:qt.colorBgContainer,borderRadius:qt.lineBorderRadius,opacity:0,animationName:Qt(),animationDuration:qt.progressActiveMotionDuration,animationTimingFunction:qt.motionEaseOutQuint,animationIterationCount:"infinite",content:'""'}},[`&${vn}-rtl${vn}-status-active`]:{[`${vn}-bg::before`]:{animationName:Qt(!0)}},[`&${vn}-status-exception`]:{[`${vn}-bg`]:{backgroundColor:qt.colorError},[`${vn}-text`]:{color:qt.colorError}},[`&${vn}-status-exception ${vn}-inner:not(${vn}-circle-gradient)`]:{[`${vn}-circle-path`]:{stroke:qt.colorError}},[`&${vn}-status-success`]:{[`${vn}-bg`]:{backgroundColor:qt.colorSuccess},[`${vn}-text`]:{color:qt.colorSuccess}},[`&${vn}-status-success ${vn}-inner:not(${vn}-circle-gradient)`]:{[`${vn}-circle-path`]:{stroke:qt.colorSuccess}}})}},bt=qt=>{const{componentCls:vn,iconCls:Un}=qt;return{[vn]:{[`${vn}-circle-trail`]:{stroke:qt.remainingColor},[`&${vn}-circle ${vn}-inner`]:{position:"relative",lineHeight:1,backgroundColor:"transparent"},[`&${vn}-circle ${vn}-text`]:{position:"absolute",insetBlockStart:"50%",insetInlineStart:0,width:"100%",margin:0,padding:0,color:qt.circleTextColor,fontSize:qt.circleTextFontSize,lineHeight:1,whiteSpace:"normal",textAlign:"center",transform:"translateY(-50%)",[Un]:{fontSize:`${qt.fontSize/qt.fontSizeSM}em`}},[`${vn}-circle&-status-exception`]:{[`${vn}-text`]:{color:qt.colorError}},[`${vn}-circle&-status-success`]:{[`${vn}-text`]:{color:qt.colorSuccess}}},[`${vn}-inline-circle`]:{lineHeight:1,[`${vn}-inner`]:{verticalAlign:"bottom"}}}},Yt=qt=>{const{componentCls:vn}=qt;return{[vn]:{[`${vn}-steps`]:{display:"inline-block","&-outer":{display:"flex",flexDirection:"row",alignItems:"center"},"&-item":{flexShrink:0,minWidth:qt.progressStepMinWidth,marginInlineEnd:qt.progressStepMarginInlineEnd,backgroundColor:qt.remainingColor,transition:`all ${qt.motionDurationSlow}`,"&-active":{backgroundColor:qt.defaultColor}}}}}},kt=qt=>{const{componentCls:vn,iconCls:Un}=qt;return{[vn]:{[`${vn}-small&-line, ${vn}-small&-line ${vn}-text ${Un}`]:{fontSize:qt.fontSizeSM}}}};var Mt=(0,Tt.Z)("Progress",qt=>{const vn=qt.marginXXS/2,Un=(0,St.TS)(qt,{progressStepMarginInlineEnd:vn,progressStepMinWidth:vn,progressActiveMotionDuration:"2.4s"});return[gt(Un),bt(Un),Yt(Un),kt(Un)]},qt=>({circleTextColor:qt.colorText,defaultColor:qt.colorInfo,remainingColor:qt.colorFillSecondary,lineBorderRadius:100,circleTextFontSize:"1em"})),ln=function(qt,vn){var Un={};for(var Ln in qt)Object.prototype.hasOwnProperty.call(qt,Ln)&&vn.indexOf(Ln)<0&&(Un[Ln]=qt[Ln]);if(qt!=null&&typeof Object.getOwnPropertySymbols=="function")for(var yr=0,Ln=Object.getOwnPropertySymbols(qt);yr<Ln.length;yr++)vn.indexOf(Ln[yr])<0&&Object.prototype.propertyIsEnumerable.call(qt,Ln[yr])&&(Un[Ln[yr]]=qt[Ln[yr]]);return Un};const zn=null,Gn=["normal","exception","active","success"];var nr=Oe.forwardRef((qt,vn)=>{const{prefixCls:Un,className:Ln,rootClassName:yr,steps:kr,strokeColor:Dr,percent:Gr=0,size:Ma="default",showInfo:Ja=!0,type:Na="line",status:Da,format:Di,style:_a}=qt,Vr=ln(qt,["prefixCls","className","rootClassName","steps","strokeColor","percent","size","showInfo","type","status","format","style"]),Ya=Oe.useMemo(()=>{var Le,je;const Xe=lt(qt);return parseInt(Xe!==void 0?(Le=Xe!=null?Xe:0)===null||Le===void 0?void 0:Le.toString():(je=Gr!=null?Gr:0)===null||je===void 0?void 0:je.toString(),10)},[Gr,qt.success,qt.successPercent]),ui=Oe.useMemo(()=>!Gn.includes(Da)&&Ya>=100?"success":Da||"normal",[Da,Ya]),{getPrefixCls:mr,direction:Er,progress:ba}=Oe.useContext(Pe.E_),Fn=mr("progress",Un),[gr,br]=Mt(Fn),_r=Oe.useMemo(()=>{if(!Ja)return null;const Le=lt(qt);let je;const Xe=Di||(xt=>`${xt}%`),Et=Na==="line";return Di||ui!=="exception"&&ui!=="success"?je=Xe(nt(Gr),nt(Le)):ui==="exception"?je=Et?Oe.createElement(be.Z,null):Oe.createElement(_e.Z,null):ui==="success"&&(je=Et?Oe.createElement(He.Z,null):Oe.createElement(Ne.Z,null)),Oe.createElement("span",{className:`${Fn}-text`,title:typeof je=="string"?je:void 0},je)},[Ja,Gr,Ya,ui,Na,Fn,Di]),ha=Array.isArray(Dr)?Dr[0]:Dr,Ct=typeof Dr=="string"||Array.isArray(Dr)?Dr:void 0;let we;Na==="line"?we=kr?Oe.createElement(sn,Object.assign({},qt,{strokeColor:Ct,prefixCls:Fn,steps:kr}),_r):Oe.createElement(Mn,Object.assign({},qt,{strokeColor:ha,prefixCls:Fn,direction:Er}),_r):(Na==="circle"||Na==="dashboard")&&(we=Oe.createElement(en,Object.assign({},qt,{strokeColor:ha,prefixCls:Fn,progressStatus:ui}),_r));const Be=ve()(Fn,`${Fn}-status-${ui}`,`${Fn}-${Na==="dashboard"&&"circle"||kr&&"steps"||Na}`,{[`${Fn}-inline-circle`]:Na==="circle"&&ct(Ma,"circle")[0]<=20,[`${Fn}-show-info`]:Ja,[`${Fn}-${Ma}`]:typeof Ma=="string",[`${Fn}-rtl`]:Er==="rtl"},ba==null?void 0:ba.className,Ln,yr,br);return gr(Oe.createElement("div",Object.assign({ref:vn,style:Object.assign(Object.assign({},ba==null?void 0:ba.style),_a),className:Be,role:"progressbar","aria-valuenow":Ya},(0,Ee.Z)(Vr,["trailColor","strokeWidth","width","gapDegree","gapPosition","strokeLinecap","success","successPercent"])),we))}),Xn=nr},13570:function(At,It,Te){"use strict";Te.d(It,{Z:function(){return nt}});var Oe=Te(54476),He=Te(59301),Ne={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M908.1 353.1l-253.9-36.9L540.7 86.1c-3.1-6.3-8.2-11.4-14.5-14.5-15.8-7.8-35-1.3-42.9 14.5L369.8 316.2l-253.9 36.9c-7 1-13.4 4.3-18.3 9.3a32.05 32.05 0 00.6 45.3l183.7 179.1-43.4 252.9a31.95 31.95 0 0046.4 33.7L512 754l227.1 119.4c6.2 3.3 13.4 4.4 20.3 3.2 17.4-3 29.1-19.5 26.1-36.9l-43.4-252.9 183.7-179.1c5-4.9 8.3-11.3 9.3-18.3 2.7-17.5-9.5-33.7-27-36.3z"}}]},name:"star",theme:"filled"},be=Ne,_e=Te(7657),Me=function(yt,ft){return He.createElement(_e.Z,(0,Oe.Z)({},yt,{ref:ft,icon:be}))},ve=He.forwardRef(Me),Ee=ve,Pe=Te(92310),xe=Te.n(Pe),pe=Te(20068),Ae=Te(42978),Se=Te(75931),ce=Te(18929),te=Te(10228),ne=Te(26112);function le(lt,yt){var ft=lt.disabled,ct=lt.prefixCls,vt=lt.character,Ut=lt.characterRender,Zt=lt.index,en=lt.count,mn=lt.value,Bt=lt.allowHalf,tn=lt.focused,on=lt.onHover,Mn=lt.onClick,Dn=function(bt){on(bt,Zt)},sn=function(bt){Mn(bt,Zt)},rn=function(bt){bt.keyCode===te.Z.ENTER&&Mn(bt,Zt)},Ht=Zt+1,Tt=new Set([ct]);mn===0&&Zt===0&&tn?Tt.add("".concat(ct,"-focused")):Bt&&mn+.5>=Ht&&mn<Ht?(Tt.add("".concat(ct,"-half")),Tt.add("".concat(ct,"-active")),tn&&Tt.add("".concat(ct,"-focused"))):(Ht<=mn?Tt.add("".concat(ct,"-full")):Tt.add("".concat(ct,"-zero")),Ht===mn&&tn&&Tt.add("".concat(ct,"-focused")));var St=typeof vt=="function"?vt(lt):vt,Qt=He.createElement("li",{className:xe()(Array.from(Tt)),ref:yt},He.createElement("div",{onClick:ft?null:sn,onKeyDown:ft?null:rn,onMouseMove:ft?null:Dn,role:"radio","aria-checked":mn>Zt?"true":"false","aria-posinset":Zt+1,"aria-setsize":en,tabIndex:ft?-1:0},He.createElement("div",{className:"".concat(ct,"-first")},St),He.createElement("div",{className:"".concat(ct,"-second")},St)));return Ut&&(Qt=Ut(Qt,lt)),Qt}var se=He.forwardRef(le);function fe(){var lt=He.useRef({});function yt(ct){return lt.current[ct]}function ft(ct){return function(vt){lt.current[ct]=vt}}return[yt,ft]}function he(lt){var yt=lt.pageXOffset,ft="scrollLeft";if(typeof yt!="number"){var ct=lt.document;yt=ct.documentElement[ft],typeof yt!="number"&&(yt=ct.body[ft])}return yt}function ie(lt){var yt,ft,ct=lt.ownerDocument,vt=ct.body,Ut=ct&&ct.documentElement,Zt=lt.getBoundingClientRect();return yt=Zt.left,ft=Zt.top,yt-=Ut.clientLeft||vt.clientLeft||0,ft-=Ut.clientTop||vt.clientTop||0,{left:yt,top:ft}}function ue(lt){var yt=ie(lt),ft=lt.ownerDocument,ct=ft.defaultView||ft.parentWindow;return yt.left+=he(ct),yt.left}var me=["prefixCls","className","defaultValue","value","count","allowHalf","allowClear","character","characterRender","disabled","direction","tabIndex","autoFocus","onHoverChange","onChange","onFocus","onBlur","onKeyDown","onMouseLeave"];function Ce(lt,yt){var ft,ct=lt.prefixCls,vt=ct===void 0?"rc-rate":ct,Ut=lt.className,Zt=lt.defaultValue,en=lt.value,mn=lt.count,Bt=mn===void 0?5:mn,tn=lt.allowHalf,on=tn===void 0?!1:tn,Mn=lt.allowClear,Dn=Mn===void 0?!0:Mn,sn=lt.character,rn=sn===void 0?"\u2605":sn,Ht=lt.characterRender,Tt=lt.disabled,St=lt.direction,Qt=St===void 0?"ltr":St,gt=lt.tabIndex,bt=gt===void 0?0:gt,Yt=lt.autoFocus,kt=lt.onHoverChange,Mt=lt.onChange,ln=lt.onFocus,zn=lt.onBlur,Gn=lt.onKeyDown,Hn=lt.onMouseLeave,nr=(0,Se.Z)(lt,me),Xn=fe(),qt=(0,Ae.Z)(Xn,2),vn=qt[0],Un=qt[1],Ln=He.useRef(null),yr=function(){if(!Tt){var xt;(xt=Ln.current)===null||xt===void 0||xt.focus()}};He.useImperativeHandle(yt,function(){return{focus:yr,blur:function(){if(!Tt){var xt;(xt=Ln.current)===null||xt===void 0||xt.blur()}}}});var kr=(0,ce.Z)(Zt||0,{value:en}),Dr=(0,Ae.Z)(kr,2),Gr=Dr[0],Ma=Dr[1],Ja=(0,ce.Z)(null),Na=(0,Ae.Z)(Ja,2),Da=Na[0],Di=Na[1],_a=function(xt,Jt){var Vt=Qt==="rtl",fn=xt+1;if(on){var dn=vn(xt),Vn=ue(dn),Pn=dn.clientWidth;(Vt&&Jt-Vn>Pn/2||!Vt&&Jt-Vn<Pn/2)&&(fn-=.5)}return fn},Vr=function(xt){Ma(xt),Mt==null||Mt(xt)},Ya=He.useState(!1),ui=(0,Ae.Z)(Ya,2),mr=ui[0],Er=ui[1],ba=function(){Er(!0),ln==null||ln()},Fn=function(){Er(!1),zn==null||zn()},gr=He.useState(null),br=(0,Ae.Z)(gr,2),_r=br[0],ha=br[1],Ct=function(xt,Jt){var Vt=_a(Jt,xt.pageX);Vt!==Da&&(ha(Vt),Di(null)),kt==null||kt(Vt)},we=function(xt){Tt||(ha(null),Di(null),kt==null||kt(void 0)),xt&&(Hn==null||Hn(xt))},Be=function(xt,Jt){var Vt=_a(Jt,xt.pageX),fn=!1;Dn&&(fn=Vt===Gr),we(),Vr(fn?0:Vt),Di(fn?Vt:null)},Le=function(xt){var Jt=xt.keyCode,Vt=Qt==="rtl",fn=Gr;Jt===te.Z.RIGHT&&fn<Bt&&!Vt?(on?fn+=.5:fn+=1,Vr(fn),xt.preventDefault()):Jt===te.Z.LEFT&&fn>0&&!Vt||Jt===te.Z.RIGHT&&fn>0&&Vt?(on?fn-=.5:fn-=1,Vr(fn),xt.preventDefault()):Jt===te.Z.LEFT&&fn<Bt&&Vt&&(on?fn+=.5:fn+=1,Vr(fn),xt.preventDefault()),Gn==null||Gn(xt)};He.useEffect(function(){Yt&&!Tt&&yr()},[]);var je=new Array(Bt).fill(0).map(function(Et,xt){return He.createElement(se,{ref:Un(xt),index:xt,count:Bt,disabled:Tt,prefixCls:"".concat(vt,"-star"),allowHalf:on,value:_r===null?Gr:_r,onClick:Be,onHover:Ct,key:Et||xt,character:rn,characterRender:Ht,focused:mr})}),Xe=xe()(vt,Ut,(ft={},(0,pe.Z)(ft,"".concat(vt,"-disabled"),Tt),(0,pe.Z)(ft,"".concat(vt,"-rtl"),Qt==="rtl"),ft));return He.createElement("ul",(0,Oe.Z)({className:Xe,onMouseLeave:we,tabIndex:Tt?-1:bt,onFocus:Tt?null:ba,onBlur:Tt?null:Fn,onKeyDown:Tt?null:Le,ref:Ln,role:"radiogroup"},(0,ne.Z)(nr,{aria:!0,data:!0,attr:!0})),je)}var Ie=He.forwardRef(Ce),Fe=Ie,Re=Te(36355),Ue=Te(6848),Ge=Te(17313),Je=Te(83116),Qe=Te(37613);const rt=lt=>{const{componentCls:yt}=lt;return{[`${yt}-star`]:{position:"relative",display:"inline-block",color:"inherit",cursor:"pointer","&:not(:last-child)":{marginInlineEnd:lt.marginXS},"> div":{transition:`all ${lt.motionDurationMid}, outline 0s`,"&:hover":{transform:lt.starHoverScale},"&:focus":{outline:0},"&:focus-visible":{outline:`${lt.lineWidth}px dashed ${lt.starColor}`,transform:lt.starHoverScale}},"&-first, &-second":{color:lt.starBg,transition:`all ${lt.motionDurationMid}`,userSelect:"none",[lt.iconCls]:{verticalAlign:"middle"}},"&-first":{position:"absolute",top:0,insetInlineStart:0,width:"50%",height:"100%",overflow:"hidden",opacity:0},[`&-half ${yt}-star-first, &-half ${yt}-star-second`]:{opacity:1},[`&-half ${yt}-star-first, &-full ${yt}-star-second`]:{color:"inherit"}}}},$e=lt=>({[`&-rtl${lt.componentCls}`]:{direction:"rtl"}}),qe=lt=>{const{componentCls:yt}=lt;return{[yt]:Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},(0,Ge.Wf)(lt)),{display:"inline-block",margin:0,padding:0,color:lt.starColor,fontSize:lt.starSize,lineHeight:"unset",listStyle:"none",outline:"none",[`&-disabled${yt} ${yt}-star`]:{cursor:"default","> div:hover":{transform:"scale(1)"}}}),rt(lt)),{[`+ ${yt}-text`]:{display:"inline-block",marginInlineStart:lt.marginXS,fontSize:lt.fontSize}}),$e(lt))}};var ot=(0,Je.Z)("Rate",lt=>{const yt=(0,Qe.TS)(lt,{});return[qe(yt)]},lt=>({starColor:lt.yellow6,starSize:lt.controlHeightLG*.5,starHoverScale:"scale(1.1)",starBg:lt.colorFillContent})),at=function(lt,yt){var ft={};for(var ct in lt)Object.prototype.hasOwnProperty.call(lt,ct)&&yt.indexOf(ct)<0&&(ft[ct]=lt[ct]);if(lt!=null&&typeof Object.getOwnPropertySymbols=="function")for(var vt=0,ct=Object.getOwnPropertySymbols(lt);vt<ct.length;vt++)yt.indexOf(ct[vt])<0&&Object.prototype.propertyIsEnumerable.call(lt,ct[vt])&&(ft[ct[vt]]=lt[ct[vt]]);return ft},nt=He.forwardRef((lt,yt)=>{const{prefixCls:ft,className:ct,rootClassName:vt,style:Ut,tooltips:Zt,character:en=He.createElement(Ee,null)}=lt,mn=at(lt,["prefixCls","className","rootClassName","style","tooltips","character"]),Bt=(Tt,St)=>{let{index:Qt}=St;return Zt?He.createElement(Ue.Z,{title:Zt[Qt]},Tt):Tt},{getPrefixCls:tn,direction:on,rate:Mn}=He.useContext(Re.E_),Dn=tn("rate",ft),[sn,rn]=ot(Dn),Ht=Object.assign(Object.assign({},Mn==null?void 0:Mn.style),Ut);return sn(He.createElement(Fe,Object.assign({ref:yt,character:en,characterRender:Bt},mn,{className:xe()(ct,vt,rn,Mn==null?void 0:Mn.className),style:Ht,prefixCls:Dn,direction:on})))})},61621:function(At,It,Te){"use strict";Te.d(It,{Z:function(){return rn}});var Oe=Te(92310),He=Te.n(Oe),Ne=Te(59301),be=Te(36355),_e=Te(2738),ve=Ht=>{const{prefixCls:Tt,className:St,style:Qt,size:gt,shape:bt}=Ht,Yt=He()({[`${Tt}-lg`]:gt==="large",[`${Tt}-sm`]:gt==="small"}),kt=He()({[`${Tt}-circle`]:bt==="circle",[`${Tt}-square`]:bt==="square",[`${Tt}-round`]:bt==="round"}),Mt=Ne.useMemo(()=>typeof gt=="number"?{width:gt,height:gt,lineHeight:`${gt}px`}:{},[gt]);return Ne.createElement("span",{className:He()(Tt,Yt,kt,St),style:Object.assign(Object.assign({},Mt),Qt)})},Ee=Te(36237),Pe=Te(83116),xe=Te(37613);const pe=new Ee.Keyframes("ant-skeleton-loading",{"0%":{backgroundPosition:"100% 50%"},"100%":{backgroundPosition:"0 50%"}}),Ae=Ht=>({height:Ht,lineHeight:`${Ht}px`}),Se=Ht=>Object.assign({width:Ht},Ae(Ht)),ce=Ht=>({background:Ht.skeletonLoadingBackground,backgroundSize:"400% 100%",animationName:pe,animationDuration:Ht.skeletonLoadingMotionDuration,animationTimingFunction:"ease",animationIterationCount:"infinite"}),te=Ht=>Object.assign({width:Ht*5,minWidth:Ht*5},Ae(Ht)),ne=Ht=>{const{skeletonAvatarCls:Tt,gradientFromColor:St,controlHeight:Qt,controlHeightLG:gt,controlHeightSM:bt}=Ht;return{[`${Tt}`]:Object.assign({display:"inline-block",verticalAlign:"top",background:St},Se(Qt)),[`${Tt}${Tt}-circle`]:{borderRadius:"50%"},[`${Tt}${Tt}-lg`]:Object.assign({},Se(gt)),[`${Tt}${Tt}-sm`]:Object.assign({},Se(bt))}},le=Ht=>{const{controlHeight:Tt,borderRadiusSM:St,skeletonInputCls:Qt,controlHeightLG:gt,controlHeightSM:bt,gradientFromColor:Yt}=Ht;return{[`${Qt}`]:Object.assign({display:"inline-block",verticalAlign:"top",background:Yt,borderRadius:St},te(Tt)),[`${Qt}-lg`]:Object.assign({},te(gt)),[`${Qt}-sm`]:Object.assign({},te(bt))}},se=Ht=>Object.assign({width:Ht},Ae(Ht)),fe=Ht=>{const{skeletonImageCls:Tt,imageSizeBase:St,gradientFromColor:Qt,borderRadiusSM:gt}=Ht;return{[`${Tt}`]:Object.assign(Object.assign({display:"flex",alignItems:"center",justifyContent:"center",verticalAlign:"top",background:Qt,borderRadius:gt},se(St*2)),{[`${Tt}-path`]:{fill:"#bfbfbf"},[`${Tt}-svg`]:Object.assign(Object.assign({},se(St)),{maxWidth:St*4,maxHeight:St*4}),[`${Tt}-svg${Tt}-svg-circle`]:{borderRadius:"50%"}}),[`${Tt}${Tt}-circle`]:{borderRadius:"50%"}}},he=(Ht,Tt,St)=>{const{skeletonButtonCls:Qt}=Ht;return{[`${St}${Qt}-circle`]:{width:Tt,minWidth:Tt,borderRadius:"50%"},[`${St}${Qt}-round`]:{borderRadius:Tt}}},ie=Ht=>Object.assign({width:Ht*2,minWidth:Ht*2},Ae(Ht)),ue=Ht=>{const{borderRadiusSM:Tt,skeletonButtonCls:St,controlHeight:Qt,controlHeightLG:gt,controlHeightSM:bt,gradientFromColor:Yt}=Ht;return Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({[`${St}`]:Object.assign({display:"inline-block",verticalAlign:"top",background:Yt,borderRadius:Tt,width:Qt*2,minWidth:Qt*2},ie(Qt))},he(Ht,Qt,St)),{[`${St}-lg`]:Object.assign({},ie(gt))}),he(Ht,gt,`${St}-lg`)),{[`${St}-sm`]:Object.assign({},ie(bt))}),he(Ht,bt,`${St}-sm`))},me=Ht=>{const{componentCls:Tt,skeletonAvatarCls:St,skeletonTitleCls:Qt,skeletonParagraphCls:gt,skeletonButtonCls:bt,skeletonInputCls:Yt,skeletonImageCls:kt,controlHeight:Mt,controlHeightLG:ln,controlHeightSM:zn,gradientFromColor:Gn,padding:Hn,marginSM:nr,borderRadius:Xn,titleHeight:qt,blockRadius:vn,paragraphLiHeight:Un,controlHeightXS:Ln,paragraphMarginTop:yr}=Ht;return{[`${Tt}`]:{display:"table",width:"100%",[`${Tt}-header`]:{display:"table-cell",paddingInlineEnd:Hn,verticalAlign:"top",[`${St}`]:Object.assign({display:"inline-block",verticalAlign:"top",background:Gn},Se(Mt)),[`${St}-circle`]:{borderRadius:"50%"},[`${St}-lg`]:Object.assign({},Se(ln)),[`${St}-sm`]:Object.assign({},Se(zn))},[`${Tt}-content`]:{display:"table-cell",width:"100%",verticalAlign:"top",[`${Qt}`]:{width:"100%",height:qt,background:Gn,borderRadius:vn,[`+ ${gt}`]:{marginBlockStart:zn}},[`${gt}`]:{padding:0,"> li":{width:"100%",height:Un,listStyle:"none",background:Gn,borderRadius:vn,"+ li":{marginBlockStart:Ln}}},[`${gt}> li:last-child:not(:first-child):not(:nth-child(2))`]:{width:"61%"}},[`&-round ${Tt}-content`]:{[`${Qt}, ${gt} > li`]:{borderRadius:Xn}}},[`${Tt}-with-avatar ${Tt}-content`]:{[`${Qt}`]:{marginBlockStart:nr,[`+ ${gt}`]:{marginBlockStart:yr}}},[`${Tt}${Tt}-element`]:Object.assign(Object.assign(Object.assign(Object.assign({display:"inline-block",width:"auto"},ue(Ht)),ne(Ht)),le(Ht)),fe(Ht)),[`${Tt}${Tt}-block`]:{width:"100%",[`${bt}`]:{width:"100%"},[`${Yt}`]:{width:"100%"}},[`${Tt}${Tt}-active`]:{[`
|
|
|
${Qt},
|
|
|
${gt} > li,
|
|
|
${St},
|
|
|
${bt},
|
|
|
${Yt},
|
|
|
${kt}
|
|
|
`]:Object.assign({},ce(Ht))}}};var Ce=(0,Pe.Z)("Skeleton",Ht=>{const{componentCls:Tt}=Ht,St=(0,xe.TS)(Ht,{skeletonAvatarCls:`${Tt}-avatar`,skeletonTitleCls:`${Tt}-title`,skeletonParagraphCls:`${Tt}-paragraph`,skeletonButtonCls:`${Tt}-button`,skeletonInputCls:`${Tt}-input`,skeletonImageCls:`${Tt}-image`,imageSizeBase:Ht.controlHeight*1.5,borderRadius:100,skeletonLoadingBackground:`linear-gradient(90deg, ${Ht.gradientFromColor} 25%, ${Ht.gradientToColor} 37%, ${Ht.gradientFromColor} 63%)`,skeletonLoadingMotionDuration:"1.4s"});return[me(St)]},Ht=>{const{colorFillContent:Tt,colorFill:St}=Ht,Qt=Tt,gt=St;return{color:Qt,colorGradientEnd:gt,gradientFromColor:Qt,gradientToColor:gt,titleHeight:Ht.controlHeight/2,blockRadius:Ht.borderRadiusSM,paragraphMarginTop:Ht.marginLG+Ht.marginXXS,paragraphLiHeight:Ht.controlHeight/2}},{deprecatedTokens:[["color","gradientFromColor"],["colorGradientEnd","gradientToColor"]]}),Fe=Ht=>{const{prefixCls:Tt,className:St,rootClassName:Qt,active:gt,shape:bt="circle",size:Yt="default"}=Ht,{getPrefixCls:kt}=Ne.useContext(be.E_),Mt=kt("skeleton",Tt),[ln,zn]=Ce(Mt),Gn=(0,_e.Z)(Ht,["prefixCls","className"]),Hn=He()(Mt,`${Mt}-element`,{[`${Mt}-active`]:gt},St,Qt,zn);return ln(Ne.createElement("div",{className:Hn},Ne.createElement(ve,Object.assign({prefixCls:`${Mt}-avatar`,shape:bt,size:Yt},Gn))))},Ue=Ht=>{const{prefixCls:Tt,className:St,rootClassName:Qt,active:gt,block:bt=!1,size:Yt="default"}=Ht,{getPrefixCls:kt}=Ne.useContext(be.E_),Mt=kt("skeleton",Tt),[ln,zn]=Ce(Mt),Gn=(0,_e.Z)(Ht,["prefixCls"]),Hn=He()(Mt,`${Mt}-element`,{[`${Mt}-active`]:gt,[`${Mt}-block`]:bt},St,Qt,zn);return ln(Ne.createElement("div",{className:Hn},Ne.createElement(ve,Object.assign({prefixCls:`${Mt}-button`,size:Yt},Gn))))};const Ge="M365.714286 329.142857q0 45.714286-32.036571 77.677714t-77.677714 32.036571-77.677714-32.036571-32.036571-77.677714 32.036571-77.677714 77.677714-32.036571 77.677714 32.036571 32.036571 77.677714zM950.857143 548.571429l0 256-804.571429 0 0-109.714286 182.857143-182.857143 91.428571 91.428571 292.571429-292.571429zM1005.714286 146.285714l-914.285714 0q-7.460571 0-12.873143 5.412571t-5.412571 12.873143l0 694.857143q0 7.460571 5.412571 12.873143t12.873143 5.412571l914.285714 0q7.460571 0 12.873143-5.412571t5.412571-12.873143l0-694.857143q0-7.460571-5.412571-12.873143t-12.873143-5.412571zM1097.142857 164.571429l0 694.857143q0 37.741714-26.843429 64.585143t-64.585143 26.843429l-914.285714 0q-37.741714 0-64.585143-26.843429t-26.843429-64.585143l0-694.857143q0-37.741714 26.843429-64.585143t64.585143-26.843429l914.285714 0q37.741714 0 64.585143 26.843429t26.843429 64.585143z";var Qe=Ht=>{const{prefixCls:Tt,className:St,rootClassName:Qt,style:gt,active:bt}=Ht,{getPrefixCls:Yt}=Ne.useContext(be.E_),kt=Yt("skeleton",Tt),[Mt,ln]=Ce(kt),zn=He()(kt,`${kt}-element`,{[`${kt}-active`]:bt},St,Qt,ln);return Mt(Ne.createElement("div",{className:zn},Ne.createElement("div",{className:He()(`${kt}-image`,St),style:gt},Ne.createElement("svg",{viewBox:"0 0 1098 1024",xmlns:"http://www.w3.org/2000/svg",className:`${kt}-image-svg`},Ne.createElement("path",{d:Ge,className:`${kt}-image-path`})))))},$e=Ht=>{const{prefixCls:Tt,className:St,rootClassName:Qt,active:gt,block:bt,size:Yt="default"}=Ht,{getPrefixCls:kt}=Ne.useContext(be.E_),Mt=kt("skeleton",Tt),[ln,zn]=Ce(Mt),Gn=(0,_e.Z)(Ht,["prefixCls"]),Hn=He()(Mt,`${Mt}-element`,{[`${Mt}-active`]:gt,[`${Mt}-block`]:bt},St,Qt,zn);return ln(Ne.createElement("div",{className:Hn},Ne.createElement(ve,Object.assign({prefixCls:`${Mt}-input`,size:Yt},Gn))))},qe=Te(54476),ot={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M888 792H200V168c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v688c0 4.4 3.6 8 8 8h752c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zM288 604a64 64 0 10128 0 64 64 0 10-128 0zm118-224a48 48 0 1096 0 48 48 0 10-96 0zm158 228a96 96 0 10192 0 96 96 0 10-192 0zm148-314a56 56 0 10112 0 56 56 0 10-112 0z"}}]},name:"dot-chart",theme:"outlined"},at=ot,ut=Te(7657),nt=function(Tt,St){return Ne.createElement(ut.Z,(0,qe.Z)({},Tt,{ref:St,icon:at}))},lt=Ne.forwardRef(nt),yt=lt,ct=Ht=>{const{prefixCls:Tt,className:St,rootClassName:Qt,style:gt,active:bt,children:Yt}=Ht,{getPrefixCls:kt}=Ne.useContext(be.E_),Mt=kt("skeleton",Tt),[ln,zn]=Ce(Mt),Gn=He()(Mt,`${Mt}-element`,{[`${Mt}-active`]:bt},zn,St,Qt),Hn=Yt!=null?Yt:Ne.createElement(yt,null);return ln(Ne.createElement("div",{className:Gn},Ne.createElement("div",{className:He()(`${Mt}-image`,St),style:gt},Hn)))},vt=Te(94480),Zt=Ht=>{const Tt=kt=>{const{width:Mt,rows:ln=2}=Ht;if(Array.isArray(Mt))return Mt[kt];if(ln-1===kt)return Mt},{prefixCls:St,className:Qt,style:gt,rows:bt}=Ht,Yt=(0,vt.Z)(Array(bt)).map((kt,Mt)=>Ne.createElement("li",{key:Mt,style:{width:Tt(Mt)}}));return Ne.createElement("ul",{className:He()(St,Qt),style:gt},Yt)},mn=Ht=>{let{prefixCls:Tt,className:St,width:Qt,style:gt}=Ht;return Ne.createElement("h3",{className:He()(Tt,St),style:Object.assign({width:Qt},gt)})};function Bt(Ht){return Ht&&typeof Ht=="object"?Ht:{}}function tn(Ht,Tt){return Ht&&!Tt?{size:"large",shape:"square"}:{size:"large",shape:"circle"}}function on(Ht,Tt){return!Ht&&Tt?{width:"38%"}:Ht&&Tt?{width:"50%"}:{}}function Mn(Ht,Tt){const St={};return(!Ht||!Tt)&&(St.width="61%"),!Ht&&Tt?St.rows=3:St.rows=2,St}const Dn=Ht=>{const{prefixCls:Tt,loading:St,className:Qt,rootClassName:gt,style:bt,children:Yt,avatar:kt=!1,title:Mt=!0,paragraph:ln=!0,active:zn,round:Gn}=Ht,{getPrefixCls:Hn,direction:nr,skeleton:Xn}=Ne.useContext(be.E_),qt=Hn("skeleton",Tt),[vn,Un]=Ce(qt);if(St||!("loading"in Ht)){const Ln=!!kt,yr=!!Mt,kr=!!ln;let Dr;if(Ln){const Ja=Object.assign(Object.assign({prefixCls:`${qt}-avatar`},tn(yr,kr)),Bt(kt));Dr=Ne.createElement("div",{className:`${qt}-header`},Ne.createElement(ve,Object.assign({},Ja)))}let Gr;if(yr||kr){let Ja;if(yr){const Da=Object.assign(Object.assign({prefixCls:`${qt}-title`},on(Ln,kr)),Bt(Mt));Ja=Ne.createElement(mn,Object.assign({},Da))}let Na;if(kr){const Da=Object.assign(Object.assign({prefixCls:`${qt}-paragraph`},Mn(Ln,yr)),Bt(ln));Na=Ne.createElement(Zt,Object.assign({},Da))}Gr=Ne.createElement("div",{className:`${qt}-content`},Ja,Na)}const Ma=He()(qt,{[`${qt}-with-avatar`]:Ln,[`${qt}-active`]:zn,[`${qt}-rtl`]:nr==="rtl",[`${qt}-round`]:Gn},Xn==null?void 0:Xn.className,Qt,gt,Un);return vn(Ne.createElement("div",{className:Ma,style:Object.assign(Object.assign({},Xn==null?void 0:Xn.style),bt)},Dr,Gr))}return typeof Yt!="undefined"?Yt:null};Dn.Button=Ue,Dn.Avatar=Fe,Dn.Input=$e,Dn.Image=Qe,Dn.Node=ct;var sn=Dn,rn=sn},31797:function(At,It,Te){"use strict";Te.d(It,{default:function(){return Ce}});var Oe=Te(59301),He=Te(56762),Ne=Te(92343),be=Te(92310),_e=Te.n(be),Me=Te(36355),ve=Te(61621),Pe=Ie=>{const{value:Fe,formatter:Re,precision:Ue,decimalSeparator:Ge,groupSeparator:Je="",prefixCls:Qe}=Ie;let rt;if(typeof Re=="function")rt=Re(Fe);else{const $e=String(Fe),qe=$e.match(/^(-?)(\d*)(\.(\d+))?$/);if(!qe||$e==="-")rt=$e;else{const ot=qe[1];let at=qe[2]||"0",ut=qe[4]||"";at=at.replace(/\B(?=(\d{3})+(?!\d))/g,Je),typeof Ue=="number"&&(ut=ut.padEnd(Ue,"0").slice(0,Ue>0?Ue:0)),ut&&(ut=`${Ge}${ut}`),rt=[Oe.createElement("span",{key:"int",className:`${Qe}-content-value-int`},ot,at),ut&&Oe.createElement("span",{key:"decimal",className:`${Qe}-content-value-decimal`},ut)]}}return Oe.createElement("span",{className:`${Qe}-content-value`},rt)},xe=Te(17313),pe=Te(83116),Ae=Te(37613);const Se=Ie=>{const{componentCls:Fe,marginXXS:Re,padding:Ue,colorTextDescription:Ge,titleFontSize:Je,colorTextHeading:Qe,contentFontSize:rt,fontFamily:$e}=Ie;return{[`${Fe}`]:Object.assign(Object.assign({},(0,xe.Wf)(Ie)),{[`${Fe}-title`]:{marginBottom:Re,color:Ge,fontSize:Je},[`${Fe}-skeleton`]:{paddingTop:Ue},[`${Fe}-content`]:{color:Qe,fontSize:rt,fontFamily:$e,[`${Fe}-content-value`]:{display:"inline-block",direction:"ltr"},[`${Fe}-content-prefix, ${Fe}-content-suffix`]:{display:"inline-block"},[`${Fe}-content-prefix`]:{marginInlineEnd:Re},[`${Fe}-content-suffix`]:{marginInlineStart:Re}}})}};var ce=(0,pe.Z)("Statistic",Ie=>{const Fe=(0,Ae.TS)(Ie,{});return[Se(Fe)]},Ie=>{const{fontSizeHeading3:Fe,fontSize:Re}=Ie;return{titleFontSize:Re,contentFontSize:Fe}}),ne=Ie=>{const{prefixCls:Fe,className:Re,rootClassName:Ue,style:Ge,valueStyle:Je,value:Qe=0,title:rt,valueRender:$e,prefix:qe,suffix:ot,loading:at=!1,onMouseEnter:ut,onMouseLeave:nt,decimalSeparator:lt=".",groupSeparator:yt=","}=Ie,{getPrefixCls:ft,direction:ct,statistic:vt}=Oe.useContext(Me.E_),Ut=ft("statistic",Fe),[Zt,en]=ce(Ut),mn=Oe.createElement(Pe,Object.assign({decimalSeparator:lt,groupSeparator:yt,prefixCls:Ut},Ie,{value:Qe})),Bt=_e()(Ut,{[`${Ut}-rtl`]:ct==="rtl"},vt==null?void 0:vt.className,Re,Ue,en);return Zt(Oe.createElement("div",{className:Bt,style:Object.assign(Object.assign({},vt==null?void 0:vt.style),Ge),onMouseEnter:ut,onMouseLeave:nt},rt&&Oe.createElement("div",{className:`${Ut}-title`},rt),Oe.createElement(ve.Z,{paragraph:!1,loading:at,className:`${Ut}-skeleton`},Oe.createElement("div",{style:Je,className:`${Ut}-content`},qe&&Oe.createElement("span",{className:`${Ut}-content-prefix`},qe),$e?$e(mn):mn,ot&&Oe.createElement("span",{className:`${Ut}-content-suffix`},ot)))))};const le=[["Y",1e3*60*60*24*365],["M",1e3*60*60*24*30],["D",1e3*60*60*24],["H",1e3*60*60],["m",1e3*60],["s",1e3],["S",1]];function se(Ie,Fe){let Re=Ie;const Ue=/\[[^\]]*]/g,Ge=(Fe.match(Ue)||[]).map($e=>$e.slice(1,-1)),Je=Fe.replace(Ue,"[]"),Qe=le.reduce(($e,qe)=>{let[ot,at]=qe;if($e.includes(ot)){const ut=Math.floor(Re/at);return Re-=ut*at,$e.replace(new RegExp(`${ot}+`,"g"),nt=>{const lt=nt.length;return ut.toString().padStart(lt,"0")})}return $e},Je);let rt=0;return Qe.replace(Ue,()=>{const $e=Ge[rt];return rt+=1,$e})}function fe(Ie,Fe){const{format:Re=""}=Fe,Ue=new Date(Ie).getTime(),Ge=Date.now(),Je=Math.max(Ue-Ge,0);return se(Je,Re)}const he=1e3/30;function ie(Ie){return new Date(Ie).getTime()}const ue=Ie=>{const{value:Fe,format:Re="HH:mm:ss",onChange:Ue,onFinish:Ge}=Ie,Je=(0,He.Z)(),Qe=Oe.useRef(null),rt=()=>{Ge==null||Ge(),Qe.current&&(clearInterval(Qe.current),Qe.current=null)},$e=()=>{const at=ie(Fe);at>=Date.now()&&(Qe.current=setInterval(()=>{Je(),Ue==null||Ue(at-Date.now()),at<Date.now()&&rt()},he))};Oe.useEffect(()=>($e(),()=>{Qe.current&&(clearInterval(Qe.current),Qe.current=null)}),[Fe]);const qe=(at,ut)=>fe(at,Object.assign(Object.assign({},ut),{format:Re})),ot=at=>(0,Ne.Tm)(at,{title:void 0});return Oe.createElement(ne,Object.assign({},Ie,{valueRender:ot,formatter:qe}))};var me=Oe.memo(ue);ne.Countdown=me;var Ce=ne},15969:function(At,It,Te){"use strict";Te.d(It,{N:function(){return Oe}});const Oe=He=>({color:He.colorLink,textDecoration:"none",outline:"none",cursor:"pointer",transition:`color ${He.motionDurationSlow}`,"&:focus, &:hover":{color:He.colorLinkHover},"&:active":{color:He.colorLinkActive}})},1710:function(At,It,Te){"use strict";Te.d(It,{default:function(){return ml}});var Oe={},He="rc-table-internal-hook",Ne=Te(42978),be=Te(6089),_e=Te(34280),Me=Te(13697),ve=Te(59301),Ee=Te(4676);function Pe(Ft){var Wt=ve.createContext(void 0),cn=function(Nn){var kn=Nn.value,fr=Nn.children,ur=ve.useRef(kn);ur.current=kn;var tr=ve.useState(function(){return{getValue:function(){return ur.current},listeners:new Set}}),Ir=(0,Ne.Z)(tr,1),Sr=Ir[0];return(0,_e.Z)(function(){(0,Ee.unstable_batchedUpdates)(function(){Sr.listeners.forEach(function(wr){wr(kn)})})},[kn]),ve.createElement(Wt.Provider,{value:Sr},fr)};return{Context:Wt,Provider:cn,defaultValue:Ft}}function xe(Ft,Wt){var cn=(0,be.Z)(typeof Wt=="function"?Wt:function(wr){if(Wt===void 0)return wr;if(!Array.isArray(Wt))return wr[Wt];var ta={};return Wt.forEach(function(Yr){ta[Yr]=wr[Yr]}),ta}),An=ve.useContext(Ft==null?void 0:Ft.Context),Nn=An||{},kn=Nn.listeners,fr=Nn.getValue,ur=ve.useRef();ur.current=cn(An?fr():Ft==null?void 0:Ft.defaultValue);var tr=ve.useState({}),Ir=(0,Ne.Z)(tr,2),Sr=Ir[1];return(0,_e.Z)(function(){if(!An)return;function wr(ta){var Yr=cn(ta);(0,Me.Z)(ur.current,Yr,!0)||Sr({})}return kn.add(wr),function(){kn.delete(wr)}},[An]),ur.current}var pe=Te(54476),Ae=Te(8654);function Se(){var Ft=ve.createContext(null);function Wt(){return ve.useContext(Ft)}function cn(Nn,kn){var fr=(0,Ae.Yr)(Nn),ur=function(Ir,Sr){var wr=fr?{ref:Sr}:{},ta=ve.useRef(0),Yr=ve.useRef(Ir),Xr=Wt();return Xr!==null?ve.createElement(Nn,(0,pe.Z)({},Ir,wr)):((!kn||kn(Yr.current,Ir))&&(ta.current+=1),Yr.current=Ir,ve.createElement(Ft.Provider,{value:ta.current},ve.createElement(Nn,(0,pe.Z)({},Ir,wr))))};return fr?ve.forwardRef(ur):ur}function An(Nn,kn){var fr=(0,Ae.Yr)(Nn),ur=function(Ir,Sr){var wr=fr?{ref:Sr}:{};return Wt(),ve.createElement(Nn,(0,pe.Z)({},Ir,wr))};return fr?ve.memo(ve.forwardRef(ur),kn):ve.memo(ur,kn)}return{makeImmutable:cn,responseImmutable:An,useImmutableMark:Wt}}var ce=Se(),te=ce.makeImmutable,ne=ce.responseImmutable,le=ce.useImmutableMark,se=Se(),fe=se.makeImmutable,he=se.responseImmutable,ie=se.useImmutableMark,ue=Pe(),me=ue;function Ce(Ft,Wt){var cn=ve.useRef(0);cn.current+=1;var An=ve.useRef(Ft),Nn=[];Object.keys(Ft||{}).map(function(fr){var ur;(Ft==null?void 0:Ft[fr])!==((ur=An.current)===null||ur===void 0?void 0:ur[fr])&&Nn.push(fr)}),An.current=Ft;var kn=ve.useRef([]);return Nn.length&&(kn.current=Nn),ve.useDebugValue(cn.current),ve.useDebugValue(kn.current.join(", ")),Wt&&console.log("".concat(Wt,":"),cn.current,kn.current),cn.current}var Ie=null,Fe=ve.memo(function(){var Ft=Ce();return ve.createElement("h1",null,"Render Times: ",Ft)});Fe.displayName="RenderBlock";var Re=Te(76190),Ue=Te(33885),Ge=Te(20068),Je=Te(92310),Qe=Te.n(Je),rt=Te(80547),$e=Te(97938),qe=Te(48736),ot=ve.createContext({renderWithProps:!1}),at=ot,ut="RC_TABLE_KEY";function nt(Ft){return Ft==null?[]:Array.isArray(Ft)?Ft:[Ft]}function lt(Ft){var Wt=[],cn={};return Ft.forEach(function(An){for(var Nn=An||{},kn=Nn.key,fr=Nn.dataIndex,ur=kn||nt(fr).join("-")||ut;cn[ur];)ur="".concat(ur,"_next");cn[ur]=!0,Wt.push(ur)}),Wt}function yt(Ft){return Ft!=null}function ft(Ft){return Ft&&(0,Re.Z)(Ft)==="object"&&!Array.isArray(Ft)&&!ve.isValidElement(Ft)}function ct(Ft,Wt,cn,An,Nn,kn){var fr=ve.useContext(at),ur=ie(),tr=(0,rt.Z)(function(){if(yt(An))return[An];var Ir=Wt==null||Wt===""?[]:Array.isArray(Wt)?Wt:[Wt],Sr=(0,$e.Z)(Ft,Ir),wr=Sr,ta=void 0;if(Nn){var Yr=Nn(Sr,Ft,cn);ft(Yr)?(wr=Yr.children,ta=Yr.props,fr.renderWithProps=!0):wr=Yr}return[wr,ta]},[ur,Ft,An,Wt,Nn,cn],function(Ir,Sr){if(kn){var wr=(0,Ne.Z)(Ir,2),ta=wr[1],Yr=(0,Ne.Z)(Sr,2),Xr=Yr[1];return kn(Xr,ta)}return fr.renderWithProps?!0:!(0,Me.Z)(Ir,Sr,!0)});return tr}function vt(Ft,Wt,cn,An){var Nn=Ft+Wt-1;return Ft<=An&&Nn>=cn}function Ut(Ft,Wt){return xe(me,function(cn){var An=vt(Ft,Wt||1,cn.hoverStartRow,cn.hoverEndRow);return[An,cn.onHover]})}var Zt=function(Wt){var cn=Wt.ellipsis,An=Wt.rowType,Nn=Wt.children,kn,fr=cn===!0?{showTitle:!0}:cn;return fr&&(fr.showTitle||An==="header")&&(typeof Nn=="string"||typeof Nn=="number"?kn=Nn.toString():ve.isValidElement(Nn)&&typeof Nn.props.children=="string"&&(kn=Nn.props.children)),kn};function en(Ft){var Wt,cn,An,Nn,kn,fr,ur,tr,Ir=Ft.component,Sr=Ft.children,wr=Ft.ellipsis,ta=Ft.scope,Yr=Ft.prefixCls,Xr=Ft.className,xa=Ft.align,ma=Ft.record,Ka=Ft.render,Fr=Ft.dataIndex,Wa=Ft.renderIndex,Bi=Ft.shouldCellUpdate,Fi=Ft.index,Ai=Ft.rowType,Ni=Ft.colSpan,to=Ft.rowSpan,ii=Ft.fixLeft,Pi=Ft.fixRight,li=Ft.firstFixLeft,Za=Ft.lastFixLeft,qa=Ft.firstFixRight,ki=Ft.lastFixRight,Ao=Ft.appendNode,no=Ft.additionalProps,Oi=no===void 0?{}:no,Ke=Ft.isSticky,tt="".concat(Yr,"-cell"),it=xe(me,["supportSticky","allColumnsFixedLeft"]),pt=it.supportSticky,Dt=it.allColumnsFixedLeft,Lt=ct(ma,Fr,Wa,Sr,Ka,Bi),Gt=(0,Ne.Z)(Lt,2),zt=Gt[0],nn=Gt[1],Kt={},un=typeof ii=="number"&&pt,wn=typeof Pi=="number"&&pt;un&&(Kt.position="sticky",Kt.left=ii),wn&&(Kt.position="sticky",Kt.right=Pi);var xn=(Wt=(cn=(An=nn==null?void 0:nn.colSpan)!==null&&An!==void 0?An:Oi.colSpan)!==null&&cn!==void 0?cn:Ni)!==null&&Wt!==void 0?Wt:1,Zn=(Nn=(kn=(fr=nn==null?void 0:nn.rowSpan)!==null&&fr!==void 0?fr:Oi.rowSpan)!==null&&kn!==void 0?kn:to)!==null&&Nn!==void 0?Nn:1,Wn=Ut(Fi,Zn),Bn=(0,Ne.Z)(Wn,2),_n=Bn[0],Rn=Bn[1],Kn=function(Mr){var aa;ma&&Rn(Fi,Fi+Zn-1),Oi==null||(aa=Oi.onMouseEnter)===null||aa===void 0||aa.call(Oi,Mr)},Cr=function(Mr){var aa;ma&&Rn(-1,-1),Oi==null||(aa=Oi.onMouseLeave)===null||aa===void 0||aa.call(Oi,Mr)};if(xn===0||Zn===0)return null;var Ur=(ur=Oi.title)!==null&&ur!==void 0?ur:Zt({rowType:Ai,ellipsis:wr,children:zt}),Qa=Qe()(tt,Xr,(tr={},(0,Ge.Z)(tr,"".concat(tt,"-fix-left"),un&&pt),(0,Ge.Z)(tr,"".concat(tt,"-fix-left-first"),li&&pt),(0,Ge.Z)(tr,"".concat(tt,"-fix-left-last"),Za&&pt),(0,Ge.Z)(tr,"".concat(tt,"-fix-left-all"),Za&&Dt&&pt),(0,Ge.Z)(tr,"".concat(tt,"-fix-right"),wn&&pt),(0,Ge.Z)(tr,"".concat(tt,"-fix-right-first"),qa&&pt),(0,Ge.Z)(tr,"".concat(tt,"-fix-right-last"),ki&&pt),(0,Ge.Z)(tr,"".concat(tt,"-ellipsis"),wr),(0,Ge.Z)(tr,"".concat(tt,"-with-append"),Ao),(0,Ge.Z)(tr,"".concat(tt,"-fix-sticky"),(un||wn)&&Ke&&pt),(0,Ge.Z)(tr,"".concat(tt,"-row-hover"),!nn&&_n),tr),Oi.className,nn==null?void 0:nn.className),ea={};xa&&(ea.textAlign=xa);var pa=(0,Ue.Z)((0,Ue.Z)((0,Ue.Z)((0,Ue.Z)({},Kt),Oi.style),ea),nn==null?void 0:nn.style),oi=zt;return(0,Re.Z)(oi)==="object"&&!Array.isArray(oi)&&!ve.isValidElement(oi)&&(oi=null),wr&&(Za||qa)&&(oi=ve.createElement("span",{className:"".concat(tt,"-content")},oi)),ve.createElement(Ir,(0,pe.Z)({},nn,Oi,{className:Qa,style:pa,title:Ur,scope:ta,onMouseEnter:Kn,onMouseLeave:Cr,colSpan:xn!==1?xn:null,rowSpan:Zn!==1?Zn:null}),Ao,oi)}var mn=ve.memo(en);function Bt(Ft,Wt,cn,An,Nn,kn){var fr=cn[Ft]||{},ur=cn[Wt]||{},tr,Ir;fr.fixed==="left"?tr=An.left[Nn==="rtl"?Wt:Ft]:ur.fixed==="right"&&(Ir=An.right[Nn==="rtl"?Ft:Wt]);var Sr=!1,wr=!1,ta=!1,Yr=!1,Xr=cn[Wt+1],xa=cn[Ft-1],ma=!(kn!=null&&kn.children);if(Nn==="rtl"){if(tr!==void 0){var Ka=xa&&xa.fixed==="left";Yr=!Ka&&ma}else if(Ir!==void 0){var Fr=Xr&&Xr.fixed==="right";ta=!Fr&&ma}}else if(tr!==void 0){var Wa=Xr&&Xr.fixed==="left";Sr=!Wa&&ma}else if(Ir!==void 0){var Bi=xa&&xa.fixed==="right";wr=!Bi&&ma}return{fixLeft:tr,fixRight:Ir,lastFixLeft:Sr,firstFixRight:wr,lastFixRight:ta,firstFixLeft:Yr,isSticky:An.isSticky}}var tn=ve.createContext({}),on=tn;function Mn(Ft){var Wt=Ft.className,cn=Ft.index,An=Ft.children,Nn=Ft.colSpan,kn=Nn===void 0?1:Nn,fr=Ft.rowSpan,ur=Ft.align,tr=xe(me,["prefixCls","direction"]),Ir=tr.prefixCls,Sr=tr.direction,wr=ve.useContext(on),ta=wr.scrollColumnIndex,Yr=wr.stickyOffsets,Xr=wr.flattenColumns,xa=wr.columns,ma=cn+kn-1,Ka=ma+1===ta?kn+1:kn,Fr=Bt(cn,cn+Ka-1,Xr,Yr,Sr,xa==null?void 0:xa[cn]);return ve.createElement(mn,(0,pe.Z)({className:Wt,index:cn,component:"td",prefixCls:Ir,record:null,dataIndex:null,align:ur,colSpan:Ka,rowSpan:fr,render:function(){return An}},Fr))}var Dn=Te(75931),sn=["children"];function rn(Ft){var Wt=Ft.children,cn=(0,Dn.Z)(Ft,sn);return ve.createElement("tr",cn,Wt)}function Ht(Ft){var Wt=Ft.children;return Wt}Ht.Row=rn,Ht.Cell=Mn;var Tt=Ht;function St(Ft){var Wt=Ft.children,cn=Ft.stickyOffsets,An=Ft.flattenColumns,Nn=Ft.columns,kn=xe(me,"prefixCls"),fr=An.length-1,ur=An[fr],tr=ve.useMemo(function(){return{stickyOffsets:cn,flattenColumns:An,scrollColumnIndex:ur!=null&&ur.scrollbar?fr:null,columns:Nn}},[ur,An,fr,cn,Nn]);return ve.createElement(on.Provider,{value:tr},ve.createElement("tfoot",{className:"".concat(kn,"-summary")},Wt))}var Qt=he(St),gt=Tt,bt=Te(70425),Yt=Te(29301),kt=Te(29194),Mt=Te(24514),ln=Te(75152),zn=Te(26112);function Gn(Ft,Wt,cn,An,Nn,kn,fr){Ft.push({record:Wt,indent:cn,index:fr});var ur=kn(Wt),tr=Nn==null?void 0:Nn.has(ur);if(Wt&&Array.isArray(Wt[An])&&tr)for(var Ir=0;Ir<Wt[An].length;Ir+=1)Gn(Ft,Wt[An][Ir],cn+1,An,Nn,kn,Ir)}function Hn(Ft,Wt,cn,An){var Nn=ve.useMemo(function(){if(cn!=null&&cn.size){for(var kn=[],fr=0;fr<(Ft==null?void 0:Ft.length);fr+=1){var ur=Ft[fr];Gn(kn,ur,0,Wt,cn,An,fr)}return kn}return Ft==null?void 0:Ft.map(function(tr,Ir){return{record:tr,indent:0,index:Ir}})},[Ft,Wt,cn,An]);return Nn}function nr(Ft){var Wt=Ft.prefixCls,cn=Ft.children,An=Ft.component,Nn=Ft.cellComponent,kn=Ft.className,fr=Ft.expanded,ur=Ft.colSpan,tr=Ft.isEmpty,Ir=xe(me,["scrollbarSize","fixHeader","fixColumn","componentWidth","horizonScroll"]),Sr=Ir.scrollbarSize,wr=Ir.fixHeader,ta=Ir.fixColumn,Yr=Ir.componentWidth,Xr=Ir.horizonScroll,xa=cn;return(tr?Xr&&Yr:ta)&&(xa=ve.createElement("div",{style:{width:Yr-(wr?Sr:0),position:"sticky",left:0,overflow:"hidden"},className:"".concat(Wt,"-expanded-row-fixed")},xa)),ve.createElement(An,{className:kn,style:{display:fr?null:"none"}},ve.createElement(mn,{component:Nn,prefixCls:Wt,colSpan:ur},xa))}var Xn=nr;function qt(Ft,Wt,cn,An){var Nn=xe(me,["prefixCls","fixedInfoList","flattenColumns","expandableType","expandRowByClick","onTriggerExpand","rowClassName","expandedRowClassName","indentSize","expandIcon","expandedRowRender","expandIconColumnIndex","expandedKeys","childrenColumnName","rowExpandable","onRow"]),kn=Nn.flattenColumns,fr=Nn.expandableType,ur=Nn.expandedKeys,tr=Nn.childrenColumnName,Ir=Nn.onTriggerExpand,Sr=Nn.rowExpandable,wr=Nn.onRow,ta=Nn.expandRowByClick,Yr=Nn.rowClassName,Xr=fr==="nest",xa=fr==="row"&&(!Sr||Sr(Ft)),ma=xa||Xr,Ka=ur&&ur.has(Wt),Fr=tr&&Ft&&Ft[tr],Wa=(0,bt.useEvent)(Ir),Bi=wr==null?void 0:wr(Ft,cn),Fi=Bi==null?void 0:Bi.onClick,Ai=function(Pi){ta&&ma&&Ir(Ft,Pi);for(var li=arguments.length,Za=new Array(li>1?li-1:0),qa=1;qa<li;qa++)Za[qa-1]=arguments[qa];Fi==null||Fi.apply(void 0,[Pi].concat(Za))},Ni;typeof Yr=="string"?Ni=Yr:typeof Yr=="function"&&(Ni=Yr(Ft,cn,An));var to=lt(kn);return(0,Ue.Z)((0,Ue.Z)({},Nn),{},{columnsKey:to,nestExpandable:Xr,expanded:Ka,hasNestChildren:Fr,record:Ft,onTriggerExpand:Wa,rowSupportExpand:xa,expandable:ma,rowProps:(0,Ue.Z)((0,Ue.Z)({},Bi),{},{className:Qe()(Ni,Bi==null?void 0:Bi.className),onClick:Ai})})}function vn(Ft,Wt,cn,An,Nn){var kn=Ft.record,fr=Ft.prefixCls,ur=Ft.columnsKey,tr=Ft.fixedInfoList,Ir=Ft.expandIconColumnIndex,Sr=Ft.nestExpandable,wr=Ft.indentSize,ta=Ft.expandIcon,Yr=Ft.expanded,Xr=Ft.hasNestChildren,xa=Ft.onTriggerExpand,ma=ur[cn],Ka=tr[cn],Fr;cn===(Ir||0)&&Sr&&(Fr=ve.createElement(ve.Fragment,null,ve.createElement("span",{style:{paddingLeft:"".concat(wr*An,"px")},className:"".concat(fr,"-row-indent indent-level-").concat(An)}),ta({prefixCls:fr,expanded:Yr,expandable:Xr,record:kn,onExpand:xa})));var Wa;return Wt.onCell&&(Wa=Wt.onCell(kn,Nn)),{key:ma,fixedInfo:Ka,appendCellNode:Fr,additionalCellProps:Wa||{}}}function Un(Ft){var Wt=Ft.className,cn=Ft.style,An=Ft.record,Nn=Ft.index,kn=Ft.renderIndex,fr=Ft.rowKey,ur=Ft.indent,tr=ur===void 0?0:ur,Ir=Ft.rowComponent,Sr=Ft.cellComponent,wr=Ft.scopeCellComponent,ta=qt(An,fr,Nn,tr),Yr=ta.prefixCls,Xr=ta.flattenColumns,xa=ta.expandedRowClassName,ma=ta.expandedRowRender,Ka=ta.rowProps,Fr=ta.expanded,Wa=ta.rowSupportExpand,Bi=ve.useState(!1),Fi=(0,Ne.Z)(Bi,2),Ai=Fi[0],Ni=Fi[1];ve.useEffect(function(){Fr&&Ni(!0)},[Fr]);var to=ve.createElement(Ir,(0,pe.Z)({},Ka,{"data-row-key":fr,className:Qe()(Wt,"".concat(Yr,"-row"),"".concat(Yr,"-row-level-").concat(tr),Ka==null?void 0:Ka.className),style:(0,Ue.Z)((0,Ue.Z)({},cn),Ka==null?void 0:Ka.style)}),Xr.map(function(Za,qa){var ki=Za.render,Ao=Za.dataIndex,no=Za.className,Oi=vn(ta,Za,qa,tr,Nn),Ke=Oi.key,tt=Oi.fixedInfo,it=Oi.appendCellNode,pt=Oi.additionalCellProps;return ve.createElement(mn,(0,pe.Z)({className:no,ellipsis:Za.ellipsis,align:Za.align,scope:Za.rowScope,component:Za.rowScope?wr:Sr,prefixCls:Yr,key:Ke,record:An,index:Nn,renderIndex:kn,dataIndex:Ao,render:ki,shouldCellUpdate:Za.shouldCellUpdate},tt,{appendNode:it,additionalProps:pt}))})),ii;if(Wa&&(Ai||Fr)){var Pi=ma(An,Nn,tr+1,Fr),li=xa&&xa(An,Nn,tr);ii=ve.createElement(Xn,{expanded:Fr,className:Qe()("".concat(Yr,"-expanded-row"),"".concat(Yr,"-expanded-row-level-").concat(tr+1),li),prefixCls:Yr,component:Ir,cellComponent:Sr,colSpan:Xr.length,isEmpty:!1},Pi)}return ve.createElement(ve.Fragment,null,to,ii)}Un.displayName="BodyRow";var Ln=he(Un);function yr(Ft){var Wt=Ft.columnKey,cn=Ft.onColumnResize,An=ve.useRef();return ve.useEffect(function(){An.current&&cn(Wt,An.current.offsetWidth)},[]),ve.createElement(Yt.Z,{data:Wt},ve.createElement("td",{ref:An,style:{padding:0,border:0,height:0}},ve.createElement("div",{style:{height:0,overflow:"hidden"}},"\xA0")))}function kr(Ft){var Wt=Ft.prefixCls,cn=Ft.columnsKey,An=Ft.onColumnResize;return ve.createElement("tr",{"aria-hidden":"true",className:"".concat(Wt,"-measure-row"),style:{height:0,fontSize:0}},ve.createElement(Yt.Z.Collection,{onBatchResize:function(kn){kn.forEach(function(fr){var ur=fr.data,tr=fr.size;An(ur,tr.offsetWidth)})}},cn.map(function(Nn){return ve.createElement(yr,{key:Nn,columnKey:Nn,onColumnResize:An})})))}function Dr(Ft){var Wt=Ft.data,cn=Ft.measureColumnWidth,An=xe(me,["prefixCls","getComponent","onColumnResize","flattenColumns","getRowKey","expandedKeys","childrenColumnName","emptyNode"]),Nn=An.prefixCls,kn=An.getComponent,fr=An.onColumnResize,ur=An.flattenColumns,tr=An.getRowKey,Ir=An.expandedKeys,Sr=An.childrenColumnName,wr=An.emptyNode,ta=Hn(Wt,Sr,Ir,tr),Yr=ve.useRef({renderWithProps:!1}),Xr=kn(["body","wrapper"],"tbody"),xa=kn(["body","row"],"tr"),ma=kn(["body","cell"],"td"),Ka=kn(["body","cell"],"th"),Fr;Wt.length?Fr=ta.map(function(Bi,Fi){var Ai=Bi.record,Ni=Bi.indent,to=Bi.index,ii=tr(Ai,Fi);return ve.createElement(Ln,{key:ii,rowKey:ii,record:Ai,index:Fi,renderIndex:to,rowComponent:xa,cellComponent:ma,scopeCellComponent:Ka,getRowKey:tr,indent:Ni})}):Fr=ve.createElement(Xn,{expanded:!0,className:"".concat(Nn,"-placeholder"),prefixCls:Nn,component:xa,cellComponent:ma,colSpan:ur.length,isEmpty:!0},wr);var Wa=lt(ur);return ve.createElement(at.Provider,{value:Yr.current},ve.createElement(Xr,{className:"".concat(Nn,"-tbody")},cn&&ve.createElement(kr,{prefixCls:Nn,columnsKey:Wa,onColumnResize:fr}),Fr))}Dr.displayName="Body";var Gr=he(Dr),Ma=["expandable"],Ja="RC_TABLE_INTERNAL_COL_DEFINE";function Na(Ft){var Wt=Ft.expandable,cn=(0,Dn.Z)(Ft,Ma),An;return"expandable"in Ft?An=(0,Ue.Z)((0,Ue.Z)({},cn),Wt):An=cn,An.showExpandColumn===!1&&(An.expandIconColumnIndex=-1),An}var Da=["columnType"];function Di(Ft){for(var Wt=Ft.colWidths,cn=Ft.columns,An=Ft.columCount,Nn=[],kn=An||cn.length,fr=!1,ur=kn-1;ur>=0;ur-=1){var tr=Wt[ur],Ir=cn&&cn[ur],Sr=Ir&&Ir[Ja];if(tr||Sr||fr){var wr=Sr||{},ta=wr.columnType,Yr=(0,Dn.Z)(wr,Da);Nn.unshift(ve.createElement("col",(0,pe.Z)({key:ur,style:{width:tr}},Yr))),fr=!0}}return ve.createElement("colgroup",null,Nn)}var _a=Di,Vr=Te(94480),Ya=["className","noData","columns","flattenColumns","colWidths","columCount","stickyOffsets","direction","fixHeader","stickyTopOffset","stickyBottomOffset","stickyClassName","onScroll","maxContentScroll","children"];function ui(Ft,Wt){return(0,ve.useMemo)(function(){for(var cn=[],An=0;An<Wt;An+=1){var Nn=Ft[An];if(Nn!==void 0)cn[An]=Nn;else return null}return cn},[Ft.join("_"),Wt])}var mr=ve.forwardRef(function(Ft,Wt){var cn=Ft.className,An=Ft.noData,Nn=Ft.columns,kn=Ft.flattenColumns,fr=Ft.colWidths,ur=Ft.columCount,tr=Ft.stickyOffsets,Ir=Ft.direction,Sr=Ft.fixHeader,wr=Ft.stickyTopOffset,ta=Ft.stickyBottomOffset,Yr=Ft.stickyClassName,Xr=Ft.onScroll,xa=Ft.maxContentScroll,ma=Ft.children,Ka=(0,Dn.Z)(Ft,Ya),Fr=xe(me,["prefixCls","scrollbarSize","isSticky"]),Wa=Fr.prefixCls,Bi=Fr.scrollbarSize,Fi=Fr.isSticky,Ai=Fi&&!Sr?0:Bi,Ni=ve.useRef(null),to=ve.useCallback(function(no){(0,Ae.mH)(Wt,no),(0,Ae.mH)(Ni,no)},[]);ve.useEffect(function(){var no;function Oi(Ke){var tt=Ke,it=tt.currentTarget,pt=tt.deltaX;pt&&(Xr({currentTarget:it,scrollLeft:it.scrollLeft+pt}),Ke.preventDefault())}return(no=Ni.current)===null||no===void 0||no.addEventListener("wheel",Oi),function(){var Ke;(Ke=Ni.current)===null||Ke===void 0||Ke.removeEventListener("wheel",Oi)}},[]);var ii=ve.useMemo(function(){return kn.every(function(no){return no.width})},[kn]),Pi=kn[kn.length-1],li={fixed:Pi?Pi.fixed:null,scrollbar:!0,onHeaderCell:function(){return{className:"".concat(Wa,"-cell-scrollbar")}}},Za=(0,ve.useMemo)(function(){return Ai?[].concat((0,Vr.Z)(Nn),[li]):Nn},[Ai,Nn]),qa=(0,ve.useMemo)(function(){return Ai?[].concat((0,Vr.Z)(kn),[li]):kn},[Ai,kn]),ki=(0,ve.useMemo)(function(){var no=tr.right,Oi=tr.left;return(0,Ue.Z)((0,Ue.Z)({},tr),{},{left:Ir==="rtl"?[].concat((0,Vr.Z)(Oi.map(function(Ke){return Ke+Ai})),[0]):Oi,right:Ir==="rtl"?no:[].concat((0,Vr.Z)(no.map(function(Ke){return Ke+Ai})),[0]),isSticky:Fi})},[Ai,tr,Fi]),Ao=ui(fr,ur);return ve.createElement("div",{style:(0,Ue.Z)({overflow:"hidden"},Fi?{top:wr,bottom:ta}:{}),ref:to,className:Qe()(cn,(0,Ge.Z)({},Yr,!!Yr))},ve.createElement("table",{style:{tableLayout:"fixed",visibility:An||Ao?null:"hidden"}},(!An||!xa||ii)&&ve.createElement(_a,{colWidths:Ao?[].concat((0,Vr.Z)(Ao),[Ai]):[],columCount:ur+1,columns:qa}),ma((0,Ue.Z)((0,Ue.Z)({},Ka),{},{stickyOffsets:ki,columns:Za,flattenColumns:qa}))))});mr.displayName="FixedHolder";var Er=ve.memo(mr);function ba(Ft){var Wt=Ft.cells,cn=Ft.stickyOffsets,An=Ft.flattenColumns,Nn=Ft.rowComponent,kn=Ft.cellComponent,fr=Ft.tdCellComponent,ur=Ft.onHeaderRow,tr=Ft.index,Ir=xe(me,["prefixCls","direction"]),Sr=Ir.prefixCls,wr=Ir.direction,ta;ur&&(ta=ur(Wt.map(function(Xr){return Xr.column}),tr));var Yr=lt(Wt.map(function(Xr){return Xr.column}));return ve.createElement(Nn,ta,Wt.map(function(Xr,xa){var ma=Xr.column,Ka=Bt(Xr.colStart,Xr.colEnd,An,cn,wr,ma),Fr;return ma&&ma.onHeaderCell&&(Fr=Xr.column.onHeaderCell(ma)),ve.createElement(mn,(0,pe.Z)({},Xr,{scope:ma.title?Xr.colSpan>1?"colgroup":"col":null,ellipsis:ma.ellipsis,align:ma.align,component:ma.title?kn:fr,prefixCls:Sr,key:Yr[xa]},Ka,{additionalProps:Fr,rowType:"header"}))}))}ba.displayName="HeaderRow";var Fn=ba;function gr(Ft){var Wt=[];function cn(fr,ur){var tr=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;Wt[tr]=Wt[tr]||[];var Ir=ur,Sr=fr.filter(Boolean).map(function(wr){var ta={key:wr.key,className:wr.className||"",children:wr.title,column:wr,colStart:Ir},Yr=1,Xr=wr.children;return Xr&&Xr.length>0&&(Yr=cn(Xr,Ir,tr+1).reduce(function(xa,ma){return xa+ma},0),ta.hasSubColumns=!0),"colSpan"in wr&&(Yr=wr.colSpan),"rowSpan"in wr&&(ta.rowSpan=wr.rowSpan),ta.colSpan=Yr,ta.colEnd=ta.colStart+Yr-1,Wt[tr].push(ta),Ir+=Yr,Yr});return Sr}cn(Ft,0);for(var An=Wt.length,Nn=function(ur){Wt[ur].forEach(function(tr){!("rowSpan"in tr)&&!tr.hasSubColumns&&(tr.rowSpan=An-ur)})},kn=0;kn<An;kn+=1)Nn(kn);return Wt}function br(Ft){var Wt=Ft.stickyOffsets,cn=Ft.columns,An=Ft.flattenColumns,Nn=Ft.onHeaderRow,kn=xe(me,["prefixCls","getComponent"]),fr=kn.prefixCls,ur=kn.getComponent,tr=ve.useMemo(function(){return gr(cn)},[cn]),Ir=ur(["header","wrapper"],"thead"),Sr=ur(["header","row"],"tr"),wr=ur(["header","cell"],"th"),ta=ur(["header","cell"],"td");return ve.createElement(Ir,{className:"".concat(fr,"-thead")},tr.map(function(Yr,Xr){var xa=ve.createElement(Fn,{key:Xr,flattenColumns:An,cells:Yr,stickyOffsets:Wt,rowComponent:Sr,cellComponent:wr,tdCellComponent:ta,onHeaderRow:Nn,index:Xr});return xa}))}var _r=he(br),ha=Te(11592);function Ct(Ft){var Wt=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"";return typeof Wt=="number"?Wt:Wt.endsWith("%")?Ft*parseFloat(Wt)/100:null}function we(Ft,Wt){return ve.useMemo(function(){if(Wt&&Wt>0){var cn=0,An=0;Ft.forEach(function(Ir){var Sr=Ct(Wt,Ir.width);Sr?cn+=Sr:An+=1});var Nn=Wt-cn,kn=An,fr=Nn/An,ur=0,tr=Ft.map(function(Ir){var Sr=(0,Ue.Z)({},Ir),wr=Ct(Wt,Sr.width);if(wr)Sr.width=wr;else{var ta=Math.floor(fr);Sr.width=kn===1?Nn:ta,Nn-=ta,kn-=1}return ur+=Sr.width,Sr});return[tr,ur]}return[Ft,Wt]},[Ft,Wt])}var Be=["children"],Le=["fixed"];function je(Ft){return(0,ha.Z)(Ft).filter(function(Wt){return ve.isValidElement(Wt)}).map(function(Wt){var cn=Wt.key,An=Wt.props,Nn=An.children,kn=(0,Dn.Z)(An,Be),fr=(0,Ue.Z)({key:cn},kn);return Nn&&(fr.children=je(Nn)),fr})}function Xe(Ft){var Wt=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"key";return Ft.filter(function(cn){return cn&&(0,Re.Z)(cn)==="object"}).reduce(function(cn,An,Nn){var kn=An.fixed,fr=kn===!0?"left":kn,ur="".concat(Wt,"-").concat(Nn),tr=An.children;return tr&&tr.length>0?[].concat((0,Vr.Z)(cn),(0,Vr.Z)(Xe(tr,ur).map(function(Ir){return(0,Ue.Z)({fixed:fr},Ir)}))):[].concat((0,Vr.Z)(cn),[(0,Ue.Z)((0,Ue.Z)({key:ur},An),{},{fixed:fr})])},[])}function Et(Ft){for(var Wt=!0,cn=0;cn<Ft.length;cn+=1){var An=Ft[cn];if(Wt&&An.fixed!=="left")Wt=!1;else if(!Wt&&An.fixed==="left"){warning(!1,"Index ".concat(cn-1," of `columns` missing `fixed='left'` prop."));break}}for(var Nn=!0,kn=Ft.length-1;kn>=0;kn-=1){var fr=Ft[kn];if(Nn&&fr.fixed!=="right")Nn=!1;else if(!Nn&&fr.fixed==="right"){warning(!1,"Index ".concat(kn+1," of `columns` missing `fixed='right'` prop."));break}}}function xt(Ft){return Ft.map(function(Wt){var cn=Wt.fixed,An=(0,Dn.Z)(Wt,Le),Nn=cn;return cn==="left"?Nn="right":cn==="right"&&(Nn="left"),(0,Ue.Z)({fixed:Nn},An)})}function Jt(Ft,Wt){var cn=Ft.prefixCls,An=Ft.columns,Nn=Ft.children,kn=Ft.expandable,fr=Ft.expandedKeys,ur=Ft.columnTitle,tr=Ft.getRowKey,Ir=Ft.onTriggerExpand,Sr=Ft.expandIcon,wr=Ft.rowExpandable,ta=Ft.expandIconColumnIndex,Yr=Ft.direction,Xr=Ft.expandRowByClick,xa=Ft.columnWidth,ma=Ft.fixed,Ka=Ft.scrollWidth,Fr=ve.useMemo(function(){return An||je(Nn)},[An,Nn]),Wa=ve.useMemo(function(){if(kn){var Pi,li=Fr.slice();if(!li.includes(Oe)){var Za=ta||0;Za>=0&&li.splice(Za,0,Oe)}var qa=li.indexOf(Oe);li=li.filter(function(Oi,Ke){return Oi!==Oe||Ke===qa});var ki=Fr[qa],Ao;(ma==="left"||ma)&&!ta?Ao="left":(ma==="right"||ma)&&ta===Fr.length?Ao="right":Ao=ki?ki.fixed:null;var no=(Pi={},(0,Ge.Z)(Pi,Ja,{className:"".concat(cn,"-expand-icon-col"),columnType:"EXPAND_COLUMN"}),(0,Ge.Z)(Pi,"title",ur),(0,Ge.Z)(Pi,"fixed",Ao),(0,Ge.Z)(Pi,"className","".concat(cn,"-row-expand-icon-cell")),(0,Ge.Z)(Pi,"width",xa),(0,Ge.Z)(Pi,"render",function(Ke,tt,it){var pt=tr(tt,it),Dt=fr.has(pt),Lt=wr?wr(tt):!0,Gt=Sr({prefixCls:cn,expanded:Dt,expandable:Lt,record:tt,onExpand:Ir});return Xr?ve.createElement("span",{onClick:function(nn){return nn.stopPropagation()}},Gt):Gt}),Pi);return li.map(function(Oi){return Oi===Oe?no:Oi})}return Fr.filter(function(Oi){return Oi!==Oe})},[kn,Fr,tr,fr,Sr,Yr]),Bi=ve.useMemo(function(){var Pi=Wa;return Wt&&(Pi=Wt(Pi)),Pi.length||(Pi=[{render:function(){return null}}]),Pi},[Wt,Wa,Yr]),Fi=ve.useMemo(function(){return Yr==="rtl"?xt(Xe(Bi)):Xe(Bi)},[Bi,Yr,Ka]),Ai=we(Fi,Ka),Ni=(0,Ne.Z)(Ai,2),to=Ni[0],ii=Ni[1];return[Bi,to,ii]}var Vt=Jt;function fn(Ft){var Wt,cn=Ft.prefixCls,An=Ft.record,Nn=Ft.onExpand,kn=Ft.expanded,fr=Ft.expandable,ur="".concat(cn,"-row-expand-icon");if(!fr)return ve.createElement("span",{className:Qe()(ur,"".concat(cn,"-row-spaced"))});var tr=function(Sr){Nn(An,Sr),Sr.stopPropagation()};return ve.createElement("span",{className:Qe()(ur,(Wt={},(0,Ge.Z)(Wt,"".concat(cn,"-row-expanded"),kn),(0,Ge.Z)(Wt,"".concat(cn,"-row-collapsed"),!kn),Wt)),onClick:tr})}function dn(Ft,Wt,cn){var An=[];function Nn(kn){(kn||[]).forEach(function(fr,ur){An.push(Wt(fr,ur)),Nn(fr[cn])})}return Nn(Ft),An}function Vn(Ft,Wt,cn){var An=Na(Ft),Nn=An.expandIcon,kn=An.expandedRowKeys,fr=An.defaultExpandedRowKeys,ur=An.defaultExpandAllRows,tr=An.expandedRowRender,Ir=An.onExpand,Sr=An.onExpandedRowsChange,wr=An.childrenColumnName,ta=Nn||fn,Yr=wr||"children",Xr=ve.useMemo(function(){return tr?"row":Ft.expandable&&Ft.internalHooks===He&&Ft.expandable.__PARENT_RENDER_ICON__||Wt.some(function(Fi){return Fi&&(0,Re.Z)(Fi)==="object"&&Fi[Yr]})?"nest":!1},[!!tr,Wt]),xa=ve.useState(function(){return fr||(ur?dn(Wt,cn,Yr):[])}),ma=(0,Ne.Z)(xa,2),Ka=ma[0],Fr=ma[1],Wa=ve.useMemo(function(){return new Set(kn||Ka||[])},[kn,Ka]),Bi=ve.useCallback(function(Fi){var Ai=cn(Fi,Wt.indexOf(Fi)),Ni,to=Wa.has(Ai);to?(Wa.delete(Ai),Ni=(0,Vr.Z)(Wa)):Ni=[].concat((0,Vr.Z)(Wa),[Ai]),Fr(Ni),Ir&&Ir(!to,Fi),Sr&&Sr(Ni)},[cn,Wa,Wt,Ir,Sr]);return[An,Xr,Wa,ta,Yr,Bi]}function Pn(Ft,Wt,cn,An){var Nn=Ft.map(function(kn,fr){return Bt(fr,fr,Ft,Wt,cn,An==null?void 0:An[fr])});return(0,rt.Z)(function(){return Nn},[Nn],function(kn,fr){return!(0,Me.Z)(kn,fr)})}function Jn(Ft){var Wt=(0,ve.useRef)(Ft),cn=(0,ve.useState)({}),An=(0,Ne.Z)(cn,2),Nn=An[1],kn=(0,ve.useRef)(null),fr=(0,ve.useRef)([]);function ur(tr){fr.current.push(tr);var Ir=Promise.resolve();kn.current=Ir,Ir.then(function(){if(kn.current===Ir){var Sr=fr.current,wr=Wt.current;fr.current=[],Sr.forEach(function(ta){Wt.current=ta(Wt.current)}),kn.current=null,wr!==Wt.current&&Nn({})}})}return(0,ve.useEffect)(function(){return function(){kn.current=null}},[]),[Wt.current,ur]}function $n(Ft){var Wt=(0,ve.useRef)(Ft||null),cn=(0,ve.useRef)();function An(){window.clearTimeout(cn.current)}function Nn(fr){Wt.current=fr,An(),cn.current=window.setTimeout(function(){Wt.current=null,cn.current=void 0},100)}function kn(){return Wt.current}return(0,ve.useEffect)(function(){return An},[]),[Nn,kn]}function hr(){var Ft=ve.useState(-1),Wt=(0,Ne.Z)(Ft,2),cn=Wt[0],An=Wt[1],Nn=ve.useState(-1),kn=(0,Ne.Z)(Nn,2),fr=kn[0],ur=kn[1],tr=ve.useCallback(function(Ir,Sr){An(Ir),ur(Sr)},[]);return[cn,fr,tr]}var hn=Te(47273),an=(0,hn.Z)()?window:null;function In(Ft,Wt){var cn=(0,Re.Z)(Ft)==="object"?Ft:{},An=cn.offsetHeader,Nn=An===void 0?0:An,kn=cn.offsetSummary,fr=kn===void 0?0:kn,ur=cn.offsetScroll,tr=ur===void 0?0:ur,Ir=cn.getContainer,Sr=Ir===void 0?function(){return an}:Ir,wr=Sr()||an;return ve.useMemo(function(){var ta=!!Ft;return{isSticky:ta,stickyClassName:ta?"".concat(Wt,"-sticky-holder"):"",offsetHeader:Nn,offsetSummary:fr,offsetScroll:tr,container:wr}},[tr,Nn,fr,Wt,wr])}function jn(Ft,Wt,cn){var An=(0,ve.useMemo)(function(){for(var Nn=[],kn=[],fr=0,ur=0,tr=0;tr<Wt;tr+=1)if(cn==="rtl"){kn[tr]=ur,ur+=Ft[tr]||0;var Ir=Wt-tr-1;Nn[Ir]=fr,fr+=Ft[Ir]||0}else{Nn[tr]=fr,fr+=Ft[tr]||0;var Sr=Wt-tr-1;kn[Sr]=ur,ur+=Ft[Sr]||0}return{left:Nn,right:kn}},[Ft,Wt,cn]);return An}var cr=jn;function or(Ft){var Wt=Ft.className,cn=Ft.children;return ve.createElement("div",{className:Wt},cn)}var Qn=or,dr=Te(8224),xr=Te(55468),On=function(Wt,cn){var An,Nn,kn=Wt.scrollBodyRef,fr=Wt.onScroll,ur=Wt.offsetScroll,tr=Wt.container,Ir=xe(me,"prefixCls"),Sr=((An=kn.current)===null||An===void 0?void 0:An.scrollWidth)||0,wr=((Nn=kn.current)===null||Nn===void 0?void 0:Nn.clientWidth)||0,ta=Sr&&wr*(wr/Sr),Yr=ve.useRef(),Xr=Jn({scrollLeft:0,isHiddenScrollBar:!1}),xa=(0,Ne.Z)(Xr,2),ma=xa[0],Ka=xa[1],Fr=ve.useRef({delta:0,x:0}),Wa=ve.useState(!1),Bi=(0,Ne.Z)(Wa,2),Fi=Bi[0],Ai=Bi[1],Ni=function(){Ai(!1)},to=function(qa){qa.persist(),Fr.current.delta=qa.pageX-ma.scrollLeft,Fr.current.x=0,Ai(!0),qa.preventDefault()},ii=function(qa){var ki,Ao=qa||((ki=window)===null||ki===void 0?void 0:ki.event),no=Ao.buttons;if(!Fi||no===0){Fi&&Ai(!1);return}var Oi=Fr.current.x+qa.pageX-Fr.current.x-Fr.current.delta;Oi<=0&&(Oi=0),Oi+ta>=wr&&(Oi=wr-ta),fr({scrollLeft:Oi/wr*(Sr+2)}),Fr.current.x=qa.pageX},Pi=function(){if(kn.current){var qa=(0,xr.os)(kn.current).top,ki=qa+kn.current.offsetHeight,Ao=tr===window?document.documentElement.scrollTop+window.innerHeight:(0,xr.os)(tr).top+tr.clientHeight;ki-(0,ln.Z)()<=Ao||qa>=Ao-ur?Ka(function(no){return(0,Ue.Z)((0,Ue.Z)({},no),{},{isHiddenScrollBar:!0})}):Ka(function(no){return(0,Ue.Z)((0,Ue.Z)({},no),{},{isHiddenScrollBar:!1})})}},li=function(qa){Ka(function(ki){return(0,Ue.Z)((0,Ue.Z)({},ki),{},{scrollLeft:qa/Sr*wr||0})})};return ve.useImperativeHandle(cn,function(){return{setScrollLeft:li}}),ve.useEffect(function(){var Za=(0,dr.Z)(document.body,"mouseup",Ni,!1),qa=(0,dr.Z)(document.body,"mousemove",ii,!1);return Pi(),function(){Za.remove(),qa.remove()}},[ta,Fi]),ve.useEffect(function(){var Za=(0,dr.Z)(tr,"scroll",Pi,!1),qa=(0,dr.Z)(window,"resize",Pi,!1);return function(){Za.remove(),qa.remove()}},[tr]),ve.useEffect(function(){ma.isHiddenScrollBar||Ka(function(Za){var qa=kn.current;return qa?(0,Ue.Z)((0,Ue.Z)({},Za),{},{scrollLeft:qa.scrollLeft/qa.scrollWidth*qa.clientWidth}):Za})},[ma.isHiddenScrollBar]),Sr<=wr||!ta||ma.isHiddenScrollBar?null:ve.createElement("div",{style:{height:(0,ln.Z)(),width:wr,bottom:ur},className:"".concat(Ir,"-sticky-scroll")},ve.createElement("div",{onMouseDown:to,ref:Yr,className:Qe()("".concat(Ir,"-sticky-scroll-bar"),(0,Ge.Z)({},"".concat(Ir,"-sticky-scroll-bar-active"),Fi)),style:{width:"".concat(ta,"px"),transform:"translate3d(".concat(ma.scrollLeft,"px, 0, 0)")}}))},vr=ve.forwardRef(On);function Yn(Ft){return null}var jr=Yn;function ri(Ft){return null}var vi=ri,ci="rc-table",Kr=[],Ia={};function Ta(){return"No Data"}function la(Ft){var Wt,cn=(0,Ue.Z)({rowKey:"key",prefixCls:ci,emptyText:Ta},Ft),An=cn.prefixCls,Nn=cn.className,kn=cn.rowClassName,fr=cn.style,ur=cn.data,tr=cn.rowKey,Ir=cn.scroll,Sr=cn.tableLayout,wr=cn.direction,ta=cn.title,Yr=cn.footer,Xr=cn.summary,xa=cn.caption,ma=cn.id,Ka=cn.showHeader,Fr=cn.components,Wa=cn.emptyText,Bi=cn.onRow,Fi=cn.onHeaderRow,Ai=cn.internalHooks,Ni=cn.transformColumns,to=cn.internalRefs,ii=cn.tailor,Pi=cn.sticky,li=ur||Kr,Za=!!li.length,qa=Ai===He,ki=ve.useCallback(function(_s,fi){return(0,$e.Z)(Fr,_s)||fi},[Fr]),Ao=ve.useMemo(function(){return typeof tr=="function"?tr:function(_s){var fi=_s&&_s[tr];return fi}},[tr]),no=ki(["body"]),Oi=hr(),Ke=(0,Ne.Z)(Oi,3),tt=Ke[0],it=Ke[1],pt=Ke[2],Dt=Vn(cn,li,Ao),Lt=(0,Ne.Z)(Dt,6),Gt=Lt[0],zt=Lt[1],nn=Lt[2],Kt=Lt[3],un=Lt[4],wn=Lt[5],xn=Ir==null?void 0:Ir.x,Zn=ve.useState(0),Wn=(0,Ne.Z)(Zn,2),Bn=Wn[0],_n=Wn[1],Rn=Vt((0,Ue.Z)((0,Ue.Z)((0,Ue.Z)({},cn),Gt),{},{expandable:!!Gt.expandedRowRender,columnTitle:Gt.columnTitle,expandedKeys:nn,getRowKey:Ao,onTriggerExpand:wn,expandIcon:Kt,expandIconColumnIndex:Gt.expandIconColumnIndex,direction:wr,scrollWidth:qa&&ii&&typeof xn=="number"?xn:null}),qa?Ni:null),Kn=(0,Ne.Z)(Rn,3),Cr=Kn[0],Ur=Kn[1],Qa=Kn[2],ea=Qa!=null?Qa:xn,pa=ve.useMemo(function(){return{columns:Cr,flattenColumns:Ur}},[Cr,Ur]),oi=ve.useRef(),$a=ve.useRef(),Mr=ve.useRef(),aa=ve.useRef(),di=ve.useRef(),ar=ve.useState(!1),Tr=(0,Ne.Z)(ar,2),sa=Tr[0],ca=Tr[1],La=ve.useState(!1),ia=(0,Ne.Z)(La,2),da=ia[0],wi=ia[1],xi=Jn(new Map),oa=(0,Ne.Z)(xi,2),mo=oa[0],wo=oa[1],ks=lt(Ur),Ls=ks.map(function(_s){return mo.get(_s)}),Js=ve.useMemo(function(){return Ls},[Ls.join("_")]),Tl=cr(Js,Ur.length,wr),pl=Ir&&yt(Ir.y),ll=Ir&&yt(ea)||!!Gt.fixed,kc=ll&&Ur.some(function(_s){var fi=_s.fixed;return fi}),Wd=ve.useRef(),_c=In(Pi,An),Zr=_c.isSticky,rh=_c.offsetHeader,xg=_c.offsetSummary,ls=_c.offsetScroll,Qs=_c.stickyClassName,hu=_c.container,yl=ve.useMemo(function(){return Xr==null?void 0:Xr(li)},[Xr,li]),Eu=(pl||Zr)&&ve.isValidElement(yl)&&yl.type===Tt&&yl.props.fixed,xl,Au,Zl;pl&&(Au={overflowY:"scroll",maxHeight:Ir.y}),ll&&(xl={overflowX:"auto"},pl||(Au={overflowY:"hidden"}),Zl={width:ea===!0?"auto":ea,minWidth:"100%"});var Ih=ve.useCallback(function(_s,fi){(0,kt.Z)(oi.current)&&wo(function(fc){if(fc.get(_s)!==fi){var xd=new Map(fc);return xd.set(_s,fi),xd}return fc})},[]),bv=$n(null),Sg=(0,Ne.Z)(bv,2),Cv=Sg[0],bg=Sg[1];function ul(_s,fi){fi&&(typeof fi=="function"?fi(_s):fi.scrollLeft!==_s&&(fi.scrollLeft=_s,fi.scrollLeft!==_s&&setTimeout(function(){fi.scrollLeft=_s},0)))}var Ou=(0,be.Z)(function(_s){var fi=_s.currentTarget,fc=_s.scrollLeft,xd=wr==="rtl",Sd=typeof fc=="number"?fc:fi.scrollLeft,Dg=fi||Ia;if(!bg()||bg()===Dg){var Ig;Cv(Dg),ul(Sd,$a.current),ul(Sd,Mr.current),ul(Sd,di.current),ul(Sd,(Ig=Wd.current)===null||Ig===void 0?void 0:Ig.setScrollLeft)}var Og=fi||$a.current;if(Og){var _h=Og.scrollWidth,Bf=Og.clientWidth;if(_h===Bf){ca(!1),wi(!1);return}xd?(ca(-Sd<_h-Bf),wi(-Sd>0)):(ca(Sd>0),wi(Sd<_h-Bf))}}),sf=function(){ll&&Mr.current?Ou({currentTarget:Mr.current}):(ca(!1),wi(!1))},D0=function(fi){var fc=fi.width;fc!==Bn&&(sf(),_n(oi.current?oi.current.offsetWidth:fc))},I0=ve.useRef(!1);ve.useEffect(function(){I0.current&&sf()},[ll,ur,Cr.length]),ve.useEffect(function(){I0.current=!0},[]);var Cg=ve.useState(0),Pg=(0,Ne.Z)(Cg,2),Oh=Pg[0],Th=Pg[1],Pv=ve.useState(!0),Lh=(0,Ne.Z)(Pv,2),ah=Lh[0],wv=Lh[1];ve.useEffect(function(){(!ii||!qa)&&(Mr.current instanceof Element?Th((0,ln.o)(Mr.current).width):Th((0,ln.o)(aa.current).width)),wv((0,Mt.G)("position","sticky"))},[]),ve.useEffect(function(){qa&&to&&(to.body.current=Mr.current)});var qc=ve.useCallback(function(_s){return ve.createElement(ve.Fragment,null,ve.createElement(_r,_s),Eu==="top"&&ve.createElement(Qt,_s,yl))},[Eu,yl]),Mv=ve.useCallback(function(_s){return ve.createElement(Qt,_s,yl)},[yl]),O0=ki(["table"],"table"),lf=ve.useMemo(function(){return Sr||(kc?ea==="max-content"?"auto":"fixed":pl||Zr||Ur.some(function(_s){var fi=_s.ellipsis;return fi})?"fixed":"auto")},[pl,kc,Ur,Sr,Zr]),Bh,wl={colWidths:Js,columCount:Ur.length,stickyOffsets:Tl,onHeaderRow:Fi,fixHeader:pl,scroll:Ir},T0=ve.useMemo(function(){return Za?null:typeof Wa=="function"?Wa():Wa},[Za,Wa]),L0=ve.createElement(Gr,{data:li,measureColumnWidth:pl||ll||Zr}),wg=ve.createElement(_a,{colWidths:Ur.map(function(_s){var fi=_s.width;return fi}),columns:Ur}),Nh=xa!=null?ve.createElement("caption",{className:"".concat(An,"-caption")},xa):void 0,Dv=(0,zn.Z)(cn,{data:!0}),Mg=(0,zn.Z)(cn,{aria:!0});if(pl||Zr){var Rh;typeof no=="function"?(Rh=no(li,{scrollbarSize:Oh,ref:Mr,onScroll:Ou}),wl.colWidths=Ur.map(function(_s,fi){var fc=_s.width,xd=fi===Ur.length-1?fc-Oh:fc;return typeof xd=="number"&&!Number.isNaN(xd)?xd:0})):Rh=ve.createElement("div",{style:(0,Ue.Z)((0,Ue.Z)({},xl),Au),onScroll:Ou,ref:Mr,className:Qe()("".concat(An,"-body"))},ve.createElement(O0,(0,pe.Z)({style:(0,Ue.Z)((0,Ue.Z)({},Zl),{},{tableLayout:lf})},Mg),Nh,wg,L0,!Eu&&yl&&ve.createElement(Qt,{stickyOffsets:Tl,flattenColumns:Ur,columns:Cr},yl)));var ih=(0,Ue.Z)((0,Ue.Z)((0,Ue.Z)({noData:!li.length,maxContentScroll:ll&&ea==="max-content"},wl),pa),{},{direction:wr,stickyClassName:Qs,onScroll:Ou});Bh=ve.createElement(ve.Fragment,null,Ka!==!1&&ve.createElement(Er,(0,pe.Z)({},ih,{stickyTopOffset:rh,className:"".concat(An,"-header"),ref:$a}),qc),Rh,Eu&&Eu!=="top"&&ve.createElement(Er,(0,pe.Z)({},ih,{stickyBottomOffset:xg,className:"".concat(An,"-summary"),ref:di}),Mv),Zr&&ve.createElement(vr,{ref:Wd,offsetScroll:ls,scrollBodyRef:Mr,onScroll:Ou,container:hu}))}else Bh=ve.createElement("div",{style:(0,Ue.Z)((0,Ue.Z)({},xl),Au),className:Qe()("".concat(An,"-content")),onScroll:Ou,ref:Mr},ve.createElement(O0,(0,pe.Z)({style:(0,Ue.Z)((0,Ue.Z)({},Zl),{},{tableLayout:lf})},Mg),Nh,wg,Ka!==!1&&ve.createElement(_r,(0,pe.Z)({},wl,pa)),L0,yl&&ve.createElement(Qt,{stickyOffsets:Tl,flattenColumns:Ur,columns:Cr},yl)));var Fh=ve.createElement("div",(0,pe.Z)({className:Qe()(An,Nn,(Wt={},(0,Ge.Z)(Wt,"".concat(An,"-rtl"),wr==="rtl"),(0,Ge.Z)(Wt,"".concat(An,"-ping-left"),sa),(0,Ge.Z)(Wt,"".concat(An,"-ping-right"),da),(0,Ge.Z)(Wt,"".concat(An,"-layout-fixed"),Sr==="fixed"),(0,Ge.Z)(Wt,"".concat(An,"-fixed-header"),pl),(0,Ge.Z)(Wt,"".concat(An,"-fixed-column"),kc),(0,Ge.Z)(Wt,"".concat(An,"-scroll-horizontal"),ll),(0,Ge.Z)(Wt,"".concat(An,"-has-fix-left"),Ur[0]&&Ur[0].fixed),(0,Ge.Z)(Wt,"".concat(An,"-has-fix-right"),Ur[Ur.length-1]&&Ur[Ur.length-1].fixed==="right"),Wt)),style:fr,id:ma,ref:oi},Dv),ta&&ve.createElement(Qn,{className:"".concat(An,"-title")},ta(li)),ve.createElement("div",{ref:aa,className:"".concat(An,"-container")},Bh),Yr&&ve.createElement(Qn,{className:"".concat(An,"-footer")},Yr(li)));ll&&(Fh=ve.createElement(Yt.Z,{onResize:D0},Fh));var kh=Pn(Ur,Tl,wr,Cr),Iv=ve.useMemo(function(){return{scrollX:ea,prefixCls:An,getComponent:ki,scrollbarSize:Oh,direction:wr,fixedInfoList:kh,isSticky:Zr,supportSticky:ah,componentWidth:Bn,fixHeader:pl,fixColumn:kc,horizonScroll:ll,tableLayout:lf,rowClassName:kn,expandedRowClassName:Gt.expandedRowClassName,expandIcon:Kt,expandableType:zt,expandRowByClick:Gt.expandRowByClick,expandedRowRender:Gt.expandedRowRender,onTriggerExpand:wn,expandIconColumnIndex:Gt.expandIconColumnIndex,indentSize:Gt.indentSize,allColumnsFixedLeft:Ur.every(function(_s){return _s.fixed==="left"}),emptyNode:T0,columns:Cr,flattenColumns:Ur,onColumnResize:Ih,hoverStartRow:tt,hoverEndRow:it,onHover:pt,rowExpandable:Gt.rowExpandable,onRow:Bi,getRowKey:Ao,expandedKeys:nn,childrenColumnName:un}},[ea,An,ki,Oh,wr,kh,Zr,ah,Bn,pl,kc,ll,lf,kn,Gt.expandedRowClassName,Kt,zt,Gt.expandRowByClick,Gt.expandedRowRender,wn,Gt.expandIconColumnIndex,Gt.indentSize,T0,Cr,Ur,Ih,tt,it,pt,Gt.rowExpandable,Bi,Ao,nn,un]);return ve.createElement(me.Provider,{value:Iv},Fh)}function ei(Ft){return fe(la,Ft)}var Wi=ei();Wi.EXPAND_COLUMN=Oe,Wi.INTERNAL_HOOKS=He,Wi.Column=jr,Wi.ColumnGroup=vi,Wi.Summary=gt;var za=Wi,_i=Te(48911),$i=Pe(null),Uo=Pe(null);function yo(Ft,Wt,cn){var An=Wt||1;return cn[Ft+An]-(cn[Ft]||0)}function sl(Ft){var Wt=Ft.rowInfo,cn=Ft.column,An=Ft.colIndex,Nn=Ft.indent,kn=Ft.index,fr=Ft.renderIndex,ur=Ft.record,tr=Ft.style,Ir=Ft.className,Sr=Ft.inverse,wr=Ft.getHeight,ta=cn.render,Yr=cn.dataIndex,Xr=cn.className,xa=cn.width,ma=xe(Uo,["columnsOffset"]),Ka=ma.columnsOffset,Fr=vn(Wt,cn,An,Nn,kn),Wa=Fr.key,Bi=Fr.fixedInfo,Fi=Fr.appendCellNode,Ai=Fr.additionalCellProps,Ni=Ai.style,to=Ai.colSpan,ii=to===void 0?1:to,Pi=Ai.rowSpan,li=Pi===void 0?1:Pi,Za=An-1,qa=yo(Za,ii,Ka),ki=ii>1?xa-qa:0,Ao=(0,Ue.Z)((0,Ue.Z)((0,Ue.Z)({},Ni),tr),{},{flex:"0 0 ".concat(qa,"px"),width:"".concat(qa,"px"),marginRight:ki,pointerEvents:"auto"}),no=ve.useMemo(function(){return Sr?li<=1:ii===0||li===0||li>1},[li,ii,Sr]);no?Ao.visibility="hidden":Sr&&(Ao.height=wr==null?void 0:wr(li));var Oi=no?function(){return null}:ta,Ke={};return(li===0||ii===0)&&(Ke.rowSpan=1,Ke.colSpan=1),ve.createElement(mn,(0,pe.Z)({className:Qe()(Xr,Ir),ellipsis:cn.ellipsis,align:cn.align,scope:cn.rowScope,component:"div",prefixCls:Wt.prefixCls,key:Wa,record:ur,index:kn,renderIndex:fr,dataIndex:Yr,render:Oi,shouldCellUpdate:cn.shouldCellUpdate},Bi,{appendNode:Fi,additionalProps:(0,Ue.Z)((0,Ue.Z)({},Ai),{},{style:Ao},Ke)}))}var ds=sl,bo=["data","index","className","rowKey","style","extra","getHeight"],hs=ve.forwardRef(function(Ft,Wt){var cn=Ft.data,An=Ft.index,Nn=Ft.className,kn=Ft.rowKey,fr=Ft.style,ur=Ft.extra,tr=Ft.getHeight,Ir=(0,Dn.Z)(Ft,bo),Sr=cn.record,wr=cn.indent,ta=cn.index,Yr=xe(me,["prefixCls","flattenColumns","fixColumn","componentWidth","scrollX"]),Xr=Yr.scrollX,xa=Yr.flattenColumns,ma=Yr.prefixCls,Ka=Yr.fixColumn,Fr=Yr.componentWidth,Wa=qt(Sr,kn,An,wr),Bi=Wa.rowSupportExpand,Fi=Wa.expanded,Ai=Wa.rowProps,Ni=Wa.expandedRowRender,to=Wa.expandedRowClassName,ii;if(Bi&&Fi){var Pi=Ni(Sr,An,wr+1,Fi),li=to==null?void 0:to(Sr,An,wr),Za={};Ka&&(Za={style:(0,Ge.Z)({},"--virtual-width","".concat(Fr,"px"))});var qa="".concat(ma,"-expanded-row-cell");ii=ve.createElement("div",{className:Qe()("".concat(ma,"-expanded-row"),"".concat(ma,"-expanded-row-level-").concat(wr+1),li)},ve.createElement(mn,{component:"div",prefixCls:ma,className:Qe()(qa,(0,Ge.Z)({},"".concat(qa,"-fixed"),Ka)),additionalProps:Za},Pi))}var ki=(0,Ue.Z)((0,Ue.Z)({},fr),{},{width:Xr});ur&&(ki.position="absolute",ki.pointerEvents="none");var Ao=ve.createElement("div",(0,pe.Z)({},Ai,Ir,{ref:Bi?null:Wt,className:Qe()(Nn,"".concat(ma,"-row"),Ai==null?void 0:Ai.className,(0,Ge.Z)({},"".concat(ma,"-row-extra"),ur)),style:(0,Ue.Z)((0,Ue.Z)({},ki),Ai==null?void 0:Ai.style)}),xa.map(function(no,Oi){return ve.createElement(ds,{key:Oi,rowInfo:Wa,column:no,colIndex:Oi,indent:wr,index:An,renderIndex:ta,record:Sr,inverse:ur,getHeight:tr})}));return Bi?ve.createElement("div",{ref:Wt},Ao,ii):Ao}),ss=he(hs),Yo=ss,Wo=ve.forwardRef(function(Ft,Wt){var cn=Ft.data,An=Ft.onScroll,Nn=xe(me,["flattenColumns","onColumnResize","getRowKey","prefixCls","expandedKeys","childrenColumnName","emptyNode","scrollX"]),kn=Nn.flattenColumns,fr=Nn.onColumnResize,ur=Nn.getRowKey,tr=Nn.expandedKeys,Ir=Nn.prefixCls,Sr=Nn.childrenColumnName,wr=Nn.emptyNode,ta=Nn.scrollX,Yr=xe($i),Xr=Yr.scrollY,xa=Yr.listItemHeight,ma=ve.useRef(),Ka=Hn(cn,Sr,tr,ur),Fr=ve.useMemo(function(){var ii=0;return kn.map(function(Pi){var li=Pi.width,Za=Pi.key;return ii+=li,[Za,li,ii]})},[kn]),Wa=ve.useMemo(function(){return Fr.map(function(ii){return ii[2]})},[Fr]);ve.useEffect(function(){Fr.forEach(function(ii){var Pi=(0,Ne.Z)(ii,2),li=Pi[0],Za=Pi[1];fr(li,Za)})},[Fr]),ve.useImperativeHandle(Wt,function(){var ii={};return Object.defineProperty(ii,"scrollLeft",{get:function(){var li;return((li=ma.current)===null||li===void 0?void 0:li.getScrollInfo().x)||0},set:function(li){var Za;(Za=ma.current)===null||Za===void 0||Za.scrollTo({left:li})}}),ii});var Bi=function(Pi,li){var Za,qa=(Za=Ka[li])===null||Za===void 0?void 0:Za.record,ki=Pi.onCell;if(ki){var Ao,no=ki(qa,li);return(Ao=no==null?void 0:no.rowSpan)!==null&&Ao!==void 0?Ao:1}return 1},Fi=function(Pi){var li=Pi.start,Za=Pi.end,qa=Pi.getSize,ki=Pi.offsetY;if(Za<0)return null;for(var Ao=kn.filter(function(xn){return Bi(xn,li)===0}),no=li,Oi=function(Zn){if(Ao=Ao.filter(function(Wn){return Bi(Wn,Zn)===0}),!Ao.length)return no=Zn,"break"},Ke=li;Ke>=0;Ke-=1){var tt=Oi(Ke);if(tt==="break")break}for(var it=kn.filter(function(xn){return Bi(xn,Za)!==1}),pt=Za,Dt=function(Zn){if(it=it.filter(function(Wn){return Bi(Wn,Zn)!==1}),!it.length)return pt=Math.max(Zn-1,Za),"break"},Lt=Za;Lt<Ka.length;Lt+=1){var Gt=Dt(Lt);if(Gt==="break")break}for(var zt=[],nn=function(Zn){var Wn=Ka[Zn];if(!Wn)return"continue";kn.some(function(Bn){return Bi(Bn,Zn)>1})&&zt.push(Zn)},Kt=no;Kt<=pt;Kt+=1)var un=nn(Kt);var wn=zt.map(function(xn){var Zn=Ka[xn],Wn=ur(Zn.record,xn),Bn=function(Kn){var Cr=xn+Kn-1,Ur=ur(Ka[Cr].record,Cr),Qa=qa(Wn,Ur);return Qa.bottom-Qa.top},_n=qa(Wn);return ve.createElement(Yo,{key:xn,data:Zn,rowKey:Wn,index:xn,style:{top:-ki+_n.top},extra:!0,getHeight:Bn})});return wn},Ai=ve.useMemo(function(){return{columnsOffset:Wa}},[Wa]),Ni="".concat(Ir,"-tbody"),to;return Ka.length?to=ve.createElement(_i.Z,{fullHeight:!1,ref:ma,className:Qe()(Ni,"".concat(Ni,"-virtual")),height:Xr,itemHeight:xa||24,data:Ka,itemKey:function(Pi){return ur(Pi.record)},scrollWidth:ta,onVirtualScroll:function(Pi){var li=Pi.x;An({scrollLeft:li})},extraRender:Fi},function(ii,Pi,li){var Za=ur(ii.record,Pi);return ve.createElement(Yo,(0,pe.Z)({data:ii,rowKey:Za,index:Pi},li))}):to=ve.createElement("div",{className:Qe()("".concat(Ir,"-placeholder"))},ve.createElement(mn,{component:"div",prefixCls:Ir},wr)),ve.createElement(Uo.Provider,{value:Ai},to)}),Rs=he(Wo),tl=Rs,Pl=function(Wt,cn){var An=cn.ref,Nn=cn.onScroll;return ve.createElement(tl,{ref:An,data:Wt,onScroll:Nn})},Gs=100;function il(Ft){var Wt=Ft.columns,cn=Ft.scroll,An=Ft.prefixCls,Nn=An===void 0?ci:An,kn=Ft.className,fr=Ft.listItemHeight,ur=cn||{},tr=ur.x,Ir=ur.y;typeof tr!="number"&&(tr=((Wt||[]).length+1)*Gs),typeof Ir!="number"&&(Ir=500);var Sr=ve.useMemo(function(){return{scrollY:Ir,listItemHeight:fr}},[Ir,fr]);return ve.createElement($i.Provider,{value:Sr},ve.createElement(za,(0,pe.Z)({},Ft,{className:Qe()(kn,"".concat(Nn,"-virtual")),scroll:(0,Ue.Z)((0,Ue.Z)({},cn),{},{x:tr}),components:{body:Pl},columns:Wt,internalHooks:He,tailor:!0})))}function nl(Ft){return fe(il,Ft)}var uo=nl(),Xo=null;function Ho(Ft){return null}var Xs=Ho;function Il(Ft){return null}var _l=Il,Go=Te(2738),lu=Te(68031),Os=Te(36355),Vs=Te(93891),Mu=Te(19716),Al=Te(8628),ol=Te(31724),uc=Te(58421),zi=Te(71418),Ga=Te(88088);function ja(Ft){return function(cn){let{prefixCls:An,onExpand:Nn,record:kn,expanded:fr,expandable:ur}=cn;const tr=`${An}-row-expand-icon`;return ve.createElement("button",{type:"button",onClick:Ir=>{Nn(kn,Ir),Ir.stopPropagation()},className:Qe()(tr,{[`${tr}-spaced`]:!ur,[`${tr}-expanded`]:ur&&fr,[`${tr}-collapsed`]:ur&&!fr}),"aria-label":fr?Ft.collapse:Ft.expand,"aria-expanded":fr})}}var Ua=ja;function ao(Ft,Wt){return"key"in Ft&&Ft.key!==void 0&&Ft.key!==null?Ft.key:Ft.dataIndex?Array.isArray(Ft.dataIndex)?Ft.dataIndex.join("."):Ft.dataIndex:Wt}function ko(Ft,Wt){return Wt?`${Wt}-${Ft}`:`${Ft}`}function Ts(Ft,Wt){return typeof Ft=="function"?Ft(Wt):Ft}function ws(Ft,Wt){const cn=Ts(Ft,Wt);return Object.prototype.toString.call(cn)==="[object Object]"?"":cn}var Ks={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M349 838c0 17.7 14.2 32 31.8 32h262.4c17.6 0 31.8-14.3 31.8-32V642H349v196zm531.1-684H143.9c-24.5 0-39.8 26.7-27.5 48l221.3 376h348.8l221.3-376c12.1-21.3-3.2-48-27.7-48z"}}]},name:"filter",theme:"filled"},Oo=Ks,uu=Te(7657),fl=function(Wt,cn){return ve.createElement(uu.Z,(0,pe.Z)({},Wt,{ref:cn,icon:Oo}))},Co=ve.forwardRef(fl),Jo=Co,Fs=Te(56762);function _o(Ft){const Wt=ve.useRef(Ft),cn=(0,Fs.Z)();return[()=>Wt.current,An=>{Wt.current=An,cn()}]}var gs=Te(3113),Or=Te(24905),pr=Te(38854),Rr=Te(64165),ga=Te(20834),pi=Te(40875),Ca=Te(5112),rr=Te(17574),Li=Te(47472),io=Te(92832);function Lo(Ft){let{value:Wt,onChange:cn,filterSearch:An,tablePrefixCls:Nn,locale:kn}=Ft;return An?ve.createElement("div",{className:`${Nn}-filter-dropdown-search`},ve.createElement(io.default,{prefix:ve.createElement(Li.Z,null),placeholder:kn.filterSearchPlaceholder,onChange:cn,value:Wt,htmlSize:1,className:`${Nn}-filter-dropdown-search-input`})):null}var Zi=Lo,ai=Te(10228);const Bo=Ft=>{const{keyCode:Wt}=Ft;Wt===ai.Z.ENTER&&Ft.stopPropagation()};var rl=ve.forwardRef((Ft,Wt)=>ve.createElement("div",{className:Ft.className,onClick:cn=>cn.stopPropagation(),onKeyDown:Bo,ref:Wt},Ft.children));function eo(Ft){let Wt=[];return(Ft||[]).forEach(cn=>{let{value:An,children:Nn}=cn;Wt.push(An),Nn&&(Wt=[].concat((0,Vr.Z)(Wt),(0,Vr.Z)(eo(Nn))))}),Wt}function Hi(Ft){return Ft.some(Wt=>{let{children:cn}=Wt;return cn})}function xs(Ft,Wt){return typeof Wt=="string"||typeof Wt=="number"?Wt==null?void 0:Wt.toString().toLowerCase().includes(Ft.trim().toLowerCase()):!1}function zo(Ft){let{filters:Wt,prefixCls:cn,filteredKeys:An,filterMultiple:Nn,searchValue:kn,filterSearch:fr}=Ft;return Wt.map((ur,tr)=>{const Ir=String(ur.value);if(ur.children)return{key:Ir||tr,label:ur.text,popupClassName:`${cn}-dropdown-submenu`,children:zo({filters:ur.children,prefixCls:cn,filteredKeys:An,filterMultiple:Nn,searchValue:kn,filterSearch:fr})};const Sr=Nn?Or.default:Ca.ZP,wr={key:ur.value!==void 0?Ir:tr,label:ve.createElement(ve.Fragment,null,ve.createElement(Sr,{checked:An.includes(Ir)}),ve.createElement("span",null,ur.text))};return kn.trim()?typeof fr=="function"?fr(kn,ur)?wr:null:xs(kn,ur.text)?wr:null:wr})}function hl(Ft){var Wt,cn;const{tablePrefixCls:An,prefixCls:Nn,column:kn,dropdownPrefixCls:fr,columnKey:ur,filterMultiple:tr,filterMode:Ir="menu",filterSearch:Sr=!1,filterState:wr,triggerFilter:ta,locale:Yr,children:Xr,getPopupContainer:xa}=Ft,{filterDropdownOpen:ma,onFilterDropdownOpenChange:Ka,filterResetToDefaultFilteredValue:Fr,defaultFilteredValue:Wa,filterDropdownVisible:Bi,onFilterDropdownVisibleChange:Fi}=kn,[Ai,Ni]=ve.useState(!1),to=!!(wr&&(!((Wt=wr.filteredKeys)===null||Wt===void 0)&&Wt.length||wr.forceFiltered)),ii=Rn=>{Ni(Rn),Ka==null||Ka(Rn),Fi==null||Fi(Rn)},Pi=(cn=ma!=null?ma:Bi)!==null&&cn!==void 0?cn:Ai,li=wr==null?void 0:wr.filteredKeys,[Za,qa]=_o(li||[]),ki=Rn=>{let{selectedKeys:Kn}=Rn;qa(Kn)},Ao=(Rn,Kn)=>{let{node:Cr,checked:Ur}=Kn;ki(tr?{selectedKeys:Rn}:{selectedKeys:Ur&&Cr.key?[Cr.key]:[]})};ve.useEffect(()=>{Ai&&ki({selectedKeys:li||[]})},[li]);const[no,Oi]=ve.useState([]),Ke=Rn=>{Oi(Rn)},[tt,it]=ve.useState(""),pt=Rn=>{const{value:Kn}=Rn.target;it(Kn)};ve.useEffect(()=>{Ai||it("")},[Ai]);const Dt=Rn=>{const Kn=Rn&&Rn.length?Rn:null;if(Kn===null&&(!wr||!wr.filteredKeys)||(0,Me.Z)(Kn,wr==null?void 0:wr.filteredKeys,!0))return null;ta({column:kn,key:ur,filteredKeys:Kn})},Lt=()=>{ii(!1),Dt(Za())},Gt=function(){let{confirm:Rn,closeDropdown:Kn}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{confirm:!1,closeDropdown:!1};Rn&&Dt([]),Kn&&ii(!1),it(""),qa(Fr?(Wa||[]).map(Cr=>String(Cr)):[])},zt=function(){let{closeDropdown:Rn}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{closeDropdown:!0};Rn&&ii(!1),Dt(Za())},nn=Rn=>{Rn&&li!==void 0&&qa(li||[]),ii(Rn),!Rn&&!kn.filterDropdown&&Lt()},Kt=Qe()({[`${fr}-menu-without-submenu`]:!Hi(kn.filters||[])}),un=Rn=>{if(Rn.target.checked){const Kn=eo(kn==null?void 0:kn.filters).map(Cr=>String(Cr));qa(Kn)}else qa([])},wn=Rn=>{let{filters:Kn}=Rn;return(Kn||[]).map((Cr,Ur)=>{const Qa=String(Cr.value),ea={title:Cr.text,key:Cr.value!==void 0?Qa:Ur};return Cr.children&&(ea.children=wn({filters:Cr.children})),ea})},xn=Rn=>{var Kn;return Object.assign(Object.assign({},Rn),{text:Rn.title,value:Rn.key,children:((Kn=Rn.children)===null||Kn===void 0?void 0:Kn.map(Cr=>xn(Cr)))||[]})};let Zn;if(typeof kn.filterDropdown=="function")Zn=kn.filterDropdown({prefixCls:`${fr}-custom`,setSelectedKeys:Rn=>ki({selectedKeys:Rn}),selectedKeys:Za(),confirm:zt,clearFilters:Gt,filters:kn.filters,visible:Pi,close:()=>{ii(!1)}});else if(kn.filterDropdown)Zn=kn.filterDropdown;else{const Rn=Za()||[],Kn=()=>(kn.filters||[]).length===0?ve.createElement(Rr.Z,{image:Rr.Z.PRESENTED_IMAGE_SIMPLE,description:Yr.filterEmptyText,imageStyle:{height:24},style:{margin:0,padding:"16px 0"}}):Ir==="tree"?ve.createElement(ve.Fragment,null,ve.createElement(Zi,{filterSearch:Sr,value:tt,onChange:pt,tablePrefixCls:An,locale:Yr}),ve.createElement("div",{className:`${An}-filter-dropdown-tree`},tr?ve.createElement(Or.default,{checked:Rn.length===eo(kn.filters).length,indeterminate:Rn.length>0&&Rn.length<eo(kn.filters).length,className:`${An}-filter-dropdown-checkall`,onChange:un},Yr.filterCheckall):null,ve.createElement(rr.default,{checkable:!0,selectable:!1,blockNode:!0,multiple:tr,checkStrictly:!tr,className:`${fr}-menu`,onCheck:Ao,checkedKeys:Rn,selectedKeys:Rn,showIcon:!1,treeData:wn({filters:kn.filters}),autoExpandParent:!0,defaultExpandAll:!0,filterTreeNode:tt.trim()?Ur=>typeof Sr=="function"?Sr(tt,xn(Ur)):xs(tt,Ur.title):void 0}))):ve.createElement(ve.Fragment,null,ve.createElement(Zi,{filterSearch:Sr,value:tt,onChange:pt,tablePrefixCls:An,locale:Yr}),ve.createElement(ga.default,{selectable:!0,multiple:tr,prefixCls:`${fr}-menu`,className:Kt,onSelect:ki,onDeselect:ki,selectedKeys:Rn,getPopupContainer:xa,openKeys:no,onOpenChange:Ke,items:zo({filters:kn.filters||[],filterSearch:Sr,prefixCls:Nn,filteredKeys:Za(),filterMultiple:tr,searchValue:tt})})),Cr=()=>Fr?(0,Me.Z)((Wa||[]).map(Ur=>String(Ur)),Rn,!0):Rn.length===0;Zn=ve.createElement(ve.Fragment,null,Kn(),ve.createElement("div",{className:`${Nn}-dropdown-btns`},ve.createElement(gs.ZP,{type:"link",size:"small",disabled:Cr(),onClick:()=>Gt()},Yr.filterReset),ve.createElement(gs.ZP,{type:"primary",size:"small",onClick:Lt},Yr.filterConfirm)))}kn.filterDropdown&&(Zn=ve.createElement(pi.J,{selectable:void 0},Zn));const Wn=()=>ve.createElement(rl,{className:`${Nn}-dropdown`},Zn);let Bn;typeof kn.filterIcon=="function"?Bn=kn.filterIcon(to):kn.filterIcon?Bn=kn.filterIcon:Bn=ve.createElement(Jo,null);const{direction:_n}=ve.useContext(Os.E_);return ve.createElement("div",{className:`${Nn}-column`},ve.createElement("span",{className:`${An}-column-title`},Xr),ve.createElement(pr.Z,{dropdownRender:Wn,trigger:["click"],open:Pi,onOpenChange:nn,getPopupContainer:xa,placement:_n==="rtl"?"bottomLeft":"bottomRight"},ve.createElement("span",{role:"button",tabIndex:-1,className:Qe()(`${Nn}-trigger`,{active:to}),onClick:Rn=>{Rn.stopPropagation()}},Bn)))}var gl=hl;function cc(Ft,Wt,cn){let An=[];return(Ft||[]).forEach((Nn,kn)=>{var fr;const ur=ko(kn,cn);if(Nn.filters||"filterDropdown"in Nn||"onFilter"in Nn)if("filteredValue"in Nn){let tr=Nn.filteredValue;"filterDropdown"in Nn||(tr=(fr=tr==null?void 0:tr.map(String))!==null&&fr!==void 0?fr:tr),An.push({column:Nn,key:ao(Nn,ur),filteredKeys:tr,forceFiltered:Nn.filtered})}else An.push({column:Nn,key:ao(Nn,ur),filteredKeys:Wt&&Nn.defaultFilteredValue?Nn.defaultFilteredValue:void 0,forceFiltered:Nn.filtered});"children"in Nn&&(An=[].concat((0,Vr.Z)(An),(0,Vr.Z)(cc(Nn.children,Wt,ur))))}),An}function Yc(Ft,Wt,cn,An,Nn,kn,fr,ur){return cn.map((tr,Ir)=>{const Sr=ko(Ir,ur),{filterMultiple:wr=!0,filterMode:ta,filterSearch:Yr}=tr;let Xr=tr;if(Xr.filters||Xr.filterDropdown){const xa=ao(Xr,Sr),ma=An.find(Ka=>{let{key:Fr}=Ka;return xa===Fr});Xr=Object.assign(Object.assign({},Xr),{title:Ka=>ve.createElement(gl,{tablePrefixCls:Ft,prefixCls:`${Ft}-filter`,dropdownPrefixCls:Wt,column:Xr,columnKey:xa,filterState:ma,filterMultiple:wr,filterMode:ta,filterSearch:Yr,triggerFilter:kn,locale:Nn,getPopupContainer:fr},Ts(tr.title,Ka))})}return"children"in Xr&&(Xr=Object.assign(Object.assign({},Xr),{children:Yc(Ft,Wt,Xr.children,An,Nn,kn,fr,Sr)})),Xr})}function Du(Ft){const Wt={};return Ft.forEach(cn=>{let{key:An,filteredKeys:Nn,column:kn}=cn;const{filters:fr,filterDropdown:ur}=kn;if(ur)Wt[An]=Nn||null;else if(Array.isArray(Nn)){const tr=eo(fr);Wt[An]=tr.filter(Ir=>Nn.includes(String(Ir)))}else Wt[An]=null}),Wt}function Xu(Ft,Wt){return Wt.reduce((cn,An)=>{const{column:{onFilter:Nn,filters:kn},filteredKeys:fr}=An;return Nn&&fr&&fr.length?cn.filter(ur=>fr.some(tr=>{const Ir=eo(kn),Sr=Ir.findIndex(ta=>String(ta)===String(tr)),wr=Sr!==-1?Ir[Sr]:tr;return Nn(wr,ur)})):cn},Ft)}const Nc=Ft=>Ft.flatMap(Wt=>"children"in Wt?[Wt].concat((0,Vr.Z)(Nc(Wt.children||[]))):[Wt]);function zd(Ft){let{prefixCls:Wt,dropdownPrefixCls:cn,mergedColumns:An,onFilterChange:Nn,getPopupContainer:kn,locale:fr}=Ft;const ur=ve.useMemo(()=>Nc(An||[]),[An]),[tr,Ir]=ve.useState(()=>cc(ur,!0)),Sr=ve.useMemo(()=>{const Xr=cc(ur,!1);if(Xr.length===0)return Xr;let xa=!0,ma=!0;if(Xr.forEach(Ka=>{let{filteredKeys:Fr}=Ka;Fr!==void 0?xa=!1:ma=!1}),xa){const Ka=(ur||[]).map((Fr,Wa)=>ao(Fr,ko(Wa)));return tr.filter(Fr=>{let{key:Wa}=Fr;return Ka.includes(Wa)}).map(Fr=>{const Wa=ur[Ka.findIndex(Bi=>Bi===Fr.key)];return Object.assign(Object.assign({},Fr),{column:Object.assign(Object.assign({},Fr.column),Wa),forceFiltered:Wa.filtered})})}return Xr},[ur,tr]),wr=ve.useMemo(()=>Du(Sr),[Sr]),ta=Xr=>{const xa=Sr.filter(ma=>{let{key:Ka}=ma;return Ka!==Xr.key});xa.push(Xr),Ir(xa),Nn(Du(xa),xa)};return[Xr=>Yc(Wt,cn,Xr,Sr,fr,ta,kn),Sr,wr]}var ac=zd;function zl(Ft,Wt,cn){const An=ve.useRef({});function Nn(kn){if(!An.current||An.current.data!==Ft||An.current.childrenColumnName!==Wt||An.current.getRowKey!==cn){let ur=function(tr){tr.forEach((Ir,Sr)=>{const wr=cn(Ir,Sr);fr.set(wr,Ir),Ir&&typeof Ir=="object"&&Wt in Ir&&ur(Ir[Wt]||[])})};const fr=new Map;ur(Ft),An.current={data:Ft,childrenColumnName:Wt,kvMap:fr,getRowKey:cn}}return An.current.kvMap.get(kn)}return[Nn]}var vd=Te(50371),jd=function(Ft,Wt){var cn={};for(var An in Ft)Object.prototype.hasOwnProperty.call(Ft,An)&&Wt.indexOf(An)<0&&(cn[An]=Ft[An]);if(Ft!=null&&typeof Object.getOwnPropertySymbols=="function")for(var Nn=0,An=Object.getOwnPropertySymbols(Ft);Nn<An.length;Nn++)Wt.indexOf(An[Nn])<0&&Object.prototype.propertyIsEnumerable.call(Ft,An[Nn])&&(cn[An[Nn]]=Ft[An[Nn]]);return cn};const Ju=10;function cu(Ft,Wt){const cn={current:Ft.current,pageSize:Ft.pageSize};return Object.keys(Wt&&typeof Wt=="object"?Wt:{}).forEach(Nn=>{const kn=Ft[Nn];typeof kn!="function"&&(cn[Nn]=kn)}),cn}function Rc(Ft,Wt,cn){const An=cn&&typeof cn=="object"?cn:{},{total:Nn=0}=An,kn=jd(An,["total"]),[fr,ur]=(0,ve.useState)(()=>({current:"defaultCurrent"in kn?kn.defaultCurrent:1,pageSize:"defaultPageSize"in kn?kn.defaultPageSize:Ju})),tr=(0,vd.Z)(fr,kn,{total:Nn>0?Nn:Ft}),Ir=Math.ceil((Nn||Ft)/tr.pageSize);tr.current>Ir&&(tr.current=Ir||1);const Sr=(ta,Yr)=>{ur({current:ta!=null?ta:1,pageSize:Yr||tr.pageSize})},wr=(ta,Yr)=>{var Xr;cn&&((Xr=cn.onChange)===null||Xr===void 0||Xr.call(cn,ta,Yr)),Sr(ta,Yr),Wt(ta,Yr||(tr==null?void 0:tr.pageSize))};return cn===!1?[{},()=>{}]:[Object.assign(Object.assign({},tr),{onChange:wr}),Sr]}var ql=Rc,du=Te(84105),au=Te(35654),md=Te(90782),$f=Te(71430),C0=Te(18929);const dc={},eh="SELECT_ALL",rf="SELECT_INVERT",th="SELECT_NONE",Ph=[],nh=(Ft,Wt)=>{let cn=[];return(Wt||[]).forEach(An=>{cn.push(An),An&&typeof An=="object"&&Ft in An&&(cn=[].concat((0,Vr.Z)(cn),(0,Vr.Z)(nh(Ft,An[Ft]))))}),cn};var Iu=(Ft,Wt)=>{const{preserveSelectedRowKeys:cn,selectedRowKeys:An,defaultSelectedRowKeys:Nn,getCheckboxProps:kn,onChange:fr,onSelect:ur,onSelectAll:tr,onSelectInvert:Ir,onSelectNone:Sr,onSelectMultiple:wr,columnWidth:ta,type:Yr,selections:Xr,fixed:xa,renderCell:ma,hideSelectAll:Ka,checkStrictly:Fr=!0}=Wt||{},{prefixCls:Wa,data:Bi,pageData:Fi,getRecordByKey:Ai,getRowKey:Ni,expandType:to,childrenColumnName:ii,locale:Pi,getPopupContainer:li}=Ft,[Za,qa]=(0,C0.Z)(An||Nn||Ph,{value:An}),ki=ve.useRef(new Map),Ao=(0,ve.useCallback)(xn=>{if(cn){const Zn=new Map;xn.forEach(Wn=>{let Bn=Ai(Wn);!Bn&&ki.current.has(Wn)&&(Bn=ki.current.get(Wn)),Zn.set(Wn,Bn)}),ki.current=Zn}},[Ai,cn]);ve.useEffect(()=>{Ao(Za)},[Za]);const{keyEntities:no}=(0,ve.useMemo)(()=>{if(Fr)return{keyEntities:null};let xn=Bi;if(cn){const Zn=new Set(Bi.map((Bn,_n)=>Ni(Bn,_n))),Wn=Array.from(ki.current).reduce((Bn,_n)=>{let[Rn,Kn]=_n;return Zn.has(Rn)?Bn:Bn.concat(Kn)},[]);xn=[].concat((0,Vr.Z)(xn),(0,Vr.Z)(Wn))}return(0,$f.I8)(xn,{externalGetKey:Ni,childrenPropName:ii})},[Bi,Ni,Fr,ii,cn]),Oi=(0,ve.useMemo)(()=>nh(ii,Fi),[ii,Fi]),Ke=(0,ve.useMemo)(()=>{const xn=new Map;return Oi.forEach((Zn,Wn)=>{const Bn=Ni(Zn,Wn),_n=(kn?kn(Zn):null)||{};xn.set(Bn,_n)}),xn},[Oi,Ni,kn]),tt=(0,ve.useCallback)(xn=>{var Zn;return!!(!((Zn=Ke.get(Ni(xn)))===null||Zn===void 0)&&Zn.disabled)},[Ke,Ni]),[it,pt]=(0,ve.useMemo)(()=>{if(Fr)return[Za||[],[]];const{checkedKeys:xn,halfCheckedKeys:Zn}=(0,md.S)(Za,!0,no,tt);return[xn||[],Zn]},[Za,Fr,no,tt]),Dt=(0,ve.useMemo)(()=>{const xn=Yr==="radio"?it.slice(0,1):it;return new Set(xn)},[it,Yr]),Lt=(0,ve.useMemo)(()=>Yr==="radio"?new Set:new Set(pt),[pt,Yr]),[Gt,zt]=(0,ve.useState)(null);ve.useEffect(()=>{Wt||qa(Ph)},[!!Wt]);const nn=(0,ve.useCallback)((xn,Zn)=>{let Wn,Bn;Ao(xn),cn?(Wn=xn,Bn=xn.map(_n=>ki.current.get(_n))):(Wn=[],Bn=[],xn.forEach(_n=>{const Rn=Ai(_n);Rn!==void 0&&(Wn.push(_n),Bn.push(Rn))})),qa(Wn),fr==null||fr(Wn,Bn,{type:Zn})},[qa,Ai,fr,cn]),Kt=(0,ve.useCallback)((xn,Zn,Wn,Bn)=>{if(ur){const _n=Wn.map(Rn=>Ai(Rn));ur(Ai(xn),Zn,_n,Bn)}nn(Wn,"single")},[ur,Ai,nn]),un=(0,ve.useMemo)(()=>!Xr||Ka?null:(Xr===!0?[eh,rf,th]:Xr).map(Zn=>Zn===eh?{key:"all",text:Pi.selectionAll,onSelect(){nn(Bi.map((Wn,Bn)=>Ni(Wn,Bn)).filter(Wn=>{const Bn=Ke.get(Wn);return!(Bn!=null&&Bn.disabled)||Dt.has(Wn)}),"all")}}:Zn===rf?{key:"invert",text:Pi.selectInvert,onSelect(){const Wn=new Set(Dt);Fi.forEach((_n,Rn)=>{const Kn=Ni(_n,Rn),Cr=Ke.get(Kn);Cr!=null&&Cr.disabled||(Wn.has(Kn)?Wn.delete(Kn):Wn.add(Kn))});const Bn=Array.from(Wn);Ir&&Ir(Bn),nn(Bn,"invert")}}:Zn===th?{key:"none",text:Pi.selectNone,onSelect(){Sr==null||Sr(),nn(Array.from(Dt).filter(Wn=>{const Bn=Ke.get(Wn);return Bn==null?void 0:Bn.disabled}),"none")}}:Zn).map(Zn=>Object.assign(Object.assign({},Zn),{onSelect:function(){for(var Wn,Bn,_n=arguments.length,Rn=new Array(_n),Kn=0;Kn<_n;Kn++)Rn[Kn]=arguments[Kn];(Bn=Zn.onSelect)===null||Bn===void 0||(Wn=Bn).call.apply(Wn,[Zn].concat(Rn)),zt(null)}})),[Xr,Dt,Fi,Ni,Ir,nn]);return[(0,ve.useCallback)(xn=>{var Zn;if(!Wt)return xn.filter(ar=>ar!==dc);let Wn=(0,Vr.Z)(xn);const Bn=new Set(Dt),_n=Oi.map(Ni).filter(ar=>!Ke.get(ar).disabled),Rn=_n.every(ar=>Bn.has(ar)),Kn=_n.some(ar=>Bn.has(ar)),Cr=()=>{const ar=[];Rn?_n.forEach(sa=>{Bn.delete(sa),ar.push(sa)}):_n.forEach(sa=>{Bn.has(sa)||(Bn.add(sa),ar.push(sa))});const Tr=Array.from(Bn);tr==null||tr(!Rn,Tr.map(sa=>Ai(sa)),ar.map(sa=>Ai(sa))),nn(Tr,"all"),zt(null)};let Ur;if(Yr!=="radio"){let ar;if(un){const ia={getPopupContainer:li,items:un.map((da,wi)=>{const{key:xi,text:oa,onSelect:mo}=da;return{key:xi!=null?xi:wi,onClick:()=>{mo==null||mo(_n)},label:oa}})};ar=ve.createElement("div",{className:`${Wa}-selection-extra`},ve.createElement(pr.Z,{menu:ia,getPopupContainer:li},ve.createElement("span",null,ve.createElement(du.Z,null))))}const Tr=Oi.map((ia,da)=>{const wi=Ni(ia,da),xi=Ke.get(wi)||{};return Object.assign({checked:Bn.has(wi)},xi)}).filter(ia=>{let{disabled:da}=ia;return da}),sa=!!Tr.length&&Tr.length===Oi.length,ca=sa&&Tr.every(ia=>{let{checked:da}=ia;return da}),La=sa&&Tr.some(ia=>{let{checked:da}=ia;return da});Ur=!Ka&&ve.createElement("div",{className:`${Wa}-selection`},ve.createElement(Or.default,{checked:sa?ca:!!Oi.length&&Rn,indeterminate:sa?!ca&&La:!Rn&&Kn,onChange:Cr,disabled:Oi.length===0||sa,"aria-label":ar?"Custom selection":"Select all",skipGroup:!0}),ar)}let Qa;Yr==="radio"?Qa=(ar,Tr,sa)=>{const ca=Ni(Tr,sa),La=Bn.has(ca);return{node:ve.createElement(Ca.ZP,Object.assign({},Ke.get(ca),{checked:La,onClick:ia=>ia.stopPropagation(),onChange:ia=>{Bn.has(ca)||Kt(ca,!0,[ca],ia.nativeEvent)}})),checked:La}}:Qa=(ar,Tr,sa)=>{var ca;const La=Ni(Tr,sa),ia=Bn.has(La),da=Lt.has(La),wi=Ke.get(La);let xi;return to==="nest"?xi=da:xi=(ca=wi==null?void 0:wi.indeterminate)!==null&&ca!==void 0?ca:da,{node:ve.createElement(Or.default,Object.assign({},wi,{indeterminate:xi,checked:ia,skipGroup:!0,onClick:oa=>oa.stopPropagation(),onChange:oa=>{let{nativeEvent:mo}=oa;const{shiftKey:wo}=mo;let ks=-1,Ls=-1;if(wo&&Fr){const Js=new Set([Gt,La]);_n.some((Tl,pl)=>{if(Js.has(Tl))if(ks===-1)ks=pl;else return Ls=pl,!0;return!1})}if(Ls!==-1&&ks!==Ls&&Fr){const Js=_n.slice(ks,Ls+1),Tl=[];ia?Js.forEach(ll=>{Bn.has(ll)&&(Tl.push(ll),Bn.delete(ll))}):Js.forEach(ll=>{Bn.has(ll)||(Tl.push(ll),Bn.add(ll))});const pl=Array.from(Bn);wr==null||wr(!ia,pl.map(ll=>Ai(ll)),Tl.map(ll=>Ai(ll))),nn(pl,"multiple")}else{const Js=it;if(Fr){const Tl=ia?(0,au._5)(Js,La):(0,au.L0)(Js,La);Kt(La,!ia,Tl,mo)}else{const Tl=(0,md.S)([].concat((0,Vr.Z)(Js),[La]),!0,no,tt),{checkedKeys:pl,halfCheckedKeys:ll}=Tl;let kc=pl;if(ia){const Wd=new Set(pl);Wd.delete(La),kc=(0,md.S)(Array.from(Wd),{checked:!1,halfCheckedKeys:ll},no,tt).checkedKeys}Kt(La,!ia,kc,mo)}}zt(ia?null:La)}})),checked:ia}};const ea=(ar,Tr,sa)=>{const{node:ca,checked:La}=Qa(ar,Tr,sa);return ma?ma(La,Tr,sa,ca):ca};if(!Wn.includes(dc))if(Wn.findIndex(ar=>{var Tr;return((Tr=ar[Ja])===null||Tr===void 0?void 0:Tr.columnType)==="EXPAND_COLUMN"})===0){const[ar,...Tr]=Wn;Wn=[ar,dc].concat((0,Vr.Z)(Tr))}else Wn=[dc].concat((0,Vr.Z)(Wn));const pa=Wn.indexOf(dc);Wn=Wn.filter((ar,Tr)=>ar!==dc||Tr===pa);const oi=Wn[pa-1],$a=Wn[pa+1];let Mr=xa;Mr===void 0&&(($a==null?void 0:$a.fixed)!==void 0?Mr=$a.fixed:(oi==null?void 0:oi.fixed)!==void 0&&(Mr=oi.fixed)),Mr&&oi&&((Zn=oi[Ja])===null||Zn===void 0?void 0:Zn.columnType)==="EXPAND_COLUMN"&&oi.fixed===void 0&&(oi.fixed=Mr);const aa=Qe()(`${Wa}-selection-col`,{[`${Wa}-selection-col-with-dropdown`]:Xr&&Yr==="checkbox"}),di={fixed:Mr,width:ta,className:`${Wa}-selection-column`,title:Wt.columnTitle||Ur,render:ea,onCell:Wt.onCell,[Ja]:{className:aa}};return Wn.map(ar=>ar===dc?di:ar)},[Ni,Oi,Wt,it,Dt,Lt,ta,un,to,Gt,Ke,wr,Kt,tt]),Dt]},wh=Te(89489),vl=Te(59477),Fc=Te(6848);const Tf="ascend",Xc="descend";function zu(Ft){return typeof Ft.sorter=="object"&&typeof Ft.sorter.multiple=="number"?Ft.sorter.multiple:!1}function pd(Ft){return typeof Ft=="function"?Ft:Ft&&typeof Ft=="object"&&Ft.compare?Ft.compare:!1}function ju(Ft,Wt){return Wt?Ft[Ft.indexOf(Wt)+1]:Ft[0]}function fu(Ft,Wt,cn){let An=[];function Nn(kn,fr){An.push({column:kn,key:ao(kn,fr),multiplePriority:zu(kn),sortOrder:kn.sortOrder})}return(Ft||[]).forEach((kn,fr)=>{const ur=ko(fr,cn);kn.children?("sortOrder"in kn&&Nn(kn,ur),An=[].concat((0,Vr.Z)(An),(0,Vr.Z)(fu(kn.children,Wt,ur)))):kn.sorter&&("sortOrder"in kn?Nn(kn,ur):Wt&&kn.defaultSortOrder&&An.push({column:kn,key:ao(kn,ur),multiplePriority:zu(kn),sortOrder:kn.defaultSortOrder}))}),An}function Jc(Ft,Wt,cn,An,Nn,kn,fr,ur){return(Wt||[]).map((tr,Ir)=>{const Sr=ko(Ir,ur);let wr=tr;if(wr.sorter){const ta=wr.sortDirections||Nn,Yr=wr.showSorterTooltip===void 0?fr:wr.showSorterTooltip,Xr=ao(wr,Sr),xa=cn.find(to=>{let{key:ii}=to;return ii===Xr}),ma=xa?xa.sortOrder:null,Ka=ju(ta,ma);let Fr;if(tr.sortIcon)Fr=tr.sortIcon({sortOrder:ma});else{const to=ta.includes(Tf)&&ve.createElement(vl.Z,{className:Qe()(`${Ft}-column-sorter-up`,{active:ma===Tf})}),ii=ta.includes(Xc)&&ve.createElement(wh.Z,{className:Qe()(`${Ft}-column-sorter-down`,{active:ma===Xc})});Fr=ve.createElement("span",{className:Qe()(`${Ft}-column-sorter`,{[`${Ft}-column-sorter-full`]:!!(to&&ii)})},ve.createElement("span",{className:`${Ft}-column-sorter-inner`,"aria-hidden":"true"},to,ii))}const{cancelSort:Wa,triggerAsc:Bi,triggerDesc:Fi}=kn||{};let Ai=Wa;Ka===Xc?Ai=Fi:Ka===Tf&&(Ai=Bi);const Ni=typeof Yr=="object"?Yr:{title:Ai};wr=Object.assign(Object.assign({},wr),{className:Qe()(wr.className,{[`${Ft}-column-sort`]:ma}),title:to=>{const ii=ve.createElement("div",{className:`${Ft}-column-sorters`},ve.createElement("span",{className:`${Ft}-column-title`},Ts(tr.title,to)),Fr);return Yr?ve.createElement(Fc.Z,Object.assign({},Ni),ii):ii},onHeaderCell:to=>{const ii=tr.onHeaderCell&&tr.onHeaderCell(to)||{},Pi=ii.onClick,li=ii.onKeyDown;ii.onClick=ki=>{An({column:tr,key:Xr,sortOrder:Ka,multiplePriority:zu(tr)}),Pi==null||Pi(ki)},ii.onKeyDown=ki=>{ki.keyCode===ai.Z.ENTER&&(An({column:tr,key:Xr,sortOrder:Ka,multiplePriority:zu(tr)}),li==null||li(ki))};const Za=ws(tr.title,{}),qa=Za==null?void 0:Za.toString();return ma?ii["aria-sort"]=ma==="ascend"?"ascending":"descending":ii["aria-label"]=qa||"",ii.className=Qe()(ii.className,`${Ft}-column-has-sorters`),ii.tabIndex=0,tr.ellipsis&&(ii.title=(Za!=null?Za:"").toString()),ii}})}return"children"in wr&&(wr=Object.assign(Object.assign({},wr),{children:Jc(Ft,wr.children,cn,An,Nn,kn,fr,Sr)})),wr})}function yd(Ft){const{column:Wt,sortOrder:cn}=Ft;return{column:Wt,order:cn,field:Wt.dataIndex,columnKey:Wt.key}}function Lf(Ft){const Wt=Ft.filter(cn=>{let{sortOrder:An}=cn;return An}).map(yd);return Wt.length===0&&Ft.length?Object.assign(Object.assign({},yd(Ft[Ft.length-1])),{column:void 0}):Wt.length<=1?Wt[0]||{}:Wt}function af(Ft,Wt,cn){const An=Wt.slice().sort((fr,ur)=>ur.multiplePriority-fr.multiplePriority),Nn=Ft.slice(),kn=An.filter(fr=>{let{column:{sorter:ur},sortOrder:tr}=fr;return pd(ur)&&tr});return kn.length?Nn.sort((fr,ur)=>{for(let tr=0;tr<kn.length;tr+=1){const Ir=kn[tr],{column:{sorter:Sr},sortOrder:wr}=Ir,ta=pd(Sr);if(ta&&wr){const Yr=ta(fr,ur,wr);if(Yr!==0)return wr===Tf?Yr:-Yr}}return 0}).map(fr=>{const ur=fr[cn];return ur?Object.assign(Object.assign({},fr),{[cn]:af(ur,Wt,cn)}):fr}):Nn}function of(Ft){let{prefixCls:Wt,mergedColumns:cn,onSorterChange:An,sortDirections:Nn,tableLocale:kn,showSorterTooltip:fr}=Ft;const[ur,tr]=ve.useState(fu(cn,!0)),Ir=ve.useMemo(()=>{let Xr=!0;const xa=fu(cn,!1);if(!xa.length)return ur;const ma=[];function Ka(Wa){Xr?ma.push(Wa):ma.push(Object.assign(Object.assign({},Wa),{sortOrder:null}))}let Fr=null;return xa.forEach(Wa=>{Fr===null?(Ka(Wa),Wa.sortOrder&&(Wa.multiplePriority===!1?Xr=!1:Fr=!0)):(Fr&&Wa.multiplePriority!==!1||(Xr=!1),Ka(Wa))}),ma},[cn,ur]),Sr=ve.useMemo(()=>{const Xr=Ir.map(xa=>{let{column:ma,sortOrder:Ka}=xa;return{column:ma,order:Ka}});return{sortColumns:Xr,sortColumn:Xr[0]&&Xr[0].column,sortOrder:Xr[0]&&Xr[0].order}},[Ir]);function wr(Xr){let xa;Xr.multiplePriority===!1||!Ir.length||Ir[0].multiplePriority===!1?xa=[Xr]:xa=[].concat((0,Vr.Z)(Ir.filter(ma=>{let{key:Ka}=ma;return Ka!==Xr.key})),[Xr]),tr(xa),An(Lf(xa),xa)}return[Xr=>Jc(Wt,Xr,Ir,wr,Nn,kn,fr),Ir,Sr,()=>Lf(Ir)]}function Ag(Ft,Wt){return Ft.map(cn=>{const An=Object.assign({},cn);return An.title=Ts(cn.title,Wt),"children"in An&&(An.children=Ag(An.children,Wt)),An})}function Mh(Ft){return[ve.useCallback(cn=>Ag(cn,Ft),[Ft])]}var Dh=ei((Ft,Wt)=>{const{_renderTimes:cn}=Ft,{_renderTimes:An}=Wt;return cn!==An}),Ud=nl((Ft,Wt)=>{const{_renderTimes:cn}=Ft,{_renderTimes:An}=Wt;return cn!==An}),Ed=Te(64993),Ad=Te(17313),w0=Te(83116),M0=Te(37613),Rt=Ft=>{const{componentCls:Wt}=Ft,cn=`${Ft.lineWidth}px ${Ft.lineType} ${Ft.tableBorderColor}`,An=(Nn,kn,fr)=>({[`&${Wt}-${Nn}`]:{[`> ${Wt}-container`]:{[`> ${Wt}-content, > ${Wt}-body`]:{"\n > table > tbody > tr > th,\n > table > tbody > tr > td\n ":{[`> ${Wt}-expanded-row-fixed`]:{margin:`-${kn}px -${fr+Ft.lineWidth}px`}}}}}});return{[`${Wt}-wrapper`]:{[`${Wt}${Wt}-bordered`]:Object.assign(Object.assign(Object.assign({[`> ${Wt}-title`]:{border:cn,borderBottom:0},[`> ${Wt}-container`]:{borderInlineStart:cn,borderTop:cn,[`
|
|
|
> ${Wt}-content,
|
|
|
> ${Wt}-header,
|
|
|
> ${Wt}-body,
|
|
|
> ${Wt}-summary
|
|
|
`]:{"> table":{"\n > thead > tr > th,\n > thead > tr > td,\n > tbody > tr > th,\n > tbody > tr > td,\n > tfoot > tr > th,\n > tfoot > tr > td\n ":{borderInlineEnd:cn},"> thead":{"> tr:not(:last-child) > th":{borderBottom:cn},"> tr > th::before":{backgroundColor:"transparent !important"}},"\n > thead > tr,\n > tbody > tr,\n > tfoot > tr\n ":{[`> ${Wt}-cell-fix-right-first::after`]:{borderInlineEnd:cn}},"\n > tbody > tr > th,\n > tbody > tr > td\n ":{[`> ${Wt}-expanded-row-fixed`]:{margin:`-${Ft.tablePaddingVertical}px -${Ft.tablePaddingHorizontal+Ft.lineWidth}px`,"&::after":{position:"absolute",top:0,insetInlineEnd:Ft.lineWidth,bottom:0,borderInlineEnd:cn,content:'""'}}}}}},[`&${Wt}-scroll-horizontal`]:{[`> ${Wt}-container > ${Wt}-body`]:{"> table > tbody":{[`
|
|
|
> tr${Wt}-expanded-row,
|
|
|
> tr${Wt}-placeholder
|
|
|
`]:{"> th, > td":{borderInlineEnd:0}}}}}},An("middle",Ft.tablePaddingVerticalMiddle,Ft.tablePaddingHorizontalMiddle)),An("small",Ft.tablePaddingVerticalSmall,Ft.tablePaddingHorizontalSmall)),{[`> ${Wt}-footer`]:{border:cn,borderTop:0}}),[`${Wt}-cell`]:{[`${Wt}-container:first-child`]:{borderTop:0},"&-scrollbar:not([rowspan])":{boxShadow:`0 ${Ft.lineWidth}px 0 ${Ft.lineWidth}px ${Ft.tableHeaderBg}`}},[`${Wt}-bordered ${Wt}-cell-scrollbar`]:{borderInlineEnd:cn}}}},Sn=Ft=>{const{componentCls:Wt}=Ft;return{[`${Wt}-wrapper`]:{[`${Wt}-cell-ellipsis`]:Object.assign(Object.assign({},Ad.vS),{wordBreak:"keep-all",[`
|
|
|
&${Wt}-cell-fix-left-last,
|
|
|
&${Wt}-cell-fix-right-first
|
|
|
`]:{overflow:"visible",[`${Wt}-cell-content`]:{display:"block",overflow:"hidden",textOverflow:"ellipsis"}},[`${Wt}-column-title`]:{overflow:"hidden",textOverflow:"ellipsis",wordBreak:"keep-all"}})}}},sr=Ft=>{const{componentCls:Wt}=Ft;return{[`${Wt}-wrapper`]:{[`${Wt}-tbody > tr${Wt}-placeholder`]:{textAlign:"center",color:Ft.colorTextDisabled,"\n &:hover > th,\n &:hover > td,\n ":{background:Ft.colorBgContainer}}}}},ir=Te(15969),Lr=Ft=>{const{componentCls:Wt,antCls:cn,controlInteractiveSize:An,motionDurationSlow:Nn,lineWidth:kn,paddingXS:fr,lineType:ur,tableBorderColor:tr,tableExpandIconBg:Ir,tableExpandColumnWidth:Sr,borderRadius:wr,fontSize:ta,fontSizeSM:Yr,lineHeight:Xr,tablePaddingVertical:xa,tablePaddingHorizontal:ma,tableExpandedRowBg:Ka,paddingXXS:Fr}=Ft,Wa=An/2-kn,Bi=Wa*2+kn*3,Fi=`${kn}px ${ur} ${tr}`,Ai=Fr-kn;return{[`${Wt}-wrapper`]:{[`${Wt}-expand-icon-col`]:{width:Sr},[`${Wt}-row-expand-icon-cell`]:{textAlign:"center",[`${Wt}-row-expand-icon`]:{display:"inline-flex",float:"none",verticalAlign:"sub"}},[`${Wt}-row-indent`]:{height:1,float:"left"},[`${Wt}-row-expand-icon`]:Object.assign(Object.assign({},(0,ir.N)(Ft)),{position:"relative",float:"left",boxSizing:"border-box",width:Bi,height:Bi,padding:0,color:"inherit",lineHeight:`${Bi}px`,background:Ir,border:Fi,borderRadius:wr,transform:`scale(${An/Bi})`,transition:`all ${Nn}`,userSelect:"none","&:focus, &:hover, &:active":{borderColor:"currentcolor"},"&::before, &::after":{position:"absolute",background:"currentcolor",transition:`transform ${Nn} ease-out`,content:'""'},"&::before":{top:Wa,insetInlineEnd:Ai,insetInlineStart:Ai,height:kn},"&::after":{top:Ai,bottom:Ai,insetInlineStart:Wa,width:kn,transform:"rotate(90deg)"},"&-collapsed::before":{transform:"rotate(-180deg)"},"&-collapsed::after":{transform:"rotate(0deg)"},"&-spaced":{"&::before, &::after":{display:"none",content:"none"},background:"transparent",border:0,visibility:"hidden"}}),[`${Wt}-row-indent + ${Wt}-row-expand-icon`]:{marginTop:(ta*Xr-kn*3)/2-Math.ceil((Yr*1.4-kn*3)/2),marginInlineEnd:fr},[`tr${Wt}-expanded-row`]:{"&, &:hover":{"> th, > td":{background:Ka}},[`${cn}-descriptions-view`]:{display:"flex",table:{flex:"auto",width:"auto"}}},[`${Wt}-expanded-row-fixed`]:{position:"relative",margin:`-${xa}px -${ma}px`,padding:`${xa}px ${ma}px`}}}},ka=Ft=>{const{componentCls:Wt,antCls:cn,iconCls:An,tableFilterDropdownWidth:Nn,tableFilterDropdownSearchWidth:kn,paddingXXS:fr,paddingXS:ur,colorText:tr,lineWidth:Ir,lineType:Sr,tableBorderColor:wr,tableHeaderIconColor:ta,fontSizeSM:Yr,tablePaddingHorizontal:Xr,borderRadius:xa,motionDurationSlow:ma,colorTextDescription:Ka,colorPrimary:Fr,tableHeaderFilterActiveBg:Wa,colorTextDisabled:Bi,tableFilterDropdownBg:Fi,tableFilterDropdownHeight:Ai,controlItemBgHover:Ni,controlItemBgActive:to,boxShadowSecondary:ii,filterDropdownMenuBg:Pi}=Ft,li=`${cn}-dropdown`,Za=`${Wt}-filter-dropdown`,qa=`${cn}-tree`,ki=`${Ir}px ${Sr} ${wr}`;return[{[`${Wt}-wrapper`]:{[`${Wt}-filter-column`]:{display:"flex",justifyContent:"space-between"},[`${Wt}-filter-trigger`]:{position:"relative",display:"flex",alignItems:"center",marginBlock:-fr,marginInline:`${fr}px ${-Xr/2}px`,padding:`0 ${fr}px`,color:ta,fontSize:Yr,borderRadius:xa,cursor:"pointer",transition:`all ${ma}`,"&:hover":{color:Ka,background:Wa},"&.active":{color:Fr}}}},{[`${cn}-dropdown`]:{[Za]:Object.assign(Object.assign({},(0,Ad.Wf)(Ft)),{minWidth:Nn,backgroundColor:Fi,borderRadius:xa,boxShadow:ii,overflow:"hidden",[`${li}-menu`]:{maxHeight:Ai,overflowX:"hidden",border:0,boxShadow:"none",borderRadius:"unset",backgroundColor:Pi,"&:empty::after":{display:"block",padding:`${ur}px 0`,color:Bi,fontSize:Yr,textAlign:"center",content:'"Not Found"'}},[`${Za}-tree`]:{paddingBlock:`${ur}px 0`,paddingInline:ur,[qa]:{padding:0},[`${qa}-treenode ${qa}-node-content-wrapper:hover`]:{backgroundColor:Ni},[`${qa}-treenode-checkbox-checked ${qa}-node-content-wrapper`]:{"&, &:hover":{backgroundColor:to}}},[`${Za}-search`]:{padding:ur,borderBottom:ki,"&-input":{input:{minWidth:kn},[An]:{color:Bi}}},[`${Za}-checkall`]:{width:"100%",marginBottom:fr,marginInlineStart:fr},[`${Za}-btns`]:{display:"flex",justifyContent:"space-between",padding:`${ur-Ir}px ${ur}px`,overflow:"hidden",borderTop:ki}})}},{[`${cn}-dropdown ${Za}, ${Za}-submenu`]:{[`${cn}-checkbox-wrapper + span`]:{paddingInlineStart:ur,color:tr},"> ul":{maxHeight:"calc(100vh - 130px)",overflowX:"hidden",overflowY:"auto"}}}]},$r=Ft=>{const{componentCls:Wt,lineWidth:cn,colorSplit:An,motionDurationSlow:Nn,zIndexTableFixed:kn,tableBg:fr,zIndexTableSticky:ur}=Ft,tr=An;return{[`${Wt}-wrapper`]:{[`
|
|
|
${Wt}-cell-fix-left,
|
|
|
${Wt}-cell-fix-right
|
|
|
`]:{position:"sticky !important",zIndex:kn,background:fr},[`
|
|
|
${Wt}-cell-fix-left-first::after,
|
|
|
${Wt}-cell-fix-left-last::after
|
|
|
`]:{position:"absolute",top:0,right:{_skip_check_:!0,value:0},bottom:-cn,width:30,transform:"translateX(100%)",transition:`box-shadow ${Nn}`,content:'""',pointerEvents:"none"},[`${Wt}-cell-fix-left-all::after`]:{display:"none"},[`
|
|
|
${Wt}-cell-fix-right-first::after,
|
|
|
${Wt}-cell-fix-right-last::after
|
|
|
`]:{position:"absolute",top:0,bottom:-cn,left:{_skip_check_:!0,value:0},width:30,transform:"translateX(-100%)",transition:`box-shadow ${Nn}`,content:'""',pointerEvents:"none"},[`${Wt}-container`]:{"&::before, &::after":{position:"absolute",top:0,bottom:0,zIndex:ur+1,width:30,transition:`box-shadow ${Nn}`,content:'""',pointerEvents:"none"},"&::before":{insetInlineStart:0},"&::after":{insetInlineEnd:0}},[`${Wt}-ping-left`]:{[`&:not(${Wt}-has-fix-left) ${Wt}-container`]:{position:"relative","&::before":{boxShadow:`inset 10px 0 8px -8px ${tr}`}},[`
|
|
|
${Wt}-cell-fix-left-first::after,
|
|
|
${Wt}-cell-fix-left-last::after
|
|
|
`]:{boxShadow:`inset 10px 0 8px -8px ${tr}`},[`${Wt}-cell-fix-left-last::before`]:{backgroundColor:"transparent !important"}},[`${Wt}-ping-right`]:{[`&:not(${Wt}-has-fix-right) ${Wt}-container`]:{position:"relative","&::after":{boxShadow:`inset -10px 0 8px -8px ${tr}`}},[`
|
|
|
${Wt}-cell-fix-right-first::after,
|
|
|
${Wt}-cell-fix-right-last::after
|
|
|
`]:{boxShadow:`inset -10px 0 8px -8px ${tr}`}}}}},ua=Ft=>{const{componentCls:Wt,antCls:cn}=Ft;return{[`${Wt}-wrapper`]:{[`${Wt}-pagination${cn}-pagination`]:{margin:`${Ft.margin}px 0`},[`${Wt}-pagination`]:{display:"flex",flexWrap:"wrap",rowGap:Ft.paddingXS,"> *":{flex:"none"},"&-left":{justifyContent:"flex-start"},"&-center":{justifyContent:"center"},"&-right":{justifyContent:"flex-end"}}}}},Qr=Ft=>{const{componentCls:Wt,tableRadius:cn}=Ft;return{[`${Wt}-wrapper`]:{[Wt]:{[`${Wt}-title, ${Wt}-header`]:{borderRadius:`${cn}px ${cn}px 0 0`},[`${Wt}-title + ${Wt}-container`]:{borderStartStartRadius:0,borderStartEndRadius:0,[`${Wt}-header, table`]:{borderRadius:0},"table > thead > tr:first-child":{"th:first-child, th:last-child, td:first-child, td:last-child":{borderRadius:0}}},"&-container":{borderStartStartRadius:cn,borderStartEndRadius:cn,"table > thead > tr:first-child":{"> *:first-child":{borderStartStartRadius:cn},"> *:last-child":{borderStartEndRadius:cn}}},"&-footer":{borderRadius:`0 0 ${cn}px ${cn}px`}}}}},Ei=Ft=>{const{componentCls:Wt}=Ft;return{[`${Wt}-wrapper-rtl`]:{direction:"rtl",table:{direction:"rtl"},[`${Wt}-pagination-left`]:{justifyContent:"flex-end"},[`${Wt}-pagination-right`]:{justifyContent:"flex-start"},[`${Wt}-row-expand-icon`]:{float:"right","&::after":{transform:"rotate(-90deg)"},"&-collapsed::before":{transform:"rotate(180deg)"},"&-collapsed::after":{transform:"rotate(0deg)"}},[`${Wt}-container`]:{"&::before":{insetInlineStart:"unset",insetInlineEnd:0},"&::after":{insetInlineStart:0,insetInlineEnd:"unset"},[`${Wt}-row-indent`]:{float:"right"}}}}},Si=Ft=>{const{componentCls:Wt,antCls:cn,iconCls:An,fontSizeIcon:Nn,padding:kn,paddingXS:fr,tableHeaderIconColor:ur,tableHeaderIconColorHover:tr,tableSelectionColumnWidth:Ir}=Ft;return{[`${Wt}-wrapper`]:{[`${Wt}-selection-col`]:{width:Ir,[`&${Wt}-selection-col-with-dropdown`]:{width:Ir+Nn+kn/4}},[`${Wt}-bordered ${Wt}-selection-col`]:{width:Ir+fr*2,[`&${Wt}-selection-col-with-dropdown`]:{width:Ir+Nn+kn/4+fr*2}},[`
|
|
|
table tr th${Wt}-selection-column,
|
|
|
table tr td${Wt}-selection-column
|
|
|
`]:{paddingInlineEnd:Ft.paddingXS,paddingInlineStart:Ft.paddingXS,textAlign:"center",[`${cn}-radio-wrapper`]:{marginInlineEnd:0}},[`table tr th${Wt}-selection-column${Wt}-cell-fix-left`]:{zIndex:Ft.zIndexTableFixed+1},[`table tr th${Wt}-selection-column::after`]:{backgroundColor:"transparent !important"},[`${Wt}-selection`]:{position:"relative",display:"inline-flex",flexDirection:"column"},[`${Wt}-selection-extra`]:{position:"absolute",top:0,zIndex:1,cursor:"pointer",transition:`all ${Ft.motionDurationSlow}`,marginInlineStart:"100%",paddingInlineStart:`${Ft.tablePaddingHorizontal/4}px`,[An]:{color:ur,fontSize:Nn,verticalAlign:"baseline","&:hover":{color:tr}}}}}},bi=Ft=>{const{componentCls:Wt}=Ft,cn=(An,Nn,kn,fr)=>({[`${Wt}${Wt}-${An}`]:{fontSize:fr,[`
|
|
|
${Wt}-title,
|
|
|
${Wt}-footer,
|
|
|
${Wt}-cell,
|
|
|
${Wt}-thead > tr > th,
|
|
|
${Wt}-tbody > tr > th,
|
|
|
${Wt}-tbody > tr > td,
|
|
|
tfoot > tr > th,
|
|
|
tfoot > tr > td
|
|
|
`]:{padding:`${Nn}px ${kn}px`},[`${Wt}-filter-trigger`]:{marginInlineEnd:`-${kn/2}px`},[`${Wt}-expanded-row-fixed`]:{margin:`-${Nn}px -${kn}px`},[`${Wt}-tbody`]:{[`${Wt}-wrapper:only-child ${Wt}`]:{marginBlock:`-${Nn}px`,marginInline:`${Ft.tableExpandColumnWidth-kn}px -${kn}px`}},[`${Wt}-selection-column`]:{paddingInlineStart:`${kn/4}px`}}});return{[`${Wt}-wrapper`]:Object.assign(Object.assign({},cn("middle",Ft.tablePaddingVerticalMiddle,Ft.tablePaddingHorizontalMiddle,Ft.tableFontSizeMiddle)),cn("small",Ft.tablePaddingVerticalSmall,Ft.tablePaddingHorizontalSmall,Ft.tableFontSizeSmall))}},jo=Ft=>{const{componentCls:Wt,marginXXS:cn,fontSizeIcon:An,tableHeaderIconColor:Nn,tableHeaderIconColorHover:kn}=Ft;return{[`${Wt}-wrapper`]:{[`${Wt}-thead th${Wt}-column-has-sorters`]:{outline:"none",cursor:"pointer",transition:`all ${Ft.motionDurationSlow}`,"&:hover":{background:Ft.tableHeaderSortHoverBg,"&::before":{backgroundColor:"transparent !important"}},"&:focus-visible":{color:Ft.colorPrimary},[`
|
|
|
&${Wt}-cell-fix-left:hover,
|
|
|
&${Wt}-cell-fix-right:hover
|
|
|
`]:{background:Ft.tableFixedHeaderSortActiveBg}},[`${Wt}-thead th${Wt}-column-sort`]:{background:Ft.tableHeaderSortBg,"&::before":{backgroundColor:"transparent !important"}},[`td${Wt}-column-sort`]:{background:Ft.tableBodySortBg},[`${Wt}-column-title`]:{position:"relative",zIndex:1,flex:1},[`${Wt}-column-sorters`]:{display:"flex",flex:"auto",alignItems:"center",justifyContent:"space-between","&::after":{position:"absolute",inset:0,width:"100%",height:"100%",content:'""'}},[`${Wt}-column-sorter`]:{marginInlineStart:cn,color:Nn,fontSize:0,transition:`color ${Ft.motionDurationSlow}`,"&-inner":{display:"inline-flex",flexDirection:"column",alignItems:"center"},"&-up, &-down":{fontSize:An,"&.active":{color:Ft.colorPrimary}},[`${Wt}-column-sorter-up + ${Wt}-column-sorter-down`]:{marginTop:"-0.3em"}},[`${Wt}-column-sorters:hover ${Wt}-column-sorter`]:{color:kn}}}},Vo=Ft=>{const{componentCls:Wt,opacityLoading:cn,tableScrollThumbBg:An,tableScrollThumbBgHover:Nn,tableScrollThumbSize:kn,tableScrollBg:fr,zIndexTableSticky:ur,stickyScrollBarBorderRadius:tr}=Ft,Ir=`${Ft.lineWidth}px ${Ft.lineType} ${Ft.tableBorderColor}`;return{[`${Wt}-wrapper`]:{[`${Wt}-sticky`]:{"&-holder":{position:"sticky",zIndex:ur,background:Ft.colorBgContainer},"&-scroll":{position:"sticky",bottom:0,height:`${kn}px !important`,zIndex:ur,display:"flex",alignItems:"center",background:fr,borderTop:Ir,opacity:cn,"&:hover":{transformOrigin:"center bottom"},"&-bar":{height:kn,backgroundColor:An,borderRadius:tr,transition:`all ${Ft.motionDurationSlow}, transform none`,position:"absolute",bottom:0,"&:hover, &-active":{backgroundColor:Nn}}}}}}},Ss=Ft=>{const{componentCls:Wt,lineWidth:cn,tableBorderColor:An}=Ft,Nn=`${cn}px ${Ft.lineType} ${An}`;return{[`${Wt}-wrapper`]:{[`${Wt}-summary`]:{position:"relative",zIndex:Ft.zIndexTableFixed,background:Ft.tableBg,"> tr":{"> th, > td":{borderBottom:Nn}}},[`div${Wt}-summary`]:{boxShadow:`0 -${cn}px 0 ${An}`}}}},fa=Ft=>{const{componentCls:Wt}=Ft,cn=`${Ft.lineWidth}px ${Ft.lineType} ${Ft.tableBorderColor}`,An=`${Wt}-expanded-row-cell`;return{[`${Wt}-wrapper`]:{[`${Wt}-tbody-virtual`]:{[`${Wt}-row`]:{display:"flex",boxSizing:"border-box",width:"100%"},[`${Wt}-cell`]:{borderBottom:cn},[`${Wt}-expanded-row`]:{[`${An}${An}-fixed`]:{position:"sticky",insetInlineStart:0,overflow:"hidden",width:`calc(var(--virtual-width) - ${Ft.lineWidth}px)`,borderInlineEnd:"none"}}},[`${Wt}-bordered`]:{[`${Wt}-tbody-virtual`]:{"&:after":{content:'""',insetInline:0,bottom:0,borderBottom:cn,position:"absolute"},[`${Wt}-cell`]:{borderInlineEnd:cn,[`&${Wt}-cell-fix-right-first:before`]:{content:'""',position:"absolute",insetBlock:0,insetInlineStart:-Ft.lineWidth,borderInlineStart:cn}}}}}}};const Ko=Ft=>{const{componentCls:Wt,fontWeightStrong:cn,tablePaddingVertical:An,tablePaddingHorizontal:Nn,lineWidth:kn,lineType:fr,tableBorderColor:ur,tableFontSize:tr,tableBg:Ir,tableRadius:Sr,tableHeaderTextColor:wr,motionDurationMid:ta,tableHeaderBg:Yr,tableHeaderCellSplitColor:Xr,tableRowHoverBg:xa,tableSelectedRowBg:ma,tableSelectedRowHoverBg:Ka,tableFooterTextColor:Fr,tableFooterBg:Wa,paddingContentVerticalLG:Bi}=Ft,Fi=`${kn}px ${fr} ${ur}`;return{[`${Wt}-wrapper`]:Object.assign(Object.assign({clear:"both",maxWidth:"100%"},(0,Ad.dF)()),{[Wt]:Object.assign(Object.assign({},(0,Ad.Wf)(Ft)),{fontSize:tr,background:Ir,borderRadius:`${Sr}px ${Sr}px 0 0`}),table:{width:"100%",textAlign:"start",borderRadius:`${Sr}px ${Sr}px 0 0`,borderCollapse:"separate",borderSpacing:0},[`
|
|
|
${Wt}-cell,
|
|
|
${Wt}-thead > tr > th,
|
|
|
${Wt}-tbody > tr > th,
|
|
|
${Wt}-tbody > tr > td,
|
|
|
tfoot > tr > th,
|
|
|
tfoot > tr > td
|
|
|
`]:{position:"relative",padding:`${Bi}px ${Nn}px`,overflowWrap:"break-word"},[`${Wt}-title`]:{padding:`${An}px ${Nn}px`},[`${Wt}-thead`]:{"\n > tr > th,\n > tr > td\n ":{position:"relative",color:wr,fontWeight:cn,textAlign:"start",background:Yr,borderBottom:Fi,transition:`background ${ta} ease`,"&[colspan]:not([colspan='1'])":{textAlign:"center"},[`&:not(:last-child):not(${Wt}-selection-column):not(${Wt}-row-expand-icon-cell):not([colspan])::before`]:{position:"absolute",top:"50%",insetInlineEnd:0,width:1,height:"1.6em",backgroundColor:Xr,transform:"translateY(-50%)",transition:`background-color ${ta}`,content:'""'}},"> tr:not(:last-child) > th[colspan]":{borderBottom:0}},[`${Wt}-tbody`]:{"> tr":{"> th, > td":{transition:`background ${ta}, border-color ${ta}`,borderBottom:Fi,[`
|
|
|
> ${Wt}-wrapper:only-child,
|
|
|
> ${Wt}-expanded-row-fixed > ${Wt}-wrapper:only-child
|
|
|
`]:{[Wt]:{marginBlock:`-${An}px`,marginInline:`${Ft.tableExpandColumnWidth-Nn}px -${Nn}px`,[`${Wt}-tbody > tr:last-child > td`]:{borderBottom:0,"&:first-child, &:last-child":{borderRadius:0}}}}},"> th":{position:"relative",color:wr,fontWeight:cn,textAlign:"start",background:Yr,borderBottom:Fi,transition:`background ${ta} ease`},[`
|
|
|
&${Wt}-row:hover > th,
|
|
|
&${Wt}-row:hover > td,
|
|
|
> th${Wt}-cell-row-hover,
|
|
|
> td${Wt}-cell-row-hover
|
|
|
`]:{background:xa},[`&${Wt}-row-selected`]:{"> th, > td":{background:ma},"&:hover > th, &:hover > td":{background:Ka}}}},[`${Wt}-footer`]:{padding:`${An}px ${Nn}px`,color:Fr,background:Wa}})}};var No=(0,w0.Z)("Table",Ft=>{const{colorTextHeading:Wt,colorSplit:cn,colorIcon:An,colorIconHover:Nn,opacityLoading:kn,colorBgContainer:fr,controlInteractiveSize:ur,headerBg:tr,headerColor:Ir,headerSortActiveBg:Sr,headerSortHoverBg:wr,bodySortBg:ta,rowHoverBg:Yr,rowSelectedBg:Xr,rowSelectedHoverBg:xa,rowExpandedBg:ma,cellPaddingBlock:Ka,cellPaddingInline:Fr,cellPaddingBlockMD:Wa,cellPaddingInlineMD:Bi,cellPaddingBlockSM:Fi,cellPaddingInlineSM:Ai,borderColor:Ni,footerBg:to,footerColor:ii,headerBorderRadius:Pi,cellFontSize:li,cellFontSizeMD:Za,cellFontSizeSM:qa,headerSplitColor:ki,fixedHeaderSortActiveBg:Ao,headerFilterHoverBg:no,filterDropdownBg:Oi,expandIconBg:Ke,selectionColumnWidth:tt,stickyScrollBarBg:it}=Ft,pt=new Ed.C(An),Dt=new Ed.C(Nn),Lt=2,Gt=(0,M0.TS)(Ft,{tableFontSize:li,tableBg:fr,tableRadius:Pi,tablePaddingVertical:Ka,tablePaddingHorizontal:Fr,tablePaddingVerticalMiddle:Wa,tablePaddingHorizontalMiddle:Bi,tablePaddingVerticalSmall:Fi,tablePaddingHorizontalSmall:Ai,tableBorderColor:Ni,tableHeaderTextColor:Ir,tableHeaderBg:tr,tableFooterTextColor:ii,tableFooterBg:to,tableHeaderCellSplitColor:ki,tableHeaderSortBg:Sr,tableHeaderSortHoverBg:wr,tableHeaderIconColor:pt.clone().setAlpha(pt.getAlpha()*kn).toRgbString(),tableHeaderIconColorHover:Dt.clone().setAlpha(Dt.getAlpha()*kn).toRgbString(),tableBodySortBg:ta,tableFixedHeaderSortActiveBg:Ao,tableHeaderFilterActiveBg:no,tableFilterDropdownBg:Oi,tableRowHoverBg:Yr,tableSelectedRowBg:Xr,tableSelectedRowHoverBg:xa,zIndexTableFixed:Lt,zIndexTableSticky:Lt+1,tableFontSizeMiddle:Za,tableFontSizeSmall:qa,tableSelectionColumnWidth:tt,tableExpandIconBg:Ke,tableExpandColumnWidth:ur+2*Ft.padding,tableExpandedRowBg:ma,tableFilterDropdownWidth:120,tableFilterDropdownHeight:264,tableFilterDropdownSearchWidth:140,tableScrollThumbSize:8,tableScrollThumbBg:it,tableScrollThumbBgHover:Wt,tableScrollBg:cn});return[Ko(Gt),ua(Gt),Ss(Gt),jo(Gt),ka(Gt),Rt(Gt),Qr(Gt),Lr(Gt),Ss(Gt),sr(Gt),Si(Gt),$r(Gt),Vo(Gt),Sn(Gt),bi(Gt),Ei(Gt),fa(Gt)]},Ft=>{const{colorFillAlter:Wt,colorBgContainer:cn,colorTextHeading:An,colorFillSecondary:Nn,colorFillContent:kn,controlItemBgActive:fr,controlItemBgActiveHover:ur,padding:tr,paddingSM:Ir,paddingXS:Sr,colorBorderSecondary:wr,borderRadiusLG:ta,fontSize:Yr,controlHeight:Xr,colorTextPlaceholder:xa}=Ft,ma=new Ed.C(Nn).onBackground(cn).toHexShortString(),Ka=new Ed.C(kn).onBackground(cn).toHexShortString(),Fr=new Ed.C(Wt).onBackground(cn).toHexShortString();return{headerBg:Fr,headerColor:An,headerSortActiveBg:ma,headerSortHoverBg:Ka,bodySortBg:Fr,rowHoverBg:Fr,rowSelectedBg:fr,rowSelectedHoverBg:ur,rowExpandedBg:Wt,cellPaddingBlock:tr,cellPaddingInline:tr,cellPaddingBlockMD:Ir,cellPaddingInlineMD:Sr,cellPaddingBlockSM:Sr,cellPaddingInlineSM:Sr,borderColor:wr,headerBorderRadius:ta,footerBg:Fr,footerColor:An,cellFontSize:Yr,cellFontSizeMD:Yr,cellFontSizeSM:Yr,headerSplitColor:wr,fixedHeaderSortActiveBg:ma,headerFilterHoverBg:kn,filterDropdownMenuBg:cn,filterDropdownBg:cn,expandIconBg:cn,selectionColumnWidth:Xr,stickyScrollBarBg:xa,stickyScrollBarBorderRadius:100}});const ns=[],Eo=(Ft,Wt)=>{const{prefixCls:cn,className:An,rootClassName:Nn,style:kn,size:fr,bordered:ur,dropdownPrefixCls:tr,dataSource:Ir,pagination:Sr,rowSelection:wr,rowKey:ta="key",rowClassName:Yr,columns:Xr,children:xa,childrenColumnName:ma,onChange:Ka,getPopupContainer:Fr,loading:Wa,expandIcon:Bi,expandable:Fi,expandedRowRender:Ai,expandIconColumnIndex:Ni,indentSize:to,scroll:ii,sortDirections:Pi,locale:li,showSorterTooltip:Za=!0,virtual:qa}=Ft,ki=ve.useMemo(()=>Xr||je(xa),[Xr,xa]),Ao=ve.useMemo(()=>ki.some(ls=>ls.responsive),[ki]),no=(0,Al.Z)(Ao),Oi=ve.useMemo(()=>{const ls=new Set(Object.keys(no).filter(Qs=>no[Qs]));return ki.filter(Qs=>!Qs.responsive||Qs.responsive.some(hu=>ls.has(hu)))},[ki,no]),Ke=(0,Go.Z)(Ft,["className","style","columns"]),{locale:tt=ol.Z,direction:it,table:pt,renderEmpty:Dt,getPrefixCls:Lt,getPopupContainer:Gt}=ve.useContext(Os.E_),zt=(0,Mu.Z)(fr),nn=Object.assign(Object.assign({},tt.Table),li),Kt=Ir||ns,un=Lt("table",cn),wn=Lt("dropdown",tr),xn=Object.assign({childrenColumnName:ma,expandIconColumnIndex:Ni},Fi),{childrenColumnName:Zn="children"}=xn,Wn=ve.useMemo(()=>Kt.some(ls=>ls==null?void 0:ls[Zn])?"nest":Ai||Fi&&Fi.expandedRowRender?"row":null,[Kt]),Bn={body:ve.useRef()},_n=ve.useMemo(()=>typeof ta=="function"?ta:ls=>ls==null?void 0:ls[ta],[ta]),[Rn]=zl(Kt,Zn,_n),Kn={},Cr=function(ls,Qs){let hu=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;var yl,Eu,xl;const Au=Object.assign(Object.assign({},Kn),ls);hu&&((yl=Kn.resetPagination)===null||yl===void 0||yl.call(Kn),!((Eu=Au.pagination)===null||Eu===void 0)&&Eu.current&&(Au.pagination.current=1),Sr&&Sr.onChange&&Sr.onChange(1,(xl=Au.pagination)===null||xl===void 0?void 0:xl.pageSize)),ii&&ii.scrollToFirstRowOnChange!==!1&&Bn.body.current&&(0,lu.Z)(0,{getContainer:()=>Bn.body.current}),Ka==null||Ka(Au.pagination,Au.filters,Au.sorter,{currentDataSource:Xu(af(Kt,Au.sorterStates,Zn),Au.filterStates),action:Qs})},Ur=(ls,Qs)=>{Cr({sorter:ls,sorterStates:Qs},"sort",!1)},[Qa,ea,pa,oi]=of({prefixCls:un,mergedColumns:Oi,onSorterChange:Ur,sortDirections:Pi||["ascend","descend"],tableLocale:nn,showSorterTooltip:Za}),$a=ve.useMemo(()=>af(Kt,ea,Zn),[Kt,ea]);Kn.sorter=oi(),Kn.sorterStates=ea;const Mr=(ls,Qs)=>{Cr({filters:ls,filterStates:Qs},"filter",!0)},[aa,di,ar]=ac({prefixCls:un,locale:nn,dropdownPrefixCls:wn,mergedColumns:Oi,onFilterChange:Mr,getPopupContainer:Fr||Gt}),Tr=Xu($a,di);Kn.filters=ar,Kn.filterStates=di;const sa=ve.useMemo(()=>{const ls={};return Object.keys(ar).forEach(Qs=>{ar[Qs]!==null&&(ls[Qs]=ar[Qs])}),Object.assign(Object.assign({},pa),{filters:ls})},[pa,ar]),[ca]=Mh(sa),La=(ls,Qs)=>{Cr({pagination:Object.assign(Object.assign({},Kn.pagination),{current:ls,pageSize:Qs})},"paginate")},[ia,da]=ql(Tr.length,La,Sr);Kn.pagination=Sr===!1?{}:cu(ia,Sr),Kn.resetPagination=da;const wi=ve.useMemo(()=>{if(Sr===!1||!ia.pageSize)return Tr;const{current:ls=1,total:Qs,pageSize:hu=Ju}=ia;return Tr.length<Qs?Tr.length>hu?Tr.slice((ls-1)*hu,ls*hu):Tr:Tr.slice((ls-1)*hu,ls*hu)},[!!Sr,Tr,ia&&ia.current,ia&&ia.pageSize,ia&&ia.total]),[xi,oa]=Iu({prefixCls:un,data:Tr,pageData:wi,getRowKey:_n,getRecordByKey:Rn,expandType:Wn,childrenColumnName:Zn,locale:nn,getPopupContainer:Fr||Gt},wr),mo=(ls,Qs,hu)=>{let yl;return typeof Yr=="function"?yl=Qe()(Yr(ls,Qs,hu)):yl=Qe()(Yr),Qe()({[`${un}-row-selected`]:oa.has(_n(ls,Qs))},yl)};xn.__PARENT_RENDER_ICON__=xn.expandIcon,xn.expandIcon=xn.expandIcon||Bi||Ua(nn),Wn==="nest"&&xn.expandIconColumnIndex===void 0?xn.expandIconColumnIndex=wr?1:0:xn.expandIconColumnIndex>0&&wr&&(xn.expandIconColumnIndex-=1),typeof xn.indentSize!="number"&&(xn.indentSize=typeof to=="number"?to:15);const wo=ve.useCallback(ls=>ca(xi(aa(Qa(ls)))),[Qa,aa,xi]);let ks,Ls;if(Sr!==!1&&(ia!=null&&ia.total)){let ls;ia.size?ls=ia.size:ls=zt==="small"||zt==="middle"?"small":void 0;const Qs=Eu=>ve.createElement(uc.Z,Object.assign({},ia,{className:Qe()(`${un}-pagination ${un}-pagination-${Eu}`,ia.className),size:ls})),hu=it==="rtl"?"left":"right",{position:yl}=ia;if(yl!==null&&Array.isArray(yl)){const Eu=yl.find(Zl=>Zl.includes("top")),xl=yl.find(Zl=>Zl.includes("bottom")),Au=yl.every(Zl=>`${Zl}`=="none");!Eu&&!xl&&!Au&&(Ls=Qs(hu)),Eu&&(ks=Qs(Eu.toLowerCase().replace("top",""))),xl&&(Ls=Qs(xl.toLowerCase().replace("bottom","")))}else Ls=Qs(hu)}let Js;typeof Wa=="boolean"?Js={spinning:Wa}:typeof Wa=="object"&&(Js=Object.assign({spinning:!0},Wa));const[Tl,pl]=No(un),[,ll]=(0,Ga.Z)(),kc=Qe()(`${un}-wrapper`,pt==null?void 0:pt.className,{[`${un}-wrapper-rtl`]:it==="rtl"},An,Nn,pl),Wd=Object.assign(Object.assign({},pt==null?void 0:pt.style),kn),_c=li&&li.emptyText||(Dt==null?void 0:Dt("Table"))||ve.createElement(Vs.Z,{componentName:"Table"}),Zr=qa?Ud:Dh,rh={},xg=ve.useMemo(()=>{const{fontSize:ls,lineHeight:Qs,padding:hu,paddingXS:yl,paddingSM:Eu}=ll,xl=Math.floor(ls*Qs);switch(zt){case"large":return hu*2+xl;case"small":return yl*2+xl;default:return Eu*2+xl}},[ll,zt]);return qa&&(rh.listItemHeight=xg),Tl(ve.createElement("div",{ref:Wt,className:kc,style:Wd},ve.createElement(zi.Z,Object.assign({spinning:!1},Js),ks,ve.createElement(Zr,Object.assign({},rh,Ke,{columns:Oi,direction:it,expandable:xn,prefixCls:un,className:Qe()({[`${un}-middle`]:zt==="middle",[`${un}-small`]:zt==="small",[`${un}-bordered`]:ur,[`${un}-empty`]:Kt.length===0}),data:wi,rowKey:_n,rowClassName:mo,emptyText:_c,internalHooks:He,internalRefs:Bn,transformColumns:wo})),Ls)))};var Ui=ve.forwardRef(Eo);const ms=(Ft,Wt)=>{const cn=ve.useRef(0);return cn.current+=1,ve.createElement(Ui,Object.assign({},Ft,{ref:Wt,_renderTimes:cn.current}))},rs=ve.forwardRef(ms);rs.SELECTION_COLUMN=dc,rs.EXPAND_COLUMN=Oe,rs.SELECTION_ALL=eh,rs.SELECTION_INVERT=rf,rs.SELECTION_NONE=th,rs.Column=Xs,rs.ColumnGroup=_l,rs.Summary=gt;var Ol=rs,ml=Ol},17574:function(At,It,Te){"use strict";Te.d(It,{default:function(){return ut}});var Oe=Te(60091),He=Te(94480),Ne=Te(52671),be=Te(8657),_e=Te(54476),Me=Te(59301),ve={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M880 298.4H521L403.7 186.2a8.15 8.15 0 00-5.5-2.2H144c-17.7 0-32 14.3-32 32v592c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V330.4c0-17.7-14.3-32-32-32zM840 768H184V256h188.5l119.6 114.4H840V768z"}}]},name:"folder",theme:"outlined"},Ee=ve,Pe=Te(7657),xe=function(lt,yt){return Me.createElement(Pe.Z,(0,_e.Z)({},lt,{ref:yt,icon:Ee}))},pe=Me.forwardRef(xe),Ae=pe,Se=Te(92310),ce=Te.n(Se),te=Te(35654),ne=Te(71430),le=Te(36355),se=Te(56082),fe=Te(62892),he=Te(20648);const ie=4;function ue(nt){const{dropPosition:lt,dropLevelOffset:yt,prefixCls:ft,indent:ct,direction:vt="ltr"}=nt,Ut=vt==="ltr"?"left":"right",Zt=vt==="ltr"?"right":"left",en={[Ut]:-yt*ct+ie,[Zt]:0};switch(lt){case-1:en.top=-3;break;case 1:en.bottom=-3;break;default:en.bottom=-3,en[Ut]=ct+ie;break}return Me.createElement("div",{style:en,className:`${ft}-drop-indicator`})}var me=Te(71997),Ie=Me.forwardRef((nt,lt)=>{const{getPrefixCls:yt,direction:ft,virtual:ct,tree:vt}=Me.useContext(le.E_),{prefixCls:Ut,className:Zt,showIcon:en=!1,showLine:mn,switcherIcon:Bt,blockNode:tn=!1,children:on,checkable:Mn=!1,selectable:Dn=!0,draggable:sn,motion:rn,style:Ht}=nt,Tt=yt("tree",Ut),St=yt(),Qt=rn!=null?rn:Object.assign(Object.assign({},(0,fe.Z)(St)),{motionAppear:!1}),gt=Object.assign(Object.assign({},nt),{checkable:Mn,selectable:Dn,showIcon:en,motion:Qt,blockNode:tn,showLine:!!mn,dropIndicatorRender:ue}),[bt,Yt]=(0,he.ZP)(Tt),kt=Me.useMemo(()=>{if(!sn)return!1;let ln={};switch(typeof sn){case"function":ln.nodeDraggable=sn;break;case"object":ln=Object.assign({},sn);break;default:break}return ln.icon!==!1&&(ln.icon=ln.icon||Me.createElement(se.Z,null)),ln},[sn]),Mt=ln=>Me.createElement(me.Z,{prefixCls:Tt,switcherIcon:Bt,treeNodeProps:ln,showLine:mn});return bt(Me.createElement(Oe.Z,Object.assign({itemHeight:20,ref:lt,virtual:ct},gt,{style:Object.assign(Object.assign({},vt==null?void 0:vt.style),Ht),prefixCls:Tt,className:ce()({[`${Tt}-icon-hide`]:!en,[`${Tt}-block-node`]:tn,[`${Tt}-unselectable`]:!Dn,[`${Tt}-rtl`]:ft==="rtl"},vt==null?void 0:vt.className,Zt,Yt),direction:ft,checkable:Mn&&Me.createElement("span",{className:`${Tt}-checkbox-inner`}),selectable:Dn,switcherIcon:Mt,draggable:kt}),on))}),Fe;(function(nt){nt[nt.None=0]="None",nt[nt.Start=1]="Start",nt[nt.End=2]="End"})(Fe||(Fe={}));function Re(nt,lt){function yt(ft){const{key:ct,children:vt}=ft;lt(ct,ft)!==!1&&Re(vt||[],lt)}nt.forEach(yt)}function Ue(nt){let{treeData:lt,expandedKeys:yt,startKey:ft,endKey:ct}=nt;const vt=[];let Ut=Fe.None;if(ft&&ft===ct)return[ft];if(!ft||!ct)return[];function Zt(en){return en===ft||en===ct}return Re(lt,en=>{if(Ut===Fe.End)return!1;if(Zt(en)){if(vt.push(en),Ut===Fe.None)Ut=Fe.Start;else if(Ut===Fe.Start)return Ut=Fe.End,!1}else Ut===Fe.Start&&vt.push(en);return yt.includes(en)}),vt}function Ge(nt,lt){const yt=(0,He.Z)(lt),ft=[];return Re(nt,(ct,vt)=>{const Ut=yt.indexOf(ct);return Ut!==-1&&(ft.push(vt),yt.splice(Ut,1)),!!yt.length}),ft}var Je=function(nt,lt){var yt={};for(var ft in nt)Object.prototype.hasOwnProperty.call(nt,ft)&<.indexOf(ft)<0&&(yt[ft]=nt[ft]);if(nt!=null&&typeof Object.getOwnPropertySymbols=="function")for(var ct=0,ft=Object.getOwnPropertySymbols(nt);ct<ft.length;ct++)lt.indexOf(ft[ct])<0&&Object.prototype.propertyIsEnumerable.call(nt,ft[ct])&&(yt[ft[ct]]=nt[ft[ct]]);return yt};function Qe(nt){const{isLeaf:lt,expanded:yt}=nt;return lt?Me.createElement(Ne.Z,null):yt?Me.createElement(be.Z,null):Me.createElement(Ae,null)}function rt(nt){let{treeData:lt,children:yt}=nt;return lt||(0,ne.zn)(yt)}const $e=(nt,lt)=>{var{defaultExpandAll:yt,defaultExpandParent:ft,defaultExpandedKeys:ct}=nt,vt=Je(nt,["defaultExpandAll","defaultExpandParent","defaultExpandedKeys"]);const Ut=Me.useRef(),Zt=Me.useRef(),en=()=>{const{keyEntities:kt}=(0,ne.I8)(rt(vt));let Mt;return yt?Mt=Object.keys(kt):ft?Mt=(0,te.r7)(vt.expandedKeys||ct||[],kt):Mt=vt.expandedKeys||ct,Mt},[mn,Bt]=Me.useState(vt.selectedKeys||vt.defaultSelectedKeys||[]),[tn,on]=Me.useState(()=>en());Me.useEffect(()=>{"selectedKeys"in vt&&Bt(vt.selectedKeys)},[vt.selectedKeys]),Me.useEffect(()=>{"expandedKeys"in vt&&on(vt.expandedKeys)},[vt.expandedKeys]);const Mn=(kt,Mt)=>{var ln;return"expandedKeys"in vt||on(kt),(ln=vt.onExpand)===null||ln===void 0?void 0:ln.call(vt,kt,Mt)},Dn=(kt,Mt)=>{var ln;const{multiple:zn}=vt,{node:Gn,nativeEvent:Hn}=Mt,{key:nr=""}=Gn,Xn=rt(vt),qt=Object.assign(Object.assign({},Mt),{selected:!0}),vn=(Hn==null?void 0:Hn.ctrlKey)||(Hn==null?void 0:Hn.metaKey),Un=Hn==null?void 0:Hn.shiftKey;let Ln;zn&&vn?(Ln=kt,Ut.current=nr,Zt.current=Ln,qt.selectedNodes=Ge(Xn,Ln)):zn&&Un?(Ln=Array.from(new Set([].concat((0,He.Z)(Zt.current||[]),(0,He.Z)(Ue({treeData:Xn,expandedKeys:tn,startKey:nr,endKey:Ut.current}))))),qt.selectedNodes=Ge(Xn,Ln)):(Ln=[nr],Ut.current=nr,Zt.current=Ln,qt.selectedNodes=Ge(Xn,Ln)),(ln=vt.onSelect)===null||ln===void 0||ln.call(vt,Ln,qt),"selectedKeys"in vt||Bt(Ln)},{getPrefixCls:sn,direction:rn}=Me.useContext(le.E_),{prefixCls:Ht,className:Tt,showIcon:St=!0,expandAction:Qt="click"}=vt,gt=Je(vt,["prefixCls","className","showIcon","expandAction"]),bt=sn("tree",Ht),Yt=ce()(`${bt}-directory`,{[`${bt}-directory-rtl`]:rn==="rtl"},Tt);return Me.createElement(Ie,Object.assign({icon:Qe,ref:lt,blockNode:!0},gt,{showIcon:St,expandAction:Qt,prefixCls:bt,className:Yt,expandedKeys:tn,selectedKeys:mn,onSelect:Dn,onExpand:Mn}))};var ot=Me.forwardRef($e);const at=Ie;at.DirectoryTree=ot,at.TreeNode=Oe.O;var ut=at},20648:function(At,It,Te){"use strict";Te.d(It,{TM:function(){return Se},Yk:function(){return Ae}});var Oe=Te(36237),He=Te(98447),Ne=Te(17313),be=Te(8378),_e=Te(37613),Me=Te(83116);const ve=new Oe.Keyframes("ant-tree-node-fx-do-not-use",{"0%":{opacity:0},"100%":{opacity:1}}),Ee=(ce,te)=>({[`.${ce}-switcher-icon`]:{display:"inline-block",fontSize:10,verticalAlign:"baseline",svg:{transition:`transform ${te.motionDurationSlow}`}}}),Pe=(ce,te)=>({[`.${ce}-drop-indicator`]:{position:"absolute",zIndex:1,height:2,backgroundColor:te.colorPrimary,borderRadius:1,pointerEvents:"none","&:after":{position:"absolute",top:-3,insetInlineStart:-6,width:8,height:8,backgroundColor:"transparent",border:`${te.lineWidthBold}px solid ${te.colorPrimary}`,borderRadius:"50%",content:'""'}}}),xe=(ce,te)=>{const{treeCls:ne,treeNodeCls:le,treeNodePadding:se,titleHeight:fe,nodeSelectedBg:he,nodeHoverBg:ie}=te,ue=te.paddingXS;return{[ne]:Object.assign(Object.assign({},(0,Ne.Wf)(te)),{background:te.colorBgContainer,borderRadius:te.borderRadius,transition:`background-color ${te.motionDurationSlow}`,[`&${ne}-rtl`]:{[`${ne}-switcher`]:{"&_close":{[`${ne}-switcher-icon`]:{svg:{transform:"rotate(90deg)"}}}}},[`&-focused:not(:hover):not(${ne}-active-focused)`]:Object.assign({},(0,Ne.oN)(te)),[`${ne}-list-holder-inner`]:{alignItems:"flex-start"},[`&${ne}-block-node`]:{[`${ne}-list-holder-inner`]:{alignItems:"stretch",[`${ne}-node-content-wrapper`]:{flex:"auto"},[`${le}.dragging`]:{position:"relative","&:after":{position:"absolute",top:0,insetInlineEnd:0,bottom:se,insetInlineStart:0,border:`1px solid ${te.colorPrimary}`,opacity:0,animationName:ve,animationDuration:te.motionDurationSlow,animationPlayState:"running",animationFillMode:"forwards",content:'""',pointerEvents:"none"}}}},[`${le}`]:{display:"flex",alignItems:"flex-start",padding:`0 0 ${se}px 0`,outline:"none","&-rtl":{direction:"rtl"},"&-disabled":{[`${ne}-node-content-wrapper`]:{color:te.colorTextDisabled,cursor:"not-allowed","&:hover":{background:"transparent"}}},[`&-active ${ne}-node-content-wrapper`]:Object.assign({},(0,Ne.oN)(te)),[`&:not(${le}-disabled).filter-node ${ne}-title`]:{color:"inherit",fontWeight:500},"&-draggable":{[`${ne}-draggable-icon`]:{flexShrink:0,width:fe,lineHeight:`${fe}px`,textAlign:"center",visibility:"visible",opacity:.2,transition:`opacity ${te.motionDurationSlow}`,[`${le}:hover &`]:{opacity:.45}},[`&${le}-disabled`]:{[`${ne}-draggable-icon`]:{visibility:"hidden"}}}},[`${ne}-indent`]:{alignSelf:"stretch",whiteSpace:"nowrap",userSelect:"none","&-unit":{display:"inline-block",width:fe}},[`${ne}-draggable-icon`]:{visibility:"hidden"},[`${ne}-switcher`]:Object.assign(Object.assign({},Ee(ce,te)),{position:"relative",flex:"none",alignSelf:"stretch",width:fe,margin:0,lineHeight:`${fe}px`,textAlign:"center",cursor:"pointer",userSelect:"none","&-noop":{cursor:"default"},"&_close":{[`${ne}-switcher-icon`]:{svg:{transform:"rotate(-90deg)"}}},"&-loading-icon":{color:te.colorPrimary},"&-leaf-line":{position:"relative",zIndex:1,display:"inline-block",width:"100%",height:"100%","&:before":{position:"absolute",top:0,insetInlineEnd:fe/2,bottom:-se,marginInlineStart:-1,borderInlineEnd:`1px solid ${te.colorBorder}`,content:'""'},"&:after":{position:"absolute",width:fe/2*.8,height:fe/2,borderBottom:`1px solid ${te.colorBorder}`,content:'""'}}}),[`${ne}-checkbox`]:{top:"initial",marginInlineEnd:ue},[`${ne}-node-content-wrapper, ${ne}-checkbox + span`]:{position:"relative",zIndex:"auto",minHeight:fe,margin:0,padding:`0 ${te.paddingXS/2}px`,color:"inherit",lineHeight:`${fe}px`,background:"transparent",borderRadius:te.borderRadius,cursor:"pointer",transition:`all ${te.motionDurationMid}, border 0s, line-height 0s, box-shadow 0s`,"&:hover":{backgroundColor:ie},[`&${ne}-node-selected`]:{backgroundColor:he},[`${ne}-iconEle`]:{display:"inline-block",width:fe,height:fe,lineHeight:`${fe}px`,textAlign:"center",verticalAlign:"top","&:empty":{display:"none"}}},[`${ne}-unselectable ${ne}-node-content-wrapper:hover`]:{backgroundColor:"transparent"},[`${ne}-node-content-wrapper`]:Object.assign({lineHeight:`${fe}px`,userSelect:"none"},Pe(ce,te)),[`${le}.drop-container`]:{"> [draggable]":{boxShadow:`0 0 0 2px ${te.colorPrimary}`}},"&-show-line":{[`${ne}-indent`]:{"&-unit":{position:"relative",height:"100%","&:before":{position:"absolute",top:0,insetInlineEnd:fe/2,bottom:-se,borderInlineEnd:`1px solid ${te.colorBorder}`,content:'""'},"&-end":{"&:before":{display:"none"}}}},[`${ne}-switcher`]:{background:"transparent","&-line-icon":{verticalAlign:"-0.15em"}}},[`${le}-leaf-last`]:{[`${ne}-switcher`]:{"&-leaf-line":{"&:before":{top:"auto !important",bottom:"auto !important",height:`${fe/2}px !important`}}}}})}},pe=ce=>{const{treeCls:te,treeNodeCls:ne,treeNodePadding:le,directoryNodeSelectedBg:se,directoryNodeSelectedColor:fe}=ce;return{[`${te}${te}-directory`]:{[ne]:{position:"relative","&:before":{position:"absolute",top:0,insetInlineEnd:0,bottom:le,insetInlineStart:0,transition:`background-color ${ce.motionDurationMid}`,content:'""',pointerEvents:"none"},"&:hover":{"&:before":{background:ce.controlItemBgHover}},"> *":{zIndex:1},[`${te}-switcher`]:{transition:`color ${ce.motionDurationMid}`},[`${te}-node-content-wrapper`]:{borderRadius:0,userSelect:"none","&:hover":{background:"transparent"},[`&${te}-node-selected`]:{color:fe,background:"transparent"}},"&-selected":{"\n &:hover::before,\n &::before\n ":{background:se},[`${te}-switcher`]:{color:fe},[`${te}-node-content-wrapper`]:{color:fe,background:"transparent"}}}}}},Ae=(ce,te)=>{const ne=`.${ce}`,le=`${ne}-treenode`,se=te.paddingXS/2,fe=(0,_e.TS)(te,{treeCls:ne,treeNodeCls:le,treeNodePadding:se});return[xe(ce,fe),pe(fe)]},Se=ce=>{const{controlHeightSM:te}=ce;return{titleHeight:te,nodeHoverBg:ce.controlItemBgHover,nodeSelectedBg:ce.controlItemBgActive}};It.ZP=(0,Me.Z)("Tree",(ce,te)=>{let{prefixCls:ne}=te;return[{[ce.componentCls]:(0,He.C2)(`${ne}-checkbox`,ce)},Ae(ne,ce),(0,be.Z)(ce)]},ce=>{const{colorTextLightSolid:te,colorPrimary:ne}=ce;return Object.assign(Object.assign({},Se(ce)),{directoryNodeSelectedColor:te,directoryNodeSelectedBg:ne})})},71997:function(At,It,Te){"use strict";Te.d(It,{Z:function(){return le}});var Oe=Te(54476),He=Te(59301),Ne={icon:{tag:"svg",attrs:{viewBox:"0 0 1024 1024",focusable:"false"},children:[{tag:"path",attrs:{d:"M840.4 300H183.6c-19.7 0-30.7 20.8-18.5 35l328.4 380.8c9.4 10.9 27.5 10.9 37 0L858.9 335c12.2-14.2 1.2-35-18.5-35z"}}]},name:"caret-down",theme:"filled"},be=Ne,_e=Te(7657),Me=function(fe,he){return He.createElement(_e.Z,(0,Oe.Z)({},fe,{ref:he,icon:be}))},ve=He.forwardRef(Me),Ee=ve,Pe=Te(52671),xe=Te(58617),pe=Te(15075),Ae=Te(43531),Se=Te(92310),ce=Te.n(Se),te=Te(92343),le=se=>{const{prefixCls:fe,switcherIcon:he,treeNodeProps:ie,showLine:ue}=se,{isLeaf:me,expanded:Ce,loading:Ie}=ie;if(Ie)return He.createElement(xe.Z,{className:`${fe}-switcher-loading-icon`});let Fe;if(ue&&typeof ue=="object"&&(Fe=ue.showLeafIcon),me){if(!ue)return null;if(typeof Fe!="boolean"&&Fe){const Ge=typeof Fe=="function"?Fe(ie):Fe,Je=`${fe}-switcher-line-custom-icon`;return(0,te.l$)(Ge)?(0,te.Tm)(Ge,{className:ce()(Ge.props.className||"",Je)}):Ge}return Fe?He.createElement(Pe.Z,{className:`${fe}-switcher-line-icon`}):He.createElement("span",{className:`${fe}-switcher-leaf-line`})}const Re=`${fe}-switcher-icon`,Ue=typeof he=="function"?he(ie):he;return(0,te.l$)(Ue)?(0,te.Tm)(Ue,{className:ce()(Ue.props.className||"",Re)}):Ue!==void 0?Ue:ue?Ce?He.createElement(pe.Z,{className:`${fe}-switcher-line-icon`}):He.createElement(Ae.Z,{className:`${fe}-switcher-line-icon`}):He.createElement(Ee,{className:Re})}},54580:function(At,It,Te){"use strict";Te.d(It,{default:function(){return hn}});var Oe=Te(59301),He=Te(94480),Ne=Te(92310),be=Te.n(Ne),_e=Te(54476),Me=Te(67732),ve=Te(83652),Ee=Te(42403),Pe=Te(158),xe=Te(20068),pe=Te(75931),Ae=Te(75044),Se=Te(76190),ce=Te(3202),te=Te(26112);function ne(an,In){var jn="cannot ".concat(an.method," ").concat(an.action," ").concat(In.status,"'"),cr=new Error(jn);return cr.status=In.status,cr.method=an.method,cr.url=an.action,cr}function le(an){var In=an.responseText||an.response;if(!In)return In;try{return JSON.parse(In)}catch(jn){return In}}function se(an){var In=new XMLHttpRequest;an.onProgress&&In.upload&&(In.upload.onprogress=function(Qn){Qn.total>0&&(Qn.percent=Qn.loaded/Qn.total*100),an.onProgress(Qn)});var jn=new FormData;an.data&&Object.keys(an.data).forEach(function(or){var Qn=an.data[or];if(Array.isArray(Qn)){Qn.forEach(function(dr){jn.append("".concat(or,"[]"),dr)});return}jn.append(or,Qn)}),an.file instanceof Blob?jn.append(an.filename,an.file,an.file.name):jn.append(an.filename,an.file),In.onerror=function(Qn){an.onError(Qn)},In.onload=function(){return In.status<200||In.status>=300?an.onError(ne(an,In),le(In)):an.onSuccess(le(In),In)},In.open(an.method,an.action,!0),an.withCredentials&&"withCredentials"in In&&(In.withCredentials=!0);var cr=an.headers||{};return cr["X-Requested-With"]!==null&&In.setRequestHeader("X-Requested-With","XMLHttpRequest"),Object.keys(cr).forEach(function(or){cr[or]!==null&&In.setRequestHeader(or,cr[or])}),In.send(jn),{abort:function(){In.abort()}}}var fe=+new Date,he=0;function ie(){return"rc-upload-".concat(fe,"-").concat(++he)}var ue=Te(48736),me=function(an,In){if(an&&In){var jn=Array.isArray(In)?In:In.split(","),cr=an.name||"",or=an.type||"",Qn=or.replace(/\/.*$/,"");return jn.some(function(dr){var xr=dr.trim();if(/^\*(\/\*)?$/.test(dr))return!0;if(xr.charAt(0)==="."){var On=cr.toLowerCase(),vr=xr.toLowerCase(),Yn=[vr];return(vr===".jpg"||vr===".jpeg")&&(Yn=[".jpg",".jpeg"]),Yn.some(function(jr){return On.endsWith(jr)})}return/\/\*$/.test(xr)?Qn===xr.replace(/\/.*$/,""):or===xr?!0:/^\w+$/.test(xr)?((0,ue.ZP)(!1,"Upload takes an invalidate 'accept' type '".concat(xr,"'.Skip for check.")),!0):!1})}return!0};function Ce(an,In){var jn=an.createReader(),cr=[];function or(){jn.readEntries(function(Qn){var dr=Array.prototype.slice.apply(Qn);cr=cr.concat(dr);var xr=!dr.length;xr?In(cr):or()})}or()}var Ie=function(In,jn,cr){var or=function Qn(dr,xr){dr&&(dr.path=xr||"",dr.isFile?dr.file(function(On){cr(On)&&(dr.fullPath&&!On.webkitRelativePath&&(Object.defineProperties(On,{webkitRelativePath:{writable:!0}}),On.webkitRelativePath=dr.fullPath.replace(/^\//,""),Object.defineProperties(On,{webkitRelativePath:{writable:!1}})),jn([On]))}):dr.isDirectory&&Ce(dr,function(On){On.forEach(function(vr){Qn(vr,"".concat(xr).concat(dr.name,"/"))})}))};In.forEach(function(Qn){or(Qn.webkitGetAsEntry())})},Fe=Ie,Re=["component","prefixCls","className","disabled","id","style","multiple","accept","capture","children","directory","openFileDialogOnClick","onMouseEnter","onMouseLeave"],Ue=function(an){(0,Ee.Z)(jn,an);var In=(0,Pe.Z)(jn);function jn(){var cr;(0,Me.Z)(this,jn);for(var or=arguments.length,Qn=new Array(or),dr=0;dr<or;dr++)Qn[dr]=arguments[dr];return cr=In.call.apply(In,[this].concat(Qn)),cr.state={uid:ie()},cr.reqs={},cr.fileInput=void 0,cr._isMounted=void 0,cr.onChange=function(xr){var On=cr.props,vr=On.accept,Yn=On.directory,jr=xr.target.files,ri=(0,He.Z)(jr).filter(function(vi){return!Yn||me(vi,vr)});cr.uploadFiles(ri),cr.reset()},cr.onClick=function(xr){var On=cr.fileInput;if(On){var vr=xr.target,Yn=cr.props.onClick;if(vr&&vr.tagName==="BUTTON"){var jr=On.parentNode;jr.focus(),vr.blur()}On.click(),Yn&&Yn(xr)}},cr.onKeyDown=function(xr){xr.key==="Enter"&&cr.onClick(xr)},cr.onFileDrop=function(xr){var On=cr.props.multiple;if(xr.preventDefault(),xr.type!=="dragover")if(cr.props.directory)Fe(Array.prototype.slice.call(xr.dataTransfer.items),cr.uploadFiles,function(Yn){return me(Yn,cr.props.accept)});else{var vr=(0,He.Z)(xr.dataTransfer.files).filter(function(Yn){return me(Yn,cr.props.accept)});On===!1&&(vr=vr.slice(0,1)),cr.uploadFiles(vr)}},cr.uploadFiles=function(xr){var On=(0,He.Z)(xr),vr=On.map(function(Yn){return Yn.uid=ie(),cr.processFile(Yn,On)});Promise.all(vr).then(function(Yn){var jr=cr.props.onBatchStart;jr==null||jr(Yn.map(function(ri){var vi=ri.origin,ci=ri.parsedFile;return{file:vi,parsedFile:ci}})),Yn.filter(function(ri){return ri.parsedFile!==null}).forEach(function(ri){cr.post(ri)})})},cr.processFile=function(){var xr=(0,ce.Z)((0,Ae.Z)().mark(function On(vr,Yn){var jr,ri,vi,ci,Kr,Ia,Ta,la,ei;return(0,Ae.Z)().wrap(function(za){for(;;)switch(za.prev=za.next){case 0:if(jr=cr.props.beforeUpload,ri=vr,!jr){za.next=14;break}return za.prev=3,za.next=6,jr(vr,Yn);case 6:ri=za.sent,za.next=12;break;case 9:za.prev=9,za.t0=za.catch(3),ri=!1;case 12:if(ri!==!1){za.next=14;break}return za.abrupt("return",{origin:vr,parsedFile:null,action:null,data:null});case 14:if(vi=cr.props.action,typeof vi!="function"){za.next=21;break}return za.next=18,vi(vr);case 18:ci=za.sent,za.next=22;break;case 21:ci=vi;case 22:if(Kr=cr.props.data,typeof Kr!="function"){za.next=29;break}return za.next=26,Kr(vr);case 26:Ia=za.sent,za.next=30;break;case 29:Ia=Kr;case 30:return Ta=((0,Se.Z)(ri)==="object"||typeof ri=="string")&&ri?ri:vr,Ta instanceof File?la=Ta:la=new File([Ta],vr.name,{type:vr.type}),ei=la,ei.uid=vr.uid,za.abrupt("return",{origin:vr,data:Ia,parsedFile:ei,action:ci});case 35:case"end":return za.stop()}},On,null,[[3,9]])}));return function(On,vr){return xr.apply(this,arguments)}}(),cr.saveFileInput=function(xr){cr.fileInput=xr},cr}return(0,ve.Z)(jn,[{key:"componentDidMount",value:function(){this._isMounted=!0}},{key:"componentWillUnmount",value:function(){this._isMounted=!1,this.abort()}},{key:"post",value:function(or){var Qn=this,dr=or.data,xr=or.origin,On=or.action,vr=or.parsedFile;if(this._isMounted){var Yn=this.props,jr=Yn.onStart,ri=Yn.customRequest,vi=Yn.name,ci=Yn.headers,Kr=Yn.withCredentials,Ia=Yn.method,Ta=xr.uid,la=ri||se,ei={action:On,filename:vi,data:dr,file:vr,headers:ci,withCredentials:Kr,method:Ia||"post",onProgress:function(za){var _i=Qn.props.onProgress;_i==null||_i(za,vr)},onSuccess:function(za,_i){var $i=Qn.props.onSuccess;$i==null||$i(za,vr,_i),delete Qn.reqs[Ta]},onError:function(za,_i){var $i=Qn.props.onError;$i==null||$i(za,_i,vr),delete Qn.reqs[Ta]}};jr(xr),this.reqs[Ta]=la(ei)}}},{key:"reset",value:function(){this.setState({uid:ie()})}},{key:"abort",value:function(or){var Qn=this.reqs;if(or){var dr=or.uid?or.uid:or;Qn[dr]&&Qn[dr].abort&&Qn[dr].abort(),delete Qn[dr]}else Object.keys(Qn).forEach(function(xr){Qn[xr]&&Qn[xr].abort&&Qn[xr].abort(),delete Qn[xr]})}},{key:"render",value:function(){var or=this.props,Qn=or.component,dr=or.prefixCls,xr=or.className,On=or.disabled,vr=or.id,Yn=or.style,jr=or.multiple,ri=or.accept,vi=or.capture,ci=or.children,Kr=or.directory,Ia=or.openFileDialogOnClick,Ta=or.onMouseEnter,la=or.onMouseLeave,ei=(0,pe.Z)(or,Re),Wi=be()((0,xe.Z)((0,xe.Z)((0,xe.Z)({},dr,!0),"".concat(dr,"-disabled"),On),xr,xr)),za=Kr?{directory:"directory",webkitdirectory:"webkitdirectory"}:{},_i=On?{}:{onClick:Ia?this.onClick:function(){},onKeyDown:Ia?this.onKeyDown:function(){},onMouseEnter:Ta,onMouseLeave:la,onDrop:this.onFileDrop,onDragOver:this.onFileDrop,tabIndex:"0"};return Oe.createElement(Qn,(0,_e.Z)({},_i,{className:Wi,role:"button",style:Yn}),Oe.createElement("input",(0,_e.Z)({},(0,te.Z)(ei,{aria:!0,data:!0}),{id:vr,disabled:On,type:"file",ref:this.saveFileInput,onClick:function(Uo){return Uo.stopPropagation()},key:this.state.uid,style:{display:"none"},accept:ri},za,{multiple:jr,onChange:this.onChange},vi!=null?{capture:vi}:{})),ci)}}]),jn}(Oe.Component),Ge=Ue;function Je(){}var Qe=function(an){(0,Ee.Z)(jn,an);var In=(0,Pe.Z)(jn);function jn(){var cr;(0,Me.Z)(this,jn);for(var or=arguments.length,Qn=new Array(or),dr=0;dr<or;dr++)Qn[dr]=arguments[dr];return cr=In.call.apply(In,[this].concat(Qn)),cr.uploader=void 0,cr.saveUploader=function(xr){cr.uploader=xr},cr}return(0,ve.Z)(jn,[{key:"abort",value:function(or){this.uploader.abort(or)}},{key:"render",value:function(){return Oe.createElement(Ge,(0,_e.Z)({},this.props,{ref:this.saveUploader}))}}]),jn}(Oe.Component);Qe.defaultProps={component:"span",prefixCls:"rc-upload",data:{},headers:{},name:"file",multipart:!1,onStart:Je,onError:Je,onSuccess:Je,multiple:!1,beforeUpload:null,customRequest:null,withCredentials:!1,openFileDialogOnClick:!0};var rt=Qe,$e=rt,qe=Te(18929),ot=Te(4676),at=Te(36355),ut=Te(1684),nt=Te(9763),lt=Te(31724),yt={icon:function(In,jn){return{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M534 352V136H232v752h560V394H576a42 42 0 01-42-42z",fill:jn}},{tag:"path",attrs:{d:"M854.6 288.6L639.4 73.4c-6-6-14.1-9.4-22.6-9.4H192c-17.7 0-32 14.3-32 32v832c0 17.7 14.3 32 32 32h640c17.7 0 32-14.3 32-32V311.3c0-8.5-3.4-16.7-9.4-22.7zM602 137.8L790.2 326H602V137.8zM792 888H232V136h302v216a42 42 0 0042 42h216v494z",fill:In}}]}},name:"file",theme:"twotone"},ft=yt,ct=Te(7657),vt=function(In,jn){return Oe.createElement(ct.Z,(0,_e.Z)({},In,{ref:jn,icon:ft}))},Ut=Oe.forwardRef(vt),Zt=Ut,en=Te(58617),mn={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M779.3 196.6c-94.2-94.2-247.6-94.2-341.7 0l-261 260.8c-1.7 1.7-2.6 4-2.6 6.4s.9 4.7 2.6 6.4l36.9 36.9a9 9 0 0012.7 0l261-260.8c32.4-32.4 75.5-50.2 121.3-50.2s88.9 17.8 121.2 50.2c32.4 32.4 50.2 75.5 50.2 121.2 0 45.8-17.8 88.8-50.2 121.2l-266 265.9-43.1 43.1c-40.3 40.3-105.8 40.3-146.1 0-19.5-19.5-30.2-45.4-30.2-73s10.7-53.5 30.2-73l263.9-263.8c6.7-6.6 15.5-10.3 24.9-10.3h.1c9.4 0 18.1 3.7 24.7 10.3 6.7 6.7 10.3 15.5 10.3 24.9 0 9.3-3.7 18.1-10.3 24.7L372.4 653c-1.7 1.7-2.6 4-2.6 6.4s.9 4.7 2.6 6.4l36.9 36.9a9 9 0 0012.7 0l215.6-215.6c19.9-19.9 30.8-46.3 30.8-74.4s-11-54.6-30.8-74.4c-41.1-41.1-107.9-41-149 0L463 364 224.8 602.1A172.22 172.22 0 00174 724.8c0 46.3 18.1 89.8 50.8 122.5 33.9 33.8 78.3 50.7 122.7 50.7 44.4 0 88.8-16.9 122.6-50.7l309.2-309C824.8 492.7 850 432 850 367.5c.1-64.6-25.1-125.3-70.7-170.9z"}}]},name:"paper-clip",theme:"outlined"},Bt=mn,tn=function(In,jn){return Oe.createElement(ct.Z,(0,_e.Z)({},In,{ref:jn,icon:Bt}))},on=Oe.forwardRef(tn),Mn=on,Dn={icon:function(In,jn){return{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M928 160H96c-17.7 0-32 14.3-32 32v640c0 17.7 14.3 32 32 32h832c17.7 0 32-14.3 32-32V192c0-17.7-14.3-32-32-32zm-40 632H136v-39.9l138.5-164.3 150.1 178L658.1 489 888 761.6V792zm0-129.8L664.2 396.8c-3.2-3.8-9-3.8-12.2 0L424.6 666.4l-144-170.7c-3.2-3.8-9-3.8-12.2 0L136 652.7V232h752v430.2z",fill:In}},{tag:"path",attrs:{d:"M424.6 765.8l-150.1-178L136 752.1V792h752v-30.4L658.1 489z",fill:jn}},{tag:"path",attrs:{d:"M136 652.7l132.4-157c3.2-3.8 9-3.8 12.2 0l144 170.7L652 396.8c3.2-3.8 9-3.8 12.2 0L888 662.2V232H136v420.7zM304 280a88 88 0 110 176 88 88 0 010-176z",fill:jn}},{tag:"path",attrs:{d:"M276 368a28 28 0 1056 0 28 28 0 10-56 0z",fill:jn}},{tag:"path",attrs:{d:"M304 456a88 88 0 100-176 88 88 0 000 176zm0-116c15.5 0 28 12.5 28 28s-12.5 28-28 28-28-12.5-28-28 12.5-28 28-28z",fill:In}}]}},name:"picture",theme:"twotone"},sn=Dn,rn=function(In,jn){return Oe.createElement(ct.Z,(0,_e.Z)({},In,{ref:jn,icon:sn}))},Ht=Oe.forwardRef(rn),Tt=Ht,St=Te(77900),Qt=Te(56762),gt=Te(62892),bt=Te(92343),Yt=Te(3113);function kt(an){return Object.assign(Object.assign({},an),{lastModified:an.lastModified,lastModifiedDate:an.lastModifiedDate,name:an.name,size:an.size,type:an.type,uid:an.uid,percent:0,originFileObj:an})}function Mt(an,In){const jn=(0,He.Z)(In),cr=jn.findIndex(or=>{let{uid:Qn}=or;return Qn===an.uid});return cr===-1?jn.push(an):jn[cr]=an,jn}function ln(an,In){const jn=an.uid!==void 0?"uid":"name";return In.filter(cr=>cr[jn]===an[jn])[0]}function zn(an,In){const jn=an.uid!==void 0?"uid":"name",cr=In.filter(or=>or[jn]!==an[jn]);return cr.length===In.length?null:cr}const Gn=function(){const In=(arguments.length>0&&arguments[0]!==void 0?arguments[0]:"").split("/"),cr=In[In.length-1].split(/#|\?/)[0];return(/\.[^./\\]*$/.exec(cr)||[""])[0]},Hn=an=>an.indexOf("image/")===0,nr=an=>{if(an.type&&!an.thumbUrl)return Hn(an.type);const In=an.thumbUrl||an.url||"",jn=Gn(In);return/^data:image\//.test(In)||/(webp|svg|png|gif|jpg|jpeg|jfif|bmp|dpg|ico|heic|heif)$/i.test(jn)?!0:!(/^data:/.test(In)||jn)},Xn=200;function qt(an){return new Promise(In=>{if(!an.type||!Hn(an.type)){In("");return}const jn=document.createElement("canvas");jn.width=Xn,jn.height=Xn,jn.style.cssText=`position: fixed; left: 0; top: 0; width: ${Xn}px; height: ${Xn}px; z-index: 9999; display: none;`,document.body.appendChild(jn);const cr=jn.getContext("2d"),or=new Image;if(or.onload=()=>{const{width:Qn,height:dr}=or;let xr=Xn,On=Xn,vr=0,Yn=0;Qn>dr?(On=dr*(Xn/Qn),Yn=-(On-xr)/2):(xr=Qn*(Xn/dr),vr=-(xr-On)/2),cr.drawImage(or,vr,Yn,xr,On);const jr=jn.toDataURL();document.body.removeChild(jn),window.URL.revokeObjectURL(or.src),In(jr)},or.crossOrigin="anonymous",an.type.startsWith("image/svg+xml")){const Qn=new FileReader;Qn.onload=()=>{Qn.result&&(or.src=Qn.result)},Qn.readAsDataURL(an)}else if(an.type.startsWith("image/gif")){const Qn=new FileReader;Qn.onload=()=>{Qn.result&&In(Qn.result)},Qn.readAsDataURL(an)}else or.src=window.URL.createObjectURL(an)})}var vn=Te(26227),Un=Te(41464),Ln=Te(15277),yr=Te(93948),kr=Te(6848),Gr=Oe.forwardRef((an,In)=>{let{prefixCls:jn,className:cr,style:or,locale:Qn,listType:dr,file:xr,items:On,progress:vr,iconRender:Yn,actionIconRender:jr,itemRender:ri,isImgUrl:vi,showPreviewIcon:ci,showRemoveIcon:Kr,showDownloadIcon:Ia,previewIcon:Ta,removeIcon:la,downloadIcon:ei,onPreview:Wi,onDownload:za,onClose:_i}=an;var $i,Uo;const{status:yo}=xr,[sl,ds]=Oe.useState(yo);Oe.useEffect(()=>{yo!=="removed"&&ds(yo)},[yo]);const[bo,hs]=Oe.useState(!1);Oe.useEffect(()=>{const Os=setTimeout(()=>{hs(!0)},300);return()=>{clearTimeout(Os)}},[]);const ss=Yn(xr);let Yo=Oe.createElement("div",{className:`${jn}-icon`},ss);if(dr==="picture"||dr==="picture-card"||dr==="picture-circle")if(sl==="uploading"||!xr.thumbUrl&&!xr.url){const Os=be()(`${jn}-list-item-thumbnail`,{[`${jn}-list-item-file`]:sl!=="uploading"});Yo=Oe.createElement("div",{className:Os},ss)}else{const Os=vi!=null&&vi(xr)?Oe.createElement("img",{src:xr.thumbUrl||xr.url,alt:xr.name,className:`${jn}-list-item-image`,crossOrigin:xr.crossOrigin}):ss,Vs=be()(`${jn}-list-item-thumbnail`,{[`${jn}-list-item-file`]:vi&&!vi(xr)});Yo=Oe.createElement("a",{className:Vs,onClick:Mu=>Wi(xr,Mu),href:xr.url||xr.thumbUrl,target:"_blank",rel:"noopener noreferrer"},Os)}const Wo=be()(`${jn}-list-item`,`${jn}-list-item-${sl}`),Rs=typeof xr.linkProps=="string"?JSON.parse(xr.linkProps):xr.linkProps,tl=Kr?jr((typeof la=="function"?la(xr):la)||Oe.createElement(vn.Z,null),()=>_i(xr),jn,Qn.removeFile):null,Pl=Ia&&sl==="done"?jr((typeof ei=="function"?ei(xr):ei)||Oe.createElement(Un.Z,null),()=>za(xr),jn,Qn.downloadFile):null,Gs=dr!=="picture-card"&&dr!=="picture-circle"&&Oe.createElement("span",{key:"download-delete",className:be()(`${jn}-list-item-actions`,{picture:dr==="picture"})},Pl,tl),il=be()(`${jn}-list-item-name`),nl=xr.url?[Oe.createElement("a",Object.assign({key:"view",target:"_blank",rel:"noopener noreferrer",className:il,title:xr.name},Rs,{href:xr.url,onClick:Os=>Wi(xr,Os)}),xr.name),Gs]:[Oe.createElement("span",{key:"view",className:il,onClick:Os=>Wi(xr,Os),title:xr.name},xr.name),Gs],uo={pointerEvents:"none",opacity:.5},Xo=ci?Oe.createElement("a",{href:xr.url||xr.thumbUrl,target:"_blank",rel:"noopener noreferrer",style:xr.url||xr.thumbUrl?void 0:uo,onClick:Os=>Wi(xr,Os),title:Qn.previewFile},typeof Ta=="function"?Ta(xr):Ta||Oe.createElement(Ln.Z,null)):null,Ho=(dr==="picture-card"||dr==="picture-circle")&&sl!=="uploading"&&Oe.createElement("span",{className:`${jn}-list-item-actions`},Xo,sl==="done"&&Pl,tl),{getPrefixCls:Xs}=Oe.useContext(at.E_),Il=Xs(),_l=Oe.createElement("div",{className:Wo},Yo,nl,Ho,bo&&Oe.createElement(St.default,{motionName:`${Il}-fade`,visible:sl==="uploading",motionDeadline:2e3},Os=>{let{className:Vs}=Os;const Mu="percent"in xr?Oe.createElement(yr.Z,Object.assign({},vr,{type:"line",percent:xr.percent,"aria-label":xr["aria-label"],"aria-labelledby":xr["aria-labelledby"]})):null;return Oe.createElement("div",{className:be()(`${jn}-list-item-progress`,Vs)},Mu)})),Go=xr.response&&typeof xr.response=="string"?xr.response:(($i=xr.error)===null||$i===void 0?void 0:$i.statusText)||((Uo=xr.error)===null||Uo===void 0?void 0:Uo.message)||Qn.uploadError,lu=sl==="error"?Oe.createElement(kr.Z,{title:Go,getPopupContainer:Os=>Os.parentNode},_l):_l;return Oe.createElement("div",{className:be()(`${jn}-list-item-container`,cr),style:or,ref:In},ri?ri(lu,xr,On,{download:za.bind(null,xr),preview:Wi.bind(null,xr),remove:_i.bind(null,xr)}):lu)});const Ma=(an,In)=>{const{listType:jn="text",previewFile:cr=qt,onPreview:or,onDownload:Qn,onRemove:dr,locale:xr,iconRender:On,isImageUrl:vr=nr,prefixCls:Yn,items:jr=[],showPreviewIcon:ri=!0,showRemoveIcon:vi=!0,showDownloadIcon:ci=!1,removeIcon:Kr,previewIcon:Ia,downloadIcon:Ta,progress:la={size:[-1,2],showInfo:!1},appendAction:ei,appendActionVisible:Wi=!0,itemRender:za,disabled:_i}=an,$i=(0,Qt.Z)(),[Uo,yo]=Oe.useState(!1);Oe.useEffect(()=>{jn!=="picture"&&jn!=="picture-card"&&jn!=="picture-circle"||(jr||[]).forEach(uo=>{typeof document=="undefined"||typeof window=="undefined"||!window.FileReader||!window.File||!(uo.originFileObj instanceof File||uo.originFileObj instanceof Blob)||uo.thumbUrl!==void 0||(uo.thumbUrl="",cr&&cr(uo.originFileObj).then(Xo=>{uo.thumbUrl=Xo||"",$i()}))})},[jn,jr,cr]),Oe.useEffect(()=>{yo(!0)},[]);const sl=(uo,Xo)=>{if(or)return Xo==null||Xo.preventDefault(),or(uo)},ds=uo=>{typeof Qn=="function"?Qn(uo):uo.url&&window.open(uo.url)},bo=uo=>{dr==null||dr(uo)},hs=uo=>{if(On)return On(uo,jn);const Xo=uo.status==="uploading",Ho=vr&&vr(uo)?Oe.createElement(Tt,null):Oe.createElement(Zt,null);let Xs=Xo?Oe.createElement(en.Z,null):Oe.createElement(Mn,null);return jn==="picture"?Xs=Xo?Oe.createElement(en.Z,null):Ho:(jn==="picture-card"||jn==="picture-circle")&&(Xs=Xo?xr.uploading:Ho),Xs},ss=(uo,Xo,Ho,Xs)=>{const Il={type:"text",size:"small",title:Xs,onClick:_l=>{Xo(),(0,bt.l$)(uo)&&uo.props.onClick&&uo.props.onClick(_l)},className:`${Ho}-list-item-action`,disabled:_i};if((0,bt.l$)(uo)){const _l=(0,bt.Tm)(uo,Object.assign(Object.assign({},uo.props),{onClick:()=>{}}));return Oe.createElement(Yt.ZP,Object.assign({},Il,{icon:_l}))}return Oe.createElement(Yt.ZP,Object.assign({},Il),Oe.createElement("span",null,uo))};Oe.useImperativeHandle(In,()=>({handlePreview:sl,handleDownload:ds}));const{getPrefixCls:Yo}=Oe.useContext(at.E_),Wo=Yo("upload",Yn),Rs=Yo(),tl=be()(`${Wo}-list`,`${Wo}-list-${jn}`),Pl=(0,He.Z)(jr.map(uo=>({key:uo.uid,file:uo})));let il={motionDeadline:2e3,motionName:`${Wo}-${jn==="picture-card"||jn==="picture-circle"?"animate-inline":"animate"}`,keys:Pl,motionAppear:Uo};const nl=Oe.useMemo(()=>{const uo=Object.assign({},(0,gt.Z)(Rs));return delete uo.onAppearEnd,delete uo.onEnterEnd,delete uo.onLeaveEnd,uo},[Rs]);return jn!=="picture-card"&&jn!=="picture-circle"&&(il=Object.assign(Object.assign({},nl),il)),Oe.createElement("div",{className:tl},Oe.createElement(St.CSSMotionList,Object.assign({},il,{component:!1}),uo=>{let{key:Xo,file:Ho,className:Xs,style:Il}=uo;return Oe.createElement(Gr,{key:Xo,locale:xr,prefixCls:Wo,className:Xs,style:Il,file:Ho,items:jr,progress:la,listType:jn,isImgUrl:vr,showPreviewIcon:ri,showRemoveIcon:vi,showDownloadIcon:ci,removeIcon:Kr,previewIcon:Ia,downloadIcon:Ta,iconRender:hs,actionIconRender:ss,itemRender:za,onPreview:sl,onDownload:ds,onClose:bo})}),ei&&Oe.createElement(St.default,Object.assign({},il,{visible:Wi,forceRender:!0}),uo=>{let{className:Xo,style:Ho}=uo;return(0,bt.Tm)(ei,Xs=>({className:be()(Xs.className,Xo),style:Object.assign(Object.assign(Object.assign({},Ho),{pointerEvents:Xo?"none":void 0}),Xs.style)}))}))};var Na=Oe.forwardRef(Ma),Da=Te(17313),Di=Te(8378),_a=Te(83116),Vr=Te(37613),ui=an=>{const{componentCls:In,iconCls:jn}=an;return{[`${In}-wrapper`]:{[`${In}-drag`]:{position:"relative",width:"100%",height:"100%",textAlign:"center",background:an.colorFillAlter,border:`${an.lineWidth}px dashed ${an.colorBorder}`,borderRadius:an.borderRadiusLG,cursor:"pointer",transition:`border-color ${an.motionDurationSlow}`,[In]:{padding:`${an.padding}px 0`},[`${In}-btn`]:{display:"table",width:"100%",height:"100%",outline:"none"},[`${In}-drag-container`]:{display:"table-cell",verticalAlign:"middle"},[`&:not(${In}-disabled):hover`]:{borderColor:an.colorPrimaryHover},[`p${In}-drag-icon`]:{marginBottom:an.margin,[jn]:{color:an.colorPrimary,fontSize:an.uploadThumbnailSize}},[`p${In}-text`]:{margin:`0 0 ${an.marginXXS}px`,color:an.colorTextHeading,fontSize:an.fontSizeLG},[`p${In}-hint`]:{color:an.colorTextDescription,fontSize:an.fontSize},[`&${In}-disabled`]:{cursor:"not-allowed",[`p${In}-drag-icon ${jn},
|
|
|
p${In}-text,
|
|
|
p${In}-hint
|
|
|
`]:{color:an.colorTextDisabled}}}}}},Er=an=>{const{componentCls:In,antCls:jn,iconCls:cr,fontSize:or,lineHeight:Qn}=an,dr=`${In}-list-item`,xr=`${dr}-actions`,On=`${dr}-action`,vr=Math.round(or*Qn);return{[`${In}-wrapper`]:{[`${In}-list`]:Object.assign(Object.assign({},(0,Da.dF)()),{lineHeight:an.lineHeight,[dr]:{position:"relative",height:an.lineHeight*or,marginTop:an.marginXS,fontSize:or,display:"flex",alignItems:"center",transition:`background-color ${an.motionDurationSlow}`,"&:hover":{backgroundColor:an.controlItemBgHover},[`${dr}-name`]:Object.assign(Object.assign({},Da.vS),{padding:`0 ${an.paddingXS}px`,lineHeight:Qn,flex:"auto",transition:`all ${an.motionDurationSlow}`}),[xr]:{[On]:{opacity:0},[`${On}${jn}-btn-sm`]:{height:vr,border:0,lineHeight:1,"> span":{transform:"scale(1)"}},[`
|
|
|
${On}:focus-visible,
|
|
|
&.picture ${On}
|
|
|
`]:{opacity:1},[cr]:{color:an.actionsColor,transition:`all ${an.motionDurationSlow}`},[`&:hover ${cr}`]:{color:an.colorText}},[`${In}-icon ${cr}`]:{color:an.colorTextDescription,fontSize:or},[`${dr}-progress`]:{position:"absolute",bottom:-an.uploadProgressOffset,width:"100%",paddingInlineStart:or+an.paddingXS,fontSize:or,lineHeight:0,pointerEvents:"none","> div":{margin:0}}},[`${dr}:hover ${On}`]:{opacity:1,color:an.colorText},[`${dr}-error`]:{color:an.colorError,[`${dr}-name, ${In}-icon ${cr}`]:{color:an.colorError},[xr]:{[`${cr}, ${cr}:hover`]:{color:an.colorError},[On]:{opacity:1}}},[`${In}-list-item-container`]:{transition:`opacity ${an.motionDurationSlow}, height ${an.motionDurationSlow}`,"&::before":{display:"table",width:0,height:0,content:'""'}}})}}},ba=Te(36237),Fn=Te(1950);const gr=new ba.Keyframes("uploadAnimateInlineIn",{from:{width:0,height:0,margin:0,padding:0,opacity:0}}),br=new ba.Keyframes("uploadAnimateInlineOut",{to:{width:0,height:0,margin:0,padding:0,opacity:0}});var ha=an=>{const{componentCls:In}=an,jn=`${In}-animate-inline`;return[{[`${In}-wrapper`]:{[`${jn}-appear, ${jn}-enter, ${jn}-leave`]:{animationDuration:an.motionDurationSlow,animationTimingFunction:an.motionEaseInOutCirc,animationFillMode:"forwards"},[`${jn}-appear, ${jn}-enter`]:{animationName:gr},[`${jn}-leave`]:{animationName:br}}},{[`${In}-wrapper`]:(0,Fn.J$)(an)},gr,br]},Ct=Te(30071),we=Te(64993);const Be=an=>{const{componentCls:In,iconCls:jn,uploadThumbnailSize:cr,uploadProgressOffset:or}=an,Qn=`${In}-list`,dr=`${Qn}-item`;return{[`${In}-wrapper`]:{[`
|
|
|
${Qn}${Qn}-picture,
|
|
|
${Qn}${Qn}-picture-card,
|
|
|
${Qn}${Qn}-picture-circle
|
|
|
`]:{[dr]:{position:"relative",height:cr+an.lineWidth*2+an.paddingXS*2,padding:an.paddingXS,border:`${an.lineWidth}px ${an.lineType} ${an.colorBorder}`,borderRadius:an.borderRadiusLG,"&:hover":{background:"transparent"},[`${dr}-thumbnail`]:Object.assign(Object.assign({},Da.vS),{width:cr,height:cr,lineHeight:`${cr+an.paddingSM}px`,textAlign:"center",flex:"none",[jn]:{fontSize:an.fontSizeHeading2,color:an.colorPrimary},img:{display:"block",width:"100%",height:"100%",overflow:"hidden"}}),[`${dr}-progress`]:{bottom:or,width:`calc(100% - ${an.paddingSM*2}px)`,marginTop:0,paddingInlineStart:cr+an.paddingXS}},[`${dr}-error`]:{borderColor:an.colorError,[`${dr}-thumbnail ${jn}`]:{[`svg path[fill='${Ct.blue[0]}']`]:{fill:an.colorErrorBg},[`svg path[fill='${Ct.blue.primary}']`]:{fill:an.colorError}}},[`${dr}-uploading`]:{borderStyle:"dashed",[`${dr}-name`]:{marginBottom:or}}},[`${Qn}${Qn}-picture-circle ${dr}`]:{[`&, &::before, ${dr}-thumbnail`]:{borderRadius:"50%"}}}}},Le=an=>{const{componentCls:In,iconCls:jn,fontSizeLG:cr,colorTextLightSolid:or}=an,Qn=`${In}-list`,dr=`${Qn}-item`,xr=an.uploadPicCardSize;return{[`
|
|
|
${In}-wrapper${In}-picture-card-wrapper,
|
|
|
${In}-wrapper${In}-picture-circle-wrapper
|
|
|
`]:Object.assign(Object.assign({},(0,Da.dF)()),{display:"inline-block",width:"100%",[`${In}${In}-select`]:{width:xr,height:xr,marginInlineEnd:an.marginXS,marginBottom:an.marginXS,textAlign:"center",verticalAlign:"top",backgroundColor:an.colorFillAlter,border:`${an.lineWidth}px dashed ${an.colorBorder}`,borderRadius:an.borderRadiusLG,cursor:"pointer",transition:`border-color ${an.motionDurationSlow}`,[`> ${In}`]:{display:"flex",alignItems:"center",justifyContent:"center",height:"100%",textAlign:"center"},[`&:not(${In}-disabled):hover`]:{borderColor:an.colorPrimary}},[`${Qn}${Qn}-picture-card, ${Qn}${Qn}-picture-circle`]:{[`${Qn}-item-container`]:{display:"inline-block",width:xr,height:xr,marginBlock:`0 ${an.marginXS}px`,marginInline:`0 ${an.marginXS}px`,verticalAlign:"top"},"&::after":{display:"none"},[dr]:{height:"100%",margin:0,"&::before":{position:"absolute",zIndex:1,width:`calc(100% - ${an.paddingXS*2}px)`,height:`calc(100% - ${an.paddingXS*2}px)`,backgroundColor:an.colorBgMask,opacity:0,transition:`all ${an.motionDurationSlow}`,content:'" "'}},[`${dr}:hover`]:{[`&::before, ${dr}-actions`]:{opacity:1}},[`${dr}-actions`]:{position:"absolute",insetInlineStart:0,zIndex:10,width:"100%",whiteSpace:"nowrap",textAlign:"center",opacity:0,transition:`all ${an.motionDurationSlow}`,[`${jn}-eye, ${jn}-download, ${jn}-delete`]:{zIndex:10,width:cr,margin:`0 ${an.marginXXS}px`,fontSize:cr,cursor:"pointer",transition:`all ${an.motionDurationSlow}`,svg:{verticalAlign:"baseline"}}},[`${dr}-actions, ${dr}-actions:hover`]:{[`${jn}-eye, ${jn}-download, ${jn}-delete`]:{color:new we.C(or).setAlpha(.65).toRgbString(),"&:hover":{color:or}}},[`${dr}-thumbnail, ${dr}-thumbnail img`]:{position:"static",display:"block",width:"100%",height:"100%",objectFit:"contain"},[`${dr}-name`]:{display:"none",textAlign:"center"},[`${dr}-file + ${dr}-name`]:{position:"absolute",bottom:an.margin,display:"block",width:`calc(100% - ${an.paddingXS*2}px)`},[`${dr}-uploading`]:{[`&${dr}`]:{backgroundColor:an.colorFillAlter},[`&::before, ${jn}-eye, ${jn}-download, ${jn}-delete`]:{display:"none"}},[`${dr}-progress`]:{bottom:an.marginXL,width:`calc(100% - ${an.paddingXS*2}px)`,paddingInlineStart:0}}}),[`${In}-wrapper${In}-picture-circle-wrapper`]:{[`${In}${In}-select`]:{borderRadius:"50%"}}}};var Xe=an=>{const{componentCls:In}=an;return{[`${In}-rtl`]:{direction:"rtl"}}};const Et=an=>{const{componentCls:In,colorTextDisabled:jn}=an;return{[`${In}-wrapper`]:Object.assign(Object.assign({},(0,Da.Wf)(an)),{[In]:{outline:0,"input[type='file']":{cursor:"pointer"}},[`${In}-select`]:{display:"inline-block"},[`${In}-disabled`]:{color:jn,cursor:"not-allowed"}})}};var xt=(0,_a.Z)("Upload",an=>{const{fontSizeHeading3:In,fontSize:jn,lineHeight:cr,lineWidth:or,controlHeightLG:Qn}=an,dr=Math.round(jn*cr),xr=(0,Vr.TS)(an,{uploadThumbnailSize:In*2,uploadProgressOffset:dr/2+or,uploadPicCardSize:Qn*2.55});return[Et(xr),ui(xr),Be(xr),Le(xr),Er(xr),ha(xr),Xe(xr),(0,Di.Z)(xr)]},an=>({actionsColor:an.colorTextDescription})),Jt=function(an,In,jn,cr){function or(Qn){return Qn instanceof jn?Qn:new jn(function(dr){dr(Qn)})}return new(jn||(jn=Promise))(function(Qn,dr){function xr(Yn){try{vr(cr.next(Yn))}catch(jr){dr(jr)}}function On(Yn){try{vr(cr.throw(Yn))}catch(jr){dr(jr)}}function vr(Yn){Yn.done?Qn(Yn.value):or(Yn.value).then(xr,On)}vr((cr=cr.apply(an,In||[])).next())})};const Vt=`__LIST_IGNORE_${Date.now()}__`,fn=(an,In)=>{const{fileList:jn,defaultFileList:cr,onRemove:or,showUploadList:Qn=!0,listType:dr="text",onPreview:xr,onDownload:On,onChange:vr,onDrop:Yn,previewFile:jr,disabled:ri,locale:vi,iconRender:ci,isImageUrl:Kr,progress:Ia,prefixCls:Ta,className:la,type:ei="select",children:Wi,style:za,itemRender:_i,maxCount:$i,data:Uo={},multiple:yo=!1,action:sl="",accept:ds="",supportServerRender:bo=!0,rootClassName:hs}=an,ss=Oe.useContext(ut.Z),Yo=ri!=null?ri:ss,[Wo,Rs]=(0,qe.Z)(cr||[],{value:jn,postState:Co=>Co!=null?Co:[]}),[tl,Pl]=Oe.useState("drop"),Gs=Oe.useRef(null);Oe.useMemo(()=>{const Co=Date.now();(jn||[]).forEach((Jo,Fs)=>{!Jo.uid&&!Object.isFrozen(Jo)&&(Jo.uid=`__AUTO__${Co}_${Fs}__`)})},[jn]);const il=(Co,Jo,Fs)=>{let _o=(0,He.Z)(Jo),gs=!1;$i===1?_o=_o.slice(-1):$i&&(gs=_o.length>$i,_o=_o.slice(0,$i)),(0,ot.flushSync)(()=>{Rs(_o)});const Or={file:Co,fileList:_o};Fs&&(Or.event=Fs),(!gs||_o.some(pr=>pr.uid===Co.uid))&&(0,ot.flushSync)(()=>{vr==null||vr(Or)})},nl=(Co,Jo)=>Jt(void 0,void 0,void 0,function*(){const{beforeUpload:Fs,transformFile:_o}=an;let gs=Co;if(Fs){const Or=yield Fs(Co,Jo);if(Or===!1)return!1;if(delete Co[Vt],Or===Vt)return Object.defineProperty(Co,Vt,{value:!0,configurable:!0}),!1;typeof Or=="object"&&Or&&(gs=Or)}return _o&&(gs=yield _o(gs)),gs}),uo=Co=>{const Jo=Co.filter(gs=>!gs.file[Vt]);if(!Jo.length)return;const Fs=Jo.map(gs=>kt(gs.file));let _o=(0,He.Z)(Wo);Fs.forEach(gs=>{_o=Mt(gs,_o)}),Fs.forEach((gs,Or)=>{let pr=gs;if(Jo[Or].parsedFile)gs.status="uploading";else{const{originFileObj:Rr}=gs;let ga;try{ga=new File([Rr],Rr.name,{type:Rr.type})}catch(pi){ga=new Blob([Rr],{type:Rr.type}),ga.name=Rr.name,ga.lastModifiedDate=new Date,ga.lastModified=new Date().getTime()}ga.uid=gs.uid,pr=ga}il(pr,_o)})},Xo=(Co,Jo,Fs)=>{try{typeof Co=="string"&&(Co=JSON.parse(Co))}catch(Or){}if(!ln(Jo,Wo))return;const _o=kt(Jo);_o.status="done",_o.percent=100,_o.response=Co,_o.xhr=Fs;const gs=Mt(_o,Wo);il(_o,gs)},Ho=(Co,Jo)=>{if(!ln(Jo,Wo))return;const Fs=kt(Jo);Fs.status="uploading",Fs.percent=Co.percent;const _o=Mt(Fs,Wo);il(Fs,_o,Co)},Xs=(Co,Jo,Fs)=>{if(!ln(Fs,Wo))return;const _o=kt(Fs);_o.error=Co,_o.response=Jo,_o.status="error";const gs=Mt(_o,Wo);il(_o,gs)},Il=Co=>{let Jo;Promise.resolve(typeof or=="function"?or(Co):or).then(Fs=>{var _o;if(Fs===!1)return;const gs=zn(Co,Wo);gs&&(Jo=Object.assign(Object.assign({},Co),{status:"removed"}),Wo==null||Wo.forEach(Or=>{const pr=Jo.uid!==void 0?"uid":"name";Or[pr]===Jo[pr]&&!Object.isFrozen(Or)&&(Or.status="removed")}),(_o=Gs.current)===null||_o===void 0||_o.abort(Jo),il(Jo,gs))})},_l=Co=>{Pl(Co.type),Co.type==="drop"&&(Yn==null||Yn(Co))};Oe.useImperativeHandle(In,()=>({onBatchStart:uo,onSuccess:Xo,onProgress:Ho,onError:Xs,fileList:Wo,upload:Gs.current}));const{getPrefixCls:Go,direction:lu,upload:Os}=Oe.useContext(at.E_),Vs=Go("upload",Ta),Mu=Object.assign(Object.assign({onBatchStart:uo,onError:Xs,onProgress:Ho,onSuccess:Xo},an),{data:Uo,multiple:yo,action:sl,accept:ds,supportServerRender:bo,prefixCls:Vs,disabled:Yo,beforeUpload:nl,onChange:void 0});delete Mu.className,delete Mu.style,(!Wi||Yo)&&delete Mu.id;const[Al,ol]=xt(Vs),[uc]=(0,nt.Z)("Upload",lt.Z.Upload),{showRemoveIcon:zi,showPreviewIcon:Ga,showDownloadIcon:ja,removeIcon:Ua,previewIcon:ao,downloadIcon:ko}=typeof Qn=="boolean"?{}:Qn,Ts=(Co,Jo)=>Qn?Oe.createElement(Na,{prefixCls:Vs,listType:dr,items:Wo,previewFile:jr,onPreview:xr,onDownload:On,onRemove:Il,showRemoveIcon:!Yo&&zi,showPreviewIcon:Ga,showDownloadIcon:ja,removeIcon:Ua,previewIcon:ao,downloadIcon:ko,iconRender:ci,locale:Object.assign(Object.assign({},uc),vi),isImageUrl:Kr,progress:Ia,appendAction:Co,appendActionVisible:Jo,itemRender:_i,disabled:Yo}):Co,ws=be()(`${Vs}-wrapper`,la,hs,ol,Os==null?void 0:Os.className,{[`${Vs}-rtl`]:lu==="rtl",[`${Vs}-picture-card-wrapper`]:dr==="picture-card",[`${Vs}-picture-circle-wrapper`]:dr==="picture-circle"}),Ks=Object.assign(Object.assign({},Os==null?void 0:Os.style),za);if(ei==="drag"){const Co=be()(ol,Vs,`${Vs}-drag`,{[`${Vs}-drag-uploading`]:Wo.some(Jo=>Jo.status==="uploading"),[`${Vs}-drag-hover`]:tl==="dragover",[`${Vs}-disabled`]:Yo,[`${Vs}-rtl`]:lu==="rtl"});return Al(Oe.createElement("span",{className:ws},Oe.createElement("div",{className:Co,style:Ks,onDrop:_l,onDragOver:_l,onDragLeave:_l},Oe.createElement($e,Object.assign({},Mu,{ref:Gs,className:`${Vs}-btn`}),Oe.createElement("div",{className:`${Vs}-drag-container`},Wi))),Ts()))}const Oo=be()(Vs,`${Vs}-select`,{[`${Vs}-disabled`]:Yo}),fl=(Co=>Oe.createElement("div",{className:Oo,style:Co},Oe.createElement($e,Object.assign({},Mu,{ref:Gs}))))(Wi?void 0:{display:"none"});return Al(dr==="picture-card"||dr==="picture-circle"?Oe.createElement("span",{className:ws},Ts(fl,!!Wi)):Oe.createElement("span",{className:ws},fl,Ts()))};var Vn=Oe.forwardRef(fn),Pn=function(an,In){var jn={};for(var cr in an)Object.prototype.hasOwnProperty.call(an,cr)&&In.indexOf(cr)<0&&(jn[cr]=an[cr]);if(an!=null&&typeof Object.getOwnPropertySymbols=="function")for(var or=0,cr=Object.getOwnPropertySymbols(an);or<cr.length;or++)In.indexOf(cr[or])<0&&Object.prototype.propertyIsEnumerable.call(an,cr[or])&&(jn[cr[or]]=an[cr[or]]);return jn},$n=Oe.forwardRef((an,In)=>{var{style:jn,height:cr}=an,or=Pn(an,["style","height"]);return Oe.createElement(Vn,Object.assign({ref:In},or,{type:"drag",style:Object.assign(Object.assign({},jn),{height:cr})}))});const hr=Vn;hr.Dragger=$n,hr.LIST_IGNORE=Vt;var hn=hr},45411:function(At){"use strict";At.exports={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,134,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,250,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,221],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:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],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,50]}},75196:function(At,It,Te){var Oe=Te(45411),He=Te(81683),Ne=Object.hasOwnProperty,be=Object.create(null);for(var _e in Oe)Ne.call(Oe,_e)&&(be[Oe[_e]]=_e);var Me=At.exports={to:{},get:{}};Me.get=function(Pe){var xe=Pe.substring(0,3).toLowerCase(),pe,Ae;switch(xe){case"hsl":pe=Me.get.hsl(Pe),Ae="hsl";break;case"hwb":pe=Me.get.hwb(Pe),Ae="hwb";break;default:pe=Me.get.rgb(Pe),Ae="rgb";break}return pe?{model:Ae,value:pe}:null},Me.get.rgb=function(Pe){if(!Pe)return null;var xe=/^#([a-f0-9]{3,4})$/i,pe=/^#([a-f0-9]{6})([a-f0-9]{2})?$/i,Ae=/^rgba?\(\s*([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/,Se=/^rgba?\(\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/,ce=/^(\w+)$/,te=[0,0,0,1],ne,le,se;if(ne=Pe.match(pe)){for(se=ne[2],ne=ne[1],le=0;le<3;le++){var fe=le*2;te[le]=parseInt(ne.slice(fe,fe+2),16)}se&&(te[3]=parseInt(se,16)/255)}else if(ne=Pe.match(xe)){for(ne=ne[1],se=ne[3],le=0;le<3;le++)te[le]=parseInt(ne[le]+ne[le],16);se&&(te[3]=parseInt(se+se,16)/255)}else if(ne=Pe.match(Ae)){for(le=0;le<3;le++)te[le]=parseInt(ne[le+1],0);ne[4]&&(ne[5]?te[3]=parseFloat(ne[4])*.01:te[3]=parseFloat(ne[4]))}else if(ne=Pe.match(Se)){for(le=0;le<3;le++)te[le]=Math.round(parseFloat(ne[le+1])*2.55);ne[4]&&(ne[5]?te[3]=parseFloat(ne[4])*.01:te[3]=parseFloat(ne[4]))}else return(ne=Pe.match(ce))?ne[1]==="transparent"?[0,0,0,0]:Ne.call(Oe,ne[1])?(te=Oe[ne[1]],te[3]=1,te):null:null;for(le=0;le<3;le++)te[le]=ve(te[le],0,255);return te[3]=ve(te[3],0,1),te},Me.get.hsl=function(Pe){if(!Pe)return null;var xe=/^hsla?\(\s*([+-]?(?:\d{0,3}\.)?\d+)(?:deg)?\s*,?\s*([+-]?[\d\.]+)%\s*,?\s*([+-]?[\d\.]+)%\s*(?:[,|\/]\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:[eE][+-]?\d+)?)\s*)?\)$/,pe=Pe.match(xe);if(pe){var Ae=parseFloat(pe[4]),Se=(parseFloat(pe[1])%360+360)%360,ce=ve(parseFloat(pe[2]),0,100),te=ve(parseFloat(pe[3]),0,100),ne=ve(isNaN(Ae)?1:Ae,0,1);return[Se,ce,te,ne]}return null},Me.get.hwb=function(Pe){if(!Pe)return null;var xe=/^hwb\(\s*([+-]?\d{0,3}(?:\.\d+)?)(?:deg)?\s*,\s*([+-]?[\d\.]+)%\s*,\s*([+-]?[\d\.]+)%\s*(?:,\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:[eE][+-]?\d+)?)\s*)?\)$/,pe=Pe.match(xe);if(pe){var Ae=parseFloat(pe[4]),Se=(parseFloat(pe[1])%360+360)%360,ce=ve(parseFloat(pe[2]),0,100),te=ve(parseFloat(pe[3]),0,100),ne=ve(isNaN(Ae)?1:Ae,0,1);return[Se,ce,te,ne]}return null},Me.to.hex=function(){var Pe=He(arguments);return"#"+Ee(Pe[0])+Ee(Pe[1])+Ee(Pe[2])+(Pe[3]<1?Ee(Math.round(Pe[3]*255)):"")},Me.to.rgb=function(){var Pe=He(arguments);return Pe.length<4||Pe[3]===1?"rgb("+Math.round(Pe[0])+", "+Math.round(Pe[1])+", "+Math.round(Pe[2])+")":"rgba("+Math.round(Pe[0])+", "+Math.round(Pe[1])+", "+Math.round(Pe[2])+", "+Pe[3]+")"},Me.to.rgb.percent=function(){var Pe=He(arguments),xe=Math.round(Pe[0]/255*100),pe=Math.round(Pe[1]/255*100),Ae=Math.round(Pe[2]/255*100);return Pe.length<4||Pe[3]===1?"rgb("+xe+"%, "+pe+"%, "+Ae+"%)":"rgba("+xe+"%, "+pe+"%, "+Ae+"%, "+Pe[3]+")"},Me.to.hsl=function(){var Pe=He(arguments);return Pe.length<4||Pe[3]===1?"hsl("+Pe[0]+", "+Pe[1]+"%, "+Pe[2]+"%)":"hsla("+Pe[0]+", "+Pe[1]+"%, "+Pe[2]+"%, "+Pe[3]+")"},Me.to.hwb=function(){var Pe=He(arguments),xe="";return Pe.length>=4&&Pe[3]!==1&&(xe=", "+Pe[3]),"hwb("+Pe[0]+", "+Pe[1]+"%, "+Pe[2]+"%"+xe+")"},Me.to.keyword=function(Pe){return be[Pe.slice(0,3)]};function ve(Pe,xe,pe){return Math.min(Math.max(xe,Pe),pe)}function Ee(Pe){var xe=Math.round(Pe).toString(16).toUpperCase();return xe.length<2?"0"+xe:xe}},92546:function(At,It,Te){At.exports={graphlib:Te(76626),layout:Te(47194),debug:Te(11303),util:{time:Te(53063).time,notime:Te(53063).notime},version:Te(11897)}},91626:function(At,It,Te){"use strict";var Oe=Te(72361),He=Te(39240);At.exports={run:Ne,undo:_e};function Ne(Me){var ve=Me.graph().acyclicer==="greedy"?He(Me,Ee(Me)):be(Me);Oe.forEach(ve,function(Pe){var xe=Me.edge(Pe);Me.removeEdge(Pe),xe.forwardName=Pe.name,xe.reversed=!0,Me.setEdge(Pe.w,Pe.v,xe,Oe.uniqueId("rev"))});function Ee(Pe){return function(xe){return Pe.edge(xe).weight}}}function be(Me){var ve=[],Ee={},Pe={};function xe(pe){Oe.has(Pe,pe)||(Pe[pe]=!0,Ee[pe]=!0,Oe.forEach(Me.outEdges(pe),function(Ae){Oe.has(Ee,Ae.w)?ve.push(Ae):xe(Ae.w)}),delete Ee[pe])}return Oe.forEach(Me.nodes(),xe),ve}function _e(Me){Oe.forEach(Me.edges(),function(ve){var Ee=Me.edge(ve);if(Ee.reversed){Me.removeEdge(ve);var Pe=Ee.forwardName;delete Ee.reversed,delete Ee.forwardName,Me.setEdge(ve.w,ve.v,Ee,Pe)}})}},60765:function(At,It,Te){var Oe=Te(72361),He=Te(53063);At.exports=Ne;function Ne(_e){function Me(ve){var Ee=_e.children(ve),Pe=_e.node(ve);if(Ee.length&&Oe.forEach(Ee,Me),Oe.has(Pe,"minRank")){Pe.borderLeft=[],Pe.borderRight=[];for(var xe=Pe.minRank,pe=Pe.maxRank+1;xe<pe;++xe)be(_e,"borderLeft","_bl",ve,Pe,xe),be(_e,"borderRight","_br",ve,Pe,xe)}}Oe.forEach(_e.children(),Me)}function be(_e,Me,ve,Ee,Pe,xe){var pe={width:0,height:0,rank:xe,borderType:Me},Ae=Pe[Me][xe-1],Se=He.addDummyNode(_e,"border",pe,ve);Pe[Me][xe]=Se,_e.setParent(Se,Ee),Ae&&_e.setEdge(Ae,Se,{weight:1})}},13257:function(At,It,Te){"use strict";var Oe=Te(72361);At.exports={adjust:He,undo:Ne};function He(xe){var pe=xe.graph().rankdir.toLowerCase();(pe==="lr"||pe==="rl")&&be(xe)}function Ne(xe){var pe=xe.graph().rankdir.toLowerCase();(pe==="bt"||pe==="rl")&&Me(xe),(pe==="lr"||pe==="rl")&&(Ee(xe),be(xe))}function be(xe){Oe.forEach(xe.nodes(),function(pe){_e(xe.node(pe))}),Oe.forEach(xe.edges(),function(pe){_e(xe.edge(pe))})}function _e(xe){var pe=xe.width;xe.width=xe.height,xe.height=pe}function Me(xe){Oe.forEach(xe.nodes(),function(pe){ve(xe.node(pe))}),Oe.forEach(xe.edges(),function(pe){var Ae=xe.edge(pe);Oe.forEach(Ae.points,ve),Oe.has(Ae,"y")&&ve(Ae)})}function ve(xe){xe.y=-xe.y}function Ee(xe){Oe.forEach(xe.nodes(),function(pe){Pe(xe.node(pe))}),Oe.forEach(xe.edges(),function(pe){var Ae=xe.edge(pe);Oe.forEach(Ae.points,Pe),Oe.has(Ae,"x")&&Pe(Ae)})}function Pe(xe){var pe=xe.x;xe.x=xe.y,xe.y=pe}},21135:function(At){At.exports=It;function It(){var He={};He._next=He._prev=He,this._sentinel=He}It.prototype.dequeue=function(){var He=this._sentinel,Ne=He._prev;if(Ne!==He)return Te(Ne),Ne},It.prototype.enqueue=function(He){var Ne=this._sentinel;He._prev&&He._next&&Te(He),He._next=Ne._next,Ne._next._prev=He,Ne._next=He,He._prev=Ne},It.prototype.toString=function(){for(var He=[],Ne=this._sentinel,be=Ne._prev;be!==Ne;)He.push(JSON.stringify(be,Oe)),be=be._prev;return"["+He.join(", ")+"]"};function Te(He){He._prev._next=He._next,He._next._prev=He._prev,delete He._next,delete He._prev}function Oe(He,Ne){if(He!=="_next"&&He!=="_prev")return Ne}},11303:function(At,It,Te){var Oe=Te(72361),He=Te(53063),Ne=Te(76626).Graph;At.exports={debugOrdering:be};function be(_e){var Me=He.buildLayerMatrix(_e),ve=new Ne({compound:!0,multigraph:!0}).setGraph({});return Oe.forEach(_e.nodes(),function(Ee){ve.setNode(Ee,{label:Ee}),ve.setParent(Ee,"layer"+_e.node(Ee).rank)}),Oe.forEach(_e.edges(),function(Ee){ve.setEdge(Ee.v,Ee.w,{},Ee.name)}),Oe.forEach(Me,function(Ee,Pe){var xe="layer"+Pe;ve.setNode(xe,{rank:"same"}),Oe.reduce(Ee,function(pe,Ae){return ve.setEdge(pe,Ae,{style:"invis"}),Ae})}),ve}},76626:function(At,It,Te){var Oe;try{Oe=Te(75172)}catch(He){}Oe||(Oe=window.graphlib),At.exports=Oe},39240:function(At,It,Te){var Oe=Te(72361),He=Te(76626).Graph,Ne=Te(21135);At.exports=_e;var be=Oe.constant(1);function _e(xe,pe){if(xe.nodeCount()<=1)return[];var Ae=Ee(xe,pe||be),Se=Me(Ae.graph,Ae.buckets,Ae.zeroIdx);return Oe.flatten(Oe.map(Se,function(ce){return xe.outEdges(ce.v,ce.w)}),!0)}function Me(xe,pe,Ae){for(var Se=[],ce=pe[pe.length-1],te=pe[0],ne;xe.nodeCount();){for(;ne=te.dequeue();)ve(xe,pe,Ae,ne);for(;ne=ce.dequeue();)ve(xe,pe,Ae,ne);if(xe.nodeCount()){for(var le=pe.length-2;le>0;--le)if(ne=pe[le].dequeue(),ne){Se=Se.concat(ve(xe,pe,Ae,ne,!0));break}}}return Se}function ve(xe,pe,Ae,Se,ce){var te=ce?[]:void 0;return Oe.forEach(xe.inEdges(Se.v),function(ne){var le=xe.edge(ne),se=xe.node(ne.v);ce&&te.push({v:ne.v,w:ne.w}),se.out-=le,Pe(pe,Ae,se)}),Oe.forEach(xe.outEdges(Se.v),function(ne){var le=xe.edge(ne),se=ne.w,fe=xe.node(se);fe.in-=le,Pe(pe,Ae,fe)}),xe.removeNode(Se.v),te}function Ee(xe,pe){var Ae=new He,Se=0,ce=0;Oe.forEach(xe.nodes(),function(le){Ae.setNode(le,{v:le,in:0,out:0})}),Oe.forEach(xe.edges(),function(le){var se=Ae.edge(le.v,le.w)||0,fe=pe(le),he=se+fe;Ae.setEdge(le.v,le.w,he),ce=Math.max(ce,Ae.node(le.v).out+=fe),Se=Math.max(Se,Ae.node(le.w).in+=fe)});var te=Oe.range(ce+Se+3).map(function(){return new Ne}),ne=Se+1;return Oe.forEach(Ae.nodes(),function(le){Pe(te,ne,Ae.node(le))}),{graph:Ae,buckets:te,zeroIdx:ne}}function Pe(xe,pe,Ae){Ae.out?Ae.in?xe[Ae.out-Ae.in+pe].enqueue(Ae):xe[xe.length-1].enqueue(Ae):xe[0].enqueue(Ae)}},47194:function(At,It,Te){"use strict";var Oe=Te(72361),He=Te(91626),Ne=Te(27163),be=Te(64505),_e=Te(53063).normalizeRanks,Me=Te(71970),ve=Te(53063).removeEmptyRanks,Ee=Te(31733),Pe=Te(60765),xe=Te(13257),pe=Te(62852),Ae=Te(93021),Se=Te(53063),ce=Te(76626).Graph;At.exports=te;function te(ft,ct){var vt=ct&&ct.debugTiming?Se.time:Se.notime;vt("layout",function(){var Ut=vt(" buildLayoutGraph",function(){return Fe(ft)});vt(" runLayout",function(){ne(Ut,vt)}),vt(" updateInputGraph",function(){le(ft,Ut)})})}function ne(ft,ct){ct(" makeSpaceForEdgeLabels",function(){Re(ft)}),ct(" removeSelfEdges",function(){at(ft)}),ct(" acyclic",function(){He.run(ft)}),ct(" nestingGraph.run",function(){Ee.run(ft)}),ct(" rank",function(){be(Se.asNonCompoundGraph(ft))}),ct(" injectEdgeLabelProxies",function(){Ue(ft)}),ct(" removeEmptyRanks",function(){ve(ft)}),ct(" nestingGraph.cleanup",function(){Ee.cleanup(ft)}),ct(" normalizeRanks",function(){_e(ft)}),ct(" assignRankMinMax",function(){Ge(ft)}),ct(" removeEdgeLabelProxies",function(){Je(ft)}),ct(" normalize.run",function(){Ne.run(ft)}),ct(" parentDummyChains",function(){Me(ft)}),ct(" addBorderSegments",function(){Pe(ft)}),ct(" order",function(){pe(ft)}),ct(" insertSelfEdges",function(){ut(ft)}),ct(" adjustCoordinateSystem",function(){xe.adjust(ft)}),ct(" position",function(){Ae(ft)}),ct(" positionSelfEdges",function(){nt(ft)}),ct(" removeBorderNodes",function(){ot(ft)}),ct(" normalize.undo",function(){Ne.undo(ft)}),ct(" fixupEdgeLabelCoords",function(){$e(ft)}),ct(" undoCoordinateSystem",function(){xe.undo(ft)}),ct(" translateGraph",function(){Qe(ft)}),ct(" assignNodeIntersects",function(){rt(ft)}),ct(" reversePoints",function(){qe(ft)}),ct(" acyclic.undo",function(){He.undo(ft)})}function le(ft,ct){Oe.forEach(ft.nodes(),function(vt){var Ut=ft.node(vt),Zt=ct.node(vt);Ut&&(Ut.x=Zt.x,Ut.y=Zt.y,ct.children(vt).length&&(Ut.width=Zt.width,Ut.height=Zt.height))}),Oe.forEach(ft.edges(),function(vt){var Ut=ft.edge(vt),Zt=ct.edge(vt);Ut.points=Zt.points,Oe.has(Zt,"x")&&(Ut.x=Zt.x,Ut.y=Zt.y)}),ft.graph().width=ct.graph().width,ft.graph().height=ct.graph().height}var se=["nodesep","edgesep","ranksep","marginx","marginy"],fe={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},he=["acyclicer","ranker","rankdir","align"],ie=["width","height"],ue={width:0,height:0},me=["minlen","weight","width","height","labeloffset"],Ce={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},Ie=["labelpos"];function Fe(ft){var ct=new ce({multigraph:!0,compound:!0}),vt=yt(ft.graph());return ct.setGraph(Oe.merge({},fe,lt(vt,se),Oe.pick(vt,he))),Oe.forEach(ft.nodes(),function(Ut){var Zt=yt(ft.node(Ut));ct.setNode(Ut,Oe.defaults(lt(Zt,ie),ue)),ct.setParent(Ut,ft.parent(Ut))}),Oe.forEach(ft.edges(),function(Ut){var Zt=yt(ft.edge(Ut));ct.setEdge(Ut,Oe.merge({},Ce,lt(Zt,me),Oe.pick(Zt,Ie)))}),ct}function Re(ft){var ct=ft.graph();ct.ranksep/=2,Oe.forEach(ft.edges(),function(vt){var Ut=ft.edge(vt);Ut.minlen*=2,Ut.labelpos.toLowerCase()!=="c"&&(ct.rankdir==="TB"||ct.rankdir==="BT"?Ut.width+=Ut.labeloffset:Ut.height+=Ut.labeloffset)})}function Ue(ft){Oe.forEach(ft.edges(),function(ct){var vt=ft.edge(ct);if(vt.width&&vt.height){var Ut=ft.node(ct.v),Zt=ft.node(ct.w),en={rank:(Zt.rank-Ut.rank)/2+Ut.rank,e:ct};Se.addDummyNode(ft,"edge-proxy",en,"_ep")}})}function Ge(ft){var ct=0;Oe.forEach(ft.nodes(),function(vt){var Ut=ft.node(vt);Ut.borderTop&&(Ut.minRank=ft.node(Ut.borderTop).rank,Ut.maxRank=ft.node(Ut.borderBottom).rank,ct=Oe.max(ct,Ut.maxRank))}),ft.graph().maxRank=ct}function Je(ft){Oe.forEach(ft.nodes(),function(ct){var vt=ft.node(ct);vt.dummy==="edge-proxy"&&(ft.edge(vt.e).labelRank=vt.rank,ft.removeNode(ct))})}function Qe(ft){var ct=Number.POSITIVE_INFINITY,vt=0,Ut=Number.POSITIVE_INFINITY,Zt=0,en=ft.graph(),mn=en.marginx||0,Bt=en.marginy||0;function tn(on){var Mn=on.x,Dn=on.y,sn=on.width,rn=on.height;ct=Math.min(ct,Mn-sn/2),vt=Math.max(vt,Mn+sn/2),Ut=Math.min(Ut,Dn-rn/2),Zt=Math.max(Zt,Dn+rn/2)}Oe.forEach(ft.nodes(),function(on){tn(ft.node(on))}),Oe.forEach(ft.edges(),function(on){var Mn=ft.edge(on);Oe.has(Mn,"x")&&tn(Mn)}),ct-=mn,Ut-=Bt,Oe.forEach(ft.nodes(),function(on){var Mn=ft.node(on);Mn.x-=ct,Mn.y-=Ut}),Oe.forEach(ft.edges(),function(on){var Mn=ft.edge(on);Oe.forEach(Mn.points,function(Dn){Dn.x-=ct,Dn.y-=Ut}),Oe.has(Mn,"x")&&(Mn.x-=ct),Oe.has(Mn,"y")&&(Mn.y-=Ut)}),en.width=vt-ct+mn,en.height=Zt-Ut+Bt}function rt(ft){Oe.forEach(ft.edges(),function(ct){var vt=ft.edge(ct),Ut=ft.node(ct.v),Zt=ft.node(ct.w),en,mn;vt.points?(en=vt.points[0],mn=vt.points[vt.points.length-1]):(vt.points=[],en=Zt,mn=Ut),vt.points.unshift(Se.intersectRect(Ut,en)),vt.points.push(Se.intersectRect(Zt,mn))})}function $e(ft){Oe.forEach(ft.edges(),function(ct){var vt=ft.edge(ct);if(Oe.has(vt,"x"))switch((vt.labelpos==="l"||vt.labelpos==="r")&&(vt.width-=vt.labeloffset),vt.labelpos){case"l":vt.x-=vt.width/2+vt.labeloffset;break;case"r":vt.x+=vt.width/2+vt.labeloffset;break}})}function qe(ft){Oe.forEach(ft.edges(),function(ct){var vt=ft.edge(ct);vt.reversed&&vt.points.reverse()})}function ot(ft){Oe.forEach(ft.nodes(),function(ct){if(ft.children(ct).length){var vt=ft.node(ct),Ut=ft.node(vt.borderTop),Zt=ft.node(vt.borderBottom),en=ft.node(Oe.last(vt.borderLeft)),mn=ft.node(Oe.last(vt.borderRight));vt.width=Math.abs(mn.x-en.x),vt.height=Math.abs(Zt.y-Ut.y),vt.x=en.x+vt.width/2,vt.y=Ut.y+vt.height/2}}),Oe.forEach(ft.nodes(),function(ct){ft.node(ct).dummy==="border"&&ft.removeNode(ct)})}function at(ft){Oe.forEach(ft.edges(),function(ct){if(ct.v===ct.w){var vt=ft.node(ct.v);vt.selfEdges||(vt.selfEdges=[]),vt.selfEdges.push({e:ct,label:ft.edge(ct)}),ft.removeEdge(ct)}})}function ut(ft){var ct=Se.buildLayerMatrix(ft);Oe.forEach(ct,function(vt){var Ut=0;Oe.forEach(vt,function(Zt,en){var mn=ft.node(Zt);mn.order=en+Ut,Oe.forEach(mn.selfEdges,function(Bt){Se.addDummyNode(ft,"selfedge",{width:Bt.label.width,height:Bt.label.height,rank:mn.rank,order:en+ ++Ut,e:Bt.e,label:Bt.label},"_se")}),delete mn.selfEdges})})}function nt(ft){Oe.forEach(ft.nodes(),function(ct){var vt=ft.node(ct);if(vt.dummy==="selfedge"){var Ut=ft.node(vt.e.v),Zt=Ut.x+Ut.width/2,en=Ut.y,mn=vt.x-Zt,Bt=Ut.height/2;ft.setEdge(vt.e,vt.label),ft.removeNode(ct),vt.label.points=[{x:Zt+2*mn/3,y:en-Bt},{x:Zt+5*mn/6,y:en-Bt},{x:Zt+mn,y:en},{x:Zt+5*mn/6,y:en+Bt},{x:Zt+2*mn/3,y:en+Bt}],vt.label.x=vt.x,vt.label.y=vt.y}})}function lt(ft,ct){return Oe.mapValues(Oe.pick(ft,ct),Number)}function yt(ft){var ct={};return Oe.forEach(ft,function(vt,Ut){ct[Ut.toLowerCase()]=vt}),ct}},72361:function(At,It,Te){var Oe;try{Oe={cloneDeep:Te(20250),constant:Te(13503),defaults:Te(28548),each:Te(76934),filter:Te(64725),find:Te(79785),flatten:Te(40151),forEach:Te(99204),forIn:Te(23190),has:Te(99946),isUndefined:Te(16513),last:Te(10611),map:Te(9924),mapValues:Te(70642),max:Te(95987),merge:Te(28440),min:Te(73376),minBy:Te(83296),now:Te(5795),pick:Te(89409),range:Te(60859),reduce:Te(16473),sortBy:Te(351),uniqueId:Te(95708),values:Te(81229),zipObject:Te(92993)}}catch(He){}Oe||(Oe=window._),At.exports=Oe},31733:function(At,It,Te){var Oe=Te(72361),He=Te(53063);At.exports={run:Ne,cleanup:ve};function Ne(Ee){var Pe=He.addDummyNode(Ee,"root",{},"_root"),xe=_e(Ee),pe=Oe.max(Oe.values(xe))-1,Ae=2*pe+1;Ee.graph().nestingRoot=Pe,Oe.forEach(Ee.edges(),function(ce){Ee.edge(ce).minlen*=Ae});var Se=Me(Ee)+1;Oe.forEach(Ee.children(),function(ce){be(Ee,Pe,Ae,Se,pe,xe,ce)}),Ee.graph().nodeRankFactor=Ae}function be(Ee,Pe,xe,pe,Ae,Se,ce){var te=Ee.children(ce);if(!te.length){ce!==Pe&&Ee.setEdge(Pe,ce,{weight:0,minlen:xe});return}var ne=He.addBorderNode(Ee,"_bt"),le=He.addBorderNode(Ee,"_bb"),se=Ee.node(ce);Ee.setParent(ne,ce),se.borderTop=ne,Ee.setParent(le,ce),se.borderBottom=le,Oe.forEach(te,function(fe){be(Ee,Pe,xe,pe,Ae,Se,fe);var he=Ee.node(fe),ie=he.borderTop?he.borderTop:fe,ue=he.borderBottom?he.borderBottom:fe,me=he.borderTop?pe:2*pe,Ce=ie!==ue?1:Ae-Se[ce]+1;Ee.setEdge(ne,ie,{weight:me,minlen:Ce,nestingEdge:!0}),Ee.setEdge(ue,le,{weight:me,minlen:Ce,nestingEdge:!0})}),Ee.parent(ce)||Ee.setEdge(Pe,ne,{weight:0,minlen:Ae+Se[ce]})}function _e(Ee){var Pe={};function xe(pe,Ae){var Se=Ee.children(pe);Se&&Se.length&&Oe.forEach(Se,function(ce){xe(ce,Ae+1)}),Pe[pe]=Ae}return Oe.forEach(Ee.children(),function(pe){xe(pe,1)}),Pe}function Me(Ee){return Oe.reduce(Ee.edges(),function(Pe,xe){return Pe+Ee.edge(xe).weight},0)}function ve(Ee){var Pe=Ee.graph();Ee.removeNode(Pe.nestingRoot),delete Pe.nestingRoot,Oe.forEach(Ee.edges(),function(xe){var pe=Ee.edge(xe);pe.nestingEdge&&Ee.removeEdge(xe)})}},27163:function(At,It,Te){"use strict";var Oe=Te(72361),He=Te(53063);At.exports={run:Ne,undo:_e};function Ne(Me){Me.graph().dummyChains=[],Oe.forEach(Me.edges(),function(ve){be(Me,ve)})}function be(Me,ve){var Ee=ve.v,Pe=Me.node(Ee).rank,xe=ve.w,pe=Me.node(xe).rank,Ae=ve.name,Se=Me.edge(ve),ce=Se.labelRank;if(pe!==Pe+1){Me.removeEdge(ve);var te,ne,le;for(le=0,++Pe;Pe<pe;++le,++Pe)Se.points=[],ne={width:0,height:0,edgeLabel:Se,edgeObj:ve,rank:Pe},te=He.addDummyNode(Me,"edge",ne,"_d"),Pe===ce&&(ne.width=Se.width,ne.height=Se.height,ne.dummy="edge-label",ne.labelpos=Se.labelpos),Me.setEdge(Ee,te,{weight:Se.weight},Ae),le===0&&Me.graph().dummyChains.push(te),Ee=te;Me.setEdge(Ee,xe,{weight:Se.weight},Ae)}}function _e(Me){Oe.forEach(Me.graph().dummyChains,function(ve){var Ee=Me.node(ve),Pe=Ee.edgeLabel,xe;for(Me.setEdge(Ee.edgeObj,Pe);Ee.dummy;)xe=Me.successors(ve)[0],Me.removeNode(ve),Pe.points.push({x:Ee.x,y:Ee.y}),Ee.dummy==="edge-label"&&(Pe.x=Ee.x,Pe.y=Ee.y,Pe.width=Ee.width,Pe.height=Ee.height),ve=xe,Ee=Me.node(ve)})}},52205:function(At,It,Te){var Oe=Te(72361);At.exports=He;function He(Ne,be,_e){var Me={},ve;Oe.forEach(_e,function(Ee){for(var Pe=Ne.parent(Ee),xe,pe;Pe;){if(xe=Ne.parent(Pe),xe?(pe=Me[xe],Me[xe]=Pe):(pe=ve,ve=Pe),pe&&pe!==Pe){be.setEdge(pe,Pe);return}Pe=xe}})}},99506:function(At,It,Te){var Oe=Te(72361);At.exports=He;function He(Ne,be){return Oe.map(be,function(_e){var Me=Ne.inEdges(_e);if(Me.length){var ve=Oe.reduce(Me,function(Ee,Pe){var xe=Ne.edge(Pe),pe=Ne.node(Pe.v);return{sum:Ee.sum+xe.weight*pe.order,weight:Ee.weight+xe.weight}},{sum:0,weight:0});return{v:_e,barycenter:ve.sum/ve.weight,weight:ve.weight}}else return{v:_e}})}},59105:function(At,It,Te){var Oe=Te(72361),He=Te(76626).Graph;At.exports=Ne;function Ne(_e,Me,ve){var Ee=be(_e),Pe=new He({compound:!0}).setGraph({root:Ee}).setDefaultNodeLabel(function(xe){return _e.node(xe)});return Oe.forEach(_e.nodes(),function(xe){var pe=_e.node(xe),Ae=_e.parent(xe);(pe.rank===Me||pe.minRank<=Me&&Me<=pe.maxRank)&&(Pe.setNode(xe),Pe.setParent(xe,Ae||Ee),Oe.forEach(_e[ve](xe),function(Se){var ce=Se.v===xe?Se.w:Se.v,te=Pe.edge(ce,xe),ne=Oe.isUndefined(te)?0:te.weight;Pe.setEdge(ce,xe,{weight:_e.edge(Se).weight+ne})}),Oe.has(pe,"minRank")&&Pe.setNode(xe,{borderLeft:pe.borderLeft[Me],borderRight:pe.borderRight[Me]}))}),Pe}function be(_e){for(var Me;_e.hasNode(Me=Oe.uniqueId("_root")););return Me}},45456:function(At,It,Te){"use strict";var Oe=Te(72361);At.exports=He;function He(be,_e){for(var Me=0,ve=1;ve<_e.length;++ve)Me+=Ne(be,_e[ve-1],_e[ve]);return Me}function Ne(be,_e,Me){for(var ve=Oe.zipObject(Me,Oe.map(Me,function(Se,ce){return ce})),Ee=Oe.flatten(Oe.map(_e,function(Se){return Oe.sortBy(Oe.map(be.outEdges(Se),function(ce){return{pos:ve[ce.w],weight:be.edge(ce).weight}}),"pos")}),!0),Pe=1;Pe<Me.length;)Pe<<=1;var xe=2*Pe-1;Pe-=1;var pe=Oe.map(new Array(xe),function(){return 0}),Ae=0;return Oe.forEach(Ee.forEach(function(Se){var ce=Se.pos+Pe;pe[ce]+=Se.weight;for(var te=0;ce>0;)ce%2&&(te+=pe[ce+1]),ce=ce-1>>1,pe[ce]+=Se.weight;Ae+=Se.weight*te})),Ae}},62852:function(At,It,Te){"use strict";var Oe=Te(72361),He=Te(18043),Ne=Te(45456),be=Te(86490),_e=Te(59105),Me=Te(52205),ve=Te(76626).Graph,Ee=Te(53063);At.exports=Pe;function Pe(Se){var ce=Ee.maxRank(Se),te=xe(Se,Oe.range(1,ce+1),"inEdges"),ne=xe(Se,Oe.range(ce-1,-1,-1),"outEdges"),le=He(Se);Ae(Se,le);for(var se=Number.POSITIVE_INFINITY,fe,he=0,ie=0;ie<4;++he,++ie){pe(he%2?te:ne,he%4>=2),le=Ee.buildLayerMatrix(Se);var ue=Ne(Se,le);ue<se&&(ie=0,fe=Oe.cloneDeep(le),se=ue)}Ae(Se,fe)}function xe(Se,ce,te){return Oe.map(ce,function(ne){return _e(Se,ne,te)})}function pe(Se,ce){var te=new ve;Oe.forEach(Se,function(ne){var le=ne.graph().root,se=be(ne,le,te,ce);Oe.forEach(se.vs,function(fe,he){ne.node(fe).order=he}),Me(ne,te,se.vs)})}function Ae(Se,ce){Oe.forEach(ce,function(te){Oe.forEach(te,function(ne,le){Se.node(ne).order=le})})}},18043:function(At,It,Te){"use strict";var Oe=Te(72361);At.exports=He;function He(Ne){var be={},_e=Oe.filter(Ne.nodes(),function(xe){return!Ne.children(xe).length}),Me=Oe.max(Oe.map(_e,function(xe){return Ne.node(xe).rank})),ve=Oe.map(Oe.range(Me+1),function(){return[]});function Ee(xe){if(!Oe.has(be,xe)){be[xe]=!0;var pe=Ne.node(xe);ve[pe.rank].push(xe),Oe.forEach(Ne.successors(xe),Ee)}}var Pe=Oe.sortBy(_e,function(xe){return Ne.node(xe).rank});return Oe.forEach(Pe,Ee),ve}},45926:function(At,It,Te){"use strict";var Oe=Te(72361);At.exports=He;function He(_e,Me){var ve={};Oe.forEach(_e,function(Pe,xe){var pe=ve[Pe.v]={indegree:0,in:[],out:[],vs:[Pe.v],i:xe};Oe.isUndefined(Pe.barycenter)||(pe.barycenter=Pe.barycenter,pe.weight=Pe.weight)}),Oe.forEach(Me.edges(),function(Pe){var xe=ve[Pe.v],pe=ve[Pe.w];!Oe.isUndefined(xe)&&!Oe.isUndefined(pe)&&(pe.indegree++,xe.out.push(ve[Pe.w]))});var Ee=Oe.filter(ve,function(Pe){return!Pe.indegree});return Ne(Ee)}function Ne(_e){var Me=[];function ve(xe){return function(pe){pe.merged||(Oe.isUndefined(pe.barycenter)||Oe.isUndefined(xe.barycenter)||pe.barycenter>=xe.barycenter)&&be(xe,pe)}}function Ee(xe){return function(pe){pe.in.push(xe),--pe.indegree===0&&_e.push(pe)}}for(;_e.length;){var Pe=_e.pop();Me.push(Pe),Oe.forEach(Pe.in.reverse(),ve(Pe)),Oe.forEach(Pe.out,Ee(Pe))}return Oe.map(Oe.filter(Me,function(xe){return!xe.merged}),function(xe){return Oe.pick(xe,["vs","i","barycenter","weight"])})}function be(_e,Me){var ve=0,Ee=0;_e.weight&&(ve+=_e.barycenter*_e.weight,Ee+=_e.weight),Me.weight&&(ve+=Me.barycenter*Me.weight,Ee+=Me.weight),_e.vs=Me.vs.concat(_e.vs),_e.barycenter=ve/Ee,_e.weight=Ee,_e.i=Math.min(Me.i,_e.i),Me.merged=!0}},86490:function(At,It,Te){var Oe=Te(72361),He=Te(99506),Ne=Te(45926),be=Te(1349);At.exports=_e;function _e(Ee,Pe,xe,pe){var Ae=Ee.children(Pe),Se=Ee.node(Pe),ce=Se?Se.borderLeft:void 0,te=Se?Se.borderRight:void 0,ne={};ce&&(Ae=Oe.filter(Ae,function(ue){return ue!==ce&&ue!==te}));var le=He(Ee,Ae);Oe.forEach(le,function(ue){if(Ee.children(ue.v).length){var me=_e(Ee,ue.v,xe,pe);ne[ue.v]=me,Oe.has(me,"barycenter")&&ve(ue,me)}});var se=Ne(le,xe);Me(se,ne);var fe=be(se,pe);if(ce&&(fe.vs=Oe.flatten([ce,fe.vs,te],!0),Ee.predecessors(ce).length)){var he=Ee.node(Ee.predecessors(ce)[0]),ie=Ee.node(Ee.predecessors(te)[0]);Oe.has(fe,"barycenter")||(fe.barycenter=0,fe.weight=0),fe.barycenter=(fe.barycenter*fe.weight+he.order+ie.order)/(fe.weight+2),fe.weight+=2}return fe}function Me(Ee,Pe){Oe.forEach(Ee,function(xe){xe.vs=Oe.flatten(xe.vs.map(function(pe){return Pe[pe]?Pe[pe].vs:pe}),!0)})}function ve(Ee,Pe){Oe.isUndefined(Ee.barycenter)?(Ee.barycenter=Pe.barycenter,Ee.weight=Pe.weight):(Ee.barycenter=(Ee.barycenter*Ee.weight+Pe.barycenter*Pe.weight)/(Ee.weight+Pe.weight),Ee.weight+=Pe.weight)}},1349:function(At,It,Te){var Oe=Te(72361),He=Te(53063);At.exports=Ne;function Ne(Me,ve){var Ee=He.partition(Me,function(ne){return Oe.has(ne,"barycenter")}),Pe=Ee.lhs,xe=Oe.sortBy(Ee.rhs,function(ne){return-ne.i}),pe=[],Ae=0,Se=0,ce=0;Pe.sort(_e(!!ve)),ce=be(pe,xe,ce),Oe.forEach(Pe,function(ne){ce+=ne.vs.length,pe.push(ne.vs),Ae+=ne.barycenter*ne.weight,Se+=ne.weight,ce=be(pe,xe,ce)});var te={vs:Oe.flatten(pe,!0)};return Se&&(te.barycenter=Ae/Se,te.weight=Se),te}function be(Me,ve,Ee){for(var Pe;ve.length&&(Pe=Oe.last(ve)).i<=Ee;)ve.pop(),Me.push(Pe.vs),Ee++;return Ee}function _e(Me){return function(ve,Ee){return ve.barycenter<Ee.barycenter?-1:ve.barycenter>Ee.barycenter?1:Me?Ee.i-ve.i:ve.i-Ee.i}}},71970:function(At,It,Te){var Oe=Te(72361);At.exports=He;function He(_e){var Me=be(_e);Oe.forEach(_e.graph().dummyChains,function(ve){for(var Ee=_e.node(ve),Pe=Ee.edgeObj,xe=Ne(_e,Me,Pe.v,Pe.w),pe=xe.path,Ae=xe.lca,Se=0,ce=pe[Se],te=!0;ve!==Pe.w;){if(Ee=_e.node(ve),te){for(;(ce=pe[Se])!==Ae&&_e.node(ce).maxRank<Ee.rank;)Se++;ce===Ae&&(te=!1)}if(!te){for(;Se<pe.length-1&&_e.node(ce=pe[Se+1]).minRank<=Ee.rank;)Se++;ce=pe[Se]}_e.setParent(ve,ce),ve=_e.successors(ve)[0]}})}function Ne(_e,Me,ve,Ee){var Pe=[],xe=[],pe=Math.min(Me[ve].low,Me[Ee].low),Ae=Math.max(Me[ve].lim,Me[Ee].lim),Se,ce;Se=ve;do Se=_e.parent(Se),Pe.push(Se);while(Se&&(Me[Se].low>pe||Ae>Me[Se].lim));for(ce=Se,Se=Ee;(Se=_e.parent(Se))!==ce;)xe.push(Se);return{path:Pe.concat(xe.reverse()),lca:ce}}function be(_e){var Me={},ve=0;function Ee(Pe){var xe=ve;Oe.forEach(_e.children(Pe),Ee),Me[Pe]={low:xe,lim:ve++}}return Oe.forEach(_e.children(),Ee),Me}},92080:function(At,It,Te){"use strict";var Oe=Te(72361),He=Te(76626).Graph,Ne=Te(53063);At.exports={positionX:te,findType1Conflicts:be,findType2Conflicts:_e,addConflict:ve,hasConflict:Ee,verticalAlignment:Pe,horizontalCompaction:xe,alignCoordinates:Se,findSmallestWidthAlignment:Ae,balance:ce};function be(se,fe){var he={};function ie(ue,me){var Ce=0,Ie=0,Fe=ue.length,Re=Oe.last(me);return Oe.forEach(me,function(Ue,Ge){var Je=Me(se,Ue),Qe=Je?se.node(Je).order:Fe;(Je||Ue===Re)&&(Oe.forEach(me.slice(Ie,Ge+1),function(rt){Oe.forEach(se.predecessors(rt),function($e){var qe=se.node($e),ot=qe.order;(ot<Ce||Qe<ot)&&!(qe.dummy&&se.node(rt).dummy)&&ve(he,$e,rt)})}),Ie=Ge+1,Ce=Qe)}),me}return Oe.reduce(fe,ie),he}function _e(se,fe){var he={};function ie(me,Ce,Ie,Fe,Re){var Ue;Oe.forEach(Oe.range(Ce,Ie),function(Ge){Ue=me[Ge],se.node(Ue).dummy&&Oe.forEach(se.predecessors(Ue),function(Je){var Qe=se.node(Je);Qe.dummy&&(Qe.order<Fe||Qe.order>Re)&&ve(he,Je,Ue)})})}function ue(me,Ce){var Ie=-1,Fe,Re=0;return Oe.forEach(Ce,function(Ue,Ge){if(se.node(Ue).dummy==="border"){var Je=se.predecessors(Ue);Je.length&&(Fe=se.node(Je[0]).order,ie(Ce,Re,Ge,Ie,Fe),Re=Ge,Ie=Fe)}ie(Ce,Re,Ce.length,Fe,me.length)}),Ce}return Oe.reduce(fe,ue),he}function Me(se,fe){if(se.node(fe).dummy)return Oe.find(se.predecessors(fe),function(he){return se.node(he).dummy})}function ve(se,fe,he){if(fe>he){var ie=fe;fe=he,he=ie}var ue=se[fe];ue||(se[fe]=ue={}),ue[he]=!0}function Ee(se,fe,he){if(fe>he){var ie=fe;fe=he,he=ie}return Oe.has(se[fe],he)}function Pe(se,fe,he,ie){var ue={},me={},Ce={};return Oe.forEach(fe,function(Ie){Oe.forEach(Ie,function(Fe,Re){ue[Fe]=Fe,me[Fe]=Fe,Ce[Fe]=Re})}),Oe.forEach(fe,function(Ie){var Fe=-1;Oe.forEach(Ie,function(Re){var Ue=ie(Re);if(Ue.length){Ue=Oe.sortBy(Ue,function($e){return Ce[$e]});for(var Ge=(Ue.length-1)/2,Je=Math.floor(Ge),Qe=Math.ceil(Ge);Je<=Qe;++Je){var rt=Ue[Je];me[Re]===Re&&Fe<Ce[rt]&&!Ee(he,Re,rt)&&(me[rt]=Re,me[Re]=ue[Re]=ue[rt],Fe=Ce[rt])}}})}),{root:ue,align:me}}function xe(se,fe,he,ie,ue){var me={},Ce=pe(se,fe,he,ue),Ie=ue?"borderLeft":"borderRight";function Fe(Ge,Je){for(var Qe=Ce.nodes(),rt=Qe.pop(),$e={};rt;)$e[rt]?Ge(rt):($e[rt]=!0,Qe.push(rt),Qe=Qe.concat(Je(rt))),rt=Qe.pop()}function Re(Ge){me[Ge]=Ce.inEdges(Ge).reduce(function(Je,Qe){return Math.max(Je,me[Qe.v]+Ce.edge(Qe))},0)}function Ue(Ge){var Je=Ce.outEdges(Ge).reduce(function(rt,$e){return Math.min(rt,me[$e.w]-Ce.edge($e))},Number.POSITIVE_INFINITY),Qe=se.node(Ge);Je!==Number.POSITIVE_INFINITY&&Qe.borderType!==Ie&&(me[Ge]=Math.max(me[Ge],Je))}return Fe(Re,Ce.predecessors.bind(Ce)),Fe(Ue,Ce.successors.bind(Ce)),Oe.forEach(ie,function(Ge){me[Ge]=me[he[Ge]]}),me}function pe(se,fe,he,ie){var ue=new He,me=se.graph(),Ce=ne(me.nodesep,me.edgesep,ie);return Oe.forEach(fe,function(Ie){var Fe;Oe.forEach(Ie,function(Re){var Ue=he[Re];if(ue.setNode(Ue),Fe){var Ge=he[Fe],Je=ue.edge(Ge,Ue);ue.setEdge(Ge,Ue,Math.max(Ce(se,Re,Fe),Je||0))}Fe=Re})}),ue}function Ae(se,fe){return Oe.minBy(Oe.values(fe),function(he){var ie=Number.NEGATIVE_INFINITY,ue=Number.POSITIVE_INFINITY;return Oe.forIn(he,function(me,Ce){var Ie=le(se,Ce)/2;ie=Math.max(me+Ie,ie),ue=Math.min(me-Ie,ue)}),ie-ue})}function Se(se,fe){var he=Oe.values(fe),ie=Oe.min(he),ue=Oe.max(he);Oe.forEach(["u","d"],function(me){Oe.forEach(["l","r"],function(Ce){var Ie=me+Ce,Fe=se[Ie],Re;if(Fe!==fe){var Ue=Oe.values(Fe);Re=Ce==="l"?ie-Oe.min(Ue):ue-Oe.max(Ue),Re&&(se[Ie]=Oe.mapValues(Fe,function(Ge){return Ge+Re}))}})})}function ce(se,fe){return Oe.mapValues(se.ul,function(he,ie){if(fe)return se[fe.toLowerCase()][ie];var ue=Oe.sortBy(Oe.map(se,ie));return(ue[1]+ue[2])/2})}function te(se){var fe=Ne.buildLayerMatrix(se),he=Oe.merge(be(se,fe),_e(se,fe)),ie={},ue;Oe.forEach(["u","d"],function(Ce){ue=Ce==="u"?fe:Oe.values(fe).reverse(),Oe.forEach(["l","r"],function(Ie){Ie==="r"&&(ue=Oe.map(ue,function(Ge){return Oe.values(Ge).reverse()}));var Fe=(Ce==="u"?se.predecessors:se.successors).bind(se),Re=Pe(se,ue,he,Fe),Ue=xe(se,ue,Re.root,Re.align,Ie==="r");Ie==="r"&&(Ue=Oe.mapValues(Ue,function(Ge){return-Ge})),ie[Ce+Ie]=Ue})});var me=Ae(se,ie);return Se(ie,me),ce(ie,se.graph().align)}function ne(se,fe,he){return function(ie,ue,me){var Ce=ie.node(ue),Ie=ie.node(me),Fe=0,Re;if(Fe+=Ce.width/2,Oe.has(Ce,"labelpos"))switch(Ce.labelpos.toLowerCase()){case"l":Re=-Ce.width/2;break;case"r":Re=Ce.width/2;break}if(Re&&(Fe+=he?Re:-Re),Re=0,Fe+=(Ce.dummy?fe:se)/2,Fe+=(Ie.dummy?fe:se)/2,Fe+=Ie.width/2,Oe.has(Ie,"labelpos"))switch(Ie.labelpos.toLowerCase()){case"l":Re=Ie.width/2;break;case"r":Re=-Ie.width/2;break}return Re&&(Fe+=he?Re:-Re),Re=0,Fe}}function le(se,fe){return se.node(fe).width}},93021:function(At,It,Te){"use strict";var Oe=Te(72361),He=Te(53063),Ne=Te(92080).positionX;At.exports=be;function be(Me){Me=He.asNonCompoundGraph(Me),_e(Me),Oe.forEach(Ne(Me),function(ve,Ee){Me.node(Ee).x=ve})}function _e(Me){var ve=He.buildLayerMatrix(Me),Ee=Me.graph().ranksep,Pe=0;Oe.forEach(ve,function(xe){var pe=Oe.max(Oe.map(xe,function(Ae){return Me.node(Ae).height}));Oe.forEach(xe,function(Ae){Me.node(Ae).y=Pe+pe/2}),Pe+=pe+Ee})}},61031:function(At,It,Te){"use strict";var Oe=Te(72361),He=Te(76626).Graph,Ne=Te(2416).slack;At.exports=be;function be(Ee){var Pe=new He({directed:!1}),xe=Ee.nodes()[0],pe=Ee.nodeCount();Pe.setNode(xe,{});for(var Ae,Se;_e(Pe,Ee)<pe;)Ae=Me(Pe,Ee),Se=Pe.hasNode(Ae.v)?Ne(Ee,Ae):-Ne(Ee,Ae),ve(Pe,Ee,Se);return Pe}function _e(Ee,Pe){function xe(pe){Oe.forEach(Pe.nodeEdges(pe),function(Ae){var Se=Ae.v,ce=pe===Se?Ae.w:Se;!Ee.hasNode(ce)&&!Ne(Pe,Ae)&&(Ee.setNode(ce,{}),Ee.setEdge(pe,ce,{}),xe(ce))})}return Oe.forEach(Ee.nodes(),xe),Ee.nodeCount()}function Me(Ee,Pe){return Oe.minBy(Pe.edges(),function(xe){if(Ee.hasNode(xe.v)!==Ee.hasNode(xe.w))return Ne(Pe,xe)})}function ve(Ee,Pe,xe){Oe.forEach(Ee.nodes(),function(pe){Pe.node(pe).rank+=xe})}},64505:function(At,It,Te){"use strict";var Oe=Te(2416),He=Oe.longestPath,Ne=Te(61031),be=Te(77076);At.exports=_e;function _e(Pe){switch(Pe.graph().ranker){case"network-simplex":Ee(Pe);break;case"tight-tree":ve(Pe);break;case"longest-path":Me(Pe);break;default:Ee(Pe)}}var Me=He;function ve(Pe){He(Pe),Ne(Pe)}function Ee(Pe){be(Pe)}},77076:function(At,It,Te){"use strict";var Oe=Te(72361),He=Te(61031),Ne=Te(2416).slack,be=Te(2416).longestPath,_e=Te(76626).alg.preorder,Me=Te(76626).alg.postorder,ve=Te(53063).simplify;At.exports=Ee,Ee.initLowLimValues=Ae,Ee.initCutValues=Pe,Ee.calcCutValue=pe,Ee.leaveEdge=ce,Ee.enterEdge=te,Ee.exchangeEdges=ne;function Ee(he){he=ve(he),be(he);var ie=He(he);Ae(ie),Pe(ie,he);for(var ue,me;ue=ce(ie);)me=te(ie,he,ue),ne(ie,he,ue,me)}function Pe(he,ie){var ue=Me(he,he.nodes());ue=ue.slice(0,ue.length-1),Oe.forEach(ue,function(me){xe(he,ie,me)})}function xe(he,ie,ue){var me=he.node(ue),Ce=me.parent;he.edge(ue,Ce).cutvalue=pe(he,ie,ue)}function pe(he,ie,ue){var me=he.node(ue),Ce=me.parent,Ie=!0,Fe=ie.edge(ue,Ce),Re=0;return Fe||(Ie=!1,Fe=ie.edge(Ce,ue)),Re=Fe.weight,Oe.forEach(ie.nodeEdges(ue),function(Ue){var Ge=Ue.v===ue,Je=Ge?Ue.w:Ue.v;if(Je!==Ce){var Qe=Ge===Ie,rt=ie.edge(Ue).weight;if(Re+=Qe?rt:-rt,se(he,ue,Je)){var $e=he.edge(ue,Je).cutvalue;Re+=Qe?-$e:$e}}}),Re}function Ae(he,ie){arguments.length<2&&(ie=he.nodes()[0]),Se(he,{},1,ie)}function Se(he,ie,ue,me,Ce){var Ie=ue,Fe=he.node(me);return ie[me]=!0,Oe.forEach(he.neighbors(me),function(Re){Oe.has(ie,Re)||(ue=Se(he,ie,ue,Re,me))}),Fe.low=Ie,Fe.lim=ue++,Ce?Fe.parent=Ce:delete Fe.parent,ue}function ce(he){return Oe.find(he.edges(),function(ie){return he.edge(ie).cutvalue<0})}function te(he,ie,ue){var me=ue.v,Ce=ue.w;ie.hasEdge(me,Ce)||(me=ue.w,Ce=ue.v);var Ie=he.node(me),Fe=he.node(Ce),Re=Ie,Ue=!1;Ie.lim>Fe.lim&&(Re=Fe,Ue=!0);var Ge=Oe.filter(ie.edges(),function(Je){return Ue===fe(he,he.node(Je.v),Re)&&Ue!==fe(he,he.node(Je.w),Re)});return Oe.minBy(Ge,function(Je){return Ne(ie,Je)})}function ne(he,ie,ue,me){var Ce=ue.v,Ie=ue.w;he.removeEdge(Ce,Ie),he.setEdge(me.v,me.w,{}),Ae(he),Pe(he,ie),le(he,ie)}function le(he,ie){var ue=Oe.find(he.nodes(),function(Ce){return!ie.node(Ce).parent}),me=_e(he,ue);me=me.slice(1),Oe.forEach(me,function(Ce){var Ie=he.node(Ce).parent,Fe=ie.edge(Ce,Ie),Re=!1;Fe||(Fe=ie.edge(Ie,Ce),Re=!0),ie.node(Ce).rank=ie.node(Ie).rank+(Re?Fe.minlen:-Fe.minlen)})}function se(he,ie,ue){return he.hasEdge(ie,ue)}function fe(he,ie,ue){return ue.low<=ie.lim&&ie.lim<=ue.lim}},2416:function(At,It,Te){"use strict";var Oe=Te(72361);At.exports={longestPath:He,slack:Ne};function He(be){var _e={};function Me(ve){var Ee=be.node(ve);if(Oe.has(_e,ve))return Ee.rank;_e[ve]=!0;var Pe=Oe.min(Oe.map(be.outEdges(ve),function(xe){return Me(xe.w)-be.edge(xe).minlen}));return(Pe===Number.POSITIVE_INFINITY||Pe===void 0||Pe===null)&&(Pe=0),Ee.rank=Pe}Oe.forEach(be.sources(),Me)}function Ne(be,_e){return be.node(_e.w).rank-be.node(_e.v).rank-be.edge(_e).minlen}},53063:function(At,It,Te){"use strict";var Oe=Te(72361),He=Te(76626).Graph;At.exports={addDummyNode:Ne,simplify:be,asNonCompoundGraph:_e,successorWeights:Me,predecessorWeights:ve,intersectRect:Ee,buildLayerMatrix:Pe,normalizeRanks:xe,removeEmptyRanks:pe,addBorderNode:Ae,maxRank:Se,partition:ce,time:te,notime:ne};function Ne(le,se,fe,he){var ie;do ie=Oe.uniqueId(he);while(le.hasNode(ie));return fe.dummy=se,le.setNode(ie,fe),ie}function be(le){var se=new He().setGraph(le.graph());return Oe.forEach(le.nodes(),function(fe){se.setNode(fe,le.node(fe))}),Oe.forEach(le.edges(),function(fe){var he=se.edge(fe.v,fe.w)||{weight:0,minlen:1},ie=le.edge(fe);se.setEdge(fe.v,fe.w,{weight:he.weight+ie.weight,minlen:Math.max(he.minlen,ie.minlen)})}),se}function _e(le){var se=new He({multigraph:le.isMultigraph()}).setGraph(le.graph());return Oe.forEach(le.nodes(),function(fe){le.children(fe).length||se.setNode(fe,le.node(fe))}),Oe.forEach(le.edges(),function(fe){se.setEdge(fe,le.edge(fe))}),se}function Me(le){var se=Oe.map(le.nodes(),function(fe){var he={};return Oe.forEach(le.outEdges(fe),function(ie){he[ie.w]=(he[ie.w]||0)+le.edge(ie).weight}),he});return Oe.zipObject(le.nodes(),se)}function ve(le){var se=Oe.map(le.nodes(),function(fe){var he={};return Oe.forEach(le.inEdges(fe),function(ie){he[ie.v]=(he[ie.v]||0)+le.edge(ie).weight}),he});return Oe.zipObject(le.nodes(),se)}function Ee(le,se){var fe=le.x,he=le.y,ie=se.x-fe,ue=se.y-he,me=le.width/2,Ce=le.height/2;if(!ie&&!ue)throw new Error("Not possible to find intersection inside of the rectangle");var Ie,Fe;return Math.abs(ue)*me>Math.abs(ie)*Ce?(ue<0&&(Ce=-Ce),Ie=Ce*ie/ue,Fe=Ce):(ie<0&&(me=-me),Ie=me,Fe=me*ue/ie),{x:fe+Ie,y:he+Fe}}function Pe(le){var se=Oe.map(Oe.range(Se(le)+1),function(){return[]});return Oe.forEach(le.nodes(),function(fe){var he=le.node(fe),ie=he.rank;Oe.isUndefined(ie)||(se[ie][he.order]=fe)}),se}function xe(le){var se=Oe.min(Oe.map(le.nodes(),function(fe){return le.node(fe).rank}));Oe.forEach(le.nodes(),function(fe){var he=le.node(fe);Oe.has(he,"rank")&&(he.rank-=se)})}function pe(le){var se=Oe.min(Oe.map(le.nodes(),function(ue){return le.node(ue).rank})),fe=[];Oe.forEach(le.nodes(),function(ue){var me=le.node(ue).rank-se;fe[me]||(fe[me]=[]),fe[me].push(ue)});var he=0,ie=le.graph().nodeRankFactor;Oe.forEach(fe,function(ue,me){Oe.isUndefined(ue)&&me%ie!==0?--he:he&&Oe.forEach(ue,function(Ce){le.node(Ce).rank+=he})})}function Ae(le,se,fe,he){var ie={width:0,height:0};return arguments.length>=4&&(ie.rank=fe,ie.order=he),Ne(le,"border",ie,se)}function Se(le){return Oe.max(Oe.map(le.nodes(),function(se){var fe=le.node(se).rank;if(!Oe.isUndefined(fe))return fe}))}function ce(le,se){var fe={lhs:[],rhs:[]};return Oe.forEach(le,function(he){se(he)?fe.lhs.push(he):fe.rhs.push(he)}),fe}function te(le,se){var fe=Oe.now();try{return se()}finally{console.log(le+" time: "+(Oe.now()-fe)+"ms")}}function ne(le,se){return se()}},11897:function(At){At.exports="0.8.5"},97774:function(At,It,Te){"use strict";Object.defineProperty(It,"__esModule",{value:!0}),It.default=void 0;var Oe=Object.assign||function(ne){for(var le=1;le<arguments.length;le++){var se=arguments[le];for(var fe in se)Object.prototype.hasOwnProperty.call(se,fe)&&(ne[fe]=se[fe])}return ne},He=function(){function ne(le,se){for(var fe=0;fe<se.length;fe++){var he=se[fe];he.enumerable=he.enumerable||!1,he.configurable=!0,"value"in he&&(he.writable=!0),Object.defineProperty(le,he.key,he)}}return function(le,se,fe){return se&&ne(le.prototype,se),fe&&ne(le,fe),le}}(),Ne=Te(59301),be=pe(Ne),_e=Te(12708),Me=pe(_e),ve=Te(53291),Ee=pe(ve),Pe=Te(47242),xe=Te(65429);function pe(ne){return ne&&ne.__esModule?ne:{default:ne}}function Ae(ne,le){if(!(ne instanceof le))throw new TypeError("Cannot call a class as a function")}function Se(ne,le){if(!ne)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return le&&(typeof le=="object"||typeof le=="function")?le:ne}function ce(ne,le){if(typeof le!="function"&&le!==null)throw new TypeError("Super expression must either be null or a function, not "+typeof le);ne.prototype=Object.create(le&&le.prototype,{constructor:{value:ne,enumerable:!1,writable:!0,configurable:!0}}),le&&(Object.setPrototypeOf?Object.setPrototypeOf(ne,le):ne.__proto__=le)}var te=function(ne){ce(le,ne);function le(se){Ae(this,le);var fe=Se(this,(le.__proto__||Object.getPrototypeOf(le)).call(this,se));return fe.getEchartsInstance=function(){return fe.echartsLib.getInstanceByDom(fe.echartsElement)||fe.echartsLib.init(fe.echartsElement,fe.props.theme,fe.props.opts)},fe.dispose=function(){if(fe.echartsElement){try{(0,Pe.clear)(fe.echartsElement)}catch(he){console.warn(he)}fe.echartsLib.dispose(fe.echartsElement)}},fe.rerender=function(){var he=fe.props,ie=he.onEvents,ue=he.onChartReady,me=fe.renderEchartDom();fe.bindEvents(me,ie||{}),typeof ue=="function"&&fe.props.onChartReady(me),fe.echartsElement&&(0,Pe.bind)(fe.echartsElement,function(){try{me.resize()}catch(Ce){console.warn(Ce)}})},fe.bindEvents=function(he,ie){var ue=function(Ie,Fe){typeof Ie=="string"&&typeof Fe=="function"&&he.on(Ie,function(Re){Fe(Re,he)})};for(var me in ie)Object.prototype.hasOwnProperty.call(ie,me)&&ue(me,ie[me])},fe.renderEchartDom=function(){var he=fe.getEchartsInstance();return he.setOption(fe.props.option,fe.props.notMerge||!1,fe.props.lazyUpdate||!1),fe.props.showLoading?he.showLoading(fe.props.loadingOption||null):he.hideLoading(),he},fe.echartsLib=se.echarts,fe.echartsElement=null,fe}return He(le,[{key:"componentDidMount",value:function(){this.rerender()}},{key:"componentDidUpdate",value:function(fe){if(!(typeof this.props.shouldSetOption=="function"&&!this.props.shouldSetOption(fe,this.props))){if(!(0,Ee.default)(fe.theme,this.props.theme)||!(0,Ee.default)(fe.opts,this.props.opts)||!(0,Ee.default)(fe.onEvents,this.props.onEvents)){this.dispose(),this.rerender();return}var he=["option","notMerge","lazyUpdate","showLoading","loadingOption"];if(!(0,Ee.default)((0,xe.pick)(this.props,he),(0,xe.pick)(fe,he))){var ie=this.renderEchartDom();if(!(0,Ee.default)(fe.style,this.props.style)||!(0,Ee.default)(fe.className,this.props.className))try{ie.resize()}catch(ue){console.warn(ue)}}}}},{key:"componentWillUnmount",value:function(){this.dispose()}},{key:"render",value:function(){var fe=this,he=this.props,ie=he.style,ue=he.className,me=Oe({height:300},ie);return be.default.createElement("div",{ref:function(Ie){fe.echartsElement=Ie},style:me,className:"echarts-for-react "+ue})}}]),le}(Ne.Component);It.default=te,te.propTypes={option:Me.default.object.isRequired,echarts:Me.default.object,notMerge:Me.default.bool,lazyUpdate:Me.default.bool,style:Me.default.object,className:Me.default.string,theme:Me.default.oneOfType([Me.default.string,Me.default.object]),onChartReady:Me.default.func,showLoading:Me.default.bool,loadingOption:Me.default.object,onEvents:Me.default.object,opts:Me.default.shape({devicePixelRatio:Me.default.number,renderer:Me.default.oneOf(["canvas","svg"]),width:Me.default.oneOfType([Me.default.number,Me.default.oneOf([null,void 0,"auto"])]),height:Me.default.oneOfType([Me.default.number,Me.default.oneOf([null,void 0,"auto"])])}),shouldSetOption:Me.default.func},te.defaultProps={echarts:{},notMerge:!1,lazyUpdate:!1,style:{},className:"",theme:null,onChartReady:function(){},showLoading:!1,loadingOption:null,onEvents:{},opts:{},shouldSetOption:function(){return!0}}},42441:function(At,It,Te){"use strict";var Oe;Oe={value:!0},It.Z=void 0;var He=Te(76411),Ne=Me(He),be=Te(97774),_e=Me(be);function Me(pe){return pe&&pe.__esModule?pe:{default:pe}}function ve(pe,Ae){if(!(pe instanceof Ae))throw new TypeError("Cannot call a class as a function")}function Ee(pe,Ae){if(!pe)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Ae&&(typeof Ae=="object"||typeof Ae=="function")?Ae:pe}function Pe(pe,Ae){if(typeof Ae!="function"&&Ae!==null)throw new TypeError("Super expression must either be null or a function, not "+typeof Ae);pe.prototype=Object.create(Ae&&Ae.prototype,{constructor:{value:pe,enumerable:!1,writable:!0,configurable:!0}}),Ae&&(Object.setPrototypeOf?Object.setPrototypeOf(pe,Ae):pe.__proto__=Ae)}var xe=function(pe){Pe(Ae,pe);function Ae(Se){ve(this,Ae);var ce=Ee(this,(Ae.__proto__||Object.getPrototypeOf(Ae)).call(this,Se));return ce.echartsLib=Ne.default,ce}return Ae}(_e.default);It.Z=xe},65429:function(At,It){"use strict";Object.defineProperty(It,"__esModule",{value:!0});var Te=It.pick=function(He,Ne){var be={};return Ne.forEach(function(_e){be[_e]=He[_e]}),be}},48961:function(At,It,Te){(function(He,Ne){At.exports=Ne(Te(76411))})(this,function(Oe){return function(He){var Ne={};function be(_e){if(Ne[_e])return Ne[_e].exports;var Me=Ne[_e]={i:_e,l:!1,exports:{}};return He[_e].call(Me.exports,Me,Me.exports,be),Me.l=!0,Me.exports}return be.m=He,be.c=Ne,be.d=function(_e,Me,ve){be.o(_e,Me)||Object.defineProperty(_e,Me,{configurable:!1,enumerable:!0,get:ve})},be.n=function(_e){var Me=_e&&_e.__esModule?function(){return _e.default}:function(){return _e};return be.d(Me,"a",Me),Me},be.o=function(_e,Me){return Object.prototype.hasOwnProperty.call(_e,Me)},be.p="",be(be.s=87)}([function(He,Ne){He.exports=Oe},function(He,Ne,be){(function(_e){"use strict";var Me={};Me.exports=Ne,function(ve){if(!Ee)var Ee=1e-6;if(!Pe)var Pe=typeof Float32Array!="undefined"?Float32Array:Array;if(!xe)var xe=Math.random;var pe={};pe.setMatrixArrayType=function(ie){Pe=ie},typeof ve!="undefined"&&(ve.glMatrix=pe);var Ae=Math.PI/180;pe.toRadian=function(ie){return ie*Ae};var Se={};Se.create=function(){var ie=new Pe(2);return ie[0]=0,ie[1]=0,ie},Se.clone=function(ie){var ue=new Pe(2);return ue[0]=ie[0],ue[1]=ie[1],ue},Se.fromValues=function(ie,ue){var me=new Pe(2);return me[0]=ie,me[1]=ue,me},Se.copy=function(ie,ue){return ie[0]=ue[0],ie[1]=ue[1],ie},Se.set=function(ie,ue,me){return ie[0]=ue,ie[1]=me,ie},Se.add=function(ie,ue,me){return ie[0]=ue[0]+me[0],ie[1]=ue[1]+me[1],ie},Se.subtract=function(ie,ue,me){return ie[0]=ue[0]-me[0],ie[1]=ue[1]-me[1],ie},Se.sub=Se.subtract,Se.multiply=function(ie,ue,me){return ie[0]=ue[0]*me[0],ie[1]=ue[1]*me[1],ie},Se.mul=Se.multiply,Se.divide=function(ie,ue,me){return ie[0]=ue[0]/me[0],ie[1]=ue[1]/me[1],ie},Se.div=Se.divide,Se.min=function(ie,ue,me){return ie[0]=Math.min(ue[0],me[0]),ie[1]=Math.min(ue[1],me[1]),ie},Se.max=function(ie,ue,me){return ie[0]=Math.max(ue[0],me[0]),ie[1]=Math.max(ue[1],me[1]),ie},Se.scale=function(ie,ue,me){return ie[0]=ue[0]*me,ie[1]=ue[1]*me,ie},Se.scaleAndAdd=function(ie,ue,me,Ce){return ie[0]=ue[0]+me[0]*Ce,ie[1]=ue[1]+me[1]*Ce,ie},Se.distance=function(ie,ue){var me=ue[0]-ie[0],Ce=ue[1]-ie[1];return Math.sqrt(me*me+Ce*Ce)},Se.dist=Se.distance,Se.squaredDistance=function(ie,ue){var me=ue[0]-ie[0],Ce=ue[1]-ie[1];return me*me+Ce*Ce},Se.sqrDist=Se.squaredDistance,Se.length=function(ie){var ue=ie[0],me=ie[1];return Math.sqrt(ue*ue+me*me)},Se.len=Se.length,Se.squaredLength=function(ie){var ue=ie[0],me=ie[1];return ue*ue+me*me},Se.sqrLen=Se.squaredLength,Se.negate=function(ie,ue){return ie[0]=-ue[0],ie[1]=-ue[1],ie},Se.inverse=function(ie,ue){return ie[0]=1/ue[0],ie[1]=1/ue[1],ie},Se.normalize=function(ie,ue){var me=ue[0],Ce=ue[1],Ie=me*me+Ce*Ce;return Ie>0&&(Ie=1/Math.sqrt(Ie),ie[0]=ue[0]*Ie,ie[1]=ue[1]*Ie),ie},Se.dot=function(ie,ue){return ie[0]*ue[0]+ie[1]*ue[1]},Se.cross=function(ie,ue,me){var Ce=ue[0]*me[1]-ue[1]*me[0];return ie[0]=ie[1]=0,ie[2]=Ce,ie},Se.lerp=function(ie,ue,me,Ce){var Ie=ue[0],Fe=ue[1];return ie[0]=Ie+Ce*(me[0]-Ie),ie[1]=Fe+Ce*(me[1]-Fe),ie},Se.random=function(ie,ue){ue=ue||1;var me=xe()*2*Math.PI;return ie[0]=Math.cos(me)*ue,ie[1]=Math.sin(me)*ue,ie},Se.transformMat2=function(ie,ue,me){var Ce=ue[0],Ie=ue[1];return ie[0]=me[0]*Ce+me[2]*Ie,ie[1]=me[1]*Ce+me[3]*Ie,ie},Se.transformMat2d=function(ie,ue,me){var Ce=ue[0],Ie=ue[1];return ie[0]=me[0]*Ce+me[2]*Ie+me[4],ie[1]=me[1]*Ce+me[3]*Ie+me[5],ie},Se.transformMat3=function(ie,ue,me){var Ce=ue[0],Ie=ue[1];return ie[0]=me[0]*Ce+me[3]*Ie+me[6],ie[1]=me[1]*Ce+me[4]*Ie+me[7],ie},Se.transformMat4=function(ie,ue,me){var Ce=ue[0],Ie=ue[1];return ie[0]=me[0]*Ce+me[4]*Ie+me[12],ie[1]=me[1]*Ce+me[5]*Ie+me[13],ie},Se.forEach=function(){var ie=Se.create();return function(ue,me,Ce,Ie,Fe,Re){var Ue,Ge;for(me||(me=2),Ce||(Ce=0),Ie?Ge=Math.min(Ie*me+Ce,ue.length):Ge=ue.length,Ue=Ce;Ue<Ge;Ue+=me)ie[0]=ue[Ue],ie[1]=ue[Ue+1],Fe(ie,ie,Re),ue[Ue]=ie[0],ue[Ue+1]=ie[1];return ue}}(),Se.str=function(ie){return"vec2("+ie[0]+", "+ie[1]+")"},typeof ve!="undefined"&&(ve.vec2=Se);var ce={};ce.create=function(){var ie=new Pe(3);return ie[0]=0,ie[1]=0,ie[2]=0,ie},ce.clone=function(ie){var ue=new Pe(3);return ue[0]=ie[0],ue[1]=ie[1],ue[2]=ie[2],ue},ce.fromValues=function(ie,ue,me){var Ce=new Pe(3);return Ce[0]=ie,Ce[1]=ue,Ce[2]=me,Ce},ce.copy=function(ie,ue){return ie[0]=ue[0],ie[1]=ue[1],ie[2]=ue[2],ie},ce.set=function(ie,ue,me,Ce){return ie[0]=ue,ie[1]=me,ie[2]=Ce,ie},ce.add=function(ie,ue,me){return ie[0]=ue[0]+me[0],ie[1]=ue[1]+me[1],ie[2]=ue[2]+me[2],ie},ce.subtract=function(ie,ue,me){return ie[0]=ue[0]-me[0],ie[1]=ue[1]-me[1],ie[2]=ue[2]-me[2],ie},ce.sub=ce.subtract,ce.multiply=function(ie,ue,me){return ie[0]=ue[0]*me[0],ie[1]=ue[1]*me[1],ie[2]=ue[2]*me[2],ie},ce.mul=ce.multiply,ce.divide=function(ie,ue,me){return ie[0]=ue[0]/me[0],ie[1]=ue[1]/me[1],ie[2]=ue[2]/me[2],ie},ce.div=ce.divide,ce.min=function(ie,ue,me){return ie[0]=Math.min(ue[0],me[0]),ie[1]=Math.min(ue[1],me[1]),ie[2]=Math.min(ue[2],me[2]),ie},ce.max=function(ie,ue,me){return ie[0]=Math.max(ue[0],me[0]),ie[1]=Math.max(ue[1],me[1]),ie[2]=Math.max(ue[2],me[2]),ie},ce.scale=function(ie,ue,me){return ie[0]=ue[0]*me,ie[1]=ue[1]*me,ie[2]=ue[2]*me,ie},ce.scaleAndAdd=function(ie,ue,me,Ce){return ie[0]=ue[0]+me[0]*Ce,ie[1]=ue[1]+me[1]*Ce,ie[2]=ue[2]+me[2]*Ce,ie},ce.distance=function(ie,ue){var me=ue[0]-ie[0],Ce=ue[1]-ie[1],Ie=ue[2]-ie[2];return Math.sqrt(me*me+Ce*Ce+Ie*Ie)},ce.dist=ce.distance,ce.squaredDistance=function(ie,ue){var me=ue[0]-ie[0],Ce=ue[1]-ie[1],Ie=ue[2]-ie[2];return me*me+Ce*Ce+Ie*Ie},ce.sqrDist=ce.squaredDistance,ce.length=function(ie){var ue=ie[0],me=ie[1],Ce=ie[2];return Math.sqrt(ue*ue+me*me+Ce*Ce)},ce.len=ce.length,ce.squaredLength=function(ie){var ue=ie[0],me=ie[1],Ce=ie[2];return ue*ue+me*me+Ce*Ce},ce.sqrLen=ce.squaredLength,ce.negate=function(ie,ue){return ie[0]=-ue[0],ie[1]=-ue[1],ie[2]=-ue[2],ie},ce.inverse=function(ie,ue){return ie[0]=1/ue[0],ie[1]=1/ue[1],ie[2]=1/ue[2],ie},ce.normalize=function(ie,ue){var me=ue[0],Ce=ue[1],Ie=ue[2],Fe=me*me+Ce*Ce+Ie*Ie;return Fe>0&&(Fe=1/Math.sqrt(Fe),ie[0]=ue[0]*Fe,ie[1]=ue[1]*Fe,ie[2]=ue[2]*Fe),ie},ce.dot=function(ie,ue){return ie[0]*ue[0]+ie[1]*ue[1]+ie[2]*ue[2]},ce.cross=function(ie,ue,me){var Ce=ue[0],Ie=ue[1],Fe=ue[2],Re=me[0],Ue=me[1],Ge=me[2];return ie[0]=Ie*Ge-Fe*Ue,ie[1]=Fe*Re-Ce*Ge,ie[2]=Ce*Ue-Ie*Re,ie},ce.lerp=function(ie,ue,me,Ce){var Ie=ue[0],Fe=ue[1],Re=ue[2];return ie[0]=Ie+Ce*(me[0]-Ie),ie[1]=Fe+Ce*(me[1]-Fe),ie[2]=Re+Ce*(me[2]-Re),ie},ce.random=function(ie,ue){ue=ue||1;var me=xe()*2*Math.PI,Ce=xe()*2-1,Ie=Math.sqrt(1-Ce*Ce)*ue;return ie[0]=Math.cos(me)*Ie,ie[1]=Math.sin(me)*Ie,ie[2]=Ce*ue,ie},ce.transformMat4=function(ie,ue,me){var Ce=ue[0],Ie=ue[1],Fe=ue[2],Re=me[3]*Ce+me[7]*Ie+me[11]*Fe+me[15];return Re=Re||1,ie[0]=(me[0]*Ce+me[4]*Ie+me[8]*Fe+me[12])/Re,ie[1]=(me[1]*Ce+me[5]*Ie+me[9]*Fe+me[13])/Re,ie[2]=(me[2]*Ce+me[6]*Ie+me[10]*Fe+me[14])/Re,ie},ce.transformMat3=function(ie,ue,me){var Ce=ue[0],Ie=ue[1],Fe=ue[2];return ie[0]=Ce*me[0]+Ie*me[3]+Fe*me[6],ie[1]=Ce*me[1]+Ie*me[4]+Fe*me[7],ie[2]=Ce*me[2]+Ie*me[5]+Fe*me[8],ie},ce.transformQuat=function(ie,ue,me){var Ce=ue[0],Ie=ue[1],Fe=ue[2],Re=me[0],Ue=me[1],Ge=me[2],Je=me[3],Qe=Je*Ce+Ue*Fe-Ge*Ie,rt=Je*Ie+Ge*Ce-Re*Fe,$e=Je*Fe+Re*Ie-Ue*Ce,qe=-Re*Ce-Ue*Ie-Ge*Fe;return ie[0]=Qe*Je+qe*-Re+rt*-Ge-$e*-Ue,ie[1]=rt*Je+qe*-Ue+$e*-Re-Qe*-Ge,ie[2]=$e*Je+qe*-Ge+Qe*-Ue-rt*-Re,ie},ce.rotateX=function(ie,ue,me,Ce){var Ie=[],Fe=[];return Ie[0]=ue[0]-me[0],Ie[1]=ue[1]-me[1],Ie[2]=ue[2]-me[2],Fe[0]=Ie[0],Fe[1]=Ie[1]*Math.cos(Ce)-Ie[2]*Math.sin(Ce),Fe[2]=Ie[1]*Math.sin(Ce)+Ie[2]*Math.cos(Ce),ie[0]=Fe[0]+me[0],ie[1]=Fe[1]+me[1],ie[2]=Fe[2]+me[2],ie},ce.rotateY=function(ie,ue,me,Ce){var Ie=[],Fe=[];return Ie[0]=ue[0]-me[0],Ie[1]=ue[1]-me[1],Ie[2]=ue[2]-me[2],Fe[0]=Ie[2]*Math.sin(Ce)+Ie[0]*Math.cos(Ce),Fe[1]=Ie[1],Fe[2]=Ie[2]*Math.cos(Ce)-Ie[0]*Math.sin(Ce),ie[0]=Fe[0]+me[0],ie[1]=Fe[1]+me[1],ie[2]=Fe[2]+me[2],ie},ce.rotateZ=function(ie,ue,me,Ce){var Ie=[],Fe=[];return Ie[0]=ue[0]-me[0],Ie[1]=ue[1]-me[1],Ie[2]=ue[2]-me[2],Fe[0]=Ie[0]*Math.cos(Ce)-Ie[1]*Math.sin(Ce),Fe[1]=Ie[0]*Math.sin(Ce)+Ie[1]*Math.cos(Ce),Fe[2]=Ie[2],ie[0]=Fe[0]+me[0],ie[1]=Fe[1]+me[1],ie[2]=Fe[2]+me[2],ie},ce.forEach=function(){var ie=ce.create();return function(ue,me,Ce,Ie,Fe,Re){var Ue,Ge;for(me||(me=3),Ce||(Ce=0),Ie?Ge=Math.min(Ie*me+Ce,ue.length):Ge=ue.length,Ue=Ce;Ue<Ge;Ue+=me)ie[0]=ue[Ue],ie[1]=ue[Ue+1],ie[2]=ue[Ue+2],Fe(ie,ie,Re),ue[Ue]=ie[0],ue[Ue+1]=ie[1],ue[Ue+2]=ie[2];return ue}}(),ce.angle=function(ie,ue){var me=ce.fromValues(ie[0],ie[1],ie[2]),Ce=ce.fromValues(ue[0],ue[1],ue[2]);ce.normalize(me,me),ce.normalize(Ce,Ce);var Ie=ce.dot(me,Ce);return Ie>1?0:Math.acos(Ie)},ce.str=function(ie){return"vec3("+ie[0]+", "+ie[1]+", "+ie[2]+")"},typeof ve!="undefined"&&(ve.vec3=ce);var te={};te.create=function(){var ie=new Pe(4);return ie[0]=0,ie[1]=0,ie[2]=0,ie[3]=0,ie},te.clone=function(ie){var ue=new Pe(4);return ue[0]=ie[0],ue[1]=ie[1],ue[2]=ie[2],ue[3]=ie[3],ue},te.fromValues=function(ie,ue,me,Ce){var Ie=new Pe(4);return Ie[0]=ie,Ie[1]=ue,Ie[2]=me,Ie[3]=Ce,Ie},te.copy=function(ie,ue){return ie[0]=ue[0],ie[1]=ue[1],ie[2]=ue[2],ie[3]=ue[3],ie},te.set=function(ie,ue,me,Ce,Ie){return ie[0]=ue,ie[1]=me,ie[2]=Ce,ie[3]=Ie,ie},te.add=function(ie,ue,me){return ie[0]=ue[0]+me[0],ie[1]=ue[1]+me[1],ie[2]=ue[2]+me[2],ie[3]=ue[3]+me[3],ie},te.subtract=function(ie,ue,me){return ie[0]=ue[0]-me[0],ie[1]=ue[1]-me[1],ie[2]=ue[2]-me[2],ie[3]=ue[3]-me[3],ie},te.sub=te.subtract,te.multiply=function(ie,ue,me){return ie[0]=ue[0]*me[0],ie[1]=ue[1]*me[1],ie[2]=ue[2]*me[2],ie[3]=ue[3]*me[3],ie},te.mul=te.multiply,te.divide=function(ie,ue,me){return ie[0]=ue[0]/me[0],ie[1]=ue[1]/me[1],ie[2]=ue[2]/me[2],ie[3]=ue[3]/me[3],ie},te.div=te.divide,te.min=function(ie,ue,me){return ie[0]=Math.min(ue[0],me[0]),ie[1]=Math.min(ue[1],me[1]),ie[2]=Math.min(ue[2],me[2]),ie[3]=Math.min(ue[3],me[3]),ie},te.max=function(ie,ue,me){return ie[0]=Math.max(ue[0],me[0]),ie[1]=Math.max(ue[1],me[1]),ie[2]=Math.max(ue[2],me[2]),ie[3]=Math.max(ue[3],me[3]),ie},te.scale=function(ie,ue,me){return ie[0]=ue[0]*me,ie[1]=ue[1]*me,ie[2]=ue[2]*me,ie[3]=ue[3]*me,ie},te.scaleAndAdd=function(ie,ue,me,Ce){return ie[0]=ue[0]+me[0]*Ce,ie[1]=ue[1]+me[1]*Ce,ie[2]=ue[2]+me[2]*Ce,ie[3]=ue[3]+me[3]*Ce,ie},te.distance=function(ie,ue){var me=ue[0]-ie[0],Ce=ue[1]-ie[1],Ie=ue[2]-ie[2],Fe=ue[3]-ie[3];return Math.sqrt(me*me+Ce*Ce+Ie*Ie+Fe*Fe)},te.dist=te.distance,te.squaredDistance=function(ie,ue){var me=ue[0]-ie[0],Ce=ue[1]-ie[1],Ie=ue[2]-ie[2],Fe=ue[3]-ie[3];return me*me+Ce*Ce+Ie*Ie+Fe*Fe},te.sqrDist=te.squaredDistance,te.length=function(ie){var ue=ie[0],me=ie[1],Ce=ie[2],Ie=ie[3];return Math.sqrt(ue*ue+me*me+Ce*Ce+Ie*Ie)},te.len=te.length,te.squaredLength=function(ie){var ue=ie[0],me=ie[1],Ce=ie[2],Ie=ie[3];return ue*ue+me*me+Ce*Ce+Ie*Ie},te.sqrLen=te.squaredLength,te.negate=function(ie,ue){return ie[0]=-ue[0],ie[1]=-ue[1],ie[2]=-ue[2],ie[3]=-ue[3],ie},te.inverse=function(ie,ue){return ie[0]=1/ue[0],ie[1]=1/ue[1],ie[2]=1/ue[2],ie[3]=1/ue[3],ie},te.normalize=function(ie,ue){var me=ue[0],Ce=ue[1],Ie=ue[2],Fe=ue[3],Re=me*me+Ce*Ce+Ie*Ie+Fe*Fe;return Re>0&&(Re=1/Math.sqrt(Re),ie[0]=ue[0]*Re,ie[1]=ue[1]*Re,ie[2]=ue[2]*Re,ie[3]=ue[3]*Re),ie},te.dot=function(ie,ue){return ie[0]*ue[0]+ie[1]*ue[1]+ie[2]*ue[2]+ie[3]*ue[3]},te.lerp=function(ie,ue,me,Ce){var Ie=ue[0],Fe=ue[1],Re=ue[2],Ue=ue[3];return ie[0]=Ie+Ce*(me[0]-Ie),ie[1]=Fe+Ce*(me[1]-Fe),ie[2]=Re+Ce*(me[2]-Re),ie[3]=Ue+Ce*(me[3]-Ue),ie},te.random=function(ie,ue){return ue=ue||1,ie[0]=xe(),ie[1]=xe(),ie[2]=xe(),ie[3]=xe(),te.normalize(ie,ie),te.scale(ie,ie,ue),ie},te.transformMat4=function(ie,ue,me){var Ce=ue[0],Ie=ue[1],Fe=ue[2],Re=ue[3];return ie[0]=me[0]*Ce+me[4]*Ie+me[8]*Fe+me[12]*Re,ie[1]=me[1]*Ce+me[5]*Ie+me[9]*Fe+me[13]*Re,ie[2]=me[2]*Ce+me[6]*Ie+me[10]*Fe+me[14]*Re,ie[3]=me[3]*Ce+me[7]*Ie+me[11]*Fe+me[15]*Re,ie},te.transformQuat=function(ie,ue,me){var Ce=ue[0],Ie=ue[1],Fe=ue[2],Re=me[0],Ue=me[1],Ge=me[2],Je=me[3],Qe=Je*Ce+Ue*Fe-Ge*Ie,rt=Je*Ie+Ge*Ce-Re*Fe,$e=Je*Fe+Re*Ie-Ue*Ce,qe=-Re*Ce-Ue*Ie-Ge*Fe;return ie[0]=Qe*Je+qe*-Re+rt*-Ge-$e*-Ue,ie[1]=rt*Je+qe*-Ue+$e*-Re-Qe*-Ge,ie[2]=$e*Je+qe*-Ge+Qe*-Ue-rt*-Re,ie},te.forEach=function(){var ie=te.create();return function(ue,me,Ce,Ie,Fe,Re){var Ue,Ge;for(me||(me=4),Ce||(Ce=0),Ie?Ge=Math.min(Ie*me+Ce,ue.length):Ge=ue.length,Ue=Ce;Ue<Ge;Ue+=me)ie[0]=ue[Ue],ie[1]=ue[Ue+1],ie[2]=ue[Ue+2],ie[3]=ue[Ue+3],Fe(ie,ie,Re),ue[Ue]=ie[0],ue[Ue+1]=ie[1],ue[Ue+2]=ie[2],ue[Ue+3]=ie[3];return ue}}(),te.str=function(ie){return"vec4("+ie[0]+", "+ie[1]+", "+ie[2]+", "+ie[3]+")"},typeof ve!="undefined"&&(ve.vec4=te);var ne={};ne.create=function(){var ie=new Pe(4);return ie[0]=1,ie[1]=0,ie[2]=0,ie[3]=1,ie},ne.clone=function(ie){var ue=new Pe(4);return ue[0]=ie[0],ue[1]=ie[1],ue[2]=ie[2],ue[3]=ie[3],ue},ne.copy=function(ie,ue){return ie[0]=ue[0],ie[1]=ue[1],ie[2]=ue[2],ie[3]=ue[3],ie},ne.identity=function(ie){return ie[0]=1,ie[1]=0,ie[2]=0,ie[3]=1,ie},ne.transpose=function(ie,ue){if(ie===ue){var me=ue[1];ie[1]=ue[2],ie[2]=me}else ie[0]=ue[0],ie[1]=ue[2],ie[2]=ue[1],ie[3]=ue[3];return ie},ne.invert=function(ie,ue){var me=ue[0],Ce=ue[1],Ie=ue[2],Fe=ue[3],Re=me*Fe-Ie*Ce;return Re?(Re=1/Re,ie[0]=Fe*Re,ie[1]=-Ce*Re,ie[2]=-Ie*Re,ie[3]=me*Re,ie):null},ne.adjoint=function(ie,ue){var me=ue[0];return ie[0]=ue[3],ie[1]=-ue[1],ie[2]=-ue[2],ie[3]=me,ie},ne.determinant=function(ie){return ie[0]*ie[3]-ie[2]*ie[1]},ne.multiply=function(ie,ue,me){var Ce=ue[0],Ie=ue[1],Fe=ue[2],Re=ue[3],Ue=me[0],Ge=me[1],Je=me[2],Qe=me[3];return ie[0]=Ce*Ue+Fe*Ge,ie[1]=Ie*Ue+Re*Ge,ie[2]=Ce*Je+Fe*Qe,ie[3]=Ie*Je+Re*Qe,ie},ne.mul=ne.multiply,ne.rotate=function(ie,ue,me){var Ce=ue[0],Ie=ue[1],Fe=ue[2],Re=ue[3],Ue=Math.sin(me),Ge=Math.cos(me);return ie[0]=Ce*Ge+Fe*Ue,ie[1]=Ie*Ge+Re*Ue,ie[2]=Ce*-Ue+Fe*Ge,ie[3]=Ie*-Ue+Re*Ge,ie},ne.scale=function(ie,ue,me){var Ce=ue[0],Ie=ue[1],Fe=ue[2],Re=ue[3],Ue=me[0],Ge=me[1];return ie[0]=Ce*Ue,ie[1]=Ie*Ue,ie[2]=Fe*Ge,ie[3]=Re*Ge,ie},ne.str=function(ie){return"mat2("+ie[0]+", "+ie[1]+", "+ie[2]+", "+ie[3]+")"},ne.frob=function(ie){return Math.sqrt(Math.pow(ie[0],2)+Math.pow(ie[1],2)+Math.pow(ie[2],2)+Math.pow(ie[3],2))},ne.LDU=function(ie,ue,me,Ce){return ie[2]=Ce[2]/Ce[0],me[0]=Ce[0],me[1]=Ce[1],me[3]=Ce[3]-ie[2]*me[1],[ie,ue,me]},typeof ve!="undefined"&&(ve.mat2=ne);var le={};le.create=function(){var ie=new Pe(6);return ie[0]=1,ie[1]=0,ie[2]=0,ie[3]=1,ie[4]=0,ie[5]=0,ie},le.clone=function(ie){var ue=new Pe(6);return ue[0]=ie[0],ue[1]=ie[1],ue[2]=ie[2],ue[3]=ie[3],ue[4]=ie[4],ue[5]=ie[5],ue},le.copy=function(ie,ue){return ie[0]=ue[0],ie[1]=ue[1],ie[2]=ue[2],ie[3]=ue[3],ie[4]=ue[4],ie[5]=ue[5],ie},le.identity=function(ie){return ie[0]=1,ie[1]=0,ie[2]=0,ie[3]=1,ie[4]=0,ie[5]=0,ie},le.invert=function(ie,ue){var me=ue[0],Ce=ue[1],Ie=ue[2],Fe=ue[3],Re=ue[4],Ue=ue[5],Ge=me*Fe-Ce*Ie;return Ge?(Ge=1/Ge,ie[0]=Fe*Ge,ie[1]=-Ce*Ge,ie[2]=-Ie*Ge,ie[3]=me*Ge,ie[4]=(Ie*Ue-Fe*Re)*Ge,ie[5]=(Ce*Re-me*Ue)*Ge,ie):null},le.determinant=function(ie){return ie[0]*ie[3]-ie[1]*ie[2]},le.multiply=function(ie,ue,me){var Ce=ue[0],Ie=ue[1],Fe=ue[2],Re=ue[3],Ue=ue[4],Ge=ue[5],Je=me[0],Qe=me[1],rt=me[2],$e=me[3],qe=me[4],ot=me[5];return ie[0]=Ce*Je+Fe*Qe,ie[1]=Ie*Je+Re*Qe,ie[2]=Ce*rt+Fe*$e,ie[3]=Ie*rt+Re*$e,ie[4]=Ce*qe+Fe*ot+Ue,ie[5]=Ie*qe+Re*ot+Ge,ie},le.mul=le.multiply,le.rotate=function(ie,ue,me){var Ce=ue[0],Ie=ue[1],Fe=ue[2],Re=ue[3],Ue=ue[4],Ge=ue[5],Je=Math.sin(me),Qe=Math.cos(me);return ie[0]=Ce*Qe+Fe*Je,ie[1]=Ie*Qe+Re*Je,ie[2]=Ce*-Je+Fe*Qe,ie[3]=Ie*-Je+Re*Qe,ie[4]=Ue,ie[5]=Ge,ie},le.scale=function(ie,ue,me){var Ce=ue[0],Ie=ue[1],Fe=ue[2],Re=ue[3],Ue=ue[4],Ge=ue[5],Je=me[0],Qe=me[1];return ie[0]=Ce*Je,ie[1]=Ie*Je,ie[2]=Fe*Qe,ie[3]=Re*Qe,ie[4]=Ue,ie[5]=Ge,ie},le.translate=function(ie,ue,me){var Ce=ue[0],Ie=ue[1],Fe=ue[2],Re=ue[3],Ue=ue[4],Ge=ue[5],Je=me[0],Qe=me[1];return ie[0]=Ce,ie[1]=Ie,ie[2]=Fe,ie[3]=Re,ie[4]=Ce*Je+Fe*Qe+Ue,ie[5]=Ie*Je+Re*Qe+Ge,ie},le.str=function(ie){return"mat2d("+ie[0]+", "+ie[1]+", "+ie[2]+", "+ie[3]+", "+ie[4]+", "+ie[5]+")"},le.frob=function(ie){return Math.sqrt(Math.pow(ie[0],2)+Math.pow(ie[1],2)+Math.pow(ie[2],2)+Math.pow(ie[3],2)+Math.pow(ie[4],2)+Math.pow(ie[5],2)+1)},typeof ve!="undefined"&&(ve.mat2d=le);var se={};se.create=function(){var ie=new Pe(9);return ie[0]=1,ie[1]=0,ie[2]=0,ie[3]=0,ie[4]=1,ie[5]=0,ie[6]=0,ie[7]=0,ie[8]=1,ie},se.fromMat4=function(ie,ue){return ie[0]=ue[0],ie[1]=ue[1],ie[2]=ue[2],ie[3]=ue[4],ie[4]=ue[5],ie[5]=ue[6],ie[6]=ue[8],ie[7]=ue[9],ie[8]=ue[10],ie},se.clone=function(ie){var ue=new Pe(9);return ue[0]=ie[0],ue[1]=ie[1],ue[2]=ie[2],ue[3]=ie[3],ue[4]=ie[4],ue[5]=ie[5],ue[6]=ie[6],ue[7]=ie[7],ue[8]=ie[8],ue},se.copy=function(ie,ue){return ie[0]=ue[0],ie[1]=ue[1],ie[2]=ue[2],ie[3]=ue[3],ie[4]=ue[4],ie[5]=ue[5],ie[6]=ue[6],ie[7]=ue[7],ie[8]=ue[8],ie},se.identity=function(ie){return ie[0]=1,ie[1]=0,ie[2]=0,ie[3]=0,ie[4]=1,ie[5]=0,ie[6]=0,ie[7]=0,ie[8]=1,ie},se.transpose=function(ie,ue){if(ie===ue){var me=ue[1],Ce=ue[2],Ie=ue[5];ie[1]=ue[3],ie[2]=ue[6],ie[3]=me,ie[5]=ue[7],ie[6]=Ce,ie[7]=Ie}else ie[0]=ue[0],ie[1]=ue[3],ie[2]=ue[6],ie[3]=ue[1],ie[4]=ue[4],ie[5]=ue[7],ie[6]=ue[2],ie[7]=ue[5],ie[8]=ue[8];return ie},se.invert=function(ie,ue){var me=ue[0],Ce=ue[1],Ie=ue[2],Fe=ue[3],Re=ue[4],Ue=ue[5],Ge=ue[6],Je=ue[7],Qe=ue[8],rt=Qe*Re-Ue*Je,$e=-Qe*Fe+Ue*Ge,qe=Je*Fe-Re*Ge,ot=me*rt+Ce*$e+Ie*qe;return ot?(ot=1/ot,ie[0]=rt*ot,ie[1]=(-Qe*Ce+Ie*Je)*ot,ie[2]=(Ue*Ce-Ie*Re)*ot,ie[3]=$e*ot,ie[4]=(Qe*me-Ie*Ge)*ot,ie[5]=(-Ue*me+Ie*Fe)*ot,ie[6]=qe*ot,ie[7]=(-Je*me+Ce*Ge)*ot,ie[8]=(Re*me-Ce*Fe)*ot,ie):null},se.adjoint=function(ie,ue){var me=ue[0],Ce=ue[1],Ie=ue[2],Fe=ue[3],Re=ue[4],Ue=ue[5],Ge=ue[6],Je=ue[7],Qe=ue[8];return ie[0]=Re*Qe-Ue*Je,ie[1]=Ie*Je-Ce*Qe,ie[2]=Ce*Ue-Ie*Re,ie[3]=Ue*Ge-Fe*Qe,ie[4]=me*Qe-Ie*Ge,ie[5]=Ie*Fe-me*Ue,ie[6]=Fe*Je-Re*Ge,ie[7]=Ce*Ge-me*Je,ie[8]=me*Re-Ce*Fe,ie},se.determinant=function(ie){var ue=ie[0],me=ie[1],Ce=ie[2],Ie=ie[3],Fe=ie[4],Re=ie[5],Ue=ie[6],Ge=ie[7],Je=ie[8];return ue*(Je*Fe-Re*Ge)+me*(-Je*Ie+Re*Ue)+Ce*(Ge*Ie-Fe*Ue)},se.multiply=function(ie,ue,me){var Ce=ue[0],Ie=ue[1],Fe=ue[2],Re=ue[3],Ue=ue[4],Ge=ue[5],Je=ue[6],Qe=ue[7],rt=ue[8],$e=me[0],qe=me[1],ot=me[2],at=me[3],ut=me[4],nt=me[5],lt=me[6],yt=me[7],ft=me[8];return ie[0]=$e*Ce+qe*Re+ot*Je,ie[1]=$e*Ie+qe*Ue+ot*Qe,ie[2]=$e*Fe+qe*Ge+ot*rt,ie[3]=at*Ce+ut*Re+nt*Je,ie[4]=at*Ie+ut*Ue+nt*Qe,ie[5]=at*Fe+ut*Ge+nt*rt,ie[6]=lt*Ce+yt*Re+ft*Je,ie[7]=lt*Ie+yt*Ue+ft*Qe,ie[8]=lt*Fe+yt*Ge+ft*rt,ie},se.mul=se.multiply,se.translate=function(ie,ue,me){var Ce=ue[0],Ie=ue[1],Fe=ue[2],Re=ue[3],Ue=ue[4],Ge=ue[5],Je=ue[6],Qe=ue[7],rt=ue[8],$e=me[0],qe=me[1];return ie[0]=Ce,ie[1]=Ie,ie[2]=Fe,ie[3]=Re,ie[4]=Ue,ie[5]=Ge,ie[6]=$e*Ce+qe*Re+Je,ie[7]=$e*Ie+qe*Ue+Qe,ie[8]=$e*Fe+qe*Ge+rt,ie},se.rotate=function(ie,ue,me){var Ce=ue[0],Ie=ue[1],Fe=ue[2],Re=ue[3],Ue=ue[4],Ge=ue[5],Je=ue[6],Qe=ue[7],rt=ue[8],$e=Math.sin(me),qe=Math.cos(me);return ie[0]=qe*Ce+$e*Re,ie[1]=qe*Ie+$e*Ue,ie[2]=qe*Fe+$e*Ge,ie[3]=qe*Re-$e*Ce,ie[4]=qe*Ue-$e*Ie,ie[5]=qe*Ge-$e*Fe,ie[6]=Je,ie[7]=Qe,ie[8]=rt,ie},se.scale=function(ie,ue,me){var Ce=me[0],Ie=me[1];return ie[0]=Ce*ue[0],ie[1]=Ce*ue[1],ie[2]=Ce*ue[2],ie[3]=Ie*ue[3],ie[4]=Ie*ue[4],ie[5]=Ie*ue[5],ie[6]=ue[6],ie[7]=ue[7],ie[8]=ue[8],ie},se.fromMat2d=function(ie,ue){return ie[0]=ue[0],ie[1]=ue[1],ie[2]=0,ie[3]=ue[2],ie[4]=ue[3],ie[5]=0,ie[6]=ue[4],ie[7]=ue[5],ie[8]=1,ie},se.fromQuat=function(ie,ue){var me=ue[0],Ce=ue[1],Ie=ue[2],Fe=ue[3],Re=me+me,Ue=Ce+Ce,Ge=Ie+Ie,Je=me*Re,Qe=Ce*Re,rt=Ce*Ue,$e=Ie*Re,qe=Ie*Ue,ot=Ie*Ge,at=Fe*Re,ut=Fe*Ue,nt=Fe*Ge;return ie[0]=1-rt-ot,ie[3]=Qe-nt,ie[6]=$e+ut,ie[1]=Qe+nt,ie[4]=1-Je-ot,ie[7]=qe-at,ie[2]=$e-ut,ie[5]=qe+at,ie[8]=1-Je-rt,ie},se.normalFromMat4=function(ie,ue){var me=ue[0],Ce=ue[1],Ie=ue[2],Fe=ue[3],Re=ue[4],Ue=ue[5],Ge=ue[6],Je=ue[7],Qe=ue[8],rt=ue[9],$e=ue[10],qe=ue[11],ot=ue[12],at=ue[13],ut=ue[14],nt=ue[15],lt=me*Ue-Ce*Re,yt=me*Ge-Ie*Re,ft=me*Je-Fe*Re,ct=Ce*Ge-Ie*Ue,vt=Ce*Je-Fe*Ue,Ut=Ie*Je-Fe*Ge,Zt=Qe*at-rt*ot,en=Qe*ut-$e*ot,mn=Qe*nt-qe*ot,Bt=rt*ut-$e*at,tn=rt*nt-qe*at,on=$e*nt-qe*ut,Mn=lt*on-yt*tn+ft*Bt+ct*mn-vt*en+Ut*Zt;return Mn?(Mn=1/Mn,ie[0]=(Ue*on-Ge*tn+Je*Bt)*Mn,ie[1]=(Ge*mn-Re*on-Je*en)*Mn,ie[2]=(Re*tn-Ue*mn+Je*Zt)*Mn,ie[3]=(Ie*tn-Ce*on-Fe*Bt)*Mn,ie[4]=(me*on-Ie*mn+Fe*en)*Mn,ie[5]=(Ce*mn-me*tn-Fe*Zt)*Mn,ie[6]=(at*Ut-ut*vt+nt*ct)*Mn,ie[7]=(ut*ft-ot*Ut-nt*yt)*Mn,ie[8]=(ot*vt-at*ft+nt*lt)*Mn,ie):null},se.str=function(ie){return"mat3("+ie[0]+", "+ie[1]+", "+ie[2]+", "+ie[3]+", "+ie[4]+", "+ie[5]+", "+ie[6]+", "+ie[7]+", "+ie[8]+")"},se.frob=function(ie){return Math.sqrt(Math.pow(ie[0],2)+Math.pow(ie[1],2)+Math.pow(ie[2],2)+Math.pow(ie[3],2)+Math.pow(ie[4],2)+Math.pow(ie[5],2)+Math.pow(ie[6],2)+Math.pow(ie[7],2)+Math.pow(ie[8],2))},typeof ve!="undefined"&&(ve.mat3=se);var fe={};fe.create=function(){var ie=new Pe(16);return ie[0]=1,ie[1]=0,ie[2]=0,ie[3]=0,ie[4]=0,ie[5]=1,ie[6]=0,ie[7]=0,ie[8]=0,ie[9]=0,ie[10]=1,ie[11]=0,ie[12]=0,ie[13]=0,ie[14]=0,ie[15]=1,ie},fe.clone=function(ie){var ue=new Pe(16);return ue[0]=ie[0],ue[1]=ie[1],ue[2]=ie[2],ue[3]=ie[3],ue[4]=ie[4],ue[5]=ie[5],ue[6]=ie[6],ue[7]=ie[7],ue[8]=ie[8],ue[9]=ie[9],ue[10]=ie[10],ue[11]=ie[11],ue[12]=ie[12],ue[13]=ie[13],ue[14]=ie[14],ue[15]=ie[15],ue},fe.copy=function(ie,ue){return ie[0]=ue[0],ie[1]=ue[1],ie[2]=ue[2],ie[3]=ue[3],ie[4]=ue[4],ie[5]=ue[5],ie[6]=ue[6],ie[7]=ue[7],ie[8]=ue[8],ie[9]=ue[9],ie[10]=ue[10],ie[11]=ue[11],ie[12]=ue[12],ie[13]=ue[13],ie[14]=ue[14],ie[15]=ue[15],ie},fe.identity=function(ie){return ie[0]=1,ie[1]=0,ie[2]=0,ie[3]=0,ie[4]=0,ie[5]=1,ie[6]=0,ie[7]=0,ie[8]=0,ie[9]=0,ie[10]=1,ie[11]=0,ie[12]=0,ie[13]=0,ie[14]=0,ie[15]=1,ie},fe.transpose=function(ie,ue){if(ie===ue){var me=ue[1],Ce=ue[2],Ie=ue[3],Fe=ue[6],Re=ue[7],Ue=ue[11];ie[1]=ue[4],ie[2]=ue[8],ie[3]=ue[12],ie[4]=me,ie[6]=ue[9],ie[7]=ue[13],ie[8]=Ce,ie[9]=Fe,ie[11]=ue[14],ie[12]=Ie,ie[13]=Re,ie[14]=Ue}else ie[0]=ue[0],ie[1]=ue[4],ie[2]=ue[8],ie[3]=ue[12],ie[4]=ue[1],ie[5]=ue[5],ie[6]=ue[9],ie[7]=ue[13],ie[8]=ue[2],ie[9]=ue[6],ie[10]=ue[10],ie[11]=ue[14],ie[12]=ue[3],ie[13]=ue[7],ie[14]=ue[11],ie[15]=ue[15];return ie},fe.invert=function(ie,ue){var me=ue[0],Ce=ue[1],Ie=ue[2],Fe=ue[3],Re=ue[4],Ue=ue[5],Ge=ue[6],Je=ue[7],Qe=ue[8],rt=ue[9],$e=ue[10],qe=ue[11],ot=ue[12],at=ue[13],ut=ue[14],nt=ue[15],lt=me*Ue-Ce*Re,yt=me*Ge-Ie*Re,ft=me*Je-Fe*Re,ct=Ce*Ge-Ie*Ue,vt=Ce*Je-Fe*Ue,Ut=Ie*Je-Fe*Ge,Zt=Qe*at-rt*ot,en=Qe*ut-$e*ot,mn=Qe*nt-qe*ot,Bt=rt*ut-$e*at,tn=rt*nt-qe*at,on=$e*nt-qe*ut,Mn=lt*on-yt*tn+ft*Bt+ct*mn-vt*en+Ut*Zt;return Mn?(Mn=1/Mn,ie[0]=(Ue*on-Ge*tn+Je*Bt)*Mn,ie[1]=(Ie*tn-Ce*on-Fe*Bt)*Mn,ie[2]=(at*Ut-ut*vt+nt*ct)*Mn,ie[3]=($e*vt-rt*Ut-qe*ct)*Mn,ie[4]=(Ge*mn-Re*on-Je*en)*Mn,ie[5]=(me*on-Ie*mn+Fe*en)*Mn,ie[6]=(ut*ft-ot*Ut-nt*yt)*Mn,ie[7]=(Qe*Ut-$e*ft+qe*yt)*Mn,ie[8]=(Re*tn-Ue*mn+Je*Zt)*Mn,ie[9]=(Ce*mn-me*tn-Fe*Zt)*Mn,ie[10]=(ot*vt-at*ft+nt*lt)*Mn,ie[11]=(rt*ft-Qe*vt-qe*lt)*Mn,ie[12]=(Ue*en-Re*Bt-Ge*Zt)*Mn,ie[13]=(me*Bt-Ce*en+Ie*Zt)*Mn,ie[14]=(at*yt-ot*ct-ut*lt)*Mn,ie[15]=(Qe*ct-rt*yt+$e*lt)*Mn,ie):null},fe.adjoint=function(ie,ue){var me=ue[0],Ce=ue[1],Ie=ue[2],Fe=ue[3],Re=ue[4],Ue=ue[5],Ge=ue[6],Je=ue[7],Qe=ue[8],rt=ue[9],$e=ue[10],qe=ue[11],ot=ue[12],at=ue[13],ut=ue[14],nt=ue[15];return ie[0]=Ue*($e*nt-qe*ut)-rt*(Ge*nt-Je*ut)+at*(Ge*qe-Je*$e),ie[1]=-(Ce*($e*nt-qe*ut)-rt*(Ie*nt-Fe*ut)+at*(Ie*qe-Fe*$e)),ie[2]=Ce*(Ge*nt-Je*ut)-Ue*(Ie*nt-Fe*ut)+at*(Ie*Je-Fe*Ge),ie[3]=-(Ce*(Ge*qe-Je*$e)-Ue*(Ie*qe-Fe*$e)+rt*(Ie*Je-Fe*Ge)),ie[4]=-(Re*($e*nt-qe*ut)-Qe*(Ge*nt-Je*ut)+ot*(Ge*qe-Je*$e)),ie[5]=me*($e*nt-qe*ut)-Qe*(Ie*nt-Fe*ut)+ot*(Ie*qe-Fe*$e),ie[6]=-(me*(Ge*nt-Je*ut)-Re*(Ie*nt-Fe*ut)+ot*(Ie*Je-Fe*Ge)),ie[7]=me*(Ge*qe-Je*$e)-Re*(Ie*qe-Fe*$e)+Qe*(Ie*Je-Fe*Ge),ie[8]=Re*(rt*nt-qe*at)-Qe*(Ue*nt-Je*at)+ot*(Ue*qe-Je*rt),ie[9]=-(me*(rt*nt-qe*at)-Qe*(Ce*nt-Fe*at)+ot*(Ce*qe-Fe*rt)),ie[10]=me*(Ue*nt-Je*at)-Re*(Ce*nt-Fe*at)+ot*(Ce*Je-Fe*Ue),ie[11]=-(me*(Ue*qe-Je*rt)-Re*(Ce*qe-Fe*rt)+Qe*(Ce*Je-Fe*Ue)),ie[12]=-(Re*(rt*ut-$e*at)-Qe*(Ue*ut-Ge*at)+ot*(Ue*$e-Ge*rt)),ie[13]=me*(rt*ut-$e*at)-Qe*(Ce*ut-Ie*at)+ot*(Ce*$e-Ie*rt),ie[14]=-(me*(Ue*ut-Ge*at)-Re*(Ce*ut-Ie*at)+ot*(Ce*Ge-Ie*Ue)),ie[15]=me*(Ue*$e-Ge*rt)-Re*(Ce*$e-Ie*rt)+Qe*(Ce*Ge-Ie*Ue),ie},fe.determinant=function(ie){var ue=ie[0],me=ie[1],Ce=ie[2],Ie=ie[3],Fe=ie[4],Re=ie[5],Ue=ie[6],Ge=ie[7],Je=ie[8],Qe=ie[9],rt=ie[10],$e=ie[11],qe=ie[12],ot=ie[13],at=ie[14],ut=ie[15],nt=ue*Re-me*Fe,lt=ue*Ue-Ce*Fe,yt=ue*Ge-Ie*Fe,ft=me*Ue-Ce*Re,ct=me*Ge-Ie*Re,vt=Ce*Ge-Ie*Ue,Ut=Je*ot-Qe*qe,Zt=Je*at-rt*qe,en=Je*ut-$e*qe,mn=Qe*at-rt*ot,Bt=Qe*ut-$e*ot,tn=rt*ut-$e*at;return nt*tn-lt*Bt+yt*mn+ft*en-ct*Zt+vt*Ut},fe.multiply=function(ie,ue,me){var Ce=ue[0],Ie=ue[1],Fe=ue[2],Re=ue[3],Ue=ue[4],Ge=ue[5],Je=ue[6],Qe=ue[7],rt=ue[8],$e=ue[9],qe=ue[10],ot=ue[11],at=ue[12],ut=ue[13],nt=ue[14],lt=ue[15],yt=me[0],ft=me[1],ct=me[2],vt=me[3];return ie[0]=yt*Ce+ft*Ue+ct*rt+vt*at,ie[1]=yt*Ie+ft*Ge+ct*$e+vt*ut,ie[2]=yt*Fe+ft*Je+ct*qe+vt*nt,ie[3]=yt*Re+ft*Qe+ct*ot+vt*lt,yt=me[4],ft=me[5],ct=me[6],vt=me[7],ie[4]=yt*Ce+ft*Ue+ct*rt+vt*at,ie[5]=yt*Ie+ft*Ge+ct*$e+vt*ut,ie[6]=yt*Fe+ft*Je+ct*qe+vt*nt,ie[7]=yt*Re+ft*Qe+ct*ot+vt*lt,yt=me[8],ft=me[9],ct=me[10],vt=me[11],ie[8]=yt*Ce+ft*Ue+ct*rt+vt*at,ie[9]=yt*Ie+ft*Ge+ct*$e+vt*ut,ie[10]=yt*Fe+ft*Je+ct*qe+vt*nt,ie[11]=yt*Re+ft*Qe+ct*ot+vt*lt,yt=me[12],ft=me[13],ct=me[14],vt=me[15],ie[12]=yt*Ce+ft*Ue+ct*rt+vt*at,ie[13]=yt*Ie+ft*Ge+ct*$e+vt*ut,ie[14]=yt*Fe+ft*Je+ct*qe+vt*nt,ie[15]=yt*Re+ft*Qe+ct*ot+vt*lt,ie},fe.multiplyAffine=function(ie,ue,me){var Ce=ue[0],Ie=ue[1],Fe=ue[2],Re=ue[4],Ue=ue[5],Ge=ue[6],Je=ue[8],Qe=ue[9],rt=ue[10],$e=ue[12],qe=ue[13],ot=ue[14],at=me[0],ut=me[1],nt=me[2];return ie[0]=at*Ce+ut*Re+nt*Je,ie[1]=at*Ie+ut*Ue+nt*Qe,ie[2]=at*Fe+ut*Ge+nt*rt,at=me[4],ut=me[5],nt=me[6],ie[4]=at*Ce+ut*Re+nt*Je,ie[5]=at*Ie+ut*Ue+nt*Qe,ie[6]=at*Fe+ut*Ge+nt*rt,at=me[8],ut=me[9],nt=me[10],ie[8]=at*Ce+ut*Re+nt*Je,ie[9]=at*Ie+ut*Ue+nt*Qe,ie[10]=at*Fe+ut*Ge+nt*rt,at=me[12],ut=me[13],nt=me[14],ie[12]=at*Ce+ut*Re+nt*Je+$e,ie[13]=at*Ie+ut*Ue+nt*Qe+qe,ie[14]=at*Fe+ut*Ge+nt*rt+ot,ie},fe.mul=fe.multiply,fe.mulAffine=fe.multiplyAffine,fe.translate=function(ie,ue,me){var Ce=me[0],Ie=me[1],Fe=me[2],Re,Ue,Ge,Je,Qe,rt,$e,qe,ot,at,ut,nt;return ue===ie?(ie[12]=ue[0]*Ce+ue[4]*Ie+ue[8]*Fe+ue[12],ie[13]=ue[1]*Ce+ue[5]*Ie+ue[9]*Fe+ue[13],ie[14]=ue[2]*Ce+ue[6]*Ie+ue[10]*Fe+ue[14],ie[15]=ue[3]*Ce+ue[7]*Ie+ue[11]*Fe+ue[15]):(Re=ue[0],Ue=ue[1],Ge=ue[2],Je=ue[3],Qe=ue[4],rt=ue[5],$e=ue[6],qe=ue[7],ot=ue[8],at=ue[9],ut=ue[10],nt=ue[11],ie[0]=Re,ie[1]=Ue,ie[2]=Ge,ie[3]=Je,ie[4]=Qe,ie[5]=rt,ie[6]=$e,ie[7]=qe,ie[8]=ot,ie[9]=at,ie[10]=ut,ie[11]=nt,ie[12]=Re*Ce+Qe*Ie+ot*Fe+ue[12],ie[13]=Ue*Ce+rt*Ie+at*Fe+ue[13],ie[14]=Ge*Ce+$e*Ie+ut*Fe+ue[14],ie[15]=Je*Ce+qe*Ie+nt*Fe+ue[15]),ie},fe.scale=function(ie,ue,me){var Ce=me[0],Ie=me[1],Fe=me[2];return ie[0]=ue[0]*Ce,ie[1]=ue[1]*Ce,ie[2]=ue[2]*Ce,ie[3]=ue[3]*Ce,ie[4]=ue[4]*Ie,ie[5]=ue[5]*Ie,ie[6]=ue[6]*Ie,ie[7]=ue[7]*Ie,ie[8]=ue[8]*Fe,ie[9]=ue[9]*Fe,ie[10]=ue[10]*Fe,ie[11]=ue[11]*Fe,ie[12]=ue[12],ie[13]=ue[13],ie[14]=ue[14],ie[15]=ue[15],ie},fe.rotate=function(ie,ue,me,Ce){var Ie=Ce[0],Fe=Ce[1],Re=Ce[2],Ue=Math.sqrt(Ie*Ie+Fe*Fe+Re*Re),Ge,Je,Qe,rt,$e,qe,ot,at,ut,nt,lt,yt,ft,ct,vt,Ut,Zt,en,mn,Bt,tn,on,Mn,Dn;return Math.abs(Ue)<Ee?null:(Ue=1/Ue,Ie*=Ue,Fe*=Ue,Re*=Ue,Ge=Math.sin(me),Je=Math.cos(me),Qe=1-Je,rt=ue[0],$e=ue[1],qe=ue[2],ot=ue[3],at=ue[4],ut=ue[5],nt=ue[6],lt=ue[7],yt=ue[8],ft=ue[9],ct=ue[10],vt=ue[11],Ut=Ie*Ie*Qe+Je,Zt=Fe*Ie*Qe+Re*Ge,en=Re*Ie*Qe-Fe*Ge,mn=Ie*Fe*Qe-Re*Ge,Bt=Fe*Fe*Qe+Je,tn=Re*Fe*Qe+Ie*Ge,on=Ie*Re*Qe+Fe*Ge,Mn=Fe*Re*Qe-Ie*Ge,Dn=Re*Re*Qe+Je,ie[0]=rt*Ut+at*Zt+yt*en,ie[1]=$e*Ut+ut*Zt+ft*en,ie[2]=qe*Ut+nt*Zt+ct*en,ie[3]=ot*Ut+lt*Zt+vt*en,ie[4]=rt*mn+at*Bt+yt*tn,ie[5]=$e*mn+ut*Bt+ft*tn,ie[6]=qe*mn+nt*Bt+ct*tn,ie[7]=ot*mn+lt*Bt+vt*tn,ie[8]=rt*on+at*Mn+yt*Dn,ie[9]=$e*on+ut*Mn+ft*Dn,ie[10]=qe*on+nt*Mn+ct*Dn,ie[11]=ot*on+lt*Mn+vt*Dn,ue!==ie&&(ie[12]=ue[12],ie[13]=ue[13],ie[14]=ue[14],ie[15]=ue[15]),ie)},fe.rotateX=function(ie,ue,me){var Ce=Math.sin(me),Ie=Math.cos(me),Fe=ue[4],Re=ue[5],Ue=ue[6],Ge=ue[7],Je=ue[8],Qe=ue[9],rt=ue[10],$e=ue[11];return ue!==ie&&(ie[0]=ue[0],ie[1]=ue[1],ie[2]=ue[2],ie[3]=ue[3],ie[12]=ue[12],ie[13]=ue[13],ie[14]=ue[14],ie[15]=ue[15]),ie[4]=Fe*Ie+Je*Ce,ie[5]=Re*Ie+Qe*Ce,ie[6]=Ue*Ie+rt*Ce,ie[7]=Ge*Ie+$e*Ce,ie[8]=Je*Ie-Fe*Ce,ie[9]=Qe*Ie-Re*Ce,ie[10]=rt*Ie-Ue*Ce,ie[11]=$e*Ie-Ge*Ce,ie},fe.rotateY=function(ie,ue,me){var Ce=Math.sin(me),Ie=Math.cos(me),Fe=ue[0],Re=ue[1],Ue=ue[2],Ge=ue[3],Je=ue[8],Qe=ue[9],rt=ue[10],$e=ue[11];return ue!==ie&&(ie[4]=ue[4],ie[5]=ue[5],ie[6]=ue[6],ie[7]=ue[7],ie[12]=ue[12],ie[13]=ue[13],ie[14]=ue[14],ie[15]=ue[15]),ie[0]=Fe*Ie-Je*Ce,ie[1]=Re*Ie-Qe*Ce,ie[2]=Ue*Ie-rt*Ce,ie[3]=Ge*Ie-$e*Ce,ie[8]=Fe*Ce+Je*Ie,ie[9]=Re*Ce+Qe*Ie,ie[10]=Ue*Ce+rt*Ie,ie[11]=Ge*Ce+$e*Ie,ie},fe.rotateZ=function(ie,ue,me){var Ce=Math.sin(me),Ie=Math.cos(me),Fe=ue[0],Re=ue[1],Ue=ue[2],Ge=ue[3],Je=ue[4],Qe=ue[5],rt=ue[6],$e=ue[7];return ue!==ie&&(ie[8]=ue[8],ie[9]=ue[9],ie[10]=ue[10],ie[11]=ue[11],ie[12]=ue[12],ie[13]=ue[13],ie[14]=ue[14],ie[15]=ue[15]),ie[0]=Fe*Ie+Je*Ce,ie[1]=Re*Ie+Qe*Ce,ie[2]=Ue*Ie+rt*Ce,ie[3]=Ge*Ie+$e*Ce,ie[4]=Je*Ie-Fe*Ce,ie[5]=Qe*Ie-Re*Ce,ie[6]=rt*Ie-Ue*Ce,ie[7]=$e*Ie-Ge*Ce,ie},fe.fromRotationTranslation=function(ie,ue,me){var Ce=ue[0],Ie=ue[1],Fe=ue[2],Re=ue[3],Ue=Ce+Ce,Ge=Ie+Ie,Je=Fe+Fe,Qe=Ce*Ue,rt=Ce*Ge,$e=Ce*Je,qe=Ie*Ge,ot=Ie*Je,at=Fe*Je,ut=Re*Ue,nt=Re*Ge,lt=Re*Je;return ie[0]=1-(qe+at),ie[1]=rt+lt,ie[2]=$e-nt,ie[3]=0,ie[4]=rt-lt,ie[5]=1-(Qe+at),ie[6]=ot+ut,ie[7]=0,ie[8]=$e+nt,ie[9]=ot-ut,ie[10]=1-(Qe+qe),ie[11]=0,ie[12]=me[0],ie[13]=me[1],ie[14]=me[2],ie[15]=1,ie},fe.fromQuat=function(ie,ue){var me=ue[0],Ce=ue[1],Ie=ue[2],Fe=ue[3],Re=me+me,Ue=Ce+Ce,Ge=Ie+Ie,Je=me*Re,Qe=Ce*Re,rt=Ce*Ue,$e=Ie*Re,qe=Ie*Ue,ot=Ie*Ge,at=Fe*Re,ut=Fe*Ue,nt=Fe*Ge;return ie[0]=1-rt-ot,ie[1]=Qe+nt,ie[2]=$e-ut,ie[3]=0,ie[4]=Qe-nt,ie[5]=1-Je-ot,ie[6]=qe+at,ie[7]=0,ie[8]=$e+ut,ie[9]=qe-at,ie[10]=1-Je-rt,ie[11]=0,ie[12]=0,ie[13]=0,ie[14]=0,ie[15]=1,ie},fe.frustum=function(ie,ue,me,Ce,Ie,Fe,Re){var Ue=1/(me-ue),Ge=1/(Ie-Ce),Je=1/(Fe-Re);return ie[0]=Fe*2*Ue,ie[1]=0,ie[2]=0,ie[3]=0,ie[4]=0,ie[5]=Fe*2*Ge,ie[6]=0,ie[7]=0,ie[8]=(me+ue)*Ue,ie[9]=(Ie+Ce)*Ge,ie[10]=(Re+Fe)*Je,ie[11]=-1,ie[12]=0,ie[13]=0,ie[14]=Re*Fe*2*Je,ie[15]=0,ie},fe.perspective=function(ie,ue,me,Ce,Ie){var Fe=1/Math.tan(ue/2),Re=1/(Ce-Ie);return ie[0]=Fe/me,ie[1]=0,ie[2]=0,ie[3]=0,ie[4]=0,ie[5]=Fe,ie[6]=0,ie[7]=0,ie[8]=0,ie[9]=0,ie[10]=(Ie+Ce)*Re,ie[11]=-1,ie[12]=0,ie[13]=0,ie[14]=2*Ie*Ce*Re,ie[15]=0,ie},fe.ortho=function(ie,ue,me,Ce,Ie,Fe,Re){var Ue=1/(ue-me),Ge=1/(Ce-Ie),Je=1/(Fe-Re);return ie[0]=-2*Ue,ie[1]=0,ie[2]=0,ie[3]=0,ie[4]=0,ie[5]=-2*Ge,ie[6]=0,ie[7]=0,ie[8]=0,ie[9]=0,ie[10]=2*Je,ie[11]=0,ie[12]=(ue+me)*Ue,ie[13]=(Ie+Ce)*Ge,ie[14]=(Re+Fe)*Je,ie[15]=1,ie},fe.lookAt=function(ie,ue,me,Ce){var Ie,Fe,Re,Ue,Ge,Je,Qe,rt,$e,qe,ot=ue[0],at=ue[1],ut=ue[2],nt=Ce[0],lt=Ce[1],yt=Ce[2],ft=me[0],ct=me[1],vt=me[2];return Math.abs(ot-ft)<Ee&&Math.abs(at-ct)<Ee&&Math.abs(ut-vt)<Ee?fe.identity(ie):(Qe=ot-ft,rt=at-ct,$e=ut-vt,qe=1/Math.sqrt(Qe*Qe+rt*rt+$e*$e),Qe*=qe,rt*=qe,$e*=qe,Ie=lt*$e-yt*rt,Fe=yt*Qe-nt*$e,Re=nt*rt-lt*Qe,qe=Math.sqrt(Ie*Ie+Fe*Fe+Re*Re),qe?(qe=1/qe,Ie*=qe,Fe*=qe,Re*=qe):(Ie=0,Fe=0,Re=0),Ue=rt*Re-$e*Fe,Ge=$e*Ie-Qe*Re,Je=Qe*Fe-rt*Ie,qe=Math.sqrt(Ue*Ue+Ge*Ge+Je*Je),qe?(qe=1/qe,Ue*=qe,Ge*=qe,Je*=qe):(Ue=0,Ge=0,Je=0),ie[0]=Ie,ie[1]=Ue,ie[2]=Qe,ie[3]=0,ie[4]=Fe,ie[5]=Ge,ie[6]=rt,ie[7]=0,ie[8]=Re,ie[9]=Je,ie[10]=$e,ie[11]=0,ie[12]=-(Ie*ot+Fe*at+Re*ut),ie[13]=-(Ue*ot+Ge*at+Je*ut),ie[14]=-(Qe*ot+rt*at+$e*ut),ie[15]=1,ie)},fe.str=function(ie){return"mat4("+ie[0]+", "+ie[1]+", "+ie[2]+", "+ie[3]+", "+ie[4]+", "+ie[5]+", "+ie[6]+", "+ie[7]+", "+ie[8]+", "+ie[9]+", "+ie[10]+", "+ie[11]+", "+ie[12]+", "+ie[13]+", "+ie[14]+", "+ie[15]+")"},fe.frob=function(ie){return Math.sqrt(Math.pow(ie[0],2)+Math.pow(ie[1],2)+Math.pow(ie[2],2)+Math.pow(ie[3],2)+Math.pow(ie[4],2)+Math.pow(ie[5],2)+Math.pow(ie[6],2)+Math.pow(ie[7],2)+Math.pow(ie[8],2)+Math.pow(ie[9],2)+Math.pow(ie[10],2)+Math.pow(ie[11],2)+Math.pow(ie[12],2)+Math.pow(ie[13],2)+Math.pow(ie[14],2)+Math.pow(ie[15],2))},typeof ve!="undefined"&&(ve.mat4=fe);var he={};he.create=function(){var ie=new Pe(4);return ie[0]=0,ie[1]=0,ie[2]=0,ie[3]=1,ie},he.rotationTo=function(){var ie=ce.create(),ue=ce.fromValues(1,0,0),me=ce.fromValues(0,1,0);return function(Ce,Ie,Fe){var Re=ce.dot(Ie,Fe);return Re<-.999999?(ce.cross(ie,ue,Ie),ce.length(ie)<1e-6&&ce.cross(ie,me,Ie),ce.normalize(ie,ie),he.setAxisAngle(Ce,ie,Math.PI),Ce):Re>.999999?(Ce[0]=0,Ce[1]=0,Ce[2]=0,Ce[3]=1,Ce):(ce.cross(ie,Ie,Fe),Ce[0]=ie[0],Ce[1]=ie[1],Ce[2]=ie[2],Ce[3]=1+Re,he.normalize(Ce,Ce))}}(),he.setAxes=function(){var ie=se.create();return function(ue,me,Ce,Ie){return ie[0]=Ce[0],ie[3]=Ce[1],ie[6]=Ce[2],ie[1]=Ie[0],ie[4]=Ie[1],ie[7]=Ie[2],ie[2]=-me[0],ie[5]=-me[1],ie[8]=-me[2],he.normalize(ue,he.fromMat3(ue,ie))}}(),he.clone=te.clone,he.fromValues=te.fromValues,he.copy=te.copy,he.set=te.set,he.identity=function(ie){return ie[0]=0,ie[1]=0,ie[2]=0,ie[3]=1,ie},he.setAxisAngle=function(ie,ue,me){me=me*.5;var Ce=Math.sin(me);return ie[0]=Ce*ue[0],ie[1]=Ce*ue[1],ie[2]=Ce*ue[2],ie[3]=Math.cos(me),ie},he.add=te.add,he.multiply=function(ie,ue,me){var Ce=ue[0],Ie=ue[1],Fe=ue[2],Re=ue[3],Ue=me[0],Ge=me[1],Je=me[2],Qe=me[3];return ie[0]=Ce*Qe+Re*Ue+Ie*Je-Fe*Ge,ie[1]=Ie*Qe+Re*Ge+Fe*Ue-Ce*Je,ie[2]=Fe*Qe+Re*Je+Ce*Ge-Ie*Ue,ie[3]=Re*Qe-Ce*Ue-Ie*Ge-Fe*Je,ie},he.mul=he.multiply,he.scale=te.scale,he.rotateX=function(ie,ue,me){me*=.5;var Ce=ue[0],Ie=ue[1],Fe=ue[2],Re=ue[3],Ue=Math.sin(me),Ge=Math.cos(me);return ie[0]=Ce*Ge+Re*Ue,ie[1]=Ie*Ge+Fe*Ue,ie[2]=Fe*Ge-Ie*Ue,ie[3]=Re*Ge-Ce*Ue,ie},he.rotateY=function(ie,ue,me){me*=.5;var Ce=ue[0],Ie=ue[1],Fe=ue[2],Re=ue[3],Ue=Math.sin(me),Ge=Math.cos(me);return ie[0]=Ce*Ge-Fe*Ue,ie[1]=Ie*Ge+Re*Ue,ie[2]=Fe*Ge+Ce*Ue,ie[3]=Re*Ge-Ie*Ue,ie},he.rotateZ=function(ie,ue,me){me*=.5;var Ce=ue[0],Ie=ue[1],Fe=ue[2],Re=ue[3],Ue=Math.sin(me),Ge=Math.cos(me);return ie[0]=Ce*Ge+Ie*Ue,ie[1]=Ie*Ge-Ce*Ue,ie[2]=Fe*Ge+Re*Ue,ie[3]=Re*Ge-Fe*Ue,ie},he.calculateW=function(ie,ue){var me=ue[0],Ce=ue[1],Ie=ue[2];return ie[0]=me,ie[1]=Ce,ie[2]=Ie,ie[3]=Math.sqrt(Math.abs(1-me*me-Ce*Ce-Ie*Ie)),ie},he.dot=te.dot,he.lerp=te.lerp,he.slerp=function(ie,ue,me,Ce){var Ie=ue[0],Fe=ue[1],Re=ue[2],Ue=ue[3],Ge=me[0],Je=me[1],Qe=me[2],rt=me[3],$e,qe,ot,at,ut;return qe=Ie*Ge+Fe*Je+Re*Qe+Ue*rt,qe<0&&(qe=-qe,Ge=-Ge,Je=-Je,Qe=-Qe,rt=-rt),1-qe>1e-6?($e=Math.acos(qe),ot=Math.sin($e),at=Math.sin((1-Ce)*$e)/ot,ut=Math.sin(Ce*$e)/ot):(at=1-Ce,ut=Ce),ie[0]=at*Ie+ut*Ge,ie[1]=at*Fe+ut*Je,ie[2]=at*Re+ut*Qe,ie[3]=at*Ue+ut*rt,ie},he.invert=function(ie,ue){var me=ue[0],Ce=ue[1],Ie=ue[2],Fe=ue[3],Re=me*me+Ce*Ce+Ie*Ie+Fe*Fe,Ue=Re?1/Re:0;return ie[0]=-me*Ue,ie[1]=-Ce*Ue,ie[2]=-Ie*Ue,ie[3]=Fe*Ue,ie},he.conjugate=function(ie,ue){return ie[0]=-ue[0],ie[1]=-ue[1],ie[2]=-ue[2],ie[3]=ue[3],ie},he.length=te.length,he.len=he.length,he.squaredLength=te.squaredLength,he.sqrLen=he.squaredLength,he.normalize=te.normalize,he.fromMat3=function(ie,ue){var me=ue[0]+ue[4]+ue[8],Ce;if(me>0)Ce=Math.sqrt(me+1),ie[3]=.5*Ce,Ce=.5/Ce,ie[0]=(ue[5]-ue[7])*Ce,ie[1]=(ue[6]-ue[2])*Ce,ie[2]=(ue[1]-ue[3])*Ce;else{var Ie=0;ue[4]>ue[0]&&(Ie=1),ue[8]>ue[Ie*3+Ie]&&(Ie=2);var Fe=(Ie+1)%3,Re=(Ie+2)%3;Ce=Math.sqrt(ue[Ie*3+Ie]-ue[Fe*3+Fe]-ue[Re*3+Re]+1),ie[Ie]=.5*Ce,Ce=.5/Ce,ie[3]=(ue[Fe*3+Re]-ue[Re*3+Fe])*Ce,ie[Fe]=(ue[Fe*3+Ie]+ue[Ie*3+Fe])*Ce,ie[Re]=(ue[Re*3+Ie]+ue[Ie*3+Re])*Ce}return ie},he.str=function(ie){return"quat("+ie[0]+", "+ie[1]+", "+ie[2]+", "+ie[3]+")"},typeof ve!="undefined"&&(ve.quat=he)}(Me.exports)})(this)},function(He,Ne,be){"use strict";var _e=be(24),Me=be(46),ve=be(5),Ee=be(6),Pe=be(7),xe=be(17),pe=be(28),Ae=be(13),Se=be(0),ce=be.n(Se),te=be(29),ne=be(53),le=be.n(ne),se=be(54),fe=be(106),he=be(107),ie=be(113),ue=be(114),me=be(3),Ce=be(68),Ie=be(37),Fe=be(69),Re=be(116),Ue=be(70),Ge=be(71),Je=be(72),Qe=be(36),rt=be(30),$e=be(23),qe=be(4),ot=be(117),at=be(50),ut=be(118),nt=be(119),lt=be(120),yt=be(9),ft=be(67),ct=be(49),vt=be(15),Ut=be(52),Zt=be(121),en=be(126),mn=be(63),Bt=be(127),tn=be(128),on=be(129),Mn=be(130),Dn=be(131),sn=be(132);ce.a.util.extend(pe.a.prototype,Zt.a),Pe.a.import(en.a),Pe.a.import(mn.a),Pe.a.import(Bt.a),Pe.a.import(tn.a),Pe.a.import(on.a),Pe.a.import(Mn.a),Pe.a.import(Dn.a),Pe.a.import(sn.a);function rn(Mt){return!Mt||Mt==="none"}function Ht(Mt){return Mt instanceof HTMLCanvasElement||Mt instanceof HTMLImageElement||Mt instanceof Image}function Tt(Mt){return Mt.getZr&&Mt.setOption}var St=te.a.prototype.addToScene,Qt=te.a.prototype.removeFromScene;te.a.prototype.addToScene=function(Mt){if(St.call(this,Mt),this.__zr){var ln=this.__zr;Mt.traverse(function(zn){zn.__zr=ln,zn.addAnimatorsToZr&&zn.addAnimatorsToZr(ln)})}},te.a.prototype.removeFromScene=function(Mt){Qt.call(this,Mt),Mt.traverse(function(ln){var zn=ln.__zr;ln.__zr=null,zn&&ln.removeAnimatorsFromZr&&ln.removeAnimatorsFromZr(zn)})},xe.a.prototype.setTextureImage=function(Mt,ln,zn,Gn){if(this.shader){var Hn=zn.getZr(),nr=this,Xn;return nr.autoUpdateTextureStatus=!1,nr.disableTexture(Mt),rn(ln)||(Xn=gt.loadTexture(ln,zn,Gn,function(qt){nr.enableTexture(Mt),Hn&&Hn.refresh()}),nr.set(Mt,Xn)),Xn}};var gt={};gt.Renderer=Me.a,gt.Node=pe.a,gt.Mesh=_e.a,gt.Shader=Pe.a,gt.Material=xe.a,gt.Texture=Ee.a,gt.Texture2D=ve.a,gt.Geometry=Ae.a,gt.SphereGeometry=Ce.a,gt.PlaneGeometry=Ie.a,gt.CubeGeometry=Fe.a,gt.AmbientLight=Re.a,gt.DirectionalLight=Ue.a,gt.PointLight=Ge.a,gt.SpotLight=Je.a,gt.PerspectiveCamera=Qe.a,gt.OrthographicCamera=rt.a,gt.Vector2=$e.a,gt.Vector3=qe.a,gt.Vector4=ot.a,gt.Quaternion=at.a,gt.Matrix2=ut.a,gt.Matrix2d=nt.a,gt.Matrix3=lt.a,gt.Matrix4=yt.a,gt.Plane=ft.a,gt.Ray=ct.a,gt.BoundingBox=vt.a,gt.Frustum=Ut.a;var bt=se.a.createBlank("rgba(255,255,255,0)").image;function Yt(Mt){return Math.pow(2,Math.round(Math.log(Mt)/Math.LN2))}function kt(Mt){if((Mt.wrapS===Ee.a.REPEAT||Mt.wrapT===Ee.a.REPEAT)&&Mt.image){var ln=Yt(Mt.width),zn=Yt(Mt.height);if(ln!==Mt.width||zn!==Mt.height){var Gn=document.createElement("canvas");Gn.width=ln,Gn.height=zn;var Hn=Gn.getContext("2d");Hn.drawImage(Mt.image,0,0,ln,zn),Mt.image=Gn}}}gt.loadTexture=function(Mt,ln,zn,Gn){typeof zn=="function"&&(Gn=zn,zn={}),zn=zn||{};for(var Hn=Object.keys(zn).sort(),nr="",Xn=0;Xn<Hn.length;Xn++)nr+=Hn[Xn]+"_"+zn[Hn[Xn]]+"_";var qt=ln.__textureCache=ln.__textureCache||new le.a(20);if(Tt(Mt)){var vn=Mt.__textureid__,Un=qt.get(nr+vn);if(Un)Un.texture.surface.setECharts(Mt),Gn&&Gn(Un.texture);else{var Ln=new fe.a(Mt);Ln.onupdate=function(){ln.getZr().refresh()},Un={texture:Ln.getTexture()};for(var Xn=0;Xn<Hn.length;Xn++)Un.texture[Hn[Xn]]=zn[Hn[Xn]];vn=Mt.__textureid__||"__ecgl_ec__"+Un.texture.__uid__,Mt.__textureid__=vn,qt.put(nr+vn,Un),Gn&&Gn(Un.texture)}return Un.texture}else if(Ht(Mt)){var vn=Mt.__textureid__,Un=qt.get(nr+vn);if(!Un){Un={texture:new gt.Texture2D({image:Mt})};for(var Xn=0;Xn<Hn.length;Xn++)Un.texture[Hn[Xn]]=zn[Hn[Xn]];vn=Mt.__textureid__||"__ecgl_image__"+Un.texture.__uid__,Mt.__textureid__=vn,qt.put(nr+vn,Un),kt(Un.texture),Gn&&Gn(Un.texture)}return Un.texture}else{var Un=qt.get(nr+Mt);if(Un)Un.callbacks?Un.callbacks.push(Gn):Gn&&Gn(Un.texture);else if(Mt.match(/.hdr$|^data:application\/octet-stream/)){Un={callbacks:[Gn]};var yr=se.a.loadTexture(Mt,{exposure:zn.exposure,fileType:"hdr"},function(){yr.dirty(),Un.callbacks.forEach(function(Gr){Gr&&Gr(yr)}),Un.callbacks=null});Un.texture=yr,qt.put(nr+Mt,Un)}else{for(var yr=new gt.Texture2D({image:new Image}),Xn=0;Xn<Hn.length;Xn++)yr[Hn[Xn]]=zn[Hn[Xn]];Un={texture:yr,callbacks:[Gn]};var kr=yr.image;kr.onload=function(){yr.image=kr,kt(yr),yr.dirty(),Un.callbacks.forEach(function(Ma){Ma&&Ma(yr)}),Un.callbacks=null},kr.src=Mt,yr.image=bt,qt.put(nr+Mt,Un)}return Un.texture}},gt.createAmbientCubemap=function(Mt,ln,zn,Gn){Mt=Mt||{};var Hn=Mt.texture,nr=me.a.firstNotNull(Mt.exposure,1),Xn=new he.a({intensity:me.a.firstNotNull(Mt.specularIntensity,1)}),qt=new ie.a({intensity:me.a.firstNotNull(Mt.diffuseIntensity,1),coefficients:[.844,.712,.691,-.037,.083,.167,.343,.288,.299,-.041,-.021,-.009,-.003,-.041,-.064,-.011,-.007,-.004,-.031,.034,.081,-.06,-.049,-.06,.046,.056,.05]});return Xn.cubemap=gt.loadTexture(Hn,zn,{exposure:nr},function(){Xn.cubemap.flipY=!1,Xn.prefilter(ln,32),qt.coefficients=ue.a.projectEnvironmentMap(ln,Xn.cubemap,{lod:1}),Gn&&Gn()}),{specular:Xn,diffuse:qt}},gt.createBlankTexture=se.a.createBlank,gt.isImage=Ht,gt.additiveBlend=function(Mt){Mt.blendEquation(Mt.FUNC_ADD),Mt.blendFunc(Mt.SRC_ALPHA,Mt.ONE)},gt.parseColor=function(Mt,ln){return Mt instanceof Array?(ln||(ln=[]),ln[0]=Mt[0],ln[1]=Mt[1],ln[2]=Mt[2],Mt.length>3?ln[3]=Mt[3]:ln[3]=1,ln):(ln=ce.a.color.parse(Mt||"#000",ln)||[0,0,0,0],ln[0]/=255,ln[1]/=255,ln[2]/=255,ln)},gt.directionFromAlphaBeta=function(Mt,ln){var zn=Mt/180*Math.PI+Math.PI/2,Gn=-ln/180*Math.PI+Math.PI/2,Hn=[],nr=Math.sin(zn);return Hn[0]=nr*Math.cos(Gn),Hn[1]=-Math.cos(zn),Hn[2]=nr*Math.sin(Gn),Hn},gt.getShadowResolution=function(Mt){var ln=1024;switch(Mt){case"low":ln=512;break;case"medium":break;case"high":ln=2048;break;case"ultra":ln=4096;break}return ln},gt.COMMON_SHADERS=["lambert","color","realistic","hatching"],gt.createShader=function(Mt){var ln=Pe.a.source(Mt+".vertex"),zn=Pe.a.source(Mt+".fragment");ln||console.error("Vertex shader of '%s' not exits",Mt),zn||console.error("Fragment shader of '%s' not exits",Mt);var Gn=new Pe.a(ln,zn);return Gn.name=Mt,Gn},gt.createMaterial=function(Mt,ln){ln instanceof Array||(ln=[ln]);var zn=gt.createShader(Mt),Gn=new xe.a({shader:zn});return ln.forEach(function(Hn){typeof Hn=="string"&&Gn.define(Hn)}),Gn},gt.setMaterialFromModel=function(Mt,ln,zn,Gn){ln.autoUpdateTextureStatus=!1;var Hn=zn.getModel(Mt+"Material"),nr=Hn.get("detailTexture"),Xn=me.a.firstNotNull(Hn.get("textureTiling"),1),qt=me.a.firstNotNull(Hn.get("textureOffset"),0);typeof Xn=="number"&&(Xn=[Xn,Xn]),typeof qt=="number"&&(qt=[qt,qt]);var vn=Xn[0]>1||Xn[1]>1?gt.Texture.REPEAT:gt.Texture.CLAMP_TO_EDGE,Un={anisotropic:8,wrapS:vn,wrapT:vn};if(Mt==="realistic"){var Ln=Hn.get("roughness"),yr=Hn.get("metalness");yr!=null?isNaN(yr)&&(ln.setTextureImage("metalnessMap",yr,Gn,Un),yr=me.a.firstNotNull(Hn.get("metalnessAdjust"),.5)):yr=0,Ln!=null?isNaN(Ln)&&(ln.setTextureImage("roughnessMap",Ln,Gn,Un),Ln=me.a.firstNotNull(Hn.get("roughnessAdjust"),.5)):Ln=.5;var kr=Hn.get("normalTexture");ln.setTextureImage("detailMap",nr,Gn,Un),ln.setTextureImage("normalMap",kr,Gn,Un),ln.set({roughness:Ln,metalness:yr,detailUvRepeat:Xn,detailUvOffset:qt})}else if(Mt==="lambert")ln.setTextureImage("detailMap",nr,Gn,Un),ln.set({detailUvRepeat:Xn,detailUvOffset:qt});else if(Mt==="color")ln.setTextureImage("detailMap",nr,Gn,Un),ln.set({detailUvRepeat:Xn,detailUvOffset:qt});else if(Mt==="hatching"){var Dr=Hn.get("hatchingTextures")||[];Dr.length<6&&console.error("Invalid hatchingTextures.");for(var Gr=0;Gr<6;Gr++)ln.setTextureImage("hatch"+(Gr+1),Dr[Gr],Gn,{anisotropic:8,wrapS:gt.Texture.REPEAT,wrapT:gt.Texture.REPEAT});ln.set({detailUvRepeat:Xn,detailUvOffset:qt})}},gt.updateVertexAnimation=function(Mt,ln,zn,Gn){var Hn=Gn.get("animation"),nr=Gn.get("animationDurationUpdate"),Xn=Gn.get("animationEasingUpdate"),qt=zn.shadowDepthMaterial;if(Hn&&ln&&nr>0&&ln.geometry.vertexCount===zn.geometry.vertexCount){zn.material.define("vertex","VERTEX_ANIMATION"),zn.ignorePreZ=!0,qt&&qt.define("vertex","VERTEX_ANIMATION");for(var vn=0;vn<Mt.length;vn++)zn.geometry.attributes[Mt[vn][0]].value=ln.geometry.attributes[Mt[vn][1]].value;zn.geometry.dirty(),zn.__percent=0,zn.material.set("percent",0),zn.stopAnimation(),zn.animate().when(nr,{__percent:1}).during(function(){zn.material.set("percent",zn.__percent),qt&&qt.set("percent",zn.__percent)}).done(function(){zn.ignorePreZ=!1,zn.material.undefine("vertex","VERTEX_ANIMATION"),qt&&qt.undefine("vertex","VERTEX_ANIMATION")}).start(Xn)}else zn.material.undefine("vertex","VERTEX_ANIMATION"),qt&&qt.undefine("vertex","VERTEX_ANIMATION")},Ne.a=gt},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve={firstNotNull:function(){for(var Ee=0,Pe=arguments.length;Ee<Pe;Ee++)if(arguments[Ee]!=null)return arguments[Ee]},queryDataIndex:function(Ee,Pe){if(Pe.dataIndexInside!=null)return Pe.dataIndexInside;if(Pe.dataIndex!=null)return Me.a.util.isArray(Pe.dataIndex)?Me.a.util.map(Pe.dataIndex,function(xe){return Ee.indexOfRawIndex(xe)}):Ee.indexOfRawIndex(Pe.dataIndex);if(Pe.name!=null)return Me.a.util.isArray(Pe.name)?Me.a.util.map(Pe.name,function(xe){return Ee.indexOfName(xe)}):Ee.indexOfName(Pe.name)}};Ne.a=ve},function(He,Ne,be){"use strict";var _e=be(1),Me=be.n(_e),ve=Me.a.vec3,Ee=function(te,ne,le){te=te||0,ne=ne||0,le=le||0,this.array=ve.fromValues(te,ne,le),this._dirty=!0};Ee.prototype={constructor:Ee,add:function(te){return ve.add(this.array,this.array,te.array),this._dirty=!0,this},set:function(te,ne,le){return this.array[0]=te,this.array[1]=ne,this.array[2]=le,this._dirty=!0,this},setArray:function(te){return this.array[0]=te[0],this.array[1]=te[1],this.array[2]=te[2],this._dirty=!0,this},clone:function(){return new Ee(this.x,this.y,this.z)},copy:function(te){return ve.copy(this.array,te.array),this._dirty=!0,this},cross:function(te,ne){return ve.cross(this.array,te.array,ne.array),this._dirty=!0,this},dist:function(te){return ve.dist(this.array,te.array)},distance:function(te){return ve.distance(this.array,te.array)},div:function(te){return ve.div(this.array,this.array,te.array),this._dirty=!0,this},divide:function(te){return ve.divide(this.array,this.array,te.array),this._dirty=!0,this},dot:function(te){return ve.dot(this.array,te.array)},len:function(){return ve.len(this.array)},length:function(){return ve.length(this.array)},lerp:function(te,ne,le){return ve.lerp(this.array,te.array,ne.array,le),this._dirty=!0,this},min:function(te){return ve.min(this.array,this.array,te.array),this._dirty=!0,this},max:function(te){return ve.max(this.array,this.array,te.array),this._dirty=!0,this},mul:function(te){return ve.mul(this.array,this.array,te.array),this._dirty=!0,this},multiply:function(te){return ve.multiply(this.array,this.array,te.array),this._dirty=!0,this},negate:function(){return ve.negate(this.array,this.array),this._dirty=!0,this},normalize:function(){return ve.normalize(this.array,this.array),this._dirty=!0,this},random:function(te){return ve.random(this.array,te),this._dirty=!0,this},scale:function(te){return ve.scale(this.array,this.array,te),this._dirty=!0,this},scaleAndAdd:function(te,ne){return ve.scaleAndAdd(this.array,this.array,te.array,ne),this._dirty=!0,this},sqrDist:function(te){return ve.sqrDist(this.array,te.array)},squaredDistance:function(te){return ve.squaredDistance(this.array,te.array)},sqrLen:function(){return ve.sqrLen(this.array)},squaredLength:function(){return ve.squaredLength(this.array)},sub:function(te){return ve.sub(this.array,this.array,te.array),this._dirty=!0,this},subtract:function(te){return ve.subtract(this.array,this.array,te.array),this._dirty=!0,this},transformMat3:function(te){return ve.transformMat3(this.array,this.array,te.array),this._dirty=!0,this},transformMat4:function(te){return ve.transformMat4(this.array,this.array,te.array),this._dirty=!0,this},transformQuat:function(te){return ve.transformQuat(this.array,this.array,te.array),this._dirty=!0,this},applyProjection:function(te){var ne=this.array;if(te=te.array,te[15]===0){var le=-1/ne[2];ne[0]=te[0]*ne[0]*le,ne[1]=te[5]*ne[1]*le,ne[2]=(te[10]*ne[2]+te[14])*le}else ne[0]=te[0]*ne[0]+te[12],ne[1]=te[5]*ne[1]+te[13],ne[2]=te[10]*ne[2]+te[14];return this._dirty=!0,this},eulerFromQuat:function(te,ne){Ee.eulerFromQuat(this,te,ne)},eulerFromMat3:function(te,ne){Ee.eulerFromMat3(this,te,ne)},toString:function(){return"["+Array.prototype.join.call(this.array,",")+"]"},toArray:function(){return Array.prototype.slice.call(this.array)}};var Pe=Object.defineProperty;if(Pe){var xe=Ee.prototype;Pe(xe,"x",{get:function(){return this.array[0]},set:function(te){this.array[0]=te,this._dirty=!0}}),Pe(xe,"y",{get:function(){return this.array[1]},set:function(te){this.array[1]=te,this._dirty=!0}}),Pe(xe,"z",{get:function(){return this.array[2]},set:function(te){this.array[2]=te,this._dirty=!0}})}Ee.add=function(te,ne,le){return ve.add(te.array,ne.array,le.array),te._dirty=!0,te},Ee.set=function(te,ne,le,se){ve.set(te.array,ne,le,se),te._dirty=!0},Ee.copy=function(te,ne){return ve.copy(te.array,ne.array),te._dirty=!0,te},Ee.cross=function(te,ne,le){return ve.cross(te.array,ne.array,le.array),te._dirty=!0,te},Ee.dist=function(te,ne){return ve.distance(te.array,ne.array)},Ee.distance=Ee.dist,Ee.div=function(te,ne,le){return ve.divide(te.array,ne.array,le.array),te._dirty=!0,te},Ee.divide=Ee.div,Ee.dot=function(te,ne){return ve.dot(te.array,ne.array)},Ee.len=function(te){return ve.length(te.array)},Ee.lerp=function(te,ne,le,se){return ve.lerp(te.array,ne.array,le.array,se),te._dirty=!0,te},Ee.min=function(te,ne,le){return ve.min(te.array,ne.array,le.array),te._dirty=!0,te},Ee.max=function(te,ne,le){return ve.max(te.array,ne.array,le.array),te._dirty=!0,te},Ee.mul=function(te,ne,le){return ve.multiply(te.array,ne.array,le.array),te._dirty=!0,te},Ee.multiply=Ee.mul,Ee.negate=function(te,ne){return ve.negate(te.array,ne.array),te._dirty=!0,te},Ee.normalize=function(te,ne){return ve.normalize(te.array,ne.array),te._dirty=!0,te},Ee.random=function(te,ne){return ve.random(te.array,ne),te._dirty=!0,te},Ee.scale=function(te,ne,le){return ve.scale(te.array,ne.array,le),te._dirty=!0,te},Ee.scaleAndAdd=function(te,ne,le,se){return ve.scaleAndAdd(te.array,ne.array,le.array,se),te._dirty=!0,te},Ee.sqrDist=function(te,ne){return ve.sqrDist(te.array,ne.array)},Ee.squaredDistance=Ee.sqrDist,Ee.sqrLen=function(te){return ve.sqrLen(te.array)},Ee.squaredLength=Ee.sqrLen,Ee.sub=function(te,ne,le){return ve.subtract(te.array,ne.array,le.array),te._dirty=!0,te},Ee.subtract=Ee.sub,Ee.transformMat3=function(te,ne,le){return ve.transformMat3(te.array,ne.array,le.array),te._dirty=!0,te},Ee.transformMat4=function(te,ne,le){return ve.transformMat4(te.array,ne.array,le.array),te._dirty=!0,te},Ee.transformQuat=function(te,ne,le){return ve.transformQuat(te.array,ne.array,le.array),te._dirty=!0,te};function pe(te,ne,le){return te<ne?ne:te>le?le:te}var Ae=Math.atan2,Se=Math.asin,ce=Math.abs;Ee.eulerFromQuat=function(te,ne,Re){te._dirty=!0,ne=ne.array;var se=te.array,fe=ne[0],he=ne[1],ie=ne[2],ue=ne[3],me=fe*fe,Ce=he*he,Ie=ie*ie,Fe=ue*ue,Re=(Re||"XYZ").toUpperCase();switch(Re){case"XYZ":se[0]=Ae(2*(fe*ue-he*ie),Fe-me-Ce+Ie),se[1]=Se(pe(2*(fe*ie+he*ue),-1,1)),se[2]=Ae(2*(ie*ue-fe*he),Fe+me-Ce-Ie);break;case"YXZ":se[0]=Se(pe(2*(fe*ue-he*ie),-1,1)),se[1]=Ae(2*(fe*ie+he*ue),Fe-me-Ce+Ie),se[2]=Ae(2*(fe*he+ie*ue),Fe-me+Ce-Ie);break;case"ZXY":se[0]=Se(pe(2*(fe*ue+he*ie),-1,1)),se[1]=Ae(2*(he*ue-ie*fe),Fe-me-Ce+Ie),se[2]=Ae(2*(ie*ue-fe*he),Fe-me+Ce-Ie);break;case"ZYX":se[0]=Ae(2*(fe*ue+ie*he),Fe-me-Ce+Ie),se[1]=Se(pe(2*(he*ue-fe*ie),-1,1)),se[2]=Ae(2*(fe*he+ie*ue),Fe+me-Ce-Ie);break;case"YZX":se[0]=Ae(2*(fe*ue-ie*he),Fe-me+Ce-Ie),se[1]=Ae(2*(he*ue-fe*ie),Fe+me-Ce-Ie),se[2]=Se(pe(2*(fe*he+ie*ue),-1,1));break;case"XZY":se[0]=Ae(2*(fe*ue+he*ie),Fe-me+Ce-Ie),se[1]=Ae(2*(fe*ie+he*ue),Fe+me-Ce-Ie),se[2]=Se(pe(2*(ie*ue-fe*he),-1,1));break;default:console.warn("Unkown order: "+Re)}return te},Ee.eulerFromMat3=function(te,ne,Ge){var se=ne.array,fe=se[0],he=se[3],ie=se[6],ue=se[1],me=se[4],Ce=se[7],Ie=se[2],Fe=se[5],Re=se[8],Ue=te.array,Ge=(Ge||"XYZ").toUpperCase();switch(Ge){case"XYZ":Ue[1]=Se(pe(ie,-1,1)),ce(ie)<.99999?(Ue[0]=Ae(-Ce,Re),Ue[2]=Ae(-he,fe)):(Ue[0]=Ae(Fe,me),Ue[2]=0);break;case"YXZ":Ue[0]=Se(-pe(Ce,-1,1)),ce(Ce)<.99999?(Ue[1]=Ae(ie,Re),Ue[2]=Ae(ue,me)):(Ue[1]=Ae(-Ie,fe),Ue[2]=0);break;case"ZXY":Ue[0]=Se(pe(Fe,-1,1)),ce(Fe)<.99999?(Ue[1]=Ae(-Ie,Re),Ue[2]=Ae(-he,me)):(Ue[1]=0,Ue[2]=Ae(ue,fe));break;case"ZYX":Ue[1]=Se(-pe(Ie,-1,1)),ce(Ie)<.99999?(Ue[0]=Ae(Fe,Re),Ue[2]=Ae(ue,fe)):(Ue[0]=0,Ue[2]=Ae(-he,me));break;case"YZX":Ue[2]=Se(pe(ue,-1,1)),ce(ue)<.99999?(Ue[0]=Ae(-Ce,me),Ue[1]=Ae(-Ie,fe)):(Ue[0]=0,Ue[1]=Ae(ie,Re));break;case"XZY":Ue[2]=Se(-pe(he,-1,1)),ce(he)<.99999?(Ue[0]=Ae(Fe,me),Ue[1]=Ae(ie,fe)):(Ue[0]=Ae(-Ce,Re),Ue[1]=0);break;default:console.warn("Unkown order: "+Ge)}return te._dirty=!0,te},Ee.POSITIVE_X=new Ee(1,0,0),Ee.NEGATIVE_X=new Ee(-1,0,0),Ee.POSITIVE_Y=new Ee(0,1,0),Ee.NEGATIVE_Y=new Ee(0,-1,0),Ee.POSITIVE_Z=new Ee(0,0,1),Ee.NEGATIVE_Z=new Ee(0,0,-1),Ee.UP=new Ee(0,1,0),Ee.ZERO=new Ee(0,0,0),Ne.a=Ee},function(He,Ne,be){"use strict";var _e=be(6),Me=be(11),ve=be(66),Ee=ve.a.isPowerOfTwo,Pe=_e.a.extend(function(){return{image:null,pixels:null,mipmaps:[]}},{update:function(xe){var pe=xe.gl;pe.bindTexture(pe.TEXTURE_2D,this._cache.get("webgl_texture")),this.updateCommon(xe);var Ae=this.format,Se=this.type;pe.texParameteri(pe.TEXTURE_2D,pe.TEXTURE_WRAP_S,this.getAvailableWrapS()),pe.texParameteri(pe.TEXTURE_2D,pe.TEXTURE_WRAP_T,this.getAvailableWrapT()),pe.texParameteri(pe.TEXTURE_2D,pe.TEXTURE_MAG_FILTER,this.getAvailableMagFilter()),pe.texParameteri(pe.TEXTURE_2D,pe.TEXTURE_MIN_FILTER,this.getAvailableMinFilter());var ce=xe.getGLExtension("EXT_texture_filter_anisotropic");if(ce&&this.anisotropic>1&&pe.texParameterf(pe.TEXTURE_2D,ce.TEXTURE_MAX_ANISOTROPY_EXT,this.anisotropic),Se===36193){var te=xe.getGLExtension("OES_texture_half_float");te||(Se=Me.a.FLOAT)}if(this.mipmaps.length)for(var ne=this.width,le=this.height,se=0;se<this.mipmaps.length;se++){var fe=this.mipmaps[se];this._updateTextureData(pe,fe,se,ne,le,Ae,Se),ne/=2,le/=2}else this._updateTextureData(pe,this,0,this.width,this.height,Ae,Se),this.useMipmap&&!this.NPOT&&pe.generateMipmap(pe.TEXTURE_2D);pe.bindTexture(pe.TEXTURE_2D,null)},_updateTextureData:function(xe,pe,Ae,Se,ce,te,ne){pe.image?xe.texImage2D(xe.TEXTURE_2D,Ae,te,te,ne,pe.image):te<=_e.a.COMPRESSED_RGBA_S3TC_DXT5_EXT&&te>=_e.a.COMPRESSED_RGB_S3TC_DXT1_EXT?xe.compressedTexImage2D(xe.TEXTURE_2D,Ae,te,Se,ce,0,pe.pixels):xe.texImage2D(xe.TEXTURE_2D,Ae,te,Se,ce,0,te,ne,pe.pixels)},generateMipmap:function(xe){var pe=xe.gl;this.useMipmap&&!this.NPOT&&(pe.bindTexture(pe.TEXTURE_2D,this._cache.get("webgl_texture")),pe.generateMipmap(pe.TEXTURE_2D))},isPowerOfTwo:function(){var xe,pe;return this.image?(xe=this.image.width,pe=this.image.height):(xe=this.width,pe=this.height),Ee(xe)&&Ee(pe)},isRenderable:function(){return this.image?this.image.nodeName==="CANVAS"||this.image.nodeName==="VIDEO"||this.image.complete:!!(this.width&&this.height)},bind:function(xe){xe.gl.bindTexture(xe.gl.TEXTURE_2D,this.getWebGLTexture(xe))},unbind:function(xe){xe.gl.bindTexture(xe.gl.TEXTURE_2D,null)},load:function(xe,pe){var Ae=new Image;pe&&(Ae.crossOrigin=pe);var Se=this;return Ae.onload=function(){Se.dirty(),Se.trigger("success",Se),Ae.onload=null},Ae.onerror=function(){Se.trigger("error",Se),Ae.onerror=null},Ae.src=xe,this.image=Ae,this}});Object.defineProperty(Pe.prototype,"width",{get:function(){return this.image?this.image.width:this._width},set:function(xe){this.image?console.warn("Texture from image can't set width"):(this._width!==xe&&this.dirty(),this._width=xe)}}),Object.defineProperty(Pe.prototype,"height",{get:function(){return this.image?this.image.height:this._height},set:function(xe){this.image?console.warn("Texture from image can't set height"):(this._height!==xe&&this.dirty(),this._height=xe)}}),Ne.a=Pe},function(He,Ne,be){"use strict";var _e=be(8),Me=be(11),ve=be(48),Ee=_e.a.extend({width:512,height:512,type:Me.a.UNSIGNED_BYTE,format:Me.a.RGBA,wrapS:Me.a.REPEAT,wrapT:Me.a.REPEAT,minFilter:Me.a.LINEAR_MIPMAP_LINEAR,magFilter:Me.a.LINEAR,useMipmap:!0,anisotropic:1,flipY:!0,sRGB:!0,unpackAlignment:4,premultiplyAlpha:!1,dynamic:!1,NPOT:!1},function(){this._cache=new ve.a},{getWebGLTexture:function(Pe){var xe=Pe.gl,pe=this._cache;return pe.use(Pe.__uid__),pe.miss("webgl_texture")&&pe.put("webgl_texture",xe.createTexture()),this.dynamic?this.update(Pe):pe.isDirty()&&(this.update(Pe),pe.fresh()),pe.get("webgl_texture")},bind:function(){},unbind:function(){},dirty:function(){this._cache&&this._cache.dirtyAll()},update:function(Pe){},updateCommon:function(Pe){var xe=Pe.gl;xe.pixelStorei(xe.UNPACK_FLIP_Y_WEBGL,this.flipY),xe.pixelStorei(xe.UNPACK_PREMULTIPLY_ALPHA_WEBGL,this.premultiplyAlpha),xe.pixelStorei(xe.UNPACK_ALIGNMENT,this.unpackAlignment),this.format===Me.a.DEPTH_COMPONENT&&(this.useMipmap=!1);var pe=Pe.getGLExtension("EXT_sRGB");this.format===Ee.SRGB&&!pe&&(this.format=Ee.RGB),this.format===Ee.SRGB_ALPHA&&!pe&&(this.format=Ee.RGBA),this.NPOT=!this.isPowerOfTwo()},getAvailableWrapS:function(){return this.NPOT?Me.a.CLAMP_TO_EDGE:this.wrapS},getAvailableWrapT:function(){return this.NPOT?Me.a.CLAMP_TO_EDGE:this.wrapT},getAvailableMinFilter:function(){var Pe=this.minFilter;return this.NPOT||!this.useMipmap?Pe==Me.a.NEAREST_MIPMAP_NEAREST||Pe==Me.a.NEAREST_MIPMAP_LINEAR?Me.a.NEAREST:Pe==Me.a.LINEAR_MIPMAP_LINEAR||Pe==Me.a.LINEAR_MIPMAP_NEAREST?Me.a.LINEAR:Pe:Pe},getAvailableMagFilter:function(){return this.magFilter},nextHighestPowerOfTwo:function(Pe){--Pe;for(var xe=1;xe<32;xe<<=1)Pe=Pe|Pe>>xe;return Pe+1},dispose:function(Pe){var xe=this._cache;xe.use(Pe.__uid__);var pe=xe.get("webgl_texture");pe&&Pe.gl.deleteTexture(pe),xe.deleteContext(Pe.__uid__)},isRenderable:function(){},isPowerOfTwo:function(){}});Object.defineProperty(Ee.prototype,"width",{get:function(){return this._width},set:function(Pe){this._width=Pe}}),Object.defineProperty(Ee.prototype,"height",{get:function(){return this._height},set:function(Pe){this._height=Pe}}),Ee.BYTE=Me.a.BYTE,Ee.UNSIGNED_BYTE=Me.a.UNSIGNED_BYTE,Ee.SHORT=Me.a.SHORT,Ee.UNSIGNED_SHORT=Me.a.UNSIGNED_SHORT,Ee.INT=Me.a.INT,Ee.UNSIGNED_INT=Me.a.UNSIGNED_INT,Ee.FLOAT=Me.a.FLOAT,Ee.HALF_FLOAT=36193,Ee.UNSIGNED_INT_24_8_WEBGL=34042,Ee.DEPTH_COMPONENT=Me.a.DEPTH_COMPONENT,Ee.DEPTH_STENCIL=Me.a.DEPTH_STENCIL,Ee.ALPHA=Me.a.ALPHA,Ee.RGB=Me.a.RGB,Ee.RGBA=Me.a.RGBA,Ee.LUMINANCE=Me.a.LUMINANCE,Ee.LUMINANCE_ALPHA=Me.a.LUMINANCE_ALPHA,Ee.SRGB=35904,Ee.SRGB_ALPHA=35906,Ee.COMPRESSED_RGB_S3TC_DXT1_EXT=33776,Ee.COMPRESSED_RGBA_S3TC_DXT1_EXT=33777,Ee.COMPRESSED_RGBA_S3TC_DXT3_EXT=33778,Ee.COMPRESSED_RGBA_S3TC_DXT5_EXT=33779,Ee.NEAREST=Me.a.NEAREST,Ee.LINEAR=Me.a.LINEAR,Ee.NEAREST_MIPMAP_NEAREST=Me.a.NEAREST_MIPMAP_NEAREST,Ee.LINEAR_MIPMAP_NEAREST=Me.a.LINEAR_MIPMAP_NEAREST,Ee.NEAREST_MIPMAP_LINEAR=Me.a.NEAREST_MIPMAP_LINEAR,Ee.LINEAR_MIPMAP_LINEAR=Me.a.LINEAR_MIPMAP_LINEAR,Ee.REPEAT=Me.a.REPEAT,Ee.CLAMP_TO_EDGE=Me.a.CLAMP_TO_EDGE,Ee.MIRRORED_REPEAT=Me.a.MIRRORED_REPEAT,Ne.a=Ee},function(He,Ne,be){"use strict";var _e=be(21),Me=be(18),ve=be(1),Ee=be.n(ve),Pe=Ee.a.mat2,xe=Ee.a.mat3,pe=Ee.a.mat4,Ae=/uniform\s+(bool|float|int|vec2|vec3|vec4|ivec2|ivec3|ivec4|mat2|mat3|mat4|sampler2D|samplerCube)\s+([\w\,]+)?(\[.*?\])?\s*(:\s*([\S\s]+?))?;/g,Se=/attribute\s+(float|int|vec2|vec3|vec4)\s+(\w*)\s*(:\s*(\w+))?;/g,ce=/#define\s+(\w+)?(\s+[\w-.]+)?\s*;?\s*\n/g,te={bool:"1i",int:"1i",sampler2D:"t",samplerCube:"t",float:"1f",vec2:"2f",vec3:"3f",vec4:"4f",ivec2:"2i",ivec3:"3i",ivec4:"4i",mat2:"m2",mat3:"m3",mat4:"m4"},ne={bool:function(){return!0},int:function(){return 0},float:function(){return 0},sampler2D:function(){return null},samplerCube:function(){return null},vec2:function(){return[0,0]},vec3:function(){return[0,0,0]},vec4:function(){return[0,0,0,0]},ivec2:function(){return[0,0]},ivec3:function(){return[0,0,0]},ivec4:function(){return[0,0,0,0]},mat2:function(){return Pe.create()},mat3:function(){return xe.create()},mat4:function(){return pe.create()},array:function(){return[]}},le=["POSITION","NORMAL","BINORMAL","TANGENT","TEXCOORD","TEXCOORD_0","TEXCOORD_1","COLOR","JOINT","WEIGHT"],se=["SKIN_MATRIX","VIEWPORT_SIZE","VIEWPORT","DEVICEPIXELRATIO","WINDOW_SIZE","NEAR","FAR","TIME"],fe=["WORLD","VIEW","PROJECTION","WORLDVIEW","VIEWPROJECTION","WORLDVIEWPROJECTION","WORLDINVERSE","VIEWINVERSE","PROJECTIONINVERSE","WORLDVIEWINVERSE","VIEWPROJECTIONINVERSE","WORLDVIEWPROJECTIONINVERSE","WORLDTRANSPOSE","VIEWTRANSPOSE","PROJECTIONTRANSPOSE","WORLDVIEWTRANSPOSE","VIEWPROJECTIONTRANSPOSE","WORLDVIEWPROJECTIONTRANSPOSE","WORLDINVERSETRANSPOSE","VIEWINVERSETRANSPOSE","PROJECTIONINVERSETRANSPOSE","WORLDVIEWINVERSETRANSPOSE","VIEWPROJECTIONINVERSETRANSPOSE","WORLDVIEWPROJECTIONINVERSETRANSPOSE"],he={},ie={};function ue(Fe,Re){var Ue="vertex:"+Fe+"fragment:"+Re;if(he[Ue])return he[Ue];var Ge=_e.a.genGUID();return he[Ue]=Ge,ie[Ge]={vertex:Fe,fragment:Re},Ge}function me(Fe,Re){typeof Fe=="object"&&(Re=Fe.fragment,Fe=Fe.vertex),this._shaderID=ue(Fe,Re),this._vertexCode=me.parseImport(Fe),this._fragmentCode=me.parseImport(Re),this.attributeSemantics={},this.matrixSemantics={},this.uniformSemantics={},this.matrixSemanticKeys=[],this.uniformTemplates={},this.attributes={},this.textures={},this.vertexDefines={},this.fragmentDefines={},this._parseAttributes(),this._parseUniforms(),this._parseDefines()}me.prototype={constructor:me,createUniforms:function(){var Fe={};for(var Re in this.uniformTemplates){var Ue=this.uniformTemplates[Re];Fe[Re]={type:Ue.type,value:Ue.value()}}return Fe},_parseImport:function(){this._vertexCode=me.parseImport(this.vertex),this._fragmentCode=me.parseImport(this.fragment)},_parseUniforms:function(){var Fe={},Re=this,Ue="vertex";this._uniformList=[],this._vertexCode=this._vertexCode.replace(Ae,Ge),Ue="fragment",this._fragmentCode=this._fragmentCode.replace(Ae,Ge),Re.matrixSemanticKeys=Object.keys(this.matrixSemantics);function Ge(Je,Qe,rt,$e,qe,ot){if(Qe&&rt){var at=te[Qe],ut=!0,nt;if(at){if(Re._uniformList.push(rt),(Qe==="sampler2D"||Qe==="samplerCube")&&(Re.textures[rt]={shaderType:Ue,type:Qe}),$e&&(at+="v"),ot)if(le.indexOf(ot)>=0)Re.attributeSemantics[ot]={symbol:rt,type:at},ut=!1;else if(fe.indexOf(ot)>=0){var lt=!1,yt=ot;ot.match(/TRANSPOSE$/)&&(lt=!0,yt=ot.slice(0,-9)),Re.matrixSemantics[ot]={symbol:rt,type:at,isTranspose:lt,semanticNoTranspose:yt},ut=!1}else if(se.indexOf(ot)>=0)Re.uniformSemantics[ot]={symbol:rt,type:at},ut=!1;else if(ot==="unconfigurable")ut=!1;else if(nt=Re._parseDefaultValue(Qe,ot),nt)ot="";else throw new Error('Unkown semantic "'+ot+'"');ut&&(Fe[rt]={type:at,value:$e?ne.array:nt||ne[Qe],semantic:ot||null})}return["uniform",Qe,rt,$e].join(" ")+`;
|
|
|
`}}this.uniformTemplates=Fe},_parseDefaultValue:function(Fe,Re){var Ue=/\[\s*(.*)\s*\]/;if(Fe==="vec2"||Fe==="vec3"||Fe==="vec4"){var Ge=Ue.exec(Re)[1];if(Ge){var Je=Ge.split(/\s*,\s*/);return function(){return new Me.a.Float32Array(Je)}}else return}else{if(Fe==="bool")return function(){return Re.toLowerCase()==="true"};if(Fe==="float")return function(){return parseFloat(Re)};if(Fe==="int")return function(){return parseInt(Re)}}},_parseAttributes:function(){var Fe={},Re=this;this._vertexCode=this._vertexCode.replace(Se,Ue);function Ue(Ge,Je,Qe,rt,$e){if(Je&&Qe){var qe=1;switch(Je){case"vec4":qe=4;break;case"vec3":qe=3;break;case"vec2":qe=2;break;case"float":qe=1;break}if(Fe[Qe]={type:"float",size:qe,semantic:$e||null},$e){if(le.indexOf($e)<0)throw new Error('Unkown semantic "'+$e+'"');Re.attributeSemantics[$e]={symbol:Qe,type:Je}}}return["attribute",Je,Qe].join(" ")+`;
|
|
|
`}this.attributes=Fe},_parseDefines:function(){var Fe=this,Re="vertex";this._vertexCode=this._vertexCode.replace(ce,Ue),Re="fragment",this._fragmentCode=this._fragmentCode.replace(ce,Ue);function Ue(Ge,Je,Qe){var rt=Re==="vertex"?Fe.vertexDefines:Fe.fragmentDefines;return rt[Je]||(Qe=="false"?rt[Je]=!1:Qe=="true"?rt[Je]=!0:rt[Je]=Qe?isNaN(parseFloat(Qe))?Qe.trim():parseFloat(Qe):null),""}},clone:function(){var Fe=ie[this._shaderID],Re=new me(Fe.vertex,Fe.fragment);return Re}},Object.defineProperty&&(Object.defineProperty(me.prototype,"shaderID",{get:function(){return this._shaderID}}),Object.defineProperty(me.prototype,"vertex",{get:function(){return this._vertexCode}}),Object.defineProperty(me.prototype,"fragment",{get:function(){return this._fragmentCode}}),Object.defineProperty(me.prototype,"uniforms",{get:function(){return this._uniformList}}));var Ce=/(@import)\s*([0-9a-zA-Z_\-\.]*)/g;me.parseImport=function(Fe){return Fe=Fe.replace(Ce,function(Je,Ue,Ge){var Je=me.source(Ge);return Je?me.parseImport(Je):(console.error('Shader chunk "'+Ge+'" not existed in library'),"")}),Fe};var Ie=/(@export)\s*([0-9a-zA-Z_\-\.]*)\s*\n([\s\S]*?)@end/g;me.import=function(Fe){Fe.replace(Ie,function(Re,Ue,Ge,Qe){var Qe=Qe.replace(/(^[\s\t\xa0\u3000]+)|([\u3000\xa0\s\t]+\x24)/g,"");if(Qe){for(var rt=Ge.split("."),$e=me.codes,qe=0,ot;qe<rt.length-1;)ot=rt[qe++],$e[ot]||($e[ot]={}),$e=$e[ot];ot=rt[qe],$e[ot]=Qe}return Qe})},me.codes={},me.source=function(Fe){for(var Re=Fe.split("."),Ue=me.codes,Ge=0;Ue&&Ge<Re.length;){var Je=Re[Ge++];Ue=Ue[Je]}return typeof Ue!="string"?(console.error('Shader "'+Fe+'" not existed in library'),""):Ue},Ne.a=me},function(He,Ne,be){"use strict";var _e=be(91),Me=be(47),ve=be(21),Ee=function(){this.__uid__=ve.a.genGUID()};Ee.__initializers__=[function(Pe){ve.a.extend(this,Pe)}],ve.a.extend(Ee,_e.a),ve.a.extend(Ee.prototype,Me.a),Ne.a=Ee},function(He,Ne,be){"use strict";var _e=be(1),Me=be.n(_e),ve=be(4),Ee=Me.a.mat4,Pe=Me.a.vec3,xe=Me.a.mat3,pe=Me.a.quat,Ae=function(){this._axisX=new ve.a,this._axisY=new ve.a,this._axisZ=new ve.a,this.array=Ee.create(),this._dirty=!0};Ae.prototype={constructor:Ae,setArray:function(te){for(var ne=0;ne<this.array.length;ne++)this.array[ne]=te[ne];return this._dirty=!0,this},adjoint:function(){return Ee.adjoint(this.array,this.array),this._dirty=!0,this},clone:function(){return new Ae().copy(this)},copy:function(te){return Ee.copy(this.array,te.array),this._dirty=!0,this},determinant:function(){return Ee.determinant(this.array)},fromQuat:function(te){return Ee.fromQuat(this.array,te.array),this._dirty=!0,this},fromRotationTranslation:function(te,ne){return Ee.fromRotationTranslation(this.array,te.array,ne.array),this._dirty=!0,this},fromMat2d:function(te){return Ae.fromMat2d(this,te),this},frustum:function(te,ne,le,se,fe,he){return Ee.frustum(this.array,te,ne,le,se,fe,he),this._dirty=!0,this},identity:function(){return Ee.identity(this.array),this._dirty=!0,this},invert:function(){return Ee.invert(this.array,this.array),this._dirty=!0,this},lookAt:function(te,ne,le){return Ee.lookAt(this.array,te.array,ne.array,le.array),this._dirty=!0,this},mul:function(te){return Ee.mul(this.array,this.array,te.array),this._dirty=!0,this},mulLeft:function(te){return Ee.mul(this.array,te.array,this.array),this._dirty=!0,this},multiply:function(te){return Ee.multiply(this.array,this.array,te.array),this._dirty=!0,this},multiplyLeft:function(te){return Ee.multiply(this.array,te.array,this.array),this._dirty=!0,this},ortho:function(te,ne,le,se,fe,he){return Ee.ortho(this.array,te,ne,le,se,fe,he),this._dirty=!0,this},perspective:function(te,ne,le,se){return Ee.perspective(this.array,te,ne,le,se),this._dirty=!0,this},rotate:function(te,ne){return Ee.rotate(this.array,this.array,te,ne.array),this._dirty=!0,this},rotateX:function(te){return Ee.rotateX(this.array,this.array,te),this._dirty=!0,this},rotateY:function(te){return Ee.rotateY(this.array,this.array,te),this._dirty=!0,this},rotateZ:function(te){return Ee.rotateZ(this.array,this.array,te),this._dirty=!0,this},scale:function(te){return Ee.scale(this.array,this.array,te.array),this._dirty=!0,this},translate:function(te){return Ee.translate(this.array,this.array,te.array),this._dirty=!0,this},transpose:function(){return Ee.transpose(this.array,this.array),this._dirty=!0,this},decomposeMatrix:function(){var te=Pe.create(),ne=Pe.create(),le=Pe.create(),se=xe.create();return function(fe,he,ie){var ue=this.array;Pe.set(te,ue[0],ue[1],ue[2]),Pe.set(ne,ue[4],ue[5],ue[6]),Pe.set(le,ue[8],ue[9],ue[10]);var me=Pe.length(te),Ce=Pe.length(ne),Ie=Pe.length(le),Fe=this.determinant();Fe<0&&(me=-me),fe&&fe.set(me,Ce,Ie),ie.set(ue[12],ue[13],ue[14]),xe.fromMat4(se,ue),se[0]/=me,se[1]/=me,se[2]/=me,se[3]/=Ce,se[4]/=Ce,se[5]/=Ce,se[6]/=Ie,se[7]/=Ie,se[8]/=Ie,pe.fromMat3(he.array,se),pe.normalize(he.array,he.array),he._dirty=!0,ie._dirty=!0}}(),toString:function(){return"["+Array.prototype.join.call(this.array,",")+"]"},toArray:function(){return Array.prototype.slice.call(this.array)}};var Se=Object.defineProperty;if(Se){var ce=Ae.prototype;Se(ce,"z",{get:function(){var te=this.array;return this._axisZ.set(te[8],te[9],te[10]),this._axisZ},set:function(te){var ne=this.array;te=te.array,ne[8]=te[0],ne[9]=te[1],ne[10]=te[2],this._dirty=!0}}),Se(ce,"y",{get:function(){var te=this.array;return this._axisY.set(te[4],te[5],te[6]),this._axisY},set:function(te){var ne=this.array;te=te.array,ne[4]=te[0],ne[5]=te[1],ne[6]=te[2],this._dirty=!0}}),Se(ce,"x",{get:function(){var te=this.array;return this._axisX.set(te[0],te[1],te[2]),this._axisX},set:function(te){var ne=this.array;te=te.array,ne[0]=te[0],ne[1]=te[1],ne[2]=te[2],this._dirty=!0}})}Ae.adjoint=function(te,ne){return Ee.adjoint(te.array,ne.array),te._dirty=!0,te},Ae.copy=function(te,ne){return Ee.copy(te.array,ne.array),te._dirty=!0,te},Ae.determinant=function(te){return Ee.determinant(te.array)},Ae.identity=function(te){return Ee.identity(te.array),te._dirty=!0,te},Ae.ortho=function(te,ne,le,se,fe,he,ie){return Ee.ortho(te.array,ne,le,se,fe,he,ie),te._dirty=!0,te},Ae.perspective=function(te,ne,le,se,fe){return Ee.perspective(te.array,ne,le,se,fe),te._dirty=!0,te},Ae.lookAt=function(te,ne,le,se){return Ee.lookAt(te.array,ne.array,le.array,se.array),te._dirty=!0,te},Ae.invert=function(te,ne){return Ee.invert(te.array,ne.array),te._dirty=!0,te},Ae.mul=function(te,ne,le){return Ee.mul(te.array,ne.array,le.array),te._dirty=!0,te},Ae.multiply=Ae.mul,Ae.fromQuat=function(te,ne){return Ee.fromQuat(te.array,ne.array),te._dirty=!0,te},Ae.fromRotationTranslation=function(te,ne,le){return Ee.fromRotationTranslation(te.array,ne.array,le.array),te._dirty=!0,te},Ae.fromMat2d=function(se,le){se._dirty=!0;var le=le.array,se=se.array;return se[0]=le[0],se[4]=le[2],se[12]=le[4],se[1]=le[1],se[5]=le[3],se[13]=le[5],se},Ae.rotate=function(te,ne,le,se){return Ee.rotate(te.array,ne.array,le,se.array),te._dirty=!0,te},Ae.rotateX=function(te,ne,le){return Ee.rotateX(te.array,ne.array,le),te._dirty=!0,te},Ae.rotateY=function(te,ne,le){return Ee.rotateY(te.array,ne.array,le),te._dirty=!0,te},Ae.rotateZ=function(te,ne,le){return Ee.rotateZ(te.array,ne.array,le),te._dirty=!0,te},Ae.scale=function(te,ne,le){return Ee.scale(te.array,ne.array,le.array),te._dirty=!0,te},Ae.transpose=function(te,ne){return Ee.transpose(te.array,ne.array),te._dirty=!0,te},Ae.translate=function(te,ne,le){return Ee.translate(te.array,ne.array,le.array),te._dirty=!0,te},Ne.a=Ae},function(He,Ne,be){"use strict";var _e=be(8),Me=be(6),ve=be(25),Ee=be(11),Pe=be(48),xe="framebuffer",pe="renderbuffer",Ae=pe+"_width",Se=pe+"_height",ce=pe+"_attached",te="depthtexture_attached",ne=Ee.a.FRAMEBUFFER,le=Ee.a.RENDERBUFFER,se=Ee.a.DEPTH_ATTACHMENT,fe=Ee.a.COLOR_ATTACHMENT0,he=_e.a.extend({depthBuffer:!0,viewport:null,_width:0,_height:0,_textures:null,_boundRenderer:null},function(){this._cache=new Pe.a,this._textures={}},{getTextureWidth:function(){return this._width},getTextureHeight:function(){return this._height},bind:function(ie){if(ie.__currentFrameBuffer){if(ie.__currentFrameBuffer===this)return;console.warn("Renderer already bound with another framebuffer. Unbind it first")}ie.__currentFrameBuffer=this;var ue=ie.gl;ue.bindFramebuffer(ne,this._getFrameBufferGL(ie)),this._boundRenderer=ie;var me=this._cache;me.put("viewport",ie.viewport);var Ce=!1,Ie,Fe;for(var Re in this._textures){Ce=!0;var Ue=this._textures[Re];Ue&&(Ie=Ue.texture.width,Fe=Ue.texture.height,this._doAttach(ie,Ue.texture,Re,Ue.target))}this._width=Ie,this._height=Fe,!Ce&&this.depthBuffer&&console.error("Must attach texture before bind, or renderbuffer may have incorrect width and height."),this.viewport?ie.setViewport(this.viewport):ie.setViewport(0,0,Ie,Fe,1);var Ge=me.get("attached_textures");if(Ge){for(var Re in Ge)if(!this._textures[Re]){var Je=Ge[Re];this._doDetach(ue,Re,Je)}}if(!me.get(te)&&this.depthBuffer){me.miss(pe)&&me.put(pe,ue.createRenderbuffer());var Qe=me.get(pe);(Ie!==me.get(Ae)||Fe!==me.get(Se))&&(ue.bindRenderbuffer(le,Qe),ue.renderbufferStorage(le,ue.DEPTH_COMPONENT16,Ie,Fe),me.put(Ae,Ie),me.put(Se,Fe),ue.bindRenderbuffer(le,null)),me.get(ce)||(ue.framebufferRenderbuffer(ne,se,le,Qe),me.put(ce,!0))}},unbind:function(ie){ie.__currentFrameBuffer=null;var ue=ie.gl;ue.bindFramebuffer(ne,null),this._boundRenderer=null,this._cache.use(ie.__uid__);var me=this._cache.get("viewport");me&&ie.setViewport(me),this.updateMipmap(ie)},updateMipmap:function(ie){var ue=ie.gl;for(var me in this._textures){var Ce=this._textures[me];if(Ce){var Ie=Ce.texture;if(!Ie.NPOT&&Ie.useMipmap&&Ie.minFilter===Me.a.LINEAR_MIPMAP_LINEAR){var Fe=Ie instanceof ve.a?Ee.a.TEXTURE_CUBE_MAP:Ee.a.TEXTURE_2D;ue.bindTexture(Fe,Ie.getWebGLTexture(ie)),ue.generateMipmap(Fe),ue.bindTexture(Fe,null)}}}},checkStatus:function(ie){return ie.checkFramebufferStatus(ne)},_getFrameBufferGL:function(ie){var ue=this._cache;return ue.use(ie.__uid__),ue.miss(xe)&&ue.put(xe,ie.gl.createFramebuffer()),ue.get(xe)},attach:function(ie,ue,me){if(!ie.width)throw new Error("The texture attached to color buffer is not a valid.");ue=ue||fe,me=me||Ee.a.TEXTURE_2D;var Ce=this._boundRenderer,Ie=Ce&&Ce.gl,Fe;if(Ie){var Re=this._cache;Re.use(Ce.__uid__),Fe=Re.get("attached_textures")}var Ue=this._textures[ue];if(!(Ue&&Ue.target===me&&Ue.texture===ie&&Fe&&Fe[ue]!=null)){var Ge=!0;Ce&&(Ge=this._doAttach(Ce,ie,ue,me),this.viewport||Ce.setViewport(0,0,ie.width,ie.height,1)),Ge&&(this._textures[ue]=this._textures[ue]||{},this._textures[ue].texture=ie,this._textures[ue].target=me)}},_doAttach:function(ie,ue,me,Ce){var Ie=ie.gl,Fe=ue.getWebGLTexture(ie),Re=this._cache.get("attached_textures");if(Re&&Re[me]){var Ue=Re[me];if(Ue.texture===ue&&Ue.target===Ce)return}me=+me;var Ge=!0;if(me===se||me===Ee.a.DEPTH_STENCIL_ATTACHMENT){var Je=ie.getGLExtension("WEBGL_depth_texture");if(Je||(console.error("Depth texture is not supported by the browser"),Ge=!1),ue.format!==Ee.a.DEPTH_COMPONENT&&ue.format!==Ee.a.DEPTH_STENCIL&&(console.error("The texture attached to depth buffer is not a valid."),Ge=!1),Ge){var Qe=this._cache.get(pe);Qe&&(Ie.framebufferRenderbuffer(ne,se,le,null),Ie.deleteRenderbuffer(Qe),this._cache.put(pe,!1)),this._cache.put(ce,!1),this._cache.put(te,!0)}}return Ie.framebufferTexture2D(ne,me,Ce,Fe,0),Re||(Re={},this._cache.put("attached_textures",Re)),Re[me]=Re[me]||{},Re[me].texture=ue,Re[me].target=Ce,Ge},_doDetach:function(ie,ue,me){ie.framebufferTexture2D(ne,ue,me,null,0);var Ce=this._cache.get("attached_textures");Ce&&Ce[ue]&&(Ce[ue]=null),(ue===se||ue===Ee.a.DEPTH_STENCIL_ATTACHMENT)&&this._cache.put(te,!1)},detach:function(ie,ue){if(this._textures[ie]=null,this._boundRenderer){var me=this._cache;me.use(this._boundRenderer.__uid__),this._doDetach(this._boundRenderer.gl,ie,ue)}},dispose:function(ie){var ue=ie.gl,me=this._cache;me.use(ie.__uid__);var Ce=me.get(pe);Ce&&ue.deleteRenderbuffer(Ce);var Ie=me.get(xe);Ie&&ue.deleteFramebuffer(Ie),me.deleteContext(ie.__uid__),this._textures={}}});he.DEPTH_ATTACHMENT=se,he.COLOR_ATTACHMENT0=fe,he.STENCIL_ATTACHMENT=Ee.a.STENCIL_ATTACHMENT,he.DEPTH_STENCIL_ATTACHMENT=Ee.a.DEPTH_STENCIL_ATTACHMENT,Ne.a=he},function(He,Ne,be){"use strict";Ne.a={DEPTH_BUFFER_BIT:256,STENCIL_BUFFER_BIT:1024,COLOR_BUFFER_BIT:16384,POINTS:0,LINES:1,LINE_LOOP:2,LINE_STRIP:3,TRIANGLES:4,TRIANGLE_STRIP:5,TRIANGLE_FAN:6,ZERO:0,ONE:1,SRC_COLOR:768,ONE_MINUS_SRC_COLOR:769,SRC_ALPHA:770,ONE_MINUS_SRC_ALPHA:771,DST_ALPHA:772,ONE_MINUS_DST_ALPHA:773,DST_COLOR:774,ONE_MINUS_DST_COLOR:775,SRC_ALPHA_SATURATE:776,FUNC_ADD:32774,BLEND_EQUATION:32777,BLEND_EQUATION_RGB:32777,BLEND_EQUATION_ALPHA:34877,FUNC_SUBTRACT:32778,FUNC_REVERSE_SUBTRACT:32779,BLEND_DST_RGB:32968,BLEND_SRC_RGB:32969,BLEND_DST_ALPHA:32970,BLEND_SRC_ALPHA:32971,CONSTANT_COLOR:32769,ONE_MINUS_CONSTANT_COLOR:32770,CONSTANT_ALPHA:32771,ONE_MINUS_CONSTANT_ALPHA:32772,BLEND_COLOR:32773,ARRAY_BUFFER:34962,ELEMENT_ARRAY_BUFFER:34963,ARRAY_BUFFER_BINDING:34964,ELEMENT_ARRAY_BUFFER_BINDING:34965,STREAM_DRAW:35040,STATIC_DRAW:35044,DYNAMIC_DRAW:35048,BUFFER_SIZE:34660,BUFFER_USAGE:34661,CURRENT_VERTEX_ATTRIB:34342,FRONT:1028,BACK:1029,FRONT_AND_BACK:1032,CULL_FACE:2884,BLEND:3042,DITHER:3024,STENCIL_TEST:2960,DEPTH_TEST:2929,SCISSOR_TEST:3089,POLYGON_OFFSET_FILL:32823,SAMPLE_ALPHA_TO_COVERAGE:32926,SAMPLE_COVERAGE:32928,NO_ERROR:0,INVALID_ENUM:1280,INVALID_VALUE:1281,INVALID_OPERATION:1282,OUT_OF_MEMORY:1285,CW:2304,CCW:2305,LINE_WIDTH:2849,ALIASED_POINT_SIZE_RANGE:33901,ALIASED_LINE_WIDTH_RANGE:33902,CULL_FACE_MODE:2885,FRONT_FACE:2886,DEPTH_RANGE:2928,DEPTH_WRITEMASK:2930,DEPTH_CLEAR_VALUE:2931,DEPTH_FUNC:2932,STENCIL_CLEAR_VALUE:2961,STENCIL_FUNC:2962,STENCIL_FAIL:2964,STENCIL_PASS_DEPTH_FAIL:2965,STENCIL_PASS_DEPTH_PASS:2966,STENCIL_REF:2967,STENCIL_VALUE_MASK:2963,STENCIL_WRITEMASK:2968,STENCIL_BACK_FUNC:34816,STENCIL_BACK_FAIL:34817,STENCIL_BACK_PASS_DEPTH_FAIL:34818,STENCIL_BACK_PASS_DEPTH_PASS:34819,STENCIL_BACK_REF:36003,STENCIL_BACK_VALUE_MASK:36004,STENCIL_BACK_WRITEMASK:36005,VIEWPORT:2978,SCISSOR_BOX:3088,COLOR_CLEAR_VALUE:3106,COLOR_WRITEMASK:3107,UNPACK_ALIGNMENT:3317,PACK_ALIGNMENT:3333,MAX_TEXTURE_SIZE:3379,MAX_VIEWPORT_DIMS:3386,SUBPIXEL_BITS:3408,RED_BITS:3410,GREEN_BITS:3411,BLUE_BITS:3412,ALPHA_BITS:3413,DEPTH_BITS:3414,STENCIL_BITS:3415,POLYGON_OFFSET_UNITS:10752,POLYGON_OFFSET_FACTOR:32824,TEXTURE_BINDING_2D:32873,SAMPLE_BUFFERS:32936,SAMPLES:32937,SAMPLE_COVERAGE_VALUE:32938,SAMPLE_COVERAGE_INVERT:32939,COMPRESSED_TEXTURE_FORMATS:34467,DONT_CARE:4352,FASTEST:4353,NICEST:4354,GENERATE_MIPMAP_HINT:33170,BYTE:5120,UNSIGNED_BYTE:5121,SHORT:5122,UNSIGNED_SHORT:5123,INT:5124,UNSIGNED_INT:5125,FLOAT:5126,DEPTH_COMPONENT:6402,ALPHA:6406,RGB:6407,RGBA:6408,LUMINANCE:6409,LUMINANCE_ALPHA:6410,UNSIGNED_SHORT_4_4_4_4:32819,UNSIGNED_SHORT_5_5_5_1:32820,UNSIGNED_SHORT_5_6_5:33635,FRAGMENT_SHADER:35632,VERTEX_SHADER:35633,MAX_VERTEX_ATTRIBS:34921,MAX_VERTEX_UNIFORM_VECTORS:36347,MAX_VARYING_VECTORS:36348,MAX_COMBINED_TEXTURE_IMAGE_UNITS:35661,MAX_VERTEX_TEXTURE_IMAGE_UNITS:35660,MAX_TEXTURE_IMAGE_UNITS:34930,MAX_FRAGMENT_UNIFORM_VECTORS:36349,SHADER_TYPE:35663,DELETE_STATUS:35712,LINK_STATUS:35714,VALIDATE_STATUS:35715,ATTACHED_SHADERS:35717,ACTIVE_UNIFORMS:35718,ACTIVE_ATTRIBUTES:35721,SHADING_LANGUAGE_VERSION:35724,CURRENT_PROGRAM:35725,NEVER:512,LESS:513,EQUAL:514,LEQUAL:515,GREATER:516,NOTEQUAL:517,GEQUAL:518,ALWAYS:519,KEEP:7680,REPLACE:7681,INCR:7682,DECR:7683,INVERT:5386,INCR_WRAP:34055,DECR_WRAP:34056,VENDOR:7936,RENDERER:7937,VERSION:7938,NEAREST:9728,LINEAR:9729,NEAREST_MIPMAP_NEAREST:9984,LINEAR_MIPMAP_NEAREST:9985,NEAREST_MIPMAP_LINEAR:9986,LINEAR_MIPMAP_LINEAR:9987,TEXTURE_MAG_FILTER:10240,TEXTURE_MIN_FILTER:10241,TEXTURE_WRAP_S:10242,TEXTURE_WRAP_T:10243,TEXTURE_2D:3553,TEXTURE:5890,TEXTURE_CUBE_MAP:34067,TEXTURE_BINDING_CUBE_MAP:34068,TEXTURE_CUBE_MAP_POSITIVE_X:34069,TEXTURE_CUBE_MAP_NEGATIVE_X:34070,TEXTURE_CUBE_MAP_POSITIVE_Y:34071,TEXTURE_CUBE_MAP_NEGATIVE_Y:34072,TEXTURE_CUBE_MAP_POSITIVE_Z:34073,TEXTURE_CUBE_MAP_NEGATIVE_Z:34074,MAX_CUBE_MAP_TEXTURE_SIZE:34076,TEXTURE0:33984,TEXTURE1:33985,TEXTURE2:33986,TEXTURE3:33987,TEXTURE4:33988,TEXTURE5:33989,TEXTURE6:33990,TEXTURE7:33991,TEXTURE8:33992,TEXTURE9:33993,TEXTURE10:33994,TEXTURE11:33995,TEXTURE12:33996,TEXTURE13:33997,TEXTURE14:33998,TEXTURE15:33999,TEXTURE16:34e3,TEXTURE17:34001,TEXTURE18:34002,TEXTURE19:34003,TEXTURE20:34004,TEXTURE21:34005,TEXTURE22:34006,TEXTURE23:34007,TEXTURE24:34008,TEXTURE25:34009,TEXTURE26:34010,TEXTURE27:34011,TEXTURE28:34012,TEXTURE29:34013,TEXTURE30:34014,TEXTURE31:34015,ACTIVE_TEXTURE:34016,REPEAT:10497,CLAMP_TO_EDGE:33071,MIRRORED_REPEAT:33648,FLOAT_VEC2:35664,FLOAT_VEC3:35665,FLOAT_VEC4:35666,INT_VEC2:35667,INT_VEC3:35668,INT_VEC4:35669,BOOL:35670,BOOL_VEC2:35671,BOOL_VEC3:35672,BOOL_VEC4:35673,FLOAT_MAT2:35674,FLOAT_MAT3:35675,FLOAT_MAT4:35676,SAMPLER_2D:35678,SAMPLER_CUBE:35680,VERTEX_ATTRIB_ARRAY_ENABLED:34338,VERTEX_ATTRIB_ARRAY_SIZE:34339,VERTEX_ATTRIB_ARRAY_STRIDE:34340,VERTEX_ATTRIB_ARRAY_TYPE:34341,VERTEX_ATTRIB_ARRAY_NORMALIZED:34922,VERTEX_ATTRIB_ARRAY_POINTER:34373,VERTEX_ATTRIB_ARRAY_BUFFER_BINDING:34975,COMPILE_STATUS:35713,LOW_FLOAT:36336,MEDIUM_FLOAT:36337,HIGH_FLOAT:36338,LOW_INT:36339,MEDIUM_INT:36340,HIGH_INT:36341,FRAMEBUFFER:36160,RENDERBUFFER:36161,RGBA4:32854,RGB5_A1:32855,RGB565:36194,DEPTH_COMPONENT16:33189,STENCIL_INDEX:6401,STENCIL_INDEX8:36168,DEPTH_STENCIL:34041,RENDERBUFFER_WIDTH:36162,RENDERBUFFER_HEIGHT:36163,RENDERBUFFER_INTERNAL_FORMAT:36164,RENDERBUFFER_RED_SIZE:36176,RENDERBUFFER_GREEN_SIZE:36177,RENDERBUFFER_BLUE_SIZE:36178,RENDERBUFFER_ALPHA_SIZE:36179,RENDERBUFFER_DEPTH_SIZE:36180,RENDERBUFFER_STENCIL_SIZE:36181,FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE:36048,FRAMEBUFFER_ATTACHMENT_OBJECT_NAME:36049,FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL:36050,FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE:36051,COLOR_ATTACHMENT0:36064,DEPTH_ATTACHMENT:36096,STENCIL_ATTACHMENT:36128,DEPTH_STENCIL_ATTACHMENT:33306,NONE:0,FRAMEBUFFER_COMPLETE:36053,FRAMEBUFFER_INCOMPLETE_ATTACHMENT:36054,FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT:36055,FRAMEBUFFER_INCOMPLETE_DIMENSIONS:36057,FRAMEBUFFER_UNSUPPORTED:36061,FRAMEBUFFER_BINDING:36006,RENDERBUFFER_BINDING:36007,MAX_RENDERBUFFER_SIZE:34024,INVALID_FRAMEBUFFER_OPERATION:1286,UNPACK_FLIP_Y_WEBGL:37440,UNPACK_PREMULTIPLY_ALPHA_WEBGL:37441,CONTEXT_LOST_WEBGL:37442,UNPACK_COLORSPACE_CONVERSION_WEBGL:37443,BROWSER_DEFAULT_WEBGL:37444}},function(He,Ne){var be={"[object Function]":1,"[object RegExp]":1,"[object Date]":1,"[object Error]":1,"[object CanvasGradient]":1,"[object CanvasPattern]":1,"[object Image]":1,"[object Canvas]":1},_e={"[object Int8Array]":1,"[object Uint8Array]":1,"[object Uint8ClampedArray]":1,"[object Int16Array]":1,"[object Uint16Array]":1,"[object Int32Array]":1,"[object Uint32Array]":1,"[object Float32Array]":1,"[object Float64Array]":1},Me=Object.prototype.toString,ve=Array.prototype,Ee=ve.forEach,Pe=ve.filter,xe=ve.slice,pe=ve.map,Ae=ve.reduce,Se={};function ce(St,Qt){Se[St]=Qt}function te(St){if(St==null||typeof St!="object")return St;var Qt=St,gt=Me.call(St);if(gt==="[object Array]"){if(!on(St)){Qt=[];for(var bt=0,Yt=St.length;bt<Yt;bt++)Qt[bt]=te(St[bt])}}else if(_e[gt]){if(!on(St)){var kt=St.constructor;if(St.constructor.from)Qt=kt.from(St);else{Qt=new kt(St.length);for(var bt=0,Yt=St.length;bt<Yt;bt++)Qt[bt]=te(St[bt])}}}else if(!be[gt]&&!on(St)&&!yt(St)){Qt={};for(var Mt in St)St.hasOwnProperty(Mt)&&(Qt[Mt]=te(St[Mt]))}return Qt}function ne(St,Qt,gt){if(!ut(Qt)||!ut(St))return gt?te(Qt):St;for(var bt in Qt)if(Qt.hasOwnProperty(bt)){var Yt=St[bt],kt=Qt[bt];ut(kt)&&ut(Yt)&&!qe(kt)&&!qe(Yt)&&!yt(kt)&&!yt(Yt)&&!nt(kt)&&!nt(Yt)&&!on(kt)&&!on(Yt)?ne(Yt,kt,gt):(gt||!(bt in St))&&(St[bt]=te(Qt[bt],!0))}return St}function le(St,Qt){for(var gt=St[0],bt=1,Yt=St.length;bt<Yt;bt++)gt=ne(gt,St[bt],Qt);return gt}function se(St,Qt){for(var gt in Qt)Qt.hasOwnProperty(gt)&&(St[gt]=Qt[gt]);return St}function fe(St,Qt,gt){for(var bt in Qt)Qt.hasOwnProperty(bt)&&(gt?Qt[bt]!=null:St[bt]==null)&&(St[bt]=Qt[bt]);return St}var he=function(){return Se.createCanvas()};Se.createCanvas=function(){return document.createElement("canvas")};var ie;function ue(){return ie||(ie=he().getContext("2d")),ie}function me(St,Qt){if(St){if(St.indexOf)return St.indexOf(Qt);for(var gt=0,bt=St.length;gt<bt;gt++)if(St[gt]===Qt)return gt}return-1}function Ce(St,Qt){var gt=St.prototype;function bt(){}bt.prototype=Qt.prototype,St.prototype=new bt;for(var Yt in gt)St.prototype[Yt]=gt[Yt];St.prototype.constructor=St,St.superClass=Qt}function Ie(St,Qt,gt){St="prototype"in St?St.prototype:St,Qt="prototype"in Qt?Qt.prototype:Qt,fe(St,Qt,gt)}function Fe(St){if(St)return typeof St=="string"?!1:typeof St.length=="number"}function Re(St,Qt,gt){if(St&&Qt)if(St.forEach&&St.forEach===Ee)St.forEach(Qt,gt);else if(St.length===+St.length)for(var bt=0,Yt=St.length;bt<Yt;bt++)Qt.call(gt,St[bt],bt,St);else for(var kt in St)St.hasOwnProperty(kt)&&Qt.call(gt,St[kt],kt,St)}function Ue(St,Qt,gt){if(St&&Qt){if(St.map&&St.map===pe)return St.map(Qt,gt);for(var bt=[],Yt=0,kt=St.length;Yt<kt;Yt++)bt.push(Qt.call(gt,St[Yt],Yt,St));return bt}}function Ge(St,Qt,gt,bt){if(St&&Qt){if(St.reduce&&St.reduce===Ae)return St.reduce(Qt,gt,bt);for(var Yt=0,kt=St.length;Yt<kt;Yt++)gt=Qt.call(bt,gt,St[Yt],Yt,St);return gt}}function Je(St,Qt,gt){if(St&&Qt){if(St.filter&&St.filter===Pe)return St.filter(Qt,gt);for(var bt=[],Yt=0,kt=St.length;Yt<kt;Yt++)Qt.call(gt,St[Yt],Yt,St)&&bt.push(St[Yt]);return bt}}function Qe(St,Qt,gt){if(St&&Qt){for(var bt=0,Yt=St.length;bt<Yt;bt++)if(Qt.call(gt,St[bt],bt,St))return St[bt]}}function rt(St,Qt){var gt=xe.call(arguments,2);return function(){return St.apply(Qt,gt.concat(xe.call(arguments)))}}function $e(St){var Qt=xe.call(arguments,1);return function(){return St.apply(this,Qt.concat(xe.call(arguments)))}}function qe(St){return Me.call(St)==="[object Array]"}function ot(St){return typeof St=="function"}function at(St){return Me.call(St)==="[object String]"}function ut(St){var Qt=typeof St;return Qt==="function"||!!St&&Qt=="object"}function nt(St){return!!be[Me.call(St)]}function lt(St){return!!_e[Me.call(St)]}function yt(St){return typeof St=="object"&&typeof St.nodeType=="number"&&typeof St.ownerDocument=="object"}function ft(St){return St!==St}function ct(St){for(var Qt=0,gt=arguments.length;Qt<gt;Qt++)if(arguments[Qt]!=null)return arguments[Qt]}function vt(St,Qt){return St!=null?St:Qt}function Ut(St,Qt,gt){return St!=null?St:Qt!=null?Qt:gt}function Zt(){return Function.call.apply(xe,arguments)}function en(St){if(typeof St=="number")return[St,St,St,St];var Qt=St.length;return Qt===2?[St[0],St[1],St[0],St[1]]:Qt===3?[St[0],St[1],St[2],St[1]]:St}function mn(St,Qt){if(!St)throw new Error(Qt)}var Bt="__ec_primitive__";function tn(St){St[Bt]=!0}function on(St){return St[Bt]}function Mn(St){var Qt=qe(St);St&&Re(St,function(gt,bt){Qt?this.set(gt,1):this.set(bt,gt)},this)}var Dn="_ec_",sn=4;Mn.prototype={constructor:Mn,get:function(St){return this[Dn+St]},set:function(St,Qt){return this[Dn+St]=Qt,Qt},each:function(St,Qt){Qt!==void 0&&(St=rt(St,Qt));for(var gt in this)this.hasOwnProperty(gt)&&St(this[gt],gt.slice(sn))},removeKey:function(St){delete this[Dn+St]}};function rn(St){return new Mn(St)}function Ht(St,Qt){for(var gt=new St.constructor(St.length+Qt.length),bt=0;bt<St.length;bt++)gt[bt]=St[bt];var Yt=St.length;for(bt=0;bt<Qt.length;bt++)gt[bt+Yt]=Qt[bt];return gt}function Tt(){}Ne.$override=ce,Ne.clone=te,Ne.merge=ne,Ne.mergeAll=le,Ne.extend=se,Ne.defaults=fe,Ne.createCanvas=he,Ne.getContext=ue,Ne.indexOf=me,Ne.inherits=Ce,Ne.mixin=Ie,Ne.isArrayLike=Fe,Ne.each=Re,Ne.map=Ue,Ne.reduce=Ge,Ne.filter=Je,Ne.find=Qe,Ne.bind=rt,Ne.curry=$e,Ne.isArray=qe,Ne.isFunction=ot,Ne.isString=at,Ne.isObject=ut,Ne.isBuiltInObject=nt,Ne.isTypedArray=lt,Ne.isDom=yt,Ne.eqNaN=ft,Ne.retrieve=ct,Ne.retrieve2=vt,Ne.retrieve3=Ut,Ne.slice=Zt,Ne.normalizeCssArray=en,Ne.assert=mn,Ne.setAsPrimitive=tn,Ne.isPrimitive=on,Ne.createHashMap=rn,Ne.concatArray=Ht,Ne.noop=Tt},function(He,Ne,be){"use strict";var _e=be(8),Me=be(11),ve=be(48),Ee=be(18),Pe=be(1),xe=be.n(Pe),pe=be(15),Ae=xe.a.vec3,Se=xe.a.mat4,ce=Ae.create,te=Ae.add,ne=Ae.set;function le(me){return{byte:Ee.a.Int8Array,ubyte:Ee.a.Uint8Array,short:Ee.a.Int16Array,ushort:Ee.a.Uint16Array}[me]||Ee.a.Float32Array}function se(me){return"attr_"+me}function fe(me,Ce,Ie,Fe){switch(this.name=me,this.type=Ce,this.size=Ie,this.semantic=Fe||"",this.value=null,Ie){case 1:this.get=function(Re){return this.value[Re]},this.set=function(Re,Ue){this.value[Re]=Ue},this.copy=function(Re,Ue){this.value[Re]=this.value[Re]};break;case 2:this.get=function(Re,Ue){var Ge=this.value;return Ue[0]=Ge[Re*2],Ue[1]=Ge[Re*2+1],Ue},this.set=function(Re,Ue){var Ge=this.value;Ge[Re*2]=Ue[0],Ge[Re*2+1]=Ue[1]},this.copy=function(Re,Ue){var Ge=this.value;Ue*=2,Re*=2,Ge[Re]=Ge[Ue],Ge[Re+1]=Ge[Ue+1]};break;case 3:this.get=function(Re,Ue){var Ge=Re*3,Je=this.value;return Ue[0]=Je[Ge],Ue[1]=Je[Ge+1],Ue[2]=Je[Ge+2],Ue},this.set=function(Re,Ue){var Ge=Re*3,Je=this.value;Je[Ge]=Ue[0],Je[Ge+1]=Ue[1],Je[Ge+2]=Ue[2]},this.copy=function(Re,Ue){var Ge=this.value;Ue*=3,Re*=3,Ge[Re]=Ge[Ue],Ge[Re+1]=Ge[Ue+1],Ge[Re+2]=Ge[Ue+2]};break;case 4:this.get=function(Re,Ue){var Ge=this.value,Je=Re*4;return Ue[0]=Ge[Je],Ue[1]=Ge[Je+1],Ue[2]=Ge[Je+2],Ue[3]=Ge[Je+3],Ue},this.set=function(Re,Ue){var Ge=this.value,Je=Re*4;Ge[Je]=Ue[0],Ge[Je+1]=Ue[1],Ge[Je+2]=Ue[2],Ge[Je+3]=Ue[3]},this.copy=function(Re,Ue){var Ge=this.value;Ue*=4,Re*=4,Ge[Re]=Ge[Ue],Ge[Re+1]=Ge[Ue+1],Ge[Re+2]=Ge[Ue+2],Ge[Re+3]=Ge[Ue+3]}}}fe.prototype.init=function(me){if(!this.value||this.value.length!=me*this.size){var Ce=le(this.type);this.value=new Ce(me*this.size)}},fe.prototype.fromArray=function(me){var Ce=le(this.type),Ie;if(me[0]&&me[0].length){var Fe=0,Re=this.size;Ie=new Ce(me.length*Re);for(var Ue=0;Ue<me.length;Ue++)for(var Ge=0;Ge<Re;Ge++)Ie[Fe++]=me[Ue][Ge]}else Ie=new Ce(me);this.value=Ie},fe.prototype.clone=function(me){var Ce=new fe(this.name,this.type,this.size,this.semantic);return me&&console.warn("todo"),Ce};function he(me,Ce,Ie,Fe,Re){this.name=me,this.type=Ce,this.buffer=Ie,this.size=Fe,this.semantic=Re,this.symbol="",this.needsRemove=!1}function ie(me){this.buffer=me,this.count=0}var ue=_e.a.extend(function(){return{attributes:{position:new fe("position","float",3,"POSITION"),texcoord0:new fe("texcoord0","float",2,"TEXCOORD_0"),texcoord1:new fe("texcoord1","float",2,"TEXCOORD_1"),normal:new fe("normal","float",3,"NORMAL"),tangent:new fe("tangent","float",4,"TANGENT"),color:new fe("color","float",4,"COLOR"),weight:new fe("weight","float",3,"WEIGHT"),joint:new fe("joint","float",4,"JOINT"),barycentric:new fe("barycentric","float",3,null)},boundingBox:null,indices:null,dynamic:!0,_enabledAttributes:null}},function(){this._cache=new ve.a,this._attributeList=Object.keys(this.attributes)},{mainAttribute:"position",pick:null,pickByRay:null,updateBoundingBox:function(){var me=this.boundingBox;me||(me=this.boundingBox=new pe.a);var Ce=this.attributes.position.value;if(Ce&&Ce.length){var Ie=me.min,Fe=me.max,Re=Ie.array,Ue=Fe.array;Ae.set(Re,Ce[0],Ce[1],Ce[2]),Ae.set(Ue,Ce[0],Ce[1],Ce[2]);for(var Ge=3;Ge<Ce.length;){var Je=Ce[Ge++],Qe=Ce[Ge++],rt=Ce[Ge++];Je<Re[0]&&(Re[0]=Je),Qe<Re[1]&&(Re[1]=Qe),rt<Re[2]&&(Re[2]=rt),Je>Ue[0]&&(Ue[0]=Je),Qe>Ue[1]&&(Ue[1]=Qe),rt>Ue[2]&&(Ue[2]=rt)}Ie._dirty=!0,Fe._dirty=!0}},dirty:function(){for(var me=this.getEnabledAttributes(),Ce=0;Ce<me.length;Ce++)this.dirtyAttribute(me[Ce]);this.dirtyIndices(),this._enabledAttributes=null,this._cache.dirty("any")},dirtyIndices:function(){this._cache.dirtyAll("indices")},dirtyAttribute:function(me){this._cache.dirtyAll(se(me)),this._cache.dirtyAll("attributes")},getTriangleIndices:function(me,Ce){if(me<this.triangleCount&&me>=0){Ce||(Ce=ce());var Ie=this.indices;return Ce[0]=Ie[me*3],Ce[1]=Ie[me*3+1],Ce[2]=Ie[me*3+2],Ce}},setTriangleIndices:function(me,Ce){var Ie=this.indices;Ie[me*3]=Ce[0],Ie[me*3+1]=Ce[1],Ie[me*3+2]=Ce[2]},isUseIndices:function(){return!!this.indices},initIndicesFromArray:function(me){var Ce,Ie=this.vertexCount>65535?Ee.a.Uint32Array:Ee.a.Uint16Array;if(me[0]&&me[0].length){var Fe=0,Re=3;Ce=new Ie(me.length*Re);for(var Ue=0;Ue<me.length;Ue++)for(var Ge=0;Ge<Re;Ge++)Ce[Fe++]=me[Ue][Ge]}else Ce=new Ie(me);this.indices=Ce},createAttribute:function(me,Ce,Ie,Fe){var Re=new fe(me,Ce,Ie,Fe);return this.attributes[me]&&this.removeAttribute(me),this.attributes[me]=Re,this._attributeList.push(me),Re},removeAttribute:function(me){var Ce=this._attributeList,Ie=Ce.indexOf(me);return Ie>=0?(Ce.splice(Ie,1),delete this.attributes[me],!0):!1},getAttribute:function(me){return this.attributes[me]},getEnabledAttributes:function(){var me=this._enabledAttributes,Ce=this._attributeList;if(me)return me;for(var Ie=[],Fe=this.vertexCount,Re=0;Re<Ce.length;Re++){var Ue=Ce[Re],Ge=this.attributes[Ue];Ge.value&&Ge.value.length===Fe*Ge.size&&Ie.push(Ue)}return this._enabledAttributes=Ie,Ie},getBufferChunks:function(me){var Ce=this._cache;Ce.use(me.__uid__);var Ie=Ce.isDirty("attributes"),Fe=Ce.isDirty("indices");if(Ie||Fe){this._updateBuffer(me.gl,Ie,Fe);for(var Re=this.getEnabledAttributes(),Ue=0;Ue<Re.length;Ue++)Ce.fresh(se(Re[Ue]));Ce.fresh("attributes"),Ce.fresh("indices")}return Ce.fresh("any"),Ce.get("chunks")},_updateBuffer:function(me,Ce,Ie){var Fe=this._cache,Re=Fe.get("chunks"),Ue=!1;Re||(Re=[],Re[0]={attributeBuffers:[],indicesBuffer:null},Fe.put("chunks",Re),Ue=!0);var Ge=Re[0],Je=Ge.attributeBuffers,Qe=Ge.indicesBuffer;if(Ce||Ue){var rt=this.getEnabledAttributes(),$e={};if(!Ue)for(var qe=0;qe<Je.length;qe++)$e[Je[qe].name]=Je[qe];for(var ot=0;ot<rt.length;ot++){var at=rt[ot],ut=this.attributes[at],nt;Ue||(nt=$e[at]);var lt;nt?lt=nt.buffer:lt=me.createBuffer(),Fe.isDirty(se(at))&&(me.bindBuffer(me.ARRAY_BUFFER,lt),me.bufferData(me.ARRAY_BUFFER,ut.value,this.dynamic?Me.a.DYNAMIC_DRAW:Me.a.STATIC_DRAW)),Je[ot]=new he(at,ut.type,lt,ut.size,ut.semantic)}for(var qe=ot;qe<Je.length;qe++)me.deleteBuffer(Je[qe].buffer);Je.length=ot}this.isUseIndices()&&(Ie||Ue)&&(Qe||(Qe=new ie(me.createBuffer()),Ge.indicesBuffer=Qe),Qe.count=this.indices.length,me.bindBuffer(me.ELEMENT_ARRAY_BUFFER,Qe.buffer),me.bufferData(me.ELEMENT_ARRAY_BUFFER,this.indices,this.dynamic?Me.a.DYNAMIC_DRAW:Me.a.STATIC_DRAW))},generateVertexNormals:function(){if(this.vertexCount){var me=this.indices,Ce=this.attributes,Ie=Ce.position.value,Fe=Ce.normal.value;if(!Fe||Fe.length!==Ie.length)Fe=Ce.normal.value=new Ee.a.Float32Array(Ie.length);else for(var Re=0;Re<Fe.length;Re++)Fe[Re]=0;for(var Ue=ce(),Ge=ce(),Je=ce(),Qe=ce(),rt=ce(),$e=ce(),qe=me?me.length:this.vertexCount,ot,at,ut,nt=0;nt<qe;){me?(ot=me[nt++],at=me[nt++],ut=me[nt++]):(ot=nt++,at=nt++,ut=nt++),ne(Ue,Ie[ot*3],Ie[ot*3+1],Ie[ot*3+2]),ne(Ge,Ie[at*3],Ie[at*3+1],Ie[at*3+2]),ne(Je,Ie[ut*3],Ie[ut*3+1],Ie[ut*3+2]),Ae.sub(Qe,Ue,Ge),Ae.sub(rt,Ge,Je),Ae.cross($e,Qe,rt);for(var Re=0;Re<3;Re++)Fe[ot*3+Re]=Fe[ot*3+Re]+$e[Re],Fe[at*3+Re]=Fe[at*3+Re]+$e[Re],Fe[ut*3+Re]=Fe[ut*3+Re]+$e[Re]}for(var Re=0;Re<Fe.length;)ne($e,Fe[Re],Fe[Re+1],Fe[Re+2]),Ae.normalize($e,$e),Fe[Re++]=$e[0],Fe[Re++]=$e[1],Fe[Re++]=$e[2];this.dirty()}},generateFaceNormals:function(){if(this.vertexCount){this.isUniqueVertex()||this.generateUniqueVertex();var me=this.indices,Ce=this.attributes,Ie=Ce.position.value,Fe=Ce.normal.value,Re=ce(),Ue=ce(),Ge=ce(),Je=ce(),Qe=ce(),rt=ce();Fe||(Fe=Ce.normal.value=new Float32Array(Ie.length));for(var $e=me?me.length:this.vertexCount,qe,ot,at,ut=0;ut<$e;){me?(qe=me[ut++],ot=me[ut++],at=me[ut++]):(qe=ut++,ot=ut++,at=ut++),ne(Re,Ie[qe*3],Ie[qe*3+1],Ie[qe*3+2]),ne(Ue,Ie[ot*3],Ie[ot*3+1],Ie[ot*3+2]),ne(Ge,Ie[at*3],Ie[at*3+1],Ie[at*3+2]),Ae.sub(Je,Re,Ue),Ae.sub(Qe,Ue,Ge),Ae.cross(rt,Je,Qe),Ae.normalize(rt,rt);for(var nt=0;nt<3;nt++)Fe[qe*3+nt]=rt[nt],Fe[ot*3+nt]=rt[nt],Fe[at*3+nt]=rt[nt]}this.dirty()}},generateTangents:function(){if(this.vertexCount){var me=this.vertexCount,Ce=this.attributes;Ce.tangent.value||(Ce.tangent.value=new Float32Array(me*4));var Ie=Ce.texcoord0.value,Fe=Ce.position.value,Re=Ce.tangent.value,Ue=Ce.normal.value;if(!Ie){console.warn("Geometry without texcoords can't generate tangents.");return}for(var Ge=[],Je=[],Qe=0;Qe<me;Qe++)Ge[Qe]=[0,0,0],Je[Qe]=[0,0,0];for(var rt=[0,0,0],$e=[0,0,0],qe=this.indices,ot=qe?qe.length:this.vertexCount,at,ut,nt,Qe=0;Qe<ot;){qe?(at=qe[Qe++],ut=qe[Qe++],nt=qe[Qe++]):(at=Qe++,ut=Qe++,nt=Qe++);var lt=Ie[at*2],yt=Ie[ut*2],ft=Ie[nt*2],ct=Ie[at*2+1],vt=Ie[ut*2+1],Ut=Ie[nt*2+1],Zt=Fe[at*3],en=Fe[ut*3],mn=Fe[nt*3],Bt=Fe[at*3+1],tn=Fe[ut*3+1],on=Fe[nt*3+1],Mn=Fe[at*3+2],Dn=Fe[ut*3+2],sn=Fe[nt*3+2],rn=en-Zt,Ht=mn-Zt,Tt=tn-Bt,St=on-Bt,Qt=Dn-Mn,gt=sn-Mn,bt=yt-lt,Yt=ft-lt,kt=vt-ct,Mt=Ut-ct,ln=1/(bt*Mt-kt*Yt);rt[0]=(Mt*rn-kt*Ht)*ln,rt[1]=(Mt*Tt-kt*St)*ln,rt[2]=(Mt*Qt-kt*gt)*ln,$e[0]=(bt*Ht-Yt*rn)*ln,$e[1]=(bt*St-Yt*Tt)*ln,$e[2]=(bt*gt-Yt*Qt)*ln,te(Ge[at],Ge[at],rt),te(Ge[ut],Ge[ut],rt),te(Ge[nt],Ge[nt],rt),te(Je[at],Je[at],$e),te(Je[ut],Je[ut],$e),te(Je[nt],Je[nt],$e)}for(var zn=ce(),Gn=ce(),Hn=ce(),Qe=0;Qe<me;Qe++){Hn[0]=Ue[Qe*3],Hn[1]=Ue[Qe*3+1],Hn[2]=Ue[Qe*3+2];var nr=Ge[Qe];Ae.scale(zn,Hn,Ae.dot(Hn,nr)),Ae.sub(zn,nr,zn),Ae.normalize(zn,zn),Ae.cross(Gn,Hn,nr),Re[Qe*4]=zn[0],Re[Qe*4+1]=zn[1],Re[Qe*4+2]=zn[2],Re[Qe*4+3]=Ae.dot(Gn,Je[Qe])<0?-1:1}this.dirty()}},isUniqueVertex:function(){return this.isUseIndices()?this.vertexCount===this.indices.length:!0},generateUniqueVertex:function(){if(!(!this.vertexCount||!this.indices)){this.indices.length>65535&&(this.indices=new Ee.a.Uint32Array(this.indices));for(var me=this.attributes,Ce=this.indices,Ie=this.getEnabledAttributes(),Fe={},Re=0;Re<Ie.length;Re++){var Ue=Ie[Re];Fe[Ue]=me[Ue].value,me[Ue].init(this.indices.length)}for(var Ge=0,Je=0;Je<Ce.length;Je++){for(var Qe=Ce[Je],Re=0;Re<Ie.length;Re++)for(var Ue=Ie[Re],rt=me[Ue].value,$e=me[Ue].size,qe=0;qe<$e;qe++)rt[Ge*$e+qe]=Fe[Ue][Qe*$e+qe];Ce[Je]=Ge,Ge++}this.dirty()}},generateBarycentric:function(){if(this.vertexCount){this.isUniqueVertex()||this.generateUniqueVertex();var me=this.attributes,Ce=me.barycentric.value,Ie=this.indices;if(!(Ce&&Ce.length===Ie.length*3)){Ce=me.barycentric.value=new Float32Array(Ie.length*3);for(var Fe=0;Fe<(Ie?Ie.length:this.vertexCount/3);)for(var Re=0;Re<3;Re++){var Ue=Ie?Ie[Fe++]:Fe*3+Re;Ce[Ue*3+Re]=1}this.dirty()}}},applyTransform:function(me){var Ce=this.attributes,Ie=Ce.position.value,Fe=Ce.normal.value,Re=Ce.tangent.value;me=me.array;var Ue=Se.create();Se.invert(Ue,me),Se.transpose(Ue,Ue);var Ge=Ae.transformMat4,Je=Ae.forEach;Je(Ie,3,0,null,Ge,me),Fe&&Je(Fe,3,0,null,Ge,Ue),Re&&Je(Re,4,0,null,Ge,Ue),this.boundingBox&&this.updateBoundingBox()},dispose:function(me){var Ce=this._cache;Ce.use(me.__uid__);var Ie=Ce.get("chunks");if(Ie)for(var Fe=0;Fe<Ie.length;Fe++){for(var Re=Ie[Fe],Ue=0;Ue<Re.attributeBuffers.length;Ue++){var Ge=Re.attributeBuffers[Ue];me.gl.deleteBuffer(Ge.buffer)}Re.indicesBuffer&&me.gl.deleteBuffer(Re.indicesBuffer.buffer)}Ce.deleteContext(me.__uid__)}});Object.defineProperty&&(Object.defineProperty(ue.prototype,"vertexCount",{enumerable:!1,get:function(){var me=this.attributes[this.mainAttribute];return!me||!me.value?0:me.value.length/me.size}}),Object.defineProperty(ue.prototype,"triangleCount",{enumerable:!1,get:function(){var me=this.indices;return me?me.length/3:0}})),ue.STATIC_DRAW=Me.a.STATIC_DRAW,ue.DYNAMIC_DRAW=Me.a.DYNAMIC_DRAW,ue.STREAM_DRAW=Me.a.STREAM_DRAW,ue.AttributeBuffer=he,ue.IndicesBuffer=ie,ue.Attribute=fe,Ne.a=ue},function(He,Ne,be){"use strict";var _e=be(8),Me=be(30),ve=be(37),Ee=be(7),Pe=be(17),xe=be(24),pe=be(11),Ae=be(109);Ee.a.import(Ae.a);var Se=new ve.a,ce=new xe.a({geometry:Se,frustumCulling:!1}),te=new Me.a,ne=_e.a.extend(function(){return{fragment:"",outputs:null,material:null,blendWithPrevious:!1,clearColor:!1,clearDepth:!0}},function(){var le=new Ee.a(Ee.a.source("clay.compositor.vertex"),this.fragment),se=new Pe.a({shader:le});se.enableTexturesAll(),this.material=se},{setUniform:function(le,se){this.material.setUniform(le,se)},getUniform:function(le){var se=this.material.uniforms[le];if(se)return se.value},attachOutput:function(le,se){this.outputs||(this.outputs={}),se=se||pe.a.COLOR_ATTACHMENT0,this.outputs[se]=le},detachOutput:function(le){for(var se in this.outputs)this.outputs[se]===le&&(this.outputs[se]=null)},bind:function(le,se){if(this.outputs)for(var fe in this.outputs){var he=this.outputs[fe];he&&se.attach(he,fe)}se&&se.bind(le)},unbind:function(le,se){se.unbind(le)},render:function(le,se){var fe=le.gl;if(se){this.bind(le,se);var he=le.getGLExtension("EXT_draw_buffers");if(he&&this.outputs){var ie=[];for(var ue in this.outputs)ue=+ue,ue>=fe.COLOR_ATTACHMENT0&&ue<=fe.COLOR_ATTACHMENT0+8&&ie.push(ue);he.drawBuffersEXT(ie)}}this.trigger("beforerender",this,le);var me=this.clearDepth?fe.DEPTH_BUFFER_BIT:0;if(fe.depthMask(!0),this.clearColor){me=me|fe.COLOR_BUFFER_BIT,fe.colorMask(!0,!0,!0,!0);var Ce=this.clearColor;Array.isArray(Ce)&&fe.clearColor(Ce[0],Ce[1],Ce[2],Ce[3])}fe.clear(me),this.blendWithPrevious?(fe.enable(fe.BLEND),this.material.transparent=!0):(fe.disable(fe.BLEND),this.material.transparent=!1),this.renderQuad(le),this.trigger("afterrender",this,le),se&&this.unbind(le,se)},renderQuad:function(le){ce.material=this.material,le.renderPass([ce],te)},dispose:function(le){}});Ne.a=ne},function(He,Ne,be){"use strict";var _e=be(4),Me=be(1),ve=be.n(Me),Ee=ve.a.vec3,Pe=Ee.copy,xe=Ee.set,pe=function(Ae,Se){this.min=Ae||new _e.a(1/0,1/0,1/0),this.max=Se||new _e.a(-1/0,-1/0,-1/0)};pe.prototype={constructor:pe,updateFromVertices:function(Ae){if(Ae.length>0){var Se=this.min,ce=this.max,te=Se.array,ne=ce.array;Pe(te,Ae[0]),Pe(ne,Ae[0]);for(var le=1;le<Ae.length;le++){var se=Ae[le];se[0]<te[0]&&(te[0]=se[0]),se[1]<te[1]&&(te[1]=se[1]),se[2]<te[2]&&(te[2]=se[2]),se[0]>ne[0]&&(ne[0]=se[0]),se[1]>ne[1]&&(ne[1]=se[1]),se[2]>ne[2]&&(ne[2]=se[2])}Se._dirty=!0,ce._dirty=!0}},union:function(Ae){var Se=this.min,ce=this.max;return Ee.min(Se.array,Se.array,Ae.min.array),Ee.max(ce.array,ce.array,Ae.max.array),Se._dirty=!0,ce._dirty=!0,this},intersection:function(Ae){var Se=this.min,ce=this.max;return Ee.max(Se.array,Se.array,Ae.min.array),Ee.min(ce.array,ce.array,Ae.max.array),Se._dirty=!0,ce._dirty=!0,this},intersectBoundingBox:function(Ae){var Se=this.min.array,ce=this.max.array,te=Ae.min.array,ne=Ae.max.array;return!(Se[0]>ne[0]||Se[1]>ne[1]||Se[2]>ne[2]||ce[0]<te[0]||ce[1]<te[1]||ce[2]<te[2])},containBoundingBox:function(Ae){var Se=this.min.array,ce=this.max.array,te=Ae.min.array,ne=Ae.max.array;return Se[0]<=te[0]&&Se[1]<=te[1]&&Se[2]<=te[2]&&ce[0]>=ne[0]&&ce[1]>=ne[1]&&ce[2]>=ne[2]},containPoint:function(Ae){var Se=this.min.array,ce=this.max.array,te=Ae.array;return Se[0]<=te[0]&&Se[1]<=te[1]&&Se[2]<=te[2]&&ce[0]>=te[0]&&ce[1]>=te[1]&&ce[2]>=te[2]},isFinite:function(){var Ae=this.min.array,Se=this.max.array;return isFinite(Ae[0])&&isFinite(Ae[1])&&isFinite(Ae[2])&&isFinite(Se[0])&&isFinite(Se[1])&&isFinite(Se[2])},applyTransform:function(){var Ae=Ee.create(),Se=Ee.create(),ce=Ee.create(),te=Ee.create(),ne=Ee.create(),le=Ee.create();return function(se){var fe=this.min.array,he=this.max.array,ie=se.array;return Ae[0]=ie[0]*fe[0],Ae[1]=ie[1]*fe[0],Ae[2]=ie[2]*fe[0],Se[0]=ie[0]*he[0],Se[1]=ie[1]*he[0],Se[2]=ie[2]*he[0],ce[0]=ie[4]*fe[1],ce[1]=ie[5]*fe[1],ce[2]=ie[6]*fe[1],te[0]=ie[4]*he[1],te[1]=ie[5]*he[1],te[2]=ie[6]*he[1],ne[0]=ie[8]*fe[2],ne[1]=ie[9]*fe[2],ne[2]=ie[10]*fe[2],le[0]=ie[8]*he[2],le[1]=ie[9]*he[2],le[2]=ie[10]*he[2],fe[0]=Math.min(Ae[0],Se[0])+Math.min(ce[0],te[0])+Math.min(ne[0],le[0])+ie[12],fe[1]=Math.min(Ae[1],Se[1])+Math.min(ce[1],te[1])+Math.min(ne[1],le[1])+ie[13],fe[2]=Math.min(Ae[2],Se[2])+Math.min(ce[2],te[2])+Math.min(ne[2],le[2])+ie[14],he[0]=Math.max(Ae[0],Se[0])+Math.max(ce[0],te[0])+Math.max(ne[0],le[0])+ie[12],he[1]=Math.max(Ae[1],Se[1])+Math.max(ce[1],te[1])+Math.max(ne[1],le[1])+ie[13],he[2]=Math.max(Ae[2],Se[2])+Math.max(ce[2],te[2])+Math.max(ne[2],le[2])+ie[14],this.min._dirty=!0,this.max._dirty=!0,this}}(),applyProjection:function(Ae){var Se=this.min.array,ce=this.max.array,te=Ae.array,ne=Se[0],le=Se[1],se=Se[2],fe=ce[0],he=ce[1],ie=Se[2],ue=ce[0],me=ce[1],Ce=ce[2];if(te[15]===1)Se[0]=te[0]*ne+te[12],Se[1]=te[5]*le+te[13],ce[2]=te[10]*se+te[14],ce[0]=te[0]*ue+te[12],ce[1]=te[5]*me+te[13],Se[2]=te[10]*Ce+te[14];else{var Ie=-1/se;Se[0]=te[0]*ne*Ie,Se[1]=te[5]*le*Ie,ce[2]=(te[10]*se+te[14])*Ie,Ie=-1/ie,ce[0]=te[0]*fe*Ie,ce[1]=te[5]*he*Ie,Ie=-1/Ce,Se[2]=(te[10]*Ce+te[14])*Ie}return this.min._dirty=!0,this.max._dirty=!0,this},updateVertices:function(){var Ae=this.vertices;if(!Ae){for(var Ae=[],Se=0;Se<8;Se++)Ae[Se]=Ee.fromValues(0,0,0);this.vertices=Ae}var ce=this.min.array,te=this.max.array;return xe(Ae[0],ce[0],ce[1],ce[2]),xe(Ae[1],ce[0],te[1],ce[2]),xe(Ae[2],te[0],ce[1],ce[2]),xe(Ae[3],te[0],te[1],ce[2]),xe(Ae[4],ce[0],ce[1],te[2]),xe(Ae[5],ce[0],te[1],te[2]),xe(Ae[6],te[0],ce[1],te[2]),xe(Ae[7],te[0],te[1],te[2]),this},copy:function(Ae){var Se=this.min,ce=this.max;return Pe(Se.array,Ae.min.array),Pe(ce.array,Ae.max.array),Se._dirty=!0,ce._dirty=!0,this},clone:function(){var Ae=new pe;return Ae.copy(this),Ae}},Ne.a=pe},function(He,Ne,be){"use strict";Ne.a=function(_e,Me,ve){return{seriesType:_e,reset:function(Ee,Pe){var xe=Ee.getData(),pe=Ee.visualColorAccessPath.split(".");pe[pe.length-1]="opacity";var Ae=Ee.get(pe);xe.setVisual("opacity",Ae==null?1:Ae);function Se(ce){var te=xe.getItemModel(ce),ne=te.get(pe);ne!=null&&xe.setItemVisual(ce,"opacity",ne)}return{dataEach:xe.hasItemOption?Se:null}}}}},function(He,Ne,be){"use strict";var _e=be(8),Me=be(6),ve=be(21),Ee=be(93),Pe=Ee.a.parseToFloat,xe={};function pe(ce,te,ne){var le=Object.keys(ce);le.sort();for(var se=[],fe=0;fe<le.length;fe++){var he=le[fe],ie=ce[he];ie===null?se.push(he):se.push(he+" "+ie.toString())}return se.join(`
|
|
|
`)}function Ae(ce,te,ne){ne.sort();for(var le=[],se=0;se<ne.length;se++){var fe=ne[se];le.push(fe)}var he=pe(ce)+`
|
|
|
`+pe(te)+`
|
|
|
`+le.join(`
|
|
|
`);if(xe[he])return xe[he];var ie=ve.a.genGUID();return xe[he]=ie,ie}var Se=_e.a.extend(function(){return{name:"",depthTest:!0,depthMask:!0,transparent:!1,blend:null,autoUpdateTextureStatus:!0,uniforms:{},vertexDefines:{},fragmentDefines:{},_textureStatus:{},_enabledUniforms:null}},function(){this.name||(this.name="MATERIAL_"+this.__uid__),this.shader&&this.attachShader(this.shader,!0)},{precision:"highp",bind:function(ce,te,ne,le){for(var se=ce.gl,fe=te.currentTextureSlot(),he=0;he<this._enabledUniforms.length;he++){var ie=this._enabledUniforms[he],ue=this.uniforms[ie].value;if(ue instanceof Me.a)ue.__slot=-1;else if(Array.isArray(ue))for(var me=0;me<ue.length;me++)ue[me]instanceof Me.a&&(ue[me].__slot=-1)}for(var he=0;he<this._enabledUniforms.length;he++){var ie=this._enabledUniforms[he],Ce=this.uniforms[ie],ue=Ce.value;if(ue===null){if(Ce.type==="t"){var Ie=te.currentTextureSlot(),Fe=te.setUniform(se,"1i",ie,Ie);Fe&&te.takeCurrentTextureSlot(ce,null)}continue}else if(ue instanceof Me.a)if(ue.__slot<0){var Ie=te.currentTextureSlot(),Fe=te.setUniform(se,"1i",ie,Ie);if(!Fe)continue;te.takeCurrentTextureSlot(ce,ue),ue.__slot=Ie}else te.setUniform(se,"1i",ie,ue.__slot);else if(Array.isArray(ue)){if(ue.length===0)continue;var Re=ue[0];if(Re instanceof Me.a){if(!te.hasUniform(ie))continue;for(var Ue=[],me=0;me<ue.length;me++){var Ge=ue[me];if(Ge.__slot<0){var Ie=te.currentTextureSlot();Ue.push(Ie),te.takeCurrentTextureSlot(ce,Ge),Ge.__slot=Ie}else Ue.push(Ge.__slot)}te.setUniform(se,"1iv",ie,Ue)}else te.setUniform(se,Ce.type,ie,ue)}else te.setUniform(se,Ce.type,ie,ue)}te.resetTextureSlot(fe)},setUniform:function(ce,te){te===void 0&&console.warn('Uniform value "'+ce+'" is undefined');var ne=this.uniforms[ce];ne&&(typeof te=="string"&&(te=Pe(te)||te),ne.value=te,this.autoUpdateTextureStatus&&ne.type==="t"&&(te?this.enableTexture(ce):this.disableTexture(ce)))},setUniforms:function(ce){for(var te in ce){var ne=ce[te];this.setUniform(te,ne)}},isUniformEnabled:function(ce){return this._enabledUniforms.indexOf(ce)>=0},getEnabledUniforms:function(){return this._enabledUniforms},getTextureUniforms:function(){return this._textureUniforms},set:function(ce,te){if(typeof ce=="object")for(var ne in ce){var le=ce[ne];this.setUniform(ne,le)}else this.setUniform(ce,te)},get:function(ce){var te=this.uniforms[ce];if(te)return te.value},attachShader:function(ce,te){var ne=this.uniforms;this.uniforms=ce.createUniforms(),this.shader=ce;var le=this.uniforms;this._enabledUniforms=Object.keys(le),this._enabledUniforms.sort(),this._textureUniforms=this._enabledUniforms.filter(function(me){var Ce=this.uniforms[me].type;return Ce==="t"||Ce==="tv"},this);var se=this.vertexDefines,fe=this.fragmentDefines;if(this.vertexDefines=ve.a.clone(ce.vertexDefines),this.fragmentDefines=ve.a.clone(ce.fragmentDefines),te){for(var he in ne)le[he]&&(le[he].value=ne[he].value);ve.a.defaults(this.vertexDefines,se),ve.a.defaults(this.fragmentDefines,fe)}var ie={};for(var ue in ce.textures)ie[ue]={shaderType:ce.textures[ue].shaderType,type:ce.textures[ue].type,enabled:te&&this._textureStatus[ue]?this._textureStatus[ue].enabled:!1};this._textureStatus=ie,this._programKey=""},clone:function(){var ce=new this.constructor({name:this.name,shader:this.shader});for(var te in this.uniforms)ce.uniforms[te].value=this.uniforms[te].value;return ce.depthTest=this.depthTest,ce.depthMask=this.depthMask,ce.transparent=this.transparent,ce.blend=this.blend,ce.vertexDefines=ve.a.clone(this.vertexDefines),ce.fragmentDefines=ve.a.clone(this.fragmentDefines),ce.enableTexture(this.getEnabledTextures()),ce.precision=this.precision,ce},define:function(ce,te,ne){var le=this.vertexDefines,se=this.fragmentDefines;ce!=="vertex"&&ce!=="fragment"&&ce!=="both"&&arguments.length<3&&(ne=te,te=ce,ce="both"),ne=ne!=null?ne:null,(ce==="vertex"||ce==="both")&&le[te]!==ne&&(le[te]=ne,this._programKey=""),(ce==="fragment"||ce==="both")&&se[te]!==ne&&(se[te]=ne,ce!=="both"&&(this._programKey=""))},undefine:function(ce,te){ce!=="vertex"&&ce!=="fragment"&&ce!=="both"&&arguments.length<2&&(te=ce,ce="both"),(ce==="vertex"||ce==="both")&&this.isDefined("vertex",te)&&(delete this.vertexDefines[te],this._programKey=""),(ce==="fragment"||ce==="both")&&this.isDefined("fragment",te)&&(delete this.fragmentDefines[te],ce!=="both"&&(this._programKey=""))},isDefined:function(ce,te){switch(ce){case"vertex":return this.vertexDefines[te]!==void 0;case"fragment":return this.fragmentDefines[te]!==void 0}},getDefine:function(ce,te){switch(ce){case"vertex":return this.vertexDefines[te];case"fragment":return this.fragmentDefines[te]}},enableTexture:function(ce){if(Array.isArray(ce)){for(var te=0;te<ce.length;te++)this.enableTexture(ce[te]);return}var ne=this._textureStatus[ce];if(ne){var le=ne.enabled;le||(ne.enabled=!0,this._programKey="")}},enableTexturesAll:function(){var ce=this._textureStatus;for(var te in ce)ce[te].enabled=!0;this._programKey=""},disableTexture:function(ce){if(Array.isArray(ce)){for(var te=0;te<ce.length;te++)this.disableTexture(ce[te]);return}var ne=this._textureStatus[ce];if(ne){var le=!ne.enabled;le||(ne.enabled=!1,this._programKey="")}},disableTexturesAll:function(){var ce=this._textureStatus;for(var te in ce)ce[te].enabled=!1;this._programKey=""},isTextureEnabled:function(ce){var te=this._textureStatus;return!!te[ce]&&te[ce].enabled},getEnabledTextures:function(){var ce=[],te=this._textureStatus;for(var ne in te)te[ne].enabled&&ce.push(ne);return ce},dirtyDefines:function(){this._programKey=""}});Object.defineProperty&&(Object.defineProperty(Se.prototype,"shader",{get:function(){return this._shader||null},set:function(ce){this._shader=ce}}),Object.defineProperty(Se.prototype,"programKey",{get:function(){return this._programKey||(this._programKey=Ae(this.vertexDefines,this.fragmentDefines,this.getEnabledTextures())),this._programKey}})),Ne.a=Se},function(He,Ne,be){"use strict";var _e=!0;try{var Me=document.createElement("canvas"),ve=Me.getContext("webgl")||Me.getContext("experimental-webgl");if(!ve)throw new Error}catch(Pe){_e=!1}var Ee={};Ee.supportWebGL=function(){return _e},Ee.Int8Array=typeof Int8Array=="undefined"?Array:Int8Array,Ee.Uint8Array=typeof Uint8Array=="undefined"?Array:Uint8Array,Ee.Uint16Array=typeof Uint16Array=="undefined"?Array:Uint16Array,Ee.Uint32Array=typeof Uint32Array=="undefined"?Array:Uint32Array,Ee.Int16Array=typeof Int16Array=="undefined"?Array:Int16Array,Ee.Float32Array=typeof Float32Array=="undefined"?Array:Float32Array,Ee.Float64Array=typeof Float64Array=="undefined"?Array:Float64Array,Ne.a=Ee},function(He,Ne,be){"use strict";var _e=be(28),Me=_e.a.extend(function(){return{color:[1,1,1],intensity:1,castShadow:!0,shadowResolution:512,group:0}},{type:"",clone:function(){var ve=_e.a.prototype.clone.call(this);return ve.color=Array.prototype.slice.call(this.color),ve.intensity=this.intensity,ve.castShadow=this.castShadow,ve.shadowResolution=this.shadowResolution,ve}});Ne.a=Me},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(29),Ee=be(152),Pe=be(36),xe=be(30),pe=be(9),Ae=be(4),Se=be(23),ce=be(47),te=be(155),ne=be(182),le=be(43);function se(he){he=he||"perspective",this.layer=null,this.scene=new ve.a,this.rootNode=this.scene,this.viewport={x:0,y:0,width:0,height:0},this.setProjection(he),this._compositor=new te.a,this._temporalSS=new ne.a,this._shadowMapPass=new Ee.a;for(var ie=[],ue=0,me=0;me<30;me++){for(var Ce=[],Ie=0;Ie<6;Ie++)Ce.push(Object(le.a)(ue,2)*4-2),Ce.push(Object(le.a)(ue,3)*4-2),ue++;ie.push(Ce)}this._pcfKernels=ie,this.scene.on("beforerender",function(Fe,Re,Ue){this.needsTemporalSS()&&this._temporalSS.jitterProjection(Fe,Ue)},this)}se.prototype.setProjection=function(he){var ie=this.camera;ie&&ie.update(),he==="perspective"?this.camera instanceof Pe.a||(this.camera=new Pe.a,ie&&this.camera.setLocalTransform(ie.localTransform)):this.camera instanceof xe.a||(this.camera=new xe.a,ie&&this.camera.setLocalTransform(ie.localTransform)),this.camera.near=.1,this.camera.far=2e3},se.prototype.setViewport=function(he,ie,ue,me,Ce){this.camera instanceof Pe.a&&(this.camera.aspect=ue/me),Ce=Ce||1,this.viewport.x=he,this.viewport.y=ie,this.viewport.width=ue,this.viewport.height=me,this.viewport.devicePixelRatio=Ce,this._compositor.resize(ue*Ce,me*Ce),this._temporalSS.resize(ue*Ce,me*Ce)},se.prototype.containPoint=function(he,ie){var ue=this.viewport,me=this.layer.renderer.getHeight();return ie=me-ie,he>=ue.x&&ie>=ue.y&&he<=ue.x+ue.width&&ie<=ue.y+ue.height};var fe=new Se.a;se.prototype.castRay=function(he,ie,ue){var me=this.layer.renderer,Ce=me.viewport;return me.viewport=this.viewport,me.screenToNDC(he,ie,fe),this.camera.castRay(fe,ue),me.viewport=Ce,ue},se.prototype.prepareRender=function(){this.scene.update(),this.camera.update(),this._needsSortProgressively=!1;for(var he=0;he<this.scene.transparentList.length;he++){var ie=this.scene.transparentList[he],ue=ie.geometry;ue.needsSortVerticesProgressively&&ue.needsSortVerticesProgressively()&&(this._needsSortProgressively=!0),ue.needsSortTrianglesProgressively&&ue.needsSortTrianglesProgressively()&&(this._needsSortProgressively=!0)}this._frame=0,this._temporalSS.resetFrame()},se.prototype.render=function(he,ie){this._doRender(he,ie,this._frame),this._frame++},se.prototype.needsAccumulate=function(){return this.needsTemporalSS()||this._needsSortProgressively},se.prototype.needsTemporalSS=function(){var he=this._enableTemporalSS;return he=="auto"&&(he=this._enablePostEffect),he},se.prototype.hasDOF=function(){return this._enableDOF},se.prototype.isAccumulateFinished=function(){return this.needsTemporalSS()?this._temporalSS.isFinished():this._frame>30},se.prototype._doRender=function(he,ie,ue){var me=this.scene,Ce=this.camera;if(ue=ue||0,this._updateTransparent(he,me,Ce,ue),ie||(this._shadowMapPass.kernelPCF=this._pcfKernels[0],this._shadowMapPass.render(he,me,Ce,!0)),this._updateShadowPCFKernel(ue),he.gl.clearColor(0,0,0,0),this._enablePostEffect&&(this.needsTemporalSS()&&this._temporalSS.jitterProjection(he,Ce),this._compositor.updateNormal(he,me,Ce,this._temporalSS.getFrame())),this._updateSSAO(he,me,Ce,this._temporalSS.getFrame()),this._enablePostEffect){var Ie=this._compositor.getSourceFrameBuffer();Ie.bind(he),he.gl.clear(he.gl.DEPTH_BUFFER_BIT|he.gl.COLOR_BUFFER_BIT),he.render(me,Ce,!0,!0),Ie.unbind(he),this.needsTemporalSS()&&ie?(this._compositor.composite(he,Ce,this._temporalSS.getSourceFrameBuffer(),this._temporalSS.getFrame()),he.setViewport(this.viewport),this._temporalSS.render(he)):(he.setViewport(this.viewport),this._compositor.composite(he,Ce,null,0))}else if(this.needsTemporalSS()&&ie){var Ie=this._temporalSS.getSourceFrameBuffer();Ie.bind(he),he.saveClear(),he.clearBit=he.gl.DEPTH_BUFFER_BIT|he.gl.COLOR_BUFFER_BIT,he.render(me,Ce,!0,!0),he.restoreClear(),Ie.unbind(he),he.setViewport(this.viewport),this._temporalSS.render(he)}else he.setViewport(this.viewport),he.render(me,Ce,!0,!0)},se.prototype._updateTransparent=function(he,ie,ue,me){for(var Ce=new Ae.a,Ie=new pe.a,Fe=ue.getWorldPosition(),Re=0;Re<ie.transparentList.length;Re++){var Ue=ie.transparentList[Re],Ge=Ue.geometry;pe.a.invert(Ie,Ue.worldTransform),Ae.a.transformMat4(Ce,Fe,Ie),Ge.needsSortTriangles&&Ge.needsSortTriangles()&&Ge.doSortTriangles(Ce,me),Ge.needsSortVertices&&Ge.needsSortVertices()&&Ge.doSortVertices(Ce,me)}},se.prototype._updateSSAO=function(he,ie,ue,me){var Ce=this._enableSSAO&&this._enablePostEffect;Ce&&this._compositor.updateSSAO(he,ie,ue,this._temporalSS.getFrame());for(var Ie=0;Ie<ie.opaqueList.length;Ie++){var Fe=ie.opaqueList[Ie];Fe.renderNormal&&Fe.material[Ce?"enableTexture":"disableTexture"]("ssaoMap"),Ce&&Fe.material.set("ssaoMap",this._compositor.getSSAOTexture())}},se.prototype._updateShadowPCFKernel=function(he){for(var ie=this._pcfKernels[he%this._pcfKernels.length],ue=this.scene.opaqueList,me=0;me<ue.length;me++)ue[me].receiveShadow&&(ue[me].material.set("pcfKernel",ie),ue[me].material.define("fragment","PCF_KERNEL_SIZE",ie.length/2))},se.prototype.dispose=function(he){this._compositor.dispose(he.gl),this._temporalSS.dispose(he.gl),this._shadowMapPass.dispose(he)},se.prototype.setPostEffect=function(he,ie){var ue=this._compositor;this._enablePostEffect=he.get("enable");var me=he.getModel("bloom"),Ce=he.getModel("edge"),Ie=he.getModel("DOF",he.getModel("depthOfField")),Fe=he.getModel("SSAO",he.getModel("screenSpaceAmbientOcclusion")),Re=he.getModel("SSR",he.getModel("screenSpaceReflection")),Ue=he.getModel("FXAA"),Ge=he.getModel("colorCorrection");me.get("enable")?ue.enableBloom():ue.disableBloom(),Ie.get("enable")?ue.enableDOF():ue.disableDOF(),Re.get("enable")?ue.enableSSR():ue.disableSSR(),Ge.get("enable")?ue.enableColorCorrection():ue.disableColorCorrection(),Ce.get("enable")?ue.enableEdge():ue.disableEdge(),Ue.get("enable")?ue.enableFXAA():ue.disableFXAA(),this._enableDOF=Ie.get("enable"),this._enableSSAO=Fe.get("enable"),this._enableSSAO?ue.enableSSAO():ue.disableSSAO(),ue.setBloomIntensity(me.get("intensity")),ue.setEdgeColor(Ce.get("color")),ue.setColorLookupTexture(Ge.get("lookupTexture"),ie),ue.setExposure(Ge.get("exposure")),["radius","quality","intensity"].forEach(function(Je){ue.setSSAOParameter(Je,Fe.get(Je))}),["quality","maxRoughness"].forEach(function(Je){ue.setSSRParameter(Je,Re.get(Je))}),["quality","focalDistance","focalRange","blurRadius","fstop"].forEach(function(Je){ue.setDOFParameter(Je,Ie.get(Je))}),["brightness","contrast","saturation"].forEach(function(Je){ue.setColorCorrection(Je,Ge.get(Je))})},se.prototype.setDOFFocusOnPoint=function(he){if(this._enablePostEffect)return he>this.camera.far||he<this.camera.near?void 0:(this._compositor.setDOFParameter("focalDistance",he),!0)},se.prototype.setTemporalSuperSampling=function(he){this._enableTemporalSS=he.get("enable")},se.prototype.isLinearSpace=function(){return this._enablePostEffect},se.prototype.setRootNode=function(he){if(this.rootNode!==he){for(var ie=this.rootNode.children(),ue=0;ue<ie.length;ue++)he.add(ie[ue]);he!==this.scene&&this.scene.add(he),this.rootNode=he}},se.prototype.add=function(he){this.rootNode.add(he)},se.prototype.remove=function(he){this.rootNode.remove(he)},se.prototype.removeAll=function(he){this.rootNode.removeAll(he)},Me.a.util.extend(se.prototype,ce.a),Ne.a=se},function(He,Ne,be){"use strict";var _e=0,Me=Array.prototype,ve=Me.forEach,Ee={genGUID:function(){return++_e},relative2absolute:function(Pe,xe){if(!xe||Pe.match(/^\//))return Pe;for(var pe=Pe.split("/"),Ae=xe.split("/"),Se=pe[0];Se==="."||Se==="..";)Se===".."&&Ae.pop(),pe.shift(),Se=pe[0];return Ae.join("/")+"/"+pe.join("/")},extend:function(Pe,xe){if(xe)for(var pe in xe)xe.hasOwnProperty(pe)&&(Pe[pe]=xe[pe]);return Pe},defaults:function(Pe,xe){if(xe)for(var pe in xe)Pe[pe]===void 0&&(Pe[pe]=xe[pe]);return Pe},extendWithPropList:function(Pe,xe,pe){if(xe)for(var Ae=0;Ae<pe.length;Ae++){var Se=pe[Ae];Pe[Se]=xe[Se]}return Pe},defaultsWithPropList:function(Pe,xe,pe){if(xe)for(var Ae=0;Ae<pe.length;Ae++){var Se=pe[Ae];Pe[Se]==null&&(Pe[Se]=xe[Se])}return Pe},each:function(Pe,xe,pe){if(Pe&&xe)if(Pe.forEach&&Pe.forEach===ve)Pe.forEach(xe,pe);else if(Pe.length===+Pe.length)for(var Ae=0,Se=Pe.length;Ae<Se;Ae++)xe.call(pe,Pe[Ae],Ae,Pe);else for(var ce in Pe)Pe.hasOwnProperty(ce)&&xe.call(pe,Pe[ce],ce,Pe)},isObject:function(Pe){return Pe===Object(Pe)},isArray:function(Pe){return Array.isArray(Pe)},isArrayLike:function(Pe){return Pe?Pe.length===+Pe.length:!1},clone:function(Pe){if(Ee.isObject(Pe)){if(Ee.isArray(Pe))return Pe.slice();if(Ee.isArrayLike(Pe)){for(var xe=new Pe.constructor(Pe.length),pe=0;pe<Pe.length;pe++)xe[pe]=Pe[pe];return xe}else return Ee.extend({},Pe)}else return Pe}};Ne.a=Ee},function(He,Ne,be){"use strict";var _e=be(13),Me=be(0),ve=be.n(Me),Ee=be(33),Pe=be(1),xe=be.n(Pe),pe=xe.a.vec3,Ae=[[0,0],[1,1]],Se=_e.a.extend(function(){return{segmentScale:1,dynamic:!0,useNativeLine:!0,attributes:{position:new _e.a.Attribute("position","float",3,"POSITION"),positionPrev:new _e.a.Attribute("positionPrev","float",3),positionNext:new _e.a.Attribute("positionNext","float",3),prevPositionPrev:new _e.a.Attribute("prevPositionPrev","float",3),prevPosition:new _e.a.Attribute("prevPosition","float",3),prevPositionNext:new _e.a.Attribute("prevPositionNext","float",3),offset:new _e.a.Attribute("offset","float",1),color:new _e.a.Attribute("color","float",4,"COLOR")}}},{resetOffset:function(){this._vertexOffset=0,this._triangleOffset=0,this._itemVertexOffsets=[]},setVertexCount:function(ce){var te=this.attributes;this.vertexCount!==ce&&(te.position.init(ce),te.color.init(ce),this.useNativeLine||(te.positionPrev.init(ce),te.positionNext.init(ce),te.offset.init(ce)),ce>65535?this.indices instanceof Uint16Array&&(this.indices=new Uint32Array(this.indices)):this.indices instanceof Uint32Array&&(this.indices=new Uint16Array(this.indices)))},setTriangleCount:function(ce){this.triangleCount!==ce&&(ce===0?this.indices=null:this.indices=this.vertexCount>65535?new Uint32Array(ce*3):new Uint16Array(ce*3))},_getCubicCurveApproxStep:function(ce,te,ne,le){var se=pe.dist(ce,te)+pe.dist(ne,te)+pe.dist(le,ne),fe=1/(se+1)*this.segmentScale;return fe},getCubicCurveVertexCount:function(ce,te,ne,le){var se=this._getCubicCurveApproxStep(ce,te,ne,le),fe=Math.ceil(1/se);return this.useNativeLine?fe*2:fe*2+2},getCubicCurveTriangleCount:function(ce,te,ne,le){var se=this._getCubicCurveApproxStep(ce,te,ne,le),fe=Math.ceil(1/se);return this.useNativeLine?0:fe*2},getLineVertexCount:function(){return this.getPolylineVertexCount(Ae)},getLineTriangleCount:function(){return this.getPolylineTriangleCount(Ae)},getPolylineVertexCount:function(ce){var te;if(typeof ce=="number")te=ce;else{var ne=typeof ce[0]!="number";te=ne?ce.length:ce.length/3}return this.useNativeLine?(te-1)*2:(te-1)*2+2},getPolylineTriangleCount:function(ce){var te;if(typeof ce=="number")te=ce;else{var ne=typeof ce[0]!="number";te=ne?ce.length:ce.length/3}return this.useNativeLine?0:Math.max(te-1,0)*2},addCubicCurve:function(ce,te,ne,le,se,fe){fe==null&&(fe=1);for(var he=ce[0],ie=ce[1],ue=ce[2],me=te[0],Ce=te[1],Ie=te[2],Fe=ne[0],Re=ne[1],Ue=ne[2],Ge=le[0],Je=le[1],Qe=le[2],rt=this._getCubicCurveApproxStep(ce,te,ne,le),$e=rt*rt,qe=$e*rt,ot=3*rt,at=3*$e,ut=6*$e,nt=6*qe,lt=he-me*2+Fe,yt=ie-Ce*2+Re,ft=ue-Ie*2+Ue,ct=(me-Fe)*3-he+Ge,vt=(Ce-Re)*3-ie+Je,Ut=(Ie-Ue)*3-ue+Qe,Zt=he,en=ie,mn=ue,Bt=(me-he)*ot+lt*at+ct*qe,tn=(Ce-ie)*ot+yt*at+vt*qe,on=(Ie-ue)*ot+ft*at+Ut*qe,Mn=lt*ut+ct*nt,Dn=yt*ut+vt*nt,sn=ft*ut+Ut*nt,rn=ct*nt,Ht=vt*nt,Tt=Ut*nt,St=0,Qt=0,gt=Math.ceil(1/rt),bt=new Float32Array((gt+1)*3),bt=[],Yt=0,Qt=0;Qt<gt+1;Qt++)bt[Yt++]=Zt,bt[Yt++]=en,bt[Yt++]=mn,Zt+=Bt,en+=tn,mn+=on,Bt+=Mn,tn+=Dn,on+=sn,Mn+=rn,Dn+=Ht,sn+=Tt,St+=rt,St>1&&(Zt=Bt>0?Math.min(Zt,Ge):Math.max(Zt,Ge),en=tn>0?Math.min(en,Je):Math.max(en,Je),mn=on>0?Math.min(mn,Qe):Math.max(mn,Qe));return this.addPolyline(bt,se,fe)},addLine:function(ce,te,ne,le){return this.addPolyline([ce,te],ne,le)},addPolyline:function(ce,te,ne,le,se){if(ce.length){var fe=typeof ce[0]!="number";if(se==null&&(se=fe?ce.length:ce.length/3),!(se<2)){le==null&&(le=0),ne==null&&(ne=1),this._itemVertexOffsets.push(this._vertexOffset);var fe=typeof ce[0]!="number",he=fe?typeof te[0]!="number":te.length/4===se,ie=this.attributes.position,ue=this.attributes.positionPrev,me=this.attributes.positionNext,Ce=this.attributes.color,Ie=this.attributes.offset,Fe=this.indices,Re=this._vertexOffset,Ue,Ge;ne=Math.max(ne,.01);for(var Je=le;Je<se;Je++){if(fe)Ue=ce[Je],he?Ge=te[Je]:Ge=te;else{var Qe=Je*3;if(Ue=Ue||[],Ue[0]=ce[Qe],Ue[1]=ce[Qe+1],Ue[2]=ce[Qe+2],he){var rt=Je*4;Ge=Ge||[],Ge[0]=te[rt],Ge[1]=te[rt+1],Ge[2]=te[rt+2],Ge[3]=te[rt+3]}else Ge=te}if(this.useNativeLine?Je>1&&(ie.copy(Re,Re-1),Ce.copy(Re,Re-1),Re++):(Je<se-1&&(ue.set(Re+2,Ue),ue.set(Re+3,Ue)),Je>0&&(me.set(Re-2,Ue),me.set(Re-1,Ue)),ie.set(Re,Ue),ie.set(Re+1,Ue),Ce.set(Re,Ge),Ce.set(Re+1,Ge),Ie.set(Re,ne/2),Ie.set(Re+1,-ne/2),Re+=2),this.useNativeLine)Ce.set(Re,Ge),ie.set(Re,Ue),Re++;else if(Je>0){var $e=this._triangleOffset*3,Fe=this.indices;Fe[$e]=Re-4,Fe[$e+1]=Re-3,Fe[$e+2]=Re-2,Fe[$e+3]=Re-3,Fe[$e+4]=Re-1,Fe[$e+5]=Re-2,this._triangleOffset+=2}}if(!this.useNativeLine){var qe=this._vertexOffset,ot=this._vertexOffset+se*2;ue.copy(qe,qe+2),ue.copy(qe+1,qe+3),me.copy(ot-1,ot-3),me.copy(ot-2,ot-4)}return this._vertexOffset=Re,this._vertexOffset}}},setItemColor:function(ce,te){for(var ne=this._itemVertexOffsets[ce],le=ce<this._itemVertexOffsets.length-1?this._itemVertexOffsets[ce+1]:this._vertexOffset,se=ne;se<le;se++)this.attributes.color.set(se,te);this.dirty("color")},currentTriangleOffset:function(){return this._triangleOffset},currentVertexOffset:function(){return this._vertexOffset}});ve.a.util.defaults(Se.prototype,Ee.a),Ne.a=Se},function(He,Ne,be){"use strict";var _e=be(1),Me=be.n(_e),ve=Me.a.vec2,Ee=function(xe,pe){xe=xe||0,pe=pe||0,this.array=ve.fromValues(xe,pe),this._dirty=!0};if(Ee.prototype={constructor:Ee,add:function(xe){return ve.add(this.array,this.array,xe.array),this._dirty=!0,this},set:function(xe,pe){return this.array[0]=xe,this.array[1]=pe,this._dirty=!0,this},setArray:function(xe){return this.array[0]=xe[0],this.array[1]=xe[1],this._dirty=!0,this},clone:function(){return new Ee(this.x,this.y)},copy:function(xe){return ve.copy(this.array,xe.array),this._dirty=!0,this},cross:function(xe,pe){return ve.cross(xe.array,this.array,pe.array),xe._dirty=!0,this},dist:function(xe){return ve.dist(this.array,xe.array)},distance:function(xe){return ve.distance(this.array,xe.array)},div:function(xe){return ve.div(this.array,this.array,xe.array),this._dirty=!0,this},divide:function(xe){return ve.divide(this.array,this.array,xe.array),this._dirty=!0,this},dot:function(xe){return ve.dot(this.array,xe.array)},len:function(){return ve.len(this.array)},length:function(){return ve.length(this.array)},lerp:function(xe,pe,Ae){return ve.lerp(this.array,xe.array,pe.array,Ae),this._dirty=!0,this},min:function(xe){return ve.min(this.array,this.array,xe.array),this._dirty=!0,this},max:function(xe){return ve.max(this.array,this.array,xe.array),this._dirty=!0,this},mul:function(xe){return ve.mul(this.array,this.array,xe.array),this._dirty=!0,this},multiply:function(xe){return ve.multiply(this.array,this.array,xe.array),this._dirty=!0,this},negate:function(){return ve.negate(this.array,this.array),this._dirty=!0,this},normalize:function(){return ve.normalize(this.array,this.array),this._dirty=!0,this},random:function(xe){return ve.random(this.array,xe),this._dirty=!0,this},scale:function(xe){return ve.scale(this.array,this.array,xe),this._dirty=!0,this},scaleAndAdd:function(xe,pe){return ve.scaleAndAdd(this.array,this.array,xe.array,pe),this._dirty=!0,this},sqrDist:function(xe){return ve.sqrDist(this.array,xe.array)},squaredDistance:function(xe){return ve.squaredDistance(this.array,xe.array)},sqrLen:function(){return ve.sqrLen(this.array)},squaredLength:function(){return ve.squaredLength(this.array)},sub:function(xe){return ve.sub(this.array,this.array,xe.array),this._dirty=!0,this},subtract:function(xe){return ve.subtract(this.array,this.array,xe.array),this._dirty=!0,this},transformMat2:function(xe){return ve.transformMat2(this.array,this.array,xe.array),this._dirty=!0,this},transformMat2d:function(xe){return ve.transformMat2d(this.array,this.array,xe.array),this._dirty=!0,this},transformMat3:function(xe){return ve.transformMat3(this.array,this.array,xe.array),this._dirty=!0,this},transformMat4:function(xe){return ve.transformMat4(this.array,this.array,xe.array),this._dirty=!0,this},toString:function(){return"["+Array.prototype.join.call(this.array,",")+"]"},toArray:function(){return Array.prototype.slice.call(this.array)}},Object.defineProperty){var Pe=Ee.prototype;Object.defineProperty(Pe,"x",{get:function(){return this.array[0]},set:function(xe){this.array[0]=xe,this._dirty=!0}}),Object.defineProperty(Pe,"y",{get:function(){return this.array[1]},set:function(xe){this.array[1]=xe,this._dirty=!0}})}Ee.add=function(xe,pe,Ae){return ve.add(xe.array,pe.array,Ae.array),xe._dirty=!0,xe},Ee.set=function(xe,pe,Ae){return ve.set(xe.array,pe,Ae),xe._dirty=!0,xe},Ee.copy=function(xe,pe){return ve.copy(xe.array,pe.array),xe._dirty=!0,xe},Ee.cross=function(xe,pe,Ae){return ve.cross(xe.array,pe.array,Ae.array),xe._dirty=!0,xe},Ee.dist=function(xe,pe){return ve.distance(xe.array,pe.array)},Ee.distance=Ee.dist,Ee.div=function(xe,pe,Ae){return ve.divide(xe.array,pe.array,Ae.array),xe._dirty=!0,xe},Ee.divide=Ee.div,Ee.dot=function(xe,pe){return ve.dot(xe.array,pe.array)},Ee.len=function(xe){return ve.length(xe.array)},Ee.lerp=function(xe,pe,Ae,Se){return ve.lerp(xe.array,pe.array,Ae.array,Se),xe._dirty=!0,xe},Ee.min=function(xe,pe,Ae){return ve.min(xe.array,pe.array,Ae.array),xe._dirty=!0,xe},Ee.max=function(xe,pe,Ae){return ve.max(xe.array,pe.array,Ae.array),xe._dirty=!0,xe},Ee.mul=function(xe,pe,Ae){return ve.multiply(xe.array,pe.array,Ae.array),xe._dirty=!0,xe},Ee.multiply=Ee.mul,Ee.negate=function(xe,pe){return ve.negate(xe.array,pe.array),xe._dirty=!0,xe},Ee.normalize=function(xe,pe){return ve.normalize(xe.array,pe.array),xe._dirty=!0,xe},Ee.random=function(xe,pe){return ve.random(xe.array,pe),xe._dirty=!0,xe},Ee.scale=function(xe,pe,Ae){return ve.scale(xe.array,pe.array,Ae),xe._dirty=!0,xe},Ee.scaleAndAdd=function(xe,pe,Ae,Se){return ve.scaleAndAdd(xe.array,pe.array,Ae.array,Se),xe._dirty=!0,xe},Ee.sqrDist=function(xe,pe){return ve.sqrDist(xe.array,pe.array)},Ee.squaredDistance=Ee.sqrDist,Ee.sqrLen=function(xe){return ve.sqrLen(xe.array)},Ee.squaredLength=Ee.sqrLen,Ee.sub=function(xe,pe,Ae){return ve.subtract(xe.array,pe.array,Ae.array),xe._dirty=!0,xe},Ee.subtract=Ee.sub,Ee.transformMat2=function(xe,pe,Ae){return ve.transformMat2(xe.array,pe.array,Ae.array),xe._dirty=!0,xe},Ee.transformMat2d=function(xe,pe,Ae){return ve.transformMat2d(xe.array,pe.array,Ae.array),xe._dirty=!0,xe},Ee.transformMat3=function(xe,pe,Ae){return ve.transformMat3(xe.array,pe.array,Ae.array),xe._dirty=!0,xe},Ee.transformMat4=function(xe,pe,Ae){return ve.transformMat4(xe.array,pe.array,Ae.array),xe._dirty=!0,xe},Ne.a=Ee},function(He,Ne,be){"use strict";var _e=be(64),Me=be(11),ve=be(5),Ee=_e.a.extend({skeleton:null,joints:null,useSkinMatricesTexture:!1},function(){this.joints||(this.joints=[])},{isSkinnedMesh:function(){return!!(this.skeleton&&this.joints&&this.joints.length>0)},render:function(Pe,xe,pe){var Ae=Pe.gl;if(this.skeleton){this.skeleton.update();var Se=this.skeleton.getSubSkinMatrices(this.__uid__,this.joints);pe.setUniformOfSemantic(Ae,"SKIN_MATRIX",Se)}return _e.a.prototype.render.call(this,Pe,xe,pe)},getSkinMatricesTexture:function(){return this._skinMatricesTexture=this._skinMatricesTexture||new ve.a({type:Me.a.FLOAT,minFilter:Me.a.NEAREST,magFilter:Me.a.NEAREST,useMipmap:!1,flipY:!1}),this._skinMatricesTexture}});Ee.POINTS=Me.a.POINTS,Ee.LINES=Me.a.LINES,Ee.LINE_LOOP=Me.a.LINE_LOOP,Ee.LINE_STRIP=Me.a.LINE_STRIP,Ee.TRIANGLES=Me.a.TRIANGLES,Ee.TRIANGLE_STRIP=Me.a.TRIANGLE_STRIP,Ee.TRIANGLE_FAN=Me.a.TRIANGLE_FAN,Ee.BACK=Me.a.BACK,Ee.FRONT=Me.a.FRONT,Ee.FRONT_AND_BACK=Me.a.FRONT_AND_BACK,Ee.CW=Me.a.CW,Ee.CCW=Me.a.CCW,Ne.a=Ee},function(He,Ne,be){"use strict";var _e=be(6),Me=be(11),ve=be(21),Ee=be(66),Pe=Ee.a.isPowerOfTwo,xe=["px","nx","py","ny","pz","nz"],pe=_e.a.extend(function(){return{image:{px:null,nx:null,py:null,ny:null,pz:null,nz:null},pixels:{px:null,nx:null,py:null,ny:null,pz:null,nz:null},mipmaps:[]}},{update:function(Se){var ce=Se.gl;ce.bindTexture(ce.TEXTURE_CUBE_MAP,this._cache.get("webgl_texture")),this.updateCommon(Se);var te=this.format,ne=this.type;ce.texParameteri(ce.TEXTURE_CUBE_MAP,ce.TEXTURE_WRAP_S,this.getAvailableWrapS()),ce.texParameteri(ce.TEXTURE_CUBE_MAP,ce.TEXTURE_WRAP_T,this.getAvailableWrapT()),ce.texParameteri(ce.TEXTURE_CUBE_MAP,ce.TEXTURE_MAG_FILTER,this.getAvailableMagFilter()),ce.texParameteri(ce.TEXTURE_CUBE_MAP,ce.TEXTURE_MIN_FILTER,this.getAvailableMinFilter());var le=Se.getGLExtension("EXT_texture_filter_anisotropic");if(le&&this.anisotropic>1&&ce.texParameterf(ce.TEXTURE_CUBE_MAP,le.TEXTURE_MAX_ANISOTROPY_EXT,this.anisotropic),ne===36193){var se=Se.getGLExtension("OES_texture_half_float");se||(ne=Me.a.FLOAT)}if(this.mipmaps.length)for(var fe=this.width,he=this.height,ie=0;ie<this.mipmaps.length;ie++){var ue=this.mipmaps[ie];this._updateTextureData(ce,ue,ie,fe,he,te,ne),fe/=2,he/=2}else this._updateTextureData(ce,this,0,this.width,this.height,te,ne),!this.NPOT&&this.useMipmap&&ce.generateMipmap(ce.TEXTURE_CUBE_MAP);ce.bindTexture(ce.TEXTURE_CUBE_MAP,null)},_updateTextureData:function(Se,ce,te,ne,le,se,fe){for(var he=0;he<6;he++){var ie=xe[he],ue=ce.image&&ce.image[ie];ue?Se.texImage2D(Se.TEXTURE_CUBE_MAP_POSITIVE_X+he,te,se,se,fe,ue):Se.texImage2D(Se.TEXTURE_CUBE_MAP_POSITIVE_X+he,te,se,ne,le,0,se,fe,ce.pixels&&ce.pixels[ie])}},generateMipmap:function(Se){var ce=Se.gl;this.useMipmap&&!this.NPOT&&(ce.bindTexture(ce.TEXTURE_CUBE_MAP,this._cache.get("webgl_texture")),ce.generateMipmap(ce.TEXTURE_CUBE_MAP))},bind:function(Se){Se.gl.bindTexture(Se.gl.TEXTURE_CUBE_MAP,this.getWebGLTexture(Se))},unbind:function(Se){Se.gl.bindTexture(Se.gl.TEXTURE_CUBE_MAP,null)},isPowerOfTwo:function(){return this.image.px?Pe(this.image.px.width)&&Pe(this.image.px.height):Pe(this.width)&&Pe(this.height)},isRenderable:function(){return this.image.px?Ae(this.image.px)&&Ae(this.image.nx)&&Ae(this.image.py)&&Ae(this.image.ny)&&Ae(this.image.pz)&&Ae(this.image.nz):!!(this.width&&this.height)},load:function(Se,ce){var te=0,ne=this;return ve.a.each(Se,function(le,se){var fe=new Image;ce&&(fe.crossOrigin=ce),fe.onload=function(){te--,te===0&&(ne.dirty(),ne.trigger("success",ne)),fe.onload=null},fe.onerror=function(){te--,fe.onerror=null},te++,fe.src=le,ne.image[se]=fe}),this}});Object.defineProperty(pe.prototype,"width",{get:function(){return this.image&&this.image.px?this.image.px.width:this._width},set:function(Se){this.image&&this.image.px?console.warn("Texture from image can't set width"):(this._width!==Se&&this.dirty(),this._width=Se)}}),Object.defineProperty(pe.prototype,"height",{get:function(){return this.image&&this.image.px?this.image.px.height:this._height},set:function(Se){this.image&&this.image.px?console.warn("Texture from image can't set height"):(this._height!==Se&&this.dirty(),this._height=Se)}});function Ae(Se){return Se.nodeName==="CANVAS"||Se.nodeName==="VIDEO"||Se.complete}Ne.a=pe},function(He,Ne,be){"use strict";Ne.a={defaultOption:{shading:null,realisticMaterial:{textureTiling:1,textureOffset:0,detailTexture:null},lambertMaterial:{textureTiling:1,textureOffset:0,detailTexture:null},colorMaterial:{textureTiling:1,textureOffset:0,detailTexture:null},hatchingMaterial:{textureTiling:1,textureOffset:0,paperColor:"#fff"}}}},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve={};ve.getFormattedLabel=function(Ee,Pe,xe,pe,Ae){xe=xe||"normal";var Se=Ee.getData(pe),ce=Se.getItemModel(Pe),te=Ee.getDataParams(Pe,pe);Ae!=null&&te.value instanceof Array&&(te.value=te.value[Ae]);var ne=ce.get(xe==="normal"?["label","formatter"]:["emphasis","label","formatter"]);ne==null&&(ne=ce.get(["label","formatter"]));var le;return typeof ne=="function"?(te.status=xe,le=ne(te)):typeof ne=="string"&&(le=Me.a.format.formatTpl(ne,te)),le},ve.normalizeToArray=function(Ee){return Ee instanceof Array?Ee:Ee==null?[]:[Ee]},Ne.a=ve},function(He,Ne,be){"use strict";var _e=be(8),Me=be(4),ve=be(50),Ee=be(9),Pe=be(1),xe=be.n(Pe),pe=be(15),Ae=xe.a.mat4,Se=0,ce=_e.a.extend({name:"",position:null,rotation:null,scale:null,worldTransform:null,localTransform:null,autoUpdateLocalTransform:!0,_parent:null,_scene:null,_needsUpdateWorldTransform:!0,_inIterating:!1,__depth:0},function(){this.name||(this.name=(this.type||"NODE")+"_"+Se++),this.position||(this.position=new Me.a),this.rotation||(this.rotation=new ve.a),this.scale||(this.scale=new Me.a(1,1,1)),this.worldTransform=new Ee.a,this.localTransform=new Ee.a,this._children=[]},{target:null,invisible:!1,isSkinnedMesh:function(){return!1},isRenderable:function(){return!1},setName:function(te){var ne=this._scene;if(ne){var le=ne._nodeRepository;delete le[this.name],le[te]=this}this.name=te},add:function(te){this._inIterating&&console.warn("Add operation can cause unpredictable error when in iterating");var ne=te._parent;if(ne!==this){ne&&ne.remove(te),te._parent=this,this._children.push(te);var le=this._scene;le&&le!==te.scene&&te.traverse(this._addSelfToScene,this),te._needsUpdateWorldTransform=!0}},remove:function(te){this._inIterating&&console.warn("Remove operation can cause unpredictable error when in iterating");var ne=this._children,le=ne.indexOf(te);le<0||(ne.splice(le,1),te._parent=null,this._scene&&te.traverse(this._removeSelfFromScene,this))},removeAll:function(){for(var te=this._children,ne=0;ne<te.length;ne++)te[ne]._parent=null,this._scene&&te[ne].traverse(this._removeSelfFromScene,this);this._children=[]},getScene:function(){return this._scene},getParent:function(){return this._parent},_removeSelfFromScene:function(te){te._scene.removeFromScene(te),te._scene=null},_addSelfToScene:function(te){this._scene.addToScene(te),te._scene=this._scene},isAncestor:function(te){for(var ne=te._parent;ne;){if(ne===this)return!0;ne=ne._parent}return!1},children:function(){return this._children.slice()},childAt:function(te){return this._children[te]},getChildByName:function(te){for(var ne=this._children,le=0;le<ne.length;le++)if(ne[le].name===te)return ne[le]},getDescendantByName:function(te){for(var ne=this._children,le=0;le<ne.length;le++){var se=ne[le];if(se.name===te)return se;var fe=se.getDescendantByName(te);if(fe)return fe}},queryNode:function(te){if(te){for(var ne=te.split("/"),le=this,se=0;se<ne.length;se++){var fe=ne[se];if(fe){for(var he=!1,ie=le._children,ue=0;ue<ie.length;ue++){var me=ie[ue];if(me.name===fe){le=me,he=!0;break}}if(!he)return}}return le}},getPath:function(te){if(!this._parent)return"/";for(var ne=this._parent,le=this.name;ne._parent&&(le=ne.name+"/"+le,ne._parent!=te);)ne=ne._parent;return!ne._parent&&te?null:le},traverse:function(te,ne,le){this._inIterating=!0,(!le||le.call(ne,this))&&te.call(ne,this);for(var se=this._children,fe=0,he=se.length;fe<he;fe++)se[fe].traverse(te,ne,le);this._inIterating=!1},eachChild:function(te,ne,le){this._inIterating=!0;for(var se=this._children,fe=le==null,he=0,ie=se.length;he<ie;he++){var ue=se[he];(fe||ue.constructor===le)&&te.call(ne,ue,he)}this._inIterating=!1},setLocalTransform:function(te){Ae.copy(this.localTransform.array,te.array),this.decomposeLocalTransform()},decomposeLocalTransform:function(te){var ne=te?null:this.scale;this.localTransform.decomposeMatrix(ne,this.rotation,this.position)},setWorldTransform:function(te){Ae.copy(this.worldTransform.array,te.array),this.decomposeWorldTransform()},decomposeWorldTransform:function(){var te=Ae.create();return function(ne){var le=this.localTransform,se=this.worldTransform;this._parent?(Ae.invert(te,this._parent.worldTransform.array),Ae.multiply(le.array,te,se.array)):Ae.copy(le.array,se.array);var fe=ne?null:this.scale;le.decomposeMatrix(fe,this.rotation,this.position)}}(),transformNeedsUpdate:function(){return this.position._dirty||this.rotation._dirty||this.scale._dirty},updateLocalTransform:function(){var te=this.position,ne=this.rotation,le=this.scale;if(this.transformNeedsUpdate()){var se=this.localTransform.array;Ae.fromRotationTranslation(se,ne.array,te.array),Ae.scale(se,se,le.array),ne._dirty=!1,le._dirty=!1,te._dirty=!1,this._needsUpdateWorldTransform=!0}},_updateWorldTransformTopDown:function(){var te=this.localTransform.array,ne=this.worldTransform.array;this._parent?Ae.multiplyAffine(ne,this._parent.worldTransform.array,te):Ae.copy(ne,te)},updateWorldTransform:function(){for(var te=this;te&&te.getParent()&&te.getParent().transformNeedsUpdate();)te=te.getParent();te.update()},update:function(te){this.autoUpdateLocalTransform?this.updateLocalTransform():te=!0,(te||this._needsUpdateWorldTransform)&&(this._updateWorldTransformTopDown(),te=!0,this._needsUpdateWorldTransform=!1);for(var ne=this._children,le=0,se=ne.length;le<se;le++)ne[le].update(te)},getBoundingBox:function(){function te(fe){return!fe.invisible&&fe.geometry}var ne=new pe.a,le=new Ee.a,se=new Ee.a;return function(fe,he){return he=he||new pe.a,fe=fe||te,this._parent?Ee.a.invert(se,this._parent.worldTransform):Ee.a.identity(se),this.traverse(function(ie){ie.geometry&&ie.geometry.boundingBox&&(ne.copy(ie.geometry.boundingBox),Ee.a.multiply(le,se,ie.worldTransform),ne.applyTransform(le),he.union(ne))},this,te),he}}(),getWorldPosition:function(te){this.transformNeedsUpdate()&&this.updateWorldTransform();var ne=this.worldTransform.array;if(te){var le=te.array;return le[0]=ne[12],le[1]=ne[13],le[2]=ne[14],te}else return new Me.a(ne[12],ne[13],ne[14])},clone:function(){var te=new this.constructor,ne=this._children;te.setName(this.name),te.position.copy(this.position),te.rotation.copy(this.rotation),te.scale.copy(this.scale);for(var le=0;le<ne.length;le++)te.add(ne[le].clone());return te},rotateAround:function(){var te=new Me.a,ne=new Ee.a;return function(le,se,fe){te.copy(this.position).subtract(le);var he=this.localTransform;he.identity(),he.translate(le),he.rotate(fe,se),ne.fromRotationTranslation(this.rotation,te),he.multiply(ne),he.scale(this.scale),this.decomposeLocalTransform(),this._needsUpdateWorldTransform=!0}}(),lookAt:function(){var te=new Ee.a;return function(ne,le){te.lookAt(this.position,ne,le||this.localTransform.y).invert(),this.setLocalTransform(te),this.target=ne}}()});Ne.a=ce},function(He,Ne,be){"use strict";var _e=be(28),Me=be(19),ve=be(51),Ee=be(15),Pe=be(21),xe={};function pe(ce){var te=[],ne=Object.keys(ce);ne.sort();for(var le=0;le<ne.length;le++){var se=ce[le];te.push(se+" "+ce[se])}var fe=te.join(`
|
|
|
`);if(xe[fe])return xe[fe];var he=Pe.a.genGUID();return xe[fe]=he,he}var Ae=_e.a.extend(function(){return{material:null,autoUpdate:!0,opaqueList:[],transparentList:[],lights:[],viewBoundingBoxLastFrame:new Ee.a,shadowUniforms:{},_cameraList:[],_lightUniforms:{},_previousLightNumber:{},_lightNumber:{},_lightProgramKeys:{},_opaqueObjectCount:0,_transparentObjectCount:0,_nodeRepository:{}}},function(){this._scene=this},{addToScene:function(ce){ce instanceof ve.a&&(this._cameraList.length>0&&console.warn("Found multiple camera in one scene. Use the fist one."),this._cameraList.push(ce)),ce.name&&(this._nodeRepository[ce.name]=ce)},removeFromScene:function(ce){if(ce instanceof ve.a){var te=this._cameraList.indexOf(ce);te>=0&&this._cameraList.splice(te,1)}ce.name&&delete this._nodeRepository[ce.name]},getNode:function(ce){return this._nodeRepository[ce]},cloneNode:function(ce){var te=ce.clone(),ne={},le=function(fe,he){fe.skeleton&&(he.skeleton=fe.skeleton.clone(ce,te),he.joints=fe.joints.slice()),fe.material&&(ne[fe.material.__uid__]={oldMat:fe.material});for(var ie=0;ie<fe._children.length;ie++)le(fe._children[ie],he._children[ie])};le(ce,te);for(var se in ne)ne[se].newMat=ne[se].oldMat.clone();return te.traverse(function(fe){fe.material&&(fe.material=ne[fe.material.__uid__].newMat)}),te},update:function(ce,te){if(this.autoUpdate||ce){_e.a.prototype.update.call(this,ce);var ne=this.lights,le=this.material&&this.material.transparent;if(this._opaqueObjectCount=0,this._transparentObjectCount=0,ne.length=0,this._updateRenderList(this,le),this.opaqueList.length=this._opaqueObjectCount,this.transparentList.length=this._transparentObjectCount,!te){this._previousLightNumber=this._lightNumber;for(var se={},fe=0;fe<ne.length;fe++){var he=ne[fe],ie=he.group;se[ie]||(se[ie]={}),se[ie][he.type]=se[ie][he.type]||0,se[ie][he.type]++}this._lightNumber=se;for(var ue in se)this._lightProgramKeys[ue]=pe(se[ue]);this._updateLightUniforms()}}},getMainCamera:function(){return this._cameraList[0]},_updateRenderList:function(ce,te){if(!ce.invisible)for(var ne=0;ne<ce._children.length;ne++){var le=ce._children[ne];le instanceof Me.a?this.lights.push(le):le.isRenderable()&&(le.material.transparent||te?this.transparentList[this._transparentObjectCount++]=le:this.opaqueList[this._opaqueObjectCount++]=le),le._children.length>0&&this._updateRenderList(le)}},_updateLightUniforms:function(){var ce=this.lights;ce.sort(Se);var te=this._lightUniforms;for(var ne in te)for(var le in te[ne])te[ne][le].value.length=0;for(var se=0;se<ce.length;se++){var fe=ce[se],ne=fe.group;for(var le in fe.uniformTemplates){var he=fe.uniformTemplates[le],ie=he.value(fe);if(ie!=null){te[ne]||(te[ne]={}),te[ne][le]||(te[ne][le]={type:"",value:[]});var ue=te[ne][le];switch(ue.type=he.type+"v",he.type){case"1i":case"1f":case"t":ue.value.push(ie);break;case"2f":case"3f":case"4f":for(var me=0;me<ie.length;me++)ue.value.push(ie[me]);break;default:console.error("Unkown light uniform type "+he.type)}}}}},getLightGroups:function(){var ce=[];for(var te in this._lightNumber)ce.push(te);return ce},getNumberChangedLightGroups:function(){var ce=[];for(var te in this._lightNumber)this.isLightNumberChanged(te)&&ce.push(te);return ce},isLightNumberChanged:function(ce){var te=this._previousLightNumber,ne=this._lightNumber;for(var le in ne[ce])if(!te[ce]||ne[ce][le]!==te[ce][le])return!0;for(var le in te[ce])if(!ne[ce]||ne[ce][le]!==te[ce][le])return!0;return!1},getLightsNumbers:function(ce){return this._lightNumber[ce]},getProgramKey:function(ce){return this._lightProgramKeys[ce]},setLightUniforms:function(){function ce(te,ne,le){for(var se in te){var fe=te[se];if(fe.type==="tv"){if(!ne.hasUniform(se))continue;for(var he=[],ie=0;ie<fe.value.length;ie++){var ue=fe.value[ie],me=ne.takeCurrentTextureSlot(le,ue);he.push(me)}ne.setUniform(le.gl,"1iv",se,he)}else ne.setUniform(le.gl,fe.type,se,fe.value)}}return function(te,ne,le){ce(this._lightUniforms[ne],te,le),ce(this.shadowUniforms,te,le)}}(),dispose:function(){this.material=null,this.opaqueList=[],this.transparentList=[],this.lights=[],this._lightUniforms={},this._lightNumber={},this._nodeRepository={}}});function Se(ce,te){if(te.castShadow&&!ce.castShadow)return!0}Ne.a=Ae},function(He,Ne,be){"use strict";var _e=be(51),Me=_e.a.extend({left:-1,right:1,near:-1,far:1,top:1,bottom:-1},{updateProjectionMatrix:function(){this.projectionMatrix.ortho(this.left,this.right,this.bottom,this.top,this.near,this.far)},decomposeProjectionMatrix:function(){var ve=this.projectionMatrix.array;this.left=(-1-ve[12])/ve[0],this.right=(1-ve[12])/ve[0],this.top=(1-ve[13])/ve[5],this.bottom=(-1-ve[13])/ve[5],this.near=-(-1-ve[14])/ve[10],this.far=-(1-ve[14])/ve[10]},clone:function(){var ve=_e.a.prototype.clone.call(this);return ve.left=this.left,ve.right=this.right,ve.near=this.near,ve.far=this.far,ve.top=this.top,ve.bottom=this.bottom,ve}});Ne.a=Me},function(He,Ne,be){"use strict";Ne.a={defaultOption:{postEffect:{enable:!1,bloom:{enable:!0,intensity:.1},depthOfField:{enable:!1,focalRange:20,focalDistance:50,blurRadius:10,fstop:2.8,quality:"medium"},screenSpaceAmbientOcclusion:{enable:!1,radius:2,quality:"medium",intensity:1},screenSpaceReflection:{enable:!1,quality:"medium",maxRoughness:.8},colorCorrection:{enable:!0,exposure:0,brightness:0,contrast:1,saturation:1,lookupTexture:""},edge:{enable:!1},FXAA:{enable:!1}},temporalSuperSampling:{enable:"auto"}}}},function(He,Ne,be){"use strict";Ne.a={defaultOption:{light:{main:{shadow:!1,shadowQuality:"high",color:"#fff",intensity:1,alpha:0,beta:0},ambient:{color:"#fff",intensity:.2},ambientCubemap:{texture:null,exposure:1,diffuseIntensity:.5,specularIntensity:.5}}}}},function(He,Ne,be){"use strict";Ne.a={convertToDynamicArray:function(_e){_e&&this.resetOffset();var Me=this.attributes;for(var ve in Me)_e||!Me[ve].value?Me[ve].value=[]:Me[ve].value=Array.prototype.slice.call(Me[ve].value);_e||!this.indices?this.indices=[]:this.indices=Array.prototype.slice.call(this.indices)},convertToTypedArray:function(){var _e=this.attributes;for(var Me in _e)_e[Me].value&&_e[Me].value.length>0?_e[Me].value=new Float32Array(_e[Me].value):_e[Me].value=null;this.indices&&this.indices.length>0&&(this.indices=this.vertexCount>65535?new Uint32Array(this.indices):new Uint16Array(this.indices)),this.dirty()}}},function(He,Ne,be){"use strict";var _e=be(2),Me=be(57),ve=be(56),Ee=be(0),Pe=be.n(Ee);function xe(){}xe.prototype={constructor:xe,setScene:function(pe){this._scene=pe,this._skybox&&this._skybox.attachScene(this._scene)},initLight:function(pe){this._lightRoot=pe,this.mainLight=new _e.a.DirectionalLight({shadowBias:.005}),this.ambientLight=new _e.a.AmbientLight,pe.add(this.mainLight),pe.add(this.ambientLight)},dispose:function(){this._lightRoot&&(this._lightRoot.remove(this.mainLight),this._lightRoot.remove(this.ambientLight))},updateLight:function(pe){var Ae=this.mainLight,Se=this.ambientLight,ce=pe.getModel("light"),te=ce.getModel("main"),ne=ce.getModel("ambient");Ae.intensity=te.get("intensity"),Se.intensity=ne.get("intensity"),Ae.color=_e.a.parseColor(te.get("color")).slice(0,3),Se.color=_e.a.parseColor(ne.get("color")).slice(0,3);var le=te.get("alpha")||0,se=te.get("beta")||0;Ae.position.setArray(_e.a.directionFromAlphaBeta(le,se)),Ae.lookAt(_e.a.Vector3.ZERO),Ae.castShadow=te.get("shadow"),Ae.shadowResolution=_e.a.getShadowResolution(te.get("shadowQuality"))},updateAmbientCubemap:function(pe,Ae,Se){var ce=Ae.getModel("light.ambientCubemap"),te=ce.get("texture");if(te){this._cubemapLightsCache=this._cubemapLightsCache||{};var ne=this._cubemapLightsCache[te];if(!ne){var le=this;ne=this._cubemapLightsCache[te]=_e.a.createAmbientCubemap(ce.option,pe,Se,function(){le._skybox instanceof Me.a&&le._skybox.setEnvironmentMap(ne.specular.cubemap),Se.getZr().refresh()})}this._lightRoot.add(ne.diffuse),this._lightRoot.add(ne.specular),this._currentCubemapLights=ne}else this._currentCubemapLights&&(this._lightRoot.remove(this._currentCubemapLights.diffuse),this._lightRoot.remove(this._currentCubemapLights.specular),this._currentCubemapLights=null)},updateSkybox:function(pe,Ae,Se){var ce=Ae.get("environment"),te=this;function ne(){return te._skybox instanceof Me.a||(te._skybox&&te._skybox.dispose(pe),te._skybox=new Me.a),te._skybox}function le(){return te._skybox instanceof ve.a||(te._skybox&&te._skybox.dispose(pe),te._skybox=new ve.a),te._skybox}if(ce&&ce!=="none")if(ce==="auto")if(this._currentCubemapLights){var se=ne(),fe=this._currentCubemapLights.specular.cubemap;se.setEnvironmentMap(fe),this._scene&&se.attachScene(this._scene),se.material.set("lod",2)}else this._skybox&&this._skybox.detachScene();else if(typeof ce=="object"&&ce.colorStops||typeof ce=="string"&&Pe.a.color.parse(ce)){var he=le(),ie=new _e.a.Texture2D({anisotropic:8,flipY:!1});he.setEnvironmentMap(ie);var ue=ie.image=document.createElement("canvas");ue.width=ue.height=16;var me=ue.getContext("2d"),Ce=new Pe.a.graphic.Rect({shape:{x:0,y:0,width:16,height:16},style:{fill:ce}});Ce.brush(me),he.attachScene(this._scene)}else{var he=le(),ie=_e.a.loadTexture(ce,Se,{anisotropic:8,flipY:!1});he.setEnvironmentMap(ie),he.attachScene(this._scene)}else this._skybox&&this._skybox.detachScene(this._scene),this._skybox=null;var Ie=Ae.coordinateSystem;if(this._skybox)if(Ie&&Ie.viewGL&&ce!=="auto"&&!(ce.match&&ce.match(/.hdr$/))){var Fe=Ie.viewGL.isLinearSpace()?"define":"undefine";this._skybox.material[Fe]("fragment","SRGB_DECODE")}else this._skybox.material.undefine("fragment","SRGB_DECODE")}},Ne.a=xe},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e);function ve(Ee,Pe){var xe=[];return Me.a.util.each(Ee.dimensions,function(pe){var Ae=Ee.getDimensionInfo(pe),Se=Ae.otherDims,ce=Se[Pe];ce!=null&&ce!==!1&&(xe[ce]=Ae.name)}),xe}Ne.a=function(Ee,Pe,xe){function pe(fe){var he=!0,ie=[],ue=ve(Ae,"tooltip");ue.length?Me.a.util.each(ue,function(Ce){me(Ae.get(Ce,Pe),Ce)}):Me.a.util.each(fe,me);function me(Ce,Ie){var Fe=Ae.getDimensionInfo(Ie);if(!(!Fe||Fe.otherDims.tooltip===!1)){var Re=Fe.type,Ue=(he?"- "+(Fe.tooltipName||Fe.name)+": ":"")+(Re==="ordinal"?Ce+"":Re==="time"?xe?"":Me.a.format.formatTime("yyyy/MM/dd hh:mm:ss",Ce):Me.a.format.addCommas(Ce));Ue&&ie.push(Me.a.format.encodeHTML(Ue))}}return(he?"<br/>":"")+ie.join(he?"<br/>":", ")}var Ae=Ee.getData(),Se=Ee.getRawValue(Pe),ce=Me.a.util.isArray(Se)?pe(Se):Me.a.format.encodeHTML(Me.a.format.addCommas(Se)),te=Ae.getName(Pe),ne=Ae.getItemVisual(Pe,"color");Me.a.util.isObject(ne)&&ne.colorStops&&(ne=(ne.colorStops[0]||{}).color),ne=ne||"transparent";var le=Me.a.format.getTooltipMarker(ne),se=Ee.name;return se==="\0-"&&(se=""),se=se?Me.a.format.encodeHTML(se)+(xe?": ":"<br/>"):"",xe?le+se+ce:se+le+(te?Me.a.format.encodeHTML(te)+": "+ce:ce)}},function(He,Ne,be){"use strict";var _e=be(51),Me=_e.a.extend({fov:50,aspect:1,near:.1,far:2e3},{updateProjectionMatrix:function(){var ve=this.fov/180*Math.PI;this.projectionMatrix.perspective(ve,this.aspect,this.near,this.far)},decomposeProjectionMatrix:function(){var ve=this.projectionMatrix.array,Ee=Math.atan(1/ve[5])*2;this.fov=Ee/Math.PI*180,this.aspect=ve[5]/ve[0],this.near=ve[14]/(ve[10]-1),this.far=ve[14]/(ve[10]+1)},clone:function(){var ve=_e.a.prototype.clone.call(this);return ve.fov=this.fov,ve.aspect=this.aspect,ve.near=this.near,ve.far=this.far,ve}});Ne.a=Me},function(He,Ne,be){"use strict";var _e=be(13),Me=be(15),ve=_e.a.extend({dynamic:!1,widthSegments:1,heightSegments:1},function(){this.build()},{build:function(){for(var Ee=this.heightSegments,Pe=this.widthSegments,xe=this.attributes,pe=[],Ae=[],Se=[],ce=[],te=0;te<=Ee;te++)for(var ne=te/Ee,le=0;le<=Pe;le++){var se=le/Pe;if(pe.push([2*se-1,2*ne-1,0]),Ae&&Ae.push([se,ne]),Se&&Se.push([0,0,1]),le<Pe&&te<Ee){var fe=le+te*(Pe+1);ce.push([fe,fe+1,fe+Pe+1]),ce.push([fe+Pe+1,fe+1,fe+Pe+2])}}xe.position.fromArray(pe),xe.texcoord0.fromArray(Ae),xe.normal.fromArray(Se),this.initIndicesFromArray(ce),this.boundingBox=new Me.a,this.boundingBox.min.set(-1,-1,0),this.boundingBox.max.set(1,1,0)}});Ne.a=ve},function(He,Ne,be){"use strict";Ne.a={defaultOption:{viewControl:{projection:"perspective",autoRotate:!1,autoRotateDirection:"cw",autoRotateSpeed:10,autoRotateAfterStill:3,damping:.8,rotateSensitivity:1,zoomSensitivity:1,panSensitivity:1,panMouseButton:"middle",rotateMouseButton:"left",distance:150,minDistance:40,maxDistance:400,orthographicSize:150,maxOrthographicSize:400,minOrthographicSize:20,center:[0,0,0],alpha:0,beta:0,minAlpha:-90,maxAlpha:90}},setView:function(_e){_e=_e||{},this.option.viewControl=this.option.viewControl||{},_e.alpha!=null&&(this.option.viewControl.alpha=_e.alpha),_e.beta!=null&&(this.option.viewControl.beta=_e.beta),_e.distance!=null&&(this.option.viewControl.distance=_e.distance),_e.center!=null&&(this.option.viewControl.center=_e.center)}}},function(He,Ne,be){"use strict";var _e=be(8),Me=be(23),ve=be(4),Ee=be(50),Pe=be(3),xe=Pe.a.firstNotNull,pe={left:0,middle:1,right:2};function Ae(ce){return ce instanceof Array||(ce=[ce,ce]),ce}var Se=_e.a.extend(function(){return{zr:null,viewGL:null,_center:new ve.a,minDistance:.5,maxDistance:1.5,maxOrthographicSize:300,minOrthographicSize:30,minAlpha:-90,maxAlpha:90,minBeta:-1/0,maxBeta:1/0,autoRotateAfterStill:0,autoRotateDirection:"cw",autoRotateSpeed:60,damping:.8,rotateSensitivity:1,zoomSensitivity:1,panSensitivity:1,panMouseButton:"middle",rotateMouseButton:"left",_mode:"rotate",_camera:null,_needsUpdate:!1,_rotating:!1,_phi:0,_theta:0,_mouseX:0,_mouseY:0,_rotateVelocity:new Me.a,_panVelocity:new Me.a,_distance:500,_zoomSpeed:0,_stillTimeout:0,_animators:[]}},function(){["_mouseDownHandler","_mouseWheelHandler","_mouseMoveHandler","_mouseUpHandler","_pinchHandler","_contextMenuHandler","_update"].forEach(function(ce){this[ce]=this[ce].bind(this)},this)},{init:function(){var ce=this.zr;ce&&(ce.on("mousedown",this._mouseDownHandler),ce.on("globalout",this._mouseUpHandler),ce.on("mousewheel",this._mouseWheelHandler),ce.on("pinch",this._pinchHandler),ce.animation.on("frame",this._update),ce.dom.addEventListener("contextmenu",this._contextMenuHandler))},dispose:function(){var ce=this.zr;ce&&(ce.off("mousedown",this._mouseDownHandler),ce.off("mousemove",this._mouseMoveHandler),ce.off("mouseup",this._mouseUpHandler),ce.off("mousewheel",this._mouseWheelHandler),ce.off("pinch",this._pinchHandler),ce.off("globalout",this._mouseUpHandler),ce.dom.removeEventListener("contextmenu",this._contextMenuHandler),ce.animation.off("frame",this._update)),this.stopAllAnimation()},getDistance:function(){return this._distance},setDistance:function(ce){this._distance=ce,this._needsUpdate=!0},getOrthographicSize:function(){return this._orthoSize},setOrthographicSize:function(ce){this._orthoSize=ce,this._needsUpdate=!0},getAlpha:function(){return this._theta/Math.PI*180},getBeta:function(){return-this._phi/Math.PI*180},getCenter:function(){return this._center.toArray()},setAlpha:function(ce){ce=Math.max(Math.min(this.maxAlpha,ce),this.minAlpha),this._theta=ce/180*Math.PI,this._needsUpdate=!0},setBeta:function(ce){ce=Math.max(Math.min(this.maxBeta,ce),this.minBeta),this._phi=-ce/180*Math.PI,this._needsUpdate=!0},setCenter:function(ce){this._center.setArray(ce)},setViewGL:function(ce){this.viewGL=ce},getCamera:function(){return this.viewGL.camera},setFromViewControlModel:function(ce,te){te=te||{};var ne=te.baseDistance||0,le=te.baseOrthoSize||1,se=ce.get("projection");se!=="perspective"&&se!=="orthographic"&&se!=="isometric"&&(console.error("Unkown projection type %s, use perspective projection instead.",se),se="perspective"),this._projection=se,this.viewGL.setProjection(se);var fe=ce.get("distance")+ne,he=ce.get("orthographicSize")+le;[["damping",.8],["autoRotate",!1],["autoRotateAfterStill",3],["autoRotateDirection","cw"],["autoRotateSpeed",10],["minDistance",30],["maxDistance",400],["minOrthographicSize",30],["maxOrthographicSize",300],["minAlpha",-90],["maxAlpha",90],["minBeta",-1/0],["maxBeta",1/0],["rotateSensitivity",1],["zoomSensitivity",1],["panSensitivity",1],["panMouseButton","left"],["rotateMouseButton","middle"]].forEach(function(Fe){this[Fe[0]]=xe(ce.get(Fe[0]),Fe[1])},this),this.minDistance+=ne,this.maxDistance+=ne,this.minOrthographicSize+=le,this.maxOrthographicSize+=le;var ie=ce.ecModel,ue={};["animation","animationDurationUpdate","animationEasingUpdate"].forEach(function(Fe){ue[Fe]=xe(ce.get(Fe),ie&&ie.get(Fe))});var me=xe(te.alpha,ce.get("alpha"))||0,Ce=xe(te.beta,ce.get("beta"))||0,Ie=xe(te.center,ce.get("center"))||[0,0,0];ue.animation&&ue.animationDurationUpdate>0&&this._notFirst?this.animateTo({alpha:me,beta:Ce,center:Ie,distance:fe,targetOrthographicSize:he,easing:ue.animationEasingUpdate,duration:ue.animationDurationUpdate}):(this.setDistance(fe),this.setAlpha(me),this.setBeta(Ce),this.setCenter(Ie),this.setOrthographicSize(he)),this._notFirst=!0,this._validateProperties()},_validateProperties:function(){pe[this.panMouseButton]==null&&console.error("Unkown panMouseButton %s. It should be left|middle|right",this.panMouseButton),pe[this.rotateMouseButton]==null&&console.error("Unkown rotateMouseButton %s. It should be left|middle|right",this.rotateMouseButton),this.autoRotateDirection!=="cw"&&this.autoRotateDirection!=="ccw"&&console.error("Unkown autoRotateDirection %s. It should be cw|ccw",this.autoRotateDirection)},animateTo:function(ce){var te=this.zr,ne=this,le={},se={};return ce.distance!=null&&(le.distance=this.getDistance(),se.distance=ce.distance),ce.orthographicSize!=null&&(le.orthographicSize=this.getOrthographicSize(),se.orthographicSize=ce.orthographicSize),ce.alpha!=null&&(le.alpha=this.getAlpha(),se.alpha=ce.alpha),ce.beta!=null&&(le.beta=this.getBeta(),se.beta=ce.beta),ce.center!=null&&(le.center=this.getCenter(),se.center=ce.center),this._addAnimator(te.animation.animate(le).when(ce.duration||1e3,se).during(function(){le.alpha!=null&&ne.setAlpha(le.alpha),le.beta!=null&&ne.setBeta(le.beta),le.distance!=null&&ne.setDistance(le.distance),le.center!=null&&ne.setCenter(le.center),le.orthographicSize!=null&&ne.setOrthographicSize(le.orthographicSize),ne._needsUpdate=!0})).start(ce.easing||"linear")},stopAllAnimation:function(){for(var ce=0;ce<this._animators.length;ce++)this._animators[ce].stop();this._animators.length=0},_isAnimating:function(){return this._animators.length>0},_update:function(ce){if(this._rotating){var te=(this.autoRotateDirection==="cw"?1:-1)*this.autoRotateSpeed/180*Math.PI;this._phi-=te*ce/1e3,this._needsUpdate=!0}else this._rotateVelocity.len()>0&&(this._needsUpdate=!0);(Math.abs(this._zoomSpeed)>.1||this._panVelocity.len()>0)&&(this._needsUpdate=!0),this._needsUpdate&&(ce=Math.min(ce,50),this._updateDistanceOrSize(ce),this._updatePan(ce),this._updateRotate(ce),this._updateTransform(),this.getCamera().update(),this.zr&&this.zr.refresh(),this.trigger("update"),this._needsUpdate=!1)},_updateRotate:function(ce){var te=this._rotateVelocity;this._phi=te.y*ce/20+this._phi,this._theta=te.x*ce/20+this._theta,this.setAlpha(this.getAlpha()),this.setBeta(this.getBeta()),this._vectorDamping(te,Math.pow(this.damping,ce/16))},_updateDistanceOrSize:function(ce){this._projection==="perspective"?this._setDistance(this._distance+this._zoomSpeed*ce/20):this._setOrthoSize(this._orthoSize+this._zoomSpeed*ce/20),this._zoomSpeed*=Math.pow(this.damping,ce/16)},_setDistance:function(ce){this._distance=Math.max(Math.min(ce,this.maxDistance),this.minDistance)},_setOrthoSize:function(ce){this._orthoSize=Math.max(Math.min(ce,this.maxOrthographicSize),this.minOrthographicSize);var te=this.getCamera(),ne=this._orthoSize,le=ne/this.viewGL.viewport.height*this.viewGL.viewport.width;te.left=-le/2,te.right=le/2,te.top=ne/2,te.bottom=-ne/2},_updatePan:function(ce){var te=this._panVelocity,ne=this._distance,le=this.getCamera(),se=le.worldTransform.y,fe=le.worldTransform.x;this._center.scaleAndAdd(fe,-te.x*ne/200).scaleAndAdd(se,-te.y*ne/200),this._vectorDamping(te,0)},_updateTransform:function(){var ce=this.getCamera(),te=new ve.a,ne=this._theta+Math.PI/2,le=this._phi+Math.PI/2,se=Math.sin(ne);te.x=se*Math.cos(le),te.y=-Math.cos(ne),te.z=se*Math.sin(le),ce.position.copy(this._center).scaleAndAdd(te,this._distance),ce.rotation.identity().rotateY(-this._phi).rotateX(-this._theta)},_startCountingStill:function(){clearTimeout(this._stillTimeout);var ce=this.autoRotateAfterStill,te=this;!isNaN(ce)&&ce>0&&(this._stillTimeout=setTimeout(function(){te._rotating=!0},ce*1e3))},_vectorDamping:function(ce,te){var ne=ce.len();ne=ne*te,ne<1e-4&&(ne=0),ce.normalize().scale(ne)},_decomposeTransform:function(){if(this.getCamera()){this.getCamera().updateWorldTransform();var ce=this.getCamera().worldTransform.z,te=Math.asin(ce.y),ne=Math.atan2(ce.x,ce.z);this._theta=te,this._phi=-ne,this.setBeta(this.getBeta()),this.setAlpha(this.getAlpha()),this.getCamera().aspect?this._setDistance(this.getCamera().position.dist(this._center)):this._setOrthoSize(this.getCamera().top-this.getCamera().bottom)}},_mouseDownHandler:function(ce){if(!ce.target&&!this._isAnimating()){var te=ce.offsetX,ne=ce.offsetY;this.viewGL&&!this.viewGL.containPoint(te,ne)||(this.zr.on("mousemove",this._mouseMoveHandler),this.zr.on("mouseup",this._mouseUpHandler),ce.event.targetTouches?ce.event.targetTouches.length===1&&(this._mode="rotate"):ce.event.button===pe[this.rotateMouseButton]?this._mode="rotate":ce.event.button===pe[this.panMouseButton]?this._mode="pan":this._mode="",this._rotateVelocity.set(0,0),this._rotating=!1,this.autoRotate&&this._startCountingStill(),this._mouseX=ce.offsetX,this._mouseY=ce.offsetY)}},_mouseMoveHandler:function(ce){if(!(ce.target&&ce.target.__isGLToZRProxy)&&!this._isAnimating()){var te=Ae(this.panSensitivity),ne=Ae(this.rotateSensitivity);this._mode==="rotate"?(this._rotateVelocity.y=(ce.offsetX-this._mouseX)/this.zr.getHeight()*2*ne[0],this._rotateVelocity.x=(ce.offsetY-this._mouseY)/this.zr.getWidth()*2*ne[1]):this._mode==="pan"&&(this._panVelocity.x=(ce.offsetX-this._mouseX)/this.zr.getWidth()*te[0]*400,this._panVelocity.y=(-ce.offsetY+this._mouseY)/this.zr.getHeight()*te[1]*400),this._mouseX=ce.offsetX,this._mouseY=ce.offsetY,ce.event.preventDefault()}},_mouseWheelHandler:function(ce){if(!this._isAnimating()){var te=ce.event.wheelDelta||-ce.event.detail;this._zoomHandler(ce,te)}},_pinchHandler:function(ce){this._isAnimating()||(this._zoomHandler(ce,ce.pinchScale>1?1:-1),this._mode="")},_zoomHandler:function(ce,te){if(te!==0){var ne=ce.offsetX,le=ce.offsetY;if(!(this.viewGL&&!this.viewGL.containPoint(ne,le))){var se;this._projection==="perspective"?se=Math.max(Math.max(Math.min(this._distance-this.minDistance,this.maxDistance-this._distance))/20,.5):se=Math.max(Math.max(Math.min(this._orthoSize-this.minOrthographicSize,this.maxOrthographicSize-this._orthoSize))/20,.5),this._zoomSpeed=(te>0?-1:1)*se*this.zoomSensitivity,this._rotating=!1,this.autoRotate&&this._mode==="rotate"&&this._startCountingStill(),ce.event.preventDefault()}}},_mouseUpHandler:function(){this.zr.off("mousemove",this._mouseMoveHandler),this.zr.off("mouseup",this._mouseUpHandler)},_isRightMouseButtonUsed:function(){return this.rotateMouseButton==="right"||this.panMouseButton==="right"},_contextMenuHandler:function(ce){this._isRightMouseButtonUsed()&&ce.preventDefault()},_addAnimator:function(ce){var te=this._animators;return te.push(ce),ce.done(function(){var ne=te.indexOf(ce);ne>=0&&te.splice(ne,1)}),ce}});Object.defineProperty(Se.prototype,"autoRotate",{get:function(ce){return this._autoRotate},set:function(ce){this._autoRotate=ce,this._rotating=ce}}),Ne.a=Se},function(He,Ne,be){"use strict";Ne.a=`@export ecgl.lines3D.vertex
|
|
|
|
|
|
uniform mat4 worldViewProjection : WORLDVIEWPROJECTION;
|
|
|
|
|
|
attribute vec3 position: POSITION;
|
|
|
attribute vec4 a_Color : COLOR;
|
|
|
varying vec4 v_Color;
|
|
|
|
|
|
void main()
|
|
|
{
|
|
|
gl_Position = worldViewProjection * vec4(position, 1.0);
|
|
|
v_Color = a_Color;
|
|
|
}
|
|
|
|
|
|
@end
|
|
|
|
|
|
@export ecgl.lines3D.fragment
|
|
|
|
|
|
uniform vec4 color : [1.0, 1.0, 1.0, 1.0];
|
|
|
|
|
|
varying vec4 v_Color;
|
|
|
|
|
|
@import clay.util.srgb
|
|
|
|
|
|
void main()
|
|
|
{
|
|
|
#ifdef SRGB_DECODE
|
|
|
gl_FragColor = sRGBToLinear(color * v_Color);
|
|
|
#else
|
|
|
gl_FragColor = color * v_Color;
|
|
|
#endif
|
|
|
}
|
|
|
@end
|
|
|
|
|
|
|
|
|
|
|
|
@export ecgl.lines3D.clipNear
|
|
|
|
|
|
vec4 clipNear(vec4 p1, vec4 p2) {
|
|
|
float n = (p1.w - near) / (p1.w - p2.w);
|
|
|
return vec4(mix(p1.xy, p2.xy, n), -near, near);
|
|
|
}
|
|
|
|
|
|
@end
|
|
|
|
|
|
@export ecgl.lines3D.expandLine
|
|
|
#ifdef VERTEX_ANIMATION
|
|
|
vec4 prevProj = worldViewProjection * vec4(mix(prevPositionPrev, positionPrev, percent), 1.0);
|
|
|
vec4 currProj = worldViewProjection * vec4(mix(prevPosition, position, percent), 1.0);
|
|
|
vec4 nextProj = worldViewProjection * vec4(mix(prevPositionNext, positionNext, percent), 1.0);
|
|
|
#else
|
|
|
vec4 prevProj = worldViewProjection * vec4(positionPrev, 1.0);
|
|
|
vec4 currProj = worldViewProjection * vec4(position, 1.0);
|
|
|
vec4 nextProj = worldViewProjection * vec4(positionNext, 1.0);
|
|
|
#endif
|
|
|
|
|
|
if (currProj.w < 0.0) {
|
|
|
if (nextProj.w > 0.0) {
|
|
|
currProj = clipNear(currProj, nextProj);
|
|
|
}
|
|
|
else if (prevProj.w > 0.0) {
|
|
|
currProj = clipNear(currProj, prevProj);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
vec2 prevScreen = (prevProj.xy / abs(prevProj.w) + 1.0) * 0.5 * viewport.zw;
|
|
|
vec2 currScreen = (currProj.xy / abs(currProj.w) + 1.0) * 0.5 * viewport.zw;
|
|
|
vec2 nextScreen = (nextProj.xy / abs(nextProj.w) + 1.0) * 0.5 * viewport.zw;
|
|
|
|
|
|
vec2 dir;
|
|
|
float len = offset;
|
|
|
if (position == positionPrev) {
|
|
|
dir = normalize(nextScreen - currScreen);
|
|
|
}
|
|
|
else if (position == positionNext) {
|
|
|
dir = normalize(currScreen - prevScreen);
|
|
|
}
|
|
|
else {
|
|
|
vec2 dirA = normalize(currScreen - prevScreen);
|
|
|
vec2 dirB = normalize(nextScreen - currScreen);
|
|
|
|
|
|
vec2 tanget = normalize(dirA + dirB);
|
|
|
|
|
|
float miter = 1.0 / max(dot(tanget, dirA), 0.5);
|
|
|
len *= miter;
|
|
|
dir = tanget;
|
|
|
}
|
|
|
|
|
|
dir = vec2(-dir.y, dir.x) * len;
|
|
|
currScreen += dir;
|
|
|
|
|
|
currProj.xy = (currScreen / viewport.zw - 0.5) * 2.0 * abs(currProj.w);
|
|
|
@end
|
|
|
|
|
|
|
|
|
@export ecgl.meshLines3D.vertex
|
|
|
|
|
|
attribute vec3 position: POSITION;
|
|
|
attribute vec3 positionPrev;
|
|
|
attribute vec3 positionNext;
|
|
|
attribute float offset;
|
|
|
attribute vec4 a_Color : COLOR;
|
|
|
|
|
|
#ifdef VERTEX_ANIMATION
|
|
|
attribute vec3 prevPosition;
|
|
|
attribute vec3 prevPositionPrev;
|
|
|
attribute vec3 prevPositionNext;
|
|
|
uniform float percent : 1.0;
|
|
|
#endif
|
|
|
|
|
|
uniform mat4 worldViewProjection : WORLDVIEWPROJECTION;
|
|
|
uniform vec4 viewport : VIEWPORT;
|
|
|
uniform float near : NEAR;
|
|
|
|
|
|
varying vec4 v_Color;
|
|
|
|
|
|
@import ecgl.common.wireframe.vertexHeader
|
|
|
|
|
|
@import ecgl.lines3D.clipNear
|
|
|
|
|
|
void main()
|
|
|
{
|
|
|
@import ecgl.lines3D.expandLine
|
|
|
|
|
|
gl_Position = currProj;
|
|
|
|
|
|
v_Color = a_Color;
|
|
|
|
|
|
@import ecgl.common.wireframe.vertexMain
|
|
|
}
|
|
|
@end
|
|
|
|
|
|
|
|
|
@export ecgl.meshLines3D.fragment
|
|
|
|
|
|
uniform vec4 color : [1.0, 1.0, 1.0, 1.0];
|
|
|
|
|
|
varying vec4 v_Color;
|
|
|
|
|
|
@import ecgl.common.wireframe.fragmentHeader
|
|
|
|
|
|
@import clay.util.srgb
|
|
|
|
|
|
void main()
|
|
|
{
|
|
|
#ifdef SRGB_DECODE
|
|
|
gl_FragColor = sRGBToLinear(color * v_Color);
|
|
|
#else
|
|
|
gl_FragColor = color * v_Color;
|
|
|
#endif
|
|
|
|
|
|
@import ecgl.common.wireframe.fragmentMain
|
|
|
}
|
|
|
|
|
|
@end`},function(He,Ne,be){var _e=be(12),Me=be(75),ve=be(78),Ee=ve.parsePercent,Pe=be(149),xe=_e.each,pe=["left","right","top","bottom","width","height"],Ae=[["width","left","right"],["height","top","bottom"]];function Se(Ce,Ie,Fe,Re,Ue){var Ge=0,Je=0;Re==null&&(Re=1/0),Ue==null&&(Ue=1/0);var Qe=0;Ie.eachChild(function(rt,$e){var qe=rt.position,ot=rt.getBoundingRect(),at=Ie.childAt($e+1),ut=at&&at.getBoundingRect(),nt,lt;if(Ce==="horizontal"){var yt=ot.width+(ut?-ut.x+ot.x:0);nt=Ge+yt,nt>Re||rt.newline?(Ge=0,nt=yt,Je+=Qe+Fe,Qe=ot.height):Qe=Math.max(Qe,ot.height)}else{var ft=ot.height+(ut?-ut.y+ot.y:0);lt=Je+ft,lt>Ue||rt.newline?(Ge+=Qe+Fe,Je=0,lt=ft,Qe=ot.width):Qe=Math.max(Qe,ot.width)}rt.newline||(qe[0]=Ge,qe[1]=Je,Ce==="horizontal"?Ge=nt+Fe:Je=lt+Fe)})}var ce=Se,te=_e.curry(Se,"vertical"),ne=_e.curry(Se,"horizontal");function le(Ce,Ie,Fe){var Re=Ie.width,Ue=Ie.height,Ge=Ee(Ce.x,Re),Je=Ee(Ce.y,Ue),Qe=Ee(Ce.x2,Re),rt=Ee(Ce.y2,Ue);return(isNaN(Ge)||isNaN(parseFloat(Ce.x)))&&(Ge=0),(isNaN(Qe)||isNaN(parseFloat(Ce.x2)))&&(Qe=Re),(isNaN(Je)||isNaN(parseFloat(Ce.y)))&&(Je=0),(isNaN(rt)||isNaN(parseFloat(Ce.y2)))&&(rt=Ue),Fe=Pe.normalizeCssArray(Fe||0),{width:Math.max(Qe-Ge-Fe[1]-Fe[3],0),height:Math.max(rt-Je-Fe[0]-Fe[2],0)}}function se(Ce,Ie,Fe){Fe=Pe.normalizeCssArray(Fe||0);var Re=Ie.width,Ue=Ie.height,Ge=Ee(Ce.left,Re),Je=Ee(Ce.top,Ue),Qe=Ee(Ce.right,Re),rt=Ee(Ce.bottom,Ue),$e=Ee(Ce.width,Re),qe=Ee(Ce.height,Ue),ot=Fe[2]+Fe[0],at=Fe[1]+Fe[3],ut=Ce.aspect;switch(isNaN($e)&&($e=Re-Qe-at-Ge),isNaN(qe)&&(qe=Ue-rt-ot-Je),ut!=null&&(isNaN($e)&&isNaN(qe)&&(ut>Re/Ue?$e=Re*.8:qe=Ue*.8),isNaN($e)&&($e=ut*qe),isNaN(qe)&&(qe=$e/ut)),isNaN(Ge)&&(Ge=Re-Qe-$e-at),isNaN(Je)&&(Je=Ue-rt-qe-ot),Ce.left||Ce.right){case"center":Ge=Re/2-$e/2-Fe[3];break;case"right":Ge=Re-$e-at;break}switch(Ce.top||Ce.bottom){case"middle":case"center":Je=Ue/2-qe/2-Fe[0];break;case"bottom":Je=Ue-qe-ot;break}Ge=Ge||0,Je=Je||0,isNaN($e)&&($e=Re-at-Ge-(Qe||0)),isNaN(qe)&&(qe=Ue-ot-Je-(rt||0));var nt=new Me(Ge+Fe[3],Je+Fe[0],$e,qe);return nt.margin=Fe,nt}function fe(Ce,Ie,Fe,Re,Ue){var Ge=!Ue||!Ue.hv||Ue.hv[0],Je=!Ue||!Ue.hv||Ue.hv[1],Qe=Ue&&Ue.boundingMode||"all";if(!(!Ge&&!Je)){var rt;if(Qe==="raw")rt=Ce.type==="group"?new Me(0,0,+Ie.width||0,+Ie.height||0):Ce.getBoundingRect();else if(rt=Ce.getBoundingRect(),Ce.needLocalTransform()){var $e=Ce.getLocalTransform();rt=rt.clone(),rt.applyTransform($e)}Ie=se(_e.defaults({width:rt.width,height:rt.height},Ie),Fe,Re);var qe=Ce.position,ot=Ge?Ie.x-rt.x:0,at=Je?Ie.y-rt.y:0;Ce.attr("position",Qe==="raw"?[ot,at]:[qe[0]+ot,qe[1]+at])}}function he(Ce,Ie){return Ce[Ae[Ie][0]]!=null||Ce[Ae[Ie][1]]!=null&&Ce[Ae[Ie][2]]!=null}function ie(Ce,Ie,Fe){!_e.isObject(Fe)&&(Fe={});var Re=Fe.ignoreSize;!_e.isArray(Re)&&(Re=[Re,Re]);var Ue=Je(Ae[0],0),Ge=Je(Ae[1],1);$e(Ae[0],Ce,Ue),$e(Ae[1],Ce,Ge);function Je(qe,ot){var at={},ut=0,nt={},lt=0,yt=2;if(xe(qe,function(vt){nt[vt]=Ce[vt]}),xe(qe,function(vt){Qe(Ie,vt)&&(at[vt]=nt[vt]=Ie[vt]),rt(at,vt)&&ut++,rt(nt,vt)&<++}),Re[ot])return rt(Ie,qe[1])?nt[qe[2]]=null:rt(Ie,qe[2])&&(nt[qe[1]]=null),nt;if(lt===yt||!ut)return nt;if(ut>=yt)return at;for(var ft=0;ft<qe.length;ft++){var ct=qe[ft];if(!Qe(at,ct)&&Qe(Ce,ct)){at[ct]=Ce[ct];break}}return at}function Qe(qe,ot){return qe.hasOwnProperty(ot)}function rt(qe,ot){return qe[ot]!=null&&qe[ot]!=="auto"}function $e(qe,ot,at){xe(qe,function(ut){ot[ut]=at[ut]})}}function ue(Ce){return me({},Ce)}function me(Ce,Ie){return Ie&&Ce&&xe(pe,function(Fe){Ie.hasOwnProperty(Fe)&&(Ce[Fe]=Ie[Fe])}),Ce}Ne.LOCATION_PARAMS=pe,Ne.HV_NAMES=Ae,Ne.box=ce,Ne.vbox=te,Ne.hbox=ne,Ne.getAvailableSize=le,Ne.getLayoutRect=se,Ne.positionElement=fe,Ne.sizeCalculable=he,Ne.mergeLayoutParam=ie,Ne.getLayoutParams=ue,Ne.copyLayoutParams=me},function(He,Ne,be){"use strict";var _e=be(8),Me=_e.a.extend(function(){return{name:"",inputLinks:{},outputLinks:{},_prevOutputTextures:{},_outputTextures:{},_outputReferences:{},_rendering:!1,_rendered:!1,_compositor:null}},{updateParameter:function(ve,Ee){var Pe=this.outputs[ve],xe=Pe.parameters,pe=Pe._parametersCopy;if(pe||(pe=Pe._parametersCopy={}),xe)for(var Ae in xe)Ae!=="width"&&Ae!=="height"&&(pe[Ae]=xe[Ae]);var Se,ce;return xe.width instanceof Function?Se=xe.width.call(this,Ee):Se=xe.width,xe.height instanceof Function?ce=xe.height.call(this,Ee):ce=xe.height,(pe.width!==Se||pe.height!==ce)&&this._outputTextures[ve]&&this._outputTextures[ve].dispose(Ee.gl),pe.width=Se,pe.height=ce,pe},setParameter:function(ve,Ee){},getParameter:function(ve){},setParameters:function(ve){for(var Ee in ve)this.setParameter(Ee,ve[Ee])},render:function(){},getOutput:function(ve,Ee){if(Ee==null)return Ee=ve,this._outputTextures[Ee];var Pe=this.outputs[Ee];if(Pe)return this._rendered?Pe.outputLastFrame?this._prevOutputTextures[Ee]:this._outputTextures[Ee]:this._rendering?(this._prevOutputTextures[Ee]||(this._prevOutputTextures[Ee]=this._compositor.allocateTexture(Pe.parameters||{})),this._prevOutputTextures[Ee]):(this.render(ve),this._outputTextures[Ee])},removeReference:function(ve){if(this._outputReferences[ve]--,this._outputReferences[ve]===0){var Ee=this.outputs[ve];Ee.keepLastFrame?(this._prevOutputTextures[ve]&&this._compositor.releaseTexture(this._prevOutputTextures[ve]),this._prevOutputTextures[ve]=this._outputTextures[ve]):this._compositor.releaseTexture(this._outputTextures[ve])}},link:function(ve,Ee,Pe){this.inputLinks[ve]={node:Ee,pin:Pe},Ee.outputLinks[Pe]||(Ee.outputLinks[Pe]=[]),Ee.outputLinks[Pe].push({node:this,pin:ve}),this.pass.material.enableTexture(ve)},clear:function(){this.inputLinks={},this.outputLinks={}},updateReference:function(ve){if(!this._rendering){this._rendering=!0;for(var Ee in this.inputLinks){var Pe=this.inputLinks[Ee];Pe.node.updateReference(Pe.pin)}this._rendering=!1}ve&&this._outputReferences[ve]++},beforeFrame:function(){this._rendered=!1;for(var ve in this.outputLinks)this._outputReferences[ve]=0},afterFrame:function(){for(var ve in this.outputLinks)if(this._outputReferences[ve]>0){var Ee=this.outputs[ve];Ee.keepLastFrame?(this._prevOutputTextures[ve]&&this._compositor.releaseTexture(this._prevOutputTextures[ve]),this._prevOutputTextures[ve]=this._outputTextures[ve]):this._compositor.releaseTexture(this._outputTextures[ve])}}});Ne.a=Me},function(He,Ne,be){"use strict";function _e(Me,ve){for(var Ee=0,Pe=1/ve,xe=Me;xe>0;)Ee=Ee+Pe*(xe%ve),xe=Math.floor(xe/ve),Pe=Pe/ve;return Ee}Ne.a=_e},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e);Ne.a=function(ve,Ee,Pe){Pe=Pe||ve.getSource();var xe=Ee||Me.a.getCoordinateSystemDimensions(ve.get("coordinateSystem"))||["x","y","z"],pe=Me.a.helper.createDimensions(Pe,{dimensionsDefine:Pe.dimensionsDefine||ve.get("dimensions"),encodeDefine:Pe.encodeDefine||ve.get("encode"),coordDimensions:xe.map(function(Se){var ce=ve.getReferringComponents(Se+"Axis3D")[0];return{type:ce&&ce.get("type")==="category"?"ordinal":"float",name:Se,stackable:Se==="z"}})});ve.get("coordinateSystem")==="cartesian3D"&&pe.forEach(function(Se){if(xe.indexOf(Se.coordDim)>=0){var ce=ve.getReferringComponents(Se.coordDim+"Axis3D")[0];ce&&ce.get("type")==="category"&&(Se.ordinalMeta=ce.getOrdinalMeta())}});var Ae=new Me.a.List(pe,ve);return Ae.initData(Pe),Ae}},function(He,Ne){function be(_e,Me,ve){return{seriesType:_e,performRawSeries:!0,reset:function(Ee,Pe,xe){var pe=Ee.getData(),Ae=Ee.get("symbol")||Me,Se=Ee.get("symbolSize");if(pe.setVisual({legendSymbol:ve||Ae,symbol:Ae,symbolSize:Se}),Pe.isSeriesFiltered(Ee))return;var ce=typeof Se=="function";function te(ne,le){if(typeof Se=="function"){var se=Ee.getRawValue(le),fe=Ee.getDataParams(le);ne.setItemVisual(le,"symbolSize",Se(se,fe))}if(ne.hasItemOption){var he=ne.getItemModel(le),ie=he.getShallow("symbol",!0),ue=he.getShallow("symbolSize",!0);ie!=null&&ne.setItemVisual(le,"symbol",ie),ue!=null&&ne.setItemVisual(le,"symbolSize",ue)}}return{dataEach:pe.hasItemOption||ce?te:null}}}}He.exports=be},function(He,Ne,be){"use strict";var _e=be(8),Me=be(92),ve=be(11),Ee=be(18),Pe=be(15),xe=be(9),pe=be(17),Ae=be(23),Se=be(96),ce=be(7),te=be(98),ne=be(63),le=be(1),se=be.n(le);ce.a.import(te.a),ce.a.import(ne.a);var fe=se.a.mat4,he=se.a.vec3,ie=fe.create,ue={};function me(Re){return Re.material}function Ce(){}var Ie=_e.a.extend(function(){return{canvas:null,_width:100,_height:100,devicePixelRatio:window.devicePixelRatio||1,clearColor:[0,0,0,0],clearBit:17664,alpha:!0,depth:!0,stencil:!1,antialias:!0,premultipliedAlpha:!0,preserveDrawingBuffer:!1,throwError:!0,gl:null,viewport:{},__currentFrameBuffer:null,_viewportStack:[],_clearStack:[],_sceneRendering:null}},function(){this.canvas||(this.canvas=document.createElement("canvas"));var Re=this.canvas;try{var Ue={alpha:this.alpha,depth:this.depth,stencil:this.stencil,antialias:this.antialias,premultipliedAlpha:this.premultipliedAlpha,preserveDrawingBuffer:this.preserveDrawingBuffer};if(this.gl=Re.getContext("webgl",Ue)||Re.getContext("experimental-webgl",Ue),!this.gl)throw new Error;this._glinfo=new Me.a(this.gl),this.gl.targetRenderer&&console.error("Already created a renderer"),this.gl.targetRenderer=this,this.resize()}catch(Ge){throw"Error creating WebGL Context "+Ge}this._programMgr=new Se.a(this)},{resize:function(Re,Ue){var Ge=this.canvas,Je=this.devicePixelRatio;Re!=null?(Ge.style.width=Re+"px",Ge.style.height=Ue+"px",Ge.width=Re*Je,Ge.height=Ue*Je,this._width=Re,this._height=Ue):(this._width=Ge.width/Je,this._height=Ge.height/Je),this.setViewport(0,0,this._width,this._height)},getWidth:function(){return this._width},getHeight:function(){return this._height},getViewportAspect:function(){var Re=this.viewport;return Re.width/Re.height},setDevicePixelRatio:function(Re){this.devicePixelRatio=Re,this.resize(this._width,this._height)},getDevicePixelRatio:function(){return this.devicePixelRatio},getGLExtension:function(Re){return this._glinfo.getExtension(Re)},getGLParameter:function(Re){return this._glinfo.getParameter(Re)},setViewport:function(Re,Ue,Ge,Je,Qe){if(typeof Re=="object"){var rt=Re;Re=rt.x,Ue=rt.y,Ge=rt.width,Je=rt.height,Qe=rt.devicePixelRatio}Qe=Qe||this.devicePixelRatio,this.gl.viewport(Re*Qe,Ue*Qe,Ge*Qe,Je*Qe),this.viewport={x:Re,y:Ue,width:Ge,height:Je,devicePixelRatio:Qe}},saveViewport:function(){this._viewportStack.push(this.viewport)},restoreViewport:function(){this._viewportStack.length>0&&this.setViewport(this._viewportStack.pop())},saveClear:function(){this._clearStack.push({clearBit:this.clearBit,clearColor:this.clearColor})},restoreClear:function(){if(this._clearStack.length>0){var Re=this._clearStack.pop();this.clearColor=Re.clearColor,this.clearBit=Re.clearBit}},bindSceneRendering:function(Re){this._sceneRendering=Re},render:function(Re,Ue,Ge,Je){var Qe=this.gl,rt=this.clearColor;if(this.clearBit){Qe.colorMask(!0,!0,!0,!0),Qe.depthMask(!0);var $e=this.viewport,qe=!1,ot=$e.devicePixelRatio;($e.width!==this._width||$e.height!==this._height||ot&&ot!==this.devicePixelRatio||$e.x||$e.y)&&(qe=!0,Qe.enable(Qe.SCISSOR_TEST),Qe.scissor($e.x*ot,$e.y*ot,$e.width*ot,$e.height*ot)),Qe.clearColor(rt[0],rt[1],rt[2],rt[3]),Qe.clear(this.clearBit),qe&&Qe.disable(Qe.SCISSOR_TEST)}if(Ge||Re.update(!1),Ue=Ue||Re.getMainCamera(),!Ue){console.error("Can't find camera in the scene.");return}Ue.getScene()||Ue.update(!0),this._sceneRendering=Re,Re.viewBoundingBoxLastFrame.min.set(1/0,1/0,1/0),Re.viewBoundingBoxLastFrame.max.set(-1/0,-1/0,-1/0);var at=this.cullRenderList(Re.opaqueList,Re,Ue),ut=this.cullRenderList(Re.transparentList,Re,Ue),nt=Re.material;Re.trigger("beforerender",this,Re,Ue),Je?(this.renderPreZ(at,Re,Ue),Qe.depthFunc(Qe.LEQUAL)):Qe.depthFunc(Qe.LESS);for(var lt=ie(),yt=he.create(),ft=0;ft<ut.length;ft++){var ct=ut[ft];fe.multiplyAffine(lt,Ue.viewMatrix.array,ct.worldTransform.array),he.transformMat4(yt,ct.position.array,lt),ct.__depth=yt[2]}var vt=this.renderPass(at,Ue,{getMaterial:function(mn){return nt||mn.material},sortCompare:this.opaqueSortCompare}),Ut=this.renderPass(ut,Ue,{getMaterial:function(mn){return nt||mn.material},sortCompare:this.transparentSortCompare}),Zt={};for(var en in vt)Zt[en]=vt[en]+Ut[en];return Re.trigger("afterrender",this,Re,Ue,Zt),this._sceneRendering=null,Zt},getProgram:function(Re,Ue,Ge){return Ue=Ue||Re.material,this._programMgr.getProgram(Re,Ue,Ge)},validateProgram:function(Re){if(Re.__error){var Ue=Re.__error;if(ue[Re.__uid__])return;if(ue[Re.__uid__]=!0,this.throwError)throw new Error(Ue);this.trigger("error",Ue)}},updatePrograms:function(Re,Ue,Ge){var Je=Ge&&Ge.getMaterial||me;Ue=Ue||null;for(var Qe=0;Qe<Re.length;Qe++){var rt=Re[Qe],$e=Je.call(this,rt);if(Qe>0){var qe=Re[Qe-1],ot=qe.joints?qe.joints.length:0,at=rt.joints.length?rt.joints.length:0;if(at===ot&&rt.material===qe.material&&rt.lightGroup===qe.lightGroup){rt.__program=qe.__program;continue}}var ut=this._programMgr.getProgram(rt,$e,Ue);this.validateProgram(ut),rt.__program=ut}},cullRenderList:function(Re,Ue,Ge){for(var Je=[],Qe=0;Qe<Re.length;Qe++){var rt=Re[Qe],$e=rt.isSkinnedMesh()?Fe.IDENTITY:rt.worldTransform.array,qe=rt.geometry;fe.multiplyAffine(Fe.WORLDVIEW,Ge.viewMatrix.array,$e),!(qe.boundingBox&&this.isFrustumCulled(rt,Ue,Ge,Fe.WORLDVIEW,Ge.projectionMatrix.array))&&Je.push(rt)}return Je},renderPass:function(Re,Ue,Ge){this.trigger("beforerenderpass",this,Re,Ue,Ge);var Je={triangleCount:0,vertexCount:0,drawCallCount:0,meshCount:Re.length,renderedMeshCount:0};Ge=Ge||{},Ge.getMaterial=Ge.getMaterial||me,Ge.beforeRender=Ge.beforeRender||Ce,Ge.afterRender=Ge.afterRender||Ce,this.updatePrograms(Re,this._sceneRendering,Ge),Ge.sortCompare&&Re.sort(Ge.sortCompare);var Qe=this.viewport,rt=Qe.devicePixelRatio,$e=[Qe.x*rt,Qe.y*rt,Qe.width*rt,Qe.height*rt],qe=this.devicePixelRatio,ot=this.__currentFrameBuffer?[this.__currentFrameBuffer.getTextureWidth(),this.__currentFrameBuffer.getTextureHeight()]:[this._width*qe,this._height*qe],at=[$e[2],$e[3]],ut=Date.now();fe.copy(Fe.VIEW,Ue.viewMatrix.array),fe.copy(Fe.PROJECTION,Ue.projectionMatrix.array),fe.multiply(Fe.VIEWPROJECTION,Ue.projectionMatrix.array,Fe.VIEW),fe.copy(Fe.VIEWINVERSE,Ue.worldTransform.array),fe.invert(Fe.PROJECTIONINVERSE,Fe.PROJECTION),fe.invert(Fe.VIEWPROJECTIONINVERSE,Fe.VIEWPROJECTION);for(var nt=this.gl,lt=this._sceneRendering,yt,ft,ct,vt,Ut,Zt,en,mn,Bt=0;Bt<Re.length;Bt++){var tn=Re[Bt];if(!(Ge.ifRender&&!Ge.ifRender(tn))){var on=tn.isSkinnedMesh()?Fe.IDENTITY:tn.worldTransform.array,Mn=Ge.getMaterial.call(this,tn),Dn=tn.__program,sn=Mn.shader;fe.copy(Fe.WORLD,on),fe.multiply(Fe.WORLDVIEWPROJECTION,Fe.VIEWPROJECTION,on),(sn.matrixSemantics.WORLDINVERSE||sn.matrixSemantics.WORLDINVERSETRANSPOSE)&&fe.invert(Fe.WORLDINVERSE,on),(sn.matrixSemantics.WORLDVIEWINVERSE||sn.matrixSemantics.WORLDVIEWINVERSETRANSPOSE)&&fe.invert(Fe.WORLDVIEWINVERSE,Fe.WORLDVIEW),(sn.matrixSemantics.WORLDVIEWPROJECTIONINVERSE||sn.matrixSemantics.WORLDVIEWPROJECTIONINVERSETRANSPOSE)&&fe.invert(Fe.WORLDVIEWPROJECTIONINVERSE,Fe.WORLDVIEWPROJECTION),tn.beforeRender(this),Ge.beforeRender.call(this,tn,Mn,yt);var rn=Dn!==ft;rn?(Dn.bind(this),Dn.setUniformOfSemantic(nt,"VIEWPORT",$e),Dn.setUniformOfSemantic(nt,"WINDOW_SIZE",ot),Dn.setUniformOfSemantic(nt,"NEAR",Ue.near),Dn.setUniformOfSemantic(nt,"FAR",Ue.far),Dn.setUniformOfSemantic(nt,"DEVICEPIXELRATIO",rt),Dn.setUniformOfSemantic(nt,"TIME",ut),Dn.setUniformOfSemantic(nt,"VIEWPORT_SIZE",at),lt&<.setLightUniforms(Dn,tn.lightGroup,this)):Dn=ft,(yt!==Mn||rn)&&(Mn.depthTest!==ct&&(Mn.depthTest?nt.enable(nt.DEPTH_TEST):nt.disable(nt.DEPTH_TEST),ct=Mn.depthTest),Mn.depthMask!==vt&&(nt.depthMask(Mn.depthMask),vt=Mn.depthMask),Mn.transparent!==mn&&(Mn.transparent?nt.enable(nt.BLEND):nt.disable(nt.BLEND),mn=Mn.transparent),Mn.transparent&&(Mn.blend?Mn.blend(nt):(nt.blendEquationSeparate(nt.FUNC_ADD,nt.FUNC_ADD),nt.blendFuncSeparate(nt.SRC_ALPHA,nt.ONE_MINUS_SRC_ALPHA,nt.ONE,nt.ONE_MINUS_SRC_ALPHA))),Mn.bind(this,Dn,yt,ft),yt=Mn);for(var Ht=sn.matrixSemanticKeys,Tt=0;Tt<Ht.length;Tt++){var St=Ht[Tt],Qt=sn.matrixSemantics[St],gt=Fe[St];if(Qt.isTranspose){var bt=Fe[Qt.semanticNoTranspose];fe.transpose(gt,bt)}Dn.setUniform(nt,Qt.type,Qt.symbol,gt)}tn.cullFace!==Zt&&(Zt=tn.cullFace,nt.cullFace(Zt)),tn.frontFace!==en&&(en=tn.frontFace,nt.frontFace(en)),tn.culling!==Ut&&(Ut=tn.culling,Ut?nt.enable(nt.CULL_FACE):nt.disable(nt.CULL_FACE));var Yt=tn.render(this,Mn,Dn);Yt&&(Je.triangleCount+=Yt.triangleCount,Je.vertexCount+=Yt.vertexCount,Je.drawCallCount+=Yt.drawCallCount,Je.renderedMeshCount++),Ge.afterRender.call(this,tn,Yt),tn.afterRender(this,Yt),ft=Dn}}for(var Bt=0;Bt<Re.length;Bt++)Re[Bt].__program=null;return this.trigger("afterrenderpass",this,Re,Ue,Ge),Je},renderPreZ:function(Re,Ue,Ge){var Je=this.gl,Qe=this._prezMaterial||new pe.a({shader:new ce.a(ce.a.source("clay.prez.vertex"),ce.a.source("clay.prez.fragment"))});this._prezMaterial=Qe,Je.colorMask(!1,!1,!1,!1),Je.depthMask(!0),this.renderPass(Re,Ge,{ifRender:function(rt){return!rt.ignorePreZ},getMaterial:function(){return Qe},sort:this.opaqueSortCompare}),Je.colorMask(!0,!0,!0,!0),Je.depthMask(!0)},isFrustumCulled:function(){var Re=new Pe.a,Ue=new xe.a;return function(Ge,Je,Qe,rt,$e){var qe=Ge.boundingBox||Ge.geometry.boundingBox;if(Ue.array=rt,Re.copy(qe),Re.applyTransform(Ue),Je&&Ge.isRenderable()&&Ge.castShadow&&Je.viewBoundingBoxLastFrame.union(Re),Ge.frustumCulling&&!Ge.isSkinnedMesh()){if(!Re.intersectBoundingBox(Qe.frustum.boundingBox))return!0;Ue.array=$e,Re.max.array[2]>0&&Re.min.array[2]<0&&(Re.max.array[2]=-1e-20),Re.applyProjection(Ue);var ot=Re.min.array,at=Re.max.array;if(at[0]<-1||ot[0]>1||at[1]<-1||ot[1]>1||at[2]<-1||ot[2]>1)return!0}return!1}}(),disposeScene:function(Re){this.disposeNode(Re,!0,!0),Re.dispose()},disposeNode:function(Re,Ue,Ge){Re.getParent()&&Re.getParent().remove(Re),Re.traverse(function(Je){Je.geometry&&Ue&&Je.geometry.dispose(this),Je.dispose&&Je.dispose(this)},this)},disposeGeometry:function(Re){Re.dispose(this)},disposeTexture:function(Re){Re.dispose(this)},disposeFrameBuffer:function(Re){Re.dispose(this)},dispose:function(){},screenToNDC:function(Re,Ue,Ge){Ge||(Ge=new Ae.a),Ue=this._height-Ue;var Je=this.viewport,Qe=Ge.array;return Qe[0]=(Re-Je.x)/Je.width,Qe[0]=Qe[0]*2-1,Qe[1]=(Ue-Je.y)/Je.height,Qe[1]=Qe[1]*2-1,Ge}});Ie.opaqueSortCompare=Ie.prototype.opaqueSortCompare=function(Re,Ue){return Re.renderOrder===Ue.renderOrder?Re.__program===Ue.__program?Re.material===Ue.material?Re.geometry.__uid__-Ue.geometry.__uid__:Re.material.__uid__-Ue.material.__uid__:Re.__program&&Ue.__program?Re.__program.__uid__-Ue.__program.__uid__:0:Re.renderOrder-Ue.renderOrder},Ie.transparentSortCompare=Ie.prototype.transparentSortCompare=function(Re,Ue){return Re.renderOrder===Ue.renderOrder?Re.__depth===Ue.__depth?Re.__program===Ue.__program?Re.material===Ue.material?Re.geometry.__uid__-Ue.geometry.__uid__:Re.material.__uid__-Ue.material.__uid__:Re.__program&&Ue.__program?Re.__program.__uid__-Ue.__program.__uid__:0:Re.__depth-Ue.__depth:Re.renderOrder-Ue.renderOrder};var Fe={IDENTITY:ie(),WORLD:ie(),VIEW:ie(),PROJECTION:ie(),WORLDVIEW:ie(),VIEWPROJECTION:ie(),WORLDVIEWPROJECTION:ie(),WORLDINVERSE:ie(),VIEWINVERSE:ie(),PROJECTIONINVERSE:ie(),WORLDVIEWINVERSE:ie(),VIEWPROJECTIONINVERSE:ie(),WORLDVIEWPROJECTIONINVERSE:ie(),WORLDTRANSPOSE:ie(),VIEWTRANSPOSE:ie(),PROJECTIONTRANSPOSE:ie(),WORLDVIEWTRANSPOSE:ie(),VIEWPROJECTIONTRANSPOSE:ie(),WORLDVIEWPROJECTIONTRANSPOSE:ie(),WORLDINVERSETRANSPOSE:ie(),VIEWINVERSETRANSPOSE:ie(),PROJECTIONINVERSETRANSPOSE:ie(),WORLDVIEWINVERSETRANSPOSE:ie(),VIEWPROJECTIONINVERSETRANSPOSE:ie(),WORLDVIEWPROJECTIONINVERSETRANSPOSE:ie()};Ie.COLOR_BUFFER_BIT=ve.a.COLOR_BUFFER_BIT,Ie.DEPTH_BUFFER_BIT=ve.a.DEPTH_BUFFER_BIT,Ie.STENCIL_BUFFER_BIT=ve.a.STENCIL_BUFFER_BIT,Ne.a=Ie},function(He,Ne,be){"use strict";function _e(ve,Ee){this.action=ve,this.context=Ee}var Me={trigger:function(ve){if(this.hasOwnProperty("__handlers__")&&this.__handlers__.hasOwnProperty(ve)){var Ee=this.__handlers__[ve],Pe=Ee.length,xe=-1,pe=arguments;switch(pe.length){case 1:for(;++xe<Pe;)Ee[xe].action.call(Ee[xe].context);return;case 2:for(;++xe<Pe;)Ee[xe].action.call(Ee[xe].context,pe[1]);return;case 3:for(;++xe<Pe;)Ee[xe].action.call(Ee[xe].context,pe[1],pe[2]);return;case 4:for(;++xe<Pe;)Ee[xe].action.call(Ee[xe].context,pe[1],pe[2],pe[3]);return;case 5:for(;++xe<Pe;)Ee[xe].action.call(Ee[xe].context,pe[1],pe[2],pe[3],pe[4]);return;default:for(;++xe<Pe;)Ee[xe].action.apply(Ee[xe].context,Array.prototype.slice.call(pe,1));return}}},on:function(ve,Ee,Pe){if(!(!ve||!Ee)){var xe=this.__handlers__||(this.__handlers__={});if(!xe[ve])xe[ve]=[];else if(this.has(ve,Ee))return;var pe=new _e(Ee,Pe||this);return xe[ve].push(pe),this}},once:function(ve,Ee,Pe){if(!ve||!Ee)return;var xe=this;function pe(){xe.off(ve,pe),Ee.apply(this,arguments)}return this.on(ve,pe,Pe)},before:function(ve,Ee,Pe){if(!(!ve||!Ee))return ve="before"+ve,this.on(ve,Ee,Pe)},after:function(ve,Ee,Pe){if(!(!ve||!Ee))return ve="after"+ve,this.on(ve,Ee,Pe)},success:function(ve,Ee){return this.once("success",ve,Ee)},error:function(ve,Ee){return this.once("error",ve,Ee)},off:function(ve,Ee){var Pe=this.__handlers__||(this.__handlers__={});if(!Ee){Pe[ve]=[];return}if(Pe[ve]){for(var xe=Pe[ve],pe=[],Ae=0;Ae<xe.length;Ae++)Ee&&xe[Ae].action!==Ee&&pe.push(xe[Ae]);Pe[ve]=pe}return this},has:function(ve,Ee){var Pe=this.__handlers__;if(!Pe||!Pe[ve])return!1;for(var xe=Pe[ve],pe=0;pe<xe.length;pe++)if(xe[pe].action===Ee)return!0}};Ne.a=Me},function(He,Ne,be){"use strict";var _e="__dt__",Me=function(){this._contextId=0,this._caches=[],this._context={}};Me.prototype={use:function(ve,Ee){var Pe=this._caches;Pe[ve]||(Pe[ve]={},Ee&&(Pe[ve]=Ee())),this._contextId=ve,this._context=Pe[ve]},put:function(ve,Ee){this._context[ve]=Ee},get:function(ve){return this._context[ve]},dirty:function(ve){ve=ve||"";var Ee=_e+ve;this.put(Ee,!0)},dirtyAll:function(ve){ve=ve||"";for(var Ee=_e+ve,Pe=this._caches,xe=0;xe<Pe.length;xe++)Pe[xe]&&(Pe[xe][Ee]=!0)},fresh:function(ve){ve=ve||"";var Ee=_e+ve;this.put(Ee,!1)},freshAll:function(ve){ve=ve||"";for(var Ee=_e+ve,Pe=this._caches,xe=0;xe<Pe.length;xe++)Pe[xe]&&(Pe[xe][Ee]=!1)},isDirty:function(ve){ve=ve||"";var Ee=_e+ve,Pe=this._context;return!Pe.hasOwnProperty(Ee)||Pe[Ee]===!0},deleteContext:function(ve){delete this._caches[ve],this._context={}},delete:function(ve){delete this._context[ve]},clearAll:function(){this._caches={}},getContext:function(){return this._context},eachContext:function(ve,Ee){var Pe=Object.keys(this._caches);Pe.forEach(function(xe){ve&&ve.call(Ee,xe)})},miss:function(ve){return!this._context.hasOwnProperty(ve)}},Me.prototype.constructor=Me,Ne.a=Me},function(He,Ne,be){"use strict";var _e=be(4),Me=be(1),ve=be.n(Me),Ee=ve.a.vec3,Pe=1e-5,xe=function(pe,Ae){this.origin=pe||new _e.a,this.direction=Ae||new _e.a};xe.prototype={constructor:xe,intersectPlane:function(pe,Ae){var Se=pe.normal.array,ce=pe.distance,te=this.origin.array,ne=this.direction.array,le=Ee.dot(Se,ne);if(le===0)return null;Ae||(Ae=new _e.a);var se=(Ee.dot(Se,te)-ce)/le;return Ee.scaleAndAdd(Ae.array,te,ne,-se),Ae._dirty=!0,Ae},mirrorAgainstPlane:function(pe){var Ae=Ee.dot(pe.normal.array,this.direction.array);Ee.scaleAndAdd(this.direction.array,this.direction.array,pe.normal.array,-Ae*2),this.direction._dirty=!0},distanceToPoint:function(){var pe=Ee.create();return function(Ae){Ee.sub(pe,Ae,this.origin.array);var Se=Ee.dot(pe,this.direction.array);if(Se<0)return Ee.distance(this.origin.array,Ae);var ce=Ee.lenSquared(pe);return Math.sqrt(ce-Se*Se)}}(),intersectSphere:function(){var pe=Ee.create();return function(Ae,Se,ce){var te=this.origin.array,ne=this.direction.array;Ae=Ae.array,Ee.sub(pe,Ae,te);var le=Ee.dot(pe,ne),se=Ee.squaredLength(pe),fe=se-le*le,he=Se*Se;if(!(fe>he)){var ie=Math.sqrt(he-fe),ue=le-ie,me=le+ie;return ce||(ce=new _e.a),ue<0?me<0?null:(Ee.scaleAndAdd(ce.array,te,ne,me),ce):(Ee.scaleAndAdd(ce.array,te,ne,ue),ce)}}}(),intersectBoundingBox:function(pe,Ae){var Se=this.direction.array,ce=this.origin.array,te=pe.min.array,ne=pe.max.array,le=1/Se[0],se=1/Se[1],fe=1/Se[2],he,ie,ue,me,Ce,Ie;if(le>=0?(he=(te[0]-ce[0])*le,ie=(ne[0]-ce[0])*le):(ie=(te[0]-ce[0])*le,he=(ne[0]-ce[0])*le),se>=0?(ue=(te[1]-ce[1])*se,me=(ne[1]-ce[1])*se):(me=(te[1]-ce[1])*se,ue=(ne[1]-ce[1])*se),he>me||ue>ie||((ue>he||he!==he)&&(he=ue),(me<ie||ie!==ie)&&(ie=me),fe>=0?(Ce=(te[2]-ce[2])*fe,Ie=(ne[2]-ce[2])*fe):(Ie=(te[2]-ce[2])*fe,Ce=(ne[2]-ce[2])*fe),he>Ie||Ce>ie)||((Ce>he||he!==he)&&(he=Ce),(Ie<ie||ie!==ie)&&(ie=Ie),ie<0))return null;var Fe=he>=0?he:ie;return Ae||(Ae=new _e.a),Ee.scaleAndAdd(Ae.array,ce,Se,Fe),Ae},intersectTriangle:function(){var pe=Ee.create(),Ae=Ee.create(),Se=Ee.create(),ce=Ee.create();return function(te,ne,le,se,fe,he){var ie=this.direction.array,ue=this.origin.array;te=te.array,ne=ne.array,le=le.array,Ee.sub(pe,ne,te),Ee.sub(Ae,le,te),Ee.cross(ce,Ae,ie);var me=Ee.dot(pe,ce);if(se){if(me>-Pe)return null}else if(me>-Pe&&me<Pe)return null;Ee.sub(Se,ue,te);var Ce=Ee.dot(ce,Se)/me;if(Ce<0||Ce>1)return null;Ee.cross(ce,pe,Se);var Ie=Ee.dot(ie,ce)/me;if(Ie<0||Ie>1||Ce+Ie>1)return null;Ee.cross(ce,pe,Ae);var Fe=-Ee.dot(Se,ce)/me;return Fe<0?null:(fe||(fe=new _e.a),he&&_e.a.set(he,1-Ce-Ie,Ce,Ie),Ee.scaleAndAdd(fe.array,ue,ie,Fe),fe)}}(),applyTransform:function(pe){_e.a.add(this.direction,this.direction,this.origin),_e.a.transformMat4(this.origin,this.origin,pe),_e.a.transformMat4(this.direction,this.direction,pe),_e.a.sub(this.direction,this.direction,this.origin),_e.a.normalize(this.direction,this.direction)},copy:function(pe){_e.a.copy(this.origin,pe.origin),_e.a.copy(this.direction,pe.direction)},clone:function(){var pe=new xe;return pe.copy(this),pe}},Ne.a=xe},function(He,Ne,be){"use strict";var _e=be(1),Me=be.n(_e),ve=Me.a.quat,Ee=function(pe,Ae,Se,ce){pe=pe||0,Ae=Ae||0,Se=Se||0,ce=ce===void 0?1:ce,this.array=ve.fromValues(pe,Ae,Se,ce),this._dirty=!0};Ee.prototype={constructor:Ee,add:function(pe){return ve.add(this.array,this.array,pe.array),this._dirty=!0,this},calculateW:function(){return ve.calculateW(this.array,this.array),this._dirty=!0,this},set:function(pe,Ae,Se,ce){return this.array[0]=pe,this.array[1]=Ae,this.array[2]=Se,this.array[3]=ce,this._dirty=!0,this},setArray:function(pe){return this.array[0]=pe[0],this.array[1]=pe[1],this.array[2]=pe[2],this.array[3]=pe[3],this._dirty=!0,this},clone:function(){return new Ee(this.x,this.y,this.z,this.w)},conjugate:function(){return ve.conjugate(this.array,this.array),this._dirty=!0,this},copy:function(pe){return ve.copy(this.array,pe.array),this._dirty=!0,this},dot:function(pe){return ve.dot(this.array,pe.array)},fromMat3:function(pe){return ve.fromMat3(this.array,pe.array),this._dirty=!0,this},fromMat4:function(){var pe=Me.a.mat3,Ae=pe.create();return function(Se){return pe.fromMat4(Ae,Se.array),pe.transpose(Ae,Ae),ve.fromMat3(this.array,Ae),this._dirty=!0,this}}(),identity:function(){return ve.identity(this.array),this._dirty=!0,this},invert:function(){return ve.invert(this.array,this.array),this._dirty=!0,this},len:function(){return ve.len(this.array)},length:function(){return ve.length(this.array)},lerp:function(pe,Ae,Se){return ve.lerp(this.array,pe.array,Ae.array,Se),this._dirty=!0,this},mul:function(pe){return ve.mul(this.array,this.array,pe.array),this._dirty=!0,this},mulLeft:function(pe){return ve.multiply(this.array,pe.array,this.array),this._dirty=!0,this},multiply:function(pe){return ve.multiply(this.array,this.array,pe.array),this._dirty=!0,this},multiplyLeft:function(pe){return ve.multiply(this.array,pe.array,this.array),this._dirty=!0,this},normalize:function(){return ve.normalize(this.array,this.array),this._dirty=!0,this},rotateX:function(pe){return ve.rotateX(this.array,this.array,pe),this._dirty=!0,this},rotateY:function(pe){return ve.rotateY(this.array,this.array,pe),this._dirty=!0,this},rotateZ:function(pe){return ve.rotateZ(this.array,this.array,pe),this._dirty=!0,this},rotationTo:function(pe,Ae){return ve.rotationTo(this.array,pe.array,Ae.array),this._dirty=!0,this},setAxes:function(pe,Ae,Se){return ve.setAxes(this.array,pe.array,Ae.array,Se.array),this._dirty=!0,this},setAxisAngle:function(pe,Ae){return ve.setAxisAngle(this.array,pe.array,Ae),this._dirty=!0,this},slerp:function(pe,Ae,Se){return ve.slerp(this.array,pe.array,Ae.array,Se),this._dirty=!0,this},sqrLen:function(){return ve.sqrLen(this.array)},squaredLength:function(){return ve.squaredLength(this.array)},fromEuler:function(pe,Ae){return Ee.fromEuler(this,pe,Ae)},toString:function(){return"["+Array.prototype.join.call(this.array,",")+"]"},toArray:function(){return Array.prototype.slice.call(this.array)}};var Pe=Object.defineProperty;if(Pe){var xe=Ee.prototype;Pe(xe,"x",{get:function(){return this.array[0]},set:function(pe){this.array[0]=pe,this._dirty=!0}}),Pe(xe,"y",{get:function(){return this.array[1]},set:function(pe){this.array[1]=pe,this._dirty=!0}}),Pe(xe,"z",{get:function(){return this.array[2]},set:function(pe){this.array[2]=pe,this._dirty=!0}}),Pe(xe,"w",{get:function(){return this.array[3]},set:function(pe){this.array[3]=pe,this._dirty=!0}})}Ee.add=function(pe,Ae,Se){return ve.add(pe.array,Ae.array,Se.array),pe._dirty=!0,pe},Ee.set=function(pe,Ae,Se,ce,te){ve.set(pe.array,Ae,Se,ce,te),pe._dirty=!0},Ee.copy=function(pe,Ae){return ve.copy(pe.array,Ae.array),pe._dirty=!0,pe},Ee.calculateW=function(pe,Ae){return ve.calculateW(pe.array,Ae.array),pe._dirty=!0,pe},Ee.conjugate=function(pe,Ae){return ve.conjugate(pe.array,Ae.array),pe._dirty=!0,pe},Ee.identity=function(pe){return ve.identity(pe.array),pe._dirty=!0,pe},Ee.invert=function(pe,Ae){return ve.invert(pe.array,Ae.array),pe._dirty=!0,pe},Ee.dot=function(pe,Ae){return ve.dot(pe.array,Ae.array)},Ee.len=function(pe){return ve.length(pe.array)},Ee.lerp=function(pe,Ae,Se,ce){return ve.lerp(pe.array,Ae.array,Se.array,ce),pe._dirty=!0,pe},Ee.slerp=function(pe,Ae,Se,ce){return ve.slerp(pe.array,Ae.array,Se.array,ce),pe._dirty=!0,pe},Ee.mul=function(pe,Ae,Se){return ve.multiply(pe.array,Ae.array,Se.array),pe._dirty=!0,pe},Ee.multiply=Ee.mul,Ee.rotateX=function(pe,Ae,Se){return ve.rotateX(pe.array,Ae.array,Se),pe._dirty=!0,pe},Ee.rotateY=function(pe,Ae,Se){return ve.rotateY(pe.array,Ae.array,Se),pe._dirty=!0,pe},Ee.rotateZ=function(pe,Ae,Se){return ve.rotateZ(pe.array,Ae.array,Se),pe._dirty=!0,pe},Ee.setAxisAngle=function(pe,Ae,Se){return ve.setAxisAngle(pe.array,Ae.array,Se),pe._dirty=!0,pe},Ee.normalize=function(pe,Ae){return ve.normalize(pe.array,Ae.array),pe._dirty=!0,pe},Ee.sqrLen=function(pe){return ve.sqrLen(pe.array)},Ee.squaredLength=Ee.sqrLen,Ee.fromMat3=function(pe,Ae){return ve.fromMat3(pe.array,Ae.array),pe._dirty=!0,pe},Ee.setAxes=function(pe,Ae,Se,ce){return ve.setAxes(pe.array,Ae.array,Se.array,ce.array),pe._dirty=!0,pe},Ee.rotationTo=function(pe,Ae,Se){return ve.rotationTo(pe.array,Ae.array,Se.array),pe._dirty=!0,pe},Ee.fromEuler=function(pe,Ae,ie){pe._dirty=!0,Ae=Ae.array;var ce=pe.array,te=Math.cos(Ae[0]/2),ne=Math.cos(Ae[1]/2),le=Math.cos(Ae[2]/2),se=Math.sin(Ae[0]/2),fe=Math.sin(Ae[1]/2),he=Math.sin(Ae[2]/2),ie=(ie||"XYZ").toUpperCase();switch(ie){case"XYZ":ce[0]=se*ne*le+te*fe*he,ce[1]=te*fe*le-se*ne*he,ce[2]=te*ne*he+se*fe*le,ce[3]=te*ne*le-se*fe*he;break;case"YXZ":ce[0]=se*ne*le+te*fe*he,ce[1]=te*fe*le-se*ne*he,ce[2]=te*ne*he-se*fe*le,ce[3]=te*ne*le+se*fe*he;break;case"ZXY":ce[0]=se*ne*le-te*fe*he,ce[1]=te*fe*le+se*ne*he,ce[2]=te*ne*he+se*fe*le,ce[3]=te*ne*le-se*fe*he;break;case"ZYX":ce[0]=se*ne*le-te*fe*he,ce[1]=te*fe*le+se*ne*he,ce[2]=te*ne*he-se*fe*le,ce[3]=te*ne*le+se*fe*he;break;case"YZX":ce[0]=se*ne*le+te*fe*he,ce[1]=te*fe*le+se*ne*he,ce[2]=te*ne*he-se*fe*le,ce[3]=te*ne*le-se*fe*he;break;case"XZY":ce[0]=se*ne*le-te*fe*he,ce[1]=te*fe*le-se*ne*he,ce[2]=te*ne*he+se*fe*le,ce[3]=te*ne*le+se*fe*he;break}},Ne.a=Ee},function(He,Ne,be){"use strict";var _e=be(28),Me=be(9),ve=be(52),Ee=be(49),Pe=be(1),xe=be.n(Pe),pe=xe.a.vec3,Ae=xe.a.vec4,Se=_e.a.extend(function(){return{projectionMatrix:new Me.a,invProjectionMatrix:new Me.a,viewMatrix:new Me.a,frustum:new ve.a}},function(){this.update(!0)},{update:function(ce){_e.a.prototype.update.call(this,ce),Me.a.invert(this.viewMatrix,this.worldTransform),this.updateProjectionMatrix(),Me.a.invert(this.invProjectionMatrix,this.projectionMatrix),this.frustum.setFromProjection(this.projectionMatrix)},setViewMatrix:function(ce){Me.a.copy(this.viewMatrix,ce),Me.a.invert(this.worldTransform,ce),this.decomposeWorldTransform()},decomposeProjectionMatrix:function(){},setProjectionMatrix:function(ce){Me.a.copy(this.projectionMatrix,ce),Me.a.invert(this.invProjectionMatrix,ce),this.decomposeProjectionMatrix()},updateProjectionMatrix:function(){},castRay:function(){var ce=Ae.create();return function(te,ne){var le=ne!==void 0?ne:new Ee.a,se=te.array[0],fe=te.array[1];return Ae.set(ce,se,fe,-1,1),Ae.transformMat4(ce,ce,this.invProjectionMatrix.array),Ae.transformMat4(ce,ce,this.worldTransform.array),pe.scale(le.origin.array,ce,1/ce[3]),Ae.set(ce,se,fe,1,1),Ae.transformMat4(ce,ce,this.invProjectionMatrix.array),Ae.transformMat4(ce,ce,this.worldTransform.array),pe.scale(ce,ce,1/ce[3]),pe.sub(le.direction.array,ce,le.origin.array),pe.normalize(le.direction.array,le.direction.array),le.direction._dirty=!0,le.origin._dirty=!0,le}}()});Ne.a=Se},function(He,Ne,be){"use strict";var _e=be(4),Me=be(15),ve=be(67),Ee=be(1),Pe=be.n(Ee),xe=Pe.a.vec3,pe=xe.set,Ae=xe.copy,Se=xe.transformMat4,ce=Math.min,te=Math.max,ne=function(){this.planes=[];for(var le=0;le<6;le++)this.planes.push(new ve.a);this.boundingBox=new Me.a,this.vertices=[];for(var le=0;le<8;le++)this.vertices[le]=xe.fromValues(0,0,0)};ne.prototype={setFromProjection:function(le){var se=this.planes,fe=le.array,he=fe[0],ie=fe[1],ue=fe[2],me=fe[3],Ce=fe[4],Ie=fe[5],Fe=fe[6],Re=fe[7],Ue=fe[8],Ge=fe[9],Je=fe[10],Qe=fe[11],rt=fe[12],$e=fe[13],qe=fe[14],ot=fe[15];pe(se[0].normal.array,me-he,Re-Ce,Qe-Ue),se[0].distance=-(ot-rt),se[0].normalize(),pe(se[1].normal.array,me+he,Re+Ce,Qe+Ue),se[1].distance=-(ot+rt),se[1].normalize(),pe(se[2].normal.array,me+ie,Re+Ie,Qe+Ge),se[2].distance=-(ot+$e),se[2].normalize(),pe(se[3].normal.array,me-ie,Re-Ie,Qe-Ge),se[3].distance=-(ot-$e),se[3].normalize(),pe(se[4].normal.array,me-ue,Re-Fe,Qe-Je),se[4].distance=-(ot-qe),se[4].normalize(),pe(se[5].normal.array,me+ue,Re+Fe,Qe+Je),se[5].distance=-(ot+qe),se[5].normalize();var at=this.boundingBox;if(ot===0){var ut=Ie/he,nt=-qe/(Je-1),lt=-qe/(Je+1),yt=-lt/Ie,ft=-nt/Ie;at.min.set(-yt*ut,-yt,lt),at.max.set(yt*ut,yt,nt);var ct=this.vertices;pe(ct[0],-yt*ut,-yt,lt),pe(ct[1],-yt*ut,yt,lt),pe(ct[2],yt*ut,-yt,lt),pe(ct[3],yt*ut,yt,lt),pe(ct[4],-ft*ut,-ft,nt),pe(ct[5],-ft*ut,ft,nt),pe(ct[6],ft*ut,-ft,nt),pe(ct[7],ft*ut,ft,nt)}else{var vt=(-1-rt)/he,Ut=(1-rt)/he,Zt=(1-$e)/Ie,en=(-1-$e)/Ie,mn=(-1-qe)/Je,Bt=(1-qe)/Je;at.min.set(Math.min(vt,Ut),Math.min(en,Zt),Math.min(Bt,mn)),at.max.set(Math.max(Ut,vt),Math.max(Zt,en),Math.max(mn,Bt));var tn=at.min.array,on=at.max.array,ct=this.vertices;pe(ct[0],tn[0],tn[1],tn[2]),pe(ct[1],tn[0],on[1],tn[2]),pe(ct[2],on[0],tn[1],tn[2]),pe(ct[3],on[0],on[1],tn[2]),pe(ct[4],tn[0],tn[1],on[2]),pe(ct[5],tn[0],on[1],on[2]),pe(ct[6],on[0],tn[1],on[2]),pe(ct[7],on[0],on[1],on[2])}},getTransformedBoundingBox:function(){var le=xe.create();return function(se,fe){var he=this.vertices,ie=fe.array,ue=se.min,me=se.max,Ce=ue.array,Ie=me.array,Fe=he[0];Se(le,Fe,ie),Ae(Ce,le),Ae(Ie,le);for(var Re=1;Re<8;Re++)Fe=he[Re],Se(le,Fe,ie),Ce[0]=ce(le[0],Ce[0]),Ce[1]=ce(le[1],Ce[1]),Ce[2]=ce(le[2],Ce[2]),Ie[0]=te(le[0],Ie[0]),Ie[1]=te(le[1],Ie[1]),Ie[2]=te(le[2],Ie[2]);return ue._dirty=!0,me._dirty=!0,se}}()},Ne.a=ne},function(He,Ne){var be=function(){this.head=null,this.tail=null,this._len=0},_e=be.prototype;_e.insert=function(xe){var pe=new Me(xe);return this.insertEntry(pe),pe},_e.insertEntry=function(xe){this.head?(this.tail.next=xe,xe.prev=this.tail,xe.next=null,this.tail=xe):this.head=this.tail=xe,this._len++},_e.remove=function(xe){var pe=xe.prev,Ae=xe.next;pe?pe.next=Ae:this.head=Ae,Ae?Ae.prev=pe:this.tail=pe,xe.next=xe.prev=null,this._len--},_e.len=function(){return this._len},_e.clear=function(){this.head=this.tail=null,this._len=0};var Me=function(xe){this.value=xe,this.next,this.prev},ve=function(xe){this._list=new be,this._map={},this._maxSize=xe||10,this._lastRemovedEntry=null},Ee=ve.prototype;Ee.put=function(xe,pe){var Ae=this._list,Se=this._map,ce=null;if(Se[xe]==null){var te=Ae.len(),ne=this._lastRemovedEntry;if(te>=this._maxSize&&te>0){var le=Ae.head;Ae.remove(le),delete Se[le.key],ce=le.value,this._lastRemovedEntry=le}ne?ne.value=pe:ne=new Me(pe),ne.key=xe,Ae.insertEntry(ne),Se[xe]=ne}return ce},Ee.get=function(xe){var pe=this._map[xe],Ae=this._list;if(pe!=null)return pe!==Ae.tail&&(Ae.remove(pe),Ae.insertEntry(pe)),pe.value},Ee.clear=function(){this._list.clear(),this._map={}};var Pe=ve;He.exports=Pe},function(He,Ne,be){"use strict";var _e=be(5),Me=be(25),ve=be(102),Ee=be(55),Pe=be(56),xe=be(29),pe=be(104),Ae=be(105),Se={loadTexture:function(ce,te,ne,le){var se;if(typeof te=="function"?(ne=te,le=ne,te={}):te=te||{},typeof ce=="string"){if(ce.match(/.hdr$/)||te.fileType==="hdr")return se=new _e.a({width:0,height:0,sRGB:!1}),Se._fetchTexture(ce,function(fe){Ae.a.parseRGBE(fe,se,te.exposure),se.dirty(),ne&&ne(se)},le),se;ce.match(/.dds$/)||te.fileType==="dds"?(se=new _e.a({width:0,height:0}),Se._fetchTexture(ce,function(fe){pe.a.parse(fe,se),se.dirty(),ne&&ne(se)},le)):(se=new _e.a,se.load(ce),se.success(ne),se.error(le))}else if(typeof ce=="object"&&typeof ce.px!="undefined"){var se=new Me.a;se.load(ce),se.success(ne),se.error(le)}return se},loadPanorama:function(ce,te,ne,le,se,fe){var he=this;typeof le=="function"?(se=le,fe=se,le={}):le=le||{},Se.loadTexture(te,le,function(ie){ie.flipY=le.flipY||!1,he.panoramaToCubeMap(ce,ie,ne,le),ie.dispose(ce),se&&se(ne)},fe)},panoramaToCubeMap:function(ce,te,ne,le){var se=new Ee.a,fe=new Pe.a({scene:new xe.a});return fe.material.set("diffuseMap",te),le=le||{},le.encodeRGBM&&fe.material.define("fragment","RGBM_ENCODE"),ne.sRGB=te.sRGB,se.texture=ne,se.render(ce,fe.scene),se.texture=null,se.dispose(ce),ne},heightToNormal:function(ce,te){var ne=document.createElement("canvas"),le=ne.width=ce.width,se=ne.height=ce.height,fe=ne.getContext("2d");fe.drawImage(ce,0,0,le,se),te=te||!1;for(var he=fe.getImageData(0,0,le,se),ie=fe.createImageData(le,se),ue=0;ue<he.data.length;ue+=4){if(te){var me=he.data[ue],Ce=he.data[ue+1],Ie=he.data[ue+2],Fe=Math.abs(me-Ce)+Math.abs(Ce-Ie);if(Fe>20)return console.warn("Given image is not a height map"),ce}var Re,Ue,Ge,Je;ue%(le*4)===0?(Re=he.data[ue],Ge=he.data[ue+4]):ue%(le*4)===(le-1)*4?(Re=he.data[ue-4],Ge=he.data[ue]):(Re=he.data[ue-4],Ge=he.data[ue+4]),ue<le*4?(Ue=he.data[ue],Je=he.data[ue+le*4]):ue>le*(se-1)*4?(Ue=he.data[ue-le*4],Je=he.data[ue]):(Ue=he.data[ue-le*4],Je=he.data[ue+le*4]),ie.data[ue]=Re-Ge+127,ie.data[ue+1]=Ue-Je+127,ie.data[ue+2]=255,ie.data[ue+3]=255}return fe.putImageData(ie,0,0),ne},isHeightImage:function(ce,te,ne){if(!ce||!ce.width||!ce.height)return!1;var le=document.createElement("canvas"),se=le.getContext("2d"),fe=te||32;ne=ne||20,le.width=le.height=fe,se.drawImage(ce,0,0,fe,fe);for(var he=se.getImageData(0,0,fe,fe),ie=0;ie<he.data.length;ie+=4){var ue=he.data[ie],me=he.data[ie+1],Ce=he.data[ie+2],Ie=Math.abs(ue-me)+Math.abs(me-Ce);if(Ie>ne)return!1}return!0},_fetchTexture:function(ce,te,ne){ve.a.get({url:ce,responseType:"arraybuffer",onload:te,onerror:ne})},createChessboard:function(ce,te,ne,le){ce=ce||512,te=te||64,ne=ne||"black",le=le||"white";var se=Math.ceil(ce/te),fe=document.createElement("canvas");fe.width=ce,fe.height=ce;var he=fe.getContext("2d");he.fillStyle=le,he.fillRect(0,0,ce,ce),he.fillStyle=ne;for(var ie=0;ie<se;ie++)for(var ue=0;ue<se;ue++){var me=ue%2?ie%2:ie%2-1;me&&he.fillRect(ie*te,ue*te,te,te)}var Ce=new _e.a({image:fe,anisotropic:8});return Ce},createBlank:function(ce){var te=document.createElement("canvas");te.width=1,te.height=1;var ne=te.getContext("2d");ne.fillStyle=ce,ne.fillRect(0,0,1,1);var le=new _e.a({image:te});return le}};Ne.a=Se},function(He,Ne,be){"use strict";var _e=be(8),Me=be(4),ve=be(36),Ee=be(10),Pe=["px","nx","py","ny","pz","nz"],xe=_e.a.extend(function(){var pe={position:new Me.a,far:1e3,near:.1,texture:null,shadowMapPass:null},Ae=pe._cameras={px:new ve.a({fov:90}),nx:new ve.a({fov:90}),py:new ve.a({fov:90}),ny:new ve.a({fov:90}),pz:new ve.a({fov:90}),nz:new ve.a({fov:90})};return Ae.px.lookAt(Me.a.POSITIVE_X,Me.a.NEGATIVE_Y),Ae.nx.lookAt(Me.a.NEGATIVE_X,Me.a.NEGATIVE_Y),Ae.py.lookAt(Me.a.POSITIVE_Y,Me.a.POSITIVE_Z),Ae.ny.lookAt(Me.a.NEGATIVE_Y,Me.a.NEGATIVE_Z),Ae.pz.lookAt(Me.a.POSITIVE_Z,Me.a.NEGATIVE_Y),Ae.nz.lookAt(Me.a.NEGATIVE_Z,Me.a.NEGATIVE_Y),pe._frameBuffer=new Ee.a,pe},{getCamera:function(pe){return this._cameras[pe]},render:function(pe,Ae,Se){var ce=pe.gl;Se||Ae.update();for(var te=this.texture.width,ne=2*Math.atan(te/(te-.5))/Math.PI*180,le=0;le<6;le++){var se=Pe[le],fe=this._cameras[se];if(Me.a.copy(fe.position,this.position),fe.far=this.far,fe.near=this.near,fe.fov=ne,this.shadowMapPass){fe.update();var he=Ae.getBoundingBox();he.applyTransform(fe.viewMatrix),Ae.viewBoundingBoxLastFrame.copy(he),this.shadowMapPass.render(pe,Ae,fe,!0)}this._frameBuffer.attach(this.texture,ce.COLOR_ATTACHMENT0,ce.TEXTURE_CUBE_MAP_POSITIVE_X+le),this._frameBuffer.bind(pe),pe.render(Ae,fe,!0),this._frameBuffer.unbind(pe)}},dispose:function(pe){this._frameBuffer.dispose(pe)}});Ne.a=xe},function(He,Ne,be){"use strict";var _e=be(24),Me=be(68),ve=be(7),Ee=be(17),Pe=be(103);ve.a.import(Pe.a);var xe=_e.a.extend(function(){var pe=new ve.a(ve.a.source("clay.basic.vertex"),ve.a.source("clay.basic.fragment")),Ae=new Ee.a({shader:pe,depthMask:!1});return Ae.enableTexture("diffuseMap"),{scene:null,geometry:new Me.a({widthSegments:30,heightSegments:30}),material:Ae,environmentMap:null,culling:!1}},function(){var pe=this.scene;pe&&this.attachScene(pe),this.environmentMap&&this.setEnvironmentMap(this.environmentMap)},{attachScene:function(pe){this.scene&&this.detachScene(),pe.skydome=this,this.scene=pe,pe.on("beforerender",this._beforeRenderScene,this)},detachScene:function(){this.scene&&(this.scene.off("beforerender",this._beforeRenderScene),this.scene.skydome=null),this.scene=null},_beforeRenderScene:function(pe,Ae,Se){this.position.copy(Se.getWorldPosition()),this.update(),pe.renderPass([this],Se)},setEnvironmentMap:function(pe){this.material.set("diffuseMap",pe)},getEnvironmentMap:function(){return this.material.get("diffuseMap")},dispose:function(pe){this.detachScene(),this.geometry.dispose(pe)}});Ne.a=xe},function(He,Ne,be){"use strict";var _e=be(24),Me=be(69),ve=be(7),Ee=be(17),Pe=be(110);ve.a.import(Pe.a);var xe=_e.a.extend(function(){var pe=new ve.a({vertex:ve.a.source("clay.skybox.vertex"),fragment:ve.a.source("clay.skybox.fragment")}),Ae=new Ee.a({shader:pe,depthMask:!1});return{scene:null,geometry:new Me.a,material:Ae,environmentMap:null,culling:!1}},function(){var pe=this.scene;pe&&this.attachScene(pe),this.environmentMap&&this.setEnvironmentMap(this.environmentMap)},{attachScene:function(pe){this.scene&&this.detachScene(),pe.skybox=this,this.scene=pe,pe.on("beforerender",this._beforeRenderScene,this)},detachScene:function(){this.scene&&(this.scene.off("beforerender",this._beforeRenderScene),this.scene.skybox=null),this.scene=null},dispose:function(pe){this.detachScene(),this.geometry.dispose(pe)},setEnvironmentMap:function(pe){this.material.set("environmentMap",pe)},getEnvironmentMap:function(){return this.material.get("environmentMap")},_beforeRenderScene:function(pe,Ae,Se){this.renderSkybox(pe,Se)},renderSkybox:function(pe,Ae){this.position.copy(Ae.getWorldPosition()),this.update(),pe.gl.disable(pe.gl.BLEND),this.material.get("lod")>0?this.material.define("fragment","LOD"):this.material.undefine("fragment","LOD"),pe.renderPass([this],Ae)}});Ne.a=xe},function(He,Ne,be){"use strict";var _e=be(2),Me=be(143),ve=be(144);_e.a.Shader.import(ve.a),Ne.a=_e.a.Mesh.extend(function(){var Ee=new Me.a({dynamic:!0}),Pe=new _e.a.Material({shader:_e.a.createShader("ecgl.labels"),transparent:!0,depthMask:!1});return{geometry:Ee,material:Pe,culling:!1,castShadow:!1,ignorePicking:!0}})},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(2),Ee=be(186),Pe=be(22),xe=be(3),pe=be(1),Ae=be.n(pe),Se=be(60),ce=be(61),te=be(40),ne=Ae.a.vec3;ve.a.Shader.import(te.a);function le(se){this.rootNode=new ve.a.Node,this._triangulationResults={},this._shadersMap=ve.a.COMMON_SHADERS.reduce(function(he,ie){return he[ie]=ve.a.createShader("ecgl."+ie),he},{}),this._linesShader=ve.a.createShader("ecgl.meshLines3D");var fe={};ve.a.COMMON_SHADERS.forEach(function(he){fe[he]=new ve.a.Material({shader:ve.a.createShader("ecgl."+he)})}),this._groundMaterials=fe,this._groundMesh=new ve.a.Mesh({geometry:new ve.a.PlaneGeometry({dynamic:!0}),castShadow:!1,renderNormal:!0,$ignorePicking:!0}),this._groundMesh.rotation.rotateX(-Math.PI/2),this._labelsBuilder=new ce.a(512,512,se),this._labelsBuilder.getMesh().renderOrder=100,this._labelsBuilder.getMesh().material.depthTest=!1,this.rootNode.add(this._labelsBuilder.getMesh()),this._initMeshes(),this._api=se}le.prototype={constructor:le,extrudeY:!0,update:function(se,fe,he,ie,ue){var me=se.getData();ie==null&&(ie=0),ue==null&&(ue=me.count()),this._startIndex=ie,this._endIndex=ue-1,this._triangulation(se,ie,ue);var Ce=this._getShader(se.get("shading"));this._prepareMesh(se,Ce,he,ie,ue),this.rootNode.updateWorldTransform(),this._updateRegionMesh(se,he,ie,ue);var Ie=se.coordinateSystem;Ie.type==="geo3D"&&this._updateGroundPlane(se,Ie,he);var Fe=this;this._labelsBuilder.updateData(me,ie,ue),this._labelsBuilder.getLabelPosition=function(Re,Ue,Ge){var Je=me.getName(Re),Qe,rt=Ge;if(Ie.type==="geo3D"){var $e=Ie.getRegion(Je);return Qe=$e.center,Ie.dataToPoint([Qe[0],Qe[1],rt])}else var qe=Fe._triangulationResults[Re-Fe._startIndex],Qe=Fe.extrudeY?[(qe.max[0]+qe.min[0])/2,qe.max[1]+rt,(qe.max[2]+qe.min[2])/2]:[(qe.max[0]+qe.min[0])/2,(qe.max[1]+qe.min[1])/2,qe.max[2]+rt]},this._data=me,this._labelsBuilder.updateLabels(),this._updateDebugWireframe(se),this._lastHoverDataIndex=0},_initMeshes:function(){this.rootNode.removeAll();var se=this;function fe(){var ue=new ve.a.Mesh({name:"Polygon",material:new ve.a.Material({shader:se._shadersMap.lambert}),culling:!1,geometry:new ve.a.Geometry({sortTriangles:!0,dynamic:!0}),ignorePicking:!0,renderNormal:!0});return Me.a.util.extend(ue.geometry,Se.a),ue}var he=fe(),ie=new ve.a.Mesh({material:new ve.a.Material({shader:this._linesShader}),castShadow:!1,ignorePicking:!0,$ignorePicking:!0,geometry:new Pe.a({useNativeLine:!1})});this.rootNode.add(he),this.rootNode.add(ie),he.material.define("both","VERTEX_COLOR"),he.material.define("fragment","DOUBLE_SIDED"),this._polygonMesh=he,this._linesMesh=ie,this.rootNode.add(this._groundMesh)},_getShader:function(se){var fe=this._shadersMap[se];return fe||(console.warn("Unkown shading "+se),fe=this._shadersMap.lambert),fe.__shading=se,fe},_prepareMesh:function(se,fe,he,ie,ue){for(var me=0,Ce=0,Ie=0,Fe=0,Re=ie;Re<ue;Re++){var Ue=this._getRegionPolygonInfo(Re),Ge=this._getRegionLinesInfo(Re,se,this._linesMesh.geometry);me+=Ue.vertexCount,Ce+=Ue.triangleCount,Ie+=Ge.vertexCount,Fe+=Ge.triangleCount}var Je=this._polygonMesh,Qe=Je.geometry;["position","normal","texcoord0","color"].forEach(function(rt){Qe.attributes[rt].init(me)}),Qe.indices=me>65535?new Uint32Array(Ce*3):new Uint16Array(Ce*3),Je.material.shader!==fe&&Je.material.attachShader(fe,!0),ve.a.setMaterialFromModel(fe.__shading,Je.material,se,he),Ie>0&&(this._linesMesh.geometry.resetOffset(),this._linesMesh.geometry.setVertexCount(Ie),this._linesMesh.geometry.setTriangleCount(Fe)),this._dataIndexOfVertex=new Uint32Array(me),this._vertexRangeOfDataIndex=new Uint32Array((ue-ie)*2)},_updateRegionMesh:function(se,fe,he,ie){for(var ue=se.getData(),me=0,Ce=0,Ie=!1,yt=this._polygonMesh,Fe=this._linesMesh,Re=he;Re<ie;Re++){var Ue=se.getRegionModel(Re),Ge=Ue.getModel("itemStyle"),Je=Ge.get("color"),Qe=xe.a.firstNotNull(Ge.get("opacity"),1),rt=ue.getItemVisual(Re,"color",!0);rt!=null&&ue.hasValue(Re)&&(Je=rt),ue.setItemVisual(Re,"color",Je),ue.setItemVisual(Re,"opacity",Qe),Je=ve.a.parseColor(Je);var $e=ve.a.parseColor(Ge.get("borderColor"));Je[3]*=Qe,$e[3]*=Qe;var qe=Je[3]<.99;yt.material.set("color",[1,1,1,1]),Ie=Ie||qe;for(var ot=xe.a.firstNotNull(Ue.get("height",!0),se.get("regionHeight")),at=this._updatePolygonGeometry(se,yt.geometry,Re,ot,me,Ce,Je),ut=me;ut<at.vertexOffset;ut++)this._dataIndexOfVertex[ut]=Re;this._vertexRangeOfDataIndex[(Re-he)*2]=me,this._vertexRangeOfDataIndex[(Re-he)*2+1]=at.vertexOffset,me=at.vertexOffset,Ce=at.triangleOffset;var nt=Ge.get("borderWidth"),lt=nt>0;lt&&(nt*=fe.getDevicePixelRatio(),this._updateLinesGeometry(Fe.geometry,se,Re,ot,nt,se.coordinateSystem.transform)),Fe.invisible=!lt,Fe.material.set({color:$e})}var yt=this._polygonMesh;yt.material.transparent=Ie,yt.material.depthMask=!Ie,yt.geometry.updateBoundingBox(),yt.material.get("normalMap")&&yt.geometry.generateTangents(),yt.seriesIndex=se.seriesIndex,yt.on("mousemove",this._onmousemove,this),yt.on("mouseout",this._onmouseout,this)},_updateDebugWireframe:function(se){var fe=se.getModel("debug.wireframe");if(fe.get("show")){var he=ve.a.parseColor(fe.get("lineStyle.color")||"rgba(0,0,0,0.5)"),ie=xe.a.firstNotNull(fe.get("lineStyle.width"),1),ue=this._polygonMesh;ue.geometry.generateBarycentric(),ue.material.define("both","WIREFRAME_TRIANGLE"),ue.material.set("wireframeLineColor",he),ue.material.set("wireframeLineWidth",ie)}},_onmousemove:function(se){var fe=this._dataIndexOfVertex[se.triangle[0]];fe==null&&(fe=-1),fe!==this._lastHoverDataIndex&&(this.downplay(this._lastHoverDataIndex),this.highlight(fe)),this._lastHoverDataIndex=fe,this._polygonMesh.dataIndex=fe},_onmouseover:function(se){if(se.target){var fe=se.target.eventData?this._data.indexOfName(se.target.eventData.name):se.target.dataIndex;fe!=null&&(this.highlight(fe),this._labelsBuilder.updateLabels([fe]))}},_onmouseout:function(se){se.target&&(this.downplay(this._lastHoverDataIndex),this._lastHoverDataIndex=-1,this._polygonMesh.dataIndex=-1)},_updateGroundPlane:function(se,fe,he){var ie=se.getModel("groundPlane",se);if(this._groundMesh.invisible=!ie.get("show",!0),!this._groundMesh.invisible){var ue=se.get("shading"),me=this._groundMaterials[ue];me||(console.warn("Unkown shading "+ue),me=this._groundMaterials.lambert),ve.a.setMaterialFromModel(ue,me,ie,he),me.get("normalMap")&&this._groundMesh.geometry.generateTangents(),this._groundMesh.material=me,this._groundMesh.material.set("color",ve.a.parseColor(ie.get("color"))),this._groundMesh.scale.set(fe.size[0],fe.size[2],1)}},_triangulation:function(se,fe,he){this._triangulationResults=[];for(var ie=[1/0,1/0,1/0],ue=[-1/0,-1/0,-1/0],me=se.coordinateSystem,Ce=fe;Ce<he;Ce++){for(var Ie=[],Fe=se.getRegionPolygonCoords(Ce),Re=0;Re<Fe.length;Re++){var Ue=Fe[Re].exterior,Ge=Fe[Re].interiors,Je=[],Qe=[];if(!(Ue.length<3)){for(var rt=0,$e=0;$e<Ue.length;$e++){var qe=Ue[$e];Je[rt++]=qe[0],Je[rt++]=qe[1]}for(var $e=0;$e<Ge.length;$e++)if(!(Ge[$e].length<3)){for(var ot=Je.length/2,at=0;at<Ge[$e].length;at++){var qe=Ge[$e][at];Je.push(qe[0]),Je.push(qe[1])}Qe.push(ot)}for(var ut=Object(Ee.a)(Je,Qe),nt=new Float64Array(Je.length/2*3),lt=[],yt=[1/0,1/0,1/0],ft=[-1/0,-1/0,-1/0],ct=0,$e=0;$e<Je.length;)ne.set(lt,Je[$e++],0,Je[$e++]),me&&me.transform&&ne.transformMat4(lt,lt,me.transform),ne.min(yt,yt,lt),ne.max(ft,ft,lt),nt[ct++]=lt[0],nt[ct++]=lt[1],nt[ct++]=lt[2];ne.min(ie,ie,yt),ne.max(ue,ue,ft),Ie.push({points:nt,indices:ut,min:yt,max:ft})}}this._triangulationResults.push(Ie)}this._geoBoundingBox=[ie,ue]},_getRegionPolygonInfo:function(se){for(var fe=this._triangulationResults[se-this._startIndex],he=0,ie=0,ue=0;ue<fe.length;ue++)he+=fe[ue].points.length/3,ie+=fe[ue].indices.length/3;var me=he*2+he*4,Ce=ie*2+he*2;return{vertexCount:me,triangleCount:Ce}},_updatePolygonGeometry:function(se,fe,he,ie,ue,me,Ce){var Ie=se.get("projectUVOnGround"),Fe=fe.attributes.position,Re=fe.attributes.normal,Ue=fe.attributes.texcoord0,Ge=fe.attributes.color,Je=this._triangulationResults[he-this._startIndex],Qe=Ge.value&&Ce,rt=fe.indices,$e=this.extrudeY?1:2,qe=this.extrudeY?2:1,ot=[this.rootNode.worldTransform.x.len(),this.rootNode.worldTransform.y.len(),this.rootNode.worldTransform.z.len()],at=ne.mul([],this._geoBoundingBox[0],ot),ut=ne.mul([],this._geoBoundingBox[1],ot),nt=Math.max(ut[0]-at[0],ut[2]-at[2]);function lt(kt,Mt,ln){for(var zn=kt.points,Gn=zn.length,Hn=[],nr=[],Xn=0;Xn<Gn;Xn+=3)Hn[0]=zn[Xn],Hn[$e]=Mt,Hn[qe]=zn[Xn+2],nr[0]=(zn[Xn]*ot[0]-at[0])/nt,nr[1]=(zn[Xn+2]*ot[qe]-at[2])/nt,Fe.set(ue,Hn),Qe&&Ge.set(ue,Ce),Ue.set(ue++,nr)}function yt(kt,Mt,ln){var zn=ue;lt(kt,Mt,ln);for(var Gn=0;Gn<kt.indices.length;Gn++)rt[me*3+Gn]=kt.indices[Gn]+zn;me+=kt.indices.length/3}for(var ft=this.extrudeY?[0,1,0]:[0,0,1],ct=ne.negate([],ft),vt=0;vt<Je.length;vt++){var Ut=ue,Zt=Je[vt];yt(Zt,0,0),yt(Zt,ie,0);for(var en=Zt.points.length/3,mn=0;mn<en;mn++)Re.set(Ut+mn,ct),Re.set(Ut+mn+en,ft);for(var Bt=[0,3,1,1,3,2],tn=[[],[],[],[]],on=[],Mn=[],Dn=[],sn=[],rn=0,mn=0;mn<en;mn++){for(var Ht=(mn+1)%en,Tt=(Zt.points[Ht*3]-Zt.points[mn*3])*ot[0],St=(Zt.points[Ht*3+2]-Zt.points[mn*3+2])*ot[qe],Qt=Math.sqrt(Tt*Tt+St*St),gt=0;gt<4;gt++){var bt=gt===0||gt===3,Yt=(bt?mn:Ht)*3;tn[gt][0]=Zt.points[Yt],tn[gt][$e]=gt>1?ie:0,tn[gt][qe]=Zt.points[Yt+2],Fe.set(ue+gt,tn[gt]),Ie?(sn[0]=(Zt.points[Yt]*ot[0]-at[0])/nt,sn[1]=(Zt.points[Yt+2]*ot[qe]-at[qe])/nt):(sn[0]=(bt?rn:rn+Qt)/nt,sn[1]=(tn[gt][$e]*ot[$e]-at[$e])/nt),Ue.set(ue+gt,sn)}ne.sub(on,tn[1],tn[0]),ne.sub(Mn,tn[3],tn[0]),ne.cross(Dn,on,Mn),ne.normalize(Dn,Dn);for(var gt=0;gt<4;gt++)Re.set(ue+gt,Dn),Qe&&Ge.set(ue+gt,Ce);for(var gt=0;gt<6;gt++)rt[me*3+gt]=Bt[gt]+ue;ue+=4,me+=2,rn+=Qt}}return fe.dirty(),{vertexOffset:ue,triangleOffset:me}},_getRegionLinesInfo:function(se,fe,he){var ie=0,ue=0,me=fe.getRegionModel(se),Ce=me.getModel("itemStyle"),Ie=Ce.get("borderWidth");if(Ie>0){var Fe=fe.getRegionPolygonCoords(se);Fe.forEach(function(Re){var Ue=Re.exterior,Ge=Re.interiors;ie+=he.getPolylineVertexCount(Ue),ue+=he.getPolylineTriangleCount(Ue);for(var Je=0;Je<Ge.length;Je++)ie+=he.getPolylineVertexCount(Ge[Je]),ue+=he.getPolylineTriangleCount(Ge[Je])},this)}return{vertexCount:ie,triangleCount:ue}},_updateLinesGeometry:function(se,fe,he,ie,ue,me){function Ce(Re){for(var Ue=new Float64Array(Re.length*3),Ge=0,Je=[],Qe=0;Qe<Re.length;Qe++)Je[0]=Re[Qe][0],Je[1]=ie+.1,Je[2]=Re[Qe][1],me&&ne.transformMat4(Je,Je,me),Ue[Ge++]=Je[0],Ue[Ge++]=Je[1],Ue[Ge++]=Je[2];return Ue}var Ie=[1,1,1,1],Fe=fe.getRegionPolygonCoords(he);Fe.forEach(function(Re){var Ue=Re.exterior,Ge=Re.interiors;se.addPolyline(Ce(Ue),Ie,ue);for(var Je=0;Je<Ge.length;Je++)se.addPolyline(Ce(Ge[Je]),Ie,ue)})},highlight:function(se){var fe=this._data;if(fe){var he=fe.getItemModel(se),ie=he.getModel("emphasis.itemStyle"),ue=ie.get("color"),me=xe.a.firstNotNull(ie.get("opacity"),fe.getItemVisual(se,"opacity"),1);if(ue==null){var Ce=fe.getItemVisual(se,"color");ue=Me.a.color.lift(Ce,-.4)}me==null&&(me=fe.getItemVisual(se,"opacity"));var Ie=ve.a.parseColor(ue);Ie[3]*=me,this._setColorOfDataIndex(fe,se,Ie)}},downplay:function(se){var fe=this._data;if(fe){var he=fe.getItemVisual(se,"color"),ie=xe.a.firstNotNull(fe.getItemVisual(se,"opacity"),1),ue=ve.a.parseColor(he);ue[3]*=ie,this._setColorOfDataIndex(fe,se,ue)}},_setColorOfDataIndex:function(se,fe,he){if(!(fe<this._startIndex&&fe>this._endIndex)){fe-=this._startIndex;for(var ie=this._vertexRangeOfDataIndex[fe*2];ie<this._vertexRangeOfDataIndex[fe*2+1];ie++)this._polygonMesh.geometry.attributes.color.set(ie,he);this._polygonMesh.geometry.dirty(),this._api.getZr().refresh()}}},Ne.a=le},function(He,Ne,be){"use strict";var _e=be(81),Me=be(1),ve=be.n(Me),Ee=ve.a.vec3,Pe=Ee.create(),xe=Ee.create(),pe=Ee.create();Ne.a={needsSortTriangles:function(){return this.indices&&this.sortTriangles},needsSortTrianglesProgressively:function(){return this.needsSortTriangles()&&this.triangleCount>=2e4},doSortTriangles:function(Ae,Se){var ce=this.indices;if(Se===0){var te=this.attributes.position,Ae=Ae.array;(!this._triangleZList||this._triangleZList.length!==this.triangleCount)&&(this._triangleZList=new Float32Array(this.triangleCount),this._sortedTriangleIndices=new Uint32Array(this.triangleCount),this._indicesTmp=new ce.constructor(ce.length),this._triangleZListTmp=new Float32Array(this.triangleCount));for(var ne=0,le,se=0;se<ce.length;){te.get(ce[se++],Pe),te.get(ce[se++],xe),te.get(ce[se++],pe);var fe=Ee.sqrDist(Pe,Ae),he=Ee.sqrDist(xe,Ae),ie=Ee.sqrDist(pe,Ae),ue=Math.min(fe,he);ue=Math.min(ue,ie),se===3?(le=ue,ue=0):ue=ue-le,this._triangleZList[ne++]=ue}}for(var me=this._sortedTriangleIndices,se=0;se<me.length;se++)me[se]=se;if(this.triangleCount<2e4)Se===0&&this._simpleSort(!0);else for(var se=0;se<3;se++)this._progressiveQuickSort(Se*3+se);for(var Ce=this._indicesTmp,Ie=this._triangleZListTmp,Fe=this._triangleZList,se=0;se<this.triangleCount;se++){var Re=me[se]*3,Ue=se*3;Ce[Ue++]=ce[Re++],Ce[Ue++]=ce[Re++],Ce[Ue]=ce[Re],Ie[se]=Fe[me[se]]}var Ge=this._indicesTmp;this._indicesTmp=this.indices,this.indices=Ge;var Ge=this._triangleZListTmp;this._triangleZListTmp=this._triangleZList,this._triangleZList=Ge,this.dirtyIndices()},_simpleSort:function(Ae){var Se=this._triangleZList,ce=this._sortedTriangleIndices;function te(ne,le){return Se[le]-Se[ne]}Ae?Array.prototype.sort.call(ce,te):_e.a.sort(ce,te,0,ce.length-1)},_progressiveQuickSort:function(Ae){var Se=this._triangleZList,ce=this._sortedTriangleIndices;this._quickSort=this._quickSort||new _e.a,this._quickSort.step(ce,function(te,ne){return Se[ne]-Se[te]},Ae)}}},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(73),Ee=be(58),Pe=be(3),xe=1,pe=2;function Ae(Se,ce,te){this._labelsMesh=new Ee.a,this._labelTextureSurface=new ve.a({width:512,height:512,devicePixelRatio:te.getDevicePixelRatio(),onupdate:function(){te.getZr().refresh()}}),this._api=te,this._labelsMesh.material.set("textureAtlas",this._labelTextureSurface.getTexture())}Ae.prototype.getLabelPosition=function(Se,ce,te){return[0,0,0]},Ae.prototype.getLabelDistance=function(Se,ce,te){return 0},Ae.prototype.getMesh=function(){return this._labelsMesh},Ae.prototype.updateData=function(Se,ce,te){ce==null&&(ce=0),te==null&&(te=Se.count()),(!this._labelsVisibilitiesBits||this._labelsVisibilitiesBits.length!==te-ce)&&(this._labelsVisibilitiesBits=new Uint8Array(te-ce));for(var ne=["label","show"],le=["emphasis","label","show"],se=ce;se<te;se++){var fe=Se.getItemModel(se),he=fe.get(ne),ie=fe.get(le);ie==null&&(ie=he);var ue=(he?xe:0)|(ie?pe:0);this._labelsVisibilitiesBits[se-ce]=ue}this._start=ce,this._end=te,this._data=Se},Ae.prototype.updateLabels=function(Se){if(this._data){Se=Se||[];for(var ce=Se.length>0,te={},ne=0;ne<Se.length;ne++)te[Se[ne]]=!0;this._labelsMesh.geometry.convertToDynamicArray(!0),this._labelTextureSurface.clear();for(var le=["label"],se=["emphasis","label"],fe=this._data.hostModel,he=this._data,ie=fe.getModel(le),ue=fe.getModel(se,ie),me={left:"right",right:"left",top:"center",bottom:"center"},Ce={left:"middle",right:"middle",top:"bottom",bottom:"top"},Ie=this._start;Ie<this._end;Ie++){var Fe=!1;ce&&te[Ie]&&(Fe=!0);var Re=this._labelsVisibilitiesBits[Ie-this._start]&(Fe?pe:xe);if(Re){var Ue=he.getItemModel(Ie),Ge=Ue.getModel(Fe?se:le,Fe?ue:ie),Je=Ge.get("distance")||0,Qe=Ge.get("position"),rt=Ge.getModel("textStyle"),$e=this._api.getDevicePixelRatio(),qe=fe.getFormattedLabel(Ie,Fe?"emphasis":"normal");if(qe==null||qe==="")return;var ot=new Me.a.graphic.Text;Me.a.graphic.setTextStyle(ot.style,rt,{text:qe,textFill:rt.get("color")||he.getItemVisual(Ie,"color")||"#000",textAlign:"left",textVerticalAlign:"top",opacity:Pe.a.firstNotNull(rt.get("opacity"),he.getItemVisual(Ie,"opacity"),1)});var at=ot.getBoundingRect(),ut=1.2;at.height*=ut;var nt=this._labelTextureSurface.add(ot),lt=me[Qe]||"center",yt=Ce[Qe]||"bottom";this._labelsMesh.geometry.addSprite(this.getLabelPosition(Ie,Qe,Je),[at.width*$e,at.height*$e],nt,lt,yt,this.getLabelDistance(Ie,Qe,Je)*$e)}}this._labelsMesh.material.set("uvScale",this._labelTextureSurface.getCoordsScale()),this._labelTextureSurface.getZr().refreshImmediately(),this._labelsMesh.geometry.convertToTypedArray(),this._labelsMesh.geometry.dirty()}},Ne.a=Ae},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(2),Ee=be(216),Pe=be(217),xe=be(61),pe=be(9),Ae=be(3),Se=20,ce=-10;function te(le,se){return le&&se&&le[0]===se[0]&&le[1]===se[1]}function ne(le,se){this.rootNode=new ve.a.Node,this.is2D=le,this._labelsBuilder=new xe.a(256,256,se),this._labelsBuilder.getMesh().renderOrder=100,this.rootNode.add(this._labelsBuilder.getMesh()),this._api=se,this._spriteImageCanvas=document.createElement("canvas"),this._startDataIndex=0,this._endDataIndex=0,this._sizeScale=1}ne.prototype={constructor:ne,highlightOnMouseover:!0,update:function(le,se,fe,he,ie){var ue=this._prevMesh;this._prevMesh=this._mesh,this._mesh=ue;var me=le.getData();if(he==null&&(he=0),ie==null&&(ie=me.count()),this._startDataIndex=he,this._endDataIndex=ie-1,!this._mesh){var Ce=this._prevMesh&&this._prevMesh.material;this._mesh=new Pe.a({renderOrder:10,frustumCulling:!1}),Ce&&(this._mesh.material=Ce)}var Ce=this._mesh.material,Ie=this._mesh.geometry,Fe=Ie.attributes;this.rootNode.remove(this._prevMesh),this.rootNode.add(this._mesh),this._setPositionTextureToMesh(this._mesh,this._positionTexture);var Re=this._getSymbolInfo(le,he,ie),Ue=fe.getDevicePixelRatio(),Ge=le.getModel("itemStyle").getItemStyle(),Je=le.get("large"),Qe=1;Re.maxSize>2?(Qe=this._updateSymbolSprite(le,Ge,Re,Ue),Ce.enableTexture("sprite")):Ce.disableTexture("sprite"),Fe.position.init(ie-he);var rt=[];if(Je){Ce.undefine("VERTEX_SIZE"),Ce.undefine("VERTEX_COLOR");var $e=me.getVisual("color"),qe=me.getVisual("opacity");ve.a.parseColor($e,rt),rt[3]*=qe,Ce.set({color:rt,u_Size:Re.maxSize*this._sizeScale})}else Ce.set({color:[1,1,1,1]}),Ce.define("VERTEX_SIZE"),Ce.define("VERTEX_COLOR"),Fe.size.init(ie-he),Fe.color.init(ie-he),this._originalOpacity=new Float32Array(ie-he);for(var ot=me.getLayout("points"),at=Fe.position.value,ut=!1,nt=0;nt<ie-he;nt++){var lt=nt*3,yt=nt*2;if(this.is2D?(at[lt]=ot[yt],at[lt+1]=ot[yt+1],at[lt+2]=ce):(at[lt]=ot[lt],at[lt+1]=ot[lt+1],at[lt+2]=ot[lt+2]),!Je){var $e=me.getItemVisual(nt,"color"),qe=me.getItemVisual(nt,"opacity");ve.a.parseColor($e,rt),rt[3]*=qe,Fe.color.set(nt,rt),rt[3]<.99&&(ut=!0);var ft=me.getItemVisual(nt,"symbolSize");ft=ft instanceof Array?Math.max(ft[0],ft[1]):ft,isNaN(ft)&&(ft=0),Fe.size.value[nt]=ft*Qe*this._sizeScale,this._originalOpacity[nt]=rt[3]}}this._mesh.sizeScale=Qe,Ie.updateBoundingBox(),Ie.dirty(),this._updateMaterial(le,Ge);var ct=le.coordinateSystem;if(ct&&ct.viewGL){var vt=ct.viewGL.isLinearSpace()?"define":"undefine";Ce[vt]("fragment","SRGB_DECODE")}Je||this._updateLabelBuilder(le,he,ie),this._updateHandler(le,se,fe),this._updateAnimation(le),this._api=fe},getPointsMesh:function(){return this._mesh},updateLabels:function(le){this._labelsBuilder.updateLabels(le)},hideLabels:function(){this.rootNode.remove(this._labelsBuilder.getMesh())},showLabels:function(){this.rootNode.add(this._labelsBuilder.getMesh())},_updateSymbolSprite:function(le,se,fe,he){fe.maxSize=Math.min(fe.maxSize*2,200);var ie=[];return fe.aspect>1?(ie[0]=fe.maxSize,ie[1]=fe.maxSize/fe.aspect):(ie[1]=fe.maxSize,ie[0]=fe.maxSize*fe.aspect),ie[0]=ie[0]||1,ie[1]=ie[1]||1,(this._symbolType!==fe.type||!te(this._symbolSize,ie)||this._lineWidth!==se.lineWidth)&&(Ee.a.createSymbolSprite(fe.type,ie,{fill:"#fff",lineWidth:se.lineWidth,stroke:"transparent",shadowColor:"transparent",minMargin:Math.min(ie[0]/2,10)},this._spriteImageCanvas),Ee.a.createSDFFromCanvas(this._spriteImageCanvas,Math.min(this._spriteImageCanvas.width,32),Se,this._mesh.material.get("sprite").image),this._symbolType=fe.type,this._symbolSize=ie,this._lineWidth=se.lineWidth),this._spriteImageCanvas.width/fe.maxSize*he},_updateMaterial:function(le,se){var fe=le.get("blendMode")==="lighter"?ve.a.additiveBlend:null,he=this._mesh.material;he.blend=fe,he.set("lineWidth",se.lineWidth/Se);var ie=ve.a.parseColor(se.stroke);he.set("strokeColor",ie),he.transparent=!0,he.depthMask=!1,he.depthTest=!this.is2D,he.sortVertices=!this.is2D},_updateLabelBuilder:function(le,me,fe){var he=le.getData(),ie=this._mesh.geometry,ue=ie.attributes.position.value,me=this._startDataIndex,Ce=this._mesh.sizeScale;this._labelsBuilder.updateData(he,me,fe),this._labelsBuilder.getLabelPosition=function(Ie,Fe,Re){var Ue=(Ie-me)*3;return[ue[Ue],ue[Ue+1],ue[Ue+2]]},this._labelsBuilder.getLabelDistance=function(Ie,Fe,Re){var Ue=ie.attributes.size.get(Ie-me)/Ce;return Ue/2+Re},this._labelsBuilder.updateLabels()},_updateAnimation:function(le){ve.a.updateVertexAnimation([["prevPosition","position"],["prevSize","size"]],this._prevMesh,this._mesh,le)},_updateHandler:function(le,se,fe){var he=le.getData(),ie=this._mesh,ue=this,me=-1,Ce=le.coordinateSystem&&le.coordinateSystem.type==="cartesian3D",Ie;Ce&&(Ie=le.coordinateSystem.model),ie.seriesIndex=le.seriesIndex,ie.off("mousemove"),ie.off("mouseout"),ie.on("mousemove",function(Fe){var Re=Fe.vertexIndex+ue._startDataIndex;Re!==me&&(this.highlightOnMouseover&&(this.downplay(he,me),this.highlight(he,Re),this._labelsBuilder.updateLabels([Re])),Ce&&fe.dispatchAction({type:"grid3DShowAxisPointer",value:[he.get(le.coordDimToDataDim("x")[0],Re),he.get(le.coordDimToDataDim("y")[0],Re),he.get(le.coordDimToDataDim("z")[0],Re)],grid3DIndex:Ie.componentIndex})),ie.dataIndex=Re,me=Re},this),ie.on("mouseout",function(Fe){var Re=Fe.vertexIndex+ue._startDataIndex;this.highlightOnMouseover&&(this.downplay(he,Re),this._labelsBuilder.updateLabels()),me=-1,ie.dataIndex=-1,Ce&&fe.dispatchAction({type:"grid3DHideAxisPointer",grid3DIndex:Ie.componentIndex})},this)},updateLayout:function(le,se,fe){var he=le.getData();if(this._mesh){var ie=this._mesh.geometry.attributes.position.value,ue=he.getLayout("points");if(this.is2D)for(var me=0;me<ue.length/2;me++){var Ce=me*3,Ie=me*2;ie[Ce]=ue[Ie],ie[Ce+1]=ue[Ie+1],ie[Ce+2]=ce}else for(var me=0;me<ue.length;me++)ie[me]=ue[me];this._mesh.geometry.dirty(),fe.getZr().refresh()}},updateView:function(le){if(this._mesh){var se=new pe.a;pe.a.mul(se,le.viewMatrix,this._mesh.worldTransform),pe.a.mul(se,le.projectionMatrix,se),this._mesh.updateNDCPosition(se,this.is2D,this._api)}},highlight:function(le,se){if(!(se>this._endDataIndex||se<this._startDataIndex)){var fe=le.getItemModel(se),he=fe.getModel("emphasis.itemStyle"),ie=he.get("color"),ue=he.get("opacity");if(ie==null){var me=le.getItemVisual(se,"color");ie=Me.a.color.lift(me,-.4)}ue==null&&(ue=le.getItemVisual(se,"opacity"));var Ce=ve.a.parseColor(ie);Ce[3]*=ue,this._mesh.geometry.attributes.color.set(se-this._startDataIndex,Ce),this._mesh.geometry.dirtyAttribute("color"),this._api.getZr().refresh()}},downplay:function(le,se){if(!(se>this._endDataIndex||se<this._startDataIndex)){var fe=le.getItemVisual(se,"color"),he=le.getItemVisual(se,"opacity"),ie=ve.a.parseColor(fe);ie[3]*=he,this._mesh.geometry.attributes.color.set(se-this._startDataIndex,ie),this._mesh.geometry.dirtyAttribute("color"),this._api.getZr().refresh()}},fadeOutAll:function(le){if(this._originalOpacity){for(var se=this._mesh.geometry,fe=0;fe<se.vertexCount;fe++){var he=this._originalOpacity[fe]*le;se.attributes.color.value[fe*4+3]=he}se.dirtyAttribute("color"),this._api.getZr().refresh()}},fadeInAll:function(){this.fadeOutAll(1)},setPositionTexture:function(le){this._mesh&&this._setPositionTextureToMesh(this._mesh,le),this._positionTexture=le},removePositionTexture:function(){this._positionTexture=null,this._mesh&&this._setPositionTextureToMesh(this._mesh,null)},setSizeScale:function(le){if(le!==this._sizeScale){if(this._mesh){var se=this._mesh.material.get("u_Size");this._mesh.material.set("u_Size",se/this._sizeScale*le);var fe=this._mesh.geometry.attributes;if(fe.size.value)for(var he=0;he<fe.size.value.length;he++)fe.size.value[he]=fe.size.value[he]/this._sizeScale*le}this._sizeScale=le}},_setPositionTextureToMesh:function(le,se){se&&le.material.set("positionTexture",se),le.material[se?"enableTexture":"disableTexture"]("positionTexture")},_getSymbolInfo:function(le,se,fe){if(le.get("large")){var he=Ae.a.firstNotNull(le.get("symbolSize"),1),Fe,ue;return he instanceof Array?(Fe=Math.max(he[0],he[1]),ue=he[0]/he[1]):(Fe=he,ue=1),{maxSize:he,type:le.get("symbol"),aspect:ue}}for(var ie=le.getData(),ue,me=!1,Ce=ie.getItemVisual(0,"symbol")||"circle",Ie=!1,Fe=0,Re=se;Re<fe;Re++){var he=ie.getItemVisual(Re,"symbolSize"),Ue=ie.getItemVisual(Re,"symbol"),Ge;if(he instanceof Array)Ge=he[0]/he[1],Fe=Math.max(Math.max(he[0],he[1]),Fe);else{if(isNaN(he))return;Ge=1,Fe=Math.max(he,Fe)}ue!=null&&Math.abs(Ge-ue)>.05&&(me=!0),Ue!==Ce&&(Ie=!0),Ce=Ue,ue=Ge}return me&&console.warn("Different symbol width / height ratio will be ignored."),Ie&&console.warn("Different symbol type will be ignored."),{maxSize:Fe,type:Ce,aspect:ue}}},Ne.a=ne},function(He,Ne,be){"use strict";Ne.a=`@export clay.prez.vertex
|
|
|
uniform mat4 worldViewProjection : WORLDVIEWPROJECTION;
|
|
|
attribute vec3 position : POSITION;
|
|
|
@import clay.chunk.skinning_header
|
|
|
void main()
|
|
|
{
|
|
|
vec3 skinnedPosition = position;
|
|
|
#ifdef SKINNING
|
|
|
@import clay.chunk.skin_matrix
|
|
|
skinnedPosition = (skinMatrixWS * vec4(position, 1.0)).xyz;
|
|
|
#endif
|
|
|
gl_Position = worldViewProjection * vec4(skinnedPosition, 1.0);
|
|
|
}
|
|
|
@end
|
|
|
@export clay.prez.fragment
|
|
|
void main()
|
|
|
{
|
|
|
gl_FragColor = vec4(0.0, 0.0, 0.0, 1.0);
|
|
|
}
|
|
|
@end`},function(He,Ne,be){"use strict";var _e=be(28),Me=be(11),ve=0,Ee=null,Pe=!0,xe,pe=function(){this.triangleCount=0,this.vertexCount=0,this.drawCallCount=0};function Ae(ce,te,ne){this.availableAttributes=ce,this.availableAttributeSymbols=te,this.indicesBuffer=ne,this.vao=null}var Se=_e.a.extend({material:null,geometry:null,mode:Me.a.TRIANGLES,_drawCache:null,_renderInfo:null},function(){this._drawCache={},this._renderInfo=new pe},{__program:null,lightGroup:0,renderOrder:0,lineWidth:1,culling:!0,cullFace:Me.a.BACK,frontFace:Me.a.CCW,frustumCulling:!0,receiveShadow:!0,castShadow:!0,ignorePicking:!1,ignorePreZ:!1,ignoreGBuffer:!1,isRenderable:function(){return this.geometry&&this.material&&this.material.shader&&!this.invisible&&this.geometry.vertexCount>0},beforeRender:function(ce){},afterRender:function(ce,te){},getBoundingBox:function(ce,te){return te=_e.a.prototype.getBoundingBox.call(this,ce,te),this.geometry&&this.geometry.boundingBox&&te.union(this.geometry.boundingBox),te},render:function(ce,te,ne){var le=ce.gl;te=te||this.material;var se=te.shader,fe=this.geometry,he=this.mode,ie=fe.vertexCount,ue=fe.isUseIndices(),me=ce.getGLExtension("OES_element_index_uint"),Ce=me&&ie>65535,Ie=Ce?le.UNSIGNED_INT:le.UNSIGNED_SHORT,Fe=ce.getGLExtension("OES_vertex_array_object"),Re=!fe.dynamic,Ue=this._renderInfo;Ue.vertexCount=ie,Ue.triangleCount=0,Ue.drawCallCount=0;var Ge=!1;if(xe=ce.__uid__+"-"+fe.__uid__+"-"+ne.__uid__,(xe!==ve||Fe&&Re||fe._cache.isDirty("any"))&&(Ge=!0),ve=xe,!Ge)Pe?(le.drawElements(he,Ee.count,Ie,0),Ue.triangleCount=Ee.count/3):le.drawArrays(he,0,ie),Ue.drawCallCount=1;else{var Je=this._drawCache[xe];if(!Je){var Qe=fe.getBufferChunks(ce);if(!Qe)return;Je=[];for(var rt=0;rt<Qe.length;rt++){for(var $e=Qe[rt],qe=$e.attributeBuffers,ot=$e.indicesBuffer,at=[],ut=[],nt=0;nt<qe.length;nt++){var lt=qe[nt],yt=lt.name,ft=lt.semantic,ct;if(ft){var vt=se.attributeSemantics[ft];ct=vt&&vt.symbol}else ct=yt;ct&&ne.attributes[ct]&&(at.push(lt),ut.push(ct))}var Ut=new Ae(at,ut,ot);Je.push(Ut)}Re&&(this._drawCache[xe]=Je)}for(var Zt=0;Zt<Je.length;Zt++){var Ut=Je[Zt],en=!0;Fe&&Re&&(Ut.vao==null?Ut.vao=Fe.createVertexArrayOES():en=!1,Fe.bindVertexArrayOES(Ut.vao));var at=Ut.availableAttributes,ot=Ut.indicesBuffer;if(en)for(var mn=ne.enableAttributes(ce,Ut.availableAttributeSymbols,Fe&&Re&&Ut.vao),nt=0;nt<at.length;nt++){var Bt=mn[nt];if(Bt!==-1){var lt=at[nt],tn=lt.buffer,on=lt.size,Mn;switch(lt.type){case"float":Mn=le.FLOAT;break;case"byte":Mn=le.BYTE;break;case"ubyte":Mn=le.UNSIGNED_BYTE;break;case"short":Mn=le.SHORT;break;case"ushort":Mn=le.UNSIGNED_SHORT;break;default:Mn=le.FLOAT;break}le.bindBuffer(le.ARRAY_BUFFER,tn),le.vertexAttribPointer(Bt,on,Mn,!1,0,0)}}(he==Me.a.LINES||he==Me.a.LINE_STRIP||he==Me.a.LINE_LOOP)&&le.lineWidth(this.lineWidth),Ee=ot,Pe=fe.isUseIndices(),Pe?(en&&le.bindBuffer(le.ELEMENT_ARRAY_BUFFER,ot.buffer),le.drawElements(he,ot.count,Ie,0),Ue.triangleCount+=ot.count/3):le.drawArrays(he,0,ie),Fe&&Re&&Fe.bindVertexArrayOES(null),Ue.drawCallCount++}}return Ue},clone:function(){var ce=["castShadow","receiveShadow","mode","culling","cullFace","frontFace","frustumCulling","renderOrder","lineWidth","ignorePicking","ignorePreZ","ignoreGBuffer"];return function(){var te=_e.a.prototype.clone.call(this);te.geometry=this.geometry,te.material=this.material;for(var ne=0;ne<ce.length;ne++){var le=ce[ne];te[le]!==this[le]&&(te[le]=this[le])}return te}}()});Se.POINTS=Me.a.POINTS,Se.LINES=Me.a.LINES,Se.LINE_LOOP=Me.a.LINE_LOOP,Se.LINE_STRIP=Me.a.LINE_STRIP,Se.TRIANGLES=Me.a.TRIANGLES,Se.TRIANGLE_STRIP=Me.a.TRIANGLE_STRIP,Se.TRIANGLE_FAN=Me.a.TRIANGLE_FAN,Se.BACK=Me.a.BACK,Se.FRONT=Me.a.FRONT,Se.FRONT_AND_BACK=Me.a.FRONT_AND_BACK,Se.CW=Me.a.CW,Se.CCW=Me.a.CCW,Se.RenderInfo=pe,Ne.a=Se},function(He,Ne){var be=typeof window!="undefined"&&(window.requestAnimationFrame&&window.requestAnimationFrame.bind(window)||window.msRequestAnimationFrame&&window.msRequestAnimationFrame.bind(window)||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame)||function(_e){setTimeout(_e,16)};He.exports=be},function(He,Ne,be){"use strict";var _e={};_e.isPowerOfTwo=function(Me){return(Me&Me-1)===0},_e.nextPowerOfTwo=function(Me){return Me--,Me|=Me>>1,Me|=Me>>2,Me|=Me>>4,Me|=Me>>8,Me|=Me>>16,Me++,Me},_e.nearestPowerOfTwo=function(Me){return Math.pow(2,Math.round(Math.log(Me)/Math.LN2))},Ne.a=_e},function(He,Ne,be){"use strict";var _e=be(4),Me=be(1),ve=be.n(Me),Ee=ve.a.vec3,Pe=ve.a.mat4,xe=ve.a.vec4,pe=function(Ae,Se){this.normal=Ae||new _e.a(0,1,0),this.distance=Se||0};pe.prototype={constructor:pe,distanceToPoint:function(Ae){return Ee.dot(Ae.array,this.normal.array)-this.distance},projectPoint:function(Ae,Se){Se||(Se=new _e.a);var ce=this.distanceToPoint(Ae);return Ee.scaleAndAdd(Se.array,Ae.array,this.normal.array,-ce),Se._dirty=!0,Se},normalize:function(){var Ae=1/Ee.len(this.normal.array);Ee.scale(this.normal.array,Ae),this.distance*=Ae},intersectFrustum:function(Ae){for(var Se=Ae.vertices,ce=this.normal.array,te=Ee.dot(Se[0].array,ce)>this.distance,ne=1;ne<8;ne++)if(Ee.dot(Se[ne].array,ce)>this.distance!=te)return!0},intersectLine:function(){var Ae=Ee.create();return function(Se,ce,te){var ne=this.distanceToPoint(Se),le=this.distanceToPoint(ce);if(ne>0&&le>0||ne<0&&le<0)return null;var se=this.normal.array,fe=this.distance,he=Se.array;Ee.sub(Ae,ce.array,Se.array),Ee.normalize(Ae,Ae);var ie=Ee.dot(se,Ae);if(ie===0)return null;te||(te=new _e.a);var ue=(Ee.dot(se,he)-fe)/ie;return Ee.scaleAndAdd(te.array,he,Ae,-ue),te._dirty=!0,te}}(),applyTransform:function(){var Ae=Pe.create(),Se=xe.create(),ce=xe.create();return ce[3]=1,function(te){te=te.array,Ee.scale(ce,this.normal.array,this.distance),xe.transformMat4(ce,ce,te),this.distance=Ee.dot(ce,this.normal.array),Pe.invert(Ae,te),Pe.transpose(Ae,Ae),Se[3]=0,Ee.copy(Se,this.normal.array),xe.transformMat4(Se,Se,Ae),Ee.copy(this.normal.array,Se)}}(),copy:function(Ae){Ee.copy(this.normal.array,Ae.normal.array),this.normal._dirty=!0,this.distance=Ae.distance},clone:function(){var Ae=new pe;return Ae.copy(this),Ae}},Ne.a=pe},function(He,Ne,be){"use strict";var _e=be(13),Me=be(15),ve=_e.a.extend({dynamic:!1,widthSegments:40,heightSegments:20,phiStart:0,phiLength:Math.PI*2,thetaStart:0,thetaLength:Math.PI,radius:1},function(){this.build()},{build:function(){var Ee=this.heightSegments,Pe=this.widthSegments,xe=this.attributes.position,pe=this.attributes.texcoord0,Ae=this.attributes.normal,Se=(Pe+1)*(Ee+1);xe.init(Se),pe.init(Se),Ae.init(Se);var ce=Se>65535?Uint32Array:Uint16Array,te=this.indices=new ce(Pe*Ee*6),ne,le,se,fe,he,ie,ue,Re=this.radius,me=this.phiStart,Ce=this.phiLength,Ie=this.thetaStart,Fe=this.thetaLength,Re=this.radius,Ue=[],Ge=[],Je=0,Qe=1/Re;for(ue=0;ue<=Ee;ue++)for(ie=0;ie<=Pe;ie++)fe=ie/Pe,he=ue/Ee,ne=-Re*Math.cos(me+fe*Ce)*Math.sin(Ie+he*Fe),le=Re*Math.cos(Ie+he*Fe),se=Re*Math.sin(me+fe*Ce)*Math.sin(Ie+he*Fe),Ue[0]=ne,Ue[1]=le,Ue[2]=se,Ge[0]=fe,Ge[1]=he,xe.set(Je,Ue),pe.set(Je,Ge),Ue[0]*=Qe,Ue[1]*=Qe,Ue[2]*=Qe,Ae.set(Je,Ue),Je++;var rt,$e,qe,ot,at=Pe+1,ut=0;for(ue=0;ue<Ee;ue++)for(ie=0;ie<Pe;ie++)$e=ue*at+ie,rt=ue*at+ie+1,ot=(ue+1)*at+ie+1,qe=(ue+1)*at+ie,te[ut++]=rt,te[ut++]=$e,te[ut++]=ot,te[ut++]=$e,te[ut++]=qe,te[ut++]=ot;this.boundingBox=new Me.a,this.boundingBox.max.set(Re,Re,Re),this.boundingBox.min.set(-Re,-Re,-Re)}});Ne.a=ve},function(He,Ne,be){"use strict";var _e=be(13),Me=be(37),ve=be(9),Ee=be(4),Pe=be(15),xe=be(18),pe=new ve.a,Ae=_e.a.extend({dynamic:!1,widthSegments:1,heightSegments:1,depthSegments:1,inside:!1},function(){this.build()},{build:function(){var ce={px:Se("px",this.depthSegments,this.heightSegments),nx:Se("nx",this.depthSegments,this.heightSegments),py:Se("py",this.widthSegments,this.depthSegments),ny:Se("ny",this.widthSegments,this.depthSegments),pz:Se("pz",this.widthSegments,this.heightSegments),nz:Se("nz",this.widthSegments,this.heightSegments)},te=["position","texcoord0","normal"],ne=0,le=0;for(var se in ce)ne+=ce[se].vertexCount,le+=ce[se].indices.length;for(var fe=0;fe<te.length;fe++)this.attributes[te[fe]].init(ne);this.indices=new xe.a.Uint16Array(le);var he=0,ie=0;for(var se in ce){for(var ue=ce[se],fe=0;fe<te.length;fe++)for(var me=te[fe],Ce=ue.attributes[me].value,Ie=ue.attributes[me].size,Fe=me==="normal",Re=0;Re<Ce.length;Re++){var Ue=Ce[Re];this.inside&&Fe&&(Ue=-Ue),this.attributes[me].value[Re+Ie*ie]=Ue}for(var Ge=ue.indices.length,Re=0;Re<ue.indices.length;Re++)this.indices[Re+he]=ie+ue.indices[this.inside?Ge-Re-1:Re];he+=ue.indices.length,ie+=ue.vertexCount}this.boundingBox=new Pe.a,this.boundingBox.max.set(1,1,1),this.boundingBox.min.set(-1,-1,-1)}});function Se(ce,te,ne){pe.identity();var le=new Me.a({widthSegments:te,heightSegments:ne});switch(ce){case"px":ve.a.translate(pe,pe,Ee.a.POSITIVE_X),ve.a.rotateY(pe,pe,Math.PI/2);break;case"nx":ve.a.translate(pe,pe,Ee.a.NEGATIVE_X),ve.a.rotateY(pe,pe,-Math.PI/2);break;case"py":ve.a.translate(pe,pe,Ee.a.POSITIVE_Y),ve.a.rotateX(pe,pe,-Math.PI/2);break;case"ny":ve.a.translate(pe,pe,Ee.a.NEGATIVE_Y),ve.a.rotateX(pe,pe,Math.PI/2);break;case"pz":ve.a.translate(pe,pe,Ee.a.POSITIVE_Z);break;case"nz":ve.a.translate(pe,pe,Ee.a.NEGATIVE_Z),ve.a.rotateY(pe,pe,Math.PI);break}return le.applyTransform(pe),le}Ne.a=Ae},function(He,Ne,be){"use strict";var _e=be(19),Me=be(4),ve=_e.a.extend({shadowBias:.001,shadowSlopeScale:2,shadowCascade:1,cascadeSplitLogFactor:.2},{type:"DIRECTIONAL_LIGHT",uniformTemplates:{directionalLightDirection:{type:"3f",value:function(Ee){return Ee.__dir=Ee.__dir||new Me.a,Ee.__dir.copy(Ee.worldTransform.z).normalize().negate().array}},directionalLightColor:{type:"3f",value:function(Ee){var Pe=Ee.color,xe=Ee.intensity;return[Pe[0]*xe,Pe[1]*xe,Pe[2]*xe]}}},clone:function(){var Ee=_e.a.prototype.clone.call(this);return Ee.shadowBias=this.shadowBias,Ee.shadowSlopeScale=this.shadowSlopeScale,Ee}});Ne.a=ve},function(He,Ne,be){"use strict";var _e=be(19),Me=_e.a.extend({range:100,castShadow:!1},{type:"POINT_LIGHT",uniformTemplates:{pointLightPosition:{type:"3f",value:function(ve){return ve.getWorldPosition().array}},pointLightRange:{type:"1f",value:function(ve){return ve.range}},pointLightColor:{type:"3f",value:function(ve){var Ee=ve.color,Pe=ve.intensity;return[Ee[0]*Pe,Ee[1]*Pe,Ee[2]*Pe]}}},clone:function(){var ve=_e.a.prototype.clone.call(this);return ve.range=this.range,ve}});Ne.a=Me},function(He,Ne,be){"use strict";var _e=be(19),Me=be(4),ve=_e.a.extend({range:20,umbraAngle:30,penumbraAngle:45,falloffFactor:2,shadowBias:2e-4,shadowSlopeScale:2},{type:"SPOT_LIGHT",uniformTemplates:{spotLightPosition:{type:"3f",value:function(Ee){return Ee.getWorldPosition().array}},spotLightRange:{type:"1f",value:function(Ee){return Ee.range}},spotLightUmbraAngleCosine:{type:"1f",value:function(Ee){return Math.cos(Ee.umbraAngle*Math.PI/180)}},spotLightPenumbraAngleCosine:{type:"1f",value:function(Ee){return Math.cos(Ee.penumbraAngle*Math.PI/180)}},spotLightFalloffFactor:{type:"1f",value:function(Ee){return Ee.falloffFactor}},spotLightDirection:{type:"3f",value:function(Ee){return Ee.__dir=Ee.__dir||new Me.a,Ee.__dir.copy(Ee.worldTransform.z).negate().array}},spotLightColor:{type:"3f",value:function(Ee){var Pe=Ee.color,xe=Ee.intensity;return[Pe[0]*xe,Pe[1]*xe,Pe[2]*xe]}}},clone:function(){var Ee=_e.a.prototype.clone.call(this);return Ee.range=this.range,Ee.umbraAngle=this.umbraAngle,Ee.penumbraAngle=this.penumbraAngle,Ee.falloffFactor=this.falloffFactor,Ee.shadowBias=this.shadowBias,Ee.shadowSlopeScale=this.shadowSlopeScale,Ee}});Ne.a=ve},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(5);function Ee(xe,pe,Ae,Se,ce,te,ne){this._zr=xe,this._x=0,this._y=0,this._rowHeight=0,this.width=Se,this.height=ce,this.offsetX=pe,this.offsetY=Ae,this.dpr=ne,this.gap=te}Ee.prototype={constructor:Ee,clear:function(){this._x=0,this._y=0,this._rowHeight=0},add:function(xe,pe,Ae){var Se=xe.getBoundingRect();pe==null&&(pe=Se.width),Ae==null&&(Ae=Se.height),pe*=this.dpr,Ae*=this.dpr,this._fitElement(xe,pe,Ae);var ce=this._x,te=this._y,ne=this.width*this.dpr,le=this.height*this.dpr,se=this.gap;if(ce+pe+se>ne&&(ce=this._x=0,te+=this._rowHeight+se,this._y=te,this._rowHeight=0),this._x+=pe+se,this._rowHeight=Math.max(this._rowHeight,Ae),te+Ae+se>le)return null;xe.position[0]+=this.offsetX*this.dpr+ce,xe.position[1]+=this.offsetY*this.dpr+te,this._zr.add(xe);var fe=[this.offsetX/this.width,this.offsetY/this.height],he=[[ce/ne+fe[0],te/le+fe[1]],[(ce+pe)/ne+fe[0],(te+Ae)/le+fe[1]]];return he},_fitElement:function(xe,pe,Ae){var Se=xe.getBoundingRect(),ce=pe/Se.width,te=Ae/Se.height;xe.position=[-Se.x*ce,-Se.y*te],xe.scale=[ce,te],xe.update()}};function Pe(xe){xe=xe||{},xe.width=xe.width||512,xe.height=xe.height||512,xe.devicePixelRatio=xe.devicePixelRatio||1,xe.gap=xe.gap==null?2:xe.gap;var pe=document.createElement("canvas");pe.width=xe.width*xe.devicePixelRatio,pe.height=xe.height*xe.devicePixelRatio,this._canvas=pe,this._texture=new ve.a({image:pe,flipY:!1});var Ae=this;this._zr=Me.a.zrender.init(pe);var Se=this._zr.refreshImmediately;this._zr.refreshImmediately=function(){Se.call(this),Ae._texture.dirty(),Ae.onupdate&&Ae.onupdate()},this._dpr=xe.devicePixelRatio,this._coords={},this.onupdate=xe.onupdate,this._gap=xe.gap,this._textureAtlasNodes=[new Ee(this._zr,0,0,xe.width,xe.height,this._gap,this._dpr)],this._nodeWidth=xe.width,this._nodeHeight=xe.height,this._currentNodeIdx=0}Pe.prototype={clear:function(){for(var xe=0;xe<this._textureAtlasNodes.length;xe++)this._textureAtlasNodes[xe].clear();this._currentNodeIdx=0,this._zr.clear(),this._coords={}},getWidth:function(){return this._width},getHeight:function(){return this._height},getTexture:function(){return this._texture},getDevicePixelRatio:function(){return this._dpr},getZr:function(){return this._zr},_getCurrentNode:function(){return this._textureAtlasNodes[this._currentNodeIdx]},_expand:function(){if(this._currentNodeIdx++,this._textureAtlasNodes[this._currentNodeIdx])return this._textureAtlasNodes[this._currentNodeIdx];var xe=4096/this._dpr,pe=this._textureAtlasNodes,Ae=pe.length,Se=Ae*this._nodeWidth%xe,ce=Math.floor(Ae*this._nodeWidth/xe)*this._nodeHeight;if(ce>=xe){console.error("Too much labels. Some will be ignored.");return}var te=(Se+this._nodeWidth)*this._dpr,ne=(ce+this._nodeHeight)*this._dpr;try{this._zr.resize({width:te,height:ne})}catch(se){this._canvas.width=te,this._canvas.height=ne}var le=new Ee(this._zr,Se,ce,this._nodeWidth,this._nodeHeight,this._gap,this._dpr);return this._textureAtlasNodes.push(le),le},add:function(xe,pe,Ae){if(this._coords[xe.id])return console.warn("Element already been add"),this._coords[xe.id];var Se=this._getCurrentNode().add(xe,pe,Ae);if(!Se){var ce=this._expand();if(!ce)return;Se=ce.add(xe,pe,Ae)}return this._coords[xe.id]=Se,Se},getCoordsScale:function(){var xe=this._dpr;return[this._nodeWidth/this._canvas.width*xe,this._nodeHeight/this._canvas.height*xe]},getCoords:function(xe){return this._coords[xe]}},Ne.a=Pe},function(He,Ne,be){"use strict";Ne.a=_e;function _e(Me,ve,Ee){var Pe,xe=Me.scale;return xe.type==="ordinal"&&(typeof Ee=="function"?(Pe=xe.getTicks()[ve],!Ee(Pe,xe.getLabel(Pe))):ve%(Ee+1))}},function(He,Ne,be){var _e=be(76),Me=be(77),ve=_e.applyTransform,Ee=Math.min,Pe=Math.max;function xe(Ae,Se,ce,te){ce<0&&(Ae=Ae+ce,ce=-ce),te<0&&(Se=Se+te,te=-te),this.x=Ae,this.y=Se,this.width=ce,this.height=te}xe.prototype={constructor:xe,union:function(Ae){var Se=Ee(Ae.x,this.x),ce=Ee(Ae.y,this.y);this.width=Pe(Ae.x+Ae.width,this.x+this.width)-Se,this.height=Pe(Ae.y+Ae.height,this.y+this.height)-ce,this.x=Se,this.y=ce},applyTransform:function(){var Ae=[],Se=[],ce=[],te=[];return function(ne){if(ne){Ae[0]=ce[0]=this.x,Ae[1]=te[1]=this.y,Se[0]=te[0]=this.x+this.width,Se[1]=ce[1]=this.y+this.height,ve(Ae,Ae,ne),ve(Se,Se,ne),ve(ce,ce,ne),ve(te,te,ne),this.x=Ee(Ae[0],Se[0],ce[0],te[0]),this.y=Ee(Ae[1],Se[1],ce[1],te[1]);var le=Pe(Ae[0],Se[0],ce[0],te[0]),se=Pe(Ae[1],Se[1],ce[1],te[1]);this.width=le-this.x,this.height=se-this.y}}}(),calculateTransform:function(Ae){var Se=this,ce=Ae.width/Se.width,te=Ae.height/Se.height,ne=Me.create();return Me.translate(ne,ne,[-Se.x,-Se.y]),Me.scale(ne,ne,[ce,te]),Me.translate(ne,ne,[Ae.x,Ae.y]),ne},intersect:function(Ae){if(!Ae)return!1;Ae instanceof xe||(Ae=xe.create(Ae));var Se=this,ce=Se.x,te=Se.x+Se.width,ne=Se.y,le=Se.y+Se.height,se=Ae.x,fe=Ae.x+Ae.width,he=Ae.y,ie=Ae.y+Ae.height;return!(te<se||fe<ce||le<he||ie<ne)},contain:function(Ae,Se){var ce=this;return Ae>=ce.x&&Ae<=ce.x+ce.width&&Se>=ce.y&&Se<=ce.y+ce.height},clone:function(){return new xe(this.x,this.y,this.width,this.height)},copy:function(Ae){this.x=Ae.x,this.y=Ae.y,this.width=Ae.width,this.height=Ae.height},plain:function(){return{x:this.x,y:this.y,width:this.width,height:this.height}}},xe.create=function(Ae){return new xe(Ae.x,Ae.y,Ae.width,Ae.height)};var pe=xe;He.exports=pe},function(He,Ne){var be=typeof Float32Array=="undefined"?Array:Float32Array;function _e(Je,Qe){var rt=new be(2);return Je==null&&(Je=0),Qe==null&&(Qe=0),rt[0]=Je,rt[1]=Qe,rt}function Me(Je,Qe){return Je[0]=Qe[0],Je[1]=Qe[1],Je}function ve(Je){var Qe=new be(2);return Qe[0]=Je[0],Qe[1]=Je[1],Qe}function Ee(Je,Qe,rt){return Je[0]=Qe,Je[1]=rt,Je}function Pe(Je,Qe,rt){return Je[0]=Qe[0]+rt[0],Je[1]=Qe[1]+rt[1],Je}function xe(Je,Qe,rt,$e){return Je[0]=Qe[0]+rt[0]*$e,Je[1]=Qe[1]+rt[1]*$e,Je}function pe(Je,Qe,rt){return Je[0]=Qe[0]-rt[0],Je[1]=Qe[1]-rt[1],Je}function Ae(Je){return Math.sqrt(ce(Je))}var Se=Ae;function ce(Je){return Je[0]*Je[0]+Je[1]*Je[1]}var te=ce;function ne(Je,Qe,rt){return Je[0]=Qe[0]*rt[0],Je[1]=Qe[1]*rt[1],Je}function le(Je,Qe,rt){return Je[0]=Qe[0]/rt[0],Je[1]=Qe[1]/rt[1],Je}function se(Je,Qe){return Je[0]*Qe[0]+Je[1]*Qe[1]}function fe(Je,Qe,rt){return Je[0]=Qe[0]*rt,Je[1]=Qe[1]*rt,Je}function he(Je,Qe){var rt=Ae(Qe);return rt===0?(Je[0]=0,Je[1]=0):(Je[0]=Qe[0]/rt,Je[1]=Qe[1]/rt),Je}function ie(Je,Qe){return Math.sqrt((Je[0]-Qe[0])*(Je[0]-Qe[0])+(Je[1]-Qe[1])*(Je[1]-Qe[1]))}var ue=ie;function me(Je,Qe){return(Je[0]-Qe[0])*(Je[0]-Qe[0])+(Je[1]-Qe[1])*(Je[1]-Qe[1])}var Ce=me;function Ie(Je,Qe){return Je[0]=-Qe[0],Je[1]=-Qe[1],Je}function Fe(Je,Qe,rt,$e){return Je[0]=Qe[0]+$e*(rt[0]-Qe[0]),Je[1]=Qe[1]+$e*(rt[1]-Qe[1]),Je}function Re(Je,Qe,rt){var $e=Qe[0],qe=Qe[1];return Je[0]=rt[0]*$e+rt[2]*qe+rt[4],Je[1]=rt[1]*$e+rt[3]*qe+rt[5],Je}function Ue(Je,Qe,rt){return Je[0]=Math.min(Qe[0],rt[0]),Je[1]=Math.min(Qe[1],rt[1]),Je}function Ge(Je,Qe,rt){return Je[0]=Math.max(Qe[0],rt[0]),Je[1]=Math.max(Qe[1],rt[1]),Je}Ne.create=_e,Ne.copy=Me,Ne.clone=ve,Ne.set=Ee,Ne.add=Pe,Ne.scaleAndAdd=xe,Ne.sub=pe,Ne.len=Ae,Ne.length=Se,Ne.lenSquare=ce,Ne.lengthSquare=te,Ne.mul=ne,Ne.div=le,Ne.dot=se,Ne.scale=fe,Ne.normalize=he,Ne.distance=ie,Ne.dist=ue,Ne.distanceSquare=me,Ne.distSquare=Ce,Ne.negate=Ie,Ne.lerp=Fe,Ne.applyTransform=Re,Ne.min=Ue,Ne.max=Ge},function(He,Ne){var be=typeof Float32Array=="undefined"?Array:Float32Array;function _e(){var ce=new be(6);return Me(ce),ce}function Me(ce){return ce[0]=1,ce[1]=0,ce[2]=0,ce[3]=1,ce[4]=0,ce[5]=0,ce}function ve(ce,te){return ce[0]=te[0],ce[1]=te[1],ce[2]=te[2],ce[3]=te[3],ce[4]=te[4],ce[5]=te[5],ce}function Ee(ce,te,ne){var le=te[0]*ne[0]+te[2]*ne[1],se=te[1]*ne[0]+te[3]*ne[1],fe=te[0]*ne[2]+te[2]*ne[3],he=te[1]*ne[2]+te[3]*ne[3],ie=te[0]*ne[4]+te[2]*ne[5]+te[4],ue=te[1]*ne[4]+te[3]*ne[5]+te[5];return ce[0]=le,ce[1]=se,ce[2]=fe,ce[3]=he,ce[4]=ie,ce[5]=ue,ce}function Pe(ce,te,ne){return ce[0]=te[0],ce[1]=te[1],ce[2]=te[2],ce[3]=te[3],ce[4]=te[4]+ne[0],ce[5]=te[5]+ne[1],ce}function xe(ce,te,ne){var le=te[0],se=te[2],fe=te[4],he=te[1],ie=te[3],ue=te[5],me=Math.sin(ne),Ce=Math.cos(ne);return ce[0]=le*Ce+he*me,ce[1]=-le*me+he*Ce,ce[2]=se*Ce+ie*me,ce[3]=-se*me+Ce*ie,ce[4]=Ce*fe+me*ue,ce[5]=Ce*ue-me*fe,ce}function pe(ce,te,ne){var le=ne[0],se=ne[1];return ce[0]=te[0]*le,ce[1]=te[1]*se,ce[2]=te[2]*le,ce[3]=te[3]*se,ce[4]=te[4]*le,ce[5]=te[5]*se,ce}function Ae(ce,te){var ne=te[0],le=te[2],se=te[4],fe=te[1],he=te[3],ie=te[5],ue=ne*he-fe*le;return ue?(ue=1/ue,ce[0]=he*ue,ce[1]=-fe*ue,ce[2]=-le*ue,ce[3]=ne*ue,ce[4]=(le*ie-he*se)*ue,ce[5]=(fe*se-ne*ie)*ue,ce):null}function Se(ce){var te=_e();return ve(te,ce),te}Ne.create=_e,Ne.identity=Me,Ne.copy=ve,Ne.mul=Ee,Ne.translate=Pe,Ne.rotate=xe,Ne.scale=pe,Ne.invert=Ae,Ne.clone=Se},function(He,Ne,be){var _e=be(12),Me=1e-4;function ve(Fe){return Fe.replace(/^\s+/,"").replace(/\s+$/,"")}function Ee(Fe,Re,Ue,Ge){var Je=Re[1]-Re[0],Qe=Ue[1]-Ue[0];if(Je===0)return Qe===0?Ue[0]:(Ue[0]+Ue[1])/2;if(Ge)if(Je>0){if(Fe<=Re[0])return Ue[0];if(Fe>=Re[1])return Ue[1]}else{if(Fe>=Re[0])return Ue[0];if(Fe<=Re[1])return Ue[1]}else{if(Fe===Re[0])return Ue[0];if(Fe===Re[1])return Ue[1]}return(Fe-Re[0])/Je*Qe+Ue[0]}function Pe(Fe,Re){switch(Fe){case"center":case"middle":Fe="50%";break;case"left":case"top":Fe="0%";break;case"right":case"bottom":Fe="100%";break}return typeof Fe=="string"?ve(Fe).match(/%$/)?parseFloat(Fe)/100*Re:parseFloat(Fe):Fe==null?NaN:+Fe}function xe(Fe,Re,Ue){return Re==null&&(Re=10),Re=Math.min(Math.max(0,Re),20),Fe=(+Fe).toFixed(Re),Ue?Fe:+Fe}function pe(Fe){return Fe.sort(function(Re,Ue){return Re-Ue}),Fe}function Ae(Fe){if(Fe=+Fe,isNaN(Fe))return 0;for(var Re=1,Ue=0;Math.round(Fe*Re)/Re!==Fe;)Re*=10,Ue++;return Ue}function Se(Fe){var Re=Fe.toString(),Ue=Re.indexOf("e");if(Ue>0){var Ge=+Re.slice(Ue+1);return Ge<0?-Ge:0}else{var Je=Re.indexOf(".");return Je<0?0:Re.length-1-Je}}function ce(Fe,Re){var Ue=Math.log,Ge=Math.LN10,Je=Math.floor(Ue(Fe[1]-Fe[0])/Ge),Qe=Math.round(Ue(Math.abs(Re[1]-Re[0]))/Ge),rt=Math.min(Math.max(-Je+Qe,0),20);return isFinite(rt)?rt:20}function te(Fe,Re,Ue){if(!Fe[Re])return 0;var Ge=_e.reduce(Fe,function(yt,ft){return yt+(isNaN(ft)?0:ft)},0);if(Ge===0)return 0;for(var Je=Math.pow(10,Ue),Qe=_e.map(Fe,function(yt){return(isNaN(yt)?0:yt)/Ge*Je*100}),rt=Je*100,$e=_e.map(Qe,function(yt){return Math.floor(yt)}),qe=_e.reduce($e,function(yt,ft){return yt+ft},0),ot=_e.map(Qe,function(yt,ft){return yt-$e[ft]});qe<rt;){for(var at=Number.NEGATIVE_INFINITY,ut=null,nt=0,lt=ot.length;nt<lt;++nt)ot[nt]>at&&(at=ot[nt],ut=nt);++$e[ut],ot[ut]=0,++qe}return $e[Re]/Je}var ne=9007199254740991;function le(Fe){var Re=Math.PI*2;return(Fe%Re+Re)%Re}function se(Fe){return Fe>-Me&&Fe<Me}var fe=/^(?:(\d{4})(?:[-\/](\d{1,2})(?:[-\/](\d{1,2})(?:[T ](\d{1,2})(?::(\d\d)(?::(\d\d)(?:[.,](\d+))?)?)?(Z|[\+\-]\d\d:?\d\d)?)?)?)?)?$/;function he(Fe){if(Fe instanceof Date)return Fe;if(typeof Fe=="string"){var Re=fe.exec(Fe);if(!Re)return new Date(NaN);if(Re[8]){var Ue=+Re[4]||0;return Re[8].toUpperCase()!=="Z"&&(Ue-=Re[8].slice(0,3)),new Date(Date.UTC(+Re[1],+(Re[2]||1)-1,+Re[3]||1,Ue,+(Re[5]||0),+Re[6]||0,+Re[7]||0))}else return new Date(+Re[1],+(Re[2]||1)-1,+Re[3]||1,+Re[4]||0,+(Re[5]||0),+Re[6]||0,+Re[7]||0)}else if(Fe==null)return new Date(NaN);return new Date(Math.round(Fe))}function ie(Fe){return Math.pow(10,ue(Fe))}function ue(Fe){return Math.floor(Math.log(Fe)/Math.LN10)}function me(Fe,Re){var Ue=ue(Fe),Ge=Math.pow(10,Ue),Je=Fe/Ge,Qe;return Re?Je<1.5?Qe=1:Je<2.5?Qe=2:Je<4?Qe=3:Je<7?Qe=5:Qe=10:Je<1?Qe=1:Je<2?Qe=2:Je<3?Qe=3:Je<5?Qe=5:Qe=10,Fe=Qe*Ge,Ue>=-20?+Fe.toFixed(Ue<0?-Ue:0):Fe}function Ce(Fe){Fe.sort(function(qe,ot){return $e(qe,ot,0)?-1:1});for(var Re=-1/0,Ue=1,Ge=0;Ge<Fe.length;){for(var Je=Fe[Ge].interval,Qe=Fe[Ge].close,rt=0;rt<2;rt++)Je[rt]<=Re&&(Je[rt]=Re,Qe[rt]=rt?1:1-Ue),Re=Je[rt],Ue=Qe[rt];Je[0]===Je[1]&&Qe[0]*Qe[1]!==1?Fe.splice(Ge,1):Ge++}return Fe;function $e(qe,ot,at){return qe.interval[at]<ot.interval[at]||qe.interval[at]===ot.interval[at]&&(qe.close[at]-ot.close[at]===(at?-1:1)||!at&&$e(qe,ot,1))}}function Ie(Fe){return Fe-parseFloat(Fe)>=0}Ne.linearMap=Ee,Ne.parsePercent=Pe,Ne.round=xe,Ne.asc=pe,Ne.getPrecision=Ae,Ne.getPrecisionSafe=Se,Ne.getPixelPrecision=ce,Ne.getPercentWithPrecision=te,Ne.MAX_SAFE_INTEGER=ne,Ne.remRadian=le,Ne.isRadianAroundZero=se,Ne.parseDate=he,Ne.quantity=ie,Ne.nice=me,Ne.reformIntervals=Ce,Ne.isNumeric=Ie},function(He,Ne,be){"use strict";var _e=be(5),Me=be(11),ve=be(21),Ee=function(){this._pool={},this._allocatedTextures=[]};Ee.prototype={constructor:Ee,get:function(ce){var te=pe(ce);this._pool.hasOwnProperty(te)||(this._pool[te]=[]);var ne=this._pool[te];if(!ne.length){var le=new _e.a(ce);return this._allocatedTextures.push(le),le}return ne.pop()},put:function(ce){var te=pe(ce);this._pool.hasOwnProperty(te)||(this._pool[te]=[]);var ne=this._pool[te];ne.push(ce)},clear:function(ce){for(var te=0;te<this._allocatedTextures.length;te++)this._allocatedTextures[te].dispose(ce);this._pool={},this._allocatedTextures=[]}};var Pe={width:512,height:512,type:Me.a.UNSIGNED_BYTE,format:Me.a.RGBA,wrapS:Me.a.CLAMP_TO_EDGE,wrapT:Me.a.CLAMP_TO_EDGE,minFilter:Me.a.LINEAR_MIPMAP_LINEAR,magFilter:Me.a.LINEAR,useMipmap:!0,anisotropic:1,flipY:!0,unpackAlignment:4,premultiplyAlpha:!1},xe=Object.keys(Pe);function pe(ce){ve.a.defaultsWithPropList(ce,Pe,xe),Ae(ce);for(var te="",ne=0;ne<xe.length;ne++){var le=xe[ne],se=ce[le].toString();te+=se}return te}function Ae(ce){var te=Se(ce.width,ce.height);ce.format===Me.a.DEPTH_COMPONENT&&(ce.useMipmap=!1),(!te||!ce.useMipmap)&&(ce.minFilter==Me.a.NEAREST_MIPMAP_NEAREST||ce.minFilter==Me.a.NEAREST_MIPMAP_LINEAR?ce.minFilter=Me.a.NEAREST:(ce.minFilter==Me.a.LINEAR_MIPMAP_LINEAR||ce.minFilter==Me.a.LINEAR_MIPMAP_NEAREST)&&(ce.minFilter=Me.a.LINEAR)),te||(ce.wrapS=Me.a.CLAMP_TO_EDGE,ce.wrapT=Me.a.CLAMP_TO_EDGE)}function Se(ce,te){return(ce&ce-1)===0&&(te&te-1)===0}Ne.a=Ee},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e);Ne.a={getFilledRegions:function(ve,Ee){var Pe=(ve||[]).slice(),xe;if(typeof Ee=="string"?(Ee=Me.a.getMap(Ee),xe=Ee&&Ee.geoJson):Ee&&Ee.features&&(xe=Ee),!xe)return console.error("Map "+Ee+" not exists. You can download map file on http://echarts.baidu.com/download-map.html"),xe.features||console.error("Invalid GeoJSON for map3D"),[];for(var pe={},Ae=xe.features,Se=0;Se<Pe.length;Se++)pe[Pe[Se].name]=Pe[Se];for(var Se=0;Se<Ae.length;Se++){var ce=Ae[Se].properties.name;pe[ce]||Pe.push({name:ce})}return Pe},defaultOption:{show:!0,zlevel:-10,map:"",left:0,top:0,width:"100%",height:"100%",boxWidth:100,boxHeight:10,boxDepth:"auto",regionHeight:3,environment:"auto",groundPlane:{show:!1,color:"#aaa"},shading:"lambert",light:{main:{alpha:40,beta:30}},viewControl:{alpha:40,beta:0,distance:100,orthographicSize:60,minAlpha:5,minBeta:-80,maxBeta:80},label:{show:!1,distance:2,textStyle:{fontSize:20,color:"#000",backgroundColor:"rgba(255,255,255,0.7)",padding:3,borderRadius:4}},itemStyle:{color:"#fff",borderWidth:0,borderColor:"#333"},emphasis:{itemStyle:{color:"#639fc0"},label:{show:!0}}}}},function(He,Ne,be){"use strict";function _e(Pe,xe,pe){var Ae=Pe[xe];Pe[xe]=Pe[pe],Pe[pe]=Ae}function Me(Pe,xe,pe,Ae,Se){var ce=pe,te=Pe[xe];_e(Pe,xe,Ae);for(var ne=pe;ne<Ae;ne++)Se(Pe[ne],te)<0&&(_e(Pe,ne,ce),ce++);return _e(Pe,Ae,ce),ce}function ve(Pe,xe,pe,Ae){if(pe<Ae){var Se=Math.floor((pe+Ae)/2),ce=Me(Pe,Se,pe,Ae,xe);ve(Pe,xe,pe,ce-1),ve(Pe,xe,ce+1,Ae)}}function Ee(){this._parts=[]}Ee.prototype.step=function(Pe,xe,pe){var Ae=Pe.length;if(pe===0){this._parts=[],this._sorted=!1;var Se=Math.floor(Ae/2);this._parts.push({pivot:Se,left:0,right:Ae-1}),this._currentSortPartIdx=0}if(!this._sorted){var ce=this._parts;if(ce.length===0)return this._sorted=!0,!0;if(ce.length<512){for(var te=0;te<ce.length;te++)ce[te].pivot=Me(Pe,ce[te].pivot,ce[te].left,ce[te].right,xe);for(var ne=[],te=0;te<ce.length;te++){var le=ce[te].left,se=ce[te].pivot-1;se>le&&ne.push({pivot:Math.floor((se+le)/2),left:le,right:se});var le=ce[te].pivot+1,se=ce[te].right;se>le&&ne.push({pivot:Math.floor((se+le)/2),left:le,right:se})}ce=this._parts=ne}else for(var te=0;te<Math.floor(ce.length/10);te++){var fe=ce.length-1-this._currentSortPartIdx;if(ve(Pe,xe,ce[fe].left,ce[fe].right),this._currentSortPartIdx++,this._currentSortPartIdx===ce.length)return this._sorted=!0,!0}return!1}},Ee.sort=ve,Ne.a=Ee},function(He,Ne,be){"use strict";var _e=be(83),Me=be(0),ve=be.n(Me),Ee=be(41),Pe=be.n(Ee),xe=be(20),pe=be(3);function Ae(le,se){var fe=le.getBoxLayoutParams(),he=Pe.a.getLayoutRect(fe,{width:se.getWidth(),height:se.getHeight()});he.y=se.getHeight()-he.y-he.height,this.viewGL.setViewport(he.x,he.y,he.width,he.height,se.getDevicePixelRatio());var ie=this.getGeoBoundingRect(),ue=ie.width/ie.height*(le.get("aspectScale")||.75),me=le.get("boxWidth"),Ce=le.get("boxDepth"),Ie=le.get("boxHeight");Ie==null&&(Ie=5),isNaN(me)&&isNaN(Ce)&&(me=100),isNaN(Ce)?Ce=me/ue:isNaN(me)&&(me=Ce/ue),this.setSize(me,Ie,Ce),this.regionHeight=le.get("regionHeight"),this.altitudeAxis&&this.altitudeAxis.setExtent(0,Math.max(Ie-this.regionHeight,0))}function Se(le,se){var fe=[1/0,-1/0];if(le.eachSeries(function(ie){if(ie.coordinateSystem===this&&ie.type!=="series.map3D"){var ue=ie.getData(),me=ie.coordDimToDataDim("alt")[0];if(me){var Ce=ue.getDataExtent(me,!0);fe[0]=Math.min(fe[0],Ce[0]),fe[1]=Math.max(fe[1],Ce[1])}}},this),fe&&isFinite(fe[1]-fe[0])){var he=ve.a.helper.createScale(fe,{type:"value",min:"dataMin",max:"dataMax"});this.altitudeAxis=new ve.a.Axis("altitude",he),this.resize(this.model,se)}}var ce=function(le){console.error("Map "+le+" not exists. You can download map file on http://echarts.baidu.com/download-map.html")},te=0,ne={dimensions:_e.a.prototype.dimensions,create:function(le,se){var fe=[];if(!ve.a.getMap)throw new Error("geo3D component depends on geo component");function he(ie,ue){var me=ne.createGeo3D(ie);ie.__viewGL=ie.__viewGL||new xe.a,me.viewGL=ie.__viewGL,ie.coordinateSystem=me,me.model=ie,fe.push(me),me.resize=Ae,me.resize(ie,se),me.update=Se}return le.eachComponent("geo3D",function(ie,ue){he(ie,ue)}),le.eachSeriesByType("map3D",function(ie,ue){var me=ie.get("coordinateSystem");me==null&&(me="geo3D"),me==="geo3D"&&he(ie,ue)}),le.eachSeries(function(ie){if(ie.get("coordinateSystem")==="geo3D"){if(ie.type==="series.map3D")return;var ue=ie.getReferringComponents("geo3D")[0];if(ue||(ue=le.getComponent("geo3D")),!ue)throw new Error('geo "'+pe.a.firstNotNull(ie.get("geo3DIndex"),ie.get("geo3DId"),0)+'" not found');ie.coordinateSystem=ue.coordinateSystem}}),fe},createGeo3D:function(le){var se=le.get("map"),fe;if(typeof se=="string"?(fe=se,se=ve.a.getMap(se)):se&&se.features&&(se={geoJson:se}),se||ce(se),!se.geoJson.features)throw new Error("Invalid GeoJSON for map3D");return fe==null&&(fe="GEO_ANONYMOUS_"+te++),new _e.a(fe+te++,fe,se&&se.geoJson,se&&se.specialAreas,le.get("nameMap"))}};ve.a.registerCoordinateSystem("geo3D",ne),Ne.a=ne},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(1),Ee=be.n(ve),Pe=be(187),xe=be.n(Pe),pe=be(188),Ae=be.n(pe),Se=Ee.a.vec3,ce=Ee.a.mat4,te=[xe.a,Ae.a];function ne(le,se,fe,he,ie){this.name=le,this.map=se,this.regionHeight=0,this.regions=[],this._nameCoordMap={},this.loadGeoJson(fe,he,ie),this.transform=ce.identity(new Float64Array(16)),this.invTransform=ce.identity(new Float64Array(16)),this.extrudeY=!0,this.altitudeAxis}ne.prototype={constructor:ne,type:"geo3D",dimensions:["lng","lat","alt"],containPoint:function(){},loadGeoJson:function(le,se,fe){var he=Me.a.parseGeoJSON||Me.a.parseGeoJson;try{this.regions=le?he(le):[]}catch(Fe){throw`Invalid geoJson format
|
|
|
`+Fe}se=se||{},fe=fe||{};for(var ie=this.regions,ue={},me=0;me<ie.length;me++){var Ce=ie[me].name;Ce=fe[Ce]||Ce,ie[me].name=Ce,ue[Ce]=ie[me],this.addGeoCoord(Ce,ie[me].center);var Ie=se[Ce];Ie&&ie[me].transformTo(Ie.left,Ie.top,Ie.width,Ie.height)}this._regionsMap=ue,this._geoRect=null,te.forEach(function(Fe){Fe(this)},this)},getGeoBoundingRect:function(){if(this._geoRect)return this._geoRect;for(var le,se=this.regions,fe=0;fe<se.length;fe++){var he=se[fe].getBoundingRect();le=le||he.clone(),le.union(he)}return this._geoRect=le||new Me.a.graphic.BoundingRect(0,0,0,0)},addGeoCoord:function(le,se){this._nameCoordMap[le]=se},getRegion:function(le){return this._regionsMap[le]},getRegionByCoord:function(le){for(var se=this.regions,fe=0;fe<se.length;fe++)if(se[fe].contain(le))return se[fe]},setSize:function(le,se,fe){this.size=[le,se,fe];var he=this.getGeoBoundingRect(),ie=le/he.width,ue=-fe/he.height,me=-le/2-he.x*ie,Ce=fe/2-he.y*ue,Ie=this.extrudeY?[me,0,Ce]:[me,Ce,0],Fe=this.extrudeY?[ie,1,ue]:[ie,ue,1],Re=this.transform;ce.identity(Re),ce.translate(Re,Re,Ie),ce.scale(Re,Re,Fe),ce.invert(this.invTransform,Re)},dataToPoint:function(le,se){se=se||[];var fe=this.extrudeY?1:2,he=this.extrudeY?2:1,ie=le[2];return isNaN(ie)&&(ie=0),se[0]=le[0],se[he]=le[1],this.altitudeAxis?se[fe]=this.altitudeAxis.dataToCoord(ie):se[fe]=0,se[fe]+=this.regionHeight,Se.transformMat4(se,se,this.transform),se},pointToData:function(le,se){}},Ne.a=ne},function(He,Ne,be){"use strict";var _e=be(77),Me=be.n(_e),ve=be(76),Ee=be.n(ve);function Pe(xe){this.viewGL=xe}Pe.prototype.reset=function(xe,pe){this._updateCamera(pe.getWidth(),pe.getHeight(),pe.getDevicePixelRatio()),this._viewTransform=Me.a.create(),this.updateTransform(xe,pe)},Pe.prototype.updateTransform=function(xe,pe){var Ae=xe.coordinateSystem;Ae.getRoamTransform&&(Me.a.invert(this._viewTransform,Ae.getRoamTransform()),this._setCameraTransform(this._viewTransform),pe.getZr().refresh())},Pe.prototype.dataToPoint=function(xe,pe,Ae){Ae=xe.dataToPoint(pe,null,Ae);var Se=this._viewTransform;Se&&Ee.a.applyTransform(Ae,Ae,Se)},Pe.prototype.removeTransformInPoint=function(xe){return this._viewTransform&&Ee.a.applyTransform(xe,xe,this._viewTransform),xe},Pe.prototype.getZoom=function(){if(this._viewTransform){var xe=this._viewTransform;return 1/Math.max(Math.sqrt(xe[0]*xe[0]+xe[1]*xe[1]),Math.sqrt(xe[2]*xe[2]+xe[3]*xe[3]))}return 1},Pe.prototype._setCameraTransform=function(xe){var pe=this.viewGL.camera;pe.position.set(xe[4],xe[5],0),pe.scale.set(Math.sqrt(xe[0]*xe[0]+xe[1]*xe[1]),Math.sqrt(xe[2]*xe[2]+xe[3]*xe[3]),1)},Pe.prototype._updateCamera=function(xe,pe,Ae){this.viewGL.setViewport(0,0,xe,pe,Ae);var Se=this.viewGL.camera;Se.left=Se.top=0,Se.bottom=pe,Se.right=xe,Se.near=0,Se.far=100},Ne.a=Pe},function(He,Ne,be){(function(_e){var Me;typeof window!="undefined"?Me=window.__DEV__:typeof _e!="undefined"&&(Me=_e.__DEV__),typeof Me=="undefined"&&(Me=!0);var ve=Me;Ne.__DEV__=ve}).call(Ne,be(243))},function(He,Ne,be){"use strict";var _e=be(13),Me=be(0),ve=be.n(Me),Ee=be(33),Pe=be(1),xe=be.n(Pe),pe=xe.a.vec2,Ae=[[0,0],[1,1]],Se=_e.a.extend(function(){return{segmentScale:4,dynamic:!0,useNativeLine:!0,attributes:{position:new _e.a.Attribute("position","float",2,"POSITION"),normal:new _e.a.Attribute("normal","float",2),offset:new _e.a.Attribute("offset","float",1),color:new _e.a.Attribute("color","float",4,"COLOR")}}},{resetOffset:function(){this._vertexOffset=0,this._faceOffset=0,this._itemVertexOffsets=[]},setVertexCount:function(ce){var te=this.attributes;this.vertexCount!==ce&&(te.position.init(ce),te.color.init(ce),this.useNativeLine||(te.offset.init(ce),te.normal.init(ce)),ce>65535?this.indices instanceof Uint16Array&&(this.indices=new Uint32Array(this.indices)):this.indices instanceof Uint32Array&&(this.indices=new Uint16Array(this.indices)))},setTriangleCount:function(ce){this.triangleCount!==ce&&(ce===0?this.indices=null:this.indices=this.vertexCount>65535?new Uint32Array(ce*3):new Uint16Array(ce*3))},_getCubicCurveApproxStep:function(ce,te,ne,le){var se=pe.dist(ce,te)+pe.dist(ne,te)+pe.dist(le,ne),fe=1/(se+1)*this.segmentScale;return fe},getCubicCurveVertexCount:function(ce,te,ne,le){var se=this._getCubicCurveApproxStep(ce,te,ne,le),fe=Math.ceil(1/se);return this.useNativeLine?fe*2:fe*2+2},getCubicCurveTriangleCount:function(ce,te,ne,le){var se=this._getCubicCurveApproxStep(ce,te,ne,le),fe=Math.ceil(1/se);return this.useNativeLine?0:fe*2},getLineVertexCount:function(){return this.getPolylineVertexCount(Ae)},getLineTriangleCount:function(){return this.getPolylineTriangleCount(Ae)},getPolylineVertexCount:function(ce){var te;if(typeof ce=="number")te=ce;else{var ne=typeof ce[0]!="number";te=ne?ce.length:ce.length/2}return this.useNativeLine?(te-1)*2:(te-1)*2+2},getPolylineTriangleCount:function(ce){var te;if(typeof ce=="number")te=ce;else{var ne=typeof ce[0]!="number";te=ne?ce.length:ce.length/2}return this.useNativeLine?0:(te-1)*2},addCubicCurve:function(ce,te,ne,le,se,fe){fe==null&&(fe=1);for(var he=ce[0],ie=ce[1],ue=te[0],me=te[1],Ce=ne[0],Ie=ne[1],Fe=le[0],Re=le[1],Ue=this._getCubicCurveApproxStep(ce,te,ne,le),Ge=Ue*Ue,Je=Ge*Ue,Qe=3*Ue,rt=3*Ge,$e=6*Ge,qe=6*Je,ot=he-ue*2+Ce,at=ie-me*2+Ie,ut=(ue-Ce)*3-he+Fe,nt=(me-Ie)*3-ie+Re,lt=he,yt=ie,ft=(ue-he)*Qe+ot*rt+ut*Je,ct=(me-ie)*Qe+at*rt+nt*Je,vt=ot*$e+ut*qe,Ut=at*$e+nt*qe,Zt=ut*qe,en=nt*qe,mn=0,Bt=0,tn=Math.ceil(1/Ue),on=new Float32Array((tn+1)*3),on=[],Mn=0,Bt=0;Bt<tn+1;Bt++)on[Mn++]=lt,on[Mn++]=yt,lt+=ft,yt+=ct,ft+=vt,ct+=Ut,vt+=Zt,Ut+=en,mn+=Ue,mn>1&&(lt=ft>0?Math.min(lt,Fe):Math.max(lt,Fe),yt=ct>0?Math.min(yt,Re):Math.max(yt,Re));this.addPolyline(on,se,fe)},addLine:function(ce,te,ne,le){this.addPolyline([ce,te],ne,le)},addPolyline:function(){var ce=pe.create(),te=pe.create(),ne=pe.create(),le=pe.create(),se=[],fe=[],he=[];return function(ie,ue,me,Ce,Ie){if(ie.length){var Fe=typeof ie[0]!="number";if(Ie==null&&(Ie=Fe?ie.length:ie.length/2),!(Ie<2)){Ce==null&&(Ce=0),me==null&&(me=1),this._itemVertexOffsets.push(this._vertexOffset);for(var Re=Fe?typeof ue[0]!="number":ue.length/4===Ie,Ue=this.attributes.position,Ge=this.attributes.color,Je=this.attributes.offset,Qe=this.attributes.normal,rt=this.indices,$e=this._vertexOffset,qe,ot=0;ot<Ie;ot++){if(Fe)se=ie[ot+Ce],Re?qe=ue[ot+Ce]:qe=ue;else{var at=ot*2+Ce;if(se=se||[],se[0]=ie[at],se[1]=ie[at+1],Re){var ut=ot*4+Ce;qe=qe||[],qe[0]=ue[ut],qe[1]=ue[ut+1],qe[2]=ue[ut+2],qe[3]=ue[ut+3]}else qe=ue}if(this.useNativeLine)ot>1&&(Ue.copy($e,$e-1),Ge.copy($e,$e-1),$e++);else{var nt;if(ot<Ie-1){if(Fe)pe.copy(fe,ie[ot+1]);else{var at=(ot+1)*2+Ce;fe=fe||[],fe[0]=ie[at],fe[1]=ie[at+1]}if(ot>0){pe.sub(ce,se,he),pe.sub(te,fe,se),pe.normalize(ce,ce),pe.normalize(te,te),pe.add(le,ce,te),pe.normalize(le,le);var lt=me/2*Math.min(1/pe.dot(ce,le),2);ne[0]=-le[1],ne[1]=le[0],nt=lt}else pe.sub(ce,fe,se),pe.normalize(ce,ce),ne[0]=-ce[1],ne[1]=ce[0],nt=me/2}else pe.sub(ce,se,he),pe.normalize(ce,ce),ne[0]=-ce[1],ne[1]=ce[0],nt=me/2;Qe.set($e,ne),Qe.set($e+1,ne),Je.set($e,nt),Je.set($e+1,-nt),pe.copy(he,se),Ue.set($e,se),Ue.set($e+1,se),Ge.set($e,qe),Ge.set($e+1,qe),$e+=2}if(this.useNativeLine)Ge.set($e,qe),Ue.set($e,se),$e++;else if(ot>0){var yt=this._faceOffset*3,rt=this.indices;rt[yt]=$e-4,rt[yt+1]=$e-3,rt[yt+2]=$e-2,rt[yt+3]=$e-3,rt[yt+4]=$e-1,rt[yt+5]=$e-2,this._faceOffset+=2}}this._vertexOffset=$e}}}}(),setItemColor:function(ce,te){for(var ne=this._itemVertexOffsets[ce],le=ce<this._itemVertexOffsets.length-1?this._itemVertexOffsets[ce+1]:this._vertexOffset,se=ne;se<le;se++)this.attributes.color.set(se,te);this.dirty("color")}});ve.a.util.defaults(Se.prototype,Ee.a),Ne.a=Se},function(He,Ne,be){"use strict";Object.defineProperty(Ne,"__esModule",{value:!0});var _e=be(88),Me=be(133),ve=be(183),Ee=be(189),Pe=be(195),xe=be(202),pe=be(209),Ae=be(213),Se=be(220),ce=be(226),te=be(229),ne=be(233),le=be(236),se=be(239),fe=be(253),he=be(259)},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(89),Ee=be(90),Pe=be(101),xe=be(2),pe={version:"1.0.0",dependencies:{echarts:"4.0.0",claygl:"1.0.0"}},Ae=pe.dependencies;function Se(se){throw new Error(se+" version is too old, needs "+Ae[se]+" or higher")}function ce(se,fe){se.replace(".","")-0<Ae[fe].replace(".","")-0&&Se(fe),console.log("Loaded "+fe+", version "+se)}ce(ve.a,"claygl"),ce(Me.a.version,"echarts");function te(se){this._layers={},this._zr=se}te.prototype.update=function(se,fe){var he=this,ie=fe.getZr();if(!ie.getWidth()||!ie.getHeight()){console.warn("Dom has no width or height");return}function ue(Ie){var Fe;Ie.coordinateSystem&&Ie.coordinateSystem.model,Fe=Ie.get("zlevel");var Re=he._layers,Ue=Re[Fe];if(!Ue){if(Ue=Re[Fe]=new Ee.a("gl-"+Fe,ie),ie.painter.isSingleCanvas()){Ue.virtual=!0;var Ge=new Me.a.graphic.Image({z:1e4,style:{image:Ue.renderer.canvas},silent:!0});Ue.__hostImage=Ge,ie.add(Ge)}ie.painter.insertLayer(Fe,Ue)}return Ue.__hostImage&&Ue.__hostImage.setStyle({width:Ue.renderer.getWidth(),height:Ue.renderer.getHeight()}),Ue}function me(Ie,Fe){Ie&&Ie.traverse(function(Re){Re.isRenderable&&Re.isRenderable()&&(Re.ignorePicking=Re.$ignorePicking!=null?Re.$ignorePicking:Fe)})}for(var Ce in this._layers)this._layers[Ce].removeViewsAll();se.eachComponent(function(Ie,Fe){if(Ie!=="series"){var Re=fe.getViewOfComponentModel(Fe),Ue=Fe.coordinateSystem;if(Re.__ecgl__){var Ge;if(Ue){if(!Ue.viewGL){console.error("Can't find viewGL in coordinateSystem of component "+Fe.id);return}Ge=Ue.viewGL}else{if(!Fe.viewGL){console.error("Can't find viewGL of component "+Fe.id);return}Ge=Ue.viewGL}var Ge=Ue.viewGL,Je=ue(Fe);Je.addView(Ge),Re.afterRender&&Re.afterRender(Fe,se,fe,Je),me(Re.groupGL,Fe.get("silent"))}}}),se.eachSeries(function(Ie){var Fe=fe.getViewOfSeriesModel(Ie),Re=Ie.coordinateSystem;if(Fe.__ecgl__){if(Re&&!Re.viewGL&&!Fe.viewGL){console.error("Can't find viewGL of series "+Fe.id);return}var Ue=Re&&Re.viewGL||Fe.viewGL,Ge=ue(Ie);Ge.addView(Ue),Fe.afterRender&&Fe.afterRender(Ie,se,fe,Ge),me(Fe.groupGL,Ie.get("silent"))}})};var ne=Me.a.init;Me.a.init=function(){var se=ne.apply(this,arguments);return se.getZr().painter.getRenderedCanvas=function(fe){if(fe=fe||{},this._singleCanvas)return this._layers[0].dom;var he=document.createElement("canvas"),ie=fe.pixelRatio||this.dpr;he.width=this.getWidth()*ie,he.height=this.getHeight()*ie;var ue=he.getContext("2d");ue.dpr=ie,ue.clearRect(0,0,he.width,he.height),fe.backgroundColor&&(ue.fillStyle=fe.backgroundColor,ue.fillRect(0,0,he.width,he.height));var me=this.storage.getDisplayList(!0),Ce={},Ie,Fe=this;function Re(Qe,rt){var $e=Fe._zlevelList;Qe==null&&(Qe=-1/0);for(var qe,ot=0;ot<$e.length;ot++){var at=$e[ot],ut=Fe._layers[at];if(!ut.__builtin__&&at>Qe&&at<rt){qe=ut;break}}qe&&qe.renderToCanvas&&(ue.save(),qe.renderToCanvas(ue),ue.restore())}for(var Ue={ctx:ue},Ge=0;Ge<me.length;Ge++){var Je=me[Ge];Je.zlevel!==Ie&&(Re(Ie,Je.zlevel),Ie=Je.zlevel),this._doPaintEl(Je,Ue,!0,Ce)}return Re(Ie,1/0),he},se},Me.a.registerPostUpdate(function(se,fe){var he=fe.getZr(),ie=he.__egl=he.__egl||new te(he);ie.update(se,fe)}),Me.a.registerPreprocessor(Pe.a),Me.a.graphicGL=xe.a;var le=te},function(He,Ne,be){"use strict";Ne.a="1.0.0"},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(46),Ee=be(100),Pe=be(6),xe=be(47),pe=be(65),Ae=be.n(pe),Se=function(he,ie){this.id=he,this.zr=ie;try{this.renderer=new ve.a({clearBit:0,devicePixelRatio:ie.painter.dpr,preserveDrawingBuffer:!0,premultipliedAlpha:!0}),this.renderer.resize(ie.painter.getWidth(),ie.painter.getHeight())}catch(me){this.renderer=null,this.dom=document.createElement("div"),this.dom.style.cssText="position:absolute; left: 0; top: 0; right: 0; bottom: 0;",this.dom.className="ecgl-nowebgl",this.dom.innerHTML="Sorry, your browser does support WebGL",console.error(me);return}this.onglobalout=this.onglobalout.bind(this),ie.on("globalout",this.onglobalout),this.dom=this.renderer.canvas;var ue=this.dom.style;ue.position="absolute",ue.left="0",ue.top="0",this.views=[],this._picking=new Ee.a({renderer:this.renderer}),this._viewsToDispose=[],this._accumulatingId=0,this._zrEventProxy=new Me.a.graphic.Rect({shape:{x:-1,y:-1,width:2,height:2},__isGLToZRProxy:!0})};Se.prototype.addView=function(he){if(he.layer!==this){var ie=this._viewsToDispose.indexOf(he);ie>=0&&this._viewsToDispose.splice(ie,1),this.views.push(he),he.layer=this;var ue=this.zr;he.scene.traverse(function(me){me.__zr=ue,me.addAnimatorsToZr&&me.addAnimatorsToZr(ue)})}};function ce(he){var ie=he.__zr;he.__zr=null,ie&&he.removeAnimatorsFromZr&&he.removeAnimatorsFromZr(ie)}Se.prototype.removeView=function(he){if(he.layer===this){var ie=this.views.indexOf(he);ie>=0&&(this.views.splice(ie,1),he.scene.traverse(ce,this),he.layer=null,this._viewsToDispose.push(he))}},Se.prototype.removeViewsAll=function(){this.views.forEach(function(he){he.scene.traverse(ce,this),he.layer=null,this._viewsToDispose.push(he)},this),this.views.length=0},Se.prototype.resize=function(he,ie){var ue=this.renderer;ue.resize(he,ie)},Se.prototype.clear=function(){var he=this.renderer.gl;he.clearColor(0,0,0,0),he.depthMask(!0),he.colorMask(!0,!0,!0,!0),he.clear(he.DEPTH_BUFFER_BIT|he.COLOR_BUFFER_BIT)},Se.prototype.clearDepth=function(){var he=this.renderer.gl;he.clear(he.DEPTH_BUFFER_BIT)},Se.prototype.clearColor=function(){var he=this.renderer.gl;he.clearColor(0,0,0,0),he.clear(he.COLOR_BUFFER_BIT)},Se.prototype.needsRefresh=function(){this.zr.refresh()},Se.prototype.refresh=function(){for(var he=0;he<this.views.length;he++)this.views[he].prepareRender();this._doRender(!1),this._trackAndClean();for(var he=0;he<this._viewsToDispose.length;he++)this._viewsToDispose[he].dispose(this.renderer);this._viewsToDispose.length=0,this._startAccumulating()},Se.prototype.renderToCanvas=function(he){this._startAccumulating(!0),he.drawImage(this.dom,0,0,he.canvas.width,he.canvas.height)},Se.prototype._doRender=function(he){this.clear(),this.renderer.saveViewport();for(var ie=0;ie<this.views.length;ie++)this.views[ie].render(this.renderer,he);this.renderer.restoreViewport()},Se.prototype._stopAccumulating=function(){this._accumulatingId=0,clearTimeout(this._accumulatingTimeout)};var te=1;Se.prototype._startAccumulating=function(he){var ie=this;this._stopAccumulating();for(var ue=!1,me=0;me<this.views.length;me++)ue=this.views[me].needsAccumulate()||ue;if(!ue)return;function Ce(Ie){if(!(!ie._accumulatingId||Ie!==ie._accumulatingId)){for(var Fe=!0,Re=0;Re<ie.views.length;Re++)Fe=ie.views[Re].isAccumulateFinished()&&ue;Fe||(ie._doRender(!0),he?Ce(Ie):Ae()(function(){Ce(Ie)}))}}this._accumulatingId=te++,he?Ce(ie._accumulatingId):this._accumulatingTimeout=setTimeout(function(){Ce(ie._accumulatingId)},50)},Se.prototype._trackAndClean=function(){var he=[],ie=[];this._textureList&&(ne(this._textureList),ne(this._geometriesList));for(var ue=0;ue<this.views.length;ue++)fe(this.views[ue].scene,he,ie);this._textureList&&(le(this.renderer,this._textureList),le(this.renderer,this._geometriesList)),this._textureList=he,this._geometriesList=ie};function ne(he){for(var ie=0;ie<he.length;ie++)he[ie].__used__=0}function le(he,ie){for(var ue=0;ue<ie.length;ue++)ie[ue].__used__||ie[ue].dispose(he)}function se(he,ie){he.__used__=he.__used__||0,he.__used__++,he.__used__===1&&ie.push(he)}function fe(he,ie,ue){function me(Ie){for(var Fe,Re,Ue=0;Ue<Ie.length;Ue++){var Ge=Ie[Ue],Je=Ge.geometry,Qe=Ge.material;if(Qe!==Fe)for(var rt=Qe.getTextureUniforms(),$e=0;$e<rt.length;$e++){var qe=rt[$e],ot=Qe.uniforms[qe].value;if(ot){if(ot instanceof Pe.a)se(ot,ie);else if(ot instanceof Array)for(var at=0;at<ot.length;at++)ot[at]instanceof Pe.a&&se(ot[at],ie)}}Je!==Re&&se(Je,ue),Fe=Qe,Re=Je}}me(he.opaqueList),me(he.transparentList);for(var Ce=0;Ce<he.lights.length;Ce++)he.lights[Ce].cubemap&&se(he.lights[Ce].cubemap,ie)}Se.prototype.dispose=function(){this._stopAccumulating(),this.renderer.disposeScene(this.scene),this.zr.off("globalout",this.onglobalout)},Se.prototype.onmousedown=function(he){if(!(he.target&&he.target.__isGLToZRProxy)){he=he.event;var ie=this.pickObject(he.offsetX,he.offsetY);ie&&(this._dispatchEvent("mousedown",he,ie),this._dispatchDataEvent("mousedown",he,ie)),this._downX=he.offsetX,this._downY=he.offsetY}},Se.prototype.onmousemove=function(he){if(!(he.target&&he.target.__isGLToZRProxy)){he=he.event;var ie=this.pickObject(he.offsetX,he.offsetY),ue=ie&&ie.target,me=this._hovered;this._hovered=ie,me&&ue!==me.target&&(me.relatedTarget=ue,this._dispatchEvent("mouseout",he,me),this.zr.setCursorStyle("default")),this._dispatchEvent("mousemove",he,ie),ie&&(this.zr.setCursorStyle("pointer"),(!me||ue!==me.target)&&this._dispatchEvent("mouseover",he,ie)),this._dispatchDataEvent("mousemove",he,ie)}},Se.prototype.onmouseup=function(he){if(!(he.target&&he.target.__isGLToZRProxy)){he=he.event;var ie=this.pickObject(he.offsetX,he.offsetY);ie&&(this._dispatchEvent("mouseup",he,ie),this._dispatchDataEvent("mouseup",he,ie)),this._upX=he.offsetX,this._upY=he.offsetY}},Se.prototype.onclick=Se.prototype.dblclick=function(he){if(!(he.target&&he.target.__isGLToZRProxy)){var ie=this._upX-this._downX,ue=this._upY-this._downY;if(!(Math.sqrt(ie*ie+ue*ue)>20)){he=he.event;var me=this.pickObject(he.offsetX,he.offsetY);me&&(this._dispatchEvent(he.type,he,me),this._dispatchDataEvent(he.type,he,me));var Ce=this._clickToSetFocusPoint(he);if(Ce){var Ie=Ce.view.setDOFFocusOnPoint(Ce.distance);Ie&&this.zr.refresh()}}}},Se.prototype._clickToSetFocusPoint=function(he){for(var ie=this.renderer,ue=ie.viewport,me=this.views.length-1;me>=0;me--){var Ce=this.views[me];if(Ce.hasDOF()&&Ce.containPoint(he.offsetX,he.offsetY)){this._picking.scene=Ce.scene,this._picking.camera=Ce.camera,ie.viewport=Ce.viewport;var Ie=this._picking.pick(he.offsetX,he.offsetY,!0);if(Ie)return Ie.view=Ce,Ie}}ie.viewport=ue},Se.prototype.onglobalout=function(he){var ie=this._hovered;ie&&this._dispatchEvent("mouseout",he,{target:ie.target})},Se.prototype.pickObject=function(he,ie){for(var ue=[],me=this.renderer,Ce=me.viewport,Ie=0;Ie<this.views.length;Ie++){var Fe=this.views[Ie];Fe.containPoint(he,ie)&&(this._picking.scene=Fe.scene,this._picking.camera=Fe.camera,me.viewport=Fe.viewport,this._picking.pickAll(he,ie,ue))}return me.viewport=Ce,ue.sort(function(Re,Ue){return Re.distance-Ue.distance}),ue[0]},Se.prototype._dispatchEvent=function(he,ie,ue){ue||(ue={});var me=ue.target;for(ue.cancelBubble=!1,ue.event=ie,ue.type=he,ue.offsetX=ie.offsetX,ue.offsetY=ie.offsetY;me&&(me.trigger(he,ue),me=me.getParent(),!ue.cancelBubble););this._dispatchToView(he,ue)},Se.prototype._dispatchDataEvent=function(he,ie,ue){var me=ue&&ue.target,Ce=me&&me.dataIndex,Ie=me&&me.seriesIndex,Fe=me&&me.eventData,Re=!1,Ue=this._zrEventProxy;Ue.position=[ie.offsetX,ie.offsetY],Ue.update();var Ge={target:Ue};he==="mousemove"&&(Ce!=null?Ce!==this._lastDataIndex&&(parseInt(this._lastDataIndex,10)>=0&&(Ue.dataIndex=this._lastDataIndex,Ue.seriesIndex=this._lastSeriesIndex,this.zr.handler.dispatchToElement(Ge,"mouseout",ie)),Re=!0):Fe!=null&&Fe!==this._lastEventData&&(this._lastEventData!=null&&(Ue.eventData=this._lastEventData,this.zr.handler.dispatchToElement(Ge,"mouseout",ie)),Re=!0),this._lastEventData=Fe,this._lastDataIndex=Ce,this._lastSeriesIndex=Ie),Ue.eventData=Fe,Ue.dataIndex=Ce,Ue.seriesIndex=Ie,(Fe!=null||parseInt(Ce,10)>=0)&&(this.zr.handler.dispatchToElement(Ge,he,ie),Re&&this.zr.handler.dispatchToElement(Ge,"mouseover",ie))},Se.prototype._dispatchToView=function(he,ie){for(var ue=0;ue<this.views.length;ue++)this.views[ue].containPoint(ie.offsetX,ie.offsetY)&&this.views[ue].trigger(he,ie)},Me.a.util.extend(Se.prototype,xe.a),Ne.a=Se},function(He,Ne,be){"use strict";function _e(Ee,Pe,xe){typeof Pe=="object"&&(xe=Pe,Pe=null);var pe=this,Ae;if(!(Ee instanceof Function)){Ae=[];for(var Se in Ee)Ee.hasOwnProperty(Se)&&Ae.push(Se)}var ce=function(ne){if(pe.apply(this,arguments),Ee instanceof Function?Me(this,Ee.call(this,ne)):ve(this,Ee,Ae),this.constructor===ce)for(var le=ce.__initializers__,se=0;se<le.length;se++)le[se].apply(this,arguments)};ce.__super__=pe,pe.__initializers__?ce.__initializers__=pe.__initializers__.slice():ce.__initializers__=[],Pe&&ce.__initializers__.push(Pe);var te=function(){};return te.prototype=pe.prototype,ce.prototype=new te,ce.prototype.constructor=ce,Me(ce.prototype,xe),ce.extend=pe.extend,ce.derive=pe.extend,ce}function Me(Ee,Pe){if(Pe)for(var xe in Pe)Pe.hasOwnProperty(xe)&&(Ee[xe]=Pe[xe])}function ve(Ee,Pe,xe){for(var pe=0;pe<xe.length;pe++){var Ae=xe[pe];Ee[Ae]=Pe[Ae]}}Ne.a={extend:_e,derive:_e}},function(He,Ne,be){"use strict";var _e=["OES_texture_float","OES_texture_half_float","OES_texture_float_linear","OES_texture_half_float_linear","OES_standard_derivatives","OES_vertex_array_object","OES_element_index_uint","WEBGL_compressed_texture_s3tc","WEBGL_depth_texture","EXT_texture_filter_anisotropic","EXT_shader_texture_lod","WEBGL_draw_buffers","EXT_frag_depth","EXT_sRGB"],Me=["MAX_TEXTURE_SIZE","MAX_CUBE_MAP_TEXTURE_SIZE"];function ve(Ee){for(var Pe={},xe={},pe=0;pe<_e.length;pe++){var Ae=_e[pe];ce(Ae)}for(var pe=0;pe<Me.length;pe++){var Se=Me[pe];xe[Se]=Ee.getParameter(Ee[Se])}this.getExtension=function(te){return te in Pe||ce(te),Pe[te]},this.getParameter=function(te){return xe[te]};function ce(te){var ne=Ee.getExtension(te);ne||(ne=Ee.getExtension("MOZ_"+te)),ne||(ne=Ee.getExtension("WEBKIT_"+te)),Pe[te]=ne}}Ne.a=ve},function(He,Ne,be){"use strict";var _e=be(94),Me={},ve={transparent:[0,0,0,0],aliceblue:[240,248,255,1],antiquewhite:[250,235,215,1],aqua:[0,255,255,1],aquamarine:[127,255,212,1],azure:[240,255,255,1],beige:[245,245,220,1],bisque:[255,228,196,1],black:[0,0,0,1],blanchedalmond:[255,235,205,1],blue:[0,0,255,1],blueviolet:[138,43,226,1],brown:[165,42,42,1],burlywood:[222,184,135,1],cadetblue:[95,158,160,1],chartreuse:[127,255,0,1],chocolate:[210,105,30,1],coral:[255,127,80,1],cornflowerblue:[100,149,237,1],cornsilk:[255,248,220,1],crimson:[220,20,60,1],cyan:[0,255,255,1],darkblue:[0,0,139,1],darkcyan:[0,139,139,1],darkgoldenrod:[184,134,11,1],darkgray:[169,169,169,1],darkgreen:[0,100,0,1],darkgrey:[169,169,169,1],darkkhaki:[189,183,107,1],darkmagenta:[139,0,139,1],darkolivegreen:[85,107,47,1],darkorange:[255,140,0,1],darkorchid:[153,50,204,1],darkred:[139,0,0,1],darksalmon:[233,150,122,1],darkseagreen:[143,188,143,1],darkslateblue:[72,61,139,1],darkslategray:[47,79,79,1],darkslategrey:[47,79,79,1],darkturquoise:[0,206,209,1],darkviolet:[148,0,211,1],deeppink:[255,20,147,1],deepskyblue:[0,191,255,1],dimgray:[105,105,105,1],dimgrey:[105,105,105,1],dodgerblue:[30,144,255,1],firebrick:[178,34,34,1],floralwhite:[255,250,240,1],forestgreen:[34,139,34,1],fuchsia:[255,0,255,1],gainsboro:[220,220,220,1],ghostwhite:[248,248,255,1],gold:[255,215,0,1],goldenrod:[218,165,32,1],gray:[128,128,128,1],green:[0,128,0,1],greenyellow:[173,255,47,1],grey:[128,128,128,1],honeydew:[240,255,240,1],hotpink:[255,105,180,1],indianred:[205,92,92,1],indigo:[75,0,130,1],ivory:[255,255,240,1],khaki:[240,230,140,1],lavender:[230,230,250,1],lavenderblush:[255,240,245,1],lawngreen:[124,252,0,1],lemonchiffon:[255,250,205,1],lightblue:[173,216,230,1],lightcoral:[240,128,128,1],lightcyan:[224,255,255,1],lightgoldenrodyellow:[250,250,210,1],lightgray:[211,211,211,1],lightgreen:[144,238,144,1],lightgrey:[211,211,211,1],lightpink:[255,182,193,1],lightsalmon:[255,160,122,1],lightseagreen:[32,178,170,1],lightskyblue:[135,206,250,1],lightslategray:[119,136,153,1],lightslategrey:[119,136,153,1],lightsteelblue:[176,196,222,1],lightyellow:[255,255,224,1],lime:[0,255,0,1],limegreen:[50,205,50,1],linen:[250,240,230,1],magenta:[255,0,255,1],maroon:[128,0,0,1],mediumaquamarine:[102,205,170,1],mediumblue:[0,0,205,1],mediumorchid:[186,85,211,1],mediumpurple:[147,112,219,1],mediumseagreen:[60,179,113,1],mediumslateblue:[123,104,238,1],mediumspringgreen:[0,250,154,1],mediumturquoise:[72,209,204,1],mediumvioletred:[199,21,133,1],midnightblue:[25,25,112,1],mintcream:[245,255,250,1],mistyrose:[255,228,225,1],moccasin:[255,228,181,1],navajowhite:[255,222,173,1],navy:[0,0,128,1],oldlace:[253,245,230,1],olive:[128,128,0,1],olivedrab:[107,142,35,1],orange:[255,165,0,1],orangered:[255,69,0,1],orchid:[218,112,214,1],palegoldenrod:[238,232,170,1],palegreen:[152,251,152,1],paleturquoise:[175,238,238,1],palevioletred:[219,112,147,1],papayawhip:[255,239,213,1],peachpuff:[255,218,185,1],peru:[205,133,63,1],pink:[255,192,203,1],plum:[221,160,221,1],powderblue:[176,224,230,1],purple:[128,0,128,1],red:[255,0,0,1],rosybrown:[188,143,143,1],royalblue:[65,105,225,1],saddlebrown:[139,69,19,1],salmon:[250,128,114,1],sandybrown:[244,164,96,1],seagreen:[46,139,87,1],seashell:[255,245,238,1],sienna:[160,82,45,1],silver:[192,192,192,1],skyblue:[135,206,235,1],slateblue:[106,90,205,1],slategray:[112,128,144,1],slategrey:[112,128,144,1],snow:[255,250,250,1],springgreen:[0,255,127,1],steelblue:[70,130,180,1],tan:[210,180,140,1],teal:[0,128,128,1],thistle:[216,191,216,1],tomato:[255,99,71,1],turquoise:[64,224,208,1],violet:[238,130,238,1],wheat:[245,222,179,1],white:[255,255,255,1],whitesmoke:[245,245,245,1],yellow:[255,255,0,1],yellowgreen:[154,205,50,1]};function Ee(ue){return ue=Math.round(ue),ue<0?0:ue>255?255:ue}function Pe(ue){return ue=Math.round(ue),ue<0?0:ue>360?360:ue}function xe(ue){return ue<0?0:ue>1?1:ue}function pe(ue){return ue.length&&ue.charAt(ue.length-1)==="%"?Ee(parseFloat(ue)/100*255):Ee(parseInt(ue,10))}function Ae(ue){return ue.length&&ue.charAt(ue.length-1)==="%"?xe(parseFloat(ue)/100):xe(parseFloat(ue))}function Se(ue,me,Ce){return Ce<0?Ce+=1:Ce>1&&(Ce-=1),Ce*6<1?ue+(me-ue)*Ce*6:Ce*2<1?me:Ce*3<2?ue+(me-ue)*(2/3-Ce)*6:ue}function ce(ue,me,Ce){return ue+(me-ue)*Ce}function te(ue,me,Ce,Ie,Fe){return ue[0]=me,ue[1]=Ce,ue[2]=Ie,ue[3]=Fe,ue}function ne(ue,me){return ue[0]=me[0],ue[1]=me[1],ue[2]=me[2],ue[3]=me[3],ue}var le=new _e.a(20),se=null;function fe(ue,me){se&&ne(se,me),se=le.put(ue,se||me.slice())}Me.parse=function(ue,me){if(ue){me=me||[];var Ce=le.get(ue);if(Ce)return ne(me,Ce);ue=ue+"";var Ie=ue.replace(/ /g,"").toLowerCase();if(Ie in ve)return ne(me,ve[Ie]),fe(ue,me),me;if(Ie.charAt(0)==="#"){if(Ie.length===4){var Fe=parseInt(Ie.substr(1),16);if(!(Fe>=0&&Fe<=4095)){te(me,0,0,0,1);return}return te(me,(Fe&3840)>>4|(Fe&3840)>>8,Fe&240|(Fe&240)>>4,Fe&15|(Fe&15)<<4,1),fe(ue,me),me}else if(Ie.length===7){var Fe=parseInt(Ie.substr(1),16);if(!(Fe>=0&&Fe<=16777215)){te(me,0,0,0,1);return}return te(me,(Fe&16711680)>>16,(Fe&65280)>>8,Fe&255,1),fe(ue,me),me}return}var Re=Ie.indexOf("("),Ue=Ie.indexOf(")");if(Re!==-1&&Ue+1===Ie.length){var Ge=Ie.substr(0,Re),Je=Ie.substr(Re+1,Ue-(Re+1)).split(","),Qe=1;switch(Ge){case"rgba":if(Je.length!==4){te(me,0,0,0,1);return}Qe=Ae(Je.pop());case"rgb":if(Je.length!==3){te(me,0,0,0,1);return}return te(me,pe(Je[0]),pe(Je[1]),pe(Je[2]),Qe),fe(ue,me),me;case"hsla":if(Je.length!==4){te(me,0,0,0,1);return}return Je[3]=Ae(Je[3]),he(Je,me),fe(ue,me),me;case"hsl":if(Je.length!==3){te(me,0,0,0,1);return}return he(Je,me),fe(ue,me),me;default:return}}te(me,0,0,0,1)}},Me.parseToFloat=function(ue,me){if(me=Me.parse(ue,me),!!me)return me[0]/=255,me[1]/=255,me[2]/=255,me};function he(ue,me){var Ce=(parseFloat(ue[0])%360+360)%360/360,Ie=Ae(ue[1]),Fe=Ae(ue[2]),Re=Fe<=.5?Fe*(Ie+1):Fe+Ie-Fe*Ie,Ue=Fe*2-Re;return me=me||[],te(me,Ee(Se(Ue,Re,Ce+1/3)*255),Ee(Se(Ue,Re,Ce)*255),Ee(Se(Ue,Re,Ce-1/3)*255),1),ue.length===4&&(me[3]=ue[3]),me}function ie(ue){if(ue){var me=ue[0]/255,Ce=ue[1]/255,Ie=ue[2]/255,Fe=Math.min(me,Ce,Ie),Re=Math.max(me,Ce,Ie),Ue=Re-Fe,Ge=(Re+Fe)/2,Je,Qe;if(Ue===0)Je=0,Qe=0;else{Ge<.5?Qe=Ue/(Re+Fe):Qe=Ue/(2-Re-Fe);var rt=((Re-me)/6+Ue/2)/Ue,$e=((Re-Ce)/6+Ue/2)/Ue,qe=((Re-Ie)/6+Ue/2)/Ue;me===Re?Je=qe-$e:Ce===Re?Je=1/3+rt-qe:Ie===Re&&(Je=2/3+$e-rt),Je<0&&(Je+=1),Je>1&&(Je-=1)}var ot=[Je*360,Qe,Ge];return ue[3]!=null&&ot.push(ue[3]),ot}}Me.lift=function(ue,me){var Ce=Me.parse(ue);if(Ce){for(var Ie=0;Ie<3;Ie++)me<0?Ce[Ie]=Ce[Ie]*(1-me)|0:Ce[Ie]=(255-Ce[Ie])*me+Ce[Ie]|0;return Me.stringify(Ce,Ce.length===4?"rgba":"rgb")}},Me.toHex=function(ue){var me=Me.parse(ue);if(me)return((1<<24)+(me[0]<<16)+(me[1]<<8)+ +me[2]).toString(16).slice(1)},Me.fastLerp=function(ue,me,Ce){if(!(!(me&&me.length)||!(ue>=0&&ue<=1))){Ce=Ce||[];var Ie=ue*(me.length-1),Fe=Math.floor(Ie),Re=Math.ceil(Ie),Ue=me[Fe],Ge=me[Re],Je=Ie-Fe;return Ce[0]=Ee(ce(Ue[0],Ge[0],Je)),Ce[1]=Ee(ce(Ue[1],Ge[1],Je)),Ce[2]=Ee(ce(Ue[2],Ge[2],Je)),Ce[3]=xe(ce(Ue[3],Ge[3],Je)),Ce}},Me.fastMapToColor=Me.fastLerp,Me.lerp=function(ue,me,Ce){if(!(!(me&&me.length)||!(ue>=0&&ue<=1))){var Ie=ue*(me.length-1),Fe=Math.floor(Ie),Re=Math.ceil(Ie),Ue=Me.parse(me[Fe]),Ge=Me.parse(me[Re]),Je=Ie-Fe,Qe=Me.stringify([Ee(ce(Ue[0],Ge[0],Je)),Ee(ce(Ue[1],Ge[1],Je)),Ee(ce(Ue[2],Ge[2],Je)),xe(ce(Ue[3],Ge[3],Je))],"rgba");return Ce?{color:Qe,leftIndex:Fe,rightIndex:Re,value:Ie}:Qe}},Me.mapToColor=Me.lerp,Me.modifyHSL=function(ue,me,Ce,Ie){if(ue=Me.parse(ue),ue)return ue=ie(ue),me!=null&&(ue[0]=Pe(me)),Ce!=null&&(ue[1]=Ae(Ce)),Ie!=null&&(ue[2]=Ae(Ie)),Me.stringify(he(ue),"rgba")},Me.modifyAlpha=function(ue,me){if(ue=Me.parse(ue),ue&&me!=null)return ue[3]=xe(me),Me.stringify(ue,"rgba")},Me.stringify=function(ue,me){if(!(!ue||!ue.length)){var Ce=ue[0]+","+ue[1]+","+ue[2];return(me==="rgba"||me==="hsva"||me==="hsla")&&(Ce+=","+ue[3]),me+"("+Ce+")"}},Ne.a=Me},function(He,Ne,be){"use strict";var _e=be(95),Me=function(ve){this._list=new _e.a,this._map={},this._maxSize=ve||10};Me.prototype.setMaxSize=function(ve){this._maxSize=ve},Me.prototype.put=function(ve,Ee){if(typeof this._map[ve]=="undefined"){var Pe=this._list.length();if(Pe>=this._maxSize&&Pe>0){var xe=this._list.head;this._list.remove(xe),delete this._map[xe.key]}var pe=this._list.insert(Ee);pe.key=ve,this._map[ve]=pe}},Me.prototype.get=function(ve){var Ee=this._map[ve];if(typeof Ee!="undefined")return Ee!==this._list.tail&&(this._list.remove(Ee),this._list.insertEntry(Ee)),Ee.value},Me.prototype.remove=function(ve){var Ee=this._map[ve];typeof Ee!="undefined"&&(delete this._map[ve],this._list.remove(Ee))},Me.prototype.clear=function(){this._list.clear(),this._map={}},Ne.a=Me},function(He,Ne,be){"use strict";var _e=function(){this.head=null,this.tail=null,this._length=0};_e.prototype.insert=function(Me){var ve=new _e.Entry(Me);return this.insertEntry(ve),ve},_e.prototype.insertAt=function(Me,ve){if(!(Me<0)){for(var Ee=this.head,Pe=0;Ee&&Pe!=Me;)Ee=Ee.next,Pe++;if(Ee){var xe=new _e.Entry(ve),pe=Ee.prev;pe?(pe.next=xe,xe.prev=pe):this.head=xe,xe.next=Ee,Ee.prev=xe}else this.insert(ve)}},_e.prototype.insertBeforeEntry=function(Me,ve){var Ee=new _e.Entry(Me),Pe=ve.prev;Pe?(Pe.next=Ee,Ee.prev=Pe):this.head=Ee,Ee.next=ve,ve.prev=Ee,this._length++},_e.prototype.insertEntry=function(Me){this.head?(this.tail.next=Me,Me.prev=this.tail,this.tail=Me):this.head=this.tail=Me,this._length++},_e.prototype.remove=function(Me){var ve=Me.prev,Ee=Me.next;ve?ve.next=Ee:this.head=Ee,Ee?Ee.prev=ve:this.tail=ve,Me.next=Me.prev=null,this._length--},_e.prototype.removeAt=function(Me){if(!(Me<0)){for(var ve=this.head,Ee=0;ve&&Ee!=Me;)ve=ve.next,Ee++;if(ve)return this.remove(ve),ve.value}},_e.prototype.getHead=function(){if(this.head)return this.head.value},_e.prototype.getTail=function(){if(this.tail)return this.tail.value},_e.prototype.getAt=function(Me){if(!(Me<0)){for(var ve=this.head,Ee=0;ve&&Ee!=Me;)ve=ve.next,Ee++;return ve.value}},_e.prototype.indexOf=function(Me){for(var ve=this.head,Ee=0;ve;){if(ve.value===Me)return Ee;ve=ve.next,Ee++}},_e.prototype.length=function(){return this._length},_e.prototype.isEmpty=function(){return this._length===0},_e.prototype.forEach=function(Me,ve){for(var Ee=this.head,Pe=0,xe=typeof ve!="undefined";Ee;)xe?Me.call(ve,Ee.value,Pe):Me(Ee.value,Pe),Ee=Ee.next,Pe++},_e.prototype.clear=function(){this.tail=this.head=null,this._length=0},_e.Entry=function(Me){this.value=Me,this.next=null,this.prev=null},Ne.a=_e},function(He,Ne,be){"use strict";var _e=be(97),Me=/for\s*?\(int\s*?_idx_\s*\=\s*([\w-]+)\;\s*_idx_\s*<\s*([\w-]+);\s*_idx_\s*\+\+\s*\)\s*\{\{([\s\S]+?)(?=\}\})\}\}/g;function ve(Ae,Se,ce){function te(se,fe,he,ie){var ue="";isNaN(fe)&&(fe in Se?fe=Se[fe]:fe=ne[fe]),isNaN(he)&&(he in Se?he=Se[he]:he=ne[he]);for(var me=parseInt(fe);me<parseInt(he);me++)ue+="{"+ie.replace(/float\s*\(\s*_idx_\s*\)/g,me.toFixed(1)).replace(/_idx_/g,me)+"}";return ue}var ne={};for(var le in ce)ne[le+"_COUNT"]=ce[le];return Ae.replace(Me,te)}function Ee(Ae,Se,ce){var te=[];if(Se)for(var ne in Se){var le=Se[ne];le>0&&te.push("#define "+ne.toUpperCase()+"_COUNT "+le)}if(ce)for(var se=0;se<ce.length;se++){var fe=ce[se];te.push("#define "+fe.toUpperCase()+"_ENABLED")}for(var fe in Ae){var he=Ae[fe];he===null?te.push("#define "+fe):te.push("#define "+fe+" "+he.toString())}return te.join(`
|
|
|
`)}function Pe(Ae){for(var Se=[],ce=0;ce<Ae.length;ce++)Se.push("#extension GL_"+Ae[ce]+" : enable");return Se.join(`
|
|
|
`)}function xe(Ae){return["precision",Ae,"float"].join(" ")+`;
|
|
|
`+["precision",Ae,"int"].join(" ")+`;
|
|
|
`+["precision",Ae,"sampler2D"].join(" ")+`;
|
|
|
`}function pe(Ae){this._renderer=Ae,this._cache={}}pe.prototype.getProgram=function(Ae,Se,ce){var te=this._cache,ne="s"+Se.shader.shaderID+"m"+Se.programKey;ce&&(ne+="se"+ce.getProgramKey(Ae.lightGroup)),Ae.isSkinnedMesh()&&(ne+=","+Ae.joints.length);var Ue=te[ne];if(Ue)return Ue;var le=ce?ce.getLightsNumbers(Ae.lightGroup):{},se=this._renderer,fe=se.gl,he=Se.getEnabledTextures(),ie="";Ae.isSkinnedMesh()&&(ie=`
|
|
|
`+Ee({SKINNING:null,JOINT_COUNT:Ae.joints.length})+`
|
|
|
`);var ue=ie+Ee(Se.vertexDefines,le,he),me=ie+Ee(Se.fragmentDefines,le,he),Ce=ue+`
|
|
|
`+Se.shader.vertex,Ie=Pe(["OES_standard_derivatives","EXT_shader_texture_lod"])+`
|
|
|
`+xe(Se.precision)+`
|
|
|
`+me+`
|
|
|
`+Se.shader.fragment,Fe=ve(Ce,Se.vertexDefines,le),Re=ve(Ie,Se.fragmentDefines,le),Ue=new _e.a;Ue.uniformSemantics=Se.shader.uniformSemantics,Ue.attributes=Se.shader.attributes;var Ge=Ue.buildProgram(fe,Se.shader,Fe,Re);return Ue.__error=Ge,te[ne]=Ue,Ue},Ne.a=pe},function(He,Ne,be){"use strict";var _e=be(18),Me=be(8),ve=1,Ee=2,Pe=3,xe={};function pe(ce){for(var te=ce.split(`
|
|
|
`),ne=0,le=te.length;ne<le;ne++)te[ne]=ne+1+": "+te[ne];return te.join(`
|
|
|
`)}function Ae(ce,te,ne){if(!ce.getShaderParameter(te,ce.COMPILE_STATUS))return[ce.getShaderInfoLog(te),pe(ne)].join(`
|
|
|
`)}var Se=Me.a.extend({uniformSemantics:{},attributes:{}},function(){this._locations={},this._textureSlot=0,this._program=null},{bind:function(ce){this._textureSlot=0,ce.gl.useProgram(this._program)},hasUniform:function(ce){var te=this._locations[ce];return te!=null},useTextureSlot:function(ce,te,ne){te&&(ce.gl.activeTexture(ce.gl.TEXTURE0+ne),te.isRenderable()?te.bind(ce):te.unbind(ce))},currentTextureSlot:function(){return this._textureSlot},resetTextureSlot:function(ce){this._textureSlot=ce||0},takeCurrentTextureSlot:function(ce,te){var ne=this._textureSlot;return this.useTextureSlot(ce,te,ne),this._textureSlot++,ne},setUniform:function(ce,te,ne,le){var se=this._locations,fe=se[ne];if(fe==null)return!1;switch(te){case"m4":ce.uniformMatrix4fv(fe,!1,le);break;case"2i":ce.uniform2i(fe,le[0],le[1]);break;case"2f":ce.uniform2f(fe,le[0],le[1]);break;case"3i":ce.uniform3i(fe,le[0],le[1],le[2]);break;case"3f":ce.uniform3f(fe,le[0],le[1],le[2]);break;case"4i":ce.uniform4i(fe,le[0],le[1],le[2],le[3]);break;case"4f":ce.uniform4f(fe,le[0],le[1],le[2],le[3]);break;case"1i":ce.uniform1i(fe,le);break;case"1f":ce.uniform1f(fe,le);break;case"1fv":ce.uniform1fv(fe,le);break;case"1iv":ce.uniform1iv(fe,le);break;case"2iv":ce.uniform2iv(fe,le);break;case"2fv":ce.uniform2fv(fe,le);break;case"3iv":ce.uniform3iv(fe,le);break;case"3fv":ce.uniform3fv(fe,le);break;case"4iv":ce.uniform4iv(fe,le);break;case"4fv":ce.uniform4fv(fe,le);break;case"m2":case"m2v":ce.uniformMatrix2fv(fe,!1,le);break;case"m3":case"m3v":ce.uniformMatrix3fv(fe,!1,le);break;case"m4v":if(Array.isArray(le)){for(var he=new _e.a.Float32Array(le.length*16),ie=0,ue=0;ue<le.length;ue++)for(var me=le[ue],Ce=0;Ce<16;Ce++)he[ie++]=me[Ce];ce.uniformMatrix4fv(fe,!1,he)}else le instanceof _e.a.Float32Array&&ce.uniformMatrix4fv(fe,!1,le);break}return!0},setUniformOfSemantic:function(ce,te,ne){var le=this.uniformSemantics[te];return le?this.setUniform(ce,le.type,le.symbol,ne):!1},enableAttributes:function(ce,te,ne){var le=ce.gl,se=this._program,fe=this._locations,he;ne?he=ne.__enabledAttributeList:he=xe[ce.__uid__],he||(ne?he=ne.__enabledAttributeList=[]:he=xe[ce.__uid__]=[]);for(var ie=[],ue=0;ue<te.length;ue++){var me=te[ue];if(!this.attributes[me]){ie[ue]=-1;continue}var Ce=fe[me];if(Ce==null){if(Ce=le.getAttribLocation(se,me),Ce===-1){ie[ue]=-1;continue}fe[me]=Ce}ie[ue]=Ce,he[Ce]?he[Ce]=Ee:he[Ce]=ve}for(var ue=0;ue<he.length;ue++)switch(he[ue]){case ve:le.enableVertexAttribArray(ue),he[ue]=Pe;break;case Ee:he[ue]=Pe;break;case Pe:le.disableVertexAttribArray(ue),he[ue]=0;break}return ie},buildProgram:function(ce,te,ne,le){var se=ce.createShader(ce.VERTEX_SHADER),fe=ce.createProgram();ce.shaderSource(se,ne),ce.compileShader(se);var he=ce.createShader(ce.FRAGMENT_SHADER);ce.shaderSource(he,le),ce.compileShader(he);var ie=Ae(ce,se,ne);if(ie||(ie=Ae(ce,he,le),ie))return ie;if(ce.attachShader(fe,se),ce.attachShader(fe,he),te.attributeSemantics.POSITION)ce.bindAttribLocation(fe,0,te.attributeSemantics.POSITION.symbol);else{var ue=Object.keys(this.attributes);ce.bindAttribLocation(fe,0,ue[0])}if(ce.linkProgram(fe),!ce.getProgramParameter(fe,ce.LINK_STATUS))return`Could not link program
|
|
|
VALIDATE_STATUS: `+ce.getProgramParameter(fe,ce.VALIDATE_STATUS)+", gl error ["+ce.getError()+"]";for(var me=0;me<te.uniforms.length;me++){var Ce=te.uniforms[me];this._locations[Ce]=ce.getUniformLocation(fe,Ce)}ce.deleteShader(se),ce.deleteShader(he),this._program=fe,this.vertexCode=ne,this.fragmentCode=le}});Ne.a=Se},function(He,Ne,be){"use strict";var _e=be(99),Me="uniform vec3 ",ve="uniform float ",Ee="@export clay.header.",Pe="@end",xe=":unconfigurable;";Ne.a=[Ee+"directional_light",Me+"directionalLightDirection[DIRECTIONAL_LIGHT_COUNT]"+xe,Me+"directionalLightColor[DIRECTIONAL_LIGHT_COUNT]"+xe,Pe,Ee+"ambient_light",Me+"ambientLightColor[AMBIENT_LIGHT_COUNT]"+xe,Pe,Ee+"ambient_sh_light",Me+"ambientSHLightColor[AMBIENT_SH_LIGHT_COUNT]"+xe,Me+"ambientSHLightCoefficients[AMBIENT_SH_LIGHT_COUNT * 9]"+xe,_e.a,Pe,Ee+"ambient_cubemap_light",Me+"ambientCubemapLightColor[AMBIENT_CUBEMAP_LIGHT_COUNT]"+xe,"uniform samplerCube ambientCubemapLightCubemap[AMBIENT_CUBEMAP_LIGHT_COUNT]"+xe,"uniform sampler2D ambientCubemapLightBRDFLookup[AMBIENT_CUBEMAP_LIGHT_COUNT]"+xe,Pe,Ee+"point_light",Me+"pointLightPosition[POINT_LIGHT_COUNT]"+xe,ve+"pointLightRange[POINT_LIGHT_COUNT]"+xe,Me+"pointLightColor[POINT_LIGHT_COUNT]"+xe,Pe,Ee+"spot_light",Me+"spotLightPosition[SPOT_LIGHT_COUNT]"+xe,Me+"spotLightDirection[SPOT_LIGHT_COUNT]"+xe,ve+"spotLightRange[SPOT_LIGHT_COUNT]"+xe,ve+"spotLightUmbraAngleCosine[SPOT_LIGHT_COUNT]"+xe,ve+"spotLightPenumbraAngleCosine[SPOT_LIGHT_COUNT]"+xe,ve+"spotLightFalloffFactor[SPOT_LIGHT_COUNT]"+xe,Me+"spotLightColor[SPOT_LIGHT_COUNT]"+xe,Pe].join(`
|
|
|
`)},function(He,Ne,be){"use strict";Ne.a=`vec3 calcAmbientSHLight(int idx, vec3 N) {
|
|
|
int offset = 9 * idx;
|
|
|
return ambientSHLightCoefficients[0]
|
|
|
+ ambientSHLightCoefficients[1] * N.x
|
|
|
+ ambientSHLightCoefficients[2] * N.y
|
|
|
+ ambientSHLightCoefficients[3] * N.z
|
|
|
+ ambientSHLightCoefficients[4] * N.x * N.z
|
|
|
+ ambientSHLightCoefficients[5] * N.z * N.y
|
|
|
+ ambientSHLightCoefficients[6] * N.y * N.x
|
|
|
+ ambientSHLightCoefficients[7] * (3.0 * N.z * N.z - 1.0)
|
|
|
+ ambientSHLightCoefficients[8] * (N.x * N.x - N.y * N.y);
|
|
|
}`},function(He,Ne,be){"use strict";var _e=be(8),Me=be(49),ve=be(23),Ee=be(4),Pe=be(9),xe=be(64),pe=be(11),Ae=be(1),Se=be.n(Ae),ce=Se.a.vec3,te=_e.a.extend({scene:null,camera:null,renderer:null},function(){this._ray=new Me.a,this._ndc=new ve.a},{pick:function(ne,le,se){var fe=this.pickAll(ne,le,[],se);return fe[0]||null},pickAll:function(ne,le,se,fe){return this.renderer.screenToNDC(ne,le,this._ndc),this.camera.castRay(this._ndc,this._ray),se=se||[],this._intersectNode(this.scene,se,fe||!1),se.sort(this._intersectionCompareFunc),se},_intersectNode:function(ne,le,se){ne instanceof xe.a&&ne.isRenderable()&&(!ne.ignorePicking||se)&&(ne.mode===pe.a.TRIANGLES&&ne.geometry.isUseIndices()||ne.geometry.pickByRay||ne.geometry.pick)&&this._intersectRenderable(ne,le);for(var fe=0;fe<ne._children.length;fe++)this._intersectNode(ne._children[fe],le,se)},_intersectRenderable:function(){var ne=new Ee.a,le=new Ee.a,se=new Ee.a,fe=new Me.a,he=new Pe.a;return function(ie,ue){var me=ie.isSkinnedMesh();fe.copy(this._ray),Pe.a.invert(he,ie.worldTransform),me||fe.applyTransform(he);var Ce=ie.geometry;if(!(!me&&Ce.boundingBox&&!fe.intersectBoundingBox(Ce.boundingBox))){if(Ce.pick){Ce.pick(this._ndc.x,this._ndc.y,this.renderer,this.camera,ie,ue);return}else if(Ce.pickByRay){Ce.pickByRay(fe,ie,ue);return}var Ie=ie.cullFace===pe.a.BACK&&ie.frontFace===pe.a.CCW||ie.cullFace===pe.a.FRONT&&ie.frontFace===pe.a.CW,Fe,Re=Ce.indices,Ue=Ce.attributes.position,Ge=Ce.attributes.weight,Je=Ce.attributes.joint,Qe,rt=[];if(!(!Ue||!Ue.value||!Re)){if(me){Qe=ie.skeleton.getSubSkinMatrices(ie.__uid__,ie.joints);for(var $e=0;$e<ie.joints.length;$e++){rt[$e]=rt[$e]||[];for(var qe=0;qe<16;qe++)rt[$e][qe]=Qe[$e*16+qe]}var ot=[],at=[],ut=[],nt=[],lt=[],yt=Ce.attributes.skinnedPosition;(!yt||!yt.value)&&(Ce.createAttribute("skinnedPosition","f",3),yt=Ce.attributes.skinnedPosition,yt.init(Ce.vertexCount));for(var $e=0;$e<Ce.vertexCount;$e++){Ue.get($e,ot),Ge.get($e,at),Je.get($e,ut),at[3]=1-at[0]-at[1]-at[2],ce.set(nt,0,0,0);for(var qe=0;qe<4;qe++)ut[qe]>=0&&at[qe]>1e-4&&(ce.transformMat4(lt,ot,rt[ut[qe]]),ce.scaleAndAdd(nt,nt,lt,at[qe]));yt.set($e,nt)}}for(var $e=0;$e<Re.length;$e+=3){var ft=Re[$e],ct=Re[$e+1],vt=Re[$e+2],Ut=me?Ce.attributes.skinnedPosition:Ue;if(Ut.get(ft,ne.array),Ut.get(ct,le.array),Ut.get(vt,se.array),Ie?Fe=fe.intersectTriangle(ne,le,se,ie.culling):Fe=fe.intersectTriangle(ne,se,le,ie.culling),Fe){var Zt=new Ee.a;me?Ee.a.copy(Zt,Fe):Ee.a.transformMat4(Zt,Fe,ie.worldTransform),ue.push(new te.Intersection(Fe,Zt,ie,[ft,ct,vt],$e/3,Ee.a.dist(Zt,this._ray.origin)))}}}}}}(),_intersectionCompareFunc:function(ne,le){return ne.distance-le.distance}});te.Intersection=function(ne,le,se,fe,he,ie){this.point=ne,this.pointWorld=le,this.target=se,this.triangle=fe,this.triangleIndex=he,this.distance=ie},Ne.a=te},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=["bar3D","line3D","map3D","scatter3D","surface","lines3D","scatterGL","scatter3D"];function Ee(pe,Ae){if(pe&&pe[Ae]&&(pe[Ae].normal||pe[Ae].emphasis)){var Se=pe[Ae].normal,ce=pe[Ae].emphasis;Se&&(pe[Ae]=Se),ce&&(pe.emphasis=pe.emphasis||{},pe.emphasis[Ae]=ce)}}function Pe(pe){Ee(pe,"itemStyle"),Ee(pe,"lineStyle"),Ee(pe,"areaStyle"),Ee(pe,"label")}function xe(pe){pe&&(pe instanceof Array||(pe=[pe]),Me.a.util.each(pe,function(Ae){if(Ae.axisLabel){var Se=Ae.axisLabel;Me.a.util.extend(Se,Se.textStyle),Se.textStyle=null}}))}Ne.a=function(pe){Me.a.util.each(pe.series,function(Ae){Me.a.util.indexOf(ve,Ae.type)>=0&&(Pe(Ae),Ae.coordinateSystem==="mapbox"&&(Ae.coordinateSystem="mapbox3D",pe.mapbox3D=pe.mapbox))}),xe(pe.xAxis3D),xe(pe.yAxis3D),xe(pe.zAxis3D),xe(pe.grid3D),Ee(pe.geo3D)}},function(He,Ne,be){"use strict";function _e(Me){var ve=new XMLHttpRequest;ve.open("get",Me.url),ve.responseType=Me.responseType||"text",Me.onprogress&&(ve.onprogress=function(Ee){if(Ee.lengthComputable){var Pe=Ee.loaded/Ee.total;Me.onprogress(Pe,Ee.loaded,Ee.total)}else Me.onprogress(null)}),ve.onload=function(Ee){ve.status>=400?Me.onerror&&Me.onerror():Me.onload&&Me.onload(ve.response)},Me.onerror&&(ve.onerror=Me.onerror),ve.send(null)}Ne.a={get:_e}},function(He,Ne,be){"use strict";Ne.a=`@export clay.basic.vertex
|
|
|
uniform mat4 worldViewProjection : WORLDVIEWPROJECTION;
|
|
|
uniform vec2 uvRepeat : [1.0, 1.0];
|
|
|
uniform vec2 uvOffset : [0.0, 0.0];
|
|
|
attribute vec2 texcoord : TEXCOORD_0;
|
|
|
attribute vec3 position : POSITION;
|
|
|
attribute vec3 barycentric;
|
|
|
@import clay.chunk.skinning_header
|
|
|
varying vec2 v_Texcoord;
|
|
|
varying vec3 v_Barycentric;
|
|
|
#ifdef VERTEX_COLOR
|
|
|
attribute vec4 a_Color : COLOR;
|
|
|
varying vec4 v_Color;
|
|
|
#endif
|
|
|
void main()
|
|
|
{
|
|
|
vec3 skinnedPosition = position;
|
|
|
#ifdef SKINNING
|
|
|
@import clay.chunk.skin_matrix
|
|
|
skinnedPosition = (skinMatrixWS * vec4(position, 1.0)).xyz;
|
|
|
#endif
|
|
|
v_Texcoord = texcoord * uvRepeat + uvOffset;
|
|
|
v_Barycentric = barycentric;
|
|
|
gl_Position = worldViewProjection * vec4(skinnedPosition, 1.0);
|
|
|
#ifdef VERTEX_COLOR
|
|
|
v_Color = a_Color;
|
|
|
#endif
|
|
|
}
|
|
|
@end
|
|
|
@export clay.basic.fragment
|
|
|
varying vec2 v_Texcoord;
|
|
|
uniform sampler2D diffuseMap;
|
|
|
uniform vec3 color : [1.0, 1.0, 1.0];
|
|
|
uniform vec3 emission : [0.0, 0.0, 0.0];
|
|
|
uniform float alpha : 1.0;
|
|
|
#ifdef ALPHA_TEST
|
|
|
uniform float alphaCutoff: 0.9;
|
|
|
#endif
|
|
|
#ifdef VERTEX_COLOR
|
|
|
varying vec4 v_Color;
|
|
|
#endif
|
|
|
uniform float lineWidth : 0.0;
|
|
|
uniform vec4 lineColor : [0.0, 0.0, 0.0, 0.6];
|
|
|
varying vec3 v_Barycentric;
|
|
|
@import clay.util.edge_factor
|
|
|
@import clay.util.rgbm
|
|
|
@import clay.util.srgb
|
|
|
@import clay.util.ACES
|
|
|
void main()
|
|
|
{
|
|
|
#ifdef RENDER_TEXCOORD
|
|
|
gl_FragColor = vec4(v_Texcoord, 1.0, 1.0);
|
|
|
return;
|
|
|
#endif
|
|
|
gl_FragColor = vec4(color, alpha);
|
|
|
#ifdef VERTEX_COLOR
|
|
|
gl_FragColor *= v_Color;
|
|
|
#endif
|
|
|
#ifdef DIFFUSEMAP_ENABLED
|
|
|
vec4 tex = decodeHDR(texture2D(diffuseMap, v_Texcoord));
|
|
|
#ifdef SRGB_DECODE
|
|
|
tex = sRGBToLinear(tex);
|
|
|
#endif
|
|
|
#if defined(DIFFUSEMAP_ALPHA_ALPHA)
|
|
|
gl_FragColor.a = tex.a;
|
|
|
#endif
|
|
|
gl_FragColor.rgb *= tex.rgb;
|
|
|
#endif
|
|
|
gl_FragColor.rgb += emission;
|
|
|
if( lineWidth > 0.)
|
|
|
{
|
|
|
gl_FragColor.rgb = mix(gl_FragColor.rgb, lineColor.rgb, (1.0 - edgeFactor(lineWidth)) * lineColor.a);
|
|
|
}
|
|
|
#ifdef ALPHA_TEST
|
|
|
if (gl_FragColor.a < alphaCutoff) {
|
|
|
discard;
|
|
|
}
|
|
|
#endif
|
|
|
#ifdef TONEMAPPING
|
|
|
gl_FragColor.rgb = ACESToneMapping(gl_FragColor.rgb);
|
|
|
#endif
|
|
|
#ifdef SRGB_ENCODE
|
|
|
gl_FragColor = linearTosRGB(gl_FragColor);
|
|
|
#endif
|
|
|
gl_FragColor = encodeHDR(gl_FragColor);
|
|
|
}
|
|
|
@end`},function(He,Ne,be){"use strict";var _e=be(6),Me=be(5),ve=be(25),Ee=542327876,Pe=1,xe=2,pe=4,Ae=8,Se=4096,ce=131072,te=524288,ne=8388608,le=8,se=4194304,fe=4096,he=512,ie=1024,ue=2048,me=4096,Ce=8192,Ie=16384,Fe=32768,Re=2097152,Ue=1,Ge=2,Je=4,Qe=64,rt=512,$e=131072;function qe(sn){return sn.charCodeAt(0)+(sn.charCodeAt(1)<<8)+(sn.charCodeAt(2)<<16)+(sn.charCodeAt(3)<<24)}function ot(sn){return String.fromCharCode(sn&255,sn>>8&255,sn>>16&255,sn>>24&255)}var at=31,ut=qe("DXT1"),nt=qe("DXT3"),lt=qe("DXT5"),yt=0,ft=1,ct=2,vt=3,Ut=4,Zt=7,en=20,mn=21,Bt=27,tn=28,on=29,Mn=30,Dn={parse:function(sn,rn){var Ht=new Int32Array(sn,0,at);if(Ht[yt]!==Ee||!Ht(en)&Je)return null;var Tt=Ht(mn),St=Ht[Ut],Qt=Ht[vt],gt=Ht[tn]&he,bt=Ht[ct]&ce,Yt,kt;switch(Tt){case ut:Yt=8,kt=_e.a.COMPRESSED_RGB_S3TC_DXT1_EXT;break;case nt:Yt=16,kt=_e.a.COMPRESSED_RGBA_S3TC_DXT3_EXT;break;case lt:Yt=16,kt=_e.a.COMPRESSED_RGBA_S3TC_DXT5_EXT;break;default:return null}var Mt=Ht[ft]+4,ln=gt?6:1,zn=1;bt&&(zn=Math.max(1,Ht[Zt]));for(var Gn=[],Hn=0;Hn<ln;Hn++){var nr=St,Xn=Qt;Gn[Hn]=new Me.a({width:nr,height:Xn,format:kt});for(var qt=[],vn=0;vn<zn;vn++){var Un=Math.max(4,nr)/4*Math.max(4,Xn)/4*Yt,Ln=new Uint8Array(sn,Mt,Un);Mt+=Un,nr*=.5,Xn*=.5,qt[vn]=Ln}Gn[Hn].pixels=qt[0],bt&&(Gn[Hn].mipmaps=qt)}if(rn)rn.width=Gn[0].width,rn.height=Gn[0].height,rn.format=Gn[0].format,rn.pixels=Gn[0].pixels,rn.mipmaps=Gn[0].mipmaps;else return Gn[0]}};Ne.a=Dn},function(He,Ne,be){"use strict";var _e=be(6),Me=be(5),ve=String.fromCharCode,Ee=8,Pe=32767;function xe(ne,le,se,fe){if(ne[3]>0){var he=Math.pow(2,ne[3]-128-8+fe);le[se+0]=ne[0]*he,le[se+1]=ne[1]*he,le[se+2]=ne[2]*he}else le[se+0]=0,le[se+1]=0,le[se+2]=0;return le[se+3]=1,le}function pe(ne,le,se){for(var fe="",he=le;he<se;he++)fe+=ve(ne[he]);return fe}function Ae(ne,le){le[0]=ne[0],le[1]=ne[1],le[2]=ne[2],le[3]=ne[3]}function Se(ne,le,se,fe){for(var he=0,ie=0,ue=fe;ue>0;)if(ne[ie][0]=le[se++],ne[ie][1]=le[se++],ne[ie][2]=le[se++],ne[ie][3]=le[se++],ne[ie][0]===1&&ne[ie][1]===1&&ne[ie][2]===1){for(var me=ne[ie][3]<<he>>>0;me>0;me--)Ae(ne[ie-1],ne[ie]),ie++,ue--;he+=8}else ie++,ue--,he=0;return se}function ce(ne,le,se,fe){if(fe<Ee|fe>Pe)return Se(ne,le,se,fe);var he=le[se++];if(he!=2)return Se(ne,le,se-1,fe);if(ne[0][1]=le[se++],ne[0][2]=le[se++],he=le[se++],(ne[0][2]<<8>>>0|he)>>>0!==fe)return null;for(var he=0;he<4;he++)for(var ie=0;ie<fe;){var ue=le[se++];if(ue>128){ue=(ue&127)>>>0;for(var me=le[se++];ue--;)ne[ie++][he]=me}else for(;ue--;)ne[ie++][he]=le[se++]}return se}var te={parseRGBE:function(ne,le,se){se==null&&(se=0);var fe=new Uint8Array(ne),he=fe.length;if(pe(fe,0,2)==="#?"){for(var ie=2;ie<he&&!(ve(fe[ie])===`
|
|
|
`&&ve(fe[ie+1])===`
|
|
|
`);ie++);if(!(ie>=he)){ie+=2;for(var ue="";ie<he;ie++){var me=ve(fe[ie]);if(me===`
|
|
|
`)break;ue+=me}var Ce=ue.split(" "),Ie=parseInt(Ce[1]),Fe=parseInt(Ce[3]);if(!(!Fe||!Ie)){for(var Re=ie+1,Ue=[],Ge=0;Ge<Fe;Ge++){Ue[Ge]=[];for(var Je=0;Je<4;Je++)Ue[Ge][Je]=0}for(var Qe=new Float32Array(Fe*Ie*4),rt=0,$e=0;$e<Ie;$e++){var Re=ce(Ue,fe,Re,Fe);if(!Re)return null;for(var Ge=0;Ge<Fe;Ge++)xe(Ue[Ge],Qe,rt,se),rt+=4}return le||(le=new Me.a),le.width=Fe,le.height=Ie,le.pixels=Qe,le.type=_e.a.FLOAT,le}}}},parseRGBEFromPNG:function(ne){}};Ne.a=te},function(He,Ne,be){"use strict";var _e=be(5),Me=be(4),ve=be(23),Ee=["mousedown","mouseup","mousemove","mouseover","mouseout","click","dblclick","contextmenu"];function Pe(pe){return"_on"+pe}var xe=function(pe){var Ae=this;this._texture=new _e.a({anisotropic:32,flipY:!1,surface:this,dispose:function(Se){Ae.dispose(),_e.a.prototype.dispose.call(this,Se)}}),Ee.forEach(function(Se){this[Pe(Se)]=function(ce){ce.triangle&&this._meshes.forEach(function(te){this.dispatchEvent(Se,te,ce.triangle,ce.point)},this)}},this),this._meshes=[],pe&&this.setECharts(pe),this.onupdate=null};xe.prototype={constructor:xe,getTexture:function(){return this._texture},setECharts:function(pe){this._chart=pe;var Ae=pe.getDom();if(!(Ae instanceof HTMLCanvasElement))console.error("ECharts must init on canvas if it is used as texture."),Ae=document.createElement("canvas");else{var Se=this,ce=pe.getZr(),te=ce.__oldRefreshImmediately||ce.refreshImmediately;ce.refreshImmediately=function(){te.call(this),Se._texture.dirty(),Se.onupdate&&Se.onupdate()},ce.__oldRefreshImmediately=te}this._texture.image=Ae,this._texture.dirty(),this.onupdate&&this.onupdate()},dispatchEvent:function(){var pe=new Me.a,Ae=new Me.a,Se=new Me.a,ce=new ve.a,te=new ve.a,ne=new ve.a,le=new ve.a,se=new Me.a;return function(fe,he,ie,ue){var me=he.geometry,Ce=me.attributes.position,Ie=me.attributes.texcoord0,Fe=Me.a.dot,Re=Me.a.cross;Ce.get(ie[0],pe.array),Ce.get(ie[1],Ae.array),Ce.get(ie[2],Se.array),Ie.get(ie[0],ce.array),Ie.get(ie[1],te.array),Ie.get(ie[2],ne.array),Re(se,Ae,Se);var Ue=Fe(pe,se),Ge=Fe(ue,se)/Ue;Re(se,Se,pe);var Je=Fe(ue,se)/Ue;Re(se,pe,Ae);var Qe=Fe(ue,se)/Ue;ve.a.scale(le,ce,Ge),ve.a.scaleAndAdd(le,le,te,Je),ve.a.scaleAndAdd(le,le,ne,Qe);var rt=le.x*this._chart.getWidth(),$e=le.y*this._chart.getHeight();this._chart.getZr().handler.dispatch(fe,{zrX:rt,zrY:$e})}}(),attachToMesh:function(pe){this._meshes.indexOf(pe)>=0||(Ee.forEach(function(Ae){pe.on(Ae,this[Pe(Ae)],this)},this),this._meshes.push(pe))},detachFromMesh:function(pe){var Ae=this._meshes.indexOf(pe);Ae>=0&&this._meshes.splice(Ae,1),Ee.forEach(function(Se){pe.off(Se,this[Pe(Se)])},this)},dispose:function(){this._meshes.forEach(function(pe){this.detachFromMesh(pe)},this)}},Ne.a=xe},function(He,Ne,be){"use strict";var _e=be(19),Me=be(108),ve=_e.a.extend({cubemap:null,castShadow:!1,_normalDistribution:null,_brdfLookup:null},{type:"AMBIENT_CUBEMAP_LIGHT",prefilter:function(Ee,Pe){this._brdfLookup||(this._normalDistribution=Me.a.generateNormalDistribution(),this._brdfLookup=Me.a.integrateBRDF(Ee,this._normalDistribution));var xe=this.cubemap;if(!xe.__prefiltered){var pe=Me.a.prefilterEnvironmentMap(Ee,xe,{encodeRGBM:!0,width:Pe,height:Pe},this._normalDistribution,this._brdfLookup);this.cubemap=pe.environmentMap,this.cubemap.__prefiltered=!0,xe.dispose(Ee)}},uniformTemplates:{ambientCubemapLightColor:{type:"3f",value:function(Ee){var Pe=Ee.color,xe=Ee.intensity;return[Pe[0]*xe,Pe[1]*xe,Pe[2]*xe]}},ambientCubemapLightCubemap:{type:"t",value:function(Ee){return Ee.cubemap}},ambientCubemapLightBRDFLookup:{type:"t",value:function(Ee){return Ee._brdfLookup}}}});Ne.a=ve},function(He,Ne,be){"use strict";var _e=be(5),Me=be(25),ve=be(6),Ee=be(10),Pe=be(14),xe=be(17),pe=be(7),Ae=be(57),Se=be(29),ce=be(55),te=be(18),ne=be(54),le=be(111),se=be(112),fe={},he=["px","nx","py","ny","pz","nz"];fe.prefilterEnvironmentMap=function(ie,ue,me,Ce,Ie){(!Ie||!Ce)&&(Ce=fe.generateNormalDistribution(),Ie=fe.integrateBRDF(ie,Ce)),me=me||{};var Fe=me.width||64,Re=me.height||64,Ue=me.type||ue.type,Ge=new Me.a({width:Fe,height:Re,type:Ue,flipY:!1,mipmaps:[]});Ge.isPowerOfTwo()||console.warn("Width and height must be power of two to enable mipmap.");var Je=Math.min(Fe,Re),Qe=Math.log(Je)/Math.log(2)+1,rt=new xe.a({shader:new pe.a({vertex:pe.a.source("clay.skybox.vertex"),fragment:se.a})});rt.set("normalDistribution",Ce),me.encodeRGBM&&rt.define("fragment","RGBM_ENCODE"),me.decodeRGBM&&rt.define("fragment","RGBM_DECODE");var $e=new Se.a,qe;if(ue instanceof _e.a){var ot=new Me.a({width:Fe,height:Re,type:Ue===ve.a.FLOAT?ve.a.HALF_FLOAT:Ue});ne.a.panoramaToCubeMap(ie,ue,ot,{encodeRGBM:me.decodeRGBM}),ue=ot}qe=new Ae.a({scene:$e,material:rt}),qe.material.set("environmentMap",ue);var at=new ce.a({texture:Ge});me.encodeRGBM&&(Ue=Ge.type=ve.a.UNSIGNED_BYTE);for(var ut=new _e.a({width:Fe,height:Re,type:Ue}),nt=new Ee.a({depthBuffer:!1}),lt=te.a[Ue===ve.a.UNSIGNED_BYTE?"Uint8Array":"Float32Array"],yt=0;yt<Qe;yt++){Ge.mipmaps[yt]={pixels:{}},qe.material.set("roughness",yt/(he.length-1));for(var ft=ut.width,ct=2*Math.atan(ft/(ft-.5))/Math.PI*180,vt=0;vt<he.length;vt++){var Ut=new lt(ut.width*ut.height*4);nt.attach(ut),nt.bind(ie);var Zt=at.getCamera(he[vt]);Zt.fov=ct,ie.render($e,Zt),ie.gl.readPixels(0,0,ut.width,ut.height,ve.a.RGBA,Ue,Ut),nt.unbind(ie),Ge.mipmaps[yt].pixels[he[vt]]=Ut}ut.width/=2,ut.height/=2,ut.dirty()}return nt.dispose(ie),ut.dispose(ie),qe.dispose(ie),Ce.dispose(ie),{environmentMap:Ge,brdfLookup:Ie,normalDistribution:Ce,maxMipmapLevel:Qe}},fe.integrateBRDF=function(ie,ue){ue=ue||fe.generateNormalDistribution();var me=new Ee.a({depthBuffer:!1}),Ce=new Pe.a({fragment:le.a}),Ie=new _e.a({width:512,height:256,type:ve.a.HALF_FLOAT,minFilter:ve.a.NEAREST,magFilter:ve.a.NEAREST,useMipmap:!1});return Ce.setUniform("normalDistribution",ue),Ce.setUniform("viewportSize",[512,256]),Ce.attachOutput(Ie),Ce.render(ie,me),me.dispose(ie),Ie},fe.generateNormalDistribution=function(me,Ce){for(var me=me||256,Ce=Ce||1024,Ie=new _e.a({width:me,height:Ce,type:ve.a.FLOAT,minFilter:ve.a.NEAREST,magFilter:ve.a.NEAREST,useMipmap:!1}),Fe=new Float32Array(Ce*me*4),Re=0;Re<Ce;Re++){var Ue=Re/Ce,Ge=(Re<<16|Re>>>16)>>>0;Ge=((Ge&1431655765)<<1|(Ge&2863311530)>>>1)>>>0,Ge=((Ge&858993459)<<2|(Ge&3435973836)>>>2)>>>0,Ge=((Ge&252645135)<<4|(Ge&4042322160)>>>4)>>>0,Ge=(((Ge&16711935)<<8|(Ge&4278255360)>>>8)>>>0)/4294967296;for(var Je=0;Je<me;Je++){var Qe=Je/me,rt=Qe*Qe,$e=2*Math.PI*Ue,qe=Math.sqrt((1-Ge)/(1+(rt*rt-1)*Ge)),ot=Math.sqrt(1-qe*qe),at=(Re*me+Je)*4;Fe[at]=ot*Math.cos($e),Fe[at+1]=ot*Math.sin($e),Fe[at+2]=qe,Fe[at+3]=1}}return Ie.pixels=Fe,Ie},Ne.a=fe},function(He,Ne,be){"use strict";Ne.a=`
|
|
|
@export clay.compositor.vertex
|
|
|
uniform mat4 worldViewProjection : WORLDVIEWPROJECTION;
|
|
|
attribute vec3 position : POSITION;
|
|
|
attribute vec2 texcoord : TEXCOORD_0;
|
|
|
varying vec2 v_Texcoord;
|
|
|
void main()
|
|
|
{
|
|
|
v_Texcoord = texcoord;
|
|
|
gl_Position = worldViewProjection * vec4(position, 1.0);
|
|
|
}
|
|
|
@end`},function(He,Ne,be){"use strict";Ne.a=`@export clay.skybox.vertex
|
|
|
uniform mat4 world : WORLD;
|
|
|
uniform mat4 worldViewProjection : WORLDVIEWPROJECTION;
|
|
|
attribute vec3 position : POSITION;
|
|
|
varying vec3 v_WorldPosition;
|
|
|
void main()
|
|
|
{
|
|
|
v_WorldPosition = (world * vec4(position, 1.0)).xyz;
|
|
|
gl_Position = worldViewProjection * vec4(position, 1.0);
|
|
|
}
|
|
|
@end
|
|
|
@export clay.skybox.fragment
|
|
|
uniform mat4 viewInverse : VIEWINVERSE;
|
|
|
uniform samplerCube environmentMap;
|
|
|
uniform float lod: 0.0;
|
|
|
varying vec3 v_WorldPosition;
|
|
|
@import clay.util.rgbm
|
|
|
@import clay.util.srgb
|
|
|
@import clay.util.ACES
|
|
|
void main()
|
|
|
{
|
|
|
vec3 eyePos = viewInverse[3].xyz;
|
|
|
vec3 viewDirection = normalize(v_WorldPosition - eyePos);
|
|
|
#ifdef LOD
|
|
|
vec4 texel = decodeHDR(textureCubeLodEXT(environmentMap, viewDirection, lod));
|
|
|
#else
|
|
|
vec4 texel = decodeHDR(textureCube(environmentMap, viewDirection));
|
|
|
#endif
|
|
|
#ifdef SRGB_DECODE
|
|
|
texel = sRGBToLinear(texel);
|
|
|
#endif
|
|
|
#ifdef TONEMAPPING
|
|
|
texel.rgb = ACESToneMapping(texel.rgb);
|
|
|
#endif
|
|
|
#ifdef SRGB_ENCODE
|
|
|
texel = linearTosRGB(texel);
|
|
|
#endif
|
|
|
gl_FragColor = encodeHDR(vec4(texel.rgb, 1.0));
|
|
|
}
|
|
|
@end`},function(He,Ne,be){"use strict";Ne.a=`#define SAMPLE_NUMBER 1024
|
|
|
#define PI 3.14159265358979
|
|
|
uniform sampler2D normalDistribution;
|
|
|
uniform vec2 viewportSize : [512, 256];
|
|
|
const vec3 N = vec3(0.0, 0.0, 1.0);
|
|
|
const float fSampleNumber = float(SAMPLE_NUMBER);
|
|
|
vec3 importanceSampleNormal(float i, float roughness, vec3 N) {
|
|
|
vec3 H = texture2D(normalDistribution, vec2(roughness, i)).rgb;
|
|
|
vec3 upVector = abs(N.z) < 0.999 ? vec3(0.0, 0.0, 1.0) : vec3(1.0, 0.0, 0.0);
|
|
|
vec3 tangentX = normalize(cross(upVector, N));
|
|
|
vec3 tangentY = cross(N, tangentX);
|
|
|
return tangentX * H.x + tangentY * H.y + N * H.z;
|
|
|
}
|
|
|
float G_Smith(float roughness, float NoV, float NoL) {
|
|
|
float k = roughness * roughness / 2.0;
|
|
|
float G1V = NoV / (NoV * (1.0 - k) + k);
|
|
|
float G1L = NoL / (NoL * (1.0 - k) + k);
|
|
|
return G1L * G1V;
|
|
|
}
|
|
|
void main() {
|
|
|
vec2 uv = gl_FragCoord.xy / viewportSize;
|
|
|
float NoV = uv.x;
|
|
|
float roughness = uv.y;
|
|
|
vec3 V;
|
|
|
V.x = sqrt(1.0 - NoV * NoV);
|
|
|
V.y = 0.0;
|
|
|
V.z = NoV;
|
|
|
float A = 0.0;
|
|
|
float B = 0.0;
|
|
|
for (int i = 0; i < SAMPLE_NUMBER; i++) {
|
|
|
vec3 H = importanceSampleNormal(float(i) / fSampleNumber, roughness, N);
|
|
|
vec3 L = reflect(-V, H);
|
|
|
float NoL = clamp(L.z, 0.0, 1.0);
|
|
|
float NoH = clamp(H.z, 0.0, 1.0);
|
|
|
float VoH = clamp(dot(V, H), 0.0, 1.0);
|
|
|
if (NoL > 0.0) {
|
|
|
float G = G_Smith(roughness, NoV, NoL);
|
|
|
float G_Vis = G * VoH / (NoH * NoV);
|
|
|
float Fc = pow(1.0 - VoH, 5.0);
|
|
|
A += (1.0 - Fc) * G_Vis;
|
|
|
B += Fc * G_Vis;
|
|
|
}
|
|
|
}
|
|
|
gl_FragColor = vec4(vec2(A, B) / fSampleNumber, 0.0, 1.0);
|
|
|
}
|
|
|
`},function(He,Ne,be){"use strict";Ne.a=`#define SAMPLE_NUMBER 1024
|
|
|
#define PI 3.14159265358979
|
|
|
uniform mat4 viewInverse : VIEWINVERSE;
|
|
|
uniform samplerCube environmentMap;
|
|
|
uniform sampler2D normalDistribution;
|
|
|
uniform float roughness : 0.5;
|
|
|
varying vec2 v_Texcoord;
|
|
|
varying vec3 v_WorldPosition;
|
|
|
const float fSampleNumber = float(SAMPLE_NUMBER);
|
|
|
@import clay.util.rgbm
|
|
|
vec3 importanceSampleNormal(float i, float roughness, vec3 N) {
|
|
|
vec3 H = texture2D(normalDistribution, vec2(roughness, i)).rgb;
|
|
|
vec3 upVector = abs(N.z) < 0.999 ? vec3(0.0, 0.0, 1.0) : vec3(1.0, 0.0, 0.0);
|
|
|
vec3 tangentX = normalize(cross(upVector, N));
|
|
|
vec3 tangentY = cross(N, tangentX);
|
|
|
return tangentX * H.x + tangentY * H.y + N * H.z;
|
|
|
}
|
|
|
void main() {
|
|
|
vec3 eyePos = viewInverse[3].xyz;
|
|
|
vec3 V = normalize(v_WorldPosition - eyePos);
|
|
|
vec3 N = V;
|
|
|
vec3 R = V;
|
|
|
vec3 prefilteredColor = vec3(0.0);
|
|
|
float totalWeight = 0.0;
|
|
|
for (int i = 0; i < SAMPLE_NUMBER; i++) {
|
|
|
vec3 H = importanceSampleNormal(float(i) / fSampleNumber, roughness, N);
|
|
|
vec3 L = reflect(-V, H);
|
|
|
float NoL = clamp(dot(N, L), 0.0, 1.0);
|
|
|
if (NoL > 0.0) {
|
|
|
prefilteredColor += decodeHDR(textureCube(environmentMap, L)).rgb * NoL;
|
|
|
totalWeight += NoL;
|
|
|
}
|
|
|
}
|
|
|
gl_FragColor = encodeHDR(vec4(prefilteredColor / totalWeight, 1.0));
|
|
|
}
|
|
|
`},function(He,Ne,be){"use strict";var _e=be(19),Me=be(18),ve=_e.a.extend({castShadow:!1,coefficients:[]},function(){this._coefficientsTmpArr=new Me.a.Float32Array(9*3)},{type:"AMBIENT_SH_LIGHT",uniformTemplates:{ambientSHLightColor:{type:"3f",value:function(Ee){var Pe=Ee.color,xe=Ee.intensity;return[Pe[0]*xe,Pe[1]*xe,Pe[2]*xe]}},ambientSHLightCoefficients:{type:"3f",value:function(Ee){for(var Pe=Ee._coefficientsTmpArr,xe=0;xe<Ee.coefficients.length;xe++)Pe[xe]=Ee.coefficients[xe];return Pe}}}});Ne.a=ve},function(He,Ne,be){"use strict";var _e=be(6),Me=be(10),ve=be(5),Ee=be(14),Pe=be(18),xe=be(57),pe=be(56),Ae=be(55),Se=be(29),ce=be(1),te=be.n(ce),ne=be(115),le=te.a.vec3,se={},fe=["px","nx","py","ny","pz","nz"];function he(Ce,Ie){var Fe=new ve.a({width:9,height:1,type:_e.a.FLOAT}),Re=new Ee.a({fragment:ne.a});Re.material.define("fragment","TEXTURE_SIZE",Ie.width),Re.setUniform("environmentMap",Ie);var Ue=new Me.a;Ue.attach(Fe),Re.render(Ce,Ue),Ue.bind(Ce);var Ge=new Pe.a.Float32Array(9*4);Ce.gl.readPixels(0,0,9,1,_e.a.RGBA,_e.a.FLOAT,Ge);for(var Je=new Pe.a.Float32Array(9*3),Qe=0;Qe<9;Qe++)Je[Qe*3]=Ge[Qe*4],Je[Qe*3+1]=Ge[Qe*4+1],Je[Qe*3+2]=Ge[Qe*4+2];return Ue.unbind(Ce),Ue.dispose(Ce),Re.dispose(Ce),Je}function ie(Ce,Ie){var Fe=Ce[0],Re=Ce[1],Ue=Ce[2];return Ie===0?1:Ie===1?Fe:Ie===2?Re:Ie===3?Ue:Ie===4?Fe*Ue:Ie===5?Re*Ue:Ie===6?Fe*Re:Ie===7?3*Ue*Ue-1:Fe*Fe-Re*Re}var ue={px:[2,1,0,-1,-1,1],nx:[2,1,0,1,-1,-1],py:[0,2,1,1,-1,-1],ny:[0,2,1,1,1,1],pz:[0,1,2,-1,-1,-1],nz:[0,1,2,1,-1,1]};function me(Ce,Ie,Fe,Re){for(var Ue=new Pe.a.Float32Array(27),Ge=le.create(),Je=le.create(),Qe=le.create(),rt=0;rt<9;rt++){for(var $e=le.create(),qe=0;qe<fe.length;qe++){for(var ot=Ie[fe[qe]],at=le.create(),ut=0,nt=0,lt=ue[fe[qe]],yt=0;yt<Re;yt++)for(var ft=0;ft<Fe;ft++){Ge[0]=ft/(Fe-1)*2-1,Ge[1]=yt/(Re-1)*2-1,Ge[2]=-1,le.normalize(Ge,Ge),Qe[0]=Ge[lt[0]]*lt[3],Qe[1]=Ge[lt[1]]*lt[4],Qe[2]=Ge[lt[2]]*lt[5],Je[0]=ot[nt++]/255,Je[1]=ot[nt++]/255,Je[2]=ot[nt++]/255;var ct=ot[nt++]/255*51.5;Je[0]*=ct,Je[1]*=ct,Je[2]*=ct,le.scaleAndAdd(at,at,Je,ie(Qe,rt)*-Ge[2]),ut+=-Ge[2]}le.scaleAndAdd($e,$e,at,1/ut)}Ue[rt*3]=$e[0]/6,Ue[rt*3+1]=$e[1]/6,Ue[rt*3+2]=$e[2]/6}return Ue}se.projectEnvironmentMap=function(Ce,Ie,Fe){Fe=Fe||{},Fe.lod=Fe.lod||0;var Re,Ue=new Se.a,Ge=64;Ie instanceof ve.a?Re=new pe.a({scene:Ue,environmentMap:Ie}):(Ge=Ie.image&&Ie.image.px?Ie.image.px.width:Ie.width,Re=new xe.a({scene:Ue,environmentMap:Ie}));var Je=Math.ceil(Ge/Math.pow(2,Fe.lod)),Qe=Math.ceil(Ge/Math.pow(2,Fe.lod)),rt=new ve.a({width:Je,height:Qe}),$e=new Me.a;Re.material.define("fragment","RGBM_ENCODE"),Fe.decodeRGBM&&Re.material.define("fragment","RGBM_DECODE"),Re.material.set("lod",Fe.lod);for(var qe=new Ae.a({texture:rt}),ot={},at=0;at<fe.length;at++){ot[fe[at]]=new Uint8Array(Je*Qe*4);var ut=qe.getCamera(fe[at]);ut.fov=90,$e.attach(rt),$e.bind(Ce),Ce.render(Ue,ut),Ce.gl.readPixels(0,0,Je,Qe,_e.a.RGBA,_e.a.UNSIGNED_BYTE,ot[fe[at]]),$e.unbind(Ce)}return Re.dispose(Ce),$e.dispose(Ce),rt.dispose(Ce),me(Ce,ot,Je,Qe)},Ne.a=se},function(He,Ne,be){"use strict";Ne.a=`uniform samplerCube environmentMap;
|
|
|
varying vec2 v_Texcoord;
|
|
|
#define TEXTURE_SIZE 16
|
|
|
mat3 front = mat3(
|
|
|
1.0, 0.0, 0.0,
|
|
|
0.0, 1.0, 0.0,
|
|
|
0.0, 0.0, 1.0
|
|
|
);
|
|
|
mat3 back = mat3(
|
|
|
-1.0, 0.0, 0.0,
|
|
|
0.0, 1.0, 0.0,
|
|
|
0.0, 0.0, -1.0
|
|
|
);
|
|
|
mat3 left = mat3(
|
|
|
0.0, 0.0, -1.0,
|
|
|
0.0, 1.0, 0.0,
|
|
|
1.0, 0.0, 0.0
|
|
|
);
|
|
|
mat3 right = mat3(
|
|
|
0.0, 0.0, 1.0,
|
|
|
0.0, 1.0, 0.0,
|
|
|
-1.0, 0.0, 0.0
|
|
|
);
|
|
|
mat3 up = mat3(
|
|
|
1.0, 0.0, 0.0,
|
|
|
0.0, 0.0, 1.0,
|
|
|
0.0, -1.0, 0.0
|
|
|
);
|
|
|
mat3 down = mat3(
|
|
|
1.0, 0.0, 0.0,
|
|
|
0.0, 0.0, -1.0,
|
|
|
0.0, 1.0, 0.0
|
|
|
);
|
|
|
float harmonics(vec3 normal){
|
|
|
int index = int(gl_FragCoord.x);
|
|
|
float x = normal.x;
|
|
|
float y = normal.y;
|
|
|
float z = normal.z;
|
|
|
if(index==0){
|
|
|
return 1.0;
|
|
|
}
|
|
|
else if(index==1){
|
|
|
return x;
|
|
|
}
|
|
|
else if(index==2){
|
|
|
return y;
|
|
|
}
|
|
|
else if(index==3){
|
|
|
return z;
|
|
|
}
|
|
|
else if(index==4){
|
|
|
return x*z;
|
|
|
}
|
|
|
else if(index==5){
|
|
|
return y*z;
|
|
|
}
|
|
|
else if(index==6){
|
|
|
return x*y;
|
|
|
}
|
|
|
else if(index==7){
|
|
|
return 3.0*z*z - 1.0;
|
|
|
}
|
|
|
else{
|
|
|
return x*x - y*y;
|
|
|
}
|
|
|
}
|
|
|
vec3 sampleSide(mat3 rot)
|
|
|
{
|
|
|
vec3 result = vec3(0.0);
|
|
|
float divider = 0.0;
|
|
|
for (int i = 0; i < TEXTURE_SIZE * TEXTURE_SIZE; i++) {
|
|
|
float x = mod(float(i), float(TEXTURE_SIZE));
|
|
|
float y = float(i / TEXTURE_SIZE);
|
|
|
vec2 sidecoord = ((vec2(x, y) + vec2(0.5, 0.5)) / vec2(TEXTURE_SIZE)) * 2.0 - 1.0;
|
|
|
vec3 normal = normalize(vec3(sidecoord, -1.0));
|
|
|
vec3 fetchNormal = rot * normal;
|
|
|
vec3 texel = textureCube(environmentMap, fetchNormal).rgb;
|
|
|
result += harmonics(fetchNormal) * texel * -normal.z;
|
|
|
divider += -normal.z;
|
|
|
}
|
|
|
return result / divider;
|
|
|
}
|
|
|
void main()
|
|
|
{
|
|
|
vec3 result = (
|
|
|
sampleSide(front) +
|
|
|
sampleSide(back) +
|
|
|
sampleSide(left) +
|
|
|
sampleSide(right) +
|
|
|
sampleSide(up) +
|
|
|
sampleSide(down)
|
|
|
) / 6.0;
|
|
|
gl_FragColor = vec4(result, 1.0);
|
|
|
}`},function(He,Ne,be){"use strict";var _e=be(19),Me=_e.a.extend({castShadow:!1},{type:"AMBIENT_LIGHT",uniformTemplates:{ambientLightColor:{type:"3f",value:function(ve){var Ee=ve.color,Pe=ve.intensity;return[Ee[0]*Pe,Ee[1]*Pe,Ee[2]*Pe]}}}});Ne.a=Me},function(He,Ne,be){"use strict";var _e=be(1),Me=be.n(_e),ve=Me.a.vec4,Ee=function(pe,Ae,Se,ce){pe=pe||0,Ae=Ae||0,Se=Se||0,ce=ce||0,this.array=ve.fromValues(pe,Ae,Se,ce),this._dirty=!0};Ee.prototype={constructor:Ee,add:function(pe){return ve.add(this.array,this.array,pe.array),this._dirty=!0,this},set:function(pe,Ae,Se,ce){return this.array[0]=pe,this.array[1]=Ae,this.array[2]=Se,this.array[3]=ce,this._dirty=!0,this},setArray:function(pe){return this.array[0]=pe[0],this.array[1]=pe[1],this.array[2]=pe[2],this.array[3]=pe[3],this._dirty=!0,this},clone:function(){return new Ee(this.x,this.y,this.z,this.w)},copy:function(pe){return ve.copy(this.array,pe.array),this._dirty=!0,this},dist:function(pe){return ve.dist(this.array,pe.array)},distance:function(pe){return ve.distance(this.array,pe.array)},div:function(pe){return ve.div(this.array,this.array,pe.array),this._dirty=!0,this},divide:function(pe){return ve.divide(this.array,this.array,pe.array),this._dirty=!0,this},dot:function(pe){return ve.dot(this.array,pe.array)},len:function(){return ve.len(this.array)},length:function(){return ve.length(this.array)},lerp:function(pe,Ae,Se){return ve.lerp(this.array,pe.array,Ae.array,Se),this._dirty=!0,this},min:function(pe){return ve.min(this.array,this.array,pe.array),this._dirty=!0,this},max:function(pe){return ve.max(this.array,this.array,pe.array),this._dirty=!0,this},mul:function(pe){return ve.mul(this.array,this.array,pe.array),this._dirty=!0,this},multiply:function(pe){return ve.multiply(this.array,this.array,pe.array),this._dirty=!0,this},negate:function(){return ve.negate(this.array,this.array),this._dirty=!0,this},normalize:function(){return ve.normalize(this.array,this.array),this._dirty=!0,this},random:function(pe){return ve.random(this.array,pe),this._dirty=!0,this},scale:function(pe){return ve.scale(this.array,this.array,pe),this._dirty=!0,this},scaleAndAdd:function(pe,Ae){return ve.scaleAndAdd(this.array,this.array,pe.array,Ae),this._dirty=!0,this},sqrDist:function(pe){return ve.sqrDist(this.array,pe.array)},squaredDistance:function(pe){return ve.squaredDistance(this.array,pe.array)},sqrLen:function(){return ve.sqrLen(this.array)},squaredLength:function(){return ve.squaredLength(this.array)},sub:function(pe){return ve.sub(this.array,this.array,pe.array),this._dirty=!0,this},subtract:function(pe){return ve.subtract(this.array,this.array,pe.array),this._dirty=!0,this},transformMat4:function(pe){return ve.transformMat4(this.array,this.array,pe.array),this._dirty=!0,this},transformQuat:function(pe){return ve.transformQuat(this.array,this.array,pe.array),this._dirty=!0,this},toString:function(){return"["+Array.prototype.join.call(this.array,",")+"]"},toArray:function(){return Array.prototype.slice.call(this.array)}};var Pe=Object.defineProperty;if(Pe){var xe=Ee.prototype;Pe(xe,"x",{get:function(){return this.array[0]},set:function(pe){this.array[0]=pe,this._dirty=!0}}),Pe(xe,"y",{get:function(){return this.array[1]},set:function(pe){this.array[1]=pe,this._dirty=!0}}),Pe(xe,"z",{get:function(){return this.array[2]},set:function(pe){this.array[2]=pe,this._dirty=!0}}),Pe(xe,"w",{get:function(){return this.array[3]},set:function(pe){this.array[3]=pe,this._dirty=!0}})}Ee.add=function(pe,Ae,Se){return ve.add(pe.array,Ae.array,Se.array),pe._dirty=!0,pe},Ee.set=function(pe,Ae,Se,ce,te){ve.set(pe.array,Ae,Se,ce,te),pe._dirty=!0},Ee.copy=function(pe,Ae){return ve.copy(pe.array,Ae.array),pe._dirty=!0,pe},Ee.dist=function(pe,Ae){return ve.distance(pe.array,Ae.array)},Ee.distance=Ee.dist,Ee.div=function(pe,Ae,Se){return ve.divide(pe.array,Ae.array,Se.array),pe._dirty=!0,pe},Ee.divide=Ee.div,Ee.dot=function(pe,Ae){return ve.dot(pe.array,Ae.array)},Ee.len=function(pe){return ve.length(pe.array)},Ee.lerp=function(pe,Ae,Se,ce){return ve.lerp(pe.array,Ae.array,Se.array,ce),pe._dirty=!0,pe},Ee.min=function(pe,Ae,Se){return ve.min(pe.array,Ae.array,Se.array),pe._dirty=!0,pe},Ee.max=function(pe,Ae,Se){return ve.max(pe.array,Ae.array,Se.array),pe._dirty=!0,pe},Ee.mul=function(pe,Ae,Se){return ve.multiply(pe.array,Ae.array,Se.array),pe._dirty=!0,pe},Ee.multiply=Ee.mul,Ee.negate=function(pe,Ae){return ve.negate(pe.array,Ae.array),pe._dirty=!0,pe},Ee.normalize=function(pe,Ae){return ve.normalize(pe.array,Ae.array),pe._dirty=!0,pe},Ee.random=function(pe,Ae){return ve.random(pe.array,Ae),pe._dirty=!0,pe},Ee.scale=function(pe,Ae,Se){return ve.scale(pe.array,Ae.array,Se),pe._dirty=!0,pe},Ee.scaleAndAdd=function(pe,Ae,Se,ce){return ve.scaleAndAdd(pe.array,Ae.array,Se.array,ce),pe._dirty=!0,pe},Ee.sqrDist=function(pe,Ae){return ve.sqrDist(pe.array,Ae.array)},Ee.squaredDistance=Ee.sqrDist,Ee.sqrLen=function(pe){return ve.sqrLen(pe.array)},Ee.squaredLength=Ee.sqrLen,Ee.sub=function(pe,Ae,Se){return ve.subtract(pe.array,Ae.array,Se.array),pe._dirty=!0,pe},Ee.subtract=Ee.sub,Ee.transformMat4=function(pe,Ae,Se){return ve.transformMat4(pe.array,Ae.array,Se.array),pe._dirty=!0,pe},Ee.transformQuat=function(pe,Ae,Se){return ve.transformQuat(pe.array,Ae.array,Se.array),pe._dirty=!0,pe},Ne.a=Ee},function(He,Ne,be){"use strict";var _e=be(1),Me=be.n(_e),ve=Me.a.mat2,Ee=function(){this.array=ve.create(),this._dirty=!0};Ee.prototype={constructor:Ee,setArray:function(Pe){for(var xe=0;xe<this.array.length;xe++)this.array[xe]=Pe[xe];return this._dirty=!0,this},clone:function(){return new Ee().copy(this)},copy:function(Pe){return ve.copy(this.array,Pe.array),this._dirty=!0,this},adjoint:function(){return ve.adjoint(this.array,this.array),this._dirty=!0,this},determinant:function(){return ve.determinant(this.array)},identity:function(){return ve.identity(this.array),this._dirty=!0,this},invert:function(){return ve.invert(this.array,this.array),this._dirty=!0,this},mul:function(Pe){return ve.mul(this.array,this.array,Pe.array),this._dirty=!0,this},mulLeft:function(Pe){return ve.mul(this.array,Pe.array,this.array),this._dirty=!0,this},multiply:function(Pe){return ve.multiply(this.array,this.array,Pe.array),this._dirty=!0,this},multiplyLeft:function(Pe){return ve.multiply(this.array,Pe.array,this.array),this._dirty=!0,this},rotate:function(Pe){return ve.rotate(this.array,this.array,Pe),this._dirty=!0,this},scale:function(Pe){return ve.scale(this.array,this.array,Pe.array),this._dirty=!0,this},transpose:function(){return ve.transpose(this.array,this.array),this._dirty=!0,this},toString:function(){return"["+Array.prototype.join.call(this.array,",")+"]"},toArray:function(){return Array.prototype.slice.call(this.array)}},Ee.adjoint=function(Pe,xe){return ve.adjoint(Pe.array,xe.array),Pe._dirty=!0,Pe},Ee.copy=function(Pe,xe){return ve.copy(Pe.array,xe.array),Pe._dirty=!0,Pe},Ee.determinant=function(Pe){return ve.determinant(Pe.array)},Ee.identity=function(Pe){return ve.identity(Pe.array),Pe._dirty=!0,Pe},Ee.invert=function(Pe,xe){return ve.invert(Pe.array,xe.array),Pe._dirty=!0,Pe},Ee.mul=function(Pe,xe,pe){return ve.mul(Pe.array,xe.array,pe.array),Pe._dirty=!0,Pe},Ee.multiply=Ee.mul,Ee.rotate=function(Pe,xe,pe){return ve.rotate(Pe.array,xe.array,pe),Pe._dirty=!0,Pe},Ee.scale=function(Pe,xe,pe){return ve.scale(Pe.array,xe.array,pe.array),Pe._dirty=!0,Pe},Ee.transpose=function(Pe,xe){return ve.transpose(Pe.array,xe.array),Pe._dirty=!0,Pe},Ne.a=Ee},function(He,Ne,be){"use strict";var _e=be(1),Me=be.n(_e),ve=Me.a.mat2d,Ee=function(){this.array=ve.create(),this._dirty=!0};Ee.prototype={constructor:Ee,setArray:function(Pe){for(var xe=0;xe<this.array.length;xe++)this.array[xe]=Pe[xe];return this._dirty=!0,this},clone:function(){return new Ee().copy(this)},copy:function(Pe){return ve.copy(this.array,Pe.array),this._dirty=!0,this},determinant:function(){return ve.determinant(this.array)},identity:function(){return ve.identity(this.array),this._dirty=!0,this},invert:function(){return ve.invert(this.array,this.array),this._dirty=!0,this},mul:function(Pe){return ve.mul(this.array,this.array,Pe.array),this._dirty=!0,this},mulLeft:function(Pe){return ve.mul(this.array,Pe.array,this.array),this._dirty=!0,this},multiply:function(Pe){return ve.multiply(this.array,this.array,Pe.array),this._dirty=!0,this},multiplyLeft:function(Pe){return ve.multiply(this.array,Pe.array,this.array),this._dirty=!0,this},rotate:function(Pe){return ve.rotate(this.array,this.array,Pe),this._dirty=!0,this},scale:function(Pe){return ve.scale(this.array,this.array,Pe.array),this._dirty=!0,this},translate:function(Pe){return ve.translate(this.array,this.array,Pe.array),this._dirty=!0,this},toString:function(){return"["+Array.prototype.join.call(this.array,",")+"]"},toArray:function(){return Array.prototype.slice.call(this.array)}},Ee.copy=function(Pe,xe){return ve.copy(Pe.array,xe.array),Pe._dirty=!0,Pe},Ee.determinant=function(Pe){return ve.determinant(Pe.array)},Ee.identity=function(Pe){return ve.identity(Pe.array),Pe._dirty=!0,Pe},Ee.invert=function(Pe,xe){return ve.invert(Pe.array,xe.array),Pe._dirty=!0,Pe},Ee.mul=function(Pe,xe,pe){return ve.mul(Pe.array,xe.array,pe.array),Pe._dirty=!0,Pe},Ee.multiply=Ee.mul,Ee.rotate=function(Pe,xe,pe){return ve.rotate(Pe.array,xe.array,pe),Pe._dirty=!0,Pe},Ee.scale=function(Pe,xe,pe){return ve.scale(Pe.array,xe.array,pe.array),Pe._dirty=!0,Pe},Ee.translate=function(Pe,xe,pe){return ve.translate(Pe.array,xe.array,pe.array),Pe._dirty=!0,Pe},Ne.a=Ee},function(He,Ne,be){"use strict";var _e=be(1),Me=be.n(_e),ve=Me.a.mat3,Ee=function(){this.array=ve.create(),this._dirty=!0};Ee.prototype={constructor:Ee,setArray:function(Pe){for(var xe=0;xe<this.array.length;xe++)this.array[xe]=Pe[xe];return this._dirty=!0,this},adjoint:function(){return ve.adjoint(this.array,this.array),this._dirty=!0,this},clone:function(){return new Ee().copy(this)},copy:function(Pe){return ve.copy(this.array,Pe.array),this._dirty=!0,this},determinant:function(){return ve.determinant(this.array)},fromMat2d:function(Pe){return ve.fromMat2d(this.array,Pe.array),this._dirty=!0,this},fromMat4:function(Pe){return ve.fromMat4(this.array,Pe.array),this._dirty=!0,this},fromQuat:function(Pe){return ve.fromQuat(this.array,Pe.array),this._dirty=!0,this},identity:function(){return ve.identity(this.array),this._dirty=!0,this},invert:function(){return ve.invert(this.array,this.array),this._dirty=!0,this},mul:function(Pe){return ve.mul(this.array,this.array,Pe.array),this._dirty=!0,this},mulLeft:function(Pe){return ve.mul(this.array,Pe.array,this.array),this._dirty=!0,this},multiply:function(Pe){return ve.multiply(this.array,this.array,Pe.array),this._dirty=!0,this},multiplyLeft:function(Pe){return ve.multiply(this.array,Pe.array,this.array),this._dirty=!0,this},rotate:function(Pe){return ve.rotate(this.array,this.array,Pe),this._dirty=!0,this},scale:function(Pe){return ve.scale(this.array,this.array,Pe.array),this._dirty=!0,this},translate:function(Pe){return ve.translate(this.array,this.array,Pe.array),this._dirty=!0,this},normalFromMat4:function(Pe){return ve.normalFromMat4(this.array,Pe.array),this._dirty=!0,this},transpose:function(){return ve.transpose(this.array,this.array),this._dirty=!0,this},toString:function(){return"["+Array.prototype.join.call(this.array,",")+"]"},toArray:function(){return Array.prototype.slice.call(this.array)}},Ee.adjoint=function(Pe,xe){return ve.adjoint(Pe.array,xe.array),Pe._dirty=!0,Pe},Ee.copy=function(Pe,xe){return ve.copy(Pe.array,xe.array),Pe._dirty=!0,Pe},Ee.determinant=function(Pe){return ve.determinant(Pe.array)},Ee.identity=function(Pe){return ve.identity(Pe.array),Pe._dirty=!0,Pe},Ee.invert=function(Pe,xe){return ve.invert(Pe.array,xe.array),Pe},Ee.mul=function(Pe,xe,pe){return ve.mul(Pe.array,xe.array,pe.array),Pe._dirty=!0,Pe},Ee.multiply=Ee.mul,Ee.fromMat2d=function(Pe,xe){return ve.fromMat2d(Pe.array,xe.array),Pe._dirty=!0,Pe},Ee.fromMat4=function(Pe,xe){return ve.fromMat4(Pe.array,xe.array),Pe._dirty=!0,Pe},Ee.fromQuat=function(Pe,xe){return ve.fromQuat(Pe.array,xe.array),Pe._dirty=!0,Pe},Ee.normalFromMat4=function(Pe,xe){return ve.normalFromMat4(Pe.array,xe.array),Pe._dirty=!0,Pe},Ee.rotate=function(Pe,xe,pe){return ve.rotate(Pe.array,xe.array,pe),Pe._dirty=!0,Pe},Ee.scale=function(Pe,xe,pe){return ve.scale(Pe.array,xe.array,pe.array),Pe._dirty=!0,Pe},Ee.transpose=function(Pe,xe){return ve.transpose(Pe.array,xe.array),Pe._dirty=!0,Pe},Ee.translate=function(Pe,xe,pe){return ve.translate(Pe.array,xe.array,pe.array),Pe._dirty=!0,Pe},Ne.a=Ee},function(He,Ne,be){"use strict";var _e=be(122),Me=be.n(_e),ve={_animators:null,getAnimators:function(){return this._animators=this._animators||[],this._animators},animate:function(Ee,Pe){this._animators=this._animators||[];var xe=this,pe;if(Ee){for(var Ae=Ee.split("."),Se=xe,ce=0,te=Ae.length;ce<te;ce++)Se&&(Se=Se[Ae[ce]]);Se&&(pe=Se)}else pe=xe;if(pe==null)throw new Error("Target "+Ee+" not exists");var ne=this._animators,le=new Me.a(pe,Pe),se=this;return le.during(function(){se.__zr&&se.__zr.refresh()}).done(function(){var fe=ne.indexOf(le);fe>=0&&ne.splice(fe,1)}),ne.push(le),this.__zr&&this.__zr.animation.addAnimator(le),le},stopAnimation:function(Ee){this._animators=this._animators||[];for(var Pe=this._animators,xe=Pe.length,pe=0;pe<xe;pe++)Pe[pe].stop(Ee);return Pe.length=0,this},addAnimatorsToZr:function(Ee){if(this._animators)for(var Pe=0;Pe<this._animators.length;Pe++)Ee.animation.addAnimator(this._animators[Pe])},removeAnimatorsFromZr:function(Ee){if(this._animators)for(var Pe=0;Pe<this._animators.length;Pe++)Ee.animation.removeAnimator(this._animators[Pe])}};Ne.a=ve},function(He,Ne,be){var _e=be(123),Me=be(125),ve=be(12),Ee=ve.isArrayLike,Pe=Array.prototype.slice;function xe(Ie,Fe){return Ie[Fe]}function pe(Ie,Fe,Re){Ie[Fe]=Re}function Ae(Ie,Fe,Re){return(Fe-Ie)*Re+Ie}function Se(Ie,Fe,Re){return Re>.5?Fe:Ie}function ce(Ie,Fe,Re,Ue,Ge){var Je=Ie.length;if(Ge==1)for(var Qe=0;Qe<Je;Qe++)Ue[Qe]=Ae(Ie[Qe],Fe[Qe],Re);else for(var rt=Je&&Ie[0].length,Qe=0;Qe<Je;Qe++)for(var $e=0;$e<rt;$e++)Ue[Qe][$e]=Ae(Ie[Qe][$e],Fe[Qe][$e],Re)}function te(Ie,Fe,Re){var Ue=Ie.length,Ge=Fe.length;if(Ue!==Ge){var Je=Ue>Ge;if(Je)Ie.length=Ge;else for(var Qe=Ue;Qe<Ge;Qe++)Ie.push(Re===1?Fe[Qe]:Pe.call(Fe[Qe]))}for(var rt=Ie[0]&&Ie[0].length,Qe=0;Qe<Ie.length;Qe++)if(Re===1)isNaN(Ie[Qe])&&(Ie[Qe]=Fe[Qe]);else for(var $e=0;$e<rt;$e++)isNaN(Ie[Qe][$e])&&(Ie[Qe][$e]=Fe[Qe][$e])}function ne(Ie,Fe,Re){if(Ie===Fe)return!0;var Ue=Ie.length;if(Ue!==Fe.length)return!1;if(Re===1){for(var Ge=0;Ge<Ue;Ge++)if(Ie[Ge]!==Fe[Ge])return!1}else for(var Je=Ie[0].length,Ge=0;Ge<Ue;Ge++)for(var Qe=0;Qe<Je;Qe++)if(Ie[Ge][Qe]!==Fe[Ge][Qe])return!1;return!0}function le(Ie,Fe,Re,Ue,Ge,Je,Qe,rt,$e){var qe=Ie.length;if($e==1)for(var ot=0;ot<qe;ot++)rt[ot]=se(Ie[ot],Fe[ot],Re[ot],Ue[ot],Ge,Je,Qe);else for(var at=Ie[0].length,ot=0;ot<qe;ot++)for(var ut=0;ut<at;ut++)rt[ot][ut]=se(Ie[ot][ut],Fe[ot][ut],Re[ot][ut],Ue[ot][ut],Ge,Je,Qe)}function se(Ie,Fe,Re,Ue,Ge,Je,Qe){var rt=(Re-Ie)*.5,$e=(Ue-Fe)*.5;return(2*(Fe-Re)+rt+$e)*Qe+(-3*(Fe-Re)-2*rt-$e)*Je+rt*Ge+Fe}function fe(Ie){if(Ee(Ie)){var Fe=Ie.length;if(Ee(Ie[0])){for(var Re=[],Ue=0;Ue<Fe;Ue++)Re.push(Pe.call(Ie[Ue]));return Re}return Pe.call(Ie)}return Ie}function he(Ie){return Ie[0]=Math.floor(Ie[0]),Ie[1]=Math.floor(Ie[1]),Ie[2]=Math.floor(Ie[2]),"rgba("+Ie.join(",")+")"}function ie(Ie){var Fe=Ie[Ie.length-1].value;return Ee(Fe&&Fe[0])?2:1}function ue(Ie,Fe,Re,Ue,Ge,Je){var Qe=Ie._getter,rt=Ie._setter,$e=Fe==="spline",qe=Ue.length;if(qe){var ot=Ue[0].value,at=Ee(ot),ut=!1,nt=!1,lt=at?ie(Ue):0,yt;Ue.sort(function(bt,Yt){return bt.time-Yt.time}),yt=Ue[qe-1].time;for(var ft=[],ct=[],vt=Ue[0].value,Ut=!0,Zt=0;Zt<qe;Zt++){ft.push(Ue[Zt].time/yt);var en=Ue[Zt].value;if(at&&ne(en,vt,lt)||!at&&en===vt||(Ut=!1),vt=en,typeof en=="string"){var mn=Me.parse(en);mn?(en=mn,ut=!0):nt=!0}ct.push(en)}if(!(!Je&&Ut)){for(var Bt=ct[qe-1],Zt=0;Zt<qe-1;Zt++)at?te(ct[Zt],Bt,lt):isNaN(ct[Zt])&&!isNaN(Bt)&&!nt&&!ut&&(ct[Zt]=Bt);at&&te(Qe(Ie._target,Ge),Bt,lt);var tn=0,on=0,Mn,Dn,sn,rn,Ht,Tt;if(ut)var St=[0,0,0,0];var Qt=function(bt,Yt){var kt;if(Yt<0)kt=0;else if(Yt<on){for(Mn=Math.min(tn+1,qe-1),kt=Mn;kt>=0&&!(ft[kt]<=Yt);kt--);kt=Math.min(kt,qe-2)}else{for(kt=tn;kt<qe&&!(ft[kt]>Yt);kt++);kt=Math.min(kt-1,qe-2)}tn=kt,on=Yt;var Mt=ft[kt+1]-ft[kt];if(Mt!==0)if(Dn=(Yt-ft[kt])/Mt,$e)if(rn=ct[kt],sn=ct[kt===0?kt:kt-1],Ht=ct[kt>qe-2?qe-1:kt+1],Tt=ct[kt>qe-3?qe-1:kt+2],at)le(sn,rn,Ht,Tt,Dn,Dn*Dn,Dn*Dn*Dn,Qe(bt,Ge),lt);else{var ln;if(ut)ln=le(sn,rn,Ht,Tt,Dn,Dn*Dn,Dn*Dn*Dn,St,1),ln=he(St);else{if(nt)return Se(rn,Ht,Dn);ln=se(sn,rn,Ht,Tt,Dn,Dn*Dn,Dn*Dn*Dn)}rt(bt,Ge,ln)}else if(at)ce(ct[kt],ct[kt+1],Dn,Qe(bt,Ge),lt);else{var ln;if(ut)ce(ct[kt],ct[kt+1],Dn,St,1),ln=he(St);else{if(nt)return Se(ct[kt],ct[kt+1],Dn);ln=Ae(ct[kt],ct[kt+1],Dn)}rt(bt,Ge,ln)}},gt=new _e({target:Ie._target,life:yt,loop:Ie._loop,delay:Ie._delay,onframe:Qt,ondestroy:Re});return Fe&&Fe!=="spline"&&(gt.easing=Fe),gt}}}var me=function(Ie,Fe,Re,Ue){this._tracks={},this._target=Ie,this._loop=Fe||!1,this._getter=Re||xe,this._setter=Ue||pe,this._clipCount=0,this._delay=0,this._doneList=[],this._onframeList=[],this._clipList=[]};me.prototype={when:function(Ie,Fe){var Re=this._tracks;for(var Ue in Fe)if(Fe.hasOwnProperty(Ue)){if(!Re[Ue]){Re[Ue]=[];var Ge=this._getter(this._target,Ue);if(Ge==null)continue;Ie!==0&&Re[Ue].push({time:0,value:fe(Ge)})}Re[Ue].push({time:Ie,value:Fe[Ue]})}return this},during:function(Ie){return this._onframeList.push(Ie),this},pause:function(){for(var Ie=0;Ie<this._clipList.length;Ie++)this._clipList[Ie].pause();this._paused=!0},resume:function(){for(var Ie=0;Ie<this._clipList.length;Ie++)this._clipList[Ie].resume();this._paused=!1},isPaused:function(){return!!this._paused},_doneCallback:function(){this._tracks={},this._clipList.length=0;for(var Ie=this._doneList,Fe=Ie.length,Re=0;Re<Fe;Re++)Ie[Re].call(this)},start:function(Ie,Fe){var Re=this,Ue=0,Ge=function(){Ue--,Ue||Re._doneCallback()},Je;for(var Qe in this._tracks)if(this._tracks.hasOwnProperty(Qe)){var rt=ue(this,Ie,Ge,this._tracks[Qe],Qe,Fe);rt&&(this._clipList.push(rt),Ue++,this.animation&&this.animation.addClip(rt),Je=rt)}if(Je){var $e=Je.onframe;Je.onframe=function(qe,ot){$e(qe,ot);for(var at=0;at<Re._onframeList.length;at++)Re._onframeList[at](qe,ot)}}return Ue||this._doneCallback(),this},stop:function(Ie){for(var Fe=this._clipList,Re=this.animation,Ue=0;Ue<Fe.length;Ue++){var Ge=Fe[Ue];Ie&&Ge.onframe(this._target,1),Re&&Re.removeClip(Ge)}Fe.length=0},delay:function(Ie){return this._delay=Ie,this},done:function(Ie){return Ie&&this._doneList.push(Ie),this},getClips:function(){return this._clipList}};var Ce=me;He.exports=Ce},function(He,Ne,be){var _e=be(124);function Me(Ee){this._target=Ee.target,this._life=Ee.life||1e3,this._delay=Ee.delay||0,this._initialized=!1,this.loop=Ee.loop==null?!1:Ee.loop,this.gap=Ee.gap||0,this.easing=Ee.easing||"Linear",this.onframe=Ee.onframe,this.ondestroy=Ee.ondestroy,this.onrestart=Ee.onrestart,this._pausedTime=0,this._paused=!1}Me.prototype={constructor:Me,step:function(Ee,Pe){if(this._initialized||(this._startTime=Ee+this._delay,this._initialized=!0),this._paused){this._pausedTime+=Pe;return}var xe=(Ee-this._startTime-this._pausedTime)/this._life;if(!(xe<0)){xe=Math.min(xe,1);var pe=this.easing,Ae=typeof pe=="string"?_e[pe]:pe,Se=typeof Ae=="function"?Ae(xe):xe;return this.fire("frame",Se),xe==1?this.loop?(this.restart(Ee),"restart"):(this._needsRemove=!0,"destroy"):null}},restart:function(Ee){var Pe=(Ee-this._startTime-this._pausedTime)%this._life;this._startTime=Ee-Pe+this.gap,this._pausedTime=0,this._needsRemove=!1},fire:function(Ee,Pe){Ee="on"+Ee,this[Ee]&&this[Ee](this._target,Pe)},pause:function(){this._paused=!0},resume:function(){this._paused=!1}};var ve=Me;He.exports=ve},function(He,Ne){var be={linear:function(Me){return Me},quadraticIn:function(Me){return Me*Me},quadraticOut:function(Me){return Me*(2-Me)},quadraticInOut:function(Me){return(Me*=2)<1?.5*Me*Me:-.5*(--Me*(Me-2)-1)},cubicIn:function(Me){return Me*Me*Me},cubicOut:function(Me){return--Me*Me*Me+1},cubicInOut:function(Me){return(Me*=2)<1?.5*Me*Me*Me:.5*((Me-=2)*Me*Me+2)},quarticIn:function(Me){return Me*Me*Me*Me},quarticOut:function(Me){return 1- --Me*Me*Me*Me},quarticInOut:function(Me){return(Me*=2)<1?.5*Me*Me*Me*Me:-.5*((Me-=2)*Me*Me*Me-2)},quinticIn:function(Me){return Me*Me*Me*Me*Me},quinticOut:function(Me){return--Me*Me*Me*Me*Me+1},quinticInOut:function(Me){return(Me*=2)<1?.5*Me*Me*Me*Me*Me:.5*((Me-=2)*Me*Me*Me*Me+2)},sinusoidalIn:function(Me){return 1-Math.cos(Me*Math.PI/2)},sinusoidalOut:function(Me){return Math.sin(Me*Math.PI/2)},sinusoidalInOut:function(Me){return .5*(1-Math.cos(Math.PI*Me))},exponentialIn:function(Me){return Me===0?0:Math.pow(1024,Me-1)},exponentialOut:function(Me){return Me===1?1:1-Math.pow(2,-10*Me)},exponentialInOut:function(Me){return Me===0?0:Me===1?1:(Me*=2)<1?.5*Math.pow(1024,Me-1):.5*(-Math.pow(2,-10*(Me-1))+2)},circularIn:function(Me){return 1-Math.sqrt(1-Me*Me)},circularOut:function(Me){return Math.sqrt(1- --Me*Me)},circularInOut:function(Me){return(Me*=2)<1?-.5*(Math.sqrt(1-Me*Me)-1):.5*(Math.sqrt(1-(Me-=2)*Me)+1)},elasticIn:function(Me){var ve,Ee=.1,Pe=.4;return Me===0?0:Me===1?1:(!Ee||Ee<1?(Ee=1,ve=Pe/4):ve=Pe*Math.asin(1/Ee)/(2*Math.PI),-(Ee*Math.pow(2,10*(Me-=1))*Math.sin((Me-ve)*(2*Math.PI)/Pe)))},elasticOut:function(Me){var ve,Ee=.1,Pe=.4;return Me===0?0:Me===1?1:(!Ee||Ee<1?(Ee=1,ve=Pe/4):ve=Pe*Math.asin(1/Ee)/(2*Math.PI),Ee*Math.pow(2,-10*Me)*Math.sin((Me-ve)*(2*Math.PI)/Pe)+1)},elasticInOut:function(Me){var ve,Ee=.1,Pe=.4;return Me===0?0:Me===1?1:(!Ee||Ee<1?(Ee=1,ve=Pe/4):ve=Pe*Math.asin(1/Ee)/(2*Math.PI),(Me*=2)<1?-.5*(Ee*Math.pow(2,10*(Me-=1))*Math.sin((Me-ve)*(2*Math.PI)/Pe)):Ee*Math.pow(2,-10*(Me-=1))*Math.sin((Me-ve)*(2*Math.PI)/Pe)*.5+1)},backIn:function(Me){var ve=1.70158;return Me*Me*((ve+1)*Me-ve)},backOut:function(Me){var ve=1.70158;return--Me*Me*((ve+1)*Me+ve)+1},backInOut:function(Me){var ve=2.5949095;return(Me*=2)<1?.5*(Me*Me*((ve+1)*Me-ve)):.5*((Me-=2)*Me*((ve+1)*Me+ve)+2)},bounceIn:function(Me){return 1-be.bounceOut(1-Me)},bounceOut:function(Me){return Me<.36363636363636365?7.5625*Me*Me:Me<.7272727272727273?7.5625*(Me-=.5454545454545454)*Me+.75:Me<.9090909090909091?7.5625*(Me-=.8181818181818182)*Me+.9375:7.5625*(Me-=.9545454545454546)*Me+.984375},bounceInOut:function(Me){return Me<.5?be.bounceIn(Me*2)*.5:be.bounceOut(Me*2-1)*.5+.5}},_e=be;He.exports=_e},function(He,Ne,be){var _e=be(53),Me={transparent:[0,0,0,0],aliceblue:[240,248,255,1],antiquewhite:[250,235,215,1],aqua:[0,255,255,1],aquamarine:[127,255,212,1],azure:[240,255,255,1],beige:[245,245,220,1],bisque:[255,228,196,1],black:[0,0,0,1],blanchedalmond:[255,235,205,1],blue:[0,0,255,1],blueviolet:[138,43,226,1],brown:[165,42,42,1],burlywood:[222,184,135,1],cadetblue:[95,158,160,1],chartreuse:[127,255,0,1],chocolate:[210,105,30,1],coral:[255,127,80,1],cornflowerblue:[100,149,237,1],cornsilk:[255,248,220,1],crimson:[220,20,60,1],cyan:[0,255,255,1],darkblue:[0,0,139,1],darkcyan:[0,139,139,1],darkgoldenrod:[184,134,11,1],darkgray:[169,169,169,1],darkgreen:[0,100,0,1],darkgrey:[169,169,169,1],darkkhaki:[189,183,107,1],darkmagenta:[139,0,139,1],darkolivegreen:[85,107,47,1],darkorange:[255,140,0,1],darkorchid:[153,50,204,1],darkred:[139,0,0,1],darksalmon:[233,150,122,1],darkseagreen:[143,188,143,1],darkslateblue:[72,61,139,1],darkslategray:[47,79,79,1],darkslategrey:[47,79,79,1],darkturquoise:[0,206,209,1],darkviolet:[148,0,211,1],deeppink:[255,20,147,1],deepskyblue:[0,191,255,1],dimgray:[105,105,105,1],dimgrey:[105,105,105,1],dodgerblue:[30,144,255,1],firebrick:[178,34,34,1],floralwhite:[255,250,240,1],forestgreen:[34,139,34,1],fuchsia:[255,0,255,1],gainsboro:[220,220,220,1],ghostwhite:[248,248,255,1],gold:[255,215,0,1],goldenrod:[218,165,32,1],gray:[128,128,128,1],green:[0,128,0,1],greenyellow:[173,255,47,1],grey:[128,128,128,1],honeydew:[240,255,240,1],hotpink:[255,105,180,1],indianred:[205,92,92,1],indigo:[75,0,130,1],ivory:[255,255,240,1],khaki:[240,230,140,1],lavender:[230,230,250,1],lavenderblush:[255,240,245,1],lawngreen:[124,252,0,1],lemonchiffon:[255,250,205,1],lightblue:[173,216,230,1],lightcoral:[240,128,128,1],lightcyan:[224,255,255,1],lightgoldenrodyellow:[250,250,210,1],lightgray:[211,211,211,1],lightgreen:[144,238,144,1],lightgrey:[211,211,211,1],lightpink:[255,182,193,1],lightsalmon:[255,160,122,1],lightseagreen:[32,178,170,1],lightskyblue:[135,206,250,1],lightslategray:[119,136,153,1],lightslategrey:[119,136,153,1],lightsteelblue:[176,196,222,1],lightyellow:[255,255,224,1],lime:[0,255,0,1],limegreen:[50,205,50,1],linen:[250,240,230,1],magenta:[255,0,255,1],maroon:[128,0,0,1],mediumaquamarine:[102,205,170,1],mediumblue:[0,0,205,1],mediumorchid:[186,85,211,1],mediumpurple:[147,112,219,1],mediumseagreen:[60,179,113,1],mediumslateblue:[123,104,238,1],mediumspringgreen:[0,250,154,1],mediumturquoise:[72,209,204,1],mediumvioletred:[199,21,133,1],midnightblue:[25,25,112,1],mintcream:[245,255,250,1],mistyrose:[255,228,225,1],moccasin:[255,228,181,1],navajowhite:[255,222,173,1],navy:[0,0,128,1],oldlace:[253,245,230,1],olive:[128,128,0,1],olivedrab:[107,142,35,1],orange:[255,165,0,1],orangered:[255,69,0,1],orchid:[218,112,214,1],palegoldenrod:[238,232,170,1],palegreen:[152,251,152,1],paleturquoise:[175,238,238,1],palevioletred:[219,112,147,1],papayawhip:[255,239,213,1],peachpuff:[255,218,185,1],peru:[205,133,63,1],pink:[255,192,203,1],plum:[221,160,221,1],powderblue:[176,224,230,1],purple:[128,0,128,1],red:[255,0,0,1],rosybrown:[188,143,143,1],royalblue:[65,105,225,1],saddlebrown:[139,69,19,1],salmon:[250,128,114,1],sandybrown:[244,164,96,1],seagreen:[46,139,87,1],seashell:[255,245,238,1],sienna:[160,82,45,1],silver:[192,192,192,1],skyblue:[135,206,235,1],slateblue:[106,90,205,1],slategray:[112,128,144,1],slategrey:[112,128,144,1],snow:[255,250,250,1],springgreen:[0,255,127,1],steelblue:[70,130,180,1],tan:[210,180,140,1],teal:[0,128,128,1],thistle:[216,191,216,1],tomato:[255,99,71,1],turquoise:[64,224,208,1],violet:[238,130,238,1],wheat:[245,222,179,1],white:[255,255,255,1],whitesmoke:[245,245,245,1],yellow:[255,255,0,1],yellowgreen:[154,205,50,1]};function ve(Qe){return Qe=Math.round(Qe),Qe<0?0:Qe>255?255:Qe}function Ee(Qe){return Qe=Math.round(Qe),Qe<0?0:Qe>360?360:Qe}function Pe(Qe){return Qe<0?0:Qe>1?1:Qe}function xe(Qe){return Qe.length&&Qe.charAt(Qe.length-1)==="%"?ve(parseFloat(Qe)/100*255):ve(parseInt(Qe,10))}function pe(Qe){return Qe.length&&Qe.charAt(Qe.length-1)==="%"?Pe(parseFloat(Qe)/100):Pe(parseFloat(Qe))}function Ae(Qe,rt,$e){return $e<0?$e+=1:$e>1&&($e-=1),$e*6<1?Qe+(rt-Qe)*$e*6:$e*2<1?rt:$e*3<2?Qe+(rt-Qe)*(2/3-$e)*6:Qe}function Se(Qe,rt,$e){return Qe+(rt-Qe)*$e}function ce(Qe,rt,$e,qe,ot){return Qe[0]=rt,Qe[1]=$e,Qe[2]=qe,Qe[3]=ot,Qe}function te(Qe,rt){return Qe[0]=rt[0],Qe[1]=rt[1],Qe[2]=rt[2],Qe[3]=rt[3],Qe}var ne=new _e(20),le=null;function se(Qe,rt){le&&te(le,rt),le=ne.put(Qe,le||rt.slice())}function fe(Qe,rt){if(Qe){rt=rt||[];var $e=ne.get(Qe);if($e)return te(rt,$e);Qe=Qe+"";var qe=Qe.replace(/ /g,"").toLowerCase();if(qe in Me)return te(rt,Me[qe]),se(Qe,rt),rt;if(qe.charAt(0)==="#"){if(qe.length===4){var ot=parseInt(qe.substr(1),16);if(!(ot>=0&&ot<=4095)){ce(rt,0,0,0,1);return}return ce(rt,(ot&3840)>>4|(ot&3840)>>8,ot&240|(ot&240)>>4,ot&15|(ot&15)<<4,1),se(Qe,rt),rt}else if(qe.length===7){var ot=parseInt(qe.substr(1),16);if(!(ot>=0&&ot<=16777215)){ce(rt,0,0,0,1);return}return ce(rt,(ot&16711680)>>16,(ot&65280)>>8,ot&255,1),se(Qe,rt),rt}return}var at=qe.indexOf("("),ut=qe.indexOf(")");if(at!==-1&&ut+1===qe.length){var nt=qe.substr(0,at),lt=qe.substr(at+1,ut-(at+1)).split(","),yt=1;switch(nt){case"rgba":if(lt.length!==4){ce(rt,0,0,0,1);return}yt=pe(lt.pop());case"rgb":if(lt.length!==3){ce(rt,0,0,0,1);return}return ce(rt,xe(lt[0]),xe(lt[1]),xe(lt[2]),yt),se(Qe,rt),rt;case"hsla":if(lt.length!==4){ce(rt,0,0,0,1);return}return lt[3]=pe(lt[3]),he(lt,rt),se(Qe,rt),rt;case"hsl":if(lt.length!==3){ce(rt,0,0,0,1);return}return he(lt,rt),se(Qe,rt),rt;default:return}}ce(rt,0,0,0,1)}}function he(Qe,rt){var $e=(parseFloat(Qe[0])%360+360)%360/360,qe=pe(Qe[1]),ot=pe(Qe[2]),at=ot<=.5?ot*(qe+1):ot+qe-ot*qe,ut=ot*2-at;return rt=rt||[],ce(rt,ve(Ae(ut,at,$e+1/3)*255),ve(Ae(ut,at,$e)*255),ve(Ae(ut,at,$e-1/3)*255),1),Qe.length===4&&(rt[3]=Qe[3]),rt}function ie(Qe){if(Qe){var rt=Qe[0]/255,$e=Qe[1]/255,qe=Qe[2]/255,ot=Math.min(rt,$e,qe),at=Math.max(rt,$e,qe),ut=at-ot,nt=(at+ot)/2,lt,yt;if(ut===0)lt=0,yt=0;else{nt<.5?yt=ut/(at+ot):yt=ut/(2-at-ot);var ft=((at-rt)/6+ut/2)/ut,ct=((at-$e)/6+ut/2)/ut,vt=((at-qe)/6+ut/2)/ut;rt===at?lt=vt-ct:$e===at?lt=1/3+ft-vt:qe===at&&(lt=2/3+ct-ft),lt<0&&(lt+=1),lt>1&&(lt-=1)}var Ut=[lt*360,yt,nt];return Qe[3]!=null&&Ut.push(Qe[3]),Ut}}function ue(Qe,rt){var $e=fe(Qe);if($e){for(var qe=0;qe<3;qe++)rt<0?$e[qe]=$e[qe]*(1-rt)|0:$e[qe]=(255-$e[qe])*rt+$e[qe]|0;return Je($e,$e.length===4?"rgba":"rgb")}}function me(Qe){var rt=fe(Qe);if(rt)return((1<<24)+(rt[0]<<16)+(rt[1]<<8)+ +rt[2]).toString(16).slice(1)}function Ce(Qe,rt,$e){if(!(!(rt&&rt.length)||!(Qe>=0&&Qe<=1))){$e=$e||[];var qe=Qe*(rt.length-1),ot=Math.floor(qe),at=Math.ceil(qe),ut=rt[ot],nt=rt[at],lt=qe-ot;return $e[0]=ve(Se(ut[0],nt[0],lt)),$e[1]=ve(Se(ut[1],nt[1],lt)),$e[2]=ve(Se(ut[2],nt[2],lt)),$e[3]=Pe(Se(ut[3],nt[3],lt)),$e}}var Ie=Ce;function Fe(Qe,rt,$e){if(!(!(rt&&rt.length)||!(Qe>=0&&Qe<=1))){var qe=Qe*(rt.length-1),ot=Math.floor(qe),at=Math.ceil(qe),ut=fe(rt[ot]),nt=fe(rt[at]),lt=qe-ot,yt=Je([ve(Se(ut[0],nt[0],lt)),ve(Se(ut[1],nt[1],lt)),ve(Se(ut[2],nt[2],lt)),Pe(Se(ut[3],nt[3],lt))],"rgba");return $e?{color:yt,leftIndex:ot,rightIndex:at,value:qe}:yt}}var Re=Fe;function Ue(Qe,rt,$e,qe){if(Qe=fe(Qe),Qe)return Qe=ie(Qe),rt!=null&&(Qe[0]=Ee(rt)),$e!=null&&(Qe[1]=pe($e)),qe!=null&&(Qe[2]=pe(qe)),Je(he(Qe),"rgba")}function Ge(Qe,rt){if(Qe=fe(Qe),Qe&&rt!=null)return Qe[3]=Pe(rt),Je(Qe,"rgba")}function Je(Qe,rt){if(!(!Qe||!Qe.length)){var $e=Qe[0]+","+Qe[1]+","+Qe[2];return(rt==="rgba"||rt==="hsva"||rt==="hsla")&&($e+=","+Qe[3]),rt+"("+$e+")"}}Ne.parse=fe,Ne.lift=ue,Ne.toHex=me,Ne.fastLerp=Ce,Ne.fastMapToColor=Ie,Ne.lerp=Fe,Ne.mapToColor=Re,Ne.modifyHSL=Ue,Ne.modifyAlpha=Ge,Ne.stringify=Je},function(He,Ne,be){"use strict";Ne.a=`
|
|
|
@export clay.util.rand
|
|
|
highp float rand(vec2 uv) {
|
|
|
const highp float a = 12.9898, b = 78.233, c = 43758.5453;
|
|
|
highp float dt = dot(uv.xy, vec2(a,b)), sn = mod(dt, 3.141592653589793);
|
|
|
return fract(sin(sn) * c);
|
|
|
}
|
|
|
@end
|
|
|
@export clay.util.calculate_attenuation
|
|
|
uniform float attenuationFactor : 5.0;
|
|
|
float lightAttenuation(float dist, float range)
|
|
|
{
|
|
|
float attenuation = 1.0;
|
|
|
attenuation = dist*dist/(range*range+1.0);
|
|
|
float att_s = attenuationFactor;
|
|
|
attenuation = 1.0/(attenuation*att_s+1.0);
|
|
|
att_s = 1.0/(att_s+1.0);
|
|
|
attenuation = attenuation - att_s;
|
|
|
attenuation /= 1.0 - att_s;
|
|
|
return clamp(attenuation, 0.0, 1.0);
|
|
|
}
|
|
|
@end
|
|
|
@export clay.util.edge_factor
|
|
|
float edgeFactor(float width)
|
|
|
{
|
|
|
vec3 d = fwidth(v_Barycentric);
|
|
|
vec3 a3 = smoothstep(vec3(0.0), d * width, v_Barycentric);
|
|
|
return min(min(a3.x, a3.y), a3.z);
|
|
|
}
|
|
|
@end
|
|
|
@export clay.util.encode_float
|
|
|
vec4 encodeFloat(const in float depth)
|
|
|
{
|
|
|
const vec4 bitShifts = vec4(256.0*256.0*256.0, 256.0*256.0, 256.0, 1.0);
|
|
|
const vec4 bit_mask = vec4(0.0, 1.0/256.0, 1.0/256.0, 1.0/256.0);
|
|
|
vec4 res = fract(depth * bitShifts);
|
|
|
res -= res.xxyz * bit_mask;
|
|
|
return res;
|
|
|
}
|
|
|
@end
|
|
|
@export clay.util.decode_float
|
|
|
float decodeFloat(const in vec4 color)
|
|
|
{
|
|
|
const vec4 bitShifts = vec4(1.0/(256.0*256.0*256.0), 1.0/(256.0*256.0), 1.0/256.0, 1.0);
|
|
|
return dot(color, bitShifts);
|
|
|
}
|
|
|
@end
|
|
|
@export clay.util.float
|
|
|
@import clay.util.encode_float
|
|
|
@import clay.util.decode_float
|
|
|
@end
|
|
|
@export clay.util.rgbm_decode
|
|
|
vec3 RGBMDecode(vec4 rgbm, float range) {
|
|
|
return range * rgbm.rgb * rgbm.a;
|
|
|
}
|
|
|
@end
|
|
|
@export clay.util.rgbm_encode
|
|
|
vec4 RGBMEncode(vec3 color, float range) {
|
|
|
if (dot(color, color) == 0.0) {
|
|
|
return vec4(0.0);
|
|
|
}
|
|
|
vec4 rgbm;
|
|
|
color /= range;
|
|
|
rgbm.a = clamp(max(max(color.r, color.g), max(color.b, 1e-6)), 0.0, 1.0);
|
|
|
rgbm.a = ceil(rgbm.a * 255.0) / 255.0;
|
|
|
rgbm.rgb = color / rgbm.a;
|
|
|
return rgbm;
|
|
|
}
|
|
|
@end
|
|
|
@export clay.util.rgbm
|
|
|
@import clay.util.rgbm_decode
|
|
|
@import clay.util.rgbm_encode
|
|
|
vec4 decodeHDR(vec4 color)
|
|
|
{
|
|
|
#if defined(RGBM_DECODE) || defined(RGBM)
|
|
|
return vec4(RGBMDecode(color, 51.5), 1.0);
|
|
|
#else
|
|
|
return color;
|
|
|
#endif
|
|
|
}
|
|
|
vec4 encodeHDR(vec4 color)
|
|
|
{
|
|
|
#if defined(RGBM_ENCODE) || defined(RGBM)
|
|
|
return RGBMEncode(color.xyz, 51.5);
|
|
|
#else
|
|
|
return color;
|
|
|
#endif
|
|
|
}
|
|
|
@end
|
|
|
@export clay.util.srgb
|
|
|
vec4 sRGBToLinear(in vec4 value) {
|
|
|
return vec4(mix(pow(value.rgb * 0.9478672986 + vec3(0.0521327014), vec3(2.4)), value.rgb * 0.0773993808, vec3(lessThanEqual(value.rgb, vec3(0.04045)))), value.w);
|
|
|
}
|
|
|
vec4 linearTosRGB(in vec4 value) {
|
|
|
return vec4(mix(pow(value.rgb, vec3(0.41666)) * 1.055 - vec3(0.055), value.rgb * 12.92, vec3(lessThanEqual(value.rgb, vec3(0.0031308)))), value.w);
|
|
|
}
|
|
|
@end
|
|
|
@export clay.chunk.skinning_header
|
|
|
#ifdef SKINNING
|
|
|
attribute vec3 weight : WEIGHT;
|
|
|
attribute vec4 joint : JOINT;
|
|
|
uniform mat4 skinMatrix[JOINT_COUNT] : SKIN_MATRIX;
|
|
|
mat4 getSkinMatrix(float idx) {
|
|
|
return skinMatrix[int(idx)];
|
|
|
}
|
|
|
#endif
|
|
|
@end
|
|
|
@export clay.chunk.skin_matrix
|
|
|
mat4 skinMatrixWS = getSkinMatrix(joint.x) * weight.x;
|
|
|
if (weight.y > 1e-4)
|
|
|
{
|
|
|
skinMatrixWS += getSkinMatrix(joint.y) * weight.y;
|
|
|
}
|
|
|
if (weight.z > 1e-4)
|
|
|
{
|
|
|
skinMatrixWS += getSkinMatrix(joint.z) * weight.z;
|
|
|
}
|
|
|
float weightW = 1.0-weight.x-weight.y-weight.z;
|
|
|
if (weightW > 1e-4)
|
|
|
{
|
|
|
skinMatrixWS += getSkinMatrix(joint.w) * weightW;
|
|
|
}
|
|
|
@end
|
|
|
@export clay.util.parallax_correct
|
|
|
vec3 parallaxCorrect(in vec3 dir, in vec3 pos, in vec3 boxMin, in vec3 boxMax) {
|
|
|
vec3 first = (boxMax - pos) / dir;
|
|
|
vec3 second = (boxMin - pos) / dir;
|
|
|
vec3 further = max(first, second);
|
|
|
float dist = min(further.x, min(further.y, further.z));
|
|
|
vec3 fixedPos = pos + dir * dist;
|
|
|
vec3 boxCenter = (boxMax + boxMin) * 0.5;
|
|
|
return normalize(fixedPos - boxCenter);
|
|
|
}
|
|
|
@end
|
|
|
@export clay.util.clamp_sample
|
|
|
vec4 clampSample(const in sampler2D texture, const in vec2 coord)
|
|
|
{
|
|
|
#ifdef STEREO
|
|
|
float eye = step(0.5, coord.x) * 0.5;
|
|
|
vec2 coordClamped = clamp(coord, vec2(eye, 0.0), vec2(0.5 + eye, 1.0));
|
|
|
#else
|
|
|
vec2 coordClamped = clamp(coord, vec2(0.0), vec2(1.0));
|
|
|
#endif
|
|
|
return texture2D(texture, coordClamped);
|
|
|
}
|
|
|
@end
|
|
|
@export clay.util.ACES
|
|
|
vec3 ACESToneMapping(vec3 color)
|
|
|
{
|
|
|
const float A = 2.51;
|
|
|
const float B = 0.03;
|
|
|
const float C = 2.43;
|
|
|
const float D = 0.59;
|
|
|
const float E = 0.14;
|
|
|
return (color * (A * color + B)) / (color * (C * color + D) + E);
|
|
|
}
|
|
|
@end`},function(He,Ne,be){"use strict";Ne.a=`
|
|
|
@export ecgl.common.transformUniforms
|
|
|
uniform mat4 worldViewProjection : WORLDVIEWPROJECTION;
|
|
|
uniform mat4 worldInverseTranspose : WORLDINVERSETRANSPOSE;
|
|
|
uniform mat4 world : WORLD;
|
|
|
@end
|
|
|
|
|
|
@export ecgl.common.attributes
|
|
|
attribute vec3 position : POSITION;
|
|
|
attribute vec2 texcoord : TEXCOORD_0;
|
|
|
attribute vec3 normal : NORMAL;
|
|
|
@end
|
|
|
|
|
|
@export ecgl.common.uv.header
|
|
|
uniform vec2 uvRepeat : [1.0, 1.0];
|
|
|
uniform vec2 uvOffset : [0.0, 0.0];
|
|
|
uniform vec2 detailUvRepeat : [1.0, 1.0];
|
|
|
uniform vec2 detailUvOffset : [0.0, 0.0];
|
|
|
|
|
|
varying vec2 v_Texcoord;
|
|
|
varying vec2 v_DetailTexcoord;
|
|
|
@end
|
|
|
|
|
|
@export ecgl.common.uv.main
|
|
|
v_Texcoord = texcoord * uvRepeat + uvOffset;
|
|
|
v_DetailTexcoord = texcoord * detailUvRepeat + detailUvOffset;
|
|
|
@end
|
|
|
|
|
|
@export ecgl.common.uv.fragmentHeader
|
|
|
varying vec2 v_Texcoord;
|
|
|
varying vec2 v_DetailTexcoord;
|
|
|
@end
|
|
|
|
|
|
|
|
|
@export ecgl.common.albedo.main
|
|
|
|
|
|
vec4 albedoTexel = vec4(1.0);
|
|
|
#ifdef DIFFUSEMAP_ENABLED
|
|
|
albedoTexel = texture2D(diffuseMap, v_Texcoord);
|
|
|
#ifdef SRGB_DECODE
|
|
|
albedoTexel = sRGBToLinear(albedoTexel);
|
|
|
#endif
|
|
|
#endif
|
|
|
|
|
|
#ifdef DETAILMAP_ENABLED
|
|
|
vec4 detailTexel = texture2D(detailMap, v_DetailTexcoord);
|
|
|
#ifdef SRGB_DECODE
|
|
|
detailTexel = sRGBToLinear(detailTexel);
|
|
|
#endif
|
|
|
albedoTexel.rgb = mix(albedoTexel.rgb, detailTexel.rgb, detailTexel.a);
|
|
|
albedoTexel.a = detailTexel.a + (1.0 - detailTexel.a) * albedoTexel.a;
|
|
|
#endif
|
|
|
|
|
|
@end
|
|
|
|
|
|
@export ecgl.common.wireframe.vertexHeader
|
|
|
|
|
|
#ifdef WIREFRAME_QUAD
|
|
|
attribute vec4 barycentric;
|
|
|
varying vec4 v_Barycentric;
|
|
|
#elif defined(WIREFRAME_TRIANGLE)
|
|
|
attribute vec3 barycentric;
|
|
|
varying vec3 v_Barycentric;
|
|
|
#endif
|
|
|
|
|
|
@end
|
|
|
|
|
|
@export ecgl.common.wireframe.vertexMain
|
|
|
|
|
|
#if defined(WIREFRAME_QUAD) || defined(WIREFRAME_TRIANGLE)
|
|
|
v_Barycentric = barycentric;
|
|
|
#endif
|
|
|
|
|
|
@end
|
|
|
|
|
|
|
|
|
@export ecgl.common.wireframe.fragmentHeader
|
|
|
|
|
|
uniform float wireframeLineWidth : 1;
|
|
|
uniform vec4 wireframeLineColor: [0, 0, 0, 0.5];
|
|
|
|
|
|
#ifdef WIREFRAME_QUAD
|
|
|
varying vec4 v_Barycentric;
|
|
|
float edgeFactor () {
|
|
|
vec4 d = fwidth(v_Barycentric);
|
|
|
vec4 a4 = smoothstep(vec4(0.0), d * wireframeLineWidth, v_Barycentric);
|
|
|
return min(min(min(a4.x, a4.y), a4.z), a4.w);
|
|
|
}
|
|
|
#elif defined(WIREFRAME_TRIANGLE)
|
|
|
varying vec3 v_Barycentric;
|
|
|
float edgeFactor () {
|
|
|
vec3 d = fwidth(v_Barycentric);
|
|
|
vec3 a3 = smoothstep(vec3(0.0), d * wireframeLineWidth, v_Barycentric);
|
|
|
return min(min(a3.x, a3.y), a3.z);
|
|
|
}
|
|
|
#endif
|
|
|
|
|
|
@end
|
|
|
|
|
|
|
|
|
@export ecgl.common.wireframe.fragmentMain
|
|
|
|
|
|
#if defined(WIREFRAME_QUAD) || defined(WIREFRAME_TRIANGLE)
|
|
|
if (wireframeLineWidth > 0.) {
|
|
|
vec4 lineColor = wireframeLineColor;
|
|
|
#ifdef SRGB_DECODE
|
|
|
lineColor = sRGBToLinear(lineColor);
|
|
|
#endif
|
|
|
|
|
|
gl_FragColor.rgb = mix(gl_FragColor.rgb, lineColor.rgb, (1.0 - edgeFactor()) * lineColor.a);
|
|
|
}
|
|
|
#endif
|
|
|
@end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@export ecgl.common.bumpMap.header
|
|
|
|
|
|
#ifdef BUMPMAP_ENABLED
|
|
|
uniform sampler2D bumpMap;
|
|
|
uniform float bumpScale : 1.0;
|
|
|
|
|
|
|
|
|
vec3 bumpNormal(vec3 surfPos, vec3 surfNormal, vec3 baseNormal)
|
|
|
{
|
|
|
vec2 dSTdx = dFdx(v_Texcoord);
|
|
|
vec2 dSTdy = dFdy(v_Texcoord);
|
|
|
|
|
|
float Hll = bumpScale * texture2D(bumpMap, v_Texcoord).x;
|
|
|
float dHx = bumpScale * texture2D(bumpMap, v_Texcoord + dSTdx).x - Hll;
|
|
|
float dHy = bumpScale * texture2D(bumpMap, v_Texcoord + dSTdy).x - Hll;
|
|
|
|
|
|
vec3 vSigmaX = dFdx(surfPos);
|
|
|
vec3 vSigmaY = dFdy(surfPos);
|
|
|
vec3 vN = surfNormal;
|
|
|
|
|
|
vec3 R1 = cross(vSigmaY, vN);
|
|
|
vec3 R2 = cross(vN, vSigmaX);
|
|
|
|
|
|
float fDet = dot(vSigmaX, R1);
|
|
|
|
|
|
vec3 vGrad = sign(fDet) * (dHx * R1 + dHy * R2);
|
|
|
return normalize(abs(fDet) * baseNormal - vGrad);
|
|
|
|
|
|
}
|
|
|
#endif
|
|
|
|
|
|
@end
|
|
|
|
|
|
@export ecgl.common.normalMap.vertexHeader
|
|
|
|
|
|
#ifdef NORMALMAP_ENABLED
|
|
|
attribute vec4 tangent : TANGENT;
|
|
|
varying vec3 v_Tangent;
|
|
|
varying vec3 v_Bitangent;
|
|
|
#endif
|
|
|
|
|
|
@end
|
|
|
|
|
|
@export ecgl.common.normalMap.vertexMain
|
|
|
|
|
|
#ifdef NORMALMAP_ENABLED
|
|
|
if (dot(tangent, tangent) > 0.0) {
|
|
|
v_Tangent = normalize((worldInverseTranspose * vec4(tangent.xyz, 0.0)).xyz);
|
|
|
v_Bitangent = normalize(cross(v_Normal, v_Tangent) * tangent.w);
|
|
|
}
|
|
|
#endif
|
|
|
|
|
|
@end
|
|
|
|
|
|
|
|
|
@export ecgl.common.normalMap.fragmentHeader
|
|
|
|
|
|
#ifdef NORMALMAP_ENABLED
|
|
|
uniform sampler2D normalMap;
|
|
|
varying vec3 v_Tangent;
|
|
|
varying vec3 v_Bitangent;
|
|
|
#endif
|
|
|
|
|
|
@end
|
|
|
|
|
|
@export ecgl.common.normalMap.fragmentMain
|
|
|
#ifdef NORMALMAP_ENABLED
|
|
|
if (dot(v_Tangent, v_Tangent) > 0.0) {
|
|
|
vec3 normalTexel = texture2D(normalMap, v_DetailTexcoord).xyz;
|
|
|
if (dot(normalTexel, normalTexel) > 0.0) { N = normalTexel * 2.0 - 1.0;
|
|
|
mat3 tbn = mat3(v_Tangent, v_Bitangent, v_Normal);
|
|
|
N = normalize(tbn * N);
|
|
|
}
|
|
|
}
|
|
|
#endif
|
|
|
@end
|
|
|
|
|
|
|
|
|
|
|
|
@export ecgl.common.vertexAnimation.header
|
|
|
|
|
|
#ifdef VERTEX_ANIMATION
|
|
|
attribute vec3 prevPosition;
|
|
|
attribute vec3 prevNormal;
|
|
|
uniform float percent;
|
|
|
#endif
|
|
|
|
|
|
@end
|
|
|
|
|
|
@export ecgl.common.vertexAnimation.main
|
|
|
|
|
|
#ifdef VERTEX_ANIMATION
|
|
|
vec3 pos = mix(prevPosition, position, percent);
|
|
|
vec3 norm = mix(prevNormal, normal, percent);
|
|
|
#else
|
|
|
vec3 pos = position;
|
|
|
vec3 norm = normal;
|
|
|
#endif
|
|
|
|
|
|
@end
|
|
|
|
|
|
|
|
|
@export ecgl.common.ssaoMap.header
|
|
|
#ifdef SSAOMAP_ENABLED
|
|
|
uniform sampler2D ssaoMap;
|
|
|
uniform vec4 viewport : VIEWPORT;
|
|
|
#endif
|
|
|
@end
|
|
|
|
|
|
@export ecgl.common.ssaoMap.main
|
|
|
float ao = 1.0;
|
|
|
#ifdef SSAOMAP_ENABLED
|
|
|
ao = texture2D(ssaoMap, (gl_FragCoord.xy - viewport.xy) / viewport.zw).r;
|
|
|
#endif
|
|
|
@end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@export ecgl.common.diffuseLayer.header
|
|
|
|
|
|
#if (LAYER_DIFFUSEMAP_COUNT > 0)
|
|
|
uniform float layerDiffuseIntensity[LAYER_DIFFUSEMAP_COUNT];
|
|
|
uniform sampler2D layerDiffuseMap[LAYER_DIFFUSEMAP_COUNT];
|
|
|
#endif
|
|
|
|
|
|
@end
|
|
|
|
|
|
@export ecgl.common.emissiveLayer.header
|
|
|
|
|
|
#if (LAYER_EMISSIVEMAP_COUNT > 0)
|
|
|
uniform float layerEmissionIntensity[LAYER_EMISSIVEMAP_COUNT];
|
|
|
uniform sampler2D layerEmissiveMap[LAYER_EMISSIVEMAP_COUNT];
|
|
|
#endif
|
|
|
|
|
|
@end
|
|
|
|
|
|
@export ecgl.common.layers.header
|
|
|
@import ecgl.common.diffuseLayer.header
|
|
|
@import ecgl.common.emissiveLayer.header
|
|
|
@end
|
|
|
|
|
|
@export ecgl.common.diffuseLayer.main
|
|
|
|
|
|
#if (LAYER_DIFFUSEMAP_COUNT > 0)
|
|
|
for (int _idx_ = 0; _idx_ < LAYER_DIFFUSEMAP_COUNT; _idx_++) {{
|
|
|
float intensity = layerDiffuseIntensity[_idx_];
|
|
|
vec4 texel2 = texture2D(layerDiffuseMap[_idx_], v_Texcoord);
|
|
|
#ifdef SRGB_DECODE
|
|
|
texel2 = sRGBToLinear(texel2);
|
|
|
#endif
|
|
|
albedoTexel.rgb = mix(albedoTexel.rgb, texel2.rgb * intensity, texel2.a);
|
|
|
albedoTexel.a = texel2.a + (1.0 - texel2.a) * albedoTexel.a;
|
|
|
}}
|
|
|
#endif
|
|
|
|
|
|
@end
|
|
|
|
|
|
@export ecgl.common.emissiveLayer.main
|
|
|
|
|
|
#if (LAYER_EMISSIVEMAP_COUNT > 0)
|
|
|
for (int _idx_ = 0; _idx_ < LAYER_EMISSIVEMAP_COUNT; _idx_++)
|
|
|
{{
|
|
|
vec4 texel2 = texture2D(layerEmissiveMap[_idx_], v_Texcoord) * layerEmissionIntensity[_idx_];
|
|
|
#ifdef SRGB_DECODE
|
|
|
texel2 = sRGBToLinear(texel2);
|
|
|
#endif
|
|
|
float intensity = layerEmissionIntensity[_idx_];
|
|
|
gl_FragColor.rgb += texel2.rgb * texel2.a * intensity;
|
|
|
}}
|
|
|
#endif
|
|
|
|
|
|
@end
|
|
|
`},function(He,Ne,be){"use strict";Ne.a=`@export ecgl.color.vertex
|
|
|
|
|
|
uniform mat4 worldViewProjection : WORLDVIEWPROJECTION;
|
|
|
|
|
|
@import ecgl.common.uv.header
|
|
|
|
|
|
attribute vec2 texcoord : TEXCOORD_0;
|
|
|
attribute vec3 position: POSITION;
|
|
|
|
|
|
@import ecgl.common.wireframe.vertexHeader
|
|
|
|
|
|
#ifdef VERTEX_COLOR
|
|
|
attribute vec4 a_Color : COLOR;
|
|
|
varying vec4 v_Color;
|
|
|
#endif
|
|
|
|
|
|
#ifdef VERTEX_ANIMATION
|
|
|
attribute vec3 prevPosition;
|
|
|
uniform float percent : 1.0;
|
|
|
#endif
|
|
|
|
|
|
void main()
|
|
|
{
|
|
|
#ifdef VERTEX_ANIMATION
|
|
|
vec3 pos = mix(prevPosition, position, percent);
|
|
|
#else
|
|
|
vec3 pos = position;
|
|
|
#endif
|
|
|
|
|
|
gl_Position = worldViewProjection * vec4(pos, 1.0);
|
|
|
|
|
|
@import ecgl.common.uv.main
|
|
|
|
|
|
#ifdef VERTEX_COLOR
|
|
|
v_Color = a_Color;
|
|
|
#endif
|
|
|
|
|
|
@import ecgl.common.wireframe.vertexMain
|
|
|
|
|
|
}
|
|
|
|
|
|
@end
|
|
|
|
|
|
@export ecgl.color.fragment
|
|
|
|
|
|
#define LAYER_DIFFUSEMAP_COUNT 0
|
|
|
#define LAYER_EMISSIVEMAP_COUNT 0
|
|
|
|
|
|
uniform sampler2D diffuseMap;
|
|
|
uniform sampler2D detailMap;
|
|
|
|
|
|
uniform vec4 color : [1.0, 1.0, 1.0, 1.0];
|
|
|
|
|
|
#ifdef VERTEX_COLOR
|
|
|
varying vec4 v_Color;
|
|
|
#endif
|
|
|
|
|
|
@import ecgl.common.layers.header
|
|
|
|
|
|
@import ecgl.common.uv.fragmentHeader
|
|
|
|
|
|
@import ecgl.common.wireframe.fragmentHeader
|
|
|
|
|
|
@import clay.util.srgb
|
|
|
|
|
|
void main()
|
|
|
{
|
|
|
#ifdef SRGB_DECODE
|
|
|
gl_FragColor = sRGBToLinear(color);
|
|
|
#else
|
|
|
gl_FragColor = color;
|
|
|
#endif
|
|
|
|
|
|
#ifdef VERTEX_COLOR
|
|
|
gl_FragColor *= v_Color;
|
|
|
#endif
|
|
|
|
|
|
@import ecgl.common.albedo.main
|
|
|
|
|
|
@import ecgl.common.diffuseLayer.main
|
|
|
|
|
|
gl_FragColor *= albedoTexel;
|
|
|
|
|
|
@import ecgl.common.emissiveLayer.main
|
|
|
|
|
|
@import ecgl.common.wireframe.fragmentMain
|
|
|
|
|
|
}
|
|
|
@end`},function(He,Ne,be){"use strict";Ne.a=`/**
|
|
|
* http: */
|
|
|
|
|
|
@export ecgl.lambert.vertex
|
|
|
|
|
|
@import ecgl.common.transformUniforms
|
|
|
|
|
|
@import ecgl.common.uv.header
|
|
|
|
|
|
|
|
|
@import ecgl.common.attributes
|
|
|
|
|
|
@import ecgl.common.wireframe.vertexHeader
|
|
|
|
|
|
#ifdef VERTEX_COLOR
|
|
|
attribute vec4 a_Color : COLOR;
|
|
|
varying vec4 v_Color;
|
|
|
#endif
|
|
|
|
|
|
|
|
|
@import ecgl.common.vertexAnimation.header
|
|
|
|
|
|
|
|
|
varying vec3 v_Normal;
|
|
|
varying vec3 v_WorldPosition;
|
|
|
|
|
|
void main()
|
|
|
{
|
|
|
@import ecgl.common.uv.main
|
|
|
|
|
|
@import ecgl.common.vertexAnimation.main
|
|
|
|
|
|
|
|
|
gl_Position = worldViewProjection * vec4(pos, 1.0);
|
|
|
|
|
|
v_Normal = normalize((worldInverseTranspose * vec4(norm, 0.0)).xyz);
|
|
|
v_WorldPosition = (world * vec4(pos, 1.0)).xyz;
|
|
|
|
|
|
#ifdef VERTEX_COLOR
|
|
|
v_Color = a_Color;
|
|
|
#endif
|
|
|
|
|
|
@import ecgl.common.wireframe.vertexMain
|
|
|
}
|
|
|
|
|
|
@end
|
|
|
|
|
|
|
|
|
@export ecgl.lambert.fragment
|
|
|
|
|
|
#define LAYER_DIFFUSEMAP_COUNT 0
|
|
|
#define LAYER_EMISSIVEMAP_COUNT 0
|
|
|
|
|
|
#define NORMAL_UP_AXIS 1
|
|
|
#define NORMAL_FRONT_AXIS 2
|
|
|
|
|
|
@import ecgl.common.uv.fragmentHeader
|
|
|
|
|
|
varying vec3 v_Normal;
|
|
|
varying vec3 v_WorldPosition;
|
|
|
|
|
|
uniform sampler2D diffuseMap;
|
|
|
uniform sampler2D detailMap;
|
|
|
|
|
|
@import ecgl.common.layers.header
|
|
|
|
|
|
uniform float emissionIntensity: 1.0;
|
|
|
|
|
|
uniform vec4 color : [1.0, 1.0, 1.0, 1.0];
|
|
|
|
|
|
uniform mat4 viewInverse : VIEWINVERSE;
|
|
|
|
|
|
#ifdef AMBIENT_LIGHT_COUNT
|
|
|
@import clay.header.ambient_light
|
|
|
#endif
|
|
|
#ifdef AMBIENT_SH_LIGHT_COUNT
|
|
|
@import clay.header.ambient_sh_light
|
|
|
#endif
|
|
|
|
|
|
#ifdef DIRECTIONAL_LIGHT_COUNT
|
|
|
@import clay.header.directional_light
|
|
|
#endif
|
|
|
|
|
|
#ifdef VERTEX_COLOR
|
|
|
varying vec4 v_Color;
|
|
|
#endif
|
|
|
|
|
|
|
|
|
@import ecgl.common.ssaoMap.header
|
|
|
|
|
|
@import ecgl.common.bumpMap.header
|
|
|
|
|
|
@import clay.util.srgb
|
|
|
|
|
|
@import ecgl.common.wireframe.fragmentHeader
|
|
|
|
|
|
@import clay.plugin.compute_shadow_map
|
|
|
|
|
|
void main()
|
|
|
{
|
|
|
#ifdef SRGB_DECODE
|
|
|
gl_FragColor = sRGBToLinear(color);
|
|
|
#else
|
|
|
gl_FragColor = color;
|
|
|
#endif
|
|
|
|
|
|
#ifdef VERTEX_COLOR
|
|
|
#ifdef SRGB_DECODE
|
|
|
gl_FragColor *= sRGBToLinear(v_Color);
|
|
|
#else
|
|
|
gl_FragColor *= v_Color;
|
|
|
#endif
|
|
|
#endif
|
|
|
|
|
|
@import ecgl.common.albedo.main
|
|
|
|
|
|
@import ecgl.common.diffuseLayer.main
|
|
|
|
|
|
gl_FragColor *= albedoTexel;
|
|
|
|
|
|
vec3 N = v_Normal;
|
|
|
#ifdef DOUBLE_SIDED
|
|
|
vec3 eyePos = viewInverse[3].xyz;
|
|
|
vec3 V = normalize(eyePos - v_WorldPosition);
|
|
|
|
|
|
if (dot(N, V) < 0.0) {
|
|
|
N = -N;
|
|
|
}
|
|
|
#endif
|
|
|
|
|
|
float ambientFactor = 1.0;
|
|
|
|
|
|
#ifdef BUMPMAP_ENABLED
|
|
|
N = bumpNormal(v_WorldPosition, v_Normal, N);
|
|
|
ambientFactor = dot(v_Normal, N);
|
|
|
#endif
|
|
|
|
|
|
vec3 N2 = vec3(N.x, N[NORMAL_UP_AXIS], N[NORMAL_FRONT_AXIS]);
|
|
|
|
|
|
vec3 diffuseColor = vec3(0.0, 0.0, 0.0);
|
|
|
|
|
|
@import ecgl.common.ssaoMap.main
|
|
|
|
|
|
#ifdef AMBIENT_LIGHT_COUNT
|
|
|
for(int i = 0; i < AMBIENT_LIGHT_COUNT; i++)
|
|
|
{
|
|
|
diffuseColor += ambientLightColor[i] * ambientFactor * ao;
|
|
|
}
|
|
|
#endif
|
|
|
#ifdef AMBIENT_SH_LIGHT_COUNT
|
|
|
for(int _idx_ = 0; _idx_ < AMBIENT_SH_LIGHT_COUNT; _idx_++)
|
|
|
{{
|
|
|
diffuseColor += calcAmbientSHLight(_idx_, N2) * ambientSHLightColor[_idx_] * ao;
|
|
|
}}
|
|
|
#endif
|
|
|
#ifdef DIRECTIONAL_LIGHT_COUNT
|
|
|
#if defined(DIRECTIONAL_LIGHT_SHADOWMAP_COUNT)
|
|
|
float shadowContribsDir[DIRECTIONAL_LIGHT_COUNT];
|
|
|
if(shadowEnabled)
|
|
|
{
|
|
|
computeShadowOfDirectionalLights(v_WorldPosition, shadowContribsDir);
|
|
|
}
|
|
|
#endif
|
|
|
for(int i = 0; i < DIRECTIONAL_LIGHT_COUNT; i++)
|
|
|
{
|
|
|
vec3 lightDirection = -directionalLightDirection[i];
|
|
|
vec3 lightColor = directionalLightColor[i];
|
|
|
|
|
|
float shadowContrib = 1.0;
|
|
|
#if defined(DIRECTIONAL_LIGHT_SHADOWMAP_COUNT)
|
|
|
if (shadowEnabled)
|
|
|
{
|
|
|
shadowContrib = shadowContribsDir[i];
|
|
|
}
|
|
|
#endif
|
|
|
|
|
|
float ndl = dot(N, normalize(lightDirection)) * shadowContrib;
|
|
|
|
|
|
diffuseColor += lightColor * clamp(ndl, 0.0, 1.0);
|
|
|
}
|
|
|
#endif
|
|
|
|
|
|
gl_FragColor.rgb *= diffuseColor;
|
|
|
|
|
|
@import ecgl.common.emissiveLayer.main
|
|
|
|
|
|
@import ecgl.common.wireframe.fragmentMain
|
|
|
}
|
|
|
|
|
|
@end`},function(He,Ne,be){"use strict";Ne.a=`@export ecgl.realistic.vertex
|
|
|
|
|
|
@import ecgl.common.transformUniforms
|
|
|
|
|
|
@import ecgl.common.uv.header
|
|
|
|
|
|
@import ecgl.common.attributes
|
|
|
|
|
|
|
|
|
@import ecgl.common.wireframe.vertexHeader
|
|
|
|
|
|
#ifdef VERTEX_COLOR
|
|
|
attribute vec4 a_Color : COLOR;
|
|
|
varying vec4 v_Color;
|
|
|
#endif
|
|
|
|
|
|
#ifdef NORMALMAP_ENABLED
|
|
|
attribute vec4 tangent : TANGENT;
|
|
|
varying vec3 v_Tangent;
|
|
|
varying vec3 v_Bitangent;
|
|
|
#endif
|
|
|
|
|
|
@import ecgl.common.vertexAnimation.header
|
|
|
|
|
|
varying vec3 v_Normal;
|
|
|
varying vec3 v_WorldPosition;
|
|
|
|
|
|
void main()
|
|
|
{
|
|
|
|
|
|
@import ecgl.common.uv.main
|
|
|
|
|
|
@import ecgl.common.vertexAnimation.main
|
|
|
|
|
|
gl_Position = worldViewProjection * vec4(pos, 1.0);
|
|
|
|
|
|
v_Normal = normalize((worldInverseTranspose * vec4(norm, 0.0)).xyz);
|
|
|
v_WorldPosition = (world * vec4(pos, 1.0)).xyz;
|
|
|
|
|
|
#ifdef VERTEX_COLOR
|
|
|
v_Color = a_Color;
|
|
|
#endif
|
|
|
|
|
|
#ifdef NORMALMAP_ENABLED
|
|
|
v_Tangent = normalize((worldInverseTranspose * vec4(tangent.xyz, 0.0)).xyz);
|
|
|
v_Bitangent = normalize(cross(v_Normal, v_Tangent) * tangent.w);
|
|
|
#endif
|
|
|
|
|
|
@import ecgl.common.wireframe.vertexMain
|
|
|
|
|
|
}
|
|
|
|
|
|
@end
|
|
|
|
|
|
|
|
|
|
|
|
@export ecgl.realistic.fragment
|
|
|
|
|
|
#define LAYER_DIFFUSEMAP_COUNT 0
|
|
|
#define LAYER_EMISSIVEMAP_COUNT 0
|
|
|
#define PI 3.14159265358979
|
|
|
#define ROUGHNESS_CHANEL 0
|
|
|
#define METALNESS_CHANEL 1
|
|
|
|
|
|
#define NORMAL_UP_AXIS 1
|
|
|
#define NORMAL_FRONT_AXIS 2
|
|
|
|
|
|
#ifdef VERTEX_COLOR
|
|
|
varying vec4 v_Color;
|
|
|
#endif
|
|
|
|
|
|
@import ecgl.common.uv.fragmentHeader
|
|
|
|
|
|
varying vec3 v_Normal;
|
|
|
varying vec3 v_WorldPosition;
|
|
|
|
|
|
uniform sampler2D diffuseMap;
|
|
|
|
|
|
uniform sampler2D detailMap;
|
|
|
uniform sampler2D metalnessMap;
|
|
|
uniform sampler2D roughnessMap;
|
|
|
|
|
|
@import ecgl.common.layers.header
|
|
|
|
|
|
uniform float emissionIntensity: 1.0;
|
|
|
|
|
|
uniform vec4 color : [1.0, 1.0, 1.0, 1.0];
|
|
|
|
|
|
uniform float metalness : 0.0;
|
|
|
uniform float roughness : 0.5;
|
|
|
|
|
|
uniform mat4 viewInverse : VIEWINVERSE;
|
|
|
|
|
|
#ifdef AMBIENT_LIGHT_COUNT
|
|
|
@import clay.header.ambient_light
|
|
|
#endif
|
|
|
|
|
|
#ifdef AMBIENT_SH_LIGHT_COUNT
|
|
|
@import clay.header.ambient_sh_light
|
|
|
#endif
|
|
|
|
|
|
#ifdef AMBIENT_CUBEMAP_LIGHT_COUNT
|
|
|
@import clay.header.ambient_cubemap_light
|
|
|
#endif
|
|
|
|
|
|
#ifdef DIRECTIONAL_LIGHT_COUNT
|
|
|
@import clay.header.directional_light
|
|
|
#endif
|
|
|
|
|
|
@import ecgl.common.normalMap.fragmentHeader
|
|
|
|
|
|
@import ecgl.common.ssaoMap.header
|
|
|
|
|
|
@import ecgl.common.bumpMap.header
|
|
|
|
|
|
@import clay.util.srgb
|
|
|
|
|
|
@import clay.util.rgbm
|
|
|
|
|
|
@import ecgl.common.wireframe.fragmentHeader
|
|
|
|
|
|
@import clay.plugin.compute_shadow_map
|
|
|
|
|
|
vec3 F_Schlick(float ndv, vec3 spec) {
|
|
|
return spec + (1.0 - spec) * pow(1.0 - ndv, 5.0);
|
|
|
}
|
|
|
|
|
|
float D_Phong(float g, float ndh) {
|
|
|
float a = pow(8192.0, g);
|
|
|
return (a + 2.0) / 8.0 * pow(ndh, a);
|
|
|
}
|
|
|
|
|
|
void main()
|
|
|
{
|
|
|
vec4 albedoColor = color;
|
|
|
|
|
|
vec3 eyePos = viewInverse[3].xyz;
|
|
|
vec3 V = normalize(eyePos - v_WorldPosition);
|
|
|
#ifdef VERTEX_COLOR
|
|
|
#ifdef SRGB_DECODE
|
|
|
albedoColor *= sRGBToLinear(v_Color);
|
|
|
#else
|
|
|
albedoColor *= v_Color;
|
|
|
#endif
|
|
|
#endif
|
|
|
|
|
|
@import ecgl.common.albedo.main
|
|
|
|
|
|
@import ecgl.common.diffuseLayer.main
|
|
|
|
|
|
albedoColor *= albedoTexel;
|
|
|
|
|
|
float m = metalness;
|
|
|
|
|
|
#ifdef METALNESSMAP_ENABLED
|
|
|
float m2 = texture2D(metalnessMap, v_DetailTexcoord)[METALNESS_CHANEL];
|
|
|
m = clamp(m2 + (m - 0.5) * 2.0, 0.0, 1.0);
|
|
|
#endif
|
|
|
|
|
|
vec3 baseColor = albedoColor.rgb;
|
|
|
albedoColor.rgb = baseColor * (1.0 - m);
|
|
|
vec3 specFactor = mix(vec3(0.04), baseColor, m);
|
|
|
|
|
|
float g = 1.0 - roughness;
|
|
|
|
|
|
#ifdef ROUGHNESSMAP_ENABLED
|
|
|
float g2 = 1.0 - texture2D(roughnessMap, v_DetailTexcoord)[ROUGHNESS_CHANEL];
|
|
|
g = clamp(g2 + (g - 0.5) * 2.0, 0.0, 1.0);
|
|
|
#endif
|
|
|
|
|
|
vec3 N = v_Normal;
|
|
|
|
|
|
#ifdef DOUBLE_SIDED
|
|
|
if (dot(N, V) < 0.0) {
|
|
|
N = -N;
|
|
|
}
|
|
|
#endif
|
|
|
|
|
|
float ambientFactor = 1.0;
|
|
|
|
|
|
#ifdef BUMPMAP_ENABLED
|
|
|
N = bumpNormal(v_WorldPosition, v_Normal, N);
|
|
|
ambientFactor = dot(v_Normal, N);
|
|
|
#endif
|
|
|
|
|
|
@import ecgl.common.normalMap.fragmentMain
|
|
|
|
|
|
vec3 N2 = vec3(N.x, N[NORMAL_UP_AXIS], N[NORMAL_FRONT_AXIS]);
|
|
|
|
|
|
vec3 diffuseTerm = vec3(0.0);
|
|
|
vec3 specularTerm = vec3(0.0);
|
|
|
|
|
|
float ndv = clamp(dot(N, V), 0.0, 1.0);
|
|
|
vec3 fresnelTerm = F_Schlick(ndv, specFactor);
|
|
|
|
|
|
@import ecgl.common.ssaoMap.main
|
|
|
|
|
|
#ifdef AMBIENT_LIGHT_COUNT
|
|
|
for(int _idx_ = 0; _idx_ < AMBIENT_LIGHT_COUNT; _idx_++)
|
|
|
{{
|
|
|
diffuseTerm += ambientLightColor[_idx_] * ambientFactor * ao;
|
|
|
}}
|
|
|
#endif
|
|
|
|
|
|
#ifdef AMBIENT_SH_LIGHT_COUNT
|
|
|
for(int _idx_ = 0; _idx_ < AMBIENT_SH_LIGHT_COUNT; _idx_++)
|
|
|
{{
|
|
|
diffuseTerm += calcAmbientSHLight(_idx_, N2) * ambientSHLightColor[_idx_] * ao;
|
|
|
}}
|
|
|
#endif
|
|
|
|
|
|
#ifdef DIRECTIONAL_LIGHT_COUNT
|
|
|
#if defined(DIRECTIONAL_LIGHT_SHADOWMAP_COUNT)
|
|
|
float shadowContribsDir[DIRECTIONAL_LIGHT_COUNT];
|
|
|
if(shadowEnabled)
|
|
|
{
|
|
|
computeShadowOfDirectionalLights(v_WorldPosition, shadowContribsDir);
|
|
|
}
|
|
|
#endif
|
|
|
for(int _idx_ = 0; _idx_ < DIRECTIONAL_LIGHT_COUNT; _idx_++)
|
|
|
{{
|
|
|
vec3 L = -directionalLightDirection[_idx_];
|
|
|
vec3 lc = directionalLightColor[_idx_];
|
|
|
|
|
|
vec3 H = normalize(L + V);
|
|
|
float ndl = clamp(dot(N, normalize(L)), 0.0, 1.0);
|
|
|
float ndh = clamp(dot(N, H), 0.0, 1.0);
|
|
|
|
|
|
float shadowContrib = 1.0;
|
|
|
#if defined(DIRECTIONAL_LIGHT_SHADOWMAP_COUNT)
|
|
|
if (shadowEnabled)
|
|
|
{
|
|
|
shadowContrib = shadowContribsDir[_idx_];
|
|
|
}
|
|
|
#endif
|
|
|
|
|
|
vec3 li = lc * ndl * shadowContrib;
|
|
|
|
|
|
diffuseTerm += li;
|
|
|
specularTerm += li * fresnelTerm * D_Phong(g, ndh);
|
|
|
}}
|
|
|
#endif
|
|
|
|
|
|
|
|
|
#ifdef AMBIENT_CUBEMAP_LIGHT_COUNT
|
|
|
vec3 L = reflect(-V, N);
|
|
|
L = vec3(L.x, L[NORMAL_UP_AXIS], L[NORMAL_FRONT_AXIS]);
|
|
|
float rough2 = clamp(1.0 - g, 0.0, 1.0);
|
|
|
float bias2 = rough2 * 5.0;
|
|
|
vec2 brdfParam2 = texture2D(ambientCubemapLightBRDFLookup[0], vec2(rough2, ndv)).xy;
|
|
|
vec3 envWeight2 = specFactor * brdfParam2.x + brdfParam2.y;
|
|
|
vec3 envTexel2;
|
|
|
for(int _idx_ = 0; _idx_ < AMBIENT_CUBEMAP_LIGHT_COUNT; _idx_++)
|
|
|
{{
|
|
|
envTexel2 = RGBMDecode(textureCubeLodEXT(ambientCubemapLightCubemap[_idx_], L, bias2), 51.5);
|
|
|
specularTerm += ambientCubemapLightColor[_idx_] * envTexel2 * envWeight2 * ao;
|
|
|
}}
|
|
|
#endif
|
|
|
|
|
|
gl_FragColor.rgb = albedoColor.rgb * diffuseTerm + specularTerm;
|
|
|
gl_FragColor.a = albedoColor.a;
|
|
|
|
|
|
#ifdef SRGB_ENCODE
|
|
|
gl_FragColor = linearTosRGB(gl_FragColor);
|
|
|
#endif
|
|
|
|
|
|
@import ecgl.common.emissiveLayer.main
|
|
|
|
|
|
@import ecgl.common.wireframe.fragmentMain
|
|
|
}
|
|
|
|
|
|
@end`},function(He,Ne,be){"use strict";Ne.a=`@export ecgl.hatching.vertex
|
|
|
|
|
|
@import ecgl.realistic.vertex
|
|
|
|
|
|
@end
|
|
|
|
|
|
|
|
|
@export ecgl.hatching.fragment
|
|
|
|
|
|
#define NORMAL_UP_AXIS 1
|
|
|
#define NORMAL_FRONT_AXIS 2
|
|
|
|
|
|
@import ecgl.common.uv.fragmentHeader
|
|
|
|
|
|
varying vec3 v_Normal;
|
|
|
varying vec3 v_WorldPosition;
|
|
|
|
|
|
uniform vec4 color : [0.0, 0.0, 0.0, 1.0];
|
|
|
uniform vec4 paperColor : [1.0, 1.0, 1.0, 1.0];
|
|
|
|
|
|
uniform mat4 viewInverse : VIEWINVERSE;
|
|
|
|
|
|
#ifdef AMBIENT_LIGHT_COUNT
|
|
|
@import clay.header.ambient_light
|
|
|
#endif
|
|
|
#ifdef AMBIENT_SH_LIGHT_COUNT
|
|
|
@import clay.header.ambient_sh_light
|
|
|
#endif
|
|
|
|
|
|
#ifdef DIRECTIONAL_LIGHT_COUNT
|
|
|
@import clay.header.directional_light
|
|
|
#endif
|
|
|
|
|
|
#ifdef VERTEX_COLOR
|
|
|
varying vec4 v_Color;
|
|
|
#endif
|
|
|
|
|
|
|
|
|
@import ecgl.common.ssaoMap.header
|
|
|
|
|
|
@import ecgl.common.bumpMap.header
|
|
|
|
|
|
@import clay.util.srgb
|
|
|
|
|
|
@import ecgl.common.wireframe.fragmentHeader
|
|
|
|
|
|
@import clay.plugin.compute_shadow_map
|
|
|
|
|
|
uniform sampler2D hatch1;
|
|
|
uniform sampler2D hatch2;
|
|
|
uniform sampler2D hatch3;
|
|
|
uniform sampler2D hatch4;
|
|
|
uniform sampler2D hatch5;
|
|
|
uniform sampler2D hatch6;
|
|
|
|
|
|
float shade(in float tone) {
|
|
|
vec4 c = vec4(1. ,1., 1., 1.);
|
|
|
float step = 1. / 6.;
|
|
|
vec2 uv = v_DetailTexcoord;
|
|
|
if (tone <= step / 2.0) {
|
|
|
c = mix(vec4(0.), texture2D(hatch6, uv), 12. * tone);
|
|
|
}
|
|
|
else if (tone <= step) {
|
|
|
c = mix(texture2D(hatch6, uv), texture2D(hatch5, uv), 6. * tone);
|
|
|
}
|
|
|
if(tone > step && tone <= 2. * step){
|
|
|
c = mix(texture2D(hatch5, uv), texture2D(hatch4, uv) , 6. * (tone - step));
|
|
|
}
|
|
|
if(tone > 2. * step && tone <= 3. * step){
|
|
|
c = mix(texture2D(hatch4, uv), texture2D(hatch3, uv), 6. * (tone - 2. * step));
|
|
|
}
|
|
|
if(tone > 3. * step && tone <= 4. * step){
|
|
|
c = mix(texture2D(hatch3, uv), texture2D(hatch2, uv), 6. * (tone - 3. * step));
|
|
|
}
|
|
|
if(tone > 4. * step && tone <= 5. * step){
|
|
|
c = mix(texture2D(hatch2, uv), texture2D(hatch1, uv), 6. * (tone - 4. * step));
|
|
|
}
|
|
|
if(tone > 5. * step){
|
|
|
c = mix(texture2D(hatch1, uv), vec4(1.), 6. * (tone - 5. * step));
|
|
|
}
|
|
|
|
|
|
return c.r;
|
|
|
}
|
|
|
|
|
|
const vec3 w = vec3(0.2125, 0.7154, 0.0721);
|
|
|
|
|
|
void main()
|
|
|
{
|
|
|
#ifdef SRGB_DECODE
|
|
|
vec4 inkColor = sRGBToLinear(color);
|
|
|
#else
|
|
|
vec4 inkColor = color;
|
|
|
#endif
|
|
|
|
|
|
#ifdef VERTEX_COLOR
|
|
|
#ifdef SRGB_DECODE
|
|
|
inkColor *= sRGBToLinear(v_Color);
|
|
|
#else
|
|
|
inkColor *= v_Color;
|
|
|
#endif
|
|
|
#endif
|
|
|
|
|
|
vec3 N = v_Normal;
|
|
|
#ifdef DOUBLE_SIDED
|
|
|
vec3 eyePos = viewInverse[3].xyz;
|
|
|
vec3 V = normalize(eyePos - v_WorldPosition);
|
|
|
|
|
|
if (dot(N, V) < 0.0) {
|
|
|
N = -N;
|
|
|
}
|
|
|
#endif
|
|
|
|
|
|
float tone = 0.0;
|
|
|
|
|
|
float ambientFactor = 1.0;
|
|
|
|
|
|
#ifdef BUMPMAP_ENABLED
|
|
|
N = bumpNormal(v_WorldPosition, v_Normal, N);
|
|
|
ambientFactor = dot(v_Normal, N);
|
|
|
#endif
|
|
|
|
|
|
vec3 N2 = vec3(N.x, N[NORMAL_UP_AXIS], N[NORMAL_FRONT_AXIS]);
|
|
|
|
|
|
@import ecgl.common.ssaoMap.main
|
|
|
|
|
|
#ifdef AMBIENT_LIGHT_COUNT
|
|
|
for(int i = 0; i < AMBIENT_LIGHT_COUNT; i++)
|
|
|
{
|
|
|
tone += dot(ambientLightColor[i], w) * ambientFactor * ao;
|
|
|
}
|
|
|
#endif
|
|
|
#ifdef AMBIENT_SH_LIGHT_COUNT
|
|
|
for(int _idx_ = 0; _idx_ < AMBIENT_SH_LIGHT_COUNT; _idx_++)
|
|
|
{{
|
|
|
tone += dot(calcAmbientSHLight(_idx_, N2) * ambientSHLightColor[_idx_], w) * ao;
|
|
|
}}
|
|
|
#endif
|
|
|
#ifdef DIRECTIONAL_LIGHT_COUNT
|
|
|
#if defined(DIRECTIONAL_LIGHT_SHADOWMAP_COUNT)
|
|
|
float shadowContribsDir[DIRECTIONAL_LIGHT_COUNT];
|
|
|
if(shadowEnabled)
|
|
|
{
|
|
|
computeShadowOfDirectionalLights(v_WorldPosition, shadowContribsDir);
|
|
|
}
|
|
|
#endif
|
|
|
for(int i = 0; i < DIRECTIONAL_LIGHT_COUNT; i++)
|
|
|
{
|
|
|
vec3 lightDirection = -directionalLightDirection[i];
|
|
|
float lightTone = dot(directionalLightColor[i], w);
|
|
|
|
|
|
float shadowContrib = 1.0;
|
|
|
#if defined(DIRECTIONAL_LIGHT_SHADOWMAP_COUNT)
|
|
|
if (shadowEnabled)
|
|
|
{
|
|
|
shadowContrib = shadowContribsDir[i];
|
|
|
}
|
|
|
#endif
|
|
|
|
|
|
float ndl = dot(N, normalize(lightDirection)) * shadowContrib;
|
|
|
|
|
|
tone += lightTone * clamp(ndl, 0.0, 1.0);
|
|
|
}
|
|
|
#endif
|
|
|
|
|
|
gl_FragColor = mix(inkColor, paperColor, shade(clamp(tone, 0.0, 1.0)));
|
|
|
}
|
|
|
@end
|
|
|
`},function(He,Ne,be){"use strict";Ne.a=`@export ecgl.sm.depth.vertex
|
|
|
|
|
|
uniform mat4 worldViewProjection : WORLDVIEWPROJECTION;
|
|
|
|
|
|
attribute vec3 position : POSITION;
|
|
|
|
|
|
#ifdef VERTEX_ANIMATION
|
|
|
attribute vec3 prevPosition;
|
|
|
uniform float percent : 1.0;
|
|
|
#endif
|
|
|
|
|
|
varying vec4 v_ViewPosition;
|
|
|
|
|
|
void main(){
|
|
|
|
|
|
#ifdef VERTEX_ANIMATION
|
|
|
vec3 pos = mix(prevPosition, position, percent);
|
|
|
#else
|
|
|
vec3 pos = position;
|
|
|
#endif
|
|
|
|
|
|
v_ViewPosition = worldViewProjection * vec4(pos, 1.0);
|
|
|
gl_Position = v_ViewPosition;
|
|
|
|
|
|
}
|
|
|
@end
|
|
|
|
|
|
|
|
|
|
|
|
@export ecgl.sm.depth.fragment
|
|
|
|
|
|
@import clay.sm.depth.fragment
|
|
|
|
|
|
@end`},function(He,Ne,be){"use strict";var _e=be(134),Me=be(138),ve=be(139),Ee=be(145),Pe=be(0),xe=be.n(Pe);xe.a.registerAction({type:"grid3DChangeCamera",event:"grid3dcamerachanged",update:"series:updateCamera"},function(pe,Ae){Ae.eachComponent({mainType:"grid3D",query:pe},function(Se){Se.setView(pe)})}),xe.a.registerAction({type:"grid3DShowAxisPointer",event:"grid3dshowaxispointer",update:"grid3D:showAxisPointer"},function(pe,Ae){}),xe.a.registerAction({type:"grid3DHideAxisPointer",event:"grid3dhideaxispointer",update:"grid3D:hideAxisPointer"},function(pe,Ae){})},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(135),Ee=Me.a.extendComponentModel({type:"cartesian3DAxis",axis:null,getCoordSysModel:function(){return this.ecModel.queryComponents({mainType:"grid3D",index:this.option.gridIndex,id:this.option.gridId})[0]}});Me.a.helper.mixinAxisModelCommonMethods(Ee);function Pe(xe,pe){return pe.type||(pe.data?"category":"value")}Object(ve.a)("x",Ee,Pe,{name:"X"}),Object(ve.a)("y",Ee,Pe,{name:"Y"}),Object(ve.a)("z",Ee,Pe,{name:"Z"})},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(136),Ee=be(137),Pe=be.n(Ee),xe=["value","category","time","log"];Ne.a=function(pe,Ae,Se,ce){Me.a.util.each(xe,function(te){Ae.extend({type:pe+"Axis3D."+te,__ordinalMeta:null,mergeDefaultAndTheme:function(ne,le){var se=le.getTheme();Me.a.util.merge(ne,se.get(te+"Axis3D")),Me.a.util.merge(ne,this.getDefaultOption()),ne.type=Se(pe,ne)},optionUpdated:function(){var ne=this.option;ne.type==="category"&&(this.__ordinalMeta=Pe.a.createByAxisModel(this))},getCategories:function(){if(this.option.type==="category")return this.__ordinalMeta.categories},getOrdinalMeta:function(){return this.__ordinalMeta},defaultOption:Me.a.util.merge(Me.a.util.clone(ve.a[te+"Axis3D"]),ce||{},!0)})}),Ae.superClass.registerSubTypeDefaulter(pe+"Axis3D",Me.a.util.curry(Se,pe))}},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve={show:!0,grid3DIndex:0,inverse:!1,name:"",nameLocation:"middle",nameTextStyle:{fontSize:16},nameGap:20,axisPointer:{},axisLine:{},axisTick:{},axisLabel:{},splitArea:{}},Ee=Me.a.util.merge({boundaryGap:!0,axisTick:{alignWithLabel:!1,interval:"auto"},axisLabel:{interval:"auto"},axisPointer:{label:{show:!1}}},ve),Pe=Me.a.util.merge({boundaryGap:[0,0],splitNumber:5,axisPointer:{label:{}}},ve),xe=Me.a.util.defaults({scale:!0,min:"dataMin",max:"dataMax"},Pe),pe=Me.a.util.defaults({logBase:10},Pe);pe.scale=!0,Ne.a={categoryAxis3D:Ee,valueAxis3D:Pe,timeAxis3D:xe,logAxis3D:pe}},function(He,Ne,be){var _e=be(12),Me=_e.createHashMap,ve=_e.isObject,Ee=_e.map;function Pe(ce){this.categories=ce.categories||[],this._needCollect=ce.needCollect,this._deduplication=ce.deduplication,this._map}Pe.createByAxisModel=function(ce){var te=ce.option,ne=te.data,le=ne&&Ee(ne,Ae);return new Pe({categories:le,needCollect:!le,deduplication:te.dedplication!==!1})};var xe=Pe.prototype;xe.getOrdinal=function(ce){return pe(this).get(ce)},xe.parseAndCollect=function(ce){var te,ne=this._needCollect;if(typeof ce!="string"&&!ne)return ce;if(ne&&!this._deduplication)return te=this.categories.length,this.categories[te]=ce,te;var le=pe(this);return te=le.get(ce),te==null&&(ne?(te=this.categories.length,this.categories[te]=ce,le.set(ce,te)):te=NaN),te};function pe(ce){return ce._map||(ce._map=Me(ce.categories))}function Ae(ce){return ve(ce)&&ce.value!=null?ce.value:ce+""}var Se=Pe;He.exports=Se},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(38),Ee=be(31),Pe=be(32),xe=Me.a.extendComponentModel({type:"grid3D",dependencies:["xAxis3D","yAxis3D","zAxis3D"],defaultOption:{show:!0,zlevel:-10,left:0,top:0,width:"100%",height:"100%",environment:"auto",boxWidth:100,boxHeight:100,boxDepth:100,axisPointer:{show:!0,lineStyle:{color:"rgba(0, 0, 0, 0.8)",width:1},label:{show:!0,formatter:null,margin:8,textStyle:{fontSize:14,color:"#fff",backgroundColor:"rgba(0,0,0,0.5)",padding:3,borderRadius:3}}},axisLine:{show:!0,lineStyle:{color:"#333",width:2,type:"solid"}},axisTick:{show:!0,inside:!1,length:3,lineStyle:{width:1}},axisLabel:{show:!0,inside:!1,rotate:0,margin:8,textStyle:{fontSize:12}},splitLine:{show:!0,lineStyle:{color:["#ccc"],width:1,type:"solid"}},splitArea:{show:!1,areaStyle:{color:["rgba(250,250,250,0.3)","rgba(200,200,200,0.3)"]}},light:{main:{alpha:30,beta:40},ambient:{intensity:.4}},viewControl:{alpha:20,beta:40,autoRotate:!1,distance:200,minDistance:40,maxDistance:400}}});Me.a.util.merge(xe.prototype,ve.a),Me.a.util.merge(xe.prototype,Ee.a),Me.a.util.merge(xe.prototype,Pe.a);var pe=xe},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(2),Ee=be(39),Pe=be(22),xe=be(3),pe=be(73),Ae=be(34),Se=be(140),ce=be(142),te=be(58),ne=be(40),le=xe.a.firstNotNull;ve.a.Shader.import(ne.a),["x","y","z"].forEach(function(he){Me.a.extendComponentView({type:he+"Axis3D"})});var se={x:0,y:2,z:1},fe=Me.a.extendComponentView({type:"grid3D",__ecgl__:!0,init:function(he,ie){var ue=[["y","z","x",-1,"left"],["y","z","x",1,"right"],["x","y","z",-1,"bottom"],["x","y","z",1,"top"],["x","z","y",-1,"far"],["x","z","y",1,"near"]],me=["x","y","z"],Ce=new ve.a.Material({shader:ve.a.createShader("ecgl.color"),depthMask:!1,transparent:!0}),Ie=new ve.a.Material({shader:ve.a.createShader("ecgl.meshLines3D"),depthMask:!1,transparent:!0});Ce.define("fragment","DOUBLE_SIDED"),Ce.define("both","VERTEX_COLOR"),this.groupGL=new ve.a.Node,this._control=new Ee.a({zr:ie.getZr()}),this._control.init(),this._faces=ue.map(function(Re){var Ue=new Se.a(Re,Ie,Ce);return this.groupGL.add(Ue.rootNode),Ue},this),this._axes=me.map(function(Re){var Ue=new ce.a(Re,Ie);return this.groupGL.add(Ue.rootNode),Ue},this);var Fe=ie.getDevicePixelRatio();this._axisLabelSurface=new pe.a({width:256,height:256,devicePixelRatio:Fe}),this._axisLabelSurface.onupdate=function(){ie.getZr().refresh()},this._axisPointerLineMesh=new ve.a.Mesh({geometry:new Pe.a({useNativeLine:!1}),material:Ie,castShadow:!1,ignorePicking:!0,renderOrder:3}),this.groupGL.add(this._axisPointerLineMesh),this._axisPointerLabelsSurface=new pe.a({width:128,height:128,devicePixelRatio:Fe}),this._axisPointerLabelsMesh=new te.a({ignorePicking:!0,renderOrder:4,castShadow:!1}),this._axisPointerLabelsMesh.material.set("textureAtlas",this._axisPointerLabelsSurface.getTexture()),this.groupGL.add(this._axisPointerLabelsMesh),this._lightRoot=new ve.a.Node,this._sceneHelper=new Ae.a,this._sceneHelper.initLight(this._lightRoot)},render:function(he,ie,ue){this._model=he,this._api=ue;var me=he.coordinateSystem;me.viewGL.add(this._lightRoot),he.get("show")?me.viewGL.add(this.groupGL):me.viewGL.remove(this.groupGL);var Ce=this._control;Ce.setViewGL(me.viewGL);var Ie=he.getModel("viewControl");Ce.setFromViewControlModel(Ie,0),this._axisLabelSurface.clear();var Fe=["x","y","z"].reduce(function(Re,Ue){var Ge=me.getAxis(Ue),Je=Ge.model;return Re[Ue]=le(Je.get("axisLabel.interval"),he.get("axisLabel.interval")),Ge.scale.type==="ordinal"&&(Re[Ue]==null||Re[Ue]=="auto")&&(Re[Ue]=Math.floor(Ge.scale.getTicks().length/8)),Re},{});Ce.off("update"),he.get("show")&&(this._faces.forEach(function(Re){Re.update(Fe,he,ie,ue)},this),this._axes.forEach(function(Re){Re.update(he,Fe,this._axisLabelSurface,ue)},this)),Ce.on("update",this._onCameraChange.bind(this,he,ue),this),this._sceneHelper.setScene(me.viewGL.scene),this._sceneHelper.updateLight(he),me.viewGL.setPostEffect(he.getModel("postEffect"),ue),me.viewGL.setTemporalSuperSampling(he.getModel("temporalSuperSampling")),this._initMouseHandler(he)},afterRender:function(he,ie,ue,me){var Ce=me.renderer;this._sceneHelper.updateAmbientCubemap(Ce,he,ue),this._sceneHelper.updateSkybox(Ce,he,ue)},showAxisPointer:function(he,ie,ue,me){this._doShowAxisPointer(),this._updateAxisPointer(me.value)},hideAxisPointer:function(he,ie,ue,me){this._doHideAxisPointer()},_initMouseHandler:function(he){var ie=he.coordinateSystem,ue=ie.viewGL;he.get("show")&&he.get("axisPointer.show")?ue.on("mousemove",this._updateAxisPointerOnMousePosition,this):ue.off("mousemove",this._updateAxisPointerOnMousePosition)},_updateAxisPointerOnMousePosition:function(he){if(!he.target){for(var ie=this._model,ue=ie.coordinateSystem,me=ue.viewGL,Ce=me.castRay(he.offsetX,he.offsetY,new ve.a.Ray),Ie,Fe=0;Fe<this._faces.length;Fe++){var Re=this._faces[Fe];if(!Re.rootNode.invisible){Re.plane.normal.dot(me.camera.worldTransform.z)<0&&Re.plane.normal.negate();var Ue=Ce.intersectPlane(Re.plane);if(Ue){var Ge=ue.getAxis(Re.faceInfo[0]),Je=ue.getAxis(Re.faceInfo[1]),Qe=se[Re.faceInfo[0]],rt=se[Re.faceInfo[1]];Ge.contain(Ue.array[Qe])&&Je.contain(Ue.array[rt])&&(Ie=Ue)}}}if(Ie){var $e=ue.pointToData(Ie.array,[],!0);this._updateAxisPointer($e),this._doShowAxisPointer()}else this._doHideAxisPointer()}},_onCameraChange:function(he,ie){he.get("show")&&(this._updateFaceVisibility(),this._updateAxisLinePosition());var ue=this._control;ie.dispatchAction({type:"grid3DChangeCamera",alpha:ue.getAlpha(),beta:ue.getBeta(),distance:ue.getDistance(),center:ue.getCenter(),from:this.uid,grid3DId:he.id})},_updateFaceVisibility:function(){var he=this._control.getCamera(),ie=new ve.a.Vector3;he.update();for(var ue=0;ue<this._faces.length/2;ue++){for(var me=[],Ce=0;Ce<2;Ce++){var Ie=this._faces[ue*2+Ce];Ie.rootNode.getWorldPosition(ie),ie.transformMat4(he.viewMatrix),me[Ce]=ie.z}var Fe=me[0]>me[1]?0:1,Re=this._faces[ue*2+Fe],Ue=this._faces[ue*2+1-Fe];Re.rootNode.invisible=!0,Ue.rootNode.invisible=!1}},_updateAxisLinePosition:function(){var he=this._model.coordinateSystem,ie=he.getAxis("x"),ue=he.getAxis("y"),me=he.getAxis("z"),Ce=me.getExtentMax(),Ie=me.getExtentMin(),Fe=ie.getExtentMin(),Re=ie.getExtentMax(),Ue=ue.getExtentMax(),Ge=ue.getExtentMin(),Je=this._axes[0].rootNode,Qe=this._axes[1].rootNode,rt=this._axes[2].rootNode,$e=this._faces,qe=$e[4].rootNode.invisible?Ge:Ue,ot=$e[2].rootNode.invisible?Ce:Ie,at=$e[0].rootNode.invisible?Fe:Re,ut=$e[2].rootNode.invisible?Ce:Ie,nt=$e[0].rootNode.invisible?Re:Fe,lt=$e[4].rootNode.invisible?Ge:Ue;Je.rotation.identity(),Qe.rotation.identity(),rt.rotation.identity(),$e[4].rootNode.invisible&&(this._axes[0].flipped=!0,Je.rotation.rotateX(Math.PI)),$e[0].rootNode.invisible&&(this._axes[1].flipped=!0,Qe.rotation.rotateZ(Math.PI)),$e[4].rootNode.invisible&&(this._axes[2].flipped=!0,rt.rotation.rotateY(Math.PI)),Je.position.set(0,ot,qe),Qe.position.set(at,ut,0),rt.position.set(nt,0,lt),Je.update(),Qe.update(),rt.update(),this._updateAxisLabelAlign()},_updateAxisLabelAlign:function(){var he=this._control.getCamera(),ie=[new ve.a.Vector4,new ve.a.Vector4],ue=new ve.a.Vector4;this.groupGL.getWorldPosition(ue),ue.w=1,ue.transformMat4(he.viewMatrix).transformMat4(he.projectionMatrix),ue.x/=ue.w,ue.y/=ue.w,this._axes.forEach(function(me){for(var Ce=me.axisLineCoords,Ie=me.labelsMesh.geometry,Fe=0;Fe<ie.length;Fe++)ie[Fe].setArray(Ce[Fe]),ie[Fe].w=1,ie[Fe].transformMat4(me.rootNode.worldTransform).transformMat4(he.viewMatrix).transformMat4(he.projectionMatrix),ie[Fe].x/=ie[Fe].w,ie[Fe].y/=ie[Fe].w;var Re=ie[1].x-ie[0].x,Ue=ie[1].y-ie[0].y,Ge=(ie[1].x+ie[0].x)/2,Je=(ie[1].y+ie[0].y)/2,Qe,rt;Math.abs(Ue/Re)<.5?(Qe="center",rt=Je>ue.y?"bottom":"top"):(rt="middle",Qe=Ge>ue.x?"left":"right"),me.setSpriteAlign(Qe,rt,this._api)},this)},_doShowAxisPointer:function(){this._axisPointerLineMesh.invisible&&(this._axisPointerLineMesh.invisible=!1,this._axisPointerLabelsMesh.invisible=!1,this._api.getZr().refresh())},_doHideAxisPointer:function(){this._axisPointerLineMesh.invisible||(this._axisPointerLineMesh.invisible=!0,this._axisPointerLabelsMesh.invisible=!0,this._api.getZr().refresh())},_updateAxisPointer:function(he){var ie=this._model.coordinateSystem,ue=ie.dataToPoint(he),me=this._axisPointerLineMesh,Ce=me.geometry,Ie=this._model.getModel("axisPointer"),Fe=this._api.getDevicePixelRatio();Ce.convertToDynamicArray(!0);function Re(Ut){return xe.a.firstNotNull(Ut.model.get("axisPointer.show"),Ie.get("show"))}function Ue(Ut){var Zt=Ut.model.getModel("axisPointer",Ie),en=Zt.getModel("lineStyle"),mn=ve.a.parseColor(en.get("color")),Bt=le(en.get("width"),1),tn=le(en.get("opacity"),1);return mn[3]*=tn,{color:mn,lineWidth:Bt}}for(var Ge=0;Ge<this._faces.length;Ge++){var Je=this._faces[Ge];if(!Je.rootNode.invisible){for(var Qe=Je.faceInfo,rt=Qe[3]<0?ie.getAxis(Qe[2]).getExtentMin():ie.getAxis(Qe[2]).getExtentMax(),$e=se[Qe[2]],qe=0;qe<2;qe++){var ot=Qe[qe],at=Qe[1-qe],ut=ie.getAxis(ot),nt=ie.getAxis(at);if(Re(ut)){var lt=[0,0,0],yt=[0,0,0],ft=se[ot],ct=se[at];lt[ft]=yt[ft]=ue[ft],lt[$e]=yt[$e]=rt,lt[ct]=nt.getExtentMin(),yt[ct]=nt.getExtentMax();var vt=Ue(ut);Ce.addLine(lt,yt,vt.color,vt.lineWidth*Fe)}}if(Re(ie.getAxis(Qe[2]))){var lt=ue.slice(),yt=ue.slice();yt[$e]=rt;var vt=Ue(ie.getAxis(Qe[2]));Ce.addLine(lt,yt,vt.color,vt.lineWidth*Fe)}}}Ce.convertToTypedArray(),this._updateAxisPointerLabelsMesh(he),this._api.getZr().refresh()},_updateAxisPointerLabelsMesh:function(he){var ie=this._model,ue=this._axisPointerLabelsMesh,me=this._axisPointerLabelsSurface,Ce=ie.coordinateSystem,Ie=ie.getModel("axisPointer");ue.geometry.convertToDynamicArray(!0),me.clear();var Fe={x:"y",y:"x",z:"y"};this._axes.forEach(function(Re,Ue){var Ge=Ce.getAxis(Re.dim),Je=Ge.model,Qe=Je.getModel("axisPointer",Ie),rt=Qe.getModel("label"),$e=Qe.get("lineStyle.color");if(!(!rt.get("show")||!Qe.get("show"))){var qe=he[Ue],ot=rt.get("formatter"),at=Ge.scale.getLabel(qe);if(ot!=null)at=ot(at,he);else if(Ge.scale.type==="interval"||Ge.scale.type==="log"){var ut=Me.a.number.getPrecisionSafe(Ge.scale.getTicks()[0]);at=qe.toFixed(ut+2)}var nt=rt.getModel("textStyle"),lt=nt.get("color"),yt=new Me.a.graphic.Text;Me.a.graphic.setTextStyle(yt.style,nt,{text:at,textFill:lt||$e,textAlign:"left",textVerticalAlign:"top"});var ft=me.add(yt),ct=yt.getBoundingRect(),vt=this._api.getDevicePixelRatio(),Ut=Re.rootNode.position.toArray(),Zt=se[Fe[Re.dim]];Ut[Zt]+=(Re.flipped?-1:1)*rt.get("margin"),Ut[se[Re.dim]]=Ge.dataToCoord(he[Ue]),ue.geometry.addSprite(Ut,[ct.width*vt,ct.height*vt],ft,Re.textAlign,Re.textVerticalAlign)}},this),me.getZr().refreshImmediately(),ue.material.set("uvScale",me.getCoordsScale()),ue.geometry.convertToTypedArray()},dispose:function(){this.groupGL.removeAll(),this._control.dispose()}})},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(2),Ee=be(3),Pe=be(22),xe=be(141),pe=be(74),Ae=Ee.a.firstNotNull,Se={x:0,y:2,z:1};function ce(ne,le,se,fe){var he=[0,0,0],ie=fe<0?se.getExtentMin():se.getExtentMax();he[Se[se.dim]]=ie,ne.position.setArray(he),ne.rotation.identity(),le.distance=-Math.abs(ie),le.normal.set(0,0,0),se.dim==="x"?(ne.rotation.rotateY(fe*Math.PI/2),le.normal.x=-fe):se.dim==="z"?(ne.rotation.rotateX(-fe*Math.PI/2),le.normal.y=-fe):(fe>0&&ne.rotation.rotateY(Math.PI),le.normal.z=-fe)}function te(ne,le,se){this.rootNode=new ve.a.Node;var fe=new ve.a.Mesh({geometry:new Pe.a({useNativeLine:!1}),material:le,castShadow:!1,ignorePicking:!0,renderOrder:1}),he=new ve.a.Mesh({geometry:new xe.a,material:se,castShadow:!1,culling:!1,ignorePicking:!0,renderOrder:0});this.rootNode.add(he),this.rootNode.add(fe),this.faceInfo=ne,this.plane=new ve.a.Plane,this.linesMesh=fe,this.quadsMesh=he}te.prototype.update=function(ne,le,se,fe){var he=le.coordinateSystem,ie=[he.getAxis(this.faceInfo[0]),he.getAxis(this.faceInfo[1])],ue=this.linesMesh.geometry,me=this.quadsMesh.geometry;ue.convertToDynamicArray(!0),me.convertToDynamicArray(!0),this._updateSplitLines(ue,ie,le,ne,fe),this._udpateSplitAreas(me,ie,le,ne,fe),ue.convertToTypedArray(),me.convertToTypedArray();var Ce=he.getAxis(this.faceInfo[2]);ce(this.rootNode,this.plane,Ce,this.faceInfo[3])},te.prototype._updateSplitLines=function(ne,le,se,fe,he){var ie=he.getDevicePixelRatio();le.forEach(function(ue,me){var Ce=ue.model,Ie=le[1-me].getExtent();if(!ue.scale.isBlank()){var Fe=Ce.getModel("splitLine",se.getModel("splitLine"));if(Fe.get("show")){var Re=Fe.getModel("lineStyle"),Ue=Re.get("color"),Ge=Ae(Re.get("opacity"),1),Je=Ae(Re.get("width"),1),Qe=Fe.get("interval");(Qe==null||Qe==="auto")&&(Qe=fe[ue.dim]),Ue=Me.a.util.isArray(Ue)?Ue:[Ue];for(var rt=ue.getTicksCoords(),$e=0,qe=0;qe<rt.length;qe++)if(!Object(pe.a)(ue,qe,Qe)){var ot=rt[qe],at=ve.a.parseColor(Ue[$e%Ue.length]);at[3]*=Ge;var ut=[0,0,0],nt=[0,0,0];ut[me]=nt[me]=ot,ut[1-me]=Ie[0],nt[1-me]=Ie[1],ne.addLine(ut,nt,at,Je*ie),$e++}}}})},te.prototype._udpateSplitAreas=function(ne,le,se,fe,he){le.forEach(function(ie,ue){var me=ie.model,Ce=le[1-ue].getExtent();if(!ie.scale.isBlank()){var Ie=me.getModel("splitArea",se.getModel("splitArea"));if(Ie.get("show")){var Fe=Ie.getModel("areaStyle"),Re=Fe.get("color"),Ue=Ae(Fe.get("opacity"),1),Ge=Ie.get("interval");(Ge==null||Ge==="auto")&&(Ge=fe[ie.dim]),Re=Me.a.util.isArray(Re)?Re:[Re];for(var Je=ie.getTicksCoords(),Qe=0,rt=[0,0,0],$e=[0,0,0],qe=0;qe<Je.length;qe++){var ot=Je[qe],at=[0,0,0],ut=[0,0,0];if(at[ue]=ut[ue]=ot,at[1-ue]=Ce[0],ut[1-ue]=Ce[1],qe===0){rt=at,$e=ut;continue}if(!Object(pe.a)(ie,qe,Ge)){var nt=ve.a.parseColor(Re[Qe%Re.length]);nt[3]*=Ue,ne.addQuad([rt,at,ut,$e],nt),rt=at,$e=ut,Qe++}}}}})},Ne.a=te},function(He,Ne,be){"use strict";var _e=be(13),Me=be(0),ve=be.n(Me),Ee=be(33),Pe=be(1),xe=be.n(Pe),pe=xe.a.vec3,Ae=_e.a.extend(function(){return{segmentScale:1,useNativeLine:!0,attributes:{position:new _e.a.Attribute("position","float",3,"POSITION"),normal:new _e.a.Attribute("normal","float",3,"NORMAL"),color:new _e.a.Attribute("color","float",4,"COLOR")}}},{resetOffset:function(){this._vertexOffset=0,this._faceOffset=0},setQuadCount:function(Se){var ce=this.attributes,te=this.getQuadVertexCount()*Se,ne=this.getQuadTriangleCount()*Se;this.vertexCount!==te&&(ce.position.init(te),ce.normal.init(te),ce.color.init(te)),this.triangleCount!==ne&&(this.indices=te>65535?new Uint32Array(ne*3):new Uint16Array(ne*3))},getQuadVertexCount:function(){return 4},getQuadTriangleCount:function(){return 2},addQuad:function(){var Se=pe.create(),ce=pe.create(),te=pe.create(),ne=[0,3,1,3,2,1];return function(le,se){var fe=this.attributes.position,he=this.attributes.normal,ie=this.attributes.color;pe.sub(Se,le[1],le[0]),pe.sub(ce,le[2],le[1]),pe.cross(te,Se,ce),pe.normalize(te,te);for(var ue=0;ue<4;ue++)fe.set(this._vertexOffset+ue,le[ue]),ie.set(this._vertexOffset+ue,se),he.set(this._vertexOffset+ue,te);for(var me=this._faceOffset*3,ue=0;ue<6;ue++)this.indices[me+ue]=ne[ue]+this._vertexOffset;this._vertexOffset+=4,this._faceOffset+=2}}()});ve.a.util.defaults(Ae.prototype,Ee.a),Ne.a=Ae},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(2),Ee=be(22),Pe=be(3),xe=be(58),pe=be(74),Ae=Pe.a.firstNotNull,Se={x:0,y:2,z:1};function ce(ne,le){var se=new ve.a.Mesh({geometry:new Ee.a({useNativeLine:!1}),material:le,castShadow:!1,ignorePicking:!0,renderOrder:2}),fe=new xe.a;fe.material.depthMask=!1;var he=new ve.a.Node;he.add(se),he.add(fe),this.rootNode=he,this.dim=ne,this.linesMesh=se,this.labelsMesh=fe,this.axisLineCoords=null,this.labelElements=[]}var te={x:"y",y:"x",z:"y"};ce.prototype.update=function(ne,le,se,fe){var he=ne.coordinateSystem,ie=he.getAxis(this.dim),ue=le[this.dim],me=this.linesMesh.geometry,Ce=this.labelsMesh.geometry;me.convertToDynamicArray(!0),Ce.convertToDynamicArray(!0);var Ie=ie.model,Fe=ie.getExtent(),en=fe.getDevicePixelRatio(),Re=Ie.getModel("axisLine",ne.getModel("axisLine")),Ue=Ie.getModel("axisTick",ne.getModel("axisTick")),Ge=Ie.getModel("axisLabel",ne.getModel("axisLabel")),Je=Re.get("lineStyle.color");if(Re.get("show")){var Qe=Re.getModel("lineStyle"),rt=[0,0,0],$e=[0,0,0],qe=Se[ie.dim];rt[qe]=Fe[0],$e[qe]=Fe[1],this.axisLineCoords=[rt,$e];var ot=ve.a.parseColor(Je),at=Ae(Qe.get("width"),1),ut=Ae(Qe.get("opacity"),1);ot[3]*=ut,me.addLine(rt,$e,ot,at*en)}if(Ue.get("show")){var nt=Ue.getModel("lineStyle"),lt=ve.a.parseColor(Ae(nt.get("color"),Je)),at=Ae(nt.get("width"),1);lt[3]*=Ae(nt.get("opacity"),1);var yt=ie.getTicksCoords(),ft=Ue.get("interval");(ft==null||ft==="auto")&&(ft=ue);for(var ct=Ue.get("length"),vt=0;vt<yt.length;vt++)if(!Object(pe.a)(ie,vt,ft)){var Ut=yt[vt],rt=[0,0,0],$e=[0,0,0],qe=Se[ie.dim],Zt=Se[te[ie.dim]];rt[qe]=$e[qe]=Ut,$e[Zt]=ct,me.addLine(rt,$e,lt,at*en)}}this.labelElements=[];var en=fe.getDevicePixelRatio();if(Ge.get("show")){for(var mn=ie.getLabelsCoords(),Bt=Ie.get("data"),ft=ue,tn=Ge.get("margin"),on=Ie.getFormattedLabels(),Mn=ie.scale.getTicks(),vt=0;vt<mn.length;vt++)if(!Object(pe.a)(ie,vt,ft)){var Ut=mn[vt],Dn=[0,0,0],qe=Se[ie.dim],Zt=Se[te[ie.dim]];Dn[qe]=Dn[qe]=Ut,Dn[Zt]=tn;var sn=Ge;Bt&&Bt[Mn[vt]]&&Bt[Mn[vt]].textStyle&&(sn=new Me.a.Model(Bt[Mn[vt]].textStyle,Ge,Ie.ecModel));var rn=Ae(sn.get("color"),Je),Ht=new Me.a.graphic.Text;Me.a.graphic.setTextStyle(Ht.style,sn,{text:on[vt],textFill:typeof rn=="function"?rn(ie.type==="category"?on[vt]:ie.type==="value"?Mn[vt]+"":Mn[vt],vt):rn,textVerticalAlign:"top",textAlign:"left"});var Tt=se.add(Ht),St=Ht.getBoundingRect();Ce.addSprite(Dn,[St.width*en,St.height*en],Tt),this.labelElements.push(Ht)}}if(Ie.get("name")){var Qt=Ie.getModel("nameTextStyle"),Dn=[0,0,0],qe=Se[ie.dim],Zt=Se[te[ie.dim]],gt=Ae(Qt.get("color"),Je),bt=Qt.get("borderColor"),at=Qt.get("borderWidth");Dn[qe]=Dn[qe]=(Fe[0]+Fe[1])/2,Dn[Zt]=Ie.get("nameGap");var Ht=new Me.a.graphic.Text;Me.a.graphic.setTextStyle(Ht.style,Qt,{text:Ie.get("name"),textFill:gt,textStroke:bt,lineWidth:at});var Tt=se.add(Ht),St=Ht.getBoundingRect();Ce.addSprite(Dn,[St.width*en,St.height*en],Tt),Ht.__idx=this.labelElements.length,this.nameLabelElement=Ht}this.labelsMesh.material.set("textureAtlas",se.getTexture()),this.labelsMesh.material.set("uvScale",se.getCoordsScale()),me.convertToTypedArray(),Ce.convertToTypedArray()},ce.prototype.setSpriteAlign=function(ne,le,se){for(var fe=se.getDevicePixelRatio(),he=this.labelsMesh.geometry,ie=0;ie<this.labelElements.length;ie++){var ue=this.labelElements[ie],me=ue.getBoundingRect();he.setSpriteAlign(ie,[me.width*fe,me.height*fe],ne,le)}var Ce=this.nameLabelElement;if(Ce){var me=Ce.getBoundingRect();he.setSpriteAlign(Ce.__idx,[me.width*fe,me.height*fe],ne,le),he.dirty()}this.textAlign=ne,this.textVerticalAlign=le},Ne.a=ce},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(13),Ee=be(33),Pe=[0,1,2,0,2,3],xe=ve.a.extend(function(){return{attributes:{position:new ve.a.Attribute("position","float",3,"POSITION"),texcoord:new ve.a.Attribute("texcoord","float",2,"TEXCOORD_0"),offset:new ve.a.Attribute("offset","float",2),color:new ve.a.Attribute("color","float",4,"COLOR")}}},{resetOffset:function(){this._vertexOffset=0,this._faceOffset=0},setSpriteCount:function(pe){this._spriteCount=pe;var Ae=pe*4,Se=pe*2;this.vertexCount!==Ae&&(this.attributes.position.init(Ae),this.attributes.offset.init(Ae),this.attributes.color.init(Ae)),this.triangleCount!==Se&&(this.indices=Ae>65535?new Uint32Array(Se*3):new Uint16Array(Se*3))},setSpriteAlign:function(pe,Ae,Se,ce,te){Se==null&&(Se="left"),ce==null&&(ce="top");var ne,le,se,fe;switch(te=te||0,Se){case"left":ne=te,se=Ae[0]+te;break;case"center":case"middle":ne=-Ae[0]/2,se=Ae[0]/2;break;case"right":ne=-Ae[0]-te,se=-te;break}switch(ce){case"bottom":le=te,fe=Ae[1]+te;break;case"middle":le=-Ae[1]/2,fe=Ae[1]/2;break;case"top":le=-Ae[1]-te,fe=-te;break}var he=pe*4,ie=this.attributes.offset;ie.set(he,[ne,fe]),ie.set(he+1,[se,fe]),ie.set(he+2,[se,le]),ie.set(he+3,[ne,le])},addSprite:function(pe,Ae,Se,ce,te,ne){var le=this._vertexOffset;this.setSprite(this._vertexOffset/4,pe,Ae,Se,ce,te,ne);for(var se=0;se<Pe.length;se++)this.indices[this._faceOffset*3+se]=Pe[se]+le;return this._faceOffset+=2,this._vertexOffset+=4,le/4},setSprite:function(pe,Ae,Se,ce,te,ne,le){for(var se=pe*4,fe=this.attributes,he=0;he<4;he++)fe.position.set(se+he,Ae);var ie=fe.texcoord;ie.set(se,[ce[0][0],ce[0][1]]),ie.set(se+1,[ce[1][0],ce[0][1]]),ie.set(se+2,[ce[1][0],ce[1][1]]),ie.set(se+3,[ce[0][0],ce[1][1]]),this.setSpriteAlign(pe,Se,te,ne,le)}});Me.a.util.defaults(xe.prototype,Ee.a),Ne.a=xe},function(He,Ne,be){"use strict";Ne.a=`@export ecgl.labels.vertex
|
|
|
|
|
|
attribute vec3 position: POSITION;
|
|
|
attribute vec2 texcoord: TEXCOORD_0;
|
|
|
attribute vec2 offset;
|
|
|
#ifdef VERTEX_COLOR
|
|
|
attribute vec4 a_Color : COLOR;
|
|
|
varying vec4 v_Color;
|
|
|
#endif
|
|
|
|
|
|
uniform mat4 worldViewProjection : WORLDVIEWPROJECTION;
|
|
|
uniform vec4 viewport : VIEWPORT;
|
|
|
|
|
|
varying vec2 v_Texcoord;
|
|
|
|
|
|
void main()
|
|
|
{
|
|
|
vec4 proj = worldViewProjection * vec4(position, 1.0);
|
|
|
|
|
|
vec2 screen = (proj.xy / abs(proj.w) + 1.0) * 0.5 * viewport.zw;
|
|
|
|
|
|
screen += offset;
|
|
|
|
|
|
proj.xy = (screen / viewport.zw - 0.5) * 2.0 * abs(proj.w);
|
|
|
gl_Position = proj;
|
|
|
#ifdef VERTEX_COLOR
|
|
|
v_Color = a_Color;
|
|
|
#endif
|
|
|
v_Texcoord = texcoord;
|
|
|
}
|
|
|
@end
|
|
|
|
|
|
|
|
|
@export ecgl.labels.fragment
|
|
|
|
|
|
uniform vec3 color : [1.0, 1.0, 1.0];
|
|
|
uniform float alpha : 1.0;
|
|
|
uniform sampler2D textureAtlas;
|
|
|
uniform vec2 uvScale: [1.0, 1.0];
|
|
|
|
|
|
#ifdef VERTEX_COLOR
|
|
|
varying vec4 v_Color;
|
|
|
#endif
|
|
|
varying float v_Miter;
|
|
|
|
|
|
varying vec2 v_Texcoord;
|
|
|
|
|
|
void main()
|
|
|
{
|
|
|
gl_FragColor = vec4(color, alpha) * texture2D(textureAtlas, v_Texcoord * uvScale);
|
|
|
#ifdef VERTEX_COLOR
|
|
|
gl_FragColor *= v_Color;
|
|
|
#endif
|
|
|
}
|
|
|
|
|
|
@end`},function(He,Ne,be){"use strict";var _e=be(146),Me=be(148),ve=be(0),Ee=be.n(ve),Pe=be(41),xe=be.n(Pe),pe=be(20),Ae=be(3);function Se(le,se){var fe=le.getBoxLayoutParams(),he=xe.a.getLayoutRect(fe,{width:se.getWidth(),height:se.getHeight()});he.y=se.getHeight()-he.y-he.height,this.viewGL.setViewport(he.x,he.y,he.width,he.height,se.getDevicePixelRatio());var ie=le.get("boxWidth"),ue=le.get("boxHeight"),me=le.get("boxDepth");["x","y","z"].forEach(function(Ce){if(!this.getAxis(Ce))throw new Error("Grid"+le.id+" don't have "+Ce+"Axis")},this),this.getAxis("x").setExtent(-ie/2,ie/2),this.getAxis("y").setExtent(me/2,-me/2),this.getAxis("z").setExtent(-ue/2,ue/2),this.size=[ie,ue,me]}function ce(le,se){var fe={};function he(ie,ue){fe[ie]=fe[ie]||[1/0,-1/0],fe[ie][0]=Math.min(ue[0],fe[ie][0]),fe[ie][1]=Math.max(ue[1],fe[ie][1])}le.eachSeries(function(ie){if(ie.coordinateSystem===this){var ue=ie.getData();["x","y","z"].forEach(function(me){he(me,ue.getDataExtent(ie.coordDimToDataDim(me)[0],!0))})}},this),["xAxis3D","yAxis3D","zAxis3D"].forEach(function(ie){le.eachComponent(ie,function(ue){var me=ie.charAt(0),Ce=ue.getReferringComponents("grid3D")[0],Ie=Ce.coordinateSystem;if(Ie===this){var Fe=Ie.getAxis(me);if(Fe){console.warn("Can't have two %s in one grid3D",ie);return}var Re=Ee.a.helper.createScale(fe[me]||[1/0,-1/0],ue);Fe=new Me.a(me,Re),Fe.type=ue.get("type");var Ue=Fe.type==="category";Fe.onBand=Ue&&ue.get("boundaryGap"),Fe.inverse=ue.get("inverse"),ue.axis=Fe,Fe.model=ue,Ie.addAxis(Fe)}},this)},this),this.resize(this.model,se)}var te={dimensions:_e.a.prototype.dimensions,create:function(le,se){var fe=[];le.eachComponent("grid3D",function(ue){ue.__viewGL=ue.__viewGL||new pe.a;var me=new _e.a;me.model=ue,me.viewGL=ue.__viewGL,ue.coordinateSystem=me,fe.push(me),me.resize=Se,me.update=ce});var he=["xAxis3D","yAxis3D","zAxis3D"];function ie(ue,me){return he.map(function(Ce){var Ie=ue.getReferringComponents(Ce)[0];if(Ie==null&&(Ie=me.getComponent(Ce)),!Ie)throw new Error(Ce+' "'+Ae.a.firstNotNull(ue.get(Ce+"Index"),ue.get(Ce+"Id"),0)+'" not found');return Ie})}return le.eachSeries(function(ue){if(ue.get("coordinateSystem")==="cartesian3D"){var me=ue.getReferringComponents("grid3D")[0];if(me==null){var Ce=ie(ue,le),me=Ce[0].getCoordSysModel();Ce.forEach(function(Re){var Ue=Re.getCoordSysModel();if(!Ue)throw new Error('grid3D "'+Ae.a.firstNotNull(Re.get("gridIndex"),Re.get("gridId"),0)+'" not found');if(Ue!==me)throw new Error("xAxis3D, yAxis3D, zAxis3D must use the same grid")})}var Ie=me.coordinateSystem;ue.coordinateSystem=Ie}}),fe}};Ee.a.registerCoordinateSystem("grid3D",te);var ne=te},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(147),Ee=be.n(ve);function Pe(xe){Ee.a.call(this,xe),this.size=[0,0,0]}Pe.prototype={constructor:Pe,type:"cartesian3D",dimensions:["x","y","z"],model:null,containPoint:function(xe){return this.getAxis("x").contain(xe[0])&&this.getAxis("y").contain(xe[2])&&this.getAxis("z").contain(xe[1])},containData:function(xe){return this.getAxis("x").containData(xe[0])&&this.getAxis("y").containData(xe[1])&&this.getAxis("z").containData(xe[2])},dataToPoint:function(xe,pe,Ae){return pe=pe||[],pe[0]=this.getAxis("x").dataToCoord(xe[0],Ae),pe[2]=this.getAxis("y").dataToCoord(xe[1],Ae),pe[1]=this.getAxis("z").dataToCoord(xe[2],Ae),pe},pointToData:function(xe,pe,Ae){return pe=pe||[],pe[0]=this.getAxis("x").coordToData(xe[0],Ae),pe[1]=this.getAxis("y").coordToData(xe[2],Ae),pe[2]=this.getAxis("z").coordToData(xe[1],Ae),pe}},Me.a.util.inherits(Pe,Ee.a),Ne.a=Pe},function(He,Ne,be){var _e=be(12);function Me(Pe){return this._axes[Pe]}var ve=function(Pe){this._axes={},this._dimList=[],this.name=Pe||""};ve.prototype={constructor:ve,type:"cartesian",getAxis:function(Pe){return this._axes[Pe]},getAxes:function(){return _e.map(this._dimList,Me,this)},getAxesByScale:function(Pe){return Pe=Pe.toLowerCase(),_e.filter(this.getAxes(),function(xe){return xe.scale.type===Pe})},addAxis:function(Pe){var xe=Pe.dim;this._axes[xe]=Pe,this._dimList.push(xe)},dataToCoord:function(Pe){return this._dataCoordConvert(Pe,"dataToCoord")},coordToData:function(Pe){return this._dataCoordConvert(Pe,"coordToData")},_dataCoordConvert:function(Pe,xe){for(var pe=this._dimList,Ae=Pe instanceof Array?[]:{},Se=0;Se<pe.length;Se++){var ce=pe[Se],te=this._axes[ce];Ae[ce]=te[xe](Pe[ce])}return Ae}};var Ee=ve;He.exports=Ee},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e);function ve(Ee,Pe,xe){Me.a.Axis.call(this,Ee,Pe,xe)}ve.prototype={constructor:ve,getExtentMin:function(){var Ee=this._extent;return Math.min(Ee[0],Ee[1])},getExtentMax:function(){var Ee=this._extent;return Math.max(Ee[0],Ee[1])}},Me.a.util.inherits(ve,Me.a.Axis),Ne.a=ve},function(He,Ne,be){var _e=be(12),Me=be(150),ve=be(78);function Ee(ue){return isNaN(ue)?"-":(ue=(ue+"").split("."),ue[0].replace(/(\d{1,3})(?=(?:\d{3})+(?!\d))/g,"$1,")+(ue.length>1?"."+ue[1]:""))}function Pe(ue,me){return ue=(ue||"").toLowerCase().replace(/-(.)/g,function(Ce,Ie){return Ie.toUpperCase()}),me&&ue&&(ue=ue.charAt(0).toUpperCase()+ue.slice(1)),ue}var xe=_e.normalizeCssArray;function pe(ue){return String(ue).replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}var Ae=["a","b","c","d","e","f","g"],Se=function(ue,me){return"{"+ue+(me==null?"":me)+"}"};function ce(ue,me,Ce){_e.isArray(me)||(me=[me]);var Ie=me.length;if(!Ie)return"";for(var Fe=me[0].$vars||[],Re=0;Re<Fe.length;Re++){var Ue=Ae[Re];ue=ue.replace(Se(Ue),Se(Ue,0))}for(var Ge=0;Ge<Ie;Ge++)for(var Je=0;Je<Fe.length;Je++){var Qe=me[Ge][Fe[Je]];ue=ue.replace(Se(Ae[Je],Ge),Ce?pe(Qe):Qe)}return ue}function te(ue,me,Ce){return _e.each(me,function(Ie,Fe){ue=ue.replace("{"+Fe+"}",Ce?pe(Ie):Ie)}),ue}function ne(ue,Fe){ue=_e.isString(ue)?{color:ue,extraCssText:Fe}:ue||{};var Ce=ue.color,Ie=ue.type,Fe=ue.extraCssText;return Ce?Ie==="subItem"?'<span style="display:inline-block;vertical-align:middle;margin-right:8px;margin-left:3px;border-radius:4px;width:4px;height:4px;background-color:'+pe(Ce)+";"+(Fe||"")+'"></span>':'<span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:'+pe(Ce)+";"+(Fe||"")+'"></span>':""}var le=function(ue){return ue<10?"0"+ue:ue};function se(ue,me,Ce){(ue==="week"||ue==="month"||ue==="quarter"||ue==="half-year"||ue==="year")&&(ue=`MM-dd
|
|
|
yyyy`);var Ie=ve.parseDate(me),Fe=Ce?"UTC":"",Re=Ie["get"+Fe+"FullYear"](),Ue=Ie["get"+Fe+"Month"]()+1,Ge=Ie["get"+Fe+"Date"](),Je=Ie["get"+Fe+"Hours"](),Qe=Ie["get"+Fe+"Minutes"](),rt=Ie["get"+Fe+"Seconds"]();return ue=ue.replace("MM",le(Ue)).replace("M",Ue).replace("yyyy",Re).replace("yy",Re%100).replace("dd",le(Ge)).replace("d",Ge).replace("hh",le(Je)).replace("h",Je).replace("mm",le(Qe)).replace("m",Qe).replace("ss",le(rt)).replace("s",rt),ue}function fe(ue){return ue&&ue.charAt(0).toUpperCase()+ue.substr(1)}var he=Me.truncateText,ie=Me.getBoundingRect;Ne.addCommas=Ee,Ne.toCamelCase=Pe,Ne.normalizeCssArray=xe,Ne.encodeHTML=pe,Ne.formatTpl=ce,Ne.formatTplSimple=te,Ne.getTooltipMarker=ne,Ne.formatTime=se,Ne.capitalFirst=fe,Ne.truncateText=he,Ne.getTextRect=ie},function(He,Ne,be){var _e=be(75),Me=be(151),ve=be(12),Ee=ve.getContext,Pe=ve.extend,xe=ve.retrieve2,pe=ve.retrieve3,Ae={},Se=0,ce=5e3,te=/\{([a-zA-Z0-9_]+)\|([^}]*)\}/g,ne="12px sans-serif",le={};function se(at,ut){le[at]=ut}function fe(at,ut){ut=ut||ne;var nt=at+":"+ut;if(Ae[nt])return Ae[nt];for(var lt=(at+"").split(`
|
|
|
`),yt=0,ft=0,ct=lt.length;ft<ct;ft++)yt=Math.max(Qe(lt[ft],ut).width,yt);return Se>ce&&(Se=0,Ae={}),Se++,Ae[nt]=yt,yt}function he(at,ut,nt,lt,yt,ft,ct){return ft?ue(at,ut,nt,lt,yt,ft,ct):ie(at,ut,nt,lt,yt,ct)}function ie(at,ut,nt,lt,yt,ft){var ct=rt(at,ut,yt,ft),vt=fe(at,ut);yt&&(vt+=yt[1]+yt[3]);var Ut=ct.outerHeight,Zt=me(0,vt,nt),en=Ce(0,Ut,lt),mn=new _e(Zt,en,vt,Ut);return mn.lineHeight=ct.lineHeight,mn}function ue(at,ut,nt,lt,yt,ft,ct){var vt=$e(at,{rich:ft,truncate:ct,font:ut,textAlign:nt,textPadding:yt}),Ut=vt.outerWidth,Zt=vt.outerHeight,en=me(0,Ut,nt),mn=Ce(0,Zt,lt);return new _e(en,mn,Ut,Zt)}function me(at,ut,nt){return nt==="right"?at-=ut:nt==="center"&&(at-=ut/2),at}function Ce(at,ut,nt){return nt==="middle"?at-=ut/2:nt==="bottom"&&(at-=ut),at}function Ie(at,ut,nt){var lt=ut.x,yt=ut.y,ft=ut.height,ct=ut.width,vt=ft/2,Ut="left",Zt="top";switch(at){case"left":lt-=nt,yt+=vt,Ut="right",Zt="middle";break;case"right":lt+=nt+ct,yt+=vt,Zt="middle";break;case"top":lt+=ct/2,yt-=nt,Ut="center",Zt="bottom";break;case"bottom":lt+=ct/2,yt+=ft+nt,Ut="center";break;case"inside":lt+=ct/2,yt+=vt,Ut="center",Zt="middle";break;case"insideLeft":lt+=nt,yt+=vt,Zt="middle";break;case"insideRight":lt+=ct-nt,yt+=vt,Ut="right",Zt="middle";break;case"insideTop":lt+=ct/2,yt+=nt,Ut="center";break;case"insideBottom":lt+=ct/2,yt+=ft-nt,Ut="center",Zt="bottom";break;case"insideTopLeft":lt+=nt,yt+=nt;break;case"insideTopRight":lt+=ct-nt,yt+=nt,Ut="right";break;case"insideBottomLeft":lt+=nt,yt+=ft-nt,Zt="bottom";break;case"insideBottomRight":lt+=ct-nt,yt+=ft-nt,Ut="right",Zt="bottom";break}return{x:lt,y:yt,textAlign:Ut,textVerticalAlign:Zt}}function Fe(at,ut,nt,lt,yt){if(!ut)return"";var ft=(at+"").split(`
|
|
|
`);yt=Re(ut,nt,lt,yt);for(var ct=0,vt=ft.length;ct<vt;ct++)ft[ct]=Ue(ft[ct],yt);return ft.join(`
|
|
|
`)}function Re(at,ut,yt,lt){lt=Pe({},lt),lt.font=ut;var yt=xe(yt,"...");lt.maxIterations=xe(lt.maxIterations,2);var ft=lt.minChar=xe(lt.minChar,0);lt.cnCharWidth=fe("\u56FD",ut);var ct=lt.ascCharWidth=fe("a",ut);lt.placeholder=xe(lt.placeholder,"");for(var vt=at=Math.max(0,at-1),Ut=0;Ut<ft&&vt>=ct;Ut++)vt-=ct;var Zt=fe(yt);return Zt>vt&&(yt="",Zt=0),vt=at-Zt,lt.ellipsis=yt,lt.ellipsisWidth=Zt,lt.contentWidth=vt,lt.containerWidth=at,lt}function Ue(at,ut){var nt=ut.containerWidth,lt=ut.font,yt=ut.contentWidth;if(!nt)return"";var ft=fe(at,lt);if(ft<=nt)return at;for(var ct=0;;ct++){if(ft<=yt||ct>=ut.maxIterations){at+=ut.ellipsis;break}var vt=ct===0?Ge(at,yt,ut.ascCharWidth,ut.cnCharWidth):ft>0?Math.floor(at.length*yt/ft):0;at=at.substr(0,vt),ft=fe(at,lt)}return at===""&&(at=ut.placeholder),at}function Ge(at,ut,nt,lt){for(var yt=0,ft=0,ct=at.length;ft<ct&&yt<ut;ft++){var vt=at.charCodeAt(ft);yt+=0<=vt&&vt<=127?nt:lt}return ft}function Je(at){return fe("\u56FD",at)}function Qe(at,ut){return le.measureText(at,ut)}le.measureText=function(at,ut){var nt=Ee();return nt.font=ut||ne,nt.measureText(at)};function rt(at,ut,nt,lt){at!=null&&(at+="");var yt=Je(ut),ft=at?at.split(`
|
|
|
`):[],ct=ft.length*yt,vt=ct;if(nt&&(vt+=nt[0]+nt[2]),at&<){var Ut=lt.outerHeight,Zt=lt.outerWidth;if(Ut!=null&&vt>Ut)at="",ft=[];else if(Zt!=null)for(var en=Re(Zt-(nt?nt[1]+nt[3]:0),ut,lt.ellipsis,{minChar:lt.minChar,placeholder:lt.placeholder}),mn=0,Bt=ft.length;mn<Bt;mn++)ft[mn]=Ue(ft[mn],en)}return{lines:ft,height:ct,outerHeight:vt,lineHeight:yt}}function $e(at,ut){var nt={lines:[],width:0,height:0};if(at!=null&&(at+=""),!at)return nt;for(var lt=te.lastIndex=0,yt;(yt=te.exec(at))!=null;){var ft=yt.index;ft>lt&&qe(nt,at.substring(lt,ft)),qe(nt,yt[2],yt[1]),lt=te.lastIndex}lt<at.length&&qe(nt,at.substring(lt,at.length));var ct=nt.lines,vt=0,Ut=0,Zt=[],en=ut.textPadding,mn=ut.truncate,Bt=mn&&mn.outerWidth,tn=mn&&mn.outerHeight;en&&(Bt!=null&&(Bt-=en[1]+en[3]),tn!=null&&(tn-=en[0]+en[2]));for(var on=0;on<ct.length;on++){for(var Mn=ct[on],Dn=0,sn=0,rn=0;rn<Mn.tokens.length;rn++){var Ht=Mn.tokens[rn],Tt=Ht.styleName&&ut.rich[Ht.styleName]||{},St=Ht.textPadding=Tt.textPadding,Qt=Ht.font=Tt.font||ut.font,gt=Ht.textHeight=xe(Tt.textHeight,Je(Qt));if(St&&(gt+=St[0]+St[2]),Ht.height=gt,Ht.lineHeight=pe(Tt.textLineHeight,ut.textLineHeight,gt),Ht.textAlign=Tt&&Tt.textAlign||ut.textAlign,Ht.textVerticalAlign=Tt&&Tt.textVerticalAlign||"middle",tn!=null&&vt+Ht.lineHeight>tn)return{lines:[],width:0,height:0};Ht.textWidth=fe(Ht.text,Qt);var bt=Tt.textWidth,Yt=bt==null||bt==="auto";if(typeof bt=="string"&&bt.charAt(bt.length-1)==="%")Ht.percentWidth=bt,Zt.push(Ht),bt=0;else{if(Yt){bt=Ht.textWidth;var kt=Tt.textBackgroundColor,Mt=kt&&kt.image;Mt&&(Mt=Me.findExistImage(Mt),Me.isImageReady(Mt)&&(bt=Math.max(bt,Mt.width*gt/Mt.height)))}var ln=St?St[1]+St[3]:0;bt+=ln;var zn=Bt!=null?Bt-sn:null;zn!=null&&zn<bt&&(!Yt||zn<ln?(Ht.text="",Ht.textWidth=bt=0):(Ht.text=Fe(Ht.text,zn-ln,Qt,mn.ellipsis,{minChar:mn.minChar}),Ht.textWidth=fe(Ht.text,Qt),bt=Ht.textWidth+ln))}sn+=Ht.width=bt,Tt&&(Dn=Math.max(Dn,Ht.lineHeight))}Mn.width=sn,Mn.lineHeight=Dn,vt+=Dn,Ut=Math.max(Ut,sn)}nt.outerWidth=nt.width=xe(ut.textWidth,Ut),nt.outerHeight=nt.height=xe(ut.textHeight,vt),en&&(nt.outerWidth+=en[1]+en[3],nt.outerHeight+=en[0]+en[2]);for(var on=0;on<Zt.length;on++){var Ht=Zt[on],Gn=Ht.percentWidth;Ht.width=parseInt(Gn,10)/100*Ut}return nt}function qe(at,ut,nt){for(var lt=ut==="",yt=ut.split(`
|
|
|
`),ft=at.lines,ct=0;ct<yt.length;ct++){var vt=yt[ct],Ut={styleName:nt,text:vt,isLineHolder:!vt&&!lt};if(ct)ft.push({tokens:[Ut]});else{var Zt=(ft[ft.length-1]||(ft[0]={tokens:[]})).tokens,en=Zt.length;en===1&&Zt[0].isLineHolder?Zt[0]=Ut:(vt||!en||lt)&&Zt.push(Ut)}}}function ot(at){return(at.fontSize||at.fontFamily)&&[at.fontStyle,at.fontWeight,(at.fontSize||12)+"px",at.fontFamily||"sans-serif"].join(" ")||at.textFont||at.font}Ne.DEFAULT_FONT=ne,Ne.$override=se,Ne.getWidth=fe,Ne.getBoundingRect=he,Ne.adjustTextX=me,Ne.adjustTextY=Ce,Ne.adjustTextPositionOnRect=Ie,Ne.truncateText=Fe,Ne.getLineHeight=Je,Ne.measureText=Qe,Ne.parsePlainText=rt,Ne.parseRichText=$e,Ne.makeFont=ot},function(He,Ne,be){var _e=be(53),Me=new _e(50);function ve(pe){if(typeof pe=="string"){var Ae=Me.get(pe);return Ae&&Ae.image}else return pe}function Ee(pe,Ae,Se,ce,te){if(pe)if(typeof pe=="string"){if(Ae&&Ae.__zrImageSrc===pe||!Se)return Ae;var ne=Me.get(pe),le={hostEl:Se,cb:ce,cbPayload:te};return ne?(Ae=ne.image,!xe(Ae)&&ne.pending.push(le)):(!Ae&&(Ae=new Image),Ae.onload=Pe,Me.put(pe,Ae.__cachedImgObj={image:Ae,pending:[le]}),Ae.src=Ae.__zrImageSrc=pe),Ae}else return pe;else return Ae}function Pe(){var pe=this.__cachedImgObj;this.onload=this.__cachedImgObj=null;for(var Ae=0;Ae<pe.pending.length;Ae++){var Se=pe.pending[Ae],ce=Se.cb;ce&&ce(this,Se.cbPayload),Se.hostEl.dirty()}pe.pending.length=0}function xe(pe){return pe&&pe.width&&pe.height}Ne.findExistImage=ve,Ne.createOrUpdateImage=Ee,Ne.isImageReady=xe},function(He,Ne,be){"use strict";var _e=be(8),Me=be(11),ve=be(4),Ee=be(15),Pe=be(52),xe=be(9),pe=be(46),Ae=be(7),Se=be(19),ce=be(24),te=be(72),ne=be(70),le=be(71),se=be(153),fe=be(17),he=be(10),ie=be(6),ue=be(5),me=be(25),Ce=be(36),Ie=be(30),Fe=be(14),Re=be(79),Ue=be(1),Ge=be.n(Ue),Je=be(154),Qe=Ge.a.mat4,rt=Ge.a.vec3,$e=["px","nx","py","ny","pz","nz"];Ae.a.import(Je.a);var qe=_e.a.extend(function(){return{softShadow:qe.PCF,shadowBlur:1,lightFrustumBias:"auto",kernelPCF:new Float32Array([1,0,1,1,-1,1,0,1,-1,0,-1,-1,1,-1,0,-1]),precision:"mediump",_lastRenderNotCastShadow:!1,_frameBuffer:new he.a,_textures:{},_shadowMapNumber:{POINT_LIGHT:0,DIRECTIONAL_LIGHT:0,SPOT_LIGHT:0},_depthMaterials:{},_distanceMaterials:{},_opaqueCasters:[],_receivers:[],_lightsCastShadow:[],_lightCameras:{},_lightMaterials:{},_texturePool:new Re.a}},function(){this._gaussianPassH=new Fe.a({fragment:Ae.a.source("clay.compositor.gaussian_blur")}),this._gaussianPassV=new Fe.a({fragment:Ae.a.source("clay.compositor.gaussian_blur")}),this._gaussianPassH.setUniform("blurSize",this.shadowBlur),this._gaussianPassH.setUniform("blurDir",0),this._gaussianPassV.setUniform("blurSize",this.shadowBlur),this._gaussianPassV.setUniform("blurDir",1),this._outputDepthPass=new Fe.a({fragment:Ae.a.source("clay.sm.debug_depth")})},{render:function(ot,at,ut,nt){ut||(ut=at.getMainCamera()),this.trigger("beforerender",this,ot,at,ut),this._renderShadowPass(ot,at,ut,nt),this.trigger("afterrender",this,ot,at,ut)},renderDebug:function(ot,at){ot.saveClear();var ut=ot.viewport,nt=0,lt=0,yt=at||ut.width/4,ft=yt;this.softShadow===qe.VSM?this._outputDepthPass.material.define("fragment","USE_VSM"):this._outputDepthPass.material.undefine("fragment","USE_VSM");for(var ct in this._textures){var vt=this._textures[ct];ot.setViewport(nt,lt,yt*vt.width/vt.height,ft),this._outputDepthPass.setUniform("depthMap",vt),this._outputDepthPass.render(ot),nt+=yt*vt.width/vt.height}ot.setViewport(ut),ot.restoreClear()},_updateCasterAndReceiver:function(ot,at){if(at.castShadow&&this._opaqueCasters.push(at),at.receiveShadow?(this._receivers.push(at),at.material.set("shadowEnabled",1),at.material.set("pcfKernel",this.kernelPCF)):at.material.set("shadowEnabled",0),!at.material.shader&&at.material.updateShader&&at.material.updateShader(ot),this.softShadow===qe.VSM)at.material.define("fragment","USE_VSM"),at.material.undefine("fragment","PCF_KERNEL_SIZE");else{at.material.undefine("fragment","USE_VSM");var ut=this.kernelPCF;ut&&ut.length?at.material.define("fragment","PCF_KERNEL_SIZE",ut.length/2):at.material.undefine("fragment","PCF_KERNEL_SIZE")}},_update:function(ot,at){for(var ut=0;ut<at.opaqueList.length;ut++)this._updateCasterAndReceiver(ot,at.opaqueList[ut]);for(var ut=0;ut<at.transparentList.length;ut++)this._updateCasterAndReceiver(ot,at.transparentList[ut]);for(var ut=0;ut<at.lights.length;ut++){var nt=at.lights[ut];nt.castShadow&&this._lightsCastShadow.push(nt)}},_renderShadowPass:function(ot,at,ut,nt){for(var lt in this._shadowMapNumber)this._shadowMapNumber[lt]=0;this._lightsCastShadow.length=0,this._opaqueCasters.length=0,this._receivers.length=0;var yt=ot.gl;if(nt||at.update(),ut&&ut.update(),this._update(ot,at),!this._lightsCastShadow.length&&this._lastRenderNotCastShadow)return;this._lastRenderNotCastShadow=this._lightsCastShadow===0,yt.enable(yt.DEPTH_TEST),yt.depthMask(!0),yt.disable(yt.BLEND),yt.clearColor(1,1,1,1);for(var ft=[],ct=[],vt=[],Ut=[],Zt=[],en=[],mn,Bt=0;Bt<this._lightsCastShadow.length;Bt++){var tn=this._lightsCastShadow[Bt];if(tn instanceof ne.a){if(mn){console.warn("Only one direectional light supported with shadow cascade");continue}if(tn.shadowCascade>4){console.warn("Support at most 4 cascade");continue}tn.shadowCascade>1&&(mn=tn.shadowCascade),this.renderDirectionalLightShadow(ot,at,ut,tn,this._opaqueCasters,Zt,Ut,vt)}else tn instanceof te.a?this.renderSpotLightShadow(ot,at,tn,this._opaqueCasters,ct,ft):tn instanceof le.a&&this.renderPointLightShadow(ot,at,tn,this._opaqueCasters,en);this._shadowMapNumber[tn.type]++}for(var on in this._shadowMapNumber)for(var Mn=this._shadowMapNumber[on],Dn=on+"_SHADOWMAP_COUNT",Bt=0;Bt<this._receivers.length;Bt++){var sn=this._receivers[Bt],rn=sn.material;rn.fragmentDefines[Dn]!==Mn&&(Mn>0?rn.define("fragment",Dn,Mn):rn.isDefined("fragment",Dn)&&rn.undefine("fragment",Dn))}for(var Bt=0;Bt<this._receivers.length;Bt++){var sn=this._receivers[Bt],rn=sn.material;mn?rn.define("fragment","SHADOW_CASCADE",mn.shadowCascade):rn.undefine("fragment","SHADOW_CASCADE")}var Ht=at.shadowUniforms;function Tt(Yt){return Yt.height}if(vt.length>0){var St=vt.map(Tt);if(Ht.directionalLightShadowMaps={value:vt,type:"tv"},Ht.directionalLightMatrices={value:Ut,type:"m4v"},Ht.directionalLightShadowMapSizes={value:St,type:"1fv"},mn){var Qt=Zt.slice(),gt=Zt.slice();Qt.pop(),gt.shift(),Qt.reverse(),gt.reverse(),Ut.reverse(),Ht.shadowCascadeClipsNear={value:Qt,type:"1fv"},Ht.shadowCascadeClipsFar={value:gt,type:"1fv"}}}if(ft.length>0){var bt=ft.map(Tt),Ht=at.shadowUniforms;Ht.spotLightShadowMaps={value:ft,type:"tv"},Ht.spotLightMatrices={value:ct,type:"m4v"},Ht.spotLightShadowMapSizes={value:bt,type:"1fv"}}en.length>0&&(Ht.pointLightShadowMaps={value:en,type:"tv"})},renderDirectionalLightShadow:function(){var ot=new Pe.a,at=new xe.a,ut=new Ee.a,nt=new xe.a,lt=new xe.a,yt=new xe.a,ft=new xe.a;return function(ct,vt,Ut,Zt,en,mn,Bt,tn){var on=this._getDepthMaterial(Zt),Mn={getMaterial:function(yr){return yr.shadowDepthMaterial||on},sortCompare:pe.a.opaqueSortCompare};if(!vt.viewBoundingBoxLastFrame.isFinite()){var Dn=vt.getBoundingBox();vt.viewBoundingBoxLastFrame.copy(Dn).applyTransform(Ut.viewMatrix)}var sn=Math.min(-vt.viewBoundingBoxLastFrame.min.z,Ut.far),rn=Math.max(-vt.viewBoundingBoxLastFrame.max.z,Ut.near),Ht=this._getDirectionalLightCamera(Zt,vt,Ut),Tt=yt.array;ft.copy(Ht.projectionMatrix),Qe.invert(lt.array,Ht.worldTransform.array),Qe.multiply(lt.array,lt.array,Ut.worldTransform.array),Qe.multiply(Tt,ft.array,lt.array);for(var St=[],Qt=Ut instanceof Ce.a,gt=(Ut.near+Ut.far)/(Ut.near-Ut.far),bt=2*Ut.near*Ut.far/(Ut.near-Ut.far),Yt=0;Yt<=Zt.shadowCascade;Yt++){var kt=rn*Math.pow(sn/rn,Yt/Zt.shadowCascade),Mt=rn+(sn-rn)*Yt/Zt.shadowCascade,ln=kt*Zt.cascadeSplitLogFactor+Mt*(1-Zt.cascadeSplitLogFactor);St.push(ln),mn.push(-(-ln*gt+bt)/-ln)}var zn=this._getTexture(Zt,Zt.shadowCascade);tn.push(zn);var Gn=ct.viewport,Hn=ct.gl;this._frameBuffer.attach(zn),this._frameBuffer.bind(ct),Hn.clear(Hn.COLOR_BUFFER_BIT|Hn.DEPTH_BUFFER_BIT);for(var Yt=0;Yt<Zt.shadowCascade;Yt++){var nr=St[Yt],Xn=St[Yt+1];Qt?Qe.perspective(at.array,Ut.fov/180*Math.PI,Ut.aspect,nr,Xn):Qe.ortho(at.array,Ut.left,Ut.right,Ut.bottom,Ut.top,nr,Xn),ot.setFromProjection(at),ot.getTransformedBoundingBox(ut,lt),ut.applyProjection(ft);var qt=ut.min.array,vn=ut.max.array;qt[0]=Math.max(qt[0],-1),qt[1]=Math.max(qt[1],-1),vn[0]=Math.min(vn[0],1),vn[1]=Math.min(vn[1],1),nt.ortho(qt[0],vn[0],qt[1],vn[1],1,-1),Ht.projectionMatrix.multiplyLeft(nt);var Un=Zt.shadowResolution||512;ct.setViewport((Zt.shadowCascade-Yt-1)*Un,0,Un,Un,1),ct.renderPass(en,Ht,Mn),this.softShadow===qe.VSM&&this._gaussianFilter(ct,zn,zn.width);var Ln=new xe.a;Ln.copy(Ht.viewMatrix).multiplyLeft(Ht.projectionMatrix),Bt.push(Ln.array),Ht.projectionMatrix.copy(ft)}this._frameBuffer.unbind(ct),ct.setViewport(Gn)}}(),renderSpotLightShadow:function(ot,at,ut,nt,lt,yt){var ft=this._getTexture(ut),ct=this._getSpotLightCamera(ut),vt=ot.gl;this._frameBuffer.attach(ft),this._frameBuffer.bind(ot),vt.clear(vt.COLOR_BUFFER_BIT|vt.DEPTH_BUFFER_BIT);var Ut=this._getDepthMaterial(ut),Zt={getMaterial:function(mn){return mn.shadowDepthMaterial||Ut},sortCompare:pe.a.opaqueSortCompare};ot.renderPass(ot.cullRenderList(nt,null,ct),ct,Zt),this._frameBuffer.unbind(ot),this.softShadow===qe.VSM&&this._gaussianFilter(ot,ft,ft.width);var en=new xe.a;en.copy(ct.worldTransform).invert().multiplyLeft(ct.projectionMatrix),yt.push(ft),lt.push(en.array)},renderPointLightShadow:function(ot,at,ut,nt,lt){var yt=this._getTexture(ut),ft=ot.gl;lt.push(yt);for(var ct=this._getDepthMaterial(ut),vt={getMaterial:function(mn){return mn.shadowDepthMaterial||ct},sortCompare:pe.a.opaqueSortCompare},Ut=0;Ut<6;Ut++){var Zt=$e[Ut],en=this._getPointLightCamera(ut,Zt);this._frameBuffer.attach(yt,ft.COLOR_ATTACHMENT0,ft.TEXTURE_CUBE_MAP_POSITIVE_X+Ut),this._frameBuffer.bind(ot),ft.clear(ft.COLOR_BUFFER_BIT|ft.DEPTH_BUFFER_BIT),ot.renderPass(ot.cullRenderList(nt,null,en),en,vt)}this._frameBuffer.unbind(ot)},_getDepthMaterial:function(ot){var at=this._lightMaterials[ot.__uid__],ut=ot instanceof le.a;if(!at){var nt=ut?"clay.sm.distance.":"clay.sm.depth.";at=new fe.a({precision:this.precision,shader:new Ae.a(Ae.a.source(nt+"vertex"),Ae.a.source(nt+"fragment"))}),this._lightMaterials[ot.__uid__]=at}return ot.shadowSlopeScale!=null&&at.setUniform("slopeScale",ot.shadowSlopeScale),ot.shadowBias!=null&&at.setUniform("shadowBias",ot.shadowBias),this.softShadow===qe.VSM?at.define("fragment","USE_VSM"):at.undefine("fragment","USE_VSM"),ut&&(at.set("lightPosition",ot.getWorldPosition().array),at.set("range",ot.range)),at},_gaussianFilter:function(ot,at,ut){var nt={width:ut,height:ut,type:ie.a.FLOAT},lt=this._texturePool.get(nt);this._frameBuffer.attach(lt),this._frameBuffer.bind(ot),this._gaussianPassH.setUniform("texture",at),this._gaussianPassH.setUniform("textureWidth",ut),this._gaussianPassH.render(ot),this._frameBuffer.attach(at),this._gaussianPassV.setUniform("texture",lt),this._gaussianPassV.setUniform("textureHeight",ut),this._gaussianPassV.render(ot),this._frameBuffer.unbind(ot),this._texturePool.put(lt)},_getTexture:function(ot,at){var ut=ot.__uid__,nt=this._textures[ut],lt=ot.shadowResolution||512;return at=at||1,nt||(ot instanceof le.a?nt=new me.a:nt=new ue.a,nt.width=lt*at,nt.height=lt,this.softShadow===qe.VSM?(nt.type=ie.a.FLOAT,nt.anisotropic=4):(nt.minFilter=Me.a.NEAREST,nt.magFilter=Me.a.NEAREST,nt.useMipmap=!1),this._textures[ut]=nt),nt},_getPointLightCamera:function(ot,at){this._lightCameras.point||(this._lightCameras.point={px:new Ce.a,nx:new Ce.a,py:new Ce.a,ny:new Ce.a,pz:new Ce.a,nz:new Ce.a});var ut=this._lightCameras.point[at];switch(ut.far=ot.range,ut.fov=90,ut.position.set(0,0,0),at){case"px":ut.lookAt(ve.a.POSITIVE_X,ve.a.NEGATIVE_Y);break;case"nx":ut.lookAt(ve.a.NEGATIVE_X,ve.a.NEGATIVE_Y);break;case"py":ut.lookAt(ve.a.POSITIVE_Y,ve.a.POSITIVE_Z);break;case"ny":ut.lookAt(ve.a.NEGATIVE_Y,ve.a.NEGATIVE_Z);break;case"pz":ut.lookAt(ve.a.POSITIVE_Z,ve.a.NEGATIVE_Y);break;case"nz":ut.lookAt(ve.a.NEGATIVE_Z,ve.a.NEGATIVE_Y);break}return ot.getWorldPosition(ut.position),ut.update(),ut},_getDirectionalLightCamera:function(){var ot=new xe.a,at=new Ee.a,ut=new Ee.a;return function(nt,lt,yt){this._lightCameras.directional||(this._lightCameras.directional=new Ie.a);var ft=this._lightCameras.directional;at.copy(lt.viewBoundingBoxLastFrame),at.intersection(yt.frustum.boundingBox),ft.position.copy(at.min).add(at.max).scale(.5).transformMat4(yt.worldTransform),ft.rotation.copy(nt.rotation),ft.scale.copy(nt.scale),ft.updateWorldTransform(),xe.a.invert(ot,ft.worldTransform),xe.a.multiply(ot,ot,yt.worldTransform),ut.copy(at).applyTransform(ot);var ct=ut.min.array,vt=ut.max.array;return ft.position.set((ct[0]+vt[0])/2,(ct[1]+vt[1])/2,vt[2]).transformMat4(ft.worldTransform),ft.near=0,ft.far=-ct[2]+vt[2],isNaN(this.lightFrustumBias)?ft.far*=4:ft.far+=this.lightFrustumBias,ft.left=ct[0],ft.right=vt[0],ft.top=vt[1],ft.bottom=ct[1],ft.update(!0),ft}}(),_getSpotLightCamera:function(ot){this._lightCameras.spot||(this._lightCameras.spot=new Ce.a);var at=this._lightCameras.spot;return at.fov=ot.penumbraAngle*2,at.far=ot.range,at.worldTransform.copy(ot.worldTransform),at.updateProjectionMatrix(),Qe.invert(at.viewMatrix.array,at.worldTransform.array),at},dispose:function(ot){var at=ot.gl||ot;this._frameBuffer&&this._frameBuffer.dispose(at);for(var ut in this._textures)this._textures[ut].dispose(at);this._texturePool.clear(ot.gl),this._depthMaterials={},this._distanceMaterials={},this._textures={},this._lightCameras={},this._shadowMapNumber={POINT_LIGHT:0,DIRECTIONAL_LIGHT:0,SPOT_LIGHT:0},this._meshMaterials={};for(var nt=0;nt<this._receivers.length;nt++){var lt=this._receivers[nt];if(lt.material&<.material.shader){var yt=lt.material,ft=yt.shader;ft.undefine("fragment","POINT_LIGHT_SHADOW_COUNT"),ft.undefine("fragment","DIRECTIONAL_LIGHT_SHADOW_COUNT"),ft.undefine("fragment","AMBIENT_LIGHT_SHADOW_COUNT"),yt.set("shadowEnabled",0)}}this._opaqueCasters=[],this._receivers=[],this._lightsCastShadow=[]}});qe.VSM=1,qe.PCF=2,Ne.a=qe},function(He,Ne,be){"use strict";var _e=be(7),Me={};function ve(){this._pool={}}ve.prototype.get=function(pe){var Ae=pe;if(this._pool[Ae])return this._pool[Ae];var Se=Me[pe];if(!Se){console.error('Shader "'+pe+'" is not in the library');return}var ce=new _e.a(Se.vertex,Se.fragment);return this._pool[Ae]=ce,ce},ve.prototype.clear=function(){this._pool={}};function Ee(pe,Ae,Se){Me[pe]={vertex:Ae,fragment:Se}}var Pe=new ve,xe={createLibrary:function(){return new ve},get:function(){return Pe.get.apply(Pe,arguments)},template:Ee,clear:function(){return Pe.clear()}}},function(He,Ne,be){"use strict";Ne.a=`@export clay.sm.depth.vertex
|
|
|
uniform mat4 worldViewProjection : WORLDVIEWPROJECTION;
|
|
|
attribute vec3 position : POSITION;
|
|
|
#ifdef SHADOW_TRANSPARENT
|
|
|
attribute vec2 texcoord : TEXCOORD_0;
|
|
|
#endif
|
|
|
@import clay.chunk.skinning_header
|
|
|
varying vec4 v_ViewPosition;
|
|
|
#ifdef SHADOW_TRANSPARENT
|
|
|
varying vec2 v_Texcoord;
|
|
|
#endif
|
|
|
void main(){
|
|
|
vec3 skinnedPosition = position;
|
|
|
#ifdef SKINNING
|
|
|
@import clay.chunk.skin_matrix
|
|
|
skinnedPosition = (skinMatrixWS * vec4(position, 1.0)).xyz;
|
|
|
#endif
|
|
|
v_ViewPosition = worldViewProjection * vec4(skinnedPosition, 1.0);
|
|
|
gl_Position = v_ViewPosition;
|
|
|
#ifdef SHADOW_TRANSPARENT
|
|
|
v_Texcoord = texcoord;
|
|
|
#endif
|
|
|
}
|
|
|
@end
|
|
|
@export clay.sm.depth.fragment
|
|
|
varying vec4 v_ViewPosition;
|
|
|
#ifdef SHADOW_TRANSPARENT
|
|
|
varying vec2 v_Texcoord;
|
|
|
#endif
|
|
|
uniform float bias : 0.001;
|
|
|
uniform float slopeScale : 1.0;
|
|
|
#ifdef SHADOW_TRANSPARENT
|
|
|
uniform sampler2D transparentMap;
|
|
|
#endif
|
|
|
@import clay.util.encode_float
|
|
|
void main(){
|
|
|
float depth = v_ViewPosition.z / v_ViewPosition.w;
|
|
|
#ifdef USE_VSM
|
|
|
depth = depth * 0.5 + 0.5;
|
|
|
float moment1 = depth;
|
|
|
float moment2 = depth * depth;
|
|
|
float dx = dFdx(depth);
|
|
|
float dy = dFdy(depth);
|
|
|
moment2 += 0.25*(dx*dx+dy*dy);
|
|
|
gl_FragColor = vec4(moment1, moment2, 0.0, 1.0);
|
|
|
#else
|
|
|
float dx = dFdx(depth);
|
|
|
float dy = dFdy(depth);
|
|
|
depth += sqrt(dx*dx + dy*dy) * slopeScale + bias;
|
|
|
#ifdef SHADOW_TRANSPARENT
|
|
|
if (texture2D(transparentMap, v_Texcoord).a <= 0.1) {
|
|
|
gl_FragColor = encodeFloat(0.9999);
|
|
|
return;
|
|
|
}
|
|
|
#endif
|
|
|
gl_FragColor = encodeFloat(depth * 0.5 + 0.5);
|
|
|
#endif
|
|
|
}
|
|
|
@end
|
|
|
@export clay.sm.debug_depth
|
|
|
uniform sampler2D depthMap;
|
|
|
varying vec2 v_Texcoord;
|
|
|
@import clay.util.decode_float
|
|
|
void main() {
|
|
|
vec4 tex = texture2D(depthMap, v_Texcoord);
|
|
|
#ifdef USE_VSM
|
|
|
gl_FragColor = vec4(tex.rgb, 1.0);
|
|
|
#else
|
|
|
float depth = decodeFloat(tex);
|
|
|
gl_FragColor = vec4(depth, depth, depth, 1.0);
|
|
|
#endif
|
|
|
}
|
|
|
@end
|
|
|
@export clay.sm.distance.vertex
|
|
|
uniform mat4 worldViewProjection : WORLDVIEWPROJECTION;
|
|
|
uniform mat4 world : WORLD;
|
|
|
attribute vec3 position : POSITION;
|
|
|
@import clay.chunk.skinning_header
|
|
|
varying vec3 v_WorldPosition;
|
|
|
void main (){
|
|
|
vec3 skinnedPosition = position;
|
|
|
#ifdef SKINNING
|
|
|
@import clay.chunk.skin_matrix
|
|
|
skinnedPosition = (skinMatrixWS * vec4(position, 1.0)).xyz;
|
|
|
#endif
|
|
|
gl_Position = worldViewProjection * vec4(skinnedPosition , 1.0);
|
|
|
v_WorldPosition = (world * vec4(skinnedPosition, 1.0)).xyz;
|
|
|
}
|
|
|
@end
|
|
|
@export clay.sm.distance.fragment
|
|
|
uniform vec3 lightPosition;
|
|
|
uniform float range : 100;
|
|
|
varying vec3 v_WorldPosition;
|
|
|
@import clay.util.encode_float
|
|
|
void main(){
|
|
|
float dist = distance(lightPosition, v_WorldPosition);
|
|
|
#ifdef USE_VSM
|
|
|
gl_FragColor = vec4(dist, dist * dist, 0.0, 0.0);
|
|
|
#else
|
|
|
dist = dist / range;
|
|
|
gl_FragColor = encodeFloat(dist);
|
|
|
#endif
|
|
|
}
|
|
|
@end
|
|
|
@export clay.plugin.shadow_map_common
|
|
|
@import clay.util.decode_float
|
|
|
float tapShadowMap(sampler2D map, vec2 uv, float z){
|
|
|
vec4 tex = texture2D(map, uv);
|
|
|
return step(z, decodeFloat(tex) * 2.0 - 1.0);
|
|
|
}
|
|
|
float pcf(sampler2D map, vec2 uv, float z, float textureSize, vec2 scale) {
|
|
|
float shadowContrib = tapShadowMap(map, uv, z);
|
|
|
vec2 offset = vec2(1.0 / textureSize) * scale;
|
|
|
#ifdef PCF_KERNEL_SIZE
|
|
|
for (int _idx_ = 0; _idx_ < PCF_KERNEL_SIZE; _idx_++) {{
|
|
|
shadowContrib += tapShadowMap(map, uv + offset * pcfKernel[_idx_], z);
|
|
|
}}
|
|
|
return shadowContrib / float(PCF_KERNEL_SIZE + 1);
|
|
|
#else
|
|
|
shadowContrib += tapShadowMap(map, uv+vec2(offset.x, 0.0), z);
|
|
|
shadowContrib += tapShadowMap(map, uv+vec2(offset.x, offset.y), z);
|
|
|
shadowContrib += tapShadowMap(map, uv+vec2(-offset.x, offset.y), z);
|
|
|
shadowContrib += tapShadowMap(map, uv+vec2(0.0, offset.y), z);
|
|
|
shadowContrib += tapShadowMap(map, uv+vec2(-offset.x, 0.0), z);
|
|
|
shadowContrib += tapShadowMap(map, uv+vec2(-offset.x, -offset.y), z);
|
|
|
shadowContrib += tapShadowMap(map, uv+vec2(offset.x, -offset.y), z);
|
|
|
shadowContrib += tapShadowMap(map, uv+vec2(0.0, -offset.y), z);
|
|
|
return shadowContrib / 9.0;
|
|
|
#endif
|
|
|
}
|
|
|
float pcf(sampler2D map, vec2 uv, float z, float textureSize) {
|
|
|
return pcf(map, uv, z, textureSize, vec2(1.0));
|
|
|
}
|
|
|
float chebyshevUpperBound(vec2 moments, float z){
|
|
|
float p = 0.0;
|
|
|
z = z * 0.5 + 0.5;
|
|
|
if (z <= moments.x) {
|
|
|
p = 1.0;
|
|
|
}
|
|
|
float variance = moments.y - moments.x * moments.x;
|
|
|
variance = max(variance, 0.0000001);
|
|
|
float mD = moments.x - z;
|
|
|
float pMax = variance / (variance + mD * mD);
|
|
|
pMax = clamp((pMax-0.4)/(1.0-0.4), 0.0, 1.0);
|
|
|
return max(p, pMax);
|
|
|
}
|
|
|
float computeShadowContrib(
|
|
|
sampler2D map, mat4 lightVPM, vec3 position, float textureSize, vec2 scale, vec2 offset
|
|
|
) {
|
|
|
vec4 posInLightSpace = lightVPM * vec4(position, 1.0);
|
|
|
posInLightSpace.xyz /= posInLightSpace.w;
|
|
|
float z = posInLightSpace.z;
|
|
|
if(all(greaterThan(posInLightSpace.xyz, vec3(-0.99, -0.99, -1.0))) &&
|
|
|
all(lessThan(posInLightSpace.xyz, vec3(0.99, 0.99, 1.0)))){
|
|
|
vec2 uv = (posInLightSpace.xy+1.0) / 2.0;
|
|
|
#ifdef USE_VSM
|
|
|
vec2 moments = texture2D(map, uv * scale + offset).xy;
|
|
|
return chebyshevUpperBound(moments, z);
|
|
|
#else
|
|
|
return pcf(map, uv * scale + offset, z, textureSize, scale);
|
|
|
#endif
|
|
|
}
|
|
|
return 1.0;
|
|
|
}
|
|
|
float computeShadowContrib(sampler2D map, mat4 lightVPM, vec3 position, float textureSize) {
|
|
|
return computeShadowContrib(map, lightVPM, position, textureSize, vec2(1.0), vec2(0.0));
|
|
|
}
|
|
|
float computeShadowContribOmni(samplerCube map, vec3 direction, float range)
|
|
|
{
|
|
|
float dist = length(direction);
|
|
|
vec4 shadowTex = textureCube(map, direction);
|
|
|
#ifdef USE_VSM
|
|
|
vec2 moments = shadowTex.xy;
|
|
|
float variance = moments.y - moments.x * moments.x;
|
|
|
float mD = moments.x - dist;
|
|
|
float p = variance / (variance + mD * mD);
|
|
|
if(moments.x + 0.001 < dist){
|
|
|
return clamp(p, 0.0, 1.0);
|
|
|
}else{
|
|
|
return 1.0;
|
|
|
}
|
|
|
#else
|
|
|
return step(dist, (decodeFloat(shadowTex) + 0.0002) * range);
|
|
|
#endif
|
|
|
}
|
|
|
@end
|
|
|
@export clay.plugin.compute_shadow_map
|
|
|
#if defined(SPOT_LIGHT_SHADOWMAP_COUNT) || defined(DIRECTIONAL_LIGHT_SHADOWMAP_COUNT) || defined(POINT_LIGHT_SHADOWMAP_COUNT)
|
|
|
#ifdef SPOT_LIGHT_SHADOWMAP_COUNT
|
|
|
uniform sampler2D spotLightShadowMaps[SPOT_LIGHT_SHADOWMAP_COUNT]:unconfigurable;
|
|
|
uniform mat4 spotLightMatrices[SPOT_LIGHT_SHADOWMAP_COUNT]:unconfigurable;
|
|
|
uniform float spotLightShadowMapSizes[SPOT_LIGHT_SHADOWMAP_COUNT]:unconfigurable;
|
|
|
#endif
|
|
|
#ifdef DIRECTIONAL_LIGHT_SHADOWMAP_COUNT
|
|
|
#if defined(SHADOW_CASCADE)
|
|
|
uniform sampler2D directionalLightShadowMaps[1]:unconfigurable;
|
|
|
uniform mat4 directionalLightMatrices[SHADOW_CASCADE]:unconfigurable;
|
|
|
uniform float directionalLightShadowMapSizes[1]:unconfigurable;
|
|
|
uniform float shadowCascadeClipsNear[SHADOW_CASCADE]:unconfigurable;
|
|
|
uniform float shadowCascadeClipsFar[SHADOW_CASCADE]:unconfigurable;
|
|
|
#else
|
|
|
uniform sampler2D directionalLightShadowMaps[DIRECTIONAL_LIGHT_SHADOWMAP_COUNT]:unconfigurable;
|
|
|
uniform mat4 directionalLightMatrices[DIRECTIONAL_LIGHT_SHADOWMAP_COUNT]:unconfigurable;
|
|
|
uniform float directionalLightShadowMapSizes[DIRECTIONAL_LIGHT_SHADOWMAP_COUNT]:unconfigurable;
|
|
|
#endif
|
|
|
#endif
|
|
|
#ifdef POINT_LIGHT_SHADOWMAP_COUNT
|
|
|
uniform samplerCube pointLightShadowMaps[POINT_LIGHT_SHADOWMAP_COUNT]:unconfigurable;
|
|
|
#endif
|
|
|
uniform bool shadowEnabled : true;
|
|
|
#ifdef PCF_KERNEL_SIZE
|
|
|
uniform vec2 pcfKernel[PCF_KERNEL_SIZE];
|
|
|
#endif
|
|
|
@import clay.plugin.shadow_map_common
|
|
|
#if defined(SPOT_LIGHT_SHADOWMAP_COUNT)
|
|
|
void computeShadowOfSpotLights(vec3 position, inout float shadowContribs[SPOT_LIGHT_COUNT] ) {
|
|
|
float shadowContrib;
|
|
|
for(int _idx_ = 0; _idx_ < SPOT_LIGHT_SHADOWMAP_COUNT; _idx_++) {{
|
|
|
shadowContrib = computeShadowContrib(
|
|
|
spotLightShadowMaps[_idx_], spotLightMatrices[_idx_], position,
|
|
|
spotLightShadowMapSizes[_idx_]
|
|
|
);
|
|
|
shadowContribs[_idx_] = shadowContrib;
|
|
|
}}
|
|
|
for(int _idx_ = SPOT_LIGHT_SHADOWMAP_COUNT; _idx_ < SPOT_LIGHT_COUNT; _idx_++){{
|
|
|
shadowContribs[_idx_] = 1.0;
|
|
|
}}
|
|
|
}
|
|
|
#endif
|
|
|
#if defined(DIRECTIONAL_LIGHT_SHADOWMAP_COUNT)
|
|
|
#ifdef SHADOW_CASCADE
|
|
|
void computeShadowOfDirectionalLights(vec3 position, inout float shadowContribs[DIRECTIONAL_LIGHT_COUNT]){
|
|
|
float depth = (2.0 * gl_FragCoord.z - gl_DepthRange.near - gl_DepthRange.far)
|
|
|
/ (gl_DepthRange.far - gl_DepthRange.near);
|
|
|
float shadowContrib;
|
|
|
shadowContribs[0] = 1.0;
|
|
|
for (int _idx_ = 0; _idx_ < SHADOW_CASCADE; _idx_++) {{
|
|
|
if (
|
|
|
depth >= shadowCascadeClipsNear[_idx_] &&
|
|
|
depth <= shadowCascadeClipsFar[_idx_]
|
|
|
) {
|
|
|
shadowContrib = computeShadowContrib(
|
|
|
directionalLightShadowMaps[0], directionalLightMatrices[_idx_], position,
|
|
|
directionalLightShadowMapSizes[0],
|
|
|
vec2(1.0 / float(SHADOW_CASCADE), 1.0),
|
|
|
vec2(float(_idx_) / float(SHADOW_CASCADE), 0.0)
|
|
|
);
|
|
|
shadowContribs[0] = shadowContrib;
|
|
|
}
|
|
|
}}
|
|
|
for(int _idx_ = DIRECTIONAL_LIGHT_SHADOWMAP_COUNT; _idx_ < DIRECTIONAL_LIGHT_COUNT; _idx_++) {{
|
|
|
shadowContribs[_idx_] = 1.0;
|
|
|
}}
|
|
|
}
|
|
|
#else
|
|
|
void computeShadowOfDirectionalLights(vec3 position, inout float shadowContribs[DIRECTIONAL_LIGHT_COUNT]){
|
|
|
float shadowContrib;
|
|
|
for(int _idx_ = 0; _idx_ < DIRECTIONAL_LIGHT_SHADOWMAP_COUNT; _idx_++) {{
|
|
|
shadowContrib = computeShadowContrib(
|
|
|
directionalLightShadowMaps[_idx_], directionalLightMatrices[_idx_], position,
|
|
|
directionalLightShadowMapSizes[_idx_]
|
|
|
);
|
|
|
shadowContribs[_idx_] = shadowContrib;
|
|
|
}}
|
|
|
for(int _idx_ = DIRECTIONAL_LIGHT_SHADOWMAP_COUNT; _idx_ < DIRECTIONAL_LIGHT_COUNT; _idx_++) {{
|
|
|
shadowContribs[_idx_] = 1.0;
|
|
|
}}
|
|
|
}
|
|
|
#endif
|
|
|
#endif
|
|
|
#if defined(POINT_LIGHT_SHADOWMAP_COUNT)
|
|
|
void computeShadowOfPointLights(vec3 position, inout float shadowContribs[POINT_LIGHT_COUNT] ){
|
|
|
vec3 lightPosition;
|
|
|
vec3 direction;
|
|
|
for(int _idx_ = 0; _idx_ < POINT_LIGHT_SHADOWMAP_COUNT; _idx_++) {{
|
|
|
lightPosition = pointLightPosition[_idx_];
|
|
|
direction = position - lightPosition;
|
|
|
shadowContribs[_idx_] = computeShadowContribOmni(pointLightShadowMaps[_idx_], direction, pointLightRange[_idx_]);
|
|
|
}}
|
|
|
for(int _idx_ = POINT_LIGHT_SHADOWMAP_COUNT; _idx_ < POINT_LIGHT_COUNT; _idx_++) {{
|
|
|
shadowContribs[_idx_] = 1.0;
|
|
|
}}
|
|
|
}
|
|
|
#endif
|
|
|
#endif
|
|
|
@end`},function(He,Ne,be){"use strict";var _e=be(7),Me=be(5),ve=be(6),Ee=be(10),Pe=be(156),xe=be(162),pe=be(164),Ae=be(166),Se=be(2),ce=be(167),te=be(169),ne=be(9),le=be(170),se=be(171),fe=be(172),he=be(173),ie=be(174),ue=be(175),me=be(176),Ce=be(177),Ie=be(178),Fe=be(179),Re=be(180),Ue=be(181);_e.a.import(se.a),_e.a.import(fe.a),_e.a.import(he.a),_e.a.import(ie.a),_e.a.import(ue.a),_e.a.import(me.a),_e.a.import(Ce.a),_e.a.import(Ie.a),_e.a.import(Fe.a),_e.a.import(Re.a),_e.a.import(Ue.a);var Ge={color:{parameters:{width:function(rt){return rt.getWidth()},height:function(rt){return rt.getHeight()}}}},Je=["composite","FXAA"];function Qe(){this._sourceTexture=new Me.a({type:ve.a.HALF_FLOAT}),this._depthTexture=new Me.a({format:ve.a.DEPTH_COMPONENT,type:ve.a.UNSIGNED_INT}),this._framebuffer=new Ee.a,this._framebuffer.attach(this._sourceTexture),this._framebuffer.attach(this._depthTexture,Ee.a.DEPTH_ATTACHMENT),this._normalPass=new ce.a,this._compositor=Object(Pe.a)(le.a);var rt=this._compositor.getNodeByName("source");rt.texture=this._sourceTexture;var $e=this._compositor.getNodeByName("coc");this._sourceNode=rt,this._cocNode=$e,this._compositeNode=this._compositor.getNodeByName("composite"),this._fxaaNode=this._compositor.getNodeByName("FXAA"),this._dofBlurNodes=["dof_far_blur","dof_near_blur","dof_coc_blur"].map(function(ot){return this._compositor.getNodeByName(ot)},this),this._dofBlurKernel=0,this._dofBlurKernelSize=new Float32Array(0),this._finalNodesChain=Je.map(function(ot){return this._compositor.getNodeByName(ot)},this);var qe={normalTexture:this._normalPass.getNormalTexture(),depthTexture:this._normalPass.getDepthTexture()};this._ssaoPass=new xe.a(qe),this._ssrPass=new pe.a(qe),this._edgePass=new te.a(qe)}Qe.prototype.resize=function(ot,at,qe){qe=qe||1;var ot=ot*qe,at=at*qe,ut=this._sourceTexture,nt=this._depthTexture;ut.width=ot,ut.height=at,nt.width=ot,nt.height=at},Qe.prototype._ifRenderNormalPass=function(){return this._enableSSAO||this._enableEdge||this._enableSSR},Qe.prototype._getPrevNode=function(rt){for(var $e=Je.indexOf(rt.name)-1,qe=this._finalNodesChain[$e];qe&&!this._compositor.getNodeByName(qe.name);)$e-=1,qe=this._finalNodesChain[$e];return qe},Qe.prototype._getNextNode=function(rt){for(var $e=Je.indexOf(rt.name)+1,qe=this._finalNodesChain[$e];qe&&!this._compositor.getNodeByName(qe.name);)$e+=1,qe=this._finalNodesChain[$e];return qe},Qe.prototype._addChainNode=function(rt){var $e=this._getPrevNode(rt),qe=this._getNextNode(rt);$e&&($e.outputs=Ge,rt.inputs.texture=$e.name,qe?(rt.outputs=Ge,qe.inputs.texture=rt.name):rt.outputs=null,this._compositor.addNode(rt))},Qe.prototype._removeChainNode=function(rt){var $e=this._getPrevNode(rt),qe=this._getNextNode(rt);$e&&(qe?($e.outputs=Ge,qe.inputs.texture=$e.name):$e.outputs=null,this._compositor.removeNode(rt))},Qe.prototype.updateNormal=function(rt,$e,qe,ot){this._ifRenderNormalPass()&&this._normalPass.update(rt,$e,qe)},Qe.prototype.updateSSAO=function(rt,$e,qe,ot){this._ssaoPass.update(rt,qe,ot)},Qe.prototype.enableSSAO=function(){this._enableSSAO=!0},Qe.prototype.disableSSAO=function(){this._enableSSAO=!1},Qe.prototype.enableSSR=function(){this._enableSSR=!0},Qe.prototype.disableSSR=function(){this._enableSSR=!1},Qe.prototype.getSSAOTexture=function(rt,$e,qe,ot){return this._ssaoPass.getTargetTexture()},Qe.prototype.getSourceFrameBuffer=function(){return this._framebuffer},Qe.prototype.getSourceTexture=function(){return this._sourceTexture},Qe.prototype.disableFXAA=function(){this._removeChainNode(this._fxaaNode)},Qe.prototype.enableFXAA=function(){this._addChainNode(this._fxaaNode)},Qe.prototype.enableBloom=function(){this._compositeNode.inputs.bloom="bloom_composite",this._compositor.dirty()},Qe.prototype.disableBloom=function(){this._compositeNode.inputs.bloom=null,this._compositor.dirty()},Qe.prototype.enableDOF=function(){this._compositeNode.inputs.texture="dof_composite",this._compositor.dirty()},Qe.prototype.disableDOF=function(){this._compositeNode.inputs.texture="source",this._compositor.dirty()},Qe.prototype.enableColorCorrection=function(){this._compositeNode.define("COLOR_CORRECTION"),this._enableColorCorrection=!0},Qe.prototype.disableColorCorrection=function(){this._compositeNode.undefine("COLOR_CORRECTION"),this._enableColorCorrection=!1},Qe.prototype.enableEdge=function(){this._enableEdge=!0},Qe.prototype.disableEdge=function(){this._enableEdge=!1},Qe.prototype.setBloomIntensity=function(rt){this._compositeNode.setParameter("bloomIntensity",rt)},Qe.prototype.setSSAOParameter=function(rt,$e){switch(rt){case"quality":var qe={low:6,medium:12,high:32,ultra:62}[$e]||12;this._ssaoPass.setParameter("kernelSize",qe);break;case"radius":this._ssaoPass.setParameter(rt,$e),this._ssaoPass.setParameter("bias",$e/200);break;case"intensity":this._ssaoPass.setParameter(rt,$e);break;default:console.warn("Unkown SSAO parameter "+rt)}},Qe.prototype.setDOFParameter=function(rt,$e){switch(rt){case"focalDistance":case"focalRange":case"fstop":this._cocNode.setParameter(rt,$e);break;case"blurRadius":for(var qe=0;qe<this._dofBlurNodes.length;qe++)this._dofBlurNodes[qe].setParameter("blurRadius",$e);break;case"quality":var ot={low:4,medium:8,high:16,ultra:32}[$e]||8;this._dofBlurKernelSize=ot;for(var qe=0;qe<this._dofBlurNodes.length;qe++)this._dofBlurNodes[qe].pass.material.define("POISSON_KERNEL_SIZE",ot);this._dofBlurKernel=new Float32Array(ot*2);break;default:console.warn("Unkown DOF parameter "+rt)}},Qe.prototype.setSSRParameter=function(rt,$e){switch(rt){case"quality":var qe={low:10,medium:20,high:40,ultra:80}[$e]||20,ot={low:32,medium:16,high:8,ultra:4}[$e]||16;this._ssrPass.setParameter("maxIteration",qe),this._ssrPass.setParameter("pixelStride",ot);break;case"maxRoughness":this._ssrPass.setParameter("minGlossiness",Math.max(Math.min(1-$e,1),0));break;default:console.warn("Unkown SSR parameter "+rt)}},Qe.prototype.setEdgeColor=function(rt){var $e=Se.a.parseColor(rt);this._edgePass.setParameter("edgeColor",$e)},Qe.prototype.setExposure=function(rt){this._compositeNode.setParameter("exposure",Math.pow(2,rt))},Qe.prototype.setColorLookupTexture=function(rt,$e){this._compositeNode.pass.material.setTextureImage("lut",this._enableColorCorrection?rt:"none",$e,{minFilter:Se.a.Texture.NEAREST,magFilter:Se.a.Texture.NEAREST,flipY:!1})},Qe.prototype.setColorCorrection=function(rt,$e){this._compositeNode.setParameter(rt,$e)},Qe.prototype.composite=function(rt,$e,qe,ot){var at=this._sourceTexture,ut=at;this._enableEdge&&(this._edgePass.update(rt,$e,at,ot),at=ut=this._edgePass.getTargetTexture()),this._enableSSR&&(this._ssrPass.update(rt,$e,at,ot),ut=this._ssrPass.getTargetTexture(),this._ssrPass.setSSAOTexture(this._enableSSAO?this._ssaoPass.getTargetTexture():null)),this._sourceNode.texture=ut,this._cocNode.setParameter("depth",this._depthTexture);for(var nt=this._dofBlurKernel,lt=this._dofBlurKernelSize,yt=Math.floor(Ae.a.length/2/lt),ft=ot%yt,ct=0;ct<lt*2;ct++)nt[ct]=Ae.a[ct+ft*lt*2];for(var ct=0;ct<this._dofBlurNodes.length;ct++)this._dofBlurNodes[ct].setParameter("percent",ot/30),this._dofBlurNodes[ct].setParameter("poissonKernel",nt);this._cocNode.setParameter("zNear",$e.near),this._cocNode.setParameter("zFar",$e.far),this._compositor.render(rt,qe)},Qe.prototype.dispose=function(rt){this._sourceTexture.dispose(rt),this._depthTexture.dispose(rt),this._framebuffer.dispose(rt),this._compositor.dispose(rt),this._normalPass.dispose(rt),this._ssaoPass.dispose(rt)},Ne.a=Qe},function(He,Ne,be){"use strict";var _e=be(21),Me=be(157),ve=be(159),Ee=be(160),Pe=be(161),xe=be(7),pe=be(6),Ae=be(5),Se=be(25),ce=/^#source\((.*?)\)/;function te(ue,me){var Ce=new Me.a;me=me||{};var Ie={textures:{},parameters:{}},Fe=function(Ge,Je){for(var Qe=0;Qe<ue.nodes.length;Qe++){var rt=ue.nodes[Qe],$e=ne(rt,Ie,me);$e&&Ce.addNode($e)}};for(var Re in ue.parameters){var Ue=ue.parameters[Re];Ie.parameters[Re]=le(Ue)}return se(ue,Ie,me,function(Ge){Ie.textures=Ge,Fe()}),Ce}function ne(ue,me,Ce){var Ie=ue.type||"filter",Fe,Re,Ue;if(Ie==="filter"){var Ge=ue.shader.trim(),Je=ce.exec(Ge);if(Je?Fe=xe.a.source(Je[1].trim()):Ge.charAt(0)==="#"&&(Fe=me.shaders[Ge.substr(1)]),Fe||(Fe=Ge),!Fe)return}if(ue.inputs){Re={};for(var Qe in ue.inputs)typeof ue.inputs[Qe]=="string"?Re[Qe]=ue.inputs[Qe]:Re[Qe]={node:ue.inputs[Qe].node,pin:ue.inputs[Qe].pin}}if(ue.outputs){Ue={};for(var Qe in ue.outputs){var rt=ue.outputs[Qe];Ue[Qe]={},rt.attachment!=null&&(Ue[Qe].attachment=rt.attachment),rt.keepLastFrame!=null&&(Ue[Qe].keepLastFrame=rt.keepLastFrame),rt.outputLastFrame!=null&&(Ue[Qe].outputLastFrame=rt.outputLastFrame),rt.parameters&&(Ue[Qe].parameters=le(rt.parameters))}}var $e;if(Ie==="scene"?$e=new ve.a({name:ue.name,scene:Ce.scene,camera:Ce.camera,outputs:Ue}):Ie==="texture"?$e=new Ee.a({name:ue.name,outputs:Ue}):$e=new Pe.a({name:ue.name,shader:Fe,inputs:Re,outputs:Ue}),$e){if(ue.parameters)for(var Qe in ue.parameters){var qe=ue.parameters[Qe];typeof qe=="string"&&(qe=qe.trim(),qe.charAt(0)==="#"?qe=me.textures[qe.substr(1)]:$e.on("beforerender",fe(Qe,ie(qe)))),$e.setParameter(Qe,qe)}if(ue.defines&&$e.pass)for(var Qe in ue.defines){var qe=ue.defines[Qe];$e.pass.material.define("fragment",Qe,qe)}}return $e}function le(ue){var me={};return ue&&(["type","minFilter","magFilter","wrapS","wrapT","flipY","useMipmap"].forEach(function(Ce){var Ie=ue[Ce];Ie!=null&&(typeof Ie=="string"&&(Ie=pe.a[Ie]),me[Ce]=Ie)}),["width","height"].forEach(function(Ce){if(ue[Ce]!=null){var Ie=ue[Ce];typeof Ie=="string"?(Ie=Ie.trim(),me[Ce]=he(Ce,ie(Ie))):me[Ce]=Ie}}),ue.useMipmap!=null&&(me.useMipmap=ue.useMipmap)),me}function se(ue,me,Ce,Ie){if(!ue.textures){Ie({});return}var Fe={},Re=0,Ue=!1,Ge=Ce.textureRootPath;_e.a.each(ue.textures,function(Je,Qe){var rt,$e=Je.path,qe=le(Je.parameters);if(Array.isArray($e)&&$e.length===6)Ge&&($e=$e.map(function(ot){return _e.a.relative2absolute(ot,Ge)})),rt=new Se.a(qe);else if(typeof $e=="string")Ge&&($e=_e.a.relative2absolute($e,Ge)),rt=new Ae.a(qe);else return;rt.load($e),Re++,rt.once("success",function(){Fe[Qe]=rt,Re--,Re===0&&(Ie(Fe),Ue=!0)})}),Re===0&&!Ue&&Ie(Fe)}function fe(ue,me){return function(Ce){var Ie=Ce.getDevicePixelRatio(),Fe=Ce.getWidth(),Re=Ce.getHeight(),Ue=me(Fe,Re,Ie);this.setParameter(ue,Ue)}}function he(ue,me){return function(Ce){var Ie=Ce.getDevicePixelRatio(),Fe=Ce.getWidth(),Re=Ce.getHeight();return me(Fe,Re,Ie)}}function ie(ue){var me=/^expr\((.*)\)$/.exec(ue);if(me)try{var Ce=new Function("width","height","dpr","return "+me[1]);return Ce(1,1),Ce}catch(Ie){throw new Error("Invalid expression.")}}Ne.a=te},function(He,Ne,be){"use strict";var _e=be(158),Me=be(79),ve=be(10),Ee=_e.a.extend(function(){return{_outputs:[],_texturePool:new Me.a,_frameBuffer:new ve.a({depthBuffer:!1})}},{addNode:function(Pe){_e.a.prototype.addNode.call(this,Pe),Pe._compositor=this},render:function(Pe,xe){if(this._dirty){this.update(),this._dirty=!1,this._outputs.length=0;for(var pe=0;pe<this.nodes.length;pe++)this.nodes[pe].outputs||this._outputs.push(this.nodes[pe])}for(var pe=0;pe<this.nodes.length;pe++)this.nodes[pe].beforeFrame();for(var pe=0;pe<this._outputs.length;pe++)this._outputs[pe].updateReference();for(var pe=0;pe<this._outputs.length;pe++)this._outputs[pe].render(Pe,xe);for(var pe=0;pe<this.nodes.length;pe++)this.nodes[pe].afterFrame()},allocateTexture:function(Pe){return this._texturePool.get(Pe)},releaseTexture:function(Pe){this._texturePool.put(Pe)},getFrameBuffer:function(){return this._frameBuffer},dispose:function(Pe){this._texturePool.clear(Pe)}});Ne.a=Ee},function(He,Ne,be){"use strict";var _e=be(8),Me=be(42),ve=_e.a.extend(function(){return{nodes:[]}},{dirty:function(){this._dirty=!0},addNode:function(Ee){this.nodes.indexOf(Ee)>=0||(this.nodes.push(Ee),this._dirty=!0)},removeNode:function(Ee){typeof Ee=="string"&&(Ee=this.getNodeByName(Ee));var Pe=this.nodes.indexOf(Ee);Pe>=0&&(this.nodes.splice(Pe,1),this._dirty=!0)},getNodeByName:function(Ee){for(var Pe=0;Pe<this.nodes.length;Pe++)if(this.nodes[Pe].name===Ee)return this.nodes[Pe]},update:function(){for(var Ee=0;Ee<this.nodes.length;Ee++)this.nodes[Ee].clear();for(var Ee=0;Ee<this.nodes.length;Ee++){var Pe=this.nodes[Ee];if(Pe.inputs){for(var xe in Pe.inputs)if(Pe.inputs[xe]){if(Pe.pass&&!Pe.pass.material.isUniformEnabled(xe)){console.warn("Pin "+Pe.name+"."+xe+" not used.");continue}var pe=Pe.inputs[xe],Ae=this.findPin(pe);Ae?Pe.link(xe,Ae.node,Ae.pin):console.warn(typeof pe=="string"?"Node "+pe+" not exist":"Pin of "+pe.node+"."+pe.pin+" not exist")}}}},findPin:function(Ee){var Pe;if((typeof Ee=="string"||Ee instanceof Me.a)&&(Ee={node:Ee}),typeof Ee.node=="string")for(var xe=0;xe<this.nodes.length;xe++){var pe=this.nodes[xe];pe.name===Ee.node&&(Pe=pe)}else Pe=Ee.node;if(Pe){var Ae=Ee.pin;if(Ae||Pe.outputs&&(Ae=Object.keys(Pe.outputs)[0]),Pe.outputs[Ae])return{node:Pe,pin:Ae}}}});Ne.a=ve},function(He,Ne,be){"use strict";var _e=be(42),Me=be(11),ve=be(10),Ee=_e.a.extend({name:"scene",scene:null,camera:null,autoUpdateScene:!0,preZ:!1},function(){this.frameBuffer=new ve.a},{render:function(Pe){this._rendering=!0;var xe=Pe.gl;this.trigger("beforerender");var pe;if(!this.outputs)pe=Pe.render(this.scene,this.camera,!this.autoUpdateScene,this.preZ);else{var Ae=this.frameBuffer;for(var Se in this.outputs){var ce=this.updateParameter(Se,Pe),te=this.outputs[Se],ne=this._compositor.allocateTexture(ce);this._outputTextures[Se]=ne;var le=te.attachment||xe.COLOR_ATTACHMENT0;typeof le=="string"&&(le=xe[le]),Ae.attach(ne,le)}Ae.bind(Pe);var se=Pe.getGLExtension("EXT_draw_buffers");if(se){var fe=[];for(var le in this.outputs)le=parseInt(le),le>=xe.COLOR_ATTACHMENT0&&le<=xe.COLOR_ATTACHMENT0+8&&fe.push(le);se.drawBuffersEXT(fe)}Pe.saveClear(),Pe.clearBit=Me.a.DEPTH_BUFFER_BIT|Me.a.COLOR_BUFFER_BIT,pe=Pe.render(this.scene,this.camera,!this.autoUpdateScene,this.preZ),Pe.restoreClear(),Ae.unbind(Pe)}this.trigger("afterrender",pe),this._rendering=!1,this._rendered=!0}});Ne.a=Ee},function(He,Ne,be){"use strict";var _e=be(42),Me=_e.a.extend(function(){return{texture:null,outputs:{color:{}}}},function(){},{getOutput:function(ve,Ee){return this.texture},beforeFrame:function(){},afterFrame:function(){}});Ne.a=Me},function(He,Ne,be){"use strict";var _e=be(14),Me=be(42),ve=Me.a.extend(function(){return{name:"",inputs:{},outputs:null,shader:"",inputLinks:{},outputLinks:{},pass:null,_prevOutputTextures:{},_outputTextures:{},_outputReferences:{},_rendering:!1,_rendered:!1,_compositor:null}},function(){var Ee=new _e.a({fragment:this.shader});this.pass=Ee},{render:function(Ee,Pe){this.trigger("beforerender",Ee),this._rendering=!0;var xe=Ee.gl;for(var pe in this.inputLinks){var Ae=this.inputLinks[pe],Se=Ae.node.getOutput(Ee,Ae.pin);this.pass.setUniform(pe,Se)}if(!this.outputs)this.pass.outputs=null,this._compositor.getFrameBuffer().unbind(Ee),this.pass.render(Ee,Pe);else{this.pass.outputs={};var ce={};for(var te in this.outputs){var ne=this.updateParameter(te,Ee);isNaN(ne.width)&&this.updateParameter(te,Ee);var le=this.outputs[te],se=this._compositor.allocateTexture(ne);this._outputTextures[te]=se;var fe=le.attachment||xe.COLOR_ATTACHMENT0;typeof fe=="string"&&(fe=xe[fe]),ce[fe]=se}this._compositor.getFrameBuffer().bind(Ee);for(var fe in ce)this._compositor.getFrameBuffer().attach(ce[fe],fe);this.pass.render(Ee),this._compositor.getFrameBuffer().updateMipmap(Ee.gl)}for(var pe in this.inputLinks){var Ae=this.inputLinks[pe];Ae.node.removeReference(Ae.pin)}this._rendering=!1,this._rendered=!0,this.trigger("afterrender",Ee)},updateParameter:function(Ee,Pe){var xe=this.outputs[Ee],pe=xe.parameters,Ae=xe._parametersCopy;if(Ae||(Ae=xe._parametersCopy={}),pe)for(var Se in pe)Se!=="width"&&Se!=="height"&&(Ae[Se]=pe[Se]);var ce,te;return pe.width instanceof Function?ce=pe.width.call(this,Pe):ce=pe.width,pe.height instanceof Function?te=pe.height.call(this,Pe):te=pe.height,(Ae.width!==ce||Ae.height!==te)&&this._outputTextures[Ee]&&this._outputTextures[Ee].dispose(Pe),Ae.width=ce,Ae.height=te,Ae},setParameter:function(Ee,Pe){this.pass.setUniform(Ee,Pe)},getParameter:function(Ee){return this.pass.getUniform(Ee)},setParameters:function(Ee){for(var Pe in Ee)this.setParameter(Pe,Ee[Pe])},define:function(Ee,Pe){this.pass.material.define("fragment",Ee,Pe)},undefine:function(Ee){this.pass.material.undefine("fragment",Ee)},removeReference:function(Ee){if(this._outputReferences[Ee]--,this._outputReferences[Ee]===0){var Pe=this.outputs[Ee];Pe.keepLastFrame?(this._prevOutputTextures[Ee]&&this._compositor.releaseTexture(this._prevOutputTextures[Ee]),this._prevOutputTextures[Ee]=this._outputTextures[Ee]):this._compositor.releaseTexture(this._outputTextures[Ee])}},clear:function(){Me.a.prototype.clear.call(this),this.pass.material.disableTexturesAll()}});Ne.a=ve},function(He,Ne,be){"use strict";var _e=be(9),Me=be(4),ve=be(5),Ee=be(6),Pe=be(14),xe=be(7),pe=be(10),Ae=be(43),Se=be(163);xe.a.import(Se.a);function ce(se){for(var fe=new Uint8Array(se*se*4),he=0,ie=new Me.a,ue=0;ue<se;ue++)for(var me=0;me<se;me++)ie.set(Math.random()*2-1,Math.random()*2-1,0).normalize(),fe[he++]=(ie.x*.5+.5)*255,fe[he++]=(ie.y*.5+.5)*255,fe[he++]=0,fe[he++]=255;return fe}function te(se){return new ve.a({pixels:ce(se),wrapS:Ee.a.REPEAT,wrapT:Ee.a.REPEAT,width:se,height:se})}function ne(se,fe,he){var ie=new Float32Array(se*3);fe=fe||0;for(var ue=0;ue<se;ue++){var me=Object(Ae.a)(ue+fe,2)*(he?1:2)*Math.PI,Ce=Object(Ae.a)(ue+fe,3)*Math.PI,Ie=Math.random(),Fe=Math.cos(me)*Math.sin(Ce)*Ie,Re=Math.cos(Ce)*Ie,Ue=Math.sin(me)*Math.sin(Ce)*Ie;ie[ue*3]=Fe,ie[ue*3+1]=Re,ie[ue*3+2]=Ue}return ie}function le(se){se=se||{},this._ssaoPass=new Pe.a({fragment:xe.a.source("ecgl.ssao.estimate")}),this._blurPass=new Pe.a({fragment:xe.a.source("ecgl.ssao.blur")}),this._framebuffer=new pe.a({depthBuffer:!1}),this._ssaoTexture=new ve.a,this._blurTexture=new ve.a,this._blurTexture2=new ve.a,this._depthTex=se.depthTexture,this._normalTex=se.normalTexture,this.setNoiseSize(4),this.setKernelSize(se.kernelSize||12),se.radius!=null&&this.setParameter("radius",se.radius),se.power!=null&&this.setParameter("power",se.power),this._normalTex||(this._ssaoPass.material.disableTexture("normalTex"),this._blurPass.material.disableTexture("normalTex")),this._depthTex||this._blurPass.material.disableTexture("depthTex"),this._blurPass.material.setUniform("normalTex",this._normalTex),this._blurPass.material.setUniform("depthTex",this._depthTex)}le.prototype.setDepthTexture=function(se){this._depthTex=se},le.prototype.setNormalTexture=function(se){this._normalTex=se,this._ssaoPass.material[se?"enableTexture":"disableTexture"]("normalTex"),this.setKernelSize(this._kernelSize)},le.prototype.update=function(se,fe,he){var ie=se.getWidth(),ue=se.getHeight(),me=this._ssaoPass,Ce=this._blurPass;me.setUniform("kernel",this._kernels[he%this._kernels.length]),me.setUniform("depthTex",this._depthTex),this._normalTex!=null&&me.setUniform("normalTex",this._normalTex),me.setUniform("depthTexSize",[this._depthTex.width,this._depthTex.height]);var Ie=new _e.a;_e.a.transpose(Ie,fe.worldTransform),me.setUniform("projection",fe.projectionMatrix.array),me.setUniform("projectionInv",fe.invProjectionMatrix.array),me.setUniform("viewInverseTranspose",Ie.array);var Fe=this._ssaoTexture,Re=this._blurTexture,Ue=this._blurTexture2;Fe.width=ie/2,Fe.height=ue/2,Re.width=ie,Re.height=ue,Ue.width=ie,Ue.height=ue,this._framebuffer.attach(Fe),this._framebuffer.bind(se),se.gl.clearColor(1,1,1,1),se.gl.clear(se.gl.COLOR_BUFFER_BIT),me.render(se),Ce.setUniform("textureSize",[ie/2,ue/2]),Ce.setUniform("projection",fe.projectionMatrix.array),this._framebuffer.attach(Re),Ce.setUniform("direction",0),Ce.setUniform("ssaoTexture",Fe),Ce.render(se),this._framebuffer.attach(Ue),Ce.setUniform("textureSize",[ie,ue]),Ce.setUniform("direction",1),Ce.setUniform("ssaoTexture",Re),Ce.render(se),this._framebuffer.unbind(se);var Ge=se.clearColor;se.gl.clearColor(Ge[0],Ge[1],Ge[2],Ge[3])},le.prototype.getTargetTexture=function(){return this._blurTexture2},le.prototype.setParameter=function(se,fe){se==="noiseTexSize"?this.setNoiseSize(fe):se==="kernelSize"?this.setKernelSize(fe):se==="intensity"?this._ssaoPass.material.set("intensity",fe):this._ssaoPass.setUniform(se,fe)},le.prototype.setKernelSize=function(se){this._kernelSize=se,this._ssaoPass.material.define("fragment","KERNEL_SIZE",se),this._kernels=this._kernels||[];for(var fe=0;fe<30;fe++)this._kernels[fe]=ne(se,fe*se,!!this._normalTex)},le.prototype.setNoiseSize=function(se){var fe=this._ssaoPass.getUniform("noiseTex");fe?(fe.data=ce(se),fe.width=fe.height=se,fe.dirty()):(fe=te(se),this._ssaoPass.setUniform("noiseTex",te(se))),this._ssaoPass.setUniform("noiseTexSize",[se,se])},le.prototype.dispose=function(se){this._blurTexture.dispose(se),this._ssaoTexture.dispose(se),this._blurTexture2.dispose(se)},Ne.a=le},function(He,Ne,be){"use strict";Ne.a=`@export ecgl.ssao.estimate
|
|
|
|
|
|
uniform sampler2D depthTex;
|
|
|
|
|
|
uniform sampler2D normalTex;
|
|
|
|
|
|
uniform sampler2D noiseTex;
|
|
|
|
|
|
uniform vec2 depthTexSize;
|
|
|
|
|
|
uniform vec2 noiseTexSize;
|
|
|
|
|
|
uniform mat4 projection;
|
|
|
|
|
|
uniform mat4 projectionInv;
|
|
|
|
|
|
uniform mat4 viewInverseTranspose;
|
|
|
|
|
|
uniform vec3 kernel[KERNEL_SIZE];
|
|
|
|
|
|
uniform float radius : 1;
|
|
|
|
|
|
uniform float power : 1;
|
|
|
|
|
|
uniform float bias: 1e-2;
|
|
|
|
|
|
uniform float intensity: 1.0;
|
|
|
|
|
|
varying vec2 v_Texcoord;
|
|
|
|
|
|
float ssaoEstimator(in vec3 originPos, in mat3 kernelBasis) {
|
|
|
float occlusion = 0.0;
|
|
|
|
|
|
for (int i = 0; i < KERNEL_SIZE; i++) {
|
|
|
vec3 samplePos = kernel[i];
|
|
|
#ifdef NORMALTEX_ENABLED
|
|
|
samplePos = kernelBasis * samplePos;
|
|
|
#endif
|
|
|
samplePos = samplePos * radius + originPos;
|
|
|
|
|
|
vec4 texCoord = projection * vec4(samplePos, 1.0);
|
|
|
texCoord.xy /= texCoord.w;
|
|
|
|
|
|
vec4 depthTexel = texture2D(depthTex, texCoord.xy * 0.5 + 0.5);
|
|
|
|
|
|
float sampleDepth = depthTexel.r * 2.0 - 1.0;
|
|
|
if (projection[3][3] == 0.0) {
|
|
|
sampleDepth = projection[3][2] / (sampleDepth * projection[2][3] - projection[2][2]);
|
|
|
}
|
|
|
else {
|
|
|
sampleDepth = (sampleDepth - projection[3][2]) / projection[2][2];
|
|
|
}
|
|
|
|
|
|
float rangeCheck = smoothstep(0.0, 1.0, radius / abs(originPos.z - sampleDepth));
|
|
|
occlusion += rangeCheck * step(samplePos.z, sampleDepth - bias);
|
|
|
}
|
|
|
#ifdef NORMALTEX_ENABLED
|
|
|
occlusion = 1.0 - occlusion / float(KERNEL_SIZE);
|
|
|
#else
|
|
|
occlusion = 1.0 - clamp((occlusion / float(KERNEL_SIZE) - 0.6) * 2.5, 0.0, 1.0);
|
|
|
#endif
|
|
|
return pow(occlusion, power);
|
|
|
}
|
|
|
|
|
|
void main()
|
|
|
{
|
|
|
|
|
|
vec4 depthTexel = texture2D(depthTex, v_Texcoord);
|
|
|
|
|
|
#ifdef NORMALTEX_ENABLED
|
|
|
vec4 tex = texture2D(normalTex, v_Texcoord);
|
|
|
if (dot(tex.rgb, tex.rgb) == 0.0) {
|
|
|
gl_FragColor = vec4(1.0);
|
|
|
return;
|
|
|
}
|
|
|
vec3 N = tex.rgb * 2.0 - 1.0;
|
|
|
N = (viewInverseTranspose * vec4(N, 0.0)).xyz;
|
|
|
|
|
|
vec2 noiseTexCoord = depthTexSize / vec2(noiseTexSize) * v_Texcoord;
|
|
|
vec3 rvec = texture2D(noiseTex, noiseTexCoord).rgb * 2.0 - 1.0;
|
|
|
vec3 T = normalize(rvec - N * dot(rvec, N));
|
|
|
vec3 BT = normalize(cross(N, T));
|
|
|
mat3 kernelBasis = mat3(T, BT, N);
|
|
|
#else
|
|
|
if (depthTexel.r > 0.99999) {
|
|
|
gl_FragColor = vec4(1.0);
|
|
|
return;
|
|
|
}
|
|
|
mat3 kernelBasis;
|
|
|
#endif
|
|
|
|
|
|
float z = depthTexel.r * 2.0 - 1.0;
|
|
|
|
|
|
vec4 projectedPos = vec4(v_Texcoord * 2.0 - 1.0, z, 1.0);
|
|
|
vec4 p4 = projectionInv * projectedPos;
|
|
|
|
|
|
vec3 position = p4.xyz / p4.w;
|
|
|
|
|
|
float ao = ssaoEstimator(position, kernelBasis);
|
|
|
ao = clamp(1.0 - (1.0 - ao) * intensity, 0.0, 1.0);
|
|
|
gl_FragColor = vec4(vec3(ao), 1.0);
|
|
|
}
|
|
|
|
|
|
@end
|
|
|
|
|
|
|
|
|
@export ecgl.ssao.blur
|
|
|
#define SHADER_NAME SSAO_BLUR
|
|
|
|
|
|
uniform sampler2D ssaoTexture;
|
|
|
|
|
|
#ifdef NORMALTEX_ENABLED
|
|
|
uniform sampler2D normalTex;
|
|
|
#endif
|
|
|
|
|
|
varying vec2 v_Texcoord;
|
|
|
|
|
|
uniform vec2 textureSize;
|
|
|
uniform float blurSize : 1.0;
|
|
|
|
|
|
uniform int direction: 0.0;
|
|
|
|
|
|
#ifdef DEPTHTEX_ENABLED
|
|
|
uniform sampler2D depthTex;
|
|
|
uniform mat4 projection;
|
|
|
uniform float depthRange : 0.5;
|
|
|
|
|
|
float getLinearDepth(vec2 coord)
|
|
|
{
|
|
|
float depth = texture2D(depthTex, coord).r * 2.0 - 1.0;
|
|
|
return projection[3][2] / (depth * projection[2][3] - projection[2][2]);
|
|
|
}
|
|
|
#endif
|
|
|
|
|
|
void main()
|
|
|
{
|
|
|
float kernel[5];
|
|
|
kernel[0] = 0.122581;
|
|
|
kernel[1] = 0.233062;
|
|
|
kernel[2] = 0.288713;
|
|
|
kernel[3] = 0.233062;
|
|
|
kernel[4] = 0.122581;
|
|
|
|
|
|
vec2 off = vec2(0.0);
|
|
|
if (direction == 0) {
|
|
|
off[0] = blurSize / textureSize.x;
|
|
|
}
|
|
|
else {
|
|
|
off[1] = blurSize / textureSize.y;
|
|
|
}
|
|
|
|
|
|
vec2 coord = v_Texcoord;
|
|
|
|
|
|
float sum = 0.0;
|
|
|
float weightAll = 0.0;
|
|
|
|
|
|
#ifdef NORMALTEX_ENABLED
|
|
|
vec3 centerNormal = texture2D(normalTex, v_Texcoord).rgb * 2.0 - 1.0;
|
|
|
#endif
|
|
|
#if defined(DEPTHTEX_ENABLED)
|
|
|
float centerDepth = getLinearDepth(v_Texcoord);
|
|
|
#endif
|
|
|
|
|
|
for (int i = 0; i < 5; i++) {
|
|
|
vec2 coord = clamp(v_Texcoord + vec2(float(i) - 2.0) * off, vec2(0.0), vec2(1.0));
|
|
|
|
|
|
float w = kernel[i];
|
|
|
#ifdef NORMALTEX_ENABLED
|
|
|
vec3 normal = texture2D(normalTex, coord).rgb * 2.0 - 1.0;
|
|
|
w *= clamp(dot(normal, centerNormal), 0.0, 1.0);
|
|
|
#endif
|
|
|
#ifdef DEPTHTEX_ENABLED
|
|
|
float d = getLinearDepth(coord);
|
|
|
w *= (1.0 - smoothstep(abs(centerDepth - d) / depthRange, 0.0, 1.0));
|
|
|
#endif
|
|
|
|
|
|
weightAll += w;
|
|
|
sum += texture2D(ssaoTexture, coord).r * w;
|
|
|
}
|
|
|
|
|
|
gl_FragColor = vec4(vec3(sum / weightAll), 1.0);
|
|
|
}
|
|
|
|
|
|
@end
|
|
|
`},function(He,Ne,be){"use strict";var _e=be(9),Me=be(4),ve=be(5),Ee=be(6),Pe=be(14),xe=be(7),pe=be(10),Ae=be(43),Se=be(165);xe.a.import(Se.a);function ce(te){te=te||{},this._ssrPass=new Pe.a({fragment:xe.a.source("ecgl.ssr.main"),clearColor:[0,0,0,0]}),this._blurPass1=new Pe.a({fragment:xe.a.source("ecgl.ssr.blur"),clearColor:[0,0,0,0]}),this._blurPass2=new Pe.a({fragment:xe.a.source("ecgl.ssr.blur"),clearColor:[0,0,0,0]}),this._ssrPass.setUniform("gBufferTexture1",te.normalTexture),this._ssrPass.setUniform("gBufferTexture2",te.depthTexture),this._blurPass1.setUniform("gBufferTexture1",te.normalTexture),this._blurPass1.setUniform("gBufferTexture2",te.depthTexture),this._blurPass2.setUniform("gBufferTexture1",te.normalTexture),this._blurPass2.setUniform("gBufferTexture2",te.depthTexture),this._blurPass2.material.define("fragment","VERTICAL"),this._blurPass2.material.define("fragment","BLEND"),this._texture1=new ve.a({type:Ee.a.HALF_FLOAT}),this._texture2=new ve.a({type:Ee.a.HALF_FLOAT}),this._texture3=new ve.a({type:Ee.a.HALF_FLOAT}),this._frameBuffer=new pe.a({depthBuffer:!1})}ce.prototype.update=function(te,ne,le,se){var fe=te.getWidth(),he=te.getHeight(),ie=te.getDevicePixelRatio(),ue=this._texture1,me=this._texture2,Ce=this._texture3;me.width=fe/2,me.height=he/2,ue.width=fe,ue.height=he,Ce.width=fe*ie,Ce.height=he*ie;var Ie=this._frameBuffer,Fe=this._ssrPass,Re=this._blurPass1,Ue=this._blurPass2,Ge=new _e.a;_e.a.transpose(Ge,ne.worldTransform),Fe.setUniform("sourceTexture",le),Fe.setUniform("projection",ne.projectionMatrix.array),Fe.setUniform("projectionInv",ne.invProjectionMatrix.array),Fe.setUniform("viewInverseTranspose",Ge.array),Fe.setUniform("nearZ",ne.near),Fe.setUniform("jitterOffset",se/30),Re.setUniform("textureSize",[fe/2,he/2]),Ue.setUniform("textureSize",[fe,he]),Ue.setUniform("sourceTexture",le),Re.setUniform("projection",ne.projectionMatrix.array),Ue.setUniform("projection",ne.projectionMatrix.array),Ie.attach(ue),Ie.bind(te),Fe.render(te),Ie.attach(me),Re.setUniform("texture",ue),Re.render(te),Ie.attach(Ce),Ue.setUniform("texture",me),Ue.render(te),Ie.unbind(te)},ce.prototype.getTargetTexture=function(){return this._texture3},ce.prototype.setParameter=function(te,ne){te==="maxIteration"?this._ssrPass.material.define("fragment","MAX_ITERATION",ne):this._ssrPass.setUniform(te,ne)},ce.prototype.setSSAOTexture=function(te){var ne=this._blurPass2;te?(ne.material.enableTexture("ssaoTex"),ne.material.set("ssaoTex",te)):ne.material.disableTexture("ssaoTex")},ce.prototype.dispose=function(te){this._texture1.dispose(te),this._texture2.dispose(te),this._texture3.dispose(te),this._frameBuffer.dispose(te)},Ne.a=ce},function(He,Ne,be){"use strict";Ne.a=`@export ecgl.ssr.main
|
|
|
|
|
|
#define MAX_ITERATION 20;
|
|
|
|
|
|
uniform sampler2D sourceTexture;
|
|
|
uniform sampler2D gBufferTexture1;
|
|
|
uniform sampler2D gBufferTexture2;
|
|
|
|
|
|
uniform mat4 projection;
|
|
|
uniform mat4 projectionInv;
|
|
|
uniform mat4 viewInverseTranspose;
|
|
|
|
|
|
uniform float maxRayDistance: 50;
|
|
|
|
|
|
uniform float pixelStride: 16;
|
|
|
uniform float pixelStrideZCutoff: 50;
|
|
|
uniform float screenEdgeFadeStart: 0.9;
|
|
|
uniform float eyeFadeStart : 0.2; uniform float eyeFadeEnd: 0.8;
|
|
|
uniform float minGlossiness: 0.2; uniform float zThicknessThreshold: 10;
|
|
|
|
|
|
uniform float nearZ;
|
|
|
uniform vec2 viewportSize : VIEWPORT_SIZE;
|
|
|
|
|
|
uniform float jitterOffset: 0;
|
|
|
|
|
|
varying vec2 v_Texcoord;
|
|
|
|
|
|
#ifdef DEPTH_DECODE
|
|
|
@import clay.util.decode_float
|
|
|
#endif
|
|
|
|
|
|
float fetchDepth(sampler2D depthTexture, vec2 uv)
|
|
|
{
|
|
|
vec4 depthTexel = texture2D(depthTexture, uv);
|
|
|
return depthTexel.r * 2.0 - 1.0;
|
|
|
}
|
|
|
|
|
|
float linearDepth(float depth)
|
|
|
{
|
|
|
if (projection[3][3] == 0.0) {
|
|
|
return projection[3][2] / (depth * projection[2][3] - projection[2][2]);
|
|
|
}
|
|
|
else {
|
|
|
return (depth - projection[3][2]) / projection[2][2];
|
|
|
}
|
|
|
}
|
|
|
|
|
|
bool rayIntersectDepth(float rayZNear, float rayZFar, vec2 hitPixel)
|
|
|
{
|
|
|
if (rayZFar > rayZNear)
|
|
|
{
|
|
|
float t = rayZFar; rayZFar = rayZNear; rayZNear = t;
|
|
|
}
|
|
|
float cameraZ = linearDepth(fetchDepth(gBufferTexture2, hitPixel));
|
|
|
return rayZFar <= cameraZ && rayZNear >= cameraZ - zThicknessThreshold;
|
|
|
}
|
|
|
|
|
|
|
|
|
bool traceScreenSpaceRay(
|
|
|
vec3 rayOrigin, vec3 rayDir, float jitter,
|
|
|
out vec2 hitPixel, out vec3 hitPoint, out float iterationCount
|
|
|
)
|
|
|
{
|
|
|
float rayLength = ((rayOrigin.z + rayDir.z * maxRayDistance) > -nearZ)
|
|
|
? (-nearZ - rayOrigin.z) / rayDir.z : maxRayDistance;
|
|
|
|
|
|
vec3 rayEnd = rayOrigin + rayDir * rayLength;
|
|
|
|
|
|
vec4 H0 = projection * vec4(rayOrigin, 1.0);
|
|
|
vec4 H1 = projection * vec4(rayEnd, 1.0);
|
|
|
|
|
|
float k0 = 1.0 / H0.w, k1 = 1.0 / H1.w;
|
|
|
|
|
|
vec3 Q0 = rayOrigin * k0, Q1 = rayEnd * k1;
|
|
|
|
|
|
vec2 P0 = (H0.xy * k0 * 0.5 + 0.5) * viewportSize;
|
|
|
vec2 P1 = (H1.xy * k1 * 0.5 + 0.5) * viewportSize;
|
|
|
|
|
|
P1 += dot(P1 - P0, P1 - P0) < 0.0001 ? 0.01 : 0.0;
|
|
|
vec2 delta = P1 - P0;
|
|
|
|
|
|
bool permute = false;
|
|
|
if (abs(delta.x) < abs(delta.y)) {
|
|
|
permute = true;
|
|
|
delta = delta.yx;
|
|
|
P0 = P0.yx;
|
|
|
P1 = P1.yx;
|
|
|
}
|
|
|
float stepDir = sign(delta.x);
|
|
|
float invdx = stepDir / delta.x;
|
|
|
|
|
|
vec3 dQ = (Q1 - Q0) * invdx;
|
|
|
float dk = (k1 - k0) * invdx;
|
|
|
|
|
|
vec2 dP = vec2(stepDir, delta.y * invdx);
|
|
|
|
|
|
float strideScaler = 1.0 - min(1.0, -rayOrigin.z / pixelStrideZCutoff);
|
|
|
float pixStride = 1.0 + strideScaler * pixelStride;
|
|
|
|
|
|
dP *= pixStride; dQ *= pixStride; dk *= pixStride;
|
|
|
|
|
|
vec4 pqk = vec4(P0, Q0.z, k0);
|
|
|
vec4 dPQK = vec4(dP, dQ.z, dk);
|
|
|
|
|
|
pqk += dPQK * jitter;
|
|
|
float rayZFar = (dPQK.z * 0.5 + pqk.z) / (dPQK.w * 0.5 + pqk.w);
|
|
|
float rayZNear;
|
|
|
|
|
|
bool intersect = false;
|
|
|
|
|
|
vec2 texelSize = 1.0 / viewportSize;
|
|
|
|
|
|
iterationCount = 0.0;
|
|
|
|
|
|
for (int i = 0; i < MAX_ITERATION; i++)
|
|
|
{
|
|
|
pqk += dPQK;
|
|
|
|
|
|
rayZNear = rayZFar;
|
|
|
rayZFar = (dPQK.z * 0.5 + pqk.z) / (dPQK.w * 0.5 + pqk.w);
|
|
|
|
|
|
hitPixel = permute ? pqk.yx : pqk.xy;
|
|
|
hitPixel *= texelSize;
|
|
|
|
|
|
intersect = rayIntersectDepth(rayZNear, rayZFar, hitPixel);
|
|
|
|
|
|
iterationCount += 1.0;
|
|
|
|
|
|
if (intersect) {
|
|
|
break;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
|
|
|
Q0.xy += dQ.xy * iterationCount;
|
|
|
Q0.z = pqk.z;
|
|
|
hitPoint = Q0 / pqk.w;
|
|
|
|
|
|
return intersect;
|
|
|
}
|
|
|
|
|
|
float calculateAlpha(
|
|
|
float iterationCount, float reflectivity,
|
|
|
vec2 hitPixel, vec3 hitPoint, float dist, vec3 rayDir
|
|
|
)
|
|
|
{
|
|
|
float alpha = clamp(reflectivity, 0.0, 1.0);
|
|
|
alpha *= 1.0 - (iterationCount / float(MAX_ITERATION));
|
|
|
vec2 hitPixelNDC = hitPixel * 2.0 - 1.0;
|
|
|
float maxDimension = min(1.0, max(abs(hitPixelNDC.x), abs(hitPixelNDC.y)));
|
|
|
alpha *= 1.0 - max(0.0, maxDimension - screenEdgeFadeStart) / (1.0 - screenEdgeFadeStart);
|
|
|
|
|
|
float _eyeFadeStart = eyeFadeStart;
|
|
|
float _eyeFadeEnd = eyeFadeEnd;
|
|
|
if (_eyeFadeStart > _eyeFadeEnd) {
|
|
|
float tmp = _eyeFadeEnd;
|
|
|
_eyeFadeEnd = _eyeFadeStart;
|
|
|
_eyeFadeStart = tmp;
|
|
|
}
|
|
|
|
|
|
float eyeDir = clamp(rayDir.z, _eyeFadeStart, _eyeFadeEnd);
|
|
|
alpha *= 1.0 - (eyeDir - _eyeFadeStart) / (_eyeFadeEnd - _eyeFadeStart);
|
|
|
|
|
|
alpha *= 1.0 - clamp(dist / maxRayDistance, 0.0, 1.0);
|
|
|
|
|
|
return alpha;
|
|
|
}
|
|
|
|
|
|
@import clay.util.rand
|
|
|
|
|
|
@import clay.util.rgbm
|
|
|
|
|
|
void main()
|
|
|
{
|
|
|
vec4 normalAndGloss = texture2D(gBufferTexture1, v_Texcoord);
|
|
|
|
|
|
if (dot(normalAndGloss.rgb, vec3(1.0)) == 0.0) {
|
|
|
discard;
|
|
|
}
|
|
|
|
|
|
float g = normalAndGloss.a;
|
|
|
if (g <= minGlossiness) {
|
|
|
discard;
|
|
|
}
|
|
|
|
|
|
float reflectivity = (g - minGlossiness) / (1.0 - minGlossiness);
|
|
|
|
|
|
vec3 N = normalAndGloss.rgb * 2.0 - 1.0;
|
|
|
N = normalize((viewInverseTranspose * vec4(N, 0.0)).xyz);
|
|
|
|
|
|
vec4 projectedPos = vec4(v_Texcoord * 2.0 - 1.0, fetchDepth(gBufferTexture2, v_Texcoord), 1.0);
|
|
|
vec4 pos = projectionInv * projectedPos;
|
|
|
vec3 rayOrigin = pos.xyz / pos.w;
|
|
|
|
|
|
vec3 rayDir = normalize(reflect(normalize(rayOrigin), N));
|
|
|
vec2 hitPixel;
|
|
|
vec3 hitPoint;
|
|
|
float iterationCount;
|
|
|
|
|
|
vec2 uv2 = v_Texcoord * viewportSize;
|
|
|
float jitter = rand(fract(v_Texcoord + jitterOffset));
|
|
|
|
|
|
bool intersect = traceScreenSpaceRay(rayOrigin, rayDir, jitter, hitPixel, hitPoint, iterationCount);
|
|
|
|
|
|
float dist = distance(rayOrigin, hitPoint);
|
|
|
|
|
|
float alpha = calculateAlpha(iterationCount, reflectivity, hitPixel, hitPoint, dist, rayDir) * float(intersect);
|
|
|
|
|
|
vec3 hitNormal = texture2D(gBufferTexture1, hitPixel).rgb * 2.0 - 1.0;
|
|
|
hitNormal = normalize((viewInverseTranspose * vec4(hitNormal, 0.0)).xyz);
|
|
|
|
|
|
if (dot(hitNormal, rayDir) >= 0.0) {
|
|
|
discard;
|
|
|
}
|
|
|
|
|
|
|
|
|
if (!intersect) {
|
|
|
discard;
|
|
|
}
|
|
|
vec4 color = decodeHDR(texture2D(sourceTexture, hitPixel));
|
|
|
gl_FragColor = encodeHDR(vec4(color.rgb * alpha, color.a));
|
|
|
}
|
|
|
@end
|
|
|
|
|
|
@export ecgl.ssr.blur
|
|
|
|
|
|
uniform sampler2D texture;
|
|
|
uniform sampler2D gBufferTexture1;
|
|
|
uniform sampler2D gBufferTexture2;
|
|
|
uniform mat4 projection;
|
|
|
uniform float depthRange : 0.05;
|
|
|
|
|
|
varying vec2 v_Texcoord;
|
|
|
|
|
|
uniform vec2 textureSize;
|
|
|
uniform float blurSize : 4.0;
|
|
|
|
|
|
#ifdef BLEND
|
|
|
#ifdef SSAOTEX_ENABLED
|
|
|
uniform sampler2D ssaoTex;
|
|
|
#endif
|
|
|
uniform sampler2D sourceTexture;
|
|
|
#endif
|
|
|
|
|
|
float getLinearDepth(vec2 coord)
|
|
|
{
|
|
|
float depth = texture2D(gBufferTexture2, coord).r * 2.0 - 1.0;
|
|
|
return projection[3][2] / (depth * projection[2][3] - projection[2][2]);
|
|
|
}
|
|
|
|
|
|
@import clay.util.rgbm
|
|
|
|
|
|
|
|
|
void main()
|
|
|
{
|
|
|
@import clay.compositor.kernel.gaussian_9
|
|
|
|
|
|
vec4 centerNTexel = texture2D(gBufferTexture1, v_Texcoord);
|
|
|
float g = centerNTexel.a;
|
|
|
float maxBlurSize = clamp(1.0 - g + 0.1, 0.0, 1.0) * blurSize;
|
|
|
#ifdef VERTICAL
|
|
|
vec2 off = vec2(0.0, maxBlurSize / textureSize.y);
|
|
|
#else
|
|
|
vec2 off = vec2(maxBlurSize / textureSize.x, 0.0);
|
|
|
#endif
|
|
|
|
|
|
vec2 coord = v_Texcoord;
|
|
|
|
|
|
vec4 sum = vec4(0.0);
|
|
|
float weightAll = 0.0;
|
|
|
|
|
|
vec3 cN = centerNTexel.rgb * 2.0 - 1.0;
|
|
|
float cD = getLinearDepth(v_Texcoord);
|
|
|
for (int i = 0; i < 9; i++) {
|
|
|
vec2 coord = clamp((float(i) - 4.0) * off + v_Texcoord, vec2(0.0), vec2(1.0));
|
|
|
float w = gaussianKernel[i]
|
|
|
* clamp(dot(cN, texture2D(gBufferTexture1, coord).rgb * 2.0 - 1.0), 0.0, 1.0);
|
|
|
float d = getLinearDepth(coord);
|
|
|
w *= (1.0 - smoothstep(abs(cD - d) / depthRange, 0.0, 1.0));
|
|
|
|
|
|
weightAll += w;
|
|
|
sum += decodeHDR(texture2D(texture, coord)) * w;
|
|
|
}
|
|
|
|
|
|
#ifdef BLEND
|
|
|
float aoFactor = 1.0;
|
|
|
#ifdef SSAOTEX_ENABLED
|
|
|
aoFactor = texture2D(ssaoTex, v_Texcoord).r;
|
|
|
#endif
|
|
|
gl_FragColor = encodeHDR(
|
|
|
sum / weightAll * aoFactor + decodeHDR(texture2D(sourceTexture, v_Texcoord))
|
|
|
);
|
|
|
#else
|
|
|
gl_FragColor = encodeHDR(sum / weightAll);
|
|
|
#endif
|
|
|
}
|
|
|
|
|
|
@end`},function(He,Ne,be){"use strict";Ne.a=[0,0,-.321585265978,-.154972575841,.458126042375,.188473391593,.842080129861,.527766490688,.147304551086,-.659453822776,-.331943915203,-.940619700594,.0479226680259,.54812163202,.701581552186,-.709825561388,-.295436780218,.940589268233,-.901489676764,.237713156085,.973570876096,-.109899459384,-.866792314779,-.451805525005,.330975007087,.800048655954,-.344275183665,.381779221166,-.386139432542,-.437418421534,-.576478634965,-.0148463392551,.385798197415,-.262426961053,-.666302061145,.682427250835,-.628010632582,-.732836215494,.10163141741,-.987658134403,.711995289051,-.320024291314,.0296005138058,.950296523438,.0130612307608,-.351024443122,-.879596633704,-.10478487883,.435712737232,.504254490347,.779203817497,.206477676721,.388264289969,-.896736162545,-.153106280781,-.629203242522,-.245517550697,.657969239148,.126830499058,.26862328493,-.634888119007,-.302301223431,.617074219636,.779817204925]},function(He,Ne,be){"use strict";var _e=be(5),Me=be(6),ve=be(7),Ee=be(10),Pe=be(17),xe=be(14),pe=be(54),Ae=be(168);ve.a.import(Ae.a);function Se(ne,le,se,fe,he){var ie=ne.gl;le.setUniform(ie,"1i",se,he),ie.activeTexture(ie.TEXTURE0+he),fe.isRenderable()?fe.bind(ne):fe.unbind(ne)}function ce(ne,le,se,fe,he){var ie,ue,me,Ce,Ie=ne.gl;return function(Fe,Re,Ue){if(!(Ce&&Ce.material===Fe.material)){var Ge=Fe.material,Je=Fe.__program,Qe=Ge.get("roughness");Qe==null&&(Qe=1);var rt=Ge.get("normalMap")||le,$e=Ge.get("roughnessMap"),qe=Ge.get("bumpMap"),ot=Ge.get("uvRepeat"),at=Ge.get("uvOffset"),ut=Ge.get("detailUvRepeat"),nt=Ge.get("detailUvOffset"),lt=!!qe&&Ge.isTextureEnabled("bumpMap"),yt=!!$e&&Ge.isTextureEnabled("roughnessMap"),ft=Ge.isDefined("fragment","DOUBLE_SIDED");qe=qe||se,$e=$e||fe,Ue!==Re?(Re.set("normalMap",rt),Re.set("bumpMap",qe),Re.set("roughnessMap",$e),Re.set("useBumpMap",lt),Re.set("useRoughnessMap",yt),Re.set("doubleSide",ft),ot!=null&&Re.set("uvRepeat",ot),at!=null&&Re.set("uvOffset",at),ut!=null&&Re.set("detailUvRepeat",ut),nt!=null&&Re.set("detailUvOffset",nt),Re.set("roughness",Qe)):(Je.setUniform(Ie,"1f","roughness",Qe),ie!==rt&&Se(ne,Je,"normalMap",rt,0),ue!==qe&&qe&&Se(ne,Je,"bumpMap",qe,1),me!==$e&&$e&&Se(ne,Je,"roughnessMap",$e,2),ot!=null&&Je.setUniform(Ie,"2f","uvRepeat",ot),at!=null&&Je.setUniform(Ie,"2f","uvOffset",at),ut!=null&&Je.setUniform(Ie,"2f","detailUvRepeat",ut),nt!=null&&Je.setUniform(Ie,"2f","detailUvOffset",nt),Je.setUniform(Ie,"1i","useBumpMap",+lt),Je.setUniform(Ie,"1i","useRoughnessMap",+yt),Je.setUniform(Ie,"1i","doubleSide",+ft)),ie=rt,ue=qe,me=$e,Ce=Fe}}}function te(ne){ne=ne||{},this._depthTex=new _e.a({format:Me.a.DEPTH_COMPONENT,type:Me.a.UNSIGNED_INT}),this._normalTex=new _e.a({type:Me.a.HALF_FLOAT}),this._framebuffer=new Ee.a,this._framebuffer.attach(this._normalTex),this._framebuffer.attach(this._depthTex,Ee.a.DEPTH_ATTACHMENT),this._normalMaterial=new Pe.a({shader:new ve.a(ve.a.source("ecgl.normal.vertex"),ve.a.source("ecgl.normal.fragment"))}),this._normalMaterial.enableTexture(["normalMap","bumpMap","roughnessMap"]),this._defaultNormalMap=pe.a.createBlank("#000"),this._defaultBumpMap=pe.a.createBlank("#000"),this._defaultRoughessMap=pe.a.createBlank("#000"),this._debugPass=new xe.a({fragment:ve.a.source("clay.compositor.output")}),this._debugPass.setUniform("texture",this._normalTex),this._debugPass.material.undefine("fragment","OUTPUT_ALPHA")}te.prototype.getDepthTexture=function(){return this._depthTex},te.prototype.getNormalTexture=function(){return this._normalTex},te.prototype.update=function(ne,le,se){var fe=ne.getWidth(),he=ne.getHeight(),ie=this._depthTex,ue=this._normalTex,me=this._normalMaterial;ie.width=fe,ie.height=he,ue.width=fe,ue.height=he;var Ce=le.opaqueList;this._framebuffer.bind(ne),ne.gl.clearColor(0,0,0,0),ne.gl.clear(ne.gl.COLOR_BUFFER_BIT|ne.gl.DEPTH_BUFFER_BIT),ne.gl.disable(ne.gl.BLEND),ne.renderPass(Ce,se,{getMaterial:function(){return me},ifRender:function(Ie){return Ie.renderNormal},beforeRender:ce(ne,this._defaultNormalMap,this._defaultBumpMap,this._defaultRoughessMap,this._normalMaterial),sort:ne.opaqueSortCompare}),this._framebuffer.unbind(ne)},te.prototype.renderDebug=function(ne){this._debugPass.render(ne)},te.prototype.dispose=function(ne){this._depthTex.dispose(ne),this._normalTex.dispose(ne)},Ne.a=te},function(He,Ne,be){"use strict";Ne.a=`@export ecgl.normal.vertex
|
|
|
|
|
|
@import ecgl.common.transformUniforms
|
|
|
|
|
|
@import ecgl.common.uv.header
|
|
|
|
|
|
@import ecgl.common.attributes
|
|
|
|
|
|
varying vec3 v_Normal;
|
|
|
varying vec3 v_WorldPosition;
|
|
|
|
|
|
@import ecgl.common.normalMap.vertexHeader
|
|
|
|
|
|
@import ecgl.common.vertexAnimation.header
|
|
|
|
|
|
void main()
|
|
|
{
|
|
|
|
|
|
@import ecgl.common.vertexAnimation.main
|
|
|
|
|
|
@import ecgl.common.uv.main
|
|
|
|
|
|
v_Normal = normalize((worldInverseTranspose * vec4(normal, 0.0)).xyz);
|
|
|
v_WorldPosition = (world * vec4(pos, 1.0)).xyz;
|
|
|
|
|
|
@import ecgl.common.normalMap.vertexMain
|
|
|
|
|
|
gl_Position = worldViewProjection * vec4(pos, 1.0);
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@end
|
|
|
|
|
|
|
|
|
@export ecgl.normal.fragment
|
|
|
|
|
|
#define ROUGHNESS_CHANEL 0
|
|
|
|
|
|
uniform bool useBumpMap;
|
|
|
uniform bool useRoughnessMap;
|
|
|
uniform bool doubleSide;
|
|
|
uniform float roughness;
|
|
|
|
|
|
@import ecgl.common.uv.fragmentHeader
|
|
|
|
|
|
varying vec3 v_Normal;
|
|
|
varying vec3 v_WorldPosition;
|
|
|
|
|
|
uniform mat4 viewInverse : VIEWINVERSE;
|
|
|
|
|
|
@import ecgl.common.normalMap.fragmentHeader
|
|
|
@import ecgl.common.bumpMap.header
|
|
|
|
|
|
uniform sampler2D roughnessMap;
|
|
|
|
|
|
void main()
|
|
|
{
|
|
|
vec3 N = v_Normal;
|
|
|
|
|
|
bool flipNormal = false;
|
|
|
if (doubleSide) {
|
|
|
vec3 eyePos = viewInverse[3].xyz;
|
|
|
vec3 V = normalize(eyePos - v_WorldPosition);
|
|
|
|
|
|
if (dot(N, V) < 0.0) {
|
|
|
flipNormal = true;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@import ecgl.common.normalMap.fragmentMain
|
|
|
|
|
|
if (useBumpMap) {
|
|
|
N = bumpNormal(v_WorldPosition, v_Normal, N);
|
|
|
}
|
|
|
|
|
|
float g = 1.0 - roughness;
|
|
|
|
|
|
if (useRoughnessMap) {
|
|
|
float g2 = 1.0 - texture2D(roughnessMap, v_DetailTexcoord)[ROUGHNESS_CHANEL];
|
|
|
g = clamp(g2 + (g - 0.5) * 2.0, 0.0, 1.0);
|
|
|
}
|
|
|
|
|
|
if (flipNormal) {
|
|
|
N = -N;
|
|
|
}
|
|
|
|
|
|
gl_FragColor.rgb = (N.xyz + 1.0) * 0.5;
|
|
|
gl_FragColor.a = g;
|
|
|
}
|
|
|
@end`},function(He,Ne,be){"use strict";var _e=be(9),Me=be(4),ve=be(5),Ee=be(6),Pe=be(14),xe=be(7),pe=be(10);function Ae(Se){Se=Se||{},this._edgePass=new Pe.a({fragment:xe.a.source("ecgl.edge")}),this._edgePass.setUniform("normalTexture",Se.normalTexture),this._edgePass.setUniform("depthTexture",Se.depthTexture),this._targetTexture=new ve.a({type:Ee.a.HALF_FLOAT}),this._frameBuffer=new pe.a,this._frameBuffer.attach(this._targetTexture)}Ae.prototype.update=function(Se,ce,te,ne){var le=Se.getWidth(),se=Se.getHeight(),fe=this._targetTexture;fe.width=le,fe.height=se;var he=this._frameBuffer;he.bind(Se),this._edgePass.setUniform("projectionInv",ce.invProjectionMatrix.array),this._edgePass.setUniform("textureSize",[le,se]),this._edgePass.setUniform("texture",te),this._edgePass.render(Se),he.unbind(Se)},Ae.prototype.getTargetTexture=function(){return this._targetTexture},Ae.prototype.setParameter=function(Se,ce){this._edgePass.setUniform(Se,ce)},Ae.prototype.dispose=function(Se){this._targetTexture.dispose(Se),this._frameBuffer.dispose(Se)},Ne.a=Ae},function(He,Ne,be){"use strict";Ne.a={type:"compositor",nodes:[{name:"source",type:"texture",outputs:{color:{}}},{name:"source_half",shader:"#source(clay.compositor.downsample)",inputs:{texture:"source"},outputs:{color:{parameters:{width:"expr(width * 1.0 / 2)",height:"expr(height * 1.0 / 2)",type:"HALF_FLOAT"}}},parameters:{textureSize:"expr( [width * 1.0, height * 1.0] )"}},{name:"bright",shader:"#source(clay.compositor.bright)",inputs:{texture:"source_half"},outputs:{color:{parameters:{width:"expr(width * 1.0 / 2)",height:"expr(height * 1.0 / 2)",type:"HALF_FLOAT"}}},parameters:{threshold:2,scale:4,textureSize:"expr([width * 1.0 / 2, height / 2])"}},{name:"bright_downsample_4",shader:"#source(clay.compositor.downsample)",inputs:{texture:"bright"},outputs:{color:{parameters:{width:"expr(width * 1.0 / 4)",height:"expr(height * 1.0 / 4)",type:"HALF_FLOAT"}}},parameters:{textureSize:"expr( [width * 1.0 / 2, height / 2] )"}},{name:"bright_downsample_8",shader:"#source(clay.compositor.downsample)",inputs:{texture:"bright_downsample_4"},outputs:{color:{parameters:{width:"expr(width * 1.0 / 8)",height:"expr(height * 1.0 / 8)",type:"HALF_FLOAT"}}},parameters:{textureSize:"expr( [width * 1.0 / 4, height / 4] )"}},{name:"bright_downsample_16",shader:"#source(clay.compositor.downsample)",inputs:{texture:"bright_downsample_8"},outputs:{color:{parameters:{width:"expr(width * 1.0 / 16)",height:"expr(height * 1.0 / 16)",type:"HALF_FLOAT"}}},parameters:{textureSize:"expr( [width * 1.0 / 8, height / 8] )"}},{name:"bright_downsample_32",shader:"#source(clay.compositor.downsample)",inputs:{texture:"bright_downsample_16"},outputs:{color:{parameters:{width:"expr(width * 1.0 / 32)",height:"expr(height * 1.0 / 32)",type:"HALF_FLOAT"}}},parameters:{textureSize:"expr( [width * 1.0 / 16, height / 16] )"}},{name:"bright_upsample_16_blur_h",shader:"#source(clay.compositor.gaussian_blur)",inputs:{texture:"bright_downsample_32"},outputs:{color:{parameters:{width:"expr(width * 1.0 / 16)",height:"expr(height * 1.0 / 16)",type:"HALF_FLOAT"}}},parameters:{blurSize:1,blurDir:0,textureSize:"expr( [width * 1.0 / 32, height / 32] )"}},{name:"bright_upsample_16_blur_v",shader:"#source(clay.compositor.gaussian_blur)",inputs:{texture:"bright_upsample_16_blur_h"},outputs:{color:{parameters:{width:"expr(width * 1.0 / 16)",height:"expr(height * 1.0 / 16)",type:"HALF_FLOAT"}}},parameters:{blurSize:1,blurDir:1,textureSize:"expr( [width * 1.0 / 16, height * 1.0 / 16] )"}},{name:"bright_upsample_8_blur_h",shader:"#source(clay.compositor.gaussian_blur)",inputs:{texture:"bright_downsample_16"},outputs:{color:{parameters:{width:"expr(width * 1.0 / 8)",height:"expr(height * 1.0 / 8)",type:"HALF_FLOAT"}}},parameters:{blurSize:1,blurDir:0,textureSize:"expr( [width * 1.0 / 16, height * 1.0 / 16] )"}},{name:"bright_upsample_8_blur_v",shader:"#source(clay.compositor.gaussian_blur)",inputs:{texture:"bright_upsample_8_blur_h"},outputs:{color:{parameters:{width:"expr(width * 1.0 / 8)",height:"expr(height * 1.0 / 8)",type:"HALF_FLOAT"}}},parameters:{blurSize:1,blurDir:1,textureSize:"expr( [width * 1.0 / 8, height * 1.0 / 8] )"}},{name:"bright_upsample_8_blend",shader:"#source(clay.compositor.blend)",inputs:{texture1:"bright_upsample_8_blur_v",texture2:"bright_upsample_16_blur_v"},outputs:{color:{parameters:{width:"expr(width * 1.0 / 8)",height:"expr(height * 1.0 / 8)",type:"HALF_FLOAT"}}},parameters:{weight1:.3,weight2:.7}},{name:"bright_upsample_4_blur_h",shader:"#source(clay.compositor.gaussian_blur)",inputs:{texture:"bright_downsample_8"},outputs:{color:{parameters:{width:"expr(width * 1.0 / 4)",height:"expr(height * 1.0 / 4)",type:"HALF_FLOAT"}}},parameters:{blurSize:1,blurDir:0,textureSize:"expr( [width * 1.0 / 8, height * 1.0 / 8] )"}},{name:"bright_upsample_4_blur_v",shader:"#source(clay.compositor.gaussian_blur)",inputs:{texture:"bright_upsample_4_blur_h"},outputs:{color:{parameters:{width:"expr(width * 1.0 / 4)",height:"expr(height * 1.0 / 4)",type:"HALF_FLOAT"}}},parameters:{blurSize:1,blurDir:1,textureSize:"expr( [width * 1.0 / 4, height * 1.0 / 4] )"}},{name:"bright_upsample_4_blend",shader:"#source(clay.compositor.blend)",inputs:{texture1:"bright_upsample_4_blur_v",texture2:"bright_upsample_8_blend"},outputs:{color:{parameters:{width:"expr(width * 1.0 / 4)",height:"expr(height * 1.0 / 4)",type:"HALF_FLOAT"}}},parameters:{weight1:.3,weight2:.7}},{name:"bright_upsample_2_blur_h",shader:"#source(clay.compositor.gaussian_blur)",inputs:{texture:"bright_downsample_4"},outputs:{color:{parameters:{width:"expr(width * 1.0 / 2)",height:"expr(height * 1.0 / 2)",type:"HALF_FLOAT"}}},parameters:{blurSize:1,blurDir:0,textureSize:"expr( [width * 1.0 / 4, height * 1.0 / 4] )"}},{name:"bright_upsample_2_blur_v",shader:"#source(clay.compositor.gaussian_blur)",inputs:{texture:"bright_upsample_2_blur_h"},outputs:{color:{parameters:{width:"expr(width * 1.0 / 2)",height:"expr(height * 1.0 / 2)",type:"HALF_FLOAT"}}},parameters:{blurSize:1,blurDir:1,textureSize:"expr( [width * 1.0 / 2, height * 1.0 / 2] )"}},{name:"bright_upsample_2_blend",shader:"#source(clay.compositor.blend)",inputs:{texture1:"bright_upsample_2_blur_v",texture2:"bright_upsample_4_blend"},outputs:{color:{parameters:{width:"expr(width * 1.0 / 2)",height:"expr(height * 1.0 / 2)",type:"HALF_FLOAT"}}},parameters:{weight1:.3,weight2:.7}},{name:"bright_upsample_full_blur_h",shader:"#source(clay.compositor.gaussian_blur)",inputs:{texture:"bright"},outputs:{color:{parameters:{width:"expr(width * 1.0)",height:"expr(height * 1.0)",type:"HALF_FLOAT"}}},parameters:{blurSize:1,blurDir:0,textureSize:"expr( [width * 1.0 / 2, height * 1.0 / 2] )"}},{name:"bright_upsample_full_blur_v",shader:"#source(clay.compositor.gaussian_blur)",inputs:{texture:"bright_upsample_full_blur_h"},outputs:{color:{parameters:{width:"expr(width * 1.0)",height:"expr(height * 1.0)",type:"HALF_FLOAT"}}},parameters:{blurSize:1,blurDir:1,textureSize:"expr( [width * 1.0, height * 1.0] )"}},{name:"bloom_composite",shader:"#source(clay.compositor.blend)",inputs:{texture1:"bright_upsample_full_blur_v",texture2:"bright_upsample_2_blend"},outputs:{color:{parameters:{width:"expr(width * 1.0)",height:"expr(height * 1.0)",type:"HALF_FLOAT"}}},parameters:{weight1:.3,weight2:.7}},{name:"coc",shader:"#source(ecgl.dof.coc)",outputs:{color:{parameters:{minFilter:"NEAREST",magFilter:"NEAREST",width:"expr(width * 1.0)",height:"expr(height * 1.0)"}}},parameters:{focalDist:50,focalRange:30}},{name:"dof_far_blur",shader:"#source(ecgl.dof.diskBlur)",inputs:{texture:"source",coc:"coc"},outputs:{color:{parameters:{width:"expr(width * 1.0)",height:"expr(height * 1.0)",type:"HALF_FLOAT"}}},parameters:{textureSize:"expr( [width * 1.0, height * 1.0] )"}},{name:"dof_near_blur",shader:"#source(ecgl.dof.diskBlur)",inputs:{texture:"source",coc:"coc"},outputs:{color:{parameters:{width:"expr(width * 1.0)",height:"expr(height * 1.0)",type:"HALF_FLOAT"}}},parameters:{textureSize:"expr( [width * 1.0, height * 1.0] )"},defines:{BLUR_NEARFIELD:null}},{name:"dof_coc_blur",shader:"#source(ecgl.dof.diskBlur)",inputs:{texture:"coc"},outputs:{color:{parameters:{minFilter:"NEAREST",magFilter:"NEAREST",width:"expr(width * 1.0)",height:"expr(height * 1.0)"}}},parameters:{textureSize:"expr( [width * 1.0, height * 1.0] )"},defines:{BLUR_COC:null}},{name:"dof_composite",shader:"#source(ecgl.dof.composite)",inputs:{original:"source",blurred:"dof_far_blur",nearfield:"dof_near_blur",coc:"coc",nearcoc:"dof_coc_blur"},outputs:{color:{parameters:{width:"expr(width * 1.0)",height:"expr(height * 1.0)",type:"HALF_FLOAT"}}}},{name:"composite",shader:"#source(clay.compositor.hdr.composite)",inputs:{texture:"source",bloom:"bloom_composite"},defines:{}},{name:"FXAA",shader:"#source(clay.compositor.fxaa)",inputs:{texture:"composite"}}]}},function(He,Ne,be){"use strict";Ne.a=`@export clay.compositor.kernel.gaussian_9
|
|
|
float gaussianKernel[9];
|
|
|
gaussianKernel[0] = 0.07;
|
|
|
gaussianKernel[1] = 0.09;
|
|
|
gaussianKernel[2] = 0.12;
|
|
|
gaussianKernel[3] = 0.14;
|
|
|
gaussianKernel[4] = 0.16;
|
|
|
gaussianKernel[5] = 0.14;
|
|
|
gaussianKernel[6] = 0.12;
|
|
|
gaussianKernel[7] = 0.09;
|
|
|
gaussianKernel[8] = 0.07;
|
|
|
@end
|
|
|
@export clay.compositor.kernel.gaussian_13
|
|
|
float gaussianKernel[13];
|
|
|
gaussianKernel[0] = 0.02;
|
|
|
gaussianKernel[1] = 0.03;
|
|
|
gaussianKernel[2] = 0.06;
|
|
|
gaussianKernel[3] = 0.08;
|
|
|
gaussianKernel[4] = 0.11;
|
|
|
gaussianKernel[5] = 0.13;
|
|
|
gaussianKernel[6] = 0.14;
|
|
|
gaussianKernel[7] = 0.13;
|
|
|
gaussianKernel[8] = 0.11;
|
|
|
gaussianKernel[9] = 0.08;
|
|
|
gaussianKernel[10] = 0.06;
|
|
|
gaussianKernel[11] = 0.03;
|
|
|
gaussianKernel[12] = 0.02;
|
|
|
@end
|
|
|
@export clay.compositor.gaussian_blur
|
|
|
#define SHADER_NAME gaussian_blur
|
|
|
uniform sampler2D texture;varying vec2 v_Texcoord;
|
|
|
uniform float blurSize : 2.0;
|
|
|
uniform vec2 textureSize : [512.0, 512.0];
|
|
|
uniform float blurDir : 0.0;
|
|
|
@import clay.util.rgbm
|
|
|
@import clay.util.clamp_sample
|
|
|
void main (void)
|
|
|
{
|
|
|
@import clay.compositor.kernel.gaussian_9
|
|
|
vec2 off = blurSize / textureSize;
|
|
|
off *= vec2(1.0 - blurDir, blurDir);
|
|
|
vec4 sum = vec4(0.0);
|
|
|
float weightAll = 0.0;
|
|
|
for (int i = 0; i < 9; i++) {
|
|
|
float w = gaussianKernel[i];
|
|
|
vec4 texel = decodeHDR(clampSample(texture, v_Texcoord + float(i - 4) * off));
|
|
|
sum += texel * w;
|
|
|
weightAll += w;
|
|
|
}
|
|
|
gl_FragColor = encodeHDR(sum / max(weightAll, 0.01));
|
|
|
}
|
|
|
@end
|
|
|
`},function(He,Ne,be){"use strict";Ne.a=`
|
|
|
@export clay.compositor.lut
|
|
|
varying vec2 v_Texcoord;
|
|
|
uniform sampler2D texture;
|
|
|
uniform sampler2D lookup;
|
|
|
void main()
|
|
|
{
|
|
|
vec4 tex = texture2D(texture, v_Texcoord);
|
|
|
float blueColor = tex.b * 63.0;
|
|
|
vec2 quad1;
|
|
|
quad1.y = floor(floor(blueColor) / 8.0);
|
|
|
quad1.x = floor(blueColor) - (quad1.y * 8.0);
|
|
|
vec2 quad2;
|
|
|
quad2.y = floor(ceil(blueColor) / 8.0);
|
|
|
quad2.x = ceil(blueColor) - (quad2.y * 8.0);
|
|
|
vec2 texPos1;
|
|
|
texPos1.x = (quad1.x * 0.125) + 0.5/512.0 + ((0.125 - 1.0/512.0) * tex.r);
|
|
|
texPos1.y = (quad1.y * 0.125) + 0.5/512.0 + ((0.125 - 1.0/512.0) * tex.g);
|
|
|
vec2 texPos2;
|
|
|
texPos2.x = (quad2.x * 0.125) + 0.5/512.0 + ((0.125 - 1.0/512.0) * tex.r);
|
|
|
texPos2.y = (quad2.y * 0.125) + 0.5/512.0 + ((0.125 - 1.0/512.0) * tex.g);
|
|
|
vec4 newColor1 = texture2D(lookup, texPos1);
|
|
|
vec4 newColor2 = texture2D(lookup, texPos2);
|
|
|
vec4 newColor = mix(newColor1, newColor2, fract(blueColor));
|
|
|
gl_FragColor = vec4(newColor.rgb, tex.w);
|
|
|
}
|
|
|
@end`},function(He,Ne,be){"use strict";Ne.a=`@export clay.compositor.output
|
|
|
#define OUTPUT_ALPHA
|
|
|
varying vec2 v_Texcoord;
|
|
|
uniform sampler2D texture;
|
|
|
@import clay.util.rgbm
|
|
|
void main()
|
|
|
{
|
|
|
vec4 tex = decodeHDR(texture2D(texture, v_Texcoord));
|
|
|
gl_FragColor.rgb = tex.rgb;
|
|
|
#ifdef OUTPUT_ALPHA
|
|
|
gl_FragColor.a = tex.a;
|
|
|
#else
|
|
|
gl_FragColor.a = 1.0;
|
|
|
#endif
|
|
|
gl_FragColor = encodeHDR(gl_FragColor);
|
|
|
#ifdef PREMULTIPLY_ALPHA
|
|
|
gl_FragColor.rgb *= gl_FragColor.a;
|
|
|
#endif
|
|
|
}
|
|
|
@end`},function(He,Ne,be){"use strict";Ne.a=`@export clay.compositor.bright
|
|
|
uniform sampler2D texture;
|
|
|
uniform float threshold : 1;
|
|
|
uniform float scale : 1.0;
|
|
|
uniform vec2 textureSize: [512, 512];
|
|
|
varying vec2 v_Texcoord;
|
|
|
const vec3 lumWeight = vec3(0.2125, 0.7154, 0.0721);
|
|
|
@import clay.util.rgbm
|
|
|
vec4 median(vec4 a, vec4 b, vec4 c)
|
|
|
{
|
|
|
return a + b + c - min(min(a, b), c) - max(max(a, b), c);
|
|
|
}
|
|
|
void main()
|
|
|
{
|
|
|
vec4 texel = decodeHDR(texture2D(texture, v_Texcoord));
|
|
|
#ifdef ANTI_FLICKER
|
|
|
vec3 d = 1.0 / textureSize.xyx * vec3(1.0, 1.0, 0.0);
|
|
|
vec4 s1 = decodeHDR(texture2D(texture, v_Texcoord - d.xz));
|
|
|
vec4 s2 = decodeHDR(texture2D(texture, v_Texcoord + d.xz));
|
|
|
vec4 s3 = decodeHDR(texture2D(texture, v_Texcoord - d.zy));
|
|
|
vec4 s4 = decodeHDR(texture2D(texture, v_Texcoord + d.zy));
|
|
|
texel = median(median(texel, s1, s2), s3, s4);
|
|
|
#endif
|
|
|
float lum = dot(texel.rgb , lumWeight);
|
|
|
vec4 color;
|
|
|
if (lum > threshold && texel.a > 0.0)
|
|
|
{
|
|
|
color = vec4(texel.rgb * scale, texel.a * scale);
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
color = vec4(0.0);
|
|
|
}
|
|
|
gl_FragColor = encodeHDR(color);
|
|
|
}
|
|
|
@end
|
|
|
`},function(He,Ne,be){"use strict";Ne.a=`@export clay.compositor.downsample
|
|
|
uniform sampler2D texture;
|
|
|
uniform vec2 textureSize : [512, 512];
|
|
|
varying vec2 v_Texcoord;
|
|
|
@import clay.util.rgbm
|
|
|
float brightness(vec3 c)
|
|
|
{
|
|
|
return max(max(c.r, c.g), c.b);
|
|
|
}
|
|
|
@import clay.util.clamp_sample
|
|
|
void main()
|
|
|
{
|
|
|
vec4 d = vec4(-1.0, -1.0, 1.0, 1.0) / textureSize.xyxy;
|
|
|
#ifdef ANTI_FLICKER
|
|
|
vec3 s1 = decodeHDR(clampSample(texture, v_Texcoord + d.xy)).rgb;
|
|
|
vec3 s2 = decodeHDR(clampSample(texture, v_Texcoord + d.zy)).rgb;
|
|
|
vec3 s3 = decodeHDR(clampSample(texture, v_Texcoord + d.xw)).rgb;
|
|
|
vec3 s4 = decodeHDR(clampSample(texture, v_Texcoord + d.zw)).rgb;
|
|
|
float s1w = 1.0 / (brightness(s1) + 1.0);
|
|
|
float s2w = 1.0 / (brightness(s2) + 1.0);
|
|
|
float s3w = 1.0 / (brightness(s3) + 1.0);
|
|
|
float s4w = 1.0 / (brightness(s4) + 1.0);
|
|
|
float oneDivideSum = 1.0 / (s1w + s2w + s3w + s4w);
|
|
|
vec4 color = vec4(
|
|
|
(s1 * s1w + s2 * s2w + s3 * s3w + s4 * s4w) * oneDivideSum,
|
|
|
1.0
|
|
|
);
|
|
|
#else
|
|
|
vec4 color = decodeHDR(clampSample(texture, v_Texcoord + d.xy));
|
|
|
color += decodeHDR(clampSample(texture, v_Texcoord + d.zy));
|
|
|
color += decodeHDR(clampSample(texture, v_Texcoord + d.xw));
|
|
|
color += decodeHDR(clampSample(texture, v_Texcoord + d.zw));
|
|
|
color *= 0.25;
|
|
|
#endif
|
|
|
gl_FragColor = encodeHDR(color);
|
|
|
}
|
|
|
@end`},function(He,Ne,be){"use strict";Ne.a=`
|
|
|
@export clay.compositor.upsample
|
|
|
#define HIGH_QUALITY
|
|
|
uniform sampler2D texture;
|
|
|
uniform vec2 textureSize : [512, 512];
|
|
|
uniform float sampleScale: 0.5;
|
|
|
varying vec2 v_Texcoord;
|
|
|
@import clay.util.rgbm
|
|
|
@import clay.util.clamp_sample
|
|
|
void main()
|
|
|
{
|
|
|
#ifdef HIGH_QUALITY
|
|
|
vec4 d = vec4(1.0, 1.0, -1.0, 0.0) / textureSize.xyxy * sampleScale;
|
|
|
vec4 s;
|
|
|
s = decodeHDR(clampSample(texture, v_Texcoord - d.xy));
|
|
|
s += decodeHDR(clampSample(texture, v_Texcoord - d.wy)) * 2.0;
|
|
|
s += decodeHDR(clampSample(texture, v_Texcoord - d.zy));
|
|
|
s += decodeHDR(clampSample(texture, v_Texcoord + d.zw)) * 2.0;
|
|
|
s += decodeHDR(clampSample(texture, v_Texcoord )) * 4.0;
|
|
|
s += decodeHDR(clampSample(texture, v_Texcoord + d.xw)) * 2.0;
|
|
|
s += decodeHDR(clampSample(texture, v_Texcoord + d.zy));
|
|
|
s += decodeHDR(clampSample(texture, v_Texcoord + d.wy)) * 2.0;
|
|
|
s += decodeHDR(clampSample(texture, v_Texcoord + d.xy));
|
|
|
gl_FragColor = encodeHDR(s / 16.0);
|
|
|
#else
|
|
|
vec4 d = vec4(-1.0, -1.0, +1.0, +1.0) / textureSize.xyxy;
|
|
|
vec4 s;
|
|
|
s = decodeHDR(clampSample(texture, v_Texcoord + d.xy));
|
|
|
s += decodeHDR(clampSample(texture, v_Texcoord + d.zy));
|
|
|
s += decodeHDR(clampSample(texture, v_Texcoord + d.xw));
|
|
|
s += decodeHDR(clampSample(texture, v_Texcoord + d.zw));
|
|
|
gl_FragColor = encodeHDR(s / 4.0);
|
|
|
#endif
|
|
|
}
|
|
|
@end`},function(He,Ne,be){"use strict";Ne.a=`@export clay.compositor.hdr.composite
|
|
|
uniform sampler2D texture;
|
|
|
#ifdef BLOOM_ENABLED
|
|
|
uniform sampler2D bloom;
|
|
|
#endif
|
|
|
#ifdef LENSFLARE_ENABLED
|
|
|
uniform sampler2D lensflare;
|
|
|
uniform sampler2D lensdirt;
|
|
|
#endif
|
|
|
#ifdef LUM_ENABLED
|
|
|
uniform sampler2D lum;
|
|
|
#endif
|
|
|
#ifdef LUT_ENABLED
|
|
|
uniform sampler2D lut;
|
|
|
#endif
|
|
|
#ifdef COLOR_CORRECTION
|
|
|
uniform float brightness : 0.0;
|
|
|
uniform float contrast : 1.0;
|
|
|
uniform float saturation : 1.0;
|
|
|
#endif
|
|
|
#ifdef VIGNETTE
|
|
|
uniform float vignetteDarkness: 1.0;
|
|
|
uniform float vignetteOffset: 1.0;
|
|
|
#endif
|
|
|
uniform float exposure : 1.0;
|
|
|
uniform float bloomIntensity : 0.25;
|
|
|
uniform float lensflareIntensity : 1;
|
|
|
varying vec2 v_Texcoord;
|
|
|
@import clay.util.srgb
|
|
|
vec3 ACESToneMapping(vec3 color)
|
|
|
{
|
|
|
const float A = 2.51;
|
|
|
const float B = 0.03;
|
|
|
const float C = 2.43;
|
|
|
const float D = 0.59;
|
|
|
const float E = 0.14;
|
|
|
return (color * (A * color + B)) / (color * (C * color + D) + E);
|
|
|
}
|
|
|
float eyeAdaption(float fLum)
|
|
|
{
|
|
|
return mix(0.2, fLum, 0.5);
|
|
|
}
|
|
|
#ifdef LUT_ENABLED
|
|
|
vec3 lutTransform(vec3 color) {
|
|
|
float blueColor = color.b * 63.0;
|
|
|
vec2 quad1;
|
|
|
quad1.y = floor(floor(blueColor) / 8.0);
|
|
|
quad1.x = floor(blueColor) - (quad1.y * 8.0);
|
|
|
vec2 quad2;
|
|
|
quad2.y = floor(ceil(blueColor) / 8.0);
|
|
|
quad2.x = ceil(blueColor) - (quad2.y * 8.0);
|
|
|
vec2 texPos1;
|
|
|
texPos1.x = (quad1.x * 0.125) + 0.5/512.0 + ((0.125 - 1.0/512.0) * color.r);
|
|
|
texPos1.y = (quad1.y * 0.125) + 0.5/512.0 + ((0.125 - 1.0/512.0) * color.g);
|
|
|
vec2 texPos2;
|
|
|
texPos2.x = (quad2.x * 0.125) + 0.5/512.0 + ((0.125 - 1.0/512.0) * color.r);
|
|
|
texPos2.y = (quad2.y * 0.125) + 0.5/512.0 + ((0.125 - 1.0/512.0) * color.g);
|
|
|
vec4 newColor1 = texture2D(lut, texPos1);
|
|
|
vec4 newColor2 = texture2D(lut, texPos2);
|
|
|
vec4 newColor = mix(newColor1, newColor2, fract(blueColor));
|
|
|
return newColor.rgb;
|
|
|
}
|
|
|
#endif
|
|
|
@import clay.util.rgbm
|
|
|
void main()
|
|
|
{
|
|
|
vec4 texel = vec4(0.0);
|
|
|
vec4 originalTexel = vec4(0.0);
|
|
|
#ifdef TEXTURE_ENABLED
|
|
|
texel = decodeHDR(texture2D(texture, v_Texcoord));
|
|
|
originalTexel = texel;
|
|
|
#endif
|
|
|
#ifdef BLOOM_ENABLED
|
|
|
vec4 bloomTexel = decodeHDR(texture2D(bloom, v_Texcoord));
|
|
|
texel.rgb += bloomTexel.rgb * bloomIntensity;
|
|
|
texel.a += bloomTexel.a * bloomIntensity;
|
|
|
#endif
|
|
|
#ifdef LENSFLARE_ENABLED
|
|
|
texel += decodeHDR(texture2D(lensflare, v_Texcoord)) * texture2D(lensdirt, v_Texcoord) * lensflareIntensity;
|
|
|
#endif
|
|
|
texel.a = min(texel.a, 1.0);
|
|
|
#ifdef LUM_ENABLED
|
|
|
float fLum = texture2D(lum, vec2(0.5, 0.5)).r;
|
|
|
float adaptedLumDest = 3.0 / (max(0.1, 1.0 + 10.0*eyeAdaption(fLum)));
|
|
|
float exposureBias = adaptedLumDest * exposure;
|
|
|
#else
|
|
|
float exposureBias = exposure;
|
|
|
#endif
|
|
|
texel.rgb *= exposureBias;
|
|
|
texel.rgb = ACESToneMapping(texel.rgb);
|
|
|
texel = linearTosRGB(texel);
|
|
|
#ifdef LUT_ENABLED
|
|
|
texel.rgb = lutTransform(clamp(texel.rgb,vec3(0.0),vec3(1.0)));
|
|
|
#endif
|
|
|
#ifdef COLOR_CORRECTION
|
|
|
texel.rgb = clamp(texel.rgb + vec3(brightness), 0.0, 1.0);
|
|
|
texel.rgb = clamp((texel.rgb - vec3(0.5))*contrast+vec3(0.5), 0.0, 1.0);
|
|
|
float lum = dot(texel.rgb, vec3(0.2125, 0.7154, 0.0721));
|
|
|
texel.rgb = mix(vec3(lum), texel.rgb, saturation);
|
|
|
#endif
|
|
|
#ifdef VIGNETTE
|
|
|
vec2 uv = (v_Texcoord - vec2(0.5)) * vec2(vignetteOffset);
|
|
|
texel.rgb = mix(texel.rgb, vec3(1.0 - vignetteDarkness), dot(uv, uv));
|
|
|
#endif
|
|
|
gl_FragColor = encodeHDR(texel);
|
|
|
#ifdef DEBUG
|
|
|
#if DEBUG == 1
|
|
|
gl_FragColor = encodeHDR(decodeHDR(texture2D(texture, v_Texcoord)));
|
|
|
#elif DEBUG == 2
|
|
|
gl_FragColor = encodeHDR(decodeHDR(texture2D(bloom, v_Texcoord)) * bloomIntensity);
|
|
|
#elif DEBUG == 3
|
|
|
gl_FragColor = encodeHDR(decodeHDR(texture2D(lensflare, v_Texcoord) * lensflareIntensity));
|
|
|
#endif
|
|
|
#endif
|
|
|
if (originalTexel.a <= 0.01 && gl_FragColor.a > 1e-5) {
|
|
|
gl_FragColor.a = dot(gl_FragColor.rgb, vec3(0.2125, 0.7154, 0.0721));
|
|
|
}
|
|
|
#ifdef PREMULTIPLY_ALPHA
|
|
|
gl_FragColor.rgb *= gl_FragColor.a;
|
|
|
#endif
|
|
|
}
|
|
|
@end`},function(He,Ne,be){"use strict";Ne.a=`@export clay.compositor.blend
|
|
|
#define SHADER_NAME blend
|
|
|
#ifdef TEXTURE1_ENABLED
|
|
|
uniform sampler2D texture1;
|
|
|
uniform float weight1 : 1.0;
|
|
|
#endif
|
|
|
#ifdef TEXTURE2_ENABLED
|
|
|
uniform sampler2D texture2;
|
|
|
uniform float weight2 : 1.0;
|
|
|
#endif
|
|
|
#ifdef TEXTURE3_ENABLED
|
|
|
uniform sampler2D texture3;
|
|
|
uniform float weight3 : 1.0;
|
|
|
#endif
|
|
|
#ifdef TEXTURE4_ENABLED
|
|
|
uniform sampler2D texture4;
|
|
|
uniform float weight4 : 1.0;
|
|
|
#endif
|
|
|
#ifdef TEXTURE5_ENABLED
|
|
|
uniform sampler2D texture5;
|
|
|
uniform float weight5 : 1.0;
|
|
|
#endif
|
|
|
#ifdef TEXTURE6_ENABLED
|
|
|
uniform sampler2D texture6;
|
|
|
uniform float weight6 : 1.0;
|
|
|
#endif
|
|
|
varying vec2 v_Texcoord;
|
|
|
@import clay.util.rgbm
|
|
|
void main()
|
|
|
{
|
|
|
vec4 tex = vec4(0.0);
|
|
|
#ifdef TEXTURE1_ENABLED
|
|
|
tex += decodeHDR(texture2D(texture1, v_Texcoord)) * weight1;
|
|
|
#endif
|
|
|
#ifdef TEXTURE2_ENABLED
|
|
|
tex += decodeHDR(texture2D(texture2, v_Texcoord)) * weight2;
|
|
|
#endif
|
|
|
#ifdef TEXTURE3_ENABLED
|
|
|
tex += decodeHDR(texture2D(texture3, v_Texcoord)) * weight3;
|
|
|
#endif
|
|
|
#ifdef TEXTURE4_ENABLED
|
|
|
tex += decodeHDR(texture2D(texture4, v_Texcoord)) * weight4;
|
|
|
#endif
|
|
|
#ifdef TEXTURE5_ENABLED
|
|
|
tex += decodeHDR(texture2D(texture5, v_Texcoord)) * weight5;
|
|
|
#endif
|
|
|
#ifdef TEXTURE6_ENABLED
|
|
|
tex += decodeHDR(texture2D(texture6, v_Texcoord)) * weight6;
|
|
|
#endif
|
|
|
gl_FragColor = encodeHDR(tex);
|
|
|
}
|
|
|
@end`},function(He,Ne,be){"use strict";Ne.a=`@export clay.compositor.fxaa
|
|
|
uniform sampler2D texture;
|
|
|
uniform vec4 viewport : VIEWPORT;
|
|
|
varying vec2 v_Texcoord;
|
|
|
#define FXAA_REDUCE_MIN (1.0/128.0)
|
|
|
#define FXAA_REDUCE_MUL (1.0/8.0)
|
|
|
#define FXAA_SPAN_MAX 8.0
|
|
|
@import clay.util.rgbm
|
|
|
void main()
|
|
|
{
|
|
|
vec2 resolution = 1.0 / viewport.zw;
|
|
|
vec3 rgbNW = decodeHDR( texture2D( texture, ( gl_FragCoord.xy + vec2( -1.0, -1.0 ) ) * resolution ) ).xyz;
|
|
|
vec3 rgbNE = decodeHDR( texture2D( texture, ( gl_FragCoord.xy + vec2( 1.0, -1.0 ) ) * resolution ) ).xyz;
|
|
|
vec3 rgbSW = decodeHDR( texture2D( texture, ( gl_FragCoord.xy + vec2( -1.0, 1.0 ) ) * resolution ) ).xyz;
|
|
|
vec3 rgbSE = decodeHDR( texture2D( texture, ( gl_FragCoord.xy + vec2( 1.0, 1.0 ) ) * resolution ) ).xyz;
|
|
|
vec4 rgbaM = decodeHDR( texture2D( texture, gl_FragCoord.xy * resolution ) );
|
|
|
vec3 rgbM = rgbaM.xyz;
|
|
|
float opacity = rgbaM.w;
|
|
|
vec3 luma = vec3( 0.299, 0.587, 0.114 );
|
|
|
float lumaNW = dot( rgbNW, luma );
|
|
|
float lumaNE = dot( rgbNE, luma );
|
|
|
float lumaSW = dot( rgbSW, luma );
|
|
|
float lumaSE = dot( rgbSE, luma );
|
|
|
float lumaM = dot( rgbM, luma );
|
|
|
float lumaMin = min( lumaM, min( min( lumaNW, lumaNE ), min( lumaSW, lumaSE ) ) );
|
|
|
float lumaMax = max( lumaM, max( max( lumaNW, lumaNE) , max( lumaSW, lumaSE ) ) );
|
|
|
vec2 dir;
|
|
|
dir.x = -((lumaNW + lumaNE) - (lumaSW + lumaSE));
|
|
|
dir.y = ((lumaNW + lumaSW) - (lumaNE + lumaSE));
|
|
|
float dirReduce = max( ( lumaNW + lumaNE + lumaSW + lumaSE ) * ( 0.25 * FXAA_REDUCE_MUL ), FXAA_REDUCE_MIN );
|
|
|
float rcpDirMin = 1.0 / ( min( abs( dir.x ), abs( dir.y ) ) + dirReduce );
|
|
|
dir = min( vec2( FXAA_SPAN_MAX, FXAA_SPAN_MAX),
|
|
|
max( vec2(-FXAA_SPAN_MAX, -FXAA_SPAN_MAX),
|
|
|
dir * rcpDirMin)) * resolution;
|
|
|
vec3 rgbA = decodeHDR( texture2D( texture, gl_FragCoord.xy * resolution + dir * ( 1.0 / 3.0 - 0.5 ) ) ).xyz;
|
|
|
rgbA += decodeHDR( texture2D( texture, gl_FragCoord.xy * resolution + dir * ( 2.0 / 3.0 - 0.5 ) ) ).xyz;
|
|
|
rgbA *= 0.5;
|
|
|
vec3 rgbB = decodeHDR( texture2D( texture, gl_FragCoord.xy * resolution + dir * -0.5 ) ).xyz;
|
|
|
rgbB += decodeHDR( texture2D( texture, gl_FragCoord.xy * resolution + dir * 0.5 ) ).xyz;
|
|
|
rgbB *= 0.25;
|
|
|
rgbB += rgbA * 0.5;
|
|
|
float lumaB = dot( rgbB, luma );
|
|
|
if ( ( lumaB < lumaMin ) || ( lumaB > lumaMax ) )
|
|
|
{
|
|
|
gl_FragColor = vec4( rgbA, opacity );
|
|
|
}
|
|
|
else {
|
|
|
gl_FragColor = vec4( rgbB, opacity );
|
|
|
}
|
|
|
}
|
|
|
@end`},function(He,Ne,be){"use strict";Ne.a=`@export ecgl.dof.coc
|
|
|
|
|
|
uniform sampler2D depth;
|
|
|
|
|
|
uniform float zNear: 0.1;
|
|
|
uniform float zFar: 2000;
|
|
|
|
|
|
uniform float focalDistance: 3;
|
|
|
uniform float focalRange: 1;
|
|
|
uniform float focalLength: 30;
|
|
|
uniform float fstop: 2.8;
|
|
|
|
|
|
varying vec2 v_Texcoord;
|
|
|
|
|
|
@import clay.util.encode_float
|
|
|
|
|
|
void main()
|
|
|
{
|
|
|
float z = texture2D(depth, v_Texcoord).r * 2.0 - 1.0;
|
|
|
|
|
|
float dist = 2.0 * zNear * zFar / (zFar + zNear - z * (zFar - zNear));
|
|
|
|
|
|
float aperture = focalLength / fstop;
|
|
|
|
|
|
float coc;
|
|
|
|
|
|
float uppper = focalDistance + focalRange;
|
|
|
float lower = focalDistance - focalRange;
|
|
|
if (dist <= uppper && dist >= lower) {
|
|
|
coc = 0.5;
|
|
|
}
|
|
|
else {
|
|
|
float focalAdjusted = dist > uppper ? uppper : lower;
|
|
|
|
|
|
coc = abs(aperture * (focalLength * (dist - focalAdjusted)) / (dist * (focalAdjusted - focalLength)));
|
|
|
coc = clamp(coc, 0.0, 2.0) / 2.00001;
|
|
|
|
|
|
if (dist < lower) {
|
|
|
coc = -coc;
|
|
|
}
|
|
|
coc = coc * 0.5 + 0.5;
|
|
|
}
|
|
|
|
|
|
gl_FragColor = encodeFloat(coc);
|
|
|
}
|
|
|
@end
|
|
|
|
|
|
|
|
|
@export ecgl.dof.composite
|
|
|
|
|
|
#define DEBUG 0
|
|
|
|
|
|
uniform sampler2D original;
|
|
|
uniform sampler2D blurred;
|
|
|
uniform sampler2D nearfield;
|
|
|
uniform sampler2D coc;
|
|
|
uniform sampler2D nearcoc;
|
|
|
varying vec2 v_Texcoord;
|
|
|
|
|
|
@import clay.util.rgbm
|
|
|
@import clay.util.float
|
|
|
|
|
|
void main()
|
|
|
{
|
|
|
vec4 blurredColor = decodeHDR(texture2D(blurred, v_Texcoord));
|
|
|
vec4 originalColor = decodeHDR(texture2D(original, v_Texcoord));
|
|
|
|
|
|
float fCoc = decodeFloat(texture2D(coc, v_Texcoord));
|
|
|
|
|
|
fCoc = abs(fCoc * 2.0 - 1.0);
|
|
|
|
|
|
float weight = smoothstep(0.0, 1.0, fCoc);
|
|
|
|
|
|
#ifdef NEARFIELD_ENABLED
|
|
|
vec4 nearfieldColor = decodeHDR(texture2D(nearfield, v_Texcoord));
|
|
|
float fNearCoc = decodeFloat(texture2D(nearcoc, v_Texcoord));
|
|
|
fNearCoc = abs(fNearCoc * 2.0 - 1.0);
|
|
|
|
|
|
gl_FragColor = encodeHDR(
|
|
|
mix(
|
|
|
nearfieldColor, mix(originalColor, blurredColor, weight),
|
|
|
pow(1.0 - fNearCoc, 4.0)
|
|
|
)
|
|
|
);
|
|
|
#else
|
|
|
gl_FragColor = encodeHDR(mix(originalColor, blurredColor, weight));
|
|
|
#endif
|
|
|
|
|
|
}
|
|
|
|
|
|
@end
|
|
|
|
|
|
|
|
|
|
|
|
@export ecgl.dof.diskBlur
|
|
|
|
|
|
#define POISSON_KERNEL_SIZE 16;
|
|
|
|
|
|
uniform sampler2D texture;
|
|
|
uniform sampler2D coc;
|
|
|
varying vec2 v_Texcoord;
|
|
|
|
|
|
uniform float blurRadius : 10.0;
|
|
|
uniform vec2 textureSize : [512.0, 512.0];
|
|
|
|
|
|
uniform vec2 poissonKernel[POISSON_KERNEL_SIZE];
|
|
|
|
|
|
uniform float percent;
|
|
|
|
|
|
float nrand(const in vec2 n) {
|
|
|
return fract(sin(dot(n.xy ,vec2(12.9898,78.233))) * 43758.5453);
|
|
|
}
|
|
|
|
|
|
@import clay.util.rgbm
|
|
|
@import clay.util.float
|
|
|
|
|
|
|
|
|
void main()
|
|
|
{
|
|
|
vec2 offset = blurRadius / textureSize;
|
|
|
|
|
|
float rnd = 6.28318 * nrand(v_Texcoord + 0.07 * percent );
|
|
|
float cosa = cos(rnd);
|
|
|
float sina = sin(rnd);
|
|
|
vec4 basis = vec4(cosa, -sina, sina, cosa);
|
|
|
|
|
|
#if !defined(BLUR_NEARFIELD) && !defined(BLUR_COC)
|
|
|
offset *= abs(decodeFloat(texture2D(coc, v_Texcoord)) * 2.0 - 1.0);
|
|
|
#endif
|
|
|
|
|
|
#ifdef BLUR_COC
|
|
|
float cocSum = 0.0;
|
|
|
#else
|
|
|
vec4 color = vec4(0.0);
|
|
|
#endif
|
|
|
|
|
|
|
|
|
float weightSum = 0.0;
|
|
|
|
|
|
for (int i = 0; i < POISSON_KERNEL_SIZE; i++) {
|
|
|
vec2 ofs = poissonKernel[i];
|
|
|
|
|
|
ofs = vec2(dot(ofs, basis.xy), dot(ofs, basis.zw));
|
|
|
|
|
|
vec2 uv = v_Texcoord + ofs * offset;
|
|
|
vec4 texel = texture2D(texture, uv);
|
|
|
|
|
|
float w = 1.0;
|
|
|
#ifdef BLUR_COC
|
|
|
float fCoc = decodeFloat(texel) * 2.0 - 1.0;
|
|
|
cocSum += clamp(fCoc, -1.0, 0.0) * w;
|
|
|
#else
|
|
|
texel = decodeHDR(texel);
|
|
|
#if !defined(BLUR_NEARFIELD)
|
|
|
float fCoc = decodeFloat(texture2D(coc, uv)) * 2.0 - 1.0;
|
|
|
w *= abs(fCoc);
|
|
|
#endif
|
|
|
color += texel * w;
|
|
|
#endif
|
|
|
|
|
|
weightSum += w;
|
|
|
}
|
|
|
|
|
|
#ifdef BLUR_COC
|
|
|
gl_FragColor = encodeFloat(clamp(cocSum / weightSum, -1.0, 0.0) * 0.5 + 0.5);
|
|
|
#else
|
|
|
color /= weightSum;
|
|
|
gl_FragColor = encodeHDR(color);
|
|
|
#endif
|
|
|
}
|
|
|
|
|
|
@end`},function(He,Ne,be){"use strict";Ne.a=`@export ecgl.edge
|
|
|
|
|
|
uniform sampler2D texture;
|
|
|
|
|
|
uniform sampler2D normalTexture;
|
|
|
uniform sampler2D depthTexture;
|
|
|
|
|
|
uniform mat4 projectionInv;
|
|
|
|
|
|
uniform vec2 textureSize;
|
|
|
|
|
|
uniform vec4 edgeColor: [0,0,0,0.8];
|
|
|
|
|
|
varying vec2 v_Texcoord;
|
|
|
|
|
|
vec3 packColor(vec2 coord) {
|
|
|
float z = texture2D(depthTexture, coord).r * 2.0 - 1.0;
|
|
|
vec4 p = vec4(v_Texcoord * 2.0 - 1.0, z, 1.0);
|
|
|
vec4 p4 = projectionInv * p;
|
|
|
|
|
|
return vec3(
|
|
|
texture2D(normalTexture, coord).rg,
|
|
|
-p4.z / p4.w / 5.0
|
|
|
);
|
|
|
}
|
|
|
|
|
|
void main() {
|
|
|
vec2 cc = v_Texcoord;
|
|
|
vec3 center = packColor(cc);
|
|
|
|
|
|
float size = clamp(1.0 - (center.z - 10.0) / 100.0, 0.0, 1.0) * 0.5;
|
|
|
float dx = size / textureSize.x;
|
|
|
float dy = size / textureSize.y;
|
|
|
|
|
|
vec2 coord;
|
|
|
vec3 topLeft = packColor(cc+vec2(-dx, -dy));
|
|
|
vec3 top = packColor(cc+vec2(0.0, -dy));
|
|
|
vec3 topRight = packColor(cc+vec2(dx, -dy));
|
|
|
vec3 left = packColor(cc+vec2(-dx, 0.0));
|
|
|
vec3 right = packColor(cc+vec2(dx, 0.0));
|
|
|
vec3 bottomLeft = packColor(cc+vec2(-dx, dy));
|
|
|
vec3 bottom = packColor(cc+vec2(0.0, dy));
|
|
|
vec3 bottomRight = packColor(cc+vec2(dx, dy));
|
|
|
|
|
|
vec3 v = -topLeft-2.0*top-topRight+bottomLeft+2.0*bottom+bottomRight;
|
|
|
vec3 h = -bottomLeft-2.0*left-topLeft+bottomRight+2.0*right+topRight;
|
|
|
|
|
|
float edge = sqrt(dot(h, h) + dot(v, v));
|
|
|
|
|
|
edge = smoothstep(0.8, 1.0, edge);
|
|
|
|
|
|
gl_FragColor = mix(texture2D(texture, v_Texcoord), vec4(edgeColor.rgb, 1.0), edgeColor.a * edge);
|
|
|
}
|
|
|
@end`},function(He,Ne,be){"use strict";var _e=be(43),Me=be(14),ve=be(10),Ee=be(5),Pe=be(7),xe=be(9);function pe(Ae){for(var Se=[],ce=0;ce<30;ce++)Se.push([Object(_e.a)(ce,2),Object(_e.a)(ce,3)]);this._haltonSequence=Se,this._frame=0,this._sourceTex=new Ee.a,this._sourceFb=new ve.a,this._sourceFb.attach(this._sourceTex),this._prevFrameTex=new Ee.a,this._outputTex=new Ee.a;var te=this._blendPass=new Me.a({fragment:Pe.a.source("clay.compositor.blend")});te.material.disableTexturesAll(),te.material.enableTexture(["texture1","texture2"]),this._blendFb=new ve.a({depthBuffer:!1}),this._outputPass=new Me.a({fragment:Pe.a.source("clay.compositor.output"),blendWithPrevious:!0}),this._outputPass.material.define("fragment","OUTPUT_ALPHA"),this._outputPass.material.blend=function(ne){ne.blendEquationSeparate(ne.FUNC_ADD,ne.FUNC_ADD),ne.blendFuncSeparate(ne.ONE,ne.ONE_MINUS_SRC_ALPHA,ne.ONE,ne.ONE_MINUS_SRC_ALPHA)}}pe.prototype={constructor:pe,jitterProjection:function(Ae,Se){var ce=Ae.viewport,te=ce.devicePixelRatio||Ae.getDevicePixelRatio(),ne=ce.width*te,le=ce.height*te,se=this._haltonSequence[this._frame%this._haltonSequence.length],fe=new xe.a;fe.array[12]=(se[0]*2-1)/ne,fe.array[13]=(se[1]*2-1)/le,xe.a.mul(Se.projectionMatrix,fe,Se.projectionMatrix),xe.a.invert(Se.invProjectionMatrix,Se.projectionMatrix)},resetFrame:function(){this._frame=0},getFrame:function(){return this._frame},getSourceFrameBuffer:function(){return this._sourceFb},getOutputTexture:function(){return this._outputTex},resize:function(Ae,Se){this._prevFrameTex.width=Ae,this._prevFrameTex.height=Se,this._outputTex.width=Ae,this._outputTex.height=Se,this._sourceTex.width=Ae,this._sourceTex.height=Se,this._prevFrameTex.dirty(),this._outputTex.dirty(),this._sourceTex.dirty()},isFinished:function(){return this._frame>=this._haltonSequence.length},render:function(Ae,Se,ce){var te=this._blendPass;this._frame===0?(te.setUniform("weight1",0),te.setUniform("weight2",1)):(te.setUniform("weight1",.9),te.setUniform("weight2",.1)),te.setUniform("texture1",this._prevFrameTex),te.setUniform("texture2",Se||this._sourceTex),this._blendFb.attach(this._outputTex),this._blendFb.bind(Ae),te.render(Ae),this._blendFb.unbind(Ae),ce||(this._outputPass.setUniform("texture",this._outputTex),this._outputPass.render(Ae));var ne=this._prevFrameTex;this._prevFrameTex=this._outputTex,this._outputTex=ne,this._frame++},dispose:function(Ae){this._sourceFb.dispose(Ae),this._blendFb.dispose(Ae),this._prevFrameTex.dispose(Ae),this._outputTex.dispose(Ae),this._sourceTex.dispose(Ae),this._outputPass.dispose(Ae),this._blendPass.dispose(Ae)}},Ne.a=pe},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(184),Ee=be(185),Pe=be(82);Me.a.registerAction({type:"geo3DChangeCamera",event:"geo3dcamerachanged",update:"series:updateCamera"},function(xe,pe){pe.eachComponent({mainType:"geo3D",query:xe},function(Ae){Ae.setView(xe)})})},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(38),Ee=be(31),Pe=be(32),xe=be(26),pe=be(80),Ae=Me.a.extendComponentModel({type:"geo3D",layoutMode:"box",coordinateSystem:null,optionUpdated:function(){var ce=this.option;ce.regions=this.getFilledRegions(ce.regions,ce.map);var te=Me.a.helper.completeDimensions(["value"],ce.data,{encodeDef:this.get("encode"),dimsDef:this.get("dimensions")}),ne=new Me.a.List(te,this);ne.initData(ce.regions);var le={};ne.each(function(se){var fe=ne.getName(se),he=ne.getItemModel(se);le[fe]=he}),this._regionModelMap=le,this._data=ne},getData:function(){return this._data},getRegionModel:function(ce){var te=this.getData().getName(ce);return this._regionModelMap[te]||new Me.a.Model(null,this)},getRegionPolygonCoords:function(ce){var te=this.getData().getName(ce),ne=this.coordinateSystem.getRegion(te);return ne?ne.geometries:[]},getFormattedLabel:function(ce,te){var ne=this._data.getName(ce),le=this.getRegionModel(ne),se=le.get(te==="normal"?["label","formatter"]:["emphasis","label","formatter"]);se==null&&(se=le.get(["label","formatter"]));var fe={name:ne};if(typeof se=="function")return fe.status=te,se(fe);if(typeof se=="string"){var he=fe.seriesName;return se.replace("{a}",he!=null?he:"")}else return ne},defaultOption:{regions:[]}});Me.a.util.merge(Ae.prototype,pe.a),Me.a.util.merge(Ae.prototype,ve.a),Me.a.util.merge(Ae.prototype,Ee.a),Me.a.util.merge(Ae.prototype,Pe.a),Me.a.util.merge(Ae.prototype,xe.a);var Se=Ae},function(He,Ne,be){"use strict";var _e=be(59),Me=be(0),ve=be.n(Me),Ee=be(2),Pe=be(39),xe=be(34),pe=ve.a.extendComponentView({type:"geo3D",__ecgl__:!0,init:function(Ae,Se){this._geo3DBuilder=new _e.a(Se),this.groupGL=new Ee.a.Node,this._lightRoot=new Ee.a.Node,this._sceneHelper=new xe.a(this._lightRoot),this._sceneHelper.initLight(this._lightRoot),this._control=new Pe.a({zr:Se.getZr()}),this._control.init()},render:function(Ae,Se,ce){this.groupGL.add(this._geo3DBuilder.rootNode);var te=Ae.coordinateSystem;if(!(!te||!te.viewGL)){te.viewGL.add(this._lightRoot),Ae.get("show")?te.viewGL.add(this.groupGL):te.viewGL.remove(this.groupGL);var ne=this._control;ne.setViewGL(te.viewGL);var le=Ae.getModel("viewControl");ne.setFromViewControlModel(le,0),this._sceneHelper.setScene(te.viewGL.scene),this._sceneHelper.updateLight(Ae),te.viewGL.setPostEffect(Ae.getModel("postEffect"),ce),te.viewGL.setTemporalSuperSampling(Ae.getModel("temporalSuperSampling")),this._geo3DBuilder.update(Ae,Se,ce,0,Ae.getData().count());var se=te.viewGL.isLinearSpace()?"define":"undefine";this._geo3DBuilder.rootNode.traverse(function(fe){fe.material&&fe.material[se]("fragment","SRGB_DECODE")}),ne.off("update"),ne.on("update",function(){ce.dispatchAction({type:"geo3DChangeCamera",alpha:ne.getAlpha(),beta:ne.getBeta(),distance:ne.getDistance(),center:ne.getCenter(),from:this.uid,geo3DId:Ae.id})})}},afterRender:function(Ae,Se,ce,te){var ne=te.renderer;this._sceneHelper.updateAmbientCubemap(ne,Ae,ce),this._sceneHelper.updateSkybox(ne,Ae,ce)},dispose:function(){this._control.dispose()}})},function(He,Ne,be){"use strict";Ne.a=_e;function _e(qe,ot,at){at=at||2;var ut=ot&&ot.length,nt=ut?ot[0]*at:qe.length,lt=Me(qe,0,nt,at,!0),yt=[];if(!lt)return yt;var ft,ct,vt,Ut,Zt,en,mn;if(ut&&(lt=Se(qe,ot,lt,at)),qe.length>80*at){ft=vt=qe[0],ct=Ut=qe[1];for(var Bt=at;Bt<nt;Bt+=at)Zt=qe[Bt],en=qe[Bt+1],Zt<ft&&(ft=Zt),en<ct&&(ct=en),Zt>vt&&(vt=Zt),en>Ut&&(Ut=en);mn=Math.max(vt-ft,Ut-ct)}return Ee(lt,yt,at,ft,ct,mn),yt}function Me(qe,ot,at,ut,nt){var lt,yt;if(nt===$e(qe,ot,at,ut)>0)for(lt=ot;lt<at;lt+=ut)yt=Je(lt,qe[lt],qe[lt+1],yt);else for(lt=at-ut;lt>=ot;lt-=ut)yt=Je(lt,qe[lt],qe[lt+1],yt);return yt&&Ce(yt,yt.next)&&(Qe(yt),yt=yt.next),yt}function ve(qe,ot){if(!qe)return qe;ot||(ot=qe);var at=qe,ut;do if(ut=!1,!at.steiner&&(Ce(at,at.next)||me(at.prev,at,at.next)===0)){if(Qe(at),at=ot=at.prev,at===at.next)return null;ut=!0}else at=at.next;while(ut||at!==ot);return ot}function Ee(qe,ot,at,ut,nt,lt,yt){if(qe){!yt&<&&le(qe,ut,nt,lt);for(var ft=qe,ct,vt;qe.prev!==qe.next;){if(ct=qe.prev,vt=qe.next,lt?xe(qe,ut,nt,lt):Pe(qe)){ot.push(ct.i/at),ot.push(qe.i/at),ot.push(vt.i/at),Qe(qe),qe=vt.next,ft=vt.next;continue}if(qe=vt,qe===ft){yt?yt===1?(qe=pe(qe,ot,at),Ee(qe,ot,at,ut,nt,lt,2)):yt===2&&Ae(qe,ot,at,ut,nt,lt):Ee(ve(qe),ot,at,ut,nt,lt,1);break}}}}function Pe(qe){var ot=qe.prev,at=qe,ut=qe.next;if(me(ot,at,ut)>=0)return!1;for(var nt=qe.next.next;nt!==qe.prev;){if(ie(ot.x,ot.y,at.x,at.y,ut.x,ut.y,nt.x,nt.y)&&me(nt.prev,nt,nt.next)>=0)return!1;nt=nt.next}return!0}function xe(qe,ot,at,ut){var nt=qe.prev,lt=qe,yt=qe.next;if(me(nt,lt,yt)>=0)return!1;for(var ft=nt.x<lt.x?nt.x<yt.x?nt.x:yt.x:lt.x<yt.x?lt.x:yt.x,ct=nt.y<lt.y?nt.y<yt.y?nt.y:yt.y:lt.y<yt.y?lt.y:yt.y,vt=nt.x>lt.x?nt.x>yt.x?nt.x:yt.x:lt.x>yt.x?lt.x:yt.x,Ut=nt.y>lt.y?nt.y>yt.y?nt.y:yt.y:lt.y>yt.y?lt.y:yt.y,Zt=fe(ft,ct,ot,at,ut),en=fe(vt,Ut,ot,at,ut),mn=qe.nextZ;mn&&mn.z<=en;){if(mn!==qe.prev&&mn!==qe.next&&ie(nt.x,nt.y,lt.x,lt.y,yt.x,yt.y,mn.x,mn.y)&&me(mn.prev,mn,mn.next)>=0)return!1;mn=mn.nextZ}for(mn=qe.prevZ;mn&&mn.z>=Zt;){if(mn!==qe.prev&&mn!==qe.next&&ie(nt.x,nt.y,lt.x,lt.y,yt.x,yt.y,mn.x,mn.y)&&me(mn.prev,mn,mn.next)>=0)return!1;mn=mn.prevZ}return!0}function pe(qe,ot,at){var ut=qe;do{var nt=ut.prev,lt=ut.next.next;!Ce(nt,lt)&&Ie(nt,ut,ut.next,lt)&&Re(nt,lt)&&Re(lt,nt)&&(ot.push(nt.i/at),ot.push(ut.i/at),ot.push(lt.i/at),Qe(ut),Qe(ut.next),ut=qe=lt),ut=ut.next}while(ut!==qe);return ut}function Ae(qe,ot,at,ut,nt,lt){var yt=qe;do{for(var ft=yt.next.next;ft!==yt.prev;){if(yt.i!==ft.i&&ue(yt,ft)){var ct=Ge(yt,ft);yt=ve(yt,yt.next),ct=ve(ct,ct.next),Ee(yt,ot,at,ut,nt,lt),Ee(ct,ot,at,ut,nt,lt);return}ft=ft.next}yt=yt.next}while(yt!==qe)}function Se(qe,ot,at,ut){var nt=[],lt,yt,ft,ct,vt;for(lt=0,yt=ot.length;lt<yt;lt++)ft=ot[lt]*ut,ct=lt<yt-1?ot[lt+1]*ut:qe.length,vt=Me(qe,ft,ct,ut,!1),vt===vt.next&&(vt.steiner=!0),nt.push(he(vt));for(nt.sort(ce),lt=0;lt<nt.length;lt++)te(nt[lt],at),at=ve(at,at.next);return at}function ce(qe,ot){return qe.x-ot.x}function te(qe,ot){if(ot=ne(qe,ot),ot){var at=Ge(ot,qe);ve(at,at.next)}}function ne(qe,ot){var at=ot,ut=qe.x,nt=qe.y,lt=-1/0,yt;do{if(nt<=at.y&&nt>=at.next.y&&at.next.y!==at.y){var ft=at.x+(nt-at.y)*(at.next.x-at.x)/(at.next.y-at.y);if(ft<=ut&&ft>lt){if(lt=ft,ft===ut){if(nt===at.y)return at;if(nt===at.next.y)return at.next}yt=at.x<at.next.x?at:at.next}}at=at.next}while(at!==ot);if(!yt)return null;if(ut===lt)return yt.prev;var ct=yt,vt=yt.x,Ut=yt.y,Zt=1/0,en;for(at=yt.next;at!==ct;)ut>=at.x&&at.x>=vt&&ut!==at.x&&ie(nt<Ut?ut:lt,nt,vt,Ut,nt<Ut?lt:ut,nt,at.x,at.y)&&(en=Math.abs(nt-at.y)/(ut-at.x),(en<Zt||en===Zt&&at.x>yt.x)&&Re(at,qe)&&(yt=at,Zt=en)),at=at.next;return yt}function le(qe,ot,at,ut){var nt=qe;do nt.z===null&&(nt.z=fe(nt.x,nt.y,ot,at,ut)),nt.prevZ=nt.prev,nt.nextZ=nt.next,nt=nt.next;while(nt!==qe);nt.prevZ.nextZ=null,nt.prevZ=null,se(nt)}function se(qe){var ot,at,ut,nt,lt,yt,ft,ct,vt=1;do{for(at=qe,qe=null,lt=null,yt=0;at;){for(yt++,ut=at,ft=0,ot=0;ot<vt&&(ft++,ut=ut.nextZ,!!ut);ot++);for(ct=vt;ft>0||ct>0&&ut;)ft!==0&&(ct===0||!ut||at.z<=ut.z)?(nt=at,at=at.nextZ,ft--):(nt=ut,ut=ut.nextZ,ct--),lt?lt.nextZ=nt:qe=nt,nt.prevZ=lt,lt=nt;at=ut}lt.nextZ=null,vt*=2}while(yt>1);return qe}function fe(qe,ot,at,ut,nt){return qe=32767*(qe-at)/nt,ot=32767*(ot-ut)/nt,qe=(qe|qe<<8)&16711935,qe=(qe|qe<<4)&252645135,qe=(qe|qe<<2)&858993459,qe=(qe|qe<<1)&1431655765,ot=(ot|ot<<8)&16711935,ot=(ot|ot<<4)&252645135,ot=(ot|ot<<2)&858993459,ot=(ot|ot<<1)&1431655765,qe|ot<<1}function he(qe){var ot=qe,at=qe;do ot.x<at.x&&(at=ot),ot=ot.next;while(ot!==qe);return at}function ie(qe,ot,at,ut,nt,lt,yt,ft){return(nt-yt)*(ot-ft)-(qe-yt)*(lt-ft)>=0&&(qe-yt)*(ut-ft)-(at-yt)*(ot-ft)>=0&&(at-yt)*(lt-ft)-(nt-yt)*(ut-ft)>=0}function ue(qe,ot){return qe.next.i!==ot.i&&qe.prev.i!==ot.i&&!Fe(qe,ot)&&Re(qe,ot)&&Re(ot,qe)&&Ue(qe,ot)}function me(qe,ot,at){return(ot.y-qe.y)*(at.x-ot.x)-(ot.x-qe.x)*(at.y-ot.y)}function Ce(qe,ot){return qe.x===ot.x&&qe.y===ot.y}function Ie(qe,ot,at,ut){return Ce(qe,ot)&&Ce(at,ut)||Ce(qe,ut)&&Ce(at,ot)?!0:me(qe,ot,at)>0!=me(qe,ot,ut)>0&&me(at,ut,qe)>0!=me(at,ut,ot)>0}function Fe(qe,ot){var at=qe;do{if(at.i!==qe.i&&at.next.i!==qe.i&&at.i!==ot.i&&at.next.i!==ot.i&&Ie(at,at.next,qe,ot))return!0;at=at.next}while(at!==qe);return!1}function Re(qe,ot){return me(qe.prev,qe,qe.next)<0?me(qe,ot,qe.next)>=0&&me(qe,qe.prev,ot)>=0:me(qe,ot,qe.prev)<0||me(qe,qe.next,ot)<0}function Ue(qe,ot){var at=qe,ut=!1,nt=(qe.x+ot.x)/2,lt=(qe.y+ot.y)/2;do at.y>lt!=at.next.y>lt&&at.next.y!==at.y&&nt<(at.next.x-at.x)*(lt-at.y)/(at.next.y-at.y)+at.x&&(ut=!ut),at=at.next;while(at!==qe);return ut}function Ge(qe,ot){var at=new rt(qe.i,qe.x,qe.y),ut=new rt(ot.i,ot.x,ot.y),nt=qe.next,lt=ot.prev;return qe.next=ot,ot.prev=qe,at.next=nt,nt.prev=at,ut.next=at,at.prev=ut,lt.next=ut,ut.prev=lt,ut}function Je(qe,ot,at,ut){var nt=new rt(qe,ot,at);return ut?(nt.next=ut.next,nt.prev=ut,ut.next.prev=nt,ut.next=nt):(nt.prev=nt,nt.next=nt),nt}function Qe(qe){qe.next.prev=qe.prev,qe.prev.next=qe.next,qe.prevZ&&(qe.prevZ.nextZ=qe.nextZ),qe.nextZ&&(qe.nextZ.prevZ=qe.prevZ)}function rt(qe,ot,at){this.i=qe,this.x=ot,this.y=at,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}_e.deviation=function(qe,ot,at,ut){var nt=ot&&ot.length,lt=nt?ot[0]*at:qe.length,yt=Math.abs($e(qe,0,lt,at));if(nt)for(var ft=0,ct=ot.length;ft<ct;ft++){var vt=ot[ft]*at,Ut=ft<ct-1?ot[ft+1]*at:qe.length;yt-=Math.abs($e(qe,vt,Ut,at))}var Zt=0;for(ft=0;ft<ut.length;ft+=3){var en=ut[ft]*at,mn=ut[ft+1]*at,Bt=ut[ft+2]*at;Zt+=Math.abs((qe[en]-qe[Bt])*(qe[mn+1]-qe[en+1])-(qe[en]-qe[mn])*(qe[Bt+1]-qe[en+1]))}return yt===0&&Zt===0?0:Math.abs((Zt-yt)/yt)};function $e(qe,ot,at,ut){for(var nt=0,lt=ot,yt=at-ut;lt<at;lt+=ut)nt+=(qe[yt]-qe[lt])*(qe[lt+1]+qe[yt+1]),yt=lt;return nt}},function(He,Ne,be){var _e=be(12),Me={\u5357\u6D77\u8BF8\u5C9B:[32,80],\u5E7F\u4E1C:[0,-10],\u9999\u6E2F:[10,5],\u6FB3\u95E8:[-10,10],\u5929\u6D25:[5,5]};function ve(Ee){_e.each(Ee.regions,function(Pe){var xe=Me[Pe.name];if(xe){var pe=Pe.center;pe[0]+=xe[0]/10.5,pe[1]+=-xe[1]/(10.5/.75)}})}He.exports=ve},function(He,Ne,be){var _e=be(12),Me={Russia:[100,60],"United States":[-99,38],"United States of America":[-99,38]};function ve(Ee){_e.each(Ee.regions,function(Pe){var xe=Me[Pe.name];if(xe){var pe=Pe.center;pe[0]=xe[0],pe[1]=xe[1]}})}He.exports=ve},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(190),Ee=be(191),Pe=be(193);Me.a.registerAction({type:"globeChangeCamera",event:"globecamerachanged",update:"series:updateCamera"},function(xe,pe){pe.eachComponent({mainType:"globe",query:xe},function(Ae){Ae.setView(xe)})}),Me.a.registerAction({type:"globeUpdateDisplacment",event:"globedisplacementupdated",update:"update"},function(xe,pe){})},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(38),Ee=be(31),Pe=be(32),xe=be(26);function pe(ce,te){ce.id=ce.id||ce.name||te+""}var Ae=Me.a.extendComponentModel({type:"globe",layoutMode:"box",coordinateSystem:null,init:function(){Ae.superApply(this,"init",arguments),Me.a.util.each(this.option.layers,function(ce,te){Me.a.util.merge(ce,this.defaultLayerOption),pe(ce,te)},this)},mergeOption:function(ce){var te=this.option.layers;this.option.layers=null,Ae.superApply(this,"mergeOption",arguments);function ne(he){return Me.a.util.reduce(he,function(ie,ue,me){return pe(ue,me),ie[ue.id]=ue,ie},{})}if(te&&te.length){var le=ne(ce.layers),se=ne(te);for(var fe in le)se[fe]?Me.a.util.merge(se[fe],le[fe],!0):te.push(ce.layers[fe]);this.option.layers=te}Me.a.util.each(this.option.layers,function(he){Me.a.util.merge(he,this.defaultLayerOption)},this)},optionUpdated:function(){this.updateDisplacementHash()},defaultLayerOption:{show:!0,type:"overlay"},defaultOption:{show:!0,zlevel:-10,left:0,top:0,width:"100%",height:"100%",environment:"auto",baseColor:"#fff",baseTexture:"",heightTexture:"",displacementTexture:"",displacementScale:0,displacementQuality:"medium",globeRadius:100,globeOuterRadius:150,shading:"lambert",light:{main:{time:""}},viewControl:{autoRotate:!0,panSensitivity:0,targetCoord:null},layers:[]},setDisplacementData:function(ce,te,ne){this.displacementData=ce,this.displacementWidth=te,this.displacementHeight=ne},getDisplacementTexture:function(){return this.get("displacementTexture")||this.get("heightTexture")},getDisplacemenScale:function(){var ce=this.getDisplacementTexture(),te=this.get("displacementScale");return(!ce||ce==="none")&&(te=0),te},hasDisplacement:function(){return this.getDisplacemenScale()>0},_displacementChanged:!0,_displacementScale:0,updateDisplacementHash:function(){var ce=this.getDisplacementTexture(),te=this.getDisplacemenScale();this._displacementChanged=this._displacementTexture!==ce||this._displacementScale!==te,this._displacementTexture=ce,this._displacementScale=te},isDisplacementChanged:function(){return this._displacementChanged}});Me.a.util.merge(Ae.prototype,ve.a),Me.a.util.merge(Ae.prototype,Ee.a),Me.a.util.merge(Ae.prototype,Pe.a),Me.a.util.merge(Ae.prototype,xe.a);var Se=Ae},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(2),Ee=be(39),Pe=be(34),xe=be(192),pe=be(3),Ae=Me.a.extendComponentView({type:"globe",__ecgl__:!0,_displacementScale:0,init:function(Se,ce){this.groupGL=new ve.a.Node,this._sphereGeometry=new ve.a.SphereGeometry({widthSegments:200,heightSegments:100,dynamic:!0}),this._overlayGeometry=new ve.a.SphereGeometry({widthSegments:80,heightSegments:40}),this._planeGeometry=new ve.a.PlaneGeometry,this._earthMesh=new ve.a.Mesh({renderNormal:!0}),this._lightRoot=new ve.a.Node,this._sceneHelper=new Pe.a,this._sceneHelper.initLight(this._lightRoot),this.groupGL.add(this._earthMesh),this._control=new Ee.a({zr:ce.getZr()}),this._control.init(),this._layerMeshes={}},render:function(Se,ce,te){var ne=Se.coordinateSystem,le=Se.get("shading");ne.viewGL.add(this._lightRoot),Se.get("show")?ne.viewGL.add(this.groupGL):ne.viewGL.remove(this.groupGL),this._sceneHelper.setScene(ne.viewGL.scene),ne.viewGL.setPostEffect(Se.getModel("postEffect"),te),ne.viewGL.setTemporalSuperSampling(Se.getModel("temporalSuperSampling"));var se=this._earthMesh;se.geometry=this._sphereGeometry;var fe="ecgl."+le;(!se.material||se.material.shader.name!==fe)&&(se.material=ve.a.createMaterial(fe)),ve.a.setMaterialFromModel(le,se.material,Se,te),["roughnessMap","metalnessMap","detailMap","normalMap"].forEach(function(me){var Ce=se.material.get(me);Ce&&(Ce.flipY=!1)}),se.material.set("color",ve.a.parseColor(Se.get("baseColor")));var he=ne.radius*.99;se.scale.set(he,he,he);var ie=se.material.setTextureImage("diffuseMap",Se.get("baseTexture"),te,{flipY:!1,anisotropic:8});ie&&ie.surface&&ie.surface.attachToMesh(se);var ue=se.material.setTextureImage("bumpMap",Se.get("heightTexture"),te,{flipY:!1,anisotropic:8});ue&&ue.surface&&ue.surface.attachToMesh(se),se.material[Se.get("postEffect.enable")?"define":"undefine"]("fragment","SRGB_DECODE"),this._updateLight(Se,te),this._displaceVertices(Se,te),this._updateViewControl(Se,te),this._updateLayers(Se,te)},afterRender:function(Se,ce,te,ne){var le=ne.renderer;this._sceneHelper.updateAmbientCubemap(le,Se,te),this._sceneHelper.updateSkybox(le,Se,te)},_updateLayers:function(Se,ce){var te=Se.coordinateSystem,ne=Se.get("layers"),le=te.radius,se=[],fe=[],he=[],ie=[];Me.a.util.each(ne,function(Fe){var Re=new Me.a.Model(Fe),Ue=Re.get("type"),Ge=ve.a.loadTexture(Re.get("texture"),ce,{flipY:!1,anisotropic:8});if(Ge.surface&&Ge.surface.attachToMesh(this._earthMesh),Ue==="blend"){var Je=Re.get("blendTo"),Qe=pe.a.firstNotNull(Re.get("intensity"),1);Je==="emission"?(he.push(Ge),ie.push(Qe)):(se.push(Ge),fe.push(Qe))}else{var rt=Re.get("id"),$e=this._layerMeshes[rt];$e||($e=this._layerMeshes[rt]=new ve.a.Mesh({geometry:this._overlayGeometry,castShadow:!1,ignorePicking:!0}));var qe=Re.get("shading");qe==="lambert"?($e.material=$e.__lambertMaterial||new ve.a.Material({autoUpdateTextureStatus:!1,shader:ve.a.createShader("ecgl.lambert"),transparent:!0,depthMask:!1}),$e.__lambertMaterial=$e.material):($e.material=$e.__colorMaterial||new ve.a.Material({autoUpdateTextureStatus:!1,shader:ve.a.createShader("ecgl.color"),transparent:!0,depthMask:!1}),$e.__colorMaterial=$e.material),$e.material.enableTexture("diffuseMap");var ot=Re.get("distance"),at=le+(ot==null?te.radius/100:ot);$e.scale.set(at,at,at),le=at;var ut=this._blankTexture||(this._blankTexture=ve.a.createBlankTexture("rgba(255, 255, 255, 0)"));$e.material.set("diffuseMap",ut),ve.a.loadTexture(Re.get("texture"),ce,{flipY:!1,anisotropic:8},function(nt){nt.surface&&nt.surface.attachToMesh($e),$e.material.set("diffuseMap",nt),ce.getZr().refresh()}),Re.get("show")?this.groupGL.add($e):this.groupGL.remove($e)}},this);var ue=this._earthMesh.material;ue.define("fragment","LAYER_DIFFUSEMAP_COUNT",se.length),ue.define("fragment","LAYER_EMISSIVEMAP_COUNT",he.length),ue.set("layerDiffuseMap",se),ue.set("layerDiffuseIntensity",fe),ue.set("layerEmissiveMap",he),ue.set("layerEmissionIntensity",ie);var me=Se.getModel("debug.wireframe");if(me.get("show")){ue.define("both","WIREFRAME_TRIANGLE");var Ce=ve.a.parseColor(me.get("lineStyle.color")||"rgba(0,0,0,0.5)"),Ie=pe.a.firstNotNull(me.get("lineStyle.width"),1);ue.set("wireframeLineWidth",Ie),ue.set("wireframeLineColor",Ce)}else ue.undefine("both","WIREFRAME_TRIANGLE")},_updateViewControl:function(Se,ce){var te=Se.coordinateSystem,ne=Se.getModel("viewControl"),le=te.viewGL.camera,se=this;function fe(){return{type:"globeChangeCamera",alpha:he.getAlpha(),beta:he.getBeta(),distance:he.getDistance()-te.radius,center:he.getCenter(),from:se.uid,globeId:Se.id}}var he=this._control;he.setViewGL(te.viewGL);var ie=ne.get("targetCoord"),ue,me;ie!=null&&(me=ie[0]+90,ue=ie[1]),he.setFromViewControlModel(ne,{baseDistance:te.radius,alpha:ue,beta:me}),he.off("update"),he.on("update",function(){ce.dispatchAction(fe())})},_displaceVertices:function(Se,ce){var te=Se.get("displacementQuality"),ne=Se.get("debug.wireframe.show"),le=Se.coordinateSystem;if(!(!Se.isDisplacementChanged()&&te===this._displacementQuality&&ne===this._showDebugWireframe)){this._displacementQuality=te,this._showDebugWireframe=ne;var se=this._sphereGeometry,fe={low:100,medium:200,high:400,ultra:800}[te]||200,he=fe/2;(se.widthSegments!==fe||ne)&&(se.widthSegments=fe,se.heightSegments=he,se.build()),this._doDisplaceVertices(se,le),ne&&se.generateBarycentric()}},_doDisplaceVertices:function(Se,ce){var te=Se.attributes.position.value,ne=Se.attributes.texcoord0.value,le=Se.__originalPosition;(!le||le.length!==te.length)&&(le=new Float32Array(te.length),le.set(te),Se.__originalPosition=le);for(var se=ce.displacementWidth,fe=ce.displacementHeight,he=ce.displacementData,ie=0;ie<Se.vertexCount;ie++){var ue=ie*3,me=ie*2,Ce=le[ue+1],Ie=le[ue+2],Fe=le[ue+3],Re=ne[me++],Ue=ne[me++],Ge=Math.round(Re*(se-1)),Je=Math.round(Ue*(fe-1)),Qe=Je*se+Ge,rt=he?he[Qe]:0;te[ue+1]=Ce+Ce*rt,te[ue+2]=Ie+Ie*rt,te[ue+3]=Fe+Fe*rt}Se.generateVertexNormals(),Se.dirty(),Se.updateBoundingBox()},_updateLight:function(Se,ce){var te=this._earthMesh;this._sceneHelper.updateLight(Se);var ne=this._sceneHelper.mainLight,le=Se.get("light.main.time")||new Date,se=xe.a.getPosition(Me.a.number.parseDate(le),0,0),fe=Math.cos(se.altitude);ne.position.y=-fe*Math.cos(se.azimuth),ne.position.x=Math.sin(se.altitude),ne.position.z=fe*Math.sin(se.azimuth),ne.lookAt(te.getWorldPosition())},dispose:function(Se,ce){this.groupGL.removeAll(),this._control.dispose()}})},function(He,Ne,be){"use strict";var _e=Math.PI,Me=Math.sin,ve=Math.cos,Ee=Math.tan,Pe=Math.asin,xe=Math.atan2,pe=_e/180,Ae=1e3*60*60*24,Se=2440588,ce=2451545;function te(Re){return Re.valueOf()/Ae-.5+Se}function ne(Re){return te(Re)-ce}var le=pe*23.4397;function se(Re,Ue){return xe(Me(Re)*ve(le)-Ee(Ue)*Me(le),ve(Re))}function fe(Re,Ue){return Pe(Me(Ue)*ve(le)+ve(Ue)*Me(le)*Me(Re))}function he(Re,Ue,Ge){return xe(Me(Re),ve(Re)*Me(Ue)-Ee(Ge)*ve(Ue))}function ie(Re,Ue,Ge){return Pe(Me(Ue)*Me(Ge)+ve(Ue)*ve(Ge)*ve(Re))}function ue(Re,Ue){return pe*(280.16+360.9856235*Re)-Ue}function me(Re){return pe*(357.5291+.98560028*Re)}function Ce(Re){var Ue=pe*(1.9148*Me(Re)+.02*Me(2*Re)+3e-4*Me(3*Re)),Ge=pe*102.9372;return Re+Ue+Ge+_e}function Ie(Re){var Ue=me(Re),Ge=Ce(Ue);return{dec:fe(Ge,0),ra:se(Ge,0)}}var Fe={};Fe.getPosition=function(Re,Ue,Ge){var Je=pe*-Ge,Qe=pe*Ue,rt=ne(Re),$e=Ie(rt),qe=ue(rt,Je)-$e.ra;return{azimuth:he(qe,Qe,$e.dec),altitude:ie(qe,Qe,$e.dec)}},Ne.a=Fe},function(He,Ne,be){"use strict";var _e=be(194),Me=be(0),ve=be.n(Me),Ee=be(41),Pe=be.n(Ee),xe=be(20),pe=be(3),Ae=be(2);function Se(se,fe){var he=document.createElement("canvas"),ie=he.getContext("2d"),ue=se.width,me=se.height;he.width=ue,he.height=me,ie.drawImage(se,0,0,ue,me);for(var Ce=ie.getImageData(0,0,ue,me).data,Ie=new Float32Array(Ce.length/4),Fe=0;Fe<Ce.length/4;Fe++){var Re=Ce[Fe*4];Ie[Fe]=Re/255*fe}return{data:Ie,width:ue,height:me}}function ce(se,fe){var he=se.getBoxLayoutParams(),ie=Pe.a.getLayoutRect(he,{width:fe.getWidth(),height:fe.getHeight()});ie.y=fe.getHeight()-ie.y-ie.height,this.viewGL.setViewport(ie.x,ie.y,ie.width,ie.height,fe.getDevicePixelRatio()),this.radius=se.get("globeRadius");var ue=se.get("globeOuterRadius");this.altitudeAxis&&this.altitudeAxis.setExtent(0,ue-this.radius)}function te(se,fe){var he=[1/0,-1/0];if(se.eachSeries(function(ue){if(ue.coordinateSystem===this){var me=ue.getData(),Ce=ue.coordDimToDataDim("alt")[0];if(Ce){var Ie=me.getDataExtent(Ce,!0);he[0]=Math.min(he[0],Ie[0]),he[1]=Math.max(he[1],Ie[1])}}},this),he&&isFinite(he[1]-he[0])){var ie=ve.a.helper.createScale(he,{type:"value",min:"dataMin",max:"dataMax"});this.altitudeAxis=new ve.a.Axis("altitude",ie),this.resize(this.model,fe)}}var ne={dimensions:_e.a.prototype.dimensions,create:function(se,fe){var he=[];return se.eachComponent("globe",function(ie){ie.__viewGL=ie.__viewGL||new xe.a;var ue=new _e.a;ue.viewGL=ie.__viewGL,ie.coordinateSystem=ue,ue.model=ie,he.push(ue),ue.resize=ce,ue.resize(ie,fe),ue.update=te}),se.eachSeries(function(ie){if(ie.get("coordinateSystem")==="globe"){var ue=ie.getReferringComponents("globe")[0];if(ue||(ue=se.getComponent("globe")),!ue)throw new Error('globe "'+pe.a.firstNotNull(ie.get("globe3DIndex"),ie.get("globe3DId"),0)+'" not found');var me=ue.coordinateSystem;ie.coordinateSystem=me}}),se.eachComponent("globe",function(ie,ue){var me=ie.coordinateSystem,Ce=ie.getDisplacementTexture(),Ie=ie.getDisplacemenScale();if(ie.isDisplacementChanged()){if(ie.hasDisplacement()){var Fe=!0;Ae.a.loadTexture(Ce,fe,function(Re){var Ue=Re.image,Ge=Se(Ue,Ie);ie.setDisplacementData(Ge.data,Ge.width,Ge.height),Fe||fe.dispatchAction({type:"globeUpdateDisplacment"})}),Fe=!1}else me.setDisplacementData(null,0,0);me.setDisplacementData(ie.displacementData,ie.displacementWidth,ie.displacementHeight)}}),he}};ve.a.registerCoordinateSystem("globe",ne);var le=ne},function(He,Ne,be){"use strict";var _e=be(1),Me=be.n(_e),ve=Me.a.vec3;function Ee(Pe){this.radius=Pe,this.viewGL=null,this.altitudeAxis,this.displacementData=null,this.displacementWidth,this.displacementHeight}Ee.prototype={constructor:Ee,dimensions:["lng","lat","alt"],type:"globe",containPoint:function(){},setDisplacementData:function(Pe,xe,pe){this.displacementData=Pe,this.displacementWidth=xe,this.displacementHeight=pe},_getDisplacementScale:function(Pe,xe){var pe=(Pe+180)/360*(this.displacementWidth-1),Ae=(90-xe)/180*(this.displacementHeight-1),Se=Math.round(pe)+Math.round(Ae)*this.displacementWidth;return this.displacementData[Se]},dataToPoint:function(Pe,xe){var pe=Pe[0],Ae=Pe[1],Se=Pe[2]||0,ce=this.radius;this.displacementData&&(ce*=1+this._getDisplacementScale(pe,Ae)),this.altitudeAxis&&(ce+=this.altitudeAxis.dataToCoord(Se)),pe=pe*Math.PI/180,Ae=Ae*Math.PI/180;var te=Math.cos(Ae)*ce;return xe=xe||[],xe[0]=-te*Math.cos(pe+Math.PI),xe[1]=Math.sin(Ae)*ce,xe[2]=te*Math.sin(pe+Math.PI),xe},pointToData:function(Pe,xe){var pe=Pe[0],Ae=Pe[1],Se=Pe[2],ce=ve.len(Pe);pe/=ce,Ae/=ce,Se/=ce;var te=Math.asin(Ae),ne=Math.atan2(Se,-pe);ne<0&&(ne=Math.PI*2+ne);var le=te*180/Math.PI,se=ne*180/Math.PI-180;return xe=xe||[],xe[0]=se,xe[1]=le,xe[2]=ce-this.radius,this.altitudeAxis&&(xe[2]=this.altitudeAxis.coordToData(xe[2])),xe}},Ne.a=Ee},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(196),Ee=be(198),Pe=be(199);Me.a.registerAction({type:"mapbox3DChangeCamera",event:"mapbox3dcamerachanged",update:"mapbox3D:updateCamera"},function(xe,pe){pe.eachComponent({mainType:"mapbox3D",query:xe},function(Ae){Ae.setMapboxCameraOption(xe)})})},function(He,Ne,be){"use strict";var _e=be(197),Me=be(0),ve=be.n(Me),Ee=be(3),Pe=be(2),xe=be(20);function pe(te,ne){var le=ne.getWidth(),se=ne.getHeight(),fe=ne.getDevicePixelRatio();this.viewGL.setViewport(0,0,le,se,fe),this.width=le,this.height=se,this.altitudeScale=te.get("altitudeScale"),this.boxHeight=te.get("boxHeight")}function Ae(te,ne){if(this.model.get("boxHeight")!=="auto"){var le=[1/0,-1/0];te.eachSeries(function(se){if(se.coordinateSystem===this){var fe=se.getData(),he=se.coordDimToDataDim("alt")[0];if(he){var ie=fe.getDataExtent(he,!0);le[0]=Math.min(le[0],ie[0]),le[1]=Math.max(le[1],ie[1])}}},this),le&&isFinite(le[1]-le[0])&&(this.altitudeExtent=le)}}var Se={dimensions:_e.a.prototype.dimensions,create:function(te,ne){var le=[];return te.eachComponent("mapbox3D",function(se){var fe=se.__viewGL;fe||(fe=se.__viewGL=new xe.a,fe.setRootNode(new Pe.a.Node));var he=new _e.a;he.viewGL=se.__viewGL,he.resize=pe,he.resize(se,ne),le.push(he),se.coordinateSystem=he,he.model=se,he.setCameraOption(se.getMapboxCameraOption()),he.update=Ae}),te.eachSeries(function(se){if(se.get("coordinateSystem")==="mapbox3D"){var fe=se.getReferringComponents("mapbox3D")[0];if(fe||(fe=te.getComponent("mapbox3D")),!fe)throw new Error('mapbox3D "'+Ee.a.firstNotNull(se.get("mapbox3DIndex"),se.get("mapbox3DId"),0)+'" not found');se.coordinateSystem=fe.coordinateSystem}}),le}};ve.a.registerCoordinateSystem("mapbox3D",Se);var ce=Se},function(He,Ne,be){"use strict";var _e=be(1),Me=be.n(_e),ve=Me.a.mat4,Ee=512,Pe=.6435011087932844,xe=Math.PI,pe=1/10;function Ae(){this.width=0,this.height=0,this.altitudeScale=1,this.boxHeight="auto",this.altitudeExtent,this.bearing=0,this.pitch=0,this.center=[0,0],this._origin,this.zoom=0,this._initialZoom}Ae.prototype={constructor:Ae,type:"mapbox3D",dimensions:["lng","lat","alt"],containPoint:function(){},setCameraOption:function(Se){this.bearing=Se.bearing,this.pitch=Se.pitch,this.center=Se.center,this.zoom=Se.zoom,this._origin||(this._origin=this.projectOnTileWithScale(this.center,Ee)),this._initialZoom==null&&(this._initialZoom=this.zoom),this.updateTransform()},updateTransform:function(){if(this.height){var Se=.5/Math.tan(Pe/2)*this.height*pe,ce=Math.max(Math.min(this.pitch,60),0)/180*Math.PI,te=Pe/2,ne=Math.PI/2+ce,le=Math.sin(te)*Se/Math.sin(Math.PI-ne-te),se=Math.cos(Math.PI/2-ce)*le+Se,fe=se*1.1,he=new Float64Array(16);ve.perspective(he,Pe,this.width/this.height,1,fe),this.viewGL.camera.projectionMatrix.setArray(he),this.viewGL.camera.decomposeProjectionMatrix();var he=ve.identity(new Float64Array(16)),ie=this.dataToPoint(this.center);ve.scale(he,he,[1,-1,1]),ve.translate(he,he,[0,0,-Se]),ve.rotateX(he,he,ce),ve.rotateZ(he,he,-this.bearing/180*Math.PI),ve.translate(he,he,[-ie[0]*this.getScale()*pe,-ie[1]*this.getScale()*pe,0]),this.viewGL.camera.viewMatrix.array=he;var ue=new Float64Array(16);ve.invert(ue,he),this.viewGL.camera.worldTransform.array=ue,this.viewGL.camera.decomposeWorldTransform();var me=Ee*this.getScale(),Ce;if(this.altitudeExtent&&!isNaN(this.boxHeight)){var Ie=this.altitudeExtent[1]-this.altitudeExtent[0];Ce=this.boxHeight/Ie*this.getScale()/Math.pow(2,this._initialZoom)}else Ce=me/(2*Math.PI*6378e3*Math.abs(Math.cos(this.center[1]*(Math.PI/180))))*this.altitudeScale*pe;this.viewGL.rootNode.scale.set(this.getScale()*pe,this.getScale()*pe,Ce)}},getScale:function(){return Math.pow(2,this.zoom)},projectOnTile:function(Se,ce){return this.projectOnTileWithScale(Se,this.getScale()*Ee,ce)},projectOnTileWithScale:function(Se,ce,te){var ne=Se[0],le=Se[1],se=ne*xe/180,fe=le*xe/180,he=ce*(se+xe)/(2*xe),ie=ce*(xe-Math.log(Math.tan(xe/4+fe*.5)))/(2*xe);return te=te||[],te[0]=he,te[1]=ie,te},unprojectFromTile:function(Se,ce){return this.unprojectOnTileWithScale(Se,this.getScale()*Ee,ce)},unprojectOnTileWithScale:function(Se,ce,te){var ne=Se[0],le=Se[1],se=ne/ce*(2*xe)-xe,fe=2*(Math.atan(Math.exp(xe-le/ce*(2*xe)))-xe/4);return te=te||[],te[0]=se*180/xe,te[1]=fe*180/xe,te},dataToPoint:function(Se,ce){return ce=this.projectOnTileWithScale(Se,Ee,ce),ce[0]-=this._origin[0],ce[1]-=this._origin[1],ce[2]=isNaN(Se[2])?0:Se[2],isNaN(Se[2])||(ce[2]=Se[2],this.altitudeExtent&&(ce[2]-=this.altitudeExtent[0])),ce}},Ne.a=Ae},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(31),Ee=be(32),Pe=["zoom","center","pitch","bearing"],xe=Me.a.extendComponentModel({type:"mapbox3D",layoutMode:"box",coordinateSystem:null,defaultOption:{zlevel:-10,style:"mapbox://styles/mapbox/light-v9",center:[0,0],zoom:0,pitch:0,bearing:0,light:{main:{alpha:20,beta:30}},altitudeScale:1,boxHeight:"auto"},getMapboxCameraOption:function(){var Ae=this;return Pe.reduce(function(Se,ce){return Se[ce]=Ae.get(ce),Se},{})},setMapboxCameraOption:function(Ae){Ae!=null&&Pe.forEach(function(Se){Ae[Se]!=null&&(this.option[Se]=Ae[Se])},this)},getMapbox:function(){return this._mapbox},setMapbox:function(Ae){this._mapbox=Ae}});Me.a.util.merge(xe.prototype,ve.a),Me.a.util.merge(xe.prototype,Ee.a);var pe=xe},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(200),Ee=be(34),Pe=be(2),xe=be(201);Pe.a.Shader.import(xe.a);var pe=512,Ae=Me.a.extendComponentView({type:"mapbox3D",__ecgl__:!0,init:function(Se,ce){var te=ce.getZr();this._zrLayer=new ve.a("mapbox3D",te),te.painter.insertLayer(-1e3,this._zrLayer),this._lightRoot=new Pe.a.Node,this._sceneHelper=new Ee.a(this._lightRoot),this._sceneHelper.initLight(this._lightRoot);var ne=this._zrLayer.getMapbox(),le=this._dispatchInteractAction.bind(this,ce,ne);["zoom","rotate","drag","pitch","rotate","move"].forEach(function(se){ne.on(se,le)}),this._groundMesh=new Pe.a.Mesh({geometry:new Pe.a.PlaneGeometry,material:new Pe.a.Material({shader:new Pe.a.Shader({vertex:Pe.a.Shader.source("ecgl.displayShadow.vertex"),fragment:Pe.a.Shader.source("ecgl.displayShadow.fragment")}),depthMask:!1}),renderOrder:-100,culling:!1,castShadow:!1,$ignorePicking:!0,renderNormal:!0})},render:function(Se,ce,te){var ne=this._zrLayer.getMapbox(),le=Se.get("style"),se=JSON.stringify(le);se!==this._oldStyleStr&&le&&ne.setStyle(le),this._oldStyleStr=se,ne.setCenter(Se.get("center")),ne.setZoom(Se.get("zoom")),ne.setPitch(Se.get("pitch")),ne.setBearing(Se.get("bearing")),Se.setMapbox(ne);var fe=Se.coordinateSystem;fe.viewGL.scene.add(this._lightRoot),fe.viewGL.add(this._groundMesh),this._updateGroundMesh(),this._sceneHelper.setScene(fe.viewGL.scene),this._sceneHelper.updateLight(Se),fe.viewGL.setPostEffect(Se.getModel("postEffect"),te),fe.viewGL.setTemporalSuperSampling(Se.getModel("temporalSuperSampling")),this._mapbox3DModel=Se},afterRender:function(Se,ce,te,ne){var le=ne.renderer;this._sceneHelper.updateAmbientCubemap(le,Se,te),this._sceneHelper.updateSkybox(le,Se,te),Se.coordinateSystem.viewGL.scene.traverse(function(se){se.material&&(se.material.define("fragment","NORMAL_UP_AXIS",2),se.material.define("fragment","NORMAL_FRONT_AXIS",1))})},updateCamera:function(Se,ce,te,ne){Se.coordinateSystem.setCameraOption(ne),this._updateGroundMesh(),te.getZr().refresh()},_dispatchInteractAction:function(Se,ce,te){Se.dispatchAction({type:"mapbox3DChangeCamera",pitch:ce.getPitch(),zoom:ce.getZoom(),center:ce.getCenter().toArray(),bearing:ce.getBearing(),mapbox3DId:this._mapbox3DModel&&this._mapbox3DModel.id})},_updateGroundMesh:function(){if(this._mapbox3DModel){var Se=this._mapbox3DModel.coordinateSystem,ce=Se.dataToPoint(Se.center);this._groundMesh.position.set(ce[0],ce[1],-.001);var te=new Pe.a.Plane(new Pe.a.Vector3(0,0,1),0),ne=Se.viewGL.camera.castRay(new Pe.a.Vector2(-1,-1)),le=Se.viewGL.camera.castRay(new Pe.a.Vector2(1,1)),se=ne.intersectPlane(te),fe=le.intersectPlane(te),he=se.dist(fe)/Se.viewGL.rootNode.scale.x;this._groundMesh.scale.set(he,he,1)}},dispose:function(Se,ce){ce.getZr().delLayer(-1e3)}})},function(He,Ne,be){"use strict";function _e(ve,Ee){if(this.id=ve,this.zr=Ee,this.dom=document.createElement("div"),this.dom.style.cssText="position:absolute;left:0;right:0;top:0;bottom:0;",!mapboxgl)throw new Error("Mapbox GL library must be included. See https://www.mapbox.com/mapbox-gl-js/api/");this._mapbox=new mapboxgl.Map({container:this.dom}),this._initEvents()}_e.prototype.resize=function(){this._mapbox.resize()},_e.prototype.getMapbox=function(){return this._mapbox},_e.prototype.clear=function(){},_e.prototype.refresh=function(){this._mapbox.resize()};var Me=["mousedown","mouseup","click","dblclick","mousemove","mousewheel","wheel","touchstart","touchend","touchmove","touchcancel"];_e.prototype._initEvents=function(){var ve=this._mapbox.getCanvasContainer();this._handlers=this._handlers||{contextmenu:function(Ee){return Ee.preventDefault(),!1}},Me.forEach(function(Ee){this._handlers[Ee]=function(Pe){var xe={};for(var pe in Pe)xe[pe]=Pe[pe];xe.bubbles=!1;var Ae=new Pe.constructor(Pe.type,xe);ve.dispatchEvent(Ae)},this.zr.dom.addEventListener(Ee,this._handlers[Ee])},this),this.zr.dom.addEventListener("contextmenu",this._handlers.contextmenu)},_e.prototype.dispose=function(){Me.forEach(function(ve){this.zr.dom.removeEventListener(ve,this._handlers[ve])},this)},Ne.a=_e},function(He,Ne,be){"use strict";Ne.a=`
|
|
|
@export ecgl.displayShadow.vertex
|
|
|
|
|
|
@import ecgl.common.transformUniforms
|
|
|
|
|
|
@import ecgl.common.uv.header
|
|
|
|
|
|
@import ecgl.common.attributes
|
|
|
|
|
|
varying vec3 v_WorldPosition;
|
|
|
|
|
|
varying vec3 v_Normal;
|
|
|
|
|
|
void main()
|
|
|
{
|
|
|
@import ecgl.common.uv.main
|
|
|
v_Normal = normalize((worldInverseTranspose * vec4(normal, 0.0)).xyz);
|
|
|
|
|
|
v_WorldPosition = (world * vec4(position, 1.0)).xyz;
|
|
|
gl_Position = worldViewProjection * vec4(position, 1.0);
|
|
|
}
|
|
|
|
|
|
@end
|
|
|
|
|
|
|
|
|
@export ecgl.displayShadow.fragment
|
|
|
|
|
|
@import ecgl.common.uv.fragmentHeader
|
|
|
|
|
|
varying vec3 v_Normal;
|
|
|
varying vec3 v_WorldPosition;
|
|
|
|
|
|
uniform float roughness: 0.2;
|
|
|
|
|
|
#ifdef DIRECTIONAL_LIGHT_COUNT
|
|
|
@import clay.header.directional_light
|
|
|
#endif
|
|
|
|
|
|
@import ecgl.common.ssaoMap.header
|
|
|
|
|
|
@import clay.plugin.compute_shadow_map
|
|
|
|
|
|
void main()
|
|
|
{
|
|
|
float shadow = 1.0;
|
|
|
|
|
|
@import ecgl.common.ssaoMap.main
|
|
|
|
|
|
#if defined(DIRECTIONAL_LIGHT_COUNT) && defined(DIRECTIONAL_LIGHT_SHADOWMAP_COUNT)
|
|
|
float shadowContribsDir[DIRECTIONAL_LIGHT_COUNT];
|
|
|
if(shadowEnabled)
|
|
|
{
|
|
|
computeShadowOfDirectionalLights(v_WorldPosition, shadowContribsDir);
|
|
|
}
|
|
|
for (int i = 0; i < DIRECTIONAL_LIGHT_COUNT; i++) {
|
|
|
shadow = min(shadow, shadowContribsDir[i] * 0.5 + 0.5);
|
|
|
}
|
|
|
#endif
|
|
|
|
|
|
shadow *= 0.5 + ao * 0.5;
|
|
|
shadow = clamp(shadow, 0.0, 1.0);
|
|
|
|
|
|
gl_FragColor = vec4(vec3(0.0), 1.0 - shadow);
|
|
|
}
|
|
|
|
|
|
@end`},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(203),Ee=be(206),Pe=be(208),xe=be(16);Me.a.registerVisual(Object(xe.a)("bar3D")),Me.a.registerProcessor(function(pe,Ae){pe.eachSeriesByType("bar3d",function(Se){var ce=Se.getData();ce.filterSelf(function(te){return ce.hasValue(te)})})})},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(4),Ee=be(1),Pe=be.n(Ee),xe=be(204),pe=be(205),Ae=Pe.a.vec3;function Se(ne,le){var se=ne.getData(),fe=ne.get("minHeight")||0,he=ne.get("barSize"),ie=["lng","lat","alt"].map(function(Ce){return ne.coordDimToDataDim(Ce)[0]});if(he==null){var ue=le.radius*Math.PI,me=Object(pe.a)(se,ie[0],ie[1]);he=[ue/Math.sqrt(se.count()/me),ue/Math.sqrt(se.count()/me)]}else Me.a.util.isArray(he)||(he=[he,he]);se.each(ie,function(Ce,Ie,Fe,Re){var Ue=se.get(ie[2],Re,!0),Ge=se.stackedOn?Ue-Fe:le.altitudeAxis.scale.getExtent()[0],Je=Math.max(le.altitudeAxis.dataToCoord(Fe),fe),Qe=le.dataToPoint([Ce,Ie,Ge]),rt=le.dataToPoint([Ce,Ie,Ue]),$e=Ae.sub([],rt,Qe);Ae.normalize($e,$e);var qe=[he[0],Je,he[1]];se.setItemLayout(Re,[Qe,$e,qe])}),se.setLayout("orient",ve.a.UP.array)}function ce(ne,le){var se=ne.getData(),fe=ne.get("barSize"),he=ne.get("minHeight")||0,ie=["lng","lat","alt"].map(function(Ie){return ne.coordDimToDataDim(Ie)[0]});if(fe==null){var ue=Math.min(le.size[0],le.size[2]),me=Object(pe.a)(se,ie[0],ie[1]);fe=[ue/Math.sqrt(se.count()/me),ue/Math.sqrt(se.count()/me)]}else Me.a.util.isArray(fe)||(fe=[fe,fe]);var Ce=[0,1,0];se.each(ie,function(Ie,Fe,Re,Ue){var Ge=se.get(ie[2],Ue,!0),Je=se.stackedOn?Ge-Re:le.altitudeAxis.scale.getExtent()[0],Qe=Math.max(le.altitudeAxis.dataToCoord(Re),he),rt=le.dataToPoint([Ie,Fe,Je]),$e=[fe[0],Qe,fe[1]];se.setItemLayout(Ue,[rt,Ce,$e])}),se.setLayout("orient",[1,0,0])}function te(ne,le){var se=ne.getData(),fe=ne.coordDimToDataDim("lng")[0],he=ne.coordDimToDataDim("lat")[0],ie=ne.coordDimToDataDim("alt")[0],ue=ne.get("barSize"),me=ne.get("minHeight")||0;if(ue==null){var Ce=se.getDataExtent(fe),Ie=se.getDataExtent(he),Fe=le.dataToPoint([Ce[0],Ie[0]]),Re=le.dataToPoint([Ce[1],Ie[1]]),Ue=Math.min(Math.abs(Fe[0]-Re[0]),Math.abs(Fe[1]-Re[1]))||1,Ge=Object(pe.a)(se,fe,he);ue=[Ue/Math.sqrt(se.count()/Ge),Ue/Math.sqrt(se.count()/Ge)]}else Me.a.util.isArray(ue)||(ue=[ue,ue]),ue[0]/=le.getScale()/16,ue[1]/=le.getScale()/16;var Je=[0,0,1];se.each([fe,he,ie],function(Qe,rt,$e,qe){var ot=se.get(ie,qe,!0),at=se.stackedOn?ot-$e:0,ut=le.dataToPoint([Qe,rt,at]),nt=le.dataToPoint([Qe,rt,ot]),lt=Math.max(nt[2]-ut[2],me),yt=[ue[0],lt,ue[1]];se.setItemLayout(qe,[ut,Je,yt])}),se.setLayout("orient",[1,0,0])}Me.a.registerLayout(function(ne,le){ne.eachSeriesByType("bar3D",function(se){var fe=se.coordinateSystem,he=fe&&fe.type;if(he==="globe")Se(se,fe);else if(he==="cartesian3D")Object(xe.a)(se,fe);else if(he==="geo3D")ce(se,fe);else if(he==="mapbox3D")te(se,fe);else throw fe?new Error("bar3D doesn't support coordinate system "+fe.type):new Error("bar3D doesn't have coordinate system.")})})},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(1),Ee=be.n(ve),Pe=Ee.a.vec3;function xe(Ae){var Se=Ae[0],ce=Ae[1];return!(Se>0&&ce>0||Se<0&&ce<0)}function pe(Ae,Se){var ce=Ae.getData(),te=Ae.get("barSize");if(te==null){var ne=Se.size,le,se,fe=Se.getAxis("x"),he=Se.getAxis("y");fe.type==="category"?le=fe.getBandWidth()*.7:le=Math.round(ne[0]/Math.sqrt(ce.count()))*.6,he.type==="category"?se=he.getBandWidth()*.7:se=Math.round(ne[1]/Math.sqrt(ce.count()))*.6,te=[le,se]}else Me.a.util.isArray(te)||(te=[te,te]);var ie=Se.getAxis("z").scale.getExtent(),ue=xe(ie),me=["x","y","z"].map(function(Ce){return Ae.coordDimToDataDim(Ce)[0]});ce.each(me,function(Ce,Ie,Fe,Re){var Ue=ce.get(me[2],Re,!0),Ge=ce.stackedOn?Ue-Fe:ue?0:ie[0],Je=Se.dataToPoint([Ce,Ie,Ge]),Qe=Se.dataToPoint([Ce,Ie,Ue]),rt=Pe.dist(Je,Qe),$e=[0,Qe[1]<Je[1]?-1:1,0];Math.abs(rt)===0&&(rt=.1);var qe=[te[0],rt,te[1]];ce.setItemLayout(Re,[Je,$e,qe])}),ce.setLayout("orient",[1,0,0])}Ne.a=pe},function(He,Ne,be){"use strict";Ne.a=function(_e,Me,ve){for(var Ee=_e.getDataExtent(Me),Pe=_e.getDataExtent(ve),xe=Ee[1]-Ee[0]||Ee[0],pe=Pe[1]-Pe[0]||Pe[0],Ae=50,Se=new Uint8Array(Ae*Ae),ce=0;ce<_e.count();ce++){var te=_e.get(Me,ce),ne=_e.get(ve,ce),le=Math.floor((te-Ee[0])/xe*(Ae-1)),se=Math.floor((ne-Pe[0])/pe*(Ae-1)),fe=se*Ae+le;Se[fe]=Se[fe]||1}for(var he=0,ce=0;ce<Se.length;ce++)Se[ce]&&he++;return he/Se.length}},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(2),Ee=be(3),Pe=be(27),xe=be(207),pe=be(61),Ae=be(1),Se=be.n(Ae),ce=Se.a.vec3,te=Me.a.extendChartView({type:"bar3D",__ecgl__:!0,init:function(ne,le){this.groupGL=new ve.a.Node,this._api=le,this._labelsBuilder=new pe.a(256,256,le);var se=this;this._labelsBuilder.getLabelPosition=function(fe,he,ie){if(se._data){var ue=se._data.getItemLayout(fe),me=ue[0],Ce=ue[1],Ie=ue[2][1];return ce.scaleAndAdd([],me,Ce,ie+Ie)}else return[0,0]},this._labelsBuilder.getMesh().renderOrder=100},render:function(ne,le,se){var fe=this._prevBarMesh;this._prevBarMesh=this._barMesh,this._barMesh=fe,this._barMesh||(this._barMesh=new ve.a.Mesh({geometry:new xe.a,shadowDepthMaterial:new ve.a.Material({shader:new ve.a.Shader(ve.a.Shader.source("ecgl.sm.depth.vertex"),ve.a.Shader.source("ecgl.sm.depth.fragment"))}),culling:ne.coordinateSystem.type==="cartesian3D",renderOrder:10,renderNormal:!0})),this.groupGL.remove(this._prevBarMesh),this.groupGL.add(this._barMesh),this.groupGL.add(this._labelsBuilder.getMesh());var he=ne.coordinateSystem;if(this._doRender(ne,se),he&&he.viewGL){he.viewGL.add(this.groupGL);var ie=he.viewGL.isLinearSpace()?"define":"undefine";this._barMesh.material[ie]("fragment","SRGB_DECODE")}this._data=ne.getData(),this._labelsBuilder.updateData(this._data),this._labelsBuilder.updateLabels(),this._updateAnimation(ne)},_updateAnimation:function(ne){ve.a.updateVertexAnimation([["prevPosition","position"],["prevNormal","normal"]],this._prevBarMesh,this._barMesh,ne)},_doRender:function(ne,le){var se=ne.getData(),fe=ne.get("shading"),he=fe!=="color",ie=this,ue=this._barMesh,me="ecgl."+fe;(!ue.material||ue.material.shader.name!==me)&&(ue.material=ve.a.createMaterial(me,["VERTEX_COLOR"])),ve.a.setMaterialFromModel(fe,ue.material,ne,le),ue.geometry.enableNormal=he,ue.geometry.resetOffset();var Ce=ne.get("bevelSize"),Ie=ne.get("bevelSmoothness");ue.geometry.bevelSegments=Ie,ue.geometry.bevelSize=Ce;var Fe=[],Re=new Float32Array(se.count()*4),Ue=0,rt=0,Ge=!1;se.each(function(qe){if(se.hasValue(qe)){var ot=se.getItemVisual(qe,"color"),at=se.getItemVisual(qe,"opacity");at==null&&(at=1),ve.a.parseColor(ot,Fe),Fe[3]*=at,Re[Ue++]=Fe[0],Re[Ue++]=Fe[1],Re[Ue++]=Fe[2],Re[Ue++]=Fe[3],Fe[3]>0&&(rt++,Fe[3]<.99&&(Ge=!0))}}),ue.geometry.setBarCount(rt);var Je=se.getLayout("orient"),Qe=this._barIndexOfData=new Int32Array(se.count()),rt=0;se.each(function(qe){if(!se.hasValue(qe)){Qe[qe]=-1;return}var ot=se.getItemLayout(qe),at=ot[0],ut=ot[1],nt=ot[2],lt=qe*4;Fe[0]=Re[lt++],Fe[1]=Re[lt++],Fe[2]=Re[lt++],Fe[3]=Re[lt++],Fe[3]>0&&(ie._barMesh.geometry.addBar(at,ut,Je,nt,Fe,qe),Qe[qe]=rt++)}),ue.geometry.dirty(),ue.geometry.updateBoundingBox();var $e=ue.material;$e.transparent=Ge,$e.depthMask=!Ge,ue.geometry.sortTriangles=Ge,this._initHandler(ne,le)},_initHandler:function(ne,le){var se=ne.getData(),fe=this._barMesh,he=ne.coordinateSystem.type==="cartesian3D";fe.seriesIndex=ne.seriesIndex;var ie=-1;fe.off("mousemove"),fe.off("mouseout"),fe.on("mousemove",function(ue){var me=fe.geometry.getDataIndexOfVertex(ue.triangle[0]);me!==ie&&(this._downplay(ie),this._highlight(me),this._labelsBuilder.updateLabels([me]),he&&le.dispatchAction({type:"grid3DShowAxisPointer",value:[se.get("x",me),se.get("y",me),se.get("z",me,!0)]})),ie=me,fe.dataIndex=me},this),fe.on("mouseout",function(ue){this._downplay(ie),this._labelsBuilder.updateLabels(),ie=-1,fe.dataIndex=-1,he&&le.dispatchAction({type:"grid3DHideAxisPointer"})},this)},_highlight:function(ne){var le=this._data;if(le){var se=this._barIndexOfData[ne];if(!(se<0)){var fe=le.getItemModel(ne),he=fe.getModel("emphasis.itemStyle"),ie=he.get("color"),ue=he.get("opacity");if(ie==null){var me=le.getItemVisual(ne,"color");ie=Me.a.color.lift(me,-.4)}ue==null&&(ue=le.getItemVisual(ne,"opacity"));var Ce=ve.a.parseColor(ie);Ce[3]*=ue,this._barMesh.geometry.setColor(se,Ce),this._api.getZr().refresh()}}},_downplay:function(ne){var le=this._data;if(le){var se=this._barIndexOfData[ne];if(!(se<0)){var fe=le.getItemVisual(ne,"color"),he=le.getItemVisual(ne,"opacity"),ie=ve.a.parseColor(fe);ie[3]*=he,this._barMesh.geometry.setColor(se,ie),this._api.getZr().refresh()}}},highlight:function(ne,le,se,fe){this._toggleStatus("highlight",ne,le,se,fe)},downplay:function(ne,le,se,fe){this._toggleStatus("downplay",ne,le,se,fe)},_toggleStatus:function(ne,le,se,fe,he){var ie=le.getData(),ue=Ee.a.queryDataIndex(ie,he),me=this;ue!=null?Me.a.util.each(Pe.a.normalizeToArray(ue),function(Ce){ne==="highlight"?this._highlight(Ce):this._downplay(Ce)},this):ie.each(function(Ce){ne==="highlight"?me._highlight(Ce):me._downplay(Ce)})},remove:function(){this.groupGL.removeAll()},dispose:function(){this.groupGL.removeAll()}})},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(33),Ee=be(60),Pe=be(13),xe=be(1),pe=be.n(xe),Ae=pe.a.vec3,Se=pe.a.mat3,ce=Pe.a.extend(function(){return{attributes:{position:new Pe.a.Attribute("position","float",3,"POSITION"),normal:new Pe.a.Attribute("normal","float",3,"NORMAL"),color:new Pe.a.Attribute("color","float",4,"COLOR"),prevPosition:new Pe.a.Attribute("prevPosition","float",3),prevNormal:new Pe.a.Attribute("prevNormal","float",3)},dynamic:!0,enableNormal:!1,bevelSize:1,bevelSegments:0,_dataIndices:null,_vertexOffset:0,_triangleOffset:0}},{resetOffset:function(){this._vertexOffset=0,this._triangleOffset=0},setBarCount:function(te){var ne=this.enableNormal,le=this.getBarVertexCount()*te,se=this.getBarTriangleCount()*te;this.vertexCount!==le&&(this.attributes.position.init(le),ne?this.attributes.normal.init(le):this.attributes.normal.value=null,this.attributes.color.init(le)),this.triangleCount!==se&&(this.indices=le>65535?new Uint32Array(se*3):new Uint16Array(se*3),this._dataIndices=new Uint32Array(le))},getBarVertexCount:function(){var te=this.bevelSize>0?this.bevelSegments:0;return te>0?this._getBevelBarVertexCount(te):this.enableNormal?24:8},getBarTriangleCount:function(){var te=this.bevelSize>0?this.bevelSegments:0;return te>0?this._getBevelBarTriangleCount(te):12},_getBevelBarVertexCount:function(te){return(te+1)*4*(te+1)*2},_getBevelBarTriangleCount:function(te){var ne=te*4+3,le=te*2+1;return(ne+1)*le*2+4},setColor:function(te,ne){for(var le=this.getBarVertexCount(),se=le*te,fe=le*(te+1),he=se;he<fe;he++)this.attributes.color.set(he,ne);this.dirtyAttribute("color")},getDataIndexOfVertex:function(te){return this._dataIndices?this._dataIndices[te]:null},addBar:function(){for(var te=Ae.create,ne=Ae.scaleAndAdd,le=te(),se=te(),fe=te(),he=te(),ie=te(),ue=te(),me=te(),Ce=[],Ie=[],Fe=0;Fe<8;Fe++)Ce[Fe]=te();for(var Re=[[0,1,5,4],[2,3,7,6],[4,5,6,7],[3,2,1,0],[0,4,7,3],[1,2,6,5]],Ue=[0,1,2,0,2,3],Ge=[],Fe=0;Fe<Re.length;Fe++)for(var Je=Re[Fe],Qe=0;Qe<2;Qe++){for(var rt=[],$e=0;$e<3;$e++)rt.push(Je[Ue[Qe*3+$e]]);Ge.push(rt)}return function(qe,ot,at,ut,nt,lt){var yt=this._vertexOffset;if(this.bevelSize>0&&this.bevelSegments>0)this._addBevelBar(qe,ot,at,ut,this.bevelSize,this.bevelSegments,nt);else{Ae.copy(fe,ot),Ae.normalize(fe,fe),Ae.cross(he,at,fe),Ae.normalize(he,he),Ae.cross(se,fe,he),Ae.normalize(he,he),Ae.negate(ie,se),Ae.negate(ue,fe),Ae.negate(me,he),ne(Ce[0],qe,se,ut[0]/2),ne(Ce[0],Ce[0],he,ut[2]/2),ne(Ce[1],qe,se,ut[0]/2),ne(Ce[1],Ce[1],me,ut[2]/2),ne(Ce[2],qe,ie,ut[0]/2),ne(Ce[2],Ce[2],me,ut[2]/2),ne(Ce[3],qe,ie,ut[0]/2),ne(Ce[3],Ce[3],he,ut[2]/2),ne(le,qe,fe,ut[1]),ne(Ce[4],le,se,ut[0]/2),ne(Ce[4],Ce[4],he,ut[2]/2),ne(Ce[5],le,se,ut[0]/2),ne(Ce[5],Ce[5],me,ut[2]/2),ne(Ce[6],le,ie,ut[0]/2),ne(Ce[6],Ce[6],me,ut[2]/2),ne(Ce[7],le,ie,ut[0]/2),ne(Ce[7],Ce[7],he,ut[2]/2);var ft=this.attributes;if(this.enableNormal){Ie[0]=se,Ie[1]=ie,Ie[2]=fe,Ie[3]=ue,Ie[4]=he,Ie[5]=me;for(var ct=this._vertexOffset,vt=0;vt<Re.length;vt++){for(var Ut=this._triangleOffset*3,Zt=0;Zt<6;Zt++)this.indices[Ut++]=ct+Ue[Zt];ct+=4,this._triangleOffset+=2}for(var vt=0;vt<Re.length;vt++)for(var en=Ie[vt],Zt=0;Zt<4;Zt++){var mn=Re[vt][Zt];ft.position.set(this._vertexOffset,Ce[mn]),ft.normal.set(this._vertexOffset,en),ft.color.set(this._vertexOffset++,nt)}}else{for(var vt=0;vt<Ge.length;vt++){for(var Ut=this._triangleOffset*3,Zt=0;Zt<3;Zt++)this.indices[Ut+Zt]=Ge[vt][Zt]+this._vertexOffset;this._triangleOffset++}for(var vt=0;vt<Ce.length;vt++)ft.position.set(this._vertexOffset,Ce[vt]),ft.color.set(this._vertexOffset++,nt)}}for(var Bt=this._vertexOffset,vt=yt;vt<Bt;vt++)this._dataIndices[vt]=lt}}(),_addBevelBar:function(){var te=Ae.create(),ne=Ae.create(),le=Ae.create(),se=Se.create(),fe=[],he=[1,-1,-1,1],ie=[1,1,-1,-1],ue=[2,0];return function(me,Ce,Ie,Fe,Re,Ue,Ge){Ae.copy(ne,Ce),Ae.normalize(ne,ne),Ae.cross(le,Ie,ne),Ae.normalize(le,le),Ae.cross(te,ne,le),Ae.normalize(le,le),se[0]=te[0],se[1]=te[1],se[2]=te[2],se[3]=ne[0],se[4]=ne[1],se[5]=ne[2],se[6]=le[0],se[7]=le[1],se[8]=le[2],Re=Math.min(Fe[0],Fe[2])/2*Re;for(var Je=0;Je<3;Je++)fe[Je]=Math.max(Fe[Je]-Re*2,0);for(var Qe=(Fe[0]-fe[0])/2,rt=(Fe[1]-fe[1])/2,$e=(Fe[2]-fe[2])/2,qe=[],ot=[],at=this._vertexOffset,ut=[],Je=0;Je<2;Je++){ut[Je]=ut[Je]=[];for(var nt=0;nt<=Ue;nt++)for(var lt=0;lt<4;lt++){(nt===0&&Je===0||Je===1&&nt===Ue)&&ut[Je].push(at);for(var yt=0;yt<=Ue;yt++){var ft=yt/Ue*Math.PI/2+Math.PI/2*lt,ct=nt/Ue*Math.PI/2+Math.PI/2*Je;ot[0]=Qe*Math.cos(ft)*Math.sin(ct),ot[1]=rt*Math.cos(ct),ot[2]=$e*Math.sin(ft)*Math.sin(ct),qe[0]=ot[0]+he[lt]*fe[0]/2,qe[1]=ot[1]+rt+ue[Je]*fe[1]/2,qe[2]=ot[2]+ie[lt]*fe[2]/2,Math.abs(Qe-rt)<1e-6&&Math.abs(rt-$e)<1e-6||(ot[0]/=Qe*Qe,ot[1]/=rt*rt,ot[2]/=$e*$e),Ae.normalize(ot,ot),Ae.transformMat3(qe,qe,se),Ae.transformMat3(ot,ot,se),Ae.add(qe,qe,me),this.attributes.position.set(at,qe),this.enableNormal&&this.attributes.normal.set(at,ot),this.attributes.color.set(at,Ge),at++}}}for(var vt=Ue*4+3,Ut=Ue*2+1,Zt=vt+1,lt=0;lt<Ut;lt++)for(var Je=0;Je<=vt;Je++){var en=lt*Zt+Je+this._vertexOffset,mn=lt*Zt+(Je+1)%Zt+this._vertexOffset,Bt=(lt+1)*Zt+(Je+1)%Zt+this._vertexOffset,tn=(lt+1)*Zt+Je+this._vertexOffset;this.setTriangleIndices(this._triangleOffset++,[Bt,en,mn]),this.setTriangleIndices(this._triangleOffset++,[Bt,tn,en])}this.setTriangleIndices(this._triangleOffset++,[ut[0][0],ut[0][2],ut[0][1]]),this.setTriangleIndices(this._triangleOffset++,[ut[0][0],ut[0][3],ut[0][2]]),this.setTriangleIndices(this._triangleOffset++,[ut[1][0],ut[1][1],ut[1][2]]),this.setTriangleIndices(this._triangleOffset++,[ut[1][0],ut[1][2],ut[1][3]]),this._vertexOffset=at}}()});Me.a.util.defaults(ce.prototype,ve.a),Me.a.util.defaults(ce.prototype,Ee.a),Ne.a=ce},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(26),Ee=be(27),Pe=be(35),xe=be(44),pe=Me.a.extendSeriesModel({type:"series.bar3D",dependencies:["globe"],visualColorAccessPath:"itemStyle.color",getInitialData:function(Se,ce){return Object(xe.a)(this)},getFormattedLabel:function(Se,ce,te,ne){var le=Ee.a.getFormattedLabel(this,Se,ce,te,ne);return le==null&&(le=this.getData().get("z",Se)),le},formatTooltip:function(Se){return Object(Pe.a)(this,Se)},defaultOption:{coordinateSystem:"cartesian3D",globeIndex:0,grid3DIndex:0,zlevel:-10,bevelSize:0,bevelSmoothness:2,onGridPlane:"xy",shading:"color",minHeight:0,itemStyle:{opacity:1},label:{show:!1,distance:2,textStyle:{fontSize:14,color:"#000",backgroundColor:"rgba(255,255,255,0.7)",padding:3,borderRadius:3}},emphasis:{label:{show:!0}},animationDurationUpdate:500}});Me.a.util.merge(pe.prototype,ve.a);var Ae=pe},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(210),Ee=be(211),Pe=be(45),xe=be.n(Pe),pe=be(16);Me.a.registerVisual(xe()("line3D","circle",null)),Me.a.registerVisual(Object(pe.a)("line3D")),Me.a.registerLayout(function(Ae,Se){Ae.eachSeriesByType("line3D",function(ce){var te=ce.getData(),ne=ce.coordinateSystem;if(ne){if(ne.type!=="cartesian3D"){console.error("line3D needs cartesian3D coordinateSystem");return}var le=new Float32Array(te.count()*3),se=[],fe=[],he=ne.dimensions,ie=he.map(function(ue){return ce.coordDimToDataDim(ue)[0]});ne&&te.each(ie,function(ue,me,Ce,Ie){se[0]=ue,se[1]=me,se[2]=Ce,ne.dataToPoint(se,fe),le[Ie*3]=fe[0],le[Ie*3+1]=fe[1],le[Ie*3+2]=fe[2]}),te.setLayout("points",le)}})})},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(35),Ee=be(44),Pe=Me.a.extendSeriesModel({type:"series.line3D",dependencies:["grid3D"],visualColorAccessPath:"lineStyle.color",getInitialData:function(pe,Ae){return Object(Ee.a)(this)},formatTooltip:function(pe){return Object(ve.a)(this,pe)},defaultOption:{coordinateSystem:"cartesian3D",zlevel:-10,grid3DIndex:0,lineStyle:{width:2},animationDurationUpdate:500}}),xe=Pe},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(2),Ee=be(3),Pe=be(22),xe=be(9),pe=be(4),Ae=be(212),Se=be.n(Ae),ce=be(1),te=be.n(ce),ne=be(40),le=te.a.vec3;ve.a.Shader.import(ne.a);var se=Me.a.extendChartView({type:"line3D",__ecgl__:!0,init:function(fe,he){this.groupGL=new ve.a.Node,this._api=he},render:function(fe,he,ie){var ue=this._prevLine3DMesh;this._prevLine3DMesh=this._line3DMesh,this._line3DMesh=ue,this._line3DMesh||(this._line3DMesh=new ve.a.Mesh({geometry:new Pe.a({useNativeLine:!1,sortTriangles:!0}),material:new ve.a.Material({shader:ve.a.createShader("ecgl.meshLines3D")}),renderOrder:10}),this._line3DMesh.geometry.pick=this._pick.bind(this)),this.groupGL.remove(this._prevLine3DMesh),this.groupGL.add(this._line3DMesh);var me=fe.coordinateSystem;if(me&&me.viewGL){me.viewGL.add(this.groupGL);var Ce=me.viewGL.isLinearSpace()?"define":"undefine";this._line3DMesh.material[Ce]("fragment","SRGB_DECODE")}this._doRender(fe,ie),this._data=fe.getData(),this._camera=me.viewGL.camera,this.updateCamera(),this._updateAnimation(fe)},updateCamera:function(){this._updateNDCPosition()},_doRender:function(fe,he){var ie=fe.getData(),ue=this._line3DMesh;ue.geometry.resetOffset();var me=ie.getLayout("points"),Ce=[],Ie=new Float32Array(me.length/3*4),Fe=0,Re=!1;ie.each(function(Je){var Qe=ie.getItemVisual(Je,"color"),rt=ie.getItemVisual(Je,"opacity");rt==null&&(rt=1),ve.a.parseColor(Qe,Ce),Ce[3]*=rt,Ie[Fe++]=Ce[0],Ie[Fe++]=Ce[1],Ie[Fe++]=Ce[2],Ie[Fe++]=Ce[3],Ce[3]<.99&&(Re=!0)}),ue.geometry.setVertexCount(ue.geometry.getPolylineVertexCount(me)),ue.geometry.setTriangleCount(ue.geometry.getPolylineTriangleCount(me)),ue.geometry.addPolyline(me,Ie,Ee.a.firstNotNull(fe.get("lineStyle.width"),1)),ue.geometry.dirty(),ue.geometry.updateBoundingBox();var Ue=ue.material;Ue.transparent=Re,Ue.depthMask=!Re;var Ge=fe.getModel("debug.wireframe");Ge.get("show")?(ue.geometry.createAttribute("barycentric","float",3),ue.geometry.generateBarycentric(),ue.material.set("both","WIREFRAME_TRIANGLE"),ue.material.set("wireframeLineColor",ve.a.parseColor(Ge.get("lineStyle.color")||"rgba(0,0,0,0.5)")),ue.material.set("wireframeLineWidth",Ee.a.firstNotNull(Ge.get("lineStyle.width"),1))):ue.material.set("both","WIREFRAME_TRIANGLE"),this._points=me,this._initHandler(fe,he)},_updateAnimation:function(fe){ve.a.updateVertexAnimation([["prevPosition","position"],["prevPositionPrev","positionPrev"],["prevPositionNext","positionNext"]],this._prevLine3DMesh,this._line3DMesh,fe)},_initHandler:function(fe,he){var ie=fe.getData(),ue=fe.coordinateSystem,me=this._line3DMesh,Ce=-1;me.seriesIndex=fe.seriesIndex,me.off("mousemove"),me.off("mouseout"),me.on("mousemove",function(Ie){var Fe=ue.pointToData(Ie.point.array),Re=ie.indicesOfNearest("x",Fe[0])[0];Re!==Ce&&(he.dispatchAction({type:"grid3DShowAxisPointer",value:[ie.get("x",Re),ie.get("y",Re),ie.get("z",Re)]}),me.dataIndex=Re),Ce=Re},this),me.on("mouseout",function(Ie){Ce=-1,me.dataIndex=-1,he.dispatchAction({type:"grid3DHideAxisPointer"})},this)},_updateNDCPosition:function(){var fe=new xe.a,he=this._camera;xe.a.multiply(fe,he.projectionMatrix,he.viewMatrix);var ie=this._positionNDC,ue=this._points,me=ue.length/3;(!ie||ie.length/2!==me)&&(ie=this._positionNDC=new Float32Array(me*2));for(var Ce=[],Ie=0;Ie<me;Ie++){var Fe=Ie*3,Re=Ie*2;Ce[0]=ue[Fe],Ce[1]=ue[Fe+1],Ce[2]=ue[Fe+2],Ce[3]=1,le.transformMat4(Ce,Ce,fe.array),ie[Re]=Ce[0]/Ce[3],ie[Re+1]=Ce[1]/Ce[3]}},_pick:function(fe,he,ie,ue,me,Ce){var Ie=this._positionNDC,Fe=this._data.hostModel,Re=Fe.get("lineStyle.width"),Ue=-1,Ge=ie.viewport.width,Je=ie.viewport.height,Qe=Ge*.5,rt=Je*.5;fe=(fe+1)*Qe,he=(he+1)*rt;for(var $e=1;$e<Ie.length/2;$e++){var qe=(Ie[($e-1)*2]+1)*Qe,ot=(Ie[($e-1)*2+1]+1)*rt,at=(Ie[$e*2]+1)*Qe,ut=(Ie[$e*2+1]+1)*rt;if(Se.a.containStroke(qe,ot,at,ut,Re,fe,he)){var nt=(qe-fe)*(qe-fe)+(ot-he)*(ot-he),lt=(at-fe)*(at-fe)+(ut-he)*(ut-he);Ue=nt<lt?$e-1:$e}}if(Ue>=0){var yt=Ue*3,ft=new pe.a(this._points[yt],this._points[yt+1],this._points[yt+2]);Ce.push({dataIndex:Ue,point:ft,pointWorld:ft.clone(),target:this._line3DMesh,distance:this._camera.getWorldPosition().dist(ft)})}},remove:function(){this.groupGL.removeAll()},dispose:function(){this.groupGL.removeAll()}})},function(He,Ne){function be(_e,Me,ve,Ee,Pe,xe,pe){if(Pe===0)return!1;var Ae=Pe,Se=0,ce=_e;if(pe>Me+Ae&&pe>Ee+Ae||pe<Me-Ae&&pe<Ee-Ae||xe>_e+Ae&&xe>ve+Ae||xe<_e-Ae&&xe<ve-Ae)return!1;if(_e!==ve)Se=(Me-Ee)/(_e-ve),ce=(_e*Ee-ve*Me)/(_e-ve);else return Math.abs(xe-_e)<=Ae/2;var te=Se*xe-pe+ce,ne=te*te/(Se*Se+1);return ne<=Ae/2*Ae/2}Ne.containStroke=be},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(214),Ee=be(215),Pe=be(45),xe=be.n(Pe),pe=be(16);Me.a.registerVisual(xe()("scatter3D","circle",null)),Me.a.registerVisual(Object(pe.a)("scatter3D")),Me.a.registerLayout({seriesType:"scatter3D",reset:function(Ae){var Se=Ae.coordinateSystem;if(Se){var ce=Se.dimensions;if(ce.length<3){console.error("scatter3D needs 3D coordinateSystem");return}var te=ce.map(function(se){return Ae.coordDimToDataDim(se)[0]}),ne=[],le=[];return{progress:function(se,fe){for(var he=new Float32Array((se.end-se.start)*3),ie=se.start;ie<se.end;ie++){var ue=(ie-se.start)*3;ne[0]=fe.get(te[0],ie),ne[1]=fe.get(te[1],ie),ne[2]=fe.get(te[2],ie),Se.dataToPoint(ne,le),he[ue]=le[0],he[ue+1]=le[1],he[ue+2]=le[2]}fe.setLayout("points",he)}}}}})},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(27),Ee=be(35),Pe=be(44);Me.a.extendSeriesModel({type:"series.scatter3D",dependencies:["globe","grid3D","geo3D"],visualColorAccessPath:"itemStyle.color",getInitialData:function(xe,pe){return Object(Pe.a)(this)},getFormattedLabel:function(xe,pe,Ae,Se){var ce=ve.a.getFormattedLabel(this,xe,pe,Ae,Se);if(ce==null){var te=this.getData(),ne=te.dimensions[te.dimensions.length-1];ce=te.get(ne,xe)}return ce},formatTooltip:function(xe){return Object(Ee.a)(this,xe)},defaultOption:{coordinateSystem:"cartesian3D",zlevel:-10,progressive:1e5,progressiveThreshold:1e5,grid3DIndex:0,globeIndex:0,symbol:"circle",symbolSize:10,blendMode:"source-over",label:{show:!1,position:"right",distance:5,textStyle:{fontSize:14,color:"#000",backgroundColor:"rgba(255,255,255,0.7)",padding:3,borderRadius:3}},itemStyle:{opacity:.8},emphasis:{label:{show:!0}},animationDurationUpdate:500}})},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(2),Ee=be(3),Pe=be(27),xe=be(62);Me.a.extendChartView({type:"scatter3D",__ecgl__:!0,init:function(pe,Ae){this.groupGL=new ve.a.Node,this._pointsBuilderList=[],this._currentStep=0},render:function(pe,Ae,Se){if(this.groupGL.removeAll(),!!pe.getData().count()){var ce=pe.coordinateSystem;if(ce&&ce.viewGL){ce.viewGL.add(this.groupGL),this._camera=ce.viewGL.camera;var te=this._pointsBuilderList[0];te||(te=this._pointsBuilderList[0]=new xe.a(!1,Se)),this._pointsBuilderList.length=1,this.groupGL.add(te.rootNode),te.update(pe,Ae,Se),te.updateView(ce.viewGL.camera)}else throw new Error("Invalid coordinate system")}},incrementalPrepareRender:function(pe,Ae,Se){var ce=pe.coordinateSystem;if(ce&&ce.viewGL)ce.viewGL.add(this.groupGL),this._camera=ce.viewGL.camera;else throw new Error("Invalid coordinate system");this.groupGL.removeAll(),this._currentStep=0},incrementalRender:function(pe,Ae,Se,ce){if(!(pe.end<=pe.start)){var te=this._pointsBuilderList[this._currentStep];te||(te=new xe.a(!1,ce),this._pointsBuilderList[this._currentStep]=te),this.groupGL.add(te.rootNode),te.update(Ae,Se,ce,pe.start,pe.end),te.updateView(Ae.coordinateSystem.viewGL.camera),this._currentStep++}},updateCamera:function(){this._pointsBuilderList.forEach(function(pe){pe.updateView(this._camera)},this)},highlight:function(pe,Ae,Se,ce){this._toggleStatus("highlight",pe,Ae,Se,ce)},downplay:function(pe,Ae,Se,ce){this._toggleStatus("downplay",pe,Ae,Se,ce)},_toggleStatus:function(pe,Ae,Se,ce,te){var ne=Ae.getData(),le=Ee.a.queryDataIndex(ne,te),se=pe==="highlight";le!=null?Me.a.util.each(Pe.a.normalizeToArray(le),function(fe){for(var he=0;he<this._pointsBuilderList.length;he++){var ie=this._pointsBuilderList[he];se?ie.highlight(ne,fe):ie.downplay(ne,fe)}},this):ne.each(function(fe){for(var he=0;he<this._pointsBuilderList.length;he++){var ie=this._pointsBuilderList[he];se?ie.highlight(ne,fe):ie.downplay(ne,fe)}})},dispose:function(){this.groupGL.removeAll()},remove:function(){this.groupGL.removeAll()}})},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e);function ve(pe,ce,Se){var ce=ce||document.createElement("canvas");ce.width=pe,ce.height=pe;var te=ce.getContext("2d");return Se&&Se(te),ce}function Ee(pe,Ae,Se,ce){Me.a.util.isArray(Ae)||(Ae=[Ae,Ae]);var te=xe.getMarginByStyle(Se,ce),ne=Ae[0]+te.left+te.right,le=Ae[1]+te.top+te.bottom,se=Me.a.helper.createSymbol(pe,0,0,Ae[0],Ae[1]),fe=Math.max(ne,le);se.position=[te.left,te.top],ne>le?se.position[1]+=(fe-le)/2:se.position[0]+=(fe-ne)/2;var he=se.getBoundingRect();return se.position[0]-=he.x,se.position[1]-=he.y,se.setStyle(Se),se.update(),se.__size=fe,se}function Pe(pe,Ae,Se){var ce=Ae.width,te=Ae.height,ne=pe.canvas.width,le=pe.canvas.height,se=ce/ne,fe=te/le;function he(Ue){return Ue<128?1:-1}function ie(Ue,Ge){var Je=1/0;Ue=Math.floor(Ue*se),Ge=Math.floor(Ge*fe);for(var Qe=Ge*ce+Ue,rt=Ae.data[Qe*4],$e=he(rt),qe=Math.max(Ge-Se,0);qe<Math.min(Ge+Se,te);qe++)for(var ot=Math.max(Ue-Se,0);ot<Math.min(Ue+Se,ce);ot++){var Qe=qe*ce+ot,at=Ae.data[Qe*4],ut=he(at),nt=ot-Ue,lt=qe-Ge;if($e!==ut){var yt=nt*nt+lt*lt;yt<Je&&(Je=yt)}}return $e*Math.sqrt(Je)}for(var ue=pe.createImageData(ne,le),me=0;me<le;me++)for(var Ce=0;Ce<ne;Ce++){var Ie=ie(Ce,me),Fe=Ie/Se*.5+.5,Re=(me*ne+Ce)*4;ue.data[Re++]=(1-Fe)*255,ue.data[Re++]=(1-Fe)*255,ue.data[Re++]=(1-Fe)*255,ue.data[Re++]=255}return ue}var xe={getMarginByStyle:function(pe){var Ae=pe.minMargin||0,Se=0;pe.stroke&&pe.stroke!=="none"&&(Se=pe.lineWidth==null?1:pe.lineWidth);var ce=pe.shadowBlur||0,te=pe.shadowOffsetX||0,ne=pe.shadowOffsetY||0,le={};return le.left=Math.max(Se/2,-te+ce,Ae),le.right=Math.max(Se/2,te+ce,Ae),le.top=Math.max(Se/2,-ne+ce,Ae),le.bottom=Math.max(Se/2,ne+ce,Ae),le},createSymbolSprite:function(pe,Ae,Se,ce){var te=Ee(pe,Ae,Se),ne=xe.getMarginByStyle(Se);return{image:ve(te.__size,ce,function(le){te.brush(le)}),margin:ne}},createSDFFromCanvas:function(pe,Ae,Se,ce){return ve(Ae,ce,function(te){var ne=pe.getContext("2d"),le=ne.getImageData(0,0,pe.width,pe.height);te.putImageData(Pe(te,le,Se),0,0)})},createSimpleSprite:function(pe,Ae){return ve(pe,Ae,function(Se){var ce=pe/2;Se.beginPath(),Se.arc(ce,ce,60,0,Math.PI*2,!1),Se.closePath();var te=Se.createRadialGradient(ce,ce,0,ce,ce,ce);te.addColorStop(0,"rgba(255, 255, 255, 1)"),te.addColorStop(.5,"rgba(255, 255, 255, 0.5)"),te.addColorStop(1,"rgba(255, 255, 255, 0)"),Se.fillStyle=te,Se.fill()})}};Ne.a=xe},function(He,Ne,be){"use strict";var _e=be(2),Me=be(218),ve=be(0),Ee=be.n(ve),Pe=be(1),xe=be.n(Pe),pe=be(219),Ae=xe.a.vec4;_e.a.Shader.import(pe.a);var Se=_e.a.Mesh.extend(function(){var ce=new _e.a.Geometry({dynamic:!0,attributes:{color:new _e.a.Geometry.Attribute("color","float",4,"COLOR"),position:new _e.a.Geometry.Attribute("position","float",3,"POSITION"),size:new _e.a.Geometry.Attribute("size","float",1),prevPosition:new _e.a.Geometry.Attribute("prevPosition","float",3),prevSize:new _e.a.Geometry.Attribute("prevSize","float",1)}});Ee.a.util.extend(ce,Me.a);var te=new _e.a.Material({shader:_e.a.createShader("ecgl.sdfSprite"),transparent:!0,depthMask:!1});te.enableTexture("sprite"),te.define("both","VERTEX_COLOR"),te.define("both","VERTEX_SIZE");var ne=new _e.a.Texture2D({image:document.createElement("canvas"),flipY:!1});return te.set("sprite",ne),ce.pick=this._pick.bind(this),{geometry:ce,material:te,mode:_e.a.Mesh.POINTS,sizeScale:1}},{_pick:function(ce,te,ne,le,se,fe){var he=this._positionNDC;if(he)for(var ie=ne.viewport,ue=2/ie.width,me=2/ie.height,Ce=this.geometry.vertexCount-1;Ce>=0;Ce--){var Ie;this.geometry.indices?Ie=this.geometry.indices[Ce]:Ie=Ce;var Fe=he[Ie*2],Re=he[Ie*2+1],Ue=this.geometry.attributes.size.get(Ie)/this.sizeScale,Ge=Ue/2;if(ce>Fe-Ge*ue&&ce<Fe+Ge*ue&&te>Re-Ge*me&&te<Re+Ge*me){var Je=new _e.a.Vector3,Qe=new _e.a.Vector3;this.geometry.attributes.position.get(Ie,Je.array),_e.a.Vector3.transformMat4(Qe,Je,this.worldTransform),fe.push({vertexIndex:Ie,point:Je,pointWorld:Qe,target:this,distance:Qe.distance(le.getWorldPosition())})}}},updateNDCPosition:function(ce,te,ne){var le=this._positionNDC,se=this.geometry;(!le||le.length/2!==se.vertexCount)&&(le=this._positionNDC=new Float32Array(se.vertexCount*2));for(var fe=Ae.create(),he=0;he<se.vertexCount;he++)se.attributes.position.get(he,fe),fe[3]=1,Ae.transformMat4(fe,fe,ce.array),Ae.scale(fe,fe,1/fe[3]),le[he*2]=fe[0],le[he*2+1]=fe[1]}});Ne.a=Se},function(He,Ne,be){"use strict";var _e=be(81),Me=be(1),ve=be.n(Me),Ee=ve.a.vec3;Ne.a={needsSortVertices:function(){return this.sortVertices},needsSortVerticesProgressively:function(){return this.needsSortVertices()&&this.vertexCount>=2e4},doSortVertices:function(Pe,xe){var pe=this.indices,Ae=Ee.create();if(!pe){pe=this.indices=this.vertexCount>65535?new Uint32Array(this.vertexCount):new Uint16Array(this.vertexCount);for(var Se=0;Se<pe.length;Se++)pe[Se]=Se}if(xe===0){var ce=this.attributes.position,Pe=Pe.array,te=0;(!this._zList||this._zList.length!==this.vertexCount)&&(this._zList=new Float32Array(this.vertexCount));for(var ne,Se=0;Se<this.vertexCount;Se++){ce.get(Se,Ae);var le=Ee.sqrDist(Ae,Pe);isNaN(le)&&(le=1e7,te++),Se===0?(ne=le,le=0):le=le-ne,this._zList[Se]=le}this._noneCount=te}if(this.vertexCount<2e4)xe===0&&this._simpleSort(this._noneCount/this.vertexCount>.05);else for(var Se=0;Se<3;Se++)this._progressiveQuickSort(xe*3+Se);this.dirtyIndices()},_simpleSort:function(Pe){var xe=this._zList,pe=this.indices;function Ae(Se,ce){return xe[ce]-xe[Se]}Pe?Array.prototype.sort.call(pe,Ae):_e.a.sort(pe,Ae,0,pe.length-1)},_progressiveQuickSort:function(Pe){var xe=this._zList,pe=this.indices;this._quickSort=this._quickSort||new _e.a,this._quickSort.step(pe,function(Ae,Se){return xe[Se]-xe[Ae]},Pe)}}},function(He,Ne,be){"use strict";Ne.a=`@export ecgl.sdfSprite.vertex
|
|
|
|
|
|
uniform mat4 worldViewProjection : WORLDVIEWPROJECTION;
|
|
|
uniform float elapsedTime : 0;
|
|
|
|
|
|
attribute vec3 position : POSITION;
|
|
|
|
|
|
#ifdef VERTEX_SIZE
|
|
|
attribute float size;
|
|
|
#else
|
|
|
uniform float u_Size;
|
|
|
#endif
|
|
|
|
|
|
#ifdef VERTEX_COLOR
|
|
|
attribute vec4 a_FillColor: COLOR;
|
|
|
varying vec4 v_Color;
|
|
|
#endif
|
|
|
|
|
|
#ifdef VERTEX_ANIMATION
|
|
|
attribute vec3 prevPosition;
|
|
|
attribute float prevSize;
|
|
|
uniform float percent : 1.0;
|
|
|
#endif
|
|
|
|
|
|
|
|
|
#ifdef POSITIONTEXTURE_ENABLED
|
|
|
uniform sampler2D positionTexture;
|
|
|
#endif
|
|
|
|
|
|
varying float v_Size;
|
|
|
|
|
|
void main()
|
|
|
{
|
|
|
|
|
|
#ifdef POSITIONTEXTURE_ENABLED
|
|
|
gl_Position = worldViewProjection * vec4(texture2D(positionTexture, position.xy).xy, -10.0, 1.0);
|
|
|
#else
|
|
|
|
|
|
#ifdef VERTEX_ANIMATION
|
|
|
vec3 pos = mix(prevPosition, position, percent);
|
|
|
#else
|
|
|
vec3 pos = position;
|
|
|
#endif
|
|
|
gl_Position = worldViewProjection * vec4(pos, 1.0);
|
|
|
#endif
|
|
|
|
|
|
#ifdef VERTEX_SIZE
|
|
|
#ifdef VERTEX_ANIMATION
|
|
|
v_Size = mix(prevSize, size, percent);
|
|
|
#else
|
|
|
v_Size = size;
|
|
|
#endif
|
|
|
#else
|
|
|
v_Size = u_Size;
|
|
|
#endif
|
|
|
|
|
|
#ifdef VERTEX_COLOR
|
|
|
v_Color = a_FillColor;
|
|
|
#endif
|
|
|
|
|
|
gl_PointSize = v_Size;
|
|
|
}
|
|
|
|
|
|
@end
|
|
|
|
|
|
@export ecgl.sdfSprite.fragment
|
|
|
|
|
|
uniform vec4 color: [1, 1, 1, 1];
|
|
|
uniform vec4 strokeColor: [1, 1, 1, 1];
|
|
|
uniform float smoothing: 0.07;
|
|
|
|
|
|
uniform float lineWidth: 0.0;
|
|
|
|
|
|
#ifdef VERTEX_COLOR
|
|
|
varying vec4 v_Color;
|
|
|
#endif
|
|
|
|
|
|
varying float v_Size;
|
|
|
|
|
|
uniform sampler2D sprite;
|
|
|
|
|
|
@import clay.util.srgb
|
|
|
|
|
|
void main()
|
|
|
{
|
|
|
gl_FragColor = color;
|
|
|
|
|
|
vec4 _strokeColor = strokeColor;
|
|
|
|
|
|
#ifdef VERTEX_COLOR
|
|
|
gl_FragColor *= v_Color;
|
|
|
#endif
|
|
|
|
|
|
#ifdef SPRITE_ENABLED
|
|
|
float d = texture2D(sprite, gl_PointCoord).r;
|
|
|
gl_FragColor.a *= smoothstep(0.5 - smoothing, 0.5 + smoothing, d);
|
|
|
|
|
|
if (lineWidth > 0.0) {
|
|
|
float sLineWidth = lineWidth / 2.0;
|
|
|
|
|
|
float outlineMaxValue0 = 0.5 + sLineWidth;
|
|
|
float outlineMaxValue1 = 0.5 + sLineWidth + smoothing;
|
|
|
float outlineMinValue0 = 0.5 - sLineWidth - smoothing;
|
|
|
float outlineMinValue1 = 0.5 - sLineWidth;
|
|
|
|
|
|
if (d <= outlineMaxValue1 && d >= outlineMinValue0) {
|
|
|
float a = _strokeColor.a;
|
|
|
if (d <= outlineMinValue1) {
|
|
|
a = a * smoothstep(outlineMinValue0, outlineMinValue1, d);
|
|
|
}
|
|
|
else {
|
|
|
a = a * smoothstep(outlineMaxValue1, outlineMaxValue0, d);
|
|
|
}
|
|
|
gl_FragColor.rgb = mix(gl_FragColor.rgb * gl_FragColor.a, _strokeColor.rgb, a);
|
|
|
gl_FragColor.a = gl_FragColor.a * (1.0 - a) + a;
|
|
|
}
|
|
|
}
|
|
|
#endif
|
|
|
|
|
|
#ifdef SRGB_DECODE
|
|
|
gl_FragColor = sRGBToLinear(gl_FragColor);
|
|
|
#endif
|
|
|
}
|
|
|
@end`},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(221),Ee=be(222),Pe=be(225),xe=be(16);Me.a.registerVisual(Object(xe.a)("lines3D")),Me.a.registerAction({type:"lines3DPauseEffect",event:"lines3deffectpaused",update:"series.lines3D:pauseEffect"},function(){}),Me.a.registerAction({type:"lines3DResumeEffect",event:"lines3deffectresumed",update:"series.lines3D:resumeEffect"},function(){}),Me.a.registerAction({type:"lines3DToggleEffect",event:"lines3deffectchanged",update:"series.lines3D:toggleEffect"},function(){})},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(1),Ee=be.n(ve),Pe=Ee.a.vec3,xe=Ee.a.vec2,pe=Pe.normalize,Ae=Pe.cross,Se=Pe.sub,ce=Pe.add,te=Pe.create,ne=te(),le=te(),se=te(),fe=te(),he=[],ie=[];function ue(Ue,Ge){xe.copy(he,Ue[0]),xe.copy(ie,Ue[1]);var Je=[],Qe=Je[0]=te(),rt=Je[1]=te(),$e=Je[2]=te(),qe=Je[3]=te();Ge.dataToPoint(he,Qe),Ge.dataToPoint(ie,qe),pe(ne,Qe),Se(le,qe,Qe),pe(le,le),Ae(se,le,ne),pe(se,se),Ae(le,ne,se),ce(rt,ne,le),pe(rt,rt),pe(ne,qe),Se(le,Qe,qe),pe(le,le),Ae(se,le,ne),pe(se,se),Ae(le,ne,se),ce($e,ne,le),pe($e,$e),ce(fe,Qe,qe),pe(fe,fe);var ot=Pe.dot(Qe,fe),at=Pe.dot(fe,rt),ut=(Math.max(Pe.len(Qe),Pe.len(qe))-ot)/at*2;return Pe.scaleAndAdd(rt,Qe,rt,ut),Pe.scaleAndAdd($e,qe,$e,ut),Je}function me(Ue,Ge,Je){var Qe=[],rt=Qe[0]=Pe.create(),$e=Qe[1]=Pe.create(),qe=Qe[2]=Pe.create(),ot=Qe[3]=Pe.create();Ge.dataToPoint(Ue[0],rt),Ge.dataToPoint(Ue[1],ot);var at=Pe.dist(rt,ot);return Pe.lerp($e,rt,ot,.3),Pe.lerp(qe,rt,ot,.3),Pe.scaleAndAdd($e,$e,Je,Math.min(at*.1,10)),Pe.scaleAndAdd(qe,qe,Je,Math.min(at*.1,10)),Qe}function Ce(Ue,Ge){for(var Je=new Float32Array(Ue.length*3),Qe=0,rt=[],$e=0;$e<Ue.length;$e++)Ge.dataToPoint(Ue[$e],rt),Je[Qe++]=rt[0],Je[Qe++]=rt[1],Je[Qe++]=rt[2];return Je}function Ie(Ue){var Ge=[];return Ue.each(function(Je){var Qe=Ue.getItemModel(Je),rt=Qe.option instanceof Array?Qe.option:Qe.getShallow("coords",!0);if(!(rt instanceof Array&&rt.length>0&&rt[0]instanceof Array))throw new Error("Invalid coords "+JSON.stringify(rt)+". Lines must have 2d coords array in data item.");Ge.push(rt)}),{coordsList:Ge}}function Fe(Ue,Ge){var Je=Ue.getData(),Qe=Ue.get("polyline");Je.setLayout("lineType",Qe?"polyline":"cubicBezier");var rt=Ie(Je);Je.each(function($e){var qe=rt.coordsList[$e],ot=Qe?Ce:ue;Je.setItemLayout($e,ot(qe,Ge))})}function Re(Ue,Ge,Je){var Qe=Ue.getData(),rt=Ue.get("polyline"),$e=Ie(Qe);Qe.setLayout("lineType",rt?"polyline":"cubicBezier"),Qe.each(function(qe){var ot=$e.coordsList[qe],at=rt?Ce(ot,Ge):me(ot,Ge,Je);Qe.setItemLayout(qe,at)})}Me.a.registerLayout(function(Ue,Ge){Ue.eachSeriesByType("lines3D",function(Je){var Qe=Je.coordinateSystem;Qe.type==="globe"?Fe(Je,Qe):Qe.type==="geo3D"?Re(Je,Qe,[0,1,0]):Qe.type==="mapbox3D"&&Re(Je,Qe,[0,0,1])})})},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(2),Ee=be(22),Pe=be(223),xe=be(40);ve.a.Shader.import(xe.a);function pe(Se){return Se.radius!=null?Se.radius:Se.size!=null?Math.max(Se.size[0],Se.size[1],Se.size[2]):100}var Ae=Me.a.extendChartView({type:"lines3D",__ecgl__:!0,init:function(Se,ce){this.groupGL=new ve.a.Node,this._meshLinesMaterial=new ve.a.Material({shader:ve.a.createShader("ecgl.meshLines3D"),transparent:!0,depthMask:!1}),this._linesMesh=new ve.a.Mesh({geometry:new Ee.a,material:this._meshLinesMaterial,$ignorePicking:!0}),this._trailMesh=new Pe.a},render:function(Se,ce,te){this.groupGL.add(this._linesMesh);var ne=Se.coordinateSystem,le=Se.getData();if(ne&&ne.viewGL){var se=ne.viewGL;se.add(this.groupGL),this._updateLines(Se,ce,te);var fe=ne.viewGL.isLinearSpace()?"define":"undefine";this._linesMesh.material[fe]("fragment","SRGB_DECODE"),this._trailMesh.material[fe]("fragment","SRGB_DECODE")}var he=this._trailMesh;if(he.stopAnimation(),Se.get("effect.show")){this.groupGL.add(he),he.updateData(le,te,this._linesMesh.geometry),he.__time=he.__time||0;var ie=3600*1e3;this._curveEffectsAnimator=he.animate("",{loop:!0}).when(ie,{__time:ie}).during(function(){he.setAnimationTime(he.__time)}).start()}else this.groupGL.remove(he),this._curveEffectsAnimator=null;this._linesMesh.material.blend=this._trailMesh.material.blend=Se.get("blendMode")==="lighter"?ve.a.additiveBlend:null},pauseEffect:function(){this._curveEffectsAnimator&&this._curveEffectsAnimator.pause()},resumeEffect:function(){this._curveEffectsAnimator&&this._curveEffectsAnimator.resume()},toggleEffect:function(){var Se=this._curveEffectsAnimator;Se&&(Se.isPaused()?Se.resume():Se.pause())},_updateLines:function(Se,ce,te){var ne=Se.getData(),le=Se.coordinateSystem,se=this._linesMesh.geometry,fe=Se.get("polyline");se.expandLine=!0;var he=pe(le);se.segmentScale=he/20;var ie="lineStyle.width".split("."),ue=te.getDevicePixelRatio(),me=0;ne.each(function(Re){var Ue=ne.getItemModel(Re),Ge=Ue.get(ie);Ge==null&&(Ge=1),ne.setItemVisual(Re,"lineWidth",Ge),me=Math.max(Ge,me)}),se.useNativeLine=!1;var Ce=0,Ie=0;ne.each(function(Re){var Ue=ne.getItemLayout(Re);fe?(Ce+=se.getPolylineVertexCount(Ue),Ie+=se.getPolylineTriangleCount(Ue)):(Ce+=se.getCubicCurveVertexCount(Ue[0],Ue[1],Ue[2],Ue[3]),Ie+=se.getCubicCurveTriangleCount(Ue[0],Ue[1],Ue[2],Ue[3]))}),se.setVertexCount(Ce),se.setTriangleCount(Ie),se.resetOffset();var Fe=[];ne.each(function(Re){var Ue=ne.getItemLayout(Re),Ge=ne.getItemVisual(Re,"color"),Je=ne.getItemVisual(Re,"opacity"),Qe=ne.getItemVisual(Re,"lineWidth")*ue;Je==null&&(Je=1),Fe=ve.a.parseColor(Ge,Fe),Fe[3]*=Je,fe?se.addPolyline(Ue,Fe,Qe):se.addCubicCurve(Ue[0],Ue[1],Ue[2],Ue[3],Fe,Qe)}),se.dirty()},remove:function(){this.groupGL.removeAll()},dispose:function(){this.groupGL.removeAll()}})},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(2),Ee=be(1),Pe=be.n(Ee),xe=be(22),pe=be(224),Ae=Pe.a.vec3;function Se(ce){return ce>0?1:-1}ve.a.Shader.import(pe.a),Ne.a=ve.a.Mesh.extend(function(){var ce=new ve.a.Material({shader:new ve.a.Shader(ve.a.Shader.source("ecgl.trail2.vertex"),ve.a.Shader.source("ecgl.trail2.fragment")),transparent:!0,depthMask:!1}),te=new xe.a({dynamic:!0});return te.createAttribute("dist","float",1),te.createAttribute("distAll","float",1),te.createAttribute("start","float",1),{geometry:te,material:ce,culling:!1,$ignorePicking:!0}},{updateData:function(ce,te,ne){var le=ce.hostModel,se=this.geometry,fe=le.getModel("effect"),he=fe.get("trailWidth")*te.getDevicePixelRatio(),ie=fe.get("trailLength"),ue=le.get("effect.constantSpeed"),me=le.get("effect.period")*1e3,Ce=ue!=null;this.getScene()||console.error("TrailMesh must been add to scene before updateData"),Ce?this.material.set("speed",ue/1e3):this.material.set("period",me),this.material[Ce?"define":"undefine"]("vertex","CONSTANT_SPEED");var Ie=le.get("polyline");se.trailLength=ie,this.material.set("trailLength",ie),se.resetOffset(),["position","positionPrev","positionNext"].forEach(function(ut){se.attributes[ut].value=ne.attributes[ut].value});var Fe=["dist","distAll","start","offset","color"];Fe.forEach(function(ut){se.attributes[ut].init(se.vertexCount)}),se.indices=ne.indices;var Re=[],Ue=fe.get("trailColor"),Ge=fe.get("trailOpacity"),Je=Ue!=null,Qe=Ge!=null;this.updateWorldTransform();var rt=this.worldTransform.x.len(),$e=this.worldTransform.y.len(),qe=this.worldTransform.z.len(),ot=0,at=0;ce.each(function(ut){var nt=ce.getItemLayout(ut),lt=Qe?Ge:ce.getItemVisual(ut,"opacity"),yt=ce.getItemVisual(ut,"color");lt==null&&(lt=1),Re=ve.a.parseColor(Je?Ue:yt,Re),Re[3]*=lt;for(var ft=Ie?ne.getPolylineVertexCount(nt):ne.getCubicCurveVertexCount(nt[0],nt[1],nt[2],nt[3]),ct=0,vt=[],Ut=[],Zt=ot;Zt<ot+ft;Zt++)se.attributes.position.get(Zt,vt),vt[0]*=rt,vt[1]*=$e,vt[2]*=qe,Zt>ot&&(ct+=Ae.dist(vt,Ut)),se.attributes.dist.set(Zt,ct),Ae.copy(Ut,vt);at=Math.max(at,ct);for(var en=Math.random()*(Ce?ct:me),Zt=ot;Zt<ot+ft;Zt++)se.attributes.distAll.set(Zt,ct),se.attributes.start.set(Zt,en),se.attributes.offset.set(Zt,Se(ne.attributes.offset.get(Zt))*he/2),se.attributes.color.set(Zt,Re);ot+=ft}),this.material.set("spotSize",at*.1*ie),this.material.set("spotIntensity",fe.get("spotIntensity")),se.dirty()},setAnimationTime:function(ce){this.material.set("time",ce)}})},function(He,Ne,be){"use strict";Ne.a=`@export ecgl.trail2.vertex
|
|
|
attribute vec3 position: POSITION;
|
|
|
attribute vec3 positionPrev;
|
|
|
attribute vec3 positionNext;
|
|
|
attribute float offset;
|
|
|
attribute float dist;
|
|
|
attribute float distAll;
|
|
|
attribute float start;
|
|
|
|
|
|
attribute vec4 a_Color : COLOR;
|
|
|
|
|
|
uniform mat4 worldViewProjection : WORLDVIEWPROJECTION;
|
|
|
uniform vec4 viewport : VIEWPORT;
|
|
|
uniform float near : NEAR;
|
|
|
|
|
|
uniform float speed : 0;
|
|
|
uniform float trailLength: 0.3;
|
|
|
uniform float time;
|
|
|
uniform float period: 1000;
|
|
|
|
|
|
uniform float spotSize: 1;
|
|
|
|
|
|
varying vec4 v_Color;
|
|
|
varying float v_Percent;
|
|
|
varying float v_SpotPercent;
|
|
|
|
|
|
@import ecgl.common.wireframe.vertexHeader
|
|
|
|
|
|
@import ecgl.lines3D.clipNear
|
|
|
|
|
|
void main()
|
|
|
{
|
|
|
@import ecgl.lines3D.expandLine
|
|
|
|
|
|
gl_Position = currProj;
|
|
|
|
|
|
v_Color = a_Color;
|
|
|
|
|
|
@import ecgl.common.wireframe.vertexMain
|
|
|
|
|
|
#ifdef CONSTANT_SPEED
|
|
|
float t = mod((speed * time + start) / distAll, 1. + trailLength) - trailLength;
|
|
|
#else
|
|
|
float t = mod((time + start) / period, 1. + trailLength) - trailLength;
|
|
|
#endif
|
|
|
|
|
|
float trailLen = distAll * trailLength;
|
|
|
|
|
|
v_Percent = (dist - t * distAll) / trailLen;
|
|
|
|
|
|
v_SpotPercent = spotSize / distAll;
|
|
|
|
|
|
}
|
|
|
@end
|
|
|
|
|
|
|
|
|
@export ecgl.trail2.fragment
|
|
|
|
|
|
uniform vec4 color : [1.0, 1.0, 1.0, 1.0];
|
|
|
uniform float spotIntensity: 5;
|
|
|
|
|
|
varying vec4 v_Color;
|
|
|
varying float v_Percent;
|
|
|
varying float v_SpotPercent;
|
|
|
|
|
|
@import ecgl.common.wireframe.fragmentHeader
|
|
|
|
|
|
@import clay.util.srgb
|
|
|
|
|
|
void main()
|
|
|
{
|
|
|
if (v_Percent > 1.0 || v_Percent < 0.0) {
|
|
|
discard;
|
|
|
}
|
|
|
|
|
|
float fade = v_Percent;
|
|
|
|
|
|
#ifdef SRGB_DECODE
|
|
|
gl_FragColor = sRGBToLinear(color * v_Color);
|
|
|
#else
|
|
|
gl_FragColor = color * v_Color;
|
|
|
#endif
|
|
|
|
|
|
@import ecgl.common.wireframe.fragmentMain
|
|
|
|
|
|
if (v_Percent > (1.0 - v_SpotPercent)) {
|
|
|
gl_FragColor.rgb *= spotIntensity;
|
|
|
}
|
|
|
|
|
|
gl_FragColor.a *= fade;
|
|
|
}
|
|
|
|
|
|
@end`},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e);Me.a.extendSeriesModel({type:"series.lines3D",dependencies:["globe"],visualColorAccessPath:"lineStyle.color",getInitialData:function(ve,Ee){var Pe=new Me.a.List(["value"],this);return Pe.hasItemOption=!1,Pe.initData(ve.data,[],function(xe,pe,Ae,Se){if(xe instanceof Array)return NaN;Pe.hasItemOption=!0;var ce=xe.value;if(ce!=null)return ce instanceof Array?ce[Se]:ce}),Pe},defaultOption:{coordinateSystem:"globe",globeIndex:0,geo3DIndex:0,zlevel:-10,polyline:!1,effect:{show:!1,period:4,trailWidth:4,trailLength:.2,spotIntensity:6},silent:!0,blendMode:"source-over",lineStyle:{width:1,opacity:.5}}})},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(227),Ee=be(228),Pe=be(16);Me.a.registerVisual(Object(Pe.a)("polygons3D"))},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(26);function Ee(pe,Ae){for(var Se=[],ce=0;ce<Ae.length;ce++)Se.push(pe.dataToPoint(Ae[ce]));return Se}var Pe=Me.a.extendSeriesModel({type:"series.polygons3D",getRegionModel:function(pe){return this.getData().getItemModel(pe)},getRegionPolygonCoords:function(pe){var Ae=this.coordinateSystem,Se=this.getData().getItemModel(pe),ce=Se.option instanceof Array?Se.option:Se.getShallow("coords");Se.get("multiPolygon")||(ce=[ce]);for(var te=[],ne=0;ne<ce.length;ne++){for(var le=[],se=1;se<ce[ne].length;se++)le.push(Ee(Ae,ce[ne][se]));te.push({exterior:Ee(Ae,ce[ne][0]),interiors:le})}return te},getInitialData:function(pe){var Ae=new Me.a.List(["value"],this);return Ae.hasItemOption=!1,Ae.initData(pe.data,[],function(Se,ce,te,ne){if(Se instanceof Array)return NaN;Ae.hasItemOption=!0;var le=Se.value;if(le!=null)return le instanceof Array?le[ne]:le}),Ae},defaultOption:{show:!0,data:null,multiPolygon:!1,progressiveThreshold:1e3,progressive:1e3,zlevel:-10,label:{show:!1,distance:2,textStyle:{fontSize:20,color:"#000",backgroundColor:"rgba(255,255,255,0.7)",padding:3,borderRadius:4}},itemStyle:{color:"#fff",borderWidth:0,borderColor:"#333"},emphasis:{itemStyle:{color:"#639fc0"},label:{show:!0}}}});Me.a.util.merge(Pe.prototype,ve.a);var xe=Pe},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(59),Ee=be(2);Me.a.extendChartView({type:"polygons3D",__ecgl__:!0,init:function(Pe,xe){this.groupGL=new Ee.a.Node,this._geo3DBuilderList=[],this._currentStep=0},render:function(Pe,xe,pe){this.groupGL.removeAll();var Ae=Pe.coordinateSystem;Ae&&Ae.viewGL&&Ae.viewGL.add(this.groupGL);var Se=this._geo3DBuilderList[0];Se||(Se=new ve.a(pe),Se.extrudeY=Ae.type!=="mapbox3D",this._geo3DBuilderList[0]=Se),this._updateShaderDefines(Ae,Se),Se.update(Pe,xe,pe),this._geo3DBuilderList.length=1,this.groupGL.add(Se.rootNode)},incrementalPrepareRender:function(Pe,xe,pe){this.groupGL.removeAll();var Ae=Pe.coordinateSystem;Ae&&Ae.viewGL&&Ae.viewGL.add(this.groupGL),this._currentStep=0},incrementalRender:function(Pe,xe,pe,Ae){var Se=this._geo3DBuilderList[this._currentStep],ce=xe.coordinateSystem;Se||(Se=new ve.a(Ae),Se.extrudeY=ce.type!=="mapbox3D",this._geo3DBuilderList[this._currentStep]=Se),Se.update(xe,pe,Ae,Pe.start,Pe.end),this.groupGL.add(Se.rootNode),this._updateShaderDefines(ce,Se),this._currentStep++},_updateShaderDefines:function(Pe,xe){var pe=Pe.viewGL.isLinearSpace()?"define":"undefine";xe.rootNode.traverse(function(Ae){Ae.material&&(Ae.material[pe]("fragment","SRGB_DECODE"),Pe.type==="mapbox3D"&&(Ae.material.define("fragment","NORMAL_UP_AXIS",2),Ae.material.define("fragment","NORMAL_FRONT_AXIS",1)))})},remove:function(){this.groupGL.removeAll()},dispose:function(){this.groupGL.removeAll()}})},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(230),Ee=be(231),Pe=be(232),xe=be(16);Me.a.registerVisual(Object(xe.a)("surface"))},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(26),Ee=be(35),Pe=be(44),xe=Me.a.extendSeriesModel({type:"series.surface",dependencies:["globe","grid3D","geo3D"],visualColorAccessPath:"itemStyle.color",formatTooltip:function(Ae){return Object(Ee.a)(this,Ae)},getInitialData:function(Ae,Se){var ce=Ae.data;function te(nt){return!(isNaN(nt.min)||isNaN(nt.max)||isNaN(nt.step))}function ne(nt){var lt=Me.a.number.getPrecisionSafe;return Math.max(lt(nt.min),lt(nt.max),lt(nt.step))+1}if(!ce)if(ce=[],Ae.parametric){var Re=Ae.parametricEquation||{},Ue=Re.u||{},Ge=Re.v||{};["u","v"].forEach(function(nt){if(!te(Re[nt])){console.error("Invalid parametricEquation.%s",nt);return}}),["x","y","z"].forEach(function(nt){if(typeof Re[nt]!="function"){console.error("parametricEquation.%s needs to be function",nt);return}});for(var Je=ne(Ue),Qe=ne(Ge),rt=Ge.min;rt<Ge.max+Ge.step*.999;rt+=Ge.step)for(var $e=Ue.min;$e<Ue.max+Ue.step*.999;$e+=Ue.step){var qe=Me.a.number.round(Math.min($e,Ue.max),Je),ot=Me.a.number.round(Math.min(rt,Ge.max),Qe),me=Re.x(qe,ot),ue=Re.y(qe,ot),Fe=Re.z(qe,ot);ce.push([me,ue,Fe,qe,ot])}}else{var le=Ae.equation||{},se=le.x||{},fe=le.y||{};if(["x","y"].forEach(function(nt){if(!te(le[nt])){console.error("Invalid equation.%s",nt);return}}),typeof le.z!="function"){console.error("equation.z needs to be function");return}for(var he=ne(se),ie=ne(fe),ue=fe.min;ue<fe.max+fe.step*.999;ue+=fe.step)for(var me=se.min;me<se.max+se.step*.999;me+=se.step){var Ce=Me.a.number.round(Math.min(me,se.max),he),Ie=Me.a.number.round(Math.min(ue,fe.max),ie),Fe=le.z(Ce,Ie);ce.push([Ce,Ie,Fe])}}var at=["x","y","z"];Ae.parametric&&at.push("u","v");var ut=Object(Pe.a)(this,at,Ae.data||ce);return ut},defaultOption:{coordinateSystem:"cartesian3D",zlevel:-10,grid3DIndex:0,shading:"lambert",parametric:!1,wireframe:{show:!0,lineStyle:{color:"rgba(0,0,0,0.5)",width:1}},equation:{x:{min:-1,max:1,step:.1},y:{min:-1,max:1,step:.1},z:null},parametricEquation:{u:{min:-1,max:1,step:.1},v:{min:-1,max:1,step:.1},x:null,y:null,z:null},itemStyle:{},animationDurationUpdate:500}});Me.a.util.merge(xe.prototype,ve.a);var pe=xe},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(2),Ee=be(3),Pe=be(1),xe=be.n(Pe),pe=be(60),Ae=xe.a.vec3;function Se(ce){return isNaN(ce[0])||isNaN(ce[1])||isNaN(ce[2])}Me.a.extendChartView({type:"surface",__ecgl__:!0,init:function(ce,te){this.groupGL=new ve.a.Node},render:function(ce,te,ne){var le=this._prevSurfaceMesh;this._prevSurfaceMesh=this._surfaceMesh,this._surfaceMesh=le,this._surfaceMesh||(this._surfaceMesh=this._createSurfaceMesh()),this.groupGL.remove(this._prevSurfaceMesh),this.groupGL.add(this._surfaceMesh);var se=ce.coordinateSystem,fe=ce.get("shading"),he=ce.getData(),ie="ecgl."+fe;if((!this._surfaceMesh.material||this._surfaceMesh.material.shader.name!==ie)&&(this._surfaceMesh.material=ve.a.createMaterial(ie,["VERTEX_COLOR","DOUBLE_SIDED"])),ve.a.setMaterialFromModel(fe,this._surfaceMesh.material,ce,ne),se&&se.viewGL){se.viewGL.add(this.groupGL);var ue=se.viewGL.isLinearSpace()?"define":"undefine";this._surfaceMesh.material[ue]("fragment","SRGB_DECODE")}var me=ce.get("parametric"),Ce=this._getDataShape(he,me),Ie=ce.getModel("wireframe"),Fe=Ie.get("lineStyle.width"),Re=Ie.get("show")&&Fe>0;this._updateSurfaceMesh(this._surfaceMesh,ce,Ce,Re);var Ue=this._surfaceMesh.material;Re?(Ue.define("WIREFRAME_QUAD"),Ue.set("wireframeLineWidth",Fe),Ue.set("wireframeLineColor",ve.a.parseColor(Ie.get("lineStyle.color")))):Ue.undefine("WIREFRAME_QUAD"),this._initHandler(ce,ne),this._updateAnimation(ce)},_updateAnimation:function(ce){ve.a.updateVertexAnimation([["prevPosition","position"],["prevNormal","normal"]],this._prevSurfaceMesh,this._surfaceMesh,ce)},_createSurfaceMesh:function(){var ce=new ve.a.Mesh({geometry:new ve.a.Geometry({dynamic:!0,sortTriangles:!0}),shadowDepthMaterial:new ve.a.Material({shader:new ve.a.Shader(ve.a.Shader.source("ecgl.sm.depth.vertex"),ve.a.Shader.source("ecgl.sm.depth.fragment"))}),culling:!1,renderOrder:10,renderNormal:!0});return ce.geometry.createAttribute("barycentric","float",4),ce.geometry.createAttribute("prevPosition","float",3),ce.geometry.createAttribute("prevNormal","float",3),Me.a.util.extend(ce.geometry,pe.a),ce},_initHandler:function(ce,te){var ne=ce.getData(),le=this._surfaceMesh,se=ce.coordinateSystem;function fe(ie,ue){for(var me=1/0,Ce=-1,Ie=[],Fe=0;Fe<ie.length;Fe++){le.geometry.attributes.position.get(ie[Fe],Ie);var Re=Ae.dist(ue.array,Ie);Re<me&&(me=Re,Ce=ie[Fe])}return Ce}le.seriesIndex=ce.seriesIndex;var he=-1;le.off("mousemove"),le.off("mouseout"),le.on("mousemove",function(ie){var ue=fe(ie.triangle,ie.point);if(ue>=0){var me=[];le.geometry.attributes.position.get(ue,me);for(var Ce=se.pointToData(me),Ie=1/0,Fe=-1,Re=[],Ue=0;Ue<ne.count();Ue++){Re[0]=ne.get("x",Ue),Re[1]=ne.get("y",Ue),Re[2]=ne.get("z",Ue);var Ge=Ae.squaredDistance(Re,Ce);Ge<Ie&&(Fe=Ue,Ie=Ge)}Fe!==he&&te.dispatchAction({type:"grid3DShowAxisPointer",value:Ce}),he=Fe,le.dataIndex=Fe}else le.dataIndex=-1},this),le.on("mouseout",function(ie){he=-1,le.dataIndex=-1,te.dispatchAction({type:"grid3DHideAxisPointer"})},this)},_updateSurfaceMesh:function(ce,te,ne,le){var se=ce.geometry,fe=te.getData(),he=fe.getLayout("points"),ie=0;fe.each(function(Mt){fe.hasValue(Mt)||ie++});var ue=ie||le,me=se.attributes.position,Ce=se.attributes.normal,Ie=se.attributes.texcoord0,Fe=se.attributes.barycentric,Re=se.attributes.color,Ue=ne.row,Ge=ne.column,Je=te.get("shading"),Qe=Je!=="color";if(ue){var rt=(Ue-1)*(Ge-1)*4;me.init(rt),le&&Fe.init(rt)}else me.value=new Float32Array(he);Re.init(se.vertexCount),Ie.init(se.vertexCount);var $e=[0,3,1,1,3,2],qe=[[1,1,0,0],[0,1,0,1],[1,0,0,1],[1,0,1,0]],ot=se.indices=new(se.vertexCount>65535?Uint32Array:Uint16Array)((Ue-1)*(Ge-1)*6),at=function(Mt,ln,zn){zn[1]=Mt*Ge+ln,zn[0]=Mt*Ge+ln+1,zn[3]=(Mt+1)*Ge+ln+1,zn[2]=(Mt+1)*Ge+ln},ut=!1;if(ue){var nt=[],lt=[],yt=0;Qe?Ce.init(se.vertexCount):Ce.value=null;for(var ft=[[],[],[]],ct=[],vt=[],Ut=Ae.create(),Zt=function(Mt,ln,zn){var Gn=ln*3;return zn[0]=Mt[Gn],zn[1]=Mt[Gn+1],zn[2]=Mt[Gn+2],zn},en=new Float32Array(he.length),mn=new Float32Array(he.length/3*4),Bt=0;Bt<fe.count();Bt++)if(fe.hasValue(Bt)){var bt=ve.a.parseColor(fe.getItemVisual(Bt,"color")),tn=fe.getItemVisual(Bt,"opacity");bt[3]*=tn,bt[3]<.99&&(ut=!0);for(var on=0;on<4;on++)mn[Bt*4+on]=bt[on]}for(var Mn=[1e7,1e7,1e7],Bt=0;Bt<Ue-1;Bt++)for(var Dn=0;Dn<Ge-1;Dn++){var sn=Bt*(Ge-1)+Dn,rn=sn*4;at(Bt,Dn,nt);for(var Ht=!1,on=0;on<4;on++)Zt(he,nt[on],lt),Se(lt)&&(Ht=!0);for(var on=0;on<4;on++)Ht?me.set(rn+on,Mn):(Zt(he,nt[on],lt),me.set(rn+on,lt)),le&&Fe.set(rn+on,qe[on]);for(var on=0;on<6;on++)ot[yt++]=$e[on]+rn;if(Qe&&!Ht)for(var on=0;on<2;on++){for(var Tt=on*3,St=0;St<3;St++){var Qt=nt[$e[Tt]+St];Zt(he,Qt,ft[St])}Ae.sub(ct,ft[0],ft[1]),Ae.sub(vt,ft[1],ft[2]),Ae.cross(Ut,ct,vt);for(var St=0;St<3;St++){var gt=nt[$e[Tt]+St]*3;en[gt]=en[gt]+Ut[0],en[gt+1]=en[gt+1]+Ut[1],en[gt+2]=en[gt+2]+Ut[2]}}}if(Qe)for(var Bt=0;Bt<en.length/3;Bt++)Zt(en,Bt,Ut),Ae.normalize(Ut,Ut),en[Bt*3]=Ut[0],en[Bt*3+1]=Ut[1],en[Bt*3+2]=Ut[2];for(var bt=[],Yt=[],Bt=0;Bt<Ue-1;Bt++)for(var Dn=0;Dn<Ge-1;Dn++){var sn=Bt*(Ge-1)+Dn,rn=sn*4;at(Bt,Dn,nt);for(var on=0;on<4;on++){for(var St=0;St<4;St++)bt[St]=mn[nt[on]*4+St];Re.set(rn+on,bt),Qe&&(Zt(en,nt[on],Ut),Ce.set(rn+on,Ut));var Qt=nt[on];Yt[0]=Qt%Ge/(Ge-1),Yt[1]=Math.floor(Qt/Ge)/(Ue-1),Ie.set(rn+on,Yt)}sn++}}else{for(var Yt=[],Bt=0;Bt<fe.count();Bt++){Yt[0]=Bt%Ge/(Ge-1),Yt[1]=Math.floor(Bt/Ge)/(Ue-1);var bt=ve.a.parseColor(fe.getItemVisual(Bt,"color")),tn=fe.getItemVisual(Bt,"opacity");bt[3]*=tn,bt[3]<.99&&(ut=!0),Re.set(Bt,bt),Ie.set(Bt,Yt)}for(var nt=[],kt=0,Bt=0;Bt<Ue-1;Bt++)for(var Dn=0;Dn<Ge-1;Dn++){at(Bt,Dn,nt);for(var on=0;on<6;on++)ot[kt++]=nt[$e[on]]}Qe?se.generateVertexNormals():Ce.value=null}ce.material.get("normalMap")&&se.generateTangents(),se.updateBoundingBox(),se.dirty(),ce.material.transparent=ut,ce.material.depthMask=!ut},_getDataShape:function(ce,te){for(var ne=-1/0,le=0,se=0,fe=0,he=te?"u":"x",ie=0;ie<ce.count();ie++){var ue=ce.get(he,ie);if(ue<ne){if(fe&&fe!==se)throw new Error("Invalid data. data should be a row major 2d array.");fe=se,se=0,le++}ne=ue,se++}return{row:le+1,column:se}},dispose:function(){this.groupGL.removeAll()},remove:function(){this.groupGL.removeAll()}})},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e);Me.a.registerLayout(function(ve,Ee){ve.eachSeriesByType("surface",function(Pe){var xe=Pe.coordinateSystem;(!xe||xe.type!=="cartesian3D")&&console.error("Surface chart only support cartesian3D coordinateSystem");var pe=Pe.getData(),Ae=new Float32Array(3*pe.count()),Se=[NaN,NaN,NaN];if(xe&&xe.type==="cartesian3D"){var ce=xe.dimensions,te=ce.map(function(ne){return Pe.coordDimToDataDim(ne)[0]});pe.each(te,function(ne,le,se,fe){var he;pe.hasValue(fe)?he=xe.dataToPoint([ne,le,se]):he=Se,Ae[fe*3]=he[0],Ae[fe*3+1]=he[1],Ae[fe*3+2]=he[2]})}pe.setLayout("points",Ae)})})},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(83),Ee=be(234),Pe=be(235),xe=be(16);Me.a.registerVisual(Object(xe.a)("map3D")),Me.a.registerAction({type:"map3DChangeCamera",event:"map3dcamerachanged",update:"series:updateCamera"},function(pe,Ae){Ae.eachComponent({mainType:"series",subType:"map3D",query:pe},function(Se){Se.setView(pe)})})},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(38),Ee=be(31),Pe=be(32),xe=be(26),pe=be(80),Ae=be(27),Se=be(35),ce=be(82);function te(se,fe){for(var he=[],ie=0;ie<fe.length;ie++)he.push(se.dataToPoint(fe[ie]));return he}var ne=Me.a.extendSeriesModel({type:"series.map3D",layoutMode:"box",coordinateSystem:null,visualColorAccessPath:"itemStyle.color",optionUpdated:function(se){se=se||{};var fe=this.get("coordinateSystem");if(!(fe==null||fe==="geo3D")){var he=["left","top","width","height","boxWidth","boxDepth","boxHeight","light","viewControl","postEffect","temporalSuperSampling","environment","groundPlane"],ie=[];he.forEach(function(ue){se[ue]!=null&&ie.push(ue)}),ie.length&&console.warn("Property %s in map3D series will be ignored if coordinate system is %s",ie.join(", "),fe),this.get("groundPlane.show")&&(this.option.groundPlane.show=!1),this._geo=null}},getInitialData:function(se){se.data=this.getFilledRegions(se.data,se.map);var fe=Me.a.helper.completeDimensions(["value"],se.data),he=new Me.a.List(fe,this);he.initData(se.data);var ie={};return he.each(function(ue){var me=he.getName(ue),Ce=he.getItemModel(ue);ie[me]=Ce}),this._regionModelMap=ie,he},formatTooltip:function(se){return Object(Se.a)(this,se)},getRegionModel:function(se){var fe=this.getData().getName(se);return this._regionModelMap[fe]||new Me.a.Model(null,this)},getRegionPolygonCoords:function(se){var fe=this.coordinateSystem,he=this.getData().getName(se);if(fe.transform){var ie=fe.getRegion(he);return ie?ie.geometries:[]}else{this._geo||(this._geo=ce.a.createGeo3D(this));for(var ie=this._geo.getRegion(he),ue=[],me=0;me<ie.geometries.length;me++){var Ce=ie.geometries[me],Ie=[],Fe=te(fe,Ce.exterior);if(Ie&&Ie.length)for(var Re=0;Re<Ce.interiors.length;Re++)Ie.push(te(fe,Ie[Re]));ue.push({interiors:Ie,exterior:Fe})}return ue}},getFormattedLabel:function(se,fe){var he=Ae.a.getFormattedLabel(this,se,fe);return he==null&&(he=this.getData().getName(se)),he},defaultOption:{coordinateSystem:"geo3D",data:null}});Me.a.util.merge(ne.prototype,pe.a),Me.a.util.merge(ne.prototype,ve.a),Me.a.util.merge(ne.prototype,Ee.a),Me.a.util.merge(ne.prototype,Pe.a),Me.a.util.merge(ne.prototype,xe.a);var le=ne},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(2),Ee=be(39),Pe=be(34),xe=be(59),pe=Me.a.extendChartView({type:"map3D",__ecgl__:!0,init:function(Ae,Se){this._geo3DBuilder=new xe.a(Se),this.groupGL=new ve.a.Node},render:function(Ae,Se,ce){var te=Ae.coordinateSystem;if(!(!te||!te.viewGL)){this.groupGL.add(this._geo3DBuilder.rootNode),te.viewGL.add(this.groupGL);var ne;if(te.type==="geo3D"){ne=te,this._sceneHelper||(this._sceneHelper=new Pe.a,this._sceneHelper.initLight(this.groupGL)),this._sceneHelper.setScene(te.viewGL.scene),this._sceneHelper.updateLight(Ae),te.viewGL.setPostEffect(Ae.getModel("postEffect"),ce),te.viewGL.setTemporalSuperSampling(Ae.getModel("temporalSuperSampling"));var le=this._control;le||(le=this._control=new Ee.a({zr:ce.getZr()}),this._control.init());var se=Ae.getModel("viewControl");le.setViewGL(te.viewGL),le.setFromViewControlModel(se,0),le.off("update"),le.on("update",function(){ce.dispatchAction({type:"map3DChangeCamera",alpha:le.getAlpha(),beta:le.getBeta(),distance:le.getDistance(),from:this.uid,map3DId:Ae.id})}),this._geo3DBuilder.extrudeY=!0}else this._control&&(this._control.dispose(),this._control=null),this._sceneHelper&&(this._sceneHelper.dispose(),this._sceneHelper=null),ne=Ae.getData().getLayout("geo3D"),this._geo3DBuilder.extrudeY=!1;this._geo3DBuilder.update(Ae,Se,ce,0,Ae.getData().count());var fe=te.viewGL.isLinearSpace()?"define":"undefine";this._geo3DBuilder.rootNode.traverse(function(he){he.material&&he.material[fe]("fragment","SRGB_DECODE")})}},afterRender:function(Ae,Se,ce,te){var ne=te.renderer,le=Ae.coordinateSystem;le&&le.type==="geo3D"&&(this._sceneHelper.updateAmbientCubemap(ne,Ae,ce),this._sceneHelper.updateSkybox(ne,Ae,ce))},dispose:function(){this.groupGL.removeAll(),this._control.dispose()}})},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(237),Ee=be(238),Pe=be(45),xe=be.n(Pe),pe=be(16);Me.a.registerVisual(xe()("scatterGL","circle",null)),Me.a.registerVisual(Object(pe.a)("scatterGL")),Me.a.registerLayout({seriesType:"scatterGL",reset:function(Ae){var Se=Ae.coordinateSystem,ce;if(Se){var te=Se.dimensions,ne=[];te.length===1?ce=function(le,se){for(var fe=new Float32Array((le.end-le.start)*2),he=le.start;he<le.end;he++){var ie=(he-le.start)*2,ue=se.get(te[0],he),me=Se.dataToPoint(ue);fe[ie]=me[0],fe[ie+1]=me[1]}se.setLayout("points",fe)}:te.length===2&&(ce=function(le,se){for(var fe=new Float32Array((le.end-le.start)*2),he=le.start;he<le.end;he++){var ie=(he-le.start)*2,ue=se.get(te[0],he),me=se.get(te[1],he);ne[0]=ue,ne[1]=me,ne=Se.dataToPoint(ne),fe[ie]=ne[0],fe[ie+1]=ne[1]}se.setLayout("points",fe)})}return{progress:ce}}})},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e);Me.a.extendSeriesModel({type:"series.scatterGL",dependencies:["grid","polar","geo","singleAxis"],visualColorAccessPath:"itemStyle.color",getInitialData:function(){return Me.a.helper.createList(this)},defaultOption:{coordinateSystem:"cartesian2d",zlevel:10,progressive:1e5,progressiveThreshold:1e5,large:!1,symbol:"circle",symbolSize:10,zoomScale:0,blendMode:"source-over",itemStyle:{opacity:.8},postEffect:{enable:!1,colorCorrection:{exposure:0,brightness:0,contrast:1,saturation:1,enable:!0}}}})},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(2),Ee=be(20),Pe=be(62),xe=be(84),pe=be(3);Me.a.extendChartView({type:"scatterGL",__ecgl__:!0,init:function(Ae,Se){this.groupGL=new ve.a.Node,this.viewGL=new Ee.a("orthographic"),this.viewGL.add(this.groupGL),this._pointsBuilderList=[],this._currentStep=0,this._sizeScale=1,this._glViewHelper=new xe.a(this.viewGL)},render:function(Ae,Se,ce){if(this.groupGL.removeAll(),this._glViewHelper.reset(Ae,ce),!!Ae.getData().count()){var te=this._pointsBuilderList[0];te||(te=this._pointsBuilderList[0]=new Pe.a(!0,ce)),this._pointsBuilderList.length=1,this.groupGL.add(te.rootNode),this._removeTransformInPoints(Ae.getData().getLayout("points")),te.update(Ae,Se,ce),this.viewGL.setPostEffect(Ae.getModel("postEffect"),ce)}},incrementalPrepareRender:function(Ae,Se,ce){this.groupGL.removeAll(),this._glViewHelper.reset(Ae,ce),this._currentStep=0,this.viewGL.setPostEffect(Ae.getModel("postEffect"),ce)},incrementalRender:function(Ae,Se,ce,te){if(!(Ae.end<=Ae.start)){var ne=this._pointsBuilderList[this._currentStep];ne||(ne=new Pe.a(!0,te),this._pointsBuilderList[this._currentStep]=ne),this.groupGL.add(ne.rootNode),this._removeTransformInPoints(Se.getData().getLayout("points")),ne.setSizeScale(this._sizeScale),ne.update(Se,ce,te,Ae.start,Ae.end),te.getZr().refresh(),this._currentStep++}},updateTransform:function(Ae,Se,ce){if(Ae.coordinateSystem.getRoamTransform){this._glViewHelper.updateTransform(Ae,ce);var te=this._glViewHelper.getZoom(),ne=Math.max((Ae.get("zoomScale")||0)*(te-1)+1,0);this._sizeScale=ne,this._pointsBuilderList.forEach(function(le){le.setSizeScale(ne)})}},_removeTransformInPoints:function(Ae){if(Ae)for(var Se=[],ce=0;ce<Ae.length;ce+=2)Se[0]=Ae[ce],Se[1]=Ae[ce+1],this._glViewHelper.removeTransformInPoint(Se),Ae[ce]=Se[0],Ae[ce+1]=Se[1]},dispose:function(){this.groupGL.removeAll()},remove:function(){this.groupGL.removeAll()}})},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(240),Ee=be(246),Pe=be(45),xe=be.n(Pe),pe=be(16);Me.a.registerVisual(xe()("graphGL","circle",null)),Me.a.registerVisual(Object(pe.a)("graphGL")),Me.a.registerVisual(function(Se){var ce={};Se.eachSeriesByType("graphGL",function(te){var ne=te.getCategoriesData(),le=te.getData(),se={};ne.each(function(fe){var he=ne.getName(fe);se[he]=fe;var ie=ne.getItemModel(fe),ue=ie.get("itemStyle.color")||te.getColorFromPalette(he,ce);ne.setItemVisual(fe,"color",ue)}),ne.count()&&le.each(function(fe){var he=le.getItemModel(fe),ie=he.getShallow("category");ie!=null&&(typeof ie=="string"&&(ie=se[ie]),le.getItemVisual(fe,"color",!0)||le.setItemVisual(fe,"color",ne.getItemVisual(ie,"color")))})})}),Me.a.registerVisual(function(Se){Se.eachSeriesByType("graphGL",function(ce){var te=ce.getGraph(),ne=ce.getEdgeData(),le="lineStyle.color".split("."),se="lineStyle.opacity".split(".");ne.setVisual("color",ce.get(le)),ne.setVisual("opacity",ce.get(se)),ne.each(function(fe){var he=ne.getItemModel(fe),ie=te.getEdgeByIndex(fe),ue=he.get(le),me=he.get(se);switch(ue){case"source":ue=ie.node1.getVisual("color");break;case"target":ue=ie.node2.getVisual("color");break}ie.setVisual("color",ue),ie.setVisual("opacity",me)})})}),Me.a.registerAction({type:"graphGLRoam",event:"graphglroam",update:"series.graphGL:roam"},function(Se,ce){ce.eachComponent({mainType:"series",query:Se},function(te){te.setView(Se)})});function Ae(){}Me.a.registerAction({type:"graphGLStartLayout",event:"graphgllayoutstarted",update:"series.graphGL:startLayout"},Ae),Me.a.registerAction({type:"graphGLStopLayout",event:"graphgllayoutstopped",update:"series.graphGL:stopLayout"},Ae),Me.a.registerAction({type:"graphGLFocusNodeAdjacency",event:"graphGLFocusNodeAdjacency",update:"series.graphGL:focusNodeAdjacency"},Ae),Me.a.registerAction({type:"graphGLUnfocusNodeAdjacency",event:"graphGLUnfocusNodeAdjacency",update:"series.graphGL:unfocusNodeAdjacency"},Ae)},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(241),Ee=be(27),Pe=Me.a.extendSeriesModel({type:"series.graphGL",visualColorAccessPath:"itemStyle.color",init:function(pe){Pe.superApply(this,"init",arguments),this.legendDataProvider=function(){return this._categoriesData},this._updateCategoriesData()},mergeOption:function(pe){Pe.superApply(this,"mergeOption",arguments),this._updateCategoriesData()},getFormattedLabel:function(pe,Ae,Se,ce){var te=Ee.a.getFormattedLabel(this,pe,Ae,Se,ce);if(te==null){var ne=this.getData(),le=ne.dimensions[ne.dimensions.length-1];te=ne.get(le,pe)}return te},getInitialData:function(pe,Ae){var Se=pe.edges||pe.links||[],ce=pe.data||pe.nodes||[],te=this;if(ce&&Se)return Object(ve.a)(ce,Se,this,!0,ne).data;function ne(le,se){le.wrapMethod("getItemModel",function(ue){var me=te._categoriesModels,Ce=ue.getShallow("category"),Ie=me[Ce];return Ie&&(Ie.parentModel=ue.parentModel,ue.parentModel=Ie),ue});var fe=te.getModel("edgeLabel"),he=new Me.a.Model({label:fe.option},fe.parentModel,Ae);se.wrapMethod("getItemModel",function(ue){return ue.customizeGetParent(ie),ue});function ie(ue){return ue=this.parsePath(ue),ue&&ue[0]==="label"?he:this.parentModel}}},getGraph:function(){return this.getData().graph},getEdgeData:function(){return this.getGraph().edgeData},getCategoriesData:function(){return this._categoriesData},formatTooltip:function(pe,Ae,Se){if(Se==="edge"){var ce=this.getData(),te=this.getDataParams(pe,Se),ne=ce.graph.getEdgeByIndex(pe),le=ce.getName(ne.node1.dataIndex),se=ce.getName(ne.node2.dataIndex),fe=[];return le!=null&&fe.push(le),se!=null&&fe.push(se),fe=Me.a.format.encodeHTML(fe.join(" > ")),te.value&&(fe+=" : "+Me.a.format.encodeHTML(te.value)),fe}else return Pe.superApply(this,"formatTooltip",arguments)},_updateCategoriesData:function(){var pe=(this.option.categories||[]).map(function(Se){return Se.value!=null?Se:Me.a.util.extend({value:0},Se)}),Ae=new Me.a.List(["value"],this);Ae.initData(pe),this._categoriesData=Ae,this._categoriesModels=Ae.mapArray(function(Se){return Ae.getItemModel(Se,!0)})},setView:function(pe){pe.zoom!=null&&(this.option.zoom=pe.zoom),pe.offset!=null&&(this.option.offset=pe.offset)},setNodePosition:function(pe){for(var Ae=0;Ae<pe.length/2;Ae++){var Se=pe[Ae*2],ce=pe[Ae*2+1],te=this.getData().getRawDataItem(Ae);te.x=Se,te.y=ce}},isAnimationEnabled:function(){return Pe.superCall(this,"isAnimationEnabled")&&!(this.get("layout")==="force"&&this.get("force.layoutAnimation"))},defaultOption:{zlevel:10,z:2,legendHoverLink:!0,layout:"forceAtlas2",forceAtlas2:{initLayout:null,GPU:!0,steps:1,maxSteps:1e3,repulsionByDegree:!0,linLogMode:!1,strongGravityMode:!1,gravity:1,edgeWeightInfluence:1,edgeWeight:[1,4],nodeWeight:[1,4],preventOverlap:!1,gravityCenter:null},focusNodeAdjacency:!0,focusNodeAdjacencyOn:"mouseover",left:"center",top:"center",symbol:"circle",symbolSize:5,roam:!1,center:null,zoom:1,label:{show:!1,formatter:"{b}",position:"right",distance:5,textStyle:{fontSize:14}},itemStyle:{},lineStyle:{color:"#aaa",width:1,opacity:.5},emphasis:{label:{show:!0}},animation:!1}}),xe=Pe},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(242),Ee=be.n(ve),Pe=be(245),xe=be.n(Pe),pe=be(3);Ne.a=function(Ae,Se,ce,te,ne){for(var le=new Ee.a(te),se=0;se<Ae.length;se++)le.addNode(pe.a.firstNotNull(Ae[se].id,Ae[se].name,se),se);for(var fe=[],he=[],ie=0,se=0;se<Se.length;se++){var ue=Se[se],me=ue.source,Ce=ue.target;le.addEdge(me,Ce,ie)&&(he.push(ue),fe.push(pe.a.firstNotNull(ue.id,me+" > "+Ce)),ie++)}var Ie,Fe=Me.a.helper.completeDimensions(["value"],Ae);Ie=new Me.a.List(Fe,ce),Ie.initData(Ae);var Re=new Me.a.List(["value"],ce);return Re.initData(he,fe),ne&&ne(Ie,Re),xe()({mainData:Ie,struct:le,structAttr:"graph",datas:{node:Ie,edge:Re},datasAttr:{node:"data",edge:"edgeData"}}),le.update(),le}},function(He,Ne,be){var _e=be(85),Me=_e.__DEV__,ve=be(12),Ee=be(244),Pe=Ee.enableClassCheck;function xe(le){return"_EC_"+le}var pe=function(le){this._directed=le||!1,this.nodes=[],this.edges=[],this._nodesMap={},this._edgesMap={},this.data,this.edgeData},Ae=pe.prototype;Ae.type="graph",Ae.isDirected=function(){return this._directed},Ae.addNode=function(le,se){le=le||""+se;var fe=this._nodesMap;if(!fe[xe(le)]){var he=new Se(le,se);return he.hostGraph=this,this.nodes.push(he),fe[xe(le)]=he,he}},Ae.getNodeByIndex=function(le){var se=this.data.getRawIndex(le);return this.nodes[se]},Ae.getNodeById=function(le){return this._nodesMap[xe(le)]},Ae.addEdge=function(le,se,fe){var he=this._nodesMap,ie=this._edgesMap;if(typeof le=="number"&&(le=this.nodes[le]),typeof se=="number"&&(se=this.nodes[se]),Se.isInstance(le)||(le=he[xe(le)]),Se.isInstance(se)||(se=he[xe(se)]),!(!le||!se)){var ue=le.id+"-"+se.id;if(!ie[ue]){var me=new ce(le,se,fe);return me.hostGraph=this,this._directed&&(le.outEdges.push(me),se.inEdges.push(me)),le.edges.push(me),le!==se&&se.edges.push(me),this.edges.push(me),ie[ue]=me,me}}},Ae.getEdgeByIndex=function(le){var se=this.edgeData.getRawIndex(le);return this.edges[se]},Ae.getEdge=function(le,se){Se.isInstance(le)&&(le=le.id),Se.isInstance(se)&&(se=se.id);var fe=this._edgesMap;return this._directed?fe[le+"-"+se]:fe[le+"-"+se]||fe[se+"-"+le]},Ae.eachNode=function(le,se){for(var fe=this.nodes,he=fe.length,ie=0;ie<he;ie++)fe[ie].dataIndex>=0&&le.call(se,fe[ie],ie)},Ae.eachEdge=function(le,se){for(var fe=this.edges,he=fe.length,ie=0;ie<he;ie++)fe[ie].dataIndex>=0&&fe[ie].node1.dataIndex>=0&&fe[ie].node2.dataIndex>=0&&le.call(se,fe[ie],ie)},Ae.breadthFirstTraverse=function(le,se,fe,he){if(Se.isInstance(se)||(se=this._nodesMap[xe(se)]),!!se){for(var ie=fe==="out"?"outEdges":fe==="in"?"inEdges":"edges",ue=0;ue<this.nodes.length;ue++)this.nodes[ue].__visited=!1;if(!le.call(he,se,null))for(var me=[se];me.length;)for(var Ce=me.shift(),Ie=Ce[ie],ue=0;ue<Ie.length;ue++){var Fe=Ie[ue],Re=Fe.node1===Ce?Fe.node2:Fe.node1;if(!Re.__visited){if(le.call(he,Re,Ce))return;me.push(Re),Re.__visited=!0}}}},Ae.update=function(){for(var le=this.data,se=this.edgeData,fe=this.nodes,he=this.edges,ie=0,ue=fe.length;ie<ue;ie++)fe[ie].dataIndex=-1;for(var ie=0,ue=le.count();ie<ue;ie++)fe[le.getRawIndex(ie)].dataIndex=ie;se.filterSelf(function(me){var Ce=he[se.getRawIndex(me)];return Ce.node1.dataIndex>=0&&Ce.node2.dataIndex>=0});for(var ie=0,ue=he.length;ie<ue;ie++)he[ie].dataIndex=-1;for(var ie=0,ue=se.count();ie<ue;ie++)he[se.getRawIndex(ie)].dataIndex=ie},Ae.clone=function(){for(var le=new pe(this._directed),se=this.nodes,fe=this.edges,he=0;he<se.length;he++)le.addNode(se[he].id,se[he].dataIndex);for(var he=0;he<fe.length;he++){var ie=fe[he];le.addEdge(ie.node1.id,ie.node2.id,ie.dataIndex)}return le};function Se(le,se){this.id=le==null?"":le,this.inEdges=[],this.outEdges=[],this.edges=[],this.hostGraph,this.dataIndex=se==null?-1:se}Se.prototype={constructor:Se,degree:function(){return this.edges.length},inDegree:function(){return this.inEdges.length},outDegree:function(){return this.outEdges.length},getModel:function(le){if(!(this.dataIndex<0)){var se=this.hostGraph,fe=se.data.getItemModel(this.dataIndex);return fe.getModel(le)}}};function ce(le,se,fe){this.node1=le,this.node2=se,this.dataIndex=fe==null?-1:fe}ce.prototype.getModel=function(le){if(!(this.dataIndex<0)){var se=this.hostGraph,fe=se.edgeData.getItemModel(this.dataIndex);return fe.getModel(le)}};var te=function(le,se){return{getValue:function(fe){var he=this[le][se];return he.get(he.getDimension(fe||"value"),this.dataIndex)},setVisual:function(fe,he){this.dataIndex>=0&&this[le][se].setItemVisual(this.dataIndex,fe,he)},getVisual:function(fe,he){return this[le][se].getItemVisual(this.dataIndex,fe,he)},setLayout:function(fe,he){this.dataIndex>=0&&this[le][se].setItemLayout(this.dataIndex,fe,he)},getLayout:function(){return this[le][se].getItemLayout(this.dataIndex)},getGraphicEl:function(){return this[le][se].getItemGraphicEl(this.dataIndex)},getRawIndex:function(){return this[le][se].getRawIndex(this.dataIndex)}}};ve.mixin(Se,te("hostGraph","data")),ve.mixin(ce,te("hostGraph","edgeData")),pe.Node=Se,pe.Edge=ce,Pe(Se),Pe(ce);var ne=pe;He.exports=ne},function(He,Ne){var be;be=function(){return this}();try{be=be||Function("return this")()||(0,eval)("this")}catch(_e){typeof window=="object"&&(be=window)}He.exports=be},function(He,Ne,be){var _e=be(85),Me=_e.__DEV__,ve=be(12),Ee=".",Pe="___EC__COMPONENT__CONTAINER___";function xe(fe){var he={main:"",sub:""};return fe&&(fe=fe.split(Ee),he.main=fe[0]||"",he.sub=fe[1]||""),he}function pe(fe){ve.assert(/^[a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)?$/.test(fe),'componentType "'+fe+'" illegal')}function Ae(fe,he){fe.$constructor=fe,fe.extend=function(ie){var ue=this,me=function(){ie.$constructor?ie.$constructor.apply(this,arguments):ue.apply(this,arguments)};return ve.extend(me.prototype,ie),me.extend=this.extend,me.superCall=te,me.superApply=ne,ve.inherits(me,this),me.superClass=ue,me}}var Se=0;function ce(fe){var he=["__\0is_clz",Se++,Math.random().toFixed(3)].join("_");fe.prototype[he]=!0,fe.isInstance=function(ie){return!!(ie&&ie[he])}}function te(fe,he){var ie=ve.slice(arguments,2);return this.superClass.prototype[he].apply(fe,ie)}function ne(fe,he,ie){return this.superClass.prototype[he].apply(fe,ie)}function le(fe,he){he=he||{};var ie={};fe.registerClass=function(Ce,Ie){if(Ie){if(pe(Ie),Ie=xe(Ie),!Ie.sub)ie[Ie.main]=Ce;else if(Ie.sub!==Pe){var Fe=ue(Ie);Fe[Ie.sub]=Ce}}return Ce},fe.getClass=function(Ce,Ie,Fe){var Re=ie[Ce];if(Re&&Re[Pe]&&(Re=Ie?Re[Ie]:null),Fe&&!Re)throw new Error(Ie?"Component "+Ce+"."+(Ie||"")+" not exists. Load it first.":Ce+".type should be specified.");return Re},fe.getClassesByMainType=function(Ce){Ce=xe(Ce);var Ie=[],Fe=ie[Ce.main];return Fe&&Fe[Pe]?ve.each(Fe,function(Re,Ue){Ue!==Pe&&Ie.push(Re)}):Ie.push(Fe),Ie},fe.hasClass=function(Ce){return Ce=xe(Ce),!!ie[Ce.main]},fe.getAllClassMainTypes=function(){var Ce=[];return ve.each(ie,function(Ie,Fe){Ce.push(Fe)}),Ce},fe.hasSubTypes=function(Ce){Ce=xe(Ce);var Ie=ie[Ce.main];return Ie&&Ie[Pe]},fe.parseClassType=xe;function ue(Ce){var Ie=ie[Ce.main];return(!Ie||!Ie[Pe])&&(Ie=ie[Ce.main]={},Ie[Pe]=!0),Ie}if(he.registerWhenExtend){var me=fe.extend;me&&(fe.extend=function(Ce){var Ie=me.call(this,Ce);return fe.registerClass(Ie,Ce.type)})}return fe}function se(fe,he){}Ne.parseClassType=xe,Ne.enableClassExtend=Ae,Ne.enableClassCheck=ce,Ne.enableClassManagement=le,Ne.setReadOnly=se},function(He,Ne,be){var _e=be(12),Me=_e.each,ve="\0__link_datas",Ee="\0__link_mainData";function Pe(se){var fe=se.mainData,he=se.datas;he||(he={main:fe},se.datasAttr={main:"data"}),se.datas=se.mainData=null,te(fe,he,se),Me(he,function(ie){Me(fe.TRANSFERABLE_METHODS,function(ue){ie.wrapMethod(ue,_e.curry(xe,se))})}),fe.wrapMethod("cloneShallow",_e.curry(Ae,se)),Me(fe.CHANGABLE_METHODS,function(ie){fe.wrapMethod(ie,_e.curry(pe,se))}),_e.assert(he[fe.dataType]===fe)}function xe(se,fe){if(ce(this)){var he=_e.extend({},this[ve]);he[this.dataType]=fe,te(fe,he,se)}else ne(fe,this.dataType,this[Ee],se);return fe}function pe(se,fe){return se.struct&&se.struct.update(this),fe}function Ae(se,fe){return Me(fe[ve],function(he,ie){he!==fe&&ne(he.cloneShallow(),ie,fe,se)}),fe}function Se(se){var fe=this[Ee];return se==null||fe==null?fe:fe[ve][se]}function ce(se){return se[Ee]===se}function te(se,fe,he){se[ve]={},Me(fe,function(ie,ue){ne(ie,ue,se,he)})}function ne(se,fe,he,ie){he[ve][fe]=se,se[Ee]=he,se.dataType=fe,ie.struct&&(se[ie.structAttr]=ie.struct,ie.struct[ie.datasAttr[fe]]=se),se.getLinkedData=Se}var le=Pe;He.exports=le},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(41),Ee=be.n(ve),Pe=be(2),xe=be(20),pe=be(86),Ae=be(3),Se=be(247),ce=be(249),te=be(65),ne=be.n(te),le=be(1),se=be.n(le),fe=be(251),he=be(62),ie=be(252),ue=se.a.vec2;Pe.a.Shader.import(ie.a);var me=1;Me.a.extendChartView({type:"graphGL",__ecgl__:!0,init:function(Ce,Ie){this.groupGL=new Pe.a.Node,this.viewGL=new xe.a("orthographic"),this.viewGL.camera.left=this.viewGL.camera.right=0,this.viewGL.add(this.groupGL),this._pointsBuilder=new he.a(!0,Ie),this._forceEdgesMesh=new Pe.a.Mesh({material:new Pe.a.Material({shader:Pe.a.createShader("ecgl.forceAtlas2.edges"),transparent:!0,depthMask:!1,depthTest:!1}),$ignorePicking:!0,geometry:new Pe.a.Geometry({attributes:{node:new Pe.a.Geometry.Attribute("node","float",2),color:new Pe.a.Geometry.Attribute("color","float",4,"COLOR")},dynamic:!0,mainAttribute:"node"}),renderOrder:-1,mode:Pe.a.Mesh.LINES}),this._edgesMesh=new Pe.a.Mesh({material:new Pe.a.Material({shader:Pe.a.createShader("ecgl.meshLines2D"),transparent:!0,depthMask:!1,depthTest:!1}),$ignorePicking:!0,geometry:new pe.a({useNativeLine:!1,dynamic:!0}),renderOrder:-1,culling:!1}),this._layoutId=0,this._control=new fe.a({zr:Ie.getZr(),viewGL:this.viewGL}),this._control.setTarget(this.groupGL),this._control.init(),this._clickHandler=this._clickHandler.bind(this)},render:function(Ce,Ie,Fe){this.groupGL.add(this._pointsBuilder.rootNode),this._model=Ce,this._api=Fe,this._initLayout(Ce,Ie,Fe),this._pointsBuilder.update(Ce,Ie,Fe),this._forceLayoutInstance instanceof Se.a||this.groupGL.remove(this._forceEdgesMesh),this._updateCamera(Ce,Fe),this._control.off("update"),this._control.on("update",function(){Fe.dispatchAction({type:"graphGLRoam",seriesId:Ce.id,zoom:this._control.getZoom(),offset:this._control.getOffset()}),this._pointsBuilder.updateView(this.viewGL.camera)},this),this._control.setZoom(Ae.a.firstNotNull(Ce.get("zoom"),1)),this._control.setOffset(Ce.get("offset")||[0,0]);var Re=this._pointsBuilder.getPointsMesh();if(Re.off("mousemove",this._mousemoveHandler),Re.off("mouseout",this._mouseOutHandler,this),Fe.getZr().off("click",this._clickHandler),this._pointsBuilder.highlightOnMouseover=!0,Ce.get("focusNodeAdjacency")){var Ue=Ce.get("focusNodeAdjacencyOn");Ue==="click"?Fe.getZr().on("click",this._clickHandler):Ue==="mouseover"?(Re.on("mousemove",this._mousemoveHandler,this),Re.on("mouseout",this._mouseOutHandler,this),this._pointsBuilder.highlightOnMouseover=!1):console.warn("Unkown focusNodeAdjacencyOn value s"+Ue)}this._lastMouseOverDataIndex=-1},_clickHandler:function(Ce){if(!this._layouting){var Ie=this._pointsBuilder.getPointsMesh().dataIndex;Ie>=0?this._api.dispatchAction({type:"graphGLFocusNodeAdjacency",seriesId:this._model.id,dataIndex:Ie}):this._api.dispatchAction({type:"graphGLUnfocusNodeAdjacency",seriesId:this._model.id})}},_mousemoveHandler:function(Ce){if(!this._layouting){var Ie=this._pointsBuilder.getPointsMesh().dataIndex;Ie>=0?Ie!==this._lastMouseOverDataIndex&&this._api.dispatchAction({type:"graphGLFocusNodeAdjacency",seriesId:this._model.id,dataIndex:Ie}):this._mouseOutHandler(Ce),this._lastMouseOverDataIndex=Ie}},_mouseOutHandler:function(Ce){this._layouting||(this._api.dispatchAction({type:"graphGLUnfocusNodeAdjacency",seriesId:this._model.id}),this._lastMouseOverDataIndex=-1)},_updateForceEdgesGeometry:function(Ce,Ie){var Fe=this._forceEdgesMesh.geometry,Re=Ie.getEdgeData(),Ue=0,Ge=this._forceLayoutInstance,Je=Re.count()*2;Fe.attributes.node.init(Je),Fe.attributes.color.init(Je),Re.each(function(Qe){var rt=Ce[Qe];Fe.attributes.node.set(Ue,Ge.getNodeUV(rt.node1)),Fe.attributes.node.set(Ue+1,Ge.getNodeUV(rt.node2));var $e=Re.getItemVisual(rt.dataIndex,"color"),qe=Pe.a.parseColor($e);qe[3]*=Ae.a.firstNotNull(Re.getItemVisual(rt.dataIndex,"opacity"),1),Fe.attributes.color.set(Ue,qe),Fe.attributes.color.set(Ue+1,qe),Ue+=2}),Fe.dirty()},_updateMeshLinesGeometry:function(){var Ie=this._model.getEdgeData(),Ce=this._edgesMesh.geometry,Ie=this._model.getEdgeData(),Fe=this._model.getData().getLayout("points");Ce.resetOffset(),Ce.setVertexCount(Ie.count()*Ce.getLineVertexCount()),Ce.setTriangleCount(Ie.count()*Ce.getLineTriangleCount());var Re=[],Ue=[],Ge=["lineStyle","width"];this._originalEdgeColors=new Float32Array(Ie.count()*4),this._edgeIndicesMap=new Float32Array(Ie.count()),Ie.each(function(Je){var Qe=Ie.graph.getEdgeByIndex(Je),rt=Qe.node1.dataIndex*2,$e=Qe.node2.dataIndex*2;Re[0]=Fe[rt],Re[1]=Fe[rt+1],Ue[0]=Fe[$e],Ue[1]=Fe[$e+1];var qe=Ie.getItemVisual(Qe.dataIndex,"color"),ot=Pe.a.parseColor(qe);ot[3]*=Ae.a.firstNotNull(Ie.getItemVisual(Qe.dataIndex,"opacity"),1);var at=Ie.getItemModel(Qe.dataIndex),ut=Ae.a.firstNotNull(at.get(Ge),1)*this._api.getDevicePixelRatio();Ce.addLine(Re,Ue,ot,ut);for(var nt=0;nt<4;nt++)this._originalEdgeColors[Qe.dataIndex*4+nt]=ot[nt];this._edgeIndicesMap[Qe.dataIndex]=Je},!1,this),Ce.dirty()},_updateForceNodesGeometry:function(Ce){for(var Ie=this._pointsBuilder.getPointsMesh(),Fe=[],Re=0;Re<Ce.count();Re++)this._forceLayoutInstance.getNodeUV(Re,Fe),Ie.geometry.attributes.position.set(Re,Fe);Ie.geometry.dirty("position")},_initLayout:function(Ce,Ie,Fe){var Re=Ce.get("layout"),Ue=Ce.getGraph(),Ge=Ce.getBoxLayoutParams(),Je=Ee.a.getLayoutRect(Ge,{width:Fe.getWidth(),height:Fe.getHeight()});Re==="force"&&(console.warn("Currently only forceAtlas2 layout supported."),Re="forceAtlas2"),this.stopLayout(Ce,Ie,Fe,{beforeLayout:!0});var Qe=Ce.getData(),rt=Ce.getData();if(Re==="forceAtlas2"){var $e=Ce.getModel("forceAtlas2"),qe=this._forceLayoutInstance,ot=[],at=[],ut=Qe.getDataExtent("value"),nt=rt.getDataExtent("value"),lt=Ae.a.firstNotNull($e.get("edgeWeight"),1),yt=Ae.a.firstNotNull($e.get("nodeWeight"),1);typeof lt=="number"&&(lt=[lt,lt]),typeof yt=="number"&&(yt=[yt,yt]);var ft=0,ct={},vt=new Float32Array(Qe.count()*2);if(Ue.eachNode(function(Zt){var en=Zt.dataIndex,mn=Qe.get("value",en),Bt,tn;if(Qe.hasItemOption){var on=Qe.getItemModel(en);Bt=on.get("x"),tn=on.get("y")}Bt==null&&(Bt=Je.x+Math.random()*Je.width,tn=Je.y+Math.random()*Je.height),vt[ft*2]=Bt,vt[ft*2+1]=tn,ct[Zt.id]=ft++;var Mn=Me.a.number.linearMap(mn,ut,yt);isNaN(Mn)&&(isNaN(yt[0])?Mn=1:Mn=yt[0]),ot.push({x:Bt,y:tn,mass:Mn,size:Qe.getItemVisual(en,"symbolSize")})}),Qe.setLayout("points",vt),Ue.eachEdge(function(Zt){var en=Zt.dataIndex,mn=Qe.get("value",en),Bt=Me.a.number.linearMap(mn,nt,lt);isNaN(Bt)&&(isNaN(lt[0])?Bt=1:Bt=lt[0]),at.push({node1:ct[Zt.node1.id],node2:ct[Zt.node2.id],weight:Bt,dataIndex:en})}),!qe){var Ut=$e.get("GPU");this._forceLayoutInstance&&(Ut&&!(this._forceLayoutInstance instanceof Se.a)||!Ut&&!(this._forceLayoutInstance instanceof ce.a))&&(this._forceLayoutInstanceToDispose=this._forceLayoutInstance),qe=this._forceLayoutInstance=Ut?new Se.a:new ce.a}qe.initData(ot,at),qe.updateOption($e.option),this._updateForceEdgesGeometry(qe.getEdges(),Ce),this._updatePositionTexture(),Fe.dispatchAction({type:"graphGLStartLayout",from:this.uid})}else{var vt=new Float32Array(Qe.count()*2),ft=0;Ue.eachNode(function(mn){var Bt=mn.dataIndex,tn,on;if(Qe.hasItemOption){var Mn=Qe.getItemModel(Bt);tn=Mn.get("x"),on=Mn.get("y")}vt[ft++]=tn,vt[ft++]=on}),Qe.setLayout("points",vt),this._updateAfterLayout(Ce,Ie,Fe)}},_updatePositionTexture:function(){var Ce=this._forceLayoutInstance.getNodePositionTexture();this._pointsBuilder.setPositionTexture(Ce),this._forceEdgesMesh.material.set("positionTex",Ce)},startLayout:function(Ce,Ie,Ge,Re){if(!(Re&&Re.from!=null&&Re.from!==this.uid)){var Ue=this.viewGL,Ge=this._api,Je=this._forceLayoutInstance,Qe=this._model.getData(),rt=this._model.getModel("forceAtlas2");if(!Je){console.error("None layout don't have startLayout action");return}if(this.groupGL.remove(this._edgesMesh),this.groupGL.add(this._forceEdgesMesh),!!this._forceLayoutInstance){this._updateForceNodesGeometry(Ce.getData()),this._pointsBuilder.hideLabels();var $e=this,qe=this._layoutId=me++,ot=rt.getShallow("maxSteps"),at=rt.getShallow("steps"),ut=0,nt=Math.max(at*2,20),lt=function(yt){if(yt===$e._layoutId){if(Je.isFinished(ot)){Ge.dispatchAction({type:"graphGLStopLayout",from:$e.uid}),Ge.dispatchAction({type:"graphGLFinishLayout",points:Qe.getLayout("points"),from:$e.uid});return}Je.update(Ue.layer.renderer,at,function(){$e._updatePositionTexture(),ut+=at,ut>=nt&&($e._syncNodePosition(Ce),ut=0),Ge.getZr().refresh(),ne()(function(){lt(yt)})})}};ne()(function(){$e._forceLayoutInstanceToDispose&&($e._forceLayoutInstanceToDispose.dispose(Ue.layer.renderer),$e._forceLayoutInstanceToDispose=null),lt(qe)}),this._layouting=!0}}},stopLayout:function(Ce,Ie,Fe,Re){Re&&Re.from!=null&&Re.from!==this.uid||(this._layoutId=0,this.groupGL.remove(this._forceEdgesMesh),this.groupGL.add(this._edgesMesh),this._forceLayoutInstance&&this.viewGL.layer&&(Re&&Re.beforeLayout||(this._syncNodePosition(Ce),this._updateAfterLayout(Ce,Ie,Fe)),this._api.getZr().refresh(),this._layouting=!1))},_syncNodePosition:function(Ce){var Ie=this._forceLayoutInstance.getNodePosition(this.viewGL.layer.renderer);Ce.getData().setLayout("points",Ie),Ce.setNodePosition(Ie)},_updateAfterLayout:function(Ce,Ie,Fe){this._updateMeshLinesGeometry(),this._pointsBuilder.removePositionTexture(),this._pointsBuilder.updateLayout(Ce,Ie,Fe),this._pointsBuilder.updateView(this.viewGL.camera),this._pointsBuilder.updateLabels(),this._pointsBuilder.showLabels()},focusNodeAdjacency:function(Ce,Ie,Fe,Re){var Ue=this._model.getData();this._downplayAll();var Ge=Re.dataIndex,Je=Ue.graph,Qe=[],rt=Je.getNodeByIndex(Ge);Qe.push(rt),rt.edges.forEach(function(qe){qe.dataIndex<0||(qe.node1!==rt&&Qe.push(qe.node1),qe.node2!==rt&&Qe.push(qe.node2))},this),this._pointsBuilder.fadeOutAll(.05),this._fadeOutEdgesAll(.05),Qe.forEach(function(qe){this._pointsBuilder.highlight(Ue,qe.dataIndex)},this),this._pointsBuilder.updateLabels(Qe.map(function(qe){return qe.dataIndex}));var $e=[];rt.edges.forEach(function(qe){qe.dataIndex>=0&&(this._highlightEdge(qe.dataIndex),$e.push(qe))},this),this._focusNodes=Qe,this._focusEdges=$e},unfocusNodeAdjacency:function(Ce,Ie,Fe,Re){this._downplayAll(),this._pointsBuilder.fadeInAll(),this._fadeInEdgesAll(),this._pointsBuilder.updateLabels()},_highlightEdge:function(Ce){var Ie=this._model.getEdgeData().getItemModel(Ce),Fe=Pe.a.parseColor(Ie.get("emphasis.lineStyle.color")||Ie.get("lineStyle.color")),Re=Ae.a.firstNotNull(Ie.get("emphasis.lineStyle.opacity"),Ie.get("lineStyle.opacity"),1);Fe[3]*=Re,this._edgesMesh.geometry.setItemColor(this._edgeIndicesMap[Ce],Fe)},_downplayAll:function(){this._focusNodes&&this._focusNodes.forEach(function(Ce){this._pointsBuilder.downplay(this._model.getData(),Ce.dataIndex)},this),this._focusEdges&&this._focusEdges.forEach(function(Ce){this._downplayEdge(Ce.dataIndex)},this)},_downplayEdge:function(Ce){var Ie=this._getColor(Ce,[]);this._edgesMesh.geometry.setItemColor(this._edgeIndicesMap[Ce],Ie)},_setEdgeFade:function(){var Ce=[];return function(Ie,Fe){this._getColor(Ie,Ce),Ce[3]*=Fe,this._edgesMesh.geometry.setItemColor(this._edgeIndicesMap[Ie],Ce)}}(),_getColor:function(Ce,Ie){for(var Fe=0;Fe<4;Fe++)Ie[Fe]=this._originalEdgeColors[Ce*4+Fe];return Ie},_fadeOutEdgesAll:function(Ce){var Ie=this._model.getData().graph;Ie.eachEdge(function(Fe){this._setEdgeFade(Fe.dataIndex,Ce)},this)},_fadeInEdgesAll:function(){this._fadeOutEdgesAll(1)},_updateCamera:function(Ce,Ie){this.viewGL.setViewport(0,0,Ie.getWidth(),Ie.getHeight(),Ie.getDevicePixelRatio());for(var Fe=this.viewGL.camera,Re=Ce.getData(),Ue=Re.getLayout("points"),Ge=ue.create(1/0,1/0),Je=ue.create(-1/0,-1/0),Qe=[],rt=0;rt<Ue.length;)Qe[0]=Ue[rt++],Qe[1]=Ue[rt++],ue.min(Ge,Ge,Qe),ue.max(Je,Je,Qe);var $e=(Je[1]+Ge[1])/2,qe=(Je[0]+Ge[0])/2;if(!(qe>Fe.left&&qe<Fe.right&&$e<Fe.bottom&&$e>Fe.top)){var ot=Math.max(Je[0]-Ge[0],10),at=ot/Ie.getWidth()*Ie.getHeight();ot*=1.4,at*=1.4,Ge[0]-=ot*.2,Fe.left=Ge[0],Fe.top=$e-at/2,Fe.bottom=$e+at/2,Fe.right=ot+Ge[0],Fe.near=0,Fe.far=100}},dispose:function(){var Ce=this.viewGL.layer.renderer;this._forceLayoutInstance&&this._forceLayoutInstance.dispose(Ce),this.groupGL.removeAll(),this._layoutId=-1},remove:function(){this.groupGL.removeAll(),this._control.dispose()}})},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(2),Ee=be(14),Pe=be(10),xe=be(248);ve.a.Shader.import(xe.a);var pe={repulsionByDegree:!0,linLogMode:!1,strongGravityMode:!1,gravity:1,scaling:1,edgeWeightInfluence:1,jitterTolerence:.1,preventOverlap:!1,dissuadeHubs:!1,gravityCenter:null};function Ae(Se){var ce={type:ve.a.Texture.FLOAT,minFilter:ve.a.Texture.NEAREST,magFilter:ve.a.Texture.NEAREST};this._positionSourceTex=new ve.a.Texture2D(ce),this._positionSourceTex.flipY=!1,this._positionTex=new ve.a.Texture2D(ce),this._positionPrevTex=new ve.a.Texture2D(ce),this._forceTex=new ve.a.Texture2D(ce),this._forcePrevTex=new ve.a.Texture2D(ce),this._weightedSumTex=new ve.a.Texture2D(ce),this._weightedSumTex.width=this._weightedSumTex.height=1,this._globalSpeedTex=new ve.a.Texture2D(ce),this._globalSpeedPrevTex=new ve.a.Texture2D(ce),this._globalSpeedTex.width=this._globalSpeedTex.height=1,this._globalSpeedPrevTex.width=this._globalSpeedPrevTex.height=1,this._nodeRepulsionPass=new Ee.a({fragment:ve.a.Shader.source("ecgl.forceAtlas2.updateNodeRepulsion")}),this._positionPass=new Ee.a({fragment:ve.a.Shader.source("ecgl.forceAtlas2.updatePosition")}),this._globalSpeedPass=new Ee.a({fragment:ve.a.Shader.source("ecgl.forceAtlas2.calcGlobalSpeed")}),this._copyPass=new Ee.a({fragment:ve.a.Shader.source("clay.compositor.output")});var te=function(ne){ne.blendEquation(ne.FUNC_ADD),ne.blendFunc(ne.ONE,ne.ONE)};this._edgeForceMesh=new ve.a.Mesh({geometry:new ve.a.Geometry({attributes:{node1:new ve.a.Geometry.Attribute("node1","float",2),node2:new ve.a.Geometry.Attribute("node2","float",2),weight:new ve.a.Geometry.Attribute("weight","float",1)},dynamic:!0,mainAttribute:"node1"}),material:new ve.a.Material({transparent:!0,shader:ve.a.createShader("ecgl.forceAtlas2.updateEdgeAttraction"),blend:te,depthMask:!1,depthText:!1}),mode:ve.a.Mesh.POINTS}),this._weightedSumMesh=new ve.a.Mesh({geometry:new ve.a.Geometry({attributes:{node:new ve.a.Geometry.Attribute("node","float",2)},dynamic:!0,mainAttribute:"node"}),material:new ve.a.Material({transparent:!0,shader:ve.a.createShader("ecgl.forceAtlas2.calcWeightedSum"),blend:te,depthMask:!1,depthText:!1}),mode:ve.a.Mesh.POINTS}),this._framebuffer=new Pe.a({depthBuffer:!1}),this._dummyCamera=new ve.a.OrthographicCamera({left:-1,right:1,top:1,bottom:-1,near:0,far:100}),this._globalSpeed=0}Ae.prototype.updateOption=function(Se){for(var ce in pe)this[ce]=pe[ce];var te=this._nodes.length;if(te>5e4?this.jitterTolerence=10:te>5e3?this.jitterTolerence=1:this.jitterTolerence=.1,te>100?this.scaling=2:this.scaling=10,Se)for(var ce in pe)Se[ce]!=null&&(this[ce]=Se[ce]);if(this.repulsionByDegree)for(var ne=this._positionSourceTex.pixels,le=0;le<this._nodes.length;le++)ne[le*4+2]=(this._nodes[le].degree||0)+1},Ae.prototype._updateGravityCenter=function(Se){var ce=this._nodes,te=this._edges;if(this.gravityCenter)this._gravityCenter=this.gravityCenter;else{for(var ne=[1/0,1/0],le=[-1/0,-1/0],se=0;se<ce.length;se++)ne[0]=Math.min(ce[se].x,ne[0]),ne[1]=Math.min(ce[se].y,ne[1]),le[0]=Math.max(ce[se].x,le[0]),le[1]=Math.max(ce[se].y,le[1]);this._gravityCenter=[(ne[0]+le[0])*.5,(ne[1]+le[1])*.5]}for(var se=0;se<te.length;se++){var fe=te[se].node1,he=te[se].node2;ce[fe].degree=(ce[fe].degree||0)+1,ce[he].degree=(ce[he].degree||0)+1}},Ae.prototype.initData=function(Se,ce){this._nodes=Se,this._edges=ce,this._updateGravityCenter();var te=Math.ceil(Math.sqrt(Se.length)),ne=te,le=new Float32Array(te*ne*4);this._resize(te,ne);for(var se=0,fe=0;fe<Se.length;fe++){var he=Se[fe];le[se++]=he.x||0,le[se++]=he.y||0,le[se++]=he.mass||1,le[se++]=he.size||1}this._positionSourceTex.pixels=le;var ie=this._edgeForceMesh.geometry,ue=ce.length;ie.attributes.node1.init(ue*2),ie.attributes.node2.init(ue*2),ie.attributes.weight.init(ue*2);for(var me=[],fe=0;fe<ce.length;fe++){var Ce=ie.attributes,Ie=ce[fe].weight;Ie==null&&(Ie=1),Ce.node1.set(fe,this.getNodeUV(ce[fe].node1,me)),Ce.node2.set(fe,this.getNodeUV(ce[fe].node2,me)),Ce.weight.set(fe,Ie),Ce.node1.set(fe+ue,this.getNodeUV(ce[fe].node2,me)),Ce.node2.set(fe+ue,this.getNodeUV(ce[fe].node1,me)),Ce.weight.set(fe+ue,Ie)}var Fe=this._weightedSumMesh.geometry;Fe.attributes.node.init(Se.length);for(var fe=0;fe<Se.length;fe++)Fe.attributes.node.set(fe,this.getNodeUV(fe,me));ie.dirty(),Fe.dirty(),this._nodeRepulsionPass.material.define("fragment","NODE_COUNT",Se.length),this._nodeRepulsionPass.material.setUniform("textureSize",[te,ne]),this._inited=!1,this._frame=0},Ae.prototype.getNodes=function(){return this._nodes},Ae.prototype.getEdges=function(){return this._edges},Ae.prototype.step=function(Se){this._inited||(this._initFromSource(Se),this._inited=!0),this._frame++,this._framebuffer.attach(this._forceTex),this._framebuffer.bind(Se);var ce=this._nodeRepulsionPass;ce.setUniform("strongGravityMode",this.strongGravityMode),ce.setUniform("gravity",this.gravity),ce.setUniform("gravityCenter",this._gravityCenter),ce.setUniform("scaling",this.scaling),ce.setUniform("preventOverlap",this.preventOverlap),ce.setUniform("positionTex",this._positionPrevTex),ce.render(Se);var te=this._edgeForceMesh;te.material.set("linLogMode",this.linLogMode),te.material.set("edgeWeightInfluence",this.edgeWeightInfluence),te.material.set("preventOverlap",this.preventOverlap),te.material.set("positionTex",this._positionPrevTex),Se.gl.enable(Se.gl.BLEND),Se.renderPass([te],this._dummyCamera),this._framebuffer.attach(this._weightedSumTex),Se.gl.clearColor(0,0,0,0),Se.gl.clear(Se.gl.COLOR_BUFFER_BIT),Se.gl.enable(Se.gl.BLEND);var ne=this._weightedSumMesh;ne.material.set("positionTex",this._positionPrevTex),ne.material.set("forceTex",this._forceTex),ne.material.set("forcePrevTex",this._forcePrevTex),Se.renderPass([ne],this._dummyCamera),this._framebuffer.attach(this._globalSpeedTex);var le=this._globalSpeedPass;le.setUniform("globalSpeedPrevTex",this._globalSpeedPrevTex),le.setUniform("weightedSumTex",this._weightedSumTex),le.setUniform("jitterTolerence",this.jitterTolerence),Se.gl.disable(Se.gl.BLEND),le.render(Se);var se=this._positionPass;this._framebuffer.attach(this._positionTex),se.setUniform("globalSpeedTex",this._globalSpeedTex),se.setUniform("positionTex",this._positionPrevTex),se.setUniform("forceTex",this._forceTex),se.setUniform("forcePrevTex",this._forcePrevTex),se.render(Se),this._framebuffer.unbind(Se),this._swapTexture()},Ae.prototype.update=function(Se,ce,te){ce==null&&(ce=1),ce=Math.max(ce,1);for(var ne=0;ne<ce;ne++)this.step(Se);te&&te()},Ae.prototype.getNodePositionTexture=function(){return this._inited?this._positionPrevTex:this._positionSourceTex},Ae.prototype.getNodeUV=function(Se,ce){ce=ce||[];var te=this._positionTex.width,ne=this._positionTex.height;return ce[0]=Se%te/(te-1),ce[1]=Math.floor(Se/te)/(ne-1)||0,ce},Ae.prototype.getNodePosition=function(Se,ce){var te=this._positionArr,ne=this._positionTex.width,le=this._positionTex.height,se=ne*le;(!te||te.length!==se*4)&&(te=this._positionArr=new Float32Array(se*4)),this._framebuffer.bind(Se),this._framebuffer.attach(this._positionPrevTex),Se.gl.readPixels(0,0,ne,le,Se.gl.RGBA,Se.gl.FLOAT,te),this._framebuffer.unbind(Se),ce||(ce=new Float32Array(this._nodes.length*2));for(var fe=0;fe<this._nodes.length;fe++)ce[fe*2]=te[fe*4],ce[fe*2+1]=te[fe*4+1];return ce},Ae.prototype.getTextureData=function(Se,ce){var te=this["_"+ce+"Tex"],ne=te.width,le=te.height;this._framebuffer.bind(Se),this._framebuffer.attach(te);var se=new Float32Array(ne*le*4);return Se.gl.readPixels(0,0,ne,le,Se.gl.RGBA,Se.gl.FLOAT,se),this._framebuffer.unbind(Se),se},Ae.prototype.getTextureSize=function(){return{width:this._positionTex.width,height:this._positionTex.height}},Ae.prototype.isFinished=function(Se){return this._frame>Se},Ae.prototype._swapTexture=function(){var Se=this._positionPrevTex;this._positionPrevTex=this._positionTex,this._positionTex=Se;var Se=this._forcePrevTex;this._forcePrevTex=this._forceTex,this._forceTex=Se;var Se=this._globalSpeedPrevTex;this._globalSpeedPrevTex=this._globalSpeedTex,this._globalSpeedTex=Se},Ae.prototype._initFromSource=function(Se){this._framebuffer.attach(this._positionPrevTex),this._framebuffer.bind(Se),this._copyPass.setUniform("texture",this._positionSourceTex),this._copyPass.render(Se),Se.gl.clearColor(0,0,0,0),this._framebuffer.attach(this._forcePrevTex),Se.gl.clear(Se.gl.COLOR_BUFFER_BIT),this._framebuffer.attach(this._globalSpeedPrevTex),Se.gl.clear(Se.gl.COLOR_BUFFER_BIT),this._framebuffer.unbind(Se)},Ae.prototype._resize=function(Se,ce){["_positionSourceTex","_positionTex","_positionPrevTex","_forceTex","_forcePrevTex"].forEach(function(te){this[te].width=Se,this[te].height=ce,this[te].dirty()},this)},Ae.prototype.dispose=function(Se){this._framebuffer.dispose(Se),this._copyPass.dispose(Se),this._nodeRepulsionPass.dispose(Se),this._positionPass.dispose(Se),this._globalSpeedPass.dispose(Se),this._edgeForceMesh.geometry.dispose(Se),this._weightedSumMesh.geometry.dispose(Se),this._positionSourceTex.dispose(Se),this._positionTex.dispose(Se),this._positionPrevTex.dispose(Se),this._forceTex.dispose(Se),this._forcePrevTex.dispose(Se),this._weightedSumTex.dispose(Se),this._globalSpeedTex.dispose(Se),this._globalSpeedPrevTex.dispose(Se)},Me.a.ForceAtlas2GPU=Ae,Ne.a=Ae},function(He,Ne,be){"use strict";Ne.a=`@export ecgl.forceAtlas2.updateNodeRepulsion
|
|
|
|
|
|
#define NODE_COUNT 0
|
|
|
|
|
|
uniform sampler2D positionTex;
|
|
|
|
|
|
uniform vec2 textureSize;
|
|
|
uniform float gravity;
|
|
|
uniform float scaling;
|
|
|
uniform vec2 gravityCenter;
|
|
|
|
|
|
uniform bool strongGravityMode;
|
|
|
uniform bool preventOverlap;
|
|
|
|
|
|
varying vec2 v_Texcoord;
|
|
|
|
|
|
void main() {
|
|
|
|
|
|
vec4 n0 = texture2D(positionTex, v_Texcoord);
|
|
|
|
|
|
vec2 force = vec2(0.0);
|
|
|
for (int i = 0; i < NODE_COUNT; i++) {
|
|
|
vec2 uv = vec2(
|
|
|
mod(float(i), textureSize.x) / (textureSize.x - 1.0),
|
|
|
floor(float(i) / textureSize.x) / (textureSize.y - 1.0)
|
|
|
);
|
|
|
vec4 n1 = texture2D(positionTex, uv);
|
|
|
|
|
|
vec2 dir = n0.xy - n1.xy;
|
|
|
float d2 = dot(dir, dir);
|
|
|
|
|
|
if (d2 > 0.0) {
|
|
|
float factor = 0.0;
|
|
|
if (preventOverlap) {
|
|
|
float d = sqrt(d2);
|
|
|
d = d - n0.w - n1.w;
|
|
|
if (d > 0.0) {
|
|
|
factor = scaling * n0.z * n1.z / (d * d);
|
|
|
}
|
|
|
else if (d < 0.0) {
|
|
|
factor = scaling * 100.0 * n0.z * n1.z;
|
|
|
}
|
|
|
}
|
|
|
else {
|
|
|
factor = scaling * n0.z * n1.z / d2;
|
|
|
}
|
|
|
force += dir * factor;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
vec2 dir = gravityCenter - n0.xy;
|
|
|
float d = 1.0;
|
|
|
if (!strongGravityMode) {
|
|
|
d = length(dir);
|
|
|
}
|
|
|
|
|
|
force += dir * n0.z * gravity / (d + 1.0);
|
|
|
|
|
|
gl_FragColor = vec4(force, 0.0, 1.0);
|
|
|
}
|
|
|
@end
|
|
|
|
|
|
@export ecgl.forceAtlas2.updateEdgeAttraction.vertex
|
|
|
|
|
|
attribute vec2 node1;
|
|
|
attribute vec2 node2;
|
|
|
attribute float weight;
|
|
|
|
|
|
uniform sampler2D positionTex;
|
|
|
uniform float edgeWeightInfluence;
|
|
|
uniform bool preventOverlap;
|
|
|
uniform bool linLogMode;
|
|
|
|
|
|
uniform vec2 windowSize: WINDOW_SIZE;
|
|
|
|
|
|
varying vec2 v_Force;
|
|
|
|
|
|
void main() {
|
|
|
|
|
|
vec4 n0 = texture2D(positionTex, node1);
|
|
|
vec4 n1 = texture2D(positionTex, node2);
|
|
|
|
|
|
vec2 dir = n1.xy - n0.xy;
|
|
|
float d = length(dir);
|
|
|
float w;
|
|
|
if (edgeWeightInfluence == 0.0) {
|
|
|
w = 1.0;
|
|
|
}
|
|
|
else if (edgeWeightInfluence == 1.0) {
|
|
|
w = weight;
|
|
|
}
|
|
|
else {
|
|
|
w = pow(weight, edgeWeightInfluence);
|
|
|
}
|
|
|
vec2 offset = vec2(1.0 / windowSize.x, 1.0 / windowSize.y);
|
|
|
vec2 scale = vec2((windowSize.x - 1.0) / windowSize.x, (windowSize.y - 1.0) / windowSize.y);
|
|
|
vec2 pos = node1 * scale * 2.0 - 1.0;
|
|
|
gl_Position = vec4(pos + offset, 0.0, 1.0);
|
|
|
gl_PointSize = 1.0;
|
|
|
|
|
|
float factor;
|
|
|
if (preventOverlap) {
|
|
|
d = d - n1.w - n0.w;
|
|
|
}
|
|
|
if (d <= 0.0) {
|
|
|
v_Force = vec2(0.0);
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
if (linLogMode) {
|
|
|
factor = w * log(d) / d;
|
|
|
}
|
|
|
else {
|
|
|
factor = w;
|
|
|
}
|
|
|
v_Force = dir * factor;
|
|
|
}
|
|
|
@end
|
|
|
|
|
|
@export ecgl.forceAtlas2.updateEdgeAttraction.fragment
|
|
|
|
|
|
varying vec2 v_Force;
|
|
|
|
|
|
void main() {
|
|
|
gl_FragColor = vec4(v_Force, 0.0, 0.0);
|
|
|
}
|
|
|
@end
|
|
|
|
|
|
@export ecgl.forceAtlas2.calcWeightedSum.vertex
|
|
|
|
|
|
attribute vec2 node;
|
|
|
|
|
|
varying vec2 v_NodeUv;
|
|
|
|
|
|
void main() {
|
|
|
|
|
|
v_NodeUv = node;
|
|
|
gl_Position = vec4(0.0, 0.0, 0.0, 1.0);
|
|
|
gl_PointSize = 1.0;
|
|
|
}
|
|
|
@end
|
|
|
|
|
|
@export ecgl.forceAtlas2.calcWeightedSum.fragment
|
|
|
|
|
|
varying vec2 v_NodeUv;
|
|
|
|
|
|
uniform sampler2D positionTex;
|
|
|
uniform sampler2D forceTex;
|
|
|
uniform sampler2D forcePrevTex;
|
|
|
|
|
|
void main() {
|
|
|
vec2 force = texture2D(forceTex, v_NodeUv).rg;
|
|
|
vec2 forcePrev = texture2D(forcePrevTex, v_NodeUv).rg;
|
|
|
|
|
|
float mass = texture2D(positionTex, v_NodeUv).z;
|
|
|
float swing = length(force - forcePrev) * mass;
|
|
|
float traction = length(force + forcePrev) * 0.5 * mass;
|
|
|
|
|
|
gl_FragColor = vec4(swing, traction, 0.0, 0.0);
|
|
|
}
|
|
|
@end
|
|
|
|
|
|
@export ecgl.forceAtlas2.calcGlobalSpeed
|
|
|
|
|
|
uniform sampler2D globalSpeedPrevTex;
|
|
|
uniform sampler2D weightedSumTex;
|
|
|
uniform float jitterTolerence;
|
|
|
|
|
|
void main() {
|
|
|
vec2 weightedSum = texture2D(weightedSumTex, vec2(0.5)).xy;
|
|
|
float prevGlobalSpeed = texture2D(globalSpeedPrevTex, vec2(0.5)).x;
|
|
|
float globalSpeed = jitterTolerence * jitterTolerence
|
|
|
* weightedSum.y / weightedSum.x;
|
|
|
if (prevGlobalSpeed > 0.0) {
|
|
|
globalSpeed = min(globalSpeed / prevGlobalSpeed, 1.5) * prevGlobalSpeed;
|
|
|
}
|
|
|
gl_FragColor = vec4(globalSpeed, 0.0, 0.0, 1.0);
|
|
|
}
|
|
|
@end
|
|
|
|
|
|
@export ecgl.forceAtlas2.updatePosition
|
|
|
|
|
|
uniform sampler2D forceTex;
|
|
|
uniform sampler2D forcePrevTex;
|
|
|
uniform sampler2D positionTex;
|
|
|
uniform sampler2D globalSpeedTex;
|
|
|
|
|
|
varying vec2 v_Texcoord;
|
|
|
|
|
|
void main() {
|
|
|
vec2 force = texture2D(forceTex, v_Texcoord).xy;
|
|
|
vec2 forcePrev = texture2D(forcePrevTex, v_Texcoord).xy;
|
|
|
vec4 node = texture2D(positionTex, v_Texcoord);
|
|
|
|
|
|
float globalSpeed = texture2D(globalSpeedTex, vec2(0.5)).r;
|
|
|
float swing = length(force - forcePrev);
|
|
|
float speed = 0.1 * globalSpeed / (0.1 + globalSpeed * sqrt(swing));
|
|
|
|
|
|
float df = length(force);
|
|
|
if (df > 0.0) {
|
|
|
speed = min(df * speed, 10.0) / df;
|
|
|
|
|
|
gl_FragColor = vec4(node.xy + speed * force, node.zw);
|
|
|
}
|
|
|
else {
|
|
|
gl_FragColor = node;
|
|
|
}
|
|
|
}
|
|
|
@end
|
|
|
|
|
|
@export ecgl.forceAtlas2.edges.vertex
|
|
|
uniform mat4 worldViewProjection : WORLDVIEWPROJECTION;
|
|
|
|
|
|
attribute vec2 node;
|
|
|
attribute vec4 a_Color : COLOR;
|
|
|
varying vec4 v_Color;
|
|
|
|
|
|
uniform sampler2D positionTex;
|
|
|
|
|
|
void main()
|
|
|
{
|
|
|
gl_Position = worldViewProjection * vec4(
|
|
|
texture2D(positionTex, node).xy, -10.0, 1.0
|
|
|
);
|
|
|
v_Color = a_Color;
|
|
|
}
|
|
|
@end
|
|
|
|
|
|
@export ecgl.forceAtlas2.edges.fragment
|
|
|
uniform vec4 color : [1.0, 1.0, 1.0, 1.0];
|
|
|
varying vec4 v_Color;
|
|
|
void main() {
|
|
|
gl_FragColor = color * v_Color;
|
|
|
}
|
|
|
@end`},function(He,Ne,be){"use strict";var _e=be(5),Me=be(6),ve=be(250),Ee=ve.a.toString();Ee=Ee.slice(Ee.indexOf("{")+1,Ee.lastIndexOf("}"));var Pe={barnesHutOptimize:!0,barnesHutTheta:1.5,repulsionByDegree:!0,linLogMode:!1,strongGravityMode:!1,gravity:1,scaling:1,edgeWeightInfluence:1,jitterTolerence:.1,preventOverlap:!1,dissuadeHubs:!1,gravityCenter:null},xe=function(pe){for(var Ae in Pe)this[Ae]=Pe[Ae];if(pe)for(var Ae in pe)this[Ae]=pe[Ae];this._nodes=[],this._edges=[],this._disposed=!1,this._positionTex=new _e.a({type:Me.a.FLOAT,flipY:!1,minFilter:Me.a.NEAREST,magFilter:Me.a.NEAREST})};xe.prototype.initData=function(pe,Ae){var Se=new Blob([Ee]),ce=window.URL.createObjectURL(Se);this._worker=new Worker(ce),this._worker.onmessage=this._$onupdate.bind(this),this._nodes=pe,this._edges=Ae,this._frame=0;for(var te=pe.length,ne=Ae.length,le=new Float32Array(te*2),se=new Float32Array(te),fe=new Float32Array(te),he=new Float32Array(ne*2),ie=new Float32Array(ne),ue=0;ue<pe.length;ue++){var me=pe[ue];le[ue*2]=me.x,le[ue*2+1]=me.y,se[ue]=me.mass==null?1:me.mass,fe[ue]=me.size==null?1:me.size}for(var ue=0;ue<Ae.length;ue++){var Ce=Ae[ue],Ie=Ce.node1,Fe=Ce.node2;he[ue*2]=Ie,he[ue*2+1]=Fe,ie[ue]=Ce.weight==null?1:Ce.weight}var Re=Math.ceil(Math.sqrt(pe.length)),Ue=Re,Ge=new Float32Array(Re*Ue*4),Je=this._positionTex;Je.width=Re,Je.height=Ue,Je.pixels=Ge,this._worker.postMessage({cmd:"init",nodesPosition:le,nodesMass:se,nodesSize:fe,edges:he,edgesWeight:ie}),this._globalSpeed=1/0},xe.prototype.updateOption=function(pe){var Ae={};for(var Se in Pe)Ae[Se]=Pe[Se];var ce=this._nodes,te=this._edges,ne=ce.length;if(ne>5e4?Ae.jitterTolerence=10:ne>5e3?Ae.jitterTolerence=1:Ae.jitterTolerence=.1,ne>100?Ae.scaling=2:Ae.scaling=10,ne>1e3?Ae.barnesHutOptimize=!0:Ae.barnesHutOptimize=!1,pe)for(var Se in Pe)pe[Se]!=null&&(Ae[Se]=pe[Se]);if(!Ae.gravityCenter){for(var le=[1/0,1/0],se=[-1/0,-1/0],fe=0;fe<ce.length;fe++)le[0]=Math.min(ce[fe].x,le[0]),le[1]=Math.min(ce[fe].y,le[1]),se[0]=Math.max(ce[fe].x,se[0]),se[1]=Math.max(ce[fe].y,se[1]);Ae.gravityCenter=[(le[0]+se[0])*.5,(le[1]+se[1])*.5]}for(var fe=0;fe<te.length;fe++){var he=te[fe].node1,ie=te[fe].node2;ce[he].degree=(ce[he].degree||0)+1,ce[ie].degree=(ce[ie].degree||0)+1}this._worker&&this._worker.postMessage({cmd:"updateConfig",config:Ae})},xe.prototype.update=function(pe,Ae,Se){Ae==null&&(Ae=1),Ae=Math.max(Ae,1),this._frame+=Ae,this._onupdate=Se,this._worker&&this._worker.postMessage({cmd:"update",steps:Math.round(Ae)})},xe.prototype._$onupdate=function(pe){if(!this._disposed){var Ae=new Float32Array(pe.data.buffer);this._globalSpeed=pe.data.globalSpeed,this._positionArr=Ae,this._updateTexture(Ae),this._onupdate&&this._onupdate()}},xe.prototype.getNodePositionTexture=function(){return this._positionTex},xe.prototype.getNodeUV=function(pe,Ae){Ae=Ae||[];var Se=this._positionTex.width,ce=this._positionTex.height;return Ae[0]=pe%Se/(Se-1),Ae[1]=Math.floor(pe/Se)/(ce-1),Ae},xe.prototype.getNodes=function(){return this._nodes},xe.prototype.getEdges=function(){return this._edges},xe.prototype.isFinished=function(pe){return this._frame>pe},xe.prototype.getNodePosition=function(pe,Ae){if(Ae||(Ae=new Float32Array(this._nodes.length*2)),this._positionArr)for(var Se=0;Se<this._positionArr.length;Se++)Ae[Se]=this._positionArr[Se];return Ae},xe.prototype._updateTexture=function(pe){for(var Ae=this._positionTex.pixels,Se=0,ce=0;ce<pe.length;)Ae[Se++]=pe[ce++],Ae[Se++]=pe[ce++],Ae[Se++]=1,Ae[Se++]=1;this._positionTex.dirty()},xe.prototype.dispose=function(pe){this._disposed=!0,this._worker=null},Ne.a=xe},function(He,Ne,be){"use strict";function _e(){var Me={create:function(){return new Float32Array(2)},dist:function(ce,te){var ne=te[0]-ce[0],le=te[1]-ce[1];return Math.sqrt(ne*ne+le*le)},len:function(ce){var te=ce[0],ne=ce[1];return Math.sqrt(te*te+ne*ne)},scaleAndAdd:function(ce,te,ne,le){return ce[0]=te[0]+ne[0]*le,ce[1]=te[1]+ne[1]*le,ce},scale:function(ce,te,ne){return ce[0]=te[0]*ne,ce[1]=te[1]*ne,ce},add:function(ce,te,ne){return ce[0]=te[0]+ne[0],ce[1]=te[1]+ne[1],ce},sub:function(ce,te,ne){return ce[0]=te[0]-ne[0],ce[1]=te[1]-ne[1],ce},normalize:function(ce,te){var ne=te[0],le=te[1],se=ne*ne+le*le;return se>0&&(se=1/Math.sqrt(se),ce[0]=te[0]*se,ce[1]=te[1]*se),ce},negate:function(ce,te){return ce[0]=-te[0],ce[1]=-te[1],ce},copy:function(ce,te){return ce[0]=te[0],ce[1]=te[1],ce},set:function(ce,te,ne){return ce[0]=te,ce[1]=ne,ce}};function ve(){this.subRegions=[],this.nSubRegions=0,this.node=null,this.mass=0,this.centerOfMass=null,this.bbox=new Float32Array(4),this.size=0}var Ee=ve.prototype;Ee.beforeUpdate=function(){for(var ce=0;ce<this.nSubRegions;ce++)this.subRegions[ce].beforeUpdate();this.mass=0,this.centerOfMass&&(this.centerOfMass[0]=0,this.centerOfMass[1]=0),this.nSubRegions=0,this.node=null},Ee.afterUpdate=function(){this.subRegions.length=this.nSubRegions;for(var ce=0;ce<this.nSubRegions;ce++)this.subRegions[ce].afterUpdate()},Ee.addNode=function(ce){if(this.nSubRegions===0)if(this.node==null){this.node=ce;return}else this._addNodeToSubRegion(this.node),this.node=null;this._addNodeToSubRegion(ce),this._updateCenterOfMass(ce)},Ee.findSubRegion=function(ce,te){for(var ne=0;ne<this.nSubRegions;ne++){var le=this.subRegions[ne];if(le.contain(ce,te))return le}},Ee.contain=function(ce,te){return this.bbox[0]<=ce&&this.bbox[2]>=ce&&this.bbox[1]<=te&&this.bbox[3]>=te},Ee.setBBox=function(ce,te,ne,le){this.bbox[0]=ce,this.bbox[1]=te,this.bbox[2]=ne,this.bbox[3]=le,this.size=(ne-ce+le-te)/2},Ee._newSubRegion=function(){var ce=this.subRegions[this.nSubRegions];return ce||(ce=new ve,this.subRegions[this.nSubRegions]=ce),this.nSubRegions++,ce},Ee._addNodeToSubRegion=function(ce){var te=this.findSubRegion(ce.position[0],ce.position[1]),ne=this.bbox;if(!te){var le=(ne[0]+ne[2])/2,se=(ne[1]+ne[3])/2,fe=(ne[2]-ne[0])/2,he=(ne[3]-ne[1])/2,ie=ce.position[0]>=le?1:0,ue=ce.position[1]>=se?1:0,te=this._newSubRegion();te.setBBox(ie*fe+ne[0],ue*he+ne[1],(ie+1)*fe+ne[0],(ue+1)*he+ne[1])}te.addNode(ce)},Ee._updateCenterOfMass=function(ce){this.centerOfMass==null&&(this.centerOfMass=new Float32Array(2));var te=this.centerOfMass[0]*this.mass,ne=this.centerOfMass[1]*this.mass;te+=ce.position[0]*ce.mass,ne+=ce.position[1]*ce.mass,this.mass+=ce.mass,this.centerOfMass[0]=te/this.mass,this.centerOfMass[1]=ne/this.mass};function Pe(){this.position=new Float32Array(2),this.force=Me.create(),this.forcePrev=Me.create(),this.mass=1,this.inDegree=0,this.outDegree=0}function xe(ce,te){this.source=ce,this.target=te,this.weight=1}function pe(){this.autoSettings=!0,this.barnesHutOptimize=!0,this.barnesHutTheta=1.5,this.repulsionByDegree=!0,this.linLogMode=!1,this.strongGravityMode=!1,this.gravity=1,this.scaling=1,this.edgeWeightInfluence=1,this.jitterTolerence=.1,this.preventOverlap=!1,this.dissuadeHubs=!1,this.rootRegion=new ve,this.rootRegion.centerOfMass=Me.create(),this.nodes=[],this.edges=[],this.bbox=new Float32Array(4),this.gravityCenter=null,this._massArr=null,this._swingingArr=null,this._sizeArr=null,this._globalSpeed=0}var Ae=pe.prototype;Ae.initNodes=function(ce,te,ne){var le=te.length;this.nodes.length=0;for(var se=typeof ne!="undefined",fe=0;fe<le;fe++){var he=new Pe;he.position[0]=ce[fe*2],he.position[1]=ce[fe*2+1],he.mass=te[fe],se&&(he.size=ne[fe]),this.nodes.push(he)}this._massArr=te,this._swingingArr=new Float32Array(le),se&&(this._sizeArr=ne)},Ae.initEdges=function(ce,te){var ne=ce.length/2;this.edges.length=0;for(var le=0;le<ne;le++){var se=ce[le*2],fe=ce[le*2+1],he=this.nodes[se],ie=this.nodes[fe];if(!he||!ie){console.error("Node not exists, try initNodes before initEdges");return}he.outDegree++,ie.inDegree++;var ue=new xe(he,ie);te&&(ue.weight=te[le]),this.edges.push(ue)}},Ae.updateSettings=function(){if(this.repulsionByDegree)for(var ce=0;ce<this.nodes.length;ce++){var te=this.nodes[ce];te.mass=te.inDegree+te.outDegree+1}else for(var ce=0;ce<this.nodes.length;ce++){var te=this.nodes[ce];te.mass=this._massArr[ce]}},Ae.update=function(){var ce=this.nodes.length;if(this.updateSettings(),this.updateBBox(),this.barnesHutOptimize){this.rootRegion.setBBox(this.bbox[0],this.bbox[1],this.bbox[2],this.bbox[3]),this.rootRegion.beforeUpdate();for(var te=0;te<ce;te++)this.rootRegion.addNode(this.nodes[te]);this.rootRegion.afterUpdate()}for(var te=0;te<ce;te++){var ne=this.nodes[te];Me.copy(ne.forcePrev,ne.force),Me.set(ne.force,0,0)}for(var te=0;te<ce;te++){var le=this.nodes[te];if(this.barnesHutOptimize)this.applyRegionToNodeRepulsion(this.rootRegion,le);else for(var se=te+1;se<ce;se++){var fe=this.nodes[se];this.applyNodeToNodeRepulsion(le,fe,!1)}this.gravity>0&&(this.strongGravityMode?this.applyNodeStrongGravity(le):this.applyNodeGravity(le))}for(var te=0;te<this.edges.length;te++)this.applyEdgeAttraction(this.edges[te]);for(var he=0,ie=0,ue=Me.create(),te=0;te<ce;te++){var ne=this.nodes[te],me=Me.dist(ne.force,ne.forcePrev);he+=me*ne.mass,Me.add(ue,ne.force,ne.forcePrev);var Ce=Me.len(ue)*.5;ie+=Ce*ne.mass,this._swingingArr[te]=me}var Ie=this.jitterTolerence*this.jitterTolerence*ie/he;this._globalSpeed>0&&(Ie=Math.min(Ie/this._globalSpeed,1.5)*this._globalSpeed),this._globalSpeed=Ie;for(var te=0;te<ce;te++){var ne=this.nodes[te],me=this._swingingArr[te],Fe=.1*Ie/(1+Ie*Math.sqrt(me)),Re=Me.len(ne.force);Re>0&&(Fe=Math.min(Re*Fe,10)/Re,Me.scaleAndAdd(ne.position,ne.position,ne.force,Fe))}},Ae.applyRegionToNodeRepulsion=function(){var ce=Me.create();return function(ne,le){if(ne.node)this.applyNodeToNodeRepulsion(ne.node,le,!0);else{Me.sub(ce,le.position,ne.centerOfMass);var se=ce[0]*ce[0]+ce[1]*ce[1];if(se>this.barnesHutTheta*ne.size*ne.size){var fe=this.scaling*le.mass*ne.mass/se;Me.scaleAndAdd(le.force,le.force,ce,fe)}else for(var he=0;he<ne.nSubRegions;he++)this.applyRegionToNodeRepulsion(ne.subRegions[he],le)}}}(),Ae.applyNodeToNodeRepulsion=function(){var ce=Me.create();return function(ne,le,se){if(ne!=le){Me.sub(ce,ne.position,le.position);var fe=ce[0]*ce[0]+ce[1]*ce[1];if(fe!==0){var he;if(this.preventOverlap){var ie=Math.sqrt(fe);if(ie=ie-ne.size-le.size,ie>0)he=this.scaling*ne.mass*le.mass/(ie*ie);else if(ie<0)he=this.scaling*100*ne.mass*le.mass;else return}else he=this.scaling*ne.mass*le.mass/fe;Me.scaleAndAdd(ne.force,ne.force,ce,he),Me.scaleAndAdd(le.force,le.force,ce,-he)}}}}(),Ae.applyEdgeAttraction=function(){var ce=Me.create();return function(ne){var le=ne.source,se=ne.target;Me.sub(ce,le.position,se.position);var fe=Me.len(ce),he;this.edgeWeightInfluence===0?he=1:this.edgeWeightInfluence===1?he=ne.weight:he=Math.pow(ne.weight,this.edgeWeightInfluence);var ie;this.preventOverlap&&(fe=fe-le.size-se.size,fe<=0)||(this.linLogMode?ie=-he*Math.log(fe+1)/(fe+1):ie=-he,Me.scaleAndAdd(le.force,le.force,ce,ie),Me.scaleAndAdd(se.force,se.force,ce,-ie))}}(),Ae.applyNodeGravity=function(){var ce=Me.create();return function(te){Me.sub(ce,this.gravityCenter,te.position);var ne=Me.len(ce);Me.scaleAndAdd(te.force,te.force,ce,this.gravity*te.mass/(ne+1))}}(),Ae.applyNodeStrongGravity=function(){var ce=Me.create();return function(te){Me.sub(ce,this.gravityCenter,te.position),Me.scaleAndAdd(te.force,te.force,ce,this.gravity*te.mass)}}(),Ae.updateBBox=function(){for(var ce=1/0,te=1/0,ne=-1/0,le=-1/0,se=0;se<this.nodes.length;se++){var fe=this.nodes[se].position;ce=Math.min(ce,fe[0]),te=Math.min(te,fe[1]),ne=Math.max(ne,fe[0]),le=Math.max(le,fe[1])}this.bbox[0]=ce,this.bbox[1]=te,this.bbox[2]=ne,this.bbox[3]=le},Ae.getGlobalSpeed=function(){return this._globalSpeed};var Se=null;self.onmessage=function(ce){switch(ce.data.cmd){case"init":Se=new pe,Se.initNodes(ce.data.nodesPosition,ce.data.nodesMass,ce.data.nodesSize),Se.initEdges(ce.data.edges,ce.data.edgesWeight);break;case"updateConfig":if(Se)for(var te in ce.data.config)Se[te]=ce.data.config[te];break;case"update":var ne=ce.data.steps;if(Se){for(var le=0;le<ne;le++)Se.update();for(var se=Se.nodes.length,fe=new Float32Array(se*2),le=0;le<se;le++){var he=Se.nodes[le];fe[le*2]=he.position[0],fe[le*2+1]=he.position[1]}self.postMessage({buffer:fe.buffer,globalSpeed:Se.getGlobalSpeed()},[fe.buffer])}else{var ie=new Float32Array;self.postMessage({buffer:ie.buffer,globalSpeed:Se.getGlobalSpeed()},[ie.buffer])}break}}}Ne.a=_e},function(He,Ne,be){"use strict";var _e=be(8),Me=be(3),ve=_e.a.extend(function(){return{zr:null,viewGL:null,minZoom:.2,maxZoom:5,_needsUpdate:!1,_dx:0,_dy:0,_zoom:1}},function(){this._mouseDownHandler=this._mouseDownHandler.bind(this),this._mouseWheelHandler=this._mouseWheelHandler.bind(this),this._mouseMoveHandler=this._mouseMoveHandler.bind(this),this._mouseUpHandler=this._mouseUpHandler.bind(this),this._update=this._update.bind(this)},{init:function(){var Ee=this.zr;Ee.on("mousedown",this._mouseDownHandler),Ee.on("mousewheel",this._mouseWheelHandler),Ee.on("globalout",this._mouseUpHandler),Ee.animation.on("frame",this._update)},setTarget:function(Ee){this._target=Ee},setZoom:function(Ee){this._zoom=Math.max(Math.min(Ee,this.maxZoom),this.minZoom),this._needsUpdate=!0},setOffset:function(Ee){this._dx=Ee[0],this._dy=Ee[1],this._needsUpdate=!0},getZoom:function(){return this._zoom},getOffset:function(){return[this._dx,this._dy]},_update:function(){if(this._target&&this._needsUpdate){var Ee=this._target,Pe=this._zoom;Ee.position.x=this._dx,Ee.position.y=this._dy,Ee.scale.set(Pe,Pe,Pe),this.zr.refresh(),this._needsUpdate=!1,this.trigger("update")}},_mouseDownHandler:function(Ee){if(!Ee.target){var Pe=Ee.offsetX,xe=Ee.offsetY;if(!(this.viewGL&&!this.viewGL.containPoint(Pe,xe))){this.zr.on("mousemove",this._mouseMoveHandler),this.zr.on("mouseup",this._mouseUpHandler);var pe=this._convertPos(Pe,xe);this._x=pe.x,this._y=pe.y}}},_convertPos:function(Ee,Pe){var xe=this.viewGL.camera,pe=this.viewGL.viewport;return{x:(Ee-pe.x)/pe.width*(xe.right-xe.left)+xe.left,y:(Pe-pe.y)/pe.height*(xe.bottom-xe.top)+xe.top}},_mouseMoveHandler:function(Ee){var Pe=this._convertPos(Ee.offsetX,Ee.offsetY);this._dx+=Pe.x-this._x,this._dy+=Pe.y-this._y,this._x=Pe.x,this._y=Pe.y,this._needsUpdate=!0},_mouseUpHandler:function(Ee){this.zr.off("mousemove",this._mouseMoveHandler),this.zr.off("mouseup",this._mouseUpHandler)},_mouseWheelHandler:function(Ee){Ee=Ee.event;var Pe=Ee.wheelDelta||-Ee.detail;if(Pe!==0){var xe=Ee.offsetX,pe=Ee.offsetY;if(!(this.viewGL&&!this.viewGL.containPoint(xe,pe))){var Ae=Pe>0?1.1:.9,Se=Math.max(Math.min(this._zoom*Ae,this.maxZoom),this.minZoom);Ae=Se/this._zoom;var ce=this._convertPos(xe,pe),te=(ce.x-this._dx)*(Ae-1),ne=(ce.y-this._dy)*(Ae-1);this._dx-=te,this._dy-=ne,this._zoom=Se,this._needsUpdate=!0}}},dispose:function(){var Ee=this.zr;Ee.off("mousedown",this._mouseDownHandler),Ee.off("mousemove",this._mouseMoveHandler),Ee.off("mouseup",this._mouseUpHandler),Ee.off("mousewheel",this._mouseWheelHandler),Ee.off("globalout",this._mouseUpHandler),Ee.animation.off("frame",this._update)}});Ne.a=ve},function(He,Ne,be){"use strict";Ne.a=`@export ecgl.lines2D.vertex
|
|
|
|
|
|
uniform mat4 worldViewProjection : WORLDVIEWPROJECTION;
|
|
|
|
|
|
attribute vec2 position: POSITION;
|
|
|
attribute vec4 a_Color : COLOR;
|
|
|
varying vec4 v_Color;
|
|
|
|
|
|
#ifdef POSITIONTEXTURE_ENABLED
|
|
|
uniform sampler2D positionTexture;
|
|
|
#endif
|
|
|
|
|
|
void main()
|
|
|
{
|
|
|
gl_Position = worldViewProjection * vec4(position, -10.0, 1.0);
|
|
|
|
|
|
v_Color = a_Color;
|
|
|
}
|
|
|
|
|
|
@end
|
|
|
|
|
|
@export ecgl.lines2D.fragment
|
|
|
|
|
|
uniform vec4 color : [1.0, 1.0, 1.0, 1.0];
|
|
|
|
|
|
varying vec4 v_Color;
|
|
|
|
|
|
void main()
|
|
|
{
|
|
|
gl_FragColor = color * v_Color;
|
|
|
}
|
|
|
@end
|
|
|
|
|
|
|
|
|
@export ecgl.meshLines2D.vertex
|
|
|
|
|
|
attribute vec2 position: POSITION;
|
|
|
attribute vec2 normal;
|
|
|
attribute float offset;
|
|
|
attribute vec4 a_Color : COLOR;
|
|
|
|
|
|
uniform mat4 worldViewProjection : WORLDVIEWPROJECTION;
|
|
|
uniform vec4 viewport : VIEWPORT;
|
|
|
|
|
|
varying vec4 v_Color;
|
|
|
varying float v_Miter;
|
|
|
|
|
|
void main()
|
|
|
{
|
|
|
vec4 p2 = worldViewProjection * vec4(position + normal, -10.0, 1.0);
|
|
|
gl_Position = worldViewProjection * vec4(position, -10.0, 1.0);
|
|
|
|
|
|
p2.xy /= p2.w;
|
|
|
gl_Position.xy /= gl_Position.w;
|
|
|
|
|
|
vec2 N = normalize(p2.xy - gl_Position.xy);
|
|
|
gl_Position.xy += N * offset / viewport.zw * 2.0;
|
|
|
|
|
|
gl_Position.xy *= gl_Position.w;
|
|
|
|
|
|
v_Color = a_Color;
|
|
|
}
|
|
|
@end
|
|
|
|
|
|
|
|
|
@export ecgl.meshLines2D.fragment
|
|
|
|
|
|
uniform vec4 color : [1.0, 1.0, 1.0, 1.0];
|
|
|
|
|
|
varying vec4 v_Color;
|
|
|
varying float v_Miter;
|
|
|
|
|
|
void main()
|
|
|
{
|
|
|
gl_FragColor = color * v_Color;
|
|
|
}
|
|
|
|
|
|
@end`},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(254),Ee=be(258)},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(2),Ee=be(3),Pe=be(20),xe=be(255);Me.a.extendChartView({type:"flowGL",__ecgl__:!0,init:function(pe,Ae){this.viewGL=new Pe.a("orthographic"),this.groupGL=new ve.a.Node,this.viewGL.add(this.groupGL),this._particleSurface=new xe.a;var Se=new ve.a.Mesh({geometry:new ve.a.PlaneGeometry,material:new ve.a.Material({shader:new ve.a.Shader({vertex:ve.a.Shader.source("ecgl.color.vertex"),fragment:ve.a.Shader.source("ecgl.color.fragment")}),transparent:!0})});Se.material.enableTexture("diffuseMap"),this.groupGL.add(Se),this._planeMesh=Se},render:function(pe,Ae,Se){var ce=this._particleSurface;ce.setParticleType(pe.get("particleType")),ce.setSupersampling(pe.get("supersampling")),this._updateData(pe,Se),this._updateCamera(Se.getWidth(),Se.getHeight(),Se.getDevicePixelRatio());var te=Ee.a.firstNotNull(pe.get("particleDensity"),128);ce.setParticleDensity(te,te);var ne=this._planeMesh,le=+new Date,se=this,fe=!0;ne.__percent=0,ne.stopAnimation(),ne.animate("",{loop:!0}).when(1e5,{__percent:1}).during(function(){var ue=+new Date,me=Math.min(ue-le,20);le=le+me,se._renderer&&(ce.update(se._renderer,Se,me/1e3,fe),ne.material.set("diffuseMap",ce.getSurfaceTexture())),fe=!1}).start();var he=pe.getModel("itemStyle"),ie=ve.a.parseColor(he.get("color"));ie[3]*=Ee.a.firstNotNull(he.get("opacity"),1),ne.material.set("color",ie),ce.setColorTextureImage(pe.get("colorTexture"),Se),ce.setParticleSize(pe.get("particleSize")),ce.particleSpeedScaling=pe.get("particleSpeed"),ce.motionBlurFactor=1-Math.pow(.1,pe.get("particleTrail"))},updateTransform:function(pe,Ae,Se){this._updateData(pe,Se)},afterRender:function(pe,Ae,Se,ce){var te=ce.renderer;this._renderer=te},_updateData:function(pe,Ae){var Se=pe.coordinateSystem,ce=Se.dimensions.map(function(Ge){return pe.coordDimToDataDim(Ge)[0]}),te=pe.getData(),ne=te.getDataExtent(ce[0]),le=te.getDataExtent(ce[1]),se=pe.get("gridWidth"),fe=pe.get("gridHeight");if(se==null||se==="auto"){var he=(ne[1]-ne[0])/(le[1]-le[0]);se=Math.round(Math.sqrt(he*te.count()))}(fe==null||fe==="auto")&&(fe=Math.ceil(te.count()/se));var ie=this._particleSurface.vectorFieldTexture,ue=ie.pixels;if(!ue||ue.length!==fe*se*4)ue=ie.pixels=new Float32Array(se*fe*4);else for(var me=0;me<ue.length;me++)ue[me]=0;var Ce=0,Ie=1/0,Fe=new Float32Array(te.count()*2),Re=0,Ue=[[1/0,1/0],[-1/0,-1/0]];te.each([ce[0],ce[1],"vx","vy"],function(Ge,Je,Qe,rt){var $e=Se.dataToPoint([Ge,Je]);Fe[Re++]=$e[0],Fe[Re++]=$e[1],Ue[0][0]=Math.min($e[0],Ue[0][0]),Ue[0][1]=Math.min($e[1],Ue[0][1]),Ue[1][0]=Math.max($e[0],Ue[1][0]),Ue[1][1]=Math.max($e[1],Ue[1][1]);var qe=Math.sqrt(Qe*Qe+rt*rt);Ce=Math.max(Ce,qe),Ie=Math.min(Ie,qe)}),te.each(["vx","vy"],function(Ge,Je,Qe){var rt=Math.round((Fe[Qe*2]-Ue[0][0])/(Ue[1][0]-Ue[0][0])*(se-1)),$e=fe-1-Math.round((Fe[Qe*2+1]-Ue[0][1])/(Ue[1][1]-Ue[0][1])*(fe-1)),qe=($e*se+rt)*4;ue[qe]=Ge/Ce*.5+.5,ue[qe+1]=Je/Ce*.5+.5,ue[qe+3]=1}),ie.width=se,ie.height=fe,pe.get("coordinateSystem")==="bmap"&&this._fillEmptyPixels(ie),ie.dirty(),this._updatePlanePosition(Ue[0],Ue[1],pe,Ae),this._updateGradientTexture(te.getVisual("visualMeta"),[Ie,Ce])},_fillEmptyPixels:function(pe){var Ae=pe.pixels,Se=pe.width,ce=pe.height;function te(Fe,Re,Ue){Fe=Math.max(Math.min(Fe,Se-1),0),Re=Math.max(Math.min(Re,ce-1),0);var Ge=(Re*(Se-1)+Fe)*4;return Ae[Ge+3]===0?!1:(Ue[0]=Ae[Ge],Ue[1]=Ae[Ge+1],!0)}function ne(Fe,Re,Ue){Ue[0]=Fe[0]+Re[0],Ue[1]=Fe[1]+Re[1]}for(var le=[],se=[],fe=[],he=[],ie=[],ue=0,me=0;me<ce;me++)for(var Ce=0;Ce<Se;Ce++){var Ie=(me*(Se-1)+Ce)*4;Ae[Ie+3]===0&&(ue=le[0]=le[1]=0,te(Ce-1,me,se)&&(ue++,ne(se,le,le)),te(Ce+1,me,fe)&&(ue++,ne(fe,le,le)),te(Ce,me-1,he)&&(ue++,ne(he,le,le)),te(Ce,me+1,ie)&&(ue++,ne(ie,le,le)),le[0]/=ue,le[1]/=ue,Ae[Ie]=le[0],Ae[Ie+1]=le[1]),Ae[Ie+3]=1}},_updateGradientTexture:function(pe,Ae){if(!pe||!pe.length){this._particleSurface.setGradientTexture(null);return}this._gradientTexture=this._gradientTexture||new ve.a.Texture2D({image:document.createElement("canvas")});var Se=this._gradientTexture,ce=Se.image;ce.width=200,ce.height=1;var te=ce.getContext("2d"),ne=te.createLinearGradient(0,.5,ce.width,.5);pe[0].stops.forEach(function(le){var se;Ae[1]===Ae[0]?se=0:(se=le.value/Ae[1],se=Math.min(Math.max(se,0),1)),ne.addColorStop(se,le.color)}),te.fillStyle=ne,te.fillRect(0,0,ce.width,ce.height),Se.dirty(),this._particleSurface.setGradientTexture(this._gradientTexture)},_updatePlanePosition:function(pe,Ae,Se,ce){var te=this._limitInViewportAndFullFill(pe,Ae,Se,ce);pe=te.leftTop,Ae=te.rightBottom,this._particleSurface.setRegion(te.region),this._planeMesh.position.set((pe[0]+Ae[0])/2,ce.getHeight()-(pe[1]+Ae[1])/2,0);var ne=Ae[0]-pe[0],le=Ae[1]-pe[1];this._planeMesh.scale.set(ne/2,le/2,1),this._particleSurface.resize(Math.max(Math.min(ne,2048),1),Math.max(Math.min(le,2048),1)),this._renderer&&this._particleSurface.clearFrame(this._renderer)},_limitInViewportAndFullFill:function(pe,Ae,Se,ce){var te=[Math.max(pe[0],0),Math.max(pe[1],0)],ne=[Math.min(Ae[0],ce.getWidth()),Math.min(Ae[1],ce.getHeight())];if(Se.get("coordinateSystem")==="bmap"){var le=Se.getData().getDataExtent(Se.coordDimToDataDim("lng")[0]),se=Math.floor(le[1]-le[0])>=359;se&&(te[0]>0&&(te[0]=0),ne[0]<ce.getWidth()&&(ne[0]=ce.getWidth()))}var fe=Ae[0]-pe[0],he=Ae[1]-pe[1],ie=ne[0]-te[0],ue=ne[1]-te[1],me=[(te[0]-pe[0])/fe,1-ue/he-(te[1]-pe[1])/he,ie/fe,ue/he];return{leftTop:te,rightBottom:ne,region:me}},_updateCamera:function(pe,Ae,Se){this.viewGL.setViewport(0,0,pe,Ae,Se);var ce=this.viewGL.camera;ce.left=ce.bottom=0,ce.top=Ae,ce.right=pe,ce.near=0,ce.far=100,ce.position.z=10},remove:function(){this._planeMesh.stopAnimation(),this.groupGL.removeAll()},dispose:function(){this._renderer&&this._particleSurface.dispose(this._renderer),this.groupGL.removeAll()}})},function(He,Ne,be){"use strict";var _e=be(14),Me=be(13),ve=be(24),Ee=be(17),Pe=be(7),xe=be(5),pe=be(6),Ae=be(30),Se=be(37),ce=be(10),te=be(256),ne=be(257);Pe.a.import(ne.a);function le(fe){var he=document.createElement("canvas");he.width=he.height=fe;var ie=he.getContext("2d");return ie.fillStyle="#fff",ie.arc(fe/2,fe/2,fe/2,0,Math.PI*2),ie.fill(),he}var se=function(){this.motionBlurFactor=.99,this.vectorFieldTexture=new xe.a({type:pe.a.FLOAT,flipY:!1}),this.particleLife=[5,20],this._particleType="point",this._particleSize=1,this.particleColor=[1,1,1,1],this.particleSpeedScaling=1,this._thisFrameTexture=null,this._particlePass=null,this._spawnTexture=null,this._particleTexture0=null,this._particleTexture1=null,this._particlePointsMesh=null,this._surfaceFrameBuffer=null,this._elapsedTime=0,this._scene=null,this._camera=null,this._lastFrameTexture=null,this._supersampling=1,this._downsampleTextures=[],this._width=512,this._height=512,this.init()};se.prototype={constructor:se,init:function(){var fe={type:pe.a.FLOAT,minFilter:pe.a.NEAREST,magFilter:pe.a.NEAREST,useMipmap:!1};this._spawnTexture=new xe.a(fe),this._particleTexture0=new xe.a(fe),this._particleTexture1=new xe.a(fe),this._frameBuffer=new ce.a({depthBuffer:!1}),this._particlePass=new _e.a({fragment:Pe.a.source("ecgl.vfParticle.particle.fragment")}),this._particlePass.setUniform("velocityTexture",this.vectorFieldTexture),this._particlePass.setUniform("spawnTexture",this._spawnTexture),this._downsamplePass=new _e.a({fragment:Pe.a.source("clay.compositor.downsample")});var he=new ve.a({renderOrder:10,material:new Ee.a({shader:new Pe.a(Pe.a.source("ecgl.vfParticle.renderPoints.vertex"),Pe.a.source("ecgl.vfParticle.renderPoints.fragment"))}),mode:ve.a.POINTS,geometry:new Me.a({dynamic:!0,mainAttribute:"texcoord0"})}),ie=new ve.a({renderOrder:10,material:new Ee.a({shader:new Pe.a(Pe.a.source("ecgl.vfParticle.renderLines.vertex"),Pe.a.source("ecgl.vfParticle.renderLines.fragment"))}),geometry:new te.a,culling:!1}),ue=new ve.a({material:new Ee.a({shader:new Pe.a(Pe.a.source("ecgl.color.vertex"),Pe.a.source("ecgl.color.fragment"))}),geometry:new Se.a});ue.material.enableTexture("diffuseMap"),this._particlePointsMesh=he,this._particleLinesMesh=ie,this._lastFrameFullQuadMesh=ue,this._camera=new Ae.a,this._thisFrameTexture=new xe.a,this._lastFrameTexture=new xe.a},setParticleDensity:function(fe,he){for(var ie=fe*he,ue=new Float32Array(ie*4),me=0,Ce=this.particleLife,Ie=0;Ie<fe;Ie++)for(var Fe=0;Fe<he;Fe++,me++){ue[me*4]=Math.random(),ue[me*4+1]=Math.random(),ue[me*4+2]=Math.random();var Re=(Ce[1]-Ce[0])*Math.random()+Ce[0];ue[me*4+3]=Re}this._particleType==="line"?this._setLineGeometry(fe,he):this._setPointsGeometry(fe,he),this._spawnTexture.width=fe,this._spawnTexture.height=he,this._spawnTexture.pixels=ue,this._particleTexture0.width=this._particleTexture1.width=fe,this._particleTexture0.height=this._particleTexture1.height=he,this._particlePass.setUniform("textureSize",[fe,he])},_setPointsGeometry:function(fe,he){var ie=fe*he,ue=this._particlePointsMesh.geometry,me=ue.attributes;me.texcoord0.init(ie);for(var Ce=0,Ie=0;Ie<fe;Ie++)for(var Fe=0;Fe<he;Fe++,Ce++)me.texcoord0.value[Ce*2]=Ie/fe,me.texcoord0.value[Ce*2+1]=Fe/he;ue.dirty()},_setLineGeometry:function(fe,he){var ie=fe*he,ue=this._getParticleMesh().geometry;ue.setLineCount(ie),ue.resetOffset();for(var me=0;me<fe;me++)for(var Ce=0;Ce<he;Ce++)ue.addLine([me/fe,Ce/he]);ue.dirty()},_getParticleMesh:function(){return this._particleType==="line"?this._particleLinesMesh:this._particlePointsMesh},update:function(fe,he,ie,ue){var me=this._getParticleMesh(),Ce=this._frameBuffer,Ie=this._particlePass;ue&&this._updateDownsampleTextures(fe,he),me.material.set("size",this._particleSize*this._supersampling),me.material.set("color",this.particleColor),Ie.setUniform("speedScaling",this.particleSpeedScaling),Ce.attach(this._particleTexture1),Ie.setUniform("firstFrameTime",ue?(this.particleLife[1]+this.particleLife[0])/2:0),Ie.setUniform("particleTexture",this._particleTexture0),Ie.setUniform("deltaTime",ie),Ie.setUniform("elapsedTime",this._elapsedTime),Ie.render(fe,Ce),me.material.set("particleTexture",this._particleTexture1),me.material.set("prevParticleTexture",this._particleTexture0),Ce.attach(this._thisFrameTexture),Ce.bind(fe),fe.gl.clear(fe.gl.DEPTH_BUFFER_BIT|fe.gl.COLOR_BUFFER_BIT);var Fe=this._lastFrameFullQuadMesh;Fe.material.set("diffuseMap",this._lastFrameTexture),Fe.material.set("color",[1,1,1,this.motionBlurFactor]),this._camera.update(!0),fe.renderPass([Fe,me],this._camera),Ce.unbind(fe),this._downsample(fe),this._swapTexture(),this._elapsedTime+=ie},_downsample:function(fe){var he=this._downsampleTextures;if(he.length!==0)for(var ie=0,ue=this._thisFrameTexture,me=he[ie];me;)this._frameBuffer.attach(me),this._downsamplePass.setUniform("texture",ue),this._downsamplePass.setUniform("textureSize",[ue.width,ue.height]),this._downsamplePass.render(fe,this._frameBuffer),ue=me,me=he[++ie]},getSurfaceTexture:function(){var fe=this._downsampleTextures;return fe.length>0?fe[fe.length-1]:this._lastFrameTexture},setRegion:function(fe){this._particlePass.setUniform("region",fe)},resize:function(fe,he){this._lastFrameTexture.width=fe*this._supersampling,this._lastFrameTexture.height=he*this._supersampling,this._thisFrameTexture.width=fe*this._supersampling,this._thisFrameTexture.height=he*this._supersampling,this._width=fe,this._height=he},setParticleSize:function(fe){var he=this._getParticleMesh();if(fe<=2){he.material.disableTexture("spriteTexture"),he.material.transparent=!1;return}this._spriteTexture||(this._spriteTexture=new xe.a),(!this._spriteTexture.image||this._spriteTexture.image.width!==fe)&&(this._spriteTexture.image=le(fe),this._spriteTexture.dirty()),he.material.transparent=!0,he.material.enableTexture("spriteTexture"),he.material.set("spriteTexture",this._spriteTexture),this._particleSize=fe},setGradientTexture:function(fe){var he=this._getParticleMesh().material;he[fe?"enableTexture":"disableTexture"]("gradientTexture"),he.setUniform("gradientTexture",fe)},setColorTextureImage:function(fe,he){var ie=this._getParticleMesh().material;ie.setTextureImage("colorTexture",fe,he,{flipY:!0})},setParticleType:function(fe){this._particleType=fe},clearFrame:function(fe){var he=this._frameBuffer;he.attach(this._lastFrameTexture),he.bind(fe),fe.gl.clear(fe.gl.DEPTH_BUFFER_BIT|fe.gl.COLOR_BUFFER_BIT),he.unbind(fe)},setSupersampling:function(fe){this._supersampling=fe,this.resize(this._width,this._height)},_updateDownsampleTextures:function(fe,he){for(var ie=this._downsampleTextures,ue=Math.max(Math.floor(Math.log(this._supersampling/he.getDevicePixelRatio())/Math.log(2)),0),me=2,Ce=this._width*this._supersampling,Ie=this._height*this._supersampling,Fe=0;Fe<ue;Fe++)ie[Fe]=ie[Fe]||new xe.a,ie[Fe].width=Ce/me,ie[Fe].height=Ie/me,me*=2;for(;Fe<ie.length;Fe++)ie[Fe].dispose(fe);ie.length=ue},_swapTexture:function(){var fe=this._particleTexture0;this._particleTexture0=this._particleTexture1,this._particleTexture1=fe;var fe=this._thisFrameTexture;this._thisFrameTexture=this._lastFrameTexture,this._lastFrameTexture=fe},dispose:function(fe){fe.disposeFrameBuffer(this._frameBuffer),fe.disposeTexture(this.vectorFieldTexture),fe.disposeTexture(this._spawnTexture),fe.disposeTexture(this._particleTexture0),fe.disposeTexture(this._particleTexture1),fe.disposeTexture(this._thisFrameTexture),fe.disposeTexture(this._lastFrameTexture),fe.disposeGeometry(this._particleLinesMesh.geometry),fe.disposeGeometry(this._particlePointsMesh.geometry),fe.disposeGeometry(this._lastFrameFullQuadMesh.geometry),this._spriteTexture&&fe.disposeTexture(this._spriteTexture),this._particlePass.dispose(fe),this._downsamplePass.dispose(fe),this._downsampleTextures.forEach(function(he){he.dispose(fe)})}},Ne.a=se},function(He,Ne,be){"use strict";var _e=be(13),Me=be(0),ve=be.n(Me),Ee=_e.a.extend(function(){return{dynamic:!0,attributes:{position:new _e.a.Attribute("position","float",3,"POSITION")}}},{resetOffset:function(){this._vertexOffset=0,this._faceOffset=0},setLineCount:function(Pe){var xe=this.attributes,pe=4*Pe,Ae=2*Pe;this.vertexCount!==pe&&xe.position.init(pe),this.triangleCount!==Ae&&(Ae===0?this.indices=null:this.indices=this.vertexCount>65535?new Uint32Array(Ae*3):new Uint16Array(Ae*3))},addLine:function(Pe){var xe=this._vertexOffset;this.attributes.position.set(xe,[Pe[0],Pe[1],1]),this.attributes.position.set(xe+1,[Pe[0],Pe[1],-1]),this.attributes.position.set(xe+2,[Pe[0],Pe[1],2]),this.attributes.position.set(xe+3,[Pe[0],Pe[1],-2]),this.setTriangleIndices(this._faceOffset++,[xe,xe+1,xe+2]),this.setTriangleIndices(this._faceOffset++,[xe+1,xe+2,xe+3]),this._vertexOffset+=4}});Ne.a=Ee},function(He,Ne,be){"use strict";Ne.a=`@export ecgl.vfParticle.particle.fragment
|
|
|
|
|
|
uniform sampler2D particleTexture;
|
|
|
uniform sampler2D spawnTexture;
|
|
|
uniform sampler2D velocityTexture;
|
|
|
|
|
|
uniform float deltaTime;
|
|
|
uniform float elapsedTime;
|
|
|
|
|
|
uniform float speedScaling : 1.0;
|
|
|
|
|
|
uniform vec2 textureSize;
|
|
|
uniform vec4 region : [0, 0, 1, 1];
|
|
|
uniform float firstFrameTime;
|
|
|
|
|
|
varying vec2 v_Texcoord;
|
|
|
|
|
|
|
|
|
void main()
|
|
|
{
|
|
|
vec4 p = texture2D(particleTexture, v_Texcoord);
|
|
|
bool spawn = false;
|
|
|
if (p.w <= 0.0) {
|
|
|
p = texture2D(spawnTexture, fract(v_Texcoord + elapsedTime / 10.0));
|
|
|
p.w -= firstFrameTime;
|
|
|
spawn = true;
|
|
|
}
|
|
|
vec2 v = texture2D(velocityTexture, fract(p.xy * region.zw + region.xy)).xy;
|
|
|
v = (v - 0.5) * 2.0;
|
|
|
p.z = length(v);
|
|
|
p.xy += v * deltaTime / 10.0 * speedScaling;
|
|
|
p.w -= deltaTime;
|
|
|
|
|
|
if (spawn || p.xy != fract(p.xy)) {
|
|
|
p.z = 0.0;
|
|
|
}
|
|
|
p.xy = fract(p.xy);
|
|
|
|
|
|
gl_FragColor = p;
|
|
|
}
|
|
|
@end
|
|
|
|
|
|
@export ecgl.vfParticle.renderPoints.vertex
|
|
|
|
|
|
#define PI 3.1415926
|
|
|
|
|
|
attribute vec2 texcoord : TEXCOORD_0;
|
|
|
|
|
|
uniform sampler2D particleTexture;
|
|
|
uniform mat4 worldViewProjection : WORLDVIEWPROJECTION;
|
|
|
|
|
|
uniform float size : 1.0;
|
|
|
|
|
|
varying float v_Mag;
|
|
|
varying vec2 v_Uv;
|
|
|
|
|
|
void main()
|
|
|
{
|
|
|
vec4 p = texture2D(particleTexture, texcoord);
|
|
|
|
|
|
if (p.w > 0.0 && p.z > 1e-5) {
|
|
|
gl_Position = worldViewProjection * vec4(p.xy * 2.0 - 1.0, 0.0, 1.0);
|
|
|
}
|
|
|
else {
|
|
|
gl_Position = vec4(100000.0, 100000.0, 100000.0, 1.0);
|
|
|
}
|
|
|
|
|
|
v_Mag = p.z;
|
|
|
v_Uv = p.xy;
|
|
|
|
|
|
gl_PointSize = size;
|
|
|
}
|
|
|
|
|
|
@end
|
|
|
|
|
|
@export ecgl.vfParticle.renderPoints.fragment
|
|
|
|
|
|
uniform vec4 color : [1.0, 1.0, 1.0, 1.0];
|
|
|
uniform sampler2D gradientTexture;
|
|
|
uniform sampler2D colorTexture;
|
|
|
uniform sampler2D spriteTexture;
|
|
|
|
|
|
varying float v_Mag;
|
|
|
varying vec2 v_Uv;
|
|
|
|
|
|
void main()
|
|
|
{
|
|
|
gl_FragColor = color;
|
|
|
#ifdef SPRITETEXTURE_ENABLED
|
|
|
gl_FragColor *= texture2D(spriteTexture, gl_PointCoord);
|
|
|
if (color.a == 0.0) {
|
|
|
discard;
|
|
|
}
|
|
|
#endif
|
|
|
#ifdef GRADIENTTEXTURE_ENABLED
|
|
|
gl_FragColor *= texture2D(gradientTexture, vec2(v_Mag, 0.5));
|
|
|
#endif
|
|
|
#ifdef COLORTEXTURE_ENABLED
|
|
|
gl_FragColor *= texture2D(colorTexture, v_Uv);
|
|
|
#endif
|
|
|
}
|
|
|
|
|
|
@end
|
|
|
|
|
|
@export ecgl.vfParticle.renderLines.vertex
|
|
|
|
|
|
#define PI 3.1415926
|
|
|
|
|
|
attribute vec3 position : POSITION;
|
|
|
|
|
|
uniform sampler2D particleTexture;
|
|
|
uniform sampler2D prevParticleTexture;
|
|
|
|
|
|
uniform float size : 1.0;
|
|
|
uniform vec4 vp: VIEWPORT;
|
|
|
uniform mat4 worldViewProjection : WORLDVIEWPROJECTION;
|
|
|
|
|
|
varying float v_Mag;
|
|
|
varying vec2 v_Uv;
|
|
|
|
|
|
@import clay.util.rand
|
|
|
|
|
|
void main()
|
|
|
{
|
|
|
vec4 p = texture2D(particleTexture, position.xy);
|
|
|
vec4 p2 = texture2D(prevParticleTexture, position.xy);
|
|
|
|
|
|
p.xy = p.xy * 2.0 - 1.0;
|
|
|
p2.xy = p2.xy * 2.0 - 1.0;
|
|
|
|
|
|
if (p.w > 0.0 && p.z > 1e-5) {
|
|
|
vec2 dir = normalize(p.xy - p2.xy);
|
|
|
vec2 norm = vec2(dir.y / vp.z, -dir.x / vp.w) * sign(position.z) * size;
|
|
|
if (abs(position.z) == 2.0) {
|
|
|
gl_Position = vec4(p.xy + norm, 0.0, 1.0);
|
|
|
v_Uv = p.xy;
|
|
|
v_Mag = p.z;
|
|
|
}
|
|
|
else {
|
|
|
gl_Position = vec4(p2.xy + norm, 0.0, 1.0);
|
|
|
v_Mag = p2.z;
|
|
|
v_Uv = p2.xy;
|
|
|
}
|
|
|
gl_Position = worldViewProjection * gl_Position;
|
|
|
}
|
|
|
else {
|
|
|
gl_Position = vec4(100000.0, 100000.0, 100000.0, 1.0);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@end
|
|
|
|
|
|
@export ecgl.vfParticle.renderLines.fragment
|
|
|
|
|
|
uniform vec4 color : [1.0, 1.0, 1.0, 1.0];
|
|
|
uniform sampler2D gradientTexture;
|
|
|
uniform sampler2D colorTexture;
|
|
|
|
|
|
varying float v_Mag;
|
|
|
varying vec2 v_Uv;
|
|
|
|
|
|
void main()
|
|
|
{
|
|
|
gl_FragColor = color;
|
|
|
#ifdef GRADIENTTEXTURE_ENABLED
|
|
|
gl_FragColor *= texture2D(gradientTexture, vec2(v_Mag, 0.5));
|
|
|
#endif
|
|
|
#ifdef COLORTEXTURE_ENABLED
|
|
|
gl_FragColor *= texture2D(colorTexture, v_Uv);
|
|
|
#endif
|
|
|
}
|
|
|
|
|
|
@end
|
|
|
`},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e);Me.a.extendSeriesModel({type:"series.flowGL",dependencies:["geo","grid","bmap"],visualColorAccessPath:"itemStyle.color",getInitialData:function(ve,Ee){var Pe=Me.a.getCoordinateSystemDimensions(this.get("coordinateSystem"))||["x","y"];if(Pe.length>2)throw new Error("flowGL can only be used on 2d coordinate systems.");Pe.push("vx","vy");var xe=Me.a.helper.completeDimensions(Pe,this.getSource(),{encodeDef:this.get("encode"),dimsDef:this.get("dimensions")}),pe=new Me.a.List(xe,this);return pe.initData(this.getSource()),pe},defaultOption:{coordinateSystem:"cartesian2d",zlevel:10,supersampling:1,particleType:"point",particleDensity:128,particleSize:1,particleSpeed:1,particleTrail:2,colorTexture:null,gridWidth:"auto",gridHeight:"auto",itemStyle:{color:"#fff",opacity:.8}}})},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(260),Ee=be(261),Pe=be(16);Me.a.registerVisual(Object(Pe.a)("linesGL"))},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(12),Ee=be.n(ve),Pe=Me.a.extendSeriesModel({type:"series.linesGL",dependencies:["grid","geo"],visualColorAccessPath:"lineStyle.color",streamEnabled:!0,init:function(xe){var pe=this._processFlatCoordsArray(xe.data);this._flatCoords=pe.flatCoords,this._flatCoordsOffset=pe.flatCoordsOffset,pe.flatCoords&&(xe.data=new Float32Array(pe.count)),Pe.superApply(this,"init",arguments)},mergeOption:function(xe){var pe=this._processFlatCoordsArray(xe.data);this._flatCoords=pe.flatCoords,this._flatCoordsOffset=pe.flatCoordsOffset,pe.flatCoords&&(xe.data=new Float32Array(pe.count)),Pe.superApply(this,"mergeOption",arguments)},appendData:function(xe){var pe=this._processFlatCoordsArray(xe.data);pe.flatCoords&&(this._flatCoords?(this._flatCoords=Object(ve.concatArray)(this._flatCoords,pe.flatCoords),this._flatCoordsOffset=Object(ve.concatArray)(this._flatCoordsOffset,pe.flatCoordsOffset)):(this._flatCoords=pe.flatCoords,this._flatCoordsOffset=pe.flatCoordsOffset),xe.data=new Float32Array(pe.count)),this.getRawData().appendData(xe.data)},_getCoordsFromItemModel:function(xe){var pe=this.getData().getItemModel(xe),Ae=pe.option instanceof Array?pe.option:pe.getShallow("coords");if(!(Ae instanceof Array&&Ae.length>0&&Ae[0]instanceof Array))throw new Error("Invalid coords "+JSON.stringify(Ae)+". Lines must have 2d coords array in data item.");return Ae},getLineCoordsCount:function(xe){return this._flatCoordsOffset?this._flatCoordsOffset[xe*2+1]:this._getCoordsFromItemModel(xe).length},getLineCoords:function(xe,pe){if(this._flatCoordsOffset){for(var Ae=this._flatCoordsOffset[xe*2],Se=this._flatCoordsOffset[xe*2+1],ce=0;ce<Se;ce++)pe[ce]=pe[ce]||[],pe[ce][0]=this._flatCoords[Ae+ce*2],pe[ce][1]=this._flatCoords[Ae+ce*2+1];return Se}else{for(var te=this._getCoordsFromItemModel(xe),ce=0;ce<te.length;ce++)pe[ce]=pe[ce]||[],pe[ce][0]=te[ce][0],pe[ce][1]=te[ce][1];return te.length}},_processFlatCoordsArray:function(xe){var pe=0;if(this._flatCoords&&(pe=this._flatCoords.length),typeof xe[0]=="number"){for(var Ae=xe.length,Se=new Uint32Array(Ae),ce=new Float64Array(Ae),te=0,ne=0,le=0,se=0;se<Ae;){le++;var fe=xe[se++];Se[ne++]=te+pe,Se[ne++]=fe;for(var he=0;he<fe;he++){var ie=xe[se++],ue=xe[se++];if(ce[te++]=ie,ce[te++]=ue,se>Ae)throw new Error("Invalid data format.")}}return{flatCoordsOffset:new Uint32Array(Se.buffer,0,ne),flatCoords:ce,count:le}}return{flatCoordsOffset:null,flatCoords:null,count:xe.length}},getInitialData:function(xe,pe){var Ae=new Me.a.List(["value"],this);return Ae.hasItemOption=!1,Ae.initData(xe.data,[],function(Se,ce,te,ne){if(Se instanceof Array)return NaN;Ae.hasItemOption=!0;var le=Se.value;if(le!=null)return le instanceof Array?le[ne]:le}),Ae},defaultOption:{coordinateSystem:"geo",zlevel:10,progressive:1e4,progressiveThreshold:5e4,blendMode:"source-over",lineStyle:{opacity:.8},postEffect:{enable:!1,colorCorrection:{exposure:0,brightness:0,contrast:1,saturation:1,enable:!0}}}})},function(He,Ne,be){"use strict";var _e=be(0),Me=be.n(_e),ve=be(2),Ee=be(20),Pe=be(86),xe=be(84),pe=be(3);Me.a.extendChartView({type:"linesGL",__ecgl__:!0,init:function(Ae,Se){this.groupGL=new ve.a.Node,this.viewGL=new Ee.a("orthographic"),this.viewGL.add(this.groupGL),this._glViewHelper=new xe.a(this.viewGL),this._nativeLinesShader=ve.a.createShader("ecgl.lines3D"),this._meshLinesShader=ve.a.createShader("ecgl.meshLines3D"),this._linesMeshes=[],this._currentStep=0},render:function(Ae,Se,ce){this.groupGL.removeAll(),this._glViewHelper.reset(Ae,ce);var te=this._linesMeshes[0];te||(te=this._linesMeshes[0]=this._createLinesMesh(Ae)),this._linesMeshes.length=1,this.groupGL.add(te),this._updateLinesMesh(Ae,te,0,Ae.getData().count()),this.viewGL.setPostEffect(Ae.getModel("postEffect"),ce)},incrementalPrepareRender:function(Ae,Se,ce){this.groupGL.removeAll(),this._glViewHelper.reset(Ae,ce),this._currentStep=0,this.viewGL.setPostEffect(Ae.getModel("postEffect"),ce)},incrementalRender:function(Ae,Se,ce,te){var ne=this._linesMeshes[this._currentStep];ne||(ne=this._createLinesMesh(Se),this._linesMeshes[this._currentStep]=ne),this._updateLinesMesh(Se,ne,Ae.start,Ae.end),this.groupGL.add(ne),te.getZr().refresh(),this._currentStep++},updateTransform:function(Ae,Se,ce){Ae.coordinateSystem.getRoamTransform&&this._glViewHelper.updateTransform(Ae,ce)},_createLinesMesh:function(Ae){var Se=new ve.a.Mesh({$ignorePicking:!0,material:new ve.a.Material({shader:ve.a.createShader("ecgl.lines3D"),transparent:!0,depthMask:!1,depthTest:!1}),geometry:new Pe.a({segmentScale:10,useNativeLine:!0,dynamic:!1}),mode:ve.a.Mesh.LINES,culling:!1});return Se},_updateLinesMesh:function(Ae,Se,ce,te){var ne=Ae.getData();Se.material.blend=Ae.get("blendMode")==="lighter"?ve.a.additiveBlend:null;var le=Ae.get("lineStyle.curveness")||0,se=Ae.get("polyline"),fe=Se.geometry,he=Ae.coordinateSystem,ie=pe.a.firstNotNull(Ae.get("lineStyle.width"),1);ie>1?(Se.material.shader!==this._meshLinesShader&&Se.material.attachShader(this._meshLinesShader),Se.mode=ve.a.Mesh.TRIANGLES):(Se.material.shader!==this._nativeLinesShader&&Se.material.attachShader(this._nativeLinesShader),Se.mode=ve.a.Mesh.LINES),ce=ce||0,te=te||ne.count(),fe.resetOffset();var ue=0,me=0,Ce=[],Ie=[],Fe=[],Re=[],Ue=[],Ge=.3,Je=.7;function Qe(){Ie[0]=Ce[0]*Je+Re[0]*Ge-(Ce[1]-Re[1])*le,Ie[1]=Ce[1]*Je+Re[1]*Ge-(Re[0]-Ce[0])*le,Fe[0]=Ce[0]*Ge+Re[0]*Je-(Ce[1]-Re[1])*le,Fe[1]=Ce[1]*Ge+Re[1]*Je-(Re[0]-Ce[0])*le}if(se||le!==0)for(var rt=ce;rt<te;rt++)if(se){var $e=Ae.getLineCoordsCount(rt);ue+=fe.getPolylineVertexCount($e),me+=fe.getPolylineTriangleCount($e)}else Ae.getLineCoords(rt,Ue),this._glViewHelper.dataToPoint(he,Ue[0],Ce),this._glViewHelper.dataToPoint(he,Ue[1],Re),Qe(),ue+=fe.getCubicCurveVertexCount(Ce,Ie,Fe,Re),me+=fe.getCubicCurveTriangleCount(Ce,Ie,Fe,Re);else{var qe=te-ce;ue+=qe*fe.getLineVertexCount(),me+=qe*fe.getLineVertexCount()}fe.setVertexCount(ue),fe.setTriangleCount(me);for(var ot=ce,at=[],rt=ce;rt<te;rt++){ve.a.parseColor(ne.getItemVisual(ot,"color"),at);var ut=pe.a.firstNotNull(ne.getItemVisual(ot,"opacity"),1);at[3]*=ut;for(var $e=Ae.getLineCoords(rt,Ue),nt=0;nt<$e;nt++)this._glViewHelper.dataToPoint(he,Ue[nt],Ue[nt]);se?fe.addPolyline(Ue,at,ie,0,$e):le!==0?(Ce=Ue[0],Re=Ue[1],Qe(),fe.addCubicCurve(Ce,Ie,Fe,Re,at,ie)):fe.addPolyline(Ue,at,ie,0,2),ot++}},dispose:function(){this.groupGL.removeAll()},remove:function(){this.groupGL.removeAll()}})}])})},3867:function(At,It,Te){var Oe=Te(97671);(function(He,Ne){At.exports=Ne()})(this,function(){"use strict";function He(gt){var bt=typeof gt;return gt!==null&&(bt==="object"||bt==="function")}function Ne(gt){return typeof gt=="function"}var be=void 0;Array.isArray?be=Array.isArray:be=function(gt){return Object.prototype.toString.call(gt)==="[object Array]"};var _e=be,Me=0,ve=void 0,Ee=void 0,Pe=function(bt,Yt){ue[Me]=bt,ue[Me+1]=Yt,Me+=2,Me===2&&(Ee?Ee(me):Ie())};function xe(gt){Ee=gt}function pe(gt){Pe=gt}var Ae=typeof window!="undefined"?window:void 0,Se=Ae||{},ce=Se.MutationObserver||Se.WebKitMutationObserver,te=typeof self=="undefined"&&typeof Oe!="undefined"&&{}.toString.call(Oe)==="[object process]",ne=typeof Uint8ClampedArray!="undefined"&&typeof importScripts!="undefined"&&typeof MessageChannel!="undefined";function le(){return function(){return Oe.nextTick(me)}}function se(){return typeof ve!="undefined"?function(){ve(me)}:ie()}function fe(){var gt=0,bt=new ce(me),Yt=document.createTextNode("");return bt.observe(Yt,{characterData:!0}),function(){Yt.data=gt=++gt%2}}function he(){var gt=new MessageChannel;return gt.port1.onmessage=me,function(){return gt.port2.postMessage(0)}}function ie(){var gt=setTimeout;return function(){return gt(me,1)}}var ue=new Array(1e3);function me(){for(var gt=0;gt<Me;gt+=2){var bt=ue[gt],Yt=ue[gt+1];bt(Yt),ue[gt]=void 0,ue[gt+1]=void 0}Me=0}function Ce(){try{var gt=Function("return this")().require("vertx");return ve=gt.runOnLoop||gt.runOnContext,se()}catch(bt){return ie()}}var Ie=void 0;te?Ie=le():ce?Ie=fe():ne?Ie=he():Ae===void 0?Ie=Ce():Ie=ie();function Fe(gt,bt){var Yt=this,kt=new this.constructor(Ge);kt[Ue]===void 0&&tn(kt);var Mt=Yt._state;if(Mt){var ln=arguments[Mt-1];Pe(function(){return Zt(Mt,kt,ln,Yt._result)})}else vt(Yt,kt,gt,bt);return kt}function Re(gt){var bt=this;if(gt&&typeof gt=="object"&>.constructor===bt)return gt;var Yt=new bt(Ge);return lt(Yt,gt),Yt}var Ue=Math.random().toString(36).substring(2);function Ge(){}var Je=void 0,Qe=1,rt=2;function $e(){return new TypeError("You cannot resolve a promise with itself")}function qe(){return new TypeError("A promises callback cannot return that same promise.")}function ot(gt,bt,Yt,kt){try{gt.call(bt,Yt,kt)}catch(Mt){return Mt}}function at(gt,bt,Yt){Pe(function(kt){var Mt=!1,ln=ot(Yt,bt,function(zn){Mt||(Mt=!0,bt!==zn?lt(kt,zn):ft(kt,zn))},function(zn){Mt||(Mt=!0,ct(kt,zn))},"Settle: "+(kt._label||" unknown promise"));!Mt&&ln&&(Mt=!0,ct(kt,ln))},gt)}function ut(gt,bt){bt._state===Qe?ft(gt,bt._result):bt._state===rt?ct(gt,bt._result):vt(bt,void 0,function(Yt){return lt(gt,Yt)},function(Yt){return ct(gt,Yt)})}function nt(gt,bt,Yt){bt.constructor===gt.constructor&&Yt===Fe&&bt.constructor.resolve===Re?ut(gt,bt):Yt===void 0?ft(gt,bt):Ne(Yt)?at(gt,bt,Yt):ft(gt,bt)}function lt(gt,bt){if(gt===bt)ct(gt,$e());else if(He(bt)){var Yt=void 0;try{Yt=bt.then}catch(kt){ct(gt,kt);return}nt(gt,bt,Yt)}else ft(gt,bt)}function yt(gt){gt._onerror&>._onerror(gt._result),Ut(gt)}function ft(gt,bt){gt._state===Je&&(gt._result=bt,gt._state=Qe,gt._subscribers.length!==0&&Pe(Ut,gt))}function ct(gt,bt){gt._state===Je&&(gt._state=rt,gt._result=bt,Pe(yt,gt))}function vt(gt,bt,Yt,kt){var Mt=gt._subscribers,ln=Mt.length;gt._onerror=null,Mt[ln]=bt,Mt[ln+Qe]=Yt,Mt[ln+rt]=kt,ln===0&>._state&&Pe(Ut,gt)}function Ut(gt){var bt=gt._subscribers,Yt=gt._state;if(bt.length!==0){for(var kt=void 0,Mt=void 0,ln=gt._result,zn=0;zn<bt.length;zn+=3)kt=bt[zn],Mt=bt[zn+Yt],kt?Zt(Yt,kt,Mt,ln):Mt(ln);gt._subscribers.length=0}}function Zt(gt,bt,Yt,kt){var Mt=Ne(Yt),ln=void 0,zn=void 0,Gn=!0;if(Mt){try{ln=Yt(kt)}catch(Hn){Gn=!1,zn=Hn}if(bt===ln){ct(bt,qe());return}}else ln=kt;bt._state!==Je||(Mt&&Gn?lt(bt,ln):Gn===!1?ct(bt,zn):gt===Qe?ft(bt,ln):gt===rt&&ct(bt,ln))}function en(gt,bt){try{bt(function(kt){lt(gt,kt)},function(kt){ct(gt,kt)})}catch(Yt){ct(gt,Yt)}}var mn=0;function Bt(){return mn++}function tn(gt){gt[Ue]=mn++,gt._state=void 0,gt._result=void 0,gt._subscribers=[]}function on(){return new Error("Array Methods must be provided an Array")}var Mn=function(){function gt(bt,Yt){this._instanceConstructor=bt,this.promise=new bt(Ge),this.promise[Ue]||tn(this.promise),_e(Yt)?(this.length=Yt.length,this._remaining=Yt.length,this._result=new Array(this.length),this.length===0?ft(this.promise,this._result):(this.length=this.length||0,this._enumerate(Yt),this._remaining===0&&ft(this.promise,this._result))):ct(this.promise,on())}return gt.prototype._enumerate=function(Yt){for(var kt=0;this._state===Je&&kt<Yt.length;kt++)this._eachEntry(Yt[kt],kt)},gt.prototype._eachEntry=function(Yt,kt){var Mt=this._instanceConstructor,ln=Mt.resolve;if(ln===Re){var zn=void 0,Gn=void 0,Hn=!1;try{zn=Yt.then}catch(Xn){Hn=!0,Gn=Xn}if(zn===Fe&&Yt._state!==Je)this._settledAt(Yt._state,kt,Yt._result);else if(typeof zn!="function")this._remaining--,this._result[kt]=Yt;else if(Mt===St){var nr=new Mt(Ge);Hn?ct(nr,Gn):nt(nr,Yt,zn),this._willSettleAt(nr,kt)}else this._willSettleAt(new Mt(function(Xn){return Xn(Yt)}),kt)}else this._willSettleAt(ln(Yt),kt)},gt.prototype._settledAt=function(Yt,kt,Mt){var ln=this.promise;ln._state===Je&&(this._remaining--,Yt===rt?ct(ln,Mt):this._result[kt]=Mt),this._remaining===0&&ft(ln,this._result)},gt.prototype._willSettleAt=function(Yt,kt){var Mt=this;vt(Yt,void 0,function(ln){return Mt._settledAt(Qe,kt,ln)},function(ln){return Mt._settledAt(rt,kt,ln)})},gt}();function Dn(gt){return new Mn(this,gt).promise}function sn(gt){var bt=this;return _e(gt)?new bt(function(Yt,kt){for(var Mt=gt.length,ln=0;ln<Mt;ln++)bt.resolve(gt[ln]).then(Yt,kt)}):new bt(function(Yt,kt){return kt(new TypeError("You must pass an array to race."))})}function rn(gt){var bt=this,Yt=new bt(Ge);return ct(Yt,gt),Yt}function Ht(){throw new TypeError("You must pass a resolver function as the first argument to the promise constructor")}function Tt(){throw new TypeError("Failed to construct 'Promise': Please use the 'new' operator, this object constructor cannot be called as a function.")}var St=function(){function gt(bt){this[Ue]=Bt(),this._result=this._state=void 0,this._subscribers=[],Ge!==bt&&(typeof bt!="function"&&Ht(),this instanceof gt?en(this,bt):Tt())}return gt.prototype.catch=function(Yt){return this.then(null,Yt)},gt.prototype.finally=function(Yt){var kt=this,Mt=kt.constructor;return Ne(Yt)?kt.then(function(ln){return Mt.resolve(Yt()).then(function(){return ln})},function(ln){return Mt.resolve(Yt()).then(function(){throw ln})}):kt.then(Yt,Yt)},gt}();St.prototype.then=Fe,St.all=Dn,St.race=sn,St.resolve=Re,St.reject=rn,St._setScheduler=xe,St._setAsap=pe,St._asap=Pe;function Qt(){var gt=void 0;if(typeof Te.g!="undefined")gt=Te.g;else if(typeof self!="undefined")gt=self;else try{gt=Function("return this")()}catch(kt){throw new Error("polyfill failed because global object is unavailable in this environment")}var bt=gt.Promise;if(bt){var Yt=null;try{Yt=Object.prototype.toString.call(bt.resolve())}catch(kt){}if(Yt==="[object Promise]"&&!bt.cast)return}gt.Promise=St}return St.polyfill=Qt,St.Promise=St,St})},37271:function(At){"use strict";var It=Object.prototype.hasOwnProperty,Te="~";function Oe(){}Object.create&&(Oe.prototype=Object.create(null),new Oe().__proto__||(Te=!1));function He(Me,ve,Ee){this.fn=Me,this.context=ve,this.once=Ee||!1}function Ne(Me,ve,Ee,Pe,xe){if(typeof Ee!="function")throw new TypeError("The listener must be a function");var pe=new He(Ee,Pe||Me,xe),Ae=Te?Te+ve:ve;return Me._events[Ae]?Me._events[Ae].fn?Me._events[Ae]=[Me._events[Ae],pe]:Me._events[Ae].push(pe):(Me._events[Ae]=pe,Me._eventsCount++),Me}function be(Me,ve){--Me._eventsCount===0?Me._events=new Oe:delete Me._events[ve]}function _e(){this._events=new Oe,this._eventsCount=0}_e.prototype.eventNames=function(){var ve=[],Ee,Pe;if(this._eventsCount===0)return ve;for(Pe in Ee=this._events)It.call(Ee,Pe)&&ve.push(Te?Pe.slice(1):Pe);return Object.getOwnPropertySymbols?ve.concat(Object.getOwnPropertySymbols(Ee)):ve},_e.prototype.listeners=function(ve){var Ee=Te?Te+ve:ve,Pe=this._events[Ee];if(!Pe)return[];if(Pe.fn)return[Pe.fn];for(var xe=0,pe=Pe.length,Ae=new Array(pe);xe<pe;xe++)Ae[xe]=Pe[xe].fn;return Ae},_e.prototype.listenerCount=function(ve){var Ee=Te?Te+ve:ve,Pe=this._events[Ee];return Pe?Pe.fn?1:Pe.length:0},_e.prototype.emit=function(ve,Ee,Pe,xe,pe,Ae){var Se=Te?Te+ve:ve;if(!this._events[Se])return!1;var ce=this._events[Se],te=arguments.length,ne,le;if(ce.fn){switch(ce.once&&this.removeListener(ve,ce.fn,void 0,!0),te){case 1:return ce.fn.call(ce.context),!0;case 2:return ce.fn.call(ce.context,Ee),!0;case 3:return ce.fn.call(ce.context,Ee,Pe),!0;case 4:return ce.fn.call(ce.context,Ee,Pe,xe),!0;case 5:return ce.fn.call(ce.context,Ee,Pe,xe,pe),!0;case 6:return ce.fn.call(ce.context,Ee,Pe,xe,pe,Ae),!0}for(le=1,ne=new Array(te-1);le<te;le++)ne[le-1]=arguments[le];ce.fn.apply(ce.context,ne)}else{var se=ce.length,fe;for(le=0;le<se;le++)switch(ce[le].once&&this.removeListener(ve,ce[le].fn,void 0,!0),te){case 1:ce[le].fn.call(ce[le].context);break;case 2:ce[le].fn.call(ce[le].context,Ee);break;case 3:ce[le].fn.call(ce[le].context,Ee,Pe);break;case 4:ce[le].fn.call(ce[le].context,Ee,Pe,xe);break;default:if(!ne)for(fe=1,ne=new Array(te-1);fe<te;fe++)ne[fe-1]=arguments[fe];ce[le].fn.apply(ce[le].context,ne)}}return!0},_e.prototype.on=function(ve,Ee,Pe){return Ne(this,ve,Ee,Pe,!1)},_e.prototype.once=function(ve,Ee,Pe){return Ne(this,ve,Ee,Pe,!0)},_e.prototype.removeListener=function(ve,Ee,Pe,xe){var pe=Te?Te+ve:ve;if(!this._events[pe])return this;if(!Ee)return be(this,pe),this;var Ae=this._events[pe];if(Ae.fn)Ae.fn===Ee&&(!xe||Ae.once)&&(!Pe||Ae.context===Pe)&&be(this,pe);else{for(var Se=0,ce=[],te=Ae.length;Se<te;Se++)(Ae[Se].fn!==Ee||xe&&!Ae[Se].once||Pe&&Ae[Se].context!==Pe)&&ce.push(Ae[Se]);ce.length?this._events[pe]=ce.length===1?ce[0]:ce:be(this,pe)}return this},_e.prototype.removeAllListeners=function(ve){var Ee;return ve?(Ee=Te?Te+ve:ve,this._events[Ee]&&be(this,Ee)):(this._events=new Oe,this._eventsCount=0),this},_e.prototype.off=_e.prototype.removeListener,_e.prototype.addListener=_e.prototype.on,_e.prefixed=Te,_e.EventEmitter=_e,At.exports=_e},86204:function(At){"use strict";var It=typeof Reflect=="object"?Reflect:null,Te=It&&typeof It.apply=="function"?It.apply:function(he,ie,ue){return Function.prototype.apply.call(he,ie,ue)},Oe;It&&typeof It.ownKeys=="function"?Oe=It.ownKeys:Object.getOwnPropertySymbols?Oe=function(he){return Object.getOwnPropertyNames(he).concat(Object.getOwnPropertySymbols(he))}:Oe=function(he){return Object.getOwnPropertyNames(he)};function He(fe){console&&console.warn&&console.warn(fe)}var Ne=Number.isNaN||function(he){return he!==he};function be(){be.init.call(this)}At.exports=be,At.exports.once=ne,be.EventEmitter=be,be.prototype._events=void 0,be.prototype._eventsCount=0,be.prototype._maxListeners=void 0;var _e=10;function Me(fe){if(typeof fe!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof fe)}Object.defineProperty(be,"defaultMaxListeners",{enumerable:!0,get:function(){return _e},set:function(fe){if(typeof fe!="number"||fe<0||Ne(fe))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+fe+".");_e=fe}}),be.init=function(){(this._events===void 0||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0},be.prototype.setMaxListeners=function(he){if(typeof he!="number"||he<0||Ne(he))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+he+".");return this._maxListeners=he,this};function ve(fe){return fe._maxListeners===void 0?be.defaultMaxListeners:fe._maxListeners}be.prototype.getMaxListeners=function(){return ve(this)},be.prototype.emit=function(he){for(var ie=[],ue=1;ue<arguments.length;ue++)ie.push(arguments[ue]);var me=he==="error",Ce=this._events;if(Ce!==void 0)me=me&&Ce.error===void 0;else if(!me)return!1;if(me){var Ie;if(ie.length>0&&(Ie=ie[0]),Ie instanceof Error)throw Ie;var Fe=new Error("Unhandled error."+(Ie?" ("+Ie.message+")":""));throw Fe.context=Ie,Fe}var Re=Ce[he];if(Re===void 0)return!1;if(typeof Re=="function")Te(Re,this,ie);else for(var Ue=Re.length,Ge=Se(Re,Ue),ue=0;ue<Ue;++ue)Te(Ge[ue],this,ie);return!0};function Ee(fe,he,ie,ue){var me,Ce,Ie;if(Me(ie),Ce=fe._events,Ce===void 0?(Ce=fe._events=Object.create(null),fe._eventsCount=0):(Ce.newListener!==void 0&&(fe.emit("newListener",he,ie.listener?ie.listener:ie),Ce=fe._events),Ie=Ce[he]),Ie===void 0)Ie=Ce[he]=ie,++fe._eventsCount;else if(typeof Ie=="function"?Ie=Ce[he]=ue?[ie,Ie]:[Ie,ie]:ue?Ie.unshift(ie):Ie.push(ie),me=ve(fe),me>0&&Ie.length>me&&!Ie.warned){Ie.warned=!0;var Fe=new Error("Possible EventEmitter memory leak detected. "+Ie.length+" "+String(he)+" listeners added. Use emitter.setMaxListeners() to increase limit");Fe.name="MaxListenersExceededWarning",Fe.emitter=fe,Fe.type=he,Fe.count=Ie.length,He(Fe)}return fe}be.prototype.addListener=function(he,ie){return Ee(this,he,ie,!1)},be.prototype.on=be.prototype.addListener,be.prototype.prependListener=function(he,ie){return Ee(this,he,ie,!0)};function Pe(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function xe(fe,he,ie){var ue={fired:!1,wrapFn:void 0,target:fe,type:he,listener:ie},me=Pe.bind(ue);return me.listener=ie,ue.wrapFn=me,me}be.prototype.once=function(he,ie){return Me(ie),this.on(he,xe(this,he,ie)),this},be.prototype.prependOnceListener=function(he,ie){return Me(ie),this.prependListener(he,xe(this,he,ie)),this},be.prototype.removeListener=function(he,ie){var ue,me,Ce,Ie,Fe;if(Me(ie),me=this._events,me===void 0)return this;if(ue=me[he],ue===void 0)return this;if(ue===ie||ue.listener===ie)--this._eventsCount===0?this._events=Object.create(null):(delete me[he],me.removeListener&&this.emit("removeListener",he,ue.listener||ie));else if(typeof ue!="function"){for(Ce=-1,Ie=ue.length-1;Ie>=0;Ie--)if(ue[Ie]===ie||ue[Ie].listener===ie){Fe=ue[Ie].listener,Ce=Ie;break}if(Ce<0)return this;Ce===0?ue.shift():ce(ue,Ce),ue.length===1&&(me[he]=ue[0]),me.removeListener!==void 0&&this.emit("removeListener",he,Fe||ie)}return this},be.prototype.off=be.prototype.removeListener,be.prototype.removeAllListeners=function(he){var ie,ue,me;if(ue=this._events,ue===void 0)return this;if(ue.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):ue[he]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete ue[he]),this;if(arguments.length===0){var Ce=Object.keys(ue),Ie;for(me=0;me<Ce.length;++me)Ie=Ce[me],Ie!=="removeListener"&&this.removeAllListeners(Ie);return this.removeAllListeners("removeListener"),this._events=Object.create(null),this._eventsCount=0,this}if(ie=ue[he],typeof ie=="function")this.removeListener(he,ie);else if(ie!==void 0)for(me=ie.length-1;me>=0;me--)this.removeListener(he,ie[me]);return this};function pe(fe,he,ie){var ue=fe._events;if(ue===void 0)return[];var me=ue[he];return me===void 0?[]:typeof me=="function"?ie?[me.listener||me]:[me]:ie?te(me):Se(me,me.length)}be.prototype.listeners=function(he){return pe(this,he,!0)},be.prototype.rawListeners=function(he){return pe(this,he,!1)},be.listenerCount=function(fe,he){return typeof fe.listenerCount=="function"?fe.listenerCount(he):Ae.call(fe,he)},be.prototype.listenerCount=Ae;function Ae(fe){var he=this._events;if(he!==void 0){var ie=he[fe];if(typeof ie=="function")return 1;if(ie!==void 0)return ie.length}return 0}be.prototype.eventNames=function(){return this._eventsCount>0?Oe(this._events):[]};function Se(fe,he){for(var ie=new Array(he),ue=0;ue<he;++ue)ie[ue]=fe[ue];return ie}function ce(fe,he){for(;he+1<fe.length;he++)fe[he]=fe[he+1];fe.pop()}function te(fe){for(var he=new Array(fe.length),ie=0;ie<he.length;++ie)he[ie]=fe[ie].listener||fe[ie];return he}function ne(fe,he){return new Promise(function(ie,ue){function me(Ie){fe.removeListener(he,Ce),ue(Ie)}function Ce(){typeof fe.removeListener=="function"&&fe.removeListener("error",me),ie([].slice.call(arguments))}se(fe,he,Ce,{once:!0}),he!=="error"&&le(fe,me,{once:!0})})}function le(fe,he,ie){typeof fe.on=="function"&&se(fe,"error",he,ie)}function se(fe,he,ie,ue){if(typeof fe.on=="function")ue.once?fe.once(he,ie):fe.on(he,ie);else if(typeof fe.addEventListener=="function")fe.addEventListener(he,function me(Ce){ue.once&&fe.removeEventListener(he,me),ie(Ce)});else throw new TypeError('The "emitter" argument must be of type EventEmitter. Received type '+typeof fe)}},53291:function(At){"use strict";var It=Array.isArray,Te=Object.keys,Oe=Object.prototype.hasOwnProperty;At.exports=function He(Ne,be){if(Ne===be)return!0;if(Ne&&be&&typeof Ne=="object"&&typeof be=="object"){var _e=It(Ne),Me=It(be),ve,Ee,Pe;if(_e&&Me){if(Ee=Ne.length,Ee!=be.length)return!1;for(ve=Ee;ve--!==0;)if(!He(Ne[ve],be[ve]))return!1;return!0}if(_e!=Me)return!1;var xe=Ne instanceof Date,pe=be instanceof Date;if(xe!=pe)return!1;if(xe&&pe)return Ne.getTime()==be.getTime();var Ae=Ne instanceof RegExp,Se=be instanceof RegExp;if(Ae!=Se)return!1;if(Ae&&Se)return Ne.toString()==be.toString();var ce=Te(Ne);if(Ee=ce.length,Ee!==Te(be).length)return!1;for(ve=Ee;ve--!==0;)if(!Oe.call(be,ce[ve]))return!1;for(ve=Ee;ve--!==0;)if(Pe=ce[ve],!He(Ne[Pe],be[Pe]))return!1;return!0}return Ne!==Ne&&be!==be}},75172:function(At,It,Te){var Oe=Te(89224);At.exports={Graph:Oe.Graph,json:Te(17401),alg:Te(54613),version:Oe.version}},91606:function(At,It,Te){var Oe=Te(95329);At.exports=He;function He(Ne){var be={},_e=[],Me;function ve(Ee){Oe.has(be,Ee)||(be[Ee]=!0,Me.push(Ee),Oe.each(Ne.successors(Ee),ve),Oe.each(Ne.predecessors(Ee),ve))}return Oe.each(Ne.nodes(),function(Ee){Me=[],ve(Ee),Me.length&&_e.push(Me)}),_e}},21482:function(At,It,Te){var Oe=Te(95329);At.exports=He;function He(be,_e,Me){Oe.isArray(_e)||(_e=[_e]);var ve=(be.isDirected()?be.successors:be.neighbors).bind(be),Ee=[],Pe={};return Oe.each(_e,function(xe){if(!be.hasNode(xe))throw new Error("Graph does not have node: "+xe);Ne(be,xe,Me==="post",Pe,ve,Ee)}),Ee}function Ne(be,_e,Me,ve,Ee,Pe){Oe.has(ve,_e)||(ve[_e]=!0,Me||Pe.push(_e),Oe.each(Ee(_e),function(xe){Ne(be,xe,Me,ve,Ee,Pe)}),Me&&Pe.push(_e))}},40845:function(At,It,Te){var Oe=Te(13746),He=Te(95329);At.exports=Ne;function Ne(be,_e,Me){return He.transform(be.nodes(),function(ve,Ee){ve[Ee]=Oe(be,Ee,_e,Me)},{})}},13746:function(At,It,Te){var Oe=Te(95329),He=Te(36614);At.exports=be;var Ne=Oe.constant(1);function be(Me,ve,Ee,Pe){return _e(Me,String(ve),Ee||Ne,Pe||function(xe){return Me.outEdges(xe)})}function _e(Me,ve,Ee,Pe){var xe={},pe=new He,Ae,Se,ce=function(te){var ne=te.v!==Ae?te.v:te.w,le=xe[ne],se=Ee(te),fe=Se.distance+se;if(se<0)throw new Error("dijkstra does not allow negative edge weights. Bad edge: "+te+" Weight: "+se);fe<le.distance&&(le.distance=fe,le.predecessor=Ae,pe.decrease(ne,fe))};for(Me.nodes().forEach(function(te){var ne=te===ve?0:Number.POSITIVE_INFINITY;xe[te]={distance:ne},pe.add(te,ne)});pe.size()>0&&(Ae=pe.removeMin(),Se=xe[Ae],Se.distance!==Number.POSITIVE_INFINITY);)Pe(Ae).forEach(ce);return xe}},59324:function(At,It,Te){var Oe=Te(95329),He=Te(94558);At.exports=Ne;function Ne(be){return Oe.filter(He(be),function(_e){return _e.length>1||_e.length===1&&be.hasEdge(_e[0],_e[0])})}},22893:function(At,It,Te){var Oe=Te(95329);At.exports=Ne;var He=Oe.constant(1);function Ne(_e,Me,ve){return be(_e,Me||He,ve||function(Ee){return _e.outEdges(Ee)})}function be(_e,Me,ve){var Ee={},Pe=_e.nodes();return Pe.forEach(function(xe){Ee[xe]={},Ee[xe][xe]={distance:0},Pe.forEach(function(pe){xe!==pe&&(Ee[xe][pe]={distance:Number.POSITIVE_INFINITY})}),ve(xe).forEach(function(pe){var Ae=pe.v===xe?pe.w:pe.v,Se=Me(pe);Ee[xe][Ae]={distance:Se,predecessor:xe}})}),Pe.forEach(function(xe){var pe=Ee[xe];Pe.forEach(function(Ae){var Se=Ee[Ae];Pe.forEach(function(ce){var te=Se[xe],ne=pe[ce],le=Se[ce],se=te.distance+ne.distance;se<le.distance&&(le.distance=se,le.predecessor=ne.predecessor)})})}),Ee}},54613:function(At,It,Te){At.exports={components:Te(91606),dijkstra:Te(13746),dijkstraAll:Te(40845),findCycles:Te(59324),floydWarshall:Te(22893),isAcyclic:Te(588),postorder:Te(98049),preorder:Te(67158),prim:Te(66058),tarjan:Te(94558),topsort:Te(7793)}},588:function(At,It,Te){var Oe=Te(7793);At.exports=He;function He(Ne){try{Oe(Ne)}catch(be){if(be instanceof Oe.CycleException)return!1;throw be}return!0}},98049:function(At,It,Te){var Oe=Te(21482);At.exports=He;function He(Ne,be){return Oe(Ne,be,"post")}},67158:function(At,It,Te){var Oe=Te(21482);At.exports=He;function He(Ne,be){return Oe(Ne,be,"pre")}},66058:function(At,It,Te){var Oe=Te(95329),He=Te(6349),Ne=Te(36614);At.exports=be;function be(_e,Me){var ve=new He,Ee={},Pe=new Ne,xe;function pe(Se){var ce=Se.v===xe?Se.w:Se.v,te=Pe.priority(ce);if(te!==void 0){var ne=Me(Se);ne<te&&(Ee[ce]=xe,Pe.decrease(ce,ne))}}if(_e.nodeCount()===0)return ve;Oe.each(_e.nodes(),function(Se){Pe.add(Se,Number.POSITIVE_INFINITY),ve.setNode(Se)}),Pe.decrease(_e.nodes()[0],0);for(var Ae=!1;Pe.size()>0;){if(xe=Pe.removeMin(),Oe.has(Ee,xe))ve.setEdge(xe,Ee[xe]);else{if(Ae)throw new Error("Input graph is not connected: "+_e);Ae=!0}_e.nodeEdges(xe).forEach(pe)}return ve}},94558:function(At,It,Te){var Oe=Te(95329);At.exports=He;function He(Ne){var be=0,_e=[],Me={},ve=[];function Ee(Pe){var xe=Me[Pe]={onStack:!0,lowlink:be,index:be++};if(_e.push(Pe),Ne.successors(Pe).forEach(function(Se){Oe.has(Me,Se)?Me[Se].onStack&&(xe.lowlink=Math.min(xe.lowlink,Me[Se].index)):(Ee(Se),xe.lowlink=Math.min(xe.lowlink,Me[Se].lowlink))}),xe.lowlink===xe.index){var pe=[],Ae;do Ae=_e.pop(),Me[Ae].onStack=!1,pe.push(Ae);while(Pe!==Ae);ve.push(pe)}}return Ne.nodes().forEach(function(Pe){Oe.has(Me,Pe)||Ee(Pe)}),ve}},7793:function(At,It,Te){var Oe=Te(95329);At.exports=He,He.CycleException=Ne;function He(be){var _e={},Me={},ve=[];function Ee(Pe){if(Oe.has(Me,Pe))throw new Ne;Oe.has(_e,Pe)||(Me[Pe]=!0,_e[Pe]=!0,Oe.each(be.predecessors(Pe),Ee),delete Me[Pe],ve.push(Pe))}if(Oe.each(be.sinks(),Ee),Oe.size(_e)!==be.nodeCount())throw new Ne;return ve}function Ne(){}Ne.prototype=new Error},36614:function(At,It,Te){var Oe=Te(95329);At.exports=He;function He(){this._arr=[],this._keyIndices={}}He.prototype.size=function(){return this._arr.length},He.prototype.keys=function(){return this._arr.map(function(Ne){return Ne.key})},He.prototype.has=function(Ne){return Oe.has(this._keyIndices,Ne)},He.prototype.priority=function(Ne){var be=this._keyIndices[Ne];if(be!==void 0)return this._arr[be].priority},He.prototype.min=function(){if(this.size()===0)throw new Error("Queue underflow");return this._arr[0].key},He.prototype.add=function(Ne,be){var _e=this._keyIndices;if(Ne=String(Ne),!Oe.has(_e,Ne)){var Me=this._arr,ve=Me.length;return _e[Ne]=ve,Me.push({key:Ne,priority:be}),this._decrease(ve),!0}return!1},He.prototype.removeMin=function(){this._swap(0,this._arr.length-1);var Ne=this._arr.pop();return delete this._keyIndices[Ne.key],this._heapify(0),Ne.key},He.prototype.decrease=function(Ne,be){var _e=this._keyIndices[Ne];if(be>this._arr[_e].priority)throw new Error("New priority is greater than current priority. Key: "+Ne+" Old: "+this._arr[_e].priority+" New: "+be);this._arr[_e].priority=be,this._decrease(_e)},He.prototype._heapify=function(Ne){var be=this._arr,_e=2*Ne,Me=_e+1,ve=Ne;_e<be.length&&(ve=be[_e].priority<be[ve].priority?_e:ve,Me<be.length&&(ve=be[Me].priority<be[ve].priority?Me:ve),ve!==Ne&&(this._swap(Ne,ve),this._heapify(ve)))},He.prototype._decrease=function(Ne){for(var be=this._arr,_e=be[Ne].priority,Me;Ne!==0&&(Me=Ne>>1,!(be[Me].priority<_e));)this._swap(Ne,Me),Ne=Me},He.prototype._swap=function(Ne,be){var _e=this._arr,Me=this._keyIndices,ve=_e[Ne],Ee=_e[be];_e[Ne]=Ee,_e[be]=ve,Me[Ee.key]=Ne,Me[ve.key]=be}},6349:function(At,It,Te){"use strict";var Oe=Te(95329);At.exports=_e;var He="\0",Ne="\0",be="";function _e(pe){this._isDirected=Oe.has(pe,"directed")?pe.directed:!0,this._isMultigraph=Oe.has(pe,"multigraph")?pe.multigraph:!1,this._isCompound=Oe.has(pe,"compound")?pe.compound:!1,this._label=void 0,this._defaultNodeLabelFn=Oe.constant(void 0),this._defaultEdgeLabelFn=Oe.constant(void 0),this._nodes={},this._isCompound&&(this._parent={},this._children={},this._children[Ne]={}),this._in={},this._preds={},this._out={},this._sucs={},this._edgeObjs={},this._edgeLabels={}}_e.prototype._nodeCount=0,_e.prototype._edgeCount=0,_e.prototype.isDirected=function(){return this._isDirected},_e.prototype.isMultigraph=function(){return this._isMultigraph},_e.prototype.isCompound=function(){return this._isCompound},_e.prototype.setGraph=function(pe){return this._label=pe,this},_e.prototype.graph=function(){return this._label},_e.prototype.setDefaultNodeLabel=function(pe){return Oe.isFunction(pe)||(pe=Oe.constant(pe)),this._defaultNodeLabelFn=pe,this},_e.prototype.nodeCount=function(){return this._nodeCount},_e.prototype.nodes=function(){return Oe.keys(this._nodes)},_e.prototype.sources=function(){var pe=this;return Oe.filter(this.nodes(),function(Ae){return Oe.isEmpty(pe._in[Ae])})},_e.prototype.sinks=function(){var pe=this;return Oe.filter(this.nodes(),function(Ae){return Oe.isEmpty(pe._out[Ae])})},_e.prototype.setNodes=function(pe,Ae){var Se=arguments,ce=this;return Oe.each(pe,function(te){Se.length>1?ce.setNode(te,Ae):ce.setNode(te)}),this},_e.prototype.setNode=function(pe,Ae){return Oe.has(this._nodes,pe)?(arguments.length>1&&(this._nodes[pe]=Ae),this):(this._nodes[pe]=arguments.length>1?Ae:this._defaultNodeLabelFn(pe),this._isCompound&&(this._parent[pe]=Ne,this._children[pe]={},this._children[Ne][pe]=!0),this._in[pe]={},this._preds[pe]={},this._out[pe]={},this._sucs[pe]={},++this._nodeCount,this)},_e.prototype.node=function(pe){return this._nodes[pe]},_e.prototype.hasNode=function(pe){return Oe.has(this._nodes,pe)},_e.prototype.removeNode=function(pe){var Ae=this;if(Oe.has(this._nodes,pe)){var Se=function(ce){Ae.removeEdge(Ae._edgeObjs[ce])};delete this._nodes[pe],this._isCompound&&(this._removeFromParentsChildList(pe),delete this._parent[pe],Oe.each(this.children(pe),function(ce){Ae.setParent(ce)}),delete this._children[pe]),Oe.each(Oe.keys(this._in[pe]),Se),delete this._in[pe],delete this._preds[pe],Oe.each(Oe.keys(this._out[pe]),Se),delete this._out[pe],delete this._sucs[pe],--this._nodeCount}return this},_e.prototype.setParent=function(pe,Ae){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(Oe.isUndefined(Ae))Ae=Ne;else{Ae+="";for(var Se=Ae;!Oe.isUndefined(Se);Se=this.parent(Se))if(Se===pe)throw new Error("Setting "+Ae+" as parent of "+pe+" would create a cycle");this.setNode(Ae)}return this.setNode(pe),this._removeFromParentsChildList(pe),this._parent[pe]=Ae,this._children[Ae][pe]=!0,this},_e.prototype._removeFromParentsChildList=function(pe){delete this._children[this._parent[pe]][pe]},_e.prototype.parent=function(pe){if(this._isCompound){var Ae=this._parent[pe];if(Ae!==Ne)return Ae}},_e.prototype.children=function(pe){if(Oe.isUndefined(pe)&&(pe=Ne),this._isCompound){var Ae=this._children[pe];if(Ae)return Oe.keys(Ae)}else{if(pe===Ne)return this.nodes();if(this.hasNode(pe))return[]}},_e.prototype.predecessors=function(pe){var Ae=this._preds[pe];if(Ae)return Oe.keys(Ae)},_e.prototype.successors=function(pe){var Ae=this._sucs[pe];if(Ae)return Oe.keys(Ae)},_e.prototype.neighbors=function(pe){var Ae=this.predecessors(pe);if(Ae)return Oe.union(Ae,this.successors(pe))},_e.prototype.isLeaf=function(pe){var Ae;return this.isDirected()?Ae=this.successors(pe):Ae=this.neighbors(pe),Ae.length===0},_e.prototype.filterNodes=function(pe){var Ae=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});Ae.setGraph(this.graph());var Se=this;Oe.each(this._nodes,function(ne,le){pe(le)&&Ae.setNode(le,ne)}),Oe.each(this._edgeObjs,function(ne){Ae.hasNode(ne.v)&&Ae.hasNode(ne.w)&&Ae.setEdge(ne,Se.edge(ne))});var ce={};function te(ne){var le=Se.parent(ne);return le===void 0||Ae.hasNode(le)?(ce[ne]=le,le):le in ce?ce[le]:te(le)}return this._isCompound&&Oe.each(Ae.nodes(),function(ne){Ae.setParent(ne,te(ne))}),Ae},_e.prototype.setDefaultEdgeLabel=function(pe){return Oe.isFunction(pe)||(pe=Oe.constant(pe)),this._defaultEdgeLabelFn=pe,this},_e.prototype.edgeCount=function(){return this._edgeCount},_e.prototype.edges=function(){return Oe.values(this._edgeObjs)},_e.prototype.setPath=function(pe,Ae){var Se=this,ce=arguments;return Oe.reduce(pe,function(te,ne){return ce.length>1?Se.setEdge(te,ne,Ae):Se.setEdge(te,ne),ne}),this},_e.prototype.setEdge=function(){var pe,Ae,Se,ce,te=!1,ne=arguments[0];typeof ne=="object"&&ne!==null&&"v"in ne?(pe=ne.v,Ae=ne.w,Se=ne.name,arguments.length===2&&(ce=arguments[1],te=!0)):(pe=ne,Ae=arguments[1],Se=arguments[3],arguments.length>2&&(ce=arguments[2],te=!0)),pe=""+pe,Ae=""+Ae,Oe.isUndefined(Se)||(Se=""+Se);var le=Ee(this._isDirected,pe,Ae,Se);if(Oe.has(this._edgeLabels,le))return te&&(this._edgeLabels[le]=ce),this;if(!Oe.isUndefined(Se)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(pe),this.setNode(Ae),this._edgeLabels[le]=te?ce:this._defaultEdgeLabelFn(pe,Ae,Se);var se=Pe(this._isDirected,pe,Ae,Se);return pe=se.v,Ae=se.w,Object.freeze(se),this._edgeObjs[le]=se,Me(this._preds[Ae],pe),Me(this._sucs[pe],Ae),this._in[Ae][le]=se,this._out[pe][le]=se,this._edgeCount++,this},_e.prototype.edge=function(pe,Ae,Se){var ce=arguments.length===1?xe(this._isDirected,arguments[0]):Ee(this._isDirected,pe,Ae,Se);return this._edgeLabels[ce]},_e.prototype.hasEdge=function(pe,Ae,Se){var ce=arguments.length===1?xe(this._isDirected,arguments[0]):Ee(this._isDirected,pe,Ae,Se);return Oe.has(this._edgeLabels,ce)},_e.prototype.removeEdge=function(pe,Ae,Se){var ce=arguments.length===1?xe(this._isDirected,arguments[0]):Ee(this._isDirected,pe,Ae,Se),te=this._edgeObjs[ce];return te&&(pe=te.v,Ae=te.w,delete this._edgeLabels[ce],delete this._edgeObjs[ce],ve(this._preds[Ae],pe),ve(this._sucs[pe],Ae),delete this._in[Ae][ce],delete this._out[pe][ce],this._edgeCount--),this},_e.prototype.inEdges=function(pe,Ae){var Se=this._in[pe];if(Se){var ce=Oe.values(Se);return Ae?Oe.filter(ce,function(te){return te.v===Ae}):ce}},_e.prototype.outEdges=function(pe,Ae){var Se=this._out[pe];if(Se){var ce=Oe.values(Se);return Ae?Oe.filter(ce,function(te){return te.w===Ae}):ce}},_e.prototype.nodeEdges=function(pe,Ae){var Se=this.inEdges(pe,Ae);if(Se)return Se.concat(this.outEdges(pe,Ae))};function Me(pe,Ae){pe[Ae]?pe[Ae]++:pe[Ae]=1}function ve(pe,Ae){--pe[Ae]||delete pe[Ae]}function Ee(pe,Ae,Se,ce){var te=""+Ae,ne=""+Se;if(!pe&&te>ne){var le=te;te=ne,ne=le}return te+be+ne+be+(Oe.isUndefined(ce)?He:ce)}function Pe(pe,Ae,Se,ce){var te=""+Ae,ne=""+Se;if(!pe&&te>ne){var le=te;te=ne,ne=le}var se={v:te,w:ne};return ce&&(se.name=ce),se}function xe(pe,Ae){return Ee(pe,Ae.v,Ae.w,Ae.name)}},89224:function(At,It,Te){At.exports={Graph:Te(6349),version:Te(16544)}},17401:function(At,It,Te){var Oe=Te(95329),He=Te(6349);At.exports={write:Ne,read:Me};function Ne(ve){var Ee={options:{directed:ve.isDirected(),multigraph:ve.isMultigraph(),compound:ve.isCompound()},nodes:be(ve),edges:_e(ve)};return Oe.isUndefined(ve.graph())||(Ee.value=Oe.clone(ve.graph())),Ee}function be(ve){return Oe.map(ve.nodes(),function(Ee){var Pe=ve.node(Ee),xe=ve.parent(Ee),pe={v:Ee};return Oe.isUndefined(Pe)||(pe.value=Pe),Oe.isUndefined(xe)||(pe.parent=xe),pe})}function _e(ve){return Oe.map(ve.edges(),function(Ee){var Pe=ve.edge(Ee),xe={v:Ee.v,w:Ee.w};return Oe.isUndefined(Ee.name)||(xe.name=Ee.name),Oe.isUndefined(Pe)||(xe.value=Pe),xe})}function Me(ve){var Ee=new He(ve.options).setGraph(ve.value);return Oe.each(ve.nodes,function(Pe){Ee.setNode(Pe.v,Pe.value),Pe.parent&&Ee.setParent(Pe.v,Pe.parent)}),Oe.each(ve.edges,function(Pe){Ee.setEdge({v:Pe.v,w:Pe.w,name:Pe.name},Pe.value)}),Ee}},95329:function(At,It,Te){var Oe;try{Oe={clone:Te(76833),constant:Te(13503),each:Te(76934),filter:Te(64725),has:Te(99946),isArray:Te(80744),isEmpty:Te(61627),isFunction:Te(9363),isUndefined:Te(16513),keys:Te(55451),map:Te(9924),reduce:Te(16473),size:Te(40617),transform:Te(91116),union:Te(44065),values:Te(81229)}}catch(He){}Oe||(Oe=window._),At.exports=Oe},16544:function(At){At.exports="2.1.8"},34634:function(At,It,Te){"use strict";Te.r(It),Te.d(It,{isAnyArray:function(){return He}});const Oe=Object.prototype.toString;function He(Ne){const be=Oe.call(Ne);return be.endsWith("Array]")&&!be.includes("Big")}},55973:function(At){At.exports=function(Te){return!Te||typeof Te=="string"?!1:Te instanceof Array||Array.isArray(Te)||Te.length>=0&&(Te.splice instanceof Function||Object.getOwnPropertyDescriptor(Te,Te.length-1)&&Te.constructor.name!=="String")}},15584:function(At,It,Te){var Oe=Te(73893),He=Te(33152),Ne=Oe(He,"DataView");At.exports=Ne},97288:function(At,It,Te){var Oe=Te(73893),He=Te(33152),Ne=Oe(He,"Promise");At.exports=Ne},23599:function(At,It,Te){var Oe=Te(73893),He=Te(33152),Ne=Oe(He,"Set");At.exports=Ne},98924:function(At,It,Te){var Oe=Te(52166),He=Te(34776),Ne=Te(40393);function be(_e){var Me=-1,ve=_e==null?0:_e.length;for(this.__data__=new Oe;++Me<ve;)this.add(_e[Me])}be.prototype.add=be.prototype.push=He,be.prototype.has=Ne,At.exports=be},26873:function(At,It,Te){var Oe=Te(73893),He=Te(33152),Ne=Oe(He,"WeakMap");At.exports=Ne},74809:function(At){function It(Te,Oe){for(var He=-1,Ne=Te==null?0:Te.length;++He<Ne&&Oe(Te[He],He,Te)!==!1;);return Te}At.exports=It},86952:function(At){function It(Te,Oe){for(var He=-1,Ne=Te==null?0:Te.length,be=0,_e=[];++He<Ne;){var Me=Te[He];Oe(Me,He,Te)&&(_e[be++]=Me)}return _e}At.exports=It},84271:function(At,It,Te){var Oe=Te(17424);function He(Ne,be){var _e=Ne==null?0:Ne.length;return!!_e&&Oe(Ne,be,0)>-1}At.exports=He},94874:function(At){function It(Te,Oe,He){for(var Ne=-1,be=Te==null?0:Te.length;++Ne<be;)if(He(Oe,Te[Ne]))return!0;return!1}At.exports=It},75010:function(At){function It(Te,Oe){for(var He=-1,Ne=Te==null?0:Te.length,be=Array(Ne);++He<Ne;)be[He]=Oe(Te[He],He,Te);return be}At.exports=It},57095:function(At){function It(Te,Oe){for(var He=-1,Ne=Oe.length,be=Te.length;++He<Ne;)Te[be+He]=Oe[He];return Te}At.exports=It},99861:function(At){function It(Te,Oe,He,Ne){var be=-1,_e=Te==null?0:Te.length;for(Ne&&_e&&(He=Te[++be]);++be<_e;)He=Oe(He,Te[be],be,Te);return He}At.exports=It},64045:function(At){function It(Te,Oe){for(var He=-1,Ne=Te==null?0:Te.length;++He<Ne;)if(Oe(Te[He],He,Te))return!0;return!1}At.exports=It},26539:function(At,It,Te){var Oe=Te(22310),He=Oe("length");At.exports=He},91937:function(At,It,Te){var Oe=Te(95378),He=Te(55451);function Ne(be,_e){return be&&Oe(_e,He(_e),be)}At.exports=Ne},26680:function(At,It,Te){var Oe=Te(95378),He=Te(56730);function Ne(be,_e){return be&&Oe(_e,He(_e),be)}At.exports=Ne},99045:function(At,It,Te){var Oe=Te(91866),He=Te(74809),Ne=Te(60348),be=Te(91937),_e=Te(26680),Me=Te(32315),ve=Te(47760),Ee=Te(15168),Pe=Te(71678),xe=Te(12076),pe=Te(22675),Ae=Te(66139),Se=Te(79264),ce=Te(97541),te=Te(4084),ne=Te(80744),le=Te(57835),se=Te(41626),fe=Te(20816),he=Te(65226),ie=Te(55451),ue=Te(56730),me=1,Ce=2,Ie=4,Fe="[object Arguments]",Re="[object Array]",Ue="[object Boolean]",Ge="[object Date]",Je="[object Error]",Qe="[object Function]",rt="[object GeneratorFunction]",$e="[object Map]",qe="[object Number]",ot="[object Object]",at="[object RegExp]",ut="[object Set]",nt="[object String]",lt="[object Symbol]",yt="[object WeakMap]",ft="[object ArrayBuffer]",ct="[object DataView]",vt="[object Float32Array]",Ut="[object Float64Array]",Zt="[object Int8Array]",en="[object Int16Array]",mn="[object Int32Array]",Bt="[object Uint8Array]",tn="[object Uint8ClampedArray]",on="[object Uint16Array]",Mn="[object Uint32Array]",Dn={};Dn[Fe]=Dn[Re]=Dn[ft]=Dn[ct]=Dn[Ue]=Dn[Ge]=Dn[vt]=Dn[Ut]=Dn[Zt]=Dn[en]=Dn[mn]=Dn[$e]=Dn[qe]=Dn[ot]=Dn[at]=Dn[ut]=Dn[nt]=Dn[lt]=Dn[Bt]=Dn[tn]=Dn[on]=Dn[Mn]=!0,Dn[Je]=Dn[Qe]=Dn[yt]=!1;function sn(rn,Ht,Tt,St,Qt,gt){var bt,Yt=Ht&me,kt=Ht&Ce,Mt=Ht&Ie;if(Tt&&(bt=Qt?Tt(rn,St,Qt,gt):Tt(rn)),bt!==void 0)return bt;if(!fe(rn))return rn;var ln=ne(rn);if(ln){if(bt=Se(rn),!Yt)return ve(rn,bt)}else{var zn=Ae(rn),Gn=zn==Qe||zn==rt;if(le(rn))return Me(rn,Yt);if(zn==ot||zn==Fe||Gn&&!Qt){if(bt=kt||Gn?{}:te(rn),!Yt)return kt?Pe(rn,_e(bt,rn)):Ee(rn,be(bt,rn))}else{if(!Dn[zn])return Qt?rn:{};bt=ce(rn,zn,Yt)}}gt||(gt=new Oe);var Hn=gt.get(rn);if(Hn)return Hn;gt.set(rn,bt),he(rn)?rn.forEach(function(qt){bt.add(sn(qt,Ht,Tt,qt,rn,gt))}):se(rn)&&rn.forEach(function(qt,vn){bt.set(vn,sn(qt,Ht,Tt,vn,rn,gt))});var nr=Mt?kt?pe:xe:kt?ue:ie,Xn=ln?void 0:nr(rn);return He(Xn||rn,function(qt,vn){Xn&&(vn=qt,qt=rn[vn]),Ne(bt,vn,sn(qt,Ht,Tt,vn,rn,gt))}),bt}At.exports=sn},44107:function(At,It,Te){var Oe=Te(85605),He=Te(49164),Ne=He(Oe);At.exports=Ne},2659:function(At,It,Te){var Oe=Te(45029);function He(Ne,be,_e){for(var Me=-1,ve=Ne.length;++Me<ve;){var Ee=Ne[Me],Pe=be(Ee);if(Pe!=null&&(xe===void 0?Pe===Pe&&!Oe(Pe):_e(Pe,xe)))var xe=Pe,pe=Ee}return pe}At.exports=He},32872:function(At,It,Te){var Oe=Te(44107);function He(Ne,be){var _e=[];return Oe(Ne,function(Me,ve,Ee){be(Me,ve,Ee)&&_e.push(Me)}),_e}At.exports=He},51533:function(At){function It(Te,Oe,He,Ne){for(var be=Te.length,_e=He+(Ne?1:-1);Ne?_e--:++_e<be;)if(Oe(Te[_e],_e,Te))return _e;return-1}At.exports=It},9256:function(At,It,Te){var Oe=Te(57095),He=Te(88133);function Ne(be,_e,Me,ve,Ee){var Pe=-1,xe=be.length;for(Me||(Me=He),Ee||(Ee=[]);++Pe<xe;){var pe=be[Pe];_e>0&&Me(pe)?_e>1?Ne(pe,_e-1,Me,ve,Ee):Oe(Ee,pe):ve||(Ee[Ee.length]=pe)}return Ee}At.exports=Ne},85605:function(At,It,Te){var Oe=Te(14018),He=Te(55451);function Ne(be,_e){return be&&Oe(be,_e,He)}At.exports=Ne},89147:function(At,It,Te){var Oe=Te(1186),He=Te(9171);function Ne(be,_e){_e=Oe(_e,be);for(var Me=0,ve=_e.length;be!=null&&Me<ve;)be=be[He(_e[Me++])];return Me&&Me==ve?be:void 0}At.exports=Ne},75635:function(At,It,Te){var Oe=Te(57095),He=Te(80744);function Ne(be,_e,Me){var ve=_e(be);return He(be)?ve:Oe(ve,Me(be))}At.exports=Ne},40302:function(At){function It(Te,Oe){return Te>Oe}At.exports=It},3251:function(At){var It=Object.prototype,Te=It.hasOwnProperty;function Oe(He,Ne){return He!=null&&Te.call(He,Ne)}At.exports=Oe},62348:function(At){function It(Te,Oe){return Te!=null&&Oe in Object(Te)}At.exports=It},17424:function(At,It,Te){var Oe=Te(51533),He=Te(8373),Ne=Te(49237);function be(_e,Me,ve){return Me===Me?Ne(_e,Me,ve):Oe(_e,He,ve)}At.exports=be},77295:function(At,It,Te){var Oe=Te(84412),He=Te(93913);function Ne(be,_e,Me,ve,Ee){return be===_e?!0:be==null||_e==null||!He(be)&&!He(_e)?be!==be&&_e!==_e:Oe(be,_e,Me,ve,Ne,Ee)}At.exports=Ne},84412:function(At,It,Te){var Oe=Te(91866),He=Te(50401),Ne=Te(57710),be=Te(4983),_e=Te(66139),Me=Te(80744),ve=Te(57835),Ee=Te(18397),Pe=1,xe="[object Arguments]",pe="[object Array]",Ae="[object Object]",Se=Object.prototype,ce=Se.hasOwnProperty;function te(ne,le,se,fe,he,ie){var ue=Me(ne),me=Me(le),Ce=ue?pe:_e(ne),Ie=me?pe:_e(le);Ce=Ce==xe?Ae:Ce,Ie=Ie==xe?Ae:Ie;var Fe=Ce==Ae,Re=Ie==Ae,Ue=Ce==Ie;if(Ue&&ve(ne)){if(!ve(le))return!1;ue=!0,Fe=!1}if(Ue&&!Fe)return ie||(ie=new Oe),ue||Ee(ne)?He(ne,le,se,fe,he,ie):Ne(ne,le,Ce,se,fe,he,ie);if(!(se&Pe)){var Ge=Fe&&ce.call(ne,"__wrapped__"),Je=Re&&ce.call(le,"__wrapped__");if(Ge||Je){var Qe=Ge?ne.value():ne,rt=Je?le.value():le;return ie||(ie=new Oe),he(Qe,rt,se,fe,ie)}}return Ue?(ie||(ie=new Oe),be(ne,le,se,fe,he,ie)):!1}At.exports=te},55005:function(At,It,Te){var Oe=Te(66139),He=Te(93913),Ne="[object Map]";function be(_e){return He(_e)&&Oe(_e)==Ne}At.exports=be},51524:function(At,It,Te){var Oe=Te(91866),He=Te(77295),Ne=1,be=2;function _e(Me,ve,Ee,Pe){var xe=Ee.length,pe=xe,Ae=!Pe;if(Me==null)return!pe;for(Me=Object(Me);xe--;){var Se=Ee[xe];if(Ae&&Se[2]?Se[1]!==Me[Se[0]]:!(Se[0]in Me))return!1}for(;++xe<pe;){Se=Ee[xe];var ce=Se[0],te=Me[ce],ne=Se[1];if(Ae&&Se[2]){if(te===void 0&&!(ce in Me))return!1}else{var le=new Oe;if(Pe)var se=Pe(te,ne,ce,Me,ve,le);if(!(se===void 0?He(ne,te,Ne|be,Pe,le):se))return!1}}return!0}At.exports=_e},8373:function(At){function It(Te){return Te!==Te}At.exports=It},38652:function(At,It,Te){var Oe=Te(66139),He=Te(93913),Ne="[object Set]";function be(_e){return He(_e)&&Oe(_e)==Ne}At.exports=be},95979:function(At,It,Te){var Oe=Te(17632),He=Te(38933),Ne=Te(46962),be=Te(80744),_e=Te(35769);function Me(ve){return typeof ve=="function"?ve:ve==null?Ne:typeof ve=="object"?be(ve)?He(ve[0],ve[1]):Oe(ve):_e(ve)}At.exports=Me},6019:function(At,It,Te){var Oe=Te(7975),He=Te(23730),Ne=Object.prototype,be=Ne.hasOwnProperty;function _e(Me){if(!Oe(Me))return He(Me);var ve=[];for(var Ee in Object(Me))be.call(Me,Ee)&&Ee!="constructor"&&ve.push(Ee);return ve}At.exports=_e},93757:function(At){function It(Te,Oe){return Te<Oe}At.exports=It},65487:function(At,It,Te){var Oe=Te(44107),He=Te(24665);function Ne(be,_e){var Me=-1,ve=He(be)?Array(be.length):[];return Oe(be,function(Ee,Pe,xe){ve[++Me]=_e(Ee,Pe,xe)}),ve}At.exports=Ne},17632:function(At,It,Te){var Oe=Te(51524),He=Te(10261),Ne=Te(24122);function be(_e){var Me=He(_e);return Me.length==1&&Me[0][2]?Ne(Me[0][0],Me[0][1]):function(ve){return ve===_e||Oe(ve,_e,Me)}}At.exports=be},38933:function(At,It,Te){var Oe=Te(77295),He=Te(44231),Ne=Te(37879),be=Te(86773),_e=Te(88411),Me=Te(24122),ve=Te(9171),Ee=1,Pe=2;function xe(pe,Ae){return be(pe)&&_e(Ae)?Me(ve(pe),Ae):function(Se){var ce=He(Se,pe);return ce===void 0&&ce===Ae?Ne(Se,pe):Oe(Ae,ce,Ee|Pe)}}At.exports=xe},58506:function(At,It,Te){var Oe=Te(75010),He=Te(89147),Ne=Te(95979),be=Te(65487),_e=Te(33065),Me=Te(38342),ve=Te(11249),Ee=Te(46962),Pe=Te(80744);function xe(pe,Ae,Se){Ae.length?Ae=Oe(Ae,function(ne){return Pe(ne)?function(le){return He(le,ne.length===1?ne[0]:ne)}:ne}):Ae=[Ee];var ce=-1;Ae=Oe(Ae,Me(Ne));var te=be(pe,function(ne,le,se){var fe=Oe(Ae,function(he){return he(ne)});return{criteria:fe,index:++ce,value:ne}});return _e(te,function(ne,le){return ve(ne,le,Se)})}At.exports=xe},88832:function(At,It,Te){var Oe=Te(10867),He=Te(37879);function Ne(be,_e){return Oe(be,_e,function(Me,ve){return He(be,ve)})}At.exports=Ne},10867:function(At,It,Te){var Oe=Te(89147),He=Te(36897),Ne=Te(1186);function be(_e,Me,ve){for(var Ee=-1,Pe=Me.length,xe={};++Ee<Pe;){var pe=Me[Ee],Ae=Oe(_e,pe);ve(Ae,pe)&&He(xe,Ne(pe,_e),Ae)}return xe}At.exports=be},22310:function(At){function It(Te){return function(Oe){return Oe==null?void 0:Oe[Te]}}At.exports=It},96916:function(At,It,Te){var Oe=Te(89147);function He(Ne){return function(be){return Oe(be,Ne)}}At.exports=He},36121:function(At){var It=Math.ceil,Te=Math.max;function Oe(He,Ne,be,_e){for(var Me=-1,ve=Te(It((Ne-He)/(be||1)),0),Ee=Array(ve);ve--;)Ee[_e?ve:++Me]=He,He+=be;return Ee}At.exports=Oe},30739:function(At){function It(Te,Oe,He,Ne,be){return be(Te,function(_e,Me,ve){He=Ne?(Ne=!1,_e):Oe(He,_e,Me,ve)}),He}At.exports=It},36897:function(At,It,Te){var Oe=Te(60348),He=Te(1186),Ne=Te(70213),be=Te(20816),_e=Te(9171);function Me(ve,Ee,Pe,xe){if(!be(ve))return ve;Ee=He(Ee,ve);for(var pe=-1,Ae=Ee.length,Se=Ae-1,ce=ve;ce!=null&&++pe<Ae;){var te=_e(Ee[pe]),ne=Pe;if(te==="__proto__"||te==="constructor"||te==="prototype")return ve;if(pe!=Se){var le=ce[te];ne=xe?xe(le,te,ce):void 0,ne===void 0&&(ne=be(le)?le:Ne(Ee[pe+1])?[]:{})}Oe(ce,te,ne),ce=ce[te]}return ve}At.exports=Me},33065:function(At){function It(Te,Oe){var He=Te.length;for(Te.sort(Oe);He--;)Te[He]=Te[He].value;return Te}At.exports=It},50230:function(At,It,Te){var Oe=Te(91869),He=Te(75010),Ne=Te(80744),be=Te(45029),_e=1/0,Me=Oe?Oe.prototype:void 0,ve=Me?Me.toString:void 0;function Ee(Pe){if(typeof Pe=="string")return Pe;if(Ne(Pe))return He(Pe,Ee)+"";if(be(Pe))return ve?ve.call(Pe):"";var xe=Pe+"";return xe=="0"&&1/Pe==-_e?"-0":xe}At.exports=Ee},13927:function(At,It,Te){var Oe=Te(15333),He=/^\s+/;function Ne(be){return be&&be.slice(0,Oe(be)+1).replace(He,"")}At.exports=Ne},29098:function(At,It,Te){var Oe=Te(98924),He=Te(84271),Ne=Te(94874),be=Te(1931),_e=Te(47506),Me=Te(79679),ve=200;function Ee(Pe,xe,pe){var Ae=-1,Se=He,ce=Pe.length,te=!0,ne=[],le=ne;if(pe)te=!1,Se=Ne;else if(ce>=ve){var se=xe?null:_e(Pe);if(se)return Me(se);te=!1,Se=be,le=new Oe}else le=xe?[]:ne;e:for(;++Ae<ce;){var fe=Pe[Ae],he=xe?xe(fe):fe;if(fe=pe||fe!==0?fe:0,te&&he===he){for(var ie=le.length;ie--;)if(le[ie]===he)continue e;xe&&le.push(he),ne.push(fe)}else Se(le,he,pe)||(le!==ne&&le.push(he),ne.push(fe))}return ne}At.exports=Ee},20720:function(At,It,Te){var Oe=Te(75010);function He(Ne,be){return Oe(be,function(_e){return Ne[_e]})}At.exports=He},94484:function(At){function It(Te,Oe,He){for(var Ne=-1,be=Te.length,_e=Oe.length,Me={};++Ne<be;){var ve=Ne<_e?Oe[Ne]:void 0;He(Me,Te[Ne],ve)}return Me}At.exports=It},1931:function(At){function It(Te,Oe){return Te.has(Oe)}At.exports=It},11756:function(At,It,Te){var Oe=Te(46962);function He(Ne){return typeof Ne=="function"?Ne:Oe}At.exports=He},1186:function(At,It,Te){var Oe=Te(80744),He=Te(86773),Ne=Te(40493),be=Te(44140);function _e(Me,ve){return Oe(Me)?Me:He(Me,ve)?[Me]:Ne(be(Me))}At.exports=_e},27984:function(At,It,Te){var Oe=Te(20188);function He(Ne,be){var _e=be?Oe(Ne.buffer):Ne.buffer;return new Ne.constructor(_e,Ne.byteOffset,Ne.byteLength)}At.exports=He},78583:function(At){var It=/\w*$/;function Te(Oe){var He=new Oe.constructor(Oe.source,It.exec(Oe));return He.lastIndex=Oe.lastIndex,He}At.exports=Te},28757:function(At,It,Te){var Oe=Te(91869),He=Oe?Oe.prototype:void 0,Ne=He?He.valueOf:void 0;function be(_e){return Ne?Object(Ne.call(_e)):{}}At.exports=be},83018:function(At,It,Te){var Oe=Te(45029);function He(Ne,be){if(Ne!==be){var _e=Ne!==void 0,Me=Ne===null,ve=Ne===Ne,Ee=Oe(Ne),Pe=be!==void 0,xe=be===null,pe=be===be,Ae=Oe(be);if(!xe&&!Ae&&!Ee&&Ne>be||Ee&&Pe&&pe&&!xe&&!Ae||Me&&Pe&&pe||!_e&&pe||!ve)return 1;if(!Me&&!Ee&&!Ae&&Ne<be||Ae&&_e&&ve&&!Me&&!Ee||xe&&_e&&ve||!Pe&&ve||!pe)return-1}return 0}At.exports=He},11249:function(At,It,Te){var Oe=Te(83018);function He(Ne,be,_e){for(var Me=-1,ve=Ne.criteria,Ee=be.criteria,Pe=ve.length,xe=_e.length;++Me<Pe;){var pe=Oe(ve[Me],Ee[Me]);if(pe){if(Me>=xe)return pe;var Ae=_e[Me];return pe*(Ae=="desc"?-1:1)}}return Ne.index-be.index}At.exports=He},15168:function(At,It,Te){var Oe=Te(95378),He=Te(58966);function Ne(be,_e){return Oe(be,He(be),_e)}At.exports=Ne},71678:function(At,It,Te){var Oe=Te(95378),He=Te(66817);function Ne(be,_e){return Oe(be,He(be),_e)}At.exports=Ne},49164:function(At,It,Te){var Oe=Te(24665);function He(Ne,be){return function(_e,Me){if(_e==null)return _e;if(!Oe(_e))return Ne(_e,Me);for(var ve=_e.length,Ee=be?ve:-1,Pe=Object(_e);(be?Ee--:++Ee<ve)&&Me(Pe[Ee],Ee,Pe)!==!1;);return _e}}At.exports=He},19554:function(At,It,Te){var Oe=Te(95979),He=Te(24665),Ne=Te(55451);function be(_e){return function(Me,ve,Ee){var Pe=Object(Me);if(!He(Me)){var xe=Oe(ve,3);Me=Ne(Me),ve=function(Ae){return xe(Pe[Ae],Ae,Pe)}}var pe=_e(Me,ve,Ee);return pe>-1?Pe[xe?Me[pe]:pe]:void 0}}At.exports=be},76106:function(At,It,Te){var Oe=Te(36121),He=Te(8138),Ne=Te(97341);function be(_e){return function(Me,ve,Ee){return Ee&&typeof Ee!="number"&&He(Me,ve,Ee)&&(ve=Ee=void 0),Me=Ne(Me),ve===void 0?(ve=Me,Me=0):ve=Ne(ve),Ee=Ee===void 0?Me<ve?1:-1:Ne(Ee),Oe(Me,ve,Ee,_e)}}At.exports=be},47506:function(At,It,Te){var Oe=Te(23599),He=Te(9958),Ne=Te(79679),be=1/0,_e=Oe&&1/Ne(new Oe([,-0]))[1]==be?function(Me){return new Oe(Me)}:He;At.exports=_e},50401:function(At,It,Te){var Oe=Te(98924),He=Te(64045),Ne=Te(1931),be=1,_e=2;function Me(ve,Ee,Pe,xe,pe,Ae){var Se=Pe&be,ce=ve.length,te=Ee.length;if(ce!=te&&!(Se&&te>ce))return!1;var ne=Ae.get(ve),le=Ae.get(Ee);if(ne&&le)return ne==Ee&&le==ve;var se=-1,fe=!0,he=Pe&_e?new Oe:void 0;for(Ae.set(ve,Ee),Ae.set(Ee,ve);++se<ce;){var ie=ve[se],ue=Ee[se];if(xe)var me=Se?xe(ue,ie,se,Ee,ve,Ae):xe(ie,ue,se,ve,Ee,Ae);if(me!==void 0){if(me)continue;fe=!1;break}if(he){if(!He(Ee,function(Ce,Ie){if(!Ne(he,Ie)&&(ie===Ce||pe(ie,Ce,Pe,xe,Ae)))return he.push(Ie)})){fe=!1;break}}else if(!(ie===ue||pe(ie,ue,Pe,xe,Ae))){fe=!1;break}}return Ae.delete(ve),Ae.delete(Ee),fe}At.exports=Me},57710:function(At,It,Te){var Oe=Te(91869),He=Te(77945),Ne=Te(43607),be=Te(50401),_e=Te(83383),Me=Te(79679),ve=1,Ee=2,Pe="[object Boolean]",xe="[object Date]",pe="[object Error]",Ae="[object Map]",Se="[object Number]",ce="[object RegExp]",te="[object Set]",ne="[object String]",le="[object Symbol]",se="[object ArrayBuffer]",fe="[object DataView]",he=Oe?Oe.prototype:void 0,ie=he?he.valueOf:void 0;function ue(me,Ce,Ie,Fe,Re,Ue,Ge){switch(Ie){case fe:if(me.byteLength!=Ce.byteLength||me.byteOffset!=Ce.byteOffset)return!1;me=me.buffer,Ce=Ce.buffer;case se:return!(me.byteLength!=Ce.byteLength||!Ue(new He(me),new He(Ce)));case Pe:case xe:case Se:return Ne(+me,+Ce);case pe:return me.name==Ce.name&&me.message==Ce.message;case ce:case ne:return me==Ce+"";case Ae:var Je=_e;case te:var Qe=Fe&ve;if(Je||(Je=Me),me.size!=Ce.size&&!Qe)return!1;var rt=Ge.get(me);if(rt)return rt==Ce;Fe|=Ee,Ge.set(me,Ce);var $e=be(Je(me),Je(Ce),Fe,Re,Ue,Ge);return Ge.delete(me),$e;case le:if(ie)return ie.call(me)==ie.call(Ce)}return!1}At.exports=ue},4983:function(At,It,Te){var Oe=Te(12076),He=1,Ne=Object.prototype,be=Ne.hasOwnProperty;function _e(Me,ve,Ee,Pe,xe,pe){var Ae=Ee&He,Se=Oe(Me),ce=Se.length,te=Oe(ve),ne=te.length;if(ce!=ne&&!Ae)return!1;for(var le=ce;le--;){var se=Se[le];if(!(Ae?se in ve:be.call(ve,se)))return!1}var fe=pe.get(Me),he=pe.get(ve);if(fe&&he)return fe==ve&&he==Me;var ie=!0;pe.set(Me,ve),pe.set(ve,Me);for(var ue=Ae;++le<ce;){se=Se[le];var me=Me[se],Ce=ve[se];if(Pe)var Ie=Ae?Pe(Ce,me,se,ve,Me,pe):Pe(me,Ce,se,Me,ve,pe);if(!(Ie===void 0?me===Ce||xe(me,Ce,Ee,Pe,pe):Ie)){ie=!1;break}ue||(ue=se=="constructor")}if(ie&&!ue){var Fe=Me.constructor,Re=ve.constructor;Fe!=Re&&"constructor"in Me&&"constructor"in ve&&!(typeof Fe=="function"&&Fe instanceof Fe&&typeof Re=="function"&&Re instanceof Re)&&(ie=!1)}return pe.delete(Me),pe.delete(ve),ie}At.exports=_e},522:function(At,It,Te){var Oe=Te(40151),He=Te(19652),Ne=Te(71152);function be(_e){return Ne(He(_e,void 0,Oe),_e+"")}At.exports=be},12076:function(At,It,Te){var Oe=Te(75635),He=Te(58966),Ne=Te(55451);function be(_e){return Oe(_e,Ne,He)}At.exports=be},22675:function(At,It,Te){var Oe=Te(75635),He=Te(66817),Ne=Te(56730);function be(_e){return Oe(_e,Ne,He)}At.exports=be},10261:function(At,It,Te){var Oe=Te(88411),He=Te(55451);function Ne(be){for(var _e=He(be),Me=_e.length;Me--;){var ve=_e[Me],Ee=be[ve];_e[Me]=[ve,Ee,Oe(Ee)]}return _e}At.exports=Ne},58966:function(At,It,Te){var Oe=Te(86952),He=Te(4134),Ne=Object.prototype,be=Ne.propertyIsEnumerable,_e=Object.getOwnPropertySymbols,Me=_e?function(ve){return ve==null?[]:(ve=Object(ve),Oe(_e(ve),function(Ee){return be.call(ve,Ee)}))}:He;At.exports=Me},66817:function(At,It,Te){var Oe=Te(57095),He=Te(49217),Ne=Te(58966),be=Te(4134),_e=Object.getOwnPropertySymbols,Me=_e?function(ve){for(var Ee=[];ve;)Oe(Ee,Ne(ve)),ve=He(ve);return Ee}:be;At.exports=Me},66139:function(At,It,Te){var Oe=Te(15584),He=Te(40164),Ne=Te(97288),be=Te(23599),_e=Te(26873),Me=Te(86756),ve=Te(63256),Ee="[object Map]",Pe="[object Object]",xe="[object Promise]",pe="[object Set]",Ae="[object WeakMap]",Se="[object DataView]",ce=ve(Oe),te=ve(He),ne=ve(Ne),le=ve(be),se=ve(_e),fe=Me;(Oe&&fe(new Oe(new ArrayBuffer(1)))!=Se||He&&fe(new He)!=Ee||Ne&&fe(Ne.resolve())!=xe||be&&fe(new be)!=pe||_e&&fe(new _e)!=Ae)&&(fe=function(he){var ie=Me(he),ue=ie==Pe?he.constructor:void 0,me=ue?ve(ue):"";if(me)switch(me){case ce:return Se;case te:return Ee;case ne:return xe;case le:return pe;case se:return Ae}return ie}),At.exports=fe},63100:function(At,It,Te){var Oe=Te(1186),He=Te(13053),Ne=Te(80744),be=Te(70213),_e=Te(11156),Me=Te(9171);function ve(Ee,Pe,xe){Pe=Oe(Pe,Ee);for(var pe=-1,Ae=Pe.length,Se=!1;++pe<Ae;){var ce=Me(Pe[pe]);if(!(Se=Ee!=null&&xe(Ee,ce)))break;Ee=Ee[ce]}return Se||++pe!=Ae?Se:(Ae=Ee==null?0:Ee.length,!!Ae&&_e(Ae)&&be(ce,Ae)&&(Ne(Ee)||He(Ee)))}At.exports=ve},55015:function(At){var It="\\ud800-\\udfff",Te="\\u0300-\\u036f",Oe="\\ufe20-\\ufe2f",He="\\u20d0-\\u20ff",Ne=Te+Oe+He,be="\\ufe0e\\ufe0f",_e="\\u200d",Me=RegExp("["+_e+It+Ne+be+"]");function ve(Ee){return Me.test(Ee)}At.exports=ve},79264:function(At){var It=Object.prototype,Te=It.hasOwnProperty;function Oe(He){var Ne=He.length,be=new He.constructor(Ne);return Ne&&typeof He[0]=="string"&&Te.call(He,"index")&&(be.index=He.index,be.input=He.input),be}At.exports=Oe},97541:function(At,It,Te){var Oe=Te(20188),He=Te(27984),Ne=Te(78583),be=Te(28757),_e=Te(78358),Me="[object Boolean]",ve="[object Date]",Ee="[object Map]",Pe="[object Number]",xe="[object RegExp]",pe="[object Set]",Ae="[object String]",Se="[object Symbol]",ce="[object ArrayBuffer]",te="[object DataView]",ne="[object Float32Array]",le="[object Float64Array]",se="[object Int8Array]",fe="[object Int16Array]",he="[object Int32Array]",ie="[object Uint8Array]",ue="[object Uint8ClampedArray]",me="[object Uint16Array]",Ce="[object Uint32Array]";function Ie(Fe,Re,Ue){var Ge=Fe.constructor;switch(Re){case ce:return Oe(Fe);case Me:case ve:return new Ge(+Fe);case te:return He(Fe,Ue);case ne:case le:case se:case fe:case he:case ie:case ue:case me:case Ce:return _e(Fe,Ue);case Ee:return new Ge;case Pe:case Ae:return new Ge(Fe);case xe:return Ne(Fe);case pe:return new Ge;case Se:return be(Fe)}}At.exports=Ie},88133:function(At,It,Te){var Oe=Te(91869),He=Te(13053),Ne=Te(80744),be=Oe?Oe.isConcatSpreadable:void 0;function _e(Me){return Ne(Me)||He(Me)||!!(be&&Me&&Me[be])}At.exports=_e},86773:function(At,It,Te){var Oe=Te(80744),He=Te(45029),Ne=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,be=/^\w*$/;function _e(Me,ve){if(Oe(Me))return!1;var Ee=typeof Me;return Ee=="number"||Ee=="symbol"||Ee=="boolean"||Me==null||He(Me)?!0:be.test(Me)||!Ne.test(Me)||ve!=null&&Me in Object(ve)}At.exports=_e},88411:function(At,It,Te){var Oe=Te(20816);function He(Ne){return Ne===Ne&&!Oe(Ne)}At.exports=He},83383:function(At){function It(Te){var Oe=-1,He=Array(Te.size);return Te.forEach(function(Ne,be){He[++Oe]=[be,Ne]}),He}At.exports=It},24122:function(At){function It(Te,Oe){return function(He){return He==null?!1:He[Te]===Oe&&(Oe!==void 0||Te in Object(He))}}At.exports=It},26332:function(At,It,Te){var Oe=Te(52858),He=500;function Ne(be){var _e=Oe(be,function(ve){return Me.size===He&&Me.clear(),ve}),Me=_e.cache;return _e}At.exports=Ne},23730:function(At,It,Te){var Oe=Te(31030),He=Oe(Object.keys,Object);At.exports=He},34776:function(At){var It="__lodash_hash_undefined__";function Te(Oe){return this.__data__.set(Oe,It),this}At.exports=Te},40393:function(At){function It(Te){return this.__data__.has(Te)}At.exports=It},79679:function(At){function It(Te){var Oe=-1,He=Array(Te.size);return Te.forEach(function(Ne){He[++Oe]=Ne}),He}At.exports=It},49237:function(At){function It(Te,Oe,He){for(var Ne=He-1,be=Te.length;++Ne<be;)if(Te[Ne]===Oe)return Ne;return-1}At.exports=It},29405:function(At,It,Te){var Oe=Te(26539),He=Te(55015),Ne=Te(60844);function be(_e){return He(_e)?Ne(_e):Oe(_e)}At.exports=be},40493:function(At,It,Te){var Oe=Te(26332),He=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Ne=/\\(\\)?/g,be=Oe(function(_e){var Me=[];return _e.charCodeAt(0)===46&&Me.push(""),_e.replace(He,function(ve,Ee,Pe,xe){Me.push(Pe?xe.replace(Ne,"$1"):Ee||ve)}),Me});At.exports=be},9171:function(At,It,Te){var Oe=Te(45029),He=1/0;function Ne(be){if(typeof be=="string"||Oe(be))return be;var _e=be+"";return _e=="0"&&1/be==-He?"-0":_e}At.exports=Ne},15333:function(At){var It=/\s/;function Te(Oe){for(var He=Oe.length;He--&&It.test(Oe.charAt(He)););return He}At.exports=Te},60844:function(At){var It="\\ud800-\\udfff",Te="\\u0300-\\u036f",Oe="\\ufe20-\\ufe2f",He="\\u20d0-\\u20ff",Ne=Te+Oe+He,be="\\ufe0e\\ufe0f",_e="["+It+"]",Me="["+Ne+"]",ve="\\ud83c[\\udffb-\\udfff]",Ee="(?:"+Me+"|"+ve+")",Pe="[^"+It+"]",xe="(?:\\ud83c[\\udde6-\\uddff]){2}",pe="[\\ud800-\\udbff][\\udc00-\\udfff]",Ae="\\u200d",Se=Ee+"?",ce="["+be+"]?",te="(?:"+Ae+"(?:"+[Pe,xe,pe].join("|")+")"+ce+Se+")*",ne=ce+Se+te,le="(?:"+[Pe+Me+"?",Me,xe,pe,_e].join("|")+")",se=RegExp(ve+"(?="+ve+")|"+le+ne,"g");function fe(he){for(var ie=se.lastIndex=0;se.test(he);)++ie;return ie}At.exports=fe},76833:function(At,It,Te){var Oe=Te(99045),He=4;function Ne(be){return Oe(be,He)}At.exports=Ne},20250:function(At,It,Te){var Oe=Te(99045),He=1,Ne=4;function be(_e){return Oe(_e,He|Ne)}At.exports=be},28548:function(At,It,Te){var Oe=Te(92918),He=Te(43607),Ne=Te(8138),be=Te(56730),_e=Object.prototype,Me=_e.hasOwnProperty,ve=Oe(function(Ee,Pe){Ee=Object(Ee);var xe=-1,pe=Pe.length,Ae=pe>2?Pe[2]:void 0;for(Ae&&Ne(Pe[0],Pe[1],Ae)&&(pe=1);++xe<pe;)for(var Se=Pe[xe],ce=be(Se),te=-1,ne=ce.length;++te<ne;){var le=ce[te],se=Ee[le];(se===void 0||He(se,_e[le])&&!Me.call(Ee,le))&&(Ee[le]=Se[le])}return Ee});At.exports=ve},76934:function(At,It,Te){At.exports=Te(99204)},64725:function(At,It,Te){var Oe=Te(86952),He=Te(32872),Ne=Te(95979),be=Te(80744);function _e(Me,ve){var Ee=be(Me)?Oe:He;return Ee(Me,Ne(ve,3))}At.exports=_e},79785:function(At,It,Te){var Oe=Te(19554),He=Te(9991),Ne=Oe(He);At.exports=Ne},9991:function(At,It,Te){var Oe=Te(51533),He=Te(95979),Ne=Te(12824),be=Math.max;function _e(Me,ve,Ee){var Pe=Me==null?0:Me.length;if(!Pe)return-1;var xe=Ee==null?0:Ne(Ee);return xe<0&&(xe=be(Pe+xe,0)),Oe(Me,He(ve,3),xe)}At.exports=_e},40151:function(At,It,Te){var Oe=Te(9256);function He(Ne){var be=Ne==null?0:Ne.length;return be?Oe(Ne,1):[]}At.exports=He},99204:function(At,It,Te){var Oe=Te(74809),He=Te(44107),Ne=Te(11756),be=Te(80744);function _e(Me,ve){var Ee=be(Me)?Oe:He;return Ee(Me,Ne(ve))}At.exports=_e},23190:function(At,It,Te){var Oe=Te(14018),He=Te(11756),Ne=Te(56730);function be(_e,Me){return _e==null?_e:Oe(_e,He(Me),Ne)}At.exports=be},44231:function(At,It,Te){var Oe=Te(89147);function He(Ne,be,_e){var Me=Ne==null?void 0:Oe(Ne,be);return Me===void 0?_e:Me}At.exports=He},99946:function(At,It,Te){var Oe=Te(3251),He=Te(63100);function Ne(be,_e){return be!=null&&He(be,_e,Oe)}At.exports=Ne},37879:function(At,It,Te){var Oe=Te(62348),He=Te(63100);function Ne(be,_e){return be!=null&&He(be,_e,Oe)}At.exports=Ne},61627:function(At,It,Te){var Oe=Te(6019),He=Te(66139),Ne=Te(13053),be=Te(80744),_e=Te(24665),Me=Te(57835),ve=Te(7975),Ee=Te(18397),Pe="[object Map]",xe="[object Set]",pe=Object.prototype,Ae=pe.hasOwnProperty;function Se(ce){if(ce==null)return!0;if(_e(ce)&&(be(ce)||typeof ce=="string"||typeof ce.splice=="function"||Me(ce)||Ee(ce)||Ne(ce)))return!ce.length;var te=He(ce);if(te==Pe||te==xe)return!ce.size;if(ve(ce))return!Oe(ce).length;for(var ne in ce)if(Ae.call(ce,ne))return!1;return!0}At.exports=Se},41626:function(At,It,Te){var Oe=Te(55005),He=Te(38342),Ne=Te(52495),be=Ne&&Ne.isMap,_e=be?He(be):Oe;At.exports=_e},65226:function(At,It,Te){var Oe=Te(38652),He=Te(38342),Ne=Te(52495),be=Ne&&Ne.isSet,_e=be?He(be):Oe;At.exports=_e},7941:function(At,It,Te){var Oe=Te(86756),He=Te(80744),Ne=Te(93913),be="[object String]";function _e(Me){return typeof Me=="string"||!He(Me)&&Ne(Me)&&Oe(Me)==be}At.exports=_e},45029:function(At,It,Te){var Oe=Te(86756),He=Te(93913),Ne="[object Symbol]";function be(_e){return typeof _e=="symbol"||He(_e)&&Oe(_e)==Ne}At.exports=be},16513:function(At){function It(Te){return Te===void 0}At.exports=It},55451:function(At,It,Te){var Oe=Te(63333),He=Te(6019),Ne=Te(24665);function be(_e){return Ne(_e)?Oe(_e):He(_e)}At.exports=be},10611:function(At){function It(Te){var Oe=Te==null?0:Te.length;return Oe?Te[Oe-1]:void 0}At.exports=It},9924:function(At,It,Te){var Oe=Te(75010),He=Te(95979),Ne=Te(65487),be=Te(80744);function _e(Me,ve){var Ee=be(Me)?Oe:Ne;return Ee(Me,He(ve,3))}At.exports=_e},70642:function(At,It,Te){var Oe=Te(42813),He=Te(85605),Ne=Te(95979);function be(_e,Me){var ve={};return Me=Ne(Me,3),He(_e,function(Ee,Pe,xe){Oe(ve,Pe,Me(Ee,Pe,xe))}),ve}At.exports=be},95987:function(At,It,Te){var Oe=Te(2659),He=Te(40302),Ne=Te(46962);function be(_e){return _e&&_e.length?Oe(_e,Ne,He):void 0}At.exports=be},52858:function(At,It,Te){var Oe=Te(52166),He="Expected a function";function Ne(be,_e){if(typeof be!="function"||_e!=null&&typeof _e!="function")throw new TypeError(He);var Me=function(){var ve=arguments,Ee=_e?_e.apply(this,ve):ve[0],Pe=Me.cache;if(Pe.has(Ee))return Pe.get(Ee);var xe=be.apply(this,ve);return Me.cache=Pe.set(Ee,xe)||Pe,xe};return Me.cache=new(Ne.Cache||Oe),Me}Ne.Cache=Oe,At.exports=Ne},73376:function(At,It,Te){var Oe=Te(2659),He=Te(93757),Ne=Te(46962);function be(_e){return _e&&_e.length?Oe(_e,Ne,He):void 0}At.exports=be},83296:function(At,It,Te){var Oe=Te(2659),He=Te(95979),Ne=Te(93757);function be(_e,Me){return _e&&_e.length?Oe(_e,He(Me,2),Ne):void 0}At.exports=be},9958:function(At){function It(){}At.exports=It},5795:function(At,It,Te){var Oe=Te(33152),He=function(){return Oe.Date.now()};At.exports=He},89409:function(At,It,Te){var Oe=Te(88832),He=Te(522),Ne=He(function(be,_e){return be==null?{}:Oe(be,_e)});At.exports=Ne},35769:function(At,It,Te){var Oe=Te(22310),He=Te(96916),Ne=Te(86773),be=Te(9171);function _e(Me){return Ne(Me)?Oe(be(Me)):He(Me)}At.exports=_e},60859:function(At,It,Te){var Oe=Te(76106),He=Oe();At.exports=He},16473:function(At,It,Te){var Oe=Te(99861),He=Te(44107),Ne=Te(95979),be=Te(30739),_e=Te(80744);function Me(ve,Ee,Pe){var xe=_e(ve)?Oe:be,pe=arguments.length<3;return xe(ve,Ne(Ee,4),Pe,pe,He)}At.exports=Me},40617:function(At,It,Te){var Oe=Te(6019),He=Te(66139),Ne=Te(24665),be=Te(7941),_e=Te(29405),Me="[object Map]",ve="[object Set]";function Ee(Pe){if(Pe==null)return 0;if(Ne(Pe))return be(Pe)?_e(Pe):Pe.length;var xe=He(Pe);return xe==Me||xe==ve?Pe.size:Oe(Pe).length}At.exports=Ee},351:function(At,It,Te){var Oe=Te(9256),He=Te(58506),Ne=Te(92918),be=Te(8138),_e=Ne(function(Me,ve){if(Me==null)return[];var Ee=ve.length;return Ee>1&&be(Me,ve[0],ve[1])?ve=[]:Ee>2&&be(ve[0],ve[1],ve[2])&&(ve=[ve[0]]),He(Me,Oe(ve,1),[])});At.exports=_e},4134:function(At){function It(){return[]}At.exports=It},97341:function(At,It,Te){var Oe=Te(59406),He=1/0,Ne=17976931348623157e292;function be(_e){if(!_e)return _e===0?_e:0;if(_e=Oe(_e),_e===He||_e===-He){var Me=_e<0?-1:1;return Me*Ne}return _e===_e?_e:0}At.exports=be},12824:function(At,It,Te){var Oe=Te(97341);function He(Ne){var be=Oe(Ne),_e=be%1;return be===be?_e?be-_e:be:0}At.exports=He},59406:function(At,It,Te){var Oe=Te(13927),He=Te(20816),Ne=Te(45029),be=NaN,_e=/^[-+]0x[0-9a-f]+$/i,Me=/^0b[01]+$/i,ve=/^0o[0-7]+$/i,Ee=parseInt;function Pe(xe){if(typeof xe=="number")return xe;if(Ne(xe))return be;if(He(xe)){var pe=typeof xe.valueOf=="function"?xe.valueOf():xe;xe=He(pe)?pe+"":pe}if(typeof xe!="string")return xe===0?xe:+xe;xe=Oe(xe);var Ae=Me.test(xe);return Ae||ve.test(xe)?Ee(xe.slice(2),Ae?2:8):_e.test(xe)?be:+xe}At.exports=Pe},44140:function(At,It,Te){var Oe=Te(50230);function He(Ne){return Ne==null?"":Oe(Ne)}At.exports=He},91116:function(At,It,Te){var Oe=Te(74809),He=Te(35024),Ne=Te(85605),be=Te(95979),_e=Te(49217),Me=Te(80744),ve=Te(57835),Ee=Te(9363),Pe=Te(20816),xe=Te(18397);function pe(Ae,Se,ce){var te=Me(Ae),ne=te||ve(Ae)||xe(Ae);if(Se=be(Se,4),ce==null){var le=Ae&&Ae.constructor;ne?ce=te?new le:[]:Pe(Ae)?ce=Ee(le)?He(_e(Ae)):{}:ce={}}return(ne?Oe:Ne)(Ae,function(se,fe,he){return Se(ce,se,fe,he)}),ce}At.exports=pe},44065:function(At,It,Te){var Oe=Te(9256),He=Te(92918),Ne=Te(29098),be=Te(41590),_e=He(function(Me){return Ne(Oe(Me,1,be,!0))});At.exports=_e},95708:function(At,It,Te){var Oe=Te(44140),He=0;function Ne(be){var _e=++He;return Oe(be)+_e}At.exports=Ne},81229:function(At,It,Te){var Oe=Te(20720),He=Te(55451);function Ne(be){return be==null?[]:Oe(be,He(be))}At.exports=Ne},92993:function(At,It,Te){var Oe=Te(60348),He=Te(94484);function Ne(be,_e){return He(be||[],_e||[],Oe)}At.exports=Ne},34402:function(At,It,Te){"use strict";Te.r(It),Te.d(It,{default:function(){return be}});var Oe=Te(34634);function He(_e){var Me=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!(0,Oe.isAnyArray)(_e))throw new TypeError("input must be an array");if(_e.length===0)throw new TypeError("input must not be empty");var ve=Me.fromIndex,Ee=ve===void 0?0:ve,Pe=Me.toIndex,xe=Pe===void 0?_e.length:Pe;if(Ee<0||Ee>=_e.length||!Number.isInteger(Ee))throw new Error("fromIndex must be a positive integer smaller than length");if(xe<=Ee||xe>_e.length||!Number.isInteger(xe))throw new Error("toIndex must be an integer greater than fromIndex and at most equal to length");for(var pe=_e[Ee],Ae=Ee+1;Ae<xe;Ae++)_e[Ae]>pe&&(pe=_e[Ae]);return pe}function Ne(_e){var Me=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!(0,Oe.isAnyArray)(_e))throw new TypeError("input must be an array");if(_e.length===0)throw new TypeError("input must not be empty");var ve=Me.fromIndex,Ee=ve===void 0?0:ve,Pe=Me.toIndex,xe=Pe===void 0?_e.length:Pe;if(Ee<0||Ee>=_e.length||!Number.isInteger(Ee))throw new Error("fromIndex must be a positive integer smaller than length");if(xe<=Ee||xe>_e.length||!Number.isInteger(xe))throw new Error("toIndex must be an integer greater than fromIndex and at most equal to length");for(var pe=_e[Ee],Ae=Ee+1;Ae<xe;Ae++)_e[Ae]<pe&&(pe=_e[Ae]);return pe}function be(_e){var Me=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if((0,Oe.isAnyArray)(_e)){if(_e.length===0)throw new TypeError("input must not be empty")}else throw new TypeError("input must be an array");var ve;if(Me.output!==void 0){if(!(0,Oe.isAnyArray)(Me.output))throw new TypeError("output option must be an array if specified");ve=Me.output}else ve=new Array(_e.length);var Ee=Ne(_e),Pe=He(_e);if(Ee===Pe)throw new RangeError("minimum and maximum input values are equal. Cannot rescale a constant array");var xe=Me.min,pe=xe===void 0?Me.autoMinMax?Ee:0:xe,Ae=Me.max,Se=Ae===void 0?Me.autoMinMax?Pe:1:Ae;if(pe>=Se)throw new RangeError("min option must be smaller than max option");for(var ce=(Se-pe)/(Pe-Ee),te=0;te<_e.length;te++)ve[te]=(_e[te]-Ee)*ce+pe;return ve}},91735:function(At,It){"use strict";It.Z={items_per_page:"\u6761/\u9875",jump_to:"\u8DF3\u81F3",jump_to_confirm:"\u786E\u5B9A",page:"\u9875",prev_page:"\u4E0A\u4E00\u9875",next_page:"\u4E0B\u4E00\u9875",prev_5:"\u5411\u524D 5 \u9875",next_5:"\u5411\u540E 5 \u9875",prev_3:"\u5411\u524D 3 \u9875",next_3:"\u5411\u540E 3 \u9875",page_size:"\u9875\u7801"}},39417:function(At,It,Te){"use strict";Te.d(It,{Z:function(){return Ie}});var Oe=Te(54476),He=Te(20068),Ne=Te(75931),be=Te(33885),_e=Te(67732),Me=Te(83652),ve=Te(31226),Ee=Te(42403),Pe=Te(158),xe=Te(92310),pe=Te.n(xe),Ae=Te(26112),Se=Te(59301),ce=Te(39378),te=function(Re){for(var Ue=Re.prefixCls,Ge=Re.level,Je=Re.isStart,Qe=Re.isEnd,rt="".concat(Ue,"-indent-unit"),$e=[],qe=0;qe<Ge;qe+=1){var ot;$e.push(Se.createElement("span",{key:qe,className:pe()(rt,(ot={},(0,He.Z)(ot,"".concat(rt,"-start"),Je[qe]),(0,He.Z)(ot,"".concat(rt,"-end"),Qe[qe]),ot))}))}return Se.createElement("span",{"aria-hidden":"true",className:"".concat(Ue,"-indent")},$e)},ne=Se.memo(te),le=Te(67841),se=Te(71430),fe=["eventKey","className","style","dragOver","dragOverGapTop","dragOverGapBottom","isLeaf","isStart","isEnd","expanded","selected","checked","halfChecked","loading","domRef","active","data","onMouseMove","selectable"],he="open",ie="close",ue="---",me=function(Fe){(0,Ee.Z)(Ue,Fe);var Re=(0,Pe.Z)(Ue);function Ue(){var Ge;(0,_e.Z)(this,Ue);for(var Je=arguments.length,Qe=new Array(Je),rt=0;rt<Je;rt++)Qe[rt]=arguments[rt];return Ge=Re.call.apply(Re,[this].concat(Qe)),Ge.state={dragNodeHighlight:!1},Ge.selectHandle=void 0,Ge.cacheIndent=void 0,Ge.onSelectorClick=function($e){var qe=Ge.props.context.onNodeClick;qe($e,(0,se.F)(Ge.props)),Ge.isSelectable()?Ge.onSelect($e):Ge.onCheck($e)},Ge.onSelectorDoubleClick=function($e){var qe=Ge.props.context.onNodeDoubleClick;qe($e,(0,se.F)(Ge.props))},Ge.onSelect=function($e){if(!Ge.isDisabled()){var qe=Ge.props.context.onNodeSelect;qe($e,(0,se.F)(Ge.props))}},Ge.onCheck=function($e){if(!Ge.isDisabled()){var qe=Ge.props,ot=qe.disableCheckbox,at=qe.checked,ut=Ge.props.context.onNodeCheck;if(!(!Ge.isCheckable()||ot)){var nt=!at;ut($e,(0,se.F)(Ge.props),nt)}}},Ge.onMouseEnter=function($e){var qe=Ge.props.context.onNodeMouseEnter;qe($e,(0,se.F)(Ge.props))},Ge.onMouseLeave=function($e){var qe=Ge.props.context.onNodeMouseLeave;qe($e,(0,se.F)(Ge.props))},Ge.onContextMenu=function($e){var qe=Ge.props.context.onNodeContextMenu;qe($e,(0,se.F)(Ge.props))},Ge.onDragStart=function($e){var qe=Ge.props.context.onNodeDragStart;$e.stopPropagation(),Ge.setState({dragNodeHighlight:!0}),qe($e,(0,ve.Z)(Ge));try{$e.dataTransfer.setData("text/plain","")}catch(ot){}},Ge.onDragEnter=function($e){var qe=Ge.props.context.onNodeDragEnter;$e.preventDefault(),$e.stopPropagation(),qe($e,(0,ve.Z)(Ge))},Ge.onDragOver=function($e){var qe=Ge.props.context.onNodeDragOver;$e.preventDefault(),$e.stopPropagation(),qe($e,(0,ve.Z)(Ge))},Ge.onDragLeave=function($e){var qe=Ge.props.context.onNodeDragLeave;$e.stopPropagation(),qe($e,(0,ve.Z)(Ge))},Ge.onDragEnd=function($e){var qe=Ge.props.context.onNodeDragEnd;$e.stopPropagation(),Ge.setState({dragNodeHighlight:!1}),qe($e,(0,ve.Z)(Ge))},Ge.onDrop=function($e){var qe=Ge.props.context.onNodeDrop;$e.preventDefault(),$e.stopPropagation(),Ge.setState({dragNodeHighlight:!1}),qe($e,(0,ve.Z)(Ge))},Ge.onExpand=function($e){var qe=Ge.props,ot=qe.loading,at=qe.context.onNodeExpand;ot||at($e,(0,se.F)(Ge.props))},Ge.setSelectHandle=function($e){Ge.selectHandle=$e},Ge.getNodeState=function(){var $e=Ge.props.expanded;return Ge.isLeaf()?null:$e?he:ie},Ge.hasChildren=function(){var $e=Ge.props.eventKey,qe=Ge.props.context.keyEntities,ot=(0,le.Z)(qe,$e)||{},at=ot.children;return!!(at||[]).length},Ge.isLeaf=function(){var $e=Ge.props,qe=$e.isLeaf,ot=$e.loaded,at=Ge.props.context.loadData,ut=Ge.hasChildren();return qe===!1?!1:qe||!at&&!ut||at&&ot&&!ut},Ge.isDisabled=function(){var $e=Ge.props.disabled,qe=Ge.props.context.disabled;return!!(qe||$e)},Ge.isCheckable=function(){var $e=Ge.props.checkable,qe=Ge.props.context.checkable;return!qe||$e===!1?!1:qe},Ge.syncLoadData=function($e){var qe=$e.expanded,ot=$e.loading,at=$e.loaded,ut=Ge.props.context,nt=ut.loadData,lt=ut.onNodeLoad;ot||nt&&qe&&!Ge.isLeaf()&&!Ge.hasChildren()&&!at&<((0,se.F)(Ge.props))},Ge.isDraggable=function(){var $e=Ge.props,qe=$e.data,ot=$e.context.draggable;return!!(ot&&(!ot.nodeDraggable||ot.nodeDraggable(qe)))},Ge.renderDragHandler=function(){var $e=Ge.props.context,qe=$e.draggable,ot=$e.prefixCls;return qe!=null&&qe.icon?Se.createElement("span",{className:"".concat(ot,"-draggable-icon")},qe.icon):null},Ge.renderSwitcherIconDom=function($e){var qe=Ge.props.switcherIcon,ot=Ge.props.context.switcherIcon,at=qe||ot;return typeof at=="function"?at((0,be.Z)((0,be.Z)({},Ge.props),{},{isLeaf:$e})):at},Ge.renderSwitcher=function(){var $e=Ge.props.expanded,qe=Ge.props.context.prefixCls;if(Ge.isLeaf()){var ot=Ge.renderSwitcherIconDom(!0);return ot!==!1?Se.createElement("span",{className:pe()("".concat(qe,"-switcher"),"".concat(qe,"-switcher-noop"))},ot):null}var at=pe()("".concat(qe,"-switcher"),"".concat(qe,"-switcher_").concat($e?he:ie)),ut=Ge.renderSwitcherIconDom(!1);return ut!==!1?Se.createElement("span",{onClick:Ge.onExpand,className:at},ut):null},Ge.renderCheckbox=function(){var $e=Ge.props,qe=$e.checked,ot=$e.halfChecked,at=$e.disableCheckbox,ut=Ge.props.context.prefixCls,nt=Ge.isDisabled(),lt=Ge.isCheckable();if(!lt)return null;var yt=typeof lt!="boolean"?lt:null;return Se.createElement("span",{className:pe()("".concat(ut,"-checkbox"),qe&&"".concat(ut,"-checkbox-checked"),!qe&&ot&&"".concat(ut,"-checkbox-indeterminate"),(nt||at)&&"".concat(ut,"-checkbox-disabled")),onClick:Ge.onCheck},yt)},Ge.renderIcon=function(){var $e=Ge.props.loading,qe=Ge.props.context.prefixCls;return Se.createElement("span",{className:pe()("".concat(qe,"-iconEle"),"".concat(qe,"-icon__").concat(Ge.getNodeState()||"docu"),$e&&"".concat(qe,"-icon_loading"))})},Ge.renderSelector=function(){var $e=Ge.state.dragNodeHighlight,qe=Ge.props,ot=qe.title,at=ot===void 0?ue:ot,ut=qe.selected,nt=qe.icon,lt=qe.loading,yt=qe.data,ft=Ge.props.context,ct=ft.prefixCls,vt=ft.showIcon,Ut=ft.icon,Zt=ft.loadData,en=ft.titleRender,mn=Ge.isDisabled(),Bt="".concat(ct,"-node-content-wrapper"),tn;if(vt){var on=nt||Ut;tn=on?Se.createElement("span",{className:pe()("".concat(ct,"-iconEle"),"".concat(ct,"-icon__customize"))},typeof on=="function"?on(Ge.props):on):Ge.renderIcon()}else Zt&<&&(tn=Ge.renderIcon());var Mn;typeof at=="function"?Mn=at(yt):en?Mn=en(yt):Mn=at;var Dn=Se.createElement("span",{className:"".concat(ct,"-title")},Mn);return Se.createElement("span",{ref:Ge.setSelectHandle,title:typeof at=="string"?at:"",className:pe()("".concat(Bt),"".concat(Bt,"-").concat(Ge.getNodeState()||"normal"),!mn&&(ut||$e)&&"".concat(ct,"-node-selected")),onMouseEnter:Ge.onMouseEnter,onMouseLeave:Ge.onMouseLeave,onContextMenu:Ge.onContextMenu,onClick:Ge.onSelectorClick,onDoubleClick:Ge.onSelectorDoubleClick},tn,Dn,Ge.renderDropIndicator())},Ge.renderDropIndicator=function(){var $e=Ge.props,qe=$e.disabled,ot=$e.eventKey,at=Ge.props.context,ut=at.draggable,nt=at.dropLevelOffset,lt=at.dropPosition,yt=at.prefixCls,ft=at.indent,ct=at.dropIndicatorRender,vt=at.dragOverNodeKey,Ut=at.direction,Zt=!!ut,en=!qe&&Zt&&vt===ot,mn=ft!=null?ft:Ge.cacheIndent;return Ge.cacheIndent=ft,en?ct({dropPosition:lt,dropLevelOffset:nt,indent:mn,prefixCls:yt,direction:Ut}):null},Ge}return(0,Me.Z)(Ue,[{key:"componentDidMount",value:function(){this.syncLoadData(this.props)}},{key:"componentDidUpdate",value:function(){this.syncLoadData(this.props)}},{key:"isSelectable",value:function(){var Je=this.props.selectable,Qe=this.props.context.selectable;return typeof Je=="boolean"?Je:Qe}},{key:"render",value:function(){var Je,Qe=this.props,rt=Qe.eventKey,$e=Qe.className,qe=Qe.style,ot=Qe.dragOver,at=Qe.dragOverGapTop,ut=Qe.dragOverGapBottom,nt=Qe.isLeaf,lt=Qe.isStart,yt=Qe.isEnd,ft=Qe.expanded,ct=Qe.selected,vt=Qe.checked,Ut=Qe.halfChecked,Zt=Qe.loading,en=Qe.domRef,mn=Qe.active,Bt=Qe.data,tn=Qe.onMouseMove,on=Qe.selectable,Mn=(0,Ne.Z)(Qe,fe),Dn=this.props.context,sn=Dn.prefixCls,rn=Dn.filterTreeNode,Ht=Dn.keyEntities,Tt=Dn.dropContainerKey,St=Dn.dropTargetKey,Qt=Dn.draggingNodeKey,gt=this.isDisabled(),bt=(0,Ae.Z)(Mn,{aria:!0,data:!0}),Yt=(0,le.Z)(Ht,rt)||{},kt=Yt.level,Mt=yt[yt.length-1],ln=this.isDraggable(),zn=!gt&&ln,Gn=Qt===rt,Hn=on!==void 0?{"aria-selected":!!on}:void 0;return Se.createElement("div",(0,Oe.Z)({ref:en,className:pe()($e,"".concat(sn,"-treenode"),(Je={},(0,He.Z)(Je,"".concat(sn,"-treenode-disabled"),gt),(0,He.Z)(Je,"".concat(sn,"-treenode-switcher-").concat(ft?"open":"close"),!nt),(0,He.Z)(Je,"".concat(sn,"-treenode-checkbox-checked"),vt),(0,He.Z)(Je,"".concat(sn,"-treenode-checkbox-indeterminate"),Ut),(0,He.Z)(Je,"".concat(sn,"-treenode-selected"),ct),(0,He.Z)(Je,"".concat(sn,"-treenode-loading"),Zt),(0,He.Z)(Je,"".concat(sn,"-treenode-active"),mn),(0,He.Z)(Je,"".concat(sn,"-treenode-leaf-last"),Mt),(0,He.Z)(Je,"".concat(sn,"-treenode-draggable"),ln),(0,He.Z)(Je,"dragging",Gn),(0,He.Z)(Je,"drop-target",St===rt),(0,He.Z)(Je,"drop-container",Tt===rt),(0,He.Z)(Je,"drag-over",!gt&&ot),(0,He.Z)(Je,"drag-over-gap-top",!gt&&at),(0,He.Z)(Je,"drag-over-gap-bottom",!gt&&ut),(0,He.Z)(Je,"filter-node",rn&&rn((0,se.F)(this.props))),Je)),style:qe,draggable:zn,"aria-grabbed":Gn,onDragStart:zn?this.onDragStart:void 0,onDragEnter:ln?this.onDragEnter:void 0,onDragOver:ln?this.onDragOver:void 0,onDragLeave:ln?this.onDragLeave:void 0,onDrop:ln?this.onDrop:void 0,onDragEnd:ln?this.onDragEnd:void 0,onMouseMove:tn},Hn,bt),Se.createElement(ne,{prefixCls:sn,level:kt,isStart:lt,isEnd:yt}),this.renderDragHandler(),this.renderSwitcher(),this.renderCheckbox(),this.renderSelector())}}]),Ue}(Se.Component),Ce=function(Re){return Se.createElement(ce.k.Consumer,null,function(Ue){return Se.createElement(me,(0,Oe.Z)({},Re,{context:Ue}))})};Ce.displayName="TreeNode",Ce.isTreeNode=1;var Ie=Ce},39378:function(At,It,Te){"use strict";Te.d(It,{k:function(){return He}});var Oe=Te(59301),He=Oe.createContext(null)},60091:function(At,It,Te){"use strict";Te.d(It,{O:function(){return Ie.Z},Z:function(){return Dn}});var Oe=Te(54476),He=Te(20068),Ne=Te(76190),be=Te(33885),_e=Te(94480),Me=Te(67732),ve=Te(83652),Ee=Te(31226),Pe=Te(42403),xe=Te(158),pe=Te(92310),Ae=Te.n(pe),Se=Te(10228),ce=Te(26112),te=Te(48736),ne=Te(59301),le=Te(39378);function se(sn){var rn=sn.dropPosition,Ht=sn.dropLevelOffset,Tt=sn.indent,St={pointerEvents:"none",position:"absolute",right:0,backgroundColor:"red",height:2};switch(rn){case-1:St.top=0,St.left=-Ht*Tt;break;case 1:St.bottom=0,St.left=-Ht*Tt;break;case 0:St.bottom=0,St.left=Tt;break}return ne.createElement("div",{style:St})}function fe(sn){if(sn==null)throw new TypeError("Cannot destructure "+sn)}var he=Te(42978),ie=Te(75931),ue=Te(34280),me=Te(48911),Ce=Te(77900),Ie=Te(39417);function Fe(sn,rn){var Ht=ne.useState(!1),Tt=(0,he.Z)(Ht,2),St=Tt[0],Qt=Tt[1];ne.useLayoutEffect(function(){if(St)return sn(),function(){rn()}},[St]),ne.useLayoutEffect(function(){return Qt(!0),function(){Qt(!1)}},[])}var Re=Te(71430),Ue=["className","style","motion","motionNodes","motionType","onMotionStart","onMotionEnd","active","treeNodeRequiredProps"],Ge=function(rn,Ht){var Tt=rn.className,St=rn.style,Qt=rn.motion,gt=rn.motionNodes,bt=rn.motionType,Yt=rn.onMotionStart,kt=rn.onMotionEnd,Mt=rn.active,ln=rn.treeNodeRequiredProps,zn=(0,ie.Z)(rn,Ue),Gn=ne.useState(!0),Hn=(0,he.Z)(Gn,2),nr=Hn[0],Xn=Hn[1],qt=ne.useContext(le.k),vn=qt.prefixCls,Un=gt&&bt!=="hide";(0,ue.Z)(function(){gt&&Un!==nr&&Xn(Un)},[gt]);var Ln=function(){gt&&Yt()},yr=ne.useRef(!1),kr=function(){gt&&!yr.current&&(yr.current=!0,kt())};Fe(Ln,kr);var Dr=function(Ma){Un===Ma&&kr()};return gt?ne.createElement(Ce.default,(0,Oe.Z)({ref:Ht,visible:nr},Qt,{motionAppear:bt==="show",onVisibleChanged:Dr}),function(Gr,Ma){var Ja=Gr.className,Na=Gr.style;return ne.createElement("div",{ref:Ma,className:Ae()("".concat(vn,"-treenode-motion"),Ja),style:Na},gt.map(function(Da){var Di=(0,Oe.Z)({},(fe(Da.data),Da.data)),_a=Da.title,Vr=Da.key,Ya=Da.isStart,ui=Da.isEnd;delete Di.children;var mr=(0,Re.H8)(Vr,ln);return ne.createElement(Ie.Z,(0,Oe.Z)({},Di,mr,{title:_a,active:Mt,data:Da.data,key:Vr,isStart:Ya,isEnd:ui}))}))}):ne.createElement(Ie.Z,(0,Oe.Z)({domRef:Ht,className:Tt,style:St},zn,{active:Mt}))};Ge.displayName="MotionTreeNode";var Je=ne.forwardRef(Ge),Qe=Je;function rt(){var sn=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],rn=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],Ht=sn.length,Tt=rn.length;if(Math.abs(Ht-Tt)!==1)return{add:!1,key:null};function St(Qt,gt){var bt=new Map;Qt.forEach(function(kt){bt.set(kt,!0)});var Yt=gt.filter(function(kt){return!bt.has(kt)});return Yt.length===1?Yt[0]:null}return Ht<Tt?{add:!0,key:St(sn,rn)}:{add:!1,key:St(rn,sn)}}function $e(sn,rn,Ht){var Tt=sn.findIndex(function(bt){return bt.key===Ht}),St=sn[Tt+1],Qt=rn.findIndex(function(bt){return bt.key===Ht});if(St){var gt=rn.findIndex(function(bt){return bt.key===St.key});return rn.slice(Qt+1,gt)}return rn.slice(Qt+1)}var qe=["prefixCls","data","selectable","checkable","expandedKeys","selectedKeys","checkedKeys","loadedKeys","loadingKeys","halfCheckedKeys","keyEntities","disabled","dragging","dragOverNodeKey","dropPosition","motion","height","itemHeight","virtual","focusable","activeItem","focused","tabIndex","onKeyDown","onFocus","onBlur","onActiveChange","onListChangeStart","onListChangeEnd"],ot={width:0,height:0,display:"flex",overflow:"hidden",opacity:0,border:0,padding:0,margin:0},at=function(){},ut="RC_TREE_MOTION_".concat(Math.random()),nt={key:ut},lt={key:ut,level:0,index:0,pos:"0",node:nt,nodes:[nt]},yt={parent:null,children:[],pos:lt.pos,data:nt,title:null,key:ut,isStart:[],isEnd:[]};function ft(sn,rn,Ht,Tt){return rn===!1||!Ht?sn:sn.slice(0,Math.ceil(Ht/Tt)+1)}function ct(sn){var rn=sn.key,Ht=sn.pos;return(0,Re.km)(rn,Ht)}function vt(sn){for(var rn=String(sn.data.key),Ht=sn;Ht.parent;)Ht=Ht.parent,rn="".concat(Ht.data.key," > ").concat(rn);return rn}var Ut=ne.forwardRef(function(sn,rn){var Ht=sn.prefixCls,Tt=sn.data,St=sn.selectable,Qt=sn.checkable,gt=sn.expandedKeys,bt=sn.selectedKeys,Yt=sn.checkedKeys,kt=sn.loadedKeys,Mt=sn.loadingKeys,ln=sn.halfCheckedKeys,zn=sn.keyEntities,Gn=sn.disabled,Hn=sn.dragging,nr=sn.dragOverNodeKey,Xn=sn.dropPosition,qt=sn.motion,vn=sn.height,Un=sn.itemHeight,Ln=sn.virtual,yr=sn.focusable,kr=sn.activeItem,Dr=sn.focused,Gr=sn.tabIndex,Ma=sn.onKeyDown,Ja=sn.onFocus,Na=sn.onBlur,Da=sn.onActiveChange,Di=sn.onListChangeStart,_a=sn.onListChangeEnd,Vr=(0,ie.Z)(sn,qe),Ya=ne.useRef(null),ui=ne.useRef(null);ne.useImperativeHandle(rn,function(){return{scrollTo:function(hn){Ya.current.scrollTo(hn)},getIndentWidth:function(){return ui.current.offsetWidth}}});var mr=ne.useState(gt),Er=(0,he.Z)(mr,2),ba=Er[0],Fn=Er[1],gr=ne.useState(Tt),br=(0,he.Z)(gr,2),_r=br[0],ha=br[1],Ct=ne.useState(Tt),we=(0,he.Z)(Ct,2),Be=we[0],Le=we[1],je=ne.useState([]),Xe=(0,he.Z)(je,2),Et=Xe[0],xt=Xe[1],Jt=ne.useState(null),Vt=(0,he.Z)(Jt,2),fn=Vt[0],dn=Vt[1],Vn=ne.useRef(Tt);Vn.current=Tt;function Pn(){var hr=Vn.current;ha(hr),Le(hr),xt([]),dn(null),_a()}(0,ue.Z)(function(){Fn(gt);var hr=rt(ba,gt);if(hr.key!==null)if(hr.add){var hn=_r.findIndex(function(Qn){var dr=Qn.key;return dr===hr.key}),an=ft($e(_r,Tt,hr.key),Ln,vn,Un),In=_r.slice();In.splice(hn+1,0,yt),Le(In),xt(an),dn("show")}else{var jn=Tt.findIndex(function(Qn){var dr=Qn.key;return dr===hr.key}),cr=ft($e(Tt,_r,hr.key),Ln,vn,Un),or=Tt.slice();or.splice(jn+1,0,yt),Le(or),xt(cr),dn("hide")}else _r!==Tt&&(ha(Tt),Le(Tt))},[gt,Tt]),ne.useEffect(function(){Hn||Pn()},[Hn]);var Jn=qt?Be:Tt,$n={expandedKeys:gt,selectedKeys:bt,loadedKeys:kt,loadingKeys:Mt,checkedKeys:Yt,halfCheckedKeys:ln,dragOverNodeKey:nr,dropPosition:Xn,keyEntities:zn};return ne.createElement(ne.Fragment,null,Dr&&kr&&ne.createElement("span",{style:ot,"aria-live":"assertive"},vt(kr)),ne.createElement("div",null,ne.createElement("input",{style:ot,disabled:yr===!1||Gn,tabIndex:yr!==!1?Gr:null,onKeyDown:Ma,onFocus:Ja,onBlur:Na,value:"",onChange:at,"aria-label":"for screen reader"})),ne.createElement("div",{className:"".concat(Ht,"-treenode"),"aria-hidden":!0,style:{position:"absolute",pointerEvents:"none",visibility:"hidden",height:0,overflow:"hidden",border:0,padding:0}},ne.createElement("div",{className:"".concat(Ht,"-indent")},ne.createElement("div",{ref:ui,className:"".concat(Ht,"-indent-unit")}))),ne.createElement(me.Z,(0,Oe.Z)({},Vr,{data:Jn,itemKey:ct,height:vn,fullHeight:!1,virtual:Ln,itemHeight:Un,prefixCls:"".concat(Ht,"-list"),ref:Ya,onVisibleChange:function(hn,an){var In=new Set(hn),jn=an.filter(function(cr){return!In.has(cr)});jn.some(function(cr){return ct(cr)===ut})&&Pn()}}),function(hr){var hn=hr.pos,an=(0,Oe.Z)({},(fe(hr.data),hr.data)),In=hr.title,jn=hr.key,cr=hr.isStart,or=hr.isEnd,Qn=(0,Re.km)(jn,hn);delete an.key,delete an.children;var dr=(0,Re.H8)(Qn,$n);return ne.createElement(Qe,(0,Oe.Z)({},an,dr,{title:In,active:!!kr&&jn===kr.key,pos:hn,data:hr.data,isStart:cr,isEnd:or,motion:qt,motionNodes:jn===ut?Et:null,motionType:fn,onMotionStart:Di,onMotionEnd:Pn,treeNodeRequiredProps:$n,onMouseMove:function(){Da(null)}}))}))});Ut.displayName="NodeList";var Zt=Ut,en=Te(35654),mn=Te(90782),Bt=Te(67841),tn=10,on=function(sn){(0,Pe.Z)(Ht,sn);var rn=(0,xe.Z)(Ht);function Ht(){var Tt;(0,Me.Z)(this,Ht);for(var St=arguments.length,Qt=new Array(St),gt=0;gt<St;gt++)Qt[gt]=arguments[gt];return Tt=rn.call.apply(rn,[this].concat(Qt)),Tt.destroyed=!1,Tt.delayedDragEnterLogic=void 0,Tt.loadingRetryTimes={},Tt.state={keyEntities:{},indent:null,selectedKeys:[],checkedKeys:[],halfCheckedKeys:[],loadedKeys:[],loadingKeys:[],expandedKeys:[],draggingNodeKey:null,dragChildrenKeys:[],dropTargetKey:null,dropPosition:null,dropContainerKey:null,dropLevelOffset:null,dropTargetPos:null,dropAllowed:!0,dragOverNodeKey:null,treeData:[],flattenNodes:[],focused:!1,activeKey:null,listChanging:!1,prevProps:null,fieldNames:(0,Re.w$)()},Tt.dragStartMousePosition=null,Tt.dragNode=void 0,Tt.currentMouseOverDroppableNodeKey=null,Tt.listRef=ne.createRef(),Tt.onNodeDragStart=function(bt,Yt){var kt=Tt.state,Mt=kt.expandedKeys,ln=kt.keyEntities,zn=Tt.props.onDragStart,Gn=Yt.props.eventKey;Tt.dragNode=Yt,Tt.dragStartMousePosition={x:bt.clientX,y:bt.clientY};var Hn=(0,en._5)(Mt,Gn);Tt.setState({draggingNodeKey:Gn,dragChildrenKeys:(0,en.wA)(Gn,ln),indent:Tt.listRef.current.getIndentWidth()}),Tt.setExpandedKeys(Hn),window.addEventListener("dragend",Tt.onWindowDragEnd),zn==null||zn({event:bt,node:(0,Re.F)(Yt.props)})},Tt.onNodeDragEnter=function(bt,Yt){var kt=Tt.state,Mt=kt.expandedKeys,ln=kt.keyEntities,zn=kt.dragChildrenKeys,Gn=kt.flattenNodes,Hn=kt.indent,nr=Tt.props,Xn=nr.onDragEnter,qt=nr.onExpand,vn=nr.allowDrop,Un=nr.direction,Ln=Yt.props,yr=Ln.pos,kr=Ln.eventKey,Dr=(0,Ee.Z)(Tt),Gr=Dr.dragNode;if(Tt.currentMouseOverDroppableNodeKey!==kr&&(Tt.currentMouseOverDroppableNodeKey=kr),!Gr){Tt.resetDragState();return}var Ma=(0,en.OM)(bt,Gr,Yt,Hn,Tt.dragStartMousePosition,vn,Gn,ln,Mt,Un),Ja=Ma.dropPosition,Na=Ma.dropLevelOffset,Da=Ma.dropTargetKey,Di=Ma.dropContainerKey,_a=Ma.dropTargetPos,Vr=Ma.dropAllowed,Ya=Ma.dragOverNodeKey;if(zn.indexOf(Da)!==-1||!Vr){Tt.resetDragState();return}if(Tt.delayedDragEnterLogic||(Tt.delayedDragEnterLogic={}),Object.keys(Tt.delayedDragEnterLogic).forEach(function(ui){clearTimeout(Tt.delayedDragEnterLogic[ui])}),Gr.props.eventKey!==Yt.props.eventKey&&(bt.persist(),Tt.delayedDragEnterLogic[yr]=window.setTimeout(function(){if(Tt.state.draggingNodeKey!==null){var ui=(0,_e.Z)(Mt),mr=(0,Bt.Z)(ln,Yt.props.eventKey);mr&&(mr.children||[]).length&&(ui=(0,en.L0)(Mt,Yt.props.eventKey)),"expandedKeys"in Tt.props||Tt.setExpandedKeys(ui),qt==null||qt(ui,{node:(0,Re.F)(Yt.props),expanded:!0,nativeEvent:bt.nativeEvent})}},800)),Gr.props.eventKey===Da&&Na===0){Tt.resetDragState();return}Tt.setState({dragOverNodeKey:Ya,dropPosition:Ja,dropLevelOffset:Na,dropTargetKey:Da,dropContainerKey:Di,dropTargetPos:_a,dropAllowed:Vr}),Xn==null||Xn({event:bt,node:(0,Re.F)(Yt.props),expandedKeys:Mt})},Tt.onNodeDragOver=function(bt,Yt){var kt=Tt.state,Mt=kt.dragChildrenKeys,ln=kt.flattenNodes,zn=kt.keyEntities,Gn=kt.expandedKeys,Hn=kt.indent,nr=Tt.props,Xn=nr.onDragOver,qt=nr.allowDrop,vn=nr.direction,Un=(0,Ee.Z)(Tt),Ln=Un.dragNode;if(Ln){var yr=(0,en.OM)(bt,Ln,Yt,Hn,Tt.dragStartMousePosition,qt,ln,zn,Gn,vn),kr=yr.dropPosition,Dr=yr.dropLevelOffset,Gr=yr.dropTargetKey,Ma=yr.dropContainerKey,Ja=yr.dropAllowed,Na=yr.dropTargetPos,Da=yr.dragOverNodeKey;Mt.indexOf(Gr)!==-1||!Ja||(Ln.props.eventKey===Gr&&Dr===0?Tt.state.dropPosition===null&&Tt.state.dropLevelOffset===null&&Tt.state.dropTargetKey===null&&Tt.state.dropContainerKey===null&&Tt.state.dropTargetPos===null&&Tt.state.dropAllowed===!1&&Tt.state.dragOverNodeKey===null||Tt.resetDragState():kr===Tt.state.dropPosition&&Dr===Tt.state.dropLevelOffset&&Gr===Tt.state.dropTargetKey&&Ma===Tt.state.dropContainerKey&&Na===Tt.state.dropTargetPos&&Ja===Tt.state.dropAllowed&&Da===Tt.state.dragOverNodeKey||Tt.setState({dropPosition:kr,dropLevelOffset:Dr,dropTargetKey:Gr,dropContainerKey:Ma,dropTargetPos:Na,dropAllowed:Ja,dragOverNodeKey:Da}),Xn==null||Xn({event:bt,node:(0,Re.F)(Yt.props)}))}},Tt.onNodeDragLeave=function(bt,Yt){Tt.currentMouseOverDroppableNodeKey===Yt.props.eventKey&&!bt.currentTarget.contains(bt.relatedTarget)&&(Tt.resetDragState(),Tt.currentMouseOverDroppableNodeKey=null);var kt=Tt.props.onDragLeave;kt==null||kt({event:bt,node:(0,Re.F)(Yt.props)})},Tt.onWindowDragEnd=function(bt){Tt.onNodeDragEnd(bt,null,!0),window.removeEventListener("dragend",Tt.onWindowDragEnd)},Tt.onNodeDragEnd=function(bt,Yt){var kt=Tt.props.onDragEnd;Tt.setState({dragOverNodeKey:null}),Tt.cleanDragState(),kt==null||kt({event:bt,node:(0,Re.F)(Yt.props)}),Tt.dragNode=null,window.removeEventListener("dragend",Tt.onWindowDragEnd)},Tt.onNodeDrop=function(bt,Yt){var kt,Mt=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,ln=Tt.state,zn=ln.dragChildrenKeys,Gn=ln.dropPosition,Hn=ln.dropTargetKey,nr=ln.dropTargetPos,Xn=ln.dropAllowed;if(Xn){var qt=Tt.props.onDrop;if(Tt.setState({dragOverNodeKey:null}),Tt.cleanDragState(),Hn!==null){var vn=(0,be.Z)((0,be.Z)({},(0,Re.H8)(Hn,Tt.getTreeNodeRequiredProps())),{},{active:((kt=Tt.getActiveItem())===null||kt===void 0?void 0:kt.key)===Hn,data:(0,Bt.Z)(Tt.state.keyEntities,Hn).node}),Un=zn.indexOf(Hn)!==-1;(0,te.ZP)(!Un,"Can not drop to dragNode's children node. This is a bug of rc-tree. Please report an issue.");var Ln=(0,en.yx)(nr),yr={event:bt,node:(0,Re.F)(vn),dragNode:Tt.dragNode?(0,Re.F)(Tt.dragNode.props):null,dragNodesKeys:[Tt.dragNode.props.eventKey].concat(zn),dropToGap:Gn!==0,dropPosition:Gn+Number(Ln[Ln.length-1])};Mt||qt==null||qt(yr),Tt.dragNode=null}}},Tt.cleanDragState=function(){var bt=Tt.state.draggingNodeKey;bt!==null&&Tt.setState({draggingNodeKey:null,dropPosition:null,dropContainerKey:null,dropTargetKey:null,dropLevelOffset:null,dropAllowed:!0,dragOverNodeKey:null}),Tt.dragStartMousePosition=null,Tt.currentMouseOverDroppableNodeKey=null},Tt.triggerExpandActionExpand=function(bt,Yt){var kt=Tt.state,Mt=kt.expandedKeys,ln=kt.flattenNodes,zn=Yt.expanded,Gn=Yt.key,Hn=Yt.isLeaf;if(!(Hn||bt.shiftKey||bt.metaKey||bt.ctrlKey)){var nr=ln.filter(function(qt){return qt.key===Gn})[0],Xn=(0,Re.F)((0,be.Z)((0,be.Z)({},(0,Re.H8)(Gn,Tt.getTreeNodeRequiredProps())),{},{data:nr.data}));Tt.setExpandedKeys(zn?(0,en._5)(Mt,Gn):(0,en.L0)(Mt,Gn)),Tt.onNodeExpand(bt,Xn)}},Tt.onNodeClick=function(bt,Yt){var kt=Tt.props,Mt=kt.onClick,ln=kt.expandAction;ln==="click"&&Tt.triggerExpandActionExpand(bt,Yt),Mt==null||Mt(bt,Yt)},Tt.onNodeDoubleClick=function(bt,Yt){var kt=Tt.props,Mt=kt.onDoubleClick,ln=kt.expandAction;ln==="doubleClick"&&Tt.triggerExpandActionExpand(bt,Yt),Mt==null||Mt(bt,Yt)},Tt.onNodeSelect=function(bt,Yt){var kt=Tt.state.selectedKeys,Mt=Tt.state,ln=Mt.keyEntities,zn=Mt.fieldNames,Gn=Tt.props,Hn=Gn.onSelect,nr=Gn.multiple,Xn=Yt.selected,qt=Yt[zn.key],vn=!Xn;vn?nr?kt=(0,en.L0)(kt,qt):kt=[qt]:kt=(0,en._5)(kt,qt);var Un=kt.map(function(Ln){var yr=(0,Bt.Z)(ln,Ln);return yr?yr.node:null}).filter(function(Ln){return Ln});Tt.setUncontrolledState({selectedKeys:kt}),Hn==null||Hn(kt,{event:"select",selected:vn,node:Yt,selectedNodes:Un,nativeEvent:bt.nativeEvent})},Tt.onNodeCheck=function(bt,Yt,kt){var Mt=Tt.state,ln=Mt.keyEntities,zn=Mt.checkedKeys,Gn=Mt.halfCheckedKeys,Hn=Tt.props,nr=Hn.checkStrictly,Xn=Hn.onCheck,qt=Yt.key,vn,Un={event:"check",node:Yt,checked:kt,nativeEvent:bt.nativeEvent};if(nr){var Ln=kt?(0,en.L0)(zn,qt):(0,en._5)(zn,qt),yr=(0,en._5)(Gn,qt);vn={checked:Ln,halfChecked:yr},Un.checkedNodes=Ln.map(function(Na){return(0,Bt.Z)(ln,Na)}).filter(function(Na){return Na}).map(function(Na){return Na.node}),Tt.setUncontrolledState({checkedKeys:Ln})}else{var kr=(0,mn.S)([].concat((0,_e.Z)(zn),[qt]),!0,ln),Dr=kr.checkedKeys,Gr=kr.halfCheckedKeys;if(!kt){var Ma=new Set(Dr);Ma.delete(qt);var Ja=(0,mn.S)(Array.from(Ma),{checked:!1,halfCheckedKeys:Gr},ln);Dr=Ja.checkedKeys,Gr=Ja.halfCheckedKeys}vn=Dr,Un.checkedNodes=[],Un.checkedNodesPositions=[],Un.halfCheckedKeys=Gr,Dr.forEach(function(Na){var Da=(0,Bt.Z)(ln,Na);if(Da){var Di=Da.node,_a=Da.pos;Un.checkedNodes.push(Di),Un.checkedNodesPositions.push({node:Di,pos:_a})}}),Tt.setUncontrolledState({checkedKeys:Dr},!1,{halfCheckedKeys:Gr})}Xn==null||Xn(vn,Un)},Tt.onNodeLoad=function(bt){var Yt=bt.key,kt=new Promise(function(Mt,ln){Tt.setState(function(zn){var Gn=zn.loadedKeys,Hn=Gn===void 0?[]:Gn,nr=zn.loadingKeys,Xn=nr===void 0?[]:nr,qt=Tt.props,vn=qt.loadData,Un=qt.onLoad;if(!vn||Hn.indexOf(Yt)!==-1||Xn.indexOf(Yt)!==-1)return null;var Ln=vn(bt);return Ln.then(function(){var yr=Tt.state.loadedKeys,kr=(0,en.L0)(yr,Yt);Un==null||Un(kr,{event:"load",node:bt}),Tt.setUncontrolledState({loadedKeys:kr}),Tt.setState(function(Dr){return{loadingKeys:(0,en._5)(Dr.loadingKeys,Yt)}}),Mt()}).catch(function(yr){if(Tt.setState(function(Dr){return{loadingKeys:(0,en._5)(Dr.loadingKeys,Yt)}}),Tt.loadingRetryTimes[Yt]=(Tt.loadingRetryTimes[Yt]||0)+1,Tt.loadingRetryTimes[Yt]>=tn){var kr=Tt.state.loadedKeys;(0,te.ZP)(!1,"Retry for `loadData` many times but still failed. No more retry."),Tt.setUncontrolledState({loadedKeys:(0,en.L0)(kr,Yt)}),Mt()}ln(yr)}),{loadingKeys:(0,en.L0)(Xn,Yt)}})});return kt.catch(function(){}),kt},Tt.onNodeMouseEnter=function(bt,Yt){var kt=Tt.props.onMouseEnter;kt==null||kt({event:bt,node:Yt})},Tt.onNodeMouseLeave=function(bt,Yt){var kt=Tt.props.onMouseLeave;kt==null||kt({event:bt,node:Yt})},Tt.onNodeContextMenu=function(bt,Yt){var kt=Tt.props.onRightClick;kt&&(bt.preventDefault(),kt({event:bt,node:Yt}))},Tt.onFocus=function(){var bt=Tt.props.onFocus;Tt.setState({focused:!0});for(var Yt=arguments.length,kt=new Array(Yt),Mt=0;Mt<Yt;Mt++)kt[Mt]=arguments[Mt];bt==null||bt.apply(void 0,kt)},Tt.onBlur=function(){var bt=Tt.props.onBlur;Tt.setState({focused:!1}),Tt.onActiveChange(null);for(var Yt=arguments.length,kt=new Array(Yt),Mt=0;Mt<Yt;Mt++)kt[Mt]=arguments[Mt];bt==null||bt.apply(void 0,kt)},Tt.getTreeNodeRequiredProps=function(){var bt=Tt.state,Yt=bt.expandedKeys,kt=bt.selectedKeys,Mt=bt.loadedKeys,ln=bt.loadingKeys,zn=bt.checkedKeys,Gn=bt.halfCheckedKeys,Hn=bt.dragOverNodeKey,nr=bt.dropPosition,Xn=bt.keyEntities;return{expandedKeys:Yt||[],selectedKeys:kt||[],loadedKeys:Mt||[],loadingKeys:ln||[],checkedKeys:zn||[],halfCheckedKeys:Gn||[],dragOverNodeKey:Hn,dropPosition:nr,keyEntities:Xn}},Tt.setExpandedKeys=function(bt){var Yt=Tt.state,kt=Yt.treeData,Mt=Yt.fieldNames,ln=(0,Re.oH)(kt,bt,Mt);Tt.setUncontrolledState({expandedKeys:bt,flattenNodes:ln},!0)},Tt.onNodeExpand=function(bt,Yt){var kt=Tt.state.expandedKeys,Mt=Tt.state,ln=Mt.listChanging,zn=Mt.fieldNames,Gn=Tt.props,Hn=Gn.onExpand,nr=Gn.loadData,Xn=Yt.expanded,qt=Yt[zn.key];if(!ln){var vn=kt.indexOf(qt),Un=!Xn;if((0,te.ZP)(Xn&&vn!==-1||!Xn&&vn===-1,"Expand state not sync with index check"),Un?kt=(0,en.L0)(kt,qt):kt=(0,en._5)(kt,qt),Tt.setExpandedKeys(kt),Hn==null||Hn(kt,{node:Yt,expanded:Un,nativeEvent:bt.nativeEvent}),Un&&nr){var Ln=Tt.onNodeLoad(Yt);Ln&&Ln.then(function(){var yr=(0,Re.oH)(Tt.state.treeData,kt,zn);Tt.setUncontrolledState({flattenNodes:yr})}).catch(function(){var yr=Tt.state.expandedKeys,kr=(0,en._5)(yr,qt);Tt.setExpandedKeys(kr)})}}},Tt.onListChangeStart=function(){Tt.setUncontrolledState({listChanging:!0})},Tt.onListChangeEnd=function(){setTimeout(function(){Tt.setUncontrolledState({listChanging:!1})})},Tt.onActiveChange=function(bt){var Yt=Tt.state.activeKey,kt=Tt.props.onActiveChange;Yt!==bt&&(Tt.setState({activeKey:bt}),bt!==null&&Tt.scrollTo({key:bt}),kt==null||kt(bt))},Tt.getActiveItem=function(){var bt=Tt.state,Yt=bt.activeKey,kt=bt.flattenNodes;return Yt===null?null:kt.find(function(Mt){var ln=Mt.key;return ln===Yt})||null},Tt.offsetActiveKey=function(bt){var Yt=Tt.state,kt=Yt.flattenNodes,Mt=Yt.activeKey,ln=kt.findIndex(function(Hn){var nr=Hn.key;return nr===Mt});ln===-1&&bt<0&&(ln=kt.length),ln=(ln+bt+kt.length)%kt.length;var zn=kt[ln];if(zn){var Gn=zn.key;Tt.onActiveChange(Gn)}else Tt.onActiveChange(null)},Tt.onKeyDown=function(bt){var Yt=Tt.state,kt=Yt.activeKey,Mt=Yt.expandedKeys,ln=Yt.checkedKeys,zn=Yt.fieldNames,Gn=Tt.props,Hn=Gn.onKeyDown,nr=Gn.checkable,Xn=Gn.selectable;switch(bt.which){case Se.Z.UP:{Tt.offsetActiveKey(-1),bt.preventDefault();break}case Se.Z.DOWN:{Tt.offsetActiveKey(1),bt.preventDefault();break}}var qt=Tt.getActiveItem();if(qt&&qt.data){var vn=Tt.getTreeNodeRequiredProps(),Un=qt.data.isLeaf===!1||!!(qt.data[zn.children]||[]).length,Ln=(0,Re.F)((0,be.Z)((0,be.Z)({},(0,Re.H8)(kt,vn)),{},{data:qt.data,active:!0}));switch(bt.which){case Se.Z.LEFT:{Un&&Mt.includes(kt)?Tt.onNodeExpand({},Ln):qt.parent&&Tt.onActiveChange(qt.parent.key),bt.preventDefault();break}case Se.Z.RIGHT:{Un&&!Mt.includes(kt)?Tt.onNodeExpand({},Ln):qt.children&&qt.children.length&&Tt.onActiveChange(qt.children[0].key),bt.preventDefault();break}case Se.Z.ENTER:case Se.Z.SPACE:{nr&&!Ln.disabled&&Ln.checkable!==!1&&!Ln.disableCheckbox?Tt.onNodeCheck({},Ln,!ln.includes(kt)):!nr&&Xn&&!Ln.disabled&&Ln.selectable!==!1&&Tt.onNodeSelect({},Ln);break}}}Hn==null||Hn(bt)},Tt.setUncontrolledState=function(bt){var Yt=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,kt=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null;if(!Tt.destroyed){var Mt=!1,ln=!0,zn={};Object.keys(bt).forEach(function(Gn){if(Gn in Tt.props){ln=!1;return}Mt=!0,zn[Gn]=bt[Gn]}),Mt&&(!Yt||ln)&&Tt.setState((0,be.Z)((0,be.Z)({},zn),kt))}},Tt.scrollTo=function(bt){Tt.listRef.current.scrollTo(bt)},Tt}return(0,ve.Z)(Ht,[{key:"componentDidMount",value:function(){this.destroyed=!1,this.onUpdated()}},{key:"componentDidUpdate",value:function(){this.onUpdated()}},{key:"onUpdated",value:function(){var St=this.props.activeKey;St!==void 0&&St!==this.state.activeKey&&(this.setState({activeKey:St}),St!==null&&this.scrollTo({key:St}))}},{key:"componentWillUnmount",value:function(){window.removeEventListener("dragend",this.onWindowDragEnd),this.destroyed=!0}},{key:"resetDragState",value:function(){this.setState({dragOverNodeKey:null,dropPosition:null,dropLevelOffset:null,dropTargetKey:null,dropContainerKey:null,dropTargetPos:null,dropAllowed:!1})}},{key:"render",value:function(){var St,Qt=this.state,gt=Qt.focused,bt=Qt.flattenNodes,Yt=Qt.keyEntities,kt=Qt.draggingNodeKey,Mt=Qt.activeKey,ln=Qt.dropLevelOffset,zn=Qt.dropContainerKey,Gn=Qt.dropTargetKey,Hn=Qt.dropPosition,nr=Qt.dragOverNodeKey,Xn=Qt.indent,qt=this.props,vn=qt.prefixCls,Un=qt.className,Ln=qt.style,yr=qt.showLine,kr=qt.focusable,Dr=qt.tabIndex,Gr=Dr===void 0?0:Dr,Ma=qt.selectable,Ja=qt.showIcon,Na=qt.icon,Da=qt.switcherIcon,Di=qt.draggable,_a=qt.checkable,Vr=qt.checkStrictly,Ya=qt.disabled,ui=qt.motion,mr=qt.loadData,Er=qt.filterTreeNode,ba=qt.height,Fn=qt.itemHeight,gr=qt.virtual,br=qt.titleRender,_r=qt.dropIndicatorRender,ha=qt.onContextMenu,Ct=qt.onScroll,we=qt.direction,Be=qt.rootClassName,Le=qt.rootStyle,je=(0,ce.Z)(this.props,{aria:!0,data:!0}),Xe;return Di&&((0,Ne.Z)(Di)==="object"?Xe=Di:typeof Di=="function"?Xe={nodeDraggable:Di}:Xe={}),ne.createElement(le.k.Provider,{value:{prefixCls:vn,selectable:Ma,showIcon:Ja,icon:Na,switcherIcon:Da,draggable:Xe,draggingNodeKey:kt,checkable:_a,checkStrictly:Vr,disabled:Ya,keyEntities:Yt,dropLevelOffset:ln,dropContainerKey:zn,dropTargetKey:Gn,dropPosition:Hn,dragOverNodeKey:nr,indent:Xn,direction:we,dropIndicatorRender:_r,loadData:mr,filterTreeNode:Er,titleRender:br,onNodeClick:this.onNodeClick,onNodeDoubleClick:this.onNodeDoubleClick,onNodeExpand:this.onNodeExpand,onNodeSelect:this.onNodeSelect,onNodeCheck:this.onNodeCheck,onNodeLoad:this.onNodeLoad,onNodeMouseEnter:this.onNodeMouseEnter,onNodeMouseLeave:this.onNodeMouseLeave,onNodeContextMenu:this.onNodeContextMenu,onNodeDragStart:this.onNodeDragStart,onNodeDragEnter:this.onNodeDragEnter,onNodeDragOver:this.onNodeDragOver,onNodeDragLeave:this.onNodeDragLeave,onNodeDragEnd:this.onNodeDragEnd,onNodeDrop:this.onNodeDrop}},ne.createElement("div",{role:"tree",className:Ae()(vn,Un,Be,(St={},(0,He.Z)(St,"".concat(vn,"-show-line"),yr),(0,He.Z)(St,"".concat(vn,"-focused"),gt),(0,He.Z)(St,"".concat(vn,"-active-focused"),Mt!==null),St)),style:Le},ne.createElement(Zt,(0,Oe.Z)({ref:this.listRef,prefixCls:vn,style:Ln,data:bt,disabled:Ya,selectable:Ma,checkable:!!_a,motion:ui,dragging:kt!==null,height:ba,itemHeight:Fn,virtual:gr,focusable:kr,focused:gt,tabIndex:Gr,activeItem:this.getActiveItem(),onFocus:this.onFocus,onBlur:this.onBlur,onKeyDown:this.onKeyDown,onActiveChange:this.onActiveChange,onListChangeStart:this.onListChangeStart,onListChangeEnd:this.onListChangeEnd,onContextMenu:ha,onScroll:Ct},this.getTreeNodeRequiredProps(),je))))}}],[{key:"getDerivedStateFromProps",value:function(St,Qt){var gt=Qt.prevProps,bt={prevProps:St};function Yt(kr){return!gt&&kr in St||gt&>[kr]!==St[kr]}var kt,Mt=Qt.fieldNames;if(Yt("fieldNames")&&(Mt=(0,Re.w$)(St.fieldNames),bt.fieldNames=Mt),Yt("treeData")?kt=St.treeData:Yt("children")&&((0,te.ZP)(!1,"`children` of Tree is deprecated. Please use `treeData` instead."),kt=(0,Re.zn)(St.children)),kt){bt.treeData=kt;var ln=(0,Re.I8)(kt,{fieldNames:Mt});bt.keyEntities=(0,be.Z)((0,He.Z)({},ut,lt),ln.keyEntities)}var zn=bt.keyEntities||Qt.keyEntities;if(Yt("expandedKeys")||gt&&Yt("autoExpandParent"))bt.expandedKeys=St.autoExpandParent||!gt&&St.defaultExpandParent?(0,en.r7)(St.expandedKeys,zn):St.expandedKeys;else if(!gt&&St.defaultExpandAll){var Gn=(0,be.Z)({},zn);delete Gn[ut],bt.expandedKeys=Object.keys(Gn).map(function(kr){return Gn[kr].key})}else!gt&&St.defaultExpandedKeys&&(bt.expandedKeys=St.autoExpandParent||St.defaultExpandParent?(0,en.r7)(St.defaultExpandedKeys,zn):St.defaultExpandedKeys);if(bt.expandedKeys||delete bt.expandedKeys,kt||bt.expandedKeys){var Hn=(0,Re.oH)(kt||Qt.treeData,bt.expandedKeys||Qt.expandedKeys,Mt);bt.flattenNodes=Hn}if(St.selectable&&(Yt("selectedKeys")?bt.selectedKeys=(0,en.BT)(St.selectedKeys,St):!gt&&St.defaultSelectedKeys&&(bt.selectedKeys=(0,en.BT)(St.defaultSelectedKeys,St))),St.checkable){var nr;if(Yt("checkedKeys")?nr=(0,en.E6)(St.checkedKeys)||{}:!gt&&St.defaultCheckedKeys?nr=(0,en.E6)(St.defaultCheckedKeys)||{}:kt&&(nr=(0,en.E6)(St.checkedKeys)||{checkedKeys:Qt.checkedKeys,halfCheckedKeys:Qt.halfCheckedKeys}),nr){var Xn=nr,qt=Xn.checkedKeys,vn=qt===void 0?[]:qt,Un=Xn.halfCheckedKeys,Ln=Un===void 0?[]:Un;if(!St.checkStrictly){var yr=(0,mn.S)(vn,!0,zn);vn=yr.checkedKeys,Ln=yr.halfCheckedKeys}bt.checkedKeys=vn,bt.halfCheckedKeys=Ln}}return Yt("loadedKeys")&&(bt.loadedKeys=St.loadedKeys),bt}}]),Ht}(ne.Component);on.defaultProps={prefixCls:"rc-tree",showLine:!1,showIcon:!0,selectable:!0,multiple:!1,checkable:!1,disabled:!1,checkStrictly:!1,draggable:!1,defaultExpandParent:!0,autoExpandParent:!1,defaultExpandAll:!1,defaultExpandedKeys:[],defaultCheckedKeys:[],defaultSelectedKeys:[],dropIndicatorRender:se,allowDrop:function(){return!0},expandAction:!1},on.TreeNode=Ie.Z;var Mn=on,Dn=Mn},35654:function(At,It,Te){"use strict";Te.d(It,{BT:function(){return ne},E6:function(){return fe},L0:function(){return xe},OM:function(){return te},_5:function(){return Pe},r7:function(){return he},wA:function(){return Ae},yx:function(){return pe}});var Oe=Te(94480),He=Te(76190),Ne=Te(48736),be=Te(59301),_e=Te(39417),Me=Te(67841),ve=Te(71430),Ee=null;function Pe(ie,ue){if(!ie)return[];var me=ie.slice(),Ce=me.indexOf(ue);return Ce>=0&&me.splice(Ce,1),me}function xe(ie,ue){var me=(ie||[]).slice();return me.indexOf(ue)===-1&&me.push(ue),me}function pe(ie){return ie.split("-")}function Ae(ie,ue){var me=[],Ce=(0,Me.Z)(ue,ie);function Ie(){var Fe=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[];Fe.forEach(function(Re){var Ue=Re.key,Ge=Re.children;me.push(Ue),Ie(Ge)})}return Ie(Ce.children),me}function Se(ie){if(ie.parent){var ue=pe(ie.pos);return Number(ue[ue.length-1])===ie.parent.children.length-1}return!1}function ce(ie){var ue=pe(ie.pos);return Number(ue[ue.length-1])===0}function te(ie,ue,me,Ce,Ie,Fe,Re,Ue,Ge,Je){var Qe,rt=ie.clientX,$e=ie.clientY,qe=ie.target.getBoundingClientRect(),ot=qe.top,at=qe.height,ut=(Je==="rtl"?-1:1)*(((Ie==null?void 0:Ie.x)||0)-rt),nt=(ut-12)/Ce,lt=(0,Me.Z)(Ue,me.props.eventKey);if($e<ot+at/2){var yt=Re.findIndex(function(Dn){return Dn.key===lt.key}),ft=yt<=0?0:yt-1,ct=Re[ft].key;lt=(0,Me.Z)(Ue,ct)}var vt=lt.key,Ut=lt,Zt=lt.key,en=0,mn=0;if(!Ge.includes(vt))for(var Bt=0;Bt<nt&&Se(lt);Bt+=1)lt=lt.parent,mn+=1;var tn=ue.props.data,on=lt.node,Mn=!0;return ce(lt)&<.level===0&&$e<ot+at/2&&Fe({dragNode:tn,dropNode:on,dropPosition:-1})&<.key===me.props.eventKey?en=-1:(Ut.children||[]).length&&Ge.includes(Zt)?Fe({dragNode:tn,dropNode:on,dropPosition:0})?en=0:Mn=!1:mn===0?nt>-1.5?Fe({dragNode:tn,dropNode:on,dropPosition:1})?en=1:Mn=!1:Fe({dragNode:tn,dropNode:on,dropPosition:0})?en=0:Fe({dragNode:tn,dropNode:on,dropPosition:1})?en=1:Mn=!1:Fe({dragNode:tn,dropNode:on,dropPosition:1})?en=1:Mn=!1,{dropPosition:en,dropLevelOffset:mn,dropTargetKey:lt.key,dropTargetPos:lt.pos,dragOverNodeKey:Zt,dropContainerKey:en===0?null:((Qe=lt.parent)===null||Qe===void 0?void 0:Qe.key)||null,dropAllowed:Mn}}function ne(ie,ue){if(ie){var me=ue.multiple;return me?ie.slice():ie.length?[ie[0]]:ie}}var le=function(ue){return ue};function se(ie,ue){if(!ie)return[];var me=ue||{},Ce=me.processProps,Ie=Ce===void 0?le:Ce,Fe=Array.isArray(ie)?ie:[ie];return Fe.map(function(Re){var Ue=Re.children,Ge=_objectWithoutProperties(Re,Ee),Je=se(Ue,ue);return React.createElement(TreeNode,_extends({key:Ge.key},Ie(Ge)),Je)})}function fe(ie){if(!ie)return null;var ue;if(Array.isArray(ie))ue={checkedKeys:ie,halfCheckedKeys:void 0};else if((0,He.Z)(ie)==="object")ue={checkedKeys:ie.checked||void 0,halfCheckedKeys:ie.halfChecked||void 0};else return(0,Ne.ZP)(!1,"`checkedKeys` is not an array or an object"),null;return ue}function he(ie,ue){var me=new Set;function Ce(Ie){if(!me.has(Ie)){var Fe=(0,Me.Z)(ue,Ie);if(Fe){me.add(Ie);var Re=Fe.parent,Ue=Fe.node;Ue.disabled||Re&&Ce(Re.key)}}}return(ie||[]).forEach(function(Ie){Ce(Ie)}),(0,Oe.Z)(me)}},90782:function(At,It,Te){"use strict";Te.d(It,{S:function(){return ve}});var Oe=Te(48736),He=Te(67841);function Ne(Ee,Pe){var xe=new Set;return Ee.forEach(function(pe){Pe.has(pe)||xe.add(pe)}),xe}function be(Ee){var Pe=Ee||{},xe=Pe.disabled,pe=Pe.disableCheckbox,Ae=Pe.checkable;return!!(xe||pe)||Ae===!1}function _e(Ee,Pe,xe,pe){for(var Ae=new Set(Ee),Se=new Set,ce=0;ce<=xe;ce+=1){var te=Pe.get(ce)||new Set;te.forEach(function(fe){var he=fe.key,ie=fe.node,ue=fe.children,me=ue===void 0?[]:ue;Ae.has(he)&&!pe(ie)&&me.filter(function(Ce){return!pe(Ce.node)}).forEach(function(Ce){Ae.add(Ce.key)})})}for(var ne=new Set,le=xe;le>=0;le-=1){var se=Pe.get(le)||new Set;se.forEach(function(fe){var he=fe.parent,ie=fe.node;if(!(pe(ie)||!fe.parent||ne.has(fe.parent.key))){if(pe(fe.parent.node)){ne.add(he.key);return}var ue=!0,me=!1;(he.children||[]).filter(function(Ce){return!pe(Ce.node)}).forEach(function(Ce){var Ie=Ce.key,Fe=Ae.has(Ie);ue&&!Fe&&(ue=!1),!me&&(Fe||Se.has(Ie))&&(me=!0)}),ue&&Ae.add(he.key),me&&Se.add(he.key),ne.add(he.key)}})}return{checkedKeys:Array.from(Ae),halfCheckedKeys:Array.from(Ne(Se,Ae))}}function Me(Ee,Pe,xe,pe,Ae){for(var Se=new Set(Ee),ce=new Set(Pe),te=0;te<=pe;te+=1){var ne=xe.get(te)||new Set;ne.forEach(function(he){var ie=he.key,ue=he.node,me=he.children,Ce=me===void 0?[]:me;!Se.has(ie)&&!ce.has(ie)&&!Ae(ue)&&Ce.filter(function(Ie){return!Ae(Ie.node)}).forEach(function(Ie){Se.delete(Ie.key)})})}ce=new Set;for(var le=new Set,se=pe;se>=0;se-=1){var fe=xe.get(se)||new Set;fe.forEach(function(he){var ie=he.parent,ue=he.node;if(!(Ae(ue)||!he.parent||le.has(he.parent.key))){if(Ae(he.parent.node)){le.add(ie.key);return}var me=!0,Ce=!1;(ie.children||[]).filter(function(Ie){return!Ae(Ie.node)}).forEach(function(Ie){var Fe=Ie.key,Re=Se.has(Fe);me&&!Re&&(me=!1),!Ce&&(Re||ce.has(Fe))&&(Ce=!0)}),me||Se.delete(ie.key),Ce&&ce.add(ie.key),le.add(ie.key)}})}return{checkedKeys:Array.from(Se),halfCheckedKeys:Array.from(Ne(ce,Se))}}function ve(Ee,Pe,xe,pe){var Ae=[],Se;pe?Se=pe:Se=be;var ce=new Set(Ee.filter(function(se){var fe=!!(0,He.Z)(xe,se);return fe||Ae.push(se),fe})),te=new Map,ne=0;Object.keys(xe).forEach(function(se){var fe=xe[se],he=fe.level,ie=te.get(he);ie||(ie=new Set,te.set(he,ie)),ie.add(fe),ne=Math.max(ne,he)}),(0,Oe.ZP)(!Ae.length,"Tree missing follow keys: ".concat(Ae.slice(0,100).map(function(se){return"'".concat(se,"'")}).join(", ")));var le;return Pe===!0?le=_e(ce,te,ne,Se):le=Me(ce,Pe.halfCheckedKeys,te,ne,Se),le}},67841:function(At,It,Te){"use strict";Te.d(It,{Z:function(){return Oe}});function Oe(He,Ne){return He[Ne]}},71430:function(At,It,Te){"use strict";Te.d(It,{F:function(){return he},H8:function(){return fe},I8:function(){return se},km:function(){return Ae},oH:function(){return ne},w$:function(){return Se},zn:function(){return te}});var Oe=Te(76190),He=Te(94480),Ne=Te(33885),be=Te(75931),_e=Te(11592),Me=Te(2738),ve=Te(48736),Ee=Te(67841),Pe=["children"];function xe(ie,ue){return"".concat(ie,"-").concat(ue)}function pe(ie){return ie&&ie.type&&ie.type.isTreeNode}function Ae(ie,ue){return ie!=null?ie:ue}function Se(ie){var ue=ie||{},me=ue.title,Ce=ue._title,Ie=ue.key,Fe=ue.children,Re=me||"title";return{title:Re,_title:Ce||[Re],key:Ie||"key",children:Fe||"children"}}function ce(ie,ue){var me=new Map;function Ce(Ie){var Fe=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"";(Ie||[]).forEach(function(Re){var Ue=Re[ue.key],Ge=Re[ue.children];warning(Ue!=null,"Tree node must have a certain key: [".concat(Fe).concat(Ue,"]"));var Je=String(Ue);warning(!me.has(Je)||Ue===null||Ue===void 0,"Same 'key' exist in the Tree: ".concat(Je)),me.set(Je,!0),Ce(Ge,"".concat(Fe).concat(Je," > "))})}Ce(ie)}function te(ie){function ue(me){var Ce=(0,_e.Z)(me);return Ce.map(function(Ie){if(!pe(Ie))return(0,ve.ZP)(!Ie,"Tree/TreeNode can only accept TreeNode as children."),null;var Fe=Ie.key,Re=Ie.props,Ue=Re.children,Ge=(0,be.Z)(Re,Pe),Je=(0,Ne.Z)({key:Fe},Ge),Qe=ue(Ue);return Qe.length&&(Je.children=Qe),Je}).filter(function(Ie){return Ie})}return ue(ie)}function ne(ie,ue,me){var Ce=Se(me),Ie=Ce._title,Fe=Ce.key,Re=Ce.children,Ue=new Set(ue===!0?[]:ue),Ge=[];function Je(Qe){var rt=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;return Qe.map(function($e,qe){for(var ot=xe(rt?rt.pos:"0",qe),at=Ae($e[Fe],ot),ut,nt=0;nt<Ie.length;nt+=1){var lt=Ie[nt];if($e[lt]!==void 0){ut=$e[lt];break}}var yt=(0,Ne.Z)((0,Ne.Z)({},(0,Me.Z)($e,[].concat((0,He.Z)(Ie),[Fe,Re]))),{},{title:ut,key:at,parent:rt,pos:ot,children:null,data:$e,isStart:[].concat((0,He.Z)(rt?rt.isStart:[]),[qe===0]),isEnd:[].concat((0,He.Z)(rt?rt.isEnd:[]),[qe===Qe.length-1])});return Ge.push(yt),ue===!0||Ue.has(at)?yt.children=Je($e[Re]||[],yt):yt.children=[],yt})}return Je(ie),Ge}function le(ie,ue,me){var Ce={};(0,Oe.Z)(me)==="object"?Ce=me:Ce={externalGetKey:me},Ce=Ce||{};var Ie=Ce,Fe=Ie.childrenPropName,Re=Ie.externalGetKey,Ue=Ie.fieldNames,Ge=Se(Ue),Je=Ge.key,Qe=Ge.children,rt=Fe||Qe,$e;Re?typeof Re=="string"?$e=function(at){return at[Re]}:typeof Re=="function"&&($e=function(at){return Re(at)}):$e=function(at,ut){return Ae(at[Je],ut)};function qe(ot,at,ut,nt){var lt=ot?ot[rt]:ie,yt=ot?xe(ut.pos,at):"0",ft=ot?[].concat((0,He.Z)(nt),[ot]):[];if(ot){var ct=$e(ot,yt),vt={node:ot,index:at,pos:yt,key:ct,parentPos:ut.node?ut.pos:null,level:ut.level+1,nodes:ft};ue(vt)}lt&<.forEach(function(Ut,Zt){qe(Ut,Zt,{node:ot,pos:yt,level:ut?ut.level+1:-1},ft)})}qe(null)}function se(ie){var ue=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},me=ue.initWrapper,Ce=ue.processEntity,Ie=ue.onProcessFinished,Fe=ue.externalGetKey,Re=ue.childrenPropName,Ue=ue.fieldNames,Ge=arguments.length>2?arguments[2]:void 0,Je=Fe||Ge,Qe={},rt={},$e={posEntities:Qe,keyEntities:rt};return me&&($e=me($e)||$e),le(ie,function(qe){var ot=qe.node,at=qe.index,ut=qe.pos,nt=qe.key,lt=qe.parentPos,yt=qe.level,ft=qe.nodes,ct={node:ot,nodes:ft,index:at,key:nt,pos:ut,level:yt},vt=Ae(nt,ut);Qe[ut]=ct,rt[vt]=ct,ct.parent=Qe[lt],ct.parent&&(ct.parent.children=ct.parent.children||[],ct.parent.children.push(ct)),Ce&&Ce(ct,$e)},{externalGetKey:Je,childrenPropName:Re,fieldNames:Ue}),Ie&&Ie($e),$e}function fe(ie,ue){var me=ue.expandedKeys,Ce=ue.selectedKeys,Ie=ue.loadedKeys,Fe=ue.loadingKeys,Re=ue.checkedKeys,Ue=ue.halfCheckedKeys,Ge=ue.dragOverNodeKey,Je=ue.dropPosition,Qe=ue.keyEntities,rt=(0,Ee.Z)(Qe,ie),$e={eventKey:ie,expanded:me.indexOf(ie)!==-1,selected:Ce.indexOf(ie)!==-1,loaded:Ie.indexOf(ie)!==-1,loading:Fe.indexOf(ie)!==-1,checked:Re.indexOf(ie)!==-1,halfChecked:Ue.indexOf(ie)!==-1,pos:String(rt?rt.pos:""),dragOver:Ge===ie&&Je===0,dragOverGapTop:Ge===ie&&Je===-1,dragOverGapBottom:Ge===ie&&Je===1};return $e}function he(ie){var ue=ie.data,me=ie.expanded,Ce=ie.selected,Ie=ie.checked,Fe=ie.loaded,Re=ie.loading,Ue=ie.halfChecked,Ge=ie.dragOver,Je=ie.dragOverGapTop,Qe=ie.dragOverGapBottom,rt=ie.pos,$e=ie.active,qe=ie.eventKey,ot=(0,Ne.Z)((0,Ne.Z)({},ue),{},{expanded:me,selected:Ce,checked:Ie,loaded:Fe,loading:Re,halfChecked:Ue,dragOver:Ge,dragOverGapTop:Je,dragOverGapBottom:Qe,pos:rt,active:$e,key:qe});return"props"in ot||Object.defineProperty(ot,"props",{get:function(){return(0,ve.ZP)(!1,"Second param return from event is node data instead of TreeNode instance. Please read value directly instead of reading from `props`."),ie}}),ot}},8224:function(At,It,Te){"use strict";Te.d(It,{Z:function(){return He}});var Oe=Te(4676);function He(Ne,be,_e,Me){var ve=Oe.unstable_batchedUpdates?function(Pe){Oe.unstable_batchedUpdates(_e,Pe)}:_e;return Ne!=null&&Ne.addEventListener&&Ne.addEventListener(be,ve,Me),{remove:function(){Ne!=null&&Ne.removeEventListener&&Ne.removeEventListener(be,ve,Me)}}}},55468:function(At,It,Te){"use strict";Te.d(It,{g1:function(){return pe},os:function(){return Se}});var Oe=/margin|padding|width|height|max|min|offset/,He={left:!0,top:!0},Ne={cssFloat:1,styleFloat:1,float:1};function be(ce){return ce.nodeType===1?ce.ownerDocument.defaultView.getComputedStyle(ce,null):{}}function _e(ce,te,ne){if(te=te.toLowerCase(),ne==="auto"){if(te==="height")return ce.offsetHeight;if(te==="width")return ce.offsetWidth}return te in He||(He[te]=Oe.test(te)),He[te]?parseFloat(ne)||0:ne}function Me(ce,te){var ne=arguments.length,le=be(ce);return te=Ne[te]?"cssFloat"in ce.style?"cssFloat":"styleFloat":te,ne===1?le:_e(ce,te,le[te]||ce.style[te])}function ve(ce,te,ne){var le=arguments.length;if(te=Ne[te]?"cssFloat"in ce.style?"cssFloat":"styleFloat":te,le===3)return typeof ne=="number"&&Oe.test(te)&&(ne="".concat(ne,"px")),ce.style[te]=ne,ne;for(var se in te)te.hasOwnProperty(se)&&ve(ce,se,te[se]);return be(ce)}function Ee(ce){return ce===document.body?document.documentElement.clientWidth:ce.offsetWidth}function Pe(ce){return ce===document.body?window.innerHeight||document.documentElement.clientHeight:ce.offsetHeight}function xe(){var ce=Math.max(document.documentElement.scrollWidth,document.body.scrollWidth),te=Math.max(document.documentElement.scrollHeight,document.body.scrollHeight);return{width:ce,height:te}}function pe(){var ce=document.documentElement.clientWidth,te=window.innerHeight||document.documentElement.clientHeight;return{width:ce,height:te}}function Ae(){return{scrollLeft:Math.max(document.documentElement.scrollLeft,document.body.scrollLeft),scrollTop:Math.max(document.documentElement.scrollTop,document.body.scrollTop)}}function Se(ce){var te=ce.getBoundingClientRect(),ne=document.documentElement;return{left:te.left+(window.pageXOffset||ne.scrollLeft)-(ne.clientLeft||document.body.clientLeft||0),top:te.top+(window.pageYOffset||ne.scrollTop)-(ne.clientTop||document.body.clientTop||0)}}},24514:function(At,It,Te){"use strict";Te.d(It,{G:function(){return be}});var Oe=Te(47273),He=function(Me){if((0,Oe.Z)()&&window.document.documentElement){var ve=Array.isArray(Me)?Me:[Me],Ee=window.document.documentElement;return ve.some(function(Pe){return Pe in Ee.style})}return!1},Ne=function(Me,ve){if(!He(Me))return!1;var Ee=document.createElement("div"),Pe=Ee.style[Me];return Ee.style[Me]=ve,Ee.style[Me]!==Pe};function be(_e,Me){return!Array.isArray(_e)&&Me!==void 0?Ne(_e,Me):He(_e)}},51581:function(At,It,Te){"use strict";Object.defineProperty(It,"__esModule",{value:!0});var Oe=function(){function Ae(Se,ce){for(var te=0;te<ce.length;te++){var ne=ce[te];ne.enumerable=ne.enumerable||!1,ne.configurable=!0,"value"in ne&&(ne.writable=!0),Object.defineProperty(Se,ne.key,ne)}}return function(Se,ce,te){return ce&&Ae(Se.prototype,ce),te&&Ae(Se,te),Se}}(),He=Te(59301),Ne=Me(He),be=Te(12708),_e=Me(be);function Me(Ae){return Ae&&Ae.__esModule?Ae:{default:Ae}}function ve(Ae,Se){var ce={};for(var te in Ae)Se.indexOf(te)>=0||Object.prototype.hasOwnProperty.call(Ae,te)&&(ce[te]=Ae[te]);return ce}function Ee(Ae,Se){if(!(Ae instanceof Se))throw new TypeError("Cannot call a class as a function")}function Pe(Ae,Se){if(!Ae)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Se&&(typeof Se=="object"||typeof Se=="function")?Se:Ae}function xe(Ae,Se){if(typeof Se!="function"&&Se!==null)throw new TypeError("Super expression must either be null or a function, not "+typeof Se);Ae.prototype=Object.create(Se&&Se.prototype,{constructor:{value:Ae,enumerable:!1,writable:!0,configurable:!0}}),Se&&(Object.setPrototypeOf?Object.setPrototypeOf(Ae,Se):Ae.__proto__=Se)}var pe=function(Ae){xe(Se,Ae);function Se(ce){Ee(this,Se);var te=Pe(this,(Se.__proto__||Object.getPrototypeOf(Se)).call(this,ce));return te.scrollListener=te.scrollListener.bind(te),te.eventListenerOptions=te.eventListenerOptions.bind(te),te.mousewheelListener=te.mousewheelListener.bind(te),te}return Oe(Se,[{key:"componentDidMount",value:function(){this.pageLoaded=this.props.pageStart,this.options=this.eventListenerOptions(),this.attachScrollListener()}},{key:"componentDidUpdate",value:function(){if(this.props.isReverse&&this.loadMore){var te=this.getParentElement(this.scrollComponent);te.scrollTop=te.scrollHeight-this.beforeScrollHeight+this.beforeScrollTop,this.loadMore=!1}this.attachScrollListener()}},{key:"componentWillUnmount",value:function(){this.detachScrollListener(),this.detachMousewheelListener()}},{key:"isPassiveSupported",value:function(){var te=!1,ne={get passive(){te=!0}};try{document.addEventListener("test",null,ne),document.removeEventListener("test",null,ne)}catch(le){}return te}},{key:"eventListenerOptions",value:function(){var te=this.props.useCapture;return this.isPassiveSupported()&&(te={useCapture:this.props.useCapture,passive:!0}),te}},{key:"setDefaultLoader",value:function(te){this.defaultLoader=te}},{key:"detachMousewheelListener",value:function(){var te=window;this.props.useWindow===!1&&(te=this.scrollComponent.parentNode),te.removeEventListener("mousewheel",this.mousewheelListener,this.options?this.options:this.props.useCapture)}},{key:"detachScrollListener",value:function(){var te=window;this.props.useWindow===!1&&(te=this.getParentElement(this.scrollComponent)),te.removeEventListener("scroll",this.scrollListener,this.options?this.options:this.props.useCapture),te.removeEventListener("resize",this.scrollListener,this.options?this.options:this.props.useCapture)}},{key:"getParentElement",value:function(te){var ne=this.props.getScrollParent&&this.props.getScrollParent();return ne!=null?ne:te&&te.parentNode}},{key:"filterProps",value:function(te){return te}},{key:"attachScrollListener",value:function(){var te=this.getParentElement(this.scrollComponent);if(!(!this.props.hasMore||!te)){var ne=window;this.props.useWindow===!1&&(ne=te),ne.addEventListener("mousewheel",this.mousewheelListener,this.options?this.options:this.props.useCapture),ne.addEventListener("scroll",this.scrollListener,this.options?this.options:this.props.useCapture),ne.addEventListener("resize",this.scrollListener,this.options?this.options:this.props.useCapture),this.props.initialLoad&&this.scrollListener()}}},{key:"mousewheelListener",value:function(te){te.deltaY===1&&!this.isPassiveSupported()&&te.preventDefault()}},{key:"scrollListener",value:function(){var te=this.scrollComponent,ne=window,le=this.getParentElement(te),se=void 0;if(this.props.useWindow){var fe=document.documentElement||document.body.parentNode||document.body,he=ne.pageYOffset!==void 0?ne.pageYOffset:fe.scrollTop;this.props.isReverse?se=he:se=this.calculateOffset(te,he)}else this.props.isReverse?se=le.scrollTop:se=te.scrollHeight-le.scrollTop-le.clientHeight;se<Number(this.props.threshold)&&te&&te.offsetParent!==null&&(this.detachScrollListener(),this.beforeScrollHeight=le.scrollHeight,this.beforeScrollTop=le.scrollTop,typeof this.props.loadMore=="function"&&(this.props.loadMore(this.pageLoaded+=1),this.loadMore=!0))}},{key:"calculateOffset",value:function(te,ne){return te?this.calculateTopPosition(te)+(te.offsetHeight-ne-window.innerHeight):0}},{key:"calculateTopPosition",value:function(te){return te?te.offsetTop+this.calculateTopPosition(te.offsetParent):0}},{key:"render",value:function(){var te=this,ne=this.filterProps(this.props),le=ne.children,se=ne.element,fe=ne.hasMore,he=ne.initialLoad,ie=ne.isReverse,ue=ne.loader,me=ne.loadMore,Ce=ne.pageStart,Ie=ne.ref,Fe=ne.threshold,Re=ne.useCapture,Ue=ne.useWindow,Ge=ne.getScrollParent,Je=ve(ne,["children","element","hasMore","initialLoad","isReverse","loader","loadMore","pageStart","ref","threshold","useCapture","useWindow","getScrollParent"]);Je.ref=function(rt){te.scrollComponent=rt,Ie&&Ie(rt)};var Qe=[le];return fe&&(ue?ie?Qe.unshift(ue):Qe.push(ue):this.defaultLoader&&(ie?Qe.unshift(this.defaultLoader):Qe.push(this.defaultLoader))),Ne.default.createElement(se,Je,Qe)}}]),Se}(He.Component);pe.propTypes={children:_e.default.node.isRequired,element:_e.default.node,hasMore:_e.default.bool,initialLoad:_e.default.bool,isReverse:_e.default.bool,loader:_e.default.node,loadMore:_e.default.func.isRequired,pageStart:_e.default.number,ref:_e.default.func,getScrollParent:_e.default.func,threshold:_e.default.number,useCapture:_e.default.bool,useWindow:_e.default.bool},pe.defaultProps={element:"div",hasMore:!1,initialLoad:!0,pageStart:0,ref:null,threshold:250,useWindow:!0,isReverse:!1,useCapture:!1,loader:null,getScrollParent:null},It.default=pe,At.exports=It.default},26724:function(At,It,Te){At.exports=Te(51581)},81683:function(At,It,Te){"use strict";var Oe=Te(55973),He=Array.prototype.concat,Ne=Array.prototype.slice,be=At.exports=function(Me){for(var ve=[],Ee=0,Pe=Me.length;Ee<Pe;Ee++){var xe=Me[Ee];Oe(xe)?ve=He.call(ve,Ne.call(xe)):ve.push(xe)}return ve};be.wrap=function(_e){return function(){return _e(be(arguments))}}},27774:function(At,It){"use strict";Object.defineProperty(It,"__esModule",{value:!0}),It.SizeSensorId=It.SensorTabIndex=It.SensorClassName=void 0;var Te="size-sensor-id";It.SizeSensorId=Te;var Oe="size-sensor-object";It.SensorClassName=Oe;var He="-1";It.SensorTabIndex=He},79301:function(At,It){"use strict";Object.defineProperty(It,"__esModule",{value:!0}),It.default=void 0;var Te=function(He){var Ne=arguments.length>1&&arguments[1]!==void 0?arguments[1]:60,be=null;return function(){for(var _e=this,Me=arguments.length,ve=new Array(Me),Ee=0;Ee<Me;Ee++)ve[Ee]=arguments[Ee];clearTimeout(be),be=setTimeout(function(){He.apply(_e,ve)},Ne)}};It.default=Te},79789:function(At,It){"use strict";Object.defineProperty(It,"__esModule",{value:!0}),It.default=void 0;var Te=1,Oe=function(){return"".concat(Te++)};It.default=Oe},47242:function(At,It,Te){"use strict";Object.defineProperty(It,"__esModule",{value:!0}),It.ver=It.clear=It.bind=void 0;var Oe=Te(95270),He=function(Me,ve){var Ee=(0,Oe.getSensor)(Me);return Ee.bind(ve),function(){Ee.unbind(ve)}};It.bind=He;var Ne=function(Me){var ve=(0,Oe.getSensor)(Me);(0,Oe.removeSensor)(ve)};It.clear=Ne;var be="1.0.2";It.ver=be},95270:function(At,It,Te){"use strict";Object.defineProperty(It,"__esModule",{value:!0}),It.removeSensor=It.getSensor=It.Sensors=void 0;var Oe=be(Te(79789)),He=Te(57829),Ne=Te(27774);function be(Pe){return Pe&&Pe.__esModule?Pe:{default:Pe}}var _e={};It.Sensors=_e;function Me(Pe){Pe&&_e[Pe]&&delete _e[Pe]}var ve=function(xe){var pe=xe.getAttribute(Ne.SizeSensorId);if(pe&&_e[pe])return _e[pe];var Ae=(0,Oe.default)();xe.setAttribute(Ne.SizeSensorId,Ae);var Se=(0,He.createSensor)(xe,function(){return Me(Ae)});return _e[Ae]=Se,Se};It.getSensor=ve;var Ee=function(xe){var pe=xe.element.getAttribute(Ne.SizeSensorId);xe.destroy(),Me(pe)};It.removeSensor=Ee},57829:function(At,It,Te){"use strict";Object.defineProperty(It,"__esModule",{value:!0}),It.createSensor=void 0;var Oe=Te(20953),He=Te(55202),Ne=typeof ResizeObserver!="undefined"?He.createSensor:Oe.createSensor;It.createSensor=Ne},20953:function(At,It,Te){"use strict";Object.defineProperty(It,"__esModule",{value:!0}),It.createSensor=void 0;var Oe=Ne(Te(79301)),He=Te(27774);function Ne(_e){return _e&&_e.__esModule?_e:{default:_e}}var be=function(Me,ve){var Ee=void 0,Pe=[],xe=function(){getComputedStyle(Me).position==="static"&&(Me.style.position="relative");var ne=document.createElement("object");return ne.onload=function(){ne.contentDocument.defaultView.addEventListener("resize",pe),pe()},ne.style.display="block",ne.style.position="absolute",ne.style.top="0",ne.style.left="0",ne.style.height="100%",ne.style.width="100%",ne.style.overflow="hidden",ne.style.pointerEvents="none",ne.style.zIndex="-1",ne.style.opacity="0",ne.setAttribute("class",He.SensorClassName),ne.setAttribute("tabindex",He.SensorTabIndex),ne.type="text/html",Me.appendChild(ne),ne.data="about:blank",ne},pe=(0,Oe.default)(function(){Pe.forEach(function(te){te(Me)})}),Ae=function(ne){Ee||(Ee=xe()),Pe.indexOf(ne)===-1&&Pe.push(ne)},Se=function(){Ee&&Ee.parentNode&&(Ee.contentDocument&&Ee.contentDocument.defaultView.removeEventListener("resize",pe),Ee.parentNode.removeChild(Ee),Me.removeAttribute(He.SizeSensorId),Ee=void 0,Pe=[],ve&&ve())},ce=function(ne){var le=Pe.indexOf(ne);le!==-1&&Pe.splice(le,1),Pe.length===0&&Ee&&Se()};return{element:Me,bind:Ae,destroy:Se,unbind:ce}};It.createSensor=be},55202:function(At,It,Te){"use strict";Object.defineProperty(It,"__esModule",{value:!0}),It.createSensor=void 0;var Oe=Te(27774),He=Ne(Te(79301));function Ne(_e){return _e&&_e.__esModule?_e:{default:_e}}var be=function(Me,ve){var Ee=void 0,Pe=[],xe=(0,He.default)(function(){Pe.forEach(function(te){te(Me)})}),pe=function(){var ne=new ResizeObserver(xe);return ne.observe(Me),xe(),ne},Ae=function(ne){Ee||(Ee=pe()),Pe.indexOf(ne)===-1&&Pe.push(ne)},Se=function(){Ee.disconnect(),Pe=[],Ee=void 0,Me.removeAttribute(Oe.SizeSensorId),ve&&ve()},ce=function(ne){var le=Pe.indexOf(ne);le!==-1&&Pe.splice(le,1),Pe.length===0&&Ee&&Se()};return{element:Me,bind:Ae,destroy:Se,unbind:ce}};It.createSensor=be},82059:function(At){var It=arguments[3],Te=arguments[4],Oe=arguments[5],He=JSON.stringify;At.exports=function(Ne,be){for(var _e,Me=Object.keys(Oe),ve=0,Ee=Me.length;ve<Ee;ve++){var Pe=Me[ve],xe=Oe[Pe].exports;if(xe===Ne||xe&&xe.default===Ne){_e=Pe;break}}if(!_e){_e=Math.floor(Math.pow(16,8)*Math.random()).toString(16);for(var pe={},ve=0,Ee=Me.length;ve<Ee;ve++){var Pe=Me[ve];pe[Pe]=Pe}Te[_e]=["function(require,module,exports){"+Ne+"(self); }",pe]}var Ae=Math.floor(Math.pow(16,8)*Math.random()).toString(16),Se={};Se[_e]=_e,Te[Ae]=["function(require,module,exports){var f = require("+He(_e)+");(f.default ? f.default : f)(self);}",Se];var ce={};te(Ae);function te(ie){ce[ie]=!0;for(var ue in Te[ie][1]){var me=Te[ie][1][ue];ce[me]||te(me)}}var ne="("+It+")({"+Object.keys(ce).map(function(ie){return He(ie)+":["+Te[ie][0]+","+He(Te[ie][1])+"]"}).join(",")+"},{},["+He(Ae)+"])",le=window.URL||window.webkitURL||window.mozURL||window.msURL,se=new Blob([ne],{type:"text/javascript"});if(be&&be.bare)return se;var fe=le.createObjectURL(se),he=new Worker(fe);return he.objectURL=fe,he}},25510:function(At){"use strict";At.exports="data:image/png;base64,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"},32637:function(At){"use strict";At.exports="data:image/jpeg;base64,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"},58143:function(At){"use strict";At.exports="data:image/png;base64,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"},25365:function(At){"use strict";At.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAAAXNSR0IArs4c6QAAA0VJREFUOE+V03lI01EcAPD3fjucs4nmwrXNOY/VdBoe0Tqggi5NgsLaWriWZFQEEvRHBxmL+iMo/KMg6KJSCy03mbapo1vXzCvJUstjZTM1bUzZZP6uF5M0Zwr1/nsHn/d93+/7QjBn3GhuZkm5scvRJIgODWX7sKCQT0oRGIAQorlnp+cIAAhnJghhhobvWRPjQ/rJ8eEVXIxGwcFsGBYWQUTFLrN6yCB9qpjdthA2BSGEsEd1X08NOlrPSiM4PxWJCSNL+HwfSZBMp/Mbr6+vVyyVyQm+SJYrCWea5sOmoMqm4ezu9rqSrUpFjzxBPgpoCkCEwO+3IJIgWRWVpiR5cirF40crZZGc3rkYdDgQp+advUXC9YZs2rjBQRCTwK/T6E9KaJoGJEVxyw3GtNUbt11KWSYp+AuyfRlf86baVJezc0sLb1HIxGxg9mEIIaiurVXgJOiUq6WbV8KVRMD+s45hbftL082DWk0TQohaKJn+9bb3H6Ntr16hvfvU6TExMe4A6G2Xc4+ttqIkL1fXBAAIuGVORMje3BpvNRrxM8fz0xfHxY0F7Hd/HVSYjKVtGpWqI4THc2ELhIRhTHjzXlHax4Z6++3i4iwIIRkAIYQY9+9cfxHKFyVtz8ho9/l8NIbN4mgaQAYDfHI4hRf152TxAsHhK9ev3for2f6F1sZn6w0VFvMuVY43WZHYi08SOKJIP4AYTBbW7XAKCgsvx0tEQobbg1d1fXj/eN2a9Ad6vZ6eBmd+ttlQpK15/uaaLHEFR7lK6QqPiPC63GMsm80eXmN5wmNiAJKIBRjsYCAQCNFAf98lq3lvAYSqqQLNQFNVaXyuMFue6oZ/utZ5J3Chx+NBFEX3xEnEpr5+Z5b1RX2mIHIJyFbngFHXGOr93FX41GI4CSGkAqA/fdcd1N8+xKWpRUiakuLxJ/bosXxdWenDuziOw6UiMdit2Q/cY17U0/nhgtViPD8vNF/h/P2oyz1U8KSqsgDHfQyhWAyyVVow+GOUdo8MnfhnaLq5NdrcC9XmylMUSWFLRSKQuWMXaHlr7/ov6DfGOJB35LSpovw8RRAYmx1ErF27Wvff0HRku9WaA/b613lRUdKrDQ22sl+EE3lgNS3QYQAAAABJRU5ErkJggg=="},75309:function(At){"use strict";At.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGgAAAAgCAYAAAD+Fz2gAAAAAXNSR0IArs4c6QAAEpRJREFUaEPFWwl4VeWZfs/NSthJwmZIwhYQg6wi4ANEdhBUWqWOGwLFGXVYWhyqKJvsoQK1FpECNkjRtkBFBIskhIQga5SwQ4AEyA65SSCQkJB75vm/fzn/OblJsNOZuQ88996z3XO+93+/7/2WGABwN31zmOc+Yg0YMaZhtDJgwDAMtou/G+w7fRHbne/8OBOAaRhw0ZmA6RLXMOlU2lfXy+VhVxHnsyvyf4Bpqne2xTTp1/h2+sjPY9vpvzyXbTc9ME0P7fewd3aoxwS7Y9MjryWOkeeLd3Zdg36Gn8evzz7L3/Xw59aO5/fDrsfvUe5jT0/btHsVT2c9H5Drgme/YfjMChu9IMtg4NyvqEozYDSD4bIAkSAxfGAHibYQcOwfP4fdCsfDgMcbSNLqdYBkCIOQscUDSVi54SUYFkhsOzei3Ob8zAwqDWY3piEA4tetIuNLI+pGZ/fFAeL79WPk4qkdJH5urSARmNxQLphuw3B1M0pOx22BiX/jRHFBgsTtWDeT6HjJNO39/wYkaUwBpwYSX71ixUrGidVv28eYpLEG8MD0MFZIdlpgyOM4e+wgKZZ7A++fYBLZFJ4vjJJTn+UAaMUNLZnBWWEDiX0naOkozh7u97jrc4Bpc3eae1NO7l/GJIsZtPxqZZLl7nS2kbtT7OMurEYmkQvmK90bm2zgO8HSFopYPZoblD7DcucuINcoTttoUtwQxubAMKN7A0m4Oy8gSbD02FU7SBzk2l66u6MIwlwZfzKJBbmu6kwRD+mIS+o4DQBpUAaSsLq4vgBJAVI7k2wur1pMstio4qe4Nw+5Zwt0xmAyDLtHtuiLTmwwpRDgZPDGJE0wSDf2/wCSFX+EiFAxiT8UNzZnlD0myRWvGcLJEq4gFEjcxf0PQBL3Vi1Wae7OJha8CgcPjOIf1psU3ZVacyg0xSQLJMkSy91Z7vB/xd2R4rJetOq8MomBJBSWlH9K1emskmywAr5SV0xxOmOSUm322OMtJj0wk5TS1GJlNZAMAZCQ0DWDxAAQCk8XBAJYm8r7F8ekqspyXD95BMFh7dE49CEulRn5lRo3aeFzvBiTLNktpbYK6jbpzY6UclnGHckgB0jEpPtKYTnVnQQlM+0g/IMaoEW7aCHDpSrzovocwkG6X7u7M2G4U9eRi7PcnJTU1jbar6S2C+Wlxcg6fVTIbBlLpOyW6o+/C6XB5SVt4mIjont/BDRqRnYV3PQak0xPFbbPn4Sw6D7o+9ybikmUfbDVLphkgSRXZE1MsoQEv4QEyS6fhcYnQ9+95cahL1cj6onRaN2ph1gLPP/heRLPp3789nMUZl/G4Envq9zMKf3lYrEpQS/iQS40w318rcnZwSS2MLbT3TkSVHfWZSSsnQtf/wAYLpaWCgdUdx4Ks6oK9yvuYeSMWIRGdKZkNj/9JK6lfc9Z4OUaeRfSUHarCG0fi9GYYyWw7JTwbv3RvH1XGZw0JnHJrMckexIrk9qa3V1lRTl+2BWH66cOo8ugpxHVfxSKc6+ivLTESpg9wK0b2TiX8g0eGfQsgpqEiISUsyiwQWM0DG5tk+82sARIBLYAnj2hUXhsjQJIqjcSEQIUxS7GIcpEDTCA9n06D4OnzENo24e5XRlQmvS251FsAXCD3sw4iz0fz8aIGbFoHtGZzjmb9DVS/74ezdt3Eb6qLqStagM7oeDyWfR+djK6DHoGLD7xJV6dSXaQvMUky9VJtyXPYddLP7IHJ7/7C7qNeAEFGeeQezFNi4y1fwyP7ovowc95T3JtEl8wUrKz8OgaU5ZyDMPHxqRqIAnQCrMuIfHTBQRQSGRnFF67yA0iy0EyTxKUIJB9fBAa+TAKrpzBd394DyOmx9K5jH/nkncg9es/4aWVX1kE+gl50qaZz6LX2NcIIOnLrXcrma0Wk/SgrIxUnUkU78T+vMunEBLeES6Xj8qDziV9jcwTBzBk8lz4BQZxW3iqUHwjG41CH6pemXDIcG/uTjLJuHnkY1O6Ke7ZLJBMrf4mmcTemZ9lAD35yzkIbdsF2+ZPQFVlRa1LyK9eEMYv2oIbAqCR02MRHNGJ3OqlQ3tweu9fMW7+RmSfOSaiVV0sIggQ3qUPti6YhOjhv0BU3+FWrNMZpHw8eXZZQ9Jqdrqw0IWDCO6eKlSW3YVfYH0BlFW3K8q5gqRNseg+8iW06doPsnSU+WMyTiVuwxPjp6JJq8gaQaotJlEeyAByFkGdMcnJJDcDaN0HiPnl+wiN7IL7FWVcRAiFd2BTLH0eOPE3vFzEvrhc8A+sjxsZ5xSDmkd0orSM/T4VWA1g88xxFKce9PXq6p0KFKnuVL1LXIQXSplRRX2VgSRUhRXEawbpxO7PkXcxDQNe/i8VW0yzCvfu3EJS3HLUbxqKfuPf4nmux0PxzlNVhUNbP0apuwADXn4bAfUa/ASQrOTbuHH49zxRlXFElGxqA4kBtP+PCxEz+X2EtO2sCqbyOokbFtL1Br8+z14Vh4EbGeexd817GDFtOUIjOxF8EiR2F1X37ymhUFbsxpl923H5aAIiewxAz2cmwb9ePRt2Pn6BtGqlSqSUVeRJii3kUqzqMieRN5CsarMuwUuLCnBw80pU3C3FwJdnolHzNrh7qxApf16J24V5JBwYIOWlt3Cv7DYq7twm8JiIqLxXjpYdHsVjT0+qXr/TKx0eDgpPjkX1nD1LwaGPbDLbJgps6s4Ac3lsfxEDaP0ixEx+j+IIe/iqikoFRsrnK+jzgAmzVKvC1z8QLh9fYtDeNXMIoJCITqreJ1sR90oKce3sUVw/eRh56SdRv3Ewyu/cwth3/4AGzVrYwMk+l4q0XZvR/alXECblL4B7ZaW0ir0xSbYdFEhKNcnCqlXt9gsMVLGnovwuUuJicbswFyPeWopS9w0kxS1DQFBDBNRvAH/2HtQA/vUawp99D6yPekENcaf4Jk7t24beYycSUCo2OguuMkezlZY8MPK//50CyOr96NUES4LLmFSUfQVJGxYhZtJsBEd2Rs75VBza8rtavdKAV99GWHRfUnF7P5mLEdOWISSCsY+7tgspu3HleCIKr6WTfI/oOQAd+41ESGQU/rHqbVKJDFS2vLLOHseF5G9IRbXtNQjdRr2IRiGtRU0LiJsx9kE9ZI3HMVHz/AebuWsURmPA5144gXAWa0wTnvuVqCwvg29APUZbilMuXx8YLl9U3a+kuOzvXw/ph/cg/NH+8AsIUn0pZ0tDrwnKRUQlq/yDq1UM0hNWi0myaMrzJLbS3TmXkbxhMQZNfJcYVFF2B6VF+cLYBk7sjKMH7/H0JJTeyEZgwyYIDo9CQP2GxKD4T+Zi+LSlCA1nMpvHqMtH40m6tnm0H1pGdYefnz9KbuYg9asNyDn/AzGyeduHUZRzldxHq07d0ftnU9CkVYQyMmkaj4lLR/byPNOWVvEYI1klsg2ZTKkquPAz1JGJ7DlQ9ZG8tR/yL55EypaVGD39twhs2BjbF03BI4N/ho6PD8Olowk4n/IN7dOluox58nr21gVPnGXDjxLxgpTVpikitK7UpHDgcYWzSDKsMOcKkjcuxsDX3iGAnMAmbVxCpmEqL+HTuWjUPAx9fv4fZJ2bmec5QFOXcBcnGn5CYZABSwpzcTFlNy6k7ELzdl3Q5/k3cDZ+G66k7ke/F6Yi4/h+YlnMlDnVGCBB4hrPKgvp7k7vdMqWrfeYpJVoYBJbkj5bgu6jX0HTh9rhWtpBHNu+DuPe+QQuvwBsWzgJjwxhAA2nBXf+wDcYNeNDq9qgyXXVoXX0nfSaIDX4Cg6sIgZ5KM/krq1mJnGQ3ExafrYEAxhAFEfs5yR/tpQMFzN5Dpg7jF/7PkZOi0XjlhG4mXkO8WvnYdh/LkFoRJRgkAt3igpw9UQKrqYdhDvrCimjHmNeRduegyimHPryI4pL45dsRmnRTexeMQPDpy9Di/bR1d2UCbhkAOY1Bb6KeQCwqgy21nltwoELjMwfknF021o8NXMV6jUORrpMD2avo/0MoOihPyeALh2Jx/mUnRg9Y6VSb1ZX1l7703tI6jMTDeTikleqdoNHiIDaQTJQlJOBpD8tJYAqy+8iP51l1FJmAzkXTpDRWnfuSVuL86+jSYtwtO7cg4JpwqcMoMUIZXkQQGpnx5I3KM5EdOuPtr2fRKv20fC4fJBxPBGpOzZQYsjKPcOmLkGLDl2RtH4RfR81c6X3OOIASao7EaU1sIRLUe1mrXcjmn8cVw8S139AKA+aNJuM/uOuOOSnn8KIqbE037B1wURED32e8rH0I9/h/IGdeOpXq2zq7UFBUpWM/OQPiUFiKkQptdpAYgAlxy3DgAm/wd2SQlw/dcjKd2TU1yKDLApEdHuClFjCuvkY+tYiARBnH5PuTVq0AVN7TDQX52Qg9euNyL98Bp0HjEH3US/iy9kvkrvr2H8kMXNX7HQ8OvIFdBv98gOB5GSSnVF6408wTevO3nEXYOeKqXhs3Oto22sgGT3+kzloGNIKjzH3zRg0/zUCqFO/UUg/8g+cS96JMb9eBVbLK7hylthOocLW+fUy46BVGoy8pN+KPMiqYjN353K2F8iN8ZqaOycTB+KWY+Ars9AsklcD2MtFhVMuxS1FyIupchtzcQnrFmDomwwg7uL4fqDizi1k/piCK6mJcGdlUEnl8effRJOw9vBUVuCLWc+h/0sz0K7PEPqd8/t34Pjf15PfZzmS15eDSapGp9ydlNc6k7R6ngDpVPxfcS5pB56ZvZYWUUnedez5+F30HDOBGM9e2+ZNQNdh4xHVdyQxiJWwxsxcjfLbRfj2o3cw+PW5aNC0hYpJukCoqY9k5OxfYbJ2t2o3MKfkEjlPDTGpKDcDB+JWoOvQ8Wjcoo1q9nF0LIBki0IHoTjvOk7s2oShby5ESDjPg4pyM3F679+QLdRam+jH0aHPULSM6gbD5UNusuDaBexZPQtD/n0BWnXpqbA4ufvPOLnnS3QZPA69np1cA0gmXFp9VUlauVIVWPbJH9lyYMpq5/KpCG7TAX1/MQ2sBcI8CHuW0b9aCZevLxl967wJiB42Hp37jcLFw3sIoLFvf0TPl7hhMUa8tRiBDZtao1faSFe1IRQRQ43sxFhikASJsYSeRTbjZOtBY4Y7NxMpm1Z4N8YDbh3yxkKEhnMGlZWwrPxDqhYwURBQvxEhXZJ3FbfdBbhbfBMXU3ahrLQYzy3YBB9fPzVzx34u9av1FJfadO1b86+bFkhcTFldWjKODST6IgwJ5F86TW45ZuI7aBnVg4QCy9n6vTANbDHJKsXWua9STZC5uOwzR3F46xq06xVD7ptVHMb+ejWVvJwNP+c4l84mI2ffchoa0UFSjTYNJFUOMgwU513F91tWU4m/aet24nAXH0xUvSPeguD1VtGKYK2K7Awc/svv8eSUuQgO66C5QvukEPu9y8cScGz7HxHUOBhNWoZTxaBRy3B+TWZCMRgpiKtcbU0oPfjMnd3dlRbm48LBb9Fj9EtUTL5wcDfdQcd+I0SLnR+fumM9Wj/cGy3ad0VVxT2cjv8b3NmX4OPrjzZdHweLwd7cmtU610pSotJgZO9bTgyipE4Dqi6Q9KoD5UlsiISxzxZ/LKNTOVTJcStWyZglWx7Vp1c5wOz+GMvlpNA/CxIzkHR3P5VJqvKstwu8zNxxBvCaoL2VwAYj5WSqVVKSXVkneMTy7IRlqpIgQbLFJKnw9AYet6pNCHBwuSCglV2t4SeZ5GW+QU6vEsiWaJCLROZnTpBkBVzW8VSDoq4RYw0k+ziXMFot7s4rSNp0kXNWTu8lceBYzd1LS0O2zh2gGlnxS3MMw2glDUqzWKQTrPk42YizVxecak0ApFrn3kCqDqpikGAwTQrx/oQqpPJyED/XG5PU/dUx32BzfTaQeBlIzZRXGzHWJLheDRBAqphBwcTZ8HMySR9DlpVrHu/kbIOoO7FtuUZ2wtItJo3+WgaVA/CWXOYxROZLthxJjzEEqo8YehTD8rW0zi3WcbBVy9w51Sp/Q7x7B8kahCQXRnXDOhTLT2KSGDZxNPw4RpagMFFVQ5yxurK8zCOBtMBXIAkWwcQXRlbi8jBUmWmA2UxJbQEWOSzbpKkXo3Or2oI978ry7d66spT3iPmGauNc+oixw91ZQkXEM6q1WQ0/LlI4KAwk+du1wVTz9KoI2OyC2kAkXUvEGI/o4eilGnKBNbowO0jWX0nYQRIxyR2IwG70OAwkw+OJNU3ESHcn2WKBZGeRPcZwHSUng2RCy9lUB0jKfWnCQTJIV4TaaLJo0Ypx5dpBehAm1Q6SHD4RpVfHHAOXyPa/qqgLJOtPWSSTtPwLyIXp2R9Y5T8rqO+UrP8Gpjgw8TngMx8AAAAASUVORK5CYII="},19664:function(At){"use strict";At.exports="data:image/png;base64,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"},77882:function(At){"use strict";At.exports="data:image/png;base64,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"},66832:function(At){"use strict";At.exports="data:image/png;base64,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"},47558:function(At){"use strict";At.exports="data:image/png;base64,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"},71979:function(At){"use strict";At.exports="data:image/png;base64,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"},91833:function(At){"use strict";At.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGgAAAAqCAYAAABfjB7GAAAAAXNSR0IArs4c6QAAEwRJREFUeF7tW3l8Tee6ftbOPKBoKcrR1lBH1FAqqYsWNdVQlOOgpbTcttfQ1nEdVWNRWkNd10yvOodeQ39XUTVEhFDz3JpnkcSQBJFEImud3/d+w/rW2iuJyrn3/mPjt5O11/r2Wu/zPe/7vAPjzvEllmEYgGHAMHz8nf1hx8B+lZ/RL+K4+52fZwGwDAM+uhKwfGINiy6lzwp7+Uy2iriercj/Apal3tkRy6Jv48fpR34dO07/5LXsuGXCskz63GTv7FTTArtjy5RriXPk9eKdrWvQ1/Dr+PrsZ/m9Jn9u7Xx+P2w9fo/yM/b0dEy7V/F09vMBST6Y2wwjYNgzbcdeNW4f+y8CiAPhswGRILHDcIJER+h89pdfw26F42HA9AJJWr0QkAxhEDK2eCAJKze8BMMGiR3nRpTH3D8zg0qDOY1pCID4unlkfGlE3ejsvjhA/HP9HLl5CgaJX1sgSAQmN5QPVqph+Gob6QwgMjjb5YxB3ODcjoUzic6XTNPe/29AksYUcGog8d0rdqxknNj9js8YkzTWACYsk7FCstMGQ57H2eMESbHcC7xHYBLZFOZyI/3oYuHimKGdTHKARK6P04QzSrg/yS4XmA53p7k35eT+aUyymUHbr0Am2e5OZxu5O8U+7sLyZRK5YL7TvdjkAN8NlrZRxO7R3KD0GbY79wFJRvqRxRbFDTIYB0h3d06QhLvzAInHLCfjCgaJg1zQS3d3FEGYK+NPJrEg1+XPFPGQrrikztMAkAZlIAmri/UFSAqQgpnkcHl+Mclmo4qf4t5Mcs826IzBZBh2j8yeaYcXKZHAyeDFJE0wSDf2/wCSHX+EiFAxiT8UNzZnlDMmyR2vGcLNEq4gFEjcxRUBJHFvfrFKc3cOseApHEwY6QcXWhTdlVpzKTQVk2yQpMKz3Z0ds7xUYJHdHSku+0W7zpNJDCShsKT8U6pOZ5Vkgx3wlbpiitMdk5Rqc8Yer5j00ExSSlOLlX4gGQIgHuULAIlLcIf0ZpcIYB0q738rJgmQ0q9dRGB4JCJKlBaIWbTxOV6MSbbsllJbBXWH9GZnSrks445kkAskYtIDpbDc6k6CcvHITgSHR6Lsc1FChktV5qH6XMJBul+nu7NgpB6Yr8lsD5BETLJB8JEhjm78XshsrvbopcKK/EEIC/qMS3F5du22PeELDqHfM24m4fy+OL+YFFHyKVSJbqmowyTxipG9UL1RG7zYpgcJAskkGyS5I/Njki0kOF4SJKd8FhqfDJ15JxW/fD8D1Rq1RfnqdcVe4PkPz5N4PnVow1LcSjyHZn1HqtzMLf3lZnEoQQ/xIDeakbp/rsXZwZNUoZlVUmonqpoIME2sHPU2wkqURlhkcR0Zv5ivQURr3793Fxmp19F94nIEhUVQMpt08iBi54wGA8QXEEBrZN1JQ+mKVdBy8GTHmsuGdkad1j1Qs1kX20DiDOb6uPVcsYaFW12CO5gkk9r83V1uTjYOrl+CK8d2449NO6DaK22QnnQJ2Rm37YTZBO7cSMSJhHWo2fRNhD/xpOM+QiNLoFjp8g757gBLgERga89g3No3WwEk1RuJCMkcvXpAmagBmCZWjX4H9dr3QdWY1pwVPh9SE88i9eo5VGnYUhhaxjO2AXjieelAPBKWTUe3icsREhZBy107dYgA6jxmESJLlqGH+GFMP9R4tQNqvNbJBsgysXRwBzTs+gFeaNSWjjvVHYvzOkiyAsBBcILkFZNsVyfdlryGGfPMno04uum/UbtVd1y/cAJJp4/4bcj8DlSKikZUs7e8k1yHxBeMlOy8tXe2xUs4jDQBDib5gSTAssw8rB7dhwCqEt1KSfO4ReNhPniAFh+MFwzkDk2xEAbOH9iGXctmoNuEZQgKj6Sy0LVTBxE7dww6CYCunTyIrfPHoev47xASWUI9c252Jr4f1g2N3v4Ez9d/jQzOXnksPZPAqORUJql2MusXk/SgrIzkzyT6HvF58rljeLJSVfh8ASoPOhH/Iy4e3oHm/UYhKDScM8fMQ/qNRBR/qoJ/ZcIlw73cnWSScXPPLIvtfm5IJ0iWEA8yN7JzJAO3U67gQU42gkLCyUiZ6TeRsPRr1G7dA+VeqGsLChl1RCkpLycbgcEhKFXhWVDhwzCQrAEUUbIMdnw7iejWpN8Ix4bMun0Lqz7vjabvf4ZKtWLIED5RqyOhLdSdLsd5DU4GafpJ1pC0mp0uLHThIK4z85CblYmg0AgBlF23S7t2HvHfTUGd1j1RsVYMZOno4qHtOBa3Go26DcQT5SrnC1JBMYmehwHkLoK6Y5KbSQyoq8f3YPeK/3xoiusnNuoxBM8yBggXlXT6ELbOHYPOoxchIDgEq0b1xmvvjUSFmg0c66dePYv1U4YgpscgJR6YQai+xTMgYpWqd4mrOUjMqKK+ys4WqsIO4vmDdPinpUg+fQSNe/1FxRbLysP9e3cQv2Qyxc6Ybh/xPNc06R7MvDz8smoWxdvGvYYiJCzyd4BkJ9/Gjd3/wRNVEUfsaoJTOLhBenA/C5m3bxEDLh9KIP/8L72GIqxYKcUeypPk2opJPkSUegrBYZFCkxhIPHUQW+eNRadRi3DpSAJOxv+IzmMWc3drS0Nc2B+HhO+m4umqtfD6wEkKPCdIOpNkKdwuy8jyODHJDyS72qxL8Iy069j5t2nIycxAk16foniZisi8cwsJf5+Gu7eSSTgwQLIz7uB+1l3k3LtL4DERkXs/G09XeRENOvT1r9/plQ6Tg8KTYxE72dNf/2WmQ2YrN0YuTwfJAHN5urtjFk6/dgHbFn6BqJbdUV0E7tyse9g0699Rt30fPBPV0L91wSKPamcASUwkzBuLN0ctwr6Vs5GTfQ+thnwlIVXnHlr3HY5vWkHHO49dDOYO+UPZMYiR5H5WRr5Mkm0H7ulECUasodfR2M9BoaEq9uRkZyJhyRTcvZWEVh9NQkbqDcQv+RIh4cUQEhGJYPYeHongsGIIZr+HRiAsvBjupd/Esa2rUb/9uwQUj/3+hVjVHnGUlkwYKbu+UQDpktqurdkguWNSTuZdxM4bjRJlK6LxO0OpSM5AvZ95F2sm9Ed0t39D5XqNXX0k0VcSIDHuJp0+iNh54wggtvN+nv4pGvcehkp1GjlAil84ATcunUL23XTUadsTUS3/ZLNIVADYgSVD2j+S69UvMgIC0HXc37hrFEZjwCedOkzxj8UH80EucrOzEBgSxmhLccoXGADDF4i8B7nIy81BcHAYzuzeiEovvkLxWm4QN0h6TVA/x0jZOUPFIF0E2EyS7Qe+66npJpi0a9k0pJw5hmfrv4qQiGLKHZk5uTi9awMq1HgJJZ6u6HBTAQFBqNWym2gM8jVJJMwfh06fL0R4qTI4uuHvOLc3Fh1HzEVACE9mmSr6YWw/CsRMLKSnXEbHz+Y5gCBNY1o4u2czzzPtFFpVGGR8EtmG7AaqKriiJHyoXK+J6iN5tR9STh9FwrJpaDv4a4QWK4EfvngfNZt1RtWGr+Ps3licTFhHn+lSXcY8uZ6zdcETZ9nwo0T8esIMy6IWqF3J9mcSZ4Y8LkE6vmk5Uq+edxalDQOmmYe0xAuILFUWoRpw7FsCgoLQbMA47uGoheFD8ulDCqDIkk8hMyMdq0f1RrP+o1G+Zn2y2eXDO7H92y/xxrCZyL2fiU3fDEebT6biycrVPUESXstTOPDdqndlhbvzFA7SDVrElvhvJ6JO27dRssJzuHxkJ/b9MB+dhs+BLygEq8f3Rc3mDKCWOLd3C07uWIc2Q6ba1QZNrqsOravvpNcEqcF3fcd0YpDJNvMjgOQlwXOyMvDjxA/QsOuHqFy3CXdTrta5lPWcQUewdcE4dBq5AJGleFz5cfJHKF/jJdTv2I+qDRun/4V2V5uPpxKw678ahNIVqyK6+0B/d+aKSSpJ5QHArtc9FEi2wLh4cDv2rp6LNz6dTlWUM79sxPHNK9BpxHyKKwygqBZdCKCze7bgZMJatB0yTcUcuyvrrP25Yx/XClzuGynbp6l2g+kSAd5M4uKB5g20uQUdKOar1076EC+/xQBqXMh8A4tBhxG34At0Gjkf4aySYJlYM2EAKtZ+hQC6eekkfp4xDDE9B+P5l1sQIBf2xmLnsm/Q4sPxKFe9TqEgyTxJRGmtnCJcimo3a70bUR7iuJqIWziOXGHTviPI6IfWLyEX32rgFJpvWDX2XUS16Ipq0S1xZs8mnNyxFm98PN2h3h4WJFXJSNk+lRgkfI6fUvMC6WT8Glw9sc/PKLxLbhD6TL2ERhRHYEioOE9rGBjAH2o3wout/0yuNfkMB6j5gNE4tmkF0pIvUcBtM3gKSlaqirgFY3Hr0hl0GbeE8iQy2INc/M8XA2Dm5aLd8FkIjXyiUJDcTNJrXo7gLZmm1e/upV7H2q8GokGn/nj2pSZk9C1zPkexJ8uhQZd/pd2+ekwfAqh6TBuc2fMzTmxfi3afTAer5V0//xvKPh/FQ4Wj8+sx46BVGozk+K9FHiQHQ7i787nbC2Lqh2HJlEzatQvkEvVJHZnzMAXDfHC5arVRvMwzqkoha89sjdKVqqFirYYEKKtpMane8bM5+C1uDcIiiqNCrYYo/UwV7F4xC2d3b0bMnwehysst1KQQs+GNC79h08y/0vc0/3CcQxIotFzuTjXJlLvTS0I8cilFpRny2JYVOBG/hoRLYHAobidfwcZZf0W9dr0p6Wav1aN7o9br3VAtujUx6MT2NWj36Qxk303DhpnD0az/KESWLKtiki4Q8usjGde2fWWxdrdkChnRJ3KeAmISB4OLBwJJjlgZBnKzMrBuykC83GUAKtWRLk5vp4vWuagBJp1hAE2gh5cxiK176Kel+DV2Neq2ext/bN6VF9qZCcV3MaP8unklWH5Ur0Mf1Gzxlj+LBBCsJCRfCgC5UxVYzskf2XJgsW/t5IFUXY/+0yCwWuT2JV8iPfkK2n48Db7AQDL6qtG9EfV6N7wQ0wand28kgNoPnYm0pIuIWzQBrT6agNBiJe3RK22ky28IRSSxRmLcFGKQBIkMzm5YNuNkcBeBPj+FJ2MS+1wC1KBzf/yhjpYHOWbuRBeWiQQG0CIG0BxKPtkaLMjuWTkbLzRtj/od3+NuTQyuOECyTKqEJ589hi5jv0VY8VKFgsTFlN2lJeM4QNKYZAEpZ48jdv4YvPrucDxdrS4JhfP74xDTfRAqRjVURdNVo96h3Iy5uMRf92L3qtl47qVXkZp4jioO7T+ZAfh8+cQk/yIt3eO1rZNpaEQHSSQ6DpD0bqoTJDHsKJkkAGIqiwFUqXYjeyBSsU5OBPH35LMMoInoMGI2tRvY999LS8HJHevR4M33+PCEECReIDEXcnF/PGo001oTHjA9/MydLhwsZNxKwamdG1C3bU+q+J/a+RPdY9WYVqLFzs8/sGYhyteoj7LP10Jezn0c37KSWjABgcHkzlnc9XJrdutcK0mJ6rmRuHUyMYiSOg2o3wMSuTqqu3F3x2yZk3UPQaFh8AUG8XVl5UBOsErpLbrtTFiQq/CbXuWDLOz+GMvlfIOXu5MixZtC4qiogHOO/D4mqcqz3i7wmLnj8YTXBJ2tBDYYKSdT+XfbfSfnufIzIzH2S1VJkCA5YpLHrII0hM0krdrAhIPmHu2KBDc0B8A13yCnV1Vx1XsIxQ2SyK+VUHnYmTvZpmAguRt+hbk7T5C06SL3rJzeS+JgsJq7R0tDts5doBpXt0zSZrPZDuXGsUGiDNZjoMRmnNz1cjLVawDFru3Zc+C62+QKnYsN7s14F1YyWSbRXkxS96d0XOEzd06QeKtBzZT7jRhrs3d6NUDELaXAqCrgjiVuJuljyLJyzZkkZxtE3YkdSyKAlHFkx1TMVtu1OW+QbAPzz/n5AWJ8WAzLF9A65+dzs3A2uioOjkFIeZ63u1PzFNRdFfmYPqvl5fc0d1c4k8SwiavhxzHSG4J5+cQZuyvLyzwSSBt8BZJgESwsN65snmj3gzR3xh6YujGOSVMPo8sxK8dcHWudc6Z4dWVJZIv5Bn93p40Y84KdYpJzQ/Dz6PHEvcoaIfGP2VMyv4CglP/0qgjYNKAh2oH6vANrJ4kejl6qIReYrwtzgmT/LwknSFTisazUUITWNi5vmiDaDdydqHxIGNgGycki263pBtRjDLMbY1MhICnprTPJluBONyjvj7tAPq5cMEjq+x8ZJJ5AcRDceZL3LHhhINn/lUUySVsXSIJlbgvNCx4WHv3+VWPXvL6sZt8/v/t/ZcDiwhxFgaLp8YdFs4Dx64oxwbfTrmwDrBivpR4DVDQDF/VqYsf+ef3L5SDvAGCVcy/4GKCimrho1yv3tWdR3xgzD9ssC8H6ko8BKpqBi3q1I77sXvBef9M0HX3kxwAV1cRFu95PALhFw2OAimbgol7tB5BbNDwGqKgmLtr1nhJaFw2PASqagYt6db45jhQNMf0Xi7mnon7V4+sfxQIFJqFMNES/v3D+oyz8+Jp/jgX+AT+bS/shEzsoAAAAAElFTkSuQmCC"},31081:function(At){"use strict";At.exports="data:image/png;base64,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"},96593:function(At){"use strict";At.exports="data:image/png;base64,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"},42922:function(At){"use strict";At.exports="data:image/png;base64,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"},20345:function(At){"use strict";At.exports="data:image/png;base64,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"},79005:function(At){"use strict";At.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGgAAAAgCAYAAAD+Fz2gAAAAAXNSR0IArs4c6QAAEx5JREFUaEPFWwd4FWW6fueE9NATIEAoKkWKgIKVEkBgl2LB6159EFdRwHVd9a67SC+ryFVBEDGAUq57d0WUK6DuigYSeglFMJQIhBJSIIYUQgohObPP9/1l/pmcE7h9nvCcc+bMzJn53v/9vvcrWABQfuovrf3VeMeClWhbVrwFC5Zl0Vfi1aLP/EHu976K42wAtmXBx2cCtk9ew+ZT+bsbbT4/XUWeT1cUf4Bt61faY9v8a2I/vxXn0X7+p86l/bYftu3n7/30Sof6bdAd2351LXmMOl++0nUt/hlxnrg+vVe/6xfPbRwv7oeuJ+5RfUdPz/uMe5VP5zwfkOeDf6tlhUxqPXxOtkXgVFfVHLFgNYHlcwBRIBE+cIPEexg4+hPn0K0IPCz4A4GkrH4DkCxpEDa2fCAFqzC8AsMBifYLI6p93vdkUGUwtzEtCZC4bg0bXxnRNDrdlwBIfG8eoxZP3SCJc+sEicEUhvLBLrQsXw+r5Ognn8LGk4IoPiiQhB1vzCQ+XjHNeP2/AUkZU8JpgCRWr1yxinFy9bu+IyYZrAH8sP3ECsVOBwx1nGCPGyTN8kDg/ReYxDaFf41Vkr46F0C8MLRihmCFCyT6zNDyUYI9wu8J1+cB0+XuDPemndz/GJMcZvDyq5NJjrsz2cbuTrNPuLCgTGIXLFZ6IDa5wPeCZSwUuXoMN6h8huPOfUCeVXxklc1xQxpbAENGDwSSdHcBQFJgmbGrbpAEyHVtprvjCEKuTDyZwoJdV22myIf0xCV9nAGAMiiBJK0ury9B0oDUzSSXy6sVkxw26vgp783P7tkBnRjMhqF7pEVfdHilrYSAIEMgJhmCQbmx/weQnPgjRYSOSeKhhLEFo9wxSa14wxBelggFoUESLu6/AZK8t1qxynB3LrEQUDj4YRUfWmFzdNdqzaPQNJMckBRLHHfnuMP/FXfHisvZeNUFZBKBJBWWkn9a1ZmsUmxwAr5WV6Q4vTFJqzZ37AkUk26aSVppGrGyFkiWBEhK6OAgEQBS4RlCoLz4Z+SfPY42d9yPeuGROmbRm6Lcc2gYG8/7y4ouscuMatJcSPAbxKSaqmvIyTiI2IQOiGocx1CQ2qLb5N/MOoXWne9ESGg4uyOtzNndObJbSW0d1GGjMPsMrleUodkt3ehMKZdV3FEM8oDETCKFZ6Om+jp8IfW0iiu9lI0afzUaNUtwJL6U0mSbxi3b833WxSQzbrndnQ2r8OBH7OIcN6cktbOPv9dSW2Q5tO9C+m7sXrMYo6YkIaZRnM6XKktLsP7N8bhr1DPo3H8UNsydiBYde+CeX73ExwQGyYlJZUX5+HLWOPQd+xra9xmoqUMgnT2Qih1/eQ+jZ61EdKM4zSQHJLUiAzPp74teQ3SjWPR7+nWZYymQ3PJZanwNIEnww5s+xeXs00h8ZrJwqbCxbfU8Vn0Dxr4OyyfcLP0rzD2L3WsXo8M9Q3Hb3UOcOOlVfwFcnkzs+MUqPLDMFuwgiS2N5HV3ngSVjwWQnb4Huz9bjIcmJyGqcaxWdT/t/AY/fPNnPDpjBSLrN0Z68lr8tONvePxPnwC+kFrJ7P51y5B9NE0DQW6qvPgywqPro15YhEtHVF+rxLXyUkQ1agLLCpHZEpDQ9W70Hj1RBSeDSUIyU0z6+VwGvk+ajgHPTkZ8x17Oqtbxxu3CaLfj7vwozD6NbX9+G536jkDnB0bw+QVZJ7Hr00W448HH0a5HP52Y7vrsfVReLUb/sa8bjGN+G6AbUl0qPP49KYjoaOvy/iQNkFJvygUpZmmFxpmo4+4upO/Bns8WY9SkJYhu0kxL703vT0JEdAMMHD+TQSsrKsCGuRMweOJstOzUy11xsICcEwdRkp+j40xVxVX8uOkztO+diKZtbnMBdDnrNM4e2Ioew55AWFSMfpiGzVqh1e29QfFJSditq99C3k+H9fl+fw3smhqEhIYFFY/Nb+uG+598VYOnxIZwk34c3bIOp9OSkfjsVDSIa8nH7d+4AkXZmXhwwhz44EPu6SPYv3El+jw0jl2pcrFKRQZyd2bVwQTJupyWZKtSDq1Ik0kkv10gyc8HN6xAVUUZKq4UoTA7E/Ede/BD3/XI8ygvuYzkJVMRGhGJsMhobYjykkJmE7kB2lp07Il7n3g5oLsj9mxa9Ef0Gvk0Grdqj4YtEmD5iC1A1pHdSPtiKUa8thDRDZvyvhpKzxQwOjkFNi+fjbLCi7zihWZQ4KmV7KhB2nNqzyZ2m/1+PcmViFYUF6D051w+u+Z6Fc4d3oE23e9FSGgou6HKqyXw+/2IimnIv5Oeso5LSN0HjdbVkJjGcYiIaSyVprua4Up8PUyyCvYtsS0fuSyhxEyQbKP+ZgK1b91SVJVf5RsruZiFuPa3I6ReKO7+pxew89/ncyBuf2d/RDYitwdUlBbjTFoKbukzEFHSqA2btUa73gNlkitreVKqSb2IE9s24OCGVXhszmpEyvNcS9+24ZO1OhbaUt0pF7Fl+WzU1FRjyG/mSEYYwLhqdkJYpK54A74QH/r/+nVXwCfgfty0JijrbuaLLgMeRvue/WuVozS7XMpRuD5+HgLIWwT1xiQvk5SgyD66D3vXLsHIP36A6MZxOL33exz8ahXf7+AX5qDZLV0Y+KKcTGx6/3UMe3ke4treLp5HVibIsDnH9+N46pe1nrM4Lws11VVomtChDhsIVrTt0Red+o/kWKPqXQSQ31+NB1/4k8yPZH2V1rVUFU5FwUYKAeQLQf9nSEA48ejk7k04tuUL/PLldw01JlSdqMMZhVq/X+dgZGByuZs/no3b+z2E9r36u66rXF5tkJzk2/p57wciUSWbaSapOOMIh0AgMUCff4gRf1iMeuHh+PuCV9GweQIKzp/E4AmzEXdrF3aR5Aa/WzwZQ383D7FtOxuVclGZyD+XgfNHdjm5jgVcSN+HsuICdHrgl9q9BUOJDEGxI6H7fSIPl0zavGwWivLOo3XX3qokLn2a4e7YSuJzbsYhvv8Bz0xxSfCTu7/F0c3r8PC0j3C9vBTlRQWuqrZKjmWlCfALA0fXb4zQiGh8vfBVdOlPAA2oXYhVVQd5jkiOZfWcniV/z2KXzNaSW4sBBZIFcnmmq8s+tg/7Pk/C8D8sQmh4FLavfgt3PTQOm5fNRKP4NgiNiOIbra6qRFHOOTSKb4vQSLHvzhFPI7bd7Tp3Uq0IcrbZJ9KQ+vFc9Bw5Ft0ffFyoy7o224lBspbAq3jLslkouHCK8ymBg4xBEhRd6pefL+ecRpNWt2HAs1N0VYKs9RMBlPwFHpn+Mc4d2o6DG1fejFdjIdOu+wP46r1X0KX/w4JBRsvBVXBV7RFXackP69Lu9zVATu/HrCY4Etwbk3KOpWHfF0nokvgwLhxNw6CJc1BxpRDffzAZLTvficgGjfmGrpWVIvtYGlp17YNICqSWhY73D2cBIIvmIq+wLBTnncd3709C04RbMeSluSgtuIjvF1PeEXy7Y9gTLAREkifbPbCRsnQWSLkNefEN1TrSpSBJGy3ByRWlfDSH2Zo4bqoRK/wcQytLCtEwvi273OrKCqdup4umflyvLMfptM3ISt+LhG73oFPf4QgPj+E4HR7TEGGRMbov5W1pmDVB1bviOHRp1yIdg8yE1WGSKpoKJpERr1deRX7mMWQd2YlLmcdQLywM7e5KRK8RT6P40gUkfzAFgyfMkgyxOGkj0MjgsW06Oc0/0nCqSm5ZKC3Iw5bls3D18iU8NnsVIhvFgST32YNbpftzmES50PGULxHTtDkGjJuK+nEtRdtDxRYAyctmsqwe+uKbuuLA6aVRudbqjhi3fDbHILqes9JlAhuo/UC9JACVpUU4uedbnPthB2LbdETXgY8iuknzIFLdbCh6WxpcF5F5qmgQWvk7F9m2TO0DSWoRnwSL6P21ilJ8u+j3LCNJRpPcHvrSW2jQrDUbu4QAWjIVg8bPYnVHWxEBtGQKHvztm4hr20krRgGOuG7OiQPY9deFfD3axiz8iiW46srSPsE2C+cP7UDaumVI6HEf+oye4MprTJAIoGtlV9DnsYlSOAgWqpzD6WYK93dg/QqER9VH4rhpRhvAEQL0zGaHVHRbbWRs/xpHt65Hv6deQ2ybDrXjjDxOdX7FApEdWg/wZk2QG3z5OxYyg/y0mGVPJziThDHPHkxF7K1dmbr7/2MZfvEvC7h8Qt8xQB9OQ9M2HRAeFcNmraosR8G5DAYnNErkRt2H/ApNE25jgx9NXocfv1uDpq1vRasuvfHj92sxZuFGcT8ekKrKSvD51KfQY/gY3PGLJwP7PRmTCKDcjB9uKl6ogyinG/jcdJccvpSZzmLDVGy65Q0b+aeP4WJmOu4Y8s+OCxVaX7ZFbDSIbYlmbToa/Sp351YtHF2XI9HALm77e7rd4PeIgNoxyXF3tLJJHhNAw16drwG6QgAlTUfzDt25msAAVVzljL5Fhx6IqE/7gM79RqFJ61v4PeVVPsuHPo+Ox5lDO7B37QcY+95GnNjxDXKOHxAgSe/mr6nGpVPpaNSyLaIaiESVNvp81yPPOWCQy1o6A1QaotKOUneSQkoYO/IbwI5P5qNeWDgGPi8AUs2/I5v+ijMHUt1KUP6SSl4pgaXKhntzEuPW3e5Bt4GjRZw0ZhuCVb/VfuvS9gXMIBkYaim1wCAJoLIzCKDlGPrKuy6ANi+dgcTnpksXZ6E49yySk6Zh8G/eQBytIjXPoJqEdMc+0Yc6sz8Fe9YuYYAy9yUjL/Oo88yWyOSzDu9GXPvOiIltob+jxLf7sCdc9tmSNBME6LDfzhUZvazJ6fa0WLa6QUeynGLQwPEzpAioPdsgDOcurGZs/wrHtm7AY9NWGJUCMd9g5lPa6AFACgaUdXHbfJkHOVVscne0os3uqEhmaR89lfgu98QBpK3/iAGiCoHP50PJxQvYsowAmobYdpTz+DgGbU6azgCR5HVAFzHFqWJYyNyfgr1rP8SYBRuEpKc1Ll/pfWXFFXwx9Sk88NTvuTJRlwRngPzVGPbiXEEcDYjnvWz0JS+dBV9ICDNIMa12C7329E/Gto0M0OgZK1mkOCKkrkkht0AIClDu1ndtanfrdgOZhMrmcponmHCg/Vnp+3Do69UY+rt3uJpN25X8bKQsm8myt35sPBuwvLgAx1PXo0viI4hp2oKjfUhIGNr26usoOgnUmQMCoKcWbGCDekGqulqCz2eMZYCoFaGEQ6BAQwAV5pxBfOeenBcF2sz6XN7Jw9y/GTR+hnZxOu64Zh3Mhh9wfOt6HGeAVom44ZouCs4kcWzdsw1WTuo7zCAFEq14fhbZZdWrXRnLsvDTrr+hrOhnFF7IRHV1FYa/sgCoV4/BUAAFNoezl1oJj05f4czayfh3Zn8qVyfGzF+vx7noHk7vS+YcJTfjIM7/sBODJs5Cyy69+YLBQCKAqB2gYp2Zp3pjBT1zUfYZFjeDxs/Uak31hcw5O1rtly+cYkFEP35q9ybO9Ya/tkhQ0wBJt865UuCwq7a7q93d5TwoN+VtHhoxQVKTOiZIprvLSt+D/MyjLLMTut2rXRldp7QgFzs+eRv3PfkqP6yot8p8R0t2NREkXzWDwQ25vZ8nYcx8UZtTC2bbqrdAK5zKUc1u6YqB46bCCnPaBoFASqVaXE0NBlOiqkpATtwWBUkV7KlmtlzGoOdJZgunaIoFndzaNs4f3olD3/wb76LF1qnfSLTt2dfFvP9869xhk4pdVk7K28wg7U6MCR/2PwaTTJBM8cAxiYZIiH2GuxTHKDflgKQafrVjnLxBP/VsIowYKFhNLOcFasSkQHlSneyVFXAVk7wgOXFKJowGSAH7OgFm7hSoQrGZMUkUWN1TquIY77Eqjlk5W/5VVxIUSK6YpBSe2RsSS9sI9ka1gUo2HlAdIBRIXgFijHMZosE7c+cF6WbmGwIHHtGmoM09ziVVmxYTNwmSMV3knZXj2OcadKQOb3B15y0BWdmb5+ValhWvDM6zWEwcZz5O+ikNSjAmqclULdu9DT89GBl4CIWvy0xUSlFGGGMwMhCT9P2peMS0vUEUNJjETXFS+oa7c5gkV7wuchoGl0C62g6GBA/MJHMMWVWunf6PqlZIUPOsnC3zPrV59NeR2WoA3qkocJmh1miWmxmq0h0ihx7lsHwgkHTrXAAlCGlMq3qnWlUcM2KS192p3IqhFa5AJ7dBoXKBJIN7QJCcEWPvpJDAyIhV1N81GOOIAZNJDkhmYZTdrTFUAhtrrOzUt1ujxj4C2E201JZgcZ/VNWkawOh62secBqLWufgcqCvLDs0z3+CAZIwYe9xdLVepXJScFOKWhWQOd1rVoqqDTMGnV2U85AEN2cQw5h245yd7OLo8oxt4wVyYGyQnkXUadIa6K4xARA9+HALJ8vvfsW0kKnen3JQDkptFyiUKAIUrctSaSGh56uZGIGn3ZTLJ+99dlOpz/lcFOSQxrizjSBCQboZJdYMkWxgekNxFTckgs9cTNM7IZpxqypkTriKZzoPt3xpREzYp6t7x2f8ARtZc8eay0EoAAAAASUVORK5CYII="},39057:function(At){"use strict";At.exports="data:image/png;base64,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"},96908:function(At){"use strict";At.exports="data:image/png;base64,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"},57177:function(At){"use strict";At.exports="data:image/png;base64,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"},81378:function(At){"use strict";At.exports="data:image/png;base64,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"},47621:function(At){"use strict";At.exports="data:image/png;base64,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"},58103:function(At){"use strict";At.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAlgAAAIwCAYAAABawRXrAADVaUlEQVR42uydCXhcdbn/RRAEURGvC4LgAsJFUVQUQWRRQdkLBUoXREVRLgh6BUG40KJA7ZK0EAiZ2z+VpWy9rbGltHSBdCHJNG1o2iQ0bdIsTRqStplmn+2c5/d/v+ecX3JycmbmzMyZJZP3+zzvM13TmXOm8/vkXb7vhz7EYrFYrLjl2SqOmVMefCivXLlm7nviFL4iLBaLxWKxWEkqryz8k7nekAeRV6HewVeExWKxWCwWKymJw+aWB/8uAWtehTibrwmLxWKxWCxWEprlFScNZa82h/IAXHxVWCwWi8VisZLQnPLA1RKwKJM1la8Ii8VisVgsVhKaXiKOnbs59CcDsJ7Orwh+na8Ki8VisVgsVhKaV+7/0tzycL5WHvQGH35is/g0XxUWi8VisVisJJRXHrjGXB68cbE4nK8Ki8VisVgsVoL6w0pxVL43PFMCVn6F4PIgi8VisVgsVjKaVx6+eCh7VRacydODLBaLxWKxWEkIze1zNgdnaHC1OfTs7PLQd/iqsFgsFovFYiWhOaWD55HnVYFsbufeKxaLxWKxWKwk9FS9OIrA6r/yvKEiZK+wJoevCovFYrFYLFYSgtcVPK/0/qvwo7MrxOf5qrBYLBaLxWIlKEwOku/V/8jm9jllweuE4OZ2FovFYrFYrIQ1t1y5XCsNAq68oXn5ZeJoviosFovFYrFYCWreVnEC7Bi0xvbyUOHsMv9FfFVYLBaLxWKxEtT06eLDc73KDTQ5WKhnsMJ/9mwVx/CVYbFYLBaLxUpQeRWDX8yvCM83slcFc8pD5/JVYbFYLBaLxUpQc7Z3fGyuN/jokGu7N3QPZa8+wleGxWKxWCwWKwFNXyyORGlQwlXe5vBjs0v62ZaBxWKxWCxWdgnZn7lecWZeuXJNXkXojjxv+K9zN4cfnOtV76Hy2y9nlwYum7NZfPlDWWB/MMcb/CbZMuQbgPX0PF6Jw2KxWCwWK5v0j63ikwRTl1C5baa0OogewdkEYZP+sWnw5EzYIUwvE8fPLQ8+rq/DwfNVbkFGi+8ki8VisVisrNDcMnHGnM3h+5yB1cjI94bnU1P5b/PLgmel6/k+sVl8Os8buHeoNOgNPzyntO+zfCdZLBaLxWJlheZ7+z+H3iUzXOk/D06ctTl0zsyywKmU3Tp5VnnwP/M3h380uyz0i3zDb2oYcDRrhLmzqYSY6mwW7Bfw7ww9XyoRzvIOnsR3ksVisVgsVlYI/VZ55eHpQ7BUHpw1rzx8sZP+qrzNga/NLQ/8nmAsT8IOHgnA7py3TRyXiuc7vUQcMac0eC2WOOvPN/TUnNLB8/hOslgsFovFyhrNLg//0LS374lZ7/aeHs/fx56/We8GTkeJkODqyaFsVnnoDzM3iU+5+VyRGZvjVa6FmejQv7NZmTC9hvuuWCwWi8ViZZEwJTgEK5sGL0gGfvLLwhdhRc1wyTD0X27BDzJXtGfw+rzNSsHQ1y8LTv4T7xpksVgsFouVTdLKbZvV+wz386ewyy/Zrzm7tP9syjAVuOmoXiLEEbMJpoZ7rkLP0o9/feNicTjfRRaLxWKxWFmnOeWBu4d6p0pDZycNbXInoJHJyvcqtydjnTDr3YEvEFD9fqhHDL1X5f5bU9XjxWKxWCwWi5U8YJUGrjRZHfz1DyvFUcl+zX9sHTwZzfI6EIVnwV8r/q+C3q7QOTQh+D+y54pA65lZm4MT5mwXH+M7x2KxWCwWK2s1613x8XxvaP6wPUPod0/VJwdZaHyfUx6+f6h5foP/y/H8/fvX+sjwNDhthA1EeejJvLLwT0QWuMezWCwWi8VixYYs8rqa4w3N00t6oWfQ35Ssr9Qsb+h2CUdOS48o+5HZ6XlYyzPUb0UlwTnlwYfox99FVovvFovFYrFYrDEh9E3RdN5VckLPgJoZsyvCP5/u7fpEIl8TmTAJWP+I4fCOSUCs6KGAM/vTI5ziy0O3ztuYfPM9i8VisVgsVvoFP6uy4ATrGhyCnjlzy8I/i8cOAdN96J2SX+PxCICk+VqVB66W2TNLzCVI+xbfGBaLxWKxWGNec70D3yV/qQfkFOBwJimcn785dNeczcqVKPnlV/i/8jit2EG/lNazZeqNInA6kfYTzpRN7rMrxOexOxDrdsiF/RuzvYEryD3+v1GOtPRZFc72Bh/Fip4nNvd+mu8Gi8VisVisnNETG/s+k+f1o2T38NBKmhE7BwmMaEqQVuQ8RL//JwKjO9C3Rb82dY43eLNmq1Cuw1Oelp1S7yGguj9vc/Ax+es2mbKHZ5cFfj7LK07iRnYWi8VisVg5K5QFaanydwiaHraDotGQFCoyR6w/P0dbdRP60z829J+leWUxWLFYLBaLxRpPQjkwryJ8fl5Z6Bc06XcflQAfyfcGZ2qLnsmx3Q6oNNAiDyvNYsEbnENZqr/Ba0vLdnnDF3AZkMVisVgsFsuQZ6v4yPQycfzcUv8p1K91xrwKcTZB0w90cDL3bQWvn1sR+l4+TRHOLBOnAtJmvNF+DF9BFovFYrFYLAdCszsyW6by3x9h/zAeXvvW9t7/oL6xI/hdwGKxWCwWyzVhaTRN/000ljAXzSkLPkEO8V/I9df9zxLx0XkVobMbDokJBFgf53cCi8VisVgsV+TZuvUjeeXKNdRrVWBkr56ZWxq+MNezV11d4hOv1oofPVMZnOpXxBQCrBP53cBisVgsFitpXVxScsTccuVys/s6OcDfhF/P5deNbJUvIK5aVKtMWVYXnBZUxDT6tXP4HcFisVgsFisp/WFl/VGAK5m5gklo/mblthwHq8MoPk9xQ0uPMq2wIjit0adMU4RAXMPvChaLxWKxWAmLHNk/SdODk0e6vSu3zysRx+U4YH2FQOpaiqkV7UENsJC9MgBrKv3+J/jdwWKxWCwWK364wrRgWeAuM1zlVyi3U1N7zjZ5G5mrbxBE3WTA1LRiKg2iPCh/jqA/cya/Q1gsFovFYjkWFjhj/+DQjkHdSPRpmhy89UYhDs9huPowxdcpJkuQCirKtALKXlV3jgSssBCX8juFxWKxWCyWI83Z3vGxWeWBawiq5g6biIbyZ3kDl854Q+SscSi8rUJCfJseJ5lBqpbAqogAq71HGQFYFNfTnz2a3zEsFovFYrGianZp4KvkyP4/eV7l6eF+q/Cjs94NnI6sVi7DFcW55syVjNdrg9NeqQ5O6wmOAqyb6M9/jt81LBaLxWKxbEXrcI7RpgS9oXmmrNUz+eTWjpU3ufzajbLgtwmYpljhqsevTJvvDU5b0xi0whV6sCZTnMbvHhaLxWKxWCP0pzJx9Jzy0LlzNgfuMy9wpmXNT8wpDVw5vaTpozkOVx8xyoKjMleIuoPKNLoW9DgasIxJwu+iKZ7fSSwWi8VisUAWh831Bs8kqPojslYSrozHe2Zu8n8ll0uCBlxpPVd2mSu9uV1MK2kJaoDVP7o8KLNYl/BeQhaLxWKxxrkATfC1yveGfpXvVZ4xTQgSWAVnzyn1/3j8MObIacFR5UGCKvRfFdfaZq8kYF1L8VF+Z7FYLBaLNQ6FBc15mwNfmw3DUFOflQZWZcGZyNLkl42P/XrouQoKcUY0uEK0G+7tdZ2RAQvZL/o6x/E7jMVisViscaSLCazyt4qzZpcH7sivCM8091nlY1Hz5tCtM8sCp+Z6OdAEVzARPVWxWDHYRVWn7t7eE6E8aMpincrvNBaLxWKxxgdJHJZfEfw6WSw8YIYqmbXKKw/eP8srThp/l0X8B0HRjbHgSrq3L6HyoF+JCVjn8xuOxWKxWKwcFZX4jkYZENN/1E/1iBWsyN9q1pxy/2/neIPfRMlwHMLV5yiucwJX/qDu3l7aGtSc3GMA1gR+97FYLBaLlWOauan7UwROF+dvVu8CRFnBKp+a1/NKgxNhIvpUvThqPF4jgqDjCYaucgJXmj1Dp95/Ve9TYv5ZofdhsaM7i8VisVi5oLyKwS+SGehv8jaHCkZkqoZ7rOYjmwUT0fF8nQwj0UucwhUCi51fqApO8/kVR3+evv4J/I5ksVgsFmuMCU3oT2wUn3nC23dmXrlyzdzN4QdHlQA3h56l0uBMevwD9V5dQGXAcW8fYKzAOQemoE7hCp5XRZVBrQcLXlgOAevruXLNUD6uqRFH8v86FovFYuW8yEph8hxv+K955aEnrZkq+rXCObTSBqtuqA/rVAarIbjCxOBZIoKRaKRopLJgAdlWVLUHHf+dsBA/zIVrNoOynYt3ivPqOwNf5XcQi8VisXJec8oCd9mUAckoVLkF04DTF9cc+SFe2WIFrC9Q3BAPXCEq2nX3dqflQQOwLkMpcixfr2dqxLHzvYFLS5qVqQ2+8A/5HcRisVisnBctXf4R9VrlUSbrEfRdzS8X52KPIF+ZiHB1NIHPFfHCFaYHVxj9V/H8Pfr3rhyrje7I9DV0iM++3SiuxmLravL/2tkV/llTE2dCWSwWi5Xjmr6y6xNzvOKbT2wWn+arERMYjqSM0o/jhSu5HmchwZW3PW7AmkDxqbEIV3u7A19t7lYmvlKtg2UtAdaug+K6mh5xPL+bWCwWi8ViacBAC5y/FU9T+8j1OMFpyOJ09jsvDyqKFjfSv/35sXa92nrF19q6xU3NPmUqXjemJwFYOw8oU2r2iZP5HcVisVgsFutDA2SXQKAzMRG4QpS06Fmc/qDiFKxkwAvry2MIRI/cPyC+3UIN/YiNLTpY4hG7F1EmrG4PncPvKBaLxWKxxrkIGj5K4HN5onAFS4YFZM+wqjG2e7sFrrS/O1asGuh5Ht4xKM7t6FNuloCF8iCsKTA5WavBVXDajg+UK/hdxWKxWCzW+Iarw6jv6sJES4MIlAUxPVjZHsP/ygJWwWHA+v4YuE5HHPSLH3f0K1Nae3S4qjOWWr9eq2evAFgArW0dVCZkPywWi8ViscY1YH2F4OfmROEK4aW9g9g/CPBwmrUyRzgsLsnma9TeLo7xDYoLOun1tVNIwPIa5cF1jTpcScACaL7X7j+F310sFovFYo1PuDomEUuGkeVBZdoSyuBggtBv138VBaxk0O9dlcXX6OhD/vCFByhzJQELcAVTVdhSaPYMsjxoBqw2cR6/w1gsFovFGp+AdV68bu3WOOjX7RnQf5UIXAWD2uON2Xh9WgmuuvvDl/n8Yoo1e1VPMLXIZM8g+68qh0K5TrCBLYvFYrFY4w6uTkkGrEasx6HyIB7jAisDrpD1QqDHKZuuT70QR/n84R+RK/1UwJU5e4WoNfqvZHnQnL3SYp8yyVsvPsHvNBaLxWKxxg9cfZxA6Go3AAvrcQAaQ83tigPAQtaKoCpowJUBWFljzgm46hkM/YDgasrB/mG4MpcHS9F/VaHDlMxemQFryz5l8lb2w2KxWCwWa9zAFRY5fzvZ0qCM4jrdZDO+zNVIuNIiS7yw4HPVFxYX9gfFFOxUNANWqwmwXqnVy4MAK5m9koAF6KxoVaZWdopv8juOxWKxWKzxAVifIBi6yQ24QoM7sldVBBiJZK3M0S/EWVlwbT58KBT6NpmljoIra/8VmtuLCbJq20dmr3S40mNLS/iHixeLw/ldx2KxWCxWbsPVERSXugFXiJYevf8K8OEka+WPEoNhcX6m4aovKM7sCyo39xBc2QGWuTwI36+SxmFrhiHAMuAK1hXefeHLUG7kdx6LxWKx0nWYfZTiOOygGxwUJ6PhmuJUI77k94tTBoU4kX78aVgJwEGbr5or1/30ZAxFrYHJwUVUJgOMBGNkrvwxIhAWl2bwuhxGcPX1EXBF0RmhPAhbigKvDlK1luZ2M2BtblWuK9kvjuV3HovFYrFczQgYGZNjsWsObt3kGP5zynTcHIyV7bAc0HSYT6EfX9faJy72bA2etbVZ25t3FMCLR+Ed3w+A6uWuwJWilwflkmN/MBJYiZhgJWMgqFybqWtDkP/FwaByE+DKmr2yTg/CsR1rgRZW2k8PjgCsdmVKWWv2NO+zWCwWa+we4kcjK0UH6xn0eD7FNUKHo2kJRXBk706t0ftCmYWpQeojIgfwn4UI3HoCgVP7hPgMMmN8FyLeG9yTyW7AFQIZHZTJKoz1OPH0W43qv9JjciauS3e3+FRAEdeY4coXJXtVYbjWr6qznx4cUSKkUiIB1qn87mOxWCxWIgc3ptI+EwqJc+jxMoqJdABPdTRNFgdcIdD7gqZq6wFNf37yoKJcF6D+ooFQ6HsDA1qGi8uKw/foKIKj69wAKxkACAAWACTefqtRcGXATbq9sGBXMRAQV+M5jAIsU/aq1TcMWOi7wuuuarfJXpkBq0WPTU2hc/kdyGKxWKx4D6j/AFSZgcqRD1ICcIXDGOUoLNZ1cnADuNC0nG0Glhm6T+e6lblCoCSIe4FMTjCYeFnQDFcGYB2dxmtyBGVAL8RrkYDlM/dfWZrbzf1XCyqdZa8Q5a3K5fxJwWKxWCwnB9ORFGhM/6mrUBUFrGTgYNvYEnR8gGugFVRuRHatv198XozDiS4YeFJMciNrJe8TymfwgFrTGEw6a2WOPT7xyTRelzPpvTbZb3ouPpvpQXN5sP6gMq2oQu87q442PWgAFjKu75KjO/cJslgsFivagYRS4IlhjPkrdGBHgCu3slbWQxmHHvqv6g7GB1gm0LqpPxC+tFfvDzt8nNyzI0J69mpqsoBlvleADbiYAz6cTgnGgitEb6/4dJquy5fRw+c3sm2jmtv7R3tf4TUDpvAeBORHzV6ZAAtRsk0cx58gLBaLxYp0KH1Ta5J2G6wcwBUCh1iR5rmUGGCZmqkBWzcY9hCH5fg9g83FDW7CVdDov5LrceJuZo8AVwjKMn4u1dekhzJ69PpukHDVbwdYZrgyARYyV3gPAqSqIpiLWuEKMLahOTtc6lksFouVRfJsFZ/83/f8F+EAygRYyUDv1SvV8FwKJgxWONzlAU+PU/r94icEICfUUNkzRwHrPDfBSgYczLEiJx6w6okCVkOluUFxYoqvx5HUd3UxvYap0bJXtuXBTt21HqXRqgjZKytgbTRiU0vou/xJwmKxWKwRGZC6LvHzgq3KlHWNekNzJuAKB6D0XOp3Aa7MQY3wN/UOhi/Aa82xe/cpJZ7eK4f3FWAC0ABIuJG18pnDl9rlyMjC0mudHCt71WnT3I4sVZ53ZP+VLWC12AFW+Kf8acJisVgseRh9lg6jGzEhuKpeLwnhsElHM7s16n364eb0UHcKV0OlqaAydTAoJnUPhM7JlalDeh0Xu525wj0DbGB60EkvXFxwRUGeVCkrpdFmgC/Sa5uiTzmOBKxoze0aYFFz+5p6/T0o+68qo0wPlloAa2OTMmEx24awWCwWC2ahFNfLA7ffmOBbVmcZy08xWMmQu99afEFXwWpUEGj1BMI/27+///NjuRFe6KarN7qVtTJPCQK2USaL1gsXL1gBbBDdfvGVFF2PT9Lru3YYrsS0WN5X5uwVYBIl6vneyOVBb4TyoBZ7lIklNbwyh8ViscY7XB1Hh9GVVm+rWqMHpaozmPKSoPWwBthhag2HYcrgyhTdg8qNlM36DtbLjMH7dxhNDuK5T3EraxU0XVs0eaMHq99luALY9ATcdz03pl9/oK1bigJYdoudzdODWI2DHsDqBABrfaNy48r6vs/wpwuLxWKNX7jCfr9r7IxDcXiisdlYVZMWuEJ09usZE33nnUO4CiYOV6ZDd0rPgHI5dimOtXuo4B66CFfyniGDKG0K3IYrxP7UABZKg5Pl67E2t/fE8L5CAJrk645nehAB5/cNe5VJGxoGv8ifMCwWizU+4QqLmc+PNiWIQwcHDcpExoqalIGVjEaf7hhe15narJUdAGgxqExG6WqslAzpeZ7qZtbKHLLRG9CRyJRgJLAayhz1Bs9w+VocS6/zJnODvnlwwon3FcxF8X7H+97c3F7hMHsFwFrfpEzesCdwGn/KsFgs1vgErNM0x2/FmQcS+lJSDVfyUC+MUh50C64iAhZF16AyqSckzn2jPbtLhnT/PkIxwa1+K+t1lsMO5nuRbNZKhyu9p6v9oHuAZVyLC8zvRyfeV9byIAALGVTECMBqtV+NY81eadGsTF27J3gWf8qwWCzW+IOrj9Khe4OTQ1h6UuHA8QfdbWa3C+x+W1IbTH/malSIKesbxdX5ZeL4LL6PX43o2p5E5goB/zH0IK2oDyYEVxKsIsKV+4B1Er5hiAZYQ83tkcqDBFfInCJ7taJu5PRgJO8rW8BC7NEmVHllDovFYo0juPowxY/jsV+oO6iP6sMba0Sp0EWwGvK/qhjd85NOsDKDAXbvLdimXFuzX5uyPCzL7uPh2n7IRLJWDtbdAICQvcKSY1ezVj1YuaNPiLb2iNNcuhYod1+uOMleRZoePKhnrzYa/VeApFiLnSPBFf6frGkI/3DxYrZqYLFYrPEEWCejCTgebys5ro+Dp96nmMBKuAJWMlCS0fuvgumHq/6RcIWQFgUtXcoNB3oDX8umvizDmmGim1krcwCsAFgHaeggFXBlANapLl2Lb4943WbAcrjYWcteUSBrV1Spg1RVHN5XVsBa1xy+pCRHPNZYLBaLFUNNVBrUDCmNqcF4JgNxOGFkH+U7HFhuw5UsDy40eS6lo9/KLnMlA/YEi6p0GNg/KG7q8AXPypZMlrErcorbmSsZq6hE9op2r4OuwFWrBa4aXQIsugafo7hJsbjPR/K+GgFYlt6rWqM8uKg6selBM2C91RD4+eKa3FzJxGKxWKzRh9EXhkbYE4hGY6oQB4/fRbBCIFNSaABcvz89WSs7qDIDArIZCACB9mv9ytSOvuA3siGTRc/hSrezVkNZQwOmAQpuZ60kXDXS0ERLd3JGo9quQSF+hD60YJTsldPmdmlwi/6raNODo5zbG0cCFkrLa+qVa1bWi6P4U4fFYrHGB2D9OBlXdhxaaHrG4RvN2TuRQEkK8IYDLWNZq56RkIBsGhr8W31B41DWPMGm7usOfaepqemjGbyPn9Wa212GK5kxROkM9wKAkSq4qqdoPCROSfI6nBwpexULsOya25G1A2CVtoyeHvTGkb0CYK0lN/fFZeJo/tRhsVis3Ierz2i72ZJwZfdrh6+eaSqudea07jRjgsMpzzA1TXczuxUQZEgX8xGTbxQdPcrNbb3ivEyVCylrc2mqMlcIwAPuMUAomSlBa0nQDFew/ajvEicl8X7+sGLK4tkBlp33VSTAAuAjW6ltL3Dg3B4LsFY3KTdnu80Hi8Visdw5lC90a91NqTFpVaU1oyefyZKWAK/XBtMOVgd77OEKhzCAD47yVsCS/URth8KXpLtcaOzZcxesLNke9F5hVQyAxO2sFQYYEACa9w+IE5K4Dt8wl0hjWTNELA8a04OAKjS3A6iTmh40xcr6rk9k0TdYWCF0+FbyC6sn9/9WIY6mOL7dL05p6RNfbzsU+lbbIXH2HuozbN0vTms9KE5sbRXHl7WKo+up1Ll1q+YzRu91tp5gsVgs66F8g1vrbvqNhnRM2AGOkspeGVmxAsMSIJ1Tgp09kQOHb57hYm8HV1oAIHrDP8TwQBrv5TfchivzdcRrLDIWfbsOVweH4QqxvaPvswleg+MUOUEZAbBGLXaOMT0o1+MAnipjNLdvdAhYqxvEZzP4f/6IJrIXIXg6c68v/KPmbmVie7e4fV+vuL+1V52595Ba0NKterTw6dFkE40+taDJF36isVvc19il3FZ/QLm66aA4t65bfLldcIaOxWIxYJ1Gh9FkN3cJ4vBECW1VfTBhsJKBQwtfq7MnmNaG9s4o2SsAQJ7hh2QHVxIg9vYok1t84R+mo1yIvYPhcJQ+ugT6rawZwzrDKgNwkeyUYKTMFew4YOJZ09pzfALXAJmYs80TlNbVOHbTg7beV0ZzOwAL/VcoD1ZGMhdtiQ5YVrjC/4vVad5HOH26+HAHrXkiiLq6vUf8qbVHndHarc7Z2608s7dXLWqVQGWO6HA1FA1deuzpUosaDqpP1R8MP0FxP5V5b2g8IE4fK6ulWCwWy81DGYaU56diSbPsmzL7ViVyuKOZHIulff2Zg6rh8pEODHIPHw7UUVkr3+gsTXOXOD/VxpJ9eh/d9W5nrYavp56pwevGtUhF1qraZH9ABq7HJvB+PnpoPdCoIQwx4n0VzfvKXB7E88N7EJYclXFYM2yMlL2q1wFrWUPg1BT/3z4MJb/Wg4Mn7usTk/b1qnPaCJpktJoiYbAywZU5dh8YDvp5EYHWjF2UKSvT7w+XEVks1rgArKPoMLo6FYuaUXbBwYT+qc7+YNxwhcBhLEEm3VOCkeAKsdEY2cdB22oDEdZMTZNPmdy0P3R2KiErKMR/wsPM7ayVGbBgUaCXft3tt6rtHOkthUAvUALv5++YjVXj9r6yLHauM6BvvtFvl2xzu8xeIdbuDv5nKt4H6Ilq3R84rb0n/LO2XvXP+3rUp81gFRWuooBVpKxVJLCSsUsLRY/94cfrOpRrt3f4v1xSwkarLBYrtwHr+KjTg8HkVt7gIC1AKa0lGDdc4RDEd/soSdUfDKZ9SjASXCGkc311e2y4Goou5ab6ruCZqbqXVB68zI0pwUjX9WCPDleAhGSmBK1Zq9r20XAFeJlOk4BxvpfRezUpHsCS04PtUQALgIR7DUiKBViR+q/W2ADWG7tC33Lz/lPT+dFU/jufgOoP7f1iZnuP+qwVrKyAZQdXTgDLDq4iA5YyFDv1KHr/oPoYWV9M3d6RuT40FovFSqm6guLrbmeurLHGOKAO+mP3W5kPeRx+Cyr1ibV0mYc6gSsEpsm01UAHHcLVweHMzc5D/i+lAJQ/OiJ75VJZ0Hxd8bqRtQMUxey38jmDq+rOCK7o+5RJCVyD88yrgYI2/Vc9sbyveozmdp/ee4XniulV9F95WxJ3bh8FWJQNe5MWPrt07w9vPxS+8AMqAbb3qh5EmwynmasE+q1GgFUMuNppjs7hqN2vFrzfGb4U/WH8acxisXJKT3kDl+FAwHfxboOVeTEwMh9aaanf+aLmWqOheqOD8qDbU4KRwEpmZfBa8NziASvZc7TroHJd80DiFgR2onv1jUSzVk6vK8ACwwaN0rk+iX4rZP6q2+0tDxCbmwNXxpu9Guq9itDcHo/3lbk8iNe8sCpCc3u804P1JsBqEucmAVWHffCB+Mw+mlJt71Mfau9VikbAVSrAypdU1moEXNWOjKLqDvWe7fsCp8ebtWSxWKysFEa1324KTsZ35wCGinbzHkH3dgkCoKqMpnAJS/0xdwnqh1OBg+lBXwqmBCPBFQLQsNAAxqhwZYULaaB5QJn6/oHAlXUHxMdduo8fDijUR5dAv1U81xXWG+inazUBVqJTglF3+Wk/FhfFBZhCnKXIyUER3fvK6WocPF/AE96DxXXueF9JuEIvG9k0nJ/I/a6hHYb7+sOXUtP6Ax/0qYVjLmtlEzV6NmtmTYdyNZUNP8afziwWa6wD1mdwCLUaa18AQAsNaHB7UTOi2Bh1x9ePtagZmS4AjPRbSl+/VTAqXCEACdLF3UnmygxXZtCgw+Z6QK4L9/HTdB9vdrPfymfTBC738LVbILTVQb9Vnc2UYLSMkLddfDeea0BQdb0ZrpyYi8byvsLzXdM4PGQRCbBKEwSs5fX+i+K8z4d19Iuz2vvC8yRUmSNar1W8/VaJNLMnA1cyqimbVdOh/pH3NLJYrLEOWKeZyyg4NBYZoAUYqjvo3rob3ZF92HKhJ8YBjwN6vje6uWgqpwRHmYaaAAKHLEARB6iTkqAZMkY0dyOTsy98wWLKSCRzHyl7c0ZQUaYkOyUYzTi0unMYNNyYEqyI0CgugeXdfeL0ON7HZ0SHK5vm9ljeV8ZzXlI70v/Kjeb2FXECFiAc/lVUCvwdZayeHgFVCYJVqqYEHZQDbcFqR4clPlAfrWoLfG0x+2exWKyxqFBInGOeEtSsFQyPJ2SP5E5BHDT9LpUKcUgVGA3D0TJTOIAAY+09wYxMCUYyDkXgYNVWAbXHn7WqtTR4V+9XJtV0iYQnC9HgTNOD5GOmTHU7a2W+dnJQAc/brSnBqJmgZmc9arAZEdK1PRpg+WOvxrE2tyPbptmM1KYIsOr8P471+g5QGbm9V1z3QX94ltOsVaJTgo0EUBVtihZJTgnGlbUaBVcUVRTbO9THtneEfsCf1CwWa8yJ9g9eHKnfSjOVNLyeEAAu+mBM2pUdX1dOZeFgtjvoUbqR5Sj8+UxMCUaCK4Q0UNWAKhm4MqDjvX3Bye9Rw3KCgHV0QFGucGNKMJIrO67RC8aiY/RfuTIlGMNDarXDPhxjC8G0aNYM/ji8r8yAVWX4X61pTH56cFX9yPIgSt+rdoV/Eu217e8Rp+7vE3/vpD6rjj61aFTmyuV+q90ERi/uCHmerwqlvN8qFlxVtWs/Lqr6QC0gyDqXP61ZLNZYKg8eHgiLn8XqtfIZzeb4Th6HDZqcq4wsRk8CxqE45HCY4bBeZgNQCOkWXtUezMiUYCzjUByQcpouVkkwGliZ47324MSte8QnE7iPx1P26mY3pgQjXTu8Lrno2K0pQXM50Op+vp4GL5xmr+ibhEtiWTP4YzS3200P4jUAkAqMwYwKJ9mrRncAa78Qx5JJ6M+pJPikbdaqNzW9VmUtiudJb4geQ25PCY4Gq87IYDUqCLToG5CLSgQbk7JYrLEBWEcHAsqVwTisFnDIIPskM1o4OCL1acWaEqww+piqLT1WB/uHM1xyejAbslbmTM3rxjRdrKxVnQO4Gm72VqZWtod/FG8/FmUfz3BrSjCStxWeJ0ADcOHWlGDU6bsmZYLD9/DnKW6wy14lND14cDh7hdexqFr3YMPztG3ET7C5fZkRy2tHlgjRxE7lwDMoa3XnBz3KM7ZglaIpwZ0ETZ7KkOclymABhjKVtTLHNlO8ty88t2qfuIA/uVks1lgArGMx2h9/o7p+sEqjzQJp8dA6ErRiTQkCpGQDcWf/yOZ2ZIdwQPkyMSXoi20cikMXB2V9giVBe8BCqVCZjMbeeO6jn5Y7u9VvFQlCAQ+4141OSoKJ9FtZ4GR9o7jUyWsPCXEOgdXUWIDVE3TmfWWeHpTlQfRfmZ+/G9ODErD+tXNkk3tbb/i8zn7VtteqPcXN7KsbQp58yl6tawxFnBBMGVy128c2K2S1h5/c0hr6Pn96s1isbAes4yh7NSGZhvVWn77KBm7rOIzmG31TOHRxMPtilKfqDCNRc6nQaxzm5mXC6Z4SjOZtBaCab5SNks9ajYaQLfuUmzc67MdCmddcHkxmSjCacWhx3bDnl1tTgpEWIiPebo7tD4XJOsWSvXJizRAte2UuD8o+O7l/0K3slR1gdVC/GWWsrqQJwWeclAPdnhIEBC2g7FVhJbJX7k8J7kgwa2WNSu0xPG97R/Ab9A7ghdEsFitrAYu8k5Tr3bBf6DTKSDhIZK8WDuQV9fqBhEPZF+GwX2OYieLv4+ewiUBmK5NTgtG8rWRmA6/LjayVFUYQW9vEle86MCE9OChOTLbfKtp1ktcF9xT3dkRJ1IWs1cYIUPJWY+wdfQKLrS3N7baA5Y/P+0q+rmKjFI7nVuGi95UZsFbsEj/q7Befg/0ChSflU4IRLBg2NOm9V+/QYzqnBJ1krcxwVallsdCPpT5S3SW+yJ/iLBYrWwELJqMT/S7ZL+iZgqBW+sMhjEMF5b88o4y40OjZwuHsG3Ho6/1MC6v0g03aH7jhyO42XCHwGooMX6RIWau4Mlfto0tQW9uVKVtbxbmLF0f3AEKJzO1+K+suwcaDw0Dp5pRgJCBZXa9MfatBnBorc0dxXazpwX6b6UHz+6LV6n1lmh5EGVj2ncVbHoxmzSDhClnBUgLpjp7w3ylz9Ww6+62sE4IvU9/Vwm0hLVOVqX4rJ3BlhizKZD2+qaX7U/xJzmKxshGwPjuoKDe4BVd2PT8+Y5/gCiOzJYFL+mtVGD5S0htL7nxr8QUzOiUYzThUwmC1y1kr6yG+mawbtu4TJ0e5fx8eCCiXJzsl2B5jlyDgodAClPFOCW6MURI07+hb3aBMWlk/eFKM9+6JBFWTbacHbbJX8azGwWvD9cdrxr22A8bSGNODsQFLofur/oHA6qlMO7IDbOZp2auQu1OCKQCrUfGBete7Lq2bYrFYLNfUTxNY6GFJGqwcNFTr3lb64YyDCQfNIsNXCdkR9HBJ+EJ5EAdhJqcEI3pbIcNmHLy1LmetRmR8DEApb1Wu33ZIHBcBMj4+EBQTUpG1sk5MakDZnvyU4EYnFga7levX7RSfjgJXh4koze123lc9sbyvTHAl+6+k/1Uy2bhIze2V7eqfWntGWzCkfZfgAT17helBgE4mpwTjhqs2TBaqBZX0f4QXRLNYrOwCrH4CLMUFwHIAV6MPOv1Qx0GOQxqHkrR/sMtgpXtK0NzIbZ4SrGwfbnx2O3PltYETRBn5/9jtKxwYEF/oG1RucqPfynaXoPGaARqv17o7JTgCQiz9SW/uVq56cXtkk1HYi1BcHq+5qJwebHcAWLi/870R7k8M5/ao/Vf1yjRaAXP/PhsLhlRNCTZEgastBCmYHFy6M6RB1K4MTwk6BStzbN2nPFXZGvwmf6KzWJkrh+G73g8bvRtHGHGkER8x/Rp+f1xMpwCwgnECVn8SYOVk3Y22f9DY8WebtUrDlGA0bys5WYbHIaiKc0rQKVhJQCndq9xc0SK+Yr1/vb2B0/uDYoqjrFUUCLW9HsbrrzAMX1fVuTclaAWPUd5Q9eHLou2fQ2lbmMuDSUwPNtpMD+JeIrsqrUfcmh5cRXC17QP1vn3kyp4duwQVz/JdIc9cGIu2KqmZEowAVVvaQlokC1dbjNjaps7fmOAmBBaLFT9MHdunfxCfjFUaFGdRfBc72ygupLiY4ifkAv0TeryEfg9ZgguoafhcejyblueeGQiIr7YNDp70ApUrylq175pzCrz6+sRn421yTyVcycBBhXIhDjzXslY9iWetzFOCAIA8I7PhZr9VRLgyghy2ryppEh81v8cHaI+kW1OCLXZw2alnl/IMS4qqBF3Z44ErNH7/e2f4/Bj/v78faXowknO7k+lB8/3UtgzURs7MbXSamZOvk+Bq677wvVQWfDqT/VbmHisA0EJaibOAmtsBUenKWnlbQ55Xa0JaaRKQ5AisosCVjIp25fat7eIYPgFZLPehCtmnEw2I+ik9XokpI/rQvYk+fKeY12fEjKD2OJUeJ3/QJ27wbA1O2LVfuULb2yfENweE+EKNiM9tO0sB6zODQWViNmSuzIHDHtmDBUapMBPN7JG8rdB7hdKR1uDtZr9Va2S4wiH+bqsy9d294kfy3mG6sN8f/kky/VYtDnYJyrJtpNfjTXQnX539VB0GH/5VLf4z2v9zgqobbcuDUZzb5fSgtbm96ZC4ta1b/L6tR/xpX694gJrOH6Gdf3+vO6g+RqDzRBv9eF+P+mizT31o94HwvdWd6u+9bcotdoC1LkJzO2LrB+F76es8k9F+KwtgIWuF5vZNLaG0TQl6W3Woe7Ii5FmxKw7AigJWQ0Glwi2tgk1IWSyXslSAqi8Y2afJI0oFiYRl6TEChw0OmINkJWAGDvKPmuQPhy/0+8Up2IcmxmCTJXbYDSriumzIWlmnBKuMXqdVjfq6nHROCUbytgJcoBkfkOVa1ioGWFmjtF2cIkGjl+5dQlOC1utx0N44VLMqqNLDmrWyZtzimRJcFQGsMNwAoHvp/YETorxnvxyp9yposmboH/WeE/R/WNyyv1/8cn+fenfXgDr9UL86z+dXPb6B0dFlxAGb6BxQn917SP17zX71zk0tyi+iZq/gA7c3dCfBVUE2ZK3Mgb6rospQmrytdJAr3KLD1ardoaRKghGjXX1s61bxET4hWazEoAA9UydQfIc+XCdQTJVglRRg2cAV4AIHHQ7VHgtgmUBrKqwOBgfDFxBsfaW7W3xqrJQS6Xl+kp7/tdmQtbLrt5I+WjjsM5m1kgGQgJUEDlC3pgTjgSuAS+lecZlRrv44+q+SmRJsMTnT2+0S9Br2DIChuHcJOlh0vMwAKzNc/V+tMvWfplKozTdVF8XjfdXrF7/uCah3dfvVv3b7xczuQfUZDapkRACrSHB1oE+PTjwOiCKCoTk7D4h7NzWHfm2XvdrYrPxmb4+aly1ZKxmApacJdoqN5vZUTwnCAgKTigAsrOTRgMltuBoqFYpp0Xr4WCyWfQnwNCr//Zw+VG90Daxs4MoMGa8bH/79wWDMMhplgyYPEPQRaP14cFB8MZZJZKa1f784tjegXJ3xzFWEKUHAwCIjg9Ieo9+q1aUpwWiu7LLBvTIDcCWh5Z09ypSSvcFv9PSIU92YEqyPsktQvl7zomOvC1OCZrhaYoIrZAZf2RF5yTOgkmJC7OlBMa2PoKrHr/6N4CofUEWgVUSQ5el2Ca7MAZPQtu7w3Mp9oTvNgLWhWbmt+ZAFrtI8JRhp5c3aBj2ThKxSPM3sNXE2swOUkK0CzGEVzwYCrXjBKh64GioV7hXf4FOTxXJQCjSa1a+wApXbWSs7yJhvTIwlYmMwEKBFykJ8xW7EPkuu7UcDinJFNmWtrNNuFcZaGhzIMcHKhSlB2z2CBnQACIoqUjAl6ACszPH2nuDkju7wj92YErS+XjM44pojg+X2lKA1azUEVxQvVUducDcGVibZlgcpQor4xWBI3N0bEnO7AzpMmcNtsJLRYQT2CG7rUO/Ba1/XELqVYOZRAquizE0JRtgl2KnDzgLN+yqUkilBHa70UiD6vJC5Km0JpSxrpWWujNjcphSh4X1lvTiKT1AWK0oJy5gYmuwqWEUpCZoDh5Fc25KEV9RUympdHggEvnYgyxyHS0rEEYFw+GfZlLWyKwUOeRK1p8bbyukuwYVG/1UqpgSdwpUMOhj/RFNxv0h2SjCatxUGDaRVgZtTgiPgygCrV6r0bCX5X305yufBt63moooOVr8ZDIt7ewPqXAKpIrfhqtMBXHUYewRpOvGpLfvUu7Z3qve19eh2DJmHq5EWDN42PXu1pDaUMm8rc+bqeWpqpynYlGatKqyxNzyvbH/0dUss1rjV4hrtu1VMAk7JBFwhcIAgY4GDKVkjzkGaSMRak75g8Osii/oD/GRXkQ2Zq2hTgo3GsuEXjKnCdPRbWeEKkCEzaamYEowHrkqaQrdW7gtP3+NT/yuZKcE6C1xZX898w1U/XnuCWFOCo+CqWsKVcvNzdfbfhBj+dJeZ4Yp+Pm0wrP4FYNUrwSpBuOqKE65GgJUMWQrsUeeTHUNBtvRbjfC3IlhaReVBmIsio5SKlTcAJvhrYXn0ixpchdyZEnQKVzL2qf/FJymLZdGS9wOnza9QJtF/9GmphqtogCTNBgEFbrqcY3KPppk+nw3Xmkoq3+/PcObqYFT7BR0a5BJoHODpLAvKrA6gAf8+QCITZUEzyKxvCf12y77wjKoO9YEPepVbHfVb+SIsao7gbSX7rwBIifZbLYvVb1U9bOj5QpWCuOqpCGUdTOoq+GZrGLBuI7DK65VQFQuu/KkpC3ZY4Cob+63MU4K1VB58rUbPLKWiLLjNyFyhLIim9i1tac5ctSFDZ4rWwGl8orJY+ocoHNW/TtNRk/EhXFSpeyClckowUmBvnmY2WBdMyfqYvqCY1DsozuvtFZ/O5NQhPY8zszFrZWctICEHGZaWNGStzCWzV4y9iYCMVDeyRwIrCTKbmtX/2twanoHYsV+9K1LWKtaUYDRXdgCRnJh0c0pwBFxVDcPVwkpl2vPvhS+MNP1F/0e+JuEqpIo7+0Nqfm9A2GatfCnqt4qWtUoYrNKRtTJlr9BzVWRMD7q9SxBwBLhC+RFlwYq29GetRsIV/VqrejdaIfh0ZY13uIL9wrdlSVD2P+GDHDCUrqyVDLmDrTKO/itrJsgJmPTSsl4Cym/W19dnpCHTNyhOzpZ+q1hTgrgnsMzAoQxQSGW/lRU+AFcL5eqUDMCV2QLg3Rb1j4Crcop3msMP7+4K/SqRKcGqSHsEW/V+s0JjZVHCJcHayCXBIbAy4Oq5SmXq/24TZ0d6nxJYXQGwopL2gzQhON9R1moghVmr3vjhqiVDWSvzlCDKgvO01TghV7NWgKSVJriKWhZMQdbKDq4Qm/eq+aV7A1/lE5Y13gHrrBFmoUYPFL6LxqEbTFPmym/yv0KJBCaXaVghM6UnIK7AGHq6r/uhQ+K4nizOXFmzM9KAFKWodGSuKg27AsA2YKEiybJgsnCFKG9V/wK4KqVYuyc8Y2UDrWCxuQ6O4MrGPBTPab6xdNvuOa6JYBy6wtxrVWeftRqGq+HM1QLEFmVyYYV/1L7FQdrO0BNSfkFQVdAXEIUjeq3igKtY5qGagWg6M1e+9GauZMBcFKU7GH+60W8lQ9o+4GtjFU5Un6s0ZK6GYq9StJnWTPEJyxqvYAXzwFOxzsZaCgSo4IP4Fc2HSkl51mp4h5l+UOCASUXWKlJ0B8VNB3rF6SiVpvH6H94XVG7O1qyV3ZQgDnWAN2AhVVkrc0+S3D8IuMhESdAcaxuUX5S1qg8ArkpbdMB6/f3wwzs6Qr9tjOLKbjclGGmJsSzFAozcnhIcBVYURRXKNM9W5UbP1t7/oPfj0VpWNSwupezug9RjVYQ+K8e9VimeErTNXGW818rZomYAFOwS0INF75ekpgTNmat3GnW4wk5DDa4ynLUaFXvVP8Ocl09b1ngErJMJpibZNrIHlaHmZnzwGzsCU5a1kuHz63AVy/8qFY3hPYPKzX1+cVFrjzg+XfegPyB+nq1ZK7tGdkADDuoiw+U9FVkrM4QAEAB0FS3pmRK0AysZbzcpvyzfG34QcLXJAKyXq8MzNjSrf9YXFzufEqyI4G1VXDvc4D7qOUXotXIyJWiFK4AVopBi0TZlShe9D2no4q7eoDqbslVDYOUGXLk5JZiwK3uGslYSsFC2w/TgCirl1XQkn7UCJCFzpZmIbtNNSyNmrtKZtbJEeatSsGnP4Ml82rLGG1wdQ3FVVFd2w00dhymWs6YyczXkf9WjHzAtUcqDbsFVBGCZenBQuY7KIyel4z4MDIS+m07zULspwXjMQwERAIM8o2xXfzD5KcFI5qFew6oD78FUZ67WRclcAWwQ6xqV2zbtDf/PJgOwVtfrgEWP02v3K792OiUY0ZW9UQeiPGNiMlq/VbxTgguN0ODKACxybv9VTaf68KGAoBKgWtgXGglWmZ4SbB9jU4LRXNmX7dStE+Cmnky/lQwAG+AKURYJrlI9JRgDrhBlWi+WmMAnLmtclQZDIfEDJxYMOLjNE32pyFpZ/a8WaBOMwYyuj+kaVCaVtYszpi8WR6byXtBan5NgiJrprFW89gvSaRyA4GbWypzl2Wj0XwFu0tnIbrfXDkElwts3toQfkYD1pgFYq+rxc/WB9zuVW5xMCZqfv/U5osEdE7wJNbKPmhJUhrJWCw2w+ud7yi3Ldonfbu8QDxIMAaw8fRaoigZWvhSVBDsyCFapyloNlQcJnBZW6TAEyElkSnCbyecKzfJFxm7BiOtvMpi1kmAlg7K+j2f76jIWy03A+rK17ypaZkpOcsEbKxVZK3PgO26UO6wLnlOctbIFlndblSlPbx48b2u7OCZV92K/EMf2EcxlY79VtEZ2WSpEORdQkWy/lV2WB/CA9x3gI+1wVW8qyRmA8/Ye9fcEUtM3EFxtaArPWLZrGLDepnJhRZt6R8wpwZbIxqFrjAXbAKRkpgQXWaYEZdZq8fvKbdX7xUMHBsU8CVbxwFU6pgQBRG1ZOyWoxJW1klHZpsMQICuZrJXMXOHroO/KdnFzJvutbOBKC3KS37RPcJmQNT5KgwRUV8XjbYWDXnrz4EBPReYKgcwKyiM4cPr9mV8hg0Pv/1F/Sn23uKw+Rbu16snEkaYYr8zGfqtYU4JeY9IUh7qbmSsZKA8C4rwtae63soCVjJJG9c5NBlyVUBTvHCoRav1Y9Gv3b/tAudVpv5V13c0qo6EfAOXmlOA/q8Qt5Kx978EB9SlMAprhqs8FuHJrShAQBRCB5UBGpwQPuJO5ks3t6I8qqND9rxLptzLHyzt0qwdbuMqyzJWEK4R3n7iMT1/WeACsM6QlQzyTgWjiRbkGH/raVKGLWSuzPQP+DWRC3J4STARWcNiiXAmY6OxVJrSRMWkK7sfhvWHxo7GQtRo1JdipH/Zyys8tsDK7mRfXpm9KcETWqm7kpJ7WdL5HvQdgVbJHz1j9X+1wBms1/XzNHvWR0ib1jkqHYGWdEgQszTca3B0tah41JahYwEq5ZcUucTuBxkw0rmciaxXXLkGCo7kED1j14nZJsDHNWStzEztgaJ7Rf5VI1grgtIWyYLB5wNdBP9dYyFqNiObQXR/KoKkzi5UOuDqCwOrKRIxD/QRUJS16CaPuoOJa1mrYnsFoqCeg8fVnx+JjaRcBuKDlvlM7epWrUrFmB2an9FynjoWslbXfChCFawQQBSi5AVcICRsAn0hZq41pyFqtMMW6xvCf3zbgCvFq9XAGa9UeHbTW7AnfL19TrJKg9Tlp/VcVo8uBzkqCI7NWL+9Qfrm9Q/2rb3C4z8rNrFUqpgQBR3ONSbux4m3lZJdgsQFGgKVEslaAIEAnrg1sHiraQmMia2WOUhoOWVnf9Qk+hVm5DFinwq09UeNQgI78UPe7mLnSy4P6IY3DRIOqTO3mMwELDjK55Fj7NYKszj7l+n1dg1908774/eIUWERkw5RgIrsEAROFxrRfdYL9ViN6lYzpQbkeJx1TgqtsAGuFpTwHeJJwpU0QbifIqtXBSsabu1BCVH9nOyUYw5VdMxitHAlWiUwJLtul3P5Br2a3UBgNrDLRbxWtmb3JDFhjbEowkis71uMAihZUhhLKXCGQAUOJ8Tmr11WWTAnGgivEuy3hmdyHxcpluDqSMlc3JOvIjuxVgdF47CZgVXfK8mBms1bmeMEovQA6zJDS0adM6vCLr7i1x3CPT3ySphZvyKYpwbi8rdqH+4cAColmrSSUSNgATKRtSrAuMljJWFcfflCDKyNb9cJ2vUw4BFcGYK3cHX6YDpVfeB1krSTcSf8rvOfiaWQ3TwliQrCMVvkcsslajYUpQQlYqyyAle1TgtEc2QFYaEoHZDkFKzNcbTLsGBZYlzePgazVUPYK0arOL90b/AafxKycVECI091YdwPwkW7TOITdAiwcNigP9vgz029lBypFRgN3q02Jrb1bmbg/IE5zCX4/TI3ulycLV+2p7LeK4W0FcAIcyKm/uLNWpozPktrhvq50TglGgysNsBrCD681AAsThACspTuH4eqNXcOxjhriN7Y43yUo/a/wWOyw38o8JfhqjfglJgS7B9Vnsi1rNcrbKsKUYKNNBivbpwRrYuwSrGzXJwhX7ArFlbWScIX1N7BkeEfaMYyhrNUQXCGDtVd5tqw5fD6fxKyc7L0K0PoLt3YJwqMKB6mdnUIigXIg+nhw4KW9JBgFVmQWJRKw7OtWJrX3ijPcuEe+/uA3k89cBV3rt6pPwJXdawwpAAQq4shcmQELEIX3AkplMeGqMXX9VstsYu0edbrMXgGs/kmAtWzncOZKwhV+bUW9ej81Nd8aad2NdUoQ31zg2gGoIk4JVtlPCb5erfy6sUv8HattHPdb+V2Eq3h2CUaxYJAZrGW7QmNqSjCaK/uWdr3/CittnHhcyUCf1Us7dPd3lAiHsldjLXNlhqxW5Qo+jVk5pz4hPkPANNHNXYJyjQ4O12TACoGsCr57x+GdDYuPAVcAjfnGyHw0UGnrVm5q7hZfdqNM6POLKdrz7c+SKcEEvK0ADXkmc1AnJcERxpuNw9c93VOCdmAlbRGor+nW1aZeK5QGAVhvWMBKRvFOdfqaBvV3sXYJyn+ngF7z/Ir4pgRl5ooAZFamslbJ7BK0NrLLJnc0hcebtcrYlGAMR3b4VgGwkI1ykrWSEIWm9nnGROWYmBKMAFUyNuH394rJfBqzcjGDdbritLndobdVf1A/GPCdN4AkUbhCxmpFvZ61ABhkfvGxDiwSIHEgxsoCNXcFJ9b4kt+35RtQrsq2KcF4va0ATsiwzJcLmp3AlQmwXjf81gAk6ZwSXBYFrhDL65TbzM3smCB8YXskuNIzXMvrwveXNCoxdwkuMSYmUZKONiW40AJXb+5Wf0fN7HOyDa6ScWVHxmapHWCNoayVeUpwHWWuCox1No4Ai2BnVYO+VgeeV7BnGMtZKzNgvUvDH3was3JO/rC4yK3M1Yi9gb7h6bEef2JwhWwNDhccYr40ZK2c9jABGKTpaaxsEAClpVvc0NAlkpouPNQvzo7vuaa5md3BLkHNw8ooFUqTUCeZK9kQLv/exgxMCdrCldELtawu9HsJV28Y/VeYIDTDVbEJrhDIcq0kH6pouwSLTf1XeN1RpwRNruxL3xe3Aa4GQon5W/kyMCXoxDgUDd1LakM6TI2BKcFYruzoJ0MPVllrKHbmimJ9k/7n0XuFrNeWLO63AjjBFBa+XGVRwGrTEGCF/sSnMSvnRNmrG9zIWtlFiVHSweHaHwdYyV4rHNo4XHDYZjprZQ4c+HheAIJIoGKFlYaDyoSa1p7jE71Pnf39nzvQr0zOuinBBLytVhhThQAIp0ual5n+TiamBO3AStojLNul3mXutfqnMUFozVppYKXBlarFkl3qA2soi2XryG78G8jeygb3SOtuFhoLmhGLtotbO3vVvLE2JejE2wpg8RoBVpNPSX5KMAGwciNrZe6zWlyrw5LXAlh2cIVs1fNV0pQ0e7NWOjjp5Uus7EGsb4oMVpuMP09WDX/l05iVi/1XrmWt7AxC5YqOzv5gdLCy8baSPTutPenxtnJaYpNO4gALR7BiAEvDfuXyrXt8n0zkXnV0iI919Yd/lo1Tgol4WwESUO4raYwNV4AoWVq0lgfj7rVKcEowElxpgLVbvUeWA2X/1dLa0XC11ARXr1MsrlEfgS+VNWtl7rVCaVAOB0TqtyoyAOvVavHr1l4xcyxOCTrZJfj8Dr001tCljIkpwVimoXgtC7YNA1ZlRLhStNIoYAVZr+zNWulN9y8aILiQXhvKoNHhSgcsLErnE5mVU3qxOnROi89YbeNi5spaKsQhgYPNaeYKATjAoYqDJd1TgrGAZYUBfo0JZIIausI/r9kvjk2gV+6wAwPinAMwNE1kStCX2inBeP2tAEF4XxSZFzZHMA7FewcwtqgqM1OCxRbAWmIx93xjl/rfErBgMCotGqwlQT10uHoVQb1aS2rU/16+S7nFCnGy16rAMFU1TwmOKAkamav/JZ+rnQfUGQRVz6Z1SrDPnSlBJ8ahyPhgem43gY+7mSslNZmr9uiA9VKVDiEVraGIcIVYvlsHlld3GH82CzNX6xr0e4MyLoxPAYSwj9gUI3Ml490W9VE+kVk5pflbghO1hmM6sHoM4Ek2a2UHUBtbhjM+clFzrHU3tZ3DuwfTPSUYDVQAJThYceg5yVpZYaX+gDL1/f3hCxfXiCPjvV9dg4NfRJlwrGatrL1WslQIiI7myP66yfsqE1OCMmtldU2X8Uadep8sBz63LTzjpe2mrJUFrDS4qtbj5e0UO8IPF+9UfmnrbWVk7bDFYNSUoAFWhdqjmPZeh3hgLE8JRrVeMHqtkL2BMSeAJ1NTgjUJ9FpFsl7Aa0FEAyxACqAFvVfelvRnrcqigBUyVtihKJdMIwBZ+LVSh2AlY2Nz+G98IrNyRpQROYbWu2gHDmChyNgXh8Zyt3cJSudzrVTYE3S0SxDPa0FlMOP9VlZgAYjIPhgnWSu7TBB9iE+p3x/6drxu7/Tnj8I6nlR4W8XVb9We3C5BczkQ11JbFF4X2dcK70+tub0xM1OCdlkrc/x7p/rAMiNLtWCbvoNwOGul2sOVAVgvUbxWrd5jZ8HwgtF/Bd8vu6yVhKvSveK/pc9VrvRb2U0JvkO9PHAtr4kGWFk0JRjLOBRwhb6qUfsDh/yuFO33AViAlmzJWqEHDA3sACtMNGISEmVBuOxvitHMbgdXeoRn8KnMyhkNDIgTtB2CQfg6KdpBgoMO4ICDMZ7JPyeBg1zruWkJxoQrgFGhUVbMxJRgtGxQnbHAGIdwIrv5JKTUdAQn13SJM+O9bwe6Q+dkekqwKsnMlRmwAFAAac3lvXE0YBXXDntfZWpKMBpcAYQIsB5EORCZKwDW67Ujm9mHS4LDYCXh6gU8VqkPv75TudU6JYhvevKMDJa13wpwVUDxxm7x+4ODYn5WTgn2ugdXACnAATI5gJixMCUYy5X9eSOD5bUBLAASGvrRdwWY2ZIF/VaAvKW1+moePC+AFdb8oO9qkyVr5TRzNZzBCj7MpzIrZxQIiK+Z+638FNj1h4NO+67ZyNC4CVlyRB9AE82VHYe2NCp1DbBc8ovCc5J9Q/FmrqzAsmO/cuP7B8QJ8dy3ViGO7ugXU+ItCzamyDw0ocyVpd9qVd2wBYN18bH0gFqX7Mobl/qtXrdxUS9+X314qdHcDsCSYGULV9Uj4QrxT4oXt4futk4J4rVrJcKK4KjMFeCqwKtM2+NTn+iLBlaBsdNvFcs8tLZT1Q52AEjGzEM73IErxIs7DMCylgjhd0VQNdfwu6pwO3PVGgdcERjBaR79YvAhm2uUAtFjhUyWEwuGWHAFcNvQFLyfT2VWLpUIz7brtwK8eFuGyxM4WHCwopyYjCM7Qjauy1JhJHCS5ZFWy5/JRNbKCioVEv7anWet6qKAyvb2wM+3totj4rl3z1WFL8HhDwgB0OBrNvqc2UVkqt8q1pSg9HvSbBga9ZBLjgEz8U4JpjprZY5/71IfQdYK/Vf6kueR5cBXLVkrCVf/3DYcC7epf4XFgtmCIc8ALHPWqtAAKwBWeav6lz7yusrklGA6wMqcrUJJCpAwFqYEY3lbAZ6e22YCLGMyUO4ZRGlQ+l2lLWvVomeqkJUCRGHKEUCF5wIYhK8VslXOwUqJAVZ6kMfX3Xwqs3JGYSHOi9bMDgACTCyqHh4Tx2EYyW7Bib+VzE7lycZ6G8CSa2hwMPoyNCUYrcQmDS/rOuMrCUbKAm3rVKZu+yB8cQnthHR6757fGvjqP7cFp8gDGCUkNEQXG2U0fF08p0xOCTqFKxl43rJUKOEJPy+IkL1K55RgNLh6pZaMPXfqfVfIXmEy0GnWCmD1HMUCiv/3nvrIwu3qHRKuZHmwkHqsntuu3PbiDvXO56vUP9Of+euC99SHn61UZyytE8/Q3/W8WqMSAIz9KUEnxqFyubEdWKUqa5XolGAsbyvpg1XWOtJ64dUavQQHi4N09VsBmOASj7IkoAqTgE8aVgsALa0MGMOVPf6s1XBs2qv8mk9lVq5kr44Ih8XFThrZsbAZB638wMdONBxeTjJakZrZcZAVGVN4VsAqMSYO603TgzHhKgUrZCKV2WTzfd3B5OFqGFiUqVX7Qt+mO+Oo6R27CfceUq7B8wGs4HrK0q6ELllyW2GYeUZ8vp3JZa4qkshcWfut1hglQZSnZfbKrvcqJXCVQOYK8XKN8gv0W72wTc9gxeq3soMrhKcyPON/t6r3LiIvq9frxN2vU9nx/3aqc1Y2ioJ1zeKZtc2icG2T+uyaJrVoTZPQYlUjWRfsVD1XvqZ6TitUPbPLdCga683s0SwY0LeEacKx1G8VCbBgxomeMkzjSbhCv5VcCZSOzBUgDkCHfqp5RglQOuavb9JhqNTByptk4AqxsVG5gU9mVq4A1lEEWD+Nd0qwqlM/aHCYI7OAAwqHsdwTGAuszMAESLGuwEHWDIcWDlhfhqYEY5XY5MFaFyUT5ByshuO99uDE7W3iJIf377B9veJ86/PEv7XRAC7AVVHlSPDCz3H/ACClLcMLl/FcattTMCUYBaxs19006hN05szcugTBaoWLU4J2YCVX1aCsh5LgAqM8aDcl+IIpKBP16ItV6t9frBaPLapWn/i/98UsKjHmF+9SC1buEYXrWkTRuibVE0+Q0annnOdUz8kFgrIiaQar3vSAlQxkfZBlydiUYBIlQWusbdAzVZuMCUGABkAHTeSlDkqDcWWtAD1NelZshTEBCJDKN6YANZd8o2E9kV2CiYLVUImwMXApn8ysXAGsowOB8M/9CbqzAypw4El3bTzikMPhjGxSrClBBA5nQFqpqVQoJw1xoLvpbZVs1socyLzhUNZgymmJrdMZrLz3gXJ5fb04ysk9bKYp0GgwiHuEf8trlN8AFa/U6iP/872y/CQ9lnSQKDbgS3NXNwAs1VkrCVYApSXG85NAiOe0Lsv6rWQTuuyVAmC9bDS3Y4rQnLVaVKM++tr76mOUjfoHZbbmAqTebBDzVzQQTNWrhchCxQtTkWLGJtXzuXnCc81ikZNwJfutAAcoYY2FKcGo0ab7SAFw0EQOL6yXDNsDgJcbWStpALp8p56lQr+XhKrCSv3fKx4q/4XiXtS8yS24ag4Vvt0a+j6fzKxcAaxjBxTlqmTMQ3V40g/z4rrhQxGHNg61xoMxzEH79QNsvqkciAMTWRZkslLdb5WIpUGdsRsRz9MJYFXbZIMqozSIV7YqU7fsE5d+yKE/Fq0QusLxlKDp+VUb/x5eB+7BAhPUmAP3BsC7UAJY3WgASxSuAEb4egAVa3lzUZVs7o5j5U06+q2GJvyGFy2/WCN+CbhCvFYbfqx4tzqreLeYt7yeynpDJT0KZKZa3AMqa6BUCMD60tNizE4JOvG2Qv8VSlmxslYJN7N3pAeuKrXskt7rBGiUU4MoGyaTucJkH6AJpVRkx3Ct5PQfslQoPQ6X/kK2ruzxZ60ShyutPLhXzStpF2fwyczKFcD6uKKIa/wuObUj0JNVakyDyf1pOCBx+FUbO/usk4P4NRyuONzajR9rze39wYxNCUbziio1GtwBCKm0M6Df+08nJqT7uga/2OpTpiTTyG7utQIMrZPZLqNUi3tYZKxrKfAOZ7/MQFRorLzR/Jqq9Bhe66JnpeRanPk2AFdoQBzeB2uMcqD0v8Lz0EAqw1krNLO/UqPc+ur7ym2v1Kq/W/K+uPPfu8W9y+vVR5fVi4I396hFa1MET07LhAAsRNcYBqtY3lY43AEOAI1snxKMBFYykLVCNk7LXFXoUAToighWBggBWtYb5T6AGfqlFlYNZ6fwtdDbha+NzNWK3TroxFp3k1jWSkkYrIYAqzn8eFmrOJFPZlauANYnyP/qWjcBS5YEUSLEIV9hrEJZaFr3IQ9QwAVAxmdMFeKAlQcq+rwyOSUYzdtqhdFMrjWNJ9FvFavMtnlvcMLmNvFpJ8MKzT7l8lROCeL5yCk/CTYSWJZYXMeHgMqAqqEwARf+7OtySbIBRmtspgTxb5mtQtI9JfgaNa8v2ancvqROvWfJLvWBFXvEIysb1MepsXzOqkbxFLJS6zIIVNZ4uVYHrNMKxZgtCcZyZEdsMcxGUdbKRm8rp3ClQ9PwmhlAEUqDQ1YJLXrpEK9zxS4984QeqZcMawdcA/ydfJOFwqtGyQ/Q9Y5hpeB0l2A6S4Kjojn80LK6Ax/nk5mVK4D1SQKs69yGK7syILJWOOxxOMr+Gpn1kI7oC6uGzU1ty4P96W9mt7NgwIEPUASEpAquvNqjMtW7L3yZk3tZT27wzchiZWJKMIKnlTVKYuwPjORvBYiSGS68T1I5JbikTvn1MoKp4t3hh5c1qLMJoJ6kyb2Ctc16qS+V5T03YmaZDliXvSzG9JRgLH8rgA+awJGZyfYpwehwpQeyT3ONEh6azbVlyQY8yRKfLPOZYQrN/pg4HFHua9H3FcZ0ZW/JDrhab0RJY+hOPpVZOaNDh8RxyQCWk12CkUxEATeACBx2WgnKmEjM8w4bkCY+Jej+bj4JK4ASHPTowUkVWI3qX2oMfjNWqbCJ7mXDQeW6+kzsEkxgSjDeXYLL6obh2ylUjcpaUfzrfeUXxbuVXy59X/nN0p3q797Yrd5DzeYP0eOsN+vVZ9ZmMTw5iVuW64B137ox3MjuwNsKQPWSMQEHgMrmKcFoYLXFaHIvNKAK/l7okQI8AqDwGgFRyEit1DJSOvy4sUswG7JW603xTrNyBZ/KLAasJODKDrYARQAaHPDISiCzhUP7YH8wY1OCkbJAAAu5E8/NfqtowOJtEzeUNInPx8hGHtbUFfqBm7sEXZ8SNK2+iZW1smtkf8Vkdusoa7VLuWV5vXLbG/Xqnf/eGb53Rb364FvUK0VZqX+81STmr0FGaowDlTlWkx/WWQuE5wQCrCU7c6ffKtKU4LJdelankkps2TwlGA2u0E/1otE39Y7NIudU7BLMpqyVOUoaAqfyqczKGfnIqJJc3CdkCq7szEPhEL/EmGgDGGViSjDaLkGAADIpyMKky+X8XSoVlrfGdnmvOyA+vsenTM70ypuIcJVA5so8JbiibrhBHu8RK1yt2KXcSlmoOwmk7qem88ffalTzCKLmr21WC9Y2icI1WV7eSzYW7tCzV2d5BB3u6YWrVpenBIfAKoor+wZjkhCPrmSt0gxXiOWGoSiyVFj2HBdcxQtWGZ4SjApXTaH5JSXOt1iwWFmvLq3JXbk23l2CbmStooX0mcKh2WmCrHT3WtmBiixVAUpcBavW6KACyNrU4v9KrHtadyB0Tv0BZWqiWavKLMtajZgSbFSm/Wtn6NanKpVf/rNK+TV5SN2xulHct2K3+tjy3epTuQ5QseLP63TAunqxDie5mLUyN7IDfgAnmI7L5inBSNOAgJIiY9cgIGc8Zq3eMYL6r37DJzIrp3SAbBoCirg63SXBWAGrB5kpwsHemeasVcR1N+3D9hPp2s03MgOkoFR4XLR7WkPeZu9TL1amdgm6lrUimHprj/Krt3aHfr+qQdz9ZoN6HzWaP0RlsMfICiFv1R7xzLpxDlTW8uDlr+mA9cfVOiiNNW8rJ1krayP7AsN5vKYjlMVTgvaBrBUMRVebDEVjurK3ugdXpRnstzIDFmWvimhS8lt8IrNySh1CfCygKFdkDVyZSoEApReMMX8ATqYzV7VG9kdb7VObomZ2B5mg9c3hSxYvFkdG68Xa0T7wXTpYpqZzl+DGpDNXyjQChd+tbqReqQb1bwQMc9a2iHkEVU9hgi/b7BCyLWjvoec7tCbnxCcFQcfYnxJ06sqOEhsgq7I9lNVTgtaA9cI8ozSIPqyUZK5asjdzNSJ71RScuXWP+CSfyKycUmsrrcoJi8uyIWtl18je4lM0U0uU5drjmRL0OQer+jh2CcoGdwBC0rCSYIltw15lUkmDiNoMurNXfLpmv3JDdk0JKtPeaVR+8XaT8su1e5Rfv9Mibqflxf+9eo86gzJS+W6uixmP8eQW1fPVQji4q3S4jv0pQafeVhVtuo0B+peydUrQGmWt+tRg0RYdQCpS0W+VhVOCVrDS4UpB9ur2xTWRv2lkscakKNtxpD8sfpJJuIo1JQjvJNg3AAJSnrWKYcSJjIuccHRzSjDe/iWMM1Op8KNR7uxhOzvFeVUZzFrRqo5b17eI377drN61plH98ztN6l8Jqh6lhvPZbzWKAgYqd+Mv76ja9OC5C3U4yo1+q9jeVjs6dFiBOWc2TglaA7AEs1D4XS3bqWevxlu/lTnWNyvPvN0c/jGfxqxcBKwjCLAuylQzuxNXdsARDCABWQCfdPRbRdolKPf1GWtsMtcc3qxMXbcn9L1o93ZruzhmO2Wx0tXMvqFZuW19i3o3NZ0/tGqP+gSBlFHiUwtyzQ4hG2PiUr3/6i/rcmdK0Im3VU2n7oKOyMYpQWsANACEcGGHIehYmRLc4GJJcEQ0hvJK2sRJfBqzclKD4fD56QareL2tajuHV6Wg/JfOrJW5xAaDUTS5p2JKMJ7mcNm/tLJefCbava36IPj1bdSLlbQPF6KVdky2KbfQB+2tm/Yqv9pImal3msMPUvP57Lea1EKGnMwFzFHhfwXAeqcxd6YEnXhbAaYwRYh+pirqw8qmKUE7zyuA4JPe0aXB8ZS1Msfb1HPJpzArZxUKiW/7syxrZdfIDrAA4ODwb01hI3skuAII5Rn9YCmdumtxvkJmbX344mi9CzX7xbGVHcpVcWetCKS8e5Vfv7tX/X1Jk3pPSbN67zvN6sN0mD/x1p7cM+gc6/FSjV4e/BZBFkAp17NWVsDC4Y4+LCw9zraSoDkwLSgb27HMOZe8rRICrD2hIvos+yafwqycVW9QnJGJKcF4XdlbjVJhUaUOSumEKwTACv1X6xrT228VzdJgdYMyaXmNODlKCfiwra3irJjPlYCqdK96x4a94l40nb/dos4s2avOocN7/upmtkPI9rhjlV4evH1F7k0JOnFlxwRhYaVeJsxWuMI6HKzAwfNc3xQaV1OCEUqDFOEH6TPqcD6FWblbIhTi5EyVBeM1DzWX6VrSCFcAFFhGFBgZtFRlrjY2xm/I+e/3o+/vIl+sI9/bF5xs+1z3hn69vlU88jaX+MZ0fMsoDy6syqLMVQrLgnZTgoAr9DYBZrKpLChLg9glmC8b2xOAq7Hkyv6OE7jaQ9ODLeK7fAKzclo9QhyfTf1W0aYEAVBrjEk+AEkq+63MjeEAJJiLYtFwprNW5oC7OfrS8t8Nfj3aPd7eJU7ask+5WT7Pzfu0hvRHaMKPwWqslweN9Thn0nqcDS253W8VbUoQh7YsE2YLWElvqw2mxnYNmHI0a+UIrIxYVx9+cC17X7FyXbBqoAzW1LRlraKCVWxX9kbf8DQfQCnZKUEnRpzSngE77zLVb2W3m08C1tzS4A3ztkV3eN+6T1wgy4HUU/UYG3fmRjy8QQesy15WCTpyv98q0pQgYAkrZ5bU6s3u2QJXiFdrdPgDWIy7KUEbuHp7j/Ls243K1Whh4BOYNQ76sJQJ6TIPjZy5Cjr2twIgoVQIuIhmHppoSdAKWHL/IKApFeahiSw+1nbz1emwOa88OLXovdA5H4rygeXtFJ+jD/0bSlvF3QwmuTM9OKVYB6zfrNBByVXzUF9mzEPjyVyZA83j6HOqbAtlDVwhowbPK0DWqOzVuOq3MjJXAKzG0FNvNvV/nk9e1vgArLA4L9NTgnF5Wx3UYSPPcFWXGSs3eq3sLBgWVQ37X2VD1krClQQsXIeXdigToqXcpwvx4fKW8A9pGjCP4SQ3Yuku1XPJSzpgzfOOv6yVtddKmyY0LBAyDVYVRmM7yoIFRulyPGet1hmB3qu1e4IT+dRljRv5hTgl01OC8bqyA5oAPkWGy3ujy1krcyM7smXYPxgLsNKVtZKBkuXr1TpgvbxDmfrGrtD3o93ndxoDp/NEYO7EQuq/Qu+V5n/VlIGVN2maEnTqyo61OQsIaF7aEco4XCGkP5duyzCO+q0a7eEKsbYh+HeYIPOpy+I+rDQ3s8frbwVYQm8UsjgaTCXZzG4HVyVGpgygk4kpQdnMbs1crTDilSr9+WGy8o3dypS3WsXxke4zrae5iMEkd2K2V/e/Oo12EAKYcnlK0Il56LZ2vQcL03qAlbRNCUYILKFGczt2D467KUEbuKI9pM+WkHcfn7is8diHdW2mpwQT8baSDeiAFDfBSgbABVmyjS2ZmRK0y1rJQG/YCybAKsavvR++dHEEb5l1tB+QwSR34tblennwrlWxwQoggEZrgNFYnBJ06m2FA36eYYegwVKas1bSfkFmr1buDo3PKUGbIDuYB6J9A8hi5az6/OLCbJgSjNfbCvAkdxUCiGz3CDqFK2vzeosOb4AYb0vm+62scIVYWKkDFq4BAIt8sSYt3T44arcXQdeRa5vFfQwmuRPfeU4vD65qsICVTdYKMIFeIMBILvRbRZoSrDQyR7olQijtWStv27Cz/MIqHWpyod8qWbjSAKs5fD6ftKzxCVhB8Y2MTgn6nMPViCnBTj3rBBBaVK3DUzL9VuYA5ABeAC6ZmhKMBlcIZNfknkY8z3/VKVOX1oR/aM1ibaS9hXQoP8pgkhvxcq1eHkQPVqupPGjXa4UAnMBFHIew0ynBxkxNCXYoSa28wUoaAM7ahlBaM1cVRhnwtVp9clDLXrWMvynBSLG2UfkFZ7BY41KDg+IkgqxJbk4JpiprZdfILkuFAJNkslbm7JWc0AMQZVPWSgYa7wsNwMKPlxixmLJYtKNwxAfZhlZx2rpmdS7DSW7En9bq5UHYNDjptQLAIKuzfFfIUdYKoFTZrmrmpWspQ7aaAoukK9rsoSqTWSu7XiuPsTonXSVBGQAJ+HEhezUepwQjRoMRe0Lz4YHFoMUab43uxx0aUCa4OyUYdLXfKtaU4OsGcACEEs1ayQAowZoBuw8dw1VjerJWGlzV6TCF0mhBxUjAwnV4vSZ8Cd3VIV+st1vF99dhryDDyZiP1RQXGfYMM0udTQnuJtjBdB0iElw1ECRtoK/9GmXHnqe1OwVbVM/0DfquwytfUz3nP696rqbHh9erBAaZ77eKNiUIkEQWC6CSLrhCAOpQigW0jMcpwWhwtdaINQ2horWN4XtLmsQZfPKyxgtgHdHVH/55Nk0JxrvyBmU8lMwARpVxNrNb7RcAPNK9PaWZqxhTgpHgqtjwwMJzBASOgCtksWqVKUvfFyfI+7umUbmGLRpyI14lADqjUPV8lWJxrbMpwSafXroCdFjhahNlqZ7bpq/dWUVZqhWUrVreoD9qP96tepbsVD0PEVh96WnhOfFJHbhqO9M7JRiPcegmY7nySzKLlaJ+K3O806iMtGUYZ1OCTuBqCLI0P6xw/sp6/0V8+rLGhbpD4pxsmxKMd5fgKlPfVGWcWSvzlKCEl1T2Wq1KIGs1FLXDFg1own+9dmRgqnBxbfjH00vEEVoGq0n8nuEkR+wZygh0CoTnewspk9TifJcgsjqzy7AQWS//AdSeo0zVygbn/7anUvV8rVDPnt26TC89JgxWLmetrKXAxUYvFEAilVkrDaAMoIMtA4CCs1b2YIVYbYo1jaGCtxrCl9y4ePHhfAKzcloHBsQJ2TYlGMs41NpvBYgCXKBUCMBx1G9lY7+ATBjAJVX9VolmrQBWMswWDVa4Qrxao9zwkpHFWtuo/p3hJDfKg3et1hvcUa5Do3ksb6udlGVaD+f3ndSHVaVoYIWsVKLP4YF3VMpiCe05LN+V+X6rSLHBsGx4rSbkXhO73aobgp4Vu3T/LUBdWcv4nBKMF66GIKshPHdlQ/iHfAKzclqYPOseVG50q9+q1Y0pwQRc2c2lQgCUk5KgGa7M04OZnhK0y1zJcuACk0WDFa4QcHd/bXvoB29sFce83SwKGVDGfqBkd81iPYOEXqhImSuU/tCYjhIi/h6yVPFkqqLFSzWq5+wFukXE45tUR3Dl5pSgU+PQLUYWC03nAAtXM1emDBUAZ+E2vfy6ydR75TRzVZojU4KJwNVQ7AnPe2tX6Ft8CrNyWj2D4vtjLWtl7bUCOK0yeqheqXUOVrLXCpkhZMAARPGA1Tq3pwRtslbmXqtCo8HdClYysEpoUbUyad0e8T2Gk9zZPyjhZsVuA6qMBnX0Q5W16QBUvDt1z2EZfe3LXtYh746ValZlrex6rdB0Dod3V7NWpljVoGfKUILlrFWcYDUSsmasbhCf5VOYlbP6oE98xucXUzLqbeXCLkHpwi6tGwBPtoBlgStp9wDIyvSUoBWwrI3seUaDuy1cGYCF17Fyj/pHhpPsDRiFvlZL1gKUaZlbGvD8bf2A54HVfZ4/r+rz3Efxt/V+z6tU5lqLHqhtennujCKh9VF5jX4qlPxSCVUjypTUCD9hidGHtVzNyJRgPN5WS4zm/lhZLKf9VuYAEKH3CoHlztxvlRhcAVLfalCeXV2vTOVTmJWzwjThgV7l6mycEox35Y3spQKElLY42yVYbIALoMf1lTcJZq6W2MCVbHBfWBUhc6XBlaLFmiZ1PoNM5oMmOz1PegOeh9b5Pb9b1ueZ9Fq35/LnfZ4LPQc85zzd6Tkzv9Pz1dkdnpMeb/d89m/tnk/NaPMcT3HCY+2e7zx5wHPf6gHPnat0sLl+iRgq/a1N8+vAv3fj0pGN7tmYuZIByCiU3lQuZq4QxTv17BUeyxwC1niYEowXrkzx1Gq2b2DlMGAdRs3u5xzoV6Zm45RgvLsES4yMFMDD2zIarsxN7PizWD1TWJEdU4J2YCWjqHJ4gtAuayXh6pUdyq8YblIDGasMC4NiavRGAzn6fV6mTNO8sgBlnwY8Uxb3en660EfwdMBzxtwOz5dntnu+RHEygiDqRArA0+f+pgPVZ//W5vmPGXoArD41vc3zScTDbZ6PUxxLcdq8bmouVz2zyjL7+iMBVqwpwXSClTmW1uoghB2BFUlmrWRIcCvUerw4a5UkWOlB92dlQ3DWP5uaPsqnMSsndcgvTukaFJPS2m/VmVi/VawpQUDUEiMrtawu+rob2bcFuMmGKcFIcCVLn9p6oCr7rJWMxTXqXQxESTSV71Y1/yjst0P2afYmv+dxKuE9vK7Pc+fyXs8UykJdKbNQBZ2es+Z1eM4kmDpDi3bP12a3U1aKYlZ7RMBC4Mcnz+ygP9vpOSP/gOfMeV2ebxX46NFHGa1ODbKONUDrS/m9mhlotgFWNmWtrAG4KTJ2FCLTlEzWymuA1IjsFfdbuQJXMtgfi5WzOnBAfLyzV0zI1inBeI1DAUpFRmZqXWNk49BFVcP2DtkwJRgJrhYZ5UE812GwGpm5QiykoL6cvzAoxe4pQg/U09Sn89iGgF6KW97n+c3Sbs+013yeiS93EUQd8Fz23AHPRQRS5xd2es6lkt73CKjOebKTynednrMJrL5FcVZ+ZMDCI8qA33qyy/O9Qp/nAk+v5ycLBzyXvxTwXPlywHPNawHP9YtDnokUk5YqnptpDc4kAplrXgtpoKVlsR6iDBdlu2CgmQ2AdYsBWDUZmBKM1zgUAPCk0YyeDFzpvVehod6rTS08JZg0XFkBq0G9642t7cfwaczK0Wb38EXZOiWYiLcVoCjPyPhstPG2kr8PgEl0SjDVWSsZCyuHG9ztslYLTfHGHjFjPJbvAE1wJV/VMGxRgFJeEZVzZrzj9/xxRZ/nV0t7PZNe9Xmuf+mA5xoCqKsXHvBcSXE5xWULDnh+SvETiks8nZ4Lizo9FxTqcd7TowFLgyyKb82jHxcc8JxLAHXhgm7PZc8PeK5+2e+5cUlI2xuYaAC6TqRMFgDrGIobX+vNGsCKN2u1Lc1gJcPboju7I+sEO4VEwEpmqqTvFRY6c9bKnazVCMDaHZ61tH7wJD6JWbmZxSLT0U7qw8rWKcF4va28RgP7fKNUaPW2AqjI1TjZMiVoB1evVA0veF4YIWsl44Xt4tZVe8TMXIUoeEKh9wkTdi9W6V5ECysDnqe9ehkPk3h3r+j13F7c7fnVYp/nFspGTXutyzPl1S7PJMpK3fhSl2cixYQXowPWcHR5fvKcj6KbeqsAT72eK18CQA14JlD26UaCoJuXqkmBVLS48Lm+IcD6EpUSswmwsjVrZW1mByxgohDvF5QK44ErCVgAGnhroWyMH3O/lTtZKx2s9HizQSl6syl0Lp/ErJzUdCE+vHqPchUgBWCUjVOC8fpbwWZhYdWwdYOEK8BRgWFMmtSUYJ17U4K2cFWtA5Xsv7JmroYAq1KPl6vFbav2qPlj2sKAslCLCaIwAYZm4iepgXxuqd8zd9OAZ+b6Ps906oV6YFWv588ruj13L+/23LXM57mz2Oe5Y6nPczvFb5b4NLi6NQZgTXgRjz7PhJe6PRNe7qXo81z/2oBnIoHTxMU6PCELpZXuKFIFUVGzWPTvS8BCuTBbACvb+q2iTQkCkmTDO0qFGjjFkblCwPYhf2hycOxOCa5LA1wBmnC98f8XAwbRMlcrLfFmfegWPolZOau5ZeIMZEq0clSFDgeAG0dgFWfmKhVlQbtm9nVGKXBBldFr1TjsKbWqLonMVX3q4UoClrwftpkrA64WUCyqVn+/plF9eiyAFKbxnqcP4YIKo5F8w4DnsXf6PI+/00uPvZ6/rev1zFjb63l4dbfnQcSqbgKrbs99BFaAqz86BazF3TTd1+25eXEfhZ9gCaW7zABTIiEBC5GtgFWVhZkrayzYpmeh0EsVD1ytNyYH8Xc3NSWatVKSBqts7rcCQAFe8f8ZIDvXCEzZOoUrxKr68AN8CrNyVivruz6xdk9w4uvG3jsc6jJ7gkzQMgNIADeAIYBS/cH0Tgk6BStzSRCAg9cAqAE8oeS2sCq9U4LxgpVsZi+S5cHKYESwkvF6nbh7XYsoysS+vJWGhcGy3YrW+4RYtlPfC7dwW8BTSCD1ZNmA58lSirI+TwHFk5v6PPMo5m7o88ymmLU+MmABrv6y0oArgBVN9N1Bjem/K6bmdIpfFQ94bi32e24pDnimFY8tiBqrgJWtWSu7RnYABCAJEFDaEhusZMjJQc21nfuthrJUuB7IVKHHDQCKa4RSLIYAUI7FdXMKVogVWoTn8CnMylmVkOloe2/4R609ylTAEsAHoLLGyPrIw36+d3g5Mn5dmnQCijSoOpiZkmC0Rc2y1PZChN6rTE4J2sGVnBIcAtzKYFS4KqL41271oVQ7kBfv0g00YWWA71DxIVu8M+BZXBPwvFzl97y4ze95vtJPvVEDemwZ8DxHsaBiwOPx9nkKKZ6OAVgzCK4eXA1X8wHPH1fShN8Kv+f25QHPbyh+tSxAIBUikAoRSOUGRI0lwJpmAJYdWCUMV22pyVqZ+60kLKHUt9S0oDkiXBkgBWBA9muTm3A1RrNWgCD9GyYTVHn164O+yKU7o5cFI4OVHit3K0/xKczKaXV0iy/v61EmRyoLApq8RlZILh+2BmAAYAFwqWxPEVxFMA/dGCFWGVksada5zgXz0GWpgKvq4IgyoLRnWGjJXpnBSosKZdqKevUfbmSjlu/WbQxoeTQFfajuCFA2KuBZuSvgWbFTj2W1fk8xxVKKJTv8nsU7BujPDXherRog0BrwvEhw9XwUwHqytE9rTH9o3QCZdAY8d6wIeX61PJTzwJQLgDWWMlfWhnb0BiHTAmCIBVc49AFkq0yTg87gKpTxZna3+q1wDfAZgOyfLP3lG1CF3rRVu51NCsaCK8Sbu8Pz+QRm5bTqhTjq/7N3JuBRlWf/xrWudd8trliLn7W2tlarpS6l+lkpLogg1moVpVoUFddiUFmTkACBkNNIpCCFptA0yEeawp9FTAiBkBATQwIlUhCBmBjBkMx2vf/nmfOe5GSY5ZwzZ/bfc113IzSQMJnMe+fZ3t1fue8zOiXI4sSyw0KyRJYW8+UOKk1opmt36NWo0sFy8u+dPZKjrVHwvT/QStZKEyaWIhYe/Rb0nMreghUXU4JBtrJr04N5mmD5yVqxWHmpEiNWfiZy/AmTtr6A4XUG/Purm/nSWj5E3N50P4+hlzR10YtzF724q29X7+iiF+AupbRJJZhgsVixUOVv6iSJ6qQyIDemc28VXxVDm85LncpzJU7lyeVu7312kKcEFSz6nOK51yrUlOB63V2C3onAAFfd+E4OliX5lKC+9LdEK/1VqTLFQqpdPcRZ6+VNxlcwGBGr7gzWds/bOIERSR+0juFaK1OC3kyVzD5pV9GU7FSlw7vPSbdyQBMv/nWenOjT1hBo28r/JkWlOFi2SCct/Gc5e8Z/X66unMl/t1bK1Lai85+LhynBQFvZtd1X2ucfKGvF5BLza8VT2jqDZd5LgOmgkAdNmc8LvbrZWqVit7xTjf+/ZlWuAgnWchKsQspmzaOeqlmVXepFxeucyhurnMpLK53KaJKoUSvcXol6nCRqBAQp6QSLP6dqm+VqUySyVkGa2FkGcqQwBLryhsuJmXJyMFmnBL0ZqkZVmrg3jaWTHxeWqpxKdQt+r9Jfk7n9VmbkivmwyfkMTl9E0gfdT3jMrnb3EDunBLtLf3t7tq1zlqio3r98WWW6vOyZ/85imSlbo8uW8a9ZWLTVDbGeEvzAz24rRut385YHfTNXlb3livl7g3iZs1OcmfI2Ie93quxzUkmH2Oukg89JhxtBYrUpiGBxJmsR/QTLSzonr3cqr61ykzh5vJknhhuduVQEgUo9wbpG8VA5l0pt1arIxGVJMNSU4C5VGliguKeobNeR2Sv1qiR1QWkspwTtbmYvbVL/7SxUs2QfVZYs/fGvOXNV3NhblKwsDzUrV16Ba3TdgdMXkRLx2Vfiemp2Hx6puwQrg00Jyh1Wa3R9UIEEh39PEyWj9wgWb+spW5Zsj+2UoP+9Vj3lTP4cg4mVxrJtngn8Qt/Qol3E66SFkKpcsUxxFotfsFfKvgpu9J0vX2QnrneTRHmUZ0s8KN9BsIIK1tW5HuWOBW4vgwvdyhurafFrLV9Lo4pOXIuVTzmQZYLLX8saeksWy4B3crDBmXhTgrpyH3+fF+syVFpjerbMUHnLftWqZC5rsmcruxWx8mavGp3Tlv1H9MXJi0iJ2HtQnN38lRgcj7utAjWzm7lLkCVHuyqnZFv0S4J/CbKVPb9XefDIfitfufpzlfupj//ryWG5YnjTNv+UmrvJrWSWu5UJJFBvrvZQGU+VqCeWI/sEwQpfsDQGLqS+uiJVtuZWub1Z1GhPCZqSKylYnJ2aJ5ve9WsYuHSYJ+8cjOfdVixUWpmvSK5EYWkskOW+WbLcx0Kl9VBxwzoLV3HDkdkpu7aym5UrKVi4ixCRWmXCzw6Km01tZd8boynBneYvamah0kqFxduiPSUYZCu7rjyY5y13BpereVs9o9bs8kwmscpjueK+mLS1HvRAQbCiJlh6OKs1kgR+/Dq61qheZrWiOCVoVK40WFS8NwZU9kzEeVc5+GSvYjYluLMn69wtUTVqCXOW/LxnVPQu9fHv8ZQfy1SRT/9UaYTuEwxHrjh79n//cd6AUxeRUrGtpePC7S3uR6zcJRiN3VZWxErfa8XClCMb4osjPSVY47/fyt/6hem6bfr6siBPCtL//3hBjefpogbP66XNIpsPPz6IGlvUsiDvp3pttdps/rjsl4KoQLCiJVj3LOq9m2wUZUxnVNA9ko1ub0N5ZYyzVv7gshrLCotWnhQX/j2vTDWrn/c6XwkKUJ5bGWAxp8ZyOanH4rNE7pJjaWIZ0u7X5OyTJn1ZutUI2t4p/v0cuV2e35ezcIvr5XJP+TlE66LmcMWKppjzqLn9efqB/iicuIiUirQ0cfR/2sUdsbpLMNRuK6type+10kqF2qZ6MyXBv4XZyP4XP4tDtexVjk6u3tvifmJxneeFf24Xb5XsFOk0KZirHXyridr9qmBt2qu+MHv31ZRzb5VTGbfWqYylKb9RJViPAMGKvmBp8HOPS9Tp5R7vfjWWlqj1WwWRK223FUsFryXg750c2ezNwsPyUiDFh6fqODOUL9c8MHlShrTrdBjub5ohyfbJLulFid+vW+ykLPHH4I85X5bzWL5YwpZIgSrWZaS8IhWti5ojJVfbXGOLt7WcitMWkaJZLHEqlZ6GJUq/1SqjcrW9pxyorUTQJg+jMSUYaCu7lr2as8n96KI68eyHOzzv0nTgjFWfidn+rsFZvcvj7btiwSrf3fNC3guSrXQWrjJaqUDZradXoHwIwYquYPnKFpcRJ66nlSKNsZerMln2Y6nSvmeyfQRIEyoWrAIpXvNr1T/jT4Q0GfLumGvqKT/6ysxK3Vst8+QrTZG+SzAWcrXM23flmLy8UVyOUxaR2pLV5vrZtv3uR2ybEoylWAVoZPcuRq3s2bsV0SlBP2JVUCNGvF/jfKJgq3PU0m2eP/27WUw3cq8gC1aTFKyy3X7kKgCTpWyhlAjBirZg+fIclRF5IIOX3mplxGiJlcZqeVchryeJpynBVUkoViydzIfbnNOX7XDfvaZOnIJTFpHKWawL6w+4hyRq1srIVnYWJW3xqVeqjMjVJ+FnreZvdf/+7596XihuEuN8y39GsCpYejiz9SbJ1piVbspuuSFbEKyoCpYGiz43x5c0SWmKklwxnH3ijFV371UC7bZKRLnSoMvh5xRTD1bxDnEljVahDwuResGXQNfvc91h65TgrshOCQbKXAVqZC+S1/xo/ViWM1efhJArKVj0e0982OhJ+9d/PNNX7vTMtnrw2SFY+lIiZ7YmrO9plEcpEYIVLcHS4ClYFhw7pgSNyNVayppxT9T8GlWKkukuwXiWq16itc31bmGdoz9OW0RKRs3uwxfV7nUPj2rWKswpQSu7rbQ7FFmWbJ0S1GWt/lLtfmzFDs9EIyXAqAqWH6aWq7L1tNzkPgLZLQhWhAWL4eWlkc5aaZkqLgt6F4s2OmOTtdqZWlmrI+RK8s9G98wl2xzfTxPiaJy4iJSL+r2uWxNtStDUbqv63qXCSEwJesuCte6n/F3MHI+C1auUuF7t23qhVN11hFIiBCtSgjWm1OMVo0jJlSZYq3b2rDsIlL1ah6xVxOXKCw0F/LPBOfOfDa6bC2kPI05cREpFdbM4fct+8UAiTQla2cqulQrzKu2fEmQW1omRdmSvoi1YGumylMgXPb+yyunt20IpEYJlp2Dx86m7FytCmSveccULRbOCZK/QbxU9ufIK1jZ33j+3udLptfn7OHERKRW8DK76C+eP6fqLR8KdEvwoylOCZtcvaPuouB/LDrHSb2NfQItC7Tr4YiFYfqcSuZRIssWZLVwEDcGyg7nVkclaabAU8d4p3kEVt1mrHakhVkW+NDpziho6L8Wpi0ip2LhHnEX7ah5MpBUMVnZbsURp/Vgf1ISftdJvZE9GwdI3yvcqJa5AKRGCZQ1eSmp71koHSwb3XvEBj6xVHMmVxqeOd5d+2nkJTl1EKqWxjtr0ufP6RJsStLI4lCVK68cyOyXYK3Plc5fgX5JZsIKUEketQJM8BMvENOE6T0QyV5pIebNXVarIxOuU4MpUlSu1XEgrHDzPF9aJ43HwIlIm+AqdTZ+7f5OIU4KaWBm9SzC/qqcfy+iUoL+yoP6C5lQRrGBTiSO5bwulRAhWEN5Y7bE9a6VJFIsGPx8X1pnLWGFKMPJipbFUsqTBMQx3FSJSKjY0d15a+V/30ETOWhmZEmSpypX9WCxbhvutAsgVU5DCguU7lciy9Rzdk/gkphIhWD6MXeWxPWulZagWyNUMLB6YEoyeXBWZQBOsfzS48/7R4LoJkoVImagT4viqveLWyt3uRxJtStDKXYJcKmQKpGQZ7bfylascCFbAvq3x6/hiajfuSoRg9RYsGzNXDMsKr2YoqAlPrNBvFZnMlV6uNIoaXGmFdYf74uRFpExUHhDnb/yvY1i0yoKWm9m3hSNXMlslS4VeybKQucrRqIBgGe3f4qlEzmxBsFJYsMLOXB155Q0f4PwcYyGJ936r0niVq6bIlgX9saTB+RhOXURKxebd4kbOYoUjVrGYEjR7lyALlVYq5LdcLjSTtWKxmi55D4JlupT4CpUSn02wUuLQIlVMmPuXeJTBhR5lEHHvYo9yD3H3Io9yFzFwIUuLR/n5fI9y0zyP8uMCj/LDfI9yrQLBsitrpS8P8lLR/Gr0W8Vjv1VQtrlnL9kmsB8LkTqxYrv4VtlnXfckQ79VyCnBKjWDpTW9G+m38pUrJq/aPfLfzZ48CJa1UuK4tU7lpZW8c8sd1anEoVKWBktJulvK0W1Sjm4mObqR5OiGuR7lOilI1xD98zxeMelHXDHLo1w6Syh9c4Ry8QyhXECwuAQCghVev5UvLAvce8WHOqYE47ckGCCDRf1Ynsk0VXgmTl5E6mSxPhd9y5sdwz5KgP1Wxu4TDLzfKr+yp1SYZzJzxXjljARrZbNnDgTLqmh1eUmXwvXKKrflUqImTHeTMN1JsjRAZpFYkq4lSbqa5OgKkoq+OR7lohk9XKCHxEPjPJuBYIVfEtQvD+XsVe4mVWIitd8q1ZaHFkdJrpbUq/z9E/f9tC8IDe+IFBGszeK4jf8VtyZs1srk4tBcnWTxfxsRK02uIFiRy25NWK/2bXGm6RafbNI1CslBniBZUrNHF82wX4bOg2BFRLDCzVppU4IrZPZqYS2yVvE0JWhUrLr51DWhsEZchJMXkTJRvluc+TGtbUjUKUFzW9l7SoWqZBmRK51gVUGwIsnDRe6EkCcIVmjBCqffSr80lEWJxSpTW82QgFOCJSlYEjxCroi/1TvzCj9134dTF5FSsW636BeTKcEoyZW+30rLYnmb3okcg3IFwYJgQbCsC5YVuWJYYnhre0G1Kk6YEozjZnZNsHzEqlDH3xvcMws3i9Nw6iJSJtKEOHr9bvGLdZ+5H4nXKcEPbLhLsDtjpZMmdU+WP7HqEayMMpW8KgHBgmBBsEwIllWx0uDDncuDLBthZa12ImsVSbEKlLUq9MPf6t0j+mD5KCKVYtXOb8776DP3Awnbb1VjYit7RU+pcJqPYPWSqzJHt2BNIXIhWBAsCFYYguUM3nPlR7C4uZ1ZjaxVQslVYRD+/qlr6l8/Eefh1EWkTtBPFPQCdF00M1d/i2RJMMSUoF6wNMnqLVeqYGlyNaWM/ywEC4IFwTIiWOstNLP7wrKRVaEeymujIVeYErSl36owFHXO3L996roThy4itUqFdBn0/9vpGrjqP+5HEnFK0MpuK71kqVKlkiGzV1M+YtxeIFgQLAiWWcEyL1aaSM2tVq/GYRmJhlhhSjDCYiVZzG8/9Tz/frM4AacuIqViTbM4fdk2929YoBKpkT3fwm6rIwWLM1ZuicxeSbmaCMGCYEGwbBOsUMtCWU5mVDqVeTWqMEVst1WS9VvFbdZKJ1dewapzTf9g6+GLceIiUi6UWnH17I2OYSw4LEvxcOWN1cyVmSnBjG7B0uTK0S1XTA4EC4IFwTIoWE7LcsUCxYcwPyeWN6HfalkCTQkakSuNv37qHozTFpFyUSjEMdllnbfPrHQ/ot3h99caVZY0iYrrKUFDu616eq16SZVWGpSCNVEnWDMgWBAsCJZlwTJ6QTOLj9bcjinBxJsSDCVWGn+rd2WsWSOOxYmLSD3JqjtwCi2Fu4eFR1vQqW1AL6hRpWhJfWL1WwWWK7e3iV3ru9J6r/Ry9Y5XsLAHC4IFwbIiWEblitHfO4gpwcSbEjQiV9184vgeTltESsa/PhMXrNjufpAFimWJJUi/qNNXuOJpSjCoXPVqZlflaorMYGn/Nr1YeVnjHpFV4R5Z2uzJhWBBsCBYxgVrnQnBYpnivivt3sFEnRJcEaN+q6I47LcKSJ1TWfSJeyhOWkRKhqDVDcXbndd/uN39SK9SoE62fNcddAtXjX+ZimnWSjchqC8J9vr1Rz1vJxIsVmmS6ZXiqZWfidkQLAgWBCu0YJkVq7VyczuvZlhQK8UJU4IxnRIslCJUaLNYeeWqjq9Bcr26Yrv4Fk5bRErGTHryL6vvvN1vv5XMSrEoFVSppcQcnwwX/5p/P79KfZ+CbqmKctZKWxzqI1Tde66kUKmZK/X3+W0aBAuCBcEyLVhmxUqDD10uD7I0xEvWKlWnBFmC+IqiHJrmLKixQa7qessV89d614S/1Im+OGkRqduPVb77xGWN7rt79Vr567fSZaYKZO+WvqTY+3oaVb5ypYD1kjATcuV/SvDIj6mtYfBOC1b4E6veZUEtk/WOTrKmkWCVQrAgWBCsoLxkUbBWyXsHuTy4aiemBGM1JcgyxDvIeE0GZxP568EXbtuZueoWrDpX9uJPnT/EKYtI7X6sT8UF/9zmftDylKDMcvkrK4Ziuo+Ymfmz0/xmq9y91i/06reSMvXOmh4BS6P/HgfBgmBBsGwRrEB3CS6T9w7yYW2HWCFrZW71Aj/unKnKlt+PLFjza+zPWvUSrE+ceR980jUQJywi5fux/tHk+F5Rg3uYXY3sLFz5VT2ZrlxZYpxe0ZtpVuklVu5usQolV2k6ydJKheP4vyFYECwIVkQEiyWK+674UGcxwpRgdLJWLFacnZpboz722TJjNa/G/n4rXxZq1Doe4VtEcMoiUjr4m6CwTvRf2uAeHq0pQU28+IJmJqfiSAHrEbFgU4L+5eqdAHI1TpImM1lcKoRgQbAgWOEJVrArb3JkKQpTgpGfEuQ+Kxba3CpVqrgUyHvH+PFfXB9FuWLqnaOxDwuBkJks+qnnRpasuNttVXbkbqtAWatQYtWDo7vpfToEC4IFwbIkWKHuEiyS5UGWDzunBEtTbErQSBnQmyncpH7PZUuxMjMpaJtY1alCt+gTVxr94H48TlcEgmL+VnHy3+vFHeHKVb7tU4I+clUWnly9wazit6pkzalyY4oQggXBMiFYaw3IFUsSl6X4oGfRidcpwUTNWmlSpTWus1TxJdr59HgvqrVxBUOdCbmq7eGDrc7MmVjVgED0RHGLOJWWxN0T6cWhOVblymS/VZo/uSJeXaXyxioIFgQLgmWHYPk2sC9vVL/+fNiuwpSgbf1WWtM6y1S2LlvFssUSZOviUIty5eUTZ66yV5yEUxWB0MUH28W3SbLuO1Ku3BHdbzUtwFb2KTaVBX3l6tV/q2RswB4sCBYEy6hgGZErrbldu9g5UZaHLo/XzFW9mpXK29TzfcVipe2xiuRWdjNlQV+oKnIuTlQEwicWfSK+s2ir+8EPYrI4NLJZK02sXpZMKUMPFgQLgmVEsIyIFVMid18xyFpZy1oVapOA1Wq2KkuuWODHdH5tfIvVAsl7WzovwWmKQBzZ9n7Uwi3ikgU1jodie5dgZLJWL+uYxIK1E4IFwYJgBRWslR5DcqVvbmepiKes1Yo4z1otkX1V3EellQBnyBIg765apJUAG+JXrvSCtbC283KcpQhEgJhL3yAkVUNj0m9VZi5zFVKuVh0pV8y7H7mf+tdOzywIFgQLgmVMsEJd1DxP9gh55SnCmauSJMhcsdAoutUKmbJh3TdTtdSPWMVFv5UfuWL+UtN1FU5RBCJQHovWNxRscfQv2OIeFpEpwbLITQkGy1oxL0re/Ug8VfIfDzJYECwIVgjBCiVWDMsRl7IW1GJK0G8JUAoNy0i+7uoafstTl9xXtbg+8F2C0RSrhRbFSoN6sC7DKYpABAleRPpenbiS5Gpook0JBpOr5yXvogcLggXBCk+wdFOCfFCzLBQ1IGull6oFUqhYovjx0bJU/HvaBODS+sC7rhIla9U7g3X4IpygCISBeP9T0e+9Le6H7ZwSzIjClGCgzJUmWG9/BMGCYEGwLAuWfgUDSU5OZc/uq3hbHhrNfiuWJe6bypUN6lrpL2dT7+m/QFIV8cyVzf1W/lA2i9NwciIQBjNZuVWO7+dXiaHBxGp6nGatfDNXz5eoQLAgWBAsC4LlZ7cVi0WWbvdVKkwJFvmZ+svRbVRn4eSra7R7AA1f1NwQv1mrBcbIeb9ZnICTE4Ew0ZNFP5VcrWx2D7FlSjBGWStNrp6DYEGwIFjmBcvf4tAd6sGaJXdfJfOU4FLZmM7SxBN/3rKfLkOlSKFaWNsjVaYua07grFV3/1WtYzI2uSMQViSr3HH17I3uYXE1JWig38pXriBYECwIlknBCrCVvVTuvmK5WLkjwv1WTdHNXBXLDNW8mh6Z0ib+GP697gyVLktVZFKsotFvtShC/Va95Yr6r2pdr9EP48fhxEQgLMTsKsf3ZlS6H4r3KcFAYgXBgmBBsEwKVpCN7CwiLB3e5vYEnRIs1k/61fUIlSZT2T7Tfiwm4VzUnOhTgv7EqptPnM8UCnEMTkoEwmLM3Nx1Rc5GMXhmpfuReJsSDCVXoyRvQbAgWBAsw4IVaDKQD1ieiivdkSBTgrJ/Suud0pf7NKHKkZvTua+KpWGRnPQL55LmZJoSDChX/HhudTzA1Q6ckgiE9XrhUTkfiwtnbBAPxeuUYDC5Yv4EwYJgQbAMCVYguSqVu69YUlbG8ZQgywzf6VdQ07MuIbuit1Dly4uTC3XLPVmWzG5lX5oE/VYLTNBLsLY6c+fXugbggEQgbIjsanF6drl7cPYG9yOmslZrYpO1enp5DxAsCBYEKzzBYilgSeHsTiyzVr6lPt8yX6afUh///4tlqS/YbqtUylpZFiut/2qrK2NejeManIwIhE0xeb04Y1q5uCPDxJRgWhSzVt2CtRyCBcGCYNklWCxHirw7j0UnGlOCWolvaYASX05lj0jNklN9nLXSynxL6o8UKjvuEkylKUG/ZUH5daDs1VsFHx06B6ciAmFjZJWLE9PLXQPiaUqwV0nQR66ehGBBsCBYhhjDgrXjyN1WLCVaebA0QmK1vFHNji3UyntV6joErcSnv78vX16MrF+PUKzJlIXFocUJlrlaFIN+K71ceanuepb3JuJERCAi0Jc1tVz8ZPJ697B4mBIMJFZPFqu8vhaCBcGCYIXi6RUe70FaIgVKa2Tnwz1LTg9amhL0aTwv1pX2OPOkXSujZaT05T1uPmcpYPliCYvGXYKYEgwiVpK/1HTehoMQgYhQjKT9JxPLHP8z6SP3g5HKWr0YRtZKkyuvYP0/CBYEC4IVilElHu/+J56qY2HQRIklR5seDCpUUniK5RoEf6U9Taa00h5/rHzd0k7tEuRljfYsDQ10j2AxpgQNydV8f3K11Tm7YItAeRCBiHQma+JHHRe8u849KJZTgsHk6nEIFgQLgmWIF0o9XlnIkYs2+XDlfiiWIj6kfYXKO7WnK+spWn+UrrSXKbNRebJHit9XP7mnF6lo3yWIKUFr2av3tzpfwOGHQEQpeMLw3XVi0Nvr3I/EYkqwW6yW9xYr5rcQLAgWBMtwk7tWAsyv7l2yW6yJlMxmZekm9vTvN0tf1mtQRSjWdwmayVil2pSg0axVt1zVOvMKNjt/iFMPgYhijP9QnDRuretWEqqHY10S1MsV8yoEC4IFwTIlWJyh4gNe+xp3X2osJ/ZYovjAXSQzUiw0LEnxcpdgSvRbRSBrNS+IXKm43p1Z0fptnHgIRJQjrU4cP26l49rx68Rws83sz0dIrpiXWbB2QrAgWBAso4LFsJjw15dLe0t1k3orpCyFuzQ0Epmr4iTYbxUXU4KBsldbHcOG4HocBCJ28cYqcd641eIh38zVy6HkqsRCWTCEXP22CIIFwYJgWclg8SoEbXowFlvZ41KuLGauFifA8tDgmSu+Gsc5I7/K8X2ccAhEjGPMv8SZr60Rv3hjtRge7ZKgJlaPSCBYECwIljHB0qSJBYjLgdxTVRKGVNnSb5UCU4LxmrXqLViulwupSoHTDYGIB8mipaQvrRL9X17pfiiSU4LB5AqCBcGCYBlfNKoJFMsH910tqg1/KzuyVvE5JWhUrrhE/H6NMy9vy6H+ONUQiDiLF/7VccFLpe4H7Vwe+rhBuWJeXAnBgmBBsMwIFh/eXB7U91qV2nCXYKrIVWEUrruJVubKK1jVXc/jJEMg4jT+uEJ8e8y/xYAXS8VQ20uCRf7FapgEggXBgmCZEyxtAajZi5oxJRj5rezRylpp0N6r7PdrHVfjFEMg4jiGFIrjnysVV5NYDYlUv5WvXD0EwYJgQbBMCRaLDpcHWRaiPiXYmJpTgvGYtdKYV+se+X6zOAEnGAKRGKJ1ynMrxN12TQk+EkCwHlqi8uK/IFgQLAiWUcHiA5p3Xi1rMJ65SpopwfrEnxKcb3VK0EesNN6r6roSpxYCkUglw5niW8+scF7/zP+JB0bZKFa/LXLQ/++g93fQ3+Wgfi/HiIwN7qdWYtEoBAuCFVKwSuTVOLxM9IjFoZgSjMmU4IIYZK28bKG9V1WOoTitEIhEDLrLcOS/xAXPrHDdPur/3MP9yZWepxmSplFMiYOyXw5qlHfQZKKDdm05aLGpg67pcdCl044RU8pU0ui/Myrd2OQOwYJgGRCspXK5KB/YmBJM7N1W88LIWjFzaxyvoTSIQCR4/GKNOHbKx45rpn7seEQTo2Bk+GHKR6pMsWixeD1JGaxhSxxUInSM+CNKhBAsCJYhweIDl7+mLDOYEkz+fquCwGS+v9lxLU4nBCJJYvyag2dPLXfd8fZax7A0mY0aJ+HsFMsTZ6s4a8USxdkszmw9ouu30njgbz1AsCBYEKzQjC71eKcHczcha5VKU4J+yPtz1eGH0ugHX5xKCEQSBTXAn/hEifjuE8VikKEpQV+x0pByNRiCBcGCYBliVIlHmVGhykFcTAk2YEowav1Wemhj+wfbBS50RiCSNQYVi1NH/FPc/NsPxfBQU4KBMleDIVgQLAiWYUau8HjXM6xoitCUYALLVTJPCfr0XU3+y0ZxFk4gBCIF4tFl4rJHPxT3jigSw4JmrfyIFTOI+AMEC4IFwTIkWLxcNNmyVkviPGu1IB6yVt7MlXNGwSeum3HqIBCpVTY8Zeg/xHVD/+G+32jWapAOCBYEC4IVmqdJsPjAT7p+q3pMCRogr2Cr48GZK7Z/CycOApFqkSaOvrNQnEaydcuQpe7hgfqt/ArWCggWBAuCFYpnqQdraX1yy1UhpgT9lwarnSNnbheQKwQitUMcdf8ScTkJ1uAHlohhD/7d/Yhfsfqre8Q9kmcgWBAsCFZIXqApwuWN2G0VL1OC0RArzly9V+16RdksTsPZgkBEKTK27jv5j3GcLuZpw/v+If7nN39z3+sva3UPBAuCBcEyLVjJ2MiOrFWghna6BqfG8e7c2s7LceIhENGqxlE5LmND173TNrrenFbhui1jqzg5XrNZ934oTvpNobh20N/dQ7TMlT57xTwFwYJgQbBMCxamBJNvSrCXXFU7JszdIi7EiYdARDGmfixOzaxwvOU9QDc4s9LLnD+I98+Z+7N+vch1x71/Ew/9erH7EU2u7oJgQbAgWKYFC1OCSTglKMXKK1dbHRPe2yIuwWmHQEQ5sjaKGzI3Oufw4Tmt3PXy7DpxSqJ87gMXHf7OPYvErXcvEkPvkoJF9xuO/FezJxeCBcGCYIXowYpkvxWyVjEvCXqpdqTnVzm+zxUAnHYIRDR7m4aIY+huv/HdB2il6+eJ9m/oXyiO/8X735w/8K/i9l994B7OgvXvZs8cCBYEC4IVvmBhSjAhm9m1suCkubXicsgVAhGDyKZyoHZwZlU40hP7Pipx1O0LxSVPl7hHQLAgWBCs8AQrlacEF0rhmVGpvk24rJUX1+T3q0U/nHIIRAxiTOHuEzMrup73HpxUIkwv7xyQDP+uFdvFxas+Qw8WBAuCZVWwUnVKkIWJRWXWJv6BUxUs/nWiTAmqk4LOvLlbXWl/rnRcg1MOgYhRZFaI/tzUzodmxgbH+ClJshvlw8bDF636zAPBgmBBsCwIVipNCerLgAXVOrEi8qtVEUqkzJWUq7HvbelEQzsCEcuYtsH5O29je4UzL6vcfV8fkRx1eggWBAuCZU2wUqks2KsU2N0m4fTez5iQzew1LIWO8VnlX5+J0w2BiGHQrqtzaefVDHloZmaWJc9PPBAsCBYEy5xgpdpuK5afudW9S4FKlfr7iTcl6H07c+5W5+9nr0mcCXAEIilDUKYqs8L1knZgZpQ7hguRPFMmECwIFgTLuGClypQgZ6zmk5DkValCxWLFgsWC0i1WCTYlKAVrVv6mrl/ibkEEIg4ii5oftcOSyoQzx28WJyXTvw+CBcGCYBkTrGRYHmokc8XiwzKlPYdnVaqytTCR91vxr7c6p/+5pusqnGoIRBwEXfJ5EjW2PyO3ts+ZVu7+dbL9GyFYECwIlkHBikOxsiNrtUhKlda4nikb13M36dYuJOBdgvpm9vwtrpfyt4rLcKohEHES08qd12dUOLPVw9Lxdvqab86HYEGwIFgQrGTot2KxmudTBszZpDauz5frFhYleNaK5CrnzzWOh2Z+dOgcnGgIRBxFxsausTw1yAdleoXjgWTc8AvBgmBBsMITrEScEpwrF4N2lwG1bFVtALFKSLlyZdEC0VuGCHEMTjMEIo6C7hy8tbv3aqNz2qSN4qxk/HdCsCBYECxrgpUwWSspR5yV4um/7Ire04DzZdN6VO8SrInglCA1ss+tdo2dW9l5OU4yBCLOIr1SnJ+5wTFV29qevcH1s2T9t0KwIFgQLPOClQhTgloJkCVKW7HAcpW3SZWSBbXJdZegt5G92jl97hb3oA8qWr+NkwyBiLMYUiiOSS93DNFKg9M2ul5MSxNHQ7AgWBAsCFYiTAmyKPFmda2vSisBatfYLKpNnouae90nWO0az5c1J/YdsQhEEgddgdOXGtrT1clBVxY3uifzvxeCBcGCYBkTrHicEtSXAFk4cuUUYLbPQtBFfu4STBaxeo+yVu/VuB+dXYfFoQhE3EZaoTieSoJjeg5I96PJvpAOggXBgmCZFKw4yFqxWHFPVb4s/2l9VbPkFKC2XiHQRc1JIVdbnbOp3+qF92vFtWlr1iBrhUDEc2RucN+doZUGNzhzJm08eFay/5shWBAsCJZ5wYpVMztLjFLVu/zH/53vk6kKdFFzssgVZa1y39viumP2mgPIWiEQRmP8h+KkmR+JcyaUH75o6scdF/L0XjSySJM3dF7a3dhe4Zyduf7wLanweEOwIFgQLIOCFWWx0i8B1UuVb/mvl1AZEKtEnhLMp3sEabfVcwVbBPZaIRBGY+rH4tT0ja5bqUT3DF2sPIk2p8/mLBIv+KSs0uNZ5c6fRKp5kf/ejA3Op7ix3dvcTtvbU6VREoIFwYJgGROsaEwJ6i9X1i8A5be58i5ALg0uqgt9UXMyZa3ompvcuVtdY9+rdv1MSbLryhCIyMrVlo4Lp21wvThto3umv0NKTvRN50uXs8rFRXZ//CwSu2kV7llyY3t6elnXFany2EOwIFgQLPsEy0q/1WK5ToEFikUqW1f6695TVdsjTqHuEkw6uaJt7O9tdd31frU4HaclAmGmNLe+/YyMDY7xmkhR1iqX/juTs1i0ImEK/V621hclJ/smTv2467t2ffyMjeIy+TGVDO/Hdw9KpccfghUBymnzPzG5zEmHs1u5NMej9NWY4VEullzkRXi5QCNbBYKVWIJlNFullf5YULRVCpkVPaU/b5N6tRQqMxc1J6NY8U6rGuczyuaDZ+OkRCBMBvdXUVbqrZ6N6a5p1Gh+/5T1oq+3bLdVnEwZpf7TKhwjulcnqO/HvVI/6iPCu7qGPz5lzl7tzpJtdP4xrU4cD8GCYJllMgnVO+ucyhurncpLq5zKsyVu5cnlHmUEH9BLncpQYsgSpzK40KPcu9ij3EPctcijDFxIkkDctsCj/Hy+R7llnke5ibixwKPcQPww36Ncxyge5RqiP3F1nke5iuSiX65QrpgllEuJvjmCpK1H0iBY0ROsYJkqTaZYLvKre0/8aWU//dSfmetukliuZuRv9YyiXqvr1wjstEIgTAffD5W1wfFQ9yFF0jSJZMpf7xOvT5hUcah/Zrljsv79syod14TzOWRudAzryV453pm65vDFqfZ1gGBZI10K1VidTD2+jISq2GPboc48TAxdqjJE8sASj3I/wbLGDGJp04nb3VLe7tSJ282atM31KD8gYbtWEUr/PEGiJiVNEzQIll9Gk2AtNSBWLDr69QlayU/LUOXqtqhrZT8rdwkmrVxVO95gscrYuu9knJIIhMXg62imbXRMkAfW9Ckfh5Ylkq8TKJP1mm7L+pvZa8zX5Xkze3q5a8C0ntIj9V+lxtQgBMt8qW+qLPepQuVWnl7hVjNTScpQ4oGlqrxpmbY7SNRSXrDqe5f8WID0Cz613ilNpvRCxe9XaMMlzXqpiqlY2TglSI37swtqHG/PreHX4PCqEggEggWrzPkDukQ5V+2rcj5jdBXDzApxMWWy3tLKepR5GmGmVCjofTMrnT/2rmLo7vtyD03V6xUgWEdK1cT1TiWNZOo1Kve9UOpWRpFQPbYseYXKKKldInR3l/lYmnIqe5f6OFvFU3/alJ9W7rNyl2CqZK3ep0uZC7a6Xs6vdv0SDewIhI2RWd71q55yS9ddZv5sRpnjf7ob32mdg5mm96xKcbmWOZNy9btk39YOwQoOZ6jGrXUqY1ZydsqjPEHlPhaqEUWQKgiWCpeCM/V9U5pI1fasTOgWqjAuak4VuZpb43qnoNp1c26tOAOnIQJhu2C5ugUrY0Pnneb/PPVPaaXCCuezRjJQ2fRTEmW8JvWsf3C9Tmsfzkzlr0PKCFZ575LfeMpQjSlVe6cgTxCsYLBosxQsqbf/LsFUEav3a5x5NBWYW1DtmFRQ6xqAExCBiKRg0RQgTe3NkVmoJ7mR3cyfH7/m4NmUiZoid1dNnlzedWWw9+dLnGkacVzPoeuYnF7R1S/Vvw7JLFjpfsp9I6nc92gxZAmCZVyu3lnnDrmKwexdggklV2H2W83l7evVXS/P3eK684Pt4ts4/RCICEcWXYXTMxXoyszY5PgfM3+eM1bpG5y/03ZnTSt33RHofadVHv4OXYPzhq45fkIqLRNNJcFioXpD1zv1pCz3QZAgWFYYv86jrKPndfluj7Ke3q6mj79yp1tZ0aTeS2j2LsFUylxxj9Xc6q5n36sR16PHCoGIYrAgTavofKJnt5VzGkuXmb/De7WObFZn2RpSKI45QuSo54oyZPoN8ZmTyh1X4yuQHIKVLvunRpeiER2CZa9gvbCSxGqPUGr2B2GfUCr3qPK1aqdHWd7k9gpXypcFqXn9vS2dl+AVFoGIWRZLXESZpYm6K3GyKZt1C/3+iYYEa11Xvwzvn6E+ro1dY+mOquO6BY5Kjrx6gYWqR+IcUyav7/hRqj7ea5rFCXW7xZlb94iLN30uvlvbIn5UsUc8+P8+E7l2CVaDFKzy3T1j63b0T02V5b7xstw32ts/5UYjOgTLVsHi8vFIynpOWO9RynaFkKsg0lW116NU7FGzX6ua3UrJDrdXvoplxqsw2cSK+6tqHO/SnYGPvV+N1gsEIi5CvarGlZbZs0NmOq9tyKTForyvKtifnfmROIf6qjLUPi7Hu9oW9okfiQt4OnCalC8uDWZ5N8aL/qnyuBbSY7GlRVxYc0BcTy/6A6tbxPCt+8WorS1iLInV2/R7WXQQ5PFBYOfhV7NPFayqveo9amEt8lyvW5Ugl3mifwqCFQnB4ucWb2t/Y7WHXoMElQItylUI6dokxYszXmtluZHFq6ghceXq/a2esdxf9Zc69QYOnGoIRDxJVtmhc6np/K1ehyw3wG90jgl2ufPUj8WpJFZTtc3uvG4he6Prdk2seu4vdLxL1+6cm8yPYV2dOMUrUwfEQ9X7xBskU7ONvPDbLVib9qiCxZks/mnd1HUztMzzFRIqXuQJoYFgRVqwuKTMC0TfWS8oQ6qSTixvslmuTEgYyxeLF0sXZ7n8ylVt7JvZaSpwDr0do2w+3BcnGAIR50FTfqfx6oUsmu7TbVhXd1WVd708rdJ1R1Zl5+V8fyD9lHTKGCojTqWlo7RqIUP2cOXoNsMr8u/IzCh3DKfS4UkJL1BCHF/3tThz8+ei75YvRP+az8Ut1QfEkK0HxGh6YZ5i9oV8016hrN8tlNId9FO0jYffelkmZGr3u73Nvrw3KEtX7vNuRV+v9k5pV808jv4pCFaEBYuFist/LFVvrvXQ87BHrDS5WlwvFPoBJTaC5QfOeJXt5uZ6LjNSY31TT4lxUV34YjXPhFjR++bM2+p6s2CrY9jc2s7LhcDWdQQiYYK/YWdUi34ZG93DfbNQXmGibBVfzpyxwTk6nXZfkVy9rDW5+75vxgbHq9PKndfr+7ISKbZTNs4rU/vFTZSNeoBebJ+u3S9e2bpPTCBBmkn/nWf2xbpqn5SqnUIpalQPk8J6D/3avsOPZa18t7tbsupJssp2OZWVdDjw5BWXP1i4Jq53Ky+tVA889FFBsCIlWFxS5uWxL63ykNB76HknjhArjQW1nNGNH7ny/z2slhnLtcb65p7Ges5uRSJr9Zda5zTKWD3xXs3hn8zZeujcPhArBCJxg6cBM3nPFV2Dk+VHoIIxrdyRwdOFZvdqxToK6fLr2n3i8tovxN0kUGPoxTSz9oCYyaU+Yk54PwULeiEmqWpgoVLFSqOwwaOU7Axfqpbv4MtwPfTTtEcpauqRLBas+v1OpY6o3edUaqg3q2qPk0qJTqWCGuHLSb7WNTuV5TTyvoBezGdUuKmR3e3th0FWC4JlVbDuL3R7M1XcrD65zBNQqjRyN4nQE4PxCAlXtYTL/bxOonSHKlxh91ttdWW+t9kxOKvu6zP59QknEwKRZMHlwIyyztszNnSNpqzUeOrVSufsFu2+ytHuMvSWEWkre3p554DxH8ZvOZAzdJv3ipMoC3UucVndF+InNV+Ih0igxlLv1Ey7XnSrdSXAkh2CXmxZpFS50ugWLMpglewwLlIMZ7z4zywjkVpCf+/COvWn/wUsV40978PTU9yTVb1XlSuvYEnJ4t+r0slWpU64mPXNXSReXUppU5eypK6Lp5RIvrQ9V25v4/tzJbzrSm1QZhlDA3xqCtbAhW7l3sVu+n31+TBuXWih0pMdiab2OKB6r/BmuvgxW0ZZriWykX5hILHa6sx9f6tr4rwtXaPnbxU3Fhqc5kYgEIkvWsdyo/qkjw71p51XP8zY4PpFd4P7BmdWNl0eHc+lPirp3UTlvgc+2S+eoRe/cZ8cENPtbpD1ShWNlq+kEuCyJlWsmCU6fEWLWRFCsEqJFVKolpJAsZQtqlPFyitX8m1xk/q+eiFT/243fV4q3EuyaifjpGZep7d8WBlEsJjVO4kdXcqqHapwMcsbu5SlJF4La0i+qrqU3MouJbu8S5nKqxyot+u1VTx96FSXjS7DOodkFKzr8nsa1Xn6byJlq4xKlQZPDJbuSD65CjTQoq2O4OnFZVSy/3uDO++DWmc2LwSdv9V1+/vVnZcOQbYKgUjt4JULWRVutXy4wfWn7DjaFNxwUJzFTeif7BO/pzLfu5/Ich+VAPMiMXlUuUctAfL0U3GjWgosaugRLF98hYvFaaWfbBXLEWekuIzIUsUZr0VMneglWPzfy5tCN8uvlLLG2a3S5p73X9ndR6KWNnhkfXmTKlaBBGsFCdbyBpXi+k6liFhKLKntVBbXdpB4dSjzqzpIvjqU/E0dSl5lBwlYhzJxXZfyxqouZUwJTSsud9IBjYnFRBWs2xZQpsqCVOmb2vn7oWZfagiWb2mR2cKrWj4XOVv2itE0PDOAOAenCwKRwpFeKc7ntQw9axjcd8fi8+DJvuqvxOm8b2rrl+JGKvX9ljJTE7gBnVAihbpTR3gXIXIJkLNVyxpVudIo0tMQWrq4h4rLfsu9UkXyVX9kpmuxXzx+Bc0OSpu1MqSbPo7b2yC/lEocLFUrSLKW0dui+i6vWC2tI7mqUwWrkASLJWtRTY9ozWPZItGaS+STbCkVh5RcYlb5IWVG2SFl8roOZfyqDuWV0k7lhZIuZRTJ1xPLnFR6pA3xxdwsrWbBRkCw4kiwVEmyynzZ1B7J79UEJI/aFyZRL+jveMCmZre4iF/j+LUOJw8CkeQxge8w3Oh6pWdi0DGO92FF6+N7hapV9K/eL35JKxIeo8zUa97sVIRf+LRm9bLdar8IixVnrJb5I0zZ6pXhqvfPYvl2eYTkKhTcmO8tWTZ4emW+ePdWIZUOF1DpcF5VJ2WwOr1ZrIIggpXDkrX+kJJNZK47pKQTU9ceUiauPkjSdVB5c+UhEq9DyksrOpTRyzuUZ5d3KiOXdVHpsUt5vJiyYMSIIjcEK4EEK7+ad05BqEJyQOTQ69zr/FrHC4vrW8U1te3iDJxECESSBTe8s1D1XNrsmDDxo44LIp6pOiDOpzLfwE9axMv0Np37p+paRG40XuBYrCpkCZB7RVisVkiWS8nyxZ90FWv4CpcOI8KllRX57YodsZGrkGXInaqAlezoYcUOXtzo9jbLc7/WjPJOJbusw5u9CiZYE4h3SLLGrzyojCttV95gStqVV4iXlrcrY4jRy9qV54hni9uVp4valSeLDimPF3UojxV1knh1EU4IVhwJVm4V5MoK9No3h1/7vK+BfCPEAXH3Nsre42RCIBJZrOjKHO+lzTRB2HOljit92iZxva0fR4ijKRV+SiUJFV0p88P6/WIEvaBMjPYLmVYC9DasN6t7qzS58mWFr3CZkK5lYUjXih3xJVbhwJmwhXVu79U+ORXcLK/KFwsXy9bE1Ycok3WIBOugV7BeK1EZu1yVrBc0ySpuU54talNGLW1TRhJPLmlTHi9sUx4jHl3cpowghi9uVx5efEgZWthBdCpDl3QpDy91StxeIFiREyyeGOQhEAiTjewTk+u+pPaIFnED/zD6cYs4tbAQjfIIREJERtnhm/i6G51cTc6soEubbVh4x1LFQlX9hfgxZYvuJ6F6nl4oMoi8qEqVLAHyLp51u9SMFR8Epb4EEC2jsrUszAwXvy1JIrkK2gO2k/vR3NTE7/aOsefTtKKyielUG+Ypy/Wmt3R4kEqHagYruGC1KsMXtSpDF7YqQxa0Kg8Qg+e3eBk0v41oVwYtaFfuXcBvDymDFh5SBi/qUO5f3Kk8UNilDFniVIbGSMDuL3R2C9ZpaYkrWMvkNTgQowhluVpooIf2+NXRxDRJ108+bREX8GssTjEEIt4yV7QsNL3cMSSjnPZeybJgRoVjEmWywr60mdLc59GLwK+o1PciZ6lk6jsvFtmqCilV3Fu1ypedqmhp+MqWhiHhajJRUvTTw1Us5Wplc2oIVrAypHcggDJfxd6LensmIFnEsmhdxDhqmH9h+SFlZNFBr2QFE6xB81qUewtalHuIu4mB+S3KncQdxG3KfqJFGSD5udLq5bb8NmVgwUHlLhKxexd2egUokvJ1U/6hbsHql7k/LgTrDpOCxWVtSFDURCuvjl9TqWGeX2O5nMiyhVMNgYh1UGaKL4DOKO96rrvfSl6Vk76uq5/Zv24zXZdD3+ynfNIqvkMTMveSSI0nuVJigfYCxCXAcmpYX0titbZZlSt/rAohXaUBpMtIlmuFqXJi+BvfUxkuqfIluelltCZiJTfLH6JerXZvduvhRapwDZ7f6pWsu+aqkqUJ1s/z9iu35KrcNGu/ciPx45z9yg0z9is/JH6QvU+5jrg2i9/S789qVW5S2pTb5pKAze9QBi3qogyY05sBG7LE7RWxoSQpDxuUq8GLncp5E/Z5BYt5nHrMEk2wCmrU77lYfd8DlfoW8TZluH5TR7sBuR1js0jMq8wQiIQMngjkJaK0mf2d7knBDc6Z9HZkRpk417BU0Tduw1fiUtqQfgsJ1YhPD4g/cWM6ocSCWnkXIO+s4klAzljpWStZ7Usw0dKxslnXr2VQuPyWFHccKVucqSmFXEWsDMnZrwLvNUFdtC6iU0lb3UG9XocoA0bZr6XtypCFbco981q9wnVLbktQweqfuU+52ste5ar0vcoVzFRmn3IVZZ76Z7co181oJQlrIwlrV35OmanbCjqUgSRi9yzsUgYtVmWMBYxlbOD8TuWKzBbl1HGqXJ1LosVXr8SFYC0keaoIzaxN6vdcrL73wZGQaM2ht2998qV4tP6AuHVbO91sgVUQCETE0lZHUfnv+5kVrpf4Ghzd/YKzMjZ23s4ThIZKf5SlovT0r+kb+OX6L8VE6gOYVa9+Q0edOp/eKn6R58Z1X9YFoJd0Gc1uabIVpKRYYqKkyJkXloCVkKHor6LYofaA8fUmC+T1JtwHNqtSLUGOpEzS/QvbSbzaSLpavJIVSLAum7xXuZToy0zcq1xEXDChB/619/+bvE+5dOp+5bL0/d63576zV5Urgt8OnHfIm82MB8EaSIJFC4eDMqOyR67qQVxC1YXZ1KIxiUqIY+nrNOjTveISnIcIRIDynhmpUqh8R2WTKzI2usb2urh5g3MO9Vq9lUV7rwJ/KLrbj8t/u8WZjV+KO+ib852Yv1jIVHi17K0q96FMipZXtjQMCNdaH1YHEC+r0uVfvCBWiSZkvIZi/OouZWQxNchTszz3a/2AslwsXv3S93lli0XrYilY55FAnetlj3L2eJUziTPS1Gb206RYMVdk0dTkqtg+J1j2BxeqgnVvYXC54olBfh5DYhIQ+uGYflgeyK/t/BovbBhoQiASOtJWtH6bloD+iu8KTF/zzfncpO77PixUkzaKszLLHVdnVnT9MnOjcwwJ1eyexaF8cbPjnaxyx33Za77ye/3N5v+I00iorm5oFb+i0t/zDV+KmfEgVjWyt2rTHlWu9JT7Y3ePbHVL1y6LWa5mk1kuf31cO/SgLJhMcBlS2eSkEmSXMra0Q3maBGxEYbty/4I2yoC1Kj+mDFj/LM5a7VMuIOE6Q4pW34mUFctuVfpmdyr96HLluTWxFaxl9Ly8a7EqWI8WBxespbKpHcKSuPBrO2W2xlAZ8e66L2jB81d8JRpkC5GCkbHBeSOX9LwlPlqrkLHB8Sr991OZZc5Hp5U7f5tZ4R7JmSr6/fH0+9NIrubos1ZZFc7p0zZ0DfIuD/X5iYV+gjmGpYq+6R7Z9qV4s6FFTKP/zovpC4BsWK+We6u4FFi5V+2zqvQjWaZky6JomZatAFOKyFyl1ioKvoZIX4KcUdHp3QmWR2spuB/rgmwSm0UeJa/KQ++n3k+5PAbrOhbTx71pnipYr6wOLFcLa9UJXUhK0pBHopVFjPuU+7Zoo/yaNeJYnLqIFBIsx6tc2tMm/0Ih32+2917Bje7BWeXiRB+pOpavZaDS3730k8ykBv6JJobov+G1pnUWK182BaBSYkq8/MjX+gDlRUOlxZDyBekAvZewXpcvSLCE8s46oeRs6k0ebUVfKO+j9L3EOxIo1R7lillC+WF+YLmaW61mlGP9egEiC8nWVJKtwVoZEScwIqljQlnnJZS5up8mAF/2LgPd0FP66y7/beQGdsdkb8/VBudj08pdN0/ZLE7T/o7mZnECT5TQBOAvSKr+SMyKh29mrQyo7a6qllTtsy5aVrJcAWXLZB+X//4tCAXoTdo6NVt050J1Gk8jxw98BQ1nt/gC8KJGNcNVavPn8/hyEqxcobwRIHuVu0n9fqiHgKSOaH0pcrlVhCobtze2i8vLRe8f1BGIpGpyn7y+/YyMdeIyykhdm77B9bOMss7b08tdA6Z+7PwpXXlzTca6zsvSysWZQ0TPdQrbvxDnNO4TdzS2ieeoFDiRvlnmxIVY6fZX1fhjnx/h2mtOuDZZKSvuDiJcZsuKECwQoGmes1d9c9RynF6wfDlCtgilind/8TVEqnCF29OXVelR+itCeXK5oHaCI+Gmdn4eQ65SE++ZQZUOejv601bxSz5TcCAjUjpqvhQXNbaKkdtoVDeevln1E4F1Ia64CSVd1WFKl2Hx2m0ty7V2F+QKHMnkcjV7ddM8mR2q0rGph1mbjMtXPpXvCuvNLa3lkuMskrWfz/d4M1fZFf7hiUGIBtAJ12z6Yf0PdW2iL05aREoElwA//UpcwmsVtrWJV0mulFjT0Oq/z+qISUENu6QrQIkxZGkxSB9XsF4u/z1cHioXQiZAb7i8d2+hx9t7NbxIlaq8Kh/J8ocB4dJQSLYW1HroChu+cki9eoj3rmnw51DUpDbWTy5TJYr3WjHZPhTWq9+T8fB6AuKQL8UbnNXi5dP0AyhKiIjkCl6tQEL1M85WeUuArSIvXr759IIVqKndr2yFyHDVBJGt6hjKlj67tQ5yBfyQX8PlOI+3PDhxPZf7VPJ0hJKtWSZkK1f+/fnUxK6hyL9jxqYesfKF5cp7Dc4+SAQIDp85VEKcvK1FPEOtKLeqKx8QiAQOejKfSk/uoUQmidXspjgRqybJEbJlcIowmGwZzm7t85/ZslJWNLIewp9wrYVgAT+MWdmzLV2TK38YEq5N5jJbvmXFGXp8BIs/Ln//NLZAIIDh1/687XQWbW8V05raxPBmAdFCJEyPuziq8aA4m4TkR5ytaqIJjyad0MSaHW09NLUFfj+j0tUQYk+WpT6uff7lK5xpxUDitR6CBfxcTP1D2dw+tVztm9LDpT2j0hVQvjaZ6+PyJ178sfiHhHh6fQEJSJvI3d4mRlEC4MfcGJ+WJo7GSY6Iv2wVrVdo+krcTz8dvLbjKzGzSZOYGLHDh51+fu8I4fKHibKi4T6ulsDCFay86Le0aFa6egkX9WA140oc0MM763tWM8ytUcnXU+0fRY/VbJeJni7e29bYGtvXGJA8kGTlEK9TZutBPstwoiPio3GdGgdJrJ5nqSJRmUPkxVKqWKSa9bSr7GxX/z89poQrUJarRcVyebEldtOKLFrch5VbBbEA6nTfD/I9ykUzhDJ2ldrfpDG3xo9wVRsQriqbhEsnV8WN3dkHAOw+Q+bwWfafr8SLOw6IK3E1DyLqsYs2rG8/IK6nJ+If/9MuZu8IISuRZqcUqV1+aA6Br3SZEq8Q0tXYEkama3/wLFetjdK1uJ73C3mU8evV++b4KpQS3EWYcmRWeJSLZ1CJcK46tTevprdk+TLXn3jZJF2B5IsnBpti/HoDUoPtXD5sFS9wywtvjMfJj4hobD8kztnRKu6ibNDL/2kTs2L55G/WSdVuyS4DBBWutjCEK1AvV0uYwmWgj8twE/3ewMK1rEkor9GeocGF3NzsUR4u8iijS9V9SAW1sbl7DkS392pEsVoeHFqkytW8WvlWhynhqjYgXCZka4G8YxCHP4gm3iRCu3jls6/F3Tu/EefBBBC2Bl8/QE+yB0iqJsUyY8Wyw5K056B/dvuw62CYwuUnyxVOWbHJt48rzBURYWe3fNZDcI8WX6PDl+WOLhXKzxcIuprEo/QjrqXS0V2LSbpWqosfIVzJxfxabm5XBSuTmtvn1/YwzxerwhWinytUhouzrTjwQSwzWnQGTqYkw9DNe8VJMAOE5dgsxHHN34jzd34lBhEzdgbI7kSaZp1U7T3kn0DCFVDATGS9zGS7dhgRMAOTi402TC0a6ukKNrEopYu3vfNhydmtB5YI5cYCoVxLV5b0zxPKLfOFN+sxfp26O4kv/l3aqGZD0DifWLyxVpWrOxaqgr0gCH7ly0Smy2xfF79v2a7YvP4A4JevRA71ad1Pq4gurKsTx8MYEIYiTYijP/tSfI8EYhhnrEgm8mItVfske41gRrbabZAtXUO96dJiawjhstpAv9/4mojaALIVqJeLr+JZ2qA2HY9bK5SRdDfcICor3jxPvVblTiovDqfy4guU6ZpYpi6N5I3ckJj4bm5ncebmdt6avrBOUttDOLJlVrj0ssW/LqVrcChrgEMdxBV8NnJG67M28Qj1al2zZo04FgaB8B+0w2pni/hu89diNNl5JpUC85p9J/IijCZV+3RStV/HPj8EEy09IaXLpGz5la4268K1o9VAdsuKcO23kN0yKFtVcpM8XxjNd8GxePECyGdLhHLXIuG9nLd/nlp6uoPEa2SJR0mvUK9HQYYrfuCvCV+LwxlJFqVFdTrJMiFbvsI1v8a/bM0zIVv8nOLnfrRfiwAwCp+Vn7WLTJqof4HPUN4HCaFAqP1VdDcTCdUlJAijqIlvdrPBviS78EqVFKiWDnprhgDSZTTbtccXo31dB633de3UrYzYYbSsGKCvq9FAT1e9wd1cZndy+e7lCnTVzxI6ICdSVuTxZUIZQD1dP6AllldTefGGuWrmi7eGz9jkURbUqdOLyyjbVQrpiV72aod6kTJnr1iMeaJUY5EPC+sCs0AjmHAF6umq9S9d3onB1ui+HgEQDnyGEs/ROXD5boF7D1M2CoU4hg7579Nh//tdX4uZUZcqmaliqQqFUdmynO3yJ1wGG+l329BIb/uaiBBb6CO1l6s6xMQiZ7tW7FAzEyxd3Eg/dKlQbluglhf5oL9/CWW6VniUcdTXlUPitbgeKyMiySx6jC+b5VGuU9TsI0tNYX1v0fIrXXUBMl26jJehLFcA2eLPgZ9rOLRBQooW9WjRa/9T9PZ6ymgdA+NIoeDloCRVf/zv12LaLi4FRlGq9huUKsuydcg/VjJce0PI1hHCFe66CKu9XG2xbZw3ctUPC1e1n11c66l5uXSnujxSa6a/n5rpbyjgTBcd/FRevGW+2tfF0jWvFuVFuyglcX1yhVoeHLK0R678sTiYdNWFJ1y+0sW/5olWHNQgkeGzlbJZWXTejvlvu7gC5pHULVbimIMHxVnUY/UwfdFzdpnoMwqH3bJRneWo1SKRFDFbS4w+QmZ3tsvS1GKQq38aQqyLaDCQ6Qp7+3yQ8iL3dfHCy6dXcHZL7enql0viRQxcxCUtj5JVoWa5eHqRV0eUIttlGH7MuLn9ghnq48z9ThpLJIWBCCFd+mzXQo1ApUUf2Vq7KzqvTQBEi/8eojP3azGC7ztEM3ySxWcd4oL/HhSD6As9NWpi1R6+WNktXS0RznjtMVNmtGFNhG/Gy2o/V7ilRUsXWwdooA+2fZ7vn+MMB0+6cb8QZ13uoPLijfPUBu3BhR5lVIma6dL6urCvKzBTaYksyxWvZigiaSpq7C1Z/oRriR/RMpzp0pUXA2W6Vu4MfCsDAAkvWu0ig17/79t9WFwEM0nw2EvL0HZ/Lf6XeJu+sLnRfCKxPOzx6bVqjTPZajEoW7YIV7AyYzirItqCTy+G1TxvZfv8fpPCFWJisTrIVT9cXuQsFx/6XF7ktRHDi9Rs17UKX/miNnAPWepRxq5W71xcjh1dXvgxuHmeKljp5apc9aJBxYhwLQkgW4aES1daXN6kPv9wEIMkl6zcPV+LdzjpUXdAnAJTScBy4L5OmmL4WozfHaBUFQv0PVgsRm2d9tIaDLtLjBLbSoxhbqYP2Uhvw0b6xjAnF+sMTC3Wmp1a1JUX9fcr8oJU3qP0Qinv5lJLi31zhHLpLMp2Ucbr8eXqNUBaabFElhdTRb5YNnmxKO8vY9Hhq5KYYh+KmvzLVyjxClRWDCRe/Hv83Imn1ysAIn4mkmgd6BJXohE+McTqKDqYr9rzjXiUvnC5RjecxwIWjP0dkZOtgAJmQxbMSIN9NJrqd7Xbt4ne6vU/RwhXBK7+MdLLFWxVhJbt4oOcszVcXuSt9Fxe5IuNWbjupfLi0yXqVnouL/LVMcVNySlcPJX5wFI1ezVyRY9cBaJbuBrDy3QFKivyn+evazy/XgEQKSiTlUc8zmd3Wpo4GiYTh0FfnLM+/1oM+/ygmEz/nZdIT7C9uj1YbckgWyFKjHtt3Eof9vSiydKi4St/WuKzl0sTLt5Iz+VFli6+5278OqE8tkzNdvGurhsKPLQ+QhWRMas8SnYlZbuSZEEqT2Ly3ZJXUDZv1ia1NOdLSOlq9BGuht4YLS3y7/H6jt3tOGhBSpPHZ/fer8WjXxwS58Bo4iTWCHEsZayuoy/O1D3BJtsSBC2z1Sur1RUhjJYcLciX4RKjhtV9XTZMLxpajNpuMtOlozHMTFdY+7m4tLg/cFnRV7w2yUuvObPC0sWZLr57kUuLXGK8Ll9trn9zrZrl4sWofPdiSQKVF19bra5mGLhQlUxmhQ/L9RgQr15lxcbALPVppOdSrrdUcggAwHzxjUjf2yFuoIoUpg1jGdRj1Y/E6knKdOTtNZMZSRD26cqImvS0d9mLEdHqxqZme6vrIwyLl8H7F62WFy2viohlpivQQtQgU4uacHGGhcWBsz1jV6mN9HwVEK84YAbSNUCPLVMvTM6sUC++5uuA4nFlBH9OP1+glgd5sSjf81e6o0e09BwhXE3msl3F/jJdOlY3q8+zZHztAiAsuAp1SDxD5zuu3ol27NsnTqYvwH10aE5KVrnyK1uHVJFpj4BoWZGttijJVljCZXB6MZzLri0Jl12XW+8/cnIxrF6uELKlCdeqnWoGhqcXtb6uexarwsV3L/L04r1ybQQ30y+sj48MF1/Azdfi8PZ8Fitei8CLXjXRCiZceukKJFvLDZQVGX78+PmCwxSAwJK19xsxmUqGDx4QmDaMSnx+WHyHHvBxqf7k298RmYyW7SLmM81o+yTjoTDLi6Ea6YNMLxq9czEephbDzXQFKi9u8i0v7lElY2q5muni5ag8rcdwzxNL2NhVankx2ncuctP+ZbPUxaL8+fFeMY2VOkp3HkmJgSzXEaXFHf6li3/NX0ccogAY4/ND4m3eDAADilw58MwvOsQ9B74R2fuCbCBPNXyb49tjIV1W10lYyHrFLNtloqHeSKbL8PSihanFhihMLfrr4/InXNpG+jxqpH+FrgEaWqQu9vxxgTrByJmkR6m8yD1d3Eg/t0a99Nru+xe5V2xEsbqagT8mZ99WN/eWrCOEa2cPpSYyXQGlq0n9NT+me/HaBYA5vhHTP+8Qgw4KcRaMyMb4olX03/+NeJEOzzl4ooWWrUiWEUOJVnuUpxnNTjDuO2T/9OJumyYXd4Y5udhgYSmqqV6uIEtRq/aFLi1q5UUWG56g4+lFbSv9oEL1wusb5qrTi4Pl2ogJ6z1UhlQb6S33XTWrpUpv9ipbLWny5xAIv9K100e4dpgvK/J/82MCuQIgjHPuG/Fy2zfiWphRmLF5sziODrvBNGWWQ4dnXrBN4+BIWnRlxIMRwIhs+WK0t6vNjtURdmylP2hAuNqjLFthrIgI1stlm2ztNSZbWkmRpatstzpRx1kevhfwCVoZcVMBTy56vFyV6/E2048uVZeElhgUriLKXA0qVPuuOHs1mhavrm1WPxbf+cf/vTYM0QokW/6Ei1djaMuGAQAWIRc4QE5ArUJD6urE8TAlCwtDd38pLqIHchQxZ7+JsX/gnxafnq2DsZCuYD1dZldHaD1dnfb1c1lejBqgxGhHL1ezgTURUVkREWIDfbD1ENUG10P4ropgWHTmUiP9a1xeXKpeA8SlRV4dMYBKfcOL1elFXo6aV6VOMCrV6iXYnAG7VvaA8Sb750rVhavMugCslazeZTLDpSsr+uvh0iYG8VoEgD1Q4iVv32Hxx8/bRF9MGhqM7UJ8i8z0F/QAvo0nUWREqzXCmS3bpMvK9UB29HN1WOvlMn31j9W9XFG4a9H27fP+GucNZrn00sUSxOVF7ul6Z71aXhwsy4tX56kidYUsBTL8e7zLi1cysORwpmy9xi7jwrU2jJIi/z2cocTrDwD2c+CQeJedYfducSIMKnjm6mg6+J4icvHEibxotegyWwfjWbas3scY4+b5iDfOt1vo4wqxIsLKXq5QshWqvBhsPURA6dqjKy9KGWLZ4S3q82rUexi1RnYWKC7Ple+R7FYpk+hFy5BwNRsXLn4/fozxmgNARM+z3C87xB84QQOT8olCuujxwNfiSnqgxreY7LcB9uGb2ToUQewWMaOb6qOV7bK0jT5QadHKMtR2C1muthATi60ms1wWyopW10P4lhY1KvYcSXkAyvbopMsfobJc+vKiFD7+9+/HawsA0aFTvN3SJa7C5dG6fquvOsUvyD4n4gkSP+g3xx+KEeFIl+lrgexYFxGkoT6c/Vy7fbJdUbvcOtiKiDDWQ5i9Z7E6jBUR3dK1x79sBZQuXYarzI9oGcl08eeuDZsAAKLDl51iMnFnmkjxi6ObhTih9RvxOMlVDp4Y8ZnRapUTfTwBGC+idTCCTfT+rgSya13Efiv9XAZWROyOg6nFxjBXRASVriATi2anFrXJRVPCtdtPWdGPbOmFiz8+5AqAGCUIDoscqlKMpAROavZlHTwozqYDbxQ9CHmt/pqVQVziN6vljBE2lhlNlxdNTDHaedm14UxXiBKjkanFHWY30Lf57OXyR4RKi9U2TS16y4oaBkqLZX5Ki/y+/PXA6wUAMSXvyy4x+ptvxHkpVRJsdYhryDBfpUMrr83kYkoQP7T79Gt1OCNLKNmyO/PV3mVtM32LDWXGuJpcbLNw5Y+JXi5DayIsbJ+vtrAI1W8vl4nSIv8eP2ateH0AIB5gx3i9zSG+nxKrHL48LH5CB/MUfOGTULiiJFodJkXLNuGyuJ3ejp4u26/9MVtabPdfWtwR5nU/ja3WJhat9HLVGLjUuiqUcIUoL/Jj0taB1wIA4uxsSqekzs+SVrLoH3bs105x41eHxUx8wVMjs3UoisIVUr4sTjXaeT2QleuAzKyNCCleNqyMMCpeO01KV5PBOxYbDIiXmfsVjUjXJgMN9Ax/bq2QKwDiE+rLore38g0xSSVX+4Q4uf2weJAOpNyo348HYs7BGImWpVKjj5CF2+MVqrneyqXXdm6kN7SJ3uLUYrOV0qKfXq5ITS3aeak1fwz+2uD7HYC4Jvdrh3i4tVV8O2l6rg46xWNfd4lZ+OKCeJMts71d4TbUh5xk7LAp09VhrbwYrMRoeSFqWxjCZfKuRVtKi0EmFv1NLfKfa4VcAZAQkIvMpqrD7xO+XHhAiFPoH/MsvqjAH/EmWpHo87JLutpMStd+E9Jl58qIcNdFWN7PFeaqiFqT0qWJF////Hji+xmAhBOtMS1CnJqYaxiEOIsscSSRhy8mMJLVOgTZCt7P1dGbSGS4wpItg7u5dhns4Qr32h/DsrXfpGzphGtPO75/AUhgyXqWXSXheq6+cYrn6ZPPjdYddyB50Ge2OmNApOQr7F4uG9dFRDXDFWJFxK4wV0QY3j5vZUVEEOna1R69C9MBAPbDjsKuwtW2hJArbh77xiVej9XWb5B86EWrK4rYJWAdYUwzGp1iDDnJGE550eJG+mDrInZHaV1EpFZF8MfE9yYASYJDjP/qK3F6vDe0n9rhFiPpIJmDLxqIhGjFk2x1xJNsWRQtO2UraPN8BFdE7LRTtgyUFvnvaOvE9yMASYNT5FE267l2Ic6IV7k6gT7RZ+gTzY3Z1SkgZdDLVpc7NnT6EoaAWV0ZYduqCN8rgKyuiTBRXgx3RcSuUNf9WFkREeJia/41Pwb4HgQg6c6UXHqdfTbu7i+kT+h4zlzF80QYSG5iKVpBsbHfy0hzvRUJM9Pb1WLjclSr2+gtTS3a1NfFjwG+3wBIXuh1dPT27eJb8bPnyiHuO+wWs/DFAXEjW874Ey27ZMvqPYxGyoxmrgGKhmwFa6Df0x6ebJm98oc/n3hfLQIACJvZhx3iIb59JuaCRYfH3YedYga+KACZrejLltGeroMWe7rMXP9jWrgs9HIFvWcxHOEK0cvFfz/kCoCUYSZV5QbFVK6cQtyILwRIKNnyxAFm+rzszHQZzHiZ6uvqCtHTFc7VP1b6uUKsigi2LiJQpotlDd8/AKTgmeESt8Ymc9UlrqIP/k4s9hQBEC56iXEynhhhMutlx/qIiGS8Qu3qCuf6n0MW+7hCTS4aaKDfLTNX+J4BIPXocIlJDoe4JurrGBwe8RpNTuXhiwASXrZ0whUz0fKYLzHGtWwZLCu2hlFW3GeDbIVaEcGfbwe+RwBITdhxPOLNtjZxWrTk6pjDLvFSF+QKJGtGyxNj3AYzWwYXo3aaka0u8/u5LDfPd1i73DrcBai8kyvoXi4pW/w54nsDgJQ/G/IcLvFGxJveCwvFMV0uMZA+YG5cjsQDYDPOWJcQ7Sgv+tvbZeeuLou9XKH2c7XZtJvLyl4u/jvx/AcA6LiXE0yR7Lu6gvquJuOBBikrW57kkK0uP8tRbbmDMYKyZXRNhJlFqP5Eq0XuusJzHgCgQVmsqdSP9b1IlQaPpQ8wjl7I8/Bgg5SXrTgWLT3hTix2WpWtaC1ADfPKH9/sFv8e5AoA4OcHbC4VppELHWe/XDnEMN8XbwBAj9y444hg0mVKwmxqqDd792JYdy52GL/cWi9dWuYKz2kAQECc4jFbJcshxPddHpEVtz+1AxBnxKVoGZlkNLiry9Zsl0/my+77Fo1un+ePHdfZSQBAPFQJZtIO0Btsy16RXL1IL9Z5eHABSDzJsipbTqOLUZ0REi6LS1BD7eTyl9niv9sJuQIAhH5dzyMneoXc6KSwBYua2gdArgCwT7g8McaWTFeYKyTsbqIPZxEq/394fgIAzEgWbVT4ZbjZq74ul8jGAwqA/VktTzLIljvysnXIgmwZbaI/iLIgAMAClMXKZkeyXBqkZq5n4q3MAUCy4YkzLJcZQzXPO/1jtbwYagu9Eenqkk3teB4CACy0XTxDrnS8FcG62iVEJh5EAFJbuMKSLovXAXX62dPVaXM/VxfECgAQBuxIlIi6zrRguYV4wiNEHh5EACBY8SZb4TbP89+B5xoAIKzXanIk4hlTG97pnS+iPzTTkwAv9gCA+JYv25ej+iktmhEuTa7w9QIA2EAOOdMVRuXqaPoDL+NBAwAko3RBrgAAtiK8l0EfY6j3Cg8YACBuyoxmN9AHaKDvglwBACIEudO1oeTqGOq9ehQPFgAg1rJlVLScBtdDQK4AABF7HRPiKd6+EEywzqFU13hCAQCAqGFVujzGrv1xevAYAwAiygTuXw8mWDcSuXigAADxIFt2Xf+DxxUAEEnYnYgBwQTreaG+IwAARJ1gWS0rfVzunv4IAACINGMCydXpRB4eIABAXAqXBemCXAEAogg71Gn+BOvXeHAAAMkiW5ArAEAMuO+IeweJt/DAAAASTrQE5AoAEDdM6nU/Id8ITUzDAwMASAbpwmMCAIgRvNn9Mr1g3UzMwgMDAAAAAGAZnia8XZOro4gH0OAOAAAAABB2o/sIwVfn0P98i/gDHhQAAAAAgLB5gTiJBetU4m08IAAAAAAAYcNb3c/yXo8jm7LwoAAAAAAAhAf3tH+HBesa9F8BAAAAANjWh/UjFqxf4sEAAAAAALCNe1iwHsUDAQAAAABgG4/3kd3ueDAAAAAAAOzhJRYsXJEDAAAAAGAf41mw0vFAAAAAAADYRjoL1kw8EAAAAAAAtjG9Dx4EAAAAAABbmQ3BAgAAAACwlzksWLPwQAAAAAAA2MZMFqxpeCAAAAAAAGwjgwXrXTwQAAAAAAC2MYEFayweCAAAAAAA23iVBesJPBAAAAAAALbxNAvWvXggAAAAAABs434WrB/hgQAAAAAAsI2bWbDOJ/LwYAAAAAAAhA071WUsWKcRU/CAAAAAAACEDd/xfC4L1onEi3hAAAAAAADCnyAkTmXBOoZ4BA8IAAAAAEDY/J44rg8H/cftRC4eFAAAAAAAy8wh/rePFvSLq4hsPDAAAAAAAJbh+52v0QsW92FNxgMDAAAAAGCZ6cRJffRBv/E7PDAAAAAAAJYZ2cc36Df7CezDAgAAAACwAjtUP3+CdRTxNh4gAAAAAADTsEMd1cdfcOc7slgAAAAAAKazV4P7BAr6P/sKdQMpHiwAAAAAAGNk+i0P6gTreGIUHigAAAAAAMOMIU7sEyzoHW7CAwUAAAAAYJgBfUIFvdNJxAQ8WAAAAAAAIZlInNzHSNA7Xo8HDAAAAAAgJD/tYyboD7yOiUIAAAAAgICTg3/i/nWzgnUzMRMPIAAAAADAEbAj3dbHbNAfOpV4DQ8gAAAAAMARsCOd3sdK0B/8CTEHDyIAAAAAQK/y4E/6WA2hXp/zJHqxAAAAAAC65eoZEehaHBOSdbrAHYUAAAAAAAyvsjq3jx1Bf9EviNl4UAEAAACQwuQSd4WdvdIJ1inE83hgAQAAAJDCjCW+3cfOoL/wImIaHlwAAAAApCDsQN/pE4nAVCEAAAAAUhB2n1v7RCroLz+B+B2mCgEAAACQQowkTuoTyaAPcL7AZdAAAAAASA3SiQv7RCPoA11M5OBBBwAAAEASw67Tt080gz7gAGI6HnwAAAAAJCF81+DAPtEO+qDfIgbjCwAAAACAJOQh4sQ+sQj6wMcSz+GLAAAAAIAkgnd/HtsnliEl649Y3wAAAACAJFjHMCZmmSs/knUh8Tq+MAAAAABIYN6KelO7wfUN6fjiAAAAACAByYjaOgaL6xt4RxYWkQIAAAAgEWBnmURc3idegz65o4hricn4ggEAAAAgQTJX17PD9InnkJJ1OcqFAAAAAEgAueoX93LlI1r9UC4EAAAAQJzC1bZ+fRItZCbrKtmRjy8kAAAAAOKFd4n+CZW58iNaZxOv4osJAAAAgDjgTeLcPskQ9A85hxiLciEAAAAAYjgt+AZxQZ9kCrZFYiQxG19kAAAAAESRXGIUcX6fZAz6h50s1MsTIVkAAAAAiJZcPUKc2ieZg/6BxxD3S8lCyRAAAAAAkSoJsms8zO7RJ1WC/rE3yi5+SBYAAAAA7JaricQtfVIt5BqHK2U3P54MAAAAALCL8cR3iaP7pGrIkuFTskaKJwUAAAAAwm1mP7YPwitZJxD/S0zDkwMAAAAAFmCHGEScBLPqLVnHynTeG+jLAgAAAICJfqtxxDXIXAUXrVOJ0XjCAAAAAMAA7Aynw6CMZ7N+KScAkM0CAAAAgG/Wii9rvgtZK2ui1Q/ZLAAAAAD48KJsKzoKthReNosNNQdPKAAAACClmUXcSxwHQ7JvZ9a1sgEe1+wAAAAAqbd+4S3iemStIiNaZ8oRzKl4sgEAAAApQSZxH3EWTCjy2azzZTYLTzwAAAAgeeHbXi5A1ir6sjVQ4D5DAAAAINkmBCcIdQH5MbCd2GWzLiGGEdl4UgIAAAAJzXRiBHEZslbxM2nYX2az8AQFAAAAEo/JcqANE4JxKlrcBD8JZUMAAAAgIcqBk+XZDbFKgLJhX2KonDzAExgAAACIP/hy5uEoByZmNutygU3wAAAAQLzBm9j7IWuV+LJ1AzFeYEkpAAAAECt4WejbxE9hJsklWacL9cqd1yBaAAAAQFTFindX3iOwLDSpRes04ibZCI8nPgAAABA5+OaVWzjJAQNJHdE6hrhbilYuvgkAAAAA2zJWPBnIlzIfC+NIXdE6T46HjoNoAQAAAGGJVRoxmLgAhoHQixb3aGXgmwQAAAAwRaY8Q8/HygVEINE6Tma0MqWNY2EpAAAA0Js8eUbyLqsHiBNgEAijonWW7NF6BVOHAAAAQDdz5ET+r4lzYAwIK5J1lBQt3qM1BqIFAAAgxXusXiZuJM5GKRBhp2x9V6gLS/GNBgAAIJXgBaHXQKoQkZatHxDPyDHUOfjGAwAAkIQ9VlOIUcSPIFaIaDfD86XSA6XZ4xsSAABAMjBB9iBfQhyPEx8Ra+H6iSwfYuoQAABAIvIun2U40RHxKFnHEtcSTxDvoHwIAAAgzsuALFVPytaX43CSIxJBtLh8eBvxEqYPAQAAxNk04FjiDlkGhFghErZX61KZ1crBNzYAAIAYMYt4irgcvVWIZJMt3hvCl1++Lrff4hseAABAJOGz5g2h3g94Lk5iRLKL1imyV+s+gUumAQAA2F8CfIt4kLiOOBUnLyLVROsYfuJL2fqDTN/ixQEAAIAVuN/3OXmm8NlyDE5aBEIVrjOIO2VjPJaYAgAAMLIMlK+v+RVxFk5SBCK4aB1PXEn8Uv40gn4tAAAAGtnEaKEuuu5HfAsnJwJhXrZOJM6R47TjsMgUAABSNls1XkrVufJswPU1CIRNsnWUHK8dKhsYM1FGBACApGSOrF6kEcNlVeNonIQIRORliycRr5FrH1BGBACA5Cn//VG+tl+LCUAEIrZZrZOJ84lbieeR1QIAgITLVr1IDJCv5aeg/IdAxG92i6/peZXIIGaidwsAAOKmlypHtni8Lvtrv42TC4FIPNm6gLiZGCbXP2TiBQ4AAGKyUf1l2U/1M+JCnFAIRHKIFi81PV2oF3veQjwja/144QMAgMj1U/ES6Z8L9U7aM7D8E4FIDek6VjbKP0pMILLkJmCUEwEAwPz1NCxUE4nfyQb1Y3HSIBCQLd6p8l25Dfhx4jUpXHjhBACAwBkqvkj5CeIu4mp+LcWJgkAgAskWb5I/S6a0uZz4eyIdL6YAAODtY31KTm1fRpyNTeoIBCJc8eL+rcHE23IyEeVEAEAyT/vNlq917xIPsFDhJEAgEJGWrfOIn8it8s/JzfLZEC4AQAIL1XT5WsaLPh8mfsqvdXjFRyAQsZKtk+Q6iKvlorzH5IvUbLxoAwDivDE9Tfad3iZfw/i17GS8siMQiHgWr1OJG4mRWAkBAIgTpss1Nbwf8DS8UiMQiESXLV4J0Vc2hvJaiBeIcbJ5Phcv+gAAmzNT6TKTPka+5gyQfaRYnYBAIJJauE6Qd259V/Y5cPP8s3IfF4QLAGBWqCbJftD7iJtkue98rE1AIBCIHvniuxR/SIyQL5o4QAAAvkyWmakbuB0Br5wIBAJhXrhOI/rLS1H5BXW0XO7H8jUDBw0ASclM+T3+JvG8/N7/pbx94nS8MiIQCIT9wnW8XO53OfEDOf0zTL4IT0KJEYCELPFNlv1SfBny7cT18nv8HCzyRCAQiNhJF19mfRy/EBNnyhLjg/L2+pk4wACIK3KIscQQWeI7S37vHofLkBEIBCKxBOxsefkqlxh+S7woSw+8oTlDvuBjSSoA4S/rzJHXyfDAyp+Il+RuvIHye5AzUkfhVQmBQCCSN+PFvV3fkT0dP5UHwMNyRw5fdj0V5UYAQq5CeJ0YJcv0v5ITfNfItSynIyOFQCAQCG1f1wlykvE0eSWQPvP1ivzpHNkukEpZqWnEqzITxd8L35ffG6fJ75UT5PcOMlMIBAKBCEvETpJLC39M3EP8TvZ7vSXLjpOliM3AlUEgDpktn5v8HJ0in7Nvyb4ofi7/Wt41ehkLFL7jEQgEAhFr8fqWbNi9RJZJbpTrJX4jp6Oeklvs39StmUA2DEQi6zRTiv6bcjpvpHwODpbPyZ/K5+glskcRk3oIBAKBSEj5OkaumOByysnEt2WPCl8u+z15N9o9shTJKyfGy3vTIAwg0J16b8vnCpfu7iVukTvj+Dl1hnyO8XPtRPncQz8UAoFAIBC6rBhPXl0p10/8QmbEHpXNxa/Iex3flqWeSbJBP1Nesj1DTnblIlsW86xSrvxazJBfm0z5tZosp+7elqU67nf6g5TtwfJr/iP5HMBeKAQCgUAgoiRhx8pmYy5PXkxcITMZ18tS0ADZnMxZjgdkqegxWbJ8VpYtX5Fj9e9IScuQEjAbYnaEKM3WCdIk+ZiNk4/hGPmYPiUf4+HyMb9XTqoOkF+T6+XX6Er5NTtbfg1xGTECgUAgEAkoY0dLITtelo64hHSqnAg7U0raOXJKjC/LvUius+gne3Zu8JG2/5VZlofk/ZHcJP20zK6NlsLxqhznHy95VzZXT5EZnGxZ8tKTZ1B2pvthqu7vf1f3cV+Xn8sYWVobJT/X38mM4FB5WfA98t82QK4d4H/z/8jH4DvyMblAPkbn/P9Bw0wIGoa8aNNyoLBmGk15o2AUjCwAAJpj3XJMmgW8AAAAAElFTkSuQmCC"},30711:function(At){"use strict";At.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAgCAYAAAAbifjMAAADeUlEQVR4AYxSW2tUVxT+1tp7kjC0UChVsRcotJWOhVIraLVDA/a1b7WFvjSUFiGhlEL70LfQp9LaEkiTl740L4Wqv0AFLwleQAVRJxmjgqJRosYrgzqTs/3WPmeOc2Ji3Jy1197rrO9bt63oWJ+e3/NG7+Tuvg7TsscCQasp1ZCEkS3TeyvLIjOHAgHmkyog5eYj2fnZzLEynmMVCIK4KsQDopW7d+6P4DlWTrBl8ujLAe7dAJrEIQmur3fy8LL9oHcapinNzRAnAY4GB2Em8xD248Qz+5ETEFUFoxvQSALPJCw/SgL7MbNkP3KCEFw1MHoqNIsjp0MIWrl9b3bJftCTfvaJf4kRYbIgCwT4vs31019jkZUTeHFfMnojMHUTI7KJxDNtvI9Wp6ef6kdOsG/NupOq3d/RESmQ6RPYzgbw5QB7H8V+KDrWwXfW/ifSNRSjtnvAvqSkjqPVylyjWeiHfnhk9uMODri31/wsWjoAeICjbIPZTIBk1H2bzl3N34fOh7Cpk2S/SKssL34RRC9bJiE4ToITsYzUs6G8AyPVizdjP5S0WEiy+61Vs+pLn4u4hzEDJUEaHfEOV261wPcRypEAXAtJJt58/WgQ/32IQEa1DFhSYGPTUqRy48Hd0ZyAHE99Z0cvov73BdSHz2NqaBpTf9UxtX0Kk3/UUDf5/VSki0Ancuj4xhUT8cJt5S+HN0DDMJwAKojCszqF2F1CrWdVT7/Slz4LwIMnV7SC7OKPbiHIRE2bN9tBkoaUSltnBtc3aC+CeweDT5KHO8ThtRg1AwVqIQmo4WVgbnhjzYJrZ9pmOCPHt9PpEwrAaOIlphzBJBCvYzeHPvrXfE2Mz3SU1b8d+wqa/CC0qtcUaPVmRHBS636h1B+ds00zjVf/PPF+AvyjjBij80+MmmmeG6UexLrbGNP8bQp8TMn/waGMGFHAaE/EbIL+a4Np3Ski3XMCeLnFKMjF/lDinXVf/3XDWAop7nTJDB7jsFsmKVAgKjX/Cgp1Z4iozD09qJ8wEGKnBVE7cN66dWbb+kZ0WmR7QtDlJwgKkcSsJHLqBq79tC7OexFsNJlrPFz+du0cwTUrgxp8YWNXfvwgn3d0WmTLCeyfqIwLI1NqKK1csm7zbUuRoCQsAw3fxXe+bfWSdbfBpgsEXaLjzunApW/ee2bdBmzLYwAAAP//V59S+gAAAAZJREFUAwB5UwrzEPRfvQAAAABJRU5ErkJggg=="},64690:function(At){"use strict";At.exports="data:image/png;base64,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"},40517:function(At){"use strict";At.exports="data:image/png;base64,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"},89006:function(At){"use strict";At.exports="data:image/png;base64,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"},57581:function(At){"use strict";At.exports="data:image/png;base64,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"},80813:function(At,It,Te){"use strict";Te.d(It,{CR:function(){return le},Jh:function(){return Se},Q_:function(){return Je},XA:function(){return ne},ZT:function(){return He},_T:function(){return be},ev:function(){return he},mG:function(){return Ae},pi:function(){return Ne},pr:function(){return fe}});var Oe=function(nt,lt){return Oe=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(yt,ft){yt.__proto__=ft}||function(yt,ft){for(var ct in ft)Object.prototype.hasOwnProperty.call(ft,ct)&&(yt[ct]=ft[ct])},Oe(nt,lt)};function He(nt,lt){if(typeof lt!="function"&<!==null)throw new TypeError("Class extends value "+String(lt)+" is not a constructor or null");Oe(nt,lt);function yt(){this.constructor=nt}nt.prototype=lt===null?Object.create(lt):(yt.prototype=lt.prototype,new yt)}var Ne=function(){return Ne=Object.assign||function(lt){for(var yt,ft=1,ct=arguments.length;ft<ct;ft++){yt=arguments[ft];for(var vt in yt)Object.prototype.hasOwnProperty.call(yt,vt)&&(lt[vt]=yt[vt])}return lt},Ne.apply(this,arguments)};function be(nt,lt){var yt={};for(var ft in nt)Object.prototype.hasOwnProperty.call(nt,ft)&<.indexOf(ft)<0&&(yt[ft]=nt[ft]);if(nt!=null&&typeof Object.getOwnPropertySymbols=="function")for(var ct=0,ft=Object.getOwnPropertySymbols(nt);ct<ft.length;ct++)lt.indexOf(ft[ct])<0&&Object.prototype.propertyIsEnumerable.call(nt,ft[ct])&&(yt[ft[ct]]=nt[ft[ct]]);return yt}function _e(nt,lt,yt,ft){var ct=arguments.length,vt=ct<3?lt:ft===null?ft=Object.getOwnPropertyDescriptor(lt,yt):ft,Ut;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")vt=Reflect.decorate(nt,lt,yt,ft);else for(var Zt=nt.length-1;Zt>=0;Zt--)(Ut=nt[Zt])&&(vt=(ct<3?Ut(vt):ct>3?Ut(lt,yt,vt):Ut(lt,yt))||vt);return ct>3&&vt&&Object.defineProperty(lt,yt,vt),vt}function Me(nt,lt){return function(yt,ft){lt(yt,ft,nt)}}function ve(nt,lt,yt,ft,ct,vt){function Ut(Ht){if(Ht!==void 0&&typeof Ht!="function")throw new TypeError("Function expected");return Ht}for(var Zt=ft.kind,en=Zt==="getter"?"get":Zt==="setter"?"set":"value",mn=!lt&&nt?ft.static?nt:nt.prototype:null,Bt=lt||(mn?Object.getOwnPropertyDescriptor(mn,ft.name):{}),tn,on=!1,Mn=yt.length-1;Mn>=0;Mn--){var Dn={};for(var sn in ft)Dn[sn]=sn==="access"?{}:ft[sn];for(var sn in ft.access)Dn.access[sn]=ft.access[sn];Dn.addInitializer=function(Ht){if(on)throw new TypeError("Cannot add initializers after decoration has completed");vt.push(Ut(Ht||null))};var rn=(0,yt[Mn])(Zt==="accessor"?{get:Bt.get,set:Bt.set}:Bt[en],Dn);if(Zt==="accessor"){if(rn===void 0)continue;if(rn===null||typeof rn!="object")throw new TypeError("Object expected");(tn=Ut(rn.get))&&(Bt.get=tn),(tn=Ut(rn.set))&&(Bt.set=tn),(tn=Ut(rn.init))&&ct.unshift(tn)}else(tn=Ut(rn))&&(Zt==="field"?ct.unshift(tn):Bt[en]=tn)}mn&&Object.defineProperty(mn,ft.name,Bt),on=!0}function Ee(nt,lt,yt){for(var ft=arguments.length>2,ct=0;ct<lt.length;ct++)yt=ft?lt[ct].call(nt,yt):lt[ct].call(nt);return ft?yt:void 0}function Pe(nt){return typeof nt=="symbol"?nt:"".concat(nt)}function xe(nt,lt,yt){return typeof lt=="symbol"&&(lt=lt.description?"[".concat(lt.description,"]"):""),Object.defineProperty(nt,"name",{configurable:!0,value:yt?"".concat(yt," ",lt):lt})}function pe(nt,lt){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(nt,lt)}function Ae(nt,lt,yt,ft){function ct(vt){return vt instanceof yt?vt:new yt(function(Ut){Ut(vt)})}return new(yt||(yt=Promise))(function(vt,Ut){function Zt(Bt){try{mn(ft.next(Bt))}catch(tn){Ut(tn)}}function en(Bt){try{mn(ft.throw(Bt))}catch(tn){Ut(tn)}}function mn(Bt){Bt.done?vt(Bt.value):ct(Bt.value).then(Zt,en)}mn((ft=ft.apply(nt,lt||[])).next())})}function Se(nt,lt){var yt={label:0,sent:function(){if(vt[0]&1)throw vt[1];return vt[1]},trys:[],ops:[]},ft,ct,vt,Ut=Object.create((typeof Iterator=="function"?Iterator:Object).prototype);return Ut.next=Zt(0),Ut.throw=Zt(1),Ut.return=Zt(2),typeof Symbol=="function"&&(Ut[Symbol.iterator]=function(){return this}),Ut;function Zt(mn){return function(Bt){return en([mn,Bt])}}function en(mn){if(ft)throw new TypeError("Generator is already executing.");for(;Ut&&(Ut=0,mn[0]&&(yt=0)),yt;)try{if(ft=1,ct&&(vt=mn[0]&2?ct.return:mn[0]?ct.throw||((vt=ct.return)&&vt.call(ct),0):ct.next)&&!(vt=vt.call(ct,mn[1])).done)return vt;switch(ct=0,vt&&(mn=[mn[0]&2,vt.value]),mn[0]){case 0:case 1:vt=mn;break;case 4:return yt.label++,{value:mn[1],done:!1};case 5:yt.label++,ct=mn[1],mn=[0];continue;case 7:mn=yt.ops.pop(),yt.trys.pop();continue;default:if(vt=yt.trys,!(vt=vt.length>0&&vt[vt.length-1])&&(mn[0]===6||mn[0]===2)){yt=0;continue}if(mn[0]===3&&(!vt||mn[1]>vt[0]&&mn[1]<vt[3])){yt.label=mn[1];break}if(mn[0]===6&&yt.label<vt[1]){yt.label=vt[1],vt=mn;break}if(vt&&yt.label<vt[2]){yt.label=vt[2],yt.ops.push(mn);break}vt[2]&&yt.ops.pop(),yt.trys.pop();continue}mn=lt.call(nt,yt)}catch(Bt){mn=[6,Bt],ct=0}finally{ft=vt=0}if(mn[0]&5)throw mn[1];return{value:mn[0]?mn[1]:void 0,done:!0}}}var ce=Object.create?function(nt,lt,yt,ft){ft===void 0&&(ft=yt);var ct=Object.getOwnPropertyDescriptor(lt,yt);(!ct||("get"in ct?!lt.__esModule:ct.writable||ct.configurable))&&(ct={enumerable:!0,get:function(){return lt[yt]}}),Object.defineProperty(nt,ft,ct)}:function(nt,lt,yt,ft){ft===void 0&&(ft=yt),nt[ft]=lt[yt]};function te(nt,lt){for(var yt in nt)yt!=="default"&&!Object.prototype.hasOwnProperty.call(lt,yt)&&ce(lt,nt,yt)}function ne(nt){var lt=typeof Symbol=="function"&&Symbol.iterator,yt=lt&&nt[lt],ft=0;if(yt)return yt.call(nt);if(nt&&typeof nt.length=="number")return{next:function(){return nt&&ft>=nt.length&&(nt=void 0),{value:nt&&nt[ft++],done:!nt}}};throw new TypeError(lt?"Object is not iterable.":"Symbol.iterator is not defined.")}function le(nt,lt){var yt=typeof Symbol=="function"&&nt[Symbol.iterator];if(!yt)return nt;var ft=yt.call(nt),ct,vt=[],Ut;try{for(;(lt===void 0||lt-- >0)&&!(ct=ft.next()).done;)vt.push(ct.value)}catch(Zt){Ut={error:Zt}}finally{try{ct&&!ct.done&&(yt=ft.return)&&yt.call(ft)}finally{if(Ut)throw Ut.error}}return vt}function se(){for(var nt=[],lt=0;lt<arguments.length;lt++)nt=nt.concat(le(arguments[lt]));return nt}function fe(){for(var nt=0,lt=0,yt=arguments.length;lt<yt;lt++)nt+=arguments[lt].length;for(var ft=Array(nt),ct=0,lt=0;lt<yt;lt++)for(var vt=arguments[lt],Ut=0,Zt=vt.length;Ut<Zt;Ut++,ct++)ft[ct]=vt[Ut];return ft}function he(nt,lt,yt){if(yt||arguments.length===2)for(var ft=0,ct=lt.length,vt;ft<ct;ft++)(vt||!(ft in lt))&&(vt||(vt=Array.prototype.slice.call(lt,0,ft)),vt[ft]=lt[ft]);return nt.concat(vt||Array.prototype.slice.call(lt))}function ie(nt){return this instanceof ie?(this.v=nt,this):new ie(nt)}function ue(nt,lt,yt){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var ft=yt.apply(nt,lt||[]),ct,vt=[];return ct=Object.create((typeof AsyncIterator=="function"?AsyncIterator:Object).prototype),Zt("next"),Zt("throw"),Zt("return",Ut),ct[Symbol.asyncIterator]=function(){return this},ct;function Ut(Mn){return function(Dn){return Promise.resolve(Dn).then(Mn,tn)}}function Zt(Mn,Dn){ft[Mn]&&(ct[Mn]=function(sn){return new Promise(function(rn,Ht){vt.push([Mn,sn,rn,Ht])>1||en(Mn,sn)})},Dn&&(ct[Mn]=Dn(ct[Mn])))}function en(Mn,Dn){try{mn(ft[Mn](Dn))}catch(sn){on(vt[0][3],sn)}}function mn(Mn){Mn.value instanceof ie?Promise.resolve(Mn.value.v).then(Bt,tn):on(vt[0][2],Mn)}function Bt(Mn){en("next",Mn)}function tn(Mn){en("throw",Mn)}function on(Mn,Dn){Mn(Dn),vt.shift(),vt.length&&en(vt[0][0],vt[0][1])}}function me(nt){var lt,yt;return lt={},ft("next"),ft("throw",function(ct){throw ct}),ft("return"),lt[Symbol.iterator]=function(){return this},lt;function ft(ct,vt){lt[ct]=nt[ct]?function(Ut){return(yt=!yt)?{value:ie(nt[ct](Ut)),done:!1}:vt?vt(Ut):Ut}:vt}}function Ce(nt){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var lt=nt[Symbol.asyncIterator],yt;return lt?lt.call(nt):(nt=typeof ne=="function"?ne(nt):nt[Symbol.iterator](),yt={},ft("next"),ft("throw"),ft("return"),yt[Symbol.asyncIterator]=function(){return this},yt);function ft(vt){yt[vt]=nt[vt]&&function(Ut){return new Promise(function(Zt,en){Ut=nt[vt](Ut),ct(Zt,en,Ut.done,Ut.value)})}}function ct(vt,Ut,Zt,en){Promise.resolve(en).then(function(mn){vt({value:mn,done:Zt})},Ut)}}function Ie(nt,lt){return Object.defineProperty?Object.defineProperty(nt,"raw",{value:lt}):nt.raw=lt,nt}var Fe=Object.create?function(nt,lt){Object.defineProperty(nt,"default",{enumerable:!0,value:lt})}:function(nt,lt){nt.default=lt},Re=function(nt){return Re=Object.getOwnPropertyNames||function(lt){var yt=[];for(var ft in lt)Object.prototype.hasOwnProperty.call(lt,ft)&&(yt[yt.length]=ft);return yt},Re(nt)};function Ue(nt){if(nt&&nt.__esModule)return nt;var lt={};if(nt!=null)for(var yt=Re(nt),ft=0;ft<yt.length;ft++)yt[ft]!=="default"&&ce(lt,nt,yt[ft]);return Fe(lt,nt),lt}function Ge(nt){return nt&&nt.__esModule?nt:{default:nt}}function Je(nt,lt,yt,ft){if(yt==="a"&&!ft)throw new TypeError("Private accessor was defined without a getter");if(typeof lt=="function"?nt!==lt||!ft:!lt.has(nt))throw new TypeError("Cannot read private member from an object whose class did not declare it");return yt==="m"?ft:yt==="a"?ft.call(nt):ft?ft.value:lt.get(nt)}function Qe(nt,lt,yt,ft,ct){if(ft==="m")throw new TypeError("Private method is not writable");if(ft==="a"&&!ct)throw new TypeError("Private accessor was defined without a setter");if(typeof lt=="function"?nt!==lt||!ct:!lt.has(nt))throw new TypeError("Cannot write private member to an object whose class did not declare it");return ft==="a"?ct.call(nt,yt):ct?ct.value=yt:lt.set(nt,yt),yt}function rt(nt,lt){if(lt===null||typeof lt!="object"&&typeof lt!="function")throw new TypeError("Cannot use 'in' operator on non-object");return typeof nt=="function"?lt===nt:nt.has(lt)}function $e(nt,lt,yt){if(lt!=null){if(typeof lt!="object"&&typeof lt!="function")throw new TypeError("Object expected.");var ft,ct;if(yt){if(!Symbol.asyncDispose)throw new TypeError("Symbol.asyncDispose is not defined.");ft=lt[Symbol.asyncDispose]}if(ft===void 0){if(!Symbol.dispose)throw new TypeError("Symbol.dispose is not defined.");ft=lt[Symbol.dispose],yt&&(ct=ft)}if(typeof ft!="function")throw new TypeError("Object not disposable.");ct&&(ft=function(){try{ct.call(this)}catch(vt){return Promise.reject(vt)}}),nt.stack.push({value:lt,dispose:ft,async:yt})}else yt&&nt.stack.push({async:!0});return lt}var qe=typeof SuppressedError=="function"?SuppressedError:function(nt,lt,yt){var ft=new Error(yt);return ft.name="SuppressedError",ft.error=nt,ft.suppressed=lt,ft};function ot(nt){function lt(vt){nt.error=nt.hasError?new qe(vt,nt.error,"An error was suppressed during disposal."):vt,nt.hasError=!0}var yt,ft=0;function ct(){for(;yt=nt.stack.pop();)try{if(!yt.async&&ft===1)return ft=0,nt.stack.push(yt),Promise.resolve().then(ct);if(yt.dispose){var vt=yt.dispose.call(yt.value);if(yt.async)return ft|=2,Promise.resolve(vt).then(ct,function(Ut){return lt(Ut),ct()})}else ft|=1}catch(Ut){lt(Ut)}if(ft===1)return nt.hasError?Promise.reject(nt.error):Promise.resolve();if(nt.hasError)throw nt.error}return ct()}function at(nt,lt){return typeof nt=="string"&&/^\.\.?\//.test(nt)?nt.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i,function(yt,ft,ct,vt,Ut){return ft?lt?".jsx":".js":ct&&(!vt||!Ut)?yt:ct+vt+"."+Ut.toLowerCase()+"js"}):nt}var ut={__extends:He,__assign:Ne,__rest:be,__decorate:_e,__param:Me,__esDecorate:ve,__runInitializers:Ee,__propKey:Pe,__setFunctionName:xe,__metadata:pe,__awaiter:Ae,__generator:Se,__createBinding:ce,__exportStar:te,__values:ne,__read:le,__spread:se,__spreadArrays:fe,__spreadArray:he,__await:ie,__asyncGenerator:ue,__asyncDelegator:me,__asyncValues:Ce,__makeTemplateObject:Ie,__importStar:Ue,__importDefault:Ge,__classPrivateFieldGet:Je,__classPrivateFieldSet:Qe,__classPrivateFieldIn:rt,__addDisposableResource:$e,__disposeResources:ot,__rewriteRelativeImportExtension:at}}}]);
|
|
|
}()); |