!(function(){var jX=Object.defineProperty,WX=Object.defineProperties;var UX=Object.getOwnPropertyDescriptors;var j4=Object.getOwnPropertySymbols;var GX=Object.prototype.hasOwnProperty,HX=Object.prototype.propertyIsEnumerable;var Rx=Math.pow,gI=(sn,an,Be)=>an in sn?jX(sn,an,{enumerable:!0,configurable:!0,writable:!0,value:Be}):sn[an]=Be,tw=(sn,an)=>{for(var Be in an||(an={}))GX.call(an,Be)&&gI(sn,Be,an[Be]);if(j4)for(var Be of j4(an))HX.call(an,Be)&&gI(sn,Be,an[Be]);return sn},pI=(sn,an)=>WX(sn,UX(an));var ed=(sn,an,Be)=>gI(sn,typeof an!="symbol"?an+"":an,Be);(self.webpackChunk=self.webpackChunk||[]).push([[8823],{89489:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return Te}});var He=Be(92413),et=Be(59301),Ge={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"},ke=Ge,Ze=Be(7657),Oe=function(Ie,be){return et.createElement(Ze.Z,(0,He.Z)({},Ie,{ref:be,icon:ke}))},we=et.forwardRef(Oe),Te=we},59477:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return Te}});var He=Be(92413),et=Be(59301),Ge={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"},ke=Ge,Ze=Be(7657),Oe=function(Ie,be){return et.createElement(Ze.Z,(0,He.Z)({},Ie,{ref:be,icon:ke}))},we=et.forwardRef(Oe),Te=we},40001:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return Te}});var He=Be(92413),et=Be(59301),Ge={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M912 190h-69.9c-9.8 0-19.1 4.5-25.1 12.2L404.7 724.5 207 474a32 32 0 00-25.1-12.2H112c-6.7 0-10.4 7.7-6.3 12.9l273.9 347c12.8 16.2 37.4 16.2 50.3 0l488.4-618.9c4.1-5.1.4-12.8-6.3-12.8z"}}]},name:"check",theme:"outlined"},ke=Ge,Ze=Be(7657),Oe=function(Ie,be){return et.createElement(Ze.Z,(0,He.Z)({},Ie,{ref:be,icon:ke}))},we=et.forwardRef(Oe),Te=we},26227:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return Te}});var He=Be(92413),et=Be(59301),Ge={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"},ke=Ge,Ze=Be(7657),Oe=function(Ie,be){return et.createElement(Ze.Z,(0,He.Z)({},Ie,{ref:be,icon:ke}))},we=et.forwardRef(Oe),Te=we},49198:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return Te}});var He=Be(92413),et=Be(59301),Ge={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"},ke=Ge,Ze=Be(7657),Oe=function(Ie,be){return et.createElement(Ze.Z,(0,He.Z)({},Ie,{ref:be,icon:ke}))},we=et.forwardRef(Oe),Te=we},41464:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return Te}});var He=Be(92413),et=Be(59301),Ge={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"},ke=Ge,Ze=Be(7657),Oe=function(Ie,be){return et.createElement(Ze.Z,(0,He.Z)({},Ie,{ref:be,icon:ke}))},we=et.forwardRef(Oe),Te=we},87169:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return Te}});var He=Be(92413),et=Be(59301),Ge={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"},ke=Ge,Ze=Be(7657),Oe=function(Ie,be){return et.createElement(Ze.Z,(0,He.Z)({},Ie,{ref:be,icon:ke}))},we=et.forwardRef(Oe),Te=we},73331:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return Te}});var He=Be(92413),et=Be(59301),Ge={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M942.2 486.2Q889.47 375.11 816.7 305l-50.88 50.88C807.31 395.53 843.45 447.4 874.7 512 791.5 684.2 673.4 766 512 766q-72.67 0-133.87-22.38L323 798.75Q408 838 512 838q288.3 0 430.2-300.3a60.29 60.29 0 000-51.5zm-63.57-320.64L836 122.88a8 8 0 00-11.32 0L715.31 232.2Q624.86 186 512 186q-288.3 0-430.2 300.3a60.3 60.3 0 000 51.5q56.69 119.4 136.5 191.41L112.48 835a8 8 0 000 11.31L155.17 889a8 8 0 0011.31 0l712.15-712.12a8 8 0 000-11.32zM149.3 512C232.6 339.8 350.7 258 512 258c54.54 0 104.13 9.36 149.12 28.39l-70.3 70.3a176 176 0 00-238.13 238.13l-83.42 83.42C223.1 637.49 183.3 582.28 149.3 512zm246.7 0a112.11 112.11 0 01146.2-106.69L401.31 546.2A112 112 0 01396 512z"}},{tag:"path",attrs:{d:"M508 624c-3.46 0-6.87-.16-10.25-.47l-52.82 52.82a176.09 176.09 0 00227.42-227.42l-52.82 52.82c.31 3.38.47 6.79.47 10.25a111.94 111.94 0 01-112 112z"}}]},name:"eye-invisible",theme:"outlined"},ke=Ge,Ze=Be(7657),Oe=function(Ie,be){return et.createElement(Ze.Z,(0,He.Z)({},Ie,{ref:be,icon:ke}))},we=et.forwardRef(Oe),Te=we},15277:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return Te}});var He=Be(92413),et=Be(59301),Ge={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M942.2 486.2C847.4 286.5 704.1 186 512 186c-192.2 0-335.4 100.5-430.2 300.3a60.3 60.3 0 000 51.5C176.6 737.5 319.9 838 512 838c192.2 0 335.4-100.5 430.2-300.3 7.7-16.2 7.7-35 0-51.5zM512 766c-161.3 0-279.4-81.8-362.7-254C232.6 339.8 350.7 258 512 258c161.3 0 279.4 81.8 362.7 254C791.5 684.2 673.4 766 512 766zm-4-430c-97.2 0-176 78.8-176 176s78.8 176 176 176 176-78.8 176-176-78.8-176-176-176zm0 288c-61.9 0-112-50.1-112-112s50.1-112 112-112 112 50.1 112 112-50.1 112-112 112z"}}]},name:"eye",theme:"outlined"},ke=Ge,Ze=Be(7657),Oe=function(Ie,be){return et.createElement(Ze.Z,(0,He.Z)({},Ie,{ref:be,icon:ke}))},we=et.forwardRef(Oe),Te=we},52671:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return Te}});var He=Be(92413),et=Be(59301),Ge={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"},ke=Ge,Ze=Be(7657),Oe=function(Ie,be){return et.createElement(Ze.Z,(0,He.Z)({},Ie,{ref:be,icon:ke}))},we=et.forwardRef(Oe),Te=we},8657:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return Te}});var He=Be(92413),et=Be(59301),Ge={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"},ke=Ge,Ze=Be(7657),Oe=function(Ie,be){return et.createElement(Ze.Z,(0,He.Z)({},Ie,{ref:be,icon:ke}))},we=et.forwardRef(Oe),Te=we},56082:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return Te}});var He=Be(92413),et=Be(59301),Ge={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"},ke=Ge,Ze=Be(7657),Oe=function(Ie,be){return et.createElement(Ze.Z,(0,He.Z)({},Ie,{ref:be,icon:ke}))},we=et.forwardRef(Oe),Te=we},33853:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return Te}});var He=Be(92413),et=Be(59301),Ge={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"},ke=Ge,Ze=Be(7657),Oe=function(Ie,be){return et.createElement(Ze.Z,(0,He.Z)({},Ie,{ref:be,icon:ke}))},we=et.forwardRef(Oe),Te=we},15075:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return Te}});var He=Be(92413),et=Be(59301),Ge={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"},ke=Ge,Ze=Be(7657),Oe=function(Ie,be){return et.createElement(Ze.Z,(0,He.Z)({},Ie,{ref:be,icon:ke}))},we=et.forwardRef(Oe),Te=we},43531:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return Te}});var He=Be(92413),et=Be(59301),Ge={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"},ke=Ge,Ze=Be(7657),Oe=function(Ie,be){return et.createElement(Ze.Z,(0,He.Z)({},Ie,{ref:be,icon:ke}))},we=et.forwardRef(Oe),Te=we},61485:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return Te}});var He=Be(92413),et=Be(59301),Ge={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:"M623.6 316.7C593.6 290.4 554 276 512 276s-81.6 14.5-111.6 40.7C369.2 344 352 380.7 352 420v7.6c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V420c0-44.1 43.1-80 96-80s96 35.9 96 80c0 31.1-22 59.6-56.1 72.7-21.2 8.1-39.2 22.3-52.1 40.9-13.1 19-19.9 41.8-19.9 64.9V620c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8v-22.7a48.3 48.3 0 0130.9-44.8c59-22.7 97.1-74.7 97.1-132.5.1-39.3-17.1-76-48.3-103.3zM472 732a40 40 0 1080 0 40 40 0 10-80 0z"}}]},name:"question-circle",theme:"outlined"},ke=Ge,Ze=Be(7657),Oe=function(Ie,be){return et.createElement(Ze.Z,(0,He.Z)({},Ie,{ref:be,icon:ke}))},we=et.forwardRef(Oe),Te=we},38819:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return Te}});var He=Be(92413),et=Be(59301),Ge={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"},ke=Ge,Ze=Be(7657),Oe=function(Ie,be){return et.createElement(Ze.Z,(0,He.Z)({},Ie,{ref:be,icon:ke}))},we=et.forwardRef(Oe),Te=we},47472:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return Te}});var He=Be(92413),et=Be(59301),Ge={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M909.6 854.5L649.9 594.8C690.2 542.7 712 479 712 412c0-80.2-31.3-155.4-87.9-212.1-56.6-56.7-132-87.9-212.1-87.9s-155.5 31.3-212.1 87.9C143.2 256.5 112 331.8 112 412c0 80.1 31.3 155.5 87.9 212.1C256.5 680.8 331.8 712 412 712c67 0 130.6-21.8 182.7-62l259.7 259.6a8.2 8.2 0 0011.6 0l43.6-43.5a8.2 8.2 0 000-11.6zM570.4 570.4C528 612.7 471.8 636 412 636s-116-23.3-158.4-65.6C211.3 528 188 471.8 188 412s23.3-116.1 65.6-158.4C296 211.3 352.2 188 412 188s116.1 23.2 158.4 65.6S636 352.2 636 412s-23.3 116.1-65.6 158.4z"}}]},name:"search",theme:"outlined"},ke=Ge,Ze=Be(7657),Oe=function(Ie,be){return et.createElement(Ze.Z,(0,He.Z)({},Ie,{ref:be,icon:ke}))},we=et.forwardRef(Oe),Te=we},13722:function(sn){(function(Be,He){sn.exports=He()})(typeof self!="undefined"?self:this,function(){return function(an){var Be={};function He(et){if(Be[et])return Be[et].exports;var Ge=Be[et]={i:et,l:!1,exports:{}};return an[et].call(Ge.exports,Ge,Ge.exports,He),Ge.l=!0,Ge.exports}return He.m=an,He.c=Be,He.d=function(et,Ge,ke){He.o(et,Ge)||Object.defineProperty(et,Ge,{configurable:!1,enumerable:!0,get:ke})},He.n=function(et){var Ge=et&&et.__esModule?function(){return et.default}:function(){return et};return He.d(Ge,"a",Ge),Ge},He.o=function(et,Ge){return Object.prototype.hasOwnProperty.call(et,Ge)},He.p="",He(He.s=5)}([function(an,Be){function He(et,Ge,ke,Ze){return Ze===void 0&&(Ze="height"),ke==="center"?(et[Ze]+Ge[Ze])/2:et.height}an.exports={assign:Object.assign,getHeight:He}},function(an,Be,He){var et=He(3),Ge=function(){function ke(Oe,we){we===void 0&&(we={});var Te=this;Te.options=we,Te.rootNode=et(Oe,we)}var Ze=ke.prototype;return Ze.execute=function(){throw new Error("please override this method")},ke}();an.exports=Ge},function(an,Be,He){var et=He(4),Ge=["LR","RL","TB","BT","H","V"],ke=["LR","RL","H"],Ze=function(Re){return ke.indexOf(Re)>-1},Oe=Ge[0];an.exports=function(Te,Re,Ie){var be=Re.direction||Oe;if(Re.isHorizontal=Ze(be),be&&Ge.indexOf(be)===-1)throw new TypeError("Invalid direction: "+be);if(be===Ge[0])Ie(Te,Re);else if(be===Ge[1])Ie(Te,Re),Te.right2left();else if(be===Ge[2])Ie(Te,Re);else if(be===Ge[3])Ie(Te,Re),Te.bottom2top();else if(be===Ge[4]||be===Ge[5]){var Pe=et(Te,Re),je=Pe.left,ye=Pe.right;Ie(je,Re),Ie(ye,Re),Re.isHorizontal?je.right2left():je.bottom2top(),ye.translate(je.x-ye.x,je.y-ye.y),Te.x=je.x,Te.y=ye.y;var ie=Te.getBoundingBox();Re.isHorizontal?ie.top<0&&Te.translate(0,-ie.top):ie.left<0&&Te.translate(-ie.left,0)}var ae=Re.fixedRoot;return ae===void 0&&(ae=!0),ae&&Te.translate(-(Te.x+Te.width/2+Te.hgap),-(Te.y+Te.height/2+Te.vgap)),we(Te,Re),Te};function we(Te,Re){if(Re.radial){var Ie=Re.isHorizontal?["x","y"]:["y","x"],be=Ie[0],Pe=Ie[1],je={x:1/0,y:1/0},ye={x:-1/0,y:-1/0},ie=0;Te.DFTraverse(function(de){ie++;var ve=de.x,xe=de.y;je.x=Math.min(je.x,ve),je.y=Math.min(je.y,xe),ye.x=Math.max(ye.x,ve),ye.y=Math.max(ye.y,xe)});var ae=ye[Pe]-je[Pe];if(ae===0)return;var fe=Math.PI*2/ie;Te.DFTraverse(function(de){var ve=(de[Pe]-je[Pe])/ae*(Math.PI*2-fe)+fe,xe=de[be]-Te[be];de.x=Math.cos(ve)*xe,de.y=Math.sin(ve)*xe})}}},function(an,Be,He){var et=He(0),Ge=18,ke=Ge*2,Ze=Ge,Oe={getId:function(Ie){return Ie.id||Ie.name},getPreH:function(Ie){return Ie.preH||0},getPreV:function(Ie){return Ie.preV||0},getHGap:function(Ie){return Ie.hgap||Ze},getVGap:function(Ie){return Ie.vgap||Ze},getChildren:function(Ie){return Ie.children},getHeight:function(Ie){return Ie.height||ke},getWidth:function(Ie){var be=Ie.label||" ";return Ie.width||be.split("").length*Ge}};function we(Re,Ie){var be=this;if(be.vgap=be.hgap=0,Re instanceof we)return Re;be.data=Re;var Pe=Ie.getHGap(Re),je=Ie.getVGap(Re);return be.preH=Ie.getPreH(Re),be.preV=Ie.getPreV(Re),be.width=Ie.getWidth(Re),be.height=Ie.getHeight(Re),be.width+=be.preH,be.height+=be.preV,be.id=Ie.getId(Re),be.x=be.y=0,be.depth=0,be.children||(be.children=[]),be.addGap(Pe,je),be}et.assign(we.prototype,{isRoot:function(){return this.depth===0},isLeaf:function(){return this.children.length===0},addGap:function(Ie,be){var Pe=this;Pe.hgap+=Ie,Pe.vgap+=be,Pe.width+=2*Ie,Pe.height+=2*be},eachNode:function(Ie){for(var be=this,Pe=[be],je;je=Pe.shift();)Ie(je),Pe=je.children.concat(Pe)},DFTraverse:function(Ie){this.eachNode(Ie)},BFTraverse:function(Ie){for(var be=this,Pe=[be],je;je=Pe.shift();)Ie(je),Pe=Pe.concat(je.children)},getBoundingBox:function(){var Ie={left:Number.MAX_VALUE,top:Number.MAX_VALUE,width:0,height:0};return this.eachNode(function(be){Ie.left=Math.min(Ie.left,be.x),Ie.top=Math.min(Ie.top,be.y),Ie.width=Math.max(Ie.width,be.x+be.width),Ie.height=Math.max(Ie.height,be.y+be.height)}),Ie},translate:function(Ie,be){Ie===void 0&&(Ie=0),be===void 0&&(be=0),this.eachNode(function(Pe){Pe.x+=Ie,Pe.y+=be,Pe.x+=Pe.preH,Pe.y+=Pe.preV})},right2left:function(){var Ie=this,be=Ie.getBoundingBox();Ie.eachNode(function(Pe){Pe.x=Pe.x-(Pe.x-be.left)*2-Pe.width}),Ie.translate(be.width,0)},bottom2top:function(){var Ie=this,be=Ie.getBoundingBox();Ie.eachNode(function(Pe){Pe.y=Pe.y-(Pe.y-be.top)*2-Pe.height}),Ie.translate(0,be.height)}});function Te(Re,Ie,be){Ie===void 0&&(Ie={}),Ie=et.assign({},Oe,Ie);var Pe=new we(Re,Ie),je=[Pe],ye;if(!be&&!Re.collapsed){for(;ye=je.shift();)if(!ye.data.collapsed){var ie=Ie.getChildren(ye.data),ae=ie?ie.length:0;if(ye.children=new Array(ae),ie&&ae)for(var fe=0;feVe.low&&(Ve=Ve.nxt);var St=tt+Je.prelim+Je.w-(st+gt.prelim);St>0&&(st+=St,je(ze,Ke,Ve.index,St));var At=ae(Je),vt=ae(gt);At<=vt&&(Je=ie(Je),Je!==null&&(tt+=Je.mod)),At>=vt&&(gt=ye(gt),gt!==null&&(st+=gt.mod))}!Je&>?fe(ze,Ke,gt,st):Je&&!gt&&de(ze,Ke,Je,tt)}function je(ze,Ke,Ve,Je){ze.c[Ke].mod+=Je,ze.c[Ke].msel+=Je,ze.c[Ke].mser+=Je,he(ze,Ke,Ve,Je)}function ye(ze){return ze.cs===0?ze.tl:ze.c[0]}function ie(ze){return ze.cs===0?ze.tr:ze.c[ze.cs-1]}function ae(ze){return ze.y+ze.h}function fe(ze,Ke,Ve,Je){var tt=ze.c[0].el;tt.tl=Ve;var gt=Je-Ve.mod-ze.c[0].msel;tt.mod+=gt,tt.prelim-=gt,ze.c[0].el=ze.c[Ke].el,ze.c[0].msel=ze.c[Ke].msel}function de(ze,Ke,Ve,Je){var tt=ze.c[Ke].er;tt.tr=Ve;var gt=Je-Ve.mod-ze.c[Ke].mser;tt.mod+=gt,tt.prelim-=gt,ze.c[Ke].er=ze.c[Ke-1].er,ze.c[Ke].mser=ze.c[Ke-1].mser}function ve(ze){ze.prelim=(ze.c[0].prelim+ze.c[0].mod+ze.c[ze.cs-1].mod+ze.c[ze.cs-1].prelim+ze.c[ze.cs-1].w)/2-ze.w/2}function xe(ze,Ke){Ke+=ze.mod,ze.x=ze.prelim+Ke,pe(ze);for(var Ve=0;Ve=Ve.low;)Ve=Ve.nxt;return{low:ze,index:Ke,nxt:Ve}}Oe(we,Re);var Ne=He.fromNode(we,Re);return Ie(Ne),xe(Ne,0),Ze(Ne,we,Re),ke(we,Re),we}},function(an,Be,He){function et(be,Pe){be.prototype=Object.create(Pe.prototype),be.prototype.constructor=be,Ge(be,Pe)}function Ge(be,Pe){return Ge=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(je,ye){return je.__proto__=ye,je},Ge(be,Pe)}var ke=He(1),Ze=He(9),Oe=He(2),we=He(0),Te=function(be){function Pe(){return be.apply(this,arguments)||this}et(Pe,be);var je=Pe.prototype;return je.execute=function(){var ie=this;return ie.rootNode.width=0,Oe(ie.rootNode,ie.options,Ze)},Pe}(ke),Re={};function Ie(be,Pe){return Pe=we.assign({},Re,Pe),new Te(be,Pe).execute()}an.exports=Ie},function(an,Be,He){var et=He(0);function Ge(Oe,we){Oe===void 0&&(Oe=0),we===void 0&&(we=[]);var Te=this;Te.x=Te.y=0,Te.leftChild=Te.rightChild=null,Te.height=0,Te.children=we}var ke={isHorizontal:!0,nodeSep:20,nodeSize:20,rankSep:200,subTreeSep:10};function Ze(Oe,we,Te){Te?(we.x=Oe.x,we.y=Oe.y):(we.x=Oe.y,we.y=Oe.x),Oe.children.forEach(function(Re,Ie){Ze(Re,we.children[Ie],Te)})}an.exports=function(Oe,we){we===void 0&&(we={}),we=et.assign({},ke,we);var Te=0;function Re(ye){if(!ye)return null;ye.width=0,ye.depth&&ye.depth>Te&&(Te=ye.depth);var ie=ye.children,ae=ie.length,fe=new Ge(ye.height,[]);return ie.forEach(function(de,ve){var xe=Re(de);fe.children.push(xe),ve===0&&(fe.leftChild=xe),ve===ae-1&&(fe.rightChild=xe)}),fe.originNode=ye,fe.isLeaf=ye.isLeaf(),fe}function Ie(ye){if(ye.isLeaf||ye.children.length===0)ye.drawingDepth=Te;else{var ie=ye.children.map(function(fe){return Ie(fe)}),ae=Math.min.apply(null,ie);ye.drawingDepth=ae-1}return ye.drawingDepth}var be;function Pe(ye){ye.x=ye.drawingDepth*we.rankSep,ye.isLeaf?(ye.y=0,be&&(ye.y=be.y+be.height+we.nodeSep,ye.originNode.parent!==be.originNode.parent&&(ye.y+=we.subTreeSep)),be=ye):(ye.children.forEach(function(ie){Pe(ie)}),ye.y=(ye.leftChild.y+ye.rightChild.y)/2)}var je=Re(Oe);return Ie(je),Pe(je),Ze(je,Oe,we.isHorizontal),Oe}},function(an,Be,He){function et(je,ye){je.prototype=Object.create(ye.prototype),je.prototype.constructor=je,Ge(je,ye)}function Ge(je,ye){return Ge=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(ie,ae){return ie.__proto__=ae,ie},Ge(je,ye)}var ke=He(1),Ze=He(11),Oe=He(4),we=He(0),Te=["LR","RL","H"],Re=Te[0],Ie=function(je){function ye(){return je.apply(this,arguments)||this}et(ye,je);var ie=ye.prototype;return ie.execute=function(){var fe=this,de=fe.options,ve=fe.rootNode;de.isHorizontal=!0;var xe=de.indent,he=xe===void 0?20:xe,pe=de.dropCap,Se=pe===void 0?!0:pe,Ne=de.direction,ze=Ne===void 0?Re:Ne,Ke=de.align;if(ze&&Te.indexOf(ze)===-1)throw new TypeError("Invalid direction: "+ze);if(ze===Te[0])Ze(ve,he,Se,Ke);else if(ze===Te[1])Ze(ve,he,Se,Ke),ve.right2left();else if(ze===Te[2]){var Ve=Oe(ve,de),Je=Ve.left,tt=Ve.right;Ze(Je,he,Se,Ke),Je.right2left(),Ze(tt,he,Se,Ke);var gt=Je.getBoundingBox();tt.translate(gt.width,0),ve.x=tt.x-ve.width/2}return ve},ye}(ke),be={};function Pe(je,ye){return ye=we.assign({},be,ye),new Ie(je,ye).execute()}an.exports=Pe},function(an,Be,He){var et=He(0);function Ge(ke,Ze,Oe,we,Te){var Re=(typeof Oe=="function"?Oe(ke):Oe)*ke.depth;if(!we)try{if(ke.id===ke.parent.children[0].id){ke.x+=Re,ke.y=Ze?Ze.y:0;return}}catch(Pe){}if(ke.x+=Re,Ze){if(ke.y=Ze.y+et.getHeight(Ze,ke,Te),Ze.parent&&ke.parent.id!==Ze.parent.id){var Ie=Ze.parent,be=Ie.y+et.getHeight(Ie,ke,Te);ke.y=be>ke.y?be:ke.y}}else ke.y=0}an.exports=function(ke,Ze,Oe,we){var Te=null;ke.eachNode(function(Re){Ge(Re,Te,Ze,Oe,we),Te=Re})}},function(an,Be,He){function et(be,Pe){be.prototype=Object.create(Pe.prototype),be.prototype.constructor=be,Ge(be,Pe)}function Ge(be,Pe){return Ge=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(je,ye){return je.__proto__=ye,je},Ge(be,Pe)}var ke=He(1),Ze=He(13),Oe=He(2),we=He(0),Te=function(be){function Pe(){return be.apply(this,arguments)||this}et(Pe,be);var je=Pe.prototype;return je.execute=function(){var ie=this;return Oe(ie.rootNode,ie.options,Ze)},Pe}(ke),Re={};function Ie(be,Pe){return Pe=we.assign({},Re,Pe),new Te(be,Pe).execute()}an.exports=Ie},function(an,Be,He){var et=He(0);function Ge(Oe,we){var Te=0;return Oe.children.length?Oe.children.forEach(function(Re){Te+=Ge(Re,we)}):Te=Oe.height,Oe._subTreeSep=we.getSubTreeSep(Oe.data),Oe.totalHeight=Math.max(Oe.height,Te)+2*Oe._subTreeSep,Oe.totalHeight}function ke(Oe){var we=Oe.children,Te=we.length;if(Te){we.forEach(function(ye){ke(ye)});var Re=we[0],Ie=we[Te-1],be=Ie.y-Re.y+Ie.height,Pe=0;if(we.forEach(function(ye){Pe+=ye.totalHeight}),be>Oe.height)Oe.y=Re.y+be/2-Oe.height/2;else if(we.length!==1||Oe.height>Pe){var je=Oe.y+(Oe.height-be)/2-Re.y;we.forEach(function(ye){ye.translate(0,je)})}else Oe.y=(Re.y+Re.height/2+Ie.y+Ie.height/2)/2-Oe.height/2}}var Ze={getSubTreeSep:function(){return 0}};an.exports=function(Oe,we){we===void 0&&(we={}),we=et.assign({},Ze,we),Oe.parent={x:0,width:0,height:0,y:0},Oe.BFTraverse(function(Te){Te.x=Te.parent.x+Te.parent.width}),Oe.parent=null,Ge(Oe,we),Oe.startY=0,Oe.y=Oe.totalHeight/2-Oe.height/2,Oe.eachNode(function(Te){var Re=Te.children,Ie=Re.length;if(Ie){var be=Re[0];if(be.startY=Te.startY+Te._subTreeSep,Ie===1)be.y=Te.y+Te.height/2-be.height/2;else{be.y=be.startY+be.totalHeight/2-be.height/2;for(var Pe=1;Peae.maximum)throw new Error("defaultValue must be between minimum and maximum, not: "+ae.defaultValue);var fe=go.Shape._FigureParameters[ye];fe||(fe=[],go.Shape._FigureParameters[ye]=fe),fe[ie]=ae};var an=[];function Be(ye,ie){var ae=an.pop();return ae===void 0?new go.Point(ye,ie):(ae.x=ye,ae.y=ie,ae)}function He(){var ye=an.pop();return ye===void 0?new go.Point:ye}function et(ye){an.push(ye)}function Ge(ye,ie,ae,fe,de,ve,xe,he,pe){pe||(pe=new go.Point);var Se=ye-ae,Ne=de-xe,ze=NaN,Ke=NaN;if(Se===0)if(Ne===0)ye===ae&&(ze=ye,Ke=ie);else{var Ve=(ve-he)/Ne,Je=ve-Ve*de;ze=ye,Ke=Ve*ze+Je}else if(Ne===0){var tt=(ie-fe)/Se,gt=ie-tt*ye;ze=de,Ke=tt*ze+gt}else{var tt=(ie-fe)/Se,Ve=(ve-he)/Ne,gt=ie-tt*ye,Je=ve-Ve*de;ze=(Je-gt)/(tt-Ve),Ke=tt*ze+gt}return pe.x=ze,pe.y=Ke,pe}function ke(ye,ie,ae,fe,de,ve,xe,he,pe,Se,Ne,ze,Ke,Ve){var Je=1-pe,tt=pe,gt=ye*Je+ae*tt,st=ie*Je+fe*tt,St=ae*Je+de*tt,At=fe*Je+ve*tt,vt=de*Je+xe*tt,Tt=ve*Je+he*tt,bt=gt*Je+St*tt,Et=st*Je+At*tt,lt=St*Je+vt*tt,Nt=At*Je+Tt*tt,Zt=bt*Je+lt*tt,Ut=Et*Je+Nt*tt;Se.x=gt,Se.y=st,Ne.x=bt,Ne.y=Et,ze.x=Zt,ze.y=Ut,Ke.x=lt,Ke.y=Nt,Ve.x=vt,Ve.y=Tt}var Ze=new go.Spot(.156,.156),Oe=new go.Spot(.844,.844),we=4*((Math.sqrt(2)-1)/3);go.Shape.setFigureParameter("RoundedRectangle",0,new sn("CornerRounding",5)),go.Shape.defineFigureGenerator("RoundedRectangle",function(ye,ie,ae){var fe=ye?ye.parameter1:NaN;(isNaN(fe)||fe<0)&&(fe=5),fe=Math.min(fe,ie/3),fe=Math.min(fe,ae/3);var de=fe*we,ve=new go.Geometry().add(new go.PathFigure(fe,0,!0).add(new go.PathSegment(go.PathSegment.Line,ie-fe,0)).add(new go.PathSegment(go.PathSegment.Bezier,ie,fe,ie-de,0,ie,de)).add(new go.PathSegment(go.PathSegment.Line,ie,ae-fe)).add(new go.PathSegment(go.PathSegment.Bezier,ie-fe,ae,ie,ae-de,ie-de,ae)).add(new go.PathSegment(go.PathSegment.Line,fe,ae)).add(new go.PathSegment(go.PathSegment.Bezier,0,ae-fe,de,ae,0,ae-de)).add(new go.PathSegment(go.PathSegment.Line,0,fe)).add(new go.PathSegment(go.PathSegment.Bezier,fe,0,0,de,de,0).close()));return de>1&&(ve.spot1=new go.Spot(0,0,de,de),ve.spot2=new go.Spot(1,1,-de,-de)),ve}),go.Shape.defineFigureGenerator("Border","RoundedRectangle"),go.Shape.defineFigureGenerator("TriangleRight",function(ye,ie,ae){return new go.Geometry().add(new go.PathFigure(0,0).add(new go.PathSegment(go.PathSegment.Line,ie,.5*ae)).add(new go.PathSegment(go.PathSegment.Line,0,ae).close())).setSpots(0,.25,.5,.75)}),go.Shape.defineFigureGenerator("TriangleDown",function(ye,ie,ae){return new go.Geometry().add(new go.PathFigure(0,0).add(new go.PathSegment(go.PathSegment.Line,ie,0)).add(new go.PathSegment(go.PathSegment.Line,.5*ie,ae).close())).setSpots(.25,0,.75,.5)}),go.Shape.defineFigureGenerator("TriangleLeft",function(ye,ie,ae){return new go.Geometry().add(new go.PathFigure(ie,ae).add(new go.PathSegment(go.PathSegment.Line,0,.5*ae)).add(new go.PathSegment(go.PathSegment.Line,ie,0).close())).setSpots(.5,.25,1,.75)}),go.Shape.defineFigureGenerator("TriangleUp",function(ye,ie,ae){return new go.Geometry().add(new go.PathFigure(ie,ae).add(new go.PathSegment(go.PathSegment.Line,0,ae)).add(new go.PathSegment(go.PathSegment.Line,.5*ie,0).close())).setSpots(.25,.5,.75,1)}),go.Shape.defineFigureGenerator("Triangle","TriangleUp"),go.Shape.defineFigureGenerator("Diamond",function(ye,ie,ae){return new go.Geometry().add(new go.PathFigure(.5*ie,0).add(new go.PathSegment(go.PathSegment.Line,0,.5*ae)).add(new go.PathSegment(go.PathSegment.Line,.5*ie,ae)).add(new go.PathSegment(go.PathSegment.Line,ie,.5*ae).close())).setSpots(.25,.25,.75,.75)}),go.Shape.defineFigureGenerator("LineH",function(ye,ie,ae){var fe=new go.Geometry(go.Geometry.Line);return fe.startX=0,fe.startY=ae/2,fe.endX=ie,fe.endY=ae/2,fe}),go.Shape.defineFigureGenerator("LineV",function(ye,ie,ae){var fe=new go.Geometry(go.Geometry.Line);return fe.startX=ie/2,fe.startY=0,fe.endX=ie/2,fe.endY=ae,fe}),go.Shape.defineFigureGenerator("BarH","Rectangle"),go.Shape.defineFigureGenerator("BarV","Rectangle"),go.Shape.defineFigureGenerator("MinusLine","LineH"),go.Shape.defineFigureGenerator("PlusLine",function(ye,ie,ae){return new go.Geometry().add(new go.PathFigure(0,ae/2,!1).add(new go.PathSegment(go.PathSegment.Line,ie,ae/2)).add(new go.PathSegment(go.PathSegment.Move,ie/2,0)).add(new go.PathSegment(go.PathSegment.Line,ie/2,ae)))}),go.Shape.defineFigureGenerator("XLine",function(ye,ie,ae){return new go.Geometry().add(new go.PathFigure(0,ae,!1).add(new go.PathSegment(go.PathSegment.Line,ie,0)).add(new go.PathSegment(go.PathSegment.Move,0,0)).add(new go.PathSegment(go.PathSegment.Line,ie,ae)))}),go.Shape.defineFigureGenerator("LineRight",function(ye,ie,ae){return new go.Geometry().add(new go.PathFigure(.25*ie,0,!1).add(new go.PathSegment(go.PathSegment.Line,.75*ie,.5*ae)).add(new go.PathSegment(go.PathSegment.Line,.25*ie,ae)))}),go.Shape.defineFigureGenerator("LineDown",function(ye,ie,ae){return new go.Geometry().add(new go.PathFigure(0,.25*ae,!1).add(new go.PathSegment(go.PathSegment.Line,.5*ie,.75*ae)).add(new go.PathSegment(go.PathSegment.Line,ie,.25*ae)))}),go.Shape.defineFigureGenerator("LineLeft",function(ye,ie,ae){return new go.Geometry().add(new go.PathFigure(.75*ie,0,!1).add(new go.PathSegment(go.PathSegment.Line,.25*ie,.5*ae)).add(new go.PathSegment(go.PathSegment.Line,.75*ie,ae)))}),go.Shape.defineFigureGenerator("LineUp",function(ye,ie,ae){return new go.Geometry().add(new go.PathFigure(0,.75*ae,!1).add(new go.PathSegment(go.PathSegment.Line,.5*ie,.25*ae)).add(new go.PathSegment(go.PathSegment.Line,ie,.75*ae)))}),go.Shape.defineFigureGenerator("AsteriskLine",function(ye,ie,ae){var fe=.2/Math.SQRT2;return new go.Geometry().add(new go.PathFigure(fe*ie,(1-fe)*ae,!1).add(new go.PathSegment(go.PathSegment.Line,(1-fe)*ie,fe*ae)).add(new go.PathSegment(go.PathSegment.Move,fe*ie,fe*ae)).add(new go.PathSegment(go.PathSegment.Line,(1-fe)*ie,(1-fe)*ae)).add(new go.PathSegment(go.PathSegment.Move,0,ae/2)).add(new go.PathSegment(go.PathSegment.Line,ie,ae/2)).add(new go.PathSegment(go.PathSegment.Move,ie/2,0)).add(new go.PathSegment(go.PathSegment.Line,ie/2,ae)))}),go.Shape.defineFigureGenerator("CircleLine",function(ye,ie,ae){var fe=ie/2,de=new go.Geometry().add(new go.PathFigure(ie,ie/2,!1).add(new go.PathSegment(go.PathSegment.Arc,0,360,fe,fe,fe,fe).close()));return de.spot1=Ze,de.spot2=Oe,de.defaultStretch=go.GraphObject.Uniform,de}),go.Shape.defineFigureGenerator("Line1",function(ye,ie,ae){var fe=new go.Geometry(go.Geometry.Line);return fe.startX=0,fe.startY=0,fe.endX=ie,fe.endY=ae,fe}),go.Shape.defineFigureGenerator("Line2",function(ye,ie,ae){var fe=new go.Geometry(go.Geometry.Line);return fe.startX=ie,fe.startY=0,fe.endX=0,fe.endY=ae,fe}),go.Shape.defineFigureGenerator("Curve1",function(ye,ie,ae){return new go.Geometry().add(new go.PathFigure(0,0,!1).add(new go.PathSegment(go.PathSegment.Bezier,ie,ae,we*ie,0,ie,(1-we)*ae)))}),go.Shape.defineFigureGenerator("Curve2",function(ye,ie,ae){return new go.Geometry().add(new go.PathFigure(0,0,!1).add(new go.PathSegment(go.PathSegment.Bezier,ie,ae,0,we*ae,(1-we)*ie,ae)))}),go.Shape.defineFigureGenerator("Curve3",function(ye,ie,ae){return new go.Geometry().add(new go.PathFigure(ie,0,!1).add(new go.PathSegment(go.PathSegment.Bezier,0,ae,ie,we*ae,we*ie,ae)))}),go.Shape.defineFigureGenerator("Curve4",function(ye,ie,ae){return new go.Geometry().add(new go.PathFigure(ie,0,!1).add(new go.PathSegment(go.PathSegment.Bezier,0,ae,(1-we)*ie,0,0,(1-we)*ae)))}),go.Shape.defineFigureGenerator("TriangleDownLeft",function(ye,ie,ae){return new go.Geometry().add(new go.PathFigure(0,0,!0).add(new go.PathSegment(go.PathSegment.Line,ie,ae)).add(new go.PathSegment(go.PathSegment.Line,0,ae).close())).setSpots(0,.5,.5,1)}),go.Shape.defineFigureGenerator("TriangleDownRight",function(ye,ie,ae){return new go.Geometry().add(new go.PathFigure(ie,0,!0).add(new go.PathSegment(go.PathSegment.Line,ie,ae)).add(new go.PathSegment(go.PathSegment.Line,0,ae).close())).setSpots(.5,.5,1,1)}),go.Shape.defineFigureGenerator("TriangleUpLeft",function(ye,ie,ae){return new go.Geometry().add(new go.PathFigure(0,0,!0).add(new go.PathSegment(go.PathSegment.Line,ie,0)).add(new go.PathSegment(go.PathSegment.Line,0,ae).close())).setSpots(0,0,.5,.5)}),go.Shape.defineFigureGenerator("TriangleUpRight",function(ye,ie,ae){return new go.Geometry().add(new go.PathFigure(0,0,!0).add(new go.PathSegment(go.PathSegment.Line,ie,0)).add(new go.PathSegment(go.PathSegment.Line,ie,ae).close())).setSpots(.5,0,1,.5)}),go.Shape.defineFigureGenerator("RightTriangle","TriangleDownLeft"),go.Shape.setFigureParameter("Parallelogram1",0,new sn("Indent",.1,-.99,.99)),go.Shape.defineFigureGenerator("Parallelogram1",function(ye,ie,ae){var fe=ye?ye.parameter1:NaN;isNaN(fe)?fe=.1:fe<-1?fe=-1:fe>1&&(fe=1);var de=Math.abs(fe)*ie;if(fe===0){var ve=new go.Geometry(go.Geometry.Rectangle);return ve.startX=0,ve.startY=0,ve.endX=ie,ve.endY=ae,ve}else{var ve=new go.Geometry;return fe>0?ve.add(new go.PathFigure(de,0).add(new go.PathSegment(go.PathSegment.Line,ie,0)).add(new go.PathSegment(go.PathSegment.Line,ie-de,ae)).add(new go.PathSegment(go.PathSegment.Line,0,ae).close())):ve.add(new go.PathFigure(0,0).add(new go.PathSegment(go.PathSegment.Line,ie-de,0)).add(new go.PathSegment(go.PathSegment.Line,ie,ae)).add(new go.PathSegment(go.PathSegment.Line,de,ae).close())),deie&&(fe=ie);var de=Math.abs(fe);if(fe===0){var ve=new go.Geometry(go.Geometry.Rectangle);return ve.startX=0,ve.startY=0,ve.endX=ie,ve.endY=ae,ve}else{var ve=new go.Geometry;return fe>0?ve.add(new go.PathFigure(de,0).add(new go.PathSegment(go.PathSegment.Line,ie,0)).add(new go.PathSegment(go.PathSegment.Line,ie-de,ae)).add(new go.PathSegment(go.PathSegment.Line,0,ae).close())):ve.add(new go.PathFigure(0,0).add(new go.PathSegment(go.PathSegment.Line,ie-de,0)).add(new go.PathSegment(go.PathSegment.Line,ie,ae)).add(new go.PathSegment(go.PathSegment.Line,de,ae).close())),de.5&&(fe=.5);var de=Math.abs(fe)*ie;if(fe===0){var ve=new go.Geometry(go.Geometry.Rectangle);return ve.startX=0,ve.startY=0,ve.endX=ie,ve.endY=ae,ve}else{var ve=new go.Geometry;return fe>0?ve.add(new go.PathFigure(de,0).add(new go.PathSegment(go.PathSegment.Line,ie-de,0)).add(new go.PathSegment(go.PathSegment.Line,ie,ae)).add(new go.PathSegment(go.PathSegment.Line,0,ae).close())):ve.add(new go.PathFigure(0,0).add(new go.PathSegment(go.PathSegment.Line,ie,0)).add(new go.PathSegment(go.PathSegment.Line,ie-de,ae)).add(new go.PathSegment(go.PathSegment.Line,de,ae).close())),deie&&(fe=ie/2);var de=Math.abs(fe);if(fe===0){var ve=new go.Geometry(go.Geometry.Rectangle);return ve.startX=0,ve.startY=0,ve.endX=ie,ve.endY=ae,ve}else{var ve=new go.Geometry;return fe>0?ve.add(new go.PathFigure(de,0).add(new go.PathSegment(go.PathSegment.Line,ie-de,0)).add(new go.PathSegment(go.PathSegment.Line,ie,ae)).add(new go.PathSegment(go.PathSegment.Line,0,ae).close())):ve.add(new go.PathFigure(0,0).add(new go.PathSegment(go.PathSegment.Line,ie,0)).add(new go.PathSegment(go.PathSegment.Line,ie-de,ae)).add(new go.PathSegment(go.PathSegment.Line,de,ae).close())),deie&&(fe=ie/2);var de=Math.abs(fe);if(fe===0){var ve=new go.Geometry(go.Geometry.Rectangle);return ve.startX=0,ve.startY=0,ve.endX=ie,ve.endY=ae,ve}else{var ve=new go.Geometry;return fe>0?ve.add(new go.PathFigure(0,0).add(new go.PathSegment(go.PathSegment.Line,ie,0)).add(new go.PathSegment(go.PathSegment.Line,ie-de,ae)).add(new go.PathSegment(go.PathSegment.Line,de,ae).close())):ve.add(new go.PathFigure(de,0).add(new go.PathSegment(go.PathSegment.Line,ie-de,0)).add(new go.PathSegment(go.PathSegment.Line,ie,ae)).add(new go.PathSegment(go.PathSegment.Line,0,ae).close())),de0&&(xe.add(new go.PathSegment(go.PathSegment.Move,ie/2+he,ie/2)),xe.add(new go.PathSegment(go.PathSegment.Arc,0,-360,de,de,he,he).close())),ve.spot1=Ze,ve.spot2=Oe,ve.defaultStretch=go.GraphObject.Uniform,ve}),go.Shape.defineFigureGenerator("Cloud",function(ye,ie,ae){return new go.Geometry().add(new go.PathFigure(.08034461*ie,.1944299*ae,!0).add(new go.PathSegment(go.PathSegment.Bezier,.2008615*ie,.05349299*ae,-.09239631*ie,.07836421*ae,.1406031*ie,-.0542823*ae)).add(new go.PathSegment(go.PathSegment.Bezier,.4338609*ie,.074219*ae,.2450511*ie,-.00697547*ae,.3776197*ie,-.01112067*ae)).add(new go.PathSegment(go.PathSegment.Bezier,.6558228*ie,.07004196*ae,.4539471*ie,0,.6066018*ie,-.02526587*ae)).add(new go.PathSegment(go.PathSegment.Bezier,.8921095*ie,.08370865*ae,.6914277*ie,-.01904177*ae,.8921095*ie,-.01220843*ae)).add(new go.PathSegment(go.PathSegment.Bezier,.9147671*ie,.3194596*ae,1.036446*ie,.04105738*ae,1.020377*ie,.3022052*ae)).add(new go.PathSegment(go.PathSegment.Bezier,.9082935*ie,.562044*ae,1.04448*ie,.360238*ae,.992256*ie,.5219009*ae)).add(new go.PathSegment(go.PathSegment.Bezier,.9212406*ie,.8217117*ae,1.032337*ie,.5771781*ae,1.018411*ie,.8120651*ae)).add(new go.PathSegment(go.PathSegment.Bezier,.7592566*ie,.9156953*ae,1.028411*ie,.9571472*ae,.8556702*ie,1.052487*ae)).add(new go.PathSegment(go.PathSegment.Bezier,.5101666*ie,.9310455*ae,.7431877*ie,1.009325*ae,.5624123*ie,1.021761*ae)).add(new go.PathSegment(go.PathSegment.Bezier,.2609328*ie,.9344623*ae,.4820677*ie,1.031761*ae,.3030112*ie,1.002796*ae)).add(new go.PathSegment(go.PathSegment.Bezier,.08034461*ie,.870098*ae,.2329994*ie,1.01518*ae,.03213784*ie,1.01518*ae)).add(new go.PathSegment(go.PathSegment.Bezier,.06829292*ie,.6545475*ae,-.02812061*ie,.9032597*ae,-.01205169*ie,.6835638*ae)).add(new go.PathSegment(go.PathSegment.Bezier,.06427569*ie,.4265613*ae,-.01812061*ie,.6089503*ae,-.00606892*ie,.4555777*ae)).add(new go.PathSegment(go.PathSegment.Bezier,.08034461*ie,.1944299*ae,-.01606892*ie,.3892545*ae,-.01205169*ie,.1944299*ae))).setSpots(.1,.1,.9,.9)}),go.Shape.defineFigureGenerator("StopSign",function(ye,ie,ae){var fe=1/(Math.SQRT2+2);return new go.Geometry().add(new go.PathFigure(fe*ie,0,!0).add(new go.PathSegment(go.PathSegment.Line,(1-fe)*ie,0)).add(new go.PathSegment(go.PathSegment.Line,ie,fe*ae)).add(new go.PathSegment(go.PathSegment.Line,ie,(1-fe)*ae)).add(new go.PathSegment(go.PathSegment.Line,(1-fe)*ie,ae)).add(new go.PathSegment(go.PathSegment.Line,fe*ie,ae)).add(new go.PathSegment(go.PathSegment.Line,0,(1-fe)*ae)).add(new go.PathSegment(go.PathSegment.Line,0,fe*ae).close())).setSpots(fe/2,fe/2,1-fe/2,1-fe/2)}),go.Shape.setFigureParameter("Pie",0,new sn("Start",0,-360,360)),go.Shape.setFigureParameter("Pie",1,new sn("Sweep",315,-360,360)),go.Shape.defineFigureGenerator("Pie",function(ye,ie,ae){var fe=ye?ye.parameter1:NaN,de=ye?ye.parameter2:NaN;isNaN(fe)&&(fe=0),isNaN(de)&&(de=315);var ve=fe%360;ve<0&&(ve+=360);var xe=de%360,he=Math.min(ie,ae)/2;return new go.Geometry().add(new go.PathFigure(he,he).add(new go.PathSegment(go.PathSegment.Arc,ve,xe,he,he,he,he).close()))}),go.Shape.defineFigureGenerator("PiePiece",function(ye,ie,ae){var fe=we/Math.SQRT2*.5,de=Math.SQRT2/2,ve=1-Math.SQRT2/2;return new go.Geometry().add(new go.PathFigure(ie,ae,!0).add(new go.PathSegment(go.PathSegment.Bezier,de*ie,ve*ae,ie,(1-fe)*ae,(de+fe)*ie,(ve+fe)*ae)).add(new go.PathSegment(go.PathSegment.Line,0,ae).close()))}),go.Shape.setFigureParameter("ThickCross",0,new sn("Thickness",30)),go.Shape.defineFigureGenerator("ThickCross",function(ye,ie,ae){var fe=ye?ye.parameter1:NaN;(isNaN(fe)||fe<0)&&(fe=30);var de=Math.min(fe,ie)/2,ve=ie/2,xe=ae/2;return new go.Geometry().add(new go.PathFigure(ve-de,0,!0).add(new go.PathSegment(go.PathSegment.Line,ve+de,0)).add(new go.PathSegment(go.PathSegment.Line,ve+de,xe-de)).add(new go.PathSegment(go.PathSegment.Line,ie,xe-de)).add(new go.PathSegment(go.PathSegment.Line,ie,xe+de)).add(new go.PathSegment(go.PathSegment.Line,ve+de,xe+de)).add(new go.PathSegment(go.PathSegment.Line,ve+de,ae)).add(new go.PathSegment(go.PathSegment.Line,ve-de,ae)).add(new go.PathSegment(go.PathSegment.Line,ve-de,xe+de)).add(new go.PathSegment(go.PathSegment.Line,0,xe+de)).add(new go.PathSegment(go.PathSegment.Line,0,xe-de)).add(new go.PathSegment(go.PathSegment.Line,ve-de,xe-de).close()))}),go.Shape.setFigureParameter("ThinCross",0,new sn("Thickness",10)),go.Shape.defineFigureGenerator("ThinCross",function(ye,ie,ae){var fe=ye?ye.parameter1:NaN;(isNaN(fe)||fe<0)&&(fe=10);var de=Math.min(fe,ie)/2,ve=ie/2,xe=ae/2;return new go.Geometry().add(new go.PathFigure(ve-de,0,!0).add(new go.PathSegment(go.PathSegment.Line,ve+de,0)).add(new go.PathSegment(go.PathSegment.Line,ve+de,xe-de)).add(new go.PathSegment(go.PathSegment.Line,ie,xe-de)).add(new go.PathSegment(go.PathSegment.Line,ie,xe+de)).add(new go.PathSegment(go.PathSegment.Line,ve+de,xe+de)).add(new go.PathSegment(go.PathSegment.Line,ve+de,ae)).add(new go.PathSegment(go.PathSegment.Line,ve-de,ae)).add(new go.PathSegment(go.PathSegment.Line,ve-de,xe+de)).add(new go.PathSegment(go.PathSegment.Line,0,xe+de)).add(new go.PathSegment(go.PathSegment.Line,0,xe-de)).add(new go.PathSegment(go.PathSegment.Line,ve-de,xe-de).close()))}),go.Shape.setFigureParameter("ThickX",0,new sn("Thickness",30)),go.Shape.defineFigureGenerator("ThickX",function(ye,ie,ae){var fe=ye?ye.parameter1:NaN;if((isNaN(fe)||fe<0)&&(fe=30),ie===0||ae===0){var de=new go.Geometry(go.Geometry.Rectangle);return de.startX=0,de.startY=0,de.endX=ie,de.endY=ae,de}else{var ve=ie/2,xe=ae/2,he=Math.atan2(ae,ie),pe=fe-Math.min(Math.cos(he)*fe/2,ve),Se=fe-Math.min(Math.sin(he)*fe/2,xe),de=new go.Geometry,Ne=new go.PathFigure(pe,0,!0);return de.add(Ne),Ne.add(new go.PathSegment(go.PathSegment.Line,ve,.2*ae)),Ne.add(new go.PathSegment(go.PathSegment.Line,ie-pe,0)),Ne.add(new go.PathSegment(go.PathSegment.Line,ie,Se)),Ne.add(new go.PathSegment(go.PathSegment.Line,.8*ie,xe)),Ne.add(new go.PathSegment(go.PathSegment.Line,ie,ae-Se)),Ne.add(new go.PathSegment(go.PathSegment.Line,ie-pe,ae)),Ne.add(new go.PathSegment(go.PathSegment.Line,ve,.8*ae)),Ne.add(new go.PathSegment(go.PathSegment.Line,pe,ae)),Ne.add(new go.PathSegment(go.PathSegment.Line,0,ae-Se)),Ne.add(new go.PathSegment(go.PathSegment.Line,.2*ie,xe)),Ne.add(new go.PathSegment(go.PathSegment.Line,0,Se).close()),de}}),go.Shape.setFigureParameter("ThinX",0,new sn("Thickness",10)),go.Shape.defineFigureGenerator("ThinX",function(ye,ie,ae){var fe=ye?ye.parameter1:NaN;(isNaN(fe)||fe<0)&&(fe=10);var de=new go.Geometry,ve=new go.PathFigure(.1*ie,0,!0);return de.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,.5*ie,.4*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.9*ie,0)),ve.add(new go.PathSegment(go.PathSegment.Line,ie,.1*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.6*ie,.5*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,ie,.9*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.9*ie,ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.5*ie,.6*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.1*ie,ae)),ve.add(new go.PathSegment(go.PathSegment.Line,0,.9*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.4*ie,.5*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,0,.1*ae).close()),de}),go.Shape.setFigureParameter("SquareIBeam",0,new sn("BeamWidth",.2,.1,.9)),go.Shape.defineFigureGenerator("SquareIBeam",function(ye,ie,ae){var fe=ye?ye.parameter1:NaN;isNaN(fe)&&(fe=.2);var de=new go.Geometry,ve=new go.PathFigure(0,0,!0);return de.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,ie,0)),ve.add(new go.PathSegment(go.PathSegment.Line,ie,fe*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,(.5+fe/2)*ie,fe*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,(.5+fe/2)*ie,(1-fe)*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,ie,(1-fe)*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,ie,ae)),ve.add(new go.PathSegment(go.PathSegment.Line,0,ae)),ve.add(new go.PathSegment(go.PathSegment.Line,0,(1-fe)*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,(.5-fe/2)*ie,(1-fe)*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,(.5-fe/2)*ie,fe*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,0,fe*ae).close()),de}),go.Shape.setFigureParameter("RoundedIBeam",0,new sn("Curviness",.5,.05,.65)),go.Shape.defineFigureGenerator("RoundedIBeam",function(ye,ie,ae){var fe=ye?ye.parameter1:NaN;isNaN(fe)&&(fe=.5);var de=new go.Geometry,ve=new go.PathFigure(0,0,!0);return de.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,ie,0)),ve.add(new go.PathSegment(go.PathSegment.Bezier,ie,ae,Math.abs(1-fe)*ie,.25*ae,Math.abs(1-fe)*ie,.75*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,0,ae)),ve.add(new go.PathSegment(go.PathSegment.Bezier,0,0,fe*ie,.75*ae,fe*ie,.25*ae).close()),de}),go.Shape.defineFigureGenerator("HalfEllipse",function(ye,ie,ae){return new go.Geometry().add(new go.PathFigure(0,0,!0).add(new go.PathSegment(go.PathSegment.Bezier,ie,.5*ae,we*ie,0,ie,(.5-we/2)*ae)).add(new go.PathSegment(go.PathSegment.Bezier,0,ae,ie,(.5+we/2)*ae,we*ie,ae).close())).setSpots(0,.156,.844,.844)}),go.Shape.defineFigureGenerator("Crescent",function(ye,ie,ae){return new go.Geometry().add(new go.PathFigure(0,0,!0).add(new go.PathSegment(go.PathSegment.Bezier,0,ae,ie,0,ie,ae)).add(new go.PathSegment(go.PathSegment.Bezier,0,0,.5*ie,.75*ae,.5*ie,.25*ae).close())).setSpots(.311,.266,.744,.744)}),go.Shape.defineFigureGenerator("Heart",function(ye,ie,ae){return new go.Geometry().add(new go.PathFigure(.5*ie,ae,!0).add(new go.PathSegment(go.PathSegment.Bezier,0,.3*ae,.1*ie,.8*ae,0,.5*ae)).add(new go.PathSegment(go.PathSegment.Bezier,.5*ie,.3*ae,0,0,.45*ie,0)).add(new go.PathSegment(go.PathSegment.Bezier,ie,.3*ae,.55*ie,0,ie,0)).add(new go.PathSegment(go.PathSegment.Bezier,.5*ie,ae,ie,.5*ae,.9*ie,.8*ae).close())).setSpots(.14,.29,.86,.78)}),go.Shape.defineFigureGenerator("Spade",function(ye,ie,ae){return new go.Geometry().add(new go.PathFigure(.5*ie,0,!0).add(new go.PathSegment(go.PathSegment.Line,.51*ie,.01*ae)).add(new go.PathSegment(go.PathSegment.Bezier,ie,.5*ae,.6*ie,.2*ae,ie,.25*ae)).add(new go.PathSegment(go.PathSegment.Bezier,.55*ie,.7*ae,ie,.8*ae,.6*ie,.8*ae)).add(new go.PathSegment(go.PathSegment.Bezier,.75*ie,ae,.5*ie,.75*ae,.55*ie,.95*ae)).add(new go.PathSegment(go.PathSegment.Line,.25*ie,ae)).add(new go.PathSegment(go.PathSegment.Bezier,.45*ie,.7*ae,.45*ie,.95*ae,.5*ie,.75*ae)).add(new go.PathSegment(go.PathSegment.Bezier,0,.5*ae,.4*ie,.8*ae,0,.8*ae)).add(new go.PathSegment(go.PathSegment.Bezier,.49*ie,.01*ae,0,.25*ae,.4*ie,.2*ae).close())).setSpots(.14,.26,.86,.78)}),go.Shape.defineFigureGenerator("Club",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(.4*ie,.6*ae,!0);fe.add(de),de.add(new go.PathSegment(go.PathSegment.Bezier,.15*ie,ae,.5*ie,.75*ae,.45*ie,.95*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.85*ie,ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,.6*ie,.6*ae,.55*ie,.95*ae,.5*ie,.75*ae));var ve=.2,xe=.3,he=0,pe=ve*we;return de.add(new go.PathSegment(go.PathSegment.Bezier,(.5+xe)*ie,(.5+ve+he)*ae,(.5-ve+xe)*ie,(.5+pe+he)*ae,(.5-pe+xe)*ie,(.5+ve+he)*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,(1-.5+ve+xe)*ie,(.5+he)*ae,(.5+pe+xe)*ie,(.5+ve+he)*ae,(.5+ve+xe)*ie,(.5+pe+he)*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,(.5+xe)*ie,(.5-ve+he)*ae,(1-.5+ve+xe)*ie,(.5-pe+he)*ae,(.5+pe+xe)*ie,(.5-ve+he)*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,.65*ie,.36771243*ae,(.5-pe+xe)*ie,(.5-ve+he)*ae,(.5-ve+xe+.05)*ie,(.5-pe+he-.02)*ae)),ve=.2,xe=0,he=-.3,pe=ve*we,de.add(new go.PathSegment(go.PathSegment.Bezier,(1-.5+ve+xe)*ie,(.5+he)*ae,(.5+pe+xe)*ie,(.5+ve+he)*ae,(.5+ve+xe)*ie,(.5+pe+he)*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,(.5+xe)*ie,(.5-ve+he)*ae,(1-.5+ve+xe)*ie,(.5-pe+he)*ae,(.5+pe+xe)*ie,(.5-ve+he)*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,(.5-ve+xe)*ie,(.5+he)*ae,(.5-pe+xe)*ie,(.5-ve+he)*ae,(.5-ve+xe)*ie,(.5-pe+he)*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,(.5-pe+xe)*ie,(.5+ve+he)*ae,(.5-ve+xe)*ie,(.5+pe+he)*ae,(.5-pe+xe)*ie,(.5+ve+he)*ae)),ve=.2,xe=-.3,he=0,pe=ve*we,de.add(new go.PathSegment(go.PathSegment.Bezier,(.5+xe)*ie,(.5-ve+he)*ae,(1-.5+ve+xe-.05)*ie,(.5-pe+he-.02)*ae,(.5+pe+xe)*ie,(.5-ve+he)*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,(.5-ve+xe)*ie,(.5+he)*ae,(.5-pe+xe)*ie,(.5-ve+he)*ae,(.5-ve+xe)*ie,(.5-pe+he)*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,(.5+xe)*ie,(.5+ve+he)*ae,(.5-ve+xe)*ie,(.5+pe+he)*ae,(.5-pe+xe)*ie,(.5+ve+he)*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,.4*ie,.6*ae,(.5+pe+xe)*ie,(.5+ve+he)*ae,(.5+ve+xe)*ie,(.5+pe+he)*ae).close()),fe.setSpots(.06,.33,.93,.68),fe}),go.Shape.defineFigureGenerator("YinYang",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(ie*.5,0,!0);fe.add(de),de.add(new go.PathSegment(go.PathSegment.Arc,270,180,ie*.5,ie*.5,ie*.5,ie*.5)),de.add(new go.PathSegment(go.PathSegment.Arc,90,-180,ie*.5,ie*.75,ie*.25,ie*.25)),de.add(new go.PathSegment(go.PathSegment.Arc,90,180,ie*.5,ie*.25,ie*.25,ie*.25));var ve=.1,xe=.5,he=.25;return de.add(new go.PathSegment(go.PathSegment.Move,(xe+ve)*ie,he*ae)),de.add(new go.PathSegment(go.PathSegment.Arc,0,-360,ie*xe,ae*he,ve*ie,ve*ie).close()),de=new go.PathFigure(ie*.5,0,!1),fe.add(de),de.add(new go.PathSegment(go.PathSegment.Arc,270,-180,ie*.5,ie*.5,ie*.5,ie*.5)),he=.75,de=new go.PathFigure((xe+ve)*ie,he*ae,!0),fe.add(de),de.add(new go.PathSegment(go.PathSegment.Arc,0,360,ie*xe,ae*he,ve*ie,ve*ie).close()),fe.defaultStretch=go.GraphObject.Uniform,fe}),go.Shape.defineFigureGenerator("Peace",function(ye,ie,ae){var fe=.8535533905932737,de=.5*ie,ve=.5*ae;return new go.Geometry().add(new go.PathFigure(de,0,!1).add(new go.PathSegment(go.PathSegment.Arc,270,360,de,ve,de,ve)).add(new go.PathSegment(go.PathSegment.Line,de,ae)).add(new go.PathSegment(go.PathSegment.Move,de,ve)).add(new go.PathSegment(go.PathSegment.Line,(1-fe)*ie,fe*ae)).add(new go.PathSegment(go.PathSegment.Move,de,ve)).add(new go.PathSegment(go.PathSegment.Line,fe*ie,fe*ae)))}),go.Shape.defineFigureGenerator("NotAllowed",function(ye,ie,ae){var fe=new go.Geometry,de=we*.5,ve=.5,xe=.5,he=.5,pe=new go.PathFigure(xe*ie,(he-ve)*ae);fe.add(pe),pe.add(new go.PathSegment(go.PathSegment.Bezier,(xe-ve)*ie,he*ae,(xe-de)*ie,(he-ve)*ae,(xe-ve)*ie,(he-de)*ae)),pe.add(new go.PathSegment(go.PathSegment.Bezier,xe*ie,(he+ve)*ae,(xe-ve)*ie,(he+de)*ae,(xe-de)*ie,(he+ve)*ae)),pe.add(new go.PathSegment(go.PathSegment.Bezier,(xe+ve)*ie,he*ae,(xe+de)*ie,(he+ve)*ae,(xe+ve)*ie,(he+de)*ae)),pe.add(new go.PathSegment(go.PathSegment.Bezier,xe*ie,(he-ve)*ae,(xe+ve)*ie,(he-de)*ae,(xe+de)*ie,(he-ve)*ae)),ve=.4,de=we*.4;var Se=He(),Ne=He(),ze=He(),Ke=He();ke(xe,he-ve,xe+de,he-ve,xe+ve,he-de,xe+ve,he,.42,Se,Ne,ze,Ke,Ke);var Ve=He(),Je=He(),tt=He();ke(xe,he-ve,xe+de,he-ve,xe+ve,he-de,xe+ve,he,.58,Ke,Ke,tt,Ve,Je);var gt=He(),st=He(),St=He();ke(xe,he+ve,xe-de,he+ve,xe-ve,he+de,xe-ve,he,.42,gt,st,St,Ke,Ke);var At=He(),vt=He(),Tt=He();return ke(xe,he+ve,xe-de,he+ve,xe-ve,he+de,xe-ve,he,.58,Ke,Ke,Tt,At,vt),pe.add(new go.PathSegment(go.PathSegment.Move,Tt.x*ie,Tt.y*ae)),pe.add(new go.PathSegment(go.PathSegment.Bezier,(xe-ve)*ie,he*ae,At.x*ie,At.y*ae,vt.x*ie,vt.y*ae)),pe.add(new go.PathSegment(go.PathSegment.Bezier,xe*ie,(he-ve)*ae,(xe-ve)*ie,(he-de)*ae,(xe-de)*ie,(he-ve)*ae)),pe.add(new go.PathSegment(go.PathSegment.Bezier,ze.x*ie,ze.y*ae,Se.x*ie,Se.y*ae,Ne.x*ie,Ne.y*ae)),pe.add(new go.PathSegment(go.PathSegment.Line,Tt.x*ie,Tt.y*ae).close()),pe.add(new go.PathSegment(go.PathSegment.Move,St.x*ie,St.y*ae)),pe.add(new go.PathSegment(go.PathSegment.Line,tt.x*ie,tt.y*ae)),pe.add(new go.PathSegment(go.PathSegment.Bezier,(xe+ve)*ie,he*ae,Ve.x*ie,Ve.y*ae,Je.x*ie,Je.y*ae)),pe.add(new go.PathSegment(go.PathSegment.Bezier,xe*ie,(he+ve)*ae,(xe+ve)*ie,(he+de)*ae,(xe+de)*ie,(he+ve)*ae)),pe.add(new go.PathSegment(go.PathSegment.Bezier,St.x*ie,St.y*ae,gt.x*ie,gt.y*ae,st.x*ie,st.y*ae).close()),et(Se),et(Ne),et(ze),et(Ke),et(Ve),et(Je),et(tt),et(gt),et(st),et(St),et(At),et(vt),et(Tt),fe.defaultStretch=go.GraphObject.Uniform,fe}),go.Shape.defineFigureGenerator("Fragile",function(ye,ie,ae){return new go.Geometry().add(new go.PathFigure(0,0,!0).add(new go.PathSegment(go.PathSegment.Line,.25*ie,0)).add(new go.PathSegment(go.PathSegment.Line,.2*ie,.15*ae)).add(new go.PathSegment(go.PathSegment.Line,.3*ie,.25*ae)).add(new go.PathSegment(go.PathSegment.Line,.29*ie,.33*ae)).add(new go.PathSegment(go.PathSegment.Line,.35*ie,.25*ae)).add(new go.PathSegment(go.PathSegment.Line,.3*ie,.15*ae)).add(new go.PathSegment(go.PathSegment.Line,.4*ie,0)).add(new go.PathSegment(go.PathSegment.Line,ie,0)).add(new go.PathSegment(go.PathSegment.Bezier,.55*ie,.5*ae,ie,.25*ae,.75*ie,.5*ae)).add(new go.PathSegment(go.PathSegment.Line,.55*ie,.9*ae)).add(new go.PathSegment(go.PathSegment.Line,.7*ie,.9*ae)).add(new go.PathSegment(go.PathSegment.Line,.7*ie,ae)).add(new go.PathSegment(go.PathSegment.Line,.3*ie,ae)).add(new go.PathSegment(go.PathSegment.Line,.3*ie,.9*ae)).add(new go.PathSegment(go.PathSegment.Line,.45*ie,.9*ae)).add(new go.PathSegment(go.PathSegment.Line,.45*ie,.5*ae)).add(new go.PathSegment(go.PathSegment.Bezier,0,0,.25*ie,.5*ae,0,.25*ae).close()))}),go.Shape.setFigureParameter("HourGlass",0,new sn("Thickness",30)),go.Shape.defineFigureGenerator("HourGlass",function(ye,ie,ae){var fe=ye?ye.parameter1:NaN;(isNaN(fe)||fe<0)&&(fe=30),fe>ie&&(fe=ie);var de=(ie-fe)/2,ve=de+fe;return new go.Geometry().add(new go.PathFigure(ve,.5*ae).add(new go.PathSegment(go.PathSegment.Line,ie,ae)).add(new go.PathSegment(go.PathSegment.Line,0,ae)).add(new go.PathSegment(go.PathSegment.Line,de,.5*ae)).add(new go.PathSegment(go.PathSegment.Line,0,0)).add(new go.PathSegment(go.PathSegment.Line,ie,0).close()))}),go.Shape.defineFigureGenerator("Lightning",function(ye,ie,ae){return new go.Geometry().add(new go.PathFigure(0,.55*ae).add(new go.PathSegment(go.PathSegment.Line,.6*ie,0)).add(new go.PathSegment(go.PathSegment.Line,.3*ie,.45*ae)).add(new go.PathSegment(go.PathSegment.Line,ie,.45*ae)).add(new go.PathSegment(go.PathSegment.Line,.4*ie,ae)).add(new go.PathSegment(go.PathSegment.Line,.7*ie,.55*ae).close()))}),go.Shape.defineFigureGenerator("GenderMale",function(ye,ie,ae){var fe=new go.Geometry,de=we*.4,ve=.4,xe=.5,he=.5,pe=He(),Se=He(),Ne=He(),ze=He(),Ke=new go.PathFigure((xe-ve)*ie,he*ae,!1);fe.add(Ke),Ke.add(new go.PathSegment(go.PathSegment.Bezier,xe*ie,(he-ve)*ae,(xe-ve)*ie,(he-de)*ae,(xe-de)*ie,(he-ve)*ae)),ke(xe,he-ve,xe+de,he-ve,xe+ve,he-de,xe+ve,he,.44,Ne,ze,Se,pe,pe),Ke.add(new go.PathSegment(go.PathSegment.Bezier,Se.x*ie,Se.y*ae,Ne.x*ie,Ne.y*ae,ze.x*ie,ze.y*ae));var Ve=Be(Se.x,Se.y);ke(xe,he-ve,xe+de,he-ve,xe+ve,he-de,xe+ve,he,.56,pe,pe,Se,Ne,ze);var Je=Be(Se.x,Se.y);Ke.add(new go.PathSegment(go.PathSegment.Line,(Ve.x*.1+.95*.9)*ie,Ve.y*.1*ae)),Ke.add(new go.PathSegment(go.PathSegment.Line,.85*ie,Ve.y*.1*ae)),Ke.add(new go.PathSegment(go.PathSegment.Line,.85*ie,0)),Ke.add(new go.PathSegment(go.PathSegment.Line,ie,0)),Ke.add(new go.PathSegment(go.PathSegment.Line,ie,.15*ae)),Ke.add(new go.PathSegment(go.PathSegment.Line,(Je.x*.1+.9)*ie,.15*ae)),Ke.add(new go.PathSegment(go.PathSegment.Line,(Je.x*.1+.9)*ie,(Je.y*.1+.05*.9)*ae)),Ke.add(new go.PathSegment(go.PathSegment.Line,Je.x*ie,Je.y*ae)),Ke.add(new go.PathSegment(go.PathSegment.Bezier,(xe+ve)*ie,he*ae,Ne.x*ie,Ne.y*ae,ze.x*ie,ze.y*ae)),Ke.add(new go.PathSegment(go.PathSegment.Bezier,xe*ie,(he+ve)*ae,(xe+ve)*ie,(he+de)*ae,(xe+de)*ie,(he+ve)*ae)),Ke.add(new go.PathSegment(go.PathSegment.Bezier,(xe-ve)*ie,he*ae,(xe-de)*ie,(he+ve)*ae,(xe-ve)*ie,(he+de)*ae)),ve=.35,de=we*.35;var tt=new go.PathFigure(xe*ie,(he-ve)*ae,!1);fe.add(tt),tt.add(new go.PathSegment(go.PathSegment.Bezier,(xe-ve)*ie,he*ae,(xe-de)*ie,(he-ve)*ae,(xe-ve)*ie,(he-de)*ae)),tt.add(new go.PathSegment(go.PathSegment.Bezier,xe*ie,(he+ve)*ae,(xe-ve)*ie,(he+de)*ae,(xe-de)*ie,(he+ve)*ae)),tt.add(new go.PathSegment(go.PathSegment.Bezier,(xe+ve)*ie,he*ae,(xe+de)*ie,(he+ve)*ae,(xe+ve)*ie,(he+de)*ae)),tt.add(new go.PathSegment(go.PathSegment.Bezier,xe*ie,(he-ve)*ae,(xe+ve)*ie,(he-de)*ae,(xe+de)*ie,(he-ve)*ae));var gt=new go.PathFigure((xe-ve)*ie,he*ae,!1);return fe.add(gt),et(pe),et(Se),et(Ne),et(ze),et(Ve),et(Je),fe.spot1=new go.Spot(.202,.257),fe.spot2=new go.Spot(.792,.739),fe.defaultStretch=go.GraphObject.Uniform,fe}),go.Shape.defineFigureGenerator("GenderFemale",function(ye,ie,ae){var fe=new go.Geometry,de=.375,ve=0,xe=-.125,he=de*we,pe=new go.PathFigure((.525+ve)*ie,(.5+de+xe)*ae,!1);fe.add(pe),pe.add(new go.PathSegment(go.PathSegment.Bezier,(1-.5+de+ve)*ie,(.5+xe)*ae,(.5+he+ve)*ie,(.5+de+xe)*ae,(.5+de+ve)*ie,(.5+he+xe)*ae)),pe.add(new go.PathSegment(go.PathSegment.Bezier,(.5+ve)*ie,(.5-de+xe)*ae,(1-.5+de+ve)*ie,(.5-he+xe)*ae,(.5+he+ve)*ie,(.5-de+xe)*ae)),pe.add(new go.PathSegment(go.PathSegment.Bezier,(.5-de+ve)*ie,(.5+xe)*ae,(.5-he+ve)*ie,(.5-de+xe)*ae,(.5-de+ve)*ie,(.5-he+xe)*ae)),pe.add(new go.PathSegment(go.PathSegment.Bezier,(.475+ve)*ie,(.5+de+xe)*ae,(.5-de+ve)*ie,(.5+he+xe)*ae,(.5-he+ve)*ie,(.5+de+xe)*ae)),pe.add(new go.PathSegment(go.PathSegment.Line,.475*ie,.85*ae)),pe.add(new go.PathSegment(go.PathSegment.Line,.425*ie,.85*ae)),pe.add(new go.PathSegment(go.PathSegment.Line,.425*ie,.9*ae)),pe.add(new go.PathSegment(go.PathSegment.Line,.475*ie,.9*ae)),pe.add(new go.PathSegment(go.PathSegment.Line,.475*ie,ae)),pe.add(new go.PathSegment(go.PathSegment.Line,.525*ie,ae)),pe.add(new go.PathSegment(go.PathSegment.Line,.525*ie,.9*ae)),pe.add(new go.PathSegment(go.PathSegment.Line,.575*ie,.9*ae)),pe.add(new go.PathSegment(go.PathSegment.Line,.575*ie,.85*ae)),pe.add(new go.PathSegment(go.PathSegment.Line,.525*ie,.85*ae).close()),de=.325,ve=0,xe=-.125,he=de*we;var pe=new go.PathFigure((1-.5+de+ve)*ie,(.5+xe)*ae,!1);fe.add(pe),pe.add(new go.PathSegment(go.PathSegment.Bezier,(.5+ve)*ie,(.5+de+xe)*ae,(.5+de+ve)*ie,(.5+he+xe)*ae,(.5+he+ve)*ie,(.5+de+xe)*ae)),pe.add(new go.PathSegment(go.PathSegment.Bezier,(.5-de+ve)*ie,(.5+xe)*ae,(.5-he+ve)*ie,(.5+de+xe)*ae,(.5-de+ve)*ie,(.5+he+xe)*ae)),pe.add(new go.PathSegment(go.PathSegment.Bezier,(.5+ve)*ie,(.5-de+xe)*ae,(.5-de+ve)*ie,(.5-he+xe)*ae,(.5-he+ve)*ie,(.5-de+xe)*ae)),pe.add(new go.PathSegment(go.PathSegment.Bezier,(1-.5+de+ve)*ie,(.5+xe)*ae,(.5+he+ve)*ie,(.5-de+xe)*ae,(1-.5+de+ve)*ie,(.5-he+xe)*ae));var pe=new go.PathFigure((.525+ve)*ie,(.5+de+xe)*ae,!1);return fe.add(pe),fe.spot1=new go.Spot(.232,.136),fe.spot2=new go.Spot(.682,.611),fe.defaultStretch=go.GraphObject.Uniform,fe}),go.Shape.defineFigureGenerator("LogicImplies",function(ye,ie,ae){var fe=ye?ye.parameter1:NaN;return isNaN(fe)&&(fe=.2),new go.Geometry().add(new go.PathFigure((1-fe)*ie,0,!1).add(new go.PathSegment(go.PathSegment.Line,ie,.5*ae)).add(new go.PathSegment(go.PathSegment.Line,(1-fe)*ie,ae)).add(new go.PathSegment(go.PathSegment.Move,0,.5*ae)).add(new go.PathSegment(go.PathSegment.Line,ie,.5*ae))).setSpots(0,0,.8,.5)}),go.Shape.defineFigureGenerator("LogicIff",function(ye,ie,ae){var fe=ye?ye.parameter1:NaN;return isNaN(fe)&&(fe=.2),new go.Geometry().add(new go.PathFigure((1-fe)*ie,0,!1).add(new go.PathSegment(go.PathSegment.Line,ie,.5*ae)).add(new go.PathSegment(go.PathSegment.Line,(1-fe)*ie,ae)).add(new go.PathSegment(go.PathSegment.Move,0,.5*ae)).add(new go.PathSegment(go.PathSegment.Line,ie,.5*ae)).add(new go.PathSegment(go.PathSegment.Move,fe*ie,0)).add(new go.PathSegment(go.PathSegment.Line,0,.5*ae)).add(new go.PathSegment(go.PathSegment.Line,fe*ie,ae))).setSpots(.2,0,.8,.5)}),go.Shape.defineFigureGenerator("LogicNot",function(ye,ie,ae){return new go.Geometry().add(new go.PathFigure(0,0,!1).add(new go.PathSegment(go.PathSegment.Line,ie,0)).add(new go.PathSegment(go.PathSegment.Line,ie,ae)))}),go.Shape.defineFigureGenerator("LogicAnd",function(ye,ie,ae){return new go.Geometry().add(new go.PathFigure(0,ae,!1).add(new go.PathSegment(go.PathSegment.Line,.5*ie,0)).add(new go.PathSegment(go.PathSegment.Line,ie,ae))).setSpots(.25,.5,.75,1)}),go.Shape.defineFigureGenerator("LogicOr",function(ye,ie,ae){return new go.Geometry().add(new go.PathFigure(0,0,!1).add(new go.PathSegment(go.PathSegment.Line,.5*ie,ae)).add(new go.PathSegment(go.PathSegment.Line,ie,0))).setSpots(.219,0,.78,.409)}),go.Shape.defineFigureGenerator("LogicXor",function(ye,ie,ae){var fe=new go.Geometry().add(new go.PathFigure(.5*ie,0,!1).add(new go.PathSegment(go.PathSegment.Line,.5*ie,ae)).add(new go.PathSegment(go.PathSegment.Move,0,.5*ae)).add(new go.PathSegment(go.PathSegment.Line,ie,.5*ae)).add(new go.PathSegment(go.PathSegment.Arc,0,360,.5*ie,.5*ae,.5*ie,.5*ae)));return fe.defaultStretch=go.GraphObject.Uniform,fe}),go.Shape.defineFigureGenerator("LogicTruth",function(ye,ie,ae){return new go.Geometry().add(new go.PathFigure(0,0,!1).add(new go.PathSegment(go.PathSegment.Line,ie,0)).add(new go.PathSegment(go.PathSegment.Move,.5*ie,0)).add(new go.PathSegment(go.PathSegment.Line,.5*ie,ae)))}),go.Shape.defineFigureGenerator("LogicFalsity",function(ye,ie,ae){return new go.Geometry().add(new go.PathFigure(0,ae,!1).add(new go.PathSegment(go.PathSegment.Line,ie,ae)).add(new go.PathSegment(go.PathSegment.Move,.5*ie,ae)).add(new go.PathSegment(go.PathSegment.Line,.5*ie,0)))}),go.Shape.defineFigureGenerator("LogicThereExists",function(ye,ie,ae){return new go.Geometry().add(new go.PathFigure(0,0,!1).add(new go.PathSegment(go.PathSegment.Line,ie,0)).add(new go.PathSegment(go.PathSegment.Line,ie,.5*ae)).add(new go.PathSegment(go.PathSegment.Line,0,.5*ae)).add(new go.PathSegment(go.PathSegment.Move,ie,.5*ae)).add(new go.PathSegment(go.PathSegment.Line,ie,ae)).add(new go.PathSegment(go.PathSegment.Line,0,ae)))}),go.Shape.defineFigureGenerator("LogicForAll",function(ye,ie,ae){return new go.Geometry().add(new go.PathFigure(0,0,!1).add(new go.PathSegment(go.PathSegment.Line,.5*ie,ae)).add(new go.PathSegment(go.PathSegment.Line,ie,0)).add(new go.PathSegment(go.PathSegment.Move,.25*ie,.5*ae)).add(new go.PathSegment(go.PathSegment.Line,.75*ie,.5*ae))).setSpots(.25,0,.75,.5)}),go.Shape.defineFigureGenerator("LogicIsDefinedAs",function(ye,ie,ae){return new go.Geometry().add(new go.PathFigure(0,0,!1).add(new go.PathSegment(go.PathSegment.Line,ie,0)).add(new go.PathSegment(go.PathSegment.Move,0,.5*ae)).add(new go.PathSegment(go.PathSegment.Line,ie,.5*ae)).add(new go.PathSegment(go.PathSegment.Move,0,ae)).add(new go.PathSegment(go.PathSegment.Line,ie,ae))).setSpots(.01,.01,.99,.49)}),go.Shape.defineFigureGenerator("LogicIntersect",function(ye,ie,ae){var fe=.5;return new go.Geometry().add(new go.PathFigure(0,ae,!1).add(new go.PathSegment(go.PathSegment.Line,0,fe*ae)).add(new go.PathSegment(go.PathSegment.Arc,180,180,fe*ie,fe*ae,fe*ie,fe*ae)).add(new go.PathSegment(go.PathSegment.Line,ie,ae))).setSpots(0,.5,1,1)}),go.Shape.defineFigureGenerator("LogicUnion",function(ye,ie,ae){var fe=.5;return new go.Geometry().add(new go.PathFigure(ie,0,!1).add(new go.PathSegment(go.PathSegment.Line,ie,fe*ae)).add(new go.PathSegment(go.PathSegment.Arc,0,180,fe*ie,fe*ae,fe*ie,fe*ae)).add(new go.PathSegment(go.PathSegment.Line,0,0))).setSpots(0,0,1,.5)}),go.Shape.setFigureParameter("Arrow",0,new sn("ArrowheadWidth",.3,.01,.99)),go.Shape.setFigureParameter("Arrow",1,new sn("TailHeight",.3,.01,.99)),go.Shape.defineFigureGenerator("Arrow",function(ye,ie,ae){var fe=ye?ye.parameter1:NaN;isNaN(fe)&&(fe=.3);var de=ye?ye.parameter2:NaN;isNaN(de)&&(de=.3);var ve=(1-fe)*ie,xe=(.5-de/2)*ae,he=(.5+de/2)*ae,pe=new go.Geometry,Se=new go.PathFigure(0,xe,!0);pe.add(Se),Se.add(new go.PathSegment(go.PathSegment.Line,ve,xe)),Se.add(new go.PathSegment(go.PathSegment.Line,ve,0)),Se.add(new go.PathSegment(go.PathSegment.Line,ie,.5*ae)),Se.add(new go.PathSegment(go.PathSegment.Line,ve,ae)),Se.add(new go.PathSegment(go.PathSegment.Line,ve,he)),Se.add(new go.PathSegment(go.PathSegment.Line,0,he).close()),pe.spot1=new go.Spot(0,xe/ae);var Ne=Ge(0,he/ae,1,he/ae,ve/ie,1,1,.5,He());return pe.spot2=new go.Spot(Ne.x,Ne.y),et(Ne),pe}),go.Shape.setFigureParameter("Arrow2",0,new sn("ArrowheadWidth",30)),go.Shape.setFigureParameter("Arrow2",0,new sn("TailHeight",30)),go.Shape.defineFigureGenerator("Arrow2",function(ye,ie,ae){var fe=ye?ye.parameter1:NaN;isNaN(fe)&&(fe=30),fe>ie&&(fe=ie);var de=ye?ye.parameter2:NaN;isNaN(de)&&(de=30),de=Math.min(de,ae/2);var ve=ie-fe,xe=(ae-de)/2,he=xe+de,pe=new go.Geometry,Se=new go.PathFigure(0,xe,!0);pe.add(Se),Se.add(new go.PathSegment(go.PathSegment.Line,ve,xe)),Se.add(new go.PathSegment(go.PathSegment.Line,ve,0)),Se.add(new go.PathSegment(go.PathSegment.Line,ie,.5*ae)),Se.add(new go.PathSegment(go.PathSegment.Line,ve,ae)),Se.add(new go.PathSegment(go.PathSegment.Line,ve,he)),Se.add(new go.PathSegment(go.PathSegment.Line,0,he).close()),pe.spot1=new go.Spot(0,xe/ae);var Ne=Ge(0,he/ae,1,he/ae,ve/ie,1,1,.5,He());return pe.spot2=new go.Spot(Ne.x,Ne.y),et(Ne),pe}),go.Shape.defineFigureGenerator("Chevron",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,0,!0);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.5*ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,ie,.5*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.5*ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,ae)),de.add(new go.PathSegment(go.PathSegment.Line,.5*ie,.5*ae).close()),fe}),go.Shape.defineFigureGenerator("DoubleArrow",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,0,!0);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.3*ie,.214*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.3*ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,1*ie,.5*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.3*ie,1*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.3*ie,.786*ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,1*ae).close()),fe}),go.Shape.setFigureParameter("DoubleEndArrow",0,new sn("ConnecterHeight",.3,.01,.99)),go.Shape.defineFigureGenerator("DoubleEndArrow",function(ye,ie,ae){var fe=ye?ye.parameter1:NaN;isNaN(fe)&&(fe=.3);var de=(.5-fe/2)*ae,ve=(.5+fe/2)*ae,xe=new go.Geometry,he=new go.PathFigure(ie,.5*ae,!0);xe.add(he),he.add(new go.PathSegment(go.PathSegment.Line,.7*ie,ae)),he.add(new go.PathSegment(go.PathSegment.Line,.7*ie,ve)),he.add(new go.PathSegment(go.PathSegment.Line,.3*ie,ve)),he.add(new go.PathSegment(go.PathSegment.Line,.3*ie,ae)),he.add(new go.PathSegment(go.PathSegment.Line,0,.5*ae)),he.add(new go.PathSegment(go.PathSegment.Line,.3*ie,0)),he.add(new go.PathSegment(go.PathSegment.Line,.3*ie,de)),he.add(new go.PathSegment(go.PathSegment.Line,.7*ie,de)),he.add(new go.PathSegment(go.PathSegment.Line,.7*ie,0).close());var pe=Ge(0,.5,.3,0,0,de/ae,.1,de/ae,He());return xe.spot1=new go.Spot(pe.x,pe.y),pe=Ge(.7,1,1,.5,0,ve/ae,1,ve/ae,pe),xe.spot2=new go.Spot(pe.x,pe.y),et(pe),xe}),go.Shape.setFigureParameter("DoubleEndArrow2",0,new sn("ConnecterHeight",40)),go.Shape.setFigureParameter("DoubleEndArrow2",1,new sn("ArrowHeight",100)),go.Shape.defineFigureGenerator("DoubleEndArrow2",function(ye,ie,ae){var fe=ye?ye.parameter1:NaN;isNaN(fe)&&(fe=40);var de=ye?ye.parameter2:NaN;isNaN(de)&&(de=100);var ve=(ae-fe)/2,xe=ve+fe,he=(ae-de)/2,pe=he+de;(fe>ae||de>ae)&&(de>fe?(fe=fe*ae/de,ve=(ae-fe)/2,xe=ve+fe,he=0,pe=ae):(ve=0,xe=ae,he=0,pe=ae));var Se=new go.Geometry,Ne=new go.PathFigure(ie,.5*ae,!0);Se.add(Ne),Ne.add(new go.PathSegment(go.PathSegment.Line,.7*ie,pe)),Ne.add(new go.PathSegment(go.PathSegment.Line,.7*ie,xe)),Ne.add(new go.PathSegment(go.PathSegment.Line,.3*ie,xe)),Ne.add(new go.PathSegment(go.PathSegment.Line,.3*ie,pe)),Ne.add(new go.PathSegment(go.PathSegment.Line,0,.5*ae)),Ne.add(new go.PathSegment(go.PathSegment.Line,.3*ie,he)),Ne.add(new go.PathSegment(go.PathSegment.Line,.3*ie,ve)),Ne.add(new go.PathSegment(go.PathSegment.Line,.7*ie,ve)),Ne.add(new go.PathSegment(go.PathSegment.Line,.7*ie,he).close());var ze=Ge(0,.5,.3,he/ae,0,ve/ae,1,ve/ae,He());return Se.spot1=new go.Spot(ze.x,ze.y),ze=Ge(.7,pe/ae,1,.5,0,xe/ae,1,xe/ae,ze),Se.spot2=new go.Spot(ze.x,ze.y),et(ze),Se}),go.Shape.setFigureParameter("IBeamArrow",0,new sn("ConnectorHeight",.7,.51,.97)),go.Shape.defineFigureGenerator("IBeamArrow",function(ye,ie,ae){var fe=ye?ye.parameter1:NaN;isNaN(fe)&&(fe=.3);var de=(.5-fe/2)*ae,ve=(.5+fe/2)*ae,xe=new go.Geometry,he=new go.PathFigure(ie,.5*ae,!0);xe.add(he),he.add(new go.PathSegment(go.PathSegment.Line,.7*ie,ae)),he.add(new go.PathSegment(go.PathSegment.Line,.7*ie,ve)),he.add(new go.PathSegment(go.PathSegment.Line,.2*ie,ve)),he.add(new go.PathSegment(go.PathSegment.Line,.2*ie,ae)),he.add(new go.PathSegment(go.PathSegment.Line,0,ae)),he.add(new go.PathSegment(go.PathSegment.Line,0,0)),he.add(new go.PathSegment(go.PathSegment.Line,.2*ie,0)),he.add(new go.PathSegment(go.PathSegment.Line,.2*ie,de)),he.add(new go.PathSegment(go.PathSegment.Line,.7*ie,de)),he.add(new go.PathSegment(go.PathSegment.Line,.7*ie,0).close()),xe.spot1=new go.Spot(0,de/ae);var pe=Ge(.7,1,1,.5,0,ve/ae,1,ve/ae,He());return xe.spot2=new go.Spot(pe.x,pe.y),et(pe),xe}),go.Shape.setFigureParameter("IBeamArrow2",0,new sn("ConnectorHeight",40)),go.Shape.setFigureParameter("IBeamArrow2",1,new sn("BeamArrowHeight",100)),go.Shape.defineFigureGenerator("IBeamArrow2",function(ye,ie,ae){var fe=ye?ye.parameter1:NaN;isNaN(fe)&&(fe=40);var de=ye?ye.parameter2:NaN;isNaN(de)&&(de=100);var ve=(ae-fe)/2,xe=ve+fe,he=(ae-de)/2,pe=he+de;(fe>ae||de>ae)&&(de>fe?(fe=fe*ae/de,ve=(ae-fe)/2,xe=ve+fe,he=0,pe=ae):(ve=0,xe=ae,he=0,pe=ae));var Se=new go.Geometry,Ne=new go.PathFigure(ie,.5*ae,!0);Se.add(Ne),Ne.add(new go.PathSegment(go.PathSegment.Line,.7*ie,pe)),Ne.add(new go.PathSegment(go.PathSegment.Line,.7*ie,xe)),Ne.add(new go.PathSegment(go.PathSegment.Line,.2*ie,xe)),Ne.add(new go.PathSegment(go.PathSegment.Line,.2*ie,pe)),Ne.add(new go.PathSegment(go.PathSegment.Line,0,pe)),Ne.add(new go.PathSegment(go.PathSegment.Line,0,he)),Ne.add(new go.PathSegment(go.PathSegment.Line,.2*ie,he)),Ne.add(new go.PathSegment(go.PathSegment.Line,.2*ie,ve)),Ne.add(new go.PathSegment(go.PathSegment.Line,.7*ie,ve)),Ne.add(new go.PathSegment(go.PathSegment.Line,.7*ie,he).close()),Se.spot1=new go.Spot(0,ve/ae);var ze=Ge(.7,pe/ae,1,.5,0,xe/ae,1,xe/ae,He());return Se.spot2=new go.Spot(ze.x,ze.y),et(ze),Se}),go.Shape.setFigureParameter("Pointer",0,new sn("BackPoint",.1,0,.2)),go.Shape.defineFigureGenerator("Pointer",function(ye,ie,ae){var fe=ye?ye.parameter1:NaN;isNaN(fe)&&(fe=.1);var de=new go.Geometry,ve=new go.PathFigure(ie,.5*ae,!0);de.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,0,ae)),ve.add(new go.PathSegment(go.PathSegment.Line,fe*ie,.5*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,0,0).close()),de.spot1=new go.Spot(fe,.35);var xe=Ge(.2,.65,1,.65,0,1,1,.5,He());return de.spot2=new go.Spot(xe.x,xe.y),et(xe),de}),go.Shape.setFigureParameter("RoundedPointer",0,new sn("RoundedEdge",.3,0,.5)),go.Shape.defineFigureGenerator("RoundedPointer",function(ye,ie,ae){var fe=ye?ye.parameter1:NaN;isNaN(fe)&&(fe=.3);var de=new go.Geometry,ve=new go.PathFigure(ie,.5*ae,!0);de.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,0,ae)),ve.add(new go.PathSegment(go.PathSegment.Bezier,0,0,fe*ie,.75*ae,fe*ie,.25*ae).close()),de.spot1=new go.Spot(fe,.35);var xe=Ge(0,.65,1,.65,0,1,1,.5,He());return de.spot2=new go.Spot(xe.x,xe.y),et(xe),de}),go.Shape.setFigureParameter("SplitEndArrow",0,new sn("TailHeight",.4,.01,.99)),go.Shape.defineFigureGenerator("SplitEndArrow",function(ye,ie,ae){var fe=ye?ye.parameter1:NaN;isNaN(fe)&&(fe=.4);var de=(.5-fe/2)*ae,ve=(.5+fe/2)*ae,xe=new go.Geometry,he=new go.PathFigure(ie,.5*ae,!0);xe.add(he),he.add(new go.PathSegment(go.PathSegment.Line,.7*ie,ae)),he.add(new go.PathSegment(go.PathSegment.Line,.7*ie,ve)),he.add(new go.PathSegment(go.PathSegment.Line,0,ve)),he.add(new go.PathSegment(go.PathSegment.Line,.2*ie,.5*ae)),he.add(new go.PathSegment(go.PathSegment.Line,0,de)),he.add(new go.PathSegment(go.PathSegment.Line,.7*ie,de)),he.add(new go.PathSegment(go.PathSegment.Line,.7*ie,0).close()),xe.spot1=new go.Spot(.2,.3);var pe=Ge(.7,1,1,.5,0,ve/ae,1,ve/ae,He());return xe.spot2=new go.Spot(pe.x,pe.y),et(pe),xe}),go.Shape.setFigureParameter("SplitEndArrow2",0,new sn("TailThickness",50)),go.Shape.defineFigureGenerator("SplitEndArrow2",function(ye,ie,ae){var fe=ye?ye.parameter1:NaN;isNaN(fe)&&(fe=50);var de=(ae-fe)/2,ve=de+fe;fe>ae&&(de=0,ve=ae);var xe=new go.Geometry,he=new go.PathFigure(ie,.5*ae,!0);xe.add(he),he.add(new go.PathSegment(go.PathSegment.Line,.7*ie,ae)),he.add(new go.PathSegment(go.PathSegment.Line,.7*ie,ve)),he.add(new go.PathSegment(go.PathSegment.Line,0,ve)),he.add(new go.PathSegment(go.PathSegment.Line,.2*ie,.5*ae)),he.add(new go.PathSegment(go.PathSegment.Line,0,de)),he.add(new go.PathSegment(go.PathSegment.Line,.7*ie,de)),he.add(new go.PathSegment(go.PathSegment.Line,.7*ie,0).close()),xe.spot1=new go.Spot(.2,de/ae);var pe=Ge(.7,1,1,.5,0,ve/ae,1,ve/ae,He());return xe.spot2=new go.Spot(pe.x,pe.y),et(pe),xe}),go.Shape.setFigureParameter("SquareArrow",0,new sn("ArrowPoint",.7,.2,.9)),go.Shape.defineFigureGenerator("SquareArrow",function(ye,ie,ae){var fe=ye?ye.parameter1:NaN;isNaN(fe)&&(fe=.7);var de=new go.Geometry,ve=new go.PathFigure(ie,.5*ae,!0);return de.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,fe*ie,ae)),ve.add(new go.PathSegment(go.PathSegment.Line,0,ae)),ve.add(new go.PathSegment(go.PathSegment.Line,0,0)),ve.add(new go.PathSegment(go.PathSegment.Line,fe*ie,0).close()),de.spot1=go.Spot.TopLeft,de.spot2=new go.Spot(fe,1),de}),go.Shape.defineFigureGenerator("Cone1",function(ye,ie,ae){var fe=new go.Geometry,de=we*.5,ve=we*.1,xe=new go.PathFigure(0,.9*ae,!0);return fe.add(xe),xe.add(new go.PathSegment(go.PathSegment.Line,.5*ie,0)),xe.add(new go.PathSegment(go.PathSegment.Line,ie,.9*ae)),xe.add(new go.PathSegment(go.PathSegment.Bezier,.5*ie,ae,ie,(.9+ve)*ae,(.5+de)*ie,ae)),xe.add(new go.PathSegment(go.PathSegment.Bezier,0,.9*ae,(.5-de)*ie,ae,0,(.9+ve)*ae).close()),fe.spot1=new go.Spot(.25,.5),fe.spot2=new go.Spot(.75,.97),fe}),go.Shape.defineFigureGenerator("Cone2",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,.9*ae,!0);fe.add(de),de.add(new go.PathSegment(go.PathSegment.Bezier,ie,.9*ae,(1-.85/.9)*ie,ae,.85/.9*ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,.5*ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,0,.9*ae).close());var ve=new go.PathFigure(0,.9*ae,!1);return fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Bezier,ie,.9*ae,(1-.85/.9)*ie,.8*ae,.85/.9*ie,.8*ae)),fe.spot1=new go.Spot(.25,.5),fe.spot2=new go.Spot(.75,.82),fe}),go.Shape.defineFigureGenerator("Cube1",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(.5*ie,ae,!0);fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,ie,.85*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie,.15*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.5*ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,0,.15*ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,.85*ae).close());var ve=new go.PathFigure(.5*ie,ae,!1);return fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,.5*ie,.3*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,0,.15*ae)),ve.add(new go.PathSegment(go.PathSegment.Move,.5*ie,.3*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,ie,.15*ae)),fe.spot1=new go.Spot(0,.3),fe.spot2=new go.Spot(.5,.85),fe}),go.Shape.defineFigureGenerator("Cube2",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,.3*ae,!0);fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,0,ae)),de.add(new go.PathSegment(go.PathSegment.Line,.7*ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie,.7*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,.3*ie,0).close());var ve=new go.PathFigure(0,.3*ae,!1);return fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,.7*ie,.3*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,ie,0)),ve.add(new go.PathSegment(go.PathSegment.Move,.7*ie,.3*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.7*ie,ae)),fe.spot1=new go.Spot(0,.3),fe.spot2=new go.Spot(.7,1),fe}),go.Shape.defineFigureGenerator("Cylinder1",function(ye,ie,ae){var fe=ye?ye.parameter1:NaN;isNaN(fe)&&(fe=5),fe=Math.min(fe,ae/3);var de=new go.Geometry,ve=we*.5,xe=new go.PathFigure(0,fe,!0);de.add(xe),xe.add(new go.PathSegment(go.PathSegment.Bezier,.5*ie,0,0,we*fe,(.5-ve)*ie,0)),xe.add(new go.PathSegment(go.PathSegment.Bezier,1*ie,fe,(.5+ve)*ie,0,1*ie,we*fe)),xe.add(new go.PathSegment(go.PathSegment.Line,ie,ae-fe)),xe.add(new go.PathSegment(go.PathSegment.Bezier,.5*ie,1*ae,1*ie,ae-we*fe,(.5+ve)*ie,1*ae)),xe.add(new go.PathSegment(go.PathSegment.Bezier,0,ae-fe,(.5-ve)*ie,1*ae,0,ae-we*fe)),xe.add(new go.PathSegment(go.PathSegment.Line,0,fe));var he=new go.PathFigure(ie,fe,!1);return de.add(he),he.add(new go.PathSegment(go.PathSegment.Bezier,.5*ie,2*fe,1*ie,2*fe-we*fe,(.5+ve)*ie,2*fe)),he.add(new go.PathSegment(go.PathSegment.Bezier,0,fe,(.5-ve)*ie,2*fe,0,2*fe-we*fe)),de.spot1=new go.Spot(0,0,0,2*fe),de.spot2=new go.Spot(1,1),de}),go.Shape.defineFigureGenerator("Cylinder2",function(ye,ie,ae){var fe=ye?ye.parameter1:NaN;isNaN(fe)&&(fe=5),fe=Math.min(fe,ae/3);var de=new go.Geometry,ve=we*.5,xe=new go.PathFigure(0,ae-fe,!0);de.add(xe),xe.add(new go.PathSegment(go.PathSegment.Line,0,fe)),xe.add(new go.PathSegment(go.PathSegment.Bezier,.5*ie,0,0,we*fe,(.5-ve)*ie,0)),xe.add(new go.PathSegment(go.PathSegment.Bezier,ie,fe,(.5+ve)*ie,0,ie,we*fe)),xe.add(new go.PathSegment(go.PathSegment.Line,ie,ae-fe)),xe.add(new go.PathSegment(go.PathSegment.Bezier,.5*ie,ae,ie,ae-we*fe,(.5+ve)*ie,ae)),xe.add(new go.PathSegment(go.PathSegment.Bezier,0,ae-fe,(.5-ve)*ie,ae,0,ae-we*fe));var he=new go.PathFigure(0,ae-fe,!1);return de.add(he),he.add(new go.PathSegment(go.PathSegment.Bezier,.5*ie,ae-2*fe,0,ae-fe-we*fe,(.5-ve)*ie,ae-2*fe)),he.add(new go.PathSegment(go.PathSegment.Bezier,ie,ae-fe,(.5+ve)*ie,ae-2*fe,ie,ae-fe-we*fe)),de.spot1=new go.Spot(0,0),de.spot2=new go.Spot(1,1,0,-2*fe),de}),go.Shape.defineFigureGenerator("Cylinder3",function(ye,ie,ae){var fe=ye?ye.parameter1:NaN;isNaN(fe)&&(fe=5),fe=Math.min(fe,ie/3);var de=new go.Geometry,ve=we*.5,xe=new go.PathFigure(fe,0,!0);de.add(xe),xe.add(new go.PathSegment(go.PathSegment.Line,ie-fe,0)),xe.add(new go.PathSegment(go.PathSegment.Bezier,ie,.5*ae,ie-we*fe,0,ie,(.5-ve)*ae)),xe.add(new go.PathSegment(go.PathSegment.Bezier,ie-fe,ae,ie,(.5+ve)*ae,ie-we*fe,ae)),xe.add(new go.PathSegment(go.PathSegment.Line,fe,ae)),xe.add(new go.PathSegment(go.PathSegment.Bezier,0,.5*ae,we*fe,ae,0,(.5+ve)*ae)),xe.add(new go.PathSegment(go.PathSegment.Bezier,fe,0,0,(.5-ve)*ae,we*fe,0));var he=new go.PathFigure(fe,0,!1);return de.add(he),he.add(new go.PathSegment(go.PathSegment.Bezier,2*fe,.5*ae,fe+we*fe,0,2*fe,(.5-ve)*ae)),he.add(new go.PathSegment(go.PathSegment.Bezier,fe,ae,2*fe,(.5+ve)*ae,fe+we*fe,ae)),de.spot1=new go.Spot(0,0,2*fe,0),de.spot2=new go.Spot(1,1),de}),go.Shape.defineFigureGenerator("Cylinder4",function(ye,ie,ae){var fe=ye?ye.parameter1:NaN;isNaN(fe)&&(fe=5),fe=Math.min(fe,ie/3);var de=new go.Geometry,ve=we*.5,xe=new go.PathFigure(ie-fe,0,!0);de.add(xe),xe.add(new go.PathSegment(go.PathSegment.Bezier,ie,.5*ae,ie-we*fe,0,ie,(.5-ve)*ae)),xe.add(new go.PathSegment(go.PathSegment.Bezier,ie-fe,ae,ie,(.5+ve)*ae,ie-we*fe,ae)),xe.add(new go.PathSegment(go.PathSegment.Line,fe,ae)),xe.add(new go.PathSegment(go.PathSegment.Bezier,0,.5*ae,we*fe,ae,0,(.5+ve)*ae)),xe.add(new go.PathSegment(go.PathSegment.Bezier,fe,0,0,(.5-ve)*ae,we*fe,0)),xe.add(new go.PathSegment(go.PathSegment.Line,ie-fe,0));var he=new go.PathFigure(ie-fe,0,!1);return de.add(he),he.add(new go.PathSegment(go.PathSegment.Bezier,ie-2*fe,.5*ae,ie-fe-we*fe,0,ie-2*fe,(.5-ve)*ae)),he.add(new go.PathSegment(go.PathSegment.Bezier,ie-fe,ae,ie-2*fe,(.5+ve)*ae,ie-fe-we*fe,ae)),de.spot1=new go.Spot(0,0),de.spot2=new go.Spot(1,1,-2*fe,0),de}),go.Shape.defineFigureGenerator("Prism1",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(.25*ie,.25*ae,!0);fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.75*ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,ie,.5*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.5*ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,ae).close());var ve=new go.PathFigure(.25*ie,.25*ae,!1);return fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,.5*ie,ae)),fe.spot1=new go.Spot(.408,.172),fe.spot2=new go.Spot(.833,.662),fe}),go.Shape.defineFigureGenerator("Prism2",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,.25*ae,!0);fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.75*ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,ie,.25*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.75*ie,.75*ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,ae).close());var ve=new go.PathFigure(0,ae,!1);return fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,.25*ie,.5*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,ie,.25*ae)),ve.add(new go.PathSegment(go.PathSegment.Move,0,.25*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.25*ie,.5*ae)),fe.spot1=new go.Spot(.25,.5),fe.spot2=new go.Spot(.75,.75),fe}),go.Shape.defineFigureGenerator("Pyramid1",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(.5*ie,0,!0);fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,ie,.75*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.5*ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,.75*ae).close());var ve=new go.PathFigure(.5*ie,0,!1);return fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,.5*ie,ae)),fe.spot1=new go.Spot(.25,.367),fe.spot2=new go.Spot(.75,.875),fe}),go.Shape.defineFigureGenerator("Pyramid2",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(.5*ie,0,!0);fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,ie,.85*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.5*ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,.85*ae).close());var ve=new go.PathFigure(.5*ie,0,!1);return fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,.5*ie,.7*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,0,.85*ae)),ve.add(new go.PathSegment(go.PathSegment.Move,.5*ie,.7*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,ie,.85*ae)),fe.spot1=new go.Spot(.25,.367),fe.spot2=new go.Spot(.75,.875),fe}),go.Shape.defineFigureGenerator("Actor",function(ye,ie,ae){var fe=new go.Geometry,de=.2,ve=.1,xe=we*de,he=we*ve,pe=.5,Se=.1,Ne=new go.PathFigure(pe*ie,(Se+ve)*ae,!0);fe.add(Ne),Ne.add(new go.PathSegment(go.PathSegment.Bezier,(pe-de)*ie,Se*ae,(pe-xe)*ie,(Se+ve)*ae,(pe-de)*ie,(Se+he)*ae)),Ne.add(new go.PathSegment(go.PathSegment.Bezier,pe*ie,(Se-ve)*ae,(pe-de)*ie,(Se-he)*ae,(pe-xe)*ie,(Se-ve)*ae)),Ne.add(new go.PathSegment(go.PathSegment.Bezier,(pe+de)*ie,Se*ae,(pe+xe)*ie,(Se-ve)*ae,(pe+de)*ie,(Se-he)*ae)),Ne.add(new go.PathSegment(go.PathSegment.Bezier,pe*ie,(Se+ve)*ae,(pe+de)*ie,(Se+he)*ae,(pe+xe)*ie,(Se+ve)*ae));var ze=.05,Ke=we*ze;pe=.05,Se=.25;var Ve=new go.PathFigure(.5*ie,.2*ae,!0);return fe.add(Ve),Ve.add(new go.PathSegment(go.PathSegment.Line,.95*ie,.2*ae)),pe=.95,Se=.25,Ve.add(new go.PathSegment(go.PathSegment.Bezier,(pe+ze)*ie,Se*ae,(pe+Ke)*ie,(Se-ze)*ae,(pe+ze)*ie,(Se-Ke)*ae)),Ve.add(new go.PathSegment(go.PathSegment.Line,ie,.6*ae)),Ve.add(new go.PathSegment(go.PathSegment.Line,.85*ie,.6*ae)),Ve.add(new go.PathSegment(go.PathSegment.Line,.85*ie,.35*ae)),ze=.025,Ke=we*ze,pe=.825,Se=.35,Ve.add(new go.PathSegment(go.PathSegment.Bezier,pe*ie,(Se-ze)*ae,(pe+ze)*ie,(Se-Ke)*ae,(pe+Ke)*ie,(Se-ze)*ae)),Ve.add(new go.PathSegment(go.PathSegment.Bezier,(pe-ze)*ie,Se*ae,(pe-Ke)*ie,(Se-ze)*ae,(pe-ze)*ie,(Se-Ke)*ae)),Ve.add(new go.PathSegment(go.PathSegment.Line,.8*ie,ae)),Ve.add(new go.PathSegment(go.PathSegment.Line,.55*ie,ae)),Ve.add(new go.PathSegment(go.PathSegment.Line,.55*ie,.7*ae)),ze=.05,Ke=we*ze,pe=.5,Se=.7,Ve.add(new go.PathSegment(go.PathSegment.Bezier,pe*ie,(Se-ze)*ae,(pe+ze)*ie,(Se-Ke)*ae,(pe+Ke)*ie,(Se-ze)*ae)),Ve.add(new go.PathSegment(go.PathSegment.Bezier,(pe-ze)*ie,Se*ae,(pe-Ke)*ie,(Se-ze)*ae,(pe-ze)*ie,(Se-Ke)*ae)),Ve.add(new go.PathSegment(go.PathSegment.Line,.45*ie,ae)),Ve.add(new go.PathSegment(go.PathSegment.Line,.2*ie,ae)),Ve.add(new go.PathSegment(go.PathSegment.Line,.2*ie,.35*ae)),ze=.025,Ke=we*ze,pe=.175,Se=.35,Ve.add(new go.PathSegment(go.PathSegment.Bezier,pe*ie,(Se-ze)*ae,(pe+ze)*ie,(Se-Ke)*ae,(pe+Ke)*ie,(Se-ze)*ae)),Ve.add(new go.PathSegment(go.PathSegment.Bezier,(pe-ze)*ie,Se*ae,(pe-Ke)*ie,(Se-ze)*ae,(pe-ze)*ie,(Se-Ke)*ae)),Ve.add(new go.PathSegment(go.PathSegment.Line,.15*ie,.6*ae)),Ve.add(new go.PathSegment(go.PathSegment.Line,0,.6*ae)),Ve.add(new go.PathSegment(go.PathSegment.Line,0,.25*ae)),ze=.05,Ke=we*ze,pe=.05,Se=.25,Ve.add(new go.PathSegment(go.PathSegment.Bezier,pe*ie,(Se-ze)*ae,(pe-ze)*ie,(Se-Ke)*ae,(pe-Ke)*ie,(Se-ze)*ae)),Ve.add(new go.PathSegment(go.PathSegment.Line,.5*ie,.2*ae)),fe.spot1=new go.Spot(.2,.2),fe.spot2=new go.Spot(.8,.65),fe}),go.Shape.setFigureParameter("Card",0,new sn("CornerCutoutSize",.2,.1,.9)),go.Shape.defineFigureGenerator("Card",function(ye,ie,ae){var fe=ye?ye.parameter1:NaN;isNaN(fe)&&(fe=.2);var de=new go.Geometry,ve=new go.PathFigure(ie,0,!0);return de.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,ie,ae)),ve.add(new go.PathSegment(go.PathSegment.Line,0,ae)),ve.add(new go.PathSegment(go.PathSegment.Line,0,fe*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,fe*ie,0).close()),de.spot1=new go.Spot(0,fe),de.spot2=go.Spot.BottomRight,de}),go.Shape.defineFigureGenerator("Collate",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(.5*ie,.5*ae,!0);fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,0,0)),de.add(new go.PathSegment(go.PathSegment.Line,ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,.5*ie,.5*ae));var ve=new go.PathFigure(.5*ie,.5*ae,!0);return fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,ie,ae)),ve.add(new go.PathSegment(go.PathSegment.Line,0,ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.5*ie,.5*ae)),fe.spot1=new go.Spot(.25,0),fe.spot2=new go.Spot(.75,.25),fe}),go.Shape.defineFigureGenerator("CreateRequest",function(ye,ie,ae){var fe=new go.Geometry,de=ye?ye.parameter1:NaN;isNaN(de)&&(de=.1);var ve=new go.PathFigure(0,0,!0);fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,ie,0)),ve.add(new go.PathSegment(go.PathSegment.Line,ie,ae)),ve.add(new go.PathSegment(go.PathSegment.Line,0,ae).close());var xe=new go.PathFigure(0,de*ae,!1);return fe.add(xe),xe.add(new go.PathSegment(go.PathSegment.Line,ie,de*ae)),xe.add(new go.PathSegment(go.PathSegment.Move,0,(1-de)*ae)),xe.add(new go.PathSegment(go.PathSegment.Line,ie,(1-de)*ae)),fe}),go.Shape.defineFigureGenerator("Database",function(ye,ie,ae){var fe=new go.Geometry,de=we*.5,ve=we*.1,xe=new go.PathFigure(ie,.1*ae,!0);fe.add(xe),xe.add(new go.PathSegment(go.PathSegment.Line,ie,.9*ae)),xe.add(new go.PathSegment(go.PathSegment.Bezier,.5*ie,ae,ie,(.9+ve)*ae,(.5+de)*ie,ae)),xe.add(new go.PathSegment(go.PathSegment.Bezier,0,.9*ae,(.5-de)*ie,ae,0,(.9+ve)*ae)),xe.add(new go.PathSegment(go.PathSegment.Line,0,.1*ae)),xe.add(new go.PathSegment(go.PathSegment.Bezier,.5*ie,0,0,(.1-ve)*ae,(.5-de)*ie,0)),xe.add(new go.PathSegment(go.PathSegment.Bezier,ie,.1*ae,(.5+de)*ie,0,ie,(.1-ve)*ae));var he=new go.PathFigure(ie,.1*ae,!1);return fe.add(he),he.add(new go.PathSegment(go.PathSegment.Bezier,.5*ie,.2*ae,ie,(.1+ve)*ae,(.5+de)*ie,.2*ae)),he.add(new go.PathSegment(go.PathSegment.Bezier,0,.1*ae,(.5-de)*ie,.2*ae,0,(.1+ve)*ae)),he.add(new go.PathSegment(go.PathSegment.Move,ie,.2*ae)),he.add(new go.PathSegment(go.PathSegment.Bezier,.5*ie,.3*ae,ie,(.2+ve)*ae,(.5+de)*ie,.3*ae)),he.add(new go.PathSegment(go.PathSegment.Bezier,0,.2*ae,(.5-de)*ie,.3*ae,0,(.2+ve)*ae)),he.add(new go.PathSegment(go.PathSegment.Move,ie,.3*ae)),he.add(new go.PathSegment(go.PathSegment.Bezier,.5*ie,.4*ae,ie,(.3+ve)*ae,(.5+de)*ie,.4*ae)),he.add(new go.PathSegment(go.PathSegment.Bezier,0,.3*ae,(.5-de)*ie,.4*ae,0,(.3+ve)*ae)),fe.spot1=new go.Spot(0,.4),fe.spot2=new go.Spot(1,.9),fe}),go.Shape.defineFigureGenerator("DataStorage",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,0,!0);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.75*ie,0)),de.add(new go.PathSegment(go.PathSegment.Bezier,.75*ie,ae,ie,0,ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,0,0,.25*ie,.9*ae,.25*ie,.1*ae).close()),fe.spot1=new go.Spot(.226,0),fe.spot2=new go.Spot(.81,1),fe}),go.Shape.defineFigureGenerator("DiskStorage",function(ye,ie,ae){var fe=new go.Geometry,de=we*.5,ve=we*.1,xe=new go.PathFigure(ie,.1*ae,!0);fe.add(xe),xe.add(new go.PathSegment(go.PathSegment.Line,ie,.9*ae)),xe.add(new go.PathSegment(go.PathSegment.Bezier,.5*ie,ae,ie,(.9+ve)*ae,(.5+de)*ie,ae)),xe.add(new go.PathSegment(go.PathSegment.Bezier,0,.9*ae,(.5-de)*ie,ae,0,(.9+ve)*ae)),xe.add(new go.PathSegment(go.PathSegment.Line,0,.1*ae)),xe.add(new go.PathSegment(go.PathSegment.Bezier,.5*ie,0,0,(.1-ve)*ae,(.5-de)*ie,0)),xe.add(new go.PathSegment(go.PathSegment.Bezier,ie,.1*ae,(.5+de)*ie,0,ie,(.1-ve)*ae));var he=new go.PathFigure(ie,.1*ae,!1);return fe.add(he),he.add(new go.PathSegment(go.PathSegment.Bezier,.5*ie,.2*ae,ie,(.1+ve)*ae,(.5+de)*ie,.2*ae)),he.add(new go.PathSegment(go.PathSegment.Bezier,0,.1*ae,(.5-de)*ie,.2*ae,0,(.1+ve)*ae)),he.add(new go.PathSegment(go.PathSegment.Move,ie,.2*ae)),he.add(new go.PathSegment(go.PathSegment.Bezier,.5*ie,.3*ae,ie,(.2+ve)*ae,(.5+de)*ie,.3*ae)),he.add(new go.PathSegment(go.PathSegment.Bezier,0,.2*ae,(.5-de)*ie,.3*ae,0,(.2+ve)*ae)),fe.spot1=new go.Spot(0,.3),fe.spot2=new go.Spot(1,.9),fe}),go.Shape.defineFigureGenerator("Display",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(.25*ie,0,!0);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.75*ie,0)),de.add(new go.PathSegment(go.PathSegment.Bezier,.75*ie,ae,ie,0,ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,.25*ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,.5*ae).close()),fe.spot1=new go.Spot(.25,0),fe.spot2=new go.Spot(.75,1),fe}),go.Shape.defineFigureGenerator("DividedEvent",function(ye,ie,ae){var fe=new go.Geometry,de=ye?ye.parameter1:NaN;isNaN(de)?de=.2:de<.15&&(de=.15);var ve=we*.2,xe=new go.PathFigure(0,.2*ae,!0);fe.add(xe),xe.add(new go.PathSegment(go.PathSegment.Bezier,.2*ie,0,0,(.2-ve)*ae,(.2-ve)*ie,0)),xe.add(new go.PathSegment(go.PathSegment.Line,.8*ie,0)),xe.add(new go.PathSegment(go.PathSegment.Bezier,ie,.2*ae,(.8+ve)*ie,0,ie,(.2-ve)*ae)),xe.add(new go.PathSegment(go.PathSegment.Line,ie,.8*ae)),xe.add(new go.PathSegment(go.PathSegment.Bezier,.8*ie,ae,ie,(.8+ve)*ae,(.8+ve)*ie,ae)),xe.add(new go.PathSegment(go.PathSegment.Line,.2*ie,ae)),xe.add(new go.PathSegment(go.PathSegment.Bezier,0,.8*ae,(.2-ve)*ie,ae,0,(.8+ve)*ae)),xe.add(new go.PathSegment(go.PathSegment.Line,0,.2*ae));var he=new go.PathFigure(0,de*ae,!1);return fe.add(he),he.add(new go.PathSegment(go.PathSegment.Line,ie,de*ae)),fe}),go.Shape.defineFigureGenerator("DividedProcess",function(ye,ie,ae){var fe=new go.Geometry,de=ye?ye.parameter1:NaN;(isNaN(de)||de<.1)&&(de=.1);var ve=new go.PathFigure(0,0,!0);fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,ie,0)),ve.add(new go.PathSegment(go.PathSegment.Line,ie,ae)),ve.add(new go.PathSegment(go.PathSegment.Line,0,ae).close());var xe=new go.PathFigure(0,de*ae,!1);return fe.add(xe),xe.add(new go.PathSegment(go.PathSegment.Line,ie,de*ae)),fe}),go.Shape.defineFigureGenerator("Document",function(ye,ie,ae){var fe=new go.Geometry;ae=ae/.8;var de=new go.PathFigure(0,.7*ae,!0);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,0,0)),de.add(new go.PathSegment(go.PathSegment.Line,ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,ie,.7*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,0,.7*ae,.5*ie,.4*ae,.5*ie,ae).close()),fe.spot1=go.Spot.TopLeft,fe.spot2=new go.Spot(1,.6),fe}),go.Shape.defineFigureGenerator("ExternalOrganization",function(ye,ie,ae){var fe=new go.Geometry,de=ye?ye.parameter1:NaN;(isNaN(de)||de<.2)&&(de=.2);var ve=new go.PathFigure(0,0,!0);fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,ie,0)),ve.add(new go.PathSegment(go.PathSegment.Line,ie,ae)),ve.add(new go.PathSegment(go.PathSegment.Line,0,ae).close());var xe=new go.PathFigure(de*ie,0,!1);return fe.add(xe),xe.add(new go.PathSegment(go.PathSegment.Line,0,de*ae)),xe.add(new go.PathSegment(go.PathSegment.Move,ie,de*ae)),xe.add(new go.PathSegment(go.PathSegment.Line,(1-de)*ie,0)),xe.add(new go.PathSegment(go.PathSegment.Move,0,(1-de)*ae)),xe.add(new go.PathSegment(go.PathSegment.Line,de*ie,ae)),xe.add(new go.PathSegment(go.PathSegment.Move,(1-de)*ie,ae)),xe.add(new go.PathSegment(go.PathSegment.Line,ie,(1-de)*ae)),fe}),go.Shape.defineFigureGenerator("ExternalProcess",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(.5*ie,0,!0);fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,ie,.5*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.5*ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,.5*ae).close());var ve=new go.PathFigure(.1*ie,.4*ae,!1);return fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,.1*ie,.6*ae)),ve.add(new go.PathSegment(go.PathSegment.Move,.9*ie,.6*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.9*ie,.4*ae)),ve.add(new go.PathSegment(go.PathSegment.Move,.6*ie,.1*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.4*ie,.1*ae)),ve.add(new go.PathSegment(go.PathSegment.Move,.4*ie,.9*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.6*ie,.9*ae)),fe.spot1=new go.Spot(.25,.25),fe.spot2=new go.Spot(.75,.75),fe}),go.Shape.defineFigureGenerator("File",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,0,!0);fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.75*ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,ie,.25*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,ae).close());var ve=new go.PathFigure(.75*ie,0,!1);return fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,.75*ie,.25*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,ie,.25*ae)),fe.spot1=new go.Spot(0,.25),fe.spot2=go.Spot.BottomRight,fe}),go.Shape.defineFigureGenerator("Interrupt",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(ie,.5*ae,!0);fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,0,ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,0)),de.add(new go.PathSegment(go.PathSegment.Line,ie,.5*ae));var ve=new go.PathFigure(ie,.5*ae,!1);fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,ie,ae));var xe=new go.PathFigure(ie,.5*ae,!1);return fe.add(xe),xe.add(new go.PathSegment(go.PathSegment.Line,ie,0)),fe.spot1=new go.Spot(0,.25),fe.spot2=new go.Spot(.5,.75),fe}),go.Shape.defineFigureGenerator("InternalStorage",function(ye,ie,ae){var fe=new go.Geometry,de=ye?ye.parameter1:NaN,ve=ye?ye.parameter2:NaN;isNaN(de)&&(de=.1),isNaN(ve)&&(ve=.1);var xe=new go.PathFigure(0,0,!0);fe.add(xe),xe.add(new go.PathSegment(go.PathSegment.Line,ie,0)),xe.add(new go.PathSegment(go.PathSegment.Line,ie,ae)),xe.add(new go.PathSegment(go.PathSegment.Line,0,ae).close());var he=new go.PathFigure(de*ie,0,!1);return fe.add(he),he.add(new go.PathSegment(go.PathSegment.Line,de*ie,ae)),he.add(new go.PathSegment(go.PathSegment.Move,0,ve*ae)),he.add(new go.PathSegment(go.PathSegment.Line,ie,ve*ae)),fe}),go.Shape.defineFigureGenerator("Junction",function(ye,ie,ae){var fe=new go.Geometry,de=1/Math.SQRT2,ve=(1-1/Math.SQRT2)/2,xe=we*.5,he=.5,pe=new go.PathFigure(ie,he*ae,!0);fe.add(pe),pe.add(new go.PathSegment(go.PathSegment.Bezier,he*ie,ae,ie,(he+xe)*ae,(he+xe)*ie,ae)),pe.add(new go.PathSegment(go.PathSegment.Bezier,0,he*ae,(he-xe)*ie,ae,0,(he+xe)*ae)),pe.add(new go.PathSegment(go.PathSegment.Bezier,he*ie,0,0,(he-xe)*ae,(he-xe)*ie,0)),pe.add(new go.PathSegment(go.PathSegment.Bezier,ie,he*ae,(he+xe)*ie,0,ie,(he-xe)*ae));var Se=new go.PathFigure((ve+de)*ie,(ve+de)*ae,!1);return fe.add(Se),Se.add(new go.PathSegment(go.PathSegment.Line,ve*ie,ve*ae)),Se.add(new go.PathSegment(go.PathSegment.Move,ve*ie,(ve+de)*ae)),Se.add(new go.PathSegment(go.PathSegment.Line,(ve+de)*ie,ve*ae)),fe}),go.Shape.defineFigureGenerator("LinedDocument",function(ye,ie,ae){var fe=new go.Geometry;ae=ae/.8;var de=new go.PathFigure(0,.7*ae,!0);fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,0,0)),de.add(new go.PathSegment(go.PathSegment.Line,ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,ie,.7*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,0,.7*ae,.5*ie,.4*ae,.5*ie,ae).close());var ve=new go.PathFigure(.1*ie,0,!1);return fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,.1*ie,.75*ae)),fe.spot1=new go.Spot(.1,0),fe.spot2=new go.Spot(1,.6),fe}),go.Shape.defineFigureGenerator("LoopLimit",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,ae,!0);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,0,.25*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.25*ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,.75*ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,ie,.25*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie,ae).close()),fe.spot1=new go.Spot(0,.25),fe.spot2=go.Spot.BottomRight,fe}),go.Shape.defineFigureGenerator("MagneticTape",function(ye,ie,ae){var fe=new go.Geometry,de=we*.5,ve=.5,xe=new go.PathFigure(.5*ie,ae,!0);return fe.add(xe),xe.add(new go.PathSegment(go.PathSegment.Bezier,0,ve*ae,(ve-de)*ie,ae,0,(ve+de)*ae)),xe.add(new go.PathSegment(go.PathSegment.Bezier,ve*ie,0,0,(ve-de)*ae,(ve-de)*ie,0)),xe.add(new go.PathSegment(go.PathSegment.Bezier,ie,ve*ae,(ve+de)*ie,0,ie,(ve-de)*ae)),xe.add(new go.PathSegment(go.PathSegment.Bezier,(ve+.1)*ie,.9*ae,ie,(ve+de)*ae,(ve+de)*ie,.9*ae)),xe.add(new go.PathSegment(go.PathSegment.Line,ie,.9*ae)),xe.add(new go.PathSegment(go.PathSegment.Line,ie,ae)),xe.add(new go.PathSegment(go.PathSegment.Line,.5*ie,ae)),fe.spot1=new go.Spot(.15,.15),fe.spot2=new go.Spot(.85,.8),fe}),go.Shape.defineFigureGenerator("ManualInput",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(ie,0,!0);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,.25*ae).close()),fe.spot1=new go.Spot(0,.25),fe.spot2=go.Spot.BottomRight,fe}),go.Shape.defineFigureGenerator("MessageFromUser",function(ye,ie,ae){var fe=new go.Geometry,de=ye?ye.parameter1:NaN;isNaN(de)&&(de=.7);var ve=new go.PathFigure(0,0,!0);return fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,ie,0)),ve.add(new go.PathSegment(go.PathSegment.Line,de*ie,.5*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,ie,ae)),ve.add(new go.PathSegment(go.PathSegment.Line,0,ae).close()),fe.spot1=go.Spot.TopLeft,fe}),go.Shape.defineFigureGenerator("MicroformProcessing",function(ye,ie,ae){var fe=new go.Geometry,de=ye?ye.parameter1:NaN;isNaN(de)&&(de=.25);var ve=new go.PathFigure(0,0,!0);return fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,.5*ie,de*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,ie,0)),ve.add(new go.PathSegment(go.PathSegment.Line,ie,ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.5*ie,(1-de)*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,0,ae).close()),fe}),go.Shape.defineFigureGenerator("MicroformRecording",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,0,!0);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.75*ie,.25*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie,.15*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie,.85*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.75*ie,.75*ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,ae).close()),fe.spot1=new go.Spot(0,.25),fe.spot2=new go.Spot(1,.75),fe}),go.Shape.defineFigureGenerator("MultiDocument",function(ye,ie,ae){var fe=new go.Geometry;ae=ae/.8;var de=new go.PathFigure(ie,0,!0);fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,ie,.5*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,.9*ie,.44*ae,.96*ie,.47*ae,.93*ie,.45*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.9*ie,.6*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,.8*ie,.54*ae,.86*ie,.57*ae,.83*ie,.55*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.8*ie,.7*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,0,.7*ae,.4*ie,.4*ae,.4*ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,.2*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.1*ie,.2*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.1*ie,.1*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.2*ie,.1*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.2*ie,0).close());var ve=new go.PathFigure(.1*ie,.2*ae,!1);return fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,.8*ie,.2*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.8*ie,.54*ae)),ve.add(new go.PathSegment(go.PathSegment.Move,.2*ie,.1*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.9*ie,.1*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.9*ie,.44*ae)),fe.spot1=new go.Spot(0,.25),fe.spot2=new go.Spot(.8,.77),fe}),go.Shape.defineFigureGenerator("MultiProcess",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(.1*ie,.1*ae,!0);fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.2*ie,.1*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.2*ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,ie,.8*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.9*ie,.8*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.9*ie,.9*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.8*ie,.9*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.8*ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,.2*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.1*ie,.2*ae).close());var ve=new go.PathFigure(.2*ie,.1*ae,!1);return fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,.9*ie,.1*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.9*ie,.8*ae)),ve.add(new go.PathSegment(go.PathSegment.Move,.1*ie,.2*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.8*ie,.2*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.8*ie,.9*ae)),fe.spot1=new go.Spot(0,.2),fe.spot2=new go.Spot(.8,1),fe}),go.Shape.defineFigureGenerator("OfflineStorage",function(ye,ie,ae){var fe=new go.Geometry,de=ye?ye.parameter1:NaN;isNaN(de)&&(de=.1);var ve=1-de,xe=new go.PathFigure(0,0,!0);fe.add(xe),xe.add(new go.PathSegment(go.PathSegment.Line,ie,0)),xe.add(new go.PathSegment(go.PathSegment.Line,.5*ie,ae).close());var he=new go.PathFigure(.5*de*ie,de*ae,!1);return fe.add(he),he.add(new go.PathSegment(go.PathSegment.Line,(1-.5*de)*ie,de*ae)),fe}),go.Shape.defineFigureGenerator("OffPageConnector",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,0,!0);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.75*ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,ie,.5*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.75*ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,ae).close()),fe.spot1=go.Spot.TopLeft,fe.spot2=new go.Spot(.75,1),fe}),go.Shape.defineFigureGenerator("Or",function(ye,ie,ae){var fe=new go.Geometry,de=we*.5,ve=.5,xe=new go.PathFigure(ie,ve*ae,!0);fe.add(xe),xe.add(new go.PathSegment(go.PathSegment.Bezier,ve*ie,ae,ie,(ve+de)*ae,(ve+de)*ie,ae)),xe.add(new go.PathSegment(go.PathSegment.Bezier,0,ve*ae,(ve-de)*ie,ae,0,(ve+de)*ae)),xe.add(new go.PathSegment(go.PathSegment.Bezier,ve*ie,0,0,(ve-de)*ae,(ve-de)*ie,0)),xe.add(new go.PathSegment(go.PathSegment.Bezier,ie,ve*ae,(ve+de)*ie,0,ie,(ve-de)*ae));var he=new go.PathFigure(ie,.5*ae,!1);return fe.add(he),he.add(new go.PathSegment(go.PathSegment.Line,0,.5*ae)),he.add(new go.PathSegment(go.PathSegment.Move,.5*ie,ae)),he.add(new go.PathSegment(go.PathSegment.Line,.5*ie,0)),fe}),go.Shape.defineFigureGenerator("PaperTape",function(ye,ie,ae){var fe=new go.Geometry;ae=ae/.8;var de=new go.PathFigure(0,.7*ae,!0);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,0,.3*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,ie,.3*ae,.5*ie,.6*ae,.5*ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,ie,.7*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,0,.7*ae,.5*ie,.4*ae,.5*ie,ae).close()),fe.spot1=new go.Spot(0,.49),fe.spot2=new go.Spot(1,.75),fe}),go.Shape.defineFigureGenerator("PrimitiveFromCall",function(ye,ie,ae){var fe=new go.Geometry,de=ye?ye.parameter1:NaN,ve=ye?ye.parameter2:NaN;isNaN(de)&&(de=.1),isNaN(ve)&&(ve=.3);var xe=new go.PathFigure(0,0,!0);return fe.add(xe),xe.add(new go.PathSegment(go.PathSegment.Line,ie,0)),xe.add(new go.PathSegment(go.PathSegment.Line,(1-ve)*ie,.5*ae)),xe.add(new go.PathSegment(go.PathSegment.Line,ie,ae)),xe.add(new go.PathSegment(go.PathSegment.Line,0,ae).close()),fe}),go.Shape.defineFigureGenerator("PrimitiveToCall",function(ye,ie,ae){var fe=new go.Geometry,de=ye?ye.parameter1:NaN,ve=ye?ye.parameter2:NaN;isNaN(de)&&(de=.1),isNaN(ve)&&(ve=.3);var xe=new go.PathFigure(0,0,!0);return fe.add(xe),xe.add(new go.PathSegment(go.PathSegment.Line,(1-ve)*ie,0)),xe.add(new go.PathSegment(go.PathSegment.Line,ie,.5*ae)),xe.add(new go.PathSegment(go.PathSegment.Line,(1-ve)*ie,ae)),xe.add(new go.PathSegment(go.PathSegment.Line,0,ae).close()),fe}),go.Shape.defineFigureGenerator("Procedure",function(ye,ie,ae){var fe=new go.Geometry,de=ye?ye.parameter1:NaN;isNaN(de)&&(de=.1);var ve=new go.PathFigure(0,0,!0);fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,ie,0)),ve.add(new go.PathSegment(go.PathSegment.Line,ie,ae)),ve.add(new go.PathSegment(go.PathSegment.Line,0,ae).close());var xe=new go.PathFigure((1-de)*ie,0,!1);return fe.add(xe),xe.add(new go.PathSegment(go.PathSegment.Line,(1-de)*ie,ae)),xe.add(new go.PathSegment(go.PathSegment.Move,de*ie,0)),xe.add(new go.PathSegment(go.PathSegment.Line,de*ie,ae)),fe}),go.Shape.defineFigureGenerator("Process",function(ye,ie,ae){var fe=new go.Geometry,de=ye?ye.parameter1:NaN;isNaN(de)&&(de=.1);var ve=new go.PathFigure(0,0,!0);fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,ie,0)),ve.add(new go.PathSegment(go.PathSegment.Line,ie,ae)),ve.add(new go.PathSegment(go.PathSegment.Line,0,ae).close());var xe=new go.PathFigure(de*ie,0,!1);return fe.add(xe),xe.add(new go.PathSegment(go.PathSegment.Line,de*ie,ae)),fe.spot2=go.Spot.BottomRight,fe}),go.Shape.defineFigureGenerator("Sort",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(.5*ie,0,!0);fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,ie,.5*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.5*ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,.5*ae).close());var ve=new go.PathFigure(0,.5*ae,!1);return fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,ie,.5*ae)),fe.spot1=new go.Spot(.25,.25),fe.spot2=new go.Spot(.75,.5),fe}),go.Shape.defineFigureGenerator("Start",function(ye,ie,ae){var fe=new go.Geometry,de=ye?ye.parameter1:NaN;isNaN(de)&&(de=.25);var ve=new go.PathFigure(de*ie,0,!0);fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Arc,270,180,.75*ie,.5*ae,.25*ie,.5*ae)),ve.add(new go.PathSegment(go.PathSegment.Arc,90,180,.25*ie,.5*ae,.25*ie,.5*ae));var xe=new go.PathFigure(de*ie,0,!1);return fe.add(xe),xe.add(new go.PathSegment(go.PathSegment.Line,de*ie,ae)),xe.add(new go.PathSegment(go.PathSegment.Move,(1-de)*ie,0)),xe.add(new go.PathSegment(go.PathSegment.Line,(1-de)*ie,ae)),fe.spot1=new go.Spot(de,0),fe.spot2=new go.Spot(1-de,1),fe}),go.Shape.defineFigureGenerator("Terminator",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(.25*ie,0,!0);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Arc,270,180,.75*ie,.5*ae,.25*ie,.5*ae)),de.add(new go.PathSegment(go.PathSegment.Arc,90,180,.25*ie,.5*ae,.25*ie,.5*ae)),fe.spot1=new go.Spot(.23,0),fe.spot2=new go.Spot(.77,1),fe}),go.Shape.defineFigureGenerator("TransmittalTape",function(ye,ie,ae){var fe=new go.Geometry,de=ye?ye.parameter1:NaN;isNaN(de)&&(de=.1);var ve=new go.PathFigure(0,0,!0);return fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,ie,0)),ve.add(new go.PathSegment(go.PathSegment.Line,ie,ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.75*ie,(1-de)*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,0,(1-de)*ae).close()),fe.spot1=go.Spot.TopLeft,fe}),go.Shape.defineFigureGenerator("AndGate",function(ye,ie,ae){var fe=new go.Geometry,de=we*.5,ve=new go.PathFigure(0,0,!0);return fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,.5*ie,0)),ve.add(new go.PathSegment(go.PathSegment.Bezier,ie,.5*ae,(.5+de)*ie,0,ie,(.5-de)*ae)),ve.add(new go.PathSegment(go.PathSegment.Bezier,.5*ie,ae,ie,(.5+de)*ae,(.5+de)*ie,ae)),ve.add(new go.PathSegment(go.PathSegment.Line,0,ae).close()),fe.spot1=go.Spot.TopLeft,fe.spot2=new go.Spot(.55,1),fe}),go.Shape.defineFigureGenerator("Buffer",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,0,!0);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,ie,.5*ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,ae).close()),fe.spot1=new go.Spot(0,.25),fe.spot2=new go.Spot(.5,.75),fe}),go.Shape.defineFigureGenerator("Clock",function(ye,ie,ae){var fe=new go.Geometry,de=we*.5,ve=.5,xe=new go.PathFigure(ie,ve*ae,!0);fe.add(xe),xe.add(new go.PathSegment(go.PathSegment.Bezier,ve*ie,ae,ie,(ve+de)*ae,(ve+de)*ie,ae)),xe.add(new go.PathSegment(go.PathSegment.Bezier,0,ve*ae,(ve-de)*ie,ae,0,(ve+de)*ae)),xe.add(new go.PathSegment(go.PathSegment.Bezier,ve*ie,0,0,(ve-de)*ae,(ve-de)*ie,0)),xe.add(new go.PathSegment(go.PathSegment.Bezier,ie,ve*ae,(ve+de)*ie,0,ie,(ve-de)*ae));var he=new go.PathFigure(ie,ve*ae,!1);fe.add(he),he.add(new go.PathSegment(go.PathSegment.Line,ie,ve*ae));var pe=new go.PathFigure(.8*ie,.75*ae,!1);return fe.add(pe),pe.add(new go.PathSegment(go.PathSegment.Line,.8*ie,.25*ae)),pe.add(new go.PathSegment(go.PathSegment.Line,.6*ie,.25*ae)),pe.add(new go.PathSegment(go.PathSegment.Line,.6*ie,.75*ae)),pe.add(new go.PathSegment(go.PathSegment.Line,.4*ie,.75*ae)),pe.add(new go.PathSegment(go.PathSegment.Line,.4*ie,.25*ae)),pe.add(new go.PathSegment(go.PathSegment.Line,.2*ie,.25*ae)),pe.add(new go.PathSegment(go.PathSegment.Line,.2*ie,.75*ae)),fe}),go.Shape.defineFigureGenerator("Ground",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(.5*ie,0,!1);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.5*ie,.4*ae)),de.add(new go.PathSegment(go.PathSegment.Move,.2*ie,.6*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.8*ie,.6*ae)),de.add(new go.PathSegment(go.PathSegment.Move,.3*ie,.8*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.7*ie,.8*ae)),de.add(new go.PathSegment(go.PathSegment.Move,.4*ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,.6*ie,ae)),fe}),go.Shape.defineFigureGenerator("Inverter",function(ye,ie,ae){var fe=new go.Geometry,de=we*.1,ve=.1,xe=.9,he=.5,pe=new go.PathFigure(.8*ie,.5*ae,!0);fe.add(pe),pe.add(new go.PathSegment(go.PathSegment.Line,0,ae)),pe.add(new go.PathSegment(go.PathSegment.Line,0,0)),pe.add(new go.PathSegment(go.PathSegment.Line,.8*ie,.5*ae));var Se=new go.PathFigure((xe+ve)*ie,he*ae,!0);return fe.add(Se),Se.add(new go.PathSegment(go.PathSegment.Bezier,xe*ie,(he+ve)*ae,(xe+ve)*ie,(he+de)*ae,(xe+de)*ie,(he+ve)*ae)),Se.add(new go.PathSegment(go.PathSegment.Bezier,(xe-ve)*ie,he*ae,(xe-de)*ie,(he+ve)*ae,(xe-ve)*ie,(he+de)*ae)),Se.add(new go.PathSegment(go.PathSegment.Bezier,xe*ie,(he-ve)*ae,(xe-ve)*ie,(he-de)*ae,(xe-de)*ie,(he-ve)*ae)),Se.add(new go.PathSegment(go.PathSegment.Bezier,(xe+ve)*ie,he*ae,(xe+de)*ie,(he-ve)*ae,(xe+ve)*ie,(he-de)*ae)),fe.spot1=new go.Spot(0,.25),fe.spot2=new go.Spot(.4,.75),fe}),go.Shape.defineFigureGenerator("NandGate",function(ye,ie,ae){var fe=new go.Geometry,de=we*.5,ve=we*.4,xe=we*.1,he=.1,pe=.9,Se=.5,Ne=new go.PathFigure(.8*ie,.5*ae,!0);fe.add(Ne),Ne.add(new go.PathSegment(go.PathSegment.Bezier,.4*ie,ae,.8*ie,(.5+ve)*ae,(.4+de)*ie,ae)),Ne.add(new go.PathSegment(go.PathSegment.Line,0,ae)),Ne.add(new go.PathSegment(go.PathSegment.Line,0,0)),Ne.add(new go.PathSegment(go.PathSegment.Line,.4*ie,0)),Ne.add(new go.PathSegment(go.PathSegment.Bezier,.8*ie,.5*ae,(.4+de)*ie,0,.8*ie,(.5-ve)*ae));var ze=new go.PathFigure((pe+he)*ie,Se*ae,!0);return fe.add(ze),ze.add(new go.PathSegment(go.PathSegment.Bezier,pe*ie,(Se+he)*ae,(pe+he)*ie,(Se+xe)*ae,(pe+xe)*ie,(Se+he)*ae)),ze.add(new go.PathSegment(go.PathSegment.Bezier,(pe-he)*ie,Se*ae,(pe-xe)*ie,(Se+he)*ae,(pe-he)*ie,(Se+xe)*ae)),ze.add(new go.PathSegment(go.PathSegment.Bezier,pe*ie,(Se-he)*ae,(pe-he)*ie,(Se-xe)*ae,(pe-xe)*ie,(Se-he)*ae)),ze.add(new go.PathSegment(go.PathSegment.Bezier,(pe+he)*ie,Se*ae,(pe+xe)*ie,(Se-he)*ae,(pe+he)*ie,(Se-xe)*ae)),fe.spot1=new go.Spot(0,.05),fe.spot2=new go.Spot(.55,.95),fe}),go.Shape.defineFigureGenerator("NorGate",function(ye,ie,ae){var fe=new go.Geometry,de=.5,ve=we*de,xe=0,he=.5,pe=new go.PathFigure(.8*ie,.5*ae,!0);fe.add(pe),pe.add(new go.PathSegment(go.PathSegment.Bezier,0,ae,.7*ie,(he+ve)*ae,(xe+ve)*ie,(he+de)*ae)),pe.add(new go.PathSegment(go.PathSegment.Bezier,0,0,.25*ie,.75*ae,.25*ie,.25*ae)),pe.add(new go.PathSegment(go.PathSegment.Bezier,.8*ie,.5*ae,(xe+ve)*ie,(he-de)*ae,.7*ie,(he-ve)*ae)),de=.1,ve=we*.1,xe=.9,he=.5;var Se=new go.PathFigure((xe-de)*ie,he*ae,!0);return fe.add(Se),Se.add(new go.PathSegment(go.PathSegment.Bezier,xe*ie,(he-de)*ae,(xe-de)*ie,(he-ve)*ae,(xe-ve)*ie,(he-de)*ae)),Se.add(new go.PathSegment(go.PathSegment.Bezier,(xe+de)*ie,he*ae,(xe+ve)*ie,(he-de)*ae,(xe+de)*ie,(he-ve)*ae)),Se.add(new go.PathSegment(go.PathSegment.Bezier,xe*ie,(he+de)*ae,(xe+de)*ie,(he+ve)*ae,(xe+ve)*ie,(he+de)*ae)),Se.add(new go.PathSegment(go.PathSegment.Bezier,(xe-de)*ie,he*ae,(xe-ve)*ie,(he+de)*ae,(xe-de)*ie,(he+ve)*ae)),fe.spot1=new go.Spot(.2,.25),fe.spot2=new go.Spot(.6,.75),fe}),go.Shape.defineFigureGenerator("OrGate",function(ye,ie,ae){var fe=new go.Geometry,de=.5,ve=we*de,xe=0,he=.5,pe=new go.PathFigure(0,0,!0);return fe.add(pe),pe.add(new go.PathSegment(go.PathSegment.Bezier,ie,.5*ae,(xe+ve+ve)*ie,(he-de)*ae,.8*ie,(he-ve)*ae)),pe.add(new go.PathSegment(go.PathSegment.Bezier,0,ae,.8*ie,(he+ve)*ae,(xe+ve+ve)*ie,(he+de)*ae)),pe.add(new go.PathSegment(go.PathSegment.Bezier,0,0,.25*ie,.75*ae,.25*ie,.25*ae).close()),fe.spot1=new go.Spot(.2,.25),fe.spot2=new go.Spot(.75,.75),fe}),go.Shape.defineFigureGenerator("XnorGate",function(ye,ie,ae){var fe=new go.Geometry,de=.5,ve=we*de,xe=.2,he=.5,pe=new go.PathFigure(.1*ie,0,!1);fe.add(pe),pe.add(new go.PathSegment(go.PathSegment.Bezier,.1*ie,ae,.35*ie,.25*ae,.35*ie,.75*ae));var Se=new go.PathFigure(.8*ie,.5*ae,!0);fe.add(Se),Se.add(new go.PathSegment(go.PathSegment.Bezier,.2*ie,ae,.7*ie,(he+ve)*ae,(xe+ve)*ie,(he+de)*ae)),Se.add(new go.PathSegment(go.PathSegment.Bezier,.2*ie,0,.45*ie,.75*ae,.45*ie,.25*ae)),Se.add(new go.PathSegment(go.PathSegment.Bezier,.8*ie,.5*ae,(xe+ve)*ie,(he-de)*ae,.7*ie,(he-ve)*ae)),de=.1,ve=we*.1,xe=.9,he=.5;var Ne=new go.PathFigure((xe-de)*ie,he*ae,!0);return fe.add(Ne),Ne.add(new go.PathSegment(go.PathSegment.Bezier,xe*ie,(he-de)*ae,(xe-de)*ie,(he-ve)*ae,(xe-ve)*ie,(he-de)*ae)),Ne.add(new go.PathSegment(go.PathSegment.Bezier,(xe+de)*ie,he*ae,(xe+ve)*ie,(he-de)*ae,(xe+de)*ie,(he-ve)*ae)),Ne.add(new go.PathSegment(go.PathSegment.Bezier,xe*ie,(he+de)*ae,(xe+de)*ie,(he+ve)*ae,(xe+ve)*ie,(he+de)*ae)),Ne.add(new go.PathSegment(go.PathSegment.Bezier,(xe-de)*ie,he*ae,(xe-ve)*ie,(he+de)*ae,(xe-de)*ie,(he+ve)*ae)),fe.spot1=new go.Spot(.4,.25),fe.spot2=new go.Spot(.65,.75),fe}),go.Shape.defineFigureGenerator("XorGate",function(ye,ie,ae){var fe=new go.Geometry,de=.5,ve=we*de,xe=.2,he=.5,pe=new go.PathFigure(.1*ie,0,!1);fe.add(pe),pe.add(new go.PathSegment(go.PathSegment.Bezier,.1*ie,ae,.35*ie,.25*ae,.35*ie,.75*ae));var Se=new go.PathFigure(.2*ie,0,!0);return fe.add(Se),Se.add(new go.PathSegment(go.PathSegment.Bezier,ie,.5*ae,(xe+ve)*ie,(he-de)*ae,.9*ie,(he-ve)*ae)),Se.add(new go.PathSegment(go.PathSegment.Bezier,.2*ie,ae,.9*ie,(he+ve)*ae,(xe+ve)*ie,(he+de)*ae)),Se.add(new go.PathSegment(go.PathSegment.Bezier,.2*ie,0,.45*ie,.75*ae,.45*ie,.25*ae).close()),fe.spot1=new go.Spot(.4,.25),fe.spot2=new go.Spot(.8,.75),fe}),go.Shape.defineFigureGenerator("Capacitor",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,0,!1);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,0,ae)),de.add(new go.PathSegment(go.PathSegment.Move,ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,ie,ae)),fe}),go.Shape.defineFigureGenerator("Resistor",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,.5*ae,!1);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.1*ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,.2*ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,.3*ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,.4*ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,.5*ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,.6*ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,.7*ie,.5*ae)),fe}),go.Shape.defineFigureGenerator("Inductor",function(ye,ie,ae){var fe=new go.Geometry,de=we*.1,ve=.1,xe=.1,he=.5,pe=new go.PathFigure((xe-de*.5)*ie,ae,!1);return fe.add(pe),pe.add(new go.PathSegment(go.PathSegment.Bezier,(xe+ve)*ie,0,(xe-de)*ie,ae,(xe-ve)*ie,0)),xe=.3,pe.add(new go.PathSegment(go.PathSegment.Bezier,xe*ie,ae,(xe+ve)*ie,0,(xe+de)*ie,ae)),pe.add(new go.PathSegment(go.PathSegment.Bezier,(xe+ve)*ie,0,(xe-de)*ie,ae,(xe-ve)*ie,0)),xe=.5,pe.add(new go.PathSegment(go.PathSegment.Bezier,xe*ie,ae,(xe+ve)*ie,0,(xe+de)*ie,ae)),pe.add(new go.PathSegment(go.PathSegment.Bezier,(xe+ve)*ie,0,(xe-de)*ie,ae,(xe-ve)*ie,0)),xe=.7,pe.add(new go.PathSegment(go.PathSegment.Bezier,xe*ie,ae,(xe+ve)*ie,0,(xe+de)*ie,ae)),pe.add(new go.PathSegment(go.PathSegment.Bezier,(xe+ve)*ie,0,(xe-de)*ie,ae,(xe-ve)*ie,0)),xe=.9,pe.add(new go.PathSegment(go.PathSegment.Bezier,(xe+de*.5)*ie,ae,(xe+ve)*ie,0,(xe+de)*ie,ae)),fe}),go.Shape.defineFigureGenerator("ACvoltageSource",function(ye,ie,ae){var fe=new go.Geometry,de=we*.5,ve=.5,xe=.5,he=.5,pe=new go.PathFigure((xe-ve)*ie,he*ae,!1);return fe.add(pe),pe.add(new go.PathSegment(go.PathSegment.Bezier,xe*ie,(he-ve)*ae,(xe-ve)*ie,(he-de)*ae,(xe-de)*ie,(he-ve)*ae)),pe.add(new go.PathSegment(go.PathSegment.Bezier,(xe+ve)*ie,he*ae,(xe+de)*ie,(he-ve)*ae,(xe+ve)*ie,(he-de)*ae)),pe.add(new go.PathSegment(go.PathSegment.Bezier,xe*ie,(he+ve)*ae,(xe+ve)*ie,(he+de)*ae,(xe+de)*ie,(he+ve)*ae)),pe.add(new go.PathSegment(go.PathSegment.Bezier,(xe-ve)*ie,he*ae,(xe-de)*ie,(he+ve)*ae,(xe-ve)*ie,(he+de)*ae)),pe.add(new go.PathSegment(go.PathSegment.Move,(xe-ve+.1)*ie,he*ae)),pe.add(new go.PathSegment(go.PathSegment.Bezier,(xe+ve-.1)*ie,he*ae,xe*ie,(he-ve)*ae,xe*ie,(he+ve)*ae)),fe}),go.Shape.defineFigureGenerator("DCvoltageSource",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,.75*ae,!1);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,0,.25*ae)),de.add(new go.PathSegment(go.PathSegment.Move,ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,ie,ae)),fe}),go.Shape.defineFigureGenerator("Diode",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(ie,0,!1);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,ie,.5*ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,0)),de.add(new go.PathSegment(go.PathSegment.Line,ie,.5*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie,ae)),fe.spot1=new go.Spot(0,.25),fe.spot2=new go.Spot(.5,.75),fe}),go.Shape.defineFigureGenerator("Wifi",function(ye,ie,ae){var fe=new go.Geometry,de=ie,ve=ae;ie=ie*.38,ae=ae*.6;var xe=we*.8,he=.8,pe=0,Se=.5,Ne=(de-ie)/2,ze=(ve-ae)/2,Ke=new go.PathFigure(pe*ie+Ne,(Se+he)*ae+ze,!0);fe.add(Ke),Ke.add(new go.PathSegment(go.PathSegment.Bezier,(pe-he)*ie+Ne,Se*ae+ze,(pe-xe)*ie+Ne,(Se+he)*ae+ze,(pe-he)*ie+Ne,(Se+xe)*ae+ze)),Ke.add(new go.PathSegment(go.PathSegment.Bezier,pe*ie+Ne,(Se-he)*ae+ze,(pe-he)*ie+Ne,(Se-xe)*ae+ze,(pe-xe)*ie+Ne,(Se-he)*ae+ze)),Ke.add(new go.PathSegment(go.PathSegment.Bezier,(pe-he+xe*.5)*ie+Ne,Se*ae+ze,pe*ie+Ne,(Se-he)*ae+ze,(pe-he+xe*.5)*ie+Ne,(Se-xe)*ae+ze)),Ke.add(new go.PathSegment(go.PathSegment.Bezier,pe*ie+Ne,(Se+he)*ae+ze,(pe-he+xe*.5)*ie+Ne,(Se+xe)*ae+ze,pe*ie+Ne,(Se+he)*ae+ze).close()),xe=we*.4,he=.4,pe=.2,Se=.5;var Ve=new go.PathFigure(pe*ie+Ne,(Se+he)*ae+ze,!0);fe.add(Ve),Ve.add(new go.PathSegment(go.PathSegment.Bezier,(pe-he)*ie+Ne,Se*ae+ze,(pe-xe)*ie+Ne,(Se+he)*ae+ze,(pe-he)*ie+Ne,(Se+xe)*ae+ze)),Ve.add(new go.PathSegment(go.PathSegment.Bezier,pe*ie+Ne,(Se-he)*ae+ze,(pe-he)*ie+Ne,(Se-xe)*ae+ze,(pe-xe)*ie+Ne,(Se-he)*ae+ze)),Ve.add(new go.PathSegment(go.PathSegment.Bezier,(pe-he+xe*.5)*ie+Ne,Se*ae+ze,pe*ie+Ne,(Se-he)*ae+ze,(pe-he+xe*.5)*ie+Ne,(Se-xe)*ae+ze)),Ve.add(new go.PathSegment(go.PathSegment.Bezier,pe*ie+Ne,(Se+he)*ae+ze,(pe-he+xe*.5)*ie+Ne,(Se+xe)*ae+ze,pe*ie+Ne,(Se+he)*ae+ze).close()),xe=we*.2,he=.2,pe=.5,Se=.5;var Je=new go.PathFigure((pe-he)*ie+Ne,Se*ae+ze,!0);fe.add(Je),Je.add(new go.PathSegment(go.PathSegment.Bezier,pe*ie+Ne,(Se-he)*ae+ze,(pe-he)*ie+Ne,(Se-xe)*ae+ze,(pe-xe)*ie+Ne,(Se-he)*ae+ze)),Je.add(new go.PathSegment(go.PathSegment.Bezier,(pe+he)*ie+Ne,Se*ae+ze,(pe+xe)*ie+Ne,(Se-he)*ae+ze,(pe+he)*ie+Ne,(Se-xe)*ae+ze)),Je.add(new go.PathSegment(go.PathSegment.Bezier,pe*ie+Ne,(Se+he)*ae+ze,(pe+he)*ie+Ne,(Se+xe)*ae+ze,(pe+xe)*ie+Ne,(Se+he)*ae+ze)),Je.add(new go.PathSegment(go.PathSegment.Bezier,(pe-he)*ie+Ne,Se*ae+ze,(pe-xe)*ie+Ne,(Se+he)*ae+ze,(pe-he)*ie+Ne,(Se+xe)*ae+ze)),xe=we*.4,he=.4,pe=.8,Se=.5;var tt=new go.PathFigure(pe*ie+Ne,(Se-he)*ae+ze,!0);fe.add(tt),tt.add(new go.PathSegment(go.PathSegment.Bezier,(pe+he)*ie+Ne,Se*ae+ze,(pe+xe)*ie+Ne,(Se-he)*ae+ze,(pe+he)*ie+Ne,(Se-xe)*ae+ze)),tt.add(new go.PathSegment(go.PathSegment.Bezier,pe*ie+Ne,(Se+he)*ae+ze,(pe+he)*ie+Ne,(Se+xe)*ae+ze,(pe+xe)*ie+Ne,(Se+he)*ae+ze)),tt.add(new go.PathSegment(go.PathSegment.Bezier,(pe+he-xe*.5)*ie+Ne,Se*ae+ze,pe*ie+Ne,(Se+he)*ae+ze,(pe+he-xe*.5)*ie+Ne,(Se+xe)*ae+ze)),tt.add(new go.PathSegment(go.PathSegment.Bezier,pe*ie+Ne,(Se-he)*ae+ze,(pe+he-xe*.5)*ie+Ne,(Se-xe)*ae+ze,pe*ie+Ne,(Se-he)*ae+ze).close()),xe=we*.8,he=.8,pe=1,Se=.5;var gt=new go.PathFigure(pe*ie+Ne,(Se-he)*ae+ze,!0);return fe.add(gt),gt.add(new go.PathSegment(go.PathSegment.Bezier,(pe+he)*ie+Ne,Se*ae+ze,(pe+xe)*ie+Ne,(Se-he)*ae+ze,(pe+he)*ie+Ne,(Se-xe)*ae+ze)),gt.add(new go.PathSegment(go.PathSegment.Bezier,pe*ie+Ne,(Se+he)*ae+ze,(pe+he)*ie+Ne,(Se+xe)*ae+ze,(pe+xe)*ie+Ne,(Se+he)*ae+ze)),gt.add(new go.PathSegment(go.PathSegment.Bezier,(pe+he-xe*.5)*ie+Ne,Se*ae+ze,pe*ie+Ne,(Se+he)*ae+ze,(pe+he-xe*.5)*ie+Ne,(Se+xe)*ae+ze)),gt.add(new go.PathSegment(go.PathSegment.Bezier,pe*ie+Ne,(Se-he)*ae+ze,(pe+he-xe*.5)*ie+Ne,(Se-xe)*ae+ze,pe*ie+Ne,(Se-he)*ae+ze).close()),fe}),go.Shape.defineFigureGenerator("Email",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,0,!0);fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,0).close());var ve=new go.PathFigure(0,0,!1);return fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,.5*ie,.6*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,ie,0)),ve.add(new go.PathSegment(go.PathSegment.Move,0,ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.45*ie,.54*ae)),ve.add(new go.PathSegment(go.PathSegment.Move,ie,ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.55*ie,.54*ae)),fe}),go.Shape.defineFigureGenerator("Ethernet",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(.35*ie,0,!0);fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.65*ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,.65*ie,.4*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.35*ie,.4*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.35*ie,0).close());var ve=new go.PathFigure(.1*ie,ae,!0,!0);fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,.4*ie,ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.4*ie,.6*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.1*ie,.6*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.1*ie,ae).close());var xe=new go.PathFigure(.6*ie,ae,!0,!0);fe.add(xe),xe.add(new go.PathSegment(go.PathSegment.Line,.9*ie,ae)),xe.add(new go.PathSegment(go.PathSegment.Line,.9*ie,.6*ae)),xe.add(new go.PathSegment(go.PathSegment.Line,.6*ie,.6*ae)),xe.add(new go.PathSegment(go.PathSegment.Line,.6*ie,ae).close());var he=new go.PathFigure(0,.5*ae,!1);return fe.add(he),he.add(new go.PathSegment(go.PathSegment.Line,ie,.5*ae)),he.add(new go.PathSegment(go.PathSegment.Move,.5*ie,.5*ae)),he.add(new go.PathSegment(go.PathSegment.Line,.5*ie,.4*ae)),he.add(new go.PathSegment(go.PathSegment.Move,.75*ie,.5*ae)),he.add(new go.PathSegment(go.PathSegment.Line,.75*ie,.6*ae)),he.add(new go.PathSegment(go.PathSegment.Move,.25*ie,.5*ae)),he.add(new go.PathSegment(go.PathSegment.Line,.25*ie,.6*ae)),fe}),go.Shape.defineFigureGenerator("Power",function(ye,ie,ae){var fe=new go.Geometry,de=we*.4,ve=.4,xe=.5,he=.5,pe=He(),Se=He(),Ne=He(),ze=He();ke(xe,he-ve,xe+de,he-ve,xe+ve,he-de,xe+ve,he,.5,pe,pe,Se,Ne,ze);var Ke=Be(Se.x,Se.y),Ve=new go.PathFigure(Se.x*ie,Se.y*ae,!0);fe.add(Ve),Ve.add(new go.PathSegment(go.PathSegment.Bezier,(xe+ve)*ie,he*ae,Ne.x*ie,Ne.y*ae,ze.x*ie,ze.y*ae)),Ve.add(new go.PathSegment(go.PathSegment.Bezier,xe*ie,(he+ve)*ae,(xe+ve)*ie,(he+de)*ae,(xe+de)*ie,(he+ve)*ae)),Ve.add(new go.PathSegment(go.PathSegment.Bezier,(xe-ve)*ie,he*ae,(xe-de)*ie,(he+ve)*ae,(xe-ve)*ie,(he+de)*ae)),ke(xe-ve,he,xe-ve,he-de,xe-de,he-ve,xe,he-ve,.5,Ne,ze,Se,pe,pe),Ve.add(new go.PathSegment(go.PathSegment.Bezier,Se.x*ie,Se.y*ae,Ne.x*ie,Ne.y*ae,ze.x*ie,ze.y*ae)),de=we*.3,ve=.3,ke(xe-ve,he,xe-ve,he-de,xe-de,he-ve,xe,he-ve,.5,Ne,ze,Se,pe,pe),Ve.add(new go.PathSegment(go.PathSegment.Line,Se.x*ie,Se.y*ae)),Ve.add(new go.PathSegment(go.PathSegment.Bezier,(xe-ve)*ie,he*ae,ze.x*ie,ze.y*ae,Ne.x*ie,Ne.y*ae)),Ve.add(new go.PathSegment(go.PathSegment.Bezier,xe*ie,(he+ve)*ae,(xe-ve)*ie,(he+de)*ae,(xe-de)*ie,(he+ve)*ae)),Ve.add(new go.PathSegment(go.PathSegment.Bezier,(xe+ve)*ie,he*ae,(xe+de)*ie,(he+ve)*ae,(xe+ve)*ie,(he+de)*ae)),ke(xe,he-ve,xe+de,he-ve,xe+ve,he-de,xe+ve,he,.5,pe,pe,Se,Ne,ze),Ve.add(new go.PathSegment(go.PathSegment.Bezier,Se.x*ie,Se.y*ae,ze.x*ie,ze.y*ae,Ne.x*ie,Ne.y*ae).close());var Ve=new go.PathFigure(.45*ie,0,!0);return fe.add(Ve),Ve.add(new go.PathSegment(go.PathSegment.Line,.45*ie,.5*ae)),Ve.add(new go.PathSegment(go.PathSegment.Line,.55*ie,.5*ae)),Ve.add(new go.PathSegment(go.PathSegment.Line,.55*ie,0).close()),et(pe),et(Se),et(Ne),et(ze),et(Ke),fe.spot1=new go.Spot(.25,.45),fe.spot2=new go.Spot(.75,.8),fe}),go.Shape.defineFigureGenerator("Fallout",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,ae/2,!0);fe.add(de),de.add(new go.PathSegment(go.PathSegment.Arc,180,360,ie/2,ae/2,ie/2,ae/2));function ve(xe,he,pe){xe.add(new go.PathSegment(go.PathSegment.Move,(.3+he)*ie,(.8+pe)*ae)),xe.add(new go.PathSegment(go.PathSegment.Line,(.5+he)*ie,(.5+pe)*ae)),xe.add(new go.PathSegment(go.PathSegment.Line,(.1+he)*ie,(.5+pe)*ae)),xe.add(new go.PathSegment(go.PathSegment.Line,(.3+he)*ie,(.8+pe)*ae).close())}return ve(de,0,0),ve(de,.4,0),ve(de,.2,-.3),fe}),go.Shape.defineFigureGenerator("IrritationHazard",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(.2*ie,0,!0);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.5*ie,.3*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.8*ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,ie,.2*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.7*ie,.5*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie,.8*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.8*ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,.5*ie,.7*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.2*ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,.8*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.3*ie,.5*ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,.2*ae).close()),fe.spot1=new go.Spot(.3,.3),fe.spot2=new go.Spot(.7,.7),fe}),go.Shape.defineFigureGenerator("ElectricalHazard",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(.37*ie,0,!0);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.5*ie,.11*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.77*ie,.04*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.33*ie,.49*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie,.37*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.63*ie,.86*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.77*ie,.91*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.34*ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,.34*ie,.78*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.44*ie,.8*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.65*ie,.56*ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,.68*ae).close()),fe}),go.Shape.defineFigureGenerator("FireHazard",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(.1*ie,ae,!0);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Bezier,.29*ie,0,-.25*ie,.63*ae,.45*ie,.44*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,.51*ie,.42*ae,.48*ie,.17*ae,.54*ie,.35*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,.59*ie,.18*ae,.59*ie,.29*ae,.58*ie,.28*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,.75*ie,.6*ae,.8*ie,.34*ae,.88*ie,.43*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,.88*ie,.31*ae,.87*ie,.48*ae,.88*ie,.43*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,.9*ie,ae,1.17*ie,.76*ae,.82*ie,.8*ae).close()),fe.spot1=new go.Spot(.07,.445),fe.spot2=new go.Spot(.884,.958),fe}),go.Shape.defineFigureGenerator("BpmnActivityLoop",function(ye,ie,ae){var fe=new go.Geometry,de=.5,ve=0,xe=0,he=de*we,pe=.4*Math.SQRT2/2+.5,Se=.5-.5*Math.SQRT2/2,Ne=1,ze=.5,Ke=.5,Ve=0,Je=new go.PathFigure(pe*ie,(1-Se)*ae,!1);return fe.add(Je),Je.add(new go.PathSegment(go.PathSegment.Bezier,Ne*ie,ze*ae,Ne*ie,.7*ae,Ne*ie,ze*ae)),Je.add(new go.PathSegment(go.PathSegment.Bezier,(Ke+ve)*ie,(Ve+ve)*ae,(.5+de+ve)*ie,(.5-he+ve)*ae,(.5+he+ve)*ie,(.5-de+ve)*ae)),Je.add(new go.PathSegment(go.PathSegment.Bezier,(.5-de+ve)*ie,(.5+xe)*ae,(.5-he+ve)*ie,(.5-de+xe)*ae,(.5-de+ve)*ie,(.5-he+xe)*ae)),Je.add(new go.PathSegment(go.PathSegment.Bezier,(.35+ve)*ie,.9*ae,(.5-de+ve)*ie,(.5+he+xe)*ae,(.5-he+ve)*ie,.9*ae)),Je.add(new go.PathSegment(go.PathSegment.Move,(.25+ve)*ie,.8*ae)),Je.add(new go.PathSegment(go.PathSegment.Line,(.35+ve)*ie,.9*ae)),Je.add(new go.PathSegment(go.PathSegment.Line,(.2+ve)*ie,.95*ae)),fe}),go.Shape.defineFigureGenerator("BpmnActivityParallel",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,0,!1);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,0,ae)),de.add(new go.PathSegment(go.PathSegment.Move,.5*ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,.5*ie,ae)),de.add(new go.PathSegment(go.PathSegment.Move,ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,ie,ae)),fe}),go.Shape.defineFigureGenerator("BpmnActivitySequential",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,0,!1);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,ie,0)),de.add(new go.PathSegment(go.PathSegment.Move,0,.5*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie,.5*ae)),de.add(new go.PathSegment(go.PathSegment.Move,0,ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie,ae)),fe}),go.Shape.defineFigureGenerator("BpmnActivityAdHoc",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,0,!1);fe.add(de);var ve=new go.PathFigure(ie,ae,!1);fe.add(ve);var xe=new go.PathFigure(0,.5*ae,!1);return fe.add(xe),xe.add(new go.PathSegment(go.PathSegment.Bezier,.5*ie,.5*ae,.2*ie,.35*ae,.3*ie,.35*ae)),xe.add(new go.PathSegment(go.PathSegment.Bezier,ie,.5*ae,.7*ie,.65*ae,.8*ie,.65*ae)),fe}),go.Shape.defineFigureGenerator("BpmnActivityCompensation",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,.5*ae,!0);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.5*ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,.5*ie,.5*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,.5*ie,.5*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.5*ie,ae).close()),fe}),go.Shape.defineFigureGenerator("BpmnTaskMessage",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,.2*ae,!0);fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,ie,.2*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie,.8*ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,.8*ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,.8*ae).close());var de=new go.PathFigure(0,.2*ae,!1);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.5*ie,.5*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie,.2*ae)),fe}),go.Shape.defineFigureGenerator("BpmnTaskScript",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(.7*ie,ae,!0);fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.3*ie,ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,.3*ie,0,.6*ie,.5*ae,0,.5*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.7*ie,0)),de.add(new go.PathSegment(go.PathSegment.Bezier,.7*ie,ae,.4*ie,.5*ae,ie,.5*ae).close());var ve=new go.PathFigure(.45*ie,.73*ae,!1);return fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,.7*ie,.73*ae)),ve.add(new go.PathSegment(go.PathSegment.Move,.38*ie,.5*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.63*ie,.5*ae)),ve.add(new go.PathSegment(go.PathSegment.Move,.31*ie,.27*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.56*ie,.27*ae)),fe}),go.Shape.defineFigureGenerator("BpmnTaskUser",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,0,!1);fe.add(de);var ve=new go.PathFigure(.335*ie,(1-.555)*ae,!0);fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,.335*ie,(1-.405)*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,(1-.335)*ie,(1-.405)*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,(1-.335)*ie,(1-.555)*ae)),ve.add(new go.PathSegment(go.PathSegment.Bezier,ie,.68*ae,(1-.12)*ie,.46*ae,(1-.02)*ie,.54*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,ie,ae)),ve.add(new go.PathSegment(go.PathSegment.Line,0,ae)),ve.add(new go.PathSegment(go.PathSegment.Line,0,.68*ae)),ve.add(new go.PathSegment(go.PathSegment.Bezier,.335*ie,(1-.555)*ae,.02*ie,.54*ae,.12*ie,.46*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.365*ie,(1-.595)*ae));var xe=.5-.285,he=.5,pe=xe,Se=Math.PI/4,Ne=4*(1-Math.cos(Se))/(3*Math.sin(Se)),ze=Ne*.5,Ke=xe,Ve=xe,Je=Ne*Ke,tt=Ne*Ve;ve.add(new go.PathSegment(go.PathSegment.Bezier,(he-Ke)*ie,pe*ae,(he-(Je+Ke)/2)*ie,(pe+(Ve+tt)/2)*ae,(he-Ke)*ie,(pe+tt)*ae)),ve.add(new go.PathSegment(go.PathSegment.Bezier,he*ie,(pe-Ve)*ae,(he-Ke)*ie,(pe-tt)*ae,(he-Je)*ie,(pe-Ve)*ae)),ve.add(new go.PathSegment(go.PathSegment.Bezier,(he+Ke)*ie,pe*ae,(he+Je)*ie,(pe-Ve)*ae,(he+Ke)*ie,(pe-tt)*ae)),ve.add(new go.PathSegment(go.PathSegment.Bezier,(1-.365)*ie,(1-.595)*ae,(he+Ke)*ie,(pe+tt)*ae,(he+(Je+Ke)/2)*ie,(pe+(Ve+tt)/2)*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,(1-.365)*ie,(1-.595)*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,(1-.335)*ie,(1-.555)*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,(1-.335)*ie,(1-.405)*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.335*ie,(1-.405)*ae));var gt=new go.PathFigure(.2*ie,ae,!1);fe.add(gt),gt.add(new go.PathSegment(go.PathSegment.Line,.2*ie,.8*ae));var st=new go.PathFigure(.8*ie,ae,!1);return fe.add(st),st.add(new go.PathSegment(go.PathSegment.Line,.8*ie,.8*ae)),fe}),go.Shape.defineFigureGenerator("BpmnEventConditional",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(.1*ie,0,!0);fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.9*ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,.9*ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,.1*ie,ae).close());var ve=new go.PathFigure(.2*ie,.2*ae,!1);return fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,.8*ie,.2*ae)),ve.add(new go.PathSegment(go.PathSegment.Move,.2*ie,.4*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.8*ie,.4*ae)),ve.add(new go.PathSegment(go.PathSegment.Move,.2*ie,.6*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.8*ie,.6*ae)),ve.add(new go.PathSegment(go.PathSegment.Move,.2*ie,.8*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.8*ie,.8*ae)),fe}),go.Shape.defineFigureGenerator("BpmnEventError",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,ae,!0);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.33*ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,.66*ie,.5*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,.66*ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,.33*ie,.5*ae).close()),fe}),go.Shape.defineFigureGenerator("BpmnEventEscalation",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,0,!1);fe.add(de);var ve=new go.PathFigure(ie,ae,!1);fe.add(ve);var xe=new go.PathFigure(.1*ie,ae,!0);return fe.add(xe),xe.add(new go.PathSegment(go.PathSegment.Line,.5*ie,0)),xe.add(new go.PathSegment(go.PathSegment.Line,.9*ie,ae)),xe.add(new go.PathSegment(go.PathSegment.Line,.5*ie,.5*ae).close()),fe}),go.Shape.defineFigureGenerator("Caution",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(.05*ie,ae,!0);fe.add(de),de.add(new go.PathSegment(go.PathSegment.Bezier,.1*ie,.8*ae,0,ae,0,ae)),de.add(new go.PathSegment(go.PathSegment.Line,.45*ie,.1*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,.55*ie,.1*ae,.5*ie,0,.5*ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,.95*ie,.9*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,.9*ie,ae,ie,ae,ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,.05*ie,ae));var ve=.05;return de.add(new go.PathSegment(go.PathSegment.Move,(.5-ve)*ie,.875*ae)),de.add(new go.PathSegment(go.PathSegment.Arc,180,-360,.5*ie,.875*ae,ve*ie,ve*ae)),de.add(new go.PathSegment(go.PathSegment.Move,.5*ie,.75*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,.5*ie,.325*ae,.575*ie,.725*ae,.625*ie,.375*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,.5*ie,.75*ae,.375*ie,.375*ae,.425*ie,.725*ae)),fe}),go.Shape.defineFigureGenerator("Recycle",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(.45*ie,.95*ae,!1);fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.2*ie,.95*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,.185*ie,.85*ae,.17*ie,.95*ae,.15*ie,.9*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.235*ie,.75*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.3*ie,.625*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.35*ie,.65*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.275*ie,.45*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.05*ie,.45*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.1*ie,.5*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.05*ie,.575*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,.1875*ie,.95*ae,0,.675*ae,0,.7*ae)),de.add(new go.PathSegment(go.PathSegment.Move,.45*ie,.95*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.45*ie,.775*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.22*ie,.775*ae));var ve=new go.PathFigure(.475*ie,.2*ae,!1);fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,.4*ie,.4*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.225*ie,.3*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.275*ie,.175*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.325*ie,.05*ae)),ve.add(new go.PathSegment(go.PathSegment.Bezier,.4*ie,.05*ae,.35*ie,0,.375*ie,0)),ve.add(new go.PathSegment(go.PathSegment.Line,.575*ie,.375*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.525*ie,.4*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.75*ie,.475*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.85*ie,.315*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.8*ie,.32*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.65*ie,.05*ae)),ve.add(new go.PathSegment(go.PathSegment.Bezier,.575*ie,0,.65*ie,.05*ae,.625*ie,0)),ve.add(new go.PathSegment(go.PathSegment.Line,.38*ie,.0105*ae));var xe=new go.PathFigure(.675*ie,.575*ae,!1);return fe.add(xe),xe.add(new go.PathSegment(go.PathSegment.Line,.875*ie,.525*ae)),xe.add(new go.PathSegment(go.PathSegment.Line,ie,.775*ae)),xe.add(new go.PathSegment(go.PathSegment.Bezier,.85*ie,.95*ae,ie,.8*ae,ie,.85*ae)),xe.add(new go.PathSegment(go.PathSegment.Line,.65*ie,.95*ae)),xe.add(new go.PathSegment(go.PathSegment.Line,.65*ie,ae)),xe.add(new go.PathSegment(go.PathSegment.Line,.55*ie,.85*ae)),xe.add(new go.PathSegment(go.PathSegment.Line,.65*ie,.725*ae)),xe.add(new go.PathSegment(go.PathSegment.Line,.65*ie,.775*ae)),xe.add(new go.PathSegment(go.PathSegment.Line,.7*ie,.775*ae)),xe.add(new go.PathSegment(go.PathSegment.Line,ie,.775*ae)),xe.add(new go.PathSegment(go.PathSegment.Move,.675*ie,.575*ae)),xe.add(new go.PathSegment(go.PathSegment.Line,.775*ie,.775*ae)),fe}),go.Shape.defineFigureGenerator("BpmnEventTimer",function(ye,ie,ae){var fe=new go.Geometry,de=.5,ve=we*.5,xe=new go.PathFigure(ie,de*ae,!0);fe.add(xe),xe.add(new go.PathSegment(go.PathSegment.Bezier,de*ie,ae,ie,(de+ve)*ae,(de+ve)*ie,ae)),xe.add(new go.PathSegment(go.PathSegment.Bezier,0,de*ae,(de-ve)*ie,ae,0,(de+ve)*ae)),xe.add(new go.PathSegment(go.PathSegment.Bezier,de*ie,0,0,(de-ve)*ae,(de-ve)*ie,0)),xe.add(new go.PathSegment(go.PathSegment.Bezier,ie,de*ae,(de+ve)*ie,0,ie,(de-ve)*ae));var he=new go.PathFigure(de*ie,0,!1);return fe.add(he),he.add(new go.PathSegment(go.PathSegment.Line,de*ie,.15*ae)),he.add(new go.PathSegment(go.PathSegment.Move,de*ie,ae)),he.add(new go.PathSegment(go.PathSegment.Line,de*ie,.85*ae)),he.add(new go.PathSegment(go.PathSegment.Move,0,de*ae)),he.add(new go.PathSegment(go.PathSegment.Line,.15*ie,de*ae)),he.add(new go.PathSegment(go.PathSegment.Move,ie,de*ae)),he.add(new go.PathSegment(go.PathSegment.Line,.85*ie,de*ae)),he.add(new go.PathSegment(go.PathSegment.Move,de*ie,de*ae)),he.add(new go.PathSegment(go.PathSegment.Line,.58*ie,.1*ae)),he.add(new go.PathSegment(go.PathSegment.Move,de*ie,de*ae)),he.add(new go.PathSegment(go.PathSegment.Line,.78*ie,.54*ae)),fe}),go.Shape.defineFigureGenerator("Package",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,.15*ae,!0);fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,ie,.15*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,ae).close());var ve=new go.PathFigure(0,.15*ae,!0);return fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,0,0)),ve.add(new go.PathSegment(go.PathSegment.Line,.6*ie,0)),ve.add(new go.PathSegment(go.PathSegment.Line,.65*ie,.15*ae).close()),fe.spot1=new go.Spot(0,.1),fe.spot2=new go.Spot(1,1),fe}),go.Shape.defineFigureGenerator("Class",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,0,!0);fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,0).close());var ve=new go.PathFigure(0,.2*ae,!1);fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,ie,.2*ae).close());var xe=new go.PathFigure(0,.5*ae,!1);return fe.add(xe),xe.add(new go.PathSegment(go.PathSegment.Line,ie,.5*ae).close()),fe}),go.Shape.defineFigureGenerator("Component",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(ie,ae,!0);fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,.15*ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,.15*ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie,ae).close());var ve=new go.PathFigure(0,.2*ae,!0);fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,.45*ie,.2*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.45*ie,.4*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,0,.4*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,0,.2*ae).close());var xe=new go.PathFigure(0,.6*ae,!0);return fe.add(xe),xe.add(new go.PathSegment(go.PathSegment.Line,.45*ie,.6*ae)),xe.add(new go.PathSegment(go.PathSegment.Line,.45*ie,.8*ae)),xe.add(new go.PathSegment(go.PathSegment.Line,0,.8*ae)),xe.add(new go.PathSegment(go.PathSegment.Line,0,.6*ae).close()),fe}),go.Shape.defineFigureGenerator("Boat Shipment",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(.15*ie,.6*ae,!0);fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.15*ie,.6*ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,.6*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.15*ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,.85*ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie,.6*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.85*ie,.6*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.5*ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,.15*ie,.6*ae));var ve=new go.PathFigure(.15*ie,.6*ae,!1);return fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,.85*ie,.6*ae)),fe}),go.Shape.defineFigureGenerator("Customer/Supplier",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(ie,ae,!0);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,.66*ie,.33*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.66*ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,.33*ie,.33*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.33*ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,0,.33*ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie,ae).close()),fe}),go.Shape.defineFigureGenerator("Workcell",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,ae,!0);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,0,0)),de.add(new go.PathSegment(go.PathSegment.Line,ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,.65*ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,.65*ie,.4*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.35*ie,.4*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.35*ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,ae).close()),fe}),go.Shape.defineFigureGenerator("Supermarket",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,0,!1);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,ie,.33*ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,.33*ae)),de.add(new go.PathSegment(go.PathSegment.Move,ie,.33*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie,.66*ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,.66*ae)),de.add(new go.PathSegment(go.PathSegment.Move,ie,.66*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,ae)),fe}),go.Shape.defineFigureGenerator("TruckShipment",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,0,!0);fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.6*ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,.6*ie,.8*ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,.8*ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,0).close());var ve=new go.PathFigure(ie,.8*ae,!0);fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,ie,.4*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.6*ie,.4*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.6*ie,.8*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,ie,.8*ae).close());var xe=.1,he=we*.1,pe=.2,Se=.9,Ne=new go.PathFigure((pe-xe)*ie,Se*ae,!0);fe.add(Ne),Ne.add(new go.PathSegment(go.PathSegment.Bezier,pe*ie,(Se-xe)*ae,(pe-xe)*ie,(Se-he)*ae,(pe-he)*ie,(Se-xe)*ae)),Ne.add(new go.PathSegment(go.PathSegment.Bezier,(pe+xe)*ie,Se*ae,(pe+he)*ie,(Se-xe)*ae,(pe+xe)*ie,(Se-he)*ae)),Ne.add(new go.PathSegment(go.PathSegment.Bezier,pe*ie,(Se+xe)*ae,(pe+xe)*ie,(Se+he)*ae,(pe+he)*ie,(Se+xe)*ae)),Ne.add(new go.PathSegment(go.PathSegment.Bezier,(pe-xe)*ie,Se*ae,(pe-he)*ie,(Se+xe)*ae,(pe-xe)*ie,(Se+he)*ae).close()),xe=.1,he=we*.1,pe=.8,Se=.9;var ze=new go.PathFigure((pe-xe)*ie,Se*ae,!0);return fe.add(ze),ze.add(new go.PathSegment(go.PathSegment.Bezier,pe*ie,(Se-xe)*ae,(pe-xe)*ie,(Se-he)*ae,(pe-he)*ie,(Se-xe)*ae)),ze.add(new go.PathSegment(go.PathSegment.Bezier,(pe+xe)*ie,Se*ae,(pe+he)*ie,(Se-xe)*ae,(pe+xe)*ie,(Se-he)*ae)),ze.add(new go.PathSegment(go.PathSegment.Bezier,pe*ie,(Se+xe)*ae,(pe+xe)*ie,(Se+he)*ae,(pe+he)*ie,(Se+xe)*ae)),ze.add(new go.PathSegment(go.PathSegment.Bezier,(pe-xe)*ie,Se*ae,(pe-he)*ie,(Se+xe)*ae,(pe-xe)*ie,(Se+he)*ae).close()),fe}),go.Shape.defineFigureGenerator("KanbanPost",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(.2*ie,0,!1);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.2*ie,.5*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.8*ie,.5*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.8*ie,0)),de.add(new go.PathSegment(go.PathSegment.Move,.5*ie,.5*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.5*ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,.2*ie,ae)),de.add(new go.PathSegment(go.PathSegment.Move,.5*ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,.8*ie,ae)),fe}),go.Shape.defineFigureGenerator("Forklift",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,0,!0);fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,0,.5*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.5*ie,.5*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.4*ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,0,0));var ve=new go.PathFigure(0,.5*ae,!0);fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,0,.8*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.5*ie,.8*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.5*ie,.5*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,0,.5*ae));var xe=new go.PathFigure(.5*ie,.8*ae,!0);fe.add(xe),xe.add(new go.PathSegment(go.PathSegment.Line,.5*ie,.1*ae)),xe.add(new go.PathSegment(go.PathSegment.Line,.55*ie,.1*ae)),xe.add(new go.PathSegment(go.PathSegment.Line,.55*ie,.8*ae)),xe.add(new go.PathSegment(go.PathSegment.Line,.5*ie,.8*ae));var he=new go.PathFigure(.5*ie,.7*ae,!1);fe.add(he),he.add(new go.PathSegment(go.PathSegment.Line,ie,.7*ae));var pe=.1,Se=we*.1,Ne=.1,ze=.9,Ke=new go.PathFigure((Ne-pe)*ie,ze*ae,!0);fe.add(Ke),Ke.add(new go.PathSegment(go.PathSegment.Bezier,Ne*ie,(ze-pe)*ae,(Ne-pe)*ie,(ze-Se)*ae,(Ne-Se)*ie,(ze-pe)*ae)),Ke.add(new go.PathSegment(go.PathSegment.Bezier,(Ne+pe)*ie,ze*ae,(Ne+Se)*ie,(ze-pe)*ae,(Ne+pe)*ie,(ze-Se)*ae)),Ke.add(new go.PathSegment(go.PathSegment.Bezier,Ne*ie,(ze+pe)*ae,(Ne+pe)*ie,(ze+Se)*ae,(Ne+Se)*ie,(ze+pe)*ae)),Ke.add(new go.PathSegment(go.PathSegment.Bezier,(Ne-pe)*ie,ze*ae,(Ne-Se)*ie,(ze+pe)*ae,(Ne-pe)*ie,(ze+Se)*ae)),pe=.1,Se=we*.1,Ne=.4,ze=.9;var Ve=new go.PathFigure((Ne-pe)*ie,ze*ae,!0);return fe.add(Ve),Ve.add(new go.PathSegment(go.PathSegment.Bezier,Ne*ie,(ze-pe)*ae,(Ne-pe)*ie,(ze-Se)*ae,(Ne-Se)*ie,(ze-pe)*ae)),Ve.add(new go.PathSegment(go.PathSegment.Bezier,(Ne+pe)*ie,ze*ae,(Ne+Se)*ie,(ze-pe)*ae,(Ne+pe)*ie,(ze-Se)*ae)),Ve.add(new go.PathSegment(go.PathSegment.Bezier,Ne*ie,(ze+pe)*ae,(Ne+pe)*ie,(ze+Se)*ae,(Ne+Se)*ie,(ze+pe)*ae)),Ve.add(new go.PathSegment(go.PathSegment.Bezier,(Ne-pe)*ie,ze*ae,(Ne-Se)*ie,(ze+pe)*ae,(Ne-pe)*ie,(ze+Se)*ae)),fe}),go.Shape.defineFigureGenerator("RailShipment",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(.1*ie,.4*ae,!0);fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.45*ie,.4*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.45*ie,.9*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.1*ie,.9*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.1*ie,.4*ae).close());var ve=new go.PathFigure(.45*ie,.7*ae,!1);fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,.55*ie,.7*ae));var xe=new go.PathFigure(.55*ie,.4*ae,!0);fe.add(xe),xe.add(new go.PathSegment(go.PathSegment.Line,.9*ie,.4*ae)),xe.add(new go.PathSegment(go.PathSegment.Line,.9*ie,.9*ae)),xe.add(new go.PathSegment(go.PathSegment.Line,.55*ie,.9*ae)),xe.add(new go.PathSegment(go.PathSegment.Line,.55*ie,.4*ae).close());var Ne=.05,ze=we*.05,Ke=.175,Ve=.95,he=new go.PathFigure((Ke-Ne)*ie,Ve*ae,!0);fe.add(he),he.add(new go.PathSegment(go.PathSegment.Bezier,Ke*ie,(Ve-Ne)*ae,(Ke-Ne)*ie,(Ve-ze)*ae,(Ke-ze)*ie,(Ve-Ne)*ae)),he.add(new go.PathSegment(go.PathSegment.Bezier,(Ke+Ne)*ie,Ve*ae,(Ke+ze)*ie,(Ve-Ne)*ae,(Ke+Ne)*ie,(Ve-ze)*ae)),he.add(new go.PathSegment(go.PathSegment.Bezier,Ke*ie,(Ve+Ne)*ae,(Ke+Ne)*ie,(Ve+ze)*ae,(Ke+ze)*ie,(Ve+Ne)*ae)),he.add(new go.PathSegment(go.PathSegment.Bezier,(Ke-Ne)*ie,Ve*ae,(Ke-ze)*ie,(Ve+Ne)*ae,(Ke-Ne)*ie,(Ve+ze)*ae));var Ne=.05,ze=we*.05,Ke=.375,Ve=.95,pe=new go.PathFigure((Ke-Ne)*ie,Ve*ae,!0);fe.add(pe),pe.add(new go.PathSegment(go.PathSegment.Bezier,Ke*ie,(Ve-Ne)*ae,(Ke-Ne)*ie,(Ve-ze)*ae,(Ke-ze)*ie,(Ve-Ne)*ae)),pe.add(new go.PathSegment(go.PathSegment.Bezier,(Ke+Ne)*ie,Ve*ae,(Ke+ze)*ie,(Ve-Ne)*ae,(Ke+Ne)*ie,(Ve-ze)*ae)),pe.add(new go.PathSegment(go.PathSegment.Bezier,Ke*ie,(Ve+Ne)*ae,(Ke+Ne)*ie,(Ve+ze)*ae,(Ke+ze)*ie,(Ve+Ne)*ae)),pe.add(new go.PathSegment(go.PathSegment.Bezier,(Ke-Ne)*ie,Ve*ae,(Ke-ze)*ie,(Ve+Ne)*ae,(Ke-Ne)*ie,(Ve+ze)*ae));var Ne=.05,ze=we*.05,Ke=.625,Ve=.95,Se=new go.PathFigure((Ke-Ne)*ie,Ve*ae,!0);fe.add(Se),Se.add(new go.PathSegment(go.PathSegment.Bezier,Ke*ie,(Ve-Ne)*ae,(Ke-Ne)*ie,(Ve-ze)*ae,(Ke-ze)*ie,(Ve-Ne)*ae)),Se.add(new go.PathSegment(go.PathSegment.Bezier,(Ke+Ne)*ie,Ve*ae,(Ke+ze)*ie,(Ve-Ne)*ae,(Ke+Ne)*ie,(Ve-ze)*ae)),Se.add(new go.PathSegment(go.PathSegment.Bezier,Ke*ie,(Ve+Ne)*ae,(Ke+Ne)*ie,(Ve+ze)*ae,(Ke+ze)*ie,(Ve+Ne)*ae)),Se.add(new go.PathSegment(go.PathSegment.Bezier,(Ke-Ne)*ie,Ve*ae,(Ke-ze)*ie,(Ve+Ne)*ae,(Ke-Ne)*ie,(Ve+ze)*ae));var Ne=.05,ze=we*.05,Ke=.825,Ve=.95,Je=new go.PathFigure((Ke-Ne)*ie,Ve*ae,!0);fe.add(Je),Je.add(new go.PathSegment(go.PathSegment.Bezier,Ke*ie,(Ve-Ne)*ae,(Ke-Ne)*ie,(Ve-ze)*ae,(Ke-ze)*ie,(Ve-Ne)*ae)),Je.add(new go.PathSegment(go.PathSegment.Bezier,(Ke+Ne)*ie,Ve*ae,(Ke+ze)*ie,(Ve-Ne)*ae,(Ke+Ne)*ie,(Ve-ze)*ae)),Je.add(new go.PathSegment(go.PathSegment.Bezier,Ke*ie,(Ve+Ne)*ae,(Ke+Ne)*ie,(Ve+ze)*ae,(Ke+ze)*ie,(Ve+Ne)*ae)),Je.add(new go.PathSegment(go.PathSegment.Bezier,(Ke-Ne)*ie,Ve*ae,(Ke-ze)*ie,(Ve+Ne)*ae,(Ke-Ne)*ie,(Ve+ze)*ae).close());var tt=new go.PathFigure(0,ae,!1);return fe.add(tt),tt.add(new go.PathSegment(go.PathSegment.Line,ie,ae).close()),fe}),go.Shape.defineFigureGenerator("Warehouse",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,0,!0);fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,0).close());var ve=new go.PathFigure(0,.2*ae,!1);fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,ie,.2*ae).close());var xe=new go.PathFigure(.15*ie,ae,!0);fe.add(xe),xe.add(new go.PathSegment(go.PathSegment.Line,.15*ie,.5*ae)),xe.add(new go.PathSegment(go.PathSegment.Line,.4*ie,.5*ae)),xe.add(new go.PathSegment(go.PathSegment.Line,.4*ie,ae)),xe.add(new go.PathSegment(go.PathSegment.Line,.15*ie,ae).close());var he=.05,pe=we*.05,Se=.35,Ne=.775,ze=new go.PathFigure((Se-he)*ie,Ne*ae,!0);return fe.add(ze),ze.add(new go.PathSegment(go.PathSegment.Bezier,Se*ie,(Ne-he)*ae,(Se-he)*ie,(Ne-pe)*ae,(Se-pe)*ie,(Ne-he)*ae)),ze.add(new go.PathSegment(go.PathSegment.Bezier,(Se+he)*ie,Ne*ae,(Se+pe)*ie,(Ne-he)*ae,(Se+he)*ie,(Ne-pe)*ae)),ze.add(new go.PathSegment(go.PathSegment.Bezier,Se*ie,(Ne+he)*ae,(Se+he)*ie,(Ne+pe)*ae,(Se+pe)*ie,(Ne+he)*ae)),ze.add(new go.PathSegment(go.PathSegment.Bezier,(Se-he)*ie,Ne*ae,(Se-pe)*ie,(Ne+he)*ae,(Se-he)*ie,(Ne+pe)*ae).close()),fe}),go.Shape.defineFigureGenerator("ControlCenter",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,ae,!0);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,0,.8*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.1*ie,.8*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.1*ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,.9*ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,.9*ie,.8*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie,.8*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,ae)),de.add(new go.PathSegment(go.PathSegment.Move,.1*ie,.8*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.9*ie,.8*ae).close()),fe}),go.Shape.defineFigureGenerator("Bluetooth",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,.75*ae,!1);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,0,.75*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie,.25*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.5*ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,.5*ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie,.75*ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,.25*ae)),fe}),go.Shape.defineFigureGenerator("Bookmark",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,0,!0);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,0,ae)),de.add(new go.PathSegment(go.PathSegment.Line,.5*ie,.6*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,0,0)),de.add(new go.PathSegment(go.PathSegment.Move,.2*ie,.2*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.8*ie,.2*ae)),de.add(new go.PathSegment(go.PathSegment.Move,.2*ie,.4*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.8*ie,.4*ae)),fe}),go.Shape.defineFigureGenerator("Bookmark",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,0,!0);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,0,ae)),de.add(new go.PathSegment(go.PathSegment.Line,.5*ie,.6*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,0,0)),de.add(new go.PathSegment(go.PathSegment.Move,.2*ie,.2*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.8*ie,.2*ae)),de.add(new go.PathSegment(go.PathSegment.Move,.2*ie,.4*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.8*ie,.4*ae)),fe}),go.Shape.defineFigureGenerator("Globe",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(.5*ie,0,!1);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.5*ie,ae)),de.add(new go.PathSegment(go.PathSegment.Move,0,.5*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie,.5*ae)),de.add(new go.PathSegment(go.PathSegment.Move,.5*ie,0)),de.add(new go.PathSegment(go.PathSegment.Bezier,ie,.5*ae,.75*ie,0,ie,.25*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,.5*ie,ae,ie,.75*ae,.75*ie,ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,0,.5*ae,.25*ie,ae,0,.75*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,.5*ie,0,0,.25*ae,.25*ie,0)),de.add(new go.PathSegment(go.PathSegment.Bezier,.5*ie,ae,.15*ie,.25*ae,.15*ie,.75*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,.5*ie,0,.85*ie,.75*ae,.85*ie,.25*ae)),de.add(new go.PathSegment(go.PathSegment.Move,.1675*ie,.15*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,.8325*ie,.15*ae,.35*ie,.3*ae,.65*ie,.3*ae)),de.add(new go.PathSegment(go.PathSegment.Move,.1675*ie,.85*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,.8325*ie,.85*ae,.35*ie,.7*ae,.65*ie,.7*ae)),fe}),go.Shape.defineFigureGenerator("Wave",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,.25*ae,!1);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Bezier,.3*ie,.25*ae,.1*ie,0,.2*ie,0)),de.add(new go.PathSegment(go.PathSegment.Bezier,.7*ie,.25*ae,.425*ie,.5*ae,.575*ie,.5*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,ie,.25*ae,.8*ie,0,.9*ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,ie,.75*ae)),de.add(new go.PathSegment(go.PathSegment.Move,0,.25*ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,.75*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,.3*ie,.75*ae,.1*ie,.5*ae,.2*ie,.5*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,.7*ie,.75*ae,.425*ie,ae,.575*ie,ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,ie,.75*ae,.8*ie,.5*ae,.9*ie,.5*ae)),fe}),go.Shape.defineFigureGenerator("Operator",function(ye,ie,ae){var fe=new go.Geometry,de=.3,ve=we*.3,xe=.5,he=.7,pe=new go.PathFigure((xe-de)*ie,he*ae,!0);fe.add(pe),pe.add(new go.PathSegment(go.PathSegment.Bezier,xe*ie,(he-de)*ae,(xe-de)*ie,(he-ve)*ae,(xe-ve)*ie,(he-de)*ae)),pe.add(new go.PathSegment(go.PathSegment.Bezier,(xe+de)*ie,he*ae,(xe+ve)*ie,(he-de)*ae,(xe+de)*ie,(he-ve)*ae)),pe.add(new go.PathSegment(go.PathSegment.Bezier,xe*ie,(he+de)*ae,(xe+de)*ie,(he+ve)*ae,(xe+ve)*ie,(he+de)*ae)),pe.add(new go.PathSegment(go.PathSegment.Bezier,(xe-de)*ie,he*ae,(xe-ve)*ie,(he+de)*ae,(xe-de)*ie,(he+ve)*ae));var Se=new go.PathFigure(0,.7*ae,!1);return fe.add(Se),Se.add(new go.PathSegment(go.PathSegment.Bezier,ie,.7*ae,0,0,ie,0)),fe}),go.Shape.defineFigureGenerator("TripleFanBlades",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(.5*ie,0,!0);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Bezier,.5*ie,.65*ae,.65*ie,.3*ae,.65*ie,.5*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,.5*ie,0,.35*ie,.5*ae,.35*ie,.3*ae)),de.add(new go.PathSegment(go.PathSegment.Move,.5*ie,.65*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,0,ae,.3*ie,.6*ae,.1*ie,.8*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,.5*ie,.65*ae,.2*ie,ae,.35*ie,.95*ae)),de.add(new go.PathSegment(go.PathSegment.Move,.5*ie,.65*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,ie,ae,.7*ie,.6*ae,.9*ie,.8*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,.5*ie,.65*ae,.8*ie,ae,.65*ie,.95*ae)),fe}),go.Shape.defineFigureGenerator("CentrifugalPump",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(ie,0,!0);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.4*ie,0)),de.add(new go.PathSegment(go.PathSegment.Bezier,0,.5*ae,0,.075*ae,0,.5*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,.4*ie,ae,0,ae,.4*ie,ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,.8*ie,.4*ae,.8*ie,ae,.85*ie,.6*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie,.4*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie,0)),fe}),go.Shape.defineFigureGenerator("Battery",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,ae,!0);fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,0,.1*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie,.1*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,ae)),de.add(new go.PathSegment(go.PathSegment.Move,.4*ie,.1*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.4*ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,.6*ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,.6*ie,.1*ae));var ve=new go.PathFigure(0,.6*ae,!1);return fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Move,0,.4*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,ie,.4*ae)),fe}),go.Shape.defineFigureGenerator("Delete",function(ye,ie,ae){var fe=new go.Geometry,de=.5,ve=we*.5,xe=.5,he=.5,pe=new go.PathFigure((xe-de)*ie,he*ae,!0);fe.add(pe),pe.add(new go.PathSegment(go.PathSegment.Bezier,xe*ie,(he-de)*ae,(xe-de)*ie,(he-ve)*ae,(xe-ve)*ie,(he-de)*ae)),pe.add(new go.PathSegment(go.PathSegment.Bezier,(xe+de)*ie,he*ae,(xe+ve)*ie,(he-de)*ae,(xe+de)*ie,(he-ve)*ae)),pe.add(new go.PathSegment(go.PathSegment.Bezier,xe*ie,(he+de)*ae,(xe+de)*ie,(he+ve)*ae,(xe+ve)*ie,(he+de)*ae)),pe.add(new go.PathSegment(go.PathSegment.Bezier,(xe-de)*ie,he*ae,(xe-ve)*ie,(he+de)*ae,(xe-de)*ie,(he+ve)*ae));var Se=new go.PathFigure(.15*ie,.5*ae,!1);return fe.add(Se),Se.add(new go.PathSegment(go.PathSegment.Line,.85*ie,.5*ae)),fe}),go.Shape.defineFigureGenerator("Flag",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,.1*ae,!0);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,0,ae)),de.add(new go.PathSegment(go.PathSegment.Move,0,.1*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,.5*ie,.1*ae,.15*ie,0,.35*ie,0)),de.add(new go.PathSegment(go.PathSegment.Bezier,ie,.1*ae,.65*ie,.2*ae,.85*ie,.2*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie,.5*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,.5*ie,.5*ae,.85*ie,.6*ae,.65*ie,.6*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,0,.5*ae,.35*ie,.4*ae,.15*ie,.4*ae).close()),fe}),go.Shape.defineFigureGenerator("Help",function(ye,ie,ae){var fe=new go.Geometry,de=.5,ve=we*.5,xe=.5,he=.5,pe=new go.PathFigure((xe-de)*ie,he*ae,!1);fe.add(pe),pe.add(new go.PathSegment(go.PathSegment.Bezier,xe*ie,(he-de)*ae,(xe-de)*ie,(he-ve)*ae,(xe-ve)*ie,(he-de)*ae)),pe.add(new go.PathSegment(go.PathSegment.Bezier,(xe+de)*ie,he*ae,(xe+ve)*ie,(he-de)*ae,(xe+de)*ie,(he-ve)*ae)),pe.add(new go.PathSegment(go.PathSegment.Bezier,xe*ie,(he+de)*ae,(xe+de)*ie,(he+ve)*ae,(xe+ve)*ie,(he+de)*ae)),pe.add(new go.PathSegment(go.PathSegment.Bezier,(xe-de)*ie,he*ae,(xe-ve)*ie,(he+de)*ae,(xe-de)*ie,(he+ve)*ae).close()),de=.05,ve=we*.05,xe=.5,he=.8;var Se=new go.PathFigure((xe-de)*ie,he*ae,!1);return fe.add(Se),Se.add(new go.PathSegment(go.PathSegment.Bezier,xe*ie,(he-de)*ae,(xe-de)*ie,(he-ve)*ae,(xe-ve)*ie,(he-de)*ae)),Se.add(new go.PathSegment(go.PathSegment.Bezier,(xe+de)*ie,he*ae,(xe+ve)*ie,(he-de)*ae,(xe+de)*ie,(he-ve)*ae)),Se.add(new go.PathSegment(go.PathSegment.Bezier,xe*ie,(he+de)*ae,(xe+de)*ie,(he+ve)*ae,(xe+ve)*ie,(he+de)*ae)),Se.add(new go.PathSegment(go.PathSegment.Bezier,(xe-de)*ie,he*ae,(xe-ve)*ie,(he+de)*ae,(xe-de)*ie,(he+ve)*ae).close()),Se.add(new go.PathSegment(go.PathSegment.Move,.5*ie,.7*ae)),Se.add(new go.PathSegment(go.PathSegment.Line,.5*ie,.5*ae)),Se.add(new go.PathSegment(go.PathSegment.Bezier,.5*ie,.2*ae,.75*ie,.475*ae,.75*ie,.225*ae)),Se.add(new go.PathSegment(go.PathSegment.Bezier,.3*ie,.35*ae,.4*ie,.2*ae,.3*ie,.25*ae)),fe}),go.Shape.defineFigureGenerator("Location",function(ye,ie,ae){return new go.Geometry().add(new go.PathFigure(.5*ie,ae,!0).add(new go.PathSegment(go.PathSegment.Line,.75*ie,.5*ae)).add(new go.PathSegment(go.PathSegment.Bezier,.5*ie,0,.975*ie,.025*ae,.5*ie,0)).add(new go.PathSegment(go.PathSegment.Bezier,.25*ie,.5*ae,.5*ie,0,.025*ie,.025*ae).close()).add(new go.PathSegment(go.PathSegment.Move,.5*ie,.2*ae)).add(new go.PathSegment(go.PathSegment.Arc,270,360,.5*ie,.3*ae,.1*ie,.1*ae).close()))}),go.Shape.defineFigureGenerator("Lock",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,.5*ae,!0);fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,0,ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie,.5*ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,.5*ae));var ve=new go.PathFigure(.2*ie,.5*ae,!1);return fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Move,.2*ie,.5*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.2*ie,.3*ae)),ve.add(new go.PathSegment(go.PathSegment.Bezier,.8*ie,.3*ae,.25*ie,0,.75*ie,0)),ve.add(new go.PathSegment(go.PathSegment.Line,.8*ie,.5*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.8*ie,.3*ae)),fe}),go.Shape.defineFigureGenerator("Unlocked",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,.5*ae,!0);fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,0,ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie,.5*ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,.5*ae));var ve=new go.PathFigure(.2*ie,.5*ae,!1);return fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Move,.2*ie,.5*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.2*ie,.3*ae)),ve.add(new go.PathSegment(go.PathSegment.Bezier,.8*ie,.3*ae,.25*ie,0,.75*ie,0)),ve.add(new go.PathSegment(go.PathSegment.Line,.8*ie,.35*ae)),fe}),go.Shape.defineFigureGenerator("Gear",function(ye,ie,ae){return new go.Geometry().add(new go.PathFigure(.9375*ie,.56246875*ae,!0).add(new go.PathSegment(go.PathSegment.Line,.9375*ie,.4375*ae)).add(new go.PathSegment(go.PathSegment.Line,.80621875*ie,.4375*ae)).add(new go.PathSegment(go.PathSegment.Bezier,.763*ie,.3316875*ae,.79840625*ie,.39915625*ae,.7834375*ie,.3635*ae)).add(new go.PathSegment(go.PathSegment.Line,.8566875*ie,.23796875*ae)).add(new go.PathSegment(go.PathSegment.Line,.76825*ie,.14959375*ae)).add(new go.PathSegment(go.PathSegment.Line,.67596875*ie,.24184375*ae)).add(new go.PathSegment(go.PathSegment.Bezier,.5625*ie,.19378125*ae,.64228125*ie,.2188125*ae,.603875*ie,.2021875*ae)).add(new go.PathSegment(go.PathSegment.Line,.5625*ie,.0625*ae)).add(new go.PathSegment(go.PathSegment.Line,.4375*ie,.0625*ae)).add(new go.PathSegment(go.PathSegment.Line,.4375*ie,.19378125*ae)).add(new go.PathSegment(go.PathSegment.Bezier,.32775*ie,.239375*ae,.39759375*ie,.20190625*ae,.36053125*ie,.2176875*ae)).add(new go.PathSegment(go.PathSegment.Line,.2379375*ie,.14959375*ae)).add(new go.PathSegment(go.PathSegment.Line,.14953125*ie,.2379375*ae)).add(new go.PathSegment(go.PathSegment.Line,.23934375*ie,.3278125*ae)).add(new go.PathSegment(go.PathSegment.Bezier,.19378125*ie,.4375*ae,.21765625*ie,.36059375*ae,.201875*ie,.397625*ae)).add(new go.PathSegment(go.PathSegment.Line,.0625*ie,.4375*ae)).add(new go.PathSegment(go.PathSegment.Line,.0625*ie,.5625*ae)).add(new go.PathSegment(go.PathSegment.Line,.1938125*ie,.5625*ae)).add(new go.PathSegment(go.PathSegment.Bezier,.241875*ie,.67596875*ae,.20221875*ie,.603875*ae,.21884375*ie,.64228125*ae)).add(new go.PathSegment(go.PathSegment.Line,.1495625*ie,.76825*ae)).add(new go.PathSegment(go.PathSegment.Line,.238*ie,.8566875*ae)).add(new go.PathSegment(go.PathSegment.Line,.3316875*ie,.76296875*ae)).add(new go.PathSegment(go.PathSegment.Bezier,.43753125*ie,.80621875*ae,.36353125*ie,.78340625*ae,.3991875*ie,.79840625*ae)).add(new go.PathSegment(go.PathSegment.Line,.43753125*ie,.9375*ae)).add(new go.PathSegment(go.PathSegment.Line,.5625*ie,.9375*ae)).add(new go.PathSegment(go.PathSegment.Line,.5625*ie,.80621875*ae)).add(new go.PathSegment(go.PathSegment.Bezier,.67225*ie,.760625*ae,.602375*ie,.79809375*ae,.63946875*ie,.78234375*ae)).add(new go.PathSegment(go.PathSegment.Line,.76828125*ie,.8566875*ae)).add(new go.PathSegment(go.PathSegment.Line,.85671875*ie,.76825*ae)).add(new go.PathSegment(go.PathSegment.Line,.76065625*ie,.67221875*ae)).add(new go.PathSegment(go.PathSegment.Bezier,.80621875*ie,.56246875*ae,.78234375*ie,.63940625*ae,.798125*ie,.602375*ae)).add(new go.PathSegment(go.PathSegment.Line,.9375*ie,.56246875*ae).close()).add(new go.PathSegment(go.PathSegment.Move,.5*ie,.6*ae)).add(new go.PathSegment(go.PathSegment.Arc,90,360,.5*ie,.5*ae,.1*ie,.1*ae).close()))}),go.Shape.defineFigureGenerator("Hand",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,.5*ae,!0);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Bezier,.1*ie,.3*ae,0,.375*ae,.05*ie,.325*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,.45*ie,.075*ae,.3*ie,.225*ae,.4*ie,.175*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,.525*ie,.075*ae,.46*ie,.05*ae,.525*ie,.05*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,.3*ie,.4*ae,.525*ie,.275*ae,.475*ie,.325*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.9*ie,.4*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,.9*ie,.55*ae,ie,.4*ae,ie,.55*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.425*ie,.55*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.6*ie,.55*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,.6*ie,.7*ae,.675*ie,.55*ae,.675*ie,.7*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.4*ie,.7*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.575*ie,.7*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,.575*ie,.85*ae,.65*ie,.7*ae,.65*ie,.85*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.4*ie,.85*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.525*ie,.85*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,.535*ie,ae,.61*ie,.85*ae,.61*ie,ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,0,.9*ae,.435*ie,ae,0,ae).close()),fe}),go.Shape.defineFigureGenerator("Map",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,.2*ae,!0);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.25*ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,.5*ie,.2*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.75*ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,ie,.2*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,.75*ie,.8*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.5*ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,.25*ie,.8*ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,ae).close()),de.add(new go.PathSegment(go.PathSegment.Move,.25*ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,.25*ie,.8*ae)),de.add(new go.PathSegment(go.PathSegment.Move,.5*ie,.2*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.5*ie,ae)),de.add(new go.PathSegment(go.PathSegment.Move,.75*ie,0)),de.add(new go.PathSegment(go.PathSegment.Line,.75*ie,.8*ae)),fe}),go.Shape.defineFigureGenerator("Eject",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,ae,!0);fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,ie,ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie,ae*.7)),de.add(new go.PathSegment(go.PathSegment.Line,0,ae*.7).close());var ve=new go.PathFigure(0,ae*.6,!0);return fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,ie,.6*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.5*ie,0).close()),fe}),go.Shape.defineFigureGenerator("Pencil",function(ye,ie,ae){return new go.Geometry().add(new go.PathFigure(0,0,!0).add(new go.PathSegment(go.PathSegment.Line,.2*ie,.1*ae)).add(new go.PathSegment(go.PathSegment.Line,ie,.9*ae)).add(new go.PathSegment(go.PathSegment.Line,.9*ie,ae)).add(new go.PathSegment(go.PathSegment.Line,.1*ie,.2*ae).close()))}),go.Shape.defineFigureGenerator("Building",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(ie*1,ae*1,!1);fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,0,ae*1)),de.add(new go.PathSegment(go.PathSegment.Line,0,ae*.85)),de.add(new go.PathSegment(go.PathSegment.Line,.046*ie,ae*.85)),de.add(new go.PathSegment(go.PathSegment.Line,.046*ie,ae*.45)),de.add(new go.PathSegment(go.PathSegment.Line,0,ae*.45)),de.add(new go.PathSegment(go.PathSegment.Line,0,ae*.3)),de.add(new go.PathSegment(go.PathSegment.Line,.046*ie,ae*.3)),de.add(new go.PathSegment(go.PathSegment.Line,.5*ie,ae*0)),de.add(new go.PathSegment(go.PathSegment.Line,(1-.046)*ie,ae*.3)),de.add(new go.PathSegment(go.PathSegment.Line,ie,ae*.3)),de.add(new go.PathSegment(go.PathSegment.Line,ie,ae*.45)),de.add(new go.PathSegment(go.PathSegment.Line,(1-.046)*ie,ae*.45)),de.add(new go.PathSegment(go.PathSegment.Line,(1-.046)*ie,ae*.85)),de.add(new go.PathSegment(go.PathSegment.Line,ie,ae*.85).close());var ve=new go.PathFigure(.126*ie,.85*ae,!1);fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,.126*ie,.45*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.322*ie,.45*ae)),ve.add(new go.PathSegment(go.PathSegment.Line,.322*ie,.85*ae).close());var xe=new go.PathFigure(.402*ie,.85*ae,!1);fe.add(xe),xe.add(new go.PathSegment(go.PathSegment.Line,.402*ie,.45*ae)),xe.add(new go.PathSegment(go.PathSegment.Line,.598*ie,.45*ae)),xe.add(new go.PathSegment(go.PathSegment.Line,.598*ie,.85*ae).close());var he=new go.PathFigure(.678*ie,.85*ae,!1);fe.add(he),he.add(new go.PathSegment(go.PathSegment.Line,.678*ie,.45*ae)),he.add(new go.PathSegment(go.PathSegment.Line,.874*ie,.45*ae)),he.add(new go.PathSegment(go.PathSegment.Line,.874*ie,.85*ae).close());var pe=new go.PathFigure(.5*ie,.1*ae,!1);return fe.add(pe),pe.add(new go.PathSegment(go.PathSegment.Line,(.046+.15)*ie,.3*ae)),pe.add(new go.PathSegment(go.PathSegment.Line,(1-(.046+.15))*ie,.3*ae).close()),fe}),go.Shape.defineFigureGenerator("Staircase",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,ae*1,!0);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,ie*.2,ae*1)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.2,ae*.8)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.4,ae*.8)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.4,ae*.6)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.6,ae*.6)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.6,ae*.4)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.8,ae*.4)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.8,ae*.2)),de.add(new go.PathSegment(go.PathSegment.Line,ie*1,ae*.2)),de.add(new go.PathSegment(go.PathSegment.Line,ie*1,ae*.15)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.75,ae*.15)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.75,ae*.35)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.55,ae*.35)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.55,ae*.55)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.35,ae*.55)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.35,ae*.75)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.15,ae*.75)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.15,ae*.95)),de.add(new go.PathSegment(go.PathSegment.Line,0,ae*.95).close()),fe}),go.Shape.defineFigureGenerator("5Bars",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,ae*1,!0);fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,ie*.184,ae*1)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.184,ae*(1-.184)).close());var ve=new go.PathFigure(ie*.204,ae,!0);fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,ie*.204,ae*(1-.184))),ve.add(new go.PathSegment(go.PathSegment.Line,ie*.388,ae*(1-.184*2))),ve.add(new go.PathSegment(go.PathSegment.Line,ie*.388,ae*1).close());var xe=new go.PathFigure(ie*.408,ae,!0);fe.add(xe),xe.add(new go.PathSegment(go.PathSegment.Line,ie*.408,ae*(1-.184*2))),xe.add(new go.PathSegment(go.PathSegment.Line,ie*.592,ae*(1-.184*3))),xe.add(new go.PathSegment(go.PathSegment.Line,ie*.592,ae*1).close());var he=new go.PathFigure(ie*.612,ae,!0);fe.add(he),he.add(new go.PathSegment(go.PathSegment.Line,ie*.612,ae*(1-.184*3))),he.add(new go.PathSegment(go.PathSegment.Line,ie*.796,ae*(1-.184*4))),he.add(new go.PathSegment(go.PathSegment.Line,ie*.796,ae*1).close());var pe=new go.PathFigure(ie*.816,ae,!0);return fe.add(pe),pe.add(new go.PathSegment(go.PathSegment.Line,ie*.816,ae*(1-.184*4))),pe.add(new go.PathSegment(go.PathSegment.Line,ie*1,ae*(1-.184*5))),pe.add(new go.PathSegment(go.PathSegment.Line,ie*1,ae*1).close()),fe}),go.Shape.defineFigureGenerator("PC",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,0,!0);fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,0,ae*1)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.3,ae*1)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.3,0).close());var ve=new go.PathFigure(ie*.055,.07*ae,!0);fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,ie*.245,ae*.07)),ve.add(new go.PathSegment(go.PathSegment.Line,ie*.245,ae*.1)),ve.add(new go.PathSegment(go.PathSegment.Line,ie*.055,ae*.1).close());var xe=new go.PathFigure(ie*.055,.13*ae,!0);fe.add(xe),xe.add(new go.PathSegment(go.PathSegment.Line,ie*.245,ae*.13)),xe.add(new go.PathSegment(go.PathSegment.Line,ie*.245,ae*.16)),xe.add(new go.PathSegment(go.PathSegment.Line,ie*.055,ae*.16).close());var he=new go.PathFigure(ie*.055,.18*ae,!0);fe.add(he),he.add(new go.PathSegment(go.PathSegment.Line,ie*.245,ae*.18)),he.add(new go.PathSegment(go.PathSegment.Line,ie*.245,ae*.21)),he.add(new go.PathSegment(go.PathSegment.Line,ie*.055,ae*.21).close());var pe=new go.PathFigure(ie*1,0,!0);return fe.add(pe),pe.add(new go.PathSegment(go.PathSegment.Line,ie*.4,0)),pe.add(new go.PathSegment(go.PathSegment.Line,ie*.4,ae*.65)),pe.add(new go.PathSegment(go.PathSegment.Line,ie*1,ae*.65).close()),fe}),go.Shape.defineFigureGenerator("Plane",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(.55*ie,ae,!0);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,.5*ie,.6*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.4*ie,.7*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.1*ie,.475*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,.35*ie,.525*ae,0,.4*ae,.225*ie,.45*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.4*ie,.475*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.15*ie,.35*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.2*ie,.325*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.6*ie,.325*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.85*ie,.1*ae)),de.add(new go.PathSegment(go.PathSegment.Bezier,.9*ie,.2*ae,.975*ie,0,ie,.08*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.7*ie,.45*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.6*ie,.95*ae)),de.add(new go.PathSegment(go.PathSegment.Line,.55*ie,ae).close()),fe}),go.Shape.defineFigureGenerator("Key",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(ie*1,ae*.5,!0);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,ie*.9,.4*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.5,.4*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.5,.35*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.45,.35*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.3,.2*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.15,.2*ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,.35*ae)),de.add(new go.PathSegment(go.PathSegment.Line,0,.65*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.15,.8*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.3,.8*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.45,.65*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.5,.65*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.5,.6*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.6,.6*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.65,.55*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.7,.6*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.75,.55*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.8,.6*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.85,.575*ae)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.9,.6*ae).close()),de.add(new go.PathSegment(go.PathSegment.Move,.17*ie,.425*ae)),de.add(new go.PathSegment(go.PathSegment.Arc,270,360,.17*ie,.5*ae,.075*ie,.075*ae).close()),fe}),go.Shape.defineFigureGenerator("FilmTape",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(0,0,!1);fe.add(de),de.add(new go.PathSegment(go.PathSegment.Arc,270,180,ie*0,ie*.3,ie*.055)),de.add(new go.PathSegment(go.PathSegment.Line,0,ae*1)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.08,ae*1)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.08,ae*.95)),de.add(new go.PathSegment(go.PathSegment.Line,ie*(.08+.056*1),ae*.95)),de.add(new go.PathSegment(go.PathSegment.Line,ie*(.08+.056*1),ae*1)),de.add(new go.PathSegment(go.PathSegment.Line,ie*(.08+.056*2),ae*1)),de.add(new go.PathSegment(go.PathSegment.Line,ie*(.08+.056*2),ae*.95)),de.add(new go.PathSegment(go.PathSegment.Line,ie*(.08+.056*3),ae*.95)),de.add(new go.PathSegment(go.PathSegment.Line,ie*(.08+.056*3),ae*1)),de.add(new go.PathSegment(go.PathSegment.Line,ie*(.08+.056*4),ae*1)),de.add(new go.PathSegment(go.PathSegment.Line,ie*(.08+.056*4),ae*.95)),de.add(new go.PathSegment(go.PathSegment.Line,ie*(.08+.056*5),ae*.95)),de.add(new go.PathSegment(go.PathSegment.Line,ie*(.08+.056*5),ae*1)),de.add(new go.PathSegment(go.PathSegment.Line,ie*(.08+.056*6),ae*1)),de.add(new go.PathSegment(go.PathSegment.Line,ie*(.08+.056*6),ae*.95)),de.add(new go.PathSegment(go.PathSegment.Line,ie*(.08+.056*7),ae*.95)),de.add(new go.PathSegment(go.PathSegment.Line,ie*(.08+.056*7),ae*1)),de.add(new go.PathSegment(go.PathSegment.Line,ie*(.08+.056*8),ae*1)),de.add(new go.PathSegment(go.PathSegment.Line,ie*(.08+.056*8),ae*.95)),de.add(new go.PathSegment(go.PathSegment.Line,ie*(.08+.056*9),ae*.95)),de.add(new go.PathSegment(go.PathSegment.Line,ie*(.08+.056*9),ae*1)),de.add(new go.PathSegment(go.PathSegment.Line,ie*(.08+.056*10),ae*1)),de.add(new go.PathSegment(go.PathSegment.Line,ie*(.08+.056*10),ae*.95)),de.add(new go.PathSegment(go.PathSegment.Line,ie*(.08+.056*11),ae*.95)),de.add(new go.PathSegment(go.PathSegment.Line,ie*(.08+.056*11),ae*1)),de.add(new go.PathSegment(go.PathSegment.Line,ie*(.08+.056*12),ae*1)),de.add(new go.PathSegment(go.PathSegment.Line,ie*(.08+.056*12),ae*.95)),de.add(new go.PathSegment(go.PathSegment.Line,ie*(.08+.056*13),ae*.95)),de.add(new go.PathSegment(go.PathSegment.Line,ie*(.08+.056*13),ae*1)),de.add(new go.PathSegment(go.PathSegment.Line,ie*(.08+.056*14),ae*1)),de.add(new go.PathSegment(go.PathSegment.Line,ie*(.08+.056*14),ae*.95)),de.add(new go.PathSegment(go.PathSegment.Line,ie*(.08+.056*15),ae*.95)),de.add(new go.PathSegment(go.PathSegment.Line,ie*(.08+.056*15),ae*1)),de.add(new go.PathSegment(go.PathSegment.Line,ie*1,ae*1)),de.add(new go.PathSegment(go.PathSegment.Line,ie*1,ae*1));var ve=new go.PathFigure(0,0,!1);fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,ie*1,ae*0)),ve.add(new go.PathSegment(go.PathSegment.Arc,270,-180,ie*1,ie*.3,ie*.055)),ve.add(new go.PathSegment(go.PathSegment.Line,ie*1,ae*1));var xe=new go.PathFigure(ie*.11,ae*.1,!1);fe.add(xe),xe.add(new go.PathSegment(go.PathSegment.Line,ie*(.11+.24133333*1+.028*0),ae*.1)),xe.add(new go.PathSegment(go.PathSegment.Line,ie*(.11+.24133333*1+.028*0),ae*.8)),xe.add(new go.PathSegment(go.PathSegment.Line,ie*.11,ae*.8).close());var he=new go.PathFigure(ie*(.11+.24133333*1+.028*1),ae*.1,!1);fe.add(he),he.add(new go.PathSegment(go.PathSegment.Line,ie*(.11+.24133333*2+.028*1),ae*.1)),he.add(new go.PathSegment(go.PathSegment.Line,ie*(.11+.24133333*2+.028*1),ae*.8)),he.add(new go.PathSegment(go.PathSegment.Line,ie*(.11+.24133333*1+.028*1),ae*.8).close());var pe=new go.PathFigure(ie*(.11+.24133333*2+.028*2),ae*.1,!1);return fe.add(pe),pe.add(new go.PathSegment(go.PathSegment.Line,ie*(.11+.24133333*3+.028*2),ae*.1)),pe.add(new go.PathSegment(go.PathSegment.Line,ie*(.11+.24133333*3+.028*2),ae*.8)),pe.add(new go.PathSegment(go.PathSegment.Line,ie*(.11+.24133333*2+.028*2),ae*.8).close()),fe}),go.Shape.defineFigureGenerator("FloppyDisk",function(ye,ie,ae){var fe=new go.Geometry,de=8,ve=de*we,xe=new go.PathFigure(de,0,!1);fe.add(xe),xe.add(new go.PathSegment(go.PathSegment.Line,ie*.86,0)),xe.add(new go.PathSegment(go.PathSegment.Line,ie*1,ae*.14)),xe.add(new go.PathSegment(go.PathSegment.Line,ie,ae-de)),xe.add(new go.PathSegment(go.PathSegment.Bezier,ie-de,ae,ie,ae-ve,ie-ve,ae)),xe.add(new go.PathSegment(go.PathSegment.Line,de,ae)),xe.add(new go.PathSegment(go.PathSegment.Bezier,0,ae-de,ve,ae,0,ae-ve)),xe.add(new go.PathSegment(go.PathSegment.Line,0,de)),xe.add(new go.PathSegment(go.PathSegment.Bezier,de,0,0,ve,ve,0).close());var he=new go.PathFigure(ie*.83,0,!1);fe.add(he),he.add(new go.PathSegment(go.PathSegment.Line,ie*.83,ae*.3)),he.add(new go.PathSegment(go.PathSegment.Line,ie*.17,ae*.3)),he.add(new go.PathSegment(go.PathSegment.Line,ie*.17,ae*0).close());var pe=new go.PathFigure(ie*.83,ae*1,!1);fe.add(pe),pe.add(new go.PathSegment(go.PathSegment.Line,ie*.83,ae*.5)),pe.add(new go.PathSegment(go.PathSegment.Line,ie*.17,ae*.5)),pe.add(new go.PathSegment(go.PathSegment.Line,ie*.17,ae*1).close());var Se=new go.PathFigure(ie*.78,ae*.05,!1);return fe.add(Se),Se.add(new go.PathSegment(go.PathSegment.Line,ie*.66,ae*.05)),Se.add(new go.PathSegment(go.PathSegment.Line,ie*.66,ae*.25)),Se.add(new go.PathSegment(go.PathSegment.Line,ie*.78,ae*.25).close()),fe}),go.Shape.defineFigureGenerator("SpeechBubble",function(ye,ie,ae){var fe=ye?ye.parameter1:NaN;(isNaN(fe)||fe<0)&&(fe=15),fe=Math.min(fe,ie/3),fe=Math.min(fe,ae/3);var de=fe*we,ve=ae*.8,xe=new go.Geometry,he=new go.PathFigure(fe,0,!0);return xe.add(he),he.add(new go.PathSegment(go.PathSegment.Line,ie-fe,0)),he.add(new go.PathSegment(go.PathSegment.Bezier,ie,fe,ie-de,0,ie,de)),he.add(new go.PathSegment(go.PathSegment.Line,ie,ve-fe)),he.add(new go.PathSegment(go.PathSegment.Bezier,ie-fe,ve,ie,ve-de,ie-de,ve)),he.add(new go.PathSegment(go.PathSegment.Line,ie*.7,ve)),he.add(new go.PathSegment(go.PathSegment.Line,ie*.7,ae)),he.add(new go.PathSegment(go.PathSegment.Line,ie*.55,ve)),he.add(new go.PathSegment(go.PathSegment.Line,fe,ve)),he.add(new go.PathSegment(go.PathSegment.Bezier,0,ve-fe,de,ve,0,ve-de)),he.add(new go.PathSegment(go.PathSegment.Line,0,fe)),he.add(new go.PathSegment(go.PathSegment.Bezier,fe,0,0,de,de,0).close()),de>1?(xe.spot1=new go.Spot(0,0,de,de),xe.spot2=new go.Spot(1,.8,-de,-de)):(xe.spot1=go.Spot.TopLeft,xe.spot2=new go.Spot(1,.8)),xe}),go.Shape.defineFigureGenerator("Repeat",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(ie*0,ae*.45,!0);fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,ie*.25,ae*0)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.5,ae*.45)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.3,ae*.45)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.3,ae*.9)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.6,ae*.9)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.65,ae*1)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.2,ae*1)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.2,ae*.45).close());var ve=new go.PathFigure(ie*1,ae*.55,!0);return fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,ie*.75,ae*1)),ve.add(new go.PathSegment(go.PathSegment.Line,ie*.5,ae*.55)),ve.add(new go.PathSegment(go.PathSegment.Line,ie*.7,ae*.55)),ve.add(new go.PathSegment(go.PathSegment.Line,ie*.7,ae*.1)),ve.add(new go.PathSegment(go.PathSegment.Line,ie*.4,ae*.1)),ve.add(new go.PathSegment(go.PathSegment.Line,ie*.35,ae*0)),ve.add(new go.PathSegment(go.PathSegment.Line,ie*.8,ae*0)),ve.add(new go.PathSegment(go.PathSegment.Line,ie*.8,ae*.55).close()),fe}),go.Shape.defineFigureGenerator("Windows",function(ye,ie,ae){return new go.Geometry().add(new go.PathFigure(0,0,!0).add(new go.PathSegment(go.PathSegment.Line,ie,0)).add(new go.PathSegment(go.PathSegment.Line,ie,ae)).add(new go.PathSegment(go.PathSegment.Line,0,ae).close()).add(new go.PathSegment(go.PathSegment.Move,.4*ie,.4*ae)).add(new go.PathSegment(go.PathSegment.Line,.4*ie,.8*ae)).add(new go.PathSegment(go.PathSegment.Line,.9*ie,.8*ae)).add(new go.PathSegment(go.PathSegment.Line,.9*ie,.4*ae).close()).add(new go.PathSegment(go.PathSegment.Move,.2*ie,.1*ae)).add(new go.PathSegment(go.PathSegment.Line,.2*ie,.6*ae)).add(new go.PathSegment(go.PathSegment.Line,.7*ie,.6*ae)).add(new go.PathSegment(go.PathSegment.Line,.7*ie,.1*ae).close()).add(new go.PathSegment(go.PathSegment.Move,.1*ie,.6*ae)).add(new go.PathSegment(go.PathSegment.Line,.1*ie,.9*ae)).add(new go.PathSegment(go.PathSegment.Line,.5*ie,.9*ae)).add(new go.PathSegment(go.PathSegment.Line,.5*ie,.6*ae).close()))}),go.Shape.defineFigureGenerator("Terminal",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(ie*0,ae*.1,!1);fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,ie*1,ae*.1)),de.add(new go.PathSegment(go.PathSegment.Line,ie*1,ae*.9)),de.add(new go.PathSegment(go.PathSegment.Line,ie*0,ae*.9).close());var ve=new go.PathFigure(ie*.1,ae*.2,!0);fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,ie*.1,ae*.25)),ve.add(new go.PathSegment(go.PathSegment.Line,ie*.22,ae*.285)),ve.add(new go.PathSegment(go.PathSegment.Line,ie*.1,ae*.32)),ve.add(new go.PathSegment(go.PathSegment.Line,ie*.1,ae*.37)),ve.add(new go.PathSegment(go.PathSegment.Line,ie*.275,ae*.32)),ve.add(new go.PathSegment(go.PathSegment.Line,ie*.275,ae*.25).close());var xe=new go.PathFigure(ie*.28,ae*.37,!0);return fe.add(xe),xe.add(new go.PathSegment(go.PathSegment.Line,ie*.45,ae*.37)),xe.add(new go.PathSegment(go.PathSegment.Line,ie*.45,ae*.41)),xe.add(new go.PathSegment(go.PathSegment.Line,ie*.28,ae*.41).close()),fe}),go.Shape.defineFigureGenerator("Beaker",function(ye,ie,ae){var fe=new go.Geometry,de=15,ve=de*we,xe=new go.PathFigure(ie*.62,ae*.475,!0);return fe.add(xe),xe.add(new go.PathSegment(go.PathSegment.Line,ie,ae-de)),xe.add(new go.PathSegment(go.PathSegment.Bezier,ie-de,ae,ie,ae-ve,ie-ve,ae)),xe.add(new go.PathSegment(go.PathSegment.Line,de,ae)),xe.add(new go.PathSegment(go.PathSegment.Bezier,0,ae-de,ve,ae,0,ae-ve)),xe.add(new go.PathSegment(go.PathSegment.Line,ie*.38,ae*.475)),xe.add(new go.PathSegment(go.PathSegment.Line,ie*.38,ae*.03)),xe.add(new go.PathSegment(go.PathSegment.Line,ie*.36,ae*0)),xe.add(new go.PathSegment(go.PathSegment.Line,ie*.64,ae*0)),xe.add(new go.PathSegment(go.PathSegment.Line,ie*.62,ae*.03).close()),ve>1?(fe.spot1=new go.Spot(0,0,ve,ve),fe.spot2=new go.Spot(1,1,-ve,-ve)):(fe.spot1=go.Spot.TopLeft,fe.spot2=go.Spot.BottomRight),fe}),go.Shape.defineFigureGenerator("Download",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(ie*0,ae*1,!0);fe.add(de);var ve=.1/.3;de.add(new go.PathSegment(go.PathSegment.Line,ie*1,ae*1)),de.add(new go.PathSegment(go.PathSegment.Line,ie*1,ae*(1-ve))),de.add(new go.PathSegment(go.PathSegment.Line,ie*.8,ae*0)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.66,ae*0)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.66,ae*.055)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.755,ae*.055)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.93,ae*(1-ve))),de.add(new go.PathSegment(go.PathSegment.Line,ie*.64,ae*(1-ve))),de.add(new go.PathSegment(go.PathSegment.Line,ie*.61,ae*.75)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.5,ae*.75)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.39,ae*.75)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.36,ae*(1-ve))),de.add(new go.PathSegment(go.PathSegment.Line,ie*.07,ae*(1-ve))),de.add(new go.PathSegment(go.PathSegment.Line,ie*(1-.755),ae*.055)),de.add(new go.PathSegment(go.PathSegment.Line,ie*(1-.66),ae*.055)),de.add(new go.PathSegment(go.PathSegment.Line,ie*(1-.66),ae*0)),de.add(new go.PathSegment(go.PathSegment.Line,ie*(1-.8),ae*0)),de.add(new go.PathSegment(go.PathSegment.Line,ie*0,ae*(1-ve)).close());var xe=new go.PathFigure(ie*.4,ae*0,!0);return fe.add(xe),xe.add(new go.PathSegment(go.PathSegment.Line,ie*.4,ae*.44)),xe.add(new go.PathSegment(go.PathSegment.Line,ie*.26,ae*.44)),xe.add(new go.PathSegment(go.PathSegment.Line,ie*.5,ae*.66)),xe.add(new go.PathSegment(go.PathSegment.Line,ie*(1-.26),ae*.44)),xe.add(new go.PathSegment(go.PathSegment.Line,ie*.6,ae*.44)),xe.add(new go.PathSegment(go.PathSegment.Line,ie*.6,ae*0).close()),fe}),go.Shape.defineFigureGenerator("Bin",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(ie*0,ae*1,!0);fe.add(de);var ve=.1/.3;return de.add(new go.PathSegment(go.PathSegment.Line,ie*1,ae*1)),de.add(new go.PathSegment(go.PathSegment.Line,ie*1,ae*(1-ve))),de.add(new go.PathSegment(go.PathSegment.Line,ie*.8,ae*0)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.66,ae*0)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.66,ae*.055)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.755,ae*.055)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.93,ae*(1-ve))),de.add(new go.PathSegment(go.PathSegment.Line,ie*.64,ae*(1-ve))),de.add(new go.PathSegment(go.PathSegment.Line,ie*.61,ae*.75)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.5,ae*.75)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.39,ae*.75)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.36,ae*(1-ve))),de.add(new go.PathSegment(go.PathSegment.Line,ie*.07,ae*(1-ve))),de.add(new go.PathSegment(go.PathSegment.Line,ie*(1-.755),ae*.055)),de.add(new go.PathSegment(go.PathSegment.Line,ie*(1-.66),ae*.055)),de.add(new go.PathSegment(go.PathSegment.Line,ie*(1-.66),ae*0)),de.add(new go.PathSegment(go.PathSegment.Line,ie*(1-.8),ae*0)),de.add(new go.PathSegment(go.PathSegment.Line,ie*0,ae*(1-ve)).close()),fe}),go.Shape.defineFigureGenerator("Upload",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(ie*0,ae*1,!0);fe.add(de);var ve=.1/.3;de.add(new go.PathSegment(go.PathSegment.Line,ie*1,ae*1)),de.add(new go.PathSegment(go.PathSegment.Line,ie*1,ae*(1-ve))),de.add(new go.PathSegment(go.PathSegment.Line,ie*.8,ae*0)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.66,ae*0)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.66,ae*.055)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.755,ae*.055)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.93,ae*(1-ve))),de.add(new go.PathSegment(go.PathSegment.Line,ie*.64,ae*(1-ve))),de.add(new go.PathSegment(go.PathSegment.Line,ie*.61,ae*.75)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.5,ae*.75)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.39,ae*.75)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.36,ae*(1-ve))),de.add(new go.PathSegment(go.PathSegment.Line,ie*.07,ae*(1-ve))),de.add(new go.PathSegment(go.PathSegment.Line,ie*(1-.755),ae*.055)),de.add(new go.PathSegment(go.PathSegment.Line,ie*(1-.66),ae*.055)),de.add(new go.PathSegment(go.PathSegment.Line,ie*(1-.66),ae*0)),de.add(new go.PathSegment(go.PathSegment.Line,ie*(1-.8),ae*0)),de.add(new go.PathSegment(go.PathSegment.Line,ie*0,ae*(1-ve)).close());var xe=new go.PathFigure(ie*.5,ae*0,!0);return fe.add(xe),xe.add(new go.PathSegment(go.PathSegment.Line,ie*.26,ae*.25)),xe.add(new go.PathSegment(go.PathSegment.Line,ie*.4,ae*.25)),xe.add(new go.PathSegment(go.PathSegment.Line,ie*.4,ae*.63)),xe.add(new go.PathSegment(go.PathSegment.Line,ie*.6,ae*.63)),xe.add(new go.PathSegment(go.PathSegment.Line,ie*.6,ae*.25)),xe.add(new go.PathSegment(go.PathSegment.Line,ie*.74,ae*.25).close()),fe}),go.Shape.defineFigureGenerator("EmptyDrink",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(ie*.15,ae*0,!1);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,ie*.85,ae*0)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.7,ae*1)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.3,ae*1).close()),fe}),go.Shape.defineFigureGenerator("Drink",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(ie*.15,ae*0,!1);fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,ie*.85,ae*0)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.7,ae*1)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.3,ae*1).close());var ve=new go.PathFigure(ie*.235,ae*.28,!0);return fe.add(ve),ve.add(new go.PathSegment(go.PathSegment.Line,ie*.765,ae*.28)),ve.add(new go.PathSegment(go.PathSegment.Line,ie*.655,ae*.97)),ve.add(new go.PathSegment(go.PathSegment.Line,ie*.345,ae*.97).close()),fe}),go.Shape.defineFigureGenerator("4Arrows",function(ye,ie,ae){var fe=new go.Geometry,de=new go.PathFigure(ie*.5,ae*0,!0);return fe.add(de),de.add(new go.PathSegment(go.PathSegment.Line,ie*.65,ae*.25)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.55,ae*.25)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.55,ae*.45)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.75,ae*.45)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.75,ae*.35)),de.add(new go.PathSegment(go.PathSegment.Line,ie*1,ae*.5)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.75,ae*.65)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.75,ae*.55)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.55,ae*.55)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.55,ae*.75)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.65,ae*.75)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.5,ae*1)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.35,ae*.75)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.45,ae*.75)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.45,ae*.55)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.25,ae*.55)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.25,ae*.65)),de.add(new go.PathSegment(go.PathSegment.Line,ie*0,ae*.5)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.25,ae*.35)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.25,ae*.45)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.45,ae*.45)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.45,ae*.25)),de.add(new go.PathSegment(go.PathSegment.Line,ie*.35,ae*.25).close()),fe}),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")},5559: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 sn={},an="5.0",Be={},He=null,et=!1,Ge=!1,ke=null,Ze=!1,Oe=null,we=null,Te=0;Te4?parseFloat(Ft):5};sn.setHTML5Codebase=function(Ft,Yt){we=Ft,Nt(Ft,Yt)},sn.setJavaCodebase=sn.setJavaCodebaseVersion=sn.isCompiledInstalled=sn.setPreCompiledScriptPath=sn.setPreCompiledResourcePath=function(){},sn.setHTML5CodebaseVersion=function(Ft,Yt){var dn=parseFloat(Ft);if(dn!==NaN&&dn<5){console.log("The GeoGebra HTML5 codebase version "+dn+" is deprecated. Using version latest instead.");return}Oe=Ft,lt(Ft,Yt)},sn.getHTML5CodebaseVersion=function(){return ye},sn.getParameters=function(){return Be},sn.setFontsCSSURL=function(Ft){xe=Ft},sn.setGiacJSURL=function(Ft){},sn.setJNLPFile=function(Ft){Ie=Ft},sn.setJNLPBaseDir=function(Ft){},sn.inject=function(){function Ft(){return window.frameElement&&window.frameElement.getAttribute("data-singleton")}for(var Yt="auto",dn=Be.id,Dn,Rn=!1,Zn=0;Zn=5)return!0;var Ft=sn.getAppletObject();return Ft&&typeof Ft.recalculateEnvironments=="function"?(Ft.recalculateEnvironments(),!0):!1},sn.startAnimation=function(){var Ft=sn.getAppletObject();return Ft&&typeof Ft.startAnimation=="function"?(Ft.startAnimation(),!0):!1},sn.stopAnimation=function(){var Ft=sn.getAppletObject();return Ft&&typeof Ft.stopAnimation=="function"?(Ft.stopAnimation(),!0):!1},sn.getAppletObject=function(){var Ft=Be.id!==void 0?Be.id:"ggbApplet";return window[Ft]},sn.resize=function(){};var Je=function(Ft,Yt,dn){var Dn=document.createElement("param");Dn.setAttribute("name",Yt),Dn.setAttribute("value",dn),Ft.appendChild(Dn)},tt=function(Ft){return Ft&&Ft!=="false"},gt=function(Ft,Yt,dn){pe(ye)<=4.2&&(dn=!0);var Dn=!isRenderGGBElementEnabled&&!scriptLoadStarted;(!isRenderGGBElementEnabled&&!scriptLoadStarted||ggbHTML5LoadedCodebaseVersion!==ye||ggbHTML5LoadedCodebaseIsWebSimple&&!ae)&&(Dn=!0,isRenderGGBElementEnabled=!1,scriptLoadStarted=!1);var Rn=document.createElement("div");Rn.classList.add("appletParameters","notranslate");var Zn=Yt.width,ln=Yt.height;if(Yt.disableAutoScale=Yt.disableAutoScale===void 0?GGBAppletUtils.isFlexibleWorksheetEditor():Yt.disableAutoScale,Yt.width!==void 0)if(pe(ye)<=4.4)tt(Yt.showToolBar)&&(Yt.height-=7),tt(Yt.showAlgebraInput)&&(Yt.height-=37),Yt.width<605&&tt(Yt.showToolBar)&&(Yt.width=605,Zn=605);else{var Gn=100;(tt(Yt.showToolBar)||tt(Yt.showMenuBar))&&(Yt.hasOwnProperty("customToolBar")&&(Yt.customToolbar=Yt.customToolBar),Gn=tt(Yt.showMenuBar)?245:155),Zn=5?(Yt.appletOnLoad=function(Jt){var xn=Ft.querySelector(".ggb_preview");xn&&xn.parentNode.removeChild(xn),window.GGBT_spinner&&window.GGBT_spinner.removeSpinner(xt),window.GGBT_wsf_view&&$(window).trigger("resize"),qt(Jt)},ft||xt.appendChild(Bt)):Rn.appendChild(Bt),xt.appendChild(Rn),ft||Ft.appendChild(xt),setTimeout(function(){sn.resize()},1)}else{var Ot=document.createElement("div");Ot.className="applet_scaler",Ot.style.position="relative",Ot.style.display="block",Ot.appendChild(Rn),Ft.appendChild(Ot),Yt.appletOnLoad=function(Jt){sn.resize(),qt(Jt)}}function ut(Jt,xn){xn&&typeof xn.appletOnLoad=="function"&&typeof renderGGBElement=="function"?renderGGBElement(Jt,xn.appletOnLoad):renderGGBElement(Jt),Zt("GeoGebra HTML5 applet injected and rendered with previously loaded codebase.",xn)}function It(Jt,xn){typeof renderGGBElement=="undefined"?(html5AppletsToProcess===null&&(html5AppletsToProcess=[]),html5AppletsToProcess.push({article:Jt,params:xn}),window.renderGGBElementReady=function(){isRenderGGBElementEnabled=!0,html5AppletsToProcess!==null&&html5AppletsToProcess.length&&(html5AppletsToProcess.forEach(function(Qn){ut(Qn.article,Qn.params)}),html5AppletsToProcess=null)},pe(ye)<5&&(Jt.className+=" geogebraweb")):ut(Jt,xn)}if(Dn){scriptLoadStarted=!0;for(var nn=0;nn0?(Wn.remove(),xt.attr("id","fullscreencontent").show(),jQuery(qt).append(xt),window.dispatchEvent(new Event("resize"))):gt(Wn,Yt,!1),window.GGBT_wsf_view.launchFullScreen(qt)}else je=Dn,gt(Ft,Yt,!1);if(!window.GGBT_wsf_view)for(ln=0;lnFt/4*3&&(Wn=Ft/4*3),qt=Wn/5.8,Gn.setAttribute("src",de),Gn.setAttribute("width",Wn),Gn.setAttribute("height",qt);var xt=(Ft-Wn)/2,ft=(Yt-qt)/2;Gn.style.left=xt+"px",Gn.style.top=ft+"px",Rn.appendChild(Gn)}}return Rn.appendChild(ln),Rn},bt=function(Ft){return Ft=Ft.toLowerCase(),Ft==="html5"||Ft==="screenshot"?Ft:"html5"},Et=["web","webSimple","web3d","tablet","tablet3d","phone"],lt=function(Ft,Yt){if(ye=Ft,Yt){Nt(ye,!0);return}var dn=!et;if(dn){var Dn=pe(ye);!isNaN(Dn)&&Dn<4.4&&(dn=!1)}var Rn,Zn;window.location.protocol.substr(0,4)==="http"?Rn=window.location.protocol:Rn="http:";var ln=ye.indexOf("//");ln>0?Zn=ye:ln===0?Zn=Rn+ye:Zn="https://www.geogebra.org/apps/5.2.814.0/";for(var Gn in Et)if(ye.slice(Et[Gn].length*-1)===Et[Gn]||ye.slice((Et[Gn].length+1)*-1)===Et[Gn]+"/"){Nt(Zn,!1);return}!GGBAppletUtils.isFlexibleWorksheetEditor()&&dn&&!He.is3D&&!He.AV&&!He.SV&&!He.CV&&!He.EV2&&!He.CP&&!He.PC&&!He.DA&&!He.FI&&!He.PV&&!tt(Be.showToolBar)&&!tt(Be.showMenuBar)&&!tt(Be.showAlgebraInput)&&!tt(Be.enableRightClick)&&(!Be.appName||Be.appName=="classic")?Zn+="webSimple/":Zn+="web3d/",Nt(Zn,!1)},Nt=function(Ft,Yt){if(Ft.requirejs){be=Ft;return}Ft.slice(-1)!=="/"&&(Ft+="/"),be=Ft,Yt===null&&(Yt=Ft.indexOf("http")===-1),Pe=Yt,ie="web.nocache.js",ae=!1;var dn=be.split("/");dn.length>1&&(!Yt&&dn[dn.length-2]==="webSimple"?(ie="webSimple.nocache.js",ae=!0):Et.indexOf(dn[dn.length-2])>=0&&(ie=dn[dn.length-2]+".nocache.js")),dn=Ft.split("/"),ye=dn[dn.length-3],ye.substr(0,4)==="test"?ye=ye.substr(4,1)+"."+ye.substr(5,1):(ye.substr(0,3)==="war"||ye.substr(0,4)==="beta")&&(ye="5.0");var Dn=parseFloat(ye);Dn!==NaN&&Dn<5&&Ft.indexOf("geogebra.org")>=0&&(console.log("The GeoGebra HTML5 codebase version "+Dn+" is deprecated. Using version latest instead."),lt("5.0",Yt))},Zt=function(Ft,Yt){window.console&&window.console.log&&(!Yt||typeof Yt.showLogging=="undefined"||Yt.showLogging&&Yt.showLogging!=="false")&&console.log(Ft)};Be.material_id!==void 0?ze(Ut):Ut();function Ut(){var Ft=an;Oe!==null?Ft=Oe:parseFloat(Ft)<5&&(Ft="5.0"),lt(Ft,!1),we!==null&&Nt(we,Pe),Ze=!0}return sn},GGBAppletUtils=function(){"use strict";function sn(){return window.GGBT_wsf_edit!==void 0}function an(Ze,Oe){Oe!=1?(Ze.style.transformOrigin="0% 0% 0px",Ze.style.webkitTransformOrigin="0% 0% 0px",Ze.style.transform="scale("+Oe+","+Oe+")",Ze.style.webkitTransform="scale("+Oe+","+Oe+")",Ze.style.maxWidth="initial",Ze.querySelector(".ggb_preview")!==null&&(Ze.querySelector(".ggb_preview").style.maxWidth="initial"),Ze.querySelectorAll(".ggb_preview img")[0]!==void 0&&(Ze.querySelectorAll(".ggb_preview img")[0].style.maxWidth="initial"),Ze.querySelectorAll(".ggb_preview img")[1]!==void 0&&(Ze.querySelectorAll(".ggb_preview img")[1].style.maxWidth="initial")):(Ze.style.transform="none",Ze.style.webkitTransform="none")}function Be(Ze,Oe,we,Te,Re,Ie){var be=null;if(Ie!=null&&Ie!="")for(var Pe=Ze.parentNode;Pe!=null;)if((" "+Pe.className+" ").indexOf(" "+Ie+" ")>-1){be=Pe;break}else Pe=Pe.parentNode;var je=0,ye=0,ie=0,ae=0,fe=0,de=0,ve=0;if(be)je=be.offsetWidth,ye=Math.max(Te?be.offsetWidth:0,be.offsetHeight);else{if(window.innerWidth&&document.documentElement.clientWidth?(je=Math.min(window.innerWidth,document.documentElement.clientWidth),ye=Math.min(window.innerHeight,document.documentElement.clientHeight),ie=je):(je=window.innerWidth,ye=window.innerHeight,ie=window.innerWidth),Ze){var xe=Ze.getBoundingClientRect();xe.left>0&&xe.left<=je&&(Re===void 0||!Re)&&(document.dir==="rtl"?(fe=je-xe.width-xe.left,de=ie<=480?10:30):(de=xe.left,fe=ie<=480?10:30),ae=de+fe)}if(Ze&&typeof window.GGBT_wsf_view=="object"&&window.GGBT_wsf_view.isFullscreen()){var he=Ze.getBoundingClientRect();window.GGBT_wsf_view.getCloseBtnPosition()==="closePositionRight"?(ae=40,ve=0):window.GGBT_wsf_view.getCloseBtnPosition()==="closePositionTop"&&(ae=0,ve=40)}}return Ze&&((we===void 0||!we)&&Oe>0&&Oe+ae1&&(Ie=!0)),Oe&&typeof window.GGBT_wsf_view=="object"&&window.GGBT_wsf_view.isFullscreen()&&(Ie=!0),!(Ze.hasOwnProperty("disableAutoScale")&&Ze.disableAutoScale))Re=He(Ze,Oe,Ie,we,Ze.scaleContainerClass);else return Te;return Ie&&(!Ze.hasOwnProperty("scale")||Te===1)?Re:Math.min(Te,Re)}function Ge(Ze){var Oe=Math.min(window.innerWidth,document.documentElement.clientWidth),we=Math.min(window.innerHeight,document.documentElement.clientHeight),Te=Ze.getBoundingClientRect(),Re=(Oe-Te.width)/2,Ie=(we-Te.height)/2;Ie<0&&(Ie=0),Ze.style.position="relative",window.GGBT_wsf_view.getCloseBtnPosition()==="closePositionRight"?(Re<40?Ze.style.left="40px":Ze.style.left=Re+"px",Ze.style.top=Ie+"px"):window.GGBT_wsf_view.getCloseBtnPosition()==="closePositionTop"&&(Ie<40?Ze.style.top="40px":Ze.style.top=Ie+"px",Ze.style.left=Re+"px")}function ke(Ze,Oe){var we=Ze.querySelector(".appletParameters");if(we){if(typeof window.GGBT_wsf_view=="object"&&window.GGBT_wsf_view.isFullscreen()){if(Oe.id!==we.getAttribute("data-param-id"))return;window.GGBT_wsf_view.setCloseBtnPosition(Ze)}if(we.parentElement&&/fullscreen/.test(we.parentElement.className))return;var Te=et(Oe,Ze);sn()&&we.setAttribute("data-param-scale",Te);for(var Re=null,Ie=0;Ie=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(sn){alert(nb+k+ob)}}else if(j==pb&&(k=i.getAttribute(kb),k))try{e=eval(k)}catch(sn){alert(nb+k+qb)}}}__gwt_getMetaProperty=function(sn){var an=c[sn];return an==null?null:an},r=d,webModule.__errFn=e}function B(){function sn(Ze){var Oe=Ze.lastIndexOf(rb);Oe==-1&&(Oe=Ze.length);var we=Ze.indexOf(sb);we==-1&&(we=Ze.length);var Te=Ze.lastIndexOf(tb,Math.min(we,Oe));return Te>=O?Ze.substring(O,Te+P):W}function an(Ze){if(!Ze.match(/^\w+:\/\//)){var Oe=o.createElement(ub);Oe.src=Ze+vb,Ze=sn(Oe.src)}return Ze}function Be(){var Ze=__gwt_getMetaProperty(wb);return Ze!=null?Ze:W}function He(){for(var Ze=o.getElementsByTagName(_),Oe=O;OeO?Ze[Ze.length-P].href:W}function Ge(){var Ze=o.location;return Ze.href==Ze.protocol+zb+Ze.host+Ze.pathname+Ze.search+Ze.hash}var ke=Be();return ke==W&&(ke=He()),ke==W&&(ke=et()),ke==W&&Ge()&&(ke=sn(o.location.href)),ke=an(ke),ke}function C(sn){return sn.match(/^\//)||sn.match(/^[a-zA-Z]+:\/\//)?sn:webModule.__moduleBase+sn}function D(){var sn=[],an=O,Be=[],He=[];function et(Ze){var Oe=He[Ze](),we=Be[Ze];if(Oe in we)return Oe;var Te=[];for(var Re in we)Te[we[Re]]=Re;throw r&&r(Ze,Te,Oe),null}if(__gwt_isKnownPropertyValue=function(Ze,Oe){return Oe in Be[Ze]},webModule.__getPropMap=function(){var Ze={};for(var Oe in Be)Be.hasOwnProperty(Oe)&&(Ze[Oe]=et(Oe));return Ze},webModule.__computePropValue=et,n.__gwt_activeModules[L].bindings=webModule.__getPropMap,p())return C(Bb);var Ge;try{Ge=Cb;var ke=Ge.indexOf(Db);ke!=-1&&(an=parseInt(Ge.substring(ke+P),$),Ge=Ge.substring(O,ke))}catch(Ze){}return webModule.__softPermutationId=an,C(Ge+Eb)}function F(){n.__gwt_stylesLoaded||(n.__gwt_stylesLoaded={})}A(),webModule.__moduleBase="/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})()},60224:function(sn,an){var Be=(He,et,Ge)=>new Promise((ke,Ze)=>{var Oe=Re=>{try{Te(Ge.next(Re))}catch(Ie){Ze(Ie)}},we=Re=>{try{Te(Ge.throw(Re))}catch(Ie){Ze(Ie)}},Te=Re=>Re.done?ke(Re.value):Promise.resolve(Re.value).then(Oe,we);Te((Ge=Ge.apply(He,et)).next())});(function(He,et){et(an)})(this,function(He){"use strict";var et={value:()=>{}};function Ge(){for(var ht,Dt=0,_t=arguments.length,en={};Dt<_t;++Dt){if(!(ht=arguments[Dt]+"")||ht in en||/[\s.]/.test(ht))throw new Error("illegal type: "+ht);en[ht]=[]}return new ke(en)}function ke(ht){this._=ht}function Ze(ht,Dt){return ht.trim().split(/^|\s+/).map(function(_t){var en="",pn=_t.indexOf(".");if(pn>=0&&(en=_t.slice(pn+1),_t=_t.slice(0,pn)),_t&&!Dt.hasOwnProperty(_t))throw new Error("unknown type: "+_t);return{type:_t,name:en}})}function Oe(ht,Dt){for(var _t,en=0,pn=ht.length;en0)for(var _t,en,pn=new Array(_t),yn=0;yn<_t;++yn)pn[yn]=arguments[yn+2];if(!this._.hasOwnProperty(ht))throw new Error("unknown type: "+ht);for(yn=0,_t=(en=this._[ht]).length;yn<_t;++yn)en[yn].value.apply(Dt,pn)},apply:function(ht,Dt,_t){if(!this._.hasOwnProperty(ht))throw new Error("unknown type: "+ht);for(var en=this._[ht],pn=0,yn=en.length;pn=0&&(Dt=ht.slice(0,_t))!=="xmlns"&&(ht=ht.slice(_t+1)),Re.hasOwnProperty(Dt)?{space:Re[Dt],local:ht}:ht}function be(ht){return function(){var Dt=this.ownerDocument,_t=this.namespaceURI;return _t===Te&&Dt.documentElement.namespaceURI===Te?Dt.createElement(ht):Dt.createElementNS(_t,ht)}}function Pe(ht){return function(){return this.ownerDocument.createElementNS(ht.space,ht.local)}}function je(ht){var Dt=Ie(ht);return(Dt.local?Pe:be)(Dt)}function ye(){}function ie(ht){return ht==null?ye:function(){return this.querySelector(ht)}}function ae(ht){return ht==null?[]:Array.isArray(ht)?ht:Array.from(ht)}function fe(){return[]}function de(ht){return ht==null?fe:function(){return this.querySelectorAll(ht)}}function ve(ht){return function(){return this.matches(ht)}}function xe(ht){return function(Dt){return Dt.matches(ht)}}var he=Array.prototype.find;function pe(){return this.firstElementChild}var Se=Array.prototype.filter;function Ne(){return Array.from(this.children)}function ze(ht){return new Array(ht.length)}function Ke(ht,Dt){this.ownerDocument=ht.ownerDocument,this.namespaceURI=ht.namespaceURI,this._next=null,this._parent=ht,this.__data__=Dt}function Ve(ht){return function(){return ht}}function Je(ht,Dt,_t,en,pn,yn){for(var In,mn=0,Hn=Dt.length,Un=yn.length;mnDt?1:ht>=Dt?0:NaN}function At(ht){return function(){this.removeAttribute(ht)}}function vt(ht){return function(){this.removeAttributeNS(ht.space,ht.local)}}function Tt(ht,Dt){return function(){this.setAttribute(ht,Dt)}}function bt(ht,Dt){return function(){this.setAttributeNS(ht.space,ht.local,Dt)}}function Et(ht,Dt){return function(){var _t=Dt.apply(this,arguments);_t==null?this.removeAttribute(ht):this.setAttribute(ht,_t)}}function lt(ht,Dt){return function(){var _t=Dt.apply(this,arguments);_t==null?this.removeAttributeNS(ht.space,ht.local):this.setAttributeNS(ht.space,ht.local,_t)}}function Nt(ht){return ht.ownerDocument&&ht.ownerDocument.defaultView||ht.document&&ht||ht.defaultView}function Zt(ht){return function(){this.style.removeProperty(ht)}}function Ut(ht,Dt,_t){return function(){this.style.setProperty(ht,Dt,_t)}}function Ft(ht,Dt,_t){return function(){var en=Dt.apply(this,arguments);en==null?this.style.removeProperty(ht):this.style.setProperty(ht,en,_t)}}function Yt(ht,Dt){return ht.style.getPropertyValue(Dt)||Nt(ht).getComputedStyle(ht,null).getPropertyValue(Dt)}function dn(ht){return function(){delete this[ht]}}function Dn(ht,Dt){return function(){this[ht]=Dt}}function Rn(ht,Dt){return function(){var _t=Dt.apply(this,arguments);_t==null?delete this[ht]:this[ht]=_t}}function Zn(ht){return ht.trim().split(/^|\s+/)}function ln(ht){return ht.classList||new Gn(ht)}function Gn(ht){this._node=ht,this._names=Zn(ht.getAttribute("class")||"")}function Wn(ht,Dt){for(var _t=ln(ht),en=-1,pn=Dt.length;++en=0&&(_t=Dt.slice(en+1),Dt=Dt.slice(0,en)),{type:Dt,name:_t}})}function mr(ht){return function(){var Dt=this.__on;if(Dt){for(var _t,en=0,pn=-1,yn=Dt.length;en=0&&(this._names.splice(Dt,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(ht){return this._names.indexOf(ht)>=0}};var yr=[null];function ti(ht,Dt){this._groups=ht,this._parents=Dt}function mi(){return new ti([[document.documentElement]],yr)}function di(ht){return typeof ht=="string"?new ti([[document.querySelector(ht)]],[document.documentElement]):new ti([[ht]],yr)}function Pi(ht,Dt){if(ht=function(yn){let In;for(;In=yn.sourceEvent;)yn=In;return yn}(ht),Dt===void 0&&(Dt=ht.currentTarget),Dt){var _t=Dt.ownerSVGElement||Dt;if(_t.createSVGPoint){var en=_t.createSVGPoint();return en.x=ht.clientX,en.y=ht.clientY,[(en=en.matrixTransform(Dt.getScreenCTM().inverse())).x,en.y]}if(Dt.getBoundingClientRect){var pn=Dt.getBoundingClientRect();return[ht.clientX-pn.left-Dt.clientLeft,ht.clientY-pn.top-Dt.clientTop]}}return[ht.pageX,ht.pageY]}ti.prototype=mi.prototype={constructor:ti,select:function(ht){typeof ht!="function"&&(ht=ie(ht));for(var Dt=this._groups,_t=Dt.length,en=new Array(_t),pn=0;pn<_t;++pn)for(var yn,In,mn=Dt[pn],Hn=mn.length,Un=en[pn]=new Array(Hn),ir=0;ir=xi&&(xi=Li+1);!(Ti=Ur[xi])&&++xi=0;)(en=pn[yn])&&(In&&4^en.compareDocumentPosition(In)&&In.parentNode.insertBefore(en,In),In=en);return this},sort:function(ht){function Dt(Dr,br){return Dr&&br?ht(Dr.__data__,br.__data__):!Dr-!br}ht||(ht=St);for(var _t=this._groups,en=_t.length,pn=new Array(en),yn=0;yn1?this.each((Dt==null?Zt:typeof Dt=="function"?Ft:Ut)(ht,Dt,_t==null?"":_t)):Yt(this.node(),ht)},property:function(ht,Dt){return arguments.length>1?this.each((Dt==null?dn:typeof Dt=="function"?Rn:Dn)(ht,Dt)):this.node()[ht]},classed:function(ht,Dt){var _t=Zn(ht+"");if(arguments.length<2){for(var en=ln(this.node()),pn=-1,yn=_t.length;++pn()=>ht;function ko(ht,{sourceEvent:Dt,subject:_t,target:en,identifier:pn,active:yn,x:In,y:mn,dx:Hn,dy:Un,dispatch:ir}){Object.defineProperties(this,{type:{value:ht,enumerable:!0,configurable:!0},sourceEvent:{value:Dt,enumerable:!0,configurable:!0},subject:{value:_t,enumerable:!0,configurable:!0},target:{value:en,enumerable:!0,configurable:!0},identifier:{value:pn,enumerable:!0,configurable:!0},active:{value:yn,enumerable:!0,configurable:!0},x:{value:In,enumerable:!0,configurable:!0},y:{value:mn,enumerable:!0,configurable:!0},dx:{value:Hn,enumerable:!0,configurable:!0},dy:{value:Un,enumerable:!0,configurable:!0},_:{value:ir}})}function ro(ht){return!ht.ctrlKey&&!ht.button}function Rt(){return this.parentNode}function Kr(ht,Dt){return Dt==null?{x:ht.x,y:ht.y}:Dt}function Bi(){return navigator.maxTouchPoints||"ontouchstart"in this}function _r(ht,Dt,_t){ht.prototype=Dt.prototype=_t,_t.constructor=ht}function pi(ht,Dt){var _t=Object.create(ht.prototype);for(var en in Dt)_t[en]=Dt[en];return _t}function ii(){}ko.prototype.on=function(){var ht=this._.on.apply(this._,arguments);return ht===this._?this:ht};var zi=.7,Jr=1/zi,Kt="\\s*([+-]?\\d+)\\s*",Le="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",We="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",De=/^#([0-9a-f]{3,8})$/,qe=new RegExp(`^rgb\\(${Kt},${Kt},${Kt}\\)$`),dt=new RegExp(`^rgb\\(${We},${We},${We}\\)$`),Mt=new RegExp(`^rgba\\(${Kt},${Kt},${Kt},${Le}\\)$`),wt=new RegExp(`^rgba\\(${We},${We},${We},${Le}\\)$`),rn=new RegExp(`^hsl\\(${Le},${We},${We}\\)$`),un=new RegExp(`^hsla\\(${Le},${We},${We},${Le}\\)$`),zn={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 Fn(){return this.rgb().formatHex()}function tn(){return this.rgb().formatRgb()}function Vn(ht){var Dt,_t;return ht=(ht+"").trim().toLowerCase(),(Dt=De.exec(ht))?(_t=Dt[1].length,Dt=parseInt(Dt[1],16),_t===6?tr(Dt):_t===3?new Nn(Dt>>8&15|Dt>>4&240,Dt>>4&15|240&Dt,(15&Dt)<<4|15&Dt,1):_t===8?dr(Dt>>24&255,Dt>>16&255,Dt>>8&255,(255&Dt)/255):_t===4?dr(Dt>>12&15|Dt>>8&240,Dt>>8&15|Dt>>4&240,Dt>>4&15|240&Dt,((15&Dt)<<4|15&Dt)/255):null):(Dt=qe.exec(ht))?new Nn(Dt[1],Dt[2],Dt[3],1):(Dt=dt.exec(ht))?new Nn(255*Dt[1]/100,255*Dt[2]/100,255*Dt[3]/100,1):(Dt=Mt.exec(ht))?dr(Dt[1],Dt[2],Dt[3],Dt[4]):(Dt=wt.exec(ht))?dr(255*Dt[1]/100,255*Dt[2]/100,255*Dt[3]/100,Dt[4]):(Dt=rn.exec(ht))?Br(Dt[1],Dt[2]/100,Dt[3]/100,1):(Dt=un.exec(ht))?Br(Dt[1],Dt[2]/100,Dt[3]/100,Dt[4]):zn.hasOwnProperty(ht)?tr(zn[ht]):ht==="transparent"?new Nn(NaN,NaN,NaN,0):null}function tr(ht){return new Nn(ht>>16&255,ht>>8&255,255&ht,1)}function dr(ht,Dt,_t,en){return en<=0&&(ht=Dt=_t=NaN),new Nn(ht,Dt,_t,en)}function Bn(ht){return ht instanceof ii||(ht=Vn(ht)),ht?new Nn((ht=ht.rgb()).r,ht.g,ht.b,ht.opacity):new Nn}function An(ht,Dt,_t,en){return arguments.length===1?Bn(ht):new Nn(ht,Dt,_t,en==null?1:en)}function Nn(ht,Dt,_t,en){this.r=+ht,this.g=+Dt,this.b=+_t,this.opacity=+en}function $n(){return`#${ur(this.r)}${ur(this.g)}${ur(this.b)}`}function lr(){const ht=gr(this.opacity);return`${ht===1?"rgb(":"rgba("}${Tr(this.r)}, ${Tr(this.g)}, ${Tr(this.b)}${ht===1?")":`, ${ht})`}`}function gr(ht){return isNaN(ht)?1:Math.max(0,Math.min(1,ht))}function Tr(ht){return Math.max(0,Math.min(255,Math.round(ht)||0))}function ur(ht){return((ht=Tr(ht))<16?"0":"")+ht.toString(16)}function Br(ht,Dt,_t,en){return en<=0?ht=Dt=_t=NaN:_t<=0||_t>=1?ht=Dt=NaN:Dt<=0&&(ht=NaN),new fr(ht,Dt,_t,en)}function jr(ht){if(ht instanceof fr)return new fr(ht.h,ht.s,ht.l,ht.opacity);if(ht instanceof ii||(ht=Vn(ht)),!ht)return new fr;if(ht instanceof fr)return ht;var Dt=(ht=ht.rgb()).r/255,_t=ht.g/255,en=ht.b/255,pn=Math.min(Dt,_t,en),yn=Math.max(Dt,_t,en),In=NaN,mn=yn-pn,Hn=(yn+pn)/2;return mn?(In=Dt===yn?(_t-en)/mn+6*(_t0&&Hn<1?0:In,new fr(In,mn,Hn,ht.opacity)}function fr(ht,Dt,_t,en){this.h=+ht,this.s=+Dt,this.l=+_t,this.opacity=+en}function qn(ht){return(ht=(ht||0)%360)<0?ht+360:ht}function fi(ht){return Math.max(0,Math.min(1,ht||0))}function ui(ht,Dt,_t){return 255*(ht<60?Dt+(_t-Dt)*ht/60:ht<180?_t:ht<240?Dt+(_t-Dt)*(240-ht)/60:Dt)}_r(ii,Vn,{copy(ht){return Object.assign(new this.constructor,this,ht)},displayable(){return this.rgb().displayable()},hex:Fn,formatHex:Fn,formatHex8:function(){return this.rgb().formatHex8()},formatHsl:function(){return jr(this).formatHsl()},formatRgb:tn,toString:tn}),_r(Nn,An,pi(ii,{brighter(ht){return ht=ht==null?Jr:Math.pow(Jr,ht),new Nn(this.r*ht,this.g*ht,this.b*ht,this.opacity)},darker(ht){return ht=ht==null?zi:Math.pow(zi,ht),new Nn(this.r*ht,this.g*ht,this.b*ht,this.opacity)},rgb(){return this},clamp(){return new Nn(Tr(this.r),Tr(this.g),Tr(this.b),gr(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:$n,formatHex:$n,formatHex8:function(){return`#${ur(this.r)}${ur(this.g)}${ur(this.b)}${ur(255*(isNaN(this.opacity)?1:this.opacity))}`},formatRgb:lr,toString:lr})),_r(fr,function(ht,Dt,_t,en){return arguments.length===1?jr(ht):new fr(ht,Dt,_t,en==null?1:en)},pi(ii,{brighter(ht){return ht=ht==null?Jr:Math.pow(Jr,ht),new fr(this.h,this.s,this.l*ht,this.opacity)},darker(ht){return ht=ht==null?zi:Math.pow(zi,ht),new fr(this.h,this.s,this.l*ht,this.opacity)},rgb(){var ht=this.h%360+360*(this.h<0),Dt=isNaN(ht)||isNaN(this.s)?0:this.s,_t=this.l,en=_t+(_t<.5?_t:1-_t)*Dt,pn=2*_t-en;return new Nn(ui(ht>=240?ht-240:ht+120,pn,en),ui(ht,pn,en),ui(ht<120?ht+240:ht-120,pn,en),this.opacity)},clamp(){return new fr(qn(this.h),fi(this.s),fi(this.l),gr(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 ht=gr(this.opacity);return`${ht===1?"hsl(":"hsla("}${qn(this.h)}, ${100*fi(this.s)}%, ${100*fi(this.l)}%${ht===1?")":`, ${ht})`}`}}));var $i=ht=>()=>ht;function wr(ht){return(ht=+ht)==1?oi:function(Dt,_t){return _t-Dt?function(en,pn,yn){return en=Math.pow(en,yn),pn=Math.pow(pn,yn)-en,yn=1/yn,function(In){return Math.pow(en+In*pn,yn)}}(Dt,_t,ht):$i(isNaN(Dt)?_t:Dt)}}function oi(ht,Dt){var _t=Dt-ht;return _t?function(en,pn){return function(yn){return en+yn*pn}}(ht,_t):$i(isNaN(ht)?Dt:ht)}var ji=function ht(Dt){var _t=wr(Dt);function en(pn,yn){var In=_t((pn=An(pn)).r,(yn=An(yn)).r),mn=_t(pn.g,yn.g),Hn=_t(pn.b,yn.b),Un=oi(pn.opacity,yn.opacity);return function(ir){return pn.r=In(ir),pn.g=mn(ir),pn.b=Hn(ir),pn.opacity=Un(ir),pn+""}}return en.gamma=ht,en}(1);function Yi(ht,Dt){Dt||(Dt=[]);var _t,en=ht?Math.min(Dt.length,ht.length):0,pn=Dt.slice();return function(yn){for(_t=0;_tyn&&(pn=Dt.slice(yn,pn),mn[In]?mn[In]+=pn:mn[++In]=pn),(_t=_t[0])===(en=en[0])?mn[In]?mn[In]+=en:mn[++In]=en:(mn[++In]=null,Hn.push({i:In,x:bo(_t,en)})),yn=Fo.lastIndex;return yn180?ir+=360:ir-Un>180&&(Un+=360),br.push({i:Dr.push(pn(Dr)+"rotate(",null,en)-2,x:bo(Un,ir)})):ir&&Dr.push(pn(Dr)+"rotate("+ir+en)}(yn.rotate,In.rotate,mn,Hn),function(Un,ir,Dr,br){Un!==ir?br.push({i:Dr.push(pn(Dr)+"skewX(",null,en)-2,x:bo(Un,ir)}):ir&&Dr.push(pn(Dr)+"skewX("+ir+en)}(yn.skewX,In.skewX,mn,Hn),function(Un,ir,Dr,br,Qr,Hr){if(Un!==Dr||ir!==br){var Fr=Qr.push(pn(Qr)+"scale(",null,",",null,")");Hr.push({i:Fr-4,x:bo(Un,Dr)},{i:Fr-2,x:bo(ir,br)})}else Dr===1&&br===1||Qr.push(pn(Qr)+"scale("+Dr+","+br+")")}(yn.scaleX,yn.scaleY,In.scaleX,In.scaleY,mn,Hn),yn=In=null,function(Un){for(var ir,Dr=-1,br=Hn.length;++Dr=0&&Dt._call.call(void 0,ht),Dt=Dt._next;--fn})()}finally{fn=0,function(){for(var ht,Dt,_t=Ca,en=1/0;_t;)_t._call?(en>_t._time&&(en=_t._time),ht=_t,_t=_t._next):(Dt=_t._next,_t._next=null,_t=ht?ht._next=Dt:Ca=Dt);Za=ht,Ri(en)}(),Bs=0}}function na(){var ht=ol.now(),Dt=ht-_a;Dt>1e3&&(Vs-=Dt,_a=ht)}function Ri(ht){fn||(Yo&&(Yo=clearTimeout(Yo)),ht-Bs>24?(ht<1/0&&(Yo=setTimeout(la,ht-ol.now()-Vs)),Ms&&(Ms=clearInterval(Ms))):(Ms||(_a=ol.now(),Ms=setInterval(na,1e3)),fn=1,ka(la)))}function qo(ht,Dt,_t){var en=new xs;return Dt=Dt==null?0:+Dt,en.restart(pn=>{en.stop(),ht(pn+Dt)},Dt,_t),en}xs.prototype=Ls.prototype={constructor:xs,restart:function(ht,Dt,_t){if(typeof ht!="function")throw new TypeError("callback is not a function");_t=(_t==null?Aa():+_t)+(Dt==null?0:+Dt),this._next||Za===this||(Za?Za._next=this:Ca=this,Za=this),this._call=ht,this._time=_t,Ri()},stop:function(){this._call&&(this._call=null,this._time=1/0,Ri())}};var Ts=Ge("start","end","cancel","interrupt"),pl=[];function Rs(ht,Dt,_t,en,pn,yn){var In=ht.__transition;if(In){if(_t in In)return}else ht.__transition={};(function(mn,Hn,Un){var ir,Dr=mn.__transition;function br(Ur){Un.state=1,Un.timer.restart(Qr,Un.delay,Un.time),Un.delay<=Ur&&Qr(Ur-Un.delay)}function Qr(Ur){var zr,Vr,Ti,Li;if(Un.state!==1)return Fr();for(zr in Dr)if((Li=Dr[zr]).name===Un.name){if(Li.state===3)return qo(Qr);Li.state===4?(Li.state=6,Li.timer.stop(),Li.on.call("interrupt",mn,mn.__data__,Li.index,Li.group),delete Dr[zr]):+zr0)throw new Error("too late; already scheduled");return _t}function Ns(ht,Dt){var _t=Ks(ht,Dt);if(_t.state>3)throw new Error("too late; already running");return _t}function Ks(ht,Dt){var _t=ht.__transition;if(!_t||!(_t=_t[Dt]))throw new Error("transition not found");return _t}function Yl(ht,Dt){var _t,en,pn,yn=ht.__transition,In=!0;if(yn){for(pn in Dt=Dt==null?null:Dt+"",yn)(_t=yn[pn]).name===Dt?(en=_t.state>2&&_t.state<5,_t.state=6,_t.timer.stop(),_t.on.call(en?"interrupt":"cancel",ht,ht.__data__,_t.index,_t.group),delete yn[pn]):In=!1;In&&delete ht.__transition}}function Gl(ht,Dt){var _t,en;return function(){var pn=Ns(this,ht),yn=pn.tween;if(yn!==_t){for(var In=0,mn=(en=_t=yn).length;In=0&&(mn=mn.slice(0,Hn)),!mn||mn==="start"})}(Dt)?As:Ns;return function(){var In=yn(this,ht),mn=In.on;mn!==en&&(pn=(en=mn).copy()).on(Dt,_t),In.on=pn}}var Dh=mi.prototype.constructor;function Uh(ht){return function(){this.style.removeProperty(ht)}}function So(ht,Dt,_t){return function(en){this.style.setProperty(ht,Dt.call(this,en),_t)}}function su(ht,Dt,_t){var en,pn;function yn(){var In=Dt.apply(this,arguments);return In!==pn&&(en=(pn=In)&&So(ht,In,_t)),en}return yn._value=Dt,yn}function Vu(ht){return function(Dt){this.textContent=ht.call(this,Dt)}}function Ih(ht){var Dt,_t;function en(){var pn=ht.apply(this,arguments);return pn!==_t&&(Dt=(_t=pn)&&Vu(pn)),Dt}return en._value=ht,en}var td=0;function vc(ht,Dt,_t,en){this._groups=ht,this._parents=Dt,this._name=_t,this._id=en}function cs(){return++td}var qc=mi.prototype;vc.prototype={constructor:vc,select:function(ht){var Dt=this._name,_t=this._id;typeof ht!="function"&&(ht=ie(ht));for(var en=this._groups,pn=en.length,yn=new Array(pn),In=0;In=(yn=(Fr+zr)/2))?Fr=yn:zr=yn,(ir=_t>=(In=(Ur+Vr)/2))?Ur=In:Vr=In,pn=Qr,!(Qr=Qr[Dr=ir<<1|Un]))return pn[Dr]=Hr,ht;if(mn=+ht._x.call(null,Qr.data),Hn=+ht._y.call(null,Qr.data),Dt===mn&&_t===Hn)return Hr.next=Qr,pn?pn[Dr]=Hr:ht._root=Hr,ht;do pn=pn?pn[Dr]=new Array(4):ht._root=new Array(4),(Un=Dt>=(yn=(Fr+zr)/2))?Fr=yn:zr=yn,(ir=_t>=(In=(Ur+Vr)/2))?Ur=In:Vr=In;while((Dr=ir<<1|Un)==(br=(Hn>=In)<<1|mn>=yn));return pn[br]=Qr,pn[Dr]=Hr,ht}function ic(ht,Dt,_t,en,pn){this.node=ht,this.x0=Dt,this.y0=_t,this.x1=en,this.y1=pn}function rg(ht){return ht[0]}function jf(ht){return ht[1]}function Ll(ht,Dt,_t){var en=new nh(Dt==null?rg:Dt,_t==null?jf:_t,NaN,NaN,NaN,NaN);return ht==null?en:en.addAll(ht)}function nh(ht,Dt,_t,en,pn,yn){this._x=ht,this._y=Dt,this._x0=_t,this._y0=en,this._x1=pn,this._y1=yn,this._root=void 0}function Fc(ht){for(var Dt={data:ht.data},_t=Dt;ht=ht.next;)_t=_t.next={data:ht.data};return Dt}th.prototype=yf.prototype={constructor:th,moveTo:function(ht,Dt){this._+="M"+(this._x0=this._x1=+ht)+","+(this._y0=this._y1=+Dt)},closePath:function(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},lineTo:function(ht,Dt){this._+="L"+(this._x1=+ht)+","+(this._y1=+Dt)},quadraticCurveTo:function(ht,Dt,_t,en){this._+="Q"+ +ht+","+ +Dt+","+(this._x1=+_t)+","+(this._y1=+en)},bezierCurveTo:function(ht,Dt,_t,en,pn,yn){this._+="C"+ +ht+","+ +Dt+","+ +_t+","+ +en+","+(this._x1=+pn)+","+(this._y1=+yn)},arcTo:function(ht,Dt,_t,en,pn){ht=+ht,Dt=+Dt,_t=+_t,en=+en,pn=+pn;var yn=this._x1,In=this._y1,mn=_t-ht,Hn=en-Dt,Un=yn-ht,ir=In-Dt,Dr=Un*Un+ir*ir;if(pn<0)throw new Error("negative radius: "+pn);if(this._x1===null)this._+="M"+(this._x1=ht)+","+(this._y1=Dt);else if(Dr>kc)if(Math.abs(ir*mn-Hn*Un)>kc&&pn){var br=_t-yn,Qr=en-In,Hr=mn*mn+Hn*Hn,Fr=br*br+Qr*Qr,Ur=Math.sqrt(Hr),zr=Math.sqrt(Dr),Vr=pn*Math.tan((mc-Math.acos((Hr+Dr-Fr)/(2*Ur*zr)))/2),Ti=Vr/zr,Li=Vr/Ur;Math.abs(Ti-1)>kc&&(this._+="L"+(ht+Ti*Un)+","+(Dt+Ti*ir)),this._+="A"+pn+","+pn+",0,0,"+ +(ir*br>Un*Qr)+","+(this._x1=ht+Li*mn)+","+(this._y1=Dt+Li*Hn)}else this._+="L"+(this._x1=ht)+","+(this._y1=Dt)},arc:function(ht,Dt,_t,en,pn,yn){ht=+ht,Dt=+Dt,yn=!!yn;var In=(_t=+_t)*Math.cos(en),mn=_t*Math.sin(en),Hn=ht+In,Un=Dt+mn,ir=1^yn,Dr=yn?en-pn:pn-en;if(_t<0)throw new Error("negative radius: "+_t);this._x1===null?this._+="M"+Hn+","+Un:(Math.abs(this._x1-Hn)>kc||Math.abs(this._y1-Un)>kc)&&(this._+="L"+Hn+","+Un),_t&&(Dr<0&&(Dr=Dr%vh+vh),Dr>Hc?this._+="A"+_t+","+_t+",0,1,"+ir+","+(ht-In)+","+(Dt-mn)+"A"+_t+","+_t+",0,1,"+ir+","+(this._x1=Hn)+","+(this._y1=Un):Dr>kc&&(this._+="A"+_t+","+_t+",0,"+ +(Dr>=mc)+","+ir+","+(this._x1=ht+_t*Math.cos(pn))+","+(this._y1=Dt+_t*Math.sin(pn))))},rect:function(ht,Dt,_t,en){this._+="M"+(this._x0=this._x1=+ht)+","+(this._y0=this._y1=+Dt)+"h"+ +_t+"v"+ +en+"h"+-_t+"Z"},toString:function(){return this._}};var Oc=Ll.prototype=nh.prototype;function yc(ht){return function(){return ht}}function Nc(ht){return 1e-6*(ht()-.5)}function Ds(ht){return ht.x+ht.vx}function Al(ht){return ht.y+ht.vy}function _c(ht){return ht.index}function Du(ht,Dt){var _t=ht.get(Dt);if(!_t)throw new Error("node not found: "+Dt);return _t}function Fu(ht){var Dt,_t,en,pn,yn,In,mn=_c,Hn=function(Fr){return 1/Math.min(pn[Fr.source.index],pn[Fr.target.index])},Un=yc(30),ir=1;function Dr(Fr){for(var Ur=0,zr=ht.length;Ur[mn(Li,xi,en),Li]));for(Fr=0,pn=new Array(zr);Frir&&(ir=en),pnDr&&(Dr=pn));if(Hn>ir||Un>Dr)return this;for(this.cover(Hn,Un).cover(ir,Dr),_t=0;_tht||ht>=pn||en>Dt||Dt>=yn;)switch(mn=(Dtbr||(yn=Hn.y0)>Qr||(In=Hn.x1)=zr)<<1|ht>=Ur)&&(Hn=Hr[Hr.length-1],Hr[Hr.length-1]=Hr[Hr.length-1-Un],Hr[Hr.length-1-Un]=Hn)}else{var Vr=ht-+this._x.call(null,Fr.data),Ti=Dt-+this._y.call(null,Fr.data),Li=Vr*Vr+Ti*Ti;if(Li<_t){var xi=Math.sqrt(_t=Li);ir=ht-xi,Dr=Dt-xi,br=ht+xi,Qr=Dt+xi,en=Fr.data}}return en},Oc.remove=function(ht){if(isNaN(yn=+this._x.call(null,ht))||isNaN(In=+this._y.call(null,ht)))return this;var Dt,_t,en,pn,yn,In,mn,Hn,Un,ir,Dr,br,Qr=this._root,Hr=this._x0,Fr=this._y0,Ur=this._x1,zr=this._y1;if(!Qr)return this;if(Qr.length)for(;;){if((Un=yn>=(mn=(Hr+Ur)/2))?Hr=mn:Ur=mn,(ir=In>=(Hn=(Fr+zr)/2))?Fr=Hn:zr=Hn,Dt=Qr,!(Qr=Qr[Dr=ir<<1|Un]))return this;if(!Qr.length)break;(Dt[Dr+1&3]||Dt[Dr+2&3]||Dt[Dr+3&3])&&(_t=Dt,br=Dr)}for(;Qr.data!==ht;)if(en=Qr,!(Qr=Qr.next))return this;return(pn=Qr.next)&&delete Qr.next,en?(pn?en.next=pn:delete en.next,this):Dt?(pn?Dt[Dr]=pn:delete Dt[Dr],(Qr=Dt[0]||Dt[1]||Dt[2]||Dt[3])&&Qr===(Dt[3]||Dt[2]||Dt[1]||Dt[0])&&!Qr.length&&(_t?_t[br]=Qr:this._root=Qr),this):(this._root=pn,this)},Oc.removeAll=function(ht){for(var Dt=0,_t=ht.length;Dt<_t;++Dt)this.remove(ht[Dt]);return this},Oc.root=function(){return this._root},Oc.size=function(){var ht=0;return this.visit(function(Dt){if(!Dt.length)do++ht;while(Dt=Dt.next)}),ht},Oc.visit=function(ht){var Dt,_t,en,pn,yn,In,mn=[],Hn=this._root;for(Hn&&mn.push(new ic(Hn,this._x0,this._y0,this._x1,this._y1));Dt=mn.pop();)if(!ht(Hn=Dt.node,en=Dt.x0,pn=Dt.y0,yn=Dt.x1,In=Dt.y1)&&Hn.length){var Un=(en+yn)/2,ir=(pn+In)/2;(_t=Hn[3])&&mn.push(new ic(_t,Un,ir,yn,In)),(_t=Hn[2])&&mn.push(new ic(_t,en,ir,Un,In)),(_t=Hn[1])&&mn.push(new ic(_t,Un,pn,yn,ir)),(_t=Hn[0])&&mn.push(new ic(_t,en,pn,Un,ir))}return this},Oc.visitAfter=function(ht){var Dt,_t=[],en=[];for(this._root&&_t.push(new ic(this._root,this._x0,this._y0,this._x1,this._y1));Dt=_t.pop();){var pn=Dt.node;if(pn.length){var yn,In=Dt.x0,mn=Dt.y0,Hn=Dt.x1,Un=Dt.y1,ir=(In+Hn)/2,Dr=(mn+Un)/2;(yn=pn[0])&&_t.push(new ic(yn,In,mn,ir,Dr)),(yn=pn[1])&&_t.push(new ic(yn,ir,mn,Hn,Dr)),(yn=pn[2])&&_t.push(new ic(yn,In,Dr,ir,Un)),(yn=pn[3])&&_t.push(new ic(yn,ir,Dr,Hn,Un))}en.push(Dt)}for(;Dt=en.pop();)ht(Dt.node,Dt.x0,Dt.y0,Dt.x1,Dt.y1);return this},Oc.x=function(ht){return arguments.length?(this._x=ht,this):this._x},Oc.y=function(ht){return arguments.length?(this._y=ht,this):this._y};const du=4294967296;function Ws(ht){return ht.x}function Ku(ht){return ht.y}var xu=Math.PI*(3-Math.sqrt(5));function Bd(ht){var Dt,_t=1,en=.001,pn=1-Math.pow(en,1/300),yn=0,In=.6,mn=new Map,Hn=Ls(Dr),Un=Ge("tick","end"),ir=function(){let Fr=1;return()=>(Fr=(1664525*Fr+1013904223)%du)/du}();function Dr(){br(),Un.call("tick",Dt),_t1?(Ur==null?mn.delete(Fr):mn.set(Fr,Hr(Ur)),Dt):mn.get(Fr)},find:function(Fr,Ur,zr){var Vr,Ti,Li,xi,qr,Bo=0,ta=ht.length;for(zr==null?zr=1/0:zr*=zr,Bo=0;Bo1?(Un.on(Fr,Ur),Dt):Un.on(Fr)}}}function Iu(ht){return function(){return ht}}const Eu=Math.abs,zc=Math.atan2,md=Math.cos,ig=Math.max,Ta=Math.min,mh=Math.sin,cr=Math.sqrt,Ci=1e-12,og=Math.PI,ag=og/2,oo=2*og;function Xd(ht){return ht>1?0:ht<-1?og:Math.acos(ht)}function Qd(ht){return ht>=1?ag:ht<=-1?-ag:Math.asin(ht)}function Op(ht){return ht.innerRadius}function Ug(ht){return ht.outerRadius}function _u(ht){return ht.startAngle}function gs(ht){return ht.endAngle}function hc(ht){return ht&&ht.padAngle}function zu(ht,Dt,_t,en,pn,yn,In,mn){var Hn=_t-ht,Un=en-Dt,ir=In-pn,Dr=mn-yn,br=Dr*Hn-ir*Un;if(!(br*brKi*Ki+ho*ho&&(ta=ki,ga=Fi),{cx:ta,cy:ga,x01:-ir,y01:-Dr,x11:ta*(pn/xi-1),y11:ga*(pn/xi-1)}}function Us(){var ht=Op,Dt=Ug,_t=Iu(0),en=null,pn=_u,yn=gs,In=hc,mn=null;function Hn(){var Un,ir,Dr=+ht.apply(this,arguments),br=+Dt.apply(this,arguments),Qr=pn.apply(this,arguments)-ag,Hr=yn.apply(this,arguments)-ag,Fr=Eu(Hr-Qr),Ur=Hr>Qr;if(mn||(mn=Un=yf()),brCi)if(Fr>oo-Ci)mn.moveTo(br*md(Qr),br*mh(Qr)),mn.arc(0,0,br,Qr,Hr,!Ur),Dr>Ci&&(mn.moveTo(Dr*md(Hr),Dr*mh(Hr)),mn.arc(0,0,Dr,Hr,Qr,Ur));else{var zr,Vr,Ti=Qr,Li=Hr,xi=Qr,qr=Hr,Bo=Fr,ta=Fr,ga=In.apply(this,arguments)/2,ki=ga>Ci&&(en?+en.apply(this,arguments):cr(Dr*Dr+br*br)),Fi=Ta(Eu(br-Dr)/2,+_t.apply(this,arguments)),Do=Fi,Wr=Fi;if(ki>Ci){var Ki=Qd(ki/Dr*mh(ga)),ho=Qd(ki/br*mh(ga));(Bo-=2*Ki)>Ci?(xi+=Ki*=Ur?1:-1,qr-=Ki):(Bo=0,xi=qr=(Qr+Hr)/2),(ta-=2*ho)>Ci?(Ti+=ho*=Ur?1:-1,Li-=ho):(ta=0,Ti=Li=(Qr+Hr)/2)}var Qi=br*md(Ti),Io=br*mh(Ti),Eo=Dr*md(qr),Vo=Dr*mh(qr);if(Fi>Ci){var Ua,$a=br*md(Li),Ao=br*mh(Li),ba=Dr*md(xi),bs=Dr*mh(xi);if(FrCi?Wr>Ci?(zr=lu(ba,bs,Qi,Io,br,Wr,Ur),Vr=lu($a,Ao,Eo,Vo,br,Wr,Ur),mn.moveTo(zr.cx+zr.x01,zr.cy+zr.y01),WrCi&&Bo>Ci?Do>Ci?(zr=lu(Eo,Vo,$a,Ao,Dr,-Do,Ur),Vr=lu(Qi,Io,ba,bs,Dr,-Do,Ur),mn.lineTo(zr.cx+zr.x01,zr.cy+zr.y01),Doht?1:Dt>=ht?0:NaN}function En(ht){return ht}function Ln(){var ht=En,Dt=cn,_t=null,en=Iu(0),pn=Iu(oo),yn=Iu(0);function In(mn){var Hn,Un,ir,Dr,br,Qr=(mn=oc(mn)).length,Hr=0,Fr=new Array(Qr),Ur=new Array(Qr),zr=+en.apply(this,arguments),Vr=Math.min(oo,Math.max(-oo,pn.apply(this,arguments)-zr)),Ti=Math.min(Math.abs(Vr)/Qr,yn.apply(this,arguments)),Li=Ti*(Vr<0?-1:1);for(Hn=0;Hn0&&(Hr+=br);for(Dt!=null?Fr.sort(function(xi,qr){return Dt(Ur[xi],Ur[qr])}):_t!=null&&Fr.sort(function(xi,qr){return _t(mn[xi],mn[qr])}),Hn=0,ir=Hr?(Vr-Qr*Li)/Hr:0;Hn0?br*ir:0)+Li,Ur[Un]={data:mn[Un],index:Hn,value:br,startAngle:zr,endAngle:Dr,padAngle:Ti};return Ur}return In.value=function(mn){return arguments.length?(ht=typeof mn=="function"?mn:Iu(+mn),In):ht},In.sortValues=function(mn){return arguments.length?(Dt=mn,_t=null,In):Dt},In.sort=function(mn){return arguments.length?(_t=mn,Dt=null,In):_t},In.startAngle=function(mn){return arguments.length?(en=typeof mn=="function"?mn:Iu(+mn),In):en},In.endAngle=function(mn){return arguments.length?(pn=typeof mn=="function"?mn:Iu(+mn),In):pn},In.padAngle=function(mn){return arguments.length?(yn=typeof mn=="function"?mn:Iu(+mn),In):yn},In}var Er=ht=>()=>ht;function xr(ht,{sourceEvent:Dt,target:_t,transform:en,dispatch:pn}){Object.defineProperties(this,{type:{value:ht,enumerable:!0,configurable:!0},sourceEvent:{value:Dt,enumerable:!0,configurable:!0},target:{value:_t,enumerable:!0,configurable:!0},transform:{value:en,enumerable:!0,configurable:!0},_:{value:pn}})}function Yr(ht,Dt,_t){this.k=ht,this.x=Dt,this.y=_t}Yr.prototype={constructor:Yr,scale:function(ht){return ht===1?this:new Yr(this.k*ht,this.x,this.y)},translate:function(ht,Dt){return ht===0&Dt===0?this:new Yr(this.k,this.x+this.k*ht,this.y+this.k*Dt)},apply:function(ht){return[ht[0]*this.k+this.x,ht[1]*this.k+this.y]},applyX:function(ht){return ht*this.k+this.x},applyY:function(ht){return ht*this.k+this.y},invert:function(ht){return[(ht[0]-this.x)/this.k,(ht[1]-this.y)/this.k]},invertX:function(ht){return(ht-this.x)/this.k},invertY:function(ht){return(ht-this.y)/this.k},rescaleX:function(ht){return ht.copy().domain(ht.range().map(this.invertX,this).map(ht.invert,ht))},rescaleY:function(ht){return ht.copy().domain(ht.range().map(this.invertY,this).map(ht.invert,ht))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var $r=new Yr(1,0,0);function Ei(ht){ht.stopImmediatePropagation()}function bi(ht){ht.preventDefault(),ht.stopImmediatePropagation()}function Zi(ht){return!(ht.ctrlKey&&ht.type!=="wheel"||ht.button)}function Oo(){var ht=this;return ht instanceof SVGElement?(ht=ht.ownerSVGElement||ht).hasAttribute("viewBox")?[[(ht=ht.viewBox.baseVal).x,ht.y],[ht.x+ht.width,ht.y+ht.height]]:[[0,0],[ht.width.baseVal.value,ht.height.baseVal.value]]:[[0,0],[ht.clientWidth,ht.clientHeight]]}function Hi(){return this.__zoom||$r}function mo(ht){return-ht.deltaY*(ht.deltaMode===1?.05:ht.deltaMode?1:.002)*(ht.ctrlKey?10:1)}function Wi(){return navigator.maxTouchPoints||"ontouchstart"in this}function Qo(ht,Dt,_t){var en=ht.invertX(Dt[0][0])-_t[0][0],pn=ht.invertX(Dt[1][0])-_t[1][0],yn=ht.invertY(Dt[0][1])-_t[0][1],In=ht.invertY(Dt[1][1])-_t[1][1];return ht.translate(pn>en?(en+pn)/2:Math.min(0,en)||Math.max(0,pn),In>yn?(yn+In)/2:Math.min(0,yn)||Math.max(0,In))}function Ai(){var ht,Dt,_t,en=Zi,pn=Oo,yn=Qo,In=mo,mn=Wi,Hn=[0,1/0],Un=[[-1/0,-1/0],[1/0,1/0]],ir=250,Dr=lo,br=Ge("start","zoom","end"),Qr=500,Hr=0,Fr=10;function Ur(Wr){Wr.property("__zoom",Hi).on("wheel.zoom",Bo,{passive:!1}).on("mousedown.zoom",ta).on("dblclick.zoom",ga).filter(mn).on("touchstart.zoom",ki).on("touchmove.zoom",Fi).on("touchend.zoom touchcancel.zoom",Do).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function zr(Wr,Ki){return(Ki=Math.max(Hn[0],Math.min(Hn[1],Ki)))===Wr.k?Wr:new Yr(Ki,Wr.x,Wr.y)}function Vr(Wr,Ki,ho){var Qi=Ki[0]-ho[0]*Wr.k,Io=Ki[1]-ho[1]*Wr.k;return Qi===Wr.x&&Io===Wr.y?Wr:new Yr(Wr.k,Qi,Io)}function Ti(Wr){return[(+Wr[0][0]+ +Wr[1][0])/2,(+Wr[0][1]+ +Wr[1][1])/2]}function Li(Wr,Ki,ho,Qi){Wr.on("start.zoom",function(){xi(this,arguments).event(Qi).start()}).on("interrupt.zoom end.zoom",function(){xi(this,arguments).event(Qi).end()}).tween("zoom",function(){var Io=this,Eo=arguments,Vo=xi(Io,Eo).event(Qi),Ua=pn.apply(Io,Eo),$a=ho==null?Ti(Ua):typeof ho=="function"?ho.apply(Io,Eo):ho,Ao=Math.max(Ua[1][0]-Ua[0][0],Ua[1][1]-Ua[0][1]),ba=Io.__zoom,bs=typeof Ki=="function"?Ki.apply(Io,Eo):Ki,Cl=Dr(ba.invert($a).concat(Ao/ba.k),bs.invert($a).concat(Ao/bs.k));return function(Gs){if(Gs===1)Gs=bs;else{var Fs=Cl(Gs),_l=Ao/Fs[2];Gs=new Yr(_l,$a[0]-Fs[0]*_l,$a[1]-Fs[1]*_l)}Vo.zoom(null,Gs)}})}function xi(Wr,Ki,ho){return!ho&&Wr.__zooming||new qr(Wr,Ki)}function qr(Wr,Ki){this.that=Wr,this.args=Ki,this.active=0,this.sourceEvent=null,this.extent=pn.apply(Wr,Ki),this.taps=0}function Bo(Wr,...Ki){if(en.apply(this,arguments)){var ho=xi(this,Ki).event(Wr),Qi=this.__zoom,Io=Math.max(Hn[0],Math.min(Hn[1],Qi.k*Math.pow(2,In.apply(this,arguments)))),Eo=Pi(Wr);if(ho.wheel)ho.mouse[0][0]===Eo[0]&&ho.mouse[0][1]===Eo[1]||(ho.mouse[1]=Qi.invert(ho.mouse[0]=Eo)),clearTimeout(ho.wheel);else{if(Qi.k===Io)return;ho.mouse=[Eo,Qi.invert(Eo)],Yl(this),ho.start()}bi(Wr),ho.wheel=setTimeout(Vo,150),ho.zoom("mouse",yn(Vr(zr(Qi,Io),ho.mouse[0],ho.mouse[1]),ho.extent,Un))}function Vo(){ho.wheel=null,ho.end()}}function ta(Wr,...Ki){if(!_t&&en.apply(this,arguments)){var ho=Wr.currentTarget,Qi=xi(this,Ki,!0).event(Wr),Io=di(Wr.view).on("mousemove.zoom",$a,!0).on("mouseup.zoom",Ao,!0),Eo=Pi(Wr,ho),Vo=Wr.clientX,Ua=Wr.clientY;ma(Wr.view),Ei(Wr),Qi.mouse=[Eo,this.__zoom.invert(Eo)],Yl(this),Qi.start()}function $a(ba){if(bi(ba),!Qi.moved){var bs=ba.clientX-Vo,Cl=ba.clientY-Ua;Qi.moved=bs*bs+Cl*Cl>Hr}Qi.event(ba).zoom("mouse",yn(Vr(Qi.that.__zoom,Qi.mouse[0]=Pi(ba,ho),Qi.mouse[1]),Qi.extent,Un))}function Ao(ba){Io.on("mousemove.zoom mouseup.zoom",null),xa(ba.view,Qi.moved),bi(ba),Qi.event(ba).end()}}function ga(Wr,...Ki){if(en.apply(this,arguments)){var ho=this.__zoom,Qi=Pi(Wr.changedTouches?Wr.changedTouches[0]:Wr,this),Io=ho.invert(Qi),Eo=ho.k*(Wr.shiftKey?.5:2),Vo=yn(Vr(zr(ho,Eo),Qi,Io),pn.apply(this,Ki),Un);bi(Wr),ir>0?di(this).transition().duration(ir).call(Li,Vo,Qi,Wr):di(this).call(Ur.transform,Vo,Qi,Wr)}}function ki(Wr,...Ki){if(en.apply(this,arguments)){var ho,Qi,Io,Eo,Vo=Wr.touches,Ua=Vo.length,$a=xi(this,Ki,Wr.changedTouches.length===Ua).event(Wr);for(Ei(Wr),Qi=0;Qi=0;--Wr){var Ki=this.tryEntries[Wr],ho=Ki.completion;if(Ki.tryLoc==="root")return Do("end");if(Ki.tryLoc<=this.prev){var Qi=_t.call(Ki,"catchLoc"),Io=_t.call(Ki,"finallyLoc");if(Qi&&Io){if(this.prev=0;--Do){var Wr=this.tryEntries[Do];if(Wr.tryLoc<=this.prev&&_t.call(Wr,"finallyLoc")&&this.prev=0;--Fi){var Do=this.tryEntries[Fi];if(Do.finallyLoc===ki)return this.complete(Do.completion,Do.afterLoc),qr(Do),ir}},catch:function(ki){for(var Fi=this.tryEntries.length-1;Fi>=0;--Fi){var Do=this.tryEntries[Fi];if(Do.tryLoc===ki){var Wr=Do.completion;if(Wr.type==="throw"){var Ki=Wr.arg;qr(Do)}return Ki}}throw new Error("illegal catch attempt")},delegateYield:function(ki,Fi,Do){return this.delegate={iterator:ta(ki),resultName:Fi,nextLoc:Do},this.method==="next"&&(this.arg=void 0),ir}},ht}function Ko(ht){return Ko=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(Dt){return typeof Dt}:function(Dt){return Dt&&typeof Symbol=="function"&&Dt.constructor===Symbol&&Dt!==Symbol.prototype?"symbol":typeof Dt},Ko(ht)}function za(ht,Dt,_t,en,pn,yn,In){try{var mn=ht[yn](In),Hn=mn.value}catch(Un){return void _t(Un)}mn.done?Dt(Hn):Promise.resolve(Hn).then(en,pn)}function wa(ht){return function(){var Dt=this,_t=arguments;return new Promise(function(en,pn){var yn=ht.apply(Dt,_t);function In(Hn){za(yn,en,pn,In,mn,"next",Hn)}function mn(Hn){za(yn,en,pn,In,mn,"throw",Hn)}In(void 0)})}}function Va(ht,Dt){if(!(ht instanceof Dt))throw new TypeError("Cannot call a class as a function")}function Ka(ht,Dt){for(var _t=0;_tht.length)&&(Dt=ht.length);for(var _t=0,en=new Array(Dt);_t=ht.length?{done:!0}:{done:!1,value:ht[en++]}},e:function(Hn){throw Hn},f:pn}}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 yn,In=!0,mn=!1;return{s:function(){_t=_t.call(ht)},n:function(){var Hn=_t.next();return In=Hn.done,Hn},e:function(Hn){mn=!0,yn=Hn},f:function(){try{In||_t.return==null||_t.return()}finally{if(mn)throw yn}}}}function Nl(ht){var Dt=32;switch(ht){case 0:Dt=23;break;case 1:Dt=26;break;case 2:default:Dt=32;break;case 3:Dt=38}return Dt}function Tl(ht){ht=ht.sort();for(var Dt=[],_t=0;_tDt&&_t<2*Dt||_t>Dt&&_t<3*Dt)&&en.push(ht.length);var Hn=en.length;Hn===1?pn.push({text:ht,x:0,y:0}):Hn===2?en.forEach(function(Un,ir){ir===0?pn.push({text:ht.substring(0,Un),x:0,y:-7}):pn.push({text:ht.substring(en[0],Un),x:0,y:7})}):en.forEach(function(Un,ir){ir===0?pn.push({text:ht.substring(0,Un),x:0,y:-12}):ir===1?pn.push({text:ht.substring(en[0],Un+1),x:0,y:4}):ht.length>Un?(()=>{var Dr=pn.reduce((br,Qr)=>br+Qr.text.length,0);pn.push({text:ht.substring(Dr,Dr+2)+(ht.length-(Dr+2)>0?"...":""),x:0,y:16})})():pn.push({text:ht.substring(en[1]+1,Un),x:0,y:16})})}(),pn}Yr.prototype;var vu=["circle","rect","ellipse"],yl=["url(#radialGradient-1)","url(#radialGradient-2)","url(#radialGradient-3)"],il=["url(#lines1)","url(#lines2)","url(#lines3)"];function Bl(ht,Dt,_t){return ht.selectAll(".node-circle").remove(),ht.selectAll(".node-circle").data(Dt,function(en){return en.id}).enter().append(function(en){return vu.includes(en.shape)?document.createElementNS("http://www.w3.org/2000/svg",en.shape):document.createElementNS("http://www.w3.org/2000/svg","circle")}).style("display",function(en){return en.hide?"none":"block"}).style("opacity",function(en){return en.hide?"0":"1"}).attr("r",function(en){return en.shape=="circle"?Rl(en.size):null}).attr("rx",function(en){return en.shape=="ellipse"?Rl(en.size)+10:en.shape=="rect"?10:null}).attr("ry",function(en){return en.shape=="ellipse"?Rl(en.size)+10:en.shape=="rect"?10:null}).attr("width",function(en){return en.shape=="rect"?3*(Rl(en.size)-6):2*(Rl(en.size)-6)}).attr("height",function(en){return en.shape=="rect"?1.5*(Rl(en.size)-6):2*(Rl(en.size)-6)}).attr("fill",function(en){return en.colorType?yl[en.colorType-1]:en.color||"url(#radialGradient-1)"}).attr("color",function(en){return en.color||"#2E8B57"}).attr("class",function(en){return"node-circle node-circle-".concat(en.id," transition-opacity duration-500")}).attr("id",function(en){return"node-circle".concat(en.id)}).style("cursor","pointer").on("mouseover",function(en,pn){var yn=pn.activeColor||"#008FFF";en.target.setAttribute("stroke",yn),en.target.setAttribute("stroke-width","8")}).on("mouseout",function(en){en.target.setAttribute("stroke-width","0")}).append("title").text(function(en){return en.name}),ht.selectAll(".node-circle")}function Rl(ht){var Dt=32;switch(ht){case 0:Dt=23;break;case 1:Dt=26;break;case 2:default:Dt=32;break;case 3:Dt=38}return Dt}function mu(ht,Dt){return ht.selectAll("text").remove(),ht.selectAll("text").data(Dt,function(_t){return _t.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(_t){return"node-text node-circle node-circle--text-".concat(_t.id," node-text-").concat(_t.id," transition-opacity duration-500")}).style("cursor","pointer").append("svg:title").text(function(_t){return _t.name}),ht.selectAll("text").style("display",function(_t){return _t.hide?"none":"block"}),ht.selectAll("text").attr("d",function(_t){_t.shape=="rect"?di(".node-circle--text-".concat(_t.id)).append("tspan").style("cursor","pointer").append("tspan").text(function(en){return en.name}):Dl(_t.name,Rl(_t.size)).forEach(function(en,pn){di(".node-circle--text-".concat(_t.id)).append("tspan").style("cursor","pointer").attr("class",function(yn){return"node-circle--tspan-".concat(yn.id,"-").concat(pn)}).attr("x",en.x).attr("y",en.y).text(function(){return en.text})})}),ht.selectAll("text")}function Xl(ht){var Dt=arguments.length>1&&arguments[1]!==void 0&&arguments[1],_t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:[],en=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{},pn=en._ops,yn=di("body"),In=[];if(Dt&&pn.isShowBatchOperation)return _t.push(ht.id),di("".concat(pn.containerName)).style("background","#5e5e5e"),_t.forEach(function(Dr){In.push(yn.select("".concat(pn.containerName," .node-circle-").concat(Dr)).attr("color"))}),yn.selectAll("".concat(pn.containerName," .node-circle")).attr("fill","#3c3b3b"),_t.forEach(function(Dr,br){yn.select("".concat(pn.containerName," .node-circle-").concat(Dr)).attr("fill",In[br])}),void di(".graph-bath").style("display","block");if(pn.isShowMask){var mn=[],Hn=[];pn.links.map(function(Dr){Dr.source.id==ht.id&&(mn.push(Dr.target.id),Hn.push(Dr.source.id+Dr.target.id)),Dr.target.id==ht.id&&(mn.push(Dr.source.id),Hn.push(Dr.source.id+Dr.target.id))});var Un=Tl(mn),ir=Tl(Hn);Un.push(ht.id),yn.selectAll("".concat(pn.containerName," .line-item")).style("display","none"),di("".concat(pn.containerName)).style("background","#5e5e5e"),Un.forEach(function(Dr){In.push(yn.select("".concat(pn.containerName," .node-circle-").concat(Dr)).attr("color"))}),yn.selectAll("".concat(pn.containerName," .node-circle")).attr("fill","#3c3b3b"),Un.forEach(function(Dr,br){yn.select("".concat(pn.containerName," .node-circle-").concat(Dr)).attr("fill",In[br])}),ir.forEach(function(Dr){yn.selectAll("".concat(pn.containerName," .line-item-").concat(Dr)).style("display",function(br){return br.hide?"none":"block"})})}}var ra=[],Ou={addPath:function(ht){ht.forEach(function(Dt){var _t=ra.indexOf(Dt);_t!=-1&&ra.splice(_t,1),ra.unshift(Dt)})},getPath:function(){return ra},clearPath:function(){ra.length=0}};function tc(ht,Dt,_t,en){return Cn.apply(this,arguments)}function Cn(){return Cn=wa(so().mark(function ht(Dt,_t,en,pn){var yn;return so().wrap(function(In){for(;;)switch(In.prev=In.next){case 0:return yn=en._ops,In.delegateYield(so().mark(function mn(){var Hn,Un,ir,Dr,br,Qr,Hr,Fr,Ur,zr,Vr,Ti,Li,xi,qr,Bo,ta,ga,ki,Fi,Do,Wr,Ki,ho,Qi,Io,Eo,Vo,Ua,$a;return so().wrap(function(Ao){for(;;)switch(Ao.prev=Ao.next){case 0:Ao.t0=Dt,Ao.next=Ao.t0==="remove"?3:Ao.t0==="hide"?19:Ao.t0==="contraction"?22:Ao.t0==="extend"?42:Ao.t0==="editSize"?62:Ao.t0==="editColor"?71:Ao.t0==="editShape"?79:Ao.t0==="extend-path"?87:Ao.t0==="contraction-path"?96:100;break;case 3:Hn=0;case 4:if(!(Hn<_t.length)){Ao.next=17;break}Un=0;case 6:if(!(Un1?Eo[1]:null)&&sr.contractionPath(Vo,Eo,en),sr.extendPath(Io,en),sr.previousStep.id=Io,sr.previousStep.operate="extend",en.update(),Ao.abrupt("break",100);case 96:return Ua=_t[0],($a=Ou.getPath()).indexOf(Ua)!=-1&&(sr.contractionPath(Ua,$a,en),sr.previousStep.operate=="extend"&&sr.previousStep.id!=Ua?(sr.extendPath(sr.previousStep.id,en),sr.previousStep.operate="extend"):(sr.previousStep.id=Ua,sr.previousStep.operate="contraction"),en.update()),Ao.abrupt("break",100);case 100:case"end":return Ao.stop()}},mn)})(),"t0",2);case 2:di(yn.containerName).style("background",yn.background);case 3:case"end":return In.stop()}},ht)})),Cn.apply(this,arguments)}var On,sr={extendPath:function(ht,Dt){for(var _t=Dt._ops,en=_t.nodes,pn=_t.links,yn=[],In=[],mn=0;mn0)for(var ir=0;ir1&&arguments[1]!==void 0?arguments[1]:{};On=ht,Dt._linkContainer.selectAll(".connect-item")._groups[0].length||Dt._linkContainer.append("g").attr("class","connect-item").append("path").attr("stroke-width",2).attr("stroke","#5e5ef0").attr("class","connect-item-inner"),di("".concat(Dt._ops.containerName)).on("mousemove",function(_t){ai(_t,Dt)})}function ai(ht,Dt){var _t,en,pn,yn=(_t=Dt._linkContainer._groups[0][0].parentNode.attributes.transform,{translate:(pn=(en=_t)&&/translate/.test(en.value)&&/scale/.test(en.value)&&en.value.match(/translate\(([^\)]+)\)\s?scale\(([^\)]+)/))&&pn[1].split(",")||[0,0],scale:pn&&pn[2]||1}),In=yn.translate,mn=yn.scale;Dt._linkContainer.selectAll(".connect-item-inner").attr("d",function(){return"M".concat(On.x,", ").concat(On.y," L").concat(ht.offsetX/mn-In[0]/mn,", ").concat(ht.offsetY/mn-In[1]/mn)})}function ni(ht){return Array.isArray(ht[0])?{message:"success",done:function(Dt){for(var _t=0;_t1&&arguments[1]!==void 0?arguments[1]:"order",_t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:1,en=arguments.length>3&&arguments[3]!==void 0?arguments[3]:1,pn=arguments.length>4&&arguments[4]!==void 0?arguments[4]:1,yn=!0;return en==1&&ht.length%2==0&&(yn=!1),ht.map(function(In,mn){In._level=en,In._value=en==1?mn+1:mn+1+(_t-1)*ht.length,In._parent=en==2?1:pn,In._site=en!=1||yn?Dt:mn=Ur/2){var xi=Ti.startAngle;Ti.startAngle=Ti.endAngle,Ti.endAngle=xi}return Ti})):(Ur=Un._level==1?Un.children.length*Dr._toolbarData.length:Un.children.length*Un._num,Fr=Ln()(new Array(Ur).fill(1)).map(function(Ti){if(Un._site=="left"){var Li=Ti.startAngle;Ti.startAngle=Ti.endAngle,Ti.endAngle=Li}return Ti})),ir._num=Fr.length;var Vr=Un._value;return ir._site=="left"?(zr=Fr.slice(Fr.length/2,Fr.length),Vr=Un._value-Un._num/2):zr=Fr.slice(0,Fr.length/2),br=Da(zr,zr.length/(Un._num/2))[Vr-1],Un._level==0&&(br=Fr),br}(_t,yn,en),Hn=Pa(mn[In].startAngle,mn[In].endAngle);return function(Un){return uo?function(ir,Dr,br,Qr,Hr,Fr,Ur,zr){var Vr=Qa(br[Ur].startAngle,Dr(ir),Hr._level+1,Hr._level+2,zr),Ti=Vr.centroid(br[Ur]);return Qr[Ur].setAttribute("x",Ti[0]-6),Qr[Ur].setAttribute("y",Ti[1]-6),zr._operationContainer.selectAll("".concat(Fr," .pie-icon")).transition().delay(150).styleTween("display",function(){return Zr("none",uo?"block":"none")}),Vr()}(Un,Hn,mn,pn,_t,Dt,In,en):""}})}}}]),ht}();function ea(ht){ht.selectAll(".arc-item .pie-item").interrupt().attr("d",null),ht.selectAll(".arc-item .pie-icon").interrupt().style("display","none"),ht.style("display","none"),ht.selectAll(".operation-item").attr("transform",function(){return"rotate(0)"}),uo=!1}var Qa=function(ht,Dt){var _t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:1,en=arguments.length>3&&arguments[3]!==void 0?arguments[3]:2,pn=arguments.length>4?arguments[4]:void 0;return Us().innerRadius(_t*pn.containerSize+2).outerRadius(en*pn.containerSize).padAngle(.02).startAngle(ht).endAngle(Dt)};function as(){return as=wa(so().mark(function ht(Dt,_t,en){var pn,yn,In;return so().wrap(function(mn){for(;;)switch(mn.prev=mn.next){case 0:mn.t0=Dt.type,mn.next=mn.t0==="connect"?3:mn.t0==="unlocked"?8:33;break;case 3:return io.length=0,Ho=!0,io.push(_t),Lr(_t,en._example),mn.abrupt("break",36);case 8:yn=dl(en._example._ops.nodes),mn.prev=9,yn.s();case 11:if((In=yn.n()).done){mn.next=19;break}if((pn=In.value).id!=_t.id){mn.next=17;break}return pn.fx=null,pn.fy=null,mn.abrupt("break",19);case 17:mn.next=11;break;case 19:mn.next=24;break;case 21:mn.prev=21,mn.t1=mn.catch(9),yn.e(mn.t1);case 24:return mn.prev=24,yn.f(),mn.finish(24);case 27:return en._example._simulation._simulation.nodes(en._example._ops.nodes),en._example._simulation._simulation.alphaTarget(.08).restart(),setTimeout(function(){en._example._simulation._simulation.alphaTarget(0)},300),mn.next=32,Dt.click(_t);case 32:return mn.abrupt("break",36);case 33:return mn.next=35,Dt.click({node:_t});case 35:tc(Dt.type,[_t.id],en._example);case 36:yi=null,ea(en._operationContainer);case 38:case"end":return mn.stop()}},ht,null,[[9,21,24,27]])})),as.apply(this,arguments)}function ca(){return(ca=wa(so().mark(function ht(Dt,_t){var en,pn,yn;return so().wrap(function(In){for(;;)switch(In.prev=In.next){case 0:return di(".graph-container").on("mousemove",null),Ho=!1,io.push(Dt),pn={node:Dt,connects:(en=[]).concat.apply(en,io)},In.next=6,co.click(pn);case 6:yn=In.sent,ni(yn||[io.splice(0)]).done(_t),Xl(pn.connects[0],!1,[],_t),io.length=0;case 11:case"end":return In.stop()}},ht)}))).apply(this,arguments)}function Da(ht,Dt){for(var _t=[],en=0;en4&&arguments[4]!==void 0?arguments[4]:1,yn=arguments.length>5&&arguments[5]!==void 0?arguments[5]:7,In=arguments.length>6&&arguments[6]!==void 0?arguments[6]:7;this.deflection=en;var mn=function(Eo){return Eo*Eo},Hn=this.deflection*Math.PI/180,Un={x:Math.cos(Hn)*ht,y:Math.sin(Hn)*ht},ir=ht/(Dt+In),Dr=-_t*ir/(1-ir),br=function(Eo,Vo,Ua,$a){var Ao=Eo.y/(Eo.x-Dr),ba=Eo.y-Ao*Eo.x,bs=1+mn(Ao),Cl=2*(Ao*ba-Ua),Gs=mn(ba)+mn(Ua)-mn(Vo),Fs={x:(-Cl+$a*Math.sqrt(mn(Cl)-4*bs*Gs))/(2*bs)};return Fs.y=(Fs.x-Dr)*Ao,Fs},Qr=br(Un,Dt+In,_t,-1),Hr=-Un.x/Un.y,Fr=Un.y+mn(Un.x)/Un.y,Ur=-(Qr.x-_t)/Qr.y,zr=Qr.y+(Qr.x-_t)*Qr.x/Qr.y,Vr=(Fr-zr)/(Ur-Hr),Ti=Hr*Vr+Fr,Li=Math.sqrt(mn(Vr-Un.x)+mn(Ti-Un.y)),xi=Math.atan2(Un.x-Vr,Ti-Un.y),qr=Math.atan2(Qr.x-Vr,Ti-Qr.y),Bo=(xi+qr)/2;this.deflection>0&&(Bo+=Math.PI);var ta=qr-xi;this.deflection>0&&(ta=2*Math.PI-ta),this.shaftLength=ta*Li,xi>qr&&(this.shaftLength=0),this.midShaftPoint={x:Vr+Li*Math.sin(Bo),y:Ti-Li*Math.cos(Bo)};var ga=function(Eo){var Vo=(Eo<0?1:-1)*Math.sqrt(mn(Eo)/(1+mn(Hr))),Ua=Hr*Vo;return{x:Un.x+Vo,y:Un.y+Ua}},ki=function(Eo){var Vo=(Eo<0?-1:1)*Math.sqrt(mn(Eo)/(1+mn(Ur))),Ua=Ur*Vo;return{x:Qr.x+Vo,y:Qr.y+Ua}},Fi=function(Eo,Vo){return{x:Vr+(Li+Vo)*Math.sin(Eo),y:Ti-(Li+Vo)*Math.cos(Eo)}},Do=function(Eo){var Vo=(Eo<0?-1:1)*Math.sqrt(mn(Eo)/(1+mn(1/Ur))),Ua=Vo/Ur;return{x:Qr.x+Vo,y:Qr.y-Ua}},Wr=function(Eo){return Eo.x+","+Eo.y},Ki=pn/2,ho=yn/2,Qi=Un.y>0?0:1,Io=Un.y<0?0:1;this.outline=function(){if(xi>qr)return["M",Wr(ki(-ho)),"L",Wr(Do(In)),"L",Wr(ki(ho)),"Z"].join(" ");var Eo=Bo-0,Vo=Bo+0;return["M",Wr(ga(Ki)),"L",Wr(ga(-Ki)),"A",Li-Ki,Li-Ki,0,0,Qi,Wr(Fi(Eo,-Ki)),"L",Wr(Fi(Eo,Ki)),"A",Li+Ki,Li+Ki,0,0,Io,Wr(ga(Ki)),"Z","M",Wr(Fi(Vo,Ki)),"L",Wr(Fi(Vo,-Ki)),"A",Li-Ki,Li-Ki,0,0,Qi,Wr(ki(-Ki)),"L",Wr(ki(-ho)),"L",Wr(Do(In)),"L",Wr(ki(ho)),"L",Wr(ki(Ki)),"A",Li+Ki,Li+Ki,0,0,Io,Wr(Fi(Vo,Ki))].join(" ")}}function da(ht,Dt,_t){var en=arguments.length>3&&arguments[3]!==void 0?arguments[3]:8,pn=arguments.length>4&&arguments[4]!==void 0?arguments[4]:1,yn=arguments.length>5&&arguments[5]!==void 0?arguments[5]:7,In=arguments.length>6&&arguments[6]!==void 0?arguments[6]:7,mn=_t*Math.PI/180,Hn=ht,Un=ht+In,ir=ht+Dt,Dr=ir*Math.tan(mn/2),br=pn/2;function Qr(Vr,Ti){return Vr+","+Ti}this.shaftLength=3*Dr+pn;var Hr=function(Vr,Ti,Li){var xi=Ti*Math.tan(mn/2),qr=Ti/Math.cos(mn/2);return Qr((xi+Li)*Math.sin(Vr),qr+(xi+Li)*Math.cos(Vr))},Fr=function(){var Vr=Hr(0,ir,br+en/2+2).split(",");return{x:Vr[0],y:Vr[1]}};this.midShaftPoint=Fr();var Ur=function(Vr,Ti){return Hr((Math.PI+mn)/2,Vr,Ti)},zr=function(Vr,Ti){return Hr(-(Math.PI+mn)/2,Vr,Ti)};this.outline=function(){var Vr=Dr-br,Ti=Dr+br;return["M",Ur(Hn,br),"L",Ur(ir,br),"A",Ti,Ti,0,1,1,zr(ir,br),"L",zr(Un,br),"L",zr(Un,-yn/2),"L",zr(Hn,0),"L",zr(Un,yn/2),"L",zr(Un,-br),"L",zr(ir,-br),"A",Vr,Vr,0,1,0,Ur(ir,-br),"L",Ur(Hn,-br),"Z"].join(" ")}}function ja(ht,Dt,_t){var en=arguments.length>3&&arguments[3]!==void 0?arguments[3]:1,pn=arguments.length>4&&arguments[4]!==void 0?arguments[4]:7,yn=arguments.length>5&&arguments[5]!==void 0?arguments[5]:7;this.length=_t-(ht+Dt),this.shaftLength=this.length-yn;var In=ht,mn=In+this.shaftLength,Hn=In+this.length,Un=en/2,ir=pn/2;this.midShaftPoint={x:In+this.shaftLength/2,y:0},this.outline=function(){var Dr=0,br=0;return["M",In,Un,"L",Dr,Un,"L",Dr,-Un,"L",In,-Un,"Z","M",br,Un,"L",mn,Un,"L",mn,ir,"L",Hn,0,"L",mn,-ir,"L",mn,-Un,"L",br,-Un,"Z"].join(" ")}}function ha(){}var jo=new ha;function zo(ht,Dt){this.relationships=[],ht.iden)return _t;var pn=Math.ceil((en-Dt)/12);return _t.length-pn<=0?"":_t.substr(0,_t.length-pn)+"\u2026"}},ha.prototype.distributeAnglesForLoopArrows=function(ht,Dt){for(var _t,en=0,pn=Array.from(ht);en0){var br=void 0,Qr=void 0,Hr={start:0,end:0};for(yn=0;ynHr.end-Hr.start&&(Hr.start=Qr,Hr.end=br);for(In=(Hr.end-Hr.start)/(_t.relationships.length+1),yn=0;yn<_t.relationships.length;yn++)(Un=_t.relationships[yn]).naturalAngle=(Hr.start+(yn+1)*In-90)%360}else for(In=360/_t.relationships.length,yn=0;yn<_t.relationships.length;yn++)(Un=_t.relationships[yn]).naturalAngle=yn*In}},ha.prototype.layoutRelationships=function(ht){var Dt,_t,en=function(Qr){for(var Hr,Fr={},Ur=0,zr=Array.from(Qr);Ur150?150/Un:30,Dr=0;Dr<_t.relationships.length;Dr++){if(Dt=_t.relationships[Dr],_t.isLoop())Dt.arrow=new da(Dt.sourceRadius,40,30);else if(Dr===Hn)Dt.arrow=new ja(Dt.sourceRadius,Dt.targetRadius,Dt.centreDistance);else{var br=ir*(Dr-Hn);_t.nodeA.id!==Dt.source.id&&(br*=-1),Dt.arrow=new ds(Dt.sourceRadius,Dt.targetRadius,Dt.centreDistance,br)}Dt.shortCaption=this.shortenCaption(Dt.label,Dt.arrow.shaftLength)}}},ha.prototype.layoutNodes=function(ht){var Dt=ht.width,_t=ht.height,en=ht.layout,pn=ht.nodes;(function(){var yn=99999999,In=-99999999,mn=99999999,Hn=-99999999,Un=-9999999;pn.forEach(function(br){yn>br.x&&(yn=br.x),Inbr.y&&(mn=br.y),Hn=br)){(Vr.data!==In||Vr.next)&&(qr===0&&(ga+=(qr=Nc(mn))*qr),Bo===0&&(ga+=(Bo=Nc(mn))*Bo),gazr+ho||FiVr+ho||DoUr.index){var Qi=zr-Wr.x-Wr.vx,Io=Vr-Wr.y-Wr.vy,Eo=Qi*Qi+Io*Io;EoHr.r&&(Hr.r=Hr[Fr].r)}function Qr(){if(In){var Hr,Fr,Ur=In.length;for(mn=new Array(Ur),Hr=0;Hr3&&arguments[3]!==void 0?arguments[3]:1,yn=en.benchmark,In=en.height,mn=en.width,Hn=en.isResize,Un=en.layout,ir=Un.distance?Un.distance:Math.min(In,mn)/2-80,Dr=Fu(_t).iterations(.05).id(function(br){return br[yn]}).distance(function(){return _t.length<=5&&Hn?100:_t.length<=20&&Hn?ir:_t.length<=60?180:230});this._simulation.nodes(Dt).force("link",Dr).velocityDecay(.2).alpha(pn).alphaDecay(.08),this._simulation.restart()}},{key:"addSimulationEvent",value:function(Dt,_t,en,pn){var yn=this,In=_o(Dt,3),mn=In[0],Hn=In[1],Un=In[2];this._simulation.on("tick",function(){return jo.layoutRelationships(pn),yn._root.layout.force&&jo.layoutNodes(yn._root),mn.attr("transform",function(ir){return"translate("+ir.source.x+" "+ir.source.y+") rotate("+(ir.naturalAngle-180)+")"}),Hn.attr("d",function(ir){return ir.arrow.outline(ir)}),Un.attr("x",function(ir){return ir.arrow.midShaftPoint.x}).attr("y",function(ir){return ir.arrow.midShaftPoint.y+13}).attr("transform",function(ir){return ir.naturalAngle<90||ir.naturalAngle>270?"rotate(180 "+ir.arrow.midShaftPoint.x+" "+ir.arrow.midShaftPoint.y+")":null}).text(function(ir){return ir.shortCaption}),_t.attr("cx",function(ir){return ir.x}).attr("cy",function(ir){return ir.y}).attr("x",function(ir){return ir.shape=="rect"?ir.x-Nl(ir.size):ir.x-ir.size+6}).attr("y",function(ir){return ir.shape=="rect"?ir.y-Nl(ir.size)/1.5:ir.y-ir.size+6}),void en.attr("x",function(ir){return Dl(ir.name,Nl(ir.size)).forEach(function(Dr,br){di(".node-circle--tspan-".concat(ir.id,"-").concat(br)).attr("x",ir.x).attr("y",Dr.y+ir.y)}),ir.x}).attr("y",function(ir){return ir.y})})}},{key:"drag",value:function(){var Dt=this;return function(){var _t,en,pn,yn,In=ro,mn=Rt,Hn=Kr,Un=Bi,ir={},Dr=Ge("start","drag","end"),br=0,Qr=0;function Hr(qr){qr.on("mousedown.drag",Fr).filter(Un).on("touchstart.drag",Vr).on("touchmove.drag",Ti,vo).on("touchend.drag touchcancel.drag",Li).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function Fr(qr,Bo){if(!yn&&In.call(this,qr,Bo)){var ta=xi(this,mn.call(this,qr,Bo),qr,Bo,"mouse");ta&&(di(qr.view).on("mousemove.drag",Ur,Co).on("mouseup.drag",zr,Co),ma(qr.view),To(qr),pn=!1,_t=qr.clientX,en=qr.clientY,ta("start",qr))}}function Ur(qr){if(xo(qr),!pn){var Bo=qr.clientX-_t,ta=qr.clientY-en;pn=Bo*Bo+ta*ta>Qr}ir.mouse("drag",qr)}function zr(qr){di(qr.view).on("mousemove.drag mouseup.drag",null),xa(qr.view,pn),xo(qr),ir.mouse("end",qr)}function Vr(qr,Bo){if(In.call(this,qr,Bo)){var ta,ga,ki=qr.changedTouches,Fi=mn.call(this,qr,Bo),Do=ki.length;for(ta=0;ta `;He.createContainer=class{constructor(ht){var Dt=["style","innerHTML","body","absolute","append","defsvg","div","createElement","zIndex"],_t=function(mn,Hn){mn=mn-0;var Un=Dt[mn];return Un};if(!document.getElementById("defsvg")){var en=document[_t("0x7")](_t("0x6"));en.id=_t("0x5"),en[_t("0x1")]=sa,en[_t("0x0")].position=_t("0x3"),en.style.top="-10000px",en[_t("0x0")][_t("0x8")]=-1,document[_t("0x2")][_t("0x4")](en)}mi.prototype.addElement=function(mn){for(var Hn=arguments.length,Un=new Array(Hn>1?Hn-1:0),ir=1;ir2&&arguments[2]!==void 0?arguments[2]:.1,Fr=arguments.length>3&&arguments[3]!==void 0?arguments[3]:15,Ur=Ai().scaleExtent([Hr,Fr]).on("zoom",function(zr){Qr.attr("transform",zr.transform)});In.zoom=Ur,br.call(Ur),Qr.on("dblclick.zoom",null),br.on("dblclick.zoom",null)}(ir,Dr,Un.zoomOptions.minScale,Un.zoomOptions.maxScale)}(pn,this),this._simulation=new Wa(this),this._pie=new Jo(this),this.update()}addNode(ht){(function(Dt,_t){_t._ops.nodes.push(Dt),_t.update()})(ht,this)}zoomIn(){di(this._ops.containerName).select("svg").transition().duration(750).call(this.zoom.scaleBy,1.2)}zoomOut(){di(this._ops.containerName).select("svg").transition().duration(750).call(this.zoom.scaleBy,.8)}toggleNode(ht){if(!this._ops.clickToggle)return;var Dt=this._ops.nodes,_t=this._ops.links;ht.isExtendedState=!ht.isExtendedState;var en=!ht.isExtendedState,pn=[ht.id];function yn(In,mn,Hn){Hn.forEach(Un=>{if(Un.source.id===In){Un.hide=en;const ir=mn.find(Dr=>Dr.id===Un.target.id);ir&&(ir.hide=en,pn.push(ir.id),yn(ir.id,mn,Hn))}})}setTimeout(()=>{pn.forEach(In=>{_t.forEach(mn=>{(mn.source.id===In||mn.target.id===In)&&mn.target.id!==ht.id&&(mn.hide=en)})}),this.update()},100),yn(ht.id,Dt,_t)}showAllNodes(){this._ops.nodes.forEach(ht=>{ht.hide=!1}),this._ops.links.forEach(ht=>{ht.hide=!1}),this.update()}deleteNode(ht){(function(Dt,_t){_t._ops.nodes=_t._ops.nodes.filter(function(en){return en.id!==Dt.id}),_t._ops.links=_t._ops.links.filter(function(en){return en.source.id!==Dt.id&&en.target.id!==Dt.id}),_t.update(),ea(_t.operationContainer)})(ht,this)}scrollToNode(ht){const _t=document.querySelector(this._ops.containerName+" svg").querySelector("g.graph-box"),en=this._ops.nodes.find(ir=>ir.id===ht);if(!en)return;const pn=en.x,yn=en.y,In=1287,mn=596,Hn=In/2-pn,Un=mn/2-yn;_t.setAttribute("transform",`translate(${Hn}, ${Un})`)}selectToNode(ht){const Dt=document.querySelector(this._ops.containerName+" svg");document.body.querySelectorAll("circle.node-circle").forEach(_t=>{_t.classList.remove("highlightNode")}),ht&&Dt.querySelector(".node-circle-"+ht).classList.add("highlightNode")}update(ht=!0,Dt={}){var _t,en;this._pie.showPie("");const pn=this._ops.nodes,yn=this._ops.links,In=this._nodeContainer.addElement(Bl,pn,this),mn=this._linkContainer.addElement(pr,yn,this),Hn=this._textContainer.addElement(mu,pn);In.on("click",(br,Qr)=>Be(this,null,function*(){this.toggleNode(Qr);const Hr=yield this._ops.nodeClick(Qr);if(Hr){const{type:Fr,id:Ur}=Hr;tc(Fr,Ur,this)}})),this._ops.isCustomMouse&&(In.on("mouseover",(br,Qr)=>Be(this,null,function*(){yield this._ops.nodeMouseover(Qr)})),In.on("mouseout",()=>Be(this,null,function*(){yield this._ops.nodeMouseout()}))),In.on("contextmenu",(br,Qr)=>{br.preventDefault(),this._pie.showPie(Qr,br)}),In.call(this._simulation.drag());const Un=(_t=document.querySelector(this._ops.containerName))===null||_t===void 0?void 0:_t.clientWidth,ir=(en=document.querySelector(this._ops.containerName))===null||en===void 0?void 0:en.clientHeight,Dr=document.getElementsByClassName(`${this._ops.containerName}-graph-container`)[0];Dr&&Un&&ir&&(this._ops.width=Un,this._ops.height=ir,Dr.setAttribute("viewBox",`0 0 ${Un} ${ir}`)),ht?this._simulation.updateSimulation(pn,yn,this._ops):this._simulation.updateSimulation(pn,yn,this._ops,.1),this._simulation.addSimulationEvent(mn,In,Hn,yn),function(br,Qr){var Hr=["object","function","undefined"];if(Ko(Qr)!=="object")return br;for(var Fr in Qr)Hr.indexOf(Ko(Qr[Fr]))===-1&&(br[Fr]=Qr[Fr])}(this._ops,Dt),Object.getOwnPropertyNames(Dt).length&&this._updateBaseTheme()}_updateBaseTheme(){di(this._ops.containerName).style("background",this._ops.background)}},He.storage=Ou,Object.defineProperty(He,"__esModule",{value:!0})})},49291:function(sn,an,Be){"use strict";Be.d(an,{Ax:function(){return ke},Ds:function(){return Ze},KI:function(){return we},SI:function(){return Ge},f1:function(){return et}});var He=Be(38446);function et(Te){let Re=!0;if(Te.length>0){for(let Ie=0;Ienew Promise((ie,ae)=>{var fe=xe=>{try{ve(ye.next(xe))}catch(he){ae(he)}},de=xe=>{try{ve(ye.throw(xe))}catch(he){ae(he)}},ve=xe=>xe.done?ie(xe.value):Promise.resolve(xe.value).then(fe,de);ve((ye=ye.apply(Pe,je)).next())}),be=({data:Pe,className:je,fullWidth:ye,style:ie={},onClose:ae,onOk:fe,showFullTools:de,noAssociationId:ve})=>{const xe=(0,He.useRef)(null),he=(0,He.useRef)(null),pe=(0,He.useRef)(null),Se=(0,He.useRef)(null),[Ne,ze]=(0,He.useState)(!1),[Ke,Ve]=(0,He.useState)("\u6B63\u5728\u52A0\u8F7D\u4E2D");(0,He.useEffect)(()=>{pe.current||(pe.current=document.createElement("style"),document.head.appendChild(pe.current)),Pe!=null&&Pe.visible?(document.body.setAttribute("data-custom","y-hidden"),pe.current.innerHTML=" html { overflow-y: hidden; }",Pe!=null&&Pe.src&&Je()):(document.body.removeAttribute("data-custom"),pe.current&&(document.head.removeChild(pe.current),pe.current=null))},[Pe==null?void 0:Pe.visible]);const Je=()=>Re(void 0,null,function*(){ze(!0),Ve("\u6B63\u5728\u52A0\u8F7D\u4E2D");const St=yield(0,Te.ZJ)(Pe==null?void 0:Pe.src);xe.current.src="",xe.current.src=St,xe.current.onload=function(){st()},ze(!1),Ve("")}),tt=St=>Re(void 0,null,function*(){ze(!0),Ve("\u6B63\u5728\u4FDD\u5B58\u4E2D");const At=yield(0,we.ZP)("/api/attachments.json",{method:"post",body:{file_type:"base64",original_filename:Pe.title,file:St.dataUrl}});At!=null&&At.id&&!ve?(yield(0,we.ZP)(`/api/attachments/${Pe.id}/add_subitem.json`,{method:"post",body:{subitem_id:At==null?void 0:At.id,settings:JSON.stringify(St.state)}})).status===0&&fe():At!=null&&At.id&&fe(At),ze(!1),Ve("")}),gt=()=>{const St=document.querySelector('a[href="https://markerjs.com/"]');St&&St.parentNode&&(St.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(vt=>{const Tt=document.querySelector(vt.name);Tt&&Tt.setAttribute("title",vt.title)})},st=()=>{he.current=new Oe.hP(xe.current),he.current.targetRoot=Se.current,he.current.addEventListener("render",tt),he.current.addEventListener("beforeclose",ae),de&&(he.current.availableMarkerTypes=he.current.ALL_MARKER_TYPES,he.current.uiStyleSettings.redoButtonVisible=!0,he.current.uiStyleSettings.notesButtonVisible=!0,he.current.uiStyleSettings.zoomButtonVisible=!0,he.current.uiStyleSettings.zoomOutButtonVisible=!0,he.current.uiStyleSettings.clearButtonVisible=!0),window.markerArea=he.current.uiStyleSettings,he.current.show(),Pe!=null&&Pe.snapshotData&&he.current.restoreState(Pe.snapshotData),setTimeout(()=>{window.scrollTo(0,0),gt()},300)};return He.createElement(He.Fragment,null,(Pe==null?void 0:Pe.visible)&&He.createElement(Ze.Z,{spinning:Ne,tip:Ke,style:{position:"absolute"}},He.createElement("div",{ref:Se,className:ke()(et.imageDimensions,je,ye?et.fullWidth:""),style:ie},He.createElement("img",{className:et.img,ref:xe}))))}},46531:function(sn,an,Be){"use strict";var He=Be(59301),et=Be(95237),Ge=Be(43604),ke=Be(99313),Ze=Be(3113),Oe=Be(99325),we=Be(11570),Te=Be(48136),Re=Be(59301);const Ie=(0,He.forwardRef)(({callback:be,showSaveButton:Pe,value:je=""},ye)=>{const ie=(0,He.useRef)(),ae=[{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 "}]}]}],fe=[{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}`}]}]}],de=he=>{ie.current.setValue(ie.current.getValue()+" "+he.value+" ")},ve=[{key:"1",label:"\u5FEB\u6377\u6A21\u677F",children:Re.createElement(et.Z,{className:we.Z.lists,gutter:[10,10]},ae.map((he,pe)=>Re.createElement(Ge.Z,{flex:"110px",className:we.Z.item},Re.createElement("div",null,Re.createElement(Oe.Z,{value:`$$${he.value}$$`}),he.name),Re.createElement("div",{className:we.Z.children},he.children.map((Se,Ne)=>Re.createElement("div",{key:Ne},Re.createElement("h1",null,Se.name),Re.createElement(et.Z,{gutter:[10,10]},Se.data.map((ze,Ke)=>Re.createElement(Ge.Z,{key:Ke,onClick:()=>de(ze),className:we.Z.diamond},Re.createElement(Oe.Z,{value:"`$$"+ze.value+"$$`"}))))))))))},{key:"2",label:"\u516C\u5F0F\u6A21\u677F",children:Re.createElement(et.Z,{className:we.Z.lists,gutter:[10,10]},fe.map((he,pe)=>Re.createElement(Ge.Z,{flex:"110px",className:we.Z.item},Re.createElement("div",null,Re.createElement(Oe.Z,{value:"`$$"+he.value+"$$`"}),he.name),Re.createElement("div",{className:we.Z.children},he.children.map((Se,Ne)=>Re.createElement("div",{key:Ne},Se.name&&Re.createElement("h1",null,Se.name),Re.createElement(et.Z,{gutter:[10,10]},Se.data.map((ze,Ke)=>Re.createElement(Ge.Z,{key:Ke,onClick:()=>de(ze),className:we.Z.diamond},Re.createElement(Oe.Z,{value:"`$$"+ze.value+"$$`"}))))))))))}],xe=()=>{var he=document.createElement("div");he.innerHTML=ie.current.getValue();var pe=he.innerText;return be&&be(pe),pe};return(0,He.useImperativeHandle)(ye,()=>({getData:xe})),Re.createElement("div",{className:we.Z.mathWrap},Re.createElement(ke.default,{defaultActiveKey:"1",items:ve}),Re.createElement("math-field",{locale:"zh_cn",className:we.Z.mathField,placeholder:"\u8BF7\u6253\u5F00\u952E\u76D8\uFF0C\u8F93\u5165\u516C\u5F0F",ref:ie,style:{width:800,marginTop:30,fontSize:18}},je||""),Pe&&Re.createElement("div",{className:we.Z.button},Re.createElement(Ze.ZP,{size:"large",onClick:xe,style:{zIndex:8,marginTop:10},type:"primary"},"\u4FDD\u5B58\u5230\u7F16\u8F91\u5668")))});an.Z=Ie},57816:function(sn,an,Be){"use strict";var He=Be(59301),et=Be(93314),Ge=Be(3113),ke=Object.defineProperty,Ze=Object.defineProperties,Oe=Object.getOwnPropertyDescriptors,we=Object.getOwnPropertySymbols,Te=Object.prototype.hasOwnProperty,Re=Object.prototype.propertyIsEnumerable,Ie=(ye,ie,ae)=>ie in ye?ke(ye,ie,{enumerable:!0,configurable:!0,writable:!0,value:ae}):ye[ie]=ae,be=(ye,ie)=>{for(var ae in ie||(ie={}))Te.call(ie,ae)&&Ie(ye,ae,ie[ae]);if(we)for(var ae of we(ie))Re.call(ie,ae)&&Ie(ye,ae,ie[ae]);return ye},Pe=(ye,ie)=>Ze(ye,Oe(ie));const je=({img:ye,buttonProps:ie={},styles:ae={},customText:fe,ButtonText:de,ButtonClick:ve,Buttonclass:xe,ButtonTwo:he,imgStyles:pe,loading:Se=!1})=>He.createElement("section",{className:"tc animated fadeIn",style:be(be({},{color:"#999",margin:"100px auto",visibility:Se?"hidden":"visible"}),ae)},He.createElement("img",{src:ye||et,style:Pe(be({},pe),{pointerEvents:"none",userSelect:"none"})}),He.createElement("p",{className:"mt20 font14"},fe||"\u6682\u65F6\u8FD8\u6CA1\u6709\u76F8\u5173\u6570\u636E\u54E6!"),de&&He.createElement(Ge.ZP,be({className:xe,onClick:ve},ie),de),he&&he);an.Z=je},55954:function(sn,an,Be){"use strict";Be.d(an,{Q:function(){return Oe}});var He=Be(59301),et=Be(57809),Ge=Be(5112),ke=Be(5871),Ze=Be(59301),Oe=(Te=>(Te[Te.Number=1]="Number",Te[Te.Percent=2]="Percent",Te))(Oe||{});const we=({value:Te,onChange:Re,disabled:Ie,hidePercentOption:be=!1,percentType:Pe="select"})=>{const je=(0,He.useMemo)(()=>be?1:2,[be]),[ye,ie]=(0,He.useState)(je);console.log(ye);const ae=de=>Te.type===1?`${de}\u5206`:`${de}%`,fe=(0,He.useCallback)(de=>{if(ye===1){const ve=de.replace("\u5206","");return isNaN(parseInt(ve,10))?0:ve}else return de.replace("%","")},[ye]);return(0,He.useEffect)(()=>{ie(Te.type)},[Te]),Ze.createElement("div",{style:{display:"flex",alignItems:"center"}},Pe=="select"&&Ze.createElement(et.default,{size:"large",onChange:de=>{ie(de),Re({type:de,inputValue:de===1?5:20})},value:ye||je,style:{width:100},options:be?[{label:"\u5206\u503C",value:1}]:[{label:"\u767E\u5206\u6BD4",value:2},{label:"\u5206\u503C",value:1}],disabled:Ie}),Pe=="radio"&&Ze.createElement(Ge.ZP.Group,{size:"large",onChange:de=>{const ve=de.target.value;ie(ve),Re({type:ve,inputValue:ve===1?5:20})},value:ye||je,disabled:Ie},!be&&Ze.createElement(Ge.ZP,{value:2,style:{marginRight:"50px"}},"\u767E\u5206\u6BD4\u6263\u5206"),Ze.createElement(Ge.ZP,{value:1},"\u56FA\u5B9A\u5206\u503C")),Pe=="radio"&&Ze.createElement("div",{style:{marginRight:"10px",color:"#000000"}},Te.type==2?"\u6263\u9664\u8865\u4EA4\u9636\u6BB5\u5F97\u5206\u7684":"\u6263\u9664\u603B\u6210\u7EE9\u7684"),Ze.createElement(ke.Z,{size:"large",disabled:Ie,value:Te.inputValue,style:{width:"120px"},parser:fe,addonAfter:Te.type===1?"\u5206":"%",max:ye===2?100:Number.MAX_SAFE_INTEGER,min:0,precision:0,onChange:de=>{Re({type:ye,inputValue:de})}}),Pe=="radio"&&Te.type==2&&Ze.createElement("div",{style:{marginLeft:"10px",color:"#000000"}},"\u5206\u6570"))};an.Z=we},90853:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return xe}});var He=Be(59301),et={wrp:"wrp___dq7YK",bgBlack:"bgBlack___ARIUV",monaco:"monaco___VnZC3",darkBlue:"darkBlue___UprA9",close:"close___LKoWu",embed:"embed___hvpEJ"},Ge=Be(3113),ke=Be(70557),Ze=Be(57800),Oe=Be(6848),we=Be(88230),Te=Be(30897),Re=Be(57816),Ie=Be(38446),be=Be(89282),Pe=Be(59301),je=Object.defineProperty,ye=Object.getOwnPropertySymbols,ie=Object.prototype.hasOwnProperty,ae=Object.prototype.propertyIsEnumerable,fe=(he,pe,Se)=>pe in he?je(he,pe,{enumerable:!0,configurable:!0,writable:!0,value:Se}):he[pe]=Se,de=(he,pe)=>{for(var Se in pe||(pe={}))ie.call(pe,Se)&&fe(he,Se,pe[Se]);if(ye)for(var Se of ye(pe))ae.call(pe,Se)&&fe(he,Se,pe[Se]);return he},ve=(he,pe,Se)=>new Promise((Ne,ze)=>{var Ke=tt=>{try{Je(Se.next(tt))}catch(gt){ze(gt)}},Ve=tt=>{try{Je(Se.throw(tt))}catch(gt){ze(gt)}},Je=tt=>tt.done?Ne(tt.value):Promise.resolve(tt.value).then(Ke,Ve);Je((Se=Se.apply(he,pe)).next())}),xe=({editOffice:he="view",data:pe,theme:Se,type:Ne,filename:ze,monacoEditor:Ke,className:Ve,style:Je,close:tt,onClose:gt,hasMask:st,disabledDownload:St,onImgDimensions:At,showNodata:vt,recordInfo:Tt})=>{const[bt,Et]=(0,He.useState)("https://view.officeapps.live.com/op/view.aspx?src=http://testgs.educoder.net//rails/active_storage/blobs/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBCZz09IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--03541f6234b93d7ac3b2d84e7eb0e6594a952945/1.ppt"),[lt,Nt]=(0,He.useState)(""),[Zt,Ut]=(0,He.useState)(),Ft=window.ENV==="build"?"/react/build":"",Yt=location.host.startsWith("localhost")?Ie.Z.PROXY_SERVER:Ie.Z.API_SERVER,Dn=10*(1024*1024),Rn=(0,He.useRef)();pe!=null&&pe.startsWith("/api")&&Ne!=="txt"&&(pe=Ie.Z.API_SERVER+pe);const Zn=qt=>qt.substring(qt.lastIndexOf("/")+1).split(".").pop();ze&&Ke&&(Ke.filename=ze),(0,He.useEffect)(()=>{var qt,xt;const ft=(xt=(qt=document.cookie)==null?void 0:qt.replace(/\s/g,""))==null?void 0:xt.split(";");ft==null||ft.map(Bt=>{let Ot=Bt.split("=");Ot[0]==="_educoder_session"&&Nt(Ot[1])})},[]),(0,He.useEffect)(()=>{Ne==="office"&&(pe.indexOf("bigfilescdn.")>-1||pe.indexOf("bigfiles1")>-1?Ut({url:pe,fileType:Zn(pe),model:pe.indexOf("model=edit")?"edit":"view"}):ln())},[Ne,pe]);const ln=()=>ve(void 0,null,function*(){console.log("data:",pe);let qt=pe;pe.startsWith("http")||(qt=location.origin+qt);let xt=new URL(qt).pathname.split("/").pop();const ft=yield(0,Te.gJ)({attachment_id:xt});ft.url=Yt+ft.url,Ut(ft)}),Gn=()=>{if(pe.startsWith("http")||pe.startsWith("blob:")){Wn();return}(0,we.Sv)(ze||"educoder",pe,ze)},Wn=()=>{Tt&&(0,be.fc)({id:Tt==null?void 0:Tt.id,watch_type:1,course_id:Tt==null?void 0:Tt.course_id}),(0,we.Nd)(ze||"educoder",decodeURIComponent(pe))};return Pe.createElement("div",{style:de({},Je||{}),className:`${st&&et.bgBlack} ${Ne?et.wrp:"hide"}`},tt&&Pe.createElement("div",{className:et.close,ref:Rn},!!At&&Pe.createElement(Oe.Z,{title:"\u70B9\u51FB\u5BF9\u56FE\u7247\u8FDB\u884C\u6279\u6CE8",getPopupContainer:()=>Rn.current},Pe.createElement("span",{onClick:()=>{gt(),At()}},Pe.createElement("i",{className:"icon-yulanpizhu"}))),!St&&Pe.createElement(Oe.Z,{title:"\u70B9\u51FB\u4E0B\u8F7D\u6B64\u6587\u4EF6",getPopupContainer:()=>Rn.current},Pe.createElement("span",{onClick:Wn},Pe.createElement("i",{className:"icon-quxiaozhiding"}))),Pe.createElement(Oe.Z,{title:"\u5173\u95ED",getPopupContainer:()=>Rn.current},Pe.createElement("span",{className:"",onClick:gt},Pe.createElement("i",{className:"icon-guanbi1"})))),Pe.createElement("div",{className:`${et[Ve]} ${Ve} ${et.monaco} ${Ne==="txt"?"show":"hide"}`},Ne==="txt"&&Pe.createElement(Pe.Fragment,null,Pe.createElement(Ze.ZP,de({},Ke)))),Ne==="audio"&&Pe.createElement("audio",{src:`${(pe==null?void 0:pe.indexOf("http://"))>-1||(pe==null?void 0:pe.indexOf("https://"))>-1?"":"data:audio/mp3;base64,"}${pe}`,autoPlay:!0}),Ne==="video"&&Pe.createElement(Pe.Fragment,null,(pe==null?void 0:pe.indexOf("http"))>-1?Pe.createElement("video",{controls:!0,src:`${pe}`,autoPlay:!0}):Pe.createElement("video",{controls:!0,src:`data:video/mp4;base64,${pe}`,autoPlay:!0})),Ne==="office"&&Zt&&Pe.createElement("iframe",{src:`${Ft}/office.html?key=${Zt.key}&url=${btoa(Zt.url)}&callbackUrl=${Yt+(Zt.callbackUrl||"")}&fileType=${Zt.fileType}&title=${Zt.title||""}&model=${he}&officeServer=${Ie.Z.ONLYOFFICE}&disabledDownload=${!!St}`}),Ne==="html"&&Pe.createElement("iframe",{src:pe+"&disposition=inline"}),Ne==="pdf"&&Pe.createElement("iframe",{src:`${Ft}/js/pdfview/index.html?filename=${ze||"educoder.pdf"}&url=${encodeURIComponent(pe)}&disabledDownload=${!!St}`}),Ne==="image"&&Pe.createElement("img",{src:`${(pe==null?void 0:pe.indexOf("http://"))>-1||(pe==null?void 0:pe.indexOf("https://"))>-1?"":"data:image/png;base64,"}${pe}`}),(Ne==="other"||Ne==="download")&&Pe.createElement(Pe.Fragment,null,vt?Pe.createElement(Re.Z,{customText:"\u5F53\u524D\u6587\u4EF6\u4E0D\u652F\u6301\u9884\u89C8\uFF0C\u53EF\u70B9\u51FB\u4E0B\u8F7D\u67E5\u770B",ButtonTwo:Pe.createElement(Ge.ZP,{icon:Pe.createElement("i",{className:"iconfont icon-xiazai4 font14"}),type:"primary",size:"middle",onClick:Gn,disabled:St},"\u4E0B\u8F7D")}):Pe.createElement(Ge.ZP,{type:"primary",size:"middle",onClick:Gn,disabled:St},Pe.createElement(ke.Z,null),"\u70B9\u51FB\u4E0B\u8F7D")))}},99325:function(sn,an,Be){"use strict";Be.d(an,{z:function(){return Ne},Z:function(){return ze}});var He=Be(59301),et=Be(2878),Ge=Be(85187),ke=Be(64018),Ze=Be(40846),Oe=Be(38446),we=Be(88230),Te=Be(15342),Re=Be(1012),Ie=Be(90853),be=Be(59301),je=({html:Ke})=>{const Ve=(0,He.useRef)(null),Je=(0,He.useRef)(null),tt=`.markdown-body p { margin: 0 0 16px 0 !important; line-height: 28px; white-space: pre-wrap; } ol, ul, li { list-style-type: none } ol, ul, dl { margin-bottom: 0px; } .markdown-body { -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%; color: #333; overflow: hidden; font-family: "Microsoft YaHei", Helvetica, "Meiryo UI", "Malgun Gothic", "Segoe UI", "Trebuchet MS", "Monaco", monospace, Tahoma, STXihei, "\u534E\u6587\u7EC6\u9ED1", STHeiti, "Helvetica Neue", "Droid Sans", "wenquanyi micro hei", FreeSans, Arimo, Arial, SimSun, "\u5B8B\u4F53", Heiti, "\u9ED1\u4F53", sans-serif; word-break: break-word; font-size: 16px; line-height: 1.6; white-space: normal; word-wrap: break-word; position: relative; } .markdown-body ul>li { list-style-type: disc; } .markdown-body ol>li { list-style-type: decimal; } .markdown-body a { background: transparent; } .markdown-body a:active, .markdown-body a:hover { outline: 0; } .markdown-body strong { font-weight: bold; } .markdown-body h1 { font-size: 2em; margin: 0.67em 0; } .markdown-body img { border: 0; } .markdown-body hr { -moz-box-sizing: content-box; box-sizing: content-box; height: 0; } .markdown-body pre { overflow: auto; } .markdown-body code, .markdown-body kbd, .markdown-body pre { font-family: "Meiryo UI", "YaHei Consolas Hybrid", Consolas, "Malgun Gothic", "Segoe UI", "Trebuchet MS", Helvetica, monospace, monospace; font-size: 1em; } .markdown-body input { color: inherit; font: inherit; margin: 0; } .markdown-body html input[disabled] { cursor: default; } .markdown-body input { line-height: normal; } .markdown-body input[type="checkbox"] { -moz-box-sizing: border-box; box-sizing: border-box; padding: 0; } .markdown-body table { border-collapse: collapse; border-spacing: 0; } .markdown-body td, .markdown-body th { padding: 0; } .markdown-body * { -moz-box-sizing: border-box; box-sizing: border-box; } .markdown-body input { font: 13px/1.4 Helvetica, arial, freesans, clean, sans-serif, "Segoe UI Emoji", "Segoe UI Symbol"; } .markdown-body a { color: #4183c4; text-decoration: none; } .markdown-body a:hover, .markdown-body a:active { text-decoration: underline; } .markdown-body hr { height: 0; margin: 15px 0; overflow: hidden; background: transparent; border: 0; border-bottom: 1px solid #ddd; } .markdown-body hr:before { display: table; content: ""; } .markdown-body hr:after { display: table; clear: both; content: ""; } .markdown-body h1, .markdown-body h2, .markdown-body h3, .markdown-body h4, .markdown-body h5, .markdown-body h6 { margin-top: 15px; margin-bottom: 15px; line-height: 1.1; } .markdown-body h1 { font-size: 30px; } .markdown-body h2 { font-size: 21px; } .markdown-body h3 { font-size: 16px; } .markdown-body h4 { font-size: 14px; } .markdown-body h5 { font-size: 12px; } .markdown-body h6 { font-size: 11px; } .markdown-body blockquote { margin: 0; } .markdown-body ul, .markdown-body ol { padding: 0; margin-top: 0; margin-bottom: 0; } ul.linenums, ol.linenums { padding: 16px 0 0 36px !important; } .markdown-body ul, .markdown-body ol { padding-left: 2em; } .markdown-body ol ol, .markdown-body ul ol { list-style-type: lower-roman; } .markdown-body ul ul ol, .markdown-body ul ol ol, .markdown-body ol ul ol, .markdown-body ol ol ol { list-style-type: lower-alpha; } .markdown-body dd { margin-left: 0; } .markdown-body code { font-family: Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 12px; } .markdown-body pre { margin-top: 0; margin-bottom: 0; font: 12px Consolas, "Liberation Mono", Menlo, Courier, monospace; } .markdown-body .octicon { font: normal normal 16px octicons-anchor; line-height: 1; display: inline-block; text-decoration: none; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; } .markdown-body .octicon-link:before { content: '\f05c'; } .markdown-body>*:first-child { margin-top: 0 !important; } .markdown-body>*:last-child { margin-bottom: 0 !important; } .markdown-body .anchor { position: absolute; top: 0; left: 0; display: block; padding-right: 6px; padding-left: 30px; margin-left: -30px; } .markdown-body .anchor:focus { outline: none; } .markdown-body h1, .markdown-body h2, .markdown-body h3, .markdown-body h4, .markdown-body h5, .markdown-body h6 { position: relative; margin-top: 1em; margin-bottom: 16px; font-weight: bold; line-height: 1.4; } .markdown-body h1 .octicon-link, .markdown-body h2 .octicon-link, .markdown-body h3 .octicon-link, .markdown-body h4 .octicon-link, .markdown-body h5 .octicon-link, .markdown-body h6 .octicon-link { display: none; color: #000; vertical-align: middle; } .markdown-body h1:hover .anchor, .markdown-body h2:hover .anchor, .markdown-body h3:hover .anchor, .markdown-body h4:hover .anchor, .markdown-body h5:hover .anchor, .markdown-body h6:hover .anchor { padding-left: 8px; margin-left: -30px; text-decoration: none; } .markdown-body h1:hover .anchor .octicon-link, .markdown-body h2:hover .anchor .octicon-link, .markdown-body h3:hover .anchor .octicon-link, .markdown-body h4:hover .anchor .octicon-link, .markdown-body h5:hover .anchor .octicon-link, .markdown-body h6:hover .anchor .octicon-link { display: inline-block; } .markdown-body h1 { padding-bottom: 0.3em; font-size: 2.25em; line-height: 1.2; border-bottom: 1px solid #eee; } .markdown-body h1 .anchor { line-height: 1; } .markdown-body h2 { padding-bottom: 0.3em; font-size: 1.75em; line-height: 1.225; border-bottom: 1px solid #eee; } .markdown-body h2 .anchor { line-height: 1; } .markdown-body h3 { font-size: 1.5em; line-height: 1.43; } .markdown-body h3 .anchor { line-height: 1.2; } .markdown-body h4 { font-size: 1.25em; } .markdown-body h4 .anchor { line-height: 1.2; } .markdown-body h5 { font-size: 1em; } .markdown-body h5 .anchor { line-height: 1.1; } .markdown-body h6 { font-size: 1em; color: #777; } .markdown-body h6 .anchor { line-height: 1.1; } .markdown-body p, .markdown-body blockquote, .markdown-body ul, .markdown-body ol, .markdown-body dl, .markdown-body table, .markdown-body pre { margin-top: 0; margin-bottom: 16px; } .markdown-body ul ul, .markdown-body ul ol, .markdown-body ol ol, .markdown-body ol ul { margin-top: 0; margin-bottom: 0; } .markdown-body li>p { margin-top: 16px; } .markdown-body dl { padding: 0; } .markdown-body dl dt { padding: 0; margin-top: 16px; font-size: 1em; font-style: italic; font-weight: bold; } .markdown-body dl dd { padding: 0 16px; margin-bottom: 16px; } .markdown-body blockquote { padding: 0 15px; color: #777; border-left: 4px solid #ddd; } .markdown-body blockquote> :first-child { margin-top: 0; } .markdown-body blockquote> :last-child { margin-bottom: 0; } .markdown-body table { display: block; width: 100%; overflow: auto; word-break: normal; word-break: keep-all; } .markdown-body table th { font-weight: bold; text-align: revert; } .markdown-body table th, .markdown-body table td { padding: 6px 13px; border: 1px solid #ddd; } .markdown-body table tr { background-color: #fff; border-top: 1px solid #ccc; } .markdown-body table tr:nth-child(2n) { background-color: #f8f8f8; } .markdown-body img { max-width: 100%; -moz-box-sizing: border-box; box-sizing: border-box; } .markdown-body code { padding: 0; padding-top: 0.2em; padding-bottom: 0.2em; margin: 0; font-size: 85%; background-color: rgba(0, 0, 0, 0.04); border-radius: 3px; } .markdown-body code:has(.katex) { background-color: transparent; } .markdown-body code:before, .markdown-body code:after { letter-spacing: -0.2em; content: "\\00a0"; } .markdown-body pre>code { padding: 0; margin: 0; font-size: 100%; word-break: normal; white-space: pre; background: transparent; border: 0; } .markdown-body .highlight { margin-bottom: 16px; } .markdown-body .highlight pre, .markdown-body pre { padding: 16px; overflow: auto; font-size: 85%; line-height: 1.45; background-color: #f7f7f7; border-radius: 3px; } .markdown-body .highlight pre { margin-bottom: 0; word-break: normal; } .markdown-body pre { word-wrap: normal; } .markdown-body pre code { display: inline; max-width: initial; padding: 0; margin: 0; overflow: initial; line-height: inherit; word-wrap: normal; background-color: transparent; border: 0; } .markdown-body pre code:before, .markdown-body pre code:after { content: normal; } .markdown-body kbd { display: inline-block; padding: 3px 5px; font-size: 11px; line-height: 10px; color: #555; vertical-align: middle; background-color: #fcfcfc; border: solid 1px #ccc; border-bottom-color: #bbb; border-radius: 3px; box-shadow: inset 0 -1px 0 #bbb; } .markdown-body .pl-c { color: #969896; } .markdown-body .pl-c1, .markdown-body .pl-mdh, .markdown-body .pl-mm, .markdown-body .pl-mp, .markdown-body .pl-mr, .markdown-body .pl-s1 .pl-v, .markdown-body .pl-s3, .markdown-body .pl-sc, .markdown-body .pl-sv { color: #0086b3; } .markdown-body .pl-e, .markdown-body .pl-en { color: #795da3; } .markdown-body .pl-s1 .pl-s2, .markdown-body .pl-smi, .markdown-body .pl-smp, .markdown-body .pl-stj, .markdown-body .pl-vo, .markdown-body .pl-vpf { color: #333; } .markdown-body .pl-ent { color: #63a35c; } .markdown-body .pl-k, .markdown-body .pl-s, .markdown-body .pl-st { color: #a71d5d; } .markdown-body .pl-pds, .markdown-body .pl-s1, .markdown-body .pl-s1 .pl-pse .pl-s2, .markdown-body .pl-sr, .markdown-body .pl-sr .pl-cce, .markdown-body .pl-sr .pl-sra, .markdown-body .pl-sr .pl-sre, .markdown-body .pl-src { color: #df5000; } .markdown-body .pl-mo, .markdown-body .pl-v { color: #1d3e81; } .markdown-body .pl-id { color: #b52a1d; } .markdown-body .pl-ii { background-color: #b52a1d; color: #f8f8f8; } .markdown-body .pl-sr .pl-cce { color: #63a35c; font-weight: bold; } .markdown-body .pl-ml { color: #693a17; } .markdown-body .pl-mh, .markdown-body .pl-mh .pl-en, .markdown-body .pl-ms { color: #1d3e81; font-weight: bold; } .markdown-body .pl-mq { color: #008080; } .markdown-body .pl-mi { color: #333; font-style: italic; } .markdown-body .pl-mb { color: #333; font-weight: bold; } .markdown-body .pl-md, .markdown-body .pl-mdhf { background-color: #ffecec; color: #bd2c00; } .markdown-body .pl-mdht, .markdown-body .pl-mi1 { background-color: #eaffea; color: #55a532; } .markdown-body .pl-mdr { color: #795da3; font-weight: bold; } .markdown-body kbd { display: inline-block; padding: 3px 5px; font: 11px Consolas, "Liberation Mono", Menlo, Courier, monospace; line-height: 10px; color: #555; vertical-align: middle; background-color: #fcfcfc; border: solid 1px #ccc; border-bottom-color: #bbb; border-radius: 3px; box-shadow: inset 0 -1px 0 #bbb; } .markdown-body .task-list-item { list-style-type: none; } .markdown-body .task-list-item+.task-list-item { margin-top: 3px; } .markdown-body .task-list-item input { float: left; margin: 0.3em 0 0.25em -1.6em; vertical-align: middle; } .markdown-body :checked+.radio-label { z-index: 1; position: relative; border-color: #4183c4; } /*! Pretty printing styles. Used with prettify.js. */ /* SPAN elements with the classes below are added by prettyprint. */ .pln { color: #000 } /* plain text */ @media screen { .str { color: #080 } /* string content */ .kwd { color: #008 } /* a keyword */ .com { color: #800 } /* a comment */ .typ { color: #606 } /* a type name */ .lit { color: #066 } /* a literal value */ /* punctuation, lisp open bracket, lisp close bracket */ .pun, .opn, .clo { color: #660 } .tag { color: #008 } /* a markup tag name */ .atn { color: #606 } /* a markup attribute name */ .atv { color: #080 } /* a markup attribute value */ .dec, .var { color: #606 } /* a declaration; a variable name */ .fun { color: red } /* a function name */ } /* Use higher contrast and text-weight for printable form. */ @media print, projection { .str { color: #060 } .kwd { color: #006; font-weight: bold } .com { color: #600; font-style: italic } .typ { color: #404; font-weight: bold } .lit { color: #044 } .pun, .opn, .clo { color: #440 } .tag { color: #006; font-weight: bold } .atn { color: #404 } .atv { color: #060 } } /* Put a border around prettyprinted code snippets. */ pre.prettyprint { padding: 2px; /* border: 1px solid #888 */ } /* Specify class=linenums on a pre to get line numbering */ ol.linenums { margin-top: 0; margin-bottom: 0 } /* IE indents via margin-left */ li.L0, li.L1, li.L2, li.L3, li.L5, li.L6, li.L7, li.L8 { list-style-type: none } /* Alternate shading for lines */ li.L1, li.L3, li.L5, li.L7, li.L9 { background: #eee } .markdown-body p, .markdown-body blockquote, .markdown-body ul, .markdown-body ol, .markdown-body dl, .markdown-body table, .markdown-body pre { margin-top: 0; margin-bottom: 16px; }`;return(0,He.useEffect)(()=>{const gt=Ve.current.attachShadow({mode:"open"});Je.current=document.createElement("div"),Je.current.className="markdown-body",Je.current.innerHTML=Ke,gt.appendChild(Je.current);const st=document.createElement("style");return st.textContent=tt,gt.appendChild(st),()=>{gt.innerHTML=""}},[]),(0,He.useEffect)(()=>{Je.current&&(Je.current.innerHTML=Ke)},[Ke]),be.createElement("div",{ref:Ve})},ye=Object.defineProperty,ie=Object.getOwnPropertySymbols,ae=Object.prototype.hasOwnProperty,fe=Object.prototype.propertyIsEnumerable,de=(Ke,Ve,Je)=>Ve in Ke?ye(Ke,Ve,{enumerable:!0,configurable:!0,writable:!0,value:Je}):Ke[Ve]=Je,ve=(Ke,Ve)=>{for(var Je in Ve||(Ve={}))ae.call(Ve,Je)&&de(Ke,Je,Ve[Je]);if(ie)for(var Je of ie(Ve))fe.call(Ve,Je)&&de(Ke,Je,Ve[Je]);return Ke};const xe="@\u2581\u2581@",he="@\u2581@",pe=/]*>/g;function Se(Ke){let Ve=document.createElement("div");return Ve.innerHTML=Ke,Ve.childNodes.length===0?"":Ve.childNodes[0].nodeValue}const Ne=(Ke,Ve)=>{Ke=Ke||"";const Je=/(?:https?:\/\/[^\/]+)?\/api\/attachments\/([A-Za-z0-9+/=]+)(\?.*?)?\)|(?:https?:\/\/[^\/]+)?\/api\/attachments\/([A-Za-z0-9+/=]+)(\?.*?)?|(?:https?:\/\/[^\/]+)?\/attachments\/download\/([A-Za-z0-9+/=]+)(\?.*?)?\//g,tt=/\"(?:https?:\/\/[^\/]+)?\/api\/attachments\/([A-Za-z0-9+/=]+)(\?.*?)?|\"(?:https?:\/\/[^\/]+)?\/attachments\/download\/([A-Za-z0-9+/=]+)(\?.*?)?\//g,gt=/\(\s+(?:https?:\/\/[^\/]+)?\/files\/uploads\/([A-Za-z0-9+/=]+)(\?.*?)?|\"(?:https?:\/\/[^\/]+)?\/files\/uploads\/([A-Za-z0-9+/=]+)(\?.*?)?\//g,st=/(?:https?:\/\/[^\/]+)?\/attachments\/download\/([A-Za-z0-9+/=]+)(\?.*?)?\//g;return Ve?Ke.replaceAll("https://www.educoder.net","").replaceAll("https://www-cdn.educoder.net","").replaceAll("//api/attachments","/api/attachments").replace(Je,(St,At,vt,Tt,bt,Et,lt)=>{const Nt=At||Tt||Et,Zt=vt||bt||lt||"?";return Oe.Z.API_SERVER+"/api/attachments/"+Nt+Zt+"&t="+(0,we.Jn)(Nt,Date.now())+(St.indexOf(")")>-1?")":"&")}).replaceAll('src="(','src="').replaceAll("src='(",'src="'):(Ke=Ke.replace(st,(St,At,vt,Tt,bt,Et,lt)=>{const Nt=At||Tt||Et,Zt=vt||bt||lt||"?";return Oe.Z.API_SERVER+"/attachments/download/"+Nt+Zt+"&t="+(0,we.Jn)(Nt,Date.now())+(St.indexOf(")")>-1?")":"&")}).replace(Je,(St,At,vt,Tt,bt,Et,lt)=>{const Nt=At||Tt||Et,Zt=vt||bt||lt||"?";return Oe.Z.API_SERVER+"/api/attachments/"+Nt+Zt+"&t="+(0,we.Jn)(Nt,Date.now())+(St.indexOf(")")>-1?")":"&")}).replace(tt,(St,At,vt,Tt,bt)=>{const Et=At||Tt,lt=vt||bt||"";return'"'+Oe.Z.API_SERVER+"/api/attachments/"+Et+lt+Et+lt+"&t="+(0,we.Jn)(Et,Date.now())}).replace(gt,(St,At,vt,Tt,bt)=>{const Et=At||Tt,lt=vt||bt||"";return"("+Oe.Z.API_SERVER+"/files/uploads/"+Et+lt+Et+lt+"&t="+(0,we.Jn)(Et,Date.now())}).replaceAll('src="(','src="').replaceAll("src='(",'src="').replaceAll("http://video.educoder","https://video.educoder").replaceAll("http://www.educoder.net/api","https://data.educoder.net/api").replaceAll("https://www.educoder.net/api","https://data.educoder.net/api").replace(/\r\n/g,` `),Ke)};var ze=({value:Ke="",className:Ve,showTextOnly:Je,showLines:tt,style:gt={},stylesPrev:st={},highlightKeywords:St,showProgramFill:At,isProgramFill:vt,disabledFill:Tt=!1,programFillValue:bt,onFillChange:Et=Zt=>{},onFillBlur:lt=()=>{},onFillFocus:Nt=()=>{}})=>{let Zt=String(Ke);const[Ut,Ft]=(0,He.useState)(""),[Yt,dn]=(0,He.useState)("office"),[Dn,Rn]=(0,He.useState)([]),Zn=(0,He.useRef)("a"+(0,Re.Z)()),ln={},Gn=(on,$t,Jt)=>{const xn=document.createElement(on===he?"input":"textarea");xn.style.width="100%",xn.style.height=on===he?"40px":"151px",xn.rows=5,xn.spellcheck=!1,xn.name="edu-program-fill",xn.placeholder="\u8BF7\u8F93\u5165",xn.dataset.id=$t;const Qn=Object.keys(ln).length;return ln[Qn]=xn,`${xn.outerHTML}`};function Wn(on){return on=on.replace(/!\[.*?\]\(.*?\)/g,""),on=on.replace(/\[.*?\]\(.*?\)/g,""),on=on.replace(new RegExp("","gs"),""),on=on.replace(//g,""),on=on.replace(//g,""),on=on.replace(new RegExp(".*?<\\/video>","gs"),""),on=on.replace(new RegExp(".*?<\\/audio>","gs"),""),on=on.replace(new RegExp(".*?<\\/style>","gs"),""),on=on.replace(new RegExp(".*?<\\/script>","gs"),""),on}const qt=on=>on.replace(/([\s\S]+?)<\/style>/gim,function($t,Jt){let xn=Jt.replace(/(\n|\r)/g,"").split("}"),Qn=[];return xn.map(rr=>{rr!=""&&Qn.push(`.${Zn.current} ${rr}`)}),``}),xt=(0,He.useMemo)(()=>{try{const xn=/\(\s+\/api\/attachments\/|\(\/api\/attachments\//g,Qn=/\"\/api\/attachments\/|\"\/attachments\/download\//g,rr=/\(\s+\/files\/uploads\/|\"\/files\/uploads\//g,Jn=/\(\/attachments\/download\//g;Zt=Zt.replace(Jn,"("+Oe.Z.API_SERVER+"/attachments/download/").replace(xn,"("+Oe.Z.API_SERVER+"/api/attachments/").replace(Qn,'"'+Oe.Z.API_SERVER+"/api/attachments/").replace(rr,'"'+Oe.Z.API_SERVER+"/files/uploads/").replaceAll("http://video.educoder","https://video.educoder").replaceAll("http://www.educoder.net/api","https://data.educoder.net/api").replaceAll("https://www.educoder.net/api","https://data.educoder.net/api").replace(/\r\n/g,` `)}catch(xn){}if(At){let xn=-1;return Zt=Zt.replaceAll("<","<").replaceAll(">",">").replace(/(@▁▁@|@▁@)/g,function(Qn,rr,Jn){var mr;return++xn,Gn(Qn,xn,(mr=bt==null?void 0:bt[xn])==null?void 0:mr.value.replaceAll("<","<").replaceAll(">",">"))}),`
${qt(Zt||"")}
`}let on=qt(Zt);on=(0,Ge.ZP)(on);const $t=(0,Ge.ez)();Zt.match(/\[TOC\]/)&&(on=on.replace("

[TOC]

",(0,Ge.Qv)()),(0,Ge.Iy)()),on=on.replace(/(__special_katext_id_\d+__)/g,(xn,Qn)=>{const{type:rr,expression:Jn}=$t[Qn];return(0,Te.renderToString)(Se(Jn)||"",{displayMode:rr==="block",throwOnError:!1,output:"html"})}),on=on.replace(/▁/g,"\u2581\u2581\u2581\u2581\u2581"),(0,Ge.AL)();const Jt=document.createElement("div");if(Jt.innerHTML=on,Je)return Jt.innerText;if(St){const xn=St.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return ut(Jt,xn),Jt.innerHTML}return setTimeout(()=>Pt(),500),Jt.innerHTML},[Zt,St]);(0,He.useEffect)(()=>{It.current&&It.current.querySelectorAll(["input","textarea"]).forEach($t=>{$t.oninput=ft,$t.onblur=Bt,$t.onfocus=Ot})},[Dn]),(0,He.useEffect)(()=>{var on,$t,Jt,xn,Qn;if(bt!=null&&bt.length)try{const rr=It.current.querySelectorAll(".edu-program-fill-score"),Jn=It.current.querySelectorAll('[name="edu-program-fill"]');for(const[mr,Rr]of Jn.entries())Rr.value=((on=bt==null?void 0:bt[mr])==null?void 0:on.value)||"",(($t=bt==null?void 0:bt[mr])==null?void 0:$t.type)==="warning"?Rr.className="program-fill-warning":((Jt=bt==null?void 0:bt[mr])==null?void 0:Jt.type)==="success"?Rr.className="program-fill-success":Rr.className="";for(const[mr,Rr]of rr.entries())Rr.innerHTML=(xn=bt==null?void 0:bt[mr])!=null&&xn.score?`${(Qn=bt==null?void 0:bt[mr])==null?void 0:Qn.score}\u5206`:"";Rn(bt)}catch(rr){console.log(rr,"error")}},[bt]);const ft=on=>{Dn[on.target.dataset.id]=Dn[on.target.dataset.id]||{},Dn[on.target.dataset.id].value=on.target.value,Rn([...Dn]),Et(Dn,on.target.dataset.id)},Bt=on=>{Dn[on.target.dataset.id]=Dn[on.target.dataset.id]||{},Dn[on.target.dataset.id].value=on.target.value,Rn([...Dn]),lt(Dn,on.target.dataset.id)},Ot=on=>{Dn[on.target.dataset.id]=Dn[on.target.dataset.id]||{},Dn[on.target.dataset.id].value=on.target.value,Rn([...Dn]),Nt(Dn,on.target.dataset.id)};function ut(on,$t){return on.childNodes.forEach(Jt=>{var xn;if(Jt.childNodes.length>0)ut(Jt,$t);else if(Jt.nodeName!=="IMG")if(Jt.innerHTML)Jt.innerHTML=(xn=Jt.innerHTML)==null?void 0:xn.replace(new RegExp($t,"gi"),'$&');else{const Qn=document.createElement("span");Qn.innerHTML=Jt.textContent.replace(new RegExp($t,"gi"),'$&'),Jt.replaceWith(Qn)}})}const It=(0,He.useRef)();Ge.jb.WebkitLineClamp=tt,tt&&(gt=ve(ve({},gt),Ge.jb));function nn(on){let $t=on.target;if($t.tagName.toUpperCase()==="A"){let Jt=$t.getAttribute("href");if(Jt.indexOf("office")>-1)on.preventDefault(),Ft(Jt),dn("office");else if(Jt.indexOf("application/pdf")>-1)on.preventDefault(),Ft(Jt),dn("pdf");else if(Jt.indexOf("text/html")>-1)on.preventDefault(),Ft(Jt),dn("html");else if(Jt.startsWith("#")){on.preventDefault();let xn=document.getElementById(Jt.replace("#",""));xn&&xn.scrollIntoView(!0)}}}const Pt=()=>{var on;const $t=(on=It.current)==null?void 0:on.querySelectorAll("video");$t==null||$t.forEach(Jt=>{if(Jt.oncontextmenu=()=>!1,Jt.src.indexOf(".m3u8")>-1&&!Jt.canPlayType("application/vnd.apple.mpegurl")){if(Ze.ZP.isSupported()){var xn=new Ze.ZP;xn.loadSource(Jt.src),xn.attachMedia(Jt)}}})};(0,He.useEffect)(()=>{if(It.current&&xt&&xt.match(pe)&&window.PR.prettyPrint(),It.current)return It.current.addEventListener("click",nn),()=>{var on;(on=It.current)==null||on.removeEventListener("click",nn),(0,Ge.AL)(),(0,Ge.Iy)()}},[xt,It.current,nn]),(0,He.useEffect)(()=>{var on;const $t=Jt=>{Jt.preventDefault(),Jt.clipboardData.setData("text",window.getSelection().toString())};return(on=It.current)==null||on.addEventListener("copy",$t),()=>{var Jt;(Jt=It.current)==null||Jt.removeEventListener("copy",$t)}},[It.current]);const Vt=on=>//i.test(on||"");return He.createElement(He.Fragment,null,Je&&He.createElement("div",{ref:It},xt),!Je&&!Vt(xt)&&He.createElement("div",{ref:It,style:ve({},gt),className:`${Ve||""} ${Tt?"disabled-fill":""} markdown-body ${Zn.current}`,dangerouslySetInnerHTML:{__html:xt}}),!Je&&Vt(xt)&&He.createElement(je,{html:xt}),He.createElement(Ie.Z,{close:!0,data:Ut,type:Ut!=null&&Ut.length?Yt:"",style:ve({},st),onClose:()=>Ft("")}))}},67732:function(sn,an,Be){"use strict";var He=Be(59301),et=Be(78241),Ge=Be(95237),ke=Be(57809),Ze=Be(92832),Oe=Be(88522),we=Be(3113),Te=Be(24905),Re=Be(6848),Ie=Be(8591),be=Be(1710),Pe=Be(24459),je=Be(61186),ye=Be.n(je),ie=Be(26724),ae=Be.n(ie),fe=Be(58143),de=Be(94811),ve=Be(15965),xe=Be(13669),he=Be(59301),pe=Object.defineProperty,Se=Object.defineProperties,Ne=Object.getOwnPropertyDescriptors,ze=Object.getOwnPropertySymbols,Ke=Object.prototype.hasOwnProperty,Ve=Object.prototype.propertyIsEnumerable,Je=(Et,lt,Nt)=>lt in Et?pe(Et,lt,{enumerable:!0,configurable:!0,writable:!0,value:Nt}):Et[lt]=Nt,tt=(Et,lt)=>{for(var Nt in lt||(lt={}))Ke.call(lt,Nt)&&Je(Et,Nt,lt[Nt]);if(ze)for(var Nt of ze(lt))Ve.call(lt,Nt)&&Je(Et,Nt,lt[Nt]);return Et},gt=(Et,lt)=>Se(Et,Ne(lt)),st=(Et,lt,Nt)=>new Promise((Zt,Ut)=>{var Ft=Dn=>{try{dn(Nt.next(Dn))}catch(Rn){Ut(Rn)}},Yt=Dn=>{try{dn(Nt.throw(Dn))}catch(Rn){Ut(Rn)}},dn=Dn=>Dn.done?Zt(Dn.value):Promise.resolve(Dn.value).then(Ft,Yt);dn((Nt=Nt.apply(Et,lt)).next())});const St=[];function At({onSearch:Et,schools:lt}){return he.createElement(et.default,{colon:!1,layout:"horizontal",onFinish:Et,initialValues:{keyword:"",school_name:"",search_type:"1"}},he.createElement(Ge.Z,{style:{flexWrap:"nowrap"}},he.createElement(et.default.Item,{name:"search_type",label:"\u641C\u7D22\u7C7B\u578B"},he.createElement(ke.default,{popupClassName:xe.Z.selectdown,style:{width:106}},he.createElement(ke.default.Option,{value:"1"},"\u59D3\u540D"),he.createElement(ke.default.Option,{value:"2"},"\u624B\u673A\u53F7"),he.createElement(ke.default.Option,{value:"3"},"\u90AE\u7BB1"))),he.createElement(et.default.Item,{style:{marginLeft:20},label:"\u641C\u7D22\u5185\u5BB9",name:"keyword",rules:[{required:!0,message:"\u8BF7\u8F93\u5165\u641C\u7D22\u5185\u5BB9"}]},he.createElement(Ze.default,{allowClear:!0,style:{width:300},size:"middle"})),he.createElement(et.default.Item,{style:{marginLeft:20},label:"\u5355\u4F4D",name:"school_name"},he.createElement(Oe.Z,{options:lt,style:{width:300},size:"middle",showSearch:!0,filterOption:(Nt,Zt)=>Zt.value.toUpperCase().indexOf(Nt.toUpperCase())!==-1,placeholder:"\u8BF7\u8F93\u5165\u5355\u4F4D\u540D\u79F0"})),he.createElement(we.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 vt=(Et=>(Et[Et.INITDATA=0]="INITDATA",Et[Et.INITSCHOOLS=1]="INITSCHOOLS",Et[Et.SHOWLOADING=2]="SHOWLOADING",Et[Et.SELECTEDIDS=3]="SELECTEDIDS",Et[Et.SETQUERY=4]="SETQUERY",Et[Et.SETPAGE=5]="SETPAGE",Et))(vt||{});function Tt(Et,lt){switch(lt.type){case 0:return tt(tt({},Et),lt.payload);case 4:return tt(tt({},Et),lt.payload);case 5:return gt(tt({},Et),{page:lt.payload,reload:!1});case 2:return gt(tt({},Et),{loading:lt.payload});case 1:return gt(tt({},Et),{schools:lt.payload});case 3:return gt(tt({},Et),{selectedIds:lt.payload});default:throw new Error}}const bt={data:[],schools:[],loading:!1,selectedIds:[],query:null,page:1,count:0,reload:!1};an.Z=({onSelect:Et,onCancel:lt,container_id:Nt,container_type:Zt})=>{const[Ut,Ft]=(0,He.useReducer)(Tt,bt),{data:Yt,schools:dn,loading:Dn,selectedIds:Rn,page:Zn,count:ln,query:Gn,reload:Wn}=Ut;(0,He.useEffect)(()=>{function It(){return st(this,null,function*(){const{users:nn,user_count:Pt}=yield(0,de.nQ)(gt(tt({},Gn),{page:Zn,container_type:Zt,container_id:Nt,display_aliases:!0}));Ft({type:0,payload:{data:Wn?nn:[...Yt,...nn],count:Pt}})})}Gn&&It()},[Zn,Gn,Wn,Nt,Zt]),(0,He.useEffect)(()=>{function It(){return st(this,null,function*(){const{school_names:nn}=yield(0,de.K$)({display_aliases:!0});Ft({type:1,payload:nn.map(Pt=>({value:Pt}))})})}It()},[]);const qt=[{title:"",dataIndex:"added",width:40,ellipsis:!0,render:(It,nn)=>he.createElement(Te.default,{value:nn.numid,checked:Rn.includes(nn.numid),disabled:!!It})},{title:"\u59D3\u540D",width:100,ellipsis:!0,align:"left",dataIndex:"username",render:(It,nn)=>he.createElement("div",null,he.createElement(Re.Z,{placement:"bottom",title:It},he.createElement(Pe.Link,{style:{color:"#000000"},className:"bold c-black",to:`/users/${nn.login}`,target:"_blank"},It||"--")))},{title:"\u624B\u673A",width:100,dataIndex:"phone",ellipsis:!0,render:It=>he.createElement(Re.Z,{placement:"bottom",title:It},he.createElement("span",{style:{color:"#000000"}},It||"--"))},{title:"\u90AE\u7BB1",dataIndex:"email",width:100,ellipsis:!0,render:It=>he.createElement(Re.Z,{placement:"bottom",title:It},he.createElement("span",{style:{color:"#000000"}},It||"--"))},{title:"\u5B66\u53F7/\u5DE5\u53F7",width:100,dataIndex:"student_number",ellipsis:!0,render:It=>he.createElement(Re.Z,{placement:"bottom",title:It},he.createElement("span",{style:{color:"#000000"}},It||"--"))},{title:"\u5B66\u6821/\u5355\u4F4D",width:150,dataIndex:"school_name",ellipsis:!0,render:It=>he.createElement(Re.Z,{placement:"bottom",title:It},he.createElement("span",{style:{color:"#000000"}},It||"--"))},{title:"\u9662\u7CFB/\u90E8\u95E8",dataIndex:"depart_name",width:130,ellipsis:!0,render:It=>he.createElement(Re.Z,{placement:"bottom",title:It},he.createElement("span",{style:{color:"#000000"}},It||"--"))},{title:"\u5B9E\u540D\u8BA4\u8BC1",dataIndex:"auth",width:100,render:It=>he.createElement("span",{style:{color:"#000000"}},It?"\u662F":"\u5426")},{title:"\u6700\u540E\u767B\u5F55\u65F6\u95F4",dataIndex:"last_login_on",width:140,ellipsis:!0,render:It=>he.createElement(Re.Z,{placement:"bottom",title:It},he.createElement("span",{style:{color:"#000000"}},ye()(It).format("YYYY-MM-DD HH:mm")))},{title:"\u72B6\u6001",dataIndex:"added",width:80,render:It=>{if(It===1)return he.createElement("span",{style:{color:"#000000"}},"\u5DF2\u6DFB\u52A0")}}];function xt(It){Ft({type:4,payload:{page:1,reload:!0,query:It}})}function ft(It){Ft({type:5,payload:It})}function Bt(It){let nn=Rn.indexOf(It);nn>=0?Rn.splice(nn,1):Rn.push(It),Ft({type:3,payload:[...Rn]})}function Ot(){Rn.length===0?Ie.ZP.warning("\u8BF7\u5148\u5728\u4E0B\u9762\u5217\u8868\u4E2D\u9009\u62E9\u8981\u6DFB\u52A0\u6210\u5458"):(Et(Rn,Nt),Ft({type:0,payload:{data:[],count:0,page:1,selectedIds:[],query:null,reload:!1}}))}const ut=ln>Zn*10;return he.createElement("div",{className:"select-user-container",style:{paddingBottom:20}},he.createElement(At,{onSearch:xt,schools:dn}),Gn?he.createElement(he.Fragment,null,he.createElement("div",{className:"flexd-table-header mt20"},he.createElement(ve.Gi,null,he.createElement(be.default,{pagination:!1,dataSource:St,columns:qt}))),he.createElement("div",{style:{maxHeight:260,overflow:"auto",marginBottom:20}},he.createElement(ae(),{initialLoad:!1,pageStart:1,threshold:20,loadMore:ft,hasMore:ut,useWindow:!1},he.createElement(ve.Gi,null,he.createElement(be.default,{loading:Dn,showHeader:!1,pagination:!1,dataSource:Yt,columns:qt,onRow:It=>({onClick:nn=>{It.added!==1&&Bt(It.numid)}})})))),he.createElement("div",{className:"flex-container flex-end"},he.createElement(we.ZP,{type:"ghost",style:{marginRight:10,border:"1px solid #C3CFE0",color:"#464F66"},onClick:lt},"\u53D6\u6D88"),he.createElement(we.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:Ot},"\u786E\u5B9A"))):he.createElement("div",{className:"tc font16 c-light-black mt40 pb30"},he.createElement("img",{src:fe,width:"100",alt:""}),he.createElement("br",null),he.createElement("p",{className:"mt20"},"\u8BF7\u641C\u7D22\u8981\u6DFB\u52A0\u7684\u4EBA\u5458")))}},20527:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return Te}});var He=Be(59301),et={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"},Ge=Be(43418),ke="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAPCAYAAADUFP50AAAAAXNSR0IArs4c6QAAAUFJREFUOE+V0ktKw1AUxvH/rVqIxT4wkgwEUSmK4APRBfiYCKU7cOZEBOkadAMZiwhuwJETBQciFRTtwJkPBLW2BRGrRanU9kpN2sSYiGaWc/PjuznnCN2Qh8AkPo+AzXxKLLiPhW7ICtDqB4GzQkqM/huGFZgZcDCBBDaaicsTMKbZH2xfwdY5/ICAEGSasC0AwRYblj+gKkENwfy4WS9V4LHsgsk49EZteJKHdBa6w7AybdZzr3D64ILxGKjtNrx9gfsSRBSYtf6xZh1/u+qQClrIhtdFuHmGvhisJcz65RPsZl2Jc/3QE7FhpgDHuT80x2+O9cR1K/GiCDt3rkQ/+Ns43gDFD0YVmHIuQGOOmiGTARhxwkGd1cZ7Vwd0OppWr3911StpcV++Iwn67q/kyBMuHchErcqwFxT1XZXsfQJqo2zI6kdI4QAAAABJRU5ErkJggg==",Ze="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAAAXNSR0IArs4c6QAAAW1JREFUOE+dkj1IQmEUht9z/blp4VQEjS39eW+oSCFCpFCI4BiKFGWWQUSrCjVVg+lQNJZQDZGNTm1B4NTibS3n2lo0wuqEN8i/a0HfeN7v+d73nO+QJEcKAJzQPAwCnSpKNtoqkyRHqgDrtUFAb6Rnedx43KgT6O5P0GQijFiNLe/Sy3/B8g+YTIRRrb5jP32JYNADr8eOldU0RJEqVlm8r1kyuA/AIEB10OWy4vBgA4ryCIdjCJlMDmfn1zAY6EmyGY/UrAwrgGATWKsn4mGEQl4Uiw+YX9hT73aZiEcl8eMbZAGA0AT6/ZPY3Ykiny/A55tA7uoGqdQFBD2VbDbDugoSTTEj3gTGYgG8Vt7UeG63hNkZJ7a2s+gw1XqPnf5REKhkt4kxNakO08ycbOtRC/7FcakCwNTJ0WwmDI+1LUCZZDkSYGa5Eewf0G0KAnprNYtFQHdPbZhNS1cmLafF5bUTJsyBSVMHPm+/ADTrfrtCH68WAAAAAElFTkSuQmCC",Oe=(Re,Ie,be)=>new Promise((Pe,je)=>{var ye=fe=>{try{ae(be.next(fe))}catch(de){je(de)}},ie=fe=>{try{ae(be.throw(fe))}catch(de){je(de)}},ae=fe=>fe.done?Pe(fe.value):Promise.resolve(fe.value).then(ye,ie);ae((be=be.apply(Re,Ie)).next())}),Te=({type:Re,resdata:Ie,onok:be,oktext:Pe,okloading:je})=>{const[ye,ie]=(0,He.useState)(!1),{can_copy_list:ae,can_copy_num:fe,challenge_type:de,course_data_list:ve,no_copy_list:xe,no_copy_num:he,no_use_list:pe,no_use_num:Se,repeat_shixun_num:Ne,student_count:ze,total_num:Ke,use_num:Ve}=Ie;let Je=fe>0||Re==="exercise";(0,He.useEffect)(()=>{(Ie==null?void 0:Ie.student_count)>0&&ie(!0)},[Ie]),console.log("---11",je),(0,He.useEffect)(()=>{je||ie(!1)},[je]);const tt=()=>{if(Re==="exercise"&&de===1)return He.createElement(He.Fragment,null,"\u8BFE\u5802\u5185\u6709",He.createElement("span",{className:et.orangeColor},ze),"\u540D\u5B66\u751F\u5DF2\u5728\u5176\u4ED6\u8003\u8BD5\u4E2D\u6311\u6218\u8FC7\u5176\u4E2D\u7684",He.createElement("span",{className:et.orangeColor},Ve),"\u4E2A\u5B9E\u8DF5\u9879\u76EE\uFF0C",He.createElement("span",{className:et.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(Re==="exercise"&&de===2)return He.createElement(He.Fragment,null,"\u8BFE\u5802\u5185\u6709",He.createElement("span",{className:et.orangeColor},ze),"\u540D\u5B66\u751F\u5DF2\u5728\u8BFE\u5802\u5B9E\u9A8C\u4E2D\u6311\u6218\u8FC7\u5176\u4E2D\u7684",He.createElement("span",{className:et.orangeColor},Ve),"\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",He.createElement("span",{className:et.redColor},"\u91CD\u590D\u53D1\u5E03\u4F1A\u5BFC\u81F4\u8FD9\u90E8\u5206\u5B66\u751F\u65E0\u6CD5\u518D\u63D0\u4EA4\u4F5C\u4E1A\u3002"));if(Re==="shixun"&&de===1)return He.createElement(He.Fragment,null,"\u8BFE\u5802\u5185\u6709",He.createElement("span",{className:et.orangeColor},ze),"\u540D\u5B66\u751F\u5DF2\u5728\u8003\u8BD5\u4E2D\u6311\u6218\u8FC7\u8BE5\u5B9E\u8DF5\u9879\u76EE\uFF0C",He.createElement("span",{className:et.redColor},"\u91CD\u590D\u53D1\u9001\u4F1A\u5BFC\u81F4\u8FD9\u90E8\u5206\u5B66\u751F\u65E0\u6CD5\u518D\u63D0\u4EA4\u4F5C\u4E1A\u3002"));if(Re==="shixun"&&de===2)return He.createElement(He.Fragment,null,"\u8BFE\u5802\u5185\u6709",He.createElement("span",{className:et.orangeColor},ze),"\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",He.createElement("span",{className:et.redColor},"\u91CD\u590D\u53D1\u9001\u4F1A\u5BFC\u81F4\u8FD9\u90E8\u5206\u5B66\u751F\u65E0\u6CD5\u518D\u63D0\u4EA4\u4F5C\u4E1A\u3002"));if(Re==="subject"&&de===1)return He.createElement(He.Fragment,null,"\u8BFE\u5802\u5185\u6709",He.createElement("span",{className:et.orangeColor},ze),"\u540D\u5B66\u751F\u5DF2\u5728\u8003\u8BD5\u4E2D\u6311\u6218\u8FC7\u5176\u4E2D\u7684",He.createElement("span",{className:et.orangeColor},Ve),"\u4E2A\u5B9E\u8DF5\u9879\u76EE\uFF0C",He.createElement("span",{className:et.redColor},"\u91CD\u590D\u53D1\u9001\u4F1A\u5BFC\u81F4\u8FD9\u90E8\u5206\u5B66\u751F\u65E0\u6CD5\u518D\u63D0\u4EA4\u4F5C\u4E1A\u3002"));if(Re==="subject"&&de===2)return He.createElement(He.Fragment,null,"\u8BFE\u5802\u5185\u6709 ",He.createElement("span",{className:et.orangeColor},ze)," \u540D\u5B66\u751F\u5DF2\u5728\u8BFE\u5802\u5B9E\u9A8C\u6311\u6218\u8FC7\u5176\u4E2D\u7684 ",He.createElement("span",{className:et.orangeColor},Ve)," \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",He.createElement("span",{className:et.redColor},"\u91CD\u590D\u53D1\u9001\u4F1A\u5BFC\u81F4\u8FD9\u90E8\u5206\u5B66\u751F\u65E0\u6CD5\u518D\u63D0\u4EA4\u4F5C\u4E1A\u3002"));if(Re==="exercisepush")return He.createElement(He.Fragment,null,"\u8BFE\u5802\u5185\u6709",He.createElement("span",{className:et.orangeColor},ze),"\u540D\u5B66\u751F\u5DF2\u5728\u5176\u4ED6\u8003\u8BD5\u4E2D\u6311\u6218\u8FC7\u8BD5\u5377\u4E2D\u7684",He.createElement("span",{className:et.orangeColor},Ve),"\u4E2A\u5B9E\u8DF5\u9879\u76EE \uFF0C",He.createElement("span",{className:et.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(Re==="shixunpush"&&de===1)return He.createElement(He.Fragment,null,"\u8BFE\u5802\u5185\u6709",He.createElement("span",{className:et.orangeColor},ze),"\u540D\u5B66\u751F\u5DF2\u5728\u8003\u8BD5\u4E2D\u6311\u6218\u8FC7\u5176\u4E2D\u7684",He.createElement("span",{className:et.orangeColor},Ve),"\u4E2A\u5B9E\u8DF5\u9879\u76EE\uFF0C",He.createElement("span",{className:et.redColor},"\u91CD\u590D\u53D1\u5E03\u4F1A\u5BFC\u81F4\u8FD9\u90E8\u5206\u5B66\u751F\u65E0\u6CD5\u518D\u63D0\u4EA4\u4F5C\u4E1A\u3002"));if(Re==="shixunpush"&&de===2)return He.createElement(He.Fragment,null,"\u8BFE\u5802\u5185\u6709",He.createElement("span",{className:et.orangeColor},ze),"\u540D\u5B66\u751F\u5DF2\u5728\u8BFE\u5802\u5B9E\u9A8C\u4E2D\u6311\u6218\u8FC7",He.createElement("span",{className:et.orangeColor},Ve),"\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",He.createElement("span",{className:et.redColor},"\u91CD\u590D\u53D1\u5E03\u4F1A\u5BFC\u81F4\u8FD9\u90E8\u5206\u5B66\u751F\u65E0\u6CD5\u518D\u63D0\u4EA4\u4F5C\u4E1A\u3002"))},gt=()=>{if(Re==="exercise"||Re==="subject"||Re==="exercisepush"||Re==="shixunpush")return He.createElement("div",{style:{marginTop:20}},he>0&&He.createElement("div",null,He.createElement("span",{className:et.flex},He.createElement("img",{src:Ze,style:{width:14}}),He.createElement("span",{className:et.statustitle},"\u4E0D\u652F\u6301\u590D\u5236\u7684\u5B9E\u8DF5\u9879\u76EE")),He.createElement("div",{className:et.statusbody},Re==="exercise"&&He.createElement("div",{style:{marginBottom:15}},"\u6CA1\u6709\u590D\u5236\u6743\u9650\u7684\u5B9E\u8DF5\u9879\u76EE\uFF0C",He.createElement("span",{className:et.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"),(Re==="subject"||Re==="exercisepush")&&He.createElement("div",{style:{marginBottom:15}},"\u6CA1\u6709\u590D\u5236\u6743\u9650\u7684\u5B9E\u8DF5\u9879\u76EE\uFF0C",Je&&He.createElement("span",{className:et.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"),Re==="shixunpush"&&He.createElement("div",{style:{marginBottom:15}},"\u6CA1\u6709\u590D\u5236\u6743\u9650\u7684\u5B9E\u8DF5\u9879\u76EE\uFF0C",Je&&He.createElement("span",{className:et.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"),He.createElement("div",null,xe==null?void 0:xe.map((st,St)=>He.createElement("a",{href:`/shixuns/${st.identifier}/challenges`,target:"_blank"},"\u300A",st==null?void 0:st.name,"\u300B",St+1!==he&&"\u3001"))))),fe>0&&He.createElement("div",{style:{marginTop:20}},He.createElement("span",{className:et.flex},He.createElement("img",{src:ke,style:{width:14}}),He.createElement("span",{className:et.statustitle},"\u652F\u6301\u590D\u5236\u7684\u5B9E\u8DF5\u9879\u76EE")),He.createElement("div",{className:et.statusbody},Re==="exercise"&&He.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"),(Re==="subject"||Re==="exercisepush")&&He.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"),Re==="shixunpush"&&He.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"),He.createElement("div",null,ae==null?void 0:ae.map((st,St)=>He.createElement("a",{href:`/shixuns/${st.identifier}/challenges`,target:"_blank"},"\u300A",st==null?void 0:st.name,"\u300B",St+1!==fe&&"\u3001"))))));if(Re==="shixun")return He.createElement("div",{style:{marginTop:20}},fe>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 He.createElement(Ge.default,{open:ye,onCancel:()=>{ie(!1)},cancelText:"\u53D6\u6D88",title:"\u63D0\u793A",width:700,centered:!0,cancelButtonProps:{style:{display:!Je&&"none"}},zIndex:1003,confirmLoading:je,okText:Je?Pe:"\u6211\u77E5\u9053\u4E86",onOk:()=>Oe(void 0,null,function*(){Je?yield be([...ae,...pe]):ie(!1)})},He.createElement("div",{style:{maxHeight:600,overflow:"auto"}},tt(),gt()))}},71628:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return ie}});var He=Be(59301),et=Be(8591),Ge=Be(38854),ke=Be(44860),Ze=Be(40846),Oe=Be(73898),we=Be(56102),Te=Be(20736),Re={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"},Ie=(ae,fe,de)=>new Promise((ve,xe)=>{var he=Ne=>{try{Se(de.next(Ne))}catch(ze){xe(ze)}},pe=Ne=>{try{Se(de.throw(Ne))}catch(ze){xe(ze)}},Se=Ne=>Ne.done?ve(Ne.value):Promise.resolve(Ne.value).then(he,pe);Se((de=de.apply(ae,fe)).next())});function be(ae){if(isNaN(ae))return{minutes:"00",seconds:"00"};const fe=new Date(ae*1e3).toISOString().substr(11,8);return{hour:fe.substr(0,2),minutes:fe.substr(3,2),seconds:fe.substr(6,2)}}Object.defineProperty(HTMLMediaElement.prototype,"playing",{get:function(){return this.currentTime>0&&!this.paused&&!this.ended&&this.readyState>2}});function Pe(ae,fe){return ae-fe}function je(ae){ae.sort(Pe);let fe=0;for(let de=0;de{},handlePlay:Ne=()=>{},handlePlayEnded:ze=()=>{},autoPlay:Ke=!1,onPlayEnded:Ve=()=>{},isShowWaterMark:Je=!0},tt)=>{var gt;fe=fe==null?void 0:fe.replace("http://","https://");const St=((gt=fe==null?void 0:fe.split("."))==null?void 0:gt.pop())==="flv",At=(0,He.useRef)(),vt=(0,He.useRef)(),Tt=(0,He.useRef)(),bt=(0,He.useRef)(),Et=(0,He.useRef)(),lt=(0,He.useRef)(),Nt=(0,He.useRef)(),Zt=(0,He.useRef)(),Ut=(0,He.useRef)(),Ft=(0,He.useRef)(),Yt=(0,He.useRef)(),dn=(0,He.useRef)(),Dn=(0,He.useRef)(),Rn=(0,He.useRef)(),Zn=navigator.userAgent.toLowerCase().match(ye),ln=Zn?Zn[0]:"pc",Gn=(0,He.useRef)(!1),Wn=(0,Oe.eY)();let qt=0,xt=0,ft=0,Bt=null,Ot=!1,ut=20,It=1,nn=!1,Pt=!1,Vt=[];(0,He.useImperativeHandle)(tt,()=>({getLastUpdatedTime:()=>At.current.currentTime,getDuration:()=>At.current.duration})),et.ZP.config({maxCount:1,getContainer:()=>Tt.current});const on=(0,He.useCallback)((mr,Rr=!1)=>{let Tn={point:At.current.currentTime};Bt?(Tn.log_id=Bt,Tn.watch_duration=je(Vt),Tn.total_duration=xt):(he?(Tn.video_id=parseInt(ve,10),Tn.course_id=he):Tn.video_id=ve,Tn.duration=qt,Tn.device=ln),Rr&&(Tn.ed="1");function hr(){return Ie(this,null,function*(){nn=!0,Bt=yield xe==null?void 0:xe(Tn),nn=!1,mr&&mr()})}hr()},[ve,he]);(0,He.useEffect)(()=>{At.current&&(bt.current.style.display="none",Et.current.style.display="block"),et.ZP.destroy();let mr=null;return ke.Z.isSupported&&St&&fe&&(fe==null?void 0:fe.indexOf(".m3u8"))<0?(mr=ke.Z.createPlayer({type:"flv",volume:.8,cors:!0,url:fe,muted:!1}),At.current&&(mr.attachMediaElement(At.current),mr.load())):At.current.setAttribute("src",fe),Jt(),()=>{mr&&(mr.unload(),mr.pause(),mr.destroy(),mr=null)}},[At,St,fe]);function $t(){At.current.paused?(bt.current.style.display="none",Et.current.style.display="block"):(bt.current.style.display="block",Et.current.style.display="none")}function Jt(){Yt.current.style.display="none",Dn.current.style.display="none",dn.current.style.display="none",At.current.muted||At.current.volume===0?Yt.current.style.display="block":At.current.volume>0&&At.current.volume<=.5?Dn.current.style.display="block":dn.current.style.display="block"}(0,He.useEffect)(()=>{const mr=document.getElementById("play"),Rr=document.querySelectorAll(".playback-icons use");function Tn(){Ne(),pe&&!Gn.current&&(At.current.currentTime=pe),Gn.current=!0,Vt.push(At.current.currentTime),Ot||(Ot=!0,de&&on())}function hr(){return Ie(this,null,function*(){$t(),Vt.push(At.current.currentTime),de&&on(()=>{Bt=null,ft=0,Ot=!1,nn=!1,Pt=!1,Vt=[],xt=0,It=1},!0),Ve()})}function or(){lt.current.value=Math.round(At.current.currentTime),Nt.current.value=Math.round(At.current.currentTime)}function yr(){const _i=be(Math.round(At.current.currentTime));Ut.current.innerText=`${_i.hour>0?_i.hour+":":""}${_i.minutes}:${_i.seconds}`,Ut.current.setAttribute("datetime",`${_i.hour>0?" "+_i.hour+" ":""}${_i.minutes}m ${_i.seconds}s`)}function ti(){var _i,ko,ro,Rt,Kr,Bi,_r;const pi=Math.round((_i=At.current)==null?void 0:_i.duration);(ro=(ko=lt.current)==null?void 0:ko.setAttribute)==null||ro.call(ko,"max",pi),(Kr=(Rt=Nt.current)==null?void 0:Rt.setAttribute)==null||Kr.call(Rt,"max",pi);const ii=be(pi);Zt.current&&(Zt.current.innerText=`${ii.hour>0?ii.hour+":":""}${ii.minutes}:${ii.seconds}`,(_r=(Bi=Zt.current).setAttribute)==null||_r.call(Bi,"datetime",`${ii.hour>0?" "+ii.hour+" ":""}${ii.minutes}m ${ii.seconds}s`))}function mi(){try{const _i=Math.round(At.current.duration);lt.current.setAttribute("max",_i),Nt.current.setAttribute("max",_i);const ko=be(_i);Zt.current.innerText=`${ko.hour>0?ko.hour+":":""}${ko.minutes}:${ko.seconds}`,Zt.current.setAttribute("datetime",`${ko.hour>0?" "+ko.hour+" ":""}${ko.minutes}m ${ko.seconds}s`),or(),yr();const{width:ro,height:Rt,x:Kr,y:Bi}=vt.current.getBoundingClientRect();if(Kr<0||Bi<0||!ro)return;if(!Pt){let _r=At.current.currentTime,pi=_r-ft;Math.abs(pi)<10?(xt+=Math.abs(pi),ft=_r,nn||xt-It*ut>=0&&(It++,Vt.push(ft),de&&on())):(ft=_r,de&&on())}}catch(_i){console.log(_i)}}function di(){Pt=!0}function Pi(){At.current.playing&&Vt.push(At.current.currentTime,ft),ft=At.current.currentTime,Pt=!1}function vo(){qt=At.current.duration,qt<=20&&(ut=qt/3),At.current.addEventListener("play",Tn)}function Co(_i){_i.preventDefault(),(0,Te.vp)()?(At.current.style.width="100%",At.current.style.height="100%"):At.current.style.cssText=""}function To(){Se()}function xo(_i){if(!ae){et.ZP.warning("\u8BE5\u89C6\u9891\u7981\u6B62\u5FEB\u8FDB/\u540E\u9000\u64AD\u653E");return}const ko=_i.target.dataset.seek?_i.target.dataset.seek:_i.target.value;At.current.currentTime=ko,Nt.current.value=ko,lt.current.value=ko}function ma(_i){const ko=Math.round(_i.offsetX/_i.target.clientWidth*parseInt(_i.target.getAttribute("max"),10));lt.current.setAttribute("data-seek",ko);const ro=be(ko);Ft.current.textContent=`${ro.hour>0?ro.hour+":":""}${ro.minutes}:${ro.seconds}`;const Rt=At.current.getBoundingClientRect();Ft.current.style.left=`${_i.pageX-Rt.left}px`}function xa(_i){switch(_i.code){case"Space":_i.preventDefault(),rr();break;case"ArrowRight":if(_i.preventDefault(),!ae){et.ZP.warning("\u8BE5\u89C6\u9891\u7981\u6B62\u5FEB\u8FDB/\u540E\u9000\u64AD\u653E");break}if(At.current.currentTime>=At.current.duration)break;At.current.currentTime=parseInt(At.current.currentTime)+5,or();break;case"ArrowLeft":if(_i.preventDefault(),!ae){et.ZP.warning("\u8BE5\u89C6\u9891\u7981\u6B62\u5FEB\u8FDB/\u540E\u9000\u64AD\u653E");break}if(At.current.currentTime===0)break;At.current.currentTime=parseInt(At.current.currentTime)-5,or();break;case"ArrowUp":_i.preventDefault(),At.current.volume<1&&(At.current.volume=(parseInt(At.current.volume*10)+1)/10);break;case"ArrowDown":_i.preventDefault(),At.current.volume>0&&(At.current.volume=(parseInt(At.current.volume*10)-1)/10);break}}return Tt.current.addEventListener((0,Te.gH)(),Co),At.current.addEventListener("canplay",vo),At.current.addEventListener("ended",hr),At.current.addEventListener("seeking",di),At.current.addEventListener("seeked",Pi),At.current.addEventListener("loadedmetadata",ti),lt.current.addEventListener("mousemove",ma),lt.current.addEventListener("input",xo),At.current.addEventListener("timeupdate",mi),At.current.addEventListener("pause",To),At.current.addEventListener("volumechange",Jt),document.addEventListener("keydown",xa),()=>{var _i,ko,ro,Rt,Kr,Bi,_r,pi,ii,zi,Jr,Kt;(_i=At.current)==null||_i.removeEventListener("canplay",vo),(ko=At.current)==null||ko.removeEventListener("play",Tn),(ro=At.current)==null||ro.removeEventListener("ended",hr),(Rt=At.current)==null||Rt.removeEventListener("seeking",di),(Kr=At.current)==null||Kr.removeEventListener("seeked",Pi),(Bi=lt.current)==null||Bi.removeEventListener("mousemove",ma),(_r=lt.current)==null||_r.removeEventListener("input",xo),(pi=At.current)==null||pi.removeEventListener("timeupdate",mi),(ii=At.current)==null||ii.removeEventListener("pause",To),(zi=At.current)==null||zi.removeEventListener("loadedmetadata",ti),(Jr=At.current)==null||Jr.removeEventListener("volumechange",Jt),document.removeEventListener("keydown",xa),(Kt=At.current)!=null&&Kt.playing&&(Vt.push(ft,At.current.currentTime),de&&on())}},[At,fe]),(0,He.useEffect)(()=>{if(At.current.onended=()=>{ze(At)},At.current.oncontextmenu=()=>!1,(fe==null?void 0:fe.indexOf(".m3u8"))>-1){if(At.current.canPlayType("application/vnd.apple.mpegurl"))At.current.src=fe;else if(Ze.ZP.isSupported()){var mr=new Ze.ZP;mr.loadSource(fe),mr.attachMedia(At.current)}}},[fe]);const[xn,Qn]=(0,He.useState)(1),rr=()=>{At.current.paused||At.current.ended?At.current.play():At.current.pause(),$t()};function Jn(){At.current.muted=!At.current.muted,At.current.muted?(Rn.current.setAttribute("data-volume",volume.value),Rn.current.value=0):Rn.current.value=Rn.current.dataset.volume}return He.createElement("div",{style:{position:"relative"},ref:Tt},He.createElement("div",{ref:vt,className:`${Re.watermark} animated_alternate animate__animated_10s animate__infinite animate__stepstart ${Re.animate__loop}`},Je&&Wn?Wn.login:" "),He.createElement("div",{className:Re.container},He.createElement("div",{className:Re["video-container"],id:"video-container"},He.createElement("div",{className:Re["playback-animation"],id:"playback-animation"},He.createElement("svg",{className:Re["playback-icons"]},He.createElement("use",{className:"hidden",href:"#play-icon"}),He.createElement("use",{href:"#pause"}))),He.createElement("video",{className:Re.video,id:"video",preload:"auto",disablePictureInPicture:!0,ref:At,autoPlay:Ke}),He.createElement("div",{className:`${Re["video-controls"]} `,id:"video-controls"},He.createElement("div",{className:Re["bottom-controls"]},He.createElement("div",{className:Re["left-controls"]},He.createElement("button",{"data-title":"\u64AD\u653E/\u6682\u505C",id:"play",onClick:rr},He.createElement("svg",{className:Re["playback-icons"]},He.createElement("use",{ref:Et,href:"#play-icon"}),He.createElement("use",{ref:bt,style:{display:"none"},href:"#pause"}))),He.createElement("div",{className:Re.time},He.createElement("time",{id:"time-elapsed",ref:Ut},"00:00"),He.createElement("span",null," / "),He.createElement("time",{id:"duration",ref:Zt},"00:00"))),He.createElement("div",{className:Re["right-controls"]},ae&&He.createElement(Ge.Z,{placement:"top",overlayClassName:Re.rateOverlay,getPopupContainer:mr=>mr.parentNode,menu:{items:[{key:"1",label:He.createElement("span",{onClick:()=>{Qn(1),At.current.playbackRate=1}},"1.0x")},{key:"2",label:He.createElement("span",{onClick:()=>{Qn(1.5),At.current.playbackRate=1.5}},"1.5x")},{key:"3",label:He.createElement("span",{onClick:()=>{Qn(2),At.current.playbackRate=2}},"2.0x")}]}},He.createElement("div",{className:`${Re.controlText} mr5`},"\u500D\u901F")),He.createElement(we.CopyToClipboard,{text:fe,onCopy:()=>et.ZP.success("\u590D\u5236\u6210\u529F")},He.createElement("button",{"data-title":"\u590D\u5236\u94FE\u63A5"},He.createElement("i",{className:"icon-lianjie2 iconfont",style:{fontSize:"12px",color:"white"}}))),He.createElement("div",{className:Re["volume-controls"]},He.createElement("button",{"data-title":"\u5F00\u542F/\u5173\u95ED\u58F0\u97F3",className:Re["volume-button"],id:"volume-button",onClick:Jn},He.createElement("i",{ref:Yt,className:"icon-a-bianzu8 iconfont",style:{fontSize:"14px",color:"white"}}),He.createElement("i",{ref:Dn,className:"icon-shengyinkaibeifen iconfont",style:{fontSize:"14px",color:"white"}}),He.createElement("i",{ref:dn,className:"icon-shengyinkai iconfont",style:{fontSize:"14px",color:"white"}})),He.createElement("input",{className:Re.volume,id:"volume",value:"1","data-mute":"0.5",type:"range",max:"1",min:"0",step:"0.01",ref:Rn,style:{display:"none"},onClick:Jt})),He.createElement("button",{"data-title":"\u5168\u5C4F/\u9000\u51FA\u5168\u5C4F",className:Re["fullscreen-button"],onClick:()=>{(0,Te.vp)()?(0,Te.BU)():(0,Te.Dj)(Tt.current)}},He.createElement("i",{className:"icon-fangda1 iconfont",style:{fontSize:"12px",color:"white"}})))),He.createElement("div",{className:Re["video-progress"]},He.createElement("progress",{ref:Nt,value:"0",min:"0"}),He.createElement("input",{className:Re.seek,ref:lt,value:"0",min:"0",type:"range",step:"1"}),He.createElement("div",{className:Re["seek-tooltip"],ref:Ft,id:"seek-tooltip"},"00:00"))))),He.createElement("svg",{style:{display:"none"}},He.createElement("defs",null,He.createElement("symbol",{id:"pause",viewBox:"0 0 24 24"},He.createElement("path",{d:"M14.016 5.016h3.984v13.969h-3.984v-13.969zM6 18.984v-13.969h3.984v13.969h-3.984z"})),He.createElement("symbol",{id:"play-icon",viewBox:"0 0 24 24"},He.createElement("path",{d:"M8.016 5.016l10.969 6.984-10.969 6.984v-13.969z"})),He.createElement("symbol",{id:"volume-high",viewBox:"0 0 24 24"},He.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"})),He.createElement("symbol",{id:"volume-low",viewBox:"0 0 24 24"},He.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"})),He.createElement("symbol",{id:"volume-mute",viewBox:"0 0 24 24"},He.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"})),He.createElement("symbol",{id:"fullscreen",viewBox:"0 0 24 24"},He.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"})),He.createElement("symbol",{id:"fullscreen-exit",viewBox:"0 0 24 24"},He.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"})),He.createElement("symbol",{id:"pip",viewBox:"0 0 24 24"},He.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"})))))})},73278:function(sn,an,Be){"use strict";Be.d(an,{h:function(){return he}});var He=Be(59301),et=Be(57809),Ge=Be(78241),ke=Be(3113),Ze=Be(89780),Oe=Be.n(Ze),we=Be(78780),Te=Be(19136),Re=Object.defineProperty,Ie=Object.defineProperties,be=Object.getOwnPropertyDescriptors,Pe=Object.getOwnPropertySymbols,je=Object.prototype.hasOwnProperty,ye=Object.prototype.propertyIsEnumerable,ie=(pe,Se,Ne)=>Se in pe?Re(pe,Se,{enumerable:!0,configurable:!0,writable:!0,value:Ne}):pe[Se]=Ne,ae=(pe,Se)=>{for(var Ne in Se||(Se={}))je.call(Se,Ne)&&ie(pe,Ne,Se[Ne]);if(Pe)for(var Ne of Pe(Se))ye.call(Se,Ne)&&ie(pe,Ne,Se[Ne]);return pe},fe=(pe,Se)=>Ie(pe,be(Se));const de=et.default.Option,ve={labelCol:{span:4},wrapperCol:{span:20}},xe={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"]};an.Z=({callback:pe,onCancel:Se})=>{const[Ne,ze]=(0,He.useState)("python");function Ke(Je){ze(xe[Je][1])}function Ve(Je){pe(Je)}return He.createElement(Ge.default,fe(ae({},ve),{className:"code-block-panel",initialValues:{language:"python",content:""},onFinish:Ve,style:{width:500}}),He.createElement(Ge.default.Item,{label:"\u4EE3\u7801\u8BED\u8A00",name:"language"},He.createElement(et.default,{getPopupContainer:Je=>Je.parentNode,onChange:Ke},Object.keys(xe).map(Je=>He.createElement(de,{key:Je,value:Je},xe[Je][0])))),He.createElement(Ge.default.Item,{label:"\u4EE3\u7801\u5185\u5BB9",name:"content",rules:[{required:!0,message:"\u8BF7\u8F93\u5165\u4EE3\u7801\u5185\u5BB9"}]},He.createElement(he,{mode:Ne})),He.createElement("div",{className:"flex-container flex-end"},He.createElement(ke.ZP,{type:"primary",htmlType:"submit",style:{marginRight:10}},"\u786E\u5B9A"),He.createElement(ke.ZP,{type:"ghost",onClick:Se},"\u53D6\u6D88")))};function he({value:pe,onChange:Se,mode:Ne,options:ze={}}){const Ke=(0,He.useRef)(),[Ve,Je]=(0,He.useState)();return(0,He.useEffect)(()=>{if(Ve){let tt=function(gt){const st=gt.getValue();Se&&Se(st)};return Ve.on("change",tt),()=>{Ve.off("change",tt)}}},[Ve,Se]),(0,He.useEffect)(()=>{Ve&&Ve.setOption("mode",Ne)},[Ve,Ne]),(0,He.useEffect)(()=>{Ve&&(pe!==Ve.getValue()||pe==="")&&setTimeout(()=>{Ve.setValue(pe||"")},300)},[Ve,pe]),(0,He.useEffect)(()=>{if(Ke.current&&!Ve){const tt=Oe().fromTextArea(Ke.current,ae({mode:Ne,lineNumbers:!0,lineWrapping:!0,autoCloseBrackets:!0,tabSize:4,autofocus:!0,autoCloseTags:!0,matchBrackets:!0,styleActiveLine:!0},ze));Je(tt)}},[Ke.current,Ve]),He.createElement("div",{className:"my-codemirror-container"},He.createElement("textarea",{ref:Ke}))}},64726:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return Kt}});var He=Be(59301),et=Be(89780),Ge=Be.n(et),ke=Be(76374),Ze=Be(78780),Oe=Be(6313),we=Be(25717),Te=Be(99498),Re=Be(25419),Ie=Be(67549),be=Be(99325),Pe=({value:Le="",className:We,showTextOnly:De,showLines:qe,style:dt={}})=>{const Mt=(0,He.useMemo)(()=>"",[Le]);return He.createElement(He.Fragment,null,He.createElement("div",{dangerouslySetInnerHTML:{__html:Mt}}))},je=Be(59301),ye=Object.defineProperty,ie=Object.defineProperties,ae=Object.getOwnPropertyDescriptors,fe=Object.getOwnPropertySymbols,de=Object.prototype.hasOwnProperty,ve=Object.prototype.propertyIsEnumerable,xe=(Le,We,De)=>We in Le?ye(Le,We,{enumerable:!0,configurable:!0,writable:!0,value:De}):Le[We]=De,he=(Le,We)=>{for(var De in We||(We={}))de.call(We,De)&&xe(Le,De,We[De]);if(fe)for(var De of fe(We))ve.call(We,De)&&xe(Le,De,We[De]);return Le},pe=(Le,We)=>ie(Le,ae(We));let Se=[{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 Ne({onActionCallback:Le,title:We,icon:De,actionName:qe,className:dt="",children:Mt}){function wt(){Le(qe)}return je.createElement("a",{title:We,className:dt,onClick:wt},je.createElement("i",{className:`${De}`}),Mt)}var ze=({watch:Le,showNullButton:We,showNullProgramButton:De,onActionCallback:qe,fullScreen:dt,insertTemp:Mt,hidetoolBar:wt,extraUse:rn})=>{const un=[...Se,{title:`${Le?"\u5173\u95ED\u5B9E\u65F6\u9884\u89C8":"\u5F00\u542F\u5B9E\u65F6\u9884\u89C8"}`,icon:`${Le?"md-iconfont icon-eye-slash":"md-iconfont icon-eye"}`,actionName:"trigger-watch"}];return je.createElement("ul",{className:"markdown-toolbar-container"},!wt&&un.map((zn,Fn)=>je.createElement("li",{key:Fn},zn.actionName?je.createElement(Ne,pe(he({},zn),{onActionCallback:qe})):je.createElement("span",{className:"v-line"}))),We?je.createElement("li",null,je.createElement(Ne,{icon:"md-iconfont icon-edit insert-blank",className:"btn-null",title:"\u589E\u52A0\u586B\u7A7A",actionName:"add-null-ch",onActionCallback:qe},je.createElement("span",{className:"fill-tip"},"\u70B9\u51FB\u63D2\u5165\b\u586B\u7A7A\u9879"))):null,De?je.createElement(je.Fragment,null,je.createElement("li",null,je.createElement(Ne,{icon:"md-iconfont icon-edit insert-blank",className:"btn-null",title:"\u589E\u52A0\u586B\u7A7A",actionName:"add-signal",onActionCallback:qe},je.createElement("span",{className:"fill-tip"},"+\u5355\u884C\u586B\u7A7A\u9879"))),je.createElement("li",null,je.createElement(Ne,{icon:"md-iconfont icon-uniE900 insert-blank",className:"btn-null",title:"\u589E\u52A0\u586B\u7A7A",actionName:"add-multiple",onActionCallback:qe},je.createElement("span",{className:"fill-tip"},"+\u591A\u884C\u586B\u7A7A\u9879")))):null,Mt&&je.createElement("li",null,je.createElement(Ne,{icon:"md-iconfont icon-edit",className:"btn-null",title:"\u63D2\u5165\u6A21\u677F",actionName:`inster-template-${Mt}`,onActionCallback:qe},je.createElement("span",{className:"fill-tip"},"\u63D2\u5165\u6A21\u677F"))),rn&&je.createElement("li",null,rn),je.createElement("li",{className:"btn-full-screen"},je.createElement(Ne,{icon:`${dt?"md-iconfont icon-shrink":"md-iconfont icon-enlarge"}`,title:dt?"\u5173\u95ED\u5168\u5C4F":"\u5F00\u542F\u5168\u5C4F",actionName:"trigger-full-screen",onActionCallback:qe})))},Ke=Be(19647),Ve=Be(78241),Je=Be(92832),tt=Be(3113),gt=Object.defineProperty,st=Object.defineProperties,St=Object.getOwnPropertyDescriptors,At=Object.getOwnPropertySymbols,vt=Object.prototype.hasOwnProperty,Tt=Object.prototype.propertyIsEnumerable,bt=(Le,We,De)=>We in Le?gt(Le,We,{enumerable:!0,configurable:!0,writable:!0,value:De}):Le[We]=De,Et=(Le,We)=>{for(var De in We||(We={}))vt.call(We,De)&&bt(Le,De,We[De]);if(At)for(var De of At(We))Tt.call(We,De)&&bt(Le,De,We[De]);return Le},lt=(Le,We)=>st(Le,St(We));const Nt={labelCol:{span:4},wrapperCol:{span:20}};var Zt=({callback:Le,onCancel:We})=>{function De(qe){Le(qe)}return He.createElement(Ve.default,lt(Et({},Nt),{initialValues:{link:"http://",title:""},className:"link-panel",onFinish:De,style:{width:500}}),He.createElement(Ve.default.Item,{label:"\u94FE\u63A5\u5730\u5740",name:"link",rules:[{required:!0,message:"\u8BF7\u8F93\u5165\u94FE\u63A5\u5730\u5740"}]},He.createElement(Je.default,null)),He.createElement(Ve.default.Item,{label:"\u94FE\u63A5\u6807\u9898",name:"title",rules:[{required:!0,message:"\u8BF7\u8F93\u5165\u94FE\u63A5\u6807\u9898"}]},He.createElement(Je.default,null)),He.createElement("div",{className:"flex-container flex-end"},He.createElement(tt.ZP,{type:"primary",htmlType:"submit",style:{marginRight:10}},"\u786E\u5B9A"),He.createElement(tt.ZP,{type:"ghost",onClick:We},"\u53D6\u6D88")))},Ut=Be(73278),Ft=Be(56030),Yt=Be(43418),dn=Be(95237),Dn=Be(14573),Rn=Be(59301),Zn=({callback:Le,onCancel:We})=>{const De=document.createElement("canvas"),qe=De.getContext("2d");De.width=1e3,De.height=800,qe.fillStyle="#ffffff",qe.fillRect(0,0,De.width,De.height);const dt=De.toDataURL("image/png");return Rn.createElement(Yt.default,{open:!0,width:"100vw",style:{height:"100vh",top:0},footer:null,title:null,closable:!1},Rn.createElement(dn.Z,{style:{height:"100vh"}},Rn.createElement(Dn.Z,{fullWidth:!0,noAssociationId:!0,showFullTools:!0,data:{src:dt,visible:!0,title:String(Date.now())},onOk:Mt=>{Le({src:Mt.url})},onClose:We})))},ln=Be(12378);function Gn(){go.CommandHandler.call(this),this._arrowKeyBehavior="move",this._pasteOffset=new go.Point(10,10),this._lastPasteOffset=new go.Point(0,0)}go.Diagram.inherit(Gn,go.CommandHandler),Gn.prototype.canAlignSelection=function(){var Le=this.diagram;return!(Le===null||Le.isReadOnly||Le.isModelReadOnly||Le.selection.count<2)},Gn.prototype.alignLeft=function(){var Le=this.diagram;Le.startTransaction("aligning left");var We=1/0;Le.selection.each(function(De){De instanceof go.Link||(We=Math.min(De.position.x,We))}),Le.selection.each(function(De){De instanceof go.Link||De.move(new go.Point(We,De.position.y))}),Le.commitTransaction("aligning left")},Gn.prototype.alignRight=function(){var Le=this.diagram;Le.startTransaction("aligning right");var We=-1/0;Le.selection.each(function(De){if(!(De instanceof go.Link)){var qe=De.actualBounds.x+De.actualBounds.width;We=Math.max(qe,We)}}),Le.selection.each(function(De){De instanceof go.Link||De.move(new go.Point(We-De.actualBounds.width,De.position.y))}),Le.commitTransaction("aligning right")},Gn.prototype.alignTop=function(){var Le=this.diagram;Le.startTransaction("alignTop");var We=1/0;Le.selection.each(function(De){De instanceof go.Link||(We=Math.min(De.position.y,We))}),Le.selection.each(function(De){De instanceof go.Link||De.move(new go.Point(De.position.x,We))}),Le.commitTransaction("alignTop")},Gn.prototype.alignBottom=function(){var Le=this.diagram;Le.startTransaction("aligning bottom");var We=-1/0;Le.selection.each(function(De){if(!(De instanceof go.Link)){var qe=De.actualBounds.y+De.actualBounds.height;We=Math.max(qe,We)}}),Le.selection.each(function(De){De instanceof go.Link||De.move(new go.Point(De.actualBounds.x,We-De.actualBounds.height))}),Le.commitTransaction("aligning bottom")},Gn.prototype.alignCenterX=function(){var Le=this.diagram,We=Le.selection.first();if(We){Le.startTransaction("aligning Center X");var De=We.actualBounds.x+We.actualBounds.width/2;Le.selection.each(function(qe){qe instanceof go.Link||qe.move(new go.Point(De-qe.actualBounds.width/2,qe.actualBounds.y))}),Le.commitTransaction("aligning Center X")}},Gn.prototype.alignCenterY=function(){var Le=this.diagram,We=Le.selection.first();if(We){Le.startTransaction("aligning Center Y");var De=We.actualBounds.y+We.actualBounds.height/2;Le.selection.each(function(qe){qe instanceof go.Link||qe.move(new go.Point(qe.actualBounds.x,De-qe.actualBounds.height/2))}),Le.commitTransaction("aligning Center Y")}},Gn.prototype.alignColumn=function(Le){var We=this.diagram;We.startTransaction("align Column"),Le===void 0&&(Le=0),Le=parseFloat(Le);var De=new Array;We.selection.each(function(rn){rn instanceof go.Link||De.push(rn)});for(var qe=0;qe0){for(var rn=Mt.elt(wt-1);rn!==null&&rn.isTreeExpanded&&!rn.isTreeLeaf;){var un=this._sortTreeChildrenByY(rn);rn=un.last()}rn!==null&&Le.select(rn)}else Le.select(dt)}}else if(De.key==="Down")if(We.isTreeExpanded&&!We.isTreeLeaf){var qe=this._sortTreeChildrenByY(We).first();qe!==null&&Le.select(qe)}else for(;We!==null;){var dt=We.findTreeParentNode();if(dt===null)break;var Mt=this._sortTreeChildrenByY(dt),wt=Mt.indexOf(We);if(wtMt.y?1:dt.xMt.x?1:0}),We},Gn.prototype.copyToClipboard=function(Le){go.CommandHandler.prototype.copyToClipboard.call(this,Le),this._lastPasteOffset.set(this.pasteOffset)},Gn.prototype.pasteFromClipboard=function(){var Le=go.CommandHandler.prototype.pasteFromClipboard.call(this);return this.diagram.moveParts(Le,this._lastPasteOffset),this._lastPasteOffset.add(this.pasteOffset),Le},Object.defineProperty(Gn.prototype,"arrowKeyBehavior",{get:function(){return this._arrowKeyBehavior},set:function(Le){if(Le!=="move"&&Le!=="select"&&Le!=="scroll"&&Le!=="tree"&&Le!=="none")throw new Error('DrawCommandHandler.arrowKeyBehavior must be either "move", "select", "scroll", "tree", or "none", not: '+Le);this._arrowKeyBehavior=Le}}),Object.defineProperty(Gn.prototype,"pasteOffset",{get:function(){return this._pasteOffset},set:function(Le){if(!(Le instanceof go.Point))throw new Error("DrawCommandHandler.pasteOffset must be a Point, not: "+Le);this._pasteOffset.set(Le)}});var Wn=Gn,qt=Be(29277),xt=Be(43604),ft=Be(7660),Bt={myPaletteDiv:"myPaletteDiv___Xjz2I",flowChartWrp:"flowChartWrp____f45r",maxH60:"maxH60___Pd4Re"},Ot=Be(73898),ut=Be(59301),It=(Le,We,De)=>new Promise((qe,dt)=>{var Mt=un=>{try{rn(De.next(un))}catch(zn){dt(zn)}},wt=un=>{try{rn(De.throw(un))}catch(zn){dt(zn)}},rn=un=>un.done?qe(un.value):Promise.resolve(un.value).then(Mt,wt);rn((De=De.apply(Le,We)).next())});function nn({onCancel:Le,callback:We}){let De=(0,He.useRef)(),qe=(0,He.useRef)(),dt=(0,He.useRef)(),Mt=(0,He.useRef)(!1);const wt=(0,He.useRef)(!1),[rn,un]=(0,He.useState)(0);function zn(){const tn=ln.bx.make,Vn={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"};De.current=new ln.S0(qe.current,{padding:20,grid:tn(ln.s_,"Grid",tn(ln.bn,"LineH",{stroke:"lightgray",strokeWidth:.5}),tn(ln.bn,"LineV",{stroke:"lightgray",strokeWidth:.5})),"draggingTool.isGridSnapEnabled":!0,handlesDragDropForTopLevelParts:!0,mouseDrop:oi=>{var ji=oi.diagram.commandHandler.addTopLevelParts(oi.diagram.selection,!0);ji||oi.diagram.currentTool.doCancel()},commandHandler:tn(Wn),"clickCreatingTool.archetypeNodeData":{text:"\u672A\u547D\u540D",fill:null,stroke:null,borderColor:"rgba(0,0,0,0)"},PartCreated:oi=>{var ji=oi.subject;ji.location=ji.location.copy().snapToGridPoint(oi.diagram.grid.gridOrigin,oi.diagram.grid.gridCellSize),setTimeout(()=>{oi.diagram.commandHandler.editTextBlock()},20)},"commandHandler.archetypeGroupData":{isGroup:!0,text:"NEW GROUP"},SelectionGrouped:oi=>{var ji=oi.subject;setTimeout(()=>{oi.diagram.commandHandler.editTextBlock()})},LinkRelinked:oi=>{var ji=oi.parameter.part;ji.invalidateConnectedLinks();var Yi=oi.subject;oi.diagram.toolManager.linkingTool.isForwards?Yi.toNode.invalidateConnectedLinks():Yi.fromNode.invalidateConnectedLinks()},"undoManager.isEnabled":!0}),De.current.nodeTemplate=tn(ln.NB,"Auto",{locationSpot:ln.z6.Center,locationObjectName:"SHAPE",desiredSize:new ln.$u(120,60),minSize:new ln.$u(40,40),resizable:!0,resizeCellSize:new ln.$u(10,10),rotatable:!0},new ln.KX("location","loc",ln.E9.parse).makeTwoWay(ln.E9.stringify),new ln.KX("desiredSize","size",ln.$u.parse).makeTwoWay(ln.$u.stringify),tn(ln.bn,{name:"SHAPE",fill:Vn.white,cursor:"pointer",portId:"",fromLinkable:!0,toLinkable:!0,fromLinkableDuplicates:!0,toLinkableDuplicates:!0,fromSpot:ln.z6.AllSides,toSpot:ln.z6.AllSides},new ln.KX("figure"),new ln.KX("fill"),new ln.KX("stroke","borderColor"),new ln.KX("strokeWidth","thickness"),new ln.KX("strokeDashArray","dash")),tn(ln.bn,{width:100,height:20,strokeWidth:0,fill:"transparent"}),tn(ln.al,{margin:1,textAlign:"center",overflow:ln.al.OverflowEllipsis,editable:!0},new ln.KX("text").makeTwoWay(),new ln.KX("stroke","color"))),De.current.nodeTemplate.toolTip=tn("ToolTip",tn(ln.s_,"Vertical",{maxSize:new ln.$u(200,NaN)},tn(ln.al,{font:"bold 10pt sans-serif",textAlign:"center"},new ln.KX("text")),tn(ln.al,{font:"10pt sans-serif",textAlign:"center"},new ln.KX("text","details"))));function tr(oi,ji){var Yi=(Vi,to)=>{Vi.handled=!0,Vi.diagram.model.commit(bo=>{var Lo=to.part.adornedPart,Gi=new ln.E9().setRectSpot(Lo.actualBounds,oi);Gi.subtract(Lo.location),Gi.scale(2,2),Gi.x+=Math.sign(Gi.x)*130,Gi.y+=Math.sign(Gi.y)*130,Gi.add(Lo.location),Gi.snapToGridPoint(Vi.diagram.grid.gridOrigin,Vi.diagram.grid.gridCellSize);var Fo=bo.copyNodeData(Lo.data);bo.setGroupKeyForNodeData(Fo,bo.getGroupKeyForNodeData(Lo.data)),bo.addNodeData(Fo);var Zr={from:Lo.key,to:bo.getKeyForNodeData(Fo)};bo.addLinkData(Zr);var Pa=Vi.diagram.findNodeForData(Fo);Pa.location=Gi,Vi.diagram.select(Pa),setTimeout(()=>{Vi.diagram.commandHandler.editTextBlock()},20)})};return tn(ln.bn,{figure:ji,alignment:oi,alignmentFocus:oi.opposite(),width:oi.equals(ln.z6.Top)||oi.equals(ln.z6.Bottom)?25:18,height:oi.equals(ln.z6.Top)||oi.equals(ln.z6.Bottom)?18:25,fill:"orange",stroke:Vn.white,strokeWidth:4,mouseEnter:(Vi,to)=>to.fill="dodgerblue",mouseLeave:(Vi,to)=>to.fill="orange",isActionable:!0,click:Yi,contextClick:Yi})}function dr(oi){return tn(ln.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:(ji,Yi)=>Yi.fill="dodgerblue",mouseLeave:(ji,Yi)=>Yi.fill="orange",click:(ji,Yi)=>{ji.diagram.commandHandler.showContextMenu(Yi.part.adornedPart)}},oi||{})}De.current.nodeTemplate.selectionAdornmentTemplate=tn(ln.uz,"Spot",tn(ln.Vm,{padding:10}),tr(ln.z6.Top,"TriangleUp"),tr(ln.z6.Left,"TriangleLeft"),tr(ln.z6.Right,"TriangleRight"),tr(ln.z6.Bottom,"TriangleDown"),dr({alignment:new ln.z6(.75,0)}));function Bn(oi,ji){return(Yi,Vi)=>{Yi.handled=!0,Yi.diagram.model.commit(to=>{to.set(Vi.part.adornedPart.data,oi,ji)})}}function An(oi,ji){return ji||(ji="color"),tn(ln.bn,{width:16,height:16,stroke:"lightgray",fill:oi,margin:1,background:"transparent",mouseEnter:(Yi,Vi)=>Vi.stroke="dodgerblue",mouseLeave:(Yi,Vi)=>Vi.stroke="lightgray",click:Bn(ji,oi),contextClick:Bn(ji,oi)})}function Nn(){return[tn("ContextMenuButton",tn(ln.s_,"Horizontal",An(Vn.white,"fill"),An(Vn.beige,"fill"),An(Vn.extralightblue,"fill"),An(Vn.extralightred,"fill"))),tn("ContextMenuButton",tn(ln.s_,"Horizontal",An(Vn.lightgray,"fill"),An(Vn.lightgreen,"fill"),An(Vn.lightblue,"fill"),An(Vn.lightred,"fill")))]}function $n(){return[tn("ContextMenuButton",tn(ln.s_,"Horizontal",An(Vn.black),An(Vn.green),An(Vn.blue),An(Vn.red))),tn("ContextMenuButton",tn(ln.s_,"Horizontal",An(Vn.white),An(Vn.magenta),An(Vn.purple),An(Vn.orange)))]}function lr(oi,ji){return ji||(ji="thickness"),tn(ln.bn,"LineH",{width:16,height:16,strokeWidth:oi,margin:1,background:"transparent",mouseEnter:(Yi,Vi)=>Vi.background="dodgerblue",mouseLeave:(Yi,Vi)=>Vi.background="transparent",click:Bn(ji,oi),contextClick:Bn(ji,oi)})}function gr(oi,ji){return ji||(ji="dash"),tn(ln.bn,"LineH",{width:24,height:16,strokeWidth:2,strokeDashArray:oi,margin:1,background:"transparent",mouseEnter:(Yi,Vi)=>Vi.background="dodgerblue",mouseLeave:(Yi,Vi)=>Vi.background="transparent",click:Bn(ji,oi),contextClick:Bn(ji,oi)})}function Tr(){return[tn("ContextMenuButton",tn(ln.s_,"Horizontal",lr(1),lr(2),lr(3),lr(4))),tn("ContextMenuButton",tn(ln.s_,"Horizontal",gr(null),gr([2,4]),gr([4,4])))]}function ur(oi,ji){return ji||(ji="figure"),tn(ln.bn,{width:32,height:32,scale:.5,fill:"lightgray",figure:oi,margin:1,background:"transparent",mouseEnter:(Yi,Vi)=>Vi.fill="dodgerblue",mouseLeave:(Yi,Vi)=>Vi.fill="lightgray",click:Bn(ji,oi),contextClick:Bn(ji,oi)})}De.current.nodeTemplate.contextMenu=tn("ContextMenu",tn("ContextMenuButton",tn(ln.s_,"Horizontal",ur("Rectangle"),ur("RoundedRectangle"),ur("Ellipse"),ur("Diamond"))),tn("ContextMenuButton",tn(ln.s_,"Horizontal",ur("Parallelogram2"),ur("ManualOperation"),ur("Procedure"),ur("Cylinder1"))),tn("ContextMenuButton",tn(ln.s_,"Horizontal",ur("Terminator"),ur("CreateRequest"),ur("Document"),ur("TriangleDown"))),Nn(),$n(),Tr()),De.current.groupTemplate=tn(ln.ZA,"Spot",{layerName:"Background",ungroupable:!0,locationSpot:ln.z6.Center,selectionObjectName:"BODY",computesBoundsAfterDrag:!0,handlesDragDropForMembers:!0,mouseDrop:(oi,ji)=>{var Yi=ji.addMembers(ji.diagram.selection,!0);Yi||ji.diagram.currentTool.doCancel()},avoidable:!1},new ln.KX("location","loc",ln.E9.parse).makeTwoWay(ln.E9.stringify),tn(ln.s_,"Auto",{name:"BODY"},tn(ln.bn,{parameter1:10,fill:Vn.white,strokeWidth:2,cursor:"pointer",fromLinkable:!0,toLinkable:!0,fromLinkableDuplicates:!0,toLinkableDuplicates:!0,fromSpot:ln.z6.AllSides,toSpot:ln.z6.AllSides},new ln.KX("fill"),new ln.KX("stroke","color"),new ln.KX("strokeWidth","thickness"),new ln.KX("strokeDashArray","dash")),tn(ln.Vm,{background:"transparent",margin:20})),tn(ln.al,{alignment:ln.z6.Top,alignmentFocus:ln.z6.Bottom,font:"bold 12pt sans-serif",editable:!0},new ln.KX("text"),new ln.KX("stroke","color"))),De.current.groupTemplate.selectionAdornmentTemplate=tn(ln.uz,"Spot",tn(ln.s_,"Auto",tn(ln.bn,{fill:null,stroke:"dodgerblue",strokeWidth:3}),tn(ln.Vm,{margin:1.5})),dr({alignment:ln.z6.TopRight,alignmentFocus:ln.z6.BottomRight})),De.current.groupTemplate.contextMenu=tn("ContextMenu",Nn(),$n(),Tr()),De.current.linkTemplate=tn(ln.rU,{layerName:"Foreground",routing:ln.rU.AvoidsNodes,corner:10,fromShortLength:10,toShortLength:15,relinkableFrom:!0,relinkableTo:!0,reshapable:!0,resegmentable:!0},new ln.KX("fromSpot","fromSpot",ln.z6.parse),new ln.KX("toSpot","toSpot",ln.z6.parse),new ln.KX("fromShortLength","dir",oi=>oi>=1?10:0),new ln.KX("toShortLength","dir",oi=>oi>=1?10:0),new ln.KX("points").makeTwoWay(),tn(ln.bn,{strokeWidth:2},new ln.KX("stroke","color"),new ln.KX("strokeWidth","thickness"),new ln.KX("strokeDashArray","dash")),tn(ln.bn,{segmentIndex:0,segmentOffset:new ln.E9(15,0),segmentOrientation:ln.rU.OrientAlong,alignmentFocus:ln.z6.Right,figure:"circle",width:10,strokeWidth:0},new ln.KX("fill","color"),new ln.KX("visible","dir",oi=>oi===1)),tn(ln.bn,{segmentIndex:-1,segmentOffset:new ln.E9(-10,6),segmentOrientation:ln.rU.OrientPlus90,alignmentFocus:ln.z6.Right,figure:"triangle",width:12,height:12,strokeWidth:0},new ln.KX("fill","color"),new ln.KX("visible","dir",oi=>oi>=1),new ln.KX("width","thickness",oi=>7+3*oi),new ln.KX("height","thickness",oi=>7+3*oi),new ln.KX("segmentOffset","thickness",oi=>new ln.E9(-15,4+1.5*oi))),tn(ln.bn,{segmentIndex:0,segmentOffset:new ln.E9(15,-6),segmentOrientation:ln.rU.OrientMinus90,alignmentFocus:ln.z6.Right,figure:"triangle",width:12,height:12,strokeWidth:0},new ln.KX("fill","color"),new ln.KX("visible","dir",oi=>oi===2),new ln.KX("width","thickness",oi=>7+3*oi),new ln.KX("height","thickness",oi=>7+3*oi),new ln.KX("segmentOffset","thickness",oi=>new ln.E9(-15,4+1.5*oi))),tn(ln.al,{alignmentFocus:new ln.z6(0,1,-4,0),editable:!0},new ln.KX("text").makeTwoWay(),new ln.KX("stroke","color"))),De.current.linkTemplate.selectionAdornmentTemplate=tn(ln.uz,tn(ln.bn,{isPanelMain:!0,stroke:"transparent",strokeWidth:6,pathPattern:Br(2)},new ln.KX("pathPattern","thickness",Br)),dr({alignmentFocus:new ln.z6(0,0,-6,-4)}));function Br(oi){return tn(ln.bn,{stroke:"dodgerblue",strokeWidth:2,strokeCap:"square",geometryString:"M0 0 M4 2 H3 M4 "+(oi+4).toString()+" H3"})}function jr(oi){var ji="M0 0 M8 16 M0 8 L16 8 M12 11 L16 8 L12 5";return oi===0?ji="M0 0 M16 16 M0 8 L16 8":oi===2&&(ji="M0 0 M16 16 M0 8 L16 8 M12 11 L16 8 L12 5 M4 11 L0 8 L4 5"),tn(ln.bn,{geometryString:ji,margin:2,background:"transparent",mouseEnter:(Yi,Vi)=>Vi.background="dodgerblue",mouseLeave:(Yi,Vi)=>Vi.background="transparent",click:Bn("dir",oi),contextClick:Bn("dir",oi)})}function fr(oi){var ji=(Yi,Vi)=>{Yi.handled=!0,Yi.diagram.model.commit(to=>{var bo=Vi.part.adornedPart;to.set(bo.data,oi?"toSpot":"fromSpot",ln.z6.stringify(ln.z6.AllSides)),(oi?bo.toNode:bo.fromNode).invalidateConnectedLinks()})};return tn(ln.bn,{width:12,height:12,fill:"transparent",mouseEnter:(Yi,Vi)=>Vi.background="dodgerblue",mouseLeave:(Yi,Vi)=>Vi.background="transparent",click:ji,contextClick:ji})}function qn(oi,ji){var Yi=0,Vi=ln.z6.RightSide;oi.equals(ln.z6.Top)?(Yi=270,Vi=ln.z6.TopSide):oi.equals(ln.z6.Left)?(Yi=180,Vi=ln.z6.LeftSide):oi.equals(ln.z6.Bottom)&&(Yi=90,Vi=ln.z6.BottomSide),ji||(Yi-=180);var to=(bo,Lo)=>{bo.handled=!0,bo.diagram.model.commit(Gi=>{var Fo=Lo.part.adornedPart;Gi.set(Fo.data,ji?"toSpot":"fromSpot",ln.z6.stringify(Vi)),(ji?Fo.toNode:Fo.fromNode).invalidateConnectedLinks()})};return tn(ln.bn,{alignment:oi,alignmentFocus:oi.opposite(),geometryString:"M0 0 M12 12 M12 6 L1 6 L4 4 M1 6 L4 8",angle:Yi,background:"transparent",mouseEnter:(bo,Lo)=>Lo.background="dodgerblue",mouseLeave:(bo,Lo)=>Lo.background="transparent",click:to,contextClick:to})}De.current.linkTemplate.contextMenu=tn("ContextMenu",$n(),Tr(),tn("ContextMenuButton",tn(ln.s_,"Horizontal",jr(0),jr(1),jr(2))),tn("ContextMenuButton",tn(ln.s_,"Horizontal",tn(ln.s_,"Spot",fr(!1),qn(ln.z6.Top,!1),qn(ln.z6.Left,!1),qn(ln.z6.Right,!1),qn(ln.z6.Bottom,!1)),tn(ln.s_,"Spot",{margin:new ln.Zt(0,0,0,2)},fr(!0),qn(ln.z6.Top,!0),qn(ln.z6.Left,!0),qn(ln.z6.Right,!0),qn(ln.z6.Bottom,!0)))));const fi=`{ "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 ui=["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 $i(oi){return console.log("shapeName:",oi),ui.indexOf(oi)>=0}var wr=new ln.YI(dt.current,{maxSelectionCount:1,linkTemplate:tn(ln.rU,{locationSpot:ln.z6.Center,selectionAdornmentTemplate:tn(ln.uz,"Link",{locationSpot:ln.z6.Center},tn(ln.bn,{isPanelMain:!0,fill:null,stroke:"deepskyblue",strokeWidth:0}),tn(ln.bn,{toArrow:"Standard",stroke:null}))},{routing:ln.rU.AvoidsNodes,curve:ln.rU.JumpOver,corner:5,toShortLength:4},new ln.KX("points"),tn(ln.bn,{isPanelMain:!0,strokeWidth:2}),tn(ln.bn,{toArrow:"Standard",stroke:null})),model:new ln.FJ([{text:"\u672A\u547D\u540D",size:"100 100",fill:null,stroke:"#000"},...ln.bn.getFigureGenerators().toArray().map(oi=>({text:"\u672A\u547D\u540D",size:"100 100",figure:oi.key,fill:"white",stroke:"#666",borderColor:"#000"}))])});return De.current.addDiagramListener("TextEdited",function(oi){var ji;const Yi=oi.subject.part;var Vi=(ji=document.activeElement)==null?void 0:ji.value;typeof Vi=="string"&&Vi.trim()===""&&De.current.model.commit(function(to){to.set(Yi.data,"text","\u672A\u547D\u540D"),De.current.commandHandler.stopCommand()},"increment")}),wr.nodeTemplate=tn(ln.NB,"Auto",{locationSpot:ln.z6.Center},new ln.KX("location","location",ln.E9.parse).makeTwoWay(ln.E9.stringify),tn(ln.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 ln.KX("stroke").makeTwoWay(),new ln.KX("fill").makeTwoWay(),new ln.KX("figure")),tn(ln.al,{margin:new ln.Zt(5,5,3,5),font:"10pt sans-serif",minSize:new ln.$u(16,16),maxSize:new ln.$u(10,NaN),textAlign:"center",editable:!0},new ln.KX("key").makeTwoWay())),setTimeout(()=>{De.current.grid=tn(ln.s_,"Grid",tn(ln.bn,"LineH",{stroke:"lightgray",strokeWidth:.5}),tn(ln.bn,"LineV",{stroke:"lightgray",strokeWidth:.5})),De.current.grid.visible=!0,De.current.grid.gridCellStroke="darkgray",De.current.grid.gridCellStrokeWidth=1},300),window.myDiagrams=De.current,De.current}const Fn=()=>It(this,null,function*(){var tn,Vn=De.current.makeImage();const tr=yield(0,ft.ZP)("/api/attachments.json",{method:"post",body:{file_type:"base64",original_filename:Date.now(),file:Vn.src,file_data:JSON.stringify({login:(tn=(0,Ot.eY)())==null?void 0:tn.login,data:JSON.parse(De.current.model.toJson())})}});We({src:tr.url})});return(0,He.useEffect)(()=>(setTimeout(()=>{zn()},500),un(rn+1),()=>{De.current=null}),[]),ut.createElement("div",{ref:wt,className:Mt.current?`${Bt.maxH60} body-overflow-initial`:"body-overflow-initial"},ut.createElement(Yt.default,{width:1200,icon:null,footer:null,closable:!0,visible:!!rn,destroyOnClose:!0,maskClosable:!1,rootClassName:"zIndex-9999",title:ut.createElement(dn.Z,null,ut.createElement(xt.Z,{flex:1},"\u63D2\u5165\u6D41\u7A0B\u56FE"),ut.createElement(xt.Z,{onClick:()=>{var tn,Vn,tr=De.current.selection.first();if(Mt.current=!Mt.current,document.activeElement&&tr){let dr=(Vn=(tn=document.activeElement)==null?void 0:tn.value)==null?void 0:Vn.trim();typeof dr=="string"&&De.current.model.commit(function(Bn){Bn.set(tr.data,"text",dr||"\u672A\u547D\u540D"),De.current.commandHandler.stopCommand()},"increment")}un(rn+1)}},ut.createElement("span",{className:"current c-blue mr30",style:{fontWeight:400}},"\u5C55\u5F00/\u6536\u8D77"))),onCancel:Le},ut.createElement("div",{style:{width:"100%",height:"80vh",overflow:"hidden",position:"relative"},className:Bt.flowChartWrp},ut.createElement("div",{style:{display:"flex",height:"100%"}},ut.createElement("div",{style:{width:"300px",height:"100%"}},ut.createElement("div",{style:{background:"#fff",position:"relative",zIndex:12,fontSize:16,color:"#3061d0"}},"\u56FE\u5F62\u5E93"),ut.createElement("div",{style:{height:"calc(100% - 50px)"},className:Bt.myPaletteDiv,ref:dt})),ut.createElement("div",{style:{flex:1,position:"relative"}},ut.createElement("div",{ref:qe,style:{height:"80vh"}}))),ut.createElement("div",{className:"tr"},ut.createElement(tt.ZP,{size:"large",onClick:Fn,style:{position:"absolute",right:0,bottom:0,zIndex:8},type:"primary"},"\u4FDD\u5B58\u5230\u7F16\u8F91\u5668")))))}var Pt=nn,Vt=Be(5112),on=Be(5871);const $t=Vt.ZP.Group,Jt={margin:"0 8px"};var xn=({callback:Le,onCancel:We})=>{function De(qe){Le(qe)}return He.createElement(Ve.default,{className:"add-table-panel",initialValues:{row:3,col:2,align:"default"},onFinish:De},He.createElement("div",{className:"flex-container",style:{alignItems:"baseline"}},He.createElement("span",{style:Jt},"\u5355\u5143\u683C\u6570\uFF1A"),He.createElement("span",{style:Jt},"\u884C\u6570"),He.createElement(Ve.default.Item,{name:"row",rules:[{required:!0,message:"\u8BF7\u8F93\u5165\u884C\u6570"}]},He.createElement(on.Z,null)),He.createElement("span",{style:Jt},"\u5217\u6570"),He.createElement(Ve.default.Item,{name:"col",rules:[{required:!0,message:"\u8BF7\u8F93\u5165\u5217\u6570"}]},He.createElement(on.Z,null))),He.createElement("div",{className:"flex-container",style:{marginTop:12,alignItems:"baseline"}},He.createElement("span",{style:Jt},"\u5BF9\u9F50\u65B9\u5F0F\uFF1A"),He.createElement(Ve.default.Item,{name:"align"},He.createElement($t,null,He.createElement(Vt.ZP,{value:"default"},He.createElement("i",{className:"fa fa-align-justify"})),He.createElement(Vt.ZP,{value:"left"},He.createElement("i",{className:"fa fa-align-left"})),He.createElement(Vt.ZP,{value:"center"},He.createElement("i",{className:"fa fa-align-center"})),He.createElement(Vt.ZP,{value:"right"},He.createElement("i",{className:"fa fa-align-right"}))))),He.createElement("div",{className:"flex-container flex-end"},He.createElement(tt.ZP,{type:"primary",htmlType:"submit",style:{marginRight:10}},"\u786E\u5B9A"),He.createElement(tt.ZP,{type:"ghost",onClick:We},"\u53D6\u6D88")))},Qn=Be(78673),rr=Be(5559),Jn=Be.n(rr),Rr=(0,He.forwardRef)(({use3d:Le,width:We,height:De,callback:qe,showSaveButton:dt},Mt)=>{const wt=(0,He.useRef)(),rn=(0,He.useRef)(),[un,zn]=(0,He.useState)(!1),Fn=(0,He.useRef)({id:wt,appName:"graphing",width:We||1e3,height:De||600,showToolBar:!0,showMenuBar:!0,allowStyleBar:!0,showAlgebraInput:!0,enableLabelDrags:!1,enableShiftDragZoom:!0,showToolBarHelp:!1,errorDialogsActive:!0,showTutorialLink:!0,showLogging:!0,useBrowserForJS:!1});(0,He.useEffect)(()=>{rn.current=new(Jn())(Fn.current,!0),window.onload=function(){rn.current.inject("applet_container")}},[]);const tn=()=>{var Vn=window.ggbApplet.getPNGBase64(1,!0,72);return qe&&qe(Vn),Vn};return(0,He.useEffect)(()=>{Fn.current.appName=un?"3D":"graphing",rn.current.inject("applet_container")},[un]),(0,He.useEffect)(()=>{zn(Le)},[Le]),(0,He.useImperativeHandle)(Mt,()=>({getImgData:tn})),He.createElement(He.Fragment,null,He.createElement("div",{style:{width:"100%",height:"100%"},id:"applet_container",ref:wt}),He.createElement(dn.Z,{align:"middle"},He.createElement(xt.Z,{flex:1},He.createElement(Qn.Z,{size:"default",checkedChildren:"\u5173\u95ED3D\u56FE\u50CF",unCheckedChildren:"\u5F00\u542F3D\u56FE\u50CF",checked:un,onChange:Vn=>zn(Vn)})),He.createElement(xt.Z,null,He.createElement(tt.ZP,{size:"large",onClick:tn,style:{zIndex:8,marginTop:10},type:"primary"},"\u4FDD\u5B58\u5230\u7F16\u8F91\u5668"))))}),Tn=Be(46531),hr=Be(8591);const or="link",yr="upload-image",ti="add-flowchart",mi="draw-image",di="add-flowchart",Pi="code-block",vo="add-table",Co="------------",To={default:Co,left:`:${Co}`,center:`:${Co}:`,right:`${Co}:`};var xo=Be(50505);function ma(){}let xa=0;const _i=1e4,ko="\u2581",ro="@\u2581\u2581@",Rt="@\u2581@",Kr=` **\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`,Bi=["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 _r(Le){return/^\d+$/.test(Le)?`${Le}px`:Le}const ii=navigator.platform.toUpperCase().indexOf("MAC")>=0?"Cmd":"Ctrl",zi={[ii+"-B"]:"bold",[ii+"-I"]:"italic"},Jr={[or]:"\u6DFB\u52A0\u94FE\u63A5",[Pi]:"\u6DFB\u52A0\u4EE3\u7801\u5757",[yr]:"\u6DFB\u52A0\u56FE\u7247",[mi]:"\u6DFB\u52A0\u753B\u56FE",[ti]:"\u63D2\u5165\u6D41\u7A0B\u56FE",[vo]:"\u6DFB\u52A0\u8868\u683C","maths-latex":"\u6570\u5B66\u56FE\u50CF","inline-latex":"LATEX\u516C\u5F0F"};var Kt=({defaultValue:Le="",onChange:We,width:De="100%",height:qe=400,miniToolbar:dt=!1,isFocus:Mt=!1,watch:wt,insertTemp:rn,mode:un="markdown",id:zn="markdown-editor-id",showResizeBar:Fn=!1,noStorage:tn=!1,showNullButton:Vn=!1,showNullProgramButton:tr=!1,hidetoolBar:dr=!1,fullScreen:Bn=!1,onBlur:An,onCMBeforeChange:Nn,onFullScreen:$n,className:lr="",disablePaste:gr=!1,disabled:Tr=!1,disabledFill:ur=!1,placeholder:Br="",values:jr="",extraUse:fr})=>{const[qn,fi]=(0,He.useState)(null),[ui,$i]=(0,He.useState)(Le),[wr,oi]=(0,He.useState)(wt),[ji,Yi]=(0,He.useState)(Bn),[Vi,to]=(0,He.useState)(""),[bo,Lo]=(0,He.useState)(0),[Gi,Fo]=(0,He.useState)(qe),[Zr,Pa]=(0,He.useState)(!1),[Xr,Ma]=(0,He.useState)(0),[ts,fa]=(0,He.useState)(0),ys=(0,He.useRef)(),qa=(0,He.useRef)(),Go=(0,He.useRef)(),li=(0,He.useRef)();(0,He.useEffect)(()=>{const la=window.scrollY||window.pageYOffset;$i(jr),qn==null||qn.setValue(jr),window.scrollTo(0,la)},[jr]),(0,He.useEffect)(()=>{$n==null||$n(ji)},[ji]),(0,He.useEffect)(()=>{if(ys.current){let la=function(Ri,qo){var Ts;if(gr){qo.preventDefault();return}const pl=qo.clipboardData;if(pl){const Rs=pl.types.toString(),As=pl.items;if(Rs==="Files"||pl.types.indexOf("Files")>-1){if(qo.preventDefault(),un=="stex")return;try{let Ns=As[1];((Ts=As[0])==null?void 0:Ts.kind)==="file"&&(Ns=As[0]);const Ks=Ns.getAsFile(),Yl=Ks.name.split(".").pop();(0,Ft.I)(Ks,Gl=>{var yu,Pr,ou;Gl.id?((yu=Ks==null?void 0:Ks.type)==null?void 0:yu.indexOf("image"))>-1?na.replaceSelection(``):((Pr=Ks==null?void 0:Ks.type)==null?void 0:Pr.indexOf("video"))>-1?na.replaceSelection(``):((ou=Ks==null?void 0:Ks.type)==null?void 0:ou.indexOf("pdf"))>-1?na.replaceSelection(`${Ks.name}`):Bi.includes(Yl)?na.replaceSelection(`${Ks.name}`):na.replaceSelection(`[${Ks.name}](/api/attachments/${Gl.id}?type=${Gl.content_type})`):(Gl==null?void 0:Gl.status)===401&&(document.location.href="/user/login")})}catch(Ns){hr.ZP.warning("\u8BF7\u4F7F\u7528chrome\u6D4F\u89C8\u5668\u7C98\u8D34")}return!0}else return!0}return!0};const na=Ge().fromTextArea(ys.current,{mode:un,lineNumbers:!dt,lineWrapping:!0,value:Le,autoCloseTags:!0,autoCloseBrackets:!0});return na.on("keyup",function(Ri,qo){qo.keyCode===8&&(Ri.getValue()==""?na.setOption("placeholder",Br):na.setOption("placeholder",null))}),na.on("keydown",function(Ri,qo){if(qo.keyCode===8){var Ts=Za(Ri);Ts&&qo.preventDefault()}}),Mt&&na.focus(),na.on("paste",la),Tr&&na.on("beforeChange",function(Ri,qo){(qo.origin==="paste"||qo.origin==="+input")&&qo.cancel()}),fi(na),()=>{na.off("paste",la)}}},[]);const Ca=(0,He.useCallback)(()=>{if(qa.current)try{}catch(la){console.log(la,"---- to set md editor body height")}},[Gi,qa,ji]);(0,He.useEffect)(()=>{function la(){let na=new ke.Z(Ri=>{for(let qo of Ri)(qo.target.offsetHeight>0||qo.target.offsetWidth>0)&&(Ca(),qn.setSize("100%","100%"),qn.refresh())});return na.observe(ys.current.parentElement),na}if(qn){const na=la();return()=>{var Ri,qo;(Ri=ys.current)!=null&&Ri.parentElement&&na.unobserve((qo=ys.current)==null?void 0:qo.parentElement)}}},[qn,Ca]),(0,He.useEffect)(()=>{if(qn){let la=[];for(const[na,Ri]of Object.entries(zi)){let qo={[na]:()=>{lo(Ri)}};la.push(qo),qn.addKeyMap(qo)}return()=>{for(let na of la)qn.removeKeyMap(na)}}},[qn]),(0,He.useEffect)(()=>{Bn!==ji&&Yi(Bn)},[Bn]),(0,xo.Z)(()=>{if(!tn&&bo>0){let la=new Date().getTime(),na=window.sessionStorage.getItem(zn);la>=bo+_i&&(!na||na!==ui)&&(window.sessionStorage.setItem(zn,ui),Pa(!0))}},_i),(0,He.useEffect)(()=>{oi(wt)},[qn,wt]),(0,He.useEffect)(()=>{qn&&Mt&&qn.focus()},[qn,Mt]),(0,He.useEffect)(()=>{if(wr&&qn){let la=function(Ri){let qo=Ri.target;if(li.current){let Ts=qo.scrollTop/qo.scrollHeight;li.current.scrollTop=li.current.scrollHeight*Ts}};const na=qn.getScrollerElement();return na.addEventListener("scroll",la),()=>{na.removeEventListener("scroll",la)}}},[qn,wr]),(0,He.useEffect)(()=>{if(qn&&Nn){let la=function(na,Ri){Nn(na,Ri)};return qn.on("beforeChange",la),()=>{qn.off("beforeChange",la)}}},[qn,Nn]),(0,He.useEffect)(()=>{if(qn&&An){let la=function(){An(qn.getValue())};return qn.on("blur",la),()=>{qn.off("blur",la)}}},[qn,An]);function Za(la,na){var Ri=la.getDoc(),qo=Ri.getCursor(),Ts=Ri.getLine(qo.line),pl=Ts.charAt(qo.ch-1),Rs=Ts.lastIndexOf("@\u2581@",qo.ch),As=Ts.lastIndexOf("@\u2581\u2581@",qo.ch),Ns=Rs>As?Rs:As,Ks=Rs>As?3:4;if(ro.indexOf(pl)===-1)return null;if(console.log("change1:",na,la,Ts,qo,Ns,Rs,As,pl),Ns>=0&&qo.ch-Ns<5){var Yl=Ns+Ks;return Ri.replaceRange("",{line:qo.line,ch:Ns},{line:qo.line,ch:Yl}),{line:qo.line,ch:Yl}}return null}(0,He.useEffect)(()=>{if(qn){let la=function(na,Ri){const qo=na.getValue();$i(qo),Lo(new Date().getTime()),na.getScrollerElement().dispatchEvent(new CustomEvent("scroll")),We&&(tr?We(qo,ka(qo)):We(qo))};return qn.on("change",la),()=>{qn.off("change",la)}}},[qn,We]),(0,He.useEffect)(()=>{if(qn)if(Le==null)qn.setValue(""),$i("");else{const la=window.scrollY||window.pageYOffset;Le!==qn.getValue()&&(qn.setValue(Le),$i(Le),qn.setCursor(Tr?1:qn.lineCount(),0),window.scrollTo(0,la))}},[qn,Le]);const lo=(0,He.useCallback)(la=>{const na=qn.getCursor(),Ri=qn.getSelection();let qo=Ri.split(` `);switch(la){case"bold":return qn.replaceSelection("**"+Ri+"**"),Ri===""&&qn.setCursor(na.line,na.ch+2),qn.focus();case"italic":return qn.replaceSelection("*"+Ri+"*"),Ri===""&&qn.setCursor(na.line,na.ch+1),qn.focus();case"code":return qn.replaceSelection("`"+Ri+"`"),Ri===""&&qn.setCursor(na.line,na.ch+1),qn.focus();case"inline-latex":return to("inline-latex"),qn.focus();case"latex":return qn.replaceSelection("```latex\n"+Ri+"\n```"),qn.setCursor(na.line+1,Ri.length+1),qn.focus();case"line-break":return qn.replaceSelection(`
`),qn.focus();case"list-ul":return Ri===""?qn.replaceSelection("- "+Ri):qn.replaceSelection(qo.map(Ts=>Ts===""?"":`- ${Ts}`).join(` `)),qn.focus();case"list-ol":return Ri===""?qn.replaceSelection("1. "+Ri):qn.replaceSelection(qo.map((Ts,pl)=>Ts===""?"":`${pl+1}. ${Ts}`).join(` `)),qn.focus();case"add-null-ch":return Ri===""&&qn.setCursor(na.line,na.ch),qn.replaceSelection(ko),qn.focus();case"add-signal":return Ri===""&&qn.setCursor(na.line,na.ch),qn.replaceSelection(Rt),qn.focus();case"add-multiple":return Ri===""&&qn.setCursor(na.line,na.ch),qn.replaceSelection(ro),qn.focus();case"inster-template-1":return Ri===""&&qn.setCursor(na.line,na.ch),qn.replaceSelection(Kr),qn.focus();case"eraser":return qn.setValue(""),qn.focus();case"trigger-watch":return oi(!wr),qn.focus();case"trigger-full-screen":return Yi(!ji),qn.focus();case or:to(or);return;case Pi:to(Pi);return;case yr:to(yr);return;case mi:to(mi);return;case"maths-latex":to("maths-latex");return;case ti:to(ti);return;case vo:to(vo);return;default:throw new Error}},[qn,wr,ji]),fn=(0,He.useCallback)((la,na)=>{var Ri,qo,Ts,pl,Rs,As;switch(to(""),Vi){case or:const{title:yu,link:Pr}=la;return qn.replaceSelection(`[${yu}](${Pr})`),qn.focus();case Pi:const{language:ou,content:vd}=la;return qn.replaceSelection(["```"+ou,vd,"```"].join(` `)),qn.focus();case"maths-latex":for(var Ns=atob(la),Ks=new Uint8Array(Ns.length),Yl=0;Yl{Ha.id?qn.replaceSelection(`![,](/api/attachments/${Ha.id}?type=${Ha.content_type})`):(Ha==null?void 0:Ha.status)===401&&(document.location.href="/user/login")});break;case"inline-latex":qn.replaceSelection("`$$"+la+"$$`");break;case yr:case mi:case di:const{src:Tc,alt:qs}=la,ws=na,au=(Ts=(qo=(Ri=ws==null?void 0:ws.name)==null?void 0:Ri.split("."))==null?void 0:qo.pop)==null?void 0:Ts.call(qo);return((pl=ws==null?void 0:ws.type)==null?void 0:pl.indexOf("image"))>-1||!(ws!=null&&ws.type)?ws.align||ws.width?qn.replaceSelection(`

${qs||

`):qn.replaceSelection(`${qs||`):((Rs=ws==null?void 0:ws.type)==null?void 0:Rs.indexOf("video"))>-1?qn.replaceSelection(``):((As=ws==null?void 0:ws.type)==null?void 0:As.indexOf("pdf"))>-1?qn.replaceSelection(`${ws.name}`):Bi.includes(au)?qn.replaceSelection(`${ws.name}`):qn.replaceSelection(`[${ws.name}](${Tc})`),qn.focus();case vo:const{row:hl,col:Cs,align:wl}=la;let Dc=` `;for(let Ha=0;Ha{switch(Vi){case or:return He.createElement(Zt,{callback:fn,onCancel:Ms});case Pi:return He.createElement(Ut.Z,{callback:fn,onCancel:Ms});case yr:return He.createElement(Ft.Z,{callback:fn,onCancel:Ms});case ti:return He.createElement(Pt,{callback:fn,onCancel:Ms});case vo:return He.createElement(xn,{callback:fn,onCancel:Ms});case"maths-latex":return He.createElement(Rr,{showSaveButton:!0,callback:fn});case"inline-latex":return He.createElement(Tn.Z,{showSaveButton:!0,callback:fn});default:return null}},[Vi]);function Ms(){to("")}(0,He.useEffect)(()=>{if(Go.current){let la=function(Rs){Ts=!0,pl=Rs.pageY},na=function(){Ts=!1},Ri=function(Rs){if(Ts){let As=Rs.pageY-pl;As<0&&(As=0),As>300&&(As=300);let Ns=qe+As+"px";Fo(Ns)}},qo=Go.current,Ts=!1,pl=0;return qo.addEventListener("mousedown",la),document.addEventListener("mousemove",Ri),document.addEventListener("mouseup",na),()=>{qo.removeEventListener("mousedown",la),document.removeEventListener("mousemove",Ri),document.removeEventListener("mouseup",na)}}},[qn,Go]),(0,He.useEffect)(()=>{Fo(qe)},[qe]);const _a=_r(De),Bs=_r(Gi),Vs={width:_a,height:Bs},ol=(0,He.useMemo)(()=>{if(bo){let la=new Date(bo),na=la.getHours(),Ri=la.getMinutes(),qo=la.getSeconds();return na=na<10?"0"+na:na,Ri=Ri<10?"0"+Ri:Ri,qo=qo<10?"0"+qo:qo,`${na}:${Ri}:${qo}`}return 0},[bo]),ka=la=>{const na=[];if(tr){let Ri=-1;la=la.replace(/(@▁▁@|@▁@)/g,function(qo,Ts,pl){na.push({multiLine:qo!==Rt})})}return na};function Aa(){window.sessionStorage.removeItem(zn),Pa(!1),Lo(0)}function Sa(){Pa(!1),Lo(0),qn.setValue(window.sessionStorage.getItem(zn))}(0,He.useEffect)(()=>{Jr[Vi]&&Vi!==mi&&Vi!==ti&&setTimeout(()=>{const la=document.getElementsByClassName("markdown-popup-form")[0],na=window.innerWidth/2-la.offsetWidth/2,Ri=window.innerHeight/2-la.offsetHeight/2;Ma(na),fa(Ri)},0)},[Vi]);const xs=la=>{la.preventDefault();const na=la.clientX-Xr,Ri=la.clientY-ts;document.body.onmousemove=qo=>{let Ts=qo.clientX-na,pl=qo.clientY-Ri;const Rs=document.getElementsByClassName("markdown-popup-form")[0],As=window.innerWidth-Rs.offsetWidth,Ns=window.innerHeight-Rs.offsetHeight;Ts=Math.max(0,Math.min(Ts,As)),pl=Math.max(0,Math.min(pl,Ns)),Ls(qo.clientX,qo.clientY,na,Ri)&&(Ma(Ts),fa(pl))},document.body.onmouseup=function(){document.body.onmousemove=null}},Ls=(la,na,Ri,qo)=>{const Ts=document.body.clientHeight,pl=document.body.clientWidth;return la<20&&Ri>la||la>pl-20&&Rina||na>Ts-20&&qoVe in Ke?be(Ke,Ve,{enumerable:!0,configurable:!0,writable:!0,value:Je}):Ke[Ve]=Je,de=(Ke,Ve)=>{for(var Je in Ve||(Ve={}))ie.call(Ve,Je)&&fe(Ke,Je,Ve[Je]);if(ye)for(var Je of ye(Ve))ae.call(Ve,Je)&&fe(Ke,Je,Ve[Je]);return Ke},ve=(Ke,Ve)=>Pe(Ke,je(Ve));const{useForm:xe}=He.default,he={width:280,marginRight:10},pe={labelCol:{span:5},wrapperCol:{span:19}};var Se=({callback:Ke,onCancel:Ve})=>{const[Je]=xe();let tt=(0,Re.useRef)();function gt(At){tt.current.width=Je.getFieldValue("width"),tt.current.align=Je.getFieldValue("align"),Ke(At,tt.current)}function st(At,vt){if(At.status===-1){et.ZP.error(At.message);return}Je.setFieldsValue({src:`/api/attachments/${At.id}`,type:vt.type})}function St(At){let vt=At.target.files[0];tt.current=vt,ze(vt,st)}return Ie.createElement(He.default,ve(de({form:Je},pe),{className:"upload-image-panel",onFinish:gt,style:{width:470,overflow:"hidden"}}),Ie.createElement(He.default.Item,{label:"\u56FE\u7247\u5730\u5740",required:!0},Ie.createElement("div",{className:"flex-container"},Ie.createElement(He.default.Item,{noStyle:!0,name:"src",rules:[{required:!0,message:"\u8BF7\u8F93\u5165\u56FE\u7247\u5730\u5740"}]},Ie.createElement(Ge.default,{style:he})),Ie.createElement(Ne,{onFileChange:St}))),Ie.createElement(He.default.Item,{label:"\u56FE\u7247\u63CF\u8FF0",name:"alt"},Ie.createElement(Ge.default,{style:{width:264}})),Ie.createElement(He.default.Item,{label:"\u56FE\u7247\u5BBD\u5EA6",name:"width"},Ie.createElement(ke.Z,null,Ie.createElement(He.default.Item,{name:"width",style:{margin:0}},Ie.createElement(Ze.Z,{style:{width:264}})),Ie.createElement("span",{className:"ml8"},"%"))),Ie.createElement(He.default.Item,{label:"\u5BF9\u9F50\u65B9\u5F0F",name:"align"},Ie.createElement(Oe.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"}]})),Ie.createElement("aside",null,Ie.createElement(He.default.Item,{style:{textAlign:"right",position:"relative",right:-98}},Ie.createElement(we.ZP,{type:"primary",htmlType:"submit",style:{marginRight:10}},"\u786E\u5B9A"),Ie.createElement(we.ZP,{type:"default",onClick:Ve},"\u53D6\u6D88"))))};function Ne({onFileChange:Ke}){return Ie.createElement("label",{className:"upload-button",style:{cursor:"pointer"}},"\u672C\u5730\u4E0A\u4F20",Ie.createElement("input",{type:"file",onChange:Ke}))}function ze(Ke,Ve){if(!Ke)throw new String("\u6CA1\u6709\u6587\u4EF6");let Je=new FormData;Je.append("editormd-image-file",Ke),Je.append("file_param_name","editormd-image-file"),Je.append("byxhr","true");var tt=new window.XMLHttpRequest;tt.withCredentials=!0,tt.addEventListener("load",function(gt){Ve(JSON.parse(gt.target.responseText),Ke)},!1),tt.addEventListener("error",function(gt){console.error(gt)},!1),tt.open("POST",`${Te.KI}/api/attachments.json`),tt.send(Je)}},19647:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return Ge}});var He=Be(59301),et=Be(4676);class Ge extends He.Component{constructor(Ze){super(Ze);const Oe=window.document;this.node=Oe.createElement("div"),Oe.body.appendChild(this.node)}render(){const{children:Ze}=this.props;return(0,et.createPortal)(Ze,this.node)}componentWillUnmount(){window.document.body.removeChild(this.node)}}},57800:function(sn,an,Be){"use strict";Be.d(an,{SV:function(){return It},ZP:function(){return ut}});var He=Be(59301),et=Be(76374);const Ge={keywords:["print","auto","break","case","char","const","continue","default","do","double","else","enum","extern","float","for","goto","if","int","long","register","return","short","signed","sizeof","static","struct","switch","typedef","union","unsigned","void","volatile","while"]},ke={quickKey:[{label:"main",content:["public static void main(String[] args) {"," $0","}"].join(` `)},{label:"System.out.println",content:["System.out.println($0)"].join(` `)},{label:"System.out.print",content:["System.out.print($0)"].join(` `)}],keywords:["abstract","continue","for","new","switch","assert","default","goto","package","synchronized","boolean","do","if","private","this","break","double","implements","protected","throw","byte","else","import","public","throws","case","enum","instanceof","return","transient","catch","extends","int","short","try","char","final","interface","static","void","class","finally","long","strictfp","volatile","const","float","native","super","while","true","false"]},Ze={keywords:["abstract","amp","array","auto","bool","break","case","catch","char","class","const","constexpr","const_cast","continue","cpu","decltype","default","delegate","delete","do","double","dynamic_cast","each","else","enum","event","explicit","export","extern","false","final","finally","float","friend","gcnew","generic","goto","in","initonly","inline","int","interface","interior_ptr","internal","literal","long","mutable","namespace","new","noexcept","nullptr","__nullptr","operator","override","partial","pascal","pin_ptr","private","property","protected","public","ref","register","reinterpret_cast","restrict","return","safe_cast","sealed","short","signed","sizeof","static","static_assert","static_cast","struct","switch","template","this","thread_local","throw","tile_static","true","try","typedef","typeid","typename","union","unsigned","using","virtual","void","volatile","wchar_t","where","while","_asm","_based","_cdecl","_declspec","_fastcall","_if_exists","_if_not_exists","_inline","_multiple_inheritance","_pascal","_single_inheritance","_stdcall","_virtual_inheritance","_w64","__abstract","__alignof","__asm","__assume","__based","__box","__builtin_alignof","__cdecl","__clrcall","__declspec","__delegate","__event","__except","__fastcall","__finally","__forceinline","__gc","__hook","__identifier","__if_exists","__if_not_exists","__inline","__int128","__int16","__int32","__int64","__int8","__interface","__leave","__m128","__m128d","__m128i","__m256","__m256d","__m256i","__m64","__multiple_inheritance","__newslot","__nogc","__noop","__nounwind","__novtordisp","__pascal","__pin","__pragma","__property","__ptr32","__ptr64","__raise","__restrict","__resume","__sealed","__single_inheritance","__stdcall","__super","__thiscall","__try","__try_cast","__typeof","__unaligned","__unhook","__uuidof","__value","__virtual_inheritance","__w64","__wchar_t"],operators:["=",">","<","!","~","?",":","==","<=",">=","!=","&&","||","++","--","+","-","*","/","&","|","^","%","<<",">>",">>>","+=","-=","*=","/=","&=","|=","^=","%=","<<=",">>=",">>>="],quickKey:[{label:"ifelse",content:["if (${1:condition}) {"," $0","} else {"," ","}"].join(` `)},{label:"include",content:"include<$0>"},{label:"printf",content:"printf($0)"},{label:"system",content:'system("$0")'},{label:"main",content:["int main () {"," $0","}"].join(` `)},{label:"if",content:["if () {"," $0","}"].join(` `)},{label:"for",content:["for(int j=0 ; j<10; j++){"," $0","}"].join(` `)},{label:"trycatch",content:["try{"," $0","}catch(ExceptionName e){","}"].join(` `)},{label:"using namespace std;",content:["using namespace std;"].join(` `)},{label:"include ",content:["#include "].join(` `)},{label:"include ",content:["#include "].join(` `)},{label:"include ",content:["#include "].join(` `)},{label:"include ",content:["#include "].join(` `)},{label:"include ",content:["#include "].join(` `)},{label:"include ",content:["#include "].join(` `)},{label:"include ",content:["#include "].join(` `)},{label:"include ",content:["#include "].join(` `)},{label:"include ",content:["#include "].join(` `)}]},Oe={keywords:["and","as","assert","break","class","continue","def","del","elif","else","except","exec","finally","for","from","global","if","import","in","is","lambda","None","not","or","pass","raise","return","self","try","while","with","yield","int","float","long","complex","hex","abs","all","any","apply","basestring","bin","bool","buffer","bytearray","callable","chr","classmethod","cmp","coerce","compile","complex","delattr","dict","dir","divmod","enumerate","eval","execfile","file","filter","format","frozenset","getattr","globals","hasattr","hash","help","id","input","intern","isinstance","issubclass","iter","len","locals","list","map","max","memoryview","min","next","object","oct","open","ord","pow","print","property","reversed","range","raw_input","reduce","reload","repr","reversed","round","set","setattr","slice","sorted","staticmethod","str","sum","super","tuple","type","unichr","unicode","vars","xrange","zip","True","False","__dict__","__methods__","__members__","__class__","__bases__","__name__","__mro__","__subclasses__","__init__","__import__"],quickKey:[{label:"print",content:["print($0)"].join(` `)}]},we={keywords:["asInstanceOf","catch","class","classOf","def","do","else","extends","finally","for","foreach","forSome","if","import","isInstanceOf","macro","match","new","object","package","return","throw","trait","try","type","until","val","var","while","with","yield","given","enum","then"],quickKey:[{label:"println",content:["println($0)"].join(` `)}]};var Te=Be(7947),Re=Be.n(Te),Ie=Object.defineProperty,be=Object.defineProperties,Pe=Object.getOwnPropertyDescriptors,je=Object.getOwnPropertySymbols,ye=Object.prototype.hasOwnProperty,ie=Object.prototype.propertyIsEnumerable,ae=(nn,Pt,Vt)=>Pt in nn?Ie(nn,Pt,{enumerable:!0,configurable:!0,writable:!0,value:Vt}):nn[Pt]=Vt,fe=(nn,Pt)=>{for(var Vt in Pt||(Pt={}))ye.call(Pt,Vt)&&ae(nn,Vt,Pt[Vt]);if(je)for(var Vt of je(Pt))ie.call(Pt,Vt)&&ae(nn,Vt,Pt[Vt]);return nn},de=(nn,Pt)=>be(nn,Pe(Pt)),ve=(nn,Pt,Vt)=>new Promise((on,$t)=>{var Jt=rr=>{try{Qn(Vt.next(rr))}catch(Jn){$t(Jn)}},xn=rr=>{try{Qn(Vt.throw(rr))}catch(Jn){$t(Jn)}},Qn=rr=>rr.done?on(rr.value):Promise.resolve(rr.value).then(Jt,xn);Qn((Vt=Vt.apply(nn,Pt)).next())});const xe={languages:["c","abap","apex","azcli","bat","cameligo","clojure","coffee","cpp","csharp","csp","css","dockerfile","fsharp","go","graphql","handlebars","html","ini","java","javascript","json","kotlin","less","lua","markdown","mips","msdax","mysql","objective-c","pascal","pascaligo","perl","pgsql","php","postiats","powerquery","powershell","pug","python","r","razor","redis","redshift","restructuredtext","ruby","rust","sb","scheme","scss","shell","solidity","sophia","sql","st","swift","tcl","twig","vb","xml","yaml'"],tables:{users:["name","id","email","phone","password"],roles:["id","name","order","created_at","updated_at","deleted_at"]}},he=(nn,Pt)=>Pt.map(Vt=>({label:Vt,kind:nn.languages.CompletionItemKind.Keyword,insertText:Vt})),pe=nn=>Object.keys(xe.tables).map(Pt=>({label:Pt,kind:nn.languages.CompletionItemKind.Variable,insertText:Pt})),Se=(nn,Pt)=>{const Vt=xe.tables[nn];return Vt?Vt.map(on=>({label:on,kind:Pt.languages.CompletionItemKind.Field,insertText:on})):[]};function Ne(nn,Pt,Vt,on,$t){let Jt=Pt.getWordUntilPosition(Vt),xn={startLineNumber:Vt.lineNumber,endLineNumber:Vt.lineNumber,startColumn:Jt.startColumn,endColumn:Jt.endColumn},Qn=on.map(rr=>({label:rr,kind:nn.languages.CompletionItemKind.Keyword,insertText:rr,insertTextRules:nn.languages.CompletionItemInsertTextRule.InsertAsSnippet,range:xn}));return $t.map(rr=>{Qn.push(de(fe({},rr),{range:xn}))}),Qn}var ze=nn=>{xe.languages.map($t=>(nn.languages.registerDocumentFormattingEditProvider($t,{provideDocumentFormattingEdits(Jt,xn,Qn){return ve(this,null,function*(){const rr=Re()(Jt.getValue(),{indent_size:"2",indent_char:" ",max_preserve_newlines:"2",preserve_newlines:!0,keep_array_indentation:!0,break_chained_methods:!1,indent_scripts:"normal",brace_style:"collapse",space_before_conditional:!0,unescape_strings:!1,jslint_happy:!1,end_with_newline:!0,wrap_line_length:"0",indent_inner_html:!1,comma_first:!1,e4x:!1,indent_empty_lines:!1});return[{range:Jt.getFullModelRange(),text:rr}]})}}),$t));const Pt=Ze.quickKey.map($t=>({label:$t.label,kind:nn.languages.CompletionItemKind.Method,insertText:$t.content,insertTextRules:nn.languages.CompletionItemInsertTextRule.InsertAsSnippet})),Vt=Oe.quickKey.map($t=>({label:$t.label,kind:nn.languages.CompletionItemKind.Method,insertText:$t.content,insertTextRules:nn.languages.CompletionItemInsertTextRule.InsertAsSnippet})),on=ke.quickKey.map($t=>({label:$t.label,kind:nn.languages.CompletionItemKind.Method,insertText:$t.content,insertTextRules:nn.languages.CompletionItemInsertTextRule.InsertAsSnippet}));nn.languages.registerCompletionItemProvider("cpp",{provideCompletionItems:function($t,Jt){var xn=$t.getWordUntilPosition(Jt),Qn={startLineNumber:Jt.lineNumber,endLineNumber:Jt.lineNumber,startColumn:xn.startColumn,endColumn:xn.endColumn},rr=$t.getLineContent(Jt.lineNumber).substring(xn.startColumn-2,xn.endColumn);return{suggestions:[...Ze.keywords.map(Jn=>({label:Jn,kind:nn.languages.CompletionItemKind.Function,documentation:Jn,insertText:Jn,insertTextRules:nn.languages.CompletionItemInsertTextRule.InsertAsSnippet,range:Qn})),...Ze.quickKey.map(Jn=>({label:Jn.label,kind:nn.languages.CompletionItemKind.Function,documentation:Jn.content,insertText:rr.startsWith("#")?Jn.content.replace(/#/,""):Jn.content,insertTextRules:nn.languages.CompletionItemInsertTextRule.InsertAsSnippet,range:Qn}))]}}}),nn.languages.registerCompletionItemProvider("c",{provideCompletionItems:function($t,Jt){var xn=$t.getWordUntilPosition(Jt),Qn={startLineNumber:Jt.lineNumber,endLineNumber:Jt.lineNumber,startColumn:xn.startColumn,endColumn:xn.endColumn};return{suggestions:[...Ge.keywords.map(rr=>({label:rr,kind:nn.languages.CompletionItemKind.Function,documentation:rr,insertText:rr,insertTextRules:nn.languages.CompletionItemInsertTextRule.InsertAsSnippet,range:Qn}))]}}}),nn.languages.registerCompletionItemProvider("java",{provideCompletionItems:function($t,Jt){var xn=$t.getWordUntilPosition(Jt),Qn={startLineNumber:Jt.lineNumber,endLineNumber:Jt.lineNumber,startColumn:xn.startColumn,endColumn:xn.endColumn},rr=$t.getLineContent(Jt.lineNumber).substring(xn.startColumn-2,xn.endColumn);return{suggestions:[...ke.keywords.map(Jn=>({label:Jn,kind:nn.languages.CompletionItemKind.Function,documentation:Jn,insertText:Jn,insertTextRules:nn.languages.CompletionItemInsertTextRule.InsertAsSnippet,range:Qn})),...ke.quickKey.map(Jn=>({label:Jn.label,kind:nn.languages.CompletionItemKind.Function,documentation:Jn.content,insertText:rr.startsWith("#")?Jn.content.replace(/#/,""):Jn.content,insertTextRules:nn.languages.CompletionItemInsertTextRule.InsertAsSnippet,range:Qn}))]}}}),nn.languages.registerCompletionItemProvider("scala",{provideCompletionItems:function($t,Jt){var xn=$t.getWordUntilPosition(Jt),Qn={startLineNumber:Jt.lineNumber,endLineNumber:Jt.lineNumber,startColumn:xn.startColumn,endColumn:xn.endColumn},rr=$t.getLineContent(Jt.lineNumber).substring(xn.startColumn-2,xn.endColumn);return{suggestions:[...we.keywords.map(Jn=>({label:Jn,kind:nn.languages.CompletionItemKind.Function,documentation:Jn,insertText:Jn,insertTextRules:nn.languages.CompletionItemInsertTextRule.InsertAsSnippet,range:Qn})),...we.quickKey.map(Jn=>({label:Jn.label,kind:nn.languages.CompletionItemKind.Function,documentation:Jn.content,insertText:rr.startsWith("#")?Jn.content.replace(/#/,""):Jn.content,insertTextRules:nn.languages.CompletionItemInsertTextRule.InsertAsSnippet,range:Qn}))]}}}),nn.languages.registerCompletionItemProvider("python",{provideCompletionItems:function($t,Jt){var xn=$t.getWordUntilPosition(Jt),Qn={startLineNumber:Jt.lineNumber,endLineNumber:Jt.lineNumber,startColumn:xn.startColumn,endColumn:xn.endColumn},rr=$t.getLineContent(Jt.lineNumber).substring(xn.startColumn-2,xn.endColumn);return{suggestions:[...Oe.keywords.map(Jn=>({label:Jn,kind:nn.languages.CompletionItemKind.Function,documentation:Jn,insertText:Jn,insertTextRules:nn.languages.CompletionItemInsertTextRule.InsertAsSnippet,range:Qn})),...Oe.quickKey.map(Jn=>({label:Jn.label,kind:nn.languages.CompletionItemKind.Function,documentation:Jn.content,insertText:rr.startsWith("#")?Jn.content.replace(/#/,""):Jn.content,insertTextRules:nn.languages.CompletionItemInsertTextRule.InsertAsSnippet,range:Qn}))]}}})};const Ke="\u8BE5\u4EFB\u52A1\u5173\u5361\u8BBE\u7F6E\u4E86\u7981\u6B62\u590D\u5236\u7C98\u8D34\uFF0C\u8BF7\u624B\u52A8\u8F93\u5165\u4EE3\u7801\u3002";var Ve=Object.defineProperty,Je=(nn,Pt,Vt)=>Pt in nn?Ve(nn,Pt,{enumerable:!0,configurable:!0,writable:!0,value:Vt}):nn[Pt]=Vt,tt=(nn,Pt,Vt)=>Je(nn,typeof Pt!="symbol"?Pt+"":Pt,Vt);const gt=class W4{constructor(Pt,Vt,on){this.placeholder=Pt,this.editor=Vt,this.monaco=on,Vt.onDidChangeModelContent(()=>this.onDidChangeModelContent()),this.onDidChangeModelContent()}onDidChangeModelContent(){this.editor.getValue()===""?this.editor.addContentWidget(this):this.editor.removeContentWidget(this)}getId(){return W4.ID}getDomNode(){return this.domNode||(this.domNode=document.createElement("div"),this.domNode.style.width="max-content",this.domNode.textContent=this.placeholder,this.domNode.style.fontStyle="initial",this.domNode.style.color="#D7D7D7",this.domNode.style.pointerEvents="none",this.editor.applyFontInfo(this.domNode)),this.domNode}getPosition(){return{position:{lineNumber:1,column:1},preference:[this.monaco.editor.ContentWidgetPositionPreference.EXACT]}}dispose(){this.editor.removeContentWidget(this)}};tt(gt,"ID","editor.widget.placeholderHint");var St=gt,At=Be(96236),vt=Be(8591),Tt=Be(6848),bt=Be(89392),Et=Be(50484),lt=Be(56102),Nt=Object.defineProperty,Zt=Object.defineProperties,Ut=Object.getOwnPropertyDescriptors,Ft=Object.getOwnPropertySymbols,Yt=Object.prototype.hasOwnProperty,dn=Object.prototype.propertyIsEnumerable,Dn=(nn,Pt,Vt)=>Pt in nn?Nt(nn,Pt,{enumerable:!0,configurable:!0,writable:!0,value:Vt}):nn[Pt]=Vt,Rn=(nn,Pt)=>{for(var Vt in Pt||(Pt={}))Yt.call(Pt,Vt)&&Dn(nn,Vt,Pt[Vt]);if(Ft)for(var Vt of Ft(Pt))dn.call(Pt,Vt)&&Dn(nn,Vt,Pt[Vt]);return nn},Zn=(nn,Pt)=>Zt(nn,Ut(Pt)),ln=(nn,Pt)=>{var Vt={};for(var on in nn)Yt.call(nn,on)&&Pt.indexOf(on)<0&&(Vt[on]=nn[on]);if(nn!=null&&Ft)for(var on of Ft(nn))Pt.indexOf(on)<0&&dn.call(nn,on)&&(Vt[on]=nn[on]);return Vt},Gn=(nn,Pt,Vt)=>new Promise((on,$t)=>{var Jt=rr=>{try{Qn(Vt.next(rr))}catch(Jn){$t(Jn)}},xn=rr=>{try{Qn(Vt.throw(rr))}catch(Jn){$t(Jn)}},Qn=rr=>rr.done?on(rr.value):Promise.resolve(rr.value).then(Jt,xn);Qn((Vt=Vt.apply(nn,Pt)).next())});function Wn(nn){return/^\d+$/.test(nn)?`${nn}px`:nn}function qt(){}let xt=!1;const ft={"Python3.6":"python","Python2.7":"python",Dynamips:"cpp",Java:"java",Web:"php",Html:"html",Hive:"sql",Hadoop:"java",SDL:"cpp",PHP:"php",Matlab:"python",Git:"python",Python:"python","C/C++":"cpp","C++":"cpp",C:"cpp",Ruby:"ruby",Shell:"shell",JavaScript:"javascript",Perl6:"perl",Kotlin:"kotlin",Elixir:"elixir",Android:"java",JavaWeb:"java",Go:"go",Spark:"sql",MachineLearning:"python",Verilog:"xml","Verilog/VNC":"xml",Docker:"dockerfile","C#":"csharp",SQLite3:"sql",Oracle:"sql",Vhdl:"vhdl",R:"r",Swift:"swift",SQLServer:"mysql",MySQL:"mysql",Mongo:"sql",PostgreSql:"pgsql",Hbase:"powershell",Sqoop:"sql",Nasm:"cpp",Kafka:"java",Flink:"java",Sml:"javascript",OpenGL:"cpp",Perl5:"perl",Orange:"python",Scala:"scale",solidity:"sol"};function Bt(nn=[]){let Pt=nn;if(Array.isArray(nn)){for(let Vt=0;Vt{var Pt=nn,{width:Vt="100%",height:on="100%",value:$t,language:Jt="javascript",style:xn={},options:Qn={},overrideServices:rr={},theme:Jn="vs-dark",onEditBlur:mr,isCopy:Rr=!1,onSave:Tn,autoHeight:hr=!1,forbidCopy:or=!1,onChange:yr=qt,editorDidMount:ti=qt,onFocus:mi=qt,onBreakPoint:di=qt,breakPointValue:Pi=[],filename:vo="educoder.txt",errorLine:Co,errorContent:To="",highlightLine:xo,openBreakPoint:ma=!1,placeholder:xa=""}=Pt,_i=ln(Pt,["width","height","value","language","style","options","overrideServices","theme","onEditBlur","isCopy","onSave","autoHeight","forbidCopy","onChange","editorDidMount","onFocus","onBreakPoint","breakPointValue","filename","errorLine","errorContent","highlightLine","openBreakPoint","placeholder"]);const ko=(0,He.useRef)(),ro=(0,He.useRef)({}),Rt=(0,He.useRef)(),Kr=(0,He.useRef)(),Bi=(0,He.useRef)([]),_r=(0,He.useRef)(!1),pi=(0,He.useRef)(),ii=(0,He.useRef)(),zi=(0,He.useRef)(!1),[Jr,Kt]=(0,He.useState)(!1);function Le(){let Bn;return ko.current&&(Bn=new et.Z(An=>{for(let Nn of An)(Nn.target.offsetHeight>0||Nn.target.offsetWidth>0)&&ro.current.instance.layout()}),Bn.observe(ko.current)),Bn}function We(){vt.ZP.warning({content:decodeURIComponent(Ke),key:"monaco-editor-tip"})}const De=()=>{let Bn=ro.current.instance;if($t!=null&&Bn&&Jr){const An=Bn.getModel();An&&$t!==An.getValue()&&(xt=!0,An.setValue($t),Bn.layout(),xt=!1)}};(0,He.useEffect)(()=>{const Bn=Et.Z.subscribe("formatDocument",An=>{var Nn;let $n=ro.current.instance;(Nn=$n==null?void 0:$n.getAction)==null||Nn.call($n,"editor.action.formatDocument").run()});return window.updateMonacoValue=An=>{yr(An)},Bn},[]),(0,He.useEffect)(()=>{var Bn;let An=ro.current.instance;Kr.current&&clearTimeout(Kr.current),Kr.current=setTimeout(()=>{De()},500),$t&&($t!=null&&$t.length)&&((Bn=An==null?void 0:An.updateOptions)==null||Bn.call(An,{lineNumbersMinChars:Math.max(Math.floor(Math.log10($t.split(/\r\n|\r|\n/g).length))+3,5)}))},[$t,Jr,ro.current]),(0,He.useEffect)(()=>{if(Co&&ro.current&&ro.current.instance){let An=ro.current.instance;An.changeViewZones(function(Nn){var $n=document.createElement("div");$n.style.padding="10px 20px",$n.style.width="calc(100% - 20px)",$n.className="my-error-line-wrp",$n.innerHTML=To,Nn.addZone({afterLineNumber:Co||11,heightInLines:3,domNode:$n})});var Bn={domNode:null,getId:function(){return"my.overlay.widget"},getDomNode:function(){return this.domNode||(this.domNode=document.createElement("div"),this.domNode.innerHTML="",this.domNode.style.width="100%",this.domNode.style.padding="20px 100px",this.domNode.style.right="0px",this.domNode.style.top="50px",this.domNode.style.position="relative",this.domNode.style.color="#333"),this.domNode},getPosition:function(){return null}};An.addOverlayWidget(Bn),An.revealPositionInCenter({lineNumber:20,column:1})}},[Co,ro.current,Jr]);const qe=(Bn="",An)=>{if(!Bn||Bn.trim()==="")return!0;const $n=ro.current.instance.getModel().getLineTokens(An);let lr=!1;for(let gr=0;gr<2;gr++)$n.getStandardTokenType(gr)===1&&(lr=!0);return lr};(0,He.useEffect)(()=>{var Bn;const An=(Bn=ro.current)==null?void 0:Bn.instance;if(An&&Jr&&or){const Nn=An.onDidBlurEditorWidget(()=>{zi.current=!1}),$n=An.onDidFocusEditorText(()=>{zi.current=!0});return()=>{Nn.dispose(),$n.dispose()}}},[ro.current,Jr,or]),(0,He.useEffect)(()=>{var Bn;if((Bn=ro.current)!=null&&Bn.instance&&Jr&&ma){let An=ro.current.instance,Nn=An.getModel();if(!Nn)return;(()=>{var $i;let wr=[],oi=[];const ji=Nn.getAllDecorations();for(let Vi of ji)Vi.options.className==="highlighted-line"&&(wr.push(($i=Vi==null?void 0:Vi.range)==null?void 0:$i.startLineNumber),oi.push(Vi==null?void 0:Vi.id));if(xo===wr[0])return;Nn.deltaDecorations(oi,[]);const Yi=Nn.getLineCount();xo&&xo<=Yi&&(An.deltaDecorations([],[{range:new Ot.Range(xo,1,xo,Nn.getLineMaxColumn(xo)),options:{isWholeLine:!0,className:"highlighted-line"}}]),An.revealLineInCenter(xo))})();const lr=($i=!1)=>{var wr;let oi=[],ji=[];const Yi=Nn.getAllDecorations();for(let Vi of Yi)Vi.options.linesDecorationsClassName==="breakpoints-select"&&(oi.push((wr=Vi==null?void 0:Vi.range)==null?void 0:wr.startLineNumber),ji.push(Vi==null?void 0:Vi.id));if($i)return{lines:oi,ids:ji};di(oi)},gr=$i=>Gn(void 0,null,function*(){let wr={range:new Ot.Range($i,1,$i,1),options:{isWholeLine:!1,linesDecorationsClassName:"breakpoints-select"}};yield Nn.deltaDecorations([],[wr]),lr()}),Tr=$i=>Gn(void 0,null,function*(){let wr=[];const oi=An.getLineDecorations($i);for(let ji of oi)ji.options.linesDecorationsClassName==="breakpoints-select"&&wr.push(ji.id);yield Nn.deltaDecorations(wr,[]),lr()}),ur=$i=>{let wr=An.getLineDecorations($i);for(let oi of wr)if(oi.options.linesDecorationsClassName==="breakpoints-select")return!0;return!1};if(!(0,bt.isEqual)(Pi,lr(!0).lines)){Nn.deltaDecorations(lr(!0).ids,[]);const $i=Pi.map(wr=>({range:new Ot.Range(wr,1,wr,1),options:{isWholeLine:!1,linesDecorationsClassName:"breakpoints-select"}}));Nn.deltaDecorations([],$i)}const Br=An.onDidChangeModelContent($i=>{let wr=An.getPosition();if(wr){let oi=wr.lineNumber;clearTimeout(ii.current),ii.current=setTimeout(()=>{qe(Nn.getLineContent(oi),oi)?Tr(oi):ur(oi)?(Tr(oi),gr(oi)):lr()},100)}}),jr=An.onMouseDown($i=>{var wr,oi,ji;if($i.target.detail&&((ji=(oi=(wr=$i.target)==null?void 0:wr.element)==null?void 0:oi.className)!=null&&ji.includes("line-numbers"))){let Yi=$i.target.position.lineNumber;if(qe(Nn.getLineContent(Yi),Yi))return;ur(Yi)?Tr(Yi):gr(Yi)}}),fr=$i=>{let wr={range:new Ot.Range($i,1,$i,1),options:{isWholeLine:!1,linesDecorationsClassName:"breakpoints-fake"}};Bi.current=An.deltaDecorations(Bi.current,[wr])},qn=()=>{Bi.current=An.deltaDecorations(Bi.current,[])},fi=An.onMouseMove($i=>{var wr,oi,ji;if(qn(),$i.target.detail&&((ji=(oi=(wr=$i.target)==null?void 0:wr.element)==null?void 0:oi.className)!=null&&ji.includes("line-numbers"))){let Yi=$i.target.position.lineNumber;if(qe(Nn.getLineContent(Yi),Yi))return;fr(Yi)}}),ui=An.onMouseLeave(()=>{qn()});return()=>{Br.dispose(),jr.dispose(),fi.dispose(),ui.dispose()}}},[ro.current,Jr,Pi,xo,ma,Jt]),(0,He.useEffect)(()=>{var Bn;(Bn=ro.current)!=null&&Bn.instance&&ma&&ro.current.instance.setPosition({lineNumber:0,column:0})},[xo]);function dt(){let Bn=ro.current.instance;if(Bn){const An=Bn.getSelection(),Nn=ro.current.pastePos||{},$n=new Ot.Range(Nn.startLineNumber||An.endLineNumber,Nn.startColumn||An.endColumn,Nn.endLineNumber||An.endLineNumber,Nn.endColumn||An.endColumn);setTimeout(()=>{Bn.executeEdits("",[{range:$n,text:""}])},300)}}function Mt(Bn){(window.navigator.platform.match("Mac")?Bn.metaKey:Bn.ctrlKey)&&Bn.keyCode==83&&(Bn.preventDefault(),Tn())}const wt=()=>{if(hr&&ro.current.instance){const Bn=ro.current.instance.getContentHeight();tr(Bn{if(!zi.current)return;const{keyCode:An,ctrlKey:Nn,metaKey:$n,target:lr,type:gr}=Bn;return(gr==="paste"||(An===67||An===86)&&($n||Nn))&&lr.nodeName==="TEXTAREA"&&(We(),Bn.preventDefault()),!1};function zn(Bn,An){var Nn=window.URL||window.webkitURL||window,$n=new Blob([An]),lr=document.createElementNS("http://www.w3.org/1999/xhtml","a");lr.href=Nn.createObjectURL($n),lr.download=Bn,rn(lr)}(0,He.useEffect)(()=>{wt()},[wt]),(0,He.useEffect)(()=>{ko.current&&!Jr&&Promise.all([Be.e(8909),Be.e(6894)]).then(Be.bind(Be,71448)).then(Bn=>{try{Ot=Bn,ro.current.instance=Ot.editor.create(ko.current,{value:$t,language:Bt(Jt),theme:Jn,requireConfig:{"vs/nls":{availableLanguages:{"*":"zh-cn"}}},wordWrap:!0,autoIndent:!0,contextmenu:!0,formatOnType:!0},rr);const An=ro.current.instance;let lr=[...At.BH._menuItems].find(Br=>Br[0]._debugName=="EditorContext")[1],gr=["editor.action.clipboardCopyWithSyntaxHighlightingAction","editor.action.quickCommand","editor.action.clipboardCopyAction","editor.action.clipboardPasteAction","editor.action.clipboardCutAction"],Tr=(Br,jr)=>{var fr,qn;let fi=Br._first;do jr.includes((qn=(fr=fi.element)==null?void 0:fr.command)==null?void 0:qn.id)&&Br._remove(fi);while(fi=fi.next)};if(ti(An,Ot),setTimeout(()=>{wt(),ro.current.instance.addAction({id:"d123123",label:"Download File",contextMenuGroupId:"9_cutcopypaste",run:()=>{zn(vo||"educoder.txt",An.getValue())}})},500),ro.current.subscription=An.onDidChangeModelContent(Br=>{_r.current?clearTimeout(pi.current):(wt(),yr(An.getValue(),Br)),pi.current=setTimeout(()=>{_r.current=!1},500)}),window.Monaco||ze(Ot,Bt(Jt)),or&&(Tr(lr,gr),ko.current.classList.add("noCopyPaste"),window.removeEventListener("keydown",un),window.removeEventListener("paste",un),window.addEventListener("keydown",un),window.addEventListener("paste",un)),window.Monaco=Ot,mr&&An.onDidBlurEditorWidget(()=>{mr(An.getValue())}),mi&&An.onDidFocusEditorText(()=>{mi(An.getValue())}),or)try{An.onDidPaste(Br=>{const jr=An.getSelection(),fr=ro.current.pastePos||{},qn=new Ot.Range(fr.startLineNumber||jr.endLineNumber,fr.startColumn||jr.endColumn,fr.endLineNumber||jr.endLineNumber,fr.endColumn||jr.endColumn);An.executeEdits("",[{range:Br.range,text:""}])})}catch(Br){}let ur=Le();return xa&&typeof xa=="string"&&new St(xa,An,Ot),Kt(!0),()=>{const Br=ro.current.instance;Br.dispose();const jr=Br.getModel();jr&&jr.dispose(),ro.current.subscription&&ro.current.subscription.dispose(),ur.unobserve(ko.current)}}catch(An){}})},[]),(0,He.useEffect)(()=>{if(ro.current.instance&&Jr)return document.addEventListener("keydown",Mt,!1),()=>{document.removeEventListener("keydown",Mt)}},[Tn,Jr]),(0,He.useEffect)(()=>{let Bn=ro.current.instance;if(Bn&&Jr){let An=Bt(Jt);Ot.editor.setModelLanguage(Bn.getModel(),An)}},[Jt,Jr]),(0,He.useEffect)(()=>{ro.current.instance&&Jr&&Ot.editor.setTheme(Jn)},[Jn,Jr]),(0,He.useEffect)(()=>{let Bn=ro.current.instance;Rt.current=Qn,Bn&&Jr&&(Bn.updateOptions(Rn({},Qn)),setTimeout(()=>{Bn.getModel().updateOptions(Rn({},Qn))},200))},[JSON.stringify(Qn),Jr]),(0,He.useEffect)(()=>{let Bn=ro.current.instance;Bn&&Jr&&Bn.layout()},[Vt,on,Jr]);const[Fn,tn]=(0,He.useState)(Wn(Vt)),[Vn,tr]=(0,He.useState)(Wn(on)),dr=Zn(Rn({},xn),{width:Fn,height:Vn,position:"relative"});return He.createElement("div",{className:"my-monaco-editor",ref:ko,style:dr},Rr&&He.createElement(lt.CopyToClipboard,{text:$t,onCopy:()=>vt.ZP.success("\u590D\u5236\u6210\u529F")},He.createElement(Tt.Z,{title:"\u590D\u5236\u4EE3\u7801"},He.createElement("div",{style:{position:"absolute",top:0,right:10,cursor:"pointer",zIndex:10,color:"#165DFF"}},He.createElement("i",{className:"iconfont icon-fuzhi8",style:{fontSize:14}})," \u590D\u5236\u4EE3\u7801"))))};function It({width:nn="100%",height:Pt="100%",original:Vt,modified:on,language:$t,options:Jt={}}){const xn=(0,He.useRef)(),[Qn,rr]=(0,He.useState)(null);function Jn(hr){let or;return xn.current&&(or=new et.Z(yr=>{for(let ti of yr)(ti.target.offsetHeight>0||ti.target.offsetWidth>0)&&hr.layout()}),or.observe(xn.current)),or}(0,He.useEffect)(()=>(xn.current&&Promise.all([Be.e(8909),Be.e(9404)]).then(Be.bind(Be,2550)).then(hr=>{Ot=hr;const or=Ot.editor.createDiffEditor(xn.current,Zn(Rn({enableSplitViewResizing:!1,scrollBeyondLastLine:!1,roundedSelection:!1,renderIndicators:!1,useShadows:!1,horizontal:"hidden",lineNumbers:"off",wordWrap:"off",ignoreTrimWhitespace:!1,"semanticHighlighting.enabled":!0,followsCaret:!0,ignoreCharChanges:!0,minimap:{enabled:!1},readOnly:!0},Jt),{wordWrap:!0}));rr(or);let yr=Jn(or);return()=>{or.dispose();const ti=or.getModel();ti&&ti.dispose(),yr.unobserve(xn.current)}}),()=>{window.removeEventListener("keydown",checkPaste),window.removeEventListener("paste",checkPaste)}),[]),(0,He.useEffect)(()=>{Qn&&Qn.setModel({original:Ot.editor.createModel(Vt,$t),modified:Ot.editor.createModel(on,$t)})},[Vt,on,$t,Qn]);const mr=Wn(nn),Rr=Wn(Pt),Tn={width:mr,height:Rr};return He.createElement("div",{className:"my-diff-editor",ref:xn,style:Tn})}},15965:function(sn,an,Be){"use strict";Be.d(an,{jL:function(){return Ze},w9:function(){return Yt},QD:function(){return yr},cQ:function(){return lt},op:function(){return Jn},O5:function(){return zi},_b:function(){return Co},t7:function(){return de},Gi:function(){return Gn},YG:function(){return Zn},qp:function(){return be},vr:function(){return di},qE:function(){return Tn},Je:function(){return he},wb:function(){return At},cq:function(){return Ot},tp:function(){return ye}});var He=Be(59301),et={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"},Ge="data:image/png;base64,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",Ze=({dataSource:Jr=[],img:Kt,imgWidth:Le=346,title:We,sunTitle:De,bannerExtraContent:qe})=>He.createElement("div",{className:et.banner},He.createElement("div",{className:et.content},He.createElement("aside",null,He.createElement("p",null,He.createElement("b",null,We),He.createElement("span",null,De)),Jr.length>0&&He.createElement("div",{className:et.btns},Jr.map((dt,Mt)=>He.createElement("div",{key:Mt,onClick:dt.click},dt.name,dt.sign?He.createElement("img",{src:Ge,width:39}):null))),qe),Kt&&He.createElement("img",{style:{marginTop:33,marginRight:38},src:Kt,width:Le}))),Oe={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"},we=Be(92310),Te=Be.n(we),Re=Be(89392),be=({dataSource:Jr=[],value:Kt,onChange:Le,onTitleChange:We,className:De,title:qe,titleWidth:dt=41,style:Mt={},fontColor:wt="#6A7283",showCount:rn})=>{const[un,zn]=(0,He.useState)(0),[Fn,tn]=(0,He.useState)(!1),Vn=(0,He.useRef)(null),tr=(0,He.useRef)(null);return(0,He.useEffect)(()=>{var dr;Jr.length!==0&&(((dr=Vn==null?void 0:Vn.current)==null?void 0:dr.clientHeight)>97?zn(1):zn(0)),Jr.length===0&&zn(0),tn(!1)},[Jr]),He.createElement("div",{className:Te()(Oe.row,De),style:Mt},He.createElement("div",{onClick:(0,Re.throttle)(()=>We==null?void 0:We(),2e3),style:{width:dt,marginTop:Fn?12:4},className:`${Oe.title} ${We?"current":""}`},qe),He.createElement("div",{className:Fn?`${Oe.tagsWrap} ${Oe.tagsBorderWrap}`:Oe.tagsWrap},He.createElement("div",{className:Oe.bar,ref:tr,style:un>0?{height:un===1?97:"auto",overflow:un===1?"hidden":"auto",paddingRight:55}:{paddingRight:0}},He.createElement("div",{className:Oe.tag,ref:Vn},Jr==null?void 0:Jr.map(dr=>He.createElement("span",{onClick:()=>Le(dr.id),key:dr.id,style:{color:wt},className:Kt===dr.id?Oe.active:""},He.createElement("span",{title:dr.name,className:Oe.name},dr.name),!!rn&&He.createElement("span",{className:Oe.num},dr.count))))),!!un&&He.createElement(He.Fragment,null,un===1?He.createElement("div",{onClick:()=>{var dr;zn(2),((dr=Vn==null?void 0:Vn.current)==null?void 0:dr.clientHeight)>245?tn(!0):tn(!1)},className:Oe.action},"\u5C55\u5F00",He.createElement("i",{style:{transform:"translateY(1px) scale(0.6)"},className:"iconfont icon-zhankai4"})):He.createElement("div",{onClick:()=>{tr.current.scrollTop=0,zn(1),tn(!1)},className:Oe.action},"\u6536\u8D77",He.createElement("i",{style:{transform:"translateY(0px) scale(0.6)"},className:"iconfont icon-shouqi3"})))))},Pe={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"},ye=({dataSource:Jr=[],value:Kt,onChange:Le,className:We,style:De={}})=>He.createElement("div",{style:De,className:Te()(Pe.tabs,We)},Jr.map(qe=>He.createElement("span",{onClick:()=>Le(qe.id),className:Kt===qe.id?Pe.active:"",key:qe.id},qe.name))),ie={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"},ae=Be(92832),de=({dataSource:Jr=[],value:Kt="",onChange:Le,onInputChange:We=()=>{},className:De,style:qe={},placeholder:dt,allowClear:Mt=!1})=>{var wt;const[rn,un]=(0,He.useState)(""),[zn,Fn]=(0,He.useState)("");(0,He.useEffect)(()=>{var tr;let dr=Kt;(tr=JSON.stringify(Kt))!=null&&tr.includes("{")&&(un(Kt.id),dr=Kt.value||"");try{Fn(decodeURIComponent(dr||""))}catch(Bn){Fn(decodeURIComponent(dr||""))}},[Kt]);const tn=()=>{Le(encodeURIComponent(zn),rn||null)},Vn=tr=>{tr!==rn&&(un(tr),Le(encodeURIComponent(zn),tr))};return He.createElement("div",{className:Te()(ie.input,De),style:qe},!!Jr.length&&He.createElement("div",{className:ie.dropdown},He.createElement("div",{className:ie.text},(wt=Jr.find(tr=>tr.id===rn))==null?void 0:wt.name,He.createElement("i",{className:"iconfont icon-zhankai4"}),He.createElement("b",{className:ie.b1}),He.createElement("b",{className:ie.b2})),He.createElement("div",{className:ie.menu},Jr.map((tr,dr)=>He.createElement("div",{key:dr,onClick:()=>Vn(tr.id)},tr.name)))),He.createElement(ae.default,{onPressEnter:tn,value:zn,onChange:tr=>{Fn(tr.target.value),We(encodeURIComponent(tr.target.value),rn||null)},bordered:!1,placeholder:dt}),He.createElement("i",{onClick:tn,className:"iconfont icon-sousuo9 font14 pl10 current"}))},ve={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"},he=({value:Jr,onChange:Kt,className:Le,total:We,pageSize:De,style:qe={}})=>{const dt=Jr<2,Mt=Jr>=Math.ceil(We/De);return We<=De?He.createElement(He.Fragment,null):He.createElement("div",{className:Te()(ve.quickPager,Le),style:qe},He.createElement("div",{onClick:()=>{dt||Kt(Jr-1,"prev")},className:dt?ve.disabled:""},"\u4E0A\u4E00\u9875"),He.createElement("div",{onClick:()=>{Mt||Kt(Jr+1,"next")},className:Mt?ve.disabled:""},"\u4E0B\u4E00\u9875"))},pe={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"},Se=Be(71418),Ne=Be(6848),ze=Be(13570),Ke=Be(38446),Ve=Be(88230),Je=Be(96908),tt=Be(57177),gt=Be(81378),st=Be(57816),At=({className:Jr,dataSource:Kt=[],col:Le=4,right:We,bottom:De=23,precision:qe=0,wrapWidth:dt=1200,trackEventItems:Mt,loading:wt})=>{const rn=Math.floor((dt-(Le-1)*We)/Le);return He.createElement(Se.Z,{spinning:wt},He.createElement("div",{className:Te()(pe.list,Jr)},!!Kt.length&&Kt.map((un,zn)=>{const{name:Fn,id:tn,identifier:Vn,power:tr,cover_image_id:dr,pic:Bn}=un;return He.createElement("div",{className:pe.wrap,key:tn,style:{width:rn,marginRight:(1+zn)%Le===0?0:We+qe,marginBottom:De}},He.createElement("a",{target:"_blank",href:`/shixuns/${Vn}/challenges`,className:pe.li,onClick:An=>{An.preventDefault(),Mt&&(0,Ve.L9)([Mt]),tr&&(0,Ve.xg)(`/shixuns/${Vn}/challenges`)}},He.createElement("div",{className:pe.img},He.createElement("img",{className:pe.cover,src:`${Bn}`}),un.is_jupyter&&He.createElement("img",{className:pe.sign,src:Je}),un.is_jupyter_lab&&He.createElement("img",{className:pe.sign,src:tt}),un.is_unity_3d&&He.createElement("img",{className:pe.sign,src:gt})),He.createElement("div",{className:pe.name},He.createElement(Ne.Z,{title:Fn||"\u5B9E\u8DF5\u9879\u76EE\u540D\u79F0-\u672A\u586B\u5199"},He.createElement("span",{className:pe.e},Fn||"\u5B9E\u8DF5\u9879\u76EE\u540D\u79F0-\u672A\u586B\u5199"))),He.createElement("div",{className:pe.tags},He.createElement(Ne.Z,{placement:"bottom",title:"\u5173\u5361\u6570"},He.createElement("span",null,He.createElement("i",{className:"iconfont icon-shixunguanqia font14 mr2"}),He.createElement("span",null,un.challenges_count))),!!un.myshixuns_count&&He.createElement(Ne.Z,{placement:"bottom",title:"\u5B66\u4E60\u4EBA\u6570"},He.createElement("span",null,He.createElement("i",{className:"iconfont icon-chengyuan font14 mr2"}),He.createElement("span",null,un.myshixuns_count))),He.createElement(Ne.Z,{placement:"bottom",title:"\u96BE\u5EA6\u7B49\u7EA7"},He.createElement("span",null,He.createElement("span",null,un.level))),He.createElement("div",{className:pe.rate},He.createElement(ze.Z,{allowHalf:!0,disabled:!0,defaultValue:un.score_info}),He.createElement("span",null,"\xA0",un.score_info?`${un.score_info}\u5206`:"5\u5206")))),!tr&&He.createElement("div",{className:pe.lockWrap},He.createElement("img",{src:`${Ke.Z.IMG_SERVER}/images/educoder/icon/lockclose.svg`}),He.createElement("span",{className:"mt15 font16 c-white"},"\u5B9A\u5411\u5F00\u653E\u5185\u5BB9\uFF0C\u9700\u8981\u6388\u6743")))}),!Kt.length&&He.createElement(st.Z,null)))},vt={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"},Tt=Be(73898),bt=Be(59301),lt=({className:Jr,dataSource:Kt=[],col:Le=4,right:We,bottom:De=23,precision:qe=0,wrapWidth:dt=1200,trackEventItems:Mt,loading:wt,onRemove:rn=()=>{},isCurrent:un=!0,showAlias:zn=!1})=>{const Fn=Math.floor((dt-(Le-1)*We)/Le),tn=[{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"}];return bt.createElement(Se.Z,{spinning:wt},bt.createElement("div",{className:Te()(vt.list,Jr)},!!(Kt!=null&&Kt.length)&&(Kt==null?void 0:Kt.map((Vn,tr)=>{var dr;const{name:Bn,id:An,identifier:Nn,featured:$n,school_name:lr,image_url:gr,excellent:Tr,is_plan:ur}=Vn;return bt.createElement("div",{key:An,className:vt.wrap,style:{width:Fn,marginRight:(1+tr)%Le===0?0:We+qe,marginBottom:De}},bt.createElement("a",{className:vt.li,onClick:Br=>{Br.preventDefault(),Br.stopPropagation(),Mt&&(0,Ve.L9)([Mt]),(0,Ve.xg)(`/paths/${Nn}`)}},bt.createElement("div",{className:vt.img},bt.createElement("img",{className:vt.cover,src:`${gr}`}),un&&(0,Tt.bg)()&&(Vn==null?void 0:Vn.studying)&&bt.createElement("div",{className:`${vt.movebq} user-path-items`,onClick:Br=>{Br.stopPropagation(),rn(Vn)}},bt.createElement("i",{className:"iconfont icon-yichu1 mr5 c-red"}),bt.createElement("span",{className:"c-red"},"\u79FB\u9664")),(dr=Vn==null?void 0:Vn.subject_tags)==null?void 0:dr.map((Br,jr)=>{var fr,qn;if(jr===0){const ui=(fr=tn.find($i=>$i.name==Br))==null?void 0:fr.swimg;return bt.createElement("img",{className:vt.sign,src:ui,style:{left:"-4px"}})}const fi=(qn=tn.find(ui=>ui.name==Br))==null?void 0:qn.ptimg;return bt.createElement("img",{className:vt.sign,src:fi,style:{left:`${48+52*(jr-1)+2*jr}px`}})}),bt.createElement("div",{style:{position:"absolute",top:"150px",left:"4px"}},(Vn==null?void 0:Vn.excellent)&&bt.createElement("div",{className:vt.bq},"\u5F00\u653E\u8BFE\u7A0B"))),bt.createElement("div",{className:vt.name},bt.createElement(Ne.Z,{title:zn&&(Vn!=null&&Vn.excellent_alias_name)?bt.createElement("span",null,`\u8BFE\u7A0B\u539F\u540D\uFF1A${Bn}`,bt.createElement("br",null),bt.createElement("span",null,`\u8BFE\u7A0B\u522B\u540D\uFF1A${Vn==null?void 0:Vn.excellent_alias_name}`)):Bn},bt.createElement("span",{className:vt.e},zn&&(Vn==null?void 0:Vn.excellent_alias_name)||Bn))),bt.createElement(Ne.Z,{title:`\u53D1\u5E03\u5355\u4F4D\uFF1A${lr}`},bt.createElement("div",{className:vt.unit},bt.createElement("i",{className:"iconfont icon-danwei1 font14 mr3"}),lr)),bt.createElement("div",{className:vt.tags},bt.createElement("div",null,bt.createElement(Ne.Z,{placement:"bottom",title:"\u7AE0\u8282\u6570"},bt.createElement("span",null,bt.createElement("i",{className:"iconfont icon-zhangjie1 font14 mr3"}),bt.createElement("span",null,Vn.stages_count))),bt.createElement(Ne.Z,{placement:"bottom",title:"\u5B66\u4E60\u4EBA\u6570"},bt.createElement("span",null,bt.createElement("i",{className:"iconfont icon-chengyuan font14 mr3"}),bt.createElement("span",null,Vn.members_count)))))))})),!Kt.length&&bt.createElement(st.Z,null)))},Nt={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"},Zt="data:image/png;base64,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",Ut=Be(59301),Yt=({className:Jr,dataSource:Kt=[],col:Le=4,right:We,bottom:De=23,precision:qe=0,wrapWidth:dt=1200,trackEventItems:Mt,loading:wt,handleVery:rn=()=>{}})=>{const un=Math.floor((dt-(Le-1)*We)/Le);return Ut.createElement(Se.Z,{spinning:wt},Ut.createElement("div",{className:Te()(Nt.list,Jr)},!!Kt.length&&Kt.map((zn,Fn)=>{const{subject_identifier:tn,id:Vn,identifier:tr,power:dr}=zn,Bn=zn.is_public!=0&&zn.is_public;return Ut.createElement("div",{className:Nt.wrap,key:Vn,style:{width:un,marginRight:(1+Fn)%Le===0?0:We+qe,marginBottom:De}},Ut.createElement("a",{className:Nt.li,onClick:An=>{An.preventDefault(),rn(zn==null?void 0:zn.first_category_url)}},Ut.createElement("div",{className:Nt.top},Ut.createElement(Ne.Z,{title:zn.name},Ut.createElement("div",{className:Nt.name},zn.name)),Ut.createElement("img",{className:Nt.img,src:Ke.Z.IMG_SERVER+"/images/"+zn.avatar_url}),Ut.createElement("div",{className:Nt.text,title:zn.creator},zn.creator),tn&&Ut.createElement("div",{className:Nt.btns},Ut.createElement("div",null,"\u5F00\u653E\u8BFE\u7A0B"),Ut.createElement("aside",null,"\u5F00\u653E\u8BFE\u5802")),Bn&&Ut.createElement("div",{className:Nt.sign},"\u516C\u5F00")),Ut.createElement("div",{className:Nt.bottom},zn.visits>0&&Ut.createElement(Ne.Z,{title:"\u8BBF\u95EE\u91CF",placement:"bottom"},Ut.createElement("span",null,Ut.createElement("i",{className:"iconfont icon-liulanyan"}),Ut.createElement("span",null,zn.visits))),zn.course_members_count>0&&Ut.createElement(Ne.Z,{title:"\u6210\u5458",placement:"bottom"},Ut.createElement("span",null,Ut.createElement("i",{className:"iconfont icon-chengyuan"}),zn.course_members_count)),zn.tasks_count>0&&Ut.createElement(Ne.Z,{title:"\u4F5C\u4E1A",placement:"bottom"},Ut.createElement("span",null,Ut.createElement("i",{className:"iconfont icon-zuoye"}),zn.tasks_count)),zn.is_end?Ut.createElement("div",{style:{color:"#6B758B"}},"\u5DF2\u7ED3\u675F"):Ut.createElement("div",{style:{color:"#00B187"}},"\u8FDB\u884C\u4E2D"))),!zn.is_accessible&&Ut.createElement("div",{className:Nt.lockWrap},Ut.createElement("img",{src:`${Ke.Z.IMG_SERVER}/images/educoder/icon/lockclose.svg`}),Ut.createElement("span",{className:"mt15 font16 c-white"},"\u975E\u8BFE\u5802\u6210\u5458\u4E0D\u53EF\u8FDB\u5165")))}),!Kt.length&&Ut.createElement(st.Z,null)))},dn={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"},Dn=Be(24459),Zn=({dataSource:Jr=[],value:Kt,onChange:Le,className:We,style:De={},tabBarExtraContent:qe})=>He.createElement("div",{className:Te()(dn.tabs,We),style:De},He.createElement("div",{className:dn.tabsWrap},Jr.map((dt,Mt)=>!(dt!=null&&dt.hide)&&He.createElement("aside",{className:dn.tab,onClick:()=>{Le(dt.id),dt.link&&Dn.history.push(dt.link)},key:Mt},He.createElement("div",{className:Kt===dt.id?dn.active:""},dt.name),(dt==null?void 0:dt.resetCount)==null&&(dt==null?void 0:dt.total)!==void 0&&He.createElement("span",null,"\uFF08",dt==null?void 0:dt.total,"\uFF09"),(dt==null?void 0:dt.resetCount)!==void 0&&(dt==null?void 0:dt.total)!==void 0&&He.createElement(Ne.Z,{title:(dt==null?void 0:dt.tip)!=null?dt==null?void 0:dt.tip:""},He.createElement("span",{style:{color:"#9096A3"}},"\uFF08",He.createElement("span",{style:{color:"#000"}},dt==null?void 0:dt.resetCount),"/",He.createElement("span",null,dt==null?void 0:dt.total),"\uFF09"))))),He.createElement("div",{className:dn.tabBar},qe)),Gn=({className:Jr,style:Kt={},children:Le})=>He.createElement("div",{className:Te()(Jr),style:Kt},Le),Wn={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"},qt=Be(38854),xt=Be(20834);const ft=[{id:"updated_at",name:"\u6700\u65B0\u52A8\u6001"},{id:"created_at",name:"\u6700\u65B0\u521B\u5EFA"},{id:"name",name:"\u540D\u79F0\u6392\u5E8F"}];var Ot=({sortValue:Jr,dropValue:Kt,className:Le,onSort:We,onDrop:De,dataSource:qe=ft})=>{var dt;return He.createElement("div",{className:Te()(Wn.orderWrap,Le)},He.createElement(qt.Z,{dropdownRender:()=>He.createElement(xt.default,null,qe.map((Mt,wt)=>He.createElement(xt.default.Item,{key:wt,onClick:()=>De(Mt.id)},Mt.name)))},He.createElement("span",{className:Wn.orderTextWrap},(dt=qe.find(Mt=>Kt===Mt.id))==null?void 0:dt.name)),He.createElement("span",{className:Wn.orderIconWrap},He.createElement("span",{className:Wn.orderAsc},He.createElement("i",{className:Jr==="asc"?`iconfont icon-sanjiaoxing-up font12 ${Wn.cursorPointer} ${Wn.active}`:`iconfont icon-sanjiaoxing-up font12 ${Wn.cursorPointer}`,onClick:()=>We(Jr==="asc"?"desc":"asc")})),He.createElement("span",{className:Wn.orderDesc},He.createElement("i",{className:Jr==="desc"?`iconfont icon-sanjiaoxing-down font12 ${Wn.cursorPointer} ${Wn.active}`:`iconfont icon-sanjiaoxing-down font12 ${Wn.cursorPointer}`,onClick:()=>We(Jr==="asc"?"desc":"asc")}))))},ut={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"},It=Be(3113),nn=Object.defineProperty,Pt=Object.getOwnPropertySymbols,Vt=Object.prototype.hasOwnProperty,on=Object.prototype.propertyIsEnumerable,$t=(Jr,Kt,Le)=>Kt in Jr?nn(Jr,Kt,{enumerable:!0,configurable:!0,writable:!0,value:Le}):Jr[Kt]=Le,Jt=(Jr,Kt)=>{for(var Le in Kt||(Kt={}))Vt.call(Kt,Le)&&$t(Jr,Le,Kt[Le]);if(Pt)for(var Le of Pt(Kt))on.call(Kt,Le)&&$t(Jr,Le,Kt[Le]);return Jr},xn=(Jr,Kt)=>{var Le={};for(var We in Jr)Vt.call(Jr,We)&&Kt.indexOf(We)<0&&(Le[We]=Jr[We]);if(Jr!=null&&Pt)for(var We of Pt(Jr))Kt.indexOf(We)<0&&on.call(Jr,We)&&(Le[We]=Jr[We]);return Le},Qn=(Jr,Kt,Le)=>new Promise((We,De)=>{var qe=wt=>{try{Mt(Le.next(wt))}catch(rn){De(rn)}},dt=wt=>{try{Mt(Le.throw(wt))}catch(rn){De(rn)}},Mt=wt=>wt.done?We(wt.value):Promise.resolve(wt.value).then(qe,dt);Mt((Le=Le.apply(Jr,Kt)).next())}),Jn=Jr=>{var Kt=Jr,{className:Le,style:We,children:De,loading:qe=!1,openLoading:dt,onClick:Mt=()=>{},size:wt="middle",shape:rn="round"}=Kt,un=xn(Kt,["className","style","children","loading","openLoading","onClick","size","shape"]);const[zn,Fn]=(0,He.useState)(!1);return He.createElement(It.ZP,Jt({onClick:(0,Re.throttle)(tn=>Qn(void 0,null,function*(){dt&&Fn(!0);try{yield Mt(tn)}catch(Vn){console.log("error",Vn)}dt&&Fn(!1)}),2e3,{leading:!0,trailing:!1}),className:Te()(ut.btn,ut[`${wt}-${rn}`],Le),style:We,size:wt,shape:rn,loading:zn||qe},un),De)},mr={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"},Tn=({className:Jr,style:Kt,children:Le=null,onClick:We,title:De})=>He.createElement("div",{className:Te()(mr.head,Jr),style:Kt},He.createElement("span",{className:"primary-hover",onClick:We},He.createElement("i",{className:"iconfont icon-fanhui2 font12"}),"\u8FD4\u56DE"),He.createElement("b",{title:De},De),He.createElement("div",{className:mr.node},Le)),hr={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"},yr=({confirmShow:Jr=!0,confirmTitle:Kt,confirmClick:Le,cancelShow:We=!0,cancelTitle:De,cancelClick:qe,className:dt,style:Mt,confirmLoading:wt=!1})=>He.createElement("div",{className:Te()(hr.btns,dt),style:Mt},Jr&&He.createElement(It.ZP,{loading:wt,onClick:Le,type:"primary",className:hr.confirm},Kt),We&&He.createElement(It.ZP,{onClick:qe,className:hr.cancel},De)),ti={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"},di=({className:Jr,style:Kt={},LeftContent:Le,children:We,RightContent:De})=>He.createElement("div",{className:Te()(ti.fixedBottom,Jr),style:Kt},He.createElement("div",{className:ti.wrap},He.createElement("div",{className:ti.left},Le),He.createElement("div",{className:ti.center},We),He.createElement("div",{className:ti.right},De))),Pi={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"},Co=({className:Jr,style:Kt={},dataSource:Le=[]})=>He.createElement("div",{className:Te()(Pi.crumbs,Jr),style:Kt},Le.map((We,De)=>DeDn.history.push(We.path)},We.name):He.createElement("span",null,We.name),He.createElement("span",null,"\xA0",">","\xA0")):He.createElement("span",{key:De,style:{color:"#5F6368"}},We.name))),To=Be(31797),xo=Object.defineProperty,ma=Object.defineProperties,xa=Object.getOwnPropertyDescriptors,_i=Object.getOwnPropertySymbols,ko=Object.prototype.hasOwnProperty,ro=Object.prototype.propertyIsEnumerable,Rt=(Jr,Kt,Le)=>Kt in Jr?xo(Jr,Kt,{enumerable:!0,configurable:!0,writable:!0,value:Le}):Jr[Kt]=Le,Kr=(Jr,Kt)=>{for(var Le in Kt||(Kt={}))ko.call(Kt,Le)&&Rt(Jr,Le,Kt[Le]);if(_i)for(var Le of _i(Kt))ro.call(Kt,Le)&&Rt(Jr,Le,Kt[Le]);return Jr},Bi=(Jr,Kt)=>ma(Jr,xa(Kt)),_r=(Jr,Kt)=>{var Le={};for(var We in Jr)ko.call(Jr,We)&&Kt.indexOf(We)<0&&(Le[We]=Jr[We]);if(Jr!=null&&_i)for(var We of _i(Jr))Kt.indexOf(We)<0&&ro.call(Jr,We)&&(Le[We]=Jr[We]);return Le};const{Countdown:pi}=To.default;var zi=Jr=>{var Kt=Jr,{onChange:Le}=Kt,We=_r(Kt,["onChange"]);const[De,qe]=(0,He.useState)(null);(0,He.useEffect)(()=>{typeof De=="number"&&De>=0&&Le(De)},[De]);const dt=Mt=>{const wt=Math.floor(Mt/1e3);qe(wt)};return He.createElement(pi,Bi(Kr({},We),{onChange:dt}))}},50505:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return et}});var He=Be(59301);function et(Ge,ke){const Ze=(0,He.useRef)();(0,He.useEffect)(()=>{Ze.current=Ge}),(0,He.useEffect)(()=>{function Oe(){Ze.current()}if(ke!==null){let we=setInterval(Oe,ke);return()=>clearInterval(we)}},[ke])}},85439:function(sn,an,Be){"use strict";Be.d(an,{Q8:function(){return lt},d0:function(){return Nt},w6:function(){return Et}});var He=Be(59301),et=Be(5083),Ge=Be(57809),ke=Be(8591),Ze=Be(43418),Oe=Be(5112),we=Be(95237),Te=Be(43604),Re=Be(6848),Ie=Be(24905),be=Be(3113),Pe=Be(61186),je=Be.n(Pe),ye=Be(73898),ie=Be(7660),ae=Be(89392),fe=Be.n(ae),de=Be(88230),ve=Be(774),xe=Be(24459),he=Be(55954),pe=Be(82309),Se=Be(51269),Ne=Be(20527),ze=Be(49898),Ke=Be(59301),Ve=Object.defineProperty,Je=Object.defineProperties,tt=Object.getOwnPropertyDescriptors,gt=Object.getOwnPropertySymbols,st=Object.prototype.hasOwnProperty,St=Object.prototype.propertyIsEnumerable,At=(dn,Dn,Rn)=>Dn in dn?Ve(dn,Dn,{enumerable:!0,configurable:!0,writable:!0,value:Rn}):dn[Dn]=Rn,vt=(dn,Dn)=>{for(var Rn in Dn||(Dn={}))st.call(Dn,Rn)&&At(dn,Rn,Dn[Rn]);if(gt)for(var Rn of gt(Dn))St.call(Dn,Rn)&&At(dn,Rn,Dn[Rn]);return dn},Tt=(dn,Dn)=>Je(dn,tt(Dn)),bt=(dn,Dn,Rn)=>new Promise((Zn,ln)=>{var Gn=xt=>{try{qt(Rn.next(xt))}catch(ft){ln(ft)}},Wn=xt=>{try{qt(Rn.throw(xt))}catch(ft){ln(ft)}},qt=xt=>xt.done?Zn(xt.value):Promise.resolve(xt.value).then(Gn,Wn);qt((Rn=Rn.apply(dn,Dn)).next())});function Et(dn,Dn){const Rn=[];for(let Zn=dn;Zn{const Zn=dnje()(Dn).endOf("day"),Gn=dn{const Rn=parseInt(je()(dn).format("HH")),Zn=parseInt(je()().format("HH")),ln=parseInt(je()().format("mm"));if(!dn)return{disabledHours:()=>Et(0,Zn),disabledMinutes:()=>Et(0,ln)};if(Dn){const Gn=parseInt(je()(Dn).format("HH")),Wn=parseInt(je()(Dn).format("mm"));return je()(dn).isSame(je()(Dn),"day")?{disabledHours:()=>Et(0,Gn),disabledMinutes:()=>Rn<=Gn?Et(0,Wn):[]}:void 0}if(je()(dn).isSame(je()(),"day"))return{disabledHours:()=>Et(0,Zn),disabledMinutes:()=>je()(dn).isSame(je()(),"hour")&&Rn<=Zn?Et(0,ln):[]}},Zt=(dn,Dn)=>dn==null?void 0:dn.map(Rn=>{var Zn;return(Zn=Dn==null?void 0:Dn.find(ln=>ln.value===Rn))==null?void 0:Zn.id}),{RangePicker:Ut}=et.default,{Option:Ft}=Ge.default,Yt=({shixunHomeworks:dn,loading:Dn,dispatch:Rn,classroomList:Zn,user:ln})=>{var Gn,Wn,qt,xt,ft,Bt,Ot,ut,It;const nn=(0,xe.useParams)(),{workSetting:Pt,workList:Vt,shixunWorkList:on,headerInfo:$t,changeData:Jt}=dn,[xn,Qn]=(0,He.useState)(!1),[rr,Jn]=(0,He.useState)(!1);let[mr,Rr]=(0,He.useState)([]),[Tn,hr]=(0,He.useState)([]),[or,yr]=(0,He.useState)({unified_setting:!1,publish_time:"",end_time:"",allow_late:!1,unified_late:!0,late_time:"",late_penalty:0,penalty_type:he.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[ti,mi]=(0,He.useState)({}),[di,Pi]=(0,He.useState)({});(0,He.useEffect)(()=>()=>{Rr([])},[]),(0,He.useEffect)(()=>{Qn(!(0,ye.GJ)())},[(0,ye.GJ)()]);const vo=()=>{Rn({type:"shixunHomeworks/getWorkSetting",payload:vt({},nn)})};(0,He.useEffect)(()=>{if(!(Pt!=null&&Pt.course_id))return;Object.keys(or).map(function(Bi){or[Bi]=Pt[Bi]}),(!or.allow_late||!or.unified_late)&&(or.late_penalty=20,or.penalty_type=he.Q.Percent),or.unified_setting||(or.unified_late=!1,or.unified_anonymous_comment=!1,or.unified_anonymous_appeal=!1),mr=JSON.parse(JSON.stringify(Pt.group_settings.map(Bi=>Tt(vt({},Bi),{group_name:[Bi.group_name]})).filter(Bi=>Bi.publish_time!==null))),Tn=JSON.parse(JSON.stringify(Pt.allow_late_settings.map(Bi=>Tt(vt({},Bi),{group_name:[Bi.group_name]})).filter(Bi=>Bi.late_time!==null))),yr(vt({},or));const Kr=(0,de.QE)((mr==null?void 0:mr.length)>0?mr:[]);Rr([...Kr]),(Tn==null?void 0:Tn.length)<=0?hr([{penalty_type:he.Q.Percent,late_penalty:20}]):hr([...Tn])},[Pt]);const Co=()=>bt(void 0,null,function*(){var Kr,Bi;if(((Kr=ln==null?void 0:ln.userInfo)==null?void 0:Kr.user_status)===2){(0,pe.Rd)();return}const _r=JSON.parse(JSON.stringify(or));if(_r.challenge_settings.filter(ii=>!ii.hide),_r.categoryId=nn.categoryId,(Bi=_r.challenge_settings)!=null&&Bi.every(ii=>!ii.checked)){ke.ZP.warning("\u5173\u5361\u4E0D\u80FD\u5168\u90E8\u8BBE\u7F6E\u4E3A\u53EF\u4E0D\u505A");return}if(console.log(mr),!or.unified_setting)mr=mr==null?void 0:mr.map(ii=>{var zi;if(!ii.publish_time||!ii.end_time)throw ke.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(!ii.group_name)throw ke.ZP.error("\u8BF7\u9009\u62E9\u5206\u73ED\u540D\u79F0"),new String("\u8BF7\u9009\u62E9\u5206\u73ED\u540D\u79F0");return ii.group_name=typeof(ii==null?void 0:ii.group_name)=="string"?[ii==null?void 0:ii.group_name]:ii==null?void 0:ii.group_name,ii.group_id=(zi=Pt.group_settings)==null?void 0:zi.filter(Jr=>{var Kt;return(Kt=ii==null?void 0:ii.group_name)==null?void 0:Kt.includes(Jr.group_name)}).map(Jr=>Jr.group_id||Jr.id).toString().split(","),ii});else if(!or.publish_time||!or.end_time)throw ke.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(_r.group_settings=mr,or.allow_late)if(or.unified_late){if(or.late_penalty===null||or.late_penalty===void 0||or.late_penalty<0||or.late_penalty>100)throw ke.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(!or.late_time)throw ke.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 Tn=Tn==null?void 0:Tn.map(ii=>{var zi,Jr;if(ii.late_penalty===null||ii.late_penalty===void 0||ii.late_penalty<0||ii.late_penalty>100)throw ke.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(!ii.late_time)throw ke.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(!ii.group_name)throw ke.ZP.error("\u8BF7\u9009\u62E9\u5206\u73ED\u540D\u79F0"),new String("\u8BF7\u9009\u62E9\u5206\u73ED\u540D\u79F0");return ii.group_name=typeof(ii==null?void 0:ii.group_name)=="string"?[ii==null?void 0:ii.group_name]:ii==null?void 0:ii.group_name,ii.group_id=(Jr=(zi=ii==null?void 0:ii.group_name)==null?void 0:zi.map(Kt=>{var Le,We;let De=(We=(Le=Pt.group_settings)==null?void 0:Le.filter(qe=>(qe==null?void 0:qe.group_name)===Kt))==null?void 0:We[0];return De==null?void 0:De.group_id}))==null?void 0:Jr.toString().split(","),ii}),_r.allow_late_settings=Tn;let pi=yield(0,ze.Tr)({homework_common_ids:[parseInt(nn.categoryId)],course_id:nn.coursesId,type:"homework_common"});(pi==null?void 0:pi.student_count)===0?To(_r):(Pi(_r),mi(pi))}),To=Kr=>{var Bi;if(Kr.total_score===null){ke.ZP.warning("\u603B\u5206\u503C\u4E0D\u80FD\u4E3A\u7A7A");return}if(Kr!=null&&Kr.work_efficiency&&Kr.eff_score===null){ke.ZP.warning("\u6548\u7387\u5206\u4E0D\u80FD\u4E3A\u7A7A");return}const _r=Kr.challenge_settings.reduce((zi,Jr)=>zi+Number(Jr.challenge_score),0);if((_r==null?void 0:_r.toFixed(10))!==((Bi=Kr.total_score-Kr.eff_score)==null?void 0:Bi.toFixed(10))){ke.ZP.warning(`\u6548\u7387\u5206\u52A0\u5173\u5361\u4EFB\u52A1\u603B\u5206\u5FC5\u987B\u7B49\u4E8E\u603B\u5206\u503C\uFF1A${Kr.total_score}\u5206`);return}const pi={shixun_evaluation:Kr.shixun_evaluation,challenge_settings:Kr.challenge_settings};let ii=()=>{var zi;const Jr=()=>bt(void 0,null,function*(){Jn(!0),(yield(0,ie.ZP)(`/api/homework_commons/${nn.categoryId}/publish_setting.json`,{method:"post",body:vt({},Kr)})).status===0&&(ke.ZP.success("\u66F4\u65B0\u6210\u529F"),vo(),Rn({type:"shixunHomeworks/getShixunWorkHeadInfo",payload:vt({},nn)})),Jn(!1)});!(0,ae.isEqual)(Jt,pi)&&!((zi=$t==null?void 0:$t.homework_status)!=null&&zi.includes("\u672A\u53D1\u5E03"))?Ze.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:Jr}):Jr()};Pt!=null&&Pt.high_resources_consume&&!(Pt!=null&&Pt.high_resources_consume_permission)?Rn({type:"classroomList/setActionTabs",payload:{key:"\u6388\u6743\u4F7F\u7528",id:nn.coursesId,type:"shixun",type_id:nn.categoryId,name:Pt.homework_name,fn:()=>{ii()}}}):ii()},xo=(Kr,Bi,_r="group_id")=>{var pi;return Bi?Bi.find(ii=>ii[_r]===Kr):(pi=Pt==null?void 0:Pt.group_settings)==null?void 0:pi.find(ii=>ii.group_id[0]===Kr)},ma=(Pt==null?void 0:Pt.allow_late)||(Pt==null?void 0:Pt.anonymous_comment),xa=Kr=>{var Bi,_r;const pi=xo(Kr,Pt==null?void 0:Pt.allow_late_settings,"id"),ii=xo(Kr,Pt==null?void 0:Pt.anonymous_comment_settings),zi=xo(Kr);return(Pt==null?void 0:Pt.allow_late)&&pi&&je()(pi==null?void 0:pi.late_time)<=je()()||(Pt==null?void 0:Pt.anonymous_comment)&&ii&&(ii==null?void 0:ii.evaluation_start)!==null||((_r=(je()(zi==null?void 0:zi.end_time)<=je()()&&((Bi=Pt==null?void 0:Pt.allow_late_settings)==null?void 0:Bi.filter(Jr=>Jr.group_id.includes(Kr))))[0])==null?void 0:_r.late_time)!=null},_i=(0,He.useMemo)(()=>(Pt==null?void 0:Pt.allow_late)||(Pt==null?void 0:Pt.all_group_late),[Pt,$t]),ko=Pt==null?void 0:Pt.anonymous_comment,ro=Kr=>{if(!Kr)return!1;const Bi=xo(Kr,Pt==null?void 0:Pt.anonymous_comment_settings);return(Pt==null?void 0:Pt.anonymous_comment)&&Bi&&(Bi==null?void 0:Bi.evaluation_start)!==null},Rt=(Kr,Bi)=>{var _r,pi,ii,zi,Jr;Kr!=null&&Kr.group_id||(Kr.group_id=Zt(Kr==null?void 0:Kr.group_name,Pt==null?void 0:Pt.group_settings)),Rn({type:"classroomList/setActionTabs",payload:{key:"\u5206\u73ED\u53D1\u5E03-\u53D1\u5E03\u89C4\u5219\u62C6\u5206",data:Kr,index:Bi,rangePickerDisabled:(pi=(_r=Kr==null?void 0:Kr.group_id)==null?void 0:_r[0])!=null&&pi.publish_time?xn||(je()()<=je()((zi=xo((ii=Kr==null?void 0:Kr.group_id)==null?void 0:ii[0]))==null?void 0:zi.publish_time)?!1:[!0,xa((Jr=Kr==null?void 0:Kr.group_id)==null?void 0:Jr[0])]):!1,disabledDate:Pt==null?void 0:Pt.course_end_date}})};return Ke.createElement("section",{className:ve.Z.form},Ke.createElement("div",{className:ve.Z.title},"\u4F5C\u4E1A\u53D1\u5E03",Ke.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")),Ke.createElement("div",null,Ke.createElement("div",{style:{background:"#F6F7F9",padding:"13px 30px",display:"flex",alignItems:"center"}},Ke.createElement(Oe.ZP.Group,{disabled:xn||!((Gn=$t==null?void 0:$t.homework_status)!=null&&Gn.includes("\u672A\u53D1\u5E03"))||(0,ye.Rm)()&&!((Wn=Zn.AssistantObject.practice)!=null&&Wn.can_publish),value:or.unified_setting,onChange:Kr=>{var Bi;if(!((Bi=$t==null?void 0:$t.homework_status)!=null&&Bi.includes("\u672A\u53D1\u5E03"))){ke.ZP.error("\u5DF2\u53D1\u5E03\uFF0C\u4E0D\u80FD\u518D\u4FEE\u6539\u7EDF\u4E00\u8BBE\u7F6E");return}if(or.unified_setting=!or.unified_setting,or.unified_setting||(or.unified_late=!1,hr([{late_penalty:5}])),yr(Object.assign({},or)),or.unified_setting===!1&&mr==""){Rr(mr.concat({}));return}or.unified_setting&&(Rr([]),hr([{late_penalty:5}]))}},Ke.createElement(Oe.ZP,{value:!0,disabled:xn||!(Pt!=null&&Pt.manage_all_group),style:{marginRight:"50px"}},"\u7EDF\u4E00\u53D1\u5E03"),Ke.createElement(Oe.ZP,{disabled:xn||!((qt=Pt==null?void 0:Pt.group_settings)!=null&&qt.length),value:!1},"\u5206\u73ED\u53D1\u5E03")),((xt=Pt==null?void 0:Pt.group_settings)==null?void 0:xt.length)===0&&Ke.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")),or.unified_setting&&Ke.createElement("div",{style:{display:"flex",color:"#666666",background:"#F6F7F9",padding:"5px 30px",height:"50px",marginTop:"1px"}},Ke.createElement(we.Z,{align:"middle"},Ke.createElement(Te.Z,{style:{marginLeft:"23px"}},"\u53D1\u5E03\u65F6\u95F4"),Ke.createElement(Te.Z,{className:"ml10"},Ke.createElement(et.default,{size:"large",disabled:xn||!((ft=$t==null?void 0:$t.homework_status)!=null&&ft.includes("\u672A\u53D1\u5E03")||(Bt=$t==null?void 0:$t.homework_status)!=null&&Bt.includes("\u672A\u5F00\u59CB"))||(0,ye.Rm)()&&!((Ot=Zn.AssistantObject.practice)!=null&&Ot.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:Kr=>lt(Kr,Pt==null?void 0:Pt.course_end_date),disabledTime:Kr=>Nt(Kr),value:or.publish_time?je()(or.publish_time):"",onChange:(Kr,Bi)=>{or.publish_time=Bi,(or.end_time==""||!or.end_time)&&or.unified_setting&&(or.end_time=je()(Kr).add(7,"days").format("YYYY-MM-DD HH:mm:ss")),yr(Object.assign({},or))}}))),Ke.createElement(we.Z,{align:"middle",className:"pl30"},Ke.createElement(Te.Z,null,"\u622A\u6B62\u65F6\u95F4"),Ke.createElement(Te.Z,{className:"ml10"},Ke.createElement(et.default,{size:"large",style:{width:170},allowClear:!1,placeholder:"\u8BF7\u9009\u62E9\u622A\u6B62\u65F6\u95F4",showTime:{format:"HH:mm",defaultValue:je()((0,de.U6)(),"HH:mm")},format:"YYYY-MM-DD HH:mm",disabled:(Pt==null?void 0:Pt.allow_late)&&(Pt==null?void 0:Pt.homework_status.includes("\u5DF2\u622A\u6B62"))||xn||(Pt==null?void 0:Pt.allow_late)&&je()()>=je()(Pt==null?void 0:Pt.end_time)||(0,ye.Rm)()&&!((ut=Zn.AssistantObject.practice)!=null&&ut.can_publish),disabledDate:Kr=>lt(Kr,Pt==null?void 0:Pt.course_end_date,or.publish_time),disabledTime:Kr=>Nt(Kr,or.publish_time),value:or.end_time?je()(or.end_time):"",onChange:(Kr,Bi)=>{or.end_time=Bi,yr(Object.assign({},or))}})))),!or.unified_setting&&(mr==null?void 0:mr.length)>0&&Ke.createElement(we.Z,{style:{display:"flex",color:"#666666",background:"#F6F7F9",padding:"5px 30px",marginTop:"1px"}},mr&&mr.map(function(Kr,Bi){var _r,pi,ii,zi,Jr,Kt,Le;return Ke.createElement(Te.Z,{span:24,key:Bi},Ke.createElement(we.Z,{gutter:[8,16],style:{display:"flex",alignItems:"center",marginBottom:Bi==(mr==null?void 0:mr.length)-1?"0px":"10px"}},Ke.createElement("div",{style:{minWidth:85,marginRight:"15px",textAlign:"right"}},"\u53D1\u5E03\u89C4\u5219",Bi+1),Ke.createElement(Ge.default,{disabled:xn||((_r=$t==null?void 0:$t.homework_status)!=null&&_r.includes("\u672A\u53D1\u5E03")&&Kr.id||je()(){var De;if((0,ye.Rm)()&&!((De=Zn.AssistantObject.practice)!=null&&De.can_publish)){ke.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[Bi].group_name=We,mr[Bi].group_id=Kr.group_id;const qe=(0,ae.flattenDeep)(mr.map(Mt=>Mt.group_name)),dt=Tn.map(Mt=>{let wt=(Mt==null?void 0:Mt.group_name)||[];return Tt(vt({},Mt),{group_name:(0,ae.remove)(wt,rn=>qe.includes(rn))})});hr(dt),Rr(mr.slice())},maxTagCount:4,maxTagPlaceholder:We=>Ke.createElement("div",{style:{cursor:"pointer"},onClick:()=>Rt(Kr,Bi)},"+",We==null?void 0:We.length)},Pt.group_settings&&Pt.group_settings.map(function(We){if(!mr.map(qe=>qe.group_name).flat().includes(We.group_name))return Ke.createElement(Ft,{value:We.group_name,key:We.id},We.group_name)})),Ke.createElement("div",{className:"ml20"},Ke.createElement(Ut,{size:"large",ranges:{\u6B64\u523B:[Kr.publish_time?je()(Kr.publish_time):je()(),je()()]},allowClear:!1,disabled:xn||(je()()<=je()((zi=xo((ii=Kr==null?void 0:Kr.group_id)==null?void 0:ii[0]))==null?void 0:zi.publish_time)?!1:[!0,xa((Jr=Kr==null?void 0:Kr.group_id)==null?void 0:Jr[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=>lt(We,Pt==null?void 0:Pt.course_end_date),disabledTime:We=>Nt(We),showTime:{showNow:!0,format:"HH:mm",defaultValue:[je()((0,de.U6)(),"HH:mm"),je()((0,de.U6)(),"HH:mm")]},format:"YYYY-MM-DD HH:mm",value:[Kr.publish_time?je()(Kr.publish_time):void 0,Kr.end_time?je()(Kr.end_time):void 0],onChange:(We,De)=>{var qe;if((0,ye.Rm)()&&!((qe=Zn.AssistantObject.practice)!=null&&qe.can_publish)){ke.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[Bi].publish_time=De[0],!Kr.end_time&&De[0]?mr[Bi].end_time=je()(De[0]).add(7,"days"):mr[Bi].end_time=De[1],Rr([...mr])},onCalendarChange:(We,De,qe)=>{if(De!=null&&De[0]&&!De[1]){const dt=je()(De[0]).add(7,"days");mr[Bi].publish_time=De[0],mr[Bi].end_time=dt,Rr([...mr])}}})),!xn&&Ke.createElement("div",{style:{display:"flex",width:"50px"}},((Kt=Kr==null?void 0:Kr.group_id)==null?void 0:Kt.length)>1&&Ke.createElement(Re.Z,{title:"\u89C4\u5219\u62C6\u5206"},Ke.createElement("i",{className:"iconfont icon-chaifen ml10",style:{cursor:"pointer",color:"#3061d0"},onClick:()=>Rt(Kr,Bi)})),mr.length<((Le=Pt==null?void 0:Pt.group_settings)==null?void 0:Le.length)&&Ke.createElement("i",{className:"iconfont icon-zengjia1 ml10 mr10",style:{cursor:"pointer",color:"#00B187"},onClick:()=>{var We;if((0,ye.Rm)()&&!((We=Zn.AssistantObject.practice)!=null&&We.can_publish)){ke.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}Rr(mr.concat({}))}}),((Kr==null?void 0:Kr.publish_time)&&je()(){const We=(0,ae.cloneDeep)(Tn);We.forEach((De,qe)=>{De.group_name&&(De.group_name=De.group_name.filter(dt=>{var Mt;return!((Mt=mr[Bi].group_name)!=null&&Mt.includes(dt))}))}),mr=mr.filter((De,qe)=>Bi!==qe),hr(We),Rr(mr.slice()),setTimeout(()=>Rr(mr.slice()),10)}}))))}))),Ke.createElement(we.Z,null,Ke.createElement(Te.Z,null,Ke.createElement("div",{className:ve.Z.title,style:{marginTop:"30px"}},"\u8865\u4EA4\u8BBE\u7F6E",Ke.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"))),Ke.createElement(Te.Z,{span:24,style:{background:"#F6F7F9",padding:"13px 30px",display:"flex",alignItems:"center"}},Ke.createElement(Ie.default,{checked:or.allow_late,disabled:xn||_i,onChange:Kr=>{var Bi;if((0,ye.Rm)()&&!((Bi=Zn.AssistantObject.practice)!=null&&Bi.can_late)){ke.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}Kr.target.checked&&Ze.default.warning({title:"\u5F00\u542F\u8865\u4EA4\u63D0\u793A",centered:!0,width:480,content:Ke.createElement("div",{style:{padding:10,background:"#f5f6f9"}},Ke.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"),Ke.createElement("div",null,"2.\u8865\u4EA4\u622A\u6B62\u65F6\u95F4\u5FC5\u987B\u665A\u4E8E\u4F5C\u4E1A\u622A\u6B62\u65F6\u95F4\uFF1B"),Ke.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"))}),or.allow_late=!or.allow_late,Tn==""&&hr([{late_penalty:5}]),yr(Object.assign({},or))}},Ke.createElement("strong",null,"\u5F00\u542F\u8865\u4EA4")))),(or==null?void 0:or.allow_late)&&Ke.createElement("div",{style:{background:"#F6F7F9",padding:"10px 30px",marginTop:"1px",color:"#666666"}},Ke.createElement("div",{style:{display:"flex"}},Ke.createElement("div",{style:{width:"110px",textAlign:"right"}},"\u8865\u4EA4\u65B9\u5F0F"),Ke.createElement(Oe.ZP.Group,{style:{marginLeft:"20px"},disabled:xn||(Pt==null?void 0:Pt.anonymous_comment)||(Pt==null?void 0:Pt.allow_late),value:or.unified_late,onChange:Kr=>{var Bi;if((0,ye.Rm)()&&!((Bi=Zn.AssistantObject.practice)!=null&&Bi.can_late)){ke.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}or.unified_late=Kr.target.value,Tn==""&&!Kr.target.value&&hr([{penalty_type:he.Q.Percent,late_penalty:20}]),yr(vt({},or))}},(or==null?void 0:or.unified_setting)&&Ke.createElement(Oe.ZP,{value:!0,disabled:!(Pt!=null&&Pt.manage_all_group),style:{marginRight:"50px"}},"\u7EDF\u4E00\u8865\u4EA4"),((It=Pt==null?void 0:Pt.group_settings)==null?void 0:It.length)>0&&Ke.createElement(Oe.ZP,{value:!1},"\u5206\u73ED\u8865\u4EA4"))),or!=null&&or.unified_late?Ke.createElement(Ke.Fragment,null,Ke.createElement(we.Z,{align:"middle",style:{marginTop:"10px"}},Ke.createElement(Te.Z,{style:{width:"110px",textAlign:"right"}},"\u8865\u4EA4\u6263\u5206"),Ke.createElement(Te.Z,{className:"ml20"},Ke.createElement(he.Z,{disabled:xn||ko,value:{type:or.penalty_type,inputValue:or.late_penalty},onChange:Kr=>{var Bi;if((0,ye.Rm)()&&!((Bi=Zn.AssistantObject.practice)!=null&&Bi.can_late)){ke.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}yr(Tt(vt({},or),{late_penalty:Kr.inputValue,penalty_type:Kr.type}))}})),Ke.createElement(Te.Z,{flex:"1",className:"ml5"},Ke.createElement("span",{className:"c-grey-c ml10"},or.penalty_type===he.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)"))),Ke.createElement(we.Z,{align:"middle",style:{marginTop:"15px"}},Ke.createElement(Te.Z,{style:{width:"110px",textAlign:"right"}},"\u8865\u4EA4\u622A\u6B62\u65F6\u95F4"),Ke.createElement(Te.Z,{className:"ml20"},Ke.createElement(et.default,{size:"large",allowClear:!1,style:{width:170},placeholder:"\u8BF7\u9009\u62E9\u622A\u6B62\u65F6\u95F4",showTime:{format:"HH:mm",defaultValue:je()((0,de.U6)(),"HH:mm")},format:"YYYY-MM-DD HH:mm",disabled:xn||ko,value:or.late_time?je()(or.late_time):"",disabledDate:Kr=>lt(Kr,Pt==null?void 0:Pt.course_end_date),onChange:(Kr,Bi)=>{var _r;if((0,ye.Rm)()&&!((_r=Zn.AssistantObject.practice)!=null&&_r.can_late)){ke.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}or.late_time=Bi,yr(Object.assign({},or))}})))):Tn.map(function(Kr,Bi){var _r;return Ke.createElement(Te.Z,{span:24,key:Bi},Ke.createElement(we.Z,{style:{display:"flex",alignItems:"center",marginTop:"10px"}},Ke.createElement("div",{style:{width:"85px",marginLeft:"27px",textAlign:"right"}},"\u8865\u4EA4\u89C4\u5219",Bi+1),Ke.createElement(Ge.default,{disabled:xn||!((_r=$t==null?void 0:$t.homework_status)!=null&&_r.includes("\u672A\u53D1\u5E03"))&&Kr.id||(Pt==null?void 0:Pt.anonymous_comment),mode:"multiple",className:ve.Z.multiple_select,style:{width:"212px",marginLeft:"18px"},value:typeof Kr.group_name=="string"?[Kr.group_name]:Kr.group_name,placeholder:"\u8BF7\u9009\u62E9\u5206\u73ED\u540D\u79F0",onChange:pi=>{var ii;if((0,ye.Rm)()&&!((ii=Zn.AssistantObject.practice)!=null&&ii.can_late)){ke.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}Tn[Bi].group_name=pi,Tn[Bi].group_id=Kr.group_id,hr(Tn.slice())}},Pt.group_settings&&Pt.group_settings.map(function(pi){const ii=Tn.map(Jr=>Jr.group_name).flat(),zi=mr.map(Jr=>Jr.group_name).flat();if(or!=null&&or.unified_setting){if(!ii.includes(pi.group_name))return Ke.createElement(Ft,{value:pi.group_name,key:pi.id},pi.group_name)}else if(zi.includes(pi.group_name)&&!ii.includes(pi.group_name))return Ke.createElement(Ft,{value:pi.group_name,key:pi.id},pi.group_name)})),Ke.createElement("div",{className:"ml20 mr10"},"\u8865\u4EA4\u6263\u5206"),Ke.createElement(he.Z,{disabled:xn||ro(Kr.id),value:{type:Kr.penalty_type,inputValue:Kr.late_penalty},onChange:pi=>{var ii;if((0,ye.Rm)()&&!((ii=Zn.AssistantObject.practice)!=null&&ii.can_late)){ke.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}Tn[Bi].late_penalty=pi.inputValue,Tn[Bi].penalty_type=pi.type,hr([...Tn])}}),Ke.createElement("div",{className:"ml20 mr10"},"\u8865\u4EA4\u622A\u6B62\u65F6\u95F4"),Ke.createElement(et.default,{size:"large",disabled:xn||ro(Kr.id),style:{width:225},showTime:{format:"HH:mm",defaultValue:je()((0,de.U6)(),"HH:mm")},placeholder:"\u8BF7\u9009\u62E9\u622A\u6B62\u65F6\u95F4",disabledDate:pi=>lt(pi,Pt==null?void 0:Pt.course_end_date),format:"YYYY-MM-DD HH:mm",value:Kr!=null&&Kr.late_time?je()(Kr.late_time):void 0,onChange:(pi,ii)=>{var zi;if((0,ye.Rm)()&&!((zi=Zn.AssistantObject.practice)!=null&&zi.can_late)){ke.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}Tn[Bi].late_time=ii,hr([...Tn])}}),!xn&&Ke.createElement("div",{style:{display:"flex",width:"50px"}},Ke.createElement("i",{className:"iconfont icon-zengjia1 ml10 mr10",style:{cursor:"pointer",color:"#00B187"},onClick:()=>{var pi;if((0,ye.Rm)()&&!((pi=Zn.AssistantObject.practice)!=null&&pi.can_late)){ke.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}hr(Tn.concat({penalty_type:he.Q.Percent,late_penalty:20}))}}),Bi>0&&!Kr.id&&Ke.createElement("i",{className:"iconfont icon-shanjian1",style:{cursor:"pointer",color:"#E30000"},onClick:()=>{var pi;if((0,ye.Rm)()&&!((pi=Zn.AssistantObject.practice)!=null&&pi.can_late)){ke.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}Tn=Tn.filter((ii,zi)=>Bi!==zi),hr(Tn.slice()),setTimeout(()=>hr(Tn.slice()),10)}}))))})),!xn&&Ke.createElement(Ke.Fragment,null,Ke.createElement(be.ZP,{type:"primary",size:"large",loading:rr,style:{width:"138px",marginTop:"30px"},onClick:()=>Co()},"\u4FDD\u5B58")),Ke.createElement(Se.Z,{onConfirm:(Kr,Bi)=>{mr.splice(Kr,0,...Bi),mr.splice(Kr+Bi.length,1);const _r=(0,de.QE)([...mr]);Rr([..._r])}}),Ke.createElement(Ne.Z,{resdata:ti,type:"shixun",okloading:rr,oktext:(ti==null?void 0:ti.can_copy_num)===0?"\u786E\u5B9A":"\u4E00\u952E\u590D\u5236\u5E76\u66FF\u6362",onok:Kr=>bt(void 0,null,function*(){Jn(!0);let Bi=yield(0,ie.ZP)(`/api/courses/${nn.coursesId}/batch_copy_shixuns.json`,{method:"post",body:{type:"homework_common",ids:[parseInt(nn.categoryId)]}});Jn(!1),(Bi==null?void 0:Bi.status)===0&&To(di)})}))};an.ZP=(0,xe.connect)(({shixunHomeworks:dn,classroomList:Dn,loading:Rn,user:Zn})=>({shixunHomeworks:dn,classroomList:Dn,loading:Rn.effects,user:Zn}))(Yt)},88256:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return Ie}});var He=Be(59301),et=Be(92832),Ge=Be(24905),ke=Be(95237),Ze={leftdiv:"leftdiv___aBzsX",listClass:"listClass___bxIEW",spantitle:"spantitle___v_Vc4",rightdiv:"rightdiv___xWu4M"},Oe="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAbVJREFUOE+Nk79rFUEUhb+zE4OFwUD+CyGKKQQbSaMikQQ7C1tBBIsUQaJvl2Fn/cWDpAiIYJsi7YOIaCUWFoKKRhG0sbEzEImFGnev7G6yyXsxeU5159yZb87l3hG9q2WLiBO79FIwXpLp0s6cwITnQCMWrGDM43jdBckZQ0wTMdrong2R2Bxm0/98sZ8ozdcOEm5hjOC41u9Olc9ZQKySclOVkNhljCmCzjeAJM/4FbW5p+8k5tlggTtarfKxLSM6pHq4BTiL0SboaAOIi284jeP1nti+ApMEvdoEvEPMkOpJDZi1IwzwgqDh/wSsYZwk08ca4O0Qua3zW8OV5crmHg6u22EGbQ2nIbx+1IC6rrK+cYJW9gXEVrbxGUEj5bltQGJvgBapHu0LSGwCyEh1vBsQWwd4TNCDPg6uAOcImuoFlL1dJ9WNPg5uYwwRVM3MzhJmKIpjZK6e9bj4jNNpvL4QFx9wuoDXJ1r5IlH0llTtXgcXwa4SolObnYnwKnbFcfEcdJ+gpW6AtzFynuIop/Fn053u4CA5yzjO4FV9tu0Syl2S38WiSWBgD8AfoEPQ7Fb+LwIiyhxWwe2KAAAAAElFTkSuQmCC",we=Be(57816),Te=(be,Pe,je)=>new Promise((ye,ie)=>{var ae=ve=>{try{de(je.next(ve))}catch(xe){ie(xe)}},fe=ve=>{try{de(je.throw(ve))}catch(xe){ie(xe)}},de=ve=>ve.done?ye(ve.value):Promise.resolve(ve.value).then(ae,fe);de((je=je.apply(be,Pe)).next())}),Ie=({data:be,value:Pe=[],handleChangePage:je,setSelectedRowKeys:ye,selectedRowKeys:ie,onChange:ae=()=>{}})=>{const[fe,de]=(0,He.useState)([]),[ve,xe]=(0,He.useState)([]),[he,pe]=(0,He.useState)([]);let[Se,Ne]=(0,He.useState)(1),[ze,Ke]=(0,He.useState)();return(0,He.useEffect)(()=>{de(be),xe([]),pe([])},[be]),(0,He.useEffect)(()=>{ye&&(xe(ie),pe(ie))},[ie]),He.createElement("div",{style:{display:"flex",justifyContent:"space-between"}},He.createElement("div",{className:Ze.leftdiv},He.createElement(et.default.Search,{size:"middle",onChange:Ve=>Te(void 0,null,function*(){de(be.filter(Je=>{var tt;return(tt=Je==null?void 0:Je.name)==null?void 0:tt.includes(Ve.target.value)}))}),placeholder:"\u53EF\u8F93\u5165\u73ED\u7EA7\u540D\u79F0\u67E5\u8BE2"}),fe.length===0&&He.createElement(we.Z,{styles:{margin:"70px auto"},customText:"\u6682\u65E0\u5206\u73ED"}),He.createElement("div",{style:{height:"85%",overflow:"auto",overflowX:"hidden"}},He.createElement(Ge.default.Group,{value:ve.map(Ve=>`${Ve.id}`),onChange:Ve=>{ye(fe.filter(Je=>Ve.includes(`${Je.id}`)))},style:{marginTop:"10px",flexDirection:"column"}},fe.map((Ve,Je)=>He.createElement(ke.Z,{key:Ve.id,style:{marginTop:"10px",lineHeight:"24px",display:"flex",width:200}},He.createElement(Ge.default,{style:{display:"flex",height:"24px",alignItems:"center"},disabled:Ve.is_published,value:`${Ve.id}`},He.createElement("div",{className:Ze.listClass},He.createElement("span",{className:Ze.spantitle,style:{width:Ve.is_published?"108px":"170px"}},Ve.name),Ve.is_published&&He.createElement("span",{style:{width:"52px",height:"24px",background:"#B8B8B8",borderRadius:"13px",color:"white",lineHeight:"24px",textAlign:"center",display:"inline-block"}},"\u5DF2\u53D1\u5E03")))))))),He.createElement("div",{className:Ze.rightdiv},He.createElement(et.default.Search,{onChange:Ve=>{pe(ve.filter(Je=>Je.name.includes(Ve.target.value)))},size:"middle",placeholder:"\u53EF\u8F93\u5165\u73ED\u7EA7\u540D\u79F0\u67E5\u8BE2"}),he.length===0&&He.createElement(we.Z,{styles:{margin:"70px auto"},customText:"\u6682\u672A\u9009\u62E9\u5206\u73ED"}),he.length>0&&He.createElement("div",{style:{marginTop:"10px",height:"85%",overflow:"hidden",position:"relative"}},He.createElement("div",{style:{overflowX:"hidden",overflowY:"scroll",position:"absolute",left:0,top:0,right:-17,bottom:0}},he.map((Ve,Je)=>He.createElement(ke.Z,{justify:"space-between",style:{marginTop:"10px"},key:Ve.id},He.createElement("div",{style:{overflow:"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis",marginRight:"5px",marginLeft:"5px",width:"75%"}},Ve.name),He.createElement("img",{src:Oe,style:{cursor:"pointer",height:"16px",marginRight:17},onClick:()=>{ye(ve.filter(tt=>`${tt.id}`!=`${Ve.id}`))}})))))))}},51269:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return fe}});var He=Be(59301),et=Be(24459),Ge=Be(5083),ke=Be(43418),Ze=Be(92832),Oe=Be(8591),we=Be(95237),Te=Be(43604),Re={title_tooltip:"title_tooltip___LLdrn",multiple_select:"multiple_select___kDXUm",modal_con:"modal_con___ERnkW"},Ie=Be(61186),be=Be.n(Ie),Pe=Be(88230),je=Be(57816),ye=Be(59301);const{RangePicker:ie}=Ge.default,ae=({dispatch:de,classroomList:ve,onConfirm:xe})=>{const[he,pe]=(0,He.useState)([]),[Se,Ne]=(0,He.useState)([]),[ze,Ke]=(0,He.useState)(""),[Ve,Je]=(0,He.useState)([!1,!1]);(0,He.useEffect)(()=>{var st,St,At,vt;if(ve.actionTabs.key==="\u5206\u73ED\u53D1\u5E03-\u53D1\u5E03\u89C4\u5219\u62C6\u5206"){console.log((st=ve.actionTabs)==null?void 0:st.rangePickerDisabled),(St=ve.actionTabs)!=null&&St.rangePickerDisabled?Je((At=ve.actionTabs)==null?void 0:At.rangePickerDisabled):Je([!1,!1]);let Tt=ve.actionTabs.data,bt=(vt=Tt==null?void 0:Tt.group_name)==null?void 0:vt.map((Et,lt)=>{var Nt;return{group_id:Tt==null?void 0:Tt.group_id[lt],group_name:Tt==null?void 0:Tt.group_name[lt],is_admin:Tt==null?void 0:Tt.is_admin,end_time:Tt==null?void 0:Tt.end_time,publish_time:Array.isArray(Tt==null?void 0:Tt.publish_time)?(Nt=Tt==null?void 0:Tt.publish_time)==null?void 0:Nt[0]:Tt==null?void 0:Tt.publish_time}});bt&&(pe([...bt]),Ne([...bt]))}},[ve.actionTabs]);const tt=()=>{de({type:"classroomList/setActionTabs",payload:{}}),Ke("")},gt=st=>{if(st){const St=Se==null?void 0:Se.filter(At=>{var vt,Tt;return(Tt=(vt=At==null?void 0:At.group_name)==null?void 0:vt.toLowerCase())==null?void 0:Tt.includes(st==null?void 0:st.toLowerCase())});pe(St)}else pe(Se)};return ye.createElement(ke.default,{width:980,title:ye.createElement("div",{style:{fontWeight:"bold",display:"flex"}},ye.createElement("div",null,"\u5206\u73ED\u53D1\u5E03-\u53D1\u5E03\u89C4\u5219\u62C6\u5206",ye.createElement("span",{className:Re.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")),ye.createElement(Ze.default.Search,{allowClear:!0,placeholder:"\u8BF7\u8F93\u5165\u5173\u952E\u5B57\u8FDB\u884C\u641C\u7D22",style:{width:220,marginLeft:"60px"},value:ze,onChange:st=>{Ke(st.target.value.trim()),gt(st.target.value.trim())}})),centered:!0,maskClosable:!1,open:ve.actionTabs.key==="\u5206\u73ED\u53D1\u5E03-\u53D1\u5E03\u89C4\u5219\u62C6\u5206",onCancel:()=>tt(),onOk:()=>{var st;if(Se.some(At=>!At.end_time||!At.publish_time)){Oe.ZP.warning("\u8BF7\u5C06\u5217\u8868\u6570\u636E\u4E2D\u7684\u53D1\u5E03\u65F6\u95F4\u548C\u622A\u6B62\u65F6\u95F4\u8865\u5145\u5B8C\u6574\uFF01");return}xe((st=ve.actionTabs)==null?void 0:st.index,Se),tt()}},ye.createElement("div",{className:Re.modal_con},ye.createElement(we.Z,{style:{display:"flex",color:"#666666",padding:"5px",marginTop:"1px"}},(he==null?void 0:he.length)>0?he.map(function(st,St){return ye.createElement(Te.Z,{span:24,key:St},ye.createElement(we.Z,{gutter:[8,16],style:{display:"flex",alignItems:"center",marginBottom:St==(he==null?void 0:he.length)-1?"0px":"10px"}},ye.createElement("div",{className:Re.multiple_select,title:st==null?void 0:st.group_name},st==null?void 0:st.group_name),ye.createElement("div",{className:"ml20"},ye.createElement(ie,{size:"large",allowClear:!1,disabled:Ve,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:At=>{var vt;return(0,Pe.Q8)(At,(vt=ve.actionTabs)==null?void 0:vt.disabledDate)},disabledTime:At=>(0,Pe.d0)(At),showTime:{showNow:!0,format:"HH:mm",defaultValue:[be()((0,Pe.U6)(),"HH:mm"),be()((0,Pe.U6)(),"HH:mm")]},format:"YYYY-MM-DD HH:mm",value:(st==null?void 0:st.publish_time)&&[be()(st==null?void 0:st.publish_time),st!=null&&st.end_time?be()(st==null?void 0:st.end_time):void 0],onChange:(At,vt)=>{he[St].publish_time=vt[0],he[St].end_time=vt[1],pe([...he]),Se.forEach(Tt=>{Tt.group_id===(st==null?void 0:st.group_id)&&(Tt.publish_time=vt[0],Tt.end_time=vt[1])}),Ne([...Se])},onCalendarChange:(At,vt,Tt)=>{if(vt!=null&&vt[0]&&!vt[1]){const bt=be()(vt[0]).add(7,"days");he[St].publish_time=vt[0],he[St].end_time=bt,pe([...he]),Se.forEach(Et=>{Et.group_id===(st==null?void 0:st.group_id)&&(Et.publish_time=vt[0],Et.end_time=bt)}),Ne([...Se])}}})),Ve[0]?ye.createElement("i",{className:"iconfont icon-shanjian1 ml15",style:{color:"#E30000",opacity:"0.2",cursor:"not-allowed"}}):ye.createElement("i",{className:"iconfont icon-shanjian1 ml15",style:{cursor:"pointer",color:"#E30000"},onClick:()=>{he.splice(St,1),pe([...he]),Se.forEach((At,vt)=>{At.group_id===(st==null?void 0:st.group_id)&&Se.splice(vt,1)}),Ne([...Se])}})))}):ye.createElement(je.Z,null))))};var fe=(0,et.connect)(({classroomList:de})=>({classroomList:de}))(ae)},90915:function(sn,an,Be){"use strict";Be.r(an),Be.d(an,{NoData:function(){return qt},default:function(){return ut}});var He=Be(59301),et=Be(3113),Ge=Be(43418),ke="data:image/png;base64,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",Ze=Be(7660);function Oe(){return(0,Ze.U2)("teach_groups.json")}function we(It){return(0,Ze.v_)("teach_groups.json",It)}function Te(It,nn){return(0,Ze.gz)(`teach_groups/${It}.json`,nn)}function Re(It){return(0,Ze.v_)("teach_group_members.json",It)}function Ie(It){return(0,Ze.IV)(`teach_group_members/${It}.json`)}function be(It,nn){return(0,Ze.gz)(`teach_groups/${It}/change_admin.json`,{member_id:nn})}function Pe(It,nn){return(0,Ze.IV)(`teach_groups/${It}/del_member.json`,{member_id:nn})}function je(It){return(0,Ze.IV)(`teach_groups/${It}.json`)}function ye(It){return(0,Ze.U2)(`teach_groups/${It}/show_permission.json`)}function ie(It){return(0,Ze.gz)(`teach_groups/${It==null?void 0:It.id}/update_permission.json`,It)}var ae=Be(78241),fe=Be(92832),de=Be(13669),ve=({callback:It,visible:nn,onCancel:Pt,id:Vt,name:on})=>{function $t(xn){It(xn)}const[Jt]=ae.default.useForm();return(0,He.useEffect)(()=>{Jt.setFieldsValue({name:on})},[on]),He.createElement(Ge.default,{centered:!0,title:Vt?"\u4FEE\u6539\u540D\u79F0":"\u65B0\u5EFA",open:nn,onCancel:Pt,onOk:()=>{Jt.submit()},wrapClassName:de.Z.CustomCss},He.createElement(ae.default,{form:Jt,initialValues:{name:on},onFinish:$t},He.createElement(ae.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"}]},He.createElement(fe.default,{placeholder:"\u8BF7\u8F93\u5165\u4E0D\u8D85\u8FC720\u5B57\u7684\u540D\u79F0",maxLength:20}))))},xe=Be(24905),he=Be(38854),pe=Be(20834),Se=Be(1710),Ne=Be(8591),ze=Be(5112),Ke=Object.defineProperty,Ve=Object.getOwnPropertySymbols,Je=Object.prototype.hasOwnProperty,tt=Object.prototype.propertyIsEnumerable,gt=(It,nn,Pt)=>nn in It?Ke(It,nn,{enumerable:!0,configurable:!0,writable:!0,value:Pt}):It[nn]=Pt,st=(It,nn)=>{for(var Pt in nn||(nn={}))Je.call(nn,Pt)&>(It,Pt,nn[Pt]);if(Ve)for(var Pt of Ve(nn))tt.call(nn,Pt)&>(It,Pt,nn[Pt]);return It};const St=It=>React.createElement("svg",st({className:"cjz_svg__icon",viewBox:"0 0 3194 1024",xmlns:"http://www.w3.org/2000/svg",width:623.828,height:200},It),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"}));var At="data:image/svg+xml;base64,PHN2ZyBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDMxOTQgMTAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iNjIzLjgyOCIgaGVpZ2h0PSIyMDAiPjxwYXRoIGQ9Ik01MTIgMGgyMTcwLjg4YzI4Mi42MjQgMCA1MTIgMjI5LjM3NiA1MTIgNTEycy0yMjkuMzc2IDUxMi01MTIgNTEySDUxMkMyMjkuMzc2IDEwMjQgMCA3OTQuNjI0IDAgNTEyUzIyOS4zNzYgMCA1MTIgMHoiIGZpbGw9IiNFQkVFRkQiLz48cGF0aCBkPSJNMTYzOC40IDc0MS4zNzZjMjguNjcyIDAgNDAuOTYtMTYuMzg0IDQwLjk2LTQ1LjA1NlYyOTQuOTEyaC0zNi44NjR2MzkzLjIxNmMwIDE2LjM4NC04LjE5MiAyMC40OC0yMC40OCAyMC40OC0yNC41NzYgMC00NS4wNTYgMC03My43MjgtNC4wOTZsOC4xOTIgMzIuNzY4aDgxLjkyem0tMzcyLjczNi0yNTguMDQ4YzQ5LjE1Mi00NS4wNTYgOTAuMTEyLTk0LjIwOCAxMjYuOTc2LTE0Ny40NTYgMzIuNzY4IDMyLjc2OCA2OS42MzIgNzcuODI0IDExMC41OTIgMTM1LjE2OGwyNC41NzYtMjQuNTc2Yy00MC45Ni00OS4xNTItODEuOTItOTguMzA0LTEyMi44OC0xNDMuMzZoLTI0LjU3NmMtNDAuOTYgNTcuMzQ0LTgxLjkyIDExMC41OTItMTMxLjA3MiAxNTUuNjQ4bDE2LjM4NCAyNC41NzZ6bTMyMy41ODQgMTU5Ljc0NFYzMzkuOTY4aC0zMi43Njh2MzA3LjJoMzIuNzY4em0tMTMxLjA3MiA5NC4yMDhjMjQuNTc2IDAgMzYuODY0LTQuMDk2IDQ1LjA1Ni0xMi4yODhzMTYuMzg0LTM2Ljg2NCAyMC40OC03Ny44MjRsLTMyLjc2OC0xMi4yODhjMCAyOC42NzItNC4wOTYgNDUuMDU2LTguMTkyIDUzLjI0OHMtMTYuMzg0IDEyLjI4OC0zMi43NjggMTIuMjg4aC05OC4zMDRjLTEyLjI4OCAwLTIwLjQ4LTQuMDk2LTIwLjQ4LTE2LjM4NHYtMjA0LjhoMTA2LjQ5NnY5NC4yMDhjMCAxMi4yODgtOC4xOTIgMjAuNDgtMjAuNDggMjAuNDgtMTYuMzg0IDAtMzIuNzY4IDAtNDkuMTUyLTQuMDk2bDguMTkyIDMyLjc2OGg1My4yNDhjMjguNjcyIDAgNDAuOTYtMTYuMzg0IDQwLjk2LTQwLjk2VjQ1MC41NmgtMTc2LjEyOHYyNDUuNzZjMCAyNC41NzYgMTIuMjg4IDM2Ljg2NCA0MC45NiAzNi44NjRoMTIyLjg4em01ODUuNzI4LTUzLjI0OFY2MzQuODhoMTMxLjA3MnYtMjguNjcyaC0xMzEuMDcydi00MC45NmgxMTQuNjg4di0yOC42NzJoLTExNC42ODh2LTQwLjk2SDIxNTAuNHYtNjkuNjMyaDMyLjc2OHYtMjguNjcySDIxNTAuNFYzMjcuNjhoLTEwNi40OTZ2LTMyLjc2OGgtMzIuNzY4djMyLjc2OGgtODYuMDE2djI4LjY3Mmg4Ni4wMTZ2MzYuODY0aC0xMTAuNTkydjI4LjY3MmgxMTAuNTkydjQwLjk2aC04Ni4wMTZ2MjguNjcyaDg2LjAxNnY0MC45NmgtOTguMzA0djI4LjY3Mmg5OC4zMDR2NDAuOTZoLTExMC41OTJ2MjguNjcyaDExMC41OTJ2NDkuMTUyaDMyLjc2OHptLTI3MC4zMzYgNTcuMzQ0YzI0LjU3Ni0xNi4zODQgNDAuOTYtMzYuODY0IDU3LjM0NC02MS40NCA0LjA5NiA0LjA5NiAxMi4yODggOC4xOTIgMTYuMzg0IDEyLjI4OCAzNi44NjQgMjQuNTc2IDEwMi40IDM2Ljg2NCAxODguNDE2IDM2Ljg2NGgxNDcuNDU2bDQuMDk2LTMyLjc2OGMtNTcuMzQ0IDAtMTEwLjU5MiA0LjA5Ni0xNjcuOTM2IDQuMDk2LTY1LjUzNiAwLTExOC43ODQtMTIuMjg4LTE1MS41NTItMjguNjcyLTguMTkyLTQuMDk2LTE2LjM4NC0xMi4yODgtMjQuNTc2LTIwLjQ4IDI0LjU3Ni00NS4wNTYgMzYuODY0LTk4LjMwNCAzNi44NjQtMTYzLjg0di0yMC40OGgtNzcuODI0YzI0LjU3Ni0zMi43NjggNDkuMTUyLTczLjcyOCA3My43MjgtMTE4Ljc4NHYtMjguNjcySDE3NjEuMjh2MzIuNzY4aDgxLjkyYy0yNC41NzYgNDAuOTYtNDkuMTUyIDgxLjkyLTc3LjgyNCAxMTguNzg0djI4LjY3Mmg5MC4xMTJjLTQuMDk2IDQ1LjA1Ni0xMi4yODggODYuMDE2LTI4LjY3MiAxMjIuODgtMTIuMjg4LTIwLjQ4LTI0LjU3Ni00OS4xNTItMzIuNzY4LTg2LjAxNmwtMzIuNzY4IDEyLjI4OGMxMi4yODggNDAuOTYgMjguNjcyIDc3LjgyNCA0NS4wNTYgMTA2LjQ5Ni0xNi4zODQgMjQuNTc2LTM2Ljg2NCA0MC45Ni01Ny4zNDQgNTcuMzQ0bDI0LjU3NiAyOC42NzJ6bTMzOS45NjgtMzQ0LjA2NGgtNjkuNjMydi0zNi44NjRoNjkuNjMydjM2Ljg2NHptMCA2OS42MzJoLTY5LjYzMnYtNDAuOTZoNjkuNjMydjQwLjk2em0yNTMuOTUyIDI3OC41Mjh2LTIwLjQ4aDIxMi45OTJ2MjAuNDhoMzYuODY0VjUyNC4yODhoLTE4NC4zMmMyOC42NzItMTIuMjg4IDUzLjI0OC0yNC41NzYgNzcuODI0LTQwLjk2bDIwLjQ4LTEyLjI4OGgxNTEuNTUydi0zMi43NjhoLTEwNi40OTZjMzIuNzY4LTI0LjU3NiA2NS41MzYtNTcuMzQ0IDk0LjIwOC05MC4xMTJsLTMyLjc2OC0yMC40OGMtMzYuODY0IDQwLjk2LTczLjcyOCA3Ny44MjQtMTIyLjg4IDExMC41OTJoLTYxLjQ0di02MS40NGgxMTQuNjg4di0zMi43NjhoLTExNC42ODh2LTQ5LjE1MmgtMzYuODY0djUzLjI0OGgtMTM1LjE2OHYzMi43NjhoMTM1LjE2OHY1Ny4zNDRoLTE4MC4yMjR2MzIuNzY4aDIyNS4yOGMtNjkuNjMyIDQwLjk2LTE0Ny40NTYgNjkuNjMyLTIyOS4zNzYgOTAuMTEybDE2LjM4NCAzMi43NjhjMjguNjcyLTguMTkyIDU3LjM0NC0yMC40OCA4MS45Mi0yOC42NzJ2MTgwLjIyNGgzNi44NjR6bTIxMi45OTItMTM5LjI2NGgtMjEyLjk5MnYtNDkuMTUyaDIxMi45OTJ2NDkuMTUyem0wIDg2LjAxNmgtMjEyLjk5MnYtNTMuMjQ4aDIxMi45OTJ2NTMuMjQ4eiIgZmlsbD0iIzE2NURGRiIvPjxwYXRoIGQ9Ik01NzMuNDQgMjA0LjhoMzI3LjY4YzkwLjExMiAwIDE2My44NCA3My43MjggMTYzLjg0IDE2My44NHYzMjcuNjhjMCA5MC4xMTItNzMuNzI4IDE2My44NC0xNjMuODQgMTYzLjg0SDU3My40NGMtOTAuMTEyIDAtMTYzLjg0LTczLjcyOC0xNjMuODQtMTYzLjg0VjM2OC42NGMwLTkwLjExMiA3My43MjgtMTYzLjg0IDE2My44NC0xNjMuODR6IiBmaWxsPSIjQzJEMEZGIi8+PHBhdGggZD0iTTg2OC4zNTIgNTgxLjYzMmM0LjA5NiAyNC41NzYgMTIuMjg4IDQ5LjE1MiAxNi4zODQgNjkuNjMyIDAgOC4xOTIgNC4wOTYgMTYuMzg0IDQuMDk2IDI0LjU3NnM0LjA5NiAxNi4zODQgNC4wOTYgMjQuNTc2IDQuMDk2IDEyLjI4OCA0LjA5NiAxNi4zODR2OC4xOTJjMCA4LjE5MiAwIDEyLjI4OC00LjA5NiAxMi4yODgtNC4wOTYgNC4wOTYtOC4xOTIgNC4wOTYtMTIuMjg4IDQuMDk2aC04LjE5MmMtNC4wOTYgMC00LjA5NiAwLTguMTkyLTQuMDk2TDczNy4yOCA2NjcuNjQ4Yy0yNC41NzYgMTIuMjg4LTQ1LjA1NiAyNC41NzYtNjEuNDQgMzYuODY0TDY1MS4yNjQgNzE2LjhjLTguMTkyIDQuMDk2LTE2LjM4NCA4LjE5Mi0yMC40OCAxMi4yODgtOC4xOTIgNC4wOTYtMTYuMzg0IDguMTkyLTIwLjQ4IDEyLjI4OHMtOC4xOTIgNC4wOTYtOC4xOTIgNC4wOTZjLTQuMDk2IDAtOC4xOTIgNC4wOTYtOC4xOTIgMC00LjA5NiAwLTguMTkyIDAtOC4xOTItNC4wOTYtNC4wOTYgMC00LjA5Ni00LjA5Ni00LjA5Ni04LjE5MnYtOC4xOTJzMC00LjA5NiA0LjA5Ni04LjE5MmMwLTQuMDk2IDQuMDk2LTEyLjI4OCA0LjA5Ni0xNi4zODQgMC04LjE5MiA0LjA5Ni0xNi4zODQgNC4wOTYtMjQuNTc2czQuMDk2LTE2LjM4NCA4LjE5Mi0yNC41NzZjNC4wOTYtMjAuNDggMTIuMjg4LTQ1LjA1NiAxNi4zODQtNjkuNjMyLTI0LjU3Ni0xNi4zODQtNDUuMDU2LTI4LjY3Mi01Ny4zNDQtNDUuMDU2LTguMTkyLTQuMDk2LTE2LjM4NC04LjE5Mi0yMC40OC0xNi4zODRzLTEyLjI4OC04LjE5Mi0xNi4zODQtMTIuMjg4UzUxMiA0OTkuNzEyIDUxMiA0OTUuNjE2Yy00LjA5Ni00LjA5Ni04LjE5Mi00LjA5Ni04LjE5Mi00LjA5Ni00LjA5Ni00LjA5Ni00LjA5Ni04LjE5Mi04LjE5Mi0xMi4yODhzLTQuMDk2LTguMTkyLTQuMDk2LTEyLjI4OCA0LjA5Ni04LjE5MiA0LjA5Ni0xMi4yODhjNC4wOTYgMCA4LjE5Mi00LjA5NiAxMi4yODgtNC4wOTZsMTUxLjU1Mi0xMi4yODhMNzE2LjggMzA3LjJjMC00LjA5NiA0LjA5Ni04LjE5MiA4LjE5Mi0xMi4yODggMC04LjE5MiA4LjE5Mi04LjE5MiAxMi4yODgtOC4xOTJzNC4wOTYgMCA4LjE5MiA0LjA5NmM0LjA5NiAwIDQuMDk2IDQuMDk2IDQuMDk2IDQuMDk2bDQuMDk2IDQuMDk2czAgNC4wOTYgNC4wOTYgNC4wOTZsNTMuMjQ4IDEzMS4wNzIgMTU1LjY0OCAxNi4zODRjOC4xOTIgMCAxMi4yODggNC4wOTYgMTIuMjg4IDQuMDk2IDQuMDk2IDQuMDk2IDQuMDk2IDguMTkyIDQuMDk2IDEyLjI4OHMwIDguMTkyLTQuMDk2IDEyLjI4OGwtMTIuMjg4IDEyLjI4OC05OC4zMDQgOTAuMTEyeiIgZmlsbD0iIzJFNUJFQyIvPjwvc3ZnPg==",vt=Be(15965),Tt=(It,nn,Pt)=>new Promise((Vt,on)=>{var $t=Qn=>{try{xn(Pt.next(Qn))}catch(rr){on(rr)}},Jt=Qn=>{try{xn(Pt.throw(Qn))}catch(rr){on(rr)}},xn=Qn=>Qn.done?Vt(Qn.value):Promise.resolve(Qn.value).then($t,Jt);xn((Pt=Pt.apply(It,nn)).next())});const bt=50;var Et=({data:It,isAdminOrTeacher:nn,onDelGroup:Pt,onChangeGroupName:Vt,onPlusMember:on,onDelMember:$t,onExitGroup:Jt,Transferteams:xn})=>{var Qn,rr;const[Jn,mr]=(0,He.useState)(0),[Rr,Tn]=(0,He.useState)(0);let[hr,or]=(0,He.useState)(),[yr,ti]=(0,He.useState)(),[mi,di]=(0,He.useState)(!1),[Pi,vo]=(0,He.useState)(),[Co,To]=(0,He.useState)(),[xo,ma]=(0,He.useState)(!1),[xa,_i]=(0,He.useState)(!1),[ko,ro]=(0,He.useState)("");function Rt(Kt){let Le=parseInt(Kt.key,10);ro(Le),_i(!0)}function Kr(Kt){let Le=parseInt(Kt.key,10);Ge.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:()=>{Jt(Le)}})}function Bi(Kt){let Le=parseInt(Kt,10);Ge.default.confirm({title:"\u9000\u51FA\u63D0\u793A",okText:"\u786E\u5B9A",icon:!1,className:de.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:()=>{Jt(Le)}})}function _r(Kt,Le){Ge.default.confirm({title:"\u6E29\u99A8\u63D0\u793A",content:"\u786E\u5B9A\u8981\u5220\u9664\u8FD9\u4E2A\u7EC4\u5458\u5417?",icon:!1,className:de.Z.CustomTipsModalCss,okText:"\u786E\u5B9A",cancelText:"\u53D6\u6D88",onOk:()=>{$t(Kt,Le)}})}const pi={display:"block",height:"30px",lineHeight:"30px"};function ii(Kt){To(Kt),vo(Kt==null?void 0:Kt.id),ma(!0)}const zi=[{title:"\u6210\u5458\u540D\u79F0",dataIndex:"name",width:150},{title:"\u4F7F\u7528\u5171\u4EAB\u8BD5\u9898",dataIndex:"item_bank",align:"center",width:150,render:(Kt,Le,We)=>He.createElement(xe.default,{disabled:Le==null?void 0:Le.is_creator,defaultChecked:Kt,onChange:De=>{ie({id:Pi,member_id:Le.id,clazz:"item_bank",enable:De.target.checked})}})},{title:"\u7F16\u8F91\u5171\u4EAB\u8BD5\u9898",dataIndex:"edit_item_bank",align:"center",width:150,render:(Kt,Le,We)=>He.createElement(xe.default,{disabled:Le==null?void 0:Le.is_creator,defaultChecked:Kt,onChange:De=>{ie({id:Pi,member_id:Le.id,clazz:"edit_item_bank",enable:De.target.checked})}})},{title:"\u4F7F\u7528\u5171\u4EAB\u8BD5\u5377",dataIndex:"exercise",align:"center",render:(Kt,Le,We)=>He.createElement(xe.default,{disabled:Le==null?void 0:Le.is_creator,defaultChecked:Kt,onChange:De=>{ie({id:Pi,member_id:Le.id,clazz:"exercise",enable:De.target.checked})}})}];function Jr(Kt){return Tt(this,null,function*(){const Le=yield ye(Kt==null?void 0:Kt.id);vo(Kt==null?void 0:Kt.id),ti(Le),di(!0)})}return He.createElement("ul",{className:"teaching-lists"},It.map((Kt,Le)=>He.createElement("li",{key:Kt.id,style:{marginTop:Le===0?30:16},onClick:()=>mr(Le)},He.createElement("div",{className:"item-group"},He.createElement("span",{style:{color:"#000000",fontSize:16,fontWeight:600}},Kt.name,"\u7684\u6559\u7814\u56E2\u961F"),He.createElement("div",{className:"action-group"})),He.createElement("div",{style:{display:"flex"}},He.createElement("span",{style:{marginTop:29,marginLeft:24,color:"#5F6367"}},"\u56E2\u961F\u6210\u5458\uFF1A"),He.createElement("ul",{className:"info",style:{flex:1}},Kt.memers.map(We=>{var De;return He.createElement("li",{key:We.id||We.name,onClick:()=>{Tn(We.id)},className:"directionItemWrap"},He.createElement("div",{className:"hovename",style:{display:"flex",alignItems:"center",justifyContent:"center",fontWeight:400,fontSize:14,color:We!=null&&We.is_creater?"#000000":"#5F6367"}},((De=We.name)==null?void 0:De.length)>6?We.name.substr(0,6)+"....":We.name,He.createElement("img",{src:At,style:{marginLeft:5,display:!(We!=null&&We.is_creater)&&"none",height:25,width:78}})),Kt.is_creat?He.createElement("div",{className:"groupActionWrap",style:{display:!(We!=null&&We.id)&&"none"}},He.createElement("a",{className:"btn-del",onClick:qe=>{qe.preventDefault(),qe.stopPropagation(),_r(Kt.id,We.id)}},"x")):null)})),Kt.is_creat||nn?He.createElement(he.Z,{overlayClassName:"dropdowns",dropdownRender:()=>He.createElement(pe.default,null,He.createElement(pe.default.Item,{onClick:()=>{Vt(Kt)}},"\u4FEE\u6539\u540D\u79F0"),He.createElement(pe.default.Item,{disabled:Kt.memers.length>=50,onClick:()=>{on(Kt)}},"\u6DFB\u52A0\u6210\u5458"),Kt.is_creat&&He.createElement(pe.default.Item,{onClick:()=>Jr(Kt)},"\u6743\u9650\u914D\u7F6E"),Kt.is_creat&&He.createElement(pe.default.Item,{onClick:()=>ii(Kt)},"\u8F6C\u8BA9\u56E2\u961F"),He.createElement(pe.default.Item,{key:Kt.id+"",onClick:Kt.is_creat?Rt:Kr},Kt.is_creat?"\u89E3\u6563":"\u9000\u51FA"))},He.createElement("span",{style:{marginTop:30,marginRight:24,color:"#165DFF",fontSize:14,height:20}},"\u8BBE\u7F6E",He.createElement("i",{style:{marginLeft:5,color:"#979797"},className:"iconfont icon-a-bianzu11"}))):He.createElement("span",{key:Kt.id+"",style:{marginTop:30,marginRight:24,color:"#165DFF",fontSize:14,height:20},className:"c-grey-c",onClick:()=>Bi(Kt.id)},"\u9000\u51FA")))),He.createElement(Ge.default,{width:700,wrapClassName:de.Z.CustomCss,title:"\u6743\u9650\u914D\u7F6E",footer:null,open:mi,onCancel:()=>di(!1)},He.createElement(vt.Gi,null,He.createElement(Se.default,{dataSource:yr==null?void 0:yr.members,columns:zi,pagination:!1,scroll:{y:240}})),He.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")),He.createElement(Ge.default,{title:"\u89E3\u6563\u63D0\u793A",wrapClassName:de.Z.CustomCss,onOk:()=>{Pt(ko),_i(!1)},open:xa,onCancel:()=>_i(!1)},He.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"),He.createElement("p",null,"\u60A8\u786E\u5B9A\u8981\u89E3\u6563\u672C\u6559\u7814\u56E2\u961F\u5417\uFF1F")),He.createElement(Ge.default,{wrapClassName:de.Z.CustomCss,title:"\u8F6C\u8BA9\u56E2\u961F",onOk:()=>{if(!hr){Ne.ZP.info("\u521B\u5EFA\u4EBA\u4E0D\u80FD\u4E3A\u7A7A");return}xn(Pi,hr),ma(!1),hr=""},open:xo,onCancel:()=>{ma(!1),hr=""}},He.createElement("p",{style:{textAlign:"left"}},"\u9009\u4E2D\u7684\u6210\u5458\u5C06\u4F1A\u4EE5\u65B0\u7684\u521B\u5EFA\u4EBA\u8EAB\u4EFD\u63A5\u7BA1\u56E2\u4F53 ",He.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"),He.createElement("div",null,He.createElement(ze.ZP.Group,{defaultValue:[],onChange:Kt=>{hr=Kt.target.value,or(Kt.target.value)}},(rr=(Qn=Co==null?void 0:Co.memers)==null?void 0:Qn.filter(Kt=>Kt.is_teacher))==null?void 0:rr.map((Kt,Le)=>He.createElement(ze.ZP,{style:pi,value:Kt==null?void 0:Kt.id},Kt==null?void 0:Kt.name))))))},lt=Be(88230),Nt=Be(24459),Zt=Be(67732),Ut=Object.defineProperty,Ft=Object.defineProperties,Yt=Object.getOwnPropertyDescriptors,dn=Object.getOwnPropertySymbols,Dn=Object.prototype.hasOwnProperty,Rn=Object.prototype.propertyIsEnumerable,Zn=(It,nn,Pt)=>nn in It?Ut(It,nn,{enumerable:!0,configurable:!0,writable:!0,value:Pt}):It[nn]=Pt,ln=(It,nn)=>{for(var Pt in nn||(nn={}))Dn.call(nn,Pt)&&Zn(It,Pt,nn[Pt]);if(dn)for(var Pt of dn(nn))Rn.call(nn,Pt)&&Zn(It,Pt,nn[Pt]);return It},Gn=(It,nn)=>Ft(It,Yt(nn)),Wn=(It,nn,Pt)=>new Promise((Vt,on)=>{var $t=Qn=>{try{xn(Pt.next(Qn))}catch(rr){on(rr)}},Jt=Qn=>{try{xn(Pt.throw(Qn))}catch(rr){on(rr)}},xn=Qn=>Qn.done?Vt(Qn.value):Promise.resolve(Qn.value).then($t,Jt);xn((Pt=Pt.apply(It,nn)).next())});function qt({children:It}){return He.createElement("div",{className:"no-data"},He.createElement("img",{src:ke,alt:"no-data",width:300}),It)}const xt={data:[],loading:!0,selectedGroup:{},showFormPanel:!1,showMemberPanel:!1,index:0};var ft=(It=>(It[It.INITDATA=0]="INITDATA",It[It.SHOWLOADING=1]="SHOWLOADING",It[It.SHOWFORMPANEL=2]="SHOWFORMPANEL",It[It.SHOWMEMBERPANEL=3]="SHOWMEMBERPANEL",It[It.SELECTGROUP=4]="SELECTGROUP",It[It.SETINDEX=5]="SETINDEX",It))(ft||{});function Bt(It,nn){switch(nn.type){case 0:return ln(ln({},It),nn.payload);case 1:return Gn(ln({},It),{loading:nn.payload});case 5:return Gn(ln({},It),{index:nn.payload});case 2:return ln(ln({},It),nn.payload);case 3:return ln(ln({},It),nn.payload);case 4:return Gn(ln({},It),{selectedGroup:nn.payload,showFormPanel:!0});default:throw new Error}}function Ot({user:It}){var nn;const Pt=(0,Nt.useLocation)(),[Vt]=(0,Nt.useSearchParams)(),[on,$t]=(0,He.useReducer)(Bt,xt),{data:Jt,index:xn,loading:Qn,showFormPanel:rr,selectedGroup:Jn,showMemberPanel:mr}=on,Rr=(nn=It.userInfo)==null?void 0:nn.role,[Tn,hr]=(0,He.useState)(Vt.get("category")||"0"),or=(0,He.useMemo)(()=>{let Rt=[],Kr=[];if(Jt){for(let Bi of Jt)Bi.is_creat?Rt.push(Bi):Kr.push(Bi);return[Rt,Kr]}},[Jt]);(0,He.useEffect)(()=>{Rr===15&&$t({type:5,payload:1})},[Rr]);function yr(){return Wn(this,null,function*(){const Rt=yield Oe();(Rt==null?void 0:Rt.status)!==401&&$t({type:0,payload:{loading:!1,showFormPanel:!1,data:Rt.groups,index:Vt.get("category")||0}})})}(0,He.useEffect)(()=>{yr()},[]);function ti(Rt){return Wn(this,null,function*(){Jn.id?yield Te(Jn.id,Rt):yield we(Rt),yr()})}function mi(){$t({type:2,payload:{showFormPanel:!0,selectedGroup:{}}})}function di(Rt){$t({type:4,payload:Rt})}function Pi(){$t({type:2,payload:{showFormPanel:!1}})}function vo(){$t({type:3,payload:{showMemberPanel:!1,selectedGroup:{}}})}function Co(Rt){$t({type:3,payload:{showMemberPanel:!0,selectedGroup:Rt}})}function To(Rt,Kr){return Wn(this,null,function*(){yield Pe(Rt,Kr),yr()})}function xo(Rt){return Wn(this,null,function*(){yield je(Rt),yr()})}function ma(Rt){return Wn(this,null,function*(){yield Ie(Rt),yr()})}function xa(Rt,Kr){return Wn(this,null,function*(){yield be(Rt,Kr),yr()})}function _i(Rt){$t({type:5,payload:parseInt(Rt.target.id,10)})}function ko(Rt,Kr){return Wn(this,null,function*(){vo(),yield Re({user_ids:Rt,group_id:Kr}),yr()})}const ro=[{id:"0",name:"\u6211\u521B\u5EFA\u7684"},{id:"1",name:"\u6211\u52A0\u5165\u7684"}];return He.createElement(He.Fragment,null,He.createElement("div",{className:"teaching-circling-container",style:{paddingLeft:45,paddingTop:22}},He.createElement("div",{className:"teaching-circling-body"},Rr===15?null:He.createElement(vt.YG,{value:Tn,onChange:Rt=>{var Kr;(Kr=window.location.href.toString())!=null&&Kr.includes("category")?(0,lt.jz)("category",Rt):window.history.replaceState(null,"",window.location.href.indexOf("?")>-1?window.location.href+`&category=${Rt}`:`?category=${Rt}`),hr(Rt),$t({type:5,payload:parseInt(Rt,10)})},tabBarExtraContent:He.createElement(et.ZP,{type:"primary",disabled:Jt.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:Jt.length>=50?"\u60A8\u52A0\u5165\u7684\u6559\u7814\u7EC4\u5DF2\u8FBE\u4E0A\u9650":"",onClick:mi},"\u65B0\u5EFA"),className:"mb25",dataSource:ro}),He.createElement("div",{className:or[xn].length===0?"nodata-content":"main-content"},or[xn].length===0?He.createElement(qt,null,Rr<=12?He.createElement(He.Fragment,null," ",He.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")," ",He.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")," "):He.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 ")):He.createElement(Et,{onExitGroup:ma,Transferteams:xa,onPlusMember:Co,onDelMember:To,onDelGroup:xo,isAdminOrTeacher:Rr<=12,onChangeGroupName:di,data:or[xn]})))),He.createElement(ve,{callback:ti,visible:rr,onCancel:Pi,id:Jn.id,name:Jn.name}),He.createElement(Ge.default,{centered:!0,title:"\u6DFB\u52A0\u6210\u5458",open:mr,onCancel:vo,footer:null,width:1150,bodyStyle:{minHeight:200},wrapClassName:de.Z.CustomCss},He.createElement(Zt.Z,{container_id:Jn.id,container_type:4,onSelect:ko,onCancel:vo})))}var ut=(0,Nt.connect)(({user:It})=>({user:It}))(Ot)},86099:function(sn,an,Be){"use strict";Be.r(an),Be.d(an,{default:function(){return RX}});var He={};Be.r(He),Be.d(He,{add:function(){return hn},adjoint:function(){return Zg},clone:function(){return uu},copy:function(){return ec},create:function(){return is},determinant:function(){return wf},equals:function(){return ar},exactEquals:function(){return Gr},frob:function(){return jt},fromQuat:function(){return Mv},fromQuat2:function(){return Z0},fromRotation:function(){return v1},fromRotationTranslation:function(){return Lm},fromRotationTranslationScale:function(){return Dm},fromRotationTranslationScaleOrigin:function(){return Fp},fromScaling:function(){return l0},fromTranslation:function(){return Rp},fromValues:function(){return Kg},fromXRotation:function(){return m1},fromYRotation:function(){return y1},fromZRotation:function(){return kp},frustum:function(){return uA},getRotation:function(){return Tm},getScaling:function(){return u0},getTranslation:function(){return ju},identity:function(){return ad},invert:function(){return Fd},lookAt:function(){return it},mul:function(){return Si},multiply:function(){return vl},multiplyScalar:function(){return Pn},multiplyScalarAndAdd:function(){return Xn},ortho:function(){return Ee},orthoNO:function(){return Om},orthoZO:function(){return _e},perspective:function(){return cA},perspectiveFromFieldOfView:function(){return c0},perspectiveNO:function(){return dh},perspectiveZO:function(){return Im},rotate:function(){return Nh},rotateX:function(){return _d},rotateY:function(){return K0},rotateZ:function(){return my},scale:function(){return V0},set:function(){return Eh},str:function(){return ct},sub:function(){return vi},subtract:function(){return Mn},targetTo:function(){return nt},translate:function(){return cp},transpose:function(){return Sf}});var et={};Be.r(et),Be.d(et,{circle:function(){return N7},diamond:function(){return B7},rect:function(){return k7},simple:function(){return _7},triangle:function(){return SO},triangleRect:function(){return F7},vee:function(){return R7}});var Ge=Be(59301),ke=Be(24459),Ze=Be(8591),Oe=Be(43418),we=Be(3113),Te={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"},Re=Be(22663),Ie=Be(78241),be=Be(5112),Pe=Be(19842),je=Be(92832),ye=Be(71418),ie=Be(7660),ae={applyPublicContainer:"applyPublicContainer___pImhb",applyPublicContent:"applyPublicContent____dPHq",spin:"spin___bBN3v",tips:"tips___uXmwo",action:"action___D3zVt"},fe=Be(87169),de=Be(59301),ve=(b,x,E)=>new Promise((z,te)=>{var re=ce=>{try{le(E.next(ce))}catch(ge){te(ge)}},oe=ce=>{try{le(E.throw(ce))}catch(ge){te(ge)}},le=ce=>ce.done?z(ce.value):Promise.resolve(ce.value).then(re,oe);le((E=E.apply(b,x)).next())}),he=({type:b,onCancel:x,onOk:E})=>{const[z]=Ie.default.useForm(),[te,re]=(0,Ge.useState)(1),[oe,le]=(0,Ge.useState)(!1),[ce,ge]=(0,Ge.useState)([]);(0,Ge.useEffect)(()=>{z.setFieldValue("type",1),Ae()},[]);const Ae=()=>ve(void 0,null,function*(){if(b){le(!0);const Ue=yield(0,ie.ZP)("/api/disciplines.json",{method:"get",params:{source:b}});ge(Ue.disciplines||[]),le(!1)}}),Me=()=>{const{sub_discipline_id:Ue,discipline_name:Xe,sub_discipline_name:$e,type:rt}=z.getFieldsValue();if((!Ue||Ue&&Ue.length===0)&&(!Xe||!$e))return Ze.ZP.warning("\u8BF7\u9009\u62E9\u65B9\u5411&\u8BFE\u7A0B"),!1;E({user_customize:rt==2,sub_discipline_id:rt==1?[Ue[1]]:null,discipline_name:Xe,sub_discipline_name:$e})};return de.createElement(Oe.default,{width:640,className:ae.applyPublicContainer,centered:!0,title:"\u516C\u5F00\u8BFE\u7A0B",okText:"\u7533\u8BF7\u516C\u5F00",open:!0,onCancel:()=>{x(),z.resetFields()},onOk:()=>{z.validateFields().then(Ue=>{if(te==2&&(Ue.discipline_name.replaceAll(" ","").length<=0||Ue.sub_discipline_name.replaceAll(" ","").length<=0)){Ze.ZP.info("\u65B9\u5411\u6216\u8BFE\u7A0B\u4E0D\u80FD\u4E3A\u7A7A\uFF0C\u8BF7\u586B\u5199\u540E\u518D\u63D0\u4EA4\uFF01");return}Me(),z.resetFields()})}},de.createElement("div",{className:ae.applyPublicContent},de.createElement("div",{className:ae.tips},de.createElement(fe.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"),de.createElement(Ie.default,{labelAlign:"left",form:z},de.createElement(Ie.default.Item,{name:"type"},de.createElement(be.ZP.Group,{onChange:Ue=>{re(Ue.target.value),Ue.target.value==1?z.setFieldsValue({discipline_name:"",sub_discipline_name:""}):z.setFieldsValue({sub_discipline_id:[]})}},de.createElement(be.ZP,{value:1},"\u5FEB\u901F\u9009\u62E9\u65B9\u5411&\u8BFE\u7A0B"),de.createElement(be.ZP,{value:2,style:{marginLeft:40}},"\u81EA\u5B9A\u4E49\u65B9\u5411&\u8BFE\u7A0B"))),te==1&&de.createElement(Ie.default.Item,{label:"\u65B9\u5411&\u8BFE\u7A0B",name:"sub_discipline_id",rules:[{required:!0}]},de.createElement(Pe.Z,{expandTrigger:"hover",placeholder:"\u8BF7\u9009\u62E9\u65B9\u5411&\u8BFE\u7A0B",options:ce,fieldNames:{label:"name",value:"id",children:"sub_disciplines"},onChange:(Ue,Xe)=>z.setFieldsValue({sub_discipline_id:Ue})})),te==2&&de.createElement(de.Fragment,null,de.createElement(Ie.default.Item,{label:"\u65B9\u5411",name:"discipline_name",rules:[{required:!0}]},de.createElement(je.default,{placeholder:"\u8BF7\u8F93\u5165\u65B9\u5411",autoComplete:"off"})),de.createElement(Ie.default.Item,{label:"\u8BFE\u7A0B",name:"sub_discipline_name",rules:[{required:!0}]},de.createElement(je.default,{placeholder:"\u8BF7\u8F93\u5165\u8BFE\u7A0B",autoComplete:"off"})))),oe&&de.createElement("div",{className:ae.spin},de.createElement(ye.Z,null))))},pe=Be(99325),Se=Be.p+"static/banner.6e6a323f.png",Ne="data:image/png;base64,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",ze=Be(59301),Ke=Object.defineProperty,Ve=Object.defineProperties,Je=Object.getOwnPropertyDescriptors,tt=Object.getOwnPropertySymbols,gt=Object.prototype.hasOwnProperty,st=Object.prototype.propertyIsEnumerable,St=(b,x,E)=>x in b?Ke(b,x,{enumerable:!0,configurable:!0,writable:!0,value:E}):b[x]=E,At=(b,x)=>{for(var E in x||(x={}))gt.call(x,E)&&St(b,E,x[E]);if(tt)for(var E of tt(x))st.call(x,E)&&St(b,E,x[E]);return b},vt=(b,x)=>Ve(b,Je(x)),Tt=(b,x)=>{var E={};for(var z in b)gt.call(b,z)&&x.indexOf(z)<0&&(E[z]=b[z]);if(b!=null&&tt)for(var z of tt(b))x.indexOf(z)<0&&st.call(b,z)&&(E[z]=b[z]);return E},bt=(b,x,E)=>new Promise((z,te)=>{var re=ce=>{try{le(E.next(ce))}catch(ge){te(ge)}},oe=ce=>{try{le(E.throw(ce))}catch(ge){te(ge)}},le=ce=>ce.done?z(ce.value):Promise.resolve(ce.value).then(re,oe);le((E=E.apply(b,x)).next())});const Et=[{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"}],lt=b=>{var x=b,{pathsDetail:E,user:z,globalSetting:te,loading:re,dispatch:oe}=x,le=Tt(x,["pathsDetail","user","globalSetting","loading","dispatch"]),ce,ge,Ae,Me,Ue,Xe,$e,rt,ot,pt,yt,Ct,zt,Wt,Ht,Qt,Gt,vn,Sn,kn;const Kn=(0,ke.useParams)(),[vr,er]=(0,Ge.useState)({}),Nr=(0,Ge.useRef)(1),[ei,Ar]=(0,Ge.useState)(),[Sr,Ir]=(0,Ge.useState)(!1),[si,Cr]=(0,Ge.useState)(!1),wi=(0,Ge.useRef)(null),Mo=!((ce=E.detail)!=null&&ce.edit_of_subject_knowledge),[Po,eo]=(0,Ge.useState)({status:!1}),Ui=((ge=E.detail)==null?void 0:ge.is_free)||((Ae=E.detail)==null?void 0:Ae.can_learning);(0,Ge.useEffect)(()=>{eo({status:!1})},[]),(0,Ge.useEffect)(()=>{function Fa(){return bt(this,null,function*(){var tl,Ps,rl,gl,fu,$l,Xa;if((tl=E.detail)!=null&&tl.courses){const ms=(Ps=E.detail)==null?void 0:Ps.courses;if((rl=ms==null?void 0:ms.toast)!=null&&rl.is_open&&((gl=ms.toast)==null?void 0:gl.open_num)===-1)Cr(!0);else if((fu=ms==null?void 0:ms.toast)!=null&&fu.is_open&&(($l=ms==null?void 0:ms.toast)==null?void 0:$l.open_num)===1){let $o=JSON.parse(localStorage.getItem("pathsshow"))||[];((Xa=$o.filter(va=>va===(Kn==null?void 0:Kn.pathId)))==null?void 0:Xa.length)>0?Cr(!1):(Cr(!0),$o.push(Kn==null?void 0:Kn.pathId),localStorage.setItem("pathsshow",JSON.stringify($o)))}else Cr(!1)}})}Fa()},[(Me=E.detail)==null?void 0:Me.courses]),(0,Ge.useEffect)(()=>{var Fa,tl,Ps,rl,gl,fu,$l,Xa,ms,$o,va;if(!((tl=(Fa=E.detail)==null?void 0:Fa.courses)==null?void 0:tl.length))return;let js;if((Ps=E.detail)!=null&&Ps.has_start){const aa=(gl=(rl=E.detail)==null?void 0:rl.courses)==null?void 0:gl.findIndex(cl=>{var Hs;return((Hs=cl.course_status)==null?void 0:Hs.status)===1});js=aa>-1?aa:0}else{let aa=(Xa=($l=(fu=E.detail)==null?void 0:fu.courses)==null?void 0:$l.map(cl=>{var Hs;return(Hs=cl.course_status)==null?void 0:Hs.status}))==null?void 0:Xa.lastIndexOf(2);js=aa>-1?aa:0,aa=($o=(ms=E.detail)==null?void 0:ms.courses)==null?void 0:$o.findIndex(cl=>{var Hs;return((Hs=cl.course_status)==null?void 0:Hs.status)===0}),js=aa>-1?aa:js}er(((va=E.detail)==null?void 0:va.courses[js])||{})},[E.detail]);const fo=()=>{Ze.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")},Uo=Fa=>{var tl,Ps;const rl=(Ps=(tl=E.detail)==null?void 0:tl.courses)==null?void 0:Ps.find(gl=>gl.course_id===Fa);er(rl||{}),oe({type:"classroomList/setActionTabs",payload:{key:"\u4FEE\u6539\u5F00\u8BFE\u65F6\u95F4",name:Fa}})},pa=Fa=>{eo({status:Fa})},Ga=Fa=>{Oe.default.confirm({centered:!0,width:590,title:"\u63D0\u793A",okText:"\u786E\u5B9A\u7533\u8BF7",cancelText:"\u53D6\u6D88\u7533\u8BF7",icon:null,content:ze.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",ze.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",ze.createElement("br",null)),onOk:()=>bt(void 0,null,function*(){let tl={user_customize:Fa.user_customize,type:Fa.type};Fa.user_customize?tl=vt(At({},tl),{discipline_name:Fa.discipline_name,sub_discipline_name:Fa.sub_discipline_name}):Fa.sub_discipline_id&&(tl=vt(At({},tl),{sub_discipline_id:Fa.sub_discipline_id}));const Ps=yield(0,Re.WO)(At({id:Kn.pathId},tl));((Ps==null?void 0:Ps.status)===0||(Ps==null?void 0:Ps.status)===1)&&(kl(),Ze.ZP.success("\u516C\u5F00\u7533\u8BF7\u5DF2\u63D0\u4EA4\uFF0C\u8BF7\u7B49\u5F85\u7BA1\u7406\u5458\u7684\u5BA1\u6838"))})})},kl=()=>{oe({type:"pathsDetail/getPathsDetail",payload:{id:Kn.pathId,knowledge:!0}}),oe({type:"pathsDetail/getRightData",payload:{id:Kn.pathId}})},al=((Xe=(Ue=E.detail)==null?void 0:Ue.courses)==null?void 0:Xe.findIndex(Fa=>(Fa==null?void 0:Fa.course_id)===(vr==null?void 0:vr.course_id)))+1;return ze.createElement("section",null,ze.createElement("aside",{className:Te.banner,style:{backgroundImage:(ot=(rt=($e=E==null?void 0:E.detail)==null?void 0:$e.attachments)==null?void 0:rt[0])!=null&&ot.url?`url(${(Ct=(yt=(pt=E==null?void 0:E.detail)==null?void 0:pt.attachments)==null?void 0:yt[0])==null?void 0:Ct.url})`:`url(${Se})`}},ze.createElement("aside",{className:Te.wrp},ze.createElement("div",{className:Te.name},(Wt=(zt=E.detail)==null?void 0:zt.name)==null?void 0:Wt.split(` `)[0]),ze.createElement("div",{className:Te.content},ze.createElement("span",null,"\u77E5\u8BC6\u56FE\u8C31\uFF1A",(Ht=E==null?void 0:E.detail)==null?void 0:Ht.knowledge_count),ze.createElement("span",null,"\u6807\u7B7E\u8282\u70B9\uFF1A",(Qt=E==null?void 0:E.detail)==null?void 0:Qt.tag_count),ze.createElement("span",null,"\u8D44\u6E90\u8282\u70B9\uFF1A",(Gt=E==null?void 0:E.detail)==null?void 0:Gt.resource_count),((vn=E.detail)==null?void 0:vn.origin_subject_identifier)&&ze.createElement("div",{onClick:()=>{var Fa;window.open(`/paths/${(Fa=E.detail)==null?void 0:Fa.origin_subject_identifier}`)},className:Te.go},ze.createElement("img",{src:Ne,className:Te.goicon})," ",ze.createElement("div",{style:{cursor:"pointer"}},"\u524D\u5F80\u8BFE\u7A0B\u5B66\u4E60"))))),Po.status&&ze.createElement(he,{type:"subject",onCancel:()=>pa(!1),onOk:Fa=>{pa(!1),Ga(Fa)}}),ze.createElement(Oe.default,{open:si,title:"\u8BFE\u7A0B\u516C\u544A",width:593,maskClosable:!1,onCancel:()=>{Cr(!1)},centered:!0,footer:ze.createElement("div",null,ze.createElement(we.ZP,{type:"primary",onClick:()=>{Cr(!1)}},"\u6211\u77E5\u9053\u4E86"))},ze.createElement(pe.Z,{style:{maxHeight:378,overflow:"auto"},value:(kn=(Sn=E==null?void 0:E.detail)==null?void 0:Sn.toast)==null?void 0:kn.content})))};var Nt=(0,ke.connect)(({pathsDetail:b,user:x,loading:E,globalSetting:z})=>({pathsDetail:b,user:x,globalSetting:z,loading:E.models.index}))(lt),Zt=Be(99313),Ut=Be(50484),Ft={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"},Yt=Be(88230),dn={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"},Dn={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"},Rn="data:image/png;base64,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",Zn="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAoYAAABgCAYAAACACLPPAAAAAXNSR0IArs4c6QAAIABJREFUeF7tvQmAXFd1JnzOve/VvvSiltSSLG/Csi2DFxmzg20wYGJiIODJJJAFMiEBMoSQEAIB2zBkIWHJAgEmMGFCmAkwYGODAYNtMKuNvIBlW15lba3uVi+1L+/de/7/3Fevu9RdVd2tXlTdfa9cruqq++7yvVevvz7LdxBWuBERhlNef/31U6/37t079bp5SaOju1q+v8LLttNZBCwCFgGLgEXAImAROGEEBgb2UquDd+3aNfX+tddeO/UaEVv2P+EFzPPAFSNdMwkhE0EmfYXCEaxWJ7C2vWjWsq2yyTzXaqUVW9s8sbLdLAIWAYuARcAiYBGwCCwKgWg0aQjfofiweY4eSFEs1kvp9BZi8shE8WQSxBUjX0wM2UIYEsLR0b2CyeDAZEqUSjmhVBZrqaLI+h4qlUKlPLM2rf0VW+OizrQ92CJgEbAIWAQsAhYBi0AbBIRwDBGU0iUpi5RzXIoWU1rKHCWTWT3aU9RMEgcGdulmgrjSlsMVIV2tSGEmAzKfBxmLTchqVcpaRMiYVxcq6gjle0JTFEkrjGq9Imu0V7JFwCJgEbAIWAQsAhaB5UKgJgShkCSwRtJxtaz5uupGdLSuVSymVLXaqzIZUPk8qJNJDleEdIXE8I47QLClUMfy/QSxy7TSL7ro+Tt+141KVysCrQGI+MH/M//ZZhGwCFgELAIWAYuARWBNIGBIFwIgIiACCAEgJEK9qvS9P35sDyAOI8FB0OIOjOL3fv0V50+wW3klrYYrRgzP2n3V2UI7v0mCXgKAFwNpyfhsPW0TbN6WAaUAlCIgze5jCkihZYZr4otgN2ERsAhYBCwCFgGLQIMUAhNCBBTsVkaQEuDooTwc3j/cgKhBzRAVAN2NBLeChP/Y9/Ov71sJDJedGJ79zFe/iJR+JxFdRUCzcmwisSicc+F28DwNyidDEJkYsumwKYF5JbCwc1gELAIWAYuARcAiYBFYNgQMCUI0xJAJoXQQXFfAQ/cegHq1dty8rOGCbF4MGlsNb0YpPvLw3V/7/rItMOCuy9POvujVryHQf0FEFzfPYGyBjAsEVkFewBnnbgfHccH3Nfhew6WsCZgfLtsCl2fbdlSLgEXAImARsAhYBCwCsxBgziOY7AkmhgCOi+A4AnzfgycePDDFicj4mo8jhceNhYg/RxB//fA9X/vqcsC85LzrnAtfc6oG/18I4MrZC2ZSyLtla2AjiBAJNmzsh+xAD/g1DZ6xGjZcymGf5di5HdMiYBGwCFgELAIWAYvASiHAMYUcW9hwIbsOghMVkBudhGMjYw1+FMQfhlypk3kMAW4R4PzhQ/d+9aml3MKSEcPXve518v7Ham////f9AQJItqTKjaDBwFLIFsPAZey6Dpyy41So1zV4dWq4lJk8BskotlkELAIWAYuARcAiYBFYzQgw3+OHiStkF3IEIRIRcPCxp8DzfPMh/2OL4TQ5C6yH7RoClAjg/efviP7Dl7/8ZbUU+CwJMdx58a/uBA1fJIKL2i4qzCbhGUO2R7qRZEKw5bRTAKVriCG7k9lqyJnKlhguxWm2Y1gELAIWAYuARcAicDIRMFnIJtkEjRuZiaFWdRjaf6hBCtlqJoIlGquheTGvmDpEuAcE/MZSJKgsmhiec/HVr1AavghE2Y6ANxPDRpxhYDHUxq2c7euDTG8v1Os0ZTXkJBQTZ2ithifzWrZzWwQsAhYBi4BFwCKwCAQ4io7jC03SyZS1ECE/MQG58fHAfYwisBWGmjYLIIYNMpmTAn7joZ/f+M1FLHVxuR1n7b763aDhQwDUoLhzLIXNf00WQ2JtmoY7WQoBg2ecbkhhvcYZyg35GpOdvJgt2mMtAhYBi4BFwCJgEbAInDwEAjdyYC2UDkAkKozFcOiJJ0GxiDN3YFo402Jo3l9IQw0C3vvInhv/ZiFHNfdd6Izm2Oc853XxsVr9c0D06wubeFq4ejrGMFC15n+btm0D4UTBqxH4fvAA1jW0zHBhMNveFgGLgEXAImARsAh0DQKcdAKcicwJJ2wxjCJovwbDhw41rITTFsOpGMPQcngiu0D8v/3RyBt/8pMvVxZ6+IKJ4e7dr8sWqP5tIHrWQicz/Q03ZEshu4g5xjDIUEYiSPdmId03YJJQ/FoQZ6iYN7I/2TaLgEXAImARsAhYBCwCqxABlqiRjWxkJxoknRTGRqEwmWOBwqASCieeNCyGyCxywQxtBjCIP0tj5GV79nw5txDIFjTtBZe+qqeS098hgGcuZJKwb6OeSSNmcDormakiu5UdRBg88wzwagCeN52EwsTRGg1PBHF7jEXAImARsAhYBCwCJxOBZjeySTrhRxRg6PEnwGfDmCGDQcpykI/MBDFYcXN+8onsAQHujmfFS++744bJ+R4/b2JoSGGebp0pWD3fiUy/huEvIIiNh2F8oa6hNu5k6cZNnKF1Jy8IXdvZImARsAhYBCwCFoEuQ2CmG5njC5VXMW5kk3DSiC8M4wwDOjjFDBe9GxbEjmfwivmSw3kRw6c//zd66+USk8Ldi17hVEZyk5ahqY2sjTs5kUlD78ZNUK/SdJk8605ePOx2BIuARcAiYBGwCFgEVhyBKTdyo/xdJIYwMTIM5XwhcCOz25hrJzdrGC4mvrDFDhFxTySRvOKXP/zixFwAzEkMOaawSLXbOmoUzjXLjM+ZBpqJG0kngZJ1I+4QALaeeSbU2ZXMsYY+gfaDBBTrTl4g0La7RcAiYBGwCFgELAInDQGTc8K1kZ1G4klEQMRFOPz446ETNdAuDN3IyKm5i3cht9owax2mMHr5XDGHHYnhpZde5xzJ3cN6OFcsGapN7uSwXrIhhYb4aWNJ3bBlC7iRRJCEwpVQmkvkLdlC7EAWAYuARcAiYBGwCFgElg+B5hJ4TqPSiVcvw7EjR4yxy8QXTmkYcmDd0rqRW+zs1i3Zi15xxx3X+e123ZEY7rzo6k8R0ZuXBTJjLeQWWAqbyWEynYbeTYNQrylDDD1TBcVmJy/LebCDWgQsAhYBi4BFwCKwLAiwG1lIAJernTAxjEqYGB6CUqFwHCkMJmeB60bVk2VZTTAoIn563z03/sGCieHZu1/1Tq313y/H2ubKTuZKJ9t2nAGeh6YSivK1dScvx4mwY1oELAIWAYuARcAisCwINLuRpSMgEuGMZIJDjz1hso6XMxt5rg0JIf704T03fKRVv5YWw50Xv/pqUvqr865oMtcKWn3esBhOu5PDOMPgecPgIETiKahxFRSON/TJGBWt2PWJgG2PsQhYBCwCFgGLgEVgJREI3cgsaC1dhGhUQK1chLGjQ42ayIGodRBfGLqRl99i2LAbapTiNft+/rUbZ2Iyixies/s1F2nt/4AAkssOYDt3MhDEE0nYMLjFyNZ4ngaPk1CsO3nZT4mdwCJgEbAIWAQsAhaBxSMw5UYOs5GjAo4NHYFKuXRctZNgppVxIzfvCgFKQjgvfGjPV++Z8f70j4GANd1LQKctHpLOI8xyJzf0DINM5UC6ZuuZZ4CvBNS5CorHxJBsdvJynxg7vkXAImARsAhYBCwCi0Jgyo3MtZFdji1EcKSGw4+zG7khUTNVH3lpRa0XsnAE3B/P4oXNGofHWQx3XnT1V4jo1xYy6KL6mpScRpk8o/6tG+Xvggzl/s2bIJrIgMdi1w13smbNQ1shb1Gw24MtAhYBi4BFwCJgEVg+BAwxFEFdZFPtxLiR8zB2dHgqtpAtikQNgesGFwpErle2IeL/23fPja8NZ51awVm7r34LaPrEyi4n1DIMnoN4w7ASioZoPAobt55iLIYeS9ew1bBBDC05XPEzZSdcaQQQIfWO50DkwsGWM5MimHzTDUBcUHyOJnrikPnAZSB64+3HetvNQMX6XEO1/Dx62emQfONFHY/1fjkChQ/fafokfuMZELvyaR37V7/zGJT//f6pPnJDErIffVkg7dCmUdWHyT/6BvDzrMbZganICe1vuQ/S+VrHKVAiYPLE106lOvD1MrPJrRnIXHcZYMxpP7+nYPLtt4AudF7jcmNkx7cIrBYEghJ4DWLIpJC1C6MIo4cPQbVSbbiR2XXMrCcshbdSsYVtUBT41kf23PhJ/tTcYXdd8urzPV/9FAhiKwn8tDs5eMXu4+nyeIFLeesZp4NW0mQnh8TQWg1X8izZuVYUAVeC3JyamjL63O0Qu+qslkvQYxUofORH5jN1MAeiJwaYjh7Xlzijf6hg3ku95RKIPOeUlmPV7x2C4kd/fMJbdZ+xCdJ/9vyOx6uhAuTe9R3TJ/byHZD4zfM79q///DAU/+GnU33ir90F8avP7nhM7Y79UPrsnrZ9Um97FkSete2E97kcBzJhm3jj1zizru3w7nkbIf3nLzjh6XN/+m1Qw8WWx891Luo/OQjFT951wnPbAy0C6w2BkBQaiyG7kSMsWaPg8BNPBtLVTWXwArcyGPdyQMpW3mLYmLjqOvLZe+/62v34jJe+IVk7lt9DRDtPyskL3clsK9Sh1TDQNSQi6Ns4APFUtpGEwtI101bDk7JeO6lFYBkRcM7eAJn3vmhBM1BNwcTv3QDZD70Y5Pae446t//QgFD9xF2DEgZ5P/EpbyxD34b4n2uRgBrIf7qyDT3UFE2+6wUzB5IxJWqfmPzYB+etvC7oIhJ6PX9nW4hmOk7/udvAfH287LLoCMtddDnJ79kS3uuTHqaEi5N717Y7jxi4/AxK/e+EJzR1Ylr/W0mLIA6bf8VxwL2ptlebP8x/6PvgPHzuhue1BFoH1iEBIDKVJOuH4QgGVYg7GR0aDushMDMMsZBHEFwbWsZNEChsnCRH3RTdkduNZF179eQD6rZN68lihpiF0jUwIeTHmmSASjcKmU7ZDrRpkJxtiyJVQ+Bgba3hST5udfOkRiL7wNEj+t4WVJFcHclD69N2Q+dBLZi2o8Hc/BO8XwxB99jZIvrU9ESt99h5ggtmuqSfGW1qc3AsGAeMuYFRC8k2dXck8dulf9wDVNcit6Tmtf+xeLX/hF2ZJcnMS4q85tyPg7C4tfT5wPasDk6AO51v2Z+LNBLxbmnf/USj8fWD5bdfm43pve+6Gi8AWw1aNQwyyH78S2FXdqjGGuXff2i1Q2XVYBLoegSk3MiedNLKRozEBwwcPQL1Wa3Ijs5VQmP2YWsknlxM24Yr/+6QthYjwmmuuEfcWi47MuxE3V0pUyEk7qHsI1QBovVEDbCYQg9t2nPUmrWXKlMjztJGtse7krv9+2AWeAAKJ1+6C2Bzu0pnD1vccAX2sArGXnXncR3qiYmLD+C+o1J88t22s4nyWWfz4T6G+5/Csrr2ffiVg4sRj3+Yz94n0KX7m51C/86mWh/b8068Yt3u3tOq3H4fyF+7ruJy5rHqdDq7/4igU/6418Yz96tmQeN2utoeXv3A/VL/9WLdAZddhEeh6BKbcyBLAcVnUWgAKVTz82COfRdBDAuAoCDGCJEd9EpNx9AteNllWGa9+YSrlf+lLX9KIXObj5LWTRgx5y9ddd5246aYj0vP2R+oxFUOPUtrDrE/QD6g2CiaGJAb7t55yVSyR2hVoGhJov1E/+aRCd/JOmp157SLAVj227i2kMbGIPPcUEOnjCVrl5n1Q+c8HAFMR6Pnnq9paheYzV+493zVxjM2NkyF6P/XK+Ry+4n3yH7wD/EfGZs3LLvXez17ddj21H+wHPVRa8vVGr9wBInN8/Gc4yXzIV/ZvrgBOFGnVyv/5S9DDJYg+bzu4u7fM6lK58WGofGVva5L80ZeDGGgtWUuegtzbvgG67C05HnZAi8BaRYCJoZQIosmNXC0X944dPngzoh7STAxJjjgIY8KlHLlYjFRl1XVPq7/ylVvUddddN3c24TKDd1KJIVsNL7vsegmw35mcnIxVsJQgHzOK/D5EGiANm5BoMJpMnbPxlNOuqdc0epyEwgH11p28zJeGHf5kIMBJHOze4yZ6Y8AJF+0aEwLK10H0xSH+a7PdrJPv+o5JPFlMfFo4N8cwznQ1Ozv6IHPtZScDpjnnnHzrzdAq01eekoXsX812uYcD5v/iVvAPtXZBz5yUrbvy9N725+ff7gE1Wjaf9376asBE68xfdiOzO7lT6/3cq4HjI1u1ybfcbDKGM3/5InB2znaRF/7qTvAeGpl1qLNrI2Te3T6hpXbnU1D6zM/nxNp2sAhYBAIEmt3IjiPANbWRBY0c3P+lWqn4ECEOoYBhIhyV6IyjQ/k4Jcs9PT1VgNP822+/Vp1sa6HZx8k8oaE7+cEHQfo9tWi0UI2XtZ+WIHsV+f0EsMlYDYEGt+7Y+btayywTQ2M1ZLFrq2l4Mk/fis0tHQf6enugr7cP4vEYRCOumbtW96BSqcL4xDiMT0yC8ltIlKzYKpd+IvfpmyD9rvaZvuNvvAHAUy2TBzgBgxMxuLUjDPNdsc5VYfJt35jVPfLc7ZD6w2fOd5gV60cVDyZ+/+st54vs3gKpP35O27VMvPEGYEvZfJpzei9kPnB5+7He/HWgsgciHYWeT17Vth8nnnACSrsm+hMm8aZVo7IPE2++0cR49jD5nBErSJ6GiTd/3VwnM1vqrZdA5Nmts9S5b/7628F/rH0iz3ww6sY+6/V+0o3nYq2tadqNHCSdMDEUQuUOPfbovwmgI8ZaCGLEQXFMgZpICKdQS8cqzmS0du65oLrBjXzSiSEvIHQnAwy5JVmOiyImlaAeBdgHoDaicSfTYN/mbVfG09nzjaYhxxlad/Ja+07N2g+n+g8ODsKWLYPgSNlxv75ScOTIEAwNDZk/GFZbY6kXdvk2N3YNt3PzsbSJv3/SdJen9swmBLkaVG7aByz50o5U8LHFf/4ZJH9vd9ts5cpXH4T6XYdbJnLEX33OnAkhPEfthwegduvi49Tktuy8EnPU/knIve97LS+B2K+cBYlff3rLz/Q4x2R+c96XTifirgt1mHzLTWYsZ0c/ZK69tPW4mmCcM7X99t4j99wBSP/FC1se7z85Afn33wbt5IL8vSOQ/5tAO7K58bXW+4+vAHBbf6/8AznIv/e788ZiNXRcT/eT1XA+1uIaj3cjB9qFlWLuvvGhQ99CxCEyxFCOSKBxqXFSp6iUVIkKwKDXLW7kriCGodVwdDTpNruTNahe0HqAADch0GA0Et2x8YwzX1+vEhqx67B2MpfQW308YC1+J5Z0T5FIBHbufBqkkkH8Uy6Xh2NjY5DPF6DuBTFPEdeFTCYNG/r7IZsN4q+KpRLs2/co1OsnJtS8pJuY52DoSuj93Kvm2Xv+3cr/+z6AmAOJa85reRDrCuavvR16P/OrbQctfPD74D3SWqqErYVsNZyrlT53D9RuZ/2uxbXo87dD8s1zWyhDiZ5WsyXfeCFELzuj5UK8h0eh9KmfQ8/fv2x+C2WZCSM10ab5Gqo/2A/q0bG262ZXc+5Pbuk4X/Ty0yH5u60zvms/PQSlT/ysrWB4+ct7ofr1h2eNP5d2Yel/3QO12xZ/zuYH5PL3Wk/3k+VH087QCoHAjcx6hWCqnRhR6xjSyBOPf6FWrz1GgEMINAxCjAqQE81u5IGBktct1kLe20l1JfMCmBhef/31+OUv73Wa3cmE1IMaNgDiRgRiq+GWLWfufAOB7PeM1bCRgGLdyWvuW8o38aefdy7wc7VahcefeNIQwk6NCeKZZ5wOsVjMkMJfPvDgqiGHc8W9negJZqmaxK8/A+QpbZIWvrIX/PuOQuZ/vLjtFJN/9E3Qk5WWn6MUXPd9zkb+EmlLCZxfAg3fE1pU+eCFsuWNLXCtGotj1398ENLvOXEh6ZnjVv5zL0BEAFtXWzXvgWEo/O0PO2IY/69Ph/grWouch4kl2Q+9pKU2Yztdx07JLBxLOslVcFpVj5nzbHdfh/V2P+m+M7A+VhTIE6JJPDFu5ChLVauxI4/v+3cEHOL4QiAaIQHHkHCy2Y38utft8q+99lrqhvjCriCGvIhmd3K1Wo8RqZSWkPVB9YHCjQSwGQUN9m0avCKR7r24xhbDWkAM+WEthmvni8funl27zjWWwkKhAA/te3TesYMcO3TOzqdBOp02lsO9ex9cFW7lyDO3Quq/P3vJT2LhYz828YftGluq5Gm9beduFqSea3HOtgxELm9tiZvr2KX43H90HOo/OTDnUD0ffwWI/tZlAU0yT9Gblx7jnBM1OrCrnuMa21WcqX7vCSj/270dh+OYSB6jVWNZHv/+o9DzidkxjBxrOfmHN80iyc7T+iHz/jaubZ7E1zDxlpuBj1/tbT3eT1b7OVut6w/dyEwMnShCNCKgXJj4+fjw0K2k2VoIR0HSiANyXCjIIcpiLBapdpsbuWuIYbM7uVA4FC1qTILy04pEH2jiNDvjThauc/rWM3f+dr2mhclODq2G1p28Wr9Ls9a9desW2H7KNmMp/MUDD86bFIYDMTl8xnnnGsvhgYOH4PDhI12PDZOG2EumNQjlmX3tBYePFoHmqKtrNqwJOKs0+qLTWu6fy6NxximX20v8l9Yxd5ydy1m682mxF58Jid+5YD5dl6UPx0JWvvZQ57FdCX0sVdOmugCX35ODKYi+fLqGczuJGZZwEXGn7VhG4sXXUPzbOyHxpt3gnNE6e7n8xV9A9ZZHO64789dXABPvVi3/gTuAk1M4kWRm4/hDlsLRIyXQk9Wpj1lAnYXUO7XiJ++eF9FelpO5hIOux/vJEsJnh5onAqEb2ZDCRtJJJCr04cf3fV57/pPsRgaAYRB4TKIeB+kUUoJK6fS2Wre5kbuKGIbuZA4dkzKXqJJOadQ9wO5kYHeyHiSCwcHTd7wehDvA7mSOM+QHF03R1mw4z0u4e7sxqbvowvNNosneBx+a033cbifsVt517jnACSn33Hv/gsnlyUTIOasfMu9rbc3hDNPcn3yrrWv3RNbdMeZuzxEofPwn8xp2MZU55jXBHJ1Kn7obaj/qbDGUW9KQ/duXth0p997vAleRCZtzzgbIvGd2eUKj7/fHt0D2Y1cCRlonb3DiBidwcOskAs74ens6//HC8acch9qqsSxP7KU7OoqiN5M8rlLDAt+cxdypccJR8Z+m61QvxTla6THs/WSlEV+/8wmTjhzEFpr4wigCaG906MnHvoAIQwRiCIBGQMAxQWIyhqKoVJa1rOrd5kbuGmLIC5npTq4iJSMCsh55/aDFAAFtZk3D3k2Dlyeyvc8O4gyDEnlKcwU9m4Gy2r+WAwMbYMeZZ5hEkwcfmh0wv5D9nXvO2SYh5bHHn4DR0dVT55V15VhfrmVj/c55WAuNe3HvCER2bwWRbS2q7D81aWoKd5qPLVls0ZpP6+TunM/xi+0zV41kHj9y4aCpANOuTbzpRqD6tORRu2ojnEjD1skezupt0yb+240mRm8uEXAuN9eudB8PzRqVPf/Qeh4en+eZU3amqX70fDUteWzOquY/RlZrs/eT1XrmVt+6TWyhgKkSeEwMy7mJn04MD91mtAsBj4LQoy66Y3UNuRhhqVvdyF1FDGe6k8sgE9qrZxTIXtS0gUBtQhKDKMX2bTvOfmO9piUnoLA72WgaWnfy6vs2zVjxzrPOgr6+HpNsMjIyuqj9bNw4YJJRxscnYd8jjyxqrJU62D1rA6TfN9tCtdD5Q7LBCQucuNCqhW7i7EevBDmQaNmn9Pl7ofbdJ+Y1PSewsJzMUrZ29XtbzRGKPHeav1MmLrtaJ/9oWqtRbk5B9sMvbekqZnxZmzD93tYSMkze2ZLHzTmzDzLXtRcBn0s30T17oO08TO7zf/k9yH7wchMr2pakcpxhMcjSn6tv8xjFj/4Y6veyB2x1tvV+P1mdZ231rdoYC002csON7BpRa3XosYc/R0ofYIkaRDxK7EYGNSHcSD4BqtytbuSuI4bN7uRapBiXSqUU6h5UtIG0aiShiMHB7af9JjrxzaZ2cj3MTrbu5NX3lTp+xRec/wwjYH3vfb8wMYaLaRxjeOEFzzAC2PfdPz+r12LmW4pjO2XMLmT8kGwYt+E/vqKtRiFbBGNXTsfTzZyDs5q9XwwvZOpF95Wn90Dkwi3gXrAZWEB6Pq2dAPfMY5O/fSFEX9I6QcZ/+BjkP/T9qUPa9Q3rDkcvPb1tkor/6Bhw7B+3TiLg89FN7DRP/WeHjA4lZxhjJjarJCLPz7GOkyxwzSR1exYyH2pf9WUmXqu98sl6v5/M57tj+yweASaFyNZCJoZc6SQigPzq0NCBJ79IWpukExRyhCQekyQmlZTFaD3FUg9d6UbuKmLIi2F38h13gKjV9rrFYjlWJi+F0sugxn7QFLiTQQxm+ze8INW/8YX1mjLE0GOLoTpxdzJrDxERCBRBXLqJJOX/+F/jZ/OE5sFOaxNTwJ9zrWs+jmMchTD9uQ837sN9w5/N8U3jsQRa+NnUfI2aOmG/VvPzoGy6nurDLxrvTa268VeMWQjPGywaeIWEBMhrblpbOD8fz5l8YQvXTPwXkTlAsMZQgIWRKmEMAJAamAVvNkoDNcYx+w4+D3DjxQbvTY0fYooIP7t7D2g1v+oT7b7WQkp41jN3m3F4vG5vztkbIPPexVsLZ1q+TjT2jytq5P7sW/NyXS8GW65d7O4aAPfCQfMQPbF5DccZs969Q1C763BAXudRrST9rheA+/TWbnqukVz6n8F1wu5fQ6hbxA8WPvxD8H45DIn/ch7ErtrZcq0s6F369N3ms/hrzm0vVfPwKBQ+9IOO++00D+sTsk4hN66vzXW2Zzb/oWOQ/6uA8HYixq0WwVbGCbZ8rtIwHf7+831gKe8njBOHLQX/jN6agc78xOHu/LPxXoXvB32mfjbdgr7Bkwbie6d5Ds6CGduMY+TczINvm8FbTfMEcm/mPs7zhs9T8zWOMT+bMcM5wzVOrTxYY2Nv0/tpes/cysMx2EPHt/PgubGRqTnMUYwR/9Kh4HdrABWHJTR+Dueb+izs09gfkPmdatYUYmHGm8bwhnIqAAAgAElEQVRkXjeKFejEv4tZu9ANiWFUQnFs5Ae5sWN3EjAxZDcyjpKgMVJuPoFuMZVKVKPRXd6ll4LuhtrIM2E66TqGzQsK3cn3FosOjEPU9XWSfM5O1r2chMIl8rg8HpLcsv2snW+q+xDlSihqse7kkAQ2CGHAWwLSYn5RNL8O3phN9pjkGLIWkJ5mghYcbw5scM5pwshky5CuqXH5wg9IH4933PyGZTbIVWPN4Zg8cED6Qu9XSLwa620Qs6lxzfcwIIFTRHdqzFafBeSSxw+WFe5FMCs0RLOxhcYzvx+gYNYcrq1pn8FnDYLbREiX4kYuhYBLLrl41RDD9HteCO45rfX1OLtUHwtq7nJyisi2J0/efUeh8JEfTX2tOGM1+5GXz0//r+nLyHGK9TufWpbbKsfNRS4IiCDHU7arATxzciaD9XuGoH7XIfB+OTIvMtg8Rs9HX962kgzrDVZuDuJa46/cCfEWouAcC8huZG6ptz8bIhdvbYkPxx9yljS35B88E6LPay0CzrqJpc92/qOl0zxMZJnQcmv3B0D15keAZXg4eaXnn69qW6+53YluV2d5WS6MJR50KYlheD8xVC4kyg2iFhCfgDRNkb4GoTGf8T3eHMOkiAPi+T4ayqwRNN4Kxpgi4TPHa5CwJrJk/sRuEMeQpLaaf4q6hsQwXC/jHZJGw9mCvZlxA5Y5RQDNPKZ/uMdpIhckfjYRPmMoaF5v2Dfgw4Y0NpjxTFKsSQe/ZxprM2M31hLOr5k0hiR1ia+ZhQ7X7EaW7EJmi6ELtQOP7PssoTrC+oVospHhmEQxgY5T8BxRgj6oXZhK+d0kat28964jhqE7WcqcW5Yywe5krSiLosmdTDS44ZRTX+XGUju8mg7ErrkSihW7Xuh13VX916vrp132q7k31pSpjMFxa52kZbivt3cEWHJlpv4cW5LYojTfxnFlHF+2HC162emQfGPrKh6t5mPLZf2eI+DddQjqDyycDIZjshi3qS7TplIJZ+ByJi73y378ypaWy9Jn74HaHUE1kHaC0vxZ8V/uhvqPgwzpzLWXg7OjjVTNlx6A6k37OsLcaZ78//g++PuCxKr0+y4F96z+WWPx9cBlEaPPPxWSb754wae0euvjYCrorMK2Xu8nq/BUrdolh7WRJWciG1FrAV61+Nixg0/dECSdNNzIGo8JiTl2IyeUKiuV9boxG3nqftltZ4Sthpdddr0M3ckV1ElQ9Ywg7CPBcYa4iWsnJxPJc/tPOfU1NS6R18hO5iSUhiW/27Zl1zMPBJYlWHxiwpTI6+bGSQycZNCqVb/BFp8HIPlb50O0SetwZl+OByt/9h4gTtGf0ThuL/uB9tVNmrtTqQ65P78VOG6vbXPmUe6kzcHJN1wAXOKtU+OM2Pp9R8H72SHgyiDUoY7wzHGMtaEVBpxM8nftS92F8jLtyu4xMc/98TensnR7P/uq9lI1TVnAvf/yylk1sMM1F//xp1C/+3BHLHr/9VVtpWUm3/aN4DwJhN7/eXXL9Uz+92+Cnqi0JY48OZXrgInj63SHi5pPHGS3frfW6/2kW8/HWltXI+rLJJ0ExFBANIY0dvCpr5bKpQe5NjKXwEMhRrWCMZCRfJxEKXQj3377tapbKp3Muo9228ma6U6OFjGhXS+tPN0DxmoIm4hgM7uUt+446w0ETu+U1ZDLYFlNw247pfNez3qUl+iUdWqshe/+DiRef37byhcMbrPrsh3YrMfHlsm5Gtfd5fq77ZqzcwNk/nLxsZBzreNEP29HZNxnbIL0nz2/7bChvAwnZ3CSxsxWueFhqPy/IJ6P4yBZC7BdCzOkRcKFnk+3r0PdrHXYaizRE4eef2ojVVNTMPF7N5jD5PYeyH5oNvFnQsjEUA5mIPvhK1oul0l45St7zTXWruWvvQ38JyZO9JSctOPW4/3kpIG9DicOtQunS+BxroE/cfjxR0wJPES2FsIwaBiTrpwQnluopajc7W5kPpVd5UrmBYW1k2+66Yj0vP2RqhuNS11Kqjr1IGC/j3pAAGwmEoM9Gza+INnb/9xQ09BfZBLKOry2u2rL61GQNvn688HZOdsFyCfGuDY3JIC159q12ncfh9Lnp119TEbAEbOSRubS8Avnm0vUOPqCUyH5+wt3Sa7UhdacbNE8J4tAJ97QmvxQrgYTb7vZ1FDmzPBZjUvEsbUwVzMfdUoUYjf+xO83soBP74XMBy6fk4y269BpHnVgEnLv/Z45tJ17nl3I7ErulIDEMYqVrzzYUZOxcvM+qPznAyt1CpdsnvV4P1ky8OxAcyIQJp04pjayMKLWpYmxH08eG7kTUQ9pgKMOiVECGpMRnFQiWYp5tYrrnlZ/5Su3qG6qjTxzs11HDENyGLqTKxUvWqZ8kpTIaNC9iDTAVkM05JAGtz1t5xuUlsmpJBQOmLWxhnNe1N3awZawOv7MZK69FJwdrYkj9/QeGjUadXIgCWJjwrgEK//nl1D55vHajZyE0vOxl7cv4ZavQf7dt4IuBOSnXYu/dhfErz67Wy8fk4wRZhc3LzLx+gsg9rLpsoPNn3mPjEHhg3dA+p3PMzI5M9tM2RYuM5j8vd0tMVD7JyH3voCwcanD1Ftml6oz97gGGe0EJJet4/J1rRq7oNkVzS35pt0QvXR2iTtOOql+6zEjkN2utF+YXMIWR7Y8tmp6qACT7/pO157zTguz95NVedq6ftFhbCEnb5qkkygLXKvSoUf3/Tu7kI12oYBhIhwVICZQ6nwCM6V43K1xNnI3u5EZ/K4lhtdcc43g7GSZdyPRQjVe1n6akHqQsJ9L5IWVUHoGNr0g2dP/zHptWtPQhBhZweuu/3K1WqAteg+A2SjIDUz0kpD8nYsWnEla/PhPoD6jzFr6z58P7nmb2l4T6lgJcu/89pzSJEx0mPB0a2P5FpZxmdnSf/o8cM+fTfq4HxO/yk37oIcFrVs0tsyxhS5sbOWNvmxHa8LWVEou/qpzIP5r57bs5z8yBvkPBlqH7RpnRnOGdKvWbMVrl6DCMjUiE4PU22bL2PCYxu3+x7eYe2Wnubhv7s+/A+pIoVtPe9t12fvJqjtlXb/gUNLOVDqZkqgRUJocu3tydPjOqUonQCOENIaEkwnhFGrpWEVlvHo3ZyOH4HclMeTFtSuR55PfF2gasnQNbGbL4ZYdZ/+mUpjwWfDaA2MxtFbDrv9+tV1gJBKBp593LvAzC11zJZR8vvMvJa6PzJVOWNi6Xq/DLx940Dx3e+OKFdEXnhpY/AYSRk6lXf3d+e5lZs1fFnVmDbu5Gosls2hyp8aJI3IgNddQLT8Xg6mOsZJ8EFvSmKidaKvddRDUk9MkLhwn++GXgRxsve7yV/YCTVYh0iJzWx8tAVeACVvkBadCiq14DSmrmets1hbkLGDOBm7V6ncegOJnAq3Ddi31R8+GyCWtJXFK/7oHQCLEX31ua+1HTTDx+zcClyps9wdB9eZ9JrGJ21xVdxij6o2LK1N5oud0scetp/vJYrGyx8+NQLO10OHInYgAKal85LGH/8NYCoPHMGsXOuiMr4YSeDN33bXEMMxOBtjvHKoMR6aTUFQvCOg3SSig2QSyOTuw+QWpbP/u5koo1mo49wXezT34Zr5z59MglUyaZXL95GNjY4Yg1j3PvBdxXWBCuKG/39RF5lYslUwW8moghbze+K/tgvirltY1GyZS8PhyU8pUu8ConPN0s15i/v23zdnvRDt0ivMLx1wWqRzO2v3cq9tqOc6HEPP65iO101yzOfP+S8F5WuswAE74qMxBtNolwvBa2BoYvWRb20x1dSAHxY/9BLIcPtCmHVenmTH6F9Y5bJ2drPZPQO59y3dtnOg1Nd/j1sv9ZL542H4nhkBLa2FEQDE3tic3evROMKRQDLdKOtkW31QHOM3vdjcyI9PVxJDdyQ8+CJI1DcMkFO1hVgH2gdYDhLDJJKIAbd50+tNeC+BkPS6R52swhTNshvKJXf1dchS7gQYHB2HLlkFwZGdi4ysFR44MwdDQ0LQAbZfso9MyFuua5ZJnerQEeqQEip+Hi1C7LdDaY6tW5n0vaktOWq2LCQcncCxHS/zWBRC7onWcXzgfx8SV/+P+JZ2ea0FzTei2BOl9twETn06NpYKSv31B2y7kKRPbybp/Yev5xFVtY/vmyv7mMYwETcxpOSdnG3OcI2dbt2q12580CUjt4kH9AzngrOjmlnrrJRB5dvswAXY767FAaH01tvVwP1mN52U1rXk6ExlAOgLcCFMoPzf85KNf4QonnHCCxNZCMSqBxoVLuTDphLULzz0XVLeKWjefh64lhrzI5hJ5nIRSwVIClJ/WAD1cCQV0EGtIiJti6fR5GzZvu7xe18hl8jhDmbhMno01XE3fu5Zr5ezCvt4e6OvtM7WUoxHX9KvVPVMLeXxiHMYnJkH5/qrbaycB5Lk2w3GEHE/YrsVeuRMSLSp4dBp3WSx2jQlZLqYdkQnXxBnWnGm9lI1dqRxj2a5xFvFMUfDj+goM6ja3cR+D0qCGCsDSL2HjOtW9n+kgVfP+24AttO0ax5n2/vNVLT+muoKJN90AnSq5lP7XPcAxjqI33nKM8hd/AVwru7nNJYJd+sL9UPv2Y0t5ak7KWGv5fnJSAF0nkwa6hQgoATgTOaiLjHTs6OHbqoXCA0g0HJS/oxGudCIAJkE6hTgly2HSSbeWwJt5CruaGIaahmw1ZM9hLVKMO0RJ7dWyLF2jkHUNcZNAUypv88ZTTr1SusktHsca+rYayjr5vq7qbbJViYP/jdVvtDxt+RstQfSlOzrG5HWyrjnbMpD54IuNdM1C23IlGnQiMuEaC3/3w6D28RK22IvPhMTvtLf2NSeWLNm0rgQ5mG5PRv/gJmAx8XaNSx9m3ndpy4/VwTzk3nMr8Dkm0fr8OltSLWsnmwE1weTbbwE9WTme/2aiYK7HNq2dFNCSYWYHsgh0MQLNVU4cFrSOCFBe6cjIwaduMdZCgmEUNCwJj7FEjXCjOR+xFK2n+ItWXy3WQj4FXU8MuUQeaxpGIhNOs9VQgexFrfoDqyFsAtSbnGjs1I3bTv8VpTASuJQJwmooQT1H2ywC3YUA1wkmb3a1El5lp/rJ/Hn53++H6ndmW3C4rFv6A5e3FGoOd89ZyJz53KrVvr8fTHLDErbI7i0mEWKuNvnOb4MeKc7VbUGfd9LxW9BAS9SZCeHEH9zUcbROepFzWYrNtfOO54J70WDLObjOdOHDHA41u2WuuwycM/tar40JJVdbmUPSaIlgssNYBLoGAXYhG2IYVjmJICec1EcOPfkNv1Z9CkgMBwknNEJCjklQE83Wwnq91+927cJmsLuaGPJCmyuhsHSNKnux0GqoQPQh0QZAbUrlAcCmTM+G3en+jbvZaugxMWyqoWy5Ydd8z+xC5oFAz8euBLEh0bZn4a9/AN6Do7M+T7x2F8Q6aA2y8HH1G48CayS2Zg4KJt/xrc5l8eax/rBL5BmbIfWO58xpvWR37uQf3gTEFYyWsHUiSUs4zbyH8h8fB05S6dQ6nUNTJvH//rLt4Vwxhes9o2x9ey996m6o/Sio5TyzxV9zLsRffU7bsVkjkrUibbMIrBcEpkrfCQTBlsKGtbAwNrInP3mM/4Ie5tJ3QGKEEI9J0OOhtVAm3OpqkahZdcSwndWQYw2RsE9pGgjcybgJiDZu2HbqFY6b2Ox5gdXQWA75d42NN1wv3+VVv8/Yr54NidftarsP1qDL/ckts0gUW3s4G5br57ZqnJCQ/4tbTWJCp6zZZtmVxYDJJf9S73oeoDt3VnTt9ieg9LlpaZjFzNt8bPZvrgC5Ncha74ZW/8lBKH7yro5L6ZQIUvrcPcDJJe1ap2uHyyxOvvUm4OdWzTmjFzLXt6/W4t13FAof+VE3wGjXYBFYdgTCLGS+nXI95KAmMoLvlY8eO/TUrYA4wqSQ3chS4Cghjc+MLVxt1kIGtesthrzIZqth9EDK9WLVGJfJI19kFOheYKshaxtiYDVEdAY3n37mlVqLGFsOVaNUntU2XPbvkZ1gCRCIXLwVUm9/dtuRWOsv/5EfztLrY/LFFSxEh9i2ZvHrTvOwu3Py7d9sSyDms00mqel3v6BtZm3zGCz4zPGFzQkc85ljPn1MjWR34bGW8xn7RPrUf3QA2F3fqWU/eDmwxmWrFlYraXd8p1hOthSyxbBT65RNDZ6CibfcvCzn6USwtMdYBJYTgSnNQhmIWXNcoRC6evTJx28h8oeMtZDIaBaCsRaKCXR0njOR3WqsWtte9FaDoPVMDFcNMWy2GtbrE5EyyAQondI+ZBUo41ImwI2AtBEINibS6bN7Nm17tlcn6Tcsh6SN0RBsvOFyfpXs2ItCwBGQeNU5ALHZFjZ2seqjRaj/9FDLLFpOWGgniMxr0sfKpkTaVEOExDW72pKm2g8OHFfxYyH7YjcmW64wGWSQt2tUVYbg1vccXsjwa74vy+Ngi2uAN167fX/bxBVMRiB62ezyeCFg/n1HwT+U74gfX0Ncdaddq//k0KqWrVnzF4/d4JIgEMYVIlc4cRAcl4khqsnhQz8tFwoPA8IIkLEYNlzIclw4kAMpiglQ5Uikt74arYUM3qoghrzQ5gxl1jWsx1TMK8sEkmqUyoN+QBrgZJSAHNJAemDThalM/y52KRtyyDWUrYTNknxp7CAWAYuARcAiYBFYiwg0S9NIlqtiUugiFPNjewujw/cC4iiTQiNNQ+xCBlP6jlAW3IQqR6qyupp0C2eew1VFDNlqeMcdIMJqKImKilVJp0hjhusoG5eyIYd6IyAOAMFA3+C257nx9FZDDL2gVF7oUrbJKGvxK233ZBGwCFgELAIWgRND4LhkE4Eg3YAYepXC4fGhQz8ChFEgGgUhDClkFzKTQhSUj6EoluOyGlY5Yd3Ca6+9lhBxaTPqTmxr8z5q1RDDZqvhE0/0CoAht17X0bpTj6MOXMoaqTfIUqYBMpZDGCCgDZu2n3EZilhPmIwSSNjwI3At22YRsAhYBCwCFgGLwPpGICSFLGQ9JU3jIpCuTg4feOJ2BDwGBKM4ZSnEY4Jwgl3IJEQx4kcqkYioAQx6Z5wxoVdDlZNWZ3zVEcPQango/jMZJqI4lUqijpRiq6EA7ENS/YS4URMMIMIGgXLjhlNOfyGim2bLoe9r0MrovNpM5fV9H7C7twhYBCwCFgGLQFDYiAmh0SsEcBxhLIVEXuHYwSd/oEmNEMExgTCKxHGFckwDjbO1MEJY9OPxcphwsq3yLLVarYV8KawqYhhaDcNElHS6Lg9VhiPsUq4BJEGrtEbq0UwONW3gOEO2GgLABkS5aeMppz2P0E0at3KYqWzJob0lWAQsAhYBi4BFYN0iMJMUcgYyk0IkrzRycP+PiBSXYzLWQo4vJIHHBNdCJpwEIQtRgFLoQi4UImo1iVmveothuIHmRJRYrOooJSM1WYnXq5BE6WWkgh5F0I8C+pkcamJiCBuk42wa2Hb6czXJeDM5tG7ldXs/sBu3CFgELAIWgXWMwPHu40CWhkmhQFUZPfTkj5XvDzcshccMKdQwJhHGlIRJUm4+EoNSVMUrUqp6tRrzV1Ppu3anfdVZDJuthpyIErqUAfIRz/HiSJQiJTIcbygI+zSofkAxwIkpBNTvOpFNvVtOuwRRNiyHAGQTUtbxbcFu3SJgEbAIWATWIwLNiSbIiSbsQjbuY1WaOLL/Ls+vDyPgGCeYAOlRAXJMs4g14QRKnSfEouu7FYBMnTULV7sLObwGViUxnEkOOUt5yBt3qUpRVavFBegUCciS4phD3QcIG4zVEKAfAPqFkP19W7ZfImUsw/GGiuMN2bXMJWs5IYX/2aSU9XifsHu2CFgELAIWgTWOgCGEHEnH8YSiUQO5EVeoVDU/fuTAXVqrMQAYI4AxgcaNfEyDGEeJk6ghp0EUZTRawRjWBt0+D+A0fzXHFTaf8lVLDENyeM011wjOUo5EJpxRXXQ53tCTfhyUk65rPyM55pBEH4LqD8ghMjnsA8DevsHtu51Iot+UzFNB3KERwDZZKTZjeY3fG+z2LAIWAYuARWCdIWDiCYEJIZqEE3YdhxnIfr08Nj50YA8ATQDAOAEZUkggxwTqccWJJsLJg/QLrnIqHFc4IFIeC1mv5izkmZfAqieGnIiyd+9efPBBkBxvCFBxazWKeYLFr1njUGU0il4C6gWCfgLdP00OoSe7YfN58XTPFt8DNARRB8TQxh2us7uF3a5FwCJgEbAIrGkEjosnFGishUFVE6BKceJIbnT4AQCYDEkhghgDFq8GnBCkJ1DIPKEoulqVo1GsAsS9MK5w165dtBo1C1ud8FVNDJtdys3kkJNRPK8e80Q9YWIOWQBbUM80OaQ+disTANdZ7olnek7N9m8+Syt0fJOtTMDl86xreU3fI+zmLAIWAYuARWAdIDDTdcxl7thK6BhrIfm5saOPVPKTTwHiJAJMsPsYAcdDUog6ELA2MYU6UnbdSLU52WQtkUK+HFY9MWwmh2EySuKwcojciB/xY6qugoSUJnKIoPuIsA8ReklTLyD0OG50oGfTKecJEUkqFegcGkmbUAS7IYi9Dr5DdosWAYuARcAiYBFYEwiEUjT8zBqFgeuYnwVoXS9NDh98wPdqo0AwiQIniGACkcaJ4wkBJ5pJoYzIilN3qohevbxV+msl2WRNuZKbN8MSNs3i183k0Kt5CQmYDMihypJm66HoQ6ReAOolwF4k6AGkTGZg81mxZN+g9kmYuEN2K2vOXGZBbBt7uCbuFHYTFgGLgEXAIrCmEZiKJUQEthDyg+ses6VQOKirpfGh/OjRR4AwTwiTaOIKmRjiBIIeR8FJJjLHlkIFVHKjbnk9kMI1YzEMr+5O5JAthwIgyTGHJDBDGoxrmbiMHgjjUgagLABmIpH4xvTA5rOEE00oP8hYDlzLYRk9SxDX9B3Fbs4iYBGwCFgEViUCISHksnbGSshJJmHmsQOg/Vq5MHr0kXq9MgJAeQDMsQuZQE+gIYU4gQImUVOeYwo1QGm9WArDE74mXMnzsRxqTVFf+oYceqTSoHUGELJE0COgQRKN1RCzAJBBgFSqd8OZiXT/ZiJ0piulNCyIxsVsCeKqvHPYRVsELAIWAYvAmkJgJiE0ZNDUPA7cx4jklwtjR4sTxx4ngCIA5IEoh8ZaiBMaYJJfA0EOhMi7KAtMCh3lVITA2lp3HzdfDGuSGPIGZ7qVhUi4vl+I+o4b9z0vIYBSIESGSGUIoAcImBD2MFFklzJbDhEoLYSTSfdvPCOayPZrBcK4lk2d5YAgsu4hP4XCh1b/cE3da+xmLAIWAYuARaBLEQjJoKlx3PCBhoQQmRAa1zHoWjk3VhgbeUJrP0+ABWMpJMwbIshZyAg5NMRQ5kHrvAYsOq5bdnyv4jjpmtZlb2ZMoZkOcU0qHq85YhhwNDL7akUOtS5HfF/HfCkSCrwkkkwDqQygyACpLCGTRMwCQgaILYeUBoCk60Z7k32bTnNjqQwpEpyxbCqmNAgiE8JQ4qaJJ3bp18kuyyJgEbAIWAQsAqsTgWnroCFnxmU8RQgbMjQoUXvVYr40Przf82qsS1gypBDZUgh5QMohMSmUOSCdB2QpGlWQ4JYcpcuOI6pCJOrrjRQ2+PXqvDDmWvVMcjg6uleEOoc57UZAQdQVftz3IMlZyyB1WhOliUkhsZuZXcqYQTLEME1AKURMSDeSTfYMnBKLp3o0oTSxhyZ7edrF3CCnx1VPsZbEuc6Y/dwiYBGwCFgELAKzEZiyDBorXUAGA4vdNCHkpJKAHJKqVoqTpcnRg8qr54iojIDsOi4QhtZCygGKPCLlBL+nBH9WdFwoedqpgIRaVnj1UKdwYGCXDquarGVLYYj8mrQYNl9WzQkpTA4zGZDjouagV4qQJ6LkU0yiSPhsPQRIKRJpQwaZHBJmGm7lNAGk+HMASgJhQkiZSGb7t0VTmV5EN8qJKSY5hS2JobQNu5kJgI3NYZk9LsPDr61V0d7+LAIWAYuARcAicDwCU9bAxu/KUIOQ/YAsN2Mq2TXIoSGCxkLI9Y29Wq2Ynyjlxg5ppcqAVAbAEscTookppAK7jwEpz6SQSaJEXeDPHXBLinQZHayiq2vkJut9Ourn86CaSeFadR3PvAbXPDFsWO+MlA2LYHP5vHS6LkdHS44QZZeoGlEuxZTvxDX6CQGYBKKUVpACweRQpNmdrANiaNzK/CCiBCLEgSAWjad6Y+nsxkg8nQZCx2gfNlzNTAHN66AIs7Ei8nsBWTSrAwrlJBtmRVPD0TaLgEXAImARsAisUQRCA4lheYbvmd+M5rcfk0DDAUMiyO+z5Ay/F2YZm8PIr1cLhWohN1KrFCcAoUoEFUQss+s4cB9DQQAUAzeyLoAWeSGhCIhFDVQS5JSl41ekh1XEWF3rhDcwkPQLhYjiMndrTbx6PpfTumEgoeUwJIe5jQcFax26rnZC1zIpHXOFiitUCaEwqQCMFVEDpQNrIaQalsMk8WcECUCKE0EMEGIAIhpPpvojiXTWicRTUkYiPG9gRZwZg9hkNeTP+IvQCGO1buf5XLq2j0XAImARsAisVgRCy+DU776GJdCQxGZXcWAyNOXr2GKnVL3u1yvFermQq5SKYwC6BgRVRKgCYYUQyhgQwlJgKWRSCEUBaKyDEqCkJZUkybKnZQWlqIauY88TPieZZEdO0euVFAYkfR21VnGHoWvZmay5ADKiI9WoVhTTii2IylgQNUISlTIkkRD5OUmASURKEJNDgDgBGeshIEYBKIKAEek4iWg82+vGYknpRGPScSP8946xIjb+N8uC2CCJDWPiOjo7dqsWAYuARcAisOYRaLAOYwhpWAaPtxA2kkmCX4Ja+V5d+bWqV62WapXchPL9MgHVAbAORDW2EiJgBYAthVAmwjICBcSQzHORpCwJglJgIZRlIfn13nkAAAgESURBVP2KkFgV9VgNQNX9nqjXynXcIKlrMvO403W2roihucyaMpabXcvj40ckWw8LEHdRVyMce6g1xUBSTPgioYVOEGKCCSKhSDA5BKQEEiYImCBSPLAamkcUqEEQEV0A4IcDBI4bj6ccNxaXTiQqHCcihOMK6ThsKEchkFvw5xIbzs2K1/x9wm7QImARsAhYBNYDAiHlIM2/jE3TQeqmVr6vte9p368rv17zvWrFq1SKgOADmIdHRJ4hhEg1AOBHNbAWYgUBy8RxhYTlgBTqMhNCJCoLLcra0WVQWBUCqxxLSCJWT0PFYythX98WNdN1vF5J4bqzGDZ/7dpZD/N5kBx7iOi5ZZAR0LUok0PSEJNKxklQnFAnhBZxjTpBnIgSuJMDYsgEETAKBFEQEAUNEQCIEICLCA4BOFyukYAkPwOhICRTsAdNsCFxkMWUUZ1zV9bD7cLu0SJgEbAIWATWNgL8C65h8DD5mBxARSa4kDQSakAWgQOFgCp4Bp8IfATwAKAOAuqgga2ENQC2FmKl4UauaMIKIpUFibIWuoIkyqixoqSqoIAqk0IQ0VoCVJ3I9TiWMJMBNTPBZD0TwvDqW9eko5X1kGMPsyOOzDm+Ey1qB9F3KyAjCH6ECSJbAg1JZIKoIUYk4lNxhgQxJonGYmjIoY6CQM5Ydtm1DAiuIYYEDiEwMXQASBChwAY5ZGJIhiBOReSu63O0tm+TdncWAYuARWAdITCVcUKEhhCaNExNhBpNND4yMfSRQBEaQugDgceuYyHQA81kUASkEKDGZNC4khvxhYjakEClMSCDbFlUWCVw6nFDCB2vlhJ+1nf83EZfzYwltKQwuBYt6WghiF0oHEHOXGb3cjku5UyCiCAixlUs/ahJPOHXFJBGEPwzE0PdIIdMCClCQC4ARpgMEoFjrIdMDommrIZB3pWxFwZu5Ea6srUarqMbp92qRcAiYBFYgwhMWQuD9GP+/WZqh7EbecpaiKgMKWQrIYLPJBGA6gjoARkXcj0ghSKwGuoG+UM0JNAQROXU+DWBrs8khImKUqHbOJ3eQutJm3Ahl5Qlhk1ohZnL/NYdd4Bg3cOBgaRoJohSklNF30VyIojKRZKROnnRKbIIOsLEEIE40SSCoCMKRASBXERytZ4ihQ4SF+1hyyFK405mt7LJT+YMlaB6C7FA08zW+GwhJ9r2tQhYBCwCFgGLwIoh0KJcHLLYLwCweTBQpeEAqoAYBsVm2VJITA6NC1kIfkaPAD1piJ5gYlgnE2fI7mRh4g2ZBEbQrRGyVVB6hH49Ro6nFPpsIQwJ4ehoSYe6hLyOa6+9ltaLNuFCzrslhjPQmuleHh3dhSFBLBTGRDGGMpJXTsXRjiu0gxXl+pJdwiIiQLs+ajd4zRZCHVFKuCEpDN3IGsARhFIjP2tBiJLYWsj/E1oQMRkMiKG16i7kcrZ9LQIWAYuARaCLEWjEGCIhatJaaBYwRGM1JKWRfwGCr5GU4PjChjt5ihxK7TEZ1GxBBF13SHgaRPBagU9x6XmaS5oJv56RfqpKKp3u1yEhHBjYS6EuofnlukZrHS/2/Fti2AbBZoIYWhDZxcwxiAOTKcFJKrHYhKxWpWQrYk2SI2vkMEkUghwftCt8cJRgC6E0r7Xgz5TUip9BEglBqKVgSyGRINZ1R/5eBKRQmvyUoIXvLfaE2+MtAhYBi4BFwCKwkggYy2CjKZNXYmKmCEhoBM1WO62N5VAolirUBEoIUlpLJTT42mHLofJk47UDwtMafSaDKop+VKHP1sFYTKlqtVdxUsloT1FzDGHoMuY52UJoCeHcZ94Sw7kxmiVx08qKmKqWBZPEWkRItiR6npCurEnPA8eRKJVC6QghFV/bEqVQKEka66CQmp8lmp/NH08BIQzJabhEZ9qKOI9V2y4WAYuARcAiYBE4uQj4TaTwOFKGnF+ChEpoREVK8LPW/LOWpIQiJaWrfK2VlKR8Rcp1wfdUVLmuVmwZjNa1YjJYjCW0tQ4u3Xm2xHABWLZyM7MVsVqdQI5FZFdztRoTtVRRxMtCevGqiFSlVMoRnlM1zxHXF1o5QmlfuI4UWvuCyEWt2baozflwyUWi4HXYZpLEBSzbdrUIWAQsAhYBi8BJQ2CmyxZRkMehg9x8YcwjiB4J4WjPV1oKRwvp67rnaCl97foxxc/1mFJuJaYrCa2ixZSOxao6dBXHYr3E1kHrLl78abbE8AQxnEkSeRiuw8wksba9iOxurterGBLFVC0qlPKQyaLvRURCKSaDqKKO0MaIzpJNAJqiU6/DpUX18STxBJdsD7MIWAQsAhYBi8BJQaAmTNGvqYZCksBa4Nrl10KQrPlaCElljs9y65pJoJQuFaM1HRLBSCRG7CaOHkgRk0EuXcdj2NjBpTutlhguAZYz4xG5ogq7m0NrIhPFbZVNWKuVkMmi59VQqSz6PTVUvodZ30OlUuZcMHlsXpLWLOVkm0XAImARsAhYBFY3AkJwjYfpxqSPf5KySDnHJem45ExGScocuW6UmARGo0k6FB+mkAg2WwX5WBs3uPTXhCUdS4/pcbGB119/vcE4JIv8OiSM/JpJIz8zcQyXwgRyGZZlh7QIWAQsAhYBi0BXIMCEL1wIEz9+zeSPn0O3ML8OXcPNJJBf24zi5TuNloAsH7bHjTwzRjAkjGEnJo6dlsIWyBVaqp3GImARsAhYBCwCS4YAk7tOg7EbuPnz0AoYvmdJ4JKdinkN9P8BUWW4r9JRNsEAAAAASUVORK5CYII=",ln="data:image/png;base64,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",Gn="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIgAAAAoCAYAAAAlprK8AAAAAXNSR0IArs4c6QAAGctJREFUeF61XGlwVtd5fu63SALJWEKAWSTMJvZNoGCMY0MwTpwYN864cQDZiZM6mUk6kzSTTjptf7Q/Mm0zza/GSdNOphM7GBpsY9dO7WkC2C612Q2IxYAQO0gskhBo+7Z7O2d5z3nP+e6nICfRjC3xfXc595znPO/zPuc9N7i14x/bgMS0KMwDUQFRWAAiQP4vEL/EP+QfQCB+s58gkN+I7yNECGK+V18H6pqBuZI6Tx7vX1Nf37mWPoYfau6tjpeXp3P0b91qar36XjRFPgq7mDmQ7lOiTRDP6z2rehBqgWqMaYdpmNtv+hTVBnUv6mXdnfJz223invpI3n5zbz4m1B72mx7H6X99b/Od+DIh7tkdRNHBMMx/s2LON04FPW//zd9FqYq/RyEHhDkJEAWSSHeFfmbdBmcgnM4gsGh80YDRk/ng4efqv2nQJD55t8uBNT3jdLY4x3ZeEQLtsQ4gPACY+1uw+wNEEFCHqnsqwNtrFbWf2uYPpDlFt9eiwp0vBiECLAqYzh35dVlbTP/RvDT9x1BGPaNBqiZPAkikFFASqd6okF0adL/2F9XJipFXCvnsiCifgWCSQIAkKtjOJRbhaDPfUuMtGdjn57NUH8eIyD6IO2CyM4ghxN8CrEMNcInv+ICpQ2IYQncstYUA4DABAxCf6eoc9Vz8J0gQaD12kMeJDkjw6eYyDgMLtdmws+wLj/04Yfjt0Yxp2Vu3SzfX9n9CtSlIAokkgkQaSKSRSATb5KHdr3/nlSgKn4zyg0A+i0gziXycKDS06nSGZCg+e4gmXVD4HW1nPJs9cezisZPFox1kSyp8JpqpwSIjm/FsVvJQoEKHjYZ66L3QaidDEeA4K8QxoDNjNVbNc3tM4kc4YiweRileE3iL2s+4jV+Pwq9hFX3vRFKHmBSQLJP/JRLlXQogW7++MgwT7yI3iFCARISbKA+EodIWfNr4g8ke0va9DglsrBjXsz89MLEw4s5+73qss4l6ZXdYqaNBzcIA1wWkI+Q5BDhF3iaE0mzX140HkIKRPcc+sAlDNKgxAJL3NrdXbSG24CHNTkxLv3GhXt6TDvFZtUSIV+cECBIivAiQpBGkyhAkKoBkuQ2gnVu+dizKZeZG+QGIUIMwL7WIbLIMMWp6WZEmKIk+ZmGA0aB6WEGn/vm+SHTjOD28DC2i4VzEsXuaz02s5xpEHcgHSrafpExCUqClfOpZDgxiMaYQDSBNmCAmVSPjA4nGxQ6obZcBtD+wRGW6/0z4kxhigDRMpRmSC1u6pnxOPieLz1fhJZD6I5FMIwrKEKQqgNQIC5Cbv/rqX+Zyg/8c5QYAoUUKAiSh1CKKrOwgO5LbiBxPnPIQweiQh5jimUcghNEg/kyxApF1tBlIPX2oT6jZEhi8YxglMsot0kRGMxCY+AB5mZOlAsNKLiPRaBrlKPvUZDKG/WJCtDfwelqaSUtiWYpYDVI1O9g9Kd9kLOX0rWAPJIGkYJByIFmBRGokY5CNzaOiAO1Rtm+k0CKKRYRYzetsVz2M0dEOhdngTakkMY757YUpJ4RwMNFgamHqPEQQoK8/g81vH8a42iqsXTUXCR1LLRbccNR9qx+v/aYFkyeNxiMPzDY6w03ZGdVrwDshkQNFz+6hBLAJtUXpd3wIsgOsmdUBpgalFqdcsLpttGxuwx4HCBNYmoksA2sGESJVaI9kOSLBHknGIOLgGy8981KU69tgWESKVeGPhPFZhKc/qMEiQVb9XBw6FMLjfQv/eB5CKDa89+E5HD7ZgRn1tXhs5Syr6mO0kRjE9/a14eDxy1gwcyIeXtFgZ50DSps8ivEXyovyWKsJ3NRWhL5LV7qw+8AZh8LNPzyhyfPXFctnor6u1ptwfMoD/7PtEK5c6SLeLrKg3Ju6Nxs/vgaPPX6f1keapRhqrVax+ktmMDLNTSMQ2kMAhDOIuGHXlmc+GWazO6NsP0IZanKIohyCUHRTyFI6onKmCknM6YHyZ76ZO55vERdCpFiLYZC+gRxeePMg8oUQI8rTKCsTtFj8I7770ucWy+N+/vIeZLJ5jKgoQ1naO571a9OCyVgwe5IctN+8dxzHWtvjB15/+sRnG5HNFvDW9pYhj4v78rHPLMHsWRMVQAwzaEGtGezlre/j/PnrSKWSiiXv4CeMIuTzBdTXj8W6DauKjEM1J1wN4mgjzSAUYoIkCzF0/85N64+EmYH5KsyIjEYxiNQinH4ZDXKzyhdj2jJVppIHHuNvMCZyhK+T1gG/3nkKZy51yYFOpxLoHxQABirK00iStQCgvDyNZ/5kKd4/eA77j1xEOpVEWTqBTLYgQVOWSiLtgeW+xnuxaE69nLE7955G69lrsksKYYi+/qycXHdVVphh+vTK+egbyOLt7S1YOLceqx6YY0hiz4Ez2HPgNJYtmY77l80gnseOncdx5NgFCIDMmTVJGV86pPrh4uWtH0iAbFj3ECZOrHX6Tx7rMwKAqx038eKL21BfNxbrn/6Uy5aeYI+VC8IkE/8ly5FIjQDiAfKV74X5vh8JFpEAEdlMIY9AQl17eb9jQN1UizIFN9yYhzSZhElPWF+RuRZh//Er2NVyERXlKaz/7EI5WO/tP4vDJ9uxYOZ4rL5vhmOoXevqw6/eOiQHYf3aRoyrvQtnLnTijR3HUFtdiQ2fb0Iy6YtPX2cB17v6sPHV3birshzPNT+km61m4cnTHZJBFs+vx+qH5lHcxK59p7FrXyvua5qBTy6faVhi23tHcfjIeTz26BLMnjnRMDKFMdlvIuuIgJdf4wAZ7WRjXNhSJiayxfaOLvzyxe0SIOuaP2XDvB0QCxqSXSbNFzMsIUUqEmUI0iMRzyAbm0cFQXSlkO2rFFoklGI1pwDCMxk/hfRCTOy6TYnQYRZpSlBg+/VbeHXHR7Kj166chWl1tXIpIJsP8cIbH2JgMIc//fQCTLrnbmTzBXTe7MeuQ+dxsf0mls6rwyebphn2emP7UZy52Inli6fg/iVTTYwnpjOuqMRrgOudt7Fx6x4JkK8//ZAR6UUAeXCuySA+0ABZ3jQDK+6baWb/tnddgHBGJWuf+s0yyIOSQZT4Zz6HbB6jzQDo6LiJX/oMoiCtmcpqPwNGMx1VmhuINDdRVppBxPE3Xmp+KcoNOGJVZTQkVskuVomhQG/ELAg/1vmmEdcdRVrFz3ZUMoiDJ9oxmM1jxeLJziw+evoqjrddwyfm1WHa5FocaW3Hjt1tmFZfi5lTxmLa5DEyvFAK29uXxd6WC5jXMB7jx45S3aM9EW5OUZtvCAbZahmE+yAnWtslg8xumID7m2aYEHOw5TwOHb2AhfMno2nRFJNvfrD3FMQ5NsTQhDbTWT6teN5XNIM0NExEVZUNbXY8i3XJQH8GJ05cUiGm+VMxBp5NHIqMPAEiCjFDMYhogBSrmezOKNePSLqrGQQoSF+ErU2ZB5drD5rGzAzkVjDFzBiGsKGGQrXnb+hzO28OIB8KgFKCwUIWs5nDMMLr244hVyjgC48sNELWibl8aRlAKpVCbfVIM8ssowkG6Y0BiJIAJ1pViBnujxKpk+xYy/6jpE+BhRhkuNcWx1sNwrKUGB9EHOtoRl+D+FkMb4wQqwUhVnMDCMIswnxWu6rxKS9Xx/ZhNWKNfVnsbrrxtNj5JDb6xRsHcasv83H663eeM+quCvzZUytMZ6k5rHSGzyCK2dWAnjjdIUVqbU0VJo6vJjrAtes9uHr9FsaNGYV7xt1tHNvLHd3o6urF2keXYJbUIMUzWvZHBNzs6UM2VzDhifpUtcwYBcwMs2yUSqcwuuYuw+p2OaFU/1O4SiJICSc1XVqDUG92bvrK96JC/4/CTJ90VsNCFkEUytgvUl6KifqWbj2IET5MeOrQYVM7Bh4+hGwVl9MpAWTRrPFIJ0XOTt9y59H9rMiw0idRFBMsc+j4ZQiAfO2L9xfb2EEpBlFilhhk8fzJWP2gyGJUW3bvb8MHe1shNMgDUoMosG0nkcrSXHoQ464b5mX1IHwV16sHMaGCLkDL/lpDKRBadnY9KGsQSuBpBhE+iLTZh2QQKVZxJZ+5XSnWZ1S9SF6v7prVAbbYpZFNIYBSVA4M087SGQvRHjEHUeAv3jyIW70ZPPfkJzCyIs2wcwf1ICyV5JpHpMn/vvl9BZCnVujxDXCrdxAfnVY+SG9/Fi3HL6G8LIWli+6VnyWDBJoapxoGkVnMg/OMEPZFKpmGvkglYcpp/sy5qzh46OzQrMcH35lc7mmNjdMxvUF5OzQxyW4oWlbQAIn0Un/JLIbf4samZzYiP9BMLCLKAIQnoiKXuYVTQEMDy+mT/nYcPDkT4nwAHWa8epAX3jwkQ4wASGVFGpvfbkEo28KnCJstQ3ZxgKc/3yR9FAuQ+83JV671YMubB0peIZVM4NtfX4OPWlWIUQwy1xy/+wBjEJHmqoQWlOaufXSpDjH6G1aAdLjlHLbtGL6uiWvs6jWNaPrETFvNF2OS2fESbCI8EOWDxDqp/k1uvfLs7Nzg4JEw05cSZQCRDDMkVnkJokuHbHrr8Su23Gl5Pg5IdD7XNa9uO47egSy+9Oh8VJSl8fzm3RDO4ZiakcWljj5o2IPd6O6V+uE7z65CJpfH5jcOoKqyAk891mjWaW73Z3HqzFV53d6+QRxouSAZZPnS6UYTLFkw2YSY0TVVmEQaBAGuXu/BtRtag4y921D85fZudHX3yizGOKkaPBQGBEB+u6MFc+fUYcWKObp7aLWWr4K7NSR8FXnXro9wpOUsJECaGpwlDwqDJBHMwqspGBJm2RA+iA+Szk0bXgmzg0/KMKMrzkTtqqpVHQIkzmKeu/7i05uhWCZmfdfV91We/8/dEBnLn6+/XxpeCnC26Ic6jBbC6Pyfbvw/6ZV8+9mVZqGP8BRXD3K9My7NVb1ERtnQ8aD4WwkQIVKlt0EcqNp/qOWsZJDGxVPx8OpFhiFVf6j+jsJIpuY2Y1R6jhj63XcOY9++Uw5AfLc7ltXvxEn1H6dry7MLwszAoTDbl5AlAAWxgCeMM9Eo8kGGUQ8SU88Qt6inHjauHkT1KAHkW+uWSyvdgswtFOb5vrjPv2qAfOertFahala47c+dzRvdrpPKfZDBbA63b2ecTEKATHggLccuYOG8eixeIHwQN50cNaoCFeVl8jxqN2Uph4+cw2+3t6BxkQDIQtU2Q6mKQX7x4nbc6unHU089CLEwZ59RMfmOHYexXwDk4UY0LZvpDClnZcv02nAjoyxII5EeGW+1x82Grs3NrxeyA5+Xq7yFLKJ8Tq55Sj2iBZPxJ/j6yVCWfGwllp4JokPjVn2Zj0IAERnNHa5lyUcT7CF+RIjhK87FxpFqC3dShdVuO7h0Pciu/W3YpbMY4aQqOicyGLoepEWHGAmQhzmD2Pv9+PlfY3Awi29+8zFUVY3Qto0uag4CvLujmEGoARbgXuGQdGXFcv8wNAiBpXNL89wwm9uP7MAIab3LkkQRZlTaK5lEI6SoM8RFeL6p/+2EEDqGfRe3mktL/uI3aZDp9aNVLeUQOwyK7g9g7ep5bC6UqAcJACfEPP2QWW9xQ6BsuI4VAXbvP23SXAMQdojKXqyu4PUgLYJBRIhhAOHivn8gg5/89L/lKu93v/uECUF8kfOdWIC441AUwmUjdMEQpblxi3Wl4mnXpme+H+b6fyhLEgWLCJAIFhHuqvV7NJ3+8epBVNwWANklNQiFmKHWfig+W0r10mzyDig3MyvPxQwi+vGaMMHG3o1DRy+ifyDrucvApfZuXL7ShYkTalA/qdYsaJPaGFlZgcaF98bWgxxuOWsAsubhRXpbku5PAG1nOrD1tV1yfaa5eZUBJa/JFQCRIWZNI5Y2NRjPyhjIfnW8XLOkqnYlUmWIGcoHiQPKjY3r34nyg6uEBa9qVlVhswSKniHFyHTRw8WSFZXeSm/JRT17LQoxq5ZNlb6EI3xLxRzPP5hSNwZ3VZU5s99vP4UY4b0sa5yGIycvoadnQKa5L2x5H51dfaXmVMnPx44ZhS9v0OHKqweRDEIaRIcY7mHseKcFH37YhvuWzcJDK+cbgNDNxLElGSRmqcOx2qkeRFS1y4qymHqQoZ62a8szk6NM5nCYG6hWLJKVoYYKm83WHqduhJDz+9eDcJagEDPs0WEnPLFmAaZMHqNnsrXXRSeLOpCrN26j7dx17G8575DPlPox+MLnlqL1bAcGM3k3jQRw5ux1tJ27iqlTxqFh2j1FYUAULzVMnxBbD0JprhKpixyPKZ8P8bOfvYXBTA7r1q1Efd0Ya8XrdFksmjoaRPgg1AJv+wT5M6ZfP04W4w9A5+bmLyGffSnMDSQjsYcmEg4rAwnfAGeA4m7bNOlZ3Pd+euxvnNIsQAB5cs18JHSaS2soTsxj6SE9y/sHzuLy1R488cgCiMFWIdJuOfjtzhP46HQHCgUy4oAxNZWYM2siZs+YIGtRirImXcchOrtUPYgjVDXlOqIxAlqO8iyGAKKs/f/deRx79p5ETXUVnnvuMxB65HRbOxoaJmDkiBFmuePgoTacOnkZS5ZMR8Osetpr6jCldfQp3N5hPcidzMiuTeu/FeYzz0f5TCCZhIUadbsS+3g/Zj2IwgzfwxLg+U27pFGmfBCVpjkCmXpAr1Fwz0AUDZ25cANPPLIQU+prTXgk8Sgqyg4du4hJE2owta5WHlNTU8W0rp8BmCkq/ZhS9SBU3OOYVcaTVjqjUIiQy+eRTKWcqjfpsG4/JDXJ42uXYfbsOrz+X3vQ2npZ+jn1947FzFl1mDmzDpUjyz1W+wPXg9wRSDZv+KtCduCfRPV7EOYRSm9ElCaqzMYkLmzLgZ2pxeHGzPqYehBHgGqGIQZZ99lFavFOY8iJBeqGRSUK7+xpxaX2m5AhRgDEqwcRFJ5OpyTwBLD8FJjv91H40z6CnoyKQU6bijKnAbr9RWm10UeaB/W1zp2/jgMH23D27FX5aI2Lp+HhNYtlm3p6+mT9x8mTl3D16k3VBYkAU6bcg6VLGjB1+gRv0hSvHpuJNZx6kDsBiDima9P6fyjkMn+NMAMVbgpmxVelv5pNaKBiRJITDrzjigab+yDaar/TtsYdp0KMqNZSRpnKdoitPMR5A/svP99W8taC2YTbKQarVMFxdXUlntVZiDiuvz+Dvr4MbvcNorPrNtrbb+Jyeyf6egflfUTd7YoH5mDpEl3jykKxAEv3zV4JlqNHzqG7u1eeU11ThSVLGrBg0VSUC2POC6U0OopdWcEQ1aQON4uJ65GuTeu/HxWyPwjzmbRMfcUrJAqiwFl7JNTPrEik2JRyfQjrHOpiAs99Fef/WIeY2VPH6lke81oHn1W0CLjY3o3bfRnFIJO5BmFaxN+GydufCPDjn28fPjZZZUL13SPx5Q0rlXUeAf/xwg5ZA8J/kqkEJtwzWhYXzZ03Wa4HqS0lxvUxRiUvfzjVegn79pzClSud8nL19eNUEXMp9lLUI42yO64HGc7T39y0fnWhkN0cFXLjlCYRJppwLMX+Er1mo615a/oQ/bNe0wyiJjH7nP5mn4nFO7Ga++SaBXIthi/j+x3h1EAEwHt723C5owerls/ApHuqZWGNkk3x1+Gdz0UlrzzjussR4VoDOfUeRFIs2zty/AJOn+lAzahK3F1diTG1ozBx0mgT5syu/mHUg1y6dAP79p7CAw/Ow7hx1Yoh/Soy3c3DrgcZDkDEsZ2b19UjjLZGhUxTqGtHJEhEJhCINwTo5X0+9jEZCwtK7oBJUcP24+gG+r4KL7bi7masP8OByMKLeQ8H2w5ZrEO0bmYOKr+HpXON9TjAF22p9PSSFXImy6IaEhecpOFNisDCiQI+91KKGVwhVhQMDaseZLggif7tG+muqlt/iyj3vTCfq1JvCFBFRuaFNCbBEZvCBXhi3q8hZnLc+0EYRfpAMv9m13NBweKNM1iWOfh6he5h2wW08ZuyJSf7cFnQvB9E38f1G/TioLxycT0IAcv+tuk3hSOTrZGgd4xB1p8k0PVxPkO6q+ofox5kuACh4/tfba4bHMj+MIrCdWEhm6B1G/WuEQUMvhrs3MeJLHE70a1NbknF3Y9rBtcLHVRNZQo/TOhSBT0UBvQatY31ZgCG+X6QoVau+U59Y0pQ7DH06DABB49lEEXJ8e13r8NBr0DG35fhWu13VFH2cQFC53VufnpFEGZ/EEX5VVFYCOTrJKJQVYLJLRRqD6xK7GgxyWUVp1bEb5BJQZULaq17O+B+PQgtjBhTLRYkWtWz6ndeK2JnnhpQxzRTo2D63gyqAb6nrQjvpv3KFONhgPwZrnMczaX7rkjfUX/xtxuwWkBib7VHRr8fRO7NLZM2O1IVVn79vmAY6vyeVzY0FHL5b0Rh2ByFhQnqlRICGVQErbvc8U+UZnHeD2KVnimWMfUU3ChjXorT0SXeDzJUPQjtdLNlDUT5fNOSoSrnJTT8xX7Omgdrq18P4hSX3On7QYyFHlPoPKz3g9jXT4mSQ/i7+/+YIJERd8sXkz2Fsi+EQf7xKIyWIyo0ROL1NgwsasZHSoPoTfbcBSVW9N1IXgpgMiAr2b0MxUGQeuwSItLOWj/lLl0PYtrGMwYiDiY85ZYwymT4+0H4sR4j2b6woVZzll3bMcKZhxjefrbFlJ5bMIh405DYeilfQSXeD+K9/uGPDRD/+re2frm2UMivRCF6IEI4LQiimjAKahMBasIoGo0II3T/2EFkhc7cL2FYsGsOFNK9XfRqTLiwLF0PYi1+W/NiwpZTg+JpI1o8Y6K2OF2mAeQayHd+tYj+A78fxH9+pUno9Q9if67Y+lCB/wc69/M4zswLhAAAAABJRU5ErkJggg==",Wn=Be(6848),qt=Be(38446),xt=Be(93083),ft=Be(92736),Ot={token:{colorPrimary:"#1B8565",colorInfo:"#1B8565",colorLink:"#1B8565",borderRadius:2,fontSizeLG:14},components:{Radio:{radioSize:16,dotSize:6},Modal:{titleFontSize:16,titleColor:"#000"}}},ut=Be(59301),nn=({children:b,prefixCls:x="knowledgeGraph"})=>document.documentElement.style.fontSize!==""?ut.createElement(xt.StyleProvider,{transformers:[(0,xt.px2remTransformer)({rootValue:1})]},ut.createElement(ft.ZP,{prefixCls:x,theme:Ot},b)):ut.createElement(ut.Fragment,null,b),Pt=Be(59301),Vt=(b,x,E)=>new Promise((z,te)=>{var re=ce=>{try{le(E.next(ce))}catch(ge){te(ge)}},oe=ce=>{try{le(E.throw(ce))}catch(ge){te(ge)}},le=ce=>ce.done?z(ce.value):Promise.resolve(ce.value).then(re,oe);le((E=E.apply(b,x)).next())}),$t=({})=>{var b;const[x,E]=(0,Ge.useState)(!0),[z,te]=(0,Ge.useState)({}),re=(0,ke.useSelector)(ce=>ce),{pathsDetail:{detail:oe}}=re;(0,Ge.useEffect)(()=>{oe!=null&&oe.id&&le()},[oe==null?void 0:oe.id]);const le=()=>Vt(void 0,null,function*(){te(oe),E(!1)});return Pt.createElement(nn,null,Pt.createElement("div",{className:Dn.information},x&&Pt.createElement(ye.Z,{style:{width:"100%",marginTop:"300rem"},spinning:!0}),!x&&Pt.createElement("div",{className:Dn.body},Pt.createElement("div",{className:Dn.left},Pt.createElement("div",{className:Dn.box,style:{marginBottom:"20rem"}},Pt.createElement("img",{className:Dn.imgTitle,src:Rn,style:{width:"453rem"}}),Pt.createElement(pe.Z,{value:(z==null?void 0:z.description)||""})),!!(z!=null&&z.learning_notes)&&Pt.createElement("div",{className:Dn.box},Pt.createElement("img",{className:Dn.imgTitle,src:ln,style:{width:"453rem"}}),Pt.createElement(pe.Z,{value:(z==null?void 0:z.learning_notes)||""}))),Pt.createElement("div",{className:Dn.right},Pt.createElement("img",{className:Dn.imgTitle,src:Zn,style:{width:"323rem"}}),Pt.createElement("div",{className:Dn.listWarp},(b=z==null?void 0:z.subject_members)==null?void 0:b.map(ce=>Pt.createElement("div",{key:ce==null?void 0:ce.login,className:Dn.li},Pt.createElement("img",{src:`${qt.Z.IMG_SERVER}/images/${ce==null?void 0:ce.avatar}`}),(ce==null?void 0:ce.role)===1&&Pt.createElement("img",{src:Gn,style:{width:"68rem",position:"absolute",right:"-1rem",top:"-1rem"}}),Pt.createElement("div",null,Pt.createElement(Wn.Z,{title:ce==null?void 0:ce.username},Pt.createElement("b",{className:"c-grey-333"},(0,Yt.Pq)(ce==null?void 0:ce.username,7))),Pt.createElement(Wn.Z,{title:ce==null?void 0:ce.school_name},Pt.createElement("span",{className:"c-grey-999"},(0,Yt.Pq)(ce==null?void 0:ce.school_name,7)))))))))))},Jt={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"},xn=Be(58421),Qn=Be(92310),rr=Be.n(Qn),Jn=Be(64726),mr={md:"md___NMHUA",dark:"dark___hYBxG"},Rr=Be(59301),Tn=Object.defineProperty,hr=Object.defineProperties,or=Object.getOwnPropertyDescriptors,yr=Object.getOwnPropertySymbols,ti=Object.prototype.hasOwnProperty,mi=Object.prototype.propertyIsEnumerable,di=(b,x,E)=>x in b?Tn(b,x,{enumerable:!0,configurable:!0,writable:!0,value:E}):b[x]=E,Pi=(b,x)=>{for(var E in x||(x={}))ti.call(x,E)&&di(b,E,x[E]);if(yr)for(var E of yr(x))mi.call(x,E)&&di(b,E,x[E]);return b},vo=(b,x)=>hr(b,or(x)),Co=(b,x)=>{var E={};for(var z in b)ti.call(b,z)&&x.indexOf(z)<0&&(E[z]=b[z]);if(b!=null&&yr)for(var z of yr(b))x.indexOf(z)<0&&mi.call(b,z)&&(E[z]=b[z]);return E},xo=b=>{var x=b,{value:E,onChange:z,theme:te}=x,re=Co(x,["value","onChange","theme"]);const oe={dark:mr.dark};return Rr.createElement(nn,{prefixCls:"md"},Rr.createElement("div",{className:rr()(mr.md,oe[te])},Rr.createElement(Jn.Z,vo(Pi({},re),{defaultValue:E,onChange:(le,ce)=>{console.log("a:",le,ce),ce!=null&&ce.length?z(le,ce):z(le)}}))))},ma={noData:"noData___Luxe1"},xa="data:image/png;base64,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",_i=Be(61485),ko=Be(59301),Rt=({style:b={},className:x,text:E="\u6682\u65E0\u6570\u636E",textColor:z="#666",buttonText:te,buttonTexttow:re,ontwoClick:oe,onClick:le})=>ko.createElement("div",{className:rr()(ma.noData,x),style:b},ko.createElement("img",{src:xa}),!!E&&ko.createElement("span",{style:{color:z}},E),ko.createElement("span",{style:{display:"flex"}},!!te&&ko.createElement("div",{onClick:le},te),!!re&&ko.createElement("div",{style:{marginLeft:"20rem",display:"flex",alignItems:"center",justifyContent:"center"},onClick:oe},re," ",ko.createElement(Wn.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"},ko.createElement(_i.Z,{style:{color:"#fff",marginLeft:5,marginTop:0}}))))),Kr=Be(59301),Bi=Object.defineProperty,_r=Object.getOwnPropertySymbols,pi=Object.prototype.hasOwnProperty,ii=Object.prototype.propertyIsEnumerable,zi=(b,x,E)=>x in b?Bi(b,x,{enumerable:!0,configurable:!0,writable:!0,value:E}):b[x]=E,Jr=(b,x)=>{for(var E in x||(x={}))pi.call(x,E)&&zi(b,E,x[E]);if(_r)for(var E of _r(x))ii.call(x,E)&&zi(b,E,x[E]);return b},Kt=(b,x,E)=>new Promise((z,te)=>{var re=ce=>{try{le(E.next(ce))}catch(ge){te(ge)}},oe=ce=>{try{le(E.throw(ce))}catch(ge){te(ge)}},le=ce=>ce.done?z(ce.value):Promise.resolve(ce.value).then(re,oe);le((E=E.apply(b,x)).next())});const Le=({type:b,onEnter:x})=>{const[E,z]=(0,Ge.useState)("");return Kr.createElement("div",{className:Jt.comment},Kr.createElement(xo,{theme:"dark",height:b===1?"264rem":"134rem",value:E,onChange:te=>z(te)}),Kr.createElement(we.ZP,{size:"large",shape:"round",onClick:()=>x(E,b),type:"primary",style:{width:"100rem",marginBottom:"12rem",float:"right"}},"\u53D1\u9001"),Kr.createElement("div",{style:{clear:"both"}}))};var De=({})=>{const b=(0,ke.useParams)(),[x,E]=(0,Ge.useState)(!0),[z,te]=(0,Ge.useState)({page:1}),[re,oe]=(0,Ge.useState)(0),[le,ce]=(0,Ge.useState)(!1),[ge,Ae]=(0,Ge.useState)([]);(0,Ge.useEffect)(()=>{Me(z)},[]);const Me=ot=>Kt(void 0,null,function*(){E(!0);const pt=yield(0,ie.ZP)(`/api/paths/${b==null?void 0:b.pathId}/discusses.json`,{method:"get",params:ot});pt!=null&&pt.comments&&(Ae(pt==null?void 0:pt.comments),oe(pt==null?void 0:pt.disscuss_count)),E(!1)}),Ue=(ot,pt)=>Kt(void 0,null,function*(){E(!0);const yt=yield(0,ie.ZP)(`/api/paths/${b==null?void 0:b.pathId}/post_discuss.json`,{method:"post",body:{content:ot}});(yt==null?void 0:yt.status)===0&&(z.page=pt===1?1:z.page,te(Jr({},z)),Me(z),ce(!1))}),Xe=(ot,pt)=>Kt(void 0,null,function*(){E(!0);const yt=yield(0,ie.ZP)(`/api/discusses/${le}/reply.json`,{method:"post",body:{container_type:"Shixun",content:ot}});yt!=null&&yt.discuss&&(ce(!1),Me(z))}),$e=(ot,pt)=>Kt(void 0,null,function*(){E(!0);const yt=yield(0,ie.ZP)(`/api/discusses/${ot}/plus.json`,{method:"post",body:{container_type:"Discuss",type:pt}});(yt==null?void 0:yt.status)!==-1&&Me(z)}),rt=(ot,pt)=>Kt(void 0,null,function*(){E(!0);const yt=yield(0,ie.ZP)(`/api/discusses/${ot}.json`,{method:"delete",body:{}});(yt==null?void 0:yt.status)===1&&(z.page=pt===1&&ge.length===1&&z.page!==1?z.page-1:z.page,te(Jr({},z)),Me(z))});return Kr.createElement(nn,null,Kr.createElement(Kr.Fragment,null,Kr.createElement("span",{className:"relative",style:{float:"right"}},Kr.createElement("div",{className:Jt.addBtn,onClick:()=>ce(!0)},"\u53D1\u5E03\u8BA8\u8BBA")),Kr.createElement("div",{className:Jt.exchange},Kr.createElement("div",{className:Jt.body},Kr.createElement(ye.Z,{spinning:x},le===!0&&Kr.createElement(Le,{type:1,onEnter:Ue}),re?Kr.createElement(Kr.Fragment,null,Kr.createElement("div",{className:Jt.liWarp},ge==null?void 0:ge.map(ot=>{var pt,yt,Ct,zt;return Kr.createElement("div",{key:ot==null?void 0:ot.id,className:Jt.li},Kr.createElement("img",{src:`${qt.Z.IMG_SERVER}/images/${(pt=ot==null?void 0:ot.author)==null?void 0:pt.image_url}`}),Kr.createElement("aside",{style:{flex:1}},Kr.createElement("div",{className:Jt.head},Kr.createElement("b",null,(yt=ot==null?void 0:ot.author)==null?void 0:yt.name),Kr.createElement("span",null,ot==null?void 0:ot.time),Kr.createElement("div",{className:Jt.btns},Kr.createElement(Wn.Z,{placement:"top",title:"\u56DE\u590D",color:"#434B64"},Kr.createElement("div",{onClick:()=>ce(ot.id),className:Jt.reply},Kr.createElement("i",{className:"iconfont icon-a-huifupinglun"}))),(ot==null?void 0:ot.manage)&&Kr.createElement(Wn.Z,{placement:"top",title:"\u5220\u9664\u8BA8\u8BBA",color:"#434B64"},Kr.createElement("div",{onClick:()=>rt(ot.id,1),className:Jt.delete},Kr.createElement("i",{className:"iconfont icon-shanchu17"}))),Kr.createElement(Wn.Z,{placement:"top",title:"\u70B9\u8D5E",color:"#434B64"},Kr.createElement("div",{onClick:()=>$e(ot==null?void 0:ot.id,ot!=null&&ot.user_praise?0:1),className:rr()(Jt.praise,(ot==null?void 0:ot.user_praise)&&Jt.active)},Kr.createElement("i",{className:"iconfont icon-dianzan7"}))),!!(ot!=null&&ot.praise_count)&&Kr.createElement("aside",{className:Jt.num},ot==null?void 0:ot.praise_count))),Kr.createElement(pe.Z,{className:Jt.md,value:(ot==null?void 0:ot.content)||""}),!!((Ct=ot==null?void 0:ot.children)!=null&&Ct.length)&&Kr.createElement("div",{className:Jt.secondWrap},(zt=ot==null?void 0:ot.children)==null?void 0:zt.map(Wt=>{var Ht;return Kr.createElement("div",{className:Jt.secondLi},Kr.createElement("div",{className:Jt.secondHead},Kr.createElement("b",null,(Ht=Wt==null?void 0:Wt.author)==null?void 0:Ht.name),Kr.createElement("span",null,Wt==null?void 0:Wt.time),Kr.createElement("div",{className:Jt.secondBtns},(Wt==null?void 0:Wt.manage)&&Kr.createElement(Wn.Z,{placement:"top",title:"\u5220\u9664\u8BA8\u8BBA",color:"#434B64"},Kr.createElement("div",{onClick:()=>rt(Wt.id,2),className:Jt.secondDelete},Kr.createElement("i",{className:"iconfont icon-shanchu17"}))))),Kr.createElement(pe.Z,{className:Jt.md,value:(Wt==null?void 0:Wt.content)||""}))})),le===ot.id&&Kr.createElement(Le,{type:2,onEnter:Xe})))})),Kr.createElement("div",{className:Jt.pagination},Kr.createElement(xn.Z,{onChange:ot=>{z.page=ot,te(Jr({},z)),Me(z)},total:re,current:z==null?void 0:z.page,pageSize:10,hideOnSinglePage:!0,showSizeChanger:!1,showQuickJumper:!1,style:{marginTop:"20rem",marginBottom:"40rem"},showTotal:ot=>Kr.createElement("span",{style:{marginLeft:"10rem",color:"#fff"}},"\u5171",Kr.createElement("span",{style:{color:"#37AD83",margin:"0 5rem"}},ot),"\u6761\u6570\u636E")}))):!le&&Kr.createElement(Rt,{textColor:"#fff",style:{visibility:x?"hidden":"visible"}}))))))},qe={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"},dt="data:image/png;base64,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",Mt="data:image/png;base64,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",wt="data:image/png;base64,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",rn="data:image/png;base64,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",un={chart:"chart___Rsr8z",group:"group___cEFV6",item:"item___uQIC1"},zn=Object.defineProperty,Fn=Object.getOwnPropertySymbols,tn=Object.prototype.hasOwnProperty,Vn=Object.prototype.propertyIsEnumerable,tr=(b,x,E)=>x in b?zn(b,x,{enumerable:!0,configurable:!0,writable:!0,value:E}):b[x]=E,dr=(b,x)=>{for(var E in x||(x={}))tn.call(x,E)&&tr(b,E,x[E]);if(Fn)for(var E of Fn(x))Vn.call(x,E)&&tr(b,E,x[E]);return b};const Bn=()=>`shadow-${Math.random().toString(36).slice(2,9)}`;var Nn=({percentage:b,startAngle:x=270,strokeColor:E="#42BECD",trackColor:z="#e6e6e6",innerBackgroundColor:te="#fff",text:re="",textColor:oe="#000",textSize:le="1rem",textPadding:ce="28rem",outerDiameter:ge,innerDiameter:Ae,maxTextLength:Me=6,onClick:Ue,hoverEffect:Xe=!0,style:$e})=>{const[rt,ot]=(0,Ge.useState)(0),[pt,yt]=(0,Ge.useState)(0),[Ct,zt]=(0,Ge.useState)(!1),Wt=Ir=>{var si,Cr;const wi=parseFloat(Ir),Mo=parseFloat((Cr=(si=document.documentElement)==null?void 0:si.style)==null?void 0:Cr.fontSize);return wi*Mo},Ht=()=>{ot(Wt(ge)),yt(Wt(Ae))};(0,Ge.useEffect)(()=>(Ht(),window.addEventListener("resize",Ht),()=>window.removeEventListener("resize",Ht)),[ge,Ae]);const Qt=rt/2,Gt=pt/2,vn=(rt-pt)/2,Sn=Qt-vn,kn=2*Math.PI*Sn,Kn=kn-b/100*kn,vr=`rotate(${x} ${Qt} ${Qt})`,Nr=((Ir,si)=>si&&Ir.length>si?Ir.slice(0,si-1)+"...":Ir)(re,Me),ei=()=>{Xe&&zt(!0)},Ar=()=>{zt(!1)},Sr=Wt("4rem");return Ge.createElement("svg",{width:rt,height:rt,viewBox:`0 0 ${rt} ${rt}`,xmlns:"http://www.w3.org/2000/svg",onClick:Ue,onMouseEnter:ei,onMouseLeave:Ar,style:dr({cursor:Ue?"pointer":"default"},$e)},Ge.createElement("circle",{cx:Qt,cy:Qt,r:Gt,fill:te}),Ge.createElement("circle",{cx:Qt,cy:Qt,r:Sn,fill:"none",stroke:z,strokeWidth:vn}),Ge.createElement("circle",{cx:Qt,cy:Qt,r:Sn,fill:"none",stroke:E,strokeWidth:vn,strokeDasharray:kn,strokeDashoffset:Kn,strokeLinecap:"round",transform:vr}),Ct&&Ge.createElement("circle",{cx:Qt,cy:Qt,r:Sn+vn/2,fill:"none",stroke:"#FA6400",strokeWidth:Wt("4rem")}),re&&Ge.createElement("foreignObject",{x:Qt-Gt,y:Qt-Gt,width:pt,height:pt},Ge.createElement("div",{style:{width:"100%",height:"100%",display:"flex",justifyContent:"center",alignItems:"center",padding:ce}},Ge.createElement("b",{style:{color:oe,fontSize:le,textAlign:"center"},title:re},Nr))))},$n="data:image/png;base64,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",lr="data:image/png;base64,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",gr="data:image/png;base64,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",Tr="data:image/png;base64,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",ur="data:image/png;base64,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",Br="data:image/png;base64,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",jr=Be(59301),qn=({dataSource:b=[],pathsDetail:x,onClick:E,onMore:z})=>{const[te,re]=(0,Ge.useState)([]);(0,Ge.useEffect)(()=>{let le=[];for(let ce=0;ce{var ge;let Ae=null;return ce%2===0?Ae=jr.createElement("div",{className:un.group,style:ce==0?{marginLeft:"-164rem"}:{}},le.map((Me,Ue)=>{var Xe,$e,rt;return jr.createElement("div",{key:Me.knowledge_uuid,className:un.item,style:ce==0&&Ue>0?{marginLeft:"300rem"}:{}},(Me==null?void 0:Me.has_children)&&jr.createElement("img",{src:Me.complete_rate?$n:lr,style:{width:"163rem",height:"91rem",position:"absolute",zIndex:1,left:0,top:"3rem"}}),Ue!==0&&jr.createElement("img",{src:Me.complete_rate?gr:Tr,style:{width:"410rem",height:"50rem",position:"absolute",zIndex:2,right:"50%",bottom:"38rem"}}),ce!==0&&Ue===0&&jr.createElement("img",{src:Me.complete_rate?ur:Br,style:{width:"233rem",height:"316rem",position:"absolute",zIndex:3,right:"calc(50% + 5rem)",bottom:"38rem",transform:"scaleX(-1)"}}),jr.createElement(Nn,{strokeColor:"#60C059",percentage:Me.complete_rate,startAngle:270,trackColor:"#E3E8EF",text:Me.name,textSize:"16rem",hoverEffect:!(!(Me!=null&&Me.is_publish)&&!((Xe=x==null?void 0:x.detail)!=null&&Xe.can_managed)),textColor:"#333",outerDiameter:"137rem",innerDiameter:"107rem",textPadding:"26rem",onClick:!(Me!=null&&Me.is_publish)&&!(($e=x==null?void 0:x.detail)!=null&&$e.can_managed)?void 0:()=>E(Me),style:{position:"absolute",zIndex:4,left:"50%",bottom:0,transform:"translateX(-50%)"}}),jr.createElement("div",{onClick:()=>{z(Me)},style:{width:"34rem",height:"34rem",borderRadius:"50%",position:"absolute",zIndex:5,left:"50%",top:"3rem",transform:"translateX(-50%)",cursor:"pointer"}}),!(Me!=null&&Me.is_publish)&&!((rt=x==null?void 0:x.detail)!=null&&rt.can_managed)&&jr.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"}},jr.createElement("i",{className:"iconfont icon-suo1",style:{color:"#fff",fontSize:"28rem"}}),jr.createElement("div",{style:{color:"#fff",fontSize:"12rem"}},"\u8D44\u6E90\u6682\u672A\u53D1\u5E03")))})):Ae=jr.createElement("div",{className:un.group},(ge=oe(le))==null?void 0:ge.map((Me,Ue)=>{var Xe,$e,rt;return jr.createElement("div",{key:(Me==null?void 0:Me.knowledge_uuid)||Ue,className:un.item},Me&&jr.createElement(jr.Fragment,null,(Me==null?void 0:Me.has_children)&&jr.createElement("img",{src:Me.complete_rate?$n:lr,style:{width:"163rem",height:"91rem",position:"absolute",zIndex:1,left:0,top:"3rem"}}),Ue!==3&&jr.createElement("img",{src:Me.complete_rate?gr:Tr,style:{width:"410rem",height:"50rem",position:"absolute",zIndex:2,left:"50%",bottom:"38rem"}}),Ue===3&&jr.createElement("img",{src:Me.complete_rate?ur:Br,style:{width:"233rem",height:"316rem",position:"absolute",zIndex:3,left:"calc(50% + 5rem)",bottom:"38rem"}}),jr.createElement(Nn,{strokeColor:"#60C059",percentage:Me.complete_rate,startAngle:270,trackColor:"#E3E8EF",text:Me.name,textSize:"16rem",textColor:"#333",hoverEffect:!(!(Me!=null&&Me.is_publish)&&!((Xe=x==null?void 0:x.detail)!=null&&Xe.can_managed)),outerDiameter:"137rem",innerDiameter:"107rem",textPadding:"26rem",onClick:!(Me!=null&&Me.is_publish)&&!(($e=x==null?void 0:x.detail)!=null&&$e.can_managed)?void 0:()=>E(Me),style:{position:"absolute",zIndex:4,left:"50%",bottom:0,transform:"translateX(-50%)"}}),jr.createElement("div",{onClick:()=>{z(Me)},style:{width:"34rem",height:"34rem",borderRadius:"50%",position:"absolute",zIndex:5,left:"50%",top:"3rem",transform:"translateX(-50%)",cursor:"pointer"}}),!(Me!=null&&Me.is_publish)&&!((rt=x==null?void 0:x.detail)!=null&&rt.can_managed)&&jr.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"}},jr.createElement("i",{className:"iconfont icon-suo1",style:{color:"#fff",fontSize:"28rem"}}),jr.createElement("div",{style:{color:"#fff",fontSize:"12rem"}},"\u8D44\u6E90\u6682\u672A\u53D1\u5E03"))))})),jr.createElement(Ge.Fragment,{key:ce},Ae)}))},fi=Be(81327),ui=Be(57809),$i=Be(17574),wr={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"},oi=Be(89489),ji=Be(57816),Yi=Be(59301),Vi=Object.defineProperty,to=Object.defineProperties,bo=Object.getOwnPropertyDescriptors,Lo=Object.getOwnPropertySymbols,Gi=Object.prototype.hasOwnProperty,Fo=Object.prototype.propertyIsEnumerable,Zr=(b,x,E)=>x in b?Vi(b,x,{enumerable:!0,configurable:!0,writable:!0,value:E}):b[x]=E,Pa=(b,x)=>{for(var E in x||(x={}))Gi.call(x,E)&&Zr(b,E,x[E]);if(Lo)for(var E of Lo(x))Fo.call(x,E)&&Zr(b,E,x[E]);return b},Xr=(b,x)=>to(b,bo(x)),Ma=(b,x)=>{var E={};for(var z in b)Gi.call(b,z)&&x.indexOf(z)<0&&(E[z]=b[z]);if(b!=null&&Lo)for(var z of Lo(b))x.indexOf(z)<0&&Fo.call(b,z)&&(E[z]=b[z]);return E},ts=(b,x,E)=>new Promise((z,te)=>{var re=ce=>{try{le(E.next(ce))}catch(ge){te(ge)}},oe=ce=>{try{le(E.throw(ce))}catch(ge){te(ge)}},le=ce=>ce.done?z(ce.value):Promise.resolve(ce.value).then(re,oe);le((E=E.apply(b,x)).next())});const fa=b=>{var x=b,{pathsDetail:E,user:z,globalSetting:te,loading:re,dispatch:oe,addmodal:le,setaddmodal:ce,uuid:ge,onOk:Ae}=x,Me=Ma(x,["pathsDetail","user","globalSetting","loading","dispatch","addmodal","setaddmodal","uuid","onOk"]),Ue,Xe;let[$e,rt]=(0,Ge.useState)({subject_id:(Ue=E==null?void 0:E.detail)==null?void 0:Ue.id,uuid:""});const[ot,pt]=(0,Ge.useState)([]),[yt,Ct]=(0,Ge.useState)([]),[zt,Wt]=(0,Ge.useState)(!1),[Ht,Qt]=(0,Ge.useState)(""),[Gt,vn]=(0,Ge.useState)(!1);(0,Ge.useEffect)(()=>{le&&kn(1)},[le]);function Sn(er,Nr){for(let ei of er)Nr.push(ei),ei.children&&ei.children.length>0&&Sn(ei.children,Nr)}function kn(er){return ts(this,null,function*(){var Nr,ei;Wt(!0);let Ar=yield(0,ie.ZP)("/api/subject_knowledge/tree.json",{method:"get",params:Xr(Pa({},$e),{id:ge,uuid:$e==null?void 0:$e.uuid,is_edit:!!ge})});Wt(!1),(Ar==null?void 0:Ar.status)===0&&(ge?$e.uuid=Ar==null?void 0:Ar.uuid:er===1&&($e.uuid=(ei=(Nr=Ar==null?void 0:Ar.parent_knowledges)==null?void 0:Nr[0])==null?void 0:ei.uuid),Qt(Ar==null?void 0:Ar.name),rt($e),pt(Ar),Ct(Ar==null?void 0:Ar.data))})}const Kn=er=>{console.log(er)},vr=er=>{console.log(er);const Nr=er.node.id,ei=er.dragNode.id,Ar=er.node.pos.split("-"),Sr=er.dropPosition-Number(Ar[Ar.length-1]),Ir=(wi,Mo,Po)=>{for(let eo=0;eo{Po.splice(Mo,1),Cr=wi}),!er.dropToGap)Ir(si,Nr,wi=>{wi.children=wi.children||[],wi.children.unshift(Cr)});else{let wi=[],Mo;Ir(si,Nr,(Po,eo,Ui)=>{wi=Ui,Mo=eo}),Sr===-1?wi.splice(Mo,0,Cr):wi.splice(Mo+1,0,Cr)}Ct(si)};return Yi.createElement(Oe.default,{title:ge?"\u7F16\u8F91\u5B66\u4E60\u8DEF\u5F84":"\u521B\u5EFA\u5B66\u4E60\u8DEF\u5F84",open:le,width:"920rem",centered:!0,onOk:()=>ts(void 0,null,function*(){var er,Nr;let ei=[];if(Sn(yt,ei),console.log(yt,ei,"gData"),(yt==null?void 0:yt.length)<=0||((er=ei==null?void 0:ei.filter(Sr=>!(Sr!=null&&Sr.is_out)))==null?void 0:er.length)===0||((Nr=yt==null?void 0:yt.filter(Sr=>!(Sr!=null&&Sr.is_out)))==null?void 0:Nr.length)===0){Ze.ZP.info("\u5B66\u4E60\u8DEF\u5F84\u4E0D\u53EF\u4E3A\u7A7A");return}if(!Ht){Ze.ZP.info("\u540D\u79F0\u4E0D\u53EF\u4E3A\u7A7A");return}let Ar=yield(0,ie.ZP)("/api/subject_knowledge.json",{method:"post",body:Xr(Pa({},$e),{id:ge,name:Ht,routes:yt})});(Ar==null?void 0:Ar.status)===0&&(Ze.ZP.info(ge?"\u4FEE\u6539\u6210\u529F":"\u65B0\u589E\u6210\u529F"),Ae(Ar==null?void 0:Ar.id,Ht),ce(!1))}),okText:"\u5B8C\u6210\u521B\u5EFA",onCancel:()=>{ce(!1)}},Yi.createElement(ye.Z,{spinning:zt},Yi.createElement("div",{className:wr.body},Yi.createElement(fi.Z,{className:wr.spacewidth},Yi.createElement(fi.Z.Compact,null,Yi.createElement(je.default,{addonBefore:Yi.createElement("span",{className:wr.title},Yi.createElement("span",{style:{color:"red"}},"*")," \u8DEF\u5F84\u540D\u79F0"),showCount:!0,maxLength:12,value:Ht,onChange:er=>Qt(er.target.value),style:{width:"100%"},size:"large",placeholder:"\u8F93\u5165\u5B66\u4E60\u8DEF\u5F84\u540D\u79F0",allowClear:!0}))),Yi.createElement(fi.Z,{className:wr.spacewidth,style:{marginTop:"20rem"}},Yi.createElement(fi.Z.Compact,null,Yi.createElement("div",{className:wr.titlename},"\u77E5\u8BC6\u56FE\u8C31"),Yi.createElement(ui.default,{value:$e.uuid,onChange:er=>{$e.uuid=er,kn()},disabled:ge,style:{width:"90%"},size:"large"},(Xe=ot==null?void 0:ot.parent_knowledges)==null?void 0:Xe.map(er=>Yi.createElement(ui.default.Option,{value:er==null?void 0:er.uuid},er==null?void 0:er.knowledge_name))))),Yi.createElement("div",{style:{marginTop:"20rem",background:"#D5F1EA",borderRadius:"8rem 8rem 0rem 0rem",height:"38rem",lineHeight:"38rem",padding:"0px 12rem"}},Yi.createElement("span",{style:{color:"#1B8565",fontSize:"16rem",fontWeight:"500"}},"\u5B66\u4E60\u8DEF\u5F84"),Yi.createElement("span",{style:{marginLeft:"10rem"}},"\uFF08\u62D6\u52A8\u53EF\u8C03\u6574\u8DEF\u5F84\u987A\u5E8F\uFF09")),(yt==null?void 0:yt.length)>0?Yi.createElement($i.default,{style:{background:"#FAFAFA"},treeData:yt,showLine:!0,blockNode:!0,fieldNames:{key:"id"},className:wr.treeheight,draggable:!0,onDragEnter:Kn,onDrop:vr,switcherIcon:Yi.createElement(oi.Z,null),titleRender:er=>Yi.createElement("div",{className:wr.nodeData,style:{color:er!=null&&er.is_out?"#999999":"#000000"}},Yi.createElement("div",{className:wr.nametitle,title:er==null?void 0:er.name,style:{flex:1}},(er==null?void 0:er.is_out)&&Yi.createElement("span",{className:wr.yc},"\u5DF2\u79FB\u51FA")," ",er==null?void 0:er.name),Yi.createElement("span",{className:wr.yclj,style:{color:er!=null&&er.is_out?"#37AD83":"#E30000",fontSize:"14rem"},onClick:()=>{er.is_out=!er.is_out}},er!=null&&er.is_out?"\u52A0\u5165\u5B66\u4E60\u8DEF\u5F84":"\u79FB\u51FA\u5B66\u4E60\u8DEF\u5F84")," ")}):Yi.createElement(ji.Z,{styles:{margin:"20rem auto"}}))))};var ys=(0,ke.connect)(({pathsDetail:b,user:x,loading:E,globalSetting:z})=>({pathsDetail:b,user:x,globalSetting:z,loading:E.models.index}))(fa),qa=Be(54580),Go=Be(43428),li={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"},Ca=Be(99267),Za=Be(43531),lo=Be(15075),fn={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"},Yo=Be(59301),Ms=Object.defineProperty,_a=Object.getOwnPropertySymbols,Bs=Object.prototype.hasOwnProperty,Vs=Object.prototype.propertyIsEnumerable,ol=(b,x,E)=>x in b?Ms(b,x,{enumerable:!0,configurable:!0,writable:!0,value:E}):b[x]=E,ka=(b,x)=>{for(var E in x||(x={}))Bs.call(x,E)&&ol(b,E,x[E]);if(_a)for(var E of _a(x))Vs.call(x,E)&&ol(b,E,x[E]);return b},Aa=(b,x,E)=>new Promise((z,te)=>{var re=ce=>{try{le(E.next(ce))}catch(ge){te(ge)}},oe=ce=>{try{le(E.throw(ce))}catch(ge){te(ge)}},le=ce=>ce.done?z(ce.value):Promise.resolve(ce.value).then(re,oe);le((E=E.apply(b,x)).next())});let Sa=[{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}],xs=[{name:"\u7AE0\u8282",id:"zj",item_type:1},{name:"\u77E5\u8BC6\u70B9",id:"zsd",item_type:1}];var la=({value:b=[],onChange:x,type:E,dataSources:z=[],pathsDetail:te={},showmodal:re,containerRef:oe})=>{const[le,ce]=(0,Ge.useState)(!1),[ge,Ae]=(0,Ge.useState)([]),[Me,Ue]=(0,Ge.useState)(),[Xe,$e]=(0,Ge.useState)(""),[rt,ot]=(0,Ge.useState)(""),[pt,yt]=(0,Ge.useState)(""),[Ct,zt]=(0,Ge.useState)(!1),[Wt,Ht]=(0,Ge.useState)(!1),[Qt,Gt]=(0,Ge.useState)([]),[vn,Sn]=(0,Ge.useState)("");(0,Ge.useEffect)(()=>{le&&kn()},[le]);function kn(){return Aa(this,null,function*(){var Ar;let Sr=yield(0,ie.ZP)("/api/knowledge_items.json",{method:"get",params:{item_type:E,subject_id:(Ar=te==null?void 0:te.detail)==null?void 0:Ar.id}});(Sr==null?void 0:Sr.status)===0&&(E===3?Ae(Sr==null?void 0:Sr.data):(Ae([...xs,...Sr==null?void 0:Sr.data]),Gt([...Sa,...Sr==null?void 0:Sr.data2])))})}const Kn=[{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"}],vr="\u6807\u7B7E";(0,Ge.useEffect)(()=>{Ae(z)},[]),(0,Ge.useEffect)(()=>{le&&Ue(b)},[le]);const er=({title:Ar="",style:Sr={},values:Ir="",showDelete:si=!0,modal:Cr=!1,active:wi=!1})=>{const Po=(fo=>fo.split("").reduce((Uo,pa)=>Uo+pa.charCodeAt(0),0))(Ar)%Kn.length,{background:eo,borderColor:Ui}=Kn[Po];return Yo.createElement("div",{className:rr()(fn.tag,wi?fn.active:""),onClick:()=>{var fo;if(Cr){if(le===1){let Uo=[...ge,...Qt];Ue([...Uo.filter(pa=>(pa==null?void 0:pa.id)===Ir)])}le===2&&((fo=Me==null?void 0:Me.map(Uo=>Uo.id))!=null&&fo.includes(Ir)?Ue(Me.filter(Uo=>Uo.id!==Ir)):Ue([...Me,...ge.filter(Uo=>(Uo==null?void 0:Uo.id)===Ir)]))}},style:ka({background:eo,borderColor:Ui},Sr)},Yo.createElement("span",null,Ar),si&&Yo.createElement("i",{onClick:fo=>Aa(void 0,null,function*(){var Uo;if(fo.stopPropagation(),Cr){Ae(ge.filter(Ga=>Ga.name!==Ar)),Ae(ge.filter(Ga=>Ga.name!==Ar));let pa=yield(0,ie.ZP)(`/api/knowledge_items/${Ir}.json`,{method:"delete",body:{id:Ir,subject_id:(Uo=te==null?void 0:te.detail)==null?void 0:Uo.id}});(pa==null?void 0:pa.status)===0&&kn()}else x(b.filter(pa=>pa.id!==Ir))}),className:"iconfont icon-shanchu5"}))},Nr=()=>{x(Me),ce(!1)},ei=Ar=>Aa(void 0,null,function*(){var Sr;if(!Xe.replace(/\s+/g,"")&&Ar===1){yt(`${vr}\u4E0D\u80FD\u4E3A\u7A7A`);return}if(!rt.replace(/\s+/g,"")&&Ar===2){Sn("\u8D44\u6E90\u4E0D\u80FD\u4E3A\u7A7A");return}if((ge.map(si=>si.name).includes(Xe)||Qt.map(si=>si.name).includes(Xe))&&Ar===1){yt(`\u8BE5${vr}\u5DF2\u5B58\u5728\uFF0C\u8BF7\u52FF\u91CD\u590D\u6DFB\u52A0\uFF01`);return}if((Qt.map(si=>si.name).includes(rt)||ge.map(si=>si.name).includes(rt))&&Ar===2){Sn("\u8BE5\u8D44\u6E90\u5DF2\u5B58\u5728\uFF0C\u8BF7\u52FF\u91CD\u590D\u6DFB\u52A0\uFF01");return}let Ir=yield(0,ie.ZP)("/api/knowledge_items.json",{method:"post",body:{item_type:E===3?3:Ar,name:E===3||Ar===1?Xe:rt,subject_id:(Sr=te==null?void 0:te.detail)==null?void 0:Sr.id}});(Ir==null?void 0:Ir.status)===0&&kn(),Ar===1&&zt(!1),Ar===2&&Ht(!1)});return Yo.createElement("div",{className:fn.tagsModal},E===5&&Yo.createElement(Yo.Fragment,null,b==null?void 0:b.map((Ar,Sr)=>Yo.createElement(er,{values:Ar.id,key:Sr,title:Ar.name,showDelete:!1,style:{marginRight:"20rem",marginBottom:0}})),re&&Yo.createElement("div",{onClick:()=>ce(1),style:{marginBottom:"0rem"},className:fn.btn},Yo.createElement("i",{className:"iconfont icon-genghuanguanliyuan1"}),b!=null&&b.length?"\u66F4\u6362":"\u9009\u62E9","\u7C7B\u578B")),E===3&&Yo.createElement(Yo.Fragment,null,b==null?void 0:b.map((Ar,Sr)=>Yo.createElement(er,{values:Ar.id,key:Sr,title:Ar.name})),re&&Yo.createElement("div",{onClick:()=>ce(2),className:fn.btn,style:{marginBottom:"10rem"}},Yo.createElement("i",{className:"iconfont icon-tianjiatixing"}),b!=null&&b.length?"\u66F4\u6362":"\u9009\u62E9","\u6807\u7B7E")),Yo.createElement(Oe.default,{open:!!le,centered:!0,width:"1000rem",okText:"\u4FDD\u5B58",getContainer:()=>oe.current,onCancel:()=>ce(!1),cancelText:"\u53D6\u6D88",afterClose:()=>{zt(!1),Ht(!1),yt(""),$e("")},onOk:Nr,title:`\u9009\u62E9${vr}`},Yo.createElement("div",{className:fn.modal},Yo.createElement("div",{className:fn.mHead},Yo.createElement("b",null),Yo.createElement("span",null,`${vr}`,"\uFF08",ge.length,"\uFF09"),Yo.createElement("div",{onClick:()=>{zt(!0),yt(""),$e("")},className:fn.btn},Yo.createElement("i",{className:"iconfont icon-tianjiatixing"}),"\u6DFB\u52A0")),Yo.createElement("div",{className:fn.body},ge==null?void 0:ge.map((Ar,Sr)=>{var Ir,si,Cr;return Yo.createElement(er,{showDelete:E===3?!((Ir=Me==null?void 0:Me.map(wi=>wi==null?void 0:wi.id))!=null&&Ir.includes(Ar==null?void 0:Ar.id)):!((si=Me==null?void 0:Me.map(wi=>wi==null?void 0:wi.id))!=null&&si.includes(Ar==null?void 0:Ar.id))&&!((Cr=xs.map(wi=>wi.name))!=null&&Cr.includes(Ar.name)),modal:!0,style:{cursor:"pointer"},active:Me==null?void 0:Me.map(wi=>wi==null?void 0:wi.id).includes(Ar==null?void 0:Ar.id),key:Ar==null?void 0:Ar.id,values:Ar==null?void 0:Ar.id,title:Ar==null?void 0:Ar.name})}),Ct&&Yo.createElement("div",{className:fn.add},Yo.createElement(je.default,{style:{width:"rem"},size:"large",value:Xe,onChange:Ar=>{yt(""),$e(Ar.target.value)}}),Yo.createElement("i",{onClick:()=>ei(1),className:"iconfont icon-dui",style:{color:"#1B8565"}}),Yo.createElement("i",{onClick:()=>zt(!1),className:"iconfont icon-shanchu10",style:{color:"#9096A3"}}),!!pt&&Yo.createElement("div",{className:fn.error},pt)))),E===5&&Yo.createElement("div",{className:fn.modal},Yo.createElement("div",{className:fn.mHead},Yo.createElement("b",null),Yo.createElement("span",null,"\u8D44\u6E90","\uFF08",Qt.length,"\uFF09"),Yo.createElement("div",{onClick:()=>{Ht(!0),Sn(""),ot("")},className:fn.btn},Yo.createElement("i",{className:"iconfont icon-tianjiatixing"}),"\u6DFB\u52A0")),Yo.createElement("div",{className:fn.body},Qt==null?void 0:Qt.map((Ar,Sr)=>{var Ir,si;return Yo.createElement(er,{showDelete:!((Ir=Me==null?void 0:Me.map(Cr=>Cr==null?void 0:Cr.id))!=null&&Ir.includes(Ar==null?void 0:Ar.id))&&!((si=Sa.map(Cr=>Cr.name))!=null&&si.includes(Ar.name)),modal:!0,style:{cursor:"pointer"},active:Me==null?void 0:Me.map(Cr=>Cr==null?void 0:Cr.id).includes(Ar==null?void 0:Ar.id),key:Ar==null?void 0:Ar.id,values:Ar==null?void 0:Ar.id,title:Ar==null?void 0:Ar.name})}),Wt&&Yo.createElement("div",{className:fn.add},Yo.createElement(je.default,{style:{width:"rem"},size:"large",value:rt,onChange:Ar=>{Sn(""),ot(Ar.target.value)}}),Yo.createElement("i",{onClick:()=>ei(2),className:"iconfont icon-dui",style:{color:"#1B8565"}}),Yo.createElement("i",{onClick:()=>Ht(!1),className:"iconfont icon-shanchu10",style:{color:"#9096A3"}}),!!vn&&Yo.createElement("div",{className:fn.error},vn))))))},na=Be(1710),Ri=Be(71628),qo=Be(59301),Ts=Object.getOwnPropertySymbols,pl=Object.prototype.hasOwnProperty,Rs=Object.prototype.propertyIsEnumerable,As=(b,x)=>{var E={};for(var z in b)pl.call(b,z)&&x.indexOf(z)<0&&(E[z]=b[z]);if(b!=null&&Ts)for(var z of Ts(b))x.indexOf(z)<0&&Rs.call(b,z)&&(E[z]=b[z]);return E},Ns=(b,x,E)=>new Promise((z,te)=>{var re=ce=>{try{le(E.next(ce))}catch(ge){te(ge)}},oe=ce=>{try{le(E.throw(ce))}catch(ge){te(ge)}},le=ce=>ce.done?z(ce.value):Promise.resolve(ce.value).then(re,oe);le((E=E.apply(b,x)).next())});let Ks=[{label:"\u5B9E\u8BAD",key:"1"},{label:"\u89C6\u9891",key:"2"},{label:"\u8BFE\u4EF6",key:"3"},{label:"\u8BD5\u5377",key:"4"}];const Yl=b=>{var x=b,{types:E,globalSetting:z,loading:te,dispatch:re,pathsDetail:oe,onChange:le,ktzykey:ce,getother:ge}=x,Ae=As(x,["types","globalSetting","loading","dispatch","pathsDetail","onChange","ktzykey","getother"]),Me,Ue,Xe,$e;let[rt,ot]=(0,Ge.useState)({page:1,limit:10,type:E,keyword:"",select_type:1,subject_id:"",course_id:""});const[pt,yt]=(0,Ge.useState)([]);(0,Ge.useEffect)(()=>{Ct()},[E]);function Ct(){return Ns(this,null,function*(){rt.select_type===3&&(rt.subject_id="",rt.course_id=""),rt.select_type===2&&(rt.subject_id=""),rt.select_type===1&&(rt.course_id="");let zt=yield(0,ie.ZP)("/api/paths/search_all.json",{method:"get",params:rt});(zt==null?void 0:zt.status)===0&&yt(zt)})}return qo.createElement("div",{style:{padding:"10rem 20rem"}},qo.createElement("div",{style:{display:"flex"}},qo.createElement("div",null,E==="1"&&qo.createElement(je.default,{placeholder:"\u8BF7\u8F93\u5165\u5173\u952E\u8BCD\u67E5\u8BE2",style:{width:"992rem",marginRight:"10rem",height:"40rem"},onChange:zt=>{rt.keyword=zt.target.value,rt.page=1,rt.limit=10,ot(rt)}}),E!=="1"&&qo.createElement("div",{style:{display:"flex"}},qo.createElement("div",{style:{width:"223rem",alignItems:"center",display:"flex",height:"40rem"}},qo.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"),qo.createElement(ui.default,{value:rt.select_type,onChange:zt=>{rt.select_type=zt,rt.page=1,rt.limit=10,ot(rt),Ct()},className:li.select,style:{width:"131rem"}},qo.createElement(ui.default.Option,{value:1},"\u5B9E\u8DF5\u8BFE\u7A0B"),qo.createElement(ui.default.Option,{value:2},"\u6559\u5B66\u8BFE\u5802"),qo.createElement(ui.default.Option,{value:3},"\u4E2A\u4EBA\u4E2D\u5FC3"))),rt.select_type!==3&&qo.createElement(ui.default,{value:rt.subject_id||rt.course_id,onChange:zt=>{rt.course_id=zt,rt.subject_id=zt,rt.page=1,rt.limit=10,ot(rt),Ct()},className:li.select,style:{width:"270rem",marginLeft:"8rem"}},rt.select_type===1&&((Me=pt==null?void 0:pt.subjects)==null?void 0:Me.map(zt=>qo.createElement(ui.default.Option,{value:zt.id},zt.name))),rt.select_type===2&&((Ue=pt==null?void 0:pt.courses)==null?void 0:Ue.map(zt=>qo.createElement(ui.default.Option,{value:zt.id},zt.name)))),qo.createElement(je.default,{onChange:zt=>{rt.keyword=zt.target.value,rt.page=1,rt.limit=10,ot(rt)},addonBefore:((Xe=Ks==null?void 0:Ks.find(zt=>zt.key===E))==null?void 0:Xe.label)+"\u540D\u79F0",className:li.input,style:{marginLeft:"10rem",width:"486rem",height:"40rem"}}))),qo.createElement(we.ZP,{type:"primary",style:{height:"40rem",fontSize:"14rem",boxShadow:"none",lineHeight:"40rem",width:"108rem",padding:"0",marginLeft:"10rem"},onClick:()=>{Ct()}},"\u67E5\u8BE2")),qo.createElement(na.default,{style:{marginTop:"10rem"},dataSource:pt==null?void 0:pt.data,pagination:!1,rowKey:zt=>zt.id,scroll:{y:"400rem"},columns:[{title:(($e=Ks==null?void 0:Ks.find(zt=>zt.key===E))==null?void 0:$e.label)+"\u540D\u79F0",dataIndex:"name",ellipsis:!0,key:"name"},{title:E==="1"?"\u5408\u4F5C\u8005":"\u6240\u5C5E\u6A21\u5757",dataIndex:"name",key:"name",ellipsis:!0,render:(zt,Wt)=>qo.createElement("span",null,E==="1"?Wt==null?void 0:Wt.user_names:Wt==null?void 0:Wt.model)},{title:E==="1"?"\u6700\u8FD1\u4FEE\u6539\u65F6\u95F4":"\u6240\u5728\u4F4D\u7F6E",dataIndex:"updated_at",ellipsis:!0,render:(zt,Wt)=>qo.createElement("span",null,E==="1"?Wt==null?void 0:Wt.updated_at:Wt==null?void 0:Wt.stage_name)},{title:"\u64CD\u4F5C",dataIndex:"url",width:"100rem",render:(zt,Wt)=>qo.createElement("a",{onClick:()=>{(Wt==null?void 0:Wt.container_type)==="Video"?Oe.default.confirm({icon:null,title:"\u89C6\u9891\u64AD\u653E",centered:!0,closable:!0,footer:!1,width:600,content:qo.createElement(Ri.Z,{allow_skip:!0,src:zt})}):E==="3"?ge(zt):window.open(zt)}},"\u67E5\u770B")}],rowSelection:{type:"radio",onChange(zt,Wt){le(Wt)}}}),qo.createElement(xn.Z,{hideOnSinglePage:!0,style:{marginTop:"20rem"},total:pt==null?void 0:pt.total_count,current:rt==null?void 0:rt.page,pageSize:rt==null?void 0:rt.limit,onChange:(zt,Wt)=>{rt.page=zt,rt.limit=Wt,ot(rt),Ct()}}))};var Gl=(0,ke.connect)(({pathsDetail:b,user:x,loading:E,globalSetting:z})=>({pathsDetail:b,user:x,globalSetting:z,loading:E.models.index}))(Yl),yu=Be(84105),Pr=Be(59301),ou=Object.defineProperty,vd=Object.defineProperties,Tc=Object.getOwnPropertyDescriptors,qs=Object.getOwnPropertySymbols,ws=Object.prototype.hasOwnProperty,au=Object.prototype.propertyIsEnumerable,hl=(b,x,E)=>x in b?ou(b,x,{enumerable:!0,configurable:!0,writable:!0,value:E}):b[x]=E,Cs=(b,x)=>{for(var E in x||(x={}))ws.call(x,E)&&hl(b,E,x[E]);if(qs)for(var E of qs(x))au.call(x,E)&&hl(b,E,x[E]);return b},wl=(b,x)=>vd(b,Tc(x)),Dc=(b,x)=>{var E={};for(var z in b)ws.call(b,z)&&x.indexOf(z)<0&&(E[z]=b[z]);if(b!=null&&qs)for(var z of qs(b))x.indexOf(z)<0&&au.call(b,z)&&(E[z]=b[z]);return E},Ha=(b,x,E)=>new Promise((z,te)=>{var re=ce=>{try{le(E.next(ce))}catch(ge){te(ge)}},oe=ce=>{try{le(E.throw(ce))}catch(ge){te(ge)}},le=ce=>ce.done?z(ce.value):Promise.resolve(ce.value).then(re,oe);le((E=E.apply(b,x)).next())});const Xs=b=>{var x=b,{typesdata:E,globalSetting:z,loading:te,dispatch:re,pathsDetail:oe,onChange:le,uuid:ce,itemsuuid:ge}=x,Ae=Dc(x,["typesdata","globalSetting","loading","dispatch","pathsDetail","onChange","uuid","itemsuuid"]),Me,Ue,Xe,$e,rt,ot,pt,yt,Ct,zt,Wt,Ht;let[Qt,Gt]=(0,Ge.useState)([]),[vn,Sn]=(0,Ge.useState)(!1);const[kn,Kn]=(0,Ge.useState)([]),[vr,er]=(0,Ge.useState)(""),[Nr,ei]=(0,Ge.useState)(""),[Ar,Sr]=(0,Ge.useState)([]),[Ir,si]=(0,Ge.useState)(!1);let[Cr,wi]=(0,Ge.useState)({bh:[],qx:[],hx:[],gl:[]});(0,Ge.useEffect)(()=>{Mo()},[ce]),(0,Ge.useEffect)(()=>{if(E){let Ui=JSON.parse(sessionStorage.getItem("typesdatajsoncopy"));wi(Ui)}return()=>{}},[E]);function Mo(){return Ha(this,null,function*(){var Ui,fo,Uo,pa,Ga,kl;Sn(!0);let al=yield(0,ie.ZP)("/api/knowledge/v2/get_node.json",{method:"get",params:{nodeUuid:ce,subject_id:(Ui=oe==null?void 0:oe.detail)==null?void 0:Ui.id,depth:-1,relationshipFilter:"\u5305\u542B>"}});if(Sn(!1),(al==null?void 0:al.status)===0){Kn(al==null?void 0:al.data);const tl=[...(0,Yt.fX)((Uo=(fo=al==null?void 0:al.data)==null?void 0:fo.nodes)==null?void 0:Uo.map((Ps,rl)=>{var gl,fu;return wl(Cs({},Ps),{key:(gl=Ps==null?void 0:Ps.properties)==null?void 0:gl.uuid,title:(fu=Ps==null?void 0:Ps.properties)==null?void 0:fu.name})}),(kl=(Ga=(pa=al==null?void 0:al.data)==null?void 0:pa.relationships)==null?void 0:Ga.filter(Ps=>Ps.type==="\u5305\u542B"||Ps.type==="\u524D\u5E8F"))==null?void 0:kl.filter((Ps,rl,gl)=>rl===gl.findIndex(fu=>fu.endNodeUuid===Ps.endNodeUuid))).children||[]];Qt=tl,ei(JSON.stringify(tl)),Gt(tl)}})}(0,Ge.useEffect)(()=>{le(Cr)},[Cr]);function Po(Ui,fo,Uo){for(let pa of Ui)pa!=null&&pa.title.includes(fo)&&Uo.push(pa),pa.children&&pa.children.length>0&&(Po(pa.children,fo,Uo),eo(pa.children,fo,Uo)&&Uo.push(pa))}function eo(Ui,fo,Uo){for(let pa of Ui)if(pa!=null&&pa.title.includes(fo))return!0}return Pr.createElement(ye.Z,{spinning:vn},Pr.createElement("div",{className:li.body},Pr.createElement("div",{className:li.left},Pr.createElement("div",{className:li.header},Pr.createElement("div",null,"\u5171",Pr.createElement("span",{style:{color:"#1B8565"}},((Ue=(Me=kn==null?void 0:kn.metricCounters)==null?void 0:Me[0])==null?void 0:Ue.count)||0),"\u4E2A\u6807\u7B7E\u8282\u70B9\uFF0C",Pr.createElement("span",{style:{color:"#1B8565"}},(($e=(Xe=kn==null?void 0:kn.metricCounters)==null?void 0:Xe[1])==null?void 0:$e.count)||0),"\u4E2A\u77E5\u8BC6\u8282\u70B9"),Pr.createElement(je.default.Search,{style:{width:"350rem",borderRadius:"50%"},onChange:Ui=>{var fo,Uo,pa;const{value:Ga}=Ui.target;er(Ga);let kl=[];Po(JSON.parse(Nr),Ga,kl),kl.push((fo=kn==null?void 0:kn.nodes)==null?void 0:fo[0]);const al=kn==null?void 0:kn.nodes.filter(Ps=>{var rl;return((rl=Ps==null?void 0:Ps.properties)==null?void 0:rl.name.indexOf(Ga))>-1}).map(Ps=>{var rl;return(rl=Ps==null?void 0:Ps.properties)==null?void 0:rl.uuid});Sr(al);const tl=[...(0,Yt.fX)(kl,(pa=(Uo=kn==null?void 0:kn.relationships)==null?void 0:Uo.filter(Ps=>Ps.type==="\u5305\u542B"||Ps.type==="\u524D\u5E8F"))==null?void 0:pa.filter((Ps,rl,gl)=>rl===gl.findIndex(fu=>fu.endNodeUuid===Ps.endNodeUuid)).filter(Ps=>(kl==null?void 0:kl.map(rl=>rl==null?void 0:rl.key).includes(Ps.endNodeUuid))||(kl==null?void 0:kl.map(rl=>rl==null?void 0:rl.key).includes(Ps.startNodeUuid)))).children||[]];Qt=tl,Gt(tl),si(!0)},placeholder:"\u8BF7\u8F93\u5165\u5173\u952E\u8BCD\u641C\u7D22"})),Pr.createElement($i.default,{style:{marginTop:"30rem",maxHeight:"320rem",overflow:"auto"},showLine:!0,treeData:Qt,className:li.tree,expandedKeys:Ar,onExpand:Ui=>{Sr(Ui),si(!1)},autoExpandParent:Ir,blockNode:!0,switcherIcon:Pr.createElement(yu.Z,null),titleRender:Ui=>{var fo,Uo,pa,Ga,kl,al,Fa,tl,Ps,rl,gl,fu,$l,Xa,ms;return Pr.createElement("div",{className:li.treenode,key:(fo=Ui==null?void 0:Ui.properties)==null?void 0:fo.uuid},Pr.createElement("div",{style:{width:"50%",display:"flex",alignItems:"center"}},((Uo=Cr==null?void 0:Cr.bh)==null?void 0:Uo.find($o=>{var va;return($o==null?void 0:$o.uuid)===((va=Ui==null?void 0:Ui.properties)==null?void 0:va.uuid)}))&&Pr.createElement("span",{className:li.settingtag,style:{background:"#6236ff"}},"\u5305\u542B"),((pa=Cr==null?void 0:Cr.qx)==null?void 0:pa.find($o=>{var va;return($o==null?void 0:$o.uuid)===((va=Ui==null?void 0:Ui.properties)==null?void 0:va.uuid)}))&&Pr.createElement("span",{className:li.settingtag,style:{background:"#24A881"}},"\u524D\u7F6E"),((Ga=Cr==null?void 0:Cr.hx)==null?void 0:Ga.find($o=>{var va;return($o==null?void 0:$o.uuid)===((va=Ui==null?void 0:Ui.properties)==null?void 0:va.uuid)}))&&Pr.createElement("span",{className:li.settingtag,style:{background:"#EC8657"}},"\u540E\u7F6E"),((kl=Cr==null?void 0:Cr.gl)==null?void 0:kl.find($o=>{var va;return($o==null?void 0:$o.uuid)===((va=Ui==null?void 0:Ui.properties)==null?void 0:va.uuid)}))&&Pr.createElement("span",{className:li.settingtag,style:{background:"#497DFF"}},"\u5173\u8054"),Pr.createElement("div",{className:li.multiple,title:Ui==null?void 0:Ui.title,dangerouslySetInnerHTML:{__html:(al=Ui==null?void 0:Ui.title)==null?void 0:al.replaceAll(vr,`${vr}`)},style:{width:"100%",fontSize:"14rem",color:"#000",fontWeight:400}})),Pr.createElement("div",{className:li.hudong},!((Fa=Cr==null?void 0:Cr.qx)!=null&&Fa.find($o=>{var va;return($o==null?void 0:$o.uuid)===((va=Ui==null?void 0:Ui.properties)==null?void 0:va.uuid)})||(tl=Cr==null?void 0:Cr.bh)!=null&&tl.find($o=>{var va;return($o==null?void 0:$o.uuid)===((va=Ui==null?void 0:Ui.properties)==null?void 0:va.uuid)})||(Ps=Cr==null?void 0:Cr.hx)!=null&&Ps.find($o=>{var va;return($o==null?void 0:$o.uuid)===((va=Ui==null?void 0:Ui.properties)==null?void 0:va.uuid)})||(rl=Cr==null?void 0:Cr.gl)!=null&&rl.find($o=>{var va;return($o==null?void 0:$o.uuid)===((va=Ui==null?void 0:Ui.properties)==null?void 0:va.uuid)}))&&ge!==((gl=Ui==null?void 0:Ui.properties)==null?void 0:gl.uuid)&&Pr.createElement("div",null,Pr.createElement("span",{onClick:()=>{var $o,va,Oa,js;if(!(((va=($o=Cr==null?void 0:Cr.bh)==null?void 0:$o.filter(aa=>{var cl;return(aa==null?void 0:aa.uuid)===((cl=Ui==null?void 0:Ui.properties)==null?void 0:cl.uuid)}))==null?void 0:va.length)>0)){let aa=[];aa.push({name:(Oa=Ui==null?void 0:Ui.properties)==null?void 0:Oa.name,uuid:(js=Ui==null?void 0:Ui.properties)==null?void 0:js.uuid}),wi({bh:[...aa,...Cr==null?void 0:Cr.bh],qx:Cr==null?void 0:Cr.qx,hx:Cr==null?void 0:Cr.hx,gl:Cr==null?void 0:Cr.gl})}},className:li.colortitle,style:{marginRight:"20rem"}},"\u8BBE\u4E3A\u5305\u542B"),Pr.createElement("span",{onClick:()=>{var $o,va,Oa,js;if(!(((va=($o=Cr==null?void 0:Cr.qx)==null?void 0:$o.filter(aa=>{var cl;return(aa==null?void 0:aa.uuid)===((cl=Ui==null?void 0:Ui.properties)==null?void 0:cl.uuid)}))==null?void 0:va.length)>0)){let aa=[];aa.push({name:(Oa=Ui==null?void 0:Ui.properties)==null?void 0:Oa.name,uuid:(js=Ui==null?void 0:Ui.properties)==null?void 0:js.uuid}),wi({qx:[...aa,...Cr==null?void 0:Cr.qx],hx:Cr==null?void 0:Cr.hx,bh:Cr==null?void 0:Cr.bh,gl:Cr==null?void 0:Cr.gl})}},className:li.colortitle},"\u8BBE\u4E3A\u524D\u7F6E"),Pr.createElement("span",{onClick:()=>{var $o,va,Oa,js;if(!(((va=($o=Cr==null?void 0:Cr.hx)==null?void 0:$o.filter(aa=>{var cl;return(aa==null?void 0:aa.uuid)===((cl=Ui==null?void 0:Ui.properties)==null?void 0:cl.uuid)}))==null?void 0:va.length)>0)){let aa=[];aa.push({name:(Oa=Ui==null?void 0:Ui.properties)==null?void 0:Oa.name,uuid:(js=Ui==null?void 0:Ui.properties)==null?void 0:js.uuid}),wi({qx:Cr==null?void 0:Cr.qx,hx:[...aa,...Cr==null?void 0:Cr.hx],bh:Cr==null?void 0:Cr.bh,gl:Cr==null?void 0:Cr.gl})}},style:{margin:"0rem 20rem"},className:li.colortitle},"\u8BBE\u4E3A\u540E\u7F6E"),Pr.createElement("span",{onClick:()=>{var $o,va,Oa,js;if(!(((va=($o=Cr==null?void 0:Cr.gl)==null?void 0:$o.filter(aa=>{var cl;return(aa==null?void 0:aa.uuid)===((cl=Ui==null?void 0:Ui.properties)==null?void 0:cl.uuid)}))==null?void 0:va.length)>0)){let aa=[];aa.push({name:(Oa=Ui==null?void 0:Ui.properties)==null?void 0:Oa.name,uuid:(js=Ui==null?void 0:Ui.properties)==null?void 0:js.uuid}),wi({qx:Cr==null?void 0:Cr.qx,hx:Cr==null?void 0:Cr.hx,gl:[...aa,...Cr==null?void 0:Cr.gl],bh:Cr==null?void 0:Cr.bh})}},className:li.colortitle},"\u8BBE\u4E3A\u5173\u8054")),Pr.createElement("span",{onClick:()=>{var $o;let va=($o=Cr==null?void 0:Cr.bh)==null?void 0:$o.filter(Oa=>{var js;return Oa.uuid!==((js=Ui==null?void 0:Ui.properties)==null?void 0:js.uuid)});wi({bh:va,hx:Cr==null?void 0:Cr.hx,qx:Cr==null?void 0:Cr.qx,gl:Cr==null?void 0:Cr.gl})}},((fu=Cr==null?void 0:Cr.bh)==null?void 0:fu.find($o=>{var va;return($o==null?void 0:$o.uuid)===((va=Ui==null?void 0:Ui.properties)==null?void 0:va.uuid)}))&&"\u53D6\u6D88\u5305\u542B"),Pr.createElement("span",{onClick:()=>{var $o;let va=($o=Cr==null?void 0:Cr.qx)==null?void 0:$o.filter(Oa=>{var js;return Oa.uuid!==((js=Ui==null?void 0:Ui.properties)==null?void 0:js.uuid)});wi({qx:va,hx:Cr==null?void 0:Cr.hx,bh:Cr==null?void 0:Cr.bh,gl:Cr==null?void 0:Cr.gl})}},(($l=Cr==null?void 0:Cr.qx)==null?void 0:$l.find($o=>{var va;return($o==null?void 0:$o.uuid)===((va=Ui==null?void 0:Ui.properties)==null?void 0:va.uuid)}))&&"\u53D6\u6D88\u524D\u7F6E"),Pr.createElement("span",{onClick:()=>{var $o;let va=($o=Cr==null?void 0:Cr.hx)==null?void 0:$o.filter(Oa=>{var js;return Oa.uuid!==((js=Ui==null?void 0:Ui.properties)==null?void 0:js.uuid)});wi({qx:Cr==null?void 0:Cr.qx,hx:va,bh:Cr==null?void 0:Cr.bh,gl:Cr==null?void 0:Cr.gl})}},((Xa=Cr==null?void 0:Cr.hx)==null?void 0:Xa.find($o=>{var va;return($o==null?void 0:$o.uuid)===((va=Ui==null?void 0:Ui.properties)==null?void 0:va.uuid)}))&&"\u53D6\u6D88\u540E\u7F6E"),Pr.createElement("span",{onClick:()=>{var $o;let va=($o=Cr==null?void 0:Cr.gl)==null?void 0:$o.filter(Oa=>{var js;return Oa.uuid!==((js=Ui==null?void 0:Ui.properties)==null?void 0:js.uuid)});wi({qx:Cr==null?void 0:Cr.qx,hx:Cr==null?void 0:Cr.hx,bh:Cr==null?void 0:Cr.bh,gl:va})}},((ms=Cr==null?void 0:Cr.gl)==null?void 0:ms.find($o=>{var va;return($o==null?void 0:$o.uuid)===((va=Ui==null?void 0:Ui.properties)==null?void 0:va.uuid)}))&&"\u53D6\u6D88\u5173\u8054")))}})),Pr.createElement("div",{className:li.right},Pr.createElement("div",{className:li.title},"\u5DF2\u5173\u8054\u5173\u7CFB"),Pr.createElement("div",{style:{padding:"20rem 25rem"}},Pr.createElement("div",{className:li.gxtitle},Pr.createElement("div",{className:li.Colortitle,style:{background:"#6236ff"}}),Pr.createElement("div",null,"\u88AB\u5305\u542B\uFF08",(rt=Cr.bh)==null?void 0:rt.length,"\uFF09")),Pr.createElement("div",{className:li.gxbody},(ot=Cr==null?void 0:Cr.bh)==null?void 0:ot.map(Ui=>Pr.createElement("div",{className:li.tag,style:{background:"#6236ff"}},Pr.createElement("span",{style:{marginRight:"10rem"}},Ui==null?void 0:Ui.name)," ",Pr.createElement(Ca.Z,{onClick:()=>{var fo;let Uo=(fo=Cr==null?void 0:Cr.bh)==null?void 0:fo.filter(pa=>pa.uuid!==Ui.uuid);wi({bh:Uo,hx:Cr==null?void 0:Cr.hx,qx:Cr==null?void 0:Cr.qx,gl:Cr==null?void 0:Cr.gl})}})))),Pr.createElement("div",{className:li.gxtitle,style:{marginTop:"30rem"}},Pr.createElement("div",{className:li.Colortitle,style:{background:"#24A881"}}),Pr.createElement("div",null,"\u524D\u5E8F\uFF08",(pt=Cr.qx)==null?void 0:pt.length,"\uFF09")),Pr.createElement("div",{className:li.gxbody},(yt=Cr==null?void 0:Cr.qx)==null?void 0:yt.map(Ui=>Pr.createElement("div",{className:li.tag,style:{background:"#24A881"}},Pr.createElement("span",{style:{marginRight:"10rem"}},Ui==null?void 0:Ui.name)," ",Pr.createElement(Ca.Z,{onClick:()=>{var fo;let Uo=(fo=Cr==null?void 0:Cr.qx)==null?void 0:fo.filter(pa=>pa.uuid!==Ui.uuid);wi({qx:Uo,hx:Cr==null?void 0:Cr.hx,bh:Cr==null?void 0:Cr.bh,gl:Cr==null?void 0:Cr.gl})}})))),Pr.createElement("div",{className:li.gxtitle,style:{marginTop:"30rem"}},Pr.createElement("div",{className:li.Colortitle,style:{background:"#EC8657"}}),Pr.createElement("div",null,"\u540E\u5E8F\uFF08",(Ct=Cr.hx)==null?void 0:Ct.length,"\uFF09")),Pr.createElement("div",{className:li.gxbody},(zt=Cr==null?void 0:Cr.hx)==null?void 0:zt.map(Ui=>Pr.createElement("div",{className:li.tag,style:{background:"#EC8657"}},Pr.createElement("span",{style:{marginRight:"10rem"}},Ui==null?void 0:Ui.name)," ",Pr.createElement(Ca.Z,{onClick:()=>{var fo;let Uo=(fo=Cr==null?void 0:Cr.hx)==null?void 0:fo.filter(pa=>pa.uuid!==Ui.uuid);wi({qx:Cr==null?void 0:Cr.qx,bh:Cr==null?void 0:Cr.bh,hx:Uo,gl:Cr==null?void 0:Cr.gl})}})))),Pr.createElement("div",{className:li.gxtitle,style:{marginTop:"30rem"}},Pr.createElement("div",{className:li.Colortitle,style:{background:"#497DFF"}}),Pr.createElement("div",null,"\u5173\u8054\uFF08",(Wt=Cr.gl)==null?void 0:Wt.length,"\uFF09")),Pr.createElement("div",{className:li.gxbody},(Ht=Cr==null?void 0:Cr.gl)==null?void 0:Ht.map(Ui=>Pr.createElement("div",{className:li.tag,style:{background:"#497DFF"}},Pr.createElement("span",{style:{marginRight:"10rem"}},Ui==null?void 0:Ui.name)," ",Pr.createElement(Ca.Z,{onClick:()=>{var fo;let Uo=(fo=Cr==null?void 0:Cr.gl)==null?void 0:fo.filter(pa=>pa.uuid!==Ui.uuid);wi({qx:Cr==null?void 0:Cr.qx,bh:Cr==null?void 0:Cr.bh,hx:Cr==null?void 0:Cr.hx,gl:Uo})}}))))))))};var ks=(0,ke.connect)(({pathsDetail:b,user:x,loading:E,globalSetting:z})=>({pathsDetail:b,user:x,globalSetting:z,loading:E.models.index}))(Xs),Ro=Be(89392),pu=Be(73898),ku=Be(60224),Ic=Be(59301),Dh=Object.getOwnPropertySymbols,Uh=Object.prototype.hasOwnProperty,So=Object.prototype.propertyIsEnumerable,su=(b,x)=>{var E={};for(var z in b)Uh.call(b,z)&&x.indexOf(z)<0&&(E[z]=b[z]);if(b!=null&&Dh)for(var z of Dh(b))x.indexOf(z)<0&&So.call(b,z)&&(E[z]=b[z]);return E},Vu=(b,x,E)=>new Promise((z,te)=>{var re=ce=>{try{le(E.next(ce))}catch(ge){te(ge)}},oe=ce=>{try{le(E.throw(ce))}catch(ge){te(ge)}},le=ce=>ce.done?z(ce.value):Promise.resolve(ce.value).then(re,oe);le((E=E.apply(b,x)).next())});const Ih=[3,2,1];let td=null;const vc=b=>{var x=b,{pathsDetail:E,user:z,globalSetting:te,loading:re,dispatch:oe,datas:le,items:ce}=x,ge=su(x,["pathsDetail","user","globalSetting","loading","dispatch","datas","items"]);const Ae=(0,Ge.useRef)(),Me=(0,Ge.useRef)(),Ue=(0,Ge.useRef)(null);(0,Ge.useEffect)(()=>{$e()},[le]),(0,Ge.useEffect)(()=>(window.addEventListener("resize",Xe),()=>{window.removeEventListener("resize",Xe)}),[]);function Xe(){var rt,ot;(ot=(rt=Ae.current)==null?void 0:rt.update)==null||ot.call(rt)}function $e(){return Vu(this,null,function*(){var rt,ot,pt,yt,Ct,zt,Wt,Ht;if(((rt=le==null?void 0:le.nodes)==null?void 0:rt.length)>0){let Qt=(ot=le==null?void 0:le.nodes)==null?void 0:ot.filter(vn=>{var Sn;return ce==null?void 0:ce.includes((Sn=vn==null?void 0:vn.properties)==null?void 0:Sn.uuid)}).map(vn=>{var Sn,kn,Kn,vr,er,Nr,ei,Ar,Sr,Ir,si,Cr;return{rootNodeUuid:(Sn=vn==null?void 0:vn.properties)==null?void 0:Sn.rootNodeUuid,id:((kn=vn==null?void 0:vn.properties)==null?void 0:kn.uuid)+"_",name:(Kn=vn==null?void 0:vn.properties)==null?void 0:Kn.name,description:(vr=vn==null?void 0:vn.properties)==null?void 0:vr.description,nodeType:(er=vn==null?void 0:vn.properties)==null?void 0:er.nodeType,tags:((Nr=vn==null?void 0:vn.properties)==null?void 0:Nr.tags)&&((Sr=(Ar=(ei=vn==null?void 0:vn.properties)==null?void 0:ei.tags)==null?void 0:Ar.split("\uFF0C"))==null?void 0:Sr.map(wi=>({name:wi}))),colorType:parseInt((Ir=vn==null?void 0:vn.properties)==null?void 0:Ir.color)>3?"3":(si=vn==null?void 0:vn.properties)==null?void 0:si.color,activeColor:"#FA6400",size:Ih[((Cr=vn==null?void 0:vn.properties)==null?void 0:Cr.color)-1]||1,shape:"circle",hide:!1,isExtendedState:!0}}),Gt=(zt=(Ct=(yt=(pt=le==null?void 0:le.relationships)==null?void 0:pt.filter(vn=>{var Sn,kn,Kn,vr,er,Nr;return vn.endNodeUuid!==((Kn=(kn=(Sn=le==null?void 0:le.nodes)==null?void 0:Sn[0])==null?void 0:kn.properties)==null?void 0:Kn.rootNodeUuid)&&vn.startNodeUuid!==((Nr=(er=(vr=le==null?void 0:le.nodes)==null?void 0:vr[0])==null?void 0:er.properties)==null?void 0:Nr.rootNodeUuid)}))==null?void 0:yt.filter(vn=>(ce==null?void 0:ce.includes(vn.startNodeUuid))&&(ce==null?void 0:ce.includes(vn.endNodeUuid))))==null?void 0:Ct.filter(vn=>vn.type==="\u5305\u542B"||vn.type==="\u524D\u5E8F"||vn.type==="\u5173\u8054"))==null?void 0:zt.map(vn=>({hide:!1,id:(vn==null?void 0:vn.endNodeUuid)+"_",label:vn==null?void 0:vn.type,props:[],colorType:1,sourceRadius:32,targetRadius:32,source:(vn==null?void 0:vn.startNodeUuid)+"_",target:(vn==null?void 0:vn.endNodeUuid)+"_",value:10}));Ae.current=null,Me.current.innerHTML="",Ae.current=new ku.createContainer({containerName:"#graphRefs",width:((Wt=Me==null?void 0:Me.current)==null?void 0:Wt.clientWidth)||0,height:((Ht=Me==null?void 0:Me.current)==null?void 0:Ht.clientHeight)||0,toolbarData:[],clickToggle:!1,background:"#fff",isShowMask:!1,nodes:Qt,links:Gt,zoomOptions:{minScale:.2,maxScale:5},nodeMouseover:function(vn){return vn},nodeClick:function(vn){var Sn;return(Sn=Ae==null?void 0:Ae.current)==null||Sn.selectToNode(vn.id),vn},layout:{force:!1,x:20,y:60}}),Ae.current.zoomOut()}})}return Ic.createElement("div",{ref:Ue,style:{background:"#fff",height:"455rem"}},Ic.createElement("div",{style:{width:"100%",height:"455rem"},ref:Me,id:"graphRefs"}))};var cs=(0,ke.connect)(({pathsDetail:b,user:x,loading:E,globalSetting:z})=>({pathsDetail:b,user:x,globalSetting:z,loading:E.models.index}))(vc),qc="data:image/png;base64,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",$c="data:image/png;base64,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",eh="data:image/png;base64,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",mc="data:image/png;base64,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",vh=Be(28103),kc=Be(42441),Hc=Be(76411),th=Be(48961),yf=Be(59301),ic=({dataSource:b,height:x,labelTextColor:E})=>{console.log("dataSource:",b);const z=(0,Ge.useRef)(null),te=(0,Ge.useRef)(null),[re,oe]=(0,Ge.useState)({}),[le,ce]=(0,Ge.useState)(""),[ge,Ae]=(0,Ge.useState)(""),Me=b||[{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,Ge.useEffect)(()=>(Xe(),window.addEventListener("resize",Ue),()=>{window.removeEventListener("resize",Ue)}),[]),(0,Ge.useEffect)(()=>{b!=null&&b.length&&Ue()},[b]);const Ue=()=>{var Ct,zt;const Wt=$e(Me,.8);(Ct=te.current)==null||Ct.setOption(Wt),(zt=te.current)==null||zt.resize()},Xe=()=>{const Ct=z.current;te.current=Hc.init(Ct);const zt=$e(Me,.8);oe(zt),te.current.setOption(zt),te.current.getZr().off("mousewheel"),zt.series.push({name:"\u638C\u63E1\u7387",type:"pie",labelLine:{length:10,length2:10},startAngle:-20,clockwise:!1,radius:["20%","50%"],center:["50%","50%"],data:Me,itemStyle:{opacity:0}}),te.current.setOption(zt),yt(te.current)},$e=(Ct,zt)=>{let Wt,Ht=[],Qt=0,Gt=0,vn=0,Sn=[],kn=[],Kn=1-zt;Ct.sort((er,Nr)=>Nr.value-er.value);for(let er=0;erAr.name===er)[0],ei=pt(Nr.value*100,2)+"%";return`${Nr.name} ${ei}`}},labelLine:{show:!0,lineStyle:{color:"#7BC0CB"}},label:{show:!0,position:"outside",rich:{b:{color:E||"#FFF",fontSize:12,lineHeight:20},c:{fontSize:16,lineHeight:24,color:E||"#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:vr,viewControl:{alpha:40,distance:300,rotateSensitivity:0,zoomSensitivity:0,panSensitivity:0,autoRotate:!1}},series:Ht}},rt=(Ct,zt)=>(Ct.sort((Wt,Ht)=>Ht.pieData.value-Wt.pieData.value),zt*25/Ct[0].pieData.value),ot=(Ct,zt,Wt,Ht,Qt,Gt)=>{let vn=(Ct+zt)/2,Sn=Ct*Math.PI*2,kn=zt*Math.PI*2,Kn=vn*Math.PI*2;Ct===0&&zt===1&&(Wt=!1),Qt=typeof Qt!="undefined"?Qt:1/3;let vr=Wt?Math.cos(Kn)*.1:0,er=Wt?Math.sin(Kn)*.1:0,Nr=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(ei,Ar){return eikn?vr+Math.cos(kn)*(1+Math.cos(Ar)*Qt)*Nr:vr+Math.cos(ei)*(1+Math.cos(Ar)*Qt)*Nr},y:function(ei,Ar){return eikn?er+Math.sin(kn)*(1+Math.cos(Ar)*Qt)*Nr:er+Math.sin(ei)*(1+Math.cos(Ar)*Qt)*Nr},z:function(ei,Ar){return ei<-Math.PI*.5?Math.sin(ei):ei>Math.PI*2.5?Math.sin(ei)*Gt*.1:Math.sin(Ar)>0?1*Gt*.1:-1}}},pt=(Ct,zt)=>{let Wt=parseFloat(Ct);if(isNaN(Wt))return!1;Wt=Math.round(Ct*Math.pow(10,zt))/Math.pow(10,zt);let Ht=Wt.toString();Ht.indexOf(".")<0&&(Ht+=".");for(let Gt=Ht.length-Ht.indexOf(".");Gt<=zt;Gt++)Ht+="0";return Ht},yt=()=>{te.current.on("click",function(Ct){if(Ct.seriesName==="pie2d"){ce(Ct.dataIndex);let zt=te.current.getWidth()/2,Wt=te.current.getHeight()/2;te.current.dispatchAction({type:"pieSelect",seriesIndex:0,dataIndex:Ct.dataIndex})}}),te.current.on("mousemove",function(Ct){}),te.current.on("mouseout",function(){te.current.dispatchAction({type:"pieUnSelect",seriesIndex:0,dataIndex:ge}),Ae("")})};return yf.createElement("div",{ref:z,style:{width:"100%",height:x||"500rem"}})};const rg=b=>({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:b}]});var jf=Be(90915),Ll=Be(59301),nh=Object.defineProperty,Fc=Object.getOwnPropertySymbols,Oc=Object.prototype.hasOwnProperty,yc=Object.prototype.propertyIsEnumerable,Nc=(b,x,E)=>x in b?nh(b,x,{enumerable:!0,configurable:!0,writable:!0,value:E}):b[x]=E,Ds=(b,x)=>{for(var E in x||(x={}))Oc.call(x,E)&&Nc(b,E,x[E]);if(Fc)for(var E of Fc(x))yc.call(x,E)&&Nc(b,E,x[E]);return b},Al=(b,x)=>{var E={};for(var z in b)Oc.call(b,z)&&x.indexOf(z)<0&&(E[z]=b[z]);if(b!=null&&Fc)for(var z of Fc(b))x.indexOf(z)<0&&yc.call(b,z)&&(E[z]=b[z]);return E},_c=(b,x,E)=>new Promise((z,te)=>{var re=ce=>{try{le(E.next(ce))}catch(ge){te(ge)}},oe=ce=>{try{le(E.throw(ce))}catch(ge){te(ge)}},le=ce=>ce.done?z(ce.value):Promise.resolve(ce.value).then(re,oe);le((E=E.apply(b,x)).next())});const Du=[{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)"}}],Fu=b=>{var x=b,{pathsDetail:E,user:z,globalSetting:te,loading:re,dispatch:oe,uuid:le}=x,ce=Al(x,["pathsDetail","user","globalSetting","loading","dispatch","uuid"]),ge,Ae,Me,Ue,Xe;let[$e,rt]=(0,Ge.useState)({subject_id:(ge=E==null?void 0:E.detail)==null?void 0:ge.id,course_id:"",parentNodeUuid:le,type:1});const[ot,pt]=(0,Ge.useState)(),[yt,Ct]=(0,Ge.useState)([]),[zt,Wt]=(0,Ge.useState)([]),[Ht]=(0,ke.useSearchParams)();(0,Ge.useEffect)(()=>{Qt()},[le]);function Qt(){return _c(this,null,function*(){var Gt,vn,Sn;let kn=yield(0,ie.ZP)("/api/knowledge/v2/knowledge_statistics.json",{method:"get",params:$e});pt(kn);let Kn=Object.entries((Gt=kn==null?void 0:kn.data)==null?void 0:Gt.study_grasp_hash).map(([er,Nr],ei)=>({name:er,value:Nr,itemStyle:Du[ei].itemStyle})),vr=Object.entries((vn=kn==null?void 0:kn.data)==null?void 0:vn.study_complete_hash).map(([er,Nr],ei)=>({name:er,value:Nr}));Wt(vr),((Sn=Kn==null?void 0:Kn.filter(er=>(er==null?void 0:er.value)>0))==null?void 0:Sn.length)===0?Ct([]):Ct(Kn)})}return Ll.createElement("div",{className:li.DetailStatistics},Ht.get("type")!=="classrooms"&&Ll.createElement("div",{className:li.header},Ll.createElement("span",{className:li.title},"\u7EDF\u8BA1\u8303\u56F4"),Ll.createElement(be.ZP.Group,{onChange:Gt=>{$e.type=Gt.target.value,rt(Ds({},$e)),Qt()},value:$e.type},Ll.createElement(be.ZP,{value:1},"\u5168\u90E8"),Ll.createElement(be.ZP,{value:2},"\u81EA\u4E3B\u5B66\u4E60"),Ll.createElement(be.ZP,{value:3},"\u8BFE\u5802\u5B66\u4E60")),($e==null?void 0:$e.type)===3&&Ll.createElement(ui.default,{onChange:Gt=>{$e.course_id=Gt,rt(Ds({},$e)),Qt()},style:{marginLeft:"-15rem",width:"148rem",height:"36rem"}},(Ae=ot==null?void 0:ot.courses)==null?void 0:Ae.map(Gt=>Ll.createElement(ui.default.Option,{value:Gt==null?void 0:Gt.id},Gt==null?void 0:Gt.name)))),Ll.createElement("div",{style:{marginTop:"16rem",display:"flex"}},Ll.createElement("div",{className:li.left,style:{backgroundImage:`url(${qc}),linear-gradient(180deg, rgba(221, 233, 241, 0.4) 0%, rgba(255, 255, 255, 0.49) 100%)`}},Ll.createElement("img",{src:$c}),Ll.createElement("div",{style:{marginTop:"20rem"}},Ll.createElement("div",{className:li.xxrs},"\u5B66\u4E60\u4EBA\u6570"),Ll.createElement("div",{className:li.xxrscount},(Me=ot==null?void 0:ot.data)==null?void 0:Me.study_count))),Ll.createElement("div",{className:li.right},Ll.createElement("div",{className:li.righttop},Ll.createElement("img",{src:eh}),Ll.createElement("div",null,Ll.createElement("div",{className:li.xxrs},"\u5B66\u4E60\u5B8C\u6210\u7387"),Ll.createElement("div",{className:li.xxrscount},(Ue=ot==null?void 0:ot.data)==null?void 0:Ue.study_complete_rate,"%"))),Ll.createElement("div",{className:li.rightbottom},Ll.createElement("img",{src:mc}),Ll.createElement("div",null,Ll.createElement("div",{className:li.xxrs},"\u5B66\u4E60\u638C\u63E1\u7387"),Ll.createElement("div",{className:li.xxrscount},(Xe=ot==null?void 0:ot.data)==null?void 0:Xe.study_grasp_rate,"%"))))),Ll.createElement(vh.Z,{variant:"dashed",style:{borderColor:"#333333"},dashed:!0},"\u5B8C\u6210\u5360\u6BD4\u60C5\u51B5"),Ll.createElement(kc.Z,{option:rg(zt),style:{height:300,width:400},opts:{renderer:"svg"}}),Ll.createElement(vh.Z,{variant:"dashed",style:{borderColor:"#333333"},dashed:!0},"\u638C\u63A7\u7387"),(yt==null?void 0:yt.length)>0?Ll.createElement(ic,{labelTextColor:"#333",dataSource:yt}):Ll.createElement(jf.NoData,{children:Ll.createElement("div",{style:{textAlign:"center",fontSize:"14rem"}},"\u6682\u65E0\u638C\u63A7\u7387\u6570\u636E")}))};var du=(0,ke.connect)(({pathsDetail:b,user:x,loading:E,globalSetting:z})=>({pathsDetail:b,user:x,globalSetting:z,loading:E.models.index}))(Fu),Ws=Be(59301),Ku=Object.defineProperty,xu=Object.getOwnPropertySymbols,Bd=Object.prototype.hasOwnProperty,Iu=Object.prototype.propertyIsEnumerable,Eu=(b,x,E)=>x in b?Ku(b,x,{enumerable:!0,configurable:!0,writable:!0,value:E}):b[x]=E,zc=(b,x)=>{for(var E in x||(x={}))Bd.call(x,E)&&Eu(b,E,x[E]);if(xu)for(var E of xu(x))Iu.call(x,E)&&Eu(b,E,x[E]);return b},md=(b,x)=>{var E={};for(var z in b)Bd.call(b,z)&&x.indexOf(z)<0&&(E[z]=b[z]);if(b!=null&&xu)for(var z of xu(b))x.indexOf(z)<0&&Iu.call(b,z)&&(E[z]=b[z]);return E},ig=(b,x,E)=>new Promise((z,te)=>{var re=ce=>{try{le(E.next(ce))}catch(ge){te(ge)}},oe=ce=>{try{le(E.throw(ce))}catch(ge){te(ge)}},le=ce=>ce.done?z(ce.value):Promise.resolve(ce.value).then(re,oe);le((E=E.apply(b,x)).next())});const Ta=[{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)"}}],mh=b=>{var x=b,{pathsDetail:E,user:z,globalSetting:te,loading:re,dispatch:oe,uuid:le}=x,ce=md(x,["pathsDetail","user","globalSetting","loading","dispatch","uuid"]),ge,Ae,Me,Ue,Xe;let[$e,rt]=(0,Ge.useState)({subject_id:(ge=E==null?void 0:E.detail)==null?void 0:ge.id,course_id:"",parentNodeUuid:le,type:1});const[ot,pt]=(0,Ge.useState)(),[yt,Ct]=(0,Ge.useState)([]),[zt]=(0,ke.useSearchParams)(),[Wt,Ht]=(0,Ge.useState)([]);(0,Ge.useEffect)(()=>{Qt()},[le]);function Qt(){return ig(this,null,function*(){var Gt,vn,Sn;let kn=yield(0,ie.ZP)("/api/knowledge/v2/knowledge_statistics.json",{method:"get",params:$e});pt(kn);let Kn=Object.entries((Gt=kn==null?void 0:kn.data)==null?void 0:Gt.study_grasp_hash).map(([er,Nr],ei)=>({name:er,value:Nr,itemStyle:Ta[ei].itemStyle})),vr=Object.entries((vn=kn==null?void 0:kn.data)==null?void 0:vn.study_complete_hash).map(([er,Nr],ei)=>({name:er,value:Nr}));Ht(vr),((Sn=Kn==null?void 0:Kn.filter(er=>(er==null?void 0:er.value)>0))==null?void 0:Sn.length)===0?Ct([]):Ct(Kn)})}return Ws.createElement("div",{className:li.DetailStatistics},zt.get("type")!=="classrooms"&&Ws.createElement("div",{className:li.header},Ws.createElement("span",{className:li.title},"\u7EDF\u8BA1\u8303\u56F4"),Ws.createElement(be.ZP.Group,{onChange:Gt=>{$e.type=Gt.target.value,rt(zc({},$e)),Qt()},value:$e.type},Ws.createElement(be.ZP,{value:1},"\u5168\u90E8"),Ws.createElement(be.ZP,{value:2},"\u81EA\u4E3B\u5B66\u4E60"),Ws.createElement(be.ZP,{value:3},"\u8BFE\u5802\u5B66\u4E60")),($e==null?void 0:$e.type)===3&&Ws.createElement(ui.default,{onChange:Gt=>{$e.course_id=Gt,rt(zc({},$e)),Qt()},style:{marginLeft:"-15rem",width:"148rem",height:"36rem"}},(Ae=ot==null?void 0:ot.courses)==null?void 0:Ae.map(Gt=>Ws.createElement(ui.default.Option,{value:Gt==null?void 0:Gt.id},Gt==null?void 0:Gt.name)))),Ws.createElement("div",{style:{marginTop:"16rem",display:"flex"}},Ws.createElement("div",{className:li.left,style:{backgroundImage:`url(${qc}),linear-gradient(180deg, rgba(221, 233, 241, 0.4) 0%, rgba(255, 255, 255, 0.49) 100%)`}},Ws.createElement("img",{src:$c}),Ws.createElement("div",{style:{marginTop:"20rem"}},Ws.createElement("div",{className:li.xxrs},"\u5B66\u4E60\u4EBA\u6570"),Ws.createElement("div",{className:li.xxrscount},(Me=ot==null?void 0:ot.data)==null?void 0:Me.study_count))),Ws.createElement("div",{className:li.right},Ws.createElement("div",{className:li.righttop},Ws.createElement("img",{src:eh}),Ws.createElement("div",null,Ws.createElement("div",{className:li.xxrs},"\u5B66\u4E60\u5B8C\u6210\u7387"),Ws.createElement("div",{className:li.xxrscount},(Ue=ot==null?void 0:ot.data)==null?void 0:Ue.study_complete_rate,"%"))),Ws.createElement("div",{className:li.rightbottom},Ws.createElement("img",{src:mc}),Ws.createElement("div",null,Ws.createElement("div",{className:li.xxrs},"\u5B66\u4E60\u638C\u63E1\u7387"),Ws.createElement("div",{className:li.xxrscount},(Xe=ot==null?void 0:ot.data)==null?void 0:Xe.study_grasp_rate,"%"))))),Ws.createElement(vh.Z,{variant:"dashed",style:{borderColor:"#333333"},dashed:!0},"\u5B8C\u6210\u5360\u6BD4\u60C5\u51B5"),Ws.createElement(kc.Z,{option:rg(Wt),style:{height:300,width:400},opts:{renderer:"svg"}}),Ws.createElement(vh.Z,{variant:"dashed",style:{borderColor:"#333333"},dashed:!0},"\u638C\u63A7\u7387"),(yt==null?void 0:yt.length)>0?Ws.createElement(ic,{labelTextColor:"#333",dataSource:yt}):Ws.createElement(ji.Z,{children:Ws.createElement("div",{style:{textAlign:"center",fontSize:"14rem"}},"\u6682\u65E0\u638C\u63A7\u7387\u6570\u636E")}))};var cr=(0,ke.connect)(({pathsDetail:b,user:x,loading:E,globalSetting:z})=>({pathsDetail:b,user:x,globalSetting:z,loading:E.models.index}))(mh),Ci=Be(90853),og="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAAAXNSR0IArs4c6QAAAXlJREFUOE/VlD1Lw1AUhp+YmkGQSnFR8AcUoSJ+LiKCqINQqIODbk51ETpaVHTyD6h/QQddXMRNRal1qLaDOhSFQicdiiKUNrkSmzQxH6WCg2a6Iec+7z3ve24kIYTMLz7SPwSmozPI2h6InroTkqQvywjOQNlm4PDczyV3yxfDT4AFa97fAmhxN/C0u9o8w6wUtYUkFdzAk1CVyC4E+x3cr7YBY7NTtZSB7DLewKF9Xa4xwAnUfU7P+wBHjjy6dgqY77a2r2MG8GV9CaQdhAhYJI8NnuYqEBgFqQ1SswawmEiCttnQIxfMdmKlD5QIXE0ZwMJKGPUjV0uqyYzNbPR6OQTBRbgct3mYX7hDiN46zr7BHq6fYGccUlEb8GFuDaFuuKbCNwtDURgFHdOQTdqA97Ewlfec75xZ99DbE6ULno8dY5MZs9r2mV/fbPQPr3kH8GZwFVXd+lE4doXyW/H7TbmdaKf0eIBWmQRamszbLNOQWxN//wf7CYUnn95U81GtAAAAAElFTkSuQmCC",ag=Be(30897),oo=Be(59301),Xd=Object.defineProperty,Qd=Object.defineProperties,Op=Object.getOwnPropertyDescriptors,Ug=Object.getOwnPropertySymbols,_u=Object.prototype.hasOwnProperty,gs=Object.prototype.propertyIsEnumerable,hc=(b,x,E)=>x in b?Xd(b,x,{enumerable:!0,configurable:!0,writable:!0,value:E}):b[x]=E,zu=(b,x)=>{for(var E in x||(x={}))_u.call(x,E)&&hc(b,E,x[E]);if(Ug)for(var E of Ug(x))gs.call(x,E)&&hc(b,E,x[E]);return b},lu=(b,x)=>Qd(b,Op(x)),Us=(b,x,E)=>new Promise((z,te)=>{var re=ce=>{try{le(E.next(ce))}catch(ge){te(ge)}},oe=ce=>{try{le(E.throw(ce))}catch(ge){te(ge)}},le=ce=>ce.done?z(ce.value):Promise.resolve(ce.value).then(re,oe);le((E=E.apply(b,x)).next())});const oc=[{name:"\u57FA\u672C\u4FE1\u606F",key:1},{name:"\u5B66\u4E60\u7EDF\u8BA1",key:3}];let cn=[{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}],En=[{name:"\u7AE0\u8282",id:"zj",item_type:1},{name:"\u77E5\u8BC6\u70B9",id:"zsd",item_type:1}];const Ln=({pathsDetail:b,user:x,globalSetting:E,loading:z,dispatch:te,items:re,showdetail:oe,setshowdetail:le,containerRef:ce,getData:ge,setshow:Ae,Tabsdatas:Me,uuid:Ue,tpacti:Xe,initdata:$e})=>{var rt,ot,pt,yt,Ct,zt,Wt,Ht,Qt,Gt,vn,Sn,kn,Kn,vr,er,Nr,ei,Ar,Sr,Ir,si,Cr,wi,Mo,Po,eo,Ui,fo,Uo,pa,Ga,kl,al,Fa,tl,Ps,rl;const[gl,fu]=(0,Ge.useState)(0),[$l]=Ie.default.useForm(),[Xa,ms]=(0,Ge.useState)({});let[$o,va]=(0,Ge.useState)(!1);const[Oa,js]=(0,Ge.useState)(!1),[aa,cl]=(0,Ge.useState)("1"),[Hs,Gu]=(0,Ge.useState)([]),[hu,bu]=(0,Ge.useState)(1),[Pu,gu]=(0,Ge.useState)(2),[Qc,Dp]=(0,Ge.useState)(2),[Ip,Mc]=(0,Ge.useState)(),[ch,jg]=(0,Ge.useState)();let[Ea,Os]=(0,Ge.useState)([]);const[Fl,Pl]=(0,Ge.useState)({}),[Ml,Nd]=(0,Ge.useState)(!1),[wv,mm]=(0,Ge.useState)(""),[u1,aA]=(0,Ge.useState)([]),[Nx]=(0,ke.useSearchParams)(),[$S,i0]=(0,Ge.useState)(!1),[c1,ap]=(0,Ge.useState)([]),[O0,pc]=(0,Ge.useState)([]),[Hu,Lc]=(0,Ge.useState)([]);let[$h,us]=(0,Ge.useState)({tags:[],tagszy:[],tagslx:[]});const[gf,sp]=(0,Ge.useState)([{label:"\u5B9E\u8BAD",children:oo.createElement(Gl,{getother:ym,types:"1",ktzykey:aa,onChange:no=>{Gu(no)}}),key:"1"},{label:"\u89C6\u9891",children:oo.createElement(Gl,{getother:ym,types:"2",ktzykey:aa,onChange:no=>{Gu(no)}}),key:"2"},{label:"\u8BFE\u4EF6",children:oo.createElement(Gl,{getother:ym,types:"3",ktzykey:aa,onChange:no=>{Gu(no)}}),key:"3"},{label:"\u8BD5\u5377",children:oo.createElement(Gl,{getother:ym,types:"4",ktzykey:aa,onChange:no=>{Gu(no)}}),key:"4"}].filter(no=>!!no));let[zf,dy]=(0,Ge.useState)([]),[Bx,sA]=(0,Ge.useState)([]);const[JL,x2]=(0,Ge.useState)(0),[qL,E2]=(0,Ge.useState)(0),[N0,$L]=(0,Ge.useState)([]),[sl,B0]=(0,Ge.useState)({bh:[],qx:[],hx:[],gl:[]}),eT=no=>te({type:"userDetail/logWatchHistory",payload:zu({},no)}),tT={maxCount:1,fileList:Ea,accept:((ot=(rt=Xa==null?void 0:Xa.label)==null?void 0:rt[0])==null?void 0:ot.name)==="\u89C6\u9891"?".mp4":"",withCredentials:!0,beforeUpload:no=>{var nl,eu;if(!(no.type==="video/mp4")&&((eu=(nl=Xa==null?void 0:Xa.label)==null?void 0:nl[0])==null?void 0:eu.name)==="\u89C6\u9891")return Ze.ZP.error("\u53EA\u80FD\u4E0A\u4F20\u89C6\u9891"),qa.default.LIST_IGNORE},action:`${qt.Z.API_SERVER}/api/attachments.json`,onChange:no=>{Os(no==null?void 0:no.fileList)}};function nT(){return Us(this,null,function*(){var no,nl,eu,Ql,Gc;let Ru=yield(0,ie.ZP)("/api/knowledge/v2/get_node.json",{method:"get",params:{depth:1,subject_id:b.detail.id}});if((Ru==null?void 0:Ru.status)===0){x2(Ue);const Rc=[...(Gc=(Ql=(no=Ru==null?void 0:Ru.data)==null?void 0:no.nodes)==null?void 0:Ql.splice(1,(eu=(nl=Ru==null?void 0:Ru.data)==null?void 0:nl.nodes)==null?void 0:eu.length))==null?void 0:Gc.map(Wh=>{var Yd,R0,xm;return zu({label:(Yd=Wh==null?void 0:Wh.properties)==null?void 0:Yd.name,children:oo.createElement(ks,{onChange:ew=>{sessionStorage.setItem("typesdatajsoncopy",JSON.stringify(ew))},itemsuuid:re==null?void 0:re.uuid,uuid:(R0=Wh==null?void 0:Wh.properties)==null?void 0:R0.uuid,typesdata:sl}),key:(xm=Wh==null?void 0:Wh.properties)==null?void 0:xm.uuid},Wh)})];zf=Rc,dy(Rc),sessionStorage.setItem("typesdatajson",JSON.stringify(sl)),sessionStorage.setItem("typesdatajsoncopy",JSON.stringify(sl)),va(!0)}})}function h1(){return Us(this,null,function*(){var no,nl,eu;let Ql=yield(0,ie.ZP)("/api/knowledge_items.json",{method:"get",params:{item_type:3,subject_id:(no=b==null?void 0:b.detail)==null?void 0:no.id}});(Ql==null?void 0:Ql.status)===0&&($h.tags=Ql==null?void 0:Ql.data,us(zu({},$h)));let Gc=yield(0,ie.ZP)("/api/knowledge_items.json",{method:"get",params:{item_type:5,subject_id:(nl=b==null?void 0:b.detail)==null?void 0:nl.id}});(Gc==null?void 0:Gc.status)===0&&($h.tagszy=[...cn,...Gc==null?void 0:Gc.data2],$h.tagslx=[...En,...Gc==null?void 0:Gc.data],us(zu({},$h)));let Ru=yield(0,ie.ZP)("/api/knowledge/v2/get_container_type.json",{method:"get",params:{url:re==null?void 0:re.resourceUrl,item_banks_group_ids:re==null?void 0:re.itemBanksGroupIds}});if(mm(""),Lc([]),localStorage.setItem("container_type_tupu",Ru==null?void 0:Ru.container_type),(re==null?void 0:re.nodeType)==="\u89C6\u9891"&&(((eu=Ru==null?void 0:Ru.attachment)==null?void 0:eu.file_type)==="video"||(Ru==null?void 0:Ru.container_type)==="video")&&mm(Ru==null?void 0:Ru.id),(re==null?void 0:re.resourceOrigin)===1&&(re==null?void 0:re.nodeType)!=="\u9898\u96C6"){let Rc={url:re==null?void 0:re.resourceUrl,name:Ru==null?void 0:Ru.name,id:Ru==null?void 0:Ru.examination_bank_id};Gu([Rc])}(re==null?void 0:re.resourceOrigin)===1&&(re==null?void 0:re.nodeType)==="\u9898\u96C6"&&Lc(Ru==null?void 0:Ru.item_banks_groups),(re==null?void 0:re.resourceOrigin)===2&&Os([{uid:"123",name:Ru==null?void 0:Ru.name,response:{id:"123",url:re==null?void 0:re.resourceUrl}}])})}function ym(no){return Us(this,null,function*(){var nl,eu;let Ql=yield(0,ie.ZP)("/api/knowledge/v2/get_container_type.json",{method:"get",params:{url:no}});(Ql==null?void 0:Ql.status)===0&&((Ql==null?void 0:Ql.container_type)==="att"?Pl({url:qt.Z.API_SERVER+((nl=Ql==null?void 0:Ql.attachment)==null?void 0:nl.url),file_type:(eu=Ql==null?void 0:Ql.attachment)==null?void 0:eu.file_type}):window.open(no))})}function kX(){return Us(this,null,function*(){let no=yield(0,ie.ZP)("/api/knowledge/v2/item_bank_groups.json",{method:"get",params:{subject_id:b.detail.id}});(no==null?void 0:no.status)===0&&ap(no==null?void 0:no.data)})}function FX(){return Us(this,null,function*(){var no,nl,eu,Ql,Gc,Ru;let Rc=yield(0,ie.ZP)("/api/knowledge/v2/get_node_detail.json",{method:"get",params:{nodeUuid:(re==null?void 0:re.keys)||(re==null?void 0:re.id),parentNodeUuids:Me==null?void 0:Me.map(Wh=>Wh==null?void 0:Wh.uuid).join(),depth:1,relationshipFilter:">",subgraphDepth:"-1",subgraphRelationshipFilter:"\u5305\u542B>",subject_id:b.detail.id}});if((Rc==null?void 0:Rc.status)===0){$L((no=Rc==null?void 0:Rc.data)==null?void 0:no.nodes),Mc((eu=(nl=Rc==null?void 0:Rc.data)==null?void 0:nl.nodes)==null?void 0:eu.filter(Yd=>{var R0;return((R0=Yd==null?void 0:Yd.properties)==null?void 0:R0.uuid)===(re==null?void 0:re.keys)||(re==null?void 0:re.id)})),jg((Ql=Rc==null?void 0:Rc.data)==null?void 0:Ql.relationships);const Wh=[...(Ru=(Gc=Rc==null?void 0:Rc.data)==null?void 0:Gc.graphNodeMappings)==null?void 0:Ru.map((Yd,R0)=>{var xm;return{label:`${Yd==null?void 0:Yd.parentNodeName}\uFF08${(xm=Yd==null?void 0:Yd.childNodeUuids)==null?void 0:xm.length}\uFF09`,children:oo.createElement(cs,{datas:Rc==null?void 0:Rc.data,items:Yd==null?void 0:Yd.childNodeUuids}),key:R0}})];E2(0),Bx=Wh,sA(Wh)}})}return(0,Ge.useEffect)(()=>{oe&&(FX(),h1())},[oe,re]),oo.createElement(nn,null,oo.createElement("div",null,oe&&oo.createElement(Go.Z,{open:oe,width:"700rem",mask:!1,closable:!1,rootClassName:li.drawer,destroyOnClose:!0,getContainer:()=>ce.current,onCancel:()=>{le(!1),mm("")}},oo.createElement("div",{className:li.detailmodal},oo.createElement("div",null,oo.createElement("span",{className:li.title},"\u8282\u70B9\u8BE6\u60C5"),((pt=b==null?void 0:b.detail)==null?void 0:pt.edit_of_subject_knowledge)&&Ue!=="\u5B66\u4E60\u8DEF\u5F84"&&(re==null?void 0:re.colorType)!=="1"&&oo.createElement("i",{className:"iconfont icon-bianji-moren",onClick:()=>Us(void 0,null,function*(){var no,nl,eu,Ql,Gc,Ru,Rc,Wh,Yd,R0;fu(3),le(!1);let xm={name:re.name,description:re.description,label:((nl=(no=Ip==null?void 0:Ip[0])==null?void 0:no.labels)==null?void 0:nl[1])==="\u8D44\u6E90"?(eu=$h==null?void 0:$h.tagszy)==null?void 0:eu.filter(ll=>(ll==null?void 0:ll.name)===(re==null?void 0:re.nodeType)):(Ql=$h==null?void 0:$h.tagslx)==null?void 0:Ql.filter(ll=>(ll==null?void 0:ll.name)===(re==null?void 0:re.nodeType)),tag:(Gc=$h==null?void 0:$h.tags)==null?void 0:Gc.filter(ll=>{var pf,vf;return(vf=(pf=re==null?void 0:re.tags)==null?void 0:pf.map(mf=>mf==null?void 0:mf.name))==null?void 0:vf.includes(ll==null?void 0:ll.name)}),resourceOrigin:re.resourceOrigin,url:(re==null?void 0:re.resourceOrigin)===3?re==null?void 0:re.resourceUrl:""},ew=(Ru=ch==null?void 0:ch.filter(ll=>(ll==null?void 0:ll.type)==="\u88AB\u5305\u542B"&&(ll==null?void 0:ll.startNodeUuid)===((re==null?void 0:re.keys)||(re==null?void 0:re.id))))==null?void 0:Ru.map(ll=>{var pf,vf;return{uuid:ll==null?void 0:ll.endNodeUuid,name:(vf=(pf=N0==null?void 0:N0.find(mf=>{var Wg;return((Wg=mf==null?void 0:mf.properties)==null?void 0:Wg.uuid)===(ll==null?void 0:ll.endNodeUuid)}))==null?void 0:pf.properties)==null?void 0:vf.name}}),rT=(Rc=ch==null?void 0:ch.filter(ll=>(ll==null?void 0:ll.type)==="\u5305\u542B"&&(ll==null?void 0:ll.startNodeUuid)===((re==null?void 0:re.keys)||(re==null?void 0:re.id))))==null?void 0:Rc.map(ll=>{var pf,vf;return{uuid:ll==null?void 0:ll.endNodeUuid,name:(vf=(pf=N0==null?void 0:N0.find(mf=>{var Wg;return((Wg=mf==null?void 0:mf.properties)==null?void 0:Wg.uuid)===(ll==null?void 0:ll.endNodeUuid)}))==null?void 0:pf.properties)==null?void 0:vf.name}});aA(rT);let iT=(Wh=ch==null?void 0:ch.filter(ll=>(ll==null?void 0:ll.type)==="\u524D\u5E8F"&&(ll==null?void 0:ll.startNodeUuid)===((re==null?void 0:re.keys)||(re==null?void 0:re.id))))==null?void 0:Wh.map(ll=>{var pf,vf;return{uuid:ll==null?void 0:ll.endNodeUuid,name:(vf=(pf=N0==null?void 0:N0.find(mf=>{var Wg;return((Wg=mf==null?void 0:mf.properties)==null?void 0:Wg.uuid)===(ll==null?void 0:ll.endNodeUuid)}))==null?void 0:pf.properties)==null?void 0:vf.name}}),oT=(Yd=ch==null?void 0:ch.filter(ll=>(ll==null?void 0:ll.type)==="\u540E\u5E8F"&&(ll==null?void 0:ll.startNodeUuid)===((re==null?void 0:re.keys)||(re==null?void 0:re.id))))==null?void 0:Yd.map(ll=>{var pf,vf;return{uuid:ll==null?void 0:ll.endNodeUuid,name:(vf=(pf=N0==null?void 0:N0.find(mf=>{var Wg;return((Wg=mf==null?void 0:mf.properties)==null?void 0:Wg.uuid)===(ll==null?void 0:ll.endNodeUuid)}))==null?void 0:pf.properties)==null?void 0:vf.name}}),aT=(R0=ch==null?void 0:ch.filter(ll=>((ll==null?void 0:ll.type)==="\u5173\u8054"||(ll==null?void 0:ll.type)==="\u88AB\u5173\u8054")&&(ll==null?void 0:ll.startNodeUuid)===((re==null?void 0:re.keys)||(re==null?void 0:re.id))))==null?void 0:R0.map(ll=>{var pf,vf;return{uuid:ll==null?void 0:ll.endNodeUuid,name:(vf=(pf=N0==null?void 0:N0.find(mf=>{var Wg;return((Wg=mf==null?void 0:mf.properties)==null?void 0:Wg.uuid)===(ll==null?void 0:ll.endNodeUuid)}))==null?void 0:pf.properties)==null?void 0:vf.name}});B0({bh:ew,qx:iT,hx:oT,gl:aT}),$l.setFieldsValue(xm),ms(xm)}),style:{color:"#1B8565",marginLeft:10,cursor:"pointer"}})),oo.createElement("div",{style:{display:"flex",alignItems:"center"}},(re==null?void 0:re.colorType)!=="1"&&((yt=b==null?void 0:b.detail)==null?void 0:yt.edit_of_subject_knowledge)&&Ue!=="\u5B66\u4E60\u8DEF\u5F84"&&oo.createElement(we.ZP,{type:"primary",className:li.button,onClick:(0,Ro.debounce)(()=>Us(void 0,null,function*(){var no,nl,eu;let Ql=yield(0,ie.ZP)("/api/knowledge/v2/get_node.json",{method:"get",params:{nodeUuid:(re==null?void 0:re.keys)||(re==null?void 0:re.id),subject_id:(no=b==null?void 0:b.detail)==null?void 0:no.id,depth:1,relationshipFilter:"\u88AB\u5305\u542B>"}});if((Ql==null?void 0:Ql.status)===0){let Gc=(eu=(nl=Ql==null?void 0:Ql.data)==null?void 0:nl.nodes)==null?void 0:eu.filter(Rc=>{var Wh;return((Wh=Rc==null?void 0:Rc.properties)==null?void 0:Wh.uuid)!==((re==null?void 0:re.keys)||(re==null?void 0:re.id))}),Ru=Gc==null?void 0:Gc.map(Rc=>{var Wh,Yd;return{name:(Wh=Rc==null?void 0:Rc.properties)==null?void 0:Wh.name,uuid:(Yd=Rc==null?void 0:Rc.properties)==null?void 0:Yd.uuid}});sl.bh=Ru,B0(sl),fu(1),le(!1),Gu([]),Lc([]),Os([])}}),500)},"\u589E\u52A0\u540C\u7EA7\u8282\u70B9"),((Ct=b==null?void 0:b.detail)==null?void 0:Ct.edit_of_subject_knowledge)&&Ue!=="\u5B66\u4E60\u8DEF\u5F84"&&oo.createElement(we.ZP,{type:"primary",className:li.button,onClick:()=>{var no,nl;((nl=(no=sl==null?void 0:sl.bh)==null?void 0:no.filter(eu=>(eu==null?void 0:eu.uuid)===(re==null?void 0:re.id)))==null?void 0:nl.length)>0||sl.bh.push({name:re==null?void 0:re.name,uuid:(re==null?void 0:re.keys)||(re==null?void 0:re.id)}),fu(2),le(!1),Gu([]),Lc([]),Os([])}},"\u589E\u52A0\u5B50\u7EA7\u8282\u70B9"),((zt=b==null?void 0:b.detail)==null?void 0:zt.edit_of_subject_knowledge)&&Ue!=="\u5B66\u4E60\u8DEF\u5F84"&&oo.createElement(we.ZP,{className:li.button,onClick:()=>{let no="";Oe.default.confirm({title:"\u63D0\u793A",icon:null,centered:!0,getContainer:ce.current,content:oo.createElement("div",null,oo.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",oo.createElement("span",{style:{color:"red"}},"\u201C\u786E\u8BA4\u5220\u9664\u201D")),oo.createElement(je.default,{onChange:nl=>{no=nl.target.value}})),onOk:()=>Us(void 0,null,function*(){var nl,eu,Ql;if(no!=="\u786E\u8BA4\u5220\u9664")return Ze.ZP.info("\u8BF7\u8F93\u5165\u786E\u8BA4\u5220\u9664"),Promise.reject();if(no==="\u786E\u8BA4\u5220\u9664"){let Gc=yield(0,ie.ZP)("/api/knowledge/v2/del_node.json",{method:"post",body:{uuid:(re==null?void 0:re.keys)||(re==null?void 0:re.id),subject_id:(nl=b==null?void 0:b.detail)==null?void 0:nl.id}});(Gc==null?void 0:Gc.status)===0&&(Ze.ZP.info("\u5220\u9664\u6210\u529F"),Nx.get("type")==="classrooms"?te({type:"pathsDetail/getCourseDetail",payload:zu({id:(eu=b==null?void 0:b.detail)==null?void 0:eu.id,knowledge:!0},(0,Yt.oP)())}):te({type:"pathsDetail/getPathsDetail",payload:zu({id:(Ql=b==null?void 0:b.detail)==null?void 0:Ql.id,knowledge:!0},(0,Yt.oP)())}),(re==null?void 0:re.colorType)!=="1"?(Ae(!1),ge()):$e(),le(!1))}})})}},"\u5220\u9664\u8282\u70B9"),((Wt=b==null?void 0:b.detail)==null?void 0:Wt.edit_of_subject_knowledge)&&Ue==="\u5B66\u4E60\u8DEF\u5F84"&&Nx.get("type")==="classrooms"&&oo.createElement(we.ZP,{type:"primary",className:li.button,onClick:()=>{Oe.default.confirm({title:"\u63D0\u793A",icon:null,centered:!0,getContainer:ce.current,okText:"\u786E\u8BA4\u540C\u6B65",content:oo.createElement("div",null,"\u8BE5\u8282\u70B9\u4E0B\u5171",oo.createElement("span",{className:"c-light-primary"},re==null?void 0:re.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:()=>Us(void 0,null,function*(){var no;const nl=yield(0,ie.ZP)("/api/subject_knowledge/send_to_course",{method:"post",body:{id:re==null?void 0:re.resourceid,subject_id:(no=b==null?void 0:b.detail)==null?void 0:no.id}});(nl==null?void 0:nl.status)===0&&Ze.ZP.success("\u64CD\u4F5C\u6210\u529F")})})}},"\u540C\u6B65\u8D44\u6E90\u5230\u8BFE\u5802"),oo.createElement(Ca.Z,{onClick:()=>{le(!1)},style:{marginLeft:"10rem",fontSize:"16rem",color:"#979797"}}))),oo.createElement("div",{className:li.tabstyle},oc==null?void 0:oc.map(no=>oo.createElement("div",{onClick:()=>{bu(no.key)},className:hu===(no==null?void 0:no.key)?li.itemsactivite:li.items},no==null?void 0:no.name))),hu===1&&oo.createElement("div",null,oo.createElement("div",{className:li.nodetitle},Pu===1&&oo.createElement(Za.Z,{onClick:()=>gu(2)}),Pu===2&&oo.createElement(lo.Z,{onClick:()=>gu(1)}),oo.createElement("span",{style:{marginLeft:"10rem",fontSize:"16rem",color:"#1B8565"}},"\u8282\u70B9\u5C5E\u6027")),Pu===2&&oo.createElement("div",{className:li.nodeboyd},oo.createElement("div",{className:li.listitem,style:{marginTop:"0rem"}},oo.createElement("label",null,"\u8282\u70B9\u540D\u79F0"),oo.createElement("span",null,re==null?void 0:re.name)),oo.createElement("div",{className:li.listitem},oo.createElement("label",null,"\u8282\u70B9\u7B80\u4ECB"),oo.createElement("span",null,(re==null?void 0:re.description)||"\u6682\u65E0")),oo.createElement("div",{className:li.listitem},oo.createElement("label",null,"\u8282\u70B9\u7C7B\u578B"),oo.createElement("div",null,(re==null?void 0:re.nodeType)&&oo.createElement(la,{containerRef:ce,type:5,value:[{name:re==null?void 0:re.nodeType}],pathsDetail:b,showmodal:!1,dataSources:[]})," ")),oo.createElement("div",{className:li.listitem},oo.createElement("label",null,"\u8282\u70B9\u6807\u7B7E"),oo.createElement("span",null,((Ht=re==null?void 0:re.tags)==null?void 0:Ht.length)>0&&oo.createElement(la,{containerRef:ce,type:5,pathsDetail:b,value:re==null?void 0:re.tags,showmodal:!1,dataSources:[]}))),(re==null?void 0:re.nodeType)==="\u89C6\u9891"&&(re==null?void 0:re.resourceOrigin)!==3&&wv&&oo.createElement("div",{style:{height:"300rem",marginTop:"20rem"}},oo.createElement(Ri.Z,{allow_skip:!0,videoId:wv,toLog:!0,src:re==null?void 0:re.resourceUrl,logWatchHistory:no=>eT(lu(zu({},no),{container_type:localStorage.getItem("container_type_tupu")}))})),(re==null?void 0:re.resourceOrigin)===3&&oo.createElement("div",{style:{display:"flex",marginTop:"20rem",alignItems:"center"}},oo.createElement("span",{style:{color:"#1B8565",fontSize:"16rem"}},re==null?void 0:re.resourceUrl),oo.createElement(we.ZP,{style:{height:"40rem",padding:"0rem 10rem",fontSize:"14rem",marginLeft:"10rem"},onClick:()=>Us(void 0,null,function*(){var no;let nl=yield(0,ie.ZP)("/api/subject_knowledge/create_study.json",{method:"post",body:{subject_id:(no=b==null?void 0:b.detail)==null?void 0:no.id,uuid:re==null?void 0:re.uuid}});window.open(re==null?void 0:re.resourceUrl)}),type:"primary"},"\u524D\u5F80\u67E5\u770B")),(re==null?void 0:re.nodeType)==="\u9898\u96C6"&&(Hu==null?void 0:Hu.map(no=>oo.createElement("div",{style:{display:"flex",alignItems:"center",marginTop:"10rem"}},oo.createElement(Wn.Z,{title:no==null?void 0:no.name},oo.createElement("span",{className:li.multiple,style:{color:"#1B8565",fontSize:"16rem",maxWidth:"80%"}},no==null?void 0:no.name)),oo.createElement("div",{style:{marginLeft:"10rem",padding:"0rem 10rem",fontSize:"12rem",background:"#F6F7F9",color:"#909D99",borderRadius:"20rem"}},"\u8BD5\u9898\u6570 ",no==null?void 0:no.count)))),(re==null?void 0:re.nodeType)!="\u89C6\u9891"&&(re==null?void 0:re.nodeType)!="\u9898\u96C6"&&(re!=null&&re.resourceOrigin)&&[1,2].includes(re==null?void 0:re.resourceOrigin)?oo.createElement("div",{style:{display:"flex",marginTop:"20rem",alignItems:"center"}},oo.createElement("span",{style:{color:"#1B8565",fontSize:"16rem"}},(re==null?void 0:re.resourceOrigin)===1?(Qt=Hs==null?void 0:Hs[0])==null?void 0:Qt.name:(Gt=Ea==null?void 0:Ea[0])==null?void 0:Gt.name),(0,pu.JA)()&&(re==null?void 0:re.nodeType)==="\u8BD5\u5377"?"":oo.createElement(we.ZP,{style:{height:"40rem",padding:"0rem 10rem",fontSize:"14rem",marginLeft:"10rem"},onClick:()=>Us(void 0,null,function*(){var no;ym(re==null?void 0:re.resourceUrl);let nl=yield(0,ie.ZP)("/api/subject_knowledge/create_study.json",{method:"post",body:{subject_id:(no=b==null?void 0:b.detail)==null?void 0:no.id,uuid:re==null?void 0:re.uuid}})}),type:"primary"},"\u524D\u5F80\u67E5\u770B"),(re==null?void 0:re.nodeType)==="\u8BD5\u5377"&&(re==null?void 0:re.resourceOrigin)===1&&oo.createElement(we.ZP,{style:{height:"40rem",padding:"0rem 10rem",fontSize:"14rem",marginLeft:"10rem"},onClick:()=>Us(void 0,null,function*(){var no,nl;const eu=yield(0,ag.Mb)({categoryId:(no=Hs==null?void 0:Hs[0])==null?void 0:no.id});eu!=null&&eu.exercise_id&&(0,Yt.xg)(`/classrooms/coursesId/exercise/${eu.exercise_id}/${(nl=x.userInfo)==null?void 0:nl.login}/initate_answer`)}),type:"primary"},"\u6A21\u62DF\u8003\u8BD5")):""),oo.createElement("div",{className:li.nodetitle},Qc===1&&oo.createElement(Za.Z,{onClick:()=>Dp(2)}),Qc===2&&oo.createElement(lo.Z,{onClick:()=>Dp(1)}),oo.createElement("span",{style:{marginLeft:"10rem",fontSize:"16rem",color:"#1B8565"}},"\u8282\u70B9\u5173\u7CFB")),Qc===2&&oo.createElement("div",{className:li.nodeboyd,style:{padding:0,minHeight:"530rem"}},oo.createElement(Zt.default,{className:li.Tabs,activeKey:qL,destroyInactiveTabPane:!0,onChange:no=>{E2(parseInt(no))},type:"card",items:Bx}))),hu===3&&oo.createElement("div",null,(0,pu.JA)()?oo.createElement(cr,{uuid:(re==null?void 0:re.keys)||(re==null?void 0:re.id)}):oo.createElement(du,{uuid:(re==null?void 0:re.keys)||(re==null?void 0:re.id)}))),oo.createElement(Oe.default,{title:oo.createElement("span",{style:{fontSize:"18rem",color:"#000"}},gl===3?"\u7F16\u8F91":"\u521B\u5EFA","\u8282\u70B9"),centered:!0,destroyOnClose:!0,width:"1200rem",open:gl>0,getContainer:()=>ce.current,onCancel:()=>{fu(0),$l.resetFields(),B0({qx:[],bh:[],hx:[],gl:[]}),Os([]),ms({}),Gu([]),Lc([])},okButtonProps:{loading:Ml},onOk:()=>{$l.submit()}},oo.createElement("div",{className:li.addmodal},oo.createElement("div",{className:li.title},"\u8282\u70B9\u5C5E\u6027"),oo.createElement(Ie.default,{className:li.form,labelCol:{flex:"92rem"},layout:"horizontal",form:$l,colon:!1,onValuesChange:(no,nl)=>{var eu,Ql,Gc,Ru;ms(zu({},nl)),(nl==null?void 0:nl.resourceOrigin)!==1&&Gu([]),((Ql=(eu=nl==null?void 0:nl.label)==null?void 0:eu[0])==null?void 0:Ql.name)!=="\u9898\u96C6"&&Lc([]),((Ru=(Gc=nl==null?void 0:nl.label)==null?void 0:Gc[0])==null?void 0:Ru.item_type)!==2&&(Gu([]),Os([]),Lc([]),$l.setFieldsValue({resourceOrigin:0,url:""}))},onFinish:(0,Ro.debounce)(no=>Us(void 0,null,function*(){var nl,eu,Ql,Gc,Ru,Rc,Wh,Yd,R0,xm,ew,rT,iT,oT,aT,ll,pf,vf,mf,Wg,o4,a4,s4,l4,u4,c4,h4,d4,f4,g4,p4,v4,m4,y4,x4,E4,A4,S4,w4,C4,b4,P4,M4,L4,T4,D4,I4,O4,N4,B4,R4,k4,F4,_4;if(((nl=sl==null?void 0:sl.bh)==null?void 0:nl.length)===0){Ze.ZP.warning("\u8282\u70B9\u5305\u542B\u5173\u7CFB\u4E0D\u80FD\u4E3A\u7A7A");return}if((no==null?void 0:no.resourceOrigin)===0){Ze.ZP.warning("\u8BF7\u9009\u62E9\u8D44\u6E90\u7C7B\u578B");return}if((no==null?void 0:no.resourceOrigin)===1&&(Hs==null?void 0:Hs.length)<=0&&((eu=no==null?void 0:no.label[0])==null?void 0:eu.name)!=="\u9898\u96C6"){Ze.ZP.warning("\u8BF7\u9009\u62E9\u5BF9\u5E94\u5934\u6B4C\u8D44\u6E90");return}if((no==null?void 0:no.resourceOrigin)===1&&(Hu==null?void 0:Hu.length)<=0&&((Ql=no==null?void 0:no.label[0])==null?void 0:Ql.name)==="\u9898\u96C6"){Ze.ZP.warning("\u8BF7\u9009\u62E9\u5BF9\u5E94\u5934\u6B4C\u8D44\u6E90");return}if((no==null?void 0:no.resourceOrigin)===2&&(Ea==null?void 0:Ea.length)===0){Ze.ZP.warning("\u8BF7\u4E0A\u4F20\u6587\u4EF6");return}Nd(!0);let _X=gl===3?"/api/knowledge/v2/mod_node.json":"/api/knowledge/v2/add_node.json",zX=gl===3?{subject_id:(Gc=b==null?void 0:b.detail)==null?void 0:Gc.id,properties:{description:no.description,rootNodeUuid:re==null?void 0:re.rootNodeUuid,name:no.name,uuid:(re==null?void 0:re.keys)||(re==null?void 0:re.id),nodeType:(Ru=no==null?void 0:no.label[0])==null?void 0:Ru.name,tags:((Wh=(Rc=no.tag)==null?void 0:Rc.map(Jc=>Jc==null?void 0:Jc.name))==null?void 0:Wh.join("\uFF0C"))||"",color:re==null?void 0:re.color,resourceOrigin:no.resourceOrigin,resourceUrl:no.resourceOrigin===3?no.url:no.resourceOrigin===2?((xm=(R0=(Yd=Ea==null?void 0:Ea[0])==null?void 0:Yd.response)==null?void 0:R0.url)==null?void 0:xm.indexOf("educoder.net"))>-1?(rT=(ew=Ea==null?void 0:Ea[0])==null?void 0:ew.response)==null?void 0:rT.url:((iT=E==null?void 0:E.setting)==null?void 0:iT.public_bucket_host)+((aT=(oT=Ea==null?void 0:Ea[0])==null?void 0:oT.response)==null?void 0:aT.url):(ll=Hs==null?void 0:Hs[0])==null?void 0:ll.url,container_type:((pf=no==null?void 0:no.label[0])==null?void 0:pf.name)==="\u9898\u96C6"?"ItemBanksGroup":(no.resourceOrigin===1||no.resourceOrigin===2)&&((vf=Hs==null?void 0:Hs[0])==null?void 0:vf.container_type)||((Wg=(mf=Ea==null?void 0:Ea[0])==null?void 0:mf.response)==null?void 0:Wg.container_type),container_id:(no.resourceOrigin===1||no.resourceOrigin===2)&&((o4=Hs==null?void 0:Hs[0])==null?void 0:o4.container_id)||((s4=(a4=Ea==null?void 0:Ea[0])==null?void 0:a4.response)==null?void 0:s4.container_id),itemBanksGroupIds:Hu==null?void 0:Hu.map(Jc=>Jc==null?void 0:Jc.group_id).toString()},subgraphNodeUuid:Xe,relationships:[...(l4=sl.bh)==null?void 0:l4.map(Jc=>({startNodeUuid:Jc.uuid,endNodeUuid:(re==null?void 0:re.keys)||(re==null?void 0:re.id),type:"\u5305\u542B"})),...u1==null?void 0:u1.map(Jc=>({endNodeUuid:Jc.uuid,startNodeUuid:(re==null?void 0:re.keys)||(re==null?void 0:re.id),type:"\u5305\u542B"})),...(u4=sl.qx)==null?void 0:u4.map(Jc=>({startNodeUuid:Jc.uuid,endNodeUuid:(re==null?void 0:re.keys)||(re==null?void 0:re.id),type:"\u524D\u5E8F"})),...(c4=sl.hx)==null?void 0:c4.map(Jc=>({endNodeUuid:Jc.uuid,startNodeUuid:(re==null?void 0:re.keys)||(re==null?void 0:re.id),type:"\u540E\u5E8F"})),...(h4=sl.gl)==null?void 0:h4.map(Jc=>({startNodeUuid:Jc.uuid,endNodeUuid:(re==null?void 0:re.keys)||(re==null?void 0:re.id),type:"\u5173\u8054"}))]}:{label:((d4=no==null?void 0:no.label[0])==null?void 0:d4.item_type)===1?"\u6807\u7B7E":"\u8D44\u6E90",subject_id:(f4=b==null?void 0:b.detail)==null?void 0:f4.id,properties:{description:no.description,rootNodeUuid:re==null?void 0:re.rootNodeUuid,name:no.name,nodeType:(g4=no==null?void 0:no.label[0])==null?void 0:g4.name,tags:((v4=(p4=no.tag)==null?void 0:p4.map(Jc=>Jc==null?void 0:Jc.name))==null?void 0:v4.join("\uFF0C"))||"",color:gl===1?"2":parseInt(re==null?void 0:re.colorType)+1+"",resourceOrigin:no.resourceOrigin,resourceUrl:no.resourceOrigin===3?no.url:no.resourceOrigin===2?((x4=(y4=(m4=Ea==null?void 0:Ea[0])==null?void 0:m4.response)==null?void 0:y4.url)==null?void 0:x4.indexOf("educoder.net"))>-1?(A4=(E4=Ea==null?void 0:Ea[0])==null?void 0:E4.response)==null?void 0:A4.url:((S4=E==null?void 0:E.setting)==null?void 0:S4.public_bucket_host)+((C4=(w4=Ea==null?void 0:Ea[0])==null?void 0:w4.response)==null?void 0:C4.url):(b4=Hs==null?void 0:Hs[0])==null?void 0:b4.url,container_type:((P4=no==null?void 0:no.label[0])==null?void 0:P4.name)==="\u9898\u96C6"?"ItemBanksGroup":(no.resourceOrigin===1||no.resourceOrigin===2)&&((M4=Hs==null?void 0:Hs[0])==null?void 0:M4.container_type)||((T4=(L4=Ea==null?void 0:Ea[0])==null?void 0:L4.response)==null?void 0:T4.container_type),container_id:(no.resourceOrigin===1||no.resourceOrigin===2)&&((D4=Hs==null?void 0:Hs[0])==null?void 0:D4.container_id)||((O4=(I4=Ea==null?void 0:Ea[0])==null?void 0:I4.response)==null?void 0:O4.container_id),itemBanksGroupIds:Hu==null?void 0:Hu.map(Jc=>Jc==null?void 0:Jc.group_id).toString()},subgraphNodeUuid:Xe,relationships:[...(N4=sl.bh)==null?void 0:N4.map(Jc=>({startNodeUuid:Jc.uuid,type:"\u5305\u542B"})),...(B4=sl.qx)==null?void 0:B4.map(Jc=>({startNodeUuid:Jc.uuid,type:"\u524D\u5E8F"})),...(R4=sl.hx)==null?void 0:R4.map(Jc=>({endNodeUuid:Jc.uuid,type:"\u540E\u5E8F"})),...(k4=sl.gl)==null?void 0:k4.map(Jc=>({startNodeUuid:Jc.uuid,type:"\u5173\u8054"}))]};const z4=yield(0,ie.ZP)(_X,{method:"POST",body:zX});Nd(!1),(z4==null?void 0:z4.status)===0&&(Nx.get("type")==="classrooms"?te({type:"pathsDetail/getCourseDetail",payload:zu({id:(F4=b==null?void 0:b.detail)==null?void 0:F4.id,knowledge:!0},(0,Yt.oP)())}):te({type:"pathsDetail/getPathsDetail",payload:zu({id:(_4=b==null?void 0:b.detail)==null?void 0:_4.id,knowledge:!0},(0,Yt.oP)())}),Ze.ZP.info(gl===3?"\u7F16\u8F91\u6210\u529F":"\u521B\u5EFA\u6210\u529F"),fu(0),Ae(!1),ge(),$l.resetFields(),Os([]),ms({}),Gu([]),Lc([]),B0({qx:[],hx:[],bh:[],gl:[]}))}),500),size:"large"},oo.createElement(Ie.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"}]},oo.createElement(je.default,{maxLength:60,showCount:!0,placeholder:"\u8BF7\u8F93\u5165"})),oo.createElement(Ie.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"}]},oo.createElement(je.default.TextArea,{maxLength:5e3,showCount:!0,placeholder:"\u8BF7\u8F93\u5165"})),oo.createElement(Ie.default.Item,{label:"\u8282\u70B9\u7C7B\u578B",name:"label",style:{marginBottom:"0rem"},rules:[{required:!0,message:"\u8BF7\u9009\u62E9\u8282\u70B9\u7C7B\u578B"}]},oo.createElement(la,{containerRef:ce,type:5,pathsDetail:b,showmodal:gl!==3,dataSources:[]})),((Sn=(vn=Xa==null?void 0:Xa.label)==null?void 0:vn[0])==null?void 0:Sn.item_type)===2&&oo.createElement(Ie.default.Item,{label:" ",name:"resourceOrigin",rules:[{required:!0,message:"\u8BF7\u9009\u62E9\u8D44\u6E90\u7C7B\u578B"}]},oo.createElement(be.ZP.Group,{className:li.radioform},oo.createElement(be.ZP,{value:1},"\u9009\u62E9\u5934\u6B4C\u8D44\u6E90"),((Kn=(kn=Xa==null?void 0:Xa.label)==null?void 0:kn[0])==null?void 0:Kn.name)!=="\u9898\u96C6"&&oo.createElement(be.ZP,{value:2},"\u4E0A\u4F20\u6587\u4EF6"),((er=(vr=Xa==null?void 0:Xa.label)==null?void 0:vr[0])==null?void 0:er.name)!=="\u9898\u96C6"&&oo.createElement(be.ZP,{value:3},"\u5916\u94FE"))),(Xa==null?void 0:Xa.resourceOrigin)===1&&((ei=(Nr=Xa==null?void 0:Xa.label)==null?void 0:Nr[0])==null?void 0:ei.item_type)===2&&oo.createElement(Ie.default.Item,{label:" ",name:""},oo.createElement(we.ZP,{onClick:()=>{var no,nl,eu,Ql,Gc,Ru;((nl=(no=Xa==null?void 0:Xa.label)==null?void 0:no[0])==null?void 0:nl.name)==="\u9898\u96C6"?(i0(!0),pc(Hu),kX()):(js(!0),cl(((Ql=(eu=Xa==null?void 0:Xa.label)==null?void 0:eu[0])==null?void 0:Ql.name)==="\u89C6\u9891"?"2":((Ru=(Gc=Xa==null?void 0:Xa.label)==null?void 0:Gc[0])==null?void 0:Ru.name)==="\u8BD5\u5377"?"4":"1"))},type:"primary",style:{height:"40rem",lineHeight:"40rem",padding:"0rem 32rem",boxShadow:"none"}},((Sr=(Ar=Xa==null?void 0:Xa.label)==null?void 0:Ar[0])==null?void 0:Sr.name)==="\u9898\u96C6"?"\u9009\u62E9\u9898\u96C6":"\u9009\u62E9\u8D44\u6E90"),(Hs==null?void 0:Hs.length)>0&&oo.createElement("div",{style:{color:"#1B8565",marginTop:"5rem",fontSize:"16rem",display:"flex",alignItems:"center"}},oo.createElement("div",{className:li.multiple,title:(Ir=Hs==null?void 0:Hs[0])==null?void 0:Ir.name},(si=Hs==null?void 0:Hs[0])==null?void 0:si.name),oo.createElement("i",{style:{fontSize:"16rem",cursor:"pointer",marginLeft:"10rem"},onClick:()=>{Gu([])},className:"iconfont icon-shanchu12"})," "),(Hu==null?void 0:Hu.length)>0&&(Hu==null?void 0:Hu.map(no=>oo.createElement("div",{style:{color:"#1B8565",marginTop:"5rem",fontSize:"16rem",display:"flex",alignItems:"center"}},oo.createElement("div",{className:li.multiple,title:no==null?void 0:no.name},no==null?void 0:no.name),oo.createElement("i",{style:{fontSize:"16rem",cursor:"pointer",marginLeft:"10rem"},onClick:()=>{Lc(Hu==null?void 0:Hu.filter(nl=>(nl==null?void 0:nl.group_id)!==(no==null?void 0:no.group_id)))},className:"iconfont icon-shanchu12"})," ")))),(Xa==null?void 0:Xa.resourceOrigin)===2&&((wi=(Cr=Xa==null?void 0:Xa.label)==null?void 0:Cr[0])==null?void 0:wi.item_type)===2&&oo.createElement(Ie.default.Item,{label:" ",name:"file",shouldUpdate:!0},oo.createElement(qa.default,zu({},tT),oo.createElement(we.ZP,{type:"primary",style:{height:"40rem",lineHeight:"40rem",padding:"0rem 32rem",boxShadow:"none"}},"\u4E0A\u4F20\u6587\u4EF6"))),(Xa==null?void 0:Xa.resourceOrigin)===3&&((Po=(Mo=Xa==null?void 0:Xa.label)==null?void 0:Mo[0])==null?void 0:Po.item_type)===2&&oo.createElement(Ie.default.Item,{label:" ",name:"url"},oo.createElement(Ie.default.Item,{label:"\u5916\u94FE\u94FE\u63A5",name:"url",rules:[{required:!0,message:"\u8BF7\u8F93\u5165\u5916\u94FE"}]},oo.createElement(je.default,{style:{height:"40rem"}}))),oo.createElement(Ie.default.Item,{label:"\u8282\u70B9\u6807\u7B7E",name:"tag"},oo.createElement(la,{containerRef:ce,type:3,pathsDetail:b,showmodal:!0,dataSources:[]})))),oo.createElement("div",{className:li.addmodal,style:{marginTop:"20rem"}},oo.createElement("div",{className:li.title},oo.createElement("span",null,"\u8282\u70B9\u5173\u7CFB"),oo.createElement("span",{style:{cursor:"pointer"},onClick:()=>{nT()}},"\u5173\u7CFB\u8BBE\u7F6E")),oo.createElement("div",{className:li.gxcoent,style:{padding:"20rem 25rem"}},oo.createElement("div",{className:li.gxtitle},oo.createElement("div",{className:li.Colortitle,style:{background:"#6236ff"}}),oo.createElement("div",null,"\u88AB\u5305\u542B\uFF08",(eo=sl.bh)==null?void 0:eo.length,"\uFF09")),oo.createElement("div",{className:li.gxbody},(Ui=sl==null?void 0:sl.bh)==null?void 0:Ui.map(no=>oo.createElement("div",{className:li.tag,style:{background:"#6236ff"}},oo.createElement("span",{style:{marginRight:"10rem"}},no==null?void 0:no.name)," ",oo.createElement(Ca.Z,{onClick:()=>{var nl;let eu=(nl=sl==null?void 0:sl.bh)==null?void 0:nl.filter(Ql=>Ql.uuid!==no.uuid);B0({bh:eu,hx:sl==null?void 0:sl.hx,qx:sl==null?void 0:sl.qx,gl:sl==null?void 0:sl.gl})}})))),oo.createElement("div",{className:li.gxtitle,style:{marginTop:"30rem"}},oo.createElement("div",{className:li.Colortitle,style:{background:"#24A881"}}),oo.createElement("div",null,"\u524D\u5E8F\uFF08",(fo=sl.qx)==null?void 0:fo.length,"\uFF09")),oo.createElement("div",{className:li.gxbody},(Uo=sl==null?void 0:sl.qx)==null?void 0:Uo.map(no=>oo.createElement("div",{className:li.tag,style:{background:"#24A881"}},oo.createElement("span",{style:{marginRight:"10rem"}},no==null?void 0:no.name)," ",oo.createElement(Ca.Z,{onClick:()=>{var nl;let eu=(nl=sl==null?void 0:sl.qx)==null?void 0:nl.filter(Ql=>Ql.uuid!==no.uuid);B0({qx:eu,bh:sl==null?void 0:sl.bh,hx:sl==null?void 0:sl.hx,gl:sl==null?void 0:sl.gl})}})))),oo.createElement("div",{className:li.gxtitle,style:{marginTop:"30rem"}},oo.createElement("div",{className:li.Colortitle,style:{background:"#EC8657"}}),oo.createElement("div",null,"\u540E\u5E8F\uFF08",(pa=sl.hx)==null?void 0:pa.length,"\uFF09")),oo.createElement("div",{className:li.gxbody},(Ga=sl==null?void 0:sl.hx)==null?void 0:Ga.map(no=>oo.createElement("div",{className:li.tag,style:{background:"#EC8657"}},oo.createElement("span",{style:{marginRight:"10rem"}},no==null?void 0:no.name)," ",oo.createElement(Ca.Z,{onClick:()=>{var nl;let eu=(nl=sl==null?void 0:sl.hx)==null?void 0:nl.filter(Ql=>Ql.uuid!==no.uuid);B0({qx:sl==null?void 0:sl.qx,bh:sl==null?void 0:sl.bh,hx:eu,gl:sl==null?void 0:sl.gl})}})))),oo.createElement("div",{className:li.gxtitle,style:{marginTop:"30rem"}},oo.createElement("div",{className:li.Colortitle,style:{background:"#497DFF"}}),oo.createElement("div",null,"\u5173\u8054\uFF08",(kl=sl.gl)==null?void 0:kl.length,"\uFF09")),oo.createElement("div",{className:li.gxbody},(al=sl==null?void 0:sl.gl)==null?void 0:al.map(no=>oo.createElement("div",{className:li.tag,style:{background:"#497DFF"}},oo.createElement("span",{style:{marginRight:"10rem"}},no==null?void 0:no.name)," ",oo.createElement(Ca.Z,{onClick:()=>{var nl;let eu=(nl=sl==null?void 0:sl.gl)==null?void 0:nl.filter(Ql=>Ql.uuid!==no.uuid);B0({qx:sl==null?void 0:sl.qx,hx:sl==null?void 0:sl.hx,bh:sl==null?void 0:sl.bh,gl:eu})}}))))))),oo.createElement(Oe.default,{title:"\u9009\u62E9\u9898\u96C6",open:$S,destroyOnClose:!0,centered:!0,getContainer:()=>ce.current,width:"1200rem",onOk:()=>{if((O0==null?void 0:O0.length)<=0){Ze.ZP.info("\u8BF7\u9009\u62E9\u9898\u96C6");return}Lc(O0),i0(!1)},onCancel:()=>{pc([]),i0(!1)}},oo.createElement($i.default,{checkable:!0,style:{margin:20,maxHeight:400,overflow:"auto"},blockNode:!0,checkStrictly:!0,checkedKeys:O0==null?void 0:O0.map(no=>no==null?void 0:no.group_id),onCheck:(no,nl)=>{pc(nl==null?void 0:nl.checkedNodes)},treeData:c1,fieldNames:{key:"group_id",title:"name"},titleRender:no=>oo.createElement("div",{style:{display:"flex",alignItems:"center",paddingRight:"14px"}},oo.createElement(Wn.Z,{title:no==null?void 0:no.name},oo.createElement("div",{className:li.multiple,style:{display:"flex",alignItems:"center",maxWidth:"80%"}},oo.createElement("img",{src:og,style:{marginRight:10}}),oo.createElement("span",null,no==null?void 0:no.name))),oo.createElement("div",{style:{padding:"0rem 10rem",fontSize:"12rem",background:"#F6F7F9",color:"#909D99",borderRadius:"20rem"}},"\u8BD5\u9898\u6570 ",no==null?void 0:no.count))})),oo.createElement(Oe.default,{title:"\u9009\u62E9\u5934\u6B4C\u8D44\u6E90",open:Oa,destroyOnClose:!0,centered:!0,getContainer:()=>ce.current,width:"1200rem",onOk:()=>{js(!1)},onCancel:()=>{js(!1),gl!==3&&Gu([]),cl("1")}},oo.createElement("div",{className:li.settingmodal},oo.createElement(Zt.default,{className:li.Tabs,activeKey:aa,destroyInactiveTabPane:!0,onChange:no=>{cl(no)},type:"card",items:((tl=(Fa=Xa==null?void 0:Xa.label)==null?void 0:Fa[0])==null?void 0:tl.name)==="\u89C6\u9891"?gf.filter(no=>(no==null?void 0:no.label)==="\u89C6\u9891"):((rl=(Ps=Xa==null?void 0:Xa.label)==null?void 0:Ps[0])==null?void 0:rl.name)==="\u8BD5\u5377"?gf.filter(no=>(no==null?void 0:no.label)==="\u8BD5\u5377"):gf.filter(no=>(no==null?void 0:no.label)!=="\u89C6\u9891")}))),oo.createElement(Ci.Z,{close:!0,style:{zIndex:1300,background:"rgba(1, 10, 35, 0.5)"},data:Fl==null?void 0:Fl.url,type:Fl==null?void 0:Fl.file_type,disabledDownload:!0,onClose:()=>Pl({})}),oo.createElement(Oe.default,{title:"\u5173\u7CFB\u8BBE\u7F6E",open:$o,destroyOnClose:!0,centered:!0,getContainer:()=>ce.current,width:"1200rem",onCancel:()=>{va(!1);let no=JSON.parse(sessionStorage.getItem("typesdatajson"));B0(no)},onOk:()=>{let no=JSON.parse(sessionStorage.getItem("typesdatajsoncopy"));B0(no),va(!1)}},oo.createElement("div",{className:li.settingmodal},oo.createElement(Zt.default,{className:li.Tabs,activeKey:JL,destroyInactiveTabPane:!0,onChange:no=>{x2(no)},type:"card",items:zf})))))};var Er=(0,ke.connect)(({pathsDetail:b,user:x,loading:E,globalSetting:z})=>({pathsDetail:b,user:x,globalSetting:z,loading:E.models.index}))(Ln),xr={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"},Yr=Be(24905),$r=Be(95237),Ei="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",bi="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=",Zi="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=",Oo="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=",Hi="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==",mo="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==",Wi="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAcCAYAAAAAwr0iAAAAAXNSR0IArs4c6QAAAg1JREFUSEvtl09IFFEcx7/fN6hhQS5FiOShEjwUFIWt00FPdYlw25BO/YOOC0XQHmT35EgYHYJOQacugrC7eDa7iLbbpWutWUSGJR1WpSLZfb8YYWtWZ5gZkT3EzPV9v7/vh++8ebxhPGctAnIUQR5ymZBZ1cb0/MXMp7rFLFhntWCEkD4RdAUYpUnOsLN9iPHcqAQwNEhIrktL65nSpfSCWbBSovFYIEboOUpdbQAg+BaUdbdBAhyHoL2+RnJakemalteAtFzoPoHLR07j4J59vhzp4iQ+rn2HUrj9D4BYKiWz3V5uMz92X4t+6AD4DcGEQG4OdvVivH/YN7guuP7yGcqVr1sBWC4lM72eAAUrpbU8ca4bSlVqWnfY4TZE0McVgERVwKyCxysQXBMg7hbydPAGTh7wLG+bxb2BoPguuv8GYEMR9wD19ysQkT6BpPzK2Z0GuH0TmlMPenS1utAUAIJfilcyh51h5wpjp2pav2kKwGYIsUTAcRCxU0RizQPwS/JY3509sMNw2xYBRA1EDUQNRA3YDcTa9uJdZRmrG798z9Tn5Xms/Fzbcif0tXkLevYfwvvVldATaOA8zZx1V4BjgdxETIABiLheAEkuAvgQYFaNwMyrZOYRA4gbJMMyaXzOl+0fEcdNiT9oSKKYyL4IOy80QD2gPz9qAbgFwTfDMO7MJUZmw4bb+j/0UVXnXVodrAAAAABJRU5ErkJggg==",Qo="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=",Ai="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",so=Be(43604),Ko=Be(5083),za=Be(61186),wa=Be.n(za),Va=Be(94811),Ka=Be(88256),Ba=Be(85439),_o=Be(7386),rs=Be(59301),Zs=Object.defineProperty,dl=Object.defineProperties,Nl=Object.getOwnPropertyDescriptors,Tl=Object.getOwnPropertySymbols,Dl=Object.prototype.hasOwnProperty,vu=Object.prototype.propertyIsEnumerable,yl=(b,x,E)=>x in b?Zs(b,x,{enumerable:!0,configurable:!0,writable:!0,value:E}):b[x]=E,il=(b,x)=>{for(var E in x||(x={}))Dl.call(x,E)&&yl(b,E,x[E]);if(Tl)for(var E of Tl(x))vu.call(x,E)&&yl(b,E,x[E]);return b},Bl=(b,x)=>dl(b,Nl(x)),Rl=(b,x,E)=>new Promise((z,te)=>{var re=ce=>{try{le(E.next(ce))}catch(ge){te(ge)}},oe=ce=>{try{le(E.throw(ce))}catch(ge){te(ge)}},le=ce=>ce.done?z(ce.value):Promise.resolve(ce.value).then(re,oe);le((E=E.apply(b,x)).next())});const mu=({classroomList:b,dispatch:x,courseEndTime:E})=>{const z=(0,ke.useParams)(),[te]=Ie.default.useForm(),[re,oe]=(0,Ge.useState)(1),[le,ce]=(0,Ge.useState)([]),[ge,Ae]=(0,Ge.useState)(0),[Me,Ue]=(0,Ge.useState)(20),[Xe,$e]=(0,Ge.useState)(!0),[rt,ot]=(0,Ge.useState)([]),[pt,yt]=(0,Ge.useState)(!0);z.coursesId=z.pathId,z.id=z.coursesId,(0,Ge.useEffect)(()=>{if(b.actionTabs.key==="\u7ACB\u5373\u53D1\u5E03")if(Wt(),Ct(),b.actionTabs.type===2){const Sn=b.actionTabs.selectArrsAll[0];yt(Sn.unified_setting)}else yt(!1)},[b.actionTabs]);const Ct=Sn=>Rl(void 0,null,function*(){$e(!0);const kn=yield(0,Va.c_)(Bl(il({},z),{page:Sn||re,limit:2e4}));kn==null||kn.course_groups.map((Kn,vr)=>{Kn.key=Kn.id,Kn.title=Kn.name,Kn.disabled=Kn.is_published}),kn&&(ce([...kn==null?void 0:kn.course_groups]),Ae(kn==null?void 0:kn.course_groups_count),$e(!1),Sn||te.setFieldsValue({publish_time:wa()(wa()(new Date).add(0,"days").format("YYYY-MM-DD HH:mm")),end_time:wa()(wa()(new Date((0,Yt.qd)("/"))).add(7,"days").format("YYYY-MM-DD HH:mm"))}))}),zt=()=>Rl(void 0,null,function*(){var Sn;const kn=il({},te.getFieldsValue());if(kn.end_time<=kn.publish_time){Ze.ZP.info("\u622A\u6B62\u65F6\u95F4\u4E0D\u80FD\u5927\u4E8E\u6216\u7B49\u4E8E\u53D1\u5E03\u65F6\u95F4"),vn(!1);return}if((rt==null?void 0:rt.length)<=0&&!pt&&le.length>0){Ze.ZP.info("\u53D1\u5E03\u73ED\u7EA7\u4E0D\u80FD\u4E3A\u7A7A"),vn(!1);return}let Kn={ids:[...b.actionTabs.selectArrs],group_ids:rt.length>0?rt.map(er=>er.id):(Sn=b.detailShixunsList)==null?void 0:Sn.course_groups,end_time:wa()(kn.end_time).format("YYYY-MM-DD HH:mm"),publish_time:wa()(kn.publish_time).format("YYYY-MM-DD HH:mm"),unified_setting:!rt.length,subject_id:z.pathId};vn(!0),(yield(0,ie.ZP)("/api/subject_knowledge/batch_publish.json",{method:"post",body:il({},Kn)})).status===0?(x({type:"classroomList/setActionTabs",payload:{}}),x({type:"pathsDetail/setActionTabs",payload:{key:"\u66F4\u65B0\u6570\u636E"}}),vn(!1),Wt(),(0,Yt.L9)(["\u6559\u5B66\u8BFE\u5802","\u8BFE\u7A0B\u5B9E\u9A8C","\u7ACB\u5373\u53D1\u5E03"]),Ze.ZP.success("\u53D1\u5E03\u6210\u529F")):vn(!1)}),Wt=()=>{oe(1),ce([]),ot([])},Ht=ge>re*Me,{detailShixunsList:Qt}=b,[Gt,vn]=(0,Ge.useState)(!1);return rs.createElement(Oe.default,{width:600,centered:!0,confirmLoading:Gt,title:"\u53D1\u5E03\u8282\u70B9",open:b.actionTabs.key==="\u7ACB\u5373\u53D1\u5E03",okText:"\u786E\u8BA4\u53D1\u5E03",cancelText:"\u53D6\u6D88",className:_o.Z.modal,onOk:()=>zt(),onCancel:()=>{Wt(),x({type:"classroomList/setActionTabs",payload:{}})}},rs.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",rs.createElement("br",null),"\u53D1\u5E03\u64CD\u4F5C\u4EC5\u9488\u5BF9\u672A\u53D1\u5E03\u8D44\u6E90\u7684\u5206\u73ED\u751F\u6548"),rs.createElement(Ie.default,{form:te},rs.createElement("div",{style:{paddingLeft:0}},rs.createElement($r.Z,{className:"mt30",align:"middle"},rs.createElement(so.Z,null,rs.createElement(Ie.default.Item,{name:"publish_time",label:"\u53D1\u5E03\u65F6\u95F4"},rs.createElement(Ko.default,{style:{width:170,marginRight:"25px"},disabledDate:Sn=>(0,Ba.Q8)(Sn,E),disabledTime:Sn=>(0,Ba.d0)(Sn),placeholder:"\u8BF7\u9009\u62E9\u53D1\u5E03\u65F6\u95F4",showTime:{format:"HH:mm",defaultValue:wa()((0,Yt.U6)(),"HH:mm")},format:"YYYY-MM-DD HH:mm",allowClear:!1}))),rs.createElement(so.Z,{className:"ml20"},rs.createElement(Ie.default.Item,{name:"end_time",label:"\u622A\u6B62\u65F6\u95F4:"},rs.createElement(Ko.default,{style:{width:170},placeholder:"\u8BF7\u9009\u62E9\u622A\u6B62\u65F6\u95F4",showTime:{format:"HH:mm",defaultValue:wa()((0,Yt.U6)(),"HH:mm")},disabledDate:Sn=>(0,Ba.Q8)(Sn,E,te.getFieldValue("publish_time")),disabledTime:Sn=>(0,Ba.d0)(Sn,te.getFieldValue("publish_time")),format:"YYYY-MM-DD HH:mm",allowClear:!1})))),b.actionTabs.type===2&&rs.createElement($r.Z,{style:{marginBottom:"10px"}},rs.createElement("span",{className:"mr5"},"\u53D1\u5E03\u8BBE\u7F6E:"),rs.createElement(be.ZP.Group,{value:pt,onChange:Sn=>{yt(Sn.target.value),ot([])}},rs.createElement(be.ZP,{value:!0,disabled:!b.actionTabs.manage_all_group},"\u7EDF\u4E00\u53D1\u5E03"),rs.createElement(be.ZP,{className:"ml20",disabled:le.length<=0,value:!1},"\u5206\u73ED\u53D1\u5E03"))),le.length<=0&&b.actionTabs.type===2&&rs.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"')),(b.actionTabs.type===1||!pt)&&le.length>0&&rs.createElement("div",{style:{display:"flex",justifyContent:"space-between",marginBottom:"10px"}},rs.createElement("span",{style:{flex:1}},rs.createElement(Yr.default,{checked:rt.length===le.length,onChange:Sn=>{rt.length===le.length?ot([]):ot(le)}},"\u5168\u9009")),rs.createElement("span",{style:{width:16}}),rs.createElement("span",{style:{flex:1}},"\u5DF2\u9009\u62E9",rt.length||0,"\u4E2A\u5206\u73ED")),(b.actionTabs.type===1||!pt)&&le.length>0&&rs.createElement(Ka.Z,{data:le,selectedRowKeys:rt,setSelectedRowKeys:ot})))};var Xl=(0,ke.connect)(({classroomList:b})=>({classroomList:b}))(mu),ra=Be(59301),Ou=Object.defineProperty,tc=Object.defineProperties,Cn=Object.getOwnPropertyDescriptors,On=Object.getOwnPropertySymbols,sr=Object.prototype.hasOwnProperty,pr=Object.prototype.propertyIsEnumerable,kr=(b,x,E)=>x in b?Ou(b,x,{enumerable:!0,configurable:!0,writable:!0,value:E}):b[x]=E,Lr=(b,x)=>{for(var E in x||(x={}))sr.call(x,E)&&kr(b,E,x[E]);if(On)for(var E of On(x))pr.call(x,E)&&kr(b,E,x[E]);return b},ai=(b,x)=>tc(b,Cn(x)),ni=(b,x,E)=>new Promise((z,te)=>{var re=ce=>{try{le(E.next(ce))}catch(ge){te(ge)}},oe=ce=>{try{le(E.throw(ce))}catch(ge){te(ge)}},le=ce=>ce.done?z(ce.value):Promise.resolve(ce.value).then(re,oe);le((E=E.apply(b,x)).next())});const ri=[{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"}],Ni=({pathsDetail:b,setselectitems:x,publishshow:E,node:z,index:te,onExpandClick:re,onClickDetails:oe,selectitems:le})=>{var ce,ge,Ae;const[Me,Ue]=(0,Ge.useState)(!1),Xe=(0,Ge.useRef)(null),{name:$e,complete_rate:rt,node_type:ot,resource_info:pt,grasp_rate:yt,has_children:Ct,children:zt,expand:Wt,key:Ht,is_publish:Qt,status:Gt,id:vn,url:Sn}=z||{};(0,Ge.useEffect)(()=>{var Sr;kn();const Ir=(Sr=Xe.current)==null?void 0:Sr.parentElement;if(!Ir)return;const si=new ResizeObserver(()=>{kn()});return si.observe(Ir),()=>{si.disconnect()}},[Wt]);const kn=()=>{if(!Xe.current)return;const Sr=Xe.current,Ir=Sr.parentElement,si=Sr.previousElementSibling,Cr=Ir==null?void 0:Ir.firstElementChild;if(Ir&&si&&Cr){const wi=si.getBoundingClientRect().height,Mo=Ir.getBoundingClientRect().height,Po=Cr.getBoundingClientRect().height,eo=wi/2,Ui=Mo-(Po+wi)/2;Sr.style.bottom=`${eo}px`,Sr.style.height=`${Ui}px`}},Kn=(ce=Number(rt))==null?void 0:ce.toFixed(0),vr=Kn==="100",er=vr?ot==="\u5B9E\u8BAD"?"\u5DF2\u901A\u5173":"\u5DF2\u5B8C\u6210":`${Kn}%`,Nr=pt==null?void 0:pt.reduce((Sr,Ir)=>Sr+Ir.value,0),ei={\u5B9E\u8BAD:Ei,\u8BD5\u5377:bi,\u8BFE\u4EF6:Zi,\u89C6\u9891:Oo},Ar=()=>{re(Ht)};return ra.createElement("div",{className:xr.treeNode,"data-index":te},ra.createElement("div",{className:xr.node,style:vr?{background:"#EDF7EE"}:{}},!Qt&&!((ge=b==null?void 0:b.detail)!=null&&ge.can_managed)&&ra.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"}},ra.createElement("div",null,ra.createElement("i",{className:"iconfont icon-suo1",style:{color:"#fff",fontSize:"28rem"}}),ra.createElement("div",{style:{color:"#fff",fontSize:"12rem"}},"\u8D44\u6E90\u6682\u672A\u53D1\u5E03"))),ra.createElement("div",{className:xr.statusbutton,style:{background:(Ae=ri.find(Sr=>Sr.name===Gt))==null?void 0:Ae.color}},Gt),E&&ra.createElement(Yr.default,{checked:le==null?void 0:le.map(Sr=>Sr.id).includes(vn),onChange:()=>{if(le!=null&&le.map(Sr=>Sr.id).includes(vn))x(le.filter(Sr=>Sr.id!==vn));else{let Sr=[...le];Sr.push(z),x(Sr)}},className:xr.checkbox}),ra.createElement($r.Z,{style:{padding:Ct?"initial":"3rem 0"}},ra.createElement(Wn.Z,{title:"\u5B8C\u6210\u7387"},ra.createElement("div",{style:{flexShrink:0,marginLeft:"24rem",marginTop:"17rem"}},ra.createElement(Nn,{strokeColor:"#60C059",percentage:rt,startAngle:270,trackColor:"#E3E8EF",text:er,textSize:"12rem",textColor:"#60C059",outerDiameter:"62rem",innerDiameter:"46rem",textPadding:"3rem",hoverEffect:!1}))),ra.createElement("div",{className:xr.info},ra.createElement($r.Z,{align:"middle"},ra.createElement(Wn.Z,{title:ot},ra.createElement("img",{src:ei[ot]||Hi,style:{marginRight:"10rem",width:"16rem"}})),ra.createElement(Wn.Z,{title:$e},ra.createElement("b",{onClick:()=>{oe(z)},className:"c-grey-333 current",style:{fontSize:"16rem"}},(0,Yt.Pq)($e,19)))),ra.createElement($r.Z,{align:"middle",style:{marginTop:"5rem",marginLeft:"26rem",marginBottom:Ct?"0":"30rem"}},ra.createElement($r.Z,{align:"middle"},ra.createElement(Wn.Z,{title:"\u638C\u63E1\u7387"},ra.createElement("img",{src:mo,style:{marginRight:"4rem",width:"16rem"}})),ra.createElement("span",{style:{color:"#1B8565",fontSize:"14rem"}},yt,"%")),ra.createElement($r.Z,{align:"middle",style:{marginLeft:"55rem"}},ra.createElement(Wn.Z,{title:"\u5B8C\u6210\u7387"},ra.createElement("img",{src:Wi,style:{marginRight:"4rem",width:"16rem"}})),ra.createElement("span",{style:{color:"#1B8565",fontSize:"14rem"}},rt,"%"))),Ct&&ra.createElement($r.Z,{className:xr.resource},ra.createElement("span",{style:{color:"#666",fontSize:"14rem"}},"\u8D44\u6E90\u6570\uFF1A",Nr),ra.createElement("div",{onClick:()=>Ue(!Me),className:xr.action},Me?ra.createElement(ra.Fragment,null,"\u6536\u8D77",ra.createElement("i",{className:"iconfont icon-xialajiantou1",style:{transform:"scale(0.6)"}})):ra.createElement(ra.Fragment,null,"\u5C55\u5F00",ra.createElement("i",{className:"iconfont icon-xialajiantoubeifen",style:{transform:"scale(0.6)"}})))))),Me&&ra.createElement("div",{className:xr.tags},pt==null?void 0:pt.map((Sr,Ir)=>ra.createElement(Wn.Z,{title:Sr.name},ra.createElement("div",{className:xr.tag,key:Ir},(0,Yt.Pq)(Sr.name,5),"\uFF1A",Sr.value)))),te.length>1&&ra.createElement("div",{className:xr.leftLine}),Wt&&ra.createElement("div",{className:xr.rightLine}),Ct&&ra.createElement("img",{onClick:Ar,className:xr.icon,src:Wt?Ai:Qo})),zt&&zt.length>0&&Wt&&ra.createElement("div",{className:xr.nodeWrap},zt.map((Sr,Ir)=>ra.createElement(Ni,{key:Sr.key,onExpandClick:re,onClickDetails:oe,publishshow:E,setselectitems:x,pathsDetail:b,selectitems:le,node:Sr,index:te+"-"+(Ir+1)})),zt.length>1&&ra.createElement("div",{ref:Xe,className:xr.line})))},yi=({data:b,onExpandClick:x,selectitems:E,onClickDetails:z,pathsDetail:te,setselectitems:re,publishshow:oe})=>ra.createElement("div",{className:xr.treeNode},ra.createElement("div",{className:xr.nodeWrap},b.map((le,ce)=>ra.createElement(Ni,{key:le.key,onExpandClick:x,onClickDetails:z,pathsDetail:te,publishshow:oe,selectitems:E,setselectitems:re,node:le,index:String(ce+1)}))));var co=({visible:b,onCancel:x,subjectId:E,onClickDetails:z,pathsDetail:te,dispatch:re})=>{var oe;const[le,ce]=(0,Ge.useState)([]),[ge,Ae]=(0,Ge.useState)(!0),[Me,Ue]=(0,Ge.useState)("\u5168\u90E8"),[Xe,$e]=(0,Ge.useState)([]),[rt]=(0,ke.useSearchParams)(),[ot,pt]=(0,Ge.useState)(!1),[yt,Ct]=(0,Ge.useState)([]);(0,Ge.useEffect)(()=>{Wt()},[Me]),(0,Ge.useEffect)(()=>{te.actionTabs.key==="\u66F4\u65B0\u6570\u636E"&&(re({type:"pathsDetail/setActionTabs",payload:{key:""}}),Wt())},[te.actionTabs.key]);const zt=(Sn,kn)=>ni(void 0,null,function*(){const Kn=yield(0,ie.ZP)("/api/subject_knowledge.json",{method:"get",params:{id:Sn,subject_id:E,node_type:Me}});if((Kn==null?void 0:Kn.status)===0)return kn&&$e((Kn==null?void 0:Kn.node_types)||[]),(Kn==null?void 0:Kn.data)||[];Ae(!1)}),Wt=()=>ni(void 0,null,function*(){Ae(!0);const Sn=yield zt(b,!0);ce(Sn),Ae(!1)}),Ht=(Sn,kn,Kn)=>ni(void 0,null,function*(){return yield Promise.all(Sn.map(er=>ni(void 0,null,function*(){return er.key===kn?yield Kn(er):er.children&&er.children.length>0?ai(Lr({},er),{children:yield Ht(er.children,kn,Kn)}):er})))}),Qt=Sn=>ni(void 0,null,function*(){Ae(!0);const kn=yield Ht(le,Sn,Kn=>ni(void 0,null,function*(){var vr,er;const Nr=ai(Lr({},Kn),{expand:!(Kn!=null&&Kn.expand)});return!(Kn!=null&&Kn.expand)&&!((vr=Kn==null?void 0:Kn.children)!=null&&vr.length)&&(Nr.children=yield zt(Sn),((er=Nr.children)==null?void 0:er.length)===0&&(Nr.has_children=!1,Nr.expand=!1)),Nr}));ce(kn),Ae(!1)}),Gt=Sn=>ni(void 0,null,function*(){Ae(!0),yield z(Sn,!1),Ae(!1)});return ra.createElement("div",{className:xr.tree},ra.createElement("div",{className:xr.center},ra.createElement("div",{className:xr.head},ra.createElement("div",{className:xr.del},ra.createElement("i",{onClick:x,className:"iconfont icon-shanchuhuanjing"}),ra.createElement("b",null))),ra.createElement("div",{className:xr.body},ge&&ra.createElement("div",{className:xr.loading},ra.createElement(ye.Z,{spinning:!0})),ra.createElement("div",{style:{display:"flex",justifyContent:"space-between"}},ra.createElement("div",{className:xr.tabs,style:{flex:1}},Xe==null?void 0:Xe.map(Sn=>ra.createElement("div",{onClick:()=>Ue(Sn.node_type),className:Sn.node_type===Me?xr.active:void 0,key:Sn.node_type},Sn.node_type,"\uFF08",Sn.count,"\uFF09"))),rt.get("type")==="classrooms"&&((oe=te==null?void 0:te.detail)==null?void 0:oe.can_managed)&&ra.createElement("div",null,ot&&ra.createElement(Yr.default,{style:{color:"#fff"},checked:(yt==null?void 0:yt.length)===(le==null?void 0:le.length),onChange:()=>{if((yt==null?void 0:yt.length)===(le==null?void 0:le.length))Ct([]);else{pt(!0);let Sn=[...le];Ct(Sn)}}},(yt==null?void 0:yt.length)===(le==null?void 0:le.length)?"\u53D6\u6D88\u5168\u9009":"\u5168\u9009","\uFF08\u5F53\u524D\u9009\u4E2D",yt==null?void 0:yt.length,"\uFF09"),ot&&ra.createElement(we.ZP,{style:{marginRight:"20rem",borderRadius:"24rem"},onClick:()=>pt(!1)},"\u53D6\u6D88"),ra.createElement(we.ZP,{type:"primary",onClick:()=>ni(void 0,null,function*(){if(ot)re({type:"classroomList/setActionTabs",payload:{key:"\u7ACB\u5373\u53D1\u5E03",selectArrs:yt==null?void 0:yt.map(Sn=>Sn.id)}});else{pt(!0);let Sn=[...le];Ct(Sn)}}),style:{borderRadius:"24rem"}},ot?"\u6279\u91CF\u53D1\u5E03":"\u53D1\u5E03\u8282\u70B9"))),ra.createElement("div",{className:xr.scrollBox},ra.createElement("div",{className:rr()(xr.treeWarp,!0&&xr.allTreeNode)},ra.createElement(yi,{pathsDetail:te,selectitems:yt,setselectitems:Ct,publishshow:ot,data:le,onClickDetails:Gt,onExpandClick:Qt}))))),ra.createElement(Xl,null))},uo=Be(89282),gi=Be(59301),Ho=Object.defineProperty,io=Object.defineProperties,oa=Object.getOwnPropertyDescriptors,Jo=Object.getOwnPropertySymbols,ea=Object.prototype.hasOwnProperty,Qa=Object.prototype.propertyIsEnumerable,as=(b,x,E)=>x in b?Ho(b,x,{enumerable:!0,configurable:!0,writable:!0,value:E}):b[x]=E,ca=(b,x)=>{for(var E in x||(x={}))ea.call(x,E)&&as(b,E,x[E]);if(Jo)for(var E of Jo(x))Qa.call(x,E)&&as(b,E,x[E]);return b},Da=(b,x)=>io(b,oa(x)),ds=(b,x,E)=>new Promise((z,te)=>{var re=ce=>{try{le(E.next(ce))}catch(ge){te(ge)}},oe=ce=>{try{le(E.throw(ce))}catch(ge){te(ge)}},le=ce=>ce.done?z(ce.value):Promise.resolve(ce.value).then(re,oe);le((E=E.apply(b,x)).next())});const da=[3,2,1];var ha=({xxljac:b,pathsDetail:x,dispatch:E,setxxljac:z})=>{var te,re,oe;const le=(0,ke.useParams)(),ce=(0,ke.useSelector)(Fa=>Fa),{pathsDetail:{detail:ge={}}}=ce,[Ae,Me]=(0,Ge.useState)(!0),[Ue,Xe]=(0,Ge.useState)(!1),[$e,rt]=(0,Ge.useState)(""),[ot,pt]=(0,Ge.useState)(!1),[yt,Ct]=(0,Ge.useState)(!1),[zt,Wt]=(0,Ge.useState)(!1),[Ht,Qt]=(0,Ge.useState)(""),[Gt,vn]=(0,Ge.useState)({}),[Sn,kn]=(0,Ge.useState)([]),[Kn,vr]=(0,Ge.useState)(""),[er,Nr]=(0,Ge.useState)([]),[ei,Ar]=(0,Ge.useState)(!1),[Sr,Ir]=(0,Ge.useState)(1),[si,Cr]=(0,Ge.useState)({});let[wi,Mo]=(0,Ge.useState)({});const Po=ge==null?void 0:ge.can_managed,[eo]=(0,ke.useSearchParams)();(0,Ge.useEffect)(()=>{kl(b)},[b]);function Ui(){return ds(this,null,function*(){var Fa;let tl=[...(Fa=x==null?void 0:x.detail)==null?void 0:Fa.nodes];Nr(tl==null?void 0:tl.splice(1))})}(0,Ge.useEffect)(()=>{var Fa;(Fa=x==null?void 0:x.detail)!=null&&Fa.nodes&&Sr===1&&(Ui(),Ir(2))},[(te=x==null?void 0:x.detail)==null?void 0:te.nodes]);const fo=(Fa=null)=>ds(void 0,null,function*(){var tl;Me(!0);const Ps=yield(0,ie.ZP)("/api/subject_knowledge.json",{method:"get",params:{id:Fa,subject_id:le==null?void 0:le.pathId}});if((Ps==null?void 0:Ps.status)===0){vn(Ps||{});const rl=(Ps==null?void 0:Ps.parent_knowledges)||[];kn(rl),Fa||vr((tl=rl==null?void 0:rl[0])==null?void 0:tl.id)}Me(!1),eo.get("type")==="classrooms"?E({type:"pathsDetail/getCourseDetail",payload:ca({id:le.pathId,knowledge:!0},(0,Yt.oP)())}):E({type:"pathsDetail/getPathsDetail",payload:ca({id:le.pathId,knowledge:!0},(0,Yt.oP)())})}),Uo=()=>ds(void 0,null,function*(){var Fa,tl,Ps,rl,gl,fu,$l,Xa,ms,$o;if(!Ht){Ze.ZP.warning("\u8BF7\u8F93\u5165\u6587\u672C");return}if(Ht!=="\u786E\u8BA4\u5220\u9664"){Ze.ZP.warning("\u6587\u672C\u8F93\u5165\u6709\u8BEF");return}Wt(!0);const va=yield(0,ie.ZP)("/api/subject_knowledge.json",{method:"delete",body:{id:Kn,subject_id:le==null?void 0:le.pathId}});if((va==null?void 0:va.status)===0)if(Ze.ZP.success("\u5220\u9664\u6210\u529F"),pt(!1),eo.get("type")==="classrooms"){let Oa=yield E({type:"pathsDetail/getCourseDetail",payload:ca({id:(Fa=x==null?void 0:x.detail)==null?void 0:Fa.id,knowledge:!0},(0,Yt.oP)())});kl((Ps=(tl=Oa==null?void 0:Oa.route_nodes)==null?void 0:tl[0])==null?void 0:Ps.id,((gl=(rl=Oa==null?void 0:Oa.route_nodes)==null?void 0:rl[0])==null?void 0:gl.name)||"\u5B66\u4E60\u8DEF\u5F84")}else{let Oa=yield E({type:"pathsDetail/getPathsDetail",payload:ca({id:(fu=x==null?void 0:x.detail)==null?void 0:fu.id,knowledge:!0},(0,Yt.oP)())});kl((Xa=($l=Oa==null?void 0:Oa.route_nodes)==null?void 0:$l[0])==null?void 0:Xa.id,(($o=(ms=Oa==null?void 0:Oa.route_nodes)==null?void 0:ms[0])==null?void 0:$o.name)||"\u5B66\u4E60\u8DEF\u5F84")}Wt(!1)}),pa=(Fa,tl=!0)=>ds(void 0,null,function*(){var Ps,rl,gl,fu,$l,Xa,ms;if((Fa==null?void 0:Fa.container_type)==="Attachment"&&!((Ps=x==null?void 0:x.detail)!=null&&Ps.can_managed)){(0,uo.fc)({id:Fa==null?void 0:Fa.container_id,watch_type:2,course_id:(rl=x==null?void 0:x.detail)==null?void 0:rl.id}),Cr({url:qt.Z.API_SERVER+(Fa==null?void 0:Fa.url),file_type:Fa==null?void 0:Fa.file_type});return}if(Fa!=null&&Fa.url){window.open(Fa==null?void 0:Fa.url);return}tl&&Me(!0);let $o=yield(0,ie.ZP)("/api/knowledge/v2/get_node.json",{method:"get",params:{depth:0,subject_id:le==null?void 0:le.pathId,nodeUuid:(Fa==null?void 0:Fa.knowledge_uuid)||(Fa==null?void 0:Fa.key)}});if(($o==null?void 0:$o.status)===0){if(((fu=(gl=$o==null?void 0:$o.data)==null?void 0:gl.nodes)==null?void 0:fu.length)>0){let va=(ms=(Xa=($l=$o==null?void 0:$o.data)==null?void 0:$l.nodes)==null?void 0:Xa.map(Oa=>{var js,aa,cl,Hs,Gu,hu,bu,Pu,gu,Qc,Dp,Ip,Mc;const ch=(js=$o==null?void 0:$o.data)==null?void 0:js.resource_count;return Da(ca({},Oa==null?void 0:Oa.properties),{rootNodeUuid:(aa=Oa==null?void 0:Oa.properties)==null?void 0:aa.rootNodeUuid,id:(cl=Oa==null?void 0:Oa.properties)==null?void 0:cl.uuid,name:(Hs=Oa==null?void 0:Oa.properties)==null?void 0:Hs.name,description:(Gu=Oa==null?void 0:Oa.properties)==null?void 0:Gu.description,nodeType:(hu=Oa==null?void 0:Oa.properties)==null?void 0:hu.nodeType,tags:((bu=Oa==null?void 0:Oa.properties)==null?void 0:bu.tags)&&((Qc=(gu=(Pu=Oa==null?void 0:Oa.properties)==null?void 0:Pu.tags)==null?void 0:gu.split("\uFF0C"))==null?void 0:Qc.map(jg=>({name:jg})))||[],colorType:parseInt((Dp=Oa==null?void 0:Oa.properties)==null?void 0:Dp.color)>3?"3":(Ip=Oa==null?void 0:Oa.properties)==null?void 0:Ip.color,activeColor:"#FA6400",size:da[((Mc=Oa==null?void 0:Oa.properties)==null?void 0:Mc.color)-1]||1,shape:"circle",hide:!1,isExtendedState:!0,currentResourceTotal:ch})}))==null?void 0:ms[0];va.resourceid=Fa==null?void 0:Fa.id,Mo(va),Ar(!0)}Me(!1)}}),Ga=Fa=>ds(void 0,null,function*(){Ct(Fa==null?void 0:Fa.id)}),kl=(Fa,tl)=>ds(void 0,null,function*(){tl?z(Fa):(vr(Fa),fo(Fa))}),al=()=>gi.createElement("div",{className:qe.studentHead},gi.createElement("div",{className:qe.headLi},gi.createElement("img",{src:dt}),gi.createElement("aside",null,gi.createElement("span",null,"\u8D44\u6E90\u603B\u6570"),gi.createElement("b",null,Gt==null?void 0:Gt.resource_count))),gi.createElement("div",{className:qe.headLi},gi.createElement("img",{src:Mt}),gi.createElement("aside",null,gi.createElement("span",null,"\u5B66\u4E60\u5B8C\u6210\u7387"),gi.createElement("b",{style:{color:"#F7B500"}},Gt==null?void 0:Gt.complete_rate,"%"))),gi.createElement("div",{className:qe.headLi},gi.createElement("img",{src:wt}),gi.createElement("aside",null,gi.createElement("span",null,"\u5B66\u4E60\u638C\u63E1\u7387"),gi.createElement("b",{style:{color:"#3AFFC8"}},Gt==null?void 0:Gt.grasp_rate,"%"))),gi.createElement("div",{className:qe.headLi},gi.createElement("img",{src:rn}),gi.createElement("aside",null,gi.createElement("span",{style:{marginBottom:"10rem"}},"\u4E0A\u6B21\u5B66\u5230"),gi.createElement(Wn.Z,{title:Gt==null?void 0:Gt.last_knowledge_name},gi.createElement("b",{style:{color:"#7FAAFF",fontSize:"16rem"}},(0,Yt.Pq)(Gt==null?void 0:Gt.last_knowledge_name,13))))),gi.createElement("div",{onClick:()=>pa({knowledge_uuid:Gt==null?void 0:Gt.last_knowledge_uuid,id:Gt==null?void 0:Gt.last_knowledge_uuid}),className:qe.btn},"\u7EE7\u7EED\u5B66\u4E60"));return gi.createElement(gi.Fragment,null,gi.createElement(nn,null,gi.createElement(gi.Fragment,null,gi.createElement("span",{className:"relative",style:{float:"right"}},Po&&gi.createElement("div",{className:qe.addBtn,onClick:()=>{rt(null),Xe(!0)}},"\u521B\u5EFA\u5B66\u4E60\u8DEF\u5F84")),gi.createElement("div",{className:qe.learning},gi.createElement("div",{className:qe.body},gi.createElement(ye.Z,{spinning:Ae},(re=Gt==null?void 0:Gt.data)!=null&&re.length?gi.createElement(gi.Fragment,null,Po?gi.createElement("div",{className:qe.head},gi.createElement("div",{className:qe.numerical},gi.createElement("div",null,gi.createElement("img",{src:dt}),gi.createElement("span",null,"\u8D44\u6E90\u603B\u6570"),gi.createElement("b",null,Gt==null?void 0:Gt.resource_count)),gi.createElement("div",null,gi.createElement("img",{src:Mt}),gi.createElement("span",null,"\u5E73\u5747\u5B66\u4E60\u5B8C\u6210\u7387"),gi.createElement("b",{style:{color:"#F7B500"}},Gt==null?void 0:Gt.complete_rate,"%")),gi.createElement("div",null,gi.createElement("img",{src:wt}),gi.createElement("span",null,"\u5E73\u5747\u5B66\u4E60\u638C\u63E1\u7387"),gi.createElement("b",{style:{color:"#3AFFC8"}},Gt==null?void 0:Gt.grasp_rate,"%"))),gi.createElement("div",{className:qe.action},gi.createElement("div",{onClick:()=>{rt(Kn),Xe(!0)}},gi.createElement("span",null,gi.createElement("i",{className:"iconfont icon-bianji13"})),gi.createElement("span",null,"\u7F16\u8F91\u5B66\u4E60\u8DEF\u5F84")),gi.createElement("div",{onClick:()=>pt(!0)},gi.createElement("span",null,gi.createElement("i",{className:"iconfont icon-shanchu17"})),gi.createElement("span",null,"\u5220\u9664\u5B66\u4E60\u8DEF\u5F84")))):al(),gi.createElement(qn,{pathsDetail:x,dataSource:(Gt==null?void 0:Gt.data)||[],onClick:pa,onMore:Ga})):gi.createElement(Rt,{style:{height:"calc(100vh - 440rem)",visibility:Ae?"hidden":"visible"},text:"\u6682\u65E0\u5B66\u4E60\u8DEF\u5F84\u6570\u636E",textColor:"#fff",buttonText:Po&&"\u521B\u5EFA\u5B66\u4E60\u8DEF\u5F84",onClick:()=>{rt(null),Xe(!0)}}))),yt&&gi.createElement(co,{pathsDetail:x,subjectId:le==null?void 0:le.pathId,dispatch:E,visible:yt,onCancel:()=>Ct(!1),onClickDetails:pa}),Ue&&gi.createElement(ys,{onOk:kl,setaddmodal:Xe,addmodal:Ue,uuid:$e}),gi.createElement(Oe.default,{title:"\u786E\u8BA4\u5220\u9664\u63D0\u793A",open:ot,centered:!0,confirmLoading:zt,okButtonProps:{danger:!0},width:"600rem",okText:"\u786E\u8BA4\u5220\u9664",onCancel:()=>pt(!1),cancelText:"\u53D6\u6D88",afterClose:()=>{Qt("")},onOk:Uo},gi.createElement("div",{style:{background:"#fff",boxShadow:"0 3rem 4rem 0 #F3F3F3",borderRadius:"2rem",padding:"20rem"}},gi.createElement("div",{style:{fontSize:"16rem",color:"#000"}},"\u8BF7\u786E\u8BA4\u662F\u5426\u5220\u9664\u300A",(oe=Sn==null?void 0:Sn.find(Fa=>Fa.id===Kn))==null?void 0:oe.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"),gi.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"),gi.createElement(je.default,{size:"large",placeholder:"\u8BF7\u8F93\u5165\u201C\u786E\u8BA4\u5220\u9664\u201D\u6587\u672C",value:Ht,onChange:Fa=>Qt(Fa.target.value)})))))),gi.createElement(Er,{initdata:()=>{},uuid:"\u5B66\u4E60\u8DEF\u5F84",Tabsdatas:er,setshow:()=>{},getData:fo,buildTree:()=>{},containerRef:()=>{},showdetail:ei,setshowdetail:Ar,items:wi}),gi.createElement(Ci.Z,{close:!0,style:{zIndex:1300,background:"rgba(1, 10, 35, 0.5)"},data:si==null?void 0:si.url,type:si==null?void 0:si.file_type,disabledDownload:!0,onClose:()=>Cr({})}))},jo=Be(78673),zo=Be(59301),Wa=Object.defineProperty,ss=Object.getOwnPropertySymbols,hs=Object.prototype.hasOwnProperty,sa=Object.prototype.propertyIsEnumerable,ht=(b,x,E)=>x in b?Wa(b,x,{enumerable:!0,configurable:!0,writable:!0,value:E}):b[x]=E,Dt=(b,x)=>{for(var E in x||(x={}))hs.call(x,E)&&ht(b,E,x[E]);if(ss)for(var E of ss(x))sa.call(x,E)&&ht(b,E,x[E]);return b},_t=(b,x)=>{var E={};for(var z in b)hs.call(b,z)&&x.indexOf(z)<0&&(E[z]=b[z]);if(b!=null&&ss)for(var z of ss(b))x.indexOf(z)<0&&sa.call(b,z)&&(E[z]=b[z]);return E},en=(b,x,E)=>new Promise((z,te)=>{var re=ce=>{try{le(E.next(ce))}catch(ge){te(ge)}},oe=ce=>{try{le(E.throw(ce))}catch(ge){te(ge)}},le=ce=>ce.done?z(ce.value):Promise.resolve(ce.value).then(re,oe);le((E=E.apply(b,x)).next())});const pn=b=>{var x=b,{pathsDetail:E,user:z,globalSetting:te,loading:re,dispatch:oe,datas:le,styles:ce,activied:ge}=x,Ae=_t(x,["pathsDetail","user","globalSetting","loading","dispatch","datas","styles","activied"]);const[Me,Ue]=(0,Ge.useState)(!1),[Xe,$e]=(0,Ge.useState)([]),[rt,ot]=(0,Ge.useState)([]),[pt,yt]=(0,Ge.useState)(),[Ct,zt]=(0,Ge.useState)([]),[Wt,Ht]=(0,Ge.useState)(!1);(0,Ge.useEffect)(()=>{Me&&Qt()},[Me]),(0,Ge.useEffect)(()=>{Ht(ge===2)},[ge]);function Qt(){return en(this,null,function*(){var Gt,vn;let Sn=yield(0,ie.ZP)("/api/knowledge/v2/courses.json",{method:"get",params:{subject_id:(Gt=E==null?void 0:E.detail)==null?void 0:Gt.id}});(Sn==null?void 0:Sn.status)===0&&ot(Sn==null?void 0:Sn.data);let kn=yield(0,ie.ZP)("/api/knowledge/v2/get_node.json",{method:"get",params:{depth:1,subject_id:E.detail.id}});if((kn==null?void 0:kn.status)===0){let Kn=[...(vn=kn==null?void 0:kn.data)==null?void 0:vn.nodes];$e(Kn==null?void 0:Kn.splice(1))}})}return zo.createElement("div",{style:Dt({width:"128rem"},ce)},zo.createElement("span",{onClick:()=>{Ue(!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"),zo.createElement(Oe.default,{title:"\u5173\u8054\u6559\u5B66\u8BFE\u5802",open:Me,width:"860rem",centered:!0,onOk:()=>en(void 0,null,function*(){if(!pt){Ze.ZP.info("\u8BF7\u9009\u62E9\u6559\u5B66\u8BFE\u5802");return}if((Ct==null?void 0:Ct.length)<=0){Ze.ZP.info("\u8BF7\u9009\u62E9\u77E5\u8BC6\u56FE\u8C31");return}let Gt=yield(0,ie.ZP)("/api/knowledge/v2/send_to_course.json",{method:"post",body:{subject_id:E.detail.id,uuids:Ct,course_id:pt,send_route:Wt}});(Gt==null?void 0:Gt.status)===0&&(Ue(!1),Oe.default.warning({title:"\u6E29\u99A8\u63D0\u793A",icon:null,closeIcon:!0,centered:!0,content:zo.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 vn;window.open(`${(vn=rt==null?void 0:rt.find(Sn=>(Sn==null?void 0:Sn.id)===pt))==null?void 0:vn.first_category_url}`)}}))}),onCancel:()=>{Ue(!1)}},zo.createElement("div",{style:{background:"#fff",boxShadow:"0rem 3rem 4rem 0rem #f3f3f3",borderRadius:"0rem 0rem 2rem 2rem",padding:"20rem"}},zo.createElement("div",{style:{height:"40rem",minHeight:"40rem",display:"flex"}},zo.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"),zo.createElement(nn,null,zo.createElement(ui.default,{showSearch:!0,filterOption:(Gt,vn)=>vn.children.toLowerCase().indexOf(Gt.toLowerCase())>=0,onChange:Gt=>{yt(Gt)},style:{width:"90%"},size:"large"},rt==null?void 0:rt.map(Gt=>zo.createElement(ui.default.Option,{value:Gt==null?void 0:Gt.id},Gt==null?void 0:Gt.name))))),zo.createElement("div",{style:{marginTop:"30rem"}},zo.createElement("span",{style:{marginLeft:"14rem",color:"#5F6368"}},"\u77E5\u8BC6\u56FE\u8C31"),zo.createElement(Yr.default.Group,{onChange:Gt=>{zt(Gt)},style:{marginLeft:"30rem"}},Xe==null?void 0:Xe.map(Gt=>{var vn,Sn;return zo.createElement(Yr.default,{value:(vn=Gt==null?void 0:Gt.properties)==null?void 0:vn.uuid},(Sn=Gt==null?void 0:Gt.properties)==null?void 0:Sn.name)}))),zo.createElement("div",{style:{marginTop:"30rem"}},zo.createElement("span",{style:{marginLeft:"14rem",color:"#5F6368"}},"\u5B66\u4E60\u8DEF\u5F84"),zo.createElement(jo.Z,{onChange:Gt=>{console.log(Gt),Ht(Gt)},style:{marginLeft:"30rem"},disabled:ge===2,checked:Wt}),zo.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 yn=(0,ke.connect)(({pathsDetail:b,user:x,loading:E,globalSetting:z})=>({pathsDetail:b,user:x,globalSetting:z,loading:E.models.index}))(pn),In=Be(38854),mn={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"},Hn=Be(59301),Un=Object.defineProperty,ir=Object.getOwnPropertySymbols,Dr=Object.prototype.hasOwnProperty,br=Object.prototype.propertyIsEnumerable,Qr=(b,x,E)=>x in b?Un(b,x,{enumerable:!0,configurable:!0,writable:!0,value:E}):b[x]=E,Hr=(b,x)=>{for(var E in x||(x={}))Dr.call(x,E)&&Qr(b,E,x[E]);if(ir)for(var E of ir(x))br.call(x,E)&&Qr(b,E,x[E]);return b},Fr=(b,x,E)=>new Promise((z,te)=>{var re=ce=>{try{le(E.next(ce))}catch(ge){te(ge)}},oe=ce=>{try{le(E.throw(ce))}catch(ge){te(ge)}},le=ce=>ce.done?z(ce.value):Promise.resolve(ce.value).then(re,oe);le((E=E.apply(b,x)).next())}),zr=({value:b=[],onChange:x,type:E,subjectId:z})=>{const[te,re]=(0,Ge.useState)(!1),[oe,le]=(0,Ge.useState)([]),[ce,ge]=(0,Ge.useState)([]),[Ae,Me]=(0,Ge.useState)([]),[Ue,Xe]=(0,Ge.useState)(""),[$e,rt]=(0,Ge.useState)(""),[ot,pt]=(0,Ge.useState)(!1),[yt,Ct]=(0,Ge.useState)(!1),zt=[{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"}],Wt=E===1?"\u7C7B\u578B":"\u6807\u7B7E",Ht=E===1?"0":"4";(0,Ge.useEffect)(()=>{te&&(Me(b),Qt())},[te]);const Qt=()=>Fr(void 0,null,function*(){var Kn;Ct(!0);const vr=yield(0,ie.ZP)("/api/knowledge_items.json",{method:"get",params:{subject_id:z,item_type:Ht}});(vr==null?void 0:vr.status)===0&&(le((Kn=vr==null?void 0:vr.data)==null?void 0:Kn.map(er=>er.name)),ge((vr==null?void 0:vr.data)||[])),Ct(!1)}),Gt=Kn=>Fr(void 0,null,function*(){var vr;Ct(!0);const er=(vr=ce==null?void 0:ce.find(ei=>ei.name===Kn))==null?void 0:vr.id,Nr=yield(0,ie.ZP)(`/api/knowledge_items/${er}.json`,{method:"delete",body:{subject_id:z}});if((Nr==null?void 0:Nr.status)===0){Qt(),Ze.ZP.success("\u5220\u9664\u6210\u529F");return}Ct(!1)}),vn=({title:Kn="",style:vr={},showDelete:er=!0,modal:Nr=!1,active:ei=!1})=>{const Sr=(Cr=>Cr.split("").reduce((wi,Mo)=>wi+Mo.charCodeAt(0),0))(Kn)%zt.length,{background:Ir,borderColor:si}=zt[Sr];return Hn.createElement("div",{className:rr()(mn.tag,ei?mn.active:""),onClick:()=>{Nr&&(te===1&&Me([Kn]),te===2&&(Ae.includes(Kn)?Me(Ae.filter(Cr=>Cr!==Kn)):Me([...Ae,Kn])))},style:Hr({background:Ir,borderColor:si},vr)},Hn.createElement("span",null,Kn),er&&Hn.createElement("i",{onClick:Cr=>{Cr.stopPropagation(),Nr?Gt(Kn):x(b.filter(wi=>wi!==Kn))},className:"iconfont icon-shanchu5"}))},Sn=()=>{x([...Ae]),re(!1)},kn=()=>Fr(void 0,null,function*(){if(!Ue.replace(/\s+/g,"")){rt(`${Wt}\u4E0D\u80FD\u4E3A\u7A7A`);return}if(oe.includes(Ue)){rt(`\u8BE5${Wt}\u5DF2\u5B58\u5728\uFF0C\u8BF7\u52FF\u91CD\u590D\u6DFB\u52A0\uFF01`);return}Ct(!0);const Kn=yield(0,ie.ZP)("/api/knowledge_items.json",{method:"post",body:{subject_id:z,item_type:Ht,name:Ue}});if((Kn==null?void 0:Kn.status)===0){yield Qt(),pt(!1),Ze.ZP.success("\u6DFB\u52A0\u6210\u529F");return}Ct(!1)});return Hn.createElement("div",{className:mn.tagsModal},E===1&&Hn.createElement(Hn.Fragment,null,b==null?void 0:b.map((Kn,vr)=>Hn.createElement(vn,{key:vr,title:Kn,showDelete:!1,style:{marginRight:"20rem"}})),Hn.createElement("div",{onClick:()=>re(1),style:{marginBottom:"20rem"},className:mn.btn},Hn.createElement("i",{className:"iconfont icon-genghuanguanliyuan1"}),b!=null&&b.length?"\u66F4\u6362":"\u9009\u62E9","\u7C7B\u578B")),E===2&&Hn.createElement(Hn.Fragment,null,b==null?void 0:b.map((Kn,vr)=>Hn.createElement(vn,{key:vr,title:Kn})),Hn.createElement("div",{onClick:()=>re(2),className:mn.btn,style:{marginBottom:"10rem"}},Hn.createElement("i",{className:"iconfont icon-tianjiatixing"}),b!=null&&b.length?"\u66F4\u6362":"\u9009\u62E9","\u6807\u7B7E")),Hn.createElement(Oe.default,{open:!!te,centered:!0,width:"1000rem",okText:"\u4FDD\u5B58",onCancel:()=>re(!1),cancelText:"\u53D6\u6D88",afterClose:()=>{pt(!1),rt(""),Xe("")},onOk:Sn,title:`\u9009\u62E9${Wt}`},Hn.createElement("div",{className:mn.modal},Hn.createElement(ye.Z,{spinning:yt},Hn.createElement("div",{className:mn.mHead},Hn.createElement("b",null),Hn.createElement("span",null,`\u8282\u70B9${Wt}`,"\uFF08",oe.length,"\uFF09"),Hn.createElement("div",{onClick:()=>{ot||(pt(!0),rt(""),Xe(""))},className:mn.btn},Hn.createElement("i",{className:"iconfont icon-tianjiatixing"}),"\u6DFB\u52A0")),Hn.createElement("div",{className:mn.body},!(oe!=null&&oe.length)&&!ot&&Hn.createElement(Rt,{style:{height:"230rem"}}),oe==null?void 0:oe.map((Kn,vr)=>Hn.createElement(vn,{showDelete:!(Ae!=null&&Ae.includes(Kn)),modal:!0,style:{cursor:"pointer",verticalAlign:"center",marginTop:"10rem",marginBottom:"10rem"},active:Ae.includes(Kn),key:vr,title:Kn})),ot&&Hn.createElement("div",{className:mn.add},Hn.createElement(je.default,{style:{width:"rem"},size:"large",value:Ue,onChange:Kn=>{rt(""),Xe(Kn.target.value)}}),Hn.createElement("i",{onClick:kn,className:"iconfont icon-dui",style:{color:"#1B8565"}}),Hn.createElement("i",{onClick:()=>pt(!1),className:"iconfont icon-shanchu10",style:{color:"#9096A3"}}),!!$e&&Hn.createElement("div",{className:mn.error},$e)))))))},Vr={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"},Ti=Be(88522),Li=Be(33708),xi=Be(6909),qr=Be(4771),Bo=Be(26407),ta=Be(87822),ga=Be(3776),ki=Be(78872);function Fi(b,x,E){return x=(0,ta.Z)(x),(0,ki.Z)(b,(0,ga.Z)()?Reflect.construct(x,E||[],(0,ta.Z)(b).constructor):x.apply(b,E))}var Do=Be(9427),Wr=Be(33606),Ki=Be(37271),ho=Ki,Qi=1e-6,Io=typeof Float32Array!="undefined"?Float32Array:Array,Eo=Math.random;function Vo(b){Io=b}var Ua=Math.PI/180;function $a(b){return b*Ua}function Ao(b,x){return Math.abs(b-x)<=Qi*Math.max(1,Math.abs(b),Math.abs(x))}Math.hypot||(Math.hypot=function(){for(var b=0,x=arguments.length;x--;)b+=arguments[x]*arguments[x];return Math.sqrt(b)});function ba(){var b=new Io(3);return Io!=Float32Array&&(b[0]=0,b[1]=0,b[2]=0),b}function bs(b){var x=new Io(3);return x[0]=b[0],x[1]=b[1],x[2]=b[2],x}function Cl(b){var x=b[0],E=b[1],z=b[2];return Math.hypot(x,E,z)}function Gs(b,x,E){var z=new Io(3);return z[0]=b,z[1]=x,z[2]=E,z}function Fs(b,x){return b[0]=x[0],b[1]=x[1],b[2]=x[2],b}function _l(b,x,E,z){return b[0]=x,b[1]=E,b[2]=z,b}function Hl(b,x,E){return b[0]=x[0]+E[0],b[1]=x[1]+E[1],b[2]=x[2]+E[2],b}function tu(b,x,E){return b[0]=x[0]-E[0],b[1]=x[1]-E[1],b[2]=x[2]-E[2],b}function yd(b,x,E){return b[0]=x[0]*E[0],b[1]=x[1]*E[1],b[2]=x[2]*E[2],b}function sg(b,x,E){return b[0]=x[0]/E[0],b[1]=x[1]/E[1],b[2]=x[2]/E[2],b}function nd(b,x){return b[0]=Math.ceil(x[0]),b[1]=Math.ceil(x[1]),b[2]=Math.ceil(x[2]),b}function Wf(b,x){return b[0]=Math.floor(x[0]),b[1]=Math.floor(x[1]),b[2]=Math.floor(x[2]),b}function xf(b,x,E){return b[0]=Math.min(x[0],E[0]),b[1]=Math.min(x[1],E[1]),b[2]=Math.min(x[2],E[2]),b}function rd(b,x,E){return b[0]=Math.max(x[0],E[0]),b[1]=Math.max(x[1],E[1]),b[2]=Math.max(x[2],E[2]),b}function Vl(b,x){return b[0]=Math.round(x[0]),b[1]=Math.round(x[1]),b[2]=Math.round(x[2]),b}function nu(b,x,E){return b[0]=x[0]*E,b[1]=x[1]*E,b[2]=x[2]*E,b}function xc(b,x,E,z){return b[0]=x[0]+E[0]*z,b[1]=x[1]+E[1]*z,b[2]=x[2]+E[2]*z,b}function Mu(b,x){var E=x[0]-b[0],z=x[1]-b[1],te=x[2]-b[2];return Math.hypot(E,z,te)}function Kl(b,x){var E=x[0]-b[0],z=x[1]-b[1],te=x[2]-b[2];return E*E+z*z+te*te}function Ec(b){var x=b[0],E=b[1],z=b[2];return x*x+E*E+z*z}function yh(b,x){return b[0]=-x[0],b[1]=-x[1],b[2]=-x[2],b}function Jd(b,x){return b[0]=1/x[0],b[1]=1/x[1],b[2]=1/x[2],b}function Uf(b,x){var E=x[0],z=x[1],te=x[2],re=E*E+z*z+te*te;return re>0&&(re=1/Math.sqrt(re)),b[0]=x[0]*re,b[1]=x[1]*re,b[2]=x[2]*re,b}function Mr(b,x){return b[0]*x[0]+b[1]*x[1]+b[2]*x[2]}function qd(b,x,E){var z=x[0],te=x[1],re=x[2],oe=E[0],le=E[1],ce=E[2];return b[0]=te*ce-re*le,b[1]=re*oe-z*ce,b[2]=z*le-te*oe,b}function $d(b,x,E,z){var te=x[0],re=x[1],oe=x[2];return b[0]=te+z*(E[0]-te),b[1]=re+z*(E[1]-re),b[2]=oe+z*(E[2]-oe),b}function Em(b,x,E,z,te,re){var oe=re*re,le=oe*(2*re-3)+1,ce=oe*(re-2)+re,ge=oe*(re-1),Ae=oe*(3-2*re);return b[0]=x[0]*le+E[0]*ce+z[0]*ge+te[0]*Ae,b[1]=x[1]*le+E[1]*ce+z[1]*ge+te[1]*Ae,b[2]=x[2]*le+E[2]*ce+z[2]*ge+te[2]*Ae,b}function o0(b,x,E,z,te,re){var oe=1-re,le=oe*oe,ce=re*re,ge=le*oe,Ae=3*re*le,Me=3*ce*oe,Ue=ce*re;return b[0]=x[0]*ge+E[0]*Ae+z[0]*Me+te[0]*Ue,b[1]=x[1]*ge+E[1]*Ae+z[1]*Me+te[1]*Ue,b[2]=x[2]*ge+E[2]*Ae+z[2]*Me+te[2]*Ue,b}function lp(b,x){x=x||1;var E=glMatrix.RANDOM()*2*Math.PI,z=glMatrix.RANDOM()*2-1,te=Math.sqrt(1-z*z)*x;return b[0]=Math.cos(E)*te,b[1]=Math.sin(E)*te,b[2]=z*x,b}function Ac(b,x,E){var z=x[0],te=x[1],re=x[2],oe=E[3]*z+E[7]*te+E[11]*re+E[15];return oe=oe||1,b[0]=(E[0]*z+E[4]*te+E[8]*re+E[12])/oe,b[1]=(E[1]*z+E[5]*te+E[9]*re+E[13])/oe,b[2]=(E[2]*z+E[6]*te+E[10]*re+E[14])/oe,b}function Am(b,x,E){var z=x[0],te=x[1],re=x[2];return b[0]=z*E[0]+te*E[3]+re*E[6],b[1]=z*E[1]+te*E[4]+re*E[7],b[2]=z*E[2]+te*E[5]+re*E[8],b}function rh(b,x,E){var z=E[0],te=E[1],re=E[2],oe=E[3],le=x[0],ce=x[1],ge=x[2],Ae=te*ge-re*ce,Me=re*le-z*ge,Ue=z*ce-te*le,Xe=te*Ue-re*Me,$e=re*Ae-z*Ue,rt=z*Me-te*Ae,ot=oe*2;return Ae*=ot,Me*=ot,Ue*=ot,Xe*=2,$e*=2,rt*=2,b[0]=le+Ae+Xe,b[1]=ce+Me+$e,b[2]=ge+Ue+rt,b}function Np(b,x,E,z){var te=[],re=[];return te[0]=x[0]-E[0],te[1]=x[1]-E[1],te[2]=x[2]-E[2],re[0]=te[0],re[1]=te[1]*Math.cos(z)-te[2]*Math.sin(z),re[2]=te[1]*Math.sin(z)+te[2]*Math.cos(z),b[0]=re[0]+E[0],b[1]=re[1]+E[1],b[2]=re[2]+E[2],b}function k0(b,x,E,z){var te=[],re=[];return te[0]=x[0]-E[0],te[1]=x[1]-E[1],te[2]=x[2]-E[2],re[0]=te[2]*Math.sin(z)+te[0]*Math.cos(z),re[1]=te[1],re[2]=te[2]*Math.cos(z)-te[0]*Math.sin(z),b[0]=re[0]+E[0],b[1]=re[1]+E[1],b[2]=re[2]+E[2],b}function F0(b,x,E,z){var te=[],re=[];return te[0]=x[0]-E[0],te[1]=x[1]-E[1],te[2]=x[2]-E[2],re[0]=te[0]*Math.cos(z)-te[1]*Math.sin(z),re[1]=te[0]*Math.sin(z)+te[1]*Math.cos(z),re[2]=te[2],b[0]=re[0]+E[0],b[1]=re[1]+E[1],b[2]=re[2]+E[2],b}function _0(b,x){var E=b[0],z=b[1],te=b[2],re=x[0],oe=x[1],le=x[2],ce=Math.sqrt(E*E+z*z+te*te),ge=Math.sqrt(re*re+oe*oe+le*le),Ae=ce*ge,Me=Ae&&Mr(b,x)/Ae;return Math.acos(Math.min(Math.max(Me,-1),1))}function fy(b){return b[0]=0,b[1]=0,b[2]=0,b}function z0(b){return"vec3("+b[0]+", "+b[1]+", "+b[2]+")"}function j0(b,x){return b[0]===x[0]&&b[1]===x[1]&&b[2]===x[2]}function xh(b,x){var E=b[0],z=b[1],te=b[2],re=x[0],oe=x[1],le=x[2];return Math.abs(E-re)<=Qi*Math.max(1,Math.abs(E),Math.abs(re))&&Math.abs(z-oe)<=Qi*Math.max(1,Math.abs(z),Math.abs(oe))&&Math.abs(te-le)<=Qi*Math.max(1,Math.abs(te),Math.abs(le))}var Gg=tu,Sm=null,Gf=null,lg=Mu,Bp=null,Hg=Cl,id=null,Cv=function(){var b=ba();return function(x,E,z,te,re,oe){var le,ce;for(E||(E=3),z||(z=0),te?ce=Math.min(te*E+z,x.length):ce=x.length,le=z;le0&&(oe=1/Math.sqrt(oe)),b[0]=E*oe,b[1]=z*oe,b[2]=te*oe,b[3]=re*oe,b}function Cm(b,x){return b[0]*x[0]+b[1]*x[1]+b[2]*x[2]+b[3]*x[3]}function d1(b,x,E,z){var te=E[0]*z[1]-E[1]*z[0],re=E[0]*z[2]-E[2]*z[0],oe=E[0]*z[3]-E[3]*z[0],le=E[1]*z[2]-E[2]*z[1],ce=E[1]*z[3]-E[3]*z[1],ge=E[2]*z[3]-E[3]*z[2],Ae=x[0],Me=x[1],Ue=x[2],Xe=x[3];return b[0]=Me*ge-Ue*ce+Xe*le,b[1]=-(Ae*ge)+Ue*oe-Xe*re,b[2]=Ae*ce-Me*oe+Xe*te,b[3]=-(Ae*le)+Me*re-Ue*te,b}function bm(b,x,E,z){var te=x[0],re=x[1],oe=x[2],le=x[3];return b[0]=te+z*(E[0]-te),b[1]=re+z*(E[1]-re),b[2]=oe+z*(E[2]-oe),b[3]=le+z*(E[3]-le),b}function cg(b,x){x=x||1;var E,z,te,re,oe,le;do E=glMatrix.RANDOM()*2-1,z=glMatrix.RANDOM()*2-1,oe=E*E+z*z;while(oe>=1);do te=glMatrix.RANDOM()*2-1,re=glMatrix.RANDOM()*2-1,le=te*te+re*re;while(le>=1);var ce=Math.sqrt((1-oe)/le);return b[0]=x*E,b[1]=x*z,b[2]=x*te*ce,b[3]=x*re*ce,b}function Vg(b,x,E){var z=x[0],te=x[1],re=x[2],oe=x[3];return b[0]=E[0]*z+E[4]*te+E[8]*re+E[12]*oe,b[1]=E[1]*z+E[5]*te+E[9]*re+E[13]*oe,b[2]=E[2]*z+E[6]*te+E[10]*re+E[14]*oe,b[3]=E[3]*z+E[7]*te+E[11]*re+E[15]*oe,b}function f1(b,x,E){var z=x[0],te=x[1],re=x[2],oe=E[0],le=E[1],ce=E[2],ge=E[3],Ae=ge*z+le*re-ce*te,Me=ge*te+ce*z-oe*re,Ue=ge*re+oe*te-le*z,Xe=-oe*z-le*te-ce*re;return b[0]=Ae*ge+Xe*-oe+Me*-ce-Ue*-le,b[1]=Me*ge+Xe*-le+Ue*-oe-Ae*-ce,b[2]=Ue*ge+Xe*-ce+Ae*-le-Me*-oe,b[3]=x[3],b}function Pv(b){return b[0]=0,b[1]=0,b[2]=0,b[3]=0,b}function s0(b){return"vec4("+b[0]+", "+b[1]+", "+b[2]+", "+b[3]+")"}function py(b,x){return b[0]===x[0]&&b[1]===x[1]&&b[2]===x[2]&&b[3]===x[3]}function hg(b,x){var E=b[0],z=b[1],te=b[2],re=b[3],oe=x[0],le=x[1],ce=x[2],ge=x[3];return Math.abs(E-oe)<=Qi*Math.max(1,Math.abs(E),Math.abs(oe))&&Math.abs(z-le)<=Qi*Math.max(1,Math.abs(z),Math.abs(le))&&Math.abs(te-ce)<=Qi*Math.max(1,Math.abs(te),Math.abs(ce))&&Math.abs(re-ge)<=Qi*Math.max(1,Math.abs(re),Math.abs(ge))}var g1=null,Pm=null,vy=null,Mm=null,p1=null,lA=null,Au=null,Is=function(){var b=xd();return function(x,E,z,te,re,oe){var le,ce;for(E||(E=4),z||(z=0),te?ce=Math.min(te*E+z,x.length):ce=x.length,le=z;le0?(E[0]=(le*oe+Ae*z+ce*re-ge*te)*2/Me,E[1]=(ce*oe+Ae*te+ge*z-le*re)*2/Me,E[2]=(ge*oe+Ae*re+le*te-ce*z)*2/Me):(E[0]=(le*oe+Ae*z+ce*re-ge*te)*2,E[1]=(ce*oe+Ae*te+ge*z-le*re)*2,E[2]=(ge*oe+Ae*re+le*te-ce*z)*2),Lm(b,x,E),b}function ju(b,x){return b[0]=x[12],b[1]=x[13],b[2]=x[14],b}function u0(b,x){var E=x[0],z=x[1],te=x[2],re=x[4],oe=x[5],le=x[6],ce=x[8],ge=x[9],Ae=x[10];return b[0]=Math.hypot(E,z,te),b[1]=Math.hypot(re,oe,le),b[2]=Math.hypot(ce,ge,Ae),b}function Tm(b,x){var E=new Io(3);u0(E,x);var z=1/E[0],te=1/E[1],re=1/E[2],oe=x[0]*z,le=x[1]*te,ce=x[2]*re,ge=x[4]*z,Ae=x[5]*te,Me=x[6]*re,Ue=x[8]*z,Xe=x[9]*te,$e=x[10]*re,rt=oe+Ae+$e,ot=0;return rt>0?(ot=Math.sqrt(rt+1)*2,b[3]=.25*ot,b[0]=(Me-Xe)/ot,b[1]=(Ue-ce)/ot,b[2]=(le-ge)/ot):oe>Ae&&oe>$e?(ot=Math.sqrt(1+oe-Ae-$e)*2,b[3]=(Me-Xe)/ot,b[0]=.25*ot,b[1]=(le+ge)/ot,b[2]=(Ue+ce)/ot):Ae>$e?(ot=Math.sqrt(1+Ae-oe-$e)*2,b[3]=(Ue-ce)/ot,b[0]=(le+ge)/ot,b[1]=.25*ot,b[2]=(Me+Xe)/ot):(ot=Math.sqrt(1+$e-oe-Ae)*2,b[3]=(le-ge)/ot,b[0]=(Ue+ce)/ot,b[1]=(Me+Xe)/ot,b[2]=.25*ot),b}function Dm(b,x,E,z){var te=x[0],re=x[1],oe=x[2],le=x[3],ce=te+te,ge=re+re,Ae=oe+oe,Me=te*ce,Ue=te*ge,Xe=te*Ae,$e=re*ge,rt=re*Ae,ot=oe*Ae,pt=le*ce,yt=le*ge,Ct=le*Ae,zt=z[0],Wt=z[1],Ht=z[2];return b[0]=(1-($e+ot))*zt,b[1]=(Ue+Ct)*zt,b[2]=(Xe-yt)*zt,b[3]=0,b[4]=(Ue-Ct)*Wt,b[5]=(1-(Me+ot))*Wt,b[6]=(rt+pt)*Wt,b[7]=0,b[8]=(Xe+yt)*Ht,b[9]=(rt-pt)*Ht,b[10]=(1-(Me+$e))*Ht,b[11]=0,b[12]=E[0],b[13]=E[1],b[14]=E[2],b[15]=1,b}function Fp(b,x,E,z,te){var re=x[0],oe=x[1],le=x[2],ce=x[3],ge=re+re,Ae=oe+oe,Me=le+le,Ue=re*ge,Xe=re*Ae,$e=re*Me,rt=oe*Ae,ot=oe*Me,pt=le*Me,yt=ce*ge,Ct=ce*Ae,zt=ce*Me,Wt=z[0],Ht=z[1],Qt=z[2],Gt=te[0],vn=te[1],Sn=te[2],kn=(1-(rt+pt))*Wt,Kn=(Xe+zt)*Wt,vr=($e-Ct)*Wt,er=(Xe-zt)*Ht,Nr=(1-(Ue+pt))*Ht,ei=(ot+yt)*Ht,Ar=($e+Ct)*Qt,Sr=(ot-yt)*Qt,Ir=(1-(Ue+rt))*Qt;return b[0]=kn,b[1]=Kn,b[2]=vr,b[3]=0,b[4]=er,b[5]=Nr,b[6]=ei,b[7]=0,b[8]=Ar,b[9]=Sr,b[10]=Ir,b[11]=0,b[12]=E[0]+Gt-(kn*Gt+er*vn+Ar*Sn),b[13]=E[1]+vn-(Kn*Gt+Nr*vn+Sr*Sn),b[14]=E[2]+Sn-(vr*Gt+ei*vn+Ir*Sn),b[15]=1,b}function Mv(b,x){var E=x[0],z=x[1],te=x[2],re=x[3],oe=E+E,le=z+z,ce=te+te,ge=E*oe,Ae=z*oe,Me=z*le,Ue=te*oe,Xe=te*le,$e=te*ce,rt=re*oe,ot=re*le,pt=re*ce;return b[0]=1-Me-$e,b[1]=Ae+pt,b[2]=Ue-ot,b[3]=0,b[4]=Ae-pt,b[5]=1-ge-$e,b[6]=Xe+rt,b[7]=0,b[8]=Ue+ot,b[9]=Xe-rt,b[10]=1-ge-Me,b[11]=0,b[12]=0,b[13]=0,b[14]=0,b[15]=1,b}function uA(b,x,E,z,te,re,oe){var le=1/(E-x),ce=1/(te-z),ge=1/(re-oe);return b[0]=re*2*le,b[1]=0,b[2]=0,b[3]=0,b[4]=0,b[5]=re*2*ce,b[6]=0,b[7]=0,b[8]=(E+x)*le,b[9]=(te+z)*ce,b[10]=(oe+re)*ge,b[11]=-1,b[12]=0,b[13]=0,b[14]=oe*re*2*ge,b[15]=0,b}function dh(b,x,E,z,te){var re=1/Math.tan(x/2),oe;return b[0]=re/E,b[1]=0,b[2]=0,b[3]=0,b[4]=0,b[5]=re,b[6]=0,b[7]=0,b[8]=0,b[9]=0,b[11]=-1,b[12]=0,b[13]=0,b[15]=0,te!=null&&te!==1/0?(oe=1/(z-te),b[10]=(te+z)*oe,b[14]=2*te*z*oe):(b[10]=-1,b[14]=-2*z),b}var cA=dh;function Im(b,x,E,z,te){var re=1/Math.tan(x/2),oe;return b[0]=re/E,b[1]=0,b[2]=0,b[3]=0,b[4]=0,b[5]=re,b[6]=0,b[7]=0,b[8]=0,b[9]=0,b[11]=-1,b[12]=0,b[13]=0,b[15]=0,te!=null&&te!==1/0?(oe=1/(z-te),b[10]=te*oe,b[14]=te*z*oe):(b[10]=-1,b[14]=-z),b}function c0(b,x,E,z){var te=Math.tan(x.upDegrees*Math.PI/180),re=Math.tan(x.downDegrees*Math.PI/180),oe=Math.tan(x.leftDegrees*Math.PI/180),le=Math.tan(x.rightDegrees*Math.PI/180),ce=2/(oe+le),ge=2/(te+re);return b[0]=ce,b[1]=0,b[2]=0,b[3]=0,b[4]=0,b[5]=ge,b[6]=0,b[7]=0,b[8]=-((oe-le)*ce*.5),b[9]=(te-re)*ge*.5,b[10]=z/(E-z),b[11]=-1,b[12]=0,b[13]=0,b[14]=z*E/(E-z),b[15]=0,b}function Om(b,x,E,z,te,re,oe){var le=1/(x-E),ce=1/(z-te),ge=1/(re-oe);return b[0]=-2*le,b[1]=0,b[2]=0,b[3]=0,b[4]=0,b[5]=-2*ce,b[6]=0,b[7]=0,b[8]=0,b[9]=0,b[10]=2*ge,b[11]=0,b[12]=(x+E)*le,b[13]=(te+z)*ce,b[14]=(oe+re)*ge,b[15]=1,b}var Ee=Om;function _e(b,x,E,z,te,re,oe){var le=1/(x-E),ce=1/(z-te),ge=1/(re-oe);return b[0]=-2*le,b[1]=0,b[2]=0,b[3]=0,b[4]=0,b[5]=-2*ce,b[6]=0,b[7]=0,b[8]=0,b[9]=0,b[10]=ge,b[11]=0,b[12]=(x+E)*le,b[13]=(te+z)*ce,b[14]=re*ge,b[15]=1,b}function it(b,x,E,z){var te,re,oe,le,ce,ge,Ae,Me,Ue,Xe,$e=x[0],rt=x[1],ot=x[2],pt=z[0],yt=z[1],Ct=z[2],zt=E[0],Wt=E[1],Ht=E[2];return Math.abs($e-zt)0&&(Xe=1/Math.sqrt(Xe),Ae*=Xe,Me*=Xe,Ue*=Xe);var $e=ce*Ue-ge*Me,rt=ge*Ae-le*Ue,ot=le*Me-ce*Ae;return Xe=$e*$e+rt*rt+ot*ot,Xe>0&&(Xe=1/Math.sqrt(Xe),$e*=Xe,rt*=Xe,ot*=Xe),b[0]=$e,b[1]=rt,b[2]=ot,b[3]=0,b[4]=Me*ot-Ue*rt,b[5]=Ue*$e-Ae*ot,b[6]=Ae*rt-Me*$e,b[7]=0,b[8]=Ae,b[9]=Me,b[10]=Ue,b[11]=0,b[12]=te,b[13]=re,b[14]=oe,b[15]=1,b}function ct(b){return"mat4("+b[0]+", "+b[1]+", "+b[2]+", "+b[3]+", "+b[4]+", "+b[5]+", "+b[6]+", "+b[7]+", "+b[8]+", "+b[9]+", "+b[10]+", "+b[11]+", "+b[12]+", "+b[13]+", "+b[14]+", "+b[15]+")"}function jt(b){return Math.hypot(b[0],b[1],b[2],b[3],b[4],b[5],b[6],b[7],b[8],b[9],b[10],b[11],b[12],b[13],b[14],b[15])}function hn(b,x,E){return b[0]=x[0]+E[0],b[1]=x[1]+E[1],b[2]=x[2]+E[2],b[3]=x[3]+E[3],b[4]=x[4]+E[4],b[5]=x[5]+E[5],b[6]=x[6]+E[6],b[7]=x[7]+E[7],b[8]=x[8]+E[8],b[9]=x[9]+E[9],b[10]=x[10]+E[10],b[11]=x[11]+E[11],b[12]=x[12]+E[12],b[13]=x[13]+E[13],b[14]=x[14]+E[14],b[15]=x[15]+E[15],b}function Mn(b,x,E){return b[0]=x[0]-E[0],b[1]=x[1]-E[1],b[2]=x[2]-E[2],b[3]=x[3]-E[3],b[4]=x[4]-E[4],b[5]=x[5]-E[5],b[6]=x[6]-E[6],b[7]=x[7]-E[7],b[8]=x[8]-E[8],b[9]=x[9]-E[9],b[10]=x[10]-E[10],b[11]=x[11]-E[11],b[12]=x[12]-E[12],b[13]=x[13]-E[13],b[14]=x[14]-E[14],b[15]=x[15]-E[15],b}function Pn(b,x,E){return b[0]=x[0]*E,b[1]=x[1]*E,b[2]=x[2]*E,b[3]=x[3]*E,b[4]=x[4]*E,b[5]=x[5]*E,b[6]=x[6]*E,b[7]=x[7]*E,b[8]=x[8]*E,b[9]=x[9]*E,b[10]=x[10]*E,b[11]=x[11]*E,b[12]=x[12]*E,b[13]=x[13]*E,b[14]=x[14]*E,b[15]=x[15]*E,b}function Xn(b,x,E,z){return b[0]=x[0]+E[0]*z,b[1]=x[1]+E[1]*z,b[2]=x[2]+E[2]*z,b[3]=x[3]+E[3]*z,b[4]=x[4]+E[4]*z,b[5]=x[5]+E[5]*z,b[6]=x[6]+E[6]*z,b[7]=x[7]+E[7]*z,b[8]=x[8]+E[8]*z,b[9]=x[9]+E[9]*z,b[10]=x[10]+E[10]*z,b[11]=x[11]+E[11]*z,b[12]=x[12]+E[12]*z,b[13]=x[13]+E[13]*z,b[14]=x[14]+E[14]*z,b[15]=x[15]+E[15]*z,b}function Gr(b,x){return b[0]===x[0]&&b[1]===x[1]&&b[2]===x[2]&&b[3]===x[3]&&b[4]===x[4]&&b[5]===x[5]&&b[6]===x[6]&&b[7]===x[7]&&b[8]===x[8]&&b[9]===x[9]&&b[10]===x[10]&&b[11]===x[11]&&b[12]===x[12]&&b[13]===x[13]&&b[14]===x[14]&&b[15]===x[15]}function ar(b,x){var E=b[0],z=b[1],te=b[2],re=b[3],oe=b[4],le=b[5],ce=b[6],ge=b[7],Ae=b[8],Me=b[9],Ue=b[10],Xe=b[11],$e=b[12],rt=b[13],ot=b[14],pt=b[15],yt=x[0],Ct=x[1],zt=x[2],Wt=x[3],Ht=x[4],Qt=x[5],Gt=x[6],vn=x[7],Sn=x[8],kn=x[9],Kn=x[10],vr=x[11],er=x[12],Nr=x[13],ei=x[14],Ar=x[15];return Math.abs(E-yt)<=Qi*Math.max(1,Math.abs(E),Math.abs(yt))&&Math.abs(z-Ct)<=Qi*Math.max(1,Math.abs(z),Math.abs(Ct))&&Math.abs(te-zt)<=Qi*Math.max(1,Math.abs(te),Math.abs(zt))&&Math.abs(re-Wt)<=Qi*Math.max(1,Math.abs(re),Math.abs(Wt))&&Math.abs(oe-Ht)<=Qi*Math.max(1,Math.abs(oe),Math.abs(Ht))&&Math.abs(le-Qt)<=Qi*Math.max(1,Math.abs(le),Math.abs(Qt))&&Math.abs(ce-Gt)<=Qi*Math.max(1,Math.abs(ce),Math.abs(Gt))&&Math.abs(ge-vn)<=Qi*Math.max(1,Math.abs(ge),Math.abs(vn))&&Math.abs(Ae-Sn)<=Qi*Math.max(1,Math.abs(Ae),Math.abs(Sn))&&Math.abs(Me-kn)<=Qi*Math.max(1,Math.abs(Me),Math.abs(kn))&&Math.abs(Ue-Kn)<=Qi*Math.max(1,Math.abs(Ue),Math.abs(Kn))&&Math.abs(Xe-vr)<=Qi*Math.max(1,Math.abs(Xe),Math.abs(vr))&&Math.abs($e-er)<=Qi*Math.max(1,Math.abs($e),Math.abs(er))&&Math.abs(rt-Nr)<=Qi*Math.max(1,Math.abs(rt),Math.abs(Nr))&&Math.abs(ot-ei)<=Qi*Math.max(1,Math.abs(ot),Math.abs(ei))&&Math.abs(pt-Ar)<=Qi*Math.max(1,Math.abs(pt),Math.abs(Ar))}var Si=vl,vi=Mn;function wo(){var b=new Io(9);return Io!=Float32Array&&(b[1]=0,b[2]=0,b[3]=0,b[5]=0,b[6]=0,b[7]=0),b[0]=1,b[4]=1,b[8]=1,b}function No(b,x){return b[0]=x[0],b[1]=x[1],b[2]=x[2],b[3]=x[4],b[4]=x[5],b[5]=x[6],b[6]=x[8],b[7]=x[9],b[8]=x[10],b}function ia(b){var x=new glMatrix.ARRAY_TYPE(9);return x[0]=b[0],x[1]=b[1],x[2]=b[2],x[3]=b[3],x[4]=b[4],x[5]=b[5],x[6]=b[6],x[7]=b[7],x[8]=b[8],x}function Ia(b,x){return b[0]=x[0],b[1]=x[1],b[2]=x[2],b[3]=x[3],b[4]=x[4],b[5]=x[5],b[6]=x[6],b[7]=x[7],b[8]=x[8],b}function fs(b,x,E,z,te,re,oe,le,ce){var ge=new Io(9);return ge[0]=b,ge[1]=x,ge[2]=E,ge[3]=z,ge[4]=te,ge[5]=re,ge[6]=oe,ge[7]=le,ge[8]=ce,ge}function Ja(b,x,E,z,te,re,oe,le,ce,ge){return b[0]=x,b[1]=E,b[2]=z,b[3]=te,b[4]=re,b[5]=oe,b[6]=le,b[7]=ce,b[8]=ge,b}function Ss(b){return b[0]=1,b[1]=0,b[2]=0,b[3]=0,b[4]=1,b[5]=0,b[6]=0,b[7]=0,b[8]=1,b}function ul(b,x){if(b===x){var E=x[1],z=x[2],te=x[5];b[1]=x[3],b[2]=x[6],b[3]=E,b[5]=x[7],b[6]=z,b[7]=te}else b[0]=x[0],b[1]=x[3],b[2]=x[6],b[3]=x[1],b[4]=x[4],b[5]=x[7],b[6]=x[2],b[7]=x[5],b[8]=x[8];return b}function Ya(b,x){var E=x[0],z=x[1],te=x[2],re=x[3],oe=x[4],le=x[5],ce=x[6],ge=x[7],Ae=x[8],Me=Ae*oe-le*ge,Ue=-Ae*re+le*ce,Xe=ge*re-oe*ce,$e=E*Me+z*Ue+te*Xe;return $e?($e=1/$e,b[0]=Me*$e,b[1]=(-Ae*z+te*ge)*$e,b[2]=(le*z-te*oe)*$e,b[3]=Ue*$e,b[4]=(Ae*E-te*ce)*$e,b[5]=(-le*E+te*re)*$e,b[6]=Xe*$e,b[7]=(-ge*E+z*ce)*$e,b[8]=(oe*E-z*re)*$e,b):null}function zl(b,x){var E=x[0],z=x[1],te=x[2],re=x[3],oe=x[4],le=x[5],ce=x[6],ge=x[7],Ae=x[8];return b[0]=oe*Ae-le*ge,b[1]=te*ge-z*Ae,b[2]=z*le-te*oe,b[3]=le*ce-re*Ae,b[4]=E*Ae-te*ce,b[5]=te*re-E*le,b[6]=re*ge-oe*ce,b[7]=z*ce-E*ge,b[8]=E*oe-z*re,b}function Sc(b){var x=b[0],E=b[1],z=b[2],te=b[3],re=b[4],oe=b[5],le=b[6],ce=b[7],ge=b[8];return x*(ge*re-oe*ce)+E*(-ge*te+oe*le)+z*(ce*te-re*le)}function Gh(b,x,E){var z=x[0],te=x[1],re=x[2],oe=x[3],le=x[4],ce=x[5],ge=x[6],Ae=x[7],Me=x[8],Ue=E[0],Xe=E[1],$e=E[2],rt=E[3],ot=E[4],pt=E[5],yt=E[6],Ct=E[7],zt=E[8];return b[0]=Ue*z+Xe*oe+$e*ge,b[1]=Ue*te+Xe*le+$e*Ae,b[2]=Ue*re+Xe*ce+$e*Me,b[3]=rt*z+ot*oe+pt*ge,b[4]=rt*te+ot*le+pt*Ae,b[5]=rt*re+ot*ce+pt*Me,b[6]=yt*z+Ct*oe+zt*ge,b[7]=yt*te+Ct*le+zt*Ae,b[8]=yt*re+Ct*ce+zt*Me,b}function jc(b,x,E){var z=x[0],te=x[1],re=x[2],oe=x[3],le=x[4],ce=x[5],ge=x[6],Ae=x[7],Me=x[8],Ue=E[0],Xe=E[1];return b[0]=z,b[1]=te,b[2]=re,b[3]=oe,b[4]=le,b[5]=ce,b[6]=Ue*z+Xe*oe+ge,b[7]=Ue*te+Xe*le+Ae,b[8]=Ue*re+Xe*ce+Me,b}function Cf(b,x,E){var z=x[0],te=x[1],re=x[2],oe=x[3],le=x[4],ce=x[5],ge=x[6],Ae=x[7],Me=x[8],Ue=Math.sin(E),Xe=Math.cos(E);return b[0]=Xe*z+Ue*oe,b[1]=Xe*te+Ue*le,b[2]=Xe*re+Ue*ce,b[3]=Xe*oe-Ue*z,b[4]=Xe*le-Ue*te,b[5]=Xe*ce-Ue*re,b[6]=ge,b[7]=Ae,b[8]=Me,b}function zd(b,x,E){var z=E[0],te=E[1];return b[0]=z*x[0],b[1]=z*x[1],b[2]=z*x[2],b[3]=te*x[3],b[4]=te*x[4],b[5]=te*x[5],b[6]=x[6],b[7]=x[7],b[8]=x[8],b}function Bh(b,x){return b[0]=1,b[1]=0,b[2]=0,b[3]=0,b[4]=1,b[5]=0,b[6]=x[0],b[7]=x[1],b[8]=1,b}function Vf(b,x){var E=Math.sin(x),z=Math.cos(x);return b[0]=z,b[1]=E,b[2]=0,b[3]=-E,b[4]=z,b[5]=0,b[6]=0,b[7]=0,b[8]=1,b}function Ed(b,x){return b[0]=x[0],b[1]=0,b[2]=0,b[3]=0,b[4]=x[1],b[5]=0,b[6]=0,b[7]=0,b[8]=1,b}function Rh(b,x){return b[0]=x[0],b[1]=x[1],b[2]=0,b[3]=x[2],b[4]=x[3],b[5]=0,b[6]=x[4],b[7]=x[5],b[8]=1,b}function Lu(b,x){var E=x[0],z=x[1],te=x[2],re=x[3],oe=E+E,le=z+z,ce=te+te,ge=E*oe,Ae=z*oe,Me=z*le,Ue=te*oe,Xe=te*le,$e=te*ce,rt=re*oe,ot=re*le,pt=re*ce;return b[0]=1-Me-$e,b[3]=Ae-pt,b[6]=Ue+ot,b[1]=Ae+pt,b[4]=1-ge-$e,b[7]=Xe-rt,b[2]=Ue-ot,b[5]=Xe+rt,b[8]=1-ge-Me,b}function Vc(b,x){var E=x[0],z=x[1],te=x[2],re=x[3],oe=x[4],le=x[5],ce=x[6],ge=x[7],Ae=x[8],Me=x[9],Ue=x[10],Xe=x[11],$e=x[12],rt=x[13],ot=x[14],pt=x[15],yt=E*le-z*oe,Ct=E*ce-te*oe,zt=E*ge-re*oe,Wt=z*ce-te*le,Ht=z*ge-re*le,Qt=te*ge-re*ce,Gt=Ae*rt-Me*$e,vn=Ae*ot-Ue*$e,Sn=Ae*pt-Xe*$e,kn=Me*ot-Ue*rt,Kn=Me*pt-Xe*rt,vr=Ue*pt-Xe*ot,er=yt*vr-Ct*Kn+zt*kn+Wt*Sn-Ht*vn+Qt*Gt;return er?(er=1/er,b[0]=(le*vr-ce*Kn+ge*kn)*er,b[1]=(ce*Sn-oe*vr-ge*vn)*er,b[2]=(oe*Kn-le*Sn+ge*Gt)*er,b[3]=(te*Kn-z*vr-re*kn)*er,b[4]=(E*vr-te*Sn+re*vn)*er,b[5]=(z*Sn-E*Kn-re*Gt)*er,b[6]=(rt*Qt-ot*Ht+pt*Wt)*er,b[7]=(ot*zt-$e*Qt-pt*Ct)*er,b[8]=($e*Ht-rt*zt+pt*yt)*er,b):null}function sd(b,x,E){return b[0]=2/x,b[1]=0,b[2]=0,b[3]=0,b[4]=-2/E,b[5]=0,b[6]=-1,b[7]=1,b[8]=1,b}function Ad(b){return"mat3("+b[0]+", "+b[1]+", "+b[2]+", "+b[3]+", "+b[4]+", "+b[5]+", "+b[6]+", "+b[7]+", "+b[8]+")"}function hp(b){return Math.hypot(b[0],b[1],b[2],b[3],b[4],b[5],b[6],b[7],b[8])}function Wc(b,x,E){return b[0]=x[0]+E[0],b[1]=x[1]+E[1],b[2]=x[2]+E[2],b[3]=x[3]+E[3],b[4]=x[4]+E[4],b[5]=x[5]+E[5],b[6]=x[6]+E[6],b[7]=x[7]+E[7],b[8]=x[8]+E[8],b}function Yg(b,x,E){return b[0]=x[0]-E[0],b[1]=x[1]-E[1],b[2]=x[2]-E[2],b[3]=x[3]-E[3],b[4]=x[4]-E[4],b[5]=x[5]-E[5],b[6]=x[6]-E[6],b[7]=x[7]-E[7],b[8]=x[8]-E[8],b}function ih(b,x,E){return b[0]=x[0]*E,b[1]=x[1]*E,b[2]=x[2]*E,b[3]=x[3]*E,b[4]=x[4]*E,b[5]=x[5]*E,b[6]=x[6]*E,b[7]=x[7]*E,b[8]=x[8]*E,b}function x1(b,x,E,z){return b[0]=x[0]+E[0]*z,b[1]=x[1]+E[1]*z,b[2]=x[2]+E[2]*z,b[3]=x[3]+E[3]*z,b[4]=x[4]+E[4]*z,b[5]=x[5]+E[5]*z,b[6]=x[6]+E[6]*z,b[7]=x[7]+E[7]*z,b[8]=x[8]+E[8]*z,b}function dg(b,x){return b[0]===x[0]&&b[1]===x[1]&&b[2]===x[2]&&b[3]===x[3]&&b[4]===x[4]&&b[5]===x[5]&&b[6]===x[6]&&b[7]===x[7]&&b[8]===x[8]}function Kf(b,x){var E=b[0],z=b[1],te=b[2],re=b[3],oe=b[4],le=b[5],ce=b[6],ge=b[7],Ae=b[8],Me=x[0],Ue=x[1],Xe=x[2],$e=x[3],rt=x[4],ot=x[5],pt=x[6],yt=x[7],Ct=x[8];return Math.abs(E-Me)<=glMatrix.EPSILON*Math.max(1,Math.abs(E),Math.abs(Me))&&Math.abs(z-Ue)<=glMatrix.EPSILON*Math.max(1,Math.abs(z),Math.abs(Ue))&&Math.abs(te-Xe)<=glMatrix.EPSILON*Math.max(1,Math.abs(te),Math.abs(Xe))&&Math.abs(re-$e)<=glMatrix.EPSILON*Math.max(1,Math.abs(re),Math.abs($e))&&Math.abs(oe-rt)<=glMatrix.EPSILON*Math.max(1,Math.abs(oe),Math.abs(rt))&&Math.abs(le-ot)<=glMatrix.EPSILON*Math.max(1,Math.abs(le),Math.abs(ot))&&Math.abs(ce-pt)<=glMatrix.EPSILON*Math.max(1,Math.abs(ce),Math.abs(pt))&&Math.abs(ge-yt)<=glMatrix.EPSILON*Math.max(1,Math.abs(ge),Math.abs(yt))&&Math.abs(Ae-Ct)<=glMatrix.EPSILON*Math.max(1,Math.abs(Ae),Math.abs(Ct))}var bf=null,ac=null;function Su(){var b=new Io(4);return Io!=Float32Array&&(b[0]=0,b[1]=0,b[2]=0),b[3]=1,b}function h0(b){return b[0]=0,b[1]=0,b[2]=0,b[3]=1,b}function fg(b,x,E){E=E*.5;var z=Math.sin(E);return b[0]=z*x[0],b[1]=z*x[1],b[2]=z*x[2],b[3]=Math.cos(E),b}function sT(b,x){var E=Math.acos(x[3])*2,z=Math.sin(E/2);return z>glMatrix.EPSILON?(b[0]=x[0]/z,b[1]=x[1]/z,b[2]=x[2]/z):(b[0]=1,b[1]=0,b[2]=0),E}function Zf(b,x){var E=d0(b,x);return Math.acos(2*E*E-1)}function Y0(b,x,E){var z=x[0],te=x[1],re=x[2],oe=x[3],le=E[0],ce=E[1],ge=E[2],Ae=E[3];return b[0]=z*Ae+oe*le+te*ge-re*ce,b[1]=te*Ae+oe*ce+re*le-z*ge,b[2]=re*Ae+oe*ge+z*ce-te*le,b[3]=oe*Ae-z*le-te*ce-re*ge,b}function Lv(b,x,E){E*=.5;var z=x[0],te=x[1],re=x[2],oe=x[3],le=Math.sin(E),ce=Math.cos(E);return b[0]=z*ce+oe*le,b[1]=te*ce+re*le,b[2]=re*ce-te*le,b[3]=oe*ce-z*le,b}function nw(b,x,E){E*=.5;var z=x[0],te=x[1],re=x[2],oe=x[3],le=Math.sin(E),ce=Math.cos(E);return b[0]=z*ce-re*le,b[1]=te*ce+oe*le,b[2]=re*ce+z*le,b[3]=oe*ce-te*le,b}function kx(b,x,E){E*=.5;var z=x[0],te=x[1],re=x[2],oe=x[3],le=Math.sin(E),ce=Math.cos(E);return b[0]=z*ce+te*le,b[1]=te*ce-z*le,b[2]=re*ce+oe*le,b[3]=oe*ce-re*le,b}function E1(b,x){var E=x[0],z=x[1],te=x[2];return b[0]=E,b[1]=z,b[2]=te,b[3]=Math.sqrt(Math.abs(1-E*E-z*z-te*te)),b}function Tv(b,x){var E=x[0],z=x[1],te=x[2],re=x[3],oe=Math.sqrt(E*E+z*z+te*te),le=Math.exp(re),ce=oe>0?le*Math.sin(oe)/oe:0;return b[0]=E*ce,b[1]=z*ce,b[2]=te*ce,b[3]=le*Math.cos(oe),b}function Fx(b,x){var E=x[0],z=x[1],te=x[2],re=x[3],oe=Math.sqrt(E*E+z*z+te*te),le=oe>0?Math.atan2(oe,re)/oe:0;return b[0]=E*le,b[1]=z*le,b[2]=te*le,b[3]=.5*Math.log(E*E+z*z+te*te+re*re),b}function yy(b,x,E){return Fx(b,x),zp(b,b,E),Tv(b,b),b}function Dv(b,x,E,z){var te=x[0],re=x[1],oe=x[2],le=x[3],ce=E[0],ge=E[1],Ae=E[2],Me=E[3],Ue,Xe,$e,rt,ot;return Xe=te*ce+re*ge+oe*Ae+le*Me,Xe<0&&(Xe=-Xe,ce=-ce,ge=-ge,Ae=-Ae,Me=-Me),1-Xe>Qi?(Ue=Math.acos(Xe),$e=Math.sin(Ue),rt=Math.sin((1-z)*Ue)/$e,ot=Math.sin(z*Ue)/$e):(rt=1-z,ot=z),b[0]=rt*te+ot*ce,b[1]=rt*re+ot*ge,b[2]=rt*oe+ot*Ae,b[3]=rt*le+ot*Me,b}function _p(b){var x=glMatrix.RANDOM(),E=glMatrix.RANDOM(),z=glMatrix.RANDOM(),te=Math.sqrt(1-x),re=Math.sqrt(x);return b[0]=te*Math.sin(2*Math.PI*E),b[1]=te*Math.cos(2*Math.PI*E),b[2]=re*Math.sin(2*Math.PI*z),b[3]=re*Math.cos(2*Math.PI*z),b}function ld(b,x){var E=x[0],z=x[1],te=x[2],re=x[3],oe=E*E+z*z+te*te+re*re,le=oe?1/oe:0;return b[0]=-E*le,b[1]=-z*le,b[2]=-te*le,b[3]=re*le,b}function lT(b,x){return b[0]=-x[0],b[1]=-x[1],b[2]=-x[2],b[3]=x[3],b}function A2(b,x){var E=x[0]+x[4]+x[8],z;if(E>0)z=Math.sqrt(E+1),b[3]=.5*z,z=.5/z,b[0]=(x[5]-x[7])*z,b[1]=(x[6]-x[2])*z,b[2]=(x[1]-x[3])*z;else{var te=0;x[4]>x[0]&&(te=1),x[8]>x[te*3+te]&&(te=2);var re=(te+1)%3,oe=(te+2)%3;z=Math.sqrt(x[te*3+te]-x[re*3+re]-x[oe*3+oe]+1),b[te]=.5*z,z=.5/z,b[3]=(x[re*3+oe]-x[oe*3+re])*z,b[re]=(x[re*3+te]+x[te*3+re])*z,b[oe]=(x[oe*3+te]+x[te*3+oe])*z}return b}function _x(b,x,E,z){var te=.5*Math.PI/180;x*=te,E*=te,z*=te;var re=Math.sin(x),oe=Math.cos(x),le=Math.sin(E),ce=Math.cos(E),ge=Math.sin(z),Ae=Math.cos(z);return b[0]=re*ce*Ae-oe*le*ge,b[1]=oe*le*Ae+re*ce*ge,b[2]=oe*ce*ge-re*le*Ae,b[3]=oe*ce*Ae+re*le*ge,b}function zx(b){return"quat("+b[0]+", "+b[1]+", "+b[2]+", "+b[3]+")"}var S2=od,w2=Hf,jx=a0,hA=W0,dA=ug,Wx=Y0,zp=G0,d0=Cm,rw=bm,gg=Af,xy=null,yI=wm,fA=null,$s=ef,uT=py,cT=hg,C2=function(){var b=ba(),x=Gs(1,0,0),E=Gs(0,1,0);return function(z,te,re){var oe=Mr(te,re);return oe<-.999999?(qd(b,x,te),Hg(b)<1e-6&&qd(b,E,te),Uf(b,b),fg(z,b,Math.PI),z):oe>.999999?(z[0]=0,z[1]=0,z[2]=0,z[3]=1,z):(qd(b,te,re),z[0]=b[0],z[1]=b[1],z[2]=b[2],z[3]=1+oe,$s(z,z))}}(),Ux=function(){var b=Su(),x=Su();return function(E,z,te,re,oe,le){return Dv(b,z,oe,le),Dv(x,te,re,le),Dv(E,b,x,2*le*(1-le)),E}}(),Gx=function(){var b=wo();return function(x,E,z,te){return b[0]=z[0],b[3]=z[1],b[6]=z[2],b[1]=te[0],b[4]=te[1],b[7]=te[2],b[2]=-E[0],b[5]=-E[1],b[8]=-E[2],$s(x,A2(x,b))}}();function dp(){var b=new Io(2);return Io!=Float32Array&&(b[0]=0,b[1]=0),b}function b2(b){var x=new glMatrix.ARRAY_TYPE(2);return x[0]=b[0],x[1]=b[1],x}function P2(b,x){var E=new glMatrix.ARRAY_TYPE(2);return E[0]=b,E[1]=x,E}function iw(b,x){return b[0]=x[0],b[1]=x[1],b}function ow(b,x,E){return b[0]=x,b[1]=E,b}function hT(b,x,E){return b[0]=x[0]+E[0],b[1]=x[1]+E[1],b}function A1(b,x,E){return b[0]=x[0]-E[0],b[1]=x[1]-E[1],b}function M2(b,x,E){return b[0]=x[0]*E[0],b[1]=x[1]*E[1],b}function L2(b,x,E){return b[0]=x[0]/E[0],b[1]=x[1]/E[1],b}function aw(b,x){return b[0]=Math.ceil(x[0]),b[1]=Math.ceil(x[1]),b}function Hx(b,x){return b[0]=Math.floor(x[0]),b[1]=Math.floor(x[1]),b}function T2(b,x,E){return b[0]=Math.min(x[0],E[0]),b[1]=Math.min(x[1],E[1]),b}function Il(b,x,E){return b[0]=Math.max(x[0],E[0]),b[1]=Math.max(x[1],E[1]),b}function Pf(b,x){return b[0]=Math.round(x[0]),b[1]=Math.round(x[1]),b}function ud(b,x,E){return b[0]=x[0]*E,b[1]=x[1]*E,b}function f0(b,x,E,z){return b[0]=x[0]+E[0]*z,b[1]=x[1]+E[1]*z,b}function Vx(b,x){var E=x[0]-b[0],z=x[1]-b[1];return Math.hypot(E,z)}function Iv(b,x){var E=x[0]-b[0],z=x[1]-b[1];return E*E+z*z}function X0(b){var x=b[0],E=b[1];return Math.hypot(x,E)}function Yf(b){var x=b[0],E=b[1];return x*x+E*E}function Kx(b,x){return b[0]=-x[0],b[1]=-x[1],b}function Zx(b,x){return b[0]=1/x[0],b[1]=1/x[1],b}function D2(b,x){var E=x[0],z=x[1],te=E*E+z*z;return te>0&&(te=1/Math.sqrt(te)),b[0]=x[0]*te,b[1]=x[1]*te,b}function sc(b,x){return b[0]*x[0]+b[1]*x[1]}function sw(b,x,E){var z=x[0]*E[1]-x[1]*E[0];return b[0]=b[1]=0,b[2]=z,b}function lw(b,x,E,z){var te=x[0],re=x[1];return b[0]=te+z*(E[0]-te),b[1]=re+z*(E[1]-re),b}function uw(b,x){x=x||1;var E=glMatrix.RANDOM()*2*Math.PI;return b[0]=Math.cos(E)*x,b[1]=Math.sin(E)*x,b}function cw(b,x,E){var z=x[0],te=x[1];return b[0]=E[0]*z+E[2]*te,b[1]=E[1]*z+E[3]*te,b}function I2(b,x,E){var z=x[0],te=x[1];return b[0]=E[0]*z+E[2]*te+E[4],b[1]=E[1]*z+E[3]*te+E[5],b}function hw(b,x,E){var z=x[0],te=x[1];return b[0]=E[0]*z+E[3]*te+E[6],b[1]=E[1]*z+E[4]*te+E[7],b}function dw(b,x,E){var z=x[0],te=x[1];return b[0]=E[0]*z+E[4]*te+E[12],b[1]=E[1]*z+E[5]*te+E[13],b}function fw(b,x,E,z){var te=x[0]-E[0],re=x[1]-E[1],oe=Math.sin(z),le=Math.cos(z);return b[0]=te*le-re*oe+E[0],b[1]=te*oe+re*le+E[1],b}function gw(b,x){var E=b[0],z=b[1],te=x[0],re=x[1],oe=Math.sqrt(E*E+z*z)*Math.sqrt(te*te+re*re),le=oe&&(E*te+z*re)/oe;return Math.acos(Math.min(Math.max(le,-1),1))}function pw(b){return b[0]=0,b[1]=0,b}function gA(b){return"vec2("+b[0]+", "+b[1]+")"}function pA(b,x){return b[0]===x[0]&&b[1]===x[1]}function vw(b,x){var E=b[0],z=b[1],te=x[0],re=x[1];return Math.abs(E-te)<=glMatrix.EPSILON*Math.max(1,Math.abs(E),Math.abs(te))&&Math.abs(z-re)<=glMatrix.EPSILON*Math.max(1,Math.abs(z),Math.abs(re))}var dT=null,vA=null,Mi=null,O2=null,fT=null,mw=null,gT=null,N2=function(){var b=dp();return function(x,E,z,te,re,oe){var le,ce;for(E||(E=2),z||(z=0),te?ce=Math.min(te*E+z,x.length):ce=x.length,le=z;leE?E:b},Ah=B2,wn=Be(80813),Xg={a:7,c:6,h:1,l:2,m:2,r:4,q:4,s:4,t:2,v:1,z:0};function mA(b){return Array.isArray(b)&&b.every(function(x){var E=x[0].toLowerCase();return Xg[E]===x.length-1&&"achlmqstvz".includes(E)})}function yA(b){return mA(b)&&b.every(function(x){var E=x[0];return E===E.toUpperCase()})}function xA(b){return yA(b)&&b.every(function(x){var E=x[0];return"ACLMQZ".includes(E)})}var EA={x1:0,y1:0,x2:0,y2:0,x:0,y:0,qx:null,qy:null};function yw(b){for(var x=b.pathValue[b.segmentStart],E=x.toLowerCase(),z=b.data;z.length>=Xg[E]&&(E==="m"&&z.length>2?(b.segments.push([x].concat(z.splice(0,2))),E="l",x=x==="m"?"l":"L"):b.segments.push([x].concat(z.splice(0,Xg[E]))),!!Xg[E]););}function R2(b){var x=b.index,E=b.pathValue,z=E.charCodeAt(x);if(z===48){b.param=0,b.index+=1;return}if(z===49){b.param=1,b.index+=1;return}b.err='[path-util]: invalid Arc flag "'.concat(E[x],'", expecting 0 or 1 at index ').concat(x)}function k2(b){return b>=48&&b<=57||b===43||b===45||b===46}function hd(b){return b>=48&&b<=57}function pT(b){var x=b.max,E=b.pathValue,z=b.index,te=z,re=!1,oe=!1,le=!1,ce=!1,ge;if(te>=x){b.err="[path-util]: Invalid path value at index ".concat(te,', "pathValue" is missing param');return}if(ge=E.charCodeAt(te),(ge===43||ge===45)&&(te+=1,ge=E.charCodeAt(te)),!hd(ge)&&ge!==46){b.err="[path-util]: Invalid path value at index ".concat(te,', "').concat(E[te],'" is not a number');return}if(ge!==46){if(re=ge===48,te+=1,ge=E.charCodeAt(te),re&&te=5760&&x.includes(b)}function Xx(b){for(var x=b.pathValue,E=b.max;b.index0;oe-=1){if(xw(te)&&(oe===3||oe===4)?R2(b):pT(b),b.err.length)return;b.data.push(b.param),Xx(b),b.index=b.max||!k2(E.charCodeAt(b.index)))break}yw(b)}var Aw=function(){function b(x){this.pathValue=x,this.segments=[],this.max=x.length,this.index=0,this.param=0,this.segmentStart=0,this.data=[],this.err=""}return b}();function SA(b){if(mA(b))return[].concat(b);var x=new Aw(b);for(Xx(x);x.index=re)oe={x:E,y:z};else{var le=Hh([b,x],[E,z],te/re),ce=le[0],ge=le[1];oe={x:ce,y:ge}}return{length:re,point:oe,min:{x:Math.min(b,E),y:Math.min(x,z)},max:{x:Math.max(b,E),y:Math.max(x,z)}}}function tf(b,x){var E=b.x,z=b.y,te=x.x,re=x.y,oe=E*te+z*re,le=Math.sqrt((Math.pow(E,2)+Math.pow(z,2))*(Math.pow(te,2)+Math.pow(re,2))),ce=E*re-z*te<0?-1:1,ge=ce*Math.acos(oe/le);return ge}function rc(b,x,E,z,te,re,oe,le,ce,ge){var Ae=Math.abs,Me=Math.sin,Ue=Math.cos,Xe=Math.sqrt,$e=Math.PI,rt=Ae(E),ot=Ae(z),pt=(te%360+360)%360,yt=pt*($e/180);if(b===le&&x===ce)return{x:b,y:x};if(rt===0||ot===0)return gp(b,x,le,ce,ge).point;var Ct=(b-le)/2,zt=(x-ce)/2,Wt={x:Ue(yt)*Ct+Me(yt)*zt,y:-Me(yt)*Ct+Ue(yt)*zt},Ht=Math.pow(Wt.x,2)/Math.pow(rt,2)+Math.pow(Wt.y,2)/Math.pow(ot,2);Ht>1&&(rt*=Xe(Ht),ot*=Xe(Ht));var Qt=Math.pow(rt,2)*Math.pow(ot,2)-Math.pow(rt,2)*Math.pow(Wt.y,2)-Math.pow(ot,2)*Math.pow(Wt.x,2),Gt=Math.pow(rt,2)*Math.pow(Wt.y,2)+Math.pow(ot,2)*Math.pow(Wt.x,2),vn=Qt/Gt;vn=vn<0?0:vn;var Sn=(re!==oe?1:-1)*Xe(vn),kn={x:Sn*(rt*Wt.y/ot),y:Sn*(-(ot*Wt.x)/rt)},Kn={x:Ue(yt)*kn.x-Me(yt)*kn.y+(b+le)/2,y:Me(yt)*kn.x+Ue(yt)*kn.y+(x+ce)/2},vr={x:(Wt.x-kn.x)/rt,y:(Wt.y-kn.y)/ot},er=tf({x:1,y:0},vr),Nr={x:(-Wt.x-kn.x)/rt,y:(-Wt.y-kn.y)/ot},ei=tf(vr,Nr);!oe&&ei>0?ei-=2*$e:oe&&ei<0&&(ei+=2*$e),ei%=2*$e;var Ar=er+ei*ge,Sr=rt*Ue(Ar),Ir=ot*Me(Ar),si={x:Ue(yt)*Sr-Me(yt)*Ir+Kn.x,y:Me(yt)*Sr+Ue(yt)*Ir+Kn.y};return si}function wA(b,x,E,z,te,re,oe,le,ce,ge,Ae){var Me,Ue=Ae.bbox,Xe=Ue===void 0?!0:Ue,$e=Ae.length,rt=$e===void 0?!0:$e,ot=Ae.sampleSize,pt=ot===void 0?30:ot,yt=typeof ge=="number",Ct=b,zt=x,Wt=0,Ht=[Ct,zt,Wt],Qt=[Ct,zt],Gt=0,vn={x:0,y:0},Sn=[{x:Ct,y:zt}];yt&&ge<=0&&(vn={x:Ct,y:zt});for(var kn=0;kn<=pt;kn+=1){if(Gt=kn/pt,Me=rc(b,x,E,z,te,re,oe,le,ce,Gt),Ct=Me.x,zt=Me.y,Xe&&Sn.push({x:Ct,y:zt}),rt&&(Wt+=cd(Qt,[Ct,zt])),Qt=[Ct,zt],yt&&Wt>=ge&&ge>Ht[2]){var Kn=(Wt-ge)/(Wt-Ht[2]);vn={x:Qt[0]*(1-Kn)+Ht[0]*Kn,y:Qt[1]*(1-Kn)+Ht[1]*Kn}}Ht=[Ct,zt,Wt]}return yt&&ge>=Wt&&(vn={x:le,y:ce}),{length:Wt,point:vn,min:{x:Math.min.apply(null,Sn.map(function(vr){return vr.x})),y:Math.min.apply(null,Sn.map(function(vr){return vr.y}))},max:{x:Math.max.apply(null,Sn.map(function(vr){return vr.x})),y:Math.max.apply(null,Sn.map(function(vr){return vr.y}))}}}function CA(b,x,E,z,te,re,oe,le,ce){var ge=1-ce;return{x:Math.pow(ge,3)*b+3*Math.pow(ge,2)*ce*E+3*ge*Math.pow(ce,2)*te+Math.pow(ce,3)*oe,y:Math.pow(ge,3)*x+3*Math.pow(ge,2)*ce*z+3*ge*Math.pow(ce,2)*re+Math.pow(ce,3)*le}}function bA(b,x,E,z,te,re,oe,le,ce,ge){var Ae,Me=ge.bbox,Ue=Me===void 0?!0:Me,Xe=ge.length,$e=Xe===void 0?!0:Xe,rt=ge.sampleSize,ot=rt===void 0?10:rt,pt=typeof ce=="number",yt=b,Ct=x,zt=0,Wt=[yt,Ct,zt],Ht=[yt,Ct],Qt=0,Gt={x:0,y:0},vn=[{x:yt,y:Ct}];pt&&ce<=0&&(Gt={x:yt,y:Ct});for(var Sn=0;Sn<=ot;Sn+=1){if(Qt=Sn/ot,Ae=CA(b,x,E,z,te,re,oe,le,Qt),yt=Ae.x,Ct=Ae.y,Ue&&vn.push({x:yt,y:Ct}),$e&&(zt+=cd(Ht,[yt,Ct])),Ht=[yt,Ct],pt&&zt>=ce&&ce>Wt[2]){var kn=(zt-ce)/(zt-Wt[2]);Gt={x:Ht[0]*(1-kn)+Wt[0]*kn,y:Ht[1]*(1-kn)+Wt[1]*kn}}Wt=[yt,Ct,zt]}return pt&&ce>=zt&&(Gt={x:oe,y:le}),{length:zt,point:Gt,min:{x:Math.min.apply(null,vn.map(function(Kn){return Kn.x})),y:Math.min.apply(null,vn.map(function(Kn){return Kn.y}))},max:{x:Math.max.apply(null,vn.map(function(Kn){return Kn.x})),y:Math.max.apply(null,vn.map(function(Kn){return Kn.y}))}}}function Jx(b,x,E,z,te,re,oe){var le=1-oe;return{x:Math.pow(le,2)*b+2*le*oe*E+Math.pow(oe,2)*te,y:Math.pow(le,2)*x+2*le*oe*z+Math.pow(oe,2)*re}}function PA(b,x,E,z,te,re,oe,le){var ce,ge=le.bbox,Ae=ge===void 0?!0:ge,Me=le.length,Ue=Me===void 0?!0:Me,Xe=le.sampleSize,$e=Xe===void 0?10:Xe,rt=typeof oe=="number",ot=b,pt=x,yt=0,Ct=[ot,pt,yt],zt=[ot,pt],Wt=0,Ht={x:0,y:0},Qt=[{x:ot,y:pt}];rt&&oe<=0&&(Ht={x:ot,y:pt});for(var Gt=0;Gt<=$e;Gt+=1){if(Wt=Gt/$e,ce=Jx(b,x,E,z,te,re,Wt),ot=ce.x,pt=ce.y,Ae&&Qt.push({x:ot,y:pt}),Ue&&(yt+=cd(zt,[ot,pt])),zt=[ot,pt],rt&&yt>=oe&&oe>Ct[2]){var vn=(yt-oe)/(yt-Ct[2]);Ht={x:zt[0]*(1-vn)+Ct[0]*vn,y:zt[1]*(1-vn)+Ct[1]*vn}}Ct=[ot,pt,yt]}return rt&&oe>=yt&&(Ht={x:te,y:re}),{length:yt,point:Ht,min:{x:Math.min.apply(null,Qt.map(function(Sn){return Sn.x})),y:Math.min.apply(null,Qt.map(function(Sn){return Sn.y}))},max:{x:Math.max.apply(null,Qt.map(function(Sn){return Sn.x})),y:Math.max.apply(null,Qt.map(function(Sn){return Sn.y}))}}}function Ra(b,x,E){for(var z,te,re,oe,le,ce,ge=Qx(b),Ae=typeof x=="number",Me,Ue=[],Xe,$e=0,rt=0,ot=0,pt=0,yt,Ct=[],zt=[],Wt=0,Ht={x:0,y:0},Qt=Ht,Gt=Ht,vn=Ht,Sn=0,kn=0,Kn=ge.length;kn=x&&(vn=Gt),zt.push(Qt),Ct.push(Ht),Sn+=Wt,ce=Xe!=="Z"?yt.slice(-2):[ot,pt],$e=ce[0],rt=ce[1];return Ae&&x>=Sn&&(vn={x:$e,y:rt}),{length:Sn,point:vn,min:{x:Math.min.apply(null,Ct.map(function(vr){return vr.x})),y:Math.min.apply(null,Ct.map(function(vr){return vr.y}))},max:{x:Math.max.apply(null,zt.map(function(vr){return vr.x})),y:Math.max.apply(null,zt.map(function(vr){return vr.y}))}}}function Nm(b,x){return Ra(b,void 0,(0,wn.pi)((0,wn.pi)({},x),{bbox:!1,length:!0})).length}function nf(b){return Array.isArray(b)}var S1=function(b){if(nf(b))return b.reduce(function(x,E){return Math.min(x,E)},b[0])};function Ey(b){if(!Array.isArray(b))return-1/0;var x=b.length;if(!x)return-1/0;for(var E=b[0],z=1;z7){b[E].shift();for(var z=b[E],te=E;z.length;)x[E]="A",b.splice(te+=1,0,["C"].concat(z.splice(0,6)));b.splice(E,1)}}function ww(b){return xA(b)&&b.every(function(x){var E=x[0];return"MC".includes(E)})}function w1(b,x,E){var z=b*Math.cos(E)-x*Math.sin(E),te=b*Math.sin(E)+x*Math.cos(E);return{x:z,y:te}}function ml(b,x,E,z,te,re,oe,le,ce,ge){var Ae=b,Me=x,Ue=E,Xe=z,$e=le,rt=ce,ot=Math.PI*120/180,pt=Math.PI/180*(+te||0),yt=[],Ct,zt,Wt,Ht,Qt;if(ge)zt=ge[0],Wt=ge[1],Ht=ge[2],Qt=ge[3];else{Ct=w1(Ae,Me,-pt),Ae=Ct.x,Me=Ct.y,Ct=w1($e,rt,-pt),$e=Ct.x,rt=Ct.y;var Gt=(Ae-$e)/2,vn=(Me-rt)/2,Sn=Gt*Gt/(Ue*Ue)+vn*vn/(Xe*Xe);Sn>1&&(Sn=Math.sqrt(Sn),Ue*=Sn,Xe*=Sn);var kn=Ue*Ue,Kn=Xe*Xe,vr=(re===oe?-1:1)*Math.sqrt(Math.abs((kn*Kn-kn*vn*vn-Kn*Gt*Gt)/(kn*vn*vn+Kn*Gt*Gt)));Ht=vr*Ue*vn/Xe+(Ae+$e)/2,Qt=vr*-Xe*Gt/Ue+(Me+rt)/2,zt=Math.asin(((Me-Qt)/Xe*Math.pow(10,9)>>0)/Math.pow(10,9)),Wt=Math.asin(((rt-Qt)/Xe*Math.pow(10,9)>>0)/Math.pow(10,9)),zt=AeWt&&(zt-=Math.PI*2),!oe&&Wt>zt&&(Wt-=Math.PI*2)}var er=Wt-zt;if(Math.abs(er)>ot){var Nr=Wt,ei=$e,Ar=rt;Wt=zt+ot*(oe&&Wt>zt?1:-1),$e=Ht+Ue*Math.cos(Wt),rt=Qt+Xe*Math.sin(Wt),yt=ml($e,rt,Ue,Xe,te,0,oe,ei,Ar,[Wt,Nr,Ht,Qt])}er=Wt-zt;var Sr=Math.cos(zt),Ir=Math.sin(zt),si=Math.cos(Wt),Cr=Math.sin(Wt),wi=Math.tan(er/4),Mo=4/3*Ue*wi,Po=4/3*Xe*wi,eo=[Ae,Me],Ui=[Ae+Mo*Ir,Me-Po*Sr],fo=[$e+Mo*Cr,rt-Po*si],Uo=[$e,rt];if(Ui[0]=2*eo[0]-Ui[0],Ui[1]=2*eo[1]-Ui[1],ge)return Ui.concat(fo,Uo,yt);yt=Ui.concat(fo,Uo,yt);for(var pa=[],Ga=0,kl=yt.length;Ga=Ue[pt],Xe[pt]-=$e?1:0,$e?yt.ss:[yt.s]}).flat()});return rt[0].length===rt[1].length?rt:b1(rt[0],rt[1],Me)}function z2(b,x,E,z,te,re,oe,le){return 3*((le-x)*(E+te)-(oe-b)*(z+re)+z*(b-te)-E*(x-re)+le*(te+b/3)-oe*(re+x/3))/20}function j2(b){var x=0,E=0,z=0;return $x(b).map(function(te){var re;switch(te[0]){case"M":return x=te[1],E=te[2],0;default:var oe=te.slice(1),le=oe[0],ce=oe[1],ge=oe[2],Ae=oe[3],Me=oe[4],Ue=oe[5];return z=z2(x,E,le,ce,ge,Ae,Me,Ue),re=te.slice(-2),x=re[0],E=re[1],z}}).reduce(function(te,re){return te+re},0)}function eE(b){return j2(b)>=0}function LA(b){var x=b.slice(1).map(function(E,z,te){return z?te[z-1].slice(-2).concat(E.slice(1)):b[0].slice(1).concat(E.slice(1))}).map(function(E){return E.map(function(z,te){return E[E.length-te-2*(1-te%2)]})}).reverse();return[["M"].concat(x[0].slice(0,2))].concat(x.map(function(E){return["C"].concat(E.slice(2))}))}function bw(b){return b.map(function(x){return Array.isArray(x)?[].concat(x):x})}function W2(b){var x=b.length,E=x-1;return b.map(function(z,te){return b.map(function(re,oe){var le=te+oe,ce;return oe===0||b[le]&&b[le][0]==="M"?(ce=b[le],["M"].concat(ce.slice(-2))):(le>=x&&(le-=E),b[le])})})}function Pw(b,x){var E=b.length-1,z=[],te=0,re=0,oe=W2(b);return oe.forEach(function(le,ce){b.slice(1).forEach(function(ge,Ae){re+=cd(b[(ce+Ae)%E].slice(-2),x[Ae%E].slice(-2))}),z[ce]=re,re=0}),te=z.indexOf(Math.min.apply(null,z)),oe[te]}var U2=function(b){return b===void 0},jl=U2,TA={}.toString,tE=function(b,x){return TA.call(b)==="[object "+x+"]"},Mw=tE,vT=function(b){return Mw(b,"Boolean")},P1=vT;function _s(b){return typeof b=="function"}var Sh=function(b){var x=typeof b;return b!==null&&x==="object"||x==="function"};function Lw(b,x,E){return Ra(b,x,(0,wn.pi)((0,wn.pi)({},E),{bbox:!1,length:!0})).point}var ps=Be(400);function G2(b,x){for(;!{}.hasOwnProperty.call(b,x)&&(b=(0,ta.Z)(b))!==null;);return b}function kh(){return kh=typeof Reflect!="undefined"&&Reflect.get?Reflect.get.bind():function(b,x,E){var z=G2(b,x);if(z){var te=Object.getOwnPropertyDescriptor(z,x);return te.get?te.get.call(arguments.length<3?b:E):te.value}},kh.apply(null,arguments)}function nE(b,x,E,z){var te=kh((0,ta.Z)(1&z?b.prototype:b),x,E);return 2&z&&typeof te=="function"?function(re){return te.apply(E,re)}:te}function rf(b,x,E,z){var te=b-E,re=x-z;return Math.sqrt(te*te+re*re)}function pg(b,x){var E=Math.min.apply(Math,(0,wn.ev)([],(0,wn.CR)(b),!1)),z=Math.min.apply(Math,(0,wn.ev)([],(0,wn.CR)(x),!1)),te=Math.max.apply(Math,(0,wn.ev)([],(0,wn.CR)(b),!1)),re=Math.max.apply(Math,(0,wn.ev)([],(0,wn.CR)(x),!1));return{x:E,y:z,width:te-E,height:re-z}}function Vh(b){return(b+Math.PI*2)%(Math.PI*2)}function Ay(b,x){var E=Math.abs(b);return x>0?E:E*-1}function M1(b,x,E,z,te,re){var oe=E,le=z;if(oe===0||le===0)return{x:b,y:x};for(var ce=te-b,ge=re-x,Ae=Math.abs(ce),Me=Math.abs(ge),Ue=oe*oe,Xe=le*le,$e=Math.PI/4,rt=0,ot=0,pt=0;pt<4;pt++){rt=oe*Math.cos($e),ot=le*Math.sin($e);var yt=(Ue-Xe)*Math.pow(Math.cos($e),3)/oe,Ct=(Xe-Ue)*Math.pow(Math.sin($e),3)/le,zt=rt-yt,Wt=ot-Ct,Ht=Ae-yt,Qt=Me-Ct,Gt=Math.hypot(Wt,zt),vn=Math.hypot(Qt,Ht),Sn=Gt*Math.asin((zt*Qt-Wt*Ht)/(Gt*vn)),kn=Sn/Math.sqrt(Ue+Xe-rt*rt-ot*ot);$e+=kn,$e=Math.min(Math.PI/2,Math.max(0,$e))}return{x:b+Ay(rt,ce),y:x+Ay(ot,ge)}}function H2(b,x,E,z,te,re,oe,le){return-1*E*Math.cos(te)*Math.sin(le)-z*Math.sin(te)*Math.cos(le)}function DA(b,x,E,z,te,re,oe,le){return-1*E*Math.sin(te)*Math.sin(le)+z*Math.cos(te)*Math.cos(le)}function mT(b,x,E){return Math.atan(-x/b*Math.tan(E))}function V2(b,x,E){return Math.atan(x/(b*Math.tan(E)))}function K2(b,x,E,z,te,re){return E*Math.cos(te)*Math.cos(re)-z*Math.sin(te)*Math.sin(re)+b}function Z2(b,x,E,z,te,re){return E*Math.sin(te)*Math.cos(re)+z*Math.cos(te)*Math.sin(re)+x}function L1(b,x,E,z){var te=Math.atan2(z*b,E*x);return(te+Math.PI*2)%(Math.PI*2)}function Sy(b,x,E){return{x:b*Math.cos(E),y:x*Math.sin(E)}}function Y2(b,x,E){var z=Math.cos(E),te=Math.sin(E);return[b*z-x*te,b*te+x*z]}function Q0(b,x,E,z,te,re,oe){for(var le=mT(E,z,te),ce=1/0,ge=-1/0,Ae=[re,oe],Me=-Math.PI*2;Me<=Math.PI*2;Me+=Math.PI){var Ue=le+Me;rege&&(ge=Xe)}for(var $e=V2(E,z,te),rt=1/0,ot=-1/0,pt=[re,oe],Me=-Math.PI*2;Me<=Math.PI*2;Me+=Math.PI){var yt=$e+Me;reot&&(ot=Ct)}return{x:ce,y:rt,width:ge-ce,height:ot-rt}}function Tw(b,x,E,z,te,re,oe,le,ce){var ge=Y2(le-b,ce-x,-te),Ae=__read(ge,2),Me=Ae[0],Ue=Ae[1],Xe=M1(0,0,E,z,Me,Ue),$e=L1(E,z,Xe.x,Xe.y);$eoe&&(Xe=Sy(E,z,oe));var rt=Y2(Xe.x,Xe.y,te);return{x:rt[0]+b,y:rt[1]+x}}function xI(b,x,E,z,te,re,oe,le){var ce=(oe-re)*le+re,ge=H2(b,x,E,z,te,re,oe,ce),Ae=DA(b,x,E,z,te,re,oe,ce);return Vh(Math.atan2(Ae,ge))}var X2=1e-4;function rE(b,x,E,z,te,re){var oe=-1,le=1/0,ce=[E,z],ge=20;re&&re>200&&(ge=re/10);for(var Ae=1/ge,Me=Ae/10,Ue=0;Ue<=ge;Ue++){var Xe=Ue*Ae,$e=[te.apply(void 0,(0,wn.ev)([],(0,wn.CR)(b.concat([Xe])),!1)),te.apply(void 0,(0,wn.ev)([],(0,wn.CR)(x.concat([Xe])),!1))],rt=rf(ce[0],ce[1],$e[0],$e[1]);rt=0&&rtle?rf(E,z,te,re):J2(b,x,E,z,te,re)}function J2(b,x,E,z,te,re){var oe=[E-b,z-x];if(pA(oe,[0,0]))return Math.sqrt((te-b)*(te-b)+(re-x)*(re-x));var le=[-oe[1],oe[0]];D2(le,le);var ce=[te-b,re-x];return Math.abs(sc(ce,le))}function Iw(b,x,E,z){return Math.atan2(z-x,E-b)}function Bm(b,x,E,z,te){var re=1-te;return re*re*re*b+3*x*te*re*re+3*E*te*te*re+z*te*te*te}function g0(b,x,E,z,te){var re=1-te;return 3*(re*re*(x-b)+2*re*te*(E-x)+te*te*(z-E))}function Ow(b,x,E,z){var te=-3*b+9*x-9*E+3*z,re=6*b-12*x+6*E,oe=3*x-3*b,le=[],ce,ge,Ae;if(jp(te,0))jp(re,0)||(ce=-oe/re,ce>=0&&ce<=1&&le.push(ce));else{var Me=re*re-4*te*oe;jp(Me,0)?le.push(-re/(2*te)):Me>0&&(Ae=Math.sqrt(Me),ce=(-re+Ae)/(2*te),ge=(-re-Ae)/(2*te),ce>=0&&ce<=1&&le.push(ce),ge>=0&&ge<=1&&le.push(ge))}return le}function Rm(b,x,E,z,te,re,oe,le,ce){var ge=Bm(b,E,te,oe,ce),Ae=Bm(x,z,re,le,ce),Me=wc(b,x,E,z,ce),Ue=wc(E,z,te,re,ce),Xe=wc(te,re,oe,le,ce),$e=wc(Me.x,Me.y,Ue.x,Ue.y,ce),rt=wc(Ue.x,Ue.y,Xe.x,Xe.y,ce);return[[b,x,Me.x,Me.y,$e.x,$e.y,ge,Ae],[ge,Ae,rt.x,rt.y,Xe.x,Xe.y,oe,le]]}function IA(b,x,E,z,te,re,oe,le,ce){if(ce===0)return wh([b,E,te,oe],[x,z,re,le]);var ge=Rm(b,x,E,z,te,re,oe,le,.5),Ae=__spreadArray(__spreadArray([],__read(ge[0]),!1),[ce-1],!1),Me=__spreadArray(__spreadArray([],__read(ge[1]),!1),[ce-1],!1);return IA.apply(void 0,__spreadArray([],__read(Ae),!1))+IA.apply(void 0,__spreadArray([],__read(Me),!1))}function q2(b,x,E,z,te,re,oe,le){for(var ce=[b,oe],ge=[x,le],Ae=Ow(b,E,te,oe),Me=Ow(x,z,re,le),Ue=0;Ue1||x<0||b.length<2)return null;var E=OA(b),z=E.segments,te=E.totalLength;if(te===0)return{x:b[0][0],y:b[0][1]};for(var re=0,oe=null,le=0;le=re&&x<=re+Me){var Ue=(x-re)/Me;oe=wc(ge[0],ge[1],Ae[0],Ae[1],Ue);break}re+=Me}return oe}function iE(b,x){if(x>1||x<0||b.length<2)return 0;for(var E=OA(b),z=E.segments,te=E.totalLength,re=0,oe=0,le=0;le=re&&x<=re+Me){oe=Math.atan2(Ae[1]-ge[1],Ae[0]-ge[0]);break}re+=Me}return oe}function BA(b,x,E){for(var z=1/0,te=0;te=0?[te]:[]}function Lb(b,x,E,z,te,re,oe){var le=T1(b,E,te,oe),ce=T1(x,z,re,oe),ge=wc(b,x,E,z,oe),Ae=wc(E,z,te,re,oe);return[[b,x,ge.x,ge.y,le,ce],[le,ce,Ae.x,Ae.y,te,re]]}function D1(b,x,E,z,te,re,oe){if(oe===0)return(rf(b,x,E,z)+rf(E,z,te,re)+rf(b,x,te,re))/2;var le=Lb(b,x,E,z,te,re,.5),ce=le[0],ge=le[1];return ce.push(oe-1),ge.push(oe-1),D1.apply(void 0,__spreadArray([],__read(ce),!1))+D1.apply(void 0,__spreadArray([],__read(ge),!1))}function RA(b,x,E,z,te,re){var oe=Sd(b,E,te)[0],le=Sd(x,z,re)[0],ce=[b,te],ge=[x,re];return oe!==void 0&&ce.push(T1(b,E,te,oe)),le!==void 0&&ge.push(T1(x,z,re,le)),pg(ce,ge)}function kA(b,x,E,z,te,re){return D1(b,x,E,z,te,re,3)}function Tb(b,x,E,z,te,re,oe,le){return rE([b,E,te],[x,z,re],oe,le,T1)}function Ib(b,x,E,z,te,re,oe,le){var ce=Tb(b,x,E,z,te,re,oe,le);return rf(ce.x,ce.y,oe,le)}var of=Be(85195),Nv=Be(20569),Ob=Be(44464);function _m(b,x){var E=typeof Symbol!="undefined"&&b[Symbol.iterator]||b["@@iterator"];if(!E){if(Array.isArray(b)||(E=(0,Ob.Z)(b))||x&&b&&typeof b.length=="number"){E&&(b=E);var z=0,te=function(){};return{s:te,n:function(){return z>=b.length?{done:!0}:{done:!1,value:b[z++]}},e:function(ge){throw ge},f:te}}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 re,oe=!0,le=!1;return{s:function(){E=E.call(b)},n:function(){var ge=E.next();return oe=ge.done,ge},e:function(ge){le=!0,re=ge},f:function(){try{oe||E.return==null||E.return()}finally{if(le)throw re}}}}var zm=Be(37061);var wT=typeof globalThis!="undefined"?globalThis:typeof window!="undefined"?window:typeof Be.g!="undefined"?Be.g:typeof self!="undefined"?self:{},oE={exports:{}};(function(b,x){(function(E,z){b.exports=z()})(wT,function(){function E(Wt,Ht,Qt,Gt,vn){z(Wt,Ht,Qt||0,Gt||Wt.length-1,vn||re)}function z(Wt,Ht,Qt,Gt,vn){for(;Gt>Qt;){if(Gt-Qt>600){var Sn=Gt-Qt+1,kn=Ht-Qt+1,Kn=Math.log(Sn),vr=.5*Math.exp(2*Kn/3),er=.5*Math.sqrt(Kn*vr*(Sn-vr)/Sn)*(kn-Sn/2<0?-1:1),Nr=Math.max(Qt,Math.floor(Ht-kn*vr/Sn+er)),ei=Math.min(Gt,Math.floor(Ht+(Sn-kn)*vr/Sn+er));z(Wt,Ht,Nr,ei,vn)}var Ar=Wt[Ht],Sr=Qt,Ir=Gt;for(te(Wt,Qt,Ht),vn(Wt[Gt],Ar)>0&&te(Wt,Qt,Gt);Sr0;)Ir--}vn(Wt[Qt],Ar)===0?te(Wt,Qt,Ir):(Ir++,te(Wt,Ir,Gt)),Ir<=Ht&&(Qt=Ir+1),Ht<=Ir&&(Gt=Ir-1)}}function te(Wt,Ht,Qt){var Gt=Wt[Ht];Wt[Ht]=Wt[Qt],Wt[Qt]=Gt}function re(Wt,Ht){return WtHt?1:0}var oe=function(Ht){Ht===void 0&&(Ht=9),this._maxEntries=Math.max(4,Ht),this._minEntries=Math.max(2,Math.ceil(this._maxEntries*.4)),this.clear()};oe.prototype.all=function(){return this._all(this.data,[])},oe.prototype.search=function(Ht){var Qt=this.data,Gt=[];if(!yt(Ht,Qt))return Gt;for(var vn=this.toBBox,Sn=[];Qt;){for(var kn=0;kn=0&&Sn[Qt].children.length>this._maxEntries;)this._split(Sn,Qt),Qt--;this._adjustParentBBoxes(vn,Sn,Qt)},oe.prototype._split=function(Ht,Qt){var Gt=Ht[Qt],vn=Gt.children.length,Sn=this._minEntries;this._chooseSplitAxis(Gt,Sn,vn);var kn=this._chooseSplitIndex(Gt,Sn,vn),Kn=Ct(Gt.children.splice(kn,Gt.children.length-kn));Kn.height=Gt.height,Kn.leaf=Gt.leaf,ce(Gt,this.toBBox),ce(Kn,this.toBBox),Qt?Ht[Qt-1].children.push(Kn):this._splitRoot(Gt,Kn)},oe.prototype._splitRoot=function(Ht,Qt){this.data=Ct([Ht,Qt]),this.data.height=Ht.height+1,this.data.leaf=!1,ce(this.data,this.toBBox)},oe.prototype._chooseSplitIndex=function(Ht,Qt,Gt){for(var vn,Sn=1/0,kn=1/0,Kn=Qt;Kn<=Gt-Qt;Kn++){var vr=ge(Ht,0,Kn,this.toBBox),er=ge(Ht,Kn,Gt,this.toBBox),Nr=ot(vr,er),ei=Xe(vr)+Xe(er);Nr=Qt;ei--){var Ar=Ht.children[ei];Ae(Kn,Ht.leaf?Sn(Ar):Ar),vr+=$e(Kn)}return vr},oe.prototype._adjustParentBBoxes=function(Ht,Qt,Gt){for(var vn=Gt;vn>=0;vn--)Ae(Qt[vn],Ht)},oe.prototype._condense=function(Ht){for(var Qt=Ht.length-1,Gt=void 0;Qt>=0;Qt--)Ht[Qt].children.length===0?Qt>0?(Gt=Ht[Qt-1].children,Gt.splice(Gt.indexOf(Ht[Qt]),1)):this.clear():ce(Ht[Qt],this.toBBox)};function le(Wt,Ht,Qt){if(!Qt)return Ht.indexOf(Wt);for(var Gt=0;Gt=Wt.minX&&Ht.maxY>=Wt.minY}function Ct(Wt){return{children:Wt,height:1,leaf:!0,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0}}function zt(Wt,Ht,Qt,Gt,vn){for(var Sn=[Ht,Qt];Sn.length;)if(Qt=Sn.pop(),Ht=Sn.pop(),!(Qt-Ht<=Gt)){var kn=Ht+Math.ceil((Qt-Ht)/Gt/2)*Gt;E(Wt,kn,Ht,Qt,vn),Sn.push(Ht,kn,kn,Qt)}}return oe})})(oE);var Rw=oE.exports,ci=function(b){return b.GROUP="g",b.FRAGMENT="fragment",b.CIRCLE="circle",b.ELLIPSE="ellipse",b.IMAGE="image",b.RECT="rect",b.LINE="line",b.POLYLINE="polyline",b.POLYGON="polygon",b.TEXT="text",b.PATH="path",b.HTML="html",b.MESH="mesh",b}({}),I1=function(b){return b[b.ZERO=0]="ZERO",b[b.NEGATIVE_ONE=1]="NEGATIVE_ONE",b}({}),q0=function(){function b(){(0,xi.Z)(this,b),this.plugins=[]}return(0,qr.Z)(b,[{key:"addRenderingPlugin",value:function(E){this.plugins.push(E),this.context.renderingPlugins.push(E)}},{key:"removeAllRenderingPlugins",value:function(){var E=this;this.plugins.forEach(function(z){var te=E.context.renderingPlugins.indexOf(z);te>=0&&E.context.renderingPlugins.splice(te,1)})}}])}(),Nb=function(){function b(x){(0,xi.Z)(this,b),this.clipSpaceNearZ=I1.NEGATIVE_ONE,this.plugins=[],this.config=(0,Li.Z)({enableDirtyCheck:!0,enableCulling:!1,enableAutoRendering:!0,enableDirtyRectangleRendering:!0,enableDirtyRectangleRenderingDebug:!1,enableSizeAttenuation:!0,enableRenderingOptimization:!1},x)}return(0,qr.Z)(b,[{key:"registerPlugin",value:function(E){var z=this.plugins.findIndex(function(te){return te===E});z===-1&&this.plugins.push(E)}},{key:"unregisterPlugin",value:function(E){var z=this.plugins.findIndex(function(te){return te===E});z>-1&&this.plugins.splice(z,1)}},{key:"getPlugins",value:function(){return this.plugins}},{key:"getPlugin",value:function(E){return this.plugins.find(function(z){return z.name===E})}},{key:"getConfig",value:function(){return this.config}},{key:"setConfig",value:function(E){Object.assign(this.config,E)}}])}(),FA=Hl,Kc=Fs,Oi=rd,O1=xf,kw=nu,Up=Gg,Cc=function(){function b(){(0,xi.Z)(this,b),this.center=[0,0,0],this.halfExtents=[0,0,0],this.min=[0,0,0],this.max=[0,0,0]}return(0,qr.Z)(b,[{key:"update",value:function(E,z){Kc(this.center,E),Kc(this.halfExtents,z),Up(this.min,this.center,this.halfExtents),FA(this.max,this.center,this.halfExtents)}},{key:"setMinMax",value:function(E,z){FA(this.center,z,E),kw(this.center,this.center,.5),Up(this.halfExtents,z,E),kw(this.halfExtents,this.halfExtents,.5),Kc(this.min,E),Kc(this.max,z)}},{key:"getMin",value:function(){return this.min}},{key:"getMax",value:function(){return this.max}},{key:"add",value:function(E){if(!b.isEmpty(E)){if(b.isEmpty(this)){this.setMinMax(E.getMin(),E.getMax());return}var z=this.center,te=z[0],re=z[1],oe=z[2],le=this.halfExtents,ce=le[0],ge=le[1],Ae=le[2],Me=te-ce,Ue=te+ce,Xe=re-ge,$e=re+ge,rt=oe-Ae,ot=oe+Ae,pt=E.center,yt=pt[0],Ct=pt[1],zt=pt[2],Wt=E.halfExtents,Ht=Wt[0],Qt=Wt[1],Gt=Wt[2],vn=yt-Ht,Sn=yt+Ht,kn=Ct-Qt,Kn=Ct+Qt,vr=zt-Gt,er=zt+Gt;vnUe&&(Ue=Sn),kn$e&&($e=Kn),vrot&&(ot=er),z[0]=(Me+Ue)*.5,z[1]=(Xe+$e)*.5,z[2]=(rt+ot)*.5,le[0]=(Ue-Me)*.5,le[1]=($e-Xe)*.5,le[2]=(ot-rt)*.5,this.min[0]=Me,this.min[1]=Xe,this.min[2]=rt,this.max[0]=Ue,this.max[1]=$e,this.max[2]=ot}}},{key:"setFromTransformedAABB",value:function(E,z){var te=this.center,re=this.halfExtents,oe=E.center,le=E.halfExtents,ce=z[0],ge=z[4],Ae=z[8],Me=z[1],Ue=z[5],Xe=z[9],$e=z[2],rt=z[6],ot=z[10],pt=Math.abs(ce),yt=Math.abs(ge),Ct=Math.abs(Ae),zt=Math.abs(Me),Wt=Math.abs(Ue),Ht=Math.abs(Xe),Qt=Math.abs($e),Gt=Math.abs(rt),vn=Math.abs(ot);te[0]=z[12]+ce*oe[0]+ge*oe[1]+Ae*oe[2],te[1]=z[13]+Me*oe[0]+Ue*oe[1]+Xe*oe[2],te[2]=z[14]+$e*oe[0]+rt*oe[1]+ot*oe[2],re[0]=pt*le[0]+yt*le[1]+Ct*le[2],re[1]=zt*le[0]+Wt*le[1]+Ht*le[2],re[2]=Qt*le[0]+Gt*le[1]+vn*le[2],Up(this.min,te,re),FA(this.max,te,re)}},{key:"intersects",value:function(E){var z=this.getMax(),te=this.getMin(),re=E.getMax(),oe=E.getMin();return te[0]<=re[0]&&z[0]>=oe[0]&&te[1]<=re[1]&&z[1]>=oe[1]&&te[2]<=re[2]&&z[2]>=oe[2]}},{key:"intersection",value:function(E){if(!this.intersects(E))return null;var z=new b,te=Oi([0,0,0],this.getMin(),E.getMin()),re=O1([0,0,0],this.getMax(),E.getMax());return z.setMinMax(te,re),z}},{key:"getNegativeFarPoint",value:function(E){return E.pnVertexFlag===273?Kc([0,0,0],this.min):E.pnVertexFlag===272?[this.min[0],this.min[1],this.max[2]]:E.pnVertexFlag===257?[this.min[0],this.max[1],this.min[2]]:E.pnVertexFlag===256?[this.min[0],this.max[1],this.max[2]]:E.pnVertexFlag===17?[this.max[0],this.min[1],this.min[2]]:E.pnVertexFlag===16?[this.max[0],this.min[1],this.max[2]]:E.pnVertexFlag===1?[this.max[0],this.max[1],this.min[2]]:[this.max[0],this.max[1],this.max[2]]}},{key:"getPositiveFarPoint",value:function(E){return E.pnVertexFlag===273?Kc([0,0,0],this.max):E.pnVertexFlag===272?[this.max[0],this.max[1],this.min[2]]:E.pnVertexFlag===257?[this.max[0],this.min[1],this.max[2]]:E.pnVertexFlag===256?[this.max[0],this.min[1],this.min[2]]:E.pnVertexFlag===17?[this.min[0],this.max[1],this.max[2]]:E.pnVertexFlag===16?[this.min[0],this.max[1],this.min[2]]:E.pnVertexFlag===1?[this.min[0],this.min[1],this.max[2]]:[this.min[0],this.min[1],this.min[2]]}}],[{key:"isEmpty",value:function(E){return!E||E.halfExtents[0]===0&&E.halfExtents[1]===0&&E.halfExtents[2]===0}}])}(),Fw=function(){function b(x,E){(0,xi.Z)(this,b),this.distance=x||0,this.normal=E||Gs(0,1,0),this.updatePNVertexFlag()}return(0,qr.Z)(b,[{key:"updatePNVertexFlag",value:function(){this.pnVertexFlag=(+(this.normal[0]>=0)<<8)+(+(this.normal[1]>=0)<<4)+ +(this.normal[2]>=0)}},{key:"distanceToPoint",value:function(E){return Mr(E,this.normal)-this.distance}},{key:"normalize",value:function(){var E=1/Hg(this.normal);nu(this.normal,this.normal,E),this.distance*=E}},{key:"intersectsLine",value:function(E,z,te){var re=this.distanceToPoint(E),oe=this.distanceToPoint(z),le=re/(re-oe),ce=le>=0&&le<=1;return ce&&te&&$d(te,E,z,le),ce}}])}(),Bv=function(b){return b[b.OUTSIDE=4294967295]="OUTSIDE",b[b.INSIDE=0]="INSIDE",b[b.INDETERMINATE=2147483647]="INDETERMINATE",b}({}),N1=function(){function b(x){if((0,xi.Z)(this,b),this.planes=[],x)this.planes=x;else for(var E=0;E<6;E++)this.planes.push(new Fw)}return(0,qr.Z)(b,[{key:"extractFromVPMatrix",value:function(E){var z=(0,Wr.Z)(E,16),te=z[0],re=z[1],oe=z[2],le=z[3],ce=z[4],ge=z[5],Ae=z[6],Me=z[7],Ue=z[8],Xe=z[9],$e=z[10],rt=z[11],ot=z[12],pt=z[13],yt=z[14],Ct=z[15];_l(this.planes[0].normal,le-te,Me-ce,rt-Ue),this.planes[0].distance=Ct-ot,_l(this.planes[1].normal,le+te,Me+ce,rt+Ue),this.planes[1].distance=Ct+ot,_l(this.planes[2].normal,le+re,Me+ge,rt+Xe),this.planes[2].distance=Ct+pt,_l(this.planes[3].normal,le-re,Me-ge,rt-Xe),this.planes[3].distance=Ct-pt,_l(this.planes[4].normal,le-oe,Me-Ae,rt-$e),this.planes[4].distance=Ct-yt,_l(this.planes[5].normal,le+oe,Me+Ae,rt+$e),this.planes[5].distance=Ct+yt,this.planes.forEach(function(zt){zt.normalize(),zt.updatePNVertexFlag()})}}])}(),wd=function(){function b(){var x=arguments.length>0&&arguments[0]!==void 0?arguments[0]:0,E=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;(0,xi.Z)(this,b),this.x=0,this.y=0,this.x=x,this.y=E}return(0,qr.Z)(b,[{key:"clone",value:function(){return new b(this.x,this.y)}},{key:"copyFrom",value:function(E){this.x=E.x,this.y=E.y}}])}(),jm=function(){function b(x,E,z,te){(0,xi.Z)(this,b),this.x=x,this.y=E,this.width=z,this.height=te,this.left=x,this.right=x+z,this.top=E,this.bottom=E+te}return(0,qr.Z)(b,[{key:"toJSON",value:function(){}}],[{key:"fromRect",value:function(E){return new b(E.x,E.y,E.width,E.height)}},{key:"applyTransform",value:function(E,z){var te=Hf(E.x,E.y,0,1),re=Hf(E.x+E.width,E.y,0,1),oe=Hf(E.x,E.y+E.height,0,1),le=Hf(E.x+E.width,E.y+E.height,0,1),ce=xd(),ge=xd(),Ae=xd(),Me=xd();Vg(ce,te,z),Vg(ge,re,z),Vg(Ae,oe,z),Vg(Me,le,z);var Ue=Math.min(ce[0],ge[0],Ae[0],Me[0]),Xe=Math.min(ce[1],ge[1],Ae[1],Me[1]),$e=Math.max(ce[0],ge[0],Ae[0],Me[0]),rt=Math.max(ce[1],ge[1],Ae[1],Me[1]);return b.fromRect({x:Ue,y:Xe,width:$e-Ue,height:rt-Xe})}}])}(),dc="Method not implemented.",Rv="Use document.documentElement instead.",wy="Cannot append a destroyed element.";function Wm(b){return b===void 0?0:b>360||b<-360?b%360:b}var kv=ba();function vg(b){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,E=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,z=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0;return Array.isArray(b)&&b.length===3?z?bs(b):Fs(kv,b):os(b)?z?Gs(b,x,E):_l(kv,b,x,E):z?Gs(b[0],b[1]||x,b[2]||E):_l(kv,b[0],b[1]||x,b[2]||E)}var CT=Math.PI/180;function Yu(b){return b*CT}var _A=180/Math.PI;function mg(b){return b*_A}var aE=.9;function zA(b){return b%=400,b<0&&(b+=400),b*aE}function B1(b){return b/360}function Cy(b){return 360*b}var R1=Math.PI/2;function bT(b,x){var E=x[0],z=x[1],te=x[2],re=x[3],oe=E*E,le=z*z,ce=te*te,ge=re*re,Ae=oe+le+ce+ge,Me=E*re-z*te;return Me>.499995*Ae?(b[0]=R1,b[1]=2*Math.atan2(z,E),b[2]=0):Me<-.499995*Ae?(b[0]=-R1,b[1]=2*Math.atan2(z,E),b[2]=0):(b[0]=Math.asin(2*(E*te-re*z)),b[1]=Math.atan2(2*(E*re+z*te),1-2*(ce+ge)),b[2]=Math.atan2(2*(E*z+te*re),1-2*(le+ce))),b}function PT(b,x){var E,z,te=u0(ba(),x),re=(0,Wr.Z)(te,3),oe=re[0],le=re[1],ce=re[2],ge=Math.asin(-x[2]/oe);return ge-R1?(E=Math.atan2(x[6]/le,x[10]/ce),z=Math.atan2(x[1]/oe,x[0]/oe)):(z=0,E=-Math.atan2(x[4]/le,x[5]/le)):(z=0,E=Math.atan2(x[4]/le,x[5]/le)),b[0]=E,b[1]=ge,b[2]=z,b}function jA(b,x){return x.length===16?PT(b,x):bT(b,x)}function Kh(b,x,E,z,te){var re=Math.cos(b),oe=Math.sin(b);return fs(z*re,te*oe,0,-z*oe,te*re,0,x,E,1)}function af(b,x,E,z,te,re,oe){var le=arguments.length>7&&arguments[7]!==void 0?arguments[7]:!1,ce=2*re,ge=E-x,Ae=z-te,Me=ce/ge,Ue=ce/Ae,Xe=(E+x)/ge,$e=(z+te)/Ae,rt,ot,pt=oe-re,yt=oe*re;return le?(rt=-oe/pt,ot=-yt/pt):(rt=-(oe+re)/pt,ot=-2*yt/pt),b[0]=Me,b[1]=0,b[2]=0,b[3]=0,b[4]=0,b[5]=Ue,b[6]=0,b[7]=0,b[8]=Xe,b[9]=$e,b[10]=rt,b[11]=-1,b[12]=0,b[13]=0,b[14]=ot,b[15]=0,b}function p0(b){var x=b[0],E=b[1],z=b[3],te=b[4],re=Math.sqrt(x*x+E*E),oe=Math.sqrt(z*z+te*te),le=x*te-E*z;if(le<0&&(xOl[1][2]&&(re[0]=-re[0]),Ol[0][2]>Ol[2][0]&&(re[1]=-re[1]),Ol[1][0]>Ol[0][1]&&(re[2]=-re[2]),!0}function lE(b,x){var E=x[15];if(E===0)return!1;for(var z=1/E,te=0;te<16;te++)b[te]=x[te]*z;return!0}function _w(b,x){b[0][0]=x[0],b[0][1]=x[1],b[0][2]=x[2],b[1][0]=x[4],b[1][1]=x[5],b[1][2]=x[6],b[2][0]=x[8],b[2][1]=x[9],b[2][2]=x[10]}function F1(b,x,E,z,te){b[0]=x[0]*z+E[0]*te,b[1]=x[1]*z+E[1]*te,b[2]=x[2]*z+E[2]*te}var lc=function(b){return b[b.ORBITING=0]="ORBITING",b[b.EXPLORING=1]="EXPLORING",b[b.TRACKING=2]="TRACKING",b}({}),by=function(b){return b[b.DEFAULT=0]="DEFAULT",b[b.ROTATIONAL=1]="ROTATIONAL",b[b.TRANSLATIONAL=2]="TRANSLATIONAL",b[b.CINEMATIC=3]="CINEMATIC",b}({}),Eg=function(b){return b[b.ORTHOGRAPHIC=0]="ORTHOGRAPHIC",b[b.PERSPECTIVE=1]="PERSPECTIVE",b}({}),zw={UPDATED:"updated"},jw=2e-4,_1=function(){function b(){(0,xi.Z)(this,b),this.clipSpaceNearZ=I1.NEGATIVE_ONE,this.eventEmitter=new ho,this.matrix=is(),this.right=Gs(1,0,0),this.up=Gs(0,1,0),this.forward=Gs(0,0,1),this.position=Gs(0,0,1),this.focalPoint=Gs(0,0,0),this.distanceVector=Gs(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=is(),this.projectionMatrixInverse=is(),this.jitteredProjectionMatrix=void 0,this.enableUpdate=!0,this.type=lc.EXPLORING,this.trackingMode=by.DEFAULT,this.projectionMode=Eg.PERSPECTIVE,this.frustum=new N1,this.orthoMatrix=is()}return(0,qr.Z)(b,[{key:"isOrtho",value:function(){return this.projectionMode===Eg.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(E){this.enableUpdate=E}},{key:"setType",value:function(E,z){return this.type=E,this.type===lc.EXPLORING?this.setWorldRotation(!0):this.setWorldRotation(!1),this._getAngles(),this.type===lc.TRACKING&&z!==void 0&&this.setTrackingMode(z),this}},{key:"setProjectionMode",value:function(E){return this.projectionMode=E,this}},{key:"setTrackingMode",value:function(E){if(this.type!==lc.TRACKING)throw new Error("Impossible to set a tracking mode if the camera is not of tracking type");return this.trackingMode=E,this}},{key:"setWorldRotation",value:function(E){return this.rotateWorld=E,this._getAngles(),this}},{key:"getViewTransform",value:function(){return Fd(is(),this.matrix)}},{key:"getWorldTransform",value:function(){return this.matrix}},{key:"jitterProjectionMatrix",value:function(E,z){var te=Rp(is(),[E,z,0]);this.jitteredProjectionMatrix=vl(is(),te,this.projectionMatrix)}},{key:"clearJitterProjectionMatrix",value:function(){this.jitteredProjectionMatrix=void 0}},{key:"setMatrix",value:function(E){return this.matrix=E,this._update(),this}},{key:"setProjectionMatrix",value:function(E){this.projectionMatrix=E}},{key:"setFov",value:function(E){return this.setPerspective(this.near,this.far,E,this.aspect),this}},{key:"setAspect",value:function(E){return this.setPerspective(this.near,this.far,this.fov,E),this}},{key:"setNear",value:function(E){return this.projectionMode===Eg.PERSPECTIVE?this.setPerspective(E,this.far,this.fov,this.aspect):this.setOrthographic(this.left,this.rright,this.top,this.bottom,E,this.far),this}},{key:"setFar",value:function(E){return this.projectionMode===Eg.PERSPECTIVE?this.setPerspective(this.near,E,this.fov,this.aspect):this.setOrthographic(this.left,this.rright,this.top,this.bottom,this.near,E),this}},{key:"setViewOffset",value:function(E,z,te,re,oe,le){return this.aspect=E/z,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=E,this.view.fullHeight=z,this.view.offsetX=te,this.view.offsetY=re,this.view.width=oe,this.view.height=le,this.projectionMode===Eg.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===Eg.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(E){return this.zoom=E,this.projectionMode===Eg.ORTHOGRAPHIC?this.setOrthographic(this.left,this.rright,this.top,this.bottom,this.near,this.far):this.projectionMode===Eg.PERSPECTIVE&&this.setPerspective(this.near,this.far,this.fov,this.aspect),this}},{key:"setZoomByViewportPoint",value:function(E,z){var te=this.canvas.viewport2Canvas({x:z[0],y:z[1]}),re=te.x,oe=te.y,le=this.roll;this.rotate(0,0,-le),this.setPosition(re,oe),this.setFocalPoint(re,oe),this.setZoom(E),this.rotate(0,0,le);var ce=this.canvas.viewport2Canvas({x:z[0],y:z[1]}),ge=ce.x,Ae=ce.y,Me=Gs(ge-re,Ae-oe,0),Ue=Mr(Me,this.right)/Cl(this.right),Xe=Mr(Me,this.up)/Cl(this.up),$e=this.getPosition(),rt=(0,Wr.Z)($e,2),ot=rt[0],pt=rt[1],yt=this.getFocalPoint(),Ct=(0,Wr.Z)(yt,2),zt=Ct[0],Wt=Ct[1];return this.setPosition(ot-Ue,pt-Xe),this.setFocalPoint(zt-Ue,Wt-Xe),this}},{key:"setPerspective",value:function(E,z,te,re){var oe;this.projectionMode=Eg.PERSPECTIVE,this.fov=te,this.near=E,this.far=z,this.aspect=re;var le=this.near*Math.tan(Yu(.5*this.fov))/this.zoom,ce=2*le,ge=this.aspect*ce,Ae=-.5*ge;if((oe=this.view)!==null&&oe!==void 0&&oe.enabled){var Me=this.view.fullWidth,Ue=this.view.fullHeight;Ae+=this.view.offsetX*ge/Me,le-=this.view.offsetY*ce/Ue,ge*=this.view.width/Me,ce*=this.view.height/Ue}return af(this.projectionMatrix,Ae,Ae+ge,le-ce,le,E,this.far,this.clipSpaceNearZ===I1.ZERO),Fd(this.projectionMatrixInverse,this.projectionMatrix),this.triggerUpdate(),this}},{key:"setOrthographic",value:function(E,z,te,re,oe,le){var ce;this.projectionMode=Eg.ORTHOGRAPHIC,this.rright=z,this.left=E,this.top=te,this.bottom=re,this.near=oe,this.far=le;var ge=(this.rright-this.left)/(2*this.zoom),Ae=(this.top-this.bottom)/(2*this.zoom),Me=(this.rright+this.left)/2,Ue=(this.top+this.bottom)/2,Xe=Me-ge,$e=Me+ge,rt=Ue+Ae,ot=Ue-Ae;if((ce=this.view)!==null&&ce!==void 0&&ce.enabled){var pt=(this.rright-this.left)/this.view.fullWidth/this.zoom,yt=(this.top-this.bottom)/this.view.fullHeight/this.zoom;Xe+=pt*this.view.offsetX,$e=Xe+pt*this.view.width,rt-=yt*this.view.offsetY,ot=rt-yt*this.view.height}return this.clipSpaceNearZ===I1.NEGATIVE_ONE?Ee(this.projectionMatrix,Xe,$e,rt,ot,oe,le):_e(this.projectionMatrix,Xe,$e,rt,ot,oe,le),Fd(this.projectionMatrixInverse,this.projectionMatrix),this._getOrthoMatrix(),this.triggerUpdate(),this}},{key:"setPosition",value:function(E){var z=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.position[1],te=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.position[2],re=vg(E,z,te);return this._setPosition(re),this.setFocalPoint(this.focalPoint),this.triggerUpdate(),this}},{key:"setFocalPoint",value:function(E){var z=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.focalPoint[1],te=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.focalPoint[2],re=Gs(0,1,0);if(this.focalPoint=vg(E,z,te),this.trackingMode===by.CINEMATIC){var oe=tu(ba(),this.focalPoint,this.position);E=oe[0],z=oe[1],te=oe[2];var le=Cl(oe),ce=mg(Math.asin(z/le)),ge=90+mg(Math.atan2(te,E)),Ae=is();K0(Ae,Ae,Yu(ge)),_d(Ae,Ae,Yu(ce)),re=Ac(ba(),[0,1,0],Ae)}return Fd(this.matrix,it(is(),this.position,this.focalPoint,re)),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(E){if(this.distance===E||E<0)return this;this.distance=E,this.distance>8&15|x>>4&240,x>>4&15|x&240,(x&15)<<4|x&15,1):E===8?HA(x>>24&255,x>>16&255,x>>8&255,(x&255)/255):E===4?HA(x>>12&15|x>>8&240,x>>8&15|x>>4&240,x>>4&15|x&240,((x&15)<<4|x&15)/255):null):(x=Ww.exec(b))?new Qf(x[1],x[2],x[3],1):(x=Uw.exec(b))?new Qf(x[1]*255/100,x[2]*255/100,x[3]*255/100,1):(x=Ly.exec(b))?HA(x[1],x[2],x[3],x[4]):(x=MT.exec(b))?HA(x[1]*255/100,x[2]*255/100,x[3]*255/100,x[4]):(x=Rb.exec(b))?Ag(x[1],x[2]/100,x[3]/100,1):(x=Gw.exec(b))?Ag(x[1],x[2]/100,x[3]/100,x[4]):Wl.hasOwnProperty(b)?GA(Wl[b]):b==="transparent"?new Qf(NaN,NaN,NaN,0):null}function GA(b){return new Qf(b>>16&255,b>>8&255,b&255,1)}function HA(b,x,E,z){return z<=0&&(b=x=E=NaN),new Qf(b,x,E,z)}function Vw(b){return b instanceof Hm||(b=j1(b)),b?(b=b.rgb(),new Qf(b.r,b.g,b.b,b.opacity)):new Qf}function uc(b,x,E,z){return arguments.length===1?Vw(b):new Qf(b,x,E,z==null?1:z)}function Qf(b,x,E,z){this.r=+b,this.g=+x,this.b=+E,this.opacity=+z}UA(Qf,uc,vp(Hm,{brighter(b){return b=b==null?uE:Math.pow(uE,b),new Qf(this.r*b,this.g*b,this.b*b,this.opacity)},darker(b){return b=b==null?Vm:Math.pow(Vm,b),new Qf(this.r*b,this.g*b,this.b*b,this.opacity)},rgb(){return this},clamp(){return new Qf(v0(this.r),v0(this.g),v0(this.b),Ty(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:Cd,formatHex:Cd,formatHex8:Uc,formatRgb:Kw,toString:Kw}));function Cd(){return`#${ev(this.r)}${ev(this.g)}${ev(this.b)}`}function Uc(){return`#${ev(this.r)}${ev(this.g)}${ev(this.b)}${ev((isNaN(this.opacity)?1:this.opacity)*255)}`}function Kw(){const b=Ty(this.opacity);return`${b===1?"rgb(":"rgba("}${v0(this.r)}, ${v0(this.g)}, ${v0(this.b)}${b===1?")":`, ${b})`}`}function Ty(b){return isNaN(b)?1:Math.max(0,Math.min(1,b))}function v0(b){return Math.max(0,Math.min(255,Math.round(b)||0))}function ev(b){return b=v0(b),(b<16?"0":"")+b.toString(16)}function Ag(b,x,E,z){return z<=0?b=x=E=NaN:E<=0||E>=1?b=x=NaN:x<=0&&(b=NaN),new Sg(b,x,E,z)}function VA(b){if(b instanceof Sg)return new Sg(b.h,b.s,b.l,b.opacity);if(b instanceof Hm||(b=j1(b)),!b)return new Sg;if(b instanceof Sg)return b;b=b.rgb();var x=b.r/255,E=b.g/255,z=b.b/255,te=Math.min(x,E,z),re=Math.max(x,E,z),oe=NaN,le=re-te,ce=(re+te)/2;return le?(x===re?oe=(E-z)/le+(E0&&ce<1?0:oe,new Sg(oe,le,ce,b.opacity)}function KA(b,x,E,z){return arguments.length===1?VA(b):new Sg(b,x,E,z==null?1:z)}function Sg(b,x,E,z){this.h=+b,this.s=+x,this.l=+E,this.opacity=+z}UA(Sg,KA,vp(Hm,{brighter(b){return b=b==null?uE:Math.pow(uE,b),new Sg(this.h,this.s,this.l*b,this.opacity)},darker(b){return b=b==null?Vm:Math.pow(Vm,b),new Sg(this.h,this.s,this.l*b,this.opacity)},rgb(){var b=this.h%360+(this.h<0)*360,x=isNaN(b)||isNaN(this.s)?0:this.s,E=this.l,z=E+(E<.5?E:1-E)*x,te=2*E-z;return new Qf(ZA(b>=240?b-240:b+120,te,z),ZA(b,te,z),ZA(b<120?b+240:b-120,te,z),this.opacity)},clamp(){return new Sg(hE(this.h),el(this.s),el(this.l),Ty(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 b=Ty(this.opacity);return`${b===1?"hsl(":"hsla("}${hE(this.h)}, ${el(this.s)*100}%, ${el(this.l)*100}%${b===1?")":`, ${b})`}`}}));function hE(b){return b=(b||0)%360,b<0?b+360:b}function el(b){return Math.max(0,Math.min(1,b||0))}function ZA(b,x,E){return(b<60?x+(E-x)*b/60:b<180?E:b<240?x+(E-x)*(240-b)/60:x)*255}function dd(b,x){if(typeof b!="function"||x!=null&&typeof x!="function")throw new TypeError("Expected a function");var E=function(){for(var te=arguments.length,re=new Array(te),oe=0;oe=Dy.kUnitType&&this.getType()<=Dy.kClampType}}],[{key:"isAngle",value:function(E){return E===ns.kDegrees||E===ns.kRadians||E===ns.kGradians||E===ns.kTurns}},{key:"isLength",value:function(E){return E>=ns.kEms&&E1&&arguments[1]!==void 0?arguments[1]:"",z="";return Number.isFinite(x)?z="NaN":x>0?z="infinity":z="-infinity",z+=E},JA=function(x){return Ub(bc(x))},cc=function(b){function x(E){var z,te=arguments.length>1&&arguments[1]!==void 0?arguments[1]:ns.kNumber;(0,xi.Z)(this,x),z=Fi(this,x);var re;return typeof te=="string"?re=Wb(te):re=te,z.unit=re,z.value=E,z}return(0,Do.Z)(x,b),(0,qr.Z)(x,[{key:"clone",value:function(){return new x(this.value,this.unit)}},{key:"equals",value:function(z){var te=z;return this.value===te.value&&this.unit===te.unit}},{key:"getType",value:function(){return Dy.kUnitType}},{key:"convertTo",value:function(z){if(this.unit===z)return new x(this.value,this.unit);var te=JA(this.unit);if(te!==JA(z)||te===ns.kUnknown)return null;var re=Xw(this.unit)/Xw(z);return new x(this.value*re,z)}},{key:"buildCSSText",value:function(z,te,re){var oe;switch(this.unit){case ns.kUnknown:break;case ns.kInteger:oe=Number(this.value).toFixed(0);break;case ns.kNumber:case ns.kPercentage:case ns.kEms:case ns.kRems:case ns.kPixels:case ns.kDegrees:case ns.kRadians:case ns.kGradians:case ns.kMilliseconds:case ns.kSeconds:case ns.kTurns:{var le=-999999,ce=999999,ge=this.value,Ae=XA(this.unit);if(gece){var Me=XA(this.unit);!Number.isFinite(ge)||Number.isNaN(ge)?oe=Hb(ge,Me):oe=ge+(Me||"")}else oe="".concat(ge).concat(Ae)}}return re+=oe,re}}])}(bd),jd=new cc(0,"px");new cc(1,"px");var Km=new cc(0,"deg"),Ch=function(b){function x(E,z,te){var re,oe=arguments.length>3&&arguments[3]!==void 0?arguments[3]:1,le=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1;return(0,xi.Z)(this,x),re=Fi(this,x,["rgb"]),re.r=E,re.g=z,re.b=te,re.alpha=oe,re.isNone=le,re}return(0,Do.Z)(x,b),(0,qr.Z)(x,[{key:"clone",value:function(){return new x(this.r,this.g,this.b,this.alpha)}},{key:"buildCSSText",value:function(z,te,re){return"".concat(re,"rgba(").concat(this.r,",").concat(this.g,",").concat(this.b,",").concat(this.alpha,")")}}])}(QA),qA=new mp("unset"),Zh=new mp("initial"),LT=new mp("inherit"),Xu={"":qA,unset:qA,initial:Zh,inherit:LT},_v=function(x){return Xu[x]||(Xu[x]=new mp(x)),Xu[x]},Qw=new Ch(0,0,0,0,!0),Jw=new Ch(0,0,0,0),Jg=dd(function(b,x,E,z){return new Ch(b,x,E,z)},function(b,x,E,z){return"rgba(".concat(b,",").concat(x,",").concat(E,",").concat(z,")")}),Nu=function(x){var E=arguments.length>1&&arguments[1]!==void 0?arguments[1]:ns.kNumber;return new cc(x,E)};new cc(50,"%");function dE(b){var x=b.type,E=b.value;return x==="hex"?"#".concat(E):x==="literal"?E:x==="rgb"?"rgb(".concat(E.join(","),")"):"rgba(".concat(E.join(","),")")}var $A=function(){var b={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]+\.?))/},x="";function E(Ar){throw new Error("".concat(x,": ").concat(Ar))}function z(){var Ar=te();return x.length>0&&E("Invalid input not EOF"),Ar}function te(){return Ct(re)}function re(){return oe("linear-gradient",b.linearGradient,ce)||oe("repeating-linear-gradient",b.repeatingLinearGradient,ce)||oe("radial-gradient",b.radialGradient,Me)||oe("repeating-radial-gradient",b.repeatingRadialGradient,Me)||oe("conic-gradient",b.conicGradient,Me)}function oe(Ar,Sr,Ir){return le(Sr,function(si){var Cr=Ir();return Cr&&(Nr(b.comma)||E("Missing comma before color stops")),{type:Ar,orientation:Cr,colorStops:Ct(zt)}})}function le(Ar,Sr){var Ir=Nr(Ar);if(Ir){Nr(b.startCall)||E("Missing (");var si=Sr(Ir);return Nr(b.endCall)||E("Missing )"),si}}function ce(){return ge()||Ae()}function ge(){return er("directional",b.sideOrCorner,1)}function Ae(){return er("angular",b.angleValue,1)}function Me(){var Ar,Sr=Ue(),Ir;return Sr&&(Ar=[],Ar.push(Sr),Ir=x,Nr(b.comma)&&(Sr=Ue(),Sr?Ar.push(Sr):x=Ir)),Ar}function Ue(){var Ar=Xe()||$e();if(Ar)Ar.at=ot();else{var Sr=rt();if(Sr){Ar=Sr;var Ir=ot();Ir&&(Ar.at=Ir)}else{var si=pt();si&&(Ar={type:"default-radial",at:si})}}return Ar}function Xe(){var Ar=er("shape",/^(circle)/i,0);return Ar&&(Ar.style=vr()||rt()),Ar}function $e(){var Ar=er("shape",/^(ellipse)/i,0);return Ar&&(Ar.style=kn()||rt()),Ar}function rt(){return er("extent-keyword",b.extentKeywords,1)}function ot(){if(er("position",/^at/,0)){var Ar=pt();return Ar||E("Missing positioning value"),Ar}}function pt(){var Ar=yt();if(Ar.x||Ar.y)return{type:"position",value:Ar}}function yt(){return{x:kn(),y:kn()}}function Ct(Ar){var Sr=Ar(),Ir=[];if(Sr)for(Ir.push(Sr);Nr(b.comma);)Sr=Ar(),Sr?Ir.push(Sr):E("One extra comma");return Ir}function zt(){var Ar=Wt();return Ar||E("Expected color definition"),Ar.length=kn(),Ar}function Wt(){return Qt()||vn()||Gt()||Ht()}function Ht(){return er("literal",b.literalColor,0)}function Qt(){return er("hex",b.hexColor,1)}function Gt(){return le(b.rgbColor,function(){return{type:"rgb",value:Ct(Sn)}})}function vn(){return le(b.rgbaColor,function(){return{type:"rgba",value:Ct(Sn)}})}function Sn(){return Nr(b.number)[1]}function kn(){return er("%",b.percentageValue,1)||Kn()||vr()}function Kn(){return er("position-keyword",b.positionKeywords,1)}function vr(){return er("px",b.pixelValue,1)||er("em",b.emValue,1)}function er(Ar,Sr,Ir){var si=Nr(Sr);if(si)return{type:Ar,value:si[Ir]}}function Nr(Ar){var Sr=/^[\n\r\t\s]+/.exec(x);Sr&&ei(Sr[0].length);var Ir=Ar.exec(x);return Ir&&ei(Ir[0].length),Ir}function ei(Ar){x=x.substring(Ar)}return function(Ar){return x=Ar,z()}}();function qw(b,x,E,z){var te=Yu(z.value),re=0,oe=0,le=re+x/2,ce=oe+E/2,ge=Math.abs(x*Math.cos(te))+Math.abs(E*Math.sin(te)),Ae=b[0]+le-Math.cos(te)*ge/2,Me=b[1]+ce-Math.sin(te)*ge/2,Ue=b[0]+le+Math.cos(te)*ge/2,Xe=b[1]+ce+Math.sin(te)*ge/2;return{x1:Ae,y1:Me,x2:Ue,y2:Xe}}function fE(b,x,E,z,te,re){var oe=z.value,le=te.value;z.unit===ns.kPercentage&&(oe=z.value/100*x),te.unit===ns.kPercentage&&(le=te.value/100*E);var ce=Math.max(cd([0,0],[oe,le]),cd([0,E],[oe,le]),cd([x,E],[oe,le]),cd([x,0],[oe,le]));return re&&(re instanceof cc?ce=re.value:re instanceof mp&&(re.value==="closest-side"?ce=Math.min(oe,x-oe,le,E-le):re.value==="farthest-side"?ce=Math.max(oe,x-oe,le,E-le):re.value==="closest-corner"&&(ce=Math.min(cd([0,0],[oe,le]),cd([0,E],[oe,le]),cd([x,E],[oe,le]),cd([x,0],[oe,le]))))),{x:oe+b[0],y:le+b[1],r:ce}}var $w=/^l\s*\(\s*([\d.]+)\s*\)\s*(.*)/i,Wu=/^r\s*\(\s*([\d.]+)\s*,\s*([\d.]+)\s*,\s*([\d.]+)\s*\)\s*(.*)/i,Ul=/^p\s*\(\s*([axyn])\s*\)\s*(.*)/i,eC=/[\d.]+:(#[^\s]+|[^\)]+\))/gi;function wg(b){var x,E=b.length;if(b[E-1].length=(x=b[E-1].length)!==null&&x!==void 0?x:{type:"%",value:"100"},E>1){var z;b[0].length=(z=b[0].length)!==null&&z!==void 0?z:{type:"%",value:"0"}}for(var te=0,re=Number(b[0].length.value),oe=1;oe-1||b.indexOf("radial")>-1){var x=$A(b);return x.map(function(le){var ce=le.type,ge=le.orientation,Ae=le.colorStops;wg(Ae);var Me=Ae.map(function(Ct){return{offset:Nu(Number(Ct.length.value),"%"),color:dE(Ct)}});if(ce==="linear-gradient")return new Fv(yo.LinearGradient,{angle:ge?Vb(ge):Km,steps:Me});if(ce==="radial-gradient"&&(ge||(ge=[{type:"shape",value:"circle"}]),ge[0].type==="shape"&&ge[0].value==="circle")){var Ue=TT(ge[0].at),Xe=Ue.cx,$e=Ue.cy,rt;if(ge[0].style){var ot=ge[0].style,pt=ot.type,yt=ot.value;pt==="extent-keyword"?rt=_v(yt):rt=Nu(yt,pt)}return new Fv(yo.RadialGradient,{cx:Xe,cy:$e,size:rt,steps:Me})}})}var E=b[0];if(b[1]==="("||b[2]==="("){if(E==="l"){var z=$w.exec(b);if(z){var te,re=((te=z[2].match(eC))===null||te===void 0?void 0:te.map(function(le){return le.split(":")}))||[];return[new Fv(yo.LinearGradient,{angle:Nu(parseFloat(z[1]),"deg"),steps:re.map(function(le){var ce=(0,Wr.Z)(le,2),ge=ce[0],Ae=ce[1];return{offset:Nu(Number(ge)*100,"%"),color:Ae}})})]}}else if(E==="r"){var oe=gE(b);if(oe)if(nc(oe))b=oe;else return[new Fv(yo.RadialGradient,oe)]}else if(E==="p")return vs(b)}});function gE(b){var x=Wu.exec(b);if(x){var E,z=((E=x[4].match(eC))===null||E===void 0?void 0:E.map(function(te){return te.split(":")}))||[];return{cx:Nu(50,"%"),cy:Nu(50,"%"),steps:z.map(function(te){var re=(0,Wr.Z)(te,2),oe=re[0],le=re[1];return{offset:Nu(Number(oe)*100,"%"),color:le}})}}return null}function vs(b){var x=Ul.exec(b);if(x){var E=x[1],z=x[2];switch(E){case"a":E="repeat";break;case"x":E="repeat-x";break;case"y":E="repeat-y";break;case"n":E="no-repeat";break;default:E="no-repeat"}return{image:z,repetition:E}}return null}function DT(b){return!!b.type&&!!b.value}function bh(b){return b&&!!b.image}function zv(b){return b&&!fl(b.r)&&!fl(b.g)&&!fl(b.b)}var Zm=dd(function(b){if(bh(b))return(0,Li.Z)({repetition:"repeat"},b);if(fl(b)&&(b=""),b==="transparent")return Jw;if(b==="currentColor")b="black";else if(b==="none")return Qw;var x=Kb(b);if(x)return x;var E=j1(b),z=[0,0,0,0];return E!==null&&(z[0]=E.r||0,z[1]=E.g||0,z[2]=E.b||0,z[3]=E.opacity),Jg.apply(void 0,z)});function W1(b,x){if(!(!zv(b)||!zv(x)))return[[Number(b.r),Number(b.g),Number(b.b),Number(b.alpha)],[Number(x.r),Number(x.g),Number(x.b),Number(x.alpha)],function(E){var z=E.slice();if(z[3])for(var te=0;te<3;te++)z[te]=Math.round(Ah(z[te],0,255));return z[3]=Ah(z[3],0,1),"rgba(".concat(z.join(","),")")}]}function U1(b,x){if(fl(x))return Nu(0,"px");if(x="".concat(x).trim().toLowerCase(),isFinite(Number(x))){if("px".search(b)>=0)return Nu(Number(x),"px");if("deg".search(b)>=0)return Nu(Number(x),"deg")}var E=[];x=x.replace(b,function(te){return E.push(te),"U".concat(te)});var z="U(".concat(b.source,")");return E.map(function(te){return Nu(Number(x.replace(new RegExp("U".concat(te),"g"),"").replace(new RegExp(z,"g"),"*0")),te)})[0]}var tC=function(x){return U1(new RegExp("px","g"),x)},nC=dd(tC),Zb=function(x){return U1(new RegExp("%","g"),x)};dd(Zb);var pE=function(x){return os(x)||isFinite(Number(x))?Nu(Number(x)||0,"px"):U1(new RegExp("px|%|em|rem","g"),x)},Ph=dd(pE),ql=function(x){return U1(new RegExp("deg|rad|grad|turn","g"),x)},vE=dd(ql);function mE(b,x,E,z){var te=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,re="",oe=b.value||0,le=x.value||0,ce=JA(b.unit),ge=b.convertTo(ce),Ae=x.convertTo(ce);return ge&&Ae?(oe=ge.value,le=Ae.value,re=XA(b.unit)):(cc.isLength(b.unit)||cc.isLength(x.unit))&&(oe=qg(b,te,E),le=qg(x,te,E),re="px"),[oe,le,function(Me){return z&&(Me=Math.max(Me,0)),Me+re}]}function sf(b){var x=0;return b.unit===ns.kDegrees?x=b.value:b.unit===ns.kRadians?x=mg(Number(b.value)):b.unit===ns.kTurns?x=Cy(Number(b.value)):b.value&&(x=b.value),x}function rC(b,x){var E;return Array.isArray(b)?E=b.map(function(z){return Number(z)}):nc(b)?E=b.split(" ").map(function(z){return Number(z)}):os(b)&&(E=[b]),x===2?E.length===1?[E[0],E[0]]:[E[0],E[1]]:x===4?E.length===1?[E[0],E[0],E[0],E[0]]:E.length===2?[E[0],E[1],E[0],E[1]]:E.length===3?[E[0],E[1],E[2],E[1]]:[E[0],E[1],E[2],E[3]]:x==="even"&&E.length%2===1?[].concat((0,Bo.Z)(E),(0,Bo.Z)(E)):E}function qg(b,x,E){var z=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(b.unit===ns.kPixels)return Number(b.value);if(b.unit===ns.kPercentage&&E){var te=E.nodeName===ci.GROUP?E.getLocalBounds():E.getGeometryBounds();return(z?te.min[x]:0)+b.value/100*te.halfExtents[x]*2}return 0}var Yb=function(x){return U1(/deg|rad|grad|turn|px|%/g,x)},Xb=["blur","brightness","drop-shadow","contrast","grayscale","sepia","saturate","hue-rotate","invert"];function Qb(){var b=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"";if(b=b.toLowerCase().trim(),b==="none")return[];for(var x=/\s*([\w-]+)\(([^)]*)\)/g,E=[],z,te=0;z=x.exec(b);){if(z.index!==te)return[];if(te=z.index+z[0].length,Xb.indexOf(z[1])>-1&&E.push({name:z[1],params:z[2].split(" ").map(function(re){return Yb(re)||Zm(re)})}),x.lastIndex===b.length)return E}return[]}function eS(b){return b.toString()}var yE=function(x){return typeof x=="number"?Nu(x):/^\s*[-+]?(\d*\.)?\d+\s*$/.test(x)?Nu(Number(x)):Nu(0)},G1=dd(yE);dd(function(b){return nc(b)?b.split(" ").map(G1):b.map(G1)});function iC(b,x){return[b,x,eS]}function Lf(b,x){return function(E,z){return[E,z,function(te){return eS(Ah(te,b,x))}]}}function tv(b,x){if(b.length===x.length)return[b,x,function(E){return E}]}function Hp(b){return b.parsedStyle.d.totalLength===0&&(b.parsedStyle.d.totalLength=Nm(b.parsedStyle.d.absolutePath)),b.parsedStyle.d.totalLength}function Cg(b){return b.parsedStyle.points.totalLength===0&&(b.parsedStyle.points.totalLength=Bw(b.parsedStyle.points.points)),b.parsedStyle.points.totalLength}function Yh(b){for(var x=0;x0&&E.push(z),{polygons:x,polylines:E}}function Wv(b,x){return b[0]===x[0]&&b[1]===x[1]}function tS(b,x){for(var E=[],z=[],te=[],re=0;reMath.PI/2?Math.PI-ge:ge,Ae=Ae>Math.PI/2?Math.PI-Ae:Ae;var Me={xExtra:Math.cos(ce/2-ge)*(x/2*(1/Math.sin(ce/2)))-x/2||0,yExtra:Math.cos(Ae-ce/2)*(x/2*(1/Math.sin(ce/2)))-x/2||0};return Me}function xE(b,x){return[x[0]+(x[0]-b[0]),x[1]+(x[1]-b[1])]}var EE=function(x,E){var z=x.x*E.x+x.y*E.y,te=Math.sqrt((Math.pow(x.x,2)+Math.pow(x.y,2))*(Math.pow(E.x,2)+Math.pow(E.y,2))),re=x.x*E.y-x.y*E.x<0?-1:1,oe=re*Math.acos(z/te);return oe},Oy=function(x,E,z,te,re,oe,le,ce){E=Math.abs(E),z=Math.abs(z),te=Sw(te,360);var ge=Yu(te);if(x.x===le.x&&x.y===le.y)return{x:x.x,y:x.y,ellipticalArcAngle:0};if(E===0||z===0)return{x:0,y:0,ellipticalArcAngle:0};var Ae=(x.x-le.x)/2,Me=(x.y-le.y)/2,Ue={x:Math.cos(ge)*Ae+Math.sin(ge)*Me,y:-Math.sin(ge)*Ae+Math.cos(ge)*Me},Xe=Math.pow(Ue.x,2)/Math.pow(E,2)+Math.pow(Ue.y,2)/Math.pow(z,2);Xe>1&&(E*=Math.sqrt(Xe),z*=Math.sqrt(Xe));var $e=Math.pow(E,2)*Math.pow(z,2)-Math.pow(E,2)*Math.pow(Ue.y,2)-Math.pow(z,2)*Math.pow(Ue.x,2),rt=Math.pow(E,2)*Math.pow(Ue.y,2)+Math.pow(z,2)*Math.pow(Ue.x,2),ot=$e/rt;ot=ot<0?0:ot;var pt=(re!==oe?1:-1)*Math.sqrt(ot),yt={x:pt*(E*Ue.y/z),y:pt*(-(z*Ue.x)/E)},Ct={x:Math.cos(ge)*yt.x-Math.sin(ge)*yt.y+(x.x+le.x)/2,y:Math.sin(ge)*yt.x+Math.cos(ge)*yt.y+(x.y+le.y)/2},zt={x:(Ue.x-yt.x)/E,y:(Ue.y-yt.y)/z},Wt=EE({x:1,y:0},zt),Ht={x:(-Ue.x-yt.x)/E,y:(-Ue.y-yt.y)/z},Qt=EE(zt,Ht);!oe&&Qt>0?Qt-=2*Math.PI:oe&&Qt<0&&(Qt+=2*Math.PI),Qt%=2*Math.PI;var Gt=Wt+Qt*ce,vn=E*Math.cos(Gt),Sn=z*Math.sin(Gt),kn={x:Math.cos(ge)*vn-Math.sin(ge)*Sn+Ct.x,y:Math.sin(ge)*vn+Math.cos(ge)*Sn+Ct.y,ellipticalArcStartAngle:Wt,ellipticalArcEndAngle:Wt+Qt,ellipticalArcAngle:Gt,ellipticalArcCenter:Ct,resultantRx:E,resultantRy:z};return kn};function nS(b){for(var x=[],E=null,z=null,te=null,re=0,oe=b.length,le=0;le2&&arguments[2]!==void 0?arguments[2]:!0,z=b.arcParams,te=z.rx,re=te===void 0?0:te,oe=z.ry,le=oe===void 0?0:oe,ce=z.xRotation,ge=z.arcFlag,Ae=z.sweepFlag,Me=Oy({x:b.prePoint[0],y:b.prePoint[1]},re,le,ce,!!ge,!!Ae,{x:b.currentPoint[0],y:b.currentPoint[1]},x),Ue=Oy({x:b.prePoint[0],y:b.prePoint[1]},re,le,ce,!!ge,!!Ae,{x:b.currentPoint[0],y:b.currentPoint[1]},E?x+.005:x-.005),Xe=Ue.x-Me.x,$e=Ue.y-Me.y,rt=Math.sqrt(Xe*Xe+$e*$e);return{x:-Xe/rt,y:-$e/rt}}function Qm(b){return Math.sqrt(b[0]*b[0]+b[1]*b[1])}function Jm(b,x){return Qm(b)*Qm(x)?(b[0]*x[0]+b[1]*x[1])/(Qm(b)*Qm(x)):1}function H1(b,x){return(b[0]*x[1]1&&(E*=Math.sqrt(Xe),z*=Math.sqrt(Xe));var $e=E*E*(Ue*Ue)+z*z*(Me*Me),rt=$e?Math.sqrt((E*E*(z*z)-$e)/$e):1;re===oe&&(rt*=-1),isNaN(rt)&&(rt=0);var ot=z?rt*E*Ue/z:0,pt=E?rt*-z*Me/E:0,yt=(le+ge)/2+Math.cos(te)*ot-Math.sin(te)*pt,Ct=(ce+Ae)/2+Math.sin(te)*ot+Math.cos(te)*pt,zt=[(Me-ot)/E,(Ue-pt)/z],Wt=[(-1*Me-ot)/E,(-1*Ue-pt)/z],Ht=H1([1,0],zt),Qt=H1(zt,Wt);return Jm(zt,Wt)<=-1&&(Qt=Math.PI),Jm(zt,Wt)>=1&&(Qt=0),oe===0&&Qt>0&&(Qt-=2*Math.PI),oe===1&&Qt<0&&(Qt+=2*Math.PI),{cx:yt,cy:Ct,rx:Wv(b,[ge,Ae])?0:E,ry:Wv(b,[ge,Ae])?0:z,startAngle:Ht,endAngle:Ht+Qt,xRotation:te,arcFlag:re,sweepFlag:oe}}function rS(b,x,E){return b.reduce(function(z,te){var re="";if(te[0]==="M"||te[0]==="L"){var oe=vec3.fromValues(te[1],te[2],0);E&&vec3.transformMat4(oe,oe,E),re="".concat(te[0]).concat(oe[0],",").concat(oe[1])}else if(te[0]==="Z")re=te[0];else if(te[0]==="C"){var le=vec3.fromValues(te[1],te[2],0),ce=vec3.fromValues(te[3],te[4],0),ge=vec3.fromValues(te[5],te[6],0);E&&(vec3.transformMat4(le,le,E),vec3.transformMat4(ce,ce,E),vec3.transformMat4(ge,ge,E)),re="".concat(te[0]).concat(le[0],",").concat(le[1],",").concat(ce[0],",").concat(ce[1],",").concat(ge[0],",").concat(ge[1])}else if(te[0]==="A"){var Ae=vec3.fromValues(te[6],te[7],0);E&&vec3.transformMat4(Ae,Ae,E),re="".concat(te[0]).concat(te[1],",").concat(te[2],",").concat(te[3],",").concat(te[4],",").concat(te[5],",").concat(Ae[0],",").concat(Ae[1])}else if(te[0]==="Q"){var Me=vec3.fromValues(te[1],te[2],0),Ue=vec3.fromValues(te[3],te[4],0);E&&(vec3.transformMat4(Me,Me,E),vec3.transformMat4(Ue,Ue,E)),re="".concat(te[0]).concat(te[1],",").concat(te[2],",").concat(te[3],",").concat(te[4],"}")}return z+=re},"")}function oh(b,x,E,z){return[["M",b,x],["L",E,z]]}function oC(b,x,E,z){var te=(-1+Math.sqrt(2))/3*4,re=b*te,oe=x*te,le=E-b,ce=E+b,ge=z-x,Ae=z+x;return[["M",le,z],["C",le,z-oe,E-re,ge,E,ge],["C",E+re,ge,ce,z-oe,ce,z],["C",ce,z+oe,E+re,Ae,E,Ae],["C",E-re,Ae,le,z+oe,le,z],["Z"]]}function IT(b,x){var E=b.map(function(z,te){return[te===0?"M":"L",z[0],z[1]]});return x&&E.push(["Z"]),E}function OT(b,x,E,z,te){if(te){var re=_slicedToArray(te,4),oe=re[0],le=re[1],ce=re[2],ge=re[3],Ae=b>0?1:-1,Me=x>0?1:-1,Ue=Ae+Me!==0?1:0;return[["M",Ae*oe+E,z],["L",b-Ae*le+E,z],le?["A",le,le,0,0,Ue,b+E,Me*le+z]:null,["L",b+E,x-Me*ce+z],ce?["A",ce,ce,0,0,Ue,b+E-Ae*ce,x+z]:null,["L",E+Ae*ge,x+z],ge?["A",ge,ge,0,0,Ue,E,x+z-Me*ge]:null,["L",E,Me*oe+z],oe?["A",oe,oe,0,0,Ue,Ae*oe+E,z]:null,["Z"]].filter(function(Xe){return Xe})}return[["M",E,z],["L",E+b,z],["L",E+b,z+x],["L",E,z+x],["Z"]]}function EI(b){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:b.getLocalTransform(),E=[];switch(b.nodeName){case ci.LINE:var z=b.parsedStyle,te=z.x1,re=te===void 0?0:te,oe=z.y1,le=oe===void 0?0:oe,ce=z.x2,ge=ce===void 0?0:ce,Ae=z.y2,Me=Ae===void 0?0:Ae;E=oh(re,le,ge,Me);break;case ci.CIRCLE:{var Ue=b.parsedStyle,Xe=Ue.r,$e=Xe===void 0?0:Xe,rt=Ue.cx,ot=rt===void 0?0:rt,pt=Ue.cy,yt=pt===void 0?0:pt;E=oC($e,$e,ot,yt);break}case ci.ELLIPSE:{var Ct=b.parsedStyle,zt=Ct.rx,Wt=zt===void 0?0:zt,Ht=Ct.ry,Qt=Ht===void 0?0:Ht,Gt=Ct.cx,vn=Gt===void 0?0:Gt,Sn=Ct.cy,kn=Sn===void 0?0:Sn;E=oC(Wt,Qt,vn,kn);break}case ci.POLYLINE:case ci.POLYGON:var Kn=b.parsedStyle.points;E=IT(Kn.points,b.nodeName===ci.POLYGON);break;case ci.RECT:var vr=b.parsedStyle,er=vr.width,Nr=er===void 0?0:er,ei=vr.height,Ar=ei===void 0?0:ei,Sr=vr.x,Ir=Sr===void 0?0:Sr,si=vr.y,Cr=si===void 0?0:si,wi=vr.radius,Mo=wi&&wi.some(function(eo){return eo!==0});E=OT(Nr,Ar,Ir,Cr,Mo&&wi.map(function(eo){return clamp(eo,0,Math.min(Math.abs(Nr)/2,Math.abs(Ar)/2))}));break;case ci.PATH:var Po=b.parsedStyle.d.absolutePath;E=_toConsumableArray(Po);break}if(E.length)return rS(E,b,x)}function AI(b){var x=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,E=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,z=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,te=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,re=b.map(function(oe,le){var ce=oe[0],ge=b[le+1],Ae=le===0&&(x!==0||E!==0),Me=(le===b.length-1||ge&&(ge[0]==="M"||ge[0]==="Z"))&&z!==0&&te!==0,Ue=Ae?[x,E]:[0,0],Xe=_slicedToArray(Ue,2),$e=Xe[0],rt=Xe[1],ot=Me?[z,te]:[0,0],pt=_slicedToArray(ot,2),yt=pt[0],Ct=pt[1];switch(ce){case"M":return"M ".concat(oe[1]+$e,",").concat(oe[2]+rt);case"L":return"L ".concat(oe[1]+yt,",").concat(oe[2]+Ct);case"Q":return"Q ".concat(oe[1]," ").concat(oe[2],",").concat(oe[3]+yt," ").concat(oe[4]+Ct);case"C":return"C ".concat(oe[1]," ").concat(oe[2],",").concat(oe[3]," ").concat(oe[4],",").concat(oe[5]+yt," ").concat(oe[6]+Ct);case"A":return"A ".concat(oe[1]," ").concat(oe[2]," ").concat(oe[3]," ").concat(oe[4]," ").concat(oe[5]," ").concat(oe[6]," ").concat(oe[7]).concat(Me?" L ".concat(oe[6]+z,",").concat(oe[7]+te):"");case"Z":return"Z";default:return null}}).filter(function(oe){return oe!==null}).join(" ");return~re.indexOf("NaN")?"":re}var aC=function(x){if(x===""||Array.isArray(x)&&x.length===0)return{absolutePath:[],hasArc:!1,segments:[],polygons:[],polylines:[],curve:null,totalLength:0,rect:{x:0,y:0,width:0,height:0}};var E;try{E=Qx(x)}catch(Xe){E=Qx(""),console.error("[g]: Invalid SVG Path definition: ".concat(x))}Yh(E);var z=jv(E),te=Ym(E),re=te.polygons,oe=te.polylines,le=nS(E),ce=tS(le,0),ge=ce.x,Ae=ce.y,Me=ce.width,Ue=ce.height;return{absolutePath:E,hasArc:z,segments:le,polygons:re,polylines:oe,totalLength:0,rect:{x:Number.isFinite(ge)?ge:0,y:Number.isFinite(Ae)?Ae:0,width:Number.isFinite(Me)?Me:0,height:Number.isFinite(Ue)?Ue:0}}},Jb=dd(aC);function sC(b){return nc(b)?Jb(b):aC(b)}function NT(b,x,E){var z=b.curve,te=x.curve;(!z||z.length===0)&&(z=$x(b.absolutePath,!1),b.curve=z),(!te||te.length===0)&&(te=$x(x.absolutePath,!1),x.curve=te);var re=[z,te];z.length!==te.length&&(re=b1(z,te));var oe=eE(re[0])!==eE(re[1])?LA(re[0]):bw(re[0]);return[oe,Pw(re[1],oe),function(le){return le}]}function $b(b,x){var E;return nc(b)?E=b.split(" ").map(function(z){var te=z.split(","),re=(0,Wr.Z)(te,2),oe=re[0],le=re[1];return[Number(oe),Number(le)]}):E=b,{points:E,totalLength:0,segments:[]}}function Ny(b,x){return[b.points,x.points,function(E){return E}]}var Zc=null,nv=/\s*(\w+)\(([^)]*)\)/g;function Tf(b){return function(x){var E=0;return b.map(function(z){return z===Zc?x[E++]:z})}}function Ys(b){return b}var By={matrix:["NNNNNN",[Zc,Zc,0,0,Zc,Zc,0,0,0,0,1,0,Zc,Zc,0,1],Ys],matrix3d:["NNNNNNNNNNNNNNNN",Ys],rotate:["A"],rotateX:["A"],rotateY:["A"],rotateZ:["A"],rotate3d:["NNNA"],perspective:["L"],scale:["Nn",Tf([Zc,Zc,new cc(1)]),Ys],scaleX:["N",Tf([Zc,new cc(1),new cc(1)]),Tf([Zc,new cc(1)])],scaleY:["N",Tf([new cc(1),Zc,new cc(1)]),Tf([new cc(1),Zc])],scaleZ:["N",Tf([new cc(1),new cc(1),Zc])],scale3d:["NNN",Ys],skew:["Aa",null,Ys],skewX:["A",null,Tf([Zc,Km])],skewY:["A",null,Tf([Km,Zc])],translate:["Tt",Tf([Zc,Zc,jd]),Ys],translateX:["T",Tf([Zc,jd,jd]),Tf([Zc,jd])],translateY:["T",Tf([jd,Zc,jd]),Tf([jd,Zc])],translateZ:["L",Tf([jd,jd,Zc])],translate3d:["TTL",Ys]};function Xh(b){for(var x=[],E=b.length,z=0;z2&&arguments[2]!==void 0?arguments[2]:{skipUpdateAttribute:!1,skipParse:!1,forceUpdateGeometry:!1,usedAttributes:[],memoize:!0};Object.assign(E.attributes,z);var re=E.parsedStyle.clipPath,oe=E.parsedStyle.offsetPath;RT(E,z);var le=!!te.forceUpdateGeometry;if(!le){for(var ce in z)if(uS.has(ce)){le=!0;break}}var ge=cS(E);ge.has("fill")&&z.fill&&(E.parsedStyle.fill=Zm(z.fill)),ge.has("stroke")&&z.stroke&&(E.parsedStyle.stroke=Zm(z.stroke)),ge.has("shadowColor")&&z.shadowColor&&(E.parsedStyle.shadowColor=Zm(z.shadowColor)),ge.has("filter")&&z.filter&&(E.parsedStyle.filter=Qb(z.filter)),ge.has("radius")&&!fl(z.radius)&&(E.parsedStyle.radius=rC(z.radius,4)),ge.has("lineDash")&&!fl(z.lineDash)&&(E.parsedStyle.lineDash=rC(z.lineDash,"even")),ge.has("points")&&z.points&&(E.parsedStyle.points=$b(z.points)),ge.has("d")&&z.d===""&&(E.parsedStyle.d=(0,Li.Z)({},Py)),ge.has("d")&&z.d&&(E.parsedStyle.d=sC(z.d)),ge.has("textTransform")&&z.textTransform&&this.runtime.CSSPropertySyntaxFactory[Na.TEXT_TRANSFORM].calculator(null,null,{value:z.textTransform},E,null),ge.has("clipPath")&&!jl(z.clipPath)&&this.runtime.CSSPropertySyntaxFactory[Na.DEFINED_PATH].calculator("clipPath",re,z.clipPath,E,this.runtime),ge.has("offsetPath")&&z.offsetPath&&this.runtime.CSSPropertySyntaxFactory[Na.DEFINED_PATH].calculator("offsetPath",oe,z.offsetPath,E,this.runtime),ge.has("transform")&&z.transform&&(E.parsedStyle.transform=lf(z.transform)),ge.has("transformOrigin")&&z.transformOrigin&&(E.parsedStyle.transformOrigin=oP(z.transformOrigin)),ge.has("markerStart")&&z.markerStart&&(E.parsedStyle.markerStart=this.runtime.CSSPropertySyntaxFactory[Na.MARKER].calculator(null,z.markerStart,z.markerStart,null,null)),ge.has("markerEnd")&&z.markerEnd&&(E.parsedStyle.markerEnd=this.runtime.CSSPropertySyntaxFactory[Na.MARKER].calculator(null,z.markerEnd,z.markerEnd,null,null)),ge.has("markerMid")&&z.markerMid&&(E.parsedStyle.markerMid=this.runtime.CSSPropertySyntaxFactory[Na.MARKER].calculator("",z.markerMid,z.markerMid,null,null)),ge.has("zIndex")&&!fl(z.zIndex)&&this.runtime.CSSPropertySyntaxFactory[Na.Z_INDEX].postProcessor(E),ge.has("offsetDistance")&&!fl(z.offsetDistance)&&this.runtime.CSSPropertySyntaxFactory[Na.OFFSET_DISTANCE].postProcessor(E),ge.has("transform")&&z.transform&&this.runtime.CSSPropertySyntaxFactory[Na.TRANSFORM].postProcessor(E),ge.has("transformOrigin")&&z.transformOrigin&&this.runtime.CSSPropertySyntaxFactory[Na.TRANSFORM_ORIGIN].postProcessor(E),le&&(E.geometry.dirty=!0,E.renderable.boundsDirty=!0,E.renderable.renderBoundsDirty=!0,te.forceUpdateGeometry||this.runtime.sceneGraphService.dirtifyToRoot(E))}},{key:"updateGeometry",value:function(E){var z=E.nodeName,te=this.runtime.geometryUpdaterFactory[z];if(te){var re=E.geometry;re.contentBounds||(re.contentBounds=new Cc),re.renderBounds||(re.renderBounds=new Cc);var oe=E.parsedStyle,le=te.update(oe,E),ce=le.cx,ge=ce===void 0?0:ce,Ae=le.cy,Me=Ae===void 0?0:Ae,Ue=le.cz,Xe=Ue===void 0?0:Ue,$e=le.hwidth,rt=$e===void 0?0:$e,ot=le.hheight,pt=ot===void 0?0:ot,yt=le.hdepth,Ct=yt===void 0?0:yt,zt=[Math.abs(rt),Math.abs(pt),Ct],Wt=oe.stroke,Ht=oe.lineWidth,Qt=Ht===void 0?1:Ht,Gt=oe.increasedLineWidthForHitTesting,vn=Gt===void 0?0:Gt,Sn=oe.shadowType,kn=Sn===void 0?"outer":Sn,Kn=oe.shadowColor,vr=oe.filter,er=vr===void 0?[]:vr,Nr=oe.transformOrigin,ei=[ge,Me,Xe];re.contentBounds.update(ei,zt);var Ar=z===ci.POLYLINE||z===ci.POLYGON||z===ci.PATH?Math.SQRT2:.5,Sr=Wt&&!Wt.isNone;if(Sr){var Ir=((Qt||0)+(vn||0))*Ar;zt[0]+=Ir,zt[1]+=Ir}if(re.renderBounds.update(ei,zt),Kn&&kn&&kn!=="inner"){var si=re.renderBounds,Cr=si.min,wi=si.max,Mo=oe.shadowBlur,Po=oe.shadowOffsetX,eo=oe.shadowOffsetY,Ui=Mo||0,fo=Po||0,Uo=eo||0,pa=Cr[0]-Ui+fo,Ga=wi[0]+Ui+fo,kl=Cr[1]-Ui+Uo,al=wi[1]+Ui+Uo;Cr[0]=Math.min(Cr[0],pa),wi[0]=Math.max(wi[0],Ga),Cr[1]=Math.min(Cr[1],kl),wi[1]=Math.max(wi[1],al),re.renderBounds.setMinMax(Cr,wi)}er.forEach(function(gl){var fu=gl.name,$l=gl.params;if(fu==="blur"){var Xa=$l[0].value;re.renderBounds.update(re.renderBounds.center,Hl(re.renderBounds.halfExtents,re.renderBounds.halfExtents,[Xa,Xa,0]))}else if(fu==="drop-shadow"){var ms=$l[0].value,$o=$l[1].value,va=$l[2].value,Oa=re.renderBounds,js=Oa.min,aa=Oa.max,cl=js[0]-va+ms,Hs=aa[0]+va+ms,Gu=js[1]-va+$o,hu=aa[1]+va+$o;js[0]=Math.min(js[0],cl),aa[0]=Math.max(aa[0],Hs),js[1]=Math.min(js[1],Gu),aa[1]=Math.max(aa[1],hu),re.renderBounds.setMinMax(js,aa)}}),E.geometry.dirty=!1;var Fa=rt<0,tl=pt<0,Ps=(Fa?-1:1)*(Nr?qg(Nr[0],0,E,!0):0),rl=(tl?-1:1)*(Nr?qg(Nr[1],1,E,!0):0);(Ps||rl)&&E.setOrigin(Ps,rl)}}},{key:"updateSizeAttenuation",value:function(E,z){E.style.isSizeAttenuation?(E.style.rawLineWidth||(E.style.rawLineWidth=E.style.lineWidth),E.style.lineWidth=(E.style.rawLineWidth||1)/z,E.nodeName===ci.CIRCLE&&(E.style.rawR||(E.style.rawR=E.style.r),E.style.r=(E.style.rawR||1)/z)):(E.style.rawLineWidth&&(E.style.lineWidth=E.style.rawLineWidth,delete E.style.rawLineWidth),E.nodeName===ci.CIRCLE&&E.style.rawR&&(E.style.r=E.style.rawR,delete E.style.rawR))}}])}();function RT(b,x){var E=cS(b);for(var z in x)E.has(z)&&(b.parsedStyle[z]=x[z])}function cS(b){return b.constructor.PARSED_STYLE_LIST}var kT=function(){function b(){(0,xi.Z)(this,b),this.mixer=iC}return(0,qr.Z)(b,[{key:"calculator",value:function(E,z,te,re){return sf(te)}}])}(),FT=function(){function b(){(0,xi.Z)(this,b)}return(0,qr.Z)(b,[{key:"calculator",value:function(E,z,te,re,oe){return te instanceof mp&&(te=null),oe.sceneGraphService.updateDisplayObjectDependency(E,z,te,re),E==="clipPath"&&re.forEach(function(le){le.childNodes.length===0&&oe.sceneGraphService.dirtifyToRoot(le)}),te}}])}(),aP=function(){function b(){(0,xi.Z)(this,b),this.parser=Zm,this.mixer=W1}return(0,qr.Z)(b,[{key:"calculator",value:function(E,z,te,re){return te instanceof mp?te.value==="none"?Qw:Jw:te}}])}(),sP=function(){function b(){(0,xi.Z)(this,b)}return(0,qr.Z)(b,[{key:"calculator",value:function(E,z,te){return te instanceof mp?[]:te}}])}();function lP(b){var x=b.parsedStyle,E=x.fontSize;return fl(E)?null:E}var dC=function(){function b(){(0,xi.Z)(this,b),this.mixer=iC}return(0,qr.Z)(b,[{key:"calculator",value:function(E,z,te,re,oe){if(os(te))return te;if(cc.isRelativeUnit(te.unit)){if(te.unit===ns.kPercentage)return 0;if(te.unit===ns.kEms){if(re.parentNode){var le=lP(re.parentNode);if(le)return le*=te.value,le}return 0}if(te.unit===ns.kRems){var ce;if(re!=null&&(ce=re.ownerDocument)!==null&&ce!==void 0&&ce.documentElement){var ge=lP(re.ownerDocument.documentElement);if(ge)return ge*=te.value,ge}return 0}}else return te.value}}])}(),_T=function(){function b(){(0,xi.Z)(this,b),this.mixer=tv}return(0,qr.Z)(b,[{key:"calculator",value:function(E,z,te){return te.map(function(re){return re.value})}}])}(),hS=function(){function b(){(0,xi.Z)(this,b),this.mixer=tv}return(0,qr.Z)(b,[{key:"calculator",value:function(E,z,te){return te.map(function(re){return re.value})}}])}(),uP=function(){function b(){(0,xi.Z)(this,b)}return(0,qr.Z)(b,[{key:"calculator",value:function(E,z,te,re){var oe;te instanceof mp&&(te=null);var le=(oe=te)===null||oe===void 0?void 0:oe.cloneNode(!0);return le&&(le.style.isMarker=!0),le}}])}(),cP=function(){function b(){(0,xi.Z)(this,b),this.mixer=iC}return(0,qr.Z)(b,[{key:"calculator",value:function(E,z,te){return te.value}}])}(),zT=function(){function b(){(0,xi.Z)(this,b),this.mixer=Lf(0,1)}return(0,qr.Z)(b,[{key:"calculator",value:function(E,z,te){return te.value}},{key:"postProcessor",value:function(E){var z=E.parsedStyle,te=z.offsetPath,re=z.offsetDistance;if(te){var oe=te.nodeName;if(oe===ci.LINE||oe===ci.PATH||oe===ci.POLYLINE){var le=te.getPoint(re);le&&E.setLocalPosition(le.x,le.y)}}}}])}(),dS=function(){function b(){(0,xi.Z)(this,b),this.mixer=Lf(0,1)}return(0,qr.Z)(b,[{key:"calculator",value:function(E,z,te){return te.value}}])}(),Gv=function(){function b(){(0,xi.Z)(this,b),this.parser=sC,this.mixer=NT}return(0,qr.Z)(b,[{key:"calculator",value:function(E,z,te){return te instanceof mp&&te.value==="unset"?{absolutePath:[],hasArc:!1,segments:[],polygons:[],polylines:[],curve:null,totalLength:0,rect:new jm(0,0,0,0)}:te}}])}(),Hv=(0,qr.Z)(function b(){(0,xi.Z)(this,b),this.mixer=Ny}),fS=function(b){function x(){var E;(0,xi.Z)(this,x);for(var z=arguments.length,te=new Array(z),re=0;re>>1;gS(b[te],x)<0?E=te+1:z=te}return E}function gS(b,x){var E=Number(b.parsedStyle.zIndex||0),z=Number(x.parsedStyle.zIndex||0);if(E===z){var te=b.parentNode;if(te){var re=te.childNodes||[];return re.indexOf(b)-re.indexOf(x)}}return E-z}function wE(b){var x=b;do{var E,z=(E=x.parsedStyle)===null||E===void 0?void 0:E.clipPath;if(z)return x;x=x.parentElement}while(x!==null);return null}var pS="px";function jT(b,x,E){Z1&&b.style&&(b.style.width=x+pS,b.style.height=E+pS)}function rv(b,x){if(Z1)return document.defaultView.getComputedStyle(b,null).getPropertyValue(x)}function Y1(b){var x=rv(b,"width");return x==="auto"?b.offsetWidth:parseFloat(x)}function If(b){var x=rv(b,"height");return x==="auto"?b.offsetHeight:parseFloat(x)}var hP=1,vS={touchstart:"pointerdown",touchend:"pointerup",touchendoutside:"pointerupoutside",touchmove:"pointermove",touchcancel:"pointercancel"},CE=typeof performance=="object"&&performance.now?performance:Date;function mS(b){return b.nodeName===ci.FRAGMENT?!0:b.getRootNode().nodeName===ci.FRAGMENT}function m0(){var b=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"auto",x=arguments.length>1?arguments[1]:void 0,E=arguments.length>2?arguments[2]:void 0,z=!1,te=!1,re=!!x&&!x.isNone,oe=!!E&&!E.isNone;return b==="visiblepainted"||b==="painted"||b==="auto"?(z=re,te=oe):b==="visiblefill"||b==="fill"?z=!0:b==="visiblestroke"||b==="stroke"?te=!0:(b==="visible"||b==="all")&&(z=!0,te=!0),[z,te]}var ls=1,WT=function(){return ls++},y0=typeof self=="object"&&self.self===self?self:typeof Be.g=="object"&&Be.g.global===Be.g?Be.g:{},yC=Date.now(),dP=function(){return y0.performance&&typeof y0.performance.now=="function"?y0.performance.now():Date.now()-yC},X1={},fP=Date.now(),gP=function(x){if(typeof x!="function")throw new TypeError("".concat(x," is not a function"));var E=Date.now(),z=E-fP,te=z>16?0:16-z,re=WT();return X1[re]=x,Object.keys(X1).length>1||setTimeout(function(){fP=E;var oe=X1;X1={},Object.keys(oe).forEach(function(le){return oe[le](dP())})},te),re},pP=function(x){delete X1[x]},Vv=["","webkit","moz","ms","o"],Q1=function(x){return typeof x!="string"?gP:x===""?y0.requestAnimationFrame:y0["".concat(x,"RequestAnimationFrame")]},xC=function(x){return typeof x!="string"?pP:x===""?y0.cancelAnimationFrame:y0["".concat(x,"CancelAnimationFrame")]||y0["".concat(x,"CancelRequestAnimationFrame")]},vP=function(x,E){for(var z=0;x[z]!==void 0;){if(E(x[z]))return x[z];z+=1}},EC=vP(Vv,function(b){return!!Q1(b)}),yS=Q1(EC),bE=xC(EC);y0.requestAnimationFrame=yS,y0.cancelAnimationFrame=bE;var AC=function(){function b(){(0,xi.Z)(this,b),this.callbacks=[]}return(0,qr.Z)(b,[{key:"getCallbacksNum",value:function(){return this.callbacks.length}},{key:"tapPromise",value:function(E,z){this.callbacks.push(z)}},{key:"promise",value:function(){for(var E=arguments.length,z=new Array(E),te=0;te=0;Xe--){var $e=Ue[Xe].trim();!xS.test($e)&&Ry.indexOf($e)<0&&($e='"'.concat($e,'"')),Ue[Xe]=$e}return"".concat(oe," ").concat(ce," ").concat(Ae," ").concat(Me," ").concat(Ue.join(","))}function AS(b,x,E){return ad(b),b[4]=Math.tan(x),b[1]=Math.tan(E),b}var wu=is(),$g=is(),wC={scale:function(x){l0(wu,[x[0].value,x[1].value,1])},scaleX:function(x){l0(wu,[x[0].value,1,1])},scaleY:function(x){l0(wu,[1,x[0].value,1])},scaleZ:function(x){l0(wu,[1,1,x[0].value])},scale3d:function(x){l0(wu,[x[0].value,x[1].value,x[2].value])},translate:function(x){Rp(wu,[x[0].value,x[1].value,0])},translateX:function(x){Rp(wu,[x[0].value,0,0])},translateY:function(x){Rp(wu,[0,x[0].value,0])},translateZ:function(x){Rp(wu,[0,0,x[0].value])},translate3d:function(x){Rp(wu,[x[0].value,x[1].value,x[2].value])},rotate:function(x){kp(wu,Yu(sf(x[0])))},rotateX:function(x){m1(wu,Yu(sf(x[0])))},rotateY:function(x){y1(wu,Yu(sf(x[0])))},rotateZ:function(x){kp(wu,Yu(sf(x[0])))},rotate3d:function(x){v1(wu,Yu(sf(x[3])),[x[0].value,x[1].value,x[2].value])},skew:function(x){AS(wu,Yu(x[0].value),Yu(x[1].value))},skewX:function(x){AS(wu,Yu(x[0].value),0)},skewY:function(x){AS(wu,0,Yu(x[0].value))},matrix:function(x){Eh(wu,x[0].value,x[1].value,0,0,x[2].value,x[3].value,0,0,0,0,1,0,x[4].value,x[5].value,0,1)},matrix3d:function(x){Eh.apply(He,[wu].concat((0,Bo.Z)(x.map(function(E){return E.value}))))}},mP=Gs(1,1,1),bg=ba(),PE={translate:function(x,E){Xo.sceneGraphService.setLocalScale(x,mP,!1),Xo.sceneGraphService.setLocalEulerAngles(x,bg,void 0,void 0,!1),Xo.sceneGraphService.setLocalPosition(x,[E[0].value,E[1].value,0],!1),Xo.sceneGraphService.dirtifyLocal(x,x.transformable)}};function yp(b,x){if(b.length){if(b.length===1&&PE[b[0].t]){PE[b[0].t](x,b[0].d);return}for(var E=ad($g),z=0;z1&&arguments[1]!==void 0?arguments[1]:!1,te=SS.get(this);if(!te){var re;this.document?te=this:this.defaultView?te=this.defaultView:te=(re=this.ownerDocument)===null||re===void 0?void 0:re.defaultView,te&&SS.set(this,te)}if(te){if(E.manager=te.getEventService(),!E.manager)return!1;E.defaultPrevented=!1,E.path?E.path.length=0:E.page=[],z||(E.target=this),E.manager.dispatchEvent(E,E.type,z)}else this.emitter.emit(E.type,E);return!E.defaultPrevented}}])}(),ah=function(b){function x(){var E;(0,xi.Z)(this,x);for(var z=arguments.length,te=new Array(z),re=0;re0&&arguments[0]!==void 0?arguments[0]:{};return this.parentNode?this.parentNode.getRootNode(z):z.composed&&this.host?this.host.getRootNode(z):this}},{key:"hasChildNodes",value:function(){return this.childNodes.length>0}},{key:"isDefaultNamespace",value:function(z){throw new Error(dc)}},{key:"lookupNamespaceURI",value:function(z){throw new Error(dc)}},{key:"lookupPrefix",value:function(z){throw new Error(dc)}},{key:"normalize",value:function(){throw new Error(dc)}},{key:"isEqualNode",value:function(z){return this===z}},{key:"isSameNode",value:function(z){return this.isEqualNode(z)}},{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(z){if(z===this)return 0;for(var te=z,re=this,oe=[te],le=[re];(ce=te.parentNode)!==null&&ce!==void 0?ce:re.parentNode;){var ce;te=te.parentNode?(oe.push(te.parentNode),te.parentNode):te,re=re.parentNode?(le.push(re.parentNode),re.parentNode):re}if(te!==re)return x.DOCUMENT_POSITION_DISCONNECTED|x.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC|x.DOCUMENT_POSITION_PRECEDING;var ge=oe.length>le.length?oe:le,Ae=ge===oe?le:oe;if(ge[ge.length-Ae.length]===Ae[0])return ge===oe?x.DOCUMENT_POSITION_CONTAINED_BY|x.DOCUMENT_POSITION_FOLLOWING:x.DOCUMENT_POSITION_CONTAINS|x.DOCUMENT_POSITION_PRECEDING;for(var Me=ge.length-Ae.length,Ue=Ae.length-1;Ue>=0;Ue--){var Xe=Ae[Ue],$e=ge[Me+Ue];if($e!==Xe){var rt=Xe.parentNode.childNodes;return rt.indexOf(Xe)0&&te;)te=te.parentNode,z--;return te}},{key:"forEach",value:function(z){for(var te=[this];te.length>0;){var re=te.pop(),oe=z(re);if(oe===!1)break;for(var le=re.childNodes.length-1;le>=0;le--)te.push(re.childNodes[le])}}}],[{key:"isNode",value:function(z){return!!z.childNodes}}])}(IE);ah.DOCUMENT_POSITION_DISCONNECTED=1,ah.DOCUMENT_POSITION_PRECEDING=2,ah.DOCUMENT_POSITION_FOLLOWING=4,ah.DOCUMENT_POSITION_CONTAINS=8,ah.DOCUMENT_POSITION_CONTAINED_BY=16,ah.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC=32;var wS=2048,CC=function(){function b(x,E){var z=this;(0,xi.Z)(this,b),this.nativeHTMLMap=new WeakMap,this.cursor="default",this.mappingTable={},this.mappingState={trackingData:{}},this.eventPool=new Map,this.tmpMatrix=is(),this.tmpVec3=ba(),this.onPointerDown=function(te){var re=z.createPointerEvent(te);if(z.dispatchEvent(re,"pointerdown"),re.pointerType==="touch")z.dispatchEvent(re,"touchstart");else if(re.pointerType==="mouse"||re.pointerType==="pen"){var oe=re.button===2;z.dispatchEvent(re,oe?"rightdown":"mousedown")}var le=z.trackingData(te.pointerId);le.pressTargetsByButton[te.button]=re.composedPath(),z.freeEvent(re)},this.onPointerUp=function(te){var re=CE.now(),oe=z.createPointerEvent(te,void 0,void 0,z.context.config.alwaysTriggerPointerEventOnCanvas?z.rootTarget:void 0);if(z.dispatchEvent(oe,"pointerup"),oe.pointerType==="touch")z.dispatchEvent(oe,"touchend");else if(oe.pointerType==="mouse"||oe.pointerType==="pen"){var le=oe.button===2;z.dispatchEvent(oe,le?"rightup":"mouseup")}var ce=z.trackingData(te.pointerId),ge=z.findMountedTarget(ce.pressTargetsByButton[te.button]),Ae=ge;if(ge&&!oe.composedPath().includes(ge)){for(var Me=ge;Me&&!oe.composedPath().includes(Me);){if(oe.currentTarget=Me,z.notifyTarget(oe,"pointerupoutside"),oe.pointerType==="touch")z.notifyTarget(oe,"touchendoutside");else if(oe.pointerType==="mouse"||oe.pointerType==="pen"){var Ue=oe.button===2;z.notifyTarget(oe,Ue?"rightupoutside":"mouseupoutside")}ah.isNode(Me)&&(Me=Me.parentNode)}delete ce.pressTargetsByButton[te.button],Ae=Me}if(Ae){var Xe,$e=z.clonePointerEvent(oe,"click");$e.target=Ae,$e.path=[],ce.clicksByButton[te.button]||(ce.clicksByButton[te.button]={clickCount:0,target:$e.target,timeStamp:re});var rt=z.context.renderingContext.root.ownerDocument.defaultView,ot=ce.clicksByButton[te.button];ot.target===$e.target&&re-ot.timeStamp=1;re--)if(E.currentTarget=te[re],this.notifyTarget(E,z),E.propagationStopped||E.propagationImmediatelyStopped)return;if(E.eventPhase=E.AT_TARGET,E.currentTarget=E.target,this.notifyTarget(E,z),!(E.propagationStopped||E.propagationImmediatelyStopped)){var oe=te.indexOf(E.currentTarget);E.eventPhase=E.BUBBLING_PHASE;for(var le=oe+1;leoe||te>le?null:!ce&&this.pickHandler(E)||this.rootTarget||null}},{key:"isNativeEventFromCanvas",value:function(E,z){var te,re=z==null?void 0:z.target;if((te=re)!==null&&te!==void 0&&te.shadowRoot&&(re=z.composedPath()[0]),re){if(re===E)return!0;if(E&&E.contains)return E.contains(re)}return z!=null&&z.composedPath?z.composedPath().indexOf(E)>-1:!1}},{key:"getExistedHTML",value:function(E){if(E.nativeEvent.composedPath)for(var z=0,te=E.nativeEvent.composedPath();z=0;te--){var re=E[te];if(re===this.rootTarget||ah.isNode(re)&&re.parentNode===z)z=E[te];else break}return z}},{key:"getCursor",value:function(E){for(var z=E;z;){var te=vC(z)&&z.getAttribute("cursor");if(te)return te;z=ah.isNode(z)&&z.parentNode}}}])}(),OE=function(){function b(){(0,xi.Z)(this,b)}return(0,qr.Z)(b,[{key:"getOrCreateCanvas",value:function(E,z){if(this.canvas)return this.canvas;if(E||Xo.offscreenCanvas)this.canvas=E||Xo.offscreenCanvas,this.context=this.canvas.getContext("2d",(0,Li.Z)({willReadFrequently:!0},z));else try{this.canvas=new window.OffscreenCanvas(0,0),this.context=this.canvas.getContext("2d",(0,Li.Z)({willReadFrequently:!0},z)),(!this.context||!this.context.measureText)&&(this.canvas=document.createElement("canvas"),this.context=this.canvas.getContext("2d"))}catch(te){this.canvas=document.createElement("canvas"),this.context=this.canvas.getContext("2d",(0,Li.Z)({willReadFrequently:!0},z))}return this.canvas.width=10,this.canvas.height=10,this.canvas}},{key:"getOrCreateContext",value:function(E,z){return this.context?this.context:(this.getOrCreateCanvas(E,z),this.context)}}],[{key:"createCanvas",value:function(){try{return new window.OffscreenCanvas(0,0)}catch(E){}try{return document.createElement("canvas")}catch(E){}return null}}])}(),Kv=function(b){return b[b.CAMERA_CHANGED=0]="CAMERA_CHANGED",b[b.DISPLAY_OBJECT_CHANGED=1]="DISPLAY_OBJECT_CHANGED",b[b.NONE=2]="NONE",b}({}),jy=function(){function b(x,E){(0,xi.Z)(this,b),this.inited=!1,this.stats={total:0,rendered:0},this.zIndexCounter=0,this.hooks={init:new Of,initAsync:new AC,dirtycheck:new iv,cull:new iv,beginFrame:new Of,beforeRender:new Of,render:new Of,afterRender:new Of,endFrame:new Of,destroy:new Of,pick:new SC,pickSync:new iv,pointerDown:new Of,pointerUp:new Of,pointerMove:new Of,pointerOut:new Of,pointerOver:new Of,pointerWheel:new Of,pointerCancel:new Of,click:new Of},this.globalRuntime=x,this.context=E}return(0,qr.Z)(b,[{key:"init",value:function(E){var z=this,te=(0,Li.Z)((0,Li.Z)({},this.globalRuntime),this.context);this.context.renderingPlugins.forEach(function(re){re.apply(te,z.globalRuntime)}),this.hooks.init.call(),this.hooks.initAsync.getCallbacksNum()===0?(this.inited=!0,E()):this.hooks.initAsync.promise().then(function(){z.inited=!0,E()}).catch(function(re){})}},{key:"getStats",value:function(){return this.stats}},{key:"disableDirtyRectangleRendering",value:function(){var E=this.context.config.renderer,z=E.getConfig(),te=z.enableDirtyRectangleRendering;return!te||this.context.renderingContext.renderReasons.has(Kv.CAMERA_CHANGED)}},{key:"render",value:function(E,z,te){var re=this;this.stats.total=0,this.stats.rendered=0,this.zIndexCounter=0;var oe=this.context.renderingContext;if(this.globalRuntime.sceneGraphService.syncHierarchy(oe.root),this.globalRuntime.sceneGraphService.triggerPendingEvents(),oe.renderReasons.size&&this.inited){oe.dirtyRectangleRenderingDisabled=this.disableDirtyRectangleRendering();var le=oe.renderReasons.size===1&&oe.renderReasons.has(Kv.CAMERA_CHANGED),ce=!E.disableRenderHooks||!(E.disableRenderHooks&&le);ce&&this.renderDisplayObject(oe.root,E,oe),this.hooks.beginFrame.call(z),ce&&oe.renderListCurrentFrame.forEach(function(ge){re.hooks.beforeRender.call(ge),re.hooks.render.call(ge),re.hooks.afterRender.call(ge)}),this.hooks.endFrame.call(z),oe.renderListCurrentFrame=[],oe.renderReasons.clear(),te()}}},{key:"renderDisplayObject",value:function(E,z,te){var re=this,oe=z.renderer.getConfig(),le=oe.enableDirtyCheck,ce=oe.enableCulling;function ge($e){var rt=$e.renderable,ot=$e.sortable,pt=le?rt.dirty||te.dirtyRectangleRenderingDisabled?$e:null:$e;if(pt){var yt=ce?re.hooks.cull.call(pt,re.context.camera):pt;yt&&(re.stats.rendered+=1,te.renderListCurrentFrame.push(yt))}rt.dirty=!1,ot.renderOrder=re.zIndexCounter,re.zIndexCounter+=1,re.stats.total+=1,ot.dirty&&(re.sort($e,ot),ot.dirty=!1,ot.dirtyChildren=[],ot.dirtyReason=void 0)}for(var Ae=[E];Ae.length>0;){var Me=Ae.pop();ge(Me);for(var Ue=Me.sortable.sorted||Me.childNodes,Xe=Ue.length-1;Xe>=0;Xe--)Ae.push(Ue[Xe])}}},{key:"sort",value:function(E,z){z.sorted&&z.dirtyReason!==Gm.Z_INDEX_CHANGED?z.dirtyChildren.forEach(function(te){var re=E.childNodes.indexOf(te);if(re===-1){var oe=z.sorted.indexOf(te);oe>=0&&z.sorted.splice(oe,1)}else if(z.sorted.length===0)z.sorted.push(te);else{var le=mC(z.sorted,te);z.sorted.splice(le,0,te)}}):z.sorted=E.childNodes.slice().sort(gS)}},{key:"destroy",value:function(){this.inited=!1,this.hooks.destroy.call(),this.globalRuntime.sceneGraphService.clearPendingEvents()}},{key:"dirtify",value:function(){this.context.renderingContext.renderReasons.add(Kv.DISPLAY_OBJECT_CHANGED)}}])}(),Jf=/\[\s*(.*)=(.*)\s*\]/,ex=function(){function b(){(0,xi.Z)(this,b)}return(0,qr.Z)(b,[{key:"selectOne",value:function(E,z){var te=this;if(E.startsWith("."))return z.find(function(ce){return((ce==null?void 0:ce.classList)||[]).indexOf(te.getIdOrClassname(E))>-1});if(E.startsWith("#"))return z.find(function(ce){return ce.id===te.getIdOrClassname(E)});if(E.startsWith("[")){var re=this.getAttribute(E),oe=re.name,le=re.value;return oe?z.find(function(ce){return z!==ce&&(oe==="name"?ce.name===le:te.attributeToString(ce,oe)===le)}):null}return z.find(function(ce){return z!==ce&&ce.nodeName===E})}},{key:"selectAll",value:function(E,z){var te=this;if(E.startsWith("."))return z.findAll(function(ce){return z!==ce&&((ce==null?void 0:ce.classList)||[]).indexOf(te.getIdOrClassname(E))>-1});if(E.startsWith("#"))return z.findAll(function(ce){return z!==ce&&ce.id===te.getIdOrClassname(E)});if(E.startsWith("[")){var re=this.getAttribute(E),oe=re.name,le=re.value;return oe?z.findAll(function(ce){return z!==ce&&(oe==="name"?ce.name===le:te.attributeToString(ce,oe)===le)}):[]}return z.findAll(function(ce){return z!==ce&&ce.nodeName===E})}},{key:"is",value:function(E,z){if(E.startsWith("."))return z.className===this.getIdOrClassname(E);if(E.startsWith("#"))return z.id===this.getIdOrClassname(E);if(E.startsWith("[")){var te=this.getAttribute(E),re=te.name,oe=te.value;return re==="name"?z.name===oe:this.attributeToString(z,re)===oe}return z.nodeName===E}},{key:"getIdOrClassname",value:function(E){return E.substring(1)}},{key:"getAttribute",value:function(E){var z=E.match(Jf),te="",re="";return z&&z.length>2&&(te=z[1].replace(/"/g,""),re=z[2].replace(/"/g,"")),{name:te,value:re}}},{key:"attributeToString",value:function(E,z){if(!E.getAttribute)return"";var te=E.getAttribute(z);return fl(te)?"":te.toString?te.toString():""}}])}(),ru=function(b){return b.ATTR_MODIFIED="DOMAttrModified",b.INSERTED="DOMNodeInserted",b.MOUNTED="DOMNodeInsertedIntoDocument",b.REMOVED="removed",b.UNMOUNTED="DOMNodeRemovedFromDocument",b.REPARENT="reparent",b.DESTROY="destroy",b.BOUNDS_CHANGED="bounds-changed",b.CULLED="culled",b}({}),Yp=function(b){function x(E,z,te,re,oe,le,ce,ge){var Ae;return(0,xi.Z)(this,x),Ae=Fi(this,x,[null]),Ae.relatedNode=z,Ae.prevValue=te,Ae.newValue=re,Ae.attrName=oe,Ae.attrChange=le,Ae.prevParsedValue=ce,Ae.newParsedValue=ge,Ae.type=E,Ae}return(0,Do.Z)(x,b),(0,qr.Z)(x)}(_y);Yp.ADDITION=2,Yp.MODIFICATION=1,Yp.REMOVAL=3;function a(b){var x=b.renderable;x&&(x.renderBoundsDirty=!0,x.boundsDirty=!0)}var y=new Yp(ru.REPARENT,null,"","","",0,"",""),ee=dp(),ne=ba(),se=Gs(1,1,1),ue=is(),me=dp(),Ce=ba(),Fe=is(),Ye=Su(),Qe=ba(),at=Su(),mt=ba(),Lt=ba(),kt=ba(),Xt=is(),bn=Su(),gn=Su(),_n=Su(),jn={affectChildren:!0},Yn=function(){function b(x){(0,xi.Z)(this,b),this.pendingEvents=new Map,this.boundsChangedEvent=new Qh(ru.BOUNDS_CHANGED),this.displayObjectDependencyMap=new WeakMap,this.runtime=x}return(0,qr.Z)(b,[{key:"matches",value:function(E,z){return this.runtime.sceneGraphSelector.is(E,z)}},{key:"querySelector",value:function(E,z){return this.runtime.sceneGraphSelector.selectOne(E,z)}},{key:"querySelectorAll",value:function(E,z){return this.runtime.sceneGraphSelector.selectAll(E,z)}},{key:"attach",value:function(E,z,te){var re,oe=!1;E.parentNode&&(oe=E.parentNode!==z,this.detach(E));var le=E.nodeName===ci.FRAGMENT,ce=mS(z);E.parentNode=z;var ge=le?E.childNodes:[E];os(te)?ge.forEach(function(Xe){z.childNodes.splice(te,0,Xe),Xe.parentNode=z}):ge.forEach(function(Xe){z.childNodes.push(Xe),Xe.parentNode=z});var Ae=z,Me=Ae.sortable;if((Me!=null&&(re=Me.sorted)!==null&&re!==void 0&&re.length||E.parsedStyle.zIndex)&&(Me.dirtyChildren.indexOf(E)===-1&&Me.dirtyChildren.push(E),Me.dirty=!0,Me.dirtyReason=Gm.ADDED),!ce){if(le)this.dirtifyFragment(E);else{var Ue=E.transformable;Ue&&this.dirtifyWorld(E,Ue)}oe&&E.dispatchEvent(y)}}},{key:"detach",value:function(E){if(E.parentNode){var z,te,re=E.transformable,oe=E.parentNode,le=oe.sortable;(le!=null&&(z=le.sorted)!==null&&z!==void 0&&z.length||(te=E.style)!==null&&te!==void 0&&te.zIndex)&&(le.dirtyChildren.indexOf(E)===-1&&le.dirtyChildren.push(E),le.dirty=!0,le.dirtyReason=Gm.REMOVED);var ce=E.parentNode.childNodes.indexOf(E);ce>-1&&E.parentNode.childNodes.splice(ce,1),re&&this.dirtifyWorld(E,re),E.parentNode=null}}},{key:"getOrigin",value:function(E){return E.getGeometryBounds(),E.transformable.origin}},{key:"setOrigin",value:function(E,z){var te=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,re=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;typeof z=="number"&&(z=[z,te,re]);var oe=E.transformable;if(!(z[0]===oe.origin[0]&&z[1]===oe.origin[1]&&z[2]===oe.origin[2])){var le=oe.origin;le[0]=z[0],le[1]=z[1],le[2]=z[2]||0,this.dirtifyLocal(E,oe)}}},{key:"rotate",value:function(E,z){var te=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,re=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;typeof z=="number"&&(z=Gs(z,te,re));var oe=E.transformable;if(E.parentNode===null||!E.parentNode.transformable)this.rotateLocal(E,z);else{var le=Ye;_x(le,z[0],z[1],z[2]);var ce=this.getRotation(E),ge=this.getRotation(E.parentNode);jx(_n,ge),ld(_n,_n),Y0(le,_n,le),Y0(oe.localRotation,le,ce),$s(oe.localRotation,oe.localRotation),this.dirtifyLocal(E,oe)}}},{key:"rotateLocal",value:function(E,z){var te=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,re=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;typeof z=="number"&&(z=Gs(z,te,re));var oe=E.transformable;_x(gn,z[0],z[1],z[2]),Wx(oe.localRotation,oe.localRotation,gn),this.dirtifyLocal(E,oe)}},{key:"setEulerAngles",value:function(E,z){var te=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,re=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;typeof z=="number"&&(z=Gs(z,te,re));var oe=E.transformable;if(E.parentNode===null||!E.parentNode.transformable)this.setLocalEulerAngles(E,z);else{_x(oe.localRotation,z[0],z[1],z[2]);var le=this.getRotation(E.parentNode);jx(bn,ld(Ye,le)),Wx(oe.localRotation,oe.localRotation,bn),this.dirtifyLocal(E,oe)}}},{key:"setLocalEulerAngles",value:function(E,z){var te=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,re=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,oe=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0;typeof z=="number"&&(z=Gs(z,te,re));var le=E.transformable;_x(le.localRotation,z[0],z[1],z[2]),oe&&this.dirtifyLocal(E,le)}},{key:"translateLocal",value:function(E,z){var te=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,re=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;typeof z=="number"&&(z=Gs(z,te,re));var oe=E.transformable;xh(z,ne)||(rh(z,z,oe.localRotation),Hl(oe.localPosition,oe.localPosition,z),this.dirtifyLocal(E,oe))}},{key:"setPosition",value:function(E,z){var te,re=E.transformable;if(kt[0]=z[0],kt[1]=z[1],kt[2]=(te=z[2])!==null&&te!==void 0?te:0,!xh(this.getPosition(E),kt)){if(Fs(re.position,kt),E.parentNode===null||!E.parentNode.transformable)Fs(re.localPosition,kt);else{var oe=E.parentNode.transformable;ec(Xt,oe.worldTransform),Fd(Xt,Xt),Ac(re.localPosition,kt,Xt)}this.dirtifyLocal(E,re)}}},{key:"setLocalPosition",value:function(E,z){var te,re=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,oe=E.transformable;Lt[0]=z[0],Lt[1]=z[1],Lt[2]=(te=z[2])!==null&&te!==void 0?te:0,!xh(oe.localPosition,Lt)&&(Fs(oe.localPosition,Lt),re&&this.dirtifyLocal(E,oe))}},{key:"scaleLocal",value:function(E,z){var te,re=E.transformable;yd(re.localScale,re.localScale,_l(Ce,z[0],z[1],(te=z[2])!==null&&te!==void 0?te:1)),this.dirtifyLocal(E,re)}},{key:"setLocalScale",value:function(E,z){var te,re=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,oe=E.transformable;_l(Ce,z[0],z[1],(te=z[2])!==null&&te!==void 0?te:oe.localScale[2]),!xh(Ce,oe.localScale)&&(Fs(oe.localScale,Ce),re&&this.dirtifyLocal(E,oe))}},{key:"translate",value:function(E,z){var te=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,re=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;typeof z=="number"&&(z=_l(Ce,z,te,re)),!xh(z,ne)&&(Hl(Ce,this.getPosition(E),z),this.setPosition(E,Ce))}},{key:"setRotation",value:function(E,z,te,re,oe){var le=E.transformable;if(typeof z=="number"&&(z=w2(z,te,re,oe)),E.parentNode===null||!E.parentNode.transformable)this.setLocalRotation(E,z);else{var ce=this.getRotation(E.parentNode);jx(Ye,ce),ld(Ye,Ye),Y0(le.localRotation,Ye,z),$s(le.localRotation,le.localRotation),this.dirtifyLocal(E,le)}}},{key:"setLocalRotation",value:function(E,z,te,re,oe){var le=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0;typeof z=="number"&&(z=hA(Ye,z,te,re,oe));var ce=E.transformable;jx(ce.localRotation,z),le&&this.dirtifyLocal(E,ce)}},{key:"setLocalSkew",value:function(E,z,te){var re=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0;typeof z=="number"&&(z=ow(me,z,te));var oe=E.transformable;iw(oe.localSkew,z),re&&this.dirtifyLocal(E,oe)}},{key:"dirtifyLocal",value:function(E,z){mS(E)||z.localDirtyFlag||(z.localDirtyFlag=!0,z.dirtyFlag||this.dirtifyWorld(E,z))}},{key:"dirtifyWorld",value:function(E,z){z.dirtyFlag||this.unfreezeParentToRoot(E),this.dirtifyWorldInternal(E,z),this.dirtifyToRoot(E,!0)}},{key:"dirtifyFragment",value:function(E){var z=E.transformable;z&&(z.frozen=!1,z.dirtyFlag=!0,z.localDirtyFlag=!0);var te=E.renderable;te&&(te.renderBoundsDirty=!0,te.boundsDirty=!0,te.dirty=!0);for(var re=E.childNodes.length,oe=0;oe1&&arguments[1]!==void 0?arguments[1]:!1,te=E;for(te.renderable&&(te.renderable.dirty=!0);te;)a(te),te=te.parentNode;z&&E.forEach(function(re){a(re)}),this.informDependentDisplayObjects(E),this.pendingEvents.set(E,z)}},{key:"updateDisplayObjectDependency",value:function(E,z,te,re){if(z&&z!==te){var oe=this.displayObjectDependencyMap.get(z);if(oe&&oe[E]){var le=oe[E].indexOf(re);oe[E].splice(le,1)}}if(te){var ce=this.displayObjectDependencyMap.get(te);ce||(this.displayObjectDependencyMap.set(te,{}),ce=this.displayObjectDependencyMap.get(te)),ce[E]||(ce[E]=[]),ce[E].push(re)}}},{key:"informDependentDisplayObjects",value:function(E){var z=this,te=this.displayObjectDependencyMap.get(E);te&&Object.keys(te).forEach(function(re){te[re].forEach(function(oe){z.dirtifyToRoot(oe,!0),oe.dispatchEvent(new Yp(ru.ATTR_MODIFIED,oe,z,z,re,Yp.MODIFICATION,z,z)),oe.isCustomElement&&oe.isConnected&&oe.attributeChangedCallback&&oe.attributeChangedCallback(re,z,z)})})}},{key:"getPosition",value:function(E){var z=E.transformable;return ju(z.position,this.getWorldTransform(E,z))}},{key:"getRotation",value:function(E){var z=E.transformable;return Tm(z.rotation,this.getWorldTransform(E,z))}},{key:"getScale",value:function(E){var z=E.transformable;return u0(z.scaling,this.getWorldTransform(E,z))}},{key:"getWorldTransform",value:function(E){var z=arguments.length>1&&arguments[1]!==void 0?arguments[1]:E.transformable;return!z.localDirtyFlag&&!z.dirtyFlag||(E.parentNode&&E.parentNode.transformable&&this.getWorldTransform(E.parentNode),this.sync(E,z)),z.worldTransform}},{key:"getLocalPosition",value:function(E){return E.transformable.localPosition}},{key:"getLocalRotation",value:function(E){return E.transformable.localRotation}},{key:"getLocalScale",value:function(E){return E.transformable.localScale}},{key:"getLocalSkew",value:function(E){return E.transformable.localSkew}},{key:"calcLocalTransform",value:function(E){var z=E.localSkew[0]!==0||E.localSkew[1]!==0;if(z){Fp(E.localTransform,E.localRotation,E.localPosition,Gs(1,1,1),E.origin),(E.localSkew[0]!==0||E.localSkew[1]!==0)&&(ad(Fe),Fe[4]=Math.tan(E.localSkew[0]),Fe[1]=Math.tan(E.localSkew[1]),vl(E.localTransform,E.localTransform,Fe));var te=Fp(Fe,hA(Ye,0,0,0,1),_l(Ce,1,1,1),E.localScale,E.origin);vl(E.localTransform,E.localTransform,te)}else{var re=E.localTransform,oe=E.localPosition,le=E.localRotation,ce=E.localScale,ge=E.origin,Ae=oe[0]!==0||oe[1]!==0||oe[2]!==0,Me=le[3]!==1||le[0]!==0||le[1]!==0||le[2]!==0,Ue=ce[0]!==1||ce[1]!==1||ce[2]!==1,Xe=ge[0]!==0||ge[1]!==0||ge[2]!==0;!Me&&!Ue&&!Xe?Ae?Rp(re,oe):ad(re):Fp(re,le,oe,ce,ge)}}},{key:"getLocalTransform",value:function(E){var z=E.transformable;return z.localDirtyFlag&&(this.calcLocalTransform(z),z.localDirtyFlag=!1),z.localTransform}},{key:"setLocalTransform",value:function(E,z){var te=ju(Qe,z),re=Tm(at,z),oe=u0(mt,z);this.setLocalScale(E,oe,!1),this.setLocalPosition(E,te,!1),this.setLocalRotation(E,re,void 0,void 0,void 0,!1),this.dirtifyLocal(E,E.transformable)}},{key:"resetLocalTransform",value:function(E){this.setLocalScale(E,se,!1),this.setLocalPosition(E,ne,!1),this.setLocalEulerAngles(E,ne,void 0,void 0,!1),this.setLocalSkew(E,ee,void 0,!1),this.dirtifyLocal(E,E.transformable)}},{key:"getTransformedGeometryBounds",value:function(E){var z=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,te=arguments.length>2?arguments[2]:void 0,re=this.getGeometryBounds(E,z);if(!Cc.isEmpty(re)){var oe=te||new Cc;return oe.setFromTransformedAABB(re,this.getWorldTransform(E)),oe}return null}},{key:"getGeometryBounds",value:function(E){var z=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,te=E,re=te.geometry;re.dirty&&Xo.styleValueRegistry.updateGeometry(E);var oe=z?re.renderBounds:re.contentBounds||null;return oe||new Cc}},{key:"getBounds",value:function(E){var z=this,te=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,re=E,oe=re.renderable;if(!oe.boundsDirty&&!te&&oe.bounds)return oe.bounds;if(!oe.renderBoundsDirty&&te&&oe.renderBounds)return oe.renderBounds;var le=te?oe.renderBounds:oe.bounds,ce=this.getTransformedGeometryBounds(E,te,le),ge=E.childNodes;if(ge.forEach(function(Ue){var Xe=z.getBounds(Ue,te);Xe&&(ce?ce.add(Xe):(ce=le||new Cc,ce.update(Xe.center,Xe.halfExtents)))}),ce||(ce=new Cc),te){var Ae=wE(E);if(Ae){var Me=Ae.parsedStyle.clipPath.getBounds(te);ce?Me&&(ce=Me.intersection(ce)):ce.update(Me.center,Me.halfExtents)}}return te?(oe.renderBounds=ce,oe.renderBoundsDirty=!1):(oe.bounds=ce,oe.boundsDirty=!1),ce}},{key:"getLocalBounds",value:function(E){if(E.parentNode){var z=ue;E.parentNode.transformable&&(z=Fd(Fe,this.getWorldTransform(E.parentNode)));var te=this.getBounds(E);if(!Cc.isEmpty(te)){var re=new Cc;return re.setFromTransformedAABB(te,z),re}}return this.getBounds(E)}},{key:"getBoundingClientRect",value:function(E){var z,te,re=this.getGeometryBounds(E);Cc.isEmpty(re)||(te=new Cc,te.setFromTransformedAABB(re,this.getWorldTransform(E)));var oe=(z=E.ownerDocument)===null||z===void 0||(z=z.defaultView)===null||z===void 0?void 0:z.getContextService().getBoundingClientRect();if(te){var le=te.getMin(),ce=(0,Wr.Z)(le,2),ge=ce[0],Ae=ce[1],Me=te.getMax(),Ue=(0,Wr.Z)(Me,2),Xe=Ue[0],$e=Ue[1];return new jm(ge+((oe==null?void 0:oe.left)||0),Ae+((oe==null?void 0:oe.top)||0),Xe-ge,$e-Ae)}return new jm((oe==null?void 0:oe.left)||0,(oe==null?void 0:oe.top)||0,0,0)}},{key:"dirtifyWorldInternal",value:function(E,z){var te=this;if(!z.dirtyFlag){z.dirtyFlag=!0,z.frozen=!1,E.childNodes.forEach(function(le){var ce=le.transformable;ce.dirtyFlag||te.dirtifyWorldInternal(le,ce)});var re=E,oe=re.renderable;oe&&(oe.renderBoundsDirty=!0,oe.boundsDirty=!0,oe.dirty=!0)}}},{key:"syncHierarchy",value:function(E){var z=E.transformable;if(!z.frozen){z.frozen=!0,(z.localDirtyFlag||z.dirtyFlag)&&this.sync(E,z);for(var te=E.childNodes,re=0;rege;--$e){for(var yt=0;ytsi&&Sr>Ir;)Sr-=1,Ar=Ar.slice(0,-1);return{lineTxt:Ar,txtLastCharIndex:Sr}}function Sn(Ar,Sr){if(!(Gt<=0||Gt>rt)){if(!yt[Ar]){yt[Ar]=ot;return}var Ir=vn(yt[Ar],Sr,Wt+1,rt-Gt);yt[Ar]=Ir.lineTxt+ot}}for(var kn=0;kn=Ue){z.isOverflowing=!0,kn0&&zt+Nr>rt){var ei=vn(yt[Ct],kn-1,Wt+1,rt);if(ei.txtLastCharIndex!==kn-1){if(yt[Ct]=ei.lineTxt,ei.txtLastCharIndex===pt.length-1)break;kn=ei.txtLastCharIndex+1,Kn=pt[kn],vr=pt[kn-1],er=pt[kn+1],Nr=Qt(Kn)}if(Ct+1>=Ue){z.isOverflowing=!0,Sn(Ct,kn-1);break}if(Wt=kn-1,Ct+=1,zt=0,yt[Ct]="",this.isBreakingSpace(Kn))continue;this.canBreakInLastChar(Kn)||(yt=this.trimToBreakable(yt),zt=this.sumTextWidthByCache(yt[Ct]||"",Qt)),this.shouldBreakByKinsokuShorui(Kn,er)&&(yt=this.trimByKinsokuShorui(yt),zt+=Qt(vr||""))}zt+=Nr,yt[Ct]=(yt[Ct]||"")+Kn}return yt.join(` `)}},{key:"isBreakingSpace",value:function(E){return typeof E!="string"?!1:nr.BreakingSpaces.indexOf(E.charCodeAt(0))>=0}},{key:"isNewline",value:function(E){return typeof E!="string"?!1:nr.Newlines.indexOf(E.charCodeAt(0))>=0}},{key:"trimToBreakable",value:function(E){var z=(0,Bo.Z)(E),te=z[z.length-2],re=this.findBreakableIndex(te);if(re===-1||!te)return z;var oe=te.slice(re,re+1),le=this.isBreakingSpace(oe),ce=re+1,ge=re+(le?0:1);return z[z.length-1]+=te.slice(ce,te.length),z[z.length-2]=te.slice(0,ge),z}},{key:"canBreakInLastChar",value:function(E){return!(E&&Or.test(E))}},{key:"sumTextWidthByCache",value:function(E,z){return E.split("").reduce(function(te,re){return te+z(re)},0)}},{key:"findBreakableIndex",value:function(E){for(var z=E.length-1;z>=0;z--)if(!Or.test(E[z]))return z;return-1}},{key:"getFromCache",value:function(E,z,te,re){var oe=te[E];if(typeof oe!="number"){var le=E.length*z,ce=re.measureText(E);oe=ce.width+le,te[E]=oe}return oe}}])}(),Xo={},gc=function(b){var x=new Kp,E=new Vp;return b={},(0,ps.Z)((0,ps.Z)((0,ps.Z)((0,ps.Z)((0,ps.Z)((0,ps.Z)((0,ps.Z)((0,ps.Z)((0,ps.Z)((0,ps.Z)(b,ci.FRAGMENT,null),ci.CIRCLE,new LE),ci.ELLIPSE,new TE),ci.RECT,x),ci.IMAGE,x),ci.GROUP,new Zp),ci.LINE,new q1),ci.TEXT,new ov(Xo)),ci.POLYLINE,E),ci.POLYGON,E),(0,ps.Z)((0,ps.Z)((0,ps.Z)(b,ci.PATH,new Fy),ci.HTML,new av),ci.MESH,null)}(),lv=function(b){var x=new aP,E=new dC;return b={},(0,ps.Z)((0,ps.Z)((0,ps.Z)((0,ps.Z)((0,ps.Z)((0,ps.Z)((0,ps.Z)((0,ps.Z)((0,ps.Z)((0,ps.Z)(b,Na.PERCENTAGE,null),Na.NUMBER,new cP),Na.ANGLE,new kT),Na.DEFINED_PATH,new FT),Na.PAINT,x),Na.COLOR,x),Na.FILTER,new sP),Na.LENGTH,E),Na.LENGTH_PERCENTAGE,E),Na.LENGTH_PERCENTAGE_12,new _T),(0,ps.Z)((0,ps.Z)((0,ps.Z)((0,ps.Z)((0,ps.Z)((0,ps.Z)((0,ps.Z)((0,ps.Z)((0,ps.Z)((0,ps.Z)(b,Na.LENGTH_PERCENTAGE_14,new hS),Na.COORDINATE,new dC),Na.OFFSET_DISTANCE,new zT),Na.OPACITY_VALUE,new dS),Na.PATH,new Gv),Na.LIST_OF_POINTS,new Hv),Na.SHADOW_BLUR,new fS),Na.TEXT,new fC),Na.TEXT_TRANSFORM,new AE),Na.TRANSFORM,new ky),(0,ps.Z)((0,ps.Z)((0,ps.Z)(b,Na.TRANSFORM_ORIGIN,new J1),Na.Z_INDEX,new ME),Na.MARKER,new uP)}(),Ju=function(){return typeof globalThis!="undefined"?globalThis:typeof self!="undefined"?self:typeof window!="undefined"?window:typeof Be.g!="undefined"?Be.g:{}};Xo.CameraContribution=_1,Xo.AnimationTimeline=null,Xo.EasingFunction=null,Xo.offscreenCanvasCreator=new OE,Xo.sceneGraphSelector=new ex,Xo.sceneGraphService=new Yn(Xo),Xo.textService=new Pc(Xo),Xo.geometryUpdaterFactory=gc,Xo.CSSPropertySyntaxFactory=lv,Xo.styleValueRegistry=new K1(Xo),Xo.layoutRegistry=null,Xo.globalThis=Ju(),Xo.enableStyleSyntax=!0,Xo.enableSizeAttenuation=!1;var Pg=0;function Jh(){Pg=0}var Xp=new Yp(ru.INSERTED,null,"","","",0,"",""),Pd=new Yp(ru.REMOVED,null,"","","",0,"",""),Nf=new Qh(ru.DESTROY),Wd=function(b){function x(){var E;(0,xi.Z)(this,x);for(var z=arguments.length,te=new Array(z),re=0;re=0;z--){var te=this.childNodes[z];this.removeChild(te)}}},{key:"destroyChildren",value:function(){for(var z=this.childNodes.length-1;z>=0;z--){var te=this.childNodes[z];te.childNodes.length>0&&te.destroyChildren(),te.destroy()}}},{key:"matches",value:function(z){return Xo.sceneGraphService.matches(z,this)}},{key:"getElementById",value:function(z){return Xo.sceneGraphService.querySelector("#".concat(z),this)}},{key:"getElementsByName",value:function(z){return Xo.sceneGraphService.querySelectorAll('[name="'.concat(z,'"]'),this)}},{key:"getElementsByClassName",value:function(z){return Xo.sceneGraphService.querySelectorAll(".".concat(z),this)}},{key:"getElementsByTagName",value:function(z){return Xo.sceneGraphService.querySelectorAll(z,this)}},{key:"querySelector",value:function(z){return Xo.sceneGraphService.querySelector(z,this)}},{key:"querySelectorAll",value:function(z){return Xo.sceneGraphService.querySelectorAll(z,this)}},{key:"closest",value:function(z){var te=this;do{if(Xo.sceneGraphService.matches(z,te))return te;te=te.parentElement}while(te!==null);return null}},{key:"find",value:function(z){var te=this,re=null;return this.forEach(function(oe){return oe!==te&&z(oe)?(re=oe,!1):!0}),re}},{key:"findAll",value:function(z){var te=this,re=[];return this.forEach(function(oe){oe!==te&&z(oe)&&re.push(oe)}),re}},{key:"after",value:function(){var z=this;if(this.parentNode){for(var te=this.parentNode.childNodes.indexOf(this),re=arguments.length,oe=new Array(re),le=0;le0&&arguments[0]!==void 0?arguments[0]:{},te={forceUpdateGeometry:!0};Xo.styleValueRegistry.processProperties(this,z,te),this.renderable.dirty=!0}},{key:"setAttribute",value:function(z,te){var re=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,oe=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0;jl(te)||(re||te!==this.attributes[z])&&(this.internalSetAttribute(z,te,{memoize:oe}),nE(x,"setAttribute",this,3)([z,te]))}},{key:"internalSetAttribute",value:function(z,te){var re=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},oe=this.renderable,le=this.attributes[z],ce=this.parsedStyle[z];Xo.styleValueRegistry.processProperties(this,(0,ps.Z)({},z,te),re),oe.dirty=!0;var ge=this.parsedStyle[z];if(this.isConnected&&(Fh.relatedNode=this,Fh.prevValue=le,Fh.newValue=te,Fh.attrName=z,Fh.prevParsedValue=ce,Fh.newParsedValue=ge,this.isMutationObserved?this.dispatchEvent(Fh):(Fh.target=this,this.ownerDocument.defaultView.dispatchEvent(Fh,!0))),this.isCustomElement&&this.isConnected||!this.isCustomElement){var Ae,Me;(Ae=(Me=this).attributeChangedCallback)===null||Ae===void 0||Ae.call(Me,z,le,te,ce,ge)}}},{key:"getBBox",value:function(){var z=this.getBounds(),te=z.getMin(),re=(0,Wr.Z)(te,2),oe=re[0],le=re[1],ce=z.getMax(),ge=(0,Wr.Z)(ce,2),Ae=ge[0],Me=ge[1];return new jm(oe,le,Ae-oe,Me-le)}},{key:"setOrigin",value:function(z){var te=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,re=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return Xo.sceneGraphService.setOrigin(this,vg(z,te,re,!1)),this}},{key:"getOrigin",value:function(){return Xo.sceneGraphService.getOrigin(this)}},{key:"setPosition",value:function(z){var te=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,re=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return Xo.sceneGraphService.setPosition(this,vg(z,te,re,!1)),this}},{key:"setLocalPosition",value:function(z){var te=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,re=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return Xo.sceneGraphService.setLocalPosition(this,vg(z,te,re,!1)),this}},{key:"translate",value:function(z){var te=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,re=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return Xo.sceneGraphService.translate(this,vg(z,te,re,!1)),this}},{key:"translateLocal",value:function(z){var te=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,re=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return Xo.sceneGraphService.translateLocal(this,vg(z,te,re,!1)),this}},{key:"getPosition",value:function(){return Xo.sceneGraphService.getPosition(this)}},{key:"getLocalPosition",value:function(){return Xo.sceneGraphService.getLocalPosition(this)}},{key:"scale",value:function(z,te,re){return this.scaleLocal(z,te,re)}},{key:"scaleLocal",value:function(z,te,re){return typeof z=="number"&&(te=te||z,re=re||z,z=vg(z,te,re,!1)),Xo.sceneGraphService.scaleLocal(this,z),this}},{key:"setLocalScale",value:function(z,te,re){return typeof z=="number"&&(te=te||z,re=re||z,z=vg(z,te,re,!1)),Xo.sceneGraphService.setLocalScale(this,z),this}},{key:"getLocalScale",value:function(){return Xo.sceneGraphService.getLocalScale(this)}},{key:"getScale",value:function(){return Xo.sceneGraphService.getScale(this)}},{key:"getEulerAngles",value:function(){var z=jA(uv,Xo.sceneGraphService.getWorldTransform(this)),te=(0,Wr.Z)(z,3),re=te[2];return mg(re)}},{key:"getLocalEulerAngles",value:function(){var z=jA(uv,Xo.sceneGraphService.getLocalRotation(this)),te=(0,Wr.Z)(z,3),re=te[2];return mg(re)}},{key:"setEulerAngles",value:function(z){return Xo.sceneGraphService.setEulerAngles(this,0,0,z),this}},{key:"setLocalEulerAngles",value:function(z){return Xo.sceneGraphService.setLocalEulerAngles(this,0,0,z),this}},{key:"rotateLocal",value:function(z,te,re){return fl(te)&&fl(re)?Xo.sceneGraphService.rotateLocal(this,0,0,z):Xo.sceneGraphService.rotateLocal(this,z,te,re),this}},{key:"rotate",value:function(z,te,re){return fl(te)&&fl(re)?Xo.sceneGraphService.rotate(this,0,0,z):Xo.sceneGraphService.rotate(this,z,te,re),this}},{key:"setRotation",value:function(z,te,re,oe){return Xo.sceneGraphService.setRotation(this,z,te,re,oe),this}},{key:"setLocalRotation",value:function(z,te,re,oe){return Xo.sceneGraphService.setLocalRotation(this,z,te,re,oe),this}},{key:"setLocalSkew",value:function(z,te){return Xo.sceneGraphService.setLocalSkew(this,z,te),this}},{key:"getRotation",value:function(){return Xo.sceneGraphService.getRotation(this)}},{key:"getLocalRotation",value:function(){return Xo.sceneGraphService.getLocalRotation(this)}},{key:"getLocalSkew",value:function(){return Xo.sceneGraphService.getLocalSkew(this)}},{key:"getLocalTransform",value:function(){return Xo.sceneGraphService.getLocalTransform(this)}},{key:"getWorldTransform",value:function(){return Xo.sceneGraphService.getWorldTransform(this)}},{key:"setLocalTransform",value:function(z){return Xo.sceneGraphService.setLocalTransform(this,z),this}},{key:"resetLocalTransform",value:function(){Xo.sceneGraphService.resetLocalTransform(this)}},{key:"getAnimations",value:function(){return this.activeAnimations}},{key:"animate",value:function(z,te){var re,oe=(re=this.ownerDocument)===null||re===void 0?void 0:re.timeline;return oe?oe.play(this,z,te):null}},{key:"isVisible",value:function(){var z;return((z=this.parsedStyle)===null||z===void 0?void 0:z.visibility)!=="hidden"}},{key:"interactive",get:function(){return this.isInteractive()},set:function(z){this.style.pointerEvents=z?"auto":"none"}},{key:"isInteractive",value:function(){var z;return((z=this.parsedStyle)===null||z===void 0?void 0:z.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,Bo.Z)(this.parentNode.children.map(function(z){return Number(z.style.zIndex)})))+1),this}},{key:"toBack",value:function(){return this.parentNode&&(this.style.zIndex=Math.min.apply(Math,(0,Bo.Z)(this.parentNode.children.map(function(z){return Number(z.style.zIndex)})))-1),this}},{key:"getConfig",value:function(){return this.config}},{key:"attr",value:function(){for(var z=this,te=arguments.length,re=new Array(te),oe=0;oe1&&arguments[1]!==void 0?arguments[1]:0,re=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return this.setPosition(z,te,re),this}},{key:"move",value:function(z){var te=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,re=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return this.setPosition(z,te,re),this}},{key:"setZIndex",value:function(z){return this.style.zIndex=z,this}}])}(Wd);Zl.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 xp=function(b){function x(){var E=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return(0,xi.Z)(this,x),Fi(this,x,[(0,Li.Z)({type:ci.CIRCLE},E)])}return(0,Do.Z)(x,b),(0,qr.Z)(x)}(Zl);xp.PARSED_STYLE_LIST=new Set([].concat((0,Bo.Z)(Zl.PARSED_STYLE_LIST),["cx","cy","cz","r","isBillboard","isSizeAttenuation"]));var Wy=["style"],Mg=function(b){function x(){var E,z=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},te=z.style,re=(0,zm.Z)(z,Wy);return(0,xi.Z)(this,x),E=Fi(this,x,[(0,Li.Z)({style:te},re)]),E.isCustomElement=!0,E}return(0,Do.Z)(x,b),(0,qr.Z)(x)}(Zl);Mg.PARSED_STYLE_LIST=new Set(["class","className","clipPath","cursor","draggable","droppable","opacity","pointerEvents","transform","transformOrigin","zIndex","visibility"]);var Mh=function(b){function x(){var E=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return(0,xi.Z)(this,x),Fi(this,x,[(0,Li.Z)({type:ci.ELLIPSE},E)])}return(0,Do.Z)(x,b),(0,qr.Z)(x)}(Zl);Mh.PARSED_STYLE_LIST=new Set([].concat((0,Bo.Z)(Zl.PARSED_STYLE_LIST),["cx","cy","cz","rx","ry","isBillboard","isSizeAttenuation"]));var qm=function(b){function x(){return(0,xi.Z)(this,x),Fi(this,x,[{type:ci.FRAGMENT}])}return(0,Do.Z)(x,b),(0,qr.Z)(x)}(Zl);qm.PARSED_STYLE_LIST=new Set(["class","className"]);var Uu=function(b){function x(){var E=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return(0,xi.Z)(this,x),Fi(this,x,[(0,Li.Z)({type:ci.GROUP},E)])}return(0,Do.Z)(x,b),(0,qr.Z)(x)}(Zl);Uu.PARSED_STYLE_LIST=new Set(["class","className","clipPath","cursor","draggable","droppable","opacity","pointerEvents","transform","transformOrigin","zIndex","visibility"]);var Yv=["style"],$m=function(b){function x(){var E,z=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},te=z.style,re=(0,zm.Z)(z,Yv);return(0,xi.Z)(this,x),E=Fi(this,x,[(0,Li.Z)({type:ci.HTML,style:te},re)]),E.cullable.enable=!1,E}return(0,Do.Z)(x,b),(0,qr.Z)(x,[{key:"getDomElement",value:function(){return this.parsedStyle.$el}},{key:"getClientRects",value:function(){return[this.getBoundingClientRect()]}},{key:"getLocalBounds",value:function(){if(this.parentNode){var z=Fd(is(),this.parentNode.getWorldTransform()),te=this.getBounds();if(!Cc.isEmpty(te)){var re=new Cc;return re.setFromTransformedAABB(te,z),re}}return this.getBounds()}}])}(Zl);$m.PARSED_STYLE_LIST=new Set([].concat((0,Bo.Z)(Zl.PARSED_STYLE_LIST),["x","y","$el","innerHTML","width","height"]));var Xv=function(b){function x(){var E=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return(0,xi.Z)(this,x),Fi(this,x,[(0,Li.Z)({type:ci.IMAGE},E)])}return(0,Do.Z)(x,b),(0,qr.Z)(x)}(Zl);Xv.PARSED_STYLE_LIST=new Set([].concat((0,Bo.Z)(Zl.PARSED_STYLE_LIST),["x","y","z","src","width","height","isBillboard","billboardRotation","isSizeAttenuation","keepAspectRatio"]));var bC=["style"],uf=function(b){function x(){var E,z=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},te=z.style,re=(0,zm.Z)(z,bC);(0,xi.Z)(this,x),E=Fi(this,x,[(0,Li.Z)({type:ci.LINE,style:(0,Li.Z)({x1:0,y1:0,x2:0,y2:0,z1:0,z2:0},te)},re)]),E.markerStartAngle=0,E.markerEndAngle=0;var oe=E.parsedStyle,le=oe.markerStart,ce=oe.markerEnd;return le&&bl(le)&&(E.markerStartAngle=le.getLocalEulerAngles(),E.appendChild(le)),ce&&bl(ce)&&(E.markerEndAngle=ce.getLocalEulerAngles(),E.appendChild(ce)),E.transformMarker(!0),E.transformMarker(!1),E}return(0,Do.Z)(x,b),(0,qr.Z)(x,[{key:"attributeChangedCallback",value:function(z,te,re,oe,le){z==="x1"||z==="y1"||z==="x2"||z==="y2"||z==="markerStartOffset"||z==="markerEndOffset"?(this.transformMarker(!0),this.transformMarker(!1)):z==="markerStart"?(oe&&bl(oe)&&(this.markerStartAngle=0,oe.remove()),le&&bl(le)&&(this.markerStartAngle=le.getLocalEulerAngles(),this.appendChild(le),this.transformMarker(!0))):z==="markerEnd"&&(oe&&bl(oe)&&(this.markerEndAngle=0,oe.remove()),le&&bl(le)&&(this.markerEndAngle=le.getLocalEulerAngles(),this.appendChild(le),this.transformMarker(!1)))}},{key:"transformMarker",value:function(z){var te=this.parsedStyle,re=te.markerStart,oe=te.markerEnd,le=te.markerStartOffset,ce=te.markerEndOffset,ge=te.x1,Ae=te.x2,Me=te.y1,Ue=te.y2,Xe=z?re:oe;if(!(!Xe||!bl(Xe))){var $e=0,rt,ot,pt,yt,Ct,zt;z?(pt=ge,yt=Me,rt=Ae-ge,ot=Ue-Me,Ct=le||0,zt=this.markerStartAngle):(pt=Ae,yt=Ue,rt=ge-Ae,ot=Me-Ue,Ct=ce||0,zt=this.markerEndAngle),$e=Math.atan2(ot,rt),Xe.setLocalEulerAngles($e*180/Math.PI+zt),Xe.setLocalPosition(pt+Math.cos($e)*Ct,yt+Math.sin($e)*Ct)}}},{key:"getPoint",value:function(z){var te=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,re=this.parsedStyle,oe=re.x1,le=re.y1,ce=re.x2,ge=re.y2,Ae=wc(oe,le,ce,ge,z),Me=Ae.x,Ue=Ae.y,Xe=Ac(ba(),Gs(Me,Ue,0),te?this.getWorldTransform():this.getLocalTransform());return new wd(Xe[0],Xe[1])}},{key:"getPointAtLength",value:function(z){var te=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;return this.getPoint(z/this.getTotalLength(),te)}},{key:"getTotalLength",value:function(){var z=this.parsedStyle,te=z.x1,re=z.y1,oe=z.x2,le=z.y2;return Wo(te,re,oe,le)}}])}(Zl);uf.PARSED_STYLE_LIST=new Set([].concat((0,Bo.Z)(Zl.PARSED_STYLE_LIST),["x1","y1","x2","y2","z1","z2","isBillboard","isSizeAttenuation","markerStart","markerEnd","markerStartOffset","markerEndOffset"]));var x0=["style"],Gd=function(b){function x(){var E,z=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},te=z.style,re=(0,zm.Z)(z,x0);(0,xi.Z)(this,x),E=Fi(this,x,[(0,Li.Z)({type:ci.PATH,style:te,initialParsedStyle:{miterLimit:4,d:(0,Li.Z)({},Py)}},re)]),E.markerStartAngle=0,E.markerEndAngle=0,E.markerMidList=[];var oe=E.parsedStyle,le=oe.markerStart,ce=oe.markerEnd,ge=oe.markerMid;return le&&bl(le)&&(E.markerStartAngle=le.getLocalEulerAngles(),E.appendChild(le)),ge&&bl(ge)&&E.placeMarkerMid(ge),ce&&bl(ce)&&(E.markerEndAngle=ce.getLocalEulerAngles(),E.appendChild(ce)),E.transformMarker(!0),E.transformMarker(!1),E}return(0,Do.Z)(x,b),(0,qr.Z)(x,[{key:"attributeChangedCallback",value:function(z,te,re,oe,le){z==="d"?(this.transformMarker(!0),this.transformMarker(!1),this.placeMarkerMid(this.parsedStyle.markerMid)):z==="markerStartOffset"||z==="markerEndOffset"?(this.transformMarker(!0),this.transformMarker(!1)):z==="markerStart"?(oe&&bl(oe)&&(this.markerStartAngle=0,oe.remove()),le&&bl(le)&&(this.markerStartAngle=le.getLocalEulerAngles(),this.appendChild(le),this.transformMarker(!0))):z==="markerEnd"?(oe&&bl(oe)&&(this.markerEndAngle=0,oe.remove()),le&&bl(le)&&(this.markerEndAngle=le.getLocalEulerAngles(),this.appendChild(le),this.transformMarker(!1))):z==="markerMid"&&this.placeMarkerMid(le)}},{key:"transformMarker",value:function(z){var te=this.parsedStyle,re=te.markerStart,oe=te.markerEnd,le=te.markerStartOffset,ce=te.markerEndOffset,ge=z?re:oe;if(!(!ge||!bl(ge))){var Ae=0,Me,Ue,Xe,$e,rt,ot;if(z){var pt=this.getStartTangent(),yt=(0,Wr.Z)(pt,2),Ct=yt[0],zt=yt[1];Xe=zt[0],$e=zt[1],Me=Ct[0]-zt[0],Ue=Ct[1]-zt[1],rt=le||0,ot=this.markerStartAngle}else{var Wt=this.getEndTangent(),Ht=(0,Wr.Z)(Wt,2),Qt=Ht[0],Gt=Ht[1];Xe=Gt[0],$e=Gt[1],Me=Qt[0]-Gt[0],Ue=Qt[1]-Gt[1],rt=ce||0,ot=this.markerEndAngle}Ae=Math.atan2(Ue,Me),ge.setLocalEulerAngles(Ae*180/Math.PI+ot),ge.setLocalPosition(Xe+Math.cos(Ae)*rt,$e+Math.sin(Ae)*rt)}}},{key:"placeMarkerMid",value:function(z){var te=this.parsedStyle.d.segments;if(this.markerMidList.forEach(function(Ae){Ae.remove()}),z&&bl(z))for(var re=1;re1&&arguments[1]!==void 0?arguments[1]:!1,re=this.parsedStyle.d.absolutePath,oe=Lw(re,z),le=oe.x,ce=oe.y,ge=Ac(ba(),Gs(le,ce,0),te?this.getWorldTransform():this.getLocalTransform());return new wd(ge[0],ge[1])}},{key:"getPoint",value:function(z){var te=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;return this.getPointAtLength(z*Hp(this),te)}},{key:"getStartTangent",value:function(){var z=this.parsedStyle.d.segments,te=[];if(z.length>1){var re=z[0].currentPoint,oe=z[1].currentPoint,le=z[1].startTangent;te=[],le?(te.push([re[0]-le[0],re[1]-le[1]]),te.push([re[0],re[1]])):(te.push([oe[0],oe[1]]),te.push([re[0],re[1]]))}return te}},{key:"getEndTangent",value:function(){var z=this.parsedStyle.d.segments,te=z.length,re=[];if(te>1){var oe=z[te-2].currentPoint,le=z[te-1].currentPoint,ce=z[te-1].endTangent;re=[],ce?(re.push([le[0]-ce[0],le[1]-ce[1]]),re.push([le[0],le[1]])):(re.push([oe[0],oe[1]]),re.push([le[0],le[1]]))}return re}}])}(Zl);Gd.PARSED_STYLE_LIST=new Set([].concat((0,Bo.Z)(Zl.PARSED_STYLE_LIST),["d","markerStart","markerMid","markerEnd","markerStartOffset","markerEndOffset","isBillboard","isSizeAttenuation"]));var Qv=["style"],Qp=function(b){function x(){var E,z=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},te=z.style,re=(0,zm.Z)(z,Qv);(0,xi.Z)(this,x),E=Fi(this,x,[(0,Li.Z)({type:ci.POLYGON,style:te,initialParsedStyle:{points:{points:[],totalLength:0,segments:[]},miterLimit:4,isClosed:!0}},re)]),E.markerStartAngle=0,E.markerEndAngle=0,E.markerMidList=[];var oe=E.parsedStyle,le=oe.markerStart,ce=oe.markerEnd,ge=oe.markerMid;return le&&bl(le)&&(E.markerStartAngle=le.getLocalEulerAngles(),E.appendChild(le)),ge&&bl(ge)&&E.placeMarkerMid(ge),ce&&bl(ce)&&(E.markerEndAngle=ce.getLocalEulerAngles(),E.appendChild(ce)),E.transformMarker(!0),E.transformMarker(!1),E}return(0,Do.Z)(x,b),(0,qr.Z)(x,[{key:"attributeChangedCallback",value:function(z,te,re,oe,le){z==="points"?(this.transformMarker(!0),this.transformMarker(!1),this.placeMarkerMid(this.parsedStyle.markerMid)):z==="markerStartOffset"||z==="markerEndOffset"?(this.transformMarker(!0),this.transformMarker(!1)):z==="markerStart"?(oe&&bl(oe)&&(this.markerStartAngle=0,oe.remove()),le&&bl(le)&&(this.markerStartAngle=le.getLocalEulerAngles(),this.appendChild(le),this.transformMarker(!0))):z==="markerEnd"?(oe&&bl(oe)&&(this.markerEndAngle=0,oe.remove()),le&&bl(le)&&(this.markerEndAngle=le.getLocalEulerAngles(),this.appendChild(le),this.transformMarker(!1))):z==="markerMid"&&this.placeMarkerMid(le)}},{key:"transformMarker",value:function(z){var te=this.parsedStyle,re=te.markerStart,oe=te.markerEnd,le=te.markerStartOffset,ce=te.markerEndOffset,ge=te.points,Ae=ge||{},Me=Ae.points,Ue=z?re:oe;if(!(!Ue||!bl(Ue)||!Me)){var Xe=0,$e,rt,ot,pt,yt,Ct;if(ot=Me[0][0],pt=Me[0][1],z)$e=Me[1][0]-Me[0][0],rt=Me[1][1]-Me[0][1],yt=le||0,Ct=this.markerStartAngle;else{var zt=Me.length;this.parsedStyle.isClosed?($e=Me[zt-1][0]-Me[0][0],rt=Me[zt-1][1]-Me[0][1]):(ot=Me[zt-1][0],pt=Me[zt-1][1],$e=Me[zt-2][0]-Me[zt-1][0],rt=Me[zt-2][1]-Me[zt-1][1]),yt=ce||0,Ct=this.markerEndAngle}Xe=Math.atan2(rt,$e),Ue.setLocalEulerAngles(Xe*180/Math.PI+Ct),Ue.setLocalPosition(ot+Math.cos(Xe)*yt,pt+Math.sin(Xe)*yt)}}},{key:"placeMarkerMid",value:function(z){var te=this.parsedStyle.points,re=te||{},oe=re.points;if(this.markerMidList.forEach(function(Me){Me.remove()}),this.markerMidList=[],z&&bl(z)&&oe)for(var le=1;le<(this.parsedStyle.isClosed?oe.length:oe.length-1);le++){var ce=oe[le][0],ge=oe[le][1],Ae=le===1?z:z.cloneNode(!0);this.markerMidList.push(Ae),this.appendChild(Ae),Ae.setLocalPosition(ce,ge)}}}])}(Zl);Qp.PARSED_STYLE_LIST=new Set([].concat((0,Bo.Z)(Zl.PARSED_STYLE_LIST),["points","markerStart","markerMid","markerEnd","markerStartOffset","markerEndOffset","isClosed","isBillboard","isSizeAttenuation"]));var Jv=["style"],Lg=function(b){function x(){var E=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},z=E.style,te=(0,zm.Z)(E,Jv);return(0,xi.Z)(this,x),Fi(this,x,[(0,Li.Z)({type:ci.POLYLINE,style:z,initialParsedStyle:{points:{points:[],totalLength:0,segments:[]},miterLimit:4,isClosed:!1}},te)])}return(0,Do.Z)(x,b),(0,qr.Z)(x,[{key:"getTotalLength",value:function(){return Cg(this)}},{key:"getPointAtLength",value:function(z){var te=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;return this.getPoint(z/this.getTotalLength(),te)}},{key:"getPoint",value:function(z){var te=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,re=this.parsedStyle.points.points;if(this.parsedStyle.points.segments.length===0){var oe=[],le=0,ce,ge,Ae=this.getTotalLength();re.forEach(function(pt,yt){re[yt+1]&&(ce=[0,0],ce[0]=le/Ae,ge=Wo(pt[0],pt[1],re[yt+1][0],re[yt+1][1]),le+=ge,ce[1]=le/Ae,oe.push(ce))}),this.parsedStyle.points.segments=oe}var Me=0,Ue=0;this.parsedStyle.points.segments.forEach(function(pt,yt){z>=pt[0]&&z<=pt[1]&&(Me=(z-pt[0])/(pt[1]-pt[0]),Ue=yt)});var Xe=wc(re[Ue][0],re[Ue][1],re[Ue+1][0],re[Ue+1][1],Me),$e=Xe.x,rt=Xe.y,ot=Ac(ba(),Gs($e,rt,0),te?this.getWorldTransform():this.getLocalTransform());return new wd(ot[0],ot[1])}},{key:"getStartTangent",value:function(){var z=this.parsedStyle.points.points,te=[];return te.push([z[1][0],z[1][1]]),te.push([z[0][0],z[0][1]]),te}},{key:"getEndTangent",value:function(){var z=this.parsedStyle.points.points,te=z.length-1,re=[];return re.push([z[te-1][0],z[te-1][1]]),re.push([z[te][0],z[te][1]]),re}}])}(Qp);Lg.PARSED_STYLE_LIST=new Set([].concat((0,Bo.Z)(Qp.PARSED_STYLE_LIST),["points","markerStart","markerMid","markerEnd","markerStartOffset","markerEndOffset","isBillboard"]));var sh=function(b){function x(){var E=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return(0,xi.Z)(this,x),Fi(this,x,[(0,Li.Z)({type:ci.RECT},E)])}return(0,Do.Z)(x,b),(0,qr.Z)(x)}(Zl);sh.PARSED_STYLE_LIST=new Set([].concat((0,Bo.Z)(Zl.PARSED_STYLE_LIST),["x","y","z","width","height","isBillboard","isSizeAttenuation","radius"]));var Md=["style"],Hd=function(b){function x(){var E=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},z=E.style,te=(0,zm.Z)(E,Md);return(0,xi.Z)(this,x),Fi(this,x,[(0,Li.Z)({type:ci.TEXT,style:(0,Li.Z)({fill:"black"},z)},te)])}return(0,Do.Z)(x,b),(0,qr.Z)(x,[{key:"getComputedTextLength",value:function(){var z;return this.getGeometryBounds(),((z=this.parsedStyle.metrics)===null||z===void 0?void 0:z.maxLineWidth)||0}},{key:"getLineBoundingRects",value:function(){var z;return this.getGeometryBounds(),((z=this.parsedStyle.metrics)===null||z===void 0?void 0:z.lineMetrics)||[]}},{key:"isOverflowing",value:function(){return this.getGeometryBounds(),!!this.parsedStyle.isOverflowing}}])}(Zl);Hd.PARSED_STYLE_LIST=new Set([].concat((0,Bo.Z)(Zl.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","textPathSide","textPathStartOffset","metrics","dx","dy"]));var CS=function(){function b(){(0,xi.Z)(this,b),this.registry={},this.define(ci.CIRCLE,xp),this.define(ci.ELLIPSE,Mh),this.define(ci.RECT,sh),this.define(ci.IMAGE,Xv),this.define(ci.LINE,uf),this.define(ci.GROUP,Uu),this.define(ci.PATH,Gd),this.define(ci.POLYGON,Qp),this.define(ci.POLYLINE,Lg),this.define(ci.TEXT,Hd),this.define(ci.HTML,$m)}return(0,qr.Z)(b,[{key:"define",value:function(E,z){this.registry[E]=z}},{key:"get",value:function(E){return this.registry[E]}}])}(),cv={number:function(x){return new cc(x)},percent:function(x){return new cc(x,"%")},px:function(x){return new cc(x,"px")},em:function(x){return new cc(x,"em")},rem:function(x){return new cc(x,"rem")},deg:function(x){return new cc(x,"deg")},grad:function(x){return new cc(x,"grad")},rad:function(x){return new cc(x,"rad")},turn:function(x){return new cc(x,"turn")},s:function(x){return new cc(x,"s")},ms:function(x){return new cc(x,"ms")},registerProperty:function(x){var E=x.name,z=x.inherits,te=x.interpolable,re=x.initialValue,oe=x.syntax;Xo.styleValueRegistry.registerMetadata({n:E,inh:z,int:te,d:re,syntax:oe})},registerLayout:function(x,E){Xo.layoutRegistry.registerLayout(x,E)}},Uy=function(b){function x(){var E;(0,xi.Z)(this,x),E=Fi(this,x),E.defaultView=null,E.ownerDocument=null,E.nodeName="document";try{E.timeline=new Xo.AnimationTimeline(E)}catch(te){}var z={};return lS.forEach(function(te){var re=te.n,oe=te.inh,le=te.d;oe&&le&&(z[re]=_s(le)?le(ci.GROUP):le)}),E.documentElement=new Uu({id:"g-root",style:z}),E.documentElement.ownerDocument=E,E.documentElement.parentNode=E,E.childNodes=[E.documentElement],E}return(0,Do.Z)(x,b),(0,qr.Z)(x,[{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(z,te){if(z==="svg")return this.documentElement;var re=this.defaultView.customElements.get(z);re||(console.warn("Unsupported tagName: ",z),re=z==="tspan"?Hd:Uu);var oe=new re(te);return oe.ownerDocument=this,oe}},{key:"createElementNS",value:function(z,te,re){return this.createElement(te,re)}},{key:"cloneNode",value:function(z){throw new Error(dc)}},{key:"destroy",value:function(){try{this.documentElement.destroyChildren(),this.timeline.destroy()}catch(z){}}},{key:"elementsFromBBox",value:function(z,te,re,oe){var le=this.defaultView.context.rBushRoot,ce=le.search({minX:z,minY:te,maxX:re,maxY:oe}),ge=[];return ce.forEach(function(Ae){var Me=Ae.displayObject,Ue=Me.parsedStyle.pointerEvents,Xe=Ue===void 0?"auto":Ue,$e=["auto","visiblepainted","visiblefill","visiblestroke","visible"].includes(Xe);(!$e||$e&&Me.isVisible())&&!Me.isCulled()&&Me.isInteractive()&&ge.push(Me)}),ge.sort(function(Ae,Me){return Me.sortable.renderOrder-Ae.sortable.renderOrder}),ge}},{key:"elementFromPointSync",value:function(z,te){var re=this.defaultView.canvas2Viewport({x:z,y:te}),oe=re.x,le=re.y,ce=this.defaultView.getConfig(),ge=ce.width,Ae=ce.height;if(oe<0||le<0||oe>ge||le>Ae)return null;var Me=this.defaultView.viewport2Client({x:oe,y:le}),Ue=Me.x,Xe=Me.y,$e=this.defaultView.getRenderingService().hooks.pickSync.call({topmost:!0,position:{x:z,y:te,viewportX:oe,viewportY:le,clientX:Ue,clientY:Xe},picked:[]}),rt=$e.picked;return rt&&rt[0]||this.documentElement}},{key:"elementFromPoint",value:function(){var E=(0,Nv.Z)((0,of.Z)().mark(function te(re,oe){var le,ce,ge,Ae,Me,Ue,Xe,$e,rt,ot,pt;return(0,of.Z)().wrap(function(Ct){for(;;)switch(Ct.prev=Ct.next){case 0:if(le=this.defaultView.canvas2Viewport({x:re,y:oe}),ce=le.x,ge=le.y,Ae=this.defaultView.getConfig(),Me=Ae.width,Ue=Ae.height,!(ce<0||ge<0||ce>Me||ge>Ue)){Ct.next=4;break}return Ct.abrupt("return",null);case 4:return Xe=this.defaultView.viewport2Client({x:ce,y:ge}),$e=Xe.x,rt=Xe.y,Ct.next=7,this.defaultView.getRenderingService().hooks.pick.promise({topmost:!0,position:{x:re,y:oe,viewportX:ce,viewportY:ge,clientX:$e,clientY:rt},picked:[]});case 7:return ot=Ct.sent,pt=ot.picked,Ct.abrupt("return",pt&&pt[0]||this.documentElement);case 10:case"end":return Ct.stop()}},te,this)}));function z(te,re){return E.apply(this,arguments)}return z}()},{key:"elementsFromPointSync",value:function(z,te){var re=this.defaultView.canvas2Viewport({x:z,y:te}),oe=re.x,le=re.y,ce=this.defaultView.getConfig(),ge=ce.width,Ae=ce.height;if(oe<0||le<0||oe>ge||le>Ae)return[];var Me=this.defaultView.viewport2Client({x:oe,y:le}),Ue=Me.x,Xe=Me.y,$e=this.defaultView.getRenderingService().hooks.pickSync.call({topmost:!1,position:{x:z,y:te,viewportX:oe,viewportY:le,clientX:Ue,clientY:Xe},picked:[]}),rt=$e.picked;return rt[rt.length-1]!==this.documentElement&&rt.push(this.documentElement),rt}},{key:"elementsFromPoint",value:function(){var E=(0,Nv.Z)((0,of.Z)().mark(function te(re,oe){var le,ce,ge,Ae,Me,Ue,Xe,$e,rt,ot,pt;return(0,of.Z)().wrap(function(Ct){for(;;)switch(Ct.prev=Ct.next){case 0:if(le=this.defaultView.canvas2Viewport({x:re,y:oe}),ce=le.x,ge=le.y,Ae=this.defaultView.getConfig(),Me=Ae.width,Ue=Ae.height,!(ce<0||ge<0||ce>Me||ge>Ue)){Ct.next=4;break}return Ct.abrupt("return",[]);case 4:return Xe=this.defaultView.viewport2Client({x:ce,y:ge}),$e=Xe.x,rt=Xe.y,Ct.next=7,this.defaultView.getRenderingService().hooks.pick.promise({topmost:!1,position:{x:re,y:oe,viewportX:ce,viewportY:ge,clientX:$e,clientY:rt},picked:[]});case 7:return ot=Ct.sent,pt=ot.picked,pt[pt.length-1]!==this.documentElement&&pt.push(this.documentElement),Ct.abrupt("return",pt);case 11:case"end":return Ct.stop()}},te,this)}));function z(te,re){return E.apply(this,arguments)}return z}()},{key:"appendChild",value:function(z,te){throw new Error(Rv)}},{key:"insertBefore",value:function(z,te){throw new Error(Rv)}},{key:"removeChild",value:function(z,te){throw new Error(Rv)}},{key:"replaceChild",value:function(z,te,re){throw new Error(Rv)}},{key:"append",value:function(){throw new Error(Rv)}},{key:"prepend",value:function(){throw new Error(Rv)}},{key:"getElementById",value:function(z){return this.documentElement.getElementById(z)}},{key:"getElementsByName",value:function(z){return this.documentElement.getElementsByName(z)}},{key:"getElementsByTagName",value:function(z){return this.documentElement.getElementsByTagName(z)}},{key:"getElementsByClassName",value:function(z){return this.documentElement.getElementsByClassName(z)}},{key:"querySelector",value:function(z){return this.documentElement.querySelector(z)}},{key:"querySelectorAll",value:function(z){return this.documentElement.querySelectorAll(z)}},{key:"find",value:function(z){return this.documentElement.find(z)}},{key:"findAll",value:function(z){return this.documentElement.findAll(z)}}])}(ah),Tg=function(){function b(x){(0,xi.Z)(this,b),this.strategies=x}return(0,qr.Z)(b,[{key:"apply",value:function(E){var z=E.camera,te=E.renderingService,re=E.renderingContext,oe=this.strategies;te.hooks.cull.tap(b.tag,function(le){if(le){var ce=le.cullable;return oe.length===0?ce.visible=re.unculledEntities.indexOf(le.entity)>-1:ce.visible=oe.every(function(ge){return ge.isVisible(z,le)}),!le.isCulled()&&le.isVisible()?le:(le.dispatchEvent(new Qh(ru.CULLED)),null)}return le}),te.hooks.afterRender.tap(b.tag,function(le){le.cullable.visibilityPlaneMask=-1})}}])}();Tg.tag="Culling";var qv=function(){function b(){var x=this;(0,xi.Z)(this,b),this.autoPreventDefault=!1,this.rootPointerEvent=new zy(null),this.rootWheelEvent=new DE(null),this.onPointerMove=function(E){var z,te=(z=x.context.renderingContext.root)===null||z===void 0||(z=z.ownerDocument)===null||z===void 0?void 0:z.defaultView;if(!(te.supportsTouchEvents&&E.pointerType==="touch")){var re=x.normalizeToPointerEvent(E,te),oe=_m(re),le;try{for(oe.s();!(le=oe.n()).done;){var ce=le.value,ge=x.bootstrapEvent(x.rootPointerEvent,ce,te,E);x.context.eventService.mapEvent(ge)}}catch(Ae){oe.e(Ae)}finally{oe.f()}x.setCursor(x.context.eventService.cursor)}},this.onClick=function(E){var z,te=(z=x.context.renderingContext.root)===null||z===void 0||(z=z.ownerDocument)===null||z===void 0?void 0:z.defaultView,re=x.normalizeToPointerEvent(E,te),oe=_m(re),le;try{for(oe.s();!(le=oe.n()).done;){var ce=le.value,ge=x.bootstrapEvent(x.rootPointerEvent,ce,te,E);x.context.eventService.mapEvent(ge)}}catch(Ae){oe.e(Ae)}finally{oe.f()}x.setCursor(x.context.eventService.cursor)}}return(0,qr.Z)(b,[{key:"apply",value:function(E){var z=this;this.context=E;var te=E.renderingService,re=this.context.renderingContext.root.ownerDocument.defaultView;this.context.eventService.setPickHandler(function(oe){var le=z.context.renderingService.hooks.pickSync.call({position:oe,picked:[],topmost:!0}),ce=le.picked;return ce[0]||null}),te.hooks.pointerWheel.tap(b.tag,function(oe){var le=z.normalizeWheelEvent(oe);z.context.eventService.mapEvent(le)}),te.hooks.pointerDown.tap(b.tag,function(oe){if(!(re.supportsTouchEvents&&oe.pointerType==="touch")){var le=z.normalizeToPointerEvent(oe,re);if(z.autoPreventDefault&&le[0].isNormalized){var ce=oe.cancelable||!("cancelable"in oe);ce&&oe.preventDefault()}var ge=_m(le),Ae;try{for(ge.s();!(Ae=ge.n()).done;){var Me=Ae.value,Ue=z.bootstrapEvent(z.rootPointerEvent,Me,re,oe);z.context.eventService.mapEvent(Ue)}}catch(Xe){ge.e(Xe)}finally{ge.f()}z.setCursor(z.context.eventService.cursor)}}),te.hooks.pointerUp.tap(b.tag,function(oe){if(!(re.supportsTouchEvents&&oe.pointerType==="touch")){var le=z.context.contextService.getDomElement(),ce=z.context.eventService.isNativeEventFromCanvas(le,oe),ge=ce?"":"outside",Ae=z.normalizeToPointerEvent(oe,re),Me=_m(Ae),Ue;try{for(Me.s();!(Ue=Me.n()).done;){var Xe=Ue.value,$e=z.bootstrapEvent(z.rootPointerEvent,Xe,re,oe);$e.type+=ge,z.context.eventService.mapEvent($e)}}catch(rt){Me.e(rt)}finally{Me.f()}z.setCursor(z.context.eventService.cursor)}}),te.hooks.pointerMove.tap(b.tag,this.onPointerMove),te.hooks.pointerOver.tap(b.tag,this.onPointerMove),te.hooks.pointerOut.tap(b.tag,this.onPointerMove),te.hooks.click.tap(b.tag,this.onClick),te.hooks.pointerCancel.tap(b.tag,function(oe){var le=z.normalizeToPointerEvent(oe,re),ce=_m(le),ge;try{for(ce.s();!(ge=ce.n()).done;){var Ae=ge.value,Me=z.bootstrapEvent(z.rootPointerEvent,Ae,re,oe);z.context.eventService.mapEvent(Me)}}catch(Ue){ce.e(Ue)}finally{ce.f()}z.setCursor(z.context.eventService.cursor)})}},{key:"bootstrapEvent",value:function(E,z,te,re){E.view=te,E.originalEvent=null,E.nativeEvent=re,E.pointerId=z.pointerId,E.width=z.width,E.height=z.height,E.isPrimary=z.isPrimary,E.pointerType=z.pointerType,E.pressure=z.pressure,E.tangentialPressure=z.tangentialPressure,E.tiltX=z.tiltX,E.tiltY=z.tiltY,E.twist=z.twist,this.transferMouseData(E,z);var oe=this.context.eventService.client2Viewport({x:z.clientX,y:z.clientY}),le=oe.x,ce=oe.y;E.viewport.x=le,E.viewport.y=ce;var ge=this.context.eventService.viewport2Canvas(E.viewport),Ae=ge.x,Me=ge.y;return E.canvas.x=Ae,E.canvas.y=Me,E.global.copyFrom(E.canvas),E.offset.copyFrom(E.canvas),E.isTrusted=re.isTrusted,E.type==="pointerleave"&&(E.type="pointerout"),E.type.startsWith("mouse")&&(E.type=E.type.replace("mouse","pointer")),E.type.startsWith("touch")&&(E.type=vS[E.type]||E.type),E}},{key:"normalizeWheelEvent",value:function(E){var z=this.rootWheelEvent;this.transferMouseData(z,E),z.deltaMode=E.deltaMode,z.deltaX=E.deltaX,z.deltaY=E.deltaY,z.deltaZ=E.deltaZ;var te=this.context.eventService.client2Viewport({x:E.clientX,y:E.clientY}),re=te.x,oe=te.y;z.viewport.x=re,z.viewport.y=oe;var le=this.context.eventService.viewport2Canvas(z.viewport),ce=le.x,ge=le.y;return z.canvas.x=ce,z.canvas.y=ge,z.global.copyFrom(z.canvas),z.offset.copyFrom(z.canvas),z.nativeEvent=E,z.type=E.type,z}},{key:"transferMouseData",value:function(E,z){E.isTrusted=z.isTrusted,E.srcElement=z.srcElement,E.timeStamp=CE.now(),E.type=z.type,E.altKey=z.altKey,E.metaKey=z.metaKey,E.shiftKey=z.shiftKey,E.ctrlKey=z.ctrlKey,E.button=z.button,E.buttons=z.buttons,E.client.x=z.clientX,E.client.y=z.clientY,E.movement.x=z.movementX,E.movement.y=z.movementY,E.page.x=z.pageX,E.page.y=z.pageY,E.screen.x=z.screenX,E.screen.y=z.screenY,E.relatedTarget=null}},{key:"setCursor",value:function(E){this.context.contextService.applyCursorStyle(E||this.context.config.cursor||"default")}},{key:"normalizeToPointerEvent",value:function(E,z){var te=[];if(z.isTouchEvent(E))for(var re=0;re-1,ce=0,ge=re.length;ce1&&arguments[1]!==void 0?arguments[1]:!1;if(E.isConnected){var te=E.rBushNode;te.aabb&&this.rBush.remove(te.aabb);var re=E.getRenderBounds();if(re){var oe=E.renderable;z&&(oe.dirtyRenderBounds||(oe.dirtyRenderBounds=new Cc),oe.dirtyRenderBounds.update(re.center,re.halfExtents));var le=re.getMin(),ce=(0,Wr.Z)(le,2),ge=ce[0],Ae=ce[1],Me=re.getMax(),Ue=(0,Wr.Z)(Me,2),Xe=Ue[0],$e=Ue[1];te.aabb||(te.aabb={}),te.aabb.displayObject=E,te.aabb.minX=ge,te.aabb.minY=Ae,te.aabb.maxX=Xe,te.aabb.maxY=$e}if(te.aabb&&!isNaN(te.aabb.maxX)&&!isNaN(te.aabb.maxX)&&!isNaN(te.aabb.minX)&&!isNaN(te.aabb.minY))return te.aabb}}},{key:"syncRTree",value:function(){var E=this,z=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;if(!(!z&&(this.syncing||this.syncTasks.size===0))){this.syncing=!0;var te=[],re=new Set,oe=function(ce){if(!re.has(ce)&&ce.renderable){var ge=E.syncNode(ce,z);ge&&(te.push(ge),re.add(ce))}};this.syncTasks.forEach(function(le,ce){le&&ce.forEach(oe);for(var ge=ce;ge;)oe(ge),ge=ge.parentElement}),this.rBush.load(te),te.length=0,this.syncing=!1}}}])}();Hy.tag="Prepare";function ep(b){return!!b.document}var Cu=function(b){return b.READY="ready",b.BEFORE_RENDER="beforerender",b.RERENDER="rerender",b.AFTER_RENDER="afterrender",b.BEFORE_DESTROY="beforedestroy",b.AFTER_DESTROY="afterdestroy",b.RESIZE="resize",b.DIRTY_RECTANGLE="dirtyrectangle",b.RENDERER_CHANGED="rendererchanged",b}({}),tx=500,qh=.1,qu=1e3,fh=new Qh(ru.MOUNTED),tp=new Qh(ru.UNMOUNTED),Jp=new Qh(Cu.BEFORE_RENDER),$v=new Qh(Cu.RERENDER),NE=new Qh(Cu.AFTER_RENDER),nx=function(b){function x(E){var z;(0,xi.Z)(this,x),z=Fi(this,x),z.Element=Zl,z.inited=!1,z.context={};var te=E.container,re=E.canvas,oe=E.renderer,le=E.width,ce=E.height,ge=E.background,Ae=E.cursor,Me=E.supportsMutipleCanvasesInOneContainer,Ue=E.cleanUpOnDestroy,Xe=Ue===void 0?!0:Ue,$e=E.offscreenCanvas,rt=E.devicePixelRatio,ot=E.requestAnimationFrame,pt=E.cancelAnimationFrame,yt=E.createImage,Ct=E.supportsTouchEvents,zt=E.supportsPointerEvents,Wt=E.isTouchEvent,Ht=E.isMouseEvent,Qt=E.dblClickSpeed,Gt=le,vn=ce,Sn=rt||Z1&&window.devicePixelRatio||1;return Sn=Sn>=1?Math.ceil(Sn):1,re&&(Gt=le||Y1(re)||re.width/Sn,vn=ce||If(re)||re.height/Sn),z.customElements=new CS,z.devicePixelRatio=Sn,z.requestAnimationFrame=ot!=null?ot:yS.bind(Xo.globalThis),z.cancelAnimationFrame=pt!=null?pt:bE.bind(Xo.globalThis),z.supportsTouchEvents=Ct!=null?Ct:"ontouchstart"in Xo.globalThis,z.supportsPointerEvents=zt!=null?zt:!!Xo.globalThis.PointerEvent,z.isTouchEvent=Wt!=null?Wt:function(kn){return z.supportsTouchEvents&&kn instanceof Xo.globalThis.TouchEvent},z.isMouseEvent=Ht!=null?Ht:function(kn){return!Xo.globalThis.MouseEvent||kn instanceof Xo.globalThis.MouseEvent&&(!z.supportsPointerEvents||!(kn instanceof Xo.globalThis.PointerEvent))},$e&&(Xo.offscreenCanvas=$e),z.document=new Uy,z.document.defaultView=z,Me||pC(te,z,Xe),z.initRenderingContext((0,Li.Z)((0,Li.Z)({},E),{},{width:Gt,height:vn,background:ge!=null?ge:"transparent",cursor:Ae!=null?Ae:"default",cleanUpOnDestroy:Xe,devicePixelRatio:Sn,requestAnimationFrame:z.requestAnimationFrame,cancelAnimationFrame:z.cancelAnimationFrame,supportsTouchEvents:z.supportsTouchEvents,supportsPointerEvents:z.supportsPointerEvents,isTouchEvent:z.isTouchEvent,isMouseEvent:z.isMouseEvent,dblClickSpeed:Qt!=null?Qt:200,createImage:yt!=null?yt:function(){return new window.Image}})),z.initDefaultCamera(Gt,vn,oe.clipSpaceNearZ),z.initRenderer(oe,!0),z}return(0,Do.Z)(x,b),(0,qr.Z)(x,[{key:"initRenderingContext",value:function(z){this.context.config=z,this.context.renderingContext={root:this.document.documentElement,renderListCurrentFrame:[],unculledEntities:[],renderReasons:new Set,force:!1,dirty:!1}}},{key:"initDefaultCamera",value:function(z,te,re){var oe=this,le=new Xo.CameraContribution;le.clipSpaceNearZ=re,le.setType(lc.EXPLORING,by.DEFAULT).setPosition(z/2,te/2,tx).setFocalPoint(z/2,te/2,0).setOrthographic(z/-2,z/2,te/2,te/-2,qh,qu),le.canvas=this,le.eventEmitter.on(zw.UPDATED,function(){oe.context.renderingContext.renderReasons.add(Kv.CAMERA_CHANGED),Xo.enableSizeAttenuation&&oe.getConfig().renderer.getConfig().enableSizeAttenuation&&oe.updateSizeAttenuation()}),this.context.camera=le}},{key:"updateSizeAttenuation",value:function(){var z=this.getCamera().getZoom();this.document.documentElement.forEach(function(te){Xo.styleValueRegistry.updateSizeAttenuation(te,z)})}},{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 z=this;return this.readyPromise||(this.readyPromise=new Promise(function(te){z.resolveReadyPromise=function(){te(z)}}),this.inited&&this.resolveReadyPromise()),this.readyPromise}},{key:"destroy",value:function(){var z=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,te=arguments.length>1?arguments[1]:void 0;dd.clearCache(),te||this.dispatchEvent(new Qh(Cu.BEFORE_DESTROY)),this.frameId&&this.cancelAnimationFrame(this.frameId);var re=this.getRoot();z&&(this.unmountChildren(re),this.document.destroy(),this.getEventService().destroy()),this.getRenderingService().destroy(),this.getContextService().destroy(),this.context.rBushRoot&&this.context.rBushRoot.clear(),te||this.dispatchEvent(new Qh(Cu.AFTER_DESTROY));var oe=function(ce){ce.currentTarget=null,ce.manager=null,ce.target=null,ce.relatedNode=null};oe(fh),oe(tp),oe(Jp),oe($v),oe(NE),oe(Fh),oe(Xp),oe(Pd),oe(Nf)}},{key:"changeSize",value:function(z,te){this.resize(z,te)}},{key:"resize",value:function(z,te){var re=this.context.config;re.width=z,re.height=te,this.getContextService().resize(z,te);var oe=this.context.camera,le=oe.getProjectionMode();oe.setPosition(z/2,te/2,tx).setFocalPoint(z/2,te/2,0),le===Eg.ORTHOGRAPHIC?oe.setOrthographic(z/-2,z/2,te/2,te/-2,oe.getNear(),oe.getFar()):oe.setAspect(z/te),this.dispatchEvent(new Qh(Cu.RESIZE,{width:z,height:te}))}},{key:"appendChild",value:function(z,te){return this.document.documentElement.appendChild(z,te)}},{key:"insertBefore",value:function(z,te){return this.document.documentElement.insertBefore(z,te)}},{key:"removeChild",value:function(z){return this.document.documentElement.removeChild(z)}},{key:"removeChildren",value:function(){this.document.documentElement.removeChildren()}},{key:"destroyChildren",value:function(){this.document.documentElement.destroyChildren()}},{key:"render",value:function(z){var te=this;z&&(Jp.detail=z,NE.detail=z),this.dispatchEvent(Jp);var re=this.getRenderingService();re.render(this.getConfig(),z,function(){te.dispatchEvent($v)}),this.dispatchEvent(NE)}},{key:"run",value:function(){var z=this,te=function(oe,le){z.render(le),z.frameId=z.requestAnimationFrame(te)};te()}},{key:"initRenderer",value:function(z){var te=this,re=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;if(!z)throw new Error("Renderer is required.");this.inited=!1,this.readyPromise=void 0,this.context.rBushRoot=new Rw,this.context.renderingPlugins=[],this.context.renderingPlugins.push(new qv,new Hy,new Tg([new Gy])),this.loadRendererContainerModule(z),this.context.contextService=new this.context.ContextService((0,Li.Z)((0,Li.Z)({},Xo),this.context)),this.context.renderingService=new jy(Xo,this.context),this.context.eventService=new CC(Xo,this.context),this.context.eventService.init(),this.context.contextService.init?(this.context.contextService.init(),this.initRenderingService(z,re,!0)):this.context.contextService.initAsync().then(function(){te.initRenderingService(z,re)}).catch(function(oe){console.error(oe)})}},{key:"initRenderingService",value:function(z){var te=this,re=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,oe=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;this.context.renderingService.init(function(){te.inited=!0,re?oe?te.requestAnimationFrame(function(){te.dispatchEvent(new Qh(Cu.READY))}):te.dispatchEvent(new Qh(Cu.READY)):te.dispatchEvent(new Qh(Cu.RENDERER_CHANGED)),te.readyPromise&&te.resolveReadyPromise(),re||te.getRoot().forEach(function(le){var ce=le,ge=ce.renderable;ge&&(ge.renderBoundsDirty=!0,ge.boundsDirty=!0,ge.dirty=!0)}),te.mountChildren(te.getRoot()),z.getConfig().enableAutoRendering&&te.run()})}},{key:"loadRendererContainerModule",value:function(z){var te=this,re=z.getPlugins();re.forEach(function(oe){oe.context=te.context,oe.init(Xo)})}},{key:"setRenderer",value:function(z){var te=this.getConfig();if(te.renderer!==z){var re=te.renderer;te.renderer=z,this.destroy(!1,!0),(0,Bo.Z)((re==null?void 0:re.getPlugins())||[]).reverse().forEach(function(oe){oe.destroy(Xo)}),this.initRenderer(z)}}},{key:"setCursor",value:function(z){var te=this.getConfig();te.cursor=z,this.getContextService().applyCursorStyle(z)}},{key:"unmountChildren",value:function(z){var te=this;z.childNodes.forEach(function(re){te.unmountChildren(re)}),this.inited&&(z.isMutationObserved?z.dispatchEvent(tp):(tp.target=z,this.dispatchEvent(tp,!0)),z!==this.document.documentElement&&(z.ownerDocument=null),z.isConnected=!1),z.isCustomElement&&z.disconnectedCallback&&z.disconnectedCallback()}},{key:"mountChildren",value:function(z){var te=this,re=arguments.length>1&&arguments[1]!==void 0?arguments[1]:mS(z);this.inited?z.isConnected||(z.ownerDocument=this.document,z.isConnected=!0,re||(z.isMutationObserved?z.dispatchEvent(fh):(fh.target=z,this.dispatchEvent(fh,!0)))):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: ",z.nodeName),z.childNodes.forEach(function(oe){te.mountChildren(oe,re)}),z.isCustomElement&&z.connectedCallback&&z.connectedCallback()}},{key:"mountFragment",value:function(z){this.mountChildren(z,!1)}},{key:"client2Viewport",value:function(z){return this.getEventService().client2Viewport(z)}},{key:"viewport2Client",value:function(z){return this.getEventService().viewport2Client(z)}},{key:"viewport2Canvas",value:function(z){return this.getEventService().viewport2Canvas(z)}},{key:"canvas2Viewport",value:function(z){return this.getEventService().canvas2Viewport(z)}},{key:"getPointByClient",value:function(z,te){return this.client2Viewport({x:z,y:te})}},{key:"getClientByPoint",value:function(z,te){return this.viewport2Client({x:z,y:te})}}])}(IE);var rx=function(b){function x(){var E;(0,xi.Z)(this,x);for(var z=arguments.length,te=new Array(z),re=0;re90)return this;this.computeMatrix()}return this._getAxes(),this.type===lc.ORBITING||this.type===lc.EXPLORING?this._getPosition():this.type===lc.TRACKING&&this._getFocalPoint(),this._update(),this}},{key:"pan",value:function(z,te){var re=vg(z,te,0),oe=bs(this.position);return Hl(oe,oe,nu(ba(),this.right,re[0])),Hl(oe,oe,nu(ba(),this.up,re[1])),this._setPosition(oe),this.triggerUpdate(),this}},{key:"dolly",value:function(z){var te=this.forward,re=bs(this.position),oe=z*this.dollyingStep,le=this.distance+z*this.dollyingStep;return oe=Math.max(Math.min(le,this.maxDistance),this.minDistance)-this.distance,re[0]+=oe*te[0],re[1]+=oe*te[1],re[2]+=oe*te[2],this._setPosition(re),this.type===lc.ORBITING||this.type===lc.EXPLORING?this._getDistance():this.type===lc.TRACKING&&Hl(this.focalPoint,re,this.distanceVector),this.triggerUpdate(),this}},{key:"cancelLandmarkAnimation",value:function(){this.landmarkAnimationID!==void 0&&this.canvas.cancelAnimationFrame(this.landmarkAnimationID)}},{key:"createLandmark",value:function(z){var te,re,oe,le,ce=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},ge=ce.position,Ae=ge===void 0?this.position:ge,Me=ce.focalPoint,Ue=Me===void 0?this.focalPoint:Me,Xe=ce.roll,$e=ce.zoom,rt=new Xo.CameraContribution;rt.setType(this.type,void 0),rt.setPosition(Ae[0],(te=Ae[1])!==null&&te!==void 0?te:this.position[1],(re=Ae[2])!==null&&re!==void 0?re:this.position[2]),rt.setFocalPoint(Ue[0],(oe=Ue[1])!==null&&oe!==void 0?oe:this.focalPoint[1],(le=Ue[2])!==null&&le!==void 0?le:this.focalPoint[2]),rt.setRoll(Xe!=null?Xe:this.roll),rt.setZoom($e!=null?$e:this.zoom);var ot={name:z,matrix:uu(rt.getWorldTransform()),right:bs(rt.right),up:bs(rt.up),forward:bs(rt.forward),position:bs(rt.getPosition()),focalPoint:bs(rt.getFocalPoint()),distanceVector:bs(rt.getDistanceVector()),distance:rt.getDistance(),dollyingStep:rt.getDollyingStep(),azimuth:rt.getAzimuth(),elevation:rt.getElevation(),roll:rt.getRoll(),relAzimuth:rt.relAzimuth,relElevation:rt.relElevation,relRoll:rt.relRoll,zoom:rt.getZoom()};return this.landmarks.push(ot),ot}},{key:"gotoLandmark",value:function(z){var te=this,re=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},oe=nc(z)?this.landmarks.find(function(kn){return kn.name===z}):z;if(oe){var le=os(re)?{duration:re}:re,ce=le.easing,ge=ce===void 0?"linear":ce,Ae=le.duration,Me=Ae===void 0?100:Ae,Ue=le.easingFunction,Xe=Ue===void 0?void 0:Ue,$e=le.onfinish,rt=$e===void 0?void 0:$e,ot=le.onframe,pt=ot===void 0?void 0:ot,yt=.01;this.cancelLandmarkAnimation();var Ct=oe.position,zt=oe.focalPoint,Wt=oe.zoom,Ht=oe.roll,Qt=Xe||Xo.EasingFunction(ge),Gt,vn=function(){te.setFocalPoint(zt),te.setPosition(Ct),te.setRoll(Ht),te.setZoom(Wt),te.computeMatrix(),te.triggerUpdate(),rt==null||rt()};if(Me===0)return vn();var Sn=function(Kn){Gt===void 0&&(Gt=Kn);var vr=Kn-Gt;if(vr>=Me){vn();return}var er=Qt(vr/Me),Nr=ba(),ei=ba(),Ar=1,Sr=0;$d(Nr,te.focalPoint,zt,er),$d(ei,te.position,Ct,er),Sr=te.roll*(1-er)+Ht*er,Ar=te.zoom*(1-er)+Wt*er,te.setFocalPoint(Nr),te.setPosition(ei),te.setRoll(Sr),te.setZoom(Ar);var Ir=lg(Nr,zt)+lg(ei,Ct);if(Ir<=yt&&Wt===void 0&&Ht===void 0)return vn();te.computeMatrix(),te.triggerUpdate(),vr0&&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 E=this.oldPlayState,z=this.pending?"pending":this.playState;return this.readyPromise&&z!==E&&(z==="idle"?(this.rejectReadyPromise(),this.readyPromise=void 0):E==="pending"?this.resolveReadyPromise():z==="pending"&&(this.readyPromise=void 0)),this.finishedPromise&&z!==E&&(z==="idle"?(this.rejectFinishedPromise(),this.finishedPromise=void 0):z==="finished"?this.resolveFinishedPromise():E==="finished"&&(this.finishedPromise=void 0)),this.oldPlayState=z,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 E=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 z=new ty(null,this,this.currentTime,null);setTimeout(function(){E.oncancel(z)})}}},{key:"reverse",value:function(){this.updatePromises();var E=this.currentTime;this.playbackRate*=-1,this.play(),E!==null&&(this.currentTime=E),this.updatePromises()}},{key:"updatePlaybackRate",value:function(E){this.playbackRate=E}},{key:"targetAnimations",value:function(){var E,z=(E=this.effect)===null||E===void 0?void 0:E.target;return z.getAnimations()}},{key:"markTarget",value:function(){var E=this.targetAnimations();E.indexOf(this)===-1&&E.push(this)}},{key:"unmarkTarget",value:function(){var E=this.targetAnimations(),z=E.indexOf(this);z!==-1&&E.splice(z,1)}},{key:"tick",value:function(E,z){!this._idle&&!this._paused&&(this._startTime===null?z&&(this.startTime=E-this._currentTime/this.playbackRate):this._isFinished||this.tickCurrentTime((E-this._startTime)*this.playbackRate)),z&&(this.currentTimePending=!1,this.fireEvents(E))}},{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(dc)}},{key:"addEventListener",value:function(E,z,te){throw new Error(dc)}},{key:"removeEventListener",value:function(E,z,te){throw new Error(dc)}},{key:"dispatchEvent",value:function(E){throw new Error(dc)}},{key:"commitStyles",value:function(){throw new Error(dc)}},{key:"ensureAlive",value:function(){if(this.playbackRate<0&&this.currentTime===0){var E;this._inEffect=!!((E=this.effect)!==null&&E!==void 0&&E.update(-1))}else{var z;this._inEffect=!!((z=this.effect)!==null&&z!==void 0&&z.update(this.currentTime))}!this._inTimeline&&(this._inEffect||!this._finishedFlag)&&(this._inTimeline=!0,this.timeline.animations.push(this))}},{key:"tickCurrentTime",value:function(E,z){E!==this._currentTime&&(this._currentTime=E,this._isFinished&&!z&&(this._currentTime=this._playbackRate>0?this._totalDuration:0),this.ensureAlive())}},{key:"fireEvents",value:function(E){var z=this;if(this._isFinished){if(!this._finishedFlag){if(this.onfinish){var te=new ty(null,this,this.currentTime,E);setTimeout(function(){z.onfinish&&z.onfinish(te)})}this._finishedFlag=!0}}else{if(this.onframe&&this.playState==="running"){var re=new ty(null,this,this.currentTime,E);this.onframe(re)}this._finishedFlag=!1}}}])}(),sx=4,Sp=.001,ny=1e-7,rm=10,dv=11,wp=1/(dv-1),qp=typeof Float32Array=="function",E0=function(x,E){return 1-3*E+3*x},$p=function(x,E){return 3*E-6*x},A0=function(x){return 3*x},S0=function(x,E,z){return((E0(E,z)*x+$p(E,z))*x+A0(E))*x},Og=function(x,E,z){return 3*E0(E,z)*x*x+2*$p(E,z)*x+A0(E)},Vy=function(x,E,z,te,re){var oe,le,ce=0;do le=E+(z-E)/2,oe=S0(le,te,re)-x,oe>0?z=le:E=le;while(Math.abs(oe)>ny&&++ce=0&&x<=1&&z>=0&&z<=1))throw new Error("bezier x values must be in [0, 1] range");if(x===E&&z===te)return function(ce){return ce};for(var re=qp?new Float32Array(dv):new Array(dv),oe=0;oe=Sp?fv(ge,$e,x,z):rt===0?$e:Vy(ge,Ae,Ae+wp,x,z)};return function(ce){return ce===0||ce===1?ce:S0(le(ce),E,te)}},MC=function(x){return x=x.replace(/([A-Z])/g,function(E){return"-".concat(E.toLowerCase())}),x.charAt(0)==="-"?x.substring(1):x},np=function(x){return Math.pow(x,2)},w0=function(x){return Math.pow(x,3)},ry=function(x){return Math.pow(x,4)},lx=function(x){return Math.pow(x,5)},Ky=function(x){return Math.pow(x,6)},gv=function(x){return 1-Math.cos(x*Math.PI/2)},pv=function(x){return 1-Math.sqrt(1-x*x)},Zy=function(x){return x*x*(3*x-2)},kE=function(x){for(var E,z=4;x<((E=Math.pow(2,--z))-1)/11;);return 1/Math.pow(4,3-z)-7.5625*Math.pow((E*3-2)/22-x,2)},iy=function(x){var E=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],z=(0,Wr.Z)(E,2),te=z[0],re=te===void 0?1:te,oe=z[1],le=oe===void 0?.5:oe,ce=Ah(Number(re),1,10),ge=Ah(Number(le),.1,2);return x===0||x===1?x:-ce*Math.pow(2,10*(x-1))*Math.sin((x-1-ge/(Math.PI*2)*Math.asin(1/ce))*(Math.PI*2)/ge)},om=function(x){var E=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],z=arguments.length>2?arguments[2]:void 0,te=(0,Wr.Z)(E,4),re=te[0],oe=re===void 0?1:re,le=te[1],ce=le===void 0?100:le,ge=te[2],Ae=ge===void 0?10:ge,Me=te[3],Ue=Me===void 0?0:Me;oe=Ah(oe,.1,1e3),ce=Ah(ce,.1,1e3),Ae=Ah(Ae,.1,1e3),Ue=Ah(Ue,.1,1e3);var Xe=Math.sqrt(ce/oe),$e=Ae/(2*Math.sqrt(ce*oe)),rt=$e<1?Xe*Math.sqrt(1-$e*$e):0,ot=1,pt=$e<1?($e*Xe+-Ue)/rt:-Ue+Xe,yt=z?z*x/1e3:x;return $e<1?yt=Math.exp(-yt*$e*Xe)*(ot*Math.cos(rt*yt)+pt*Math.sin(rt*yt)):yt=(ot+pt*yt)*Math.exp(-yt*Xe),x===0||x===1?x:1-yt},ux=function(x){var E=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],z=E,te=(0,Wr.Z)(z,2),re=te[0],oe=re===void 0?10:re,le=te[1],ce=le==="start"?Math.ceil:Math.floor;return ce(Ah(x,0,1)*oe)/oe},yP=function(x){var E=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],z=(0,Wr.Z)(E,4),te=z[0],re=z[1],oe=z[2],le=z[3];return im(te,re,oe,le)(x)},Yy=im(.42,0,1,1),Ng=function(x){return function(E){var z=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],te=arguments.length>2?arguments[2]:void 0;return 1-x(1-E,z,te)}},e0=function(x){return function(E){var z=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],te=arguments.length>2?arguments[2]:void 0;return E<.5?x(E*2,z,te)/2:1-x(E*-2+2,z,te)/2}},Bg=function(x){return function(E){var z=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],te=arguments.length>2?arguments[2]:void 0;return E<.5?(1-x(1-E*2,z,te))/2:(x(E*2-1,z,te)+1)/2}},bS={steps:ux,"step-start":function(x){return ux(x,[1,"start"])},"step-end":function(x){return ux(x,[1,"end"])},linear:function(x){return x},"cubic-bezier":yP,ease:function(x){return yP(x,[.25,.1,.25,1])},in:Yy,out:Ng(Yy),"in-out":e0(Yy),"out-in":Bg(Yy),"in-quad":np,"out-quad":Ng(np),"in-out-quad":e0(np),"out-in-quad":Bg(np),"in-cubic":w0,"out-cubic":Ng(w0),"in-out-cubic":e0(w0),"out-in-cubic":Bg(w0),"in-quart":ry,"out-quart":Ng(ry),"in-out-quart":e0(ry),"out-in-quart":Bg(ry),"in-quint":lx,"out-quint":Ng(lx),"in-out-quint":e0(lx),"out-in-quint":Bg(lx),"in-expo":Ky,"out-expo":Ng(Ky),"in-out-expo":e0(Ky),"out-in-expo":Bg(Ky),"in-sine":gv,"out-sine":Ng(gv),"in-out-sine":e0(gv),"out-in-sine":Bg(gv),"in-circ":pv,"out-circ":Ng(pv),"in-out-circ":e0(pv),"out-in-circ":Bg(pv),"in-back":Zy,"out-back":Ng(Zy),"in-out-back":e0(Zy),"out-in-back":Bg(Zy),"in-bounce":kE,"out-bounce":Ng(kE),"in-out-bounce":e0(kE),"out-in-bounce":Bg(kE),"in-elastic":iy,"out-elastic":Ng(iy),"in-out-elastic":e0(iy),"out-in-elastic":Bg(iy),spring:om,"spring-in":om,"spring-out":Ng(om),"spring-in-out":e0(om),"spring-out-in":Bg(om)},FE=function(x){return MC(x).replace(/^ease-/,"").replace(/(\(|\s).+/,"").toLowerCase().trim()},LC=function(x){return bS[FE(x)]||bS.linear},TC=function(x){return x},U4=1,G4=.5,SI=0;function wI(b,x){return function(E){if(E>=1)return 1;var z=1/b;return E+=x*z,E-E%z}}var xP="\\s*(-?\\d+\\.?\\d*|-?\\.\\d+)\\s*",H4=new RegExp("cubic-bezier\\(".concat(xP,",").concat(xP,",").concat(xP,",").concat(xP,"\\)")),V4=/steps\(\s*(\d+)\s*\)/,K4=/steps\(\s*(\d+)\s*,\s*(start|middle|end)\s*\)/;function UT(b){var x=H4.exec(b);if(x)return im.apply(void 0,(0,Bo.Z)(x.slice(1).map(Number)));var E=V4.exec(b);if(E)return wI(Number(E[1]),SI);var z=K4.exec(b);return z?wI(Number(z[1]),{start:U4,middle:G4,end:SI}[z[2]]):LC(b)}function Z4(b){return Math.abs(Y4(b)/(b.playbackRate||1))}function Y4(b){var x;return b.duration===0||b.iterations===0?0:(b.duration==="auto"?0:Number(b.duration))*((x=b.iterations)!==null&&x!==void 0?x:1)}var CI=0,GT=1,EP=2,bI=3;function X4(b,x,E){if(x===null)return CI;var z=E.endTime;return x=Math.min(E.delay+b+E.endDelay,z)?EP:bI}function Q4(b,x,E,z,te){switch(z){case GT:return x==="backwards"||x==="both"?0:null;case bI:return E-te;case EP:return x==="forwards"||x==="both"?b:null;case CI:return null}}function J4(b,x,E,z,te){var re=te;return b===0?x!==GT&&(re+=E):re+=z/b,re}function q4(b,x,E,z,te,re){var oe=b===1/0?x%1:b%1;return oe===0&&E===EP&&z!==0&&(te!==0||re===0)&&(oe=1),oe}function $4(b,x,E,z){return b===EP&&x===1/0?1/0:E===1?Math.floor(z)-1:Math.floor(z)}function ek(b,x,E){var z=b;if(b!=="normal"&&b!=="reverse"){var te=x;b==="alternate-reverse"&&(te+=1),z="normal",te!==1/0&&te%2!==0&&(z="reverse")}return z==="normal"?E:1-E}function tk(b,x,E){var z=X4(b,x,E),te=Q4(b,E.fill,x,z,E.delay);if(te===null)return null;var re=E.duration==="auto"?0:E.duration,oe=J4(re,z,E.iterations,te,E.iterationStart),le=q4(oe,E.iterationStart,z,E.iterations,te,re),ce=$4(z,E.iterations,le,oe),ge=ek(E.direction,ce,le);return E.currentIteration=ce,E.progress=ge,E.easingFunction(ge)}function nk(b,x,E){var z=rk(b,x),te=ik(z,E);return function(re,oe){if(oe!==null)te.filter(function(ce){return oe>=ce.applyFrom&&oe1)throw new Error("Keyframe offsets must be between 0 and 1.");ge.computedOffset=Me}}else if(Ae==="composite"&&["replace","add","accumulate","auto"].indexOf(Me)===-1)throw new Error("".concat(Me," compositing is not supported"));ge[Ae]=Me}return ge.offset===void 0&&(ge.offset=null),ge.easing===void 0&&(ge.easing=(x==null?void 0:x.easing)||"linear"),ge.composite===void 0&&(ge.composite="auto"),ge}),z=!0,te=-1/0,re=0;re=0&&Number(ce.offset)<=1});function le(){var ce,ge=E,Ae=ge.length;if(E[Ae-1].computedOffset=Number((ce=E[Ae-1].offset)!==null&&ce!==void 0?ce:1),Ae>1){var Me;E[0].computedOffset=Number((Me=E[0].offset)!==null&&Me!==void 0?Me:0)}for(var Ue=0,Xe=Number(E[0].computedOffset),$e=1;$e{!n0.mute&&console.debug(Jy(b))},info:b=>{!n0.mute&&console.info(Jy(b))},warn:b=>{!n0.mute&&console.warn(Jy(b))},error:b=>{!n0.mute&&console.error(Jy(b))}};function OI(b){const{theme:x}=b;if(!x)return{};const E=Qy(IC.THEME,x);return E||(n0.warn(`The theme of ${x} is not registered.`),{})}function ZT(b,x){if(Array.isArray(b)&&b.length===0)return null;const E=Array.isArray(b)?b[0]:b,z=Array.isArray(b)?b.slice(1):x||[];return new Proxy(E,{get(te,re){return typeof te[re]=="function"&&!["onframe","onfinish"].includes(re)?(...oe)=>{te[re](...oe),z.forEach(le=>{var ce;return(ce=le[re])===null||ce===void 0?void 0:ce.call(le,...oe)})}:re==="finished"?Promise.all([E.finished,...z.map(oe=>oe.finished)]):Reflect.get(te,re)},set(te,re,oe){return["onframe","onfinish"].includes(re)||z.forEach(le=>{le[re]=oe}),Reflect.set(te,re,oe)}})}function YT(b){const x=b.reduce((z,te)=>(Object.entries(te).forEach(([re,oe])=>{z[re]===void 0?z[re]=[oe]:z[re].push(oe)}),z),{});Object.entries(x).forEach(([z,te])=>{(te.length!==b.length||te.some(re=>fl(re))||te.every(re=>!["sourceNode","targetNode","childrenNode"].includes(z)&&Vd(re,te[0])))&&delete x[z]});const E=Object.entries(x).reduce((z,[te,re])=>(re.forEach((oe,le)=>{z[le]?z[le][te]=oe:z[le]={[te]:oe}}),z),[]);return b.length!==0&&E.length===0&&E.push({_:0},{_:0}),E}function OC(b){switch(b){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 NI(b,x){const{animation:E}=b;if(E===!1||x===!1)return!1;const z=Object.assign({},yk);return Sh(E)&&Object.assign(z,E),Sh(x)&&Object.assign(z,x),z}function Sk(b){if(typeof b=="string"){const x=Qy(IC.ANIMATION,b);return x||(n0.warn(`The animation of ${b} is not registered.`),[])}return b}function wk(b,x,E,z){var te,re;const{animation:oe}=b;if(oe===!1||z===!1)return[];const le=(te=b==null?void 0:b[x])===null||te===void 0?void 0:te.animation;if(le===!1)return[];const ce=le==null?void 0:le[E];if(ce===!1)return[];const ge=(re=OI(b)[x])===null||re===void 0?void 0:re.animation,Ae=(Ue=[])=>Sk(Ue).map(Xe=>Object.assign(Object.assign(Object.assign(Object.assign({},xk),Sh(oe)&&oe),Xe),Sh(z)&&z));if(ce)return Ae(ce);if(!ge)return[];const Me=ge[E];return Me===!1?[]:Ae(Me)}function BI(b,x,E,z=[]){if(!z&&b===0&&x===0&&E===0)return null;if(Array.isArray(z)){let re=-1;const oe=[];for(let le=0;le{if(!E.length)return null;const[z,te]=x,re=ge=>{var Ae;if(ge){const Me=b.getShape(ge);if(!Me)return null;const Ue=`get${AP(ge)}Style`,Xe=((Ae=b==null?void 0:b[Ue])===null||Ae===void 0?void 0:Ae.bind(b))||(ot=>ot),$e=(Xe==null?void 0:Xe(z))||{},rt=(Xe==null?void 0:Xe(te))||{};return{shape:Me,fromStyle:$e,toStyle:rt}}else return{shape:b,fromStyle:z,toStyle:te}};let oe;const le=E.map(ge=>{var{fields:Ae,shape:Me,states:Ue}=ge,Xe=Ck(ge,["fields","shape","states"]);const $e=re(Me);if(!$e)return null;const{shape:rt,fromStyle:ot,toStyle:pt}=$e,yt=[{},{}];if(Ae.forEach(zt=>{var Wt,Ht;Object.assign(yt[0],{[zt]:(Wt=ot[zt])!==null&&Wt!==void 0?Wt:OC(zt)}),Object.assign(yt[1],{[zt]:(Ht=pt[zt])!==null&&Ht!==void 0?Ht:OC(zt)})}),yt.some(zt=>Object.keys(zt).some(Wt=>["x","y","z"].includes(Wt)))){const{x:zt=0,y:Wt=0,z:Ht,transform:Qt=""}=rt.attributes||{};yt.forEach(Gt=>{var vn,Sn,kn;Gt.transform=BI((vn=Gt.x)!==null&&vn!==void 0?vn:zt,(Sn=Gt.y)!==null&&Sn!==void 0?Sn:Wt,(kn=Gt.z)!==null&&kn!==void 0?kn:Ht,Qt)})}const Ct=rt.animate(YT(yt),Xe);return Me===void 0&&(oe=Ct),Ct}).filter(Boolean),ce=oe||(le==null?void 0:le[0]);return ce?ZT(ce,le.filter(ge=>ge!==ge)):null},Pk=[{fields:["opacity"]}],Mk=[{fields:["x","y"]}],RI=[{fields:["x","y"]}],Lk=RI,kI=[{fields:["sourceNode","targetNode"]}],Tk=kI,FI=[{fields:["childrenNode","x","y"]}],Dk=FI,ZX=[{fields:["childrenNode","x","y"]}];var Ik=Object.prototype.hasOwnProperty;function Ok(b,x){if(!x||!nf(b))return{};for(var E={},z=_s(x)?x:function(le){return le[x]},te,re=0;rex?(z&&(clearTimeout(z),z=null),le=Ae,oe=b.apply(te,re),z||(te=re=null)):!z&&E.trailing!==!1&&(z=setTimeout(ce,Me)),oe};return ge.cancel=function(){clearTimeout(z),le=0,z=te=re=null},ge},XT=function(b){if(typeof b!="object"||b===null)return b;var x;if(nf(b)){x=[];for(var E=0,z=b.length;Etypeof x=="number"):!1}function oy(b,x,E){return b>=x&&b<=E}function am(b=0){if(Array.isArray(b)){const[x=0,E=x,z=x,te=E]=b;return[x,E,z,te]}return[b,b,b,b]}function Rk(b=0){const x=am(b);return x[0]+x[2]}function XX(b=0){const x=am(b);return x[1]+x[3]}function ay(b){return b.max[0]-b.min[0]}function sy(b){return b.max[1]-b.min[1]}function hx(b){return[ay(b),sy(b)]}function dx(b,x){const E=LS(b)?QT(b):b.getShape("key").getBounds();return x?fx(E,x):E}function QT(b){const[x,E,z=0]=b,te=new Cc;return te.setMinMax([x,E,z],[x,E,z]),te}function fx(b,x){const[E,z,te,re]=am(x),[oe,le,ce]=b.min,[ge,Ae,Me]=b.max,Ue=new Cc;return Ue.setMinMax([oe-re,le-E,ce],[ge+z,Ae+te,Me]),Ue}function NC(b){if(b.length===0)return new Cc;if(b.length===1)return b[0];const x=new Cc;x.setMinMax(b[0].min,b[0].max);for(let E=1;E=oe&&te<=ce&&z>=le&&re<=ge}function sm(b,x){return oy(b[0],x.min[0],x.max[0])&&oy(b[1],x.min[1],x.max[1])}function zI(b,x,E=!1){const{min:[z,te],max:[re,oe]}=x,le=(b[1]===te||b[1]===oe)&&(E||oy(b[0],z,re)),ce=(b[0]===z||b[0]===re)&&(E||oy(b[1],te,oe));return le||ce}function Fk(b,x){return!sm(b,x)}function CP(b,x){const{center:E}=x;return b[0]===E[0]&&b[1]===E[1]}function BC(b,x){const[E,z]=b,[te,re]=x.min,[oe,le]=x.max,ce=E-te,ge=oe-E,Ae=z-re,Me=le-z,Ue=Math.min(ce,ge,Ae,Me);return Ue===ce?"left":Ue===ge?"right":Ue===Ae?"top":Ue===Me?"bottom":"left"}function zE(b,x){const E=MS(b);if(sm(b,x))switch(BC(b,x)){case"left":E[0]=x.min[0];break;case"right":E[0]=x.max[0];break;case"top":E[1]=x.min[1];break;case"bottom":E[1]=x.max[1];break}else{const[z,te]=b,[re,oe]=x.min,[le,ce]=x.max;E[0]=oy(z,re,le)?z:z0&&Xe(Wt[0])}},pt=0;pt0;)Ue.push(ce.pop());oe.push(Ue)}}return oe},GI=function(x){for(var E=x.nodes,z=E===void 0?[]:E,te=x.edges,re=te===void 0?[]:te,oe=[],le={},ce={},ge={},Ae=[],Me=0,Ue=function ot(pt){ce[pt.id]=Me,ge[pt.id]=Me,Me+=1,oe.push(pt),le[pt.id]=!0;for(var yt=mv(pt.id,re,"target").filter(function(Qt){return z.map(function(Gt){return Gt.id}).indexOf(Qt)>-1}),Ct=function(Gt){var vn=yt[Gt];if(!ce[vn]&&ce[vn]!==0){var Sn=z.filter(function(kn){return kn.id===vn});Sn.length>0&&ot(Sn[0]),ge[pt.id]=Math.min(ge[pt.id],ge[vn])}else le[vn]&&(ge[pt.id]=Math.min(ge[pt.id],ce[vn]))},zt=0;zt0;){var Ht=oe.pop();if(le[Ht.id]=!1,Wt.push(Ht),Ht===pt)break}Wt.length>0&&Ae.push(Wt)}},Xe=0,$e=z;Xe<$e.length;Xe++){var rt=$e[Xe];!ce[rt.id]&&ce[rt.id]!==0&&Ue(rt)}return Ae};function HI(b,x){return x?GI(b):Qk(b)}var RC=function(x){var E={},z=x.nodes,te=z===void 0?[]:z,re=x.edges,oe=re===void 0?[]:re;return te.forEach(function(le){E[le.id]={degree:0,inDegree:0,outDegree:0}}),oe.forEach(function(le){E[le.source].degree++,E[le.source].outDegree++,E[le.target].degree++,E[le.target].inDegree++}),E},JT=RC,Jk=function(x,E){var z=RC(x);return z[E]?RC(x)[E].inDegree:0},qk=function(x,E){var z=RC(x);return z[E]?RC(x)[E].outDegree:0};function $k(b){b===void 0&&(b={});var x=b,E=function(){},z=function(){var te={};return function(re){var oe=re.next;return te[oe]?!1:(te[oe]=!0,!0)}}();return x.allowTraversal=b.allowTraversal||z,x.enter=b.enter||E,x.leave=b.leave||E,x}function VI(b,x,E,z,te){te===void 0&&(te=!0),z.enter({current:x,previous:E});var re=b.edges,oe=re===void 0?[]:re;mv(x,oe,te?"target":void 0).forEach(function(le){z.allowTraversal({previous:E,current:x,next:le})&&VI(b,le,x,z,te)}),z.leave({current:x,previous:E})}function KI(b,x,E,z){z===void 0&&(z=!0),VI(b,x,"",$k(E),z)}var eF=function(x){var E=null,z=x.nodes,te=z===void 0?[]:z,re={},oe={},le={},ce={};te.forEach(function(Me){oe[Me.id]=Me});for(var ge={enter:function(Ue){var Xe=Ue.current,$e=Ue.previous;if(le[Xe]){E={};for(var rt=Xe,ot=$e;ot!==Xe;)E[rt]=ot,rt=ot,ot=re[ot];E[rt]=ot}else le[Xe]=Xe,delete oe[Xe],re[Xe]=$e},leave:function(Ue){var Xe=Ue.current;ce[Xe]=Xe,delete le[Xe]},allowTraversal:function(Ue){var Xe=Ue.next;return E?!1:!ce[Xe]}};Object.keys(oe).length;){var Ae=Object.keys(oe)[0];KI(x,Ae,ge)}return E},ZI=function(x,E,z){var te,re;z===void 0&&(z=!0);for(var oe=[],le=HI(x,!1),ce=0,ge=le;ce0;)for(var ot=Xe.pop(),pt=ot.id,yt=mv(pt,x.edges),Ct=function(Ht){var Qt,Gt=yt[Ht],vn=x.nodes.find(function(Nr){return Nr.id===Gt});if(Gt===pt)oe.push((Qt={},Qt[Gt]=ot,Qt));else if(!(Gt in rt))$e[Gt]=ot,Xe.push(vn),rt[Gt]=new Set([ot]);else if(!rt[pt].has(vn)){for(var Sn=!0,kn=[vn,ot],Kn=$e[pt];rt[Gt].size&&!rt[Gt].has(Kn)&&(kn.push(Kn),Kn!==$e[Kn.id]);)Kn=$e[Kn.id];if(kn.push(Kn),E&&z?(Sn=!1,kn.findIndex(function(Nr){return E.indexOf(Nr.id)>-1})>-1&&(Sn=!0)):E&&!z&&kn.findIndex(function(Nr){return E.indexOf(Nr.id)>-1})>-1&&(Sn=!1),Sn){for(var vr={},er=1;er0;){var er=vr.pop();re.has(er)&&(re.delete(er),oe[er.id].forEach(function(Nr){vr.push(Nr)}),oe[er.id].clear())}},Me=function kn(Kn,vr,er){var Nr=!1;if(E&&z===!1&&E.indexOf(Kn.id)>-1)return Nr;te.push(Kn),re.add(Kn);for(var ei=er[Kn.id],Ar=0;Ar-1});Mo-1)?le.push((vr={},vr[wi.id]=wi,vr)):Cr[wi.id].push(ge[eo])}}return{component:si,adjList:Cr,minIdx:Nr}},Ct=0;Ct=Ct}),Wt=GI({nodes:zt,edges:x.edges}).filter(function(kn){return kn.length>1});if(Wt.length===0)break;var Ht=yt(Wt),Qt=Ht.minIdx,Gt=Ht.adjList,vn=Ht.component;if(vn.length>1){vn.forEach(function(kn){oe[kn.id]=new Set});var Sn=ce[Qt];if(E&&z&&E.indexOf(Sn.id)===-1)return le;Me(Sn,Sn,Gt),Ct=Qt+1}else break}return le},tF=function(x,E,z,te){return te===void 0&&(te=!0),E?YI(x,z,te):ZI(x,z,te)},XI=eF,nF={}.toString,rF=function(b,x){return nF.call(b)==="[object "+x+"]"},MP=rF,qT=function(b){return MP(b,"Function")},$T=function(b){return Array.isArray?Array.isArray(b):MP(b,"Array")},iF=function(b){var x=typeof b;return b!==null&&x==="object"||x==="function"};function oF(b,x){if(b){var E;if($T(b))for(var z=0,te=b.length;z-1;)sF.call(b,re,1);return b},gQ=null,uF=Array.prototype.splice,pQ=function(x,E){if(!isArrayLike(x))return[];for(var z=x?E.length:0,te=z-1;z--;){var re=void 0,oe=E[z];(z===te||oe!==re)&&(re=oe,uF.call(x,oe,1))}return x},vQ=null,mQ=function(b,x,E){if(!isArray(b)&&!isPlainObject(b))return b;var z=E;return each(b,function(te,re){z=x(z,te,re)}),z},yQ=null,xQ=function(b,x){var E=[];if(!isArrayLike(b))return E;for(var z=-1,te=[],re=b.length;++zre[le])return 1;if(te[le]0},ZQ=null,YQ=function(b,x){if(isArray(b)){for(var E,z=-1/0,te=0;tez&&(E=re,z=oe)}return E}},XQ=function(b,x){if(isArray(b)){for(var E,z=1/0,te=0;tele&&Ae>le);)if(ce.push(ge),le-=Ae,oe=oe.substr(te),!oe)return ce.join("");for(;ge=oe.substr(0,1),Ae=measureTextWidth(ge,E),!(Ae+re>le);)if(ce.push(ge),le-=Ae,oe=oe.substr(1),!oe)return ce.join("");return""+ce.join("")+z},NJ=function(){function b(){this.map={}}return b.prototype.has=function(x){return this.map[x]!==void 0},b.prototype.get=function(x,E){var z=this.map[x];return z===void 0?E:z},b.prototype.set=function(x,E){this.map[x]=E},b.prototype.clear=function(){this.map={}},b.prototype.delete=function(x){delete this.map[x]},b.prototype.size=function(){return Object.keys(this.map).length},b}(),BJ=null,PF=function(x,E,z){for(var te=1/0,re,oe=0;oeMe[Wt.id]+Kn?(Me[kn]=Me[Wt.id]+Kn,Ue[kn]=[Wt.id]):Me[kn]===Me[Wt.id]+Kn&&Ue[kn].push(Wt.id)})},rt=0;rt0&&Ae.length>0;){var Xe=Ae[Ae.length-1];if(Xe.length){var $e=Xe.shift();$e&&(ce.push($e),ge[$e]=!0,Ue=te?mv($e,le,"target"):mv($e,le),Ae.push(Ue.filter(function(pt){return!ge[pt]})))}else{var rt=ce.pop();ge[rt]=!1,Ae.pop();continue}if(ce[ce.length-1]===z){var ot=ce.map(function(yt){return yt});Me.push(ot);var rt=ce.pop();ge[rt]=!1,Ae.pop()}}return Me},TF=function(x,E){for(var z=bP(x,E),te=[],re=z.length,oe=0;oete[oe][ce]+te[ce][le]&&(te[oe][le]=te[oe][ce]+te[ce][le]);return te},o5=TF,DF=function(x,E,z,te){E===void 0&&(E=!1),z===void 0&&(z="weight"),te===void 0&&(te=1e3);var re=x.nodes,oe=re===void 0?[]:re,le=x.edges,ce=le===void 0?[]:le,ge={},Ae={};oe.forEach(function(zt,Wt){var Ht=UI();zt.clusterId=Ht,ge[Ht]={id:Ht,nodes:[zt]},Ae[zt.id]={node:zt,idx:Wt}});var Me=bP(x,E),Ue=[],Xe={};Me.forEach(function(zt,Wt){var Ht=0,Qt=oe[Wt].id;Xe[Qt]={},zt.forEach(function(Gt,vn){if(Gt){Ht+=Gt;var Sn=oe[vn].id;Xe[Qt][Sn]=Gt}}),Ue.push(Ht)});for(var $e=0,rt=function(){var Wt=!1;if(oe.forEach(function(Ht){var Qt={};Object.keys(Xe[Ht.id]).forEach(function(Nr){var ei=Xe[Ht.id][Nr],Ar=Ae[Nr].node,Sr=Ar.clusterId;Qt[Sr]||(Qt[Sr]=0),Qt[Sr]+=ei});var Gt=-1/0,vn=[];if(Object.keys(Qt).forEach(function(Nr){Gt=0&&vn.splice(Sn,1),vn&&vn.length){Wt=!0;var kn=ge[Ht.clusterId],Kn=kn.nodes.indexOf(Ht);kn.nodes.splice(Kn,1);var vr=Math.floor(Math.random()*vn.length),er=ge[vn[vr]];er.nodes.push(Ht),Ht.clusterId=er.id}}}),!Wt)return"break";$e++};$e0&&Gt>vn&&Gt-vnvn&&(kn=Me.map(function(Ir){return{node:Ir,clusterId:Ir.clusterId}}),Kn=kC(yt),vn=Gt),vr||Sn>100)break;Sn++,Object.keys(yt).forEach(function(Ir){var si=0;Xe.forEach(function(Cr){var wi=Cr.source,Mo=Cr.target,Po=Ct[wi].node.clusterId,eo=Ct[Mo].node.clusterId;(Po===Ir&&eo!==Ir||eo===Ir&&Po!==Ir)&&(si=si+(Cr[z]||1))}),yt[Ir].sumTot=si}),Me.forEach(function(Ir,si){var Cr=yt[Ir.clusterId],wi=0,Mo,Po=Wt[si]/(2*Qt),eo=0,Ui=Cr.nodes;Ui.forEach(function(rl){var gl=Ct[rl.id].idx;eo+=zt[si][gl]||0});var fo=eo-Cr.sumTot*Po,Uo=Ui.filter(function(rl){return rl.id!==Ir.id}),pa=[];Uo.forEach(function(rl,gl){pa[gl]=$e[rl.originIndex]});var Ga=s5(Uo,$e)*ge,kl=Ht[Ir.id];if(Object.keys(kl).forEach(function(rl){var gl=Ct[rl].node,fu=gl.clusterId;if(fu!==Ir.clusterId){var $l=yt[fu],Xa=$l.nodes;if(!(!Xa||!Xa.length)){var ms=0;Xa.forEach(function(cl){var Hs=Ct[cl.id].idx;ms+=zt[si][Hs]||0});var $o=ms-$l.sumTot*Po,va=Xa.concat([Ir]),Oa=[];va.forEach(function(cl,Hs){Oa[Hs]=$e[cl.originIndex]});var js=s5(va,$e)*ge,aa=$o-fo;re&&(aa=$o+js-(fo+Ga)),aa>wi&&(wi=aa,Mo=$l)}}}),wi>0){Mo.nodes.push(Ir);var al=Ir.clusterId;Ir.clusterId=Mo.id;var Fa=Cr.nodes.indexOf(Ir);Cr.nodes.splice(Fa,1);var tl=0,Ps=0;Xe.forEach(function(rl){var gl=rl.source,fu=rl.target,$l=Ct[gl].node.clusterId,Xa=Ct[fu].node.clusterId;($l===Mo.id&&Xa!==Mo.id||Xa===Mo.id&&$l!==Mo.id)&&(tl=tl+(rl[z]||1)),($l===al&&Xa!==al||Xa===al&&$l!==al)&&(Ps=Ps+(rl[z]||1))}),Mo.sumTot=tl,Cr.sumTot=Ps}})}var er={},Nr=0;Object.keys(Kn).forEach(function(Ir){var si=Kn[Ir];if(!si.nodes||!si.nodes.length){delete Kn[Ir];return}var Cr=String(Nr+1);Cr!==Ir&&(si.id=Cr,si.nodes=si.nodes.map(function(wi){return{id:wi.id,clusterId:Cr}}),Kn[Cr]=si,er[Ir]=Cr,delete Kn[Ir],Nr++)}),kn.forEach(function(Ir){var si=Ir.node,Cr=Ir.clusterId;si&&(si.clusterId=Cr,si.clusterId&&er[si.clusterId]&&(si.clusterId=er[si.clusterId]))});var ei=[],Ar={};Xe.forEach(function(Ir){var si=Ir.source,Cr=Ir.target,wi=Ir[z]||1,Mo=Ct[si].node.clusterId,Po=Ct[Cr].node.clusterId;if(!(!Mo||!Po)){var eo="".concat(Mo,"---").concat(Po);if(Ar[eo])Ar[eo].weight+=wi,Ar[eo].count++;else{var Ui={source:Mo,target:Po,weight:wi,count:1};Ar[eo]=Ui,ei.push(Ui)}}});var Sr=[];return Object.keys(Kn).forEach(function(Ir){Sr.push(Kn[Ir])}),{clusters:Sr,clusterEdges:ei}},a3=FF,_F=function(x,E,z,te,re,oe,le,ce){return E===void 0&&(E=!1),z===void 0&&(z="weight"),te===void 0&&(te=1e-4),re===void 0&&(re=void 0),oe===void 0&&(oe=[]),le===void 0&&(le=["id"]),ce===void 0&&(ce=1),a3(x,E,z,te,!0,re,oe,le,ce)},zF=_F,jF=function(x,E){var z;E===void 0&&(E=1);for(var te=kC(x),re=te.nodes,oe=re===void 0?[]:re,le=te.edges,ce=le===void 0?[]:le,ge=function(){var Ue=JT({nodes:oe,edges:ce}),Xe=Object.keys(Ue);Xe.sort(function(ot,pt){var yt,Ct;return((yt=Ue[ot])===null||yt===void 0?void 0:yt.degree)-((Ct=Ue[pt])===null||Ct===void 0?void 0:Ct.degree)});var $e=Xe[0];if(!oe.length||((z=Ue[$e])===null||z===void 0?void 0:z.degree)>=E)return"break";var rt=oe.findIndex(function(ot){return ot.id===$e});oe.splice(rt,1),ce=ce.filter(function(ot){return!(ot.source===$e||ot.target===$e)})};;){var Ae=ge();if(Ae==="break")break}return{nodes:oe,edges:ce}},WF=jF,s3=function(x,E,z){var te=[];switch(x){case lm.EuclideanDistance:te=E[z];break;default:te=[];break}return te},UF=function(x,E,z,te,re,oe){E===void 0&&(E=3),z===void 0&&(z=void 0),te===void 0&&(te=[]),re===void 0&&(re=["id"]),oe===void 0&&(oe=lm.EuclideanDistance);var le=x.nodes,ce=le===void 0?[]:le,ge=x.edges,Ae=ge===void 0?[]:ge,Me={clusters:[{id:"0",nodes:ce}],clusterEdges:[]};if(oe===lm.EuclideanDistance&&!ce.every(function(Cr){return Cr.hasOwnProperty(z)}))return Me;var Ue=[],Xe=[];if(oe===lm.EuclideanDistance&&(Ue=IP(ce,z),Xe=OP(Ue,te,re)),!Xe.length)return Me;for(var $e=t5(Xe.map(function(Cr){return Cr.join("")})),rt=Math.min(E,ce.length,$e.length),ot=0;otWt&&!pt.find(function(Uo){return CF(Uo,s3(oe,Xe,ce[Mo].originIndex))})&&(Wt=fo,Ht=Mo)}},Gt=0;Gt=0;er--)Ct[Number(ce[ot].clusterId)][er].id===ce[ot].id&&Ct[Number(ce[ot].clusterId)].splice(er,1);ce[ot].clusterId=String(Sn),Ct[Sn].push(ce[ot])}}for(var Nr=!1,ot=0;ot=1e3)break}var Ir=[],si={};return Ae.forEach(function(Cr){var wi,Mo,Po=Cr.source,eo=Cr.target,Ui=(wi=ce.find(function(Ga){return Ga.id===Po}))===null||wi===void 0?void 0:wi.clusterId,fo=(Mo=ce.find(function(Ga){return Ga.id===eo}))===null||Mo===void 0?void 0:Mo.clusterId,Uo="".concat(Ui,"---").concat(fo);if(si[Uo])si[Uo].count++;else{var pa={source:Ui,target:fo,count:1};si[Uo]=pa,Ir.push(pa)}}),{clusters:Ct,clusterEdges:Ir}},GF=UF,HF=function(x,E){var z=new yv(E),te=z.norm2(),re=new yv(x),oe=re.norm2(),le=z.dot(re),ce=te*oe,ge=ce?le/ce:0;return ge},l3=HF,VF=function(x,E,z,te,re){x===void 0&&(x=[]),z===void 0&&(z=void 0),te===void 0&&(te=[]),re===void 0&&(re=[]);var oe=kC(x.filter(function(Ue){return Ue.id!==E.id})),le=x.findIndex(function(Ue){return Ue.id===E.id}),ce=IP(x,z),ge=OP(ce,te,re),Ae=ge[le],Me=[];return oe.forEach(function(Ue,Xe){if(Ue.id!==E.id){var $e=ge[Xe],rt=l3($e,Ae);Me.push(rt),Ue.cosineSimilarity=rt}}),oe.sort(function(Ue,Xe){return Xe.cosineSimilarity-Ue.cosineSimilarity}),{allCosineSimilarity:Me,similarNodes:oe}},KF=VF,ZF=function(){function b(x){this.count=x.length,this.parent={};for(var E=0,z=x;E0&&(this.list[0]=E,this.moveDown(0)),x},b.prototype.insert=function(x){if(x!==null){this.list.push(x);var E=this.list.length-1;return this.moveUp(E),!0}return!1},b.prototype.moveUp=function(x){for(var E=this.getParent(x);x&&x>0&&this.compareFn(this.list[E],this.list[x])>0;){var z=this.list[E];this.list[E]=this.list[x],this.list[x]=z,x=E,E=this.getParent(x)}},b.prototype.moveDown=function(x){var E,z=x,te=this.getLeft(x),re=this.getRight(x),oe=this.list.length;te!==null&&te0?z=te:re!==null&&re0&&(z=re),x!==z&&(E=[this.list[z],this.list[x]],this.list[x]=E[0],this.list[z]=E[1],this.moveDown(z))},b}(),JF=QF,qF=function(x,E){var z=[],te=x.nodes,re=te===void 0?[]:te,oe=x.edges,le=oe===void 0?[]:oe;if(re.length===0)return z;var ce=re[0],ge=new Set;ge.add(ce);var Ae=function(ot,pt){return E?ot.weight-pt.weight:0},Me=new JF(Ae);for(PP(ce.id,le).forEach(function(rt){Me.insert(rt)});!Me.isEmpty();){var Ue=Me.delMin(),Xe=Ue.source,$e=Ue.target;ge.has(Xe)&&ge.has($e)||(z.push(Ue),ge.has(Xe)||(ge.add(Xe),PP(Xe,le).forEach(function(rt){Me.insert(rt)})),ge.has($e)||(ge.add($e),PP($e,le).forEach(function(rt){Me.insert(rt)})))}return z},u3=function(x,E){var z=[],te=x.nodes,re=te===void 0?[]:te,oe=x.edges,le=oe===void 0?[]:oe;if(re.length===0)return z;var ce=le.map(function(Xe){return Xe});E&&ce.sort(function(Xe,$e){return Xe.weight-$e.weight});for(var ge=new YF(re.map(function(Xe){return Xe.id}));ce.length>0;){var Ae=ce.shift(),Me=Ae.source,Ue=Ae.target;ge.connected(Me,Ue)||(z.push(Ae),ge.union(Me,Ue))}return z},$F=function(x,E,z){var te={prim:qF,kruskal:u3};return z?te[z](x,E):u3(x,E)},e_=$F,t_=function(x,E,z){typeof E!="number"&&(E=1e-6),typeof z!="number"&&(z=.85);for(var te=1,re=0,oe=1e3,le=x.nodes,ce=le===void 0?[]:le,ge=x.edges,Ae=ge===void 0?[]:ge,Me=ce.length,Ue,Xe={},$e={},rt=0;rt0&&te>E;){re=0;for(var rt=0;rt0&&(Ue+=$e[Wt]/Ht)}Xe[pt]=z*Ue,re+=Xe[pt]}}re=(1-re)/Me,te=0;for(var rt=0;rt=0;z--){var te=this.dfsEdgeList[z],re=te.fromNode,oe=te.toNode;reXe||te.hasNode(oe[Ue.to])||(E.labelCt;Wt--){var Ht=zt(Wt);if(Ht==="break")break}if(pt){var Qt=x.findMinLabel(ot);oe.dfsEdgeList.push(new jE(rt,yt,ly,Qt.edgeLabel,ly));var Gt=oe.dfsEdgeList.length-1;return x.dfsCode.dfsEdgeList[Gt]!==oe.dfsEdgeList[Gt]?!1:Me(ot[Qt.edgeLabel].projected)}var vn={};pt=!1;var Sn=0;Ue.forEach(function(ei){var Ar=new BP(ei),Sr=x.findForwardPureEdges(te,Ar.edges[Xe[0]],$e,Ar);Sr.length>0&&(pt=!0,Sn=rt,Sr.forEach(function(Ir){var si="".concat(Ir.label,"-").concat(re[Ir.to].label);vn[si]||(vn[si]={projected:[],edgeLabel:Ir.label,nodeLabel2:re[Ir.to].label}),vn[si].projected.push({graphId:te.id,edge:Ir,preNode:ei})}))});for(var kn=Xe.length,Kn=function(Ar){if(pt)return"break";var Sr=Xe[Ar];Ue.forEach(function(Ir){var si=new BP(Ir),Cr=x.findForwardRmpathEdges(te,si.edges[Sr],$e,si);Cr.length>0&&(pt=!0,Sn=oe.dfsEdgeList[Sr].fromNode,Cr.forEach(function(wi){var Mo="".concat(wi.label,"-").concat(re[wi.to].label);vn[Mo]||(vn[Mo]={projected:[],edgeLabel:wi.label,nodeLabel2:re[wi.to].label}),vn[Mo].projected.push({graphId:te.id,edge:wi,preNode:Ir})}))})},Wt=0;Wt=0;$e--){var rt=E.findBackwardEdge(Me,Xe.edges[re[$e]],Xe.edges[re[0]],Xe);if(rt){var ot="".concat(E.dfsCode.dfsEdgeList[re[$e]].fromNode,"-").concat(rt.label);ge[ot]||(ge[ot]={projected:[],toNodeId:E.dfsCode.dfsEdgeList[re[$e]].fromNode,edgeLabel:rt.label}),ge[ot].projected.push({graphId:Ae.graphId,edge:rt,preNode:Ae})}}if(!(te>=E.maxNodeNum)){var pt=E.findForwardPureEdges(Me,Xe.edges[re[0]],le,Xe);pt.forEach(function(Ct){var zt="".concat(oe,"-").concat(Ct.label,"-").concat(Ue[Ct.to].label);ce[zt]||(ce[zt]={projected:[],fromNodeId:oe,edgeLabel:Ct.label,nodeLabel2:Ue[Ct.to].label}),ce[zt].projected.push({graphId:Ae.graphId,edge:Ct,preNode:Ae})});for(var yt=function(zt){var Wt=E.findForwardRmpathEdges(Me,Xe.edges[re[zt]],le,Xe);Wt.forEach(function(Ht){var Qt="".concat(E.dfsCode.dfsEdgeList[re[zt]].fromNode,"-").concat(Ht.label,"-").concat(Ue[Ht.to].label);ce[Qt]||(ce[Qt]={projected:[],fromNodeId:E.dfsCode.dfsEdgeList[re[zt]].fromNode,edgeLabel:Ht.label,nodeLabel2:Ue[Ht.to].label}),ce[Qt].projected.push({graphId:Ae.graphId,edge:Ht,preNode:Ae})})},$e=0;$eCt){var zt=Ct;Ct=yt,yt=zt}var Wt=pt.label,Ht="".concat(ge,"-").concat(yt,"-").concat(Wt,"-").concat(Ct),Qt="".concat(yt,"-").concat(Wt,"-").concat(Ct);if(!oe[Qt]){var Gt=oe[Qt]||0;Gt++,oe[Qt]=Gt}ce[Ht]={graphId:ge,nodeLabel1:yt,edgeLabel:Wt,nodeLabel2:Ct}})})}),Object.keys(re).forEach(function(ge){var Ae=re[ge];if(!(Ae2*E)););if(ot<2*E&&(le["".concat(Ae,"-").concat(rt)]={start:Ae,end:rt,distance:re[Ae][rt]},Me++,ce++,ce>=z))return le;if(Ue++,Ue>2*E)break}if(MeUe&&(ce=Ue);var Xe=z[Me.id].inDegree;ge>Xe&&(ge=Xe);var $e=z[Me.id].outDegree;Ae>$e&&(Ae=$e)}),x[E]={degree:ce,inDegree:ge,outDegree:Ae}),{minPatternNodeLabelDegree:ce,minPatternNodeLabelInDegree:ge,minPatternNodeLabelOutDegree:Ae}},d_=function(x,E,z,te,re,oe,le){var ce;if(z===void 0&&(z=!1),oe===void 0&&(oe="cluster"),le===void 0&&(le="cluster"),!(!x||!x.nodes)){var ge=x.nodes.length;if(ge){var Ae=o5(x,z),Me=o5(E,z),Ue=A3(x.nodes,Ae,z),Xe=A3(E.nodes,Me,z),$e=x3(x.nodes,oe),rt=$e.nodeMap,ot=$e.nodeLabelMap,pt=x3(E.nodes,oe),yt=pt.nodeMap,Ct=pt.nodeLabelMap;E3(x.edges,le,rt);var zt=E3(E.edges,le,yt).edgeLabelMap,Wt=[];Me==null||Me.forEach(function(ms){Wt=Wt.concat(ms)}),re||(re=Math.max.apply(Math,(0,wn.ev)((0,wn.ev)([],Wt,!1),[2],!1))),te||(te=re);var Ht=m3(x,Ae,oe,te),Qt=m3(E,Me,oe,te),Gt=Math.min(100,ge*(ge-1)/2),vn=u_(te,ge,Gt,Ht,Ae),Sn=RP(vn,Ht,x),kn=10,Kn=1,vr=1,er=4,Nr={graphs:Sn,nodeLabelProp:oe,edgeLabelProp:le,minSupport:Kn,minNodeNum:vr,maxNodeNum:er,directed:z},ei=l_(Nr).slice(0,kn),Ar=ei.length,Sr=[];ei.forEach(function(ms,$o){Sr[$o]={},Object.keys(Sn).forEach(function(va){var Oa=Sn[va],js=kP(Oa,ms,oe,le);Sr[$o][va]=js})});var Ir=c_(Sr,Ar,ei),si=Ir.structure,Cr=Ir.structureCountMap,wi=E.nodes[0],Mo=[],Po=(ce=E.nodes[0])===null||ce===void 0?void 0:ce[oe],eo=-1/0;E.nodes.forEach(function(ms){var $o=ms[oe],va=ot[$o];(va==null?void 0:va.length)>eo&&(eo=va.length,Mo=va,Po=$o,wi=ms)});var Ui={},fo={},Uo={},pa={},Ga={},kl={};Object.keys(Ct).forEach(function(ms,$o){Ga[ms]=[],z&&(kl[ms]=[]);var va=-1/0,Oa=Ct[ms],js={};Oa.forEach(function(hu){var bu=Xe["".concat(wi.id,"-").concat(hu.id)];if(bu&&Ga[ms].push(bu),vaGa[ms][Mc]){Ip=!0;break}if(Ip)return Mo.splice(bu,1),"continue";var ch={};gu.neighbors.forEach(function(Os){var Fl=Ue["".concat(Pu.id,"-").concat(Os.id)];ch["".concat(Pu.id,"-").concat(Os.id)]={start:rt[Pu.id].idx,end:rt[Os.id].idx,distance:Fl}}),Sn=RP(ch,Ht,x,Sn);var jg=[];Object.keys(ch).forEach(function(Os){if(Cr[Os]){jg.push(Cr[Os]);return}var Fl=Sn[Os];Cr[Os]=kP(Fl,si,oe,le),jg.push(Cr[Os])}),jg=jg.sort(function(Os,Fl){return Fl-Os});for(var Ea=!1,Mc=0;Mc=0;Gu--)Hs(Gu)});var al=[];Mo==null||Mo.forEach(function(ms){for(var $o=rt[ms.id].idx,va=y3(x.nodes,Ae[$o],$o,oe,re),Oa=va.neighbors,js=Oa.length,aa=!1,cl=js-1;cl>=0;cl--){if(Oa.length+1gu){Oa.splice(cl,1);continue}if(z){var Qc="".concat(Hs.id,"-").concat(ms.id),Dp=Ue[Qc];Pu=kl[Gu].length-1;var Ip=kl[Gu][Pu];if(Dp>Ip){Oa.splice(cl,1);continue}}var Mc=Cr[hu]?Cr[hu]:h_(x,ms,Hs,rt,bu,Ht,si,oe,le,Cr,Sn),ch="".concat(wi.id,"-").concat(Gu),jg=pa[ch][pa[ch].length-1];if(Mc=0;bu--){var Ip=Dp(bu);if(Ip==="break")break}if(Qc)return al.splice($o,1),"continue";va.edges=cl;var Mc=DP(va,va.nodes[0].id,!1).length;if(Object.keys(Mc).reverse().forEach(function(pc){if(!(pc===va.nodes[0].id||Qc)){if(Mc[pc]===1/0){var Hu=aa[pc].node[oe];if(js[Hu]--,js[Hu]tl[$h][tl[$h].length-1]){var Hu=aa[pc].node[oe];if(js[Hu]--,js[Hu]=0;Fl--){var Pl=va.nodes[Fl],Ml=aa[Pl.id].degree,Nd=aa[Pl.id].inDegree,wv=aa[Pl.id].outDegree,mm=Pl[oe],u1=S3(Ui,mm,yt,Ct),aA=u1.minPatternNodeLabelDegree,Nx=u1.minPatternNodeLabelInDegree,$S=u1.minPatternNodeLabelOutDegree,i0=z?Ml=0;c1--){var ap=cl[c1];if(!aa[ap.source]||!aa[ap.target]){cl.splice(c1,1);var O0=ap[le];if(Hs[O0]--,aa[ap.source]&&(aa[ap.source].degree--,aa[ap.source].outDegree--),aa[ap.target]&&(aa[ap.target].degree--,aa[ap.target].inDegree--),zt[O0]&&Hs[O0]=0;gl--){var fu=rl(gl);if(fu==="break")break}for(var $l=al.length,Xa=function($o){var va=al[$o],Oa={};va.edges.forEach(function(cl){var Hs="".concat(cl.source,"-").concat(cl.target,"-").concat(cl.label);Oa[Hs]?Oa[Hs]++:Oa[Hs]=1});for(var js=function(Hs){var Gu=al[Hs],hu={};Gu.edges.forEach(function(Pu){var gu="".concat(Pu.source,"-").concat(Pu.target,"-").concat(Pu.label);hu[gu]?hu[gu]++:hu[gu]=1});var bu=!0;Object.keys(hu).length!==Object.keys(Oa).length?bu=!1:Object.keys(Oa).forEach(function(Pu){hu[Pu]!==Oa[Pu]&&(bu=!1)}),bu&&al.splice(Hs,1)},aa=$l-1;aa>$o;aa--)js(aa);$l=al.length},gl=0;gl<=$l-1;gl++)Xa(gl);return al}}},f_=d_,g_=function(){function b(x){x===void 0&&(x=10),this.linkedList=new WI,this.maxStep=x}return Object.defineProperty(b.prototype,"length",{get:function(){return this.linkedList.toArray().length},enumerable:!1,configurable:!0}),b.prototype.isEmpty=function(){return!this.linkedList.head},b.prototype.isMaxStack=function(){return this.toArray().length>=this.maxStep},b.prototype.peek=function(){return this.isEmpty()?null:this.linkedList.head.value},b.prototype.push=function(x){this.linkedList.prepend(x),this.length>this.maxStep&&this.linkedList.deleteTail()},b.prototype.pop=function(){var x=this.linkedList.deleteHead();return x?x.value:null},b.prototype.toArray=function(){return this.linkedList.toArray().map(function(x){return x.value})},b.prototype.clear=function(){for(;!this.isEmpty();)this.pop()},b}(),p_=g_,v_=XI,_J={getAdjMatrix:bP,breadthFirstSearch:Xk,connectedComponent:HI,getDegree:JT,getInDegree:Jk,getOutDegree:qk,detectCycle:XI,detectDirectedCycle:v_,detectAllCycles:tF,detectAllDirectedCycle:YI,detectAllUndirectedCycle:ZI,depthFirstSearch:KI,dijkstra:DP,findAllPath:LF,findShortestPath:i5,floydWarshall:o5,labelPropagation:IF,louvain:a3,iLouvain:zF,kCore:WF,kMeans:GF,cosineSimilarity:l3,nodesCosineSimilarity:KF,minimumSpanningTree:e_,pageRank:c3,getNeighbors:mv,Stack:p_,GADDI:f_};function Ji(b){if(b.id!==void 0)return b.id;if(b.source!==void 0&&b.target!==void 0)return`${b.source}-${b.target}`;throw new Error(Jy("The datum does not have available id."))}function FP(b){return b.combo}function w3(b,x){const E={nodes:(b.nodes||[]).map(Ji),edges:(b.edges||[]).map(Ji),combos:(b.combos||[]).map(Ji)};return x?Object.values(E).flat():E}const C3=(b,x,E)=>{var z;switch(E.type){case"degree":{const te=new Map;return(z=b.nodes)===null||z===void 0||z.forEach(re=>{const oe=x(Ji(re),E.direction).length;te.set(Ji(re),oe)}),te}case"betweenness":return m_(b,E.directed,E.weightPropertyName);case"closeness":return y_(b,E.directed,E.weightPropertyName);case"eigenvector":return E_(b,E.directed);case"pagerank":return x_(b,E.epsilon,E.linkProb);default:return b3(b)}},b3=b=>{var x;const E=new Map;return(x=b.nodes)===null||x===void 0||x.forEach(z=>{E.set(Ji(z),0)}),E},m_=(b,x,E)=>{const z=b3(b),{nodes:te=[]}=b;return te.forEach(re=>{te.forEach(oe=>{if(re!==oe){const{allPath:le}=i5(b,Ji(re),Ji(oe),x,E),ce=le.length;le.flat().forEach(ge=>{ge!==Ji(re)&&ge!==Ji(oe)&&z.set(ge,z.get(ge)+1/ce)})}})}),z},y_=(b,x,E)=>{const z=new Map,{nodes:te=[]}=b;return te.forEach(re=>{const oe=te.reduce((le,ce)=>{if(re!==ce){const{length:ge}=i5(b,Ji(re),Ji(ce),x,E);le+=ge}return le},0);z.set(Ji(re),1/oe)}),z},x_=(b,x,E)=>{var z;const te=new Map,re=c3(b,x,E);return(z=b.nodes)===null||z===void 0||z.forEach(oe=>{te.set(Ji(oe),re[Ji(oe)])}),te},E_=(b,x)=>{const{nodes:E=[]}=b,z=A_(b,x),te=S_(z,E.length),re=new Map;return E.forEach((oe,le)=>{re.set(Ji(oe),te[le])}),re},A_=(b,x)=>{const{nodes:E=[],edges:z=[]}=b,te=Array(E.length).fill(null).map(()=>Array(E.length).fill(0));return z.forEach(({source:re,target:oe})=>{const le=E.findIndex(ge=>Ji(ge)===re),ce=E.findIndex(ge=>Ji(ge)===oe);x?te[le][ce]=1:(te[le][ce]=1,te[ce][le]=1)}),te},S_=(b,x,E=100,z=1e-6)=>{let te=Array(x).fill(1),re=1/0;for(let oe=0;oez;oe++){const le=Array(x).fill(0);for(let ge=0;gege+Ae*Ae,0));for(let ge=0;gege+(Ae-te[Me])*Ae,0)),te=le}return te};function gx(b,x,E,z=Vd){const te=new Map(b.map(Ue=>[E(Ue),Ue])),re=new Map(x.map(Ue=>[E(Ue),Ue])),oe=new Set(te.keys()),le=new Set(re.keys()),ce=[],ge=[],Ae=[],Me=[];return le.forEach(Ue=>{oe.has(Ue)?z(te.get(Ue),re.get(Ue))?Me.push(re.get(Ue)):ge.push(re.get(Ue)):ce.push(re.get(Ue))}),oe.forEach(Ue=>{le.has(Ue)||Ae.push(te.get(Ue))}),{enter:ce,exit:Ae,keep:Me,update:ge}}function WE(b,x,E){const z=te=>{E&&!E(te)||(te.style.visibility=x)};b.forEach(te=>{z(te)})}function w_(b,x,E){const z={},te=re=>(re in z||(z[re]=0),`${x}-${re}-${z[re]++}`);return E.map(re=>typeof re=="string"?{type:re,key:te(re)}:typeof re=="function"?re.call(b):re.key?re:Object.assign(Object.assign({},re),{key:te(re.type)}))}class l5{constructor(x){this.extensions=[],this.extensionMap={},this.context=x}setExtensions(x){const E=w_(this.context.graph,this.category,x),{enter:z,update:te,exit:re,keep:oe}=gx(this.extensions,E,le=>le.key);this.createExtensions(z),this.updateExtensions([...te,...oe]),this.destroyExtensions(re),this.extensions=E}createExtension(x){const{category:E}=this,{key:z,type:te}=x,re=Qy(E,te);if(!re)return n0.warn(`The extension ${te} of ${E} is not registered.`);const oe=new re(this.context,x);this.extensionMap[z]=oe}createExtensions(x){x.forEach(E=>this.createExtension(E))}updateExtension(x){const{key:E}=x,z=this.extensionMap[E];z&&z.update(x)}updateExtensions(x){x.forEach(E=>this.updateExtension(E))}destroyExtension(x){const E=this.extensionMap[x];E&&(E.destroy(),delete this.extensionMap[x])}destroyExtensions(x){x.forEach(({key:E})=>this.destroyExtension(E))}destroy(){Object.values(this.extensionMap).forEach(x=>x.destroy()),this.context={},this.extensions=[],this.extensionMap={}}}class u5{constructor(x,E){this.events=[],this.destroyed=!1,this.context=x,this.options=E}update(x){this.options=Object.assign(this.options,x)}destroy(){this.context={},this.options={},this.destroyed=!0}}class b0 extends u5{}class _P extends b0{constructor(x,E){super(x,Object.assign({},_P.defaultOptions,E)),this.isOverlapping=(z,te)=>te.some(re=>z.intersects(re)),this.occupiedBounds=[],this.detectLabelCollision=z=>{const te=this.context.viewport,re={show:[],hide:[]};return this.occupiedBounds=[],z.forEach(oe=>{const le=oe.getShape("label").getRenderBounds();te.isInViewport(le,!0)&&!this.isOverlapping(le,this.occupiedBounds)?(re.show.push(oe),this.occupiedBounds.push(fx(le,this.options.padding))):re.hide.push(oe)}),re},this.hideLabelIfExceedViewport=(z,te)=>{const{exit:re}=gx(z,te,oe=>oe.id);re==null||re.forEach(this.hideLabel)},this.nodeCentralities=new Map,this.sortNodesByCentrality=(z,te)=>{const{model:re}=this.context,oe=re.getData(),le=re.getRelatedEdgesData.bind(re);return z.map(ge=>(this.nodeCentralities.has(ge.id)||(this.nodeCentralities=C3(oe,le,te)),{node:ge,centrality:this.nodeCentralities.get(ge.id)})).sort((ge,Ae)=>Ae.centrality-ge.centrality).map(ge=>ge.node)},this.sortLabelElementsInView=z=>{const{sort:te,sortNode:re,sortCombo:oe,sortEdge:le}=this.options,{model:ce}=this.context;if(_s(te))return z.sort((rt,ot)=>te(ce.getElementDataById(rt.id),ce.getElementDataById(ot.id)));const{node:ge=[],edge:Ae=[],combo:Me=[]}=wP(z,rt=>rt.type),Ue=_s(oe)?Me.sort((rt,ot)=>oe(...ce.getComboData([rt.id,ot.id]))):Me,Xe=_s(re)?ge.sort((rt,ot)=>re(...ce.getNodeData([rt.id,ot.id]))):this.sortNodesByCentrality(ge,re),$e=_s(le)?Ae.sort((rt,ot)=>le(...ce.getEdgeData([rt.id,ot.id]))):Ae;return[...Ue,...Xe,...$e]},this.labelElementsInView=[],this.isFirstRender=!0,this.onToggleVisibility=z=>{var te;if(((te=z.data)===null||te===void 0?void 0:te.stage)==="zIndex")return;if(!this.validate(z)){this.hiddenElements.size>0&&(this.hiddenElements.forEach(this.showLabel),this.hiddenElements.clear());return}const re=this.isFirstRender?this.getLabelElements():this.getLabelElementsInView();this.hideLabelIfExceedViewport(this.labelElementsInView,re),this.labelElementsInView=re;const oe=this.sortLabelElementsInView(this.labelElementsInView),{show:le,hide:ce}=this.detectLabelCollision(oe);for(let ge=le.length-1;ge>=0;ge--)this.showLabel(le[ge]);ce.forEach(this.hideLabel)},this.hiddenElements=new Map,this.hideLabel=z=>{const te=z.getShape("label");te&&WE(te,"hidden"),this.hiddenElements.set(z.id,z)},this.showLabel=z=>{const te=z.getShape("label");te&&WE(te,"visible"),z.toFront(),this.hiddenElements.delete(z.id)},this.onTransform=_I(this.onToggleVisibility,this.options.throttle,{leading:!0}),this.enableToggle=!0,this.toggle=z=>{this.enableToggle&&this.onToggleVisibility(z)},this.onBeforeRender=()=>{this.enableToggle=!1},this.onAfterRender=z=>{this.onToggleVisibility(z),this.enableToggle=!0},this.bindEvents()}update(x){this.unbindEvents(),super.update(x),this.bindEvents(),this.onToggleVisibility({})}getLabelElements(){const{elementMap:x}=this.context.element,E=[];for(const z in x){const te=x[z];te.isVisible()&&te.getShape("label")&&E.push(te)}return E}getLabelElementsInView(){const x=this.context.viewport;return this.getLabelElements().filter(E=>x.isInViewport(E.getShape("key").getRenderBounds()))}bindEvents(){const{graph:x}=this.context;x.on(es.BEFORE_RENDER,this.onBeforeRender),x.on(es.AFTER_RENDER,this.onAfterRender),x.on(es.AFTER_DRAW,this.toggle),x.on(es.AFTER_LAYOUT,this.toggle),x.on(es.AFTER_TRANSFORM,this.onTransform)}unbindEvents(){const{graph:x}=this.context;x.off(es.BEFORE_RENDER,this.onBeforeRender),x.off(es.AFTER_RENDER,this.onAfterRender),x.off(es.AFTER_DRAW,this.toggle),x.off(es.AFTER_LAYOUT,this.toggle),x.off(es.AFTER_TRANSFORM,this.onTransform)}validate(x){if(this.destroyed)return!1;const{enable:E}=this.options;return _s(E)?E(x):!!E}destroy(){this.unbindEvents(),super.destroy()}}_P.defaultOptions={enable:!0,throttle:100,padding:0,sortNode:{type:"degree"}};var C_=function(b){if(!HT(b)||!Mw(b,"Object"))return!1;if(Object.getPrototypeOf(b)===null)return!0;for(var x=b;Object.getPrototypeOf(x)!==null;)x=Object.getPrototypeOf(x);return Object.getPrototypeOf(b)===x},TS=C_,b_=5;function P_(b,x){if(Object.hasOwn)return Object.hasOwn(b,x);if(b==null)throw new TypeError("Cannot convert undefined or null to object");return Object.prototype.hasOwnProperty.call(Object(b),x)}function P3(b,x,E,z){E=E||0,z=z||b_;for(var te in x)if(P_(x,te)){var re=x[te];re!==null&&TS(re)?(TS(b[te])||(b[te]={}),EE+x[z])}function Yc(b,x){return b.map((E,z)=>E-x[z])}function qy(b,x){return typeof x=="number"?b.map(E=>E*x):b.map((E,z)=>E*x[z])}function um(b,x){return typeof x=="number"?b.map(E=>E/x):b.map((E,z)=>E/x[z])}function L_(b,x){return b.reduce((E,z,te)=>E+z*x[te],0)}function T_(b,x){const E=FC(b),z=FC(x);return[E[1]*z[2]-E[2]*z[1],E[2]*z[0]-E[0]*z[2],E[0]*z[1]-E[1]*z[0]]}function px(b,x){return b.map(E=>E*x)}function Lh(b,x){return Math.sqrt(b.reduce((E,z,te)=>E+Math.pow(z-x[te]||0,2),0))}function zP(b,x){return b.reduce((E,z,te)=>E+Math.abs(z-x[te]),0)}function $y(b){const x=b.reduce((E,z)=>E+Math.pow(z,2),0);return b.map(E=>E/Math.sqrt(x))}function c5(b,x,E=!1){const z=b[0]*x[1]-b[1]*x[0];let te=Math.acos(qy(b,x).reduce((re,oe)=>re+oe,0)/(Lh(b,M3)*Lh(x,M3)));return E&&z<0&&(te=2*Math.PI-te),te}function zJ(b,x){return b.every((E,z)=>E===x[z])}function jP(b,x=!0){return x?[-b[1],b[0]]:[b[1],-b[0]]}function D_(b,x){return b.map(E=>E%x)}function UE(b){return[b[0],b[1]]}function FC(b){return Bk(b)?[b[0],b[1],0]:b}function L3(b){const[x,E]=b;return!x&&!E?0:Math.atan2(E,x)}function T3(b,x){const[E,z]=b,[te,re]=x,oe=Yc(E,z),le=Yc(te,re);return T_(oe,le).every(ce=>ce===0)}function h5(b,x,E=!1){if(T3(b,x))return;const[z,te]=b,[re,oe]=x,le=((z[0]-re[0])*(re[1]-oe[1])-(z[1]-re[1])*(re[0]-oe[0]))/((z[0]-te[0])*(re[1]-oe[1])-(z[1]-te[1])*(re[0]-oe[0])),ce=oe[0]-re[0]?(z[0]-re[0]+le*(te[0]-z[0]))/(oe[0]-re[0]):(z[1]-re[1]+le*(te[1]-z[1]))/(oe[1]-re[1]);if(!(!E&&(!oy(le,0,1)||!oy(ce,0,1))))return[z[0]+le*(te[0]-z[0]),z[1]+le*(te[1]-z[1])]}function D3(b){if(Array.isArray(b))return oy(b[0],0,1)&&oy(b[1],0,1)?b:[.5,.5];const x=b.split("-"),E=x.includes("left")?0:x.includes("right")?1:.5,z=x.includes("top")?0:x.includes("bottom")?1:.5;return[E,z]}function Rf(b){const{x=0,y:E=0,z=0}=b.style||{};return[+x,+E,+z]}function I_(b){const{x,y:E,z}=b.style||{};return x!==void 0||E!==void 0||z!==void 0}function I3(b,x){const[E,z]=x,{min:te,max:re}=b;return[te[0]+E*(re[0]-te[0]),te[1]+z*(re[1]-te[1])]}function e1(b,x="center"){const E=D3(x);return I3(b,E)}function jJ(b,x){const E=parseAnchor(x);return I3(b,E)}const WJ=b=>{const[x,E]=b;return{left:Math.min(x[0],E[0]),right:Math.max(x[0],E[0]),top:Math.min(x[1],E[1]),bottom:Math.max(x[1],E[1])}};function Rg(b){var x;return[b.x,b.y,(x=b.z)!==null&&x!==void 0?x:0]}function cm(b){var x;return{x:b[0],y:b[1],z:(x=b[2])!==null&&x!==void 0?x:0}}function UJ(b){return b.sort((x,E)=>x[0]-E[0]||x[1]-E[1])}function GJ(b){const x=new Set;return b.filter(E=>{const z=E.join(",");return x.has(z)?!1:(x.add(z),!0)})}function _C(b,x=0){return b.map(E=>parseFloat(E.toFixed(x)))}function vx(b,x,E,z=!1){if(Vd(b,x))return b;const te=z?Yc(b,x):Yc(x,b),re=$y(te),oe=[re[0]*E,re[1]*E];return cu(UE(b),oe)}function O3(b,x){return b[1]===x[1]}function O_(b,x){return b[0]===x[0]}function N_(b,x){return O3(b,x)||O_(b,x)}function N3(b,x,E){return T3([b,x],[x,E])}function B3(b,x){return[2*x[0]-b[0],2*x[1]-b[1]]}function R3(b,x,E,z=!0,te=!1){for(let re=0;rere!=Xe>re&&te<(Ue-Ae)*(re-Me)/(Xe-Me)+Ae&&(oe=!oe)}return oe}function R_(b,x,E=!1){const z=e1(x,"center"),te=[e1(x,"left-top"),e1(x,"right-top"),e1(x,"right-bottom"),e1(x,"left-bottom")];return R3(b,z,te,!1,E).point}function WP(b,x,E=!1){const z=x.center,te=E?B3(b,z):b,re=Yc(te,x.center),oe=Math.atan2(re[1],re[0]);if(isNaN(oe))return z;const le=ay(x)/2,ce=sy(x)/2,ge=z[0]+le*Math.cos(oe),Ae=z[1]+ce*Math.sin(oe);return[ge,Ae]}function k_(b,x){let E=1/0,z=[b[0],x[0]];return b.forEach(te=>{x.forEach(re=>{const oe=Lh(te,re);oe{const re=__(b,te);re1?Ae=1:Ae<0&&(Ae=0);const Me=E+Ae*ce,Ue=z+Ae*ge;return[Me,Ue]}function z_(b){const x=b.reduce((E,z)=>cu(E,z),[0,0]);return um(x,b.length)}function d5(b,x=!0){const E=z_(b);return b.sort(([z,te],[re,oe])=>{const le=Math.atan2(te-E[1],z-E[0]),ce=Math.atan2(oe-E[1],re-E[0]);return x?ce-le:le-ce})}function F3(b,x){return[b,[b[0],x[1]],x,[x[0],b[1]]]}class j_{constructor(x,E){this.callback=E,this.pointerByTouch=[],this.initialDistance=null,this.emitter=x,this.onPointerDown=this.onPointerDown.bind(this),this.onPointerMove=this.onPointerMove.bind(this),this.onPointerUp=this.onPointerUp.bind(this),this.bindEvents()}bindEvents(){const{emitter:x}=this;x.on(Zo.POINTER_DOWN,this.onPointerDown),x.on(Zo.POINTER_MOVE,this.onPointerMove),x.on(Zo.POINTER_UP,this.onPointerUp)}updatePointerPosition(x,E,z){const te=this.pointerByTouch.findIndex(re=>re.pointerId===x);te>=0&&(this.pointerByTouch[te]={x:E,y:z,pointerId:x})}onPointerDown(x){const{x:E,y:z}=x.client;if(!(E===void 0||z===void 0)&&(this.pointerByTouch.push({x:E,y:z,pointerId:x.pointerId}),x.pointerType==="touch"&&this.pointerByTouch.length===2)){const te=this.pointerByTouch[0].x-this.pointerByTouch[1].x,re=this.pointerByTouch[0].y-this.pointerByTouch[1].y;this.initialDistance=Math.sqrt(te*te+re*re)}}onPointerMove(x){if(this.pointerByTouch.length!==2||this.initialDistance===null)return;const{x:E,y:z}=x.client;if(E===void 0||z===void 0)return;this.updatePointerPosition(x.pointerId,E,z);const te=this.pointerByTouch[0].x-this.pointerByTouch[1].x,re=this.pointerByTouch[0].y-this.pointerByTouch[1].y,le=Math.sqrt(te*te+re*re)/this.initialDistance;this.callback(x,{scale:(le-1)*5})}onPointerUp(){this.initialDistance=null,this.pointerByTouch=[]}destroy(){this.emitter.off(Zo.POINTER_DOWN,this.onPointerDown),this.emitter.off(Zo.POINTER_MOVE,this.onPointerMove),this.emitter.off(Zo.POINTER_UP,this.onPointerUp)}}const _3=b=>b.map(x=>nc(x)?x.toLocaleLowerCase():x);class DS{constructor(x){this.map=new Map,this.recordKey=new Set,this.onKeyDown=E=>{E!=null&&E.key&&(this.recordKey.add(E.key),this.trigger(E))},this.onKeyUp=E=>{E!=null&&E.key&&this.recordKey.delete(E.key)},this.onWheel=E=>{this.triggerExtendKey(Zo.WHEEL,E)},this.onDrag=E=>{this.triggerExtendKey(Zo.DRAG,E)},this.handlePinch=(E,z)=>{this.triggerExtendKey(Zo.PINCH,Object.assign(Object.assign({},E),z))},this.onFocus=()=>{this.recordKey.clear()},this.emitter=x,this.bindEvents()}bind(x,E){x.length!==0&&(x.includes(Zo.PINCH)&&!this.pinchHandler&&(this.pinchHandler=new j_(this.emitter,this.handlePinch.bind(this))),this.map.set(x,E))}unbind(x,E){this.map.forEach((z,te)=>{Vd(te,x)&&(!E||E===z)&&this.map.delete(te)})}unbindAll(){this.map.clear()}match(x){const E=_3(Array.from(this.recordKey)).sort(),z=_3(x).sort();return Vd(E,z)}bindEvents(){var x;const{emitter:E}=this;E.on(Zo.KEY_DOWN,this.onKeyDown),E.on(Zo.KEY_UP,this.onKeyUp),E.on(Zo.WHEEL,this.onWheel),E.on(Zo.DRAG,this.onDrag),(x=globalThis.addEventListener)===null||x===void 0||x.call(globalThis,"focus",this.onFocus)}trigger(x){this.map.forEach((E,z)=>{this.match(z)&&E(x)})}triggerExtendKey(x,E){this.map.forEach((z,te)=>{te.includes(x)&&Vd(Array.from(this.recordKey),te.filter(re=>re!==x))&&z(E)})}destroy(){var x,E;this.unbindAll(),this.emitter.off(Zo.KEY_DOWN,this.onKeyDown),this.emitter.off(Zo.KEY_UP,this.onKeyUp),this.emitter.off(Zo.WHEEL,this.onWheel),this.emitter.off(Zo.DRAG,this.onDrag),(x=this.pinchHandler)===null||x===void 0||x.destroy(),(E=globalThis.removeEventListener)===null||E===void 0||E.call(globalThis,"blur",this.onFocus)}}class zC extends b0{constructor(x,E){super(x,Cp({},zC.defaultOptions,E)),this.shortcut=new DS(x.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(x){if(!this.validate(x)||!this.isKeydown()||this.startPoint)return;const{canvas:E,graph:z}=this.context,te=Object.assign({},this.options.style);this.options.style.lineWidth&&(te.lineWidth=+this.options.style.lineWidth/z.getZoom()),this.rectShape=new sh({id:"g6-brush-select",style:te}),E.appendChild(this.rectShape),this.startPoint=[x.canvas.x,x.canvas.y]}onPointerMove(x){var E;if(!this.startPoint)return;const{immediately:z,mode:te}=this.options;this.endPoint=UP(x),(E=this.rectShape)===null||E===void 0||E.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])}),z&&te==="default"&&this.updateElementsStates(F3(this.startPoint,this.endPoint))}onPointerUp(x){if(this.startPoint){if(!this.endPoint){this.clearBrush();return}this.endPoint=UP(x),this.updateElementsStates(F3(this.startPoint,this.endPoint)),this.clearBrush()}}clearStates(){this.endPoint||this.clearElementsStates()}clearElementsStates(){const{graph:x}=this.context,E=Object.values(x.getData()).reduce((z,te)=>Object.assign({},z,te.reduce((re,oe)=>(re[Ji(oe)]=[],re),{})),{});x.setElementState(E,this.options.animation)}updateElementsStates(x){const{graph:E}=this.context,{enableElements:z,state:te,mode:re,onSelect:oe}=this.options,le=this.selector(E,x,z);let ce={};switch(re){case"union":le.forEach(ge=>{ce[ge]=[...E.getElementState(ge),te]});break;case"diff":le.forEach(ge=>{const Ae=E.getElementState(ge);ce[ge]=Ae.includes(te)?Ae.filter(Me=>Me!==te):[...Ae,te]});break;case"intersect":le.forEach(ge=>{const Ae=E.getElementState(ge);ce[ge]=Ae.includes(te)?[te]:[]});break;case"default":default:le.forEach(ge=>{ce[ge]=[te]});break}_s(oe)&&(ce=oe(ce)),E.setElementState(ce,this.options.animation)}selector(x,E,z){if(!z||z.length===0)return[];const te=[],re=x.getData();if(z.forEach(oe=>{re[`${oe}s`].forEach(le=>{const ce=Ji(le);x.getElementVisibility(ce)!=="hidden"&&B_(x.getElementPosition(ce),E)&&te.push(ce)})}),z.includes("edge")){const oe=re.edges;oe==null||oe.forEach(le=>{const{source:ce,target:ge}=le;te.includes(ce)&&te.includes(ge)&&te.push(Ji(le))})}return te}clearBrush(){var x;(x=this.rectShape)===null||x===void 0||x.remove(),this.rectShape=void 0,this.startPoint=void 0,this.endPoint=void 0}isKeydown(){const{trigger:x}=this.options,E=Array.isArray(x)?x:[x];return this.shortcut.match(E.filter(z=>z!=="drag"))}validate(x){if(this.destroyed)return!1;const{enable:E}=this.options;return _s(E)?E(x):!!E}bindEvents(){const{graph:x}=this.context;x.on(Zo.POINTER_DOWN,this.onPointerDown),x.on(Zo.POINTER_MOVE,this.onPointerMove),x.on(Zo.POINTER_UP,this.onPointerUp),x.on(Xy.CLICK,this.clearStates)}unbindEvents(){const{graph:x}=this.context;x.off(Zo.POINTER_DOWN,this.onPointerDown),x.off(Zo.POINTER_MOVE,this.onPointerMove),x.off(Zo.POINTER_UP,this.onPointerUp),x.off(Xy.CLICK,this.clearStates)}update(x){this.unbindEvents(),this.options=Cp(this.options,x),this.bindEvents()}destroy(){this.unbindEvents(),super.destroy()}}zC.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 UP=b=>[b.canvas.x,b.canvas.y],t1=.8,GE=["node","edge","combo"];function HE(b,x,E,z,te=0){z==="TB"&&x(b,te);const re=E(b);if(re)for(const oe of re)HE(oe,x,E,z,te+1);z==="BT"&&x(b,te)}function W_(b,x,E){const z=[[b,0]];for(;z.length;){const[te,re]=z.shift();x(te,re);const oe=E(te);if(oe)for(const le of oe)z.push([le,re+1])}}function z3(b,x,E,z,te="both"){if(x==="combo"||x==="node")return f5(b,E,z,te);const re=b.getEdgeData(E);if(!re)return[];const oe=f5(b,re.source,z-1,te),le=f5(b,re.target,z-1,te);return Array.from(new Set([...oe,...le,E]))}function f5(b,x,E,z="both"){const te=new Set,re=new Set,oe=new Set;return W_(x,(le,ce)=>{ce>E||(oe.add(le),b.getRelatedEdgesData(le,z).forEach(ge=>{const Ae=Ji(ge);!re.has(Ae)&&ceb.getRelatedEdgesData(le,z).map(ce=>ce.source===le?ce.target:ce.source).filter(ce=>te.has(ce)?!1:(te.add(ce),!0))),Array.from(oe)}function g5(b){return b.states||[]}var GP=function(b,x,E,z){function te(re){return re instanceof E?re:new E(function(oe){oe(re)})}return new(E||(E=Promise))(function(re,oe){function le(Ae){try{ge(z.next(Ae))}catch(Me){oe(Me)}}function ce(Ae){try{ge(z.throw(Ae))}catch(Me){oe(Me)}}function ge(Ae){Ae.done?re(Ae.value):te(Ae.value).then(le,ce)}ge((z=z.apply(b,x||[])).next())})};class HP extends b0{constructor(x,E){super(x,Object.assign({},HP.defaultOptions,E)),this.onClickSelect=z=>GP(this,void 0,void 0,function*(){var te,re;this.validate(z)&&(yield this.updateState(z),(re=(te=this.options).onClick)===null||re===void 0||re.call(te,z))}),this.onClickCanvas=z=>GP(this,void 0,void 0,function*(){var te,re;this.validate(z)&&(yield this.clearState(),(re=(te=this.options).onClick)===null||re===void 0||re.call(te,z))}),this.shortcut=new DS(x.graph),this.bindEvents()}bindEvents(){const{graph:x}=this.context;this.unbindEvents(),GE.forEach(E=>{x.on(`${E}:${Zo.CLICK}`,this.onClickSelect)}),x.on(Xy.CLICK,this.onClickCanvas)}get isMultipleSelect(){const{multiple:x,trigger:E}=this.options;return x&&this.shortcut.match(E)}getNeighborIds(x){const{target:E,targetType:z}=x,{graph:te}=this.context,{degree:re}=this.options;return z3(te,z,E.id,typeof re=="function"?re(x):re).filter(oe=>oe!==E.id)}updateState(x){return GP(this,void 0,void 0,function*(){const{state:E,unselectedState:z,neighborState:te,animation:re}=this.options;if(!E&&!te&&!z)return;const{target:oe}=x,{graph:le}=this.context,ce=le.getElementData(oe.id),ge=g5(ce).includes(E)?"unselect":"select",Ae={},Me=this.isMultipleSelect,Ue=[oe.id],Xe=this.getNeighborIds(x);if(Me)if(Object.assign(Ae,this.getDataStates()),ge==="select"){const $e=(rt,ot)=>{rt.forEach(pt=>{const yt=new Set(le.getElementState(pt));yt.add(ot),yt.delete(z),Ae[pt]=Array.from(yt)})};$e(Ue,E),$e(Xe,te),z&&Object.keys(Ae).forEach(rt=>{const ot=Ae[rt];!ot.includes(E)&&!ot.includes(te)&&!ot.includes(z)&&Ae[rt].push(z)})}else{const $e=Ae[oe.id];Ae[oe.id]=$e.filter(rt=>rt!==E&&rt!==te),$e.includes(z)||Ae[oe.id].push(z),Xe.forEach(rt=>{Ae[rt]=Ae[rt].filter(ot=>ot!==te),Ae[rt].includes(E)||Ae[rt].push(z)})}else if(ge==="select"){Object.assign(Ae,this.getClearStates(!!z));const $e=(rt,ot)=>{rt.forEach(pt=>{Ae[pt]||(Ae[pt]=le.getElementState(pt)),Ae[pt].push(ot)})};$e(Ue,E),$e(Xe,te),z&&Object.keys(Ae).forEach(rt=>{!Ue.includes(rt)&&!Xe.includes(rt)&&Ae[rt].push(z)})}else Object.assign(Ae,this.getClearStates());yield le.setElementState(Ae,re)})}getDataStates(){const{graph:x}=this.context,{nodes:E,edges:z,combos:te}=x.getData(),re={};return[...E,...z,...te].forEach(oe=>{re[Ji(oe)]=g5(oe)}),re}getClearStates(x=!1){const{graph:E}=this.context,{state:z,unselectedState:te,neighborState:re}=this.options,oe=new Set([z,te,re]),{nodes:le,edges:ce,combos:ge}=E.getData(),Ae={};return[...le,...ce,...ge].forEach(Me=>{const Ue=g5(Me),Xe=Ue.filter($e=>!oe.has($e));(x||Xe.length!==Ue.length)&&(Ae[Ji(Me)]=Xe)}),Ae}clearState(){return GP(this,void 0,void 0,function*(){const{graph:x}=this.context;yield x.setElementState(this.getClearStates(),this.options.animation)})}validate(x){if(this.destroyed)return!1;const{enable:E}=this.options;return _s(E)?E(x):!!E}unbindEvents(){const{graph:x}=this.context;GE.forEach(E=>{x.off(`${E}:${Zo.CLICK}`,this.onClickSelect)}),x.off(Xy.CLICK,this.onClickCanvas)}destroy(){this.unbindEvents(),super.destroy()}}HP.defaultOptions={animation:!0,enable:!0,multiple:!1,trigger:["shift"],state:"selected",neighborState:"selected",unselectedState:void 0,degree:0};function r0(b){var x;return!!(!((x=b.style)===null||x===void 0)&&x.collapsed)}var bp=function(b,x,E){for(var z=0,te=nc(x)?x.split("."):x;b&&z="A"&&E<="Z"}function j3(b,x){return`${x}${AP(b)}`}function W3(b,x,E=!0){if(!x||!WC(b,x))return b;const z=b.slice(x.length);return E?G_(z):z}function hf(b,x){const E=Object.entries(b).reduce((z,[te,re])=>(te==="className"||te==="class"||WC(te,x)&&Object.assign(z,{[W3(te,x)]:re}),z),{});if("opacity"in b){const z=j3("opacity",x),te=b.opacity;if(z in b){const re=b[z];Object.assign(E,{opacity:te*re})}else Object.assign(E,{opacity:te})}return E}function p5(b,x){const E=x.length;return Object.keys(b).reduce((z,te)=>{if(te.startsWith(x)){const re=te.slice(E);z[re]=b[te]}return z},{})}function U3(b,x){const E=typeof x=="string"?[x]:x,z={};return Object.keys(b).forEach(te=>{E.find(re=>te.startsWith(re))||(z[te]=b[te])}),z}function HJ(b,x,E){return Object.entries(b).reduce((z,[te,re])=>(WC(te,x)?z[j3(W3(te,x,!1),E)]=re:z[te]=re,z),{})}function P0(b=0){if(typeof b=="number")return[b,b,b];const[x,E=x,z=x]=b;return[x,E,z]}var H_=function(b,x){var E={};for(var z in b)Object.prototype.hasOwnProperty.call(b,z)&&x.indexOf(z)<0&&(E[z]=b[z]);if(b!=null&&typeof Object.getOwnPropertySymbols=="function")for(var te=0,z=Object.getOwnPropertySymbols(b);tetypeof re=="function"?[te,re.call(z,E)]:[te,re]))}function qf(b,x){const E=(b==null?void 0:b.style)||{},z=(x==null?void 0:x.style)||{};for(const te in E)te in z||(z[te]=E[te]);return Object.assign({},b,x,{style:z})}function V_(b){const{x,y:E,z,class:te,className:re,transform:oe,transformOrigin:le,zIndex:ce,visibility:ge}=b;return H_(b,["x","y","z","class","className","transform","transformOrigin","zIndex","visibility"])}function K_(b,x){const E=P0(b);let z={};return x.text&&!x.fontSize&&(z={fontSize:Math.min(...E)*.5}),x.src&&(!x.width||!x.height)&&(z={width:E[0]*.5,height:E[1]*.5}),z}function H3(b){if(b)return typeof b=="string"||typeof b=="function"||Array.isArray(b)?{type:"group",field:x=>x.id,color:b,invert:!1}:b}function Z_(b,x){if(!x)return{};const{type:E,color:z,field:te,invert:re}=x,oe=ce=>{const ge=typeof z=="string"?Qy("palette",z):z;if(typeof ge=="function"){const Ae={};return ce.forEach(([Me,Ue])=>{Ae[Me]=ge(re?1-Ue:Ue)}),Ae}else if(Array.isArray(ge)){const Ae=re?[...ge].reverse():ge,Me={};return ce.forEach(([Ue,Xe])=>{Me[Ue]=Ae[Xe%ge.length]}),Me}return{}},le=(ce,ge)=>{var Ae;return typeof ce=="string"?(Ae=ge.data)===null||Ae===void 0?void 0:Ae[ce]:ce==null?void 0:ce(ge)};if(E==="group"){const ce=wP(b,Ue=>{if(!te)return"default";const Xe=le(te,Ue);return Xe?String(Xe):"default"}),ge=Object.keys(ce),Ae=oe(ge.map((Ue,Xe)=>[Ue,Xe])),Me={};return Object.entries(ce).forEach(([Ue,Xe])=>{Xe.forEach($e=>{Me[Ji($e)]=Ae[Ue]})}),Me}else if(E==="value"){const[ce,ge]=b.reduce(([Me,Ue],Xe)=>{const $e=le(te,Xe);if(typeof $e!="number")throw new Error(Jy(`Palette field ${te} is not a number`));return[Math.min(Me,$e),Math.max(Ue,$e)]},[1/0,-1/0]),Ae=ge-ce;return oe(b.map(Me=>[Me.id,(le(te,Me)-ce)/Ae]))}}function V3(b){const x=typeof b=="string"?Qy("palette",b):b;if(typeof x!="function")return x}function K3(b,x){let E=2*b;return typeof x=="string"?E=b*Number(x.replace("%",""))/100:typeof x=="number"&&(E=x),isNaN(E)&&(E=2*b),E}function Z3(b,x,E=1,z=!1){const te=z?E:1,re=(b.max[0]-b.min[0])*te;return K3(re,x)}function Y_(b,x,E=1){const z=Lh(b[0],b[1])*E;return K3(z,x)}var X_={}.toString,Q_=function(b){return X_.call(b).replace(/^\[object /,"").replace(/]$/,"")},J_=Q_,q_=Object.prototype,$_=function(b){var x=b&&b.constructor,E=typeof x=="function"&&x.prototype||q_;return b===E},e8=$_,t8=Object.prototype.hasOwnProperty;function n8(b){if(fl(b))return!0;if(DC(b))return!b.length;var x=J_(b);if(x==="Map"||x==="Set")return!b.size;if(e8(b))return!Object.keys(b).length;for(var E in b)if(t8.call(b,E))return!1;return!0}var uy=n8;class UC extends Mg{constructor(x){Y3(x.style),super(x),this.shapeMap={},this.animateMap={},this.render(this.attributes,this),this.setVisibility(),this.bindEvents()}get parsedAttributes(){return this.attributes}upsert(x,E,z,te,re){var oe,le,ce,ge,Ae,Me,Ue,Xe;const $e=this.shapeMap[x];if(z===!1){$e&&((oe=re==null?void 0:re.beforeDestroy)===null||oe===void 0||oe.call(re,$e),te.removeChild($e),delete this.shapeMap[x],(le=re==null?void 0:re.afterDestroy)===null||le===void 0||le.call(re,$e));return}const rt=typeof E=="string"?Qy(IC.SHAPE,E):E;if(!rt)throw new Error(Jy(`Shape ${E} not found`));if(!$e||$e.destroyed||!($e instanceof rt)){$e&&((ce=re==null?void 0:re.beforeDestroy)===null||ce===void 0||ce.call(re,$e),$e==null||$e.destroy(),(ge=re==null?void 0:re.afterDestroy)===null||ge===void 0||ge.call(re,$e)),(Ae=re==null?void 0:re.beforeCreate)===null||Ae===void 0||Ae.call(re);const ot=new rt({className:x,style:z});return te.appendChild(ot),this.shapeMap[x]=ot,(Me=re==null?void 0:re.afterCreate)===null||Me===void 0||Me.call(re,ot),ot}return(Ue=re==null?void 0:re.beforeUpdate)===null||Ue===void 0||Ue.call(re,$e),F5($e,z),(Xe=re==null?void 0:re.afterUpdate)===null||Xe===void 0||Xe.call(re,$e),$e}update(x={}){const E=Object.assign({},this.attributes,x);Y3(E),i9(this,E),this.render(E,this),this.setVisibility()}bindEvents(){}getGraphicStyle(x){return V_(x)}get compositeShapes(){return[["badges","badge-"],["ports","port-"]]}animate(x,E){if(x.length===0)return null;const z=[];if(x[0].x!==void 0||x[0].y!==void 0||x[0].z!==void 0){const{x:re=0,y:oe=0,z:le=0}=this.attributes;x.forEach(ce=>{const{x:ge=re,y:Ae=oe,z:Me=le}=ce;Object.assign(ce,{transform:Me?[["translate3d",ge,Ae,Me]]:[["translate",ge,Ae]]})})}const te=super.animate(x,E);if(te&&(v5(this,te),z.push(te)),Array.isArray(x)&&x.length>0){const re=["transform","transformOrigin","x","y","z","zIndex"];if(Object.keys(x[0]).some(oe=>!re.includes(oe))){Object.entries(this.shapeMap).forEach(([le,ce])=>{const ge=`get${AP(le)}Style`,Ae=this[ge];if(_s(Ae)){const Me=x.map(Xe=>Ae.call(this,Object.assign(Object.assign({},this.attributes),Xe))),Ue=ce.animate(YT(Me),E);Ue&&(v5(ce,Ue),z.push(Ue))}});const oe=(le,ce)=>{if(!uy(le)){const ge=`get${AP(ce)}Style`,Ae=this[ge];if(_s(Ae)){const Me=x.map(Ue=>Ae.call(this,Object.assign(Object.assign({},this.attributes),Ue)));Object.entries(Me[0]).map(([Ue])=>{const Xe=Me.map(rt=>rt[Ue]),$e=le[Ue];if($e){const rt=$e.animate(YT(Xe),E);rt&&(v5($e,rt),z.push(rt))}})}}};this.compositeShapes.forEach(([le,ce])=>{const ge=p5(this.shapeMap,ce);oe(ge,le)})}}return ZT(z)}getShape(x){return this.shapeMap[x]}setVisibility(){const{visibility:x}=this.attributes;WE(this,x)}destroy(){this.shapeMap={},this.animateMap={},super.destroy()}}function v5(b,x){x==null||x.finished.then(()=>{const E=b.activeAnimations.findIndex(z=>z===x);E>-1&&b.activeAnimations.splice(E,1)})}function Y3(b){if(!b)return{};if("x"in b||"y"in b||"z"in b){const{x=0,y:E=0,z,transform:te}=b,re=BI(x,E,z,te);re&&(b.transform=re)}return b}var r8=function(b,x){var E={};for(var z in b)Object.prototype.hasOwnProperty.call(b,z)&&x.indexOf(z)<0&&(E[z]=b[z]);if(b!=null&&typeof Object.getOwnPropertySymbols=="function")for(var te=0,z=Object.getOwnPropertySymbols(b);te{E.push([te===0?"M":"L",...z])}),x&&E.push(["Z"]),E}const X3={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 o8(b){const x=b.replace(/[\n\r]/g,"").replace(/-/g," -").replace(/(\d*\.)(\d+)(?=\.)/g,"$1$2 ").trim().split(/\s*,|\s+/),E=[];let z="",te={};for(;x.length>0;){let re=x.shift();re in X3?z=re:x.unshift(re),te={type:z},X3[z].forEach(ce=>{re=x.shift(),te[ce]=re}),z==="M"?z="L":z==="m"&&(z="l");const[oe,...le]=Object.values(te);E.push([oe,...le.map(Number)])}return E}function a8(b){const x=[];return(typeof b=="string"?o8(b):b).forEach(z=>{const te=z[0];if(te==="Z"){x.push(x[0]);return}if(te!=="A")for(let re=1;re{if(b.length<2)return[["M",0,0],["L",0,0]];const x=b[0],E=b[1],z=b[b.length-1],te=b[b.length-2];b.unshift(te,z),b.push(x,E);const re=[["M",z[0],z[1]]];for(let oe=1;oe{const ot=$e,pt=Ae[(rt+1)%Ae.length];return Vd(ot,pt)?null:[ot,pt]}).filter(Boolean),Ue=F_([le,ce],Me),Xe=k3([le,ce],Ue);if(Xe&&Ue&&(ge.transform=[["translate",Xe[0]+E,Xe[1]+z]],oe)){const $e=Math.atan((Ue[0][1]-Ue[1][1])/(Ue[0][0]-Ue[1][0]));ge.transform.push(["rotate",$e/Math.PI*180]),ge.textAlign="center",(x==="right"||x==="left")&&($e>0?ge.textBaseline=x==="right"?"bottom":"top":ge.textBaseline=x==="right"?"top":"bottom")}return ge}var l8=function(b,x){var E={};for(var z in b)Object.prototype.hasOwnProperty.call(b,z)&&x.indexOf(z)<0&&(E[z]=b[z]);if(b!=null&&typeof Object.getOwnPropertySymbols=="function")for(var te=0,z=Object.getOwnPropertySymbols(b);te{z!=null&&z.children.length&&z.children.forEach(te=>{x.push(te),E(te)})};return E(b),x}function c8(b){const x=[];let E=b.parentNode;for(;E;)x.push(E),E=E.parentNode;return x}class m5 extends Xv{constructor(x){super(x),this.onMounted=()=>{this.handleRadius()},this.onAttrModified=()=>{this.handleRadius()},OS=this,this.isMutationObserved=!0,this.addEventListener(ru.MOUNTED,this.onMounted),this.addEventListener(ru.ATTR_MODIFIED,this.onAttrModified)}handleRadius(){const{radius:x,clipPath:E,width:z=0,height:te=0}=this.attributes;if(x&&z&&te){const[re,oe]=this.getBounds().min,le={x:re,y:oe,radius:x,width:z,height:te};if(E)Object.assign(this.parsedStyle.clipPath.style,le);else{const ce=new sh({style:le});this.style.clipPath=ce}}else E&&(this.style.clipPath=null)}}const y5=new WeakMap;let OS=null;const x5=b=>{if(OS&&c8(OS).includes(b)){const x=y5.get(b);x?x.includes(OS)||x.push(OS):y5.set(b,[OS])}},E5=b=>{const x=y5.get(b);x&&x.forEach(E=>E.handleRadius())};class J3 extends UC{constructor(x){super(x)}isImage(){const{src:x}=this.attributes;return!!x}getIconStyle(x=this.attributes){const{width:E=0,height:z=0}=x,te=this.getGraphicStyle(x);return this.isImage()?Object.assign({x:-E/2,y:-z/2},te):Object.assign({textBaseline:"middle",textAlign:"center"},te)}render(x=this.attributes,E=this){this.upsert("icon",this.isImage()?m5:Hd,this.getIconStyle(x),E)}}class q3 extends UC{get context(){return this.config.context}get parsedAttributes(){return this.attributes}onframe(){}animate(x,E){const z=super.animate(x,E);return z&&(z.onframe=()=>this.onframe(),z.finished.then(()=>this.onframe())),z}}var VP=function(b,x){var E={};for(var z in b)Object.prototype.hasOwnProperty.call(b,z)&&x.indexOf(z)<0&&(E[z]=b[z]);if(b!=null&&typeof Object.getOwnPropertySymbols=="function")for(var te=0,z=Object.getOwnPropertySymbols(b);te{te[Me]=!1}),x.badge===!1||!(!((E=x.badges)===null||E===void 0)&&E.length))return te;const{badges:re=[],badgePalette:oe,opacity:le=1}=x,ce=VP(x,["badges","badgePalette","opacity"]),ge=V3(oe),Ae=hf(this.getGraphicStyle(ce),"badge");return re.forEach((Me,Ue)=>{te[Ue]=Object.assign(Object.assign({backgroundFill:ge?ge[Ue%(ge==null?void 0:ge.length)]:void 0,opacity:le},Ae),this.getBadgeStyle(Me))}),te}getBadgeStyle(x){const E=this.getShape("key"),{placement:z="top",offsetX:te,offsetY:re}=x,oe=VP(x,["placement","offsetX","offsetY"]),le=IO(E.getLocalBounds(),z,te,re,!0);return Object.assign(Object.assign({},le),oe)}getPortsStyle(x){var E;const z=this.getPorts(),te={};if(Object.keys(z).forEach(le=>{te[le]=!1}),x.port===!1||!(!((E=x.ports)===null||E===void 0)&&E.length))return te;const re=hf(this.getGraphicStyle(x),"port"),{ports:oe=[]}=x;return oe.forEach((le,ce)=>{const ge=le.key||ce,Ae=Object.assign(Object.assign({},re),le);if(LO(Ae))te[ge]=!1;else{const[Me,Ue]=this.getPortXY(x,le);te[ge]=Object.assign({transform:[["translate",Me,Ue]]},Ae)}}),te}getPortXY(x,E){const{placement:z="left"}=E,te=this.getShape("key");return B5(h8(this.context,te),z)}getPorts(){return p5(this.shapeMap,"port-")}getCenter(){return this.getShape("key").getBounds().center}getIntersectPoint(x,E=!1){const z=this.getShape("key").getBounds();return R_(x,z,E)}drawHaloShape(x,E){const z=this.getHaloStyle(x),te=this.getShape("key");this.upsert("halo",te.constructor,z,E)}drawIconShape(x,E){const z=this.getIconStyle(x);this.upsert("icon",J3,z,E),x5(this)}drawBadgeShapes(x,E){const z=this.getBadgesStyle(x);Object.keys(z).forEach(te=>{const re=z[te];this.upsert(`badge-${te}`,IS,re,E)})}drawPortShapes(x,E){const z=this.getPortsStyle(x);Object.keys(z).forEach(te=>{const re=z[te],oe=`port-${te}`;this.upsert(oe,xp,re,E)})}drawLabelShape(x,E){const z=this.getLabelStyle(x);this.upsert("label",mx,z,E)}_drawKeyShape(x,E){return this.drawKeyShape(x,E)}render(x=this.parsedAttributes,E=this){this._drawKeyShape(x,E),this.getShape("key")&&(this.drawHaloShape(x,E),this.drawIconShape(x,E),this.drawBadgeShapes(x,E),this.drawLabelShape(x,E),this.drawPortShapes(x,E))}update(x){super.update(x),x&&("x"in x||"y"in x||"z"in x)&&E5(this)}onframe(){this.drawBadgeShapes(this.parsedAttributes,this),this.drawLabelShape(this.parsedAttributes,this)}}hm.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 h8(b,x){if(!b)return x.getLocalBounds();const E=b.canvas.getLayer(),z=x.cloneNode();WE(z,"hidden"),E.appendChild(z);const te=z.getLocalBounds();return z.destroy(),te}class VE extends hm{constructor(x){super(qf({style:VE.defaultStyleProps},x))}drawKeyShape(x,E){return this.upsert("key",xp,this.getKeyStyle(x),E)}getKeyStyle(x){const E=super.getKeyStyle(x);return Object.assign(Object.assign({},E),{r:Math.min(...this.getSize(x))/2})}getIconStyle(x){const E=super.getIconStyle(x),{r:z}=this.getShape("key").attributes,te=z*2*t1;return E?Object.assign({width:te,height:te},E):!1}getIntersectPoint(x,E=!1){const z=this.getShape("key").getBounds();return WP(x,z,E)}}VE.defaultStyleProps={size:32};class KP extends hm{constructor(x){super(x)}get parsedAttributes(){return this.attributes}drawKeyShape(x,E){return this.upsert("key",Qp,this.getKeyStyle(x),E)}getKeyStyle(x){const E=super.getKeyStyle(x);return Object.assign(Object.assign({},E),{points:this.getPoints(x)})}getIntersectPoint(x,E=!1){var z,te;const{points:re}=this.getShape("key").attributes,oe=[+(((z=this.attributes)===null||z===void 0?void 0:z.x)||0),+(((te=this.attributes)===null||te===void 0?void 0:te.y)||0)];return R3(x,oe,re,!0,E).point}}class d8 extends KP{constructor(x){super(x)}getPoints(x){const[E,z]=this.getSize(x);return n9(E,z)}}var f8=function(b,x){var E={};for(var z in b)Object.prototype.hasOwnProperty.call(b,z)&&x.indexOf(z)<0&&(E[z]=b[z]);if(b!=null&&typeof Object.getOwnPropertySymbols=="function")for(var te=0,z=Object.getOwnPropertySymbols(b);teos(Me)?{value:Me}:Me),re=hf(this.getGraphicStyle(x),"donut"),oe=V3(x.donutPalette);if(!oe)return;const le=te.reduce((Me,Ue)=>{var Xe;return Me+((Xe=Ue.value)!==null&&Xe!==void 0?Xe:0)},0),ce=this.parseOuterR(),ge=this.parseInnerR();let Ae=0;te.forEach((Me,Ue)=>{const{value:Xe=0,color:$e=oe[Ue%oe.length]}=Me,rt=f8(Me,["value","color"]),ot=(le===0?1/te.length:Xe/le)*360;this.upsert(`round${Ue}`,Gd,Object.assign(Object.assign(Object.assign({},re),{d:v8(ce,ge,Ae,Ae+ot),fill:$e}),rt),E),Ae+=ot})}render(x,E=this){super.render(x,E),this.drawDonutShape(x,E)}}ZP.defaultStyleProps={innerR:"50%",donuts:[],donutPalette:"tableau"};const YP=(b,x,E,z)=>[b+Math.sin(z)*E,x-Math.cos(z)*E],g8=(b,x,E,z)=>z<=0||E<=z?[["M",b-E,x],["A",E,E,0,1,1,b+E,x],["A",E,E,0,1,1,b-E,x],["Z"]]:[["M",b-E,x],["A",E,E,0,1,1,b+E,x],["A",E,E,0,1,1,b-E,x],["Z"],["M",b+z,x],["A",z,z,0,1,0,b-z,x],["A",z,z,0,1,0,b+z,x],["Z"]],p8=(b,x,E,z,te,re)=>{const[oe,le]=[te/360*2*Math.PI,re/360*2*Math.PI],ce=[YP(b,x,z,oe),YP(b,x,E,oe),YP(b,x,E,le),YP(b,x,z,le)],ge=le-oe>Math.PI?1:0;return[["M",ce[0][0],ce[0][1]],["L",ce[1][0],ce[1][1]],["A",E,E,0,ge,1,ce[2][0],ce[2][1]],["L",ce[3][0],ce[3][1]],["A",z,z,0,ge,0,ce[0][0],ce[0][1]],["Z"]]},v8=(b=0,x=0,E,z)=>{const[te,re]=[0,0];return Math.abs(E-z)%360<1e-6?g8(te,re,b,x):p8(te,re,b,x,E,z)};class XP extends hm{constructor(x){super(qf({style:XP.defaultStyleProps},x))}drawKeyShape(x,E){return this.upsert("key",Mh,this.getKeyStyle(x),E)}getKeyStyle(x){const E=super.getKeyStyle(x),[z,te]=this.getSize(x);return Object.assign(Object.assign({},E),{rx:z/2,ry:te/2})}getIconStyle(x){const E=super.getIconStyle(x),{rx:z,ry:te}=this.getShape("key").attributes,re=Math.min(+z,+te)*2*t1;return E?Object.assign({width:re,height:re},E):!1}getIntersectPoint(x,E=!1){const z=this.getShape("key").getBounds();return WP(x,z,E)}}XP.defaultStyleProps={size:[45,35]};class m8 extends KP{constructor(x){super(x)}getOuterR(x){return x.outerR||Math.min(...this.getSize(x))/2}getPoints(x){return o9(this.getOuterR(x))}getIconStyle(x){const E=super.getIconStyle(x),z=this.getOuterR(x)*t1;return E?Object.assign({width:z,height:z},E):!1}}function y8(b,x){var E=x.cx,z=E===void 0?0:E,te=x.cy,re=te===void 0?0:te,oe=x.r;b.arc(z,re,oe,0,Math.PI*2,!1)}function x8(b,x){var E=x.cx,z=E===void 0?0:E,te=x.cy,re=te===void 0?0:te,oe=x.rx,le=x.ry;if(b.ellipse)b.ellipse(z,re,oe,le,0,0,Math.PI*2,!1);else{var ce=oe>le?oe:le,ge=oe>le?1:oe/le,Ae=oe>le?le/oe:1;b.save(),b.scale(ge,Ae),b.arc(z,re,ce,0,Math.PI*2)}}function E8(b,x){var E=x.x1,z=x.y1,te=x.x2,re=x.y2,oe=x.markerStart,le=x.markerEnd,ce=x.markerStartOffset,ge=x.markerEndOffset,Ae=0,Me=0,Ue=0,Xe=0,$e=0,rt,ot;oe&&bl(oe)&&ce&&(rt=te-E,ot=re-z,$e=Math.atan2(ot,rt),Ae=Math.cos($e)*(ce||0),Me=Math.sin($e)*(ce||0)),le&&bl(le)&&ge&&(rt=E-te,ot=z-re,$e=Math.atan2(ot,rt),Ue=Math.cos($e)*(ge||0),Xe=Math.sin($e)*(ge||0)),b.moveTo(E+Ae,z+Me),b.lineTo(te+Ue,re+Xe)}function A8(b,x){var E=x.markerStart,z=x.markerEnd,te=x.markerStartOffset,re=x.markerEndOffset,oe=x.d,le=oe.absolutePath,ce=oe.segments,ge=0,Ae=0,Me=0,Ue=0,Xe=0,$e,rt;if(E&&bl(E)&&te){var ot=E.parentNode.getStartTangent(),pt=(0,Wr.Z)(ot,2),yt=pt[0],Ct=pt[1];$e=yt[0]-Ct[0],rt=yt[1]-Ct[1],Xe=Math.atan2(rt,$e),ge=Math.cos(Xe)*(te||0),Ae=Math.sin(Xe)*(te||0)}if(z&&bl(z)&&re){var zt=z.parentNode.getEndTangent(),Wt=(0,Wr.Z)(zt,2),Ht=Wt[0],Qt=Wt[1];$e=Ht[0]-Qt[0],rt=Ht[1]-Qt[1],Xe=Math.atan2(rt,$e),Me=Math.cos(Xe)*(re||0),Ue=Math.sin(Xe)*(re||0)}for(var Gt=0;GtUi?eo:Ui,al=eo>Ui?1:eo/Ui,Fa=eo>Ui?Ui/eo:1;b.translate(Mo,Po),b.rotate(pa),b.scale(al,Fa),b.arc(0,0,kl,fo,Uo,!!(1-Ga)),b.scale(1/al,1/Fa),b.rotate(-pa),b.translate(-Mo,-Po)}vr&&b.lineTo(vn[6]+Me,vn[7]+Ue);break}case"Z":b.closePath();break}}}function S8(b,x){var E=x.markerStart,z=x.markerEnd,te=x.markerStartOffset,re=x.markerEndOffset,oe=x.points.points,le=oe.length,ce=oe[0][0],ge=oe[0][1],Ae=oe[le-1][0],Me=oe[le-1][1],Ue=0,Xe=0,$e=0,rt=0,ot=0,pt,yt;E&&bl(E)&&te&&(pt=oe[1][0]-oe[0][0],yt=oe[1][1]-oe[0][1],ot=Math.atan2(yt,pt),Ue=Math.cos(ot)*(te||0),Xe=Math.sin(ot)*(te||0)),z&&bl(z)&&re&&(pt=oe[le-1][0]-oe[0][0],yt=oe[le-1][1]-oe[0][1],ot=Math.atan2(yt,pt),$e=Math.cos(ot)*(re||0),rt=Math.sin(ot)*(re||0)),b.moveTo(ce+(Ue||$e),ge+(Xe||rt));for(var Ct=1;Ct0?1:-1,Xe=ce>0?1:-1,$e=Ue+Xe===0,rt=oe.map(function(Wt){return Ah(Wt,0,Math.min(Math.abs(ge)/2,Math.abs(Ae)/2))}),ot=(0,Wr.Z)(rt,4),pt=ot[0],yt=ot[1],Ct=ot[2],zt=ot[3];b.moveTo(Ue*pt+z,re),b.lineTo(ge-Ue*yt+z,re),yt!==0&&b.arc(ge-Ue*yt+z,Xe*yt+re,yt,-Xe*Math.PI/2,Ue>0?0:Math.PI,$e),b.lineTo(ge+z,Ae-Xe*Ct+re),Ct!==0&&b.arc(ge-Ue*Ct+z,Ae-Xe*Ct+re,Ct,Ue>0?0:Math.PI,Xe>0?Math.PI/2:1.5*Math.PI,$e),b.lineTo(Ue*zt+z,Ae+re),zt!==0&&b.arc(Ue*zt+z,Ae-Xe*zt+re,zt,Xe>0?Math.PI/2:-Math.PI/2,Ue>0?Math.PI:0,$e),b.lineTo(z,Xe*pt+re),pt!==0&&b.arc(Ue*pt+z,Xe*pt+re,pt,Ue>0?Math.PI:0,Xe>0?Math.PI*1.5:Math.PI/2,$e)}}var b8=function(b){function x(){var E;(0,xi.Z)(this,x);for(var z=arguments.length,te=new Array(z),re=0;re=ce-pt&&yt<=ce+pt:!1}function QP(b,x,E,z){return b/(E*E)+x/(z*z)}function I8(b,x,E){var z=b.parsedStyle,te=z.cx,re=te===void 0?0:te,oe=z.cy,le=oe===void 0?0:oe,ce=z.rx,ge=z.ry,Ae=z.fill,Me=z.stroke,Ue=z.lineWidth,Xe=Ue===void 0?1:Ue,$e=z.increasedLineWidthForHitTesting,rt=$e===void 0?0:$e,ot=z.pointerEvents,pt=ot===void 0?"auto":ot,yt=x.x,Ct=x.y,zt=m0(pt,Ae,Me),Wt=(0,Wr.Z)(zt,2),Ht=Wt[0],Qt=Wt[1],Gt=(Xe+rt)/2,vn=(yt-re)*(yt-re),Sn=(Ct-le)*(Ct-le);return Ht&&Qt||E?QP(vn,Sn,ce+Gt,ge+Gt)<=1:Ht?QP(vn,Sn,ce,ge)<=1:Qt?QP(vn,Sn,ce-Gt,ge-Gt)>=1&&QP(vn,Sn,ce+Gt,ge+Gt)<=1:!1}function KE(b,x,E,z,te,re){return te>=b&&te<=b+E&&re>=x&&re<=x+z}function O8(b,x,E,z,te,re,oe){var le=te/2;return KE(b-le,x-le,E,te,re,oe)||KE(b+E-le,x-le,te,z,re,oe)||KE(b+le,x+z-le,E,te,re,oe)||KE(b-le,x+le,te,z,re,oe)}function JP(b,x,E,z,te,re,oe,le){var ce=(Math.atan2(le-x,oe-b)+Math.PI*2)%(Math.PI*2),ge={x:b+E*Math.cos(ce),y:x+E*Math.sin(ce)};return rf(ge.x,ge.y,oe,le)<=re/2}function yx(b,x,E,z,te,re,oe){var le=Math.min(b,E),ce=Math.max(b,E),ge=Math.min(x,z),Ae=Math.max(x,z),Me=te/2;return re>=le-Me&&re<=ce+Me&&oe>=ge-Me&&oe<=Ae+Me?J2(b,x,E,z,re,oe)<=te/2:!1}function eO(b,x,E,z,te){var re=b.length;if(re<2)return!1;for(var oe=0;oe0!=A5(le[1]-E)>0&&A5(x-(E-oe[1])*(oe[0]-le[0])/(oe[1]-le[1])-oe[0])<0&&(z=!z)}return z}function nO(b,x,E){for(var z=!1,te=0;te=te.min[0]&&x.y>=te.min[1]&&x.x<=te.max[0]&&x.y<=te.max[1]}var H8=function(b){function x(){var E;(0,xi.Z)(this,x);for(var z=arguments.length,te=new Array(z),re=0;re0&&arguments[0]!==void 0?arguments[0]:b.api;b.rafId&&(E.cancelAnimationFrame(b.rafId),b.rafId=null)}},{key:"executeTask",value:function(){var E=arguments.length>0&&arguments[0]!==void 0?arguments[0]:b.api;S5.length<=0&&w5.length<=0||(w5.forEach(function(z){return z()}),w5=S5.splice(0,b.TASK_NUM_PER_FRAME),b.rafId=E.requestAnimationFrame(function(){b.executeTask(E)}))}},{key:"sliceImage",value:function(E,z,te,re){for(var oe=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,le=arguments.length>5&&arguments[5]!==void 0?arguments[5]:b.api,ce=E.naturalWidth||E.width,ge=E.naturalHeight||E.height,Ae=z-oe,Me=te-oe,Ue=Math.ceil(ce/Ae),Xe=Math.ceil(ge/Me),$e={tileSize:[z,te],gridSize:[Xe,Ue],tiles:Array(Xe).fill(null).map(function(){return Array(Ue).fill(null)})},rt=function(yt){for(var Ct=function(Ht){S5.push(function(){var Qt=Ht*Ae,Gt=yt*Me,vn=[Math.min(z,ce-Qt),Math.min(te,ge-Gt)],Sn=vn[0],kn=vn[1],Kn=le.createCanvas();Kn.width=z,Kn.height=te;var vr=Kn.getContext("2d");vr.drawImage(E,Qt,Gt,Sn,kn,0,0,Sn,kn),$e.tiles[yt][Ht]={x:Qt,y:Gt,tileX:Ht,tileY:yt,data:Kn},re()})},zt=0;ztGt&&vr>vn,Ct&&(typeof Ct.resetTransform=="function"?Ct.resetTransform():Ct.setTransform(1,0,0,1,0,0),te.clearFullScreen&&te.clearRect(Ct,0,0,Wt*zt,Ht*zt,oe.background))});var pt=function(Ct,zt){for(var Wt=[Ct];Wt.length>0;){var Ht=Wt.pop();Ht.isVisible()&&!Ht.isCulled()&&(Ue?te.renderDisplayObjectOptimized(Ht,zt,te.context,cy(te,Kd)[Kd],z):te.renderDisplayObject(Ht,zt,te.context,cy(te,Kd)[Kd],z));for(var Qt=Ht.sortable.sorted||Ht.childNodes,Gt=Qt.length-1;Gt>=0;Gt--)Wt.push(Qt[Gt])}};ce.hooks.endFrame.tap(b.tag,function(){if(ge.root.childNodes.length===0){te.clearFullScreenLastFrame=!0;return}Ue=oe.renderer.getConfig().enableRenderingOptimization,cy(te,Kd)[Kd]={restoreStack:[],prevObject:null,currentContext:cy(te,Kd)[Kd].currentContext},cy(te,Kd)[Kd].currentContext.clear(),te.clearFullScreenLastFrame=!1;var yt=Xe.getContext(),Ct=Xe.getDPR();if(l0(te.dprMatrix,[Ct,Ct,1]),vl(te.vpMatrix,te.dprMatrix,le.getOrthoMatrix()),te.clearFullScreen)Ue?(yt.save(),pt(ge.root,yt),yt.restore()):pt(ge.root,yt),te.removedRBushNodeAABBs=[];else{var zt=te.safeMergeAABB.apply(te,[te.mergeDirtyAABBs(te.renderQueue)].concat((0,Bo.Z)(te.removedRBushNodeAABBs.map(function(eo){var Ui=eo.minX,fo=eo.minY,Uo=eo.maxX,pa=eo.maxY,Ga=new Cc;return Ga.setMinMax([Ui,fo,0],[Uo,pa,0]),Ga}))));if(te.removedRBushNodeAABBs=[],Cc.isEmpty(zt)){te.renderQueue=[];return}var Wt=te.convertAABB2Rect(zt),Ht=Wt.x,Qt=Wt.y,Gt=Wt.width,vn=Wt.height,Sn=Ac(te.vec3a,[Ht,Qt,0],te.vpMatrix),kn=Ac(te.vec3b,[Ht+Gt,Qt,0],te.vpMatrix),Kn=Ac(te.vec3c,[Ht,Qt+vn,0],te.vpMatrix),vr=Ac(te.vec3d,[Ht+Gt,Qt+vn,0],te.vpMatrix),er=Math.min(Sn[0],kn[0],vr[0],Kn[0]),Nr=Math.min(Sn[1],kn[1],vr[1],Kn[1]),ei=Math.max(Sn[0],kn[0],vr[0],Kn[0]),Ar=Math.max(Sn[1],kn[1],vr[1],Kn[1]),Sr=Math.floor(er),Ir=Math.floor(Nr),si=Math.ceil(ei-er),Cr=Math.ceil(Ar-Nr);yt.save(),te.clearRect(yt,Sr,Ir,si,Cr,oe.background),yt.beginPath(),yt.rect(Sr,Ir,si,Cr),yt.clip(),yt.setTransform(te.vpMatrix[0],te.vpMatrix[1],te.vpMatrix[4],te.vpMatrix[5],te.vpMatrix[12],te.vpMatrix[13]);var wi=oe.renderer.getConfig(),Mo=wi.enableDirtyRectangleRenderingDebug;Mo&&$e.dispatchEvent(new Qh(Cu.DIRTY_RECTANGLE,{dirtyRect:{x:Sr,y:Ir,width:si,height:Cr}}));var Po=te.searchDirtyObjects(zt);Po.sort(function(eo,Ui){return eo.sortable.renderOrder-Ui.sortable.renderOrder}).forEach(function(eo){eo&&eo.isVisible()&&!eo.isCulled()&&te.renderDisplayObject(eo,yt,te.context,cy(te,Kd)[Kd],z)}),yt.restore(),te.renderQueue.forEach(function(eo){te.saveDirtyAABB(eo)}),te.renderQueue=[]}cy(te,Kd)[Kd].restoreStack.forEach(function(){yt.restore()}),cy(te,Kd)[Kd].restoreStack=[]}),ce.hooks.render.tap(b.tag,function(yt){te.clearFullScreen||te.renderQueue.push(yt)})}},{key:"clearRect",value:function(E,z,te,re,oe,le){E.clearRect(z,te,re,oe),le&&(E.fillStyle=le,E.fillRect(z,te,re,oe))}},{key:"renderDisplayObjectOptimized",value:function(E,z,te,re,oe){var le=E.nodeName,ce=!1,ge=!1,Ae=this.context.styleRendererFactory[le],Me=this.pathGeneratorFactory[le],Ue=E.parsedStyle.clipPath;if(Ue){ce=!re.prevObject||!Gr(Ue.getWorldTransform(),re.prevObject.getWorldTransform()),ce&&(this.applyWorldTransform(z,Ue),re.prevObject=null);var Xe=this.pathGeneratorFactory[Ue.nodeName];Xe&&(z.save(),ge=!0,z.beginPath(),Xe(z,Ue.parsedStyle),z.closePath(),z.clip())}if(Ae){ce=!re.prevObject||!Gr(E.getWorldTransform(),re.prevObject.getWorldTransform()),ce&&this.applyWorldTransform(z,E);var $e=!re.prevObject;if(!$e){var rt=re.prevObject.nodeName;le===ci.TEXT?$e=rt!==ci.TEXT:le===ci.IMAGE?$e=rt!==ci.IMAGE:$e=rt===ci.TEXT||rt===ci.IMAGE}Ae.applyStyleToContext(z,E,$e,re),re.prevObject=E}Me&&(z.beginPath(),Me(z,E.parsedStyle),le!==ci.LINE&&le!==ci.PATH&&le!==ci.POLYLINE&&z.closePath()),Ae&&Ae.drawToContext(z,E,cy(this,Kd)[Kd],this,oe),ge&&z.restore(),E.renderable.dirty=!1}},{key:"renderDisplayObject",value:function(E,z,te,re,oe){var le=E.nodeName,ce=re.restoreStack[re.restoreStack.length-1];ce&&!(E.compareDocumentPosition(ce)&ah.DOCUMENT_POSITION_CONTAINS)&&(z.restore(),re.restoreStack.pop());var ge=this.context.styleRendererFactory[le],Ae=this.pathGeneratorFactory[le],Me=E.parsedStyle.clipPath;if(Me){this.applyWorldTransform(z,Me);var Ue=this.pathGeneratorFactory[Me.nodeName];Ue&&(z.save(),re.restoreStack.push(E),z.beginPath(),Ue(z,Me.parsedStyle),z.closePath(),z.clip())}ge&&(this.applyWorldTransform(z,E),z.save(),this.applyAttributesToContext(z,E)),Ae&&(z.beginPath(),Ae(z,E.parsedStyle),le!==ci.LINE&&le!==ci.PATH&&le!==ci.POLYLINE&&z.closePath()),ge&&(ge.render(z,E.parsedStyle,E,te,this,oe),z.restore()),E.renderable.dirty=!1}},{key:"applyAttributesToContext",value:function(E,z){var te=z.parsedStyle,re=te.stroke,oe=te.fill,le=te.opacity,ce=te.lineDash,ge=te.lineDashOffset;ce&&E.setLineDash(ce),fl(ge)||(E.lineDashOffset=ge),fl(le)||(E.globalAlpha*=le),!fl(re)&&!Array.isArray(re)&&!re.isNone&&(E.strokeStyle=z.attributes.stroke),!fl(oe)&&!Array.isArray(oe)&&!oe.isNone&&(E.fillStyle=z.attributes.fill)}},{key:"convertAABB2Rect",value:function(E){var z=E.getMin(),te=E.getMax(),re=Math.floor(z[0]),oe=Math.floor(z[1]),le=Math.ceil(te[0]),ce=Math.ceil(te[1]),ge=le-re,Ae=ce-oe;return{x:re,y:oe,width:ge,height:Ae}}},{key:"mergeDirtyAABBs",value:function(E){var z=new Cc;return E.forEach(function(te){var re=te.getRenderBounds();z.add(re);var oe=te.renderable.dirtyRenderBounds;oe&&z.add(oe)}),z}},{key:"searchDirtyObjects",value:function(E){var z=E.getMin(),te=(0,Wr.Z)(z,2),re=te[0],oe=te[1],le=E.getMax(),ce=(0,Wr.Z)(le,2),ge=ce[0],Ae=ce[1],Me=this.rBush.search({minX:re,minY:oe,maxX:ge,maxY:Ae});return Me.map(function(Ue){var Xe=Ue.displayObject;return Xe})}},{key:"saveDirtyAABB",value:function(E){var z=E.renderable;z.dirtyRenderBounds||(z.dirtyRenderBounds=new Cc);var te=E.getRenderBounds();te&&z.dirtyRenderBounds.update(te.center,te.halfExtents)}},{key:"applyWorldTransform",value:function(E,z,te){te?(ec(this.tmpMat4,z.getLocalTransform()),vl(this.tmpMat4,te,this.tmpMat4),vl(this.tmpMat4,this.vpMatrix,this.tmpMat4)):(ec(this.tmpMat4,z.getWorldTransform()),vl(this.tmpMat4,this.vpMatrix,this.tmpMat4)),E.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 E=new Cc,z=arguments.length,te=new Array(z),re=0;re0;if(Me){if(te||z.attributes.stroke!==re.prevObject.attributes.stroke){var Ue=!fl(le.stroke)&&!Array.isArray(le.stroke)&&!le.stroke.isNone?z.attributes.stroke:df.strokeStyle;pd(E,"strokeStyle",Ue,re.currentContext)}(te||le.lineWidth!==oe.lineWidth)&&pd(E,"lineWidth",fl(le.lineWidth)?df.lineWidth:le.lineWidth,re.currentContext),(te||le.lineDash!==oe.lineDash)&&pd(E,"lineDash",le.lineDash||df.lineDash,re.currentContext),(te||le.lineDashOffset!==oe.lineDashOffset)&&pd(E,"lineDashOffset",fl(le.lineDashOffset)?df.lineDashOffset:le.lineDashOffset,re.currentContext);for(var Xe=0;Xe4&&arguments[4]!==void 0?arguments[4]:!1;if(z){pd(E,"shadowColor",df.shadowColor,re.currentContext);for(var le=0;le-1&&pd(E,"filter",ge.replace(/drop-shadow\([^)]*\)/,"").trim()||df.filter,re.currentContext)}else pd(E,"filter",df.filter,re.currentContext)}},{key:"fillToContext",value:function(E,z,te,re,oe){var le=this,ce=z.parsedStyle,ge=ce.fill,Ae=ce.fillRule,Me=null;if(Array.isArray(ge)&&ge.length>0)ge.forEach(function(Xe){var $e=pd(E,"fillStyle",eM(Xe,z,E,le.imagePool),te.currentContext);Me=Me!=null?Me:$e,Ae?E.fill(Ae):E.fill()});else{if(bh(ge)){var Ue=$P(ge,z,E,z.ownerDocument.defaultView.context,re,oe,this.imagePool);Ue&&(E.fillStyle=Ue,Me=!0)}Ae?E.fill(Ae):E.fill()}Me!==null&&pd(E,"fillStyle",Me,te.currentContext)}},{key:"strokeToContext",value:function(E,z,te,re,oe){var le=this,ce=z.parsedStyle.stroke,ge=null;if(Array.isArray(ce)&&ce.length>0)ce.forEach(function(Ue){var Xe=pd(E,"strokeStyle",eM(Ue,z,E,le.imagePool),te.currentContext);ge=ge!=null?ge:Xe,E.stroke()});else{if(bh(ce)){var Ae=$P(ce,z,E,z.ownerDocument.defaultView.context,re,oe,this.imagePool);if(Ae){var Me=pd(E,"strokeStyle",Ae,te.currentContext);ge=ge!=null?ge:Me}}E.stroke()}ge!==null&&pd(E,"strokeStyle",ge,te.currentContext)}},{key:"drawToContext",value:function(E,z,te,re,oe){var le,ce=z.nodeName,ge=z.parsedStyle,Ae=ge.opacity,Me=Ae===void 0?df.globalAlpha:Ae,Ue=ge.fillOpacity,Xe=Ue===void 0?df.fillOpacity:Ue,$e=ge.strokeOpacity,rt=$e===void 0?df.strokeOpacity:$e,ot=ge.lineWidth,pt=ot===void 0?df.lineWidth:ot,yt=ge.fill&&!ge.fill.isNone,Ct=ge.stroke&&!ge.stroke.isNone&&pt>0;if(!(!yt&&!Ct)){var zt=!fl(ge.shadowColor)&&ge.shadowBlur>0,Wt=ge.shadowType==="inner",Ht=((le=ge.fill)===null||le===void 0?void 0:le.alpha)===0,Qt=!!(ge.filter&&ge.filter.length),Gt=zt&&Ct&&(ce===ci.PATH||ce===ci.LINE||ce===ci.POLYLINE||Ht||Wt),vn=null;if(yt){Gt||this.applyShadowAndFilterStyleToContext(E,z,zt,te);var Sn=Me*Xe;vn=pd(E,"globalAlpha",Sn,te.currentContext),this.fillToContext(E,z,te,re,oe),Gt||this.clearShadowAndFilterStyleForContext(E,zt,Qt,te)}if(Ct){var kn=!1,Kn=Me*rt,vr=pd(E,"globalAlpha",Kn,te.currentContext);if(vn=yt?vn:vr,Gt&&(this.applyShadowAndFilterStyleToContext(E,z,zt,te),kn=!0,Wt)){var er=E.globalCompositeOperation;E.globalCompositeOperation="source-atop",this.strokeToContext(E,z,te,re,oe),E.globalCompositeOperation=er,this.clearShadowAndFilterStyleForContext(E,zt,Qt,te,!0)}this.strokeToContext(E,z,te,re,oe),kn&&this.clearShadowAndFilterStyleForContext(E,zt,Qt,te)}vn!==null&&pd(E,"globalAlpha",vn,te.currentContext)}}}])}(),P5=function(b){function x(){return(0,xi.Z)(this,x),Fi(this,x,arguments)}return(0,Do.Z)(x,b),(0,qr.Z)(x,[{key:"render",value:function(z,te,re,oe,le,ce){var ge=te.fill,Ae=te.fillRule,Me=te.opacity,Ue=Me===void 0?1:Me,Xe=te.fillOpacity,$e=Xe===void 0?1:Xe,rt=te.stroke,ot=te.strokeOpacity,pt=ot===void 0?1:ot,yt=te.lineWidth,Ct=yt===void 0?1:yt,zt=te.lineCap,Wt=te.lineJoin,Ht=te.shadowType,Qt=te.shadowColor,Gt=te.shadowBlur,vn=te.filter,Sn=te.miterLimit,kn=ge&&!ge.isNone,Kn=rt&&!rt.isNone&&Ct>0,vr=(ge==null?void 0:ge.alpha)===0,er=!!(vn&&vn.length),Nr=!fl(Qt)&&Gt>0,ei=re.nodeName,Ar=Ht==="inner",Sr=Kn&&Nr&&(ei===ci.PATH||ei===ci.LINE||ei===ci.POLYLINE||vr||Ar);kn&&(z.globalAlpha=Ue*$e,Sr||nM(re,z,Nr),sO(z,re,ge,Ae,oe,le,ce,this.imagePool),Sr||this.clearShadowAndFilter(z,er,Nr)),Kn&&(z.globalAlpha=Ue*pt,z.lineWidth=Ct,fl(Sn)||(z.miterLimit=Sn),fl(zt)||(z.lineCap=zt),fl(Wt)||(z.lineJoin=Wt),Sr&&(Ar&&(z.globalCompositeOperation="source-atop"),nM(re,z,!0),Ar&&(M5(z,re,rt,oe,le,ce,this.imagePool),z.globalCompositeOperation=df.globalCompositeOperation,this.clearShadowAndFilter(z,er,!0))),M5(z,re,rt,oe,le,ce,this.imagePool))}},{key:"clearShadowAndFilter",value:function(z,te,re){if(re&&(z.shadowColor="transparent",z.shadowBlur=0),te){var oe=z.filter;!fl(oe)&&oe.indexOf("drop-shadow")>-1&&(z.filter=oe.replace(/drop-shadow\([^)]*\)/,"").trim()||"none")}}}])}(X8);function nM(b,x,E){var z=b.parsedStyle,te=z.filter,re=z.shadowColor,oe=z.shadowBlur,le=z.shadowOffsetX,ce=z.shadowOffsetY;te&&te.length&&(x.filter=b.style.filter),E&&(x.shadowColor=re.toString(),x.shadowBlur=oe||0,x.shadowOffsetX=le||0,x.shadowOffsetY=ce||0)}function sO(b,x,E,z,te,re,oe,le){var ce=arguments.length>8&&arguments[8]!==void 0?arguments[8]:!1;Array.isArray(E)?E.forEach(function(ge){b.fillStyle=eM(ge,x,b,le),ce||(z?b.fill(z):b.fill())}):(bh(E)&&(b.fillStyle=$P(E,x,b,te,re,oe,le)),ce||(z?b.fill(z):b.fill()))}function M5(b,x,E,z,te,re,oe){var le=arguments.length>7&&arguments[7]!==void 0?arguments[7]:!1;Array.isArray(E)?E.forEach(function(ce){b.strokeStyle=eM(ce,x,b,oe),le||b.stroke()}):(bh(E)&&(b.strokeStyle=$P(E,x,b,z,te,re,oe)),le||b.stroke())}function Q8(b,x){var E=(0,Wr.Z)(b,4),z=E[0],te=E[1],re=E[2],oe=E[3],le=(0,Wr.Z)(x,4),ce=le[0],ge=le[1],Ae=le[2],Me=le[3],Ue=Math.max(z,ce),Xe=Math.max(te,ge),$e=Math.min(z+re,ce+Ae),rt=Math.min(te+oe,ge+Me);return $e<=Ue||rt<=Xe?null:[Ue,Xe,$e-Ue,rt-Xe]}function J8(b,x){var E=Ac(ba(),[b[0],b[1],0],x),z=Ac(ba(),[b[0]+b[2],b[1],0],x),te=Ac(ba(),[b[0],b[1]+b[3],0],x),re=Ac(ba(),[b[0]+b[2],b[1]+b[3],0],x);return[Math.min(E[0],z[0],te[0],re[0]),Math.min(E[1],z[1],te[1],re[1]),Math.max(E[0],z[0],te[0],re[0])-Math.min(E[0],z[0],te[0],re[0]),Math.max(E[1],z[1],te[1],re[1])-Math.min(E[1],z[1],te[1],re[1])]}var q8=function(b){function x(){return(0,xi.Z)(this,x),Fi(this,x,arguments)}return(0,Do.Z)(x,b),(0,qr.Z)(x,[{key:"renderDownSampled",value:function(z,te,re,oe){var le=oe.src,ce=oe.imageCache;if(!ce.downSampled){this.imagePool.createDownSampledImage(le,re).then(function(ge){re.renderable.dirty=!0,re.ownerDocument.defaultView.context.renderingService.dirtify()}).catch(function(){});return}z.drawImage(ce.downSampled,Math.floor(oe.drawRect[0]),Math.floor(oe.drawRect[1]),Math.ceil(oe.drawRect[2]),Math.ceil(oe.drawRect[3]))}},{key:"renderTile",value:function(z,te,re,oe){var le=oe.src,ce=oe.imageCache,ge=oe.imageRect,Ae=oe.drawRect,Me=ce.size,Ue=z.getTransform(),Xe=Ue.a,$e=Ue.b,rt=Ue.c,ot=Ue.d,pt=Ue.e,yt=Ue.f;if(z.resetTransform(),!(ce!=null&&ce.gridSize)){this.imagePool.createImageTiles(le,[],function(){re.renderable.dirty=!0,re.ownerDocument.defaultView.context.renderingService.dirtify()},re).catch(function(){});return}for(var Ct=[Me[0]/ge[2],Me[1]/ge[3]],zt=[ce.tileSize[0]/Ct[0],ce.tileSize[1]/Ct[1]],Wt=[Math.floor((Ae[0]-ge[0])/zt[0]),Math.ceil((Ae[0]+Ae[2]-ge[0])/zt[0])],Ht=Wt[0],Qt=Wt[1],Gt=[Math.floor((Ae[1]-ge[1])/zt[1]),Math.ceil((Ae[1]+Ae[3]-ge[1])/zt[1])],vn=Gt[0],Sn=Gt[1],kn=vn;kn<=Sn;kn++)for(var Kn=Ht;Kn<=Qt;Kn++){var vr=ce.tiles[kn][Kn];if(vr){var er=[Math.floor(ge[0]+vr.tileX*zt[0]),Math.floor(ge[1]+vr.tileY*zt[1]),Math.ceil(zt[0]),Math.ceil(zt[1])];z.drawImage(vr.data,er[0],er[1],er[2],er[3])}}z.setTransform(Xe,$e,rt,ot,pt,yt)}},{key:"render",value:function(z,te,re){var oe=te.x,le=oe===void 0?0:oe,ce=te.y,ge=ce===void 0?0:ce,Ae=te.width,Me=te.height,Ue=te.src,Xe=te.shadowColor,$e=te.shadowBlur,rt=this.imagePool.getImageSync(Ue,re),ot=rt==null?void 0:rt.img,pt=Ae,yt=Me;if(ot){pt||(pt=ot.width),yt||(yt=ot.height);var Ct=!fl(Xe)&&$e>0;nM(re,z,Ct);try{var zt=re.ownerDocument.defaultView.getContextService().getDomElement(),Wt=zt.width,Ht=zt.height,Qt=z.getTransform(),Gt=Qt.a,vn=Qt.b,Sn=Qt.c,kn=Qt.d,Kn=Qt.e,vr=Qt.f,er=Kg(Gt,Sn,0,0,vn,kn,0,0,0,0,1,0,Kn,vr,0,1),Nr=J8([le,ge,pt,yt],er),ei=Q8([0,0,Wt,Ht],Nr);if(!ei)return;if(!re.ownerDocument.defaultView.getConfig().enableLargeImageOptimization){x.renderFull(z,te,re,{image:ot,drawRect:[le,ge,pt,yt]});return}var Ar=Nr[2]/rt.size[0];if(Ar<(rt.downSamplingRate||.5)){this.renderDownSampled(z,te,re,{src:Ue,imageCache:rt,drawRect:[le,ge,pt,yt]});return}if(!b5.isSupportTile){x.renderFull(z,te,re,{image:ot,drawRect:[le,ge,pt,yt]});return}this.renderTile(z,te,re,{src:Ue,imageCache:rt,imageRect:Nr,drawRect:ei})}catch(Sr){}}}},{key:"drawToContext",value:function(z,te,re,oe,le){this.render(z,te.parsedStyle,te)}}],[{key:"renderFull",value:function(z,te,re,oe){z.drawImage(oe.image,Math.floor(oe.drawRect[0]),Math.floor(oe.drawRect[1]),Math.ceil(oe.drawRect[2]),Math.ceil(oe.drawRect[3]))}}])}(P5),$8=function(b){function x(){return(0,xi.Z)(this,x),Fi(this,x,arguments)}return(0,Do.Z)(x,b),(0,qr.Z)(x,[{key:"render",value:function(z,te,re,oe,le,ce){re.getBounds();var ge=te.lineWidth,Ae=ge===void 0?1:ge,Me=te.textAlign,Ue=Me===void 0?"start":Me,Xe=te.textBaseline,$e=Xe===void 0?"alphabetic":Xe,rt=te.lineJoin,ot=rt===void 0?"miter":rt,pt=te.miterLimit,yt=pt===void 0?10:pt,Ct=te.letterSpacing,zt=Ct===void 0?0:Ct,Wt=te.stroke,Ht=te.fill,Qt=te.fillRule,Gt=te.fillOpacity,vn=Gt===void 0?1:Gt,Sn=te.strokeOpacity,kn=Sn===void 0?1:Sn,Kn=te.opacity,vr=Kn===void 0?1:Kn,er=te.metrics,Nr=te.x,ei=Nr===void 0?0:Nr,Ar=te.y,Sr=Ar===void 0?0:Ar,Ir=te.dx,si=te.dy,Cr=te.shadowColor,wi=te.shadowBlur,Mo=er.font,Po=er.lines,eo=er.height,Ui=er.lineHeight,fo=er.lineMetrics;z.font=Mo,z.lineWidth=Ae,z.textAlign=Ue==="middle"?"center":Ue;var Uo=$e;Uo==="alphabetic"&&(Uo="bottom"),z.lineJoin=ot,fl(yt)||(z.miterLimit=yt);var pa=Sr;$e==="middle"?pa+=-eo/2-Ui/2:$e==="bottom"||$e==="alphabetic"||$e==="ideographic"?pa+=-eo:($e==="top"||$e==="hanging")&&(pa+=-Ui);var Ga=ei+(Ir||0);pa+=si||0,Po.length===1&&(Uo==="bottom"?(Uo="middle",pa-=.5*eo):Uo==="top"&&(Uo="middle",pa+=.5*eo)),z.textBaseline=Uo;var kl=!fl(Cr)&&wi>0;nM(re,z,kl);for(var al=0;al0&&arguments[0]!==void 0?arguments[0]:{};return(0,xi.Z)(this,x),E=Fi(this,x),E.name="canvas-renderer",E.options=z,E}return(0,Do.Z)(x,b),(0,qr.Z)(x,[{key:"init",value:function(){var z,te=(0,Li.Z)({dirtyObjectNumThreshold:500,dirtyObjectRatioThreshold:.8},this.options),re=this.context.imagePool,oe=new P5(re),le=(z={},(0,ps.Z)((0,ps.Z)((0,ps.Z)((0,ps.Z)((0,ps.Z)((0,ps.Z)((0,ps.Z)((0,ps.Z)((0,ps.Z)((0,ps.Z)(z,ci.CIRCLE,oe),ci.ELLIPSE,oe),ci.RECT,oe),ci.IMAGE,new q8(re)),ci.TEXT,new $8(re)),ci.LINE,oe),ci.POLYLINE,oe),ci.POLYGON,oe),ci.PATH,oe),ci.GROUP,void 0),(0,ps.Z)((0,ps.Z)((0,ps.Z)(z,ci.HTML,void 0),ci.MESH,void 0),ci.FRAGMENT,void 0));this.context.defaultStyleRendererFactory=le,this.context.styleRendererFactory=le,this.addRenderingPlugin(new iO(te))}},{key:"destroy",value:function(){this.removeAllRenderingPlugins(),delete this.context.defaultStyleRendererFactory,delete this.context.styleRendererFactory}}])}(q0);var lO=function(){function b(){(0,xi.Z)(this,b)}return(0,qr.Z)(b,[{key:"apply",value:function(E,z){var te=this,re=E.renderingService,oe=E.renderingContext,le=E.config;this.context=E;var ce=oe.root.ownerDocument.defaultView,ge=function(Gt){re.hooks.pointerMove.call(Gt)},Ae=function(Gt){re.hooks.pointerUp.call(Gt)},Me=function(Gt){re.hooks.pointerDown.call(Gt)},Ue=function(Gt){re.hooks.pointerOver.call(Gt)},Xe=function(Gt){re.hooks.pointerOut.call(Gt)},$e=function(Gt){re.hooks.pointerCancel.call(Gt)},rt=function(Gt){re.hooks.pointerWheel.call(Gt)},ot=function(Gt){re.hooks.click.call(Gt)},pt=function(Gt){z.globalThis.document.addEventListener("pointermove",ge,!0),Gt.addEventListener("pointerdown",Me,!0),Gt.addEventListener("pointerleave",Xe,!0),Gt.addEventListener("pointerover",Ue,!0),z.globalThis.addEventListener("pointerup",Ae,!0),z.globalThis.addEventListener("pointercancel",$e,!0)},yt=function(Gt){Gt.addEventListener("touchstart",Me,!0),Gt.addEventListener("touchend",Ae,!0),Gt.addEventListener("touchmove",ge,!0),Gt.addEventListener("touchcancel",$e,!0)},Ct=function(Gt){z.globalThis.document.addEventListener("mousemove",ge,!0),Gt.addEventListener("mousedown",Me,!0),Gt.addEventListener("mouseout",Xe,!0),Gt.addEventListener("mouseover",Ue,!0),z.globalThis.addEventListener("mouseup",Ae,!0)},zt=function(Gt){z.globalThis.document.removeEventListener("pointermove",ge,!0),Gt.removeEventListener("pointerdown",Me,!0),Gt.removeEventListener("pointerleave",Xe,!0),Gt.removeEventListener("pointerover",Ue,!0),z.globalThis.removeEventListener("pointerup",Ae,!0),z.globalThis.removeEventListener("pointercancel",$e,!0)},Wt=function(Gt){Gt.removeEventListener("touchstart",Me,!0),Gt.removeEventListener("touchend",Ae,!0),Gt.removeEventListener("touchmove",ge,!0),Gt.removeEventListener("touchcancel",$e,!0)},Ht=function(Gt){z.globalThis.document.removeEventListener("mousemove",ge,!0),Gt.removeEventListener("mousedown",Me,!0),Gt.removeEventListener("mouseout",Xe,!0),Gt.removeEventListener("mouseover",Ue,!0),z.globalThis.removeEventListener("mouseup",Ae,!0)};re.hooks.init.tap(b.tag,function(){var Qt=te.context.contextService.getDomElement();z.globalThis.navigator.msPointerEnabled?(Qt.style.msContentZooming="none",Qt.style.msTouchAction="none"):ce.supportsPointerEvents&&(Qt.style.touchAction="none"),ce.supportsPointerEvents?pt(Qt):Ct(Qt),ce.supportsTouchEvents&&yt(Qt),le.useNativeClickEvent&&Qt.addEventListener("click",ot,!0),Qt.addEventListener("wheel",rt,{passive:!0,capture:!0})}),re.hooks.destroy.tap(b.tag,function(){var Qt=te.context.contextService.getDomElement();z.globalThis.navigator.msPointerEnabled?(Qt.style.msContentZooming="",Qt.style.msTouchAction=""):ce.supportsPointerEvents&&(Qt.style.touchAction=""),ce.supportsPointerEvents?zt(Qt):Ht(Qt),ce.supportsTouchEvents&&Wt(Qt),le.useNativeClickEvent&&Qt.removeEventListener("click",ot,!0),Qt.removeEventListener("wheel",rt,!0)})}}])}();lO.tag="DOMInteraction";var t7=function(b){function x(){var E;(0,xi.Z)(this,x);for(var z=arguments.length,te=new Array(z),re=0;re1&&arguments[1]!==void 0?arguments[1]:[0,0,0];return"matrix(".concat([E[0],E[1],E[4],E[5],E[12]+z[0],E[13]+z[1]].join(","),")")}},{key:"apply",value:function(E,z){var te=this,re=E.camera,oe=E.renderingContext,le=E.renderingService;this.context=E;var ce=oe.root.ownerDocument.defaultView,ge=ce.context.eventService.nativeHTMLMap,Ae=function(pt,yt){yt.style.transform=te.joinTransformMatrix(pt.getWorldTransform(),pt.getOrigin())},Me=function(pt){var yt=pt.target;if(yt.nodeName===ci.HTML){te.$camera||(te.$camera=te.createCamera(re));var Ct=te.getOrCreateEl(yt);te.$camera.appendChild(Ct),Object.keys(yt.attributes).forEach(function(zt){te.updateAttribute(zt,yt)}),Ae(yt,Ct),ge.set(Ct,yt)}},Ue=function(pt){var yt=pt.target;if(yt.nodeName===ci.HTML&&te.$camera){var Ct=te.getOrCreateEl(yt);Ct&&(Ct.remove(),ge.delete(Ct))}},Xe=function(pt){var yt=pt.target;if(yt.nodeName===ci.HTML){var Ct=pt.attrName;te.updateAttribute(Ct,yt)}},$e=function(pt){var yt=pt.target,Ct=yt.nodeName===ci.FRAGMENT?yt.childNodes:[yt];Ct.forEach(function(zt){if(zt.nodeName===ci.HTML){var Wt=te.getOrCreateEl(zt);Ae(zt,Wt)}})},rt=function(){if(te.$camera){var pt=te.context.config,yt=pt.width,Ct=pt.height;te.$camera.parentElement.style.width="".concat(yt||0,"px"),te.$camera.parentElement.style.height="".concat(Ct||0,"px")}};le.hooks.init.tap(b.tag,function(){ce.addEventListener(Cu.RESIZE,rt),ce.addEventListener(ru.MOUNTED,Me),ce.addEventListener(ru.UNMOUNTED,Ue),ce.addEventListener(ru.ATTR_MODIFIED,Xe),ce.addEventListener(ru.BOUNDS_CHANGED,$e)}),le.hooks.endFrame.tap(b.tag,function(){te.$camera&&oe.renderReasons.has(Kv.CAMERA_CHANGED)&&(te.$camera.style.transform=te.joinTransformMatrix(re.getOrthoMatrix()))}),le.hooks.destroy.tap(b.tag,function(){te.$camera&&te.$camera.remove(),ce.removeEventListener(Cu.RESIZE,rt),ce.removeEventListener(ru.MOUNTED,Me),ce.removeEventListener(ru.UNMOUNTED,Ue),ce.removeEventListener(ru.ATTR_MODIFIED,Xe),ce.removeEventListener(ru.BOUNDS_CHANGED,$e)})}},{key:"createCamera",value:function(E){var z=this.context.config,te=z.document,re=z.width,oe=z.height,le=this.context.contextService.getDomElement(),ce=le.parentNode;if(ce){var ge=n7,Ae=ce.querySelector("#".concat(ge));if(!Ae){var Me=(te||document).createElement("div");Me.style.overflow="hidden",Me.style.pointerEvents="none",Me.style.position="absolute",Me.style.left="0px",Me.style.top="0px",Me.style.width="".concat(re||0,"px"),Me.style.height="".concat(oe||0,"px");var Ue=(te||document).createElement("div");Ae=Ue,Ue.id=ge,Ue.style.position="absolute",Ue.style.left="".concat(le.offsetLeft||0,"px"),Ue.style.top="".concat(le.offsetTop||0,"px"),Ue.style.transformOrigin="left top",Ue.style.transform=this.joinTransformMatrix(E.getOrthoMatrix()),Ue.style.pointerEvents="none",Ue.style.width="100%",Ue.style.height="100%",Me.appendChild(Ue),ce.appendChild(Me)}return Ae}return null}},{key:"getOrCreateEl",value:function(E){var z=this.context.config.document,te=this.displayObjectHTMLElementMap.get(E);return te||(te=(z||document).createElement("div"),E.parsedStyle.$el=te,this.displayObjectHTMLElementMap.set(E,te),E.id&&(te.id=E.id),E.name&&te.setAttribute("name",E.name),E.className&&(te.className=E.className),te.style.position="absolute",te.style["will-change"]="transform",te.style.transform=this.joinTransformMatrix(E.getWorldTransform(),E.getOrigin())),te}},{key:"updateAttribute",value:function(E,z){var te=this.getOrCreateEl(z);switch(E){case"innerHTML":var re=z.parsedStyle.innerHTML;nc(re)?te.innerHTML=re:(te.innerHTML="",te.appendChild(re));break;case"x":te.style.left="".concat(z.parsedStyle.x,"px");break;case"y":te.style.top="".concat(z.parsedStyle.y,"px");break;case"transformOrigin":var oe=z.parsedStyle.transformOrigin;te.style["transform-origin"]="".concat(oe[0].buildCSSText(null,null,"")," ").concat(oe[1].buildCSSText(null,null,""));break;case"width":var le=z.parsedStyle.width;te.style.width=os(le)?"".concat(le,"px"):le.toString();break;case"height":var ce=z.parsedStyle.height;te.style.height=os(ce)?"".concat(ce,"px"):ce.toString();break;case"zIndex":var ge=z.parsedStyle.zIndex;te.style["z-index"]="".concat(ge);break;case"visibility":var Ae=z.parsedStyle.visibility;te.style.visibility=Ae;break;case"pointerEvents":var Me=z.parsedStyle.pointerEvents,Ue=Me===void 0?"auto":Me;te.style.pointerEvents=Ue;break;case"opacity":var Xe=z.parsedStyle.opacity;te.style.opacity="".concat(Xe);break;case"fill":var $e=z.parsedStyle.fill,rt="";zv($e)?$e.isNone?rt="transparent":rt=z.getAttribute("fill"):Array.isArray($e)?rt=z.getAttribute("fill"):bh($e),te.style.background=rt;break;case"stroke":var ot=z.parsedStyle.stroke,pt="";zv(ot)?ot.isNone?pt="transparent":pt=z.getAttribute("stroke"):Array.isArray(ot)?pt=z.getAttribute("stroke"):bh(ot),te.style["border-color"]=pt,te.style["border-style"]="solid";break;case"lineWidth":var yt=z.parsedStyle.lineWidth;te.style["border-width"]="".concat(yt||0,"px");break;case"lineDash":te.style["border-style"]="dashed";break;case"filter":var Ct=z.style.filter;te.style.filter=Ct;break;default:!fl(z.style[E])&&z.style[E]!==""&&(te.style[E]=z.style[E])}}}])}();uO.tag="HTMLRendering";var r7=function(b){function x(){var E;(0,xi.Z)(this,x);for(var z=arguments.length,te=new Array(z),re=0;re0&&le[0]!==void 0?le[0]:{},re=te.type,oe=te.encoderOptions,ge.abrupt("return",this.context.canvas.toDataURL(re,oe));case 3:case"end":return ge.stop()}},z,this)}));function E(){return x.apply(this,arguments)}return E}()}])}(),o7=function(b){function x(){var E;(0,xi.Z)(this,x);for(var z=arguments.length,te=new Array(z),re=0;re{const z=this.context.canvas,te=z.context.renderingContext.root.ownerDocument.defaultView;this.normalizeToPointerEvent(E,te).forEach(oe=>{const le=this.bootstrapEvent(this.rootPointerEvent,oe,te,E);jC(z.context.eventService,"mappingTable.pointerupoutside",[]),z.context.eventService.mapEvent(le)})}}get eventService(){return this.context.canvas.context.eventService}get events(){return[Zo.CLICK,Zo.POINTER_DOWN,Zo.POINTER_MOVE,Zo.POINTER_UP,Zo.POINTER_OVER,Zo.POINTER_LEAVE]}getDomElement(){return this.getShape("key").getDomElement()}render(x=this.parsedAttributes,E=this){this.drawKeyShape(x,E),this.drawPortShapes(x,E)}getKeyStyle(x){const E=ZE(x,["dx","dy","innerHTML","pointerEvents","cursor"]),{dx:z=0,dy:te=0}=E,re=l7(E,["dx","dy"]),[oe,le]=this.getSize(x);return Object.assign(Object.assign({x:z,y:te},re),{width:oe,height:le})}drawKeyShape(x,E){const z=this.getKeyStyle(x),{x:te,y:re,width:oe=0,height:le=0}=z,ce=this.upsert("key-container",sh,{x:te,y:re,width:oe,height:le,opacity:0},E);return this.upsert("key",$m,z,ce)}connectedCallback(){if(!(this.context.canvas.getRenderer("main")instanceof HC))return;const z=this.getDomElement();this.events.forEach(te=>{z.addEventListener(te,this.forwardEvents)})}attributeChangedCallback(x,E,z){x==="zIndex"&&E!==z&&(this.getDomElement().style.zIndex=z)}destroy(){const x=this.getDomElement();this.events.forEach(E=>{x.removeEventListener(E,this.forwardEvents)}),super.destroy()}normalizeToPointerEvent(x,E){const z=[];if(E.isTouchEvent(x))for(let te=0;tethis.context.element.getElement(oe)).filter(Boolean);if(te.length===0){const oe=new Cc,{x:le=0,y:ce=0,size:ge}=x,[Ae,Me]=P0(ge);return oe.setMinMax([le-Ae/2,ce-Me/2,0],[le+Ae/2,ce+Me/2,0]),oe}const re=NC(te.map(oe=>oe.getBounds()));return z?fx(re,z):re}drawCollapsedMarkerShape(x,E){const z=this.getCollapsedMarkerStyle(x);this.upsert("collapsed-marker",J3,z,E),x5(this)}getCollapsedMarkerStyle(x){if(!x.collapsed||!x.collapsedMarker)return!1;const E=hf(this.getGraphicStyle(x),"collapsedMarker"),{type:z}=E,te=dO(E,["type"]),re=this.getShape("key"),[oe,le]=e1(re.getLocalBounds(),"center"),ce=Object.assign(Object.assign({},te),{x:oe,y:le});if(z){const ge=this.getCollapsedMarkerText(z,x);Object.assign(ce,{text:ge})}return ce}getCollapsedMarkerText(x,E){const{childrenData:z=[]}=E,{model:te}=this.context;return x==="descendant-count"?te.getDescendantsData(this.id).length.toString():x==="child-count"?z.length.toString():x==="node-count"?te.getDescendantsData(this.id).filter(re=>te.getElementType(Ji(re))==="node").length.toString():_s(x)?x(z):""}getComboPosition(x){const{x:E=0,y:z=0,collapsed:te,childrenData:re=[]}=x;if(re.length===0)return[+E,+z,0];if(te){const{model:oe}=this.context,le=oe.getDescendantsData(this.id).filter(ce=>!oe.isCombo(Ji(ce)));if(le.length>0&&le.some(I_)){const ce=le.reduce((ge,Ae)=>cu(ge,Rf(Ae)),[0,0,0]);return um(ce,le.length)}return[+E,+z,0]}return this.getContentBBox(x).center}getComboStyle(x){const[E,z]=this.getComboPosition(x);return{x:E,y:z,transform:[["translate",E,z]]}}updateComboPosition(x){const E=this.getComboStyle(x);Object.assign(this.style,E);const{x:z,y:te}=E;this.context.model.syncNodeLikeDatum({id:this.id,style:{x:z,y:te}}),E5(this)}render(x,E=this){super.render(x,E),this.drawCollapsedMarkerShape(x,E)}update(x={}){super.update(x),this.updateComboPosition(this.parsedAttributes)}onframe(){super.onframe(),this.attributes.collapsed||this.updateComboPosition(this.parsedAttributes),this.drawKeyShape(this.parsedAttributes,this)}animate(x,E){const z=super.animate(this.attributes.collapsed?x:x.map(te=>{var{x:re,y:oe,z:le,transform:ce}=te,ge=dO(te,["x","y","z","transform"]);return ge}),E);return z&&new Proxy(z,{set:(te,re,oe)=>(re==="currentTime"&&Promise.resolve().then(()=>this.onframe()),Reflect.set(te,re,oe))})}}NS.defaultStyleProps={childrenNode:[],droppable:!0,draggable:!0,collapsed:!1,collapsedSize:32,collapsedMarker:!0,collapsedMarkerZIndex:1,collapsedMarkerFontSize:12,collapsedMarkerTextAlign:"center",collapsedMarkerTextBaseline:"middle",collapsedMarkerType:"child-count"};class h7 extends NS{constructor(x){super(x)}drawKeyShape(x,E){return this.upsert("key",xp,this.getKeyStyle(x),E)}getKeyStyle(x){const{collapsed:E}=x,z=super.getKeyStyle(x),[te]=this.getKeySize(x);return Object.assign(Object.assign(Object.assign({},z),E&&hf(z,"collapsed")),{r:te/2})}getCollapsedKeySize(x){const[E,z]=P0(x.collapsedSize),te=Math.max(E,z)/2;return[te*2,te*2,0]}getExpandedKeySize(x){const E=this.getContentBBox(x),[z,te]=hx(E),re=Math.sqrt(Math.pow(z,2)+Math.pow(te,2))/2;return[re*2,re*2,0]}getIntersectPoint(x,E=!1){const z=this.getShape("key").getBounds();return WP(x,z,E)}}class d7 extends NS{constructor(x){super(x)}drawKeyShape(x,E){return this.upsert("key",sh,this.getKeyStyle(x),E)}getKeyStyle(x){const E=super.getKeyStyle(x),[z,te]=this.getKeySize(x);return Object.assign(Object.assign(Object.assign({},E),x.collapsed&&hf(E,"collapsed")),{width:z,height:te,x:-z/2,y:-te/2})}}var f7=function(b,x){if(!DC(b))return b;for(var E=[],z=0;z-1:!1},v7=p7,m7=function(b,x){return x===void 0&&(x=[]),g7(b,function(E){return!v7(x,E)})},y7=m7;const x7={padding:10};function fO(b,x,E,z,te,re){const{padding:oe}=Object.assign(x7,re),le=dx(E,oe),ce=dx(z,oe),ge=[b,...te,x];let Ae=null;const Me=[];for(let Ue=0,Xe=ge.length;Uere?"N":"S":z===re?E>te?"W":"E":null}function L5(b,x){return x==="N"||x==="S"?sy(b):ay(b)}function pO(b,x,E){const z=[b[0],x[1]],te=[x[0],b[1]],re=Pp(b,z),oe=Pp(b,te),le=E?E7[E]:null,ce=re===E||re!==le&&oe!==E?z:te;return{points:[ce],direction:Pp(ce,x)}}function aM(b,x,E){if(CP(b,E)){const z=VC(b,x,E);return{points:[z],direction:Pp(z,x)}}else{const z=zE(b,E),re=["left","right"].includes(BC(b,E))?[x[0],z[1]]:[z[0],x[1]];return{points:[re],direction:Pp(re,x)}}}function vO(b,x,E,z){const te=CP(x,E)?x:zE(x,E),re=[[te[0],b[1]],[b[0],te[1]]],oe=re.filter(ce=>Fk(ce,E)&&!zI(ce,E,!0)),le=oe.filter(ce=>Pp(ce,b)!==z);if(le.length>0){const ce=le.find(ge=>Pp(b,ge)===z)||le[0];return{points:[ce],direction:Pp(ce,x)}}else{const ce=y7(re,oe)[0],ge=vx(x,ce,L5(E,z)/2);return{points:[VC(ge,b,E),ge],direction:Pp(ge,x)}}}function A7(b,x,E,z){let te=aM(b,x,E);const re=FC(te.points[0]);if(sm(re,z)){te=aM(x,b,z);const oe=FC(te.points[0]);if(sm(oe,E)){const le=vx(b,re,L5(E,Pp(b,re))/2),ce=vx(x,oe,L5(z,Pp(x,oe))/2),ge=[(le[0]+ce[0])/2,(le[1]+ce[1])/2],Ae=aM(b,ge,E),Me=vO(ge,x,z,Ae.direction);te.points=[Ae.points[0],Me.points[0]],te.direction=Me.direction}}return te}function T5(b,x,E,z,te){const oe=NC([E,z]),le=Lh(x,oe.center)>Lh(b,oe.center),[ce,ge]=le?[x,b]:[b,x],Ae=sy(oe)+ay(oe);let Me;if(te){const $e=[ce[0]+Ae*Math.cos(gO[te]),ce[1]+Ae*Math.sin(gO[te])];Me=vx(zE($e,oe),$e,.01)}else Me=vx(zE(ce,oe),ce,-.01);let Ue=VC(Me,ge,oe),Xe=[_C(Me,2),_C(Ue,2)];if(Vd(_C(Me),_C(Ue))){const $e=c5(Yc(Me,ce),[1,0,0])+Math.PI/2;Ue=[ge[0]+Ae*Math.cos($e),ge[1]+Ae*Math.sin($e),0],Ue=_C(vx(zE(Ue,oe),ge,-.01),2);const rt=VC(Me,Ue,oe);Xe=[Me,rt,Ue]}return{points:le?Xe.reverse():Xe,direction:Pp(le?Me:Ue,x)}}function VC(b,x,E){let z=[b[0],x[1]];return sm(z,E)&&(z=[x[0],b[1]]),z}function mO(b,x,E,z,te){let ce=typeof x=="number"?x:.5;x==="start"&&(ce=0),x==="end"&&(ce=.99);const ge=Rg(b.getPoint(ce)),Ae=Rg(b.getPoint(ce+.01));let Me=x==="start"?"left":x==="end"?"right":"center";if(O3(ge,Ae)||!E){const[pt,yt]=yO(b,ce,z,te);return{transform:[["translate",pt,yt]],textAlign:Me}}let Ue=Math.atan2(Ae[1]-ge[1],Ae[0]-ge[0]);Ae[0]{const ge=re[ce-1]||z,Ae=re[ce+1]||te;if(!N3(ge,le,Ae)&&x){const[Me,Ue]=P7(ge,le,Ae,x);oe.push(["L",Me[0],Me[1]],["Q",le[0],le[1],Ue[0],Ue[1]],["L",Ue[0],Ue[1]])}else oe.push(["L",le[0],le[1]])}),oe.push(["L",te[0],te[1]]),E&&oe.push(["Z"]),oe}function P7(b,x,E,z){const te=zP(b,x),re=zP(E,x),oe=Math.min(z,Math.min(te,re)/2),le=[x[0]-oe/te*(x[0]-b[0]),x[1]-oe/te*(x[1]-b[1])],ce=[x[0]-oe/re*(x[0]-E[0]),x[1]-oe/re*(x[1]-E[1])];return[le,ce]}const M7=b=>{const x=Math.PI/2,E=sy(b)/2,z=ay(b)/2,te=Math.atan2(E,z)/2,re=Math.atan2(z,E)/2;return{top:[-x-re,-x+re],"top-right":[-x+re,-te],"right-top":[-x+re,-te],right:[-te,te],"bottom-right":[te,x-re],"right-bottom":[te,x-re],bottom:[x-re,x+re],"bottom-left":[x+re,Math.PI-te],"left-bottom":[x+re,Math.PI-te],left:[Math.PI-te,Math.PI+te],"top-left":[Math.PI+te,-x-re],"left-top":[Math.PI+te,-x-re]}};function EO(b,x,E,z,te){const re=dx(b),oe=b.getCenter();let le=z&&Ex(z),ce=te&&Ex(te);if(!le||!ce){const ge=M7(re),Ae=ge[x][0],Me=ge[x][1],[Ue,Xe]=hx(re),$e=Math.max(Ue,Xe),rt=cu(oe,[$e*Math.cos(Ae),$e*Math.sin(Ae),0]),ot=cu(oe,[$e*Math.cos(Me),$e*Math.sin(Me),0]);le=k5(b,rt),ce=k5(b,ot),E||([le,ce]=[ce,le])}return[le,ce]}function L7(b,x,E,z,te,re){const oe=b.getPorts()[te||re],le=b.getPorts()[re||te];let[ce,ge]=EO(b,x,E,oe,le);const Ae=T7(b,ce,ge,z);return oe&&(ce=ZC(oe,Ae[0])),le&&(ge=ZC(le,Ae[Ae.length-1])),xO(ce,ge,Ae)}function T7(b,x,E,z){const te=b.getCenter();if(Vd(x,E)){const re=Yc(x,te),oe=[z*Math.sign(re[0])||z/2,z*Math.sign(re[1])||-z/2,0];return[cu(x,oe),cu(E,qy(oe,[1,-1,1]))]}return[vx(te,x,Lh(te,x)+z),vx(te,E,Lh(te,E)+z)]}function D7(b,x,E,z,te,re,oe){const le=R5(b),ce=le[re||oe],ge=le[oe||re];let[Ae,Me]=EO(b,E,z,ce,ge);const Ue=I7(b,Ae,Me,te);return ce&&(Ae=ZC(ce,Ue[0])),ge&&(Me=ZC(ge,Ue[Ue.length-1])),I5([Ae,...Ue,Me],x)}function I7(b,x,E,z){const te=[],re=dx(b);if(Vd(x,E))switch(BC(x,re)){case"left":te.push([x[0]-z,x[1]]),te.push([x[0]-z,x[1]+z]),te.push([x[0],x[1]+z]);break;case"right":te.push([x[0]+z,x[1]]),te.push([x[0]+z,x[1]+z]),te.push([x[0],x[1]+z]);break;case"top":te.push([x[0],x[1]-z]),te.push([x[0]+z,x[1]-z]),te.push([x[0]+z,x[1]]);break;case"bottom":te.push([x[0],x[1]+z]),te.push([x[0]+z,x[1]+z]),te.push([x[0]+z,x[1]]);break}else{const oe=BC(x,re),le=BC(E,re);if(oe===le){const ce=oe;let ge,Ae;switch(ce){case"left":ge=Math.min(x[0],E[0])-z,te.push([ge,x[1]]),te.push([ge,E[1]]);break;case"right":ge=Math.max(x[0],E[0])+z,te.push([ge,x[1]]),te.push([ge,E[1]]);break;case"top":Ae=Math.min(x[1],E[1])-z,te.push([x[0],Ae]),te.push([E[0],Ae]);break;case"bottom":Ae=Math.max(x[1],E[1])+z,te.push([x[0],Ae]),te.push([E[0],Ae]);break}}else{const ce=(Ue,Xe)=>({left:[Xe[0]-z,Xe[1]],right:[Xe[0]+z,Xe[1]],top:[Xe[0],Xe[1]-z],bottom:[Xe[0],Xe[1]+z]})[Ue],ge=ce(oe,x),Ae=ce(le,E),Me=VC(ge,Ae,re);te.push(ge,Me,Ae)}}return te}function O5(b,x){const E=new Set,z=new Set,te=new Set;return b.forEach(re=>{x(re).forEach(le=>{E.add(le),b.includes(le.source)&&b.includes(le.target)?z.add(le):te.add(le)})}),{edges:Array.from(E),internal:Array.from(z),external:Array.from(te)}}function AO(b,x){const E=[];let z=b;for(;z;){E.push(z);const te=x(Ji(z));if(te)z=te;else break}if(E.some(te=>{var re;return(re=te.style)===null||re===void 0?void 0:re.collapsed})){const te=E.reverse().findIndex(r0);return E[te]||E.at(-1)}return b}function O7(b,x){return x||(b<4?10:b===4?12:b*2.5)}const N7=(b,x)=>{const E=Math.max(b,x)/2;return[["M",-b/2,0],["A",E,E,0,1,0,2*E-b/2,0],["A",E,E,0,1,0,-b/2,0],["Z"]]},SO=(b,x)=>[["M",-b/2,0],["L",b/2,-x/2],["L",b/2,x/2],["Z"]],B7=(b,x)=>[["M",-b/2,0],["L",0,-x/2],["L",b/2,0],["L",0,x/2],["Z"]],R7=(b,x)=>[["M",-b/2,0],["L",b/2,-x/2],["L",4*b/5-b/2,0],["L",b/2,x/2],["Z"]],k7=(b,x)=>[["M",-b/2,-x/2],["L",b/2,-x/2],["L",b/2,x/2],["L",-b/2,x/2],["Z"]],F7=(b,x)=>{const E=b/2,z=b/7,te=b-z;return[["M",-E,0],["L",0,-x/2],["L",0,x/2],["Z"],["M",te-E,-x/2],["L",te+z-E,-x/2],["L",te+z-E,x/2],["L",te-E,x/2],["Z"]]},_7=(b,x)=>[["M",b/2,-x/2],["L",-b/2,0],["L",b/2,0],["L",-b/2,0],["L",b/2,x/2]];var sM=function(b,x){var E={};for(var z in b)Object.prototype.hasOwnProperty.call(b,z)&&x.indexOf(z)<0&&(E[z]=b[z]);if(b!=null&&typeof Object.getOwnPropertySymbols=="function")for(var te=0,z=Object.getOwnPropertySymbols(b);te{ge in te&&(ce[ge]=te[ge])}),ce}getLoopPath(x){const{sourcePort:E,targetPort:z}=x,te=this.sourceNode,re=dx(te),oe=Math.max(ay(re),sy(re)),{placement:le,clockwise:ce,dist:ge=oe}=hf(this.getGraphicStyle(x),"loop");return L7(te,le,ce,ge,E,z)}getEndpoints(x,E=!0,z=[]){const{sourcePort:te,targetPort:re}=x,{sourceNode:oe,targetNode:le}=this,[ce,ge]=Q7(oe,le,te,re);if(!E){const Xe=ce?Ex(ce):oe.getCenter(),$e=ge?Ex(ge):le.getCenter();return[Xe,$e]}const Ae=typeof z=="function"?z():z,Me=DO(ce||oe,Ae[0]||ge||le),Ue=DO(ge||le,Ae[Ae.length-1]||ce||oe);return[Me,Ue]}getHaloStyle(x){if(x.halo===!1)return!1;const E=this.getKeyStyle(x),z=hf(this.getGraphicStyle(x),"halo");return Object.assign(Object.assign({},E),z)}getLabelStyle(x){if(x.label===!1||!x.labelText)return!1;const E=hf(this.getGraphicStyle(x),"label"),{placement:z,offsetX:te,offsetY:re,autoRotate:oe,maxWidth:le}=E,ce=sM(E,["placement","offsetX","offsetY","autoRotate","maxWidth"]),ge=mO(this.shapeMap.key,z,oe,te,re),Ae=this.shapeMap.key.getLocalBounds(),Me=Y_([Ae.min,Ae.max],le);return Object.assign({wordWrapWidth:Me},ge,ce)}getBadgeStyle(x){if(x.badge===!1||!x.badgeText)return!1;const E=hf(x,"badge"),{offsetX:z,offsetY:te,placement:re}=E,oe=sM(E,["offsetX","offsetY","placement"]);return Object.assign(oe,S7(this.shapeMap,re,x.labelPlacement,z,te))}drawArrow(x,E){var z;const te=E==="start",oe=x[E==="start"?"startArrow":"endArrow"],le=this.shapeMap.key;if(oe){const ce=this.getArrowStyle(x,te),[ge,Ae,Me]=te?["markerStart","markerStartOffset","startArrowOffset"]:["markerEnd","markerEndOffset","endArrowOffset"],Ue=le.parsedStyle[ge];if(Ue)Ue.attr(ce);else{const Xe=ce.src?Xv:Gd,$e=new Xe({style:ce});le.style[ge]=$e}le.style[Ae]=x[Me]||ce.width/2+ +ce.lineWidth}else{const ce=te?"markerStart":"markerEnd";(z=le.style[ce])===null||z===void 0||z.destroy(),le.style[ce]=null}}getArrowStyle(x,E){const z=this.getShape("key").attributes,te=E?"startArrow":"endArrow",re=hf(this.getGraphicStyle(x),te),{size:oe,type:le}=re,ce=sM(re,["size","type"]),[ge,Ae]=P0(O7(z.lineWidth,oe)),Ue=(_s(le)?le:et[le]||SO)(ge,Ae);return Object.assign(ZE(z,["stroke","strokeOpacity","fillOpacity"]),{width:ge,height:Ae},Object.assign({},Ue&&{d:Ue,fill:le==="simple"?"":z.stroke}),ce)}drawLabelShape(x,E){const z=this.getLabelStyle(x);this.upsert("label",mx,z,E)}drawHaloShape(x,E){const z=this.getHaloStyle(x);this.upsert("halo",Gd,z,E)}drawBadgeShape(x,E){const z=this.getBadgeStyle(x);this.upsert("badge",IS,z,E)}drawSourceArrow(x){this.drawArrow(x,"start")}drawTargetArrow(x){this.drawArrow(x,"end")}drawKeyShape(x,E){const z=this.getKeyStyle(x);return this.upsert("key",Gd,z,E)}render(x=this.parsedAttributes,E=this){this.drawKeyShape(x,E),this.getShape("key")&&(this.drawSourceArrow(x),this.drawTargetArrow(x),this.drawLabelShape(x,E),this.drawHaloShape(x,E),this.drawBadgeShape(x,E))}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(x,E){const z=super.animate(x,E);return z&&new Proxy(z,{set:(te,re,oe)=>(re==="currentTime"&&Promise.resolve().then(()=>this.onframe()),Reflect.set(te,re,oe))})}}xx.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 YE extends xx{constructor(x){super(qf({style:YE.defaultStyleProps},x))}getKeyPath(x){const[E,z]=this.getEndpoints(x),{controlPoints:te,curvePosition:re,curveOffset:oe}=x,le=this.getControlPoints(E,z,C7(re),w7(oe),te);return xO(E,z,le)}getControlPoints(x,E,z,te,re){return(re==null?void 0:re.length)===2?re:[D5(x,E,z[0],te[0]),D5(x,E,z[1],te[1])]}}YE.defaultStyleProps={curvePosition:.5,curveOffset:20};class lM extends YE{constructor(x){super(qf({style:lM.defaultStyleProps},x))}getControlPoints(x,E,z,te){const re=E[0]-x[0];return[[x[0]+re*z[0]+te[0],x[1]],[E[0]-re*z[1]+te[1],E[1]]]}}lM.defaultStyleProps={curvePosition:[.5,.5],curveOffset:[0,0]};class uM extends YE{constructor(x){super(qf({style:uM.defaultStyleProps},x))}get ref(){return this.context.model.getRootsData()[0]}getEndpoints(x){if(this.sourceNode.id===this.ref.id)return super.getEndpoints(x);const E=Rf(this.ref),z=this.sourceNode.getIntersectPoint(E,!0),te=this.targetNode.getIntersectPoint(E);return[z,te]}toRadialCoordinate(x){const E=Rf(this.ref),z=Lh(x,E),te=L3(Yc(x,E));return[z,te]}getControlPoints(x,E,z,te){const[re,oe]=this.toRadialCoordinate(x),[le]=this.toRadialCoordinate(E),ce=le-re;return[[x[0]+(ce*z[0]+te[0])*Math.cos(oe),x[1]+(ce*z[0]+te[0])*Math.sin(oe)],[E[0]-(ce*z[1]-te[0])*Math.cos(oe),E[1]-(ce*z[1]-te[0])*Math.sin(oe)]]}}uM.defaultStyleProps={curvePosition:.5,curveOffset:20};class cM extends YE{constructor(x){super(qf({style:cM.defaultStyleProps},x))}getControlPoints(x,E,z,te){const re=E[1]-x[1];return[[x[0],x[1]+re*z[0]+te[0]],[E[0],E[1]-re*z[1]+te[1]]]}}cM.defaultStyleProps={curvePosition:[.5,.5],curveOffset:[0,0]};class hM extends xx{constructor(x){super(qf({style:hM.defaultStyleProps},x))}getKeyPath(x){const[E,z]=this.getEndpoints(x);return[["M",E[0],E[1]],["L",z[0],z[1]]]}}hM.defaultStyleProps={};const z7={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:zP},n1=b=>`${Math.round(b[0])}|||${Math.round(b[1])}`;function XE(b,x){const E=z=>Math.round(z/x);return os(b)?E(b):b.map(E)}function j7(b,x){const E=Math.abs(b-x);return E>Math.PI?2*Math.PI-E:E}function wO(b,x){const E=x[0]-b[0],z=x[1]-b[1];return!E&&!z?0:Math.atan2(z,E)}function CO(b,x,E,z){const te=wO(b,x),re=E[n1(b)],le=wO(re||z,b);return j7(le,te)}const W7=(b,x)=>{const{offset:E,gridSize:z}=x,te={};return b.forEach(re=>{if(!re||re.destroyed||!re.isVisible())return;const oe=fx(re.getRenderBounds(),E);for(let le=XE(oe.min[0],z);le<=XE(oe.max[0],z);le+=1)for(let ce=XE(oe.min[1],z);ce<=XE(oe.max[1],z);ce+=1)te[`${le}|||${ce}`]=!0}),te};function bO(b,x,E){return Math.min(...x.map(z=>E(b,z)))}function U7(b,x,E){let z=b[0],te=E(b[0],x);for(let re=0;re{if(!x)return[b];const{directionMap:te,offset:re}=z,oe=fx(x.getRenderBounds(),re),le=Object.keys(te).reduce((ce,ge)=>{if(E.includes(ge)){const Ae=te[ge],[Me,Ue]=hx(oe),Xe=[b[0]+Ae.stepX*Me,b[1]+Ae.stepY*Ue],$e=jk(oe);for(let rt=0;rt<$e.length;rt++){const ot=h5([b,Xe],$e[rt]);ot&&zI(ot,oe)&&ce.push(ot)}}return ce},[]);return sm(b,oe)||le.push(b),le.map(ce=>XE(ce,z.gridSize))},G7=(b,x,E,z,te,re,oe)=>{const le=[];let ce=[re[0]===z[0]?z[0]:b[0]*oe,re[1]===z[1]?z[1]:b[1]*oe];le.unshift(ce);let ge=b,Ae=x[n1(ge)];for(;Ae;){const Xe=Ae,$e=ge;CO(Xe,$e,x,E)&&(ce=[Xe[0]===$e[0]?ce[0]:Xe[0]*oe,Xe[1]===$e[1]?ce[1]:Xe[1]*oe],le.unshift(ce)),Ae=x[n1(Xe)],ge=Xe}const Me=te.map(Xe=>[Xe[0]*oe,Xe[1]*oe]),Ue=U7(Me,ce,zP);return le.unshift(Ue),le};function H7(b,x,E,z){const te=UE(b.getCenter()),re=UE(x.getCenter()),oe=Object.assign(z7,z),{gridSize:le}=oe,ce=oe.enableObstacleAvoidance?E:[b,x],ge=W7(ce,oe),Ae=XE(te,le),Me=XE(re,le),Ue=PO(te,b,oe.startDirections,oe),Xe=PO(re,x,oe.endDirections,oe);Ue.forEach(Gt=>delete ge[n1(Gt)]),Xe.forEach(Gt=>delete ge[n1(Gt)]);const $e={},rt={},ot={},pt={},yt={},Ct=new V7;for(let Gt=0;Gtn1(Gt));let Wt=oe.maximumLoops,Ht,Qt=1/0;for(const[Gt,vn]of Object.entries($e))yt[Gt]<=Qt&&(Qt=yt[Gt],Ht=vn);for(;Object.keys($e).length>0&&Wt>0;){const Gt=Ct.minId(!1);if(Gt)Ht=$e[Gt];else break;const vn=n1(Ht);if(zt.includes(vn))return G7(Ht,ot,Ae,re,Ue,Me,le);delete $e[vn],Ct.remove(vn),rt[vn]=!0;for(const Sn of Object.values(oe.directionMap)){const kn=cu(Ht,[Sn.stepX,Sn.stepY]),Kn=n1(kn);if(rt[Kn])continue;const vr=CO(Ht,kn,ot,Ae);if(vr>oe.maxAllowedDirectionChange||ge[Kn])continue;$e[Kn]||($e[Kn]=kn);const er=oe.penalties[vr],Nr=oe.distFunc(Ht,kn)+(isNaN(er)?le:er),ei=pt[vn]+Nr,Ar=pt[Kn];Ar&&ei>=Ar||(ot[Kn]=Ht,pt[Kn]=ei,yt[Kn]=ei+bO(kn,Xe,oe.distFunc),Ct.add({id:Kn,value:yt[Kn]}))}Wt-=1}return[]}class V7{constructor(){this.arr=[],this.map={},this.arr=[],this.map={}}_innerAdd(x,E){let z=0,te=E-1;for(;te-z>1;){const re=Math.floor((z+te)/2);if(this.arr[re].value>x.value)te=re;else if(this.arr[re].value=0;E--)this.map[this.arr[E].id]?x=this.arr[E].id:this.arr.splice(E,1);return x}_findFirstId(){for(;this.arr.length;){const x=this.arr.shift();if(this.map[x.id])return x.id}}minId(x){return x?this._clearAndGetMinId():this._findFirstId()}}class dM extends xx{constructor(x){super(qf({style:dM.defaultStyleProps},x))}getControlPoints(x){const{router:E}=x,{sourceNode:z,targetNode:te}=this,[re,oe]=this.getEndpoints(x,!1);let le=[];if(!E)le=x.controlPoints;else if(E.type==="shortest-path"){const ce=this.context.element.getNodes();le=H7(z,te,ce,E),le.length||(le=fO(re,oe,z,te,x.controlPoints,{padding:E.offset}))}else E.type==="orth"&&(le=fO(re,oe,z,te,x.controlPoints,E));return le}getPoints(x){const E=this.getControlPoints(x),[z,te]=this.getEndpoints(x,!0,E);return[z,...E,te]}getKeyPath(x){const E=this.getPoints(x);return I5(E,x.radius)}getLoopPath(x){const{sourcePort:E,targetPort:z,radius:te}=x,re=this.sourceNode,oe=dx(re),le=Math.max(ay(oe),sy(oe))/4,{placement:ce,clockwise:ge,dist:Ae=le}=hf(this.getGraphicStyle(x),"loop");return D7(re,te,ce,ge,Ae,E,z)}}dM.defaultStyleProps={radius:0,controlPoints:[],router:!1};class fM extends xx{constructor(x){super(qf({style:fM.defaultStyleProps},x))}getKeyPath(x){const{curvePosition:E,curveOffset:z}=x,[te,re]=this.getEndpoints(x),oe=x.controlPoint||D5(te,re,E,z);return b7(te,re,oe)}}fM.defaultStyleProps={curvePosition:.5,curveOffset:30};var K7=function(b,x){var E={};for(var z in b)Object.prototype.hasOwnProperty.call(b,z)&&x.indexOf(z)<0&&(E[z]=b[z]);if(b!=null&&typeof Object.getOwnPropertySymbols=="function")for(var te=0,z=Object.getOwnPropertySymbols(b);te{var re;const{key:oe,placement:le}=z;LO(z)&&(x[re=oe||te]||(x[re]=e1(b.getShape("key").getBounds(),le)))}),x}function LO(b){const{r:x}=b;return!x||Number(x)===0}function Ex(b){return LS(b)?b:b.getPosition()}function Q7(b,x,E,z){const te=TO(b,x,E,z),re=TO(x,b,z,E);return[te,re]}function TO(b,x,E,z){const te=R5(b);if(E)return te[E];const re=Object.values(te);if(re.length===0)return;const oe=re.map(ge=>Ex(ge)),le=J7(x,z),[ce]=k_(oe,le);return re.find(ge=>Ex(ge)===ce)}function J7(b,x){const E=R5(b);if(x)return[Ex(E[x])];const z=Object.values(E);return z.length>0?z.map(te=>Ex(te)):[b.getCenter()]}function DO(b,x){return N5(b)||KC(b)?k5(b,x):ZC(b,x)}function ZC(b,x){if(!b||!x)return[0,0,0];if(LS(b))return b;if(b.attributes.linkToCenter)return b.getPosition();const E=LS(x)?x:KC(x)?x.getCenter():x.getPosition();return WP(E,b.getBounds())}function k5(b,x){if(!b||!x)return[0,0,0];const E=LS(x)?x:KC(x)?x.getCenter():x.getPosition();return b.getIntersectPoint(E)||b.getCenter()}function IO(b,x="bottom",E=0,z=0,te=!1){const re=x.split("-"),[oe,le]=e1(b,x),ce=re.includes("left")?"right":re.includes("right")?"left":"center";let ge=re.includes("top")?"bottom":re.includes("bottom")?"top":"middle";return te&&(ge=ge==="top"?"bottom":ge==="bottom"?"top":ge),{transform:[["translate",oe+E,le+z]],textBaseline:ge,textAlign:ce}}function q7(b,x){return[[0,-b],[x*Math.cos(3*Math.PI/10),-x*Math.sin(3*Math.PI/10)],[b*Math.cos(Math.PI/10),-b*Math.sin(Math.PI/10)],[x*Math.cos(Math.PI/10),x*Math.sin(Math.PI/10)],[b*Math.cos(3*Math.PI/10),b*Math.sin(3*Math.PI/10)],[0,x],[-b*Math.cos(3*Math.PI/10),b*Math.sin(3*Math.PI/10)],[-x*Math.cos(Math.PI/10),x*Math.sin(Math.PI/10)],[-b*Math.cos(Math.PI/10),-b*Math.sin(Math.PI/10)],[-x*Math.cos(3*Math.PI/10),-x*Math.sin(3*Math.PI/10)]]}function $7(b,x){const E={};return E.top=[0,-b],E.left=[-b*Math.cos(Math.PI/10),-b*Math.sin(Math.PI/10)],E["left-bottom"]=[-b*Math.cos(3*Math.PI/10),b*Math.sin(3*Math.PI/10)],E.bottom=[0,x],E["right-bottom"]=[b*Math.cos(3*Math.PI/10),b*Math.sin(3*Math.PI/10)],E.right=E.default=[b*Math.cos(Math.PI/10),-b*Math.sin(Math.PI/10)],E}function e9(b,x,E){const z=x/2,te=b/2,re={up:[[-te,z],[te,z],[0,-z]],left:[[-te,0],[te,z],[te,-z]],right:[[-te,z],[-te,-z],[te,0]],down:[[-te,-z],[te,-z],[0,z]]};return re[E]||re.up}function t9(b,x,E){const z=x/2,te=b/2,re={};return E==="down"?(re.bottom=re.default=[0,z],re.right=[te,-z],re.left=[-te,-z]):E==="left"?(re.top=[te,-z],re.bottom=[te,z],re.left=re.default=[-te,0]):E==="right"?(re.top=[-te,-z],re.bottom=[-te,z],re.right=re.default=[te,0]):(re.left=[-te,z],re.top=re.default=[0,-z],re.right=[te,z]),re}function VJ(b,x){return[[b/2,-x/2],[b/2,x/2],[-b/2,x/2],[-b/2,-x/2]]}function n9(b,x){return[[0,-x/2],[b/2,0],[0,x/2],[-b/2,0]]}function r9(b){return bp(b,["style","visibility"])!=="hidden"}function i9(b,x){const{zIndex:E,transform:z,transformOrigin:te,visibility:re,cursor:oe,clipPath:le,component:ce}=x,ge=K7(x,["zIndex","transform","transformOrigin","visibility","cursor","clipPath","component"]);Object.assign(b.attributes,ge),z&&b.setAttribute("transform",z),os(E)&&b.setAttribute("zIndex",E),te&&b.setAttribute("transformOrigin",te),re&&b.setAttribute("visibility",re),oe&&b.setAttribute("cursor",oe),le&&b.setAttribute("clipPath",le),ce&&b.setAttribute("component",ce)}function F5(b,x){"update"in b?b.update(x):b.attr(x)}function o9(b){return[[0,b],[b*Math.sqrt(3)/2,b/2],[b*Math.sqrt(3)/2,-b/2],[0,-b],[-b*Math.sqrt(3)/2,-b/2],[-b*Math.sqrt(3)/2,b/2]]}function a9(b){jC(b,"__to_be_destroyed__",!0)}function gM(b){return bp(b,"__to_be_destroyed__",!1)}var s9=function(b,x,E,z){function te(re){return re instanceof E?re:new E(function(oe){oe(re)})}return new(E||(E=Promise))(function(re,oe){function le(Ae){try{ge(z.next(Ae))}catch(Me){oe(Me)}}function ce(Ae){try{ge(z.throw(Ae))}catch(Me){oe(Me)}}function ge(Ae){Ae.done?re(Ae.value):te(Ae.value).then(le,ce)}ge((z=z.apply(b,x||[])).next())})};class pM extends b0{constructor(x,E){super(x,Object.assign({},pM.defaultOptions,E)),this.onCollapseExpand=z=>s9(this,void 0,void 0,function*(){if(!this.validate(z))return;const{target:te}=z;if(!Z7(te))return;const re=te.id,{model:oe,graph:le}=this.context,ce=oe.getElementDataById(re);if(!ce)return!1;const{onCollapse:ge,onExpand:Ae,animation:Me,align:Ue}=this.options;r0(ce)?(yield le.expandElement(re,{animation:Me,align:Ue}),Ae==null||Ae(re)):(yield le.collapseElement(re,{animation:Me,align:Ue}),ge==null||ge(re))}),this.bindEvents()}update(x){this.unbindEvents(),super.update(x),this.bindEvents()}bindEvents(){const{graph:x}=this.context,{trigger:E}=this.options;x.on(`node:${E}`,this.onCollapseExpand),x.on(`combo:${E}`,this.onCollapseExpand)}unbindEvents(){const{graph:x}=this.context,{trigger:E}=this.options;x.off(`node:${E}`,this.onCollapseExpand),x.off(`combo:${E}`,this.onCollapseExpand)}validate(x){if(this.destroyed)return!1;const{enable:E}=this.options;return _s(E)?E(x):!!E}destroy(){this.unbindEvents(),super.destroy()}}pM.defaultOptions={enable:!0,animation:!0,trigger:Zo.DBLCLICK,align:!0};var vM={},l9=function(b){return b=b||"g",vM[b]?vM[b]+=1:vM[b]=1,b+vM[b]},mM=function(b,x,E,z){function te(re){return re instanceof E?re:new E(function(oe){oe(re)})}return new(E||(E=Promise))(function(re,oe){function le(Ae){try{ge(z.next(Ae))}catch(Me){oe(Me)}}function ce(Ae){try{ge(z.throw(Ae))}catch(Me){oe(Me)}}function ge(Ae){Ae.done?re(Ae.value):te(Ae.value).then(le,ce)}ge((z=z.apply(b,x||[])).next())})};const u9="g6-create-edge-assist-edge-id",yM="g6-create-edge-assist-node-id";class xM extends b0{constructor(x,E){super(x,Object.assign({},xM.defaultOptions,E)),this.drop=z=>mM(this,void 0,void 0,function*(){const{targetType:te}=z;["combo","node"].includes(te)&&this.source?yield this.handleCreateEdge(z):yield this.cancelEdge()}),this.handleCreateEdge=z=>mM(this,void 0,void 0,function*(){var te,re,oe;if(!this.validate(z))return;const{graph:le,canvas:ce,batch:ge,element:Ae}=this.context,{style:Me}=this.options;if(this.source){this.createEdge(z),yield this.cancelEdge();return}ge.startBatch(),ce.setCursor("crosshair"),this.source=this.getSelectedNodeIDs([z.target.id])[0];const Ue=le.getElementData(this.source);le.addNodeData([{id:yM,style:{visibility:"hidden",ports:[{key:"port-1",placement:[.5,.5]}],x:(te=Ue.style)===null||te===void 0?void 0:te.x,y:(re=Ue.style)===null||re===void 0?void 0:re.y}}]),le.addEdgeData([{id:u9,source:this.source,target:yM,style:Object.assign({pointerEvents:"none"},Me)}]),yield(oe=Ae.draw({animation:!1}))===null||oe===void 0?void 0:oe.finished}),this.updateAssistEdge=z=>mM(this,void 0,void 0,function*(){var te;if(!this.source)return;const{model:re,element:oe}=this.context;re.translateNodeTo(yM,[z.canvas.x,z.canvas.y]),yield(te=oe.draw({animation:!1,silence:!0}))===null||te===void 0?void 0:te.finished}),this.createEdge=z=>{var te,re;const{graph:oe}=this.context,{style:le,onFinish:ce,onCreate:ge}=this.options;if(((te=z.target)===null||te===void 0?void 0:te.id)===void 0||this.source===void 0)return;const Me=(re=this.getSelectedNodeIDs([z.target.id]))===null||re===void 0?void 0:re[0],Ue=`${this.source}-${Me}-${l9()}`,Xe=ge({id:Ue,source:this.source,target:Me,style:le});oe.addEdgeData([Xe]),ce(Xe)},this.cancelEdge=()=>mM(this,void 0,void 0,function*(){var z;if(!this.source)return;const{graph:te,element:re,batch:oe}=this.context;te.removeNodeData([yM]),this.source=void 0,yield(z=re.draw({animation:!1}))===null||z===void 0?void 0:z.finished,oe.endBatch()}),this.bindEvents()}update(x){super.update(x),this.bindEvents()}bindEvents(){const{graph:x}=this.context,{trigger:E}=this.options;this.unbindEvents(),E==="click"?(x.on(vv.CLICK,this.handleCreateEdge),x.on(_E.CLICK,this.handleCreateEdge),x.on(Xy.CLICK,this.cancelEdge),x.on(SP.CLICK,this.cancelEdge)):(x.on(vv.DRAG_START,this.handleCreateEdge),x.on(_E.DRAG_START,this.handleCreateEdge),x.on(Zo.POINTER_UP,this.drop)),x.on(Zo.POINTER_MOVE,this.updateAssistEdge)}getSelectedNodeIDs(x){return Array.from(new Set(this.context.graph.getElementDataByState("node",this.options.state).map(E=>E.id).concat(x)))}validate(x){if(this.destroyed)return!1;const{enable:E}=this.options;return _s(E)?E(x):!!E}unbindEvents(){const{graph:x}=this.context;x.off(vv.CLICK,this.handleCreateEdge),x.off(_E.CLICK,this.handleCreateEdge),x.off(Xy.CLICK,this.cancelEdge),x.off(SP.CLICK,this.cancelEdge),x.off(vv.DRAG_START,this.handleCreateEdge),x.off(_E.DRAG_START,this.handleCreateEdge),x.off(Zo.POINTER_UP,this.drop),x.off(Zo.POINTER_MOVE,this.updateAssistEdge)}destroy(){this.unbindEvents(),super.destroy()}}xM.defaultOptions={animation:!0,enable:!0,style:{},trigger:"drag",onCreate:b=>b,onFinish:()=>{}};function c9(b,x,E){var z;return function(){var te=this,re=arguments,oe=function(){z=null,E||b.apply(te,re)},le=E&&!z;clearTimeout(z),z=setTimeout(oe,x),le&&b.apply(te,re)}}var YC=c9,OO=function(b,x,E,z){function te(re){return re instanceof E?re:new E(function(oe){oe(re)})}return new(E||(E=Promise))(function(re,oe){function le(Ae){try{ge(z.next(Ae))}catch(Me){oe(Me)}}function ce(Ae){try{ge(z.throw(Ae))}catch(Me){oe(Me)}}function ge(Ae){Ae.done?re(Ae.value):te(Ae.value).then(le,ce)}ge((z=z.apply(b,x||[])).next())})};class EM extends b0{constructor(x,E){super(x,Object.assign({},EM.defaultOptions,E)),this.isDragging=!1,this.onDragStart=z=>{this.validate(z)&&(this.isDragging=!0,this.context.canvas.setCursor("grabbing"))},this.onDrag=z=>{var te,re,oe,le;if(!this.isDragging)return;const ce=(re=(te=z.movement)===null||te===void 0?void 0:te.x)!==null&&re!==void 0?re:z.dx,ge=(le=(oe=z.movement)===null||oe===void 0?void 0:oe.y)!==null&&le!==void 0?le:z.dy;ce|ge&&this.translate([ce,ge],!1)},this.onDragEnd=()=>{var z,te;this.isDragging=!1,this.context.canvas.setCursor(this.defaultCursor),(te=(z=this.options).onFinish)===null||te===void 0||te.call(z)},this.invokeOnFinish=YC(()=>{var z,te;(te=(z=this.options).onFinish)===null||te===void 0||te.call(z)},300),this.shortcut=new DS(x.graph),this.bindEvents(),this.defaultCursor=this.context.canvas.getConfig().cursor||"default"}update(x){this.unbindEvents(),super.update(x),this.bindEvents()}bindEvents(){const{trigger:x}=this.options;if(Sh(x)){const{up:E=[],down:z=[],left:te=[],right:re=[]}=x;this.shortcut.bind(E,oe=>this.onTranslate([0,1],oe)),this.shortcut.bind(z,oe=>this.onTranslate([0,-1],oe)),this.shortcut.bind(te,oe=>this.onTranslate([1,0],oe)),this.shortcut.bind(re,oe=>this.onTranslate([-1,0],oe))}else{const{graph:E}=this.context;E.on(Zo.DRAG_START,this.onDragStart),E.on(Zo.DRAG,this.onDrag),E.on(Zo.DRAG_END,this.onDragEnd)}}onTranslate(x,E){return OO(this,void 0,void 0,function*(){if(!this.validate(E))return;const{sensitivity:z}=this.options,te=z*-1;yield this.translate(qy(x,te),this.options.animation),this.invokeOnFinish()})}translate(x,E){return OO(this,void 0,void 0,function*(){x=this.clampByDirection(x),x=this.clampByRange(x),yield this.context.graph.translateBy(x,E)})}clampByDirection([x,E]){const{direction:z}=this.options;return z==="x"?E=0:z==="y"&&(x=0),[x,E]}clampByRange([x,E]){const{viewport:z,canvas:te}=this.context,[re,oe]=te.getSize(),[le,ce,ge,Ae]=am(this.options.range),Me=[oe*le,re*ce,oe*ge,re*Ae],Ue=fx(QT(z.getCanvasCenter()),Me),Xe=Yc(z.getViewportCenter(),[x,E,0]);if(!sm(Xe,Ue)){const{min:[$e,rt],max:[ot,pt]}=Ue;(Xe[0]<$e&&x>0||Xe[0]>ot&&x<0)&&(x=0),(Xe[1]0||Xe[1]>pt&&E<0)&&(E=0)}return[x,E]}validate(x){if(this.destroyed)return!1;const{enable:E}=this.options;return typeof E=="function"?E(x):!!E}unbindEvents(){this.shortcut.unbindAll();const{graph:x}=this.context;x.off(Zo.DRAG_START,this.onDragStart),x.off(Zo.DRAG,this.onDrag),x.off(Zo.DRAG_END,this.onDragEnd)}destroy(){this.shortcut.destroy(),this.unbindEvents(),this.context.canvas.setCursor(this.defaultCursor),super.destroy()}}EM.defaultOptions={enable:b=>"targetType"in b?b.targetType==="canvas":!0,sensitivity:10,direction:"both",range:1/0};var NO=function(b,x,E,z){function te(re){return re instanceof E?re:new E(function(oe){oe(re)})}return new(E||(E=Promise))(function(re,oe){function le(Ae){try{ge(z.next(Ae))}catch(Me){oe(Me)}}function ce(Ae){try{ge(z.throw(Ae))}catch(Me){oe(Me)}}function ge(Ae){Ae.done?re(Ae.value):te(Ae.value).then(le,ce)}ge((z=z.apply(b,x||[])).next())})};class XC extends b0{constructor(x,E){super(x,Object.assign({},XC.defaultOptions,E)),this.enable=!1,this.enableElements=["node","combo"],this.target=[],this.shadowOrigin=[0,0],this.hiddenEdges=[],this.isDragging=!1,this.onDrop=z=>NO(this,void 0,void 0,function*(){var te;if(this.options.dropEffect!=="link")return;const{model:re,element:oe}=this.context,le=z.target.id;this.target.forEach(ce=>{const ge=re.getParentData(ce,lh);ge&&Ji(ge)===le&&re.refreshComboData(le),re.setParent(ce,le,lh)}),yield(te=oe==null?void 0:oe.draw({animation:!0}))===null||te===void 0?void 0:te.finished}),this.setCursor=z=>{if(this.isDragging)return;const{type:te}=z,{canvas:re}=this.context,{cursor:oe}=this.options;te===Zo.POINTER_ENTER?re.setCursor((oe==null?void 0:oe.grab)||"grab"):re.setCursor((oe==null?void 0:oe.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(x){this.unbindEvents(),super.update(x),this.bindEvents()}bindEvents(){const{graph:x,canvas:E}=this.context,z=E.getLayer().getContextService().$canvas;z&&(z.addEventListener("blur",this.onDragEnd),z.addEventListener("contextmenu",this.onDragEnd)),this.enableElements.forEach(te=>{x.on(`${te}:${Zo.DRAG_START}`,this.onDragStart),x.on(`${te}:${Zo.DRAG}`,this.onDrag),x.on(`${te}:${Zo.DRAG_END}`,this.onDragEnd),x.on(`${te}:${Zo.POINTER_ENTER}`,this.setCursor),x.on(`${te}:${Zo.POINTER_LEAVE}`,this.setCursor)}),["link"].includes(this.options.dropEffect)&&(x.on(_E.DROP,this.onDrop),x.on(Xy.DROP,this.onDrop))}getSelectedNodeIDs(x){return Array.from(new Set(this.context.graph.getElementDataByState("node",this.options.state).map(E=>E.id).concat(x)))}getDelta(x){const E=this.context.graph.getZoom();return um([x.dx,x.dy],E)}onDragStart(x){var E;if(this.enable=this.validate(x),!this.enable)return;const{batch:z,canvas:te,graph:re}=this.context;te.setCursor(((E=this.options.cursor)===null||E===void 0?void 0:E.grabbing)||"grabbing"),this.isDragging=!0,z.startBatch();const oe=x.target.id;re.getElementState(oe).includes(this.options.state)?this.target=this.getSelectedNodeIDs([oe]):this.target=[oe],this.hideEdge(),this.context.graph.frontElement(this.target),this.options.shadow&&this.createShadow(this.target)}onDrag(x){if(!this.enable)return;const E=this.getDelta(x);this.options.shadow?this.moveShadow(E):this.moveElement(this.target,E)}onDragEnd(){var x,E,z;if(this.enable=!1,this.options.shadow){if(!this.shadow)return;this.shadow.style.visibility="hidden";const{x:oe=0,y:le=0}=this.shadow.attributes,[ce,ge]=Yc([+oe,+le],this.shadowOrigin);this.moveElement(this.target,[ce,ge])}this.showEdges(),(E=(x=this.options).onFinish)===null||E===void 0||E.call(x,this.target);const{batch:te,canvas:re}=this.context;te.endBatch(),re.setCursor(((z=this.options.cursor)===null||z===void 0?void 0:z.grab)||"grab"),this.isDragging=!1,this.target=[]}validate(x){if(this.destroyed)return!1;const{enable:E}=this.options;return _s(E)?E(x):!!E}moveElement(x,E){return NO(this,void 0,void 0,function*(){const{graph:z,model:te}=this.context,{dropEffect:re}=this.options;re==="move"&&x.forEach(oe=>te.refreshComboData(oe)),z.translateElementBy(Object.fromEntries(x.map(oe=>[oe,E])),!1)})}moveShadow(x){if(!this.shadow)return;const{x:E=0,y:z=0}=this.shadow.attributes,[te,re]=x;this.shadow.attr({x:+E+te,y:+z+re})}createShadow(x){const E=hf(this.options,"shadow"),z=NC(x.map(ge=>this.context.element.getElement(ge).getBounds())),[te,re]=z.min;this.shadowOrigin=[te,re];const[oe,le]=hx(z),ce={width:oe,height:le,x:te,y:re};this.shadow?this.shadow.attr(Object.assign(Object.assign(Object.assign({},E),ce),{visibility:"visible"})):(this.shadow=new sh({style:Object.assign(Object.assign(Object.assign({$layer:"transient"},E),ce),{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:x,shadow:E}=this.options;if(x==="none"||E)return;const{graph:z}=this.context;x==="all"?this.hiddenEdges=z.getEdgeData().map(Ji):this.hiddenEdges=Array.from(new Set(this.target.map(te=>z.getRelatedEdgesData(te,x).map(Ji)).flat())),z.hideElement(this.hiddenEdges)}unbindEvents(){const{graph:x,canvas:E}=this.context,z=E.getLayer().getContextService().$canvas;z&&(z.removeEventListener("blur",this.onDragEnd),z.removeEventListener("contextmenu",this.onDragEnd)),this.enableElements.forEach(te=>{x.off(`${te}:${Zo.DRAG_START}`,this.onDragStart),x.off(`${te}:${Zo.DRAG}`,this.onDrag),x.off(`${te}:${Zo.DRAG_END}`,this.onDragEnd),x.off(`${te}:${Zo.POINTER_ENTER}`,this.setCursor),x.off(`${te}:${Zo.POINTER_LEAVE}`,this.setCursor)}),x.off(`combo:${Zo.DROP}`,this.onDrop),x.off(`canvas:${Zo.DROP}`,this.onDrop)}destroy(){var x;this.unbindEvents(),(x=this.shadow)===null||x===void 0||x.destroy(),super.destroy()}}XC.defaultOptions={animation:!0,enable:b=>["node","combo"].includes(b.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 h9="*",d9=function(){function b(){this._events={}}return b.prototype.on=function(x,E,z){return this._events[x]||(this._events[x]=[]),this._events[x].push({callback:E,once:!!z}),this},b.prototype.once=function(x,E){return this.on(x,E,!0)},b.prototype.emit=function(x){for(var E=this,z=[],te=1;te{x.has(oe.id)||(x.add(oe.id),b.push(oe))})}return!1}function SM(b,x,E,z){if(E(b))return!0;x.add(b.id);for(const re of z(b.id))if(!x.has(re.id)&&SM(re,x,E,z))return!0;return!1}const BO=()=>!0;class f9{constructor(x){ed(this,"graph");ed(this,"nodeFilter");ed(this,"edgeFilter");ed(this,"cacheEnabled");ed(this,"inEdgesMap",new Map);ed(this,"outEdgesMap",new Map);ed(this,"bothEdgesMap",new Map);ed(this,"allNodesMap",new Map);ed(this,"allEdgesMap",new Map);ed(this,"clearCache",()=>{this.inEdgesMap.clear(),this.outEdgesMap.clear(),this.bothEdgesMap.clear(),this.allNodesMap.clear(),this.allEdgesMap.clear()});ed(this,"refreshCache",()=>{this.clearCache(),this.updateCache(this.graph.getAllNodes().map(x=>x.id))});ed(this,"updateCache",x=>{const E=new Set;x.forEach(z=>{const te=this.bothEdgesMap.get(z);if(te&&te.forEach(re=>E.add(re.id)),!this.hasNode(z))this.inEdgesMap.delete(z),this.outEdgesMap.delete(z),this.bothEdgesMap.delete(z),this.allNodesMap.delete(z);else{const re=this.graph.getRelatedEdges(z,"in").filter(this.edgeFilter),oe=this.graph.getRelatedEdges(z,"out").filter(this.edgeFilter),le=Array.from(new Set([...re,...oe]));le.forEach(ce=>E.add(ce.id)),this.inEdgesMap.set(z,re),this.outEdgesMap.set(z,oe),this.bothEdgesMap.set(z,le),this.allNodesMap.set(z,this.graph.getNode(z))}}),E.forEach(z=>{this.hasEdge(z)?this.allEdgesMap.set(z,this.graph.getEdge(z)):this.allEdgesMap.delete(z)})});ed(this,"handleGraphChanged",x=>{const E=new Set;x.changes.forEach(z=>{switch(z.type){case"NodeAdded":E.add(z.value.id);break;case"NodeDataUpdated":E.add(z.id);break;case"EdgeAdded":E.add(z.value.source),E.add(z.value.target);break;case"EdgeUpdated":(z.propertyName==="source"||z.propertyName==="target")&&(E.add(z.oldValue),E.add(z.newValue));break;case"EdgeDataUpdated":if(x.graph.hasEdge(z.id)){const te=x.graph.getEdge(z.id);E.add(te.source),E.add(te.target)}break;case"EdgeRemoved":E.add(z.value.source),E.add(z.value.target);break;case"NodeRemoved":E.add(z.value.id);break;default:break}}),this.updateCache(E)});this.graph=x.graph;const E=x.nodeFilter||BO,z=x.edgeFilter||BO;this.nodeFilter=E,this.edgeFilter=te=>{const{source:re,target:oe}=this.graph.getEdgeDetail(te.id);return!E(re)||!E(oe)?!1:z(te,re,oe)},x.cache==="auto"?(this.cacheEnabled=!0,this.startAutoCache()):x.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(x){this.getNode(x)}hasNode(x){if(!this.graph.hasNode(x))return!1;const E=this.graph.getNode(x);return this.nodeFilter(E)}areNeighbors(x,E){return this.checkNodeExistence(x),this.getNeighbors(E).some(z=>z.id===x)}getNode(x){const E=this.graph.getNode(x);if(!this.nodeFilter(E))throw new Error("Node not found for id: "+x);return E}getRelatedEdges(x,E){return this.checkNodeExistence(x),this.cacheEnabled?E==="in"?this.inEdgesMap.get(x):E==="out"?this.outEdgesMap.get(x):this.bothEdgesMap.get(x):this.graph.getRelatedEdges(x,E).filter(this.edgeFilter)}getDegree(x,E){return this.getRelatedEdges(x,E).length}getSuccessors(x){const z=this.getRelatedEdges(x,"out").map(te=>this.getNode(te.target));return Array.from(new Set(z))}getPredecessors(x){const z=this.getRelatedEdges(x,"in").map(te=>this.getNode(te.source));return Array.from(new Set(z))}getNeighbors(x){const E=this.getPredecessors(x),z=this.getSuccessors(x);return Array.from(new Set([...E,...z]))}hasEdge(x){if(!this.graph.hasEdge(x))return!1;const E=this.graph.getEdge(x);return this.edgeFilter(E)}getEdge(x){const E=this.graph.getEdge(x);if(!this.edgeFilter(E))throw new Error("Edge not found for id: "+x);return E}getEdgeDetail(x){const E=this.getEdge(x);return{edge:E,source:this.getNode(E.source),target:this.getNode(E.target)}}hasTreeStructure(x){return this.graph.hasTreeStructure(x)}getRoots(x){return this.graph.getRoots(x).filter(this.nodeFilter)}getChildren(x,E){return this.checkNodeExistence(x),this.graph.getChildren(x,E).filter(this.nodeFilter)}getParent(x,E){this.checkNodeExistence(x);const z=this.graph.getParent(x,E);return!z||!this.nodeFilter(z)?null:z}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(x,E,z="out"){const te={in:this.getPredecessors.bind(this),out:this.getSuccessors.bind(this),both:this.getNeighbors.bind(this)}[z];_5([this.getNode(x)],new Set,E,te)}dfs(x,E,z="out"){const te={in:this.getPredecessors.bind(this),out:this.getSuccessors.bind(this),both:this.getNeighbors.bind(this)}[z];SM(this.getNode(x),new Set,E,te)}}class Zd extends AM{constructor(E){super();ed(this,"nodeMap",new Map);ed(this,"edgeMap",new Map);ed(this,"inEdgesMap",new Map);ed(this,"outEdgesMap",new Map);ed(this,"bothEdgesMap",new Map);ed(this,"treeIndices",new Map);ed(this,"changes",[]);ed(this,"batchCount",0);ed(this,"onChanged",()=>{});ed(this,"batch",E=>{this.batchCount+=1,E(),this.batchCount-=1,this.batchCount||this.commit()});E&&(E.nodes&&this.addNodes(E.nodes),E.edges&&this.addEdges(E.edges),E.tree&&this.addTree(E.tree),E.onChanged&&(this.onChanged=E.onChanged))}commit(){const E=this.changes;this.changes=[];const z={graph:this,changes:E};this.emit("changed",z),this.onChanged(z)}reduceChanges(E){let z=[];return E.forEach(te=>{switch(te.type){case"NodeRemoved":{let re=!1;z=z.filter(oe=>{if(oe.type==="NodeAdded"){const le=oe.value.id===te.value.id;return le&&(re=!0),!le}else{if(oe.type==="NodeDataUpdated")return oe.id!==te.value.id;if(oe.type==="TreeStructureChanged")return oe.nodeId!==te.value.id}return!0}),re||z.push(te);break}case"EdgeRemoved":{let re=!1;z=z.filter(oe=>{if(oe.type==="EdgeAdded"){const le=oe.value.id===te.value.id;return le&&(re=!0),!le}else if(oe.type==="EdgeDataUpdated"||oe.type==="EdgeUpdated")return oe.id!==te.value.id;return!0}),re||z.push(te);break}case"NodeDataUpdated":case"EdgeDataUpdated":case"EdgeUpdated":{const re=z.findIndex(le=>le.type===te.type&&le.id===te.id&&(te.propertyName===void 0||le.propertyName===te.propertyName)),oe=z[re];oe?te.propertyName!==void 0?oe.newValue=te.newValue:(z.splice(re,1),z.push(te)):z.push(te);break}case"TreeStructureDetached":{z=z.filter(re=>re.type==="TreeStructureAttached"||re.type==="TreeStructureChanged"?re.treeKey!==te.treeKey:!0),z.push(te);break}case"TreeStructureChanged":{const re=z.find(oe=>oe.type==="TreeStructureChanged"&&oe.treeKey===te.treeKey&&oe.nodeId===te.nodeId);re?re.newParentId=te.newParentId:z.push(te);break}default:z.push(te);break}}),z}checkNodeExistence(E){this.getNode(E)}hasNode(E){return this.nodeMap.has(E)}areNeighbors(E,z){return this.getNeighbors(z).some(te=>te.id===E)}getNode(E){const z=this.nodeMap.get(E);if(!z)throw new Error("Node not found for id: "+E);return z}getRelatedEdges(E,z){if(this.checkNodeExistence(E),z==="in"){const te=this.inEdgesMap.get(E);return Array.from(te)}else if(z==="out"){const te=this.outEdgesMap.get(E);return Array.from(te)}else{const te=this.bothEdgesMap.get(E);return Array.from(te)}}getDegree(E,z){return this.getRelatedEdges(E,z).length}getSuccessors(E){const te=this.getRelatedEdges(E,"out").map(re=>this.getNode(re.target));return Array.from(new Set(te))}getPredecessors(E){const te=this.getRelatedEdges(E,"in").map(re=>this.getNode(re.source));return Array.from(new Set(te))}getNeighbors(E){const z=this.getPredecessors(E),te=this.getSuccessors(E);return Array.from(new Set([...z,...te]))}doAddNode(E){if(this.hasNode(E.id))throw new Error("Node already exists: "+E.id);this.nodeMap.set(E.id,E),this.inEdgesMap.set(E.id,new Set),this.outEdgesMap.set(E.id,new Set),this.bothEdgesMap.set(E.id,new Set),this.treeIndices.forEach(z=>{z.childrenMap.set(E.id,new Set)}),this.changes.push({type:"NodeAdded",value:E})}addNodes(E){this.batch(()=>{for(const z of E)this.doAddNode(z)})}addNode(E){this.addNodes([E])}doRemoveNode(E){const z=this.getNode(E),te=this.bothEdgesMap.get(E);te==null||te.forEach(re=>this.doRemoveEdge(re.id)),this.nodeMap.delete(E),this.treeIndices.forEach(re=>{var le,ce;(le=re.childrenMap.get(E))==null||le.forEach(ge=>{re.parentMap.delete(ge.id)});const oe=re.parentMap.get(E);oe&&((ce=re.childrenMap.get(oe.id))==null||ce.delete(z)),re.parentMap.delete(E),re.childrenMap.delete(E)}),this.bothEdgesMap.delete(E),this.inEdgesMap.delete(E),this.outEdgesMap.delete(E),this.changes.push({type:"NodeRemoved",value:z})}removeNodes(E){this.batch(()=>{E.forEach(z=>this.doRemoveNode(z))})}removeNode(E){this.removeNodes([E])}updateNodeDataProperty(E,z,te){const re=this.getNode(E);this.batch(()=>{const oe=re.data[z],le=te;re.data[z]=le,this.changes.push({type:"NodeDataUpdated",id:E,propertyName:z,oldValue:oe,newValue:le})})}mergeNodeData(E,z){this.batch(()=>{Object.entries(z).forEach(([te,re])=>{this.updateNodeDataProperty(E,te,re)})})}updateNodeData(...E){const z=E[0],te=this.getNode(z);if(typeof E[1]=="string"){this.updateNodeDataProperty(z,E[1],E[2]);return}let re;if(typeof E[1]=="function"){const oe=E[1];re=oe(te.data)}else typeof E[1]=="object"&&(re=E[1]);this.batch(()=>{const oe=te.data,le=re;te.data=re,this.changes.push({type:"NodeDataUpdated",id:z,oldValue:oe,newValue:le})})}checkEdgeExistence(E){if(!this.hasEdge(E))throw new Error("Edge not found for id: "+E)}hasEdge(E){return this.edgeMap.has(E)}getEdge(E){return this.checkEdgeExistence(E),this.edgeMap.get(E)}getEdgeDetail(E){const z=this.getEdge(E);return{edge:z,source:this.getNode(z.source),target:this.getNode(z.target)}}doAddEdge(E){if(this.hasEdge(E.id))throw new Error("Edge already exists: "+E.id);this.checkNodeExistence(E.source),this.checkNodeExistence(E.target),this.edgeMap.set(E.id,E);const z=this.inEdgesMap.get(E.target),te=this.outEdgesMap.get(E.source),re=this.bothEdgesMap.get(E.source),oe=this.bothEdgesMap.get(E.target);z.add(E),te.add(E),re.add(E),oe.add(E),this.changes.push({type:"EdgeAdded",value:E})}addEdges(E){this.batch(()=>{for(const z of E)this.doAddEdge(z)})}addEdge(E){this.addEdges([E])}doRemoveEdge(E){const z=this.getEdge(E),te=this.outEdgesMap.get(z.source),re=this.inEdgesMap.get(z.target),oe=this.bothEdgesMap.get(z.source),le=this.bothEdgesMap.get(z.target);te.delete(z),re.delete(z),oe.delete(z),le.delete(z),this.edgeMap.delete(E),this.changes.push({type:"EdgeRemoved",value:z})}removeEdges(E){this.batch(()=>{E.forEach(z=>this.doRemoveEdge(z))})}removeEdge(E){this.removeEdges([E])}updateEdgeSource(E,z){const te=this.getEdge(E);this.checkNodeExistence(z);const re=te.source,oe=z;this.outEdgesMap.get(re).delete(te),this.bothEdgesMap.get(re).delete(te),this.outEdgesMap.get(oe).add(te),this.bothEdgesMap.get(oe).add(te),te.source=z,this.batch(()=>{this.changes.push({type:"EdgeUpdated",id:E,propertyName:"source",oldValue:re,newValue:oe})})}updateEdgeTarget(E,z){const te=this.getEdge(E);this.checkNodeExistence(z);const re=te.target,oe=z;this.inEdgesMap.get(re).delete(te),this.bothEdgesMap.get(re).delete(te),this.inEdgesMap.get(oe).add(te),this.bothEdgesMap.get(oe).add(te),te.target=z,this.batch(()=>{this.changes.push({type:"EdgeUpdated",id:E,propertyName:"target",oldValue:re,newValue:oe})})}updateEdgeDataProperty(E,z,te){const re=this.getEdge(E);this.batch(()=>{const oe=re.data[z],le=te;re.data[z]=le,this.changes.push({type:"EdgeDataUpdated",id:E,propertyName:z,oldValue:oe,newValue:le})})}updateEdgeData(...E){const z=E[0],te=this.getEdge(z);if(typeof E[1]=="string"){this.updateEdgeDataProperty(z,E[1],E[2]);return}let re;if(typeof E[1]=="function"){const oe=E[1];re=oe(te.data)}else typeof E[1]=="object"&&(re=E[1]);this.batch(()=>{const oe=te.data,le=re;te.data=re,this.changes.push({type:"EdgeDataUpdated",id:z,oldValue:oe,newValue:le})})}mergeEdgeData(E,z){this.batch(()=>{Object.entries(z).forEach(([te,re])=>{this.updateEdgeDataProperty(E,te,re)})})}checkTreeExistence(E){if(!this.hasTreeStructure(E))throw new Error("Tree structure not found for treeKey: "+E)}hasTreeStructure(E){return this.treeIndices.has(E)}attachTreeStructure(E){this.treeIndices.has(E)||(this.treeIndices.set(E,{parentMap:new Map,childrenMap:new Map}),this.batch(()=>{this.changes.push({type:"TreeStructureAttached",treeKey:E})}))}detachTreeStructure(E){this.checkTreeExistence(E),this.treeIndices.delete(E),this.batch(()=>{this.changes.push({type:"TreeStructureDetached",treeKey:E})})}addTree(E,z){this.batch(()=>{this.attachTreeStructure(z);const te=[],re=Array.isArray(E)?E:[E];for(;re.length;){const oe=re.shift();te.push(oe),oe.children&&re.push(...oe.children)}this.addNodes(te),te.forEach(oe=>{var le;(le=oe.children)==null||le.forEach(ce=>{this.setParent(ce.id,oe.id,z)})})})}getRoots(E){return this.checkTreeExistence(E),this.getAllNodes().filter(z=>!this.getParent(z.id,E))}getChildren(E,z){this.checkNodeExistence(E),this.checkTreeExistence(z);const re=this.treeIndices.get(z).childrenMap.get(E);return Array.from(re||[])}getParent(E,z){return this.checkNodeExistence(E),this.checkTreeExistence(z),this.treeIndices.get(z).parentMap.get(E)||null}getAncestors(E,z){const te=[];let re=this.getNode(E),oe;for(;oe=this.getParent(re.id,z);)te.push(oe),re=oe;return te}setParent(E,z,te){var Ae,Me;this.checkTreeExistence(te);const re=this.treeIndices.get(te);if(!re)return;const oe=this.getNode(E),le=re.parentMap.get(E);if((le==null?void 0:le.id)===z)return;if(z==null){le&&((Ae=re.childrenMap.get(le.id))==null||Ae.delete(oe)),re.parentMap.delete(E);return}const ce=this.getNode(z);re.parentMap.set(E,ce),le&&((Me=re.childrenMap.get(le.id))==null||Me.delete(oe));let ge=re.childrenMap.get(ce.id);ge||(ge=new Set,re.childrenMap.set(ce.id,ge)),ge.add(oe),this.batch(()=>{this.changes.push({type:"TreeStructureChanged",treeKey:te,nodeId:E,oldParentId:le==null?void 0:le.id,newParentId:ce.id})})}dfsTree(E,z,te){const re=oe=>this.getChildren(oe,te);return SM(this.getNode(E),new Set,z,re)}bfsTree(E,z,te){const re=oe=>this.getChildren(oe,te);return _5([this.getNode(E)],new Set,z,re)}getAllNodes(){return Array.from(this.nodeMap.values())}getAllEdges(){return Array.from(this.edgeMap.values())}bfs(E,z,te="out"){const re={in:this.getPredecessors.bind(this),out:this.getSuccessors.bind(this),both:this.getNeighbors.bind(this)}[te];return _5([this.getNode(E)],new Set,z,re)}dfs(E,z,te="out"){const re={in:this.getPredecessors.bind(this),out:this.getSuccessors.bind(this),both:this.getNeighbors.bind(this)}[te];return SM(this.getNode(E),new Set,z,re)}clone(){const E=this.getAllNodes().map(re=>pI(tw({},re),{data:tw({},re.data)})),z=this.getAllEdges().map(re=>pI(tw({},re),{data:tw({},re.data)})),te=new Zd({nodes:E,edges:z});return this.treeIndices.forEach(({parentMap:re,childrenMap:oe},le)=>{const ce=new Map;re.forEach((Ae,Me)=>{ce.set(Me,te.getNode(Ae.id))});const ge=new Map;oe.forEach((Ae,Me)=>{ge.set(Me,new Set(Array.from(Ae).map(Ue=>te.getNode(Ue.id))))}),te.treeIndices.set(le,{parentMap:ce,childrenMap:ge})}),te}toJSON(){return JSON.stringify({nodes:this.getAllNodes(),edges:this.getAllEdges()})}createView(E){return new f9(tw({graph:this},E))}}class wM{constructor(x,E){this.context=x,this.options=E||{}}}var g9=function(b,x,E,z){function te(re){return re instanceof E?re:new E(function(oe){oe(re)})}return new(E||(E=Promise))(function(re,oe){function le(Ae){try{ge(z.next(Ae))}catch(Me){oe(Me)}}function ce(Ae){try{ge(z.throw(Ae))}catch(Me){oe(Me)}}function ge(Ae){Ae.done?re(Ae.value):te(Ae.value).then(le,ce)}ge((z=z.apply(b,x||[])).next())})},p9=function(b,x){var E={};for(var z in b)Object.prototype.hasOwnProperty.call(b,z)&&x.indexOf(z)<0&&(E[z]=b[z]);if(b!=null&&typeof Object.getOwnPropertySymbols=="function")for(var te=0,z=Object.getOwnPropertySymbols(b);te{const re=te.data._isCombo?z.combos:z.nodes,{x:oe,y:le,z:ce=0}=te.data;re==null||re.push({id:te.id,style:{x:oe,y:le,z:ce}})}),E.forEach(te=>{const{id:re,source:oe,target:le,data:{points:ce=[],controlPoints:ge=ce.slice(1,ce.length-1)}}=te;z.edges.push({id:re,source:oe,target:le,style:Object.assign({},ge!=null&&ge.length?{controlPoints:ge.map(Rg)}:{})})}),z}function y9(b,x){class E extends wM{constructor(te,re){if(super(te,re),this.instance=new b({}),this.id=this.instance.id,"stop"in this.instance&&"tick"in this.instance){const oe=this.instance;this.stop=oe.stop.bind(oe),this.tick=le=>{const ce=oe.tick(le);return CM(ce)}}}execute(te,re){return g9(this,void 0,void 0,function*(){return CM(yield this.instance.execute(this.graphData2LayoutModel(te),this.transformOptions(Cp({},this.options,re))))})}transformOptions(te){const{onTick:re}=te;return re&&(te.onTick=oe=>re(CM(oe))),te}graphData2LayoutModel(te){const{nodes:re=[],edges:oe=[],combos:le=[]}=te,ce=re.map(Xe=>{const $e=Ji(Xe),{data:rt,style:ot,combo:pt}=Xe,yt=p9(Xe,["data","style","combo"]),Ct={id:$e,data:Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},rt),{data:rt}),pt?{parentId:pt}:{}),{style:ot}),yt)};return ot!=null&&ot.x&&Object.assign(Ct.data,{x:ot.x}),ot!=null&&ot.y&&Object.assign(Ct.data,{y:ot.y}),ot!=null&&ot.z&&Object.assign(Ct.data,{z:ot.z}),Ct}),ge=new Map(ce.map(Xe=>[Xe.id,Xe])),Ae=oe.filter(Xe=>{const{source:$e,target:rt}=Xe;return ge.has($e)&&ge.has(rt)}).map(Xe=>{const{source:$e,target:rt,data:ot,style:pt}=Xe;return{id:Ji(Xe),source:$e,target:rt,data:Object.assign({},ot),style:Object.assign({},pt)}}),Me=le.map(Xe=>({id:Ji(Xe),data:Object.assign({_isCombo:!0},Xe.data),style:Object.assign({},Xe.style)})),Ue=new Zd({nodes:[...ce,...Me],edges:Ae});return x.model.model.hasTreeStructure(lh)&&(Ue.attachTreeStructure(lh),ce.forEach(Xe=>{const $e=x.model.model.getParent(Xe.id,lh);$e&&Ue.hasNode($e.id)&&Ue.setParent(Xe.id,$e.id,lh)})),Ue}}return E}function z5(b,x,...E){if(x in b)return b[x](...E);if("instance"in b){const z=b.instance;if(x in z)return z[x](...E)}return null}function RO(b,x){if(x in b)return b[x];if("instance"in b){const E=b.instance;if(x in E)return E[x]}return null}var x9=function(b,x,E,z){function te(re){return re instanceof E?re:new E(function(oe){oe(re)})}return new(E||(E=Promise))(function(re,oe){function le(Ae){try{ge(z.next(Ae))}catch(Me){oe(Me)}}function ce(Ae){try{ge(z.throw(Ae))}catch(Me){oe(Me)}}function ge(Ae){Ae.done?re(Ae.value):te(Ae.value).then(le,ce)}ge((z=z.apply(b,x||[])).next())})};class E9 extends XC{get forceLayoutInstance(){return this.context.layout.getLayoutInstance().find(x=>["d3-force","d3-force-3d"].includes(x==null?void 0:x.id))}validate(x){return this.context.layout?this.forceLayoutInstance?super.validate(x):(n0.warn("DragElementForce only works with d3-force or d3-force-3d layout"),!1):!1}moveElement(x,E){return x9(this,void 0,void 0,function*(){const z=this.forceLayoutInstance;this.context.graph.getNodeData(x).forEach((te,re)=>{const{x:oe=0,y:le=0}=te.style||{};z&&z5(z,"setFixedPosition",x[re],[...cu([+oe,+le],E)])})})}onDragStart(x){if(this.enable=this.validate(x),!this.enable)return;this.target=this.getSelectedNodeIDs([x.target.id]),this.hideEdge(),this.context.graph.frontElement(this.target);const E=this.forceLayoutInstance;E&&RO(E,"simulation").alphaTarget(.3).restart(),this.context.graph.getNodeData(this.target).forEach(z=>{const{x:te=0,y:re=0}=z.style||{};E&&z5(E,"setFixedPosition",Ji(z),[+te,+re])})}onDrag(x){if(!this.enable)return;const E=this.getDelta(x);this.moveElement(this.target,E)}onDragEnd(){const x=this.forceLayoutInstance;x&&RO(x,"simulation").alphaTarget(0),!this.options.fixed&&this.context.graph.getNodeData(this.target).forEach(E=>{x&&z5(x,"setFixedPosition",Ji(E),[null,null,null])})}}var kO=function(b,x,E,z){function te(re){return re instanceof E?re:new E(function(oe){oe(re)})}return new(E||(E=Promise))(function(re,oe){function le(Ae){try{ge(z.next(Ae))}catch(Me){oe(Me)}}function ce(Ae){try{ge(z.throw(Ae))}catch(Me){oe(Me)}}function ge(Ae){Ae.done?re(Ae.value):te(Ae.value).then(le,ce)}ge((z=z.apply(b,x||[])).next())})};class bM extends b0{constructor(x,E){super(x,Object.assign({},bM.defaultOptions,E)),this.isZoomEvent=z=>!!(z.data&&"scale"in z.data),this.relatedEdgeToUpdate=new Set,this.zoom=this.context.graph.getZoom(),this.fixElementSize=z=>kO(this,void 0,void 0,function*(){if(!this.validate(z))return;const{graph:te}=this.context,{state:re,nodeFilter:oe,edgeFilter:le,comboFilter:ce}=this.options,ge=(re?te.getElementDataByState("node",re):te.getNodeData()).filter(oe),Ae=(re?te.getElementDataByState("edge",re):te.getEdgeData()).filter(le),Me=(re?te.getElementDataByState("combo",re):te.getComboData()).filter(ce),Ue=this.isZoomEvent(z)?this.zoom=Math.max(.01,Math.min(z.data.scale,10)):this.zoom,Xe=[...ge,...Me];Xe.length>0&&Xe.forEach($e=>this.fixNodeLike($e,Ue)),this.updateRelatedEdges(),Ae.length>0&&Ae.forEach($e=>this.fixEdge($e,Ue))}),this.cachedStyles=new Map,this.getOriginalFieldValue=(z,te,re)=>{var oe;const le=this.cachedStyles.get(z)||[],ce=((oe=le.find(ge=>ge.shape===te))===null||oe===void 0?void 0:oe.style)||{};return re in ce||(ce[re]=te.attributes[re],this.cachedStyles.set(z,[...le.filter(ge=>ge.shape!==te),{shape:te,style:ce}])),ce[re]},this.scaleEntireElement=(z,te,re)=>{te.setLocalScale(1/re);const oe=this.cachedStyles.get(z)||[];oe.push({shape:te}),this.cachedStyles.set(z,oe)},this.scaleSpecificShapes=(z,te,re)=>{const oe=u8(z);(Array.isArray(re)?re:[re]).forEach(ce=>{const{shape:ge,fields:Ae}=ce,Me=typeof ge=="function"?ge(oe):z.getShape(ge);if(Me){if(!Ae){this.scaleEntireElement(z.id,Me,te);return}Ae.forEach(Ue=>{const Xe=this.getOriginalFieldValue(z.id,Me,Ue);os(Xe)&&(Me.style[Ue]=Xe/te)})}})},this.skipIfExceedViewport=z=>{const{viewport:te}=this.context;return!(te!=null&&te.isInViewport(z.getRenderBounds(),!1,30))},this.fixNodeLike=(z,te)=>{const re=Ji(z),{element:oe,model:le}=this.context,ce=oe.getElement(re);if(!ce||this.skipIfExceedViewport(ce))return;le.getRelatedEdgesData(re).forEach(Me=>this.relatedEdgeToUpdate.add(Ji(Me)));const Ae=this.options[ce.type];if(!Ae){this.scaleEntireElement(re,ce,te);return}this.scaleSpecificShapes(ce,te,Ae)},this.fixEdge=(z,te)=>{const re=Ji(z),oe=this.context.element.getElement(re);if(!oe||this.skipIfExceedViewport(oe))return;const le=this.options.edge;if(!le){oe.style.transformOrigin="center",this.scaleEntireElement(re,oe,te);return}this.scaleSpecificShapes(oe,te,le)},this.updateRelatedEdges=()=>{const{element:z}=this.context;this.relatedEdgeToUpdate.size>0&&this.relatedEdgeToUpdate.forEach(te=>{const re=z.getElement(te);re==null||re.update({})}),this.relatedEdgeToUpdate.clear()},this.resetTransform=z=>kO(this,void 0,void 0,function*(){var te;!((te=z.data)===null||te===void 0)&&te.firstRender||(this.options.reset?this.restoreCachedStyles():this.fixElementSize({data:{scale:this.zoom}}))}),this.bindEvents()}restoreCachedStyles(){if(this.cachedStyles.size>0){this.cachedStyles.forEach(te=>{te.forEach(({shape:re,style:oe})=>{if(uy(oe))re.setLocalScale(1);else{if(this.options.state)return;Object.entries(oe).forEach(([le,ce])=>re.style[le]=ce)}})});const{graph:x,element:E}=this.context,z=Object.keys(Object.fromEntries(this.cachedStyles)).filter(te=>te&&x.getElementType(te)==="node");if(z.length>0){const te=new Set;z.forEach(re=>{x.getRelatedEdgesData(re).forEach(oe=>te.add(Ji(oe)))}),te.forEach(re=>{const oe=E==null?void 0:E.getElement(re);oe==null||oe.update({})})}}}bindEvents(){const{graph:x}=this.context;x.on(es.AFTER_DRAW,this.resetTransform),x.on(es.AFTER_TRANSFORM,this.fixElementSize)}unbindEvents(){const{graph:x}=this.context;x.off(es.AFTER_DRAW,this.resetTransform),x.off(es.AFTER_TRANSFORM,this.fixElementSize)}validate(x){if(this.destroyed)return!1;const{enable:E}=this.options;return _s(E)?E(x):!!E}destroy(){this.unbindEvents(),super.destroy()}}bM.defaultOptions={enable:b=>b.data.scale<1,nodeFilter:()=>!0,edgeFilter:()=>!0,comboFilter:()=>!0,edge:[{shape:"key",fields:["lineWidth"]},{shape:"halo",fields:["lineWidth"]},{shape:"label"}],reset:!1};var A9=function(b,x,E,z){function te(re){return re instanceof E?re:new E(function(oe){oe(re)})}return new(E||(E=Promise))(function(re,oe){function le(Ae){try{ge(z.next(Ae))}catch(Me){oe(Me)}}function ce(Ae){try{ge(z.throw(Ae))}catch(Me){oe(Me)}}function ge(Ae){Ae.done?re(Ae.value):te(Ae.value).then(le,ce)}ge((z=z.apply(b,x||[])).next())})};class PM extends b0{constructor(x,E){super(x,Object.assign({},PM.defaultOptions,E)),this.focus=z=>A9(this,void 0,void 0,function*(){if(!this.validate(z))return;const{graph:te}=this.context;yield te.focusElement(z.target.id,this.options.animation)}),this.bindEvents()}bindEvents(){const{graph:x}=this.context;this.unbindEvents(),GE.forEach(E=>{x.on(`${E}:${Zo.CLICK}`,this.focus)})}validate(x){if(this.destroyed)return!1;const{enable:E}=this.options;return _s(E)?E(x):!!E}unbindEvents(){const{graph:x}=this.context;GE.forEach(E=>{x.off(`${E}:${Zo.CLICK}`,this.focus)})}destroy(){this.unbindEvents(),super.destroy()}}PM.defaultOptions={animation:{easing:"ease-in",duration:500},enable:!0};class MM extends b0{constructor(x,E){super(x,Object.assign({},MM.defaultOptions,E)),this.isFrozen=!1,this.toggleFrozen=z=>{this.isFrozen=z.type==="dragstart"},this.hoverElement=z=>{if(!this.validate(z))return;const te=z.type===Zo.POINTER_ENTER;this.updateElementsState(z,te);const{onHover:re,onHoverEnd:oe}=this.options;te?re==null||re(z):oe==null||oe(z)},this.updateElementsState=(z,te)=>{if(!this.options.state&&!this.options.inactiveState)return;const{graph:re}=this.context,{state:oe,animation:le,inactiveState:ce}=this.options,ge=this.getActiveIds(z),Ae={};if(oe&&Object.assign(Ae,this.getElementsState(ge,oe,te)),ce){const Me=w3(re.getData(),!0).filter(Ue=>!ge.includes(Ue));Object.assign(Ae,this.getElementsState(Me,ce,te))}re.setElementState(Ae,le)},this.getElementsState=(z,te,re)=>{const{graph:oe}=this.context,le={};return z.forEach(ce=>{const ge=oe.getElementState(ce);re?le[ce]=ge.includes(te)?ge:[...ge,te]:le[ce]=ge.filter(Ae=>Ae!==te)}),le},this.bindEvents()}bindEvents(){const{graph:x}=this.context;this.unbindEvents(),GE.forEach(z=>{x.on(`${z}:${Zo.POINTER_ENTER}`,this.hoverElement),x.on(`${z}:${Zo.POINTER_LEAVE}`,this.hoverElement)});const E=this.context.canvas.document;E.addEventListener(`${Zo.DRAG_START}`,this.toggleFrozen),E.addEventListener(`${Zo.DRAG_END}`,this.toggleFrozen)}getActiveIds(x){const{graph:E}=this.context,{degree:z,direction:te}=this.options,re=x.target.id;return z?z3(E,x.targetType,re,typeof z=="function"?z(x):z,te):[re]}validate(x){if(this.destroyed||this.isFrozen||gM(x.target)||this.context.graph.isCollapsingExpanding)return!1;const{enable:E}=this.options;return _s(E)?E(x):!!E}unbindEvents(){const{graph:x}=this.context;GE.forEach(z=>{x.off(`${z}:${Zo.POINTER_ENTER}`,this.hoverElement),x.off(`${z}:${Zo.POINTER_LEAVE}`,this.hoverElement)});const E=this.context.canvas.document;E.removeEventListener(`${Zo.DRAG_START}`,this.toggleFrozen),E.removeEventListener(`${Zo.DRAG_END}`,this.toggleFrozen)}destroy(){this.unbindEvents(),super.destroy()}}MM.defaultOptions={animation:!1,enable:!0,degree:0,direction:"both",state:"active",inactiveState:void 0};class S9 extends zC{onPointerDown(x){if(!super.validate(x)||!super.isKeydown()||this.points)return;const{canvas:E}=this.context;this.pathShape=new Gd({id:"g6-lasso-select",style:this.options.style}),E.appendChild(this.pathShape),this.points=[UP(x)]}onPointerMove(x){var E;if(!this.points)return;const{immediately:z,mode:te}=this.options;this.points.push(UP(x)),(E=this.pathShape)===null||E===void 0||E.setAttribute("d",i8(this.points)),z&&te==="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 x;(x=this.pathShape)===null||x===void 0||x.remove(),this.pathShape=void 0,this.points=void 0}}class LM extends b0{constructor(x,E){super(x,Object.assign({},LM.defaultOptions,E)),this.hiddenShapes=[],this.isVisible=!0,this.setElementsVisibility=(z,te,re)=>{z.filter(Boolean).forEach(oe=>{te==="hidden"&&!oe.isVisible()?this.hiddenShapes.push(oe):te==="visible"&&this.hiddenShapes.includes(oe)?this.hiddenShapes.splice(this.hiddenShapes.indexOf(oe),1):WE(oe,te,re)})},this.filterShapes=(z,te)=>{if(_s(te))return oe=>!te(z,oe);const re=te==null?void 0:te[z];return oe=>oe.className?!(re!=null&&re.includes(oe.className)):!0},this.hideShapes=z=>{if(!this.validate(z)||!this.isVisible)return;const{element:te}=this.context,{shapes:re={}}=this.options;this.setElementsVisibility(te.getNodes(),"hidden",this.filterShapes("node",re)),this.setElementsVisibility(te.getEdges(),"hidden",this.filterShapes("edge",re)),this.setElementsVisibility(te.getCombos(),"hidden",this.filterShapes("combo",re)),this.isVisible=!1},this.showShapes=YC(z=>{if(!this.validate(z)||this.isVisible)return;const{element:te}=this.context;this.setElementsVisibility(te.getNodes(),"visible"),this.setElementsVisibility(te.getEdges(),"visible"),this.setElementsVisibility(te.getCombos(),"visible"),this.isVisible=!0},this.options.debounce),this.bindEvents()}bindEvents(){const{graph:x}=this.context;x.on(es.BEFORE_TRANSFORM,this.hideShapes),x.on(es.AFTER_TRANSFORM,this.showShapes)}unbindEvents(){const{graph:x}=this.context;x.off(es.BEFORE_TRANSFORM,this.hideShapes),x.off(es.AFTER_TRANSFORM,this.showShapes)}validate(x){if(this.destroyed)return!1;const{enable:E}=this.options;return _s(E)?E(x):!!E}update(x){this.unbindEvents(),super.update(x),this.bindEvents()}destroy(){this.unbindEvents(),super.destroy()}}LM.defaultOptions={enable:!0,debounce:200,shapes:b=>b==="node"};var FO=function(b,x,E,z){function te(re){return re instanceof E?re:new E(function(oe){oe(re)})}return new(E||(E=Promise))(function(re,oe){function le(Ae){try{ge(z.next(Ae))}catch(Me){oe(Me)}}function ce(Ae){try{ge(z.throw(Ae))}catch(Me){oe(Me)}}function ge(Ae){Ae.done?re(Ae.value):te(Ae.value).then(le,ce)}ge((z=z.apply(b,x||[])).next())})};class TM extends b0{constructor(x,E){super(x,Object.assign({},TM.defaultOptions,E)),this.onWheel=z=>FO(this,void 0,void 0,function*(){this.options.preventDefault&&z.preventDefault();const te=z.deltaX,re=z.deltaY;yield this.scroll([-te,-re],z)}),this.shortcut=new DS(x.graph),this.bindEvents()}update(x){super.update(x),this.bindEvents()}bindEvents(){var x,E;const{trigger:z}=this.options;if(this.shortcut.unbindAll(),Sh(z)){(x=this.graphDom)===null||x===void 0||x.removeEventListener(Zo.WHEEL,this.onWheel);const{up:te=[],down:re=[],left:oe=[],right:le=[]}=z;this.shortcut.bind(te,ce=>this.scroll([0,-10],ce)),this.shortcut.bind(re,ce=>this.scroll([0,10],ce)),this.shortcut.bind(oe,ce=>this.scroll([-10,0],ce)),this.shortcut.bind(le,ce=>this.scroll([10,0],ce))}else(E=this.graphDom)===null||E===void 0||E.addEventListener(Zo.WHEEL,this.onWheel,{passive:!1})}get graphDom(){return this.context.graph.getCanvas().getContextService().getDomElement()}formatDisplacement(x){const{sensitivity:E}=this.options;return x=qy(x,E),x=this.clampByDirection(x),x=this.clampByRange(x),x}clampByDirection([x,E]){const{direction:z}=this.options;return z==="x"?E=0:z==="y"&&(x=0),[x,E]}clampByRange([x,E]){const{viewport:z,canvas:te}=this.context,[re,oe]=te.getSize(),[le,ce,ge,Ae]=am(this.options.range),Me=[oe*le,re*ce,oe*ge,re*Ae],Ue=fx(QT(z.getCanvasCenter()),Me),Xe=Yc(z.getViewportCenter(),[x,E,0]);if(!sm(Xe,Ue)){const{min:[$e,rt],max:[ot,pt]}=Ue;(Xe[0]<$e&&x>0||Xe[0]>ot&&x<0)&&(x=0),(Xe[1]0||Xe[1]>pt&&E<0)&&(E=0)}return[x,E]}scroll(x,E){return FO(this,void 0,void 0,function*(){if(!this.validate(E))return;const{onFinish:z}=this.options,te=this.context.graph,re=this.formatDisplacement(x);yield te.translateBy(re,!1),z==null||z()})}validate(x){if(this.destroyed)return!1;const{enable:E}=this.options;return _s(E)?E(x):!!E}destroy(){var x;this.shortcut.destroy(),(x=this.graphDom)===null||x===void 0||x.removeEventListener(Zo.WHEEL,this.onWheel),super.destroy()}}TM.defaultOptions={enable:!0,sensitivity:1,preventDefault:!0,range:1/0};var _O=function(b,x,E,z){function te(re){return re instanceof E?re:new E(function(oe){oe(re)})}return new(E||(E=Promise))(function(re,oe){function le(Ae){try{ge(z.next(Ae))}catch(Me){oe(Me)}}function ce(Ae){try{ge(z.throw(Ae))}catch(Me){oe(Me)}}function ge(Ae){Ae.done?re(Ae.value):te(Ae.value).then(le,ce)}ge((z=z.apply(b,x||[])).next())})};class DM extends b0{constructor(x,E){super(x,Object.assign({},DM.defaultOptions,E)),this.zoom=(z,te,re)=>_O(this,void 0,void 0,function*(){if(!this.validate(te))return;const{graph:oe}=this.context;let le;"viewport"in te&&(le=Rg(te.viewport));const{sensitivity:ce,onFinish:ge}=this.options,Ae=1+Ah(z,-50,50)*ce/100,Me=oe.getZoom();yield oe.zoomTo(Me*Ae,re,le),ge==null||ge()}),this.onReset=()=>_O(this,void 0,void 0,function*(){yield this.context.graph.zoomTo(1,this.options.animation)}),this.preventDefault=z=>{this.options.preventDefault&&z.preventDefault()},this.shortcut=new DS(x.graph),this.bindEvents()}update(x){super.update(x),this.bindEvents()}bindEvents(){const{trigger:x}=this.options;if(this.shortcut.unbindAll(),Array.isArray(x))if(x.includes(Zo.PINCH))this.shortcut.bind([Zo.PINCH],E=>{this.zoom(E.scale,E,!1)});else{const E=this.context.canvas.getContainer();E==null||E.addEventListener(Zo.WHEEL,this.preventDefault),this.shortcut.bind([...x,Zo.WHEEL],z=>{const{deltaX:te,deltaY:re}=z;this.zoom(-(re!=null?re:te),z,!1)})}if(typeof x=="object"){const{zoomIn:E=[],zoomOut:z=[],reset:te=[]}=x;this.shortcut.bind(E,re=>this.zoom(10,re,this.options.animation)),this.shortcut.bind(z,re=>this.zoom(-10,re,this.options.animation)),this.shortcut.bind(te,this.onReset)}}validate(x){if(this.destroyed)return!1;const{enable:E}=this.options;return _s(E)?E(x):!!E}destroy(){var x;this.shortcut.destroy(),(x=this.context.canvas.getContainer())===null||x===void 0||x.removeEventListener(Zo.WHEEL,this.preventDefault),super.destroy()}}DM.defaultOptions={animation:{duration:200},enable:!0,sensitivity:1,trigger:[],preventDefault:!0};var IM=Be(13722);const w9=(b,x)=>{if(b!=="next"&&b!=="prev")return x},zO=b=>{b.prev.next=b.next,b.next.prev=b.prev,delete b.next,delete b.prev};class C9{constructor(){const x={};x.prev=x,x.next=x.prev,this.shortcut=x}dequeue(){const x=this.shortcut,E=x.prev;if(E&&E!==x)return zO(E),E}enqueue(x){const E=this.shortcut;x.prev&&x.next&&zO(x),x.next=E.next,E.next.prev=x,E.next=x,x.prev=E}toString(){const x=[],E=this.shortcut;let z=E.prev;for(;z!==E;)x.push(JSON.stringify(z,w9)),z=z==null?void 0:z.prev;return`[${x.join(", ")}]`}}class b9 extends C9{}const P9=()=>1,M9=(b,x)=>{var E;if(b.getAllNodes().length<=1)return[];const z=T9(b,x||P9);return(E=L9(z.graph,z.buckets,z.zeroIdx).map(re=>b.getRelatedEdges(re.v,"out").filter(({target:oe})=>oe===re.w)))===null||E===void 0?void 0:E.flat()},L9=(b,x,E)=>{let z=[];const te=x[x.length-1],re=x[0];let oe;for(;b.getAllNodes().length;){for(;oe=re.dequeue();)j5(b,x,E,oe);for(;oe=te.dequeue();)j5(b,x,E,oe);if(b.getAllNodes().length){for(let le=x.length-2;le>0;--le)if(oe=x[le].dequeue(),oe){z=z.concat(j5(b,x,E,oe,!0));break}}}return z},j5=(b,x,E,z,te)=>{var re,oe;const le=[];return b.hasNode(z.v)&&((re=b.getRelatedEdges(z.v,"in"))===null||re===void 0||re.forEach(ce=>{const ge=ce.data.weight,Ae=b.getNode(ce.source);te&&le.push({v:ce.source,w:ce.target,in:0,out:0}),Ae.data.out===void 0&&(Ae.data.out=0),Ae.data.out-=ge,W5(x,E,Object.assign({v:Ae.id},Ae.data))}),(oe=b.getRelatedEdges(z.v,"out"))===null||oe===void 0||oe.forEach(ce=>{const ge=ce.data.weight,Ae=ce.target,Me=b.getNode(Ae);Me.data.in===void 0&&(Me.data.in=0),Me.data.in-=ge,W5(x,E,Object.assign({v:Me.id},Me.data))}),b.removeNode(z.v)),te?le:void 0},T9=(b,x)=>{const E=new Zd;let z=0,te=0;b.getAllNodes().forEach(ce=>{E.addNode({id:ce.id,data:{v:ce.id,in:0,out:0}})}),b.getAllEdges().forEach(ce=>{const ge=E.getRelatedEdges(ce.source,"out").find(Me=>Me.target===ce.target),Ae=(x==null?void 0:x(ce))||1;ge?E.updateEdgeData(ge==null?void 0:ge.id,Object.assign(Object.assign({},ge.data),{weight:ge.data.weight+Ae})):E.addEdge({id:ce.id,source:ce.source,target:ce.target,data:{weight:Ae}}),te=Math.max(te,E.getNode(ce.source).data.out+=Ae),z=Math.max(z,E.getNode(ce.target).data.in+=Ae)});const re=[],oe=te+z+3;for(let ce=0;ce{W5(re,le,Object.assign({v:ce.id},E.getNode(ce.id).data))}),{buckets:re,zeroIdx:le,graph:E}},W5=(b,x,E)=>{E.out?E.in?b[E.out-E.in+x].enqueue(E):b[b.length-1].enqueue(E):b[0].enqueue(E)},D9=(b,x)=>{const z=x==="greedy"?M9(b,(te=>re=>re.data.weight||1)(b)):I9(b);z==null||z.forEach(te=>{const re=te.data;b.removeEdge(te.id),re.forwardName=te.data.name,re.reversed=!0,b.addEdge({id:te.id,source:te.target,target:te.source,data:Object.assign({},re)})})},I9=b=>{const x=[],E={},z={},te=re=>{z[re]||(z[re]=!0,E[re]=!0,b.getRelatedEdges(re,"out").forEach(oe=>{E[oe.target]?x.push(oe):te(oe.target)}),delete E[re])};return b.getAllNodes().forEach(re=>te(re.id)),x},O9=b=>{b.getAllEdges().forEach(x=>{const E=x.data;if(E.reversed){b.removeEdge(x.id);const z=E.forwardName;delete E.reversed,delete E.forwardName,b.addEdge({id:x.id,source:x.target,target:x.source,data:Object.assign(Object.assign({},E),{forwardName:z})})}})},N9=(b,x)=>Number(b)-Number(x),BS=(b,x,E,z)=>{let te;do te=`${z}${Math.random()}`;while(b.hasNode(te));return E.dummy=x,b.addNode({id:te,data:E}),te},B9=b=>{const x=new Zd;return b.getAllNodes().forEach(E=>{x.addNode(Object.assign({},E))}),b.getAllEdges().forEach(E=>{const z=x.getRelatedEdges(E.source,"out").find(te=>te.target===E.target);z?x.updateEdgeData(z==null?void 0:z.id,Object.assign(Object.assign({},z.data),{weight:z.data.weight+E.data.weight||0,minlen:Math.max(z.data.minlen,E.data.minlen||1)})):x.addEdge({id:E.id,source:E.source,target:E.target,data:{weight:E.data.weight||0,minlen:E.data.minlen||1}})}),x},jO=b=>{const x=new Zd;return b.getAllNodes().forEach(E=>{b.getChildren(E.id).length||x.addNode(Object.assign({},E))}),b.getAllEdges().forEach(E=>{x.addEdge(E)}),x},WO=(b,x)=>b==null?void 0:b.reduce((E,z,te)=>(E[z]=x[te],E),{}),YJ=b=>{const x={};return b.getAllNodes().forEach(E=>{const z={};b.getRelatedEdges(E.id,"out").forEach(te=>{z[te.target]=(z[te.target]||0)+(te.data.weight||0)}),x[E.id]=z}),x},XJ=b=>{const x=b.getAllNodes(),E=x.map(z=>{const te={};return b.getRelatedEdges(z.id,"in").forEach(re=>{te[re.source]=(te[re.source]||0)+re.data.weight}),te});return WO(x.map(z=>z.id),E)},UO=(b,x)=>{const E=Number(b.x),z=Number(b.y),te=Number(x.x)-E,re=Number(x.y)-z;let oe=Number(b.width)/2,le=Number(b.height)/2;if(!te&&!re)return{x:0,y:0};let ce,ge;return Math.abs(re)*oe>Math.abs(te)*le?(re<0&&(le=-le),ce=le*te/re,ge=le):(te<0&&(oe=-oe),ce=oe,ge=oe*re/te),{x:E+ce,y:z+ge}},QC=b=>{const x=[],E=HO(b)+1;for(let z=0;z{const te=z.data.rank;te!==void 0&&x[te]&&x[te].push(z.id)});for(let z=0;zN9(b.getNode(te).data.order,b.getNode(re).data.order));return x},R9=b=>{const x=b.getAllNodes().filter(z=>z.data.rank!==void 0).map(z=>z.data.rank),E=Math.min(...x);b.getAllNodes().forEach(z=>{z.data.hasOwnProperty("rank")&&E!==1/0&&(z.data.rank-=E)})},k9=(b,x=0)=>{const E=b.getAllNodes(),z=E.filter(le=>le.data.rank!==void 0).map(le=>le.data.rank),te=Math.min(...z),re=[];E.forEach(le=>{const ce=(le.data.rank||0)-te;re[ce]||(re[ce]=[]),re[ce].push(le.id)});let oe=0;for(let le=0;le{const Ae=b.getNode(ge);Ae&&(Ae.data.rank=Ae.data.rank||0,Ae.data.rank+=oe)}))}},GO=(b,x,E,z)=>{const te={width:0,height:0};return os(E)&&os(z)&&(te.rank=E,te.order=z),BS(b,"border",te,x)},HO=b=>{let x;return b.getAllNodes().forEach(E=>{const z=E.data.rank;z!==void 0&&(x===void 0||z>x)&&(x=z)}),x||(x=0),x},F9=(b,x)=>{const E={lhs:[],rhs:[]};return b==null||b.forEach(z=>{x(z)?E.lhs.push(z):E.rhs.push(z)}),E},U5=(b,x)=>b.reduce((E,z)=>{const te=x(E),re=x(z);return te>re?z:E}),VO=(b,x,E,z,te,re)=>{z.includes(x.id)||(z.push(x.id),E||re.push(x.id),te(x.id).forEach(oe=>VO(b,oe,E,z,te,re)),E&&re.push(x.id))},KO=(b,x,E,z)=>{const te=Array.isArray(x)?x:[x],re=ce=>z?b.getSuccessors(ce):b.getNeighbors(ce),oe=[],le=[];return te.forEach(ce=>{if(b.hasNode(ce.id))VO(b,ce,E==="post",le,re,oe);else throw new Error(`Graph does not have node: ${ce}`)}),oe},_9=b=>{const x=E=>{const z=b.getChildren(E),te=b.getNode(E);if(z!=null&&z.length&&z.forEach(re=>x(re.id)),te.data.hasOwnProperty("minRank")){te.data.borderLeft=[],te.data.borderRight=[];for(let re=te.data.minRank,oe=te.data.maxRank+1;rex(E.id))},ZO=(b,x,E,z,te,re)=>{const oe={rank:re,borderType:x,width:0,height:0},le=te.data[x][re-1],ce=BS(b,"border",oe,E);te.data[x][re]=ce,b.setParent(ce,z),le&&b.addEdge({id:`e${Math.random()}`,source:le,target:ce,data:{weight:1}})},z9=(b,x)=>{const E=x.toLowerCase();(E==="lr"||E==="rl")&&YO(b)},j9=(b,x)=>{const E=x.toLowerCase();(E==="bt"||E==="rl")&&W9(b),(E==="lr"||E==="rl")&&(U9(b),YO(b))},YO=b=>{b.getAllNodes().forEach(x=>{XO(x)}),b.getAllEdges().forEach(x=>{XO(x)})},XO=b=>{const x=b.data.width;b.data.width=b.data.height,b.data.height=x},W9=b=>{b.getAllNodes().forEach(x=>{G5(x.data)}),b.getAllEdges().forEach(x=>{var E;(E=x.data.points)===null||E===void 0||E.forEach(z=>G5(z)),x.data.hasOwnProperty("y")&&G5(x.data)})},G5=b=>{b!=null&&b.y&&(b.y=-b.y)},U9=b=>{b.getAllNodes().forEach(x=>{H5(x.data)}),b.getAllEdges().forEach(x=>{var E;(E=x.data.points)===null||E===void 0||E.forEach(z=>H5(z)),x.data.hasOwnProperty("x")&&H5(x.data)})},H5=b=>{const x=b.x;b.x=b.y,b.y=x},G9=b=>{const x=BS(b,"root",{},"_root"),E=H9(b);let z=Math.max(...Object.values(E));Math.abs(z)===1/0&&(z=1);const te=z-1,re=2*te+1;b.getAllEdges().forEach(le=>{le.data.minlen*=re});const oe=V9(b)+1;return b.getRoots().forEach(le=>{QO(b,x,re,oe,te,E,le.id)}),{nestingRoot:x,nodeRankFactor:re}},QO=(b,x,E,z,te,re,oe)=>{const le=b.getChildren(oe);if(!(le!=null&&le.length)){oe!==x&&b.addEdge({id:`e${Math.random()}`,source:x,target:oe,data:{weight:0,minlen:E}});return}const ce=GO(b,"_bt"),ge=GO(b,"_bb"),Ae=b.getNode(oe);b.setParent(ce,oe),Ae.data.borderTop=ce,b.setParent(ge,oe),Ae.data.borderBottom=ge,le==null||le.forEach(Me=>{QO(b,x,E,z,te,re,Me.id);const Ue=Me.data.borderTop?Me.data.borderTop:Me.id,Xe=Me.data.borderBottom?Me.data.borderBottom:Me.id,$e=Me.data.borderTop?z:2*z,rt=Ue!==Xe?1:te-re[oe]+1;b.addEdge({id:`e${Math.random()}`,source:ce,target:Ue,data:{minlen:rt,weight:$e,nestingEdge:!0}}),b.addEdge({id:`e${Math.random()}`,source:Xe,target:ge,data:{minlen:rt,weight:$e,nestingEdge:!0}})}),b.getParent(oe)||b.addEdge({id:`e${Math.random()}`,source:x,target:ce,data:{weight:0,minlen:te+re[oe]}})},H9=b=>{const x={},E=(z,te)=>{const re=b.getChildren(z);re==null||re.forEach(oe=>E(oe.id,te+1)),x[z]=te};return b.getRoots().forEach(z=>E(z.id,1)),x},V9=b=>{let x=0;return b.getAllEdges().forEach(E=>{x+=E.data.weight}),x},K9=(b,x)=>{x&&b.removeNode(x),b.getAllEdges().forEach(E=>{E.data.nestingEdge&&b.removeEdge(E.id)})},Z9="edge",JO="edge-label",Y9=(b,x)=>{b.getAllEdges().forEach(E=>X9(b,E,x))},X9=(b,x,E)=>{let z=x.source,te=b.getNode(z).data.rank;const re=x.target,oe=b.getNode(re).data.rank,le=x.data.labelRank;if(oe===te+1)return;b.removeEdge(x.id);let ce,ge,Ae;for(Ae=0,++te;te{x.forEach(E=>{let z=b.getNode(E);const{data:te}=z,re=te.originalEdge;let oe;re&&b.addEdge(re);let le=E;for(;z.data.dummy;)oe=b.getSuccessors(le)[0],b.removeNode(le),re.data.points.push({x:z.data.x,y:z.data.y}),z.data.dummy===JO&&(re.data.x=z.data.x,re.data.y=z.data.y,re.data.width=z.data.width,re.data.height=z.data.height),le=oe.id,z=b.getNode(le)})},J9=(b,x,E)=>{const z={};let te;E==null||E.forEach(re=>{let oe=b.getParent(re),le,ce;for(;oe;){if(le=b.getParent(oe.id),le?(ce=z[le.id],z[le.id]=oe.id):(ce=te,te=oe.id),ce&&ce!==oe.id){x.hasNode(ce)||x.addNode({id:ce,data:{}}),x.hasNode(oe.id)||x.addNode({id:oe.id,data:{}}),x.hasEdge(`e${ce}-${oe.id}`)||x.addEdge({id:`e${ce}-${oe.id}`,source:ce,target:oe.id,data:{}});return}oe=le}})},q9=(b,x,E)=>{const z=$9(b),te=new Zd({tree:[{id:z,children:[],data:{}}]});return b.getAllNodes().forEach(re=>{const oe=b.getParent(re.id);(re.data.rank===x||re.data.minRank<=x&&x<=re.data.maxRank)&&(te.hasNode(re.id)||te.addNode(Object.assign({},re)),oe!=null&&oe.id&&!te.hasNode(oe==null?void 0:oe.id)&&te.addNode(Object.assign({},oe)),te.setParent(re.id,(oe==null?void 0:oe.id)||z),b.getRelatedEdges(re.id,E).forEach(le=>{const ce=le.source===re.id?le.target:le.source;te.hasNode(ce)||te.addNode(Object.assign({},b.getNode(ce)));const ge=te.getRelatedEdges(ce,"out").find(({target:Me})=>Me===re.id),Ae=ge!==void 0?ge.data.weight:0;ge?te.updateEdgeData(ge.id,Object.assign(Object.assign({},ge.data),{weight:le.data.weight+Ae})):te.addEdge({id:le.id,source:ce,target:re.id,data:{weight:le.data.weight+Ae}})}),re.data.hasOwnProperty("minRank")&&te.updateNodeData(re.id,Object.assign(Object.assign({},re.data),{borderLeft:re.data.borderLeft[x],borderRight:re.data.borderRight[x]})))}),te},$9=b=>{let x;for(;b.hasNode(x=`_root${Math.random()}`););return x},ez=(b,x,E)=>{const z=WO(E,E.map((Ae,Me)=>Me)),re=x.map(Ae=>{const Me=b.getRelatedEdges(Ae,"out").map(Ue=>({pos:z[Ue.target]||0,weight:Ue.data.weight}));return Me==null?void 0:Me.sort((Ue,Xe)=>Ue.pos-Xe.pos)}).flat().filter(Ae=>Ae!==void 0);let oe=1;for(;oe{if(Ae){let Me=Ae.pos+oe;ce[Me]+=Ae.weight;let Ue=0;for(;Me>0;)Me%2&&(Ue+=ce[Me+1]),Me=Me-1>>1,ce[Me]+=Ae.weight;ge+=Ae.weight*Ue}}),ge},qO=(b,x)=>{let E=0;for(let z=1;z<(x==null?void 0:x.length);z+=1)E+=ez(b,x[z-1],x[z]);return E},$O=b=>{const x={},E=b.getAllNodes(),z=E.map(ge=>{var Ae;return(Ae=ge.data.rank)!==null&&Ae!==void 0?Ae:-1/0}),te=Math.max(...z),re=[];for(let ge=0;geb.getNode(ge.id).data.rank-b.getNode(Ae.id).data.rank),ce=oe.filter(ge=>b.getNode(ge.id).data.fixorder!==void 0).sort((ge,Ae)=>b.getNode(ge.id).data.fixorder-b.getNode(Ae.id).data.fixorder);return ce==null||ce.forEach(ge=>{isNaN(b.getNode(ge.id).data.rank)||re[b.getNode(ge.id).data.rank].push(ge.id),x[ge.id]=!0}),oe==null||oe.forEach(ge=>b.dfsTree(ge.id,Ae=>{if(x.hasOwnProperty(Ae.id))return!0;x[Ae.id]=!0,isNaN(Ae.data.rank)||re[Ae.data.rank].push(Ae.id)})),re},tz=(b,x)=>x.map(E=>{const z=b.getRelatedEdges(E,"in");if(!(z!=null&&z.length))return{v:E};const te={sum:0,weight:0};return z==null||z.forEach(re=>{const oe=b.getNode(re.source);te.sum+=re.data.weight*oe.data.order,te.weight+=re.data.weight}),{v:E,barycenter:te.sum/te.weight,weight:te.weight}}),nz=(b,x)=>{var E,z,te;const re={};b==null||b.forEach((le,ce)=>{re[le.v]={i:ce,indegree:0,in:[],out:[],vs:[le.v]};const ge=re[le.v];le.barycenter!==void 0&&(ge.barycenter=le.barycenter,ge.weight=le.weight)}),(E=x.getAllEdges())===null||E===void 0||E.forEach(le=>{const ce=re[le.source],ge=re[le.target];ce!==void 0&&ge!==void 0&&(ge.indegree++,ce.out.push(re[le.target]))});const oe=(te=(z=Object.values(re)).filter)===null||te===void 0?void 0:te.call(z,le=>!le.indegree);return rz(oe)},rz=b=>{var x,E;const z=[],te=ce=>ge=>{ge.merged||(ge.barycenter===void 0||ce.barycenter===void 0||ge.barycenter>=ce.barycenter)&&iz(ce,ge)},re=ce=>ge=>{ge.in.push(ce),--ge.indegree===0&&b.push(ge)};for(;b!=null&&b.length;){const ce=b.pop();z.push(ce),(x=ce.in.reverse())===null||x===void 0||x.forEach(ge=>te(ce)(ge)),(E=ce.out)===null||E===void 0||E.forEach(ge=>re(ce)(ge))}const oe=z.filter(ce=>!ce.merged),le=["vs","i","barycenter","weight"];return oe.map(ce=>{const ge={};return le==null||le.forEach(Ae=>{ce[Ae]!==void 0&&(ge[Ae]=ce[Ae])}),ge})},iz=(b,x)=>{var E;let z=0,te=0;b.weight&&(z+=b.barycenter*b.weight,te+=b.weight),x.weight&&(z+=x.barycenter*x.weight,te+=x.weight),b.vs=(E=x.vs)===null||E===void 0?void 0:E.concat(b.vs),b.barycenter=z/te,b.weight=te,b.i=Math.min(x.i,b.i),x.merged=!0};var oz=nz;const az=(b,x,E,z)=>{const te=F9(b,Ue=>{const Xe=Ue.hasOwnProperty("fixorder")&&!isNaN(Ue.fixorder);return z?!Xe&&Ue.hasOwnProperty("barycenter"):Xe||Ue.hasOwnProperty("barycenter")}),re=te.lhs,oe=te.rhs.sort((Ue,Xe)=>-Ue.i- -Xe.i),le=[];let ce=0,ge=0,Ae=0;re==null||re.sort(sz(!!x,!!E)),Ae=eN(le,oe,Ae),re==null||re.forEach(Ue=>{var Xe;Ae+=(Xe=Ue.vs)===null||Xe===void 0?void 0:Xe.length,le.push(Ue.vs),ce+=Ue.barycenter*Ue.weight,ge+=Ue.weight,Ae=eN(le,oe,Ae)});const Me={vs:le.flat()};return ge&&(Me.barycenter=ce/ge,Me.weight=ge),Me},eN=(b,x,E)=>{let z=E,te;for(;x.length&&(te=x[x.length-1]).i<=z;)x.pop(),b==null||b.push(te.vs),z++;return z},sz=(b,x)=>(E,z)=>{if(E.fixorder!==void 0&&z.fixorder!==void 0)return E.fixorder-z.fixorder;if(E.barycenterz.barycenter)return 1;if(x&&E.order!==void 0&&z.order!==void 0){if(E.orderz.order)return 1}return b?z.i-E.i:E.i-z.i},tN=(b,x,E,z,te,re)=>{var oe,le,ce,ge;let Ae=b.getChildren(x).map(yt=>yt.id);const Me=b.getNode(x),Ue=Me?Me.data.borderLeft:void 0,Xe=Me?Me.data.borderRight:void 0,$e={};Ue&&(Ae=Ae==null?void 0:Ae.filter(yt=>yt!==Ue&&yt!==Xe));const rt=tz(b,Ae||[]);rt==null||rt.forEach(yt=>{var Ct;if(!((Ct=b.getChildren(yt.v))===null||Ct===void 0)&&Ct.length){const zt=tN(b,yt.v,E,z,re);$e[yt.v]=zt,zt.hasOwnProperty("barycenter")&&uz(yt,zt)}});const ot=oz(rt,E);lz(ot,$e),(oe=ot.filter(yt=>yt.vs.length>0))===null||oe===void 0||oe.forEach(yt=>{const Ct=b.getNode(yt.vs[0]);Ct&&(yt.fixorder=Ct.data.fixorder,yt.order=Ct.data.order)});const pt=az(ot,z,te,re);if(Ue&&(pt.vs=[Ue,pt.vs,Xe].flat(),!((le=b.getPredecessors(Ue))===null||le===void 0)&&le.length)){const yt=b.getNode(((ce=b.getPredecessors(Ue))===null||ce===void 0?void 0:ce[0].id)||""),Ct=b.getNode(((ge=b.getPredecessors(Xe))===null||ge===void 0?void 0:ge[0].id)||"");pt.hasOwnProperty("barycenter")||(pt.barycenter=0,pt.weight=0),pt.barycenter=(pt.barycenter*pt.weight+yt.data.order+Ct.data.order)/(pt.weight+2),pt.weight+=2}return pt},lz=(b,x)=>{b==null||b.forEach(E=>{var z;const te=(z=E.vs)===null||z===void 0?void 0:z.map(re=>x[re]?x[re].vs:re);E.vs=te.flat()})},uz=(b,x)=>{b.barycenter!==void 0?(b.barycenter=(b.barycenter*b.weight+x.barycenter*x.weight)/(b.weight+x.weight),b.weight+=x.weight):(b.barycenter=x.barycenter,b.weight=x.weight)},cz=(b,x)=>{const E=HO(b),z=[],te=[];for(let Ae=1;Ae-1;Ae--)te.push(Ae);const re=nN(b,z,"in"),oe=nN(b,te,"out");let le=$O(b);V5(b,le);let ce=Number.POSITIVE_INFINITY,ge;for(let Ae=0,Me=0;Me<4;++Ae,++Me){rN(Ae%2?re:oe,Ae%4>=2,!1,x),le=QC(b);const Ue=qO(b,le);Ue=2,!0,x),le=QC(b);const Ue=qO(b,le);Uex.map(z=>q9(b,z,E)),rN=(b,x,E,z)=>{const te=new Zd;b==null||b.forEach(re=>{var oe;const le=re.getRoots()[0].id,ce=tN(re,le,te,x,E,z);for(let ge=0;ge<((oe=ce.vs)===null||oe===void 0?void 0:oe.length);ge++){const Ae=re.getNode(ce.vs[ge]);Ae&&(Ae.data.order=ge)}J9(re,te,ce.vs)})},V5=(b,x)=>{x==null||x.forEach(E=>{E==null||E.forEach((z,te)=>{b.getNode(z).data.order=te})})},hz=(b,x)=>{const z=b.getAllNodes().filter(oe=>{var le;return!(!((le=b.getChildren(oe.id))===null||le===void 0)&&le.length)}).map(oe=>oe.data.rank),te=Math.max(...z),re=[];for(let oe=0;oe{const le=b.getNode(oe);!le||le.data.dummy||isNaN(le.data.rank)||(le.data.fixorder=re[le.data.rank].length,re[le.data.rank].push(oe))})},dz=b=>{const x={};let E=0;const z=te=>{const re=E;b.getChildren(te).forEach(oe=>z(oe.id)),x[te]={low:re,lim:E++}};return b.getRoots().forEach(te=>z(te.id)),x},fz=(b,x,E,z)=>{var te,re;const oe=[],le=[],ce=Math.min(x[E].low,x[z].low),ge=Math.max(x[E].lim,x[z].lim);let Ae,Me;Ae=E;do Ae=(te=b.getParent(Ae))===null||te===void 0?void 0:te.id,oe.push(Ae);while(Ae&&(x[Ae].low>ce||ge>x[Ae].lim));for(Me=Ae,Ae=z;Ae&&Ae!==Me;)le.push(Ae),Ae=(re=b.getParent(Ae))===null||re===void 0?void 0:re.id;return{lca:Me,path:oe.concat(le.reverse())}},gz=(b,x)=>{const E=dz(b);x.forEach(z=>{var te,re;let oe=z,le=b.getNode(oe);const ce=le.data.originalEdge;if(!ce)return;const ge=fz(b,E,ce.source,ce.target),Ae=ge.path,Me=ge.lca;let Ue=0,Xe=Ae[Ue],$e=!0;for(;oe!==ce.target;){if(le=b.getNode(oe),$e){for(;Xe!==Me&&((te=b.getNode(Xe))===null||te===void 0?void 0:te.data.maxRank){const E={},z=(te,re)=>{let oe=0,le=0;const ce=te.length,ge=re==null?void 0:re[(re==null?void 0:re.length)-1];return re==null||re.forEach((Ae,Me)=>{var Ue;const Xe=pz(b,Ae),$e=Xe?b.getNode(Xe.id).data.order:ce;(Xe||Ae===ge)&&((Ue=re.slice(le,Me+1))===null||Ue===void 0||Ue.forEach(rt=>{var ot;(ot=b.getPredecessors(rt))===null||ot===void 0||ot.forEach(pt=>{var yt;const Ct=b.getNode(pt.id),zt=Ct.data.order;(zt{const E={};function z(le,ce,ge,Ae,Me){var Ue,Xe;let $e;for(let rt=ce;rt{const pt=b.getNode(ot.id);pt.data.dummy&&(pt.data.orderMe)&&aN(E,ot.id,$e)}))}function te(le){return JSON.stringify(le.slice(1))}function re(le,ce){const ge=te(le);ce.get(ge)||(z(...le),ce.set(ge,!0))}const oe=(le,ce)=>{let ge=-1,Ae,Me=0;const Ue=new Map;return ce==null||ce.forEach((Xe,$e)=>{var rt;if(((rt=b.getNode(Xe))===null||rt===void 0?void 0:rt.data.dummy)==="border"){const ot=b.getPredecessors(Xe)||[];ot.length&&(Ae=b.getNode(ot[0].id).data.order,re([ce,Me,$e,ge,Ae],Ue),Me=$e,ge=Ae)}re([ce,Me,ce.length,Ae,le.length],Ue)}),ce};return x!=null&&x.length&&x.reduce(oe),E},pz=(b,x)=>{var E,z;if(!((E=b.getNode(x))===null||E===void 0)&&E.data.dummy)return(z=b.getPredecessors(x))===null||z===void 0?void 0:z.find(te=>b.getNode(te.id).data.dummy)},aN=(b,x,E)=>{let z=x,te=E;if(z>te){const oe=z;z=te,te=oe}let re=b[z];re||(b[z]=re={}),re[te]=!0},vz=(b,x,E)=>{let z=x,te=E;if(z>te){const re=x;z=te,te=re}return!!b[z]},sN=(b,x,E,z)=>{const te={},re={},oe={};return x==null||x.forEach(le=>{le==null||le.forEach((ce,ge)=>{te[ce]=ce,re[ce]=ce,oe[ce]=ge})}),x==null||x.forEach(le=>{let ce=-1;le==null||le.forEach(ge=>{let Ae=z(ge).map(Me=>Me.id);if(Ae.length){Ae=Ae.sort((Ue,Xe)=>oe[Ue]-oe[Xe]);const Me=(Ae.length-1)/2;for(let Ue=Math.floor(Me),Xe=Math.ceil(Me);Ue<=Xe;++Ue){const $e=Ae[Ue];re[ge]===ge&&ce{var le;const ce={},ge=mz(b,x,E,te,re,oe),Ae=oe?"borderLeft":"borderRight",Me=($e,rt)=>{let ot=ge.getAllNodes(),pt=ot.pop();const yt={};for(;pt;)yt[pt.id]?$e(pt.id):(yt[pt.id]=!0,ot.push(pt),ot=ot.concat(rt(pt.id))),pt=ot.pop()},Ue=$e=>{ce[$e]=(ge.getRelatedEdges($e,"in")||[]).reduce((rt,ot)=>Math.max(rt,(ce[ot.source]||0)+ot.data.weight),0)},Xe=$e=>{const rt=(ge.getRelatedEdges($e,"out")||[]).reduce((pt,yt)=>Math.min(pt,(ce[yt.target]||0)-yt.data.weight),Number.POSITIVE_INFINITY),ot=b.getNode($e);rt!==Number.POSITIVE_INFINITY&&ot.data.borderType!==Ae&&(ce[$e]=Math.max(ce[$e],rt))};return Me(Ue,ge.getPredecessors.bind(ge)),Me(Xe,ge.getSuccessors.bind(ge)),(le=Object.values(z))===null||le===void 0||le.forEach($e=>{ce[$e]=ce[E[$e]]}),ce},mz=(b,x,E,z,te,re)=>{const oe=new Zd,le=yz(z,te,re);return x==null||x.forEach(ce=>{let ge;ce==null||ce.forEach(Ae=>{const Me=E[Ae];if(oe.hasNode(Me)||oe.addNode({id:Me,data:{}}),ge){const Ue=E[ge],Xe=oe.getRelatedEdges(Ue,"out").find($e=>$e.target===Me);Xe?oe.updateEdgeData(Xe.id,Object.assign(Object.assign({},Xe.data),{weight:Math.max(le(b,Ae,ge),Xe.data.weight||0)})):oe.addEdge({id:`e${Math.random()}`,source:Ue,target:Me,data:{weight:Math.max(le(b,Ae,ge),0)}})}ge=Ae})}),oe},uN=(b,x)=>U5(Object.values(x),E=>{var z;let te=Number.NEGATIVE_INFINITY,re=Number.POSITIVE_INFINITY;return(z=Object.keys(E))===null||z===void 0||z.forEach(oe=>{const le=E[oe],ce=xz(b,oe)/2;te=Math.max(le+ce,te),re=Math.min(le-ce,re)}),te-re});function cN(b,x){const E=Object.values(x),z=Math.min(...E),te=Math.max(...E);["u","d"].forEach(re=>{["l","r"].forEach(oe=>{const le=re+oe,ce=b[le];let ge;if(ce===x)return;const Ae=Object.values(ce);ge=oe==="l"?z-Math.min(...Ae):te-Math.max(...Ae),ge&&(b[le]={},Object.keys(ce).forEach(Me=>{b[le][Me]=ce[Me]+ge}))})})}const hN=(b,x)=>{const E={};return Object.keys(b.ul).forEach(z=>{if(x)E[z]=b[x.toLowerCase()][z];else{const te=Object.values(b).map(re=>re[z]);E[z]=(te[0]+te[1])/2}}),E},QJ=(b,x)=>{const{align:E,nodesep:z=0,edgesep:te=0}=x||{},re=buildLayerMatrix(b),oe=Object.assign(iN(b,re),oN(b,re)),le={};let ce;["u","d"].forEach(Ae=>{ce=Ae==="u"?re:Object.values(re).reverse(),["l","r"].forEach(Me=>{Me==="r"&&(ce=ce.map(rt=>Object.values(rt).reverse()));const Ue=(Ae==="u"?b.getPredecessors:b.getSuccessors).bind(b),Xe=sN(b,ce,oe,Ue),$e=lN(b,ce,Xe.root,Xe.align,z,te,Me==="r");Me==="r"&&Object.keys($e).forEach(rt=>{$e[rt]=-$e[rt]}),le[Ae+Me]=$e})});const ge=uN(b,le);return cN(le,ge),hN(le,E)},yz=(b,x,E)=>(z,te,re)=>{const oe=z.getNode(te),le=z.getNode(re);let ce=0,ge=0;if(ce+=oe.data.width/2,oe.data.hasOwnProperty("labelpos"))switch((oe.data.labelpos||"").toLowerCase()){case"l":ge=-oe.data.width/2;break;case"r":ge=oe.data.width/2;break}if(ge&&(ce+=E?ge:-ge),ge=0,ce+=(oe.data.dummy?x:b)/2,ce+=(le.data.dummy?x:b)/2,ce+=le.data.width/2,le.data.labelpos)switch((le.data.labelpos||"").toLowerCase()){case"l":ge=le.data.width/2;break;case"r":ge=-le.data.width/2;break}return ge&&(ce+=E?ge:-ge),ge=0,ce},xz=(b,x)=>b.getNode(x).data.width||0,Ez=(b,x)=>{const{ranksep:E=0}=x||{},z=QC(b);let te=0;z==null||z.forEach(re=>{const oe=re.map(ce=>b.getNode(ce).data.height),le=Math.max(...oe,0);re==null||re.forEach(ce=>{b.getNode(ce).data.y=te+le/2}),te+=le+E})},Az=(b,x)=>{const{align:E,nodesep:z=0,edgesep:te=0}=x||{},re=QC(b),oe=Object.assign(iN(b,re),oN(b,re)),le={};let ce=[];["u","d"].forEach(Ae=>{ce=Ae==="u"?re:Object.values(re).reverse(),["l","r"].forEach(Me=>{Me==="r"&&(ce=ce.map(rt=>Object.values(rt).reverse()));const Ue=(Ae==="u"?b.getPredecessors:b.getSuccessors).bind(b),Xe=sN(b,ce,oe,Ue),$e=lN(b,ce,Xe.root,Xe.align,z,te,Me==="r");Me==="r"&&Object.keys($e).forEach(rt=>$e[rt]=-$e[rt]),le[Ae+Me]=$e})});const ge=uN(b,le);return ge&&cN(le,ge),hN(le,E)},Sz=(b,x)=>{var E;const z=jO(b);Ez(z,x);const te=Az(z,x);(E=Object.keys(te))===null||E===void 0||E.forEach(re=>{z.getNode(re).data.x=te[re]})},dN=b=>{const x={},E=z=>{var te;const re=b.getNode(z);if(!re)return 0;if(x[z])return re.data.rank;x[z]=!0;let oe;return(te=b.getRelatedEdges(z,"out"))===null||te===void 0||te.forEach(le=>{const ce=E(le.target),ge=le.data.minlen,Ae=ce-ge;Ae&&(oe===void 0||Aeb.getRelatedEdges(z.id,"in").length===0).forEach(z=>E(z.id))},wz=b=>{const x={};let E;const z=oe=>{var le;const ce=b.getNode(oe);if(!ce)return 0;if(x[oe])return ce.data.rank;x[oe]=!0;let ge;return(le=b.getRelatedEdges(oe,"out"))===null||le===void 0||le.forEach(Ae=>{const Me=z(Ae.target),Ue=Ae.data.minlen,Xe=Me-Ue;Xe&&(ge===void 0||Xeb.getRelatedEdges(oe.id,"in").length===0).forEach(oe=>{oe&&z(oe.id)}),E===void 0&&(E=0);const te={},re=(oe,le)=>{var ce;const ge=b.getNode(oe),Ae=isNaN(ge.data.layer)?le:ge.data.layer;(ge.data.rank===void 0||ge.data.rank{re(Me.target,Ae+Me.data.minlen)}))};b.getAllNodes().forEach(oe=>{const le=oe.data;le&&(isNaN(le.layer)?le.rank-=E:re(oe.id,le.layer))})},Ax=(b,x)=>b.getNode(x.target).data.rank-b.getNode(x.source).data.rank-x.data.minlen,Cz=b=>{const x=new Zd({tree:[]}),E=b.getAllNodes()[0],z=b.getAllNodes().length;x.addNode(E);let te,re;for(;bz(x,b){const E=z=>{x.getRelatedEdges(z,"both").forEach(te=>{const re=te.source,oe=z===re?te.target:re;!b.hasNode(oe)&&!Ax(x,te)&&(b.addNode({id:oe,data:{}}),b.addEdge({id:te.id,source:z,target:oe,data:{}}),E(oe))})};return b.getAllNodes().forEach(z=>E(z.id)),b.getAllNodes().length},Pz=b=>{const x=new Zd({tree:[]}),E=b.getAllNodes()[0],z=b.getAllNodes().length;x.addNode(E);let te,re;for(;Mz(x,b){const E=z=>{var te;(te=x.getRelatedEdges(z,"both"))===null||te===void 0||te.forEach(re=>{const oe=re.source,le=z===oe?re.target:oe;!b.hasNode(le)&&(x.getNode(le).data.layer!==void 0||!Ax(x,re))&&(b.addNode({id:le,data:{}}),b.addEdge({id:re.id,source:z,target:le,data:{}}),E(le))})};return b.getAllNodes().forEach(z=>E(z.id)),b.getAllNodes().length},fN=(b,x)=>U5(x.getAllEdges(),E=>b.hasNode(E.source)!==b.hasNode(E.target)?Ax(x,E):1/0),gN=(b,x,E)=>{b.getAllNodes().forEach(z=>{const te=x.getNode(z.id);te.data.rank||(te.data.rank=0),te.data.rank+=E})},Lz=b=>{const x=B9(b);dN(x);const E=Cz(x);vN(E),pN(E,x);let z,te;for(;z=Iz(E);)te=Oz(E,x,z),Nz(E,x,z,te)},pN=(b,x)=>{let E=KO(b,b.getAllNodes(),"post",!1);E=E.slice(0,(E==null?void 0:E.length)-1),E.forEach(z=>{Tz(b,x,z)})},Tz=(b,x,E)=>{const te=b.getNode(E).data.parent,re=b.getRelatedEdges(E,"both").find(oe=>oe.target===te||oe.source===te);re.data.cutvalue=Dz(b,x,E)},Dz=(b,x,E)=>{const te=b.getNode(E).data.parent;let re=!0,oe=x.getRelatedEdges(E,"out").find(ce=>ce.target===te),le=0;return oe||(re=!1,oe=x.getRelatedEdges(te,"out").find(ce=>ce.target===E)),le=oe.data.weight,x.getRelatedEdges(E,"both").forEach(ce=>{const ge=ce.source===E,Ae=ge?ce.target:ce.source;if(Ae!==te){const Me=ge===re,Ue=ce.data.weight;if(le+=Me?Ue:-Ue,Rz(b,E,Ae)){const Xe=b.getRelatedEdges(E,"both").find($e=>$e.source===Ae||$e.target===Ae).data.cutvalue;le+=Me?-Xe:Xe}}}),le},vN=(b,x=b.getAllNodes()[0].id)=>{mN(b,{},1,x)},mN=(b,x,E,z,te)=>{var re;const oe=E;let le=E;const ce=b.getNode(z);return x[z]=!0,(re=b.getNeighbors(z))===null||re===void 0||re.forEach(ge=>{x[ge.id]||(le=mN(b,x,le,ge.id,z))}),ce.data.low=oe,ce.data.lim=le++,te?ce.data.parent=te:delete ce.data.parent,le},Iz=b=>b.getAllEdges().find(x=>x.data.cutvalue<0),Oz=(b,x,E)=>{let z=E.source,te=E.target;x.getRelatedEdges(z,"out").find(Ae=>Ae.target===te)||(z=E.target,te=E.source);const re=b.getNode(z),oe=b.getNode(te);let le=re,ce=!1;re.data.lim>oe.data.lim&&(le=oe,ce=!0);const ge=x.getAllEdges().filter(Ae=>ce===yN(b.getNode(Ae.source),le)&&ce!==yN(b.getNode(Ae.target),le));return U5(ge,Ae=>Ax(x,Ae))},Nz=(b,x,E,z)=>{const te=b.getRelatedEdges(E.source,"both").find(re=>re.source===E.target||re.target===E.target);te&&b.removeEdge(te.id),b.addEdge({id:`e${Math.random()}`,source:z.source,target:z.target,data:{}}),vN(b),pN(b,x),Bz(b,x)},Bz=(b,x)=>{const E=b.getAllNodes().find(te=>!te.data.parent);let z=KO(b,E,"pre",!1);z=z.slice(1),z.forEach(te=>{const re=b.getNode(te).data.parent;let oe=x.getRelatedEdges(te,"out").find(ce=>ce.target===re),le=!1;!oe&&x.hasNode(re)&&(oe=x.getRelatedEdges(re,"out").find(ce=>ce.target===te),le=!0),x.getNode(te).data.rank=(x.hasNode(re)&&x.getNode(re).data.rank||0)+(le?oe==null?void 0:oe.data.minlen:-(oe==null?void 0:oe.data.minlen))})},Rz=(b,x,E)=>b.getRelatedEdges(x,"both").find(z=>z.source===E||z.target===E),yN=(b,x)=>x.data.low<=b.data.lim&&b.data.lim<=x.data.lim,kz=(b,x)=>{switch(x){case"network-simplex":_z(b);break;case"tight-tree":xN(b);break;case"longest-path":Fz(b);break;default:xN(b)}},Fz=dN,xN=b=>{wz(b),Pz(b)},_z=b=>{Lz(b)},zz=(b,x)=>{const{edgeLabelSpace:E,keepNodeOrder:z,prevGraph:te,rankdir:re,ranksep:oe}=x;!z&&te&&Wz(b,te);const le=Zz(b);E&&(x.ranksep=Yz(le,{rankdir:re,ranksep:oe}));let ce;try{ce=jz(le,x)}catch(ge){if(ge.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: `,ge);return}throw ge}return Uz(b,le),ce},jz=(b,x)=>{const{acyclicer:E,ranker:z,rankdir:te="tb",nodeOrder:re,keepNodeOrder:oe,align:le,nodesep:ce=50,edgesep:ge=20,ranksep:Ae=50}=x;rj(b),D9(b,E);const{nestingRoot:Me,nodeRankFactor:Ue}=G9(b);kz(jO(b),z),Xz(b),k9(b,Ue),K9(b,Me),R9(b),Qz(b),Jz(b);const Xe=[];Y9(b,Xe),gz(b,Xe),_9(b),oe&&hz(b,re),cz(b,oe),ij(b),z9(b,te),Sz(b,{align:le,nodesep:ce,edgesep:ge,ranksep:Ae}),oj(b),nj(b),Q9(b,Xe),ej(b),j9(b,te);const{width:$e,height:rt}=qz(b);return $z(b),tj(b),O9(b),{width:$e,height:rt}},Wz=(b,x)=>{b.getAllNodes().forEach(E=>{const z=b.getNode(E.id);if(x.hasNode(E.id)){const te=x.getNode(E.id);z.data.fixorder=te.data._order,delete te.data._order}else delete z.data.fixorder})},Uz=(b,x)=>{b.getAllNodes().forEach(E=>{var z;const te=b.getNode(E.id);if(te){const re=x.getNode(E.id);te.data.x=re.data.x,te.data.y=re.data.y,te.data._order=re.data.order,te.data._rank=re.data.rank,!((z=x.getChildren(E.id))===null||z===void 0)&&z.length&&(te.data.width=re.data.width,te.data.height=re.data.height)}}),b.getAllEdges().forEach(E=>{const z=b.getEdge(E.id),te=x.getEdge(E.id);z.data.points=te?te.data.points:[],te&&te.data.hasOwnProperty("x")&&(z.data.x=te.data.x,z.data.y=te.data.y)})},Gz=["width","height","layer","fixorder"],Hz={width:0,height:0},Vz=["minlen","weight","width","height","labeloffset"],Kz={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},K5=["labelpos"],Zz=b=>{const x=new Zd({tree:[]});return b.getAllNodes().forEach(E=>{const z=AN(b.getNode(E.id).data),te=Object.assign(Object.assign({},Hz),z),re=EN(te,Gz);x.hasNode(E.id)||x.addNode({id:E.id,data:Object.assign({},re)});const oe=b.hasTreeStructure("combo")?b.getParent(E.id,"combo"):b.getParent(E.id);fl(oe)||(x.hasNode(oe.id)||x.addNode(Object.assign({},oe)),x.setParent(E.id,oe.id))}),b.getAllEdges().forEach(E=>{const z=AN(b.getEdge(E.id).data),te={};K5==null||K5.forEach(re=>{z[re]!==void 0&&(te[re]=z[re])}),x.addEdge({id:E.id,source:E.source,target:E.target,data:Object.assign({},Kz,EN(z,Vz),te)})}),x},Yz=(b,x)=>{const{ranksep:E=0,rankdir:z}=x;return b.getAllNodes().forEach(te=>{isNaN(te.data.layer)||te.data.layer||(te.data.layer=0)}),b.getAllEdges().forEach(te=>{var re;te.data.minlen*=2,((re=te.data.labelpos)===null||re===void 0?void 0:re.toLowerCase())!=="c"&&(z==="TB"||z==="BT"?te.data.width+=te.data.labeloffset:te.data.height+=te.data.labeloffset)}),E/2},Xz=b=>{b.getAllEdges().forEach(x=>{if(x.data.width&&x.data.height){const E=b.getNode(x.source),z=b.getNode(x.target),te={e:x,rank:(z.data.rank-E.data.rank)/2+E.data.rank};BS(b,"edge-proxy",te,"_ep")}})},Qz=b=>{let x=0;return b.getAllNodes().forEach(E=>{var z,te;E.data.borderTop&&(E.data.minRank=(z=b.getNode(E.data.borderTop))===null||z===void 0?void 0:z.data.rank,E.data.maxRank=(te=b.getNode(E.data.borderBottom))===null||te===void 0?void 0:te.data.rank,x=Math.max(x,E.data.maxRank||-1/0))}),x},Jz=b=>{b.getAllNodes().forEach(x=>{x.data.dummy==="edge-proxy"&&(b.getEdge(x.data.e.id).data.labelRank=x.data.rank,b.removeNode(x.id))})},qz=(b,x)=>{let E,z=0,te,re=0;const{marginx:oe=0,marginy:le=0}=x||{},ce=ge=>{if(!ge.data)return;const Ae=ge.data.x,Me=ge.data.y,Ue=ge.data.width,Xe=ge.data.height;!isNaN(Ae)&&!isNaN(Ue)&&(E===void 0&&(E=Ae-Ue/2),E=Math.min(E,Ae-Ue/2),z=Math.max(z,Ae+Ue/2)),!isNaN(Me)&&!isNaN(Xe)&&(te===void 0&&(te=Me-Xe/2),te=Math.min(te,Me-Xe/2),re=Math.max(re,Me+Xe/2))};return b.getAllNodes().forEach(ge=>{ce(ge)}),b.getAllEdges().forEach(ge=>{ge!=null&&ge.data.hasOwnProperty("x")&&ce(ge)}),E-=oe,te-=le,b.getAllNodes().forEach(ge=>{ge.data.x-=E,ge.data.y-=te}),b.getAllEdges().forEach(ge=>{var Ae;(Ae=ge.data.points)===null||Ae===void 0||Ae.forEach(Me=>{Me.x-=E,Me.y-=te}),ge.data.hasOwnProperty("x")&&(ge.data.x-=E),ge.data.hasOwnProperty("y")&&(ge.data.y-=te)}),{width:z-E+oe,height:re-te+le}},$z=b=>{b.getAllEdges().forEach(x=>{const E=b.getNode(x.source),z=b.getNode(x.target);let te,re;x.data.points?(te=x.data.points[0],re=x.data.points[x.data.points.length-1]):(x.data.points=[],te={x:z.data.x,y:z.data.y},re={x:E.data.x,y:E.data.y}),x.data.points.unshift(UO(E.data,te)),x.data.points.push(UO(z.data,re))})},ej=b=>{b.getAllEdges().forEach(x=>{if(x.data.hasOwnProperty("x"))switch((x.data.labelpos==="l"||x.data.labelpos==="r")&&(x.data.width-=x.data.labeloffset),x.data.labelpos){case"l":x.data.x-=x.data.width/2+x.data.labeloffset;break;case"r":x.data.x+=x.data.width/2+x.data.labeloffset;break}})},tj=b=>{b.getAllEdges().forEach(x=>{var E;x.data.reversed&&((E=x.data.points)===null||E===void 0||E.reverse())})},nj=b=>{b.getAllNodes().forEach(x=>{var E,z,te;if(!((E=b.getChildren(x.id))===null||E===void 0)&&E.length){const re=b.getNode(x.id),oe=b.getNode(re.data.borderTop),le=b.getNode(re.data.borderBottom),ce=b.getNode(re.data.borderLeft[((z=re.data.borderLeft)===null||z===void 0?void 0:z.length)-1]),ge=b.getNode(re.data.borderRight[((te=re.data.borderRight)===null||te===void 0?void 0:te.length)-1]);re.data.width=Math.abs((ge==null?void 0:ge.data.x)-(ce==null?void 0:ce.data.x))||10,re.data.height=Math.abs((le==null?void 0:le.data.y)-(oe==null?void 0:oe.data.y))||10,re.data.x=((ce==null?void 0:ce.data.x)||0)+re.data.width/2,re.data.y=((oe==null?void 0:oe.data.y)||0)+re.data.height/2}}),b.getAllNodes().forEach(x=>{x.data.dummy==="border"&&b.removeNode(x.id)})},rj=b=>{b.getAllEdges().forEach(x=>{if(x.source===x.target){const E=b.getNode(x.source);E.data.selfEdges||(E.data.selfEdges=[]),E.data.selfEdges.push(x),b.removeEdge(x.id)}})},ij=b=>{const x=QC(b);x==null||x.forEach(E=>{let z=0;E==null||E.forEach((te,re)=>{var oe;const le=b.getNode(te);le.data.order=re+z,(oe=le.data.selfEdges)===null||oe===void 0||oe.forEach(ce=>{BS(b,"selfedge",{width:ce.data.width,height:ce.data.height,rank:le.data.rank,order:re+ ++z,e:ce},"_se")}),delete le.data.selfEdges})})},oj=b=>{b.getAllNodes().forEach(x=>{const E=b.getNode(x.id);if(E.data.dummy==="selfedge"){const z=b.getNode(E.data.e.source),te=z.data.x+z.data.width/2,re=z.data.y,oe=E.data.x-te,le=z.data.height/2;b.hasEdge(E.data.e.id)?b.updateEdgeData(E.data.e.id,E.data.e.data):b.addEdge({id:E.data.e.id,source:E.data.e.source,target:E.data.e.target,data:E.data.e.data}),b.removeNode(x.id),E.data.e.data.points=[{x:te+2*oe/3,y:re-le},{x:te+5*oe/6,y:re-le},{y:re,x:te+oe},{x:te+5*oe/6,y:re+le},{x:te+2*oe/3,y:re+le}],E.data.e.data.x=E.data.x,E.data.e.data.y=E.data.y}})},EN=(b,x)=>{const E={};return x==null||x.forEach(z=>{b[z]!==void 0&&(E[z]=+b[z])}),E},AN=(b={})=>{const x={};return Object.keys(b).forEach(E=>{x[E.toLowerCase()]=b[E]}),x};function JC(b){if(!b)return[0,0,0];if(os(b))return[b,b,b];if(b.length===0)return[0,0,0];const[x,E=x,z=x]=b;return[x,E,z]}function QE(b,x){let E;return _s(x)?E=x:os(x)?E=()=>x:E=()=>b,E}function Z5(b,x,E=!0){return!x&&x!==0?z=>{const{size:te}=z.data||{};return te?Array.isArray(te)?E?Math.max(...te)||b:te:Sh(te)&&te.width&&te.height?E?Math.max(te.width,te.height)||b:[te.width,te.height]:te:b}:_s(x)?x:os(x)?()=>x:Array.isArray(x)?()=>E?Math.max(...x)||b:x:Sh(x)&&x.width&&x.height?()=>E?Math.max(x.width,x.height)||b:[x.width,x.height]:()=>b}const Y5=(b,x,E=10)=>{let z;const te=typeof x=="function"?x:()=>x||0;return b?Array.isArray(b)?z=oe=>b:_s(b)?z=b:z=oe=>b:z=oe=>{var le,ce,ge;if(!((le=oe.data)===null||le===void 0)&&le.bboxSize)return(ce=oe.data)===null||ce===void 0?void 0:ce.bboxSize;if(!((ge=oe.data)===null||ge===void 0)&&ge.size){const Ae=oe.data.size;return Array.isArray(Ae)?Ae:Sh(Ae)?[Ae.width,Ae.height]:Ae}return E},oe=>{const le=z(oe),ce=te(oe);return Math.max(...JC(le))+ce}},X5=b=>{if(b===null)return b;if(b instanceof Date)return new Date(b.getTime());if(b instanceof Array){const x=[];return b.forEach(E=>{x.push(E)}),x.map(E=>X5(E))}if(typeof b=="object"){const x={};return Object.keys(b).forEach(E=>{x[E]=X5(b[E])}),x}return b},L0=(b,x)=>{const E=X5(b);return E.data=E.data||{},x&&(os(E.data.x)||(E.data.x=Math.random()*x[0]),os(E.data.y)||(E.data.y=Math.random()*x[1])),E},aj={rankdir:"TB",nodesep:50,ranksep:50,edgeLabelSpace:!0,ranker:"tight-tree",controlPoints:!1,radial:!1,focusNode:null};class sj{constructor(x={}){this.options=x,this.id="antv-dagre",this.options=Object.assign(Object.assign({},aj),x)}execute(x,E){return(0,wn.mG)(this,void 0,void 0,function*(){return this.genericDagreLayout(!1,x,E)})}assign(x,E){return(0,wn.mG)(this,void 0,void 0,function*(){yield this.genericDagreLayout(!0,x,E)})}genericDagreLayout(x,E,z){return(0,wn.mG)(this,void 0,void 0,function*(){const te=Object.assign(Object.assign({},this.options),z),{nodeSize:re,align:oe,rankdir:le="TB",ranksep:ce,nodesep:ge,ranksepFunc:Ae,nodesepFunc:Me,edgeLabelSpace:Ue,ranker:Xe,nodeOrder:$e,begin:rt,controlPoints:ot,radial:pt,sortByCombo:yt,preset:Ct}=te,zt=new Zd({tree:[]}),Wt=QE(ce||50,Ae),Ht=QE(ge||50,Me);let Qt=Ht,Gt=Wt;(le==="LR"||le==="RL")&&(Qt=Wt,Gt=Ht);const vn=Z5(10,re,!1),Sn=E.getAllNodes(),kn=E.getAllEdges();Sn.forEach(Sr=>{const Ir=JC(vn(Sr)),si=Gt(Sr),Cr=Qt(Sr),wi=Ir[0]+2*Cr,Mo=Ir[1]+2*si,Po=Sr.data.layer;os(Po)?zt.addNode({id:Sr.id,data:{width:wi,height:Mo,layer:Po}}):zt.addNode({id:Sr.id,data:{width:wi,height:Mo}})}),yt&&(zt.attachTreeStructure("combo"),Sn.forEach(Sr=>{const{parentId:Ir}=Sr.data;Ir!==void 0&&zt.hasNode(Ir)&&zt.setParent(Sr.id,Ir,"combo")})),kn.forEach(Sr=>{zt.addEdge({id:Sr.id,source:Sr.source,target:Sr.target,data:{weight:Sr.data.weight||1}})});let Kn;Ct!=null&&Ct.length&&(Kn=new Zd({nodes:Ct})),zz(zt,{prevGraph:Kn,edgeLabelSpace:Ue,keepNodeOrder:!!$e,nodeOrder:$e||[],acyclicer:"greedy",ranker:Xe,rankdir:le,nodesep:ge,align:oe});const vr=[0,0];if(rt){let Sr=1/0,Ir=1/0;zt.getAllNodes().forEach(si=>{Sr>si.data.x&&(Sr=si.data.x),Ir>si.data.y&&(Ir=si.data.y)}),zt.getAllEdges().forEach(si=>{var Cr;(Cr=si.data.points)===null||Cr===void 0||Cr.forEach(wi=>{Sr>wi.x&&(Sr=wi.x),Ir>wi.y&&(Ir=wi.y)})}),vr[0]=rt[0]-Sr,vr[1]=rt[1]-Ir}const er=le==="LR"||le==="RL";if(!pt){const Sr=new Set,si=le==="BT"||le==="RL"?(Po,eo)=>eo-Po:(Po,eo)=>Po-eo;zt.getAllNodes().forEach(Po=>{Po.data.x=Po.data.x+vr[0],Po.data.y=Po.data.y+vr[1],Sr.add(er?Po.data.x:Po.data.y)});const Cr=Array.from(Sr).sort(si),wi=er?(Po,eo)=>Po.x!==eo.x:(Po,eo)=>Po.y!==eo.y,Mo=er?(Po,eo,Ui)=>{const fo=Math.max(eo.y,Ui.y),Uo=Math.min(eo.y,Ui.y);return Po.filter(pa=>pa.y<=fo&&pa.y>=Uo)}:(Po,eo,Ui)=>{const fo=Math.max(eo.x,Ui.x),Uo=Math.min(eo.x,Ui.x);return Po.filter(pa=>pa.x<=fo&&pa.x>=Uo)};zt.getAllEdges().forEach((Po,eo)=>{var Ui;Ue&&ot&&Po.data.type!=="loop"&&(Po.data.controlPoints=lj((Ui=Po.data.points)===null||Ui===void 0?void 0:Ui.map(({x:fo,y:Uo})=>({x:fo+vr[0],y:Uo+vr[1]})),zt.getNode(Po.source),zt.getNode(Po.target),Cr,er,wi,Mo))})}let Nr=[];Nr=zt.getAllNodes().map(Sr=>L0(Sr));const ei=zt.getAllEdges();return x&&(Nr.forEach(Sr=>{E.mergeNodeData(Sr.id,{x:Sr.data.x,y:Sr.data.y})}),ei.forEach(Sr=>{E.mergeEdgeData(Sr.id,{controlPoints:Sr.data.controlPoints})})),{nodes:Nr,edges:ei}})}}const lj=(b,x,E,z,te,re,oe)=>{let le=(b==null?void 0:b.slice(1,b.length-1))||[];if(x&&E){let{x:ce,y:ge}=x.data,{x:Ae,y:Me}=E.data;if(te&&(ce=x.data.y,ge=x.data.x,Ae=E.data.y,Me=E.data.x),Me!==ge&&ce!==Ae){const Ue=z.indexOf(ge),Xe=z[Ue+1];if(Xe){const ot=le[0],pt=te?{x:(ge+Xe)/2,y:(ot==null?void 0:ot.y)||Ae}:{x:(ot==null?void 0:ot.x)||Ae,y:(ge+Xe)/2};(!ot||re(ot,pt))&&le.unshift(pt)}const $e=z.indexOf(Me),rt=Math.abs($e-Ue);if(rt===1)le=oe(le,x.data,E.data),le.length||le.push(te?{x:(ge+Me)/2,y:ce}:{x:ce,y:(ge+Me)/2});else if(rt>1){const ot=z[$e-1];if(ot){const pt=le[le.length-1],yt=te?{x:(Me+ot)/2,y:(pt==null?void 0:pt.y)||Ae}:{x:(pt==null?void 0:pt.x)||ce,y:(Me+ot)/2};(!pt||re(pt,yt))&&le.push(yt)}}}}return le},JE=(b,x,E)=>{const z=b.getAllNodes(),te=b.getAllEdges();if(!(z!=null&&z.length))return{nodes:[],edges:te};if(z.length===1)return x&&b.mergeNodeData(z[0].id,{x:E[0],y:E[1]}),{nodes:[Object.assign(Object.assign({},z[0]),{data:Object.assign(Object.assign({},z[0].data),{x:E[0],y:E[1]})})],edges:te}},uj={radius:null,startRadius:null,endRadius:null,startAngle:0,endAngle:2*Math.PI,clockwise:!0,divisions:1,ordering:null,angleRatio:1};class cj{constructor(x={}){this.options=x,this.id="circular",this.options=Object.assign(Object.assign({},uj),x)}execute(x,E){return(0,wn.mG)(this,void 0,void 0,function*(){return this.genericCircularLayout(!1,x,E)})}assign(x,E){return(0,wn.mG)(this,void 0,void 0,function*(){yield this.genericCircularLayout(!0,x,E)})}genericCircularLayout(x,E,z){return(0,wn.mG)(this,void 0,void 0,function*(){const te=Object.assign(Object.assign({},this.options),z),{width:re,height:oe,center:le,divisions:ce,startAngle:ge=0,endAngle:Ae=2*Math.PI,angleRatio:Me,ordering:Ue,clockwise:Xe,nodeSpacing:$e,nodeSize:rt}=te,ot=E.getAllNodes(),pt=E.getAllEdges(),[yt,Ct,zt]=dj(re,oe,le),Wt=ot==null?void 0:ot.length;if(!Wt||Wt===1)return JE(E,x,zt);const Ht=(Ae-ge)/Wt;let{radius:Qt,startRadius:Gt,endRadius:vn}=te;if($e){const er=QE(10,$e),Nr=Z5(10,rt);let ei=-1/0;ot.forEach(Sr=>{const Ir=Nr(Sr);ei{Ir===0?Ar+=ei||10:Ar+=(er(Sr)||0)+(ei||10)}),Qt=Ar/(2*Math.PI)}else!Qt&&!Gt&&!vn?Qt=Math.min(Ct,yt)/2:!Gt&&vn?Gt=vn:Gt&&!vn&&(vn=Gt);const Sn=Ht*Me;let kn=[];Ue==="topology"?kn=SN(E,ot):Ue==="topology-directed"?kn=SN(E,ot,!0):Ue==="degree"?kn=hj(E,ot):kn=ot.map(er=>L0(er));const Kn=Math.ceil(Wt/ce);for(let er=0;er{E.mergeNodeData(er.id,{x:er.data.x,y:er.data.y})}),{nodes:kn,edges:pt}})}}const SN=(b,x,E=!1)=>{const z=[L0(x[0])],te={},re=x.length;te[x[0].id]=!0;let oe=0;return x.forEach((le,ce)=>{if(ce!==0)if((ce===re-1||b.getDegree(le.id,"both")!==b.getDegree(x[ce+1].id,"both")||b.areNeighbors(z[oe].id,le.id))&&!te[le.id])z.push(L0(le)),te[le.id]=!0,oe++;else{const ge=E?b.getSuccessors(z[oe].id):b.getNeighbors(z[oe].id);let Ae=!1;for(let Ue=0;Ue{E.push(L0(z))}),E.sort((z,te)=>b.getDegree(z.id,"both")-b.getDegree(te.id,"both")),E}const dj=(b,x,E)=>{let z=b,te=x,re=E;return!z&&typeof window!="undefined"&&(z=window.innerWidth),!te&&typeof window!="undefined"&&(te=window.innerHeight),re||(re=[z/2,te/2]),[z,te,re]},r1=Array.isArray,fj={nodeSize:30,nodeSpacing:10,preventOverlap:!1,sweep:void 0,equidistant:!1,startAngle:3/2*Math.PI,clockwise:!0,maxLevelDiff:void 0,sortBy:"degree"};class Q5{constructor(x={}){this.options=x,this.id="concentric",this.options=Object.assign(Object.assign({},fj),x)}execute(x,E){return(0,wn.mG)(this,void 0,void 0,function*(){return this.genericConcentricLayout(!1,x,E)})}assign(x,E){return(0,wn.mG)(this,void 0,void 0,function*(){yield this.genericConcentricLayout(!0,x,E)})}genericConcentricLayout(x,E,z){return(0,wn.mG)(this,void 0,void 0,function*(){const te=Object.assign(Object.assign({},this.options),z),{center:re,width:oe,height:le,sortBy:ce,maxLevelDiff:ge,sweep:Ae,clockwise:Me,equidistant:Ue,preventOverlap:Xe,startAngle:$e=3/2*Math.PI,nodeSize:rt,nodeSpacing:ot}=te,pt=E.getAllNodes(),yt=E.getAllEdges(),Ct=!oe&&typeof window!="undefined"?window.innerWidth:oe,zt=!le&&typeof window!="undefined"?window.innerHeight:le,Wt=re||[Ct/2,zt/2];if(!(pt!=null&&pt.length)||pt.length===1)return JE(E,x,Wt);const Ht=[];let Qt,Gt=0;r1(rt)?Qt=Math.max(rt[0],rt[1]):_s(rt)?(Qt=-1/0,pt.forEach(Sr=>{const Ir=Math.max(...JC(rt(Sr)));Ir>Qt&&(Qt=Ir)})):Qt=rt,r1(ot)?Gt=Math.max(ot[0],ot[1]):os(ot)&&(Gt=ot),pt.forEach(Sr=>{const Ir=L0(Sr);Ht.push(Ir);let si=Qt;const{data:Cr}=Ir;r1(Cr.size)?si=Math.max(Cr.size[0],Cr.size[1]):os(Cr.size)?si=Cr.size:Sh(Cr.size)&&(si=Math.max(Cr.size.width,Cr.size.height)),Qt=Math.max(Qt,si),_s(ot)&&(Gt=Math.max(ot(Sr),Gt))});const vn={};Ht.forEach((Sr,Ir)=>{vn[Sr.id]=Ir});let Sn=ce;(!nc(Sn)||Ht[0].data[Sn]===void 0)&&(Sn="degree"),Sn==="degree"?Ht.sort((Sr,Ir)=>E.getDegree(Ir.id,"both")-E.getDegree(Sr.id,"both")):Ht.sort((Sr,Ir)=>Ir.data[Sn]-Sr.data[Sn]);const kn=Ht[0],Kn=(ge||(Sn==="degree"?E.getDegree(kn.id,"both"):kn.data[Sn]))/4,vr=[{nodes:[]}];let er=vr[0];Ht.forEach(Sr=>{if(er.nodes.length>0){const Ir=Math.abs(Sn==="degree"?E.getDegree(er.nodes[0].id,"both")-E.getDegree(Sr.id,"both"):er.nodes[0].data[Sn]-Sr.data[Sn]);Kn&&Ir>=Kn&&(er={nodes:[]},vr.push(er))}er.nodes.push(Sr)});let Nr=Qt+Gt;if(!Xe){const Sr=vr.length>0&&vr[0].nodes.length>1,si=(Math.min(Ct,zt)/2-Nr)/(vr.length+(Sr?1:0));Nr=Math.min(Nr,si)}let ei=0;if(vr.forEach(Sr=>{const Ir=Ae===void 0?2*Math.PI-2*Math.PI/Sr.nodes.length:Ae;if(Sr.dTheta=Ir/Math.max(1,Sr.nodes.length-1),Sr.nodes.length>1&&Xe){const si=Math.cos(Sr.dTheta)-Math.cos(0),Cr=Math.sin(Sr.dTheta)-Math.sin(0),wi=Math.sqrt(Nr*Nr/(si*si+Cr*Cr));ei=Math.max(wi,ei)}Sr.r=ei,ei+=Nr}),Ue){let Sr=0,Ir=0;for(let si=0;si{Cr===0&&(Ir=si.r||0),si.r=Ir,Ir+=Sr})}return vr.forEach(Sr=>{const Ir=Sr.dTheta||0,si=Sr.r||0;Sr.nodes.forEach((Cr,wi)=>{const Mo=$e+(Me?1:-1)*Ir*wi;Cr.data.x=Wt[0]+si*Math.cos(Mo),Cr.data.y=Wt[1]+si*Math.sin(Mo)})}),x&&Ht.forEach(Sr=>E.mergeNodeData(Sr.id,{x:Sr.data.x,y:Sr.data.y})),{nodes:Ht,edges:yt}})}}function gj(b){const x=+this._x.call(null,b),E=+this._y.call(null,b);return wN(this.cover(x,E),x,E,b)}function wN(b,x,E,z){if(isNaN(x)||isNaN(E))return b;var te,re=b._root,oe={data:z},le=b._x0,ce=b._y0,ge=b._x1,Ae=b._y1,Me,Ue,Xe,$e,rt,ot,pt,yt;if(!re)return b._root=oe,b;for(;re.length;)if((rt=x>=(Me=(le+ge)/2))?le=Me:ge=Me,(ot=E>=(Ue=(ce+Ae)/2))?ce=Ue:Ae=Ue,te=re,!(re=re[pt=ot<<1|rt]))return te[pt]=oe,b;if(Xe=+b._x.call(null,re.data),$e=+b._y.call(null,re.data),x===Xe&&E===$e)return oe.next=re,te?te[pt]=oe:b._root=oe,b;do te=te?te[pt]=new Array(4):b._root=new Array(4),(rt=x>=(Me=(le+ge)/2))?le=Me:ge=Me,(ot=E>=(Ue=(ce+Ae)/2))?ce=Ue:Ae=Ue;while((pt=ot<<1|rt)===(yt=($e>=Ue)<<1|Xe>=Me));return te[yt]=re,te[pt]=oe,b}function pj(b){var x,E,z=b.length,te,re,oe=new Array(z),le=new Array(z),ce=1/0,ge=1/0,Ae=-1/0,Me=-1/0;for(E=0;EAe&&(Ae=te),reMe&&(Me=re));if(ce>Ae||ge>Me)return this;for(this.cover(ce,ge).cover(Ae,Me),E=0;Eb||b>=te||z>x||x>=re;)switch(ge=(xAe||(le=$e.y0)>Me||(ce=$e.x1)=pt)<<1|b>=ot)&&($e=Ue[Ue.length-1],Ue[Ue.length-1]=Ue[Ue.length-1-rt],Ue[Ue.length-1-rt]=$e)}else{var yt=b-+this._x.call(null,Xe.data),Ct=x-+this._y.call(null,Xe.data),zt=yt*yt+Ct*Ct;if(zt=(Ue=(oe+ce)/2))?oe=Ue:ce=Ue,(rt=Me>=(Xe=(le+ge)/2))?le=Xe:ge=Xe,x=E,!(E=E[ot=rt<<1|$e]))return this;if(!E.length)break;(x[ot+1&3]||x[ot+2&3]||x[ot+3&3])&&(z=x,pt=ot)}for(;E.data!==b;)if(te=E,!(E=E.next))return this;return(re=E.next)&&delete E.next,te?(re?te.next=re:delete te.next,this):x?(re?x[ot]=re:delete x[ot],(E=x[0]||x[1]||x[2]||x[3])&&E===(x[3]||x[2]||x[1]||x[0])&&!E.length&&(z?z[pt]=E:this._root=E),this):(this._root=re,this)}function Aj(b){for(var x=0,E=b.length;x=($e=(ce+Me)/2))?ce=$e:Me=$e,(Wt=E>=(rt=(ge+Ue)/2))?ge=rt:Ue=rt,(Ht=z>=(ot=(Ae+Xe)/2))?Ae=ot:Xe=ot,re=oe,!(oe=oe[Qt=Ht<<2|Wt<<1|zt]))return re[Qt]=le,b;if(pt=+b._x.call(null,oe.data),yt=+b._y.call(null,oe.data),Ct=+b._z.call(null,oe.data),x===pt&&E===yt&&z===Ct)return le.next=oe,re?re[Qt]=le:b._root=le,b;do re=re?re[Qt]=new Array(8):b._root=new Array(8),(zt=x>=($e=(ce+Me)/2))?ce=$e:Me=$e,(Wt=E>=(rt=(ge+Ue)/2))?ge=rt:Ue=rt,(Ht=z>=(ot=(Ae+Xe)/2))?Ae=ot:Xe=ot;while((Qt=Ht<<2|Wt<<1|zt)===(Gt=(Ct>=ot)<<2|(yt>=rt)<<1|pt>=$e));return re[Gt]=oe,re[Qt]=le,b}function Ij(b){Array.isArray(b)||(b=Array.from(b));const x=b.length,E=new Float64Array(x),z=new Float64Array(x),te=new Float64Array(x);let re=1/0,oe=1/0,le=1/0,ce=-1/0,ge=-1/0,Ae=-1/0;for(let Me=0,Ue,Xe,$e,rt;Mece&&(ce=Xe),$ege&&(ge=$e),rtAe&&(Ae=rt));if(re>ce||oe>ge||le>Ae)return this;this.cover(re,oe,le).cover(ce,ge,Ae);for(let Me=0;Meb||b>=oe||te>x||x>=le||re>E||E>=ce;)switch(Ue=(E$e||(ge=Ct.y0)>rt||(Ae=Ct.z0)>ot||(Me=Ct.x1)=Qt)<<2|(x>=Ht)<<1|b>=Wt)&&(Ct=pt[pt.length-1],pt[pt.length-1]=pt[pt.length-1-zt],pt[pt.length-1-zt]=Ct)}else{var Gt=b-+this._x.call(null,yt.data),vn=x-+this._y.call(null,yt.data),Sn=E-+this._z.call(null,yt.data),kn=Gt*Gt+vn*vn+Sn*Sn;if(knMath.sqrt(Rx(b-z,2)+Rx(x-te,2)+Rx(E-re,2));function Fj(b,x,E,z){const te=[],re=b-z,oe=x-z,le=E-z,ce=b+z,ge=x+z,Ae=E+z;return this.visit((Me,Ue,Xe,$e,rt,ot,pt)=>{if(!Me.length)do{const yt=Me.data;kj(b,x,E,this._x(yt),this._y(yt),this._z(yt))<=z&&te.push(yt)}while(Me=Me.next);return Ue>ce||Xe>ge||$e>Ae||rt=(rt=(oe+ge)/2))?oe=rt:ge=rt,(Ct=Xe>=(ot=(le+Ae)/2))?le=ot:Ae=ot,(zt=$e>=(pt=(ce+Me)/2))?ce=pt:Me=pt,x=E,!(E=E[Wt=zt<<2|Ct<<1|yt]))return this;if(!E.length)break;(x[Wt+1&7]||x[Wt+2&7]||x[Wt+3&7]||x[Wt+4&7]||x[Wt+5&7]||x[Wt+6&7]||x[Wt+7&7])&&(z=x,Ht=Wt)}for(;E.data!==b;)if(te=E,!(E=E.next))return this;return(re=E.next)&&delete E.next,te?(re?te.next=re:delete te.next,this):x?(re?x[Wt]=re:delete x[Wt],(E=x[0]||x[1]||x[2]||x[3]||x[4]||x[5]||x[6]||x[7])&&E===(x[7]||x[6]||x[5]||x[4]||x[3]||x[2]||x[1]||x[0])&&!E.length&&(z?z[Ht]=E:this._root=E),this):(this._root=re,this)}function zj(b){for(var x=0,E=b.length;x{const{nodeStrength:Ue,x:Xe,y:$e,z:rt,size:ot}=Ae.data;return{x:Xe,y:$e,z:rt,size:ot,index:Me,id:Ae.id,vx:0,vy:0,vz:0,weight:re*Ue}}),ce=(te===2?OM(le,Ae=>Ae.x,Ae=>Ae.y):PN(le,Ae=>Ae.x,Ae=>Ae.y,Ae=>Ae.z)).visitAfter(qj),ge=new Map;return le.forEach(Ae=>{ge.set(Ae.id,Ae),eW(Ae,ce,te)}),le.map((Ae,Me)=>{const{id:Ue,data:Xe}=oe[Me],{mass:$e=1}=Xe;z[Ue]={x:Ae.vx/$e,y:Ae.vy/$e,z:Ae.vz/$e}}),z}function qj(b){let x=0,E=0,z=0,te=0,re=0;const oe=b.length;if(oe){for(let le=0;le{var le;if(((le=b.data)===null||le===void 0?void 0:le.id)===re.id)return;const ce=[E,z,te][oe-1],ge=re.x-b.x||$5,Ae=re.y-b.y||$5,Me=re.z-b.z||$5,Ue=[ge,Ae,Me],Xe=ce-x;let $e=0;for(let pt=0;pt$j(z,te,re,oe,le,b,E))}const tW={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 LN{constructor(x={}){this.options=x,this.id="force",this.timeInterval=0,this.judgingDistance=0,this.running=!1,this.options=Object.assign(Object.assign({},tW),x)}execute(x,E){return(0,wn.mG)(this,void 0,void 0,function*(){return this.genericForceLayout(!1,x,E)})}assign(x,E){return(0,wn.mG)(this,void 0,void 0,function*(){yield this.genericForceLayout(!0,x,E)})}stop(){this.timeInterval&&typeof window!="undefined"&&window.clearInterval(this.timeInterval),this.running=!1}tick(x=this.options.maxIteration||1){if(this.lastResult)return this.lastResult;for(let z=0;(this.judgingDistance>this.lastOptions.minMovement||z<1)&&zthis.lastGraph.mergeNodeData(z.id,{x:z.data.x,y:z.data.y,z:this.options.dimensions===3?z.data.z:void 0})),E}genericForceLayout(x,E,z){return(0,wn.mG)(this,void 0,void 0,function*(){const te=Object.assign(Object.assign({},this.options),z),re=E.getAllNodes(),oe=E.getAllEdges(),le=this.formatOptions(te,E),{dimensions:ce,width:ge,height:Ae,nodeSize:Me,getMass:Ue,nodeStrength:Xe,edgeStrength:$e,linkDistance:rt}=le,ot=re.map((Gt,vn)=>Object.assign(Object.assign({},Gt),{data:Object.assign(Object.assign({},Gt.data),{x:os(Gt.data.x)?Gt.data.x:Math.random()*ge,y:os(Gt.data.y)?Gt.data.y:Math.random()*Ae,z:os(Gt.data.z)?Gt.data.z:Math.random()*Math.sqrt(ge*Ae),size:Me(Gt)||30,mass:Ue(Gt),nodeStrength:Xe(Gt)})})),pt=oe.map(Gt=>Object.assign(Object.assign({},Gt),{data:Object.assign(Object.assign({},Gt.data),{edgeStrength:$e(Gt),linkDistance:rt(Gt,E.getNode(Gt.source),E.getNode(Gt.target))})}));if(!(re!=null&&re.length))return this.lastResult={nodes:[],edges:oe},{nodes:[],edges:oe};const yt={};re.forEach((Gt,vn)=>{yt[Gt.id]={x:0,y:0,z:0}});const Ct=new Zd({nodes:ot,edges:pt});this.formatCentripetal(le,Ct);const{maxIteration:zt,minMovement:Wt,onTick:Ht}=le;if(this.lastLayoutNodes=ot,this.lastLayoutEdges=pt,this.lastAssign=x,this.lastGraph=E,this.lastCalcGraph=Ct,this.lastOptions=le,this.lastVelMap=yt,typeof window=="undefined")return;let Qt=0;return new Promise(Gt=>{this.timeInterval=window.setInterval(()=>{(!re||!this.running)&&Gt({nodes:eD(E,ot),edges:oe}),this.runOneStep(Ct,E,Qt,yt,le),this.updatePosition(E,Ct,yt,le),x&&ot.forEach(vn=>E.mergeNodeData(vn.id,{x:vn.data.x,y:vn.data.y,z:ce===3?vn.data.z:void 0})),Ht==null||Ht({nodes:eD(E,ot),edges:oe}),Qt++,(Qt>=zt||this.judgingDistance{let ge=1;os(ce==null?void 0:ce.data.mass)&&(ge=ce==null?void 0:ce.data.mass);const Ae=E.getDegree(ce.id,"both");return!Ae||Ae<5?ge:Ae*5*ge}),z.nodeSize=Y5(x.nodeSize,x.nodeSpacing);const le=x.linkDistance?QE(1,x.linkDistance):ce=>1+z.nodeSize(E.getNode(ce.source))+z.nodeSize(E.getNode(ce.target));return z.linkDistance=le,z.nodeStrength=QE(1,x.nodeStrength),z.edgeStrength=QE(1,x.edgeStrength),z}formatCentripetal(x,E){const{dimensions:z,centripetalOptions:te,center:re,clusterNodeStrength:oe,leafCluster:le,clustering:ce,nodeClusterBy:ge}=x,Ae=E.getAllNodes(),Me=te||{leaf:2,single:2,others:1,center:pt=>({x:re[0],y:re[1],z:z===3?re[2]:void 0})};typeof oe!="function"&&(x.clusterNodeStrength=pt=>oe);let Ue,Xe;if(le&&ge&&(Ue=TN(E,ge),Xe=Array.from(new Set(Ae==null?void 0:Ae.map(pt=>pt.data[ge])))||[],x.centripetalOptions=Object.assign(Me,{single:100,leaf:pt=>{const{siblingLeaves:yt,sameTypeLeaves:Ct}=Ue[pt.id]||{};return(Ct==null?void 0:Ct.length)===(yt==null?void 0:yt.length)||(Xe==null?void 0:Xe.length)===1?1:x.clusterNodeStrength(pt)},others:1,center:pt=>{const yt=E.getDegree(pt.id,"both");if(!yt)return{x:100,y:100,z:0};let Ct;if(yt===1){const{sameTypeLeaves:zt=[]}=Ue[pt.id]||{};zt.length===1?Ct=void 0:zt.length>1&&(Ct=DN(zt))}else Ct=void 0;return{x:Ct==null?void 0:Ct.x,y:Ct==null?void 0:Ct.y,z:Ct==null?void 0:Ct.z}}})),ce&&ge){Ue||(Ue=TN(E,ge)),Xe||(Xe=Array.from(new Set(Ae.map(yt=>yt.data[ge])))),Xe=Xe.filter(yt=>yt!==void 0);const pt={};Xe.forEach(yt=>{const Ct=Ae.filter(zt=>zt.data[ge]===yt).map(zt=>E.getNode(zt.id));pt[yt]=DN(Ct)}),x.centripetalOptions=Object.assign(Me,{single:yt=>x.clusterNodeStrength(yt),leaf:yt=>x.clusterNodeStrength(yt),others:yt=>x.clusterNodeStrength(yt),center:yt=>{const Ct=pt[yt.data[ge]];return{x:Ct==null?void 0:Ct.x,y:Ct==null?void 0:Ct.y,z:Ct==null?void 0:Ct.z}}})}const{leaf:$e,single:rt,others:ot}=x.centripetalOptions||{};$e&&typeof $e!="function"&&(x.centripetalOptions.leaf=()=>$e),rt&&typeof rt!="function"&&(x.centripetalOptions.single=()=>rt),ot&&typeof ot!="function"&&(x.centripetalOptions.others=()=>ot)}runOneStep(x,E,z,te,re){const oe={},le=x.getAllNodes(),ce=x.getAllEdges();if(!(le!=null&&le.length))return;const{monitor:ge}=re;if(this.calRepulsive(x,oe,re),ce&&this.calAttractive(x,oe,re),this.calGravity(x,E,oe,re),this.updateVelocity(x,oe,te,re),ge){const Ae=this.calTotalEnergy(oe,le);ge({energy:Ae,nodes:E.getAllNodes(),edges:E.getAllEdges(),iterations:z})}}calTotalEnergy(x,E){if(!(E!=null&&E.length))return 0;let z=0;return E.forEach((te,re)=>{const oe=x[te.id].x,le=x[te.id].y,ce=this.options.dimensions===3?x[te.id].z:0,ge=oe*oe+le*le+ce*ce,{mass:Ae=1}=te.data;z+=Ae*ge*.5}),z}calRepulsive(x,E,z){const{dimensions:te,factor:re,coulombDisScale:oe}=z;Jj(x,re,oe*oe,E,te)}calAttractive(x,E,z){const{dimensions:te,nodeSize:re}=z;x.getAllEdges().forEach((oe,le)=>{const{source:ce,target:ge}=oe,Ae=x.getNode(ce),Me=x.getNode(ge);if(!Ae||!Me)return;let Ue=Me.data.x-Ae.data.x,Xe=Me.data.y-Ae.data.y,$e=te===3?Me.data.z-Ae.data.z:0;!Ue&&!Xe&&(Ue=Math.random()*.01,Xe=Math.random()*.01,te===3&&!$e&&($e=Math.random()*.01));const rt=Math.sqrt(Ue*Ue+Xe*Xe+$e*$e);if(rt{const{id:rt,data:ot}=$e,{mass:pt,x:yt,y:Ct,z:zt}=ot,Wt=E.getNode(rt);let Ht=0,Qt=0,Gt=0,vn=Ue;const Sn=x.getDegree(rt,"in"),kn=x.getDegree(rt,"out"),Kn=x.getDegree(rt,"both"),vr=re==null?void 0:re(Wt,Kn);if(vr){const[er,Nr,ei]=vr;Ht=yt-er,Qt=Ct-Nr,vn=ei}else Ht=yt-Me[0],Qt=Ct-Me[1],Gt=zt-Me[2];if(vn&&(z[rt].x-=vn*Ht/pt,z[rt].y-=vn*Qt/pt,z[rt].z-=vn*Gt/pt),Xe){const{leaf:er,single:Nr,others:ei,center:Ar}=Xe,{x:Sr,y:Ir,z:si,centerStrength:Cr}=(Ar==null?void 0:Ar(Wt,le,ce,ge,Ae))||{x:0,y:0,z:0,centerStrength:0};if(!os(Sr)||!os(Ir))return;const wi=(yt-Sr)/pt,Mo=(Ct-Ir)/pt,Po=(zt-si)/pt;if(Cr&&(z[rt].x-=Cr*wi,z[rt].y-=Cr*Mo,z[rt].z-=Cr*Po),Kn===0){const Ui=Nr(Wt);if(!Ui)return;z[rt].x-=Ui*wi,z[rt].y-=Ui*Mo,z[rt].z-=Ui*Po;return}if(Sn===0||kn===0){const Ui=er(Wt,le,ce);if(!Ui)return;z[rt].x-=Ui*wi,z[rt].y-=Ui*Mo,z[rt].z-=Ui*Po;return}const eo=ei(Wt);if(!eo)return;z[rt].x-=eo*wi,z[rt].y-=eo*Mo,z[rt].z-=eo*Po}})}updateVelocity(x,E,z,te){const{damping:re,maxSpeed:oe,interval:le,dimensions:ce}=te,ge=x.getAllNodes();ge!=null&&ge.length&&ge.forEach(Ae=>{const{id:Me}=Ae;let Ue=(z[Me].x+E[Me].x*le)*re||.01,Xe=(z[Me].y+E[Me].y*le)*re||.01,$e=ce===3?(z[Me].z+E[Me].z*le)*re||.01:0;const rt=Math.sqrt(Ue*Ue+Xe*Xe+$e*$e);if(rt>oe){const ot=oe/rt;Ue=ot*Ue,Xe=ot*Xe,$e=ot*$e}z[Me]={x:Ue,y:Xe,z:$e}})}updatePosition(x,E,z,te){const{distanceThresholdMode:re,interval:oe,dimensions:le}=te,ce=E.getAllNodes();if(!(ce!=null&&ce.length)){this.judgingDistance=0;return}let ge=0;re==="max"?this.judgingDistance=-1/0:re==="min"&&(this.judgingDistance=1/0),ce.forEach(Ae=>{const{id:Me}=Ae,Ue=x.getNode(Me);if(os(Ue.data.fx)&&os(Ue.data.fy)){E.mergeNodeData(Me,{x:Ue.data.fx,y:Ue.data.fy,z:le===3?Ue.data.fz:void 0});return}const Xe=z[Me].x*oe,$e=z[Me].y*oe,rt=le===3?z[Me].z*oe:0;E.mergeNodeData(Me,{x:Ae.data.x+Xe,y:Ae.data.y+$e,z:Ae.data.z+rt});const ot=Math.sqrt(Xe*Xe+$e*$e+rt*rt);switch(re){case"max":this.judgingDistanceot&&(this.judgingDistance=ot);break;default:ge=ge+ot;break}}),(!re||re==="mean")&&(this.judgingDistance=ge/ce.length)}}const TN=(b,x)=>{const E=b.getAllNodes();if(!(E!=null&&E.length))return{};const z={};return E.forEach((te,re)=>{b.getDegree(te.id,"both")===1&&(z[te.id]=nW(b,"leaf",te,x))}),z},nW=(b,x,E,z)=>{const te=b.getDegree(E.id,"in"),re=b.getDegree(E.id,"out");let oe=E,le=[];te===0?(oe=b.getSuccessors(E.id)[0],le=b.getNeighbors(oe.id)):re===0&&(oe=b.getPredecessors(E.id)[0],le=b.getNeighbors(oe.id)),le=le.filter(ge=>b.getDegree(ge.id,"in")===0||b.getDegree(ge.id,"out")===0);const ce=rW(b,x,z,E,le);return{coreNode:oe,siblingLeaves:le,sameTypeLeaves:ce}},rW=(b,x,E,z,te)=>{const re=z.data[E]||"";let oe=(te==null?void 0:te.filter(le=>le.data[E]===re))||[];return x==="leaf"&&(oe=oe.filter(le=>b.getDegree(le.id,"in")===0||b.getDegree(le.id,"out")===0)),oe},DN=b=>{const x={x:0,y:0};b.forEach(z=>{const{x:te,y:re}=z.data;x.x+=te||0,x.y+=re||0});const E=b.length||1;return{x:x.x/E,y:x.y/E}},eD=(b,x)=>x.map(E=>{const{id:z,data:te}=E,re=b.getNode(z);return Object.assign(Object.assign({},re),{data:Object.assign(Object.assign({},re.data),{x:te.x,y:te.y,z:te.z})})});var $u=Be(25397);const JJ=$u.XA,qJ=$u.a_,$J=$u.yQ,eq=$u.Hs,tq=$u.Ec,nq=$u.dx,rq=$u.LU,iq=$u.Rm,Sx=$u.y3,oq=$u.qK,aq=$u.pb,sq=$u.j,lq=$u.sO,uq=$u.BZ,cq=$u.EK,hq=$u.Db,dq=$u.Fx,fq=$u.tU,gq=$u.Ym,pq=$u.rs,vq=$u.QR,mq=$u.TB,yq=$u.oH,IN=$u.Sc,xq=$u.BN,Eq=$u.it,Aq=$u.$r,Sq=$u.QM,wq=$u.AV;var Cq=($u.y3,$u.y3);const bq=$u.GH,Pq=$u.SO,Mq=$u.uZ,Lq=$u.yU,Tq=$u.F1,Dq=$u.re,ON=b=>{const x=[],E=b.length;for(let z=0;zx[te][z]+x[z][re]&&(x[te][re]=x[te][z]+x[z][re]);return x},NN=(b,x)=>{const{nodes:E,edges:z}=b,te=[],re={};if(!E)throw new Error("invalid nodes data!");return E&&E.forEach((oe,le)=>{re[oe.id]=le;const ce=[];te.push(ce)}),z==null||z.forEach(oe=>{const{source:le,target:ce}=oe,ge=re[le],Ae=re[ce];ge===void 0||Ae===void 0||(te[ge][Ae]=1,x||(te[Ae][ge]=1))}),te},iW=(b,x)=>{const E=[];return b.forEach(z=>{const te=[];z.forEach(re=>{te.push(re*x)}),E.push(te)}),E},oW=b=>{let x=1/0,E=1/0,z=-1/0,te=-1/0;return b.forEach(re=>{let oe=re.data.size;r1(oe)?oe.length===1&&(oe=[oe[0],oe[0]]):os(oe)?oe=[oe,oe]:(oe===void 0||isNaN(oe))&&(oe=[30,30]);const le=[oe[0]/2,oe[1]/2],ce=re.data.x-le[0],ge=re.data.x+le[0],Ae=re.data.y-le[1],Me=re.data.y+le[1];x>ce&&(x=ce),E>Ae&&(E=Ae),zMath.sqrt((b.x-x.x)*(b.x-x.x)+(b.y-x.y)*(b.y-x.y)),tD=(b,x,E,z="TB",te,re={})=>{if(!(x!=null&&x.length))return;const{stopBranchFn:oe,stopAllFn:le}=re;for(let ce=0;ce{const pt=L0(le[ot]);pt.data.x=rt[0]+re[0],pt.data.y=rt[1]+re[1],Xe.push(pt)}),x&&Xe.forEach(rt=>E.mergeNodeData(rt.id,{x:rt.data.x,y:rt.data.y})),{nodes:Xe,edges:ce}})}}const sW=b=>{let x=-999999;b.forEach(E=>{E.forEach(z=>{z!==1/0&&x{E.forEach((te,re)=>{te===1/0&&(b[z][re]=x)})})},lW=b=>{const E=Sx.mul(Sx.pow(b,2),-.5),z=E.mean("row"),te=E.mean("column"),re=E.mean();E.add(re).subRowVector(z).subColumnVector(te);const oe=new IN(E),le=Sx.sqrt(oe.diagonalMatrix).diagonal();return oe.leftSingularVectors.toJSON().map(ce=>Sx.mul([ce],[le]).toJSON()[0].splice(0,2))};function nD(b){return!!b.tick&&!!b.stop}const uW={gForce:!0,force2:!0,d3force:!0,fruchterman:!0,forceAtlas2:!0,force:!0,"graphin-force":!0},cW={center:[0,0],comboPadding:10,treeKey:"combo"};class hW{constructor(x={}){this.options=x,this.id="comboCombined",this.options=Object.assign(Object.assign({},cW),x)}execute(x,E){return(0,wn.mG)(this,void 0,void 0,function*(){return this.genericComboCombinedLayout(!1,x,E)})}assign(x,E){return(0,wn.mG)(this,void 0,void 0,function*(){yield this.genericComboCombinedLayout(!0,x,E)})}genericComboCombinedLayout(x,E,z){return(0,wn.mG)(this,void 0,void 0,function*(){const te=this.initVals(Object.assign(Object.assign({},this.options),z)),{center:re,treeKey:oe,outerLayout:le}=te,ce=E.getAllNodes().filter(Gt=>!Gt.data._isCombo),ge=E.getAllNodes().filter(Gt=>Gt.data._isCombo),Ae=E.getAllEdges(),Me=ce==null?void 0:ce.length;if(!Me||Me===1)return JE(E,x,re);const Ue=[],Xe=new Map;ce.forEach(Gt=>{Xe.set(Gt.id,Gt)});const $e=new Map;ge.forEach(Gt=>{$e.set(Gt.id,Gt)});const rt=new Map,ot=this.getInnerGraphs(E,oe,Xe,$e,Ae,te,rt);yield Promise.all(ot);const pt=new Map,yt=[],Ct=new Map;let zt=!0;E.getRoots(oe).forEach(Gt=>{const vn=rt.get(Gt.id),Sn=$e.get(Gt.id)||Xe.get(Gt.id),kn={id:Gt.id,data:Object.assign(Object.assign({},Gt.data),{x:vn.data.x||Sn.data.x,y:vn.data.y||Sn.data.y,fx:vn.data.fx||Sn.data.fx,fy:vn.data.fy||Sn.data.fy,mass:vn.data.mass||Sn.data.mass,size:vn.data.size})};yt.push(kn),pt.set(Gt.id,!0),!isNaN(kn.data.x)&&kn.data.x!==0&&!isNaN(kn.data.y)&&kn.data.y!==0?zt=!1:(kn.data.x=Math.random()*100,kn.data.y=Math.random()*100),tD(E,[Gt],Kn=>{Kn.id!==Gt.id&&Ct.set(Kn.id,Gt.id)},"TB",oe)});const Wt=[];Ae.forEach(Gt=>{const vn=Ct.get(Gt.source)||Gt.source,Sn=Ct.get(Gt.target)||Gt.target;vn!==Sn&&pt.has(vn)&&pt.has(Sn)&&Wt.push({id:Gt.id,source:vn,target:Sn,data:{}})});let Ht;if(yt!=null&&yt.length){if(yt.length===1)yt[0].data.x=re[0],yt[0].data.y=re[1];else{const Gt=new Zd({nodes:yt,edges:Wt}),vn=le||new LN;zt&&uW[vn.id]&&(yield(yt.length<100?new RN:new Q5).assign(Gt));const Sn=Object.assign({center:re,kg:5,preventOverlap:!0,animate:!1},vn.id==="force"?{gravity:1,factor:4,linkDistance:(kn,Kn,vr)=>{const er=Math.max(...Kn.data.size)||32,Nr=Math.max(...vr.data.size)||32;return er/2+Nr/2+200}}:{});Ht=yield kN(vn,Gt,Sn)}rt.forEach(Gt=>{var vn;const Sn=Ht.nodes.find(vr=>vr.id===Gt.id);if(Sn){const{x:vr,y:er}=Sn.data;Gt.data.visited=!0,Gt.data.x=vr,Gt.data.y=er,Ue.push({id:Gt.id,data:{x:vr,y:er}})}const{x:kn,y:Kn}=Gt.data;(vn=Gt.data.nodes)===null||vn===void 0||vn.forEach(vr=>{Ue.push({id:vr.id,data:{x:vr.data.x+kn,y:vr.data.y+Kn}})})}),rt.forEach(({data:Gt})=>{const{x:vn,y:Sn,visited:kn,nodes:Kn}=Gt;Kn==null||Kn.forEach(vr=>{if(!kn){const er=Ue.find(Nr=>Nr.id===vr.id);er.data.x+=vn||0,er.data.y+=Sn||0}})})}return x&&Ue.forEach(Gt=>{E.mergeNodeData(Gt.id,{x:Gt.data.x,y:Gt.data.y})}),{nodes:Ue,edges:Ae}})}initVals(x){const E=Object.assign({},x),{nodeSize:z,spacing:te,comboPadding:re}=x;let oe,le;if(os(te)?le=()=>te:_s(te)?le=te:le=()=>0,E.spacing=le,!z)oe=ge=>{const Ae=le(ge);return ge.size?r1(ge.size)?((ge.size[0]>ge.size[1]?ge.size[0]:ge.size[1])+Ae)/2:Sh(ge.size)?((ge.size.width>ge.size.height?ge.size.width:ge.size.height)+Ae)/2:(ge.size+Ae)/2:32+Ae/2};else if(_s(z))oe=ge=>{const Ae=z(ge),Me=le(ge);return r1(ge.size)?((ge.size[0]>ge.size[1]?ge.size[0]:ge.size[1])+Me)/2:((Ae||32)+Me)/2};else if(r1(z)){const Ae=(z[0]>z[1]?z[0]:z[1])/2;oe=Me=>Ae+le(Me)/2}else{const ge=z/2;oe=Ae=>ge+le(Ae)/2}E.nodeSize=oe;let ce;return os(re)?ce=()=>re:r1(re)?ce=()=>Math.max.apply(null,re):_s(re)?ce=re:ce=()=>0,E.comboPadding=ce,E}getInnerGraphs(x,E,z,te,re,oe,le){const{nodeSize:ce,comboPadding:ge,spacing:Ae,innerLayout:Me}=oe,Ue=Me||new Q5({}),Xe={center:[0,0],preventOverlap:!0,nodeSpacing:Ae},$e=[],rt=ot=>{let pt=(ge==null?void 0:ge(ot))||10;return r1(pt)&&(pt=Math.max(...pt)),{size:pt?[pt*2,pt*2]:[30,30],padding:pt}};return x.getRoots(E).forEach(ot=>{le.set(ot.id,{id:ot.id,data:{nodes:[],size:rt(ot).size}});let pt=Promise.resolve();tD(x,[ot],yt=>{var Ct;if(!yt.data._isCombo)return;const{size:zt,padding:Wt}=rt(yt);if(!(!((Ct=x.getChildren(yt.id,E))===null||Ct===void 0)&&Ct.length))le.set(yt.id,{id:yt.id,data:Object.assign(Object.assign({},yt.data),{size:zt})});else{const Ht=le.get(yt.id);le.set(yt.id,{id:yt.id,data:Object.assign({nodes:[]},Ht==null?void 0:Ht.data)});const Qt=new Map,Gt=x.getChildren(yt.id,E).map(kn=>{if(kn.data._isCombo)return le.has(kn.id)||le.set(kn.id,{id:kn.id,data:Object.assign({},kn.data)}),Qt.set(kn.id,!0),le.get(kn.id);const Kn=z.get(kn.id)||te.get(kn.id);return Qt.set(kn.id,!0),{id:kn.id,data:Object.assign(Object.assign({},Kn.data),kn.data)}}),vn={nodes:Gt,edges:re.filter(kn=>Qt.has(kn.source)&&Qt.has(kn.target))};let Sn=1/0;Gt.forEach(kn=>{var Kn;let{size:vr}=kn.data;vr||(vr=((Kn=le.get(kn.id))===null||Kn===void 0?void 0:Kn.data.size)||(ce==null?void 0:ce(kn))||[30,30]),os(vr)&&(vr=[vr,vr]);const[er,Nr]=vr;Sn>er&&(Sn=er),Sn>Nr&&(Sn=Nr),kn.data.size=vr}),pt=pt.then(()=>(0,wn.mG)(this,void 0,void 0,function*(){const kn=new Zd(vn);yield kN(Ue,kn,Xe,!0);const{minX:Kn,minY:vr,maxX:er,maxY:Nr}=oW(Gt),ei={x:(er+Kn)/2,y:(Nr+vr)/2};vn.nodes.forEach(Sr=>{Sr.data.x-=ei.x,Sr.data.y-=ei.y});const Ar=[Math.max(er-Kn,Sn)+Wt*2,Math.max(Nr-vr,Sn)+Wt*2];le.get(yt.id).data.size=Ar,le.get(yt.id).data.nodes=Gt}))}return!0},"BT",E),$e.push(pt)}),$e}}function kN(b,x,E,z){var te;return(0,wn.mG)(this,void 0,void 0,function*(){return nD(b)?(b.execute(x,E),b.stop(),b.tick((te=E.iterations)!==null&&te!==void 0?te:300)):z?yield b.assign(x,E):yield b.execute(x,E)})}function kf(b){return function(){return b}}function wx(b){return(b()-.5)*1e-6}function dW(b){return b.index}function FN(b,x){var E=b.get(x);if(!E)throw new Error("node not found: "+x);return E}function fW(b){var x=dW,E=Me,z,te=kf(30),re,oe,le,ce,ge,Ae=1;b==null&&(b=[]);function Me(ot){return 1/Math.min(le[ot.source.index],le[ot.target.index])}function Ue(ot){for(var pt=0,yt=b.length;pt[x(Wt,Ht,oe),Wt])),zt;for(ot=0,le=new Array(pt);ot{}};function _N(){for(var b=0,x=arguments.length,E={},z;b=0&&(z=E.slice(te+1),E=E.slice(0,te)),E&&!x.hasOwnProperty(E))throw new Error("unknown type: "+E);return{type:E,name:z}})}NM.prototype=_N.prototype={constructor:NM,on:function(b,x){var E=this._,z=pW(b+"",E),te,re=-1,oe=z.length;if(arguments.length<2){for(;++re0)for(var E=new Array(te),z=0,te,re;z=0&&b._call.call(void 0,x),b=b._next;--RS}function HN(){qE=(RM=t2.now())+kM,RS=qC=0;try{xW()}finally{RS=0,AW(),qE=0}}function EW(){var b=t2.now(),x=b-RM;x>jN&&(kM-=x,RM=b)}function AW(){for(var b,x=BM,E,z=1/0;x;)x._call?(z>x._time&&(z=x._time),b=x,x=x._next):(E=x._next,x._next=null,x=b?b._next=E:BM=E);e2=b,iD(z)}function iD(b){if(!RS){qC&&(qC=clearTimeout(qC));var x=b-qE;x>24?(b<1/0&&(qC=setTimeout(HN,b-t2.now()-kM)),$C&&($C=clearInterval($C))):($C||(RM=t2.now(),$C=setInterval(EW,jN)),RS=1,WN(HN))}}const SW=1664525,wW=1013904223,VN=4294967296;function CW(){let b=1;return()=>(b=(SW*b+wW)%VN)/VN}function bW(b){return b.x}function PW(b){return b.y}var MW=10,LW=Math.PI*(3-Math.sqrt(5));function TW(b){var x,E=1,z=.001,te=1-Math.pow(z,1/300),re=0,oe=.6,le=new Map,ce=GN(Me),ge=mW("tick","end"),Ae=CW();b==null&&(b=[]);function Me(){Ue(),ge.call("tick",x),E1?(ot==null?le.delete(rt):le.set(rt,$e(ot)),x):le.get(rt)},find:function(rt,ot,pt){var yt=0,Ct=b.length,zt,Wt,Ht,Qt,Gt;for(pt==null?pt=1/0:pt*=pt,yt=0;yt1?(ge.on(rt,ot),x):ge.on(rt)}}}function DW(){var b,x,E,z,te=kf(-30),re,oe=1,le=1/0,ce=.81;function ge(Xe){var $e,rt=b.length,ot=OM(b,bW,PW).visitAfter(Me);for(z=Xe,$e=0;$e=le)return;(Xe.data!==x||Xe.next)&&(pt===0&&(pt=wx(E),zt+=pt*pt),yt===0&&(yt=wx(E),zt+=yt*yt),ztUe.index){var kn=Xe-Gt.x-Gt.vx,Kn=$e-Gt.y-Gt.vy,vr=kn*kn+Kn*Kn;vrXe+Sn||Ht$e+Sn||Qt<$e-Sn}}function le(ge){if(ge.data)return ge.r=E[ge.data.index];for(var Ae=ge.r=0;Ae<4;++Ae)ge[Ae]&&ge[Ae].r>ge.r&&(ge.r=ge[Ae].r)}function ce(){if(x){var ge,Ae=x.length,Me;for(E=new Array(Ae),ge=0;geE.id},manyBody:{},center:{x:0,y:0}},this.context={options:{},assign:!1,nodes:[],edges:[]},Cp(this.options,x),this.options.forceSimulation&&(this.simulation=this.options.forceSimulation)}execute(x,E){return(0,wn.mG)(this,void 0,void 0,function*(){return this.genericLayout(!1,x,E)})}assign(x,E){return(0,wn.mG)(this,void 0,void 0,function*(){yield this.genericLayout(!0,x,E)})}stop(){this.simulation.stop()}tick(x){return this.simulation.tick(x),this.getResult()}restart(){this.simulation.restart()}setFixedPosition(x,E){const z=this.context.nodes.find(te=>te.id===x);z&&E.forEach((te,re)=>{if(typeof te=="number"||te===null){const oe=["fx","fy","fz"][re];z[oe]=te}})}getOptions(x){var E,z;const te=Cp({},this.options,x);return te.collide&&((E=te.collide)===null||E===void 0?void 0:E.radius)===void 0&&(te.collide=te.collide||{},te.collide.radius=(z=te.nodeSize)!==null&&z!==void 0?z:10),te.iterations===void 0&&(te.link&&te.link.iterations===void 0&&(te.iterations=te.link.iterations),te.collide&&te.collide.iterations===void 0&&(te.iterations=te.collide.iterations)),this.context.options=te,te}genericLayout(x,E,z){var te;return(0,wn.mG)(this,void 0,void 0,function*(){const re=this.getOptions(z),oe=E.getAllNodes().map(({id:Ae,data:Me})=>Object.assign(Object.assign({id:Ae},Me),ZE(Me.data,this.config.inputNodeAttrs))),le=E.getAllEdges().map(Ae=>Object.assign({},Ae));Object.assign(this.context,{assign:x,nodes:oe,edges:le,graph:E});const ce=new Promise(Ae=>{this.resolver=Ae}),ge=this.setSimulation(re);return ge.nodes(oe),(te=ge.force("link"))===null||te===void 0||te.links(le),ce})}getResult(){const{assign:x,nodes:E,edges:z,graph:te}=this.context,re=E.map(le=>({id:le.id,data:Object.assign(Object.assign({},le.data),ZE(le,this.config.outputNodeAttrs))})),oe=z.map(({id:le,source:ce,target:ge,data:Ae})=>({id:le,source:typeof ce=="object"?ce.id:ce,target:typeof ge=="object"?ge.id:ge,data:Ae}));return x&&re.forEach(le=>te.mergeNodeData(le.id,le.data)),{nodes:re,edges:oe}}initSimulation(){return TW()}setSimulation(x){const E=this.simulation||this.options.forceSimulation||this.initSimulation();return this.simulation||(this.simulation=E.on("tick",()=>{var z;return(z=x.onTick)===null||z===void 0?void 0:z.call(x,this.getResult())}).on("end",()=>{var z;return(z=this.resolver)===null||z===void 0?void 0:z.call(this,this.getResult())})),KN(E,this.config.simulationAttrs.map(z=>[z,x[z]])),Object.entries(this.forceMap).forEach(([z,te])=>{const re=z;if(x[z]){let oe=E.force(re);oe||(oe=te(),E.force(re,oe)),KN(oe,Object.entries(x[re]))}else E.force(re,null)}),E}}const KN=(b,x)=>x.reduce((E,[z,te])=>!E[z]||te===void 0?E:E[z].call(b,te),b);var ZN=Be(92546),zW=Be.n(ZN);class FM{constructor(x){this.id="dagre",this.options={},Object.assign(this.options,FM.defaultOptions,x)}execute(x,E){return(0,wn.mG)(this,void 0,void 0,function*(){return this.genericDagreLayout(!1,x,Object.assign(Object.assign({},this.options),E))})}assign(x,E){return(0,wn.mG)(this,void 0,void 0,function*(){yield this.genericDagreLayout(!0,x,Object.assign(Object.assign({},this.options),E))})}genericDagreLayout(x,E,z){return(0,wn.mG)(this,void 0,void 0,function*(){const{nodeSize:te}=z,re=new ZN.graphlib.Graph;re.setGraph(z),re.setDefaultEdgeLabel(()=>({}));const oe=E.getAllNodes(),le=E.getAllEdges();[...oe,...le].some(({id:ge})=>os(ge))&&console.error("Dagre layout only support string id, it will convert number to string."),E.getAllNodes().forEach(ge=>{const{id:Ae}=ge,Me=Object.assign({},ge.data);if(te!==void 0){const[Ue,Xe]=JC(_s(te)?te(ge):te);Object.assign(Me,{width:Ue,height:Xe})}re.setNode(Ae.toString(),Me)}),E.getAllEdges().forEach(({id:ge,source:Ae,target:Me})=>{re.setEdge(Ae.toString(),Me.toString(),{id:ge})}),zW().layout(re);const ce={nodes:[],edges:[]};return re.nodes().forEach(ge=>{const Ae=re.node(ge);ce.nodes.push({id:ge,data:Ae}),x&&E.mergeNodeData(ge,Ae)}),re.edges().forEach(ge=>{const Ae=re.edge(ge),{id:Me}=Ae,Ue=(0,wn._T)(Ae,["id"]),{v:Xe,w:$e}=ge;ce.edges.push({id:Me,source:Xe,target:$e,data:Ue}),x&&E.mergeEdgeData(Me,Ue)}),ce})}}FM.defaultOptions={};class oD{constructor(x){this.id=x.id||0,this.rx=x.rx,this.ry=x.ry,this.fx=0,this.fy=0,this.mass=x.mass,this.degree=x.degree,this.g=x.g||0}distanceTo(x){const E=this.rx-x.rx,z=this.ry-x.ry;return Math.hypot(E,z)}setPos(x,E){this.rx=x,this.ry=E}resetForce(){this.fx=0,this.fy=0}addForce(x){const E=x.rx-this.rx,z=x.ry-this.ry;let te=Math.hypot(E,z);te=te<1e-4?1e-4:te;const re=this.g*(this.degree+1)*(x.degree+1)/te;this.fx+=re*E/te,this.fy+=re*z/te}in(x){return x.contains(this.rx,this.ry)}add(x){const E=this.mass+x.mass,z=(this.rx*this.mass+x.rx*x.mass)/E,te=(this.ry*this.mass+x.ry*x.mass)/E,re=this.degree+x.degree,oe={rx:z,ry:te,mass:E,degree:re};return new oD(oe)}}class kS{constructor(x){this.xmid=x.xmid,this.ymid=x.ymid,this.length=x.length,this.massCenter=x.massCenter||[0,0],this.mass=x.mass||1}getLength(){return this.length}contains(x,E){const z=this.length/2;return x<=this.xmid+z&&x>=this.xmid-z&&E<=this.ymid+z&&E>=this.ymid-z}NW(){const x=this.xmid-this.length/4,E=this.ymid+this.length/4,z=this.length/2,te={xmid:x,ymid:E,length:z};return new kS(te)}NE(){const x=this.xmid+this.length/4,E=this.ymid+this.length/4,z=this.length/2,te={xmid:x,ymid:E,length:z};return new kS(te)}SW(){const x=this.xmid-this.length/4,E=this.ymid-this.length/4,z=this.length/2,te={xmid:x,ymid:E,length:z};return new kS(te)}SE(){const x=this.xmid+this.length/4,E=this.ymid-this.length/4,z=this.length/2,te={xmid:x,ymid:E,length:z};return new kS(te)}}class FS{constructor(x){this.body=null,this.quad=null,this.NW=null,this.NE=null,this.SW=null,this.SE=null,this.theta=.5,x!=null&&(this.quad=x)}insert(x){if(this.body==null){this.body=x;return}this._isExternal()?(this.quad&&(this.NW=new FS(this.quad.NW()),this.NE=new FS(this.quad.NE()),this.SW=new FS(this.quad.SW()),this.SE=new FS(this.quad.SE())),this._putBody(this.body),this._putBody(x),this.body=this.body.add(x)):(this.body=this.body.add(x),this._putBody(x))}_putBody(x){this.quad&&(x.in(this.quad.NW())&&this.NW?this.NW.insert(x):x.in(this.quad.NE())&&this.NE?this.NE.insert(x):x.in(this.quad.SW())&&this.SW?this.SW.insert(x):x.in(this.quad.SE())&&this.SE&&this.SE.insert(x))}_isExternal(){return this.NW==null&&this.NE==null&&this.SW==null&&this.SE==null}updateForce(x){if(!(this.body==null||x===this.body))if(this._isExternal())x.addForce(this.body);else{const E=this.quad?this.quad.getLength():0,z=this.body.distanceTo(x);E/zL0(pt,[le,ce])),$e=te.filter(pt=>{const{source:yt,target:Ct}=pt;return yt!==Ct}),rt=new Zd({nodes:Xe,edges:$e}),ot=this.getSizes(rt,Me);if(this.run(rt,E,Ae,ot,x,oe),ge){for(let yt=0;yt<$e.length;yt+=1){const{source:Ct,target:zt}=$e[yt],Wt=rt.getDegree(Ct),Ht=rt.getDegree(Ct);if(Wt<=1){const Qt=rt.getNode(zt);rt.mergeNodeData(Ct,{x:Qt.data.x,y:Qt.data.y})}else if(Ht<=1){const Qt=rt.getNode(Ct);rt.mergeNodeData(zt,{x:Qt.data.x,y:Qt.data.y})}}const pt=Object.assign(Object.assign({},oe),{prune:!1,barnesHut:!1});this.run(rt,E,100,ot,x,pt)}return{nodes:Xe,edges:te}})}getSizes(x,E){const z=x.getAllNodes(),te={};for(let re=0;re250&&(z.barnesHut=!0),ce===void 0&&E>100&&(z.prune=!0),ge===0&&!ce?(z.maxIteration=250,E<=200&&E>100?z.maxIteration=1e3:E>200&&(z.maxIteration=1200)):ge===0&&ce&&(z.maxIteration=100,E<=200&&E>100?z.maxIteration=500:E>200&&(z.maxIteration=950)),Ae||(z.kr=50,E>100&&E<=500?z.kr=20:E>500&&(z.kr=1)),Me||(z.kg=20,E>100&&E<=500?z.kg=10:E>500&&(z.kg=1)),z}run(x,E,z,te,re,oe){const{kr:le,barnesHut:ce,onTick:ge}=oe,Ae=x.getAllNodes();let Me=0,Ue=z;const Xe={},$e={},rt={};for(let ot=0;ot0;)Me=this.oneStep(x,{iter:Ue,preventOverlapIters:50,krPrime:100,sg:Me,forces:Xe,preForces:$e,bodies:rt,sizes:te},oe),Ue--,ge==null||ge({nodes:Ae,edges:E.getAllEdges()});return x}oneStep(x,E,z){const{iter:te,preventOverlapIters:re,krPrime:oe,sg:le,preForces:ce,bodies:ge,sizes:Ae}=E;let{forces:Me}=E;const{preventOverlap:Ue,barnesHut:Xe}=z,$e=x.getAllNodes();for(let rt=0;rt<$e.length;rt+=1){const{id:ot}=$e[rt];ce[ot]=[...Me[ot]],Me[ot]=[0,0]}return Me=this.getAttrForces(x,te,re,Ae,Me,z),Xe&&(Ue&&te>re||!Ue)?Me=this.getOptRepGraForces(x,Me,ge,z):Me=this.getRepGraForces(x,te,re,Me,oe,Ae,z),this.updatePos(x,Me,ce,le,z)}getAttrForces(x,E,z,te,re,oe){const{preventOverlap:le,dissuadeHubs:ce,mode:ge,prune:Ae}=oe,Me=x.getAllEdges();for(let Ue=0;Ue0&&(Wt=zt,Ht=zt),re[Xe][0]+=Wt*Ct[0],re[$e][0]-=Ht*Ct[0],re[Xe][1]+=Wt*Ct[1],re[$e][1]-=Ht*Ct[1]}return re}getOptRepGraForces(x,E,z,te){const{kg:re,center:oe,prune:le}=te,ce=x.getAllNodes(),ge=ce.length;let Ae=9e10,Me=-9e10,Ue=9e10,Xe=-9e10;for(let yt=0;yt=Me&&(Me=zt.x),zt.x<=Ae&&(Ae=zt.x),zt.y>=Xe&&(Xe=zt.y),zt.y<=Ue&&(Ue=zt.y))}const $e=Math.max(Me-Ae,Xe-Ue),rt={xmid:(Me+Ae)/2,ymid:(Xe+Ue)/2,length:$e,massCenter:oe,mass:ge},ot=new kS(rt),pt=new FS(ot);for(let yt=0;yt0&&(Sn=ge*(pt+1)*(Qt+1)/vn),te[ot.id][0]-=Sn*Gt[0],te[Ht.id][0]+=Sn*Gt[0],te[ot.id][1]-=Sn*Gt[1],te[Ht.id][1]+=Sn*Gt[1]}const yt=[ot.data.x-Me[0],ot.data.y-Me[1]],Ct=Math.hypot(yt[0],yt[1]);yt[0]=yt[0]/Ct,yt[1]=yt[1]/Ct;const zt=Ae*(pt+1);te[ot.id][0]-=zt*yt[0],te[ot.id][1]-=zt*yt[1]}return te}updatePos(x,E,z,te,re){const{ks:oe,tao:le,prune:ce,ksmax:ge}=re,Ae=x.getAllNodes(),Me=Ae.length,Ue=[],Xe=[];let $e=0,rt=0,ot=te;for(let yt=0;yt1.5*pt?1.5*pt:ot);for(let yt=0;ytGt?Gt:Ht;const vn=Ht*E[Ct][0],Sn=Ht*E[Ct][1];x.mergeNodeData(Ct,{x:zt.x+vn,y:zt.y+Sn})}return ot}}const UW={maxIteration:1e3,gravity:10,speed:5,clustering:!1,clusterGravity:10,width:300,height:300,nodeClusterBy:"cluster"},GW=800;class HW{constructor(x={}){this.options=x,this.id="fruchterman",this.timeInterval=0,this.running=!1,this.options=Object.assign(Object.assign({},UW),x)}execute(x,E){return(0,wn.mG)(this,void 0,void 0,function*(){return this.genericFruchtermanLayout(!1,x,E)})}assign(x,E){return(0,wn.mG)(this,void 0,void 0,function*(){yield this.genericFruchtermanLayout(!0,x,E)})}stop(){this.timeInterval&&typeof window!="undefined"&&window.clearInterval(this.timeInterval),this.running=!1}tick(x=this.options.maxIteration||1){if(this.lastResult)return this.lastResult;for(let z=0;zthis.lastGraph.mergeNodeData(z.id,{x:z.data.x,y:z.data.y,z:this.options.dimensions===3?z.data.z:void 0})),E}genericFruchtermanLayout(x,E,z){return(0,wn.mG)(this,void 0,void 0,function*(){if(this.running)return;const te=this.formatOptions(z),{dimensions:re,width:oe,height:le,center:ce,clustering:ge,nodeClusterBy:Ae,maxIteration:Me,onTick:Ue}=te,Xe=E.getAllNodes(),$e=E.getAllEdges();if(!(Xe!=null&&Xe.length)){const Ct={nodes:[],edges:$e};return this.lastResult=Ct,Ct}if(Xe.length===1){x&&E.mergeNodeData(Xe[0].id,{x:ce[0],y:ce[1],z:re===3?ce[2]:void 0});const Ct={nodes:[Object.assign(Object.assign({},Xe[0]),{data:Object.assign(Object.assign({},Xe[0].data),{x:ce[0],y:ce[1],z:re===3?ce[2]:void 0})})],edges:$e};return this.lastResult=Ct,Ct}const rt=Xe.map(Ct=>L0(Ct,[oe,le])),ot=new Zd({nodes:rt,edges:$e}),pt={};if(ge&&rt.forEach(Ct=>{const zt=Ct.data[Ae];pt[zt]||(pt[zt]={name:zt,cx:0,cy:0,count:0})}),this.lastLayoutNodes=rt,this.lastLayoutEdges=$e,this.lastAssign=x,this.lastGraph=ot,this.lastOptions=te,this.lastClusterMap=pt,typeof window=="undefined")return;let yt=0;return new Promise(Ct=>{this.timeInterval=window.setInterval(()=>{if(!this.running){Ct({nodes:rt,edges:$e});return}this.runOneStep(ot,pt,te),x&&rt.forEach(({id:zt,data:Wt})=>E.mergeNodeData(zt,{x:Wt.x,y:Wt.y,z:re===3?Wt.z:void 0})),Ue==null||Ue({nodes:rt,edges:$e}),yt++,yt>=Me&&(window.clearInterval(this.timeInterval),Ct({nodes:rt,edges:$e}))},0),this.running=!0})})}formatOptions(x={}){const E=Object.assign(Object.assign({},this.options),x),{clustering:z,nodeClusterBy:te}=E,{center:re,width:oe,height:le}=E;return E.width=!oe&&typeof window!="undefined"?window.innerWidth:oe,E.height=!le&&typeof window!="undefined"?window.innerHeight:le,E.center=re||[E.width/2,E.height/2],E.clustering=z&&!!te,E}runOneStep(x,E,z){const{dimensions:te,height:re,width:oe,gravity:le,center:ce,speed:ge,clustering:Ae,nodeClusterBy:Me,clusterGravity:Ue}=z,Xe=re*oe,$e=Math.sqrt(Xe)/10,rt=x.getAllNodes(),ot=Xe/(rt.length+1),pt=Math.sqrt(ot),yt={};if(this.applyCalculate(x,yt,pt,ot),Ae){for(const zt in E)E[zt].cx=0,E[zt].cy=0,E[zt].count=0;rt.forEach(zt=>{const{data:Wt}=zt,Ht=E[Wt[Me]];os(Wt.x)&&(Ht.cx+=Wt.x),os(Wt.y)&&(Ht.cy+=Wt.y),Ht.count++});for(const zt in E)E[zt].cx/=E[zt].count,E[zt].cy/=E[zt].count;const Ct=Ue||le;rt.forEach((zt,Wt)=>{const{id:Ht,data:Qt}=zt;if(!os(Qt.x)||!os(Qt.y))return;const Gt=E[Qt[Me]],vn=Math.sqrt((Qt.x-Gt.cx)*(Qt.x-Gt.cx)+(Qt.y-Gt.cy)*(Qt.y-Gt.cy)),Sn=pt*Ct;yt[Ht].x-=Sn*(Qt.x-Gt.cx)/vn,yt[Ht].y-=Sn*(Qt.y-Gt.cy)/vn})}rt.forEach((Ct,zt)=>{const{id:Wt,data:Ht}=Ct;if(!os(Ht.x)||!os(Ht.y))return;const Qt=.01*pt*le;yt[Wt].x-=Qt*(Ht.x-ce[0]),yt[Wt].y-=Qt*(Ht.y-ce[1]),te===3&&(yt[Wt].z-=Qt*(Ht.z-ce[2]))}),rt.forEach((Ct,zt)=>{const{id:Wt,data:Ht}=Ct;if(os(Ht.fx)&&os(Ht.fy)){Ht.x=Ht.fx,Ht.y=Ht.fy,te===3&&(Ht.z=Ht.fz);return}if(!os(Ht.x)||!os(Ht.y))return;const Qt=Math.sqrt(yt[Wt].x*yt[Wt].x+yt[Wt].y*yt[Wt].y+(te===3?yt[Wt].z*yt[Wt].z:0));if(Qt>0){const Gt=Math.min($e*(ge/GW),Qt);x.mergeNodeData(Wt,{x:Ht.x+yt[Wt].x/Qt*Gt,y:Ht.y+yt[Wt].y/Qt*Gt,z:te===3?Ht.z+yt[Wt].z/Qt*Gt:void 0})}})}applyCalculate(x,E,z,te){this.calRepulsive(x,E,te),this.calAttractive(x,E,z)}calRepulsive(x,E,z){const te=x.getAllNodes();te.forEach(({data:re,id:oe},le)=>{E[oe]={x:0,y:0,z:0},te.forEach(({data:ce,id:ge},Ae)=>{if(le<=Ae||!os(re.x)||!os(ce.x)||!os(re.y)||!os(ce.y))return;let Me=re.x-ce.x,Ue=re.y-ce.y,Xe=this.options.dimensions===3?re.z-ce.z:0,$e=Me*Me+Ue*Ue+Xe*Xe;$e===0&&($e=1,Me=.01,Ue=.01,Xe=.01);const rt=z/$e,ot=Me*rt,pt=Ue*rt,yt=Xe*rt;E[oe].x+=ot,E[oe].y+=pt,E[ge].x-=ot,E[ge].y-=pt,this.options.dimensions===3&&(E[oe].z+=yt,E[ge].z-=yt)})})}calAttractive(x,E,z){x.getAllEdges().forEach(re=>{const{source:oe,target:le}=re;if(!oe||!le||oe===le)return;const{data:ce}=x.getNode(oe),{data:ge}=x.getNode(le);if(!os(ge.x)||!os(ce.x)||!os(ge.y)||!os(ce.y))return;const Ae=ge.x-ce.x,Me=ge.y-ce.y,Ue=this.options.dimensions===3?ge.z-ce.z:0,Xe=Math.sqrt(Ae*Ae+Me*Me+Ue*Ue)/z,$e=Ae*Xe,rt=Me*Xe,ot=Ue*Xe;E[oe].x+=$e,E[oe].y+=rt,E[le].x-=$e,E[le].y-=rt,this.options.dimensions===3&&(E[oe].z+=ot,E[le].z-=ot)})}}const VW={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 KW{constructor(x={}){this.options=x,this.id="grid",this.options=Object.assign(Object.assign({},VW),x)}execute(x,E){return(0,wn.mG)(this,void 0,void 0,function*(){return this.genericGridLayout(!1,x,E)})}assign(x,E){return(0,wn.mG)(this,void 0,void 0,function*(){yield this.genericGridLayout(!0,x,E)})}genericGridLayout(x,E,z){return(0,wn.mG)(this,void 0,void 0,function*(){const te=Object.assign(Object.assign({},this.options),z),{begin:re=[0,0],condense:oe,preventOverlapPadding:le,preventOverlap:ce,rows:ge,cols:Ae,nodeSpacing:Me,nodeSize:Ue,width:Xe,height:$e,position:rt}=te;let{sortBy:ot}=te;const pt=E.getAllNodes(),yt=E.getAllEdges(),Ct=pt==null?void 0:pt.length;if(!Ct||Ct===1)return JE(E,x,re);const zt=pt.map(Nr=>L0(Nr));ot!=="id"&&(!nc(ot)||zt[0].data[ot]===void 0)&&(ot="degree"),ot==="degree"?zt.sort((Nr,ei)=>E.getDegree(ei.id,"both")-E.getDegree(Nr.id,"both")):ot==="id"?zt.sort((Nr,ei)=>os(ei.id)&&os(Nr.id)?ei.id-Nr.id:`${Nr.id}`.localeCompare(`${ei.id}`)):zt.sort((Nr,ei)=>ei.data[ot]-Nr.data[ot]);const Wt=!Xe&&typeof window!="undefined"?window.innerWidth:Xe,Ht=!$e&&typeof window!="undefined"?window.innerHeight:$e,Qt=Ct,Gt={rows:ge,cols:Ae};if(ge!=null&&Ae!=null)Gt.rows=ge,Gt.cols=Ae;else if(ge!=null&&Ae==null)Gt.rows=ge,Gt.cols=Math.ceil(Qt/Gt.rows);else if(ge==null&&Ae!=null)Gt.cols=Ae,Gt.rows=Math.ceil(Qt/Gt.cols);else{const Nr=Math.sqrt(Qt*Ht/Wt);Gt.rows=Math.round(Nr),Gt.cols=Math.round(Wt/Ht*Nr)}if(Gt.rows=Math.max(Gt.rows,1),Gt.cols=Math.max(Gt.cols,1),Gt.cols*Gt.rows>Qt){const Nr=_M(Gt),ei=zM(Gt);(Nr-1)*ei>=Qt?_M(Gt,Nr-1):(ei-1)*Nr>=Qt&&zM(Gt,ei-1)}else for(;Gt.cols*Gt.rows=Qt?zM(Gt,ei+1):_M(Gt,Nr+1)}let vn=oe?0:Wt/Gt.cols,Sn=oe?0:Ht/Gt.rows;if(ce||Me){const Nr=QE(10,Me),ei=Z5(30,Ue,!1);zt.forEach(Ar=>{(!Ar.data.x||!Ar.data.y)&&(Ar.data.x=0,Ar.data.y=0);const Sr=E.getNode(Ar.id),[Ir,si]=JC(ei(Sr)||30),Cr=Nr!==void 0?Nr(Ar):le,wi=Ir+Cr,Mo=si+Cr;vn=Math.max(vn,wi),Sn=Math.max(Sn,Mo)})}const kn={},Kn={row:0,col:0},vr={};for(let Nr=0;Nr{E.mergeNodeData(Nr.id,{x:Nr.data.x,y:Nr.data.y})}),er})}}const _M=(b,x)=>{let E;const z=b.rows||5,te=b.cols||5;return x==null?E=Math.min(z,te):Math.min(z,te)===b.rows?b.rows=x:b.cols=x,E},zM=(b,x)=>{let E;const z=b.rows||5,te=b.cols||5;return x==null?E=Math.max(z,te):Math.max(z,te)===b.rows?b.rows=x:b.cols=x,E},aD=(b,x)=>b[`c-${x.row}-${x.col}`]||!1,YN=(b,x)=>b[`c-${x.row}-${x.col}`]=!0,XN=(b,x)=>{const E=b.cols||5;x.col++,x.col>=E&&(x.col=0,x.row++)},ZW=(b,x,E,z,te,re,oe,le)=>{let ce,ge;const Ae=te[b.id];if(Ae)ce=Ae.col*E+E/2+x[0],ge=Ae.row*z+z/2+x[1];else{for(;aD(le,oe);)XN(re,oe);ce=oe.col*E+E/2+x[0],ge=oe.row*z+z/2+x[1],YN(le,oe),XN(re,oe)}b.data.x=ce,b.data.y=ge},YW=(b,x,E)=>{try{const z=Sx.mul(Sx.pow(x,2),-.5),te=z.mean("row"),re=z.mean("column"),oe=z.mean();z.add(oe).subRowVector(te).subColumnVector(re);const le=new IN(z),ce=Sx.sqrt(le.diagonalMatrix).diagonal();return le.leftSingularVectors.toJSON().map(ge=>Sx.mul([ge],[ce]).toJSON()[0].splice(0,b))}catch(z){const te=[];for(let re=0;re{const E=Object.assign(Object.assign({},QW),x),{positions:z,iterations:te,width:re,k:oe,speed:le=100,strictRadial:ce,focusIdx:ge,radii:Ae=[],nodeSizeFunc:Me}=E,Ue=b.getAllNodes(),Xe=[],$e=re/10;for(let rt=0;rt{Xe[pt]={x:0,y:0}}),qW(Ue,z,Xe,oe,Ae,Me),$W(z,Xe,le,ce,ge,$e,re,Ae);return z},qW=(b,x,E,z,te,re)=>{x.forEach((oe,le)=>{E[le]={x:0,y:0},x.forEach((ce,ge)=>{if(le===ge||te[le]!==te[ge])return;let Ae=oe.x-ce.x,Me=oe.y-ce.y,Ue=Math.sqrt(Ae*Ae+Me*Me);if(Ue===0){Ue=1;const Xe=le>ge?1:-1;Ae=.01*Xe,Me=.01*Xe}if(Ue{const ce=re||oe/10;return z&&x.forEach((ge,Ae)=>{const Me=b[Ae].x-b[te].x,Ue=b[Ae].y-b[te].y,Xe=Math.sqrt(Me*Me+Ue*Ue);let $e=Ue/Xe,rt=-Me/Xe;const ot=Math.sqrt(ge.x*ge.x+ge.y*ge.y);let pt=Math.acos(($e*ge.x+rt*ge.y)/ot);pt>Math.PI/2&&(pt-=Math.PI/2,$e*=-1,rt*=-1);const yt=Math.cos(pt)*ot;ge.x=$e*yt,ge.y=rt*yt}),b.forEach((ge,Ae)=>{if(Ae===te)return;const Me=Math.sqrt(x[Ae].x*x[Ae].x+x[Ae].y*x[Ae].y);if(Me>0&&Ae!==te){const Ue=Math.min(ce*(E/XW),Me);if(ge.x+=x[Ae].x/Me*Ue,ge.y+=x[Ae].y/Me*Ue,z){let Xe=ge.x-b[te].x,$e=ge.y-b[te].y;const rt=Math.sqrt(Xe*Xe+$e*$e);Xe=Xe/rt*le[Ae],$e=$e/rt*le[Ae],ge.x=b[te].x+Xe,ge.y=b[te].y+$e}}}),b},eU={maxIteration:1e3,focusNode:null,unitRadius:null,linkDistance:50,preventOverlap:!1,strictRadial:!0,maxPreventOverlapIteration:200,sortStrength:10};class tU{constructor(x={}){this.options=x,this.id="radial",this.options=Object.assign(Object.assign({},eU),x)}execute(x,E){return(0,wn.mG)(this,void 0,void 0,function*(){return this.genericRadialLayout(!1,x,E)})}assign(x,E){return(0,wn.mG)(this,void 0,void 0,function*(){yield this.genericRadialLayout(!0,x,E)})}genericRadialLayout(x,E,z){return(0,wn.mG)(this,void 0,void 0,function*(){const te=Object.assign(Object.assign({},this.options),z),{width:re,height:oe,center:le,focusNode:ce,unitRadius:ge,nodeSize:Ae,nodeSpacing:Me,strictRadial:Ue,preventOverlap:Xe,maxPreventOverlapIteration:$e,sortBy:rt,linkDistance:ot=50,sortStrength:pt=10,maxIteration:yt=1e3}=te,Ct=E.getAllNodes(),zt=E.getAllEdges(),Wt=!re&&typeof window!="undefined"?window.innerWidth:re,Ht=!oe&&typeof window!="undefined"?window.innerHeight:oe,Qt=le||[Wt/2,Ht/2];if(!(Ct!=null&&Ct.length)||Ct.length===1)return JE(E,x,Qt);let Gt=Ct[0];if(nc(ce)){for(let fo=0;foQt[0]?Qt[0]:Wt-Qt[0],Nr=Ht-Qt[1]>Qt[1]?Qt[1]:Ht-Qt[1];er===0&&(er=Wt/2),Nr===0&&(Nr=Ht/2);const ei=Math.min(er,Nr),Ar=Math.max(...vr),Sr=[],Ir=ge||ei/Ar;vr.forEach((fo,Uo)=>{Sr[Uo]=fo*Ir});const si=nU(Ct,kn,ot,Sr,Ir,rt,pt),Cr=rU(si),wi=YW(ot,si,ot);let Mo=wi.map(([fo,Uo])=>({x:(isNaN(fo)?Math.random()*ot:fo)-wi[vn][0],y:(isNaN(Uo)?Math.random()*ot:Uo)-wi[vn][1]}));this.run(yt,Mo,Cr,si,Sr,vn);let Po;if(Xe){Po=Y5(Ae,Me);const fo={nodes:Ct,nodeSizeFunc:Po,positions:Mo,radii:Sr,height:Ht,width:Wt,strictRadial:!!Ue,focusIdx:vn,iterations:$e||200,k:Mo.length/4.5};Mo=JW(E,fo)}const eo=[];return Mo.forEach((fo,Uo)=>{const pa=L0(Ct[Uo]);pa.data.x=fo.x+Qt[0],pa.data.y=fo.y+Qt[1],eo.push(pa)}),x&&eo.forEach(fo=>E.mergeNodeData(fo.id,{x:fo.data.x,y:fo.data.y})),{nodes:eo,edges:zt}})}run(x,E,z,te,re,oe){for(let le=0;le<=x;le++){const ce=le/x;this.oneIteration(ce,E,re,te,z,oe)}}oneIteration(x,E,z,te,re,oe){const le=1-x;E.forEach((ce,ge)=>{const Ae=BN(ce,{x:0,y:0}),Me=Ae===0?0:1/Ae;if(ge===oe)return;let Ue=0,Xe=0,$e=0;E.forEach((ot,pt)=>{if(ge===pt)return;const yt=BN(ce,ot),Ct=yt===0?0:1/yt,zt=te[pt][ge];$e+=re[ge][pt],Ue+=re[ge][pt]*(ot.x+zt*(ce.x-ot.x)*Ct),Xe+=re[ge][pt]*(ot.y+zt*(ce.y-ot.y)*Ct)});const rt=z[ge]===0?0:1/z[ge];$e*=le,$e+=x*rt*rt,Ue*=le,Ue+=x*rt*ce.x*Me,ce.x=Ue/$e,Xe*=le,Xe+=x*rt*ce.y*Me,ce.y=Xe/$e})}}const nU=(b,x,E,z,te,re,oe)=>{if(!b)return[];const le=[];if(x){const ce={};x.forEach((ge,Ae)=>{const Me=[];ge.forEach((Ue,Xe)=>{var $e,rt;if(Ae===Xe)Me.push(0);else if(z[Ae]===z[Xe])if(re==="data")Me.push(Ue*(Math.abs(Ae-Xe)*oe)/(z[Ae]/te));else if(re){let ot,pt;if(ce[b[Ae].id])ot=ce[b[Ae].id];else{const yt=(re==="id"?b[Ae].id:($e=b[Ae].data)===null||$e===void 0?void 0:$e[re])||0;nc(yt)?ot=yt.charCodeAt(0):ot=yt,ce[b[Ae].id]=ot}if(ce[b[Xe].id])pt=ce[b[Xe].id];else{const yt=(re==="id"?b[Xe].id:(rt=b[Xe].data)===null||rt===void 0?void 0:rt[re])||0;nc(yt)?pt=yt.charCodeAt(0):pt=yt,ce[b[Xe].id]=pt}Me.push(Ue*(Math.abs(ot-pt)*oe)/(z[Ae]/te))}else Me.push(Ue*E/(z[Ae]/te));else{const ot=(E+te)/2;Me.push(Ue*ot)}}),le.push(Me)})}return le},rU=b=>{const x=b.length,E=b[0].length,z=[];for(let te=0;te{let E=-1;return b.forEach((z,te)=>{z.id===x&&(E=te)}),Math.max(E,0)},oU=(b,x,E)=>{const z=b.length;for(let te=0;te{let E=0;for(let z=0;zE?b[x][z]:E);return E},sU={center:[0,0],width:300,height:300};class lU{constructor(x={}){this.options=x,this.id="random",this.options=Object.assign(Object.assign({},sU),x)}execute(x,E){return(0,wn.mG)(this,void 0,void 0,function*(){return this.genericRandomLayout(!1,x,E)})}assign(x,E){return(0,wn.mG)(this,void 0,void 0,function*(){yield this.genericRandomLayout(!0,x,E)})}genericRandomLayout(x,E,z){return(0,wn.mG)(this,void 0,void 0,function*(){const te=Object.assign(Object.assign({},this.options),z),{center:re,width:oe,height:le}=te,ce=E.getAllNodes(),ge=.9,Ae=!oe&&typeof window!="undefined"?window.innerWidth:oe,Me=!le&&typeof window!="undefined"?window.innerHeight:le,Ue=re||[Ae/2,Me/2],Xe=[];return ce&&ce.forEach(rt=>{Xe.push({id:rt.id,data:{x:(Math.random()-.5)*ge*Ae+Ue[0],y:(Math.random()-.5)*ge*Me+Ue[1]}})}),x&&Xe.forEach(rt=>E.mergeNodeData(rt.id,{x:rt.data.x,y:rt.data.y})),{nodes:Xe,edges:E.getAllEdges()}})}}function uU(b){var x,E,z,te=b||1;function re(le,ce){++x>te&&(z=E,oe(1),++x),E[le]=ce}function oe(le){x=0,E=Object.create(null),le||(z=Object.create(null))}return oe(),{clear:oe,has:function(le){return E[le]!==void 0||z[le]!==void 0},get:function(le){var ce=E[le];if(ce!==void 0)return ce;if((ce=z[le])!==void 0)return re(le,ce),ce},set:function(le,ce){E[le]!==void 0?E[le]=ce:re(le,ce)}}}var sD=new Map;function lD(b,x,E){E===void 0&&(E=128);var z=function(){for(var te=[],re=0;re2))return x[0]}formatSize(x){const E=typeof x=="function"?x:()=>x;return z=>P0(E(z))}doLayout(x,E){const{hGap:z,getRibSep:te,vGap:re,nodeSize:oe,height:le}=E,{model:ce}=this.context,ge=this.formatSize(oe);let Ae=ge(x)[0]+te(x);const Me=(Ct,zt=0)=>{var Wt;return zt+=z*((Ct.children||[]).length+1),(Wt=Ct.children)===null||Wt===void 0||Wt.forEach(Ht=>{var Qt;(Qt=ce.getNodeLikeDatum(Ht).children)===null||Qt===void 0||Qt.forEach(vn=>{const Sn=ce.getNodeLikeDatum(vn);zt=Me(Sn,zt)})}),zt},Ue=Ct=>{if(Ct.depth===1)return Ae;const zt=ce.getParentData(Ct.id,"tree");if(_S(Ct)){const Wt=ce.getParentData(zt.id,"tree"),Ht=rt(Ct)-rt(Wt);return Ue(zt)+Ht*z/re}else{const Wt=(zt.children||[]).indexOf(Ct.id),Ht=ce.getNodeData((zt.children||[]).slice(Wt));return Xe(zt)-Ht.reduce((Qt,Gt)=>Qt+Me(Gt),0)-ge(zt)[0]/2}},Xe=lD(Ct=>{if(uD(Ct))return ge(Ct)[0]/2;const zt=ce.getParentData(Ct.id,"tree");if(_S(Ct))return Ue(Ct)+Me(Ct)+ge(Ct)[0]/2;{const Wt=rt(Ct)-rt(zt),Ht=z/re;return Ue(Ct)+Wt*Ht}},Ct=>Ct.id),$e=Ct=>rt(ce.getParentData(Ct,"tree")),rt=lD(Ct=>{if(uD(Ct))return le/2;if(_S(Ct)){const zt=ce.getParentData(Ct.id,"tree"),Wt=zt.children.indexOf(Ct.id);if(Wt===0)return $e(zt.id)+re;const Ht=ce.getNodeLikeDatum(zt.children[Wt-1]);if(uy(Ht.children))return rt(Ht)+re;const Qt=ce.getDescendantsData(Ht.id);return Math.max(...Qt.map(Gt=>_S(Gt)?$e(Gt.id):rt(Gt)))+re}else{if(uy(Ct.children))return $e(Ct.id)+re;const zt=ce.getNodeLikeDatum(Ct.children.slice(-1)[0]);if(uy(zt.children))return rt(zt)+re;const Wt=ce.getDescendantsData(Ct.id).slice(-1)[0];return(_S(Wt)?$e(Wt.id):rt(Wt))+re}},Ct=>Ct.id);let ot=0;const pt={nodes:[],edges:[]},yt=Ct=>{var zt;(zt=Ct.children)===null||zt===void 0||zt.forEach(vn=>yt(ce.getNodeLikeDatum(vn)));const Wt=rt(Ct),Ht=Xe(Ct);if(pt.nodes.push({id:Ct.id,x:Ht,y:Wt}),uD(Ct))return;const Qt=ce.getRelatedEdgesData(Ct.id,"in")[0],Gt=[Ue(Ct),_S(Ct)?Wt:$e(Ct.id)];pt.edges.push({id:Ji(Qt),controlPoints:[Gt],relatedNodeId:Ct.id}),ot=Math.max(ot,Ht+te(Ct)),Ct.depth===1&&(Ae=ot)};return yt(x),pt}placeAlterative(x,E){const z=(E.children||[]).filter((le,ce)=>ce%2!==0);if(z.length===0)return x;const{model:te}=this.context,re=x.nodes.find(le=>le.id===E.id).y,oe=le=>{const ce=te.getAncestorsData(le,"tree");if(uy(ce))return!1;const ge=ce.length===1?le:ce[ce.length-2].id;return z.includes(ge)};x.nodes.forEach(le=>{oe(le.id)&&(le.y=2*re-le.y)}),x.edges.forEach(le=>{oe(le.relatedNodeId)&&(le.controlPoints=le.controlPoints.map(ce=>[ce[0],2*re-ce[1]]))})}rightToLeft(x,E){return x.nodes.forEach(z=>z.x=E.width-z.x),x.edges.forEach(z=>{z.controlPoints=z.controlPoints.map(te=>[E.width-te[0],te[1]])}),x}execute(x,E){return cU(this,void 0,void 0,function*(){const z=Object.assign(Object.assign(Object.assign({},jM.defaultOptions),this.options),E),{direction:te,nodeSize:re}=z,oe=this.getRoot();if(!oe)return x;const le=this.formatSize(re);z.vGap||(z.vGap=Math.max(...(x.nodes||[]).map(Ue=>le(Ue)[1]))),z.hGap||(z.hGap=Math.max(...(x.nodes||[]).map(Ue=>le(Ue)[0])));let ce=this.doLayout(oe,z);this.placeAlterative(ce,oe),te==="RL"&&(ce=this.rightToLeft(ce,z));const{model:ge}=this.context,Ae=[],Me=[];return ce.nodes.forEach(Ue=>{const{id:Xe,x:$e,y:rt}=Ue,ot=ge.getNodeLikeDatum(Xe);Ae.push(QN(ot,{x:$e,y:rt}))}),ce.edges.forEach(Ue=>{const{id:Xe,controlPoints:$e}=Ue,rt=ge.getEdgeDatum(Xe);Me.push(QN(rt,{controlPoints:$e}))}),{nodes:Ae,edges:Me}})}}jM.defaultOptions={direction:"RL",getRibSep:()=>60};const QN=(b,x)=>Object.assign(Object.assign({},b),{style:Object.assign(Object.assign({},b.style||{}),x)}),uD=b=>b.depth===0,_S=b=>(b.depth||(b.depth=0))%2===0;var hU=function(b,x,E,z){function te(re){return re instanceof E?re:new E(function(oe){oe(re)})}return new(E||(E=Promise))(function(re,oe){function le(Ae){try{ge(z.next(Ae))}catch(Me){oe(Me)}}function ce(Ae){try{ge(z.throw(Ae))}catch(Me){oe(Me)}}function ge(Ae){Ae.done?re(Ae.value):te(Ae.value).then(le,ce)}ge((z=z.apply(b,x||[])).next())})};class WM extends wM{constructor(){super(...arguments),this.id="snake"}formatSize(x,E){const z=typeof E=="function"?E:()=>E;return x.reduce((te,re)=>{const[oe,le]=P0(z(re))||[0,0];return[Math.max(te[0],oe),Math.max(te[1],le)]},[0,0])}validate(x){const{nodes:E=[],edges:z=[]}=x,te={},re={},oe={};E.forEach(Ue=>{te[Ue.id]=0,re[Ue.id]=0,oe[Ue.id]=[]}),z.forEach(Ue=>{te[Ue.target]++,re[Ue.source]++,oe[Ue.source].push(Ue.target)});const le=new Set,ce=Ue=>{le.has(Ue)||(le.add(Ue),oe[Ue].forEach(ce))};if(ce(E[0].id),le.size!==E.length)return!1;const ge=E.filter(Ue=>te[Ue.id]===0),Ae=E.filter(Ue=>re[Ue.id]===0);return!(ge.length!==1||Ae.length!==1||E.filter(Ue=>te[Ue.id]===1&&re[Ue.id]===1).length!==E.length-2)}execute(x,E){return hU(this,void 0,void 0,function*(){var z;if(!this.validate(x))return x;const{nodeSize:te,padding:re,sortBy:oe,cols:le,colGap:ce,rowGap:ge,clockwise:Ae,width:Me,height:Ue}=Object.assign({},WM.defaultOptions,this.options,E),[Xe,$e,rt,ot]=am(re),pt=this.formatSize(x.nodes||[],te),yt=Math.ceil((x.nodes||[]).length/le);let Ct=ce||(Me-ot-$e-le*pt[0])/(le-1),zt=ge||(Ue-Xe-rt-yt*pt[1])/(yt-1);return(zt===1/0||zt<0)&&(zt=0),(Ct===1/0||Ct<0)&&(Ct=0),{nodes:((oe?(z=x.nodes)===null||z===void 0?void 0:z.sort(oe):dU(x))||[]).map((Qt,Gt)=>{const vn=Math.floor(Gt/le),Sn=Gt%le,kn=Ae?vn%2===0?Sn:le-1-Sn:vn%2===0?le-1-Sn:Sn,Kn=ot+kn*(pt[0]+Ct)+pt[0]/2,vr=Xe+vn*(pt[1]+zt)+pt[1]/2;return{id:Qt.id,style:{x:Kn,y:vr}}})}})}}WM.defaultOptions={padding:0,cols:5,clockwise:!0};function dU(b){const{nodes:x=[],edges:E=[]}=b,z={},te={};x.forEach(le=>{z[le.id]=0,te[le.id]=[]}),E.forEach(le=>{z[le.target]++,te[le.source].push(le.target)});const re=[],oe=[];for(x.forEach(le=>{z[le.id]===0&&re.push(le.id)});re.length>0;){const le=re.shift(),ce=x.find(ge=>ge.id===le);oe.push(ce),te[le].forEach(ge=>{z[ge]--,z[ge]===0&&re.push(ge)})}return oe}const fU=["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)"],gU=["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)"],pU=["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)"],vU=["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)"],mU=["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 yU=function(b,x,E){if(!nf(b)&&!TS(b))return b;var z=E;return cO(b,function(te,re){z=x(z,te,re)}),z},xU=yU,cD=function(b,x){return xU(b,function(E,z,te){return x.includes(te)||(E[te]=z),E},{})};class Fg extends u5{}function zS(b,x=!0,E){const z=document.createElement("div");return z.setAttribute("class",`g6-${b}`),Object.assign(z.style,{position:"absolute",display:"block"}),x&&Object.assign(z.style,{position:"unset",gridArea:"1 / 1 / 2 / 2",inset:"0px",height:"100%",width:"100%",overflow:"hidden",pointerEvents:"none"}),E&&Object.assign(z.style,E),z}function hD(b,x="div",E={},z="",te=document.body){const re=document.getElementById(b);re&&re.remove();const oe=document.createElement(x);return oe.innerHTML=z,oe.id=b,Object.assign(oe.style,E),te.appendChild(oe),oe}var EU=function(b,x,E,z){function te(re){return re instanceof E?re:new E(function(oe){oe(re)})}return new(E||(E=Promise))(function(re,oe){function le(Ae){try{ge(z.next(Ae))}catch(Me){oe(Me)}}function ce(Ae){try{ge(z.throw(Ae))}catch(Me){oe(Me)}}function ge(Ae){Ae.done?re(Ae.value):te(Ae.value).then(le,ce)}ge((z=z.apply(b,x||[])).next())})};class UM extends Fg{constructor(x,E){super(x,Object.assign({},UM.defaultOptions,E)),this.$element=zS("background"),this.context.canvas.getContainer().prepend(this.$element),this.update(E)}update(x){const E=Object.create(null,{update:{get:()=>super.update}});return EU(this,void 0,void 0,function*(){E.update.call(this,x),Object.assign(this.$element.style,cD(this.options,["key","type"]))})}destroy(){super.destroy(),this.$element.remove()}}UM.defaultOptions={transition:"background 0.5s",backgroundSize:"cover",zIndex:"-1"};function dD(b,x,E,z,te,re){const oe=b,le=x,ce=E-oe,ge=z-le;let Ae=te-oe,Me=re-le,Ue=Ae*ce+Me*ge,Xe=0;Ue<=0?Xe=0:(Ae=ce-Ae,Me=ge-Me,Ue=Ae*ce+Me*ge,Ue<=0?Xe=0:Xe=Ue*Ue/(ce*ce+ge*ge));const $e=Ae*Ae+Me*Me-Xe;return $e<0?0:$e}function Cx(b,x,E,z){return(b-E)*(b-E)+(x-z)*(x-z)}function JN(b,x,E,z,te){return Cx(b,x,E,z)E;if(b===0)return Math.round;const x=Math.pow(10,b);return E=>Math.round(E*x)/x}function qN(b){const x=Math.min(b.x1,b.x2),E=Math.max(b.x1,b.x2),z=Math.min(b.y1,b.y2),te=Math.max(b.y1,b.y2);return{x,y:z,x2:E,y2:te,width:E-x,height:te-z}}class $f{constructor(x,E,z,te){this.x1=x,this.y1=E,this.x2=z,this.y2=te}equals(x){return this.x1===x.x1&&this.y1===x.y1&&this.x2===x.x2&&this.y2===x.y2}draw(x){x.moveTo(this.x1,this.y1),x.lineTo(this.x2,this.y2)}toString(){return`Line(from=(${this.x1},${this.y1}),to=(${this.x2},${this.y2}))`}static from(x){return new $f(x.x1,x.y1,x.x2,x.y2)}cuts(x,E){if(this.y1===this.y2||Ethis.y1&&E>=this.y2||x>this.x1&&x>=this.x2)return!1;if(xthis.x2+z)return!1}else if(xthis.x1+z)return!1;if(this.y1this.y2+z)return!1}else if(Ethis.y1+z)return!1;return!0}}var Td;(function(b){b[b.POINT=1]="POINT",b[b.PARALLEL=2]="PARALLEL",b[b.COINCIDENT=3]="COINCIDENT",b[b.NONE=4]="NONE"})(Td||(Td={}));class fD{constructor(x,E=0,z=0){this.state=x,this.x=E,this.y=z}}function GM(b,x){const E=(x.x2-x.x1)*(b.y1-x.y1)-(x.y2-x.y1)*(b.x1-x.x1),z=(b.x2-b.x1)*(b.y1-x.y1)-(b.y2-b.y1)*(b.x1-x.x1),te=(x.y2-x.y1)*(b.x2-b.x1)-(x.x2-x.x1)*(b.y2-b.y1);if(te){const re=E/te,oe=z/te;return 0<=re&&re<=1&&0<=oe&&oe<=1?new fD(Td.POINT,b.x1+re*(b.x2-b.x1),b.y1+re*(b.y2-b.y1)):new fD(Td.NONE)}return new fD(E===0||z===0?Td.COINCIDENT:Td.PARALLEL)}function $N(b,x){const E=(x.x2-x.x1)*(b.y1-x.y1)-(x.y2-x.y1)*(b.x1-x.x1),z=(b.x2-b.x1)*(b.y1-x.y1)-(b.y2-b.y1)*(b.x1-x.x1),te=(x.y2-x.y1)*(b.x2-b.x1)-(x.x2-x.x1)*(b.y2-b.y1);if(te){const re=E/te,oe=z/te;if(0<=re&&re<=1&&0<=oe&&oe<=1)return re}return Number.POSITIVE_INFINITY}function SU(b,x){function E(te,re,oe,le){let ce=$N(x,new $f(te,re,oe,le));return ce=Math.abs(ce-.5),ce>=0&&ce<=1?1:0}let z=E(b.x,b.y,b.x2,b.y);return z+=E(b.x,b.y,b.x,b.y2),z>1||(z+=E(b.x,b.y2,b.x2,b.y2),z>1)?!0:(z+=E(b.x2,b.y,b.x2,b.y2),z>0)}var Dd;(function(b){b[b.LEFT=0]="LEFT",b[b.TOP=1]="TOP",b[b.RIGHT=2]="RIGHT",b[b.BOTTOM=3]="BOTTOM"})(Dd||(Dd={}));function HM(b,x,E){const z=new Set;return b.width<=0?(z.add(Dd.LEFT),z.add(Dd.RIGHT)):xb.x+b.width&&z.add(Dd.RIGHT),b.height<=0?(z.add(Dd.TOP),z.add(Dd.BOTTOM)):Eb.y+b.height&&z.add(Dd.BOTTOM),z}function eB(b,x){let E=x.x1,z=x.y1;const te=x.x2,re=x.y2,oe=Array.from(HM(b,te,re));if(oe.length===0)return!0;let le=HM(b,E,z);for(;le.size!==0;){for(const ce of oe)if(le.has(ce))return!1;if(le.has(Dd.RIGHT)||le.has(Dd.LEFT)){let ce=b.x;le.has(Dd.RIGHT)&&(ce+=b.width),z=z+(ce-E)*(re-z)/(te-E),E=ce}else{let ce=b.y;le.has(Dd.BOTTOM)&&(ce+=b.height),E=E+(ce-z)*(te-E)/(re-z),z=ce}le=HM(b,E,z)}return!0}function wU(b,x){let E=Number.POSITIVE_INFINITY,z=0;function te(re,oe,le,ce){let ge=$N(x,new $f(re,oe,le,ce));ge=Math.abs(ge-.5),ge>=0&&ge<=1&&(z++,ge1||(te(b.x,b.y2,b.x2,b.y2),z>1)?E:(te(b.x2,b.y,b.x2,b.y2),z===0?-1:E)}function CU(b,x){let E=0;const z=GM(b,new $f(x.x,x.y,x.x2,x.y));E+=z.state===Td.POINT?1:0;const te=GM(b,new $f(x.x,x.y,x.x,x.y2));E+=te.state===Td.POINT?1:0;const re=GM(b,new $f(x.x,x.y2,x.x2,x.y2));E+=re.state===Td.POINT?1:0;const oe=GM(b,new $f(x.x2,x.y,x.x2,x.y2));return E+=oe.state===Td.POINT?1:0,{top:z,left:te,bottom:re,right:oe,count:E}}class rp{constructor(x,E,z,te){this.x=x,this.y=E,this.width=z,this.height=te}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(x){return new rp(x.x,x.y,x.width,x.height)}equals(x){return this.x===x.x&&this.y===x.y&&this.width===x.width&&this.height===x.height}clone(){return new rp(this.x,this.y,this.width,this.height)}add(x){const E=Math.min(this.x,x.x),z=Math.min(this.y,x.y),te=Math.max(this.x2,x.x+x.width),re=Math.max(this.y2,x.y+x.height);this.x=E,this.y=z,this.width=te-E,this.height=re-z}addPoint(x){const E=Math.min(this.x,x.x),z=Math.min(this.y,x.y),te=Math.max(this.x2,x.x),re=Math.max(this.y2,x.y);this.x=E,this.y=z,this.width=te-E,this.height=re-z}toString(){return`Rectangle[x=${this.x}, y=${this.y}, w=${this.width}, h=${this.height}]`}draw(x){x.rect(this.x,this.y,this.width,this.height)}containsPt(x,E){return x>=this.x&&x<=this.x2&&E>=this.y&&E<=this.y2}get area(){return this.width*this.height}intersects(x){return this.area<=0||x.width<=0||x.height<=0?!1:x.x+x.width>this.x&&x.y+x.height>this.y&&x.x=this.width?this.width-1:x}boundY(x){return x=this.height?this.height-1:x}scaleX(x){return this.boundX(Math.floor((x-this.pixelX)/this.pixelGroup))}scaleY(x){return this.boundY(Math.floor((x-this.pixelY)/this.pixelGroup))}scale(x){const E=this.scaleX(x.x),z=this.scaleY(x.y),te=this.boundX(Math.ceil((x.x+x.width-this.pixelX)/this.pixelGroup)),re=this.boundY(Math.ceil((x.y+x.height-this.pixelY)/this.pixelGroup)),oe=te-E,le=re-z;return new rp(E,z,oe,le)}invertScaleX(x){return Math.round(x*this.pixelGroup+this.pixelX)}invertScaleY(x){return Math.round(x*this.pixelGroup+this.pixelY)}addPadding(x,E){const z=Math.ceil(E/this.pixelGroup),te=this.boundX(x.x-z),re=this.boundY(x.y-z),oe=this.boundX(x.x2+z),le=this.boundY(x.y2+z),ce=oe-te,ge=le-re;return new rp(te,re,ce,ge)}get(x,E){return x<0||E<0||x>=this.width||E>=this.height?Number.NaN:this.area[x+E*this.width]}inc(x,E,z){x<0||E<0||x>=this.width||E>=this.height||(this.area[x+E*this.width]+=z)}set(x,E,z){x<0||E<0||x>=this.width||E>=this.height||(this.area[x+E*this.width]=z)}incArea(x,E){if(x.width<=0||x.height<=0||E===0)return;const z=this.width,te=x.width,re=Math.max(0,x.i),oe=Math.max(0,x.j),le=Math.min(x.i+x.width,z),ce=Math.min(x.j+x.height,this.height);if(!(ce<=0||le<=0||re>=z||ce>=this.height))for(let ge=oe;geMath.min(oe,le),Number.POSITIVE_INFINITY),te=this.area.reduce((oe,le)=>Math.max(oe,le),Number.NEGATIVE_INFINITY),re=oe=>(oe-z)/(te-z);x.scale(this.pixelGroup,this.pixelGroup);for(let oe=0;oeE?"black":"white",x.fillRect(te,re,1,1)}x.restore()}}}function tB(b,x){const E=z=>({x:z.x-x,y:z.y-x,width:z.width+2*x,height:z.height+2*x});return Array.isArray(b)?b.map(E):E(b)}function nB(b,x,E){return rB(Object.assign(qN(b),{distSquare:(z,te)=>dD(b.x1,b.y1,b.x2,b.y2,z,te)}),x,E)}function rB(b,x,E){const z=tB(b,E),te=x.scale(z),re=x.createSub(te,z);return PU(re,x,E,(oe,le)=>b.distSquare(oe,le)),re}function PU(b,x,E,z){const te=E*E;for(let re=0;re{const le=te.slice(0,oe);return TU(x,re,le,E,z)}).flat()}function TU(b,x,E,z,te){const re=zh(x.cx,x.cy),oe=OU(re,E,b);if(oe==null)return[];const le=new $f(re.x,re.y,oe.cx,oe.cy),ce=DU(le,b,z,te);return IU(ce,b)}function DU(b,x,E,z){const te=[],re=[];re.push(b);let oe=!0;for(let le=0;le0;){const ce=re.pop(),ge=iB(x,ce),Ae=ge?CU(ce,ge):null;if(!ge||!Ae||Ae.count!==2){oe||te.push(ce);continue}let Me=z,Ue=ZM(ge,Me,Ae,!0),Xe=bx(Ue,re)||bx(Ue,te),$e=KM(Ue,x);for(;!Xe&&$e&&Me>=1;)Me/=1.5,Ue=ZM(ge,Me,Ae,!0),Xe=bx(Ue,re)||bx(Ue,te),$e=KM(Ue,x);if(Ue&&!Xe&&!$e&&(re.push(new $f(ce.x1,ce.y1,Ue.x,Ue.y)),re.push(new $f(Ue.x,Ue.y,ce.x2,ce.y2)),oe=!0),oe)continue;Me=z,Ue=ZM(ge,Me,Ae,!1);let rt=bx(Ue,re)||bx(Ue,te);for($e=KM(Ue,x);!rt&&$e&&Me>=1;)Me/=1.5,Ue=ZM(ge,Me,Ae,!1),rt=bx(Ue,re)||bx(Ue,te),$e=KM(Ue,x);Ue&&!rt&&(re.push(new $f(ce.x1,ce.y1,Ue.x,Ue.y)),re.push(new $f(Ue.x,Ue.y,ce.x2,ce.y2)),oe=!0),oe||te.push(ce)}for(;re.length>0;)te.push(re.pop());return te}function IU(b,x){const E=[];for(;b.length>0;){const z=b.pop();if(b.length===0){E.push(z);break}const te=b.pop(),re=new $f(z.x1,z.y1,te.x2,te.y2);iB(x,re)?(E.push(z),b.push(te)):b.push(re)}return E}function OU(b,x,E){let z=Number.POSITIVE_INFINITY;return x.reduce((te,re)=>{const oe=Cx(b.x,b.y,re.cx,re.cy);if(oe>z)return te;const le=new $f(b.x,b.y,re.cx,re.cy),ce=BU(E,le);return oe*(ce+1)*(ce+1){x+=z.cx,E+=z.cy}),x/=b.length,E/=b.length,b.map(z=>{const te=x-z.cx,re=E-z.cy,oe=te*te+re*re;return[z,oe]}).sort((z,te)=>z[1]-te[1]).map(z=>z[0])}function KM(b,x){return x.some(E=>E.containsPt(b.x,b.y))}function bx(b,x){return x.some(E=>!!(JN(E.x1,E.y1,b.x,b.y,.001)||JN(E.x2,E.y2,b.x,b.y,.001)))}function iB(b,x){let E=Number.POSITIVE_INFINITY,z=null;for(const te of b){if(!eB(te,x))continue;const re=wU(te,x);re>=0&&reeB(z,x)&&SU(z,x)?E+1:E,0)}function ZM(b,x,E,z){const te=E.top,re=E.left,oe=E.bottom,le=E.right;if(z){if(re.state===Td.POINT){if(te.state===Td.POINT)return zh(b.x-x,b.y-x);if(oe.state===Td.POINT)return zh(b.x-x,b.y2+x);const Ue=b.width*b.height;return b.width*((re.y-b.y+(le.y-b.y))*.5)le.y?zh(b.x-x,b.y-x):zh(b.x2+x,b.y-x):re.yoe.x?zh(b.x-x,b.y-x):zh(b.x-x,b.y2+x):te.xle.y?zh(b.x2+x,b.y2+x):zh(b.x-x,b.y2+x):re.yoe.x?zh(b.x2+x,b.y2+x):zh(b.x2+x,b.y-x):te.xz)return!1}return!0}function kU(b=0){return x=>{if(b<0||x.length<3)return x;const E=[];let z=0;const te=b*b;for(;z{if(oe.length<3)return oe;const le=[],ce=oe.closed,ge=oe.length+3-1+(ce?0:2);le.push(re(oe,2-(ce?0:2),0));for(let Ae=2-(ce?0:2);Ae{let E=b,z=x.length;if(E>1)for(z=Math.floor(x.length/E);z<3&&E>1;)E-=1,z=Math.floor(x.length/E);const te=[];for(let re=0,oe=0;oe=z?this.closed?this.get(x-z):this.points[z-1]:this.points[E]}get length(){return this.points.length}toString(x=1/0){const E=this.points;if(E.length===0)return"";const z=typeof x=="function"?x:AU(x);let te="M";for(const re of E)te+=`${z(re.x)},${z(re.y)} L`;return te=te.slice(0,-1),this.closed&&(te+=" Z"),te}draw(x){const E=this.points;if(E.length!==0){x.beginPath(),x.moveTo(E[0].x,E[0].y);for(const z of E)x.lineTo(z.x,z.y);this.closed&&x.closePath()}}sample(x){return zU(x)(this)}simplify(x){return kU(x)(this)}bSplines(x){return _U(x)(this)}apply(x){return x(this)}containsElements(x){const E=bU(this.points);return E?x.every(z=>E.containsPt(z.cx,z.cy)&&this.withinArea(z.cx,z.cy)):!1}withinArea(x,E){if(this.length===0)return!1;let z=0;const te=this.points[0],re=new $f(te.x,te.y,te.x,te.y);for(let oe=1;oex?Ae+Me:Ae}function re(ce,ge){let Ae=n2;return Ae=te(ce,ge,Ae,1),Ae=te(ce+1,ge,Ae,2),Ae=te(ce,ge+1,Ae,4),Ae=te(ce+1,ge+1,Ae,8),Number.isNaN(Ae)?-1:Ae}let oe=YM;function le(ce,ge){let Ae=ce,Me=ge,Ue=b.invertScaleX(Ae),Xe=b.invertScaleY(Me);for(let $e=0;$eoB(z.raw,x));return E<0?!1:(this.members.splice(E,1),this.dirty.add(dm.MEMBERS),!0)}removeNonMember(x){const E=this.nonMembers.findIndex(z=>oB(z.raw,x));return E<0?!1:(this.nonMembers.splice(E,1),this.dirty.add(dm.NON_MEMBERS),!0)}removeEdge(x){const E=this.edges.findIndex(z=>z.obj.equals(x));return E<0?!1:(this.edges.splice(E,1),this.dirty.add(dm.NON_MEMBERS),!0)}pushNonMember(...x){if(x.length!==0){this.dirty.add(dm.NON_MEMBERS);for(const E of x)this.nonMembers.push({raw:E,obj:r2(E)?VM.from(E):rp.from(E),area:null})}}pushEdge(...x){if(x.length!==0){this.dirty.add(dm.EDGES);for(const E of x)this.edges.push({raw:E,obj:$f.from(E),area:null})}}update(){const x=this.dirty.has(dm.MEMBERS),E=this.dirty.has(dm.NON_MEMBERS);let z=this.dirty.has(dm.EDGES);this.dirty.clear();const te=this.members.map(ge=>ge.obj);if(this.o.virtualEdges&&(x||E)){const ge=this.nonMembers.map(Ue=>Ue.obj),Ae=LU(te,ge,this.o.maxRoutingIterations,this.o.morphBuffer),Me=new Map(this.virtualEdges.map(Ue=>[Ue.obj.toString(),Ue.area]));this.virtualEdges=Ae.map(Ue=>{var Xe;return{raw:Ue,obj:Ue,area:(Xe=Me.get(Ue.toString()))!==null&&Xe!==void 0?Xe:null}}),z=!0}let re=!1;if(x||z){const ge=this.virtualEdges.concat(this.edges).map(Xe=>Xe.obj),Ae=GU(te,ge),Me=Math.max(this.o.edgeR1,this.o.nodeR1)+this.o.morphBuffer,Ue=rp.from(tB(Ae,Me));Ue.equals(this.activeRegion)||(re=!0,this.activeRegion=Ue)}if(re){const ge=Math.ceil(this.activeRegion.width/this.o.pixelGroup),Ae=Math.ceil(this.activeRegion.height/this.o.pixelGroup);this.activeRegion.x!==this.potentialArea.pixelX||this.activeRegion.y!==this.potentialArea.pixelY?(this.potentialArea=$E.fromPixelRegion(this.activeRegion,this.o.pixelGroup),this.members.forEach(Me=>Me.area=null),this.nonMembers.forEach(Me=>Me.area=null),this.edges.forEach(Me=>Me.area=null),this.virtualEdges.forEach(Me=>Me.area=null)):(ge!==this.potentialArea.width||Ae!==this.potentialArea.height)&&(this.potentialArea=$E.fromPixelRegion(this.activeRegion,this.o.pixelGroup))}const oe=new Map,le=ge=>{if(ge.area){const Ae=`${ge.obj.width}x${ge.obj.height}x${ge.obj instanceof rp?"R":"C"}`;oe.set(Ae,ge.area)}},ce=ge=>{if(ge.area)return;const Ae=`${ge.obj.width}x${ge.obj.height}x${ge.obj instanceof rp?"R":"C"}`;if(oe.has(Ae)){const Ue=oe.get(Ae);ge.area=this.potentialArea.copy(Ue,{x:ge.obj.x-this.o.nodeR1,y:ge.obj.y-this.o.nodeR1});return}const Me=ge.obj instanceof rp?MU(ge.obj,this.potentialArea,this.o.nodeR1):rB(ge.obj,this.potentialArea,this.o.nodeR1);ge.area=Me,oe.set(Ae,Me)};this.members.forEach(le),this.nonMembers.forEach(le),this.members.forEach(ce),this.nonMembers.forEach(ge=>{this.activeRegion.intersects(ge.obj)?ce(ge):ge.area=null}),this.edges.forEach(ge=>{ge.area||(ge.area=nB(ge.obj,this.potentialArea,this.o.edgeR1))}),this.virtualEdges.forEach(ge=>{ge.area||(ge.area=nB(ge.obj,this.potentialArea,this.o.edgeR1))})}drawMembers(x){for(const E of this.members)E.obj.draw(x)}drawNonMembers(x){for(const E of this.nonMembers)E.obj.draw(x)}drawEdges(x){for(const E of this.edges)E.obj.draw(x)}drawPotentialArea(x,E=!0){this.potentialArea.draw(x,E)}compute(){if(this.members.length===0)return new eA([]);this.dirty.size>0&&this.update();const{o:x,potentialArea:E}=this,z=this.members.map(le=>le.area),te=this.virtualEdges.concat(this.edges).map(le=>le.area),re=this.nonMembers.filter(le=>le.area!=null).map(le=>le.area),oe=this.members.map(le=>le.obj);return UU(E,z,te,re,le=>le.containsElements(oe),x)}}function UU(b,x,E,z,te,re={}){const oe=Object.assign({},QM,re);let le=oe.threshold,ce=oe.memberInfluenceFactor,ge=oe.edgeInfluenceFactor,Ae=oe.nonMemberInfluenceFactor;const Me=(oe.nodeR0-oe.nodeR1)*(oe.nodeR0-oe.nodeR1),Ue=(oe.edgeR0-oe.edgeR1)*(oe.edgeR0-oe.edgeR1);for(let Xe=0;Xe0)Ae*=.8;else break}return new eA([])}function GU(b,x){if(b.length===0)return new rp(0,0,0,0);const E=rp.from(b[0]);for(const z of b)E.add(z);for(const z of x)E.add(qN(z));return E}function Bq(b,x=[],E=[],z={}){if(b.length===0)return new eA([]);const te=new pD(z);return te.pushMember(...b),te.pushNonMember(...x),te.pushEdge(...E),te.compute()}var HU=function(b,x){var E={};for(var z in b)Object.prototype.hasOwnProperty.call(b,z)&&x.indexOf(z)<0&&(E[z]=b[z]);if(b!=null&&typeof Object.getOwnPropertySymbols=="function")for(var te=0,z=Object.getOwnPropertySymbols(b);te{const{style:z,bubbleSetOptions:te}=this.parseOptions();Vd(this.bubbleSetOptions,te)||this.init(),this.bubbleSetOptions=Object.assign({},te);const re=Object.assign(Object.assign({},z),{d:this.getPath()});this.shape?this.shape.update(re):(this.shape=new GC({style:re}),this.context.canvas.appendChild(this.shape))},this.updateBubbleSetsPath=z=>{if(!this.shape)return;const te=Ji(z.data);[...this.options.members,...this.options.avoidMembers].includes(te)&&this.shape.update(Object.assign(Object.assign({},this.parseOptions().style),{d:this.getPath(te)}))},this.getPath=z=>{const{graph:te}=this.context,re=this.options.members,oe=[...this.members.keys()],le=this.options.avoidMembers,ce=[...this.avoidMembers.keys()];if(!z&&Vd(re,oe)&&Vd(le,ce))return this.path;const{enter:ge=[],exit:Ae=[]}=gx(oe,re,ot=>ot),{enter:Me=[],exit:Ue=[]}=gx(ce,le,ot=>ot);z&&(Ae.push(z),ge.push(z));const Xe=(ot,pt,yt)=>{ot.forEach(Ct=>{const zt=yt?this.members:this.avoidMembers,Wt=yt?"pushMember":"pushNonMember",Ht=yt?"removeMember":"removeNonMember";if(pt){let Qt;te.getElementType(Ct)==="edge"?([Qt]=KU(te,Ct),this.bubbleSets.pushEdge(Qt)):([Qt]=VU(te,Ct),this.bubbleSets[Wt](Qt)),zt.set(Ct,Qt)}else{const Qt=zt.get(Ct);Qt&&(te.getElementType(Ct)==="edge"?this.bubbleSets.removeEdge(Qt):this.bubbleSets[Ht](Qt),zt.delete(Ct))}})};Xe(Ae,!1,!0),Xe(ge,!0,!0),Xe(Ue,!1,!1),Xe(Me,!0,!1);const rt=this.bubbleSets.compute().sample(8).simplify(0).bSplines().simplify(0);return this.path=Q3(rt.points.map(Rg)),this.path},this.bindEvents(),this.bubbleSets=new pD(this.options)}bindEvents(){this.context.graph.on(es.AFTER_RENDER,this.drawBubbleSets),this.context.graph.on(es.AFTER_ELEMENT_UPDATE,this.updateBubbleSetsPath)}init(){this.bubbleSets=new pD(this.options),this.members=new Map,this.avoidMembers=new Map}parseOptions(){const x=this.options,{type:E,key:z,members:te,avoidMembers:re}=x,oe=HU(x,["type","key","members","avoidMembers"]),le=Object.keys(oe).reduce((ce,ge)=>(ge in QM?ce.bubbleSetOptions[ge]=oe[ge]:ce.style[ge]=oe[ge],ce),{style:{},bubbleSetOptions:{}});return Object.assign({type:E,key:z,members:te,avoidMembers:re},le)}addMember(x){const E=Array.isArray(x)?x:[x];E.some(z=>this.options.avoidMembers.includes(z))&&(this.options.avoidMembers=this.options.avoidMembers.filter(z=>!E.includes(z))),this.options.members=[...new Set([...this.options.members,...E])],this.drawBubbleSets()}removeMember(x){const E=Array.isArray(x)?x:[x];this.options.members=this.options.members.filter(z=>!E.includes(z)),this.drawBubbleSets()}updateMember(x){this.options.members=_s(x)?x(this.options.members):x,this.drawBubbleSets()}getMember(){return this.options.members}addAvoidMember(x){const E=Array.isArray(x)?x:[x];E.some(z=>this.options.members.includes(z))&&(this.options.members=this.options.members.filter(z=>!E.includes(z))),this.options.avoidMembers=[...new Set([...this.options.avoidMembers,...E])],this.drawBubbleSets()}removeAvoidMember(x){const E=Array.isArray(x)?x:[x];this.options.avoidMembers.some(z=>E.includes(z))&&(this.options.avoidMembers=this.options.avoidMembers.filter(z=>!E.includes(z)),this.drawBubbleSets())}updateAvoidMember(x){this.options.avoidMembers=Array.isArray(x)?x:[x],this.drawBubbleSets()}getAvoidMember(){return this.options.avoidMembers}destroy(){this.context.graph.off(es.AFTER_RENDER,this.drawBubbleSets),this.context.graph.off(es.AFTER_ELEMENT_UPDATE,this.updateBubbleSetsPath),this.shape.destroy(),super.destroy()}}JM.defaultOptions=Object.assign({members:[],avoidMembers:[],fill:"lightblue",fillOpacity:.2,stroke:"blue",strokeOpacity:.2},QM);const VU=(b,x)=>(Array.isArray(x)?x:[x]).map(z=>{const te=b.getElementRenderBounds(z);return new rp(te.min[0],te.min[1],ay(te),sy(te))}),KU=(b,x)=>(Array.isArray(x)?x:[x]).map(z=>{const te=b.getEdgeData(z),re=b.getElementPosition(te.source),oe=b.getElementPosition(te.target);return $f.from({x1:re[0],y1:re[1],x2:oe[0],y2:oe[1]})});class Rq extends null{constructor(x,E){super(x,E),this.setOptions=z=>{const te={cameraType:"setType",near:"setNear",far:"setFar",fov:"setFov",aspect:"setAspect",projectionMode:"setProjectionMode",distance:"setDistance",minDistance:"setMinDistance",maxDistance:"setMaxDistance",roll:"setRoll",elevation:"setElevation",azimuth:"setAzimuth"},re=(oe,le)=>{switch(oe){case"projectionMode":return le==="perspective"?1:0;case"cameraType":return{orbiting:0,exploring:1,tracking:2}[le];case"aspect":return typeof le=="number"?le:this.getCanvasAspect();default:return le}};Object.entries(te).forEach(([oe,le])=>{const ce=z[oe];if(ce!==void 0){const ge=re(oe,ce);this.context.canvas.getCamera()[le](ge)}})},this.bindEvents()}update(x){this.setOptions(x),super.update(x)}bindEvents(){this.context.graph.once(GraphEvent.BEFORE_DRAW,()=>this.setOptions(this.options))}getCanvasAspect(){const[x,E]=this.context.viewport.getCanvasSize();return x/E}}function ZU(b){return`
    ${b.map(x=>`
  • ${x.name}
  • `).join("")}
`}const YU=` .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 aB=function(b,x,E,z){function te(re){return re instanceof E?re:new E(function(oe){oe(re)})}return new(E||(E=Promise))(function(re,oe){function le(Ae){try{ge(z.next(Ae))}catch(Me){oe(Me)}}function ce(Ae){try{ge(z.throw(Ae))}catch(Me){oe(Me)}}function ge(Ae){Ae.done?re(Ae.value):te(Ae.value).then(le,ce)}ge((z=z.apply(b,x||[])).next())})};class qM extends Fg{constructor(x,E){super(x,Object.assign({},qM.defaultOptions,E)),this.targetElement=null,this.onTriggerEvent=z=>{var te;(te=z.preventDefault)===null||te===void 0||te.call(z),this.show(z)},this.onMenuItemClick=z=>{const{onClick:te,trigger:re}=this.options;if(z.target instanceof HTMLElement&&z.target.className.includes("g6-contextmenu-li")){const oe=z.target.getAttribute("value");te==null||te(oe,z.target,this.targetElement),this.hide()}re!=="click"&&this.hide()},this.initElement(),this.update(E)}initElement(){this.$element=zS("contextmenu",!1,{zIndex:"99"});const{className:x}=this.options;x&&this.$element.classList.add(x),this.context.canvas.getContainer().appendChild(this.$element),hD("g6-contextmenu-css","style",{},YU,document.head)}show(x){return aB(this,void 0,void 0,function*(){const{enable:E,offset:z}=this.options;if(typeof E=="function"&&!E(x)||!E){this.hide();return}const te=yield this.getDOMContent(x);te instanceof HTMLElement?(this.$element.innerHTML="",this.$element.appendChild(te)):this.$element.innerHTML=te;const re=this.context.graph.getCanvas().getContainer().getBoundingClientRect();this.$element.style.left=`${x.client.x-re.left+z[0]}px`,this.$element.style.top=`${x.client.y-re.top+z[1]}px`,this.$element.style.display="block",this.targetElement=x.target})}hide(){this.$element.style.display="none",this.targetElement=null}update(x){this.unbindEvents(),super.update(x),this.bindEvents()}destroy(){this.unbindEvents(),super.destroy(),this.$element.remove()}getDOMContent(x){return aB(this,void 0,void 0,function*(){const{getContent:E,getItems:z}=this.options;return z?ZU(yield z(x)):yield E(x)})}bindEvents(){const{graph:x}=this.context,{trigger:E}=this.options;x.on(`canvas:${E}`,this.onTriggerEvent),x.on(`node:${E}`,this.onTriggerEvent),x.on(`edge:${E}`,this.onTriggerEvent),x.on(`combo:${E}`,this.onTriggerEvent),document.addEventListener("click",this.onMenuItemClick)}unbindEvents(){const{graph:x}=this.context,{trigger:E}=this.options;x.off(`canvas:${E}`,this.onTriggerEvent),x.off(`node:${E}`,this.onTriggerEvent),x.off(`edge:${E}`,this.onTriggerEvent),x.off(`combo:${E}`,this.onTriggerEvent),document.removeEventListener("click",this.onMenuItemClick)}}qM.defaultOptions={trigger:"contextmenu",offset:[4,4],loadingContent:'
Loading...
',getContent:()=>"It is a empty context menu.",enable:()=>!0};class $M extends Fg{constructor(x,E){super(x,Object.assign({},$M.defaultOptions,E)),this.edgeBundles={},this.edgePoints={},this.onBundle=()=>{const{model:z,element:te}=this.context,re=z.getEdgeData();this.divideEdges(this.options.divisions);const{cycles:oe,iterRate:le,divRate:ce}=this.options;let{lambda:ge,divisions:Ae,iterations:Me}=this.options;for(let Ue=0;Ue{var ot;if(rt.source===rt.target)return;const pt=Ji(rt);$e[pt]=this.getEdgeForces(rt,Ae,ge);for(let yt=0;yt{const Xe=Ji(Ue),$e=te.getElement(Xe);$e==null||$e.update({d:I5(this.edgePoints[Xe])})})},this.bindEvents()}get nodeMap(){const x=this.context.model.getNodeData();return Object.fromEntries(x.map(E=>[Ji(E),UE(Rf(E))]))}divideEdges(x){this.context.model.getEdgeData().forEach(z=>{var te;const re=Ji(z);(te=this.edgePoints)[re]||(te[re]=[]);const oe=this.nodeMap[z.source],le=this.nodeMap[z.target];if(x===1)this.edgePoints[re].push(oe),this.edgePoints[re].push(um(cu(oe,le),2)),this.edgePoints[re].push(le);else{const ge=(this.edgePoints[re].length===0?Lh(oe,le):$U(this.edgePoints[re]))/(x+1);let Ae=ge;const Me=[oe];for(let Ue=1;UeAe;){const ot=Ae/rt,pt=cu(Xe,qy(Yc($e,Xe),ot));Me.push(pt),rt-=Ae,Ae=ge}Ae-=rt}Me.push(le),this.edgePoints[re]=Me}})}getVectorPosition(x){const E=this.nodeMap[x.source],z=this.nodeMap[x.target],[te,re]=Yc(z,E),oe=Lh(E,z);return{source:E,target:z,vx:te,vy:re,length:oe}}measureEdgeCompatibility(x,E){const z=this.getVectorPosition(x),te=this.getVectorPosition(E),re=XU(z,te),oe=QU(z,te),le=JU(z,te),ce=qU(z,te);return re*oe*le*ce}getEdgeBundles(){const x={},E=this.options.bundleThreshold,z=this.context.model.getEdgeData();return z.forEach((te,re)=>{z.forEach((oe,le)=>{var ce,ge;if(le<=re)return;this.measureEdgeCompatibility(te,oe)>=E&&(x[ce=Ji(te)]||(x[ce]=[]),x[Ji(te)].push(oe),x[ge=Ji(oe)]||(x[ge]=[]),x[Ji(oe)].push(te))})}),x}getSpringForce(x,E){const{pre:z,cur:te,next:re}=x;return qy(Yc(cu(z,re),qy(te,2)),E)}getElectrostaticForce(x,E){uy(this.edgeBundles)&&(this.edgeBundles=this.getEdgeBundles());const z=this.edgeBundles[Ji(E)];let te=[0,0];return z==null||z.forEach(re=>{const oe=this.edgePoints[Ji(re)][x],le=this.edgePoints[Ji(E)][x],ce=Yc(oe,le),ge=Lh(oe,le);te=cu(te,qy(ce,1/ge))}),te}getEdgeForces(x,E,z){const te=this.nodeMap[x.source],re=this.nodeMap[x.target],oe=this.options.K/(Lh(te,re)*(E+1)),le=[[0,0]],ce=Ji(x);for(let ge=1;geMath.abs(L_([b.vx,b.vy],[x.vx,x.vy])/(b.length*x.length)),QU=(b,x)=>{const E=(b.length+x.length)/2;return 2/(E/Math.min(b.length,x.length)+Math.max(b.length,x.length)/E)},JU=(b,x)=>{const E=(b.length+x.length)/2,z=um(cu(b.source,b.target),2),te=um(cu(x.source,x.target),2);return E/(E+Lh(z,te))},sB=(b,x)=>{if(x.source[0]===x.target[0])return[x.source[0],b[1]];if(x.source[1]===x.target[1])return[b[0],x.source[1]];const E=(x.source[1]-x.target[1])/(x.source[0]-x.target[0]),z=(E*E*x.source[0]+E*(b[1]-x.source[1])+b[0])/(E*E+1),te=E*(z-x.source[0])+x.source[1];return[z,te]},lB=(b,x)=>{const E=sB(x.source,b),z=sB(x.target,b),te=um(cu(E,z),2),re=um(cu(b.source,b.target),2);return Lh(E,z)===0?0:Math.max(0,1-2*Lh(re,te)/Lh(E,z))},qU=(b,x)=>Math.min(lB(b,x),lB(x,b)),$U=b=>{let x=0;for(let E=1;E{if(this.options.trigger==="drag"&&this.isLensOn)return;const te=Rg(z.canvas);this.renderLens(te),this.renderFocusElements()},this.renderLens=z=>{const te=Object.assign({},eG,this.options.style);this.isLensOn||(this.lens=new VE({style:te}),this.canvas.appendChild(this.lens)),Object.assign(te,cm(z),{size:this.r*2}),this.lens.update(te)},this.getFilterData=()=>{const{filter:z}=this.options,{model:te}=this.context,re=te.getData();if(!z)return re;const{nodes:oe,edges:le,combos:ce}=re;return{nodes:oe.filter(ge=>z(Ji(ge),"node")),edges:le.filter(ge=>z(Ji(ge),"edge")),combos:ce.filter(ge=>z(Ji(ge),"combo"))}},this.getFocusElements=z=>{const{nodes:te,edges:re}=this.getFilterData(),oe=te.filter(ge=>Lh(Rf(ge),z)Ji(ge)),ce=re.filter(ge=>{const{source:Ae,target:Me}=ge,Ue=le.includes(Ae),Xe=le.includes(Me);switch(this.options.nodeType){case"both":return Ue&&Xe;case"either":return Ue!==Xe;case"source":return Ue&&!Xe;case"target":return!Ue&&Xe;default:return!1}});return{nodes:oe,edges:ce}},this.renderFocusElements=()=>{const{element:z,graph:te}=this.context;if(!this.isLensOn)return;const re=this.lens.getCenter(),{nodes:oe,edges:le}=this.getFocusElements(re),ce=new Set,ge=Ae=>{const Me=Ji(Ae);ce.add(Me);const Ue=z.getElement(Me);if(!Ue)return;const Xe=this.shapes.get(Me)||Ue.cloneNode();Xe.setPosition(Ue.getPosition()),Xe.id=Ue.id,this.shapes.has(Me)?Object.entries(Ue.attributes).forEach(([ot,pt])=>{Xe.style[ot]!==pt&&(Xe.style[ot]=pt)}):(this.canvas.appendChild(Xe),this.shapes.set(Me,Xe));const $e=te.getElementType(Me),rt=this.getElementStyle($e,Ae);Xe.update(rt)};oe.forEach(ge),le.forEach(ge),this.shapes.forEach((Ae,Me)=>{ce.has(Me)||(Ae.destroy(),this.shapes.delete(Me))})},this.scaleRByWheel=z=>{var te;this.options.preventDefault&&z.preventDefault();const{clientX:re,clientY:oe,deltaX:le,deltaY:ce}=z,{graph:ge,canvas:Ae}=this.context,Me=ge.getCanvasByClient([re,oe]),Ue=(te=this.lens)===null||te===void 0?void 0:te.getCenter();if(!this.isLensOn||Lh(Me,Ue)>this.r)return;const{maxR:Xe,minR:$e}=this.options,rt=le+ce>0?1/(1-uB):1-uB,ot=Math.min(...Ae.getSize())/2;this.r=Math.max($e||0,Math.min(Xe||ot,this.r*rt)),this.renderLens(Ue),this.renderFocusElements()},this.isLensDragging=!1,this.onDragStart=z=>{var te;const re=Rg(z.canvas),oe=(te=this.lens)===null||te===void 0?void 0:te.getCenter();!this.isLensOn||Lh(re,oe)>this.r||(this.isLensDragging=!0)},this.onDrag=z=>{if(!this.isLensDragging)return;const te=Rg(z.canvas);this.renderLens(te),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(x,E){const z=x==="node"?this.options.nodeStyle:this.options.edgeStyle;return typeof z=="function"?z(E):z}get graphDom(){return this.context.graph.getCanvas().getContextService().getDomElement()}bindEvents(){var x;const{graph:E}=this.context,{trigger:z,scaleRBy:te}=this.options,re=E.getCanvas().getLayer();["click","drag"].includes(z)&&re.addEventListener(Zo.CLICK,this.onEdgeFilter),z==="pointermove"?re.addEventListener(Zo.POINTER_MOVE,this.onEdgeFilter):z==="drag"&&(re.addEventListener(Zo.DRAG_START,this.onDragStart),re.addEventListener(Zo.DRAG,this.onDrag),re.addEventListener(Zo.DRAG_END,this.onDragEnd)),te==="wheel"&&((x=this.graphDom)===null||x===void 0||x.addEventListener(Zo.WHEEL,this.scaleRByWheel,{passive:!1}))}unbindEvents(){var x;const{graph:E}=this.context,{trigger:z,scaleRBy:te}=this.options,re=E.getCanvas().getLayer();["click","drag"].includes(z)&&re.removeEventListener(Zo.CLICK,this.onEdgeFilter),z==="pointermove"?re.removeEventListener(Zo.POINTER_MOVE,this.onEdgeFilter):z==="drag"&&(re.removeEventListener(Zo.DRAG_START,this.onDragStart),re.removeEventListener(Zo.DRAG,this.onDrag),re.removeEventListener(Zo.DRAG_END,this.onDragEnd)),te==="wheel"&&((x=this.graphDom)===null||x===void 0||x.removeEventListener(Zo.WHEEL,this.scaleRByWheel))}update(x){this.unbindEvents(),super.update(x),this.bindEvents()}destroy(){this.unbindEvents(),this.isLensOn&&this.lens.destroy(),this.shapes.forEach((x,E)=>{x.destroy(),this.shapes.delete(E)}),super.destroy()}}eL.defaultOptions={trigger:"pointermove",r:60,nodeType:"both",filter:()=>!0,style:{lineWidth:2},nodeStyle:{label:!1},edgeStyle:{label:!0},scaleRBy:"wheel",preventDefault:!0};const tG={fill:"#ccc",fillOpacity:.1,lineWidth:2,stroke:"#000",strokeOpacity:.8,labelFontSize:12},cB=.05,hB=.1;class tL extends Fg{constructor(x,E){super(x,Object.assign({},tL.defaultOptions,E)),this.r=this.options.r,this.d=this.options.d,this.onCreateFisheye=z=>{if(this.options.trigger==="drag"&&this.isLensOn)return;const te=Rg(z.canvas);this.onMagnify(te)},this.onMagnify=z=>{z.some(isNaN)||(this.renderLens(z),this.renderFocusElements())},this.renderLens=z=>{const te=Object.assign({},tG,this.options.style);this.isLensOn||(this.lens=new VE({style:te}),this.canvas.appendChild(this.lens)),Object.assign(te,cm(z),{size:this.r*2,label:this.options.showDPercent,labelText:this.getDPercent()}),this.lens.update(te)},this.getDPercent=()=>{const{minD:z,maxD:te}=this.options;return`${Math.round((this.d-z)/(te-z)*100)}%`},this.prevMagnifiedStyleMap=new Map,this.prevOriginStyleMap=new Map,this.renderFocusElements=()=>{if(!this.isLensOn)return;const{graph:z}=this.context,te=this.lens.getCenter(),re=(this.d+1)*this.r,oe=new Map,le=new Map;z.getNodeData().forEach(ge=>{const Ae=Rf(ge),Me=Lh(Ae,te);if(Me>this.r)return;const Ue=re*Me/(this.d*Me+this.r),[Xe,$e]=Ae,[rt,ot]=te,pt=(Xe-rt)/Me,yt=($e-ot)/Me,Ct=[rt+Ue*pt,ot+Ue*yt],zt=Ji(ge),Wt=this.getNodeStyle(ge),Ht=ZE(z.getElementRenderStyle(zt),Object.keys(Wt));oe.set(zt,Object.assign(Object.assign({},cm(Ct)),Wt)),le.set(zt,Object.assign(Object.assign({},cm(Ae)),Ht))}),this.updateStyle(oe,le)},this.getNodeStyle=z=>{const{nodeStyle:te}=this.options;return typeof te=="function"?te(z):te},this.updateStyle=(z,te)=>{const{graph:re,element:oe}=this.context,{enter:le,exit:ce,keep:ge}=gx(Array.from(this.prevMagnifiedStyleMap.keys()),Array.from(z.keys()),Ue=>Ue),Ae=new Set,Me=(Ue,Xe)=>{const $e=oe.getElement(Ue);$e==null||$e.update(Xe),re.getRelatedEdgesData(Ue).forEach(rt=>{Ae.add(Ji(rt))})};[...le,...ge].forEach(Ue=>{Me(Ue,z.get(Ue))}),ce.forEach(Ue=>{Me(Ue,this.prevOriginStyleMap.get(Ue)),this.prevOriginStyleMap.delete(Ue)}),Ae.forEach(Ue=>{const Xe=oe.getElement(Ue);Xe==null||Xe.update({})}),this.prevMagnifiedStyleMap=z,te.forEach((Ue,Xe)=>{this.prevOriginStyleMap.has(Xe)||this.prevOriginStyleMap.set(Xe,Ue)})},this.isWheelValid=z=>{if(this.options.preventDefault&&z.preventDefault(),!this.isLensOn)return!1;const{clientX:te,clientY:re}=z,oe=this.context.graph.getCanvasByClient([te,re]),le=this.lens.getCenter();return!(Lh(oe,le)>this.r)},this.scaleR=z=>{const{maxR:te,minR:re}=this.options,oe=z?1/(1-cB):1-cB,le=Math.min(...this.context.canvas.getSize())/2;this.r=Math.max(re||0,Math.min(te||le,this.r*oe))},this.scaleD=z=>{const{maxD:te,minD:re}=this.options,oe=z?this.d+hB:this.d-hB;this.d=Math.max(re,Math.min(te,oe))},this.scaleRByWheel=z=>{if(!this.isWheelValid(z))return;const{deltaX:te,deltaY:re}=z;this.scaleR(te+re>0);const oe=this.lens.getCenter();this.onMagnify(oe)},this.scaleDByWheel=z=>{if(!this.isWheelValid(z))return;const{deltaX:te,deltaY:re}=z;this.scaleD(te+re>0);const oe=this.lens.getCenter();this.onMagnify(oe)},this.isDragValid=z=>{if(this.options.preventDefault&&z.preventDefault(),!this.isLensOn)return!1;const te=Rg(z.canvas),re=this.lens.getCenter();return!(Lh(te,re)>this.r)},this.isLensDragging=!1,this.onDragStart=z=>{this.isDragValid(z)&&(this.isLensDragging=!0)},this.onDrag=z=>{if(!this.isLensDragging)return;const te=Rg(z.canvas);this.onMagnify(te)},this.onDragEnd=()=>{this.isLensDragging=!1},this.scaleRByDrag=z=>{if(!this.isLensDragging)return;const{dx:te,dy:re}=z;this.scaleR(te-re>0);const oe=this.lens.getCenter();this.onMagnify(oe)},this.scaleDByDrag=z=>{if(!this.isLensDragging)return;const{dx:te,dy:re}=z;this.scaleD(te-re>0);const oe=this.lens.getCenter();this.onMagnify(oe)},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 x;const{graph:E}=this.context,{trigger:z,scaleRBy:te,scaleDBy:re}=this.options,oe=E.getCanvas().getLayer();if(["click","drag"].includes(z)&&oe.addEventListener(Zo.CLICK,this.onCreateFisheye),z==="pointermove"&&oe.addEventListener(Zo.POINTER_MOVE,this.onCreateFisheye),z==="drag"||te==="drag"||re==="drag"){oe.addEventListener(Zo.DRAG_START,this.onDragStart),oe.addEventListener(Zo.DRAG_END,this.onDragEnd);const le=z==="drag"?this.onDrag:te==="drag"?this.scaleRByDrag:this.scaleDByDrag;oe.addEventListener(Zo.DRAG,le)}if(te==="wheel"||re==="wheel"){const le=te==="wheel"?this.scaleRByWheel:this.scaleDByWheel;(x=this.graphDom)===null||x===void 0||x.addEventListener(Zo.WHEEL,le,{passive:!1})}}unbindEvents(){var x;const{graph:E}=this.context,{trigger:z,scaleRBy:te,scaleDBy:re}=this.options,oe=E.getCanvas().getLayer();if(["click","drag"].includes(z)&&oe.removeEventListener(Zo.CLICK,this.onCreateFisheye),z==="pointermove"&&oe.removeEventListener(Zo.POINTER_MOVE,this.onCreateFisheye),z==="drag"||te==="drag"||re==="drag"){oe.removeEventListener(Zo.DRAG_START,this.onDragStart),oe.removeEventListener(Zo.DRAG_END,this.onDragEnd);const le=z==="drag"?this.onDrag:te==="drag"?this.scaleRByDrag:this.scaleDByDrag;oe.removeEventListener(Zo.DRAG,le)}if(te==="wheel"||re==="wheel"){const le=te==="wheel"?this.scaleRByWheel:this.scaleDByWheel;(x=this.graphDom)===null||x===void 0||x.removeEventListener(Zo.WHEEL,le)}}update(x){this.unbindEvents(),super.update(x),this.bindEvents()}destroy(){var x;this.unbindEvents(),this.isLensOn&&((x=this.lens)===null||x===void 0||x.destroy()),this.prevMagnifiedStyleMap.clear(),this.prevOriginStyleMap.clear(),super.destroy()}}tL.defaultOptions={trigger:"pointermove",r:120,d:1.5,maxD:5,minD:0,showDPercent:!0,style:{},nodeStyle:{label:!0},preventDefault:!0};class nL extends Fg{constructor(x,E){super(x,Object.assign({},nL.defaultOptions,E)),this.$el=this.context.canvas.getContainer(),this.graphSize=[0,0],this.onFullscreenChange=()=>{var z,te,re,oe;const le=!!document.fullscreenElement;this.options.autoFit&&this.setGraphSize(le),le?(te=(z=this.options).onEnter)===null||te===void 0||te.call(z):(oe=(re=this.options).onExit)===null||oe===void 0||oe.call(re)},this.shortcut=new DS(x.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:x=[],exit:E=[]}=this.options.trigger;this.shortcut.bind(x,this.request),this.shortcut.bind(E,this.exit),["webkitfullscreenchange","mozfullscreenchange","fullscreenchange","MSFullscreenChange"].forEach(te=>{document.addEventListener(te,this.onFullscreenChange,!1)})}unbindEvents(){this.shortcut.unbindAll(),["webkitfullscreenchange","mozfullscreenchange","fullscreenchange","MSFullscreenChange"].forEach(E=>{document.removeEventListener(E,this.onFullscreenChange,!1)})}setGraphSize(x=!0){var E,z;let te,re;x?(te=((E=globalThis.screen)===null||E===void 0?void 0:E.width)||0,re=((z=globalThis.screen)===null||z===void 0?void 0:z.height)||0,this.graphSize=this.context.graph.getSize()):[te,re]=this.graphSize,this.context.graph.setSize(te,re),this.context.graph.render()}request(){document.fullscreenElement||!nG()||this.$el.requestFullscreen().catch(x=>{n0.warn(`Error attempting to enable full-screen: ${x.message} (${x.name})`)})}exit(){document.fullscreenElement&&document.exitFullscreen()}update(x){this.unbindEvents(),super.update(x),this.bindEvents()}destroy(){this.exit(),this.style.remove(),super.destroy()}}nL.defaultOptions={trigger:{},autoFit:!0};function nG(){return document.fullscreenEnabled||Reflect.get(document,"webkitFullscreenEnabled")||Reflect.get(document,"mozFullscreenEnabled")||Reflect.get(document,"msFullscreenEnabled")}class rL extends Fg{constructor(x,E){super(x,Object.assign({},rL.defaultOptions,E)),this.$element=zS("grid-line",!0),this.offset=[0,0],this.onTransform=te=>{if(!this.options.follow)return;const{data:{translate:re}}=te;re&&this.updateOffset(re)},this.context.canvas.getContainer().prepend(this.$element),this.updateStyle(),this.bindEvents()}update(x){super.update(x),this.updateStyle()}bindEvents(){const{graph:x}=this.context;x.on(es.AFTER_TRANSFORM,this.onTransform)}updateStyle(){const{size:x,stroke:E,lineWidth:z,border:te,borderLineWidth:re,borderStroke:oe,borderStyle:le}=this.options;Object.assign(this.$element.style,{border:te?`${re}px ${le} ${oe}`:"none",backgroundImage:`linear-gradient(${E} ${z}px, transparent ${z}px), linear-gradient(90deg, ${E} ${z}px, transparent ${z}px)`,backgroundSize:`${x}px ${x}px`,backgroundRepeat:"repeat"})}updateOffset(x){this.offset=D_(cu(this.offset,x),this.options.size),this.$element.style.backgroundPosition=`${this.offset[0]}px ${this.offset[1]}px`}destroy(){this.context.graph.off(es.AFTER_TRANSFORM,this.onTransform),this.$element.remove(),super.destroy()}}rL.defaultOptions={border:!0,borderLineWidth:1,borderStroke:"#eee",borderStyle:"solid",lineWidth:1,size:20,stroke:"#eee"};function vD(b){const x={Added:new Map,Updated:new Map,Removed:new Map};return b.forEach(E=>{const{type:z,value:te}=E,re=Ji(te);if(z==="NodeAdded"||z==="EdgeAdded"||z==="ComboAdded")x.Added.set(re,E);else if(z==="NodeUpdated"||z==="EdgeUpdated"||z==="ComboUpdated")if(x.Added.has(re))x.Added.set(re,{type:z.replace("Updated","Added"),value:te});else if(x.Updated.has(re)){const{original:oe}=x.Updated.get(re);x.Updated.set(re,{type:z,value:te,original:oe})}else x.Removed.has(re)||x.Updated.set(re,E);else(z==="NodeRemoved"||z==="EdgeRemoved"||z==="ComboRemoved")&&(x.Added.has(re)?x.Added.delete(re):(x.Updated.has(re)&&x.Updated.delete(re),x.Removed.set(re,E)))}),[...Array.from(x.Added.values()),...Array.from(x.Updated.values()),...Array.from(x.Removed.values())]}function dB(b){const{NodeAdded:x=[],NodeUpdated:E=[],NodeRemoved:z=[],EdgeAdded:te=[],EdgeUpdated:re=[],EdgeRemoved:oe=[],ComboAdded:le=[],ComboUpdated:ce=[],ComboRemoved:ge=[]}=wP(b,Ae=>Ae.type);return{add:{nodes:x,edges:te,combos:le},update:{nodes:E,edges:re,combos:ce},remove:{nodes:z,edges:oe,combos:ge}}}function fB(b,x){for(const E in b)Sh(b[E])&&!Array.isArray(b[E])&&b[E]!==null?(x[E]||(x[E]={}),fB(b[E],x[E])):x[E]===void 0&&(x[E]=OC(E))}function rG(b,x=!1,E){const z={animation:x,current:{add:{},update:{},remove:{}},original:{add:{},update:{},remove:{}}},{add:te,update:re,remove:oe}=dB(vD(b));return["nodes","edges","combos"].forEach(le=>{re[le]&&re[le].forEach(ce=>{var ge,Ae;const Me=Object.assign({},ce.value);let Ue=Object.assign({},ce.original);if(E){const Xe=E.graph.getElementType(Ji(ce.original)),$e=Xe==="edge"?"stroke":"fill",rt=E.element.getElementComputedStyle(Xe,ce.original);Ue=Object.assign(Object.assign({},ce.original),{style:Object.assign({[$e]:rt[$e]},ce.original.style)})}fB(Me,Ue),(ge=z.current.update)[le]||(ge[le]=[]),z.current.update[le].push(Me),(Ae=z.original.update)[le]||(Ae[le]=[]),z.original.update[le].push(Ue)}),te[le]&&te[le].forEach(ce=>{var ge,Ae;const Me=Object.assign({},ce.value);(ge=z.current.add)[le]||(ge[le]=[]),z.current.add[le].push(Me),(Ae=z.original.remove)[le]||(Ae[le]=[]),z.original.remove[le].push(Me)}),oe[le]&&oe[le].forEach(ce=>{var ge,Ae;const Me=Object.assign({},ce.value);(ge=z.current.remove)[le]||(ge[le]=[]),z.current.remove[le].push(Me),(Ae=z.original.add)[le]||(Ae[le]=[]),z.original.add[le].push(Me)})}),z}class iL extends Fg{constructor(x,E){super(x,Object.assign({},iL.defaultOptions,E)),this.batchChanges=null,this.batchAnimation=!1,this.undoStack=[],this.redoStack=[],this.freezed=!1,this.executeCommand=(te,re=!0)=>{var oe,le,ce;this.freezed=!0,(le=(oe=this.options).executeCommand)===null||le===void 0||le.call(oe,te);const ge=re?te.original:te.current;this.context.graph.addData(ge.add),this.context.graph.updateData(ge.update),this.context.graph.removeData(w3(ge.remove,!1)),(ce=this.context.element)===null||ce===void 0||ce.draw({silence:!0,animation:te.animation}),this.freezed=!1},this.addCommand=te=>{var re;if(!this.freezed){if(te.type===es.AFTER_DRAW){const{dataChanges:oe=[],animation:le=!0}=te.data;if(!((re=this.context.batch)===null||re===void 0)&&re.isBatching){if(!this.batchChanges)return;this.batchChanges.push(oe),this.batchAnimation&&(this.batchAnimation=le);return}this.batchChanges=[oe],this.batchAnimation=le}this.undoStackPush(rG(this.batchChanges.flat(),this.batchAnimation,this.context)),this.notify(cx.ADD,this.undoStack[this.undoStack.length-1])}},this.initBatchCommand=te=>{const{initiate:re}=te.data;this.batchAnimation=!1,re?this.batchChanges=[]:this.undoStack.pop()||(this.batchChanges=null)},this.emitter=new AM;const{graph:z}=this.context;z.on(es.AFTER_DRAW,this.addCommand),z.on(es.BATCH_START,this.initBatchCommand),z.on(es.BATCH_END,this.addCommand)}canUndo(){return this.undoStack.length>0}canRedo(){return this.redoStack.length>0}undo(){var x,E,z,te;const re=this.undoStack.pop();if(re){if(this.executeCommand(re),((E=(x=this.options).beforeAddCommand)===null||E===void 0?void 0:E.call(x,re,!1))===!1)return;this.redoStack.push(re),(te=(z=this.options).afterAddCommand)===null||te===void 0||te.call(z,re,!1),this.notify(cx.UNDO,re)}return this}redo(){const x=this.redoStack.pop();return x&&(this.executeCommand(x,!1),this.undoStackPush(x),this.notify(cx.REDO,x)),this}undoAndCancel(){const x=this.undoStack.pop();return x&&(this.executeCommand(x,!1),this.redoStack=[],this.notify(cx.CANCEL,x)),this}undoStackPush(x){var E,z,te,re;const{stackSize:oe}=this.options;oe!==0&&this.undoStack.length>=oe&&this.undoStack.shift(),((z=(E=this.options).beforeAddCommand)===null||z===void 0?void 0:z.call(E,x,!0))!==!1&&(this.undoStack.push(x),(re=(te=this.options).afterAddCommand)===null||re===void 0||re.call(te,x,!0))}clear(){this.undoStack=[],this.redoStack=[],this.batchChanges=null,this.batchAnimation=!1,this.notify(cx.CLEAR,null)}notify(x,E){this.emitter.emit(x,{cmd:E}),this.emitter.emit(cx.CHANGE,{cmd:E})}on(x,E){this.emitter.on(x,E)}destroy(){const{graph:x}=this.context;x.off(es.AFTER_DRAW,this.addCommand),x.off(es.BATCH_START,this.initBatchCommand),x.off(es.BATCH_END,this.addCommand),this.emitter.off(),super.destroy(),this.undoStack=[],this.redoStack=[]}}iL.defaultOptions={stackSize:0};var iG=Be(76117),oG=Be.n(iG);function aG(b,x,E){if(b.length===1)return sG(b[0],x,E);if(b.length===2)return gB(b,x,E);if(b.length===3){const[z,te,re]=d5(b);if(N3(z,te,re))return gB([z,re],x,E)}switch(E){case"smooth":return uG(b,x);case"sharp":return cG(b,x);case"rounded":default:return lG(b,x)}}const sG=(b,x,E)=>{if(E==="sharp")return[["M",b[0]-x,b[1]-x],["L",b[0]+x,b[1]-x],["L",b[0]+x,b[1]+x],["L",b[0]-x,b[1]+x],["Z"]];const z=[x,x,0,0,0];return[["M",b[0],b[1]-x],["A",...z,b[0],b[1]+x],["A",...z,b[0],b[1]-x]]},gB=(b,x,E)=>{const z=[x,x,0,0,0],te=E==="sharp"?cu(b[0],px($y(Yc(b[0],b[1])),x)):b[0],re=E==="sharp"?cu(b[1],px($y(Yc(b[1],b[0])),x)):b[1],oe=px($y(jP(Yc(te,re),!1)),x),le=px(oe,-1),ce=cu(te,oe),ge=cu(re,oe),Ae=cu(re,le),Me=cu(te,le);return E==="sharp"?[["M",ce[0],ce[1]],["L",ge[0],ge[1]],["L",Ae[0],Ae[1]],["L",Me[0],Me[1]],["Z"]]:[["M",ce[0],ce[1]],["L",ge[0],ge[1]],["A",...z,Ae[0],Ae[1]],["L",Me[0],Me[1]],["A",...z,ce[0],ce[1]]]},lG=(b,x)=>{const E=d5(b).map((le,ce)=>{const ge=(ce-2+b.length)%b.length,Ae=(ce-1+b.length)%b.length,Me=(ce+1)%b.length,Ue=b[ge],Xe=b[Ae],$e=b[Me],rt=Yc(Ue,Xe),ot=Yc(Xe,le),pt=Yc(le,$e),yt=(Qt,Gt)=>c5(Qt,Gt,!0)px($y(jP(Qt,!1)),x),Ht=Wt(ot);return[{p:UE(Ct?cu(Xe,Wt(rt)):cu(Xe,Ht)),concave:Ct&&Xe},{p:UE(zt?cu(le,Wt(pt)):cu(le,Ht)),concave:zt&&le}]}),z=[x,x,0,0,0],te=E.findIndex((le,ce)=>!E[(ce-1+E.length)%E.length][0].concave&&!E[(ce-1+E.length)%E.length][1].concave&&!le[0].concave&&!le[0].concave&&!le[1].concave),re=E.slice(te).concat(E.slice(0,te));let oe=[];return re.flatMap((le,ce)=>{const ge=[],Ae=re[E.length-1];return ce===0&&ge.push(["M",...Ae[1].p]),le[0].concave?oe.push(le[0].p,le[1].p):ge.push(["A",...z,...le[0].p]),le[1].concave?oe.unshift(le[1].p):ge.push(["L",...le[1].p]),oe.length===3&&(ge.pop(),ge.push(["C",...oe.flat()]),oe=[]),ge})},uG=(b,x)=>{const E=d5(b).map((z,te)=>{const re=b[(te+1)%b.length];return{p:z,v:$y(Yc(re,z))}});return E.forEach((z,te)=>{const re=te>0?te-1:b.length-1,oe=E[re].v,le=$y(cu(oe,px(z.v,c5(oe,z.v,!0)z.p))},cG=(b,x)=>{const z=b.map((re,oe)=>{const le=b[oe===0?b.length-1:oe-1],ce=FC(px($y(jP(Yc(le,re),!1)),x));return[cu(le,ce),cu(re,ce)]}).flat();return z.map((re,oe)=>{if(oe%2===0)return null;const le=[z[(oe-1)%z.length],z[oe%z.length]],ce=[z[(oe+1)%z.length],z[(oe+2)%z.length]];return h5(le,ce,!0)}).filter(Boolean).map((re,oe)=>[oe===0?"M":"L",re[0],re[1]]).concat([["Z"]])};var hG=function(b,x){var E={};for(var z in b)Object.prototype.hasOwnProperty.call(b,z)&&x.indexOf(z)<0&&(E[z]=b[z]);if(b!=null&&typeof Object.getOwnPropertySymbols=="function")for(var te=0,z=Object.getOwnPropertySymbols(b);te{if(!this.shape)this.shape=new GC({style:this.getHullStyle()}),this.context.canvas.appendChild(this.shape);else{const z=!Vd(this.optionsCache,this.options);this.shape.update(this.getHullStyle(z))}this.optionsCache=Object.assign({},this.options)},this.updateHullPath=z=>{this.shape&&this.options.members.includes(Ji(z.data))&&this.shape.update({d:this.getHullPath(!0)})},this.getHullPath=(z=!1)=>{const{graph:te}=this.context,re=this.getMember();if(re.length===0)return"";const oe=re.map(ge=>te.getNodeData(ge)),le=oG()(oe.map(Rf),this.options.concavity).slice(1).reverse(),ce=le.flatMap(ge=>oe.filter(Ae=>Vd(Rf(Ae),ge)).map(Ji));return Vd(ce,this.hullMemberIds)&&!z?this.path:(this.hullMemberIds=ce,this.path=aG(le,this.getPadding(),this.options.corner),this.path)},this.bindEvents()}bindEvents(){this.context.graph.on(es.AFTER_RENDER,this.drawHull),this.context.graph.on(es.AFTER_ELEMENT_UPDATE,this.updateHullPath)}getHullStyle(x){const E=this.options,{members:z,padding:te,corner:re}=E,oe=hG(E,["members","padding","corner"]);return Object.assign(Object.assign({},oe),{d:this.getHullPath(x)})}getPadding(){const{graph:x}=this.context;return this.hullMemberIds.reduce((z,te)=>{const{halfExtents:re}=x.getElementRenderBounds(te),oe=Math.max(re[0],re[1]);return Math.max(z,oe)},0)+this.options.padding}addMember(x){const E=Array.isArray(x)?x:[x];this.options.members=[...new Set([...this.options.members,...E])],this.shape.update({d:this.getHullPath()})}removeMember(x){const E=Array.isArray(x)?x:[x];this.options.members=this.options.members.filter(z=>!E.includes(z)),E.some(z=>this.hullMemberIds.includes(z))&&this.shape.update({d:this.getHullPath()})}updateMember(x){this.options.members=_s(x)?x(this.options.members):x,this.shape.update(this.getHullStyle(!0))}getMember(){return this.options.members}destroy(){this.context.graph.off(es.AFTER_DRAW,this.drawHull),this.shape.destroy(),this.hullMemberIds=[],super.destroy()}}oL.defaultOptions={members:[],padding:10,corner:"rounded",concavity:1/0,fill:"lightblue",fillOpacity:.2,labelOpacity:1,stroke:"blue",strokeOpacity:.2};function pB(b,x){x(b),b.children&&b.children.forEach(function(E){E&&pB(E,x)})}function i2(b){aL(b,!0)}function fm(b){aL(b,!1)}function aL(b,x){var E=x?"visible":"hidden";pB(b,function(z){z.attr("visibility",E)})}var dG=5,vB=function(b,x,E,z){E===void 0&&(E=0),z===void 0&&(z=dG),Object.entries(x).forEach(function(te){var re=(0,wn.CR)(te,2),oe=re[0],le=re[1],ce=b;Object.prototype.hasOwnProperty.call(x,oe)&&(le?TS(le)?(TS(b[oe])||(ce[oe]={}),E="A"&&E<="Z"};function iu(b,x,E){E===void 0&&(E=!1);var z={};return Object.entries(b).forEach(function(te){var re=(0,wn.CR)(te,2),oe=re[0],le=re[1];if(!(oe==="className"||oe==="class")){if(sL(oe,"show")&&sL(yB(oe,"show"),x)!==E)oe===mG(x,"show")?z[oe]=le:z[oe.replace(new RegExp(mD(x)),"")]=le;else if(!sL(oe,"show")&&sL(oe,x)!==E){var ce=yB(oe,x);ce==="filter"&&typeof le=="function"||(z[ce]=le)}}}),z}function jS(b,x){return Object.entries(b).reduce(function(E,z){var te=(0,wn.CR)(z,2),re=te[0],oe=te[1];return re.startsWith("show")?E["show".concat(x).concat(re.slice(4))]=oe:E["".concat(x).concat(mD(re))]=oe,E},{})}function i1(b,x){x===void 0&&(x=["x","y","class","className"]);var E=["transform","transformOrigin","anchor","visibility","pointerEvents","zIndex","cursor","clipPath","clipPathTargets","offsetPath","offsetPathTargets","offsetDistance","draggable","droppable"],z={},te={};return Object.entries(b).forEach(function(re){var oe=(0,wn.CR)(re,2),le=oe[0],ce=oe[1];x.includes(le)||(E.indexOf(le)!==-1?te[le]=ce:z[le]=ce)}),[z,te]}var yD=function(b){(0,wn.ZT)(x,b);function x(E){E===void 0&&(E={});var z=E.style,te=(0,wn._T)(E,["style"]);return b.call(this,(0,wn.pi)({style:(0,wn.pi)({text:"",fill:"black",fontFamily:"sans-serif",fontSize:16,fontStyle:"normal",fontVariant:"normal",fontWeight:"normal",lineWidth:1,textAlign:"start",textBaseline:"middle"},z)},te))||this}return Object.defineProperty(x.prototype,"offscreenGroup",{get:function(){return this._offscreen||(this._offscreen=mB(this)),this._offscreen},enumerable:!1,configurable:!0}),x.prototype.disconnectedCallback=function(){var E;(E=this._offscreen)===null||E===void 0||E.destroy()},x}(Hd);function xG(b,x){var E=new Map;return b.forEach(function(z){var te=x(z);E.has(te)||E.set(te,[]),E.get(te).push(z)}),E}function EG(b){throw new Error(b)}var AG=function(){function b(te,re,oe,le,ce,ge,Ae){te===void 0&&(te=null),re===void 0&&(re=null),oe===void 0&&(oe=null),le===void 0&&(le=null),ce===void 0&&(ce=[null,null,null,null,null]),ge===void 0&&(ge=[]),Ae===void 0&&(Ae=[]),x.add(this),this._elements=Array.from(te),this._data=re,this._parent=oe,this._document=le,this._enter=ce[0],this._update=ce[1],this._exit=ce[2],this._merge=ce[3],this._split=ce[4],this._transitions=ge,this._facetElements=Ae}b.prototype.selectAll=function(te){var re=typeof te=="string"?this._parent.querySelectorAll(te):te;return new E(re,null,this._elements[0],this._document)},b.prototype.selectFacetAll=function(te){var re=typeof te=="string"?this._parent.querySelectorAll(te):te;return new E(this._elements,null,this._parent,this._document,void 0,void 0,re)},b.prototype.select=function(te){var re=typeof te=="string"?this._parent.querySelectorAll(te)[0]||null:te;return new E([re],null,re,this._document)},b.prototype.append=function(te){var re=this,oe=typeof te=="function"?te:function(){return re.createElement(te)},le=[];if(this._data!==null){for(var ce=0;ce=this.left&&x<=this.right&&E>=this.top&&E<=this.bottom},b}();function kq(b){var x=b.getRenderBounds(),E=__read(x.min,2),z=E[0],te=E[1],re=__read(x.max,2),oe=re[0],le=re[1],ce=oe-z,ge=le-te;return new ip(z,te,ce,ge)}var gm=function(b,x){var E=function(te){return"".concat(x,"-").concat(te)},z=Object.fromEntries(Object.entries(b).map(function(te){var re=(0,wn.CR)(te,2),oe=re[0],le=re[1],ce=E(le);return[oe,{name:ce,class:".".concat(ce),id:"#".concat(ce),toString:function(){return ce}}]}));return Object.assign(z,{prefix:E}),z};function _g(b){if(os(b))return[b,b,b,b];if(nf(b)){var x=b.length;if(x===1)return[b[0],b[0],b[0],b[0]];if(x===2)return[b[0],b[1],b[0],b[1]];if(x===3)return[b[0],b[1],b[2],b[1]];if(x===4)return b}return[0,0,0,0]}function T0(b,x,E,z,te){return z===void 0&&(z=!0),te===void 0&&(te=function(re){re.node().removeChildren()}),b?E(x):(z&&te(x),null)}var xB=gm({text:"text"},"title");function lL(b){return/\S+-\S+/g.test(b)?b.split("-").map(function(x){return x[0]}):b.length>2?[b[0]]:b.split("")}function wG(b,x){var E=b.attributes,z=E.position,te=E.spacing,re=E.inset,oe=E.text,le=b.getBBox(),ce=x.getBBox(),ge=lL(z),Ae=(0,wn.CR)(_g(oe?te:0),4),Me=Ae[0],Ue=Ae[1],Xe=Ae[2],$e=Ae[3],rt=(0,wn.CR)(_g(re),4),ot=rt[0],pt=rt[1],yt=rt[2],Ct=rt[3],zt=(0,wn.CR)([$e+Ue,Me+Xe],2),Wt=zt[0],Ht=zt[1],Qt=(0,wn.CR)([Ct+pt,ot+yt],2),Gt=Qt[0],vn=Qt[1];if(ge[0]==="l")return new ip(le.x,le.y,ce.width+le.width+Wt+Gt,Math.max(ce.height+vn,le.height));if(ge[0]==="t")return new ip(le.x,le.y,Math.max(ce.width+Gt,le.width),ce.height+le.height+Ht+vn);var Sn=(0,wn.CR)([x.attributes.width||ce.width,x.attributes.height||ce.height],2),kn=Sn[0],Kn=Sn[1];return new ip(ce.x,ce.y,kn+le.width+Wt+Gt,Kn+le.height+Ht+vn)}function CG(b,x){var E=Object.entries(x).reduce(function(z,te){var re=(0,wn.CR)(te,2),oe=re[0],le=re[1],ce=b.node().attr(oe);return ce||(z[oe]=le),z},{});b.styles(E)}function bG(b){var x,E,z,te,re=b,oe=re.width,le=re.height,ce=re.position,ge=(0,wn.CR)([+oe/2,+le/2],2),Ae=ge[0],Me=ge[1],Ue=(0,wn.CR)([+Ae,+Me,"center","middle"],4),Xe=Ue[0],$e=Ue[1],rt=Ue[2],ot=Ue[3],pt=lL(ce);return pt.includes("l")&&(x=(0,wn.CR)([0,"start"],2),Xe=x[0],rt=x[1]),pt.includes("r")&&(E=(0,wn.CR)([+oe,"end"],2),Xe=E[0],rt=E[1]),pt.includes("t")&&(z=(0,wn.CR)([0,"top"],2),$e=z[0],ot=z[1]),pt.includes("b")&&(te=(0,wn.CR)([+le,"bottom"],2),$e=te[0],ot=te[1]),{x:Xe,y:$e,textAlign:rt,textBaseline:ot}}var PG=function(b){(0,wn.ZT)(x,b);function x(E){return b.call(this,E,{text:"",width:0,height:0,fill:"#4a505a",fontWeight:"bold",fontSize:12,fontFamily:"sans-serif",inset:0,spacing:0,position:"top-left"})||this}return x.prototype.getAvailableSpace=function(){var E=this,z=this.attributes,te=z.width,re=z.height,oe=z.position,le=z.spacing,ce=z.inset,ge=E.querySelector(xB.text.class);if(!ge)return new ip(0,0,+te,+re);var Ae=ge.getBBox(),Me=Ae.width,Ue=Ae.height,Xe=(0,wn.CR)(_g(le),4),$e=Xe[0],rt=Xe[1],ot=Xe[2],pt=Xe[3],yt=(0,wn.CR)([0,0,+te,+re],4),Ct=yt[0],zt=yt[1],Wt=yt[2],Ht=yt[3],Qt=lL(oe);if(Qt.includes("i"))return new ip(Ct,zt,Wt,Ht);Qt.forEach(function(ei,Ar){var Sr,Ir,si,Cr;ei==="t"&&(Sr=(0,wn.CR)(Ar===0?[Ue+ot,+re-Ue-ot]:[0,+re],2),zt=Sr[0],Ht=Sr[1]),ei==="r"&&(Ir=(0,wn.CR)([+te-Me-pt],1),Wt=Ir[0]),ei==="b"&&(si=(0,wn.CR)([+re-Ue-$e],1),Ht=si[0]),ei==="l"&&(Cr=(0,wn.CR)(Ar===0?[Me+rt,+te-Me-rt]:[0,+te],2),Ct=Cr[0],Wt=Cr[1])});var Gt=(0,wn.CR)(_g(ce),4),vn=Gt[0],Sn=Gt[1],kn=Gt[2],Kn=Gt[3],vr=(0,wn.CR)([Kn+Sn,vn+kn],2),er=vr[0],Nr=vr[1];return new ip(Ct+Kn,zt+vn,Wt-er,Ht-Nr)},x.prototype.getBBox=function(){return this.title?this.title.getBBox():new ip(0,0,0,0)},x.prototype.render=function(E,z){var te=this,re=E.width,oe=E.height,le=E.position,ce=E.spacing,ge=(0,wn._T)(E,["width","height","position","spacing"]),Ae=(0,wn.CR)(i1(ge),1),Me=Ae[0],Ue=bG(E),Xe=Ue.x,$e=Ue.y,rt=Ue.textAlign,ot=Ue.textBaseline;T0(!!ge.text,Qs(z),function(pt){te.title=pt.maybeAppendByClassName(xB.text,"text").styles(Me).call(CG,{x:Xe,y:$e,textAlign:rt,textBaseline:ot}).node()})},x}(Id),xD=function(){};function xv(b,x){return _s(b)?b.apply(void 0,(0,wn.ev)([],(0,wn.CR)(x),!1)):b}function MG(b,x){return b.reduce(function(E,z){return(E[z[x]]=E[z[x]]||[]).push(z),E},{})}function LG(b){return typeof b=="boolean"?!1:"enter"in b&&"update"in b&&"exit"in b}function EB(b){if(!b)return{enter:!1,update:!1,exit:!1};var x=["enter","update","exit"],E=Object.fromEntries(Object.entries(b).filter(function(z){var te=(0,wn.CR)(z,1),re=te[0];return!x.includes(re)}));return Object.fromEntries(x.map(function(z){return LG(b)?b[z]===!1?[z,!1]:[z,(0,wn.pi)((0,wn.pi)({},b[z]),E)]:[z,E]}))}function WS(b,x){b?b.finished.then(x):x()}function TG(b,x){b.length===0?x():Promise.all(b.map(function(E){return E==null?void 0:E.finished})).then(x)}function AB(b,x){"update"in b?b.update(x):b.attr(x)}function SB(b,x,E){if(x.length===0)return null;if(!E){var z=x.slice(-1)[0];return AB(b,{style:z}),null}return b.animate(x,E)}function DG(b,x){return!(b.nodeName!=="text"||x.nodeName!=="text"||b.attributes.text!==x.attributes.text)}function IG(b,x,E,z){if(z===void 0&&(z="destroy"),DG(b,x))return b.remove(),[null];var te=function(){z==="destroy"?b.destroy():z==="hide"&&fm(b),x.isVisible()&&i2(x)};if(!E)return te(),[null];var re=E.duration,oe=re===void 0?0:re,le=E.delay,ce=le===void 0?0:le,ge=Math.ceil(+oe/2),Ae=+oe/4,Me=(0,wn.CR)(b.getGeometryBounds().center,2),Ue=Me[0],Xe=Me[1],$e=(0,wn.CR)(x.getGeometryBounds().center,2),rt=$e[0],ot=$e[1],pt=(0,wn.CR)([(Ue+rt)/2-Ue,(Xe+ot)/2-Xe],2),yt=pt[0],Ct=pt[1],zt=b.style.opacity,Wt=zt===void 0?1:zt,Ht=x.style.opacity,Qt=Ht===void 0?1:Ht,Gt=b.style.transform||"",vn=x.style.transform||"",Sn=b.animate([{opacity:Wt,transform:"translate(0, 0) ".concat(Gt)},{opacity:0,transform:"translate(".concat(yt,", ").concat(Ct,") ").concat(Gt)}],(0,wn.pi)((0,wn.pi)({fill:"both"},E),{duration:ce+ge+Ae})),kn=x.animate([{opacity:0,transform:"translate(".concat(-yt,", ").concat(-Ct,") ").concat(vn),offset:.01},{opacity:Qt,transform:"translate(0, 0) ".concat(vn)}],(0,wn.pi)((0,wn.pi)({fill:"both"},E),{duration:ge+Ae,delay:ce+ge-Ae}));return WS(kn,te),[Sn,kn]}function pm(b,x,E){var z={},te={};return Object.entries(x).forEach(function(re){var oe=(0,wn.CR)(re,2),le=oe[0],ce=oe[1];if(!fl(ce)){var ge=b.style[le]||b.parsedStyle[le]||0;ge!==ce&&(z[le]=ge,te[le]=ce)}}),E?SB(b,[z,te],(0,wn.pi)({fill:"both"},E)):(AB(b,te),null)}function OG(b){var x;return((x=b[0])===null||x===void 0?void 0:x.map(function(E,z){return b.map(function(te){return te[z]})}))||[]}function ED(b,x,E){E===void 0&&(E=!1);var z=b.getBBox(),te=z.width,re=z.height,oe=x/Math.max(te,re);return E&&(b.style.transform="scale(".concat(oe,")")),oe}var wB=function(b,x,E){return[["M",b-E,x],["A",E,E,0,1,0,b+E,x],["A",E,E,0,1,0,b-E,x],["Z"]]},NG=wB,BG=function(b,x,E){return[["M",b-E,x-E],["L",b+E,x-E],["L",b+E,x+E],["L",b-E,x+E],["Z"]]},RG=function(b,x,E){return[["M",b-E,x],["L",b,x-E],["L",b+E,x],["L",b,x+E],["Z"]]},kG=function(b,x,E){var z=E*Math.sin(.3333333333333333*Math.PI);return[["M",b-E,x+z],["L",b,x-z],["L",b+E,x+z],["Z"]]},FG=function(b,x,E){var z=E*Math.sin(.3333333333333333*Math.PI);return[["M",b-E,x-z],["L",b+E,x-z],["L",b,x+z],["Z"]]},_G=function(b,x,E){var z=E/2*Math.sqrt(3);return[["M",b,x-E],["L",b+z,x-E/2],["L",b+z,x+E/2],["L",b,x+E],["L",b-z,x+E/2],["L",b-z,x-E/2],["Z"]]},zG=function(b,x,E){var z=E-1.5;return[["M",b-E,x-z],["L",b+E,x+z],["L",b+E,x-z],["L",b-E,x+z],["Z"]]},CB=function(b,x,E){return[["M",b,x+E],["L",b,x-E]]},jG=function(b,x,E){return[["M",b-E,x-E],["L",b+E,x+E],["M",b+E,x-E],["L",b-E,x+E]]},WG=function(b,x,E){return[["M",b-E/2,x-E],["L",b+E/2,x-E],["M",b,x-E],["L",b,x+E],["M",b-E/2,x+E],["L",b+E/2,x+E]]},UG=function(b,x,E){return[["M",b-E,x],["L",b+E,x],["M",b,x-E],["L",b,x+E]]},GG=function(b,x,E){return[["M",b-E,x],["L",b+E,x]]},bB=function(b,x,E){return[["M",b-E,x],["L",b+E,x]]},HG=bB,VG=function(b,x,E){return[["M",b-E,x],["A",E/2,E/2,0,1,1,b,x],["A",E/2,E/2,0,1,0,b+E,x]]},KG=function(b,x,E){return[["M",b-E-1,x-2.5],["L",b,x-2.5],["L",b,x+2.5],["L",b+E+1,x+2.5]]},ZG=function(b,x,E){return[["M",b-E-1,x+2.5],["L",b,x+2.5],["L",b,x-2.5],["L",b+E+1,x-2.5]]},YG=function(b,x,E){return[["M",b-(E+1),x+2.5],["L",b-E/2,x+2.5],["L",b-E/2,x-2.5],["L",b+E/2,x-2.5],["L",b+E/2,x+2.5],["L",b+E+1,x+2.5]]};function XG(b,x){return[["M",b-5,x+2.5],["L",b-5,x],["L",b,x],["L",b,x-3],["L",b,x+3],["L",b+6.5,x+3]]}var QG=function(b,x,E){return[["M",b-E,x-E],["L",b+E,x],["L",b-E,x+E],["Z"]]},Ev=gm({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"),JG=function(b){(0,wn.ZT)(x,b);function x(E){var z=b.call(this,E,{x:0,y:0,animate:{easing:"linear",duration:200,fill:"both"},buttonCursor:"pointer",buttonFill:"black",buttonD:QG(0,0,6),buttonSize:12,controllerPadding:5,controllerSpacing:5,formatter:function(te,re){return"".concat(te,"/").concat(re)},defaultPage:0,loop:!1,orientation:"horizontal",pageNumFill:"black",pageNumFontSize:12,pageNumTextAlign:"start",pageNumTextBaseline:"middle"})||this;return z.playState="idle",z.contentGroup=z.appendChild(new Uu({class:Ev.contentGroup.name})),z.playWindow=z.contentGroup.appendChild(new Uu({class:Ev.playWindow.name})),z.innerCurrPage=z.defaultPage,z}return Object.defineProperty(x.prototype,"defaultPage",{get:function(){var E=this.attributes.defaultPage;return Ah(E,0,Math.max(this.pageViews.length-1,0))},enumerable:!1,configurable:!0}),Object.defineProperty(x.prototype,"pageViews",{get:function(){return this.playWindow.children},enumerable:!1,configurable:!0}),Object.defineProperty(x.prototype,"controllerShape",{get:function(){return this.totalPages>1?{width:55,height:0}:{width:0,height:0}},enumerable:!1,configurable:!0}),Object.defineProperty(x.prototype,"pageShape",{get:function(){var E=this.pageViews,z=(0,wn.CR)(OG(E.map(function(Me){var Ue=Me.getBBox(),Xe=Ue.width,$e=Ue.height;return[Xe,$e]})).map(function(Me){return Math.max.apply(Math,(0,wn.ev)([],(0,wn.CR)(Me),!1))}),2),te=z[0],re=z[1],oe=this.attributes,le=oe.pageWidth,ce=le===void 0?te:le,ge=oe.pageHeight,Ae=ge===void 0?re:ge;return{pageWidth:ce,pageHeight:Ae}},enumerable:!1,configurable:!0}),x.prototype.getContainer=function(){return this.playWindow},Object.defineProperty(x.prototype,"totalPages",{get:function(){return this.pageViews.length},enumerable:!1,configurable:!0}),Object.defineProperty(x.prototype,"currPage",{get:function(){return this.innerCurrPage},enumerable:!1,configurable:!0}),x.prototype.getBBox=function(){var E=b.prototype.getBBox.call(this),z=E.x,te=E.y,re=this.controllerShape,oe=this.pageShape,le=oe.pageWidth,ce=oe.pageHeight;return new ip(z,te,le+re.width,ce)},x.prototype.goTo=function(E){var z=this,te=this.attributes.animate,re=this,oe=re.currPage,le=re.playState,ce=re.playWindow,ge=re.pageViews;if(le!=="idle"||E<0||ge.length<=0||E>=ge.length)return null;ge[oe].setLocalPosition(0,0),this.prepareFollowingPage(E);var Ae=(0,wn.CR)(this.getFollowingPageDiff(E),2),Me=Ae[0],Ue=Ae[1];this.playState="running";var Xe=SB(ce,[{transform:"translate(0, 0)"},{transform:"translate(".concat(-Me,", ").concat(-Ue,")")}],te);return WS(Xe,function(){z.innerCurrPage=E,z.playState="idle",z.setVisiblePages([E]),z.updatePageInfo()}),Xe},x.prototype.prev=function(){var E=this.attributes.loop,z=this.pageViews.length,te=this.currPage;if(!E&&te<=0)return null;var re=E?(te-1+z)%z:Ah(te-1,0,z);return this.goTo(re)},x.prototype.next=function(){var E=this.attributes.loop,z=this.pageViews.length,te=this.currPage;if(!E&&te>=z-1)return null;var re=E?(te+1)%z:Ah(te+1,0,z);return this.goTo(re)},x.prototype.renderClipPath=function(E){var z=this.pageShape,te=z.pageWidth,re=z.pageHeight;if(!te||!re){this.contentGroup.style.clipPath=void 0;return}this.clipPath=E.maybeAppendByClassName(Ev.clipPath,"rect").styles({width:te,height:re}),this.contentGroup.attr("clipPath",this.clipPath.node())},x.prototype.setVisiblePages=function(E){this.playWindow.children.forEach(function(z,te){E.includes(te)?i2(z):fm(z)})},x.prototype.adjustControllerLayout=function(){var E=this,z=E.prevBtnGroup,te=E.nextBtnGroup,re=E.pageInfoGroup,oe=this.attributes,le=oe.orientation,ce=oe.controllerPadding,ge=re.getBBox(),Ae=ge.width,Me=ge.height,Ue=(0,wn.CR)(le==="horizontal"?[-180,0]:[-90,90],2),Xe=Ue[0],$e=Ue[1];z.setLocalEulerAngles(Xe),te.setLocalEulerAngles($e);var rt=z.getBBox(),ot=rt.width,pt=rt.height,yt=te.getBBox(),Ct=yt.width,zt=yt.height,Wt=Math.max(ot,Ae,Ct),Ht=le==="horizontal"?{offset:[[0,0],[ot/2+ce,0],[ot+Ae+ce*2,0]],textAlign:"start"}:{offset:[[Wt/2,-pt-ce],[Wt/2,0],[Wt/2,zt+ce]],textAlign:"center"},Qt=(0,wn.CR)(Ht.offset,3),Gt=(0,wn.CR)(Qt[0],2),vn=Gt[0],Sn=Gt[1],kn=(0,wn.CR)(Qt[1],2),Kn=kn[0],vr=kn[1],er=(0,wn.CR)(Qt[2],2),Nr=er[0],ei=er[1],Ar=Ht.textAlign,Sr=re.querySelector("text");Sr&&(Sr.style.textAlign=Ar),z.setLocalPosition(vn,Sn),re.setLocalPosition(Kn,vr),te.setLocalPosition(Nr,ei)},x.prototype.updatePageInfo=function(){var E,z=this,te=z.currPage,re=z.pageViews,oe=z.attributes.formatter;re.length<2||((E=this.pageInfoGroup.querySelector(Ev.pageInfo.class))===null||E===void 0||E.attr("text",oe(te+1,re.length)),this.adjustControllerLayout())},x.prototype.getFollowingPageDiff=function(E){var z=this.currPage;if(z===E)return[0,0];var te=this.attributes.orientation,re=this.pageShape,oe=re.pageWidth,le=re.pageHeight,ce=E=2,ge=E.maybeAppendByClassName(Ev.controller,"g");if(aL(ge.node(),ce),!!ce){var Ae=iu(this.attributes,"button"),Me=iu(this.attributes,"pageNum"),Ue=(0,wn.CR)(i1(Ae),2),Xe=Ue[0],$e=Ue[1],rt=Xe.size,ot=(0,wn._T)(Xe,["size"]),pt=!ge.select(Ev.prevBtnGroup.class).node(),yt=ge.maybeAppendByClassName(Ev.prevBtnGroup,"g").styles($e);this.prevBtnGroup=yt.node();var Ct=yt.maybeAppendByClassName(Ev.prevBtn,"path"),zt=ge.maybeAppendByClassName(Ev.nextBtnGroup,"g").styles($e);this.nextBtnGroup=zt.node();var Wt=zt.maybeAppendByClassName(Ev.nextBtn,"path");[Ct,Wt].forEach(function(Qt){Qt.styles((0,wn.pi)((0,wn.pi)({},ot),{transformOrigin:"center"})),ED(Qt.node(),rt,!0)});var Ht=ge.maybeAppendByClassName(Ev.pageInfoGroup,"g");this.pageInfoGroup=Ht.node(),Ht.maybeAppendByClassName(Ev.pageInfo,"text").styles(Me),this.updatePageInfo(),ge.node().setLocalPosition(oe+te,le/2),pt&&(this.prevBtnGroup.addEventListener("click",function(){z.prev()}),this.nextBtnGroup.addEventListener("click",function(){z.next()}))}},x.prototype.render=function(E,z){var te=E.x,re=te===void 0?0:te,oe=E.y,le=oe===void 0?0:oe;this.attr("transform","translate(".concat(re,", ").concat(le,")"));var ce=Qs(z);this.renderClipPath(ce),this.renderController(ce),this.setVisiblePages([this.defaultPage]),this.goTo(this.defaultPage)},x.prototype.bindEvents=function(){var E=this,z=YC(function(){return E.render(E.attributes,E)},50);this.playWindow.addEventListener(ru.INSERTED,z),this.playWindow.addEventListener(ru.REMOVED,z)},x}(Id);function qG(b){var x="default";if(Sh(b)&&b instanceof Image)x="image";else if(_s(b))x="symbol";else if(nc(b)){var E=new RegExp("data:(image|text)");b.match(E)?x="base64":/^(https?:\/\/(([a-zA-Z0-9]+-?)+[a-zA-Z0-9]+\.)+[a-zA-Z]+)(:\d+)?(\/.*)?(\?.*)?(#.*)?$/.test(b)?x="url":x="symbol"}return x}function $G(b){var x=qG(b);return["base64","url","image"].includes(x)?"image":b&&x==="symbol"?"path":null}var uh=function(b){(0,wn.ZT)(x,b);function x(){return b!==null&&b.apply(this,arguments)||this}return x.prototype.render=function(E,z){var te=E.x,re=te===void 0?0:te,oe=E.y,le=oe===void 0?0:oe,ce=this.getSubShapeStyle(E),ge=ce.symbol,Ae=ce.size,Me=Ae===void 0?16:Ae,Ue=(0,wn._T)(ce,["symbol","size"]),Xe=$G(ge);T0(!!Xe,Qs(z),function($e){$e.maybeAppendByClassName("marker",Xe).attr("className","marker ".concat(Xe,"-marker")).call(function(rt){if(Xe==="image"){var ot=Me*2;rt.styles({img:ge,width:ot,height:ot,x:re-Me,y:le-Me})}else{var ot=Me/2,pt=_s(ge)?ge:x.getSymbol(ge);rt.styles((0,wn.pi)({d:pt==null?void 0:pt(re,le,ot)},Ue))}})})},x.MARKER_SYMBOL_MAP=new Map,x.registerSymbol=function(E,z){x.MARKER_SYMBOL_MAP.set(E,z)},x.getSymbol=function(E){return x.MARKER_SYMBOL_MAP.get(E)},x.getSymbols=function(){return Array.from(x.MARKER_SYMBOL_MAP.keys())},x}(Id);uh.registerSymbol("cross",jG),uh.registerSymbol("hyphen",GG),uh.registerSymbol("line",CB),uh.registerSymbol("plus",UG),uh.registerSymbol("tick",WG),uh.registerSymbol("circle",wB),uh.registerSymbol("point",NG),uh.registerSymbol("bowtie",zG),uh.registerSymbol("hexagon",_G),uh.registerSymbol("square",BG),uh.registerSymbol("diamond",RG),uh.registerSymbol("triangle",kG),uh.registerSymbol("triangle-down",FG),uh.registerSymbol("line",CB),uh.registerSymbol("dot",bB),uh.registerSymbol("dash",HG),uh.registerSymbol("smooth",VG),uh.registerSymbol("hv",KG),uh.registerSymbol("vh",ZG),uh.registerSymbol("hvh",YG),uh.registerSymbol("vhv",XG);function Fq(b,x,E){var z=Math.round((b-E)/x);return E+z*x}function eH(b,x,E){var z=1.4,te=z*E;return[["M",b-E,x-te],["L",b+E,x-te],["L",b+E,x+te],["L",b-E,x+te],["Z"]]}var PB=1.4,MB=.4;function tH(b,x,E){var z=E,te=z*PB,re=z/2,oe=z/6,le=b+te*MB;return[["M",b,x],["L",le,x+re],["L",b+te,x+re],["L",b+te,x-re],["L",le,x-re],["Z"],["M",le,x+oe],["L",b+te-2,x+oe],["M",le,x-oe],["L",b+te-2,x-oe]]}function nH(b,x,E){var z=E,te=z*PB,re=z/2,oe=z/6,le=x+te*MB;return[["M",b,x],["L",b-re,le],["L",b-re,x+te],["L",b+re,x+te],["L",b+re,le],["Z"],["M",b-oe,le],["L",b-oe,x+te-2],["M",b+oe,le],["L",b+oe,x+te-2]]}uh.registerSymbol("hiddenHandle",eH),uh.registerSymbol("verticalHandle",tH),uh.registerSymbol("horizontalHandle",nH);var _q=function(b,x,E){return b===void 0&&(b="horizontal"),b==="horizontal"?x:E};function zq(b,x,E,z){var te;z===void 0&&(z=4);var re=__read(b,2),oe=re[0],le=re[1],ce=__read(x,2),ge=ce[0],Ae=ce[1],Me=__read(E,2),Ue=Me[0],Xe=Me[1],$e=__read([ge,Ae],2),rt=$e[0],ot=$e[1],pt=ot-rt;return rt>ot&&(te=__read([ot,rt],2),rt=te[0],ot=te[1]),pt>le-oe?[oe,le]:rtle?Xe===le&&Ue===rt?[rt,le]:[le-pt,le]:[rt,ot]}function AD(b,x,E){return b===void 0&&(b="horizontal"),b==="horizontal"?x:E}function jq(b){var x=b&&b.getRenderBounds();if(!x)return{width:0,height:0};var E=x.getMax(),z=x.getMin();return{width:E[0]-z[0],height:E[1]-z[1]}}function LB(b){var x=b.getLocalBounds(),E=x.min,z=x.max,te=(0,wn.CR)([E,z],2),re=(0,wn.CR)(te[0],2),oe=re[0],le=re[1],ce=(0,wn.CR)(te[1],2),ge=ce[0],Ae=ce[1];return{x:oe,y:le,width:ge-oe,height:Ae-le,left:oe,bottom:Ae,top:le,right:ge}}function Wq(b,x){var E=select(b).append("text").node();return E.attr(__assign(__assign({},x),{visibility:"hidden"})),E}function rH(b,x){var E=(0,wn.CR)(b,2),z=E[0],te=E[1],re=(0,wn.CR)(x,2),oe=re[0],le=re[1];return z!==oe&&te===le}function Uq(b,x){var E=__read(b,2),z=E[0],te=E[1],re=__read(x,2),oe=re[0],le=re[1];return z===oe&&te!==le}function iH(b,x){var E,z,te=x.attributes;try{for(var re=(0,wn.XA)(Object.entries(te)),oe=re.next();!oe.done;oe=re.next()){var le=(0,wn.CR)(oe.value,2),ce=le[0],ge=le[1];ce!=="id"&&ce!=="className"&&b.attr(ce,ge)}}catch(Ae){E={error:Ae}}finally{try{oe&&!oe.done&&(z=re.return)&&z.call(re)}finally{if(E)throw E.error}}}function o1(b){return typeof b=="function"?b():nc(b)||os(b)?new yD({style:{text:String(b)}}):b}var uL,SD;function Gq(b){SD=b}var oH=lD(function(b,x){var E=x.fontSize,z=x.fontFamily,te=x.fontWeight,re=x.fontStyle,oe=x.fontVariant;return SD?SD(b,E):(uL||(uL=Xo.offscreenCanvasCreator.getOrCreateContext(void 0)),uL.font=[re,oe,te,"".concat(E,"px"),z].join(" "),uL.measureText(b).width)},function(b,x){return[b,Object.values(x||TB(b)).join()].join("")},4096),TB=function(b){var x=b.style.fontFamily||"sans-serif",E=b.style.fontWeight||"normal",z=b.style.fontStyle||"normal",te=b.style.fontVariant,re=b.style.fontSize;return re=typeof re=="object"?re.value:re,{fontSize:re,fontFamily:x,fontWeight:E,fontStyle:z,fontVariant:te}};function DB(b){return b.nodeName==="text"?b:b.nodeName==="g"&&b.children.length===1&&b.children[0].nodeName==="text"?b.children[0]:null}function IB(b,x){var E=DB(b);E&&E.attr(x)}function wD(b,x,E){E===void 0&&(E="..."),IB(b,{wordWrap:!0,wordWrapWidth:x,maxLines:1,textOverflow:E})}var D0=gm({layout:"flex",markerGroup:"marker-group",marker:"marker",labelGroup:"label-group",label:"label",valueGroup:"value-group",value:"value",backgroundGroup:"background-group",background:"background"},"legend-category-item");function aH(b){var x=b.querySelector(D0.marker.class);return x?x.style:{}}var sH=function(b){(0,wn.ZT)(x,b);function x(E){return b.call(this,E,{span:[1,1],marker:function(){return new xp({style:{r:6}})},markerSize:10,labelFill:"#646464",valueFill:"#646464",labelFontSize:12,valueFontSize:12,labelTextBaseline:"middle",valueTextBaseline:"middle"})||this}return Object.defineProperty(x.prototype,"showValue",{get:function(){var E=this.attributes.valueText;return E?typeof E=="string"||typeof E=="number"?E!=="":typeof E=="function"?!0:E.attr("text")!=="":!1},enumerable:!1,configurable:!0}),Object.defineProperty(x.prototype,"actualSpace",{get:function(){var E=this.labelGroup,z=this.valueGroup,te=this.attributes.markerSize,re=E.node().getBBox(),oe=re.width,le=re.height,ce=z.node().getBBox(),ge=ce.width,Ae=ce.height;return{markerWidth:te,labelWidth:oe,valueWidth:ge,height:Math.max(te,le,Ae)}},enumerable:!1,configurable:!0}),Object.defineProperty(x.prototype,"span",{get:function(){var E=this.attributes.span;if(!E)return[1,1];var z=(0,wn.CR)(_g(E),2),te=z[0],re=z[1],oe=this.showValue?re:0,le=te+oe;return[te/le,oe/le]},enumerable:!1,configurable:!0}),Object.defineProperty(x.prototype,"shape",{get:function(){var E,z=this.attributes,te=z.markerSize,re=z.width,oe=this.actualSpace,le=oe.markerWidth,ce=oe.height,ge=this.actualSpace,Ae=ge.labelWidth,Me=ge.valueWidth,Ue=(0,wn.CR)(this.spacing,2),Xe=Ue[0],$e=Ue[1];if(re){var rt=re-te-Xe-$e,ot=(0,wn.CR)(this.span,2),pt=ot[0],yt=ot[1];E=(0,wn.CR)([pt*rt,yt*rt],2),Ae=E[0],Me=E[1]}var Ct=le+Ae+Me+Xe+$e;return{width:Ct,height:ce,markerWidth:le,labelWidth:Ae,valueWidth:Me}},enumerable:!1,configurable:!0}),Object.defineProperty(x.prototype,"spacing",{get:function(){var E=this.attributes.spacing;if(!E)return[0,0];var z=(0,wn.CR)(_g(E),2),te=z[0],re=z[1];return this.showValue?[te,re]:[te,0]},enumerable:!1,configurable:!0}),Object.defineProperty(x.prototype,"layout",{get:function(){var E=this.shape,z=E.markerWidth,te=E.labelWidth,re=E.valueWidth,oe=E.width,le=E.height,ce=(0,wn.CR)(this.spacing,2),ge=ce[0],Ae=ce[1];return{height:le,width:oe,markerWidth:z,labelWidth:te,valueWidth:re,position:[z/2,z+ge,z+te+ge+Ae]}},enumerable:!1,configurable:!0}),Object.defineProperty(x.prototype,"scaleSize",{get:function(){var E=aH(this.markerGroup.node()),z=this.attributes,te=z.markerSize,re=z.markerStrokeWidth,oe=re===void 0?E.strokeWidth:re,le=z.markerLineWidth,ce=le===void 0?E.lineWidth:le,ge=z.markerStroke,Ae=ge===void 0?E.stroke:ge,Me=+(oe||ce||(Ae?1:0))*Math.sqrt(2),Ue=this.markerGroup.node().getBBox(),Xe=Ue.width,$e=Ue.height;return(1-Me/Math.max(Xe,$e))*te},enumerable:!1,configurable:!0}),x.prototype.renderMarker=function(E){var z=this,te=this.attributes.marker,re=iu(this.attributes,"marker");this.markerGroup=E.maybeAppendByClassName(D0.markerGroup,"g").style("zIndex",0),T0(!!te,this.markerGroup,function(){var oe,le=z.markerGroup.node(),ce=(oe=le.childNodes)===null||oe===void 0?void 0:oe[0],ge=typeof te=="string"?new uh({style:{symbol:te},className:D0.marker.name}):te();ce?ge.nodeName===ce.nodeName?ce instanceof uh?ce.update((0,wn.pi)((0,wn.pi)({},re),{symbol:te})):(iH(ce,ge),Qs(ce).styles(re)):(ce.remove(),Qs(ge).attr("className",D0.marker.name).styles(re),le.appendChild(ge)):(ge instanceof uh||Qs(ge).attr("className",D0.marker.name).styles(re),le.appendChild(ge)),z.markerGroup.node().scale(1/z.markerGroup.node().getScale()[0]);var Ae=ED(z.markerGroup.node(),z.scaleSize,!0);z.markerGroup.node().style._transform="scale(".concat(Ae,")")})},x.prototype.renderLabel=function(E){var z=iu(this.attributes,"label"),te=z.text,re=(0,wn._T)(z,["text"]);this.labelGroup=E.maybeAppendByClassName(D0.labelGroup,"g").style("zIndex",0),this.labelGroup.maybeAppendByClassName(D0.label,function(){return o1(te)}).styles(re)},x.prototype.renderValue=function(E){var z=this,te=iu(this.attributes,"value"),re=te.text,oe=(0,wn._T)(te,["text"]);this.valueGroup=E.maybeAppendByClassName(D0.valueGroup,"g").style("zIndex",0),T0(this.showValue,this.valueGroup,function(){z.valueGroup.maybeAppendByClassName(D0.value,function(){return o1(re)}).styles(oe)})},x.prototype.renderBackground=function(E){var z=this.shape,te=z.width,re=z.height,oe=iu(this.attributes,"background");this.background=E.maybeAppendByClassName(D0.backgroundGroup,"g").style("zIndex",-1),this.background.maybeAppendByClassName(D0.background,"rect").styles((0,wn.pi)({width:te,height:re},oe))},x.prototype.adjustLayout=function(){var E=this.layout,z=E.labelWidth,te=E.valueWidth,re=E.height,oe=(0,wn.CR)(E.position,3),le=oe[0],ce=oe[1],ge=oe[2],Ae=re/2;this.markerGroup.styles({transform:"translate(".concat(le,", ").concat(Ae,")").concat(this.markerGroup.node().style._transform)}),this.labelGroup.styles({transform:"translate(".concat(ce,", ").concat(Ae,")")}),wD(this.labelGroup.select(D0.label.class).node(),Math.ceil(z)),this.showValue&&(this.valueGroup.styles({transform:"translate(".concat(ge,", ").concat(Ae,")")}),wD(this.valueGroup.select(D0.value.class).node(),Math.ceil(te)))},x.prototype.render=function(E,z){var te=Qs(z),re=E.x,oe=re===void 0?0:re,le=E.y,ce=le===void 0?0:le;te.styles({transform:"translate(".concat(oe,", ").concat(ce,")")}),this.renderMarker(te),this.renderLabel(te),this.renderValue(te),this.renderBackground(te),this.adjustLayout()},x}(Id),tA=gm({page:"item-page",navigator:"navigator",item:"item"},"items"),OB=function(b,x,E){return E===void 0&&(E=!0),b?x(b):E},lH=function(b){(0,wn.ZT)(x,b);function x(E){var z=b.call(this,E,{data:[],gridRow:1/0,gridCol:void 0,padding:0,width:1e3,height:100,rowPadding:0,colPadding:0,layout:"flex",orientation:"horizontal",click:xD,mouseenter:xD,mouseleave:xD})||this;return z.navigatorShape=[0,0],z}return Object.defineProperty(x.prototype,"pageViews",{get:function(){return this.navigator.getContainer()},enumerable:!1,configurable:!0}),Object.defineProperty(x.prototype,"grid",{get:function(){var E=this.attributes,z=E.gridRow,te=E.gridCol,re=E.data;if(!z&&!te)throw new Error("gridRow and gridCol can not be set null at the same time");return z&&te?[z,te]:z?[z,re.length]:[re.length,te]},enumerable:!1,configurable:!0}),Object.defineProperty(x.prototype,"renderData",{get:function(){var E=this.attributes,z=E.data,te=E.layout,re=iu(this.attributes,"item"),oe=z.map(function(le,ce){var ge=le.id,Ae=ge===void 0?ce:ge,Me=le.label,Ue=le.value;return{id:"".concat(Ae),index:ce,style:(0,wn.pi)({layout:te,labelText:Me,valueText:Ue},Object.fromEntries(Object.entries(re).map(function(Xe){var $e=(0,wn.CR)(Xe,2),rt=$e[0],ot=$e[1];return[rt,xv(ot,[le,ce,z])]})))}});return oe},enumerable:!1,configurable:!0}),x.prototype.getGridLayout=function(){var E=this,z=this.attributes,te=z.orientation,re=z.width,oe=z.rowPadding,le=z.colPadding,ce=(0,wn.CR)(this.navigatorShape,1),ge=ce[0],Ae=(0,wn.CR)(this.grid,2),Me=Ae[0],Ue=Ae[1],Xe=Ue*Me,$e=0;return this.pageViews.children.map(function(rt,ot){var pt,yt,Ct=Math.floor(ot/Xe),zt=ot%Xe,Wt=E.ifHorizontal(Ue,Me),Ht=[Math.floor(zt/Wt),zt%Wt];te==="vertical"&&Ht.reverse();var Qt=(0,wn.CR)(Ht,2),Gt=Qt[0],vn=Qt[1],Sn=(re-ge-(Ue-1)*le)/Ue,kn=rt.getBBox().height,Kn=(0,wn.CR)([0,0],2),vr=Kn[0],er=Kn[1];return te==="horizontal"?(pt=(0,wn.CR)([$e,Gt*(kn+oe)],2),vr=pt[0],er=pt[1],$e=vn===Ue-1?0:$e+Sn+le):(yt=(0,wn.CR)([vn*(Sn+le),$e],2),vr=yt[0],er=yt[1],$e=Gt===Me-1?0:$e+kn+oe),{page:Ct,index:ot,row:Gt,col:vn,pageIndex:zt,width:Sn,height:kn,x:vr,y:er}})},x.prototype.getFlexLayout=function(){var E=this.attributes,z=E.width,te=E.height,re=E.rowPadding,oe=E.colPadding,le=(0,wn.CR)(this.navigatorShape,1),ce=le[0],ge=(0,wn.CR)(this.grid,2),Ae=ge[0],Me=ge[1],Ue=(0,wn.CR)([z-ce,te],2),Xe=Ue[0],$e=Ue[1],rt=(0,wn.CR)([0,0,0,0,0,0,0,0],8),ot=rt[0],pt=rt[1],yt=rt[2],Ct=rt[3],zt=rt[4],Wt=rt[5],Ht=rt[6],Qt=rt[7];return this.pageViews.children.map(function(Gt,vn){var Sn,kn,Kn,vr,er=Gt.getBBox(),Nr=er.width,ei=er.height,Ar=Ht===0?0:oe,Sr=Ht+Ar+Nr;if(Sr<=Xe&&OB(zt,function(si){return si0?(this.navigatorShape=[55,0],E.call(this)):z},enumerable:!1,configurable:!0}),x.prototype.ifHorizontal=function(E,z){var te=this.attributes.orientation;return AD(te,E,z)},x.prototype.flattenPage=function(E){E.querySelectorAll(tA.item.class).forEach(function(z){E.appendChild(z)}),E.querySelectorAll(tA.page.class).forEach(function(z){var te=E.removeChild(z);te.destroy()})},x.prototype.renderItems=function(E){var z=this.attributes,te=z.click,re=z.mouseenter,oe=z.mouseleave;this.flattenPage(E);var le=this.dispatchCustomEvent.bind(this);Qs(E).selectAll(tA.item.class).data(this.renderData,function(ce){return ce.id}).join(function(ce){return ce.append(function(ge){var Ae=ge.style;return new sH({style:Ae})}).attr("className",tA.item.name).on("click",function(){te==null||te(this),le("itemClick",{item:this})}).on("pointerenter",function(){re==null||re(this),le("itemMouseenter",{item:this})}).on("pointerleave",function(){oe==null||oe(this),le("itemMouseleave",{item:this})})},function(ce){return ce.each(function(ge){var Ae=ge.style;this.update(Ae)})},function(ce){return ce.remove()})},x.prototype.relayoutNavigator=function(){var E,z=this.attributes,te=z.layout,re=z.width,oe=((E=this.pageViews.children[0])===null||E===void 0?void 0:E.getBBox().height)||0,le=(0,wn.CR)(this.navigatorShape,2),ce=le[0],ge=le[1];this.navigator.update(te==="grid"?{pageWidth:re-ce,pageHeight:oe-ge}:{})},x.prototype.adjustLayout=function(){var E=this,z=Object.entries(MG(this.itemsLayout,"page")).map(function(re){var oe=(0,wn.CR)(re,2),le=oe[0],ce=oe[1];return{page:le,layouts:ce}}),te=(0,wn.ev)([],(0,wn.CR)(this.navigator.getContainer().children),!1);z.forEach(function(re){var oe=re.layouts,le=E.pageViews.appendChild(new Uu({className:tA.page.name}));oe.forEach(function(ce){var ge=ce.x,Ae=ce.y,Me=ce.index,Ue=ce.width,Xe=ce.height,$e=te[Me];le.appendChild($e),jC($e,"__layout__",ce),$e.update({x:ge,y:Ae,width:Ue,height:Xe})})}),this.relayoutNavigator()},x.prototype.renderNavigator=function(E){var z=this.attributes.orientation,te=iu(this.attributes,"nav"),re=eg({orientation:z},te),oe=this;return E.selectAll(tA.navigator.class).data(["nav"]).join(function(le){return le.append(function(){return new JG({style:re})}).attr("className",tA.navigator.name).each(function(){oe.navigator=this})},function(le){return le.each(function(){this.update(re)})},function(le){return le.remove()}),this.navigator},x.prototype.getBBox=function(){return this.navigator.getBBox()},x.prototype.render=function(E,z){var te=this.attributes.data;if(!(!te||te.length===0)){var re=this.renderNavigator(Qs(z));this.renderItems(re.getContainer()),this.adjustLayout()}},x.prototype.dispatchCustomEvent=function(E,z){var te=new Qh(E,{detail:z});this.dispatchEvent(te)},x}(Id),o2=gm({markerGroup:"marker-group",marker:"marker",labelGroup:"label-group",label:"label"},"handle"),NB={showLabel:!0,formatter:function(b){return b.toString()},markerSize:25,markerStroke:"#c5c5c5",markerFill:"#fff",markerLineWidth:1,labelFontSize:12,labelFill:"#c5c5c5",labelText:"",orientation:"vertical",spacing:0},Hq=function(b){(0,wn.ZT)(x,b);function x(E){return b.call(this,E,NB)||this}return x.prototype.render=function(E,z){var te=Qs(z).maybeAppendByClassName(o2.markerGroup,"g");this.renderMarker(te);var re=Qs(z).maybeAppendByClassName(o2.labelGroup,"g");this.renderLabel(re)},x.prototype.renderMarker=function(E){var z=this,te=this.attributes,re=te.orientation,oe=te.markerSymbol,le=oe===void 0?AD(re,"horizontalHandle","verticalHandle"):oe;T0(!!le,E,function(ce){var ge=iu(z.attributes,"marker"),Ae=(0,wn.pi)({symbol:le},ge);z.marker=ce.maybeAppendByClassName(o2.marker,function(){return new uh({style:Ae})}).update(Ae)})},x.prototype.renderLabel=function(E){var z=this,te=this.attributes,re=te.showLabel,oe=te.orientation,le=te.spacing,ce=le===void 0?0:le,ge=te.formatter;T0(re,E,function(Ae){var Me,Ue=iu(z.attributes,"label"),Xe=Ue.text,$e=(0,wn._T)(Ue,["text"]),rt=((Me=Ae.select(o2.marker.class))===null||Me===void 0?void 0:Me.node().getBBox())||{},ot=rt.width,pt=ot===void 0?0:ot,yt=rt.height,Ct=yt===void 0?0:yt,zt=(0,wn.CR)(AD(oe,[0,Ct+ce,"center","top"],[pt+ce,0,"start","middle"]),4),Wt=zt[0],Ht=zt[1],Qt=zt[2],Gt=zt[3];Ae.maybeAppendByClassName(o2.label,"text").styles((0,wn.pi)((0,wn.pi)({},$e),{x:Wt,y:Ht,text:ge(Xe).toString(),textAlign:Qt,textBaseline:Gt}))})},x}(Id),BB={showTitle:!0,padding:0,orientation:"horizontal",backgroundFill:"transparent",titleText:"",titleSpacing:4,titlePosition:"top-left",titleFill:"#2C3542",titleFontWeight:"bold",titleFontFamily:"sans-serif",titleFontSize:12},uH=eg({},BB,{}),Vq=eg({},BB,jS(NB,"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"}),Kq=.01,Zq=.5,a2=gm({title:"title",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"),cH=function(b){(0,wn.ZT)(x,b);function x(E){return b.call(this,E,uH)||this}return x.prototype.renderTitle=function(E,z,te){var re=this.attributes,oe=re.showTitle,le=re.titleText,ce=iu(this.attributes,"title"),ge=(0,wn.CR)(i1(ce),2),Ae=ge[0],Me=ge[1];this.titleGroup=E.maybeAppendByClassName(a2.titleGroup,"g").styles(Me);var Ue=(0,wn.pi)((0,wn.pi)({width:z,height:te},Ae),{text:oe?le:""});this.title=this.titleGroup.maybeAppendByClassName(a2.title,function(){return new PG({style:Ue})}).update(Ue)},x.prototype.renderItems=function(E,z){var te=z.x,re=z.y,oe=z.width,le=z.height,ce=iu(this.attributes,"title",!0),ge=(0,wn.CR)(i1(ce),2),Ae=ge[0],Me=ge[1],Ue=(0,wn.pi)((0,wn.pi)({},Ae),{width:oe,height:le,x:0,y:0});this.itemsGroup=E.maybeAppendByClassName(a2.itemsGroup,"g").styles((0,wn.pi)((0,wn.pi)({},Me),{transform:"translate(".concat(te,", ").concat(re,")")}));var Xe=this;this.itemsGroup.selectAll(a2.items.class).data(["items"]).join(function($e){return $e.append(function(){return new lH({style:Ue})}).attr("className",a2.items.name).each(function(){Xe.items=Qs(this)})},function($e){return $e.update(Ue)},function($e){return $e.remove()})},x.prototype.adjustLayout=function(){var E=this.attributes.showTitle;if(E){var z=this.title.node().getAvailableSpace(),te=z.x,re=z.y;this.itemsGroup.node().style.transform="translate(".concat(te,", ").concat(re,")")}},Object.defineProperty(x.prototype,"availableSpace",{get:function(){var E=this.attributes,z=E.showTitle,te=E.width,re=E.height;return z?this.title.node().getAvailableSpace():new ip(0,0,te,re)},enumerable:!1,configurable:!0}),x.prototype.getBBox=function(){var E,z,te=(E=this.title)===null||E===void 0?void 0:E.node(),re=(z=this.items)===null||z===void 0?void 0:z.node();return!te||!re?b.prototype.getBBox.call(this):wG(te,re)},x.prototype.render=function(E,z){var te=this.attributes,re=te.width,oe=te.height,le=te.x,ce=le===void 0?0:le,ge=te.y,Ae=ge===void 0?0:ge,Me=Qs(z);z.style.transform="translate(".concat(ce,", ").concat(Ae,")"),this.renderTitle(Me,re,oe),this.renderItems(Me,this.availableSpace),this.adjustLayout()},x}(Id);function CD(b){const{width:x,height:E,renderer:z}=b,te=hH(b),re=new nx({width:x,height:E,container:te,renderer:z||new HC});return[te,re]}function hH(b){var x;const{container:E,className:z,graphCanvas:te}=b;if(E)return typeof E=="string"?document.getElementById(E):E;const re=zS(z,!1),{width:oe,height:le,containerStyle:ce}=b,[ge,Ae]=dH(b);return Object.assign(re.style,Object.assign({position:"absolute",left:ge+"px",top:Ae+"px",width:oe+"px",height:le+"px"},ce)),(x=te.getContainer())===null||x===void 0||x.appendChild(re),re}function dH(b){const{width:x,height:E,placement:z,graphCanvas:te}=b,[re,oe]=te.getSize(),[le,ce]=D3(z);return[le*(re-x),ce*(oe-E)]}var fH=function(b,x){var E={};for(var z in b)Object.prototype.hasOwnProperty.call(b,z)&&x.indexOf(z)<0&&(E[z]=b[z]);if(b!=null&&typeof Object.getOwnPropertySymbols=="function")for(var te=0,z=Object.getOwnPropertySymbols(b);te{const{graph:z}=this.context;z.on(es.AFTER_DRAW,this.createElement)},this.changeState=(z,te)=>{const{graph:re}=this.context,{typePrefix:oe}=this,le=bp(z,[oe,"id"]),ce=bp(z,[oe,"style","labelText"]),[ge]=le.split("__"),Ae=this.fieldMap[ge].get(ce)||[];re.setElementState(Object.fromEntries(Ae==null?void 0:Ae.map(Me=>[Me,te])))},this.click=z=>{if(this.options.trigger==="hover")return;const te=bp(z,[this.typePrefix,"id"]);this.selectedItems.includes(te)?(this.selectedItems=this.selectedItems.filter(re=>re!==te),this.changeState(z,[])):(this.selectedItems.push(te),this.changeState(z,"selected"))},this.mouseleave=z=>{this.options.trigger!=="click"&&(this.selectedItems=[],this.changeState(z,[]))},this.mouseenter=z=>{if(this.options.trigger==="click")return;const te=bp(z,[this.typePrefix,"id"]);this.selectedItems.includes(te)?this.selectedItems=this.selectedItems.filter(re=>re!==te):(this.selectedItems.push(te),this.changeState(z,"active"))},this.setFieldMap=(z,te,re)=>{if(!z)return;const oe=this.fieldMap[re];if(oe)if(!oe.has(z))oe.set(z,[te]);else{const le=oe.get(z);le&&(le.push(te),oe.set(z,le))}},this.getEvents=()=>({mouseenter:this.mouseenter,mouseleave:this.mouseleave,click:this.click}),this.getMarkerData=(z,te)=>{if(!z)return[];const{model:re,element:oe}=this.context,{nodes:le,edges:ce,combos:ge}=re.getData(),Ae={},Me=ot=>_s(z)?z(ot):z,Ue={node:"circle",edge:"line",combo:"rect"},Xe={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"},$e=(ot,pt)=>oe==null?void 0:oe.getElementComputedStyle(ot,pt),rt=(ot,pt)=>{ot.forEach(yt=>{const{id:Ct}=yt,zt=bp(yt,["data",Me(yt)]),Wt=(oe==null?void 0:oe.getElementType(pt,yt))||"circle",Ht=$e(pt,yt),Qt=(pt==="edge"?Ht==null?void 0:Ht.stroke:Ht==null?void 0:Ht.fill)||"#1783ff";Ct&&zt&&zt.replace(/\s+/g,"")&&(this.setFieldMap(zt,Ct,pt),Ae[zt]||(Ae[zt]={id:`${pt}__${Ct}`,label:zt,marker:Xe[Wt]||Ue[pt],elementType:pt,lineWidth:1,stroke:Qt,fill:Qt}))})};switch(te){case"node":rt(le,"node");break;case"edge":rt(ce,"edge");break;case"combo":rt(ge,"combo");break;default:return[]}return Object.values(Ae)},this.createElement=()=>{if(this.draw){this.updateElement();return}const z=this.options,{width:te,height:re,nodeField:oe,edgeField:le,comboField:ce,trigger:ge,position:Ae,container:Me,containerStyle:Ue,className:Xe}=z,$e=fH(z,["width","height","nodeField","edgeField","comboField","trigger","position","container","containerStyle","className"]),rt=this.getMarkerData(oe,"node"),ot=this.getMarkerData(le,"edge"),pt=this.getMarkerData(ce,"combo"),yt=[...rt,...pt,...ot],Ct=Object.assign({width:te,height:re,data:yt,itemMarkerLineWidth:({lineWidth:Ht})=>Ht,itemMarker:({marker:Ht})=>Ht,itemMarkerStroke:({stroke:Ht})=>Ht,itemMarkerFill:({fill:Ht})=>Ht,gridCol:rt.length},$e,this.getEvents()),zt=new cH({className:"legend",style:Ct});this.category=zt,this.upsertCanvas().appendChild(zt),this.draw=!0},this.bindEvents()}update(x){super.update(x),this.clear(),this.createElement()}clear(){var x,E;(x=this.canvas)===null||x===void 0||x.destroy(),(E=this.container)===null||E===void 0||E.remove(),this.canvas=void 0,this.container=void 0,this.draw=!1}updateElement(){this.category&&this.category.update({itemMarkerOpacity:({id:x})=>!this.selectedItems.length||this.selectedItems.includes(x)?1:.5,itemLabelOpacity:({id:x})=>!this.selectedItems.length||this.selectedItems.includes(x)?1:.5})}upsertCanvas(){if(this.canvas)return this.canvas;const x=this.context.canvas,[E,z]=x.getSize(),{width:te=E,height:re=z,position:oe,container:le,containerStyle:ce,className:ge}=this.options,[Ae,Me]=CD({width:te,height:re,graphCanvas:x,container:le,containerStyle:ce,placement:oe,className:"legend"});return this.container=Ae,ge&&Ae.classList.add(ge),this.canvas=Me,this.canvas}destroy(){this.clear(),this.context.graph.off(es.AFTER_DRAW,this.createElement),super.destroy()}}cL.defaultOptions={position:"bottom",trigger:"hover",orientation:"horizontal",layout:"flex",itemSpacing:4,rowPadding:10,colPadding:10,itemMarkerSize:16,itemLabelFontSize:16,width:240,height:160};class hL extends Fg{constructor(x,E){super(x,Object.assign({},hL.defaultOptions,E)),this.onDraw=z=>{var te;!((te=z==null?void 0:z.data)===null||te===void 0)&&te.render||this.onRender()},this.shapes=new Map,this.landmarkMap=new Map,this.mask=null,this.isMaskDragging=!1,this.onMaskDragStart=z=>{this.mask&&(this.isMaskDragging=!0,this.mask.setPointerCapture(z.pointerId),this.mask.addEventListener("pointermove",this.onMaskDrag),this.mask.addEventListener("pointerup",this.onMaskDragEnd),this.mask.addEventListener("pointercancel",this.onMaskDragEnd))},this.onMaskDrag=z=>{if(!this.mask||!this.isMaskDragging)return;const{size:[te,re]}=this.options,{movementX:oe,movementY:le}=z,{left:ce,top:ge,width:Ae,height:Me}=this.mask.style,[,,Ue,Xe]=this.maskBBox;let $e=parseInt(ce)+oe,rt=parseInt(ge)+le,ot=parseInt(Ae),pt=parseInt(Me);$e<0&&($e=0),rt<0&&(rt=0),$e+ot>te&&($e=Mx(te-ot,0)),rt+pt>re&&(rt=Mx(re-pt,0)),ot0?($e=Mx($e-oe,0),ot=Px(ot+oe,te)):oe<0&&(ot=Px(ot-oe,te))),pt0?(rt=Mx(rt-le,0),pt=Px(pt+le,re)):le<0&&(pt=Px(pt-le,re))),Object.assign(this.mask.style,{left:$e+"px",top:rt+"px",width:ot+"px",height:pt+"px"});const yt=parseInt(ce)-$e,Ct=parseInt(ge)-rt;if(yt===0&&Ct===0)return;const zt=this.context.canvas.getCamera().getZoom(),Wt=this.canvas.getCamera().getZoom(),Ht=zt/Wt;this.context.graph.translateBy([yt*Ht,Ct*Ht],!1)},this.onMaskDragEnd=z=>{this.mask&&(this.isMaskDragging=!1,this.mask.releasePointerCapture(z.pointerId),this.mask.removeEventListener("pointermove",this.onMaskDrag),this.mask.removeEventListener("pointerup",this.onMaskDragEnd),this.mask.removeEventListener("pointercancel",this.onMaskDragEnd))},this.onTransform=_I(()=>{this.isMaskDragging||(this.updateMask(),this.setCamera())},32,{leading:!0}),this.setOnRender(),this.bindEvents()}update(x){this.unbindEvents(),super.update(x),"delay"in x&&this.setOnRender(),this.bindEvents()}setOnRender(){this.onRender=YC(()=>{this.renderMinimap(),this.renderMask()},this.options.delay,!0)}bindEvents(){const{graph:x}=this.context;x.on(es.AFTER_DRAW,this.onDraw),x.on(es.AFTER_RENDER,this.onRender),x.on(es.AFTER_TRANSFORM,this.onTransform)}unbindEvents(){const{graph:x}=this.context;x.off(es.AFTER_DRAW,this.onDraw),x.off(es.AFTER_RENDER,this.onRender),x.off(es.AFTER_TRANSFORM,this.onTransform)}renderMinimap(){const x=this.getElements(),E=this.initCanvas();this.setShapes(E,x)}getElements(){const{filter:x}=this.options,{model:E}=this.context,z=E.getData();if(!x)return z;const{nodes:te,edges:re,combos:oe}=z;return{nodes:te.filter(le=>x(Ji(le),"node")),edges:re.filter(le=>x(Ji(le),"edge")),combos:oe.filter(le=>x(Ji(le),"combo"))}}setShapes(x,E){const{nodes:z,edges:te,combos:re}=E,{shape:oe}=this.options,{element:le}=this.context;if(oe==="key"){const ge=new Set,Ae=Me=>{const Ue=Ji(Me);ge.add(Ue);const Xe=le.getElement(Ue);if(!Xe)return;const $e=Xe.getShape("key"),rt=this.shapes.get(Ue)||$e.cloneNode();rt.setPosition($e.getPosition()),Xe.style.zIndex&&(rt.style.zIndex=Xe.style.zIndex),rt.id=Xe.id,this.shapes.has(Ue)?Object.entries($e.attributes).forEach(([ot,pt])=>{rt.style[ot]!==pt&&(rt.style[ot]=pt)}):(x.appendChild(rt),this.shapes.set(Ue,rt))};te.forEach(Ae),re.forEach(Ae),z.forEach(Ae),this.shapes.forEach((Me,Ue)=>{ge.has(Ue)||(x.removeChild(Me),this.shapes.delete(Ue))});return}const ce=(ge,Ae)=>{const Ue=le.getElement(ge).getPosition();return Ae.setPosition(Ue),Ae};x.removeChildren(),te.forEach(ge=>x.appendChild(oe(Ji(ge),"edge"))),re.forEach(ge=>{x.appendChild(ce(Ji(ge),oe(Ji(ge),"combo")))}),z.forEach(ge=>{x.appendChild(ce(Ji(ge),oe(Ji(ge),"node")))})}initCanvas(){const{renderer:x,size:[E,z]}=this.options;if(this.canvas){const{width:te,height:re}=this.canvas.getConfig();(E!==te||z!==re)&&this.canvas.resize(E,z),x&&this.canvas.setRenderer(x)}else{const{className:te,position:re,container:oe,containerStyle:le}=this.options,[ce,ge]=CD({renderer:x,width:E,height:z,placement:re,className:"minimap",container:oe,containerStyle:le,graphCanvas:this.context.canvas});te&&ce.classList.add(te),this.container=ce,this.canvas=ge}return this.setCamera(),this.canvas}createLandmark(x,E,z){const te=`${x.join(",")}-${E.join(",")}-${z}`;if(this.landmarkMap.has(te))return this.landmarkMap.get(te);const oe=this.canvas.getCamera().createLandmark(te,{position:x,focalPoint:E,zoom:z});return this.landmarkMap.set(te,oe),oe}setCamera(){var x;const{canvas:E}=this.context,z=(x=this.canvas)===null||x===void 0?void 0:x.getCamera();if(!z)return;const{size:[te,re],padding:oe}=this.options,[le,ce,ge,Ae]=am(oe),{min:Me,max:Ue,center:Xe}=E.getBounds("elements"),$e=Ue[0]-Me[0],rt=Ue[1]-Me[1],ot=te-Ae-ce,pt=re-le-ge,yt=ot/$e,Ct=pt/rt,zt=Math.min(yt,Ct),Wt=this.createLandmark(Xe,Xe,zt);z.gotoLandmark(Wt,0)}get maskBBox(){const{canvas:x}=this.context,E=x.getSize(),z=x.getCanvasByViewport([0,0]),te=x.getCanvasByViewport(E),re=this.canvas.canvas2Viewport(cm(z)),oe=this.canvas.canvas2Viewport(cm(te)),le=oe.x-re.x,ce=oe.y-re.y;return[re.x,re.y,le,ce]}calculateMaskBBox(){const{size:[x,E]}=this.options;let[z,te,re,oe]=this.maskBBox;return z<0&&(re=Px(re+z,x),z=0),te<0&&(oe=Px(oe+te,E),te=0),z+re>x&&(re=Mx(x-z,0)),te+oe>E&&(oe=Mx(E-te,0)),[Px(z,x),Px(te,E),Mx(re,0),Mx(oe,0)]}renderMask(){const{maskStyle:x}=this.options;this.mask||(this.mask=document.createElement("div"),this.mask.addEventListener("pointerdown",this.onMaskDragStart)),this.container.appendChild(this.mask),Object.assign(this.mask.style,Object.assign(Object.assign({},x),{cursor:"move",position:"absolute",pointerEvents:"auto"})),this.updateMask()}updateMask(){if(!this.mask)return;const[x,E,z,te]=this.calculateMaskBBox();Object.assign(this.mask.style,{top:E+"px",left:x+"px",width:z+"px",height:te+"px"})}destroy(){var x;this.unbindEvents(),this.canvas.destroy(),(x=this.mask)===null||x===void 0||x.remove(),super.destroy()}}hL.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 Px=(b,x)=>Math.min(b,x),Mx=(b,x)=>Math.max(b,x);var bD=function(b,x,E,z){function te(re){return re instanceof E?re:new E(function(oe){oe(re)})}return new(E||(E=Promise))(function(re,oe){function le(Ae){try{ge(z.next(Ae))}catch(Me){oe(Me)}}function ce(Ae){try{ge(z.throw(Ae))}catch(Me){oe(Me)}}function ge(Ae){Ae.done?re(Ae.value):te(Ae.value).then(le,ce)}ge((z=z.apply(b,x||[])).next())})};const PD={x1:0,y1:0,x2:0,y2:0,visibility:"hidden"};class dL extends Fg{constructor(x,E){super(x,Object.assign({},dL.defaultOptions,E)),this.initSnapline=()=>{const z=this.context.canvas.getLayer("transient");this.horizontalLine||(this.horizontalLine=z.appendChild(new uf({style:Object.assign(Object.assign({},PD),this.options.horizontalLineStyle)}))),this.verticalLine||(this.verticalLine=z.appendChild(new uf({style:Object.assign(Object.assign({},PD),this.options.verticalLineStyle)})))},this.isHorizontalSticking=!1,this.isVerticalSticking=!1,this.enableStick=!0,this.autoSnapToLine=(z,te,re)=>bD(this,void 0,void 0,function*(){const{verticalX:oe,horizontalY:le}=re,{tolerance:ce}=this.options,{min:[ge,Ae],max:[Me,Ue],center:[Xe,$e]}=te;let rt=0,ot=0;oe!==null&&(op(Me,oe){const{target:te}=z,re=.5;if(this.isHorizontalSticking||this.isVerticalSticking){const[oe,le]=this.getDelta(z);if(this.isHorizontalSticking&&this.isVerticalSticking&&Math.abs(oe)<=re&&Math.abs(le)<=re)return this.context.graph.translateElementBy({[te.id]:[-oe,-le]},!1),!1;if(this.isHorizontalSticking&&Math.abs(le)<=re)return this.context.graph.translateElementBy({[te.id]:[0,-le]},!1),!1;if(this.isVerticalSticking&&Math.abs(oe)<=re)return this.context.graph.translateElementBy({[te.id]:[-oe,0]},!1),!1;this.isHorizontalSticking=!1,this.isVerticalSticking=!1,this.enableStick=!1,setTimeout(()=>{this.enableStick=!0},200)}return this.enableStick},this.calcSnaplineMetadata=(z,te)=>{const{tolerance:re,shape:oe}=this.options,{min:[le,ce],max:[ge,Ae],center:[Me,Ue]}=te;let Xe=null,$e=null,rt=null,ot=null,pt=null,yt=null;return this.getNodes().some(Ct=>{if(Vd(z.id,Ct.id))return!1;const zt=RB(Ct,oe).getRenderBounds(),{min:[Wt,Ht],max:[Qt,Gt],center:[vn,Sn]}=zt;return Xe===null&&(op(vn,Me){this.initSnapline()},this.onDrag=z=>bD(this,void 0,void 0,function*(){const{target:te}=z;if(this.options.autoSnap&&!this.enableSnap(z))return;const re=RB(te,this.options.shape).getRenderBounds(),oe=this.calcSnaplineMetadata(te,re);this.hideSnapline(),(oe.verticalX!==null||oe.horizontalY!==null)&&this.updateSnapline(oe),this.options.autoSnap&&(yield this.autoSnapToLine(te.id,re,oe))}),this.onDragEnd=()=>{this.hideSnapline()},this.bindEvents()}getNodes(){var x;const{filter:E}=this.options,te=(((x=this.context.element)===null||x===void 0?void 0:x.getNodes())||[]).filter(re=>{var oe;return r9(re)&&((oe=this.context.viewport)===null||oe===void 0?void 0:oe.isInViewport(re.getRenderBounds()))});return E?te.filter(re=>E(re)):te}hideSnapline(){this.horizontalLine.style.visibility="hidden",this.verticalLine.style.visibility="hidden"}getLineWidth(x){const{lineWidth:E}=this.options[`${x}LineStyle`];return+(E||PD.lineWidth||1)/this.context.graph.getZoom()}updateSnapline(x){const{verticalX:E,verticalMinY:z,verticalMaxY:te,horizontalY:re,horizontalMinX:oe,horizontalMaxX:le}=x,[ce,ge]=this.context.canvas.getSize(),{offset:Ae}=this.options;re!==null?Object.assign(this.horizontalLine.style,{x1:Ae===1/0?0:oe-Ae,y1:re,x2:Ae===1/0?ce:le+Ae,y2:re,visibility:"visible",lineWidth:this.getLineWidth("horizontal")}):this.horizontalLine.style.visibility="hidden",E!==null?Object.assign(this.verticalLine.style,{x1:E,y1:Ae===1/0?0:z-Ae,x2:E,y2:Ae===1/0?ge:te+Ae,visibility:"visible",lineWidth:this.getLineWidth("vertical")}):this.verticalLine.style.visibility="hidden"}getDelta(x){const E=this.context.graph.getZoom();return um([x.dx,x.dy],E)}bindEvents(){return bD(this,void 0,void 0,function*(){const{graph:x}=this.context;x.on(vv.DRAG_START,this.onDragStart),x.on(vv.DRAG,this.onDrag),x.on(vv.DRAG_END,this.onDragEnd)})}unbindEvents(){const{graph:x}=this.context;x.off(vv.DRAG_START,this.onDragStart),x.off(vv.DRAG,this.onDrag),x.off(vv.DRAG_END,this.onDragEnd)}destroyElements(){var x,E;(x=this.horizontalLine)===null||x===void 0||x.destroy(),(E=this.verticalLine)===null||E===void 0||E.destroy()}destroy(){this.destroyElements(),this.unbindEvents(),super.destroy()}}dL.defaultOptions={tolerance:5,offset:20,autoSnap:!0,shape:"key",verticalLineStyle:{stroke:"#1783FF"},horizontalLineStyle:{stroke:"#1783FF"},filter:()=>!0};const op=(b,x)=>Math.abs(b-x),RB=(b,x)=>typeof x=="function"?x(b):b.getShape(x);var kB=null,gH=null;function fL(b){return b instanceof Date?b:new Date(b)}function pH(b){for(var x=__read(b,2),E=x[0],z=x[1],te=kB.indexOf(E),re=kB.indexOf(z),oe="",le=te;le<=re;le+=1)if(oe+=gH[le],le2&&(ce=":"),oe+=ce}return oe}function Tp(b,x){var E={YYYY:b.getFullYear(),MM:b.getMonth()+1,DD:b.getDate(),HH:b.getHours(),mm:b.getMinutes(),ss:b.getSeconds()},z=x;return Object.keys(E).forEach(function(te){var re=E[te];z=z.replace(te,te==="YYYY"?"".concat(re):"".concat(re).padStart(2,"0"))}),z}function Yq(b,x){return fL(b).getTime()-fL(x).getTime()}function Xq(b,x){var E=__read([fL(b),fL(x)],2),z=E[0],te=E[1];return z.getFullYear()!==te.getFullYear()?"year":z.getMonth()!==te.getMonth()?"month":z.getDay()!==te.getDay()?"day":z.getHours()!==te.getHours()?"hour":z.getMinutes()!==te.getMinutes()?"minute":"second"}function Qq(b,x){var E=new Date(b),z={year:function(te){te.setMonth(0),te.setHours(0,0,0,0)},month:function(te){te.setDate(1),te.setHours(0,0,0,0)},day:function(te){return te.setHours(0,0,0,0)},hour:function(te){return te.setMinutes(0,0,0)},minute:function(te){return te.setSeconds(0,0)},second:function(te){return te.setMilliseconds(0)}};return z[x](E),Tp(E,pH(["year",x]))}function vH(b,x){if(b.length<=x)return b;for(var E=Math.floor(b.length/x),z=[],te=0;te180?1:0,Gt=b>x?0:1,vn=!1;return vn?"M".concat(E,",").concat(z,",L").concat($e,",").concat(rt,",A").concat(le,",").concat(ce,",0,").concat(Qt,",").concat(Gt,",").concat(pt,",").concat(yt,",L").concat(E,",").concat(z):"M".concat($e,",").concat(rt,",A").concat(le,",").concat(ce,",0,").concat(Qt,",").concat(Gt,",").concat(pt,",").concat(yt)}function OH(b){var x=b.attributes,E=x.startAngle,z=x.endAngle,te=x.center,re=x.radius;return(0,wn.ev)((0,wn.ev)([E,z],(0,wn.CR)(te),!1),[re],!1)}function NH(b,x,E,z){var te=x.startAngle,re=x.endAngle,oe=x.center,le=x.radius;return b.selectAll(Xc.line.class).data([{d:ZB.apply(void 0,(0,wn.ev)((0,wn.ev)([te,re],(0,wn.CR)(oe),!1),[le],!1))}],function(ce,ge){return ge}).join(function(ce){return ce.append("path").attr("className",Xc.line.name).styles(x).styles({d:function(ge){return ge.d}})},function(ce){return ce.transition(function(){var ge=this,Ae=TH(this,OH(this),(0,wn.ev)((0,wn.ev)([te,re],(0,wn.CR)(oe),!1),[le],!1),z.update);if(Ae){var Me=function(){var Ue=bp(ge.attributes,"__keyframe_data__");ge.style.d=ZB.apply(void 0,(0,wn.ev)([],(0,wn.CR)(Ue),!1))};Ae.onframe=Me,Ae.onfinish=Me}return Ae}).styles(x)},function(ce){return ce.remove()}).styles(E).transitions()}function BH(b,x){var E=x.truncRange,z=x.truncShape,te=x.lineExtension}function RH(b,x,E){E===void 0&&(E=[0,0]);var z=(0,wn.CR)([b,x,E],3),te=(0,wn.CR)(z[0],2),re=te[0],oe=te[1],le=(0,wn.CR)(z[1],2),ce=le[0],ge=le[1],Ae=(0,wn.CR)(z[2],2),Me=Ae[0],Ue=Ae[1],Xe=(0,wn.CR)([ce-re,ge-oe],2),$e=Xe[0],rt=Xe[1],ot=Math.sqrt(Math.pow($e,2)+Math.pow(rt,2)),pt=(0,wn.CR)([-Me/ot,Ue/ot],2),yt=pt[0],Ct=pt[1];return[yt*$e,yt*rt,Ct*$e,Ct*rt]}function YB(b){var x=(0,wn.CR)(b,2),E=(0,wn.CR)(x[0],2),z=E[0],te=E[1],re=(0,wn.CR)(x[1],2),oe=re[0],le=re[1];return{x1:z,y1:te,x2:oe,y2:le}}function kH(b,x,E,z){var te=x.showTrunc,re=x.startPos,oe=x.endPos,le=x.truncRange,ce=x.lineExtension,ge=(0,wn.CR)([re,oe],2),Ae=(0,wn.CR)(ge[0],2),Me=Ae[0],Ue=Ae[1],Xe=(0,wn.CR)(ge[1],2),$e=Xe[0],rt=Xe[1],ot=(0,wn.CR)(ce?RH(re,oe,ce):new Array(4).fill(0),4),pt=ot[0],yt=ot[1],Ct=ot[2],zt=ot[3],Wt=function(Sr){return b.selectAll(Xc.line.class).data(Sr,function(Ir,si){return si}).join(function(Ir){return Ir.append("line").attr("className",function(si){return"".concat(Xc.line.name," ").concat(si.className)}).styles(E).transition(function(si){return pm(this,YB(si.line),!1)})},function(Ir){return Ir.styles(E).transition(function(si){var Cr=si.line;return pm(this,YB(Cr),z.update)})},function(Ir){return Ir.remove()}).transitions()};if(!te||!le)return Wt([{line:[[Me+pt,Ue+yt],[$e+Ct,rt+zt]],className:Xc.line.name}]);var Ht=(0,wn.CR)(le,2),Qt=Ht[0],Gt=Ht[1],vn=$e-Me,Sn=rt-Ue,kn=(0,wn.CR)([Me+vn*Qt,Ue+Sn*Qt],2),Kn=kn[0],vr=kn[1],er=(0,wn.CR)([Me+vn*Gt,Ue+Sn*Gt],2),Nr=er[0],ei=er[1],Ar=Wt([{line:[[Me+pt,Ue+yt],[Kn,vr]],className:Xc.lineFirst.name},{line:[[Nr,ei],[$e+Ct,rt+zt]],className:Xc.lineSecond.name}]);return BH(b,x),Ar}function FH(b,x,E,z){var te=E.showArrow,re=E.showTrunc,oe=E.lineArrow,le=E.lineArrowOffset,ce=E.lineArrowSize,ge;if(x==="arc"?ge=b.select(Xc.line.class):re?ge=b.select(Xc.lineSecond.class):ge=b.select(Xc.line.class),!te||!oe||E.type==="arc"&&KB(E.startAngle,E.endAngle)){var Ae=ge.node();Ae&&(Ae.style.markerEnd=void 0);return}var Me=o1(oe);Me.attr(z),ED(Me,ce,!0),ge.style("markerEnd",Me).style("markerEndOffset",-le)}function _H(b,x,E){var z=x.type,te,re=iu(x,"line");return z==="linear"?te=kH(b,x,WB(re,"arrow"),E):te=NH(b,x,WB(re,"arrow"),E),FH(b,z,x,re),te}function zH(b,x){return OD(b,x.gridDirection,x)}function XB(b){var x=b.type,E=b.gridCenter;return x==="linear"?E:E||b.center}function jH(b,x){var E=x.gridLength;return b.map(function(z,te){var re=z.value,oe=(0,wn.CR)(vL(re,x),2),le=oe[0],ce=oe[1],ge=(0,wn.CR)(a1(zH(re,x),E),2),Ae=ge[0],Me=ge[1];return{id:te,points:[[le,ce],[le+Ae,ce+Me]]}})}function WH(b,x){var E=x.gridControlAngles,z=XB(x);if(!z)throw new Error("grid center is not provide");if(b.length<2)throw new Error("Invalid grid data");if(!E||E.length===0)throw new Error("Invalid gridControlAngles");var te=(0,wn.CR)(z,2),re=te[0],oe=te[1];return b.map(function(le,ce){var ge=le.value,Ae=(0,wn.CR)(vL(ge,x),2),Me=Ae[0],Ue=Ae[1],Xe=(0,wn.CR)([Me-re,Ue-oe],2),$e=Xe[0],rt=Xe[1],ot=[];return E.forEach(function(pt){var yt=US(pt),Ct=(0,wn.CR)([Math.cos(yt),Math.sin(yt)],2),zt=Ct[0],Wt=Ct[1],Ht=$e*zt-rt*Wt+re,Qt=$e*Wt+rt*zt+oe;ot.push([Ht,Qt])}),{points:ot,id:ce}})}function UH(b,x,E,z){var te=iu(E,"grid"),re=te.type,oe=te.areaFill,le=XB(E),ce=ID(x,E.gridFilter),ge=re==="segment"?jH(ce,E):WH(ce,E),Ae=(0,wn.pi)((0,wn.pi)({},te),{center:le,areaFill:_s(oe)?ce.map(function(Me,Ue){return xv(oe,[Me,Ue,ce])}):oe,animate:z,data:ge});return b.selectAll(Xc.grid.class).data([1]).join(function(Me){return Me.append(function(){return new bH({style:Ae})}).attr("className",Xc.grid.name)},function(Me){return Me.transition(function(){return this.update(Ae)})},function(Me){return Me.remove()}).transitions()}function zg(b,x,E,z,te){return z===void 0&&(z=!0),te===void 0&&(te=!1),z&&b===x||te&&b===E?!0:b>x&&b0,yt=z-ce,Ct=te-ge,zt=Ue*Ct-Xe*yt;if(zt<0===pt)return!1;var Wt=$e*Ct-rt*yt;return!(Wt<0===pt||zt>ot===pt||Wt>ot===pt)}function $B(b,x){var E=[[b[0],b[1],b[2],b[3]],[b[2],b[3],b[4],b[5]],[b[4],b[5],b[6],b[7]],[b[6],b[7],b[0],b[1]]];return E.some(function(z){return qB(x,z)})}var t$={lineToLine:qB,intersectBoxLine:$B,getBounds:mL};function XH(b,x,E){var z,te,re=mL(b,E).flat(1),oe=mL(x,E).flat(1),le=[[re[0],re[1],re[2],re[3]],[re[0],re[1],re[4],re[5]],[re[4],re[5],re[6],re[7]],[re[2],re[3],re[6],re[7]]];try{for(var ce=(0,wn.XA)(le),ge=ce.next();!ge.done;ge=ce.next()){var Ae=ge.value;if($B(oe,Ae))return!0}}catch(Me){z={error:Me}}finally{try{ge&&!ge.done&&(te=ce.return)&&te.call(ce)}finally{if(z)throw z.error}}return!1}function QH(b,x){var E=b.type,z=b.labelDirection,te=b.crossSize;if(!te)return!1;if(E==="arc"){var re=b.center,oe=b.radius,le=(0,wn.CR)(re,2),ce=le[0],ge=le[1],Ae=z==="negative"?0:te,Me=-oe-Ae,Ue=oe+Ae,Xe=(0,wn.CR)(_g(x),4),$e=Xe[0],rt=Xe[1],ot=Xe[2],pt=Xe[3];return new ND(ce+Me-pt,ge+Me-$e,ce+Ue+rt,ge+Ue+ot)}var yt=(0,wn.CR)(b.startPos,2),Ct=yt[0],zt=yt[1],Wt=(0,wn.CR)(b.endPos,2),Ht=Wt[0],Qt=Wt[1],Gt=(0,wn.CR)(VB(b)?[-x,0,x,0]:[0,x,0,-x],4),vn=Gt[0],Sn=Gt[1],kn=Gt[2],Kn=Gt[3],vr=u2(0,b),er=a1(vr,te),Nr=new ND(Ct,zt,Ht,Qt);return Nr.x1+=Kn,Nr.y1+=vn,Nr.x2+=Sn+er[0],Nr.y2+=kn+er[1],Nr}function yL(b,x,E){var z,te,re=x.crossPadding,oe=new Set,le=null,ce=QH(x,re),ge=function($e){return ce?YH(ce,$e):!0},Ae=function($e,rt){return!$e||!$e.firstChild?!0:!XH($e.firstChild,rt.firstChild,_g(E))};try{for(var Me=(0,wn.XA)(b),Ue=Me.next();!Ue.done;Ue=Me.next()){var Xe=Ue.value;ge(Xe)?!le||Ae(le,Xe)?le=Xe:(oe.add(le),oe.add(Xe)):oe.add(Xe)}}catch($e){z={error:$e}}finally{try{Ue&&!Ue.done&&(te=Me.return)&&te.call(Me)}finally{if(z)throw z.error}}return Array.from(oe)}function BD(b,x){return x===void 0&&(x={}),fl(b)?0:typeof b=="number"?b:Math.floor(oH(b,x))}function JH(b,x,E,z){if(!(b.length<=1)){var te=x.suffix,re=te===void 0?"...":te,oe=x.minLength,le=x.maxLength,ce=le===void 0?1/0:le,ge=x.step,Ae=ge===void 0?" ":ge,Me=x.margin,Ue=Me===void 0?[0,0,0,0]:Me,Xe=TB(z.getTextShape(b[0])),$e=BD(Ae,Xe),rt=oe?BD(oe,Xe):$e,ot=BD(ce,Xe);(fl(ot)||ot===1/0)&&(ot=Math.max.apply(null,b.map(function(er){return er.getBBox().width})));for(var pt=b.slice(),yt=(0,wn.CR)(Ue,4),Ct=yt[0],zt=Ct===void 0?0:Ct,Wt=yt[1],Ht=Wt===void 0?0:Wt,Qt=yt[2],Gt=Qt===void 0?zt:Qt,vn=yt[3],Sn=vn===void 0?Ht:vn,kn=function(er){if(pt.forEach(function(Nr){z.ellipsis(z.getTextShape(Nr),er,re)}),pt=yL(b,E,Ue),pt.length<1)return{value:void 0}},Kn=ot;Kn>rt+$e;Kn-=$e){var vr=kn(Kn);if(typeof vr=="object")return vr.value}}}var qH={parity:function(b,x){var E=x.seq,z=E===void 0?2:E;return b.filter(function(te,re){return re%z?(fm(te),!1):!0})}},$H=function(b){return b.filter(JB)};function eV(b,x,E,z){var te=b.length,re=x.keepHeader,oe=x.keepTail;if(!(te<=1||te===2&&re&&oe)){var le=qH.parity,ce=function(Ct){return Ct.forEach(z.show),Ct},ge=2,Ae=b.slice(),Me=b.slice(),Ue=Math.min.apply(Math,(0,wn.ev)([1],(0,wn.CR)(b.map(function(Ct){return Ct.getBBox().width})),!1));if(E.type==="linear"&&(HB(E)||VB(E))){var Xe=LB(b[0]).left,$e=LB(b[te-1]).right,rt=Math.abs($e-Xe)||1;ge=Math.max(Math.floor(te*Ue/rt),ge)}var ot,pt;for(re&&(ot=Ae.splice(0,1)[0]),oe&&(pt=Ae.splice(-1,1)[0],Ae.reverse()),ce(Ae);gele)){for(var pt=Xe;pt<=le;pt++)if(ot(pt),$e())return;ge&&ot(Ue)}}var iV=new Map([["hide",eV],["rotate",tV],["ellipsis",JH],["wrap",rV]]);function oV(b,x,E){return x.labelOverlap.length<1?!1:E==="hide"?!gG(b[0]):E==="rotate"?!b.some(function(z){var te;return!!(!((te=z.attr("transform"))===null||te===void 0)&&te.includes("rotate"))}):E==="ellipsis"||E==="wrap"?b.filter(function(z){return z.querySelector("text")}).length>1:!0}function aV(b,x,E){var z=x.labelOverlap,te=z===void 0?[]:z;te.length&&te.forEach(function(re){var oe=re.type,le=iV.get(oe);oV(b,x,oe)&&(le==null||le(b,re,x,E))})}function sV(){for(var b=[],x=0;xUe[0]&&Ht0&&Number.isFinite(b)?x:E},s$=function(b,x){return b*x},l$=function(b,x){return b/2+(x||0)/2},FD=function(b){return b};class h6{constructor(x){this.options=Cp({},this.getDefaultOptions()),this.update(x)}getOptions(){return this.options}update(x={}){this.options=Cp({},this.options,x),this.rescale(x)}rescale(x){}}function _D(b,x){return x-b?E=>(E-b)/(x-b):E=>.5}function xL(b,...x){return x.reduce((E,z)=>te=>E(z(te)),b)}function SV(b,x,E,z,te){let re=E||0,oe=z||b.length;const le=te||(ce=>ce);for(;rex?oe=ce:re=ce+1}return re}var wV=Be(75196),CV=Be.n(wV);function zD(b,x,E){let z=E;return z<0&&(z+=1),z>1&&(z-=1),z<1/6?b+(x-b)*6*z:z<1/2?x:z<2/3?b+(x-b)*(2/3-z)*6:b}function bV(b){const x=b[0]/360,E=b[1]/100,z=b[2]/100,te=b[3];if(E===0)return[z*255,z*255,z*255,te];const re=z<.5?z*(1+E):z+E-z*E,oe=2*z-re,le=zD(oe,re,x+1/3),ce=zD(oe,re,x),ge=zD(oe,re,x-1/3);return[le*255,ce*255,ge*255,te]}function d6(b){const x=CV().get(b);if(!x)return null;const{model:E,value:z}=x;return E==="rgb"?z:E==="hsl"?bV(z):null}const EL=(b,x)=>E=>b*(1-E)+x*E,PV=(b,x)=>{const E=d6(b),z=d6(x);return E===null||z===null?E?()=>b:()=>x:te=>{const re=new Array(4);for(let Ae=0;Ae<4;Ae+=1){const Me=E[Ae],Ue=z[Ae];re[Ae]=Me*(1-te)+Ue*te}const[oe,le,ce,ge]=re;return`rgba(${Math.round(oe)}, ${Math.round(le)}, ${Math.round(ce)}, ${ge})`}},MV=(b,x)=>typeof b=="number"&&typeof x=="number"?EL(b,x):typeof b=="string"&&typeof x=="string"?PV(b,x):()=>b,LV=(b,x)=>{const E=EL(b,x);return z=>Math.round(E(z))};function TV(b){return b===null}function f6(b){return!jl(b)&&!TV(b)&&!Number.isNaN(b)}const jD=Math.sqrt(50),WD=Math.sqrt(10),UD=Math.sqrt(2);function AL(b,x,E){const z=(x-b)/Math.max(0,E),te=Math.floor(Math.log(z)/Math.LN10),re=z/Rx(10,te);return te>=0?(re>=jD?10:re>=WD?5:re>=UD?2:1)*Rx(10,te):-Rx(10,-te)/(re>=jD?10:re>=WD?5:re>=UD?2:1)}function u$(b,x,E){const z=Math.abs(x-b)/Math.max(0,E);let te=Rx(10,Math.floor(Math.log(z)/Math.LN10));const re=z/te;return re>=jD?te*=10:re>=WD?te*=5:re>=UD&&(te*=2),x{const z=[b,x];let te=0,re=z.length-1,oe=z[te],le=z[re],ce;return le0?(oe=Math.floor(oe/ce)*ce,le=Math.ceil(le/ce)*ce,ce=AL(oe,le,E)):ce<0&&(oe=Math.ceil(oe*ce)/ce,le=Math.floor(le*ce)/ce,ce=AL(oe,le,E)),ce>0?(z[te]=Math.floor(oe/ce)*ce,z[re]=Math.ceil(le/ce)*ce):ce<0&&(z[te]=Math.ceil(oe*ce)/ce,z[re]=Math.floor(le*ce)/ce),z};function IV(b,x){const E=xx?b:x;return te=>Math.min(Math.max(E,te),z)}const OV=(b,x,E)=>{const[z,te]=b,[re,oe]=x;let le,ce;return z{const z=Math.min(b.length,x.length)-1,te=new Array(z),re=new Array(z),oe=b[0]>b[z],le=oe?[...b].reverse():b,ce=oe?[...x].reverse():x;for(let ge=0;ge{const Ae=SV(b,ge,1,z)-1,Me=te[Ae],Ue=re[Ae];return xL(Ue,Me)(ge)}},g6=(b,x,E,z)=>(Math.min(b.length,x.length)>2?NV:OV)(b,x,z?LV:E);class BV extends h6{getDefaultOptions(){return{domain:[0,1],range:[0,1],nice:!1,clamp:!1,round:!1,interpolate:EL,tickCount:5}}map(x){return f6(x)?this.output(x):this.options.unknown}invert(x){return f6(x)?this.input(x):this.options.unknown}nice(){if(!this.options.nice)return;const[x,E,z,...te]=this.getTickMethodOptions();this.options.domain=this.chooseNice()(x,E,z,...te)}getTicks(){const{tickMethod:x}=this.options,[E,z,te,...re]=this.getTickMethodOptions();return x(E,z,te,...re)}getTickMethodOptions(){const{domain:x,tickCount:E}=this.options,z=x[0],te=x[x.length-1];return[z,te,E]}chooseNice(){return DV}rescale(){this.nice();const[x,E]=this.chooseTransforms();this.composeOutput(x,this.chooseClamp(x)),this.composeInput(x,E,this.chooseClamp(E))}chooseClamp(x){const{clamp:E,range:z}=this.options,te=this.options.domain.map(x),re=Math.min(te.length,z.length);return E?IV(te[0],te[re-1]):FD}composeOutput(x,E){const{domain:z,range:te,round:re,interpolate:oe}=this.options,le=g6(z.map(x),te,oe,re);this.output=xL(le,E,x)}composeInput(x,E,z){const{domain:te,range:re}=this.options,oe=g6(re,te.map(x),EL);this.input=xL(E,z,oe)}}const RV=(b,x,E)=>{let z,te,re=b,oe=x;if(re===oe&&E>0)return[re];let le=AL(re,oe,E);if(le===0||!Number.isFinite(le))return[];if(le>0){re=Math.ceil(re/le),oe=Math.floor(oe/le),te=new Array(z=Math.ceil(oe-re+1));for(let ce=0;ce`${x}`:typeof b=="object"?x=>JSON.stringify(x):x=>x}class HD extends h6{getDefaultOptions(){return{domain:[],range:[],unknown:GD}}constructor(x){super(x)}map(x){return this.domainIndexMap.size===0&&m6(this.domainIndexMap,this.getDomain(),this.domainKey),y6({value:this.domainKey(x),mapper:this.domainIndexMap,from:this.getDomain(),to:this.getRange(),notFoundReturn:this.options.unknown})}invert(x){return this.rangeIndexMap.size===0&&m6(this.rangeIndexMap,this.getRange(),this.rangeKey),y6({value:this.rangeKey(x),mapper:this.rangeIndexMap,from:this.getRange(),to:this.getDomain(),notFoundReturn:this.options.unknown})}rescale(x){const[E]=this.options.domain,[z]=this.options.range;if(this.domainKey=x6(E),this.rangeKey=x6(z),!this.rangeIndexMap){this.rangeIndexMap=new Map,this.domainIndexMap=new Map;return}(!x||x.range)&&this.rangeIndexMap.clear(),(!x||x.domain||x.compare)&&(this.domainIndexMap.clear(),this.sortedDomain=void 0)}clone(){return new HD(this.options)}getRange(){return this.options.range}getDomain(){if(this.sortedDomain)return this.sortedDomain;const{domain:x,compare:E}=this.options;return this.sortedDomain=E?[...x].sort(E):x,this.sortedDomain}}function zV(b){const x=Math.min(...b);return b.map(E=>E/x)}function jV(b,x){const E=b.length,z=x-E;return z>0?[...b,...new Array(z).fill(1)]:z<0?b.slice(0,x):b}function WV(b){return Math.round(b*1e12)/1e12}function UV(b){const{domain:x,range:E,paddingOuter:z,paddingInner:te,flex:re,round:oe,align:le}=b,ce=x.length,ge=jV(re,ce),[Ae,Me]=E,Ue=Me-Ae,Xe=2/ce*z+1-1/ce*te,$e=Ue/Xe,rt=$e*te/ce,ot=$e-ce*rt,pt=zV(ge),yt=pt.reduce((Kn,vr)=>Kn+vr),Ct=ot/yt,zt=new v6(x.map((Kn,vr)=>{const er=pt[vr]*Ct;return[Kn,oe?Math.floor(er):er]})),Wt=new v6(x.map((Kn,vr)=>{const Nr=pt[vr]*Ct+rt;return[Kn,oe?Math.floor(Nr):Nr]})),Ht=Array.from(Wt.values()).reduce((Kn,vr)=>Kn+vr),Gt=(Ue-(Ht-Ht/ce*te))*le,vn=Ae+Gt;let Sn=oe?Math.round(vn):vn;const kn=new Array(ce);for(let Kn=0;KnUe+Ct*Ae);return{valueStep:Ae,valueBandWidth:Me,adjustedRange:pt}}class VD extends HD{getDefaultOptions(){return{domain:[],range:[0,1],align:.5,round:!1,paddingInner:0,paddingOuter:0,padding:0,unknown:GD,flex:[]}}constructor(x){super(x)}clone(){return new VD(this.options)}getStep(x){return this.valueStep===void 0?1:typeof this.valueStep=="number"?this.valueStep:x===void 0?Array.from(this.valueStep.values())[0]:this.valueStep.get(x)}getBandWidth(x){return this.valueBandWidth===void 0?1:typeof this.valueBandWidth=="number"?this.valueBandWidth:x===void 0?Array.from(this.valueBandWidth.values())[0]:this.valueBandWidth.get(x)}getRange(){return this.adjustedRange}getPaddingInner(){const{padding:x,paddingInner:E}=this.options;return x>0?x:E}getPaddingOuter(){const{padding:x,paddingOuter:E}=this.options;return x>0?x:E}rescale(){super.rescale();const{align:x,domain:E,range:z,round:te,flex:re}=this.options,{adjustedRange:oe,valueBandWidth:le,valueStep:ce}=GV({align:x,range:z,round:te,flex:re,paddingInner:this.getPaddingInner(),paddingOuter:this.getPaddingOuter(),domain:E});this.valueStep=ce,this.valueBandWidth=le,this.adjustedRange=oe}}var HV=function(b){(0,wn.ZT)(x,b);function x(E){var z=this,te=E.style,re=(0,wn._T)(E,["style"]);return z=b.call(this,Cp({},{type:"column"},(0,wn.pi)({style:te},re)))||this,z.columnsGroup=new Uu({name:"columns"}),z.appendChild(z.columnsGroup),z.render(),z}return x.prototype.render=function(){var E=this.attributes,z=E.columns,te=E.x,re=E.y;this.columnsGroup.style.transform="translate(".concat(te,", ").concat(re,")"),Qs(this.columnsGroup).selectAll(".column").data(z.flat()).join(function(oe){return oe.append("rect").attr("className","column").each(function(le){this.attr(le)})},function(oe){return oe.each(function(le){this.attr(le)})},function(oe){return oe.remove()})},x.prototype.update=function(E){this.attr(eg({},this.attributes,E)),this.render()},x.prototype.clear=function(){this.removeChildren()},x}(Zl),VV=function(b){(0,wn.ZT)(x,b);function x(E){var z=this,te=E.style,re=(0,wn._T)(E,["style"]);return z=b.call(this,Cp({},{type:"lines"},(0,wn.pi)({style:te},re)))||this,z.linesGroup=z.appendChild(new Uu),z.areasGroup=z.appendChild(new Uu),z.render(),z}return x.prototype.render=function(){var E=this.attributes,z=E.lines,te=E.areas,re=E.x,oe=E.y;this.style.transform="translate(".concat(re,", ").concat(oe,")"),z&&this.renderLines(z),te&&this.renderAreas(te)},x.prototype.clear=function(){this.linesGroup.removeChildren(),this.areasGroup.removeChildren()},x.prototype.update=function(E){this.attr(eg({},this.attributes,E)),this.render()},x.prototype.renderLines=function(E){Qs(this.linesGroup).selectAll(".line").data(E).join(function(z){return z.append("path").attr("className","line").each(function(te){this.attr(te)})},function(z){return z.each(function(te){this.attr(te)})},function(z){return z.remove()})},x.prototype.renderAreas=function(E){Qs(this.linesGroup).selectAll(".area").data(E).join(function(z){return z.append("path").attr("className","area").each(function(te){this.attr(te)})},function(z){return z.each(function(te){this.style(te)})},function(z){return z.remove()})},x}(Zl);function KV(b,x,E,z){var te,re=[],oe=!!z,le,ce,ge=[1/0,1/0],Ae=[-1/0,-1/0],Me,Ue,Xe;if(oe){te=(0,wn.CR)(z,2),ge=te[0],Ae=te[1];for(var $e=0,rt=b.length;$eoe&&(E=(0,wn.CR)([oe,le],2),le=E[0],oe=E[1]),b.map(function(ce){var ge=ce.map(function(Ae,Me){return[z.map(Me),Ah(te.map(Ae),le,oe)]});return ge})}function f2(b,x){x===void 0&&(x=!1);var E=x?b.length-1:0,z=b.map(function(te,re){return(0,wn.ev)([re===E?"M":"L"],(0,wn.CR)(te),!1)});return x?z.reverse():z}function SL(b,x){if(x===void 0&&(x=!1),b.length<=2)return f2(b);for(var E=[],z=b.length,te=0;te=0;te-=1){var re=b[te],oe=f2(re),le=void 0;if(te===0)le=KD(oe,x,E);else{var ce=b[te-1],ge=f2(ce,!0);ge[0][0]="L",le=(0,wn.ev)((0,wn.ev)((0,wn.ev)([],(0,wn.CR)(oe),!1),(0,wn.CR)(ge),!1),[["Z"]],!1)}z.push(le)}return z}function JV(b,x,E){for(var z=[],te=b.length-1;te>=0;te-=1){var re=b[te],oe=SL(re),le=void 0;if(te===0)le=KD(oe,x,E);else{var ce=b[te-1],ge=SL(ce,!0),Ae=re[0];ge[0][0]="L",le=(0,wn.ev)((0,wn.ev)((0,wn.ev)([],(0,wn.CR)(oe),!1),(0,wn.CR)(ge),!1),[(0,wn.ev)(["M"],(0,wn.CR)(Ae),!1),["Z"]],!1)}z.push(le)}return z}var qV=function(b,x){if(nf(b)){for(var E,z=1/0,te=0;tez&&(E=re,z=oe)}return E}};function E6(b){return b.length===0?[0,0]:[S1(qV(b,function(x){return S1(x)||0})),Ey($V(b,function(x){return Ey(x)||0}))]}function A6(b){for(var x=MS(b),E=x[0].length,z=(0,wn.CR)([Array(E).fill(0),Array(E).fill(0)],2),te=z[0],re=z[1],oe=0;oe=0?(le[ce]+=te[ce],te[ce]=le[ce]):(le[ce]+=re[ce],re[ce]=le[ce]);return x}var eK=function(b){(0,wn.ZT)(x,b);function x(E){return b.call(this,E,{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(x.prototype,"rawData",{get:function(){var E=this.attributes.data;if(!E||(E==null?void 0:E.length)===0)return[[]];var z=MS(E);return os(z[0])?[z]:z},enumerable:!1,configurable:!0}),Object.defineProperty(x.prototype,"data",{get:function(){return this.attributes.isStack?A6(this.rawData):this.rawData},enumerable:!1,configurable:!0}),Object.defineProperty(x.prototype,"scales",{get:function(){return this.createScales(this.data)},enumerable:!1,configurable:!0}),Object.defineProperty(x.prototype,"baseline",{get:function(){var E=this.scales.y,z=(0,wn.CR)(E.getOptions().domain||[0,0],2),te=z[0],re=z[1];return re<0?E.map(re):E.map(te<0?0:te)},enumerable:!1,configurable:!0}),Object.defineProperty(x.prototype,"containerShape",{get:function(){var E=this.attributes,z=E.width,te=E.height;return{width:z,height:te}},enumerable:!1,configurable:!0}),Object.defineProperty(x.prototype,"linesStyle",{get:function(){var E=this,z=this.attributes,te=z.type,re=z.isStack,oe=z.smooth;if(te!=="line")throw new Error("linesStyle can only be used in line type");var le=iu(this.attributes,"area"),ce=iu(this.attributes,"line"),ge=this.containerShape.width,Ae=this.data;if(Ae[0].length===0)return{lines:[],areas:[]};var Me=this.scales,Ue=Me.x,Xe=Me.y,$e=YV(Ae,{type:"line",x:Ue,y:Xe}),rt=[];if(le){var ot=this.baseline;re?rt=oe?JV($e,ge,ot):QV($e,ge,ot):rt=XV($e,oe,ge,ot)}return{lines:$e.map(function(pt,yt){return(0,wn.pi)({stroke:E.getColor(yt),d:oe?SL(pt):f2(pt)},ce)}),areas:rt.map(function(pt,yt){return(0,wn.pi)({d:pt,fill:E.getColor(yt)},le)})}},enumerable:!1,configurable:!0}),Object.defineProperty(x.prototype,"columnsStyle",{get:function(){var E=this,z=iu(this.attributes,"column"),te=this.attributes,re=te.isStack,oe=te.type,le=te.scale;if(oe!=="column")throw new Error("columnsStyle can only be used in column type");var ce=this.containerShape.height,ge=this.rawData;if(!ge)return{columns:[]};re&&(ge=A6(ge));var Ae=this.createScales(ge),Me=Ae.x,Ue=Ae.y,Xe=(0,wn.CR)(E6(ge),2),$e=Xe[0],rt=Xe[1],ot=new d2({domain:[0,rt-($e>0?0:$e)],range:[0,ce*le]}),pt=Me.getBandWidth(),yt=this.rawData;return{columns:ge.map(function(Ct,zt){return Ct.map(function(Wt,Ht){var Qt=pt/ge.length,Gt=function(){return{x:Me.map(Ht)+Qt*zt,y:Wt>=0?Ue.map(Wt):Ue.map(0),width:Qt,height:ot.map(Math.abs(Wt))}},vn=function(){return{x:Me.map(Ht),y:Ue.map(Wt),width:pt,height:ot.map(yt[zt][Ht])}};return(0,wn.pi)((0,wn.pi)({fill:E.getColor(zt)},z),re?vn():Gt())})})}},enumerable:!1,configurable:!0}),x.prototype.render=function(E,z){SG(z,".container","rect").attr("className","container").node();var te=E.type,re=E.x,oe=E.y,le="spark".concat(te),ce=(0,wn.pi)({x:re,y:oe},te==="line"?this.linesStyle:this.columnsStyle);Qs(z).selectAll(".spark").data([te]).join(function(ge){return ge.append(function(Ae){return Ae==="line"?new VV({className:le,style:ce}):new HV({className:le,style:ce})}).attr("className","spark ".concat(le))},function(ge){return ge.update(ce)},function(ge){return ge.remove()})},x.prototype.getColor=function(E){var z=this.attributes.color;return nf(z)?z[E%z.length]:_s(z)?z.call(null,E):z},x.prototype.createScales=function(E){var z,te,re=this.attributes,oe=re.type,le=re.scale,ce=re.range,ge=ce===void 0?[]:ce,Ae=re.spacing,Me=this.containerShape,Ue=Me.width,Xe=Me.height,$e=(0,wn.CR)(E6(E),2),rt=$e[0],ot=$e[1],pt=new d2({domain:[(z=ge[0])!==null&&z!==void 0?z:rt,(te=ge[1])!==null&&te!==void 0?te:ot],range:[Xe,Xe*(1-le)]});return oe==="line"?{type:oe,x:new d2({domain:[0,E[0].length-1],range:[0,Ue]}),y:pt}:{type:oe,x:new VD({domain:E[0].map(function(yt,Ct){return Ct}),range:[0,Ue],paddingInner:Ae,paddingOuter:Ae/2,align:.5}),y:pt}},x.tag="sparkline",x}(Id),S6={fill:"#fff",lineWidth:1,radius:2,size:10,stroke:"#bfbfbf",strokeOpacity:1,zIndex:0},w6={fill:"#000",fillOpacity:.45,fontSize:12,textAlign:"center",textBaseline:"middle",zIndex:1},C6={x:0,y:0,orientation:"horizontal",showLabel:!0,type:"start"},hy=gm({foreground:"foreground",handle:"handle",selection:"selection",sparkline:"sparkline",sparklineGroup:"sparkline-group",track:"track",brushArea:"brush-area"},"slider"),Lx=gm({labelGroup:"label-group",label:"label",iconGroup:"icon-group",icon:"icon",iconRect:"icon-rect",iconLine:"icon-line"},"handle"),tK=function(b){(0,wn.ZT)(x,b);function x(){return b!==null&&b.apply(this,arguments)||this}return x.prototype.render=function(E,z){var te=E.x,re=E.y,oe=E.size,le=oe===void 0?10:oe,ce=E.radius,ge=ce===void 0?le/4:ce,Ae=E.orientation,Me=(0,wn._T)(E,["x","y","size","radius","orientation"]),Ue=le,Xe=Ue*2.4,$e=Qs(z).maybeAppendByClassName(Lx.iconRect,"rect").styles((0,wn.pi)((0,wn.pi)({},Me),{width:Ue,height:Xe,radius:ge,x:te-Ue/2,y:re-Xe/2,transformOrigin:"center"})),rt=te+1/3*Ue-Ue/2,ot=te+2/3*Ue-Ue/2,pt=re+1/4*Xe-Xe/2,yt=re+3/4*Xe-Xe/2;$e.maybeAppendByClassName("".concat(Lx.iconLine,"-1"),"line").styles((0,wn.pi)({x1:rt,x2:rt,y1:pt,y2:yt},Me)),$e.maybeAppendByClassName("".concat(Lx.iconLine,"-2"),"line").styles((0,wn.pi)({x1:ot,x2:ot,y1:pt,y2:yt},Me)),Ae==="vertical"&&($e.node().style.transform="rotate(90)")},x}(Id),nK=function(b){(0,wn.ZT)(x,b);function x(E){return b.call(this,E,C6)||this}return x.prototype.renderLabel=function(E){var z=this,te=this.attributes,re=te.x,oe=te.y,le=te.showLabel,ce=iu(this.attributes,"label"),ge=ce.x,Ae=ge===void 0?0:ge,Me=ce.y,Ue=Me===void 0?0:Me,Xe=ce.transform,$e=ce.transformOrigin,rt=(0,wn._T)(ce,["x","y","transform","transformOrigin"]),ot=(0,wn.CR)(i1(rt,[]),2),pt=ot[0],yt=ot[1],Ct=Qs(E).maybeAppendByClassName(Lx.labelGroup,"g").styles(yt),zt=(0,wn.pi)((0,wn.pi)({},w6),pt),Wt=zt.text,Ht=(0,wn._T)(zt,["text"]);T0(!!le,Ct,function(Qt){z.label=Qt.maybeAppendByClassName(Lx.label,"text").styles((0,wn.pi)((0,wn.pi)({},Ht),{x:re+Ae,y:oe+Ue,transform:Xe,transformOrigin:$e,text:"".concat(Wt)})),z.label.on("mousedown",function(Gt){Gt.stopPropagation()}),z.label.on("touchstart",function(Gt){Gt.stopPropagation()})})},x.prototype.renderIcon=function(E){var z=this.attributes,te=z.x,re=z.y,oe=z.orientation,le=z.type,ce=(0,wn.pi)((0,wn.pi)({x:te,y:re,orientation:oe},S6),iu(this.attributes,"icon")),ge=this.attributes.iconShape,Ae=ge===void 0?function(){return new tK({style:ce})}:ge,Me=Qs(E).maybeAppendByClassName(Lx.iconGroup,"g");Me.selectAll(Lx.icon.class).data([Ae]).join(function(Ue){return Ue.append(typeof Ae=="string"?Ae:function(){return Ae(le)}).attr("className",Lx.icon.name)},function(Ue){return Ue.update(ce)},function(Ue){return Ue.remove()})},x.prototype.render=function(E,z){this.renderIcon(z),this.renderLabel(z)},x}(Id),rK=function(b){(0,wn.ZT)(x,b);function x(E){var z=b.call(this,E,(0,wn.pi)((0,wn.pi)((0,wn.pi)({x:0,y:0,animate:{duration:100,fill:"both"},brushable:!0,formatter:function(te){return te.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},jS(C6,"handle")),jS(S6,"handleIcon")),jS(w6,"handleLabel")))||this;return z.range=[0,1],z.onDragStart=function(te){return function(re){re.stopPropagation(),z.target=te,z.prevPos=z.getOrientVal(c6(re));var oe=z.availableSpace,le=oe.x,ce=oe.y,ge=z.getBBox(),Ae=ge.x,Me=ge.y;z.selectionStartPos=z.getRatio(z.prevPos-z.getOrientVal([le,ce])-z.getOrientVal([+Ae,+Me])),z.selectionWidth=0,document.addEventListener("pointermove",z.onDragging),document.addEventListener("pointerup",z.onDragEnd)}},z.onDragging=function(te){var re=z.attributes,oe=re.slidable,le=re.brushable,ce=re.type;te.stopPropagation();var ge=z.getOrientVal(c6(te)),Ae=ge-z.prevPos;if(Ae){var Me=z.getRatio(Ae);switch(z.target){case"start":oe&&z.setValuesOffset(Me);break;case"end":oe&&z.setValuesOffset(0,Me);break;case"selection":oe&&z.setValuesOffset(Me,Me);break;case"track":if(!le)return;z.selectionWidth+=Me,ce==="range"?z.innerSetValues([z.selectionStartPos,z.selectionStartPos+z.selectionWidth].sort(),!0):z.innerSetValues([0,z.selectionStartPos+z.selectionWidth],!0);break;default:break}z.prevPos=ge}},z.onDragEnd=function(){document.removeEventListener("pointermove",z.onDragging),document.removeEventListener("pointermove",z.onDragging),document.removeEventListener("pointerup",z.onDragEnd),z.target="",z.updateHandlesPosition(!1)},z.onValueChange=function(te){var re=z.attributes,oe=re.onChange,le=re.type,ce=le==="range"?te:te[1],ge=le==="range"?z.getValues():z.getValues()[1],Ae=new Qh("valuechange",{detail:{oldValue:ce,value:ge}});z.dispatchEvent(Ae),oe==null||oe(ge)},z.selectionStartPos=0,z.selectionWidth=0,z.prevPos=0,z.target="",z}return Object.defineProperty(x.prototype,"values",{get:function(){return this.attributes.values},set:function(E){this.attributes.values=this.clampValues(E)},enumerable:!1,configurable:!0}),Object.defineProperty(x.prototype,"sparklineStyle",{get:function(){var E=this.attributes.orientation;if(E!=="horizontal")return null;var z=iu(this.attributes,"sparkline");return(0,wn.pi)((0,wn.pi)({zIndex:0},this.availableSpace),z)},enumerable:!1,configurable:!0}),Object.defineProperty(x.prototype,"shape",{get:function(){var E=this.attributes,z=E.trackLength,te=E.trackSize,re=(0,wn.CR)(this.getOrientVal([[z,te],[te,z]]),2),oe=re[0],le=re[1];return{width:oe,height:le}},enumerable:!1,configurable:!0}),Object.defineProperty(x.prototype,"availableSpace",{get:function(){var E=this.attributes,z=E.x,te=E.y,re=E.padding,oe=(0,wn.CR)(_g(re),4),le=oe[0],ce=oe[1],ge=oe[2],Ae=oe[3],Me=this.shape,Ue=Me.width,Xe=Me.height;return{x:Ae,y:le,width:Ue-(Ae+ce),height:Xe-(le+ge)}},enumerable:!1,configurable:!0}),x.prototype.getValues=function(){return this.values},x.prototype.setValues=function(E,z){E===void 0&&(E=[0,0]),z===void 0&&(z=!1),this.attributes.values=E;var te=z===!1?!1:this.attributes.animate;this.updateSelectionArea(te),this.updateHandlesPosition(te)},x.prototype.updateSelectionArea=function(E){var z=this.calcSelectionArea();this.foregroundGroup.selectAll(hy.selection.class).each(function(te,re){pm(this,z[re],E)})},x.prototype.updateHandlesPosition=function(E){this.attributes.showHandle&&(this.startHandle&&pm(this.startHandle,this.getHandleStyle("start"),E),this.endHandle&&pm(this.endHandle,this.getHandleStyle("end"),E))},x.prototype.innerSetValues=function(E,z){E===void 0&&(E=[0,0]),z===void 0&&(z=!1);var te=this.values,re=this.clampValues(E);this.attributes.values=re,this.setValues(re),z&&this.onValueChange(te)},x.prototype.renderTrack=function(E){var z=this.attributes,te=z.x,re=z.y,oe=iu(this.attributes,"track");this.trackShape=Qs(E).maybeAppendByClassName(hy.track,"rect").styles((0,wn.pi)((0,wn.pi)({x:te,y:re},this.shape),oe))},x.prototype.renderBrushArea=function(E){var z=this.attributes,te=z.x,re=z.y,oe=z.brushable;this.brushArea=Qs(E).maybeAppendByClassName(hy.brushArea,"rect").styles((0,wn.pi)({x:te,y:re,fill:"transparent",cursor:oe?"crosshair":"default"},this.shape))},x.prototype.renderSparkline=function(E){var z=this,te=this.attributes,re=te.x,oe=te.y,le=te.orientation,ce=Qs(E).maybeAppendByClassName(hy.sparklineGroup,"g");T0(le==="horizontal",ce,function(ge){var Ae=(0,wn.pi)((0,wn.pi)({},z.sparklineStyle),{x:re,y:oe});ge.maybeAppendByClassName(hy.sparkline,function(){return new eK({style:Ae})}).update(Ae)})},x.prototype.renderHandles=function(){var E=this,z,te=this.attributes,re=te.showHandle,oe=te.type,le=oe==="range"?["start","end"]:["end"],ce=re?le:[],ge=this;(z=this.foregroundGroup)===null||z===void 0||z.selectAll(hy.handle.class).data(ce.map(function(Ae){return{type:Ae}}),function(Ae){return Ae.type}).join(function(Ae){return Ae.append(function(Me){var Ue=Me.type;return new nK({style:E.getHandleStyle(Ue)})}).each(function(Me){var Ue=Me.type;this.attr("class","".concat(hy.handle.name," ").concat(Ue,"-handle"));var Xe="".concat(Ue,"Handle");ge[Xe]=this,this.addEventListener("pointerdown",ge.onDragStart(Ue))})},function(Ae){return Ae.each(function(Me){var Ue=Me.type;this.update(ge.getHandleStyle(Ue))})},function(Ae){return Ae.each(function(Me){var Ue=Me.type,Xe="".concat(Ue,"Handle");ge[Xe]=void 0}).remove()})},x.prototype.renderSelection=function(E){var z=this.attributes,te=z.x,re=z.y,oe=z.type,le=z.selectionType;this.foregroundGroup=Qs(E).maybeAppendByClassName(hy.foreground,"g");var ce=iu(this.attributes,"selection"),ge=function(Me){return Me.style("visibility",function(Ue){return Ue.show?"visible":"hidden"}).style("cursor",function(Ue){return le==="select"?"grab":le==="invert"?"crosshair":"default"}).styles((0,wn.pi)((0,wn.pi)({},ce),{transform:"translate(".concat(te,", ").concat(re,")")}))},Ae=this;this.foregroundGroup.selectAll(hy.selection.class).data(oe==="value"?[]:this.calcSelectionArea().map(function(Me,Ue){return{style:(0,wn.pi)({},Me),index:Ue,show:le==="select"?Ue===1:Ue!==1}}),function(Me){return Me.index}).join(function(Me){return Me.append("rect").attr("className",hy.selection.name).call(ge).each(function(Ue,Xe){var $e=this;Xe===1?(Ae.selectionShape=Qs(this),this.on("pointerdown",function(rt){$e.attr("cursor","grabbing"),Ae.onDragStart("selection")(rt)}),Ae.dispatchCustomEvent(this,"pointerenter","selectionMouseenter"),Ae.dispatchCustomEvent(this,"pointerleave","selectionMouseleave"),Ae.dispatchCustomEvent(this,"click","selectionClick"),this.addEventListener("pointerdown",function(){$e.attr("cursor","grabbing")}),this.addEventListener("pointerup",function(){$e.attr("cursor","pointer")}),this.addEventListener("pointerover",function(){$e.attr("cursor","pointer")})):this.on("pointerdown",Ae.onDragStart("track"))})},function(Me){return Me.call(ge)},function(Me){return Me.remove()}),this.updateSelectionArea(!1),this.renderHandles()},x.prototype.render=function(E,z){this.renderTrack(z),this.renderSparkline(z),this.renderBrushArea(z),this.renderSelection(z)},x.prototype.clampValues=function(E,z){var te;z===void 0&&(z=4);var re=(0,wn.CR)(this.range,2),oe=re[0],le=re[1],ce=(0,wn.CR)(this.getValues().map(function(ot){return kD(ot,z)}),2),ge=ce[0],Ae=ce[1],Me=Array.isArray(E)?E:[ge,E!=null?E:Ae],Ue=(0,wn.CR)((Me||[ge,Ae]).map(function(ot){return kD(ot,z)}),2),Xe=Ue[0],$e=Ue[1];if(this.attributes.type==="value")return[0,Ah($e,oe,le)];Xe>$e&&(te=(0,wn.CR)([$e,Xe],2),Xe=te[0],$e=te[1]);var rt=$e-Xe;return rt>le-oe?[oe,le]:Xele?Ae===le&&ge===Xe?[Xe,le]:[le-rt,le]:[Xe,$e]},x.prototype.calcSelectionArea=function(E){var z=(0,wn.CR)(this.clampValues(E),2),te=z[0],re=z[1],oe=this.availableSpace,le=oe.x,ce=oe.y,ge=oe.width,Ae=oe.height;return this.getOrientVal([[{y:ce,height:Ae,x:le,width:te*ge},{y:ce,height:Ae,x:te*ge+le,width:(re-te)*ge},{y:ce,height:Ae,x:re*ge,width:(1-re)*ge}],[{x:le,width:ge,y:ce,height:te*Ae},{x:le,width:ge,y:te*Ae+ce,height:(re-te)*Ae},{x:le,width:ge,y:re*Ae,height:(1-re)*Ae}]])},x.prototype.calcHandlePosition=function(E){var z=this.attributes.handleIconOffset,te=this.availableSpace,re=te.x,oe=te.y,le=te.width,ce=te.height,ge=(0,wn.CR)(this.clampValues(),2),Ae=ge[0],Me=ge[1],Ue=E==="start"?-z:z,Xe=(E==="start"?Ae:Me)*this.getOrientVal([le,ce])+Ue;return{x:re+this.getOrientVal([Xe,le/2]),y:oe+this.getOrientVal([ce/2,Xe])}},x.prototype.inferTextStyle=function(E){var z=this.attributes.orientation;return z==="horizontal"?{}:E==="start"?{transformOrigin:"left center",transform:"rotate(90)",textAlign:"start"}:E==="end"?{transformOrigin:"right center",transform:"rotate(90)",textAlign:"end"}:{}},x.prototype.calcHandleText=function(E){var z,te=this.attributes,re=te.type,oe=te.orientation,le=te.formatter,ce=te.autoFitLabel,ge=iu(this.attributes,"handle"),Ae=iu(ge,"label"),Me=ge.spacing,Ue=this.getHandleSize(),Xe=this.clampValues(),$e=E==="start"?Xe[0]:Xe[1],rt=le($e),ot=new yD({style:(0,wn.pi)((0,wn.pi)((0,wn.pi)({},Ae),this.inferTextStyle(E)),{text:rt})}),pt=ot.getBBox(),yt=pt.width,Ct=pt.height;if(ot.destroy(),!ce){if(re==="value")return{text:rt,x:0,y:-Ct-Me};var zt=Me+Ue+(oe==="horizontal"?yt/2:0);return z={text:rt},z[oe==="horizontal"?"x":"y"]=E==="start"?-zt:zt,z}var Wt=0,Ht=0,Qt=this.availableSpace,Gt=Qt.width,vn=Qt.height,Sn=this.calcSelectionArea()[1],kn=Sn.x,Kn=Sn.y,vr=Sn.width,er=Sn.height,Nr=Me+Ue;if(oe==="horizontal"){var ei=Nr+yt/2;if(E==="start"){var Ar=kn-Nr-yt;Wt=Ar>0?-ei:ei}else{var Sr=Gt-kn-vr-Nr>yt;Wt=Sr?ei:-ei}}else{var Ir=Nr,si=Ct+Nr;E==="start"?Ht=Kn-Ue>Ct?-si:Ir:Ht=vn-(Kn+er)-Ue>Ct?si:-Ir}return{x:Wt,y:Ht,text:rt}},x.prototype.getHandleLabelStyle=function(E){var z=iu(this.attributes,"handleLabel");return(0,wn.pi)((0,wn.pi)((0,wn.pi)({},z),this.calcHandleText(E)),this.inferTextStyle(E))},x.prototype.getHandleIconStyle=function(){var E=this.attributes.handleIconShape,z=iu(this.attributes,"handleIcon"),te=this.getOrientVal(["ew-resize","ns-resize"]),re=this.getHandleSize();return(0,wn.pi)({cursor:te,shape:E,size:re},z)},x.prototype.getHandleStyle=function(E){var z=this.attributes,te=z.x,re=z.y,oe=z.showLabel,le=z.showLabelOnInteraction,ce=z.orientation,ge=this.calcHandlePosition(E),Ae=ge.x,Me=ge.y,Ue=this.calcHandleText(E),Xe=oe;return!oe&&le&&(this.target?Xe=!0:Xe=!1),(0,wn.pi)((0,wn.pi)((0,wn.pi)({},jS(this.getHandleIconStyle(),"icon")),jS((0,wn.pi)((0,wn.pi)({},this.getHandleLabelStyle(E)),Ue),"label")),{transform:"translate(".concat(Ae+te,", ").concat(Me+re,")"),orientation:ce,showLabel:Xe,type:E,zIndex:3})},x.prototype.getHandleSize=function(){var E=this.attributes,z=E.handleIconSize,te=E.width,re=E.height;return z||Math.floor((this.getOrientVal([+re,+te])+4)/2.4)},x.prototype.getOrientVal=function(E){var z=(0,wn.CR)(E,2),te=z[0],re=z[1],oe=this.attributes.orientation;return oe==="horizontal"?te:re},x.prototype.setValuesOffset=function(E,z,te){z===void 0&&(z=0),te===void 0&&(te=!1);var re=this.attributes.type,oe=(0,wn.CR)(this.getValues(),2),le=oe[0],ce=oe[1],ge=re==="range"?E:0,Ae=[le+ge,ce+z].sort();te?this.setValues(Ae):this.innerSetValues(Ae,!0)},x.prototype.getRatio=function(E){var z=this.availableSpace,te=z.width,re=z.height;return E/this.getOrientVal([te,re])},x.prototype.dispatchCustomEvent=function(E,z,te){var re=this;E.on(z,function(oe){oe.stopPropagation(),re.dispatchEvent(new Qh(te,{detail:oe}))})},x.prototype.bindEvents=function(){this.addEventListener("wheel",this.onScroll);var E=this.brushArea;this.dispatchCustomEvent(E,"click","trackClick"),this.dispatchCustomEvent(E,"pointerenter","trackMouseenter"),this.dispatchCustomEvent(E,"pointerleave","trackMouseleave"),E.on("pointerdown",this.onDragStart("track"))},x.prototype.onScroll=function(E){var z=this.attributes.scrollable;if(z){var te=E.deltaX,re=E.deltaY,oe=re||te,le=this.getRatio(oe);this.setValuesOffset(le,le,!0)}},x.tag="slider",x}(Id),iK={backgroundFill:"#262626",backgroundLineCap:"round",backgroundLineWidth:1,backgroundStroke:"#333",backgroundZIndex:-1,formatter:function(b){return b.toString()},labelFill:"#fff",labelFontSize:12,labelTextBaseline:"middle",padding:[2,4],position:"right",radius:0,zIndex:999},ZD=gm({background:"background",labelGroup:"label-group",label:"label"},"indicator"),oK=function(b){(0,wn.ZT)(x,b);function x(E){var z=b.call(this,E,iK)||this;return z.point=[0,0],z.group=z.appendChild(new Uu({})),z.isMutationObserved=!0,z}return x.prototype.renderBackground=function(){if(this.label){var E=this.attributes,z=E.position,te=E.padding,re=(0,wn.CR)(_g(te),4),oe=re[0],le=re[1],ce=re[2],ge=re[3],Ae=this.label.node().getLocalBounds(),Me=Ae.min,Ue=Ae.max,Xe=new ip(Me[0]-ge,Me[1]-oe,Ue[0]+le-Me[0]+ge,Ue[1]+ce-Me[1]+oe),$e=this.getPath(z,Xe),rt=iu(this.attributes,"background");this.background=Qs(this.group).maybeAppendByClassName(ZD.background,"path").styles((0,wn.pi)((0,wn.pi)({},rt),{d:$e})),this.group.appendChild(this.label.node())}},x.prototype.renderLabel=function(){var E=this.attributes,z=E.formatter,te=E.labelText,re=iu(this.attributes,"label"),oe=(0,wn.CR)(i1(re),2),le=oe[0],ce=oe[1],ge=le.text,Ae=(0,wn._T)(le,["text"]);if(this.label=Qs(this.group).maybeAppendByClassName(ZD.labelGroup,"g").styles(ce),!!te){var Me=this.label.maybeAppendByClassName(ZD.label,function(){return o1(z(te))}).style("text",z(te).toString());Me.selectAll("text").styles(Ae)}},x.prototype.adjustLayout=function(){var E=(0,wn.CR)(this.point,2),z=E[0],te=E[1],re=this.attributes,oe=re.x,le=re.y;this.group.attr("transform","translate(".concat(oe-z,", ").concat(le-te,")"))},x.prototype.getPath=function(E,z){var te=this.attributes.radius,re=z.x,oe=z.y,le=z.width,ce=z.height,ge=[["M",re+te,oe],["L",re+le-te,oe],["A",te,te,0,0,1,re+le,oe+te],["L",re+le,oe+ce-te],["A",te,te,0,0,1,re+le-te,oe+ce],["L",re+te,oe+ce],["A",te,te,0,0,1,re,oe+ce-te],["L",re,oe+te],["A",te,te,0,0,1,re+te,oe],["Z"]],Ae={top:4,right:6,bottom:0,left:2},Me=Ae[E],Ue=this.createCorner([ge[Me].slice(-2),ge[Me+1].slice(-2)]);return ge.splice.apply(ge,(0,wn.ev)([Me+1,1],(0,wn.CR)(Ue),!1)),ge[0][0]="M",ge},x.prototype.createCorner=function(E,z){z===void 0&&(z=10);var te=.8,re=rH.apply(void 0,(0,wn.ev)([],(0,wn.CR)(E),!1)),oe=(0,wn.CR)(E,2),le=(0,wn.CR)(oe[0],2),ce=le[0],ge=le[1],Ae=(0,wn.CR)(oe[1],2),Me=Ae[0],Ue=Ae[1],Xe=(0,wn.CR)(re?[Me-ce,[ce,Me]]:[Ue-ge,[ge,Ue]],2),$e=Xe[0],rt=(0,wn.CR)(Xe[1],2),ot=rt[0],pt=rt[1],yt=$e/2,Ct=$e/Math.abs($e),zt=z*Ct,Wt=zt/2,Ht=zt*Math.sqrt(3)/2*te,Qt=(0,wn.CR)([ot,ot+yt-Wt,ot+yt,ot+yt+Wt,pt],5),Gt=Qt[0],vn=Qt[1],Sn=Qt[2],kn=Qt[3],Kn=Qt[4];return re?(this.point=[Sn,ge-Ht],[["L",Gt,ge],["L",vn,ge],["L",Sn,ge-Ht],["L",kn,ge],["L",Kn,ge]]):(this.point=[ce+Ht,Sn],[["L",ce,Gt],["L",ce,vn],["L",ce+Ht,Sn],["L",ce,kn],["L",ce,Kn]])},x.prototype.applyVisibility=function(){var E=this.attributes.visibility;E==="hidden"?fm(this):i2(this)},x.prototype.bindEvents=function(){this.label.on(ru.BOUNDS_CHANGED,this.renderBackground)},x.prototype.render=function(){this.renderLabel(),this.renderBackground(),this.adjustLayout(),this.applyVisibility()},x}(Id),aK=function(b){(0,wn.ZT)(x,b);function x(E){var z=b.call(this,eg({},x.defaultOptions,E))||this;return z.hoverColor="#f5f5f5",z.selectedColor="#e6f7ff",z.background=z.appendChild(new sh({})),z.label=z.background.appendChild(new Uu({})),z}return Object.defineProperty(x.prototype,"padding",{get:function(){return _g(this.style.padding)},enumerable:!1,configurable:!0}),x.prototype.renderLabel=function(){var E=this.style,z=E.label,te=E.value,re=iu(this.attributes,"label");Qs(this.label).maybeAppend(".label",function(){return o1(z)}).attr("className","label").styles(re),this.label.attr("__data__",te)},x.prototype.renderBackground=function(){var E=this.label.getBBox(),z=(0,wn.CR)(this.padding,4),te=z[0],re=z[1],oe=z[2],le=z[3],ce=E.width,ge=E.height,Ae=ce+le+re,Me=ge+te+oe,Ue=iu(this.attributes,"background"),Xe=this.style,$e=Xe.width,rt=$e===void 0?0:$e,ot=Xe.height,pt=ot===void 0?0:ot,yt=Xe.selected;this.background.attr((0,wn.pi)((0,wn.pi)({},Ue),{width:Math.max(Ae,rt),height:Math.max(Me,pt),fill:yt?this.selectedColor:"#fff"})),this.label.attr({transform:"translate(".concat(le,", ").concat((Me-ge)/2,")")})},x.prototype.render=function(){this.renderLabel(),this.renderBackground()},x.prototype.bindEvents=function(){var E=this;this.addEventListener("pointerenter",function(){E.style.selected||E.background.attr("fill",E.hoverColor)}),this.addEventListener("pointerleave",function(){E.style.selected||E.background.attr("fill",E.style.backgroundFill)});var z=this;this.addEventListener("click",function(){var te=E.style,re=te.label,oe=te.value,le=te.onClick;le==null||le(oe,{label:re,value:oe},z)})},x.defaultOptions={style:{value:"",label:"",cursor:"pointer"}},x}(Id),sK=function(b){(0,wn.ZT)(x,b);function x(E){var z,te,re=b.call(this,eg({},x.defaultOptions,E))||this;re.currentValue=(z=x.defaultOptions.style)===null||z===void 0?void 0:z.defaultValue,re.isPointerInSelect=!1,re.select=re.appendChild(new sh({className:"select",style:{cursor:"pointer",width:0,height:0}})),re.dropdown=re.appendChild(new sh({className:"dropdown"}));var oe=re.style.defaultValue;return oe&&(!((te=re.style.options)===null||te===void 0)&&te.some(function(le){return le.value===oe}))&&(re.currentValue=oe),re}return x.prototype.setValue=function(E){this.currentValue=E,this.render()},x.prototype.getValue=function(){return this.currentValue},Object.defineProperty(x.prototype,"dropdownPadding",{get:function(){return _g(this.style.dropdownPadding)},enumerable:!1,configurable:!0}),x.prototype.renderSelect=function(){var E=this,z,te=this.style,re=te.x,oe=te.y,le=te.width,ce=te.height,ge=te.bordered,Ae=te.showDropdownIcon,Me=iu(this.attributes,"select"),Ue=iu(this.attributes,"placeholder");this.select.attr((0,wn.pi)((0,wn.pi)({x:re,y:oe,width:le,height:ce},Me),{fill:"#fff",strokeWidth:ge?1:0}));var Xe=this.dropdownPadding,$e=10;Ae&&Qs(this.select).maybeAppend(".dropdown-icon","path").style("d","M-5,-3.5 L0,3.5 L5,-3.5").style("transform","translate(".concat(re+le-$e-Xe[1]-Xe[3],", ").concat(oe+ce/2,")")).style("lineWidth",1).style("stroke",this.select.style.stroke);var rt=(z=this.style.options)===null||z===void 0?void 0:z.find(function(Ct){return Ct.value===E.currentValue}),ot=(0,wn.pi)({x:re+Xe[3]},Ue);Qs(this.select).selectAll(".placeholder").data(rt?[]:[1]).join(function(Ct){return Ct.append("text").attr("className","placeholder").styles(ot).style("y",function(){var zt=this.getBBox();return oe+(ce-zt.height)/2})},function(Ct){return Ct.styles(ot)},function(Ct){return Ct.remove()});var pt=iu(this.attributes,"optionLabel"),yt=(0,wn.pi)({x:re+Xe[3]},pt);Qs(this.select).selectAll(".value").data(rt?[rt]:[]).join(function(Ct){return Ct.append(function(zt){return o1(zt.label)}).attr("className","value").styles(yt).style("y",function(){var zt=this.getBBox();return oe+(ce-zt.height)/2})},function(Ct){return Ct.styles(yt)},function(Ct){return Ct.remove()})},x.prototype.renderDropdown=function(){var E=this,z,te,re=this.style,oe=re.x,le=re.y,ce=re.width,ge=re.height,Ae=re.options,Me=re.onSelect,Ue=re.open,Xe=iu(this.attributes,"dropdown"),$e=iu(this.attributes,"option"),rt=this.dropdownPadding;Qs(this.dropdown).maybeAppend(".dropdown-container","g").attr("className","dropdown-container").selectAll(".dropdown-item").data(Ae,function(yt){return yt.value}).join(function(yt){return yt.append(function(Ct){return new aK({className:"dropdown-item",style:(0,wn.pi)((0,wn.pi)((0,wn.pi)({},Ct),$e),{width:ce-rt[1]-rt[3],selected:Ct.value===E.currentValue,onClick:function(zt,Wt,Ht){E.setValue(zt),Me==null||Me(zt,Wt,Ht),E.dispatchEvent(new Qh("change",{detail:{value:zt,option:Wt,item:Ht}})),fm(E.dropdown)}})})}).each(function(Ct,zt){var Wt,Ht=(Wt=this.parentNode)===null||Wt===void 0?void 0:Wt.children,Qt=Ht.reduce(function(Gt,vn,Sn){return Snre.time?1:0};return E.sort(z)},enumerable:!1,configurable:!0}),Object.defineProperty(x.prototype,"space",{get:function(){var E=this.attributes,z=E.x,te=E.y,re=E.width,oe=E.height,le=E.type,ce=E.controllerHeight,ge=Ah(+oe-ce,0,+oe),Ae=new ip(z,te+ +oe-ce,+re,ce),Me,Ue=0;le==="chart"?(Ue=35,Me=new ip(z,te+ge-Ue,+re,Ue)):Me=new ip;var Xe=le==="time"?10:ge,$e=new ip(z,te+(le==="time"?ge:ge-Xe),+re,Xe-Ue);return{axisBBox:Me,controllerBBox:Ae,timelineBBox:$e}},enumerable:!1,configurable:!0}),x.prototype.setBySliderValues=function(E){var z,te,re=this.data,oe=(0,wn.CR)(Array.isArray(E)?E:[0,E],2),le=oe[0],ce=oe[1],ge=re.length,Ae=re[Math.floor(le*ge)],Me=re[Math.ceil(ce*ge)-(Array.isArray(E)?0:1)];this.states.values=[(z=Ae==null?void 0:Ae.time)!==null&&z!==void 0?z:re[0].time,(te=Me==null?void 0:Me.time)!==null&&te!==void 0?te:1/0]},x.prototype.setByTimebarValues=function(E){var z,te,re,oe=this.data,le=(0,wn.CR)(Array.isArray(E)?E:[void 0,E],2),ce=le[0],ge=le[1],Ae=oe.find(function(Ue){var Xe=Ue.time;return Xe===ce}),Me=oe.find(function(Ue){var Xe=Ue.time;return Xe===ge});this.states.values=[(z=Ae==null?void 0:Ae.time)!==null&&z!==void 0?z:(te=oe[0])===null||te===void 0?void 0:te.time,(re=Me==null?void 0:Me.time)!==null&&re!==void 0?re:1/0]},x.prototype.setByIndex=function(E){var z,te,re,oe,le=this.data,ce=(0,wn.CR)(E,2),ge=ce[0],Ae=ce[1];this.states.values=[(te=(z=le[ge])===null||z===void 0?void 0:z.time)!==null&&te!==void 0?te:le[0].time,(oe=(re=this.data[Ae])===null||re===void 0?void 0:re.time)!==null&&oe!==void 0?oe:1/0]},Object.defineProperty(x.prototype,"sliderValues",{get:function(){var E=this.states,z=E.values,te=E.selectionType,re=(0,wn.CR)(Array.isArray(z)?z:[void 0,z],2),oe=re[0],le=re[1],ce=this.data,ge=ce.length,Ae=te==="value",Me=function(){var Xe=ce.findIndex(function($e){var rt=$e.time;return rt===oe});return Ae?0:Xe>-1?Xe/ge:0},Ue=function(){if(le===1/0)return 1;var Xe=ce.findIndex(function($e){var rt=$e.time;return rt===le});return Xe>-1?Xe/ge:Ae?.5:1};return[Me(),Ue()]},enumerable:!1,configurable:!0}),Object.defineProperty(x.prototype,"values",{get:function(){var E=this.states,z=E.values,te=E.selectionType,re=(0,wn.CR)(Array.isArray(z)?z:[this.data[0].time,z],2),oe=re[0],le=re[1];return te==="value"?le:[oe,le]},enumerable:!1,configurable:!0}),x.prototype.getDatumByRatio=function(E){var z=this.data,te=z.length,re=Math.floor(E*(te-1));return z[re]},Object.defineProperty(x.prototype,"chartHandleIconShape",{get:function(){var E=this.states.selectionType,z=this.space.timelineBBox.height;return E==="range"?function(te){return new AK({style:{type:te,height:z,iconSize:z/6}})}:function(){return new uf({style:{x1:0,y1:-z/2,x2:0,y2:z/2,lineWidth:2,stroke:"#c8c8c8"}})}},enumerable:!1,configurable:!0}),x.prototype.getChartStyle=function(E){var z=this,te=E.x,re=E.y,oe=E.width,le=E.height,ce=this.states,ge=ce.selectionType,Ae=ce.chartType,Me=this.data,Ue=this.attributes,Xe=Ue.type,$e=Ue.labelFormatter,rt=iu(this.attributes,"chart"),ot=rt.type,pt=(0,wn._T)(rt,["type"]),yt=ge==="range";if(Xe==="time")return(0,wn.pi)({handleIconShape:function(){return new EK({})},selectionFill:"#2e7ff8",selectionFillOpacity:1,showLabelOnInteraction:!0,handleLabelDy:yt?-15:0,autoFitLabel:yt,handleSpacing:yt?-15:0,trackFill:"#edeeef",trackLength:oe,trackOpacity:.5,trackRadius:le/2,trackSize:le/2,type:ge,values:this.sliderValues,formatter:function(Wt){if($e)return $e(Wt);var Ht=z.getDatumByRatio(Wt).time;return typeof Ht=="number"?P6(Ht):Tp(Ht,"YYYY-MM-DD HH:mm:ss")},transform:"translate(".concat(te,", ").concat(re,")"),zIndex:1},pt);var Ct=ge==="range"?5:0,zt=Me.map(function(Wt){var Ht=Wt.value;return Ht});return(0,wn.pi)({handleIconOffset:Ct,handleIconShape:this.chartHandleIconShape,selectionFill:"#fff",selectionFillOpacity:.5,selectionType:"invert",sparklineSpacing:.1,sparklineColumnLineWidth:0,sparklineColor:"#d4e5fd",sparklineAreaOpacity:1,sparklineAreaLineWidth:0,sparklineData:zt,sparklineType:Ae,sparklineScale:.8,trackLength:oe,trackSize:le,type:ge,values:this.sliderValues,transform:"translate(".concat(te,", ").concat(re,")"),zIndex:1},pt)},x.prototype.renderChart=function(E){E===void 0&&(E=this.space.timelineBBox),this.timeline.update(this.getChartStyle(E))},x.prototype.updateSelection=function(){this.timeline.setValues(this.sliderValues,!0),this.handleSliderChange(this.sliderValues)},x.prototype.getAxisStyle=function(E){var z=this.data,te=this.attributes,re=te.interval,oe=te.labelFormatter,le=iu(this.attributes,"axis"),ce=E.x,ge=E.y,Ae=E.width,Me=(0,wn.ev)((0,wn.ev)([],(0,wn.CR)(z),!1),[{time:0}],!1).map(function(Xe,$e,rt){var ot=Xe.time;return{label:"".concat(ot),value:$e/(rt.length-1),time:ot}}),Ue=(0,wn.pi)({startPos:[ce,ge],endPos:[ce+Ae,ge],data:Me,labelFilter:function(Xe,$e){return $ere?ce==="value"?[0,0]:ge==="acc"?[Qt(Wt),Qt(Wt)]:[0,Qt(Ht-Wt)]:Wt<0?ge==="acc"?[0,Qt(Ht)]:[Qt(Wt+re-Ht),re]:[Qt(Wt),Qt(Ht)]},yt=pt(ot);return this.setByIndex(yt),this.updateSelection(),yt},x.prototype.internalBackward=function(E){var z,te,re=this.moveSelection("backward",E);return E||((te=(z=this.attributes)===null||z===void 0?void 0:z.onBackward)===null||te===void 0||te.call(z),this.dispatchOnChange()),re},x.prototype.backward=function(){this.internalBackward()},x.prototype.internalPlay=function(E){var z=this,te,re,oe=this.data,le=this.attributes.loop,ce=this.states.speed,ge=ce===void 0?1:ce;this.playInterval=window.setInterval(function(){var Ae=z.internalForward();Ae[1]===oe.length&&!le&&(z.internalPause(),z.renderController())},1e3/ge),this.states.state="play",!E&&((re=(te=this.attributes)===null||te===void 0?void 0:te.onPlay)===null||re===void 0||re.call(te))},x.prototype.play=function(){this.internalPlay()},x.prototype.internalPause=function(E){var z,te;clearInterval(this.playInterval),this.states.state="pause",!E&&((te=(z=this.attributes)===null||z===void 0?void 0:z.onPause)===null||te===void 0||te.call(z))},x.prototype.pause=function(){this.internalPause()},x.prototype.internalForward=function(E){var z,te,re=this.moveSelection("forward",E);return E||((te=(z=this.attributes)===null||z===void 0?void 0:z.onForward)===null||te===void 0||te.call(z),this.dispatchOnChange()),re},x.prototype.forward=function(){this.internalForward()},x.prototype.handleSpeedChange=function(E){var z,te;this.states.speed=E;var re=this.states.state;re==="play"&&(this.internalPause(!0),this.internalPlay(!0)),(te=(z=this.attributes)===null||z===void 0?void 0:z.onSpeedChange)===null||te===void 0||te.call(z,E)},x.prototype.handleSelectionTypeChange=function(E){var z,te;this.states.selectionType=E,this.renderChart(),(te=(z=this.attributes)===null||z===void 0?void 0:z.onSelectionTypeChange)===null||te===void 0||te.call(z,E)},x.prototype.handleChartTypeChange=function(E){var z,te;this.states.chartType=E,this.renderChart(),(te=(z=this.attributes)===null||z===void 0?void 0:z.onChartTypeChange)===null||te===void 0||te.call(z,E)},x.prototype.render=function(){var E=this.space,z=E.axisBBox,te=E.controllerBBox,re=E.timelineBBox;this.renderController(te),this.renderAxis(z),this.renderChart(re),this.states.state==="play"&&this.internalPlay()},x.prototype.destroy=function(){b.prototype.destroy.call(this),this.internalPause(!0)},x.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"}},x}(Id);function bK(b){return b instanceof Date}var PK=function(b,x,E,z){function te(re){return re instanceof E?re:new E(function(oe){oe(re)})}return new(E||(E=Promise))(function(re,oe){function le(Ae){try{ge(z.next(Ae))}catch(Me){oe(Me)}}function ce(Ae){try{ge(z.throw(Ae))}catch(Me){oe(Me)}}function ge(Ae){Ae.done?re(Ae.value):te(Ae.value).then(le,ce)}ge((z=z.apply(b,x||[])).next())})},MK=function(b,x){var E={};for(var z in b)Object.prototype.hasOwnProperty.call(b,z)&&x.indexOf(z)<0&&(E[z]=b[z]);if(b!=null&&typeof Object.getOwnPropertySymbols=="function")for(var te=0,z=Object.getOwnPropertySymbols(b);te{var $e;const rt=Object.assign(Object.assign({x:Ue[0]/2-ce/2,y:Xe,onChange:ot=>{const pt=(nf(ot)?ot:[ot,ot]).map(yt=>bK(yt)?yt.getTime():yt);this.options.mode==="modify"?this.filterElements(pt):this.hiddenElements(pt),z==null||z(pt)}},Me),{data:re.map(ot=>os(ot)?{time:ot,value:0}:ot),width:ce,height:ge,type:te});this.timebar?this.timebar.update(rt):(this.timebar=new CK({style:rt}),($e=this.canvas)===null||$e===void 0||$e.appendChild(this.timebar))})}upsertCanvas(){if(this.canvas)return this.canvas;const{className:x,height:E,position:z}=this.options,te=this.context.canvas,[re]=te.getSize(),[oe,,le]=this.padding,[ce,ge]=CD({width:re,height:E+oe+le,graphCanvas:te,className:"timebar",placement:z});return this.container=ce,x&&ce.classList.add(x),this.canvas=ge,this.canvas}filterElements(x){return PK(this,void 0,void 0,function*(){var E;if(!this.originalData)return;const{elementTypes:z,getTime:te}=this.options,{graph:re,element:oe}=this.context,le=M6(this.originalData);z.forEach(ge=>{const Ae=`${ge}s`;le[Ae]=(this.originalData[Ae]||[]).filter(Me=>{const Ue=te(Me);return!!L6(Ue,x)})});const ce=[...le.nodes,...le.combos].map(ge=>Ji(ge));le.edges=le.edges.filter(ge=>{const Ae=ge.source,Me=ge.target;return ce.includes(Ae)&&ce.includes(Me)}),re.setData(le),yield(E=oe.draw({animation:!1,silence:!0}))===null||E===void 0?void 0:E.finished})}hiddenElements(x){const{graph:E}=this.context,{elementTypes:z,getTime:te}=this.options,re=[],oe=[];z.forEach(le=>{var ce;const ge=`${le}s`;(((ce=this.originalData)===null||ce===void 0?void 0:ce[ge])||[]).forEach(Me=>{const Ue=Ji(Me),Xe=te(Me);L6(Xe,x)?oe.push(Ue):re.push(Ue)})}),E.hideElement(re,!1),E.showElement(oe,!1)}destroy(){var x,E,z;const{graph:te}=this.context;this.originalData&&te.setData(Object.assign({},this.originalData)),(x=this.timebar)===null||x===void 0||x.destroy(),(E=this.canvas)===null||E===void 0||E.destroy(),(z=this.container)===null||z===void 0||z.remove(),this.originalData=void 0,this.container=void 0,this.timebar=void 0,this.canvas=void 0,super.destroy()}}wL.defaultOptions={position:"bottom",enable:!0,timebarType:"time",className:"g6-timebar",width:450,height:60,zIndex:3,elementTypes:["node"],padding:10,mode:"modify",getTime:b=>TK(b,LK,void 0),loop:!1};const M6=b=>{const{nodes:x=[],edges:E=[],combos:z=[]}=b;return{nodes:[...x],edges:[...E],combos:[...z]}},L6=(b,x)=>{if(os(x))return b===x;const[E,z]=x;return b>=E&&b<=z},TK=(b,x,E)=>{var z;for(let te=0;te{x[z]="8px"}),x.flexDirection=b.startsWith("top")||b.startsWith("bottom")?"row":"column",x}const IK=` .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; } `,OK=` `;var T6=function(b,x,E,z){function te(re){return re instanceof E?re:new E(function(oe){oe(re)})}return new(E||(E=Promise))(function(re,oe){function le(Ae){try{ge(z.next(Ae))}catch(Me){oe(Me)}}function ce(Ae){try{ge(z.throw(Ae))}catch(Me){oe(Me)}}function ge(Ae){Ae.done?re(Ae.value):te(Ae.value).then(le,ce)}ge((z=z.apply(b,x||[])).next())})};class CL extends Fg{constructor(x,E){super(x,Object.assign({},CL.defaultOptions,E)),this.$element=zS("toolbar",!1),this.onToolbarItemClick=te=>{const{onClick:re}=this.options;if(te.target instanceof Element&&te.target.className.includes("g6-toolbar-item")){const oe=te.target.getAttribute("value");re==null||re(oe,te.target)}};const z=this.context.canvas.getContainer();this.$element.style.display="flex",z.appendChild(this.$element),hD("g6-toolbar-css","style",{},IK,document.head),hD("g6-toolbar-svgicon","div",{display:"none"},OK),this.$element.addEventListener("click",this.onToolbarItemClick),this.update(E)}update(x){const E=Object.create(null,{update:{get:()=>super.update}});return T6(this,void 0,void 0,function*(){E.update.call(this,x);const{className:z,position:te,style:re}=this.options;this.$element.className=`g6-toolbar ${z||""}`,Object.assign(this.$element.style,re,DK(te)),this.$element.innerHTML=yield this.getDOMContent()})}destroy(){this.$element.removeEventListener("click",this.onToolbarItemClick),this.$element.remove(),super.destroy()}getDOMContent(){return T6(this,void 0,void 0,function*(){return(yield this.options.getItems()).map(E=>`
`).join("")})}}CL.defaultOptions={position:"top-left"};function $D(b){var x=document.createElement("div");x.innerHTML=b;var E=x.childNodes[0];return E&&x.contains(E)&&x.removeChild(E),E}function NK(b,x){return!b||!x?b:b.replace(/\\?\{([^{}]+)\}/g,function(E,z){return E.charAt(0)==="\\"?E.slice(1):x[z]===void 0?"":x[z]})}var BK=NK,D6=function(b,x){if(x==null){b.innerHTML="";return}b.replaceChildren?Array.isArray(x)?b.replaceChildren.apply(b,(0,wn.ev)([],(0,wn.CR)(x),!1)):b.replaceChildren(x):(b.innerHTML="",Array.isArray(x)?x.forEach(function(E){return b.appendChild(E)}):b.appendChild(x))};function eI(b){return b===void 0&&(b=""),{CONTAINER:"".concat(b,"tooltip"),TITLE:"".concat(b,"tooltip-title"),LIST:"".concat(b,"tooltip-list"),LIST_ITEM:"".concat(b,"tooltip-list-item"),NAME:"".concat(b,"tooltip-list-item-name"),MARKER:"".concat(b,"tooltip-list-item-marker"),NAME_LABEL:"".concat(b,"tooltip-list-item-name-label"),VALUE:"".concat(b,"tooltip-list-item-value"),CROSSHAIR_X:"".concat(b,"tooltip-crosshair-x"),CROSSHAIR_Y:"".concat(b,"tooltip-crosshair-y")}}var I6={overflow:"hidden","white-space":"nowrap","text-overflow":"ellipsis"};function RK(b){var x;b===void 0&&(b="");var E=eI(b);return x={},x[".".concat(E.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"},x[".".concat(E.TITLE)]={color:"rgba(0, 0, 0, 0.45)"},x[".".concat(E.LIST)]={margin:"0px","list-style-type":"none",padding:"0px"},x[".".concat(E.LIST_ITEM)]={"list-style-type":"none",display:"flex","line-height":"2em","align-items":"center","justify-content":"space-between","white-space":"nowrap"},x[".".concat(E.MARKER)]={width:"8px",height:"8px","border-radius":"50%",display:"inline-block","margin-right":"4px"},x[".".concat(E.NAME)]={display:"flex","align-items":"center","max-width":"216px"},x[".".concat(E.NAME_LABEL)]=(0,wn.pi)({flex:1},I6),x[".".concat(E.VALUE)]=(0,wn.pi)({display:"inline-block",float:"right",flex:1,"text-align":"right","min-width":"28px","margin-left":"30px",color:"rgba(0, 0, 0, 0.85)"},I6),x[".".concat(E.CROSSHAIR_X)]={position:"absolute",width:"1px","background-color":"rgba(0, 0, 0, 0.25)"},x[".".concat(E.CROSSHAIR_Y)]={position:"absolute",height:"1px","background-color":"rgba(0, 0, 0, 0.25)"},x}var kK=function(b){(0,wn.ZT)(x,b);function x(E){var z=this,te,re,oe=(re=(te=E.style)===null||te===void 0?void 0:te.template)===null||re===void 0?void 0:re.prefixCls,le=eI(oe);return z=b.call(this,E,{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:'
'),title:'
'),item:'
  • {name} {value}
  • `)},style:RK(oe)})||this,z.timestamp=-1,z.prevCustomContentKey=z.attributes.contentKey,z.initShape(),z.render(z.attributes,z),z}return Object.defineProperty(x.prototype,"HTMLTooltipElement",{get:function(){return this.element},enumerable:!1,configurable:!0}),x.prototype.getContainer=function(){return this.element},Object.defineProperty(x.prototype,"elementSize",{get:function(){var E=this.element.offsetWidth,z=this.element.offsetHeight;return{width:E,height:z}},enumerable:!1,configurable:!0}),Object.defineProperty(x.prototype,"HTMLTooltipItemsElements",{get:function(){var E=this.attributes,z=E.data,te=E.template;return z.map(function(re,oe){var le=re.name,ce=le===void 0?"":le,ge=re.color,Ae=ge===void 0?"black":ge,Me=re.index,Ue=(0,wn._T)(re,["name","color","index"]),Xe=(0,wn.pi)({name:ce,color:Ae,index:Me!=null?Me:oe},Ue);return $D(BK(te.item,Xe))})},enumerable:!1,configurable:!0}),x.prototype.render=function(E,z){this.renderHTMLTooltipElement(),this.updatePosition()},x.prototype.destroy=function(){var E;(E=this.element)===null||E===void 0||E.remove(),b.prototype.destroy.call(this)},x.prototype.show=function(E,z){var te=this;if(E!==void 0&&z!==void 0){var re=this.element.style.visibility==="hidden",oe=function(){te.attributes.x=E!=null?E:te.attributes.x,te.attributes.y=z!=null?z:te.attributes.y,te.updatePosition()};re?this.closeTransition(oe):oe()}this.element.style.visibility="visible"},x.prototype.hide=function(E,z){E===void 0&&(E=0),z===void 0&&(z=0);var te=this.attributes.enterable;te&&this.isCursorEntered(E,z)||(this.element.style.visibility="hidden")},x.prototype.initShape=function(){var E=this.attributes.template;this.element=$D(E.container),this.id&&this.element.setAttribute("id",this.id)},x.prototype.renderCustomContent=function(){if(!(this.prevCustomContentKey!==void 0&&this.prevCustomContentKey===this.attributes.contentKey)){this.prevCustomContentKey=this.attributes.contentKey;var E=this.attributes.content;E&&(typeof E=="string"?this.element.innerHTML=E:D6(this.element,E))}},x.prototype.renderHTMLTooltipElement=function(){var E,z,te=this.attributes,re=te.template,oe=te.title,le=te.enterable,ce=te.style,ge=te.content,Ae=eI(re.prefixCls),Me=this.element;if(this.element.style.pointerEvents=le?"auto":"none",ge)this.renderCustomContent();else{oe?(Me.innerHTML=re.title,Me.getElementsByClassName(Ae.TITLE)[0].innerHTML=oe):(z=(E=Me.getElementsByClassName(Ae.TITLE))===null||E===void 0?void 0:E[0])===null||z===void 0||z.remove();var Ue=this.HTMLTooltipItemsElements,Xe=document.createElement("ul");Xe.className=Ae.LIST,D6(Xe,Ue);var $e=this.element.querySelector(".".concat(Ae.LIST));$e?$e.replaceWith(Xe):Me.appendChild(Xe)}yG(Me,ce)},x.prototype.getRelativeOffsetFromCursor=function(E){var z=this.attributes,te=z.position,re=z.offset,oe=E||te,le=oe.split("-"),ce={left:[-1,0],right:[1,0],top:[0,-1],bottom:[0,1]},ge=this.elementSize,Ae=ge.width,Me=ge.height,Ue=[-Ae/2,-Me/2];return le.forEach(function(Xe){var $e=(0,wn.CR)(Ue,2),rt=$e[0],ot=$e[1],pt=(0,wn.CR)(ce[Xe],2),yt=pt[0],Ct=pt[1];Ue=[rt+(Ae/2+re[0])*yt,ot+(Me/2+re[1])*Ct]}),Ue},x.prototype.setOffsetPosition=function(E){var z=(0,wn.CR)(E,2),te=z[0],re=z[1],oe=this.attributes,le=oe.x,ce=le===void 0?0:le,ge=oe.y,Ae=ge===void 0?0:ge,Me=oe.container,Ue=Me.x,Xe=Me.y;this.element.style.left="".concat(+ce+Ue+te,"px"),this.element.style.top="".concat(+Ae+Xe+re,"px")},x.prototype.updatePosition=function(){var E=this.attributes.showDelay,z=E===void 0?60:E,te=Date.now();this.timestamp>0&&te-this.timestampyt+zt,top:otCt+Wt},Qt=[];Ae.split("-").forEach(function(vn){Ht[vn]?Qt.push(pt[vn]):Qt.push(vn)});var Gt=Qt.join("-");return this.getRelativeOffsetFromCursor(Gt)},x.prototype.isCursorEntered=function(E,z){if(this.element){var te=this.element.getBoundingClientRect(),re=te.x,oe=te.y,le=te.width,ce=te.height;return new ip(re,oe,le,ce).isPointIn(E,z)}return!1},x.prototype.closeTransition=function(E){var z=this,te=this.element.style.transition;this.element.style.transition="none",E(),setTimeout(function(){z.element.style.transition=te},10)},x.tag="tooltip",x}(Id),O6=function(b,x,E,z){function te(re){return re instanceof E?re:new E(function(oe){oe(re)})}return new(E||(E=Promise))(function(re,oe){function le(Ae){try{ge(z.next(Ae))}catch(Me){oe(Me)}}function ce(Ae){try{ge(z.throw(Ae))}catch(Me){oe(Me)}}function ge(Ae){Ae.done?re(Ae.value):te(Ae.value).then(le,ce)}ge((z=z.apply(b,x||[])).next())})};class bL extends Fg{constructor(x,E){super(x,Object.assign({},bL.defaultOptions,E)),this.currentTarget=null,this.tooltipElement=null,this.container=null,this.isEnable=(z,te)=>{const{enable:re}=this.options;return typeof re=="function"?re(z,te):re},this.onClick=z=>{const{target:{id:te}}=z;this.currentTarget===te?this.hide(z):this.show(z)},this.onPointerMove=z=>{const{target:te}=z;!this.currentTarget||te.id===this.currentTarget||this.show(z)},this.onPointerLeave=z=>{this.hide(z)},this.onCanvasMove=z=>{this.hide(z)},this.onPointerEnter=z=>{this.show(z)},this.showById=z=>O6(this,void 0,void 0,function*(){const te={target:{id:z}};yield this.show(te)}),this.getElementData=(z,te)=>{const{model:re}=this.context;switch(te){case"node":return re.getNodeData([z]);case"edge":return re.getEdgeData([z]);case"combo":return re.getComboData([z]);default:return[]}},this.show=z=>O6(this,void 0,void 0,function*(){var te,re;const{client:oe,target:{id:le}}=z;if(gM(z.target))return;const ce=this.context.graph.getElementType(le),{getContent:ge,title:Ae}=this.options,Me=this.getElementData(le,ce);if(!this.tooltipElement||!this.isEnable(z,Me))return;let Ue={};if(ge){if(Ue.content=yield ge(z,Me),!Ue.content)return}else{const rt=this.context.graph.getElementRenderStyle(le),ot=ce==="node"?rt.fill:rt.stroke;Ue={title:Ae||ce,data:Me.map(pt=>({name:"ID",value:pt.id||`${pt.source} -> ${pt.target}`,color:ot}))}}this.currentTarget=le;let Xe,$e;if(oe)Xe=oe.x,$e=oe.y;else{const rt=bp(Me,"0.style",{x:0,y:0});Xe=rt.x,$e=rt.y}(re=(te=this.options).onOpenChange)===null||re===void 0||re.call(te,!0),this.tooltipElement.update(Object.assign(Object.assign(Object.assign({},this.tooltipStyleProps),{x:Xe,y:$e,style:{".tooltip":{visibility:"visible"}}}),Ue))}),this.hide=z=>{var te,re,oe,le,ce;if(!z){(re=(te=this.options).onOpenChange)===null||re===void 0||re.call(te,!1),(oe=this.tooltipElement)===null||oe===void 0||oe.hide(),this.currentTarget=null;return}if(!this.tooltipElement||!this.currentTarget)return;const{client:{x:ge,y:Ae}}=z;(ce=(le=this.options).onOpenChange)===null||ce===void 0||ce.call(le,!1),this.tooltipElement.hide(ge,Ae),this.currentTarget=null},this.initTooltip=()=>{var z;const te=new kK({className:"tooltip",style:this.tooltipStyleProps});return(z=this.container)===null||z===void 0||z.appendChild(te.HTMLTooltipElement),te},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:pointerenter":this.onPointerEnter,"node:pointermove":this.onPointerMove,"canvas:pointermove":this.onCanvasMove,"edge:pointerenter":this.onPointerEnter,"edge:pointermove":this.onPointerMove,"combo:pointerenter":this.onPointerEnter,"combo:pointermove":this.onPointerMove,contextmenu:this.onPointerLeave,"node:drag":this.onPointerLeave}}update(x){var E;this.unbindEvents(),super.update(x),this.tooltipElement&&((E=this.container)===null||E===void 0||E.removeChild(this.tooltipElement.HTMLTooltipElement)),this.tooltipElement=this.initTooltip(),this.bindEvents()}render(){const{canvas:x}=this.context,E=x.getContainer();E&&(this.container=E,this.tooltipElement=this.initTooltip())}unbindEvents(){const{graph:x}=this.context,E=this.getEvents();Object.keys(E).forEach(z=>{x.off(z,E[z])})}bindEvents(){const{graph:x}=this.context,E=this.getEvents();Object.keys(E).forEach(z=>{x.on(z,E[z])})}get tooltipStyleProps(){const{canvas:x}=this.context,{center:E}=x.getBounds(),z=x.getContainer(),{top:te,left:re}=z.getBoundingClientRect(),{style:oe,position:le,enterable:ce,container:ge={x:-re,y:-te},title:Ae,offset:Me}=this.options,[Ue,Xe]=E,[$e,rt]=x.getSize();return{x:Ue,y:Xe,container:ge,title:Ae,bounding:{x:0,y:0,width:$e,height:rt},position:le,enterable:ce,offset:Me,style:oe}}destroy(){var x;this.unbindEvents(),this.tooltipElement&&((x=this.container)===null||x===void 0||x.removeChild(this.tooltipElement.HTMLTooltipElement)),super.destroy()}}bL.defaultOptions={trigger:"hover",position:"top-right",enterable:!1,enable:!0,offset:[10,10],style:{".tooltip":{visibility:"hidden"}}};var N6=function(b,x,E,z){function te(re){return re instanceof E?re:new E(function(oe){oe(re)})}return new(E||(E=Promise))(function(re,oe){function le(Ae){try{ge(z.next(Ae))}catch(Me){oe(Me)}}function ce(Ae){try{ge(z.throw(Ae))}catch(Me){oe(Me)}}function ge(Ae){Ae.done?re(Ae.value):te(Ae.value).then(le,ce)}ge((z=z.apply(b,x||[])).next())})};let HS;function B6(b,x){return HS||(HS=document.createElement("canvas")),HS.width=b,HS.height=x,HS.getContext("2d").clearRect(0,0,b,x),HS}function FK(b,x,E,z){return N6(this,void 0,void 0,function*(){const te=B6(b,x),re=te.getContext("2d"),{rotate:oe,opacity:le,textFill:ce,textFontSize:ge,textFontFamily:Ae,textFontVariant:Me,textFontWeight:Ue,textAlign:Xe,textBaseline:$e}=z;return re.textAlign=Xe,re.textBaseline=$e,re.translate(b/2,x/2),re.font=`${ge}px ${Ae} ${Me} ${Ue}`,oe&&re.rotate(oe),le&&(re.globalAlpha=le),ce&&(re.fillStyle=ce,re.fillText(`${E}`,0,0)),te.toDataURL()})}function _K(b,x,E,z){return N6(this,void 0,void 0,function*(){const te=B6(b,x),re=te.getContext("2d"),{rotate:oe,opacity:le}=z;oe&&re.rotate(oe),le&&(re.globalAlpha=le);const ce=new Image;return ce.crossOrigin="anonymous",ce.src=E,new Promise(ge=>{ce.onload=function(){const Ae=b>ce.width?(b-ce.width)/2:0,Me=x>ce.height?(x-ce.height)/2:0;re.drawImage(ce,0,0,ce.width,ce.height,Ae,Me,b-Ae*2,x-Me*2),ge(te.toDataURL())}})})}var zK=function(b,x,E,z){function te(re){return re instanceof E?re:new E(function(oe){oe(re)})}return new(E||(E=Promise))(function(re,oe){function le(Ae){try{ge(z.next(Ae))}catch(Me){oe(Me)}}function ce(Ae){try{ge(z.throw(Ae))}catch(Me){oe(Me)}}function ge(Ae){Ae.done?re(Ae.value):te(Ae.value).then(le,ce)}ge((z=z.apply(b,x||[])).next())})},jK=function(b,x){var E={};for(var z in b)Object.prototype.hasOwnProperty.call(b,z)&&x.indexOf(z)<0&&(E[z]=b[z]);if(b!=null&&typeof Object.getOwnPropertySymbols=="function")for(var te=0,z=Object.getOwnPropertySymbols(b);tesuper.update}});return zK(this,void 0,void 0,function*(){E.update.call(this,x);const z=this.options,{width:te,height:re,text:oe,imageURL:le}=z,ce=jK(z,["width","height","text","imageURL"]);Object.keys(ce).forEach(Ae=>{Ae.startsWith("background")&&(this.$element.style[Ae]=x[Ae])});const ge=le?yield _K(te,re,le,ce):yield FK(te,re,oe,ce);this.$element.style.backgroundImage=`url(${ge})`})}destroy(){super.destroy(),this.$element.remove()}}PL.defaultOptions={width:200,height:100,opacity:.2,rotate:Math.PI/12,text:"",textFill:"#000",textFontSize:16,textAlign:"center",textBaseline:"middle",backgroundRepeat:"repeat"};const WK=["#7E92B5","#F4664A","#FFBE3A"],UK={type:"group",color:["#1783FF","#00C9C9","#F08F56","#D580FF","#7863FF","#DB9D0D","#60C42D","#FF80CA","#2491B3","#17C76F"]},GK={type:"group",color:["#99ADD1","#1783FF","#00C9C9","#F08F56","#D580FF","#7863FF","#DB9D0D","#60C42D","#FF80CA","#2491B3","#17C76F"]};function R6(b){const{bgColor:x,textColor:E,nodeColor:z,nodeColorDisabled:te,nodeStroke:re,nodeHaloStrokeOpacityActive:oe=.15,nodeHaloStrokeOpacitySelected:le=.25,nodeOpacityDisabled:ce=.06,nodeIconOpacityInactive:ge=.85,nodeOpacityInactive:Ae=.25,nodeBadgePalette:Me=WK,nodePaletteOptions:Ue=UK,edgeColor:Xe,edgeColorDisabled:$e,edgePaletteOptions:rt=GK,comboColor:ot,comboColorDisabled:pt,comboStroke:yt,comboStrokeDisabled:Ct,edgeColorInactive:zt}=b;return{background:x,node:{palette:Ue,style:{donutOpacity:1,badgeBackgroundOpacity:1,badgeFill:"#fff",badgeFontSize:8,badgePadding:[0,4],badgePalette:Me,fill:z,fillOpacity:1,halo:!1,iconFill:"#fff",iconOpacity:1,labelBackground:!1,labelBackgroundFill:x,labelBackgroundLineWidth:0,labelBackgroundOpacity:.75,labelFill:E,labelFillOpacity:.85,labelLineHeight:16,labelPadding:[0,2],labelFontSize:12,labelFontWeight:400,labelOpacity:1,labelOffsetY:2,lineWidth:0,portFill:z,portLineWidth:1,portStroke:re,portStrokeOpacity:.65,size:32,stroke:re,strokeOpacity:1,zIndex:2},state:{selected:{halo:!0,haloLineWidth:24,haloStrokeOpacity:le,labelFontSize:12,labelFontWeight:"bold",lineWidth:4,stroke:re},active:{halo:!0,haloLineWidth:12,haloStrokeOpacity:oe},highlight:{labelFontWeight:"bold",lineWidth:4,stroke:re,strokeOpacity:.85},inactive:{badgeBackgroundOpacity:Ae,donutOpacity:Ae,fillOpacity:Ae,iconOpacity:ge,labelFill:E,labelFillOpacity:Ae,strokeOpacity:Ae},disabled:{badgeBackgroundOpacity:.25,donutOpacity:ce,fill:te,fillOpacity:ce,iconFill:te,iconOpacity:.25,labelFill:E,labelFillOpacity:.25,strokeOpacity:ce}},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:rt,style:{badgeBackgroundFill:Xe,badgeFill:"#fff",badgeFontSize:8,badgeOffsetX:10,fillOpacity:1,halo:!1,haloLineWidth:12,haloStrokeOpacity:1,increasedLineWidthForHitTesting:2,labelBackground:!1,labelBackgroundFill:x,labelBackgroundLineWidth:0,labelBackgroundOpacity:.75,labelBackgroundPadding:[4,4,4,4],labelFill:E,labelFontSize:12,labelFontWeight:400,labelOpacity:1,labelPlacement:"center",labelTextBaseline:"middle",lineWidth:1,stroke:Xe,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:zt,fillOpacity:.08,labelOpacity:.25,strokeOpacity:.08,badgeBackgroundOpacity:.25},disabled:{stroke:$e,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:x,collapsedMarkerFontSize:12,collapsedMarkerFillOpacity:1,collapsedSize:32,collapsedFillOpacity:1,fill:ot,halo:!1,haloLineWidth:12,haloStroke:yt,haloStrokeOpacity:.25,labelBackground:!1,labelBackgroundFill:x,labelBackgroundLineWidth:0,labelBackgroundOpacity:.75,labelBackgroundPadding:[2,4,2,4],labelFill:E,labelFontSize:12,labelFontWeight:400,labelOpacity:1,lineDash:0,lineWidth:1,fillOpacity:.04,strokeOpacity:1,padding:10,stroke:yt},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:pt,fillOpacity:.25,labelOpacity:.25,stroke:Ct,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 HK=R6({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"}),VK=R6({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 Tx extends u5{beforeDraw(x,E){return x}afterLayout(x,E){}}class KK extends Tx{beforeDraw(x){const{model:E}=this.context,z=x.add.combos,te=re=>{const oe=[];return re.forEach((le,ce)=>{const Ae=E.getAncestorsData(ce,"combo").map(Me=>Ji(Me)).reverse();oe.push([ce,le,Ae.length])}),new Map(oe.sort(([,,le],[,,ce])=>ce-le).map(([le,ce])=>[le,ce]))};return x.add.combos=te(z),x.update.combos=te(x.update.combos),x}}function I0(b,x,E,z,te){const re=Ji(z),oe=`${E}s`,le=te?z:b.add[oe].get(re)||b.update[oe].get(re)||b.remove[oe].get(re)||z;Object.entries(b).forEach(([ce,ge])=>{x===ce?ge[oe].set(re,le):ge[oe].delete(re)})}function ML(b,x){return Object.keys(b).every(E=>b[E]===x[E])}class ZK extends Tx{beforeDraw(x,E){if(E.stage==="visibility"||!this.context.model.model.hasTreeStructure(lh))return x;const{model:z}=this.context,{add:te,update:re}=x,oe=[...x.update.combos.entries(),...x.add.combos.entries()];for(;oe.length;){const[le,ce]=oe.pop();if(r0(ce)){const ge=z.getDescendantsData(le),Ae=ge.map(Ji),{internal:Me,external:Ue}=O5(Ae,Xe=>z.getRelatedEdgesData(Xe));ge.forEach(Xe=>{const $e=Ji(Xe),rt=oe.findIndex(([pt])=>pt===$e);rt!==-1&&oe.splice(rt,1);const ot=z.getElementType($e);I0(x,"remove",ot,Xe)}),Me.forEach(Xe=>I0(x,"remove","edge",Xe)),Ue.forEach(Xe=>{var $e;const rt=Ji(Xe);(($e=this.context.element)===null||$e===void 0?void 0:$e.getElement(rt))?re.edges.set(rt,Xe):te.edges.set(rt,Xe)})}else{const ge=z.getChildrenData(le),Ae=ge.map(Ji),{edges:Me}=O5(Ae,Ue=>z.getRelatedEdgesData(Ue));[...ge,...Me].forEach(Ue=>{var Xe;const $e=Ji(Ue),rt=z.getElementType($e);((Xe=this.context.element)===null||Xe===void 0?void 0:Xe.getElement($e))?I0(x,"update",rt,Ue):I0(x,"add",rt,Ue),rt==="combo"&&oe.push([$e,Ue])})}}return x}}const k6=(b,x,E,z)=>{const te=`${E}s`,re=Ji(z);!b.add[te].has(re)&&!b.update[te].has(re)&&b[x][te].set(Ji(z),z)};class YK extends Tx{getElement(x){return this.context.element.getElement(x)}handleExpand(x,E){if(k6(E,"add","node",x),r0(x))return;const z=Ji(x);k6(E,"add","node",x),this.context.model.getRelatedEdgesData(z,"out").forEach(oe=>{I0(E,"add","edge",oe)}),this.context.model.getChildrenData(z).forEach(oe=>{this.handleExpand(oe,E)})}beforeDraw(x){const{graph:E,model:z}=this.context;if(!z.model.hasTreeStructure(C0))return x;const{add:{nodes:te,edges:re},update:{nodes:oe}}=x,le=new Map,ce=new Map;te.forEach((Ae,Me)=>{r0(Ae)&&le.set(Me,Ae)}),re.forEach(Ae=>{if(E.getElementType(Ae.source)!=="node")return;const Me=E.getNodeData(Ae.source);r0(Me)&&le.set(Ae.source,Me)}),oe.forEach((Ae,Me)=>{const Ue=this.getElement(Me);if(!Ue)return;const Xe=Ue.attributes.collapsed;r0(Ae)?Xe||le.set(Me,Ae):Xe&&ce.set(Me,Ae)});const ge=new Set;return le.forEach((Ae,Me)=>{z.getDescendantsData(Me).forEach(Xe=>{const $e=Ji(Xe);if(ge.has($e))return;I0(x,"remove","node",Xe),z.getRelatedEdgesData($e).forEach(ot=>{I0(x,"remove","edge",ot)}),ge.add($e)})}),ce.forEach((Ae,Me)=>{if(z.getAncestorsData(Me,C0).some(r0)){I0(x,"remove","node",Ae);return}this.handleExpand(Ae,x)}),x}}const tI=new WeakMap;function f$(b,x,E){tI.has(b)||tI.set(b,{});const z=tI.get(b);if(!z[x])return z[x]=E,!0;const te=z[x];return F6(te,E)?!1:(z[x]=E,!0)}const F6=(b,x,E=2)=>{if(typeof b!="object"||typeof x!="object")return b===x;const z=Object.keys(b),te=Object.keys(x);if(z.length!==te.length)return!1;for(const re of z){const oe=b[re],le=x[re];if(E>1&&typeof oe=="object"&&typeof le=="object"){if(!F6(oe,le,E-1))return!1}else if(oe!==le)return!1}return!0};function XK(b,x,E,z=!1){const te=KT[b][x];!z&&te?te!==E&&n0.warn(`The extension ${x} of ${b} has been registered before.`):Object.assign(KT[b],{[x]:E})}var _6=function(){function b(x){(0,xi.Z)(this,b),this.dragndropPluginOptions=x}return(0,qr.Z)(b,[{key:"apply",value:function(E){var z=this,te=E.renderingService,re=E.renderingContext,oe=re.root.ownerDocument,le=oe.defaultView,ce=function(Ae){var Me=Ae.target,Ue=Me===oe,Xe=Ue&&z.dragndropPluginOptions.isDocumentDraggable?oe:Me.closest&&Me.closest("[draggable=true]");if(Xe){var $e=!1,rt=Ae.timeStamp,ot=[Ae.clientX,Ae.clientY],pt=null,yt=[Ae.clientX,Ae.clientY],Ct=function(){var Wt=(0,Nv.Z)((0,of.Z)().mark(function Ht(Qt){var Gt,vn,Sn,kn,Kn,vr;return(0,of.Z)().wrap(function(Nr){for(;;)switch(Nr.prev=Nr.next){case 0:if($e){Nr.next=8;break}if(Gt=Qt.timeStamp-rt,vn=cd([Qt.clientX,Qt.clientY],ot),!(Gt<=z.dragndropPluginOptions.dragstartTimeThreshold||vn<=z.dragndropPluginOptions.dragstartDistanceThreshold)){Nr.next=5;break}return Nr.abrupt("return");case 5:Qt.type="dragstart",Xe.dispatchEvent(Qt),$e=!0;case 8:if(Qt.type="drag",Qt.dx=Qt.clientX-yt[0],Qt.dy=Qt.clientY-yt[1],Xe.dispatchEvent(Qt),yt=[Qt.clientX,Qt.clientY],Ue){Nr.next=21;break}return Sn=z.dragndropPluginOptions.overlap==="pointer"?[Qt.canvasX,Qt.canvasY]:Me.getBounds().center,Nr.next=17,oe.elementsFromPoint(Sn[0],Sn[1]);case 17:kn=Nr.sent,Kn=kn[kn.indexOf(Me)+1],vr=(Kn==null?void 0:Kn.closest("[droppable=true]"))||(z.dragndropPluginOptions.isDocumentDroppable?oe:null),pt!==vr&&(pt&&(Qt.type="dragleave",Qt.target=pt,pt.dispatchEvent(Qt)),vr&&(Qt.type="dragenter",Qt.target=vr,vr.dispatchEvent(Qt)),pt=vr,pt&&(Qt.type="dragover",Qt.target=pt,pt.dispatchEvent(Qt)));case 21:case"end":return Nr.stop()}},Ht)}));return function(Qt){return Wt.apply(this,arguments)}}();le.addEventListener("pointermove",Ct);var zt=function(Ht){if($e){Ht.detail={preventClick:!0};var Qt=Ht.clone();pt&&(Qt.type="drop",Qt.target=pt,pt.dispatchEvent(Qt)),Qt.type="dragend",Xe.dispatchEvent(Qt),$e=!1}le.removeEventListener("pointermove",Ct)};Me.addEventListener("pointerup",zt,{once:!0}),Me.addEventListener("pointerupoutside",zt,{once:!0})}};te.hooks.init.tap(b.tag,function(){le.addEventListener("pointerdown",ce)}),te.hooks.destroy.tap(b.tag,function(){le.removeEventListener("pointerdown",ce)})}}])}();_6.tag="Dragndrop";var QK=function(b){function x(){var E,z=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return(0,xi.Z)(this,x),E=Fi(this,x),E.name="dragndrop",E.options=z,E}return(0,Do.Z)(x,b),(0,qr.Z)(x,[{key:"init",value:function(){this.addRenderingPlugin(new _6((0,Li.Z)({overlap:"pointer",isDocumentDraggable:!1,isDocumentDroppable:!1,dragstartDistanceThreshold:0,dragstartTimeThreshold:0},this.options)))}},{key:"destroy",value:function(){this.removeAllRenderingPlugins()}},{key:"setOptions",value:function(z){Object.assign(this.plugins[0].dragndropPluginOptions,z)}}])}(q0),z6=function(b,x,E,z){function te(re){return re instanceof E?re:new E(function(oe){oe(re)})}return new(E||(E=Promise))(function(re,oe){function le(Ae){try{ge(z.next(Ae))}catch(Me){oe(Me)}}function ce(Ae){try{ge(z.throw(Ae))}catch(Me){oe(Me)}}function ge(Ae){Ae.done?re(Ae.value):te(Ae.value).then(le,ce)}ge((z=z.apply(b,x||[])).next())})},j6=function(b,x){var E={};for(var z in b)Object.prototype.hasOwnProperty.call(b,z)&&x.indexOf(z)<0&&(E[z]=b[z]);if(b!=null&&typeof Object.getOwnPropertySymbols=="function")for(var te=0,z=Object.getOwnPropertySymbols(b);te{const Ue=new nx(Object.assign(Object.assign({},le),{supportsMutipleCanvasesInOneContainer:oe,renderer:ge[Me],background:oe?Me==="background"?te:void 0:te}));return[Me,Ue]}));V6(Ae),this.extends={config:this.config,renderer:z,renderers:ge,layers:Ae}}get ready(){return Promise.all(Object.entries(this.getLayers()).map(([,x])=>x.ready))}resize(x,E){Object.assign(this.extends.config,{width:x,height:E}),Object.values(this.getLayers()).forEach(z=>{const te=z.getCamera(),re=te.getPosition(),oe=te.getFocalPoint();z.resize(x,E),te.setPosition(re),te.setFocalPoint(oe)})}getBounds(x){return NC(Object.values(this.getLayers()).map(E=>x?E.getRoot().childNodes.find(te=>te.classList.includes(x)):E.getRoot()).filter(E=>(E==null?void 0:E.childNodes.length)>0).map(E=>E.getBounds()))}getContainer(){const x=this.extends.config.container;return typeof x=="string"?document.getElementById(x):x}getSize(){return[this.extends.config.width||0,this.extends.config.height||0]}appendChild(x,E){var z;const te=((z=x.style)===null||z===void 0?void 0:z.$layer)||"main";return this.getLayer(te).appendChild(x,E)}setRenderer(x){if(x===this.extends.renderer)return;const E=H6(x,this.config.enableMultiLayer?U6:W6);this.extends.renderers=E,Object.entries(E).forEach(([z,te])=>this.getLayer(z).setRenderer(te)),V6(this.getLayers())}getCanvasByViewport(x){return Rg(this.getLayer().viewport2Canvas(cm(x)))}getViewportByCanvas(x){return Rg(this.getLayer().canvas2Viewport(cm(x)))}getViewportByClient(x){return Rg(this.getLayer().client2Viewport(cm(x)))}getClientByViewport(x){return Rg(this.getLayer().viewport2Client(cm(x)))}getClientByCanvas(x){return this.getClientByViewport(this.getViewportByCanvas(x))}getCanvasByClient(x){const E=this.getLayer(),z=E.client2Viewport(cm(x));return Rg(E.viewport2Canvas(z))}toDataURL(){return z6(this,arguments,void 0,function*(x={}){const E=globalThis.devicePixelRatio||1,{mode:z="viewport"}=x,te=j6(x,["mode"]);let[re,oe,le,ce]=[0,0,0,0];if(z==="viewport")[le,ce]=this.getSize();else if(z==="overall"){const pt=this.getBounds(),yt=hx(pt);[re,oe]=pt.min,[le,ce]=yt}const ge=$D('
    '),Ae=new nx({width:le,height:ce,renderer:new HC,devicePixelRatio:E,container:ge,background:this.extends.config.background});yield Ae.ready,Ae.appendChild(this.getLayer("background").getRoot().cloneNode(!0)),Ae.appendChild(this.getRoot().cloneNode(!0));const Me=this.getLayer("label").getRoot().cloneNode(!0),Ue=Ae.viewport2Canvas({x:0,y:0}),Xe=this.getCanvasByViewport([0,0]);Me.translate([Xe[0]-Ue.x,Xe[1]-Ue.y]),Me.scale(1/this.getCamera().getZoom()),Ae.appendChild(Me),Ae.appendChild(this.getLayer("transient").getRoot().cloneNode(!0));const $e=this.getCamera(),rt=Ae.getCamera();if(z==="viewport")rt.setZoom($e.getZoom()),rt.setPosition($e.getPosition()),rt.setFocalPoint($e.getFocalPoint());else if(z==="overall"){const[pt,yt,Ct]=rt.getPosition(),[zt,Wt,Ht]=rt.getFocalPoint();rt.setPosition([pt+re,yt+oe,Ct]),rt.setFocalPoint([zt+re,Wt+oe,Ht])}const ot=Ae.getContextService();return new Promise(pt=>{Ae.addEventListener(Cu.RERENDER,()=>z6(this,void 0,void 0,function*(){yield new Promise(Ct=>setTimeout(Ct,300));const yt=yield ot.toDataURL(te);pt(yt)}))})})}destroy(){Object.values(this.getLayers()).forEach(x=>{x.getCamera().cancelLandmarkAnimation(),x.destroy()})}}function H6(b,x){return Object.fromEntries(x.map(E=>{const z=(b==null?void 0:b(E))||new HC;return z instanceof HC&&z.setConfig({enableDirtyRectangleRendering:!1}),E==="main"?z.registerPlugin(new QK({isDocumentDraggable:!0,isDocumentDroppable:!0,dragstartDistanceThreshold:10,dragstartTimeThreshold:100})):z.unregisterPlugin(z.getPlugin("dom-interaction")),[E,z]}))}function V6(b){Object.entries(b).forEach(([x,E])=>{const z=E.getContextService().getDomElement();z!=null&&z.style&&(z.style.gridArea="1 / 1 / 2 / 2",z.style.outline="none",z.tabIndex=1,x!=="main"&&(z.style.pointerEvents="none")),z!=null&&z.parentElement&&(z.parentElement.style.display="grid")})}const VS=b=>b?parseInt(b):0;function qK(b){const x=getComputedStyle(b),E=b.clientWidth||VS(x.width),z=b.clientHeight||VS(x.height),te=VS(x.paddingLeft)+VS(x.paddingRight),re=VS(x.paddingTop)+VS(x.paddingBottom);return[E-te,z-re]}function K6(b){if(!b)return[0,0];let x=640,E=480;const[z,te]=qK(b);x=z||x,E=te||E;const re=1,oe=1;return[Math.max(os(x)?x:re,re),Math.max(os(E)?E:oe,oe)]}class LL{constructor(x){this.type=x}}class ff extends LL{constructor(x,E){super(x),this.data=E}}class Av extends LL{constructor(x,E,z,te){super(x),this.animationType=E,this.animation=z,this.data=te}}class KS extends LL{constructor(x,E,z){super(x),this.elementType=E,this.data=z}}class TL extends LL{constructor(x,E){super(x),this.data=E}}function Ff(b,x){b.emit(x.type,x)}function $K(b){if(!b)return null;if(b instanceof Uy)return{type:"canvas",element:b};let x=b;for(;x;){if(KC(x))return{type:"node",element:x};if(MO(x))return{type:"edge",element:x};if(N5(x))return{type:"combo",element:x};x=x.parentElement}return null}function Z6(b){var x;return((x=b==null?void 0:b.style)===null||x===void 0?void 0:x.zIndex)||0}const ZS="cachedStyle",DL=b=>`__${b}__`;function eZ(b,x){const E=Array.isArray(x)?x:[x];bp(b,ZS)||jC(b,ZS,{}),E.forEach(z=>{jC(bp(b,ZS),DL(z),b.attributes[z])})}function Y6(b,x){return bp(b,[ZS,DL(x)])}function tZ(b,x){return DL(x)in(bp(b,ZS)||{})}function g$(b,x,E){set(b,[ZS,DL(x)],E)}class nZ{constructor(x){this.tasks=[],this.animations=new Set,this.context=x}getTasks(){const x=[...this.tasks];return this.tasks=[],x}add(x,E){this.tasks.push([x,E])}animate(x,E,z){var te,re,oe;(te=E==null?void 0:E.before)===null||te===void 0||te.call(E);const le=this.getTasks().map(([ge,Ae])=>{var Me,Ue,Xe;const{element:$e,elementType:rt,stage:ot}=ge,pt=wk(this.context.options,rt,ot,x);(Me=Ae==null?void 0:Ae.before)===null||Me===void 0||Me.call(Ae);const yt=pt.length?bk($e,this.inferStyle(ge,z),pt):null;return yt?((Ue=Ae==null?void 0:Ae.beforeAnimate)===null||Ue===void 0||Ue.call(Ae,yt),yt.finished.then(()=>{var Ct,zt;(Ct=Ae==null?void 0:Ae.afterAnimate)===null||Ct===void 0||Ct.call(Ae,yt),(zt=Ae==null?void 0:Ae.after)===null||zt===void 0||zt.call(Ae),this.animations.delete(yt)})):(Xe=Ae==null?void 0:Ae.after)===null||Xe===void 0||Xe.call(Ae),yt}).filter(Boolean);le.forEach(ge=>this.animations.add(ge));const ce=ZT(le);return ce?((re=E==null?void 0:E.beforeAnimate)===null||re===void 0||re.call(E,ce),ce.finished.then(()=>{var ge,Ae;(ge=E==null?void 0:E.afterAnimate)===null||ge===void 0||ge.call(E,ce),(Ae=E==null?void 0:E.after)===null||Ae===void 0||Ae.call(E),this.release()})):(oe=E==null?void 0:E.after)===null||oe===void 0||oe.call(E),ce}inferStyle(x,E){var z,te;const{element:re,elementType:oe,stage:le,originalStyle:ce,updatedStyle:ge={}}=x;x.modifiedStyle||(x.modifiedStyle=Object.assign(Object.assign({},ce),ge));const{modifiedStyle:Ae}=x,Me={},Ue={};if(le==="enter")Object.assign(Me,{opacity:0});else if(le==="exit")Object.assign(Ue,{opacity:0});else if(le==="show")Object.assign(Me,{opacity:0}),Object.assign(Ue,{opacity:(z=Y6(re,"opacity"))!==null&&z!==void 0?z:OC("opacity")});else if(le==="hide")Object.assign(Me,{opacity:(te=Y6(re,"opacity"))!==null&&te!==void 0?te:OC("opacity")}),Object.assign(Ue,{opacity:0});else if(le==="collapse"){const{collapse:Xe}=E||{},{target:$e,descendants:rt,position:ot}=Xe;if(oe==="node"){if(rt.includes(re.id)){const[pt,yt,Ct]=ot;Object.assign(Ue,{x:pt,y:yt,z:Ct})}}else if(oe==="combo"){if(re.id===$e||rt.includes(re.id)){const[pt,yt]=ot;Object.assign(Ue,{x:pt,y:yt,childrenNode:ce.childrenNode})}}else oe==="edge"&&Object.assign(Ue,{sourceNode:Ae.sourceNode,targetNode:Ae.targetNode})}else if(le==="expand"){const{expand:Xe}=E||{},{target:$e,descendants:rt,position:ot}=Xe;if(oe==="node"){if(re.id===$e||rt.includes(re.id)){const[pt,yt,Ct]=ot;Object.assign(Me,{x:pt,y:yt,z:Ct})}}else if(oe==="combo"){if(re.id===$e||rt.includes(re.id)){const[pt,yt,Ct]=ot;Object.assign(Me,{x:pt,y:yt,z:Ct,childrenNode:Ae.childrenNode})}}else oe==="edge"&&Object.assign(Me,{sourceNode:Ae.sourceNode,targetNode:Ae.targetNode})}return[Object.keys(Me).length>0?Object.assign({},ce,Me):ce,Object.keys(Ue).length>0?Object.assign({},Ae,Ue):Ae]}stop(){this.animations.forEach(x=>x.cancel())}clear(){this.tasks=[]}release(){var x,E;const{canvas:z}=this.context,te=(E=(x=z.document)===null||x===void 0?void 0:x.timeline)===null||E===void 0?void 0:E.animationsWithPromises;te&&(z.document.timeline.animationsWithPromises=te.filter(re=>re.playState!=="finished"))}destroy(){this.stop(),this.animations.clear(),this.tasks=[]}}class rZ{constructor(x){this.batchCount=0,this.context=x}emit(x){const{graph:E}=this.context;E.emit(x.type,x)}startBatch(x=!0){this.batchCount++,this.batchCount===1&&this.emit(new ff(es.BATCH_START,{initiate:x}))}endBatch(){this.batchCount--,this.batchCount===0&&this.emit(new ff(es.BATCH_END))}get isBatching(){return this.batchCount>0}destroy(){this.context=null}}class iZ extends l5{constructor(x){super(x),this.currentTarget=null,this.currentTargetType=null,this.category="behavior",this.forwardCanvasEvents=E=>{const{target:z}=E,te=$K(z);if(!te)return;const{graph:re,canvas:oe}=this.context,{type:le,element:ce}=te;if("destroyed"in ce&&(gM(ce)||ce.destroyed))return;const{type:ge,detail:Ae,button:Me}=E,Ue=Object.assign(Object.assign({},E),{target:ce,targetType:le,originalTarget:z});ge===Zo.POINTER_MOVE&&(this.currentTarget!==ce&&(this.currentTarget&&re.emit(`${this.currentTargetType}:${Zo.POINTER_LEAVE}`,Object.assign(Object.assign({},Ue),{type:Zo.POINTER_LEAVE,target:this.currentTarget,targetType:this.currentTargetType})),ce&&(Object.assign(Ue,{type:Zo.POINTER_ENTER}),re.emit(`${le}:${Zo.POINTER_ENTER}`,Ue))),this.currentTarget=ce,this.currentTargetType=le),ge===Zo.CLICK&&Me===2||(re.emit(`${le}:${ge}`,Ue),re.emit(ge,Ue)),ge===Zo.CLICK&&Ae===2&&(Object.assign(Ue,{type:Zo.DBLCLICK}),re.emit(`${le}:${Zo.DBLCLICK}`,Ue),re.emit(Zo.DBLCLICK,Ue)),ge===Zo.POINTER_DOWN&&Me===2&&(Object.assign(Ue,{type:Zo.CONTEXT_MENU,preventDefault:()=>{var Xe;(Xe=oe.getContainer())===null||Xe===void 0||Xe.addEventListener(Zo.CONTEXT_MENU,$e=>$e.preventDefault(),{once:!0})}}),re.emit(`${le}:${Zo.CONTEXT_MENU}`,Ue),re.emit(Zo.CONTEXT_MENU,Ue))},this.forwardContainerEvents=E=>{this.context.graph.emit(E.type,E)},this.forwardEvents(),this.setBehaviors(this.context.options.behaviors||[])}setBehaviors(x){this.setExtensions(x)}forwardEvents(){const x=this.context.canvas.getContainer();x&&[PS.KEY_DOWN,PS.KEY_UP].forEach(z=>{x.addEventListener(z,this.forwardContainerEvents)});const E=this.context.canvas.document;E&&[Zo.CLICK,Zo.DBLCLICK,Zo.POINTER_OVER,Zo.POINTER_LEAVE,Zo.POINTER_ENTER,Zo.POINTER_MOVE,Zo.POINTER_OUT,Zo.POINTER_DOWN,Zo.POINTER_UP,Zo.CONTEXT_MENU,Zo.DRAG_START,Zo.DRAG,Zo.DRAG_END,Zo.DRAG_ENTER,Zo.DRAG_OVER,Zo.DRAG_LEAVE,Zo.DROP,Zo.WHEEL].forEach(z=>{E.addEventListener(z,this.forwardCanvasEvents)})}destroy(){const x=this.context.canvas.getContainer();x&&[PS.KEY_DOWN,PS.KEY_UP].forEach(E=>{x.removeEventListener(E,this.forwardContainerEvents)}),this.context.canvas.document.removeAllEventListeners(),super.destroy()}}function oZ(b,x){x===void 0&&(x=new Map);var E=[];if(Array.isArray(b))for(var z=0,te=b.length;z$e.length!==rt.length?!1:$e.every((ot,pt)=>ot===rt[pt]),Xe=($e,rt)=>{const ot=Object.keys($e),pt=Object.keys(rt);return ot.length!==pt.length?!1:ot.every(yt=>$e[yt]===rt[yt])};return!(!Xe(oe,Me)||!Ue(re,Ae)||!Ue(E,le)||!Xe(z,ce)||!Xe(te,ge))}var aZ=function(b,x){var E={};for(var z in b)Object.prototype.hasOwnProperty.call(b,z)&&x.indexOf(z)<0&&(E[z]=b[z]);if(b!=null&&typeof Object.getOwnPropertySymbols=="function")for(var te=0,z=Object.getOwnPropertySymbols(b);te0}silence(x){this.isTraceless=!0,x(),this.isTraceless=!1}isCombo(x){return this.comboIds.has(x)||this.latestRemovedComboIds.has(x)}getData(){return{nodes:this.getNodeData(),edges:this.getEdgeData(),combos:this.getComboData()}}getNodeData(x){return this.model.getAllNodes().reduce((E,z)=>{const te=tg(z);return this.isCombo(Ji(te))||(x===void 0||x.includes(Ji(te)))&&E.push(te),E},[])}getEdgeDatum(x){return tg(this.model.getEdge(x))}getEdgeData(x){return this.model.getAllEdges().reduce((E,z)=>{const te=tg(z);return(x===void 0||x.includes(Ji(te)))&&E.push(te),E},[])}getComboData(x){return this.model.getAllNodes().reduce((E,z)=>{const te=tg(z);return this.isCombo(Ji(te))&&(x===void 0||x.includes(Ji(te)))&&E.push(te),E},[])}getRootsData(x=C0){return this.model.getRoots(x).map(tg)}getAncestorsData(x,E){const{model:z}=this;return!z.hasNode(x)||!z.hasTreeStructure(E)?[]:z.getAncestors(x,E).map(tg)}getDescendantsData(x){const E=this.getElementDataById(x),z=[];return HE(E,te=>{te!==E&&z.push(te)},te=>this.getChildrenData(Ji(te)),"TB"),z}getParentData(x,E){const{model:z}=this;if(!E){n0.warn("The hierarchy structure key is not specified");return}if(!z.hasNode(x)||!z.hasTreeStructure(E))return;const te=z.getParent(x,E);return te?tg(te):void 0}getChildrenData(x){const E=this.getElementType(x)==="node"?C0:lh,{model:z}=this;return!z.hasNode(x)||!z.hasTreeStructure(E)?[]:z.getChildren(x,E).map(tg)}getElementsDataByType(x){return x==="node"?this.getNodeData():x==="edge"?this.getEdgeData():x==="combo"?this.getComboData():[]}getElementDataById(x){return this.getElementType(x)==="edge"?this.getEdgeDatum(x):this.getNodeLikeDatum(x)}getNodeLikeDatum(x){const E=this.model.getNode(x);return tg(E)}getNodeLikeData(x){return this.model.getAllNodes().reduce((E,z)=>{const te=tg(z);return x?x.includes(Ji(te))&&E.push(te):E.push(te),E},[])}getElementDataByState(x,E){return this.getElementsDataByType(x).filter(te=>{var re;return(re=te.states)===null||re===void 0?void 0:re.includes(E)})}getElementState(x){var E;return((E=this.getElementDataById(x))===null||E===void 0?void 0:E.states)||[]}hasNode(x){return this.model.hasNode(x)&&!this.isCombo(x)}hasEdge(x){return this.model.hasEdge(x)}hasCombo(x){return this.model.hasNode(x)&&this.isCombo(x)}getRelatedEdgesData(x,E="both"){return this.model.getRelatedEdges(x,E).map(tg)}getNeighborNodesData(x){return this.model.getNeighbors(x).map(tg)}setData(x){const{nodes:E=[],edges:z=[],combos:te=[]}=x,{nodes:re,edges:oe,combos:le}=this.getData(),ce=gx(re,E,Me=>Ji(Me),YS),ge=gx(oe,z,Me=>Ji(Me),YS),Ae=gx(le,te,Me=>Ji(Me),YS);this.batch(()=>{const Me={nodes:ce.enter,edges:ge.enter,combos:Ae.enter};this.addData(Me),this.computeZIndex(Me,"add",!0);const Ue={nodes:ce.update,edges:ge.update,combos:Ae.update};this.updateData(Ue),this.computeZIndex(Ue,"update",!0);const Xe={nodes:ce.exit.map(Ji),edges:ge.exit.map(Ji),combos:Ae.exit.map(Ji)};this.removeData(Xe)})}addData(x){const{nodes:E,edges:z,combos:te}=x;this.batch(()=>{this.addComboData(te),this.addNodeData(E),this.addEdgeData(z)}),this.computeZIndex(x,"add")}addNodeData(x=[]){x.length&&(this.model.addNodes(x.map(E=>(this.pushChange({value:E,type:_h.NodeAdded}),rI(E)))),this.updateNodeLikeHierarchy(x),this.computeZIndex({nodes:x},"add"))}addEdgeData(x=[]){x.length&&(this.model.addEdges(x.map(E=>(this.pushChange({value:E,type:_h.EdgeAdded}),rI(E)))),this.computeZIndex({edges:x},"add"))}addComboData(x=[]){if(!x.length)return;const{model:E}=this;E.hasTreeStructure(lh)||E.attachTreeStructure(lh),E.addNodes(x.map(z=>(this.comboIds.add(Ji(z)),this.pushChange({value:z,type:_h.ComboAdded}),rI(z)))),this.updateNodeLikeHierarchy(x),this.computeZIndex({combos:x},"add")}addChildrenData(x,E){const z=this.getNodeLikeDatum(x),te=E.map(Ji);this.addNodeData(E),this.updateNodeData([{id:x,children:[...z.children||[],...te]}]),this.addEdgeData(te.map(re=>({source:x,target:re})))}computeZIndex(x,E,z=!1){!z&&this.isBatching()||this.batch(()=>{const{nodes:te=[],edges:re=[],combos:oe=[]}=x;oe.forEach(le=>{var ce,ge,Ae;const Me=Ji(le);if(E==="add"&&os((ce=le.style)===null||ce===void 0?void 0:ce.zIndex)||E==="update"&&!("combo"in le))return;const Ue=this.getParentData(Me,lh),Xe=Ue?((Ae=(ge=Ue.style)===null||ge===void 0?void 0:ge.zIndex)!==null&&Ae!==void 0?Ae:0)+1:0;this.preventUpdateNodeLikeHierarchy(()=>{this.updateComboData([{id:Me,style:{zIndex:Xe}}])})}),te.forEach(le=>{var ce,ge,Ae;const Me=Ji(le);if(E==="add"&&os((ce=le.style)===null||ce===void 0?void 0:ce.zIndex)||E==="update"&&!("combo"in le)&&!("children"in le))return;let Ue=0;const Xe=this.getParentData(Me,lh);if(Xe)Ue=(((ge=Xe.style)===null||ge===void 0?void 0:ge.zIndex)||0)+1;else{const $e=this.getParentData(Me,C0);$e&&(Ue=((Ae=$e==null?void 0:$e.style)===null||Ae===void 0?void 0:Ae.zIndex)||0)}this.preventUpdateNodeLikeHierarchy(()=>{this.updateNodeData([{id:Me,style:{zIndex:Ue}}])})}),re.forEach(le=>{var ce,ge,Ae,Me,Ue;if(os((ce=le.style)===null||ce===void 0?void 0:ce.zIndex))return;let{id:Xe,source:$e,target:rt}=le;if(!Xe)Xe=Ji(le);else{const yt=this.getEdgeDatum(Xe);$e=yt.source,rt=yt.target}if(!$e||!rt)return;const ot=((Ae=(ge=this.getNodeLikeDatum($e))===null||ge===void 0?void 0:ge.style)===null||Ae===void 0?void 0:Ae.zIndex)||0,pt=((Ue=(Me=this.getNodeLikeDatum(rt))===null||Me===void 0?void 0:Me.style)===null||Ue===void 0?void 0:Ue.zIndex)||0;this.updateEdgeData([{id:Ji(le),style:{zIndex:Math.max(ot,pt)-1}}])})})}getFrontZIndex(x){var E;const z=this.getElementType(x),te=this.getElementDataById(x),re=this.getData();if(Object.assign(re,{[`${z}s`]:re[`${z}s`].filter(oe=>Ji(oe)!==x)}),z==="combo"&&!r0(te)){const oe=new Set(this.getAncestorsData(x,lh).map(Ji));re.nodes=re.nodes.filter(le=>!oe.has(Ji(le))),re.combos=re.combos.filter(le=>!oe.has(Ji(le))),re.edges=re.edges.filter(({source:le,target:ce})=>!oe.has(le)&&!oe.has(ce))}return Math.max(((E=te.style)===null||E===void 0?void 0:E.zIndex)||0,0,...Object.values(re).flat().map(oe=>{var le;return(((le=oe==null?void 0:oe.style)===null||le===void 0?void 0:le.zIndex)||0)+1}))}updateNodeLikeHierarchy(x){if(!this.enableUpdateNodeLikeHierarchy)return;const{model:E}=this;x.forEach(z=>{const te=Ji(z),re=FP(z);re!==void 0&&(E.hasTreeStructure(lh)||E.attachTreeStructure(lh),re===null&&this.refreshComboData(te),this.setParent(te,FP(z),lh));const oe=z.children||[];if(oe.length){E.hasTreeStructure(C0)||E.attachTreeStructure(C0);const le=oe.filter(ce=>E.hasNode(ce));le.forEach(ce=>this.setParent(ce,te,C0)),le.length!==oe.length&&this.updateNodeData([{id:te,children:le}])}})}preventUpdateNodeLikeHierarchy(x){this.enableUpdateNodeLikeHierarchy=!1,x(),this.enableUpdateNodeLikeHierarchy=!0}updateData(x){const{nodes:E,edges:z,combos:te}=x;this.batch(()=>{this.updateNodeData(E),this.updateComboData(te),this.updateEdgeData(z)}),this.computeZIndex(x,"update")}updateNodeData(x=[]){if(!x.length)return;const{model:E}=this;this.batch(()=>{const z=[];x.forEach(te=>{const re=Ji(te),oe=tg(E.getNode(re));if(YS(oe,te))return;const le=Dx(oe,te);this.pushChange({value:le,original:oe,type:_h.NodeUpdated}),E.mergeNodeData(re,le),z.push(le)}),this.updateNodeLikeHierarchy(z)}),this.computeZIndex({nodes:x},"update")}refreshData(){const{nodes:x,edges:E,combos:z}=this.getData();x.forEach(te=>{this.pushChange({value:te,original:te,type:_h.NodeUpdated})}),E.forEach(te=>{this.pushChange({value:te,original:te,type:_h.EdgeUpdated})}),z.forEach(te=>{this.pushChange({value:te,original:te,type:_h.ComboUpdated})})}syncNodeLikeDatum(x){const{model:E}=this,z=Ji(x);if(!E.hasNode(z))return;const te=tg(E.getNode(z)),re=Dx(te,x);E.mergeNodeData(z,re)}syncEdgeDatum(x){const{model:E}=this,z=Ji(x);if(!E.hasEdge(z))return;const te=tg(E.getEdge(z)),re=Dx(te,x);E.mergeEdgeData(z,re)}updateEdgeData(x=[]){if(!x.length)return;const{model:E}=this;this.batch(()=>{x.forEach(z=>{const te=Ji(z),re=tg(E.getEdge(te));if(YS(re,z))return;z.source&&re.source!==z.source&&E.updateEdgeSource(te,z.source),z.target&&re.target!==z.target&&E.updateEdgeTarget(te,z.target);const oe=Dx(re,z);this.pushChange({value:oe,original:re,type:_h.EdgeUpdated}),E.mergeEdgeData(te,oe)})}),this.computeZIndex({edges:x},"update")}updateComboData(x=[]){if(!x.length)return;const{model:E}=this;E.batch(()=>{const z=[];x.forEach(te=>{const re=Ji(te),oe=tg(E.getNode(re));if(YS(oe,te))return;const le=Dx(oe,te);this.pushChange({value:le,original:oe,type:_h.ComboUpdated}),E.mergeNodeData(re,le),z.push(le)}),this.updateNodeLikeHierarchy(z)}),this.computeZIndex({combos:x},"update")}setParent(x,E,z,te=!0){if(x===E)return;const re=this.getNodeLikeDatum(x),oe=FP(re);if(oe!==E&&z===lh){const le={id:x,combo:E};this.isCombo(x)?this.syncNodeLikeDatum(le):this.syncNodeLikeDatum(le)}this.model.setParent(x,E,z),te&&z===lh&&oZ([oe,E]).forEach(le=>{le!==void 0&&this.refreshComboData(le)})}refreshComboData(x){const E=this.getComboData([x])[0],z=this.getAncestorsData(x,lh);E&&this.pushChange({value:E,original:E,type:_h.ComboUpdated}),z.forEach(te=>{this.pushChange({value:te,original:te,type:_h.ComboUpdated})})}getElementPosition(x){const E=this.getElementDataById(x);return Rf(E)}translateNodeLikeBy(x,E){this.isCombo(x)?this.translateComboBy(x,E):this.translateNodeBy(x,E)}translateNodeLikeTo(x,E){this.isCombo(x)?this.translateComboTo(x,E):this.translateNodeTo(x,E)}translateNodeBy(x,E){const z=this.getElementPosition(x),te=cu(z,[...E,0].slice(0,3));this.translateNodeTo(x,te)}translateNodeTo(x,E){const[z=0,te=0,re=0]=E;this.preventUpdateNodeLikeHierarchy(()=>{this.updateNodeData([{id:x,style:{x:z,y:te,z:re}}])})}translateComboBy(x,E){const[z=0,te=0,re=0]=E;if([z,te,re].some(isNaN)||[z,te,re].every(ce=>ce===0))return;const oe=this.getComboData([x])[0];if(!oe)return;const le=new Set;HE(oe,ce=>{const ge=Ji(ce);if(le.has(ge))return;le.add(ge);const[Ae,Me,Ue]=Rf(ce),Xe=Dx(ce,{style:{x:Ae+z,y:Me+te,z:Ue+re}});this.pushChange({value:Xe,original:ce,type:this.isCombo(ge)?_h.ComboUpdated:_h.NodeUpdated}),this.model.mergeNodeData(ge,Xe)},ce=>this.getChildrenData(Ji(ce)),"BT")}translateComboTo(x,E){var z;if(E.some(isNaN))return;const[te=0,re=0,oe=0]=E,le=(z=this.getComboData([x]))===null||z===void 0?void 0:z[0];if(!le)return;const[ce,ge,Ae]=Rf(le),Me=te-ce,Ue=re-ge,Xe=oe-Ae;HE(le,$e=>{const rt=Ji($e),[ot,pt,yt]=Rf($e),Ct=Dx($e,{style:{x:ot+Me,y:pt+Ue,z:yt+Xe}});this.pushChange({value:Ct,original:$e,type:this.isCombo(rt)?_h.ComboUpdated:_h.NodeUpdated}),this.model.mergeNodeData(rt,Ct)},$e=>this.getChildrenData(Ji($e)),"BT")}removeData(x){const{nodes:E,edges:z,combos:te}=x;this.batch(()=>{this.removeEdgeData(z),this.removeNodeData(E),this.removeComboData(te),this.latestRemovedComboIds=new Set(te)})}removeNodeData(x=[]){x.length&&this.batch(()=>{x.forEach(E=>{this.removeEdgeData(this.getRelatedEdgesData(E).map(Ji)),this.pushChange({value:this.getNodeData([E])[0],type:_h.NodeRemoved}),this.removeNodeLikeHierarchy(E)}),this.model.removeNodes(x)})}removeEdgeData(x=[]){x.length&&(x.forEach(E=>this.pushChange({value:this.getEdgeData([E])[0],type:_h.EdgeRemoved})),this.model.removeEdges(x))}removeComboData(x=[]){x.length&&this.batch(()=>{x.forEach(E=>{this.pushChange({value:this.getComboData([E])[0],type:_h.ComboRemoved}),this.removeNodeLikeHierarchy(E),this.comboIds.delete(E)}),this.model.removeNodes(x)})}removeNodeLikeHierarchy(x){if(this.model.hasTreeStructure(lh)){const E=FP(this.getNodeLikeDatum(x));this.setParent(x,void 0,lh,!1),this.model.getChildren(x,lh).forEach(z=>{const te=tg(z),re=Ji(te);this.setParent(Ji(te),E,lh,!1);const oe=Dx(te,{id:Ji(te),combo:E});this.pushChange({value:oe,original:te,type:this.isCombo(re)?_h.ComboUpdated:_h.NodeUpdated}),this.model.mergeNodeData(Ji(te),oe)}),fl(E)||this.refreshComboData(E)}}getElementType(x){if(this.model.hasNode(x))return this.isCombo(x)?"combo":"node";if(this.model.hasEdge(x))return"edge";throw new Error(Jy(`Unknown element type of id: ${x}`))}destroy(){const{model:x}=this,E=x.getAllNodes(),z=x.getAllEdges();x.removeEdges(z.map(te=>te.id)),x.removeNodes(E.map(te=>te.id)),this.context={}}}var v2=function(b,x,E,z){function te(re){return re instanceof E?re:new E(function(oe){oe(re)})}return new(E||(E=Promise))(function(re,oe){function le(Ae){try{ge(z.next(Ae))}catch(Me){oe(Me)}}function ce(Ae){try{ge(z.throw(Ae))}catch(Me){oe(Me)}}function ge(Ae){Ae.done?re(Ae.value):te(Ae.value).then(le,ce)}ge((z=z.apply(b,x||[])).next())})};class uZ{constructor(x){this.elementMap={},this.shapeTypeMap={},this.paletteStyle={},this.defaultStyle={},this.stateStyle={},this.visibilityCache=new WeakMap,this.context=x}init(){this.initContainer()}initContainer(){if(!this.container||this.container.destroyed){const{canvas:x}=this.context;this.container=x.appendChild(new Uu({className:"elements"}))}}emit(x,E){E.silence||Ff(this.context.graph,x)}forEachElementData(x){GE.forEach(E=>{const z=this.context.model.getElementsDataByType(E);x(E,z)})}getElementType(x,E){var z;const{options:te,graph:re}=this.context,oe=((z=te[x])===null||z===void 0?void 0:z.type)||E.type;return oe?typeof oe=="string"?oe:oe.call(re,E):x==="edge"?"line":"circle"}getTheme(x){return OI(this.context.options)[x]||{}}getThemeStyle(x){return this.getTheme(x).style||{}}getThemeStateStyle(x,E){const{state:z={}}=this.getTheme(x);return Object.assign({},...E.map(te=>z[te]||{}))}computePaletteStyle(){const{options:x}=this.context;this.paletteStyle={},this.forEachElementData((E,z)=>{var te,re;const oe=Object.assign({},H3((te=this.getTheme(E))===null||te===void 0?void 0:te.palette),H3((re=x[E])===null||re===void 0?void 0:re.palette));oe!=null&&oe.field&&Object.assign(this.paletteStyle,Z_(z,oe))})}getPaletteStyle(x,E){const z=this.paletteStyle[E];return z?x==="edge"?{stroke:z}:{fill:z}:{}}computeElementDefaultStyle(x,E){var z;const{options:te}=this.context,re=((z=te[x])===null||z===void 0?void 0:z.style)||{};"transform"in re&&Array.isArray(re.transform)&&(re.transform=[...re.transform]),this.defaultStyle[Ji(E.datum)]=G3(re,E)}computeElementsDefaultStyle(x){const{graph:E}=this.context;this.forEachElementData((z,te)=>{const re=te.length;for(let oe=0;oethis.getElementStateStyle(x,te,z)))}computeElementsStatesStyle(x){const{graph:E}=this.context;this.forEachElementData((z,te)=>{const re=te.length;for(let oe=0;oethis.elementMap[x])}getEdges(){return this.context.model.getEdgeData().map(x=>this.elementMap[Ji(x)])}getCombos(){return this.context.model.getComboData().map(({id:x})=>this.elementMap[x])}getElementComputedStyle(x,E){const z=Ji(E),te=this.getThemeStyle(x),re=this.getPaletteStyle(x,z),oe=E.style||{},le=this.getDefaultStyle(z),ce=this.getThemeStateStyle(x,this.getElementState(z)),ge=this.getStateStyle(z),Ae=Object.assign({},te,re,oe,le,ce,ge);if(x==="combo"){const Me=this.context.model.getChildrenData(z),Xe=!!Ae.collapsed?[]:Me.map(Ji).filter($e=>this.getElement($e));Object.assign(Ae,{childrenNode:Xe,childrenData:Me})}return Ae}getDrawData(x){this.init();const E=this.computeChangesAndDrawData(x);if(!E)return null;const{type:z="draw",stage:te=z}=x;return this.markDestroyElement(E.drawData),this.computeStyle(te),{type:z,stage:te,data:E}}draw(x={animation:!0}){const E=this.getDrawData(x);if(!E)return;const{data:{drawData:{add:z,update:te,remove:re}}}=E;return this.destroyElements(re,x),this.createElements(z,x),this.updateElements(te,x),this.setAnimationTask(x,E)}preLayoutDraw(){return v2(this,arguments,void 0,function*(x={animation:!0}){var E,z;const te=this.getDrawData(x);if(!te)return;const{data:{drawData:re}}=te;yield(z=(E=this.context.layout)===null||E===void 0?void 0:E.preLayout)===null||z===void 0?void 0:z.call(E,re);const{add:oe,update:le,remove:ce}=re;return this.destroyElements(ce,x),this.createElements(oe,x),this.updateElements(le,x),this.setAnimationTask(x,te)})}setAnimationTask(x,E){const{animation:z,silence:te}=x,{data:{dataChanges:re,drawData:oe},stage:le,type:ce}=E;return this.context.animation.animate(z,te?{}:{before:()=>this.emit(new ff(es.BEFORE_DRAW,{dataChanges:re,animation:z,stage:le,render:ce==="render"}),x),beforeAnimate:ge=>this.emit(new Av(es.BEFORE_ANIMATE,t0.DRAW,ge,oe),x),afterAnimate:ge=>this.emit(new Av(es.AFTER_ANIMATE,t0.DRAW,ge,oe),x),after:()=>this.emit(new ff(es.AFTER_DRAW,{dataChanges:re,animation:z,stage:le,render:ce==="render",firstRender:this.context.graph.rendered===!1}),x)})}computeChangesAndDrawData(x){const{model:E}=this.context,z=E.getChanges(),te=vD(z);if(te.length===0)return null;const{NodeAdded:re=[],NodeUpdated:oe=[],NodeRemoved:le=[],EdgeAdded:ce=[],EdgeUpdated:ge=[],EdgeRemoved:Ae=[],ComboAdded:Me=[],ComboUpdated:Ue=[],ComboRemoved:Xe=[]}=wP(te,pt=>pt.type),$e=pt=>new Map(pt.map(yt=>{const Ct=yt.value;return[Ji(Ct),Ct]})),rt={add:{nodes:$e(re),edges:$e(ce),combos:$e(Me)},update:{nodes:$e(oe),edges:$e(ge),combos:$e(Ue)},remove:{nodes:$e(le),edges:$e(Ae),combos:$e(Xe)}},ot=this.transformData(rt,x);return E.clearChanges(),{dataChanges:z,drawData:ot}}transformData(x,E){const z=this.context.transform.getTransformInstance();return Object.values(z).reduce((te,re)=>re.beforeDraw(te,E),x)}createElement(x,E,z){var te;const re=Ji(E);if(this.getElement(re))return;const le=this.getElementType(x,E),ce=this.getElementComputedStyle(x,E),ge=Qy(x,le);if(!ge)return n0.warn(`The element ${le} of ${x} is not registered.`);this.emit(new KS(es.BEFORE_ELEMENT_CREATE,x,E),z);const Ae=this.container.appendChild(new ge({id:re,context:this.context,style:ce}));this.shapeTypeMap[re]=le,this.elementMap[re]=Ae;const{stage:Me="enter"}=z;(te=this.context.animation)===null||te===void 0||te.add({element:Ae,elementType:x,stage:Me,originalStyle:Object.assign({},Ae.attributes),updatedStyle:ce},{after:()=>{var Ue;this.emit(new KS(es.AFTER_ELEMENT_CREATE,x,E),z),(Ue=Ae.onCreate)===null||Ue===void 0||Ue.call(Ae)}})}createElements(x,E){const{nodes:z,edges:te,combos:re}=x;[["node",z],["combo",re],["edge",te]].forEach(([le,ce])=>{ce.forEach(ge=>this.createElement(le,ge,E))})}getUpdateStageStyle(x,E,z){const{stage:te="update"}=z;if(te==="translate")if(x==="node"||x==="combo"){const{style:{x:re=0,y:oe=0,z:le=0}={}}=E;return{x:re,y:oe,z:le}}else return{};return this.getElementComputedStyle(x,E)}updateElement(x,E,z){var te;const re=Ji(E),{stage:oe="update"}=z,le=this.getElement(re);if(!le)return()=>null;this.emit(new KS(es.BEFORE_ELEMENT_UPDATE,x,E),z);const ce=this.getElementType(x,E),ge=this.getUpdateStageStyle(x,E,z);this.shapeTypeMap[re]!==ce&&(le.destroy(),delete this.shapeTypeMap[re],delete this.elementMap[re],this.createElement(x,E,{animation:!1,silence:!0}));const Ae=oe!=="visibility"?oe:ge.visibility==="hidden"?"hide":"show";Ae==="hide"&&delete ge.visibility,(te=this.context.animation)===null||te===void 0||te.add({element:le,elementType:x,stage:Ae,originalStyle:Object.assign({},le.attributes),updatedStyle:ge},{before:()=>{const Me=this.elementMap[re];oe!=="collapse"&&F5(Me,ge),oe==="visibility"&&(tZ(Me,"opacity")||eZ(Me,"opacity"),this.visibilityCache.set(Me,Ae==="show"?"visible":"hidden"),Ae==="show"&&WE(Me,"visible"))},after:()=>{var Me;const Ue=this.elementMap[re];oe==="collapse"&&F5(Ue,ge),Ae==="hide"&&WE(Ue,this.visibilityCache.get(Ue)),this.emit(new KS(es.AFTER_ELEMENT_UPDATE,x,E),z),(Me=Ue.onUpdate)===null||Me===void 0||Me.call(Ue)}})}updateElements(x,E){const{nodes:z,edges:te,combos:re}=x;[["node",z],["combo",re],["edge",te]].forEach(([le,ce])=>{ce.forEach(ge=>this.updateElement(le,ge,E))})}markDestroyElement(x){Object.values(x.remove).forEach(E=>{E.forEach(z=>{const te=Ji(z),re=this.getElement(te);re&&a9(re)})})}destroyElement(x,E,z){var te;const{stage:re="exit"}=z,oe=Ji(E),le=this.elementMap[oe];if(!le)return()=>null;this.emit(new KS(es.BEFORE_ELEMENT_DESTROY,x,E),z),(te=this.context.animation)===null||te===void 0||te.add({element:le,elementType:x,stage:re,originalStyle:Object.assign({},le.attributes),updatedStyle:{}},{after:()=>{var ce;this.clearElement(oe),le.destroy(),(ce=le.onDestroy)===null||ce===void 0||ce.call(le),this.emit(new KS(es.AFTER_ELEMENT_DESTROY,x,E),z)}})}destroyElements(x,E){const{nodes:z,edges:te,combos:re}=x;[["combo",re],["edge",te],["node",z]].forEach(([le,ce])=>{ce.forEach(ge=>this.destroyElement(le,ge,E))})}clearElement(x){delete this.paletteStyle[x],delete this.defaultStyle[x],delete this.stateStyle[x],delete this.elementMap[x],delete this.shapeTypeMap[x]}alignLayoutResultToElement(x,E){var z,te;const re=(z=x.nodes)===null||z===void 0?void 0:z.find(oe=>Ji(oe)===E);if(re){const oe=Rf(this.context.model.getNodeLikeDatum(E)),le=Rf(re),ce=Yc(oe,le);(te=x.nodes)===null||te===void 0||te.forEach(ge=>{var Ae,Me,Ue;!((Ae=ge.style)===null||Ae===void 0)&&Ae.x&&(ge.style.x+=ce[0]),!((Me=ge.style)===null||Me===void 0)&&Me.y&&(ge.style.y+=ce[1]),!((Ue=ge.style)===null||Ue===void 0)&&Ue.z&&(ge.style.z+=ce[2]||0)})}}collapseNode(x,E){return v2(this,void 0,void 0,function*(){var z;const{animation:te,align:re}=E,{model:oe,layout:le}=this.context,ce=this.computeChangesAndDrawData({stage:"collapse",animation:te});if(!ce)return;this.markDestroyElement(ce.drawData);const ge=yield le.simulate();re&&this.alignLayoutResultToElement(ge,x),oe.updateData(ge);const Ae=this.computeChangesAndDrawData({stage:"collapse",animation:te});if(!Ae)return;const{drawData:Me}=Ae,{add:Ue,remove:Xe,update:$e}=Me;this.markDestroyElement(Me);const rt={animation:te,stage:"collapse",data:Me};this.destroyElements(Xe,rt),this.createElements(Ue,rt),this.updateElements($e,rt),yield(z=this.context.animation.animate(te,{beforeAnimate:ot=>this.emit(new Av(es.BEFORE_ANIMATE,t0.COLLAPSE,ot,Me),rt),afterAnimate:ot=>this.emit(new Av(es.AFTER_ANIMATE,t0.COLLAPSE,ot,Me),rt)},{collapse:{target:x,descendants:Array.from(Xe.nodes).map(([,ot])=>Ji(ot)),position:Rf($e.nodes.get(x))}}))===null||z===void 0?void 0:z.finished})}expandNode(x,E){return v2(this,void 0,void 0,function*(){var z;const{model:te,layout:re}=this.context,{animation:oe,align:le}=E,ce=Rf(te.getNodeData([x])[0]),ge=this.computeChangesAndDrawData({stage:"expand",animation:oe});if(!ge)return;const{drawData:{add:Ae}}=ge;this.createElements(Ae,{animation:!1,stage:"expand",target:x}),this.context.animation.clear();const Me=yield re.simulate();le&&this.alignLayoutResultToElement(Me,x),te.updateData(Me),this.computeStyle("expand");const Ue=this.computeChangesAndDrawData({stage:"collapse",animation:oe});if(!Ue)return;const{drawData:Xe}=Ue,{update:$e}=Xe,rt={animation:oe,stage:"expand",data:Xe};Ae.edges.forEach(ot=>$e.edges.set(Ji(ot),ot)),Ae.nodes.forEach(ot=>$e.nodes.set(Ji(ot),ot)),this.updateElements($e,rt),yield(z=this.context.animation.animate(oe,{beforeAnimate:ot=>this.emit(new Av(es.BEFORE_ANIMATE,t0.EXPAND,ot,Xe),rt),afterAnimate:ot=>this.emit(new Av(es.AFTER_ANIMATE,t0.EXPAND,ot,Xe),rt)},{expand:{target:x,descendants:Array.from(Ae.nodes).map(([,ot])=>Ji(ot)),position:ce}}))===null||z===void 0?void 0:z.finished})}collapseCombo(x,E){return v2(this,void 0,void 0,function*(){var z;const{model:te,element:re}=this.context;if(te.getAncestorsData(x,lh).some(rt=>r0(rt)))return;const oe=re.getElement(x),le=oe.getComboPosition(Object.assign(Object.assign({},oe.attributes),{collapsed:!0})),ce=this.computeChangesAndDrawData({stage:"collapse",animation:E});if(!ce)return;const{dataChanges:ge,drawData:Ae}=ce;this.markDestroyElement(Ae);const{update:Me,remove:Ue}=Ae,Xe={animation:E,stage:"collapse",data:Ae};this.destroyElements(Ue,Xe),this.updateElements(Me,Xe);const $e=rt=>Array.from(rt).map(([,ot])=>Ji(ot));yield(z=this.context.animation.animate(E,{before:()=>this.emit(new ff(es.BEFORE_DRAW,{dataChanges:ge,animation:E}),Xe),beforeAnimate:rt=>this.emit(new Av(es.BEFORE_ANIMATE,t0.COLLAPSE,rt,Ae),Xe),afterAnimate:rt=>this.emit(new Av(es.AFTER_ANIMATE,t0.COLLAPSE,rt,Ae),Xe),after:()=>this.emit(new ff(es.AFTER_DRAW,{dataChanges:ge,animation:E}),Xe)},{collapse:{target:x,descendants:[...$e(Ue.nodes),...$e(Ue.combos)],position:le}}))===null||z===void 0?void 0:z.finished})}expandCombo(x,E){return v2(this,void 0,void 0,function*(){var z;const{model:te}=this.context,re=Rf(te.getComboData([x])[0]);this.computeStyle("expand");const oe=this.computeChangesAndDrawData({stage:"expand",animation:E});if(!oe)return;const{dataChanges:le,drawData:ce}=oe,{add:ge,update:Ae}=ce,Me={animation:E,stage:"expand",data:ce,target:x};this.createElements(ge,Me),this.updateElements(Ae,Me);const Ue=Xe=>Array.from(Xe).map(([,$e])=>Ji($e));yield(z=this.context.animation.animate(E,{before:()=>this.emit(new ff(es.BEFORE_DRAW,{dataChanges:le,animation:E}),Me),beforeAnimate:Xe=>this.emit(new Av(es.BEFORE_ANIMATE,t0.EXPAND,Xe,ce),Me),afterAnimate:Xe=>this.emit(new Av(es.AFTER_ANIMATE,t0.EXPAND,Xe,ce),Me),after:()=>this.emit(new ff(es.AFTER_DRAW,{dataChanges:le,animation:E}),Me)},{expand:{target:x,descendants:[...Ue(ge.nodes),...Ue(ge.combos)],position:re}}))===null||z===void 0?void 0:z.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 X6=Symbol("Comlink.proxy"),cZ=Symbol("Comlink.endpoint"),Q6=Symbol("Comlink.releaseProxy"),iI=Symbol("Comlink.finalizer"),IL=Symbol("Comlink.thrown"),J6=b=>typeof b=="object"&&b!==null||typeof b=="function",hZ={canHandle:b=>J6(b)&&b[X6],serialize(b){const{port1:x,port2:E}=new MessageChannel;return $6(b,x),[E,[E]]},deserialize(b){return b.start(),tR(b)}},dZ={canHandle:b=>J6(b)&&IL in b,serialize({value:b}){let x;return b instanceof Error?x={isError:!0,value:{message:b.message,name:b.name,stack:b.stack}}:x={isError:!1,value:b},[x,[]]},deserialize(b){throw b.isError?Object.assign(new Error(b.value.message),b.value):b.value}},q6=new Map([["proxy",hZ],["throw",dZ]]);function fZ(b,x){for(const E of b)if(x===E||E==="*"||E instanceof RegExp&&E.test(x))return!0;return!1}function $6(b,x=globalThis,E=["*"]){x.addEventListener("message",function z(te){if(!te||!te.data)return;if(!fZ(E,te.origin)){console.warn(`Invalid origin '${te.origin}' for comlink proxy`);return}const{id:re,type:oe,path:le}=Object.assign({path:[]},te.data),ce=(te.data.argumentList||[]).map(iA);let ge;try{const Ae=le.slice(0,-1).reduce((Ue,Xe)=>Ue[Xe],b),Me=le.reduce((Ue,Xe)=>Ue[Xe],b);switch(oe){case"GET":ge=Me;break;case"SET":Ae[le.slice(-1)[0]]=iA(te.data.value),ge=!0;break;case"APPLY":ge=Me.apply(Ae,ce);break;case"CONSTRUCT":{const Ue=new Me(...ce);ge=xZ(Ue)}break;case"ENDPOINT":{const{port1:Ue,port2:Xe}=new MessageChannel;$6(b,Xe),ge=yZ(Ue,[Ue])}break;case"RELEASE":ge=void 0;break;default:return}}catch(Ae){ge={value:Ae,[IL]:0}}Promise.resolve(ge).catch(Ae=>({value:Ae,[IL]:0})).then(Ae=>{const[Me,Ue]=RL(Ae);x.postMessage(Object.assign(Object.assign({},Me),{id:re}),Ue),oe==="RELEASE"&&(x.removeEventListener("message",z),eR(x),iI in b&&typeof b[iI]=="function"&&b[iI]())}).catch(Ae=>{const[Me,Ue]=RL({value:new TypeError("Unserializable return value"),[IL]:0});x.postMessage(Object.assign(Object.assign({},Me),{id:re}),Ue)})}),x.start&&x.start()}function gZ(b){return b.constructor.name==="MessagePort"}function eR(b){gZ(b)&&b.close()}function tR(b,x){const E=new Map;return b.addEventListener("message",function(te){const{data:re}=te;if(!re||!re.id)return;const oe=E.get(re.id);if(oe)try{oe(re)}finally{E.delete(re.id)}}),oI(b,E,[],x)}function OL(b){if(b)throw new Error("Proxy has been released and is not useable")}function nR(b){return XS(b,new Map,{type:"RELEASE"}).then(()=>{eR(b)})}const NL=new WeakMap,BL="FinalizationRegistry"in globalThis&&new FinalizationRegistry(b=>{const x=(NL.get(b)||0)-1;NL.set(b,x),x===0&&nR(b)});function pZ(b,x){const E=(NL.get(x)||0)+1;NL.set(x,E),BL&&BL.register(b,x,b)}function vZ(b){BL&&BL.unregister(b)}function oI(b,x,E=[],z=function(){}){let te=!1;const re=new Proxy(z,{get(oe,le){if(OL(te),le===Q6)return()=>{vZ(re),nR(b),x.clear(),te=!0};if(le==="then"){if(E.length===0)return{then:()=>re};const ce=XS(b,x,{type:"GET",path:E.map(ge=>ge.toString())}).then(iA);return ce.then.bind(ce)}return oI(b,x,[...E,le])},set(oe,le,ce){OL(te);const[ge,Ae]=RL(ce);return XS(b,x,{type:"SET",path:[...E,le].map(Me=>Me.toString()),value:ge},Ae).then(iA)},apply(oe,le,ce){OL(te);const ge=E[E.length-1];if(ge===cZ)return XS(b,x,{type:"ENDPOINT"}).then(iA);if(ge==="bind")return oI(b,x,E.slice(0,-1));const[Ae,Me]=rR(ce);return XS(b,x,{type:"APPLY",path:E.map(Ue=>Ue.toString()),argumentList:Ae},Me).then(iA)},construct(oe,le){OL(te);const[ce,ge]=rR(le);return XS(b,x,{type:"CONSTRUCT",path:E.map(Ae=>Ae.toString()),argumentList:ce},ge).then(iA)}});return pZ(re,b),re}function mZ(b){return Array.prototype.concat.apply([],b)}function rR(b){const x=b.map(RL);return[x.map(E=>E[0]),mZ(x.map(E=>E[1]))]}const iR=new WeakMap;function yZ(b,x){return iR.set(b,x),b}function xZ(b){return Object.assign(b,{[X6]:!0})}function v$(b,x=globalThis,E="*"){return{postMessage:(z,te)=>b.postMessage(z,E,te),addEventListener:x.addEventListener.bind(x),removeEventListener:x.removeEventListener.bind(x)}}function RL(b){for(const[x,E]of q6)if(E.canHandle(b)){const[z,te]=E.serialize(b);return[{type:"HANDLER",name:x,value:z},te]}return[{type:"RAW",value:b},iR.get(b)||[]]}function iA(b){switch(b.type){case"HANDLER":return q6.get(b.name).deserialize(b.value);case"RAW":return b.value}}function XS(b,x,E,z){return new Promise(te=>{const re=EZ();x.set(re,te),b.start&&b.start(),b.postMessage(Object.assign({id:re},E),z)})}function EZ(){return new Array(4).fill(0).map(()=>Math.floor(Math.random()*Number.MAX_SAFE_INTEGER).toString(16)).join("-")}class AZ extends AM{constructor(x,E,z){super(),this.graph=x,this.layout=E,this.options=z,this.spawnWorker()}spawnWorker(){this.proxy=tR(new Worker(new URL(Be.p+Be.u(1175),Be.b),{type:void 0})),this.running&&(this.running=!1,this.execute())}execute(){var x;return(0,wn.mG)(this,void 0,void 0,function*(){if(this.running)return this;this.running=!0;const E=this.layout.options,{onTick:z}=E,te=(0,wn._T)(E,["onTick"]),re={};Object.keys(te).forEach(ge=>{_s(te[ge])||(re[ge]=te[ge])});const oe={layout:{id:this.layout.id,options:re,iterations:(x=this.options)===null||x===void 0?void 0:x.iterations},nodes:this.graph.getAllNodes(),edges:this.graph.getAllEdges()},le=new Float32Array([0]),[ce]=yield this.proxy.calculateLayout(oe,[le]);return ce})}stop(){return this.running=!1,this.proxy.stopLayout(),this}kill(){this.proxy[Q6]()}isRunning(){return this.running}}var QS=function(b,x,E,z){function te(re){return re instanceof E?re:new E(function(oe){oe(re)})}return new(E||(E=Promise))(function(re,oe){function le(Ae){try{ge(z.next(Ae))}catch(Me){oe(Me)}}function ce(Ae){try{ge(z.throw(Ae))}catch(Me){oe(Me)}}function ge(Ae){Ae.done?re(Ae.value):te(Ae.value).then(le,ce)}ge((z=z.apply(b,x||[])).next())})},SZ=function(b,x){var E={};for(var z in b)Object.prototype.hasOwnProperty.call(b,z)&&x.indexOf(z)<0&&(E[z]=b[z]);if(b!=null&&typeof Object.getOwnPropertySymbols=="function")for(var te=0,z=Object.getOwnPropertySymbols(b);te{const Me=Ji(Ae),Ue=ce.nodes.get(Me);le.syncNodeLikeDatum(Ae),Ue&&Object.assign(Ue.style,Ae.style)}),(te=ge==null?void 0:ge.edges)===null||te===void 0||te.forEach(Ae=>{const Me=Ji(Ae),Ue=ce.edges.get(Me);le.syncEdgeDatum(Ae),Ue&&Object.assign(Ue.style,Ae.style)}),(re=ge==null?void 0:ge.combos)===null||re===void 0||re.forEach(Ae=>{const Me=Ji(Ae),Ue=ce.combos.get(Me);le.syncNodeLikeDatum(Ae),Ue&&Object.assign(Ue.style,Ae.style)}),Ff(oe,new ff(es.AFTER_LAYOUT,{type:"pre"})),this.transformDataAfterLayout("pre",x)})}postLayout(){return QS(this,arguments,void 0,function*(x=this.options){if(!x)return;const E=Array.isArray(x)?x:[x],{graph:z}=this.context;Ff(z,new ff(es.BEFORE_LAYOUT,{type:"post"}));for(const te of E){const re=E.indexOf(te),oe=this.getLayoutData(te),le=Object.assign(Object.assign({},this.presetOptions),te);Ff(z,new ff(es.BEFORE_STAGE_LAYOUT,{options:le,index:re}));const ce=yield this.stepLayout(oe,le,re);Ff(z,new ff(es.AFTER_STAGE_LAYOUT,{options:le,index:re})),te.animation||this.updateElementPosition(ce,!1)}Ff(z,new ff(es.AFTER_LAYOUT,{type:"post"})),this.transformDataAfterLayout("post")})}transformDataAfterLayout(x,E){const z=this.context.transform.getTransformInstance();Object.values(z).forEach(te=>te.afterLayout(x,E))}simulate(){return QS(this,void 0,void 0,function*(){if(!this.options)return{};const x=Array.isArray(this.options)?this.options:[this.options];let E={};for(const z of x){const te=x.indexOf(z),re=this.getLayoutData(z);E=yield this.stepLayout(re,Object.assign(Object.assign(Object.assign({},this.presetOptions),z),{animation:!1}),te)}return E})}stepLayout(x,E,z){return QS(this,void 0,void 0,function*(){return v9(E)?yield this.treeLayout(x,E,z):yield this.graphLayout(x,E,z)})}graphLayout(x,E,z){return QS(this,void 0,void 0,function*(){const{animation:te,enableWorker:re,iterations:oe=300}=E,le=this.initGraphLayout(E);if(!le)return{};if(this.instances[z]=le,this.instance=le,re){const ge=le;return this.supervisor=new AZ(ge.graphData2LayoutModel(x),ge.instance,{iterations:oe}),CM(yield this.supervisor.execute())}if(nD(le))return te?yield le.execute(x,{onTick:ge=>{this.updateElementPosition(ge,!1)}}):(le.execute(x),le.stop(),le.tick(oe));const ce=yield le.execute(x);if(te){const ge=this.updateElementPosition(ce,te);yield ge==null?void 0:ge.finished}return ce})}treeLayout(x,E,z){return QS(this,void 0,void 0,function*(){const{type:te,animation:re}=E,oe=Qy("layout",te);if(!oe)return{};const{nodes:le=[],edges:ce=[]}=x,ge=new Zd({nodes:le.map($e=>({id:Ji($e),data:$e.data||{}})),edges:ce.map($e=>({id:Ji($e),source:$e.source,target:$e.target,data:$e.data||{}}))});sZ(ge);const Ae={nodes:[],edges:[]},Me={nodes:[],edges:[]};ge.getRoots(C0).forEach($e=>{HE($e,Ct=>{Ct.children=ge.getSuccessors(Ct.id)},Ct=>ge.getSuccessors(Ct.id),"TB");const rt=oe($e,E),{x:ot,y:pt,z:yt=0}=rt;HE(rt,Ct=>{const{id:zt,x:Wt,y:Ht,z:Qt=0}=Ct;Ae.nodes.push({id:zt,style:{x:ot,y:pt,z:yt}}),Me.nodes.push({id:zt,style:{x:Wt,y:Ht,z:Qt}})},Ct=>Ct.children,"TB")});const Xe=this.inferTreeLayoutOffset(Me);if(oR(Me,Xe),re){oR(Ae,Xe),this.updateElementPosition(Ae,!1);const $e=this.updateElementPosition(Me,re);yield $e==null?void 0:$e.finished}return Me})}inferTreeLayoutOffset(x){var E;let[z,te]=[1/0,-1/0],[re,oe]=[1/0,-1/0];(E=x.nodes)===null||E===void 0||E.forEach(rt=>{const{x:ot=0,y:pt=0}=rt.style||{};z=Math.min(z,ot),te=Math.max(te,ot),re=Math.min(re,pt),oe=Math.max(oe,pt)});const{canvas:le}=this.context,ce=le.getSize(),[ge,Ae]=le.getCanvasByViewport([0,0]),[Me,Ue]=le.getCanvasByViewport(ce);if(z>=ge&&te<=Me&&re>=Ae&&oe<=Ue)return[0,0];const Xe=(ge+Me)/2,$e=(Ae+Ue)/2;return[Xe-(z+te)/2,$e-(re+oe)/2]}stopLayout(){this.instance&&nD(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(x){const{nodeFilter:E=()=>!0,preLayout:z=!1,isLayoutInvisibleNodes:te=!1}=x,{nodes:re,edges:oe,combos:le}=this.context.model.getData(),{element:ce,model:ge}=this.context,Ae=rt=>ce.getElement(rt),Me=z?rt=>{var ot;return!te&&(((ot=rt.style)===null||ot===void 0?void 0:ot.visibility)==="hidden"||ge.getAncestorsData(rt.id,C0).some(r0)||ge.getAncestorsData(rt.id,lh).some(r0))?!1:E(rt)}:rt=>{const ot=Ji(rt),pt=Ae(ot);return!pt||gM(pt)?!1:E(rt)},Ue=re.filter(Me),Xe=new Map(Ue.map(rt=>[Ji(rt),rt]));le.forEach(rt=>Xe.set(Ji(rt),rt));const $e=oe.filter(({source:rt,target:ot})=>Xe.has(rt)&&Xe.has(ot));return{nodes:Ue,edges:$e,combos:le}}initGraphLayout(x){var E;const{element:z,viewport:te}=this.context,{type:re,enableWorker:oe,animation:le,iterations:ce}=x,ge=SZ(x,["type","enableWorker","animation","iterations"]),[Ae,Me]=te.getCanvasSize(),Ue=[Ae/2,Me/2],Xe=(E=x==null?void 0:x.nodeSize)!==null&&E!==void 0?E:yt=>{const Ct=z==null?void 0:z.getElement(yt.id);return Ct?Ct.attributes.size:z==null?void 0:z.getElementComputedStyle("node",yt).size},$e=Qy("layout",re);if(!$e)return n0.warn(`The layout of ${re} is not registered.`);const rt=Object.getPrototypeOf($e.prototype)===wM.prototype?$e:y9($e,this.context),ot=new rt(this.context),pt={nodeSize:Xe,width:Ae,height:Me,center:Ue};switch(ot.id){case"d3-force":case"d3-force-3d":Object.assign(pt,{center:{x:Ae/2,y:Me/2,z:0}});break;default:break}return Cp(ot.options,pt,ge),ot}updateElementPosition(x,E){const{model:z,element:te}=this.context;return te?(z.updateData(x),te.draw({animation:E,silence:!0})):null}destroy(){var x;this.stopLayout(),this.context={},(x=this.supervisor)===null||x===void 0||x.kill(),this.supervisor=void 0,this.instance=void 0,this.instances=[],this.animationResult=void 0}}const oR=(b,x)=>{var E;const[z,te]=x;(E=b.nodes)===null||E===void 0||E.forEach(re=>{if(re.style){const{x:oe=0,y:le=0}=re.style;re.style.x=oe+z,re.style.y=le+te}else re.style={x:z,y:te}})};function CZ(b){return[bZ].reduce((E,z)=>z(E),b)}function bZ(b){return!b.layout||Array.isArray(b.layout)||"preLayout"in b.layout||["antv-dagre","combo-combined","compact-box","circular","concentric","dagre","fishbone","grid","indented","mds","radial","random","snake","dendrogram","mindmap"].includes(b.layout.type)&&(b.layout.preLayout=!0),b}class PZ extends l5{constructor(x){super(x),this.category="plugin",this.setPlugins(this.context.options.plugins||[])}setPlugins(x){this.setExtensions(x)}getPluginInstance(x){const E=this.extensionMap[x];if(E)return E;n0.warn(`Cannot find the plugin ${x}, will try to find it by type.`);const z=this.extensions.find(te=>te.type===x);if(z)return this.extensionMap[z.key]}}const kL=["update-related-edges","collapse-expand-node","collapse-expand-combo","get-edge-actual-ends","arrange-draw-order"];class MZ extends l5{constructor(x){super(x),this.category="transform",this.setTransforms(this.context.options.transforms||[])}getTransforms(){}setTransforms(x){this.setExtensions([...kL.slice(0,kL.length-1),...x,kL[kL.length-1]])}getTransformInstance(x){return x?this.extensionMap[x]:this.extensionMap}}var m2=function(b,x,E,z){function te(re){return re instanceof E?re:new E(function(oe){oe(re)})}return new(E||(E=Promise))(function(re,oe){function le(Ae){try{ge(z.next(Ae))}catch(Me){oe(Me)}}function ce(Ae){try{ge(z.throw(Ae))}catch(Me){oe(Me)}}function ge(Ae){Ae.done?re(Ae.value):te(Ae.value).then(le,ce)}ge((z=z.apply(b,x||[])).next())})};class LZ{get padding(){return am(this.context.options.padding)}get paddingOffset(){const[x,E,z,te]=this.padding,[re,oe,le]=[(te-E)/2,(x-z)/2,0];return[re,oe,le]}constructor(x){this.landmarkCounter=0,this.context=x;const[E,z]=this.paddingOffset,{zoom:te,rotation:re,x:oe=E,y:le=z}=x.options;this.transform({mode:"absolute",scale:te,translate:[oe,le],rotate:re},!1)}get camera(){const{canvas:x}=this.context;return new Proxy(x.getCamera(),{get:(E,z)=>{const re=Object.entries(x.getLayers()).filter(([le])=>!["main"].includes(le)).map(([,le])=>le.getCamera()),oe=E[z];if(typeof oe=="function")return(...le)=>{const ce=oe.apply(E,le);return re.forEach(ge=>{ge[z].apply(ge,le)}),ce}}})}createLandmark(x){return this.camera.createLandmark(`landmark-${this.landmarkCounter++}`,x)}getAnimation(x){const E=NI(this.context.options,x);return E?ZE(Object.assign({},E),["easing","duration"]):!1}getCanvasSize(){const{canvas:x}=this.context,{width:E=0,height:z=0}=x.getConfig();return[E,z]}getCanvasCenter(){const{canvas:x}=this.context,{width:E=0,height:z=0}=x.getConfig();return[E/2,z/2,0]}getViewportCenter(){const[x,E]=this.camera.getPosition();return[x,E,0]}getGraphCenter(){return this.context.graph.getViewportByCanvas(this.getCanvasCenter())}getZoom(){return this.camera.getZoom()}getRotation(){return this.camera.getRoll()}getTranslateOptions(x){const{camera:E}=this,{mode:z,translate:te=[]}=x,re=this.getZoom(),oe=E.getPosition(),le=E.getFocalPoint(),[ce,ge]=this.getCanvasCenter(),[Ae=0,Me=0,Ue=0]=te,Xe=um([-Ae,-Me,-Ue],re);return z==="relative"?{position:cu(oe,Xe),focalPoint:cu(le,Xe)}:{position:cu([ce,ge,oe[2]],Xe),focalPoint:cu([ce,ge,le[2]],Xe)}}getRotateOptions(x){const{mode:E,rotate:z=0}=x;return{roll:E==="relative"?this.camera.getRoll()+z:z}}getZoomOptions(x){const{zoomRange:E}=this.context.options,z=this.camera.getZoom(),{mode:te,scale:re=1}=x;return Ah(te==="relative"?z*re:re,...E)}transform(x,E){return m2(this,void 0,void 0,function*(){const{graph:z}=this.context,{translate:te,rotate:re,scale:oe,origin:le}=x;this.cancelAnimation();const ce=this.getAnimation(E);if(Ff(z,new TL(es.BEFORE_TRANSFORM,x)),!re&&oe&&!te&&le&&!ce){this.camera.setZoomByViewportPoint(this.getZoomOptions(x),le),Ff(z,new TL(es.AFTER_TRANSFORM,x));return}const ge={};if(te&&Object.assign(ge,this.getTranslateOptions(x)),os(re)&&Object.assign(ge,this.getRotateOptions(x)),os(oe)&&Object.assign(ge,{zoom:this.getZoomOptions(x)}),ce)return Ff(z,new Av(es.BEFORE_ANIMATE,t0.TRANSFORM,null,x)),new Promise(Ae=>{this.transformResolver=Ae,this.camera.gotoLandmark(this.createLandmark(ge),Object.assign(Object.assign({},ce),{onfinish:()=>{Ff(z,new Av(es.AFTER_ANIMATE,t0.TRANSFORM,null,x)),Ff(z,new TL(es.AFTER_TRANSFORM,x)),this.transformResolver=void 0,Ae()}}))});this.camera.gotoLandmark(this.createLandmark(ge),{duration:0}),Ff(z,new TL(es.AFTER_TRANSFORM,x))})}fitView(x,E){return m2(this,void 0,void 0,function*(){const[z,te,re,oe]=this.padding,{when:le="always",direction:ce="both"}=x||{},[ge,Ae]=this.context.canvas.getSize(),Me=ge-oe-te,Ue=Ae-z-re,Xe=this.context.canvas.getBounds(),$e=this.getBBoxInViewport(Xe),[rt,ot]=hx($e),pt=ce==="x"&&rt>=Me||ce==="y"&&ot>=Ue||ce==="both"&&rt>=Me&&ot>=Ue;if(le==="overflow"&&!pt)return yield this.fitCenter({animation:E});const yt=Me/rt,Ct=Ue/ot,zt=ce==="x"?yt:ce==="y"?Ct:Math.min(yt,Ct),Wt=this.getAnimation(E);yield this.transform({mode:"relative",scale:zt,translate:cu(Yc(this.getCanvasCenter(),this.getBBoxInViewport(Xe).center),um(this.paddingOffset,zt))},Wt)})}fitCenter(x){return m2(this,void 0,void 0,function*(){const E=this.context.canvas.getBounds();yield this.focus(E,x)})}focusElements(x){return m2(this,arguments,void 0,function*(E,z={}){const{element:te}=this.context;if(!te)return;const re=le=>z.shapes?le.getShape(z.shapes).getRenderBounds():le.getRenderBounds(),oe=NC(E.map(le=>re(te.getElement(le))));yield this.focus(oe,z)})}focus(x,E){return m2(this,void 0,void 0,function*(){const z=this.context.graph.getViewportByCanvas(x.center),te=E.position||this.getCanvasCenter(),re=Yc(te,z);yield this.transform({mode:"relative",translate:cu(re,this.paddingOffset)},E.animation)})}getBBoxInViewport(x){const{min:E,max:z}=x,{graph:te}=this.context,[re,oe]=te.getViewportByCanvas(E),[le,ce]=te.getViewportByCanvas(z),ge=new Cc;return ge.setMinMax([re,oe,0],[le,ce,0]),ge}isInViewport(x,E=!1,z=0){const{graph:te}=this.context,re=this.getCanvasSize(),[oe,le]=te.getCanvasByViewport([0,0]),[ce,ge]=te.getCanvasByViewport(re);let Ae=new Cc;return Ae.setMinMax([oe,le,0],[ce,ge,0]),z&&(Ae=fx(Ae,z)),LS(x)?sm(x,Ae):E?kk(x,Ae):Ae.intersects(x)}cancelAnimation(){var x,E;!((x=this.camera.landmarks)===null||x===void 0)&&x.length&&this.camera.cancelLandmarkAnimation(),(E=this.transformResolver)===null||E===void 0||E.call(this)}}var ph=function(b,x,E,z){function te(re){return re instanceof E?re:new E(function(oe){oe(re)})}return new(E||(E=Promise))(function(re,oe){function le(Ae){try{ge(z.next(Ae))}catch(Me){oe(Me)}}function ce(Ae){try{ge(z.throw(Ae))}catch(Me){oe(Me)}}function ge(Ae){Ae.done?re(Ae.value):te(Ae.value).then(le,ce)}ge((z=z.apply(b,x||[])).next())})};class JS extends AM{constructor(x){var E;super(),this.options={},this.rendered=!1,this.destroyed=!1,this.context={model:new lZ},this.isCollapsingExpanding=!1,this.onResize=YC(()=>{this.resize()},300),this._setOptions(Object.assign({},JS.defaultOptions,x),!0),this.context.graph=this,this.options.autoResize&&((E=globalThis.addEventListener)===null||E===void 0||E.call(globalThis,"resize",this.onResize))}getOptions(){return this.options}setOptions(x){this._setOptions(x,!1)}_setOptions(x,E){if(this.updateCanvas(x),Object.assign(this.options,CZ(x)),E){const{data:Ue}=x;Ue&&this.addData(Ue);return}const{behaviors:z,combo:te,data:re,edge:oe,layout:le,node:ce,plugins:ge,theme:Ae,transforms:Me}=x;z&&this.setBehaviors(z),re&&this.setData(re),ce&&this.setNode(ce),oe&&this.setEdge(oe),te&&this.setCombo(te),le&&this.setLayout(le),Ae&&this.setTheme(Ae),ge&&this.setPlugins(ge),Me&&this.setTransforms(Me)}getSize(){return this.context.canvas?this.context.canvas.getSize():[this.options.width||0,this.options.height||0]}setSize(x,E){x&&(this.options.width=x),E&&(this.options.height=E),this.resize(x,E)}setZoomRange(x){this.options.zoomRange=x}getZoomRange(){return this.options.zoomRange}setNode(x){this.options.node=x,this.context.model.refreshData()}setEdge(x){this.options.edge=x,this.context.model.refreshData()}setCombo(x){this.options.combo=x,this.context.model.refreshData()}getTheme(){return this.options.theme}setTheme(x){this.options.theme=_s(x)?x(this.getTheme()):x}setLayout(x){this.options.layout=_s(x)?x(this.getLayout()):x}getLayout(){return this.options.layout}setBehaviors(x){var E;this.options.behaviors=_s(x)?x(this.getBehaviors()):x,(E=this.context.behavior)===null||E===void 0||E.setBehaviors(this.options.behaviors)}updateBehavior(x){this.setBehaviors(E=>E.map(z=>typeof z=="object"&&z.key===x.key?Object.assign(Object.assign({},z),x):z))}getBehaviors(){return this.options.behaviors||[]}setPlugins(x){var E;this.options.plugins=_s(x)?x(this.getPlugins()):x,(E=this.context.plugin)===null||E===void 0||E.setPlugins(this.options.plugins)}updatePlugin(x){this.setPlugins(E=>E.map(z=>typeof z=="object"&&z.key===x.key?Object.assign(Object.assign({},z),x):z))}getPlugins(){return this.options.plugins||[]}getPluginInstance(x){return this.context.plugin.getPluginInstance(x)}setTransforms(x){var E;this.options.transforms=_s(x)?x(this.getTransforms()):x,(E=this.context.transform)===null||E===void 0||E.setTransforms(this.options.transforms)}updateTransform(x){this.setTransforms(E=>E.map(z=>typeof z=="object"&&z.key===x.key?Object.assign(Object.assign({},z),x):z)),this.context.model.refreshData()}getTransforms(){return this.options.transforms||[]}getData(){return this.context.model.getData()}getElementData(x){return Array.isArray(x)?x.map(E=>this.context.model.getElementDataById(E)):this.context.model.getElementDataById(x)}getNodeData(x){var E;return x===void 0?this.context.model.getNodeData():Array.isArray(x)?this.context.model.getNodeData(x):(E=this.context.model.getNodeData([x]))===null||E===void 0?void 0:E[0]}getEdgeData(x){var E;return x===void 0?this.context.model.getEdgeData():Array.isArray(x)?this.context.model.getEdgeData(x):(E=this.context.model.getEdgeData([x]))===null||E===void 0?void 0:E[0]}getComboData(x){var E;return x===void 0?this.context.model.getComboData():Array.isArray(x)?this.context.model.getComboData(x):(E=this.context.model.getComboData([x]))===null||E===void 0?void 0:E[0]}setData(x){this.context.model.setData(_s(x)?x(this.getData()):x)}addData(x){this.context.model.addData(_s(x)?x(this.getData()):x)}addNodeData(x){this.context.model.addNodeData(_s(x)?x(this.getNodeData()):x)}addEdgeData(x){this.context.model.addEdgeData(_s(x)?x(this.getEdgeData()):x)}addComboData(x){this.context.model.addComboData(_s(x)?x(this.getComboData()):x)}addChildrenData(x,E){this.context.model.addChildrenData(x,E)}updateData(x){this.context.model.updateData(_s(x)?x(this.getData()):x)}updateNodeData(x){this.context.model.updateNodeData(_s(x)?x(this.getNodeData()):x)}updateEdgeData(x){this.context.model.updateEdgeData(_s(x)?x(this.getEdgeData()):x)}updateComboData(x){this.context.model.updateComboData(_s(x)?x(this.getComboData()):x)}removeData(x){this.context.model.removeData(_s(x)?x(this.getData()):x)}removeNodeData(x){this.context.model.removeNodeData(_s(x)?x(this.getNodeData()):x)}removeEdgeData(x){this.context.model.removeEdgeData(_s(x)?x(this.getEdgeData()):x)}removeComboData(x){this.context.model.removeComboData(_s(x)?x(this.getComboData()):x)}getElementType(x){return this.context.model.getElementType(x)}getRelatedEdgesData(x,E="both"){return this.context.model.getRelatedEdgesData(x,E)}getNeighborNodesData(x){return this.context.model.getNeighborNodesData(x)}getAncestorsData(x,E){return this.context.model.getAncestorsData(x,E)}getParentData(x,E){return this.context.model.getParentData(x,E)}getChildrenData(x){return this.context.model.getChildrenData(x)}getDescendantsData(x){return this.context.model.getDescendantsData(x)}getElementDataByState(x,E){return this.context.model.getElementDataByState(x,E)}initCanvas(){return ph(this,void 0,void 0,function*(){var x;if(this.context.canvas)return yield this.context.canvas.ready;const{container:E="container",width:z,height:te,renderer:re,cursor:oe,background:le,canvas:ce,devicePixelRatio:ge=(x=globalThis.devicePixelRatio)!==null&&x!==void 0?x:1}=this.options;if(E instanceof G6)this.context.canvas=E,oe&&E.setCursor(oe),re&&E.setRenderer(re),yield E.ready;else{const Ae=nc(E)?document.getElementById(E):E,Me=K6(Ae);this.emit(es.BEFORE_CANVAS_INIT,{container:Ae,width:z,height:te});const Ue=Object.assign(Object.assign({},ce),{container:Ae,width:z||Me[0],height:te||Me[1],background:le,renderer:re,cursor:oe,devicePixelRatio:ge}),Xe=new G6(Ue);this.context.canvas=Xe,yield Xe.ready,this.emit(es.AFTER_CANVAS_INIT,{canvas:Xe})}})}updateCanvas(x){var E,z;const{renderer:te,cursor:re,height:oe,width:le}=x,ce=this.context.canvas;ce&&(te&&(this.emit(es.BEFORE_RENDERER_CHANGE,{renderer:this.options.renderer}),ce.setRenderer(te),this.emit(es.AFTER_RENDERER_CHANGE,{renderer:te})),re&&ce.setCursor(re),(os(le)||os(oe))&&this.setSize((E=le!=null?le:this.options.width)!==null&&E!==void 0?E:0,(z=oe!=null?oe:this.options.height)!==null&&z!==void 0?z:0))}initRuntime(){this.context.options=this.options,this.context.batch||(this.context.batch=new rZ(this.context)),this.context.plugin||(this.context.plugin=new PZ(this.context)),this.context.viewport||(this.context.viewport=new LZ(this.context)),this.context.transform||(this.context.transform=new MZ(this.context)),this.context.element||(this.context.element=new uZ(this.context)),this.context.animation||(this.context.animation=new nZ(this.context)),this.context.layout||(this.context.layout=new wZ(this.context)),this.context.behavior||(this.context.behavior=new iZ(this.context))}prepare(){return ph(this,void 0,void 0,function*(){if(yield Promise.resolve(),this.destroyed)throw new Error(Jy("The graph instance has been destroyed"));yield this.initCanvas(),this.initRuntime()})}render(){return ph(this,void 0,void 0,function*(){if(yield this.prepare(),Ff(this,new ff(es.BEFORE_RENDER)),this.options.layout)if(!this.rendered&&m9(this.options.layout)){const x=yield this.context.element.preLayoutDraw({type:"render"});yield Promise.all([x==null?void 0:x.finished,this.autoFit()])}else{const x=this.context.element.draw({type:"render"});yield Promise.all([x==null?void 0:x.finished,this.context.layout.postLayout()]),yield this.autoFit()}else{const x=this.context.element.draw({type:"render"});yield Promise.all([x==null?void 0:x.finished,this.autoFit()])}this.rendered=!0,Ff(this,new ff(es.AFTER_RENDER))})}draw(){return ph(this,void 0,void 0,function*(){var x;yield this.prepare(),yield(x=this.context.element.draw())===null||x===void 0?void 0:x.finished})}layout(x){return ph(this,void 0,void 0,function*(){yield this.context.layout.postLayout(x)})}stopLayout(){this.context.layout.stopLayout()}clear(){return ph(this,void 0,void 0,function*(){const{model:x,element:E}=this.context;x.setData({}),x.clearChanges(),E==null||E.clear()})}destroy(){var x;Ff(this,new ff(es.BEFORE_DESTROY));const{layout:E,animation:z,element:te,model:re,canvas:oe,behavior:le,plugin:ce}=this.context;ce==null||ce.destroy(),le==null||le.destroy(),E==null||E.destroy(),z==null||z.destroy(),te==null||te.destroy(),re.destroy(),oe==null||oe.destroy(),this.options={},this.context={},this.off(),(x=globalThis.removeEventListener)===null||x===void 0||x.call(globalThis,"resize",this.onResize),this.destroyed=!0,Ff(this,new ff(es.AFTER_DESTROY))}getCanvas(){return this.context.canvas}resize(x,E){var z;const te=K6((z=this.context.canvas)===null||z===void 0?void 0:z.getContainer()),re=[x||te[0],E||te[1]];if(!this.context.canvas)return;const oe=this.context.canvas.getSize();Vd(re,oe)||(Ff(this,new ff(es.BEFORE_SIZE_CHANGE,{size:re})),this.context.canvas.resize(...re),Ff(this,new ff(es.AFTER_SIZE_CHANGE,{size:re})))}fitView(x,E){return ph(this,void 0,void 0,function*(){var z;yield(z=this.context.viewport)===null||z===void 0?void 0:z.fitView(x,E)})}fitCenter(x){return ph(this,void 0,void 0,function*(){var E;yield(E=this.context.viewport)===null||E===void 0?void 0:E.fitCenter({animation:x})})}autoFit(){return ph(this,void 0,void 0,function*(){const{autoFit:x}=this.context.options;if(x)if(nc(x))x==="view"?yield this.fitView():x==="center"&&(yield this.fitCenter());else{const{type:E,animation:z}=x;E==="view"?yield this.fitView(x.options,z):E==="center"&&(yield this.fitCenter(z))}})}focusElement(x,E){return ph(this,void 0,void 0,function*(){var z;yield(z=this.context.viewport)===null||z===void 0?void 0:z.focusElements(Array.isArray(x)?x:[x],{animation:E})})}zoomBy(x,E,z){return ph(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:"relative",scale:x,origin:z},E)})}zoomTo(x,E,z){return ph(this,void 0,void 0,function*(){this.context.viewport.transform({mode:"absolute",scale:x,origin:z},E)})}getZoom(){return this.context.viewport.getZoom()}rotateBy(x,E,z){return ph(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:"relative",rotate:x,origin:z},E)})}rotateTo(x,E,z){return ph(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:"absolute",rotate:x,origin:z},E)})}getRotation(){return this.context.viewport.getRotation()}translateBy(x,E){return ph(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:"relative",translate:x},E)})}translateTo(x,E){return ph(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:"absolute",translate:x},E)})}getPosition(){return Yc([0,0],this.getCanvasByViewport([0,0]))}translateElementBy(x,E){return ph(this,arguments,void 0,function*(z,te,re=!0){var oe,le;const[ce,ge]=Sh(z)?[z,(oe=te)!==null&&oe!==void 0?oe:!0]:[{[z]:te},re];Object.entries(ce).forEach(([Ae,Me])=>this.context.model.translateNodeLikeBy(Ae,Me)),yield(le=this.context.element.draw({animation:ge,stage:"translate"}))===null||le===void 0?void 0:le.finished})}translateElementTo(x,E){return ph(this,arguments,void 0,function*(z,te,re=!0){var oe,le;const[ce,ge]=Sh(z)?[z,(oe=te)!==null&&oe!==void 0?oe:!0]:[{[z]:te},re];Object.entries(ce).forEach(([Ae,Me])=>this.context.model.translateNodeLikeTo(Ae,Me)),yield(le=this.context.element.draw({animation:ge,stage:"translate"}))===null||le===void 0?void 0:le.finished})}getElementPosition(x){return this.context.model.getElementPosition(x)}getElementRenderStyle(x){return cD(this.context.element.getElement(x).attributes,["context"])}setElementVisibility(x,E){return ph(this,arguments,void 0,function*(z,te,re=!0){var oe,le;const[ce,ge]=Sh(z)?[z,(oe=te)!==null&&oe!==void 0?oe:!0]:[{[z]:te},re],Ae={nodes:[],edges:[],combos:[]};Object.entries(ce).forEach(([Xe,$e])=>{const rt=this.getElementType(Xe);Ae[`${rt}s`].push({id:Xe,style:{visibility:$e}})});const{model:Me,element:Ue}=this.context;Me.preventUpdateNodeLikeHierarchy(()=>{Me.updateData(Ae)}),yield(le=Ue.draw({animation:ge,stage:"visibility"}))===null||le===void 0?void 0:le.finished})}showElement(x,E){return ph(this,void 0,void 0,function*(){const z=Array.isArray(x)?x:[x];yield this.setElementVisibility(Object.fromEntries(z.map(te=>[te,"visible"])),E)})}hideElement(x,E){return ph(this,void 0,void 0,function*(){const z=Array.isArray(x)?x:[x];yield this.setElementVisibility(Object.fromEntries(z.map(te=>[te,"hidden"])),E)})}getElementVisibility(x){var E,z;const te=this.context.element.getElement(x);return(z=(E=te==null?void 0:te.style)===null||E===void 0?void 0:E.visibility)!==null&&z!==void 0?z:"visible"}setElementZIndex(x,E){return ph(this,void 0,void 0,function*(){var z;const te={nodes:[],edges:[],combos:[]},re=Sh(x)?x:{[x]:E};Object.entries(re).forEach(([ce,ge])=>{const Ae=this.getElementType(ce);te[`${Ae}s`].push({id:ce,style:{zIndex:ge}})});const{model:oe,element:le}=this.context;oe.preventUpdateNodeLikeHierarchy(()=>oe.updateData(te)),yield(z=le.draw({animation:!1,stage:"zIndex"}))===null||z===void 0?void 0:z.finished})}frontElement(x){return ph(this,void 0,void 0,function*(){const E=Array.isArray(x)?x:[x],{model:z}=this.context,te={};E.map(re=>{const oe=z.getFrontZIndex(re);if(z.getElementType(re)==="combo"){const ce=z.getAncestorsData(re,lh).at(-1)||this.getComboData(re),ge=[ce,...z.getDescendantsData(Ji(ce))],Ae=oe-Z6(ce);ge.forEach(Ue=>{te[Ji(Ue)]=this.getElementZIndex(Ji(Ue))+Ae});const{internal:Me}=O5(ge.map(Ji),Ue=>z.getRelatedEdgesData(Ue));Me.forEach(Ue=>{const Xe=Ji(Ue);te[Xe]=this.getElementZIndex(Xe)+Ae})}else te[re]=oe}),yield this.setElementZIndex(te)})}getElementZIndex(x){return Z6(this.context.model.getElementDataById(x))}setElementState(x,E){return ph(this,arguments,void 0,function*(z,te,re=!0){var oe,le;const[ce,ge]=Sh(z)?[z,(oe=te)!==null&&oe!==void 0?oe:!0]:[{[z]:te},re],Ae=Ue=>Ue?Array.isArray(Ue)?Ue:[Ue]:[],Me={nodes:[],edges:[],combos:[]};Object.entries(ce).forEach(([Ue,Xe])=>{const $e=this.getElementType(Ue);Me[`${$e}s`].push({id:Ue,states:Ae(Xe)})}),this.updateData(Me),yield(le=this.context.element.draw({animation:ge,stage:"state"}))===null||le===void 0?void 0:le.finished})}getElementState(x){return this.context.model.getElementState(x)}getElementRenderBounds(x){return this.context.element.getElement(x).getRenderBounds()}collapseElement(x){return ph(this,arguments,void 0,function*(E,z=!0){const{model:te,element:re}=this.context;if(r0(te.getNodeLikeData([E])[0])||this.isCollapsingExpanding)return;typeof z=="boolean"&&(z={animation:z,align:!0});const oe=te.getElementType(E);yield this.frontElement(E),this.isCollapsingExpanding=!0,this.setElementCollapsibility(E,!0),oe==="node"?yield re.collapseNode(E,z):oe==="combo"&&(yield re.collapseCombo(E,!!z.animation)),this.isCollapsingExpanding=!1})}expandElement(x){return ph(this,arguments,void 0,function*(E,z=!0){const{model:te,element:re}=this.context;if(!r0(te.getNodeLikeData([E])[0])||this.isCollapsingExpanding)return;typeof z=="boolean"&&(z={animation:z,align:!0});const oe=te.getElementType(E);this.isCollapsingExpanding=!0,this.setElementCollapsibility(E,!1),oe==="node"?yield re.expandNode(E,z):oe==="combo"&&(yield re.expandCombo(E,!!z.animation)),this.isCollapsingExpanding=!1})}setElementCollapsibility(x,E){const z=this.getElementType(x);z==="node"?this.updateNodeData([{id:x,style:{collapsed:E}}]):z==="combo"&&this.updateComboData([{id:x,style:{collapsed:E}}])}toDataURL(){return ph(this,arguments,void 0,function*(x={}){return this.context.canvas.toDataURL(x)})}getCanvasByViewport(x){return this.context.canvas.getCanvasByViewport(x)}getViewportByCanvas(x){return this.context.canvas.getViewportByCanvas(x)}getClientByCanvas(x){return this.context.canvas.getClientByCanvas(x)}getCanvasByClient(x){return this.context.canvas.getCanvasByClient(x)}getViewportCenter(){return this.context.viewport.getViewportCenter()}getCanvasCenter(){return this.context.viewport.getCanvasCenter()}on(x,E,z){return super.on(x,E,z)}once(x,E){return super.once(x,E)}off(x,E){return super.off(x,E)}}JS.defaultOptions={autoResize:!1,theme:"light",rotation:0,zoom:1,zoomRange:[.01,10]};var TZ=function(b,x){var E={};for(var z in b)Object.prototype.hasOwnProperty.call(b,z)&&x.indexOf(z)<0&&(E[z]=b[z]);if(b!=null&&typeof Object.getOwnPropertySymbols=="function")for(var te=0,z=Object.getOwnPropertySymbols(b);te{if(le.depth=ce,!le.children)return le;const{children:ge}=le,Ae=TZ(le,["children"]);return Object.assign(Object.assign({},Ae),{children:ge.map(Me=>Me.id)})},getEdgeData:z=(le,ce)=>({source:le.id,target:ce.id}),getChildren:te=le=>le.children||[]}=x||{},re=[],oe=[];return HE(b,(le,ce)=>{re.push(E(le,ce));const ge=te(le);for(const Ae of ge)oe.push(z(le,Ae))},le=>te(le),"TB"),{nodes:re,edges:oe}}class DZ extends Tx{beforeDraw(x){const{add:E,update:z}=x,{model:te}=this.context;return[...E.edges.entries(),...z.edges.entries()].forEach(([,re])=>{aR(te,re)}),x}}const aR=(b,x)=>{const{source:E,target:z}=x,te=b.getElementDataById(E),re=b.getElementDataById(z),oe=AO(te,Me=>b.getParentData(Me,lh)),le=AO(re,Me=>b.getParentData(Me,lh)),ce=Ji(oe),ge=Ji(le),Ae={sourceNode:ce,targetNode:ge};return x.style?Object.assign(x.style,Ae):x.style=Ae,x},IZ=(b,x,E)=>{const[z,te]=x,[re,oe]=E;if(te===z)return re;const le=(b-z)/(te-z);return re+le*(oe-re)},OZ=(b,x,E)=>{const[z,te]=x,[re,oe]=E,le=Math.log(b-z+1)/Math.log(te-z+1);return re+le*(oe-re)},NZ=(b,x,E,z=2)=>{const[te,re]=x,[oe,le]=E,ce=Math.pow((b-te)/(re-te),z);return oe+ce*(le-oe)},BZ=(b,x,E)=>{const[z,te]=x,[re,oe]=E,le=Math.sqrt((b-z)/(te-z));return re+le*(oe-re)};class FL extends Tx{constructor(x,E){super(x,Cp({},FL.defaultOptions,E)),this.assignSizeByCentrality=(z,te,re,oe,le,ce)=>{const ge=[te,re],Ae=[oe[0],le[0]],Me=[oe[1],le[1]],Ue=[oe[2],le[2]],Xe=($e,rt)=>{if(typeof ce=="function")return ce($e,ge,rt);switch(ce){case"linear":return IZ($e,ge,rt);case"log":return OZ($e,ge,rt);case"pow":return NZ($e,ge,rt,2);case"sqrt":return BZ($e,ge,rt);default:return rt[0]}};return[Xe(z,Ae),Xe(z,Me),Xe(z,Ue)]}}beforeDraw(x){const{model:E}=this.context,z=E.getNodeData(),te=P0(this.options.maxSize),re=P0(this.options.minSize),oe=this.getCentralities(this.options.centrality),le=oe.size>0?Math.max(...oe.values()):0,ce=oe.size>0?Math.min(...oe.values()):0;return z.forEach(ge=>{var Ae;const Me=this.assignSizeByCentrality(oe.get(Ji(ge))||0,ce,le,re,te,this.options.scale),Ue=(Ae=this.context.element)===null||Ae===void 0?void 0:Ae.getElement(Ji(ge)),Xe={size:Me};this.assignLabelStyle(Xe,Me,ge,Ue),(!Ue||!ML(Xe,Ue.attributes))&&I0(x,Ue?"update":"add","node",Cp(ge,{style:Xe}),!0)}),x}assignLabelStyle(x,E,z,te){var re;const oe=te?te.config.style:(re=this.context.element)===null||re===void 0?void 0:re.getElementComputedStyle("node",z);if(Object.assign(x,ZE(oe,["labelFontSize","labelLineHeight"])),this.options.mapLabelSize){const le=this.getLabelSizeByNodeSize(E,1/0,Number(x.labelFontSize));Object.assign(x,{labelFontSize:le,labelLineHeight:le+Rk(x.labelPadding)})}return x}getLabelSizeByNodeSize(x,E,z){const te=Math.min(...x)/2,[re,oe]=Array.isArray(this.options.mapLabelSize)?this.options.mapLabelSize:[z,E];return Math.min(oe,Math.max(te,re))}getCentralities(x){const{model:E}=this.context,z=E.getData();if(typeof x=="function")return x(z);const te=E.getRelatedEdgesData.bind(E);return C3(z,te,x)}}FL.defaultOptions={centrality:{type:"degree"},maxSize:80,minSize:20,scale:"linear",mapLabelSize:!1};class _L extends Tx{constructor(x,E){super(x,Object.assign({},_L.defaultOptions,E))}get ref(){return this.context.model.getRootsData()[0]}afterLayout(){var x;const E=Rf(this.ref),{graph:z,model:te}=this.context;(x=te.getData().nodes)===null||x===void 0||x.forEach(oe=>{var le;if(Ji(oe)===Ji(this.ref))return;const ce=L3(Yc(Rf(oe),E)),ge=Math.abs(ce)>Math.PI/2,Ae=!oe.children||oe.children.length===0,Me=Ji(oe),Ue=(le=this.context.element)===null||le===void 0?void 0:le.getElement(Me);if(!Ue||!Ue.isVisible())return;const Xe=P0(z.getElementRenderStyle(Me).size)[0]/2,$e=(Ae?1:-1)*(Xe+this.options.offset),rt=[["translate",$e*Math.cos(ce),$e*Math.sin(ce)],["rotate",ge?mg(ce)+180:mg(ce)]];te.updateNodeData([{id:Ji(oe),style:{labelTextAlign:ge===Ae?"right":"left",labelTextBaseline:"middle",labelTransform:rt}}])}),z.draw()}}_L.defaultOptions={offset:5};const RZ="quadratic",sR=["top","top-right","right","right-bottom","bottom","bottom-left","left","left-top"];class zL extends Tx{constructor(x,E){super(x,Object.assign({},zL.defaultOptions,E)),this.cacheMergeStyle=new Map,this.getAffectedParallelEdges=z=>{const{add:{edges:te},update:{nodes:re,edges:oe,combos:le},remove:{edges:ce}}=z,{model:ge}=this.context,Ae=new Map,Me=($e,rt)=>{ge.getRelatedEdgesData(rt).forEach(pt=>!Ae.has(Ji(pt))&&Ae.set(Ji(pt),pt))};re.forEach(Me),le.forEach(Me);const Ue=$e=>{const rt=ge.getEdgeData().map(pt=>aR(ge,pt));kZ($e,rt,!0).forEach(pt=>!Ae.has(Ji(pt))&&Ae.set(Ji(pt),pt))};if(ce.size&&ce.forEach(Ue),te.size&&te.forEach(Ue),oe.size){const $e=dB(vD(ge.getChanges())).update.edges;oe.forEach(rt=>{var ot;Ue(rt);const pt=(ot=$e.find(yt=>Ji(yt.value)===Ji(rt)))===null||ot===void 0?void 0:ot.original;pt&&!sI(rt,pt)&&Ue(pt)})}uy(this.options.edges)||Ae.forEach(($e,rt)=>!this.options.edges.includes(rt)&&Ae.delete(rt));const Xe=ge.getEdgeData().map(Ji);return new Map([...Ae].sort(($e,rt)=>Xe.indexOf($e[0])-Xe.indexOf(rt[0])))},this.applyBundlingStyle=(z,te,re)=>{const{edgeMap:oe,reverses:le}=lR(te);oe.forEach(ce=>{ce.forEach((ge,Ae,Me)=>{var Ue;const Xe=Me.length,$e=ge.style||{};if(ge.source===ge.target){const pt=sR.length;$e.loopPlacement=sR[Ae%pt],$e.loopDist=Math.floor(Ae/pt)*re+50}else if(Xe===1)$e.curveOffset=0;else{const pt=(Ae%2===0?1:-1)*(le[`${ge.source}|${ge.target}|${Ae}`]?-1:1);$e.curveOffset=Xe%2===1?pt*Math.ceil(Ae/2)*re*2:pt*(Math.floor(Ae/2)*re*2+re)}const rt=Object.assign(ge,{type:RZ,style:$e}),ot=(Ue=this.context.element)===null||Ue===void 0?void 0:Ue.getElement(Ji(ge));(!ot||!ML(rt.style,ot.attributes))&&I0(z,ot?"update":"add","edge",rt,!0)})})},this.resetEdgeStyle=z=>{const te=z.style||{},re=this.cacheMergeStyle.get(Ji(z))||{};return Object.keys(re).forEach(oe=>{Vd(te[oe],re[oe])&&(z[oe]?te[oe]=z[oe]:delete te[oe])}),Object.assign(z,{style:te})},this.applyMergingStyle=(z,te)=>{const{edgeMap:re,reverses:oe}=lR(te);re.forEach(le=>{var ce;if(le.length===1){const Ae=le[0],Me=(ce=this.context.element)===null||ce===void 0?void 0:ce.getElement(Ji(Ae)),Ue=this.resetEdgeStyle(Ae);(!Me||!ML(Ue,Me.attributes))&&I0(z,Me?"update":"add","edge",Ue);return}const ge=le.map(({source:Ae,target:Me,style:Ue={}},Xe)=>{const{startArrow:$e,endArrow:rt}=Ue,ot={},[pt,yt]=oe[`${Ae}|${Me}|${Xe}`]?["endArrow","startArrow"]:["startArrow","endArrow"];return P1($e)&&(ot[pt]=$e),P1(rt)&&(ot[yt]=rt),ot}).reduce((Ae,Me)=>Object.assign(Object.assign({},Ae),Me),{});le.forEach((Ae,Me,Ue)=>{var Xe;if(Me!==0){I0(z,"remove","edge",Ae);return}const $e=Object.assign({},_s(this.options.style)?this.options.style(Ue):this.options.style,{childrenData:Ue});this.cacheMergeStyle.set(Ji(Ae),$e);const rt=Object.assign(Object.assign({},Ae),{type:"line",style:Object.assign(Object.assign(Object.assign({},Ae.style),ge),$e)}),ot=(Xe=this.context.element)===null||Xe===void 0?void 0:Xe.getElement(Ji(Ae));(!ot||!ML(rt.style,ot.attributes))&&I0(z,ot?"update":"add","edge",rt,!0)})})}}beforeDraw(x){const E=this.getAffectedParallelEdges(x);return E.size===0||(this.options.mode==="bundle"?this.applyBundlingStyle(x,E,this.options.distance):this.applyMergingStyle(x,E)),x}}zL.defaultOptions={mode:"bundle",distance:15};const lR=b=>{const x=new Map,E=new Set,z={};for(const[te,re]of b){if(E.has(te))continue;const{source:oe,target:le}=re,ce=`${oe}-${le}`;x.has(ce)||x.set(ce,[]),x.get(ce).push(re),E.add(te);for(const[ge,Ae]of b)E.has(ge)||sI(re,Ae)&&(x.get(ce).push(Ae),E.add(ge),oe===Ae.target&&le===Ae.source&&(z[`${Ae.source}|${Ae.target}|${x.get(ce).length-1}`]=!0))}return{edgeMap:x,reverses:z}},kZ=(b,x,E)=>x.filter(z=>(E||Ji(z)!==Ji(b))&&sI(z,b)),sI=(b,x)=>{const{sourceNode:E,targetNode:z}=b.style||{},{sourceNode:te,targetNode:re}=x.style||{};return E===te&&z===re||E===re&&z===te};class FZ extends Tx{beforeDraw(x,E){const{stage:z}=E;if(z==="visibility")return x;const{model:te}=this.context,{update:{nodes:re,edges:oe,combos:le}}=x,ce=(ge,Ae)=>{te.getRelatedEdgesData(Ae).forEach(Ue=>!oe.has(Ji(Ue))&&oe.set(Ji(Ue),Ue))};return re.forEach(ce),le.forEach(ce),x}}const _Z={animation:{"combo-collapse":FI,"combo-expand":Dk,"node-collapse":RI,"node-expand":Lk,"path-in":kI,"path-out":Tk,fade:Pk,translate:Mk},behavior:{"brush-select":zC,"click-select":HP,"collapse-expand":pM,"create-edge":xM,"drag-canvas":EM,"drag-element-force":E9,"drag-element":XC,"fix-element-size":bM,"focus-element":PM,"hover-activate":MM,"lasso-select":S9,"auto-adapt-label":_P,"optimize-viewport-transform":LM,"scroll-canvas":TM,"zoom-canvas":DM},combo:{circle:h7,rect:d7},edge:{cubic:YE,line:hM,polyline:dM,quadratic:fM,"cubic-horizontal":lM,"cubic-radial":uM,"cubic-vertical":cM},layout:{"antv-dagre":sj,"combo-combined":hW,"compact-box":IM.compactBox,"d3-force":_W,"force-atlas2":WW,circular:cj,concentric:Q5,dagre:FM,dendrogram:IM.dendrogram,fishbone:jM,force:LN,fruchterman:HW,grid:KW,indented:IM.indented,mds:RN,mindmap:IM.mindmap,radial:tU,random:lU,snake:WM},node:{circle:VE,diamond:d8,ellipse:XP,hexagon:m8,html:rM,image:iM,rect:u7,star:c7,donut:ZP,triangle:oM},palette:{spectral:fU,tableau:gU,oranges:pU,greens:vU,blues:mU},theme:{dark:HK,light:VK},plugin:{"bubble-sets":JM,"edge-bundling":$M,"edge-filter-lens":eL,"grid-line":rL,background:UM,contextmenu:qM,fisheye:tL,fullscreen:nL,history:iL,hull:oL,legend:cL,minimap:hL,snapline:dL,timebar:wL,toolbar:CL,tooltip:bL,watermark:PL},transform:{"arrange-draw-order":KK,"collapse-expand-combo":ZK,"collapse-expand-node":YK,"get-edge-actual-ends":DZ,"map-node-size":FL,"place-radial-labels":_L,"process-parallel-edges":zL,"update-related-edges":FZ},shape:{circle:xp,ellipse:Mh,group:Uu,html:$m,image:m5,line:uf,path:Gd,polygon:Qp,polyline:Lg,rect:sh,text:Hd,label:mx,badge:IS}};function zZ(){Object.entries(_Z).forEach(([b,x])=>{Object.entries(x).forEach(([E,z])=>{XK(b,E,z)})})}zZ();const m$={css:"//at.alicdn.com/t/a/font_470089_8hnbbf8n4u8.css",js:"//at.alicdn.com/t/a/font_470089_8hnbbf8n4u8.js"};var lI=Be(59301),jZ=Object.defineProperty,WZ=Object.defineProperties,UZ=Object.getOwnPropertyDescriptors,uR=Object.getOwnPropertySymbols,GZ=Object.prototype.hasOwnProperty,HZ=Object.prototype.propertyIsEnumerable,cR=(b,x,E)=>x in b?jZ(b,x,{enumerable:!0,configurable:!0,writable:!0,value:E}):b[x]=E,uI=(b,x)=>{for(var E in x||(x={}))GZ.call(x,E)&&cR(b,E,x[E]);if(uR)for(var E of uR(x))HZ.call(x,E)&&cR(b,E,x[E]);return b},cI=(b,x)=>WZ(b,UZ(x)),VZ=(b,x,E)=>new Promise((z,te)=>{var re=ce=>{try{le(E.next(ce))}catch(ge){te(ge)}},oe=ce=>{try{le(E.throw(ce))}catch(ge){te(ge)}},le=ce=>ce.done?z(ce.value):Promise.resolve(ce.value).then(re,oe);le((E=E.apply(b,x)).next())});const KZ=(b,x)=>{const E=b.getParentData(x.id,"tree");return E?x.style.x>E.style.x?"right":"left":"center"},ZZ=[3,2,1];let jL=[{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 YZ=(b,x)=>{const E={};let z=null;return b.forEach(te=>{E[te.properties.uuid]=cI(uI({},te),{id:te.properties.uuid,children:[]})}),x.forEach(te=>{const re=E[te.startNodeUuid],oe=E[te.endNodeUuid];re&&(re.id=re.properties.uuid),re&&oe&&re.children.push(oe)}),b.forEach(te=>{!x.some(oe=>oe.endNodeUuid===te.properties.uuid)&&(z=E[te.properties.uuid])}),z};var XZ=(0,Ge.forwardRef)(({nodeUuid:b,subject_id:x,setshowdetail:E,setitems:z,setzoomsize:te},re)=>{const[oe,le]=(0,Ge.useState)(!1),ce=(0,Ge.useRef)(0),ge=(0,Ge.useRef)(null),Ae=(0,Ge.useRef)();(0,Ge.useEffect)(()=>{ot()},[]);function Me(yt){Ae.current.zoomBy(yt)}function Ue(){setTimeout(()=>{var yt;te((((yt=Ae==null?void 0:Ae.current)==null?void 0:yt.getZoom())*100).toFixed(0))},300)}function Xe(yt){var Ct;let zt=Ae.current.getElementDataByState("node","selected");(zt==null?void 0:zt.length)>0&&Ae.current.setElementState((Ct=zt==null?void 0:zt[0])==null?void 0:Ct.id,[""]),Ae.current.setElementState(yt,["selected"])}function $e(yt,Ct){try{const zt={},Wt={};Ae.current.getEdgeData().map(Ht=>{zt[Ht.id]=yt==="Enter"?"inactive":"active"}),Ae.current.getNodeData().map(Ht=>{yt==="Enter"?Wt[Ht.id]=Ht.colornodeType===Ct?"highlight":"inactive":Wt[Ht.id]="active"}),Ae.current.setElementState(zt),Ae.current.setElementState(Wt)}catch(zt){}}function rt(yt,Ct){var zt;(zt=Ae==null?void 0:Ae.current)==null||zt.fitView(yt,Ct)}(0,Ge.useImperativeHandle)(re,()=>({zoomBy:Me,getData:ot,selectall:Xe,onMouse:$e,fitView:rt,getZooms:Ue}));const ot=()=>VZ(void 0,null,function*(){var yt,Ct,zt,Wt,Ht,Qt,Gt,vn,Sn;le(!0);let kn=yield(0,ie.ZP)("/api/knowledge/v2/get_node.json",{method:"get",params:{nodeUuid:b,subject_id:x,depth:-1,relationshipFilter:"\u5305\u542B>"}});le(!1);let Kn=(Ct=(yt=kn==null?void 0:kn.data)==null?void 0:yt.nodes)==null?void 0:Ct.map(Ar=>{var Sr,Ir,si,Cr,wi,Mo,Po,eo,Ui,fo,Uo,pa;return cI(uI({},Ar==null?void 0:Ar.properties),{rootNodeUuid:(Sr=Ar==null?void 0:Ar.properties)==null?void 0:Sr.rootNodeUuid,id:(Ir=Ar==null?void 0:Ar.properties)==null?void 0:Ir.uuid,name:(si=Ar==null?void 0:Ar.properties)==null?void 0:si.name,description:(Cr=Ar==null?void 0:Ar.properties)==null?void 0:Cr.description,nodeType:(wi=Ar==null?void 0:Ar.properties)==null?void 0:wi.nodeType,tags:((Mo=Ar==null?void 0:Ar.properties)==null?void 0:Mo.tags)&&((Ui=(eo=(Po=Ar==null?void 0:Ar.properties)==null?void 0:Po.tags)==null?void 0:eo.split("\uFF0C"))==null?void 0:Ui.map(Ga=>({name:Ga})))||[],colorType:parseInt((fo=Ar==null?void 0:Ar.properties)==null?void 0:fo.color)>3?"3":(Uo=Ar==null?void 0:Ar.properties)==null?void 0:Uo.color,activeColor:"#FA6400",size:ZZ[((pa=Ar==null?void 0:Ar.properties)==null?void 0:pa.color)-1]||1,shape:"circle",hide:!1,isExtendedState:!0})}),vr=YZ((Wt=(zt=kn==null?void 0:kn.data)==null?void 0:zt.nodes)==null?void 0:Wt.map((Ar,Sr)=>{var Ir,si,Cr,wi,Mo;return cI(uI({},Ar),{key:Sr,title:(Ir=Ar==null?void 0:Ar.properties)==null?void 0:Ir.name,newcolor:parseInt((si=Ar==null?void 0:Ar.properties)==null?void 0:si.color)===1?"#CC7CF5":((Cr=jL==null?void 0:jL.find(Po=>{var eo;return(Po==null?void 0:Po.name)===((eo=Ar==null?void 0:Ar.properties)==null?void 0:eo.nodeType)}))==null?void 0:Cr.color)||"#2D947C",colornodeType:parseInt((wi=Ar==null?void 0:Ar.properties)==null?void 0:wi.color)===1?"\u6839\u8282\u70B9":((Mo=jL==null?void 0:jL.find(Po=>{var eo;return(Po==null?void 0:Po.name)===((eo=Ar==null?void 0:Ar.properties)==null?void 0:eo.nodeType)}))==null?void 0:Mo.name)||"\u5176\u4ED6"})}),(Qt=(Ht=kn==null?void 0:kn.data)==null?void 0:Ht.relationships)==null?void 0:Qt.filter(Ar=>Ar.type==="\u5305\u542B"));Ae!=null&&Ae.current&&((Gt=Ae==null?void 0:Ae.current)==null||Gt.destroy());let er=aI(vr),Nr=(vn=er.nodes)==null?void 0:vn.filter((Ar,Sr,Ir)=>Sr===Ir.findIndex(si=>si.id===Ar.id)),ei=(Sn=er.edges)==null?void 0:Sn.filter((Ar,Sr,Ir)=>Sr===Ir.findIndex(si=>si.source===Ar.source&&si.target===Ar.target));pt({nodes:Nr,edges:ei},Kn)}),pt=(yt,Ct)=>{var zt,Wt;Ae.current=null,Ae.current=new JS({container:ge.current,autoResize:!0,autoFit:{type:((zt=yt==null?void 0:yt.nodes)==null?void 0:zt.length)>20?"view":"center",options:{direction:"both",when:"always"}},animation:!(((Wt=yt==null?void 0:yt.nodes)==null?void 0:Wt.length)>300),data:yt,node:{style:{labelText:Ht=>Ht.title,labelFill:"#ffffff",fill:Ht=>Ht.newcolor,labelBackground:!1,labelPlacement:function(Ht){const Qt=KZ(this,Ht);return Qt==="center"?"right":Qt},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=>(ce.current++,ce.current%2==0?"left":"right")},behaviors:["drag-element",{type:"zoom-canvas",onFinish:()=>{setTimeout(()=>{var Ht;te((((Ht=Ae==null?void 0:Ae.current)==null?void 0:Ht.getZoom())*100).toFixed(0))},300)}},"collapse-expand","drag-canvas",{type:"click-select",state:"selected",onClick:Ht=>{let Qt=Ct.filter(Gt=>{var vn,Sn;return(Gt==null?void 0:Gt.id)===((Sn=(vn=Ht.target)==null?void 0:vn.config)==null?void 0:Sn.id)});if((Qt==null?void 0:Qt.length)===0){E(!1);return}z(Qt==null?void 0:Qt[0]),E(!0),Ht.view.setCursor("pointer")},multiple:!1}]}),Ae.current.render(),setTimeout(()=>{var Ht;te((((Ht=Ae==null?void 0:Ae.current)==null?void 0:Ht.getZoom())*100).toFixed(0))},300)};return lI.createElement("div",{style:{height:"100%"}},lI.createElement(ye.Z,{spinning:oe,className:"mt60 w100",tip:"\u52A0\u8F7D\u4E2D..."}),lI.createElement("div",{style:{height:"100%"},ref:ge}))}),Th={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"},hI=Be(20736),hR=Be(59301),QZ=Object.defineProperty,JZ=Object.defineProperties,qZ=Object.getOwnPropertyDescriptors,WL=Object.getOwnPropertySymbols,dR=Object.prototype.hasOwnProperty,fR=Object.prototype.propertyIsEnumerable,gR=(b,x,E)=>x in b?QZ(b,x,{enumerable:!0,configurable:!0,writable:!0,value:E}):b[x]=E,pR=(b,x)=>{for(var E in x||(x={}))dR.call(x,E)&&gR(b,E,x[E]);if(WL)for(var E of WL(x))fR.call(x,E)&&gR(b,E,x[E]);return b},$Z=(b,x)=>JZ(b,qZ(x)),eY=(b,x)=>{var E={};for(var z in b)dR.call(b,z)&&x.indexOf(z)<0&&(E[z]=b[z]);if(b!=null&&WL)for(var z of WL(b))x.indexOf(z)<0&&fR.call(b,z)&&(E[z]=b[z]);return E},tY=(b,x,E)=>new Promise((z,te)=>{var re=ce=>{try{le(E.next(ce))}catch(ge){te(ge)}},oe=ce=>{try{le(E.throw(ce))}catch(ge){te(ge)}},le=ce=>ce.done?z(ce.value):Promise.resolve(ce.value).then(re,oe);le((E=E.apply(b,x)).next())});let UL=[{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 x$=null;let E$=null;const nY=b=>{var x=b,{pathsDetail:E,user:z,globalSetting:te,loading:re,dispatch:oe,datas:le}=x,ce=eY(x,["pathsDetail","user","globalSetting","loading","dispatch","datas"]);const ge=(0,Ge.useRef)(),Ae=(0,Ge.useRef)(null);(0,Ge.useEffect)(()=>{Me()},[le]);function Me(){return tY(this,null,function*(){var Ue,Xe,$e,rt,ot,pt,yt;if(((Ue=le==null?void 0:le.nodes)==null?void 0:Ue.length)>0){let Ct=(0,Yt.fX)((Xe=le==null?void 0:le.nodes)==null?void 0:Xe.map((Gt,vn)=>{var Sn,kn,Kn,vr,er,Nr,ei,Ar,Sr,Ir,si,Cr,wi,Mo,Po,eo;return $Z(pR(pR({},Gt),Gt==null?void 0:Gt.properties),{rootNodeUuid:(Sn=Gt==null?void 0:Gt.properties)==null?void 0:Sn.rootNodeUuid,id:(kn=Gt==null?void 0:Gt.properties)==null?void 0:kn.uuid,name:(Kn=Gt==null?void 0:Gt.properties)==null?void 0:Kn.name,labelstype:(vr=Gt==null?void 0:Gt.labels)==null?void 0:vr[1],description:(er=Gt==null?void 0:Gt.properties)==null?void 0:er.description,nodeType:(Nr=Gt==null?void 0:Gt.properties)==null?void 0:Nr.nodeType,colornodeType:parseInt((ei=Gt==null?void 0:Gt.properties)==null?void 0:ei.color)===1?"\u6839\u8282\u70B9":((Ar=UL==null?void 0:UL.find(Ui=>{var fo;return(Ui==null?void 0:Ui.name)===((fo=Gt==null?void 0:Gt.properties)==null?void 0:fo.nodeType)}))==null?void 0:Ar.name)||"\u5176\u4ED6",newcolor:parseInt((Sr=Gt==null?void 0:Gt.properties)==null?void 0:Sr.color)===1?"#CC7CF5":((Ir=UL==null?void 0:UL.find(Ui=>{var fo;return(Ui==null?void 0:Ui.name)===((fo=Gt==null?void 0:Gt.properties)==null?void 0:fo.nodeType)}))==null?void 0:Ir.color)||"#2D947C",tags:((si=Gt==null?void 0:Gt.properties)==null?void 0:si.tags)&&((Mo=(wi=(Cr=Gt==null?void 0:Gt.properties)==null?void 0:Cr.tags)==null?void 0:wi.split("\uFF0C"))==null?void 0:Mo.map(Ui=>({name:Ui})))||[],colorType:parseInt((Po=Gt==null?void 0:Gt.properties)==null?void 0:Po.color)>3?"3":(eo=Gt==null?void 0:Gt.properties)==null?void 0:eo.color})}),(ot=(rt=($e=le==null?void 0:le.relationships)==null?void 0:$e.filter(Gt=>{var vn,Sn,kn;return(Gt==null?void 0:Gt.endNodeUuid)!==((kn=(Sn=(vn=le==null?void 0:le.nodes)==null?void 0:vn[0])==null?void 0:Sn.properties)==null?void 0:kn.rootNodeUuid)}))==null?void 0:rt.filter(Gt=>{var vn,Sn,kn;return(Gt==null?void 0:Gt.startNodeUuid)!==((kn=(Sn=(vn=le==null?void 0:le.nodes)==null?void 0:vn[0])==null?void 0:Sn.properties)==null?void 0:kn.rootNodeUuid)}))==null?void 0:ot.filter(Gt=>Gt.type==="\u5305\u542B")),zt=aI(Ct),Wt=(pt=zt.nodes)==null?void 0:pt.filter((Gt,vn,Sn)=>vn===Sn.findIndex(kn=>kn.id===Gt.id)),Ht=(yt=zt.edges)==null?void 0:yt.filter((Gt,vn,Sn)=>vn===Sn.findIndex(kn=>kn.source===Gt.source&&kn.target===Gt.target));Wt.map(Gt=>(Gt.transformd=!0,Gt.style={labelWordWrap:!0,labelPlacement:Gt.depth===0?"center":Gt.depth<3?"top-left":"top",haloLineWidth:Math.max(20-Gt.depth*6,0),labelMaxWidth:Gt.depth===0?300:200,labelFontSize:Gt.depth===0?22:Wt.length>300?12:14,labelLineHeight:100,halo:Gt.depth<3},Gt)),ge.current=null;let Qt=Wt==null?void 0:Wt.length;ge.current=new JS({container:Ae.current,autoResize:!0,background:"#010A23",autoFit:{type:Wt.length>50?"view":"center",options:{direction:"both",when:"always"}},animation:!1,padding:50,data:{nodes:Wt,edges:Ht},node:{type:"circle",style:{size:Gt=>Gt.colorType==1?100:Gt.depth<2?50:Qt>250?10:20,fill:Gt=>Gt.newcolor,labelText:Gt=>Gt.name,labelFill:"#ffffff"},state:{highlight:{stroke:"transparent"},selected:{stroke:"transparent"},inactive:{fill:Gt=>Gt.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:Wt.length>250?360:240,direction:"RL",unitRadius:90,linkDistance:200,preventOverlap:!0,maxPreventOverlapIteration:100,strictRadial:!1}],plugins:[{type:"tooltip",enable:Gt=>Gt.targetType==="node",getContent:(Gt,vn)=>{let Sn="";return vn.forEach(kn=>{Sn+=`
    ${kn.name||""}
    `}),Sn}}],behaviors:["drag-canvas",{type:"zoom-canvas"},"drag-element",{type:"collapse-expand",onExpand:(Gt,vn)=>{console.log("----",Gt,vn)}},{type:"fix-element-size",state:"fix-element-size",enable:!0}],transforms:[{type:"place-radial-labels"}]}),ge.current.render()}})}return hR.createElement("div",{style:{background:"#fff",height:"800rem"}},hR.createElement("div",{style:{width:"100%",height:"800rem"},ref:Ae}))};var rY=(0,ke.connect)(({pathsDetail:b,user:x,loading:E,globalSetting:z})=>({pathsDetail:b,user:x,globalSetting:z,loading:E.models.index}))(nY),ua=Be(59301),iY=Object.defineProperty,oY=Object.defineProperties,aY=Object.getOwnPropertyDescriptors,GL=Object.getOwnPropertySymbols,vR=Object.prototype.hasOwnProperty,mR=Object.prototype.propertyIsEnumerable,yR=(b,x,E)=>x in b?iY(b,x,{enumerable:!0,configurable:!0,writable:!0,value:E}):b[x]=E,oA=(b,x)=>{for(var E in x||(x={}))vR.call(x,E)&&yR(b,E,x[E]);if(GL)for(var E of GL(x))mR.call(x,E)&&yR(b,E,x[E]);return b},sY=(b,x)=>oY(b,aY(x)),lY=(b,x)=>{var E={};for(var z in b)vR.call(b,z)&&x.indexOf(z)<0&&(E[z]=b[z]);if(b!=null&&GL)for(var z of GL(b))x.indexOf(z)<0&&mR.call(b,z)&&(E[z]=b[z]);return E},Ix=(b,x,E)=>new Promise((z,te)=>{var re=ce=>{try{le(E.next(ce))}catch(ge){te(ge)}},oe=ce=>{try{le(E.throw(ce))}catch(ge){te(ge)}},le=ce=>ce.done?z(ce.value):Promise.resolve(ce.value).then(re,oe);le((E=E.apply(b,x)).next())});let y2=[{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 uY=b=>{var x=b,{pathsDetail:E,user:z,globalSetting:te,loading:re,dispatch:oe,uuid:le,Tabsdatas:ce,initdata:ge,setactivied:Ae,tpacti:Me}=x,Ue=lY(x,["pathsDetail","user","globalSetting","loading","dispatch","uuid","Tabsdatas","initdata","setactivied","tpacti"]),Xe,$e,rt,ot,pt,yt,Ct,zt;const Wt=(0,Ge.useRef)(),Ht=(0,Ge.useRef)(),Qt=(0,Ge.useRef)(),[Gt,vn]=(0,Ge.useState)([]),[Sn,kn]=(0,Ge.useState)(!0),[Kn,vr]=(0,Ge.useState)([]),[er,Nr]=(0,Ge.useState)(""),[ei,Ar]=(0,Ge.useState)(!1),Sr=(0,Ge.useRef)(null),[Ir,si]=(0,Ge.useState)(),[Cr,wi]=(0,Ge.useState)(!1),[Mo,Po]=(0,Ge.useState)([]);let[eo,Ui]=(0,Ge.useState)(!1);const[fo,Uo]=(0,Ge.useState)(!1),[pa,Ga]=(0,Ge.useState)(!1),[kl,al]=(0,Ge.useState)([]),[Fa,tl]=(0,Ge.useState)(!1),[Ps,rl]=(0,Ge.useState)([]),[gl]=(0,ke.useSearchParams)(),[fu,$l]=(0,Ge.useState)(!1),[Xa,ms]=(0,Ge.useState)(0),[$o,va]=(0,Ge.useState)("\u5168\u90E8");let[Oa,js]=(0,Ge.useState)({page:1,limit:10});const[aa,cl]=(0,Ge.useState)({}),[Hs,Gu]=(0,Ge.useState)([]),hu=(0,Ge.useRef)(null),bu=(0,Ge.useRef)(null),[Pu,gu]=(0,Ge.useState)(!1);(0,Ge.useEffect)(()=>(eo=!1,Ui(!1),Mc(2),Ze.ZP.config({getContainer:()=>Sr.current}),()=>{kn(!1),vr([]),wi(!1),Nr("")}),[le]);const Qc=()=>ua.createElement("div",{className:Th.studentHead},ua.createElement("div",{className:Th.headLi},ua.createElement("img",{src:dt}),ua.createElement("aside",null,ua.createElement("span",null,"\u8D44\u6E90\u603B\u6570"),ua.createElement("b",null,aa==null?void 0:aa.resource_count))),ua.createElement("div",{className:Th.headLi},ua.createElement("img",{src:Mt}),ua.createElement("aside",null,ua.createElement("span",null,"\u5B66\u4E60\u5B8C\u6210\u7387"),ua.createElement("b",{style:{color:"#F7B500"}},aa==null?void 0:aa.complete_rate,"%"))),ua.createElement("div",{className:Th.headLi},ua.createElement("img",{src:wt}),ua.createElement("aside",null,ua.createElement("span",null,"\u5B66\u4E60\u638C\u63E1\u7387"),ua.createElement("b",{style:{color:"#3AFFC8"}},aa==null?void 0:aa.grasp_rate,"%"))),ua.createElement("div",{className:Th.headLi},ua.createElement("img",{src:rn}),ua.createElement("aside",null,ua.createElement("span",{style:{marginBottom:"10rem"}},"\u4E0A\u6B21\u5B66\u5230"),ua.createElement(Wn.Z,{title:aa==null?void 0:aa.last_knowledge_name},ua.createElement("b",{style:{color:"#7FAAFF",fontSize:"16rem"}},(0,Yt.Pq)(aa==null?void 0:aa.last_knowledge_name,13))))),ua.createElement("div",{onClick:()=>handleClickDetails({knowledge_uuid:aa==null?void 0:aa.last_knowledge_uuid}),className:Th.btn},"\u7EE7\u7EED\u5B66\u4E60")),Dp={onRemove:()=>{al([])},beforeUpload:Ea=>{if(console.log(Ea),(Ea==null?void 0:Ea.size)>1024*1024*50)return Ze.ZP.info("\u6587\u4EF6\u8D85\u8FC750M\uFF0C\u4E0D\u7B26\u5408\u4E0A\u4F20\u8981\u6C42"),!1;let Os=[];return Os.push(Ea),al([...Os]),!1},fileList:kl,accept:".xls,.xlsx"};(0,Ge.useEffect)(()=>{},[eo]),(0,Ge.useEffect)(()=>(window.addEventListener("resize",Ip),()=>{window.removeEventListener("resize",Ip)}),[]);function Ip(){var Ea,Os;(Os=(Ea=Wt.current)==null?void 0:Ea.update)==null||Os.call(Ea)}function Mc(Ea){return Ix(this,null,function*(){var Os,Fl,Pl,Ml,Nd,wv,mm,u1,aA,Nx,$S;$l(!0);let i0=yield(0,ie.ZP)("/api/knowledge/v2/get_node.json",{method:"get",params:{nodeUuid:le,subject_id:(Os=E==null?void 0:E.detail)==null?void 0:Os.id,depth:Ea===0?Ea:Ea||-1,relationshipFilter:"\u5305\u542B>"}});if($l(!1),(i0==null?void 0:i0.status)===0){if(gl.get("type")==="classrooms"?oe({type:"pathsDetail/getCourseDetail",payload:oA({id:(Fl=E==null?void 0:E.detail)==null?void 0:Fl.id,knowledge:!0},(0,Yt.oP)())}):oe({type:"pathsDetail/getPathsDetail",payload:oA({id:(Pl=E==null?void 0:E.detail)==null?void 0:Pl.id,knowledge:!0},(0,Yt.oP)())}),eo){Ht.current.getData();return}kn(!0);let O0=(0,Yt.fX)((Nd=(Ml=i0==null?void 0:i0.data)==null?void 0:Ml.nodes)==null?void 0:Nd.map((us,gf)=>{var sp,zf,dy,Bx,sA,JL,x2,qL,E2,N0,$L,sl,B0,eT,tT,nT;return sY(oA(oA({},us),us==null?void 0:us.properties),{rootNodeUuid:(sp=us==null?void 0:us.properties)==null?void 0:sp.rootNodeUuid,id:(zf=us==null?void 0:us.properties)==null?void 0:zf.uuid,name:(dy=us==null?void 0:us.properties)==null?void 0:dy.name,labelstype:(Bx=us==null?void 0:us.labels)==null?void 0:Bx[1],description:(sA=us==null?void 0:us.properties)==null?void 0:sA.description,nodeType:(JL=us==null?void 0:us.properties)==null?void 0:JL.nodeType,colornodeType:parseInt((x2=us==null?void 0:us.properties)==null?void 0:x2.color)===1?"\u6839\u8282\u70B9":((qL=y2==null?void 0:y2.find(h1=>{var ym;return(h1==null?void 0:h1.name)===((ym=us==null?void 0:us.properties)==null?void 0:ym.nodeType)}))==null?void 0:qL.name)||"\u5176\u4ED6",newcolor:parseInt((E2=us==null?void 0:us.properties)==null?void 0:E2.color)===1?"#CC7CF5":((N0=y2==null?void 0:y2.find(h1=>{var ym;return(h1==null?void 0:h1.name)===((ym=us==null?void 0:us.properties)==null?void 0:ym.nodeType)}))==null?void 0:N0.color)||"#2D947C",tags:(($L=us==null?void 0:us.properties)==null?void 0:$L.tags)&&((eT=(B0=(sl=us==null?void 0:us.properties)==null?void 0:sl.tags)==null?void 0:B0.split("\uFF0C"))==null?void 0:eT.map(h1=>({name:h1})))||[],colorType:parseInt((tT=us==null?void 0:us.properties)==null?void 0:tT.color)>3?"3":(nT=us==null?void 0:us.properties)==null?void 0:nT.color})}),(mm=(wv=i0==null?void 0:i0.data)==null?void 0:wv.relationships)==null?void 0:mm.filter(us=>us.type==="\u5305\u542B"));console.log("----types",O0,i0==null?void 0:i0.data);let pc=aI(O0),Hu=(u1=pc.nodes)==null?void 0:u1.filter((us,gf,sp)=>gf===sp.findIndex(zf=>zf.id===us.id));vn(Hu);let Lc=(aA=pc.edges)==null?void 0:aA.filter((us,gf,sp)=>gf===sp.findIndex(zf=>zf.source===us.source&&zf.target===us.target));Hu.map(us=>(us.transformd=!0,us.style={labelWordWrap:!0,labelPlacement:us.depth===0?"center":us.depth<3?"top-left":"top",haloLineWidth:Math.max(20-us.depth*6,0),labelMaxWidth:us.depth===0?300:200,labelFontSize:us.depth===0?22:Hu.length>300?12:14,labelLineHeight:100,halo:us.depth<3},us)),Qt.current=null;let $h=Hu==null?void 0:Hu.length;Qt.current=new JS({container:bu.current,autoResize:!0,background:"#010A23",autoFit:{type:Hu.length>50?"view":"center",options:{direction:"both",when:"always"}},animation:!1,padding:50,data:{nodes:Hu,edges:Lc},node:{type:"circle",style:{size:us=>us.colorType==1?100:us.depth<2?50:$h>250?10:20,fill:us=>us.newcolor,labelText:us=>us.name,labelFill:"#ffffff"},state:{highlight:{stroke:"transparent"},selected:{stroke:"transparent"},inactive:{fill:us=>us.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:Hu.length>250?360:240,direction:"RL",unitRadius:90,linkDistance:200,preventOverlap:!0,maxPreventOverlapIteration:100,strictRadial:!1}],plugins:[{type:"tooltip",enable:us=>us.targetType==="node",getContent:(us,gf)=>{let sp="";return gf.forEach(zf=>{sp+=`
    ${zf.name||""}
    `}),sp}}],behaviors:["drag-canvas",{type:"zoom-canvas",onFinish:()=>{setTimeout(()=>{var us;ms((((us=Qt==null?void 0:Qt.current)==null?void 0:us.getZoom())*100).toFixed(0))},300)}},"drag-element",{type:"collapse-expand",onExpand:(us,gf)=>{console.log("----",us,gf)}},{type:"fix-element-size",state:"fix-element-size",enable:!0},{type:"click-select",state:"selected",onClick:us=>{hu.current?(clearTimeout(hu.current),hu.current=null):hu.current=setTimeout(()=>{let gf=Hu.filter(sp=>{var zf,dy;return(sp==null?void 0:sp.id)===((dy=(zf=us.target)==null?void 0:zf.config)==null?void 0:dy.id)});if((gf==null?void 0:gf.length)===0){wi(!1);return}si(gf==null?void 0:gf[0]),wi(!0),us.view.setCursor("pointer"),hu.current=null},300)},multiple:!1},{type:"hover-activate",enable:us=>us.targetType==="node",degree:1,state:"highlight",direction:"both",inactiveState:"inactive",onHover:us=>{us.view.setCursor("pointer")},onHoverEnd:us=>{us.view.setCursor("default")}}],transforms:[{type:"place-radial-labels"}]}),Qt.current.render(),bu.current.style.opacity=1,(Nx=Qt==null?void 0:Qt.current)==null||Nx.fitView(),setTimeout(()=>{var us;ms((((us=Qt==null?void 0:Qt.current)==null?void 0:us.getZoom())*100).toFixed(0))},300);var c1=Qt.current.getOptions();setTimeout(()=>{c1.animation=!0,Qt.current.setOptions(c1)},2500),window.graphsRef=Qt.current}let ap=yield(0,ie.ZP)("/api/knowledge_items.json",{method:"get",params:{item_type:3,subject_id:($S=E==null?void 0:E.detail)==null?void 0:$S.id}});(ap==null?void 0:ap.status)===0&&Gu(ap==null?void 0:ap.data)})}const ch=(Ea,Os)=>{if(Qt.current){if(eo){Ht.current.onMouse(Ea,Os.name);return}try{const Fl={},Pl={};Qt.current.getEdgeData().map(Ml=>{Fl[Ml.id]=Ea==="Enter"?"inactive":"active"}),Qt.current.getNodeData().map(Ml=>{Ea==="Enter"?Pl[Ml.id]=Ml.colornodeType===Os.name?"highlight":"inactive":Pl[Ml.id]="active"}),Qt.current.setElementState(Fl),Qt.current.setElementState(Pl)}catch(Fl){}}},jg=(Ea,Os)=>{if(Qt.current){if(eo){Ht.current.onMouse(Ea,Os.name);return}try{const Fl={},Pl={};Qt.current.getEdgeData().map(Ml=>{Fl[Ml.id]=Ea==="Enter"?"inactive":"active"}),Qt.current.getNodeData().map(Ml=>{var Nd,wv;Ea==="Enter"?Pl[Ml.id]=(wv=(Nd=Ml.tags)==null?void 0:Nd.map(mm=>mm==null?void 0:mm.name))!=null&&wv.includes(Os.name)?"highlight":"inactive":Pl[Ml.id]="active"}),Qt.current.setElementState(Fl),Qt.current.setElementState(Pl)}catch(Fl){}}};return ua.createElement(ye.Z,{spinning:fu},ua.createElement("div",{ref:Sr,style:{background:"#010A23",height:"100vh",overflow:"hidden",position:"relative"}},ua.createElement("div",{style:{color:"#fff",display:"flex",alignItems:"center",marginLeft:"10rem",position:"fixed",bottom:"30px",zIndex:1}},(Xe=y2.filter(Ea=>{var Os;return(Os=Gt==null?void 0:Gt.map(Fl=>Fl==null?void 0:Fl.colornodeType))==null?void 0:Os.includes(Ea==null?void 0:Ea.name)}))==null?void 0:Xe.map(Ea=>ua.createElement("div",{onMouseLeave:()=>ch("Leave",Ea),onMouseEnter:()=>ch("Enter",Ea),style:{display:"flex",alignItems:"center",margin:"0 2px",cursor:"pointer"}},ua.createElement("span",{style:{display:"inline-flex",marginLeft:"10rem",width:"20rem",height:"20rem",borderRadius:"50%",background:Ea.color}}),ua.createElement("span",{style:{marginLeft:"5rem"}},Ea==null?void 0:Ea.name)))),ua.createElement("div",{style:{color:"#fff",display:"flex",alignItems:"center",marginLeft:"10rem",position:"fixed",bottom:"30px",zIndex:1,right:40}},ua.createElement(In.Z,{overlayClassName:Th.dropdownst,getPopupContainer:()=>Sr.current,menu:{items:[{label:ua.createElement("div",{onClick:()=>{Mc()}},"\u5C55\u5F00\u5168\u90E8"),key:"1"},{label:ua.createElement("div",{onClick:()=>{Mc(3)}},"\u5C55\u5F003\u5C42"),key:"2"},{label:ua.createElement("div",{onClick:()=>{Mc(2)}},"\u5C55\u5F002\u5C42"),key:"3"},{label:ua.createElement("div",{onClick:()=>{Mc(1)}},"\u5C55\u5F001\u5C42"),key:"4"},{label:ua.createElement("div",{onClick:()=>{Mc(0)}},"\u6536\u8D77\u5168\u90E8"),key:"5"}]}},ua.createElement("img",{style:{cursor:"pointer"},onClick:()=>{},src:Pu===7?"/images/xscjxz.png":"/images/xscj.png",onMouseOut:()=>{gu(!1)},onMouseOver:()=>{gu(7)}})),ua.createElement(Wn.Z,{title:"\u5C45\u4E2D\u663E\u793A"},ua.createElement("img",{onClick:()=>{kn(!1),Mc()},style:{marginLeft:"10rem",cursor:"pointer"},src:Pu===8?"/images/jzxsxz.png":"/images/jzxs.png",onMouseOut:()=>{gu(!1)},onMouseOver:()=>{gu(8)},className:Th.img})),ua.createElement("div",{style:{marginLeft:"10rem",background:"#202F4F",borderRadius:"4px",alignItems:"center"}},ua.createElement("img",{style:{cursor:"pointer"},onClick:()=>{eo?(Ht.current.zoomBy(.9),Ht.current.getZooms()):(Qt.current.zoomBy(.9),setTimeout(()=>{var Ea;ms((((Ea=Qt==null?void 0:Qt.current)==null?void 0:Ea.getZoom())*100).toFixed(0))},300))},src:Pu===9?"/images/newsxxz.png":"/images/newsx.png",onMouseOut:()=>{gu(!1)},onMouseOver:()=>{gu(9)}}),ua.createElement("span",{style:{display:"inline-flex",width:"46px",justifyContent:"center"},onClick:()=>{}}," ",Xa+"%"),ua.createElement("img",{style:{cursor:"pointer"},onClick:()=>{eo?(Ht.current.zoomBy(1.1),Ht.current.getZooms()):(Qt.current.zoomBy(1.1),setTimeout(()=>{var Ea;ms((((Ea=Qt==null?void 0:Qt.current)==null?void 0:Ea.getZoom())*100).toFixed(0))},300))},src:Pu===12?"/images/newfdxz.png":"/images/newfd.png",onMouseOut:()=>{gu(!1)},onMouseOver:()=>{gu(12)}}))),ua.createElement("div",{style:{display:"flex",justifyContent:"start",width:"1840rem",left:"40rem",paddingTop:"25rem",position:"absolute",zIndex:1}},ua.createElement("span",{className:Th.tupugx,onClick:()=>{Ae()}},ua.createElement("img",{src:"/images/tpgx.svg",style:{marginRight:"10rem",width:"16rem"}}),"\u56FE\u8C31\u5173\u7CFB"),ua.createElement("div",{className:Th.autocomp},Sn&&ua.createElement("div",{style:{display:"flex",alignItems:"center"}},ua.createElement(Ti.Z,{className:Th.autocompwidth,options:Kn,popupClassName:Th.autopop,getPopupContainer:()=>Sr.current,value:er,onSelect:(Ea,Os)=>{var Fl;if(Nr(Gt.find(Pl=>Pl.id===Ea).name),si(Gt.find(Pl=>Pl.id===Ea)),wi(!0),eo)Ht.current.selectall(Ea);else{let Pl=Qt.current.getElementDataByState("node","selected");(Pl==null?void 0:Pl.length)>0&&Qt.current.setElementState((Fl=Pl==null?void 0:Pl[0])==null?void 0:Fl.id,[""]),Qt.current.setElementState(Ea,["selected"])}},onChange:Ea=>{Nr(Ea)},onSearch:Ea=>{vr(()=>{var Os,Fl,Pl;return $o==="\u5168\u90E8"?(Os=Gt==null?void 0:Gt.filter(Ml=>Ml.name.includes(Ea)))==null?void 0:Os.map(Ml=>({label:ua.createElement("div",{style:{display:"flex",alignItems:"center"}},ua.createElement("span",{style:{marginRight:"10rem",height:"20rem",lineHeight:"20rem",padding:"0rem 6rem",color:"#fff",fontSize:"12rem",background:"#1890FF",borderRadius:"2rem"}},Ml==null?void 0:Ml.nodeType)," ",ua.createElement("div",{style:{color:"#fff"},dangerouslySetInnerHTML:{__html:Ml==null?void 0:Ml.name.replaceAll(Ea,`${Ea}`)}})),value:Ml==null?void 0:Ml.id})):(Pl=(Fl=Gt==null?void 0:Gt.filter(Ml=>{var Nd;return(Nd=Ml==null?void 0:Ml.tags)==null?void 0:Nd.find(wv=>wv.name===$o)}))==null?void 0:Fl.filter(Ml=>Ml.name.includes(Ea)))==null?void 0:Pl.map(Ml=>({label:ua.createElement("div",{style:{display:"flex",alignItems:"center"}},ua.createElement("span",{style:{marginRight:"10rem",height:"20rem",padding:"2rem 6rem",color:"#fff",fontSize:"12rem",background:"#1890FF",borderRadius:"2rem"}},Ml==null?void 0:Ml.nodeType)," ",ua.createElement("div",{style:{color:"#fff"},dangerouslySetInnerHTML:{__html:Ml==null?void 0:Ml.name.replaceAll(Ea,`${Ea}`)}})),value:Ml==null?void 0:Ml.id}))})}},ua.createElement(je.default,{placeholder:"\u8BF7\u8F93\u5165\u5173\u952E\u8BCD\u641C\u7D22",addonBefore:ua.createElement(In.Z,{overlayClassName:Th.dropdownst,menu:{items:[{label:ua.createElement("div",{onClick:()=>{va("\u5168\u90E8"),jg("\u5168\u90E8","")}},"\u5168\u90E8"),key:"1"},...Hs==null?void 0:Hs.map(Ea=>({label:ua.createElement("div",{onClick:()=>{va(Ea.name),jg("Enter",Ea)}},Ea==null?void 0:Ea.name),key:Ea.id}))]}},ua.createElement("div",{style:{display:"flex",alignItems:"center"}},ua.createElement("div",{className:Th.textname,style:{width:"60rem"}},$o),ua.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"}})))})))),ua.createElement("div",{style:{display:"flex",position:"absolute",right:"0rem",zIndex:"3"}},(($e=E==null?void 0:E.detail)==null?void 0:$e.sync_uuid)&&((rt=E==null?void 0:E.detail)==null?void 0:rt.sync_uuid)===le&&((ot=E==null?void 0:E.detail)==null?void 0:ot.can_managed)&&ua.createElement(Wn.Z,{title:"\u540C\u6B65"},ua.createElement("img",{className:"current",onClick:(0,Ro.debounce)(()=>{Oe.default.confirm({title:"\u63D0\u793A",icon:null,centered:!0,getContainer:()=>Sr.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:()=>Ix(void 0,null,function*(){var Ea,Os;const Fl=(Ea=ce==null?void 0:ce.find(Ml=>(Ml==null?void 0:Ml.uuid)===le))==null?void 0:Ea.name;let Pl=yield(0,ie.ZP)("/api/knowledge/v2/sync.json",{method:"post",body:{subject_id:(Os=E==null?void 0:E.detail)==null?void 0:Os.id,uuid:le,name:Fl}});Pl.status===0&&Ze.ZP.info(Pl==null?void 0:Pl.message)})})},500),src:Pu===1?"/images/gxxz.png":"/images/gx.png",onMouseOut:()=>{gu(!1)},onMouseOver:()=>{gu(1)},style:{width:"40rem",height:"40rem",marginRight:"15rem",marginTop:"5rem"}})),((pt=E==null?void 0:E.detail)==null?void 0:pt.can_managed)&&ua.createElement("div",{className:Th.hoverone},ua.createElement("div",{onClick:()=>Ix(void 0,null,function*(){var Ea;let Os=yield(0,ie.ZP)("/api/knowledge/v2/backup.json",{method:"POST",body:{subject_id:(Ea=E==null?void 0:E.detail)==null?void 0:Ea.id,parentNodeUuid:le}});(Os==null?void 0:Os.status)===0&&Ze.ZP.info("\u56FE\u8C31\u4FDD\u5B58\u6210\u529F")})},ua.createElement("img",{src:Pu===2?"/images/bcbbxz.png":"/images/bcbb.png",onMouseOut:()=>{gu(!1)},onMouseOver:()=>{gu(2)}}),ua.createElement("div",{className:Th.name},"\u4FDD\u5B58\u7248\u672C")),ua.createElement("div",{onClick:()=>Ix(void 0,null,function*(){var Ea;Oa.page=1,Oa.limit=10;let Os=yield(0,ie.ZP)("/api/knowledge/v2/knowledge_histories.json",{mehtod:"get",params:oA({subject_id:(Ea=E==null?void 0:E.detail)==null?void 0:Ea.id,nodeUuid:le},Oa)});js(Oa),(Os==null?void 0:Os.status)===0&&(tl(!0),rl(Os))})},ua.createElement("img",{src:Pu===3?"/images/qhbbxz.png":"/images/qhbb.png",onMouseOut:()=>{gu(!1)},onMouseOver:()=>{gu(3)},className:Th.img}),ua.createElement("div",{className:Th.name},"\u5207\u6362\u7248\u672C"))),ua.createElement("div",{className:Th.hoverone},ua.createElement("div",{onClick:()=>{eo=!1,Ui(!1),kn(!1),Mc()}},ua.createElement("img",{src:Pu===4?"/images/gxtxz.png":"/images/gxt.png",onMouseOut:()=>{gu(!1)},onMouseOver:()=>{gu(4)}}),ua.createElement("div",{className:Th.name},"\u5173\u7CFB\u56FE")),ua.createElement("div",{onClick:()=>{eo=!0,Ui(!0)}},ua.createElement("img",{src:Pu===5?"/images/zssxz.png":"/images/zss.png",onMouseOut:()=>{gu(!1)},onMouseOver:()=>{gu(5)},className:Th.img}),ua.createElement("div",{className:Th.name},"\u77E5\u8BC6\u6811"))),ua.createElement(Wn.Z,{title:"\u5168\u5C4F"},ua.createElement("img",{className:"current",onClick:()=>{var Ea,Os,Fl,Pl;(0,hI.vp)()?(Ar(!1),(0,hI.BU)(),!eo&&Sn?(Ea=Qt==null?void 0:Qt.current)==null||Ea.fitCenter():(Os=Ht==null?void 0:Ht.current)==null||Os.fitView()):(Ar(!0),(0,hI.Dj)(Sr.current),!eo&&Sn?(Fl=Qt==null?void 0:Qt.current)==null||Fl.fitCenter():(Pl=Ht==null?void 0:Ht.current)==null||Pl.fitView())},src:Pu===6?"/images/qpxz.png":"/images/qp.png",onMouseOut:()=>{gu(!1)},onMouseOver:()=>{gu(6)},style:{width:"40rem",height:"40rem",marginRight:"15rem",marginTop:"5rem"}})),((yt=E==null?void 0:E.detail)==null?void 0:yt.can_managed)&&ua.createElement("div",{className:Th.hoverone,style:{marginRight:"0rem"}},ua.createElement("div",{onClick:()=>{Uo(!0)}},ua.createElement("img",{src:Pu===10?"/images/drxz.png":"/images/dr.png",onMouseOut:()=>{gu(!1)},onMouseOver:()=>{gu(10)}}),ua.createElement("div",{className:Th.name},"\u5BFC\u5165")),ua.createElement("div",{onClick:()=>{var Ea;(0,Yt.FH)("",qt.Z.API_SERVER+`/api/knowledge/v2/export.json?subject_id=${(Ea=E==null?void 0:E.detail)==null?void 0:Ea.id}&fileType=xlsx&parentNodeUuid=${le}`)}},ua.createElement("img",{src:Pu===11?"/images/dcxz.png":"/images/dc.png",onMouseOut:()=>{gu(!1)},onMouseOver:()=>{gu(11)},className:Th.img}),ua.createElement("div",{className:Th.name},"\u5BFC\u51FA"))))),Sn&&!eo&&ua.createElement("div",{style:{width:"100%",height:"100vh",opacity:0},ref:bu}),ua.createElement("div",{id:"myDiagramDiv",style:{height:"100vh",width:"100%",visibility:eo?"visible":"hidden"}},eo?ua.createElement(XZ,{ref:Ht,setzoomsize:ms,setshowdetail:wi,setitems:si,nodeUuid:le,subject_id:(Ct=E==null?void 0:E.detail)==null?void 0:Ct.id}):""),ua.createElement(Er,{tpacti:Me,initdata:ge,uuid:le,Tabsdatas:ce,setshow:kn,getData:Mc,containerRef:Sr,showdetail:Cr,setshowdetail:wi,items:Ir}),ua.createElement(Oe.default,{title:"\u6587\u4EF6\u5BFC\u5165",open:fo,centered:!0,getContainer:()=>Sr.current,okButtonProps:{loading:pa},onCancel:()=>{Uo(!1),al([])},onOk:()=>Ix(void 0,null,function*(){var Ea,Os,Fl,Pl;const Ml=new FormData;if(kl.length>0)Ml.append("file",kl[0]);else{Ze.ZP.warning("\u8BF7\u9009\u62E9\u6587\u4EF6");return}Ga(!0),Ml.append("subject_id",((Ea=E.detail)==null?void 0:Ea.id)+""),Ml.append("parentNodeUuid",le);let Nd=yield(0,ie.ZP)("/api/knowledge/v2/import.json",{method:"post",body:Ml},!0);Ga(!1),(Nd==null?void 0:Nd.status)===0&&((Os=Nd==null?void 0:Nd.data)!=null&&Os.importErrorFilePath?Oe.default.confirm({icon:null,title:"\u5BFC\u5165\u5931\u8D25",centered:!0,content:ua.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",ua.createElement("a",{href:`${qt.Z.API_SERVER}${(Fl=Nd==null?void 0:Nd.data)==null?void 0:Fl.importErrorFilePath}`,download:"\u5931\u8D25\u6570\u636E.xlsx"},"\u5BFC\u5165\u5931\u8D25\u7684\u6570\u636E"),"\u67E5\u770B")}):(Mc(),kn(!1),(Pl=Nd==null?void 0:Nd.data)!=null&&Pl.has_route?Ze.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"):Ze.ZP.info("\u5BFC\u5165\u6210\u529F"),al([]),si({}),Uo(!1)))})},(Gt==null?void 0:Gt.length)>0&&ua.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"),ua.createElement("p",{style:{color:"#5F6368"}},"\u6B65\u9AA41\uFF1A",ua.createElement("span",{style:{color:"#000000"}},"\u4E0B\u8F7D"),ua.createElement("a",{href:`${qt.Z.API_SERVER}/api/knowledge/v2/down_template.json`,download:"\u6A21\u7248.xlsx"},"\u77E5\u8BC6\u56FE\u8C31\u5BFC\u5165\u6A21\u7248")),ua.createElement($r.Z,null,ua.createElement(so.Z,{style:{color:"#5F6368"}},"\u6B65\u9AA42\uFF1A",ua.createElement("span",{style:{color:"#000000"}},"\u4E0A\u4F20\u586B\u5199\u597D\u7684\u300A\u77E5\u8BC6\u56FE\u8C31\u5BFC\u5165\u6A21\u7248\u300B"))),ua.createElement($r.Z,{style:{marginTop:10,marginLeft:50}},ua.createElement(qa.default,oA({},Dp),ua.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)"}},ua.createElement("i",{style:{fontSize:12,marginRight:6},className:"iconfont icon-tianjiashitixiaojiahao"})," \u9009\u62E9\u6587\u4EF6")))),ua.createElement(nn,null,ua.createElement(ua.Fragment,null,ua.createElement(Oe.default,{title:"\u7248\u672C\u8BB0\u5F55",centered:!0,width:1200,open:Fa,footer:!1,getContainer:()=>Sr.current,onCancel:()=>{tl(!1)}},ua.createElement(na.default,{dataSource:Ps==null?void 0:Ps.data,pagination:!1,columns:[{title:"\u7248\u672C\u4FDD\u5B58\u65F6\u95F4",dataIndex:"created_at",ellipsis:!0,key:"created_at",render:(Ea,Os)=>ua.createElement("div",null,ua.createElement("span",null,Ea),(Os==null?void 0:Os.is_now_version)&&ua.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:(Ea,Os)=>ua.createElement("div",null,ua.createElement("span",{style:{color:"#1B8565",marginRight:"30rem",cursor:"pointer"},onClick:()=>Ix(void 0,null,function*(){var Fl,Pl;let Ml=yield(0,ie.ZP)(`${Os==null?void 0:Os.url}`,{method:"get"});(Ml==null?void 0:Ml.status)===0&&((Pl=(Fl=Ml==null?void 0:Ml.data)==null?void 0:Fl.nodes)==null?void 0:Pl.length)>0&&Po(Ml==null?void 0:Ml.data)})},"\u67E5\u770B"),ua.createElement("span",{onClick:()=>Ix(void 0,null,function*(){var Fl;if(Os!=null&&Os.is_now_version)return;let Pl=yield(0,ie.ZP)("/api/knowledge/v2/restore.json",{method:"post",body:{subject_id:(Fl=E==null?void 0:E.detail)==null?void 0:Fl.id,backupFilePath:Os==null?void 0:Os.backupFilePath}});(Pl==null?void 0:Pl.status)===0&&(Mc(),tl(!1),kn(!1),Ze.ZP.info("\u5207\u6362\u6210\u529F"))}),style:{color:Os!=null&&Os.is_now_version?"#999999":"#1B8565",cursor:"pointer"}},"\u5207\u6362\u81F3\u5F53\u524D\u7248\u672C"))}]}),ua.createElement(xn.Z,{hideOnSinglePage:!0,style:{marginTop:"20rem"},pageSize:Oa.limit,total:Ps==null?void 0:Ps.total_count,current:Oa.page,onChange:(Ea,Os)=>Ix(void 0,null,function*(){var Fl;Oa.page=Ea,Oa.limit=Os,js(Oa);let Pl=yield(0,ie.ZP)("/api/knowledge/v2/knowledge_histories.json",{mehtod:"get",params:oA({subject_id:(Fl=E==null?void 0:E.detail)==null?void 0:Fl.id,nodeUuid:le},Oa)});(Pl==null?void 0:Pl.status)===0&&(tl(!0),rl(Pl))})})),ua.createElement(Oe.default,{open:((zt=Mo==null?void 0:Mo.nodes)==null?void 0:zt.length)>0,title:"\u5386\u53F2\u56FE\u8C31",width:"1200rem",footer:null,getContainer:()=>Sr.current,destroyOnClose:!0,onCancel:()=>{Po({})}},ua.createElement(rY,{datas:Mo}))))))};var cY=(0,ke.connect)(({pathsDetail:b,user:x,loading:E,globalSetting:z})=>({pathsDetail:b,user:x,globalSetting:z,loading:E.models.index}))(uY),s1={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"},Sv={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 hY="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==",dY="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==",fY="data:image/png;base64,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",gY="data:image/png;base64,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";var pY=Object.defineProperty,vY=Object.defineProperties,mY=Object.getOwnPropertyDescriptors,xR=Object.getOwnPropertySymbols,yY=Object.prototype.hasOwnProperty,xY=Object.prototype.propertyIsEnumerable,ER=(b,x,E)=>x in b?pY(b,x,{enumerable:!0,configurable:!0,writable:!0,value:E}):b[x]=E,HL=(b,x)=>{for(var E in x||(x={}))yY.call(x,E)&&ER(b,E,x[E]);if(xR)for(var E of xR(x))xY.call(x,E)&&ER(b,E,x[E]);return b},VL=(b,x)=>vY(b,mY(x)),EY=({className:b,style:x={},title:E="",childNode:z=[],knowledgeNode:te=[]})=>{const re="rem",oe=[{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}],le=[{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}],ce=(Ue="")=>{if(!Ue)return"-";let Xe=3;return/[\u4e00-\u9fff]/.test(Ue)||(Xe=7),(Ue==null?void 0:Ue.length)>=Xe?(Ue==null?void 0:Ue.slice(0,Xe-1))+"...":Ue},ge=()=>(Array.isArray(te)?te.slice(0,7):Array(7).fill("\u77E5\u8BC6\u70B9")).map(($e,rt)=>{const ot=oe[rt],pt=VL(HL({},ot),{bottom:`${ot.bottom}${re}`,left:`${ot.left}${re}`});return Ge.createElement("div",{key:rt,style:pt,className:Sv.smallBallGather},Ge.createElement("div",{className:Sv.smallBall},Ge.createElement("b",null,ce($e))),Ge.createElement("div",{className:Sv.smallBallDish}))}),Ae=()=>(Array.isArray(z)?z.slice(0,5):Array(5).fill("\u5B50\u8282\u70B9")).map(($e,rt)=>{const ot=le[rt],pt=VL(HL({},ot),{bottom:`${ot.bottom}${re}`,left:`${ot.left}${re}`});return Ge.createElement("div",{key:rt,style:pt,className:Sv.middleBall},Ge.createElement("div",null,Ge.createElement("b",null,ce($e))))}),Me={position:"absolute",zIndex:1,bottom:0,width:"100%"};return Ge.createElement("div",{className:rr()(Sv.box,b),style:x},Ge.createElement("img",{className:Sv.pedestal,style:Me,src:hY}),Ge.createElement("img",{className:Sv.pedestalHover,style:Me,src:dY}),ge(),Ge.createElement("div",{style:{position:"absolute",zIndex:9,bottom:138+re,left:"50%",transform:"translateX(-50%)"},className:Sv.middleBallDish}),Ae(),Ge.createElement("div",{style:{position:"absolute",zIndex:15,bottom:214+re,left:"50%",transform:"translateX(-50%)"},className:Sv.largeBallDish}),Ge.createElement("div",{style:{position:"absolute",zIndex:16,bottom:234+re,left:120+re},className:Sv.largeBall},Ge.createElement("b",null,ce(E))),Ge.createElement("img",{style:VL(HL({},Me),{zIndex:17}),className:Sv.spectrum,src:fY}),Ge.createElement("img",{style:VL(HL({},Me),{zIndex:17}),className:Sv.spectrumHover,src:gY}),Ge.createElement("div",{title:E,style:{position:"absolute",zIndex:18,bottom:304+re,left:0,fontSize:24+re,width:"100%",textAlign:"center"},className:"c-white blod"},(0,Yt.Pq)(E,9)))},AY=Object.defineProperty,SY=Object.defineProperties,wY=Object.getOwnPropertyDescriptors,AR=Object.getOwnPropertySymbols,CY=Object.prototype.hasOwnProperty,bY=Object.prototype.propertyIsEnumerable,SR=(b,x,E)=>x in b?AY(b,x,{enumerable:!0,configurable:!0,writable:!0,value:E}):b[x]=E,wR=(b,x)=>{for(var E in x||(x={}))CY.call(x,E)&&SR(b,E,x[E]);if(AR)for(var E of AR(x))bY.call(x,E)&&SR(b,E,x[E]);return b},CR=(b,x)=>SY(b,wY(x));function PY(b){const x=new Map,E=[];return b.nodes.forEach(z=>{const te=CR(wR({},z.properties),{children:[]});x.set(te.uuid,te)}),b.relationships.forEach(z=>{const te=x.get(z.startNodeUuid),re=x.get(z.endNodeUuid);te&&re&&te.children.push(re)}),b.nodes.forEach(z=>{const te=z.properties;if(!b.relationships.some(le=>le.startNodeUuid===te.uuid||le.endNodeUuid===te.uuid))return;b.relationships.some(le=>le.endNodeUuid===te.uuid)||E.push(x.get(te.uuid))}),E.length===1?E[0]:E}function bR(b,x){const E=new Set,z=[];return b.forEach(te=>{const re=te[x[0]],oe=te[x[1]];if(!re||!oe)return;const le=`${re}-${oe}`,ce=`${oe}-${re}`;re!==oe&&!E.has(le)&&!E.has(ce)&&(z.push(te),E.add(le),E.add(ce))}),z}const MY=(b,x)=>{const E=b==null?void 0:b.map(te=>{const re=oe=>{let le=[oe.uuid];return oe.children.forEach(ce=>{le=le.concat(re(ce))}),le};return re(te)});return x.map(te=>{let re,oe;return E.forEach(le=>{le.includes(te.startNodeUuid)&&(re=le[0]),le.includes(te.endNodeUuid)&&(oe=le[0])}),CR(wR({},te),{firstStartNodeUuid:re,firstEndNodeUuid:oe})})};var _f=Be(59301),LY=({data:b})=>{const x=(0,Ge.useRef)(),E=(0,Ge.useRef)();function z(oe,le,ce){let ge,Ae;switch(le){case"top":ge=Math.ceil(oe.left+oe.width/2-ce.left),Ae=Math.ceil(oe.top-ce.top);break;case"bottom":ge=Math.ceil(oe.left+oe.width/2-ce.left),Ae=Math.ceil(oe.bottom-ce.top+15);break;case"left":ge=Math.ceil(oe.left-ce.left-10),Ae=Math.ceil(oe.top+oe.height/2-ce.top+80);break;case"right":ge=Math.ceil(oe.right-ce.left+10),Ae=Math.ceil(oe.top+oe.height/2-ce.top+50);break}return{x:ge,y:Ae}}function te(oe,le){const ce={x:parseInt(oe.left+oe.width/2),y:parseInt(oe.top+oe.height/2)},ge={x:parseInt(le.left+le.width/2),y:parseInt(le.top+le.height/2)},Ae=ge.x-ce.x,Me=ge.y-ce.y;let Ue,Xe;return Math.abs(Ae)>Math.abs(Me)?(Ue=Ae>0?"right":"left",Xe=Ae>0?"left":"right"):(Ue=Me>0?"bottom":"top",Xe=Me>0?"top":"bottom"),{startEdge:Ue,endEdge:Xe}}function re(){let oe=b;if(!(oe!=null&&oe.length))return;const le=document.getElementById("lineContainer"),ce=document.getElementById("parentContainer").getBoundingClientRect();le.querySelectorAll("line").forEach(ge=>ge.remove()),oe.forEach(ge=>{const Ae=document.getElementById(ge.from),Me=document.getElementById(ge.to),Ue=Ae.getBoundingClientRect(),Xe=Me.getBoundingClientRect();let{startEdge:$e,endEdge:rt}=ge;if(!$e||!rt){const Ct=te(Ue,Xe);$e=$e||Ct.startEdge,rt=rt||Ct.endEdge}const ot=z(Ue,$e,ce),pt=z(Xe,rt,ce),yt=document.createElementNS("http://www.w3.org/2000/svg","line");if(yt.setAttribute("x1",ot.x+ge.offsetStart.x),yt.setAttribute("y1",ot.y+ge.offsetStart.y),yt.setAttribute("x2",ot.x+ge.offsetStart.x+.01),yt.setAttribute("y2",ot.y+ge.offsetStart.y),yt.setAttribute("stroke",`url(#${ge.gradient})`),yt.setAttribute("stroke-width","2"),ge.dashed&&yt.setAttribute("stroke-dasharray","5, 5"),ge.arrow==="start"?yt.setAttribute("marker-start",ge!=null&&ge.animated?"url(#triangle-start-h)":"url(#triangle-start)"):ge.arrow==="end"?yt.setAttribute("marker-end",ge!=null&&ge.animated?"url(#triangle-end-h)":"url(#triangle-end)"):ge.arrow==="both"&&(yt.setAttribute("marker-start",ge!=null&&ge.animated?"url(#triangle-start-h)":"url(#triangle-start)"),yt.setAttribute("marker-end",ge!=null&&ge.animated?"url(#triangle-end-h)":"url(#triangle-end)")),ge.animated){yt.classList.add("dashed-line");const Ct=document.createElementNS("http://www.w3.org/2000/svg","animate");Ct.setAttribute("attributeName","x2"),Ct.setAttribute("from",ot.x+ge.offsetStart.x),Ct.setAttribute("to",pt.x+ge.offsetEnd.x+.01),Ct.setAttribute("dur","1s"),Ct.setAttribute("fill","freeze"),yt.appendChild(Ct);const zt=document.createElementNS("http://www.w3.org/2000/svg","animate");zt.setAttribute("attributeName","y2"),zt.setAttribute("from",ot.y+ge.offsetStart.y),zt.setAttribute("to",pt.y+ge.offsetEnd.y),zt.setAttribute("dur","1s"),zt.setAttribute("fill","freeze"),yt.appendChild(zt)}else yt.setAttribute("x2",pt.x+ge.offsetEnd.x+.01),yt.setAttribute("y2",pt.y+ge.offsetEnd.y);le.appendChild(yt)})}return(0,Ge.useEffect)(()=>{b!=null&&b.length&&re()},[b]),(0,Ge.useEffect)(()=>(window.addEventListener("resize",()=>re),window.addEventListener("scroll",()=>re),()=>{window.removeEventListener("resize",re),window.removeEventListener("scroll",re)}),[]),_f.createElement(_f.Fragment,null,_f.createElement("svg",{id:"lineContainer",style:{width:"100%",height:"100%",position:"absolute",top:0,left:0}}),_f.createElement("svg",null,_f.createElement("defs",null,_f.createElement("linearGradient",{id:"gradient1",x1:"0%",y1:"0%",x2:"0%",y2:"100%"},_f.createElement("stop",{"stop-color":"#42BECD",offset:"0%"}),_f.createElement("stop",{"stop-color":"#3C30C6",offset:"100%"})),_f.createElement("linearGradient",{id:"gradient2",x1:"0%",y1:"0%",x2:"100%",y2:"100%"},_f.createElement("stop",{"stop-color":"#2DE1FD",offset:"0%"}),_f.createElement("stop",{"stop-color":"#C7FFB0",offset:"100%"})),_f.createElement("marker",{id:"triangle-start",viewBox:"0 0 10 10",refX:"2",refY:"5",markerWidth:"6",markerHeight:"6",orient:"auto"},_f.createElement("path",{d:"M 10 0 L 0 5 L 10 10 z",fill:"url(#gradient1)"})),_f.createElement("marker",{id:"triangle-end",viewBox:"0 0 10 10",refX:"8",refY:"5",markerWidth:"6",markerHeight:"6",orient:"auto"},_f.createElement("path",{d:"M 0 0 L 10 5 L 0 10 z",fill:"url(#gradient1)"})),_f.createElement("marker",{id:"triangle-start-h",viewBox:"0 0 10 10",refX:"2",refY:"5",markerWidth:"6",markerHeight:"6",orient:"auto"},_f.createElement("path",{d:"M 10 0 L 0 5 L 10 10 z",fill:"url(#gradient2)"})),_f.createElement("marker",{id:"triangle-end-h",viewBox:"0 0 10 10",refX:"8",refY:"5",markerWidth:"6",markerHeight:"6",orient:"auto"},_f.createElement("path",{d:"M 0 0 L 10 5 L 0 10 z",fill:"url(#gradient2)"})))))},TY=Object.defineProperty,DY=Object.defineProperties,IY=Object.getOwnPropertyDescriptors,PR=Object.getOwnPropertySymbols,OY=Object.prototype.hasOwnProperty,NY=Object.prototype.propertyIsEnumerable,MR=(b,x,E)=>x in b?TY(b,x,{enumerable:!0,configurable:!0,writable:!0,value:E}):b[x]=E,LR=(b,x)=>{for(var E in x||(x={}))OY.call(x,E)&&MR(b,E,x[E]);if(PR)for(var E of PR(x))NY.call(x,E)&&MR(b,E,x[E]);return b},BY=(b,x)=>DY(b,IY(x)),TR=(b,x,E)=>new Promise((z,te)=>{var re=ce=>{try{le(E.next(ce))}catch(ge){te(ge)}},oe=ce=>{try{le(E.throw(ce))}catch(ge){te(ge)}},le=ce=>ce.done?z(ce.value):Promise.resolve(ce.value).then(re,oe);le((E=E.apply(b,x)).next())}),RY=({subjectId:b,setActivated:x,onAddSuccess:E})=>{const z=(0,ke.useSelector)(Sr=>Sr),{pathsDetail:{detail:te={}}}=z,[re]=Ie.default.useForm(),[oe,le]=(0,Ge.useState)(""),[ce,ge]=(0,Ge.useState)(!1),[Ae,Me]=(0,Ge.useState)(!0),[Ue,Xe]=(0,Ge.useState)(!1),[$e,rt]=(0,Ge.useState)([]),[ot,pt]=(0,Ge.useState)([]),[yt,Ct]=(0,Ge.useState)(null),[zt,Wt]=(0,Ge.useState)(),Ht=(0,Ge.useRef)(),Qt=(0,Ge.useRef)();let Gt=(0,Ge.useRef)().current,vn=(0,Ge.useRef)().current,Sn=(0,Ge.useRef)(!1).current;const kn=te==null?void 0:te.edit_of_subject_knowledge;(0,Ge.useEffect)(()=>{b&&Kn()},[b]);const Kn=()=>TR(void 0,null,function*(){var Sr,Ir,si,Cr,wi;Me(!0);const Mo=yield(0,ie.ZP)("/api/knowledge/v2/get_node.json",{method:"get",params:{depth:-1,subject_id:b}});if(Mo.status===0){le((Cr=(si=(Ir=(Sr=Mo==null?void 0:Mo.data)==null?void 0:Sr.nodes)==null?void 0:Ir[0])==null?void 0:si.properties)==null?void 0:Cr.uuid);const Po=((wi=Mo==null?void 0:Mo.data)==null?void 0:wi.relationships)||[];let eo=[],Ui=[];Po==null||Po.forEach(Ga=>{["\u5173\u8054"].includes(Ga.type)?eo.push(Ga):["\u5305\u542B"].includes(Ga.type)&&Ui.push(Ga)}),eo=bR(eo,["startNodeUuid","endNodeUuid"]);const fo=BY(LR({},Mo==null?void 0:Mo.data),{relationships:Ui}),Uo=PY(fo);let pa=MY((Uo==null?void 0:Uo.children)||[],eo);console.log(pa,3),pa=bR(pa,["firstStartNodeUuid","firstEndNodeUuid"]),rt((Uo==null?void 0:Uo.children)||[]),pt(pa),console.log(pa,Uo==null?void 0:Uo.children,222)}Me(!1)});(0,Ge.useEffect)(()=>{ot!=null&&ot.length&&Wt(ot.map(Sr=>({from:Sr.firstStartNodeUuid,to:Sr.firstEndNodeUuid,animated:!1,dashed:!0,arrow:"both",offsetStart:{x:0,y:0},offsetEnd:{x:0,y:1},gradient:"gradient1"})))},[ot]),(0,Ge.useEffect)(()=>{var Sr;zt!=null&&zt.length&&((Sr=zt==null?void 0:zt.map)==null||Sr.call(zt,Ir=>{Ir.animated=Ir.from===yt||Ir.to===yt,Ir.gradient=Ir.from===yt||Ir.to===yt?"gradient2":"gradient1"}),Wt([...zt]))},[yt]);function vr(Sr){var Ir,si;if(!Sn)return;const Cr=Sr.pageY-Gt;(si=(Ir=Ht.current)==null?void 0:Ir.scrollTo)==null||si.call(Ir,0,vn-Cr)}function er(Sr){var Ir;Sn=!0,Gt=Sr.pageY,vn=((Ir=Ht.current)==null?void 0:Ir.scrollTop)||0}function Nr(Sr){Sn=!1}(0,Ge.useEffect)(()=>(document.addEventListener("mousedown",er),document.addEventListener("mousemove",vr),document.addEventListener("mouseup",Nr),()=>{document.removeEventListener("mouseup",Nr),document.removeEventListener("mousemove",vr),document.removeEventListener("mousedown",er)}),[]);const ei=Sr=>TR(void 0,null,function*(){const{nodeType:Ir,description:si,name:Cr,tags:wi}=Sr;Xe(!0);const Mo=yield(0,ie.ZP)("/api/knowledge/v2/add_node.json",{method:"POST",body:{label:"\u56FE\u8C31",subject_id:b,properties:{description:si,rootNodeUuid:oe,name:Cr,nodeType:Ir[0],tags:(wi==null?void 0:wi.join("\uFF0C"))||"",color:"1"},relationships:[{startNodeUuid:oe,type:"\u5305\u542B"}]}});(Mo==null?void 0:Mo.status)===0&&(ge(!1),Kn(),E()),Xe(!1)}),Ar=()=>{const Sr=[],Ir=$e==null?void 0:$e.map((Cr,wi)=>{var Mo;let Po;const eo=wi+1,Ui=Sr.length-3,fo=Sr[Ui];eo%3===1&&(Po={top:fo!==void 0?`${parseFloat(fo==null?void 0:fo.top)+600}rem`:"100rem",left:"50%",marginLeft:"-146rem"}),eo%3===2&&(Po={top:fo!==void 0?`${parseFloat(fo==null?void 0:fo.top)+600}rem`:"380rem",left:0}),eo%3===0&&(Po={top:fo!==void 0?`${parseFloat(fo==null?void 0:fo.top)+600}rem`:"380rem",right:0}),Sr.push(Po);let Uo=[],pa=(Mo=Cr==null?void 0:Cr.children)==null?void 0:Mo.map(Ga=>{var kl;return Ga!=null&&Ga.children&&((kl=Ga==null?void 0:Ga.children)==null||kl.forEach(al=>{Uo.push(al.name)})),Ga.name});return pa.length>5&&(pa[0]="..."),Uo.length>7&&(Uo[0]="..."),Ge.createElement("div",{className:s1.listItem,key:wi,onMouseEnter:()=>Ct(Cr==null?void 0:Cr.uuid),onMouseLeave:()=>Ct(null),id:Cr==null?void 0:Cr.uuid,onClick:()=>x(Cr==null?void 0:Cr.uuid),style:LR({position:"absolute",zIndex:10},Po)},Ge.createElement(EY,{childNode:pa,knowledgeNode:Uo,title:Cr==null?void 0:Cr.name}))}),si=parseFloat(Sr[Sr.length-1].top)+352+80+"rem";return Ge.createElement("div",{ref:Qt,style:{height:si}},Ir)};return Ge.createElement(nn,null,Ge.createElement("div",{className:s1.wrap},Ae&&Ge.createElement(ye.Z,{style:{width:"100%",marginTop:"300rem"},spinning:Ae}),!Ae&&Ge.createElement(Ge.Fragment,null,kn&&Ge.createElement("div",{className:s1.add,onClick:()=>ge(!0)},Ge.createElement("i",{className:"iconfont icon-tianjiatixing"})),$e!=null&&$e.length?Ge.createElement("div",{className:s1.dimensionalBall,ref:Ht},Ge.createElement("div",{className:s1.archer,id:"parentContainer"},Ar(),Ge.createElement(LY,{data:zt}))):Ge.createElement(Rt,{text:"\u6682\u65E0\u56FE\u8C31\uFF0C\u7ACB\u5373\u65B0\u5EFA\u4E00\u4E2A\u56FE\u8C31\u5427\uFF5E",textColor:"#fff",buttonText:kn&&"\u65B0\u5EFA\u56FE\u8C31",onClick:()=>ge(!0)})),Ge.createElement(Oe.default,{open:ce,centered:!0,width:"1000rem",okText:"\u4FDD\u5B58",onCancel:()=>ge(!1),cancelText:"\u53D6\u6D88",afterClose:()=>{re.resetFields()},confirmLoading:Ue,onOk:()=>re.submit(),title:"\u65B0\u589E\u77E5\u8BC6\u56FE\u8C31"},Ge.createElement("div",{className:s1.modal},Ge.createElement("div",{className:s1.mHead},"\u8282\u70B9\u5C5E\u6027"),Ge.createElement(Ie.default,{form:re,scrollToFirstError:!0,layout:"horizontal",colon:!1,size:"large",labelCol:{flex:"110rem"},onFinish:ei,className:s1.form},Ge.createElement(Ie.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"}]},Ge.createElement(je.default,{maxLength:60,showCount:!0,placeholder:"\u8BF7\u8F93\u5165"})),Ge.createElement(Ie.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"}]},Ge.createElement(je.default.TextArea,{maxLength:5e3,showCount:!0,placeholder:"\u8BF7\u8F93\u5165"})),Ge.createElement(Ie.default.Item,{className:s1.mType,label:Ge.createElement("span",null,"\u56FE\u8C31\u7C7B\u578B ",Ge.createElement(Wn.Z,{title:"\u5F53\u524D\u77E5\u8BC6\u56FE\u8C31\u7684\u7C7B\u578B\uFF0C\u5982\uFF1A\u5927\u7EB2\u56FE\u8C31\u3001\u80FD\u529B\u56FE\u8C31"},Ge.createElement(_i.Z,null))),name:"nodeType",rules:[{required:!0,message:"\u8BF7\u9009\u62E9\u8282\u70B9\u7C7B\u578B"}]},Ge.createElement(zr,{subjectId:b,type:1})))))))},jh={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"},kY="data:image/png;base64,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",FY="data:image/png;base64,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",_Y="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",zY="data:image/png;base64,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",jY="data:image/png;base64,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",dI={wave:"wave___rx4XG",fillWrap:"fillWrap___q512j",svgBox:"svgBox___DfbUu"},WY=Object.defineProperty,DR=Object.getOwnPropertySymbols,UY=Object.prototype.hasOwnProperty,GY=Object.prototype.propertyIsEnumerable,IR=(b,x,E)=>x in b?WY(b,x,{enumerable:!0,configurable:!0,writable:!0,value:E}):b[x]=E,HY=(b,x)=>{for(var E in x||(x={}))UY.call(x,E)&&IR(b,E,x[E]);if(DR)for(var E of DR(x))GY.call(x,E)&&IR(b,E,x[E]);return b};const C$=b=>React.createElement("svg",HY({width:449,height:204,xmlns:"http://www.w3.org/2000/svg",xmlnsXlink:"http://www.w3.org/1999/xlink"},b),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 VY="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDQ5IiBoZWlnaHQ9IjIwNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+PGRlZnM+PGxpbmVhckdyYWRpZW50IHgxPSI1MCUiIHkxPSI0MS41MzIlIiB4Mj0iNTEuNDM3JSIgeTI9IjY1LjI1NCUiIGlkPSJjIj48c3RvcCBzdG9wLWNvbG9yPSIjMzRENUEyIiBvZmZzZXQ9IjAlIi8+PHN0b3Agc3RvcC1jb2xvcj0iIzFEOUY3NiIgb2Zmc2V0PSIxMDAlIi8+PC9saW5lYXJHcmFkaWVudD48cGF0aCBpZD0iYSIgZD0iTTAgMGg0NDl2MjA0SDB6Ii8+PC9kZWZzPjxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+PG1hc2sgaWQ9ImIiIGZpbGw9IiNmZmYiPjx1c2UgeGxpbms6aHJlZj0iI2EiLz48L21hc2s+PGcgbWFzaz0idXJsKCNiKSI+PHBhdGggZD0iTTAgNy43MDRjMTQuNjY3IDggMjkuNjY3IDggNDUgMCA2LjUzNy0zLjQxIDIzLjc3Ni0xNC45ODIgNDUgMCAxNyAxMiAyOSA5IDQ1IDBzMzEtOSA0NSAwYzI1IDE3IDM1IDggNDUgMHMzMi4zNDQtNy45MSA0NSAwYzE2IDEwIDMyIDEwIDQ1IDAgMTAuOTQ3LTguNDIgMzMuMTI0LTguNzEgNDUgMCAxNSAxMSAzMS44MzkgMTEuMTM2IDQ1IDAgMTMtMTEgMzAtOS41MTcgNDUgMHMxNSAxNyA0NSAwdjE5Nkgwdi0xOTZaIiBmaWxsPSJ1cmwoI2MpIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtNDApIi8+PHBhdGggZD0iTTAgMTFjMTQuNjY3IDggMjkuNjY3IDggNDUgMCA2LjUzNy0zLjQxIDIzLjc3Ni0xNC45ODIgNDUgMCAxNyAxMiAyOSA5IDQ1IDBzMzEtOSA0NSAwYzI1IDE3IDM1IDggNDUgMHMzMi4zNDQtNy45MSA0NSAwYzE2IDEwIDMyIDEwIDQ1IDAgMTAuOTQ3LTguNDIgMzMuMTI0LTguNzEgNDUgMCAxNSAxMSAzMS44MzkgMTEuMTM3IDQ1IDAgMTMtMTEgMzAtMTAgNDUgMHMxNSAxNyA0NSAwdjE5M0gwVjExWiIgZmlsbD0iIzM4RTVBRSIvPjwvZz48L2c+PC9zdmc+",KY=({percentage:b,size:x=180,unit:E="rem"})=>{const[z,te]=(0,Ge.useState)(["",""]),[re,oe]=(0,Ge.useState)(0),le=(0,Ge.useRef)(null),ce=(0,Ge.useRef)(null);(0,Ge.useEffect)(()=>(le.current&&(clearTimeout(ce.current),ce.current=setTimeout(()=>{var Xe;const $e=re+20;$e+x>((Xe=le.current)==null?void 0:Xe.offsetWidth)-40&&te([...z,""]),oe($e)},200)),()=>{clearTimeout(ce.current)}),[le.current,re]),(0,Ge.useEffect)(()=>(window.addEventListener("resize",ge),()=>{window.removeEventListener("resize",ge)}),[]);const ge=()=>{oe(0)},Ae={width:x+E,height:x+E},Me=148-x*(b/100),Ue=()=>Ge.createElement("img",{src:VY,style:{width:`449${E}`,height:`204${E}`}});return Ge.createElement("div",{className:dI.wave,style:Ae},Ge.createElement("div",{className:dI.fillWrap},Ge.createElement("div",{style:{fontSize:`28${E}`,zIndex:2,color:"#fff"}},b,"%"),Ge.createElement("div",{className:dI.svgBox,ref:le,style:{top:Me+E,transform:`translateX(-${re}px)`}},z.map((Xe,$e)=>Ge.createElement(Ue,{key:$e})))))},l1={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"},ZY=Object.defineProperty,YY=Object.defineProperties,XY=Object.getOwnPropertyDescriptors,OR=Object.getOwnPropertySymbols,QY=Object.prototype.hasOwnProperty,JY=Object.prototype.propertyIsEnumerable,NR=(b,x,E)=>x in b?ZY(b,x,{enumerable:!0,configurable:!0,writable:!0,value:E}):b[x]=E,BR=(b,x)=>{for(var E in x||(x={}))QY.call(x,E)&&NR(b,E,x[E]);if(OR)for(var E of OR(x))JY.call(x,E)&&NR(b,E,x[E]);return b},RR=(b,x)=>YY(b,XY(x)),qY=({dataSource:b=[]})=>{const[x,E]=(0,Ge.useState)([]),[z,te]=(0,Ge.useState)(0),re=(0,Ge.useRef)(String(Math.random()).slice(-6));(0,Ge.useEffect)(()=>{if(b!=null&&b.length){const ge=ce(b),Ae=b.map((Me,Ue)=>RR(BR({value:Me,lineWidth:30,pillarWidth:104+ge[Ue]},le[Ue]),{from:le[Ue].from+re.current,to:le[Ue].to+re.current}));E(Ae),te(z+1)}},[JSON.stringify(b)]),(0,Ge.useEffect)(()=>{z>0&&oe()},[z]),(0,Ge.useEffect)(()=>(window.addEventListener("resize",oe),()=>{window.removeEventListener("resize",oe)}),[z]);const oe=()=>{const ge=x.map((Ae,Me)=>{const{from:Ue,to:Xe}=Ae,$e=document.querySelector(`#${Ue}`),rt=document.querySelector(`#${Xe}`),ot=$e.getBoundingClientRect(),pt=rt.getBoundingClientRect(),yt=Math.abs(pt.left-ot.left);return RR(BR({},Ae),{lineWidth:yt})});E(ge)},le=[{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 ce(ge){const Ae=ge.reduce((Me,Ue)=>Me+Ue,0);return ge.map(Me=>Me/Ae*100)}return Ge.createElement("div",{className:l1.trapezoid},Ge.createElement("div",{className:l1.textBox},x.map((ge,Ae)=>{const{value:Me,lineWidth:Ue,title:Xe,from:$e}=ge,rt=Ae+1;return Ge.createElement("div",{key:Ae,className:l1[`text${rt}`]},Ge.createElement("div",{className:l1.tip},Xe,Ge.createElement("span",null,Me)),Ge.createElement("div",{id:$e,className:l1.line},Ge.createElement("div",{style:{width:Ue},className:l1.l})))})),Ge.createElement("div",{className:l1.pillarBox},x.map((ge,Ae)=>{const{pillarWidth:Me,pillarTitle:Ue,to:Xe}=ge,$e=Ae+1;return Ge.createElement("div",{key:Ae,className:l1[`pillar${$e}`],style:{width:Me+"rem"}},Ge.createElement("span",null,Ue),Ge.createElement("div",{id:Xe,className:l1.point}))})))},Js=Be(59301),$Y=Object.defineProperty,kR=Object.getOwnPropertySymbols,eX=Object.prototype.hasOwnProperty,tX=Object.prototype.propertyIsEnumerable,FR=(b,x,E)=>x in b?$Y(b,x,{enumerable:!0,configurable:!0,writable:!0,value:E}):b[x]=E,fI=(b,x)=>{for(var E in x||(x={}))eX.call(x,E)&&FR(b,E,x[E]);if(kR)for(var E of kR(x))tX.call(x,E)&&FR(b,E,x[E]);return b},nX=(b,x,E)=>new Promise((z,te)=>{var re=ce=>{try{le(E.next(ce))}catch(ge){te(ge)}},oe=ce=>{try{le(E.throw(ce))}catch(ge){te(ge)}},le=ce=>ce.done?z(ce.value):Promise.resolve(ce.value).then(re,oe);le((E=E.apply(b,x)).next())}),rX=({subjectId:b,uuid:x,isAll:E})=>{const[z,te]=(0,Ge.useState)(!1),[re,oe]=(0,Ge.useState)({type:0,course_id:null}),[le,ce]=(0,Ge.useState)(!0),[ge,Ae]=(0,Ge.useState)(!0),[Me,Ue]=(0,Ge.useState)([]),[Xe]=(0,ke.useSearchParams)(),[$e,rt]=(0,Ge.useState)({graphCount:0,tagCount:0,resourceCount:0,proportionCount:0}),ot=[{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)"}}],[pt,yt]=(0,Ge.useState)({averageCompletionRate:0,averageMasteryRate:0,completionRate:[0,0,0],masteryRate:ot});(0,Ge.useEffect)(()=>{z?Ct(re):oe({type:0,course_id:null})},[z]),(0,Ge.useEffect)(()=>{z&&te(!1)},[x]);const Ct=(Qt,Gt=!1)=>nX(void 0,null,function*(){var vn,Sn,kn,Kn,vr,er,Nr,ei,Ar,Sr;Gt?Ae(!0):ce(!0);const Ir=yield(0,ie.ZP)(E?"/api/knowledge/v2/subject_statistics.json":"/api/knowledge/v2/knowledge_statistics.json",{method:"get",params:fI({subject_id:b,parentNodeUuid:x,labels:"\u56FE\u8C31,\u6807\u7B7E,\u8D44\u6E90",depth:-1},Qt)});if((Ir==null?void 0:Ir.status)===0){let si=(vn=Ir==null?void 0:Ir.data)==null?void 0:vn.metricCounters;si=si||[];const Cr={graphCount:((Sn=si.find(eo=>(eo==null?void 0:eo.name)==="\u56FE\u8C31"))==null?void 0:Sn.count)||0,tagCount:((kn=si.find(eo=>(eo==null?void 0:eo.name)==="\u6807\u7B7E"))==null?void 0:kn.count)||0,resourceCount:((Kn=si.find(eo=>(eo==null?void 0:eo.name)==="\u8D44\u6E90"))==null?void 0:Kn.count)||0,proportionCount:(vr=Ir==null?void 0:Ir.data)==null?void 0:vr.resource_rate};let wi=Object.entries((er=Ir==null?void 0:Ir.data)==null?void 0:er.study_grasp_hash).map(([eo,Ui],fo)=>({name:eo,value:Ui,itemStyle:ot[fo].itemStyle}));const Mo={averageCompletionRate:(Nr=Ir==null?void 0:Ir.data)==null?void 0:Nr.study_complete_rate,averageMasteryRate:(ei=Ir==null?void 0:Ir.data)==null?void 0:ei.study_grasp_rate,completionRate:Object.values((Ar=Ir==null?void 0:Ir.data)==null?void 0:Ar.study_complete_hash),masteryRate:wi};console.log(wi,"newMasteryRate");const Po=(Sr=Ir==null?void 0:Ir.courses)==null?void 0:Sr.map(eo=>({label:eo.name,value:eo.id}));Ue(Po),rt(Cr),yt(Mo)}setTimeout(()=>{ce(!1)},500),Ae(!1)}),zt=Qt=>{re.type=Qt,oe(fI({},re)),(Qt!==2||re.course_id)&&Ct(re,!0)},Wt=Qt=>{re.course_id=Qt,oe(fI({},re)),Ct(re,!0)},Ht=[{name:"\u5168\u90E8",id:0},{name:"\u81EA\u4E3B\u5B66\u4E60",id:1},{name:"\u8BFE\u5802\u5B66\u4E60",id:2}];return Js.createElement(nn,null,Js.createElement("div",{className:jh.statistics},Js.createElement("div",{onClick:()=>te(!0),className:jh.noUnfold},Js.createElement("img",{style:{width:"32rem",marginBottom:"4rem"},src:kY}),Js.createElement("span",null,"\u7EDF"),Js.createElement("span",null,"\u8BA1")),Js.createElement("div",{className:jh.wrapBox,style:{right:z?0:"-600rem"}},le&&Js.createElement(ye.Z,{style:{width:"100%",marginTop:"200rem"},spinning:!0}),!le&&Js.createElement(Js.Fragment,null,Js.createElement("div",{className:jh.scrollBox},Js.createElement("div",{className:jh.content},Js.createElement("div",{className:jh.title},Js.createElement("img",{src:FY}),Js.createElement("span",null,"\u56FE\u8C31\u7EDF\u8BA1\u5206\u6790")),Js.createElement($r.Z,{className:jh.box,justify:"space-between"},Js.createElement("div",{className:jh.left},Js.createElement("div",null,Js.createElement("span",null,"\u77E5\u8BC6\u56FE\u8C31\u6570\u91CF"),Js.createElement("b",null,$e==null?void 0:$e.graphCount)),Js.createElement("div",{style:{margin:"18rem 0"}},Js.createElement("span",null,"\u6807\u7B7E\u8282\u70B9\u6570\u91CF"),Js.createElement("b",null,$e==null?void 0:$e.tagCount)),Js.createElement("div",null,Js.createElement("span",null,"\u8D44\u6E90\u8282\u70B9\u6570\u91CF"),Js.createElement("b",null,$e==null?void 0:$e.resourceCount))),Js.createElement("div",{className:jh.right},z&&Js.createElement(KY,{percentage:$e==null?void 0:$e.proportionCount}),Js.createElement("div",{className:"c-white",style:{marginTop:"20rem",fontSize:"14rem"}},"\u5DF2\u5173\u8054\u8D44\u6E90\u7684\u6807\u7B7E\u8282\u70B9\u5360\u6BD4"))),Js.createElement("div",{style:{marginTop:"20rem"},className:jh.title},Js.createElement("img",{src:_Y}),Js.createElement("span",null,"\u5B66\u4E60\u7EDF\u8BA1\u5206\u6790")),Js.createElement("div",{className:jh.box},Xe.get("type")!=="classrooms"&&Js.createElement("div",{className:jh.head},Js.createElement("span",{style:{marginRight:"10rem",fontSize:"16rem"}},"\u7EDF\u8BA1\u8303\u56F4"),Js.createElement("div",{className:jh.radio},Ht.map(Qt=>Js.createElement("div",{className:re.type===Qt.id?jh.active:"",key:Qt.id,onClick:()=>zt(Qt.id)},Js.createElement("b",null),Js.createElement("span",null,Qt.name)))),re.type===2&&Js.createElement(ui.default,{className:jh.select,options:Me,value:re==null?void 0:re.course_id,onChange:Wt,placeholder:"\u8BF7\u9009\u62E9",getPopupContainer:Qt=>Qt.parentNode,style:{width:"156rem",marginLeft:"10rem"},suffixIcon:Js.createElement("i",{className:"iconfont icon-a-bianzu11",style:{color:"#1B8565",fontSize:"16rem"}})})),Js.createElement(ye.Z,{spinning:ge},Js.createElement("div",{className:jh.average},Js.createElement("div",{className:jh.li},Js.createElement("img",{src:zY,style:{marginLeft:0}}),Js.createElement("aside",{className:jh.yellow},Js.createElement("div",{style:{fontSize:"16rem"}},"\u5E73\u5747\u5B8C\u6210\u7387"),Js.createElement("div",null,Js.createElement("b",{style:{fontSize:"40rem"}},pt==null?void 0:pt.averageCompletionRate),Js.createElement("span",{style:{fontSize:"20rem"}},"%")))),Js.createElement("div",{className:jh.li},Js.createElement("img",{src:jY}),Js.createElement("aside",{className:jh.blue},Js.createElement("div",{style:{fontSize:"16rem"}},"\u5E73\u5747\u638C\u63E1\u7387"),Js.createElement("div",null,Js.createElement("b",{style:{fontSize:"40rem"}},pt==null?void 0:pt.averageMasteryRate),Js.createElement("span",{style:{fontSize:"20rem"}},"%"))))),Js.createElement("div",{className:jh.lineTitle},Js.createElement("b",null),Js.createElement("span",null,"\u5B8C\u6210\u7387"),Js.createElement("b",null)),Js.createElement("div",{className:jh.echartsTwo},Js.createElement(qY,{dataSource:pt==null?void 0:pt.completionRate})),Js.createElement("div",{className:jh.lineTitle,style:{marginTop:"40rem"}},Js.createElement("b",null),Js.createElement("span",null,"\u638C\u63E1\u7387"),Js.createElement("b",null)),Js.createElement("div",{className:jh.echartsThree},Js.createElement(ic,{dataSource:pt==null?void 0:pt.masteryRate})))))),z&&Js.createElement("div",{onClick:()=>te(!1),className:jh.unfold})))))},Od={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"},iX="data:image/png;base64,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",oX="data:image/png;base64,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",aX="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",sX=Be.p+"static/a.d3f19668.png",lX=Be.p+"static/b.ba7414bd.png",uX=Be.p+"static/c.2b6f6bd3.png",cX=Be.p+"static/d.f1216ccd.png",Ox={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"},hX=Object.defineProperty,dX=Object.defineProperties,fX=Object.getOwnPropertyDescriptors,_R=Object.getOwnPropertySymbols,gX=Object.prototype.hasOwnProperty,pX=Object.prototype.propertyIsEnumerable,zR=(b,x,E)=>x in b?hX(b,x,{enumerable:!0,configurable:!0,writable:!0,value:E}):b[x]=E,jR=(b,x)=>{for(var E in x||(x={}))gX.call(x,E)&&zR(b,E,x[E]);if(_R)for(var E of _R(x))pX.call(x,E)&&zR(b,E,x[E]);return b},WR=(b,x)=>dX(b,fX(x)),vX=({dataSource:b=[]})=>{const[x,E]=(0,Ge.useState)([]),[z,te]=(0,Ge.useState)(0),re=(0,Ge.useRef)(String(Math.random()).slice(-6));console.log(b,x,223),(0,Ge.useEffect)(()=>{if(b!=null&&b.length){const ge=ce(b),Ae=b.map((Me,Ue)=>WR(jR({value:Me,lineWidth:30,cylinderWidth:40+ge[Ue]},le[Ue]),{from:le[Ue].from+re.current,to:le[Ue].to+re.current}));E(Ae),te(z+1)}},[JSON.stringify(b)]),(0,Ge.useEffect)(()=>{z>0&&oe()},[z]),(0,Ge.useEffect)(()=>(window.addEventListener("resize",oe),()=>{window.removeEventListener("resize",oe)}),[z]);const oe=()=>{const ge=x.map((Ae,Me)=>{const{from:Ue,to:Xe}=Ae,$e=document.querySelector(`#${Ue}`),rt=document.querySelector(`#${Xe}`),ot=$e.getBoundingClientRect(),pt=rt.getBoundingClientRect(),yt=Math.abs(pt.left-ot.left);return WR(jR({},Ae),{lineWidth:yt})});E(ge)},le=[{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 ce(ge){const Ae=ge.reduce((Me,Ue)=>Me+Ue,0);return ge.map(Me=>Me/Ae*122)}return Ge.createElement("div",{className:Ox.cylinder},Ge.createElement("div",{className:Ox.cylinderBox},x.map((ge,Ae)=>{const{cylinderWidth:Me,lineWidth:Ue,from:Xe}=ge,$e=Ae+1;return Ge.createElement("div",{key:$e,className:Ox[`cylinder${$e}`],style:{width:Me+"rem"}},Ge.createElement("div",{className:Ox.item1}),Ge.createElement("div",{className:Ox.item2}),Ge.createElement("div",{className:Ox.item3}),Ge.createElement("div",{id:Xe,style:{width:Ue},className:Ox.point}))})),Ge.createElement("div",{className:Ox.textBox},x.map((ge,Ae)=>{const{title:Me,to:Ue,value:Xe}=ge,$e=Ae+1;return Ge.createElement("div",{key:$e,id:Ue},Ge.createElement("span",{dangerouslySetInnerHTML:{__html:`${Me}${Xe}%`}}))})))},El=Be(59301),mX=Object.defineProperty,UR=Object.getOwnPropertySymbols,yX=Object.prototype.hasOwnProperty,xX=Object.prototype.propertyIsEnumerable,GR=(b,x,E)=>x in b?mX(b,x,{enumerable:!0,configurable:!0,writable:!0,value:E}):b[x]=E,HR=(b,x)=>{for(var E in x||(x={}))yX.call(x,E)&&GR(b,E,x[E]);if(UR)for(var E of UR(x))xX.call(x,E)&&GR(b,E,x[E]);return b},EX=(b,x,E)=>new Promise((z,te)=>{var re=ce=>{try{le(E.next(ce))}catch(ge){te(ge)}},oe=ce=>{try{le(E.throw(ce))}catch(ge){te(ge)}},le=ce=>ce.done?z(ce.value):Promise.resolve(ce.value).then(re,oe);le((E=E.apply(b,x)).next())}),AX=({subjectId:b,uuid:x,isAll:E})=>{const[z,te]=(0,Ge.useState)(!1),[re,oe]=(0,Ge.useState)({course_id:null}),[le,ce]=(0,Ge.useState)(!0),[ge,Ae]=(0,Ge.useState)(!0),[Me,Ue]=(0,Ge.useState)([]),[Xe]=(0,ke.useSearchParams)(),[$e,rt]=(0,Ge.useState)({graphCount:0,tagCount:0,resourceCount:0,proportionCount:0}),ot=[{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)"}}],[pt,yt]=(0,Ge.useState)({averageCompletionRate:0,averageMasteryRate:0,completionRate:ot,masteryRate:[0,0,0],course_rank_num:0,course_rank_all_num:0,system_rank_num:0,system_rank_all_num:0});(0,Ge.useEffect)(()=>{z?Ct(re):oe({course_id:null})},[z]),(0,Ge.useEffect)(()=>{z&&te(!1)},[x]);const Ct=(Wt,Ht=!1)=>EX(void 0,null,function*(){var Qt,Gt,vn,Sn,kn,Kn,vr,er,Nr,ei,Ar,Sr,Ir,si,Cr;Ht?Ae(!0):ce(!0);const wi=yield(0,ie.ZP)(E?"/api/knowledge/v2/subject_statistics.json":"/api/knowledge/v2/knowledge_statistics.json",{method:"get",params:HR({subject_id:b,parentNodeUuid:x,labels:"\u56FE\u8C31,\u6807\u7B7E,\u8D44\u6E90",depth:-1},Wt)});if((wi==null?void 0:wi.status)===0){let Mo=(Qt=wi==null?void 0:wi.data)==null?void 0:Qt.metricCounters;Mo=Mo||[];const Po={graphCount:((Gt=Mo.find(Uo=>(Uo==null?void 0:Uo.name)==="\u56FE\u8C31"))==null?void 0:Gt.count)||0,tagCount:((vn=Mo.find(Uo=>(Uo==null?void 0:Uo.name)==="\u6807\u7B7E"))==null?void 0:vn.count)||0,resourceCount:((Sn=Mo.find(Uo=>(Uo==null?void 0:Uo.name)==="\u8D44\u6E90"))==null?void 0:Sn.count)||0,proportionCount:(kn=wi==null?void 0:wi.data)==null?void 0:kn.resource_rate};let eo=Object.entries((Kn=wi==null?void 0:wi.data)==null?void 0:Kn.study_complete_hash).map(([Uo,pa],Ga)=>({name:ot[Ga].name,value:pa,itemStyle:ot[Ga].itemStyle}));const Ui={averageCompletionRate:(vr=wi==null?void 0:wi.data)==null?void 0:vr.study_complete_rate,averageMasteryRate:(er=wi==null?void 0:wi.data)==null?void 0:er.study_grasp_rate,completionRate:eo,masteryRate:Object.values((Nr=wi==null?void 0:wi.data)==null?void 0:Nr.study_grasp_hash),course_rank_num:(ei=wi==null?void 0:wi.data)==null?void 0:ei.course_rank_num,course_rank_all_num:(Ar=wi==null?void 0:wi.data)==null?void 0:Ar.course_rank_all_num,system_rank_num:(Sr=wi==null?void 0:wi.data)==null?void 0:Sr.system_rank_num,system_rank_all_num:(Ir=wi==null?void 0:wi.data)==null?void 0:Ir.system_rank_all_num},fo=(si=wi==null?void 0:wi.courses)==null?void 0:si.map(Uo=>({label:Uo.name,value:Uo.id}));Ue(fo),rt(Po),yt(Ui),Ht||oe({course_id:((Cr=fo==null?void 0:fo[0])==null?void 0:Cr.value)||null})}setTimeout(()=>{ce(!1)},500),Ae(!1)}),zt=Wt=>{re.course_id=Wt,oe(HR({},re)),Ct(re,!0)};return El.createElement(nn,null,El.createElement("div",{className:Od.statistics},El.createElement("div",{onClick:()=>te(!0),className:Od.noUnfold},El.createElement("img",{style:{width:"32rem",marginBottom:"4rem"},src:iX}),El.createElement("span",null,"\u7EDF"),El.createElement("span",null,"\u8BA1")),El.createElement("div",{className:Od.wrapBox,style:{right:z?0:"-600rem"}},le&&El.createElement(ye.Z,{style:{width:"100%",marginTop:"200rem"},spinning:!0}),!le&&El.createElement(El.Fragment,null,El.createElement("div",{className:Od.scrollBox},El.createElement("div",{className:Od.content},El.createElement("div",{className:Od.title},El.createElement("img",{src:oX}),El.createElement("span",null,"\u56FE\u8C31\u7EDF\u8BA1\u5206\u6790")),El.createElement("div",{className:Od.top},El.createElement("div",{className:Od.topLi},El.createElement("div",null,$e==null?void 0:$e.graphCount),El.createElement("div",null,"\u77E5\u8BC6\u56FE\u8C31\u6570\u91CF")),El.createElement("div",{className:Od.topLi},El.createElement("div",null,$e==null?void 0:$e.tagCount),El.createElement("div",null,"\u6807\u7B7E\u8282\u70B9\u6570\u91CF")),El.createElement("div",{className:Od.topLi},El.createElement("div",null,$e==null?void 0:$e.resourceCount),El.createElement("div",null,"\u8D44\u6E90\u8282\u70B9\u6570\u91CF"))),El.createElement("div",{style:{marginTop:"20rem"},className:Od.title},El.createElement("img",{src:aX}),El.createElement("span",null,"\u5B66\u4E60\u7EDF\u8BA1\u5206\u6790")),El.createElement(ye.Z,{spinning:ge},El.createElement("div",{className:Od.bottom},El.createElement("div",{className:Od.bottomLi,style:{marginTop:"82rem",marginRight:"26rem"}},Xe.get("type")!=="classrooms"&&El.createElement(ui.default,{className:Od.select,options:Me,value:re==null?void 0:re.course_id,size:"small",onChange:zt,placeholder:"\u8BF7\u9009\u62E9",getPopupContainer:Wt=>Wt.parentNode,style:{width:"222rem"},suffixIcon:El.createElement("i",{className:"iconfont icon-a-bianzu11",style:{color:"#fff",fontSize:"12rem"}})}),El.createElement("b",{style:{fontSize:"26rem",marginTop:"5rem"}},pt==null?void 0:pt.course_rank_num),El.createElement("div",{style:{fontSize:"16rem",marginTop:"4rem"}},"\u8BFE\u5802\u6392\u540D"),El.createElement("div",{style:{fontSize:"16rem",marginTop:"4rem"}},"\uFF08\u5171",pt==null?void 0:pt.course_rank_all_num,"\u4EBA\uFF09"),El.createElement("img",{src:sX})),El.createElement("div",{className:Od.bottomLi,style:{marginTop:"82rem"}},El.createElement("b",{style:{fontSize:"26rem",marginTop:"30rem"}},pt==null?void 0:pt.system_rank_num),El.createElement("div",{style:{fontSize:"16rem",marginTop:"4rem"}},"\u7CFB\u7EDF\u6392\u540D"),El.createElement("div",{style:{fontSize:"16rem",marginTop:"4rem"}},"\uFF08\u5171",pt==null?void 0:pt.system_rank_all_num,"\u4EBA\uFF09"),El.createElement("img",{src:lX})),El.createElement("div",{className:Od.bottomLi,style:{marginTop:"104rem",marginRight:"26rem"}},El.createElement("b",{style:{fontSize:"26rem",marginTop:"30rem"}},pt==null?void 0:pt.averageCompletionRate,"%"),El.createElement("div",{style:{fontSize:"14rem",marginTop:"2rem"}},"\u5E73\u5747\u5B8C\u6210\u7387"),El.createElement("img",{src:uX})),El.createElement("div",{className:Od.bottomLi,style:{marginTop:"104rem"}},El.createElement("b",{style:{fontSize:"26rem",marginTop:"30rem"}},pt==null?void 0:pt.averageMasteryRate,"%"),El.createElement("div",{style:{fontSize:"14rem",marginTop:"2rem"}},"\u5E73\u5747\u638C\u63E1\u7387"),El.createElement("img",{src:cX})),El.createElement("div",{className:Od.echarts},El.createElement("div",{className:Od.name},"\u5B8C\u6210\u60C5\u51B5"),El.createElement(ic,{dataSource:pt==null?void 0:pt.completionRate})),El.createElement("div",{className:Od.echarts},El.createElement("div",{className:Od.name},"\u638C\u63E1\u60C5\u51B5"),El.createElement(vX,{dataSource:pt==null?void 0:pt.masteryRate})))))),z&&El.createElement("div",{onClick:()=>te(!1),className:Od.unfold})))))},qS=Be(59301),SX=Object.defineProperty,KL=Object.getOwnPropertySymbols,VR=Object.prototype.hasOwnProperty,KR=Object.prototype.propertyIsEnumerable,ZR=(b,x,E)=>x in b?SX(b,x,{enumerable:!0,configurable:!0,writable:!0,value:E}):b[x]=E,ZL=(b,x)=>{for(var E in x||(x={}))VR.call(x,E)&&ZR(b,E,x[E]);if(KL)for(var E of KL(x))KR.call(x,E)&&ZR(b,E,x[E]);return b},wX=(b,x)=>{var E={};for(var z in b)VR.call(b,z)&&x.indexOf(z)<0&&(E[z]=b[z]);if(b!=null&&KL)for(var z of KL(b))x.indexOf(z)<0&&KR.call(b,z)&&(E[z]=b[z]);return E},YR=(b,x,E)=>new Promise((z,te)=>{var re=ce=>{try{le(E.next(ce))}catch(ge){te(ge)}},oe=ce=>{try{le(E.throw(ce))}catch(ge){te(ge)}},le=ce=>ce.done?z(ce.value):Promise.resolve(ce.value).then(re,oe);le((E=E.apply(b,x)).next())});const CX=b=>{var x=b,{pathsDetail:E,user:z,globalSetting:te,loading:re,dispatch:oe,tpacti:le,settupuname:ce,settpacti:ge}=x,Ae=wX(x,["pathsDetail","user","globalSetting","loading","dispatch","tpacti","settupuname","settpacti"]),Me,Ue,Xe,$e,rt,ot,pt,yt,Ct;const zt=(0,ke.useParams)(),[Wt,Ht]=(0,Ge.useState)(""),[Qt,Gt]=(0,Ge.useState)([]),[vn]=(0,ke.useSearchParams)(),[Sn,kn]=(0,Ge.useState)([]),[Kn,vr]=(0,Ge.useState)(1);(0,Ge.useEffect)(()=>{var ei,Ar,Sr,Ir,si,Cr;if((ei=E==null?void 0:E.detail)!=null&&ei.nodes&&Kn===1){Gt((Ar=E==null?void 0:E.detail)==null?void 0:Ar.nodes),Ht((si=(Ir=(Sr=E==null?void 0:E.detail)==null?void 0:Sr.nodes)==null?void 0:Ir[1])==null?void 0:si.uuid);let wi=[...(Cr=E==null?void 0:E.detail)==null?void 0:Cr.nodes];kn(wi==null?void 0:wi.splice(1)),vr(2)}},[(Me=E==null?void 0:E.detail)==null?void 0:Me.nodes]),(0,Ge.useEffect)(()=>{var ei,Ar,Sr;Ht(le||((Sr=(Ar=(ei=E==null?void 0:E.detail)==null?void 0:ei.nodes)==null?void 0:Ar[1])==null?void 0:Sr.uuid))},[le]);function er(){return YR(this,null,function*(){var ei,Ar,Sr,Ir,si,Cr,wi,Mo;if(vn.get("type")==="classrooms"){let Po=yield oe({type:"pathsDetail/getCourseDetail",payload:ZL({id:zt.pathId,knowledge:!0},(0,Yt.oP)())});Gt(Po==null?void 0:Po.nodes),Ht((Ar=(ei=Po==null?void 0:Po.nodes)==null?void 0:ei[1])==null?void 0:Ar.uuid),ge((Ir=(Sr=Po==null?void 0:Po.nodes)==null?void 0:Sr[1])==null?void 0:Ir.uuid);let eo=[...Po==null?void 0:Po.nodes];kn(eo==null?void 0:eo.splice(1))}else{let Po=yield oe({type:"pathsDetail/getPathsDetail",payload:ZL({id:zt.pathId,knowledge:!0},(0,Yt.oP)())});Gt(Po==null?void 0:Po.nodes),Ht((Cr=(si=Po==null?void 0:Po.nodes)==null?void 0:si[1])==null?void 0:Cr.uuid),ge((Mo=(wi=Po==null?void 0:Po.nodes)==null?void 0:wi[1])==null?void 0:Mo.uuid);let eo=[...Po==null?void 0:Po.nodes];kn(eo==null?void 0:eo.splice(1))}})}function Nr(){return YR(this,null,function*(){var ei,Ar,Sr,Ir,si,Cr,wi,Mo,Po,eo,Ui,fo,Uo,pa;if(vn.get("type")==="classrooms"){let Ga=yield oe({type:"pathsDetail/getCourseDetail",payload:ZL({id:(ei=E==null?void 0:E.detail)==null?void 0:ei.id,knowledge:!0},(0,Yt.oP)())});Ht((Sr=(Ar=Ga==null?void 0:Ga.nodes)==null?void 0:Ar[1])==null?void 0:Sr.uuid),ge((si=(Ir=Ga==null?void 0:Ga.nodes)==null?void 0:Ir[1])==null?void 0:si.uuid),ce(((wi=(Cr=Ga==null?void 0:Ga.nodes)==null?void 0:Cr[1])==null?void 0:wi.name)||"\u8BFE\u7A0B\u56FE\u8C31")}else{let Ga=yield oe({type:"pathsDetail/getPathsDetail",payload:ZL({id:(Mo=E==null?void 0:E.detail)==null?void 0:Mo.id,knowledge:!0},(0,Yt.oP)())});Ht((eo=(Po=Ga==null?void 0:Ga.nodes)==null?void 0:Po[1])==null?void 0:eo.uuid),ge((fo=(Ui=Ga==null?void 0:Ga.nodes)==null?void 0:Ui[1])==null?void 0:fo.uuid),ce(((pa=(Uo=Ga==null?void 0:Ga.nodes)==null?void 0:Uo[1])==null?void 0:pa.name)||"\u8BFE\u7A0B\u56FE\u8C31")}})}return qS.createElement("div",{style:{height:"calc(100vh - 72px - 170rem)"}},(Qt==null?void 0:Qt.length)>0&&qS.createElement("div",{className:Vr.content},((Ue=Qt==null?void 0:Qt[0])==null?void 0:Ue.uuid)===Wt&&Wt&&qS.createElement(RY,{onAddSuccess:Nr,setActivated:Ht,subjectId:(Xe=E==null?void 0:E.detail)==null?void 0:Xe.id}),(($e=Qt==null?void 0:Qt[0])==null?void 0:$e.uuid)!==Wt&&Wt&&qS.createElement(cY,{tpacti:le,setactivied:()=>{var ei;Ht((ei=Qt==null?void 0:Qt[0])==null?void 0:ei.uuid)},initdata:Nr,Tabsdatas:Sn,uuid:Wt})),(rt=E==null?void 0:E.detail)!=null&&rt.can_managed?qS.createElement(rX,{isAll:((ot=Qt==null?void 0:Qt[0])==null?void 0:ot.uuid)===Wt,subjectId:(pt=E==null?void 0:E.detail)==null?void 0:pt.id,uuid:Wt}):qS.createElement(AX,{isAll:((yt=Qt==null?void 0:Qt[0])==null?void 0:yt.uuid)===Wt,subjectId:(Ct=E==null?void 0:E.detail)==null?void 0:Ct.id,uuid:Wt}))};var bX=(0,ke.connect)(({pathsDetail:b,user:x,loading:E,globalSetting:z})=>({pathsDetail:b,user:x,globalSetting:z,loading:E.models.index}))(CX),Tu=Be(59301),PX=Object.defineProperty,YL=Object.getOwnPropertySymbols,XR=Object.prototype.hasOwnProperty,QR=Object.prototype.propertyIsEnumerable,JR=(b,x,E)=>x in b?PX(b,x,{enumerable:!0,configurable:!0,writable:!0,value:E}):b[x]=E,qR=(b,x)=>{for(var E in x||(x={}))XR.call(x,E)&&JR(b,E,x[E]);if(YL)for(var E of YL(x))QR.call(x,E)&&JR(b,E,x[E]);return b},MX=(b,x)=>{var E={};for(var z in b)XR.call(b,z)&&x.indexOf(z)<0&&(E[z]=b[z]);if(b!=null&&YL)for(var z of YL(b))x.indexOf(z)<0&&QR.call(b,z)&&(E[z]=b[z]);return E},$R=(b,x,E)=>new Promise((z,te)=>{var re=ce=>{try{le(E.next(ce))}catch(ge){te(ge)}},oe=ce=>{try{le(E.throw(ce))}catch(ge){te(ge)}},le=ce=>ce.done?z(ce.value):Promise.resolve(ce.value).then(re,oe);le((E=E.apply(b,x)).next())});const LX=b=>{var x=b,{pathsDetail:E,user:z,globalSetting:te,loading:re,dispatch:oe,activied:le,setactivied:ce}=x,ge=MX(x,["pathsDetail","user","globalSetting","loading","dispatch","activied","setactivied"]),Ae,Me,Ue,Xe,$e,rt,ot,pt,yt,Ct,zt,Wt,Ht,Qt;const Gt=(0,ke.useParams)(),[vn]=(0,ke.useSearchParams)(),[Sn,kn]=(0,Ge.useState)(((Ue=(Me=(Ae=E==null?void 0:E.detail)==null?void 0:Ae.nodes)==null?void 0:Me[0])==null?void 0:Ue.name)||"\u8BFE\u7A0B\u56FE\u8C31"),[Kn,vr]=(0,Ge.useState)(((rt=($e=(Xe=E==null?void 0:E.detail)==null?void 0:Xe.route_nodes)==null?void 0:$e[0])==null?void 0:rt.name)||"\u5B66\u4E60\u8DEF\u5F84"),[er,Nr]=(0,Ge.useState)([]),[ei,Ar]=(0,Ge.useState)(),[Sr,Ir]=(0,Ge.useState)(),[si]=Ie.default.useForm(),[Cr,wi]=(0,Ge.useState)(!1),[Mo,Po]=(0,Ge.useState)(!1),eo=[{name:"\u8BFE\u7A0B\u4FE1\u606F",key:1,content:Tu.createElement($t,null),isshow:vn.get("type")!=="classrooms"},{name:"\u8BFE\u7A0B\u56FE\u8C31",key:3,content:((pt=(ot=E==null?void 0:E.detail)==null?void 0:ot.nodes)==null?void 0:pt.length)<=1?Tu.createElement(Rt,{text:"\u6682\u65E0\u56FE\u8C31\uFF0C\u7ACB\u5373\u65B0\u5EFA\u4E00\u4E2A\u56FE\u8C31\u5427\uFF5E",textColor:"#fff",buttonText:((yt=E==null?void 0:E.detail)==null?void 0:yt.can_managed)&&"\u65B0\u5EFA\u56FE\u8C31",buttonTexttow:((Ct=E==null?void 0:E.detail)==null?void 0:Ct.can_managed)&&"\u751F\u6210\u56FE\u8C31",ontwoClick:()=>$R(void 0,null,function*(){var fo;let Uo=yield(0,ie.ZP)("/api/knowledge/v2/sync.json",{method:"post",body:{subject_id:(fo=E==null?void 0:E.detail)==null?void 0:fo.id}});Uo.status===0&&Ze.ZP.info(Uo==null?void 0:Uo.message)}),onClick:()=>Po(!0)}):Tu.createElement(bX,{settupuname:kn,settpacti:Ar,tpacti:ei}),isshow:!0},{name:"\u5B66\u4E60\u8DEF\u5F84",key:2,content:Tu.createElement(ha,{setxxljac:Ir,dispatch:oe,xxljac:Sr,pathsDetail:E}),isshow:!0},{name:"\u4EA4\u6D41\u53CD\u9988",key:4,content:Tu.createElement(De,null),isshow:vn.get("type")!=="classrooms"}].filter(fo=>fo==null?void 0:fo.isshow);(0,Ge.useEffect)(()=>{var fo,Uo;if((fo=E==null?void 0:E.detail)!=null&&fo.nodes){let pa=[...(Uo=E==null?void 0:E.detail)==null?void 0:Uo.nodes];Nr(pa==null?void 0:pa.splice(1))}},[(zt=E==null?void 0:E.detail)==null?void 0:zt.nodes]);const Ui=fo=>$R(void 0,null,function*(){var Uo,pa,Ga,kl,al,Fa,tl,Ps,rl,gl;const{nodeType:fu,description:$l,name:Xa,tags:ms}=fo;wi(!0);const $o=yield(0,ie.ZP)("/api/knowledge/v2/add_node.json",{method:"POST",body:{label:"\u56FE\u8C31",subject_id:(Uo=E==null?void 0:E.detail)==null?void 0:Uo.id,properties:{description:$l,rootNodeUuid:(kl=(Ga=(pa=E==null?void 0:E.detail)==null?void 0:pa.nodes)==null?void 0:Ga[0])==null?void 0:kl.uuid,name:Xa,nodeType:fu[0],tags:(ms==null?void 0:ms.join("\uFF0C"))||"",color:"1"},relationships:[{startNodeUuid:(tl=(Fa=(al=E==null?void 0:E.detail)==null?void 0:al.nodes)==null?void 0:Fa[0])==null?void 0:tl.uuid,type:"\u5305\u542B"}]}});($o==null?void 0:$o.status)===0&&(Po(!1),Ar((Ps=$o==null?void 0:$o.data)==null?void 0:Ps.uuid),kn(Xa),ce(3),vn.get("type")==="classrooms"?oe({type:"pathsDetail/getCourseDetail",payload:qR({id:(rl=E==null?void 0:E.detail)==null?void 0:rl.id,knowledge:!0},(0,Yt.oP)())}):oe({type:"pathsDetail/getPathsDetail",payload:qR({id:(gl=E==null?void 0:E.detail)==null?void 0:gl.id,knowledge:!0},(0,Yt.oP)())})),wi(!1)});return Tu.createElement("div",null,Tu.createElement("div",{className:dn.tabs},eo==null?void 0:eo.map(fo=>{var Uo,pa,Ga,kl,al,Fa,tl,Ps,rl,gl,fu,$l;return Tu.createElement("div",{onClick:()=>{var Xa,ms,$o,va,Oa,js,aa,cl;ce(fo.key),(fo==null?void 0:fo.name)==="\u8BFE\u7A0B\u56FE\u8C31"&&(console.log("---",2),kn(((Xa=er==null?void 0:er[0])==null?void 0:Xa.name)||"\u8BFE\u7A0B\u56FE\u8C31"),Ar((ms=er==null?void 0:er[0])==null?void 0:ms.uuid)),(fo==null?void 0:fo.name)==="\u5B66\u4E60\u8DEF\u5F84"&&(vr(((Oa=(va=($o=E==null?void 0:E.detail)==null?void 0:$o.route_nodes)==null?void 0:va[0])==null?void 0:Oa.name)||"\u5B66\u4E60\u8DEF\u5F84"),Ir((cl=(aa=(js=E==null?void 0:E.detail)==null?void 0:js.route_nodes)==null?void 0:aa[0])==null?void 0:cl.id))},className:le===(fo==null?void 0:fo.key)?dn.activied:dn.tab},((fo==null?void 0:fo.name)==="\u8BFE\u7A0B\u4FE1\u606F"||(fo==null?void 0:fo.name)==="\u4EA4\u6D41\u53CD\u9988")&&(fo==null?void 0:fo.name),(fo==null?void 0:fo.name)==="\u8BFE\u7A0B\u56FE\u8C31"&&Tu.createElement(In.Z,{overlayClassName:dn.dropdownst,disabled:(er==null?void 0:er.length)===0,menu:{items:er==null?void 0:er.map(Xa=>({label:Tu.createElement(Wn.Z,{title:Xa==null?void 0:Xa.name}," ",Tu.createElement("span",{className:dn.dropnametext,style:{width:"100%"},onClick:ms=>{ms.stopPropagation(),kn(Xa==null?void 0:Xa.name),Ar(Xa==null?void 0:Xa.uuid),ce(3)}},Xa==null?void 0:Xa.name)),key:Xa==null?void 0:Xa.uuid,show:!0})),selectable:!0,selectedKeys:[ei||((Ga=(pa=(Uo=E==null?void 0:E.detail)==null?void 0:Uo.nodes)==null?void 0:pa[1])==null?void 0:Ga.uuid)]}},Tu.createElement("span",{className:dn.nametext},"\u8BFE\u7A0B\u56FE\u8C31 ",(er==null?void 0:er.length)>0&&Tu.createElement("i",{style:{fontSize:"12rem",marginLeft:"10rem"},className:"iconfont icon-zhankai10"}))),(fo==null?void 0:fo.name)==="\u5B66\u4E60\u8DEF\u5F84"&&Tu.createElement(In.Z,{overlayClassName:dn.dropdownst,disabled:((al=(kl=E==null?void 0:E.detail)==null?void 0:kl.route_nodes)==null?void 0:al.length)===0,overlayStyle:{background:"#13203D"},menu:{items:(tl=(Fa=E==null?void 0:E.detail)==null?void 0:Fa.route_nodes)==null?void 0:tl.map((Xa,ms)=>({label:Tu.createElement(Wn.Z,{title:Xa==null?void 0:Xa.name},Tu.createElement("span",{className:dn.dropnametext,style:{width:"100%"},onClick:$o=>{$o.stopPropagation(),vr(Xa==null?void 0:Xa.name),Ir(Xa==null?void 0:Xa.id),ce(2)}},Xa==null?void 0:Xa.name)),key:Xa==null?void 0:Xa.id,show:!0})),selectable:!0,selectedKeys:[(Sr||((gl=(rl=(Ps=E==null?void 0:E.detail)==null?void 0:Ps.route_nodes)==null?void 0:rl[0])==null?void 0:gl.id))+""]}},Tu.createElement("span",{className:dn.nametext},"\u5B66\u4E60\u8DEF\u5F84 ",(($l=(fu=E==null?void 0:E.detail)==null?void 0:fu.route_nodes)==null?void 0:$l.length)>0&&Tu.createElement("i",{style:{fontSize:"12rem",marginLeft:"10rem"},className:"iconfont icon-zhankai10"}))))}),Tu.createElement(nn,null,Tu.createElement(Tu.Fragment,null,vn.get("type")==="classrooms"&&(0,pu.JA)()&&Tu.createElement("div",{style:{position:"fixed",right:"20rem",top:"7rem"}},Tu.createElement("span",{onClick:()=>{var fo;window.open((fo=E==null?void 0:E.detail)==null?void 0:fo.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")),le===3&&((Wt=E==null?void 0:E.detail)==null?void 0:Wt.can_managed)&&Tu.createElement("div",{style:{position:"fixed",right:vn.get("type")!=="classrooms"?"170rem":"20rem",top:"7rem"}},Tu.createElement("span",{onClick:()=>{Po(!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")),vn.get("type")!=="classrooms"&&(le===2||le===3)&&!(0,pu.JA)()&&Tu.createElement(yn,{activied:le,styles:{position:"fixed",right:le===3?"20rem":"170rem",top:"7rem"}})))),Tu.createElement(Oe.default,{open:Mo,centered:!0,width:"1000rem",okText:"\u4FDD\u5B58",onCancel:()=>Po(!1),cancelText:"\u53D6\u6D88",afterClose:()=>{si.resetFields()},confirmLoading:Cr,onOk:()=>si.submit(),title:"\u65B0\u589E\u77E5\u8BC6\u56FE\u8C31"},Tu.createElement("div",{className:dn.modal},Tu.createElement("div",{className:dn.mHead},"\u8282\u70B9\u5C5E\u6027"),Tu.createElement(Ie.default,{form:si,scrollToFirstError:!0,layout:"horizontal",colon:!1,size:"large",labelCol:{flex:"110rem"},onFinish:Ui,className:dn.form},Tu.createElement(Ie.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"}]},Tu.createElement(je.default,{maxLength:60,showCount:!0,placeholder:"\u8BF7\u8F93\u5165"})),Tu.createElement(Ie.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"}]},Tu.createElement(je.default.TextArea,{maxLength:5e3,showCount:!0,placeholder:"\u8BF7\u8F93\u5165"})),Tu.createElement(Ie.default.Item,{className:dn.mType,label:Tu.createElement("span",null,"\u56FE\u8C31\u7C7B\u578B ",Tu.createElement(Wn.Z,{title:"\u5F53\u524D\u77E5\u8BC6\u56FE\u8C31\u7684\u7C7B\u578B\uFF0C\u5982\uFF1A\u5927\u7EB2\u56FE\u8C31\u3001\u80FD\u529B\u56FE\u8C31"},Tu.createElement(_i.Z,null))),name:"nodeType",rules:[{required:!0,message:"\u8BF7\u9009\u62E9\u8282\u70B9\u7C7B\u578B"}]},Tu.createElement(zr,{subjectId:(Ht=E==null?void 0:E.detail)==null?void 0:Ht.id,type:1}))))),Tu.createElement("div",{className:dn.placeholder}),Tu.createElement("div",{className:dn.content},(Qt=eo.find(fo=>fo.key===le))==null?void 0:Qt.content))};var TX=(0,ke.connect)(({pathsDetail:b,user:x,loading:E,globalSetting:z})=>({pathsDetail:b,user:x,globalSetting:z,loading:E.models.index}))(LX),XL=Be(59301),DX=Object.defineProperty,QL=Object.getOwnPropertySymbols,e4=Object.prototype.hasOwnProperty,t4=Object.prototype.propertyIsEnumerable,n4=(b,x,E)=>x in b?DX(b,x,{enumerable:!0,configurable:!0,writable:!0,value:E}):b[x]=E,r4=(b,x)=>{for(var E in x||(x={}))e4.call(x,E)&&n4(b,E,x[E]);if(QL)for(var E of QL(x))t4.call(x,E)&&n4(b,E,x[E]);return b},IX=(b,x)=>{var E={};for(var z in b)e4.call(b,z)&&x.indexOf(z)<0&&(E[z]=b[z]);if(b!=null&&QL)for(var z of QL(b))x.indexOf(z)<0&&t4.call(b,z)&&(E[z]=b[z]);return E},OX=(b,x,E)=>new Promise((z,te)=>{var re=ce=>{try{le(E.next(ce))}catch(ge){te(ge)}},oe=ce=>{try{le(E.throw(ce))}catch(ge){te(ge)}},le=ce=>ce.done?z(ce.value):Promise.resolve(ce.value).then(re,oe);le((E=E.apply(b,x)).next())});const{TabPane:D$}=Zt.default;var NX=(b=>(b.All="",b.Shixun="shixun",b.VideoItem="video",b.Attachment="attachment",b.group_count="group_homework",b.normal_count="normal_homework",b.ExaminationBank="exercise",b.HomeworkCommon="hack_homework",b.Discusses="Discusses",b))(NX||{});function i4(b){const x=(te,re)=>{if(te.localName===re)return te;for(let oe=0,le=te;le=le.parentNode;oe++){if(le.localName===re)return le;if(le==document.documentElement)return!1}},E=b.target,z=x(E,"a");if(console.log([z],z==null?void 0:z.href,44),!(z!=null&&z.href)&&E.tagName.toUpperCase()==="IMG"){let te=E.src||E.getAttribute("src");te&&te.indexOf("/images/avatars/User")===-1&&(b.stopPropagation(),b.preventDefault(),Ut.Z.publish("preview-image",te))}}const BX=b=>{var x=b,{pathsDetail:E,globalSetting:z,loading:te,dispatch:re}=x,oe=IX(x,["pathsDetail","globalSetting","loading","dispatch"]);const[le]=(0,ke.useSearchParams)(),ce=(0,ke.useParams)(),ge=(0,Ge.useRef)(),[Ae,Me]=(0,Ge.useState)(""),[Ue,Xe]=(0,Ge.useState)(1);(0,Ge.useEffect)(()=>{le.get("tabs")&&Xe(parseInt(le.get("tabs"))||3)},[le.get("tabs")]),(0,Ge.useEffect)(()=>{if(ge.current)return ge.current.addEventListener("mousedown",i4),()=>{var rt;(rt=ge.current)==null||rt.removeEventListener("mousedown",i4)}},[ge.current]),(0,Ge.useEffect)(()=>{ce.pathId&&$e()},[ce.pathId]),(0,Ge.useEffect)(()=>(re({type:"globalSetting/footerToggle",payload:!1}),()=>{re({type:"globalSetting/footerToggle",payload:!0})}),[]);const $e=()=>OX(void 0,null,function*(){if(le.get("type")==="classrooms"){re({type:"pathsDetail/getCourseDetail",payload:r4({id:ce.pathId,knowledge:!0},(0,Yt.oP)())});return}const rt=yield re({type:"pathsDetail/getPathsDetail",payload:r4({id:ce.pathId,knowledge:!0},(0,Yt.oP)())});rt!=null&&rt.id&&le.get("token")&&(location.href=location.pathname)});return XL.createElement(ye.Z,{spinning:!1},XL.createElement("section",{id:"knowledgegraphDetail",className:Ft.bg},XL.createElement(Nt,null),XL.createElement(TX,{activied:Ue,setactivied:Xe})))};var RX=(0,ke.connect)(({pathsDetail:b,loading:x,globalSetting:E})=>({pathsDetail:b,globalSetting:E,loading:x}))(BX)},20736:function(sn,an,Be){"use strict";Be.d(an,{BU:function(){return et},Dj:function(){return He},gH:function(){return Ge},vp:function(){return ke}});function He(Ze){try{Ze.mozRequestFullScreen?Ze.mozRequestFullScreen():Ze.webkitRequestFullScreen&&Ze.webkitRequestFullScreen()}catch(Oe){console.log(Oe,":e")}}function et(){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 Ge=()=>{if(document.webkitExitFullscreen)return"webkitfullscreenchange";if(document.exitFullscreen)return"fullscreenchange";if(document.msExitFullscreen)return"msfullscreenchange";if(document.mozCancelFullScreen)return"mozfullscreenchange"};function ke(){var Ze=window.top.document.fullscreenElement||window.top.document.mozFullscreenElement||window.top.document.webkitFullscreenElement,Oe=document.fullscreenEnabled||document.mozFullscreenEnabled||document.webkitFullscreenEnabled;return console.log("fullscreenElement",Ze),window.isFullScreen?window.isFullScreen:Ze!=null}},85187:function(sn,an,Be){"use strict";Be.d(an,{AL:function(){return he},Iy:function(){return be},Qv:function(){return ye},ez:function(){return xe},jb:function(){return Pe}});var He=Be(32834),et=Be.n(He),Ge=Be(11690),ke=Be.n(Ge);let Ze=1;function Oe(Ke,Ve){const Je=Ke.match(/^(\s+)(?:```)/);if(Je===null)return Ve;const tt=Je[1];return Ve.split(` `).map(gt=>{const st=gt.match(/^\s+/);if(st===null)return gt;const[St]=st;return St.length>=tt.length?gt.slice(tt.length):gt}).join(` `)}let we=[],Te=["
      "];const Re=new(et()).Renderer,Ie=/^ *(#{1,6}) *([^\n]+?) *(?:#+ *)?(?:\n+|$)/;function be(){we.length=0,Te=["
        "]}const Pe={overflow:"hidden",WebkitBoxOrient:"vertical",display:"-webkit-box",WebkitLineClamp:2};function je(Ke,Ve,Je,tt){if(Ve>=Ke.length||Ke[Ve].level<=Je)return Ve;var gt=Ke[Ve];tt.push("
      • "+gt.text+""),Ve++;var st=[];return Ve=je(Ke,Ve,gt.level,st),st.length>0&&(tt.push("
          "),st.forEach(function(St){tt.push(St)}),tt.push("
        ")),tt.push("
      • "),Ve=je(Ke,Ve,Je,tt),Ve}function ye(){return je(we,0,0,Te),Te.push("
      "),Te.join("")}const ie={heading(Ke){const Ve=Ie.exec(Ke);if(Ze+=1,Ve)return{type:"heading",raw:Ve[0],depth:Ve[1].length,text:Ve[2]}},fences(Ke){const Ve=this.rules.block.fences.exec(Ke);if(Ve){const Je=Ve[0];let tt=Oe(Je,Ve[3]||"");const gt=Ve[2]?Ve[2].trim():Ve[2];if(["latex","katex","math"].indexOf(gt)>=0){const st=de(),St=tt;tt=st,ve[st]={type:"block",expression:St}}return{type:"code",raw:Je,lang:gt,text:tt}}}},ae=/(?:\${2})([^\n`]+?)(?:\${2})/gi;let fe=0;const de=()=>`__special_katext_id_${fe++}__`;let ve={};function xe(){return ve}function he(){fe=0,ve={}}function pe(Ke){return Ke=Ke.replace(ae,(Ve,Je)=>{const tt=de();return ve[tt]={type:"inline",expression:Je},tt}),Ke}const Se=Re.listitem;Re.listitem=function(Ke){return Se(pe(Ke))};const Ne=Re.paragraph;Re.paragraph=function(Ke){return Ne(pe(Ke))};const ze=Re.tablecell;Re.tablecell=function(Ke,Ve){return ze(pe(Ke),Ve)},Re.code=function(Ke,Ve,Je){const tt=(Ve||"").match(/\S*/)[0];return tt?["latex","katex","math"].indexOf(tt)>=0?`

      ${Ke}

      `:`
      ${Je?Ke:(0,Ge.escape)(Ke,!0)}
      `:'
      '+(Je?Ke:(0,Ge.escape)(Ke,!0))+"
      "},Re.heading=function(Ke,Ve,Je){let tt=this.options.headerPrefix+Je.toLowerCase().replace(/[^\w\\u4e00-\\u9fa5]]+/g,"-");return we.push({anchor:tt,level:Ve,text:Ke}),"'+Ke+""},et().setOptions({silent:!0,gfm:!0,pedantic:!1}),et().use({tokenizer:ie,renderer:Re}),an.ZP=et()},82309:function(sn,an,Be){"use strict";Be.d(an,{rX:function(){return he},pW:function(){return pe},gy:function(){return Se},xY:function(){return xe},O5:function(){return ve},tJ:function(){return ye},o1:function(){return ie},Rd:function(){return de}});var He=Be(24459),et=Be(43418),Ge=Be(28103),ke=Be(8591),Ze=Be(73898),Oe=Be(88230),we=Be(87169),Te=Be(25510),Re="data:image/png;base64,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",Ie=Be.p+"static/newqrcode.a8740efb.png",be=Be(32637),Pe=Be(59301),je=(Ne,ze,Ke)=>new Promise((Ve,Je)=>{var tt=St=>{try{st(Ke.next(St))}catch(At){Je(At)}},gt=St=>{try{st(Ke.throw(St))}catch(At){Je(At)}},st=St=>St.done?Ve(St.value):Promise.resolve(St.value).then(tt,gt);st((Ke=Ke.apply(Ne,ze)).next())});const ye=(Ne,ze=!1,Ke=!1,Ve="",Je=!1)=>!!(ie(Ne)&&ae(Ne,ze,Ke,Ve,Je)),ie=Ne=>(0,Ze.bg)()?!0:(Ne({type:"user/showPopLogin",payload:{showPopLogin:!0,showClosable:!0}}),!1),ae=(Ne,ze=!1,Ke=!0,Ve="",Je=!1)=>{var tt;const{user:gt}=(0,He.getDvaApp)()._store.getState();return(tt=gt.userInfo)!=null&&tt.profile_completed?!0:(Ke?Ne({type:"user/showUpdateProfilePanel",payload:{showUpdateProfilePanel:!0,showClosable:!0,backurl:Ve,isCurrentPage:Je}}):et.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,Oe.xg)("/account/profile/edit"),fe()}}),!1)},fe=()=>{et.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()}})},de=()=>{et.default.warning({title:"\u63D0\u793A",icon:null,width:400,content:Pe.createElement("div",{style:{textAlign:"center"}},Pe.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"),Pe.createElement("img",{style:{border:"1px solid #D8E3E9",width:190,height:180},src:be}),Pe.createElement("div",{style:{color:"#666666",fontSize:14,marginTop:15}},"\u6DFB\u52A0\u5BA2\u670D\u4EBA\u5458\u5FAE\u4FE1\uFF0C\u83B7\u5F97\u66F4\u591A\u652F\u6301"))})},ve=()=>{var Ne;const{user:ze}=(0,He.getDvaApp)()._store.getState();return(Ne=ze.userInfo)!=null&&Ne.professional_certification?!0:(et.default.confirm({title:"\u63D0\u793A",centered:!0,content:Pe.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,Oe.xg)("/account/certification")}}),!1)},xe=()=>(0,Ze.V9)()?!0:(et.default.warning({centered:!0,width:530,title:"\u63D0\u793A",content:Pe.createElement("div",{className:"tc",style:{marginLeft:-38}},Pe.createElement("p",null,"\u626B\u7801\u52A0\u5934\u6B4C\u52A9\u6559\uFF0C\u7533\u8BF7\u64CD\u4F5C\u6743\u9650"),Pe.createElement("img",{src:Ie,width:200})),okText:"\u6211\u77E5\u9053\u4E86",maskClosable:!0}),!1),he=(Ne,ze)=>Ne?!0:(et.default.confirm({centered:!0,zIndex:1e4,width:530,title:"\u63D0\u793A",content:Pe.createElement("div",null,Pe.createElement("p",null,ze||"\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"),Pe.createElement("div",{style:{marginLeft:"110px"}},Pe.createElement("img",{src:Re,width:200}),Pe.createElement("div",{style:{marginLeft:"35px"}},"\u7FA4\u53F7\uFF1A","714336072"))),okText:"\u7ACB\u5373\u8054\u7CFB",cancelText:"\u53D6\u6D88",onOk:()=>{(0,Oe.xg)("https://qm.qq.com/cgi-bin/qm/qr?k=tIyDPXUtE0yEk-MOJxhH55lTUJS-nYAM&jump_from=webapi")}}),!1),pe=Ne=>{et.default.info({title:"\u8054\u7CFB\u5E73\u53F0\u8FD0\u8425",icon:null,width:615,centered:!0,content:Pe.createElement("div",null,Pe.createElement("div",null,Pe.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"),Pe.createElement(Ge.Z,null),Pe.createElement("p",{style:{color:"#666666",fontSize:12}}," ",Pe.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 ",Pe.createElement("a",null,Ne),"\u5929\u3002"),Pe.createElement("p",{style:{color:"#666666",fontSize:12}}," ",Pe.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")),Pe.createElement("div",{style:{textAlign:"center",marginTop:30}},Pe.createElement("img",{style:{border:"4px solid #0152d9",borderRadius:"4px"},src:Te,alt:"\u4E8C\u7EF4\u7801",width:160})))})},Se=(Ne,ze="")=>{const{shixunsDetail:{detail:Ke}}=(0,He.getDvaApp)()._store.getState();if((Ke==null?void 0:Ke.public)===2||(Ke==null?void 0:Ke.public)===1||(Ke==null?void 0:Ke.shixun_status)===3){let Ve="";return(Ke==null?void 0:Ke.public)===2&&(Ve="\u5DF2\u516C\u5F00"),(Ke==null?void 0:Ke.public)===1&&(Ve="\u5F85\u5BA1\u6838"),(Ke==null?void 0:Ke.shixun_status)===3&&(Ve="\u5DF2\u5173\u95ED"),et.default.info({centered:!0,icon:Pe.createElement(we.Z,{style:{color:"#faad14"}}),width:460,title:"\u63D0\u793A",content:Pe.createElement("div",{className:"tc",style:{marginLeft:-38}},Pe.createElement("div",{style:{display:"flex",flexDirection:"column",alignItems:"flex-start",paddingLeft:38,margin:"12px 0"}},Pe.createElement("span",null,"\u8BE5\u5B9E\u8DF5\u9879\u76EE\u7684\u72B6\u6001\u4E3A",Ve,"\uFF0C",ze,"\u3002"),Pe.createElement("p",null,"\u5982\u6709\u9700\u8981\uFF0C\u8BF7\u8054\u7CFB\u5E73\u53F0\u7BA1\u7406\u5458\u8FDB\u884C\u6280\u672F\u652F\u6301\u3002")),Pe.createElement("img",{style:{border:"4px solid #0152d9",borderRadius:"4px"},src:Te,alt:"\u4E8C\u7EF4\u7801",width:160})),okText:"\u6211\u77E5\u9053\u4E86"}),!0}return(Ke==null?void 0:Ke.shixun_status)===2?(et.default.confirm({centered:!0,icon:Pe.createElement(we.Z,null),title:"\u63D0\u793A",content:Pe.createElement("div",null,Pe.createElement("span",null,"\u8BE5\u5B9E\u8DF5\u9879\u76EE\u5DF2\u53D1\u5E03\uFF0C",ze,"\u3002"),Pe.createElement("br",null),Pe.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:()=>{et.default.confirm({width:440,centered:!0,icon:Pe.createElement(we.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:()=>je(void 0,null,function*(){(yield Ne({type:"shixunsDetail/cancelRelease",payload:{id:Ke==null?void 0:Ke.identifier}})).status!==401&&(ke.ZP.success("\u64A4\u9500\u53D1\u5E03\u6210\u529F\u3002\u5B9E\u8BAD\u56DE\u5230\u672A\u53D1\u5E03\u7684\u72B6\u6001\u3002"),Ne({type:"shixunsDetail/getShixunsDetail",payload:{id:Ke==null?void 0:Ke.identifier}}),Ne({type:"practiceSetting/getCommonData",payload:{id:Ke==null?void 0:Ke.identifier}}))})})}}),!0):!1}},44860:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return Jr}});class He{static install(){Object.setPrototypeOf=Object.setPrototypeOf||function(Le,We){return Le.__proto__=We,Le},Object.assign=Object.assign||function(Le){if(Le==null)throw new TypeError("Cannot convert undefined or null to object");let We=Object(Le);for(let De=1;De ${We}`;Ze.ENABLE_CALLBACK&&Ze.emitter.emit("log","error",De),Ze.ENABLE_ERROR&&(console.error?console.error(De):console.warn?console.warn(De):console.log(De))}static i(Le,We){(!Le||Ze.FORCE_GLOBAL_TAG)&&(Le=Ze.GLOBAL_TAG);let De=`[${Le}] > ${We}`;Ze.ENABLE_CALLBACK&&Ze.emitter.emit("log","info",De),Ze.ENABLE_INFO&&(console.info?console.info(De):console.log(De))}static w(Le,We){(!Le||Ze.FORCE_GLOBAL_TAG)&&(Le=Ze.GLOBAL_TAG);let De=`[${Le}] > ${We}`;Ze.ENABLE_CALLBACK&&Ze.emitter.emit("log","warn",De),Ze.ENABLE_WARN&&(console.warn?console.warn(De):console.log(De))}static d(Le,We){(!Le||Ze.FORCE_GLOBAL_TAG)&&(Le=Ze.GLOBAL_TAG);let De=`[${Le}] > ${We}`;Ze.ENABLE_CALLBACK&&Ze.emitter.emit("log","debug",De),Ze.ENABLE_DEBUG&&(console.debug?console.debug(De):console.log(De))}static v(Le,We){(!Le||Ze.FORCE_GLOBAL_TAG)&&(Le=Ze.GLOBAL_TAG);let De=`[${Le}] > ${We}`;Ze.ENABLE_CALLBACK&&Ze.emitter.emit("log","verbose",De),Ze.ENABLE_VERBOSE&&console.log(De)}}Ze.GLOBAL_TAG="flv.js",Ze.FORCE_GLOBAL_TAG=!1,Ze.ENABLE_ERROR=!0,Ze.ENABLE_INFO=!0,Ze.ENABLE_WARN=!0,Ze.ENABLE_DEBUG=!0,Ze.ENABLE_VERBOSE=!0,Ze.ENABLE_CALLBACK=!1,Ze.emitter=new(ke());var Oe=Ze;class we{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(Le){this._firstCheckpoint===0?(this._firstCheckpoint=this._now(),this._lastCheckpoint=this._firstCheckpoint,this._intervalBytes+=Le,this._totalBytes+=Le):this._now()-this._lastCheckpoint<1e3?(this._intervalBytes+=Le,this._totalBytes+=Le):(this._lastSecondBytes=this._intervalBytes,this._intervalBytes=Le,this._totalBytes+=Le,this._lastCheckpoint=this._now())}get currentKBps(){this.addBytes(0);let Le=(this._now()-this._lastCheckpoint)/1e3;return Le==0&&(Le=1),this._intervalBytes/Le/1024}get lastSecondKBps(){return this.addBytes(0),this._lastSecondBytes!==0?this._lastSecondBytes/1024:this._now()-this._lastCheckpoint>=500?this.currentKBps:0}get averageKBps(){let Le=(this._now()-this._firstCheckpoint)/1e3;return this._totalBytes/Le/1024}}var Te=we;class Re{constructor(Le){this._message=Le}get name(){return"RuntimeException"}get message(){return this._message}toString(){return this.name+": "+this.message}}class Ie extends Re{constructor(Le){super(Le)}get name(){return"IllegalStateException"}}class be extends Re{constructor(Le){super(Le)}get name(){return"InvalidArgumentException"}}class Pe extends Re{constructor(Le){super(Le)}get name(){return"NotImplementedException"}}const je={kIdle:0,kConnecting:1,kBuffering:2,kError:3,kComplete:4},ye={OK:"OK",EXCEPTION:"Exception",HTTP_STATUS_CODE_INVALID:"HttpStatusCodeInvalid",CONNECTING_TIMEOUT:"ConnectingTimeout",EARLY_EOF:"EarlyEof",UNRECOVERABLE_EARLY_EOF:"UnrecoverableEarlyEof"};class ie{constructor(Le){this._type=Le||"undefined",this._status=je.kIdle,this._needStash=!1,this._onContentLengthKnown=null,this._onURLRedirect=null,this._onDataArrival=null,this._onError=null,this._onComplete=null}destroy(){this._status=je.kIdle,this._onContentLengthKnown=null,this._onURLRedirect=null,this._onDataArrival=null,this._onError=null,this._onComplete=null}isWorking(){return this._status===je.kConnecting||this._status===je.kBuffering}get type(){return this._type}get status(){return this._status}get needStashBuffer(){return this._needStash}get onContentLengthKnown(){return this._onContentLengthKnown}set onContentLengthKnown(Le){this._onContentLengthKnown=Le}get onURLRedirect(){return this._onURLRedirect}set onURLRedirect(Le){this._onURLRedirect=Le}get onDataArrival(){return this._onDataArrival}set onDataArrival(Le){this._onDataArrival=Le}get onError(){return this._onError}set onError(Le){this._onError=Le}get onComplete(){return this._onComplete}set onComplete(Le){this._onComplete=Le}open(Le,We){throw new Pe("Unimplemented abstract function!")}abort(){throw new Pe("Unimplemented abstract function!")}}let ae={};function fe(){let Kt=self.navigator.userAgent.toLowerCase(),Le=/(edge)\/([\w.]+)/.exec(Kt)||/(opr)[\/]([\w.]+)/.exec(Kt)||/(chrome)[ \/]([\w.]+)/.exec(Kt)||/(iemobile)[\/]([\w.]+)/.exec(Kt)||/(version)(applewebkit)[ \/]([\w.]+).*(safari)[ \/]([\w.]+)/.exec(Kt)||/(webkit)[ \/]([\w.]+).*(version)[ \/]([\w.]+).*(safari)[ \/]([\w.]+)/.exec(Kt)||/(webkit)[ \/]([\w.]+)/.exec(Kt)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(Kt)||/(msie) ([\w.]+)/.exec(Kt)||Kt.indexOf("trident")>=0&&/(rv)(?::| )([\w.]+)/.exec(Kt)||Kt.indexOf("compatible")<0&&/(firefox)[ \/]([\w.]+)/.exec(Kt)||[],We=/(ipad)/.exec(Kt)||/(ipod)/.exec(Kt)||/(windows phone)/.exec(Kt)||/(iphone)/.exec(Kt)||/(kindle)/.exec(Kt)||/(android)/.exec(Kt)||/(windows)/.exec(Kt)||/(mac)/.exec(Kt)||/(linux)/.exec(Kt)||/(cros)/.exec(Kt)||[],De={browser:Le[5]||Le[3]||Le[1]||"",version:Le[2]||Le[4]||"0",majorVersion:Le[4]||Le[2]||"0",platform:We[0]||""},qe={};if(De.browser){qe[De.browser]=!0;let dt=De.majorVersion.split(".");qe.version={major:parseInt(De.majorVersion,10),string:De.version},dt.length>1&&(qe.version.minor=parseInt(dt[1],10)),dt.length>2&&(qe.version.build=parseInt(dt[2],10))}if(De.platform&&(qe[De.platform]=!0),(qe.chrome||qe.opr||qe.safari)&&(qe.webkit=!0),qe.rv||qe.iemobile){qe.rv&&delete qe.rv;let dt="msie";De.browser=dt,qe[dt]=!0}if(qe.edge){delete qe.edge;let dt="msedge";De.browser=dt,qe[dt]=!0}if(qe.opr){let dt="opera";De.browser=dt,qe[dt]=!0}if(qe.safari&&qe.android){let dt="android";De.browser=dt,qe[dt]=!0}qe.name=De.browser,qe.platform=De.platform;for(let dt in ae)ae.hasOwnProperty(dt)&&delete ae[dt];Object.assign(ae,qe)}fe();var de=ae;class ve extends ie{static isSupported(){try{let Le=de.msedge&&de.version.minor>=15048,We=de.msedge?Le:!0;return self.fetch&&self.ReadableStream&&We}catch(Le){return!1}}constructor(Le,We){super("fetch-stream-loader"),this.TAG="FetchStreamLoader",this._seekHandler=Le,this._config=We,this._needStash=!0,this._requestAbort=!1,this._contentLength=null,this._receivedLength=0}destroy(){this.isWorking()&&this.abort(),super.destroy()}open(Le,We){this._dataSource=Le,this._range=We;let De=Le.url;this._config.reuseRedirectedURL&&Le.redirectedURL!=null&&(De=Le.redirectedURL);let qe=this._seekHandler.getConfig(De,We),dt=new self.Headers;if(typeof qe.headers=="object"){let wt=qe.headers;for(let rn in wt)wt.hasOwnProperty(rn)&&dt.append(rn,wt[rn])}let Mt={method:"GET",headers:dt,mode:"cors",cache:"default",referrerPolicy:"no-referrer-when-downgrade"};if(typeof this._config.headers=="object")for(let wt in this._config.headers)dt.append(wt,this._config.headers[wt]);Le.cors===!1&&(Mt.mode="same-origin"),Le.withCredentials&&(Mt.credentials="include"),Le.referrerPolicy&&(Mt.referrerPolicy=Le.referrerPolicy),this._status=je.kConnecting,self.fetch(qe.url,Mt).then(wt=>{if(this._requestAbort){this._requestAbort=!1,this._status=je.kIdle;return}if(wt.ok&&wt.status>=200&&wt.status<=299){if(wt.url!==qe.url&&this._onURLRedirect){let un=this._seekHandler.removeURLParameters(wt.url);this._onURLRedirect(un)}let rn=wt.headers.get("Content-Length");return rn!=null&&(this._contentLength=parseInt(rn),this._contentLength!==0&&this._onContentLengthKnown&&this._onContentLengthKnown(this._contentLength)),this._pump.call(this,wt.body.getReader())}else if(this._status=je.kError,this._onError)this._onError(ye.HTTP_STATUS_CODE_INVALID,{code:wt.status,msg:wt.statusText});else throw new Re("FetchStreamLoader: Http code invalid, "+wt.status+" "+wt.statusText)}).catch(wt=>{if(this._status=je.kError,this._onError)this._onError(ye.EXCEPTION,{code:-1,msg:wt.message});else throw wt})}abort(){this._requestAbort=!0}_pump(Le){return Le.read().then(We=>{if(We.done)if(this._contentLength!==null&&this._receivedLength{if(We.code===11&&de.msedge)return;this._status=je.kError;let De=0,qe=null;if((We.code===19||We.message==="network error")&&(this._contentLength===null||this._contentLength!==null&&this._receivedLength299))if(this._status=je.kError,this._onError)this._onError(ye.HTTP_STATUS_CODE_INVALID,{code:We.status,msg:We.statusText});else throw new Re("MozChunkedLoader: Http code invalid, "+We.status+" "+We.statusText);else this._status=je.kBuffering}}_onProgress(Le){if(this._status===je.kError)return;this._contentLength===null&&Le.total!==null&&Le.total!==0&&(this._contentLength=Le.total,this._onContentLengthKnown&&this._onContentLengthKnown(this._contentLength));let We=Le.target.response,De=this._range.from+this._receivedLength;this._receivedLength+=We.byteLength,this._onDataArrival&&this._onDataArrival(We,De,this._receivedLength)}_onLoadEnd(Le){if(this._requestAbort===!0){this._requestAbort=!1;return}else if(this._status===je.kError)return;this._status=je.kComplete,this._onComplete&&this._onComplete(this._range.from,this._range.from+this._receivedLength-1)}_onXhrError(Le){this._status=je.kError;let We=0,De=null;if(this._contentLength&&Le.loaded=200&&We.status<=299){if(this._status=LoaderStatus.kBuffering,We.responseURL!=null){let qe=this._seekHandler.removeURLParameters(We.responseURL);We.responseURL!==this._currentRequestURL&&qe!==this._currentRedirectedURL&&(this._currentRedirectedURL=qe,this._onURLRedirect&&this._onURLRedirect(qe))}let De=We.getResponseHeader("Content-Length");if(De!=null&&this._contentLength==null){let qe=parseInt(De);qe>0&&(this._contentLength=qe,this._onContentLengthKnown&&this._onContentLengthKnown(this._contentLength))}}else if(this._status=LoaderStatus.kError,this._onError)this._onError(LoaderErrors.HTTP_STATUS_CODE_INVALID,{code:We.status,msg:We.statusText});else throw new RuntimeException("MSStreamLoader: Http code invalid, "+We.status+" "+We.statusText);else if(We.readyState===3&&We.status>=200&&We.status<=299){this._status=LoaderStatus.kBuffering;let De=We.response;this._reader.readAsArrayBuffer(De)}}_xhrOnError(Le){this._status=LoaderStatus.kError;let We=LoaderErrors.EXCEPTION,De={code:-1,msg:Le.constructor.name+" "+Le.type};if(this._onError)this._onError(We,De);else throw new RuntimeException(De.msg)}_msrOnProgress(Le){let De=Le.target.result;if(De==null){this._doReconnectIfNeeded();return}let qe=De.slice(this._lastTimeBufferSize);this._lastTimeBufferSize=De.byteLength;let dt=this._totalRange.from+this._receivedLength;this._receivedLength+=qe.byteLength,this._onDataArrival&&this._onDataArrival(qe,dt,this._receivedLength),De.byteLength>=this._bufferLimit&&(Log.v(this.TAG,`MSStream buffer exceeded max size near ${dt+qe.byteLength}, reconnecting...`),this._doReconnectIfNeeded())}_doReconnectIfNeeded(){if(this._contentLength==null||this._receivedLength=this._contentLength&&(De=this._range.from+this._contentLength-1),this._currentRequestRange={from:We,to:De},this._internalOpen(this._dataSource,this._currentRequestRange)}_internalOpen(Le,We){this._lastTimeLoaded=0;let De=Le.url;this._config.reuseRedirectedURL&&(this._currentRedirectedURL!=null?De=this._currentRedirectedURL:Le.redirectedURL!=null&&(De=Le.redirectedURL));let qe=this._seekHandler.getConfig(De,We);this._currentRequestURL=qe.url;let dt=this._xhr=new XMLHttpRequest;if(dt.open("GET",qe.url,!0),dt.responseType="arraybuffer",dt.onreadystatechange=this._onReadyStateChange.bind(this),dt.onprogress=this._onProgress.bind(this),dt.onload=this._onLoad.bind(this),dt.onerror=this._onXhrError.bind(this),Le.withCredentials&&(dt.withCredentials=!0),typeof qe.headers=="object"){let Mt=qe.headers;for(let wt in Mt)Mt.hasOwnProperty(wt)&&dt.setRequestHeader(wt,Mt[wt])}if(typeof this._config.headers=="object"){let Mt=this._config.headers;for(let wt in Mt)Mt.hasOwnProperty(wt)&&dt.setRequestHeader(wt,Mt[wt])}dt.send()}abort(){this._requestAbort=!0,this._internalAbort(),this._status=je.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(Le){let We=Le.target;if(We.readyState===2){if(We.responseURL!=null){let De=this._seekHandler.removeURLParameters(We.responseURL);We.responseURL!==this._currentRequestURL&&De!==this._currentRedirectedURL&&(this._currentRedirectedURL=De,this._onURLRedirect&&this._onURLRedirect(De))}if(We.status>=200&&We.status<=299){if(this._waitForTotalLength)return;this._status=je.kBuffering}else if(this._status=je.kError,this._onError)this._onError(ye.HTTP_STATUS_CODE_INVALID,{code:We.status,msg:We.statusText});else throw new Re("RangeLoader: Http code invalid, "+We.status+" "+We.statusText)}}_onProgress(Le){if(this._status===je.kError)return;if(this._contentLength===null){let De=!1;if(this._waitForTotalLength){this._waitForTotalLength=!1,this._totalLengthReceived=!0,De=!0;let qe=Le.total;this._internalAbort(),qe!=null&qe!==0&&(this._totalLength=qe)}if(this._range.to===-1?this._contentLength=this._totalLength-this._range.from:this._contentLength=this._range.to-this._range.from+1,De){this._openSubRange();return}this._onContentLengthKnown&&this._onContentLengthKnown(this._contentLength)}let We=Le.loaded-this._lastTimeLoaded;this._lastTimeLoaded=Le.loaded,this._speedSampler.addBytes(We)}_normalizeSpeed(Le){let We=this._chunkSizeKBList,De=We.length-1,qe=0,dt=0,Mt=De;if(Le=We[qe]&&Le=3&&(We=this._speedSampler.currentKBps)),We!==0){let Mt=this._normalizeSpeed(We);this._currentSpeedNormalized!==Mt&&(this._currentSpeedNormalized=Mt,this._currentChunkSizeKB=Mt)}let De=Le.target.response,qe=this._range.from+this._receivedLength;this._receivedLength+=De.byteLength;let dt=!1;this._contentLength!=null&&this._receivedLength0&&this._receivedLength{this._dispatchArrayBuffer(We.result)},We.readAsArrayBuffer(Le.data)}else{this._status=je.kError;let We={code:-1,msg:"Unsupported WebSocket message type: "+Le.data.constructor.name};if(this._onError)this._onError(ye.EXCEPTION,We);else throw new Re(We.msg)}}_dispatchArrayBuffer(Le){let We=Le,De=this._receivedLength;this._receivedLength+=We.byteLength,this._onDataArrival&&this._onDataArrival(We,De,this._receivedLength)}_onWebSocketError(Le){this._status=je.kError;let We={code:Le.code,msg:Le.message};if(this._onError)this._onError(ye.EXCEPTION,We);else throw new Re(We.msg)}}var Je=Ve;class tt{constructor(Le){this._zeroStart=Le||!1}getConfig(Le,We){let De={};if(We.from!==0||We.to!==-1){let qe;We.to!==-1?qe=`bytes=${We.from.toString()}-${We.to.toString()}`:qe=`bytes=${We.from.toString()}-`,De.Range=qe}else this._zeroStart&&(De.Range="bytes=0-");return{url:Le,headers:De}}removeURLParameters(Le){return Le}}var gt=tt;class st{constructor(Le,We){this._startName=Le,this._endName=We}getConfig(Le,We){let De=Le;if(We.from!==0||We.to!==-1){let qe=!0;De.indexOf("?")===-1&&(De+="?",qe=!1),qe&&(De+="&"),De+=`${this._startName}=${We.from.toString()}`,We.to!==-1&&(De+=`&${this._endName}=${We.to.toString()}`)}return{url:De,headers:{}}}removeURLParameters(Le){let We=Le.split("?")[0],De,qe=Le.indexOf("?");qe!==-1&&(De=Le.substring(qe+1));let dt="";if(De!=null&&De.length>0){let Mt=De.split("&");for(let wt=0;wt0;rn[0]!==this._startName&&rn[0]!==this._endName&&(un&&(dt+="&"),dt+=Mt[wt])}}return dt.length===0?We:We+"?"+dt}}var St=st;class At{constructor(Le,We,De){this.TAG="IOController",this._config=We,this._extraData=De,this._stashInitialSize=1024*384,We.stashInitialSize!=null&&We.stashInitialSize>0&&(this._stashInitialSize=We.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,We.enableStashBuffer===!1&&(this._enableStash=!1),this._loader=null,this._loaderClass=null,this._seekHandler=null,this._dataSource=Le,this._isWebSocketURL=/wss?:\/\/(.+?)/.test(Le.url),this._refTotalLength=Le.filesize?Le.filesize:null,this._totalLength=this._refTotalLength,this._fullRequestFlag=!1,this._currentRange=null,this._redirectedURL=null,this._speedNormalized=0,this._speedSampler=new Te,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(Le){this._extraData=Le}get onDataArrival(){return this._onDataArrival}set onDataArrival(Le){this._onDataArrival=Le}get onSeeked(){return this._onSeeked}set onSeeked(Le){this._onSeeked=Le}get onError(){return this._onError}set onError(Le){this._onError=Le}get onComplete(){return this._onComplete}set onComplete(Le){this._onComplete=Le}get onRedirect(){return this._onRedirect}set onRedirect(Le){this._onRedirect=Le}get onRecoveredEarlyEof(){return this._onRecoveredEarlyEof}set onRecoveredEarlyEof(Le){this._onRecoveredEarlyEof=Le}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===Ke?this._loader.currentSpeed:this._speedSampler.lastSecondKBps}get loaderType(){return this._loader.type}_selectSeekHandler(){let Le=this._config;if(Le.seekType==="range")this._seekHandler=new gt(this._config.rangeLoadZeroStart);else if(Le.seekType==="param"){let We=Le.seekParamStart||"bstart",De=Le.seekParamEnd||"bend";this._seekHandler=new St(We,De)}else if(Le.seekType==="custom"){if(typeof Le.customSeekHandler!="function")throw new be("Custom seekType specified in config but invalid customSeekHandler!");this._seekHandler=new Le.customSeekHandler}else throw new be(`Invalid seekType in config: ${Le.seekType}`)}_selectLoader(){if(this._config.customLoader!=null)this._loaderClass=this._config.customLoader;else if(this._isWebSocketURL)this._loaderClass=Je;else if(xe.isSupported())this._loaderClass=xe;else if(pe.isSupported())this._loaderClass=pe;else if(Ke.isSupported())this._loaderClass=Ke;else throw new Re("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(Le){this._currentRange={from:0,to:-1},Le&&(this._currentRange.from=Le),this._speedSampler.reset(),Le||(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 Le=this._resumeFrom;this._resumeFrom=0,this._internalSeek(Le,!0)}}seek(Le){this._paused=!1,this._stashUsed=0,this._stashByteStart=0,this._internalSeek(Le,!0)}_internalSeek(Le,We){this._loader.isWorking()&&this._loader.abort(),this._flushStashBuffer(We),this._loader.destroy(),this._loader=null;let De={from:Le,to:-1};this._currentRange={from:De.from,to:-1},this._speedSampler.reset(),this._stashSize=this._stashInitialSize,this._createLoader(),this._loader.open(this._dataSource,De),this._onSeeked&&this._onSeeked()}updateUrl(Le){if(!Le||typeof Le!="string"||Le.length===0)throw new be("Url must be a non-empty string!");this._dataSource.url=Le}_expandBuffer(Le){let We=this._stashSize;for(;We+1024*1024*10){let qe=new Uint8Array(this._stashBuffer,0,this._stashUsed);new Uint8Array(De,0,We).set(qe,0)}this._stashBuffer=De,this._bufferSize=We}_normalizeSpeed(Le){let We=this._speedNormalizeList,De=We.length-1,qe=0,dt=0,Mt=De;if(Le=We[qe]&&Le=512&&Le<=1024?We=Math.floor(Le*1.5):We=Le*2,We>8192&&(We=8192);let De=We*1024+1024*1024*1;this._bufferSize0){let Mt=this._stashBuffer.slice(0,this._stashUsed),wt=this._dispatchChunks(Mt,this._stashByteStart);if(wt0){let rn=new Uint8Array(Mt,wt);dt.set(rn,0),this._stashUsed=rn.byteLength,this._stashByteStart+=wt}}else this._stashUsed=0,this._stashByteStart+=wt;this._stashUsed+Le.byteLength>this._bufferSize&&(this._expandBuffer(this._stashUsed+Le.byteLength),dt=new Uint8Array(this._stashBuffer,0,this._bufferSize)),dt.set(new Uint8Array(Le),this._stashUsed),this._stashUsed+=Le.byteLength}else{let Mt=this._dispatchChunks(Le,We);if(Mtthis._bufferSize&&(this._expandBuffer(wt),dt=new Uint8Array(this._stashBuffer,0,this._bufferSize)),dt.set(new Uint8Array(Le,Mt),0),this._stashUsed+=wt,this._stashByteStart=We+Mt}}}else if(this._stashUsed===0){let dt=this._dispatchChunks(Le,We);if(dtthis._bufferSize&&this._expandBuffer(Mt),new Uint8Array(this._stashBuffer,0,this._bufferSize).set(new Uint8Array(Le,dt),0),this._stashUsed+=Mt,this._stashByteStart=We+dt}}else{this._stashUsed+Le.byteLength>this._bufferSize&&this._expandBuffer(this._stashUsed+Le.byteLength);let dt=new Uint8Array(this._stashBuffer,0,this._bufferSize);dt.set(new Uint8Array(Le),this._stashUsed),this._stashUsed+=Le.byteLength;let Mt=this._dispatchChunks(this._stashBuffer.slice(0,this._stashUsed),this._stashByteStart);if(Mt0){let wt=new Uint8Array(this._stashBuffer,Mt);dt.set(wt,0)}this._stashUsed-=Mt,this._stashByteStart+=Mt}}_flushStashBuffer(Le){if(this._stashUsed>0){let We=this._stashBuffer.slice(0,this._stashUsed),De=this._dispatchChunks(We,this._stashByteStart),qe=We.byteLength-De;if(De0){let dt=new Uint8Array(this._stashBuffer,0,this._bufferSize),Mt=new Uint8Array(We,De);dt.set(Mt,0),this._stashUsed=Mt.byteLength,this._stashByteStart+=De}return 0}return this._stashUsed=0,this._stashByteStart=0,qe}return 0}_onLoaderComplete(Le,We){this._flushStashBuffer(!0),this._onComplete&&this._onComplete(this._extraData)}_onLoaderError(Le,We){switch(Oe.e(this.TAG,`Loader error, code = ${We.code}, msg = ${We.msg}`),this._flushStashBuffer(!1),this._isEarlyEofReconnecting&&(this._isEarlyEofReconnecting=!1,Le=ye.UNRECOVERABLE_EARLY_EOF),Le){case ye.EARLY_EOF:{if(!this._config.isLive&&this._totalLength){let De=this._currentRange.to+1;De0){let We=Ut.getConfig();Le.emit("change",We)}}static registerListener(Le){Ut.emitter.addListener("change",Le)}static removeListener(Le){Ut.emitter.removeListener("change",Le)}static addLogListener(Le){Oe.emitter.addListener("log",Le),Oe.emitter.listenerCount("log")>0&&(Oe.ENABLE_CALLBACK=!0,Ut._notifyChange())}static removeLogListener(Le){Oe.emitter.removeListener("log",Le),Oe.emitter.listenerCount("log")===0&&(Oe.ENABLE_CALLBACK=!1,Ut._notifyChange())}}Ut.emitter=new(ke());var Ft=Ut;class Yt{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 Le=this.hasAudio===!1||this.hasAudio===!0&&this.audioCodec!=null&&this.audioSampleRate!=null&&this.audioChannelCount!=null,We=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&&Le&&We}isSeekable(){return this.hasKeyframesIndex===!0}getNearestKeyframe(Le){if(this.keyframesIndex==null)return null;let We=this.keyframesIndex,De=this._search(We.times,Le);return{index:De,milliseconds:We.times[De],fileposition:We.filepositions[De]}}_search(Le,We){let De=0,qe=Le.length-1,dt=0,Mt=0,wt=qe;for(We=Le[dt]&&We=128){Le.push(String.fromCharCode(dt&65535)),De+=2;continue}}}else if(We[De]<240){if(Dn(We,De,2)){let dt=(We[De]&15)<<12|(We[De+1]&63)<<6|We[De+2]&63;if(dt>=2048&&(dt&63488)!==55296){Le.push(String.fromCharCode(dt&65535)),De+=3;continue}}}else if(We[De]<248&&Dn(We,De,3)){let dt=(We[De]&7)<<18|(We[De+1]&63)<<12|(We[De+2]&63)<<6|We[De+3]&63;if(dt>65536&&dt<1114112){dt-=65536,Le.push(String.fromCharCode(dt>>>10|55296)),Le.push(String.fromCharCode(dt&1023|56320)),De+=4;continue}}}Le.push("\uFFFD"),++De}return Le.join("")}var Zn=Rn;let ln=function(){let Kt=new ArrayBuffer(2);return new DataView(Kt).setInt16(0,256,!0),new Int16Array(Kt)[0]===256}();class Gn{static parseScriptData(Le,We,De){let qe={};try{let dt=Gn.parseValue(Le,We,De),Mt=Gn.parseValue(Le,We+dt.size,De-dt.size);qe[dt.data]=Mt.data}catch(dt){Oe.e("AMF",dt.toString())}return qe}static parseObject(Le,We,De){if(De<3)throw new Ie("Data not enough when parse ScriptDataObject");let qe=Gn.parseString(Le,We,De),dt=Gn.parseValue(Le,We+qe.size,De-qe.size),Mt=dt.objectEnd;return{data:{name:qe.data,value:dt.data},size:qe.size+dt.size,objectEnd:Mt}}static parseVariable(Le,We,De){return Gn.parseObject(Le,We,De)}static parseString(Le,We,De){if(De<2)throw new Ie("Data not enough when parse String");let dt=new DataView(Le,We,De).getUint16(0,!ln),Mt;return dt>0?Mt=Zn(new Uint8Array(Le,We+2,dt)):Mt="",{data:Mt,size:2+dt}}static parseLongString(Le,We,De){if(De<4)throw new Ie("Data not enough when parse LongString");let dt=new DataView(Le,We,De).getUint32(0,!ln),Mt;return dt>0?Mt=Zn(new Uint8Array(Le,We+4,dt)):Mt="",{data:Mt,size:4+dt}}static parseDate(Le,We,De){if(De<10)throw new Ie("Data size invalid when parse Date");let qe=new DataView(Le,We,De),dt=qe.getFloat64(0,!ln),Mt=qe.getInt16(8,!ln);return dt+=Mt*60*1e3,{data:new Date(dt),size:10}}static parseValue(Le,We,De){if(De<1)throw new Ie("Data not enough when parse Value");let qe=new DataView(Le,We,De),dt=1,Mt=qe.getUint8(0),wt,rn=!1;try{switch(Mt){case 0:wt=qe.getFloat64(1,!ln),dt+=8;break;case 1:{wt=!!qe.getUint8(1),dt+=1;break}case 2:{let un=Gn.parseString(Le,We+1,De-1);wt=un.data,dt+=un.size;break}case 3:{wt={};let un=0;for((qe.getUint32(De-4,!ln)&16777215)===9&&(un=3);dt32)throw new be("ExpGolomb: readBits() bits exceeded max 32bits!");if(Le<=this._current_word_bits_left){let Mt=this._current_word>>>32-Le;return this._current_word<<=Le,this._current_word_bits_left-=Le,Mt}let We=this._current_word_bits_left?this._current_word:0;We=We>>>32-this._current_word_bits_left;let De=Le-this._current_word_bits_left;this._fillCurrentWord();let qe=Math.min(De,this._current_word_bits_left),dt=this._current_word>>>32-qe;return this._current_word<<=qe,this._current_word_bits_left-=qe,We=We<>>Le)return this._current_word<<=Le,this._current_word_bits_left-=Le,Le;return this._fillCurrentWord(),Le+this._skipLeadingZero()}readUEG(){let Le=this._skipLeadingZero();return this.readBits(Le+1)-1}readSEG(){let Le=this.readUEG();return Le&1?Le+1>>>1:-1*(Le>>>1)}}var xt=qt;class ft{static _ebsp2rbsp(Le){let We=Le,De=We.byteLength,qe=new Uint8Array(De),dt=0;for(let Mt=0;Mt=2&&We[Mt]===3&&We[Mt-1]===0&&We[Mt-2]===0||(qe[dt]=We[Mt],dt++);return new Uint8Array(qe.buffer,0,dt)}static parseSPS(Le){let We=ft._ebsp2rbsp(Le),De=new xt(We);De.readByte();let qe=De.readByte();De.readByte();let dt=De.readByte();De.readUEG();let Mt=ft.getProfileString(qe),wt=ft.getLevelString(dt),rn=1,un=420,zn=[0,420,422,444],Fn=8;if((qe===100||qe===110||qe===122||qe===244||qe===44||qe===83||qe===86||qe===118||qe===128||qe===138||qe===144)&&(rn=De.readUEG(),rn===3&&De.readBits(1),rn<=3&&(un=zn[rn]),Fn=De.readUEG()+8,De.readUEG(),De.readBits(1),De.readBool())){let Vi=rn!==3?8:12;for(let to=0;to0&&Vi<16?(Tr=to[Vi-1],ur=bo[Vi-1]):Vi===255&&(Tr=De.readByte()<<8|De.readByte(),ur=De.readByte()<<8|De.readByte())}if(De.readBool()&&De.readBool(),De.readBool()&&(De.readBits(4),De.readBool()&&De.readBits(24)),De.readBool()&&(De.readUEG(),De.readUEG()),De.readBool()){let Vi=De.readBits(32),to=De.readBits(32);jr=De.readBool(),fr=to,qn=Vi*2,Br=fr/qn}}let ui=1;(Tr!==1||ur!==1)&&(ui=Tr/ur);let $i=0,wr=0;if(rn===0)$i=1,wr=2-Bn;else{let Vi=rn===3?1:2,to=rn===1?2:1;$i=Vi,wr=to*(2-Bn)}let oi=(tr+1)*16,ji=(2-Bn)*((dr+1)*16);oi-=(An+Nn)*$i,ji-=($n+lr)*wr;let Yi=Math.ceil(oi*ui);return De.destroy(),De=null,{profile_string:Mt,level_string:wt,bit_depth:Fn,ref_frames:Vn,chroma_format:un,chroma_format_string:ft.getChromaFormatString(un),frame_rate:{fixed:jr,fps:Br,fps_den:qn,fps_num:fr},sar_ratio:{width:Tr,height:ur},codec_size:{width:oi,height:ji},present_size:{width:Yi,height:ji}}}static _skipScalingList(Le,We){let De=8,qe=8,dt=0;for(let Mt=0;Mt>>8&255|(Kt&255)<<8}function nn(Kt){return(Kt&4278190080)>>>24|(Kt&16711680)>>>8|(Kt&65280)<<8|(Kt&255)<<24}function Pt(Kt,Le){return Kt[Le]<<24|Kt[Le+1]<<16|Kt[Le+2]<<8|Kt[Le+3]}class Vt{constructor(Le,We){this.TAG="FLVDemuxer",this._config=We,this._onError=null,this._onMediaInfo=null,this._onMetaDataArrived=null,this._onScriptDataArrived=null,this._onTrackMetadata=null,this._onDataAvailable=null,this._dataOffset=Le.dataOffset,this._firstParse=!0,this._dispatch=!1,this._hasAudio=Le.hasAudioTrack,this._hasVideo=Le.hasVideoTrack,this._hasAudioFlagOverrided=!1,this._hasVideoFlagOverrided=!1,this._audioInitialMetadataDispatched=!1,this._videoInitialMetadataDispatched=!1,this._mediaInfo=new dn,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 De=new ArrayBuffer(2);return new DataView(De).setInt16(0,256,!0),new Int16Array(De)[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(Le){let We=new Uint8Array(Le),De={match:!1};if(We[0]!==70||We[1]!==76||We[2]!==86||We[3]!==1)return De;let qe=(We[4]&4)>>>2!==0,dt=(We[4]&1)!==0,Mt=Pt(We,5);return Mt<9?De:{match:!0,consumed:Mt,dataOffset:Mt,hasAudioTrack:qe,hasVideoTrack:dt}}bindDataSource(Le){return Le.onDataArrival=this.parseChunks.bind(this),this}get onTrackMetadata(){return this._onTrackMetadata}set onTrackMetadata(Le){this._onTrackMetadata=Le}get onMediaInfo(){return this._onMediaInfo}set onMediaInfo(Le){this._onMediaInfo=Le}get onMetaDataArrived(){return this._onMetaDataArrived}set onMetaDataArrived(Le){this._onMetaDataArrived=Le}get onScriptDataArrived(){return this._onScriptDataArrived}set onScriptDataArrived(Le){this._onScriptDataArrived=Le}get onError(){return this._onError}set onError(Le){this._onError=Le}get onDataAvailable(){return this._onDataAvailable}set onDataAvailable(Le){this._onDataAvailable=Le}get timestampBase(){return this._timestampBase}set timestampBase(Le){this._timestampBase=Le}get overridedDuration(){return this._duration}set overridedDuration(Le){this._durationOverrided=!0,this._duration=Le,this._mediaInfo.duration=Le}set overridedHasAudio(Le){this._hasAudioFlagOverrided=!0,this._hasAudio=Le,this._mediaInfo.hasAudio=Le}set overridedHasVideo(Le){this._hasVideoFlagOverrided=!0,this._hasVideo=Le,this._mediaInfo.hasVideo=Le}resetMediaInfo(){this._mediaInfo=new dn}_isInitialMetadataDispatched(){return this._hasAudio&&this._hasVideo?this._audioInitialMetadataDispatched&&this._videoInitialMetadataDispatched:this._hasAudio&&!this._hasVideo?this._audioInitialMetadataDispatched:!this._hasAudio&&this._hasVideo?this._videoInitialMetadataDispatched:!1}parseChunks(Le,We){if(!this._onError||!this._onMediaInfo||!this._onTrackMetadata||!this._onDataAvailable)throw new Ie("Flv: onError & onMediaInfo & onTrackMetadata & onDataAvailable callback must be specified");let De=0,qe=this._littleEndian;if(We===0)if(Le.byteLength>13)De=Vt.probe(Le).dataOffset;else return 0;for(this._firstParse&&(this._firstParse=!1,We+De!==this._dataOffset&&Oe.w(this.TAG,"First time parsing but chunk byteStart invalid!"),new DataView(Le,De).getUint32(0,!qe)!==0&&Oe.w(this.TAG,"PrevTagSize0 !== 0 !!!"),De+=4);DeLe.byteLength)break;let Mt=dt.getUint8(0),wt=dt.getUint32(0,!qe)&16777215;if(De+11+wt+4>Le.byteLength)break;if(Mt!==8&&Mt!==9&&Mt!==18){Oe.w(this.TAG,`Unsupported tag type ${Mt}, skipped`),De+=11+wt+4;continue}let rn=dt.getUint8(4),un=dt.getUint8(5),zn=dt.getUint8(6),Fn=dt.getUint8(7),tn=zn|un<<8|rn<<16|Fn<<24;(dt.getUint32(7,!qe)&16777215)!==0&&Oe.w(this.TAG,"Meet tag which has StreamID != 0!");let tr=De+11;switch(Mt){case 8:this._parseAudioData(Le,tr,wt,tn);break;case 9:this._parseVideoData(Le,tr,wt,tn,We+De);break;case 18:this._parseScriptData(Le,tr,wt);break}let dr=dt.getUint32(11+wt,!qe);dr!==11+wt&&Oe.w(this.TAG,`Invalid PrevTagSize ${dr}`),De+=11+wt+4}return this._isInitialMetadataDispatched()&&this._dispatch&&(this._audioTrack.length||this._videoTrack.length)&&this._onDataAvailable(this._audioTrack,this._videoTrack),De}_parseScriptData(Le,We,De){let qe=Wn.parseScriptData(Le,We,De);if(qe.hasOwnProperty("onMetaData")){if(qe.onMetaData==null||typeof qe.onMetaData!="object"){Oe.w(this.TAG,"Invalid onMetaData structure!");return}this._metadata&&Oe.w(this.TAG,"Found another onMetaData tag!"),this._metadata=qe;let dt=this._metadata.onMetaData;if(this._onMetaDataArrived&&this._onMetaDataArrived(Object.assign({},dt)),typeof dt.hasAudio=="boolean"&&this._hasAudioFlagOverrided===!1&&(this._hasAudio=dt.hasAudio,this._mediaInfo.hasAudio=this._hasAudio),typeof dt.hasVideo=="boolean"&&this._hasVideoFlagOverrided===!1&&(this._hasVideo=dt.hasVideo,this._mediaInfo.hasVideo=this._hasVideo),typeof dt.audiodatarate=="number"&&(this._mediaInfo.audioDataRate=dt.audiodatarate),typeof dt.videodatarate=="number"&&(this._mediaInfo.videoDataRate=dt.videodatarate),typeof dt.width=="number"&&(this._mediaInfo.width=dt.width),typeof dt.height=="number"&&(this._mediaInfo.height=dt.height),typeof dt.duration=="number"){if(!this._durationOverrided){let Mt=Math.floor(dt.duration*this._timescale);this._duration=Mt,this._mediaInfo.duration=Mt}}else this._mediaInfo.duration=0;if(typeof dt.framerate=="number"){let Mt=Math.floor(dt.framerate*1e3);if(Mt>0){let wt=Mt/1e3;this._referenceFrameRate.fixed=!0,this._referenceFrameRate.fps=wt,this._referenceFrameRate.fps_num=Mt,this._referenceFrameRate.fps_den=1e3,this._mediaInfo.fps=wt}}if(typeof dt.keyframes=="object"){this._mediaInfo.hasKeyframesIndex=!0;let Mt=dt.keyframes;this._mediaInfo.keyframesIndex=this._parseKeyframesIndex(Mt),dt.keyframes=null}else this._mediaInfo.hasKeyframesIndex=!1;this._dispatch=!1,this._mediaInfo.metadata=dt,Oe.v(this.TAG,"Parsed onMetaData"),this._mediaInfo.isComplete()&&this._onMediaInfo(this._mediaInfo)}Object.keys(qe).length>0&&this._onScriptDataArrived&&this._onScriptDataArrived(Object.assign({},qe))}_parseKeyframesIndex(Le){let We=[],De=[];for(let qe=1;qe>>4;if(rn!==2&&rn!==10){this._onError(ut.CODEC_UNSUPPORTED,"Flv: Unsupported audio codec idx: "+rn);return}let un=0,zn=(wt&12)>>>2;if(zn>=0&&zn<=4)un=this._flvSoundRateTable[zn];else{this._onError(ut.FORMAT_ERROR,"Flv: Invalid audio sample rate idx: "+zn);return}let Fn=(wt&2)>>>1,tn=wt&1,Vn=this._audioMetadata,tr=this._audioTrack;if(Vn||(this._hasAudio===!1&&this._hasAudioFlagOverrided===!1&&(this._hasAudio=!0,this._mediaInfo.hasAudio=!0),Vn=this._audioMetadata={},Vn.type="audio",Vn.id=tr.id,Vn.timescale=this._timescale,Vn.duration=this._duration,Vn.audioSampleRate=un,Vn.channelCount=tn===0?1:2),rn===10){let dr=this._parseAACAudioData(Le,We+1,De-1);if(dr==null)return;if(dr.packetType===0){Vn.config&&Oe.w(this.TAG,"Found another AudioSpecificConfig!");let Bn=dr.data;Vn.audioSampleRate=Bn.samplingRate,Vn.channelCount=Bn.channelCount,Vn.codec=Bn.codec,Vn.originalCodec=Bn.originalCodec,Vn.config=Bn.config,Vn.refSampleDuration=1024/Vn.audioSampleRate*Vn.timescale,Oe.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",Vn);let An=this._mediaInfo;An.audioCodec=Vn.originalCodec,An.audioSampleRate=Vn.audioSampleRate,An.audioChannelCount=Vn.channelCount,An.hasVideo?An.videoCodec!=null&&(An.mimeType='video/x-flv; codecs="'+An.videoCodec+","+An.audioCodec+'"'):An.mimeType='video/x-flv; codecs="'+An.audioCodec+'"',An.isComplete()&&this._onMediaInfo(An)}else if(dr.packetType===1){let Bn=this._timestampBase+qe,An={unit:dr.data,length:dr.data.byteLength,dts:Bn,pts:Bn};tr.samples.push(An),tr.length+=dr.data.length}else Oe.e(this.TAG,`Flv: Unsupported AAC data type ${dr.packetType}`)}else if(rn===2){if(!Vn.codec){let Nn=this._parseMP3AudioData(Le,We+1,De-1,!0);if(Nn==null)return;Vn.audioSampleRate=Nn.samplingRate,Vn.channelCount=Nn.channelCount,Vn.codec=Nn.codec,Vn.originalCodec=Nn.originalCodec,Vn.refSampleDuration=1152/Vn.audioSampleRate*Vn.timescale,Oe.v(this.TAG,"Parsed MPEG Audio Frame Header"),this._audioInitialMetadataDispatched=!0,this._onTrackMetadata("audio",Vn);let $n=this._mediaInfo;$n.audioCodec=Vn.codec,$n.audioSampleRate=Vn.audioSampleRate,$n.audioChannelCount=Vn.channelCount,$n.audioDataRate=Nn.bitRate,$n.hasVideo?$n.videoCodec!=null&&($n.mimeType='video/x-flv; codecs="'+$n.videoCodec+","+$n.audioCodec+'"'):$n.mimeType='video/x-flv; codecs="'+$n.audioCodec+'"',$n.isComplete()&&this._onMediaInfo($n)}let dr=this._parseMP3AudioData(Le,We+1,De-1,!1);if(dr==null)return;let Bn=this._timestampBase+qe,An={unit:dr,length:dr.byteLength,dts:Bn,pts:Bn};tr.samples.push(An),tr.length+=dr.length}}_parseAACAudioData(Le,We,De){if(De<=1){Oe.w(this.TAG,"Flv: Invalid AAC packet, missing AACPacketType or/and Data!");return}let qe={},dt=new Uint8Array(Le,We,De);return qe.packetType=dt[0],dt[0]===0?qe.data=this._parseAACAudioSpecificConfig(Le,We+1,De-1):qe.data=dt.subarray(1),qe}_parseAACAudioSpecificConfig(Le,We,De){let qe=new Uint8Array(Le,We,De),dt=null,Mt=0,wt=0,rn=null,un=0,zn=null;if(Mt=wt=qe[0]>>>3,un=(qe[0]&7)<<1|qe[1]>>>7,un<0||un>=this._mpegSamplingRates.length){this._onError(ut.FORMAT_ERROR,"Flv: AAC invalid sampling frequency index!");return}let Fn=this._mpegSamplingRates[un],tn=(qe[1]&120)>>>3;if(tn<0||tn>=8){this._onError(ut.FORMAT_ERROR,"Flv: AAC invalid channel configuration");return}Mt===5&&(zn=(qe[1]&7)<<1|qe[2]>>>7,rn=(qe[2]&124)>>>2);let Vn=self.navigator.userAgent.toLowerCase();return Vn.indexOf("firefox")!==-1?un>=6?(Mt=5,dt=new Array(4),zn=un-3):(Mt=2,dt=new Array(2),zn=un):Vn.indexOf("android")!==-1?(Mt=2,dt=new Array(2),zn=un):(Mt=5,zn=un,dt=new Array(4),un>=6?zn=un-3:tn===1&&(Mt=2,dt=new Array(2),zn=un)),dt[0]=Mt<<3,dt[0]|=(un&15)>>>1,dt[1]=(un&15)<<7,dt[1]|=(tn&15)<<3,Mt===5&&(dt[1]|=(zn&15)>>>1,dt[2]=(zn&1)<<7,dt[2]|=8,dt[3]=0),{config:dt,samplingRate:Fn,channelCount:tn,codec:"mp4a.40."+Mt,originalCodec:"mp4a.40."+wt}}_parseMP3AudioData(Le,We,De,qe){if(De<4){Oe.w(this.TAG,"Flv: Invalid MP3 packet, header missing!");return}let dt=this._littleEndian,Mt=new Uint8Array(Le,We,De),wt=null;if(qe){if(Mt[0]!==255)return;let rn=Mt[1]>>>3&3,un=(Mt[1]&6)>>1,zn=(Mt[2]&240)>>>4,Fn=(Mt[2]&12)>>>2,Vn=(Mt[3]>>>6&3)!==3?2:1,tr=0,dr=0,Bn=34,An="mp3";switch(rn){case 0:tr=this._mpegAudioV25SampleRateTable[Fn];break;case 2:tr=this._mpegAudioV20SampleRateTable[Fn];break;case 3:tr=this._mpegAudioV10SampleRateTable[Fn];break}switch(un){case 1:Bn=34,zn>>4,rn=Mt&15;if(rn!==7){this._onError(ut.CODEC_UNSUPPORTED,`Flv: Unsupported codec in video frame: ${rn}`);return}this._parseAVCVideoPacket(Le,We+1,De-1,qe,dt,wt)}_parseAVCVideoPacket(Le,We,De,qe,dt,Mt){if(De<4){Oe.w(this.TAG,"Flv: Invalid AVC packet, missing AVCPacketType or/and CompositionTime");return}let wt=this._littleEndian,rn=new DataView(Le,We,De),un=rn.getUint8(0),Fn=(rn.getUint32(0,!wt)&16777215)<<8>>8;if(un===0)this._parseAVCDecoderConfigurationRecord(Le,We+4,De-4);else if(un===1)this._parseAVCVideoData(Le,We+4,De-4,qe,dt,Mt,Fn);else if(un!==2){this._onError(ut.FORMAT_ERROR,`Flv: Invalid video packet type ${un}`);return}}_parseAVCDecoderConfigurationRecord(Le,We,De){if(De<7){Oe.w(this.TAG,"Flv: Invalid AVCDecoderConfigurationRecord, lack of data!");return}let qe=this._videoMetadata,dt=this._videoTrack,Mt=this._littleEndian,wt=new DataView(Le,We,De);qe?typeof qe.avcc!="undefined"&&Oe.w(this.TAG,"Found another AVCDecoderConfigurationRecord!"):(this._hasVideo===!1&&this._hasVideoFlagOverrided===!1&&(this._hasVideo=!0,this._mediaInfo.hasVideo=!0),qe=this._videoMetadata={},qe.type="video",qe.id=dt.id,qe.timescale=this._timescale,qe.duration=this._duration);let rn=wt.getUint8(0),un=wt.getUint8(1),zn=wt.getUint8(2),Fn=wt.getUint8(3);if(rn!==1||un===0){this._onError(ut.FORMAT_ERROR,"Flv: Invalid AVCDecoderConfigurationRecord");return}if(this._naluLengthSize=(wt.getUint8(4)&3)+1,this._naluLengthSize!==3&&this._naluLengthSize!==4){this._onError(ut.FORMAT_ERROR,`Flv: Strange NaluLengthSizeMinusOne: ${this._naluLengthSize-1}`);return}let tn=wt.getUint8(5)&31;if(tn===0){this._onError(ut.FORMAT_ERROR,"Flv: Invalid AVCDecoderConfigurationRecord: No SPS");return}else tn>1&&Oe.w(this.TAG,`Flv: Strange AVCDecoderConfigurationRecord: SPS Count = ${tn}`);let Vn=6;for(let dr=0;dr1&&Oe.w(this.TAG,`Flv: Strange AVCDecoderConfigurationRecord: PPS Count = ${tr}`);Vn++;for(let dr=0;dr=De){Oe.w(this.TAG,`Malformed Nalu near timestamp ${tr}, offset = ${tn}, dataSize = ${De}`);break}let Bn=un.getUint32(tn,!rn);if(Vn===3&&(Bn>>>=8),Bn>De-Vn){Oe.w(this.TAG,`Malformed Nalus near timestamp ${tr}, NaluSize > DataSize!`);return}let An=un.getUint8(tn+Vn)&31;An===5&&(dr=!0);let Nn=new Uint8Array(Le,We+tn,Vn+Bn),$n={type:An,data:Nn};zn.push($n),Fn+=Nn.byteLength,tn+=Vn+Bn}if(zn.length){let Bn=this._videoTrack,An={units:zn,length:Fn,isKeyframe:dr,dts:tr,cts:wt,pts:tr+wt};dr&&(An.fileposition=dt),Bn.samples.push(An),Bn.length+=Fn}}}var on=Vt;class $t{static init(){$t.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 We in $t.types)$t.types.hasOwnProperty(We)&&($t.types[We]=[We.charCodeAt(0),We.charCodeAt(1),We.charCodeAt(2),We.charCodeAt(3)]);let Le=$t.constants={};Le.FTYP=new Uint8Array([105,115,111,109,0,0,0,1,105,115,111,109,97,118,99,49]),Le.STSD_PREFIX=new Uint8Array([0,0,0,0,0,0,0,1]),Le.STTS=new Uint8Array([0,0,0,0,0,0,0,0]),Le.STSC=Le.STCO=Le.STTS,Le.STSZ=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0]),Le.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]),Le.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]),Le.DREF=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,12,117,114,108,32,0,0,0,1]),Le.SMHD=new Uint8Array([0,0,0,0,0,0,0,0]),Le.VMHD=new Uint8Array([0,0,0,1,0,0,0,0,0,0,0,0])}static box(Le){let We=8,De=null,qe=Array.prototype.slice.call(arguments,1),dt=qe.length;for(let wt=0;wt>>24&255,De[1]=We>>>16&255,De[2]=We>>>8&255,De[3]=We&255,De.set(Le,4);let Mt=8;for(let wt=0;wt>>24&255,Le>>>16&255,Le>>>8&255,Le&255,We>>>24&255,We>>>16&255,We>>>8&255,We&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(Le){return $t.box($t.types.trak,$t.tkhd(Le),$t.mdia(Le))}static tkhd(Le){let We=Le.id,De=Le.duration,qe=Le.presentWidth,dt=Le.presentHeight;return $t.box($t.types.tkhd,new Uint8Array([0,0,0,7,0,0,0,0,0,0,0,0,We>>>24&255,We>>>16&255,We>>>8&255,We&255,0,0,0,0,De>>>24&255,De>>>16&255,De>>>8&255,De&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,qe>>>8&255,qe&255,0,0,dt>>>8&255,dt&255,0,0]))}static mdia(Le){return $t.box($t.types.mdia,$t.mdhd(Le),$t.hdlr(Le),$t.minf(Le))}static mdhd(Le){let We=Le.timescale,De=Le.duration;return $t.box($t.types.mdhd,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,De>>>24&255,De>>>16&255,De>>>8&255,De&255,85,196,0,0]))}static hdlr(Le){let We=null;return Le.type==="audio"?We=$t.constants.HDLR_AUDIO:We=$t.constants.HDLR_VIDEO,$t.box($t.types.hdlr,We)}static minf(Le){let We=null;return Le.type==="audio"?We=$t.box($t.types.smhd,$t.constants.SMHD):We=$t.box($t.types.vmhd,$t.constants.VMHD),$t.box($t.types.minf,We,$t.dinf(),$t.stbl(Le))}static dinf(){return $t.box($t.types.dinf,$t.box($t.types.dref,$t.constants.DREF))}static stbl(Le){return $t.box($t.types.stbl,$t.stsd(Le),$t.box($t.types.stts,$t.constants.STTS),$t.box($t.types.stsc,$t.constants.STSC),$t.box($t.types.stsz,$t.constants.STSZ),$t.box($t.types.stco,$t.constants.STCO))}static stsd(Le){return Le.type==="audio"?Le.codec==="mp3"?$t.box($t.types.stsd,$t.constants.STSD_PREFIX,$t.mp3(Le)):$t.box($t.types.stsd,$t.constants.STSD_PREFIX,$t.mp4a(Le)):$t.box($t.types.stsd,$t.constants.STSD_PREFIX,$t.avc1(Le))}static mp3(Le){let We=Le.channelCount,De=Le.audioSampleRate,qe=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,We,0,16,0,0,0,0,De>>>8&255,De&255,0,0]);return $t.box($t.types[".mp3"],qe)}static mp4a(Le){let We=Le.channelCount,De=Le.audioSampleRate,qe=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,We,0,16,0,0,0,0,De>>>8&255,De&255,0,0]);return $t.box($t.types.mp4a,qe,$t.esds(Le))}static esds(Le){let We=Le.config||[],De=We.length,qe=new Uint8Array([0,0,0,0,3,23+De,0,1,0,4,15+De,64,21,0,0,0,0,0,0,0,0,0,0,0,5].concat([De]).concat(We).concat([6,1,2]));return $t.box($t.types.esds,qe)}static avc1(Le){let We=Le.avcc,De=Le.codecWidth,qe=Le.codecHeight,dt=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,De>>>8&255,De&255,qe>>>8&255,qe&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 $t.box($t.types.avc1,dt,$t.box($t.types.avcC,We))}static mvex(Le){return $t.box($t.types.mvex,$t.trex(Le))}static trex(Le){let We=Le.id,De=new Uint8Array([0,0,0,0,We>>>24&255,We>>>16&255,We>>>8&255,We&255,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,1]);return $t.box($t.types.trex,De)}static moof(Le,We){return $t.box($t.types.moof,$t.mfhd(Le.sequenceNumber),$t.traf(Le,We))}static mfhd(Le){let We=new Uint8Array([0,0,0,0,Le>>>24&255,Le>>>16&255,Le>>>8&255,Le&255]);return $t.box($t.types.mfhd,We)}static traf(Le,We){let De=Le.id,qe=$t.box($t.types.tfhd,new Uint8Array([0,0,0,0,De>>>24&255,De>>>16&255,De>>>8&255,De&255])),dt=$t.box($t.types.tfdt,new Uint8Array([0,0,0,0,We>>>24&255,We>>>16&255,We>>>8&255,We&255])),Mt=$t.sdtp(Le),wt=$t.trun(Le,Mt.byteLength+16+16+8+16+8+8);return $t.box($t.types.traf,qe,dt,wt,Mt)}static sdtp(Le){let We=Le.samples||[],De=We.length,qe=new Uint8Array(4+De);for(let dt=0;dt>>24&255,qe>>>16&255,qe>>>8&255,qe&255,We>>>24&255,We>>>16&255,We>>>8&255,We&255],0);for(let wt=0;wt>>24&255,rn>>>16&255,rn>>>8&255,rn&255,un>>>24&255,un>>>16&255,un>>>8&255,un&255,zn.isLeading<<2|zn.dependsOn,zn.isDependedOn<<6|zn.hasRedundancy<<4|zn.isNonSync,0,0,Fn>>>24&255,Fn>>>16&255,Fn>>>8&255,Fn&255],12+16*wt)}return $t.box($t.types.trun,Mt)}static mdat(Le){return $t.box($t.types.mdat,Le)}}$t.init();var Jt=$t;class xn{static getSilentFrame(Le,We){if(Le==="mp4a.40.2"){if(We===1)return new Uint8Array([0,200,0,128,35,128]);if(We===2)return new Uint8Array([33,0,73,144,2,25,0,35,128]);if(We===3)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,142]);if(We===4)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,128,44,128,8,2,56]);if(We===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(We===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(We===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(We===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(We===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 Qn=xn;class rr{constructor(Le,We,De,qe,dt){this.dts=Le,this.pts=We,this.duration=De,this.originalDts=qe,this.isSyncPoint=dt,this.fileposition=null}}class Jn{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(Le){Le.isSyncPoint=!0,this.syncPoints.push(Le)}}class mr{constructor(){this._list=[]}clear(){this._list=[]}appendArray(Le){let We=this._list;Le.length!==0&&(We.length>0&&Le[0].originalDts=We[dt].dts&&LeWe[qe].lastSample.originalDts&&Le=We[qe].lastSample.originalDts&&(qe===We.length-1||qe0&&(dt=this._searchNearestSegmentBefore(De.originalBeginDts)+1),this._lastAppendLocation=dt,this._list.splice(dt,0,De)}getLastSegmentBefore(Le){let We=this._searchNearestSegmentBefore(Le);return We>=0?this._list[We]:null}getLastSampleBefore(Le){let We=this.getLastSegmentBefore(Le);return We!=null?We.lastSample:null}getLastSyncPointBefore(Le){let We=this._searchNearestSegmentBefore(Le),De=this._list[We].syncPoints;for(;De.length===0&&We>0;)We--,De=this._list[We].syncPoints;return De.length>0?De[De.length-1]:null}}class Tn{constructor(Le){this.TAG="MP4Remuxer",this._config=Le,this._isLive=Le.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 Rr("audio"),this._videoSegmentInfoList=new Rr("video"),this._onInitSegment=null,this._onMediaSegment=null,this._forceFirstIDR=!!(de.chrome&&(de.version.major<50||de.version.major===50&&de.version.build<2661)),this._fillSilentAfterSeek=de.msedge||de.msie,this._mp3UseMpegAudio=!de.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(Le){return Le.onDataAvailable=this.remux.bind(this),Le.onTrackMetadata=this._onTrackMetadataReceived.bind(this),this}get onInitSegment(){return this._onInitSegment}set onInitSegment(Le){this._onInitSegment=Le}get onMediaSegment(){return this._onMediaSegment}set onMediaSegment(Le){this._onMediaSegment=Le}insertDiscontinuity(){this._audioNextDts=this._videoNextDts=void 0}seek(Le){this._audioStashedLastSample=null,this._videoStashedLastSample=null,this._videoSegmentInfoList.clear(),this._audioSegmentInfoList.clear()}remux(Le,We){if(!this._onMediaSegment)throw new Ie("MP4Remuxer: onMediaSegment callback must be specificed!");this._dtsBaseInited||this._calculateDtsBase(Le,We),this._remuxVideo(We),this._remuxAudio(Le)}_onTrackMetadataReceived(Le,We){let De=null,qe="mp4",dt=We.codec;if(Le==="audio")this._audioMeta=We,We.codec==="mp3"&&this._mp3UseMpegAudio?(qe="mpeg",dt="",De=new Uint8Array):De=Jt.generateInitSegment(We);else if(Le==="video")this._videoMeta=We,De=Jt.generateInitSegment(We);else return;if(!this._onInitSegment)throw new Ie("MP4Remuxer: onInitSegment callback must be specified!");this._onInitSegment(Le,{type:Le,data:De.buffer,codec:dt,container:`${Le}/${qe}`,mediaDuration:We.duration})}_calculateDtsBase(Le,We){this._dtsBaseInited||(Le.samples&&Le.samples.length&&(this._audioDtsBase=Le.samples[0].dts),We.samples&&We.samples.length&&(this._videoDtsBase=We.samples[0].dts),this._dtsBase=Math.min(this._audioDtsBase,this._videoDtsBase),this._dtsBaseInited=!0)}flushStashedSamples(){let Le=this._videoStashedLastSample,We=this._audioStashedLastSample,De={type:"video",id:1,sequenceNumber:0,samples:[],length:0};Le!=null&&(De.samples.push(Le),De.length=Le.length);let qe={type:"audio",id:2,sequenceNumber:0,samples:[],length:0};We!=null&&(qe.samples.push(We),qe.length=We.length),this._videoStashedLastSample=null,this._audioStashedLastSample=null,this._remuxVideo(De,!0),this._remuxAudio(qe,!0)}_remuxAudio(Le,We){if(this._audioMeta==null)return;let De=Le,qe=De.samples,dt,Mt=-1,wt=-1,rn=-1,un=this._audioMeta.refSampleDuration,zn=this._audioMeta.codec==="mp3"&&this._mp3UseMpegAudio,Fn=this._dtsBaseInited&&this._audioNextDts===void 0,tn=!1;if(!qe||qe.length===0||qe.length===1&&!We)return;let Vn=0,tr=null,dr=0;zn?(Vn=0,dr=De.length):(Vn=8,dr=8+De.length);let Bn=null;if(qe.length>1&&(Bn=qe.pop(),dr-=Bn.length),this._audioStashedLastSample!=null){let ur=this._audioStashedLastSample;this._audioStashedLastSample=null,qe.unshift(ur),dr+=ur.length}Bn!=null&&(this._audioStashedLastSample=Bn);let An=qe[0].dts-this._dtsBase;if(this._audioNextDts)dt=An-this._audioNextDts;else if(this._audioSegmentInfoList.isEmpty())dt=0,this._fillSilentAfterSeek&&!this._videoSegmentInfoList.isEmpty()&&this._audioMeta.originalCodec!=="mp3"&&(tn=!0);else{let ur=this._audioSegmentInfoList.getLastSampleBefore(An);if(ur!=null){let Br=An-(ur.originalDts+ur.duration);Br<=3&&(Br=0);let jr=ur.dts+ur.duration+Br;dt=An-jr}else dt=0}if(tn){let ur=An-dt,Br=this._videoSegmentInfoList.getLastSegmentBefore(An);if(Br!=null&&Br.beginDts=1?fi=Nn[Nn.length-1].duration:fi=Math.floor(un);let ui=!1,$i=null;if(fi>un*1.5&&this._audioMeta.codec!=="mp3"&&this._fillAudioTimestampGap&&!de.safari){ui=!0;let wr=Math.abs(fi-un),oi=Math.ceil(wr/un),ji=qn+un;Oe.w(this.TAG,`Large audio timestamp gap detected, may cause AV sync to drift. Silent frames will be generated to avoid unsync. dts: ${qn+fi} ms, expected: ${qn+Math.round(un)} ms, delta: ${Math.round(wr)} ms, generate: ${oi} frames`);let Yi=Qn.getSilentFrame(this._audioMeta.originalCodec,this._audioMeta.channelCount);Yi==null&&(Oe.w(this.TAG,`Unable to generate silent frame for ${this._audioMeta.originalCodec} with ${this._audioMeta.channelCount} channels, repeat last frame`),Yi=jr),$i=[];for(let to=0;to0){let Gi=$i[$i.length-1];Gi.duration=bo-Gi.dts}let Lo={dts:bo,pts:bo,cts:0,unit:Yi,size:Yi.byteLength,duration:0,originalDts:fr,flags:{isLeading:0,dependsOn:1,isDependedOn:0,hasRedundancy:0}};$i.push(Lo),dr+=Lo.size,ji+=un}let Vi=$i[$i.length-1];Vi.duration=qn+fi-Vi.dts,fi=Math.round(un)}Nn.push({dts:qn,pts:qn,cts:0,unit:Br.unit,size:Br.unit.byteLength,duration:fi,originalDts:fr,flags:{isLeading:0,dependsOn:1,isDependedOn:0,hasRedundancy:0}}),ui&&Nn.push.apply(Nn,$i)}zn?tr=new Uint8Array(dr):(tr=new Uint8Array(dr),tr[0]=dr>>>24&255,tr[1]=dr>>>16&255,tr[2]=dr>>>8&255,tr[3]=dr&255,tr.set(Jt.types.mdat,4));for(let ur=0;ur1&&(Vn=qe.pop(),tn-=Vn.length),this._videoStashedLastSample!=null){let $n=this._videoStashedLastSample;this._videoStashedLastSample=null,qe.unshift($n),tn+=$n.length}Vn!=null&&(this._videoStashedLastSample=Vn);let tr=qe[0].dts-this._dtsBase;if(this._videoNextDts)dt=tr-this._videoNextDts;else if(this._videoSegmentInfoList.isEmpty())dt=0;else{let $n=this._videoSegmentInfoList.getLastSampleBefore(tr);if($n!=null){let lr=tr-($n.originalDts+$n.duration);lr<=3&&(lr=0);let gr=$n.dts+$n.duration+lr;dt=tr-gr}else dt=0}let dr=new Jn,Bn=[];for(let $n=0;$n=1?fr=Bn[Bn.length-1].duration:fr=Math.floor(this._videoMeta.refSampleDuration),Tr){let qn=new rr(ur,jr,fr,lr.dts,!0);qn.fileposition=lr.fileposition,dr.appendSyncPoint(qn)}Bn.push({dts:ur,pts:jr,cts:Br,units:lr.units,size:lr.length,isKeyframe:Tr,duration:fr,originalDts:gr,flags:{isLeading:0,dependsOn:Tr?2:1,isDependedOn:Tr?1:0,hasRedundancy:0,isNonSync:Tr?0:1}})}Fn=new Uint8Array(tn),Fn[0]=tn>>>24&255,Fn[1]=tn>>>16&255,Fn[2]=tn>>>8&255,Fn[3]=tn&255,Fn.set(Jt.types.mdat,4);for(let $n=0;$n{qe.timestampBase=De,De+=qe.duration,qe.cors=Le.cors,qe.withCredentials=Le.withCredentials,We.referrerPolicy&&(qe.referrerPolicy=We.referrerPolicy)}),!isNaN(De)&&this._mediaDataSource.duration!==De&&(this._mediaDataSource.duration=De),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(Le,We){this._emitter.addListener(Le,We)}off(Le,We){this._emitter.removeListener(Le,We)}start(){this._loadSegment(0),this._enableStatisticsReporter()}_loadSegment(Le,We){this._currentSegmentIndex=Le;let De=this._mediaDataSource.segments[Le],qe=this._ioctl=new vt(De,this._config,Le);qe.onError=this._onIOException.bind(this),qe.onSeeked=this._onIOSeeked.bind(this),qe.onComplete=this._onIOComplete.bind(this),qe.onRedirect=this._onIORedirect.bind(this),qe.onRecoveredEarlyEof=this._onIORecoveredEarlyEof.bind(this),We?this._demuxer.bindDataSource(this._ioctl):qe.onDataArrival=this._onInitChunkArrival.bind(this),qe.open(We)}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(Le){if(this._mediaInfo==null||!this._mediaInfo.isSeekable())return;let We=this._searchSegmentIndexContains(Le);if(We===this._currentSegmentIndex){let De=this._mediaInfo.segments[We];if(De==null)this._pendingSeekTime=Le;else{let qe=De.getNearestKeyframe(Le);this._remuxer.seek(qe.milliseconds),this._ioctl.seek(qe.fileposition),this._pendingResolveSeekPoint=qe.milliseconds}}else{let De=this._mediaInfo.segments[We];if(De==null)this._pendingSeekTime=Le,this._internalAbort(),this._remuxer.seek(),this._remuxer.insertDiscontinuity(),this._loadSegment(We);else{let qe=De.getNearestKeyframe(Le);this._internalAbort(),this._remuxer.seek(Le),this._remuxer.insertDiscontinuity(),this._demuxer.resetMediaInfo(),this._demuxer.timestampBase=this._mediaDataSource.segments[We].timestampBase,this._loadSegment(We,qe.fileposition),this._pendingResolveSeekPoint=qe.milliseconds,this._reportSegmentMediaInfo(We)}}this._enableStatisticsReporter()}_searchSegmentIndexContains(Le){let We=this._mediaDataSource.segments,De=We.length-1;for(let qe=0;qe0)this._demuxer.bindDataSource(this._ioctl),this._demuxer.timestampBase=this._mediaDataSource.segments[this._currentSegmentIndex].timestampBase,qe=this._demuxer.parseChunks(Le,We);else if((De=on.probe(Le)).match){this._demuxer=new on(De,this._config),this._remuxer||(this._remuxer=new hr(this._config));let dt=this._mediaDataSource;dt.duration!=null&&!isNaN(dt.duration)&&(this._demuxer.overridedDuration=dt.duration),typeof dt.hasAudio=="boolean"&&(this._demuxer.overridedHasAudio=dt.hasAudio),typeof dt.hasVideo=="boolean"&&(this._demuxer.overridedHasVideo=dt.hasVideo),this._demuxer.timestampBase=dt.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),qe=this._demuxer.parseChunks(Le,We)}else De=null,Oe.e(this.TAG,"Non-FLV, Unsupported media type!"),Promise.resolve().then(()=>{this._internalAbort()}),this._emitter.emit(yr.DEMUX_ERROR,ut.FORMAT_UNSUPPORTED,"Non-FLV, Unsupported media type"),qe=0;return qe}_onMediaInfo(Le){this._mediaInfo==null&&(this._mediaInfo=Object.assign({},Le),this._mediaInfo.keyframesIndex=null,this._mediaInfo.segments=[],this._mediaInfo.segmentCount=this._mediaDataSource.segments.length,Object.setPrototypeOf(this._mediaInfo,dn.prototype));let We=Object.assign({},Le);Object.setPrototypeOf(We,dn.prototype),this._mediaInfo.segments[this._currentSegmentIndex]=We,this._reportSegmentMediaInfo(this._currentSegmentIndex),this._pendingSeekTime!=null&&Promise.resolve().then(()=>{let De=this._pendingSeekTime;this._pendingSeekTime=null,this.seek(De)})}_onMetaDataArrived(Le){this._emitter.emit(yr.METADATA_ARRIVED,Le)}_onScriptDataArrived(Le){this._emitter.emit(yr.SCRIPTDATA_ARRIVED,Le)}_onIOSeeked(){this._remuxer.insertDiscontinuity()}_onIOComplete(Le){let De=Le+1;De0&&De[0].originalDts===qe&&(qe=De[0].pts),this._emitter.emit(yr.RECOMMEND_SEEKPOINT,qe)}}_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(Le){let We=this._mediaInfo.segments[Le],De=Object.assign({},We);De.duration=this._mediaInfo.duration,De.segmentCount=this._mediaInfo.segmentCount,delete De.segments,delete De.keyframesIndex,this._emitter.emit(yr.MEDIA_INFO,De)}_reportStatisticsInfo(){let Le={};Le.url=this._ioctl.currentURL,Le.hasRedirect=this._ioctl.hasRedirect,Le.hasRedirect&&(Le.redirectedURL=this._ioctl.currentRedirectedURL),Le.speed=this._ioctl.currentSpeed,Le.loaderType=this._ioctl.loaderType,Le.currentSegmentIndex=this._currentSegmentIndex,Le.totalSegmentCount=this._mediaDataSource.segments.length,this._emitter.emit(yr.STATISTICS_INFO,Le)}}var mi=ti,Pi=function(Kt){let Le="TransmuxingWorker",We=null,De=dr.bind(this);et.install(),Kt.addEventListener("message",function(Bn){switch(Bn.data.cmd){case"init":We=new mi(Bn.data.param[0],Bn.data.param[1]),We.on(yr.IO_ERROR,tn.bind(this)),We.on(yr.DEMUX_ERROR,Vn.bind(this)),We.on(yr.INIT_SEGMENT,qe.bind(this)),We.on(yr.MEDIA_SEGMENT,dt.bind(this)),We.on(yr.LOADING_COMPLETE,Mt.bind(this)),We.on(yr.RECOVERED_EARLY_EOF,wt.bind(this)),We.on(yr.MEDIA_INFO,rn.bind(this)),We.on(yr.METADATA_ARRIVED,un.bind(this)),We.on(yr.SCRIPTDATA_ARRIVED,zn.bind(this)),We.on(yr.STATISTICS_INFO,Fn.bind(this)),We.on(yr.RECOMMEND_SEEKPOINT,tr.bind(this));break;case"destroy":We&&(We.destroy(),We=null),Kt.postMessage({msg:"destroyed"});break;case"start":We.start();break;case"stop":We.stop();break;case"seek":We.seek(Bn.data.param);break;case"pause":We.pause();break;case"resume":We.resume();break;case"logging_config":{let An=Bn.data.param;Ft.applyConfig(An),An.enableCallback===!0?Ft.addLogListener(De):Ft.removeLogListener(De);break}}});function qe(Bn,An){let Nn={msg:yr.INIT_SEGMENT,data:{type:Bn,data:An}};Kt.postMessage(Nn,[An.data])}function dt(Bn,An){let Nn={msg:yr.MEDIA_SEGMENT,data:{type:Bn,data:An}};Kt.postMessage(Nn,[An.data])}function Mt(){let Bn={msg:yr.LOADING_COMPLETE};Kt.postMessage(Bn)}function wt(){let Bn={msg:yr.RECOVERED_EARLY_EOF};Kt.postMessage(Bn)}function rn(Bn){let An={msg:yr.MEDIA_INFO,data:Bn};Kt.postMessage(An)}function un(Bn){let An={msg:yr.METADATA_ARRIVED,data:Bn};Kt.postMessage(An)}function zn(Bn){let An={msg:yr.SCRIPTDATA_ARRIVED,data:Bn};Kt.postMessage(An)}function Fn(Bn){let An={msg:yr.STATISTICS_INFO,data:Bn};Kt.postMessage(An)}function tn(Bn,An){Kt.postMessage({msg:yr.IO_ERROR,data:{type:Bn,info:An}})}function Vn(Bn,An){Kt.postMessage({msg:yr.DEMUX_ERROR,data:{type:Bn,info:An}})}function tr(Bn){Kt.postMessage({msg:yr.RECOMMEND_SEEKPOINT,data:Bn})}function dr(Bn,An){Kt.postMessage({msg:"logcat_callback",data:{type:Bn,logcat:An}})}};class vo{constructor(Le,We){if(this.TAG="Transmuxer",this._emitter=new(ke()),We.enableWorker&&typeof Worker!="undefined")try{let De=Be(82059);this._worker=De(Pi),this._workerDestroying=!1,this._worker.addEventListener("message",this._onWorkerMessage.bind(this)),this._worker.postMessage({cmd:"init",param:[Le,We]}),this.e={onLoggingConfigChanged:this._onLoggingConfigChanged.bind(this)},Ft.registerListener(this.e.onLoggingConfigChanged),this._worker.postMessage({cmd:"logging_config",param:Ft.getConfig()})}catch(De){Oe.e(this.TAG,"Error while initialize transmuxing worker, fallback to inline transmuxing"),this._worker=null,this._controller=new mi(Le,We)}else this._controller=new mi(Le,We);if(this._controller){let De=this._controller;De.on(yr.IO_ERROR,this._onIOError.bind(this)),De.on(yr.DEMUX_ERROR,this._onDemuxError.bind(this)),De.on(yr.INIT_SEGMENT,this._onInitSegment.bind(this)),De.on(yr.MEDIA_SEGMENT,this._onMediaSegment.bind(this)),De.on(yr.LOADING_COMPLETE,this._onLoadingComplete.bind(this)),De.on(yr.RECOVERED_EARLY_EOF,this._onRecoveredEarlyEof.bind(this)),De.on(yr.MEDIA_INFO,this._onMediaInfo.bind(this)),De.on(yr.METADATA_ARRIVED,this._onMetaDataArrived.bind(this)),De.on(yr.SCRIPTDATA_ARRIVED,this._onScriptDataArrived.bind(this)),De.on(yr.STATISTICS_INFO,this._onStatisticsInfo.bind(this)),De.on(yr.RECOMMEND_SEEKPOINT,this._onRecommendSeekpoint.bind(this))}}destroy(){this._worker?this._workerDestroying||(this._workerDestroying=!0,this._worker.postMessage({cmd:"destroy"}),Ft.removeListener(this.e.onLoggingConfigChanged),this.e=null):(this._controller.destroy(),this._controller=null),this._emitter.removeAllListeners(),this._emitter=null}on(Le,We){this._emitter.addListener(Le,We)}off(Le,We){this._emitter.removeListener(Le,We)}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(Le){this._worker?this._worker.postMessage({cmd:"seek",param:Le}):this._controller.seek(Le)}pause(){this._worker?this._worker.postMessage({cmd:"pause"}):this._controller.pause()}resume(){this._worker?this._worker.postMessage({cmd:"resume"}):this._controller.resume()}_onInitSegment(Le,We){Promise.resolve().then(()=>{this._emitter.emit(yr.INIT_SEGMENT,Le,We)})}_onMediaSegment(Le,We){Promise.resolve().then(()=>{this._emitter.emit(yr.MEDIA_SEGMENT,Le,We)})}_onLoadingComplete(){Promise.resolve().then(()=>{this._emitter.emit(yr.LOADING_COMPLETE)})}_onRecoveredEarlyEof(){Promise.resolve().then(()=>{this._emitter.emit(yr.RECOVERED_EARLY_EOF)})}_onMediaInfo(Le){Promise.resolve().then(()=>{this._emitter.emit(yr.MEDIA_INFO,Le)})}_onMetaDataArrived(Le){Promise.resolve().then(()=>{this._emitter.emit(yr.METADATA_ARRIVED,Le)})}_onScriptDataArrived(Le){Promise.resolve().then(()=>{this._emitter.emit(yr.SCRIPTDATA_ARRIVED,Le)})}_onStatisticsInfo(Le){Promise.resolve().then(()=>{this._emitter.emit(yr.STATISTICS_INFO,Le)})}_onIOError(Le,We){Promise.resolve().then(()=>{this._emitter.emit(yr.IO_ERROR,Le,We)})}_onDemuxError(Le,We){Promise.resolve().then(()=>{this._emitter.emit(yr.DEMUX_ERROR,Le,We)})}_onRecommendSeekpoint(Le){Promise.resolve().then(()=>{this._emitter.emit(yr.RECOMMEND_SEEKPOINT,Le)})}_onLoggingConfigChanged(Le){this._worker&&this._worker.postMessage({cmd:"logging_config",param:Le})}_onWorkerMessage(Le){let We=Le.data,De=We.data;if(We.msg==="destroyed"||this._workerDestroying){this._workerDestroying=!1,this._worker.terminate(),this._worker=null;return}switch(We.msg){case yr.INIT_SEGMENT:case yr.MEDIA_SEGMENT:this._emitter.emit(We.msg,De.type,De.data);break;case yr.LOADING_COMPLETE:case yr.RECOVERED_EARLY_EOF:this._emitter.emit(We.msg);break;case yr.MEDIA_INFO:Object.setPrototypeOf(De,dn.prototype),this._emitter.emit(We.msg,De);break;case yr.METADATA_ARRIVED:case yr.SCRIPTDATA_ARRIVED:case yr.STATISTICS_INFO:this._emitter.emit(We.msg,De);break;case yr.IO_ERROR:case yr.DEMUX_ERROR:this._emitter.emit(We.msg,De.type,De.info);break;case yr.RECOMMEND_SEEKPOINT:this._emitter.emit(We.msg,De);break;case"logcat_callback":Oe.emitter.emit("log",De.type,De.logcat);break;default:break}}}var Co=vo,xo={ERROR:"error",SOURCE_OPEN:"source_open",UPDATE_END:"update_end",BUFFER_FULL:"buffer_full"};class ma{constructor(Le){this.TAG="MSEController",this._config=Le,this._emitter=new(ke()),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 mr}destroy(){(this._mediaElement||this._mediaSource)&&this.detachMediaElement(),this.e=null,this._emitter.removeAllListeners(),this._emitter=null}on(Le,We){this._emitter.addListener(Le,We)}off(Le,We){this._emitter.removeListener(Le,We)}attachMediaElement(Le){if(this._mediaSource)throw new Ie("MediaSource has been attached to an HTMLMediaElement!");let We=this._mediaSource=new window.MediaSource;We.addEventListener("sourceopen",this.e.onSourceOpen),We.addEventListener("sourceended",this.e.onSourceEnded),We.addEventListener("sourceclose",this.e.onSourceClose),this._mediaElement=Le,this._mediaSourceObjectURL=window.URL.createObjectURL(this._mediaSource),Le.src=this._mediaSourceObjectURL}detachMediaElement(){if(this._mediaSource){let Le=this._mediaSource;for(let We in this._sourceBuffers){let De=this._pendingSegments[We];De.splice(0,De.length),this._pendingSegments[We]=null,this._pendingRemoveRanges[We]=null,this._lastInitSegments[We]=null;let qe=this._sourceBuffers[We];if(qe){if(Le.readyState!=="closed"){try{Le.removeSourceBuffer(qe)}catch(dt){Oe.e(this.TAG,dt.message)}qe.removeEventListener("error",this.e.onSourceBufferError),qe.removeEventListener("updateend",this.e.onSourceBufferUpdateEnd)}this._mimeTypes[We]=null,this._sourceBuffers[We]=null}}if(Le.readyState==="open")try{Le.endOfStream()}catch(We){Oe.e(this.TAG,We.message)}Le.removeEventListener("sourceopen",this.e.onSourceOpen),Le.removeEventListener("sourceended",this.e.onSourceEnded),Le.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(Le,We){if(!this._mediaSource||this._mediaSource.readyState!=="open"){this._pendingSourceBufferInit.push(Le),this._pendingSegments[Le.type].push(Le);return}let De=Le,qe=`${De.container}`;De.codec&&De.codec.length>0&&(qe+=`;codecs=${De.codec}`);let dt=!1;if(Oe.v(this.TAG,"Received Initialization Segment, mimeType: "+qe),this._lastInitSegments[De.type]=De,qe!==this._mimeTypes[De.type]){if(this._mimeTypes[De.type])Oe.v(this.TAG,`Notice: ${De.type} mimeType changed, origin: ${this._mimeTypes[De.type]}, target: ${qe}`);else{dt=!0;try{let Mt=this._sourceBuffers[De.type]=this._mediaSource.addSourceBuffer(qe);Mt.addEventListener("error",this.e.onSourceBufferError),Mt.addEventListener("updateend",this.e.onSourceBufferUpdateEnd)}catch(Mt){Oe.e(this.TAG,Mt.message),this._emitter.emit(xo.ERROR,{code:Mt.code,msg:Mt.message});return}}this._mimeTypes[De.type]=qe}We||this._pendingSegments[De.type].push(De),dt||this._sourceBuffers[De.type]&&!this._sourceBuffers[De.type].updating&&this._doAppendSegments(),de.safari&&De.container==="audio/mpeg"&&De.mediaDuration>0&&(this._requireSetMediaDuration=!0,this._pendingMediaDuration=De.mediaDuration/1e3,this._updateMediaSourceDuration())}appendMediaSegment(Le){let We=Le;this._pendingSegments[We.type].push(We),this._config.autoCleanupSourceBuffer&&this._needCleanupSourceBuffer()&&this._doCleanupSourceBuffer();let De=this._sourceBuffers[We.type];De&&!De.updating&&!this._hasPendingRemoveRanges()&&this._doAppendSegments()}seek(Le){for(let We in this._sourceBuffers){if(!this._sourceBuffers[We])continue;let De=this._sourceBuffers[We];if(this._mediaSource.readyState==="open")try{De.abort()}catch(dt){Oe.e(this.TAG,dt.message)}this._idrList.clear();let qe=this._pendingSegments[We];if(qe.splice(0,qe.length),this._mediaSource.readyState!=="closed"){for(let dt=0;dt=1&&Le-qe.start(0)>=this._config.autoCleanupMaxBackwardDuration)return!0}}return!1}_doCleanupSourceBuffer(){let Le=this._mediaElement.currentTime;for(let We in this._sourceBuffers){let De=this._sourceBuffers[We];if(De){let qe=De.buffered,dt=!1;for(let Mt=0;Mt=this._config.autoCleanupMaxBackwardDuration){dt=!0;let un=Le-this._config.autoCleanupMinBackwardDuration;this._pendingRemoveRanges[We].push({start:wt,end:un})}}else rn0&&(isNaN(We)||De>We)&&(Oe.v(this.TAG,`Update MediaSource duration from ${We} to ${De}`),this._mediaSource.duration=De),this._requireSetMediaDuration=!1,this._pendingMediaDuration=0}_doRemoveRanges(){for(let Le in this._pendingRemoveRanges){if(!this._sourceBuffers[Le]||this._sourceBuffers[Le].updating)continue;let We=this._sourceBuffers[Le],De=this._pendingRemoveRanges[Le];for(;De.length&&!We.updating;){let qe=De.shift();We.remove(qe.start,qe.end)}}}_doAppendSegments(){let Le=this._pendingSegments;for(let We in Le)if(!(!this._sourceBuffers[We]||this._sourceBuffers[We].updating)&&Le[We].length>0){let De=Le[We].shift();if(De.timestampOffset){let qe=this._sourceBuffers[We].timestampOffset,dt=De.timestampOffset/1e3;Math.abs(qe-dt)>.1&&(Oe.v(this.TAG,`Update MPEG audio timestampOffset from ${qe} to ${dt}`),this._sourceBuffers[We].timestampOffset=dt),delete De.timestampOffset}if(!De.data||De.data.byteLength===0)continue;try{this._sourceBuffers[We].appendBuffer(De.data),this._isBufferFull=!1,We==="video"&&De.hasOwnProperty("info")&&this._idrList.appendArray(De.info.syncPoints)}catch(qe){this._pendingSegments[We].unshift(De),qe.code===22?(this._isBufferFull||this._emitter.emit(xo.BUFFER_FULL),this._isBufferFull=!0):(Oe.e(this.TAG,qe.message),this._emitter.emit(xo.ERROR,{code:qe.code,msg:qe.message}))}}}_onSourceOpen(){if(Oe.v(this.TAG,"MediaSource onSourceOpen"),this._mediaSource.removeEventListener("sourceopen",this.e.onSourceOpen),this._pendingSourceBufferInit.length>0){let Le=this._pendingSourceBufferInit;for(;Le.length;){let We=Le.shift();this.appendInitSegment(We,!0)}}this._hasPendingSegments()&&this._doAppendSegments(),this._emitter.emit(xo.SOURCE_OPEN)}_onSourceEnded(){Oe.v(this.TAG,"MediaSource onSourceEnded")}_onSourceClose(){Oe.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 Le=this._pendingSegments;return Le.video.length>0||Le.audio.length>0}_hasPendingRemoveRanges(){let Le=this._pendingRemoveRanges;return Le.video.length>0||Le.audio.length>0}_onSourceBufferUpdateEnd(){this._requireSetMediaDuration?this._updateMediaSourceDuration():this._hasPendingRemoveRanges()?this._doRemoveRanges():this._hasPendingSegments()?this._doAppendSegments():this._hasPendingEos&&this.endOfStream(),this._emitter.emit(xo.UPDATE_END)}_onSourceBufferError(Le){Oe.e(this.TAG,`SourceBuffer Error: ${Le}`)}}var xa=ma;const _i={NETWORK_ERROR:"NetworkError",MEDIA_ERROR:"MediaError",OTHER_ERROR:"OtherError"},ko={NETWORK_EXCEPTION:ye.EXCEPTION,NETWORK_STATUS_CODE_INVALID:ye.HTTP_STATUS_CODE_INVALID,NETWORK_TIMEOUT:ye.CONNECTING_TIMEOUT,NETWORK_UNRECOVERABLE_EARLY_EOF:ye.UNRECOVERABLE_EARLY_EOF,MEDIA_MSE_ERROR:"MediaMSEError",MEDIA_FORMAT_ERROR:ut.FORMAT_ERROR,MEDIA_FORMAT_UNSUPPORTED:ut.FORMAT_UNSUPPORTED,MEDIA_CODEC_UNSUPPORTED:ut.CODEC_UNSUPPORTED};class ro{constructor(Le,We){if(this.TAG="FlvPlayer",this._type="FlvPlayer",this._emitter=new(ke()),this._config=bt(),typeof We=="object"&&Object.assign(this._config,We),Le.type.toLowerCase()!=="flv")throw new be("FlvPlayer requires an flv MediaDataSource input!");Le.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=Le,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 De=de.chrome&&(de.version.major<50||de.version.major===50&&de.version.build<2661);this._alwaysSeekKeyframe=!!(De||de.msedge||de.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(Le,We){Le===Zt.MEDIA_INFO?this._mediaInfo!=null&&Promise.resolve().then(()=>{this._emitter.emit(Zt.MEDIA_INFO,this.mediaInfo)}):Le===Zt.STATISTICS_INFO&&this._statisticsInfo!=null&&Promise.resolve().then(()=>{this._emitter.emit(Zt.STATISTICS_INFO,this.statisticsInfo)}),this._emitter.addListener(Le,We)}off(Le,We){this._emitter.removeListener(Le,We)}attachMediaElement(Le){if(this._mediaElement=Le,Le.addEventListener("loadedmetadata",this.e.onvLoadedMetadata),Le.addEventListener("seeking",this.e.onvSeeking),Le.addEventListener("canplay",this.e.onvCanPlay),Le.addEventListener("stalled",this.e.onvStalled),Le.addEventListener("progress",this.e.onvProgress),this._msectl=new xa(this._config),this._msectl.on(xo.UPDATE_END,this._onmseUpdateEnd.bind(this)),this._msectl.on(xo.BUFFER_FULL,this._onmseBufferFull.bind(this)),this._msectl.on(xo.SOURCE_OPEN,()=>{this._mseSourceOpened=!0,this._hasPendingLoad&&(this._hasPendingLoad=!1,this.load())}),this._msectl.on(xo.ERROR,We=>{this._emitter.emit(Zt.ERROR,_i.MEDIA_ERROR,ko.MEDIA_MSE_ERROR,We)}),this._msectl.attachMediaElement(Le),this._pendingSeekTime!=null)try{Le.currentTime=this._pendingSeekTime,this._pendingSeekTime=null}catch(We){}}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 Ie("HTMLMediaElement must be attached before load()!");if(this._transmuxer)throw new Ie("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 Co(this._mediaDataSource,this._config),this._transmuxer.on(yr.INIT_SEGMENT,(Le,We)=>{this._msectl.appendInitSegment(We)}),this._transmuxer.on(yr.MEDIA_SEGMENT,(Le,We)=>{if(this._msectl.appendMediaSegment(We),this._config.lazyLoad&&!this._config.isLive){let De=this._mediaElement.currentTime;We.info.endDts>=(De+this._config.lazyLoadMaxDuration)*1e3&&this._progressChecker==null&&(Oe.v(this.TAG,"Maximum buffering duration exceeded, suspend transmuxing task"),this._suspendTransmuxer())}}),this._transmuxer.on(yr.LOADING_COMPLETE,()=>{this._msectl.endOfStream(),this._emitter.emit(Zt.LOADING_COMPLETE)}),this._transmuxer.on(yr.RECOVERED_EARLY_EOF,()=>{this._emitter.emit(Zt.RECOVERED_EARLY_EOF)}),this._transmuxer.on(yr.IO_ERROR,(Le,We)=>{this._emitter.emit(Zt.ERROR,_i.NETWORK_ERROR,Le,We)}),this._transmuxer.on(yr.DEMUX_ERROR,(Le,We)=>{this._emitter.emit(Zt.ERROR,_i.MEDIA_ERROR,Le,{code:-1,msg:We})}),this._transmuxer.on(yr.MEDIA_INFO,Le=>{this._mediaInfo=Le,this._emitter.emit(Zt.MEDIA_INFO,Object.assign({},Le))}),this._transmuxer.on(yr.METADATA_ARRIVED,Le=>{this._emitter.emit(Zt.METADATA_ARRIVED,Le)}),this._transmuxer.on(yr.SCRIPTDATA_ARRIVED,Le=>{this._emitter.emit(Zt.SCRIPTDATA_ARRIVED,Le)}),this._transmuxer.on(yr.STATISTICS_INFO,Le=>{this._statisticsInfo=this._fillStatisticsInfo(Le),this._emitter.emit(Zt.STATISTICS_INFO,Object.assign({},this._statisticsInfo))}),this._transmuxer.on(yr.RECOMMEND_SEEKPOINT,Le=>{this._mediaElement&&!this._config.accurateSeek&&(this._requestSetTime=!0,this._mediaElement.currentTime=Le/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(Le){this._mediaElement.volume=Le}get muted(){return this._mediaElement.muted}set muted(Le){this._mediaElement.muted=Le}get currentTime(){return this._mediaElement?this._mediaElement.currentTime:0}set currentTime(Le){this._mediaElement?this._internalSeek(Le):this._pendingSeekTime=Le}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(Le){if(Le.playerType=this._type,!(this._mediaElement instanceof HTMLVideoElement))return Le;let We=!0,De=0,qe=0;if(this._mediaElement.getVideoPlaybackQuality){let dt=this._mediaElement.getVideoPlaybackQuality();De=dt.totalVideoFrames,qe=dt.droppedVideoFrames}else this._mediaElement.webkitDecodedFrameCount!=null?(De=this._mediaElement.webkitDecodedFrameCount,qe=this._mediaElement.webkitDroppedFrameCount):We=!1;return We&&(Le.decodedFrames=De,Le.droppedFrames=qe),Le}_onmseUpdateEnd(){if(!this._config.lazyLoad||this._config.isLive)return;let Le=this._mediaElement.buffered,We=this._mediaElement.currentTime,De=0,qe=0;for(let dt=0;dt=We+this._config.lazyLoadMaxDuration&&this._progressChecker==null&&(Oe.v(this.TAG,"Maximum buffering duration exceeded, suspend transmuxing task"),this._suspendTransmuxer())}_onmseBufferFull(){Oe.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 Le=this._mediaElement.currentTime,We=this._mediaElement.buffered,De=!1;for(let qe=0;qe=dt&&Le=Mt-this._config.lazyLoadRecoverDuration&&(De=!0);break}}De&&(window.clearInterval(this._progressChecker),this._progressChecker=null,De&&(Oe.v(this.TAG,"Continue loading from paused position"),this._transmuxer.resume()))}_isTimepointBuffered(Le){let We=this._mediaElement.buffered;for(let De=0;De=qe&&Le0){let dt=this._mediaElement.buffered.start(0);(dt<1&&Le0&&We.currentTime0){let qe=De.start(0);if(qe<1&&We{this._emitter.emit(Zt.MEDIA_INFO,this.mediaInfo)}):Le===Zt.STATISTICS_INFO&&this._mediaElement!=null&&this._mediaElement.readyState!==0&&Promise.resolve().then(()=>{this._emitter.emit(Zt.STATISTICS_INFO,this.statisticsInfo)}),this._emitter.addListener(Le,We)}off(Le,We){this._emitter.removeListener(Le,We)}attachMediaElement(Le){if(this._mediaElement=Le,Le.addEventListener("loadedmetadata",this.e.onvLoadedMetadata),this._pendingSeekTime!=null)try{Le.currentTime=this._pendingSeekTime,this._pendingSeekTime=null}catch(We){}}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 Ie("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(Le){this._mediaElement.volume=Le}get muted(){return this._mediaElement.muted}set muted(Le){this._mediaElement.muted=Le}get currentTime(){return this._mediaElement?this._mediaElement.currentTime:0}set currentTime(Le){this._mediaElement?this._mediaElement.currentTime=Le:this._pendingSeekTime=Le}get mediaInfo(){let We={mimeType:(this._mediaElement instanceof HTMLAudioElement?"audio/":"video/")+this._mediaDataSource.type};return this._mediaElement&&(We.duration=Math.floor(this._mediaElement.duration*1e3),this._mediaElement instanceof HTMLVideoElement&&(We.width=this._mediaElement.videoWidth,We.height=this._mediaElement.videoHeight)),We}get statisticsInfo(){let Le={playerType:this._type,url:this._mediaDataSource.url};if(!(this._mediaElement instanceof HTMLVideoElement))return Le;let We=!0,De=0,qe=0;if(this._mediaElement.getVideoPlaybackQuality){let dt=this._mediaElement.getVideoPlaybackQuality();De=dt.totalVideoFrames,qe=dt.droppedVideoFrames}else this._mediaElement.webkitDecodedFrameCount!=null?(De=this._mediaElement.webkitDecodedFrameCount,qe=this._mediaElement.webkitDroppedFrameCount):We=!1;return We&&(Le.decodedFrames=De,Le.droppedFrames=qe),Le}_onvLoadedMetadata(Le){this._pendingSeekTime!=null&&(this._mediaElement.currentTime=this._pendingSeekTime,this._pendingSeekTime=null),this._emitter.emit(Zt.MEDIA_INFO,this.mediaInfo)}_reportStatisticsInfo(){this._emitter.emit(Zt.STATISTICS_INFO,this.statisticsInfo)}}var Bi=Kr;et.install();function _r(Kt,Le){let We=Kt;if(We==null||typeof We!="object")throw new be("MediaDataSource must be an javascript object!");if(!We.hasOwnProperty("type"))throw new be("MediaDataSource must has type field to indicate video file type!");switch(We.type){case"flv":return new Rt(We,Le);default:return new Bi(We,Le)}}function pi(){return lt.supportMSEH264Playback()}function ii(){return lt.getFeatureList()}let zi={};zi.createPlayer=_r,zi.isSupported=pi,zi.getFeatureList=ii,zi.BaseLoader=ie,zi.LoaderStatus=je,zi.LoaderErrors=ye,zi.Events=Zt,zi.ErrorTypes=_i,zi.ErrorDetails=ko,zi.FlvPlayer=Rt,zi.NativePlayer=Bi,zi.LoggingControl=Ft,Object.defineProperty(zi,"version",{enumerable:!0,get:function(){return"__VERSION__"}});var Jr=zi},25397:function(sn,an,Be){"use strict";var He,et=Object.defineProperty,Ge=Kt=>{throw TypeError(Kt)},ke=Math.pow,Ze=(Kt,Le,We)=>Le in Kt?et(Kt,Le,{enumerable:!0,configurable:!0,writable:!0,value:We}):Kt[Le]=We,Oe=(Kt,Le,We)=>Ze(Kt,typeof Le!="symbol"?Le+"":Le,We),we=(Kt,Le,We)=>Le.has(Kt)||Ge("Cannot "+We),Te=(Kt,Le,We)=>(we(Kt,Le,"read from private field"),We?We.call(Kt):Le.get(Kt)),Re=(Kt,Le,We)=>Le.has(Kt)?Ge("Cannot add the same private member more than once"):Le instanceof WeakSet?Le.add(Kt):Le.set(Kt,We),Ie=(Kt,Le,We,De)=>(we(Kt,Le,"write to private field"),De?De.call(Kt,We):Le.set(Kt,We),We),be=(Kt,Le,We)=>(we(Kt,Le,"access private method"),We),Pe,je,ye;He={value:!0};var ie=Be(34634),ae=Be(34402);const fe=" ".repeat(2),de=" ".repeat(4);function ve(){return xe(this)}function xe(Kt,Le={}){const{maxRows:We=15,maxColumns:De=10,maxNumSize:qe=8,padMinus:dt="auto"}=Le;return`${Kt.constructor.name} { ${fe}[ ${de}${he(Kt,We,De,qe,dt)} ${fe}] ${fe}rows: ${Kt.rows} ${fe}columns: ${Kt.columns} }`}function he(Kt,Le,We,De,qe){const{rows:dt,columns:Mt}=Kt,wt=Math.min(dt,Le),rn=Math.min(Mt,We),un=[];if(qe==="auto"){qe=!1;e:for(let zn=0;zn=0&&We?` ${Se(Kt,Le-1)}`:Se(Kt,Le)).padEnd(Le)}function Se(Kt,Le){let We=Kt.toString();if(We.length<=Le)return We;let De=Kt.toFixed(Le);if(De.length>Le&&(De=Kt.toFixed(Math.max(0,Le-(De.length-Le)))),De.length<=Le&&!De.startsWith("0.000")&&!De.startsWith("-0.000"))return De;let qe=Kt.toExponential(Le);return qe.length>Le&&(qe=Kt.toExponential(Math.max(0,Le-(qe.length-Le)))),qe.slice(0)}function Ne(Kt,Le){Kt.prototype.add=function(De){return typeof De=="number"?this.addS(De):this.addM(De)},Kt.prototype.addS=function(De){for(let qe=0;qe>De);return this},Kt.prototype.signPropagatingRightShiftM=function(De){if(De=Le.checkMatrix(De),this.rows!==De.rows||this.columns!==De.columns)throw new RangeError("Matrices dimensions must be equal");for(let qe=0;qe>De.get(qe,dt));return this},Kt.signPropagatingRightShift=function(De,qe){return new Le(De).signPropagatingRightShift(qe)},Kt.prototype.rightShift=function(De){return typeof De=="number"?this.rightShiftS(De):this.rightShiftM(De)},Kt.prototype.rightShiftS=function(De){for(let qe=0;qe>>De);return this},Kt.prototype.rightShiftM=function(De){if(De=Le.checkMatrix(De),this.rows!==De.rows||this.columns!==De.columns)throw new RangeError("Matrices dimensions must be equal");for(let qe=0;qe>>De.get(qe,dt));return this},Kt.rightShift=function(De,qe){return new Le(De).rightShift(qe)},Kt.prototype.zeroFillRightShift=Kt.prototype.rightShift,Kt.prototype.zeroFillRightShiftS=Kt.prototype.rightShiftS,Kt.prototype.zeroFillRightShiftM=Kt.prototype.rightShiftM,Kt.zeroFillRightShift=Kt.rightShift,Kt.prototype.not=function(){for(let De=0;DeDe)throw new RangeError("Row index out of range")}function Ke(Kt,Le,We){let De=We?Kt.columns:Kt.columns-1;if(Le<0||Le>De)throw new RangeError("Column index out of range")}function Ve(Kt,Le){if(Le.to1DArray&&(Le=Le.to1DArray()),Le.length!==Kt.columns)throw new RangeError("vector size must be the same as the number of columns");return Le}function Je(Kt,Le){if(Le.to1DArray&&(Le=Le.to1DArray()),Le.length!==Kt.rows)throw new RangeError("vector size must be the same as the number of rows");return Le}function tt(Kt,Le){if(!ie.isAnyArray(Le))throw new TypeError("row indices must be an array");for(let We=0;We=Kt.rows)throw new RangeError("row indices are out of range")}function gt(Kt,Le){if(!ie.isAnyArray(Le))throw new TypeError("column indices must be an array");for(let We=0;We=Kt.columns)throw new RangeError("column indices are out of range")}function st(Kt,Le,We,De,qe){if(arguments.length!==5)throw new RangeError("expected 4 arguments");if(At("startRow",Le),At("endRow",We),At("startColumn",De),At("endColumn",qe),Le>We||De>qe||Le<0||Le>=Kt.rows||We<0||We>=Kt.rows||De<0||De>=Kt.columns||qe<0||qe>=Kt.columns)throw new RangeError("Submatrix indices are out of range")}function St(Kt,Le=0){let We=[];for(let De=0;De=dt)throw new RangeError("min must be smaller than max");let wt=dt-qe,rn=new It(Le,We);for(let un=0;unDe?(dt=!0,De=We):(qe=!1,dt=!0);Le++}return qe}isReducedEchelonForm(){let Le=0,We=0,De=-1,qe=!0,dt=!1;for(;LeDe?(dt=!0,De=We):(qe=!1,dt=!0);for(let Mt=We+1;MtLe.get(qe,De)&&(qe=dt);if(Le.get(qe,De)===0)De++;else{Le.swapRows(We,qe);let dt=Le.get(We,De);for(let Mt=De;Mt=0;)if(Le.maxRow(qe)===0)qe--;else{let dt=0,Mt=!1;for(;dtWe[De]&&(We[De]=this.get(De,qe));return We}case"column":{const We=new Array(this.columns).fill(Number.NEGATIVE_INFINITY);for(let De=0;DeWe[qe]&&(We[qe]=this.get(De,qe));return We}case void 0:{let We=this.get(0,0);for(let De=0;DeWe&&(We=this.get(De,qe));return We}default:throw new Error(`invalid option: ${Le}`)}}maxIndex(){vt(this);let Le=this.get(0,0),We=[0,0];for(let De=0;DeLe&&(Le=this.get(De,qe),We[0]=De,We[1]=qe);return We}min(Le){if(this.isEmpty())return NaN;switch(Le){case"row":{const We=new Array(this.rows).fill(Number.POSITIVE_INFINITY);for(let De=0;DeWe&&(We=this.get(Le,De));return We}maxRowIndex(Le){ze(this,Le),vt(this);let We=this.get(Le,0),De=[Le,0];for(let qe=1;qeWe&&(We=this.get(Le,qe),De[1]=qe);return De}minRow(Le){if(ze(this,Le),this.isEmpty())return NaN;let We=this.get(Le,0);for(let De=1;DeWe&&(We=this.get(De,Le));return We}maxColumnIndex(Le){Ke(this,Le),vt(this);let We=this.get(0,Le),De=[0,Le];for(let qe=1;qeWe&&(We=this.get(qe,Le),De[0]=qe);return De}minColumn(Le){if(Ke(this,Le),this.isEmpty())return NaN;let We=this.get(0,Le);for(let De=1;De1;qe/=2)qe&1&&(We=We.mmul(De)),De=De.mmul(De);return We}strassen2x2(Le){Le=It.checkMatrix(Le);let We=new It(2,2);const De=this.get(0,0),qe=Le.get(0,0),dt=this.get(0,1),Mt=Le.get(0,1),wt=this.get(1,0),rn=Le.get(1,0),un=this.get(1,1),zn=Le.get(1,1),Fn=(De+un)*(qe+zn),tn=(wt+un)*qe,Vn=De*(Mt-zn),tr=un*(rn-qe),dr=(De+dt)*zn,Bn=(wt-De)*(qe+Mt),An=(dt-un)*(rn+zn),Nn=Fn+tr-dr+An,$n=Vn+dr,lr=tn+tr,gr=Fn-tn+Vn+Bn;return We.set(0,0,Nn),We.set(0,1,$n),We.set(1,0,lr),We.set(1,1,gr),We}strassen3x3(Le){Le=It.checkMatrix(Le);let We=new It(3,3);const De=this.get(0,0),qe=this.get(0,1),dt=this.get(0,2),Mt=this.get(1,0),wt=this.get(1,1),rn=this.get(1,2),un=this.get(2,0),zn=this.get(2,1),Fn=this.get(2,2),tn=Le.get(0,0),Vn=Le.get(0,1),tr=Le.get(0,2),dr=Le.get(1,0),Bn=Le.get(1,1),An=Le.get(1,2),Nn=Le.get(2,0),$n=Le.get(2,1),lr=Le.get(2,2),gr=(De+qe+dt-Mt-wt-zn-Fn)*Bn,Tr=(De-Mt)*(-Vn+Bn),ur=wt*(-tn+Vn+dr-Bn-An-Nn+lr),Br=(-De+Mt+wt)*(tn-Vn+Bn),jr=(Mt+wt)*(-tn+Vn),fr=De*tn,qn=(-De+un+zn)*(tn-tr+An),fi=(-De+un)*(tr-An),ui=(un+zn)*(-tn+tr),$i=(De+qe+dt-wt-rn-un-zn)*An,wr=zn*(-tn+tr+dr-Bn-An-Nn+$n),oi=(-dt+zn+Fn)*(Bn+Nn-$n),ji=(dt-Fn)*(Bn-$n),Yi=dt*Nn,Vi=(zn+Fn)*(-Nn+$n),to=(-dt+wt+rn)*(An+Nn-lr),bo=(dt-rn)*(An-lr),Lo=(wt+rn)*(-Nn+lr),Gi=qe*dr,Fo=rn*$n,Zr=Mt*tr,Pa=un*Vn,Xr=Fn*lr,Ma=fr+Yi+Gi,ts=gr+Br+jr+fr+oi+Yi+Vi,fa=fr+qn+ui+$i+Yi+to+Lo,ys=Tr+ur+Br+fr+Yi+to+bo,qa=Tr+Br+jr+fr+Fo,Go=Yi+to+bo+Lo+Zr,li=fr+qn+fi+wr+oi+ji+Yi,Ca=oi+ji+Yi+Vi+Pa,Za=fr+qn+fi+ui+Xr;return We.set(0,0,Ma),We.set(0,1,ts),We.set(0,2,fa),We.set(1,0,ys),We.set(1,1,qa),We.set(1,2,Go),We.set(2,0,li),We.set(2,1,Ca),We.set(2,2,Za),We}mmulStrassen(Le){Le=It.checkMatrix(Le);let We=this.clone(),De=We.rows,qe=We.columns,dt=Le.rows,Mt=Le.columns;qe!==dt&&console.warn(`Multiplying ${De} x ${qe} and ${dt} x ${Mt} matrix: dimensions do not match.`);function wt(Fn,tn,Vn){let tr=Fn.rows,dr=Fn.columns;if(tr===tn&&dr===Vn)return Fn;{let Bn=ft.zeros(tn,Vn);return Bn=Bn.setSubMatrix(Fn,0,0),Bn}}let rn=Math.max(De,dt),un=Math.max(qe,Mt);We=wt(We,rn,un),Le=wt(Le,rn,un);function zn(Fn,tn,Vn,tr){if(Vn<=512||tr<=512)return Fn.mmul(tn);Vn%2===1&&tr%2===1?(Fn=wt(Fn,Vn+1,tr+1),tn=wt(tn,Vn+1,tr+1)):Vn%2===1?(Fn=wt(Fn,Vn+1,tr),tn=wt(tn,Vn+1,tr)):tr%2===1&&(Fn=wt(Fn,Vn,tr+1),tn=wt(tn,Vn,tr+1));let dr=parseInt(Fn.rows/2,10),Bn=parseInt(Fn.columns/2,10),An=Fn.subMatrix(0,dr-1,0,Bn-1),Nn=tn.subMatrix(0,dr-1,0,Bn-1),$n=Fn.subMatrix(0,dr-1,Bn,Fn.columns-1),lr=tn.subMatrix(0,dr-1,Bn,tn.columns-1),gr=Fn.subMatrix(dr,Fn.rows-1,0,Bn-1),Tr=tn.subMatrix(dr,tn.rows-1,0,Bn-1),ur=Fn.subMatrix(dr,Fn.rows-1,Bn,Fn.columns-1),Br=tn.subMatrix(dr,tn.rows-1,Bn,tn.columns-1),jr=zn(ft.add(An,ur),ft.add(Nn,Br),dr,Bn),fr=zn(ft.add(gr,ur),Nn,dr,Bn),qn=zn(An,ft.sub(lr,Br),dr,Bn),fi=zn(ur,ft.sub(Tr,Nn),dr,Bn),ui=zn(ft.add(An,$n),Br,dr,Bn),$i=zn(ft.sub(gr,An),ft.add(Nn,lr),dr,Bn),wr=zn(ft.sub($n,ur),ft.add(Tr,Br),dr,Bn),oi=ft.add(jr,fi);oi.sub(ui),oi.add(wr);let ji=ft.add(qn,ui),Yi=ft.add(fr,fi),Vi=ft.sub(jr,fr);Vi.add(qn),Vi.add($i);let to=ft.zeros(2*oi.rows,2*oi.columns);return to=to.setSubMatrix(oi,0,0),to=to.setSubMatrix(ji,oi.rows,0),to=to.setSubMatrix(Yi,0,oi.columns),to=to.setSubMatrix(Vi,oi.rows,oi.columns),to.subMatrix(0,Vn-1,0,tr-1)}return zn(We,Le,rn,un)}scaleRows(Le={}){if(typeof Le!="object")throw new TypeError("options must be an object");const{min:We=0,max:De=1}=Le;if(!Number.isFinite(We))throw new TypeError("min must be a number");if(!Number.isFinite(De))throw new TypeError("max must be a number");if(We>=De)throw new RangeError("min must be smaller than max");let qe=new It(this.rows,this.columns);for(let dt=0;dt0&&ae(Mt,{min:We,max:De,output:Mt}),qe.setRow(dt,Mt)}return qe}scaleColumns(Le={}){if(typeof Le!="object")throw new TypeError("options must be an object");const{min:We=0,max:De=1}=Le;if(!Number.isFinite(We))throw new TypeError("min must be a number");if(!Number.isFinite(De))throw new TypeError("max must be a number");if(We>=De)throw new RangeError("min must be smaller than max");let qe=new It(this.rows,this.columns);for(let dt=0;dtDe||We<0||We>=this.columns||De<0||De>=this.columns)throw new RangeError("Argument out of range");let qe=new It(Le.length,De-We+1);for(let dt=0;dt=this.rows)throw new RangeError(`Row index out of range: ${Le[dt]}`);qe.set(dt,Mt-We,this.get(Le[dt],Mt))}return qe}subMatrixColumn(Le,We,De){if(We===void 0&&(We=0),De===void 0&&(De=this.rows-1),We>De||We<0||We>=this.rows||De<0||De>=this.rows)throw new RangeError("Argument out of range");let qe=new It(De-We+1,Le.length);for(let dt=0;dt=this.columns)throw new RangeError(`Column index out of range: ${Le[dt]}`);qe.set(Mt-We,dt,this.get(Mt,Le[dt]))}return qe}setSubMatrix(Le,We,De){if(Le=It.checkMatrix(Le),Le.isEmpty())return this;let qe=We+Le.rows-1,dt=De+Le.columns-1;st(this,We,qe,De,dt);for(let Mt=0;Mttypeof Le=="number")}ft.random=ft.rand,ft.randomInt=ft.randInt,ft.diagonal=ft.diag,ft.prototype.diagonal=ft.prototype.diag,ft.identity=ft.eye,ft.prototype.negate=ft.prototype.neg,ft.prototype.tensorProduct=ft.prototype.kroneckerProduct;const ut=class vI extends ft{constructor(Le,We){if(super(),Re(this,Pe),Oe(this,"data"),vI.isMatrix(Le))be(this,Pe,je).call(this,Le.rows,Le.columns),vI.copy(Le,this);else if(Number.isInteger(Le)&&Le>=0)be(this,Pe,je).call(this,Le,We);else if(ie.isAnyArray(Le)){const De=Le;if(Le=De.length,We=Le?De[0].length:0,typeof We!="number")throw new TypeError("Data must be a 2D array with at least one element");this.data=[];for(let qe=0;qe=0)for(let We=0;We=0)Ie(this,ye,new It(Le,Le));else if(Ie(this,ye,new It(Le)),!this.isSymmetric())throw new TypeError("not symmetric data")}get size(){return Te(this,ye).size}get rows(){return Te(this,ye).rows}get columns(){return Te(this,ye).columns}get diagonalSize(){return this.rows}static isSymmetricMatrix(Le){return It.isMatrix(Le)&&Le.klassType==="SymmetricMatrix"}static zeros(Le){return new this(Le)}static ones(Le){return new this(Le).fill(1)}clone(){const Le=new mI(this.diagonalSize);for(const[We,De,qe]of this.upperRightEntries())Le.set(We,De,qe);return Le}toMatrix(){return new It(this)}get(Le,We){return Te(this,ye).get(Le,We)}set(Le,We,De){return Te(this,ye).set(Le,We,De),Te(this,ye).set(We,Le,De),this}removeCross(Le){return Te(this,ye).removeRow(Le),Te(this,ye).removeColumn(Le),this}addCross(Le,We){We===void 0&&(We=Le,Le=this.diagonalSize);const De=We.slice();return De.splice(Le,1),Te(this,ye).addRow(Le,De),Te(this,ye).addColumn(Le,We),this}applyMask(Le){if(Le.length!==this.diagonalSize)throw new RangeError("Mask size do not match with matrix size");const We=[];for(const[De,qe]of Le.entries())qe||We.push(De);We.reverse();for(const De of We)this.removeCross(De);return this}toCompact(){const{diagonalSize:Le}=this,We=new Array(Le*(Le+1)/2);for(let De=0,qe=0,dt=0;dt=Le&&(De=++qe);return We}static fromCompact(Le){const We=Le.length,De=(Math.sqrt(8*We+1)-1)/2;if(!Number.isInteger(De))throw new TypeError(`This array is not a compact representation of a Symmetric Matrix, ${JSON.stringify(Le)}`);const qe=new mI(De);for(let dt=0,Mt=0,wt=0;wt=De&&(dt=++Mt);return qe}*upperRightEntries(){for(let Le=0,We=0;Le=this.diagonalSize&&(We=++Le)}}*upperRightValues(){for(let Le=0,We=0;Le=this.diagonalSize&&(We=++Le)}};ye=new WeakMap;let Pt=nn;Pt.prototype.klassType="SymmetricMatrix";class Vt extends Pt{static isDistanceMatrix(Le){return Pt.isSymmetricMatrix(Le)&&Le.klassSubType==="DistanceMatrix"}constructor(Le){if(super(Le),!this.isDistance())throw new TypeError("Provided arguments do no produce a distance matrix")}set(Le,We,De){return Le===We&&(De=0),super.set(Le,We,De)}addCross(Le,We){return We===void 0&&(We=Le,Le=this.diagonalSize),We=We.slice(),We[Le]=0,super.addCross(Le,We)}toSymmetricMatrix(){return new Pt(this)}clone(){const Le=new Vt(this.diagonalSize);for(const[We,De,qe]of this.upperRightEntries())We!==De&&Le.set(We,De,qe);return Le}toCompact(){const{diagonalSize:Le}=this,We=(Le-1)*Le/2,De=new Array(We);for(let qe=1,dt=0,Mt=0;Mt=Le&&(qe=++dt+1);return De}static fromCompact(Le){const We=Le.length;if(We===0)return new this(0);const De=(Math.sqrt(8*We+1)+1)/2;if(!Number.isInteger(De))throw new TypeError(`This array is not a compact representation of a DistanceMatrix, ${JSON.stringify(Le)}`);const qe=new this(De);for(let dt=1,Mt=0,wt=0;wt=De&&(dt=++Mt+1);return qe}}Vt.prototype.klassSubType="DistanceMatrix";class on extends ft{constructor(Le,We,De){super(),this.matrix=Le,this.rows=We,this.columns=De}}class $t extends on{constructor(Le,We){Ke(Le,We),super(Le,Le.rows,1),this.column=We}set(Le,We,De){return this.matrix.set(Le,this.column,De),this}get(Le){return this.matrix.get(Le,this.column)}}class Jt extends on{constructor(Le,We){gt(Le,We),super(Le,Le.rows,We.length),this.columnIndices=We}set(Le,We,De){return this.matrix.set(Le,this.columnIndices[We],De),this}get(Le,We){return this.matrix.get(Le,this.columnIndices[We])}}class xn extends on{constructor(Le){super(Le,Le.rows,Le.columns)}set(Le,We,De){return this.matrix.set(Le,this.columns-We-1,De),this}get(Le,We){return this.matrix.get(Le,this.columns-We-1)}}class Qn extends on{constructor(Le){super(Le,Le.rows,Le.columns)}set(Le,We,De){return this.matrix.set(this.rows-Le-1,We,De),this}get(Le,We){return this.matrix.get(this.rows-Le-1,We)}}class rr extends on{constructor(Le,We){ze(Le,We),super(Le,1,Le.columns),this.row=We}set(Le,We,De){return this.matrix.set(this.row,We,De),this}get(Le,We){return this.matrix.get(this.row,We)}}class Jn extends on{constructor(Le,We){tt(Le,We),super(Le,We.length,Le.columns),this.rowIndices=We}set(Le,We,De){return this.matrix.set(this.rowIndices[Le],We,De),this}get(Le,We){return this.matrix.get(this.rowIndices[Le],We)}}class mr extends on{constructor(Le,We,De){tt(Le,We),gt(Le,De),super(Le,We.length,De.length),this.rowIndices=We,this.columnIndices=De}set(Le,We,De){return this.matrix.set(this.rowIndices[Le],this.columnIndices[We],De),this}get(Le,We){return this.matrix.get(this.rowIndices[Le],this.columnIndices[We])}}class Rr extends on{constructor(Le,We,De,qe,dt){st(Le,We,De,qe,dt),super(Le,De-We+1,dt-qe+1),this.startRow=We,this.startColumn=qe}set(Le,We,De){return this.matrix.set(this.startRow+Le,this.startColumn+We,De),this}get(Le,We){return this.matrix.get(this.startRow+Le,this.startColumn+We)}}class Tn extends on{constructor(Le){super(Le,Le.columns,Le.rows)}set(Le,We,De){return this.matrix.set(We,Le,De),this}get(Le,We){return this.matrix.get(We,Le)}}class hr extends ft{constructor(Le,We={}){const{rows:De=1}=We;if(Le.length%De!==0)throw new Error("the data length is not divisible by the number of rows");super(),this.rows=De,this.columns=Le.length/De,this.data=Le}set(Le,We,De){let qe=this._calculateIndex(Le,We);return this.data[qe]=De,this}get(Le,We){let De=this._calculateIndex(Le,We);return this.data[De]}_calculateIndex(Le,We){return Le*this.columns+We}}class or extends ft{constructor(Le){super(),this.data=Le,this.rows=Le.length,this.columns=Le[0].length}set(Le,We,De){return this.data[Le][We]=De,this}get(Le,We){return this.data[Le][We]}}function yr(Kt,Le){if(ie.isAnyArray(Kt))return Kt[0]&&ie.isAnyArray(Kt[0])?new or(Kt):new hr(Kt,Le);throw new Error("the argument is not an array")}class ti{constructor(Le){Le=or.checkMatrix(Le);let We=Le.clone(),De=We.rows,qe=We.columns,dt=new Float64Array(De),Mt=1,wt,rn,un,zn,Fn,tn,Vn,tr,dr;for(wt=0;wtMath.abs(tr[zn])&&(zn=wt);if(zn!==rn){for(un=0;un=0;un--){for(rn=0;rnMt?qe.set(dt,Mt,Le.get(dt,Mt)):dt===Mt?qe.set(dt,Mt,1):qe.set(dt,Mt,0);return qe}get upperTriangularMatrix(){let Le=this.LU,We=Le.rows,De=Le.columns,qe=new It(We,De);for(let dt=0;dtMath.abs(Le)?(We=Le/Kt,Math.abs(Kt)*Math.sqrt(1+We*We)):Le!==0?(We=Kt/Le,Math.abs(Le)*Math.sqrt(1+We*We)):0}class di{constructor(Le){Le=or.checkMatrix(Le);let We=Le.clone(),De=Le.rows,qe=Le.columns,dt=new Float64Array(qe),Mt,wt,rn,un;for(rn=0;rn=0;un--){for(rn=0;rn=0;wt--){for(dt=0;dt=0;fr--)if(tr[fr]!==0){for(let qn=fr+1;qn=0;fr--){if(fr0;){let fr,qn;for(fr=ur-2;fr>=-1&&fr!==-1;fr--){const fi=Number.MIN_VALUE+jr*Math.abs(tr[fr]+Math.abs(tr[fr+1]));if(Math.abs(An[fr])<=fi||Number.isNaN(An[fr])){An[fr]=0;break}}if(fr===ur-2)qn=4;else{let fi;for(fi=ur-1;fi>=fr&&fi!==fr;fi--){let ui=(fi!==ur?Math.abs(An[fi]):0)+(fi!==fr+1?Math.abs(An[fi-1]):0);if(Math.abs(tr[fi])<=jr*ui){tr[fi]=0;break}}fi===fr?qn=3:fi===ur-1?qn=1:(qn=2,fr=fi)}switch(fr++,qn){case 1:{let fi=An[ur-2];An[ur-2]=0;for(let ui=ur-2;ui>=fr;ui--){let $i=mi(tr[ui],fi),wr=tr[ui]/$i,oi=fi/$i;if(tr[ui]=$i,ui!==fr&&(fi=-oi*An[ui-1],An[ui-1]=wr*An[ui-1]),un)for(let ji=0;ji=tr[fr+1]);){let fi=tr[fr];if(tr[fr]=tr[fr+1],tr[fr+1]=fi,un&&frWe&&dt.set(zn,Fn,Le.get(zn,Fn)/this.s[Fn]);let Mt=this.U,wt=Mt.rows,rn=Mt.columns,un=new It(De,wt);for(let zn=0;znLe&&We++;return We}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 It.diag(this.s)}}function vo(Kt,Le=!1){return Kt=or.checkMatrix(Kt),Le?new Pi(Kt).inverse():Co(Kt,It.eye(Kt.rows))}function Co(Kt,Le,We=!1){return Kt=or.checkMatrix(Kt),Le=or.checkMatrix(Le),We?new Pi(Kt).solve(Le):Kt.isSquare()?new ti(Kt).solve(Le):new di(Kt).solve(Le)}function To(Kt){if(Kt=It.checkMatrix(Kt),Kt.isSquare()){if(Kt.columns===0)return 1;let Le,We,De,qe;if(Kt.columns===2)return Le=Kt.get(0,0),We=Kt.get(0,1),De=Kt.get(1,0),qe=Kt.get(1,1),Le*qe-We*De;if(Kt.columns===3){let dt,Mt,wt;return dt=new mr(Kt,[1,2],[1,2]),Mt=new mr(Kt,[1,2],[0,2]),wt=new mr(Kt,[1,2],[0,1]),Le=Kt.get(0,0),We=Kt.get(0,1),De=Kt.get(0,2),Le*To(dt)-We*To(Mt)+De*To(wt)}else return new ti(Kt).determinant}else throw Error("determinant can only be calculated for a square matrix")}function xo(Kt,Le){let We=[];for(let De=0;Deqe)return new Array(Le.rows+1).fill(0);{let dt=Le.addRow(We,[0]);for(let Mt=0;MtLe?dt[Mt]=1/dt[Mt]:dt[Mt]=0;return qe.mmul(It.diag(dt).mmul(De.transpose()))}function ko(Kt,Le=Kt,We={}){Kt=new It(Kt);let De=!1;if(typeof Le=="object"&&!It.isMatrix(Le)&&!ie.isAnyArray(Le)?(We=Le,Le=Kt,De=!0):Le=new It(Le),Kt.rows!==Le.rows)throw new TypeError("Both matrices must have the same number of rows");const{center:qe=!0}=We;qe&&(Kt=Kt.center("column"),De||(Le=Le.center("column")));const dt=Kt.transpose().mmul(Le);for(let Mt=0;Mt0?qe.set(dt,dt+1,We[dt]):We[dt]<0&&qe.set(dt,dt-1,We[dt])}return qe}}function Kr(Kt,Le,We,De){let qe,dt,Mt,wt,rn,un,zn,Fn;for(rn=0;rn0;wt--){for(Fn=0,Mt=0,un=0;un0&&(dt=-dt),Le[wt]=Fn*dt,Mt=Mt-qe*dt,We[wt-1]=qe-dt,rn=0;rnun)do{for(qe=We[un],Fn=(We[un+1]-qe)/(2*Le[un]),tn=mi(Fn,1),Fn<0&&(tn=-tn),We[un]=Le[un]/(Fn+tn),We[un+1]=Le[un]*(Fn+tn),Vn=We[un+1],dt=qe-We[un],Mt=un+2;Mt=un;Mt--)for(Bn=dr,dr=tr,$n=Nn,qe=tr*Le[Mt],dt=tr*Fn,tn=mi(Fn,Le[Mt]),Le[Mt+1]=Nn*tn,Nn=Le[Mt]/tn,tr=Fn/tn,Fn=tr*We[Mt]-Nn*qe,We[Mt+1]=dt+Nn*(tr*qe+Nn*We[Mt]),rn=0;rnTr*gr);We[un]=We[un]+lr,Le[un]=0}for(Mt=0;Mt=Fn;un--)We[un]=Le.get(un,Fn-1)/tn,rn+=We[un]*We[un];for(wt=Math.sqrt(rn),We[Fn]>0&&(wt=-wt),rn=rn-We[Fn]*wt,We[Fn]=We[Fn]-wt,zn=Fn;zn=Fn;un--)Mt+=We[un]*Le.get(un,zn);for(Mt=Mt/rn,un=Fn;un<=dt;un++)Le.set(un,zn,Le.get(un,zn)-Mt*We[un])}for(un=0;un<=dt;un++){for(Mt=0,zn=dt;zn>=Fn;zn--)Mt+=We[zn]*Le.get(un,zn);for(Mt=Mt/rn,zn=Fn;zn<=dt;zn++)Le.set(un,zn,Le.get(un,zn)-Mt*We[zn])}We[Fn]=tn*We[Fn],Le.set(Fn,Fn-1,tn*wt)}}for(un=0;un=qe+1;Fn--)if(Le.get(Fn,Fn-1)!==0){for(un=Fn+1;un<=dt;un++)We[un]=Le.get(un,Fn-1);for(zn=Fn;zn<=dt;zn++){for(wt=0,un=Fn;un<=dt;un++)wt+=We[un]*De.get(un,zn);for(wt=wt/We[Fn]/Le.get(Fn,Fn-1),un=Fn;un<=dt;un++)De.set(un,zn,De.get(un,zn)+wt*We[un])}}}function pi(Kt,Le,We,De,qe){let dt=Kt-1,Mt=0,wt=Kt-1,rn=Number.EPSILON,un=0,zn=0,Fn=0,tn=0,Vn=0,tr=0,dr=0,Bn=0,An,Nn,$n,lr,gr,Tr,ur,Br,jr,fr,qn,fi,ui,$i,wr;for(An=0;Anwt)&&(We[An]=qe.get(An,An),Le[An]=0),Nn=Math.max(An-1,0);Nn=Mt;){for(lr=dt;lr>Mt&&(tr=Math.abs(qe.get(lr-1,lr-1))+Math.abs(qe.get(lr,lr)),tr===0&&(tr=zn),!(Math.abs(qe.get(lr,lr-1))=0){for(dr=Fn>=0?Fn+dr:Fn-dr,We[dt-1]=Br+dr,We[dt]=We[dt-1],dr!==0&&(We[dt]=Br-ur/dr),Le[dt-1]=0,Le[dt]=0,Br=qe.get(dt,dt-1),tr=Math.abs(Br)+Math.abs(dr),Fn=Br/tr,tn=dr/tr,Vn=Math.sqrt(Fn*Fn+tn*tn),Fn=Fn/Vn,tn=tn/Vn,Nn=dt-1;Nn0)){for(tr=Math.sqrt(tr),jr=lr&&(dr=qe.get(gr,gr),Vn=Br-dr,tr=jr-dr,Fn=(Vn*tr-ur)/qe.get(gr+1,gr)+qe.get(gr,gr+1),tn=qe.get(gr+1,gr+1)-dr-Vn-tr,Vn=qe.get(gr+2,gr+1),tr=Math.abs(Fn)+Math.abs(tn)+Math.abs(Vn),Fn=Fn/tr,tn=tn/tr,Vn=Vn/tr,!(gr===lr||Math.abs(qe.get(gr,gr-1))*(Math.abs(tn)+Math.abs(Vn))gr+2&&qe.set(An,An-3,0);for($n=gr;$n<=dt-1&&($i=$n!==dt-1,$n!==gr&&(Fn=qe.get($n,$n-1),tn=qe.get($n+1,$n-1),Vn=$i?qe.get($n+2,$n-1):0,Br=Math.abs(Fn)+Math.abs(tn)+Math.abs(Vn),Br!==0&&(Fn=Fn/Br,tn=tn/Br,Vn=Vn/Br)),Br!==0);$n++)if(tr=Math.sqrt(Fn*Fn+tn*tn+Vn*Vn),Fn<0&&(tr=-tr),tr!==0){for($n!==gr?qe.set($n,$n-1,-tr*Br):lr!==gr&&qe.set($n,$n-1,-qe.get($n,$n-1)),Fn=Fn+tr,Br=Fn/tr,jr=tn/tr,dr=Vn/tr,tn=tn/Fn,Vn=Vn/Fn,Nn=$n;Nn=0;dt--)if(Fn=We[dt],tn=Le[dt],tn===0)for(lr=dt,qe.set(dt,dt,1),An=dt-1;An>=0;An--){for(ur=qe.get(An,An)-Fn,Vn=0,Nn=lr;Nn<=dt;Nn++)Vn=Vn+qe.get(An,Nn)*qe.get(Nn,dt);if(Le[An]<0)dr=ur,tr=Vn;else if(lr=An,Le[An]===0?qe.set(An,dt,ur!==0?-Vn/ur:-Vn/(rn*zn)):(Br=qe.get(An,An+1),jr=qe.get(An+1,An),tn=(We[An]-Fn)*(We[An]-Fn)+Le[An]*Le[An],Tr=(Br*tr-dr*Vn)/tn,qe.set(An,dt,Tr),qe.set(An+1,dt,Math.abs(Br)>Math.abs(dr)?(-Vn-ur*Tr)/Br:(-tr-jr*Tr)/dr)),Tr=Math.abs(qe.get(An,dt)),rn*Tr*Tr>1)for(Nn=An;Nn<=dt;Nn++)qe.set(Nn,dt,qe.get(Nn,dt)/Tr)}else if(tn<0)for(lr=dt-1,Math.abs(qe.get(dt,dt-1))>Math.abs(qe.get(dt-1,dt))?(qe.set(dt-1,dt-1,tn/qe.get(dt,dt-1)),qe.set(dt-1,dt,-(qe.get(dt,dt)-Fn)/qe.get(dt,dt-1))):(wr=ii(0,-qe.get(dt-1,dt),qe.get(dt-1,dt-1)-Fn,tn),qe.set(dt-1,dt-1,wr[0]),qe.set(dt-1,dt,wr[1])),qe.set(dt,dt-1,0),qe.set(dt,dt,1),An=dt-2;An>=0;An--){for(fr=0,qn=0,Nn=lr;Nn<=dt;Nn++)fr=fr+qe.get(An,Nn)*qe.get(Nn,dt-1),qn=qn+qe.get(An,Nn)*qe.get(Nn,dt);if(ur=qe.get(An,An)-Fn,Le[An]<0)dr=ur,Vn=fr,tr=qn;else if(lr=An,Le[An]===0?(wr=ii(-fr,-qn,ur,tn),qe.set(An,dt-1,wr[0]),qe.set(An,dt,wr[1])):(Br=qe.get(An,An+1),jr=qe.get(An+1,An),fi=(We[An]-Fn)*(We[An]-Fn)+Le[An]*Le[An]-tn*tn,ui=(We[An]-Fn)*2*tn,fi===0&&ui===0&&(fi=rn*zn*(Math.abs(ur)+Math.abs(tn)+Math.abs(Br)+Math.abs(jr)+Math.abs(dr))),wr=ii(Br*Vn-dr*fr+tn*qn,Br*tr-dr*qn-tn*fr,fi,ui),qe.set(An,dt-1,wr[0]),qe.set(An,dt,wr[1]),Math.abs(Br)>Math.abs(dr)+Math.abs(tn)?(qe.set(An+1,dt-1,(-fr-ur*qe.get(An,dt-1)+tn*qe.get(An,dt))/Br),qe.set(An+1,dt,(-qn-ur*qe.get(An,dt)-tn*qe.get(An,dt-1))/Br)):(wr=ii(-Vn-jr*qe.get(An,dt-1),-tr-jr*qe.get(An,dt),dr,tn),qe.set(An+1,dt-1,wr[0]),qe.set(An+1,dt,wr[1]))),Tr=Math.max(Math.abs(qe.get(An,dt-1)),Math.abs(qe.get(An,dt))),rn*Tr*Tr>1)for(Nn=An;Nn<=dt;Nn++)qe.set(Nn,dt-1,qe.get(Nn,dt-1)/Tr),qe.set(Nn,dt,qe.get(Nn,dt)/Tr)}for(An=0;Anwt)for(Nn=An;Nn=Mt;Nn--)for(An=Mt;An<=wt;An++){for(dr=0,$n=Mt;$n<=Math.min(Nn,wt);$n++)dr=dr+De.get(An,$n)*qe.get($n,Nn);De.set(An,Nn,dr)}}}function ii(Kt,Le,We,De){let qe,dt;return Math.abs(We)>Math.abs(De)?(qe=De/We,dt=We+qe*De,[(Kt+qe*Le)/dt,(Le-qe*Kt)/dt]):(qe=We/De,dt=De+qe*We,[(qe*Kt+Le)/dt,(qe*Le-Kt)/dt])}class zi{constructor(Le){if(Le=or.checkMatrix(Le),!Le.isSymmetric())throw new Error("Matrix is not symmetric");let We=Le,De=We.rows,qe=new It(De,De),dt=!0,Mt,wt,rn;for(wt=0;wt0),qe.set(wt,wt,Math.sqrt(Math.max(un,0))),rn=wt+1;rn=0;rn--)for(wt=0;wtMt;Vn++)Fn=Le.transpose().mmul(wt).div(wt.transpose().mmul(wt).get(0,0)),Fn=Fn.div(Fn.norm()),un=Le.mmul(Fn).div(Fn.transpose().mmul(Fn).get(0,0)),Vn>0&&(rn=un.clone().sub(tn).pow(2).sum()),tn=un.clone(),De?(zn=De.transpose().mmul(un).div(un.transpose().mmul(un).get(0,0)),zn=zn.div(zn.norm()),wt=De.mmul(zn).div(zn.transpose().mmul(zn).get(0,0))):wt=un;if(De){let Vn=Le.transpose().mmul(un).div(un.transpose().mmul(un).get(0,0));Vn=Vn.div(Vn.norm());let tr=Le.clone().sub(un.clone().mmul(Vn.transpose())),dr=wt.transpose().mmul(un).div(un.transpose().mmul(un).get(0,0)),Bn=De.clone().sub(un.clone().mulS(dr.get(0,0)).mmul(zn.transpose()));this.t=un,this.p=Vn.transpose(),this.w=Fn.transpose(),this.q=zn,this.u=wt,this.s=un.transpose().mmul(un),this.xResidual=tr,this.yResidual=Bn,this.betas=dr}else this.w=Fn.transpose(),this.s=un.transpose().mmul(un).sqrt(),qe?this.t=un.clone().div(this.s.get(0,0)):this.t=un,this.xResidual=Le.sub(un.mmul(Fn.transpose()))}}an.XA=ft,an.a_=zi,an.yQ=zi,an.Hs=Vt,an.Ec=Rt,an.dx=Rt,an.LU=ti,an.Rm=ti,an.y3=It,an.qK=Jt,an.pb=$t,an.j=xn,an.sO=Qn,an.BZ=Jn,an.EK=rr,an.Db=mr,an.Fx=Rr,an.tU=Tn,an.Ym=Jr,an.rs=Jr,an.QR=di,an.TB=di,an.oH=Pi,an.Sc=Pi,an.BN=Pt,an.it=hr,an.$r=or,an.QM=ro,an.AV=ko,He=It,an.GH=To,an.SO=vo,an.uZ=xa,an.yU=_i,an.F1=Co,an.re=yr},50371:function(sn,an){"use strict";function Be(){const He=Object.assign({},arguments.length<=0?void 0:arguments[0]);for(let et=1;et{const Ze=Ge[ke];Ze!==void 0&&(He[ke]=Ze)})}return He}an.Z=Be},13845:function(sn,an,Be){"use strict";Be.d(an,{F:function(){return He},Z:function(){return et}});function He(Ge){return Ge!=null&&Ge===Ge.window}function et(Ge,ke){var Ze,Oe;if(typeof window=="undefined")return 0;const we=ke?"scrollTop":"scrollLeft";let Te=0;return He(Ge)?Te=Ge[ke?"pageYOffset":"pageXOffset"]:Ge instanceof Document?Te=Ge.documentElement[we]:(Ge instanceof HTMLElement||Ge)&&(Te=Ge[we]),Ge&&!He(Ge)&&typeof Te!="number"&&(Te=(Oe=((Ze=Ge.ownerDocument)!==null&&Ze!==void 0?Ze:Ge).documentElement)===null||Oe===void 0?void 0:Oe[we]),Te}},56762:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return et}});var He=Be(59301);function et(){const[,Ge]=He.useReducer(ke=>ke+1,0);return Ge}},68031:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return ke}});var He=Be(16089);function et(Ze,Oe,we,Te){const Re=we-Oe;return Ze/=Te/2,Ze<1?Re/2*Ze*Ze*Ze+Oe:Re/2*((Ze-=2)*Ze*Ze+2)+Oe}var Ge=Be(13845);function ke(Ze){let Oe=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};const{getContainer:we=()=>window,callback:Te,duration:Re=450}=Oe,Ie=we(),be=(0,Ge.Z)(Ie,!0),Pe=Date.now(),je=()=>{const ie=Date.now()-Pe,ae=et(ie>Re?Re:ie,be,Ze,Re);(0,Ge.F)(Ie)?Ie.scrollTo(window.pageXOffset,ae):Ie instanceof Document||Ie.constructor.name==="HTMLDocument"?Ie.documentElement.scrollTop=ae:Ie.scrollTop=ae,ie{const{prefixCls:fe,className:de,popupClassName:ve,dropdownClassName:xe,children:he,dataSource:pe}=ie,Se=(0,Ge.Z)(he);let Ne;Se.length===1&&(0,we.l$)(Se[0])&&!be(Se[0])&&([Ne]=Se);const ze=Ne?()=>Ne:void 0;let Ke;Se.length&&be(Se[0])?Ke=he:Ke=pe?pe.map(tt=>{if((0,we.l$)(tt))return tt;switch(typeof tt){case"string":return Ze.createElement(Ie,{key:tt,value:tt},tt);case"object":{const{value:gt}=tt;return Ze.createElement(Ie,{key:gt,value:gt},tt.text)}default:return}}):[];const{getPrefixCls:Ve}=Ze.useContext(Te.E_),Je=Ve("select",fe);return Ze.createElement(Re.default,Object.assign({ref:ae,suffixIcon:null},(0,ke.Z)(ie,["dataSource","dropdownClassName"]),{prefixCls:Je,popupClassName:ve||xe,className:et()(`${Je}-auto-complete`,de),mode:Re.default.SECRET_COMBOBOX_MODE_DO_NOT_USE},{getInputElement:ze}),Ke)},je=Ze.forwardRef(Pe),ye=(0,Oe.Z)(je);je.Option=Ie,je._InternalPanelDoNotUseOrYouWillBeFired=ye,an.Z=je},19842:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return Bi}});var He=Be(26407),et=Be(59301),Ge=Be(33853),ke=Be(58617),Ze=Be(38819),Oe=Be(92310),we=Be.n(Oe),Te=Be(92413),Re=Be(33606),Ie=Be(37061),be=Be(77861),Pe=Be(17115),je=Be(90782),ye=Be(6089),ie=Be(18929),ae=et.createContext(null),fe=ae,de=Be(39559),ve=Be(400),xe=Be(33708),he="__rc_cascader_search_mark__",pe=function(pi,ii,zi){var Jr=zi.label;return ii.some(function(Kt){return String(Kt[Jr]).toLowerCase().includes(pi.toLowerCase())})},Se=function(pi,ii,zi,Jr){return ii.map(function(Kt){return Kt[Jr.label]}).join(" / ")},Ne=function(_r,pi,ii,zi,Jr,Kt){var Le=Jr.filter,We=Le===void 0?pe:Le,De=Jr.render,qe=De===void 0?Se:De,dt=Jr.limit,Mt=dt===void 0?50:dt,wt=Jr.sort;return et.useMemo(function(){var rn=[];if(!_r)return[];function un(zn,Fn){var tn=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;zn.forEach(function(Vn){if(!(!wt&&Mt!==!1&&Mt>0&&rn.length>=Mt)){var tr=[].concat((0,He.Z)(Fn),[Vn]),dr=Vn[ii.children],Bn=tn||Vn.disabled;if((!dr||dr.length===0||Kt)&&We(_r,tr,{label:ii.label})){var An;rn.push((0,xe.Z)((0,xe.Z)({},Vn),{},(An={disabled:Bn},(0,ve.Z)(An,ii.label,qe(_r,tr,zi,ii)),(0,ve.Z)(An,he,tr),(0,ve.Z)(An,ii.children,void 0),An)))}dr&&un(Vn[ii.children],tr,Bn)}})}return un(pi,[]),wt&&rn.sort(function(zn,Fn){return wt(zn[he],Fn[he],_r,ii)}),Mt!==!1&&Mt>0?rn.slice(0,Mt):rn},[_r,pi,ii,zi,qe,Kt,We,wt,Mt])},ze="__RC_CASCADER_SPLIT__",Ke="SHOW_PARENT",Ve="SHOW_CHILD";function Je(_r){return _r.join(ze)}function tt(_r){return _r.map(Je)}function gt(_r){return _r.split(ze)}function st(_r){var pi=_r||{},ii=pi.label,zi=pi.value,Jr=pi.children,Kt=zi||"value";return{label:ii||"label",value:Kt,key:Kt,children:Jr||"children"}}function St(_r,pi){var ii,zi;return(ii=_r.isLeaf)!==null&&ii!==void 0?ii:!((zi=_r[pi.children])!==null&&zi!==void 0&&zi.length)}function At(_r){var pi=_r.parentElement;if(pi){var ii=_r.offsetTop-pi.offsetTop;ii-pi.scrollTop<0?pi.scrollTo({top:ii}):ii+_r.offsetHeight-pi.scrollTop>pi.offsetHeight&&pi.scrollTo({top:ii+_r.offsetHeight-pi.offsetHeight})}}function vt(_r,pi){return _r.map(function(ii){var zi;return(zi=ii[he])===null||zi===void 0?void 0:zi.map(function(Jr){return Jr[pi.value]})})}function Tt(_r,pi,ii){var zi=new Set(_r),Jr=pi();return _r.filter(function(Kt){var Le=Jr[Kt],We=Le?Le.parent:null,De=Le?Le.children:null;return Le&&Le.node.disabled?!0:ii===Ve?!(De&&De.some(function(qe){return qe.key&&zi.has(qe.key)})):!(We&&!We.node.disabled&&zi.has(We.key))})}function bt(_r,pi,ii){for(var zi=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,Jr=pi,Kt=[],Le=function(){var qe,dt,Mt,wt=_r[We],rn=(qe=Jr)===null||qe===void 0?void 0:qe.findIndex(function(zn){var Fn=zn[ii.value];return zi?String(Fn)===String(wt):Fn===wt}),un=rn!==-1?(dt=Jr)===null||dt===void 0?void 0:dt[rn]:null;Kt.push({value:(Mt=un==null?void 0:un[ii.value])!==null&&Mt!==void 0?Mt:wt,index:rn,option:un}),Jr=un==null?void 0:un[ii.children]},We=0;We<_r.length;We+=1)Le();return Kt}var Et=function(_r,pi,ii,zi,Jr){return et.useMemo(function(){var Kt=Jr||function(Le){var We=zi?Le.slice(-1):Le,De=" / ";return We.every(function(qe){return["string","number"].includes((0,de.Z)(qe))})?We.join(De):We.reduce(function(qe,dt,Mt){var wt=et.isValidElement(dt)?et.cloneElement(dt,{key:Mt}):dt;return Mt===0?[wt]:[].concat((0,He.Z)(qe),[De,wt])},[])};return _r.map(function(Le){var We,De,qe=bt(Le,pi,ii),dt=Kt(qe.map(function(wt){var rn,un=wt.option,zn=wt.value;return(rn=un==null?void 0:un[ii.label])!==null&&rn!==void 0?rn:zn}),qe.map(function(wt){var rn=wt.option;return rn})),Mt=Je(Le);return{label:dt,value:Mt,key:Mt,valueCells:Le,disabled:(We=qe[qe.length-1])===null||We===void 0||(De=We.option)===null||De===void 0?void 0:De.disabled}})},[_r,pi,ii,Jr,zi])},lt=Be(71430),Nt=function(_r,pi){var ii=et.useRef({options:null,info:null}),zi=et.useCallback(function(){return ii.current.options!==_r&&(ii.current.options=_r,ii.current.info=(0,lt.I8)(_r,{fieldNames:pi,initWrapper:function(Kt){return(0,xe.Z)((0,xe.Z)({},Kt),{},{pathKeyEntities:{}})},processEntity:function(Kt,Le){var We=Kt.nodes.map(function(De){return De[pi.value]}).join(ze);Le.pathKeyEntities[We]=Kt,Kt.key=We}})),ii.current.info.pathKeyEntities},[pi,_r]);return zi},Zt=function(_r,pi){return et.useCallback(function(ii){var zi=[],Jr=[];return ii.forEach(function(Kt){var Le=bt(Kt,_r,pi);Le.every(function(We){return We.option})?Jr.push(Kt):zi.push(Kt)}),[Jr,zi]},[_r,pi])},Ut=Be(48736);function Ft(_r){return et.useMemo(function(){if(!_r)return[!1,{}];var pi={matchInputWidth:!0,limit:50};return _r&&(0,de.Z)(_r)==="object"&&(pi=(0,xe.Z)((0,xe.Z)({},pi),_r)),pi.limit<=0&&delete pi.limit,[!0,pi]},[_r])}var Yt=et.memo(function(_r){var pi=_r.children;return pi},function(_r,pi){return!pi.open}),dn=Yt;function Dn(_r){var pi,ii=_r.prefixCls,zi=_r.checked,Jr=_r.halfChecked,Kt=_r.disabled,Le=_r.onClick,We=_r.disableCheckbox,De=et.useContext(fe),qe=De.checkable,dt=typeof qe!="boolean"?qe:null;return et.createElement("span",{className:we()("".concat(ii),(pi={},(0,ve.Z)(pi,"".concat(ii,"-checked"),zi),(0,ve.Z)(pi,"".concat(ii,"-indeterminate"),!zi&&Jr),(0,ve.Z)(pi,"".concat(ii,"-disabled"),Kt||We),pi)),onClick:Le},dt)}var Rn="__cascader_fix_label__";function Zn(_r){var pi=_r.prefixCls,ii=_r.multiple,zi=_r.options,Jr=_r.activeValue,Kt=_r.prevValuePath,Le=_r.onToggleOpen,We=_r.onSelect,De=_r.onActive,qe=_r.checkedSet,dt=_r.halfCheckedSet,Mt=_r.loadingKeys,wt=_r.isSelectable,rn=_r.searchValue,un="".concat(pi,"-menu"),zn="".concat(pi,"-menu-item"),Fn=et.useContext(fe),tn=Fn.fieldNames,Vn=Fn.changeOnSelect,tr=Fn.expandTrigger,dr=Fn.expandIcon,Bn=Fn.loadingIcon,An=Fn.dropdownMenuColumnStyle,Nn=tr==="hover",$n=et.useMemo(function(){return zi.map(function(lr){var gr,Tr=lr.disabled,ur=lr.disableCheckbox,Br=lr[he],jr=(gr=lr[Rn])!==null&&gr!==void 0?gr:lr[tn.label],fr=lr[tn.value],qn=St(lr,tn),fi=Br?Br.map(function(ji){return ji[tn.value]}):[].concat((0,He.Z)(Kt),[fr]),ui=Je(fi),$i=Mt.includes(ui),wr=qe.has(ui),oi=dt.has(ui);return{disabled:Tr,label:jr,value:fr,isLeaf:qn,isLoading:$i,checked:wr,halfChecked:oi,option:lr,disableCheckbox:ur,fullPath:fi,fullPathKey:ui}})},[zi,qe,tn,dt,Mt,Kt]);return et.createElement("ul",{className:un,role:"menu"},$n.map(function(lr){var gr,Tr=lr.disabled,ur=lr.label,Br=lr.value,jr=lr.isLeaf,fr=lr.isLoading,qn=lr.checked,fi=lr.halfChecked,ui=lr.option,$i=lr.fullPath,wr=lr.fullPathKey,oi=lr.disableCheckbox,ji=function(){if(!(Tr||rn)){var bo=(0,He.Z)($i);Nn&&jr&&bo.pop(),De(bo)}},Yi=function(){wt(ui)&&We($i,jr)},Vi;return typeof ui.title=="string"?Vi=ui.title:typeof ur=="string"&&(Vi=ur),et.createElement("li",{key:wr,className:we()(zn,(gr={},(0,ve.Z)(gr,"".concat(zn,"-expand"),!jr),(0,ve.Z)(gr,"".concat(zn,"-active"),Jr===Br||Jr===wr),(0,ve.Z)(gr,"".concat(zn,"-disabled"),Tr),(0,ve.Z)(gr,"".concat(zn,"-loading"),fr),gr)),style:An,role:"menuitemcheckbox",title:Vi,"aria-checked":qn,"data-path-key":wr,onClick:function(){ji(),!oi&&(!ii||jr)&&Yi()},onDoubleClick:function(){Vn&&Le(!1)},onMouseEnter:function(){Nn&&ji()},onMouseDown:function(bo){bo.preventDefault()}},ii&&et.createElement(Dn,{prefixCls:"".concat(pi,"-checkbox"),checked:qn,halfChecked:fi,disabled:Tr||oi,disableCheckbox:oi,onClick:function(bo){oi||(bo.stopPropagation(),Yi())}}),et.createElement("div",{className:"".concat(zn,"-content")},ur),!fr&&dr&&!jr&&et.createElement("div",{className:"".concat(zn,"-expand-icon")},dr),fr&&Bn&&et.createElement("div",{className:"".concat(zn,"-loading-icon")},Bn))}))}var ln=function(){var _r=(0,be.lk)(),pi=_r.multiple,ii=_r.open,zi=et.useContext(fe),Jr=zi.values,Kt=et.useState([]),Le=(0,Re.Z)(Kt,2),We=Le[0],De=Le[1];return et.useEffect(function(){if(ii&&!pi){var qe=Jr[0];De(qe||[])}},[ii]),[We,De]},Gn=Be(10228),Wn=function(_r,pi,ii,zi,Jr,Kt){var Le=(0,be.lk)(),We=Le.direction,De=Le.searchValue,qe=Le.toggleOpen,dt=Le.open,Mt=We==="rtl",wt=et.useMemo(function(){for(var An=-1,Nn=pi,$n=[],lr=[],gr=zi.length,Tr=vt(pi,ii),ur=function(ui){var $i=Nn.findIndex(function(wr,oi){return(Tr[oi]?Je(Tr[oi]):wr[ii.value])===zi[ui]});if($i===-1)return"break";An=$i,$n.push(An),lr.push(zi[ui]),Nn=Nn[An][ii.children]},Br=0;Br1){var Nn=un.slice(0,-1);Vn(Nn)}else qe(!1)},Bn=function(){var Nn,$n=((Nn=Fn[zn])===null||Nn===void 0?void 0:Nn[ii.children])||[],lr=$n.find(function(Tr){return!Tr.disabled});if(lr){var gr=[].concat((0,He.Z)(un),[lr[ii.value]]);Vn(gr)}};et.useImperativeHandle(_r,function(){return{onKeyDown:function(Nn){var $n=Nn.which;switch($n){case Gn.Z.UP:case Gn.Z.DOWN:{var lr=0;$n===Gn.Z.UP?lr=-1:$n===Gn.Z.DOWN&&(lr=1),lr!==0&&tr(lr);break}case Gn.Z.LEFT:{if(De)break;Mt?Bn():dr();break}case Gn.Z.RIGHT:{if(De)break;Mt?dr():Bn();break}case Gn.Z.BACKSPACE:{De||dr();break}case Gn.Z.ENTER:{if(un.length){var gr=Fn[zn],Tr=(gr==null?void 0:gr[he])||[];Tr.length?Kt(Tr.map(function(ur){return ur[ii.value]}),Tr[Tr.length-1]):Kt(un,Fn[zn])}break}case Gn.Z.ESC:qe(!1),dt&&Nn.stopPropagation()}},onKeyUp:function(){}}})},qt=et.forwardRef(function(_r,pi){var ii,zi,Jr,Kt,Le=(0,be.lk)(),We=Le.prefixCls,De=Le.multiple,qe=Le.searchValue,dt=Le.toggleOpen,Mt=Le.notFoundContent,wt=Le.direction,rn=Le.open,un=et.useRef(),zn=wt==="rtl",Fn=et.useContext(fe),tn=Fn.options,Vn=Fn.values,tr=Fn.halfValues,dr=Fn.fieldNames,Bn=Fn.changeOnSelect,An=Fn.onSelect,Nn=Fn.searchOptions,$n=Fn.dropdownPrefixCls,lr=Fn.loadData,gr=Fn.expandTrigger,Tr=$n||We,ur=et.useState([]),Br=(0,Re.Z)(ur,2),jr=Br[0],fr=Br[1],qn=function(fa){if(!(!lr||qe)){var ys=bt(fa,tn,dr),qa=ys.map(function(Ca){var Za=Ca.option;return Za}),Go=qa[qa.length-1];if(Go&&!St(Go,dr)){var li=Je(fa);fr(function(Ca){return[].concat((0,He.Z)(Ca),[li])}),lr(qa)}}};et.useEffect(function(){jr.length&&jr.forEach(function(ts){var fa=gt(ts),ys=bt(fa,tn,dr,!0).map(function(Go){var li=Go.option;return li}),qa=ys[ys.length-1];(!qa||qa[dr.children]||St(qa,dr))&&fr(function(Go){return Go.filter(function(li){return li!==ts})})})},[tn,jr,dr]);var fi=et.useMemo(function(){return new Set(tt(Vn))},[Vn]),ui=et.useMemo(function(){return new Set(tt(tr))},[tr]),$i=ln(),wr=(0,Re.Z)($i,2),oi=wr[0],ji=wr[1],Yi=function(fa){ji(fa),qn(fa)},Vi=function(fa){var ys=fa.disabled,qa=St(fa,dr);return!ys&&(qa||Bn||De)},to=function(fa,ys){var qa=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;An(fa),!De&&(ys||Bn&&(gr==="hover"||qa))&&dt(!1)},bo=et.useMemo(function(){return qe?Nn:tn},[qe,Nn,tn]),Lo=et.useMemo(function(){for(var ts=[{options:bo}],fa=bo,ys=vt(fa,dr),qa=function(){var Za=oi[Go],lo=fa.find(function(Yo,Ms){return(ys[Ms]?Je(ys[Ms]):Yo[dr.value])===Za}),fn=lo==null?void 0:lo[dr.children];if(!(fn!=null&&fn.length))return"break";fa=fn,ts.push({options:fn})},Go=0;Go":jr,qn=_r.loadingIcon,fi=_r.children,ui=_r.dropdownMatchSelectWidth,$i=ui===void 0?!1:ui,wr=_r.showCheckedStrategy,oi=wr===void 0?Ke:wr,ji=(0,Ie.Z)(_r,ut),Yi=(0,Pe.ZP)(ii),Vi=!!Mt,to=(0,ie.Z)(Le,{value:We,postState:nn}),bo=(0,Re.Z)(to,2),Lo=bo[0],Gi=bo[1],Fo=et.useMemo(function(){return st(Kt)},[JSON.stringify(Kt)]),Zr=et.useMemo(function(){return Vn||[]},[Vn]),Pa=Nt(Zr,Fo),Xr=et.useCallback(function(Rs){var As=Pa();return Rs.map(function(Ns){var Ks=As[Ns].nodes;return Ks.map(function(Yl){return Yl[Fo.value]})})},[Pa,Fo]),Ma=(0,ie.Z)("",{value:un,postState:function(As){return As||""}}),ts=(0,Re.Z)(Ma,2),fa=ts[0],ys=ts[1],qa=function(As,Ns){ys(As),Ns.source!=="blur"&&zn&&zn(As)},Go=Ft(Fn),li=(0,Re.Z)(Go,2),Ca=li[0],Za=li[1],lo=Ne(fa,Zr,Fo,tr||Jr,Za,De),fn=Zt(Zr,Fo),Yo=et.useMemo(function(){var Rs=fn(Lo),As=(0,Re.Z)(Rs,2),Ns=As[0],Ks=As[1];if(!Vi||!Lo.length)return[Ns,[],Ks];var Yl=tt(Ns),Gl=Pa(),yu=(0,je.S)(Yl,!0,Gl),Pr=yu.checkedKeys,ou=yu.halfCheckedKeys;return[Xr(Pr),Xr(ou),Ks]},[Vi,Lo,Pa,Xr,fn]),Ms=(0,Re.Z)(Yo,3),_a=Ms[0],Bs=Ms[1],Vs=Ms[2],ol=et.useMemo(function(){var Rs=tt(_a),As=Tt(Rs,Pa,oi);return[].concat((0,He.Z)(Vs),(0,He.Z)(Xr(As)))},[_a,Pa,Xr,Vs,oi]),ka=Et(ol,Zr,Fo,Vi,dt),Aa=(0,ye.Z)(function(Rs){if(Gi(Rs),qe){var As=nn(Rs),Ns=As.map(function(Gl){return bt(Gl,Zr,Fo).map(function(yu){return yu.option})}),Ks=Vi?As:As[0],Yl=Vi?Ns:Ns[0];qe(Ks,Yl)}}),Sa=(0,ye.Z)(function(Rs){if((!Vi||rn)&&ys(""),!Vi)Aa(Rs);else{var As=Je(Rs),Ns=tt(_a),Ks=tt(Bs),Yl=Ns.includes(As),Gl=Vs.some(function(hl){return Je(hl)===As}),yu=_a,Pr=Vs;if(Gl&&!Yl)Pr=Vs.filter(function(hl){return Je(hl)!==As});else{var ou=Yl?Ns.filter(function(hl){return hl!==As}):[].concat((0,He.Z)(Ns),[As]),vd=Pa(),Tc;if(Yl){var qs=(0,je.S)(ou,{checked:!1,halfCheckedKeys:Ks},vd);Tc=qs.checkedKeys}else{var ws=(0,je.S)(ou,!0,vd);Tc=ws.checkedKeys}var au=Tt(Tc,Pa,oi);yu=Xr(au)}Aa([].concat((0,He.Z)(Pr),(0,He.Z)(yu)))}}),xs=function(As,Ns){if(Ns.type==="clear"){Aa([]);return}var Ks=Ns.values[0],Yl=Ks.valueCells;Sa(Yl)},Ls=An!==void 0?An:Bn,la=$n||Nn,na=Tr||gr,Ri=function(As){ur==null||ur(As),Br==null||Br(As)},qo=et.useMemo(function(){return{options:Zr,fieldNames:Fo,values:_a,halfValues:Bs,changeOnSelect:De,onSelect:Sa,checkable:Mt,searchOptions:lo,dropdownPrefixCls:tr,loadData:dr,expandTrigger:tn,expandIcon:fr,loadingIcon:qn,dropdownMenuColumnStyle:lr}},[Zr,Fo,_a,Bs,De,Sa,Mt,lo,tr,dr,tn,fr,qn,lr]),Ts=!(fa?lo:Zr).length,pl=fa&&Za.matchInputWidth||Ts?{}:{minWidth:"auto"};return et.createElement(fe.Provider,{value:qo},et.createElement(be.Ac,(0,Te.Z)({},ji,{ref:pi,id:Yi,prefixCls:Jr,autoClearSearchValue:rn,dropdownMatchSelectWidth:$i,dropdownStyle:pl,displayValues:ka,onDisplayValuesChange:xs,mode:Vi?"multiple":void 0,searchValue:fa,onSearch:qa,showSearch:Ca,OptionList:xt,emptyOptions:Ts,open:Ls,dropdownClassName:la,placement:na,onDropdownVisibleChange:Ri,getRawInputElement:function(){return fi}})))});Pt.SHOW_PARENT=Ke,Pt.SHOW_CHILD=Ve;var Vt=Pt,on=Vt,$t=Be(2738),Jt=Be(62892),xn=Be(53487),Qn=Be(19080),rr=Be(36355),Jn=Be(93891),mr=Be(1684),Rr=Be(19716),Tn=Be(32441),hr=Be(14154),or=Be(58582),yr=Be(84443),ti=Be(66339),mi=Be(33234),di=Be(98447),Pi=Be(17313),vo=Be(74207),Co=Be(83116);const To=_r=>{const{prefixCls:pi,componentCls:ii,antCls:zi}=_r,Jr=`${ii}-menu-item`,Kt=` &${Jr}-expand ${Jr}-expand-icon, ${Jr}-loading-icon `;return[{[ii]:{width:_r.controlWidth}},{[`${ii}-dropdown`]:[(0,di.C2)(`${pi}-checkbox`,_r),{[`&${zi}-select-dropdown`]:{padding:0}},{[ii]:{"&-checkbox":{top:0,marginInlineEnd:_r.paddingXS},"&-menus":{display:"flex",flexWrap:"nowrap",alignItems:"flex-start",[`&${ii}-menu-empty`]:{[`${ii}-menu`]:{width:"100%",height:"auto",[Jr]:{color:_r.colorTextDisabled}}}},"&-menu":{flexGrow:1,minWidth:_r.controlItemWidth,height:_r.dropdownHeight,margin:0,padding:_r.menuPadding,overflow:"auto",verticalAlign:"top",listStyle:"none","-ms-overflow-style":"-ms-autohiding-scrollbar","&:not(:last-child)":{borderInlineEnd:`${_r.lineWidth}px ${_r.lineType} ${_r.colorSplit}`},"&-item":Object.assign(Object.assign({},Pi.vS),{display:"flex",flexWrap:"nowrap",alignItems:"center",padding:_r.optionPadding,lineHeight:_r.lineHeight,cursor:"pointer",transition:`all ${_r.motionDurationMid}`,borderRadius:_r.borderRadiusSM,"&:hover":{background:_r.controlItemBgHover},"&-disabled":{color:_r.colorTextDisabled,cursor:"not-allowed","&:hover":{background:"transparent"},[Kt]:{color:_r.colorTextDisabled}},[`&-active:not(${Jr}-disabled)`]:{"&, &:hover":{fontWeight:_r.optionSelectedFontWeight,backgroundColor:_r.optionSelectedBg}},"&-content":{flex:"auto"},[Kt]:{marginInlineStart:_r.paddingXXS,color:_r.colorTextDescription,fontSize:_r.fontSizeIcon},"&-keyword":{color:_r.colorHighlight}})}}}]},{[`${ii}-dropdown-rtl`]:{direction:"rtl"}},(0,vo.c)(_r)]};var xo=(0,Co.Z)("Cascader",_r=>[To(_r)],_r=>{const pi=Math.round((_r.controlHeight-_r.fontSize*_r.lineHeight)/2);return{controlWidth:184,controlItemWidth:111,dropdownHeight:180,optionSelectedBg:_r.controlItemBgActive,optionSelectedFontWeight:_r.fontWeightStrong,optionPadding:`${pi}px ${_r.paddingSM}px`,menuPadding:_r.paddingXXS}}),ma=function(_r,pi){var ii={};for(var zi in _r)Object.prototype.hasOwnProperty.call(_r,zi)&&pi.indexOf(zi)<0&&(ii[zi]=_r[zi]);if(_r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var Jr=0,zi=Object.getOwnPropertySymbols(_r);JrDe===0?[We]:[].concat((0,He.Z)(Le),[pi,We]),[]),Jr=[];let Kt=0;return zi.forEach((Le,We)=>{const De=Kt+Le.length;let qe=_r.slice(Kt,De);Kt=De,We%2===1&&(qe=et.createElement("span",{className:`${ii}-menu-item-keyword`,key:`separator-${We}`},qe)),Jr.push(qe)}),Jr}const ro=(_r,pi,ii,zi)=>{const Jr=[],Kt=_r.toLowerCase();return pi.forEach((Le,We)=>{We!==0&&Jr.push(" / ");let De=Le[zi.label];const qe=typeof De;(qe==="string"||qe==="number")&&(De=ko(String(De),Kt,ii)),Jr.push(De)}),Jr},Rt=et.forwardRef((_r,pi)=>{const{prefixCls:ii,size:zi,disabled:Jr,className:Kt,rootClassName:Le,multiple:We,bordered:De=!0,transitionName:qe,choiceTransitionName:dt="",popupClassName:Mt,dropdownClassName:wt,expandIcon:rn,placement:un,showSearch:zn,allowClear:Fn=!0,notFoundContent:tn,direction:Vn,getPopupContainer:tr,status:dr,showArrow:Bn,builtinPlacements:An,style:Nn}=_r,$n=ma(_r,["prefixCls","size","disabled","className","rootClassName","multiple","bordered","transitionName","choiceTransitionName","popupClassName","dropdownClassName","expandIcon","placement","showSearch","allowClear","notFoundContent","direction","getPopupContainer","status","showArrow","builtinPlacements","style"]),lr=(0,$t.Z)($n,["suffixIcon"]),{getPopupContainer:gr,getPrefixCls:Tr,renderEmpty:ur,direction:Br,popupOverflow:jr,cascader:fr}=et.useContext(rr.E_),qn=Vn||Br,fi=qn==="rtl",{status:ui,hasFeedback:$i,isFormItemInput:wr,feedbackIcon:oi}=et.useContext(Tn.aM),ji=(0,Qn.F)(ui,dr),Yi=tn||(ur==null?void 0:ur("Cascader"))||et.createElement(Jn.Z,{componentName:"Cascader"}),Vi=Tr(),to=Tr("select",ii),bo=Tr("cascader",ii),[Lo,Gi]=(0,hr.Z)(to),[Fo]=xo(bo),{compactSize:Zr,compactItemClassnames:Pa}=(0,mi.ri)(to,Vn),Xr=we()(Mt||wt,`${bo}-dropdown`,{[`${bo}-dropdown-rtl`]:qn==="rtl"},Le,Gi),Ma=et.useMemo(()=>{if(!zn)return zn;let Vs={render:ro};return typeof zn=="object"&&(Vs=Object.assign(Object.assign({},Vs),zn)),Vs},[zn]),ts=(0,Rr.Z)(Vs=>{var ol;return(ol=zi!=null?zi:Zr)!==null&&ol!==void 0?ol:Vs}),fa=et.useContext(mr.Z),ys=Jr!=null?Jr:fa;let qa=rn;rn||(qa=fi?et.createElement(Ge.Z,null):et.createElement(Ze.Z,null));const Go=et.createElement("span",{className:`${to}-menu-item-loading-icon`},et.createElement(ke.Z,{spin:!0})),li=et.useMemo(()=>We?et.createElement("span",{className:`${bo}-checkbox-inner`}):!1,[We]),Ca=(0,yr.Z)(_r.suffixIcon,Bn),{suffixIcon:Za,removeIcon:lo,clearIcon:fn}=(0,ti.Z)(Object.assign(Object.assign({},_r),{hasFeedback:$i,feedbackIcon:oi,showSuffixIcon:Ca,multiple:We,prefixCls:to,componentName:"Cascader"})),Yo=et.useMemo(()=>un!==void 0?un:fi?"bottomRight":"bottomLeft",[un,fi]),Ms=(0,or.Z)(An,jr),_a=Fn===!0?{clearIcon:fn}:Fn,Bs=et.createElement(on,Object.assign({prefixCls:to,className:we()(!ii&&bo,{[`${to}-lg`]:ts==="large",[`${to}-sm`]:ts==="small",[`${to}-rtl`]:fi,[`${to}-borderless`]:!De,[`${to}-in-form-item`]:wr},(0,Qn.Z)(to,ji,$i),Pa,fr==null?void 0:fr.className,Kt,Le,Gi),disabled:ys,style:Object.assign(Object.assign({},fr==null?void 0:fr.style),Nn)},lr,{builtinPlacements:Ms,direction:qn,placement:Yo,notFoundContent:Yi,allowClear:_a,showSearch:Ma,expandIcon:qa,suffixIcon:Za,removeIcon:lo,loadingIcon:Go,checkable:li,dropdownClassName:Xr,dropdownPrefixCls:ii||bo,choiceTransitionName:(0,Jt.m)(Vi,"",dt),transitionName:(0,Jt.m)(Vi,"slide-up",qe),getPopupContainer:tr||gr,ref:pi}));return Fo(Lo(Bs))}),Kr=(0,xn.Z)(Rt);Rt.SHOW_PARENT=_i,Rt.SHOW_CHILD=xa,Rt._InternalPanelDoNotUseOrYouWillBeFired=Kr;var Bi=Rt},24905:function(sn,an,Be){"use strict";Be.d(an,{default:function(){return Ne}});var He=Be(92310),et=Be.n(He),Ge=Be(5630),ke=Be(59301),Ze=Be(36355),Oe=Be(1684),we=Be(32441),Re=ke.createContext(null),Ie=Be(98447),be=Be(14088),Pe=Be(4572),je=function(ze,Ke){var Ve={};for(var Je in ze)Object.prototype.hasOwnProperty.call(ze,Je)&&Ke.indexOf(Je)<0&&(Ve[Je]=ze[Je]);if(ze!=null&&typeof Object.getOwnPropertySymbols=="function")for(var tt=0,Je=Object.getOwnPropertySymbols(ze);tt{var Ve;const{prefixCls:Je,className:tt,rootClassName:gt,children:st,indeterminate:St=!1,style:At,onMouseEnter:vt,onMouseLeave:Tt,skipGroup:bt=!1,disabled:Et}=ze,lt=je(ze,["prefixCls","className","rootClassName","children","indeterminate","style","onMouseEnter","onMouseLeave","skipGroup","disabled"]),{getPrefixCls:Nt,direction:Zt,checkbox:Ut}=ke.useContext(Ze.E_),Ft=ke.useContext(Re),{isFormItemInput:Yt}=ke.useContext(we.aM),dn=ke.useContext(Oe.Z),Dn=(Ve=(Ft==null?void 0:Ft.disabled)||Et)!==null&&Ve!==void 0?Ve:dn,Rn=ke.useRef(lt.value);ke.useEffect(()=>{Ft==null||Ft.registerValue(lt.value)},[]),ke.useEffect(()=>{if(!bt)return lt.value!==Rn.current&&(Ft==null||Ft.cancelValue(Rn.current),Ft==null||Ft.registerValue(lt.value),Rn.current=lt.value),()=>Ft==null?void 0:Ft.cancelValue(lt.value)},[lt.value]);const Zn=Nt("checkbox",Je),[ln,Gn]=(0,Ie.ZP)(Zn),Wn=Object.assign({},lt);Ft&&!bt&&(Wn.onChange=function(){lt.onChange&<.onChange.apply(lt,arguments),Ft.toggleOption&&Ft.toggleOption({label:st,value:lt.value})},Wn.name=Ft.name,Wn.checked=Ft.value.includes(lt.value));const qt=et()(`${Zn}-wrapper`,{[`${Zn}-rtl`]:Zt==="rtl",[`${Zn}-wrapper-checked`]:Wn.checked,[`${Zn}-wrapper-disabled`]:Dn,[`${Zn}-wrapper-in-form-item`]:Yt},Ut==null?void 0:Ut.className,tt,gt,Gn),xt=et()({[`${Zn}-indeterminate`]:St},Pe.A,Gn),ft=St?"mixed":void 0;return ln(ke.createElement(be.Z,{component:"Checkbox",disabled:Dn},ke.createElement("label",{className:qt,style:Object.assign(Object.assign({},Ut==null?void 0:Ut.style),At),onMouseEnter:vt,onMouseLeave:Tt},ke.createElement(Ge.Z,Object.assign({"aria-checked":ft},Wn,{prefixCls:Zn,className:xt,disabled:Dn,ref:Ke})),st!==void 0&&ke.createElement("span",null,st))))};var ae=ke.forwardRef(ye),fe=Be(26407),de=Be(2738),ve=function(ze,Ke){var Ve={};for(var Je in ze)Object.prototype.hasOwnProperty.call(ze,Je)&&Ke.indexOf(Je)<0&&(Ve[Je]=ze[Je]);if(ze!=null&&typeof Object.getOwnPropertySymbols=="function")for(var tt=0,Je=Object.getOwnPropertySymbols(ze);tt{const{defaultValue:Ve,children:Je,options:tt=[],prefixCls:gt,className:st,rootClassName:St,style:At,onChange:vt}=ze,Tt=ve(ze,["defaultValue","children","options","prefixCls","className","rootClassName","style","onChange"]),{getPrefixCls:bt,direction:Et}=ke.useContext(Ze.E_),[lt,Nt]=ke.useState(Tt.value||Ve||[]),[Zt,Ut]=ke.useState([]);ke.useEffect(()=>{"value"in Tt&&Nt(Tt.value||[])},[Tt.value]);const Ft=ke.useMemo(()=>tt.map(Bt=>typeof Bt=="string"||typeof Bt=="number"?{label:Bt,value:Bt}:Bt),[tt]),Yt=Bt=>{Ut(Ot=>Ot.filter(ut=>ut!==Bt))},dn=Bt=>{Ut(Ot=>[].concat((0,fe.Z)(Ot),[Bt]))},Dn=Bt=>{const Ot=lt.indexOf(Bt.value),ut=(0,fe.Z)(lt);Ot===-1?ut.push(Bt.value):ut.splice(Ot,1),"value"in Tt||Nt(ut),vt==null||vt(ut.filter(It=>Zt.includes(It)).sort((It,nn)=>{const Pt=Ft.findIndex(on=>on.value===It),Vt=Ft.findIndex(on=>on.value===nn);return Pt-Vt}))},Rn=bt("checkbox",gt),Zn=`${Rn}-group`,[ln,Gn]=(0,Ie.ZP)(Rn),Wn=(0,de.Z)(Tt,["value","disabled"]),qt=tt.length?Ft.map(Bt=>ke.createElement(ae,{prefixCls:Rn,key:Bt.value.toString(),disabled:"disabled"in Bt?Bt.disabled:Tt.disabled,value:Bt.value,checked:lt.includes(Bt.value),onChange:Bt.onChange,className:`${Zn}-item`,style:Bt.style,title:Bt.title},Bt.label)):Je,xt={toggleOption:Dn,value:lt,disabled:Tt.disabled,name:Tt.name,registerValue:dn,cancelValue:Yt},ft=et()(Zn,{[`${Zn}-rtl`]:Et==="rtl"},st,St,Gn);return ln(ke.createElement("div",Object.assign({className:ft,style:At},Wn,{ref:Ke}),ke.createElement(Re.Provider,{value:xt},qt)))},he=ke.forwardRef(xe);var pe=ke.memo(he);const Se=ae;Se.Group=pe,Se.__ANT_CHECKBOX=!0;var Ne=Se},98447:function(sn,an,Be){"use strict";Be.d(an,{C2:function(){return Ze}});var He=Be(17313),et=Be(37613),Ge=Be(83116);const ke=Oe=>{const{checkboxCls:we}=Oe,Te=`${we}-wrapper`;return[{[`${we}-group`]:Object.assign(Object.assign({},(0,He.Wf)(Oe)),{display:"inline-flex",flexWrap:"wrap",columnGap:Oe.marginXS,[`> ${Oe.antCls}-row`]:{flex:1}}),[Te]:Object.assign(Object.assign({},(0,He.Wf)(Oe)),{display:"inline-flex",alignItems:"baseline",cursor:"pointer","&:after":{display:"inline-block",width:0,overflow:"hidden",content:"'\\a0'"},[`& + ${Te}`]:{marginInlineStart:0},[`&${Te}-in-form-item`]:{'input[type="checkbox"]':{width:14,height:14}}}),[we]:Object.assign(Object.assign({},(0,He.Wf)(Oe)),{position:"relative",whiteSpace:"nowrap",lineHeight:1,cursor:"pointer",borderRadius:Oe.borderRadiusSM,alignSelf:"center",[`${we}-input`]:{position:"absolute",inset:0,zIndex:1,cursor:"pointer",opacity:0,margin:0,[`&:focus-visible + ${we}-inner`]:Object.assign({},(0,He.oN)(Oe))},[`${we}-inner`]:{boxSizing:"border-box",position:"relative",top:0,insetInlineStart:0,display:"block",width:Oe.checkboxSize,height:Oe.checkboxSize,direction:"ltr",backgroundColor:Oe.colorBgContainer,border:`${Oe.lineWidth}px ${Oe.lineType} ${Oe.colorBorder}`,borderRadius:Oe.borderRadiusSM,borderCollapse:"separate",transition:`all ${Oe.motionDurationSlow}`,"&:after":{boxSizing:"border-box",position:"absolute",top:"50%",insetInlineStart:"21.5%",display:"table",width:Oe.checkboxSize/14*5,height:Oe.checkboxSize/14*8,border:`${Oe.lineWidthBold}px solid ${Oe.colorWhite}`,borderTop:0,borderInlineStart:0,transform:"rotate(45deg) scale(0) translate(-50%,-50%)",opacity:0,content:'""',transition:`all ${Oe.motionDurationFast} ${Oe.motionEaseInBack}, opacity ${Oe.motionDurationFast}`}},"& + span":{paddingInlineStart:Oe.paddingXS,paddingInlineEnd:Oe.paddingXS}})},{[` ${Te}:not(${Te}-disabled), ${we}:not(${we}-disabled) `]:{[`&:hover ${we}-inner`]:{borderColor:Oe.colorPrimary}},[`${Te}:not(${Te}-disabled)`]:{[`&:hover ${we}-checked:not(${we}-disabled) ${we}-inner`]:{backgroundColor:Oe.colorPrimaryHover,borderColor:"transparent"},[`&:hover ${we}-checked:not(${we}-disabled):after`]:{borderColor:Oe.colorPrimaryHover}}},{[`${we}-checked`]:{[`${we}-inner`]:{backgroundColor:Oe.colorPrimary,borderColor:Oe.colorPrimary,"&:after":{opacity:1,transform:"rotate(45deg) scale(1) translate(-50%,-50%)",transition:`all ${Oe.motionDurationMid} ${Oe.motionEaseOutBack} ${Oe.motionDurationFast}`}}},[` ${Te}-checked:not(${Te}-disabled), ${we}-checked:not(${we}-disabled) `]:{[`&:hover ${we}-inner`]:{backgroundColor:Oe.colorPrimaryHover,borderColor:"transparent"}}},{[we]:{"&-indeterminate":{[`${we}-inner`]:{backgroundColor:Oe.colorBgContainer,borderColor:Oe.colorBorder,"&:after":{top:"50%",insetInlineStart:"50%",width:Oe.fontSizeLG/2,height:Oe.fontSizeLG/2,backgroundColor:Oe.colorPrimary,border:0,transform:"translate(-50%, -50%) scale(1)",opacity:1,content:'""'}}}}},{[`${Te}-disabled`]:{cursor:"not-allowed"},[`${we}-disabled`]:{[`&, ${we}-input`]:{cursor:"not-allowed",pointerEvents:"none"},[`${we}-inner`]:{background:Oe.colorBgContainerDisabled,borderColor:Oe.colorBorder,"&:after":{borderColor:Oe.colorTextDisabled}},"&:after":{display:"none"},"& + span":{color:Oe.colorTextDisabled},[`&${we}-indeterminate ${we}-inner::after`]:{background:Oe.colorTextDisabled}}}]};function Ze(Oe,we){const Te=(0,et.TS)(we,{checkboxCls:`.${Oe}`,checkboxSize:we.controlInteractiveSize});return[ke(Te)]}an.ZP=(0,Ge.Z)("Checkbox",(Oe,we)=>{let{prefixCls:Te}=we;return[Ze(Te,Oe)]})},93891:function(sn,an,Be){"use strict";var He=Be(59301),et=Be(36355),Ge=Be(64165);const ke=Ze=>{const{componentName:Oe}=Ze,{getPrefixCls:we}=(0,He.useContext)(et.E_),Te=we("empty");switch(Oe){case"Table":case"List":return He.createElement(Ge.Z,{image:Ge.Z.PRESENTED_IMAGE_SIMPLE});case"Select":case"TreeSelect":case"Cascader":case"Transfer":case"Mentions":return He.createElement(Ge.Z,{image:Ge.Z.PRESENTED_IMAGE_SIMPLE,className:`${Te}-small`});default:return He.createElement(Ge.Z,null)}};an.Z=ke},5083:function(sn,an,Be){"use strict";Be.d(an,{default:function(){return oc}});var He=Be(61186),et=Be.n(He),Ge=Be(48736),ke=Be(90111),Ze=Be.n(ke),Oe=Be(58319),we=Be.n(Oe),Te=Be(23250),Re=Be.n(Te),Ie=Be(74959),be=Be.n(Ie),Pe=Be(10238),je=Be.n(Pe),ye=Be(33656),ie=Be.n(ye);et().extend(ie()),et().extend(je()),et().extend(Ze()),et().extend(we()),et().extend(Re()),et().extend(be()),et().extend(function(cn,En){var Ln=En.prototype,Er=Ln.format;Ln.format=function(Yr){var $r=(Yr||"").replace("Wo","wo");return Er.bind(this)($r)}});var ae={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"},fe=function(En){var Ln=ae[En];return Ln||En.split("_")[0]},de=function(){(0,Ge.ET)(!1,"Not match any format. Please help to fire a issue about this.")},ve={getNow:function(){return et()()},getFixedDate:function(En){return et()(En,["YYYY-M-DD","YYYY-MM-DD"])},getEndDate:function(En){return En.endOf("month")},getWeekDay:function(En){var Ln=En.locale("en");return Ln.weekday()+Ln.localeData().firstDayOfWeek()},getYear:function(En){return En.year()},getMonth:function(En){return En.month()},getDate:function(En){return En.date()},getHour:function(En){return En.hour()},getMinute:function(En){return En.minute()},getSecond:function(En){return En.second()},addYear:function(En,Ln){return En.add(Ln,"year")},addMonth:function(En,Ln){return En.add(Ln,"month")},addDate:function(En,Ln){return En.add(Ln,"day")},setYear:function(En,Ln){return En.year(Ln)},setMonth:function(En,Ln){return En.month(Ln)},setDate:function(En,Ln){return En.date(Ln)},setHour:function(En,Ln){return En.hour(Ln)},setMinute:function(En,Ln){return En.minute(Ln)},setSecond:function(En,Ln){return En.second(Ln)},isAfter:function(En,Ln){return En.isAfter(Ln)},isValidate:function(En){return En.isValid()},locale:{getWeekFirstDay:function(En){return et()().locale(fe(En)).localeData().firstDayOfWeek()},getWeekFirstDate:function(En,Ln){return Ln.locale(fe(En)).weekday(0)},getWeek:function(En,Ln){return Ln.locale(fe(En)).week()},getShortWeekDays:function(En){return et()().locale(fe(En)).localeData().weekdaysMin()},getShortMonths:function(En){return et()().locale(fe(En)).localeData().monthsShort()},format:function(En,Ln,Er){return Ln.locale(fe(En)).format(Er)},parse:function(En,Ln,Er){for(var xr=fe(En),Yr=0;Yr1&&($r=En.addDate($r,-7)),$r}function Tn(cn,En,Ln){var Er=arguments.length>3&&arguments[3]!==void 0?arguments[3]:1;switch(En){case"year":return Ln.addYear(cn,Er*10);case"quarter":case"month":return Ln.addYear(cn,Er);default:return Ln.addMonth(cn,Er)}}function hr(cn,En){var Ln=En.generateConfig,Er=En.locale,xr=En.format;return typeof xr=="function"?xr(cn):Ln.locale.format(Er.locale,cn,xr)}function or(cn,En){var Ln=En.generateConfig,Er=En.locale,xr=En.formatList;return!cn||typeof xr[0]=="function"?null:Ln.locale.parse(Er.locale,cn,xr)}function yr(cn){var En=cn.cellDate,Ln=cn.mode,Er=cn.disabledDate,xr=cn.generateConfig;if(!Er)return!1;var Yr=function(Qo,Ai,so){for(var Ko=Ai;Ko<=so;){var za=void 0;switch(Qo){case"date":{if(za=xr.setDate(En,Ko),!Er(za))return!1;break}case"month":{if(za=xr.setMonth(En,Ko),!yr({cellDate:za,mode:"month",generateConfig:xr,disabledDate:Er}))return!1;break}case"year":{if(za=xr.setYear(En,Ko),!yr({cellDate:za,mode:"year",generateConfig:xr,disabledDate:Er}))return!1;break}}Ko+=1}return!0};switch(Ln){case"date":case"week":return Er(En);case"month":{var $r=1,Ei=xr.getDate(xr.getEndDate(En));return Yr("date",$r,Ei)}case"quarter":{var bi=Math.floor(xr.getMonth(En)/3)*3,Zi=bi+2;return Yr("month",bi,Zi)}case"year":return Yr("month",0,11);case"decade":{var Oo=xr.getYear(En),Hi=Math.floor(Oo/Ot)*Ot,mo=Hi+Ot-1;return Yr("year",Hi,mo)}}}function ti(cn,En){var Ln=En.formatList,Er=En.generateConfig,xr=En.locale;return(0,ft.Z)(function(){if(!cn)return[[""],""];for(var Yr="",$r=[],Ei=0;Ei1&&arguments[1]!==void 0?arguments[1]:!1;if(cancelAnimationFrame(Zi.current),Ko){bi(so);return}Zi.current=requestAnimationFrame(function(){bi(so)})}var Hi=ti(Ei,{formatList:Ln,generateConfig:Er,locale:xr}),mo=(0,Wn.Z)(Hi,2),Wi=mo[1];function Qo(so){Oo(so)}function Ai(){var so=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;Oo(null,so)}return(0,Se.useEffect)(function(){Ai(!0)},[cn]),(0,Se.useEffect)(function(){return function(){return cancelAnimationFrame(Zi.current)}},[]),[Wi,Qo,Ai]}var di=Be(10228),Pi=Be(16089),vo=Be(26407),Co=Be(29194),To=new Map;function xo(cn,En){var Ln;function Er(){(0,Co.Z)(cn)?En():Ln=(0,Pi.Z)(function(){Er()})}return Er(),function(){Pi.Z.cancel(Ln)}}function ma(cn,En,Ln){if(To.get(cn)&&cancelAnimationFrame(To.get(cn)),Ln<=0){To.set(cn,requestAnimationFrame(function(){cn.scrollTop=En}));return}var Er=En-cn.scrollTop,xr=Er/Ln*10;To.set(cn,requestAnimationFrame(function(){cn.scrollTop+=xr,cn.scrollTop!==En&&ma(cn,En,Ln-10)}))}function xa(cn,En){var Ln=En.onLeftRight,Er=En.onCtrlLeftRight,xr=En.onUpDown,Yr=En.onPageUpDown,$r=En.onEnter,Ei=cn.which,bi=cn.ctrlKey,Zi=cn.metaKey;switch(Ei){case di.Z.LEFT:if(bi||Zi){if(Er)return Er(-1),!0}else if(Ln)return Ln(-1),!0;break;case di.Z.RIGHT:if(bi||Zi){if(Er)return Er(1),!0}else if(Ln)return Ln(1),!0;break;case di.Z.UP:if(xr)return xr(-1),!0;break;case di.Z.DOWN:if(xr)return xr(1),!0;break;case di.Z.PAGE_UP:if(Yr)return Yr(-1),!0;break;case di.Z.PAGE_DOWN:if(Yr)return Yr(1),!0;break;case di.Z.ENTER:if($r)return $r(),!0;break}return!1}function _i(cn,En,Ln,Er){var xr=cn;if(!xr)switch(En){case"time":xr=Er?"hh:mm:ss a":"HH:mm:ss";break;case"week":xr="gggg-wo";break;case"month":xr="YYYY-MM";break;case"quarter":xr="YYYY-[Q]Q";break;case"year":xr="YYYY";break;default:xr=Ln?"YYYY-MM-DD HH:mm:ss":"YYYY-MM-DD"}return xr}function ko(cn,En,Ln){var Er=cn==="time"?8:10,xr=typeof En=="function"?En(Ln.getNow()).length:En.length;return Math.max(Er,xr)+2}var ro=null,Rt=new Set;function Kr(cn){return!ro&&typeof window!="undefined"&&window.addEventListener&&(ro=function(Ln){(0,vo.Z)(Rt).forEach(function(Er){Er(Ln)})},window.addEventListener("mousedown",ro)),Rt.add(cn),function(){Rt.delete(cn),Rt.size===0&&(window.removeEventListener("mousedown",ro),ro=null)}}function Bi(cn){var En=cn.target;if(cn.composed&&En.shadowRoot){var Ln;return((Ln=cn.composedPath)===null||Ln===void 0?void 0:Ln.call(cn)[0])||En}return En}var _r=function(En){return En==="month"||En==="date"?"year":En},pi=function(En){return En==="date"?"month":En},ii=function(En){return En==="month"||En==="date"?"quarter":En},zi=function(En){return En==="date"?"week":En},Jr={year:_r,month:pi,quarter:ii,week:zi,time:null,date:null};function Kt(cn,En){return cn.some(function(Ln){return Ln&&Ln.contains(En)})}function Le(cn){var En=cn.open,Ln=cn.value,Er=cn.isClickOutside,xr=cn.triggerOpen,Yr=cn.forwardKeyDown,$r=cn.onKeyDown,Ei=cn.blurToCancel,bi=cn.onSubmit,Zi=cn.onCancel,Oo=cn.onFocus,Hi=cn.onBlur,mo=cn.changeOnBlur,Wi=(0,Se.useState)(!1),Qo=(0,Wn.Z)(Wi,2),Ai=Qo[0],so=Qo[1],Ko=(0,Se.useState)(!1),za=(0,Wn.Z)(Ko,2),wa=za[0],Va=za[1],Ka=(0,Se.useRef)(!1),Ba=(0,Se.useRef)(!1),_o=(0,Se.useRef)(!1),rs={onMouseDown:function(){so(!0),xr(!0)},onKeyDown:function(dl){var Nl=function(){_o.current=!0};if($r(dl,Nl),!_o.current){switch(dl.which){case di.Z.ENTER:{En?bi()!==!1&&so(!0):xr(!0),dl.preventDefault();return}case di.Z.TAB:{Ai&&En&&!dl.shiftKey?(so(!1),dl.preventDefault()):!Ai&&En&&!Yr(dl)&&dl.shiftKey&&(so(!0),dl.preventDefault());return}case di.Z.ESC:{so(!0),Zi();return}}!En&&![di.Z.SHIFT].includes(dl.which)?xr(!0):Ai||Yr(dl)}},onFocus:function(dl){so(!0),Va(!0),Oo&&Oo(dl)},onBlur:function(dl){if(Ka.current||!Er(document.activeElement)){Ka.current=!1;return}Ei?setTimeout(function(){for(var Nl=document,Tl=Nl.activeElement;Tl&&Tl.shadowRoot;)Tl=Tl.shadowRoot.activeElement;Er(Tl)&&Zi()},0):En&&(xr(!1),Ba.current&&bi()),Va(!1),Hi==null||Hi(dl)}};return(0,Se.useEffect)(function(){Ba.current=!1},[En]),(0,Se.useEffect)(function(){Ba.current=!0},[Ln]),(0,Se.useEffect)(function(){return Kr(function(Zs){var dl=Bi(Zs),Nl=Er(dl);En&&(Nl?!mo&&(!wa||Nl)&&xr(!1):(Ka.current=!0,(0,Pi.Z)(function(){Ka.current=!1})))})}),[rs,{focused:wa,typing:Ai}]}function We(cn,En){return Se.useMemo(function(){return cn||(En?((0,Ge.ZP)(!1,"`ranges` is deprecated. Please use `presets` instead."),Object.entries(En).map(function(Ln){var Er=(0,Wn.Z)(Ln,2),xr=Er[0],Yr=Er[1];return{label:xr,value:Yr}})):[])},[cn,En])}var De=Be(34280);function qe(cn){var En=cn.valueTexts,Ln=cn.onTextChange,Er=Se.useState(""),xr=(0,Wn.Z)(Er,2),Yr=xr[0],$r=xr[1],Ei=Se.useRef([]);Ei.current=En;function bi(Oo){$r(Oo),Ln(Oo)}function Zi(){$r(Ei.current[0])}return(0,De.Z)(function(){En.every(function(Oo){return Oo!==Yr})&&Zi()},[En.join("||")]),[Yr,bi,Zi]}var dt=Se.createContext({}),Mt=dt,wt=Be(39559);function rn(cn){var En=cn.cellRender,Ln=cn.monthCellRender,Er=cn.dateRender,xr=Se.useMemo(function(){if(En)return En;if(!(!Ln&&!Er))return function(Yr,$r){var Ei=Yr;return Er&&$r.type==="date"?Er(Ei,$r.today):Ln&&$r.type==="month"?Ln(Ei,$r.locale):$r.originNode}},[En,Ln,Er]);return xr}function un(cn,En){for(var Ln=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"0",Er=String(cn);Er.length=1?Ln|0:1,$r=cn;$r<=En;$r+=Yr)xr.push({label:un($r,2),value:$r,disabled:(Er||[]).includes($r)});return xr}function Fo(cn){var En=cn.generateConfig,Ln=cn.prefixCls,Er=cn.operationRef,xr=cn.activeColumnIndex,Yr=cn.value,$r=cn.showHour,Ei=cn.showMinute,bi=cn.showSecond,Zi=cn.use12Hours,Oo=cn.hourStep,Hi=Oo===void 0?1:Oo,mo=cn.minuteStep,Wi=mo===void 0?1:mo,Qo=cn.secondStep,Ai=Qo===void 0?1:Qo,so=cn.disabledHours,Ko=cn.disabledMinutes,za=cn.disabledSeconds,wa=cn.disabledTime,Va=cn.hideDisabledOptions,Ka=cn.onSelect,Ba=cn.cellRender,_o=cn.locale,rs=[],Zs="".concat(Ln,"-content"),dl="".concat(Ln,"-time-panel"),Nl,Tl=Yr?En.getHour(Yr):-1,Dl=Tl,vu=Yr?En.getMinute(Yr):-1,yl=Yr?En.getSecond(Yr):-1,il=En.getNow(),Bl=Se.useMemo(function(){if(wa){var yi=wa(il);return[yi.disabledHours,yi.disabledMinutes,yi.disabledSeconds]}return[so,Ko,za]},[so,Ko,za,wa,il]),Rl=(0,Wn.Z)(Bl,3),mu=Rl[0],Xl=Rl[1],ra=Rl[2],Ou=Gi(0,23,Hi,mu&&mu()),tc=(0,ft.Z)(function(){return Ou},Ou,Lo);Zi&&(Nl=Dl>=12,Dl%=12);var Cn=Se.useMemo(function(){if(!Zi)return[!1,!1];var yi=[!0,!0];return tc.forEach(function(Ii){var co=Ii.disabled,uo=Ii.value;co||(uo>=12?yi[1]=!1:yi[0]=!1)}),yi},[Zi,tc]),On=(0,Wn.Z)(Cn,2),sr=On[0],pr=On[1],kr=Se.useMemo(function(){return Zi?tc.filter(Nl?function(yi){return yi.value>=12}:function(yi){return yi.value<12}).map(function(yi){var Ii=yi.value%12,co=Ii===0?"12":un(Ii,2);return(0,Gn.Z)((0,Gn.Z)({},yi),{},{label:co,value:Ii})}):tc},[Zi,Nl,tc]),Lr=Gi(0,59,Wi,Xl&&Xl(Tl)),ai=Gi(0,59,Ai,ra&&ra(Tl,vu)),ni=Vi({value:Yr,generateConfig:En,disabledMinutes:Xl,disabledSeconds:ra,minutes:Lr,seconds:ai,use12Hours:Zi});Er.current={onUpDown:function(Ii){var co=rs[xr];if(co)for(var uo=co.units.findIndex(function(oa){return oa.value===co.value}),gi=co.units.length,Ho=1;Ho2&&arguments[2]!==void 0?arguments[2]:!1;(zo===so||Ti)&&(Qa(zr),rs&&rs(zr),ni&&ni(zr,Vr),Zs&&!Jn(bi,zr,ea)&&!(Wi!=null&&Wi(zr))&&Zs(zr))},en=function(zr){if(au.includes(zo)){var Vr,Ti,Li=zo==="date";switch(zr===di.Z.PAGE_UP||zr===di.Z.PAGE_DOWN?Ti=Li?bi.addMonth:bi.addYear:Ti=Li?bi.addDate:bi.addMonth,zr){case di.Z.LEFT:case di.Z.PAGE_UP:Vr=Ti(Da,-1);break;case di.Z.RIGHT:case di.Z.PAGE_DOWN:Vr=Ti(Da,1);break;case di.Z.UP:case di.Z.DOWN:Vr=Ti(Da,Number("".concat(zr===di.Z.UP?"-":"").concat(Li?It:Bs)));break}if(Vr)return!(Wi!=null&&Wi(Vr))}return!0},pn=function(zr){if(Ho.current&&Ho.current.onKeyDown){var Vr=!0,Ti=zr.which;if([di.Z.LEFT,di.Z.RIGHT,di.Z.UP,di.Z.DOWN,di.Z.PAGE_UP,di.Z.PAGE_DOWN,di.Z.ENTER].includes(Ti)&&(zr.preventDefault(),Ti!==di.Z.ENTER&&za===0&&(Vr=en(Ti))),Vr)return Ho.current.onKeyDown(zr)}return(0,Ge.ZP)(!1,"Panel not correct handle keyDown event. Please help to fire issue about this."),!1},yn=function(zr){Ho.current&&Ho.current.onBlur&&Ho.current.onBlur(zr)};ai&&co!=="right"&&(ai.current={onKeyDown:pn,onClose:function(){Ho.current&&Ho.current.onClose&&Ho.current.onClose()}}),Se.useEffect(function(){Zi&&!io.current&&ds(Zi)},[Zi]),Se.useEffect(function(){io.current=!1},[]);var In,mn=rn({cellRender:Cn,monthCellRender:tc,dateRender:Ou}),Hn=(0,Gn.Z)((0,Gn.Z)({},cn),{},{cellRender:mn,operationRef:Ho,prefixCls:xr,viewDate:Da,value:ea,onViewDateChange:da,sourceMode:sa,onPanelChange:Dt,disabledDate:Wi});switch(delete Hn.onChange,delete Hn.onSelect,zo){case"decade":In=Se.createElement(Yo,(0,pe.Z)({},Hn,{onSelect:function(zr,Vr){da(zr),_t(zr,Vr)}}));break;case"year":In=Se.createElement(Tc,(0,pe.Z)({},Hn,{onSelect:function(zr,Vr){da(zr),_t(zr,Vr)}}));break;case"month":In=Se.createElement(Sa,(0,pe.Z)({},Hn,{onSelect:function(zr,Vr){da(zr),_t(zr,Vr)}}));break;case"quarter":In=Se.createElement(pl,(0,pe.Z)({},Hn,{onSelect:function(zr,Vr){da(zr),_t(zr,Vr)}}));break;case"week":In=Se.createElement(As,(0,pe.Z)({},Hn,{onSelect:function(zr,Vr){da(zr),_t(zr,Vr)}}));break;case"time":delete Hn.showTime,In=Se.createElement(Ma,(0,pe.Z)({},Hn,(0,wt.Z)(Va)==="object"?Va:null,{onSelect:function(zr,Vr){da(zr),_t(zr,Vr)}}));break;default:Va?In=Se.createElement(ys,(0,pe.Z)({},Hn,{onSelect:function(zr,Vr){da(zr),_t(zr,Vr)}})):In=Se.createElement(oi,(0,pe.Z)({},Hn,{onSelect:function(zr,Vr){da(zr),_t(zr,Vr)}}))}var Un,ir,Dr=function(){var zr=bi.getNow(),Vr=lr(bi.getHour(zr),bi.getMinute(zr),bi.getSecond(zr),sr?Bl:1,pr?mu:1,kr?ra:1),Ti=Nn(bi,zr,Vr[0],Vr[1],Vr[2]);_t(Ti,"submit")};ri||(Un=qs(xr,zo,Ba),Va&&zo!=="date"?ir=null:ir=ws({prefixCls:xr,components:vu,needConfirmButton:On,okDisabled:!ea||Wi&&Wi(ea),locale:Ei,showNow:wa,onNow:On&&Dr,onOk:function(){ea&&(_t(ea,"submit",!0),Dl&&Dl(ea))}}));var br;if(Ka&&zo==="date"&&so==="date"&&!Va){var Qr=bi.getNow(),Hr="".concat(xr,"-today-btn"),Fr=Wi&&Wi(Qr);br=Se.createElement("a",{className:Ft()(Hr,Fr&&"".concat(Hr,"-disabled")),"aria-disabled":Fr,onClick:function(){Fr||_t(Qr,"mouse",!0)}},Ei.today)}return Se.createElement(Mt.Provider,{value:(0,Gn.Z)((0,Gn.Z)({},Lr),{},{mode:zo,hideHeader:"hideHeader"in cn?_o:Lr.hideHeader,hidePrevBtn:Ii&&co==="right",hideNextBtn:Ii&&co==="left"})},Se.createElement("div",{tabIndex:za,className:Ft()("".concat(xr,"-panel"),Yr,(En={},(0,ln.Z)(En,"".concat(xr,"-panel-has-range"),uo&&uo[0]&&uo[1]),(0,ln.Z)(En,"".concat(xr,"-panel-has-range-hover"),gi&&gi[0]&&gi[1]),(0,ln.Z)(En,"".concat(xr,"-panel-rtl"),yl==="rtl"),En)),style:$r,onKeyDown:pn,onBlur:yn,onMouseDown:Nl},In,Un||ir||br?Se.createElement("div",{className:"".concat(xr,"-footer")},Un,ir,br):null))}var Cs=hl,wl=Be(35593),Dc={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 Ha(cn){var En,Ln=cn.prefixCls,Er=cn.popupElement,xr=cn.popupStyle,Yr=cn.visible,$r=cn.dropdownClassName,Ei=cn.dropdownAlign,bi=cn.transitionName,Zi=cn.getPopupContainer,Oo=cn.children,Hi=cn.range,mo=cn.popupPlacement,Wi=cn.direction,Qo="".concat(Ln,"-dropdown"),Ai=function(){return mo!==void 0?mo:Wi==="rtl"?"bottomRight":"bottomLeft"};return Se.createElement(wl.Z,{showAction:[],hideAction:[],popupPlacement:Ai(),builtinPlacements:Dc,prefixCls:Qo,popupTransitionName:bi,popup:Er,popupAlign:Ei,popupVisible:Yr,popupClassName:Ft()($r,(En={},(0,ln.Z)(En,"".concat(Qo,"-range"),Hi),(0,ln.Z)(En,"".concat(Qo,"-rtl"),Wi==="rtl"),En)),popupStyle:xr,getPopupContainer:Zi},Oo)}var Xs=Ha;function ks(cn){var En=cn.prefixCls,Ln=cn.presets,Er=cn.onClick,xr=cn.onHover;return Ln.length?Se.createElement("div",{className:"".concat(En,"-presets")},Se.createElement("ul",null,Ln.map(function(Yr,$r){var Ei=Yr.label,bi=Yr.value;return Se.createElement("li",{key:$r,onClick:function(){return Er==null?void 0:Er(tr(bi))},onMouseEnter:function(){return xr==null?void 0:xr(tr(bi))},onMouseLeave:function(){return xr==null?void 0:xr(null)}},Ei)}))):null}function Ro(cn){var En=cn.picker,Ln=cn.disabledHours,Er=cn.disabledMinutes,xr=cn.disabledSeconds;En==="time"&&(Ln||Er||xr)&&warning(!1,"'disabledHours', 'disabledMinutes', 'disabledSeconds' will be removed in the next major version, please use 'disabledTime' instead.")}function pu(cn,En,Ln){var Er=(0,wt.Z)(En)==="object"?En.clearIcon:Ln;return Er||Se.createElement("span",{className:"".concat(cn,"-clear-btn")})}function ku(cn){var En,Ln=cn,Er=Ln.prefixCls,xr=Er===void 0?"rc-picker":Er,Yr=Ln.id,$r=Ln.name,Ei=Ln.tabIndex,bi=Ln.style,Zi=Ln.className,Oo=Ln.dropdownClassName,Hi=Ln.dropdownAlign,mo=Ln.popupStyle,Wi=Ln.transitionName,Qo=Ln.generateConfig,Ai=Ln.locale,so=Ln.inputReadOnly,Ko=Ln.allowClear,za=Ln.autoFocus,wa=Ln.showTime,Va=Ln.picker,Ka=Va===void 0?"date":Va,Ba=Ln.format,_o=Ln.use12Hours,rs=Ln.value,Zs=Ln.defaultValue,dl=Ln.presets,Nl=Ln.open,Tl=Ln.defaultOpen,Dl=Ln.defaultOpenValue,vu=Ln.suffixIcon,yl=Ln.clearIcon,il=Ln.disabled,Bl=Ln.disabledDate,Rl=Ln.placeholder,mu=Ln.getPopupContainer,Xl=Ln.pickerRef,ra=Ln.panelRender,Ou=Ln.onChange,tc=Ln.onOpenChange,Cn=Ln.onFocus,On=Ln.onBlur,sr=Ln.onMouseDown,pr=Ln.onMouseUp,kr=Ln.onMouseEnter,Lr=Ln.onMouseLeave,ai=Ln.onContextMenu,ni=Ln.onClick,ri=Ln.onKeyDown,Ni=Ln.onSelect,yi=Ln.direction,Ii=Ln.autoComplete,co=Ii===void 0?"off":Ii,uo=Ln.inputRender,gi=Ln.changeOnBlur,Ho=Se.useRef(null),io=Ka==="date"&&!!wa||Ka==="time",oa=We(dl),Jo=Fn(_i(Ba,Ka,wa,_o)),ea=Se.useRef(null),Qa=Se.useRef(null),as=Se.useRef(null),ca=(0,qt.Z)(null,{value:rs,defaultValue:Zs}),Da=(0,Wn.Z)(ca,2),ds=Da[0],da=Da[1],ja=Se.useState(ds),ha=(0,Wn.Z)(ja,2),jo=ha[0],zo=ha[1],Wa=Se.useRef(null),ss=(0,qt.Z)(!1,{value:Nl,defaultValue:Tl,postState:function(Ao){return il?!1:Ao},onChange:function(Ao){tc&&tc(Ao),!Ao&&Wa.current&&Wa.current.onClose&&Wa.current.onClose()}}),hs=(0,Wn.Z)(ss,2),sa=hs[0],ht=hs[1],Dt=ti(jo,{formatList:Jo,generateConfig:Qo,locale:Ai}),_t=(0,Wn.Z)(Dt,2),en=_t[0],pn=_t[1],yn=qe({valueTexts:en,onTextChange:function(Ao){var ba=or(Ao,{locale:Ai,formatList:Jo,generateConfig:Qo});ba&&(!Bl||!Bl(ba))&&zo(ba)}}),In=(0,Wn.Z)(yn,3),mn=In[0],Hn=In[1],Un=In[2],ir=function(Ao){zo(Ao),da(Ao),Ou&&!Jn(Qo,ds,Ao)&&Ou(Ao,Ao?hr(Ao,{generateConfig:Qo,locale:Ai,format:Jo[0]}):"")},Dr=function(Ao){il&&Ao||ht(Ao)},br=function(Ao){return sa&&Wa.current&&Wa.current.onKeyDown?Wa.current.onKeyDown(Ao):((0,Ge.ZP)(!1,"Picker not correct forward KeyDown operation. Please help to fire issue about this."),!1)},Qr=function(){for(var Ao=arguments.length,ba=new Array(Ao),bs=0;bsmo(Zi);case"month":return Hi(Ai)>Hi(Zi);case"week":return Oo(Ai)>Oo(Zi);default:return!xn(Ei,Ai,Zi)&&Ei.isAfter(Ai,Zi)}return!1},[Yr,$r[1],Zi,En]),Qo=Se.useCallback(function(Ai){if($r[1]||Yr&&Yr(Ai))return!0;if($r[0]&&bi)return!xn(Ei,Ai,Zi)&&Ei.isAfter(bi,Ai);if(!En&&bi)switch(Ln){case"quarter":return mo(Ai)0&&arguments[0]!==void 0?arguments[0]:!1,Is=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},is=null;ga&&Ac&&Ac[0]&&Ac[1]&&Ai.isAfter(Ac[1],Ac[0])&&(is=Ac);var uu=_o;if(_o&&(0,wt.Z)(_o)==="object"&&_o.defaultValue){var ec=_o.defaultValue;uu=(0,Gn.Z)((0,Gn.Z)({},_o),{},{defaultValue:tn(ec,ki)||void 0})}return Se.createElement(An.Provider,{value:{inRange:!0,panelPosition:Au,rangedValue:$d||Ur,hoverRangedValue:is}},Se.createElement(Cs,(0,pe.Z)({},cn,Is,{cellRender:wm,showTime:uu,mode:Li[ki],generateConfig:Ai,style:void 0,direction:Da,disabledDate:ki===0?Io:Eo,disabledTime:function(Eh){return Bl?Bl(Eh,ki===0?"start":"end"):!1},className:Ft()((0,ln.Z)({},"".concat($r,"-panel-focused"),ki===0?!U0:!kd)),value:tn(Ur,ki),locale:so,tabIndex:-1,onPanelChange:function(Eh,ad){ki===0&&_0(!0),ki===1&&Gg(!0),qr(Vn(Li,ad,ki),Vn(Ur,Eh,ki));var Sf=Eh;Au==="right"&&Li[ki]===ad&&(Sf=Tn(Sf,ad,Ai,-1)),Qr(Sf,ki)},onOk:null,onSelect:void 0,onChange:void 0,defaultValue:ki===0?tn(Ur,1):tn(Ur,0)})))}var ef=0,Cm=0;if(ki&&ss.current&&sa.current&&Wa.current&&_t.current){ef=ss.current.offsetWidth+sa.current.offsetWidth;var d1=_t.current.offsetLeft>ef?_t.current.offsetLeft-ef:_t.current.offsetLeft,bm=Wa.current.offsetWidth,cg=_t.current.offsetWidth;bm&&cg&&ef>bm-cg-(Da==="rtl"?0:d1)&&(Cm=ef)}var Vg=Da==="rtl"?{right:ef}:{left:ef};function f1(){var Au,Is=qs($r,Li[ki],ni),is=ws({prefixCls:$r,components:as,needConfirmButton:jo,okDisabled:!tn(Ur,ki)||il&&il(Ur[ki]),locale:so,onOk:function(){var wf=tn(Ur,ki);wf&&(bs(Ur,ki),ea==null||ea(Ur),Do(!1,ki,"confirm"))}});if(Ba!=="time"&&!_o){var uu=br(ki),ec=Tn(uu,Ba,Ai),Kg=Li[ki],Eh=Kg===Ba,ad=bv(Eh?"left":!1,{pickerValue:uu,onPickerValueChange:function(wf){Qr(wf,ki)}}),Sf=bv("right",{pickerValue:ec,onPickerValueChange:function(wf){Qr(Tn(wf,Ba,Ai,-1),ki)}});Da==="rtl"?Au=Se.createElement(Se.Fragment,null,Sf,Eh&&ad):Au=Se.createElement(Se.Fragment,null,ad,Eh&&Sf)}else Au=bv();var Fd=Se.createElement("div",{className:"".concat($r,"-panel-layout")},Se.createElement(ks,{prefixCls:$r,presets:gy,onClick:function(wf){bs(wf,null),Do(!1,ki,"preset")},onHover:function(wf){Em(wf)}}),Se.createElement("div",null,Se.createElement("div",{className:"".concat($r,"-panels")},Au),(Is||is)&&Se.createElement("div",{className:"".concat($r,"-footer")},Is,is)));return ra&&(Fd=ra(Fd)),Se.createElement("div",{className:"".concat($r,"-panel-container"),style:{marginLeft:Cm},ref:Wa,onMouseDown:function(wf){wf.preventDefault()}},Fd)}var Pv=Se.createElement("div",{className:Ft()("".concat($r,"-range-wrapper"),"".concat($r,"-").concat(Ba,"-range-wrapper")),style:{minWidth:$a}},Se.createElement("div",{ref:_t,className:"".concat($r,"-range-arrow"),style:Vg}),f1()),s0;sr&&(s0=Se.createElement("span",{className:"".concat($r,"-suffix"),onMouseDown:function(Is){Is.preventDefault()}},sr));var py=pu($r,On,pr),hg=Se.createElement("span",{onMouseDown:function(Is){Is.preventDefault(),Is.stopPropagation()},onMouseUp:function(Is){Is.preventDefault(),Is.stopPropagation();var is=Hn;yn[0]||(is=Vn(is,null,0)),yn[1]||(is=Vn(is,null,1)),bs(is,null),Do(!1,ki,"clear")},className:"".concat($r,"-clear"),role:"button"},py),g1=On&&(tn(Hn,0)&&!yn[0]||tn(Hn,1)&&!yn[1]),Pm={size:ko(Ba,en[0],Ai)},vy=0,Mm=0;ss.current&&hs.current&&sa.current&&(ki===0?Mm=ss.current.offsetWidth:(vy=ef,Mm=hs.current.offsetWidth));var p1=Da==="rtl"?{right:vy}:{left:vy},lA=function(Is,is){var uu=Vn(Ur,Is,ki);if(is==="submit"||is!=="key"&&!jo){bs(uu,ki),ki===0?_0():Gg();var ec=ki===0?1:0;yn[ec]?Do(!1,!1,"confirm"):Do(!1,ki,"confirm")}else zr(uu)};return Se.createElement(Mt.Provider,{value:{operationRef:pn,hideHeader:Ba==="time",onDateMouseEnter:Sm,onDateMouseLeave:Gf,hideRanges:!0,onSelect:lA,open:ga}},Se.createElement(Xs,{visible:ga,popupElement:Pv,popupStyle:Oo,prefixCls:$r,dropdownClassName:Hi,dropdownAlign:Wi,getPopupContainer:Qo,transitionName:mo,range:!0,direction:Da},Se.createElement("div",(0,pe.Z)({ref:zo,className:Ft()($r,"".concat($r,"-range"),Zi,(En={},(0,ln.Z)(En,"".concat($r,"-disabled"),yn[0]&&yn[1]),(0,ln.Z)(En,"".concat($r,"-focused"),ki===0?Oh:Rd),(0,ln.Z)(En,"".concat($r,"-rtl"),Da==="rtl"),En)),style:bi,onClick:G0,onMouseEnter:io,onMouseLeave:oa,onMouseDown:up,onMouseUp:Ho},(0,xt.Z)(cn,{aria:!0,data:!0})),Se.createElement("div",{className:Ft()("".concat($r,"-input"),(Ln={},(0,ln.Z)(Ln,"".concat($r,"-input-active"),ki===0),(0,ln.Z)(Ln,"".concat($r,"-input-placeholder"),!!k0),Ln)),ref:ss},Se.createElement("input",(0,pe.Z)({id:Ei,disabled:yn[0],readOnly:Lr||typeof en[0]=="function"||!U0,value:k0||nu,onChange:function(Is){xc(Is.target.value)},autoFocus:za,placeholder:tn(Ko,0)||"",ref:ht},W0,Pm,{autoComplete:ja}))),Se.createElement("div",{className:"".concat($r,"-range-separator"),ref:sa},dl),Se.createElement("div",{className:Ft()("".concat($r,"-input"),(Er={},(0,ln.Z)(Er,"".concat($r,"-input-active"),ki===1),(0,ln.Z)(Er,"".concat($r,"-input-placeholder"),!!j0),Er)),ref:hs},Se.createElement("input",(0,pe.Z)({disabled:yn[1],readOnly:Lr||typeof en[0]=="function"||!kd,value:j0||yh,onChange:function(Is){Jd(Is.target.value)},placeholder:tn(Ko,1)||"",ref:Dt},Zu,Pm,{autoComplete:ja}))),Se.createElement("div",{className:"".concat($r,"-active-bar"),style:(0,Gn.Z)((0,Gn.Z)({},p1),{},{width:Mm,position:"absolute"})}),s0,g1&&hg)))}var eh=function(cn){(0,Rn.Z)(Ln,cn);var En=(0,Zn.Z)(Ln);function Ln(){var Er;(0,Yt.Z)(this,Ln);for(var xr=arguments.length,Yr=new Array(xr),$r=0;$r{const{lineHeight:xr}=cn,Yr=Math.floor(Ln*xr)+2,$r=Math.max((En-Yr)/2,0),Ei=Math.max(En-Yr-$r,0);return{padding:`${$r}px ${Er}px ${Ei}px`}},Fu=cn=>{const{componentCls:En,pickerCellCls:Ln,pickerCellInnerCls:Er,cellHeight:xr,motionDurationSlow:Yr,borderRadiusSM:$r,motionDurationMid:Ei,cellHoverBg:bi,lineWidth:Zi,lineType:Oo,colorPrimary:Hi,cellActiveWithRangeBg:mo,colorTextLightSolid:Wi,controlHeightSM:Qo,cellRangeBorderColor:Ai,pickerCellBorderGap:so,cellHoverWithRangeBg:Ko,cellWidth:za,colorTextDisabled:wa,cellBgDisabled:Va}=cn;return{"&::before":{position:"absolute",top:"50%",insetInlineStart:0,insetInlineEnd:0,zIndex:1,height:xr,transform:"translateY(-50%)",transition:`all ${Yr}`,content:'""'},[Er]:{position:"relative",zIndex:2,display:"inline-block",minWidth:xr,height:xr,lineHeight:`${xr}px`,borderRadius:$r,transition:`background ${Ei}, border ${Ei}`},"&-range-hover-start, &-range-hover-end":{[Er]:{borderStartEndRadius:0,borderEndEndRadius:0}},[`&:hover:not(${Ln}-in-view), &:hover:not(${Ln}-selected):not(${Ln}-range-start):not(${Ln}-range-end):not(${Ln}-range-hover-start):not(${Ln}-range-hover-end)`]:{[Er]:{background:bi}},[`&-in-view${Ln}-today ${Er}`]:{"&::before":{position:"absolute",top:0,insetInlineEnd:0,bottom:0,insetInlineStart:0,zIndex:1,border:`${Zi}px ${Oo} ${Hi}`,borderRadius:$r,content:'""'}},[`&-in-view${Ln}-in-range`]:{position:"relative","&::before":{background:mo}},[`&-in-view${Ln}-selected ${Er}, &-in-view${Ln}-range-start ${Er}, &-in-view${Ln}-range-end ${Er}`]:{color:Wi,background:Hi},[`&-in-view${Ln}-range-start:not(${Ln}-range-start-single), &-in-view${Ln}-range-end:not(${Ln}-range-end-single)`]:{"&::before":{background:mo}},[`&-in-view${Ln}-range-start::before`]:{insetInlineStart:"50%"},[`&-in-view${Ln}-range-end::before`]:{insetInlineEnd:"50%"},[`&-in-view${Ln}-range-hover-start:not(${Ln}-in-range):not(${Ln}-range-start):not(${Ln}-range-end), &-in-view${Ln}-range-hover-end:not(${Ln}-in-range):not(${Ln}-range-start):not(${Ln}-range-end), &-in-view${Ln}-range-hover-start${Ln}-range-start-single, &-in-view${Ln}-range-hover-start${Ln}-range-start${Ln}-range-end${Ln}-range-end-near-hover, &-in-view${Ln}-range-hover-end${Ln}-range-start${Ln}-range-end${Ln}-range-start-near-hover, &-in-view${Ln}-range-hover-end${Ln}-range-end-single, &-in-view${Ln}-range-hover:not(${Ln}-in-range)`]:{"&::after":{position:"absolute",top:"50%",zIndex:0,height:Qo,borderTop:`${Zi}px dashed ${Ai}`,borderBottom:`${Zi}px dashed ${Ai}`,transform:"translateY(-50%)",transition:`all ${Yr}`,content:'""'}},"&-range-hover-start::after,\n &-range-hover-end::after,\n &-range-hover::after":{insetInlineEnd:0,insetInlineStart:so},[`&-in-view${Ln}-in-range${Ln}-range-hover::before, &-in-view${Ln}-in-range${Ln}-range-hover-start::before, &-in-view${Ln}-in-range${Ln}-range-hover-end::before, &-in-view${Ln}-range-start${Ln}-range-hover::before, &-in-view${Ln}-range-end${Ln}-range-hover::before, &-in-view${Ln}-range-start:not(${Ln}-range-start-single)${Ln}-range-hover-start::before, &-in-view${Ln}-range-end:not(${Ln}-range-end-single)${Ln}-range-hover-end::before, ${En}-panel > :not(${En}-date-panel) &-in-view${Ln}-in-range${Ln}-range-hover-start::before, ${En}-panel > :not(${En}-date-panel) &-in-view${Ln}-in-range${Ln}-range-hover-end::before`]:{background:Ko},[`&-in-view${Ln}-range-start:not(${Ln}-range-start-single):not(${Ln}-range-end) ${Er}`]:{borderStartStartRadius:$r,borderEndStartRadius:$r,borderStartEndRadius:0,borderEndEndRadius:0},[`&-in-view${Ln}-range-end:not(${Ln}-range-end-single):not(${Ln}-range-start) ${Er}`]:{borderStartStartRadius:0,borderEndStartRadius:0,borderStartEndRadius:$r,borderEndEndRadius:$r},[`&-range-hover${Ln}-range-end::after`]:{insetInlineStart:"50%"},[`tr > &-in-view${Ln}-range-hover:first-child::after, tr > &-in-view${Ln}-range-hover-end:first-child::after, &-in-view${Ln}-start${Ln}-range-hover-edge-start${Ln}-range-hover-edge-start-near-range::after, &-in-view${Ln}-range-hover-edge-start:not(${Ln}-range-hover-edge-start-near-range)::after, &-in-view${Ln}-range-hover-start::after`]:{insetInlineStart:(za-xr)/2,borderInlineStart:`${Zi}px dashed ${Ai}`,borderStartStartRadius:$r,borderEndStartRadius:$r},[`tr > &-in-view${Ln}-range-hover:last-child::after, tr > &-in-view${Ln}-range-hover-start:last-child::after, &-in-view${Ln}-end${Ln}-range-hover-edge-end${Ln}-range-hover-edge-end-near-range::after, &-in-view${Ln}-range-hover-edge-end:not(${Ln}-range-hover-edge-end-near-range)::after, &-in-view${Ln}-range-hover-end::after`]:{insetInlineEnd:(za-xr)/2,borderInlineEnd:`${Zi}px dashed ${Ai}`,borderStartEndRadius:$r,borderEndEndRadius:$r},"&-disabled":{color:wa,pointerEvents:"none",[Er]:{background:"transparent"},"&::before":{background:Va}},[`&-disabled${Ln}-today ${Er}::before`]:{borderColor:wa}}},du=cn=>{const{componentCls:En,pickerCellCls:Ln,pickerCellInnerCls:Er,pickerYearMonthCellWidth:xr,pickerControlIconSize:Yr,cellWidth:$r,paddingSM:Ei,paddingXS:bi,paddingXXS:Zi,colorBgContainer:Oo,lineWidth:Hi,lineType:mo,borderRadiusLG:Wi,colorPrimary:Qo,colorTextHeading:Ai,colorSplit:so,pickerControlIconBorderWidth:Ko,colorIcon:za,textHeight:wa,motionDurationMid:Va,colorIconHover:Ka,fontWeightStrong:Ba,cellHeight:_o,pickerCellPaddingVertical:rs,colorTextDisabled:Zs,colorText:dl,fontSize:Nl,cellHoverWithRangeBg:Tl,motionDurationSlow:Dl,withoutTimeCellHeight:vu,pickerQuarterPanelContentHeight:yl,colorLink:il,colorLinkActive:Bl,colorLinkHover:Rl,cellRangeBorderColor:mu,borderRadiusSM:Xl,colorTextLightSolid:ra,cellHoverBg:Ou,timeColumnHeight:tc,timeColumnWidth:Cn,timeCellHeight:On,controlItemBgActive:sr,marginXXS:pr,pickerDatePanelPaddingHorizontal:kr}=cn,Lr=$r*7+kr*2,ai=(Lr-bi*2)/3-xr-Ei,ni=(Lr-bi*2)/4-xr;return{[En]:{"&-panel":{display:"inline-flex",flexDirection:"column",textAlign:"center",background:Oo,border:`${Hi}px ${mo} ${so}`,borderRadius:Wi,outline:"none","&-focused":{borderColor:Qo},"&-rtl":{direction:"rtl",[`${En}-prev-icon, ${En}-super-prev-icon`]:{transform:"rotate(45deg)"},[`${En}-next-icon, ${En}-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:Lr},"&-header":{display:"flex",padding:`0 ${bi}px`,color:Ai,borderBottom:`${Hi}px ${mo} ${so}`,"> *":{flex:"none"},button:{padding:0,color:za,lineHeight:`${wa}px`,background:"transparent",border:0,cursor:"pointer",transition:`color ${Va}`,fontSize:"inherit"},"> button":{minWidth:"1.6em",fontSize:Nl,"&:hover":{color:Ka}},"&-view":{flex:"auto",fontWeight:Ba,lineHeight:`${wa}px`,button:{color:"inherit",fontWeight:"inherit",verticalAlign:"top","&:not(:first-child)":{marginInlineStart:bi},"&:hover":{color:Qo}}}},"&-prev-icon,\n &-next-icon,\n &-super-prev-icon,\n &-super-next-icon":{position:"relative",display:"inline-block",width:Yr,height:Yr,"&::before":{position:"absolute",top:0,insetInlineStart:0,display:"inline-block",width:Yr,height:Yr,border:"0 solid currentcolor",borderBlockStartWidth:Ko,borderBlockEndWidth:0,borderInlineStartWidth:Ko,borderInlineEndWidth:0,content:'""'}},"&-super-prev-icon,\n &-super-next-icon":{"&::after":{position:"absolute",top:Math.ceil(Yr/2),insetInlineStart:Math.ceil(Yr/2),display:"inline-block",width:Yr,height:Yr,border:"0 solid currentcolor",borderBlockStartWidth:Ko,borderBlockEndWidth:0,borderInlineStartWidth:Ko,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:_o,fontWeight:"normal"},th:{height:_o+rs*2,color:dl,verticalAlign:"middle"}},"&-cell":Object.assign({padding:`${rs}px 0`,color:Zs,cursor:"pointer","&-in-view":{color:dl}},Fu(cn)),[`&-date-panel ${En}-cell-in-view${En}-cell-in-range${En}-cell-range-hover-start ${Er}, &-date-panel ${En}-cell-in-view${En}-cell-in-range${En}-cell-range-hover-end ${Er}`]:{"&::after":{position:"absolute",top:0,bottom:0,zIndex:-1,background:Tl,transition:`all ${Dl}`,content:'""'}},[`&-date-panel ${En}-cell-in-view${En}-cell-in-range${En}-cell-range-hover-start ${Er}::after`]:{insetInlineEnd:-($r-_o)/2,insetInlineStart:0},[`&-date-panel ${En}-cell-in-view${En}-cell-in-range${En}-cell-range-hover-end ${Er}::after`]:{insetInlineEnd:0,insetInlineStart:-($r-_o)/2},[`&-range-hover${En}-range-start::after`]:{insetInlineEnd:"50%"},"&-decade-panel,\n &-year-panel,\n &-quarter-panel,\n &-month-panel":{[`${En}-content`]:{height:vu*4},[Er]:{padding:`0 ${bi}px`}},"&-quarter-panel":{[`${En}-content`]:{height:yl},[`${En}-cell-range-hover-start::after`]:{insetInlineStart:ni,borderInlineStart:`${Hi}px dashed ${mu}`,[`${En}-panel-rtl &`]:{insetInlineEnd:ni,borderInlineEnd:`${Hi}px dashed ${mu}`}},[`${En}-cell-range-hover-end::after`]:{insetInlineEnd:ni,borderInlineEnd:`${Hi}px dashed ${mu}`,[`${En}-panel-rtl &`]:{insetInlineStart:ni,borderInlineStart:`${Hi}px dashed ${mu}`}}},[`&-panel ${En}-footer`]:{borderTop:`${Hi}px ${mo} ${so}`},"&-footer":{width:"min-content",minWidth:"100%",lineHeight:`${wa-2*Hi}px`,textAlign:"center","&-extra":{padding:`0 ${Ei}px`,lineHeight:`${wa-2*Hi}px`,textAlign:"start","&:not(:last-child)":{borderBottom:`${Hi}px ${mo} ${so}`}}},"&-now":{textAlign:"start"},"&-today-btn":{color:il,"&:hover":{color:Rl},"&:active":{color:Bl},[`&${En}-today-btn-disabled`]:{color:Zs,cursor:"not-allowed"}},"&-decade-panel":{[Er]:{padding:`0 ${bi/2}px`},[`${En}-cell::before`]:{display:"none"}},"&-year-panel,\n &-quarter-panel,\n &-month-panel":{[`${En}-body`]:{padding:`0 ${bi}px`},[Er]:{width:xr},[`${En}-cell-range-hover-start::after`]:{borderStartStartRadius:Xl,borderEndStartRadius:Xl,borderStartEndRadius:0,borderEndEndRadius:0,[`${En}-panel-rtl &`]:{borderStartStartRadius:0,borderEndStartRadius:0,borderStartEndRadius:Xl,borderEndEndRadius:Xl}},[`${En}-cell-range-hover-end::after`]:{borderStartStartRadius:0,borderEndStartRadius:0,borderStartEndRadius:Xl,borderEndEndRadius:Xl,[`${En}-panel-rtl &`]:{borderStartStartRadius:Xl,borderEndStartRadius:Xl,borderStartEndRadius:0,borderEndEndRadius:0}}},"&-year-panel,\n &-month-panel":{[`${En}-cell-range-hover-start::after`]:{insetInlineStart:ai,borderInlineStart:`${Hi}px dashed ${mu}`,[`${En}-panel-rtl &`]:{insetInlineEnd:ai,borderInlineEnd:`${Hi}px dashed ${mu}`}},[`${En}-cell-range-hover-end::after`]:{insetInlineEnd:ai,borderInlineEnd:`${Hi}px dashed ${mu}`,[`${En}-panel-rtl &`]:{insetInlineStart:ai,borderInlineStart:`${Hi}px dashed ${mu}`}}},"&-week-panel":{[`${En}-body`]:{padding:`${bi}px ${Ei}px`},[`${En}-cell`]:{[`&:hover ${Er}, &-selected ${Er}, ${Er}`]:{background:"transparent !important"}},"&-row":{td:{"&:before":{transition:`background ${Va}`},"&:first-child:before":{borderStartStartRadius:Xl,borderEndStartRadius:Xl},"&:last-child:before":{borderStartEndRadius:Xl,borderEndEndRadius:Xl}},"&:hover td":{"&:before":{background:Ou}},"&-range-start td,\n &-range-end td,\n &-selected td":{[`&${Ln}`]:{"&:before":{background:Qo},[`&${En}-cell-week`]:{color:new Ll.C(ra).setAlpha(.5).toHexString()},[Er]:{color:ra}}},"&-range-hover td:before":{background:sr}}},"&-date-panel":{[`${En}-body`]:{padding:`${bi}px ${kr}px`},[`${En}-content`]:{width:$r*7,th:{width:$r,boxSizing:"border-box",padding:0}}},"&-datetime-panel":{display:"flex",[`${En}-time-panel`]:{borderInlineStart:`${Hi}px ${mo} ${so}`},[`${En}-date-panel, ${En}-time-panel`]:{transition:`opacity ${Dl}`},"&-active":{[`${En}-date-panel, ${En}-time-panel`]:{opacity:.3,"&-active":{opacity:1}}}},"&-time-panel":{width:"auto",minWidth:"auto",direction:"ltr",[`${En}-content`]:{display:"flex",flex:"auto",height:tc},"&-column":{flex:"1 0 auto",width:Cn,margin:`${Zi}px 0`,padding:0,overflowY:"hidden",textAlign:"start",listStyle:"none",transition:`background ${Va}`,overflowX:"hidden","&::after":{display:"block",height:tc-On,content:'""'},"&:not(:first-child)":{borderInlineStart:`${Hi}px ${mo} ${so}`},"&-active":{background:new Ll.C(sr).setAlpha(.2).toHexString()},"&:hover":{overflowY:"auto"},"> li":{margin:0,padding:0,[`&${En}-time-panel-cell`]:{marginInline:pr,[`${En}-time-panel-cell-inner`]:{display:"block",width:Cn-2*pr,height:On,margin:0,paddingBlock:0,paddingInlineEnd:0,paddingInlineStart:(Cn-On)/2,color:dl,lineHeight:`${On}px`,borderRadius:Xl,cursor:"pointer",transition:`background ${Va}`,"&:hover":{background:Ou}},"&-selected":{[`${En}-time-panel-cell-inner`]:{background:sr}},"&-disabled":{[`${En}-time-panel-cell-inner`]:{color:Zs,background:"transparent",cursor:"not-allowed"}}}}}},[`&-datetime-panel ${En}-time-panel-column:after`]:{height:tc-On+Zi*2}}}},Ws=cn=>{const{componentCls:En,colorBgContainer:Ln,colorError:Er,errorActiveShadow:xr,colorWarning:Yr,warningActiveShadow:$r}=cn;return{[`${En}:not(${En}-disabled)`]:{[`&${En}-status-error`]:{"&, &:not([disabled]):hover":{backgroundColor:Ln,borderColor:Er},[`&${En}-focused, &:focus`]:Object.assign({},(0,nh.M1)((0,Al.TS)(cn,{activeBorderColor:Er,activeShadow:xr}))),[`${En}-active-bar`]:{background:Er}},[`&${En}-status-warning`]:{"&, &:not([disabled]):hover":{backgroundColor:Ln,borderColor:Yr},[`&${En}-focused, &:focus`]:Object.assign({},(0,nh.M1)((0,Al.TS)(cn,{activeBorderColor:Yr,activeShadow:$r}))),[`${En}-active-bar`]:{background:Yr}}}}},Ku=cn=>{const{componentCls:En,antCls:Ln,controlHeight:Er,fontSize:xr,paddingInline:Yr,colorBgContainer:$r,lineWidth:Ei,lineType:bi,colorBorder:Zi,borderRadius:Oo,motionDurationMid:Hi,colorBgContainerDisabled:mo,colorTextDisabled:Wi,colorTextPlaceholder:Qo,controlHeightLG:Ai,fontSizeLG:so,controlHeightSM:Ko,paddingInlineSM:za,paddingXS:wa,marginXS:Va,colorTextDescription:Ka,lineWidthBold:Ba,lineHeight:_o,colorPrimary:rs,motionDurationSlow:Zs,zIndexPopup:dl,paddingXXS:Nl,paddingSM:Tl,textHeight:Dl,cellActiveWithRangeBg:vu,colorPrimaryBorder:yl,sizePopupArrow:il,borderRadiusXS:Bl,borderRadiusOuter:Rl,colorBgElevated:mu,borderRadiusLG:Xl,boxShadowSecondary:ra,borderRadiusSM:Ou,colorSplit:tc,cellHoverBg:Cn,presetsWidth:On,presetsMaxWidth:sr,boxShadowPopoverArrow:pr,colorTextQuaternary:kr}=cn;return[{[En]:Object.assign(Object.assign(Object.assign({},(0,Fc.Wf)(cn)),Du(cn,Er,xr,Yr)),{position:"relative",display:"inline-flex",alignItems:"center",background:$r,lineHeight:1,border:`${Ei}px ${bi} ${Zi}`,borderRadius:Oo,transition:`border ${Hi}, box-shadow ${Hi}`,"&:hover, &-focused":Object.assign({},(0,nh.pU)(cn)),"&-focused":Object.assign({},(0,nh.M1)(cn)),[`&${En}-disabled`]:{background:mo,borderColor:Zi,cursor:"not-allowed",[`${En}-suffix`]:{color:kr}},[`&${En}-borderless`]:{backgroundColor:"transparent !important",borderColor:"transparent !important",boxShadow:"none !important"},[`${En}-input`]:{position:"relative",display:"inline-flex",alignItems:"center",width:"100%","> input":Object.assign(Object.assign({},(0,nh.ik)(cn)),{flex:"auto",minWidth:1,height:"auto",padding:0,background:"transparent",border:0,borderRadius:0,"&:focus":{boxShadow:"none"},"&[disabled]":{background:"transparent"}}),"&:hover":{[`${En}-clear`]:{opacity:1}},"&-placeholder":{"> input":{color:Qo}}},"&-large":Object.assign(Object.assign({},Du(cn,Ai,so,Yr)),{[`${En}-input > input`]:{fontSize:so}}),"&-small":Object.assign({},Du(cn,Ko,xr,za)),[`${En}-suffix`]:{display:"flex",flex:"none",alignSelf:"center",marginInlineStart:wa/2,color:Wi,lineHeight:1,pointerEvents:"none","> *":{verticalAlign:"top","&:not(:last-child)":{marginInlineEnd:Va}}},[`${En}-clear`]:{position:"absolute",top:"50%",insetInlineEnd:0,color:Wi,lineHeight:1,background:$r,transform:"translateY(-50%)",cursor:"pointer",opacity:0,transition:`opacity ${Hi}, color ${Hi}`,"> *":{verticalAlign:"top"},"&:hover":{color:Ka}},[`${En}-separator`]:{position:"relative",display:"inline-block",width:"1em",height:so,color:Wi,fontSize:so,verticalAlign:"top",cursor:"default",[`${En}-focused &`]:{color:Ka},[`${En}-range-separator &`]:{[`${En}-disabled &`]:{cursor:"not-allowed"}}},"&-range":{position:"relative",display:"inline-flex",[`${En}-clear`]:{insetInlineEnd:Yr},"&:hover":{[`${En}-clear`]:{opacity:1}},[`${En}-active-bar`]:{bottom:-Ei,height:Ba,marginInlineStart:Yr,background:rs,opacity:0,transition:`all ${Zs} ease-out`,pointerEvents:"none"},[`&${En}-focused`]:{[`${En}-active-bar`]:{opacity:1}},[`${En}-range-separator`]:{alignItems:"center",padding:`0 ${wa}px`,lineHeight:1},[`&${En}-small`]:{[`${En}-clear`]:{insetInlineEnd:za},[`${En}-active-bar`]:{marginInlineStart:za}}},"&-dropdown":Object.assign(Object.assign(Object.assign({},(0,Fc.Wf)(cn)),du(cn)),{position:"absolute",top:-9999,left:{_skip_check_:!0,value:-9999},zIndex:dl,[`&${En}-dropdown-hidden`]:{display:"none"},[`&${En}-dropdown-placement-bottomLeft`]:{[`${En}-range-arrow`]:{top:0,display:"block",transform:"translateY(-100%)"}},[`&${En}-dropdown-placement-topLeft`]:{[`${En}-range-arrow`]:{bottom:0,display:"block",transform:"translateY(100%) rotate(180deg)"}},[`&${Ln}-slide-up-enter${Ln}-slide-up-enter-active${En}-dropdown-placement-topLeft, &${Ln}-slide-up-enter${Ln}-slide-up-enter-active${En}-dropdown-placement-topRight, &${Ln}-slide-up-appear${Ln}-slide-up-appear-active${En}-dropdown-placement-topLeft, &${Ln}-slide-up-appear${Ln}-slide-up-appear-active${En}-dropdown-placement-topRight`]:{animationName:Nc.Qt},[`&${Ln}-slide-up-enter${Ln}-slide-up-enter-active${En}-dropdown-placement-bottomLeft, &${Ln}-slide-up-enter${Ln}-slide-up-enter-active${En}-dropdown-placement-bottomRight, &${Ln}-slide-up-appear${Ln}-slide-up-appear-active${En}-dropdown-placement-bottomLeft, &${Ln}-slide-up-appear${Ln}-slide-up-appear-active${En}-dropdown-placement-bottomRight`]:{animationName:Nc.fJ},[`&${Ln}-slide-up-leave${Ln}-slide-up-leave-active${En}-dropdown-placement-topLeft, &${Ln}-slide-up-leave${Ln}-slide-up-leave-active${En}-dropdown-placement-topRight`]:{animationName:Nc.ly},[`&${Ln}-slide-up-leave${Ln}-slide-up-leave-active${En}-dropdown-placement-bottomLeft, &${Ln}-slide-up-leave${Ln}-slide-up-leave-active${En}-dropdown-placement-bottomRight`]:{animationName:Nc.Uw},[`${En}-panel > ${En}-time-panel`]:{paddingTop:Nl},[`${En}-ranges`]:{marginBottom:0,padding:`${Nl}px ${Tl}px`,overflow:"hidden",lineHeight:`${Dl-2*Ei-wa/2}px`,textAlign:"start",listStyle:"none",display:"flex",justifyContent:"space-between","> li":{display:"inline-block"},[`${En}-preset > ${Ln}-tag-blue`]:{color:rs,background:vu,borderColor:yl,cursor:"pointer"},[`${En}-ok`]:{marginInlineStart:"auto"}},[`${En}-range-wrapper`]:{display:"flex",position:"relative"},[`${En}-range-arrow`]:Object.assign({position:"absolute",zIndex:1,display:"none",marginInlineStart:Yr*1.5,transition:`left ${Zs} ease-out`},(0,Oc.r)(il,Bl,Rl,mu,pr)),[`${En}-panel-container`]:{overflow:"hidden",verticalAlign:"top",background:mu,borderRadius:Xl,boxShadow:ra,transition:`margin ${Zs}`,[`${En}-panel-layout`]:{display:"flex",flexWrap:"nowrap",alignItems:"stretch"},[`${En}-presets`]:{display:"flex",flexDirection:"column",minWidth:On,maxWidth:sr,ul:{height:0,flex:"auto",listStyle:"none",overflow:"auto",margin:0,padding:wa,borderInlineEnd:`${Ei}px ${bi} ${tc}`,li:Object.assign(Object.assign({},Fc.vS),{borderRadius:Ou,paddingInline:wa,paddingBlock:(Ko-Math.round(xr*_o))/2,cursor:"pointer",transition:`all ${Zs}`,"+ li":{marginTop:Va},"&:hover":{background:Cn}})}},[`${En}-panels`]:{display:"inline-flex",flexWrap:"nowrap",direction:"ltr",[`${En}-panel`]:{borderWidth:`0 0 ${Ei}px`},"&:last-child":{[`${En}-panel`]:{borderWidth:0}}},[`${En}-panel`]:{verticalAlign:"top",background:"transparent",borderRadius:0,borderWidth:0,[`${En}-content, table`]:{textAlign:"center"},"&-focused":{borderColor:Zi}}}}),"&-dropdown-range":{padding:`${il*2/3}px 0`,"&-hidden":{display:"none"}},"&-rtl":{direction:"rtl",[`${En}-separator`]:{transform:"rotate(180deg)"},[`${En}-footer`]:{"&-extra":{direction:"rtl"}}}})},(0,Nc.oN)(cn,"slide-up"),(0,Nc.oN)(cn,"slide-down"),(0,Ds.Fm)(cn,"move-up"),(0,Ds.Fm)(cn,"move-down")]},xu=cn=>{const{componentCls:En,controlHeightLG:Ln,paddingXXS:Er,padding:xr}=cn;return{pickerCellCls:`${En}-cell`,pickerCellInnerCls:`${En}-cell-inner`,pickerYearMonthCellWidth:Ln*1.5,pickerQuarterPanelContentHeight:Ln*1.4,pickerCellPaddingVertical:Er+Er/2,pickerCellBorderGap:2,pickerControlIconSize:7,pickerControlIconBorderWidth:1.5,pickerDatePanelPaddingHorizontal:xr+Er/2}},Bd=cn=>({cellHoverBg:cn.controlItemBgHover,cellActiveWithRangeBg:cn.controlItemBgActive,cellHoverWithRangeBg:new Ll.C(cn.colorPrimary).lighten(35).toHexString(),cellRangeBorderColor:new Ll.C(cn.colorPrimary).lighten(20).toHexString(),cellBgDisabled:cn.colorBgContainerDisabled,timeColumnWidth:cn.controlHeightLG*1.4,timeColumnHeight:28*8,timeCellHeight:28,cellWidth:cn.controlHeightSM*1.5,cellHeight:cn.controlHeightSM,textHeight:cn.controlHeightLG,withoutTimeCellHeight:cn.controlHeightLG*1.65});var Iu=(0,_c.Z)("DatePicker",cn=>{const En=(0,Al.TS)((0,nh.e5)(cn),xu(cn));return[Ku(En),Ws(En),(0,yc.c)(cn,{focusElCls:`${cn.componentCls}-focused`})]},cn=>Object.assign(Object.assign(Object.assign({},(0,nh.TM)(cn)),Bd(cn)),{presetsWidth:120,presetsMaxWidth:200,zIndexPopup:cn.zIndexPopupBase+50}));function Eu(cn,En,Ln){return Ln!==void 0?Ln:En==="year"&&cn.lang.yearPlaceholder?cn.lang.yearPlaceholder:En==="quarter"&&cn.lang.quarterPlaceholder?cn.lang.quarterPlaceholder:En==="month"&&cn.lang.monthPlaceholder?cn.lang.monthPlaceholder:En==="week"&&cn.lang.weekPlaceholder?cn.lang.weekPlaceholder:En==="time"&&cn.timePickerLocale.placeholder?cn.timePickerLocale.placeholder:cn.lang.placeholder}function zc(cn,En,Ln){return Ln!==void 0?Ln:En==="year"&&cn.lang.yearPlaceholder?cn.lang.rangeYearPlaceholder:En==="quarter"&&cn.lang.quarterPlaceholder?cn.lang.rangeQuarterPlaceholder:En==="month"&&cn.lang.monthPlaceholder?cn.lang.rangeMonthPlaceholder:En==="week"&&cn.lang.weekPlaceholder?cn.lang.rangeWeekPlaceholder:En==="time"&&cn.timePickerLocale.placeholder?cn.timePickerLocale.rangePlaceholder:cn.lang.rangePlaceholder}function md(cn,En){const Ln={adjustX:1,adjustY:1};switch(En){case"bottomLeft":return{points:["tl","bl"],offset:[0,4],overflow:Ln};case"bottomRight":return{points:["tr","br"],offset:[0,4],overflow:Ln};case"topLeft":return{points:["bl","tl"],offset:[0,-4],overflow:Ln};case"topRight":return{points:["br","tr"],offset:[0,-4],overflow:Ln};default:return{points:cn==="rtl"?["tr","br"]:["tl","bl"],offset:[0,4],overflow:Ln}}}function ig(cn){return cn?Array.isArray(cn)?cn:[cn]:[]}function Ta(cn){const{format:En,picker:Ln,showHour:Er,showMinute:xr,showSecond:Yr,use12Hours:$r}=cn,Ei=ig(En)[0],bi=Object.assign({},cn);return En&&Array.isArray(En)&&(bi.format=Ei),Ei&&typeof Ei=="string"&&(!Ei.includes("s")&&Yr===void 0&&(bi.showSecond=!1),!Ei.includes("m")&&xr===void 0&&(bi.showMinute=!1),!Ei.includes("H")&&!Ei.includes("h")&&!Ei.includes("K")&&!Ei.includes("k")&&Er===void 0&&(bi.showHour=!1),(Ei.includes("a")||Ei.includes("A"))&&$r===void 0&&(bi.use12Hours=!0)),Ln==="time"?bi:(typeof Ei=="function"&&delete bi.format,{showTime:bi})}function mh(cn,En,Ln){if(cn===!1)return!1;const Er={clearIcon:En!=null?En:Ln};return typeof cn=="object"?Object.assign(Object.assign({},Er),cn):Er}var cr=Be(3113);function Ci(cn){return Se.createElement(cr.ZP,Object.assign({size:"small",type:"primary"},cn))}var ag={button:Ci},oo=function(cn,En){var Ln={};for(var Er in cn)Object.prototype.hasOwnProperty.call(cn,Er)&&En.indexOf(Er)<0&&(Ln[Er]=cn[Er]);if(cn!=null&&typeof Object.getOwnPropertySymbols=="function")for(var xr=0,Er=Object.getOwnPropertySymbols(cn);xr{const{prefixCls:xr,getPopupContainer:Yr,className:$r,placement:Ei,size:bi,disabled:Zi,bordered:Oo=!0,placeholder:Hi,popupClassName:mo,dropdownClassName:Wi,status:Qo,clearIcon:Ai,allowClear:so,rootClassName:Ko}=Ln,za=oo(Ln,["prefixCls","getPopupContainer","className","placement","size","disabled","bordered","placeholder","popupClassName","dropdownClassName","status","clearIcon","allowClear","rootClassName"]),wa=Se.useRef(null),{getPrefixCls:Va,direction:Ka,getPopupContainer:Ba}=(0,Se.useContext)(Hc.E_),_o=Va("picker",xr),{compactSize:rs,compactItemClassnames:Zs}=(0,rg.ri)(_o,Ka),{format:dl,showTime:Nl,picker:Tl}=Ln,Dl=Va(),[vu,yl]=Iu(_o),il=Object.assign(Object.assign({},Nl?Ta(Object.assign({format:dl,picker:Tl},Nl)):{}),Tl==="time"?Ta(Object.assign(Object.assign({format:dl},Ln),{picker:Tl})):{}),Bl=(0,yf.Z)(pr=>{var kr;return(kr=bi!=null?bi:rs)!==null&&kr!==void 0?kr:pr}),Rl=Se.useContext(th.Z),mu=Zi!=null?Zi:Rl,Xl=(0,Se.useContext)(ng.aM),{hasFeedback:ra,status:Ou,feedbackIcon:tc}=Xl,Cn=Se.createElement(Se.Fragment,null,Tl==="time"?Se.createElement(vt,null):Se.createElement(tt,null),ra&&tc);(0,Se.useImperativeHandle)(Er,()=>({focus:()=>{var pr;return(pr=wa.current)===null||pr===void 0?void 0:pr.focus()},blur:()=>{var pr;return(pr=wa.current)===null||pr===void 0?void 0:pr.blur()}}));const[On]=(0,ic.Z)("Calendar",jf.Z),sr=Object.assign(Object.assign({},On),Ln.locale);return vu(Se.createElement(mc,Object.assign({separator:Se.createElement("span",{"aria-label":"to",className:`${_o}-separator`},Se.createElement(Zt,null)),disabled:mu,ref:wa,dropdownAlign:md(Ka,Ei),placeholder:zc(sr,Tl,Hi),suffixIcon:Cn,prevIcon:Se.createElement("span",{className:`${_o}-prev-icon`}),nextIcon:Se.createElement("span",{className:`${_o}-next-icon`}),superPrevIcon:Se.createElement("span",{className:`${_o}-super-prev-icon`}),superNextIcon:Se.createElement("span",{className:`${_o}-super-next-icon`}),transitionName:`${Dl}-slide-up`},za,il,{className:Ft()({[`${_o}-${Bl}`]:Bl,[`${_o}-borderless`]:!Oo},(0,kc.Z)(_o,(0,kc.F)(Ou,Qo),ra),yl,Zs,$r,Ko),locale:sr.lang,prefixCls:_o,getPopupContainer:Yr||Ba,generateConfig:cn,components:ag,direction:Ka,dropdownClassName:Ft()(yl,mo||Wi,Ko),allowClear:mh(so,Ai,Se.createElement(Tt.Z,null))})))})}var Qd=function(cn,En){var Ln={};for(var Er in cn)Object.prototype.hasOwnProperty.call(cn,Er)&&En.indexOf(Er)<0&&(Ln[Er]=cn[Er]);if(cn!=null&&typeof Object.getOwnPropertySymbols=="function")for(var xr=0,Er=Object.getOwnPropertySymbols(cn);xr{const{prefixCls:Qo,getPopupContainer:Ai,style:so,className:Ko,rootClassName:za,size:wa,bordered:Va=!0,placement:Ka,placeholder:Ba,popupClassName:_o,dropdownClassName:rs,disabled:Zs,status:dl,clearIcon:Nl,allowClear:Tl}=mo,Dl=Qd(mo,["prefixCls","getPopupContainer","style","className","rootClassName","size","bordered","placement","placeholder","popupClassName","dropdownClassName","disabled","status","clearIcon","allowClear"]),{getPrefixCls:vu,direction:yl,getPopupContainer:il,[Oo]:Bl}=(0,Se.useContext)(Hc.E_),Rl=vu("picker",Qo),{compactSize:mu,compactItemClassnames:Xl}=(0,rg.ri)(Rl,yl),ra=Se.useRef(null),{format:Ou,showTime:tc}=mo,[Cn,On]=Iu(Rl);(0,Se.useImperativeHandle)(Wi,()=>({focus:()=>{var io;return(io=ra.current)===null||io===void 0?void 0:io.focus()},blur:()=>{var io;return(io=ra.current)===null||io===void 0?void 0:io.blur()}}));const sr={showToday:!0};let pr={};bi&&(pr.picker=bi);const kr=bi||mo.picker;pr=Object.assign(Object.assign(Object.assign({},pr),tc?Ta(Object.assign({format:Ou,picker:kr},tc)):{}),kr==="time"?Ta(Object.assign(Object.assign({format:Ou},mo),{picker:kr})):{});const Lr=vu(),ai=(0,yf.Z)(io=>{var oa;return(oa=wa!=null?wa:mu)!==null&&oa!==void 0?oa:io}),ni=Se.useContext(th.Z),ri=Zs!=null?Zs:ni,Ni=(0,Se.useContext)(ng.aM),{hasFeedback:yi,status:Ii,feedbackIcon:co}=Ni,uo=Se.createElement(Se.Fragment,null,kr==="time"?Se.createElement(vt,null):Se.createElement(tt,null),yi&&co),[gi]=(0,ic.Z)("DatePicker",jf.Z),Ho=Object.assign(Object.assign({},gi),mo.locale);return Cn(Se.createElement(vh,Object.assign({ref:ra,placeholder:Eu(Ho,kr,Ba),suffixIcon:uo,dropdownAlign:md(yl,Ka),prevIcon:Se.createElement("span",{className:`${Rl}-prev-icon`}),nextIcon:Se.createElement("span",{className:`${Rl}-next-icon`}),superPrevIcon:Se.createElement("span",{className:`${Rl}-super-prev-icon`}),superNextIcon:Se.createElement("span",{className:`${Rl}-super-next-icon`}),transitionName:`${Lr}-slide-up`},sr,Dl,pr,{locale:Ho.lang,className:Ft()({[`${Rl}-${ai}`]:ai,[`${Rl}-borderless`]:!Va},(0,kc.Z)(Rl,(0,kc.F)(Ii,dl),yi),On,Xl,Bl==null?void 0:Bl.className,Ko,za),style:Object.assign(Object.assign({},Bl==null?void 0:Bl.style),so),prefixCls:Rl,getPopupContainer:Ai||il,generateConfig:cn,components:ag,direction:yl,disabled:ri,dropdownClassName:Ft()(On,za,_o||rs),allowClear:mh(Tl,Nl,Se.createElement(Tt.Z,null))})))});return Zi&&(Hi.displayName=Zi),Hi}const Ln=En(),Er=En("week","WeekPicker"),xr=En("month","MonthPicker"),Yr=En("year","YearPicker"),$r=En("time","TimePicker"),Ei=En("quarter","QuarterPicker");return{DatePicker:Ln,WeekPicker:Er,MonthPicker:xr,YearPicker:Yr,TimePicker:$r,QuarterPicker:Ei}}const Ug=null;function _u(cn){const{DatePicker:En,WeekPicker:Ln,MonthPicker:Er,YearPicker:xr,TimePicker:Yr,QuarterPicker:$r}=Op(cn),Ei=Xd(cn),bi=En;return bi.WeekPicker=Ln,bi.MonthPicker=Er,bi.YearPicker=xr,bi.RangePicker=Ei,bi.TimePicker=Yr,bi.QuarterPicker=$r,bi}var gs=_u;const hc=gs(xe);function zu(cn){const En=md(cn.direction,cn.placement);return En.overflow.adjustY=!1,En.overflow.adjustX=!1,Object.assign(Object.assign({},cn),{dropdownAlign:En})}const lu=(0,he.Z)(hc,"picker",null,zu);hc._InternalPanelDoNotUseOrYouWillBeFired=lu;const Us=(0,he.Z)(hc.RangePicker,"picker",null,zu);hc._InternalRangePanelDoNotUseOrYouWillBeFired=Us,hc.generatePicker=gs;var oc=hc},28103:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return Pe}});var He=Be(92310),et=Be.n(He),Ge=Be(59301),ke=Be(36355),Ze=Be(17313),Oe=Be(83116),we=Be(37613);const Te=je=>{const{componentCls:ye,sizePaddingEdgeHorizontal:ie,colorSplit:ae,lineWidth:fe,textPaddingInline:de,orientationMargin:ve,verticalMarginInline:xe}=je;return{[ye]:Object.assign(Object.assign({},(0,Ze.Wf)(je)),{borderBlockStart:`${fe}px solid ${ae}`,"&-vertical":{position:"relative",top:"-0.06em",display:"inline-block",height:"0.9em",marginInline:xe,marginBlock:0,verticalAlign:"middle",borderTop:0,borderInlineStart:`${fe}px solid ${ae}`},"&-horizontal":{display:"flex",clear:"both",width:"100%",minWidth:"100%",margin:`${je.dividerHorizontalGutterMargin}px 0`},[`&-horizontal${ye}-with-text`]:{display:"flex",alignItems:"center",margin:`${je.dividerHorizontalWithTextGutterMargin}px 0`,color:je.colorTextHeading,fontWeight:500,fontSize:je.fontSizeLG,whiteSpace:"nowrap",textAlign:"center",borderBlockStart:`0 ${ae}`,"&::before, &::after":{position:"relative",width:"50%",borderBlockStart:`${fe}px solid transparent`,borderBlockStartColor:"inherit",borderBlockEnd:0,transform:"translateY(50%)",content:"''"}},[`&-horizontal${ye}-with-text-left`]:{"&::before":{width:`${ve*100}%`},"&::after":{width:`${100-ve*100}%`}},[`&-horizontal${ye}-with-text-right`]:{"&::before":{width:`${100-ve*100}%`},"&::after":{width:`${ve*100}%`}},[`${ye}-inner-text`]:{display:"inline-block",paddingBlock:0,paddingInline:de},"&-dashed":{background:"none",borderColor:ae,borderStyle:"dashed",borderWidth:`${fe}px 0 0`},[`&-horizontal${ye}-with-text${ye}-dashed`]:{"&::before, &::after":{borderStyle:"dashed none none"}},[`&-vertical${ye}-dashed`]:{borderInlineStartWidth:fe,borderInlineEnd:0,borderBlockStart:0,borderBlockEnd:0},[`&-plain${ye}-with-text`]:{color:je.colorText,fontWeight:"normal",fontSize:je.fontSize},[`&-horizontal${ye}-with-text-left${ye}-no-default-orientation-margin-left`]:{"&::before":{width:0},"&::after":{width:"100%"},[`${ye}-inner-text`]:{paddingInlineStart:ie}},[`&-horizontal${ye}-with-text-right${ye}-no-default-orientation-margin-right`]:{"&::before":{width:"100%"},"&::after":{width:0},[`${ye}-inner-text`]:{paddingInlineEnd:ie}}})}};var Re=(0,Oe.Z)("Divider",je=>{const ye=(0,we.TS)(je,{dividerHorizontalWithTextGutterMargin:je.margin,dividerHorizontalGutterMargin:je.marginLG,sizePaddingEdgeHorizontal:0});return[Te(ye)]},je=>({textPaddingInline:"1em",orientationMargin:.05,verticalMarginInline:je.marginXS})),Ie=function(je,ye){var ie={};for(var ae in je)Object.prototype.hasOwnProperty.call(je,ae)&&ye.indexOf(ae)<0&&(ie[ae]=je[ae]);if(je!=null&&typeof Object.getOwnPropertySymbols=="function")for(var fe=0,ae=Object.getOwnPropertySymbols(je);fe{const{getPrefixCls:ye,direction:ie,divider:ae}=Ge.useContext(ke.E_),{prefixCls:fe,type:de="horizontal",orientation:ve="center",orientationMargin:xe,className:he,rootClassName:pe,children:Se,dashed:Ne,plain:ze,style:Ke}=je,Ve=Ie(je,["prefixCls","type","orientation","orientationMargin","className","rootClassName","children","dashed","plain","style"]),Je=ye("divider",fe),[tt,gt]=Re(Je),st=ve.length>0?`-${ve}`:ve,St=!!Se,At=ve==="left"&&xe!=null,vt=ve==="right"&&xe!=null,Tt=et()(Je,ae==null?void 0:ae.className,gt,`${Je}-${de}`,{[`${Je}-with-text`]:St,[`${Je}-with-text${st}`]:St,[`${Je}-dashed`]:!!Ne,[`${Je}-plain`]:!!ze,[`${Je}-rtl`]:ie==="rtl",[`${Je}-no-default-orientation-margin-left`]:At,[`${Je}-no-default-orientation-margin-right`]:vt},he,pe),bt=Ge.useMemo(()=>typeof xe=="number"?xe:/^\d+$/.test(xe)?Number(xe):xe,[xe]),Et=Object.assign(Object.assign({},At&&{marginLeft:bt}),vt&&{marginRight:bt});return tt(Ge.createElement("div",Object.assign({className:Tt,style:Object.assign(Object.assign({},ae==null?void 0:ae.style),Ke)},Ve,{role:"separator"}),Se&&de!=="vertical"&&Ge.createElement("span",{className:`${Je}-inner-text`,style:Et},Se)))}},43428:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return ln}});var He=Be(92310),et=Be.n(He),Ge=Be(33708),ke=Be(33606),Ze=Be(43403),Oe=Be(34280),we=Be(59301),Te=we.createContext(null),Re=we.createContext({}),Ie=Te,be=Be(400),Pe=Be(92413),je=Be(77900),ye=Be(10228),ie=Be(26112),ae=Be(70425),fe=function(Wn){var qt=Wn.prefixCls,xt=Wn.className,ft=Wn.style,Bt=Wn.children,Ot=Wn.containerRef,ut=Wn.id,It=Wn.onMouseEnter,nn=Wn.onMouseOver,Pt=Wn.onMouseLeave,Vt=Wn.onClick,on=Wn.onKeyDown,$t=Wn.onKeyUp,Jt={onMouseEnter:It,onMouseOver:nn,onMouseLeave:Pt,onClick:Vt,onKeyDown:on,onKeyUp:$t},xn=we.useContext(Re),Qn=xn.panel,rr=(0,ae.useComposeRef)(Qn,Ot);return we.createElement(we.Fragment,null,we.createElement("div",(0,Pe.Z)({id:ut,className:et()("".concat(qt,"-content"),xt),style:(0,Ge.Z)({},ft),"aria-modal":"true",role:"dialog",ref:rr},Jt),Bt))},de=fe,ve=Be(48736);function xe(Gn){return typeof Gn=="string"&&String(Number(Gn))===Gn?((0,ve.ZP)(!1,"Invalid value type of `width` or `height` which should be number type instead."),Number(Gn)):Gn}function he(Gn){warning(!("wrapperClassName"in Gn),"'wrapperClassName' is removed. Please use 'rootClassName' instead."),warning(canUseDom()||!Gn.open,"Drawer with 'open' in SSR is not work since no place to createPortal. Please move to 'useEffect' instead.")}var pe={width:0,height:0,overflow:"hidden",outline:"none",position:"absolute"};function Se(Gn,Wn){var qt,xt,ft,Bt,Ot=Gn.prefixCls,ut=Gn.open,It=Gn.placement,nn=Gn.inline,Pt=Gn.push,Vt=Gn.forceRender,on=Gn.autoFocus,$t=Gn.keyboard,Jt=Gn.rootClassName,xn=Gn.rootStyle,Qn=Gn.zIndex,rr=Gn.className,Jn=Gn.id,mr=Gn.style,Rr=Gn.motion,Tn=Gn.width,hr=Gn.height,or=Gn.children,yr=Gn.contentWrapperStyle,ti=Gn.mask,mi=Gn.maskClosable,di=Gn.maskMotion,Pi=Gn.maskClassName,vo=Gn.maskStyle,Co=Gn.afterOpenChange,To=Gn.onClose,xo=Gn.onMouseEnter,ma=Gn.onMouseOver,xa=Gn.onMouseLeave,_i=Gn.onClick,ko=Gn.onKeyDown,ro=Gn.onKeyUp,Rt=we.useRef(),Kr=we.useRef(),Bi=we.useRef();we.useImperativeHandle(Wn,function(){return Rt.current});var _r=function(Fn){var tn=Fn.keyCode,Vn=Fn.shiftKey;switch(tn){case ye.Z.TAB:{if(tn===ye.Z.TAB){if(!Vn&&document.activeElement===Bi.current){var tr;(tr=Kr.current)===null||tr===void 0||tr.focus({preventScroll:!0})}else if(Vn&&document.activeElement===Kr.current){var dr;(dr=Bi.current)===null||dr===void 0||dr.focus({preventScroll:!0})}}break}case ye.Z.ESC:{To&&$t&&(Fn.stopPropagation(),To(Fn));break}}};we.useEffect(function(){if(ut&&on){var zn;(zn=Rt.current)===null||zn===void 0||zn.focus({preventScroll:!0})}},[ut]);var pi=we.useState(!1),ii=(0,ke.Z)(pi,2),zi=ii[0],Jr=ii[1],Kt=we.useContext(Ie),Le;Pt===!1?Le={distance:0}:Pt===!0?Le={}:Le=Pt||{};var We=(qt=(xt=(ft=Le)===null||ft===void 0?void 0:ft.distance)!==null&&xt!==void 0?xt:Kt==null?void 0:Kt.pushDistance)!==null&&qt!==void 0?qt:180,De=we.useMemo(function(){return{pushDistance:We,push:function(){Jr(!0)},pull:function(){Jr(!1)}}},[We]);we.useEffect(function(){if(ut){var zn;Kt==null||(zn=Kt.push)===null||zn===void 0||zn.call(Kt)}else{var Fn;Kt==null||(Fn=Kt.pull)===null||Fn===void 0||Fn.call(Kt)}},[ut]),we.useEffect(function(){return function(){var zn;Kt==null||(zn=Kt.pull)===null||zn===void 0||zn.call(Kt)}},[]);var qe=ti&&we.createElement(je.default,(0,Pe.Z)({key:"mask"},di,{visible:ut}),function(zn,Fn){var tn=zn.className,Vn=zn.style;return we.createElement("div",{className:et()("".concat(Ot,"-mask"),tn,Pi),style:(0,Ge.Z)((0,Ge.Z)({},Vn),vo),onClick:mi&&ut?To:void 0,ref:Fn})}),dt=typeof Rr=="function"?Rr(It):Rr,Mt={};if(zi&&We)switch(It){case"top":Mt.transform="translateY(".concat(We,"px)");break;case"bottom":Mt.transform="translateY(".concat(-We,"px)");break;case"left":Mt.transform="translateX(".concat(We,"px)");break;default:Mt.transform="translateX(".concat(-We,"px)");break}It==="left"||It==="right"?Mt.width=xe(Tn):Mt.height=xe(hr);var wt={onMouseEnter:xo,onMouseOver:ma,onMouseLeave:xa,onClick:_i,onKeyDown:ko,onKeyUp:ro},rn=we.createElement(je.default,(0,Pe.Z)({key:"panel"},dt,{visible:ut,forceRender:Vt,onVisibleChanged:function(Fn){Co==null||Co(Fn)},removeOnLeave:!1,leavedClassName:"".concat(Ot,"-content-wrapper-hidden")}),function(zn,Fn){var tn=zn.className,Vn=zn.style;return we.createElement("div",(0,Pe.Z)({className:et()("".concat(Ot,"-content-wrapper"),tn),style:(0,Ge.Z)((0,Ge.Z)((0,Ge.Z)({},Mt),Vn),yr)},(0,ie.Z)(Gn,{data:!0})),we.createElement(de,(0,Pe.Z)({id:Jn,containerRef:Fn,prefixCls:Ot,className:rr,style:mr},wt),or))}),un=(0,Ge.Z)({},xn);return Qn&&(un.zIndex=Qn),we.createElement(Ie.Provider,{value:De},we.createElement("div",{className:et()(Ot,"".concat(Ot,"-").concat(It),Jt,(Bt={},(0,be.Z)(Bt,"".concat(Ot,"-open"),ut),(0,be.Z)(Bt,"".concat(Ot,"-inline"),nn),Bt)),style:un,tabIndex:-1,ref:Rt,onKeyDown:_r},qe,we.createElement("div",{tabIndex:0,ref:Kr,style:pe,"aria-hidden":"true","data-sentinel":"start"}),rn,we.createElement("div",{tabIndex:0,ref:Bi,style:pe,"aria-hidden":"true","data-sentinel":"end"})))}var Ne=we.forwardRef(Se),ze=Ne,Ke=function(Wn){var qt=Wn.open,xt=qt===void 0?!1:qt,ft=Wn.prefixCls,Bt=ft===void 0?"rc-drawer":ft,Ot=Wn.placement,ut=Ot===void 0?"right":Ot,It=Wn.autoFocus,nn=It===void 0?!0:It,Pt=Wn.keyboard,Vt=Pt===void 0?!0:Pt,on=Wn.width,$t=on===void 0?378:on,Jt=Wn.mask,xn=Jt===void 0?!0:Jt,Qn=Wn.maskClosable,rr=Qn===void 0?!0:Qn,Jn=Wn.getContainer,mr=Wn.forceRender,Rr=Wn.afterOpenChange,Tn=Wn.destroyOnClose,hr=Wn.onMouseEnter,or=Wn.onMouseOver,yr=Wn.onMouseLeave,ti=Wn.onClick,mi=Wn.onKeyDown,di=Wn.onKeyUp,Pi=Wn.panelRef,vo=we.useState(!1),Co=(0,ke.Z)(vo,2),To=Co[0],xo=Co[1],ma=we.useState(!1),xa=(0,ke.Z)(ma,2),_i=xa[0],ko=xa[1];(0,Oe.Z)(function(){ko(!0)},[]);var ro=_i?xt:!1,Rt=we.useRef(),Kr=we.useRef();(0,Oe.Z)(function(){ro&&(Kr.current=document.activeElement)},[ro]);var Bi=function(Jr){var Kt;if(xo(Jr),Rr==null||Rr(Jr),!Jr&&Kr.current&&!((Kt=Rt.current)!==null&&Kt!==void 0&&Kt.contains(Kr.current))){var Le;(Le=Kr.current)===null||Le===void 0||Le.focus({preventScroll:!0})}},_r=we.useMemo(function(){return{panel:Pi}},[Pi]);if(!mr&&!To&&!ro&&Tn)return null;var pi={onMouseEnter:hr,onMouseOver:or,onMouseLeave:yr,onClick:ti,onKeyDown:mi,onKeyUp:di},ii=(0,Ge.Z)((0,Ge.Z)({},Wn),{},{open:ro,prefixCls:Bt,placement:ut,autoFocus:nn,keyboard:Vt,width:$t,mask:xn,maskClosable:rr,inline:Jn===!1,afterOpenChange:Bi,ref:Rt},pi);return we.createElement(Re.Provider,{value:_r},we.createElement(Ze.Z,{open:ro||mr||To,autoDestroy:!1,getContainer:Jn,autoLock:xn&&(ro||To)},we.createElement(ze,ii)))},Ve=Ke,Je=Ve,tt=Be(62892),gt=Be(36355),st=Be(32441),St=Be(47729),vt=Gn=>{const{prefixCls:Wn,title:qt,footer:xt,extra:ft,closeIcon:Bt,closable:Ot,onClose:ut,headerStyle:It,drawerStyle:nn,bodyStyle:Pt,footerStyle:Vt,children:on}=Gn,$t=we.useCallback(Jn=>we.createElement("button",{type:"button",onClick:ut,"aria-label":"Close",className:`${Wn}-close`},Jn),[ut]),[Jt,xn]=(0,St.Z)(Ot,Bt,$t,void 0,!0),Qn=we.useMemo(()=>!qt&&!Jt?null:we.createElement("div",{style:It,className:et()(`${Wn}-header`,{[`${Wn}-header-close-only`]:Jt&&!qt&&!ft})},we.createElement("div",{className:`${Wn}-header-title`},xn,qt&&we.createElement("div",{className:`${Wn}-title`},qt)),ft&&we.createElement("div",{className:`${Wn}-extra`},ft)),[Jt,xn,ft,It,Wn,qt]),rr=we.useMemo(()=>{if(!xt)return null;const Jn=`${Wn}-footer`;return we.createElement("div",{className:Jn,style:Vt},xt)},[xt,Vt,Wn]);return we.createElement("div",{className:`${Wn}-wrapper-body`,style:nn},Qn,we.createElement("div",{className:`${Wn}-body`,style:Pt},on),rr)},Tt=Be(33234),bt=Be(83116),Et=Be(37613),Nt=Gn=>{const{componentCls:Wn,motionDurationSlow:qt}=Gn,xt={"&-enter, &-appear, &-leave":{"&-start":{transition:"none"},"&-active":{transition:`all ${qt}`}}};return{[Wn]:{[`${Wn}-mask-motion`]:{"&-enter, &-appear, &-leave":{"&-active":{transition:`all ${qt}`}},"&-enter, &-appear":{opacity:0,"&-active":{opacity:1}},"&-leave":{opacity:1,"&-active":{opacity:0}}},[`${Wn}-panel-motion`]:{"&-left":[xt,{"&-enter, &-appear":{"&-start":{transform:"translateX(-100%) !important"},"&-active":{transform:"translateX(0)"}},"&-leave":{transform:"translateX(0)","&-active":{transform:"translateX(-100%)"}}}],"&-right":[xt,{"&-enter, &-appear":{"&-start":{transform:"translateX(100%) !important"},"&-active":{transform:"translateX(0)"}},"&-leave":{transform:"translateX(0)","&-active":{transform:"translateX(100%)"}}}],"&-top":[xt,{"&-enter, &-appear":{"&-start":{transform:"translateY(-100%) !important"},"&-active":{transform:"translateY(0)"}},"&-leave":{transform:"translateY(0)","&-active":{transform:"translateY(-100%)"}}}],"&-bottom":[xt,{"&-enter, &-appear":{"&-start":{transform:"translateY(100%) !important"},"&-active":{transform:"translateY(0)"}},"&-leave":{transform:"translateY(0)","&-active":{transform:"translateY(100%)"}}}]}}}};const Zt=Gn=>{const{componentCls:Wn,zIndexPopup:qt,colorBgMask:xt,colorBgElevated:ft,motionDurationSlow:Bt,motionDurationMid:Ot,padding:ut,paddingLG:It,fontSizeLG:nn,lineHeightLG:Pt,lineWidth:Vt,lineType:on,colorSplit:$t,marginSM:Jt,colorIcon:xn,colorIconHover:Qn,colorText:rr,fontWeightStrong:Jn,footerPaddingBlock:mr,footerPaddingInline:Rr}=Gn,Tn=`${Wn}-content-wrapper`;return{[Wn]:{position:"fixed",inset:0,zIndex:qt,pointerEvents:"none","&-pure":{position:"relative",background:ft,[`&${Wn}-left`]:{boxShadow:Gn.boxShadowDrawerLeft},[`&${Wn}-right`]:{boxShadow:Gn.boxShadowDrawerRight},[`&${Wn}-top`]:{boxShadow:Gn.boxShadowDrawerUp},[`&${Wn}-bottom`]:{boxShadow:Gn.boxShadowDrawerDown}},"&-inline":{position:"absolute"},[`${Wn}-mask`]:{position:"absolute",inset:0,zIndex:qt,background:xt,pointerEvents:"auto"},[Tn]:{position:"absolute",zIndex:qt,maxWidth:"100vw",transition:`all ${Bt}`,"&-hidden":{display:"none"}},[`&-left > ${Tn}`]:{top:0,bottom:0,left:{_skip_check_:!0,value:0},boxShadow:Gn.boxShadowDrawerLeft},[`&-right > ${Tn}`]:{top:0,right:{_skip_check_:!0,value:0},bottom:0,boxShadow:Gn.boxShadowDrawerRight},[`&-top > ${Tn}`]:{top:0,insetInline:0,boxShadow:Gn.boxShadowDrawerUp},[`&-bottom > ${Tn}`]:{bottom:0,insetInline:0,boxShadow:Gn.boxShadowDrawerDown},[`${Wn}-content`]:{width:"100%",height:"100%",overflow:"auto",background:ft,pointerEvents:"auto"},[`${Wn}-wrapper-body`]:{display:"flex",flexDirection:"column",width:"100%",height:"100%"},[`${Wn}-header`]:{display:"flex",flex:0,alignItems:"center",padding:`${ut}px ${It}px`,fontSize:nn,lineHeight:Pt,borderBottom:`${Vt}px ${on} ${$t}`,"&-title":{display:"flex",flex:1,alignItems:"center",minWidth:0,minHeight:0}},[`${Wn}-extra`]:{flex:"none"},[`${Wn}-close`]:{display:"inline-block",marginInlineEnd:Jt,color:xn,fontWeight:Jn,fontSize:nn,fontStyle:"normal",lineHeight:1,textAlign:"center",textTransform:"none",textDecoration:"none",background:"transparent",border:0,outline:0,cursor:"pointer",transition:`color ${Ot}`,textRendering:"auto","&:focus, &:hover":{color:Qn,textDecoration:"none"}},[`${Wn}-title`]:{flex:1,margin:0,color:rr,fontWeight:Gn.fontWeightStrong,fontSize:nn,lineHeight:Pt},[`${Wn}-body`]:{flex:1,minWidth:0,minHeight:0,padding:It,overflow:"auto"},[`${Wn}-footer`]:{flexShrink:0,padding:`${mr}px ${Rr}px`,borderTop:`${Vt}px ${on} ${$t}`},"&-rtl":{direction:"rtl"}}}};var Ut=(0,bt.Z)("Drawer",Gn=>{const Wn=(0,Et.TS)(Gn,{});return[Zt(Wn),Nt(Wn)]},Gn=>({zIndexPopup:Gn.zIndexPopupBase,footerPaddingBlock:Gn.paddingXS,footerPaddingInline:Gn.padding})),Ft=Be(11575),Yt=function(Gn,Wn){var qt={};for(var xt in Gn)Object.prototype.hasOwnProperty.call(Gn,xt)&&Wn.indexOf(xt)<0&&(qt[xt]=Gn[xt]);if(Gn!=null&&typeof Object.getOwnPropertySymbols=="function")for(var ft=0,xt=Object.getOwnPropertySymbols(Gn);ft{var Wn;const{rootClassName:qt,width:xt,height:ft,size:Bt="default",mask:Ot=!0,push:ut=Dn,open:It,afterOpenChange:nn,onClose:Pt,prefixCls:Vt,getContainer:on,style:$t,className:Jt,visible:xn,afterVisibleChange:Qn}=Gn,rr=Yt(Gn,["rootClassName","width","height","size","mask","push","open","afterOpenChange","onClose","prefixCls","getContainer","style","className","visible","afterVisibleChange"]),{getPopupContainer:Jn,getPrefixCls:mr,direction:Rr,drawer:Tn}=we.useContext(gt.E_),hr=mr("drawer",Vt),[or,yr]=Ut(hr),ti=on===void 0&&Jn?()=>Jn(document.body):on,mi=et()({"no-mask":!Ot,[`${hr}-rtl`]:Rr==="rtl"},qt,yr),di=we.useMemo(()=>xt!=null?xt:Bt==="large"?736:378,[xt,Bt]),Pi=we.useMemo(()=>ft!=null?ft:Bt==="large"?736:378,[ft,Bt]),vo={motionName:(0,tt.m)(hr,"mask-motion"),motionAppear:!0,motionEnter:!0,motionLeave:!0,motionDeadline:500},Co=xo=>({motionName:(0,tt.m)(hr,`panel-motion-${xo}`),motionAppear:!0,motionEnter:!0,motionLeave:!0,motionDeadline:500}),To=(0,Ft.H)();return or(we.createElement(Tt.BR,null,we.createElement(st.Ux,{status:!0,override:!0},we.createElement(Je,Object.assign({prefixCls:hr,onClose:Pt,maskMotion:vo,motion:Co},rr,{open:It!=null?It:xn,mask:Ot,push:ut,width:di,height:Pi,style:Object.assign(Object.assign({},Tn==null?void 0:Tn.style),$t),className:et()(Tn==null?void 0:Tn.className,Jt),rootClassName:mi,getContainer:ti,afterOpenChange:nn!=null?nn:Qn,panelRef:To}),we.createElement(vt,Object.assign({prefixCls:hr},rr,{onClose:Pt}))))))},Zn=Gn=>{const{prefixCls:Wn,style:qt,className:xt,placement:ft="right"}=Gn,Bt=Yt(Gn,["prefixCls","style","className","placement"]),{getPrefixCls:Ot}=we.useContext(gt.E_),ut=Ot("drawer",Wn),[It,nn]=Ut(ut),Pt=et()(ut,`${ut}-pure`,`${ut}-${ft}`,nn,xt);return It(we.createElement("div",{className:Pt,style:qt},we.createElement(vt,Object.assign({prefixCls:ut},Bt))))};Rn._InternalPanelDoNotUseOrYouWillBeFired=Zn;var ln=Rn},91857:function(sn,an,Be){"use strict";var He=Be(59301),et=Be(38819),Ge=Be(92310),ke=Be.n(Ge),Ze=Be(31561),Oe=Be(70425),we=Be(18929),Te=Be(2738),Re=Be(79676),Ie=Be(53487),be=Be(92343),Pe=Be(36355),je=Be(20834),ye=Be(40875),ie=Be(88088),ae=Be(47211);const fe=null,de=pe=>{const{menu:Se,arrow:Ne,prefixCls:ze,children:Ke,trigger:Ve,disabled:Je,dropdownRender:tt,getPopupContainer:gt,overlayClassName:st,rootClassName:St,open:At,onOpenChange:vt,visible:Tt,onVisibleChange:bt,mouseEnterDelay:Et=.15,mouseLeaveDelay:lt=.1,autoAdjustOverflow:Nt=!0,placement:Zt="",overlay:Ut,transitionName:Ft}=pe,{getPopupContainer:Yt,getPrefixCls:dn,direction:Dn}=He.useContext(Pe.E_),Rn=He.useMemo(()=>{const Jt=dn();return Ft!==void 0?Ft:Zt.includes("top")?`${Jt}-slide-down`:`${Jt}-slide-up`},[dn,Zt,Ft]),Zn=He.useMemo(()=>Zt?Zt.includes("Center")?Zt.slice(0,Zt.indexOf("Center")):Zt:Dn==="rtl"?"bottomRight":"bottomLeft",[Zt,Dn]),ln=dn("dropdown",ze),[Gn,Wn]=(0,ae.Z)(ln),[,qt]=(0,ie.Z)(),xt=He.Children.only(Ke),ft=(0,be.Tm)(xt,{className:ke()(`${ln}-trigger`,{[`${ln}-rtl`]:Dn==="rtl"},xt.props.className),disabled:Je}),Bt=Je?[]:Ve;let Ot;Bt&&Bt.includes("contextMenu")&&(Ot=!0);const[ut,It]=(0,we.Z)(!1,{value:At!=null?At:Tt}),nn=(0,Oe.useEvent)(Jt=>{vt==null||vt(Jt),bt==null||bt(Jt),It(Jt)}),Pt=ke()(st,St,Wn,{[`${ln}-rtl`]:Dn==="rtl"}),Vt=(0,Re.Z)({arrowPointAtCenter:typeof Ne=="object"&&Ne.pointAtCenter,autoAdjustOverflow:Nt,offset:qt.marginXXS,arrowWidth:Ne?qt.sizePopupArrow:0,borderRadius:qt.borderRadius}),on=He.useCallback(()=>{It(!1)},[]),$t=()=>{let Jt;return Se!=null&&Se.items?Jt=He.createElement(je.default,Object.assign({},Se)):typeof Ut=="function"?Jt=Ut():Jt=Ut,tt&&(Jt=tt(Jt)),Jt=He.Children.only(typeof Jt=="string"?He.createElement("span",null,Jt):Jt),He.createElement(ye.J,{prefixCls:`${ln}-menu`,expandIcon:He.createElement("span",{className:`${ln}-menu-submenu-arrow`},He.createElement(et.Z,{className:`${ln}-menu-submenu-arrow-icon`})),mode:"vertical",selectable:!1,onClick:on,validator:xn=>{let{mode:Qn}=xn}},Jt)};return Gn(He.createElement(Ze.Z,Object.assign({alignPoint:Ot},(0,Te.Z)(pe,["rootClassName"]),{mouseEnterDelay:Et,mouseLeaveDelay:lt,visible:ut,builtinPlacements:Vt,arrow:!!Ne,overlayClassName:Pt,prefixCls:ln,getPopupContainer:gt||Yt,transitionName:Rn,trigger:Bt,overlay:$t,placement:Zn,onVisibleChange:nn}),ft))};function ve(pe){return Object.assign(Object.assign({},pe),{align:{overflow:{adjustX:!1,adjustY:!1}}})}const xe=(0,Ie.Z)(de,"dropdown",pe=>pe,ve),he=pe=>He.createElement(xe,Object.assign({},pe),He.createElement("span",null));de._InternalPanelDoNotUseOrYouWillBeFired=he,an.Z=de},38854:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return ie}});var He=Be(91857),et=Be(92310),Ge=Be.n(et),ke=Be(59301),Ze=Be(18785),Oe=Be(3113),we=Be(36355),Te=Be(81327),Re=Be(33234),Ie=Be(47211),be=function(ae,fe){var de={};for(var ve in ae)Object.prototype.hasOwnProperty.call(ae,ve)&&fe.indexOf(ve)<0&&(de[ve]=ae[ve]);if(ae!=null&&typeof Object.getOwnPropertySymbols=="function")for(var xe=0,ve=Object.getOwnPropertySymbols(ae);xe{const{getPopupContainer:fe,getPrefixCls:de,direction:ve}=ke.useContext(we.E_),{prefixCls:xe,type:he="default",danger:pe,disabled:Se,loading:Ne,onClick:ze,htmlType:Ke,children:Ve,className:Je,menu:tt,arrow:gt,autoFocus:st,overlay:St,trigger:At,align:vt,open:Tt,onOpenChange:bt,placement:Et,getPopupContainer:lt,href:Nt,icon:Zt=ke.createElement(Ze.Z,null),title:Ut,buttonsRender:Ft=$t=>$t,mouseEnterDelay:Yt,mouseLeaveDelay:dn,overlayClassName:Dn,overlayStyle:Rn,destroyPopupOnHide:Zn,dropdownRender:ln}=ae,Gn=be(ae,["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"]),Wn=de("dropdown",xe),qt=`${Wn}-button`,[xt,ft]=(0,Ie.Z)(Wn),Bt={menu:tt,arrow:gt,autoFocus:st,align:vt,disabled:Se,trigger:Se?[]:At,onOpenChange:bt,getPopupContainer:lt||fe,mouseEnterDelay:Yt,mouseLeaveDelay:dn,overlayClassName:Dn,overlayStyle:Rn,destroyPopupOnHide:Zn,dropdownRender:ln},{compactSize:Ot,compactItemClassnames:ut}=(0,Re.ri)(Wn,ve),It=Ge()(qt,ut,Je,ft);"overlay"in ae&&(Bt.overlay=St),"open"in ae&&(Bt.open=Tt),"placement"in ae?Bt.placement=Et:Bt.placement=ve==="rtl"?"bottomLeft":"bottomRight";const nn=ke.createElement(Oe.ZP,{type:he,danger:pe,disabled:Se,loading:Ne,onClick:ze,htmlType:Ke,href:Nt,title:Ut},Ve),Pt=ke.createElement(Oe.ZP,{type:he,danger:pe,icon:Zt}),[Vt,on]=Ft([nn,Pt]);return xt(ke.createElement(Te.Z.Compact,Object.assign({className:It,size:Ot,block:!0},Gn),Vt,ke.createElement(He.Z,Object.assign({},Bt),on)))};Pe.__ANT_BUTTON=!0;var je=Pe;const ye=He.Z;ye.Button=je;var ie=ye},47211:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return be}});var He=Be(17313),et=Be(13826),Ge=Be(92899),ke=Be(29878),Ze=Be(19447),Oe=Be(83116),we=Be(37613),Re=Pe=>{const{componentCls:je,menuCls:ye,colorError:ie,colorTextLightSolid:ae}=Pe,fe=`${ye}-item`;return{[`${je}, ${je}-menu-submenu`]:{[`${ye} ${fe}`]:{[`&${fe}-danger:not(${fe}-disabled)`]:{color:ie,"&:hover":{color:ae,backgroundColor:ie}}}}}};const Ie=Pe=>{const{componentCls:je,menuCls:ye,zIndexPopup:ie,dropdownArrowDistance:ae,sizePopupArrow:fe,antCls:de,iconCls:ve,motionDurationMid:xe,dropdownPaddingVertical:he,fontSize:pe,dropdownEdgeChildPadding:Se,colorTextDisabled:Ne,fontSizeIcon:ze,controlPaddingHorizontal:Ke,colorBgElevated:Ve}=Pe;return[{[je]:Object.assign(Object.assign({},(0,He.Wf)(Pe)),{position:"absolute",top:-9999,left:{_skip_check_:!0,value:-9999},zIndex:ie,display:"block","&::before":{position:"absolute",insetBlock:-ae+fe/2,zIndex:-9999,opacity:1e-4,content:'""'},[`&-trigger${de}-btn`]:{[`& > ${ve}-down, & > ${de}-btn-icon > ${ve}-down`]:{fontSize:ze}},[`${je}-wrap`]:{position:"relative",[`${de}-btn > ${ve}-down`]:{fontSize:ze},[`${ve}-down::before`]:{transition:`transform ${xe}`}},[`${je}-wrap-open`]:{[`${ve}-down::before`]:{transform:"rotate(180deg)"}},"\n &-hidden,\n &-menu-hidden,\n &-menu-submenu-hidden\n ":{display:"none"},[`&${de}-slide-down-enter${de}-slide-down-enter-active${je}-placement-bottomLeft, &${de}-slide-down-appear${de}-slide-down-appear-active${je}-placement-bottomLeft, &${de}-slide-down-enter${de}-slide-down-enter-active${je}-placement-bottom, &${de}-slide-down-appear${de}-slide-down-appear-active${je}-placement-bottom, &${de}-slide-down-enter${de}-slide-down-enter-active${je}-placement-bottomRight, &${de}-slide-down-appear${de}-slide-down-appear-active${je}-placement-bottomRight`]:{animationName:et.fJ},[`&${de}-slide-up-enter${de}-slide-up-enter-active${je}-placement-topLeft, &${de}-slide-up-appear${de}-slide-up-appear-active${je}-placement-topLeft, &${de}-slide-up-enter${de}-slide-up-enter-active${je}-placement-top, &${de}-slide-up-appear${de}-slide-up-appear-active${je}-placement-top, &${de}-slide-up-enter${de}-slide-up-enter-active${je}-placement-topRight, &${de}-slide-up-appear${de}-slide-up-appear-active${je}-placement-topRight`]:{animationName:et.Qt},[`&${de}-slide-down-leave${de}-slide-down-leave-active${je}-placement-bottomLeft, &${de}-slide-down-leave${de}-slide-down-leave-active${je}-placement-bottom, &${de}-slide-down-leave${de}-slide-down-leave-active${je}-placement-bottomRight`]:{animationName:et.Uw},[`&${de}-slide-up-leave${de}-slide-up-leave-active${je}-placement-topLeft, &${de}-slide-up-leave${de}-slide-up-leave-active${je}-placement-top, &${de}-slide-up-leave${de}-slide-up-leave-active${je}-placement-topRight`]:{animationName:et.ly}})},(0,Ze.ZP)(Pe,{colorBg:Ve,limitVerticalRadius:!0,arrowPlacement:{top:!0,bottom:!0}}),{[`${je} ${ye}`]:{position:"relative",margin:0},[`${ye}-submenu-popup`]:{position:"absolute",zIndex:ie,background:"transparent",boxShadow:"none",transformOrigin:"0 0","ul, li":{listStyle:"none",margin:0}},[`${je}, ${je}-menu-submenu`]:{[ye]:Object.assign(Object.assign({padding:Se,listStyleType:"none",backgroundColor:Ve,backgroundClip:"padding-box",borderRadius:Pe.borderRadiusLG,outline:"none",boxShadow:Pe.boxShadowSecondary},(0,He.Qy)(Pe)),{[`${ye}-item-group-title`]:{padding:`${he}px ${Ke}px`,color:Pe.colorTextDescription,transition:`all ${xe}`},[`${ye}-item`]:{position:"relative",display:"flex",alignItems:"center"},[`${ye}-item-icon`]:{minWidth:pe,marginInlineEnd:Pe.marginXS,fontSize:Pe.fontSizeSM},[`${ye}-title-content`]:{flex:"auto","> a":{color:"inherit",transition:`all ${xe}`,"&:hover":{color:"inherit"},"&::after":{position:"absolute",inset:0,content:'""'}}},[`${ye}-item, ${ye}-submenu-title`]:Object.assign(Object.assign({clear:"both",margin:0,padding:`${he}px ${Ke}px`,color:Pe.colorText,fontWeight:"normal",fontSize:pe,lineHeight:Pe.lineHeight,cursor:"pointer",transition:`all ${xe}`,borderRadius:Pe.borderRadiusSM,"&:hover, &-active":{backgroundColor:Pe.controlItemBgHover}},(0,He.Qy)(Pe)),{"&-selected":{color:Pe.colorPrimary,backgroundColor:Pe.controlItemBgActive,"&:hover, &-active":{backgroundColor:Pe.controlItemBgActiveHover}},"&-disabled":{color:Ne,cursor:"not-allowed","&:hover":{color:Ne,backgroundColor:Ve,cursor:"not-allowed"},a:{pointerEvents:"none"}},"&-divider":{height:1,margin:`${Pe.marginXXS}px 0`,overflow:"hidden",lineHeight:0,backgroundColor:Pe.colorSplit},[`${je}-menu-submenu-expand-icon`]:{position:"absolute",insetInlineEnd:Pe.paddingXS,[`${je}-menu-submenu-arrow-icon`]:{marginInlineEnd:"0 !important",color:Pe.colorTextDescription,fontSize:ze,fontStyle:"normal"}}}),[`${ye}-item-group-list`]:{margin:`0 ${Pe.marginXS}px`,padding:0,listStyle:"none"},[`${ye}-submenu-title`]:{paddingInlineEnd:Ke+Pe.fontSizeSM},[`${ye}-submenu-vertical`]:{position:"relative"},[`${ye}-submenu${ye}-submenu-disabled ${je}-menu-submenu-title`]:{[`&, ${je}-menu-submenu-arrow-icon`]:{color:Ne,backgroundColor:Ve,cursor:"not-allowed"}},[`${ye}-submenu-selected ${je}-menu-submenu-title`]:{color:Pe.colorPrimary}})}},[(0,et.oN)(Pe,"slide-up"),(0,et.oN)(Pe,"slide-down"),(0,Ge.Fm)(Pe,"move-up"),(0,Ge.Fm)(Pe,"move-down"),(0,ke._y)(Pe,"zoom-big")]]};var be=(0,Oe.Z)("Dropdown",(Pe,je)=>{let{rootPrefixCls:ye}=je;const{marginXXS:ie,sizePopupArrow:ae,controlHeight:fe,fontSize:de,lineHeight:ve,paddingXXS:xe,componentCls:he,borderRadiusLG:pe}=Pe,Se=(fe-de*ve)/2,{dropdownArrowOffset:Ne}=(0,Ze.fS)({contentRadius:pe}),ze=(0,we.TS)(Pe,{menuCls:`${he}-menu`,rootPrefixCls:ye,dropdownArrowDistance:ae/2+ie,dropdownArrowOffset:Ne,dropdownPaddingVertical:Se,dropdownEdgeChildPadding:xe});return[Ie(ze),Re(ze)]},Pe=>({zIndexPopup:Pe.zIndexPopupBase+50}))},64165:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return xe}});var He=Be(92310),et=Be.n(He),Ge=Be(59301),ke=Be(36355),Ze=Be(9763),Oe=Be(64993),we=Be(88088),Re=()=>{const[,he]=(0,we.Z)(),Se=new Oe.C(he.colorBgBase).toHsl().l<.5?{opacity:.65}:{};return Ge.createElement("svg",{style:Se,width:"184",height:"152",viewBox:"0 0 184 152",xmlns:"http://www.w3.org/2000/svg"},Ge.createElement("g",{fill:"none",fillRule:"evenodd"},Ge.createElement("g",{transform:"translate(24 31.67)"},Ge.createElement("ellipse",{fillOpacity:".8",fill:"#F5F5F7",cx:"67.797",cy:"106.89",rx:"67.797",ry:"12.668"}),Ge.createElement("path",{d:"M122.034 69.674L98.109 40.229c-1.148-1.386-2.826-2.225-4.593-2.225h-51.44c-1.766 0-3.444.839-4.592 2.225L13.56 69.674v15.383h108.475V69.674z",fill:"#AEB8C2"}),Ge.createElement("path",{d:"M101.537 86.214L80.63 61.102c-1.001-1.207-2.507-1.867-4.048-1.867H31.724c-1.54 0-3.047.66-4.048 1.867L6.769 86.214v13.792h94.768V86.214z",fill:"url(#linearGradient-1)",transform:"translate(13.56)"}),Ge.createElement("path",{d:"M33.83 0h67.933a4 4 0 0 1 4 4v93.344a4 4 0 0 1-4 4H33.83a4 4 0 0 1-4-4V4a4 4 0 0 1 4-4z",fill:"#F5F5F7"}),Ge.createElement("path",{d:"M42.678 9.953h50.237a2 2 0 0 1 2 2V36.91a2 2 0 0 1-2 2H42.678a2 2 0 0 1-2-2V11.953a2 2 0 0 1 2-2zM42.94 49.767h49.713a2.262 2.262 0 1 1 0 4.524H42.94a2.262 2.262 0 0 1 0-4.524zM42.94 61.53h49.713a2.262 2.262 0 1 1 0 4.525H42.94a2.262 2.262 0 0 1 0-4.525zM121.813 105.032c-.775 3.071-3.497 5.36-6.735 5.36H20.515c-3.238 0-5.96-2.29-6.734-5.36a7.309 7.309 0 0 1-.222-1.79V69.675h26.318c2.907 0 5.25 2.448 5.25 5.42v.04c0 2.971 2.37 5.37 5.277 5.37h34.785c2.907 0 5.277-2.421 5.277-5.393V75.1c0-2.972 2.343-5.426 5.25-5.426h26.318v33.569c0 .617-.077 1.216-.221 1.789z",fill:"#DCE0E6"})),Ge.createElement("path",{d:"M149.121 33.292l-6.83 2.65a1 1 0 0 1-1.317-1.23l1.937-6.207c-2.589-2.944-4.109-6.534-4.109-10.408C138.802 8.102 148.92 0 161.402 0 173.881 0 184 8.102 184 18.097c0 9.995-10.118 18.097-22.599 18.097-4.528 0-8.744-1.066-12.28-2.902z",fill:"#DCE0E6"}),Ge.createElement("g",{transform:"translate(149.65 15.383)",fill:"#FFF"},Ge.createElement("ellipse",{cx:"20.654",cy:"3.167",rx:"2.849",ry:"2.815"}),Ge.createElement("path",{d:"M5.698 5.63H0L2.898.704zM9.259.704h4.985V5.63H9.259z"}))))},be=()=>{const[,he]=(0,we.Z)(),{colorFill:pe,colorFillTertiary:Se,colorFillQuaternary:Ne,colorBgContainer:ze}=he,{borderColor:Ke,shadowColor:Ve,contentColor:Je}=(0,Ge.useMemo)(()=>({borderColor:new Oe.C(pe).onBackground(ze).toHexShortString(),shadowColor:new Oe.C(Se).onBackground(ze).toHexShortString(),contentColor:new Oe.C(Ne).onBackground(ze).toHexShortString()}),[pe,Se,Ne,ze]);return Ge.createElement("svg",{width:"64",height:"41",viewBox:"0 0 64 41",xmlns:"http://www.w3.org/2000/svg"},Ge.createElement("g",{transform:"translate(0 1)",fill:"none",fillRule:"evenodd"},Ge.createElement("ellipse",{fill:Ve,cx:"32",cy:"33",rx:"32",ry:"7"}),Ge.createElement("g",{fillRule:"nonzero",stroke:Ke},Ge.createElement("path",{d:"M55 12.76L44.854 1.258C44.367.474 43.656 0 42.907 0H21.093c-.749 0-1.46.474-1.947 1.257L9 12.761V22h46v-9.24z"}),Ge.createElement("path",{d:"M41.613 15.931c0-1.605.994-2.93 2.227-2.931H55v18.137C55 33.26 53.68 35 52.05 35h-40.1C10.32 35 9 33.259 9 31.137V13h11.16c1.233 0 2.227 1.323 2.227 2.928v.022c0 1.605 1.005 2.901 2.237 2.901h14.752c1.232 0 2.237-1.308 2.237-2.913v-.007z",fill:Je}))))},Pe=Be(83116),je=Be(37613);const ye=he=>{const{componentCls:pe,margin:Se,marginXS:Ne,marginXL:ze,fontSize:Ke,lineHeight:Ve}=he;return{[pe]:{marginInline:Ne,fontSize:Ke,lineHeight:Ve,textAlign:"center",[`${pe}-image`]:{height:he.emptyImgHeight,marginBottom:Ne,opacity:he.opacityImage,img:{height:"100%"},svg:{maxWidth:"100%",height:"100%",margin:"auto"}},[`${pe}-description`]:{color:he.colorText},[`${pe}-footer`]:{marginTop:Se},"&-normal":{marginBlock:ze,color:he.colorTextDisabled,[`${pe}-description`]:{color:he.colorTextDisabled},[`${pe}-image`]:{height:he.emptyImgHeightMD}},"&-small":{marginBlock:Ne,color:he.colorTextDisabled,[`${pe}-image`]:{height:he.emptyImgHeightSM}}}}};var ie=(0,Pe.Z)("Empty",he=>{const{componentCls:pe,controlHeightLG:Se}=he,Ne=(0,je.TS)(he,{emptyImgCls:`${pe}-img`,emptyImgHeight:Se*2.5,emptyImgHeightMD:Se,emptyImgHeightSM:Se*.875});return[ye(Ne)]}),ae=function(he,pe){var Se={};for(var Ne in he)Object.prototype.hasOwnProperty.call(he,Ne)&&pe.indexOf(Ne)<0&&(Se[Ne]=he[Ne]);if(he!=null&&typeof Object.getOwnPropertySymbols=="function")for(var ze=0,Ne=Object.getOwnPropertySymbols(he);ze{var{className:pe,rootClassName:Se,prefixCls:Ne,image:ze=fe,description:Ke,children:Ve,imageStyle:Je,style:tt}=he,gt=ae(he,["className","rootClassName","prefixCls","image","description","children","imageStyle","style"]);const{getPrefixCls:st,direction:St,empty:At}=Ge.useContext(ke.E_),vt=st("empty",Ne),[Tt,bt]=ie(vt),[Et]=(0,Ze.Z)("Empty"),lt=typeof Ke!="undefined"?Ke:Et==null?void 0:Et.description,Nt=typeof lt=="string"?lt:"empty";let Zt=null;return typeof ze=="string"?Zt=Ge.createElement("img",{alt:Nt,src:ze}):Zt=ze,Tt(Ge.createElement("div",Object.assign({className:et()(bt,vt,At==null?void 0:At.className,{[`${vt}-normal`]:ze===de,[`${vt}-rtl`]:St==="rtl"},pe,Se),style:Object.assign(Object.assign({},At==null?void 0:At.style),tt)},gt),Ge.createElement("div",{className:`${vt}-image`,style:Je},Zt),lt&&Ge.createElement("div",{className:`${vt}-description`},lt),Ve&&Ge.createElement("div",{className:`${vt}-footer`},Ve)))};ve.PRESENTED_IMAGE_DEFAULT=fe,ve.PRESENTED_IMAGE_SIMPLE=de;var xe=ve},78241:function(sn,an,Be){"use strict";Be.d(an,{default:function(){return We}});var He=Be(26407),et=Be(92310),Ge=Be.n(et),ke=Be(77900),Ze=Be(59301),Oe=Be(62892),we=Be(32441);function Te(De){const[qe,dt]=Ze.useState(De);return Ze.useEffect(()=>{const Mt=setTimeout(()=>{dt(De)},De.length?0:10);return()=>{clearTimeout(Mt)}},[De]),qe}var Re=Be(17313),Ie=Be(29878),be=Be(8378),Pe=Be(37613),je=Be(83116),ie=De=>{const{componentCls:qe}=De,dt=`${qe}-show-help`,Mt=`${qe}-show-help-item`;return{[dt]:{transition:`opacity ${De.motionDurationSlow} ${De.motionEaseInOut}`,"&-appear, &-enter":{opacity:0,"&-active":{opacity:1}},"&-leave":{opacity:1,"&-active":{opacity:0}},[Mt]:{overflow:"hidden",transition:`height ${De.motionDurationSlow} ${De.motionEaseInOut}, opacity ${De.motionDurationSlow} ${De.motionEaseInOut}, transform ${De.motionDurationSlow} ${De.motionEaseInOut} !important`,[`&${Mt}-appear, &${Mt}-enter`]:{transform:"translateY(-5px)",opacity:0,"&-active":{transform:"translateY(0)",opacity:1}},[`&${Mt}-leave-active`]:{transform:"translateY(-5px)"}}}}};const ae=De=>({legend:{display:"block",width:"100%",marginBottom:De.marginLG,padding:0,color:De.colorTextDescription,fontSize:De.fontSizeLG,lineHeight:"inherit",border:0,borderBottom:`${De.lineWidth}px ${De.lineType} ${De.colorBorder}`},label:{fontSize:De.fontSize},'input[type="search"]':{boxSizing:"border-box"},'input[type="radio"], input[type="checkbox"]':{lineHeight:"normal"},'input[type="file"]':{display:"block"},'input[type="range"]':{display:"block",width:"100%"},"select[multiple], select[size]":{height:"auto"},"input[type='file']:focus,\n input[type='radio']:focus,\n input[type='checkbox']:focus":{outline:0,boxShadow:`0 0 0 ${De.controlOutlineWidth}px ${De.controlOutline}`},output:{display:"block",paddingTop:15,color:De.colorText,fontSize:De.fontSize,lineHeight:De.lineHeight}}),fe=(De,qe)=>{const{formItemCls:dt}=De;return{[dt]:{[`${dt}-label > label`]:{height:qe},[`${dt}-control-input`]:{minHeight:qe}}}},de=De=>{const{componentCls:qe}=De;return{[De.componentCls]:Object.assign(Object.assign(Object.assign({},(0,Re.Wf)(De)),ae(De)),{[`${qe}-text`]:{display:"inline-block",paddingInlineEnd:De.paddingSM},"&-small":Object.assign({},fe(De,De.controlHeightSM)),"&-large":Object.assign({},fe(De,De.controlHeightLG))})}},ve=De=>{const{formItemCls:qe,iconCls:dt,componentCls:Mt,rootPrefixCls:wt,labelRequiredMarkColor:rn,labelColor:un,labelFontSize:zn,labelHeight:Fn,labelColonMarginInlineStart:tn,labelColonMarginInlineEnd:Vn,itemMarginBottom:tr}=De;return{[qe]:Object.assign(Object.assign({},(0,Re.Wf)(De)),{marginBottom:tr,verticalAlign:"top","&-with-help":{transition:"none"},[`&-hidden, &-hidden.${wt}-row`]:{display:"none"},"&-has-warning":{[`${qe}-split`]:{color:De.colorError}},"&-has-error":{[`${qe}-split`]:{color:De.colorWarning}},[`${qe}-label`]:{flexGrow:0,overflow:"hidden",whiteSpace:"nowrap",textAlign:"end",verticalAlign:"middle","&-left":{textAlign:"start"},"&-wrap":{overflow:"unset",lineHeight:`${De.lineHeight} - 0.25em`,whiteSpace:"unset"},"> label":{position:"relative",display:"inline-flex",alignItems:"center",maxWidth:"100%",height:Fn,color:un,fontSize:zn,[`> ${dt}`]:{fontSize:De.fontSize,verticalAlign:"top"},[`&${qe}-required:not(${qe}-required-mark-optional)::before`]:{display:"inline-block",marginInlineEnd:De.marginXXS,color:rn,fontSize:De.fontSize,fontFamily:"SimSun, sans-serif",lineHeight:1,content:'"*"',[`${Mt}-hide-required-mark &`]:{display:"none"}},[`${qe}-optional`]:{display:"inline-block",marginInlineStart:De.marginXXS,color:De.colorTextDescription,[`${Mt}-hide-required-mark &`]:{display:"none"}},[`${qe}-tooltip`]:{color:De.colorTextDescription,cursor:"help",writingMode:"horizontal-tb",marginInlineStart:De.marginXXS},"&::after":{content:'":"',position:"relative",marginBlock:0,marginInlineStart:tn,marginInlineEnd:Vn},[`&${qe}-no-colon::after`]:{content:'"\\a0"'}}},[`${qe}-control`]:{"--ant-display":"flex",flexDirection:"column",flexGrow:1,[`&:first-child:not([class^="'${wt}-col-'"]):not([class*="' ${wt}-col-'"])`]:{width:"100%"},"&-input":{position:"relative",display:"flex",alignItems:"center",minHeight:De.controlHeight,"&-content":{flex:"auto",maxWidth:"100%"}}},[qe]:{"&-explain, &-extra":{clear:"both",color:De.colorTextDescription,fontSize:De.fontSize,lineHeight:De.lineHeight},"&-explain-connected":{width:"100%"},"&-extra":{minHeight:De.controlHeightSM,transition:`color ${De.motionDurationMid} ${De.motionEaseOut}`},"&-explain":{"&-error":{color:De.colorError},"&-warning":{color:De.colorWarning}}},[`&-with-help ${qe}-explain`]:{height:"auto",opacity:1},[`${qe}-feedback-icon`]:{fontSize:De.fontSize,textAlign:"center",visibility:"visible",animationName:Ie.kr,animationDuration:De.motionDurationMid,animationTimingFunction:De.motionEaseOutBack,pointerEvents:"none","&-success":{color:De.colorSuccess},"&-error":{color:De.colorError},"&-warning":{color:De.colorWarning},"&-validating":{color:De.colorPrimary}}})}},xe=De=>{const{componentCls:qe,formItemCls:dt}=De;return{[`${qe}-horizontal`]:{[`${dt}-label`]:{flexGrow:0},[`${dt}-control`]:{flex:"1 1 0",minWidth:0},[`${dt}-label[class$='-24'], ${dt}-label[class*='-24 ']`]:{[`& + ${dt}-control`]:{minWidth:"unset"}}}}},he=De=>{const{componentCls:qe,formItemCls:dt}=De;return{[`${qe}-inline`]:{display:"flex",flexWrap:"wrap",[dt]:{flex:"none",marginInlineEnd:De.margin,marginBottom:0,"&-row":{flexWrap:"nowrap"},[`> ${dt}-label, > ${dt}-control`]:{display:"inline-block",verticalAlign:"top"},[`> ${dt}-label`]:{flex:"none"},[`${qe}-text`]:{display:"inline-block"},[`${dt}-has-feedback`]:{display:"inline-block"}}}}},pe=De=>({padding:De.verticalLabelPadding,margin:De.verticalLabelMargin,whiteSpace:"initial",textAlign:"start","> label":{margin:0,"&::after":{visibility:"hidden"}}}),Se=De=>{const{componentCls:qe,formItemCls:dt,rootPrefixCls:Mt}=De;return{[`${dt} ${dt}-label`]:pe(De),[qe]:{[dt]:{flexWrap:"wrap",[`${dt}-label, ${dt}-control`]:{[`&:not([class*=" ${Mt}-col-xs"])`]:{flex:"0 0 100%",maxWidth:"100%"}}}}}},Ne=De=>{const{componentCls:qe,formItemCls:dt,rootPrefixCls:Mt}=De;return{[`${qe}-vertical`]:{[dt]:{"&-row":{flexDirection:"column"},"&-label > label":{height:"auto"},[`${qe}-item-control`]:{width:"100%"}}},[`${qe}-vertical ${dt}-label, .${Mt}-col-24${dt}-label, .${Mt}-col-xl-24${dt}-label`]:pe(De),[`@media (max-width: ${De.screenXSMax}px)`]:[Se(De),{[qe]:{[`.${Mt}-col-xs-24${dt}-label`]:pe(De)}}],[`@media (max-width: ${De.screenSMMax}px)`]:{[qe]:{[`.${Mt}-col-sm-24${dt}-label`]:pe(De)}},[`@media (max-width: ${De.screenMDMax}px)`]:{[qe]:{[`.${Mt}-col-md-24${dt}-label`]:pe(De)}},[`@media (max-width: ${De.screenLGMax}px)`]:{[qe]:{[`.${Mt}-col-lg-24${dt}-label`]:pe(De)}}}},ze=(De,qe)=>(0,Pe.TS)(De,{formItemCls:`${De.componentCls}-item`,rootPrefixCls:qe});var Ke=(0,je.Z)("Form",(De,qe)=>{let{rootPrefixCls:dt}=qe;const Mt=ze(De,dt);return[de(Mt),ve(Mt),ie(Mt),xe(Mt),he(Mt),Ne(Mt),(0,be.Z)(Mt),Ie.kr]},De=>({labelRequiredMarkColor:De.colorError,labelColor:De.colorTextHeading,labelFontSize:De.fontSize,labelHeight:De.controlHeight,labelColonMarginInlineStart:De.marginXXS/2,labelColonMarginInlineEnd:De.marginXS,itemMarginBottom:De.marginLG,verticalLabelPadding:`0 0 ${De.paddingXS}px`,verticalLabelMargin:0}),{order:-1e3});const Ve=[];function Je(De,qe,dt){let Mt=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;return{key:typeof De=="string"?De:`${qe}-${Mt}`,error:De,errorStatus:dt}}var gt=De=>{let{help:qe,helpStatus:dt,errors:Mt=Ve,warnings:wt=Ve,className:rn,fieldId:un,onVisibleChanged:zn}=De;const{prefixCls:Fn}=Ze.useContext(we.Rk),tn=`${Fn}-item-explain`,[,Vn]=Ke(Fn),tr=(0,Ze.useMemo)(()=>(0,Oe.Z)(Fn),[Fn]),dr=Te(Mt),Bn=Te(wt),An=Ze.useMemo(()=>qe!=null?[Je(qe,"help",dt)]:[].concat((0,He.Z)(dr.map(($n,lr)=>Je($n,"error","error",lr))),(0,He.Z)(Bn.map(($n,lr)=>Je($n,"warning","warning",lr)))),[qe,dt,dr,Bn]),Nn={};return un&&(Nn.id=`${un}_help`),Ze.createElement(ke.default,{motionDeadline:tr.motionDeadline,motionName:`${Fn}-show-help`,visible:!!An.length,onVisibleChanged:zn},$n=>{const{className:lr,style:gr}=$n;return Ze.createElement("div",Object.assign({},Nn,{className:Ge()(tn,lr,rn,Vn),style:gr,role:"alert"}),Ze.createElement(ke.CSSMotionList,Object.assign({keys:An},(0,Oe.Z)(Fn),{motionName:`${Fn}-show-help-item`,component:!1}),Tr=>{const{key:ur,error:Br,errorStatus:jr,className:fr,style:qn}=Tr;return Ze.createElement("div",{key:ur,className:Ge()(fr,{[`${tn}-${jr}`]:jr}),style:qn},Br)}))})},st=Be(95013),St=Be(36355),At=Be(1684),vt=Be(52946),Tt=Be(19716),bt=Be(16722);const Et=["parentNode"],lt="form_item";function Nt(De){return De===void 0||De===!1?[]:Array.isArray(De)?De:[De]}function Zt(De,qe){if(!De.length)return;const dt=De.join("_");return qe?`${qe}_${dt}`:Et.includes(dt)?`${lt}_${dt}`:dt}function Ut(De,qe,dt,Mt,wt,rn){let un=Mt;return rn!==void 0?un=rn:dt.validating?un="validating":De.length?un="error":qe.length?un="warning":(dt.touched||wt&&dt.validated)&&(un="success"),un}function Ft(De){return Nt(De).join("_")}function Yt(De){const[qe]=(0,st.useForm)(),dt=Ze.useRef({}),Mt=Ze.useMemo(()=>De!=null?De:Object.assign(Object.assign({},qe),{__INTERNAL__:{itemRef:wt=>rn=>{const un=Ft(wt);rn?dt.current[un]=rn:delete dt.current[un]}},scrollToField:function(wt){let rn=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};const un=Nt(wt),zn=Zt(un,Mt.__INTERNAL__.name),Fn=zn?document.getElementById(zn):null;Fn&&(0,bt.Z)(Fn,Object.assign({scrollMode:"if-needed",block:"nearest"},rn))},getFieldInstance:wt=>{const rn=Ft(wt);return dt.current[rn]}}),[De,qe]);return[Mt]}var dn=Be(28726),Dn=function(De,qe){var dt={};for(var Mt in De)Object.prototype.hasOwnProperty.call(De,Mt)&&qe.indexOf(Mt)<0&&(dt[Mt]=De[Mt]);if(De!=null&&typeof Object.getOwnPropertySymbols=="function")for(var wt=0,Mt=Object.getOwnPropertySymbols(De);wt{const dt=Ze.useContext(At.Z),{getPrefixCls:Mt,direction:wt,form:rn}=Ze.useContext(St.E_),{prefixCls:un,className:zn,rootClassName:Fn,size:tn,disabled:Vn=dt,form:tr,colon:dr,labelAlign:Bn,labelWrap:An,labelCol:Nn,wrapperCol:$n,hideRequiredMark:lr,layout:gr="horizontal",scrollToFirstError:Tr,requiredMark:ur,onFinishFailed:Br,name:jr,style:fr,feedbackIcons:qn}=De,fi=Dn(De,["prefixCls","className","rootClassName","size","disabled","form","colon","labelAlign","labelWrap","labelCol","wrapperCol","hideRequiredMark","layout","scrollToFirstError","requiredMark","onFinishFailed","name","style","feedbackIcons"]),ui=(0,Tt.Z)(tn),$i=Ze.useContext(dn.Z),wr=(0,Ze.useMemo)(()=>ur!==void 0?ur:rn&&rn.requiredMark!==void 0?rn.requiredMark:!lr,[lr,ur,rn]),oi=dr!=null?dr:rn==null?void 0:rn.colon,ji=Mt("form",un),[Yi,Vi]=Ke(ji),to=Ge()(ji,`${ji}-${gr}`,{[`${ji}-hide-required-mark`]:wr===!1,[`${ji}-rtl`]:wt==="rtl",[`${ji}-${ui}`]:ui},Vi,rn==null?void 0:rn.className,zn,Fn),[bo]=Yt(tr),{__INTERNAL__:Lo}=bo;Lo.name=jr;const Gi=(0,Ze.useMemo)(()=>({name:jr,labelAlign:Bn,labelCol:Nn,labelWrap:An,wrapperCol:$n,vertical:gr==="vertical",colon:oi,requiredMark:wr,itemRef:Lo.itemRef,form:bo,feedbackIcons:qn}),[jr,Bn,Nn,$n,gr,oi,wr,bo,qn]);Ze.useImperativeHandle(qe,()=>bo);const Fo=(Pa,Xr)=>{if(Pa){let Ma={block:"nearest"};typeof Pa=="object"&&(Ma=Pa),bo.scrollToField(Xr,Ma)}},Zr=Pa=>{if(Br==null||Br(Pa),Pa.errorFields.length){const Xr=Pa.errorFields[0].name;if(Tr!==void 0){Fo(Tr,Xr);return}rn&&rn.scrollToFirstError!==void 0&&Fo(rn.scrollToFirstError,Xr)}};return Yi(Ze.createElement(At.n,{disabled:Vn},Ze.createElement(vt.q,{size:ui},Ze.createElement(we.RV,Object.assign({},{validateMessages:$i}),Ze.createElement(we.q3.Provider,{value:Gi},Ze.createElement(st.default,Object.assign({id:jr},fi,{name:jr,onFinishFailed:Zr,form:bo,style:Object.assign(Object.assign({},rn==null?void 0:rn.style),fr),className:to})))))))};var ln=Ze.forwardRef(Rn),Gn=Be(41799),Wn=Be(8654),qt=Be(92343),xt=Be(11592);function ft(De){if(typeof De=="function")return De;const qe=(0,xt.Z)(De);return qe.length<=1?qe[0]:qe}const Bt=()=>{const{status:De,errors:qe=[],warnings:dt=[]}=(0,Ze.useContext)(we.aM);return{status:De,errors:qe,warnings:dt}};Bt.Context=we.aM;var Ot=Bt,ut=Be(16089);function It(De){const[qe,dt]=Ze.useState(De),Mt=(0,Ze.useRef)(null),wt=(0,Ze.useRef)([]),rn=(0,Ze.useRef)(!1);Ze.useEffect(()=>(rn.current=!1,()=>{rn.current=!0,ut.Z.cancel(Mt.current),Mt.current=null}),[]);function un(zn){rn.current||(Mt.current===null&&(wt.current=[],Mt.current=(0,ut.Z)(()=>{Mt.current=null,dt(Fn=>{let tn=Fn;return wt.current.forEach(Vn=>{tn=Vn(tn)}),tn})})),wt.current.push(zn))}return[qe,un]}function nn(){const{itemRef:De}=Ze.useContext(we.q3),qe=Ze.useRef({});function dt(Mt,wt){const rn=wt&&typeof wt=="object"&&wt.ref,un=Mt.join("_");return(qe.current.name!==un||qe.current.originRef!==rn)&&(qe.current.name=un,qe.current.originRef=rn,qe.current.ref=(0,Wn.sQ)(De(Mt),rn)),qe.current.ref}return dt}var Pt=Be(29194),Vt=Be(34280),on=Be(2738),$t=Be(27382),Jt=Be(37028);const xn=De=>{const{formItemCls:qe}=De;return{"@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none)":{[`${qe}-control`]:{display:"flex"}}}};var Qn=(0,je.b)(["Form","item-item"],(De,qe)=>{let{rootPrefixCls:dt}=qe;const Mt=ze(De,dt);return[xn(Mt)]}),Jn=De=>{const{prefixCls:qe,status:dt,wrapperCol:Mt,children:wt,errors:rn,warnings:un,_internalItemRender:zn,extra:Fn,help:tn,fieldId:Vn,marginBottom:tr,onErrorVisibleChanged:dr}=De,Bn=`${qe}-item`,An=Ze.useContext(we.q3),Nn=Mt||An.wrapperCol||{},$n=Ge()(`${Bn}-control`,Nn.className),lr=Ze.useMemo(()=>Object.assign({},An),[An]);delete lr.labelCol,delete lr.wrapperCol;const gr=Ze.createElement("div",{className:`${Bn}-control-input`},Ze.createElement("div",{className:`${Bn}-control-input-content`},wt)),Tr=Ze.useMemo(()=>({prefixCls:qe,status:dt}),[qe,dt]),ur=tr!==null||rn.length||un.length?Ze.createElement("div",{style:{display:"flex",flexWrap:"nowrap"}},Ze.createElement(we.Rk.Provider,{value:Tr},Ze.createElement(gt,{fieldId:Vn,errors:rn,warnings:un,help:tn,helpStatus:dt,className:`${Bn}-explain-connected`,onVisibleChanged:dr})),!!tr&&Ze.createElement("div",{style:{width:0,height:tr}})):null,Br={};Vn&&(Br.id=`${Vn}_extra`);const jr=Fn?Ze.createElement("div",Object.assign({},Br,{className:`${Bn}-extra`}),Fn):null,fr=zn&&zn.mark==="pro_table_render"&&zn.render?zn.render(De,{input:gr,errorList:ur,extra:jr}):Ze.createElement(Ze.Fragment,null,gr,ur,jr);return Ze.createElement(we.q3.Provider,{value:lr},Ze.createElement(Jt.Z,Object.assign({},Nn,{className:$n}),fr),Ze.createElement(Qn,{prefixCls:qe}))},mr=Be(61485),Rr=Be(31724),Tn=Be(9763),hr=Be(6848),or=function(De,qe){var dt={};for(var Mt in De)Object.prototype.hasOwnProperty.call(De,Mt)&&qe.indexOf(Mt)<0&&(dt[Mt]=De[Mt]);if(De!=null&&typeof Object.getOwnPropertySymbols=="function")for(var wt=0,Mt=Object.getOwnPropertySymbols(De);wt{let{prefixCls:qe,label:dt,htmlFor:Mt,labelCol:wt,labelAlign:rn,colon:un,required:zn,requiredMark:Fn,tooltip:tn}=De;var Vn;const[tr]=(0,Tn.Z)("Form"),{vertical:dr,labelAlign:Bn,labelCol:An,labelWrap:Nn,colon:$n}=Ze.useContext(we.q3);if(!dt)return null;const lr=wt||An||{},gr=rn||Bn,Tr=`${qe}-item-label`,ur=Ge()(Tr,gr==="left"&&`${Tr}-left`,lr.className,{[`${Tr}-wrap`]:!!Nn});let Br=dt;const jr=un===!0||$n!==!1&&un!==!1;jr&&!dr&&typeof dt=="string"&&dt.trim()!==""&&(Br=dt.replace(/[:|:]\s*$/,""));const qn=yr(tn);if(qn){const{icon:wr=Ze.createElement(mr.Z,null)}=qn,oi=or(qn,["icon"]),ji=Ze.createElement(hr.Z,Object.assign({},oi),Ze.cloneElement(wr,{className:`${qe}-item-tooltip`,title:""}));Br=Ze.createElement(Ze.Fragment,null,Br,ji)}const fi=Fn==="optional",ui=typeof Fn=="function";ui?Br=Fn(Br,{required:!!zn}):fi&&!zn&&(Br=Ze.createElement(Ze.Fragment,null,Br,Ze.createElement("span",{className:`${qe}-item-optional`,title:""},(tr==null?void 0:tr.optional)||((Vn=Rr.Z.Form)===null||Vn===void 0?void 0:Vn.optional))));const $i=Ge()({[`${qe}-item-required`]:zn,[`${qe}-item-required-mark-optional`]:fi||ui,[`${qe}-item-no-colon`]:!jr});return Ze.createElement(Jt.Z,Object.assign({},lr,{className:ur}),Ze.createElement("label",{htmlFor:Mt,className:$i,title:typeof dt=="string"?dt:""},Br))},di=Be(29679),Pi=Be(19248),vo=Be(96512),Co=Be(58617);const To={success:di.Z,warning:vo.Z,error:Pi.Z,validating:Co.Z};function xo(De){let{children:qe,errors:dt,warnings:Mt,hasFeedback:wt,validateStatus:rn,prefixCls:un,meta:zn,noStyle:Fn}=De;const tn=`${un}-item`,{feedbackIcons:Vn}=Ze.useContext(we.q3),tr=Ut(dt,Mt,zn,null,!!wt,rn),{isFormItemInput:dr,status:Bn}=Ze.useContext(we.aM),An=Ze.useMemo(()=>{var Nn;let $n;if(wt){const Tr=wt!==!0&&wt.icons||Vn,ur=tr&&((Nn=Tr==null?void 0:Tr({status:tr,errors:dt,warnings:Mt}))===null||Nn===void 0?void 0:Nn[tr]),Br=tr&&To[tr];$n=ur!==!1&&Br?Ze.createElement("span",{className:Ge()(`${tn}-feedback-icon`,`${tn}-feedback-icon-${tr}`)},ur||Ze.createElement(Br,null)):null}let lr=!0,gr=tr||"";return Fn&&(lr=dr,gr=(tr!=null?tr:Bn)||""),{status:gr,errors:dt,warnings:Mt,hasFeedback:!!wt,feedbackIcon:$n,isFormItemInput:lr}},[tr,wt,Fn,dr,Bn]);return Ze.createElement(we.aM.Provider,{value:An},qe)}var ma=function(De,qe){var dt={};for(var Mt in De)Object.prototype.hasOwnProperty.call(De,Mt)&&qe.indexOf(Mt)<0&&(dt[Mt]=De[Mt]);if(De!=null&&typeof Object.getOwnPropertySymbols=="function")for(var wt=0,Mt=Object.getOwnPropertySymbols(De);wt{if(qn&&ur.current){const Vi=getComputedStyle(ur.current);$i(parseInt(Vi.marginBottom,10))}},[qn,fi]);const wr=Vi=>{Vi||$i(null)},ji=function(){let Vi=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;const to=Vi?Br:tn.errors,bo=Vi?jr:tn.warnings;return Ut(to,bo,tn,"",!!Vn,Fn)}(),Yi=Ge()(gr,dt,Mt,{[`${gr}-with-help`]:fr||Br.length||jr.length,[`${gr}-has-feedback`]:ji&&Vn,[`${gr}-has-success`]:ji==="success",[`${gr}-has-warning`]:ji==="warning",[`${gr}-has-error`]:ji==="error",[`${gr}-is-validating`]:ji==="validating",[`${gr}-hidden`]:tr});return Ze.createElement("div",{className:Yi,style:wt,ref:ur},Ze.createElement($t.Z,Object.assign({className:`${gr}-row`},(0,on.Z)(lr,["_internalItemRender","colon","dependencies","extra","fieldKey","getValueFromEvent","getValueProps","htmlFor","id","initialValue","isListField","label","labelAlign","labelCol","labelWrap","messageVariables","name","normalize","noStyle","preserve","requiredMark","rules","shouldUpdate","trigger","tooltip","validateFirst","validateTrigger","valuePropName","wrapperCol","validateDebounce"])),Ze.createElement(mi,Object.assign({htmlFor:Bn},De,{requiredMark:Tr,required:An!=null?An:Nn,prefixCls:qe})),Ze.createElement(Jn,Object.assign({},De,tn,{errors:Br,warnings:jr,prefixCls:qe,status:ji,help:rn,marginBottom:ui,onErrorVisibleChanged:wr}),Ze.createElement(we.qI.Provider,{value:$n},Ze.createElement(xo,{prefixCls:qe,meta:tn,errors:tn.errors,warnings:tn.warnings,hasFeedback:Vn,validateStatus:ji},dr)))),!!ui&&Ze.createElement("div",{className:`${gr}-margin-offset`,style:{marginBottom:-ui}}))}const _i="__SPLIT__",ko=null,ro=Ze.memo(De=>{let{children:qe}=De;return qe},(De,qe)=>De.value===qe.value&&De.update===qe.update&&De.childProps.length===qe.childProps.length&&De.childProps.every((dt,Mt)=>dt===qe.childProps[Mt]));function Rt(De){return De!=null}function Kr(){return{errors:[],warnings:[],touched:!1,validating:!1,name:[],validated:!1}}function Bi(De){const{name:qe,noStyle:dt,className:Mt,dependencies:wt,prefixCls:rn,shouldUpdate:un,rules:zn,children:Fn,required:tn,label:Vn,messageVariables:tr,trigger:dr="onChange",validateTrigger:Bn,hidden:An,help:Nn}=De,{getPrefixCls:$n}=Ze.useContext(St.E_),{name:lr}=Ze.useContext(we.q3),gr=ft(Fn),Tr=typeof gr=="function",ur=Ze.useContext(we.qI),{validateTrigger:Br}=Ze.useContext(st.FieldContext),jr=Bn!==void 0?Bn:Br,fr=Rt(qe),qn=$n("form",rn),[fi,ui]=Ke(qn),$i=Ze.useContext(st.ListContext),wr=Ze.useRef(),[oi,ji]=It({}),[Yi,Vi]=(0,Gn.Z)(()=>Kr()),to=Xr=>{const Ma=$i==null?void 0:$i.getKey(Xr.name);if(Vi(Xr.destroy?Kr():Xr,!0),dt&&Nn!==!1&&ur){let ts=Xr.name;if(Xr.destroy)ts=wr.current||ts;else if(Ma!==void 0){const[fa,ys]=Ma;ts=[fa].concat((0,He.Z)(ys)),wr.current=ts}ur(Xr,ts)}},bo=(Xr,Ma)=>{ji(ts=>{const fa=Object.assign({},ts),qa=[].concat((0,He.Z)(Xr.name.slice(0,-1)),(0,He.Z)(Ma)).join(_i);return Xr.destroy?delete fa[qa]:fa[qa]=Xr,fa})},[Lo,Gi]=Ze.useMemo(()=>{const Xr=(0,He.Z)(Yi.errors),Ma=(0,He.Z)(Yi.warnings);return Object.values(oi).forEach(ts=>{Xr.push.apply(Xr,(0,He.Z)(ts.errors||[])),Ma.push.apply(Ma,(0,He.Z)(ts.warnings||[]))}),[Xr,Ma]},[oi,Yi.errors,Yi.warnings]),Fo=nn();function Zr(Xr,Ma,ts){return dt&&!An?Ze.createElement(xo,{prefixCls:qn,hasFeedback:De.hasFeedback,validateStatus:De.validateStatus,meta:Yi,errors:Lo,warnings:Gi,noStyle:!0},Xr):Ze.createElement(xa,Object.assign({key:"row"},De,{className:Ge()(Mt,ui),prefixCls:qn,fieldId:Ma,isRequired:ts,errors:Lo,warnings:Gi,meta:Yi,onSubItemMetaChange:bo}),Xr)}if(!fr&&!Tr&&!wt)return fi(Zr(gr));let Pa={};return typeof Vn=="string"?Pa.label=Vn:qe&&(Pa.label=String(qe)),tr&&(Pa=Object.assign(Object.assign({},Pa),tr)),fi(Ze.createElement(st.Field,Object.assign({},De,{messageVariables:Pa,trigger:dr,validateTrigger:jr,onMetaChange:to}),(Xr,Ma,ts)=>{const fa=Nt(qe).length&&Ma?Ma.name:[],ys=Zt(fa,lr),qa=tn!==void 0?tn:!!(zn&&zn.some(Ca=>{if(Ca&&typeof Ca=="object"&&Ca.required&&!Ca.warningOnly)return!0;if(typeof Ca=="function"){const Za=Ca(ts);return Za&&Za.required&&!Za.warningOnly}return!1})),Go=Object.assign({},Xr);let li=null;if(Array.isArray(gr)&&fr)li=gr;else if(!(Tr&&(!(un||wt)||fr))){if(!(wt&&!Tr&&!fr))if((0,qt.l$)(gr)){const Ca=Object.assign(Object.assign({},gr.props),Go);if(Ca.id||(Ca.id=ys),Nn||Lo.length>0||Gi.length>0||De.extra){const fn=[];(Nn||Lo.length>0)&&fn.push(`${ys}_help`),De.extra&&fn.push(`${ys}_extra`),Ca["aria-describedby"]=fn.join(" ")}Lo.length>0&&(Ca["aria-invalid"]="true"),qa&&(Ca["aria-required"]="true"),(0,Wn.Yr)(gr)&&(Ca.ref=Fo(fa,gr)),new Set([].concat((0,He.Z)(Nt(dr)),(0,He.Z)(Nt(jr)))).forEach(fn=>{Ca[fn]=function(){for(var Yo,Ms,_a,Bs,Vs,ol=arguments.length,ka=new Array(ol),Aa=0;Aa{var{prefixCls:qe,children:dt}=De,Mt=ii(De,["prefixCls","children"]);const{getPrefixCls:wt}=Ze.useContext(St.E_),rn=wt("form",qe),un=Ze.useMemo(()=>({prefixCls:rn,status:"error"}),[rn]);return Ze.createElement(st.List,Object.assign({},Mt),(zn,Fn,tn)=>Ze.createElement(we.Rk.Provider,{value:un},dt(zn.map(Vn=>Object.assign(Object.assign({},Vn),{fieldKey:Vn.key})),Fn,{errors:tn.errors,warnings:tn.warnings})))};function Kt(){const{form:De}=(0,Ze.useContext)(we.q3);return De}const Le=ln;Le.Item=pi,Le.List=Jr,Le.ErrorList=gt,Le.useForm=Yt,Le.useFormInstance=Kt,Le.useWatch=st.useWatch,Le.Provider=we.RV,Le.create=()=>{};var We=Le},8628:function(sn,an,Be){"use strict";var He=Be(59301),et=Be(34280),Ge=Be(56762),ke=Be(69507);function Ze(){let Oe=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;const we=(0,He.useRef)({}),Te=(0,Ge.Z)(),Re=(0,ke.ZP)();return(0,et.Z)(()=>{const Ie=Re.subscribe(be=>{we.current=be,Oe&&Te()});return()=>Re.unsubscribe(Ie)},[]),we.current}an.Z=Ze},9432:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return ve},n:function(){return fe}});var He=Be(19248),et=Be(92310),Ge=Be.n(et),ke=Be(93681),Ze=Be(8654),Oe=Be(59301),we=Be(19080),Te=Be(36355),Re=Be(1684),Ie=Be(19716),be=Be(32441),Pe=Be(33234),je=Be(59412),ye=Be(9937);function ie(xe){return!!(xe.prefix||xe.suffix||xe.allowClear)}var ae=function(xe,he){var pe={};for(var Se in xe)Object.prototype.hasOwnProperty.call(xe,Se)&&he.indexOf(Se)<0&&(pe[Se]=xe[Se]);if(xe!=null&&typeof Object.getOwnPropertySymbols=="function")for(var Ne=0,Se=Object.getOwnPropertySymbols(xe);Ne{var pe;const{prefixCls:Se,bordered:Ne=!0,status:ze,size:Ke,disabled:Ve,onBlur:Je,onFocus:tt,suffix:gt,allowClear:st,addonAfter:St,addonBefore:At,className:vt,style:Tt,styles:bt,rootClassName:Et,onChange:lt,classNames:Nt}=xe,Zt=ae(xe,["prefixCls","bordered","status","size","disabled","onBlur","onFocus","suffix","allowClear","addonAfter","addonBefore","className","style","styles","rootClassName","onChange","classNames"]),{getPrefixCls:Ut,direction:Ft,input:Yt}=Oe.useContext(Te.E_),dn=Ut("input",Se),Dn=(0,Oe.useRef)(null),[Rn,Zn]=(0,ye.ZP)(dn),{compactSize:ln,compactItemClassnames:Gn}=(0,Pe.ri)(dn,Ft),Wn=(0,Ie.Z)(Qn=>{var rr;return(rr=Ke!=null?Ke:ln)!==null&&rr!==void 0?rr:Qn}),qt=Oe.useContext(Re.Z),xt=Ve!=null?Ve:qt,{status:ft,hasFeedback:Bt,feedbackIcon:Ot}=(0,Oe.useContext)(be.aM),ut=(0,we.F)(ft,ze),It=ie(xe)||!!Bt,nn=(0,Oe.useRef)(It);(0,Oe.useEffect)(()=>{var Qn;It&&nn.current,nn.current=It},[It]);const Pt=(0,je.Z)(Dn,!0),Vt=Qn=>{Pt(),Je==null||Je(Qn)},on=Qn=>{Pt(),tt==null||tt(Qn)},$t=Qn=>{Pt(),lt==null||lt(Qn)},Jt=(Bt||gt)&&Oe.createElement(Oe.Fragment,null,gt,Bt&&Ot);let xn;return typeof st=="object"&&(st!=null&&st.clearIcon)?xn=st:st&&(xn={clearIcon:Oe.createElement(He.Z,null)}),Rn(Oe.createElement(ke.default,Object.assign({ref:(0,Ze.sQ)(he,Dn),prefixCls:dn,autoComplete:Yt==null?void 0:Yt.autoComplete},Zt,{disabled:xt,onBlur:Vt,onFocus:on,style:Object.assign(Object.assign({},Yt==null?void 0:Yt.style),Tt),styles:Object.assign(Object.assign({},Yt==null?void 0:Yt.styles),bt),suffix:Jt,allowClear:xn,className:Ge()(vt,Et,Gn,Yt==null?void 0:Yt.className),onChange:$t,addonAfter:St&&Oe.createElement(Pe.BR,null,Oe.createElement(be.Ux,{override:!0,status:!0},St)),addonBefore:At&&Oe.createElement(Pe.BR,null,Oe.createElement(be.Ux,{override:!0,status:!0},At)),classNames:Object.assign(Object.assign(Object.assign({},Nt),Yt==null?void 0:Yt.classNames),{input:Ge()({[`${dn}-sm`]:Wn==="small",[`${dn}-lg`]:Wn==="large",[`${dn}-rtl`]:Ft==="rtl",[`${dn}-borderless`]:!Ne},!It&&(0,we.Z)(dn,ut),Nt==null?void 0:Nt.input,(pe=Yt==null?void 0:Yt.classNames)===null||pe===void 0?void 0:pe.input,Zn)}),classes:{affixWrapper:Ge()({[`${dn}-affix-wrapper-sm`]:Wn==="small",[`${dn}-affix-wrapper-lg`]:Wn==="large",[`${dn}-affix-wrapper-rtl`]:Ft==="rtl",[`${dn}-affix-wrapper-borderless`]:!Ne},(0,we.Z)(`${dn}-affix-wrapper`,ut,Bt),Zn),wrapper:Ge()({[`${dn}-group-rtl`]:Ft==="rtl"},Zn),group:Ge()({[`${dn}-group-wrapper-sm`]:Wn==="small",[`${dn}-group-wrapper-lg`]:Wn==="large",[`${dn}-group-wrapper-rtl`]:Ft==="rtl",[`${dn}-group-wrapper-disabled`]:xt},(0,we.Z)(`${dn}-group-wrapper`,ut,Bt),Zn)}})))})},1643:function(sn,an,Be){"use strict";var He=Be(19248),et=Be(92310),Ge=Be.n(et),ke=Be(9296),Ze=Be(59301),Oe=Be(19080),we=Be(36355),Te=Be(1684),Re=Be(19716),Ie=Be(32441),be=Be(9432),Pe=Be(9937),je=function(ie,ae){var fe={};for(var de in ie)Object.prototype.hasOwnProperty.call(ie,de)&&ae.indexOf(de)<0&&(fe[de]=ie[de]);if(ie!=null&&typeof Object.getOwnPropertySymbols=="function")for(var ve=0,de=Object.getOwnPropertySymbols(ie);ve{const{prefixCls:fe,bordered:de=!0,size:ve,disabled:xe,status:he,allowClear:pe,showCount:Se,classNames:Ne,rootClassName:ze,className:Ke}=ie,Ve=je(ie,["prefixCls","bordered","size","disabled","status","allowClear","showCount","classNames","rootClassName","className"]),{getPrefixCls:Je,direction:tt}=Ze.useContext(we.E_),gt=(0,Re.Z)(ve),st=Ze.useContext(Te.Z),St=xe!=null?xe:st,{status:At,hasFeedback:vt,feedbackIcon:Tt}=Ze.useContext(Ie.aM),bt=(0,Oe.F)(At,he),Et=Ze.useRef(null);Ze.useImperativeHandle(ae,()=>{var Ft;return{resizableTextArea:(Ft=Et.current)===null||Ft===void 0?void 0:Ft.resizableTextArea,focus:Yt=>{var dn,Dn;(0,be.n)((Dn=(dn=Et.current)===null||dn===void 0?void 0:dn.resizableTextArea)===null||Dn===void 0?void 0:Dn.textArea,Yt)},blur:()=>{var Yt;return(Yt=Et.current)===null||Yt===void 0?void 0:Yt.blur()}}});const lt=Je("input",fe);let Nt;typeof pe=="object"&&(pe!=null&&pe.clearIcon)?Nt=pe:pe&&(Nt={clearIcon:Ze.createElement(He.Z,null)});const[Zt,Ut]=(0,Pe.ZP)(lt);return Zt(Ze.createElement(ke.default,Object.assign({},Ve,{disabled:St,allowClear:Nt,className:Ge()(Ke,ze),classes:{affixWrapper:Ge()(`${lt}-textarea-affix-wrapper`,{[`${lt}-affix-wrapper-rtl`]:tt==="rtl",[`${lt}-affix-wrapper-borderless`]:!de,[`${lt}-affix-wrapper-sm`]:gt==="small",[`${lt}-affix-wrapper-lg`]:gt==="large",[`${lt}-textarea-show-count`]:Se},(0,Oe.Z)(`${lt}-affix-wrapper`,bt),Ut)},classNames:Object.assign(Object.assign({},Ne),{textarea:Ge()({[`${lt}-borderless`]:!de,[`${lt}-sm`]:gt==="small",[`${lt}-lg`]:gt==="large"},(0,Oe.Z)(lt,bt),Ut,Ne==null?void 0:Ne.textarea)}),prefixCls:lt,suffix:vt&&Ze.createElement("span",{className:`${lt}-textarea-suffix`},Tt),showCount:Se,ref:Et})))});an.Z=ye},59412:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return et}});var He=Be(59301);function et(Ge,ke){const Ze=(0,He.useRef)([]),Oe=()=>{Ze.current.push(setTimeout(()=>{var we,Te,Re,Ie;!((we=Ge.current)===null||we===void 0)&&we.input&&((Te=Ge.current)===null||Te===void 0?void 0:Te.input.getAttribute("type"))==="password"&&(!((Re=Ge.current)===null||Re===void 0)&&Re.input.hasAttribute("value"))&&((Ie=Ge.current)===null||Ie===void 0||Ie.input.removeAttribute("value"))}))};return(0,He.useEffect)(()=>(ke&&Oe(),()=>Ze.current.forEach(we=>{we&&clearTimeout(we)})),[]),Oe}},92832:function(sn,an,Be){"use strict";Be.d(an,{default:function(){return gt}});var He=Be(92310),et=Be.n(He),Ge=Be(59301),ke=Be(36355),Ze=Be(32441),Oe=Be(9937),Te=st=>{const{getPrefixCls:St,direction:At}=(0,Ge.useContext)(ke.E_),{prefixCls:vt,className:Tt}=st,bt=St("input-group",vt),Et=St("input"),[lt,Nt]=(0,Oe.ZP)(Et),Zt=et()(bt,{[`${bt}-lg`]:st.size==="large",[`${bt}-sm`]:st.size==="small",[`${bt}-compact`]:st.compact,[`${bt}-rtl`]:At==="rtl"},Nt,Tt),Ut=(0,Ge.useContext)(Ze.aM),Ft=(0,Ge.useMemo)(()=>Object.assign(Object.assign({},Ut),{isFormItemInput:!1}),[Ut]);return lt(Ge.createElement("span",{className:Zt,style:st.style,onMouseEnter:st.onMouseEnter,onMouseLeave:st.onMouseLeave,onFocus:st.onFocus,onBlur:st.onBlur},Ge.createElement(Ze.aM.Provider,{value:Ft},st.children)))},Re=Be(9432),Ie=Be(73331),be=Be(15277),Pe=Be(2738),je=Be(8654),ye=Be(59412),ie=function(st,St){var At={};for(var vt in st)Object.prototype.hasOwnProperty.call(st,vt)&&St.indexOf(vt)<0&&(At[vt]=st[vt]);if(st!=null&&typeof Object.getOwnPropertySymbols=="function")for(var Tt=0,vt=Object.getOwnPropertySymbols(st);Ttst?Ge.createElement(be.Z,null):Ge.createElement(Ie.Z,null),fe={click:"onClick",hover:"onMouseOver"};var ve=Ge.forwardRef((st,St)=>{const{visibilityToggle:At=!0}=st,vt=typeof At=="object"&&At.visible!==void 0,[Tt,bt]=(0,Ge.useState)(()=>vt?At.visible:!1),Et=(0,Ge.useRef)(null);Ge.useEffect(()=>{vt&&bt(At.visible)},[vt,At]);const lt=(0,ye.Z)(Et),Nt=()=>{const{disabled:xt}=st;xt||(Tt&<(),bt(ft=>{var Bt;const Ot=!ft;return typeof At=="object"&&((Bt=At.onVisibleChange)===null||Bt===void 0||Bt.call(At,Ot)),Ot}))},Zt=xt=>{const{action:ft="click",iconRender:Bt=ae}=st,Ot=fe[ft]||"",ut=Bt(Tt),It={[Ot]:Nt,className:`${xt}-icon`,key:"passwordIcon",onMouseDown:nn=>{nn.preventDefault()},onMouseUp:nn=>{nn.preventDefault()}};return Ge.cloneElement(Ge.isValidElement(ut)?ut:Ge.createElement("span",null,ut),It)},{className:Ut,prefixCls:Ft,inputPrefixCls:Yt,size:dn}=st,Dn=ie(st,["className","prefixCls","inputPrefixCls","size"]),{getPrefixCls:Rn}=Ge.useContext(ke.E_),Zn=Rn("input",Yt),ln=Rn("input-password",Ft),Gn=At&&Zt(ln),Wn=et()(ln,Ut,{[`${ln}-${dn}`]:!!dn}),qt=Object.assign(Object.assign({},(0,Pe.Z)(Dn,["suffix","iconRender","visibilityToggle"])),{type:Tt?"text":"password",className:Wn,prefixCls:Zn,suffix:Gn});return dn&&(qt.size=dn),Ge.createElement(Re.Z,Object.assign({ref:(0,je.sQ)(St,Et)},qt))}),xe=Be(47472),he=Be(92343),pe=Be(3113),Se=Be(19716),Ne=Be(33234),ze=function(st,St){var At={};for(var vt in st)Object.prototype.hasOwnProperty.call(st,vt)&&St.indexOf(vt)<0&&(At[vt]=st[vt]);if(st!=null&&typeof Object.getOwnPropertySymbols=="function")for(var Tt=0,vt=Object.getOwnPropertySymbols(st);Tt{const{prefixCls:At,inputPrefixCls:vt,className:Tt,size:bt,suffix:Et,enterButton:lt=!1,addonAfter:Nt,loading:Zt,disabled:Ut,onSearch:Ft,onChange:Yt,onCompositionStart:dn,onCompositionEnd:Dn}=st,Rn=ze(st,["prefixCls","inputPrefixCls","className","size","suffix","enterButton","addonAfter","loading","disabled","onSearch","onChange","onCompositionStart","onCompositionEnd"]),{getPrefixCls:Zn,direction:ln}=Ge.useContext(ke.E_),Gn=Ge.useRef(!1),Wn=Zn("input-search",At),qt=Zn("input",vt),{compactSize:xt}=(0,Ne.ri)(Wn,ln),ft=(0,Se.Z)(Jn=>{var mr;return(mr=bt!=null?bt:xt)!==null&&mr!==void 0?mr:Jn}),Bt=Ge.useRef(null),Ot=Jn=>{Jn&&Jn.target&&Jn.type==="click"&&Ft&&Ft(Jn.target.value,Jn,{source:"clear"}),Yt&&Yt(Jn)},ut=Jn=>{var mr;document.activeElement===((mr=Bt.current)===null||mr===void 0?void 0:mr.input)&&Jn.preventDefault()},It=Jn=>{var mr,Rr;Ft&&Ft((Rr=(mr=Bt.current)===null||mr===void 0?void 0:mr.input)===null||Rr===void 0?void 0:Rr.value,Jn,{source:"input"})},nn=Jn=>{Gn.current||Zt||It(Jn)},Pt=typeof lt=="boolean"?Ge.createElement(xe.Z,null):null,Vt=`${Wn}-button`;let on;const $t=lt||{},Jt=$t.type&&$t.type.__ANT_BUTTON===!0;Jt||$t.type==="button"?on=(0,he.Tm)($t,Object.assign({onMouseDown:ut,onClick:Jn=>{var mr,Rr;(Rr=(mr=$t==null?void 0:$t.props)===null||mr===void 0?void 0:mr.onClick)===null||Rr===void 0||Rr.call(mr,Jn),It(Jn)},key:"enterButton"},Jt?{className:Vt,size:ft}:{})):on=Ge.createElement(pe.ZP,{className:Vt,type:lt?"primary":void 0,size:ft,disabled:Ut,key:"enterButton",onMouseDown:ut,onClick:It,loading:Zt,icon:Pt},lt),Nt&&(on=[on,(0,he.Tm)(Nt,{key:"addonAfter"})]);const xn=et()(Wn,{[`${Wn}-rtl`]:ln==="rtl",[`${Wn}-${ft}`]:!!ft,[`${Wn}-with-button`]:!!lt},Tt),Qn=Jn=>{Gn.current=!0,dn==null||dn(Jn)},rr=Jn=>{Gn.current=!1,Dn==null||Dn(Jn)};return Ge.createElement(Re.Z,Object.assign({ref:(0,je.sQ)(Bt,St),onPressEnter:nn},Rn,{size:ft,onCompositionStart:Qn,onCompositionEnd:rr,prefixCls:qt,addonAfter:on,suffix:Et,onChange:Ot,className:xn,disabled:Ut}))}),Je=Be(1643);const tt=Re.Z;tt.Group=Te,tt.Search=Ve,tt.TextArea=Je.Z,tt.Password=ve;var gt=tt},45818:function(sn,an,Be){"use strict";Be.d(an,{D:function(){return xe},Z:function(){return Se}});var He=Be(92413),et=Be(59301),Ge={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"},ke=Ge,Ze=Be(7657),Oe=function(ze,Ke){return et.createElement(Ze.Z,(0,He.Z)({},ze,{ref:Ke,icon:ke}))},we=et.forwardRef(Oe),Te=we,Re=Be(33853),Ie=Be(38819),be=Be(92310),Pe=Be.n(be),je=Be(2738),ie=Ne=>!isNaN(parseFloat(Ne))&&isFinite(Ne),ae=Be(36355),fe=Be(84966),de=function(Ne,ze){var Ke={};for(var Ve in Ne)Object.prototype.hasOwnProperty.call(Ne,Ve)&&ze.indexOf(Ve)<0&&(Ke[Ve]=Ne[Ve]);if(Ne!=null&&typeof Object.getOwnPropertySymbols=="function")for(var Je=0,Ve=Object.getOwnPropertySymbols(Ne);Je{let Ne=0;return function(){let ze=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"";return Ne+=1,`${ze}${Ne}`}})();var Se=et.forwardRef((Ne,ze)=>{const{prefixCls:Ke,className:Ve,trigger:Je,children:tt,defaultCollapsed:gt=!1,theme:st="dark",style:St={},collapsible:At=!1,reverseArrow:vt=!1,width:Tt=200,collapsedWidth:bt=80,zeroWidthTriggerStyle:Et,breakpoint:lt,onCollapse:Nt,onBreakpoint:Zt}=Ne,Ut=de(Ne,["prefixCls","className","trigger","children","defaultCollapsed","theme","style","collapsible","reverseArrow","width","collapsedWidth","zeroWidthTriggerStyle","breakpoint","onCollapse","onBreakpoint"]),{siderHook:Ft}=(0,et.useContext)(fe.Gs),[Yt,dn]=(0,et.useState)("collapsed"in Ne?Ne.collapsed:gt),[Dn,Rn]=(0,et.useState)(!1);(0,et.useEffect)(()=>{"collapsed"in Ne&&dn(Ne.collapsed)},[Ne.collapsed]);const Zn=(ft,Bt)=>{"collapsed"in Ne||dn(ft),Nt==null||Nt(ft,Bt)},ln=(0,et.useRef)();ln.current=ft=>{Rn(ft.matches),Zt==null||Zt(ft.matches),Yt!==ft.matches&&Zn(ft.matches,"responsive")},(0,et.useEffect)(()=>{function ft(Ot){return ln.current(Ot)}let Bt;if(typeof window!="undefined"){const{matchMedia:Ot}=window;if(Ot&<&< in ve){Bt=Ot(`(max-width: ${ve[lt]})`);try{Bt.addEventListener("change",ft)}catch(ut){Bt.addListener(ft)}ft(Bt)}}return()=>{try{Bt==null||Bt.removeEventListener("change",ft)}catch(Ot){Bt==null||Bt.removeListener(ft)}}},[lt]),(0,et.useEffect)(()=>{const ft=he("ant-sider-");return Ft.addSider(ft),()=>Ft.removeSider(ft)},[]);const Gn=()=>{Zn(!Yt,"clickTrigger")},{getPrefixCls:Wn}=(0,et.useContext)(ae.E_),qt=()=>{const ft=Wn("layout-sider",Ke),Bt=(0,je.Z)(Ut,["collapsed"]),Ot=Yt?bt:Tt,ut=ie(Ot)?`${Ot}px`:String(Ot),It=parseFloat(String(bt||0))===0?et.createElement("span",{onClick:Gn,className:Pe()(`${ft}-zero-width-trigger`,`${ft}-zero-width-trigger-${vt?"right":"left"}`),style:Et},Je||et.createElement(Te,null)):null,Vt={expanded:vt?et.createElement(Ie.Z,null):et.createElement(Re.Z,null),collapsed:vt?et.createElement(Re.Z,null):et.createElement(Ie.Z,null)}[Yt?"collapsed":"expanded"],on=Je!==null?It||et.createElement("div",{className:`${ft}-trigger`,onClick:Gn,style:{width:ut}},Je||Vt):null,$t=Object.assign(Object.assign({},St),{flex:`0 0 ${ut}`,maxWidth:ut,minWidth:ut,width:ut}),Jt=Pe()(ft,`${ft}-${st}`,{[`${ft}-collapsed`]:!!Yt,[`${ft}-has-trigger`]:At&&Je!==null&&!It,[`${ft}-below`]:!!Dn,[`${ft}-zero-width`]:parseFloat(ut)===0},Ve);return et.createElement("aside",Object.assign({className:Jt},Bt,{style:$t,ref:ze}),et.createElement("div",{className:`${ft}-children`},tt),At||Dn&&It?on:null)},xt=et.useMemo(()=>({siderCollapsed:Yt}),[Yt]);return et.createElement(xe.Provider,{value:xt},qt())})},84966:function(sn,an,Be){"use strict";Be.d(an,{VY:function(){return xe},$_:function(){return ve},h4:function(){return de},Gs:function(){return je},ZP:function(){return he}});var He=Be(26407),et=Be(92310),Ge=Be.n(et),ke=Be(2738),Ze=Be(59301),Oe=Be(36355),we=Be(83116),Re=pe=>{const{componentCls:Se,bodyBg:Ne,lightSiderBg:ze,lightTriggerBg:Ke,lightTriggerColor:Ve}=pe;return{[`${Se}-sider-light`]:{background:ze,[`${Se}-sider-trigger`]:{color:Ve,background:Ke},[`${Se}-sider-zero-width-trigger`]:{color:Ve,background:Ke,border:`1px solid ${Ne}`,borderInlineStart:0}}}};const Ie=pe=>{const{antCls:Se,componentCls:Ne,colorText:ze,triggerColor:Ke,footerBg:Ve,triggerBg:Je,headerHeight:tt,headerPadding:gt,headerColor:st,footerPadding:St,triggerHeight:At,zeroTriggerHeight:vt,zeroTriggerWidth:Tt,motionDurationMid:bt,motionDurationSlow:Et,fontSize:lt,borderRadius:Nt,bodyBg:Zt,headerBg:Ut,siderBg:Ft}=pe;return{[Ne]:Object.assign(Object.assign({display:"flex",flex:"auto",flexDirection:"column",minHeight:0,background:Zt,"&, *":{boxSizing:"border-box"},[`&${Ne}-has-sider`]:{flexDirection:"row",[`> ${Ne}, > ${Ne}-content`]:{width:0}},[`${Ne}-header, &${Ne}-footer`]:{flex:"0 0 auto"},[`${Ne}-sider`]:{position:"relative",minWidth:0,background:Ft,transition:`all ${bt}, background 0s`,"&-children":{height:"100%",marginTop:-.1,paddingTop:.1,[`${Se}-menu${Se}-menu-inline-collapsed`]:{width:"auto"}},"&-has-trigger":{paddingBottom:At},"&-right":{order:1},"&-trigger":{position:"fixed",bottom:0,zIndex:1,height:At,color:Ke,lineHeight:`${At}px`,textAlign:"center",background:Je,cursor:"pointer",transition:`all ${bt}`},"&-zero-width":{"> *":{overflow:"hidden"},"&-trigger":{position:"absolute",top:tt,insetInlineEnd:-Tt,zIndex:1,width:Tt,height:vt,color:Ke,fontSize:pe.fontSizeXL,display:"flex",alignItems:"center",justifyContent:"center",background:Ft,borderStartStartRadius:0,borderStartEndRadius:Nt,borderEndEndRadius:Nt,borderEndStartRadius:0,cursor:"pointer",transition:`background ${Et} ease`,"&::after":{position:"absolute",inset:0,background:"transparent",transition:`all ${Et}`,content:'""'},"&:hover::after":{background:"rgba(255, 255, 255, 0.2)"},"&-right":{insetInlineStart:-Tt,borderStartStartRadius:Nt,borderStartEndRadius:0,borderEndEndRadius:0,borderEndStartRadius:Nt}}}}},Re(pe)),{"&-rtl":{direction:"rtl"}}),[`${Ne}-header`]:{height:tt,padding:gt,color:st,lineHeight:`${tt}px`,background:Ut,[`${Se}-menu`]:{lineHeight:"inherit"}},[`${Ne}-footer`]:{padding:St,color:ze,fontSize:lt,background:Ve},[`${Ne}-content`]:{flex:"auto",minHeight:0}}};var be=(0,we.Z)("Layout",pe=>[Ie(pe)],pe=>{const{colorBgLayout:Se,controlHeight:Ne,controlHeightLG:ze,colorText:Ke,controlHeightSM:Ve,marginXXS:Je,colorTextLightSolid:tt,colorBgContainer:gt}=pe,st=ze*1.25;return{colorBgHeader:"#001529",colorBgBody:Se,colorBgTrigger:"#002140",bodyBg:Se,headerBg:"#001529",headerHeight:Ne*2,headerPadding:`0 ${st}px`,headerColor:Ke,footerPadding:`${Ve}px ${st}px`,footerBg:Se,siderBg:"#001529",triggerHeight:ze+Je*2,triggerBg:"#002140",triggerColor:tt,zeroTriggerWidth:ze,zeroTriggerHeight:ze,lightSiderBg:gt,lightTriggerBg:gt,lightTriggerColor:Ke}},{deprecatedTokens:[["colorBgBody","bodyBg"],["colorBgHeader","headerBg"],["colorBgTrigger","triggerBg"]]}),Pe=function(pe,Se){var Ne={};for(var ze in pe)Object.prototype.hasOwnProperty.call(pe,ze)&&Se.indexOf(ze)<0&&(Ne[ze]=pe[ze]);if(pe!=null&&typeof Object.getOwnPropertySymbols=="function")for(var Ke=0,ze=Object.getOwnPropertySymbols(pe);Kenull,removeSider:()=>null}});function ye(pe){let{suffixCls:Se,tagName:Ne,displayName:ze}=pe;return Ke=>Ze.forwardRef((Je,tt)=>Ze.createElement(Ke,Object.assign({ref:tt,suffixCls:Se,tagName:Ne},Je)))}const ie=Ze.forwardRef((pe,Se)=>{const{prefixCls:Ne,suffixCls:ze,className:Ke,tagName:Ve}=pe,Je=Pe(pe,["prefixCls","suffixCls","className","tagName"]),{getPrefixCls:tt}=Ze.useContext(Oe.E_),gt=tt("layout",Ne),[st,St]=be(gt),At=ze?`${gt}-${ze}`:gt;return st(Ze.createElement(Ve,Object.assign({className:Ge()(Ne||At,Ke,St),ref:Se},Je)))}),ae=Ze.forwardRef((pe,Se)=>{const{direction:Ne}=Ze.useContext(Oe.E_),[ze,Ke]=Ze.useState([]),{prefixCls:Ve,className:Je,rootClassName:tt,children:gt,hasSider:st,tagName:St,style:At}=pe,vt=Pe(pe,["prefixCls","className","rootClassName","children","hasSider","tagName","style"]),Tt=(0,ke.Z)(vt,["suffixCls"]),{getPrefixCls:bt,layout:Et}=Ze.useContext(Oe.E_),lt=bt("layout",Ve),[Nt,Zt]=be(lt),Ut=Ge()(lt,{[`${lt}-has-sider`]:typeof st=="boolean"?st:ze.length>0,[`${lt}-rtl`]:Ne==="rtl"},Et==null?void 0:Et.className,Je,tt,Zt),Ft=Ze.useMemo(()=>({siderHook:{addSider:Yt=>{Ke(dn=>[].concat((0,He.Z)(dn),[Yt]))},removeSider:Yt=>{Ke(dn=>dn.filter(Dn=>Dn!==Yt))}}}),[]);return Nt(Ze.createElement(je.Provider,{value:Ft},Ze.createElement(St,Object.assign({ref:Se,className:Ut,style:Object.assign(Object.assign({},Et==null?void 0:Et.style),At)},Tt),gt)))}),fe=ye({tagName:"div",displayName:"Layout"})(ae),de=ye({suffixCls:"header",tagName:"header",displayName:"Header"})(ie),ve=ye({suffixCls:"footer",tagName:"footer",displayName:"Footer"})(ie),xe=ye({suffixCls:"content",tagName:"main",displayName:"Content"})(ie);var he=fe},40875:function(sn,an,Be){"use strict";Be.d(an,{J:function(){return Oe}});var He=Be(59301),et=Be(33234),Ge=Be(70425),ke=function(we,Te){var Re={};for(var Ie in we)Object.prototype.hasOwnProperty.call(we,Ie)&&Te.indexOf(Ie)<0&&(Re[Ie]=we[Ie]);if(we!=null&&typeof Object.getOwnPropertySymbols=="function")for(var be=0,Ie=Object.getOwnPropertySymbols(we);be{const{children:Re}=we,Ie=ke(we,["children"]),be=He.useContext(Ze),Pe=He.useMemo(()=>Object.assign(Object.assign({},be),Ie),[be,Ie.prefixCls,Ie.mode,Ie.selectable]);return He.createElement(Ze.Provider,{value:Pe},He.createElement(et.BR,null,(0,Ge.supportNodeRef)(Re)?He.cloneElement(Re,{ref:Te}):Re))});an.Z=Ze},20834:function(sn,an,Be){"use strict";Be.d(an,{default:function(){return xt}});var He=Be(15285),et=Be(59301),Ge=Be(45818),ke=Be(92310),Ze=Be.n(ke),Oe=Be(36355),we=function(ft,Bt){var Ot={};for(var ut in ft)Object.prototype.hasOwnProperty.call(ft,ut)&&Bt.indexOf(ut)<0&&(Ot[ut]=ft[ut]);if(ft!=null&&typeof Object.getOwnPropertySymbols=="function")for(var It=0,ut=Object.getOwnPropertySymbols(ft);It{const{prefixCls:Bt,className:Ot,dashed:ut}=ft,It=we(ft,["prefixCls","className","dashed"]),{getPrefixCls:nn}=et.useContext(Oe.E_),Pt=nn("menu",Bt),Vt=Ze()({[`${Pt}-item-divider-dashed`]:!!ut},Ot);return et.createElement(He.iz,Object.assign({className:Vt},It))},Ie=Be(11592),be=Be(2738),Pe=Be(6848),je=Be(92343),ie=(0,et.createContext)({prefixCls:"",firstLevel:!0,inlineCollapsed:!1}),fe=ft=>{var Bt;const{className:Ot,children:ut,icon:It,title:nn,danger:Pt}=ft,{prefixCls:Vt,firstLevel:on,direction:$t,disableMenuItemTitleTooltip:Jt,inlineCollapsed:xn}=et.useContext(ie),Qn=hr=>{const or=et.createElement("span",{className:`${Vt}-title-content`},ut);return(!It||(0,je.l$)(ut)&&ut.type==="span")&&ut&&hr&&on&&typeof ut=="string"?et.createElement("div",{className:`${Vt}-inline-collapsed-noicon`},ut.charAt(0)):or},{siderCollapsed:rr}=et.useContext(Ge.D);let Jn=nn;typeof nn=="undefined"?Jn=on?ut:"":nn===!1&&(Jn="");const mr={title:Jn};!rr&&!xn&&(mr.title=null,mr.open=!1);const Rr=(0,Ie.Z)(ut).length;let Tn=et.createElement(He.ck,Object.assign({},(0,be.Z)(ft,["title","icon","danger"]),{className:Ze()({[`${Vt}-item-danger`]:Pt,[`${Vt}-item-only-child`]:(It?Rr+1:Rr)===1},Ot),title:typeof nn=="string"?nn:void 0}),(0,je.Tm)(It,{className:Ze()((0,je.l$)(It)?(Bt=It.props)===null||Bt===void 0?void 0:Bt.className:"",`${Vt}-item-icon`)}),Qn(xn));return Jt||(Tn=et.createElement(Pe.Z,Object.assign({},mr,{placement:$t==="rtl"?"left":"right",overlayClassName:`${Vt}-inline-collapsed-tooltip`}),Tn)),Tn},ve=ft=>{var Bt;const{popupClassName:Ot,icon:ut,title:It,theme:nn}=ft,Pt=et.useContext(ie),{prefixCls:Vt,inlineCollapsed:on,theme:$t}=Pt,Jt=(0,He.Xl)();let xn;if(!ut)xn=on&&!Jt.length&&It&&typeof It=="string"?et.createElement("div",{className:`${Vt}-inline-collapsed-noicon`},It.charAt(0)):et.createElement("span",{className:`${Vt}-title-content`},It);else{const rr=(0,je.l$)(It)&&It.type==="span";xn=et.createElement(et.Fragment,null,(0,je.Tm)(ut,{className:Ze()((0,je.l$)(ut)?(Bt=ut.props)===null||Bt===void 0?void 0:Bt.className:"",`${Vt}-item-icon`)}),rr?It:et.createElement("span",{className:`${Vt}-title-content`},It))}const Qn=et.useMemo(()=>Object.assign(Object.assign({},Pt),{firstLevel:!1}),[Pt]);return et.createElement(ie.Provider,{value:Qn},et.createElement(He.Wd,Object.assign({},(0,be.Z)(ft,["icon"]),{title:xn,popupClassName:Ze()(Vt,Ot,`${Vt}-${nn||$t}`)})))},xe=Be(18785),he=Be(70425),pe=Be(62892),Se=Be(40875),Ne=function(ft,Bt){var Ot={};for(var ut in ft)Object.prototype.hasOwnProperty.call(ft,ut)&&Bt.indexOf(ut)<0&&(Ot[ut]=ft[ut]);if(ft!=null&&typeof Object.getOwnPropertySymbols=="function")for(var It=0,ut=Object.getOwnPropertySymbols(ft);It{if(Bt&&typeof Bt=="object"){const ut=Bt,{label:It,children:nn,key:Pt,type:Vt}=ut,on=Ne(ut,["label","children","key","type"]),$t=Pt!=null?Pt:`tmp-${Ot}`;return nn||Vt==="group"?Vt==="group"?et.createElement(He.BW,Object.assign({key:$t},on,{title:It}),ze(nn)):et.createElement(ve,Object.assign({key:$t},on,{title:It}),ze(nn)):Vt==="divider"?et.createElement(Re,Object.assign({key:$t},on)):et.createElement(fe,Object.assign({key:$t},on),It)}return null}).filter(Bt=>Bt)}function Ke(ft){return et.useMemo(()=>ft&&ze(ft),[ft])}var Ve=Be(64993),Je=Be(17313),tt=Be(8378),gt=Be(13826),st=Be(29878),St=Be(83116),At=Be(37613),Tt=ft=>{const{componentCls:Bt,motionDurationSlow:Ot,horizontalLineHeight:ut,colorSplit:It,lineWidth:nn,lineType:Pt,itemPaddingInline:Vt}=ft;return{[`${Bt}-horizontal`]:{lineHeight:ut,border:0,borderBottom:`${nn}px ${Pt} ${It}`,boxShadow:"none","&::after":{display:"block",clear:"both",height:0,content:'"\\20"'},[`${Bt}-item, ${Bt}-submenu`]:{position:"relative",display:"inline-block",verticalAlign:"bottom",paddingInline:Vt},[`> ${Bt}-item:hover, > ${Bt}-item-active, > ${Bt}-submenu ${Bt}-submenu-title:hover`]:{backgroundColor:"transparent"},[`${Bt}-item, ${Bt}-submenu-title`]:{transition:[`border-color ${Ot}`,`background ${Ot}`].join(",")},[`${Bt}-submenu-arrow`]:{display:"none"}}}},Et=ft=>{let{componentCls:Bt,menuArrowOffset:Ot}=ft;return{[`${Bt}-rtl`]:{direction:"rtl"},[`${Bt}-submenu-rtl`]:{transformOrigin:"100% 0"},[`${Bt}-rtl${Bt}-vertical, ${Bt}-submenu-rtl ${Bt}-vertical`]:{[`${Bt}-submenu-arrow`]:{"&::before":{transform:`rotate(-45deg) translateY(-${Ot})`},"&::after":{transform:`rotate(45deg) translateY(${Ot})`}}}}};const lt=ft=>Object.assign({},(0,Je.oN)(ft));var Zt=(ft,Bt)=>{const{componentCls:Ot,itemColor:ut,itemSelectedColor:It,groupTitleColor:nn,itemBg:Pt,subMenuItemBg:Vt,itemSelectedBg:on,activeBarHeight:$t,activeBarWidth:Jt,activeBarBorderWidth:xn,motionDurationSlow:Qn,motionEaseInOut:rr,motionEaseOut:Jn,itemPaddingInline:mr,motionDurationMid:Rr,itemHoverColor:Tn,lineType:hr,colorSplit:or,itemDisabledColor:yr,dangerItemColor:ti,dangerItemHoverColor:mi,dangerItemSelectedColor:di,dangerItemActiveBg:Pi,dangerItemSelectedBg:vo,itemHoverBg:Co,itemActiveBg:To,menuSubMenuBg:xo,horizontalItemSelectedColor:ma,horizontalItemSelectedBg:xa,horizontalItemBorderRadius:_i,horizontalItemHoverBg:ko,popupBg:ro}=ft;return{[`${Ot}-${Bt}, ${Ot}-${Bt} > ${Ot}`]:{color:ut,background:Pt,[`&${Ot}-root:focus-visible`]:Object.assign({},lt(ft)),[`${Ot}-item-group-title`]:{color:nn},[`${Ot}-submenu-selected`]:{[`> ${Ot}-submenu-title`]:{color:It}},[`${Ot}-item-disabled, ${Ot}-submenu-disabled`]:{color:`${yr} !important`},[`${Ot}-item:not(${Ot}-item-selected):not(${Ot}-submenu-selected)`]:{[`&:hover, > ${Ot}-submenu-title:hover`]:{color:Tn}},[`&:not(${Ot}-horizontal)`]:{[`${Ot}-item:not(${Ot}-item-selected)`]:{"&:hover":{backgroundColor:Co},"&:active":{backgroundColor:To}},[`${Ot}-submenu-title`]:{"&:hover":{backgroundColor:Co},"&:active":{backgroundColor:To}}},[`${Ot}-item-danger`]:{color:ti,[`&${Ot}-item:hover`]:{[`&:not(${Ot}-item-selected):not(${Ot}-submenu-selected)`]:{color:mi}},[`&${Ot}-item:active`]:{background:Pi}},[`${Ot}-item a`]:{"&, &:hover":{color:"inherit"}},[`${Ot}-item-selected`]:{color:It,[`&${Ot}-item-danger`]:{color:di},"a, a:hover":{color:"inherit"}},[`& ${Ot}-item-selected`]:{backgroundColor:on,[`&${Ot}-item-danger`]:{backgroundColor:vo}},[`${Ot}-item, ${Ot}-submenu-title`]:{[`&:not(${Ot}-item-disabled):focus-visible`]:Object.assign({},lt(ft))},[`&${Ot}-submenu > ${Ot}`]:{backgroundColor:xo},[`&${Ot}-popup > ${Ot}`]:{backgroundColor:ro},[`&${Ot}-horizontal`]:Object.assign(Object.assign({},Bt==="dark"?{borderBottom:0}:{}),{[`> ${Ot}-item, > ${Ot}-submenu`]:{top:xn,marginTop:-xn,marginBottom:0,borderRadius:_i,"&::after":{position:"absolute",insetInline:mr,bottom:0,borderBottom:`${$t}px solid transparent`,transition:`border-color ${Qn} ${rr}`,content:'""'},"&:hover, &-active, &-open":{background:ko,"&::after":{borderBottomWidth:$t,borderBottomColor:ma}},"&-selected":{color:ma,backgroundColor:xa,"&:hover":{backgroundColor:xa},"&::after":{borderBottomWidth:$t,borderBottomColor:ma}}}}),[`&${Ot}-root`]:{[`&${Ot}-inline, &${Ot}-vertical`]:{borderInlineEnd:`${xn}px ${hr} ${or}`}},[`&${Ot}-inline`]:{[`${Ot}-sub${Ot}-inline`]:{background:Vt},[`${Ot}-item, ${Ot}-submenu-title`]:xn&&Jt?{width:`calc(100% + ${xn}px)`}:{},[`${Ot}-item`]:{position:"relative","&::after":{position:"absolute",insetBlock:0,insetInlineEnd:0,borderInlineEnd:`${Jt}px solid ${It}`,transform:"scaleY(0.0001)",opacity:0,transition:[`transform ${Rr} ${Jn}`,`opacity ${Rr} ${Jn}`].join(","),content:'""'},[`&${Ot}-item-danger`]:{"&::after":{borderInlineEndColor:di}}},[`${Ot}-selected, ${Ot}-item-selected`]:{"&::after":{transform:"scaleY(1)",opacity:1,transition:[`transform ${Rr} ${rr}`,`opacity ${Rr} ${rr}`].join(",")}}}}}};const Ut=ft=>{const{componentCls:Bt,itemHeight:Ot,itemMarginInline:ut,padding:It,menuArrowSize:nn,marginXS:Pt,itemMarginBlock:Vt}=ft,on=It+nn+Pt;return{[`${Bt}-item`]:{position:"relative",overflow:"hidden"},[`${Bt}-item, ${Bt}-submenu-title`]:{height:Ot,lineHeight:`${Ot}px`,paddingInline:It,overflow:"hidden",textOverflow:"ellipsis",marginInline:ut,marginBlock:Vt,width:`calc(100% - ${ut*2}px)`},[`> ${Bt}-item, > ${Bt}-submenu > ${Bt}-submenu-title`]:{height:Ot,lineHeight:`${Ot}px`},[`${Bt}-item-group-list ${Bt}-submenu-title, ${Bt}-submenu-title`]:{paddingInlineEnd:on}}};var Yt=ft=>{const{componentCls:Bt,iconCls:Ot,itemHeight:ut,colorTextLightSolid:It,dropdownWidth:nn,controlHeightLG:Pt,motionDurationMid:Vt,motionEaseOut:on,paddingXL:$t,itemMarginInline:Jt,fontSizeLG:xn,motionDurationSlow:Qn,paddingXS:rr,boxShadowSecondary:Jn,collapsedWidth:mr,collapsedIconSize:Rr}=ft,Tn={height:ut,lineHeight:`${ut}px`,listStylePosition:"inside",listStyleType:"disc"};return[{[Bt]:{"&-inline, &-vertical":Object.assign({[`&${Bt}-root`]:{boxShadow:"none"}},Ut(ft))},[`${Bt}-submenu-popup`]:{[`${Bt}-vertical`]:Object.assign(Object.assign({},Ut(ft)),{boxShadow:Jn})}},{[`${Bt}-submenu-popup ${Bt}-vertical${Bt}-sub`]:{minWidth:nn,maxHeight:`calc(100vh - ${Pt*2.5}px)`,padding:"0",overflow:"hidden",borderInlineEnd:0,"&:not([class*='-active'])":{overflowX:"hidden",overflowY:"auto"}}},{[`${Bt}-inline`]:{width:"100%",[`&${Bt}-root`]:{[`${Bt}-item, ${Bt}-submenu-title`]:{display:"flex",alignItems:"center",transition:[`border-color ${Qn}`,`background ${Qn}`,`padding ${Vt} ${on}`].join(","),[`> ${Bt}-title-content`]:{flex:"auto",minWidth:0,overflow:"hidden",textOverflow:"ellipsis"},"> *":{flex:"none"}}},[`${Bt}-sub${Bt}-inline`]:{padding:0,border:0,borderRadius:0,boxShadow:"none",[`& > ${Bt}-submenu > ${Bt}-submenu-title`]:Tn,[`& ${Bt}-item-group-title`]:{paddingInlineStart:$t}},[`${Bt}-item`]:Tn}},{[`${Bt}-inline-collapsed`]:{width:mr,[`&${Bt}-root`]:{[`${Bt}-item, ${Bt}-submenu ${Bt}-submenu-title`]:{[`> ${Bt}-inline-collapsed-noicon`]:{fontSize:xn,textAlign:"center"}}},[`> ${Bt}-item, > ${Bt}-item-group > ${Bt}-item-group-list > ${Bt}-item, > ${Bt}-item-group > ${Bt}-item-group-list > ${Bt}-submenu > ${Bt}-submenu-title, > ${Bt}-submenu > ${Bt}-submenu-title`]:{insetInlineStart:0,paddingInline:`calc(50% - ${xn/2}px - ${Jt}px)`,textOverflow:"clip",[` ${Bt}-submenu-arrow, ${Bt}-submenu-expand-icon `]:{opacity:0},[`${Bt}-item-icon, ${Ot}`]:{margin:0,fontSize:Rr,lineHeight:`${ut}px`,"+ span":{display:"inline-block",opacity:0}}},[`${Bt}-item-icon, ${Ot}`]:{display:"inline-block"},"&-tooltip":{pointerEvents:"none",[`${Bt}-item-icon, ${Ot}`]:{display:"none"},"a, a:hover":{color:It}},[`${Bt}-item-group-title`]:Object.assign(Object.assign({},Je.vS),{paddingInline:rr})}}]};const dn=ft=>{const{componentCls:Bt,motionDurationSlow:Ot,motionDurationMid:ut,motionEaseInOut:It,motionEaseOut:nn,iconCls:Pt,iconSize:Vt,iconMarginInlineEnd:on}=ft;return{[`${Bt}-item, ${Bt}-submenu-title`]:{position:"relative",display:"block",margin:0,whiteSpace:"nowrap",cursor:"pointer",transition:[`border-color ${Ot}`,`background ${Ot}`,`padding ${Ot} ${It}`].join(","),[`${Bt}-item-icon, ${Pt}`]:{minWidth:Vt,fontSize:Vt,transition:[`font-size ${ut} ${nn}`,`margin ${Ot} ${It}`,`color ${Ot}`].join(","),"+ span":{marginInlineStart:on,opacity:1,transition:[`opacity ${Ot} ${It}`,`margin ${Ot}`,`color ${Ot}`].join(",")}},[`${Bt}-item-icon`]:Object.assign({},(0,Je.Ro)()),[`&${Bt}-item-only-child`]:{[`> ${Pt}, > ${Bt}-item-icon`]:{marginInlineEnd:0}}},[`${Bt}-item-disabled, ${Bt}-submenu-disabled`]:{background:"none !important",cursor:"not-allowed","&::after":{borderColor:"transparent !important"},a:{color:"inherit !important"},[`> ${Bt}-submenu-title`]:{color:"inherit !important",cursor:"not-allowed"}}}},Dn=ft=>{const{componentCls:Bt,motionDurationSlow:Ot,motionEaseInOut:ut,borderRadius:It,menuArrowSize:nn,menuArrowOffset:Pt}=ft;return{[`${Bt}-submenu`]:{"&-expand-icon, &-arrow":{position:"absolute",top:"50%",insetInlineEnd:ft.margin,width:nn,color:"currentcolor",transform:"translateY(-50%)",transition:`transform ${Ot} ${ut}, opacity ${Ot}`},"&-arrow":{"&::before, &::after":{position:"absolute",width:nn*.6,height:nn*.15,backgroundColor:"currentcolor",borderRadius:It,transition:[`background ${Ot} ${ut}`,`transform ${Ot} ${ut}`,`top ${Ot} ${ut}`,`color ${Ot} ${ut}`].join(","),content:'""'},"&::before":{transform:`rotate(45deg) translateY(-${Pt})`},"&::after":{transform:`rotate(-45deg) translateY(${Pt})`}}}}},Rn=ft=>{const{antCls:Bt,componentCls:Ot,fontSize:ut,motionDurationSlow:It,motionDurationMid:nn,motionEaseInOut:Pt,paddingXS:Vt,padding:on,colorSplit:$t,lineWidth:Jt,zIndexPopup:xn,borderRadiusLG:Qn,subMenuItemBorderRadius:rr,menuArrowSize:Jn,menuArrowOffset:mr,lineType:Rr,menuPanelMaskInset:Tn,groupTitleLineHeight:hr,groupTitleFontSize:or}=ft;return[{"":{[`${Ot}`]:Object.assign(Object.assign({},(0,Je.dF)()),{"&-hidden":{display:"none"}})},[`${Ot}-submenu-hidden`]:{display:"none"}},{[Ot]:Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},(0,Je.Wf)(ft)),(0,Je.dF)()),{marginBottom:0,paddingInlineStart:0,fontSize:ut,lineHeight:0,listStyle:"none",outline:"none",transition:`width ${It} cubic-bezier(0.2, 0, 0, 1) 0s`,"ul, ol":{margin:0,padding:0,listStyle:"none"},"&-overflow":{display:"flex",[`${Ot}-item`]:{flex:"none"}},[`${Ot}-item, ${Ot}-submenu, ${Ot}-submenu-title`]:{borderRadius:ft.itemBorderRadius},[`${Ot}-item-group-title`]:{padding:`${Vt}px ${on}px`,fontSize:or,lineHeight:hr,transition:`all ${It}`},[`&-horizontal ${Ot}-submenu`]:{transition:[`border-color ${It} ${Pt}`,`background ${It} ${Pt}`].join(",")},[`${Ot}-submenu, ${Ot}-submenu-inline`]:{transition:[`border-color ${It} ${Pt}`,`background ${It} ${Pt}`,`padding ${nn} ${Pt}`].join(",")},[`${Ot}-submenu ${Ot}-sub`]:{cursor:"initial",transition:[`background ${It} ${Pt}`,`padding ${It} ${Pt}`].join(",")},[`${Ot}-title-content`]:{transition:`color ${It}`},[`${Ot}-item a`]:{"&::before":{position:"absolute",inset:0,backgroundColor:"transparent",content:'""'}},[`${Ot}-item-divider`]:{overflow:"hidden",lineHeight:0,borderColor:$t,borderStyle:Rr,borderWidth:0,borderTopWidth:Jt,marginBlock:Jt,padding:0,"&-dashed":{borderStyle:"dashed"}}}),dn(ft)),{[`${Ot}-item-group`]:{[`${Ot}-item-group-list`]:{margin:0,padding:0,[`${Ot}-item, ${Ot}-submenu-title`]:{paddingInline:`${ut*2}px ${on}px`}}},"&-submenu":{"&-popup":{position:"absolute",zIndex:xn,borderRadius:Qn,boxShadow:"none",transformOrigin:"0 0",[`&${Ot}-submenu`]:{background:"transparent"},"&::before":{position:"absolute",inset:`${Tn}px 0 0`,zIndex:-1,width:"100%",height:"100%",opacity:0,content:'""'}},"&-placement-rightTop::before":{top:0,insetInlineStart:Tn},"\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:ft.paddingXS},"\n &-placement-rightTop,\n &-placement-rightBottom\n ":{paddingInlineStart:ft.paddingXS},"\n &-placement-topRight,\n &-placement-topLeft\n ":{paddingBottom:ft.paddingXS},"\n &-placement-bottomRight,\n &-placement-bottomLeft\n ":{paddingTop:ft.paddingXS},[`> ${Ot}`]:Object.assign(Object.assign(Object.assign({borderRadius:Qn},dn(ft)),Dn(ft)),{[`${Ot}-item, ${Ot}-submenu > ${Ot}-submenu-title`]:{borderRadius:rr},[`${Ot}-submenu-title::after`]:{transition:`transform ${It} ${Pt}`}})}}),Dn(ft)),{[`&-inline-collapsed ${Ot}-submenu-arrow, &-inline ${Ot}-submenu-arrow`]:{"&::before":{transform:`rotate(-45deg) translateX(${mr})`},"&::after":{transform:`rotate(45deg) translateX(-${mr})`}},[`${Ot}-submenu-open${Ot}-submenu-inline > ${Ot}-submenu-title > ${Ot}-submenu-arrow`]:{transform:`translateY(-${Jn*.2}px)`,"&::after":{transform:`rotate(-45deg) translateX(-${mr})`},"&::before":{transform:`rotate(45deg) translateX(${mr})`}}})},{[`${Bt}-layout-header`]:{[Ot]:{lineHeight:"inherit"}}}]};var Zn=(ft,Bt)=>(0,St.Z)("Menu",ut=>{if(Bt===!1)return[];const{colorBgElevated:It,colorPrimary:nn,colorTextLightSolid:Pt,controlHeightLG:Vt,fontSize:on,darkItemColor:$t,darkDangerItemColor:Jt,darkItemBg:xn,darkSubMenuItemBg:Qn,darkItemSelectedColor:rr,darkItemSelectedBg:Jn,darkDangerItemSelectedBg:mr,darkItemHoverBg:Rr,darkGroupTitleColor:Tn,darkItemHoverColor:hr,darkItemDisabledColor:or,darkDangerItemHoverColor:yr,darkDangerItemSelectedColor:ti,darkDangerItemActiveBg:mi}=ut,di=on/7*5,Pi=(0,At.TS)(ut,{menuArrowSize:di,menuHorizontalHeight:Vt*1.15,menuArrowOffset:`${di*.25}px`,menuPanelMaskInset:-7,menuSubMenuBg:It}),vo=(0,At.TS)(Pi,{itemColor:$t,itemHoverColor:hr,groupTitleColor:Tn,itemSelectedColor:rr,itemBg:xn,popupBg:xn,subMenuItemBg:Qn,itemActiveBg:"transparent",itemSelectedBg:Jn,activeBarHeight:0,activeBarBorderWidth:0,itemHoverBg:Rr,itemDisabledColor:or,dangerItemColor:Jt,dangerItemHoverColor:yr,dangerItemSelectedColor:ti,dangerItemActiveBg:mi,dangerItemSelectedBg:mr,menuSubMenuBg:Qn,horizontalItemSelectedColor:Pt,horizontalItemSelectedBg:nn});return[Rn(Pi),Tt(Pi),Yt(Pi),Zt(Pi,"light"),Zt(vo,"dark"),Et(Pi),(0,tt.Z)(Pi),(0,gt.oN)(Pi,"slide-up"),(0,gt.oN)(Pi,"slide-down"),(0,st._y)(Pi,"zoom-big")]},ut=>{const{colorPrimary:It,colorError:nn,colorTextDisabled:Pt,colorErrorBg:Vt,colorText:on,colorTextDescription:$t,colorBgContainer:Jt,colorFillAlter:xn,colorFillContent:Qn,lineWidth:rr,lineWidthBold:Jn,controlItemBgActive:mr,colorBgTextHover:Rr,controlHeightLG:Tn,lineHeight:hr,colorBgElevated:or,marginXXS:yr,padding:ti,fontSize:mi,controlHeightSM:di,fontSizeLG:Pi,colorTextLightSolid:vo,colorErrorHover:Co}=ut,To=new Ve.C(vo).setAlpha(.65).toRgbString();return{dropdownWidth:160,zIndexPopup:ut.zIndexPopupBase+50,radiusItem:ut.borderRadiusLG,itemBorderRadius:ut.borderRadiusLG,radiusSubMenuItem:ut.borderRadiusSM,subMenuItemBorderRadius:ut.borderRadiusSM,colorItemText:on,itemColor:on,colorItemTextHover:on,itemHoverColor:on,colorItemTextHoverHorizontal:It,horizontalItemHoverColor:It,colorGroupTitle:$t,groupTitleColor:$t,colorItemTextSelected:It,itemSelectedColor:It,colorItemTextSelectedHorizontal:It,horizontalItemSelectedColor:It,colorItemBg:Jt,itemBg:Jt,colorItemBgHover:Rr,itemHoverBg:Rr,colorItemBgActive:Qn,itemActiveBg:mr,colorSubItemBg:xn,subMenuItemBg:xn,colorItemBgSelected:mr,itemSelectedBg:mr,colorItemBgSelectedHorizontal:"transparent",horizontalItemSelectedBg:"transparent",colorActiveBarWidth:0,activeBarWidth:0,colorActiveBarHeight:Jn,activeBarHeight:Jn,colorActiveBarBorderSize:rr,activeBarBorderWidth:rr,colorItemTextDisabled:Pt,itemDisabledColor:Pt,colorDangerItemText:nn,dangerItemColor:nn,colorDangerItemTextHover:nn,dangerItemHoverColor:nn,colorDangerItemTextSelected:nn,dangerItemSelectedColor:nn,colorDangerItemBgActive:Vt,dangerItemActiveBg:Vt,colorDangerItemBgSelected:Vt,dangerItemSelectedBg:Vt,itemMarginInline:ut.marginXXS,horizontalItemBorderRadius:0,horizontalItemHoverBg:"transparent",itemHeight:Tn,groupTitleLineHeight:hr,collapsedWidth:Tn*2,popupBg:or,itemMarginBlock:yr,itemPaddingInline:ti,horizontalLineHeight:`${Tn*1.15}px`,iconSize:mi,iconMarginInlineEnd:di-mi,collapsedIconSize:Pi,groupTitleFontSize:mi,darkItemDisabledColor:new Ve.C(vo).setAlpha(.25).toRgbString(),darkItemColor:To,darkDangerItemColor:nn,darkItemBg:"#001529",darkSubMenuItemBg:"#000c17",darkItemSelectedColor:vo,darkItemSelectedBg:It,darkDangerItemSelectedBg:nn,darkItemHoverBg:"transparent",darkGroupTitleColor:To,darkItemHoverColor:vo,darkDangerItemHoverColor:Co,darkDangerItemSelectedColor:vo,darkDangerItemActiveBg:nn}},{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"]]})(ft),ln=function(ft,Bt){var Ot={};for(var ut in ft)Object.prototype.hasOwnProperty.call(ft,ut)&&Bt.indexOf(ut)<0&&(Ot[ut]=ft[ut]);if(ft!=null&&typeof Object.getOwnPropertySymbols=="function")for(var It=0,ut=Object.getOwnPropertySymbols(ft);It{var Ot,ut;const It=et.useContext(Se.Z),nn=It||{},{getPrefixCls:Pt,getPopupContainer:Vt,direction:on,menu:$t}=et.useContext(Oe.E_),Jt=Pt(),{prefixCls:xn,className:Qn,style:rr,theme:Jn="light",expandIcon:mr,_internalDisableMenuItemTitleTooltip:Rr,inlineCollapsed:Tn,siderCollapsed:hr,items:or,children:yr,rootClassName:ti,mode:mi,selectable:di,onClick:Pi,overflowedIndicatorPopupClassName:vo}=ft,Co=ln(ft,["prefixCls","className","style","theme","expandIcon","_internalDisableMenuItemTitleTooltip","inlineCollapsed","siderCollapsed","items","children","rootClassName","mode","selectable","onClick","overflowedIndicatorPopupClassName"]),To=(0,be.Z)(Co,["collapsedWidth"]),xo=Ke(or)||yr;(Ot=nn.validator)===null||Ot===void 0||Ot.call(nn,{mode:mi});const ma=(0,he.useEvent)(function(){var zi;Pi==null||Pi.apply(void 0,arguments),(zi=nn.onClick)===null||zi===void 0||zi.call(nn)}),xa=nn.mode||mi,_i=di!=null?di:nn.selectable,ko=et.useMemo(()=>hr!==void 0?hr:Tn,[Tn,hr]),ro={horizontal:{motionName:`${Jt}-slide-up`},inline:(0,pe.Z)(Jt),other:{motionName:`${Jt}-zoom-big`}},Rt=Pt("menu",xn||nn.prefixCls),[Kr,Bi]=Zn(Rt,!It),_r=Ze()(`${Rt}-${Jn}`,$t==null?void 0:$t.className,Qn);let pi;if(typeof mr=="function")pi=mr;else if(mr===null||mr===!1)pi=null;else if(nn.expandIcon===null||nn.expandIcon===!1)pi=null;else{const zi=mr!=null?mr:nn.expandIcon;pi=(0,je.Tm)(zi,{className:Ze()(`${Rt}-submenu-expand-icon`,(0,je.l$)(zi)?(ut=zi.props)===null||ut===void 0?void 0:ut.className:"")})}const ii=et.useMemo(()=>({prefixCls:Rt,inlineCollapsed:ko||!1,direction:on,firstLevel:!0,theme:Jn,mode:xa,disableMenuItemTitleTooltip:Rr}),[Rt,ko,on,Rr,Jn]);return Kr(et.createElement(Se.Z.Provider,{value:null},et.createElement(ie.Provider,{value:ii},et.createElement(He.ZP,Object.assign({getPopupContainer:Vt,overflowedIndicator:et.createElement(xe.Z,null),overflowedIndicatorPopupClassName:Ze()(Rt,`${Rt}-${Jn}`,vo),mode:xa,selectable:_i,onClick:ma},To,{inlineCollapsed:ko,style:Object.assign(Object.assign({},$t==null?void 0:$t.style),rr),className:_r,prefixCls:Rt,direction:on,defaultMotions:ro,expandIcon:pi,ref:Bt,rootClassName:Ze()(ti,Bi)}),xo))))});const qt=(0,et.forwardRef)((ft,Bt)=>{const Ot=(0,et.useRef)(null),ut=et.useContext(Ge.D);return(0,et.useImperativeHandle)(Bt,()=>({menu:Ot.current,focus:It=>{var nn;(nn=Ot.current)===null||nn===void 0||nn.focus(It)}})),et.createElement(Wn,Object.assign({ref:Ot},ft,ut))});qt.Item=fe,qt.SubMenu=ve,qt.Divider=Re,qt.ItemGroup=He.BW;var xt=qt},58421:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return nn}});var He=Be(92413),et=Be(59301),Ge={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"},ke=Ge,Ze=Be(7657),Oe=function(Vt,on){return et.createElement(Ze.Z,(0,He.Z)({},Vt,{ref:on,icon:ke}))},we=et.forwardRef(Oe),Te=we,Re=Be(49198),Ie=Be(33853),be=Be(38819),Pe=Be(92310),je=Be.n(Pe),ye=Be(400),ie=Be(33708),ae=Be(6909),fe=Be(4771),de=Be(9427),ve=Be(25440),xe=Be(26112),he={ZERO:48,NINE:57,NUMPAD_ZERO:96,NUMPAD_NINE:105,BACKSPACE:8,DELETE:46,ENTER:13,ARROW_UP:38,ARROW_DOWN:40},pe=he,Se=Be(91735),Ne=function(Pt){(0,de.Z)(on,Pt);var Vt=(0,ve.Z)(on);function on(){var $t;(0,ae.Z)(this,on);for(var Jt=arguments.length,xn=new Array(Jt),Qn=0;Qn=0||rr.relatedTarget.className.indexOf("".concat(Tn,"-item"))>=0))&&Rr($t.getValidValue()))},$t.go=function(rr){var Jn=$t.state.goInputText;Jn!==""&&(rr.keyCode===pe.ENTER||rr.type==="click")&&($t.setState({goInputText:""}),$t.props.quickGo($t.getValidValue()))},$t}return(0,fe.Z)(on,[{key:"getPageSizeOptions",value:function(){var Jt=this.props,xn=Jt.pageSize,Qn=Jt.pageSizeOptions;return Qn.some(function(rr){return rr.toString()===xn.toString()})?Qn:Qn.concat([xn.toString()]).sort(function(rr,Jn){var mr=Number.isNaN(Number(rr))?0:Number(rr),Rr=Number.isNaN(Number(Jn))?0:Number(Jn);return mr-Rr})}},{key:"render",value:function(){var Jt=this,xn=this.props,Qn=xn.pageSize,rr=xn.locale,Jn=xn.rootPrefixCls,mr=xn.changeSize,Rr=xn.quickGo,Tn=xn.goButton,hr=xn.selectComponentClass,or=xn.buildOptionText,yr=xn.selectPrefixCls,ti=xn.disabled,mi=this.state.goInputText,di="".concat(Jn,"-options"),Pi=hr,vo=null,Co=null,To=null;if(!mr&&!Rr)return null;var xo=this.getPageSizeOptions();if(mr&&Pi){var ma=xo.map(function(xa,_i){return et.createElement(Pi.Option,{key:_i,value:xa.toString()},(or||Jt.buildOptionText)(xa))});vo=et.createElement(Pi,{disabled:ti,prefixCls:yr,showSearch:!1,className:"".concat(di,"-size-changer"),optionLabelProp:"children",popupMatchSelectWidth:!1,value:(Qn||xo[0]).toString(),onChange:this.changeSize,getPopupContainer:function(_i){return _i.parentNode},"aria-label":rr.page_size,defaultOpen:!1},ma)}return Rr&&(Tn&&(To=typeof Tn=="boolean"?et.createElement("button",{type:"button",onClick:this.go,onKeyUp:this.go,disabled:ti,className:"".concat(di,"-quick-jumper-button")},rr.jump_to_confirm):et.createElement("span",{onClick:this.go,onKeyUp:this.go},Tn)),Co=et.createElement("div",{className:"".concat(di,"-quick-jumper")},rr.jump_to,et.createElement("input",{disabled:ti,type:"text",value:mi,onChange:this.handleChange,onKeyUp:this.go,onBlur:this.handleBlur,"aria-label":rr.page}),rr.page,To)),et.createElement("li",{className:"".concat(di)},vo,Co)}}]),on}(et.Component);Ne.defaultProps={pageSizeOptions:["10","20","50","100"]};var ze=Ne,Ke=function(Vt){var on,$t=Vt.rootPrefixCls,Jt=Vt.page,xn=Vt.active,Qn=Vt.className,rr=Vt.showTitle,Jn=Vt.onClick,mr=Vt.onKeyPress,Rr=Vt.itemRender,Tn="".concat($t,"-item"),hr=je()(Tn,"".concat(Tn,"-").concat(Jt),(on={},(0,ye.Z)(on,"".concat(Tn,"-active"),xn),(0,ye.Z)(on,"".concat(Tn,"-disabled"),!Jt),(0,ye.Z)(on,Vt.className,Qn),on)),or=function(){Jn(Jt)},yr=function(di){mr(di,Jn,Jt)},ti=Rr(Jt,"page",et.createElement("a",{rel:"nofollow"},Jt));return ti?et.createElement("li",{title:rr?Jt.toString():null,className:hr,onClick:or,onKeyPress:yr,tabIndex:0},ti):null},Ve=Ke;function Je(){}function tt(Pt){var Vt=Number(Pt);return typeof Vt=="number"&&!Number.isNaN(Vt)&&isFinite(Vt)&&Math.floor(Vt)===Vt}var gt=function(Vt,on,$t){return $t};function st(Pt,Vt,on){var $t=typeof Pt=="undefined"?Vt.pageSize:Pt;return Math.floor((on.total-1)/$t)+1}var St=function(Pt){(0,de.Z)(on,Pt);var Vt=(0,ve.Z)(on);function on($t){var Jt;(0,ae.Z)(this,on),Jt=Vt.call(this,$t),Jt.paginationNode=et.createRef(),Jt.getJumpPrevPage=function(){return Math.max(1,Jt.state.current-(Jt.props.showLessItems?3:5))},Jt.getJumpNextPage=function(){return Math.min(st(void 0,Jt.state,Jt.props),Jt.state.current+(Jt.props.showLessItems?3:5))},Jt.getItemIcon=function(mr,Rr){var Tn=Jt.props.prefixCls,hr=mr||et.createElement("button",{type:"button","aria-label":Rr,className:"".concat(Tn,"-item-link")});return typeof mr=="function"&&(hr=et.createElement(mr,(0,ie.Z)({},Jt.props))),hr},Jt.isValid=function(mr){var Rr=Jt.props.total;return tt(mr)&&mr!==Jt.state.current&&tt(Rr)&&Rr>0},Jt.shouldDisplayQuickJumper=function(){var mr=Jt.props,Rr=mr.showQuickJumper,Tn=mr.total,hr=Jt.state.pageSize;return Tn<=hr?!1:Rr},Jt.handleKeyDown=function(mr){(mr.keyCode===pe.ARROW_UP||mr.keyCode===pe.ARROW_DOWN)&&mr.preventDefault()},Jt.handleKeyUp=function(mr){var Rr=Jt.getValidValue(mr),Tn=Jt.state.currentInputValue;Rr!==Tn&&Jt.setState({currentInputValue:Rr}),mr.keyCode===pe.ENTER?Jt.handleChange(Rr):mr.keyCode===pe.ARROW_UP?Jt.handleChange(Rr-1):mr.keyCode===pe.ARROW_DOWN&&Jt.handleChange(Rr+1)},Jt.handleBlur=function(mr){var Rr=Jt.getValidValue(mr);Jt.handleChange(Rr)},Jt.changePageSize=function(mr){var Rr=Jt.state.current,Tn=st(mr,Jt.state,Jt.props);Rr=Rr>Tn?Tn:Rr,Tn===0&&(Rr=Jt.state.current),typeof mr=="number"&&("pageSize"in Jt.props||Jt.setState({pageSize:mr}),"current"in Jt.props||Jt.setState({current:Rr,currentInputValue:Rr})),Jt.props.onShowSizeChange(Rr,mr),"onChange"in Jt.props&&Jt.props.onChange&&Jt.props.onChange(Rr,mr)},Jt.handleChange=function(mr){var Rr=Jt.props,Tn=Rr.disabled,hr=Rr.onChange,or=Jt.state,yr=or.pageSize,ti=or.current,mi=or.currentInputValue;if(Jt.isValid(mr)&&!Tn){var di=st(void 0,Jt.state,Jt.props),Pi=mr;return mr>di?Pi=di:mr<1&&(Pi=1),"current"in Jt.props||Jt.setState({current:Pi}),Pi!==mi&&Jt.setState({currentInputValue:Pi}),hr(Pi,yr),Pi}return ti},Jt.prev=function(){Jt.hasPrev()&&Jt.handleChange(Jt.state.current-1)},Jt.next=function(){Jt.hasNext()&&Jt.handleChange(Jt.state.current+1)},Jt.jumpPrev=function(){Jt.handleChange(Jt.getJumpPrevPage())},Jt.jumpNext=function(){Jt.handleChange(Jt.getJumpNextPage())},Jt.hasPrev=function(){return Jt.state.current>1},Jt.hasNext=function(){return Jt.state.current2?Tn-2:0),or=2;or=Qn?Jn=Qn:Jn=Number(xn),Jn}},{key:"getShowSizeChanger",value:function(){var Jt=this.props,xn=Jt.showSizeChanger,Qn=Jt.total,rr=Jt.totalBoundaryShowSizeChanger;return typeof xn!="undefined"?xn:Qn>rr}},{key:"render",value:function(){var Jt=this.props,xn=Jt.prefixCls,Qn=Jt.className,rr=Jt.style,Jn=Jt.disabled,mr=Jt.hideOnSinglePage,Rr=Jt.total,Tn=Jt.locale,hr=Jt.showQuickJumper,or=Jt.showLessItems,yr=Jt.showTitle,ti=Jt.showTotal,mi=Jt.simple,di=Jt.itemRender,Pi=Jt.showPrevNextJumpers,vo=Jt.jumpPrevIcon,Co=Jt.jumpNextIcon,To=Jt.selectComponentClass,xo=Jt.selectPrefixCls,ma=Jt.pageSizeOptions,xa=this.state,_i=xa.current,ko=xa.pageSize,ro=xa.currentInputValue;if(mr===!0&&Rr<=ko)return null;var Rt=st(void 0,this.state,this.props),Kr=[],Bi=null,_r=null,pi=null,ii=null,zi=null,Jr=hr&&hr.goButton,Kt=or?1:2,Le=_i-1>0?_i-1:0,We=_i+1Rr?Rr:_i*ko]));if(mi){Jr&&(typeof Jr=="boolean"?zi=et.createElement("button",{type:"button",onClick:this.handleGoTO,onKeyUp:this.handleGoTO},Tn.jump_to_confirm):zi=et.createElement("span",{onClick:this.handleGoTO,onKeyUp:this.handleGoTO},Jr),zi=et.createElement("li",{title:yr?"".concat(Tn.jump_to).concat(_i,"/").concat(Rt):null,className:"".concat(xn,"-simple-pager")},zi));var dt=this.renderPrev(Le);return et.createElement("ul",(0,He.Z)({className:je()(xn,"".concat(xn,"-simple"),(0,ye.Z)({},"".concat(xn,"-disabled"),Jn),Qn),style:rr,ref:this.paginationNode},De),qe,dt?et.createElement("li",{title:yr?Tn.prev_page:null,onClick:this.prev,tabIndex:this.hasPrev()?0:null,onKeyPress:this.runIfEnterPrev,className:je()("".concat(xn,"-prev"),(0,ye.Z)({},"".concat(xn,"-disabled"),!this.hasPrev())),"aria-disabled":!this.hasPrev()},dt):null,et.createElement("li",{title:yr?"".concat(_i,"/").concat(Rt):null,className:"".concat(xn,"-simple-pager")},et.createElement("input",{type:"text",value:ro,disabled:Jn,onKeyDown:this.handleKeyDown,onKeyUp:this.handleKeyUp,onChange:this.handleKeyUp,onBlur:this.handleBlur,size:3}),et.createElement("span",{className:"".concat(xn,"-slash")},"/"),Rt),et.createElement("li",{title:yr?Tn.next_page:null,onClick:this.next,tabIndex:this.hasPrev()?0:null,onKeyPress:this.runIfEnterNext,className:je()("".concat(xn,"-next"),(0,ye.Z)({},"".concat(xn,"-disabled"),!this.hasNext())),"aria-disabled":!this.hasNext()},this.renderNext(We)),zi)}if(Rt<=3+Kt*2){var Mt={locale:Tn,rootPrefixCls:xn,onClick:this.handleChange,onKeyPress:this.runIfEnter,showTitle:yr,itemRender:di};Rt||Kr.push(et.createElement(Ve,(0,He.Z)({},Mt,{key:"noPager",page:1,className:"".concat(xn,"-item-disabled")})));for(var wt=1;wt<=Rt;wt+=1){var rn=_i===wt;Kr.push(et.createElement(Ve,(0,He.Z)({},Mt,{key:wt,page:wt,active:rn})))}}else{var un=or?Tn.prev_3:Tn.prev_5,zn=or?Tn.next_3:Tn.next_5,Fn=di(this.getJumpPrevPage(),"jump-prev",this.getItemIcon(vo,"prev page")),tn=di(this.getJumpNextPage(),"jump-next",this.getItemIcon(Co,"next page"));Pi&&(Bi=Fn?et.createElement("li",{title:yr?un:null,key:"prev",onClick:this.jumpPrev,tabIndex:0,onKeyPress:this.runIfEnterJumpPrev,className:je()("".concat(xn,"-jump-prev"),(0,ye.Z)({},"".concat(xn,"-jump-prev-custom-icon"),!!vo))},Fn):null,_r=tn?et.createElement("li",{title:yr?zn:null,key:"next",tabIndex:0,onClick:this.jumpNext,onKeyPress:this.runIfEnterJumpNext,className:je()("".concat(xn,"-jump-next"),(0,ye.Z)({},"".concat(xn,"-jump-next-custom-icon"),!!Co))},tn):null),ii=et.createElement(Ve,{locale:Tn,last:!0,rootPrefixCls:xn,onClick:this.handleChange,onKeyPress:this.runIfEnter,key:Rt,page:Rt,active:!1,showTitle:yr,itemRender:di}),pi=et.createElement(Ve,{locale:Tn,rootPrefixCls:xn,onClick:this.handleChange,onKeyPress:this.runIfEnter,key:1,page:1,active:!1,showTitle:yr,itemRender:di});var Vn=Math.max(1,_i-Kt),tr=Math.min(_i+Kt,Rt);_i-1<=Kt&&(tr=1+Kt*2),Rt-_i<=Kt&&(Vn=Rt-Kt*2);for(var dr=Vn;dr<=tr;dr+=1){var Bn=_i===dr;Kr.push(et.createElement(Ve,{locale:Tn,rootPrefixCls:xn,onClick:this.handleChange,onKeyPress:this.runIfEnter,key:dr,page:dr,active:Bn,showTitle:yr,itemRender:di}))}_i-1>=Kt*2&&_i!==3&&(Kr[0]=(0,et.cloneElement)(Kr[0],{className:"".concat(xn,"-item-after-jump-prev")}),Kr.unshift(Bi)),Rt-_i>=Kt*2&&_i!==Rt-2&&(Kr[Kr.length-1]=(0,et.cloneElement)(Kr[Kr.length-1],{className:"".concat(xn,"-item-before-jump-next")}),Kr.push(_r)),Vn!==1&&Kr.unshift(pi),tr!==Rt&&Kr.push(ii)}var An=!this.hasPrev()||!Rt,Nn=!this.hasNext()||!Rt,$n=this.renderPrev(Le),lr=this.renderNext(We);return et.createElement("ul",(0,He.Z)({className:je()(xn,Qn,(0,ye.Z)({},"".concat(xn,"-disabled"),Jn)),style:rr,ref:this.paginationNode},De),qe,$n?et.createElement("li",{title:yr?Tn.prev_page:null,onClick:this.prev,tabIndex:An?null:0,onKeyPress:this.runIfEnterPrev,className:je()("".concat(xn,"-prev"),(0,ye.Z)({},"".concat(xn,"-disabled"),An)),"aria-disabled":An},$n):null,Kr,lr?et.createElement("li",{title:yr?Tn.next_page:null,onClick:this.next,tabIndex:Nn?null:0,onKeyPress:this.runIfEnterNext,className:je()("".concat(xn,"-next"),(0,ye.Z)({},"".concat(xn,"-disabled"),Nn)),"aria-disabled":Nn},lr):null,et.createElement(ze,{disabled:Jn,locale:Tn,rootPrefixCls:xn,selectComponentClass:To,selectPrefixCls:xo,changeSize:this.getShowSizeChanger()?this.changePageSize:null,current:_i,pageSize:ko,pageSizeOptions:ma,quickGo:this.shouldDisplayQuickJumper()?this.handleChange:null,goButton:Jr}))}}],[{key:"getDerivedStateFromProps",value:function(Jt,xn){var Qn={};if("current"in Jt&&(Qn.current=Jt.current,Jt.current!==xn.current&&(Qn.currentInputValue=Qn.current)),"pageSize"in Jt&&Jt.pageSize!==xn.pageSize){var rr=xn.current,Jn=st(Jt.pageSize,xn,Jt);rr=rr>Jn?Jn:rr,"current"in Jt||(Qn.current=rr,Qn.currentInputValue=rr),Qn.pageSize=Jt.pageSize}return Qn}}]),on}(et.Component);St.defaultProps={defaultCurrent:1,total:0,defaultPageSize:10,onChange:Je,className:"",selectPrefixCls:"rc-select",prefixCls:"rc-pagination",selectComponentClass:null,hideOnSinglePage:!1,showPrevNextJumpers:!0,showQuickJumper:!1,showLessItems:!1,showTitle:!0,onShowSizeChange:Je,locale:Se.Z,style:{},itemRender:gt,totalBoundaryShowSizeChanger:50};var At=St,vt=Be(22075),Tt=Be(36355),bt=Be(19716),Et=Be(8628),lt=Be(9763),Nt=Be(57809);const Zt=Pt=>et.createElement(Nt.default,Object.assign({},Pt,{showSearch:!0,size:"small"})),Ut=Pt=>et.createElement(Nt.default,Object.assign({},Pt,{showSearch:!0,size:"middle"}));Zt.Option=Nt.default.Option,Ut.Option=Nt.default.Option;var Ft=Be(9937),Yt=Be(17313),dn=Be(83116),Dn=Be(37613);const Rn=Pt=>{const{componentCls:Vt}=Pt;return{[`${Vt}-disabled`]:{"&, &:hover":{cursor:"not-allowed",[`${Vt}-item-link`]:{color:Pt.colorTextDisabled,cursor:"not-allowed"}},"&:focus-visible":{cursor:"not-allowed",[`${Vt}-item-link`]:{color:Pt.colorTextDisabled,cursor:"not-allowed"}}},[`&${Vt}-disabled`]:{cursor:"not-allowed",[`${Vt}-item`]:{cursor:"not-allowed","&:hover, &:active":{backgroundColor:"transparent"},a:{color:Pt.colorTextDisabled,backgroundColor:"transparent",border:"none",cursor:"not-allowed"},"&-active":{borderColor:Pt.colorBorder,backgroundColor:Pt.itemActiveBgDisabled,"&:hover, &:active":{backgroundColor:Pt.itemActiveBgDisabled},a:{color:Pt.itemActiveColorDisabled}}},[`${Vt}-item-link`]:{color:Pt.colorTextDisabled,cursor:"not-allowed","&:hover, &:active":{backgroundColor:"transparent"},[`${Vt}-simple&`]:{backgroundColor:"transparent","&:hover, &:active":{backgroundColor:"transparent"}}},[`${Vt}-simple-pager`]:{color:Pt.colorTextDisabled},[`${Vt}-jump-prev, ${Vt}-jump-next`]:{[`${Vt}-item-link-icon`]:{opacity:0},[`${Vt}-item-ellipsis`]:{opacity:1}}},[`&${Vt}-simple`]:{[`${Vt}-prev, ${Vt}-next`]:{[`&${Vt}-disabled ${Vt}-item-link`]:{"&:hover, &:active":{backgroundColor:"transparent"}}}}}},Zn=Pt=>{const{componentCls:Vt}=Pt;return{[`&${Vt}-mini ${Vt}-total-text, &${Vt}-mini ${Vt}-simple-pager`]:{height:Pt.itemSizeSM,lineHeight:`${Pt.itemSizeSM}px`},[`&${Vt}-mini ${Vt}-item`]:{minWidth:Pt.itemSizeSM,height:Pt.itemSizeSM,margin:0,lineHeight:`${Pt.itemSizeSM-2}px`},[`&${Vt}-mini:not(${Vt}-disabled) ${Vt}-item:not(${Vt}-item-active)`]:{backgroundColor:"transparent",borderColor:"transparent","&:hover":{backgroundColor:Pt.colorBgTextHover},"&:active":{backgroundColor:Pt.colorBgTextActive}},[`&${Vt}-mini ${Vt}-prev, &${Vt}-mini ${Vt}-next`]:{minWidth:Pt.itemSizeSM,height:Pt.itemSizeSM,margin:0,lineHeight:`${Pt.itemSizeSM}px`},[`&${Vt}-mini:not(${Vt}-disabled)`]:{[`${Vt}-prev, ${Vt}-next`]:{[`&:hover ${Vt}-item-link`]:{backgroundColor:Pt.colorBgTextHover},[`&:active ${Vt}-item-link`]:{backgroundColor:Pt.colorBgTextActive},[`&${Vt}-disabled:hover ${Vt}-item-link`]:{backgroundColor:"transparent"}}},[` &${Vt}-mini ${Vt}-prev ${Vt}-item-link, &${Vt}-mini ${Vt}-next ${Vt}-item-link `]:{backgroundColor:"transparent",borderColor:"transparent","&::after":{height:Pt.itemSizeSM,lineHeight:`${Pt.itemSizeSM}px`}},[`&${Vt}-mini ${Vt}-jump-prev, &${Vt}-mini ${Vt}-jump-next`]:{height:Pt.itemSizeSM,marginInlineEnd:0,lineHeight:`${Pt.itemSizeSM}px`},[`&${Vt}-mini ${Vt}-options`]:{marginInlineStart:Pt.paginationMiniOptionsMarginInlineStart,"&-size-changer":{top:Pt.miniOptionsSizeChangerTop},"&-quick-jumper":{height:Pt.itemSizeSM,lineHeight:`${Pt.itemSizeSM}px`,input:Object.assign(Object.assign({},(0,Ft.x0)(Pt)),{width:Pt.paginationMiniQuickJumperInputWidth,height:Pt.controlHeightSM})}}}},ln=Pt=>{const{componentCls:Vt}=Pt;return{[` &${Vt}-simple ${Vt}-prev, &${Vt}-simple ${Vt}-next `]:{height:Pt.itemSizeSM,lineHeight:`${Pt.itemSizeSM}px`,verticalAlign:"top",[`${Vt}-item-link`]:{height:Pt.itemSizeSM,backgroundColor:"transparent",border:0,"&:hover":{backgroundColor:Pt.colorBgTextHover},"&:active":{backgroundColor:Pt.colorBgTextActive},"&::after":{height:Pt.itemSizeSM,lineHeight:`${Pt.itemSizeSM}px`}}},[`&${Vt}-simple ${Vt}-simple-pager`]:{display:"inline-block",height:Pt.itemSizeSM,marginInlineEnd:Pt.marginXS,input:{boxSizing:"border-box",height:"100%",marginInlineEnd:Pt.marginXS,padding:`0 ${Pt.paginationItemPaddingInline}px`,textAlign:"center",backgroundColor:Pt.itemInputBg,border:`${Pt.lineWidth}px ${Pt.lineType} ${Pt.colorBorder}`,borderRadius:Pt.borderRadius,outline:"none",transition:`border-color ${Pt.motionDurationMid}`,color:"inherit","&:hover":{borderColor:Pt.colorPrimary},"&:focus":{borderColor:Pt.colorPrimaryHover,boxShadow:`${Pt.inputOutlineOffset}px 0 ${Pt.controlOutlineWidth}px ${Pt.controlOutline}`},"&[disabled]":{color:Pt.colorTextDisabled,backgroundColor:Pt.colorBgContainerDisabled,borderColor:Pt.colorBorder,cursor:"not-allowed"}}}}},Gn=Pt=>{const{componentCls:Vt}=Pt;return{[`${Vt}-jump-prev, ${Vt}-jump-next`]:{outline:0,[`${Vt}-item-container`]:{position:"relative",[`${Vt}-item-link-icon`]:{color:Pt.colorPrimary,fontSize:Pt.fontSizeSM,opacity:0,transition:`all ${Pt.motionDurationMid}`,"&-svg":{top:0,insetInlineEnd:0,bottom:0,insetInlineStart:0,margin:"auto"}},[`${Vt}-item-ellipsis`]:{position:"absolute",top:0,insetInlineEnd:0,bottom:0,insetInlineStart:0,display:"block",margin:"auto",color:Pt.colorTextDisabled,fontFamily:"Arial, Helvetica, sans-serif",letterSpacing:Pt.paginationEllipsisLetterSpacing,textAlign:"center",textIndent:Pt.paginationEllipsisTextIndent,opacity:1,transition:`all ${Pt.motionDurationMid}`}},"&:hover":{[`${Vt}-item-link-icon`]:{opacity:1},[`${Vt}-item-ellipsis`]:{opacity:0}}},[` ${Vt}-prev, ${Vt}-jump-prev, ${Vt}-jump-next `]:{marginInlineEnd:Pt.marginXS},[` ${Vt}-prev, ${Vt}-next, ${Vt}-jump-prev, ${Vt}-jump-next `]:{display:"inline-block",minWidth:Pt.itemSize,height:Pt.itemSize,color:Pt.colorText,fontFamily:Pt.fontFamily,lineHeight:`${Pt.itemSize}px`,textAlign:"center",verticalAlign:"middle",listStyle:"none",borderRadius:Pt.borderRadius,cursor:"pointer",transition:`all ${Pt.motionDurationMid}`},[`${Vt}-prev, ${Vt}-next`]:{fontFamily:"Arial, Helvetica, sans-serif",outline:0,button:{color:Pt.colorText,cursor:"pointer",userSelect:"none"},[`${Vt}-item-link`]:{display:"block",width:"100%",height:"100%",padding:0,fontSize:Pt.fontSizeSM,textAlign:"center",backgroundColor:"transparent",border:`${Pt.lineWidth}px ${Pt.lineType} transparent`,borderRadius:Pt.borderRadius,outline:"none",transition:`all ${Pt.motionDurationMid}`},[`&:hover ${Vt}-item-link`]:{backgroundColor:Pt.colorBgTextHover},[`&:active ${Vt}-item-link`]:{backgroundColor:Pt.colorBgTextActive},[`&${Vt}-disabled:hover`]:{[`${Vt}-item-link`]:{backgroundColor:"transparent"}}},[`${Vt}-slash`]:{marginInlineEnd:Pt.paginationSlashMarginInlineEnd,marginInlineStart:Pt.paginationSlashMarginInlineStart},[`${Vt}-options`]:{display:"inline-block",marginInlineStart:Pt.margin,verticalAlign:"middle","&-size-changer.-select":{display:"inline-block",width:"auto"},"&-quick-jumper":{display:"inline-block",height:Pt.controlHeight,marginInlineStart:Pt.marginXS,lineHeight:`${Pt.controlHeight}px`,verticalAlign:"top",input:Object.assign(Object.assign({},(0,Ft.ik)(Pt)),{width:Pt.controlHeightLG*1.25,height:Pt.controlHeight,boxSizing:"border-box",margin:0,marginInlineStart:Pt.marginXS,marginInlineEnd:Pt.marginXS})}}}},Wn=Pt=>{const{componentCls:Vt}=Pt;return{[`${Vt}-item`]:{display:"inline-block",minWidth:Pt.itemSize,height:Pt.itemSize,marginInlineEnd:Pt.marginXS,fontFamily:Pt.fontFamily,lineHeight:`${Pt.itemSize-2}px`,textAlign:"center",verticalAlign:"middle",listStyle:"none",backgroundColor:"transparent",border:`${Pt.lineWidth}px ${Pt.lineType} transparent`,borderRadius:Pt.borderRadius,outline:0,cursor:"pointer",userSelect:"none",a:{display:"block",padding:`0 ${Pt.paginationItemPaddingInline}px`,color:Pt.colorText,"&:hover":{textDecoration:"none"}},[`&:not(${Vt}-item-active)`]:{"&:hover":{transition:`all ${Pt.motionDurationMid}`,backgroundColor:Pt.colorBgTextHover},"&:active":{backgroundColor:Pt.colorBgTextActive}},"&-active":{fontWeight:Pt.fontWeightStrong,backgroundColor:Pt.itemActiveBg,borderColor:Pt.colorPrimary,a:{color:Pt.colorPrimary},"&:hover":{borderColor:Pt.colorPrimaryHover},"&:hover a":{color:Pt.colorPrimaryHover}}}}},qt=Pt=>{const{componentCls:Vt}=Pt;return{[Vt]:Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},(0,Yt.Wf)(Pt)),{"ul, ol":{margin:0,padding:0,listStyle:"none"},"&::after":{display:"block",clear:"both",height:0,overflow:"hidden",visibility:"hidden",content:'""'},[`${Vt}-total-text`]:{display:"inline-block",height:Pt.itemSize,marginInlineEnd:Pt.marginXS,lineHeight:`${Pt.itemSize-2}px`,verticalAlign:"middle"}}),Wn(Pt)),Gn(Pt)),ln(Pt)),Zn(Pt)),Rn(Pt)),{[`@media only screen and (max-width: ${Pt.screenLG}px)`]:{[`${Vt}-item`]:{"&-after-jump-prev, &-before-jump-next":{display:"none"}}},[`@media only screen and (max-width: ${Pt.screenSM}px)`]:{[`${Vt}-options`]:{display:"none"}}}),[`&${Pt.componentCls}-rtl`]:{direction:"rtl"}}},xt=Pt=>{const{componentCls:Vt}=Pt;return{[`${Vt}${Vt}-disabled:not(${Vt}-mini)`]:{"&, &:hover":{[`${Vt}-item-link`]:{borderColor:Pt.colorBorder}},"&:focus-visible":{[`${Vt}-item-link`]:{borderColor:Pt.colorBorder}},[`${Vt}-item, ${Vt}-item-link`]:{backgroundColor:Pt.colorBgContainerDisabled,borderColor:Pt.colorBorder,[`&:hover:not(${Vt}-item-active)`]:{backgroundColor:Pt.colorBgContainerDisabled,borderColor:Pt.colorBorder,a:{color:Pt.colorTextDisabled}},[`&${Vt}-item-active`]:{backgroundColor:Pt.itemActiveBgDisabled}},[`${Vt}-prev, ${Vt}-next`]:{"&:hover button":{backgroundColor:Pt.colorBgContainerDisabled,borderColor:Pt.colorBorder,color:Pt.colorTextDisabled},[`${Vt}-item-link`]:{backgroundColor:Pt.colorBgContainerDisabled,borderColor:Pt.colorBorder}}},[`${Vt}:not(${Vt}-mini)`]:{[`${Vt}-prev, ${Vt}-next`]:{"&:hover button":{borderColor:Pt.colorPrimaryHover,backgroundColor:Pt.itemBg},[`${Vt}-item-link`]:{backgroundColor:Pt.itemLinkBg,borderColor:Pt.colorBorder},[`&:hover ${Vt}-item-link`]:{borderColor:Pt.colorPrimary,backgroundColor:Pt.itemBg,color:Pt.colorPrimary},[`&${Vt}-disabled`]:{[`${Vt}-item-link`]:{borderColor:Pt.colorBorder,color:Pt.colorTextDisabled}}},[`${Vt}-item`]:{backgroundColor:Pt.itemBg,border:`${Pt.lineWidth}px ${Pt.lineType} ${Pt.colorBorder}`,[`&:hover:not(${Vt}-item-active)`]:{borderColor:Pt.colorPrimary,backgroundColor:Pt.itemBg,a:{color:Pt.colorPrimary}},"&-active":{borderColor:Pt.colorPrimary}}}}},ft=Pt=>{const{componentCls:Vt}=Pt;return{[`${Vt}:not(${Vt}-disabled)`]:{[`${Vt}-item`]:Object.assign({},(0,Yt.Qy)(Pt)),[`${Vt}-jump-prev, ${Vt}-jump-next`]:{"&:focus-visible":Object.assign({[`${Vt}-item-link-icon`]:{opacity:1},[`${Vt}-item-ellipsis`]:{opacity:0}},(0,Yt.oN)(Pt))},[`${Vt}-prev, ${Vt}-next`]:{[`&:focus-visible ${Vt}-item-link`]:Object.assign({},(0,Yt.oN)(Pt))}}}};var Bt=(0,dn.Z)("Pagination",Pt=>{const Vt=(0,Dn.TS)(Pt,{inputOutlineOffset:0,paginationMiniOptionsMarginInlineStart:Pt.marginXXS/2,paginationMiniQuickJumperInputWidth:Pt.controlHeightLG*1.1,paginationItemPaddingInline:Pt.marginXXS*1.5,paginationEllipsisLetterSpacing:Pt.marginXXS/2,paginationSlashMarginInlineStart:Pt.marginXXS,paginationSlashMarginInlineEnd:Pt.marginSM,paginationEllipsisTextIndent:"0.13em"},(0,Ft.e5)(Pt),(0,Ft.TM)(Pt));return[qt(Vt),ft(Vt),Pt.wireframe&&xt(Vt)]},Pt=>({itemBg:Pt.colorBgContainer,itemSize:Pt.controlHeight,itemSizeSM:Pt.controlHeightSM,itemActiveBg:Pt.colorBgContainer,itemLinkBg:Pt.colorBgContainer,itemActiveColorDisabled:Pt.colorTextDisabled,itemActiveBgDisabled:Pt.controlItemBgActiveDisabled,itemInputBg:Pt.colorBgContainer,miniOptionsSizeChangerTop:0})),Ot=function(Pt,Vt){var on={};for(var $t in Pt)Object.prototype.hasOwnProperty.call(Pt,$t)&&Vt.indexOf($t)<0&&(on[$t]=Pt[$t]);if(Pt!=null&&typeof Object.getOwnPropertySymbols=="function")for(var Jt=0,$t=Object.getOwnPropertySymbols(Pt);Jt<$t.length;Jt++)Vt.indexOf($t[Jt])<0&&Object.prototype.propertyIsEnumerable.call(Pt,$t[Jt])&&(on[$t[Jt]]=Pt[$t[Jt]]);return on},It=Pt=>{const{prefixCls:Vt,selectPrefixCls:on,className:$t,rootClassName:Jt,style:xn,size:Qn,locale:rr,selectComponentClass:Jn,responsive:mr,showSizeChanger:Rr}=Pt,Tn=Ot(Pt,["prefixCls","selectPrefixCls","className","rootClassName","style","size","locale","selectComponentClass","responsive","showSizeChanger"]),{xs:hr}=(0,Et.Z)(mr),{getPrefixCls:or,direction:yr,pagination:ti={}}=et.useContext(Tt.E_),mi=or("pagination",Vt),[di,Pi]=Bt(mi),vo=Rr!=null?Rr:ti.showSizeChanger,Co=et.useMemo(()=>{const Rt=et.createElement("span",{className:`${mi}-item-ellipsis`},"\u2022\u2022\u2022"),Kr=et.createElement("button",{className:`${mi}-item-link`,type:"button",tabIndex:-1},yr==="rtl"?et.createElement(be.Z,null):et.createElement(Ie.Z,null)),Bi=et.createElement("button",{className:`${mi}-item-link`,type:"button",tabIndex:-1},yr==="rtl"?et.createElement(Ie.Z,null):et.createElement(be.Z,null)),_r=et.createElement("a",{className:`${mi}-item-link`},et.createElement("div",{className:`${mi}-item-container`},yr==="rtl"?et.createElement(Re.Z,{className:`${mi}-item-link-icon`}):et.createElement(Te,{className:`${mi}-item-link-icon`}),Rt)),pi=et.createElement("a",{className:`${mi}-item-link`},et.createElement("div",{className:`${mi}-item-container`},yr==="rtl"?et.createElement(Te,{className:`${mi}-item-link-icon`}):et.createElement(Re.Z,{className:`${mi}-item-link-icon`}),Rt));return{prevIcon:Kr,nextIcon:Bi,jumpPrevIcon:_r,jumpNextIcon:pi}},[yr,mi]),[To]=(0,lt.Z)("Pagination",vt.Z),xo=Object.assign(Object.assign({},To),rr),ma=(0,bt.Z)(Qn),xa=ma==="small"||!!(hr&&!ma&&mr),_i=or("select",on),ko=je()({[`${mi}-mini`]:xa,[`${mi}-rtl`]:yr==="rtl"},ti==null?void 0:ti.className,$t,Jt,Pi),ro=Object.assign(Object.assign({},ti==null?void 0:ti.style),xn);return di(et.createElement(At,Object.assign({},Co,Tn,{style:ro,prefixCls:mi,selectPrefixCls:_i,className:ko,selectComponentClass:Jn||(xa?Zt:Ut),locale:xo,showSizeChanger:vo})))},nn=It},93948:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return Rr}});var He=Be(59301),et=Be(29679),Ge=Be(40001),ke=Be(19248),Ze=Be(99267),Oe=Be(92310),we=Be.n(Oe),Te=Be(2738),Re=Be(36355),Ie=Be(92413),be=Be(33708),Pe=Be(37061),je={percent:0,prefixCls:"rc-progress",strokeColor:"#2db7f5",strokeLinecap:"round",strokeWidth:1,trailColor:"#D9D9D9",trailWidth:1,gapPosition:"bottom"},ye=function(){var hr=(0,He.useRef)([]),or=(0,He.useRef)(null);return(0,He.useEffect)(function(){var yr=Date.now(),ti=!1;hr.current.forEach(function(mi){if(mi){ti=!0;var di=mi.style;di.transitionDuration=".3s, .3s, .3s, .06s",or.current&&yr-or.current<100&&(di.transitionDuration="0s, 0s")}}),ti&&(or.current=Date.now())}),hr.current},ie=["className","percent","prefixCls","strokeColor","strokeLinecap","strokeWidth","style","trailColor","trailWidth","transition"],ae=function(hr){var or=(0,be.Z)((0,be.Z)({},je),hr),yr=or.className,ti=or.percent,mi=or.prefixCls,di=or.strokeColor,Pi=or.strokeLinecap,vo=or.strokeWidth,Co=or.style,To=or.trailColor,xo=or.trailWidth,ma=or.transition,xa=(0,Pe.Z)(or,ie);delete xa.gapPosition;var _i=Array.isArray(ti)?ti:[ti],ko=Array.isArray(di)?di:[di],ro=ye(),Rt=vo/2,Kr=100-vo/2,Bi="M ".concat(Pi==="round"?Rt:0,",").concat(Rt,` L `).concat(Pi==="round"?Kr:100,",").concat(Rt),_r="0 0 100 ".concat(vo),pi=0;return He.createElement("svg",(0,Ie.Z)({className:we()("".concat(mi,"-line"),yr),viewBox:_r,preserveAspectRatio:"none",style:Co},xa),He.createElement("path",{className:"".concat(mi,"-line-trail"),d:Bi,strokeLinecap:Pi,stroke:To,strokeWidth:xo||vo,fillOpacity:"0"}),_i.map(function(ii,zi){var Jr=1;switch(Pi){case"round":Jr=1-vo/100;break;case"square":Jr=1-vo/2/100;break;default:Jr=1;break}var Kt={strokeDasharray:"".concat(ii*Jr,"px, 100px"),strokeDashoffset:"-".concat(pi,"px"),transition:ma||"stroke-dashoffset 0.3s ease 0s, stroke-dasharray .3s ease 0s, stroke 0.3s linear"},Le=ko[zi]||ko[ko.length-1];return pi+=ii,He.createElement("path",{key:zi,className:"".concat(mi,"-line-path"),d:Bi,strokeLinecap:Pi,stroke:Le,strokeWidth:vo,fillOpacity:"0",ref:function(De){ro[zi]=De},style:Kt})}))},fe=ae,de=Be(39559),ve=Be(33606),xe=Be(47273),he=0,pe=(0,xe.Z)();function Se(){var Tn;return pe?(Tn=he,he+=1):Tn="TEST_OR_SSR",Tn}var Ne=function(Tn){var hr=He.useState(),or=(0,ve.Z)(hr,2),yr=or[0],ti=or[1];return He.useEffect(function(){ti("rc_progress_".concat(Se()))},[]),Tn||yr},ze=function(hr){var or=hr.bg,yr=hr.children;return He.createElement("div",{style:{width:"100%",height:"100%",background:or}},yr)};function Ke(Tn,hr){return Object.keys(Tn).map(function(or){var yr=parseFloat(or),ti="".concat(Math.floor(yr*hr),"%");return"".concat(Tn[or]," ").concat(ti)})}var Ve=He.forwardRef(function(Tn,hr){var or=Tn.prefixCls,yr=Tn.color,ti=Tn.gradientId,mi=Tn.radius,di=Tn.style,Pi=Tn.ptg,vo=Tn.strokeLinecap,Co=Tn.strokeWidth,To=Tn.size,xo=Tn.gapDegree,ma=yr&&(0,de.Z)(yr)==="object",xa=ma?"#FFF":void 0,_i=To/2,ko=He.createElement("circle",{className:"".concat(or,"-circle-path"),r:mi,cx:_i,cy:_i,stroke:xa,strokeLinecap:vo,strokeWidth:Co,opacity:Pi===0?0:1,style:di,ref:hr});if(!ma)return ko;var ro="".concat(ti,"-conic"),Rt=xo?"".concat(180+xo/2,"deg"):"0deg",Kr=Ke(yr,(360-xo)/360),Bi=Ke(yr,1),_r="conic-gradient(from ".concat(Rt,", ").concat(Kr.join(", "),")"),pi="linear-gradient(to ".concat(xo?"bottom":"top",", ").concat(Bi.join(", "),")");return He.createElement(He.Fragment,null,He.createElement("mask",{id:ro},ko),He.createElement("foreignObject",{x:0,y:0,width:To,height:To,mask:"url(#".concat(ro,")")},He.createElement(ze,{bg:pi},He.createElement(ze,{bg:_r}))))}),Je=Ve,tt=100,gt=function(hr,or,yr,ti,mi,di,Pi,vo,Co,To){var xo=arguments.length>10&&arguments[10]!==void 0?arguments[10]:0,ma=yr/100*360*((360-di)/360),xa=di===0?0:{bottom:0,top:180,left:90,right:-90}[Pi],_i=(100-ti)/100*or;Co==="round"&&ti!==100&&(_i+=To/2,_i>=or&&(_i=or-.01));var ko=tt/2;return{stroke:typeof vo=="string"?vo:void 0,strokeDasharray:"".concat(or,"px ").concat(hr),strokeDashoffset:_i+xo,transform:"rotate(".concat(mi+ma+xa,"deg)"),transformOrigin:"".concat(ko,"px ").concat(ko,"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}},st=["id","prefixCls","steps","strokeWidth","trailWidth","gapDegree","gapPosition","trailColor","strokeLinecap","style","className","strokeColor","percent"];function St(Tn){var hr=Tn!=null?Tn:[];return Array.isArray(hr)?hr:[hr]}var At=function(hr){var or=(0,be.Z)((0,be.Z)({},je),hr),yr=or.id,ti=or.prefixCls,mi=or.steps,di=or.strokeWidth,Pi=or.trailWidth,vo=or.gapDegree,Co=vo===void 0?0:vo,To=or.gapPosition,xo=or.trailColor,ma=or.strokeLinecap,xa=or.style,_i=or.className,ko=or.strokeColor,ro=or.percent,Rt=(0,Pe.Z)(or,st),Kr=tt/2,Bi=Ne(yr),_r="".concat(Bi,"-gradient"),pi=Kr-di/2,ii=Math.PI*2*pi,zi=Co>0?90+Co/2:-90,Jr=ii*((360-Co)/360),Kt=(0,de.Z)(mi)==="object"?mi:{count:mi,space:2},Le=Kt.count,We=Kt.space,De=St(ro),qe=St(ko),dt=qe.find(function(tn){return tn&&(0,de.Z)(tn)==="object"}),Mt=dt&&(0,de.Z)(dt)==="object",wt=Mt?"butt":ma,rn=gt(ii,Jr,0,100,zi,Co,To,xo,wt,di),un=ye(),zn=function(){var Vn=0;return De.map(function(tr,dr){var Bn=qe[dr]||qe[qe.length-1],An=gt(ii,Jr,Vn,tr,zi,Co,To,Bn,wt,di);return Vn+=tr,He.createElement(Je,{key:dr,color:Bn,ptg:tr,radius:pi,prefixCls:ti,gradientId:_r,style:An,strokeLinecap:wt,strokeWidth:di,gapDegree:Co,ref:function($n){un[dr]=$n},size:tt})}).reverse()},Fn=function(){var Vn=Math.round(Le*(De[0]/100)),tr=100/Le,dr=0;return new Array(Le).fill(null).map(function(Bn,An){var Nn=An<=Vn-1?qe[0]:xo,$n=Nn&&(0,de.Z)(Nn)==="object"?"url(#".concat(_r,")"):void 0,lr=gt(ii,Jr,dr,tr,zi,Co,To,Nn,"butt",di,We);return dr+=(Jr-lr.strokeDashoffset+We)*100/Jr,He.createElement("circle",{key:An,className:"".concat(ti,"-circle-path"),r:pi,cx:Kr,cy:Kr,stroke:$n,strokeWidth:di,opacity:1,style:lr,ref:function(Tr){un[An]=Tr}})})};return He.createElement("svg",(0,Ie.Z)({className:we()("".concat(ti,"-circle"),_i),viewBox:"0 0 ".concat(tt," ").concat(tt),style:xa,id:yr,role:"presentation"},Rt),!Le&&He.createElement("circle",{className:"".concat(ti,"-circle-trail"),r:pi,cx:Kr,cy:Kr,stroke:xo,strokeLinecap:wt,strokeWidth:Pi||di,style:rn}),Le?Fn():zn())},vt=At,Tt={Line:fe,Circle:vt},bt=Be(6848),Et=Be(93398);function lt(Tn){return!Tn||Tn<0?0:Tn>100?100:Tn}function Nt(Tn){let{success:hr,successPercent:or}=Tn,yr=or;return hr&&"progress"in hr&&(yr=hr.progress),hr&&"percent"in hr&&(yr=hr.percent),yr}const Zt=Tn=>{let{percent:hr,success:or,successPercent:yr}=Tn;const ti=lt(Nt({success:or,successPercent:yr}));return[ti,lt(lt(hr)-ti)]},Ut=Tn=>{let{success:hr={},strokeColor:or}=Tn;const{strokeColor:yr}=hr;return[yr||Et.presetPrimaryColors.green,or||null]},Ft=(Tn,hr,or)=>{var yr,ti,mi,di;let Pi=-1,vo=-1;if(hr==="step"){const Co=or.steps,To=or.strokeWidth;typeof Tn=="string"||typeof Tn=="undefined"?(Pi=Tn==="small"?2:14,vo=To!=null?To:8):typeof Tn=="number"?[Pi,vo]=[Tn,Tn]:[Pi=14,vo=8]=Tn,Pi*=Co}else if(hr==="line"){const Co=or==null?void 0:or.strokeWidth;typeof Tn=="string"||typeof Tn=="undefined"?vo=Co||(Tn==="small"?6:8):typeof Tn=="number"?[Pi,vo]=[Tn,Tn]:[Pi=-1,vo=8]=Tn}else(hr==="circle"||hr==="dashboard")&&(typeof Tn=="string"||typeof Tn=="undefined"?[Pi,vo]=Tn==="small"?[60,60]:[120,120]:typeof Tn=="number"?[Pi,vo]=[Tn,Tn]:(Pi=(ti=(yr=Tn[0])!==null&&yr!==void 0?yr:Tn[1])!==null&&ti!==void 0?ti:120,vo=(di=(mi=Tn[0])!==null&&mi!==void 0?mi:Tn[1])!==null&&di!==void 0?di:120));return[Pi,vo]},Yt=3,dn=Tn=>Yt/Tn*100;var Rn=Tn=>{const{prefixCls:hr,trailColor:or=null,strokeLinecap:yr="round",gapPosition:ti,gapDegree:mi,width:di=120,type:Pi,children:vo,success:Co,size:To=di}=Tn,[xo,ma]=Ft(To,"circle");let{strokeWidth:xa}=Tn;xa===void 0&&(xa=Math.max(dn(xo),6));const _i={width:xo,height:ma,fontSize:xo*.15+6},ko=He.useMemo(()=>{if(mi||mi===0)return mi;if(Pi==="dashboard")return 75},[mi,Pi]),ro=ti||Pi==="dashboard"&&"bottom"||void 0,Rt=Object.prototype.toString.call(Tn.strokeColor)==="[object Object]",Kr=Ut({success:Co,strokeColor:Tn.strokeColor}),Bi=we()(`${hr}-inner`,{[`${hr}-circle-gradient`]:Rt}),_r=He.createElement(vt,{percent:Zt(Tn),strokeWidth:xa,trailWidth:xa,strokeColor:Kr,strokeLinecap:yr,trailColor:or,prefixCls:hr,gapDegree:ko,gapPosition:ro});return He.createElement("div",{className:Bi,style:_i},xo<=20?He.createElement(bt.Z,{title:vo},He.createElement("span",null,_r)):He.createElement(He.Fragment,null,_r,vo))},Zn=function(Tn,hr){var or={};for(var yr in Tn)Object.prototype.hasOwnProperty.call(Tn,yr)&&hr.indexOf(yr)<0&&(or[yr]=Tn[yr]);if(Tn!=null&&typeof Object.getOwnPropertySymbols=="function")for(var ti=0,yr=Object.getOwnPropertySymbols(Tn);ti{let hr=[];return Object.keys(Tn).forEach(or=>{const yr=parseFloat(or.replace(/%/g,""));isNaN(yr)||hr.push({key:yr,value:Tn[or]})}),hr=hr.sort((or,yr)=>or.key-yr.key),hr.map(or=>{let{key:yr,value:ti}=or;return`${ti} ${yr}%`}).join(", ")},Gn=(Tn,hr)=>{const{from:or=Et.presetPrimaryColors.blue,to:yr=Et.presetPrimaryColors.blue,direction:ti=hr==="rtl"?"to left":"to right"}=Tn,mi=Zn(Tn,["from","to","direction"]);if(Object.keys(mi).length!==0){const di=ln(mi);return{backgroundImage:`linear-gradient(${ti}, ${di})`}}return{backgroundImage:`linear-gradient(${ti}, ${or}, ${yr})`}};var qt=Tn=>{const{prefixCls:hr,direction:or,percent:yr,size:ti,strokeWidth:mi,strokeColor:di,strokeLinecap:Pi="round",children:vo,trailColor:Co=null,success:To}=Tn,xo=di&&typeof di!="string"?Gn(di,or):{backgroundColor:di},ma=Pi==="square"||Pi==="butt"?0:void 0,xa={backgroundColor:Co||void 0,borderRadius:ma},_i=ti!=null?ti:[-1,mi||(ti==="small"?6:8)],[ko,ro]=Ft(_i,"line",{strokeWidth:mi}),Rt=Object.assign({width:`${lt(yr)}%`,height:ro,borderRadius:ma},xo),Kr=Nt(Tn),Bi={width:`${lt(Kr)}%`,height:ro,borderRadius:ma,backgroundColor:To==null?void 0:To.strokeColor},_r={width:ko<0?"100%":ko,height:ro};return He.createElement(He.Fragment,null,He.createElement("div",{className:`${hr}-outer`,style:_r},He.createElement("div",{className:`${hr}-inner`,style:xa},He.createElement("div",{className:`${hr}-bg`,style:Rt}),Kr!==void 0?He.createElement("div",{className:`${hr}-success-bg`,style:Bi}):null)),vo)},ft=Tn=>{const{size:hr,steps:or,percent:yr=0,strokeWidth:ti=8,strokeColor:mi,trailColor:di=null,prefixCls:Pi,children:vo}=Tn,Co=Math.round(or*(yr/100)),To=hr==="small"?2:14,xo=hr!=null?hr:[To,ti],[ma,xa]=Ft(xo,"step",{steps:or,strokeWidth:ti}),_i=ma/or,ko=new Array(or);for(let ro=0;ro{const hr=Tn?"100%":"-100%";return new Bt.Keyframes(`antProgress${Tn?"RTL":"LTR"}Active`,{"0%":{transform:`translateX(${hr}) scaleX(0)`,opacity:.1},"20%":{transform:`translateX(${hr}) scaleX(0)`,opacity:.5},to:{transform:"translateX(0) scaleX(1)",opacity:0}})},Pt=Tn=>{const{componentCls:hr,iconCls:or}=Tn;return{[hr]:Object.assign(Object.assign({},(0,Ot.Wf)(Tn)),{display:"inline-block","&-rtl":{direction:"rtl"},"&-line":{position:"relative",width:"100%",fontSize:Tn.fontSize,marginInlineEnd:Tn.marginXS,marginBottom:Tn.marginXS},[`${hr}-outer`]:{display:"inline-block",width:"100%"},[`&${hr}-show-info`]:{[`${hr}-outer`]:{marginInlineEnd:`calc(-2em - ${Tn.marginXS}px)`,paddingInlineEnd:`calc(2em + ${Tn.paddingXS}px)`}},[`${hr}-inner`]:{position:"relative",display:"inline-block",width:"100%",overflow:"hidden",verticalAlign:"middle",backgroundColor:Tn.remainingColor,borderRadius:Tn.lineBorderRadius},[`${hr}-inner:not(${hr}-circle-gradient)`]:{[`${hr}-circle-path`]:{stroke:Tn.defaultColor}},[`${hr}-success-bg, ${hr}-bg`]:{position:"relative",backgroundColor:Tn.defaultColor,borderRadius:Tn.lineBorderRadius,transition:`all ${Tn.motionDurationSlow} ${Tn.motionEaseInOutCirc}`},[`${hr}-success-bg`]:{position:"absolute",insetBlockStart:0,insetInlineStart:0,backgroundColor:Tn.colorSuccess},[`${hr}-text`]:{display:"inline-block",width:"2em",marginInlineStart:Tn.marginXS,color:Tn.colorText,lineHeight:1,whiteSpace:"nowrap",textAlign:"start",verticalAlign:"middle",wordBreak:"normal",[or]:{fontSize:Tn.fontSize}},[`&${hr}-status-active`]:{[`${hr}-bg::before`]:{position:"absolute",inset:0,backgroundColor:Tn.colorBgContainer,borderRadius:Tn.lineBorderRadius,opacity:0,animationName:nn(),animationDuration:Tn.progressActiveMotionDuration,animationTimingFunction:Tn.motionEaseOutQuint,animationIterationCount:"infinite",content:'""'}},[`&${hr}-rtl${hr}-status-active`]:{[`${hr}-bg::before`]:{animationName:nn(!0)}},[`&${hr}-status-exception`]:{[`${hr}-bg`]:{backgroundColor:Tn.colorError},[`${hr}-text`]:{color:Tn.colorError}},[`&${hr}-status-exception ${hr}-inner:not(${hr}-circle-gradient)`]:{[`${hr}-circle-path`]:{stroke:Tn.colorError}},[`&${hr}-status-success`]:{[`${hr}-bg`]:{backgroundColor:Tn.colorSuccess},[`${hr}-text`]:{color:Tn.colorSuccess}},[`&${hr}-status-success ${hr}-inner:not(${hr}-circle-gradient)`]:{[`${hr}-circle-path`]:{stroke:Tn.colorSuccess}}})}},Vt=Tn=>{const{componentCls:hr,iconCls:or}=Tn;return{[hr]:{[`${hr}-circle-trail`]:{stroke:Tn.remainingColor},[`&${hr}-circle ${hr}-inner`]:{position:"relative",lineHeight:1,backgroundColor:"transparent"},[`&${hr}-circle ${hr}-text`]:{position:"absolute",insetBlockStart:"50%",insetInlineStart:0,width:"100%",margin:0,padding:0,color:Tn.circleTextColor,fontSize:Tn.circleTextFontSize,lineHeight:1,whiteSpace:"normal",textAlign:"center",transform:"translateY(-50%)",[or]:{fontSize:`${Tn.fontSize/Tn.fontSizeSM}em`}},[`${hr}-circle&-status-exception`]:{[`${hr}-text`]:{color:Tn.colorError}},[`${hr}-circle&-status-success`]:{[`${hr}-text`]:{color:Tn.colorSuccess}}},[`${hr}-inline-circle`]:{lineHeight:1,[`${hr}-inner`]:{verticalAlign:"bottom"}}}},on=Tn=>{const{componentCls:hr}=Tn;return{[hr]:{[`${hr}-steps`]:{display:"inline-block","&-outer":{display:"flex",flexDirection:"row",alignItems:"center"},"&-item":{flexShrink:0,minWidth:Tn.progressStepMinWidth,marginInlineEnd:Tn.progressStepMarginInlineEnd,backgroundColor:Tn.remainingColor,transition:`all ${Tn.motionDurationSlow}`,"&-active":{backgroundColor:Tn.defaultColor}}}}}},$t=Tn=>{const{componentCls:hr,iconCls:or}=Tn;return{[hr]:{[`${hr}-small&-line, ${hr}-small&-line ${hr}-text ${or}`]:{fontSize:Tn.fontSizeSM}}}};var Jt=(0,ut.Z)("Progress",Tn=>{const hr=Tn.marginXXS/2,or=(0,It.TS)(Tn,{progressStepMarginInlineEnd:hr,progressStepMinWidth:hr,progressActiveMotionDuration:"2.4s"});return[Pt(or),Vt(or),on(or),$t(or)]},Tn=>({circleTextColor:Tn.colorText,defaultColor:Tn.colorInfo,remainingColor:Tn.colorFillSecondary,lineBorderRadius:100,circleTextFontSize:"1em"})),xn=function(Tn,hr){var or={};for(var yr in Tn)Object.prototype.hasOwnProperty.call(Tn,yr)&&hr.indexOf(yr)<0&&(or[yr]=Tn[yr]);if(Tn!=null&&typeof Object.getOwnPropertySymbols=="function")for(var ti=0,yr=Object.getOwnPropertySymbols(Tn);ti{const{prefixCls:or,className:yr,rootClassName:ti,steps:mi,strokeColor:di,percent:Pi=0,size:vo="default",showInfo:Co=!0,type:To="line",status:xo,format:ma,style:xa}=Tn,_i=xn(Tn,["prefixCls","className","rootClassName","steps","strokeColor","percent","size","showInfo","type","status","format","style"]),ko=He.useMemo(()=>{var De,qe;const dt=Nt(Tn);return parseInt(dt!==void 0?(De=dt!=null?dt:0)===null||De===void 0?void 0:De.toString():(qe=Pi!=null?Pi:0)===null||qe===void 0?void 0:qe.toString(),10)},[Pi,Tn.success,Tn.successPercent]),ro=He.useMemo(()=>!rr.includes(xo)&&ko>=100?"success":xo||"normal",[xo,ko]),{getPrefixCls:Rt,direction:Kr,progress:Bi}=He.useContext(Re.E_),_r=Rt("progress",or),[pi,ii]=Jt(_r),zi=He.useMemo(()=>{if(!Co)return null;const De=Nt(Tn);let qe;const dt=ma||(wt=>`${wt}%`),Mt=To==="line";return ma||ro!=="exception"&&ro!=="success"?qe=dt(lt(Pi),lt(De)):ro==="exception"?qe=Mt?He.createElement(ke.Z,null):He.createElement(Ze.Z,null):ro==="success"&&(qe=Mt?He.createElement(et.Z,null):He.createElement(Ge.Z,null)),He.createElement("span",{className:`${_r}-text`,title:typeof qe=="string"?qe:void 0},qe)},[Co,Pi,ko,ro,To,_r,ma]),Jr=Array.isArray(di)?di[0]:di,Kt=typeof di=="string"||Array.isArray(di)?di:void 0;let Le;To==="line"?Le=mi?He.createElement(ft,Object.assign({},Tn,{strokeColor:Kt,prefixCls:_r,steps:mi}),zi):He.createElement(qt,Object.assign({},Tn,{strokeColor:Jr,prefixCls:_r,direction:Kr}),zi):(To==="circle"||To==="dashboard")&&(Le=He.createElement(Rn,Object.assign({},Tn,{strokeColor:Jr,prefixCls:_r,progressStatus:ro}),zi));const We=we()(_r,`${_r}-status-${ro}`,`${_r}-${To==="dashboard"&&"circle"||mi&&"steps"||To}`,{[`${_r}-inline-circle`]:To==="circle"&&Ft(vo,"circle")[0]<=20,[`${_r}-show-info`]:Co,[`${_r}-${vo}`]:typeof vo=="string",[`${_r}-rtl`]:Kr==="rtl"},Bi==null?void 0:Bi.className,yr,ti,ii);return pi(He.createElement("div",Object.assign({ref:hr,style:Object.assign(Object.assign({},Bi==null?void 0:Bi.style),xa),className:We,role:"progressbar","aria-valuenow":ko},(0,Te.Z)(_i,["trailColor","strokeWidth","width","gapDegree","gapPosition","strokeLinecap","success","successPercent"])),Le))}),Rr=mr},13570:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return lt}});var He=Be(92413),et=Be(59301),Ge={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"},ke=Ge,Ze=Be(7657),Oe=function(Zt,Ut){return et.createElement(Ze.Z,(0,He.Z)({},Zt,{ref:Ut,icon:ke}))},we=et.forwardRef(Oe),Te=we,Re=Be(92310),Ie=Be.n(Re),be=Be(400),Pe=Be(33606),je=Be(37061),ye=Be(18929),ie=Be(10228),ae=Be(26112);function fe(Nt,Zt){var Ut=Nt.disabled,Ft=Nt.prefixCls,Yt=Nt.character,dn=Nt.characterRender,Dn=Nt.index,Rn=Nt.count,Zn=Nt.value,ln=Nt.allowHalf,Gn=Nt.focused,Wn=Nt.onHover,qt=Nt.onClick,xt=function(Vt){Wn(Vt,Dn)},ft=function(Vt){qt(Vt,Dn)},Bt=function(Vt){Vt.keyCode===ie.Z.ENTER&&qt(Vt,Dn)},Ot=Dn+1,ut=new Set([Ft]);Zn===0&&Dn===0&&Gn?ut.add("".concat(Ft,"-focused")):ln&&Zn+.5>=Ot&&ZnDn?"true":"false","aria-posinset":Dn+1,"aria-setsize":Rn,tabIndex:Ut?-1:0},et.createElement("div",{className:"".concat(Ft,"-first")},It),et.createElement("div",{className:"".concat(Ft,"-second")},It)));return dn&&(nn=dn(nn,Nt)),nn}var de=et.forwardRef(fe);function ve(){var Nt=et.useRef({});function Zt(Ft){return Nt.current[Ft]}function Ut(Ft){return function(Yt){Nt.current[Ft]=Yt}}return[Zt,Ut]}function xe(Nt){var Zt=Nt.pageXOffset,Ut="scrollLeft";if(typeof Zt!="number"){var Ft=Nt.document;Zt=Ft.documentElement[Ut],typeof Zt!="number"&&(Zt=Ft.body[Ut])}return Zt}function he(Nt){var Zt,Ut,Ft=Nt.ownerDocument,Yt=Ft.body,dn=Ft&&Ft.documentElement,Dn=Nt.getBoundingClientRect();return Zt=Dn.left,Ut=Dn.top,Zt-=dn.clientLeft||Yt.clientLeft||0,Ut-=dn.clientTop||Yt.clientTop||0,{left:Zt,top:Ut}}function pe(Nt){var Zt=he(Nt),Ut=Nt.ownerDocument,Ft=Ut.defaultView||Ut.parentWindow;return Zt.left+=xe(Ft),Zt.left}var Se=["prefixCls","className","defaultValue","value","count","allowHalf","allowClear","character","characterRender","disabled","direction","tabIndex","autoFocus","onHoverChange","onChange","onFocus","onBlur","onKeyDown","onMouseLeave"];function Ne(Nt,Zt){var Ut,Ft=Nt.prefixCls,Yt=Ft===void 0?"rc-rate":Ft,dn=Nt.className,Dn=Nt.defaultValue,Rn=Nt.value,Zn=Nt.count,ln=Zn===void 0?5:Zn,Gn=Nt.allowHalf,Wn=Gn===void 0?!1:Gn,qt=Nt.allowClear,xt=qt===void 0?!0:qt,ft=Nt.character,Bt=ft===void 0?"\u2605":ft,Ot=Nt.characterRender,ut=Nt.disabled,It=Nt.direction,nn=It===void 0?"ltr":It,Pt=Nt.tabIndex,Vt=Pt===void 0?0:Pt,on=Nt.autoFocus,$t=Nt.onHoverChange,Jt=Nt.onChange,xn=Nt.onFocus,Qn=Nt.onBlur,rr=Nt.onKeyDown,Jn=Nt.onMouseLeave,mr=(0,je.Z)(Nt,Se),Rr=ve(),Tn=(0,Pe.Z)(Rr,2),hr=Tn[0],or=Tn[1],yr=et.useRef(null),ti=function(){if(!ut){var wt;(wt=yr.current)===null||wt===void 0||wt.focus()}};et.useImperativeHandle(Zt,function(){return{focus:ti,blur:function(){if(!ut){var wt;(wt=yr.current)===null||wt===void 0||wt.blur()}}}});var mi=(0,ye.Z)(Dn||0,{value:Rn}),di=(0,Pe.Z)(mi,2),Pi=di[0],vo=di[1],Co=(0,ye.Z)(null),To=(0,Pe.Z)(Co,2),xo=To[0],ma=To[1],xa=function(wt,rn){var un=nn==="rtl",zn=wt+1;if(Wn){var Fn=hr(wt),tn=pe(Fn),Vn=Fn.clientWidth;(un&&rn-tn>Vn/2||!un&&rn-tn0&&!un||rn===ie.Z.RIGHT&&zn>0&&un?(Wn?zn-=.5:zn-=1,_i(zn),wt.preventDefault()):rn===ie.Z.LEFT&&zn{const{componentCls:Zt}=Nt;return{[`${Zt}-star`]:{position:"relative",display:"inline-block",color:"inherit",cursor:"pointer","&:not(:last-child)":{marginInlineEnd:Nt.marginXS},"> div":{transition:`all ${Nt.motionDurationMid}, outline 0s`,"&:hover":{transform:Nt.starHoverScale},"&:focus":{outline:0},"&:focus-visible":{outline:`${Nt.lineWidth}px dashed ${Nt.starColor}`,transform:Nt.starHoverScale}},"&-first, &-second":{color:Nt.starBg,transition:`all ${Nt.motionDurationMid}`,userSelect:"none",[Nt.iconCls]:{verticalAlign:"middle"}},"&-first":{position:"absolute",top:0,insetInlineStart:0,width:"50%",height:"100%",overflow:"hidden",opacity:0},[`&-half ${Zt}-star-first, &-half ${Zt}-star-second`]:{opacity:1},[`&-half ${Zt}-star-first, &-full ${Zt}-star-second`]:{color:"inherit"}}}},At=Nt=>({[`&-rtl${Nt.componentCls}`]:{direction:"rtl"}}),vt=Nt=>{const{componentCls:Zt}=Nt;return{[Zt]:Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},(0,tt.Wf)(Nt)),{display:"inline-block",margin:0,padding:0,color:Nt.starColor,fontSize:Nt.starSize,lineHeight:"unset",listStyle:"none",outline:"none",[`&-disabled${Zt} ${Zt}-star`]:{cursor:"default","> div:hover":{transform:"scale(1)"}}}),St(Nt)),{[`+ ${Zt}-text`]:{display:"inline-block",marginInlineStart:Nt.marginXS,fontSize:Nt.fontSize}}),At(Nt))}};var Tt=(0,gt.Z)("Rate",Nt=>{const Zt=(0,st.TS)(Nt,{});return[vt(Zt)]},Nt=>({starColor:Nt.yellow6,starSize:Nt.controlHeightLG*.5,starHoverScale:"scale(1.1)",starBg:Nt.colorFillContent})),bt=function(Nt,Zt){var Ut={};for(var Ft in Nt)Object.prototype.hasOwnProperty.call(Nt,Ft)&&Zt.indexOf(Ft)<0&&(Ut[Ft]=Nt[Ft]);if(Nt!=null&&typeof Object.getOwnPropertySymbols=="function")for(var Yt=0,Ft=Object.getOwnPropertySymbols(Nt);Yt{const{prefixCls:Ut,className:Ft,rootClassName:Yt,style:dn,tooltips:Dn,character:Rn=et.createElement(Te,null)}=Nt,Zn=bt(Nt,["prefixCls","className","rootClassName","style","tooltips","character"]),ln=(ut,It)=>{let{index:nn}=It;return Dn?et.createElement(Je.Z,{title:Dn[nn]},ut):ut},{getPrefixCls:Gn,direction:Wn,rate:qt}=et.useContext(Ve.E_),xt=Gn("rate",Ut),[ft,Bt]=Tt(xt),Ot=Object.assign(Object.assign({},qt==null?void 0:qt.style),dn);return ft(et.createElement(Ke,Object.assign({ref:Zt,character:Rn,characterRender:ln},Zn,{className:Ie()(Ft,Yt,Bt,qt==null?void 0:qt.className),style:Ot,prefixCls:xt,direction:Wn})))})},57809:function(sn,an,Be){"use strict";var He=Be(92310),et=Be.n(He),Ge=Be(77861),ke=Be(2738),Ze=Be(59301),Oe=Be(53487),we=Be(62892),Te=Be(19080),Re=Be(36355),Ie=Be(1684),be=Be(93891),Pe=Be(19716),je=Be(32441),ye=Be(33234),ie=Be(14154),ae=Be(58582),fe=Be(84443),de=Be(66339),ve=function(Ne,ze){var Ke={};for(var Ve in Ne)Object.prototype.hasOwnProperty.call(Ne,Ve)&&ze.indexOf(Ve)<0&&(Ke[Ve]=Ne[Ve]);if(Ne!=null&&typeof Object.getOwnPropertySymbols=="function")for(var Je=0,Ve=Object.getOwnPropertySymbols(Ne);Je{var Ke,{prefixCls:Ve,bordered:Je=!0,className:tt,rootClassName:gt,getPopupContainer:st,popupClassName:St,dropdownClassName:At,listHeight:vt=256,placement:Tt,listItemHeight:bt=24,size:Et,disabled:lt,notFoundContent:Nt,status:Zt,builtinPlacements:Ut,dropdownMatchSelectWidth:Ft,popupMatchSelectWidth:Yt,direction:dn,style:Dn,allowClear:Rn}=Ne,Zn=ve(Ne,["prefixCls","bordered","className","rootClassName","getPopupContainer","popupClassName","dropdownClassName","listHeight","placement","listItemHeight","size","disabled","notFoundContent","status","builtinPlacements","dropdownMatchSelectWidth","popupMatchSelectWidth","direction","style","allowClear"]);const{getPopupContainer:ln,getPrefixCls:Gn,renderEmpty:Wn,direction:qt,virtual:xt,popupMatchSelectWidth:ft,popupOverflow:Bt,select:Ot}=Ze.useContext(Re.E_),ut=Gn("select",Ve),It=Gn(),nn=dn!=null?dn:qt,{compactSize:Pt,compactItemClassnames:Vt}=(0,ye.ri)(ut,nn),[on,$t]=(0,ie.Z)(ut),Jt=Ze.useMemo(()=>{const{mode:ro}=Zn;if(ro!=="combobox")return ro===xe?"combobox":ro},[Zn.mode]),xn=Jt==="multiple"||Jt==="tags",Qn=(0,fe.Z)(Zn.suffixIcon,Zn.showArrow),rr=(Ke=Yt!=null?Yt:Ft)!==null&&Ke!==void 0?Ke:ft,{status:Jn,hasFeedback:mr,isFormItemInput:Rr,feedbackIcon:Tn}=Ze.useContext(je.aM),hr=(0,Te.F)(Jn,Zt);let or;Nt!==void 0?or=Nt:Jt==="combobox"?or=null:or=(Wn==null?void 0:Wn("Select"))||Ze.createElement(be.Z,{componentName:"Select"});const{suffixIcon:yr,itemIcon:ti,removeIcon:mi,clearIcon:di}=(0,de.Z)(Object.assign(Object.assign({},Zn),{multiple:xn,hasFeedback:mr,feedbackIcon:Tn,showSuffixIcon:Qn,prefixCls:ut,showArrow:Zn.showArrow,componentName:"Select"})),Pi=Rn===!0?{clearIcon:di}:Rn,vo=(0,ke.Z)(Zn,["suffixIcon","itemIcon"]),Co=et()(St||At,{[`${ut}-dropdown-${nn}`]:nn==="rtl"},gt,$t),To=(0,Pe.Z)(ro=>{var Rt;return(Rt=Et!=null?Et:Pt)!==null&&Rt!==void 0?Rt:ro}),xo=Ze.useContext(Ie.Z),ma=lt!=null?lt:xo,xa=et()({[`${ut}-lg`]:To==="large",[`${ut}-sm`]:To==="small",[`${ut}-rtl`]:nn==="rtl",[`${ut}-borderless`]:!Je,[`${ut}-in-form-item`]:Rr},(0,Te.Z)(ut,hr,mr),Vt,Ot==null?void 0:Ot.className,tt,gt,$t),_i=Ze.useMemo(()=>Tt!==void 0?Tt:nn==="rtl"?"bottomRight":"bottomLeft",[Tt,nn]),ko=(0,ae.Z)(Ut,Bt);return on(Ze.createElement(Ge.ZP,Object.assign({ref:ze,virtual:xt,showSearch:Ot==null?void 0:Ot.showSearch},vo,{style:Object.assign(Object.assign({},Ot==null?void 0:Ot.style),Dn),dropdownMatchSelectWidth:rr,builtinPlacements:ko,transitionName:(0,we.m)(It,"slide-up",Zn.transitionName),listHeight:vt,listItemHeight:bt,mode:Jt,prefixCls:ut,placement:_i,direction:nn,suffixIcon:yr,menuItemSelectedIcon:ti,removeIcon:mi,allowClear:Pi,notFoundContent:or,className:xa,getPopupContainer:st||ln,dropdownClassName:Co,disabled:ma})))},pe=Ze.forwardRef(he),Se=(0,Oe.Z)(pe);pe.SECRET_COMBOBOX_MODE_DO_NOT_USE=xe,pe.Option=Ge.Wx,pe.OptGroup=Ge.Xo,pe._InternalPanelDoNotUseOrYouWillBeFired=Se,an.default=pe},14154:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return pe}});var He=Be(17313),et=Be(74207),Ge=Be(37613),ke=Be(83116),Ze=Be(13826),Oe=Be(92899);const we=Se=>{const{optionHeight:Ne,optionFontSize:ze,optionLineHeight:Ke,optionPadding:Ve}=Se;return{position:"relative",display:"block",minHeight:Ne,padding:Ve,color:Se.colorText,fontWeight:"normal",fontSize:ze,lineHeight:Ke,boxSizing:"border-box"}};var Re=Se=>{const{antCls:Ne,componentCls:ze}=Se,Ke=`${ze}-item`,Ve=`&${Ne}-slide-up-enter${Ne}-slide-up-enter-active`,Je=`&${Ne}-slide-up-appear${Ne}-slide-up-appear-active`,tt=`&${Ne}-slide-up-leave${Ne}-slide-up-leave-active`,gt=`${ze}-dropdown-placement-`;return[{[`${ze}-dropdown`]:Object.assign(Object.assign({},(0,He.Wf)(Se)),{position:"absolute",top:-9999,zIndex:Se.zIndexPopup,boxSizing:"border-box",padding:Se.paddingXXS,overflow:"hidden",fontSize:Se.fontSize,fontVariant:"initial",backgroundColor:Se.colorBgElevated,borderRadius:Se.borderRadiusLG,outline:"none",boxShadow:Se.boxShadowSecondary,[` ${Ve}${gt}bottomLeft, ${Je}${gt}bottomLeft `]:{animationName:Ze.fJ},[` ${Ve}${gt}topLeft, ${Je}${gt}topLeft, ${Ve}${gt}topRight, ${Je}${gt}topRight `]:{animationName:Ze.Qt},[`${tt}${gt}bottomLeft`]:{animationName:Ze.Uw},[` ${tt}${gt}topLeft, ${tt}${gt}topRight `]:{animationName:Ze.ly},"&-hidden":{display:"none"},[`${Ke}`]:Object.assign(Object.assign({},we(Se)),{cursor:"pointer",transition:`background ${Se.motionDurationSlow} ease`,borderRadius:Se.borderRadiusSM,"&-group":{color:Se.colorTextDescription,fontSize:Se.fontSizeSM,cursor:"default"},"&-option":{display:"flex","&-content":Object.assign({flex:"auto"},He.vS),"&-state":{flex:"none",display:"flex",alignItems:"center"},[`&-active:not(${Ke}-option-disabled)`]:{backgroundColor:Se.optionActiveBg},[`&-selected:not(${Ke}-option-disabled)`]:{color:Se.optionSelectedColor,fontWeight:Se.optionSelectedFontWeight,backgroundColor:Se.optionSelectedBg,[`${Ke}-option-state`]:{color:Se.colorPrimary}},"&-disabled":{[`&${Ke}-option-selected`]:{backgroundColor:Se.colorBgContainerDisabled},color:Se.colorTextDisabled,cursor:"not-allowed"},"&-grouped":{paddingInlineStart:Se.controlPaddingHorizontal*2}}}),"&-rtl":{direction:"rtl"}})},(0,Ze.oN)(Se,"slide-up"),(0,Ze.oN)(Se,"slide-down"),(0,Oe.Fm)(Se,"move-up"),(0,Oe.Fm)(Se,"move-down")]};const Ie=2,be=Se=>{let{controlHeightSM:Ne,controlHeight:ze,lineWidth:Ke}=Se;const Ve=(ze-Ne)/2-Ke,Je=Math.ceil(Ve/2);return[Ve,Je]};function Pe(Se,Ne){const{componentCls:ze,iconCls:Ke}=Se,Ve=`${ze}-selection-overflow`,Je=Se.multipleSelectItemHeight,[tt]=be(Se),gt=Ne?`${ze}-${Ne}`:"";return{[`${ze}-multiple${gt}`]:{fontSize:Se.fontSize,[Ve]:{position:"relative",display:"flex",flex:"auto",flexWrap:"wrap",maxWidth:"100%","&-item":{flex:"none",alignSelf:"center",maxWidth:"100%",display:"inline-flex"}},[`${ze}-selector`]:{display:"flex",flexWrap:"wrap",alignItems:"center",padding:`${tt-Ie}px ${Ie*2}px`,borderRadius:Se.borderRadius,[`${ze}-show-search&`]:{cursor:"text"},[`${ze}-disabled&`]:{background:Se.multipleSelectorBgDisabled,cursor:"not-allowed"},"&:after":{display:"inline-block",width:0,margin:`${Ie}px 0`,lineHeight:`${Je}px`,visibility:"hidden",content:'"\\a0"'}},[` &${ze}-show-arrow ${ze}-selector, &${ze}-allow-clear ${ze}-selector `]:{paddingInlineEnd:Se.fontSizeIcon+Se.controlPaddingHorizontal},[`${ze}-selection-item`]:{position:"relative",display:"flex",flex:"none",boxSizing:"border-box",maxWidth:"100%",height:Je,marginTop:Ie,marginBottom:Ie,lineHeight:`${Je-Se.lineWidth*2}px`,background:Se.multipleItemBg,border:`${Se.lineWidth}px ${Se.lineType} ${Se.multipleItemBorderColor}`,borderRadius:Se.borderRadiusSM,cursor:"default",transition:`font-size ${Se.motionDurationSlow}, line-height ${Se.motionDurationSlow}, height ${Se.motionDurationSlow}`,userSelect:"none",marginInlineEnd:Ie*2,paddingInlineStart:Se.paddingXS,paddingInlineEnd:Se.paddingXS/2,[`${ze}-disabled&`]:{color:Se.multipleItemColorDisabled,borderColor:Se.multipleItemBorderColorDisabled,cursor:"not-allowed"},"&-content":{display:"inline-block",marginInlineEnd:Se.paddingXS/2,overflow:"hidden",whiteSpace:"pre",textOverflow:"ellipsis"},"&-remove":Object.assign(Object.assign({},(0,He.Ro)()),{display:"inline-flex",alignItems:"center",color:Se.colorIcon,fontWeight:"bold",fontSize:10,lineHeight:"inherit",cursor:"pointer",[`> ${Ke}`]:{verticalAlign:"-0.2em"},"&:hover":{color:Se.colorIconHover}})},[`${Ve}-item + ${Ve}-item`]:{[`${ze}-selection-search`]:{marginInlineStart:0}},[`${ze}-selection-search`]:{display:"inline-flex",position:"relative",maxWidth:"100%",marginInlineStart:Se.inputPaddingHorizontalBase-tt,"\n &-input,\n &-mirror\n ":{height:Je,fontFamily:Se.fontFamily,lineHeight:`${Je}px`,transition:`all ${Se.motionDurationSlow}`},"&-input":{width:"100%",minWidth:4.1},"&-mirror":{position:"absolute",top:0,insetInlineStart:0,insetInlineEnd:"auto",zIndex:999,whiteSpace:"pre",visibility:"hidden"}},[`${ze}-selection-placeholder `]:{position:"absolute",top:"50%",insetInlineStart:Se.inputPaddingHorizontalBase,insetInlineEnd:Se.inputPaddingHorizontalBase,transform:"translateY(-50%)",transition:`all ${Se.motionDurationSlow}`}}}}var ye=Se=>{const{componentCls:Ne}=Se,ze=(0,Ge.TS)(Se,{controlHeight:Se.controlHeightSM,multipleSelectItemHeight:Se.controlHeightXS,borderRadius:Se.borderRadiusSM,borderRadiusSM:Se.borderRadiusXS}),Ke=(0,Ge.TS)(Se,{fontSize:Se.fontSizeLG,controlHeight:Se.controlHeightLG,multipleSelectItemHeight:Se.multipleItemHeightLG,borderRadius:Se.borderRadiusLG,borderRadiusSM:Se.borderRadius}),[,Ve]=be(Se);return[Pe(Se),Pe(ze,"sm"),{[`${Ne}-multiple${Ne}-sm`]:{[`${Ne}-selection-placeholder`]:{insetInline:Se.controlPaddingHorizontalSM-Se.lineWidth},[`${Ne}-selection-search`]:{marginInlineStart:Ve}}},Pe(Ke,"lg")]};function ie(Se,Ne){const{componentCls:ze,inputPaddingHorizontalBase:Ke,borderRadius:Ve}=Se,Je=Se.controlHeight-Se.lineWidth*2,tt=Math.ceil(Se.fontSize*1.25),gt=Ne?`${ze}-${Ne}`:"";return{[`${ze}-single${gt}`]:{fontSize:Se.fontSize,[`${ze}-selector`]:Object.assign(Object.assign({},(0,He.Wf)(Se)),{display:"flex",borderRadius:Ve,[`${ze}-selection-search`]:{position:"absolute",top:0,insetInlineStart:Ke,insetInlineEnd:Ke,bottom:0,"&-input":{width:"100%"}},[` ${ze}-selection-item, ${ze}-selection-placeholder `]:{padding:0,lineHeight:`${Je}px`,transition:`all ${Se.motionDurationSlow}, visibility 0s`,"@supports (-moz-appearance: meterbar)":{lineHeight:`${Je}px`}},[`${ze}-selection-item`]:{position:"relative",userSelect:"none"},[`${ze}-selection-placeholder`]:{transition:"none",pointerEvents:"none"},[["&:after",`${ze}-selection-item:after`,`${ze}-selection-placeholder:after`].join(",")]:{display:"inline-block",width:0,visibility:"hidden",content:'"\\a0"'}}),[` &${ze}-show-arrow ${ze}-selection-item, &${ze}-show-arrow ${ze}-selection-placeholder `]:{paddingInlineEnd:tt},[`&${ze}-open ${ze}-selection-item`]:{color:Se.colorTextPlaceholder},[`&:not(${ze}-customize-input)`]:{[`${ze}-selector`]:{width:"100%",height:Se.controlHeight,padding:`0 ${Ke}px`,[`${ze}-selection-search-input`]:{height:Je},"&:after":{lineHeight:`${Je}px`}}},[`&${ze}-customize-input`]:{[`${ze}-selector`]:{"&:after":{display:"none"},[`${ze}-selection-search`]:{position:"static",width:"100%"},[`${ze}-selection-placeholder`]:{position:"absolute",insetInlineStart:0,insetInlineEnd:0,padding:`0 ${Ke}px`,"&:after":{display:"none"}}}}}}}function ae(Se){const{componentCls:Ne}=Se,ze=Se.controlPaddingHorizontalSM-Se.lineWidth;return[ie(Se),ie((0,Ge.TS)(Se,{controlHeight:Se.controlHeightSM,borderRadius:Se.borderRadiusSM}),"sm"),{[`${Ne}-single${Ne}-sm`]:{[`&:not(${Ne}-customize-input)`]:{[`${Ne}-selection-search`]:{insetInlineStart:ze,insetInlineEnd:ze},[`${Ne}-selector`]:{padding:`0 ${ze}px`},[`&${Ne}-show-arrow ${Ne}-selection-search`]:{insetInlineEnd:ze+Se.fontSize*1.5},[` &${Ne}-show-arrow ${Ne}-selection-item, &${Ne}-show-arrow ${Ne}-selection-placeholder `]:{paddingInlineEnd:Se.fontSize*1.5}}}},ie((0,Ge.TS)(Se,{controlHeight:Se.singleItemHeightLG,fontSize:Se.fontSizeLG,borderRadius:Se.borderRadiusLG}),"lg")]}const fe=Se=>{const{componentCls:Ne,selectorBg:ze}=Se;return{position:"relative",backgroundColor:ze,border:`${Se.lineWidth}px ${Se.lineType} ${Se.colorBorder}`,transition:`all ${Se.motionDurationMid} ${Se.motionEaseInOut}`,input:{cursor:"pointer"},[`${Ne}-show-search&`]:{cursor:"text",input:{cursor:"auto",color:"inherit"}},[`${Ne}-disabled&`]:{color:Se.colorTextDisabled,background:Se.colorBgContainerDisabled,cursor:"not-allowed",[`${Ne}-multiple&`]:{background:Se.multipleSelectorBgDisabled},input:{cursor:"not-allowed"}}}},de=function(Se,Ne){let ze=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;const{componentCls:Ke,borderHoverColor:Ve,outlineColor:Je,antCls:tt}=Ne,gt=ze?{[`${Ke}-selector`]:{borderColor:Ve}}:{};return{[Se]:{[`&:not(${Ke}-disabled):not(${Ke}-customize-input):not(${tt}-pagination-size-changer)`]:Object.assign(Object.assign({},gt),{[`${Ke}-focused& ${Ke}-selector`]:{borderColor:Ve,boxShadow:`0 0 0 ${Ne.controlOutlineWidth}px ${Je}`,outline:0},[`&:hover ${Ke}-selector`]:{borderColor:Ve}})}}},ve=Se=>{const{componentCls:Ne}=Se;return{[`${Ne}-selection-search-input`]:{margin:0,padding:0,background:"transparent",border:"none",outline:"none",appearance:"none","&::-webkit-search-cancel-button":{display:"none","-webkit-appearance":"none"}}}},xe=Se=>{const{componentCls:Ne,inputPaddingHorizontalBase:ze,iconCls:Ke}=Se;return{[Ne]:Object.assign(Object.assign({},(0,He.Wf)(Se)),{position:"relative",display:"inline-block",cursor:"pointer",[`&:not(${Ne}-customize-input) ${Ne}-selector`]:Object.assign(Object.assign({},fe(Se)),ve(Se)),[`${Ne}-selection-item`]:Object.assign({flex:1,fontWeight:"normal"},He.vS),[`${Ne}-selection-placeholder`]:Object.assign(Object.assign({},He.vS),{flex:1,color:Se.colorTextPlaceholder,pointerEvents:"none"}),[`${Ne}-arrow`]:Object.assign(Object.assign({},(0,He.Ro)()),{position:"absolute",top:"50%",insetInlineStart:"auto",insetInlineEnd:ze,height:Se.fontSizeIcon,marginTop:-Se.fontSizeIcon/2,color:Se.colorTextQuaternary,fontSize:Se.fontSizeIcon,lineHeight:1,textAlign:"center",pointerEvents:"none",display:"flex",alignItems:"center",[Ke]:{verticalAlign:"top",transition:`transform ${Se.motionDurationSlow}`,"> svg":{verticalAlign:"top"},[`&:not(${Ne}-suffix)`]:{pointerEvents:"auto"}},[`${Ne}-disabled &`]:{cursor:"not-allowed"},"> *:not(:last-child)":{marginInlineEnd:8}}),[`${Ne}-clear`]:{position:"absolute",top:"50%",insetInlineStart:"auto",insetInlineEnd:ze,zIndex:1,display:"inline-block",width:Se.fontSizeIcon,height:Se.fontSizeIcon,marginTop:-Se.fontSizeIcon/2,color:Se.colorTextQuaternary,fontSize:Se.fontSizeIcon,fontStyle:"normal",lineHeight:1,textAlign:"center",textTransform:"none",background:Se.clearBg,cursor:"pointer",opacity:0,transition:`color ${Se.motionDurationMid} ease, opacity ${Se.motionDurationSlow} ease`,textRendering:"auto","&:before":{display:"block"},"&:hover":{color:Se.colorTextTertiary}},"&:hover":{[`${Ne}-clear`]:{opacity:1}}}),[`${Ne}-has-feedback`]:{[`${Ne}-clear`]:{insetInlineEnd:ze+Se.fontSize+Se.paddingXS}}}},he=Se=>{const{componentCls:Ne}=Se;return[{[Ne]:{[`&-borderless ${Ne}-selector`]:{backgroundColor:"transparent !important",borderColor:"transparent !important",boxShadow:"none !important"},[`&${Ne}-in-form-item`]:{width:"100%"}}},xe(Se),ae(Se),ye(Se),Re(Se),{[`${Ne}-rtl`]:{direction:"rtl"}},de(Ne,(0,Ge.TS)(Se,{borderHoverColor:Se.colorPrimaryHover,outlineColor:Se.controlOutline})),de(`${Ne}-status-error`,(0,Ge.TS)(Se,{borderHoverColor:Se.colorErrorHover,outlineColor:Se.colorErrorOutline}),!0),de(`${Ne}-status-warning`,(0,Ge.TS)(Se,{borderHoverColor:Se.colorWarningHover,outlineColor:Se.colorWarningOutline}),!0),(0,et.c)(Se,{borderElCls:`${Ne}-selector`,focusElCls:`${Ne}-focused`})]};var pe=(0,ke.Z)("Select",(Se,Ne)=>{let{rootPrefixCls:ze}=Ne;const Ke=(0,Ge.TS)(Se,{rootPrefixCls:ze,inputPaddingHorizontalBase:Se.paddingSM-1,multipleSelectItemHeight:Se.multipleItemHeight});return[he(Ke)]},Se=>{const{fontSize:Ne,lineHeight:ze,controlHeight:Ke,controlPaddingHorizontal:Ve,zIndexPopupBase:Je,colorText:tt,fontWeightStrong:gt,controlItemBgActive:st,controlItemBgHover:St,colorBgContainer:At,colorFillSecondary:vt,controlHeightLG:Tt,controlHeightSM:bt,colorBgContainerDisabled:Et,colorTextDisabled:lt}=Se;return{zIndexPopup:Je+50,optionSelectedColor:tt,optionSelectedFontWeight:gt,optionSelectedBg:st,optionActiveBg:St,optionPadding:`${(Ke-Ne*ze)/2}px ${Ve}px`,optionFontSize:Ne,optionLineHeight:ze,optionHeight:Ke,selectorBg:At,clearBg:At,singleItemHeightLG:Tt,multipleItemBg:vt,multipleItemBorderColor:"transparent",multipleItemHeight:bt,multipleItemHeightLG:Ke,multipleSelectorBgDisabled:Et,multipleItemColorDisabled:lt,multipleItemBorderColorDisabled:"transparent"}})},58582:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return et}});const He=Ge=>{const Ze={overflow:{adjustX:!0,adjustY:!0,shiftY:!0},htmlRegion:Ge==="scroll"?"scroll":"visible",_experimental:{dynamicInset:!0}};return{bottomLeft:Object.assign(Object.assign({},Ze),{points:["tl","bl"],offset:[0,4]}),bottomRight:Object.assign(Object.assign({},Ze),{points:["tr","br"],offset:[0,4]}),topLeft:Object.assign(Object.assign({},Ze),{points:["bl","tl"],offset:[0,-4]}),topRight:Object.assign(Object.assign({},Ze),{points:["br","tr"],offset:[0,-4]})}};function et(Ge,ke){return Ge||He(ke)}},84443:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return He}});function He(et,Ge){return Ge!==void 0?Ge:et!==null}},66339:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return Te}});var He=Be(40001),et=Be(19248),Ge=Be(99267),ke=Be(84105),Ze=Be(58617),Oe=Be(47472),we=Be(59301);function Te(Re){let{suffixIcon:Ie,clearIcon:be,menuItemSelectedIcon:Pe,removeIcon:je,loading:ye,multiple:ie,hasFeedback:ae,prefixCls:fe,showSuffixIcon:de,feedbackIcon:ve,showArrow:xe,componentName:he}=Re;const pe=be!=null?be:we.createElement(et.Z,null),Se=Ve=>Ie===null&&!ae&&!xe?null:we.createElement(we.Fragment,null,de!==!1&&Ve,ae&&ve);let Ne=null;if(Ie!==void 0)Ne=Se(Ie);else if(ye)Ne=Se(we.createElement(Ze.Z,{spin:!0}));else{const Ve=`${fe}-suffix`;Ne=Je=>{let{open:tt,showSearch:gt}=Je;return Se(tt&>?we.createElement(Oe.Z,{className:Ve}):we.createElement(ke.Z,{className:Ve}))}}let ze=null;Pe!==void 0?ze=Pe:ie?ze=we.createElement(He.Z,null):ze=null;let Ke=null;return je!==void 0?Ke=je:Ke=we.createElement(Ge.Z,null),{clearIcon:pe,suffixIcon:Ne,itemIcon:ze,removeIcon:Ke}}},61621:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return Bt}});var He=Be(92310),et=Be.n(He),Ge=Be(59301),ke=Be(36355),Ze=Be(2738),we=Ot=>{const{prefixCls:ut,className:It,style:nn,size:Pt,shape:Vt}=Ot,on=et()({[`${ut}-lg`]:Pt==="large",[`${ut}-sm`]:Pt==="small"}),$t=et()({[`${ut}-circle`]:Vt==="circle",[`${ut}-square`]:Vt==="square",[`${ut}-round`]:Vt==="round"}),Jt=Ge.useMemo(()=>typeof Pt=="number"?{width:Pt,height:Pt,lineHeight:`${Pt}px`}:{},[Pt]);return Ge.createElement("span",{className:et()(ut,on,$t,It),style:Object.assign(Object.assign({},Jt),nn)})},Te=Be(93083),Re=Be(83116),Ie=Be(37613);const be=new Te.Keyframes("ant-skeleton-loading",{"0%":{backgroundPosition:"100% 50%"},"100%":{backgroundPosition:"0 50%"}}),Pe=Ot=>({height:Ot,lineHeight:`${Ot}px`}),je=Ot=>Object.assign({width:Ot},Pe(Ot)),ye=Ot=>({background:Ot.skeletonLoadingBackground,backgroundSize:"400% 100%",animationName:be,animationDuration:Ot.skeletonLoadingMotionDuration,animationTimingFunction:"ease",animationIterationCount:"infinite"}),ie=Ot=>Object.assign({width:Ot*5,minWidth:Ot*5},Pe(Ot)),ae=Ot=>{const{skeletonAvatarCls:ut,gradientFromColor:It,controlHeight:nn,controlHeightLG:Pt,controlHeightSM:Vt}=Ot;return{[`${ut}`]:Object.assign({display:"inline-block",verticalAlign:"top",background:It},je(nn)),[`${ut}${ut}-circle`]:{borderRadius:"50%"},[`${ut}${ut}-lg`]:Object.assign({},je(Pt)),[`${ut}${ut}-sm`]:Object.assign({},je(Vt))}},fe=Ot=>{const{controlHeight:ut,borderRadiusSM:It,skeletonInputCls:nn,controlHeightLG:Pt,controlHeightSM:Vt,gradientFromColor:on}=Ot;return{[`${nn}`]:Object.assign({display:"inline-block",verticalAlign:"top",background:on,borderRadius:It},ie(ut)),[`${nn}-lg`]:Object.assign({},ie(Pt)),[`${nn}-sm`]:Object.assign({},ie(Vt))}},de=Ot=>Object.assign({width:Ot},Pe(Ot)),ve=Ot=>{const{skeletonImageCls:ut,imageSizeBase:It,gradientFromColor:nn,borderRadiusSM:Pt}=Ot;return{[`${ut}`]:Object.assign(Object.assign({display:"flex",alignItems:"center",justifyContent:"center",verticalAlign:"top",background:nn,borderRadius:Pt},de(It*2)),{[`${ut}-path`]:{fill:"#bfbfbf"},[`${ut}-svg`]:Object.assign(Object.assign({},de(It)),{maxWidth:It*4,maxHeight:It*4}),[`${ut}-svg${ut}-svg-circle`]:{borderRadius:"50%"}}),[`${ut}${ut}-circle`]:{borderRadius:"50%"}}},xe=(Ot,ut,It)=>{const{skeletonButtonCls:nn}=Ot;return{[`${It}${nn}-circle`]:{width:ut,minWidth:ut,borderRadius:"50%"},[`${It}${nn}-round`]:{borderRadius:ut}}},he=Ot=>Object.assign({width:Ot*2,minWidth:Ot*2},Pe(Ot)),pe=Ot=>{const{borderRadiusSM:ut,skeletonButtonCls:It,controlHeight:nn,controlHeightLG:Pt,controlHeightSM:Vt,gradientFromColor:on}=Ot;return Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({[`${It}`]:Object.assign({display:"inline-block",verticalAlign:"top",background:on,borderRadius:ut,width:nn*2,minWidth:nn*2},he(nn))},xe(Ot,nn,It)),{[`${It}-lg`]:Object.assign({},he(Pt))}),xe(Ot,Pt,`${It}-lg`)),{[`${It}-sm`]:Object.assign({},he(Vt))}),xe(Ot,Vt,`${It}-sm`))},Se=Ot=>{const{componentCls:ut,skeletonAvatarCls:It,skeletonTitleCls:nn,skeletonParagraphCls:Pt,skeletonButtonCls:Vt,skeletonInputCls:on,skeletonImageCls:$t,controlHeight:Jt,controlHeightLG:xn,controlHeightSM:Qn,gradientFromColor:rr,padding:Jn,marginSM:mr,borderRadius:Rr,titleHeight:Tn,blockRadius:hr,paragraphLiHeight:or,controlHeightXS:yr,paragraphMarginTop:ti}=Ot;return{[`${ut}`]:{display:"table",width:"100%",[`${ut}-header`]:{display:"table-cell",paddingInlineEnd:Jn,verticalAlign:"top",[`${It}`]:Object.assign({display:"inline-block",verticalAlign:"top",background:rr},je(Jt)),[`${It}-circle`]:{borderRadius:"50%"},[`${It}-lg`]:Object.assign({},je(xn)),[`${It}-sm`]:Object.assign({},je(Qn))},[`${ut}-content`]:{display:"table-cell",width:"100%",verticalAlign:"top",[`${nn}`]:{width:"100%",height:Tn,background:rr,borderRadius:hr,[`+ ${Pt}`]:{marginBlockStart:Qn}},[`${Pt}`]:{padding:0,"> li":{width:"100%",height:or,listStyle:"none",background:rr,borderRadius:hr,"+ li":{marginBlockStart:yr}}},[`${Pt}> li:last-child:not(:first-child):not(:nth-child(2))`]:{width:"61%"}},[`&-round ${ut}-content`]:{[`${nn}, ${Pt} > li`]:{borderRadius:Rr}}},[`${ut}-with-avatar ${ut}-content`]:{[`${nn}`]:{marginBlockStart:mr,[`+ ${Pt}`]:{marginBlockStart:ti}}},[`${ut}${ut}-element`]:Object.assign(Object.assign(Object.assign(Object.assign({display:"inline-block",width:"auto"},pe(Ot)),ae(Ot)),fe(Ot)),ve(Ot)),[`${ut}${ut}-block`]:{width:"100%",[`${Vt}`]:{width:"100%"},[`${on}`]:{width:"100%"}},[`${ut}${ut}-active`]:{[` ${nn}, ${Pt} > li, ${It}, ${Vt}, ${on}, ${$t} `]:Object.assign({},ye(Ot))}}};var Ne=(0,Re.Z)("Skeleton",Ot=>{const{componentCls:ut}=Ot,It=(0,Ie.TS)(Ot,{skeletonAvatarCls:`${ut}-avatar`,skeletonTitleCls:`${ut}-title`,skeletonParagraphCls:`${ut}-paragraph`,skeletonButtonCls:`${ut}-button`,skeletonInputCls:`${ut}-input`,skeletonImageCls:`${ut}-image`,imageSizeBase:Ot.controlHeight*1.5,borderRadius:100,skeletonLoadingBackground:`linear-gradient(90deg, ${Ot.gradientFromColor} 25%, ${Ot.gradientToColor} 37%, ${Ot.gradientFromColor} 63%)`,skeletonLoadingMotionDuration:"1.4s"});return[Se(It)]},Ot=>{const{colorFillContent:ut,colorFill:It}=Ot,nn=ut,Pt=It;return{color:nn,colorGradientEnd:Pt,gradientFromColor:nn,gradientToColor:Pt,titleHeight:Ot.controlHeight/2,blockRadius:Ot.borderRadiusSM,paragraphMarginTop:Ot.marginLG+Ot.marginXXS,paragraphLiHeight:Ot.controlHeight/2}},{deprecatedTokens:[["color","gradientFromColor"],["colorGradientEnd","gradientToColor"]]}),Ke=Ot=>{const{prefixCls:ut,className:It,rootClassName:nn,active:Pt,shape:Vt="circle",size:on="default"}=Ot,{getPrefixCls:$t}=Ge.useContext(ke.E_),Jt=$t("skeleton",ut),[xn,Qn]=Ne(Jt),rr=(0,Ze.Z)(Ot,["prefixCls","className"]),Jn=et()(Jt,`${Jt}-element`,{[`${Jt}-active`]:Pt},It,nn,Qn);return xn(Ge.createElement("div",{className:Jn},Ge.createElement(we,Object.assign({prefixCls:`${Jt}-avatar`,shape:Vt,size:on},rr))))},Je=Ot=>{const{prefixCls:ut,className:It,rootClassName:nn,active:Pt,block:Vt=!1,size:on="default"}=Ot,{getPrefixCls:$t}=Ge.useContext(ke.E_),Jt=$t("skeleton",ut),[xn,Qn]=Ne(Jt),rr=(0,Ze.Z)(Ot,["prefixCls"]),Jn=et()(Jt,`${Jt}-element`,{[`${Jt}-active`]:Pt,[`${Jt}-block`]:Vt},It,nn,Qn);return xn(Ge.createElement("div",{className:Jn},Ge.createElement(we,Object.assign({prefixCls:`${Jt}-button`,size:on},rr))))};const tt="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 st=Ot=>{const{prefixCls:ut,className:It,rootClassName:nn,style:Pt,active:Vt}=Ot,{getPrefixCls:on}=Ge.useContext(ke.E_),$t=on("skeleton",ut),[Jt,xn]=Ne($t),Qn=et()($t,`${$t}-element`,{[`${$t}-active`]:Vt},It,nn,xn);return Jt(Ge.createElement("div",{className:Qn},Ge.createElement("div",{className:et()(`${$t}-image`,It),style:Pt},Ge.createElement("svg",{viewBox:"0 0 1098 1024",xmlns:"http://www.w3.org/2000/svg",className:`${$t}-image-svg`},Ge.createElement("path",{d:tt,className:`${$t}-image-path`})))))},At=Ot=>{const{prefixCls:ut,className:It,rootClassName:nn,active:Pt,block:Vt,size:on="default"}=Ot,{getPrefixCls:$t}=Ge.useContext(ke.E_),Jt=$t("skeleton",ut),[xn,Qn]=Ne(Jt),rr=(0,Ze.Z)(Ot,["prefixCls"]),Jn=et()(Jt,`${Jt}-element`,{[`${Jt}-active`]:Pt,[`${Jt}-block`]:Vt},It,nn,Qn);return xn(Ge.createElement("div",{className:Jn},Ge.createElement(we,Object.assign({prefixCls:`${Jt}-input`,size:on},rr))))},vt=Be(92413),Tt={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"},bt=Tt,Et=Be(7657),lt=function(ut,It){return Ge.createElement(Et.Z,(0,vt.Z)({},ut,{ref:It,icon:bt}))},Nt=Ge.forwardRef(lt),Zt=Nt,Ft=Ot=>{const{prefixCls:ut,className:It,rootClassName:nn,style:Pt,active:Vt,children:on}=Ot,{getPrefixCls:$t}=Ge.useContext(ke.E_),Jt=$t("skeleton",ut),[xn,Qn]=Ne(Jt),rr=et()(Jt,`${Jt}-element`,{[`${Jt}-active`]:Vt},Qn,It,nn),Jn=on!=null?on:Ge.createElement(Zt,null);return xn(Ge.createElement("div",{className:rr},Ge.createElement("div",{className:et()(`${Jt}-image`,It),style:Pt},Jn)))},Yt=Be(26407),Dn=Ot=>{const ut=$t=>{const{width:Jt,rows:xn=2}=Ot;if(Array.isArray(Jt))return Jt[$t];if(xn-1===$t)return Jt},{prefixCls:It,className:nn,style:Pt,rows:Vt}=Ot,on=(0,Yt.Z)(Array(Vt)).map(($t,Jt)=>Ge.createElement("li",{key:Jt,style:{width:ut(Jt)}}));return Ge.createElement("ul",{className:et()(It,nn),style:Pt},on)},Zn=Ot=>{let{prefixCls:ut,className:It,width:nn,style:Pt}=Ot;return Ge.createElement("h3",{className:et()(ut,It),style:Object.assign({width:nn},Pt)})};function ln(Ot){return Ot&&typeof Ot=="object"?Ot:{}}function Gn(Ot,ut){return Ot&&!ut?{size:"large",shape:"square"}:{size:"large",shape:"circle"}}function Wn(Ot,ut){return!Ot&&ut?{width:"38%"}:Ot&&ut?{width:"50%"}:{}}function qt(Ot,ut){const It={};return(!Ot||!ut)&&(It.width="61%"),!Ot&&ut?It.rows=3:It.rows=2,It}const xt=Ot=>{const{prefixCls:ut,loading:It,className:nn,rootClassName:Pt,style:Vt,children:on,avatar:$t=!1,title:Jt=!0,paragraph:xn=!0,active:Qn,round:rr}=Ot,{getPrefixCls:Jn,direction:mr,skeleton:Rr}=Ge.useContext(ke.E_),Tn=Jn("skeleton",ut),[hr,or]=Ne(Tn);if(It||!("loading"in Ot)){const yr=!!$t,ti=!!Jt,mi=!!xn;let di;if(yr){const Co=Object.assign(Object.assign({prefixCls:`${Tn}-avatar`},Gn(ti,mi)),ln($t));di=Ge.createElement("div",{className:`${Tn}-header`},Ge.createElement(we,Object.assign({},Co)))}let Pi;if(ti||mi){let Co;if(ti){const xo=Object.assign(Object.assign({prefixCls:`${Tn}-title`},Wn(yr,mi)),ln(Jt));Co=Ge.createElement(Zn,Object.assign({},xo))}let To;if(mi){const xo=Object.assign(Object.assign({prefixCls:`${Tn}-paragraph`},qt(yr,ti)),ln(xn));To=Ge.createElement(Dn,Object.assign({},xo))}Pi=Ge.createElement("div",{className:`${Tn}-content`},Co,To)}const vo=et()(Tn,{[`${Tn}-with-avatar`]:yr,[`${Tn}-active`]:Qn,[`${Tn}-rtl`]:mr==="rtl",[`${Tn}-round`]:rr},Rr==null?void 0:Rr.className,nn,Pt,or);return hr(Ge.createElement("div",{className:vo,style:Object.assign(Object.assign({},Rr==null?void 0:Rr.style),Vt)},di,Pi))}return typeof on!="undefined"?on:null};xt.Button=Je,xt.Avatar=Ke,xt.Input=At,xt.Image=st,xt.Node=Ft;var ft=xt,Bt=ft},81327:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return fe}});var He=Be(59301),et=Be(92310),Ge=Be.n(et),ke=Be(11592),Ze=Be(36355),Oe=Be(33234);const we=He.createContext({latestIndex:0}),Te=we.Provider;var Ie=de=>{let{className:ve,index:xe,children:he,split:pe,style:Se}=de;const{latestIndex:Ne}=He.useContext(we);return he==null?null:He.createElement(He.Fragment,null,He.createElement("div",{className:ve,style:Se},he),xe{var xe,he;const{getPrefixCls:pe,space:Se,direction:Ne}=He.useContext(Ze.E_),{size:ze=(Se==null?void 0:Se.size)||"small",align:Ke,className:Ve,rootClassName:Je,children:tt,direction:gt="horizontal",prefixCls:st,split:St,style:At,wrap:vt=!1,classNames:Tt,styles:bt}=de,Et=ye(de,["size","align","className","rootClassName","children","direction","prefixCls","split","style","wrap","classNames","styles"]),[lt,Nt]=Array.isArray(ze)?ze:[ze,ze],Zt=Pe(Nt),Ut=Pe(lt),Ft=je(Nt),Yt=je(lt),dn=(0,ke.Z)(tt,{keepEmpty:!0}),Dn=Ke===void 0&>==="horizontal"?"center":Ke,Rn=pe("space",st),[Zn,ln]=(0,be.Z)(Rn),Gn=Ge()(Rn,Se==null?void 0:Se.className,ln,`${Rn}-${gt}`,{[`${Rn}-rtl`]:Ne==="rtl",[`${Rn}-align-${Dn}`]:Dn,[`${Rn}-gap-row-${Nt}`]:Zt,[`${Rn}-gap-col-${lt}`]:Ut},Ve,Je),Wn=Ge()(`${Rn}-item`,(xe=Tt==null?void 0:Tt.item)!==null&&xe!==void 0?xe:(he=Se==null?void 0:Se.classNames)===null||he===void 0?void 0:he.item);let qt=0;const xt=dn.map((Ot,ut)=>{var It,nn;Ot!=null&&(qt=ut);const Pt=Ot&&Ot.key||`${Wn}-${ut}`;return He.createElement(Ie,{className:Wn,key:Pt,index:ut,split:St,style:(It=bt==null?void 0:bt.item)!==null&&It!==void 0?It:(nn=Se==null?void 0:Se.styles)===null||nn===void 0?void 0:nn.item},Ot)}),ft=He.useMemo(()=>({latestIndex:qt}),[qt]);if(dn.length===0)return null;const Bt={};return vt&&(Bt.flexWrap="wrap"),!Ut&&Yt&&(Bt.columnGap=lt),!Zt&&Ft&&(Bt.rowGap=Nt),Zn(He.createElement("div",Object.assign({ref:ve,className:Gn,style:Object.assign(Object.assign(Object.assign({},Bt),Se==null?void 0:Se.style),At)},Et),He.createElement(Te,{value:ft},xt)))});ae.Compact=Oe.ZP;var fe=ae},31797:function(sn,an,Be){"use strict";Be.d(an,{default:function(){return Ne}});var He=Be(59301),et=Be(56762),Ge=Be(92343),ke=Be(92310),Ze=Be.n(ke),Oe=Be(36355),we=Be(61621),Re=ze=>{const{value:Ke,formatter:Ve,precision:Je,decimalSeparator:tt,groupSeparator:gt="",prefixCls:st}=ze;let St;if(typeof Ve=="function")St=Ve(Ke);else{const At=String(Ke),vt=At.match(/^(-?)(\d*)(\.(\d+))?$/);if(!vt||At==="-")St=At;else{const Tt=vt[1];let bt=vt[2]||"0",Et=vt[4]||"";bt=bt.replace(/\B(?=(\d{3})+(?!\d))/g,gt),typeof Je=="number"&&(Et=Et.padEnd(Je,"0").slice(0,Je>0?Je:0)),Et&&(Et=`${tt}${Et}`),St=[He.createElement("span",{key:"int",className:`${st}-content-value-int`},Tt,bt),Et&&He.createElement("span",{key:"decimal",className:`${st}-content-value-decimal`},Et)]}}return He.createElement("span",{className:`${st}-content-value`},St)},Ie=Be(17313),be=Be(83116),Pe=Be(37613);const je=ze=>{const{componentCls:Ke,marginXXS:Ve,padding:Je,colorTextDescription:tt,titleFontSize:gt,colorTextHeading:st,contentFontSize:St,fontFamily:At}=ze;return{[`${Ke}`]:Object.assign(Object.assign({},(0,Ie.Wf)(ze)),{[`${Ke}-title`]:{marginBottom:Ve,color:tt,fontSize:gt},[`${Ke}-skeleton`]:{paddingTop:Je},[`${Ke}-content`]:{color:st,fontSize:St,fontFamily:At,[`${Ke}-content-value`]:{display:"inline-block",direction:"ltr"},[`${Ke}-content-prefix, ${Ke}-content-suffix`]:{display:"inline-block"},[`${Ke}-content-prefix`]:{marginInlineEnd:Ve},[`${Ke}-content-suffix`]:{marginInlineStart:Ve}}})}};var ye=(0,be.Z)("Statistic",ze=>{const Ke=(0,Pe.TS)(ze,{});return[je(Ke)]},ze=>{const{fontSizeHeading3:Ke,fontSize:Ve}=ze;return{titleFontSize:Ve,contentFontSize:Ke}}),ae=ze=>{const{prefixCls:Ke,className:Ve,rootClassName:Je,style:tt,valueStyle:gt,value:st=0,title:St,valueRender:At,prefix:vt,suffix:Tt,loading:bt=!1,onMouseEnter:Et,onMouseLeave:lt,decimalSeparator:Nt=".",groupSeparator:Zt=","}=ze,{getPrefixCls:Ut,direction:Ft,statistic:Yt}=He.useContext(Oe.E_),dn=Ut("statistic",Ke),[Dn,Rn]=ye(dn),Zn=He.createElement(Re,Object.assign({decimalSeparator:Nt,groupSeparator:Zt,prefixCls:dn},ze,{value:st})),ln=Ze()(dn,{[`${dn}-rtl`]:Ft==="rtl"},Yt==null?void 0:Yt.className,Ve,Je,Rn);return Dn(He.createElement("div",{className:ln,style:Object.assign(Object.assign({},Yt==null?void 0:Yt.style),tt),onMouseEnter:Et,onMouseLeave:lt},St&&He.createElement("div",{className:`${dn}-title`},St),He.createElement(we.Z,{paragraph:!1,loading:bt,className:`${dn}-skeleton`},He.createElement("div",{style:gt,className:`${dn}-content`},vt&&He.createElement("span",{className:`${dn}-content-prefix`},vt),At?At(Zn):Zn,Tt&&He.createElement("span",{className:`${dn}-content-suffix`},Tt)))))};const fe=[["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 de(ze,Ke){let Ve=ze;const Je=/\[[^\]]*]/g,tt=(Ke.match(Je)||[]).map(At=>At.slice(1,-1)),gt=Ke.replace(Je,"[]"),st=fe.reduce((At,vt)=>{let[Tt,bt]=vt;if(At.includes(Tt)){const Et=Math.floor(Ve/bt);return Ve-=Et*bt,At.replace(new RegExp(`${Tt}+`,"g"),lt=>{const Nt=lt.length;return Et.toString().padStart(Nt,"0")})}return At},gt);let St=0;return st.replace(Je,()=>{const At=tt[St];return St+=1,At})}function ve(ze,Ke){const{format:Ve=""}=Ke,Je=new Date(ze).getTime(),tt=Date.now(),gt=Math.max(Je-tt,0);return de(gt,Ve)}const xe=1e3/30;function he(ze){return new Date(ze).getTime()}const pe=ze=>{const{value:Ke,format:Ve="HH:mm:ss",onChange:Je,onFinish:tt}=ze,gt=(0,et.Z)(),st=He.useRef(null),St=()=>{tt==null||tt(),st.current&&(clearInterval(st.current),st.current=null)},At=()=>{const bt=he(Ke);bt>=Date.now()&&(st.current=setInterval(()=>{gt(),Je==null||Je(bt-Date.now()),bt(At(),()=>{st.current&&(clearInterval(st.current),st.current=null)}),[Ke]);const vt=(bt,Et)=>ve(bt,Object.assign(Object.assign({},Et),{format:Ve})),Tt=bt=>(0,Ge.Tm)(bt,{title:void 0});return He.createElement(ae,Object.assign({},ze,{valueRender:Tt,formatter:vt}))};var Se=He.memo(pe);ae.Countdown=Se;var Ne=ae},15969:function(sn,an,Be){"use strict";Be.d(an,{N:function(){return He}});const He=et=>({color:et.colorLink,textDecoration:"none",outline:"none",cursor:"pointer",transition:`color ${et.motionDurationSlow}`,"&:focus, &:hover":{color:et.colorLinkHover},"&:active":{color:et.colorLinkActive}})},78673:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return gt}});var He=Be(58617),et=Be(92310),Ge=Be.n(et),ke=Be(92413),Ze=Be(400),Oe=Be(33606),we=Be(37061),Te=Be(59301),Re=Be(18929),Ie=Be(10228),be=["prefixCls","className","checked","defaultChecked","disabled","loadingIcon","checkedChildren","unCheckedChildren","onClick","onChange","onKeyDown"],Pe=Te.forwardRef(function(st,St){var At,vt=st.prefixCls,Tt=vt===void 0?"rc-switch":vt,bt=st.className,Et=st.checked,lt=st.defaultChecked,Nt=st.disabled,Zt=st.loadingIcon,Ut=st.checkedChildren,Ft=st.unCheckedChildren,Yt=st.onClick,dn=st.onChange,Dn=st.onKeyDown,Rn=(0,we.Z)(st,be),Zn=(0,Re.Z)(!1,{value:Et,defaultValue:lt}),ln=(0,Oe.Z)(Zn,2),Gn=ln[0],Wn=ln[1];function qt(Ot,ut){var It=Gn;return Nt||(It=Ot,Wn(It),dn==null||dn(It,ut)),It}function xt(Ot){Ot.which===Ie.Z.LEFT?qt(!1,Ot):Ot.which===Ie.Z.RIGHT&&qt(!0,Ot),Dn==null||Dn(Ot)}function ft(Ot){var ut=qt(!Gn,Ot);Yt==null||Yt(ut,Ot)}var Bt=Ge()(Tt,bt,(At={},(0,Ze.Z)(At,"".concat(Tt,"-checked"),Gn),(0,Ze.Z)(At,"".concat(Tt,"-disabled"),Nt),At));return Te.createElement("button",(0,ke.Z)({},Rn,{type:"button",role:"switch","aria-checked":Gn,disabled:Nt,className:Bt,ref:St,onKeyDown:xt,onClick:ft}),Zt,Te.createElement("span",{className:"".concat(Tt,"-inner")},Te.createElement("span",{className:"".concat(Tt,"-inner-checked")},Ut),Te.createElement("span",{className:"".concat(Tt,"-inner-unchecked")},Ft)))});Pe.displayName="Switch";var je=Pe,ye=Be(14088),ie=Be(36355),ae=Be(1684),fe=Be(19716),de=Be(64993),ve=Be(17313),xe=Be(83116),he=Be(37613);const pe=st=>{const{componentCls:St,trackHeightSM:At,trackPadding:vt,trackMinWidthSM:Tt,innerMinMarginSM:bt,innerMaxMarginSM:Et,handleSizeSM:lt}=st,Nt=`${St}-inner`;return{[St]:{[`&${St}-small`]:{minWidth:Tt,height:At,lineHeight:`${At}px`,[`${St}-inner`]:{paddingInlineStart:Et,paddingInlineEnd:bt,[`${Nt}-checked`]:{marginInlineStart:`calc(-100% + ${lt+vt*2}px - ${Et*2}px)`,marginInlineEnd:`calc(100% - ${lt+vt*2}px + ${Et*2}px)`},[`${Nt}-unchecked`]:{marginTop:-At,marginInlineStart:0,marginInlineEnd:0}},[`${St}-handle`]:{width:lt,height:lt},[`${St}-loading-icon`]:{top:(lt-st.switchLoadingIconSize)/2,fontSize:st.switchLoadingIconSize},[`&${St}-checked`]:{[`${St}-inner`]:{paddingInlineStart:bt,paddingInlineEnd:Et,[`${Nt}-checked`]:{marginInlineStart:0,marginInlineEnd:0},[`${Nt}-unchecked`]:{marginInlineStart:`calc(100% - ${lt+vt*2}px + ${Et*2}px)`,marginInlineEnd:`calc(-100% + ${lt+vt*2}px - ${Et*2}px)`}},[`${St}-handle`]:{insetInlineStart:`calc(100% - ${lt+vt}px)`}},[`&:not(${St}-disabled):active`]:{[`&:not(${St}-checked) ${Nt}`]:{[`${Nt}-unchecked`]:{marginInlineStart:st.marginXXS/2,marginInlineEnd:-st.marginXXS/2}},[`&${St}-checked ${Nt}`]:{[`${Nt}-checked`]:{marginInlineStart:-st.marginXXS/2,marginInlineEnd:st.marginXXS/2}}}}}}},Se=st=>{const{componentCls:St,handleSize:At}=st;return{[St]:{[`${St}-loading-icon${st.iconCls}`]:{position:"relative",top:(At-st.fontSize)/2,color:st.switchLoadingIconColor,verticalAlign:"top"},[`&${St}-checked ${St}-loading-icon`]:{color:st.switchColor}}}},Ne=st=>{const{componentCls:St,motion:At,trackPadding:vt,handleBg:Tt,handleShadow:bt,handleSize:Et}=st,lt=`${St}-handle`;return{[St]:{[lt]:{position:"absolute",top:vt,insetInlineStart:vt,width:Et,height:Et,transition:`all ${st.switchDuration} ease-in-out`,"&::before":{position:"absolute",top:0,insetInlineEnd:0,bottom:0,insetInlineStart:0,backgroundColor:Tt,borderRadius:Et/2,boxShadow:bt,transition:`all ${st.switchDuration} ease-in-out`,content:'""'}},[`&${St}-checked ${lt}`]:{insetInlineStart:`calc(100% - ${Et+vt}px)`},[`&:not(${St}-disabled):active`]:At?{[`${lt}::before`]:{insetInlineEnd:st.switchHandleActiveInset,insetInlineStart:0},[`&${St}-checked ${lt}::before`]:{insetInlineEnd:0,insetInlineStart:st.switchHandleActiveInset}}:{}}}},ze=st=>{const{componentCls:St,trackHeight:At,trackPadding:vt,innerMinMargin:Tt,innerMaxMargin:bt,handleSize:Et}=st,lt=`${St}-inner`;return{[St]:{[lt]:{display:"block",overflow:"hidden",borderRadius:100,height:"100%",paddingInlineStart:bt,paddingInlineEnd:Tt,transition:`padding-inline-start ${st.switchDuration} ease-in-out, padding-inline-end ${st.switchDuration} ease-in-out`,[`${lt}-checked, ${lt}-unchecked`]:{display:"block",color:st.colorTextLightSolid,fontSize:st.fontSizeSM,transition:`margin-inline-start ${st.switchDuration} ease-in-out, margin-inline-end ${st.switchDuration} ease-in-out`,pointerEvents:"none"},[`${lt}-checked`]:{marginInlineStart:`calc(-100% + ${Et+vt*2}px - ${bt*2}px)`,marginInlineEnd:`calc(100% - ${Et+vt*2}px + ${bt*2}px)`},[`${lt}-unchecked`]:{marginTop:-At,marginInlineStart:0,marginInlineEnd:0}},[`&${St}-checked ${lt}`]:{paddingInlineStart:Tt,paddingInlineEnd:bt,[`${lt}-checked`]:{marginInlineStart:0,marginInlineEnd:0},[`${lt}-unchecked`]:{marginInlineStart:`calc(100% - ${Et+vt*2}px + ${bt*2}px)`,marginInlineEnd:`calc(-100% + ${Et+vt*2}px - ${bt*2}px)`}},[`&:not(${St}-disabled):active`]:{[`&:not(${St}-checked) ${lt}`]:{[`${lt}-unchecked`]:{marginInlineStart:vt*2,marginInlineEnd:-vt*2}},[`&${St}-checked ${lt}`]:{[`${lt}-checked`]:{marginInlineStart:-vt*2,marginInlineEnd:vt*2}}}}}},Ke=st=>{const{componentCls:St,trackHeight:At,trackMinWidth:vt}=st;return{[St]:Object.assign(Object.assign(Object.assign(Object.assign({},(0,ve.Wf)(st)),{position:"relative",display:"inline-block",boxSizing:"border-box",minWidth:vt,height:At,lineHeight:`${At}px`,verticalAlign:"middle",background:st.colorTextQuaternary,border:"0",borderRadius:100,cursor:"pointer",transition:`all ${st.motionDurationMid}`,userSelect:"none",[`&:hover:not(${St}-disabled)`]:{background:st.colorTextTertiary}}),(0,ve.Qy)(st)),{[`&${St}-checked`]:{background:st.switchColor,[`&:hover:not(${St}-disabled)`]:{background:st.colorPrimaryHover}},[`&${St}-loading, &${St}-disabled`]:{cursor:"not-allowed",opacity:st.switchDisabledOpacity,"*":{boxShadow:"none",cursor:"not-allowed"}},[`&${St}-rtl`]:{direction:"rtl"}})}};var Ve=(0,xe.Z)("Switch",st=>{const St=(0,he.TS)(st,{switchDuration:st.motionDurationMid,switchColor:st.colorPrimary,switchDisabledOpacity:st.opacityLoading,switchLoadingIconSize:st.fontSizeIcon*.75,switchLoadingIconColor:`rgba(0, 0, 0, ${st.opacityLoading})`,switchHandleActiveInset:"-30%"});return[Ke(St),ze(St),Ne(St),Se(St),pe(St)]},st=>{const{fontSize:St,lineHeight:At,controlHeight:vt,colorWhite:Tt}=st,bt=St*At,Et=vt/2,lt=2,Nt=bt-lt*2,Zt=Et-lt*2;return{trackHeight:bt,trackHeightSM:Et,trackMinWidth:Nt*2+lt*4,trackMinWidthSM:Zt*2+lt*2,trackPadding:lt,handleBg:Tt,handleSize:Nt,handleSizeSM:Zt,handleShadow:`0 2px 4px 0 ${new de.C("#00230b").setAlpha(.2).toRgbString()}`,innerMinMargin:Nt/2,innerMaxMargin:Nt+lt+lt*2,innerMinMarginSM:Zt/2,innerMaxMarginSM:Zt+lt+lt*2}}),Je=function(st,St){var At={};for(var vt in st)Object.prototype.hasOwnProperty.call(st,vt)&&St.indexOf(vt)<0&&(At[vt]=st[vt]);if(st!=null&&typeof Object.getOwnPropertySymbols=="function")for(var Tt=0,vt=Object.getOwnPropertySymbols(st);Tt{const{prefixCls:At,size:vt,disabled:Tt,loading:bt,className:Et,rootClassName:lt,style:Nt}=st,Zt=Je(st,["prefixCls","size","disabled","loading","className","rootClassName","style"]),{getPrefixCls:Ut,direction:Ft,switch:Yt}=Te.useContext(ie.E_),dn=Te.useContext(ae.Z),Dn=(Tt!=null?Tt:dn)||bt,Rn=Ut("switch",At),Zn=Te.createElement("div",{className:`${Rn}-handle`},bt&&Te.createElement(He.Z,{className:`${Rn}-loading-icon`})),[ln,Gn]=Ve(Rn),Wn=(0,fe.Z)(vt),qt=Ge()(Yt==null?void 0:Yt.className,{[`${Rn}-small`]:Wn==="small",[`${Rn}-loading`]:bt,[`${Rn}-rtl`]:Ft==="rtl"},Et,lt,Gn),xt=Object.assign(Object.assign({},Yt==null?void 0:Yt.style),Nt);return ln(Te.createElement(ye.Z,{component:"Switch"},Te.createElement(je,Object.assign({},Zt,{prefixCls:Rn,className:qt,style:xt,disabled:Dn,ref:St,loadingIcon:Zn}))))});tt.__ANT_SWITCH=!0;var gt=tt},1710:function(sn,an,Be){"use strict";Be.d(an,{default:function(){return tc}});var He={},et="rc-table-internal-hook",Ge=Be(33606),ke=Be(6089),Ze=Be(34280),Oe=Be(13697),we=Be(59301),Te=Be(4676);function Re(Cn){var On=we.createContext(void 0),sr=function(kr){var Lr=kr.value,ai=kr.children,ni=we.useRef(Lr);ni.current=Lr;var ri=we.useState(function(){return{getValue:function(){return ni.current},listeners:new Set}}),Ni=(0,Ge.Z)(ri,1),yi=Ni[0];return(0,Ze.Z)(function(){(0,Te.unstable_batchedUpdates)(function(){yi.listeners.forEach(function(Ii){Ii(Lr)})})},[Lr]),we.createElement(On.Provider,{value:yi},ai)};return{Context:On,Provider:sr,defaultValue:Cn}}function Ie(Cn,On){var sr=(0,ke.Z)(typeof On=="function"?On:function(Ii){if(On===void 0)return Ii;if(!Array.isArray(On))return Ii[On];var co={};return On.forEach(function(uo){co[uo]=Ii[uo]}),co}),pr=we.useContext(Cn==null?void 0:Cn.Context),kr=pr||{},Lr=kr.listeners,ai=kr.getValue,ni=we.useRef();ni.current=sr(pr?ai():Cn==null?void 0:Cn.defaultValue);var ri=we.useState({}),Ni=(0,Ge.Z)(ri,2),yi=Ni[1];return(0,Ze.Z)(function(){if(!pr)return;function Ii(co){var uo=sr(co);(0,Oe.Z)(ni.current,uo,!0)||yi({})}return Lr.add(Ii),function(){Lr.delete(Ii)}},[pr]),ni.current}var be=Be(92413),Pe=Be(8654);function je(){var Cn=we.createContext(null);function On(){return we.useContext(Cn)}function sr(kr,Lr){var ai=(0,Pe.Yr)(kr),ni=function(Ni,yi){var Ii=ai?{ref:yi}:{},co=we.useRef(0),uo=we.useRef(Ni),gi=On();return gi!==null?we.createElement(kr,(0,be.Z)({},Ni,Ii)):((!Lr||Lr(uo.current,Ni))&&(co.current+=1),uo.current=Ni,we.createElement(Cn.Provider,{value:co.current},we.createElement(kr,(0,be.Z)({},Ni,Ii))))};return ai?we.forwardRef(ni):ni}function pr(kr,Lr){var ai=(0,Pe.Yr)(kr),ni=function(Ni,yi){var Ii=ai?{ref:yi}:{};return On(),we.createElement(kr,(0,be.Z)({},Ni,Ii))};return ai?we.memo(we.forwardRef(ni),Lr):we.memo(ni,Lr)}return{makeImmutable:sr,responseImmutable:pr,useImmutableMark:On}}var ye=je(),ie=ye.makeImmutable,ae=ye.responseImmutable,fe=ye.useImmutableMark,de=je(),ve=de.makeImmutable,xe=de.responseImmutable,he=de.useImmutableMark,pe=Re(),Se=pe;function Ne(Cn,On){var sr=we.useRef(0);sr.current+=1;var pr=we.useRef(Cn),kr=[];Object.keys(Cn||{}).map(function(ai){var ni;(Cn==null?void 0:Cn[ai])!==((ni=pr.current)===null||ni===void 0?void 0:ni[ai])&&kr.push(ai)}),pr.current=Cn;var Lr=we.useRef([]);return kr.length&&(Lr.current=kr),we.useDebugValue(sr.current),we.useDebugValue(Lr.current.join(", ")),On&&console.log("".concat(On,":"),sr.current,Lr.current),sr.current}var ze=null,Ke=we.memo(function(){var Cn=Ne();return we.createElement("h1",null,"Render Times: ",Cn)});Ke.displayName="RenderBlock";var Ve=Be(39559),Je=Be(33708),tt=Be(400),gt=Be(92310),st=Be.n(gt),St=Be(80547),At=Be(97938),vt=Be(48736),Tt=we.createContext({renderWithProps:!1}),bt=Tt,Et="RC_TABLE_KEY";function lt(Cn){return Cn==null?[]:Array.isArray(Cn)?Cn:[Cn]}function Nt(Cn){var On=[],sr={};return Cn.forEach(function(pr){for(var kr=pr||{},Lr=kr.key,ai=kr.dataIndex,ni=Lr||lt(ai).join("-")||Et;sr[ni];)ni="".concat(ni,"_next");sr[ni]=!0,On.push(ni)}),On}function Zt(Cn){return Cn!=null}function Ut(Cn){return Cn&&(0,Ve.Z)(Cn)==="object"&&!Array.isArray(Cn)&&!we.isValidElement(Cn)}function Ft(Cn,On,sr,pr,kr,Lr){var ai=we.useContext(bt),ni=he(),ri=(0,St.Z)(function(){if(Zt(pr))return[pr];var Ni=On==null||On===""?[]:Array.isArray(On)?On:[On],yi=(0,At.Z)(Cn,Ni),Ii=yi,co=void 0;if(kr){var uo=kr(yi,Cn,sr);Ut(uo)?(Ii=uo.children,co=uo.props,ai.renderWithProps=!0):Ii=uo}return[Ii,co]},[ni,Cn,pr,On,kr,sr],function(Ni,yi){if(Lr){var Ii=(0,Ge.Z)(Ni,2),co=Ii[1],uo=(0,Ge.Z)(yi,2),gi=uo[1];return Lr(gi,co)}return ai.renderWithProps?!0:!(0,Oe.Z)(Ni,yi,!0)});return ri}function Yt(Cn,On,sr,pr){var kr=Cn+On-1;return Cn<=pr&&kr>=sr}function dn(Cn,On){return Ie(Se,function(sr){var pr=Yt(Cn,On||1,sr.hoverStartRow,sr.hoverEndRow);return[pr,sr.onHover]})}var Dn=function(On){var sr=On.ellipsis,pr=On.rowType,kr=On.children,Lr,ai=sr===!0?{showTitle:!0}:sr;return ai&&(ai.showTitle||pr==="header")&&(typeof kr=="string"||typeof kr=="number"?Lr=kr.toString():we.isValidElement(kr)&&typeof kr.props.children=="string"&&(Lr=kr.props.children)),Lr};function Rn(Cn){var On,sr,pr,kr,Lr,ai,ni,ri,Ni=Cn.component,yi=Cn.children,Ii=Cn.ellipsis,co=Cn.scope,uo=Cn.prefixCls,gi=Cn.className,Ho=Cn.align,io=Cn.record,oa=Cn.render,Jo=Cn.dataIndex,ea=Cn.renderIndex,Qa=Cn.shouldCellUpdate,as=Cn.index,ca=Cn.rowType,Da=Cn.colSpan,ds=Cn.rowSpan,da=Cn.fixLeft,ja=Cn.fixRight,ha=Cn.firstFixLeft,jo=Cn.lastFixLeft,zo=Cn.firstFixRight,Wa=Cn.lastFixRight,ss=Cn.appendNode,hs=Cn.additionalProps,sa=hs===void 0?{}:hs,ht=Cn.isSticky,Dt="".concat(uo,"-cell"),_t=Ie(Se,["supportSticky","allColumnsFixedLeft"]),en=_t.supportSticky,pn=_t.allColumnsFixedLeft,yn=Ft(io,Jo,ea,yi,oa,Qa),In=(0,Ge.Z)(yn,2),mn=In[0],Hn=In[1],Un={},ir=typeof da=="number"&&en,Dr=typeof ja=="number"&&en;ir&&(Un.position="sticky",Un.left=da),Dr&&(Un.position="sticky",Un.right=ja);var br=(On=(sr=(pr=Hn==null?void 0:Hn.colSpan)!==null&&pr!==void 0?pr:sa.colSpan)!==null&&sr!==void 0?sr:Da)!==null&&On!==void 0?On:1,Qr=(kr=(Lr=(ai=Hn==null?void 0:Hn.rowSpan)!==null&&ai!==void 0?ai:sa.rowSpan)!==null&&Lr!==void 0?Lr:ds)!==null&&kr!==void 0?kr:1,Hr=dn(as,Qr),Fr=(0,Ge.Z)(Hr,2),Ur=Fr[0],zr=Fr[1],Vr=function(ki){var Fi;io&&zr(as,as+Qr-1),sa==null||(Fi=sa.onMouseEnter)===null||Fi===void 0||Fi.call(sa,ki)},Ti=function(ki){var Fi;io&&zr(-1,-1),sa==null||(Fi=sa.onMouseLeave)===null||Fi===void 0||Fi.call(sa,ki)};if(br===0||Qr===0)return null;var Li=(ni=sa.title)!==null&&ni!==void 0?ni:Dn({rowType:ca,ellipsis:Ii,children:mn}),xi=st()(Dt,gi,(ri={},(0,tt.Z)(ri,"".concat(Dt,"-fix-left"),ir&&en),(0,tt.Z)(ri,"".concat(Dt,"-fix-left-first"),ha&&en),(0,tt.Z)(ri,"".concat(Dt,"-fix-left-last"),jo&&en),(0,tt.Z)(ri,"".concat(Dt,"-fix-left-all"),jo&&pn&&en),(0,tt.Z)(ri,"".concat(Dt,"-fix-right"),Dr&&en),(0,tt.Z)(ri,"".concat(Dt,"-fix-right-first"),zo&&en),(0,tt.Z)(ri,"".concat(Dt,"-fix-right-last"),Wa&&en),(0,tt.Z)(ri,"".concat(Dt,"-ellipsis"),Ii),(0,tt.Z)(ri,"".concat(Dt,"-with-append"),ss),(0,tt.Z)(ri,"".concat(Dt,"-fix-sticky"),(ir||Dr)&&ht&&en),(0,tt.Z)(ri,"".concat(Dt,"-row-hover"),!Hn&&Ur),ri),sa.className,Hn==null?void 0:Hn.className),qr={};Ho&&(qr.textAlign=Ho);var Bo=(0,Je.Z)((0,Je.Z)((0,Je.Z)((0,Je.Z)({},Un),sa.style),qr),Hn==null?void 0:Hn.style),ta=mn;return(0,Ve.Z)(ta)==="object"&&!Array.isArray(ta)&&!we.isValidElement(ta)&&(ta=null),Ii&&(jo||zo)&&(ta=we.createElement("span",{className:"".concat(Dt,"-content")},ta)),we.createElement(Ni,(0,be.Z)({},Hn,sa,{className:xi,style:Bo,title:Li,scope:co,onMouseEnter:Vr,onMouseLeave:Ti,colSpan:br!==1?br:null,rowSpan:Qr!==1?Qr:null}),ss,ta)}var Zn=we.memo(Rn);function ln(Cn,On,sr,pr,kr,Lr){var ai=sr[Cn]||{},ni=sr[On]||{},ri,Ni;ai.fixed==="left"?ri=pr.left[kr==="rtl"?On:Cn]:ni.fixed==="right"&&(Ni=pr.right[kr==="rtl"?Cn:On]);var yi=!1,Ii=!1,co=!1,uo=!1,gi=sr[On+1],Ho=sr[Cn-1],io=!(Lr!=null&&Lr.children);if(kr==="rtl"){if(ri!==void 0){var oa=Ho&&Ho.fixed==="left";uo=!oa&&io}else if(Ni!==void 0){var Jo=gi&&gi.fixed==="right";co=!Jo&&io}}else if(ri!==void 0){var ea=gi&&gi.fixed==="left";yi=!ea&&io}else if(Ni!==void 0){var Qa=Ho&&Ho.fixed==="right";Ii=!Qa&&io}return{fixLeft:ri,fixRight:Ni,lastFixLeft:yi,firstFixRight:Ii,lastFixRight:co,firstFixLeft:uo,isSticky:pr.isSticky}}var Gn=we.createContext({}),Wn=Gn;function qt(Cn){var On=Cn.className,sr=Cn.index,pr=Cn.children,kr=Cn.colSpan,Lr=kr===void 0?1:kr,ai=Cn.rowSpan,ni=Cn.align,ri=Ie(Se,["prefixCls","direction"]),Ni=ri.prefixCls,yi=ri.direction,Ii=we.useContext(Wn),co=Ii.scrollColumnIndex,uo=Ii.stickyOffsets,gi=Ii.flattenColumns,Ho=Ii.columns,io=sr+Lr-1,oa=io+1===co?Lr+1:Lr,Jo=ln(sr,sr+oa-1,gi,uo,yi,Ho==null?void 0:Ho[sr]);return we.createElement(Zn,(0,be.Z)({className:On,index:sr,component:"td",prefixCls:Ni,record:null,dataIndex:null,align:ni,colSpan:oa,rowSpan:ai,render:function(){return pr}},Jo))}var xt=Be(37061),ft=["children"];function Bt(Cn){var On=Cn.children,sr=(0,xt.Z)(Cn,ft);return we.createElement("tr",sr,On)}function Ot(Cn){var On=Cn.children;return On}Ot.Row=Bt,Ot.Cell=qt;var ut=Ot;function It(Cn){var On=Cn.children,sr=Cn.stickyOffsets,pr=Cn.flattenColumns,kr=Cn.columns,Lr=Ie(Se,"prefixCls"),ai=pr.length-1,ni=pr[ai],ri=we.useMemo(function(){return{stickyOffsets:sr,flattenColumns:pr,scrollColumnIndex:ni!=null&&ni.scrollbar?ai:null,columns:kr}},[ni,pr,ai,sr,kr]);return we.createElement(Wn.Provider,{value:ri},we.createElement("tfoot",{className:"".concat(Lr,"-summary")},On))}var nn=xe(It),Pt=ut,Vt=Be(70425),on=Be(29301),$t=Be(29194),Jt=Be(24514),xn=Be(75152),Qn=Be(26112);function rr(Cn,On,sr,pr,kr,Lr,ai){Cn.push({record:On,indent:sr,index:ai});var ni=Lr(On),ri=kr==null?void 0:kr.has(ni);if(On&&Array.isArray(On[pr])&&ri)for(var Ni=0;Ni1?ha-1:0),zo=1;zo=0;ni-=1){var ri=On[ni],Ni=sr&&sr[ni],yi=Ni&&Ni[Co];if(ri||yi||ai){var Ii=yi||{},co=Ii.columnType,uo=(0,xt.Z)(Ii,xo);kr.unshift(we.createElement("col",(0,be.Z)({key:ni,style:{width:ri}},uo))),ai=!0}}return we.createElement("colgroup",null,kr)}var xa=ma,_i=Be(26407),ko=["className","noData","columns","flattenColumns","colWidths","columCount","stickyOffsets","direction","fixHeader","stickyTopOffset","stickyBottomOffset","stickyClassName","onScroll","maxContentScroll","children"];function ro(Cn,On){return(0,we.useMemo)(function(){for(var sr=[],pr=0;pr1?"colgroup":"col":null,ellipsis:io.ellipsis,align:io.align,component:io.title?Lr:ai,prefixCls:yi,key:uo[Ho]},oa,{additionalProps:Jo,rowType:"header"}))}))}Bi.displayName="HeaderRow";var _r=Bi;function pi(Cn){var On=[];function sr(ai,ni){var ri=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;On[ri]=On[ri]||[];var Ni=ni,yi=ai.filter(Boolean).map(function(Ii){var co={key:Ii.key,className:Ii.className||"",children:Ii.title,column:Ii,colStart:Ni},uo=1,gi=Ii.children;return gi&&gi.length>0&&(uo=sr(gi,Ni,ri+1).reduce(function(Ho,io){return Ho+io},0),co.hasSubColumns=!0),"colSpan"in Ii&&(uo=Ii.colSpan),"rowSpan"in Ii&&(co.rowSpan=Ii.rowSpan),co.colSpan=uo,co.colEnd=co.colStart+uo-1,On[ri].push(co),Ni+=uo,uo});return yi}sr(Cn,0);for(var pr=On.length,kr=function(ni){On[ni].forEach(function(ri){!("rowSpan"in ri)&&!ri.hasSubColumns&&(ri.rowSpan=pr-ni)})},Lr=0;Lr1&&arguments[1]!==void 0?arguments[1]:"";return typeof On=="number"?On:On.endsWith("%")?Cn*parseFloat(On)/100:null}function Le(Cn,On){return we.useMemo(function(){if(On&&On>0){var sr=0,pr=0;Cn.forEach(function(Ni){var yi=Kt(On,Ni.width);yi?sr+=yi:pr+=1});var kr=On-sr,Lr=pr,ai=kr/pr,ni=0,ri=Cn.map(function(Ni){var yi=(0,Je.Z)({},Ni),Ii=Kt(On,yi.width);if(Ii)yi.width=Ii;else{var co=Math.floor(ai);yi.width=Lr===1?kr:co,kr-=co,Lr-=1}return ni+=yi.width,yi});return[ri,ni]}return[Cn,On]},[Cn,On])}var We=["children"],De=["fixed"];function qe(Cn){return(0,Jr.Z)(Cn).filter(function(On){return we.isValidElement(On)}).map(function(On){var sr=On.key,pr=On.props,kr=pr.children,Lr=(0,xt.Z)(pr,We),ai=(0,Je.Z)({key:sr},Lr);return kr&&(ai.children=qe(kr)),ai})}function dt(Cn){var On=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"key";return Cn.filter(function(sr){return sr&&(0,Ve.Z)(sr)==="object"}).reduce(function(sr,pr,kr){var Lr=pr.fixed,ai=Lr===!0?"left":Lr,ni="".concat(On,"-").concat(kr),ri=pr.children;return ri&&ri.length>0?[].concat((0,_i.Z)(sr),(0,_i.Z)(dt(ri,ni).map(function(Ni){return(0,Je.Z)({fixed:ai},Ni)}))):[].concat((0,_i.Z)(sr),[(0,Je.Z)((0,Je.Z)({key:ni},pr),{},{fixed:ai})])},[])}function Mt(Cn){for(var On=!0,sr=0;sr=0;Lr-=1){var ai=Cn[Lr];if(kr&&ai.fixed!=="right")kr=!1;else if(!kr&&ai.fixed==="right"){warning(!1,"Index ".concat(Lr+1," of `columns` missing `fixed='right'` prop."));break}}}function wt(Cn){return Cn.map(function(On){var sr=On.fixed,pr=(0,xt.Z)(On,De),kr=sr;return sr==="left"?kr="right":sr==="right"&&(kr="left"),(0,Je.Z)({fixed:kr},pr)})}function rn(Cn,On){var sr=Cn.prefixCls,pr=Cn.columns,kr=Cn.children,Lr=Cn.expandable,ai=Cn.expandedKeys,ni=Cn.columnTitle,ri=Cn.getRowKey,Ni=Cn.onTriggerExpand,yi=Cn.expandIcon,Ii=Cn.rowExpandable,co=Cn.expandIconColumnIndex,uo=Cn.direction,gi=Cn.expandRowByClick,Ho=Cn.columnWidth,io=Cn.fixed,oa=Cn.scrollWidth,Jo=we.useMemo(function(){return pr||qe(kr)},[pr,kr]),ea=we.useMemo(function(){if(Lr){var ja,ha=Jo.slice();if(!ha.includes(He)){var jo=co||0;jo>=0&&ha.splice(jo,0,He)}var zo=ha.indexOf(He);ha=ha.filter(function(sa,ht){return sa!==He||ht===zo});var Wa=Jo[zo],ss;(io==="left"||io)&&!co?ss="left":(io==="right"||io)&&co===Jo.length?ss="right":ss=Wa?Wa.fixed:null;var hs=(ja={},(0,tt.Z)(ja,Co,{className:"".concat(sr,"-expand-icon-col"),columnType:"EXPAND_COLUMN"}),(0,tt.Z)(ja,"title",ni),(0,tt.Z)(ja,"fixed",ss),(0,tt.Z)(ja,"className","".concat(sr,"-row-expand-icon-cell")),(0,tt.Z)(ja,"width",Ho),(0,tt.Z)(ja,"render",function(ht,Dt,_t){var en=ri(Dt,_t),pn=ai.has(en),yn=Ii?Ii(Dt):!0,In=yi({prefixCls:sr,expanded:pn,expandable:yn,record:Dt,onExpand:Ni});return gi?we.createElement("span",{onClick:function(Hn){return Hn.stopPropagation()}},In):In}),ja);return ha.map(function(sa){return sa===He?hs:sa})}return Jo.filter(function(sa){return sa!==He})},[Lr,Jo,ri,ai,yi,uo]),Qa=we.useMemo(function(){var ja=ea;return On&&(ja=On(ja)),ja.length||(ja=[{render:function(){return null}}]),ja},[On,ea,uo]),as=we.useMemo(function(){return uo==="rtl"?wt(dt(Qa)):dt(Qa)},[Qa,uo,oa]),ca=Le(as,oa),Da=(0,Ge.Z)(ca,2),ds=Da[0],da=Da[1];return[Qa,ds,da]}var un=rn;function zn(Cn){var On,sr=Cn.prefixCls,pr=Cn.record,kr=Cn.onExpand,Lr=Cn.expanded,ai=Cn.expandable,ni="".concat(sr,"-row-expand-icon");if(!ai)return we.createElement("span",{className:st()(ni,"".concat(sr,"-row-spaced"))});var ri=function(yi){kr(pr,yi),yi.stopPropagation()};return we.createElement("span",{className:st()(ni,(On={},(0,tt.Z)(On,"".concat(sr,"-row-expanded"),Lr),(0,tt.Z)(On,"".concat(sr,"-row-collapsed"),!Lr),On)),onClick:ri})}function Fn(Cn,On,sr){var pr=[];function kr(Lr){(Lr||[]).forEach(function(ai,ni){pr.push(On(ai,ni)),kr(ai[sr])})}return kr(Cn),pr}function tn(Cn,On,sr){var pr=To(Cn),kr=pr.expandIcon,Lr=pr.expandedRowKeys,ai=pr.defaultExpandedRowKeys,ni=pr.defaultExpandAllRows,ri=pr.expandedRowRender,Ni=pr.onExpand,yi=pr.onExpandedRowsChange,Ii=pr.childrenColumnName,co=kr||zn,uo=Ii||"children",gi=we.useMemo(function(){return ri?"row":Cn.expandable&&Cn.internalHooks===et&&Cn.expandable.__PARENT_RENDER_ICON__||On.some(function(as){return as&&(0,Ve.Z)(as)==="object"&&as[uo]})?"nest":!1},[!!ri,On]),Ho=we.useState(function(){return ai||(ni?Fn(On,sr,uo):[])}),io=(0,Ge.Z)(Ho,2),oa=io[0],Jo=io[1],ea=we.useMemo(function(){return new Set(Lr||oa||[])},[Lr,oa]),Qa=we.useCallback(function(as){var ca=sr(as,On.indexOf(as)),Da,ds=ea.has(ca);ds?(ea.delete(ca),Da=(0,_i.Z)(ea)):Da=[].concat((0,_i.Z)(ea),[ca]),Jo(Da),Ni&&Ni(!ds,as),yi&&yi(Da)},[sr,ea,On,Ni,yi]);return[pr,gi,ea,co,uo,Qa]}function Vn(Cn,On,sr,pr){var kr=Cn.map(function(Lr,ai){return ln(ai,ai,Cn,On,sr,pr==null?void 0:pr[ai])});return(0,St.Z)(function(){return kr},[kr],function(Lr,ai){return!(0,Oe.Z)(Lr,ai)})}function tr(Cn){var On=(0,we.useRef)(Cn),sr=(0,we.useState)({}),pr=(0,Ge.Z)(sr,2),kr=pr[1],Lr=(0,we.useRef)(null),ai=(0,we.useRef)([]);function ni(ri){ai.current.push(ri);var Ni=Promise.resolve();Lr.current=Ni,Ni.then(function(){if(Lr.current===Ni){var yi=ai.current,Ii=On.current;ai.current=[],yi.forEach(function(co){On.current=co(On.current)}),Lr.current=null,Ii!==On.current&&kr({})}})}return(0,we.useEffect)(function(){return function(){Lr.current=null}},[]),[On.current,ni]}function dr(Cn){var On=(0,we.useRef)(Cn||null),sr=(0,we.useRef)();function pr(){window.clearTimeout(sr.current)}function kr(ai){On.current=ai,pr(),sr.current=window.setTimeout(function(){On.current=null,sr.current=void 0},100)}function Lr(){return On.current}return(0,we.useEffect)(function(){return pr},[]),[kr,Lr]}function Bn(){var Cn=we.useState(-1),On=(0,Ge.Z)(Cn,2),sr=On[0],pr=On[1],kr=we.useState(-1),Lr=(0,Ge.Z)(kr,2),ai=Lr[0],ni=Lr[1],ri=we.useCallback(function(Ni,yi){pr(Ni),ni(yi)},[]);return[sr,ai,ri]}var An=Be(47273),Nn=(0,An.Z)()?window:null;function $n(Cn,On){var sr=(0,Ve.Z)(Cn)==="object"?Cn:{},pr=sr.offsetHeader,kr=pr===void 0?0:pr,Lr=sr.offsetSummary,ai=Lr===void 0?0:Lr,ni=sr.offsetScroll,ri=ni===void 0?0:ni,Ni=sr.getContainer,yi=Ni===void 0?function(){return Nn}:Ni,Ii=yi()||Nn;return we.useMemo(function(){var co=!!Cn;return{isSticky:co,stickyClassName:co?"".concat(On,"-sticky-holder"):"",offsetHeader:kr,offsetSummary:ai,offsetScroll:ri,container:Ii}},[ri,kr,ai,On,Ii])}function lr(Cn,On,sr){var pr=(0,we.useMemo)(function(){for(var kr=[],Lr=[],ai=0,ni=0,ri=0;ri=Ii&&(sa=Ii-co),ai({scrollLeft:sa/Ii*(yi+2)}),Jo.current.x=zo.pageX},ja=function(){if(Lr.current){var zo=(0,jr.os)(Lr.current).top,Wa=zo+Lr.current.offsetHeight,ss=ri===window?document.documentElement.scrollTop+window.innerHeight:(0,jr.os)(ri).top+ri.clientHeight;Wa-(0,xn.Z)()<=ss||zo>=ss-ni?oa(function(hs){return(0,Je.Z)((0,Je.Z)({},hs),{},{isHiddenScrollBar:!0})}):oa(function(hs){return(0,Je.Z)((0,Je.Z)({},hs),{},{isHiddenScrollBar:!1})})}},ha=function(zo){oa(function(Wa){return(0,Je.Z)((0,Je.Z)({},Wa),{},{scrollLeft:zo/yi*Ii||0})})};return we.useImperativeHandle(sr,function(){return{setScrollLeft:ha}}),we.useEffect(function(){var jo=(0,Br.Z)(document.body,"mouseup",Da,!1),zo=(0,Br.Z)(document.body,"mousemove",da,!1);return ja(),function(){jo.remove(),zo.remove()}},[co,as]),we.useEffect(function(){var jo=(0,Br.Z)(ri,"scroll",ja,!1),zo=(0,Br.Z)(window,"resize",ja,!1);return function(){jo.remove(),zo.remove()}},[ri]),we.useEffect(function(){io.isHiddenScrollBar||oa(function(jo){var zo=Lr.current;return zo?(0,Je.Z)((0,Je.Z)({},jo),{},{scrollLeft:zo.scrollLeft/zo.scrollWidth*zo.clientWidth}):jo})},[io.isHiddenScrollBar]),yi<=Ii||!co||io.isHiddenScrollBar?null:we.createElement("div",{style:{height:(0,xn.Z)(),width:Ii,bottom:ni},className:"".concat(Ni,"-sticky-scroll")},we.createElement("div",{onMouseDown:ds,ref:uo,className:st()("".concat(Ni,"-sticky-scroll-bar"),(0,tt.Z)({},"".concat(Ni,"-sticky-scroll-bar-active"),as)),style:{width:"".concat(co,"px"),transform:"translate3d(".concat(io.scrollLeft,"px, 0, 0)")}}))},qn=we.forwardRef(fr);function fi(Cn){return null}var ui=fi;function $i(Cn){return null}var wr=$i,oi="rc-table",ji=[],Yi={};function Vi(){return"No Data"}function to(Cn){var On,sr=(0,Je.Z)({rowKey:"key",prefixCls:oi,emptyText:Vi},Cn),pr=sr.prefixCls,kr=sr.className,Lr=sr.rowClassName,ai=sr.style,ni=sr.data,ri=sr.rowKey,Ni=sr.scroll,yi=sr.tableLayout,Ii=sr.direction,co=sr.title,uo=sr.footer,gi=sr.summary,Ho=sr.caption,io=sr.id,oa=sr.showHeader,Jo=sr.components,ea=sr.emptyText,Qa=sr.onRow,as=sr.onHeaderRow,ca=sr.internalHooks,Da=sr.transformColumns,ds=sr.internalRefs,da=sr.tailor,ja=sr.sticky,ha=ni||ji,jo=!!ha.length,zo=ca===et,Wa=we.useCallback(function(Jl,Zu){return(0,At.Z)(Jo,Jl)||Zu},[Jo]),ss=we.useMemo(function(){return typeof ri=="function"?ri:function(Jl){var Zu=Jl&&Jl[ri];return Zu}},[ri]),hs=Wa(["body"]),sa=Bn(),ht=(0,Ge.Z)(sa,3),Dt=ht[0],_t=ht[1],en=ht[2],pn=tn(sr,ha,ss),yn=(0,Ge.Z)(pn,6),In=yn[0],mn=yn[1],Hn=yn[2],Un=yn[3],ir=yn[4],Dr=yn[5],br=Ni==null?void 0:Ni.x,Qr=we.useState(0),Hr=(0,Ge.Z)(Qr,2),Fr=Hr[0],Ur=Hr[1],zr=un((0,Je.Z)((0,Je.Z)((0,Je.Z)({},sr),In),{},{expandable:!!In.expandedRowRender,columnTitle:In.columnTitle,expandedKeys:Hn,getRowKey:ss,onTriggerExpand:Dr,expandIcon:Un,expandIconColumnIndex:In.expandIconColumnIndex,direction:Ii,scrollWidth:zo&&da&&typeof br=="number"?br:null}),zo?Da:null),Vr=(0,Ge.Z)(zr,3),Ti=Vr[0],Li=Vr[1],xi=Vr[2],qr=xi!=null?xi:br,Bo=we.useMemo(function(){return{columns:Ti,flattenColumns:Li}},[Ti,Li]),ta=we.useRef(),ga=we.useRef(),ki=we.useRef(),Fi=we.useRef(),Do=we.useRef(),Wr=we.useState(!1),Ki=(0,Ge.Z)(Wr,2),ho=Ki[0],Qi=Ki[1],Io=we.useState(!1),Eo=(0,Ge.Z)(Io,2),Vo=Eo[0],Ua=Eo[1],$a=tr(new Map),Ao=(0,Ge.Z)($a,2),ba=Ao[0],bs=Ao[1],Cl=Nt(Li),Gs=Cl.map(function(Jl){return ba.get(Jl)}),Fs=we.useMemo(function(){return Gs},[Gs.join("_")]),_l=gr(Fs,Li.length,Ii),Hl=Ni&&Zt(Ni.y),tu=Ni&&Zt(qr)||!!In.fixed,yd=tu&&Li.some(function(Jl){var Zu=Jl.fixed;return Zu}),sg=we.useRef(),nd=$n(ja,pr),Wf=nd.isSticky,xf=nd.offsetHeader,rd=nd.offsetSummary,Vl=nd.offsetScroll,nu=nd.stickyClassName,xc=nd.container,Mu=we.useMemo(function(){return gi==null?void 0:gi(ha)},[gi,ha]),Kl=(Hl||Wf)&&we.isValidElement(Mu)&&Mu.type===ut&&Mu.props.fixed,Ec,yh,Jd;Hl&&(yh={overflowY:"scroll",maxHeight:Ni.y}),tu&&(Ec={overflowX:"auto"},Hl||(yh={overflowY:"hidden"}),Jd={width:qr===!0?"auto":qr,minWidth:"100%"});var Uf=we.useCallback(function(Jl,Zu){(0,$t.Z)(ta.current)&&bs(function(hh){if(hh.get(Jl)!==Zu){var Rd=new Map(hh);return Rd.set(Jl,Zu),Rd}return hh})},[]),Mr=dr(null),qd=(0,Ge.Z)(Mr,2),$d=qd[0],Em=qd[1];function o0(Jl,Zu){Zu&&(typeof Zu=="function"?Zu(Jl):Zu.scrollLeft!==Jl&&(Zu.scrollLeft=Jl,Zu.scrollLeft!==Jl&&setTimeout(function(){Zu.scrollLeft=Jl},0)))}var lp=(0,ke.Z)(function(Jl){var Zu=Jl.currentTarget,hh=Jl.scrollLeft,Rd=Ii==="rtl",kd=typeof hh=="number"?hh:Zu.scrollLeft,G0=Zu||Yi;if(!Em()||Em()===G0){var up;$d(G0),o0(kd,ga.current),o0(kd,ki.current),o0(kd,Do.current),o0(kd,(up=sg.current)===null||up===void 0?void 0:up.setScrollLeft)}var H0=Zu||ga.current;if(H0){var Ef=H0.scrollWidth,Af=H0.clientWidth;if(Ef===Af){Qi(!1),Ua(!1);return}Rd?(Qi(-kd0)):(Qi(kd>0),Ua(kd1?Ho-zo:0,ss=(0,Je.Z)((0,Je.Z)((0,Je.Z)({},Da),ri),{},{flex:"0 0 ".concat(zo,"px"),width:"".concat(zo,"px"),marginRight:Wa,pointerEvents:"auto"}),hs=we.useMemo(function(){return yi?ha<=1:da===0||ha===0||ha>1},[ha,da,yi]);hs?ss.visibility="hidden":yi&&(ss.height=Ii==null?void 0:Ii(ha));var sa=hs?function(){return null}:co,ht={};return(ha===0||da===0)&&(ht.rowSpan=1,ht.colSpan=1),we.createElement(Zn,(0,be.Z)({className:st()(gi,Ni),ellipsis:sr.ellipsis,align:sr.align,scope:sr.rowScope,component:"div",prefixCls:On.prefixCls,key:ea,record:ni,index:Lr,renderIndex:ai,dataIndex:uo,render:sa,shouldCellUpdate:sr.shouldCellUpdate},Qa,{appendNode:as,additionalProps:(0,Je.Z)((0,Je.Z)({},ca),{},{style:ss},ht)}))}var ts=Ma,fa=["data","index","className","rowKey","style","extra","getHeight"],ys=we.forwardRef(function(Cn,On){var sr=Cn.data,pr=Cn.index,kr=Cn.className,Lr=Cn.rowKey,ai=Cn.style,ni=Cn.extra,ri=Cn.getHeight,Ni=(0,xt.Z)(Cn,fa),yi=sr.record,Ii=sr.indent,co=sr.index,uo=Ie(Se,["prefixCls","flattenColumns","fixColumn","componentWidth","scrollX"]),gi=uo.scrollX,Ho=uo.flattenColumns,io=uo.prefixCls,oa=uo.fixColumn,Jo=uo.componentWidth,ea=Tn(yi,Lr,pr,Ii),Qa=ea.rowSupportExpand,as=ea.expanded,ca=ea.rowProps,Da=ea.expandedRowRender,ds=ea.expandedRowClassName,da;if(Qa&&as){var ja=Da(yi,pr,Ii+1,as),ha=ds==null?void 0:ds(yi,pr,Ii),jo={};oa&&(jo={style:(0,tt.Z)({},"--virtual-width","".concat(Jo,"px"))});var zo="".concat(io,"-expanded-row-cell");da=we.createElement("div",{className:st()("".concat(io,"-expanded-row"),"".concat(io,"-expanded-row-level-").concat(Ii+1),ha)},we.createElement(Zn,{component:"div",prefixCls:io,className:st()(zo,(0,tt.Z)({},"".concat(zo,"-fixed"),oa)),additionalProps:jo},ja))}var Wa=(0,Je.Z)((0,Je.Z)({},ai),{},{width:gi});ni&&(Wa.position="absolute",Wa.pointerEvents="none");var ss=we.createElement("div",(0,be.Z)({},ca,Ni,{ref:Qa?null:On,className:st()(kr,"".concat(io,"-row"),ca==null?void 0:ca.className,(0,tt.Z)({},"".concat(io,"-row-extra"),ni)),style:(0,Je.Z)((0,Je.Z)({},Wa),ca==null?void 0:ca.style)}),Ho.map(function(hs,sa){return we.createElement(ts,{key:sa,rowInfo:ea,column:hs,colIndex:sa,indent:Ii,index:pr,renderIndex:co,record:yi,inverse:ni,getHeight:ri})}));return Qa?we.createElement("div",{ref:On},ss,da):ss}),qa=xe(ys),Go=qa,li=we.forwardRef(function(Cn,On){var sr=Cn.data,pr=Cn.onScroll,kr=Ie(Se,["flattenColumns","onColumnResize","getRowKey","prefixCls","expandedKeys","childrenColumnName","emptyNode","scrollX"]),Lr=kr.flattenColumns,ai=kr.onColumnResize,ni=kr.getRowKey,ri=kr.expandedKeys,Ni=kr.prefixCls,yi=kr.childrenColumnName,Ii=kr.emptyNode,co=kr.scrollX,uo=Ie(Zr),gi=uo.scrollY,Ho=uo.listItemHeight,io=we.useRef(),oa=Jn(sr,yi,ri,ni),Jo=we.useMemo(function(){var da=0;return Lr.map(function(ja){var ha=ja.width,jo=ja.key;return da+=ha,[jo,ha,da]})},[Lr]),ea=we.useMemo(function(){return Jo.map(function(da){return da[2]})},[Jo]);we.useEffect(function(){Jo.forEach(function(da){var ja=(0,Ge.Z)(da,2),ha=ja[0],jo=ja[1];ai(ha,jo)})},[Jo]),we.useImperativeHandle(On,function(){var da={};return Object.defineProperty(da,"scrollLeft",{get:function(){var ha;return((ha=io.current)===null||ha===void 0?void 0:ha.getScrollInfo().x)||0},set:function(ha){var jo;(jo=io.current)===null||jo===void 0||jo.scrollTo({left:ha})}}),da});var Qa=function(ja,ha){var jo,zo=(jo=oa[ha])===null||jo===void 0?void 0:jo.record,Wa=ja.onCell;if(Wa){var ss,hs=Wa(zo,ha);return(ss=hs==null?void 0:hs.rowSpan)!==null&&ss!==void 0?ss:1}return 1},as=function(ja){var ha=ja.start,jo=ja.end,zo=ja.getSize,Wa=ja.offsetY;if(jo<0)return null;for(var ss=Lr.filter(function(br){return Qa(br,ha)===0}),hs=ha,sa=function(Qr){if(ss=ss.filter(function(Hr){return Qa(Hr,Qr)===0}),!ss.length)return hs=Qr,"break"},ht=ha;ht>=0;ht-=1){var Dt=sa(ht);if(Dt==="break")break}for(var _t=Lr.filter(function(br){return Qa(br,jo)!==1}),en=jo,pn=function(Qr){if(_t=_t.filter(function(Hr){return Qa(Hr,Qr)!==1}),!_t.length)return en=Math.max(Qr-1,jo),"break"},yn=jo;yn1})&&mn.push(Qr)},Un=hs;Un<=en;Un+=1)var ir=Hn(Un);var Dr=mn.map(function(br){var Qr=oa[br],Hr=ni(Qr.record,br),Fr=function(Vr){var Ti=br+Vr-1,Li=ni(oa[Ti].record,Ti),xi=zo(Hr,Li);return xi.bottom-xi.top},Ur=zo(Hr);return we.createElement(Go,{key:br,data:Qr,rowKey:Hr,index:br,style:{top:-Wa+Ur.top},extra:!0,getHeight:Fr})});return Dr},ca=we.useMemo(function(){return{columnsOffset:ea}},[ea]),Da="".concat(Ni,"-tbody"),ds;return oa.length?ds=we.createElement(Fo.Z,{fullHeight:!1,ref:io,className:st()(Da,"".concat(Da,"-virtual")),height:gi,itemHeight:Ho||24,data:oa,itemKey:function(ja){return ni(ja.record)},scrollWidth:co,onVirtualScroll:function(ja){var ha=ja.x;pr({scrollLeft:ha})},extraRender:as},function(da,ja,ha){var jo=ni(da.record,ja);return we.createElement(Go,(0,be.Z)({data:da,rowKey:jo,index:ja},ha))}):ds=we.createElement("div",{className:st()("".concat(Ni,"-placeholder"))},we.createElement(Zn,{component:"div",prefixCls:Ni},Ii)),we.createElement(Pa.Provider,{value:ca},ds)}),Ca=xe(li),Za=Ca,lo=function(On,sr){var pr=sr.ref,kr=sr.onScroll;return we.createElement(Za,{ref:pr,data:On,onScroll:kr})},fn=100;function Yo(Cn){var On=Cn.columns,sr=Cn.scroll,pr=Cn.prefixCls,kr=pr===void 0?oi:pr,Lr=Cn.className,ai=Cn.listItemHeight,ni=sr||{},ri=ni.x,Ni=ni.y;typeof ri!="number"&&(ri=((On||[]).length+1)*fn),typeof Ni!="number"&&(Ni=500);var yi=we.useMemo(function(){return{scrollY:Ni,listItemHeight:ai}},[Ni,ai]);return we.createElement(Zr.Provider,{value:yi},we.createElement(Gi,(0,be.Z)({},Cn,{className:st()(Lr,"".concat(kr,"-virtual")),scroll:(0,Je.Z)((0,Je.Z)({},sr),{},{x:ri}),components:{body:lo},columns:On,internalHooks:et,tailor:!0})))}function Ms(Cn){return ve(Yo,Cn)}var _a=Ms(),Bs=null;function Vs(Cn){return null}var ol=Vs;function ka(Cn){return null}var Aa=ka,Sa=Be(2738),xs=Be(68031),Ls=Be(36355),la=Be(93891),na=Be(19716),Ri=Be(8628),qo=Be(31724),Ts=Be(58421),pl=Be(71418),Rs=Be(88088);function As(Cn){return function(sr){let{prefixCls:pr,onExpand:kr,record:Lr,expanded:ai,expandable:ni}=sr;const ri=`${pr}-row-expand-icon`;return we.createElement("button",{type:"button",onClick:Ni=>{kr(Lr,Ni),Ni.stopPropagation()},className:st()(ri,{[`${ri}-spaced`]:!ni,[`${ri}-expanded`]:ni&&ai,[`${ri}-collapsed`]:ni&&!ai}),"aria-label":ai?Cn.collapse:Cn.expand,"aria-expanded":ai})}}var Ns=As;function Ks(Cn,On){return"key"in Cn&&Cn.key!==void 0&&Cn.key!==null?Cn.key:Cn.dataIndex?Array.isArray(Cn.dataIndex)?Cn.dataIndex.join("."):Cn.dataIndex:On}function Yl(Cn,On){return On?`${On}-${Cn}`:`${Cn}`}function Gl(Cn,On){return typeof Cn=="function"?Cn(On):Cn}function yu(Cn,On){const sr=Gl(Cn,On);return Object.prototype.toString.call(sr)==="[object Object]"?"":sr}var Pr={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"},ou=Pr,vd=Be(7657),Tc=function(On,sr){return we.createElement(vd.Z,(0,be.Z)({},On,{ref:sr,icon:ou}))},qs=we.forwardRef(Tc),ws=qs,au=Be(56762);function hl(Cn){const On=we.useRef(Cn),sr=(0,au.Z)();return[()=>On.current,pr=>{On.current=pr,sr()}]}var Cs=Be(3113),wl=Be(24905),Dc=Be(38854),Ha=Be(64165),Xs=Be(20834),ks=Be(40875),Ro=Be(5112),pu=Be(17574),ku=Be(47472),Ic=Be(92832);function Dh(Cn){let{value:On,onChange:sr,filterSearch:pr,tablePrefixCls:kr,locale:Lr}=Cn;return pr?we.createElement("div",{className:`${kr}-filter-dropdown-search`},we.createElement(Ic.default,{prefix:we.createElement(ku.Z,null),placeholder:Lr.filterSearchPlaceholder,onChange:sr,value:On,htmlSize:1,className:`${kr}-filter-dropdown-search-input`})):null}var Uh=Dh,So=Be(10228);const su=Cn=>{const{keyCode:On}=Cn;On===So.Z.ENTER&&Cn.stopPropagation()};var Ih=we.forwardRef((Cn,On)=>we.createElement("div",{className:Cn.className,onClick:sr=>sr.stopPropagation(),onKeyDown:su,ref:On},Cn.children));function td(Cn){let On=[];return(Cn||[]).forEach(sr=>{let{value:pr,children:kr}=sr;On.push(pr),kr&&(On=[].concat((0,_i.Z)(On),(0,_i.Z)(td(kr))))}),On}function vc(Cn){return Cn.some(On=>{let{children:sr}=On;return sr})}function cs(Cn,On){return typeof On=="string"||typeof On=="number"?On==null?void 0:On.toString().toLowerCase().includes(Cn.trim().toLowerCase()):!1}function qc(Cn){let{filters:On,prefixCls:sr,filteredKeys:pr,filterMultiple:kr,searchValue:Lr,filterSearch:ai}=Cn;return On.map((ni,ri)=>{const Ni=String(ni.value);if(ni.children)return{key:Ni||ri,label:ni.text,popupClassName:`${sr}-dropdown-submenu`,children:qc({filters:ni.children,prefixCls:sr,filteredKeys:pr,filterMultiple:kr,searchValue:Lr,filterSearch:ai})};const yi=kr?wl.default:Ro.ZP,Ii={key:ni.value!==void 0?Ni:ri,label:we.createElement(we.Fragment,null,we.createElement(yi,{checked:pr.includes(Ni)}),we.createElement("span",null,ni.text))};return Lr.trim()?typeof ai=="function"?ai(Lr,ni)?Ii:null:cs(Lr,ni.text)?Ii:null:Ii})}function $c(Cn){var On,sr;const{tablePrefixCls:pr,prefixCls:kr,column:Lr,dropdownPrefixCls:ai,columnKey:ni,filterMultiple:ri,filterMode:Ni="menu",filterSearch:yi=!1,filterState:Ii,triggerFilter:co,locale:uo,children:gi,getPopupContainer:Ho}=Cn,{filterDropdownOpen:io,onFilterDropdownOpenChange:oa,filterResetToDefaultFilteredValue:Jo,defaultFilteredValue:ea,filterDropdownVisible:Qa,onFilterDropdownVisibleChange:as}=Lr,[ca,Da]=we.useState(!1),ds=!!(Ii&&(!((On=Ii.filteredKeys)===null||On===void 0)&&On.length||Ii.forceFiltered)),da=zr=>{Da(zr),oa==null||oa(zr),as==null||as(zr)},ja=(sr=io!=null?io:Qa)!==null&&sr!==void 0?sr:ca,ha=Ii==null?void 0:Ii.filteredKeys,[jo,zo]=hl(ha||[]),Wa=zr=>{let{selectedKeys:Vr}=zr;zo(Vr)},ss=(zr,Vr)=>{let{node:Ti,checked:Li}=Vr;Wa(ri?{selectedKeys:zr}:{selectedKeys:Li&&Ti.key?[Ti.key]:[]})};we.useEffect(()=>{ca&&Wa({selectedKeys:ha||[]})},[ha]);const[hs,sa]=we.useState([]),ht=zr=>{sa(zr)},[Dt,_t]=we.useState(""),en=zr=>{const{value:Vr}=zr.target;_t(Vr)};we.useEffect(()=>{ca||_t("")},[ca]);const pn=zr=>{const Vr=zr&&zr.length?zr:null;if(Vr===null&&(!Ii||!Ii.filteredKeys)||(0,Oe.Z)(Vr,Ii==null?void 0:Ii.filteredKeys,!0))return null;co({column:Lr,key:ni,filteredKeys:Vr})},yn=()=>{da(!1),pn(jo())},In=function(){let{confirm:zr,closeDropdown:Vr}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{confirm:!1,closeDropdown:!1};zr&&pn([]),Vr&&da(!1),_t(""),zo(Jo?(ea||[]).map(Ti=>String(Ti)):[])},mn=function(){let{closeDropdown:zr}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{closeDropdown:!0};zr&&da(!1),pn(jo())},Hn=zr=>{zr&&ha!==void 0&&zo(ha||[]),da(zr),!zr&&!Lr.filterDropdown&&yn()},Un=st()({[`${ai}-menu-without-submenu`]:!vc(Lr.filters||[])}),ir=zr=>{if(zr.target.checked){const Vr=td(Lr==null?void 0:Lr.filters).map(Ti=>String(Ti));zo(Vr)}else zo([])},Dr=zr=>{let{filters:Vr}=zr;return(Vr||[]).map((Ti,Li)=>{const xi=String(Ti.value),qr={title:Ti.text,key:Ti.value!==void 0?xi:Li};return Ti.children&&(qr.children=Dr({filters:Ti.children})),qr})},br=zr=>{var Vr;return Object.assign(Object.assign({},zr),{text:zr.title,value:zr.key,children:((Vr=zr.children)===null||Vr===void 0?void 0:Vr.map(Ti=>br(Ti)))||[]})};let Qr;if(typeof Lr.filterDropdown=="function")Qr=Lr.filterDropdown({prefixCls:`${ai}-custom`,setSelectedKeys:zr=>Wa({selectedKeys:zr}),selectedKeys:jo(),confirm:mn,clearFilters:In,filters:Lr.filters,visible:ja,close:()=>{da(!1)}});else if(Lr.filterDropdown)Qr=Lr.filterDropdown;else{const zr=jo()||[],Vr=()=>(Lr.filters||[]).length===0?we.createElement(Ha.Z,{image:Ha.Z.PRESENTED_IMAGE_SIMPLE,description:uo.filterEmptyText,imageStyle:{height:24},style:{margin:0,padding:"16px 0"}}):Ni==="tree"?we.createElement(we.Fragment,null,we.createElement(Uh,{filterSearch:yi,value:Dt,onChange:en,tablePrefixCls:pr,locale:uo}),we.createElement("div",{className:`${pr}-filter-dropdown-tree`},ri?we.createElement(wl.default,{checked:zr.length===td(Lr.filters).length,indeterminate:zr.length>0&&zr.lengthtypeof yi=="function"?yi(Dt,br(Li)):cs(Dt,Li.title):void 0}))):we.createElement(we.Fragment,null,we.createElement(Uh,{filterSearch:yi,value:Dt,onChange:en,tablePrefixCls:pr,locale:uo}),we.createElement(Xs.default,{selectable:!0,multiple:ri,prefixCls:`${ai}-menu`,className:Un,onSelect:Wa,onDeselect:Wa,selectedKeys:zr,getPopupContainer:Ho,openKeys:hs,onOpenChange:ht,items:qc({filters:Lr.filters||[],filterSearch:yi,prefixCls:kr,filteredKeys:jo(),filterMultiple:ri,searchValue:Dt})})),Ti=()=>Jo?(0,Oe.Z)((ea||[]).map(Li=>String(Li)),zr,!0):zr.length===0;Qr=we.createElement(we.Fragment,null,Vr(),we.createElement("div",{className:`${kr}-dropdown-btns`},we.createElement(Cs.ZP,{type:"link",size:"small",disabled:Ti(),onClick:()=>In()},uo.filterReset),we.createElement(Cs.ZP,{type:"primary",size:"small",onClick:yn},uo.filterConfirm)))}Lr.filterDropdown&&(Qr=we.createElement(ks.J,{selectable:void 0},Qr));const Hr=()=>we.createElement(Ih,{className:`${kr}-dropdown`},Qr);let Fr;typeof Lr.filterIcon=="function"?Fr=Lr.filterIcon(ds):Lr.filterIcon?Fr=Lr.filterIcon:Fr=we.createElement(ws,null);const{direction:Ur}=we.useContext(Ls.E_);return we.createElement("div",{className:`${kr}-column`},we.createElement("span",{className:`${pr}-column-title`},gi),we.createElement(Dc.Z,{dropdownRender:Hr,trigger:["click"],open:ja,onOpenChange:Hn,getPopupContainer:Ho,placement:Ur==="rtl"?"bottomLeft":"bottomRight"},we.createElement("span",{role:"button",tabIndex:-1,className:st()(`${kr}-trigger`,{active:ds}),onClick:zr=>{zr.stopPropagation()}},Fr)))}var eh=$c;function mc(Cn,On,sr){let pr=[];return(Cn||[]).forEach((kr,Lr)=>{var ai;const ni=Yl(Lr,sr);if(kr.filters||"filterDropdown"in kr||"onFilter"in kr)if("filteredValue"in kr){let ri=kr.filteredValue;"filterDropdown"in kr||(ri=(ai=ri==null?void 0:ri.map(String))!==null&&ai!==void 0?ai:ri),pr.push({column:kr,key:Ks(kr,ni),filteredKeys:ri,forceFiltered:kr.filtered})}else pr.push({column:kr,key:Ks(kr,ni),filteredKeys:On&&kr.defaultFilteredValue?kr.defaultFilteredValue:void 0,forceFiltered:kr.filtered});"children"in kr&&(pr=[].concat((0,_i.Z)(pr),(0,_i.Z)(mc(kr.children,On,ni))))}),pr}function vh(Cn,On,sr,pr,kr,Lr,ai,ni){return sr.map((ri,Ni)=>{const yi=Yl(Ni,ni),{filterMultiple:Ii=!0,filterMode:co,filterSearch:uo}=ri;let gi=ri;if(gi.filters||gi.filterDropdown){const Ho=Ks(gi,yi),io=pr.find(oa=>{let{key:Jo}=oa;return Ho===Jo});gi=Object.assign(Object.assign({},gi),{title:oa=>we.createElement(eh,{tablePrefixCls:Cn,prefixCls:`${Cn}-filter`,dropdownPrefixCls:On,column:gi,columnKey:Ho,filterState:io,filterMultiple:Ii,filterMode:co,filterSearch:uo,triggerFilter:Lr,locale:kr,getPopupContainer:ai},Gl(ri.title,oa))})}return"children"in gi&&(gi=Object.assign(Object.assign({},gi),{children:vh(Cn,On,gi.children,pr,kr,Lr,ai,yi)})),gi})}function kc(Cn){const On={};return Cn.forEach(sr=>{let{key:pr,filteredKeys:kr,column:Lr}=sr;const{filters:ai,filterDropdown:ni}=Lr;if(ni)On[pr]=kr||null;else if(Array.isArray(kr)){const ri=td(ai);On[pr]=ri.filter(Ni=>kr.includes(String(Ni)))}else On[pr]=null}),On}function Hc(Cn,On){return On.reduce((sr,pr)=>{const{column:{onFilter:kr,filters:Lr},filteredKeys:ai}=pr;return kr&&ai&&ai.length?sr.filter(ni=>ai.some(ri=>{const Ni=td(Lr),yi=Ni.findIndex(co=>String(co)===String(ri)),Ii=yi!==-1?Ni[yi]:ri;return kr(Ii,ni)})):sr},Cn)}const th=Cn=>Cn.flatMap(On=>"children"in On?[On].concat((0,_i.Z)(th(On.children||[]))):[On]);function yf(Cn){let{prefixCls:On,dropdownPrefixCls:sr,mergedColumns:pr,onFilterChange:kr,getPopupContainer:Lr,locale:ai}=Cn;const ni=we.useMemo(()=>th(pr||[]),[pr]),[ri,Ni]=we.useState(()=>mc(ni,!0)),yi=we.useMemo(()=>{const gi=mc(ni,!1);if(gi.length===0)return gi;let Ho=!0,io=!0;if(gi.forEach(oa=>{let{filteredKeys:Jo}=oa;Jo!==void 0?Ho=!1:io=!1}),Ho){const oa=(ni||[]).map((Jo,ea)=>Ks(Jo,Yl(ea)));return ri.filter(Jo=>{let{key:ea}=Jo;return oa.includes(ea)}).map(Jo=>{const ea=ni[oa.findIndex(Qa=>Qa===Jo.key)];return Object.assign(Object.assign({},Jo),{column:Object.assign(Object.assign({},Jo.column),ea),forceFiltered:ea.filtered})})}return gi},[ni,ri]),Ii=we.useMemo(()=>kc(yi),[yi]),co=gi=>{const Ho=yi.filter(io=>{let{key:oa}=io;return oa!==gi.key});Ho.push(gi),Ni(Ho),kr(kc(Ho),Ho)};return[gi=>vh(On,sr,gi,yi,ai,co,Lr),yi,Ii]}var ng=yf;function ic(Cn,On,sr){const pr=we.useRef({});function kr(Lr){if(!pr.current||pr.current.data!==Cn||pr.current.childrenColumnName!==On||pr.current.getRowKey!==sr){let ni=function(ri){ri.forEach((Ni,yi)=>{const Ii=sr(Ni,yi);ai.set(Ii,Ni),Ni&&typeof Ni=="object"&&On in Ni&&ni(Ni[On]||[])})};const ai=new Map;ni(Cn),pr.current={data:Cn,childrenColumnName:On,kvMap:ai,getRowKey:sr}}return pr.current.kvMap.get(Lr)}return[kr]}var rg=Be(50371),jf=function(Cn,On){var sr={};for(var pr in Cn)Object.prototype.hasOwnProperty.call(Cn,pr)&&On.indexOf(pr)<0&&(sr[pr]=Cn[pr]);if(Cn!=null&&typeof Object.getOwnPropertySymbols=="function")for(var kr=0,pr=Object.getOwnPropertySymbols(Cn);kr{const Lr=Cn[kr];typeof Lr!="function"&&(sr[kr]=Lr)}),sr}function Fc(Cn,On,sr){const pr=sr&&typeof sr=="object"?sr:{},{total:kr=0}=pr,Lr=jf(pr,["total"]),[ai,ni]=(0,we.useState)(()=>({current:"defaultCurrent"in Lr?Lr.defaultCurrent:1,pageSize:"defaultPageSize"in Lr?Lr.defaultPageSize:Ll})),ri=(0,rg.Z)(ai,Lr,{total:kr>0?kr:Cn}),Ni=Math.ceil((kr||Cn)/ri.pageSize);ri.current>Ni&&(ri.current=Ni||1);const yi=(co,uo)=>{ni({current:co!=null?co:1,pageSize:uo||ri.pageSize})},Ii=(co,uo)=>{var gi;sr&&((gi=sr.onChange)===null||gi===void 0||gi.call(sr,co,uo)),yi(co,uo),On(co,uo||(ri==null?void 0:ri.pageSize))};return sr===!1?[{},()=>{}]:[Object.assign(Object.assign({},ri),{onChange:Ii}),yi]}var Oc=Fc,yc=Be(84105),Nc=Be(35654),Ds=Be(90782),Al=Be(71430),_c=Be(18929);const Du={},Fu="SELECT_ALL",du="SELECT_INVERT",Ws="SELECT_NONE",Ku=[],xu=(Cn,On)=>{let sr=[];return(On||[]).forEach(pr=>{sr.push(pr),pr&&typeof pr=="object"&&Cn in pr&&(sr=[].concat((0,_i.Z)(sr),(0,_i.Z)(xu(Cn,pr[Cn]))))}),sr};var Iu=(Cn,On)=>{const{preserveSelectedRowKeys:sr,selectedRowKeys:pr,defaultSelectedRowKeys:kr,getCheckboxProps:Lr,onChange:ai,onSelect:ni,onSelectAll:ri,onSelectInvert:Ni,onSelectNone:yi,onSelectMultiple:Ii,columnWidth:co,type:uo,selections:gi,fixed:Ho,renderCell:io,hideSelectAll:oa,checkStrictly:Jo=!0}=On||{},{prefixCls:ea,data:Qa,pageData:as,getRecordByKey:ca,getRowKey:Da,expandType:ds,childrenColumnName:da,locale:ja,getPopupContainer:ha}=Cn,[jo,zo]=(0,_c.Z)(pr||kr||Ku,{value:pr}),Wa=we.useRef(new Map),ss=(0,we.useCallback)(br=>{if(sr){const Qr=new Map;br.forEach(Hr=>{let Fr=ca(Hr);!Fr&&Wa.current.has(Hr)&&(Fr=Wa.current.get(Hr)),Qr.set(Hr,Fr)}),Wa.current=Qr}},[ca,sr]);we.useEffect(()=>{ss(jo)},[jo]);const{keyEntities:hs}=(0,we.useMemo)(()=>{if(Jo)return{keyEntities:null};let br=Qa;if(sr){const Qr=new Set(Qa.map((Fr,Ur)=>Da(Fr,Ur))),Hr=Array.from(Wa.current).reduce((Fr,Ur)=>{let[zr,Vr]=Ur;return Qr.has(zr)?Fr:Fr.concat(Vr)},[]);br=[].concat((0,_i.Z)(br),(0,_i.Z)(Hr))}return(0,Al.I8)(br,{externalGetKey:Da,childrenPropName:da})},[Qa,Da,Jo,da,sr]),sa=(0,we.useMemo)(()=>xu(da,as),[da,as]),ht=(0,we.useMemo)(()=>{const br=new Map;return sa.forEach((Qr,Hr)=>{const Fr=Da(Qr,Hr),Ur=(Lr?Lr(Qr):null)||{};br.set(Fr,Ur)}),br},[sa,Da,Lr]),Dt=(0,we.useCallback)(br=>{var Qr;return!!(!((Qr=ht.get(Da(br)))===null||Qr===void 0)&&Qr.disabled)},[ht,Da]),[_t,en]=(0,we.useMemo)(()=>{if(Jo)return[jo||[],[]];const{checkedKeys:br,halfCheckedKeys:Qr}=(0,Ds.S)(jo,!0,hs,Dt);return[br||[],Qr]},[jo,Jo,hs,Dt]),pn=(0,we.useMemo)(()=>{const br=uo==="radio"?_t.slice(0,1):_t;return new Set(br)},[_t,uo]),yn=(0,we.useMemo)(()=>uo==="radio"?new Set:new Set(en),[en,uo]),[In,mn]=(0,we.useState)(null);we.useEffect(()=>{On||zo(Ku)},[!!On]);const Hn=(0,we.useCallback)((br,Qr)=>{let Hr,Fr;ss(br),sr?(Hr=br,Fr=br.map(Ur=>Wa.current.get(Ur))):(Hr=[],Fr=[],br.forEach(Ur=>{const zr=ca(Ur);zr!==void 0&&(Hr.push(Ur),Fr.push(zr))})),zo(Hr),ai==null||ai(Hr,Fr,{type:Qr})},[zo,ca,ai,sr]),Un=(0,we.useCallback)((br,Qr,Hr,Fr)=>{if(ni){const Ur=Hr.map(zr=>ca(zr));ni(ca(br),Qr,Ur,Fr)}Hn(Hr,"single")},[ni,ca,Hn]),ir=(0,we.useMemo)(()=>!gi||oa?null:(gi===!0?[Fu,du,Ws]:gi).map(Qr=>Qr===Fu?{key:"all",text:ja.selectionAll,onSelect(){Hn(Qa.map((Hr,Fr)=>Da(Hr,Fr)).filter(Hr=>{const Fr=ht.get(Hr);return!(Fr!=null&&Fr.disabled)||pn.has(Hr)}),"all")}}:Qr===du?{key:"invert",text:ja.selectInvert,onSelect(){const Hr=new Set(pn);as.forEach((Ur,zr)=>{const Vr=Da(Ur,zr),Ti=ht.get(Vr);Ti!=null&&Ti.disabled||(Hr.has(Vr)?Hr.delete(Vr):Hr.add(Vr))});const Fr=Array.from(Hr);Ni&&Ni(Fr),Hn(Fr,"invert")}}:Qr===Ws?{key:"none",text:ja.selectNone,onSelect(){yi==null||yi(),Hn(Array.from(pn).filter(Hr=>{const Fr=ht.get(Hr);return Fr==null?void 0:Fr.disabled}),"none")}}:Qr).map(Qr=>Object.assign(Object.assign({},Qr),{onSelect:function(){for(var Hr,Fr,Ur=arguments.length,zr=new Array(Ur),Vr=0;Vr{var Qr;if(!On)return br.filter(Wr=>Wr!==Du);let Hr=(0,_i.Z)(br);const Fr=new Set(pn),Ur=sa.map(Da).filter(Wr=>!ht.get(Wr).disabled),zr=Ur.every(Wr=>Fr.has(Wr)),Vr=Ur.some(Wr=>Fr.has(Wr)),Ti=()=>{const Wr=[];zr?Ur.forEach(ho=>{Fr.delete(ho),Wr.push(ho)}):Ur.forEach(ho=>{Fr.has(ho)||(Fr.add(ho),Wr.push(ho))});const Ki=Array.from(Fr);ri==null||ri(!zr,Ki.map(ho=>ca(ho)),Wr.map(ho=>ca(ho))),Hn(Ki,"all"),mn(null)};let Li;if(uo!=="radio"){let Wr;if(ir){const Eo={getPopupContainer:ha,items:ir.map((Vo,Ua)=>{const{key:$a,text:Ao,onSelect:ba}=Vo;return{key:$a!=null?$a:Ua,onClick:()=>{ba==null||ba(Ur)},label:Ao}})};Wr=we.createElement("div",{className:`${ea}-selection-extra`},we.createElement(Dc.Z,{menu:Eo,getPopupContainer:ha},we.createElement("span",null,we.createElement(yc.Z,null))))}const Ki=sa.map((Eo,Vo)=>{const Ua=Da(Eo,Vo),$a=ht.get(Ua)||{};return Object.assign({checked:Fr.has(Ua)},$a)}).filter(Eo=>{let{disabled:Vo}=Eo;return Vo}),ho=!!Ki.length&&Ki.length===sa.length,Qi=ho&&Ki.every(Eo=>{let{checked:Vo}=Eo;return Vo}),Io=ho&&Ki.some(Eo=>{let{checked:Vo}=Eo;return Vo});Li=!oa&&we.createElement("div",{className:`${ea}-selection`},we.createElement(wl.default,{checked:ho?Qi:!!sa.length&&zr,indeterminate:ho?!Qi&&Io:!zr&&Vr,onChange:Ti,disabled:sa.length===0||ho,"aria-label":Wr?"Custom selection":"Select all",skipGroup:!0}),Wr)}let xi;uo==="radio"?xi=(Wr,Ki,ho)=>{const Qi=Da(Ki,ho),Io=Fr.has(Qi);return{node:we.createElement(Ro.ZP,Object.assign({},ht.get(Qi),{checked:Io,onClick:Eo=>Eo.stopPropagation(),onChange:Eo=>{Fr.has(Qi)||Un(Qi,!0,[Qi],Eo.nativeEvent)}})),checked:Io}}:xi=(Wr,Ki,ho)=>{var Qi;const Io=Da(Ki,ho),Eo=Fr.has(Io),Vo=yn.has(Io),Ua=ht.get(Io);let $a;return ds==="nest"?$a=Vo:$a=(Qi=Ua==null?void 0:Ua.indeterminate)!==null&&Qi!==void 0?Qi:Vo,{node:we.createElement(wl.default,Object.assign({},Ua,{indeterminate:$a,checked:Eo,skipGroup:!0,onClick:Ao=>Ao.stopPropagation(),onChange:Ao=>{let{nativeEvent:ba}=Ao;const{shiftKey:bs}=ba;let Cl=-1,Gs=-1;if(bs&&Jo){const Fs=new Set([In,Io]);Ur.some((_l,Hl)=>{if(Fs.has(_l))if(Cl===-1)Cl=Hl;else return Gs=Hl,!0;return!1})}if(Gs!==-1&&Cl!==Gs&&Jo){const Fs=Ur.slice(Cl,Gs+1),_l=[];Eo?Fs.forEach(tu=>{Fr.has(tu)&&(_l.push(tu),Fr.delete(tu))}):Fs.forEach(tu=>{Fr.has(tu)||(_l.push(tu),Fr.add(tu))});const Hl=Array.from(Fr);Ii==null||Ii(!Eo,Hl.map(tu=>ca(tu)),_l.map(tu=>ca(tu))),Hn(Hl,"multiple")}else{const Fs=_t;if(Jo){const _l=Eo?(0,Nc._5)(Fs,Io):(0,Nc.L0)(Fs,Io);Un(Io,!Eo,_l,ba)}else{const _l=(0,Ds.S)([].concat((0,_i.Z)(Fs),[Io]),!0,hs,Dt),{checkedKeys:Hl,halfCheckedKeys:tu}=_l;let yd=Hl;if(Eo){const sg=new Set(Hl);sg.delete(Io),yd=(0,Ds.S)(Array.from(sg),{checked:!1,halfCheckedKeys:tu},hs,Dt).checkedKeys}Un(Io,!Eo,yd,ba)}}mn(Eo?null:Io)}})),checked:Eo}};const qr=(Wr,Ki,ho)=>{const{node:Qi,checked:Io}=xi(Wr,Ki,ho);return io?io(Io,Ki,ho,Qi):Qi};if(!Hr.includes(Du))if(Hr.findIndex(Wr=>{var Ki;return((Ki=Wr[Co])===null||Ki===void 0?void 0:Ki.columnType)==="EXPAND_COLUMN"})===0){const[Wr,...Ki]=Hr;Hr=[Wr,Du].concat((0,_i.Z)(Ki))}else Hr=[Du].concat((0,_i.Z)(Hr));const Bo=Hr.indexOf(Du);Hr=Hr.filter((Wr,Ki)=>Wr!==Du||Ki===Bo);const ta=Hr[Bo-1],ga=Hr[Bo+1];let ki=Ho;ki===void 0&&((ga==null?void 0:ga.fixed)!==void 0?ki=ga.fixed:(ta==null?void 0:ta.fixed)!==void 0&&(ki=ta.fixed)),ki&&ta&&((Qr=ta[Co])===null||Qr===void 0?void 0:Qr.columnType)==="EXPAND_COLUMN"&&ta.fixed===void 0&&(ta.fixed=ki);const Fi=st()(`${ea}-selection-col`,{[`${ea}-selection-col-with-dropdown`]:gi&&uo==="checkbox"}),Do={fixed:ki,width:co,className:`${ea}-selection-column`,title:On.columnTitle||Li,render:qr,onCell:On.onCell,[Co]:{className:Fi}};return Hr.map(Wr=>Wr===Du?Do:Wr)},[Da,sa,On,_t,pn,yn,co,ir,ds,In,ht,Ii,Un,Dt]),pn]},Eu=Be(89489),zc=Be(59477),md=Be(6848);const ig="ascend",Ta="descend";function mh(Cn){return typeof Cn.sorter=="object"&&typeof Cn.sorter.multiple=="number"?Cn.sorter.multiple:!1}function cr(Cn){return typeof Cn=="function"?Cn:Cn&&typeof Cn=="object"&&Cn.compare?Cn.compare:!1}function Ci(Cn,On){return On?Cn[Cn.indexOf(On)+1]:Cn[0]}function og(Cn,On,sr){let pr=[];function kr(Lr,ai){pr.push({column:Lr,key:Ks(Lr,ai),multiplePriority:mh(Lr),sortOrder:Lr.sortOrder})}return(Cn||[]).forEach((Lr,ai)=>{const ni=Yl(ai,sr);Lr.children?("sortOrder"in Lr&&kr(Lr,ni),pr=[].concat((0,_i.Z)(pr),(0,_i.Z)(og(Lr.children,On,ni)))):Lr.sorter&&("sortOrder"in Lr?kr(Lr,ni):On&&Lr.defaultSortOrder&&pr.push({column:Lr,key:Ks(Lr,ni),multiplePriority:mh(Lr),sortOrder:Lr.defaultSortOrder}))}),pr}function ag(Cn,On,sr,pr,kr,Lr,ai,ni){return(On||[]).map((ri,Ni)=>{const yi=Yl(Ni,ni);let Ii=ri;if(Ii.sorter){const co=Ii.sortDirections||kr,uo=Ii.showSorterTooltip===void 0?ai:Ii.showSorterTooltip,gi=Ks(Ii,yi),Ho=sr.find(ds=>{let{key:da}=ds;return da===gi}),io=Ho?Ho.sortOrder:null,oa=Ci(co,io);let Jo;if(ri.sortIcon)Jo=ri.sortIcon({sortOrder:io});else{const ds=co.includes(ig)&&we.createElement(zc.Z,{className:st()(`${Cn}-column-sorter-up`,{active:io===ig})}),da=co.includes(Ta)&&we.createElement(Eu.Z,{className:st()(`${Cn}-column-sorter-down`,{active:io===Ta})});Jo=we.createElement("span",{className:st()(`${Cn}-column-sorter`,{[`${Cn}-column-sorter-full`]:!!(ds&&da)})},we.createElement("span",{className:`${Cn}-column-sorter-inner`,"aria-hidden":"true"},ds,da))}const{cancelSort:ea,triggerAsc:Qa,triggerDesc:as}=Lr||{};let ca=ea;oa===Ta?ca=as:oa===ig&&(ca=Qa);const Da=typeof uo=="object"?uo:{title:ca};Ii=Object.assign(Object.assign({},Ii),{className:st()(Ii.className,{[`${Cn}-column-sort`]:io}),title:ds=>{const da=we.createElement("div",{className:`${Cn}-column-sorters`},we.createElement("span",{className:`${Cn}-column-title`},Gl(ri.title,ds)),Jo);return uo?we.createElement(md.Z,Object.assign({},Da),da):da},onHeaderCell:ds=>{const da=ri.onHeaderCell&&ri.onHeaderCell(ds)||{},ja=da.onClick,ha=da.onKeyDown;da.onClick=Wa=>{pr({column:ri,key:gi,sortOrder:oa,multiplePriority:mh(ri)}),ja==null||ja(Wa)},da.onKeyDown=Wa=>{Wa.keyCode===So.Z.ENTER&&(pr({column:ri,key:gi,sortOrder:oa,multiplePriority:mh(ri)}),ha==null||ha(Wa))};const jo=yu(ri.title,{}),zo=jo==null?void 0:jo.toString();return io?da["aria-sort"]=io==="ascend"?"ascending":"descending":da["aria-label"]=zo||"",da.className=st()(da.className,`${Cn}-column-has-sorters`),da.tabIndex=0,ri.ellipsis&&(da.title=(jo!=null?jo:"").toString()),da}})}return"children"in Ii&&(Ii=Object.assign(Object.assign({},Ii),{children:ag(Cn,Ii.children,sr,pr,kr,Lr,ai,yi)})),Ii})}function oo(Cn){const{column:On,sortOrder:sr}=Cn;return{column:On,order:sr,field:On.dataIndex,columnKey:On.key}}function Xd(Cn){const On=Cn.filter(sr=>{let{sortOrder:pr}=sr;return pr}).map(oo);return On.length===0&&Cn.length?Object.assign(Object.assign({},oo(Cn[Cn.length-1])),{column:void 0}):On.length<=1?On[0]||{}:On}function Qd(Cn,On,sr){const pr=On.slice().sort((ai,ni)=>ni.multiplePriority-ai.multiplePriority),kr=Cn.slice(),Lr=pr.filter(ai=>{let{column:{sorter:ni},sortOrder:ri}=ai;return cr(ni)&&ri});return Lr.length?kr.sort((ai,ni)=>{for(let ri=0;ri{const ni=ai[sr];return ni?Object.assign(Object.assign({},ai),{[sr]:Qd(ni,On,sr)}):ai}):kr}function Op(Cn){let{prefixCls:On,mergedColumns:sr,onSorterChange:pr,sortDirections:kr,tableLocale:Lr,showSorterTooltip:ai}=Cn;const[ni,ri]=we.useState(og(sr,!0)),Ni=we.useMemo(()=>{let gi=!0;const Ho=og(sr,!1);if(!Ho.length)return ni;const io=[];function oa(ea){gi?io.push(ea):io.push(Object.assign(Object.assign({},ea),{sortOrder:null}))}let Jo=null;return Ho.forEach(ea=>{Jo===null?(oa(ea),ea.sortOrder&&(ea.multiplePriority===!1?gi=!1:Jo=!0)):(Jo&&ea.multiplePriority!==!1||(gi=!1),oa(ea))}),io},[sr,ni]),yi=we.useMemo(()=>{const gi=Ni.map(Ho=>{let{column:io,sortOrder:oa}=Ho;return{column:io,order:oa}});return{sortColumns:gi,sortColumn:gi[0]&&gi[0].column,sortOrder:gi[0]&&gi[0].order}},[Ni]);function Ii(gi){let Ho;gi.multiplePriority===!1||!Ni.length||Ni[0].multiplePriority===!1?Ho=[gi]:Ho=[].concat((0,_i.Z)(Ni.filter(io=>{let{key:oa}=io;return oa!==gi.key})),[gi]),ri(Ho),pr(Xd(Ho),Ho)}return[gi=>ag(On,gi,Ni,Ii,kr,Lr,ai),Ni,yi,()=>Xd(Ni)]}function Ug(Cn,On){return Cn.map(sr=>{const pr=Object.assign({},sr);return pr.title=Gl(sr.title,On),"children"in pr&&(pr.children=Ug(pr.children,On)),pr})}function _u(Cn){return[we.useCallback(sr=>Ug(sr,Cn),[Cn])]}var gs=bo((Cn,On)=>{const{_renderTimes:sr}=Cn,{_renderTimes:pr}=On;return sr!==pr}),hc=Ms((Cn,On)=>{const{_renderTimes:sr}=Cn,{_renderTimes:pr}=On;return sr!==pr}),zu=Be(64993),lu=Be(17313),Us=Be(83116),oc=Be(37613),En=Cn=>{const{componentCls:On}=Cn,sr=`${Cn.lineWidth}px ${Cn.lineType} ${Cn.tableBorderColor}`,pr=(kr,Lr,ai)=>({[`&${On}-${kr}`]:{[`> ${On}-container`]:{[`> ${On}-content, > ${On}-body`]:{"\n > table > tbody > tr > th,\n > table > tbody > tr > td\n ":{[`> ${On}-expanded-row-fixed`]:{margin:`-${Lr}px -${ai+Cn.lineWidth}px`}}}}}});return{[`${On}-wrapper`]:{[`${On}${On}-bordered`]:Object.assign(Object.assign(Object.assign({[`> ${On}-title`]:{border:sr,borderBottom:0},[`> ${On}-container`]:{borderInlineStart:sr,borderTop:sr,[` > ${On}-content, > ${On}-header, > ${On}-body, > ${On}-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:sr},"> thead":{"> tr:not(:last-child) > th":{borderBottom:sr},"> tr > th::before":{backgroundColor:"transparent !important"}},"\n > thead > tr,\n > tbody > tr,\n > tfoot > tr\n ":{[`> ${On}-cell-fix-right-first::after`]:{borderInlineEnd:sr}},"\n > tbody > tr > th,\n > tbody > tr > td\n ":{[`> ${On}-expanded-row-fixed`]:{margin:`-${Cn.tablePaddingVertical}px -${Cn.tablePaddingHorizontal+Cn.lineWidth}px`,"&::after":{position:"absolute",top:0,insetInlineEnd:Cn.lineWidth,bottom:0,borderInlineEnd:sr,content:'""'}}}}}},[`&${On}-scroll-horizontal`]:{[`> ${On}-container > ${On}-body`]:{"> table > tbody":{[` > tr${On}-expanded-row, > tr${On}-placeholder `]:{"> th, > td":{borderInlineEnd:0}}}}}},pr("middle",Cn.tablePaddingVerticalMiddle,Cn.tablePaddingHorizontalMiddle)),pr("small",Cn.tablePaddingVerticalSmall,Cn.tablePaddingHorizontalSmall)),{[`> ${On}-footer`]:{border:sr,borderTop:0}}),[`${On}-cell`]:{[`${On}-container:first-child`]:{borderTop:0},"&-scrollbar:not([rowspan])":{boxShadow:`0 ${Cn.lineWidth}px 0 ${Cn.lineWidth}px ${Cn.tableHeaderBg}`}},[`${On}-bordered ${On}-cell-scrollbar`]:{borderInlineEnd:sr}}}},Er=Cn=>{const{componentCls:On}=Cn;return{[`${On}-wrapper`]:{[`${On}-cell-ellipsis`]:Object.assign(Object.assign({},lu.vS),{wordBreak:"keep-all",[` &${On}-cell-fix-left-last, &${On}-cell-fix-right-first `]:{overflow:"visible",[`${On}-cell-content`]:{display:"block",overflow:"hidden",textOverflow:"ellipsis"}},[`${On}-column-title`]:{overflow:"hidden",textOverflow:"ellipsis",wordBreak:"keep-all"}})}}},Yr=Cn=>{const{componentCls:On}=Cn;return{[`${On}-wrapper`]:{[`${On}-tbody > tr${On}-placeholder`]:{textAlign:"center",color:Cn.colorTextDisabled,"\n &:hover > th,\n &:hover > td,\n ":{background:Cn.colorBgContainer}}}}},$r=Be(15969),bi=Cn=>{const{componentCls:On,antCls:sr,controlInteractiveSize:pr,motionDurationSlow:kr,lineWidth:Lr,paddingXS:ai,lineType:ni,tableBorderColor:ri,tableExpandIconBg:Ni,tableExpandColumnWidth:yi,borderRadius:Ii,fontSize:co,fontSizeSM:uo,lineHeight:gi,tablePaddingVertical:Ho,tablePaddingHorizontal:io,tableExpandedRowBg:oa,paddingXXS:Jo}=Cn,ea=pr/2-Lr,Qa=ea*2+Lr*3,as=`${Lr}px ${ni} ${ri}`,ca=Jo-Lr;return{[`${On}-wrapper`]:{[`${On}-expand-icon-col`]:{width:yi},[`${On}-row-expand-icon-cell`]:{textAlign:"center",[`${On}-row-expand-icon`]:{display:"inline-flex",float:"none",verticalAlign:"sub"}},[`${On}-row-indent`]:{height:1,float:"left"},[`${On}-row-expand-icon`]:Object.assign(Object.assign({},(0,$r.N)(Cn)),{position:"relative",float:"left",boxSizing:"border-box",width:Qa,height:Qa,padding:0,color:"inherit",lineHeight:`${Qa}px`,background:Ni,border:as,borderRadius:Ii,transform:`scale(${pr/Qa})`,transition:`all ${kr}`,userSelect:"none","&:focus, &:hover, &:active":{borderColor:"currentcolor"},"&::before, &::after":{position:"absolute",background:"currentcolor",transition:`transform ${kr} ease-out`,content:'""'},"&::before":{top:ea,insetInlineEnd:ca,insetInlineStart:ca,height:Lr},"&::after":{top:ca,bottom:ca,insetInlineStart:ea,width:Lr,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"}}),[`${On}-row-indent + ${On}-row-expand-icon`]:{marginTop:(co*gi-Lr*3)/2-Math.ceil((uo*1.4-Lr*3)/2),marginInlineEnd:ai},[`tr${On}-expanded-row`]:{"&, &:hover":{"> th, > td":{background:oa}},[`${sr}-descriptions-view`]:{display:"flex",table:{flex:"auto",width:"auto"}}},[`${On}-expanded-row-fixed`]:{position:"relative",margin:`-${Ho}px -${io}px`,padding:`${Ho}px ${io}px`}}}},Oo=Cn=>{const{componentCls:On,antCls:sr,iconCls:pr,tableFilterDropdownWidth:kr,tableFilterDropdownSearchWidth:Lr,paddingXXS:ai,paddingXS:ni,colorText:ri,lineWidth:Ni,lineType:yi,tableBorderColor:Ii,tableHeaderIconColor:co,fontSizeSM:uo,tablePaddingHorizontal:gi,borderRadius:Ho,motionDurationSlow:io,colorTextDescription:oa,colorPrimary:Jo,tableHeaderFilterActiveBg:ea,colorTextDisabled:Qa,tableFilterDropdownBg:as,tableFilterDropdownHeight:ca,controlItemBgHover:Da,controlItemBgActive:ds,boxShadowSecondary:da,filterDropdownMenuBg:ja}=Cn,ha=`${sr}-dropdown`,jo=`${On}-filter-dropdown`,zo=`${sr}-tree`,Wa=`${Ni}px ${yi} ${Ii}`;return[{[`${On}-wrapper`]:{[`${On}-filter-column`]:{display:"flex",justifyContent:"space-between"},[`${On}-filter-trigger`]:{position:"relative",display:"flex",alignItems:"center",marginBlock:-ai,marginInline:`${ai}px ${-gi/2}px`,padding:`0 ${ai}px`,color:co,fontSize:uo,borderRadius:Ho,cursor:"pointer",transition:`all ${io}`,"&:hover":{color:oa,background:ea},"&.active":{color:Jo}}}},{[`${sr}-dropdown`]:{[jo]:Object.assign(Object.assign({},(0,lu.Wf)(Cn)),{minWidth:kr,backgroundColor:as,borderRadius:Ho,boxShadow:da,overflow:"hidden",[`${ha}-menu`]:{maxHeight:ca,overflowX:"hidden",border:0,boxShadow:"none",borderRadius:"unset",backgroundColor:ja,"&:empty::after":{display:"block",padding:`${ni}px 0`,color:Qa,fontSize:uo,textAlign:"center",content:'"Not Found"'}},[`${jo}-tree`]:{paddingBlock:`${ni}px 0`,paddingInline:ni,[zo]:{padding:0},[`${zo}-treenode ${zo}-node-content-wrapper:hover`]:{backgroundColor:Da},[`${zo}-treenode-checkbox-checked ${zo}-node-content-wrapper`]:{"&, &:hover":{backgroundColor:ds}}},[`${jo}-search`]:{padding:ni,borderBottom:Wa,"&-input":{input:{minWidth:Lr},[pr]:{color:Qa}}},[`${jo}-checkall`]:{width:"100%",marginBottom:ai,marginInlineStart:ai},[`${jo}-btns`]:{display:"flex",justifyContent:"space-between",padding:`${ni-Ni}px ${ni}px`,overflow:"hidden",borderTop:Wa}})}},{[`${sr}-dropdown ${jo}, ${jo}-submenu`]:{[`${sr}-checkbox-wrapper + span`]:{paddingInlineStart:ni,color:ri},"> ul":{maxHeight:"calc(100vh - 130px)",overflowX:"hidden",overflowY:"auto"}}}]},mo=Cn=>{const{componentCls:On,lineWidth:sr,colorSplit:pr,motionDurationSlow:kr,zIndexTableFixed:Lr,tableBg:ai,zIndexTableSticky:ni}=Cn,ri=pr;return{[`${On}-wrapper`]:{[` ${On}-cell-fix-left, ${On}-cell-fix-right `]:{position:"sticky !important",zIndex:Lr,background:ai},[` ${On}-cell-fix-left-first::after, ${On}-cell-fix-left-last::after `]:{position:"absolute",top:0,right:{_skip_check_:!0,value:0},bottom:-sr,width:30,transform:"translateX(100%)",transition:`box-shadow ${kr}`,content:'""',pointerEvents:"none"},[`${On}-cell-fix-left-all::after`]:{display:"none"},[` ${On}-cell-fix-right-first::after, ${On}-cell-fix-right-last::after `]:{position:"absolute",top:0,bottom:-sr,left:{_skip_check_:!0,value:0},width:30,transform:"translateX(-100%)",transition:`box-shadow ${kr}`,content:'""',pointerEvents:"none"},[`${On}-container`]:{"&::before, &::after":{position:"absolute",top:0,bottom:0,zIndex:ni+1,width:30,transition:`box-shadow ${kr}`,content:'""',pointerEvents:"none"},"&::before":{insetInlineStart:0},"&::after":{insetInlineEnd:0}},[`${On}-ping-left`]:{[`&:not(${On}-has-fix-left) ${On}-container`]:{position:"relative","&::before":{boxShadow:`inset 10px 0 8px -8px ${ri}`}},[` ${On}-cell-fix-left-first::after, ${On}-cell-fix-left-last::after `]:{boxShadow:`inset 10px 0 8px -8px ${ri}`},[`${On}-cell-fix-left-last::before`]:{backgroundColor:"transparent !important"}},[`${On}-ping-right`]:{[`&:not(${On}-has-fix-right) ${On}-container`]:{position:"relative","&::after":{boxShadow:`inset -10px 0 8px -8px ${ri}`}},[` ${On}-cell-fix-right-first::after, ${On}-cell-fix-right-last::after `]:{boxShadow:`inset -10px 0 8px -8px ${ri}`}}}}},Qo=Cn=>{const{componentCls:On,antCls:sr}=Cn;return{[`${On}-wrapper`]:{[`${On}-pagination${sr}-pagination`]:{margin:`${Cn.margin}px 0`},[`${On}-pagination`]:{display:"flex",flexWrap:"wrap",rowGap:Cn.paddingXS,"> *":{flex:"none"},"&-left":{justifyContent:"flex-start"},"&-center":{justifyContent:"center"},"&-right":{justifyContent:"flex-end"}}}}},so=Cn=>{const{componentCls:On,tableRadius:sr}=Cn;return{[`${On}-wrapper`]:{[On]:{[`${On}-title, ${On}-header`]:{borderRadius:`${sr}px ${sr}px 0 0`},[`${On}-title + ${On}-container`]:{borderStartStartRadius:0,borderStartEndRadius:0,[`${On}-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:sr,borderStartEndRadius:sr,"table > thead > tr:first-child":{"> *:first-child":{borderStartStartRadius:sr},"> *:last-child":{borderStartEndRadius:sr}}},"&-footer":{borderRadius:`0 0 ${sr}px ${sr}px`}}}}},za=Cn=>{const{componentCls:On}=Cn;return{[`${On}-wrapper-rtl`]:{direction:"rtl",table:{direction:"rtl"},[`${On}-pagination-left`]:{justifyContent:"flex-end"},[`${On}-pagination-right`]:{justifyContent:"flex-start"},[`${On}-row-expand-icon`]:{float:"right","&::after":{transform:"rotate(-90deg)"},"&-collapsed::before":{transform:"rotate(180deg)"},"&-collapsed::after":{transform:"rotate(0deg)"}},[`${On}-container`]:{"&::before":{insetInlineStart:"unset",insetInlineEnd:0},"&::after":{insetInlineStart:0,insetInlineEnd:"unset"},[`${On}-row-indent`]:{float:"right"}}}}},Va=Cn=>{const{componentCls:On,antCls:sr,iconCls:pr,fontSizeIcon:kr,padding:Lr,paddingXS:ai,tableHeaderIconColor:ni,tableHeaderIconColorHover:ri,tableSelectionColumnWidth:Ni}=Cn;return{[`${On}-wrapper`]:{[`${On}-selection-col`]:{width:Ni,[`&${On}-selection-col-with-dropdown`]:{width:Ni+kr+Lr/4}},[`${On}-bordered ${On}-selection-col`]:{width:Ni+ai*2,[`&${On}-selection-col-with-dropdown`]:{width:Ni+kr+Lr/4+ai*2}},[` table tr th${On}-selection-column, table tr td${On}-selection-column `]:{paddingInlineEnd:Cn.paddingXS,paddingInlineStart:Cn.paddingXS,textAlign:"center",[`${sr}-radio-wrapper`]:{marginInlineEnd:0}},[`table tr th${On}-selection-column${On}-cell-fix-left`]:{zIndex:Cn.zIndexTableFixed+1},[`table tr th${On}-selection-column::after`]:{backgroundColor:"transparent !important"},[`${On}-selection`]:{position:"relative",display:"inline-flex",flexDirection:"column"},[`${On}-selection-extra`]:{position:"absolute",top:0,zIndex:1,cursor:"pointer",transition:`all ${Cn.motionDurationSlow}`,marginInlineStart:"100%",paddingInlineStart:`${Cn.tablePaddingHorizontal/4}px`,[pr]:{color:ni,fontSize:kr,verticalAlign:"baseline","&:hover":{color:ri}}}}}},Ba=Cn=>{const{componentCls:On}=Cn,sr=(pr,kr,Lr,ai)=>({[`${On}${On}-${pr}`]:{fontSize:ai,[` ${On}-title, ${On}-footer, ${On}-cell, ${On}-thead > tr > th, ${On}-tbody > tr > th, ${On}-tbody > tr > td, tfoot > tr > th, tfoot > tr > td `]:{padding:`${kr}px ${Lr}px`},[`${On}-filter-trigger`]:{marginInlineEnd:`-${Lr/2}px`},[`${On}-expanded-row-fixed`]:{margin:`-${kr}px -${Lr}px`},[`${On}-tbody`]:{[`${On}-wrapper:only-child ${On}`]:{marginBlock:`-${kr}px`,marginInline:`${Cn.tableExpandColumnWidth-Lr}px -${Lr}px`}},[`${On}-selection-column`]:{paddingInlineStart:`${Lr/4}px`}}});return{[`${On}-wrapper`]:Object.assign(Object.assign({},sr("middle",Cn.tablePaddingVerticalMiddle,Cn.tablePaddingHorizontalMiddle,Cn.tableFontSizeMiddle)),sr("small",Cn.tablePaddingVerticalSmall,Cn.tablePaddingHorizontalSmall,Cn.tableFontSizeSmall))}},rs=Cn=>{const{componentCls:On,marginXXS:sr,fontSizeIcon:pr,tableHeaderIconColor:kr,tableHeaderIconColorHover:Lr}=Cn;return{[`${On}-wrapper`]:{[`${On}-thead th${On}-column-has-sorters`]:{outline:"none",cursor:"pointer",transition:`all ${Cn.motionDurationSlow}`,"&:hover":{background:Cn.tableHeaderSortHoverBg,"&::before":{backgroundColor:"transparent !important"}},"&:focus-visible":{color:Cn.colorPrimary},[` &${On}-cell-fix-left:hover, &${On}-cell-fix-right:hover `]:{background:Cn.tableFixedHeaderSortActiveBg}},[`${On}-thead th${On}-column-sort`]:{background:Cn.tableHeaderSortBg,"&::before":{backgroundColor:"transparent !important"}},[`td${On}-column-sort`]:{background:Cn.tableBodySortBg},[`${On}-column-title`]:{position:"relative",zIndex:1,flex:1},[`${On}-column-sorters`]:{display:"flex",flex:"auto",alignItems:"center",justifyContent:"space-between","&::after":{position:"absolute",inset:0,width:"100%",height:"100%",content:'""'}},[`${On}-column-sorter`]:{marginInlineStart:sr,color:kr,fontSize:0,transition:`color ${Cn.motionDurationSlow}`,"&-inner":{display:"inline-flex",flexDirection:"column",alignItems:"center"},"&-up, &-down":{fontSize:pr,"&.active":{color:Cn.colorPrimary}},[`${On}-column-sorter-up + ${On}-column-sorter-down`]:{marginTop:"-0.3em"}},[`${On}-column-sorters:hover ${On}-column-sorter`]:{color:Lr}}}},dl=Cn=>{const{componentCls:On,opacityLoading:sr,tableScrollThumbBg:pr,tableScrollThumbBgHover:kr,tableScrollThumbSize:Lr,tableScrollBg:ai,zIndexTableSticky:ni,stickyScrollBarBorderRadius:ri}=Cn,Ni=`${Cn.lineWidth}px ${Cn.lineType} ${Cn.tableBorderColor}`;return{[`${On}-wrapper`]:{[`${On}-sticky`]:{"&-holder":{position:"sticky",zIndex:ni,background:Cn.colorBgContainer},"&-scroll":{position:"sticky",bottom:0,height:`${Lr}px !important`,zIndex:ni,display:"flex",alignItems:"center",background:ai,borderTop:Ni,opacity:sr,"&:hover":{transformOrigin:"center bottom"},"&-bar":{height:Lr,backgroundColor:pr,borderRadius:ri,transition:`all ${Cn.motionDurationSlow}, transform none`,position:"absolute",bottom:0,"&:hover, &-active":{backgroundColor:kr}}}}}}},Tl=Cn=>{const{componentCls:On,lineWidth:sr,tableBorderColor:pr}=Cn,kr=`${sr}px ${Cn.lineType} ${pr}`;return{[`${On}-wrapper`]:{[`${On}-summary`]:{position:"relative",zIndex:Cn.zIndexTableFixed,background:Cn.tableBg,"> tr":{"> th, > td":{borderBottom:kr}}},[`div${On}-summary`]:{boxShadow:`0 -${sr}px 0 ${pr}`}}}},vu=Cn=>{const{componentCls:On}=Cn,sr=`${Cn.lineWidth}px ${Cn.lineType} ${Cn.tableBorderColor}`,pr=`${On}-expanded-row-cell`;return{[`${On}-wrapper`]:{[`${On}-tbody-virtual`]:{[`${On}-row`]:{display:"flex",boxSizing:"border-box",width:"100%"},[`${On}-cell`]:{borderBottom:sr},[`${On}-expanded-row`]:{[`${pr}${pr}-fixed`]:{position:"sticky",insetInlineStart:0,overflow:"hidden",width:`calc(var(--virtual-width) - ${Cn.lineWidth}px)`,borderInlineEnd:"none"}}},[`${On}-bordered`]:{[`${On}-tbody-virtual`]:{"&:after":{content:'""',insetInline:0,bottom:0,borderBottom:sr,position:"absolute"},[`${On}-cell`]:{borderInlineEnd:sr,[`&${On}-cell-fix-right-first:before`]:{content:'""',position:"absolute",insetBlock:0,insetInlineStart:-Cn.lineWidth,borderInlineStart:sr}}}}}}};const yl=Cn=>{const{componentCls:On,fontWeightStrong:sr,tablePaddingVertical:pr,tablePaddingHorizontal:kr,lineWidth:Lr,lineType:ai,tableBorderColor:ni,tableFontSize:ri,tableBg:Ni,tableRadius:yi,tableHeaderTextColor:Ii,motionDurationMid:co,tableHeaderBg:uo,tableHeaderCellSplitColor:gi,tableRowHoverBg:Ho,tableSelectedRowBg:io,tableSelectedRowHoverBg:oa,tableFooterTextColor:Jo,tableFooterBg:ea,paddingContentVerticalLG:Qa}=Cn,as=`${Lr}px ${ai} ${ni}`;return{[`${On}-wrapper`]:Object.assign(Object.assign({clear:"both",maxWidth:"100%"},(0,lu.dF)()),{[On]:Object.assign(Object.assign({},(0,lu.Wf)(Cn)),{fontSize:ri,background:Ni,borderRadius:`${yi}px ${yi}px 0 0`}),table:{width:"100%",textAlign:"start",borderRadius:`${yi}px ${yi}px 0 0`,borderCollapse:"separate",borderSpacing:0},[` ${On}-cell, ${On}-thead > tr > th, ${On}-tbody > tr > th, ${On}-tbody > tr > td, tfoot > tr > th, tfoot > tr > td `]:{position:"relative",padding:`${Qa}px ${kr}px`,overflowWrap:"break-word"},[`${On}-title`]:{padding:`${pr}px ${kr}px`},[`${On}-thead`]:{"\n > tr > th,\n > tr > td\n ":{position:"relative",color:Ii,fontWeight:sr,textAlign:"start",background:uo,borderBottom:as,transition:`background ${co} ease`,"&[colspan]:not([colspan='1'])":{textAlign:"center"},[`&:not(:last-child):not(${On}-selection-column):not(${On}-row-expand-icon-cell):not([colspan])::before`]:{position:"absolute",top:"50%",insetInlineEnd:0,width:1,height:"1.6em",backgroundColor:gi,transform:"translateY(-50%)",transition:`background-color ${co}`,content:'""'}},"> tr:not(:last-child) > th[colspan]":{borderBottom:0}},[`${On}-tbody`]:{"> tr":{"> th, > td":{transition:`background ${co}, border-color ${co}`,borderBottom:as,[` > ${On}-wrapper:only-child, > ${On}-expanded-row-fixed > ${On}-wrapper:only-child `]:{[On]:{marginBlock:`-${pr}px`,marginInline:`${Cn.tableExpandColumnWidth-kr}px -${kr}px`,[`${On}-tbody > tr:last-child > td`]:{borderBottom:0,"&:first-child, &:last-child":{borderRadius:0}}}}},"> th":{position:"relative",color:Ii,fontWeight:sr,textAlign:"start",background:uo,borderBottom:as,transition:`background ${co} ease`},[` &${On}-row:hover > th, &${On}-row:hover > td, > th${On}-cell-row-hover, > td${On}-cell-row-hover `]:{background:Ho},[`&${On}-row-selected`]:{"> th, > td":{background:io},"&:hover > th, &:hover > td":{background:oa}}}},[`${On}-footer`]:{padding:`${pr}px ${kr}px`,color:Jo,background:ea}})}};var il=(0,Us.Z)("Table",Cn=>{const{colorTextHeading:On,colorSplit:sr,colorIcon:pr,colorIconHover:kr,opacityLoading:Lr,colorBgContainer:ai,controlInteractiveSize:ni,headerBg:ri,headerColor:Ni,headerSortActiveBg:yi,headerSortHoverBg:Ii,bodySortBg:co,rowHoverBg:uo,rowSelectedBg:gi,rowSelectedHoverBg:Ho,rowExpandedBg:io,cellPaddingBlock:oa,cellPaddingInline:Jo,cellPaddingBlockMD:ea,cellPaddingInlineMD:Qa,cellPaddingBlockSM:as,cellPaddingInlineSM:ca,borderColor:Da,footerBg:ds,footerColor:da,headerBorderRadius:ja,cellFontSize:ha,cellFontSizeMD:jo,cellFontSizeSM:zo,headerSplitColor:Wa,fixedHeaderSortActiveBg:ss,headerFilterHoverBg:hs,filterDropdownBg:sa,expandIconBg:ht,selectionColumnWidth:Dt,stickyScrollBarBg:_t}=Cn,en=new zu.C(pr),pn=new zu.C(kr),yn=2,In=(0,oc.TS)(Cn,{tableFontSize:ha,tableBg:ai,tableRadius:ja,tablePaddingVertical:oa,tablePaddingHorizontal:Jo,tablePaddingVerticalMiddle:ea,tablePaddingHorizontalMiddle:Qa,tablePaddingVerticalSmall:as,tablePaddingHorizontalSmall:ca,tableBorderColor:Da,tableHeaderTextColor:Ni,tableHeaderBg:ri,tableFooterTextColor:da,tableFooterBg:ds,tableHeaderCellSplitColor:Wa,tableHeaderSortBg:yi,tableHeaderSortHoverBg:Ii,tableHeaderIconColor:en.clone().setAlpha(en.getAlpha()*Lr).toRgbString(),tableHeaderIconColorHover:pn.clone().setAlpha(pn.getAlpha()*Lr).toRgbString(),tableBodySortBg:co,tableFixedHeaderSortActiveBg:ss,tableHeaderFilterActiveBg:hs,tableFilterDropdownBg:sa,tableRowHoverBg:uo,tableSelectedRowBg:gi,tableSelectedRowHoverBg:Ho,zIndexTableFixed:yn,zIndexTableSticky:yn+1,tableFontSizeMiddle:jo,tableFontSizeSmall:zo,tableSelectionColumnWidth:Dt,tableExpandIconBg:ht,tableExpandColumnWidth:ni+2*Cn.padding,tableExpandedRowBg:io,tableFilterDropdownWidth:120,tableFilterDropdownHeight:264,tableFilterDropdownSearchWidth:140,tableScrollThumbSize:8,tableScrollThumbBg:_t,tableScrollThumbBgHover:On,tableScrollBg:sr});return[yl(In),Qo(In),Tl(In),rs(In),Oo(In),En(In),so(In),bi(In),Tl(In),Yr(In),Va(In),mo(In),dl(In),Er(In),Ba(In),za(In),vu(In)]},Cn=>{const{colorFillAlter:On,colorBgContainer:sr,colorTextHeading:pr,colorFillSecondary:kr,colorFillContent:Lr,controlItemBgActive:ai,controlItemBgActiveHover:ni,padding:ri,paddingSM:Ni,paddingXS:yi,colorBorderSecondary:Ii,borderRadiusLG:co,fontSize:uo,controlHeight:gi,colorTextPlaceholder:Ho}=Cn,io=new zu.C(kr).onBackground(sr).toHexShortString(),oa=new zu.C(Lr).onBackground(sr).toHexShortString(),Jo=new zu.C(On).onBackground(sr).toHexShortString();return{headerBg:Jo,headerColor:pr,headerSortActiveBg:io,headerSortHoverBg:oa,bodySortBg:Jo,rowHoverBg:Jo,rowSelectedBg:ai,rowSelectedHoverBg:ni,rowExpandedBg:On,cellPaddingBlock:ri,cellPaddingInline:ri,cellPaddingBlockMD:Ni,cellPaddingInlineMD:yi,cellPaddingBlockSM:yi,cellPaddingInlineSM:yi,borderColor:Ii,headerBorderRadius:co,footerBg:Jo,footerColor:pr,cellFontSize:uo,cellFontSizeMD:uo,cellFontSizeSM:uo,headerSplitColor:Ii,fixedHeaderSortActiveBg:io,headerFilterHoverBg:Lr,filterDropdownMenuBg:sr,filterDropdownBg:sr,expandIconBg:sr,selectionColumnWidth:gi,stickyScrollBarBg:Ho,stickyScrollBarBorderRadius:100}});const Bl=[],Rl=(Cn,On)=>{const{prefixCls:sr,className:pr,rootClassName:kr,style:Lr,size:ai,bordered:ni,dropdownPrefixCls:ri,dataSource:Ni,pagination:yi,rowSelection:Ii,rowKey:co="key",rowClassName:uo,columns:gi,children:Ho,childrenColumnName:io,onChange:oa,getPopupContainer:Jo,loading:ea,expandIcon:Qa,expandable:as,expandedRowRender:ca,expandIconColumnIndex:Da,indentSize:ds,scroll:da,sortDirections:ja,locale:ha,showSorterTooltip:jo=!0,virtual:zo}=Cn,Wa=we.useMemo(()=>gi||qe(Ho),[gi,Ho]),ss=we.useMemo(()=>Wa.some(Vl=>Vl.responsive),[Wa]),hs=(0,Ri.Z)(ss),sa=we.useMemo(()=>{const Vl=new Set(Object.keys(hs).filter(nu=>hs[nu]));return Wa.filter(nu=>!nu.responsive||nu.responsive.some(xc=>Vl.has(xc)))},[Wa,hs]),ht=(0,Sa.Z)(Cn,["className","style","columns"]),{locale:Dt=qo.Z,direction:_t,table:en,renderEmpty:pn,getPrefixCls:yn,getPopupContainer:In}=we.useContext(Ls.E_),mn=(0,na.Z)(ai),Hn=Object.assign(Object.assign({},Dt.Table),ha),Un=Ni||Bl,ir=yn("table",sr),Dr=yn("dropdown",ri),br=Object.assign({childrenColumnName:io,expandIconColumnIndex:Da},as),{childrenColumnName:Qr="children"}=br,Hr=we.useMemo(()=>Un.some(Vl=>Vl==null?void 0:Vl[Qr])?"nest":ca||as&&as.expandedRowRender?"row":null,[Un]),Fr={body:we.useRef()},Ur=we.useMemo(()=>typeof co=="function"?co:Vl=>Vl==null?void 0:Vl[co],[co]),[zr]=ic(Un,Qr,Ur),Vr={},Ti=function(Vl,nu){let xc=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;var Mu,Kl,Ec;const yh=Object.assign(Object.assign({},Vr),Vl);xc&&((Mu=Vr.resetPagination)===null||Mu===void 0||Mu.call(Vr),!((Kl=yh.pagination)===null||Kl===void 0)&&Kl.current&&(yh.pagination.current=1),yi&&yi.onChange&&yi.onChange(1,(Ec=yh.pagination)===null||Ec===void 0?void 0:Ec.pageSize)),da&&da.scrollToFirstRowOnChange!==!1&&Fr.body.current&&(0,xs.Z)(0,{getContainer:()=>Fr.body.current}),oa==null||oa(yh.pagination,yh.filters,yh.sorter,{currentDataSource:Hc(Qd(Un,yh.sorterStates,Qr),yh.filterStates),action:nu})},Li=(Vl,nu)=>{Ti({sorter:Vl,sorterStates:nu},"sort",!1)},[xi,qr,Bo,ta]=Op({prefixCls:ir,mergedColumns:sa,onSorterChange:Li,sortDirections:ja||["ascend","descend"],tableLocale:Hn,showSorterTooltip:jo}),ga=we.useMemo(()=>Qd(Un,qr,Qr),[Un,qr]);Vr.sorter=ta(),Vr.sorterStates=qr;const ki=(Vl,nu)=>{Ti({filters:Vl,filterStates:nu},"filter",!0)},[Fi,Do,Wr]=ng({prefixCls:ir,locale:Hn,dropdownPrefixCls:Dr,mergedColumns:sa,onFilterChange:ki,getPopupContainer:Jo||In}),Ki=Hc(ga,Do);Vr.filters=Wr,Vr.filterStates=Do;const ho=we.useMemo(()=>{const Vl={};return Object.keys(Wr).forEach(nu=>{Wr[nu]!==null&&(Vl[nu]=Wr[nu])}),Object.assign(Object.assign({},Bo),{filters:Vl})},[Bo,Wr]),[Qi]=_u(ho),Io=(Vl,nu)=>{Ti({pagination:Object.assign(Object.assign({},Vr.pagination),{current:Vl,pageSize:nu})},"paginate")},[Eo,Vo]=Oc(Ki.length,Io,yi);Vr.pagination=yi===!1?{}:nh(Eo,yi),Vr.resetPagination=Vo;const Ua=we.useMemo(()=>{if(yi===!1||!Eo.pageSize)return Ki;const{current:Vl=1,total:nu,pageSize:xc=Ll}=Eo;return Ki.lengthxc?Ki.slice((Vl-1)*xc,Vl*xc):Ki:Ki.slice((Vl-1)*xc,Vl*xc)},[!!yi,Ki,Eo&&Eo.current,Eo&&Eo.pageSize,Eo&&Eo.total]),[$a,Ao]=Iu({prefixCls:ir,data:Ki,pageData:Ua,getRowKey:Ur,getRecordByKey:zr,expandType:Hr,childrenColumnName:Qr,locale:Hn,getPopupContainer:Jo||In},Ii),ba=(Vl,nu,xc)=>{let Mu;return typeof uo=="function"?Mu=st()(uo(Vl,nu,xc)):Mu=st()(uo),st()({[`${ir}-row-selected`]:Ao.has(Ur(Vl,nu))},Mu)};br.__PARENT_RENDER_ICON__=br.expandIcon,br.expandIcon=br.expandIcon||Qa||Ns(Hn),Hr==="nest"&&br.expandIconColumnIndex===void 0?br.expandIconColumnIndex=Ii?1:0:br.expandIconColumnIndex>0&&Ii&&(br.expandIconColumnIndex-=1),typeof br.indentSize!="number"&&(br.indentSize=typeof ds=="number"?ds:15);const bs=we.useCallback(Vl=>Qi($a(Fi(xi(Vl)))),[xi,Fi,$a]);let Cl,Gs;if(yi!==!1&&(Eo!=null&&Eo.total)){let Vl;Eo.size?Vl=Eo.size:Vl=mn==="small"||mn==="middle"?"small":void 0;const nu=Kl=>we.createElement(Ts.Z,Object.assign({},Eo,{className:st()(`${ir}-pagination ${ir}-pagination-${Kl}`,Eo.className),size:Vl})),xc=_t==="rtl"?"left":"right",{position:Mu}=Eo;if(Mu!==null&&Array.isArray(Mu)){const Kl=Mu.find(Jd=>Jd.includes("top")),Ec=Mu.find(Jd=>Jd.includes("bottom")),yh=Mu.every(Jd=>`${Jd}`=="none");!Kl&&!Ec&&!yh&&(Gs=nu(xc)),Kl&&(Cl=nu(Kl.toLowerCase().replace("top",""))),Ec&&(Gs=nu(Ec.toLowerCase().replace("bottom","")))}else Gs=nu(xc)}let Fs;typeof ea=="boolean"?Fs={spinning:ea}:typeof ea=="object"&&(Fs=Object.assign({spinning:!0},ea));const[_l,Hl]=il(ir),[,tu]=(0,Rs.Z)(),yd=st()(`${ir}-wrapper`,en==null?void 0:en.className,{[`${ir}-wrapper-rtl`]:_t==="rtl"},pr,kr,Hl),sg=Object.assign(Object.assign({},en==null?void 0:en.style),Lr),nd=ha&&ha.emptyText||(pn==null?void 0:pn("Table"))||we.createElement(la.Z,{componentName:"Table"}),Wf=zo?hc:gs,xf={},rd=we.useMemo(()=>{const{fontSize:Vl,lineHeight:nu,padding:xc,paddingXS:Mu,paddingSM:Kl}=tu,Ec=Math.floor(Vl*nu);switch(mn){case"large":return xc*2+Ec;case"small":return Mu*2+Ec;default:return Kl*2+Ec}},[tu,mn]);return zo&&(xf.listItemHeight=rd),_l(we.createElement("div",{ref:On,className:yd,style:sg},we.createElement(pl.Z,Object.assign({spinning:!1},Fs),Cl,we.createElement(Wf,Object.assign({},xf,ht,{columns:sa,direction:_t,expandable:br,prefixCls:ir,className:st()({[`${ir}-middle`]:mn==="middle",[`${ir}-small`]:mn==="small",[`${ir}-bordered`]:ni,[`${ir}-empty`]:Un.length===0}),data:Ua,rowKey:Ur,rowClassName:ba,emptyText:nd,internalHooks:et,internalRefs:Fr,transformColumns:bs})),Gs)))};var mu=we.forwardRef(Rl);const Xl=(Cn,On)=>{const sr=we.useRef(0);return sr.current+=1,we.createElement(mu,Object.assign({},Cn,{ref:On,_renderTimes:sr.current}))},ra=we.forwardRef(Xl);ra.SELECTION_COLUMN=Du,ra.EXPAND_COLUMN=He,ra.SELECTION_ALL=Fu,ra.SELECTION_INVERT=du,ra.SELECTION_NONE=Ws,ra.Column=ol,ra.ColumnGroup=Aa,ra.Summary=Pt;var Ou=ra,tc=Ou},17574:function(sn,an,Be){"use strict";Be.d(an,{default:function(){return Et}});var He=Be(23130),et=Be(26407),Ge=Be(52671),ke=Be(8657),Ze=Be(92413),Oe=Be(59301),we={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"},Te=we,Re=Be(7657),Ie=function(Nt,Zt){return Oe.createElement(Re.Z,(0,Ze.Z)({},Nt,{ref:Zt,icon:Te}))},be=Oe.forwardRef(Ie),Pe=be,je=Be(92310),ye=Be.n(je),ie=Be(35654),ae=Be(71430),fe=Be(36355),de=Be(56082),ve=Be(62892),xe=Be(20648);const he=4;function pe(lt){const{dropPosition:Nt,dropLevelOffset:Zt,prefixCls:Ut,indent:Ft,direction:Yt="ltr"}=lt,dn=Yt==="ltr"?"left":"right",Dn=Yt==="ltr"?"right":"left",Rn={[dn]:-Zt*Ft+he,[Dn]:0};switch(Nt){case-1:Rn.top=-3;break;case 1:Rn.bottom=-3;break;default:Rn.bottom=-3,Rn[dn]=Ft+he;break}return Oe.createElement("div",{style:Rn,className:`${Ut}-drop-indicator`})}var Se=Be(71997),ze=Oe.forwardRef((lt,Nt)=>{const{getPrefixCls:Zt,direction:Ut,virtual:Ft,tree:Yt}=Oe.useContext(fe.E_),{prefixCls:dn,className:Dn,showIcon:Rn=!1,showLine:Zn,switcherIcon:ln,blockNode:Gn=!1,children:Wn,checkable:qt=!1,selectable:xt=!0,draggable:ft,motion:Bt,style:Ot}=lt,ut=Zt("tree",dn),It=Zt(),nn=Bt!=null?Bt:Object.assign(Object.assign({},(0,ve.Z)(It)),{motionAppear:!1}),Pt=Object.assign(Object.assign({},lt),{checkable:qt,selectable:xt,showIcon:Rn,motion:nn,blockNode:Gn,showLine:!!Zn,dropIndicatorRender:pe}),[Vt,on]=(0,xe.ZP)(ut),$t=Oe.useMemo(()=>{if(!ft)return!1;let xn={};switch(typeof ft){case"function":xn.nodeDraggable=ft;break;case"object":xn=Object.assign({},ft);break;default:break}return xn.icon!==!1&&(xn.icon=xn.icon||Oe.createElement(de.Z,null)),xn},[ft]),Jt=xn=>Oe.createElement(Se.Z,{prefixCls:ut,switcherIcon:ln,treeNodeProps:xn,showLine:Zn});return Vt(Oe.createElement(He.Z,Object.assign({itemHeight:20,ref:Nt,virtual:Ft},Pt,{style:Object.assign(Object.assign({},Yt==null?void 0:Yt.style),Ot),prefixCls:ut,className:ye()({[`${ut}-icon-hide`]:!Rn,[`${ut}-block-node`]:Gn,[`${ut}-unselectable`]:!xt,[`${ut}-rtl`]:Ut==="rtl"},Yt==null?void 0:Yt.className,Dn,on),direction:Ut,checkable:qt&&Oe.createElement("span",{className:`${ut}-checkbox-inner`}),selectable:xt,switcherIcon:Jt,draggable:$t}),Wn))}),Ke;(function(lt){lt[lt.None=0]="None",lt[lt.Start=1]="Start",lt[lt.End=2]="End"})(Ke||(Ke={}));function Ve(lt,Nt){function Zt(Ut){const{key:Ft,children:Yt}=Ut;Nt(Ft,Ut)!==!1&&Ve(Yt||[],Nt)}lt.forEach(Zt)}function Je(lt){let{treeData:Nt,expandedKeys:Zt,startKey:Ut,endKey:Ft}=lt;const Yt=[];let dn=Ke.None;if(Ut&&Ut===Ft)return[Ut];if(!Ut||!Ft)return[];function Dn(Rn){return Rn===Ut||Rn===Ft}return Ve(Nt,Rn=>{if(dn===Ke.End)return!1;if(Dn(Rn)){if(Yt.push(Rn),dn===Ke.None)dn=Ke.Start;else if(dn===Ke.Start)return dn=Ke.End,!1}else dn===Ke.Start&&Yt.push(Rn);return Zt.includes(Rn)}),Yt}function tt(lt,Nt){const Zt=(0,et.Z)(Nt),Ut=[];return Ve(lt,(Ft,Yt)=>{const dn=Zt.indexOf(Ft);return dn!==-1&&(Ut.push(Yt),Zt.splice(dn,1)),!!Zt.length}),Ut}var gt=function(lt,Nt){var Zt={};for(var Ut in lt)Object.prototype.hasOwnProperty.call(lt,Ut)&&Nt.indexOf(Ut)<0&&(Zt[Ut]=lt[Ut]);if(lt!=null&&typeof Object.getOwnPropertySymbols=="function")for(var Ft=0,Ut=Object.getOwnPropertySymbols(lt);Ft{var{defaultExpandAll:Zt,defaultExpandParent:Ut,defaultExpandedKeys:Ft}=lt,Yt=gt(lt,["defaultExpandAll","defaultExpandParent","defaultExpandedKeys"]);const dn=Oe.useRef(),Dn=Oe.useRef(),Rn=()=>{const{keyEntities:$t}=(0,ae.I8)(St(Yt));let Jt;return Zt?Jt=Object.keys($t):Ut?Jt=(0,ie.r7)(Yt.expandedKeys||Ft||[],$t):Jt=Yt.expandedKeys||Ft,Jt},[Zn,ln]=Oe.useState(Yt.selectedKeys||Yt.defaultSelectedKeys||[]),[Gn,Wn]=Oe.useState(()=>Rn());Oe.useEffect(()=>{"selectedKeys"in Yt&&ln(Yt.selectedKeys)},[Yt.selectedKeys]),Oe.useEffect(()=>{"expandedKeys"in Yt&&Wn(Yt.expandedKeys)},[Yt.expandedKeys]);const qt=($t,Jt)=>{var xn;return"expandedKeys"in Yt||Wn($t),(xn=Yt.onExpand)===null||xn===void 0?void 0:xn.call(Yt,$t,Jt)},xt=($t,Jt)=>{var xn;const{multiple:Qn}=Yt,{node:rr,nativeEvent:Jn}=Jt,{key:mr=""}=rr,Rr=St(Yt),Tn=Object.assign(Object.assign({},Jt),{selected:!0}),hr=(Jn==null?void 0:Jn.ctrlKey)||(Jn==null?void 0:Jn.metaKey),or=Jn==null?void 0:Jn.shiftKey;let yr;Qn&&hr?(yr=$t,dn.current=mr,Dn.current=yr,Tn.selectedNodes=tt(Rr,yr)):Qn&&or?(yr=Array.from(new Set([].concat((0,et.Z)(Dn.current||[]),(0,et.Z)(Je({treeData:Rr,expandedKeys:Gn,startKey:mr,endKey:dn.current}))))),Tn.selectedNodes=tt(Rr,yr)):(yr=[mr],dn.current=mr,Dn.current=yr,Tn.selectedNodes=tt(Rr,yr)),(xn=Yt.onSelect)===null||xn===void 0||xn.call(Yt,yr,Tn),"selectedKeys"in Yt||ln(yr)},{getPrefixCls:ft,direction:Bt}=Oe.useContext(fe.E_),{prefixCls:Ot,className:ut,showIcon:It=!0,expandAction:nn="click"}=Yt,Pt=gt(Yt,["prefixCls","className","showIcon","expandAction"]),Vt=ft("tree",Ot),on=ye()(`${Vt}-directory`,{[`${Vt}-directory-rtl`]:Bt==="rtl"},ut);return Oe.createElement(ze,Object.assign({icon:st,ref:Nt,blockNode:!0},Pt,{showIcon:It,expandAction:nn,prefixCls:Vt,className:on,expandedKeys:Gn,selectedKeys:Zn,onSelect:xt,onExpand:qt}))};var Tt=Oe.forwardRef(At);const bt=ze;bt.DirectoryTree=Tt,bt.TreeNode=He.O;var Et=bt},20648:function(sn,an,Be){"use strict";Be.d(an,{TM:function(){return je},Yk:function(){return Pe}});var He=Be(93083),et=Be(98447),Ge=Be(17313),ke=Be(8378),Ze=Be(37613),Oe=Be(83116);const we=new He.Keyframes("ant-tree-node-fx-do-not-use",{"0%":{opacity:0},"100%":{opacity:1}}),Te=(ye,ie)=>({[`.${ye}-switcher-icon`]:{display:"inline-block",fontSize:10,verticalAlign:"baseline",svg:{transition:`transform ${ie.motionDurationSlow}`}}}),Re=(ye,ie)=>({[`.${ye}-drop-indicator`]:{position:"absolute",zIndex:1,height:2,backgroundColor:ie.colorPrimary,borderRadius:1,pointerEvents:"none","&:after":{position:"absolute",top:-3,insetInlineStart:-6,width:8,height:8,backgroundColor:"transparent",border:`${ie.lineWidthBold}px solid ${ie.colorPrimary}`,borderRadius:"50%",content:'""'}}}),Ie=(ye,ie)=>{const{treeCls:ae,treeNodeCls:fe,treeNodePadding:de,titleHeight:ve,nodeSelectedBg:xe,nodeHoverBg:he}=ie,pe=ie.paddingXS;return{[ae]:Object.assign(Object.assign({},(0,Ge.Wf)(ie)),{background:ie.colorBgContainer,borderRadius:ie.borderRadius,transition:`background-color ${ie.motionDurationSlow}`,[`&${ae}-rtl`]:{[`${ae}-switcher`]:{"&_close":{[`${ae}-switcher-icon`]:{svg:{transform:"rotate(90deg)"}}}}},[`&-focused:not(:hover):not(${ae}-active-focused)`]:Object.assign({},(0,Ge.oN)(ie)),[`${ae}-list-holder-inner`]:{alignItems:"flex-start"},[`&${ae}-block-node`]:{[`${ae}-list-holder-inner`]:{alignItems:"stretch",[`${ae}-node-content-wrapper`]:{flex:"auto"},[`${fe}.dragging`]:{position:"relative","&:after":{position:"absolute",top:0,insetInlineEnd:0,bottom:de,insetInlineStart:0,border:`1px solid ${ie.colorPrimary}`,opacity:0,animationName:we,animationDuration:ie.motionDurationSlow,animationPlayState:"running",animationFillMode:"forwards",content:'""',pointerEvents:"none"}}}},[`${fe}`]:{display:"flex",alignItems:"flex-start",padding:`0 0 ${de}px 0`,outline:"none","&-rtl":{direction:"rtl"},"&-disabled":{[`${ae}-node-content-wrapper`]:{color:ie.colorTextDisabled,cursor:"not-allowed","&:hover":{background:"transparent"}}},[`&-active ${ae}-node-content-wrapper`]:Object.assign({},(0,Ge.oN)(ie)),[`&:not(${fe}-disabled).filter-node ${ae}-title`]:{color:"inherit",fontWeight:500},"&-draggable":{[`${ae}-draggable-icon`]:{flexShrink:0,width:ve,lineHeight:`${ve}px`,textAlign:"center",visibility:"visible",opacity:.2,transition:`opacity ${ie.motionDurationSlow}`,[`${fe}:hover &`]:{opacity:.45}},[`&${fe}-disabled`]:{[`${ae}-draggable-icon`]:{visibility:"hidden"}}}},[`${ae}-indent`]:{alignSelf:"stretch",whiteSpace:"nowrap",userSelect:"none","&-unit":{display:"inline-block",width:ve}},[`${ae}-draggable-icon`]:{visibility:"hidden"},[`${ae}-switcher`]:Object.assign(Object.assign({},Te(ye,ie)),{position:"relative",flex:"none",alignSelf:"stretch",width:ve,margin:0,lineHeight:`${ve}px`,textAlign:"center",cursor:"pointer",userSelect:"none","&-noop":{cursor:"default"},"&_close":{[`${ae}-switcher-icon`]:{svg:{transform:"rotate(-90deg)"}}},"&-loading-icon":{color:ie.colorPrimary},"&-leaf-line":{position:"relative",zIndex:1,display:"inline-block",width:"100%",height:"100%","&:before":{position:"absolute",top:0,insetInlineEnd:ve/2,bottom:-de,marginInlineStart:-1,borderInlineEnd:`1px solid ${ie.colorBorder}`,content:'""'},"&:after":{position:"absolute",width:ve/2*.8,height:ve/2,borderBottom:`1px solid ${ie.colorBorder}`,content:'""'}}}),[`${ae}-checkbox`]:{top:"initial",marginInlineEnd:pe},[`${ae}-node-content-wrapper, ${ae}-checkbox + span`]:{position:"relative",zIndex:"auto",minHeight:ve,margin:0,padding:`0 ${ie.paddingXS/2}px`,color:"inherit",lineHeight:`${ve}px`,background:"transparent",borderRadius:ie.borderRadius,cursor:"pointer",transition:`all ${ie.motionDurationMid}, border 0s, line-height 0s, box-shadow 0s`,"&:hover":{backgroundColor:he},[`&${ae}-node-selected`]:{backgroundColor:xe},[`${ae}-iconEle`]:{display:"inline-block",width:ve,height:ve,lineHeight:`${ve}px`,textAlign:"center",verticalAlign:"top","&:empty":{display:"none"}}},[`${ae}-unselectable ${ae}-node-content-wrapper:hover`]:{backgroundColor:"transparent"},[`${ae}-node-content-wrapper`]:Object.assign({lineHeight:`${ve}px`,userSelect:"none"},Re(ye,ie)),[`${fe}.drop-container`]:{"> [draggable]":{boxShadow:`0 0 0 2px ${ie.colorPrimary}`}},"&-show-line":{[`${ae}-indent`]:{"&-unit":{position:"relative",height:"100%","&:before":{position:"absolute",top:0,insetInlineEnd:ve/2,bottom:-de,borderInlineEnd:`1px solid ${ie.colorBorder}`,content:'""'},"&-end":{"&:before":{display:"none"}}}},[`${ae}-switcher`]:{background:"transparent","&-line-icon":{verticalAlign:"-0.15em"}}},[`${fe}-leaf-last`]:{[`${ae}-switcher`]:{"&-leaf-line":{"&:before":{top:"auto !important",bottom:"auto !important",height:`${ve/2}px !important`}}}}})}},be=ye=>{const{treeCls:ie,treeNodeCls:ae,treeNodePadding:fe,directoryNodeSelectedBg:de,directoryNodeSelectedColor:ve}=ye;return{[`${ie}${ie}-directory`]:{[ae]:{position:"relative","&:before":{position:"absolute",top:0,insetInlineEnd:0,bottom:fe,insetInlineStart:0,transition:`background-color ${ye.motionDurationMid}`,content:'""',pointerEvents:"none"},"&:hover":{"&:before":{background:ye.controlItemBgHover}},"> *":{zIndex:1},[`${ie}-switcher`]:{transition:`color ${ye.motionDurationMid}`},[`${ie}-node-content-wrapper`]:{borderRadius:0,userSelect:"none","&:hover":{background:"transparent"},[`&${ie}-node-selected`]:{color:ve,background:"transparent"}},"&-selected":{"\n &:hover::before,\n &::before\n ":{background:de},[`${ie}-switcher`]:{color:ve},[`${ie}-node-content-wrapper`]:{color:ve,background:"transparent"}}}}}},Pe=(ye,ie)=>{const ae=`.${ye}`,fe=`${ae}-treenode`,de=ie.paddingXS/2,ve=(0,Ze.TS)(ie,{treeCls:ae,treeNodeCls:fe,treeNodePadding:de});return[Ie(ye,ve),be(ve)]},je=ye=>{const{controlHeightSM:ie}=ye;return{titleHeight:ie,nodeHoverBg:ye.controlItemBgHover,nodeSelectedBg:ye.controlItemBgActive}};an.ZP=(0,Oe.Z)("Tree",(ye,ie)=>{let{prefixCls:ae}=ie;return[{[ye.componentCls]:(0,et.C2)(`${ae}-checkbox`,ye)},Pe(ae,ye),(0,ke.Z)(ye)]},ye=>{const{colorTextLightSolid:ie,colorPrimary:ae}=ye;return Object.assign(Object.assign({},je(ye)),{directoryNodeSelectedColor:ie,directoryNodeSelectedBg:ae})})},71997:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return fe}});var He=Be(92413),et=Be(59301),Ge={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"},ke=Ge,Ze=Be(7657),Oe=function(ve,xe){return et.createElement(Ze.Z,(0,He.Z)({},ve,{ref:xe,icon:ke}))},we=et.forwardRef(Oe),Te=we,Re=Be(52671),Ie=Be(58617),be=Be(15075),Pe=Be(43531),je=Be(92310),ye=Be.n(je),ie=Be(92343),fe=de=>{const{prefixCls:ve,switcherIcon:xe,treeNodeProps:he,showLine:pe}=de,{isLeaf:Se,expanded:Ne,loading:ze}=he;if(ze)return et.createElement(Ie.Z,{className:`${ve}-switcher-loading-icon`});let Ke;if(pe&&typeof pe=="object"&&(Ke=pe.showLeafIcon),Se){if(!pe)return null;if(typeof Ke!="boolean"&&Ke){const tt=typeof Ke=="function"?Ke(he):Ke,gt=`${ve}-switcher-line-custom-icon`;return(0,ie.l$)(tt)?(0,ie.Tm)(tt,{className:ye()(tt.props.className||"",gt)}):tt}return Ke?et.createElement(Re.Z,{className:`${ve}-switcher-line-icon`}):et.createElement("span",{className:`${ve}-switcher-leaf-line`})}const Ve=`${ve}-switcher-icon`,Je=typeof xe=="function"?xe(he):xe;return(0,ie.l$)(Je)?(0,ie.Tm)(Je,{className:ye()(Je.props.className||"",Ve)}):Je!==void 0?Je:pe?Ne?et.createElement(be.Z,{className:`${ve}-switcher-line-icon`}):et.createElement(Pe.Z,{className:`${ve}-switcher-line-icon`}):et.createElement(Te,{className:Ve})}},54580:function(sn,an,Be){"use strict";Be.d(an,{default:function(){return An}});var He=Be(59301),et=Be(26407),Ge=Be(92310),ke=Be.n(Ge),Ze=Be(92413),Oe=Be(6909),we=Be(4771),Te=Be(9427),Re=Be(25440),Ie=Be(400),be=Be(37061),Pe=Be(85195),je=Be(39559),ye=Be(20569),ie=Be(26112);function ae(Nn,$n){var lr="cannot ".concat(Nn.method," ").concat(Nn.action," ").concat($n.status,"'"),gr=new Error(lr);return gr.status=$n.status,gr.method=Nn.method,gr.url=Nn.action,gr}function fe(Nn){var $n=Nn.responseText||Nn.response;if(!$n)return $n;try{return JSON.parse($n)}catch(lr){return $n}}function de(Nn){var $n=new XMLHttpRequest;Nn.onProgress&&$n.upload&&($n.upload.onprogress=function(ur){ur.total>0&&(ur.percent=ur.loaded/ur.total*100),Nn.onProgress(ur)});var lr=new FormData;Nn.data&&Object.keys(Nn.data).forEach(function(Tr){var ur=Nn.data[Tr];if(Array.isArray(ur)){ur.forEach(function(Br){lr.append("".concat(Tr,"[]"),Br)});return}lr.append(Tr,ur)}),Nn.file instanceof Blob?lr.append(Nn.filename,Nn.file,Nn.file.name):lr.append(Nn.filename,Nn.file),$n.onerror=function(ur){Nn.onError(ur)},$n.onload=function(){return $n.status<200||$n.status>=300?Nn.onError(ae(Nn,$n),fe($n)):Nn.onSuccess(fe($n),$n)},$n.open(Nn.method,Nn.action,!0),Nn.withCredentials&&"withCredentials"in $n&&($n.withCredentials=!0);var gr=Nn.headers||{};return gr["X-Requested-With"]!==null&&$n.setRequestHeader("X-Requested-With","XMLHttpRequest"),Object.keys(gr).forEach(function(Tr){gr[Tr]!==null&&$n.setRequestHeader(Tr,gr[Tr])}),$n.send(lr),{abort:function(){$n.abort()}}}var ve=+new Date,xe=0;function he(){return"rc-upload-".concat(ve,"-").concat(++xe)}var pe=Be(48736),Se=function(Nn,$n){if(Nn&&$n){var lr=Array.isArray($n)?$n:$n.split(","),gr=Nn.name||"",Tr=Nn.type||"",ur=Tr.replace(/\/.*$/,"");return lr.some(function(Br){var jr=Br.trim();if(/^\*(\/\*)?$/.test(Br))return!0;if(jr.charAt(0)==="."){var fr=gr.toLowerCase(),qn=jr.toLowerCase(),fi=[qn];return(qn===".jpg"||qn===".jpeg")&&(fi=[".jpg",".jpeg"]),fi.some(function(ui){return fr.endsWith(ui)})}return/\/\*$/.test(jr)?ur===jr.replace(/\/.*$/,""):Tr===jr?!0:/^\w+$/.test(jr)?((0,pe.ZP)(!1,"Upload takes an invalidate 'accept' type '".concat(jr,"'.Skip for check.")),!0):!1})}return!0};function Ne(Nn,$n){var lr=Nn.createReader(),gr=[];function Tr(){lr.readEntries(function(ur){var Br=Array.prototype.slice.apply(ur);gr=gr.concat(Br);var jr=!Br.length;jr?$n(gr):Tr()})}Tr()}var ze=function($n,lr,gr){var Tr=function ur(Br,jr){Br&&(Br.path=jr||"",Br.isFile?Br.file(function(fr){gr(fr)&&(Br.fullPath&&!fr.webkitRelativePath&&(Object.defineProperties(fr,{webkitRelativePath:{writable:!0}}),fr.webkitRelativePath=Br.fullPath.replace(/^\//,""),Object.defineProperties(fr,{webkitRelativePath:{writable:!1}})),lr([fr]))}):Br.isDirectory&&Ne(Br,function(fr){fr.forEach(function(qn){ur(qn,"".concat(jr).concat(Br.name,"/"))})}))};$n.forEach(function(ur){Tr(ur.webkitGetAsEntry())})},Ke=ze,Ve=["component","prefixCls","className","disabled","id","style","multiple","accept","capture","children","directory","openFileDialogOnClick","onMouseEnter","onMouseLeave"],Je=function(Nn){(0,Te.Z)(lr,Nn);var $n=(0,Re.Z)(lr);function lr(){var gr;(0,Oe.Z)(this,lr);for(var Tr=arguments.length,ur=new Array(Tr),Br=0;Br{let{uid:ur}=Tr;return ur===Nn.uid});return gr===-1?lr.push(Nn):lr[gr]=Nn,lr}function xn(Nn,$n){const lr=Nn.uid!==void 0?"uid":"name";return $n.filter(gr=>gr[lr]===Nn[lr])[0]}function Qn(Nn,$n){const lr=Nn.uid!==void 0?"uid":"name",gr=$n.filter(Tr=>Tr[lr]!==Nn[lr]);return gr.length===$n.length?null:gr}const rr=function(){const $n=(arguments.length>0&&arguments[0]!==void 0?arguments[0]:"").split("/"),gr=$n[$n.length-1].split(/#|\?/)[0];return(/\.[^./\\]*$/.exec(gr)||[""])[0]},Jn=Nn=>Nn.indexOf("image/")===0,mr=Nn=>{if(Nn.type&&!Nn.thumbUrl)return Jn(Nn.type);const $n=Nn.thumbUrl||Nn.url||"",lr=rr($n);return/^data:image\//.test($n)||/(webp|svg|png|gif|jpg|jpeg|jfif|bmp|dpg|ico|heic|heif)$/i.test(lr)?!0:!(/^data:/.test($n)||lr)},Rr=200;function Tn(Nn){return new Promise($n=>{if(!Nn.type||!Jn(Nn.type)){$n("");return}const lr=document.createElement("canvas");lr.width=Rr,lr.height=Rr,lr.style.cssText=`position: fixed; left: 0; top: 0; width: ${Rr}px; height: ${Rr}px; z-index: 9999; display: none;`,document.body.appendChild(lr);const gr=lr.getContext("2d"),Tr=new Image;if(Tr.onload=()=>{const{width:ur,height:Br}=Tr;let jr=Rr,fr=Rr,qn=0,fi=0;ur>Br?(fr=Br*(Rr/ur),fi=-(fr-jr)/2):(jr=ur*(Rr/Br),qn=-(jr-fr)/2),gr.drawImage(Tr,qn,fi,jr,fr);const ui=lr.toDataURL();document.body.removeChild(lr),window.URL.revokeObjectURL(Tr.src),$n(ui)},Tr.crossOrigin="anonymous",Nn.type.startsWith("image/svg+xml")){const ur=new FileReader;ur.onload=()=>{ur.result&&(Tr.src=ur.result)},ur.readAsDataURL(Nn)}else if(Nn.type.startsWith("image/gif")){const ur=new FileReader;ur.onload=()=>{ur.result&&$n(ur.result)},ur.readAsDataURL(Nn)}else Tr.src=window.URL.createObjectURL(Nn)})}var hr=Be(26227),or=Be(41464),yr=Be(15277),ti=Be(93948),mi=Be(6848),Pi=He.forwardRef((Nn,$n)=>{let{prefixCls:lr,className:gr,style:Tr,locale:ur,listType:Br,file:jr,items:fr,progress:qn,iconRender:fi,actionIconRender:ui,itemRender:$i,isImgUrl:wr,showPreviewIcon:oi,showRemoveIcon:ji,showDownloadIcon:Yi,previewIcon:Vi,removeIcon:to,downloadIcon:bo,onPreview:Lo,onDownload:Gi,onClose:Fo}=Nn;var Zr,Pa;const{status:Xr}=jr,[Ma,ts]=He.useState(Xr);He.useEffect(()=>{Xr!=="removed"&&ts(Xr)},[Xr]);const[fa,ys]=He.useState(!1);He.useEffect(()=>{const Ls=setTimeout(()=>{ys(!0)},300);return()=>{clearTimeout(Ls)}},[]);const qa=fi(jr);let Go=He.createElement("div",{className:`${lr}-icon`},qa);if(Br==="picture"||Br==="picture-card"||Br==="picture-circle")if(Ma==="uploading"||!jr.thumbUrl&&!jr.url){const Ls=ke()(`${lr}-list-item-thumbnail`,{[`${lr}-list-item-file`]:Ma!=="uploading"});Go=He.createElement("div",{className:Ls},qa)}else{const Ls=wr!=null&&wr(jr)?He.createElement("img",{src:jr.thumbUrl||jr.url,alt:jr.name,className:`${lr}-list-item-image`,crossOrigin:jr.crossOrigin}):qa,la=ke()(`${lr}-list-item-thumbnail`,{[`${lr}-list-item-file`]:wr&&!wr(jr)});Go=He.createElement("a",{className:la,onClick:na=>Lo(jr,na),href:jr.url||jr.thumbUrl,target:"_blank",rel:"noopener noreferrer"},Ls)}const li=ke()(`${lr}-list-item`,`${lr}-list-item-${Ma}`),Ca=typeof jr.linkProps=="string"?JSON.parse(jr.linkProps):jr.linkProps,Za=ji?ui((typeof to=="function"?to(jr):to)||He.createElement(hr.Z,null),()=>Fo(jr),lr,ur.removeFile):null,lo=Yi&&Ma==="done"?ui((typeof bo=="function"?bo(jr):bo)||He.createElement(or.Z,null),()=>Gi(jr),lr,ur.downloadFile):null,fn=Br!=="picture-card"&&Br!=="picture-circle"&&He.createElement("span",{key:"download-delete",className:ke()(`${lr}-list-item-actions`,{picture:Br==="picture"})},lo,Za),Yo=ke()(`${lr}-list-item-name`),Ms=jr.url?[He.createElement("a",Object.assign({key:"view",target:"_blank",rel:"noopener noreferrer",className:Yo,title:jr.name},Ca,{href:jr.url,onClick:Ls=>Lo(jr,Ls)}),jr.name),fn]:[He.createElement("span",{key:"view",className:Yo,onClick:Ls=>Lo(jr,Ls),title:jr.name},jr.name),fn],_a={pointerEvents:"none",opacity:.5},Bs=oi?He.createElement("a",{href:jr.url||jr.thumbUrl,target:"_blank",rel:"noopener noreferrer",style:jr.url||jr.thumbUrl?void 0:_a,onClick:Ls=>Lo(jr,Ls),title:ur.previewFile},typeof Vi=="function"?Vi(jr):Vi||He.createElement(yr.Z,null)):null,Vs=(Br==="picture-card"||Br==="picture-circle")&&Ma!=="uploading"&&He.createElement("span",{className:`${lr}-list-item-actions`},Bs,Ma==="done"&&lo,Za),{getPrefixCls:ol}=He.useContext(bt.E_),ka=ol(),Aa=He.createElement("div",{className:li},Go,Ms,Vs,fa&&He.createElement(It.default,{motionName:`${ka}-fade`,visible:Ma==="uploading",motionDeadline:2e3},Ls=>{let{className:la}=Ls;const na="percent"in jr?He.createElement(ti.Z,Object.assign({},qn,{type:"line",percent:jr.percent,"aria-label":jr["aria-label"],"aria-labelledby":jr["aria-labelledby"]})):null;return He.createElement("div",{className:ke()(`${lr}-list-item-progress`,la)},na)})),Sa=jr.response&&typeof jr.response=="string"?jr.response:((Zr=jr.error)===null||Zr===void 0?void 0:Zr.statusText)||((Pa=jr.error)===null||Pa===void 0?void 0:Pa.message)||ur.uploadError,xs=Ma==="error"?He.createElement(mi.Z,{title:Sa,getPopupContainer:Ls=>Ls.parentNode},Aa):Aa;return He.createElement("div",{className:ke()(`${lr}-list-item-container`,gr),style:Tr,ref:$n},$i?$i(xs,jr,fr,{download:Gi.bind(null,jr),preview:Lo.bind(null,jr),remove:Fo.bind(null,jr)}):xs)});const vo=(Nn,$n)=>{const{listType:lr="text",previewFile:gr=Tn,onPreview:Tr,onDownload:ur,onRemove:Br,locale:jr,iconRender:fr,isImageUrl:qn=mr,prefixCls:fi,items:ui=[],showPreviewIcon:$i=!0,showRemoveIcon:wr=!0,showDownloadIcon:oi=!1,removeIcon:ji,previewIcon:Yi,downloadIcon:Vi,progress:to={size:[-1,2],showInfo:!1},appendAction:bo,appendActionVisible:Lo=!0,itemRender:Gi,disabled:Fo}=Nn,Zr=(0,nn.Z)(),[Pa,Xr]=He.useState(!1);He.useEffect(()=>{lr!=="picture"&&lr!=="picture-card"&&lr!=="picture-circle"||(ui||[]).forEach(_a=>{typeof document=="undefined"||typeof window=="undefined"||!window.FileReader||!window.File||!(_a.originFileObj instanceof File||_a.originFileObj instanceof Blob)||_a.thumbUrl!==void 0||(_a.thumbUrl="",gr&&gr(_a.originFileObj).then(Bs=>{_a.thumbUrl=Bs||"",Zr()}))})},[lr,ui,gr]),He.useEffect(()=>{Xr(!0)},[]);const Ma=(_a,Bs)=>{if(Tr)return Bs==null||Bs.preventDefault(),Tr(_a)},ts=_a=>{typeof ur=="function"?ur(_a):_a.url&&window.open(_a.url)},fa=_a=>{Br==null||Br(_a)},ys=_a=>{if(fr)return fr(_a,lr);const Bs=_a.status==="uploading",Vs=qn&&qn(_a)?He.createElement(ut,null):He.createElement(Dn,null);let ol=Bs?He.createElement(Rn.Z,null):He.createElement(qt,null);return lr==="picture"?ol=Bs?He.createElement(Rn.Z,null):Vs:(lr==="picture-card"||lr==="picture-circle")&&(ol=Bs?jr.uploading:Vs),ol},qa=(_a,Bs,Vs,ol)=>{const ka={type:"text",size:"small",title:ol,onClick:Aa=>{Bs(),(0,Vt.l$)(_a)&&_a.props.onClick&&_a.props.onClick(Aa)},className:`${Vs}-list-item-action`,disabled:Fo};if((0,Vt.l$)(_a)){const Aa=(0,Vt.Tm)(_a,Object.assign(Object.assign({},_a.props),{onClick:()=>{}}));return He.createElement(on.ZP,Object.assign({},ka,{icon:Aa}))}return He.createElement(on.ZP,Object.assign({},ka),He.createElement("span",null,_a))};He.useImperativeHandle($n,()=>({handlePreview:Ma,handleDownload:ts}));const{getPrefixCls:Go}=He.useContext(bt.E_),li=Go("upload",fi),Ca=Go(),Za=ke()(`${li}-list`,`${li}-list-${lr}`),lo=(0,et.Z)(ui.map(_a=>({key:_a.uid,file:_a})));let Yo={motionDeadline:2e3,motionName:`${li}-${lr==="picture-card"||lr==="picture-circle"?"animate-inline":"animate"}`,keys:lo,motionAppear:Pa};const Ms=He.useMemo(()=>{const _a=Object.assign({},(0,Pt.Z)(Ca));return delete _a.onAppearEnd,delete _a.onEnterEnd,delete _a.onLeaveEnd,_a},[Ca]);return lr!=="picture-card"&&lr!=="picture-circle"&&(Yo=Object.assign(Object.assign({},Ms),Yo)),He.createElement("div",{className:Za},He.createElement(It.CSSMotionList,Object.assign({},Yo,{component:!1}),_a=>{let{key:Bs,file:Vs,className:ol,style:ka}=_a;return He.createElement(Pi,{key:Bs,locale:jr,prefixCls:li,className:ol,style:ka,file:Vs,items:ui,progress:to,listType:lr,isImgUrl:qn,showPreviewIcon:$i,showRemoveIcon:wr,showDownloadIcon:oi,removeIcon:ji,previewIcon:Yi,downloadIcon:Vi,iconRender:ys,actionIconRender:qa,itemRender:Gi,onPreview:Ma,onDownload:ts,onClose:fa})}),bo&&He.createElement(It.default,Object.assign({},Yo,{visible:Lo,forceRender:!0}),_a=>{let{className:Bs,style:Vs}=_a;return(0,Vt.Tm)(bo,ol=>({className:ke()(ol.className,Bs),style:Object.assign(Object.assign(Object.assign({},Vs),{pointerEvents:Bs?"none":void 0}),ol.style)}))}))};var To=He.forwardRef(vo),xo=Be(17313),ma=Be(8378),xa=Be(83116),_i=Be(37613),ro=Nn=>{const{componentCls:$n,iconCls:lr}=Nn;return{[`${$n}-wrapper`]:{[`${$n}-drag`]:{position:"relative",width:"100%",height:"100%",textAlign:"center",background:Nn.colorFillAlter,border:`${Nn.lineWidth}px dashed ${Nn.colorBorder}`,borderRadius:Nn.borderRadiusLG,cursor:"pointer",transition:`border-color ${Nn.motionDurationSlow}`,[$n]:{padding:`${Nn.padding}px 0`},[`${$n}-btn`]:{display:"table",width:"100%",height:"100%",outline:"none"},[`${$n}-drag-container`]:{display:"table-cell",verticalAlign:"middle"},[`&:not(${$n}-disabled):hover`]:{borderColor:Nn.colorPrimaryHover},[`p${$n}-drag-icon`]:{marginBottom:Nn.margin,[lr]:{color:Nn.colorPrimary,fontSize:Nn.uploadThumbnailSize}},[`p${$n}-text`]:{margin:`0 0 ${Nn.marginXXS}px`,color:Nn.colorTextHeading,fontSize:Nn.fontSizeLG},[`p${$n}-hint`]:{color:Nn.colorTextDescription,fontSize:Nn.fontSize},[`&${$n}-disabled`]:{cursor:"not-allowed",[`p${$n}-drag-icon ${lr}, p${$n}-text, p${$n}-hint `]:{color:Nn.colorTextDisabled}}}}}},Kr=Nn=>{const{componentCls:$n,antCls:lr,iconCls:gr,fontSize:Tr,lineHeight:ur}=Nn,Br=`${$n}-list-item`,jr=`${Br}-actions`,fr=`${Br}-action`,qn=Math.round(Tr*ur);return{[`${$n}-wrapper`]:{[`${$n}-list`]:Object.assign(Object.assign({},(0,xo.dF)()),{lineHeight:Nn.lineHeight,[Br]:{position:"relative",height:Nn.lineHeight*Tr,marginTop:Nn.marginXS,fontSize:Tr,display:"flex",alignItems:"center",transition:`background-color ${Nn.motionDurationSlow}`,"&:hover":{backgroundColor:Nn.controlItemBgHover},[`${Br}-name`]:Object.assign(Object.assign({},xo.vS),{padding:`0 ${Nn.paddingXS}px`,lineHeight:ur,flex:"auto",transition:`all ${Nn.motionDurationSlow}`}),[jr]:{[fr]:{opacity:0},[`${fr}${lr}-btn-sm`]:{height:qn,border:0,lineHeight:1,"> span":{transform:"scale(1)"}},[` ${fr}:focus-visible, &.picture ${fr} `]:{opacity:1},[gr]:{color:Nn.actionsColor,transition:`all ${Nn.motionDurationSlow}`},[`&:hover ${gr}`]:{color:Nn.colorText}},[`${$n}-icon ${gr}`]:{color:Nn.colorTextDescription,fontSize:Tr},[`${Br}-progress`]:{position:"absolute",bottom:-Nn.uploadProgressOffset,width:"100%",paddingInlineStart:Tr+Nn.paddingXS,fontSize:Tr,lineHeight:0,pointerEvents:"none","> div":{margin:0}}},[`${Br}:hover ${fr}`]:{opacity:1,color:Nn.colorText},[`${Br}-error`]:{color:Nn.colorError,[`${Br}-name, ${$n}-icon ${gr}`]:{color:Nn.colorError},[jr]:{[`${gr}, ${gr}:hover`]:{color:Nn.colorError},[fr]:{opacity:1}}},[`${$n}-list-item-container`]:{transition:`opacity ${Nn.motionDurationSlow}, height ${Nn.motionDurationSlow}`,"&::before":{display:"table",width:0,height:0,content:'""'}}})}}},Bi=Be(93083),_r=Be(1950);const pi=new Bi.Keyframes("uploadAnimateInlineIn",{from:{width:0,height:0,margin:0,padding:0,opacity:0}}),ii=new Bi.Keyframes("uploadAnimateInlineOut",{to:{width:0,height:0,margin:0,padding:0,opacity:0}});var Jr=Nn=>{const{componentCls:$n}=Nn,lr=`${$n}-animate-inline`;return[{[`${$n}-wrapper`]:{[`${lr}-appear, ${lr}-enter, ${lr}-leave`]:{animationDuration:Nn.motionDurationSlow,animationTimingFunction:Nn.motionEaseInOutCirc,animationFillMode:"forwards"},[`${lr}-appear, ${lr}-enter`]:{animationName:pi},[`${lr}-leave`]:{animationName:ii}}},{[`${$n}-wrapper`]:(0,_r.J$)(Nn)},pi,ii]},Kt=Be(93398),Le=Be(64993);const We=Nn=>{const{componentCls:$n,iconCls:lr,uploadThumbnailSize:gr,uploadProgressOffset:Tr}=Nn,ur=`${$n}-list`,Br=`${ur}-item`;return{[`${$n}-wrapper`]:{[` ${ur}${ur}-picture, ${ur}${ur}-picture-card, ${ur}${ur}-picture-circle `]:{[Br]:{position:"relative",height:gr+Nn.lineWidth*2+Nn.paddingXS*2,padding:Nn.paddingXS,border:`${Nn.lineWidth}px ${Nn.lineType} ${Nn.colorBorder}`,borderRadius:Nn.borderRadiusLG,"&:hover":{background:"transparent"},[`${Br}-thumbnail`]:Object.assign(Object.assign({},xo.vS),{width:gr,height:gr,lineHeight:`${gr+Nn.paddingSM}px`,textAlign:"center",flex:"none",[lr]:{fontSize:Nn.fontSizeHeading2,color:Nn.colorPrimary},img:{display:"block",width:"100%",height:"100%",overflow:"hidden"}}),[`${Br}-progress`]:{bottom:Tr,width:`calc(100% - ${Nn.paddingSM*2}px)`,marginTop:0,paddingInlineStart:gr+Nn.paddingXS}},[`${Br}-error`]:{borderColor:Nn.colorError,[`${Br}-thumbnail ${lr}`]:{[`svg path[fill='${Kt.blue[0]}']`]:{fill:Nn.colorErrorBg},[`svg path[fill='${Kt.blue.primary}']`]:{fill:Nn.colorError}}},[`${Br}-uploading`]:{borderStyle:"dashed",[`${Br}-name`]:{marginBottom:Tr}}},[`${ur}${ur}-picture-circle ${Br}`]:{[`&, &::before, ${Br}-thumbnail`]:{borderRadius:"50%"}}}}},De=Nn=>{const{componentCls:$n,iconCls:lr,fontSizeLG:gr,colorTextLightSolid:Tr}=Nn,ur=`${$n}-list`,Br=`${ur}-item`,jr=Nn.uploadPicCardSize;return{[` ${$n}-wrapper${$n}-picture-card-wrapper, ${$n}-wrapper${$n}-picture-circle-wrapper `]:Object.assign(Object.assign({},(0,xo.dF)()),{display:"inline-block",width:"100%",[`${$n}${$n}-select`]:{width:jr,height:jr,marginInlineEnd:Nn.marginXS,marginBottom:Nn.marginXS,textAlign:"center",verticalAlign:"top",backgroundColor:Nn.colorFillAlter,border:`${Nn.lineWidth}px dashed ${Nn.colorBorder}`,borderRadius:Nn.borderRadiusLG,cursor:"pointer",transition:`border-color ${Nn.motionDurationSlow}`,[`> ${$n}`]:{display:"flex",alignItems:"center",justifyContent:"center",height:"100%",textAlign:"center"},[`&:not(${$n}-disabled):hover`]:{borderColor:Nn.colorPrimary}},[`${ur}${ur}-picture-card, ${ur}${ur}-picture-circle`]:{[`${ur}-item-container`]:{display:"inline-block",width:jr,height:jr,marginBlock:`0 ${Nn.marginXS}px`,marginInline:`0 ${Nn.marginXS}px`,verticalAlign:"top"},"&::after":{display:"none"},[Br]:{height:"100%",margin:0,"&::before":{position:"absolute",zIndex:1,width:`calc(100% - ${Nn.paddingXS*2}px)`,height:`calc(100% - ${Nn.paddingXS*2}px)`,backgroundColor:Nn.colorBgMask,opacity:0,transition:`all ${Nn.motionDurationSlow}`,content:'" "'}},[`${Br}:hover`]:{[`&::before, ${Br}-actions`]:{opacity:1}},[`${Br}-actions`]:{position:"absolute",insetInlineStart:0,zIndex:10,width:"100%",whiteSpace:"nowrap",textAlign:"center",opacity:0,transition:`all ${Nn.motionDurationSlow}`,[`${lr}-eye, ${lr}-download, ${lr}-delete`]:{zIndex:10,width:gr,margin:`0 ${Nn.marginXXS}px`,fontSize:gr,cursor:"pointer",transition:`all ${Nn.motionDurationSlow}`,svg:{verticalAlign:"baseline"}}},[`${Br}-actions, ${Br}-actions:hover`]:{[`${lr}-eye, ${lr}-download, ${lr}-delete`]:{color:new Le.C(Tr).setAlpha(.65).toRgbString(),"&:hover":{color:Tr}}},[`${Br}-thumbnail, ${Br}-thumbnail img`]:{position:"static",display:"block",width:"100%",height:"100%",objectFit:"contain"},[`${Br}-name`]:{display:"none",textAlign:"center"},[`${Br}-file + ${Br}-name`]:{position:"absolute",bottom:Nn.margin,display:"block",width:`calc(100% - ${Nn.paddingXS*2}px)`},[`${Br}-uploading`]:{[`&${Br}`]:{backgroundColor:Nn.colorFillAlter},[`&::before, ${lr}-eye, ${lr}-download, ${lr}-delete`]:{display:"none"}},[`${Br}-progress`]:{bottom:Nn.marginXL,width:`calc(100% - ${Nn.paddingXS*2}px)`,paddingInlineStart:0}}}),[`${$n}-wrapper${$n}-picture-circle-wrapper`]:{[`${$n}${$n}-select`]:{borderRadius:"50%"}}}};var dt=Nn=>{const{componentCls:$n}=Nn;return{[`${$n}-rtl`]:{direction:"rtl"}}};const Mt=Nn=>{const{componentCls:$n,colorTextDisabled:lr}=Nn;return{[`${$n}-wrapper`]:Object.assign(Object.assign({},(0,xo.Wf)(Nn)),{[$n]:{outline:0,"input[type='file']":{cursor:"pointer"}},[`${$n}-select`]:{display:"inline-block"},[`${$n}-disabled`]:{color:lr,cursor:"not-allowed"}})}};var wt=(0,xa.Z)("Upload",Nn=>{const{fontSizeHeading3:$n,fontSize:lr,lineHeight:gr,lineWidth:Tr,controlHeightLG:ur}=Nn,Br=Math.round(lr*gr),jr=(0,_i.TS)(Nn,{uploadThumbnailSize:$n*2,uploadProgressOffset:Br/2+Tr,uploadPicCardSize:ur*2.55});return[Mt(jr),ro(jr),We(jr),De(jr),Kr(jr),Jr(jr),dt(jr),(0,ma.Z)(jr)]},Nn=>({actionsColor:Nn.colorTextDescription})),rn=function(Nn,$n,lr,gr){function Tr(ur){return ur instanceof lr?ur:new lr(function(Br){Br(ur)})}return new(lr||(lr=Promise))(function(ur,Br){function jr(fi){try{qn(gr.next(fi))}catch(ui){Br(ui)}}function fr(fi){try{qn(gr.throw(fi))}catch(ui){Br(ui)}}function qn(fi){fi.done?ur(fi.value):Tr(fi.value).then(jr,fr)}qn((gr=gr.apply(Nn,$n||[])).next())})};const un=`__LIST_IGNORE_${Date.now()}__`,zn=(Nn,$n)=>{const{fileList:lr,defaultFileList:gr,onRemove:Tr,showUploadList:ur=!0,listType:Br="text",onPreview:jr,onDownload:fr,onChange:qn,onDrop:fi,previewFile:ui,disabled:$i,locale:wr,iconRender:oi,isImageUrl:ji,progress:Yi,prefixCls:Vi,className:to,type:bo="select",children:Lo,style:Gi,itemRender:Fo,maxCount:Zr,data:Pa={},multiple:Xr=!1,action:Ma="",accept:ts="",supportServerRender:fa=!0,rootClassName:ys}=Nn,qa=He.useContext(Et.Z),Go=$i!=null?$i:qa,[li,Ca]=(0,vt.Z)(gr||[],{value:lr,postState:qs=>qs!=null?qs:[]}),[Za,lo]=He.useState("drop"),fn=He.useRef(null);He.useMemo(()=>{const qs=Date.now();(lr||[]).forEach((ws,au)=>{!ws.uid&&!Object.isFrozen(ws)&&(ws.uid=`__AUTO__${qs}_${au}__`)})},[lr]);const Yo=(qs,ws,au)=>{let hl=(0,et.Z)(ws),Cs=!1;Zr===1?hl=hl.slice(-1):Zr&&(Cs=hl.length>Zr,hl=hl.slice(0,Zr)),(0,Tt.flushSync)(()=>{Ca(hl)});const wl={file:qs,fileList:hl};au&&(wl.event=au),(!Cs||hl.some(Dc=>Dc.uid===qs.uid))&&(0,Tt.flushSync)(()=>{qn==null||qn(wl)})},Ms=(qs,ws)=>rn(void 0,void 0,void 0,function*(){const{beforeUpload:au,transformFile:hl}=Nn;let Cs=qs;if(au){const wl=yield au(qs,ws);if(wl===!1)return!1;if(delete qs[un],wl===un)return Object.defineProperty(qs,un,{value:!0,configurable:!0}),!1;typeof wl=="object"&&wl&&(Cs=wl)}return hl&&(Cs=yield hl(Cs)),Cs}),_a=qs=>{const ws=qs.filter(Cs=>!Cs.file[un]);if(!ws.length)return;const au=ws.map(Cs=>$t(Cs.file));let hl=(0,et.Z)(li);au.forEach(Cs=>{hl=Jt(Cs,hl)}),au.forEach((Cs,wl)=>{let Dc=Cs;if(ws[wl].parsedFile)Cs.status="uploading";else{const{originFileObj:Ha}=Cs;let Xs;try{Xs=new File([Ha],Ha.name,{type:Ha.type})}catch(ks){Xs=new Blob([Ha],{type:Ha.type}),Xs.name=Ha.name,Xs.lastModifiedDate=new Date,Xs.lastModified=new Date().getTime()}Xs.uid=Cs.uid,Dc=Xs}Yo(Dc,hl)})},Bs=(qs,ws,au)=>{try{typeof qs=="string"&&(qs=JSON.parse(qs))}catch(wl){}if(!xn(ws,li))return;const hl=$t(ws);hl.status="done",hl.percent=100,hl.response=qs,hl.xhr=au;const Cs=Jt(hl,li);Yo(hl,Cs)},Vs=(qs,ws)=>{if(!xn(ws,li))return;const au=$t(ws);au.status="uploading",au.percent=qs.percent;const hl=Jt(au,li);Yo(au,hl,qs)},ol=(qs,ws,au)=>{if(!xn(au,li))return;const hl=$t(au);hl.error=qs,hl.response=ws,hl.status="error";const Cs=Jt(hl,li);Yo(hl,Cs)},ka=qs=>{let ws;Promise.resolve(typeof Tr=="function"?Tr(qs):Tr).then(au=>{var hl;if(au===!1)return;const Cs=Qn(qs,li);Cs&&(ws=Object.assign(Object.assign({},qs),{status:"removed"}),li==null||li.forEach(wl=>{const Dc=ws.uid!==void 0?"uid":"name";wl[Dc]===ws[Dc]&&!Object.isFrozen(wl)&&(wl.status="removed")}),(hl=fn.current)===null||hl===void 0||hl.abort(ws),Yo(ws,Cs))})},Aa=qs=>{lo(qs.type),qs.type==="drop"&&(fi==null||fi(qs))};He.useImperativeHandle($n,()=>({onBatchStart:_a,onSuccess:Bs,onProgress:Vs,onError:ol,fileList:li,upload:fn.current}));const{getPrefixCls:Sa,direction:xs,upload:Ls}=He.useContext(bt.E_),la=Sa("upload",Vi),na=Object.assign(Object.assign({onBatchStart:_a,onError:ol,onProgress:Vs,onSuccess:Bs},Nn),{data:Pa,multiple:Xr,action:Ma,accept:ts,supportServerRender:fa,prefixCls:la,disabled:Go,beforeUpload:Ms,onChange:void 0});delete na.className,delete na.style,(!Lo||Go)&&delete na.id;const[Ri,qo]=wt(la),[Ts]=(0,lt.Z)("Upload",Nt.Z.Upload),{showRemoveIcon:pl,showPreviewIcon:Rs,showDownloadIcon:As,removeIcon:Ns,previewIcon:Ks,downloadIcon:Yl}=typeof ur=="boolean"?{}:ur,Gl=(qs,ws)=>ur?He.createElement(To,{prefixCls:la,listType:Br,items:li,previewFile:ui,onPreview:jr,onDownload:fr,onRemove:ka,showRemoveIcon:!Go&&pl,showPreviewIcon:Rs,showDownloadIcon:As,removeIcon:Ns,previewIcon:Ks,downloadIcon:Yl,iconRender:oi,locale:Object.assign(Object.assign({},Ts),wr),isImageUrl:ji,progress:Yi,appendAction:qs,appendActionVisible:ws,itemRender:Fo,disabled:Go}):qs,yu=ke()(`${la}-wrapper`,to,ys,qo,Ls==null?void 0:Ls.className,{[`${la}-rtl`]:xs==="rtl",[`${la}-picture-card-wrapper`]:Br==="picture-card",[`${la}-picture-circle-wrapper`]:Br==="picture-circle"}),Pr=Object.assign(Object.assign({},Ls==null?void 0:Ls.style),Gi);if(bo==="drag"){const qs=ke()(qo,la,`${la}-drag`,{[`${la}-drag-uploading`]:li.some(ws=>ws.status==="uploading"),[`${la}-drag-hover`]:Za==="dragover",[`${la}-disabled`]:Go,[`${la}-rtl`]:xs==="rtl"});return Ri(He.createElement("span",{className:yu},He.createElement("div",{className:qs,style:Pr,onDrop:Aa,onDragOver:Aa,onDragLeave:Aa},He.createElement(At,Object.assign({},na,{ref:fn,className:`${la}-btn`}),He.createElement("div",{className:`${la}-drag-container`},Lo))),Gl()))}const ou=ke()(la,`${la}-select`,{[`${la}-disabled`]:Go}),Tc=(qs=>He.createElement("div",{className:ou,style:qs},He.createElement(At,Object.assign({},na,{ref:fn}))))(Lo?void 0:{display:"none"});return Ri(Br==="picture-card"||Br==="picture-circle"?He.createElement("span",{className:yu},Gl(Tc,!!Lo)):He.createElement("span",{className:yu},Tc,Gl()))};var tn=He.forwardRef(zn),Vn=function(Nn,$n){var lr={};for(var gr in Nn)Object.prototype.hasOwnProperty.call(Nn,gr)&&$n.indexOf(gr)<0&&(lr[gr]=Nn[gr]);if(Nn!=null&&typeof Object.getOwnPropertySymbols=="function")for(var Tr=0,gr=Object.getOwnPropertySymbols(Nn);Tr{var{style:lr,height:gr}=Nn,Tr=Vn(Nn,["style","height"]);return He.createElement(tn,Object.assign({ref:$n},Tr,{type:"drag",style:Object.assign(Object.assign({},lr),{height:gr})}))});const Bn=tn;Bn.Dragger=dr,Bn.LIST_IGNORE=un;var An=Bn},99498:function(sn,an,Be){(function(He){He(Be(89780))})(function(He){He.defineOption("placeholder","",function(Te,Re,Ie){var be=Ie&&Ie!=He.Init;if(Re&&!be)Te.on("blur",Ze),Te.on("change",Oe),Te.on("swapDoc",Oe),He.on(Te.getInputField(),"compositionupdate",Te.state.placeholderCompose=function(){ke(Te)}),Oe(Te);else if(!Re&&be){Te.off("blur",Ze),Te.off("change",Oe),Te.off("swapDoc",Oe),He.off(Te.getInputField(),"compositionupdate",Te.state.placeholderCompose),et(Te);var Pe=Te.getWrapperElement();Pe.className=Pe.className.replace(" CodeMirror-empty","")}Re&&!Te.hasFocus()&&Ze(Te)});function et(Te){Te.state.placeholder&&(Te.state.placeholder.parentNode.removeChild(Te.state.placeholder),Te.state.placeholder=null)}function Ge(Te){et(Te);var Re=Te.state.placeholder=document.createElement("pre");Re.style.cssText="height: 0; overflow: visible",Re.style.direction=Te.getOption("direction"),Re.className="CodeMirror-placeholder CodeMirror-line-like";var Ie=Te.getOption("placeholder");typeof Ie=="string"&&(Ie=document.createTextNode(Ie)),Re.appendChild(Ie),Te.display.lineSpace.insertBefore(Re,Te.display.lineSpace.firstChild)}function ke(Te){setTimeout(function(){var Re=!1,Ie=Te.getInputField();Ie.nodeName=="TEXTAREA"?Re=!Ie.value:Te.lineCount()==1&&(Re=!/[^\u200b]/.test(Ie.querySelector(".CodeMirror-line").textContent)),Re?Ge(Te):et(Te)},20)}function Ze(Te){we(Te)&&Ge(Te)}function Oe(Te){var Re=Te.getWrapperElement(),Ie=we(Te);Re.className=Re.className.replace(" CodeMirror-empty","")+(Ie?" CodeMirror-empty":""),Ie?Ge(Te):et(Te)}function we(Te){return Te.lineCount()===1&&Te.getLine(0)===""}})},25717:function(sn,an,Be){(function(He){He(Be(89780))})(function(He){var et={pairs:`()[]{}''""`,closeBefore:`)]}'":;>`,triples:"",explode:"[]{}"},Ge=He.Pos;He.defineOption("autoCloseBrackets",!1,function(ie,ae,fe){fe&&fe!=He.Init&&(ie.removeKeyMap(Ze),ie.state.closeBrackets=null),ae&&(Oe(ke(ae,"pairs")),ie.state.closeBrackets=ae,ie.addKeyMap(Ze))});function ke(ie,ae){return ae=="pairs"&&typeof ie=="string"?ie:typeof ie=="object"&&ie[ae]!=null?ie[ae]:et[ae]}var Ze={Backspace:Re,Enter:Ie};function Oe(ie){for(var ae=0;ae=0;ve--){var he=de[ve].head;ie.replaceRange("",Ge(he.line,he.ch-1),Ge(he.line,he.ch+1),"+delete")}}function Ie(ie){var ae=Te(ie),fe=ae&&ke(ae,"explode");if(!fe||ie.getOption("disableInput"))return He.Pass;for(var de=ie.listSelections(),ve=0;ve0;return{anchor:new Ge(ie.anchor.line,ie.anchor.ch+(ae?-1:1)),head:new Ge(ie.head.line,ie.head.ch+(ae?1:-1))}}function Pe(ie,ae){var fe=Te(ie);if(!fe||ie.getOption("disableInput"))return He.Pass;var de=ke(fe,"pairs"),ve=de.indexOf(ae);if(ve==-1)return He.Pass;for(var xe=ke(fe,"closeBefore"),he=ke(fe,"triples"),pe=de.charAt(ve+1)==ae,Se=ie.listSelections(),Ne=ve%2==0,ze,Ke=0;Ke=0&&ie.getRange(Je,Ge(Je.line,Je.ch+3))==ae+ae+ae?tt="skipThree":tt="skip";else if(pe&&Je.ch>1&&he.indexOf(ae)>=0&&ie.getRange(Ge(Je.line,Je.ch-2),Je)==ae+ae){if(Je.ch>2&&/\bstring/.test(ie.getTokenTypeAt(Ge(Je.line,Je.ch-2))))return He.Pass;tt="addFour"}else if(pe){var st=Je.ch==0?" ":ie.getRange(Ge(Je.line,Je.ch-1),Je);if(!He.isWordChar(gt)&&st!=ae&&!He.isWordChar(st))tt="both";else return He.Pass}else if(Ne&&(gt.length===0||/\s/.test(gt)||xe.indexOf(gt)>-1))tt="both";else return He.Pass;if(!ze)ze=tt;else if(ze!=tt)return He.Pass}var St=ve%2?de.charAt(ve-1):ae,At=ve%2?ae:de.charAt(ve+1);ie.operation(function(){if(ze=="skip")ie.execCommand("goCharRight");else if(ze=="skipThree")for(var vt=0;vt<3;vt++)ie.execCommand("goCharRight");else if(ze=="surround"){for(var Tt=ie.getSelections(),vt=0;vt'"]=function(je){return ke(je)}),Re.addKeyMap(Pe)}});var et=["area","base","br","col","command","embed","hr","img","input","keygen","link","meta","param","source","track","wbr"],Ge=["applet","blockquote","body","button","div","dl","fieldset","form","frameset","h1","h2","h3","h4","h5","h6","head","html","iframe","layer","legend","object","ol","p","select","table","ul"];function ke(Re){if(Re.getOption("disableInput"))return He.Pass;for(var Ie=Re.listSelections(),be=[],Pe=Re.getOption("autoCloseTags"),je=0;jeye.ch&&(ve=ve.slice(0,ve.length-ie.end+ye.ch));var Se=ve.toLowerCase();if(!ve||ie.type=="string"&&(ie.end!=ye.ch||!/[\"\']/.test(ie.string.charAt(ie.string.length-1))||ie.string.length==1)||ie.type=="tag"&&de.close||ie.string.indexOf("/")==ye.ch-ie.start-1||he&&we(he,Se)>-1||Te(Re,ae.mode.xmlCurrentContext&&ae.mode.xmlCurrentContext(fe)||[],ve,ye,!0))return He.Pass;var Ne=typeof Pe=="object"&&Pe.emptyTags;if(Ne&&we(Ne,ve)>-1){be[je]={text:"/>",newPos:He.Pos(ye.line,ye.ch+2)};continue}var ze=pe&&we(pe,Se)>-1;be[je]={indent:ze,text:">"+(ze?` `:"")+"",newPos:ze?He.Pos(ye.line+1,0):He.Pos(ye.line,ye.ch+1)}}for(var Ke=typeof Pe=="object"&&Pe.dontIndentOnAutoClose,je=Ie.length-1;je>=0;je--){var Ve=be[je];Re.replaceRange(Ve.text,Ie[je].head,Ie[je].anchor,"+insert");var Je=Re.listSelections().slice(0);Je[je]={head:Ve.newPos,anchor:Ve.newPos},Re.setSelections(Je),!Ke&&Ve.indent&&(Re.indentLine(Ve.newPos.line,null,!0),Re.indentLine(Ve.newPos.line+1,null,!0))}}function Ze(Re,Ie){for(var be=Re.listSelections(),Pe=[],je=Ie?"/":""&&(he+=">"),Pe[ae]=he}if(Re.replaceSelections(Pe),be=Re.listSelections(),!ie)for(var ae=0;ae=0&&Ie[fe]==be;fe--)++ae;Pe=ie.to;for(var fe=1;fe=fe.max))return fe.ch=0,fe.text=fe.cm.getLine(++fe.line),!0}function Ie(fe){if(!(fe.line<=fe.min))return fe.text=fe.cm.getLine(--fe.line),fe.ch=fe.text.length,!0}function be(fe){for(;;){var de=fe.text.indexOf(">",fe.ch);if(de==-1){if(Re(fe))continue;return}if(!Te(fe,de+1)){fe.ch=de+1;continue}var ve=fe.text.lastIndexOf("/",de),xe=ve>-1&&!/\S/.test(fe.text.slice(ve+1,de));return fe.ch=de+1,xe?"selfClose":"regular"}}function Pe(fe){for(;;){var de=fe.ch?fe.text.lastIndexOf("<",fe.ch-1):-1;if(de==-1){if(Ie(fe))continue;return}if(!Te(fe,de+1)){fe.ch=de;continue}Oe.lastIndex=de,fe.ch=de;var ve=Oe.exec(fe.text);if(ve&&ve.index==de)return ve}}function je(fe){for(;;){Oe.lastIndex=fe.ch;var de=Oe.exec(fe.text);if(!de){if(Re(fe))continue;return}if(!Te(fe,de.index+1)){fe.ch=de.index+1;continue}return fe.ch=de.index+de[0].length,de}}function ye(fe){for(;;){var de=fe.ch?fe.text.lastIndexOf(">",fe.ch-1):-1;if(de==-1){if(Ie(fe))continue;return}if(!Te(fe,de+1)){fe.ch=de;continue}var ve=fe.text.lastIndexOf("/",de),xe=ve>-1&&!/\S/.test(fe.text.slice(ve+1,de));return fe.ch=de+1,xe?"selfClose":"regular"}}function ie(fe,de){for(var ve=[];;){var xe=je(fe),he,pe=fe.line,Se=fe.ch-(xe?xe[0].length:0);if(!xe||!(he=be(fe)))return;if(he!="selfClose")if(xe[1]){for(var Ne=ve.length-1;Ne>=0;--Ne)if(ve[Ne]==xe[2]){ve.length=Ne;break}if(Ne<0&&(!de||de==xe[2]))return{tag:xe[2],from:et(pe,Se),to:et(fe.line,fe.ch)}}else ve.push(xe[2])}}function ae(fe,de){for(var ve=[];;){var xe=ye(fe);if(!xe)return;if(xe=="selfClose"){Pe(fe);continue}var he=fe.line,pe=fe.ch,Se=Pe(fe);if(!Se)return;if(Se[1])ve.push(Se[2]);else{for(var Ne=ve.length-1;Ne>=0;--Ne)if(ve[Ne]==Se[2]){ve.length=Ne;break}if(Ne<0&&(!de||de==Se[2]))return{tag:Se[2],from:et(fe.line,fe.ch),to:et(he,pe)}}}}He.registerHelper("fold","xml",function(fe,de){for(var ve=new we(fe,de.line,0);;){var xe=je(ve);if(!xe||ve.line!=de.line)return;var he=be(ve);if(!he)return;if(!xe[1]&&he!="selfClose"){var pe=et(ve.line,ve.ch),Se=ie(ve,xe[2]);return Se&&Ge(Se.from,pe)>0?{from:pe,to:Se.from}:null}}}),He.findMatchingTag=function(fe,de,ve){var xe=new we(fe,de.line,de.ch,ve);if(!(xe.text.indexOf(">")==-1&&xe.text.indexOf("<")==-1)){var he=be(xe),pe=he&&et(xe.line,xe.ch),Se=he&&Pe(xe);if(!(!he||!Se||Ge(xe,de)>0)){var Ne={from:et(xe.line,xe.ch),to:pe,tag:Se[2]};return he=="selfClose"?{open:Ne,close:null,at:"open"}:Se[1]?{open:ae(xe,Se[2]),close:Ne,at:"close"}:(xe=new we(fe,pe.line,pe.ch,ve),{open:Ne,close:ie(xe,Se[2]),at:"open"})}}},He.findEnclosingTag=function(fe,de,ve,xe){for(var he=new we(fe,de.line,de.ch,ve);;){var pe=ae(he,xe);if(!pe)break;var Se=new we(fe,de.line,de.ch,ve),Ne=ie(Se,pe.tag);if(Ne)return{open:pe,close:Ne}}},He.scanForClosingTag=function(fe,de,ve,xe){var he=new we(fe,de.line,de.ch,xe?{from:0,to:xe}:null);return ie(he,ve)}})},89780:function(sn){(function(an,Be){sn.exports=Be()})(this,function(){"use strict";var an=navigator.userAgent,Be=navigator.platform,He=/gecko\/\d/i.test(an),et=/MSIE \d/.test(an),Ge=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(an),ke=/Edge\/(\d+)/.exec(an),Ze=et||Ge||ke,Oe=Ze&&(et?document.documentMode||6:+(ke||Ge)[1]),we=!ke&&/WebKit\//.test(an),Te=we&&/Qt\/\d+\.\d+/.test(an),Re=!ke&&/Chrome\//.test(an),Ie=/Opera\//.test(an),be=/Apple Computer/.test(navigator.vendor),Pe=/Mac OS X 1\d\D([8-9]|\d\d)\D/.test(an),je=/PhantomJS/.test(an),ye=!ke&&/AppleWebKit/.test(an)&&/Mobile\/\w+/.test(an),ie=/Android/.test(an),ae=ye||ie||/webOS|BlackBerry|Opera Mini|Opera Mobi|IEMobile/i.test(an),fe=ye||/Mac/.test(Be),de=/\bCrOS\b/.test(an),ve=/win/i.test(Be),xe=Ie&&an.match(/Version\/(\d*\.\d*)/);xe&&(xe=Number(xe[1])),xe&&xe>=15&&(Ie=!1,we=!0);var he=fe&&(Te||Ie&&(xe==null||xe<12.11)),pe=He||Ze&&Oe>=9;function Se(Ee){return new RegExp("(^|\\s)"+Ee+"(?:$|\\s)\\s*")}var Ne=function(Ee,_e){var it=Ee.className,nt=Se(_e).exec(it);if(nt){var ct=it.slice(nt.index+nt[0].length);Ee.className=it.slice(0,nt.index)+(ct?nt[1]+ct:"")}};function ze(Ee){for(var _e=Ee.childNodes.length;_e>0;--_e)Ee.removeChild(Ee.firstChild);return Ee}function Ke(Ee,_e){return ze(Ee).appendChild(_e)}function Ve(Ee,_e,it,nt){var ct=document.createElement(Ee);if(it&&(ct.className=it),nt&&(ct.style.cssText=nt),typeof _e=="string")ct.appendChild(document.createTextNode(_e));else if(_e)for(var jt=0;jt<_e.length;++jt)ct.appendChild(_e[jt]);return ct}function Je(Ee,_e,it,nt){var ct=Ve(Ee,_e,it,nt);return ct.setAttribute("role","presentation"),ct}var tt;document.createRange?tt=function(Ee,_e,it,nt){var ct=document.createRange();return ct.setEnd(nt||Ee,it),ct.setStart(Ee,_e),ct}:tt=function(Ee,_e,it){var nt=document.body.createTextRange();try{nt.moveToElementText(Ee.parentNode)}catch(ct){return nt}return nt.collapse(!0),nt.moveEnd("character",it),nt.moveStart("character",_e),nt};function gt(Ee,_e){if(_e.nodeType==3&&(_e=_e.parentNode),Ee.contains)return Ee.contains(_e);do if(_e.nodeType==11&&(_e=_e.host),_e==Ee)return!0;while(_e=_e.parentNode)}function st(){var Ee;try{Ee=document.activeElement}catch(_e){Ee=document.body||null}for(;Ee&&Ee.shadowRoot&&Ee.shadowRoot.activeElement;)Ee=Ee.shadowRoot.activeElement;return Ee}function St(Ee,_e){var it=Ee.className;Se(_e).test(it)||(Ee.className+=(it?" ":"")+_e)}function At(Ee,_e){for(var it=Ee.split(" "),nt=0;nt=_e)return hn+(_e-jt);hn+=Mn-jt,hn+=it-hn%it,jt=Mn+1}}var lt=function(){this.id=null,this.f=null,this.time=0,this.handler=Tt(this.onTimeout,this)};lt.prototype.onTimeout=function(Ee){Ee.id=0,Ee.time<=+new Date?Ee.f():setTimeout(Ee.handler,Ee.time-+new Date)},lt.prototype.set=function(Ee,_e){this.f=_e;var it=+new Date+Ee;(!this.id||it=_e)return nt+Math.min(hn,_e-ct);if(ct+=jt-nt,ct+=it-ct%it,nt=jt+1,ct>=_e)return nt}}var Rn=[""];function Zn(Ee){for(;Rn.length<=Ee;)Rn.push(ln(Rn)+" ");return Rn[Ee]}function ln(Ee){return Ee[Ee.length-1]}function Gn(Ee,_e){for(var it=[],nt=0;nt"\x80"&&(Ee.toUpperCase()!=Ee.toLowerCase()||ft.test(Ee))}function Ot(Ee,_e){return _e?_e.source.indexOf("\\w")>-1&&Bt(Ee)?!0:_e.test(Ee):Bt(Ee)}function ut(Ee){for(var _e in Ee)if(Ee.hasOwnProperty(_e)&&Ee[_e])return!1;return!0}var It=/[\u0300-\u036f\u0483-\u0489\u0591-\u05bd\u05bf\u05c1\u05c2\u05c4\u05c5\u05c7\u0610-\u061a\u064b-\u065e\u0670\u06d6-\u06dc\u06de-\u06e4\u06e7\u06e8\u06ea-\u06ed\u0711\u0730-\u074a\u07a6-\u07b0\u07eb-\u07f3\u0816-\u0819\u081b-\u0823\u0825-\u0827\u0829-\u082d\u0900-\u0902\u093c\u0941-\u0948\u094d\u0951-\u0955\u0962\u0963\u0981\u09bc\u09be\u09c1-\u09c4\u09cd\u09d7\u09e2\u09e3\u0a01\u0a02\u0a3c\u0a41\u0a42\u0a47\u0a48\u0a4b-\u0a4d\u0a51\u0a70\u0a71\u0a75\u0a81\u0a82\u0abc\u0ac1-\u0ac5\u0ac7\u0ac8\u0acd\u0ae2\u0ae3\u0b01\u0b3c\u0b3e\u0b3f\u0b41-\u0b44\u0b4d\u0b56\u0b57\u0b62\u0b63\u0b82\u0bbe\u0bc0\u0bcd\u0bd7\u0c3e-\u0c40\u0c46-\u0c48\u0c4a-\u0c4d\u0c55\u0c56\u0c62\u0c63\u0cbc\u0cbf\u0cc2\u0cc6\u0ccc\u0ccd\u0cd5\u0cd6\u0ce2\u0ce3\u0d3e\u0d41-\u0d44\u0d4d\u0d57\u0d62\u0d63\u0dca\u0dcf\u0dd2-\u0dd4\u0dd6\u0ddf\u0e31\u0e34-\u0e3a\u0e47-\u0e4e\u0eb1\u0eb4-\u0eb9\u0ebb\u0ebc\u0ec8-\u0ecd\u0f18\u0f19\u0f35\u0f37\u0f39\u0f71-\u0f7e\u0f80-\u0f84\u0f86\u0f87\u0f90-\u0f97\u0f99-\u0fbc\u0fc6\u102d-\u1030\u1032-\u1037\u1039\u103a\u103d\u103e\u1058\u1059\u105e-\u1060\u1071-\u1074\u1082\u1085\u1086\u108d\u109d\u135f\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17b7-\u17bd\u17c6\u17c9-\u17d3\u17dd\u180b-\u180d\u18a9\u1920-\u1922\u1927\u1928\u1932\u1939-\u193b\u1a17\u1a18\u1a56\u1a58-\u1a5e\u1a60\u1a62\u1a65-\u1a6c\u1a73-\u1a7c\u1a7f\u1b00-\u1b03\u1b34\u1b36-\u1b3a\u1b3c\u1b42\u1b6b-\u1b73\u1b80\u1b81\u1ba2-\u1ba5\u1ba8\u1ba9\u1c2c-\u1c33\u1c36\u1c37\u1cd0-\u1cd2\u1cd4-\u1ce0\u1ce2-\u1ce8\u1ced\u1dc0-\u1de6\u1dfd-\u1dff\u200c\u200d\u20d0-\u20f0\u2cef-\u2cf1\u2de0-\u2dff\u302a-\u302f\u3099\u309a\ua66f-\ua672\ua67c\ua67d\ua6f0\ua6f1\ua802\ua806\ua80b\ua825\ua826\ua8c4\ua8e0-\ua8f1\ua926-\ua92d\ua947-\ua951\ua980-\ua982\ua9b3\ua9b6-\ua9b9\ua9bc\uaa29-\uaa2e\uaa31\uaa32\uaa35\uaa36\uaa43\uaa4c\uaab0\uaab2-\uaab4\uaab7\uaab8\uaabe\uaabf\uaac1\uabe5\uabe8\uabed\udc00-\udfff\ufb1e\ufe00-\ufe0f\ufe20-\ufe26\uff9e\uff9f]/;function nn(Ee){return Ee.charCodeAt(0)>=768&&It.test(Ee)}function Pt(Ee,_e,it){for(;(it<0?_e>0:_eit?-1:1;;){if(_e==it)return _e;var ct=(_e+it)/2,jt=nt<0?Math.ceil(ct):Math.floor(ct);if(jt==_e)return Ee(jt)?_e:it;Ee(jt)?it=jt:_e=jt+nt}}function on(Ee,_e,it,nt){if(!Ee)return nt(_e,it,"ltr",0);for(var ct=!1,jt=0;jt_e||_e==it&&hn.to==_e)&&(nt(Math.max(hn.from,_e),Math.min(hn.to,it),hn.level==1?"rtl":"ltr",jt),ct=!0)}ct||nt(_e,it,"ltr")}var $t=null;function Jt(Ee,_e,it){var nt;$t=null;for(var ct=0;ct_e)return ct;jt.to==_e&&(jt.from!=jt.to&&it=="before"?nt=ct:$t=ct),jt.from==_e&&(jt.from!=jt.to&&it!="before"?nt=ct:$t=ct)}return nt!=null?nt:$t}var xn=function(){var Ee="bbbbbbbbbtstwsbbbbbbbbbbbbbbssstwNN%%%NNNNNN,N,N1111111111NNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNbbbbbbsbbbbbbbbbbbbbbbbbbbbbbbbbb,N%%%%NNNNLNNNNN%%11NLNNN1LNNNNNLLLLLLLLLLLLLLLLLLLLLLLNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLN",_e="nnnnnnNNr%%r,rNNmmmmmmmmmmmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmmmmmmmmmmmmmmmnnnnnnnnnn%nnrrrmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmnNmmmmmmrrmmNmmmmrr1111111111";function it(Xn){return Xn<=247?Ee.charAt(Xn):1424<=Xn&&Xn<=1524?"R":1536<=Xn&&Xn<=1785?_e.charAt(Xn-1536):1774<=Xn&&Xn<=2220?"r":8192<=Xn&&Xn<=8203?"w":Xn==8204?"b":"L"}var nt=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac]/,ct=/[stwN]/,jt=/[LRr]/,hn=/[Lb1n]/,Mn=/[1n]/;function Pn(Xn,Gr,ar){this.level=Xn,this.from=Gr,this.to=ar}return function(Xn,Gr){var ar=Gr=="ltr"?"L":"R";if(Xn.length==0||Gr=="ltr"&&!nt.test(Xn))return!1;for(var Si=Xn.length,vi=[],wo=0;wo-1&&(nt[_e]=ct.slice(0,jt).concat(ct.slice(jt+1)))}}}function Tn(Ee,_e){var it=mr(Ee,_e);if(it.length)for(var nt=Array.prototype.slice.call(arguments,2),ct=0;ct0}function ti(Ee){Ee.prototype.on=function(_e,it){Jn(this,_e,it)},Ee.prototype.off=function(_e,it){Rr(this,_e,it)}}function mi(Ee){Ee.preventDefault?Ee.preventDefault():Ee.returnValue=!1}function di(Ee){Ee.stopPropagation?Ee.stopPropagation():Ee.cancelBubble=!0}function Pi(Ee){return Ee.defaultPrevented!=null?Ee.defaultPrevented:Ee.returnValue==!1}function vo(Ee){mi(Ee),di(Ee)}function Co(Ee){return Ee.target||Ee.srcElement}function To(Ee){var _e=Ee.which;return _e==null&&(Ee.button&1?_e=1:Ee.button&2?_e=3:Ee.button&4&&(_e=2)),fe&&Ee.ctrlKey&&_e==1&&(_e=3),_e}var xo=function(){if(Ze&&Oe<9)return!1;var Ee=Ve("div");return"draggable"in Ee||"dragDrop"in Ee}(),ma;function xa(Ee){if(ma==null){var _e=Ve("span","\u200B");Ke(Ee,Ve("span",[_e,document.createTextNode("x")])),Ee.firstChild.offsetHeight!=0&&(ma=_e.offsetWidth<=1&&_e.offsetHeight>2&&!(Ze&&Oe<8))}var it=ma?Ve("span","\u200B"):Ve("span","\xA0",null,"display: inline-block; width: 1px; margin-right: -1px");return it.setAttribute("cm-text",""),it}var _i;function ko(Ee){if(_i!=null)return _i;var _e=Ke(Ee,document.createTextNode("A\u062EA")),it=tt(_e,0,1).getBoundingClientRect(),nt=tt(_e,1,2).getBoundingClientRect();return ze(Ee),!it||it.left==it.right?!1:_i=nt.right-it.right<3}var ro=` b`.split(/\n/).length!=3?function(Ee){for(var _e=0,it=[],nt=Ee.length;_e<=nt;){var ct=Ee.indexOf(` `,_e);ct==-1&&(ct=Ee.length);var jt=Ee.slice(_e,Ee.charAt(ct-1)=="\r"?ct-1:ct),hn=jt.indexOf("\r");hn!=-1?(it.push(jt.slice(0,hn)),_e+=hn+1):(it.push(jt),_e=ct+1)}return it}:function(Ee){return Ee.split(/\r\n?|\n/)},Rt=window.getSelection?function(Ee){try{return Ee.selectionStart!=Ee.selectionEnd}catch(_e){return!1}}:function(Ee){var _e;try{_e=Ee.ownerDocument.selection.createRange()}catch(it){}return!_e||_e.parentElement()!=Ee?!1:_e.compareEndPoints("StartToEnd",_e)!=0},Kr=function(){var Ee=Ve("div");return"oncopy"in Ee?!0:(Ee.setAttribute("oncopy","return;"),typeof Ee.oncopy=="function")}(),Bi=null;function _r(Ee){if(Bi!=null)return Bi;var _e=Ke(Ee,Ve("span","x")),it=_e.getBoundingClientRect(),nt=tt(_e,0,1).getBoundingClientRect();return Bi=Math.abs(it.left-nt.left)>1}var pi={},ii={};function zi(Ee,_e){arguments.length>2&&(_e.dependencies=Array.prototype.slice.call(arguments,2)),pi[Ee]=_e}function Jr(Ee,_e){ii[Ee]=_e}function Kt(Ee){if(typeof Ee=="string"&&ii.hasOwnProperty(Ee))Ee=ii[Ee];else if(Ee&&typeof Ee.name=="string"&&ii.hasOwnProperty(Ee.name)){var _e=ii[Ee.name];typeof _e=="string"&&(_e={name:_e}),Ee=xt(_e,Ee),Ee.name=_e.name}else{if(typeof Ee=="string"&&/^[\w\-]+\/[\w\-]+\+xml$/.test(Ee))return Kt("application/xml");if(typeof Ee=="string"&&/^[\w\-]+\/[\w\-]+\+json$/.test(Ee))return Kt("application/json")}return typeof Ee=="string"?{name:Ee}:Ee||{name:"null"}}function Le(Ee,_e){_e=Kt(_e);var it=pi[_e.name];if(!it)return Le(Ee,"text/plain");var nt=it(Ee,_e);if(We.hasOwnProperty(_e.name)){var ct=We[_e.name];for(var jt in ct)ct.hasOwnProperty(jt)&&(nt.hasOwnProperty(jt)&&(nt["_"+jt]=nt[jt]),nt[jt]=ct[jt])}if(nt.name=_e.name,_e.helperType&&(nt.helperType=_e.helperType),_e.modeProps)for(var hn in _e.modeProps)nt[hn]=_e.modeProps[hn];return nt}var We={};function De(Ee,_e){var it=We.hasOwnProperty(Ee)?We[Ee]:We[Ee]={};bt(_e,it)}function qe(Ee,_e){if(_e===!0)return _e;if(Ee.copyState)return Ee.copyState(_e);var it={};for(var nt in _e){var ct=_e[nt];ct instanceof Array&&(ct=ct.concat([])),it[nt]=ct}return it}function dt(Ee,_e){for(var it;Ee.innerMode&&(it=Ee.innerMode(_e),!(!it||it.mode==Ee));)_e=it.state,Ee=it.mode;return it||{mode:Ee,state:_e}}function Mt(Ee,_e,it){return Ee.startState?Ee.startState(_e,it):!0}var wt=function(Ee,_e,it){this.pos=this.start=0,this.string=Ee,this.tabSize=_e||8,this.lastColumnPos=this.lastColumnValue=0,this.lineStart=0,this.lineOracle=it};wt.prototype.eol=function(){return this.pos>=this.string.length},wt.prototype.sol=function(){return this.pos==this.lineStart},wt.prototype.peek=function(){return this.string.charAt(this.pos)||void 0},wt.prototype.next=function(){if(this.pos_e},wt.prototype.eatSpace=function(){for(var Ee=this.pos;/[\s\u00a0]/.test(this.string.charAt(this.pos));)++this.pos;return this.pos>Ee},wt.prototype.skipToEnd=function(){this.pos=this.string.length},wt.prototype.skipTo=function(Ee){var _e=this.string.indexOf(Ee,this.pos);if(_e>-1)return this.pos=_e,!0},wt.prototype.backUp=function(Ee){this.pos-=Ee},wt.prototype.column=function(){return this.lastColumnPos0?null:(jt&&_e!==!1&&(this.pos+=jt[0].length),jt)}},wt.prototype.current=function(){return this.string.slice(this.start,this.pos)},wt.prototype.hideFirstChars=function(Ee,_e){this.lineStart+=Ee;try{return _e()}finally{this.lineStart-=Ee}},wt.prototype.lookAhead=function(Ee){var _e=this.lineOracle;return _e&&_e.lookAhead(Ee)},wt.prototype.baseToken=function(){var Ee=this.lineOracle;return Ee&&Ee.baseToken(this.pos)};function rn(Ee,_e){if(_e-=Ee.first,_e<0||_e>=Ee.size)throw new Error("There is no line "+(_e+Ee.first)+" in the document.");for(var it=Ee;!it.lines;)for(var nt=0;;++nt){var ct=it.children[nt],jt=ct.chunkSize();if(_e=Ee.first&&_eit?Bn(it,rn(Ee,it).text.length):Br(_e,rn(Ee,_e.line).text.length)}function Br(Ee,_e){var it=Ee.ch;return it==null||it>_e?Bn(Ee.line,_e):it<0?Bn(Ee.line,0):Ee}function jr(Ee,_e){for(var it=[],nt=0;nt<_e.length;nt++)it[nt]=ur(Ee,_e[nt]);return it}var fr=function(Ee,_e){this.state=Ee,this.lookAhead=_e},qn=function(Ee,_e,it,nt){this.state=_e,this.doc=Ee,this.line=it,this.maxLookAhead=nt||0,this.baseTokens=null,this.baseTokenPos=1};qn.prototype.lookAhead=function(Ee){var _e=this.doc.getLine(this.line+Ee);return _e!=null&&Ee>this.maxLookAhead&&(this.maxLookAhead=Ee),_e},qn.prototype.baseToken=function(Ee){if(!this.baseTokens)return null;for(;this.baseTokens[this.baseTokenPos]<=Ee;)this.baseTokenPos+=2;var _e=this.baseTokens[this.baseTokenPos+1];return{type:_e&&_e.replace(/( |^)overlay .*/,""),size:this.baseTokens[this.baseTokenPos]-Ee}},qn.prototype.nextLine=function(){this.line++,this.maxLookAhead>0&&this.maxLookAhead--},qn.fromSaved=function(Ee,_e,it){return _e instanceof fr?new qn(Ee,qe(Ee.mode,_e.state),it,_e.lookAhead):new qn(Ee,qe(Ee.mode,_e),it)},qn.prototype.save=function(Ee){var _e=Ee!==!1?qe(this.doc.mode,this.state):this.state;return this.maxLookAhead>0?new fr(_e,this.maxLookAhead):_e};function fi(Ee,_e,it,nt){var ct=[Ee.state.modeGen],jt={};bo(Ee,_e.text,Ee.doc.mode,it,function(Xn,Gr){return ct.push(Xn,Gr)},jt,nt);for(var hn=it.state,Mn=function(Xn){it.baseTokens=ct;var Gr=Ee.state.overlays[Xn],ar=1,Si=0;it.state=!0,bo(Ee,_e.text,Gr.mode,it,function(vi,wo){for(var No=ar;Sivi&&ct.splice(ar,1,vi,ct[ar+1],ia),ar+=2,Si=Math.min(vi,ia)}if(wo)if(Gr.opaque)ct.splice(No,ar-No,vi,"overlay "+wo),ar=No+2;else for(;NoEe.options.maxHighlightLength&&qe(Ee.doc.mode,nt.state),jt=fi(Ee,_e,nt);ct&&(nt.state=ct),_e.stateAfter=nt.save(!ct),_e.styles=jt.styles,jt.classes?_e.styleClasses=jt.classes:_e.styleClasses&&(_e.styleClasses=null),it===Ee.doc.highlightFrontier&&(Ee.doc.modeFrontier=Math.max(Ee.doc.modeFrontier,++Ee.doc.highlightFrontier))}return _e.styles}function $i(Ee,_e,it){var nt=Ee.doc,ct=Ee.display;if(!nt.mode.startState)return new qn(nt,!0,_e);var jt=Lo(Ee,_e,it),hn=jt>nt.first&&rn(nt,jt-1).stateAfter,Mn=hn?qn.fromSaved(nt,hn,jt):new qn(nt,Mt(nt.mode),jt);return nt.iter(jt,_e,function(Pn){wr(Ee,Pn.text,Mn);var Xn=Mn.line;Pn.stateAfter=Xn==_e-1||Xn%5==0||Xn>=ct.viewFrom&&Xn_e.start)return jt}throw new Error("Mode "+Ee.name+" failed to advance stream.")}var Yi=function(Ee,_e,it){this.start=Ee.start,this.end=Ee.pos,this.string=Ee.current(),this.type=_e||null,this.state=it};function Vi(Ee,_e,it,nt){var ct=Ee.doc,jt=ct.mode,hn;_e=ur(ct,_e);var Mn=rn(ct,_e.line),Pn=$i(Ee,_e.line,it),Xn=new wt(Mn.text,Ee.options.tabSize,Pn),Gr;for(nt&&(Gr=[]);(nt||Xn.pos<_e.ch)&&!Xn.eol();)Xn.start=Xn.pos,hn=ji(jt,Xn,Pn.state),nt&&Gr.push(new Yi(Xn,hn,qe(ct.mode,Pn.state)));return nt?Gr:new Yi(Xn,hn,Pn.state)}function to(Ee,_e){if(Ee)for(;;){var it=Ee.match(/(?:^|\s+)line-(background-)?(\S+)/);if(!it)break;Ee=Ee.slice(0,it.index)+Ee.slice(it.index+it[0].length);var nt=it[1]?"bgClass":"textClass";_e[nt]==null?_e[nt]=it[2]:new RegExp("(?:^|\\s)"+it[2]+"(?:$|\\s)").test(_e[nt])||(_e[nt]+=" "+it[2])}return Ee}function bo(Ee,_e,it,nt,ct,jt,hn){var Mn=it.flattenSpans;Mn==null&&(Mn=Ee.options.flattenSpans);var Pn=0,Xn=null,Gr=new wt(_e,Ee.options.tabSize,nt),ar,Si=Ee.options.addModeClass&&[null];for(_e==""&&to(oi(it,nt.state),jt);!Gr.eol();){if(Gr.pos>Ee.options.maxHighlightLength?(Mn=!1,hn&&wr(Ee,_e,nt,Gr.pos),Gr.pos=_e.length,ar=null):ar=to(ji(it,Gr,nt.state,Si),jt),Si){var vi=Si[0].name;vi&&(ar="m-"+(ar?vi+" "+ar:vi))}if(!Mn||Xn!=ar){for(;Pnhn;--Mn){if(Mn<=jt.first)return jt.first;var Pn=rn(jt,Mn-1),Xn=Pn.stateAfter;if(Xn&&(!it||Mn+(Xn instanceof fr?Xn.lookAhead:0)<=jt.modeFrontier))return Mn;var Gr=Et(Pn.text,null,Ee.options.tabSize);(ct==null||nt>Gr)&&(ct=Mn-1,nt=Gr)}return ct}function Gi(Ee,_e){if(Ee.modeFrontier=Math.min(Ee.modeFrontier,_e),!(Ee.highlightFrontier<_e-10)){for(var it=Ee.first,nt=_e-1;nt>it;nt--){var ct=rn(Ee,nt).stateAfter;if(ct&&(!(ct instanceof fr)||nt+ct.lookAhead<_e)){it=nt+1;break}}Ee.highlightFrontier=Math.min(Ee.highlightFrontier,it)}}var Fo=!1,Zr=!1;function Pa(){Fo=!0}function Xr(){Zr=!0}function Ma(Ee,_e,it){this.marker=Ee,this.from=_e,this.to=it}function ts(Ee,_e){if(Ee)for(var it=0;it=_e:jt.to>_e);(nt||(nt=[])).push(new Ma(hn,jt.from,Pn?null:jt.to))}}return nt}function Go(Ee,_e,it){var nt;if(Ee)for(var ct=0;ct=_e:jt.to>_e);if(Mn||jt.from==_e&&hn.type=="bookmark"&&(!it||jt.marker.insertLeft)){var Pn=jt.from==null||(hn.inclusiveLeft?jt.from<=_e:jt.from<_e);(nt||(nt=[])).push(new Ma(hn,Pn?null:jt.from-_e,jt.to==null?null:jt.to-_e))}}return nt}function li(Ee,_e){if(_e.full)return null;var it=tr(Ee,_e.from.line)&&rn(Ee,_e.from.line).markedSpans,nt=tr(Ee,_e.to.line)&&rn(Ee,_e.to.line).markedSpans;if(!it&&!nt)return null;var ct=_e.from.ch,jt=_e.to.ch,hn=An(_e.from,_e.to)==0,Mn=qa(it,ct,hn),Pn=Go(nt,jt,hn),Xn=_e.text.length==1,Gr=ln(_e.text).length+(Xn?ct:0);if(Mn)for(var ar=0;ar0&&Mn)for(var Ss=0;Ss0)){var Gr=[Pn,1],ar=An(Xn.from,Mn.from),Si=An(Xn.to,Mn.to);(ar<0||!hn.inclusiveLeft&&!ar)&&Gr.push({from:Xn.from,to:Mn.from}),(Si>0||!hn.inclusiveRight&&!Si)&&Gr.push({from:Mn.to,to:Xn.to}),ct.splice.apply(ct,Gr),Pn+=Gr.length-3}}return ct}function lo(Ee){var _e=Ee.markedSpans;if(_e){for(var it=0;it<_e.length;++it)_e[it].marker.detachLine(Ee);Ee.markedSpans=null}}function fn(Ee,_e){if(_e){for(var it=0;it<_e.length;++it)_e[it].marker.attachLine(Ee);Ee.markedSpans=_e}}function Yo(Ee){return Ee.inclusiveLeft?-1:0}function Ms(Ee){return Ee.inclusiveRight?1:0}function _a(Ee,_e){var it=Ee.lines.length-_e.lines.length;if(it!=0)return it;var nt=Ee.find(),ct=_e.find(),jt=An(nt.from,ct.from)||Yo(Ee)-Yo(_e);if(jt)return-jt;var hn=An(nt.to,ct.to)||Ms(Ee)-Ms(_e);return hn||_e.id-Ee.id}function Bs(Ee,_e){var it=Zr&&Ee.markedSpans,nt;if(it)for(var ct=void 0,jt=0;jt_e)&&(!nt||_a(nt,jt.marker)<0)&&(nt=jt.marker)}return nt}function Aa(Ee,_e,it,nt,ct){var jt=rn(Ee,_e),hn=Zr&&jt.markedSpans;if(hn)for(var Mn=0;Mn=0&&ar<=0||Gr<=0&&ar>=0)&&(Gr<=0&&(Pn.marker.inclusiveRight&&ct.inclusiveLeft?An(Xn.to,it)>=0:An(Xn.to,it)>0)||Gr>=0&&(Pn.marker.inclusiveRight&&ct.inclusiveLeft?An(Xn.from,nt)<=0:An(Xn.from,nt)<0)))return!0}}}function Sa(Ee){for(var _e;_e=Vs(Ee);)Ee=_e.find(-1,!0).line;return Ee}function xs(Ee){for(var _e;_e=ol(Ee);)Ee=_e.find(1,!0).line;return Ee}function Ls(Ee){for(var _e,it;_e=ol(Ee);)Ee=_e.find(1,!0).line,(it||(it=[])).push(Ee);return it}function la(Ee,_e){var it=rn(Ee,_e),nt=Sa(it);return it==nt?_e:tn(nt)}function na(Ee,_e){if(_e>Ee.lastLine())return _e;var it=rn(Ee,_e),nt;if(!Ri(Ee,it))return _e;for(;nt=ol(it);)it=nt.find(1,!0).line;return tn(it)+1}function Ri(Ee,_e){var it=Zr&&_e.markedSpans;if(it){for(var nt=void 0,ct=0;ct_e.maxLineLength&&(_e.maxLineLength=ct,_e.maxLine=nt)})}var As=function(Ee,_e,it){this.text=Ee,fn(this,_e),this.height=it?it(this):1};As.prototype.lineNo=function(){return tn(this)},ti(As);function Ns(Ee,_e,it,nt){Ee.text=_e,Ee.stateAfter&&(Ee.stateAfter=null),Ee.styles&&(Ee.styles=null),Ee.order!=null&&(Ee.order=null),lo(Ee),fn(Ee,it);var ct=nt?nt(Ee):1;ct!=Ee.height&&Fn(Ee,ct)}function Ks(Ee){Ee.parent=null,lo(Ee)}var Yl={},Gl={};function yu(Ee,_e){if(!Ee||/^\s*$/.test(Ee))return null;var it=_e.addModeClass?Gl:Yl;return it[Ee]||(it[Ee]=Ee.replace(/\S+/g,"cm-$&"))}function Pr(Ee,_e){var it=Je("span",null,null,we?"padding-right: .1px":null),nt={pre:Je("pre",[it],"CodeMirror-line"),content:it,col:0,pos:0,cm:Ee,trailingSpace:!1,splitSpaces:Ee.getOption("lineWrapping")};_e.measure={};for(var ct=0;ct<=(_e.rest?_e.rest.length:0);ct++){var jt=ct?_e.rest[ct-1]:_e.line,hn=void 0;nt.pos=0,nt.addToken=vd,ko(Ee.display.measure)&&(hn=Qn(jt,Ee.doc.direction))&&(nt.addToken=qs(nt.addToken,hn)),nt.map=[];var Mn=_e!=Ee.display.externalMeasured&&tn(jt);au(jt,nt,ui(Ee,jt,Mn)),jt.styleClasses&&(jt.styleClasses.bgClass&&(nt.bgClass=At(jt.styleClasses.bgClass,nt.bgClass||"")),jt.styleClasses.textClass&&(nt.textClass=At(jt.styleClasses.textClass,nt.textClass||""))),nt.map.length==0&&nt.map.push(0,0,nt.content.appendChild(xa(Ee.display.measure))),ct==0?(_e.measure.map=nt.map,_e.measure.cache={}):((_e.measure.maps||(_e.measure.maps=[])).push(nt.map),(_e.measure.caches||(_e.measure.caches=[])).push({}))}if(we){var Pn=nt.content.lastChild;(/\bcm-tab\b/.test(Pn.className)||Pn.querySelector&&Pn.querySelector(".cm-tab"))&&(nt.content.className="cm-tab-wrap-hack")}return Tn(Ee,"renderLine",Ee,_e.line,nt.pre),nt.pre.className&&(nt.textClass=At(nt.pre.className,nt.textClass||"")),nt}function ou(Ee){var _e=Ve("span","\u2022","cm-invalidchar");return _e.title="\\u"+Ee.charCodeAt(0).toString(16),_e.setAttribute("aria-label",_e.title),_e}function vd(Ee,_e,it,nt,ct,jt,hn){if(_e){var Mn=Ee.splitSpaces?Tc(_e,Ee.trailingSpace):_e,Pn=Ee.cm.state.specialChars,Xn=!1,Gr;if(!Pn.test(_e))Ee.col+=_e.length,Gr=document.createTextNode(Mn),Ee.map.push(Ee.pos,Ee.pos+_e.length,Gr),Ze&&Oe<9&&(Xn=!0),Ee.pos+=_e.length;else{Gr=document.createDocumentFragment();for(var ar=0;;){Pn.lastIndex=ar;var Si=Pn.exec(_e),vi=Si?Si.index-ar:_e.length-ar;if(vi){var wo=document.createTextNode(Mn.slice(ar,ar+vi));Ze&&Oe<9?Gr.appendChild(Ve("span",[wo])):Gr.appendChild(wo),Ee.map.push(Ee.pos,Ee.pos+vi,wo),Ee.col+=vi,Ee.pos+=vi}if(!Si)break;ar+=vi+1;var No=void 0;if(Si[0]==" "){var ia=Ee.cm.options.tabSize,Ia=ia-Ee.col%ia;No=Gr.appendChild(Ve("span",Zn(Ia),"cm-tab")),No.setAttribute("role","presentation"),No.setAttribute("cm-text"," "),Ee.col+=Ia}else Si[0]=="\r"||Si[0]==` `?(No=Gr.appendChild(Ve("span",Si[0]=="\r"?"\u240D":"\u2424","cm-invalidchar")),No.setAttribute("cm-text",Si[0]),Ee.col+=1):(No=Ee.cm.options.specialCharPlaceholder(Si[0]),No.setAttribute("cm-text",Si[0]),Ze&&Oe<9?Gr.appendChild(Ve("span",[No])):Gr.appendChild(No),Ee.col+=1);Ee.map.push(Ee.pos,Ee.pos+1,No),Ee.pos++}}if(Ee.trailingSpace=Mn.charCodeAt(_e.length-1)==32,it||nt||ct||Xn||jt||hn){var fs=it||"";nt&&(fs+=nt),ct&&(fs+=ct);var Ja=Ve("span",[Gr],fs,jt);if(hn)for(var Ss in hn)hn.hasOwnProperty(Ss)&&Ss!="style"&&Ss!="class"&&Ja.setAttribute(Ss,hn[Ss]);return Ee.content.appendChild(Ja)}Ee.content.appendChild(Gr)}}function Tc(Ee,_e){if(Ee.length>1&&!/ /.test(Ee))return Ee;for(var it=_e,nt="",ct=0;ctXn&&ar.from<=Xn));Si++);if(ar.to>=Gr)return Ee(it,nt,ct,jt,hn,Mn,Pn);Ee(it,nt.slice(0,ar.to-Xn),ct,jt,null,Mn,Pn),jt=null,nt=nt.slice(ar.to-Xn),Xn=ar.to}}}function ws(Ee,_e,it,nt){var ct=!nt&&it.widgetNode;ct&&Ee.map.push(Ee.pos,Ee.pos+_e,ct),!nt&&Ee.cm.display.input.needsContentAttribute&&(ct||(ct=Ee.content.appendChild(document.createElement("span"))),ct.setAttribute("cm-marker",it.id)),ct&&(Ee.cm.display.input.setUneditable(ct),Ee.content.appendChild(ct)),Ee.pos+=_e,Ee.trailingSpace=!1}function au(Ee,_e,it){var nt=Ee.markedSpans,ct=Ee.text,jt=0;if(!nt){for(var hn=1;hnPn||zl.collapsed&&Ya.to==Pn&&Ya.from==Pn)){if(Ya.to!=null&&Ya.to!=Pn&&vi>Ya.to&&(vi=Ya.to,No=""),zl.className&&(wo+=" "+zl.className),zl.css&&(Si=(Si?Si+";":"")+zl.css),zl.startStyle&&Ya.from==Pn&&(ia+=" "+zl.startStyle),zl.endStyle&&Ya.to==vi&&(Ss||(Ss=[])).push(zl.endStyle,Ya.to),zl.title&&((fs||(fs={})).title=zl.title),zl.attributes)for(var Sc in zl.attributes)(fs||(fs={}))[Sc]=zl.attributes[Sc];zl.collapsed&&(!Ia||_a(Ia.marker,zl)<0)&&(Ia=Ya)}else Ya.from>Pn&&vi>Ya.from&&(vi=Ya.from)}if(Ss)for(var Gh=0;Gh=Mn)break;for(var Cf=Math.min(Mn,vi);;){if(Gr){var zd=Pn+Gr.length;if(!Ia){var Bh=zd>Cf?Gr.slice(0,Cf-Pn):Gr;_e.addToken(_e,Bh,ar?ar+wo:wo,ia,Pn+Bh.length==vi?No:"",Si,fs)}if(zd>=Cf){Gr=Gr.slice(Cf-Pn),Pn=Cf;break}Pn=zd,ia=""}Gr=ct.slice(jt,jt=it[Xn++]),ar=yu(it[Xn++],_e.cm.options)}}}function hl(Ee,_e,it){this.line=_e,this.rest=Ls(_e),this.size=this.rest?tn(ln(this.rest))-it+1:1,this.node=this.text=null,this.hidden=Ri(Ee,_e)}function Cs(Ee,_e,it){for(var nt=[],ct,jt=_e;jt2&&jt.push((Pn.bottom+Xn.top)/2-it.top)}}jt.push(it.bottom-it.top)}}function ic(Ee,_e,it){if(Ee.line==_e)return{map:Ee.measure.map,cache:Ee.measure.cache};for(var nt=0;ntit)return{map:Ee.measure.maps[ct],cache:Ee.measure.caches[ct],before:!0}}function rg(Ee,_e){_e=Sa(_e);var it=tn(_e),nt=Ee.display.externalMeasured=new hl(Ee.doc,_e,it);nt.lineN=it;var ct=nt.built=Pr(Ee,nt);return nt.text=ct.pre,Ke(Ee.display.lineMeasure,ct.pre),nt}function jf(Ee,_e,it,nt){return Fc(Ee,nh(Ee,_e),it,nt)}function Ll(Ee,_e){if(_e>=Ee.display.viewFrom&&_e=it.lineN&&_e_e)&&(jt=Pn-Mn,ct=jt-1,_e>=Pn&&(hn="right")),ct!=null){if(nt=Ee[Xn+2],Mn==Pn&&it==(nt.insertLeft?"left":"right")&&(hn=it),it=="left"&&ct==0)for(;Xn&&Ee[Xn-2]==Ee[Xn-3]&&Ee[Xn-1].insertLeft;)nt=Ee[(Xn-=3)+2],hn="left";if(it=="right"&&ct==Pn-Mn)for(;Xn=0&&(it=Ee[ct]).left==it.right;ct--);return it}function Ds(Ee,_e,it,nt){var ct=yc(_e.map,it,nt),jt=ct.node,hn=ct.start,Mn=ct.end,Pn=ct.collapse,Xn;if(jt.nodeType==3){for(var Gr=0;Gr<4;Gr++){for(;hn&&nn(_e.line.text.charAt(ct.coverStart+hn));)--hn;for(;ct.coverStart+Mn0&&(Pn=nt="right");var ar;Ee.options.lineWrapping&&(ar=jt.getClientRects()).length>1?Xn=ar[nt=="right"?ar.length-1:0]:Xn=jt.getBoundingClientRect()}if(Ze&&Oe<9&&!hn&&(!Xn||!Xn.left&&!Xn.right)){var Si=jt.parentNode.getClientRects()[0];Si?Xn={left:Si.left,right:Si.left+Qd(Ee.display),top:Si.top,bottom:Si.bottom}:Xn=Oc}for(var vi=Xn.top-_e.rect.top,wo=Xn.bottom-_e.rect.top,No=(vi+wo)/2,ia=_e.view.measure.heights,Ia=0;Ia=nt.text.length?(Pn=nt.text.length,Xn="before"):Pn<=0&&(Pn=0,Xn="after"),!Mn)return hn(Xn=="before"?Pn-1:Pn,Xn=="before");function Gr(wo,No,ia){var Ia=Mn[No],fs=Ia.level==1;return hn(ia?wo-1:wo,fs!=ia)}var ar=Jt(Mn,Pn,Xn),Si=$t,vi=Gr(Pn,ar,Xn=="before");return Si!=null&&(vi.other=Gr(Pn,Si,Xn!="before")),vi}function zc(Ee,_e){var it=0;_e=ur(Ee.doc,_e),Ee.options.lineWrapping||(it=Qd(Ee.display)*_e.ch);var nt=rn(Ee.doc,_e.line),ct=Ts(nt)+mc(Ee.display);return{left:it,right:it,top:ct,bottom:ct+nt.height}}function md(Ee,_e,it,nt,ct){var jt=Bn(Ee,_e,it);return jt.xRel=ct,nt&&(jt.outside=nt),jt}function ig(Ee,_e,it){var nt=Ee.doc;if(it+=Ee.display.viewOffset,it<0)return md(nt.first,0,null,-1,-1);var ct=Vn(nt,it),jt=nt.first+nt.size-1;if(ct>jt)return md(nt.first+nt.size-1,rn(nt,jt).text.length,null,1,1);_e<0&&(_e=0);for(var hn=rn(nt,ct);;){var Mn=Ci(Ee,hn,ct,_e,it),Pn=ka(hn,Mn.ch+(Mn.xRel>0||Mn.outside>0?1:0));if(!Pn)return Mn;var Xn=Pn.find(1);if(Xn.line==ct)return Xn;hn=rn(nt,ct=Xn.line)}}function Ta(Ee,_e,it,nt){nt-=Ku(_e);var ct=_e.text.length,jt=Vt(function(hn){return Fc(Ee,it,hn-1).bottom<=nt},ct,0);return ct=Vt(function(hn){return Fc(Ee,it,hn).top>nt},jt,ct),{begin:jt,end:ct}}function mh(Ee,_e,it,nt){it||(it=nh(Ee,_e));var ct=xu(Ee,_e,Fc(Ee,it,nt),"line").top;return Ta(Ee,_e,it,ct)}function cr(Ee,_e,it,nt){return Ee.bottom<=it?!1:Ee.top>it?!0:(nt?Ee.left:Ee.right)>_e}function Ci(Ee,_e,it,nt,ct){ct-=Ts(_e);var jt=nh(Ee,_e),hn=Ku(_e),Mn=0,Pn=_e.text.length,Xn=!0,Gr=Qn(_e,Ee.doc.direction);if(Gr){var ar=(Ee.options.lineWrapping?ag:og)(Ee,_e,it,jt,Gr,nt,ct);Xn=ar.level!=1,Mn=Xn?ar.from:ar.to-1,Pn=Xn?ar.to:ar.from-1}var Si=null,vi=null,wo=Vt(function(ul){var Ya=Fc(Ee,jt,ul);return Ya.top+=hn,Ya.bottom+=hn,cr(Ya,nt,ct,!1)?(Ya.top<=ct&&Ya.left<=nt&&(Si=ul,vi=Ya),!0):!1},Mn,Pn),No,ia,Ia=!1;if(vi){var fs=nt-vi.left=Ss.bottom?1:0}return wo=Pt(_e.text,wo,1),md(it,wo,ia,Ia,nt-No)}function og(Ee,_e,it,nt,ct,jt,hn){var Mn=Vt(function(ar){var Si=ct[ar],vi=Si.level!=1;return cr(Eu(Ee,Bn(it,vi?Si.to:Si.from,vi?"before":"after"),"line",_e,nt),jt,hn,!0)},0,ct.length-1),Pn=ct[Mn];if(Mn>0){var Xn=Pn.level!=1,Gr=Eu(Ee,Bn(it,Xn?Pn.from:Pn.to,Xn?"after":"before"),"line",_e,nt);cr(Gr,jt,hn,!0)&&Gr.top>hn&&(Pn=ct[Mn-1])}return Pn}function ag(Ee,_e,it,nt,ct,jt,hn){var Mn=Ta(Ee,_e,nt,hn),Pn=Mn.begin,Xn=Mn.end;/\s/.test(_e.text.charAt(Xn-1))&&Xn--;for(var Gr=null,ar=null,Si=0;Si=Xn||vi.to<=Pn)){var wo=vi.level!=1,No=Fc(Ee,nt,wo?Math.min(Xn,vi.to)-1:Math.max(Pn,vi.from)).right,ia=Noia)&&(Gr=vi,ar=ia)}}return Gr||(Gr=ct[ct.length-1]),Gr.fromXn&&(Gr={from:Gr.from,to:Xn,level:Gr.level}),Gr}var oo;function Xd(Ee){if(Ee.cachedTextHeight!=null)return Ee.cachedTextHeight;if(oo==null){oo=Ve("pre",null,"CodeMirror-line-like");for(var _e=0;_e<49;++_e)oo.appendChild(document.createTextNode("x")),oo.appendChild(Ve("br"));oo.appendChild(document.createTextNode("x"))}Ke(Ee.measure,oo);var it=oo.offsetHeight/50;return it>3&&(Ee.cachedTextHeight=it),ze(Ee.measure),it||1}function Qd(Ee){if(Ee.cachedCharWidth!=null)return Ee.cachedCharWidth;var _e=Ve("span","xxxxxxxxxx"),it=Ve("pre",[_e],"CodeMirror-line-like");Ke(Ee.measure,it);var nt=_e.getBoundingClientRect(),ct=(nt.right-nt.left)/10;return ct>2&&(Ee.cachedCharWidth=ct),ct||10}function Op(Ee){for(var _e=Ee.display,it={},nt={},ct=_e.gutters.clientLeft,jt=_e.gutters.firstChild,hn=0;jt;jt=jt.nextSibling,++hn){var Mn=Ee.display.gutterSpecs[hn].className;it[Mn]=jt.offsetLeft+jt.clientLeft+ct,nt[Mn]=jt.clientWidth}return{fixedPos:Ug(_e),gutterTotalWidth:_e.gutters.offsetWidth,gutterLeft:it,gutterWidth:nt,wrapperWidth:_e.wrapper.clientWidth}}function Ug(Ee){return Ee.scroller.getBoundingClientRect().left-Ee.sizer.getBoundingClientRect().left}function _u(Ee){var _e=Xd(Ee.display),it=Ee.options.lineWrapping,nt=it&&Math.max(5,Ee.display.scroller.clientWidth/Qd(Ee.display)-3);return function(ct){if(Ri(Ee.doc,ct))return 0;var jt=0;if(ct.widgets)for(var hn=0;hn0&&(Xn=rn(Ee.doc,Pn.line).text).length==Pn.ch){var Gr=Et(Xn,Xn.length,Ee.options.tabSize)-Xn.length;Pn=Bn(Pn.line,Math.max(0,Math.round((jt-kc(Ee.display).left)/Qd(Ee.display))-Gr))}return Pn}function zu(Ee,_e){if(_e>=Ee.display.viewTo||(_e-=Ee.display.viewFrom,_e<0))return null;for(var it=Ee.display.view,nt=0;nt_e)&&(ct.updateLineNumbers=_e),Ee.curOp.viewChanged=!0,_e>=ct.viewTo)Zr&&la(Ee.doc,_e)ct.viewFrom?oc(Ee):(ct.viewFrom+=nt,ct.viewTo+=nt);else if(_e<=ct.viewFrom&&it>=ct.viewTo)oc(Ee);else if(_e<=ct.viewFrom){var jt=cn(Ee,it,it+nt,1);jt?(ct.view=ct.view.slice(jt.index),ct.viewFrom=jt.lineN,ct.viewTo+=nt):oc(Ee)}else if(it>=ct.viewTo){var hn=cn(Ee,_e,_e,-1);hn?(ct.view=ct.view.slice(0,hn.index),ct.viewTo=hn.lineN):oc(Ee)}else{var Mn=cn(Ee,_e,_e,-1),Pn=cn(Ee,it,it+nt,1);Mn&&Pn?(ct.view=ct.view.slice(0,Mn.index).concat(Cs(Ee,Mn.lineN,Pn.lineN)).concat(ct.view.slice(Pn.index)),ct.viewTo+=nt):oc(Ee)}var Xn=ct.externalMeasured;Xn&&(it=ct.lineN&&_e=nt.viewTo)){var jt=nt.view[zu(Ee,_e)];if(jt.node!=null){var hn=jt.changes||(jt.changes=[]);Nt(hn,it)==-1&&hn.push(it)}}}function oc(Ee){Ee.display.viewFrom=Ee.display.viewTo=Ee.doc.first,Ee.display.view=[],Ee.display.viewOffset=0}function cn(Ee,_e,it,nt){var ct=zu(Ee,_e),jt,hn=Ee.display.view;if(!Zr||it==Ee.doc.first+Ee.doc.size)return{index:ct,lineN:it};for(var Mn=Ee.display.viewFrom,Pn=0;Pn0){if(ct==hn.length-1)return null;jt=Mn+hn[ct].size-_e,ct++}else jt=Mn-_e;_e+=jt,it+=jt}for(;la(Ee.doc,it)!=it;){if(ct==(nt<0?0:hn.length-1))return null;it+=nt*hn[ct-(nt<0?1:0)].size,ct+=nt}return{index:ct,lineN:it}}function En(Ee,_e,it){var nt=Ee.display,ct=nt.view;ct.length==0||_e>=nt.viewTo||it<=nt.viewFrom?(nt.view=Cs(Ee,_e,it),nt.viewFrom=_e):(nt.viewFrom>_e?nt.view=Cs(Ee,_e,nt.viewFrom).concat(nt.view):nt.viewFrom<_e&&(nt.view=nt.view.slice(zu(Ee,_e))),nt.viewFrom=_e,nt.viewToit&&(nt.view=nt.view.slice(0,zu(Ee,it)))),nt.viewTo=it}function Ln(Ee){for(var _e=Ee.display.view,it=0,nt=0;nt<_e.length;nt++){var ct=_e[nt];!ct.hidden&&(!ct.node||ct.changes)&&++it}return it}function Er(Ee){Ee.display.input.showSelection(Ee.display.input.prepareSelection())}function xr(Ee,_e){_e===void 0&&(_e=!0);for(var it=Ee.doc,nt={},ct=nt.cursors=document.createDocumentFragment(),jt=nt.selection=document.createDocumentFragment(),hn=0;hn=Ee.display.viewTo||Mn.to().line0?_e.blinker=setInterval(function(){Ee.hasFocus()||mo(Ee),_e.cursorDiv.style.visibility=(it=!it)?"":"hidden"},Ee.options.cursorBlinkRate):Ee.options.cursorBlinkRate<0&&(_e.cursorDiv.style.visibility="hidden")}}function Zi(Ee){Ee.state.focused||(Ee.display.input.focus(),Hi(Ee))}function Oo(Ee){Ee.state.delayingBlurEvent=!0,setTimeout(function(){Ee.state.delayingBlurEvent&&(Ee.state.delayingBlurEvent=!1,mo(Ee))},100)}function Hi(Ee,_e){Ee.state.delayingBlurEvent&&(Ee.state.delayingBlurEvent=!1),Ee.options.readOnly!="nocursor"&&(Ee.state.focused||(Tn(Ee,"focus",Ee,_e),Ee.state.focused=!0,St(Ee.display.wrapper,"CodeMirror-focused"),!Ee.curOp&&Ee.display.selForContextMenu!=Ee.doc.sel&&(Ee.display.input.reset(),we&&setTimeout(function(){return Ee.display.input.reset(!0)},20)),Ee.display.input.receivedFocus()),bi(Ee))}function mo(Ee,_e){Ee.state.delayingBlurEvent||(Ee.state.focused&&(Tn(Ee,"blur",Ee,_e),Ee.state.focused=!1,Ne(Ee.display.wrapper,"CodeMirror-focused")),clearInterval(Ee.display.blinker),setTimeout(function(){Ee.state.focused||(Ee.display.shift=!1)},150))}function Wi(Ee){for(var _e=Ee.display,it=_e.lineDiv.offsetTop,nt=0;nt<_e.view.length;nt++){var ct=_e.view[nt],jt=Ee.options.lineWrapping,hn=void 0,Mn=0;if(!ct.hidden){if(Ze&&Oe<8){var Pn=ct.node.offsetTop+ct.node.offsetHeight;hn=Pn-it,it=Pn}else{var Xn=ct.node.getBoundingClientRect();hn=Xn.bottom-Xn.top,!jt&&ct.text.firstChild&&(Mn=ct.text.firstChild.getBoundingClientRect().right-Xn.left-1)}var Gr=ct.line.height-hn;if((Gr>.005||Gr<-.005)&&(Fn(ct.line,hn),Qo(ct.line),ct.rest))for(var ar=0;arEe.display.sizerWidth){var Si=Math.ceil(Mn/Qd(Ee.display));Si>Ee.display.maxLineLength&&(Ee.display.maxLineLength=Si,Ee.display.maxLine=ct.line,Ee.display.maxLineChanged=!0)}}}}function Qo(Ee){if(Ee.widgets)for(var _e=0;_e=hn&&(jt=Vn(_e,Ts(rn(_e,Pn))-Ee.wrapper.clientHeight),hn=Pn)}return{from:jt,to:Math.max(hn,jt+1)}}function so(Ee,_e){if(!hr(Ee,"scrollCursorIntoView")){var it=Ee.display,nt=it.sizer.getBoundingClientRect(),ct=null;if(_e.top+nt.top<0?ct=!0:_e.bottom+nt.top>(window.innerHeight||document.documentElement.clientHeight)&&(ct=!1),ct!=null&&!je){var jt=Ve("div","\u200B",null,`position: absolute; top: `+(_e.top-it.viewOffset-mc(Ee.display))+`px; height: `+(_e.bottom-_e.top+Hc(Ee)+it.barHeight)+`px; left: `+_e.left+"px; width: "+Math.max(2,_e.right-_e.left)+"px;");Ee.display.lineSpace.appendChild(jt),jt.scrollIntoView(ct),Ee.display.lineSpace.removeChild(jt)}}}function Ko(Ee,_e,it,nt){nt==null&&(nt=0);var ct;!Ee.options.lineWrapping&&_e==it&&(_e=_e.ch?Bn(_e.line,_e.sticky=="before"?_e.ch-1:_e.ch,"after"):_e,it=_e.sticky=="before"?Bn(_e.line,_e.ch+1,"before"):_e);for(var jt=0;jt<5;jt++){var hn=!1,Mn=Eu(Ee,_e),Pn=!it||it==_e?Mn:Eu(Ee,it);ct={left:Math.min(Mn.left,Pn.left),top:Math.min(Mn.top,Pn.top)-nt,right:Math.max(Mn.left,Pn.left),bottom:Math.max(Mn.bottom,Pn.bottom)+nt};var Xn=wa(Ee,ct),Gr=Ee.doc.scrollTop,ar=Ee.doc.scrollLeft;if(Xn.scrollTop!=null&&(dl(Ee,Xn.scrollTop),Math.abs(Ee.doc.scrollTop-Gr)>1&&(hn=!0)),Xn.scrollLeft!=null&&(Tl(Ee,Xn.scrollLeft),Math.abs(Ee.doc.scrollLeft-ar)>1&&(hn=!0)),!hn)break}return ct}function za(Ee,_e){var it=wa(Ee,_e);it.scrollTop!=null&&dl(Ee,it.scrollTop),it.scrollLeft!=null&&Tl(Ee,it.scrollLeft)}function wa(Ee,_e){var it=Ee.display,nt=Xd(Ee.display);_e.top<0&&(_e.top=0);var ct=Ee.curOp&&Ee.curOp.scrollTop!=null?Ee.curOp.scrollTop:it.scroller.scrollTop,jt=yf(Ee),hn={};_e.bottom-_e.top>jt&&(_e.bottom=_e.top+jt);var Mn=Ee.doc.height+vh(it),Pn=_e.topMn-nt;if(_e.topct+jt){var Gr=Math.min(_e.top,(Xn?Mn:_e.bottom)-jt);Gr!=ct&&(hn.scrollTop=Gr)}var ar=Ee.options.fixedGutter?0:it.gutters.offsetWidth,Si=Ee.curOp&&Ee.curOp.scrollLeft!=null?Ee.curOp.scrollLeft:it.scroller.scrollLeft-ar,vi=th(Ee)-it.gutters.offsetWidth,wo=_e.right-_e.left>vi;return wo&&(_e.right=_e.left+vi),_e.left<10?hn.scrollLeft=0:_e.leftvi+Si-3&&(hn.scrollLeft=_e.right+(wo?0:10)-vi),hn}function Va(Ee,_e){_e!=null&&(rs(Ee),Ee.curOp.scrollTop=(Ee.curOp.scrollTop==null?Ee.doc.scrollTop:Ee.curOp.scrollTop)+_e)}function Ka(Ee){rs(Ee);var _e=Ee.getCursor();Ee.curOp.scrollToPos={from:_e,to:_e,margin:Ee.options.cursorScrollMargin}}function Ba(Ee,_e,it){(_e!=null||it!=null)&&rs(Ee),_e!=null&&(Ee.curOp.scrollLeft=_e),it!=null&&(Ee.curOp.scrollTop=it)}function _o(Ee,_e){rs(Ee),Ee.curOp.scrollToPos=_e}function rs(Ee){var _e=Ee.curOp.scrollToPos;if(_e){Ee.curOp.scrollToPos=null;var it=zc(Ee,_e.from),nt=zc(Ee,_e.to);Zs(Ee,it,nt,_e.margin)}}function Zs(Ee,_e,it,nt){var ct=wa(Ee,{left:Math.min(_e.left,it.left),top:Math.min(_e.top,it.top)-nt,right:Math.max(_e.right,it.right),bottom:Math.max(_e.bottom,it.bottom)+nt});Ba(Ee,ct.scrollLeft,ct.scrollTop)}function dl(Ee,_e){Math.abs(Ee.doc.scrollTop-_e)<2||(He||oa(Ee,{top:_e}),Nl(Ee,_e,!0),He&&oa(Ee),Ni(Ee,100))}function Nl(Ee,_e,it){_e=Math.max(0,Math.min(Ee.display.scroller.scrollHeight-Ee.display.scroller.clientHeight,_e)),!(Ee.display.scroller.scrollTop==_e&&!it)&&(Ee.doc.scrollTop=_e,Ee.display.scrollbars.setScrollTop(_e),Ee.display.scroller.scrollTop!=_e&&(Ee.display.scroller.scrollTop=_e))}function Tl(Ee,_e,it,nt){_e=Math.max(0,Math.min(_e,Ee.display.scroller.scrollWidth-Ee.display.scroller.clientWidth)),!((it?_e==Ee.doc.scrollLeft:Math.abs(Ee.doc.scrollLeft-_e)<2)&&!nt)&&(Ee.doc.scrollLeft=_e,as(Ee),Ee.display.scroller.scrollLeft!=_e&&(Ee.display.scroller.scrollLeft=_e),Ee.display.scrollbars.setScrollLeft(_e))}function Dl(Ee){var _e=Ee.display,it=_e.gutters.offsetWidth,nt=Math.round(Ee.doc.height+vh(Ee.display));return{clientHeight:_e.scroller.clientHeight,viewHeight:_e.wrapper.clientHeight,scrollWidth:_e.scroller.scrollWidth,clientWidth:_e.scroller.clientWidth,viewWidth:_e.wrapper.clientWidth,barLeft:Ee.options.fixedGutter?it:0,docHeight:nt,scrollHeight:nt+Hc(Ee)+_e.barHeight,nativeBarWidth:_e.nativeBarWidth,gutterWidth:it}}var vu=function(Ee,_e,it){this.cm=it;var nt=this.vert=Ve("div",[Ve("div",null,null,"min-width: 1px")],"CodeMirror-vscrollbar"),ct=this.horiz=Ve("div",[Ve("div",null,null,"height: 100%; min-height: 1px")],"CodeMirror-hscrollbar");nt.tabIndex=ct.tabIndex=-1,Ee(nt),Ee(ct),Jn(nt,"scroll",function(){nt.clientHeight&&_e(nt.scrollTop,"vertical")}),Jn(ct,"scroll",function(){ct.clientWidth&&_e(ct.scrollLeft,"horizontal")}),this.checkedZeroWidth=!1,Ze&&Oe<8&&(this.horiz.style.minHeight=this.vert.style.minWidth="18px")};vu.prototype.update=function(Ee){var _e=Ee.scrollWidth>Ee.clientWidth+1,it=Ee.scrollHeight>Ee.clientHeight+1,nt=Ee.nativeBarWidth;if(it){this.vert.style.display="block",this.vert.style.bottom=_e?nt+"px":"0";var ct=Ee.viewHeight-(_e?nt:0);this.vert.firstChild.style.height=Math.max(0,Ee.scrollHeight-Ee.clientHeight+ct)+"px"}else this.vert.style.display="",this.vert.firstChild.style.height="0";if(_e){this.horiz.style.display="block",this.horiz.style.right=it?nt+"px":"0",this.horiz.style.left=Ee.barLeft+"px";var jt=Ee.viewWidth-Ee.barLeft-(it?nt:0);this.horiz.firstChild.style.width=Math.max(0,Ee.scrollWidth-Ee.clientWidth+jt)+"px"}else this.horiz.style.display="",this.horiz.firstChild.style.width="0";return!this.checkedZeroWidth&&Ee.clientHeight>0&&(nt==0&&this.zeroWidthHack(),this.checkedZeroWidth=!0),{right:it?nt:0,bottom:_e?nt:0}},vu.prototype.setScrollLeft=function(Ee){this.horiz.scrollLeft!=Ee&&(this.horiz.scrollLeft=Ee),this.disableHoriz&&this.enableZeroWidthBar(this.horiz,this.disableHoriz,"horiz")},vu.prototype.setScrollTop=function(Ee){this.vert.scrollTop!=Ee&&(this.vert.scrollTop=Ee),this.disableVert&&this.enableZeroWidthBar(this.vert,this.disableVert,"vert")},vu.prototype.zeroWidthHack=function(){var Ee=fe&&!Pe?"12px":"18px";this.horiz.style.height=this.vert.style.width=Ee,this.horiz.style.pointerEvents=this.vert.style.pointerEvents="none",this.disableHoriz=new lt,this.disableVert=new lt},vu.prototype.enableZeroWidthBar=function(Ee,_e,it){Ee.style.pointerEvents="auto";function nt(){var ct=Ee.getBoundingClientRect(),jt=it=="vert"?document.elementFromPoint(ct.right-1,(ct.top+ct.bottom)/2):document.elementFromPoint((ct.right+ct.left)/2,ct.bottom-1);jt!=Ee?Ee.style.pointerEvents="none":_e.set(1e3,nt)}_e.set(1e3,nt)},vu.prototype.clear=function(){var Ee=this.horiz.parentNode;Ee.removeChild(this.horiz),Ee.removeChild(this.vert)};var yl=function(){};yl.prototype.update=function(){return{bottom:0,right:0}},yl.prototype.setScrollLeft=function(){},yl.prototype.setScrollTop=function(){},yl.prototype.clear=function(){};function il(Ee,_e){_e||(_e=Dl(Ee));var it=Ee.display.barWidth,nt=Ee.display.barHeight;Bl(Ee,_e);for(var ct=0;ct<4&&it!=Ee.display.barWidth||nt!=Ee.display.barHeight;ct++)it!=Ee.display.barWidth&&Ee.options.lineWrapping&&Wi(Ee),Bl(Ee,Dl(Ee)),it=Ee.display.barWidth,nt=Ee.display.barHeight}function Bl(Ee,_e){var it=Ee.display,nt=it.scrollbars.update(_e);it.sizer.style.paddingRight=(it.barWidth=nt.right)+"px",it.sizer.style.paddingBottom=(it.barHeight=nt.bottom)+"px",it.heightForcer.style.borderBottom=nt.bottom+"px solid transparent",nt.right&&nt.bottom?(it.scrollbarFiller.style.display="block",it.scrollbarFiller.style.height=nt.bottom+"px",it.scrollbarFiller.style.width=nt.right+"px"):it.scrollbarFiller.style.display="",nt.bottom&&Ee.options.coverGutterNextToScrollbar&&Ee.options.fixedGutter?(it.gutterFiller.style.display="block",it.gutterFiller.style.height=nt.bottom+"px",it.gutterFiller.style.width=_e.gutterWidth+"px"):it.gutterFiller.style.display=""}var Rl={native:vu,null:yl};function mu(Ee){Ee.display.scrollbars&&(Ee.display.scrollbars.clear(),Ee.display.scrollbars.addClass&&Ne(Ee.display.wrapper,Ee.display.scrollbars.addClass)),Ee.display.scrollbars=new Rl[Ee.options.scrollbarStyle](function(_e){Ee.display.wrapper.insertBefore(_e,Ee.display.scrollbarFiller),Jn(_e,"mousedown",function(){Ee.state.focused&&setTimeout(function(){return Ee.display.input.focus()},0)}),_e.setAttribute("cm-not-content","true")},function(_e,it){it=="horizontal"?Tl(Ee,_e):dl(Ee,_e)},Ee),Ee.display.scrollbars.addClass&&St(Ee.display.wrapper,Ee.display.scrollbars.addClass)}var Xl=0;function ra(Ee){Ee.curOp={cm:Ee,viewChanged:!1,startHeight:Ee.doc.height,forceUpdate:!1,updateInput:0,typing:!1,changeObjs:null,cursorActivityHandlers:null,cursorActivityCalled:0,selectionChanged:!1,updateMaxLine:!1,scrollLeft:null,scrollTop:null,scrollToPos:null,focus:!1,id:++Xl},Dc(Ee.curOp)}function Ou(Ee){var _e=Ee.curOp;_e&&Xs(_e,function(it){for(var nt=0;nt=it.viewTo)||it.maxLineChanged&&_e.options.lineWrapping,Ee.update=Ee.mustUpdate&&new Ii(_e,Ee.mustUpdate&&{top:Ee.scrollTop,ensure:Ee.scrollToPos},Ee.forceUpdate)}function On(Ee){Ee.updatedDisplay=Ee.mustUpdate&&Ho(Ee.cm,Ee.update)}function sr(Ee){var _e=Ee.cm,it=_e.display;Ee.updatedDisplay&&Wi(_e),Ee.barMeasure=Dl(_e),it.maxLineChanged&&!_e.options.lineWrapping&&(Ee.adjustWidthTo=jf(_e,it.maxLine,it.maxLine.text.length).left+3,_e.display.sizerWidth=Ee.adjustWidthTo,Ee.barMeasure.scrollWidth=Math.max(it.scroller.clientWidth,it.sizer.offsetLeft+Ee.adjustWidthTo+Hc(_e)+_e.display.barWidth),Ee.maxScrollLeft=Math.max(0,it.sizer.offsetLeft+Ee.adjustWidthTo-th(_e))),(Ee.updatedDisplay||Ee.selectionChanged)&&(Ee.preparedSelection=it.input.prepareSelection())}function pr(Ee){var _e=Ee.cm;Ee.adjustWidthTo!=null&&(_e.display.sizer.style.minWidth=Ee.adjustWidthTo+"px",Ee.maxScrollLeft<_e.doc.scrollLeft&&Tl(_e,Math.min(_e.display.scroller.scrollLeft,Ee.maxScrollLeft),!0),_e.display.maxLineChanged=!1);var it=Ee.focus&&Ee.focus==st();Ee.preparedSelection&&_e.display.input.showSelection(Ee.preparedSelection,it),(Ee.updatedDisplay||Ee.startHeight!=_e.doc.height)&&il(_e,Ee.barMeasure),Ee.updatedDisplay&&Qa(_e,Ee.barMeasure),Ee.selectionChanged&&bi(_e),_e.state.focused&&Ee.updateInput&&_e.display.input.reset(Ee.typing),it&&Zi(Ee.cm)}function kr(Ee){var _e=Ee.cm,it=_e.display,nt=_e.doc;if(Ee.updatedDisplay&&io(_e,Ee.update),it.wheelStartX!=null&&(Ee.scrollTop!=null||Ee.scrollLeft!=null||Ee.scrollToPos)&&(it.wheelStartX=it.wheelStartY=null),Ee.scrollTop!=null&&Nl(_e,Ee.scrollTop,Ee.forceScroll),Ee.scrollLeft!=null&&Tl(_e,Ee.scrollLeft,!0,!0),Ee.scrollToPos){var ct=Ko(_e,ur(nt,Ee.scrollToPos.from),ur(nt,Ee.scrollToPos.to),Ee.scrollToPos.margin);so(_e,ct)}var jt=Ee.maybeHiddenMarkers,hn=Ee.maybeUnhiddenMarkers;if(jt)for(var Mn=0;Mn=Ee.display.viewTo)){var it=+new Date+Ee.options.workTime,nt=$i(Ee,_e.highlightFrontier),ct=[];_e.iter(nt.line,Math.min(_e.first+_e.size,Ee.display.viewTo+500),function(jt){if(nt.line>=Ee.display.viewFrom){var hn=jt.styles,Mn=jt.text.length>Ee.options.maxHighlightLength?qe(_e.mode,nt.state):null,Pn=fi(Ee,jt,nt,!0);Mn&&(nt.state=Mn),jt.styles=Pn.styles;var Xn=jt.styleClasses,Gr=Pn.classes;Gr?jt.styleClasses=Gr:Xn&&(jt.styleClasses=null);for(var ar=!hn||hn.length!=jt.styles.length||Xn!=Gr&&(!Xn||!Gr||Xn.bgClass!=Gr.bgClass||Xn.textClass!=Gr.textClass),Si=0;!ar&&Siit)return Ni(Ee,Ee.options.workDelay),!0}),_e.highlightFrontier=nt.line,_e.modeFrontier=Math.max(_e.modeFrontier,nt.line),ct.length&&Lr(Ee,function(){for(var jt=0;jt=it.viewFrom&&_e.visible.to<=it.viewTo&&(it.updateLineNumbers==null||it.updateLineNumbers>=it.viewTo)&&it.renderedView==it.view&&Ln(Ee)==0)return!1;ca(Ee)&&(oc(Ee),_e.dims=Op(Ee));var ct=nt.first+nt.size,jt=Math.max(_e.visible.from-Ee.options.viewportMargin,nt.first),hn=Math.min(ct,_e.visible.to+Ee.options.viewportMargin);it.viewFromhn&&it.viewTo-hn<20&&(hn=Math.min(ct,it.viewTo)),Zr&&(jt=la(Ee.doc,jt),hn=na(Ee.doc,hn));var Mn=jt!=it.viewFrom||hn!=it.viewTo||it.lastWrapHeight!=_e.wrapperHeight||it.lastWrapWidth!=_e.wrapperWidth;En(Ee,jt,hn),it.viewOffset=Ts(rn(Ee.doc,it.viewFrom)),Ee.display.mover.style.top=it.viewOffset+"px";var Pn=Ln(Ee);if(!Mn&&Pn==0&&!_e.force&&it.renderedView==it.view&&(it.updateLineNumbers==null||it.updateLineNumbers>=it.viewTo))return!1;var Xn=uo(Ee);return Pn>4&&(it.lineDiv.style.display="none"),Jo(Ee,it.updateLineNumbers,_e.dims),Pn>4&&(it.lineDiv.style.display=""),it.renderedView=it.view,gi(Xn),ze(it.cursorDiv),ze(it.selectionDiv),it.gutters.style.height=it.sizer.style.minHeight=0,Mn&&(it.lastWrapHeight=_e.wrapperHeight,it.lastWrapWidth=_e.wrapperWidth,Ni(Ee,400)),it.updateLineNumbers=null,!0}function io(Ee,_e){for(var it=_e.viewport,nt=!0;;nt=!1){if(!nt||!Ee.options.lineWrapping||_e.oldDisplayWidth==th(Ee)){if(it&&it.top!=null&&(it={top:Math.min(Ee.doc.height+vh(Ee.display)-yf(Ee),it.top)}),_e.visible=Ai(Ee.display,Ee.doc,it),_e.visible.from>=Ee.display.viewFrom&&_e.visible.to<=Ee.display.viewTo)break}else nt&&(_e.visible=Ai(Ee.display,Ee.doc,it));if(!Ho(Ee,_e))break;Wi(Ee);var ct=Dl(Ee);Er(Ee),il(Ee,ct),Qa(Ee,ct),_e.force=!1}_e.signal(Ee,"update",Ee),(Ee.display.viewFrom!=Ee.display.reportedViewFrom||Ee.display.viewTo!=Ee.display.reportedViewTo)&&(_e.signal(Ee,"viewportChange",Ee,Ee.display.viewFrom,Ee.display.viewTo),Ee.display.reportedViewFrom=Ee.display.viewFrom,Ee.display.reportedViewTo=Ee.display.viewTo)}function oa(Ee,_e){var it=new Ii(Ee,_e);if(Ho(Ee,it)){Wi(Ee),io(Ee,it);var nt=Dl(Ee);Er(Ee),il(Ee,nt),Qa(Ee,nt),it.finish()}}function Jo(Ee,_e,it){var nt=Ee.display,ct=Ee.options.lineNumbers,jt=nt.lineDiv,hn=jt.firstChild;function Mn(wo){var No=wo.nextSibling;return we&&fe&&Ee.display.currentWheelTarget==wo?wo.style.display="none":wo.parentNode.removeChild(wo),No}for(var Pn=nt.view,Xn=nt.viewFrom,Gr=0;Gr-1&&(vi=!1),ku(Ee,ar,Xn,it)),vi&&(ze(ar.lineNumber),ar.lineNumber.appendChild(document.createTextNode(dr(Ee.options,Xn)))),hn=ar.node.nextSibling}Xn+=ar.size}for(;hn;)hn=Mn(hn)}function ea(Ee){var _e=Ee.gutters.offsetWidth;Ee.sizer.style.marginLeft=_e+"px"}function Qa(Ee,_e){Ee.display.sizer.style.minHeight=_e.docHeight+"px",Ee.display.heightForcer.style.top=_e.docHeight+"px",Ee.display.gutters.style.height=_e.docHeight+Ee.display.barHeight+Hc(Ee)+"px"}function as(Ee){var _e=Ee.display,it=_e.view;if(!(!_e.alignWidgets&&(!_e.gutters.firstChild||!Ee.options.fixedGutter))){for(var nt=Ug(_e)-_e.scroller.scrollLeft+Ee.doc.scrollLeft,ct=_e.gutters.offsetWidth,jt=nt+"px",hn=0;hnhn.clientWidth,Pn=hn.scrollHeight>hn.clientHeight;if(nt&&Mn||ct&&Pn){if(ct&&fe&&we){e:for(var Xn=_e.target,Gr=jt.view;Xn!=hn;Xn=Xn.parentNode)for(var ar=0;ar=0&&An(Ee,nt.to())<=0)return it}return-1};var sa=function(Ee,_e){this.anchor=Ee,this.head=_e};sa.prototype.from=function(){return gr(this.anchor,this.head)},sa.prototype.to=function(){return lr(this.anchor,this.head)},sa.prototype.empty=function(){return this.head.line==this.anchor.line&&this.head.ch==this.anchor.ch};function ht(Ee,_e,it){var nt=Ee&&Ee.options.selectionsMayTouch,ct=_e[it];_e.sort(function(Si,vi){return An(Si.from(),vi.from())}),it=Nt(_e,ct);for(var jt=1;jt<_e.length;jt++){var hn=_e[jt],Mn=_e[jt-1],Pn=An(Mn.to(),hn.from());if(nt&&!hn.empty()?Pn>0:Pn>=0){var Xn=gr(Mn.from(),hn.from()),Gr=lr(Mn.to(),hn.to()),ar=Mn.empty()?hn.from()==hn.head:Mn.from()==Mn.head;jt<=it&&--it,_e.splice(--jt,2,new sa(ar?Gr:Xn,ar?Xn:Gr))}}return new hs(_e,it)}function Dt(Ee,_e){return new hs([new sa(Ee,_e||Ee)],0)}function _t(Ee){return Ee.text?Bn(Ee.from.line+Ee.text.length-1,ln(Ee.text).length+(Ee.text.length==1?Ee.from.ch:0)):Ee.to}function en(Ee,_e){if(An(Ee,_e.from)<0)return Ee;if(An(Ee,_e.to)<=0)return _t(_e);var it=Ee.line+_e.text.length-(_e.to.line-_e.from.line)-1,nt=Ee.ch;return Ee.line==_e.to.line&&(nt+=_t(_e).ch-_e.to.ch),Bn(it,nt)}function pn(Ee,_e){for(var it=[],nt=0;nt1&&Ee.remove(Mn.line+1,wo-1),Ee.insert(Mn.line+1,Ia)}Ro(Ee,"change",Ee,_e)}function Dr(Ee,_e,it){function nt(ct,jt,hn){if(ct.linked)for(var Mn=0;Mn1&&!Ee.done[Ee.done.length-2].ranges)return Ee.done.pop(),ln(Ee.done)}function Ti(Ee,_e,it,nt){var ct=Ee.history;ct.undone.length=0;var jt=+new Date,hn,Mn;if((ct.lastOp==nt||ct.lastOrigin==_e.origin&&_e.origin&&(_e.origin.charAt(0)=="+"&&ct.lastModTime>jt-(Ee.cm?Ee.cm.options.historyEventDelay:500)||_e.origin.charAt(0)=="*"))&&(hn=Vr(ct,ct.lastOp==nt)))Mn=ln(hn.changes),An(_e.from,_e.to)==0&&An(_e.from,Mn.to)==0?Mn.to=_t(_e):hn.changes.push(Ur(Ee,_e));else{var Pn=ln(ct.done);for((!Pn||!Pn.ranges)&&qr(Ee.sel,ct.done),hn={changes:[Ur(Ee,_e)],generation:ct.generation},ct.done.push(hn);ct.done.length>ct.undoDepth;)ct.done.shift(),ct.done[0].ranges||ct.done.shift()}ct.done.push(it),ct.generation=++ct.maxGeneration,ct.lastModTime=ct.lastSelTime=jt,ct.lastOp=ct.lastSelOp=nt,ct.lastOrigin=ct.lastSelOrigin=_e.origin,Mn||Tn(Ee,"historyAdded")}function Li(Ee,_e,it,nt){var ct=_e.charAt(0);return ct=="*"||ct=="+"&&it.ranges.length==nt.ranges.length&&it.somethingSelected()==nt.somethingSelected()&&new Date-Ee.history.lastSelTime<=(Ee.cm?Ee.cm.options.historyEventDelay:500)}function xi(Ee,_e,it,nt){var ct=Ee.history,jt=nt&&nt.origin;it==ct.lastSelOp||jt&&ct.lastSelOrigin==jt&&(ct.lastModTime==ct.lastSelTime&&ct.lastOrigin==jt||Li(Ee,jt,ln(ct.done),_e))?ct.done[ct.done.length-1]=_e:qr(_e,ct.done),ct.lastSelTime=+new Date,ct.lastSelOrigin=jt,ct.lastSelOp=it,nt&&nt.clearRedo!==!1&&zr(ct.undone)}function qr(Ee,_e){var it=ln(_e);it&&it.ranges&&it.equals(Ee)||_e.push(Ee)}function Bo(Ee,_e,it,nt){var ct=_e["spans_"+Ee.id],jt=0;Ee.iter(Math.max(Ee.first,it),Math.min(Ee.first+Ee.size,nt),function(hn){hn.markedSpans&&((ct||(ct=_e["spans_"+Ee.id]={}))[jt]=hn.markedSpans),++jt})}function ta(Ee){if(!Ee)return null;for(var _e,it=0;it-1&&(ln(Mn)[ar]=Xn[ar],delete Xn[ar])}}return nt}function Do(Ee,_e,it,nt){if(nt){var ct=Ee.anchor;if(it){var jt=An(_e,ct)<0;jt!=An(it,ct)<0?(ct=_e,_e=it):jt!=An(_e,it)<0&&(_e=it)}return new sa(ct,_e)}else return new sa(it||_e,_e)}function Wr(Ee,_e,it,nt,ct){ct==null&&(ct=Ee.cm&&(Ee.cm.display.shift||Ee.extend)),Vo(Ee,new hs([Do(Ee.sel.primary(),_e,it,ct)],0),nt)}function Ki(Ee,_e,it){for(var nt=[],ct=Ee.cm&&(Ee.cm.display.shift||Ee.extend),jt=0;jt=_e.ch:Mn.to>_e.ch))){if(ct&&(Tn(Pn,"beforeCursorEnter"),Pn.explicitlyCleared))if(jt.markedSpans){--hn;continue}else break;if(!Pn.atomic)continue;if(it){var ar=Pn.find(nt<0?1:-1),Si=void 0;if((nt<0?Gr:Xn)&&(ar=Gs(Ee,ar,-nt,ar&&ar.line==_e.line?jt:null)),ar&&ar.line==_e.line&&(Si=An(ar,it))&&(nt<0?Si<0:Si>0))return bs(Ee,ar,_e,nt,ct)}var vi=Pn.find(nt<0?-1:1);return(nt<0?Xn:Gr)&&(vi=Gs(Ee,vi,nt,vi.line==_e.line?jt:null)),vi?bs(Ee,vi,_e,nt,ct):null}}return _e}function Cl(Ee,_e,it,nt,ct){var jt=nt||1,hn=bs(Ee,_e,it,jt,ct)||!ct&&bs(Ee,_e,it,jt,!0)||bs(Ee,_e,it,-jt,ct)||!ct&&bs(Ee,_e,it,-jt,!0);return hn||(Ee.cantEdit=!0,Bn(Ee.first,0))}function Gs(Ee,_e,it,nt){return it<0&&_e.ch==0?_e.line>Ee.first?ur(Ee,Bn(_e.line-1)):null:it>0&&_e.ch==(nt||rn(Ee,_e.line)).text.length?_e.line=0;--ct)tu(Ee,{from:nt[ct].from,to:nt[ct].to,text:ct?[""]:_e.text,origin:_e.origin});else tu(Ee,_e)}}function tu(Ee,_e){if(!(_e.text.length==1&&_e.text[0]==""&&An(_e.from,_e.to)==0)){var it=pn(Ee,_e);Ti(Ee,_e,it,Ee.cm?Ee.cm.curOp.id:NaN),nd(Ee,_e,it,li(Ee,_e));var nt=[];Dr(Ee,function(ct,jt){!jt&&Nt(nt,ct.history)==-1&&(nu(ct.history,_e),nt.push(ct.history)),nd(ct,_e,null,li(ct,_e))})}}function yd(Ee,_e,it){var nt=Ee.cm&&Ee.cm.state.suppressEdits;if(!(nt&&!it)){for(var ct=Ee.history,jt,hn=Ee.sel,Mn=_e=="undo"?ct.done:ct.undone,Pn=_e=="undo"?ct.undone:ct.done,Xn=0;Xn=0;--vi){var wo=Si(vi);if(wo)return wo.v}}}}function sg(Ee,_e){if(_e!=0&&(Ee.first+=_e,Ee.sel=new hs(Gn(Ee.sel.ranges,function(ct){return new sa(Bn(ct.anchor.line+_e,ct.anchor.ch),Bn(ct.head.line+_e,ct.head.ch))}),Ee.sel.primIndex),Ee.cm)){lu(Ee.cm,Ee.first,Ee.first-_e,_e);for(var it=Ee.cm.display,nt=it.viewFrom;ntEe.lastLine())){if(_e.from.linejt&&(_e={from:_e.from,to:Bn(jt,rn(Ee,jt).text.length),text:[_e.text[0]],origin:_e.origin}),_e.removed=un(Ee,_e.from,_e.to),it||(it=pn(Ee,_e)),Ee.cm?Wf(Ee.cm,_e,nt):ir(Ee,_e,nt),Ua(Ee,it,Ft),Ee.cantEdit&&Cl(Ee,Bn(Ee.firstLine(),0))&&(Ee.cantEdit=!1)}}function Wf(Ee,_e,it){var nt=Ee.doc,ct=Ee.display,jt=_e.from,hn=_e.to,Mn=!1,Pn=jt.line;Ee.options.lineWrapping||(Pn=tn(Sa(rn(nt,jt.line))),nt.iter(Pn,hn.line+1,function(vi){if(vi==ct.maxLine)return Mn=!0,!0})),nt.sel.contains(_e.from,_e.to)>-1&&or(Ee),ir(nt,_e,it,_u(Ee)),Ee.options.lineWrapping||(nt.iter(Pn,jt.line+_e.text.length,function(vi){var wo=pl(vi);wo>ct.maxLineLength&&(ct.maxLine=vi,ct.maxLineLength=wo,ct.maxLineChanged=!0,Mn=!1)}),Mn&&(Ee.curOp.updateMaxLine=!0)),Gi(nt,jt.line),Ni(Ee,400);var Xn=_e.text.length-(hn.line-jt.line)-1;_e.full?lu(Ee):jt.line==hn.line&&_e.text.length==1&&!Un(Ee.doc,_e)?Us(Ee,jt.line,"text"):lu(Ee,jt.line,hn.line+1,Xn);var Gr=yr(Ee,"changes"),ar=yr(Ee,"change");if(ar||Gr){var Si={from:jt,to:hn,text:_e.text,removed:_e.removed,origin:_e.origin};ar&&Ro(Ee,"change",Ee,Si),Gr&&(Ee.curOp.changeObjs||(Ee.curOp.changeObjs=[])).push(Si)}Ee.display.selForContextMenu=null}function xf(Ee,_e,it,nt,ct){var jt;nt||(nt=it),An(nt,it)<0&&(jt=[nt,it],it=jt[0],nt=jt[1]),typeof _e=="string"&&(_e=Ee.splitLines(_e)),Hl(Ee,{from:it,to:nt,text:_e,origin:ct})}function rd(Ee,_e,it,nt){it1||!(this.children[0]instanceof Mu))){var Mn=[];this.collapse(Mn),this.children=[new Mu(Mn)],this.children[0].parent=this}},collapse:function(Ee){for(var _e=0;_e50){for(var hn=ct.lines.length%25+25,Mn=hn;Mn10);Ee.parent.maybeSpill()}},iterN:function(Ee,_e,it){for(var nt=0;ntEe.display.maxLineLength&&(Ee.display.maxLine=Xn,Ee.display.maxLineLength=Gr,Ee.display.maxLineChanged=!0)}nt!=null&&Ee&&this.collapsed&&lu(Ee,nt,ct+1),this.lines.length=0,this.explicitlyCleared=!0,this.atomic&&this.doc.cantEdit&&(this.doc.cantEdit=!1,Ee&&Ao(Ee.doc)),Ee&&Ro(Ee,"markerCleared",Ee,this,nt,ct),_e&&Ou(Ee),this.parent&&this.parent.clear()}},Mr.prototype.find=function(Ee,_e){Ee==null&&this.type=="bookmark"&&(Ee=1);for(var it,nt,ct=0;ct0||hn==0&&jt.clearWhenEmpty!==!1)return jt;if(jt.replacedWith&&(jt.collapsed=!0,jt.widgetNode=Je("span",[jt.replacedWith],"CodeMirror-widget"),nt.handleMouseEvents||jt.widgetNode.setAttribute("cm-ignore-events","true"),nt.insertLeft&&(jt.widgetNode.insertLeft=!0)),jt.collapsed){if(Aa(Ee,_e.line,_e,it,jt)||_e.line!=it.line&&Aa(Ee,it.line,_e,it,jt))throw new Error("Inserting collapsed marker partially overlapping an existing one");Xr()}jt.addToHistory&&Ti(Ee,{from:_e,to:it,origin:"markText"},Ee.sel,NaN);var Mn=_e.line,Pn=Ee.cm,Xn;if(Ee.iter(Mn,it.line+1,function(ar){Pn&&jt.collapsed&&!Pn.options.lineWrapping&&Sa(ar)==Pn.display.maxLine&&(Xn=!0),jt.collapsed&&Mn!=_e.line&&Fn(ar,0),ys(ar,new Ma(jt,Mn==_e.line?_e.ch:null,Mn==it.line?it.ch:null)),++Mn}),jt.collapsed&&Ee.iter(_e.line,it.line+1,function(ar){Ri(Ee,ar)&&Fn(ar,0)}),jt.clearOnEnter&&Jn(jt,"beforeCursorEnter",function(){return jt.clear()}),jt.readOnly&&(Pa(),(Ee.history.done.length||Ee.history.undone.length)&&Ee.clearHistory()),jt.collapsed&&(jt.id=++Uf,jt.atomic=!0),Pn){if(Xn&&(Pn.curOp.updateMaxLine=!0),jt.collapsed)lu(Pn,_e.line,it.line+1);else if(jt.className||jt.startStyle||jt.endStyle||jt.css||jt.attributes||jt.title)for(var Gr=_e.line;Gr<=it.line;Gr++)Us(Pn,Gr,"text");jt.atomic&&Ao(Pn.doc),Ro(Pn,"markerAdded",Pn,jt)}return jt}var $d=function(Ee,_e){this.markers=Ee,this.primary=_e;for(var it=0;it=0;Pn--)Hl(this,nt[Pn]);Mn?Eo(this,Mn):this.cm&&Ka(this.cm)}),undo:ri(function(){yd(this,"undo")}),redo:ri(function(){yd(this,"redo")}),undoSelection:ri(function(){yd(this,"undo",!0)}),redoSelection:ri(function(){yd(this,"redo",!0)}),setExtending:function(Ee){this.extend=Ee},getExtending:function(){return this.extend},historySize:function(){for(var Ee=this.history,_e=0,it=0,nt=0;nt=Ee.ch)&&_e.push(ct.marker.parent||ct.marker)}return _e},findMarks:function(Ee,_e,it){Ee=ur(this,Ee),_e=ur(this,_e);var nt=[],ct=Ee.line;return this.iter(Ee.line,_e.line+1,function(jt){var hn=jt.markedSpans;if(hn)for(var Mn=0;Mn=Pn.to||Pn.from==null&&ct!=Ee.line||Pn.from!=null&&ct==_e.line&&Pn.from>=_e.ch)&&(!it||it(Pn.marker))&&nt.push(Pn.marker.parent||Pn.marker)}++ct}),nt},getAllMarks:function(){var Ee=[];return this.iter(function(_e){var it=_e.markedSpans;if(it)for(var nt=0;ntEe)return _e=Ee,!0;Ee-=jt,++it}),ur(this,Bn(it,_e))},indexFromPos:function(Ee){Ee=ur(this,Ee);var _e=Ee.ch;if(Ee.line_e&&(_e=Ee.from),Ee.to!=null&&Ee.to-1){_e.state.draggingText(Ee),setTimeout(function(){return _e.display.input.focus()},20);return}try{var Gr=Ee.dataTransfer.getData("Text");if(Gr){var ar;if(_e.state.draggingText&&!_e.state.draggingText.copy&&(ar=_e.listSelections()),Ua(_e.doc,Dt(it,it)),ar)for(var Si=0;Si=0;Mn--)xf(Ee.doc,"",nt[Mn].from,nt[Mn].to,"+delete");Ka(Ee)})}function U0(Ee,_e,it){var nt=Pt(Ee.text,_e+it,it);return nt<0||nt>Ee.text.length?null:nt}function Bc(Ee,_e,it){var nt=U0(Ee,_e.ch,it);return nt==null?null:new Bn(_e.line,nt,it<0?"after":"before")}function Jl(Ee,_e,it,nt,ct){if(Ee){_e.doc.direction=="rtl"&&(ct=-ct);var jt=Qn(it,_e.doc.direction);if(jt){var hn=ct<0?ln(jt):jt[0],Mn=ct<0==(hn.level==1),Pn=Mn?"after":"before",Xn;if(hn.level>0||_e.doc.direction=="rtl"){var Gr=nh(_e,it);Xn=ct<0?it.text.length-1:0;var ar=Fc(_e,Gr,Xn).top;Xn=Vt(function(Si){return Fc(_e,Gr,Si).top==ar},ct<0==(hn.level==1)?hn.from:hn.to-1,Xn),Pn=="before"&&(Xn=U0(it,Xn,1))}else Xn=ct<0?hn.to:hn.from;return new Bn(nt,Xn,Pn)}}return new Bn(nt,ct<0?it.text.length:0,ct<0?"before":"after")}function Zu(Ee,_e,it,nt){var ct=Qn(_e,Ee.doc.direction);if(!ct)return Bc(_e,it,nt);it.ch>=_e.text.length?(it.ch=_e.text.length,it.sticky="before"):it.ch<=0&&(it.ch=0,it.sticky="after");var jt=Jt(ct,it.ch,it.sticky),hn=ct[jt];if(Ee.doc.direction=="ltr"&&hn.level%2==0&&(nt>0?hn.to>it.ch:hn.from=hn.from&&Si>=Gr.begin)){var vi=ar?"before":"after";return new Bn(it.line,Si,vi)}}var wo=function(Ia,fs,Ja){for(var Ss=function(Sc,Gh){return Gh?new Bn(it.line,Mn(Sc,1),"before"):new Bn(it.line,Sc,"after")};Ia>=0&&Ia0==(ul.level!=1),zl=Ya?Ja.begin:Mn(Ja.end,-1);if(ul.from<=zl&&zl0?Gr.end:Mn(Gr.begin,-1);return ia!=null&&!(nt>0&&ia==_e.text.length)&&(No=wo(nt>0?0:ct.length-1,nt,Xn(ia)),No)?No:null}var hh={selectAll:Fs,singleSelection:function(Ee){return Ee.setSelection(Ee.getCursor("anchor"),Ee.getCursor("head"),Ft)},killLine:function(Ee){return Oh(Ee,function(_e){if(_e.empty()){var it=rn(Ee.doc,_e.head.line).text.length;return _e.head.ch==it&&_e.head.line0)ct=new Bn(ct.line,ct.ch+1),Ee.replaceRange(jt.charAt(ct.ch-1)+jt.charAt(ct.ch-2),Bn(ct.line,ct.ch-2),ct,"+transpose");else if(ct.line>Ee.doc.first){var hn=rn(Ee.doc,ct.line-1).text;hn&&(ct=new Bn(ct.line,1),Ee.replaceRange(jt.charAt(0)+Ee.doc.lineSeparator()+hn.charAt(hn.length-1),Bn(ct.line-1,hn.length-1),ct,"+transpose"))}}it.push(new sa(ct,ct))}Ee.setSelections(it)})},newlineAndIndent:function(Ee){return Lr(Ee,function(){for(var _e=Ee.listSelections(),it=_e.length-1;it>=0;it--)Ee.replaceRange(Ee.doc.lineSeparator(),_e[it].anchor,_e[it].head,"+input");_e=Ee.listSelections();for(var nt=0;nt<_e.length;nt++)Ee.indentLine(_e[nt].from().line,null,!0);Ka(Ee)})},openLine:function(Ee){return Ee.replaceSelection(` `,"start")},toggleOverwrite:function(Ee){return Ee.toggleOverwrite()}};function Rd(Ee,_e){var it=rn(Ee.doc,_e),nt=Sa(it);return nt!=it&&(_e=tn(nt)),Jl(!0,Ee,nt,_e,1)}function kd(Ee,_e){var it=rn(Ee.doc,_e),nt=xs(it);return nt!=it&&(_e=tn(nt)),Jl(!0,Ee,it,_e,-1)}function G0(Ee,_e){var it=Rd(Ee,_e.line),nt=rn(Ee.doc,it.line),ct=Qn(nt,Ee.doc.direction);if(!ct||ct[0].level==0){var jt=Math.max(it.ch,nt.text.search(/\S/)),hn=_e.line==it.line&&_e.ch<=jt&&_e.ch;return Bn(it.line,hn?0:jt,it.sticky)}return it}function up(Ee,_e,it){if(typeof _e=="string"&&(_e=hh[_e],!_e))return!1;Ee.display.input.ensurePolled();var nt=Ee.display.shift,ct=!1;try{Ee.isReadOnly()&&(Ee.state.suppressEdits=!0),it&&(Ee.display.shift=!1),ct=_e(Ee)!=Ut}finally{Ee.display.shift=nt,Ee.state.suppressEdits=!1}return ct}function H0(Ee,_e,it){for(var nt=0;ntEe&&An(_e,this.pos)==0&&it==this.button};var Pv,s0;function py(Ee,_e){var it=+new Date;return s0&&s0.compare(it,Ee,_e)?(Pv=s0=null,"triple"):Pv&&Pv.compare(it,Ee,_e)?(s0=new f1(it,Ee,_e),Pv=null,"double"):(Pv=new f1(it,Ee,_e),s0=null,"single")}function hg(Ee){var _e=this,it=_e.display;if(!(hr(_e,Ee)||it.activeTouch&&it.input.supportsTouch())){if(it.input.ensurePolled(),it.shift=Ee.shiftKey,eh(it,Ee)){we||(it.scroller.draggable=!1,setTimeout(function(){return it.scroller.draggable=!0},100));return}if(!is(_e,Ee)){var nt=hc(_e,Ee),ct=To(Ee),jt=nt?py(nt,ct):"single";window.focus(),ct==1&&_e.state.selectingText&&_e.state.selectingText(Ee),!(nt&&g1(_e,ct,nt,jt,Ee))&&(ct==1?nt?vy(_e,nt,jt,Ee):Co(Ee)==it.scroller&&mi(Ee):ct==2?(nt&&Wr(_e.doc,nt),setTimeout(function(){return it.input.focus()},20)):ct==3&&(pe?_e.display.input.onContextMenu(Ee):Oo(_e)))}}}function g1(Ee,_e,it,nt,ct){var jt="Click";return nt=="double"?jt="Double"+jt:nt=="triple"&&(jt="Triple"+jt),jt=(_e==1?"Left":_e==2?"Middle":"Right")+jt,Af(Ee,a0(jt,ct),ct,function(hn){if(typeof hn=="string"&&(hn=hh[hn]),!hn)return!1;var Mn=!1;try{Ee.isReadOnly()&&(Ee.state.suppressEdits=!0),Mn=hn(Ee,it)!=Ut}finally{Ee.state.suppressEdits=!1}return Mn})}function Pm(Ee,_e,it){var nt=Ee.getOption("configureMouse"),ct=nt?nt(Ee,_e,it):{};if(ct.unit==null){var jt=de?it.shiftKey&&it.metaKey:it.altKey;ct.unit=jt?"rectangle":_e=="single"?"char":_e=="double"?"word":"line"}return(ct.extend==null||Ee.doc.extend)&&(ct.extend=Ee.doc.extend||it.shiftKey),ct.addNew==null&&(ct.addNew=fe?it.metaKey:it.ctrlKey),ct.moveOnDrag==null&&(ct.moveOnDrag=!(fe?it.altKey:it.ctrlKey)),ct}function vy(Ee,_e,it,nt){Ze?setTimeout(Tt(Zi,Ee),0):Ee.curOp.focus=st();var ct=Pm(Ee,it,nt),jt=Ee.doc.sel,hn;Ee.options.dragDrop&&xo&&!Ee.isReadOnly()&&it=="single"&&(hn=jt.contains(_e))>-1&&(An((hn=jt.ranges[hn]).from(),_e)<0||_e.xRel>0)&&(An(hn.to(),_e)>0||_e.xRel<0)?Mm(Ee,nt,_e,ct):lA(Ee,nt,_e,ct)}function Mm(Ee,_e,it,nt){var ct=Ee.display,jt=!1,hn=ai(Ee,function(Xn){we&&(ct.scroller.draggable=!1),Ee.state.draggingText=!1,Rr(ct.wrapper.ownerDocument,"mouseup",hn),Rr(ct.wrapper.ownerDocument,"mousemove",Mn),Rr(ct.scroller,"dragstart",Pn),Rr(ct.scroller,"drop",hn),jt||(mi(Xn),nt.addNew||Wr(Ee.doc,it,null,null,nt.extend),we&&!be||Ze&&Oe==9?setTimeout(function(){ct.wrapper.ownerDocument.body.focus({preventScroll:!0}),ct.input.focus()},20):ct.input.focus())}),Mn=function(Xn){jt=jt||Math.abs(_e.clientX-Xn.clientX)+Math.abs(_e.clientY-Xn.clientY)>=10},Pn=function(){return jt=!0};we&&(ct.scroller.draggable=!0),Ee.state.draggingText=hn,hn.copy=!nt.moveOnDrag,ct.scroller.dragDrop&&ct.scroller.dragDrop(),Jn(ct.wrapper.ownerDocument,"mouseup",hn),Jn(ct.wrapper.ownerDocument,"mousemove",Mn),Jn(ct.scroller,"dragstart",Pn),Jn(ct.scroller,"drop",hn),Oo(Ee),setTimeout(function(){return ct.input.focus()},20)}function p1(Ee,_e,it){if(it=="char")return new sa(_e,_e);if(it=="word")return Ee.findWordAt(_e);if(it=="line")return new sa(Bn(_e.line,0),ur(Ee.doc,Bn(_e.line+1,0)));var nt=it(Ee,_e);return new sa(nt.from,nt.to)}function lA(Ee,_e,it,nt){var ct=Ee.display,jt=Ee.doc;mi(_e);var hn,Mn,Pn=jt.sel,Xn=Pn.ranges;if(nt.addNew&&!nt.extend?(Mn=jt.sel.contains(it),Mn>-1?hn=Xn[Mn]:hn=new sa(it,it)):(hn=jt.sel.primary(),Mn=jt.sel.primIndex),nt.unit=="rectangle")nt.addNew||(hn=new sa(it,it)),it=hc(Ee,_e,!0,!0),Mn=-1;else{var Gr=p1(Ee,it,nt.unit);nt.extend?hn=Do(hn,Gr.anchor,Gr.head,nt.extend):hn=Gr}nt.addNew?Mn==-1?(Mn=Xn.length,Vo(jt,ht(Ee,Xn.concat([hn]),Mn),{scroll:!1,origin:"*mouse"})):Xn.length>1&&Xn[Mn].empty()&&nt.unit=="char"&&!nt.extend?(Vo(jt,ht(Ee,Xn.slice(0,Mn).concat(Xn.slice(Mn+1)),0),{scroll:!1,origin:"*mouse"}),Pn=jt.sel):ho(jt,Mn,hn,Yt):(Mn=0,Vo(jt,new hs([hn],0),Yt),Pn=jt.sel);var ar=it;function Si(Ja){if(An(ar,Ja)!=0)if(ar=Ja,nt.unit=="rectangle"){for(var Ss=[],ul=Ee.options.tabSize,Ya=Et(rn(jt,it.line).text,it.ch,ul),zl=Et(rn(jt,Ja.line).text,Ja.ch,ul),Sc=Math.min(Ya,zl),Gh=Math.max(Ya,zl),jc=Math.min(it.line,Ja.line),Cf=Math.min(Ee.lastLine(),Math.max(it.line,Ja.line));jc<=Cf;jc++){var zd=rn(jt,jc).text,Bh=Dn(zd,Sc,ul);Sc==Gh?Ss.push(new sa(Bn(jc,Bh),Bn(jc,Bh))):zd.length>Bh&&Ss.push(new sa(Bn(jc,Bh),Bn(jc,Dn(zd,Gh,ul))))}Ss.length||Ss.push(new sa(it,it)),Vo(jt,ht(Ee,Pn.ranges.slice(0,Mn).concat(Ss),Mn),{origin:"*mouse",scroll:!1}),Ee.scrollIntoView(Ja)}else{var Vf=hn,Ed=p1(Ee,Ja,nt.unit),Rh=Vf.anchor,Lu;An(Ed.anchor,Rh)>0?(Lu=Ed.head,Rh=gr(Vf.from(),Ed.anchor)):(Lu=Ed.anchor,Rh=lr(Vf.to(),Ed.head));var Vc=Pn.ranges.slice(0);Vc[Mn]=Au(Ee,new sa(ur(jt,Rh),Lu)),Vo(jt,ht(Ee,Vc,Mn),Yt)}}var vi=ct.wrapper.getBoundingClientRect(),wo=0;function No(Ja){var Ss=++wo,ul=hc(Ee,Ja,!0,nt.unit=="rectangle");if(ul)if(An(ul,ar)!=0){Ee.curOp.focus=st(),Si(ul);var Ya=Ai(ct,jt);(ul.line>=Ya.to||ul.linevi.bottom?20:0;zl&&setTimeout(ai(Ee,function(){wo==Ss&&(ct.scroller.scrollTop+=zl,No(Ja))}),50)}}function ia(Ja){Ee.state.selectingText=!1,wo=1/0,Ja&&(mi(Ja),ct.input.focus()),Rr(ct.wrapper.ownerDocument,"mousemove",Ia),Rr(ct.wrapper.ownerDocument,"mouseup",fs),jt.history.lastSelOrigin=null}var Ia=ai(Ee,function(Ja){Ja.buttons===0||!To(Ja)?ia(Ja):No(Ja)}),fs=ai(Ee,ia);Ee.state.selectingText=fs,Jn(ct.wrapper.ownerDocument,"mousemove",Ia),Jn(ct.wrapper.ownerDocument,"mouseup",fs)}function Au(Ee,_e){var it=_e.anchor,nt=_e.head,ct=rn(Ee.doc,it.line);if(An(it,nt)==0&&it.sticky==nt.sticky)return _e;var jt=Qn(ct);if(!jt)return _e;var hn=Jt(jt,it.ch,it.sticky),Mn=jt[hn];if(Mn.from!=it.ch&&Mn.to!=it.ch)return _e;var Pn=hn+(Mn.from==it.ch==(Mn.level!=1)?0:1);if(Pn==0||Pn==jt.length)return _e;var Xn;if(nt.line!=it.line)Xn=(nt.line-it.line)*(Ee.doc.direction=="ltr"?1:-1)>0;else{var Gr=Jt(jt,nt.ch,nt.sticky),ar=Gr-hn||(nt.ch-it.ch)*(Mn.level==1?-1:1);Gr==Pn-1||Gr==Pn?Xn=ar<0:Xn=ar>0}var Si=jt[Pn+(Xn?-1:0)],vi=Xn==(Si.level==1),wo=vi?Si.from:Si.to,No=vi?"after":"before";return it.ch==wo&&it.sticky==No?_e:new sa(new Bn(it.line,wo,No),nt)}function Is(Ee,_e,it,nt){var ct,jt;if(_e.touches)ct=_e.touches[0].clientX,jt=_e.touches[0].clientY;else try{ct=_e.clientX,jt=_e.clientY}catch(Si){return!1}if(ct>=Math.floor(Ee.display.gutters.getBoundingClientRect().right))return!1;nt&&mi(_e);var hn=Ee.display,Mn=hn.lineDiv.getBoundingClientRect();if(jt>Mn.bottom||!yr(Ee,it))return Pi(_e);jt-=Mn.top-hn.viewOffset;for(var Pn=0;Pn=ct){var Gr=Vn(Ee.doc,jt),ar=Ee.display.gutterSpecs[Pn];return Tn(Ee,it,Ee,Gr,ar.className,_e),Pi(_e)}}}function is(Ee,_e){return Is(Ee,_e,"gutterClick",!0)}function uu(Ee,_e){eh(Ee.display,_e)||ec(Ee,_e)||hr(Ee,_e,"contextmenu")||pe||Ee.display.input.onContextMenu(_e)}function ec(Ee,_e){return yr(Ee,"gutterContextMenu")?Is(Ee,_e,"gutterContextMenu",!1):!1}function Kg(Ee){Ee.display.wrapper.className=Ee.display.wrapper.className.replace(/\s*cm-s-\S+/g,"")+Ee.options.theme.replace(/(^|\s)\s*/g," cm-s-"),Fu(Ee)}var Eh={toString:function(){return"CodeMirror.Init"}},ad={},Sf={};function Fd(Ee){var _e=Ee.optionHandlers;function it(nt,ct,jt,hn){Ee.defaults[nt]=ct,jt&&(_e[nt]=hn?function(Mn,Pn,Xn){Xn!=Eh&&jt(Mn,Pn,Xn)}:jt)}Ee.defineOption=it,Ee.Init=Eh,it("value","",function(nt,ct){return nt.setValue(ct)},!0),it("mode",null,function(nt,ct){nt.doc.modeOption=ct,mn(nt)},!0),it("indentUnit",2,mn,!0),it("indentWithTabs",!1),it("smartIndent",!0),it("tabSize",4,function(nt){Hn(nt),Fu(nt),lu(nt)},!0),it("lineSeparator",null,function(nt,ct){if(nt.doc.lineSep=ct,!!ct){var jt=[],hn=nt.doc.first;nt.doc.iter(function(Pn){for(var Xn=0;;){var Gr=Pn.text.indexOf(ct,Xn);if(Gr==-1)break;Xn=Gr+ct.length,jt.push(Bn(hn,Gr))}hn++});for(var Mn=jt.length-1;Mn>=0;Mn--)xf(nt.doc,ct,jt[Mn],Bn(jt[Mn].line,jt[Mn].ch+ct.length))}}),it("specialChars",/[\u0000-\u001f\u007f-\u009f\u00ad\u061c\u200b-\u200c\u200e\u200f\u2028\u2029\ufeff\ufff9-\ufffc]/g,function(nt,ct,jt){nt.state.specialChars=new RegExp(ct.source+(ct.test(" ")?"":"| "),"g"),jt!=Eh&&nt.refresh()}),it("specialCharPlaceholder",ou,function(nt){return nt.refresh()},!0),it("electricChars",!0),it("inputStyle",ae?"contenteditable":"textarea",function(){throw new Error("inputStyle can not (yet) be changed in a running editor")},!0),it("spellcheck",!1,function(nt,ct){return nt.getInputField().spellcheck=ct},!0),it("autocorrect",!1,function(nt,ct){return nt.getInputField().autocorrect=ct},!0),it("autocapitalize",!1,function(nt,ct){return nt.getInputField().autocapitalize=ct},!0),it("rtlMoveVisually",!ve),it("wholeLineUpdateBefore",!0),it("theme","default",function(nt){Kg(nt),da(nt)},!0),it("keyMap","default",function(nt,ct,jt){var hn=ug(ct),Mn=jt!=Eh&&ug(jt);Mn&&Mn.detach&&Mn.detach(nt,hn),hn.attach&&hn.attach(nt,Mn||null)}),it("extraKeys",null),it("configureMouse",null),it("lineWrapping",!1,wf,!0),it("gutters",[],function(nt,ct){nt.display.gutterSpecs=Da(ct,nt.options.lineNumbers),da(nt)},!0),it("fixedGutter",!0,function(nt,ct){nt.display.gutters.style.left=ct?Ug(nt.display)+"px":"0",nt.refresh()},!0),it("coverGutterNextToScrollbar",!1,function(nt){return il(nt)},!0),it("scrollbarStyle","native",function(nt){mu(nt),il(nt),nt.display.scrollbars.setScrollTop(nt.doc.scrollTop),nt.display.scrollbars.setScrollLeft(nt.doc.scrollLeft)},!0),it("lineNumbers",!1,function(nt,ct){nt.display.gutterSpecs=Da(nt.options.gutters,ct),da(nt)},!0),it("firstLineNumber",1,da,!0),it("lineNumberFormatter",function(nt){return nt},da,!0),it("showCursorWhenSelecting",!1,Er,!0),it("resetSelectionOnContextMenu",!0),it("lineWiseCopyCut",!0),it("pasteLinesPerSelection",!0),it("selectionsMayTouch",!1),it("readOnly",!1,function(nt,ct){ct=="nocursor"&&(mo(nt),nt.display.input.blur()),nt.display.input.readOnlyChanged(ct)}),it("screenReaderLabel",null,function(nt,ct){ct=ct===""?null:ct,nt.display.input.screenReaderLabelChanged(ct)}),it("disableInput",!1,function(nt,ct){ct||nt.display.input.reset()},!0),it("dragDrop",!0,Zg),it("allowDropFileTypes",null),it("cursorBlinkRate",530),it("cursorScrollMargin",0),it("cursorHeight",1,Er,!0),it("singleCursorHeightPerLine",!0,Er,!0),it("workTime",100),it("workDelay",100),it("flattenSpans",!0,Hn,!0),it("addModeClass",!1,Hn,!0),it("pollInterval",100),it("undoDepth",200,function(nt,ct){return nt.doc.history.undoDepth=ct}),it("historyEventDelay",1250),it("viewportMargin",10,function(nt){return nt.refresh()},!0),it("maxHighlightLength",1e4,Hn,!0),it("moveInputWithCursor",!0,function(nt,ct){ct||nt.display.input.resetPosition()}),it("tabindex",null,function(nt,ct){return nt.display.input.getField().tabIndex=ct||""}),it("autofocus",null),it("direction","ltr",function(nt,ct){return nt.doc.setDirection(ct)},!0),it("phrases",null)}function Zg(Ee,_e,it){var nt=it&&it!=Eh;if(!_e!=!nt){var ct=Ee.display.dragFunctions,jt=_e?Jn:Rr;jt(Ee.display.scroller,"dragstart",ct.start),jt(Ee.display.scroller,"dragenter",ct.enter),jt(Ee.display.scroller,"dragover",ct.over),jt(Ee.display.scroller,"dragleave",ct.leave),jt(Ee.display.scroller,"drop",ct.drop)}}function wf(Ee){Ee.options.lineWrapping?(St(Ee.display.wrapper,"CodeMirror-wrap"),Ee.display.sizer.style.minWidth="",Ee.display.sizerWidth=null):(Ne(Ee.display.wrapper,"CodeMirror-wrap"),Rs(Ee)),gs(Ee),lu(Ee),Fu(Ee),setTimeout(function(){return il(Ee)},100)}function vl(Ee,_e){var it=this;if(!(this instanceof vl))return new vl(Ee,_e);this.options=_e=_e?bt(_e):{},bt(ad,_e,!1);var nt=_e.value;typeof nt=="string"?nt=new rh(nt,_e.mode,null,_e.lineSeparator,_e.direction):_e.mode&&(nt.modeOption=_e.mode),this.doc=nt;var ct=new vl.inputStyles[_e.inputStyle](this),jt=this.display=new ja(Ee,nt,ct,_e);jt.wrapper.CodeMirror=this,Kg(this),_e.lineWrapping&&(this.display.wrapper.className+=" CodeMirror-wrap"),mu(this),this.state={keyMaps:[],overlays:[],modeGen:0,overwrite:!1,delayingBlurEvent:!1,focused:!1,suppressEdits:!1,pasteIncoming:-1,cutIncoming:-1,selectingText:!1,draggingText:!1,highlight:new lt,keySeq:null,specialChars:null},_e.autofocus&&!ae&&jt.input.focus(),Ze&&Oe<11&&setTimeout(function(){return it.display.input.reset(!0)},20),cp(this),xh(),ra(this),this.curOp.forceUpdate=!0,br(this,nt),_e.autofocus&&!ae||this.hasFocus()?setTimeout(function(){it.hasFocus()&&!it.state.focused&&Hi(it)},20):mo(this);for(var hn in Sf)Sf.hasOwnProperty(hn)&&Sf[hn](this,_e[hn],Eh);ca(this),_e.finishInit&&_e.finishInit(this);for(var Mn=0;Mn20*20}Jn(_e.scroller,"touchstart",function(Pn){if(!hr(Ee,Pn)&&!jt(Pn)&&!is(Ee,Pn)){_e.input.ensurePolled(),clearTimeout(it);var Xn=+new Date;_e.activeTouch={start:Xn,moved:!1,prev:Xn-nt.end<=300?nt:null},Pn.touches.length==1&&(_e.activeTouch.left=Pn.touches[0].pageX,_e.activeTouch.top=Pn.touches[0].pageY)}}),Jn(_e.scroller,"touchmove",function(){_e.activeTouch&&(_e.activeTouch.moved=!0)}),Jn(_e.scroller,"touchend",function(Pn){var Xn=_e.activeTouch;if(Xn&&!eh(_e,Pn)&&Xn.left!=null&&!Xn.moved&&new Date-Xn.start<300){var Gr=Ee.coordsChar(_e.activeTouch,"page"),ar;!Xn.prev||hn(Xn,Xn.prev)?ar=new sa(Gr,Gr):!Xn.prev.prev||hn(Xn,Xn.prev.prev)?ar=Ee.findWordAt(Gr):ar=new sa(Bn(Gr.line,0),ur(Ee.doc,Bn(Gr.line+1,0))),Ee.setSelection(ar.anchor,ar.head),Ee.focus(),mi(Pn)}ct()}),Jn(_e.scroller,"touchcancel",ct),Jn(_e.scroller,"scroll",function(){_e.scroller.clientHeight&&(dl(Ee,_e.scroller.scrollTop),Tl(Ee,_e.scroller.scrollLeft,!0),Tn(Ee,"scroll",Ee))}),Jn(_e.scroller,"mousewheel",function(Pn){return ss(Ee,Pn)}),Jn(_e.scroller,"DOMMouseScroll",function(Pn){return ss(Ee,Pn)}),Jn(_e.wrapper,"scroll",function(){return _e.wrapper.scrollTop=_e.wrapper.scrollLeft=0}),_e.dragFunctions={enter:function(Pn){hr(Ee,Pn)||vo(Pn)},over:function(Pn){hr(Ee,Pn)||(_0(Ee,Pn),vo(Pn))},start:function(Pn){return F0(Ee,Pn)},drop:ai(Ee,k0),leave:function(Pn){hr(Ee,Pn)||fy(Ee)}};var Mn=_e.input.getField();Jn(Mn,"keyup",function(Pn){return bm.call(Ee,Pn)}),Jn(Mn,"keydown",ai(Ee,Cm)),Jn(Mn,"keypress",ai(Ee,cg)),Jn(Mn,"focus",function(Pn){return Hi(Ee,Pn)}),Jn(Mn,"blur",function(Pn){return mo(Ee,Pn)})}var V0=[];vl.defineInitHook=function(Ee){return V0.push(Ee)};function Nh(Ee,_e,it,nt){var ct=Ee.doc,jt;it==null&&(it="add"),it=="smart"&&(ct.mode.indent?jt=$i(Ee,_e).state:it="prev");var hn=Ee.options.tabSize,Mn=rn(ct,_e),Pn=Et(Mn.text,null,hn);Mn.stateAfter&&(Mn.stateAfter=null);var Xn=Mn.text.match(/^\s*/)[0],Gr;if(!nt&&!/\S/.test(Mn.text))Gr=0,it="not";else if(it=="smart"&&(Gr=ct.mode.indent(jt,Mn.text.slice(Xn.length),Mn.text),Gr==Ut||Gr>150)){if(!nt)return;it="prev"}it=="prev"?_e>ct.first?Gr=Et(rn(ct,_e-1).text,null,hn):Gr=0:it=="add"?Gr=Pn+Ee.options.indentUnit:it=="subtract"?Gr=Pn-Ee.options.indentUnit:typeof it=="number"&&(Gr=Pn+it),Gr=Math.max(0,Gr);var ar="",Si=0;if(Ee.options.indentWithTabs)for(var vi=Math.floor(Gr/hn);vi;--vi)Si+=hn,ar+=" ";if(Sihn,Pn=ro(_e),Xn=null;if(Mn&&nt.ranges.length>1)if(_d&&_d.text.join(` `)==_e){if(nt.ranges.length%_d.text.length==0){Xn=[];for(var Gr=0;Gr<_d.text.length;Gr++)Xn.push(jt.splitLines(_d.text[Gr]))}}else Pn.length==nt.ranges.length&&Ee.options.pasteLinesPerSelection&&(Xn=Gn(Pn,function(Ia){return[Ia]}));for(var ar=Ee.curOp.updateInput,Si=nt.ranges.length-1;Si>=0;Si--){var vi=nt.ranges[Si],wo=vi.from(),No=vi.to();vi.empty()&&(it&&it>0?wo=Bn(wo.line,wo.ch-it):Ee.state.overwrite&&!Mn?No=Bn(No.line,Math.min(rn(jt,No.line).text.length,No.ch+ln(Pn).length)):Mn&&_d&&_d.lineWise&&_d.text.join(` `)==Pn.join(` `)&&(wo=No=Bn(wo.line,0)));var ia={from:wo,to:No,text:Xn?Xn[Si%Xn.length]:Pn,origin:ct||(Mn?"paste":Ee.state.cutIncoming>hn?"cut":"+input")};Hl(Ee.doc,ia),Ro(Ee,"inputRead",Ee,ia)}_e&&!Mn&&l0(Ee,_e),Ka(Ee),Ee.curOp.updateInput<2&&(Ee.curOp.updateInput=ar),Ee.curOp.typing=!0,Ee.state.pasteIncoming=Ee.state.cutIncoming=-1}function Rp(Ee,_e){var it=Ee.clipboardData&&Ee.clipboardData.getData("Text");if(it)return Ee.preventDefault(),!_e.isReadOnly()&&!_e.options.disableInput&&Lr(_e,function(){return my(_e,it,0,null,"paste")}),!0}function l0(Ee,_e){if(!(!Ee.options.electricChars||!Ee.options.smartIndent))for(var it=Ee.doc.sel,nt=it.ranges.length-1;nt>=0;nt--){var ct=it.ranges[nt];if(!(ct.head.ch>100||nt&&it.ranges[nt-1].head.line==ct.head.line)){var jt=Ee.getModeAt(ct.head),hn=!1;if(jt.electricChars){for(var Mn=0;Mn-1){hn=Nh(Ee,ct.head.line,"smart");break}}else jt.electricInput&&jt.electricInput.test(rn(Ee.doc,ct.head.line).text.slice(0,ct.head.ch))&&(hn=Nh(Ee,ct.head.line,"smart"));hn&&Ro(Ee,"electricInput",Ee,ct.head.line)}}}function v1(Ee){for(var _e=[],it=[],nt=0;ntjt&&(Nh(this,Mn.head.line,nt,!0),jt=Mn.head.line,hn==this.doc.sel.primIndex&&Ka(this));else{var Pn=Mn.from(),Xn=Mn.to(),Gr=Math.max(jt,Pn.line);jt=Math.min(this.lastLine(),Xn.line-(Xn.ch?0:1))+1;for(var ar=Gr;ar0&&ho(this.doc,hn,new sa(Pn,Si[hn].to()),Ft)}}}),getTokenAt:function(nt,ct){return Vi(this,nt,ct)},getLineTokens:function(nt,ct){return Vi(this,Bn(nt),ct,!0)},getTokenTypeAt:function(nt){nt=ur(this.doc,nt);var ct=ui(this,rn(this.doc,nt.line)),jt=0,hn=(ct.length-1)/2,Mn=nt.ch,Pn;if(Mn==0)Pn=ct[2];else for(;;){var Xn=jt+hn>>1;if((Xn?ct[Xn*2-1]:0)>=Mn)hn=Xn;else if(ct[Xn*2+1]Pn&&(nt=Pn,hn=!0),Mn=rn(this.doc,nt)}else Mn=nt;return xu(this,Mn,{top:0,left:0},ct||"page",jt||hn).top+(hn?this.doc.height-Ts(Mn):0)},defaultTextHeight:function(){return Xd(this.display)},defaultCharWidth:function(){return Qd(this.display)},getViewport:function(){return{from:this.display.viewFrom,to:this.display.viewTo}},addWidget:function(nt,ct,jt,hn,Mn){var Pn=this.display;nt=Eu(this,ur(this.doc,nt));var Xn=nt.bottom,Gr=nt.left;if(ct.style.position="absolute",ct.setAttribute("cm-ignore-events","true"),this.display.input.setUneditable(ct),Pn.sizer.appendChild(ct),hn=="over")Xn=nt.top;else if(hn=="above"||hn=="near"){var ar=Math.max(Pn.wrapper.clientHeight,this.doc.height),Si=Math.max(Pn.sizer.clientWidth,Pn.lineSpace.clientWidth);(hn=="above"||nt.bottom+ct.offsetHeight>ar)&&nt.top>ct.offsetHeight?Xn=nt.top-ct.offsetHeight:nt.bottom+ct.offsetHeight<=ar&&(Xn=nt.bottom),Gr+ct.offsetWidth>Si&&(Gr=Si-ct.offsetWidth)}ct.style.top=Xn+"px",ct.style.left=ct.style.right="",Mn=="right"?(Gr=Pn.sizer.clientWidth-ct.offsetWidth,ct.style.right="0px"):(Mn=="left"?Gr=0:Mn=="middle"&&(Gr=(Pn.sizer.clientWidth-ct.offsetWidth)/2),ct.style.left=Gr+"px"),jt&&za(this,{left:Gr,top:Xn,right:Gr+ct.offsetWidth,bottom:Xn+ct.offsetHeight})},triggerOnKeyDown:ni(Cm),triggerOnKeyPress:ni(cg),triggerOnKeyUp:bm,triggerOnMouseDown:ni(hg),execCommand:function(nt){if(hh.hasOwnProperty(nt))return hh[nt].call(null,this)},triggerElectric:ni(function(nt){l0(this,nt)}),findPosH:function(nt,ct,jt,hn){var Mn=1;ct<0&&(Mn=-1,ct=-ct);for(var Pn=ur(this.doc,nt),Xn=0;Xn0&&Gr(jt.charAt(hn-1));)--hn;for(;Mn.5||this.options.lineWrapping)&&gs(this),Tn(this,"refresh",this)}),swapDoc:ni(function(nt){var ct=this.doc;return ct.cm=null,this.state.selectingText&&this.state.selectingText(),br(this,nt),Fu(this),this.display.input.reset(),Ba(this,nt.scrollLeft,nt.scrollTop),this.curOp.forceScroll=!0,Ro(this,"swapDoc",this,ct),ct}),phrase:function(nt){var ct=this.options.phrases;return ct&&Object.prototype.hasOwnProperty.call(ct,nt)?ct[nt]:nt},getInputField:function(){return this.display.input.getField()},getWrapperElement:function(){return this.display.wrapper},getScrollerElement:function(){return this.display.scroller},getGutterElement:function(){return this.display.gutters}},ti(Ee),Ee.registerHelper=function(nt,ct,jt){it.hasOwnProperty(nt)||(it[nt]=Ee[nt]={_global:[]}),it[nt][ct]=jt},Ee.registerGlobalHelper=function(nt,ct,jt,hn){Ee.registerHelper(nt,ct,hn),it[nt]._global.push({pred:jt,val:hn})}}function Lm(Ee,_e,it,nt,ct){var jt=_e,hn=it,Mn=rn(Ee,_e.line),Pn=ct&&Ee.direction=="rtl"?-it:it;function Xn(){var fs=_e.line+Pn;return fs=Ee.first+Ee.size?!1:(_e=new Bn(fs,_e.ch,_e.sticky),Mn=rn(Ee,fs))}function Gr(fs){var Ja;if(nt=="codepoint"){var Ss=Mn.text.charCodeAt(_e.ch+(nt>0?0:-1));isNaN(Ss)?Ja=null:Ja=new Bn(_e.line,Math.max(0,Math.min(Mn.text.length,_e.ch+it*(Ss>=55296&&Ss<56320?2:1))),-it)}else ct?Ja=Zu(Ee.cm,Mn,_e,it):Ja=Bc(Mn,_e,it);if(Ja==null)if(!fs&&Xn())_e=Jl(ct,Ee.cm,Mn,_e.line,Pn);else return!1;else _e=Ja;return!0}if(nt=="char"||nt=="codepoint")Gr();else if(nt=="column")Gr(!0);else if(nt=="word"||nt=="group")for(var ar=null,Si=nt=="group",vi=Ee.cm&&Ee.cm.getHelper(_e,"wordChars"),wo=!0;!(it<0&&!Gr(!wo));wo=!1){var No=Mn.text.charAt(_e.ch)||` `,ia=Ot(No,vi)?"w":Si&&No==` `?"n":!Si||/\s/.test(No)?null:"p";if(Si&&!wo&&!ia&&(ia="s"),ar&&ar!=ia){it<0&&(it=1,Gr(),_e.sticky="after");break}if(ia&&(ar=ia),it>0&&!Gr(!wo))break}var Ia=Cl(Ee,_e,jt,hn,!0);return Nn(jt,Ia)&&(Ia.hitSide=!0),Ia}function Z0(Ee,_e,it,nt){var ct=Ee.doc,jt=_e.left,hn;if(nt=="page"){var Mn=Math.min(Ee.display.wrapper.clientHeight,window.innerHeight||document.documentElement.clientHeight),Pn=Math.max(Mn-.5*Xd(Ee.display),3);hn=(it>0?_e.bottom:_e.top)+it*Pn}else nt=="line"&&(hn=it>0?_e.bottom+3:_e.top-3);for(var Xn;Xn=ig(Ee,jt,hn),!!Xn.outside;){if(it<0?hn<=0:hn>=ct.height){Xn.hitSide=!0;break}hn+=it*5}return Xn}var ju=function(Ee){this.cm=Ee,this.lastAnchorNode=this.lastAnchorOffset=this.lastFocusNode=this.lastFocusOffset=null,this.polling=new lt,this.composing=null,this.gracePeriod=!1,this.readDOMTimeout=null};ju.prototype.init=function(Ee){var _e=this,it=this,nt=it.cm,ct=it.div=Ee.lineDiv;m1(ct,nt.options.spellcheck,nt.options.autocorrect,nt.options.autocapitalize);function jt(Mn){for(var Pn=Mn.target;Pn;Pn=Pn.parentNode){if(Pn==ct)return!0;if(/\bCodeMirror-(?:line)?widget\b/.test(Pn.className))break}return!1}Jn(ct,"paste",function(Mn){!jt(Mn)||hr(nt,Mn)||Rp(Mn,nt)||Oe<=11&&setTimeout(ai(nt,function(){return _e.updateFromDOM()}),20)}),Jn(ct,"compositionstart",function(Mn){_e.composing={data:Mn.data,done:!1}}),Jn(ct,"compositionupdate",function(Mn){_e.composing||(_e.composing={data:Mn.data,done:!1})}),Jn(ct,"compositionend",function(Mn){_e.composing&&(Mn.data!=_e.composing.data&&_e.readFromDOMSoon(),_e.composing.done=!0)}),Jn(ct,"touchstart",function(){return it.forceCompositionEnd()}),Jn(ct,"input",function(){_e.composing||_e.readFromDOMSoon()});function hn(Mn){if(!(!jt(Mn)||hr(nt,Mn))){if(nt.somethingSelected())K0({lineWise:!1,text:nt.getSelections()}),Mn.type=="cut"&&nt.replaceSelection("",null,"cut");else if(nt.options.lineWiseCopyCut){var Pn=v1(nt);K0({lineWise:!0,text:Pn.text}),Mn.type=="cut"&&nt.operation(function(){nt.setSelections(Pn.ranges,0,Ft),nt.replaceSelection("",null,"cut")})}else return;if(Mn.clipboardData){Mn.clipboardData.clearData();var Xn=_d.text.join(` `);if(Mn.clipboardData.setData("Text",Xn),Mn.clipboardData.getData("Text")==Xn){Mn.preventDefault();return}}var Gr=y1(),ar=Gr.firstChild;nt.display.lineSpace.insertBefore(Gr,nt.display.lineSpace.firstChild),ar.value=_d.text.join(` `);var Si=document.activeElement;vt(ar),setTimeout(function(){nt.display.lineSpace.removeChild(Gr),Si.focus(),Si==ct&&it.showPrimarySelection()},50)}}Jn(ct,"copy",hn),Jn(ct,"cut",hn)},ju.prototype.screenReaderLabelChanged=function(Ee){Ee?this.div.setAttribute("aria-label",Ee):this.div.removeAttribute("aria-label")},ju.prototype.prepareSelection=function(){var Ee=xr(this.cm,!1);return Ee.focus=document.activeElement==this.div,Ee},ju.prototype.showSelection=function(Ee,_e){!Ee||!this.cm.display.view.length||((Ee.focus||_e)&&this.showPrimarySelection(),this.showMultipleSelections(Ee))},ju.prototype.getSelection=function(){return this.cm.display.wrapper.ownerDocument.getSelection()},ju.prototype.showPrimarySelection=function(){var Ee=this.getSelection(),_e=this.cm,it=_e.doc.sel.primary(),nt=it.from(),ct=it.to();if(_e.display.viewTo==_e.display.viewFrom||nt.line>=_e.display.viewTo||ct.line<_e.display.viewFrom){Ee.removeAllRanges();return}var jt=Mv(_e,Ee.anchorNode,Ee.anchorOffset),hn=Mv(_e,Ee.focusNode,Ee.focusOffset);if(!(jt&&!jt.bad&&hn&&!hn.bad&&An(gr(jt,hn),nt)==0&&An(lr(jt,hn),ct)==0)){var Mn=_e.display.view,Pn=nt.line>=_e.display.viewFrom&&u0(_e,nt)||{node:Mn[0].measure.map[2],offset:0},Xn=ct.line<_e.display.viewTo&&u0(_e,ct);if(!Xn){var Gr=Mn[Mn.length-1].measure,ar=Gr.maps?Gr.maps[Gr.maps.length-1]:Gr.map;Xn={node:ar[ar.length-1],offset:ar[ar.length-2]-ar[ar.length-3]}}if(!Pn||!Xn){Ee.removeAllRanges();return}var Si=Ee.rangeCount&&Ee.getRangeAt(0),vi;try{vi=tt(Pn.node,Pn.offset,Xn.offset,Xn.node)}catch(wo){}vi&&(!He&&_e.state.focused?(Ee.collapse(Pn.node,Pn.offset),vi.collapsed||(Ee.removeAllRanges(),Ee.addRange(vi))):(Ee.removeAllRanges(),Ee.addRange(vi)),Si&&Ee.anchorNode==null?Ee.addRange(Si):He&&this.startGracePeriod()),this.rememberSelection()}},ju.prototype.startGracePeriod=function(){var Ee=this;clearTimeout(this.gracePeriod),this.gracePeriod=setTimeout(function(){Ee.gracePeriod=!1,Ee.selectionChanged()&&Ee.cm.operation(function(){return Ee.cm.curOp.selectionChanged=!0})},20)},ju.prototype.showMultipleSelections=function(Ee){Ke(this.cm.display.cursorDiv,Ee.cursors),Ke(this.cm.display.selectionDiv,Ee.selection)},ju.prototype.rememberSelection=function(){var Ee=this.getSelection();this.lastAnchorNode=Ee.anchorNode,this.lastAnchorOffset=Ee.anchorOffset,this.lastFocusNode=Ee.focusNode,this.lastFocusOffset=Ee.focusOffset},ju.prototype.selectionInEditor=function(){var Ee=this.getSelection();if(!Ee.rangeCount)return!1;var _e=Ee.getRangeAt(0).commonAncestorContainer;return gt(this.div,_e)},ju.prototype.focus=function(){this.cm.options.readOnly!="nocursor"&&((!this.selectionInEditor()||document.activeElement!=this.div)&&this.showSelection(this.prepareSelection(),!0),this.div.focus())},ju.prototype.blur=function(){this.div.blur()},ju.prototype.getField=function(){return this.div},ju.prototype.supportsTouch=function(){return!0},ju.prototype.receivedFocus=function(){var Ee=this;this.selectionInEditor()?this.pollSelection():Lr(this.cm,function(){return Ee.cm.curOp.selectionChanged=!0});function _e(){Ee.cm.state.focused&&(Ee.pollSelection(),Ee.polling.set(Ee.cm.options.pollInterval,_e))}this.polling.set(this.cm.options.pollInterval,_e)},ju.prototype.selectionChanged=function(){var Ee=this.getSelection();return Ee.anchorNode!=this.lastAnchorNode||Ee.anchorOffset!=this.lastAnchorOffset||Ee.focusNode!=this.lastFocusNode||Ee.focusOffset!=this.lastFocusOffset},ju.prototype.pollSelection=function(){if(!(this.readDOMTimeout!=null||this.gracePeriod||!this.selectionChanged())){var Ee=this.getSelection(),_e=this.cm;if(ie&&Re&&this.cm.display.gutterSpecs.length&&Tm(Ee.anchorNode)){this.cm.triggerOnKeyDown({type:"keydown",keyCode:8,preventDefault:Math.abs}),this.blur(),this.focus();return}if(!this.composing){this.rememberSelection();var it=Mv(_e,Ee.anchorNode,Ee.anchorOffset),nt=Mv(_e,Ee.focusNode,Ee.focusOffset);it&&nt&&Lr(_e,function(){Vo(_e.doc,Dt(it,nt),Ft),(it.bad||nt.bad)&&(_e.curOp.selectionChanged=!0)})}}},ju.prototype.pollContent=function(){this.readDOMTimeout!=null&&(clearTimeout(this.readDOMTimeout),this.readDOMTimeout=null);var Ee=this.cm,_e=Ee.display,it=Ee.doc.sel.primary(),nt=it.from(),ct=it.to();if(nt.ch==0&&nt.line>Ee.firstLine()&&(nt=Bn(nt.line-1,rn(Ee.doc,nt.line-1).length)),ct.ch==rn(Ee.doc,ct.line).text.length&&ct.line_e.viewTo-1)return!1;var jt,hn,Mn;nt.line==_e.viewFrom||(jt=zu(Ee,nt.line))==0?(hn=tn(_e.view[0].line),Mn=_e.view[0].node):(hn=tn(_e.view[jt].line),Mn=_e.view[jt-1].node.nextSibling);var Pn=zu(Ee,ct.line),Xn,Gr;if(Pn==_e.view.length-1?(Xn=_e.viewTo-1,Gr=_e.lineDiv.lastChild):(Xn=tn(_e.view[Pn+1].line)-1,Gr=_e.view[Pn+1].node.previousSibling),!Mn)return!1;for(var ar=Ee.doc.splitLines(Fp(Ee,Mn,Gr,hn,Xn)),Si=un(Ee.doc,Bn(hn,0),Bn(Xn,rn(Ee.doc,Xn).text.length));ar.length>1&&Si.length>1;)if(ln(ar)==ln(Si))ar.pop(),Si.pop(),Xn--;else if(ar[0]==Si[0])ar.shift(),Si.shift(),hn++;else break;for(var vi=0,wo=0,No=ar[0],ia=Si[0],Ia=Math.min(No.length,ia.length);vint.ch&&fs.charCodeAt(fs.length-wo-1)==Ja.charCodeAt(Ja.length-wo-1);)vi--,wo++;ar[ar.length-1]=fs.slice(0,fs.length-wo).replace(/^\u200b+/,""),ar[0]=ar[0].slice(vi).replace(/\u200b+$/,"");var ul=Bn(hn,vi),Ya=Bn(Xn,Si.length?ln(Si).length-wo:0);if(ar.length>1||ar[0]||An(ul,Ya))return xf(Ee.doc,ar,ul,Ya,"+input"),!0},ju.prototype.ensurePolled=function(){this.forceCompositionEnd()},ju.prototype.reset=function(){this.forceCompositionEnd()},ju.prototype.forceCompositionEnd=function(){this.composing&&(clearTimeout(this.readDOMTimeout),this.composing=null,this.updateFromDOM(),this.div.blur(),this.div.focus())},ju.prototype.readFromDOMSoon=function(){var Ee=this;this.readDOMTimeout==null&&(this.readDOMTimeout=setTimeout(function(){if(Ee.readDOMTimeout=null,Ee.composing)if(Ee.composing.done)Ee.composing=null;else return;Ee.updateFromDOM()},80))},ju.prototype.updateFromDOM=function(){var Ee=this;(this.cm.isReadOnly()||!this.pollContent())&&Lr(this.cm,function(){return lu(Ee.cm)})},ju.prototype.setUneditable=function(Ee){Ee.contentEditable="false"},ju.prototype.onKeyPress=function(Ee){Ee.charCode==0||this.composing||(Ee.preventDefault(),this.cm.isReadOnly()||ai(this.cm,my)(this.cm,String.fromCharCode(Ee.charCode==null?Ee.keyCode:Ee.charCode),0))},ju.prototype.readOnlyChanged=function(Ee){this.div.contentEditable=String(Ee!="nocursor")},ju.prototype.onContextMenu=function(){},ju.prototype.resetPosition=function(){},ju.prototype.needsContentAttribute=!0;function u0(Ee,_e){var it=Ll(Ee,_e.line);if(!it||it.hidden)return null;var nt=rn(Ee.doc,_e.line),ct=ic(it,nt,_e.line),jt=Qn(nt,Ee.doc.direction),hn="left";if(jt){var Mn=Jt(jt,_e.ch);hn=Mn%2?"right":"left"}var Pn=yc(ct.map,_e.ch,hn);return Pn.offset=Pn.collapse=="right"?Pn.end:Pn.start,Pn}function Tm(Ee){for(var _e=Ee;_e;_e=_e.parentNode)if(/CodeMirror-gutter-wrapper/.test(_e.className))return!0;return!1}function Dm(Ee,_e){return _e&&(Ee.bad=!0),Ee}function Fp(Ee,_e,it,nt,ct){var jt="",hn=!1,Mn=Ee.doc.lineSeparator(),Pn=!1;function Xn(vi){return function(wo){return wo.id==vi}}function Gr(){hn&&(jt+=Mn,Pn&&(jt+=Mn),hn=Pn=!1)}function ar(vi){vi&&(Gr(),jt+=vi)}function Si(vi){if(vi.nodeType==1){var wo=vi.getAttribute("cm-text");if(wo){ar(wo);return}var No=vi.getAttribute("cm-marker"),ia;if(No){var Ia=Ee.findMarks(Bn(nt,0),Bn(ct+1,0),Xn(+No));Ia.length&&(ia=Ia[0].find(0))&&ar(un(Ee.doc,ia.from,ia.to).join(Mn));return}if(vi.getAttribute("contenteditable")=="false")return;var fs=/^(pre|div|p|li|table|br)$/i.test(vi.nodeName);if(!/^br$/i.test(vi.nodeName)&&vi.textContent.length==0)return;fs&&Gr();for(var Ja=0;Ja=9&&_e.hasSelection&&(_e.hasSelection=null),it.poll()}),Jn(ct,"paste",function(hn){hr(nt,hn)||Rp(hn,nt)||(nt.state.pasteIncoming=+new Date,it.fastPoll())});function jt(hn){if(!hr(nt,hn)){if(nt.somethingSelected())K0({lineWise:!1,text:nt.getSelections()});else if(nt.options.lineWiseCopyCut){var Mn=v1(nt);K0({lineWise:!0,text:Mn.text}),hn.type=="cut"?nt.setSelections(Mn.ranges,null,Ft):(it.prevInput="",ct.value=Mn.text.join(` `),vt(ct))}else return;hn.type=="cut"&&(nt.state.cutIncoming=+new Date)}}Jn(ct,"cut",jt),Jn(ct,"copy",jt),Jn(Ee.scroller,"paste",function(hn){if(!(eh(Ee,hn)||hr(nt,hn))){if(!ct.dispatchEvent){nt.state.pasteIncoming=+new Date,it.focus();return}var Mn=new Event("paste");Mn.clipboardData=hn.clipboardData,ct.dispatchEvent(Mn)}}),Jn(Ee.lineSpace,"selectstart",function(hn){eh(Ee,hn)||mi(hn)}),Jn(ct,"compositionstart",function(){var hn=nt.getCursor("from");it.composing&&it.composing.range.clear(),it.composing={start:hn,range:nt.markText(hn,nt.getCursor("to"),{className:"CodeMirror-composing"})}}),Jn(ct,"compositionend",function(){it.composing&&(it.poll(),it.composing.range.clear(),it.composing=null)})},dh.prototype.createField=function(Ee){this.wrapper=y1(),this.textarea=this.wrapper.firstChild},dh.prototype.screenReaderLabelChanged=function(Ee){Ee?this.textarea.setAttribute("aria-label",Ee):this.textarea.removeAttribute("aria-label")},dh.prototype.prepareSelection=function(){var Ee=this.cm,_e=Ee.display,it=Ee.doc,nt=xr(Ee);if(Ee.options.moveInputWithCursor){var ct=Eu(Ee,it.sel.primary().head,"div"),jt=_e.wrapper.getBoundingClientRect(),hn=_e.lineDiv.getBoundingClientRect();nt.teTop=Math.max(0,Math.min(_e.wrapper.clientHeight-10,ct.top+hn.top-jt.top)),nt.teLeft=Math.max(0,Math.min(_e.wrapper.clientWidth-10,ct.left+hn.left-jt.left))}return nt},dh.prototype.showSelection=function(Ee){var _e=this.cm,it=_e.display;Ke(it.cursorDiv,Ee.cursors),Ke(it.selectionDiv,Ee.selection),Ee.teTop!=null&&(this.wrapper.style.top=Ee.teTop+"px",this.wrapper.style.left=Ee.teLeft+"px")},dh.prototype.reset=function(Ee){if(!(this.contextMenuPending||this.composing)){var _e=this.cm;if(_e.somethingSelected()){this.prevInput="";var it=_e.getSelection();this.textarea.value=it,_e.state.focused&&vt(this.textarea),Ze&&Oe>=9&&(this.hasSelection=it)}else Ee||(this.prevInput=this.textarea.value="",Ze&&Oe>=9&&(this.hasSelection=null))}},dh.prototype.getField=function(){return this.textarea},dh.prototype.supportsTouch=function(){return!1},dh.prototype.focus=function(){if(this.cm.options.readOnly!="nocursor"&&(!ae||st()!=this.textarea))try{this.textarea.focus()}catch(Ee){}},dh.prototype.blur=function(){this.textarea.blur()},dh.prototype.resetPosition=function(){this.wrapper.style.top=this.wrapper.style.left=0},dh.prototype.receivedFocus=function(){this.slowPoll()},dh.prototype.slowPoll=function(){var Ee=this;this.pollingFast||this.polling.set(this.cm.options.pollInterval,function(){Ee.poll(),Ee.cm.state.focused&&Ee.slowPoll()})},dh.prototype.fastPoll=function(){var Ee=!1,_e=this;_e.pollingFast=!0;function it(){var nt=_e.poll();!nt&&!Ee?(Ee=!0,_e.polling.set(60,it)):(_e.pollingFast=!1,_e.slowPoll())}_e.polling.set(20,it)},dh.prototype.poll=function(){var Ee=this,_e=this.cm,it=this.textarea,nt=this.prevInput;if(this.contextMenuPending||!_e.state.focused||Rt(it)&&!nt&&!this.composing||_e.isReadOnly()||_e.options.disableInput||_e.state.keySeq)return!1;var ct=it.value;if(ct==nt&&!_e.somethingSelected())return!1;if(Ze&&Oe>=9&&this.hasSelection===ct||fe&&/[\uf700-\uf7ff]/.test(ct))return _e.display.input.reset(),!1;if(_e.doc.sel==_e.display.selForContextMenu){var jt=ct.charCodeAt(0);if(jt==8203&&!nt&&(nt="\u200B"),jt==8666)return this.reset(),this.cm.execCommand("undo")}for(var hn=0,Mn=Math.min(nt.length,ct.length);hn1e3||ct.indexOf(` `)>-1?it.value=Ee.prevInput="":Ee.prevInput=ct,Ee.composing&&(Ee.composing.range.clear(),Ee.composing.range=_e.markText(Ee.composing.start,_e.getCursor("to"),{className:"CodeMirror-composing"}))}),!0},dh.prototype.ensurePolled=function(){this.pollingFast&&this.poll()&&(this.pollingFast=!1)},dh.prototype.onKeyPress=function(){Ze&&Oe>=9&&(this.hasSelection=null),this.fastPoll()},dh.prototype.onContextMenu=function(Ee){var _e=this,it=_e.cm,nt=it.display,ct=_e.textarea;_e.contextMenuPending&&_e.contextMenuPending();var jt=hc(it,Ee),hn=nt.scroller.scrollTop;if(!jt||Ie)return;var Mn=it.options.resetSelectionOnContextMenu;Mn&&it.doc.sel.contains(jt)==-1&&ai(it,Vo)(it.doc,Dt(jt),Ft);var Pn=ct.style.cssText,Xn=_e.wrapper.style.cssText,Gr=_e.wrapper.offsetParent.getBoundingClientRect();_e.wrapper.style.cssText="position: static",ct.style.cssText=`position: absolute; width: 30px; height: 30px; top: `+(Ee.clientY-Gr.top-5)+"px; left: "+(Ee.clientX-Gr.left-5)+`px; z-index: 1000; background: `+(Ze?"rgba(255, 255, 255, .05)":"transparent")+`; outline: none; border-width: 0; outline: none; overflow: hidden; opacity: .05; filter: alpha(opacity=5);`;var ar;we&&(ar=window.scrollY),nt.input.focus(),we&&window.scrollTo(null,ar),nt.input.reset(),it.somethingSelected()||(ct.value=_e.prevInput=" "),_e.contextMenuPending=vi,nt.selForContextMenu=it.doc.sel,clearTimeout(nt.detectingSelectAll);function Si(){if(ct.selectionStart!=null){var No=it.somethingSelected(),ia="\u200B"+(No?ct.value:"");ct.value="\u21DA",ct.value=ia,_e.prevInput=No?"":"\u200B",ct.selectionStart=1,ct.selectionEnd=ia.length,nt.selForContextMenu=it.doc.sel}}function vi(){if(_e.contextMenuPending==vi&&(_e.contextMenuPending=!1,_e.wrapper.style.cssText=Xn,ct.style.cssText=Pn,Ze&&Oe<9&&nt.scrollbars.setScrollTop(nt.scroller.scrollTop=hn),ct.selectionStart!=null)){(!Ze||Ze&&Oe<9)&&Si();var No=0,ia=function(){nt.selForContextMenu==it.doc.sel&&ct.selectionStart==0&&ct.selectionEnd>0&&_e.prevInput=="\u200B"?ai(it,Fs)(it):No++<10?nt.detectingSelectAll=setTimeout(ia,500):(nt.selForContextMenu=null,nt.input.reset())};nt.detectingSelectAll=setTimeout(ia,200)}}if(Ze&&Oe>=9&&Si(),pe){vo(Ee);var wo=function(){Rr(window,"mouseup",wo),setTimeout(vi,20)};Jn(window,"mouseup",wo)}else setTimeout(vi,50)},dh.prototype.readOnlyChanged=function(Ee){Ee||this.reset(),this.textarea.disabled=Ee=="nocursor",this.textarea.readOnly=!!Ee},dh.prototype.setUneditable=function(){},dh.prototype.needsContentAttribute=!1;function cA(Ee,_e){if(_e=_e?bt(_e):{},_e.value=Ee.value,!_e.tabindex&&Ee.tabIndex&&(_e.tabindex=Ee.tabIndex),!_e.placeholder&&Ee.placeholder&&(_e.placeholder=Ee.placeholder),_e.autofocus==null){var it=st();_e.autofocus=it==Ee||Ee.getAttribute("autofocus")!=null&&it==document.body}function nt(){Ee.value=Mn.getValue()}var ct;if(Ee.form&&(Jn(Ee.form,"submit",nt),!_e.leaveSubmitMethodAlone)){var jt=Ee.form;ct=jt.submit;try{var hn=jt.submit=function(){nt(),jt.submit=ct,jt.submit(),jt.submit=hn}}catch(Pn){}}_e.finishInit=function(Pn){Pn.save=nt,Pn.getTextArea=function(){return Ee},Pn.toTextArea=function(){Pn.toTextArea=isNaN,nt(),Ee.parentNode.removeChild(Pn.getWrapperElement()),Ee.style.display="",Ee.form&&(Rr(Ee.form,"submit",nt),!_e.leaveSubmitMethodAlone&&typeof Ee.form.submit=="function"&&(Ee.form.submit=ct))}},Ee.style.display="none";var Mn=vl(function(Pn){return Ee.parentNode.insertBefore(Pn,Ee.nextSibling)},_e);return Mn}function Im(Ee){Ee.off=Rr,Ee.on=Jn,Ee.wheelEventPixels=Wa,Ee.Doc=rh,Ee.splitLines=ro,Ee.countColumn=Et,Ee.findColumn=Dn,Ee.isWordChar=Bt,Ee.Pass=Ut,Ee.signal=Tn,Ee.Line=As,Ee.changeEnd=_t,Ee.scrollbarModel=Rl,Ee.Pos=Bn,Ee.cmpPos=An,Ee.modes=pi,Ee.mimeModes=ii,Ee.resolveMode=Kt,Ee.getMode=Le,Ee.modeExtensions=We,Ee.extendMode=De,Ee.copyState=qe,Ee.startState=Mt,Ee.innerMode=dt,Ee.commands=hh,Ee.keyMap=id,Ee.keyName=W0,Ee.isModifierKey=Hf,Ee.lookupKey=od,Ee.normalizeKeyMap=xd,Ee.StringStream=wt,Ee.SharedTextMarker=$d,Ee.TextMarker=Mr,Ee.LineWidget=Ec,Ee.e_preventDefault=mi,Ee.e_stopPropagation=di,Ee.e_stop=vo,Ee.addClass=St,Ee.contains=gt,Ee.rmClass=Ne,Ee.keyNames=Gf}Fd(vl),kp(vl);var c0="iter insert remove copy getEditor constructor".split(" ");for(var Om in rh.prototype)rh.prototype.hasOwnProperty(Om)&&Nt(c0,Om)<0&&(vl.prototype[Om]=function(Ee){return function(){return Ee.apply(this.doc,arguments)}}(rh.prototype[Om]));return ti(rh),vl.inputStyles={textarea:dh,contenteditable:ju},vl.defineMode=function(Ee){!vl.defaults.mode&&Ee!="null"&&(vl.defaults.mode=Ee),zi.apply(this,arguments)},vl.defineMIME=Jr,vl.defineMode("null",function(){return{token:function(Ee){return Ee.skipToEnd()}}}),vl.defineMIME("text/plain","null"),vl.defineExtension=function(Ee,_e){vl.prototype[Ee]=_e},vl.defineDocExtension=function(Ee,_e){rh.prototype[Ee]=_e},vl.fromTextArea=cA,Im(vl),vl.version="5.58.2",vl})},25419:function(sn,an,Be){(function(He){He(Be(89780),Be(15525),Be(98101))})(function(He){"use strict";He.defineMode("markdown",function(et,Ge){var ke=He.getMode(et,"text/html"),Ze=ke.name=="null";function Oe(Et){if(He.findModeByName){var lt=He.findModeByName(Et);lt&&(Et=lt.mime||lt.mimes[0])}var Nt=He.getMode(et,Et);return Nt.name=="null"?null:Nt}Ge.highlightFormatting===void 0&&(Ge.highlightFormatting=!1),Ge.maxBlockquoteDepth===void 0&&(Ge.maxBlockquoteDepth=0),Ge.taskLists===void 0&&(Ge.taskLists=!1),Ge.strikethrough===void 0&&(Ge.strikethrough=!1),Ge.emoji===void 0&&(Ge.emoji=!1),Ge.fencedCodeBlockHighlighting===void 0&&(Ge.fencedCodeBlockHighlighting=!0),Ge.fencedCodeBlockDefaultMode===void 0&&(Ge.fencedCodeBlockDefaultMode="text/plain"),Ge.xml===void 0&&(Ge.xml=!0),Ge.tokenTypeOverrides===void 0&&(Ge.tokenTypeOverrides={});var we={header:"header",code:"comment",quote:"quote",list1:"variable-2",list2:"variable-3",list3:"keyword",hr:"hr",image:"image",imageAltText:"image-alt-text",imageMarker:"image-marker",formatting:"formatting",linkInline:"link",linkEmail:"link",linkText:"link",linkHref:"string",em:"em",strong:"strong",strikethrough:"strikethrough",emoji:"builtin"};for(var Te in we)we.hasOwnProperty(Te)&&Ge.tokenTypeOverrides[Te]&&(we[Te]=Ge.tokenTypeOverrides[Te]);var Re=/^([*\-_])(?:\s*\1){2,}\s*$/,Ie=/^(?:[*\-+]|^[0-9]+([.)]))\s+/,be=/^\[(x| )\](?=\s)/i,Pe=Ge.allowAtxHeaderWithoutSpace?/^(#+)/:/^(#+)(?: |$)/,je=/^ {0,3}(?:\={1,}|-{2,})\s*$/,ye=/^[^#!\[\]*_\\<>` "'(~:]+/,ie=/^(~~~+|```+)[ \t]*([\w\/+#-]*)[^\n`]*$/,ae=/^\s*\[[^\]]+?\]:.*$/,fe=/[!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~\xA1\xA7\xAB\xB6\xB7\xBB\xBF\u037E\u0387\u055A-\u055F\u0589\u058A\u05BE\u05C0\u05C3\u05C6\u05F3\u05F4\u0609\u060A\u060C\u060D\u061B\u061E\u061F\u066A-\u066D\u06D4\u0700-\u070D\u07F7-\u07F9\u0830-\u083E\u085E\u0964\u0965\u0970\u0AF0\u0DF4\u0E4F\u0E5A\u0E5B\u0F04-\u0F12\u0F14\u0F3A-\u0F3D\u0F85\u0FD0-\u0FD4\u0FD9\u0FDA\u104A-\u104F\u10FB\u1360-\u1368\u1400\u166D\u166E\u169B\u169C\u16EB-\u16ED\u1735\u1736\u17D4-\u17D6\u17D8-\u17DA\u1800-\u180A\u1944\u1945\u1A1E\u1A1F\u1AA0-\u1AA6\u1AA8-\u1AAD\u1B5A-\u1B60\u1BFC-\u1BFF\u1C3B-\u1C3F\u1C7E\u1C7F\u1CC0-\u1CC7\u1CD3\u2010-\u2027\u2030-\u2043\u2045-\u2051\u2053-\u205E\u207D\u207E\u208D\u208E\u2308-\u230B\u2329\u232A\u2768-\u2775\u27C5\u27C6\u27E6-\u27EF\u2983-\u2998\u29D8-\u29DB\u29FC\u29FD\u2CF9-\u2CFC\u2CFE\u2CFF\u2D70\u2E00-\u2E2E\u2E30-\u2E42\u3001-\u3003\u3008-\u3011\u3014-\u301F\u3030\u303D\u30A0\u30FB\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA874-\uA877\uA8CE\uA8CF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA95F\uA9C1-\uA9CD\uA9DE\uA9DF\uAA5C-\uAA5F\uAADE\uAADF\uAAF0\uAAF1\uABEB\uFD3E\uFD3F\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE61\uFE63\uFE68\uFE6A\uFE6B\uFF01-\uFF03\uFF05-\uFF0A\uFF0C-\uFF0F\uFF1A\uFF1B\uFF1F\uFF20\uFF3B-\uFF3D\uFF3F\uFF5B\uFF5D\uFF5F-\uFF65]|\uD800[\uDD00-\uDD02\uDF9F\uDFD0]|\uD801\uDD6F|\uD802[\uDC57\uDD1F\uDD3F\uDE50-\uDE58\uDE7F\uDEF0-\uDEF6\uDF39-\uDF3F\uDF99-\uDF9C]|\uD804[\uDC47-\uDC4D\uDCBB\uDCBC\uDCBE-\uDCC1\uDD40-\uDD43\uDD74\uDD75\uDDC5-\uDDC9\uDDCD\uDDDB\uDDDD-\uDDDF\uDE38-\uDE3D\uDEA9]|\uD805[\uDCC6\uDDC1-\uDDD7\uDE41-\uDE43\uDF3C-\uDF3E]|\uD809[\uDC70-\uDC74]|\uD81A[\uDE6E\uDE6F\uDEF5\uDF37-\uDF3B\uDF44]|\uD82F\uDC9F|\uD836[\uDE87-\uDE8B]/,de=" ";function ve(Et,lt,Nt){return lt.f=lt.inline=Nt,Nt(Et,lt)}function xe(Et,lt,Nt){return lt.f=lt.block=Nt,Nt(Et,lt)}function he(Et){return!Et||!/\S/.test(Et.string)}function pe(Et){if(Et.linkTitle=!1,Et.linkHref=!1,Et.linkText=!1,Et.em=!1,Et.strong=!1,Et.strikethrough=!1,Et.quote=0,Et.indentedCode=!1,Et.f==Ne){var lt=Ze;if(!lt){var Nt=He.innerMode(ke,Et.htmlState);lt=Nt.mode.name=="xml"&&Nt.state.tagStart===null&&!Nt.state.context&&Nt.state.tokenize.isInText}lt&&(Et.f=Je,Et.block=Se,Et.htmlState=null)}return Et.trailingSpace=0,Et.trailingSpaceNewLine=!1,Et.prevLine=Et.thisLine,Et.thisLine={stream:null},null}function Se(Et,lt){var Nt=Et.column()===lt.indentation,Zt=he(lt.prevLine.stream),Ut=lt.indentedCode,Ft=lt.prevLine.hr,Yt=lt.list!==!1,dn=(lt.listStack[lt.listStack.length-1]||0)+3;lt.indentedCode=!1;var Dn=lt.indentation;if(lt.indentationDiff===null&&(lt.indentationDiff=lt.indentation,Yt)){for(lt.list=null;Dn=4&&(Ut||lt.prevLine.fencedCodeEnd||lt.prevLine.header||Zt))return Et.skipToEnd(),lt.indentedCode=!0,we.code;if(Et.eatSpace())return null;if(Nt&<.indentation<=dn&&(ln=Et.match(Pe))&&ln[1].length<=6)return lt.quote=0,lt.header=ln[1].length,lt.thisLine.header=!0,Ge.highlightFormatting&&(lt.formatting="header"),lt.f=lt.inline,Ke(lt);if(lt.indentation<=dn&&Et.eat(">"))return lt.quote=Nt?1:lt.quote+1,Ge.highlightFormatting&&(lt.formatting="quote"),Et.eatSpace(),Ke(lt);if(!Zn&&!lt.setext&&Nt&<.indentation<=dn&&(ln=Et.match(Ie))){var Gn=ln[1]?"ol":"ul";return lt.indentation=Dn+Et.current().length,lt.list=!0,lt.quote=0,lt.listStack.push(lt.indentation),lt.em=!1,lt.strong=!1,lt.code=!1,lt.strikethrough=!1,Ge.taskLists&&Et.match(be,!1)&&(lt.taskList=!0),lt.f=lt.inline,Ge.highlightFormatting&&(lt.formatting=["list","list-"+Gn]),Ke(lt)}else{if(Nt&<.indentation<=dn&&(ln=Et.match(ie,!0)))return lt.quote=0,lt.fencedEndRE=new RegExp(ln[1]+"+ *$"),lt.localMode=Ge.fencedCodeBlockHighlighting&&Oe(ln[2]||Ge.fencedCodeBlockDefaultMode),lt.localMode&&(lt.localState=He.startState(lt.localMode)),lt.f=lt.block=ze,Ge.highlightFormatting&&(lt.formatting="code-block"),lt.code=-1,Ke(lt);if(lt.setext||(!Rn||!Yt)&&!lt.quote&<.list===!1&&!lt.code&&!Zn&&!ae.test(Et.string)&&(ln=Et.lookAhead(1))&&(ln=ln.match(je)))return lt.setext?(lt.header=lt.setext,lt.setext=0,Et.skipToEnd(),Ge.highlightFormatting&&(lt.formatting="header")):(lt.header=ln[0].charAt(0)=="="?1:2,lt.setext=lt.header),lt.thisLine.header=!0,lt.f=lt.inline,Ke(lt);if(Zn)return Et.skipToEnd(),lt.hr=!0,lt.thisLine.hr=!0,we.hr;if(Et.peek()==="[")return ve(Et,lt,At)}return ve(Et,lt,lt.inline)}function Ne(Et,lt){var Nt=ke.token(Et,lt.htmlState);if(!Ze){var Zt=He.innerMode(ke,lt.htmlState);(Zt.mode.name=="xml"&&Zt.state.tagStart===null&&!Zt.state.context&&Zt.state.tokenize.isInText||lt.md_inside&&Et.current().indexOf(">")>-1)&&(lt.f=Je,lt.block=Se,lt.htmlState=null)}return Nt}function ze(Et,lt){var Nt=lt.listStack[lt.listStack.length-1]||0,Zt=lt.indentation=Et.quote?lt.push(we.formatting+"-"+Et.formatting[Nt]+"-"+Et.quote):lt.push("error"))}if(Et.taskOpen)return lt.push("meta"),lt.length?lt.join(" "):null;if(Et.taskClosed)return lt.push("property"),lt.length?lt.join(" "):null;if(Et.linkHref?lt.push(we.linkHref,"url"):(Et.strong&<.push(we.strong),Et.em&<.push(we.em),Et.strikethrough&<.push(we.strikethrough),Et.emoji&<.push(we.emoji),Et.linkText&<.push(we.linkText),Et.code&<.push(we.code),Et.image&<.push(we.image),Et.imageAltText&<.push(we.imageAltText,"link"),Et.imageMarker&<.push(we.imageMarker)),Et.header&<.push(we.header,we.header+"-"+Et.header),Et.quote&&(lt.push(we.quote),!Ge.maxBlockquoteDepth||Ge.maxBlockquoteDepth>=Et.quote?lt.push(we.quote+"-"+Et.quote):lt.push(we.quote+"-"+Ge.maxBlockquoteDepth)),Et.list!==!1){var Zt=(Et.listStack.length-1)%3;Zt?Zt===1?lt.push(we.list2):lt.push(we.list3):lt.push(we.list1)}return Et.trailingSpaceNewLine?lt.push("trailing-space-new-line"):Et.trailingSpace&<.push("trailing-space-"+(Et.trailingSpace%2?"a":"b")),lt.length?lt.join(" "):null}function Ve(Et,lt){if(Et.match(ye,!0))return Ke(lt)}function Je(Et,lt){var Nt=lt.text(Et,lt);if(typeof Nt!="undefined")return Nt;if(lt.list)return lt.list=null,Ke(lt);if(lt.taskList){var Zt=Et.match(be,!0)[1]===" ";return Zt?lt.taskOpen=!0:lt.taskClosed=!0,Ge.highlightFormatting&&(lt.formatting="task"),lt.taskList=!1,Ke(lt)}if(lt.taskOpen=!1,lt.taskClosed=!1,lt.header&&Et.match(/^#+$/,!0))return Ge.highlightFormatting&&(lt.formatting="header"),Ke(lt);var Ut=Et.next();if(lt.linkTitle){lt.linkTitle=!1;var Ft=Ut;Ut==="("&&(Ft=")"),Ft=(Ft+"").replace(/([.?*+^\[\]\\(){}|-])/g,"\\$1");var Yt="^\\s*(?:[^"+Ft+"\\\\]+|\\\\\\\\|\\\\.)"+Ft;if(Et.match(new RegExp(Yt),!0))return we.linkHref}if(Ut==="`"){var dn=lt.formatting;Ge.highlightFormatting&&(lt.formatting="code"),Et.eatWhile("`");var Dn=Et.current().length;if(lt.code==0&&(!lt.quote||Dn==1))return lt.code=Dn,Ke(lt);if(Dn==lt.code){var Rn=Ke(lt);return lt.code=0,Rn}else return lt.formatting=dn,Ke(lt)}else if(lt.code)return Ke(lt);if(Ut==="\\"&&(Et.next(),Ge.highlightFormatting)){var Zn=Ke(lt),ln=we.formatting+"-escape";return Zn?Zn+" "+ln:ln}if(Ut==="!"&&Et.match(/\[[^\]]*\] ?(?:\(|\[)/,!1))return lt.imageMarker=!0,lt.image=!0,Ge.highlightFormatting&&(lt.formatting="image"),Ke(lt);if(Ut==="["&<.imageMarker&&Et.match(/[^\]]*\](\(.*?\)| ?\[.*?\])/,!1))return lt.imageMarker=!1,lt.imageAltText=!0,Ge.highlightFormatting&&(lt.formatting="image"),Ke(lt);if(Ut==="]"&<.imageAltText){Ge.highlightFormatting&&(lt.formatting="image");var Zn=Ke(lt);return lt.imageAltText=!1,lt.image=!1,lt.inline=lt.f=gt,Zn}if(Ut==="["&&!lt.image)return lt.linkText&&Et.match(/^.*?\]/)||(lt.linkText=!0,Ge.highlightFormatting&&(lt.formatting="link")),Ke(lt);if(Ut==="]"&<.linkText){Ge.highlightFormatting&&(lt.formatting="link");var Zn=Ke(lt);return lt.linkText=!1,lt.inline=lt.f=Et.match(/\(.*?\)| ?\[.*?\]/,!1)?gt:Je,Zn}if(Ut==="<"&&Et.match(/^(https?|ftps?):\/\/(?:[^\\>]|\\.)+>/,!1)){lt.f=lt.inline=tt,Ge.highlightFormatting&&(lt.formatting="link");var Zn=Ke(lt);return Zn?Zn+=" ":Zn="",Zn+we.linkInline}if(Ut==="<"&&Et.match(/^[^> \\]+@(?:[^\\>]|\\.)+>/,!1)){lt.f=lt.inline=tt,Ge.highlightFormatting&&(lt.formatting="link");var Zn=Ke(lt);return Zn?Zn+=" ":Zn="",Zn+we.linkEmail}if(Ge.xml&&Ut==="<"&&Et.match(/^(!--|\?|!\[CDATA\[|[a-z][a-z0-9-]*(?:\s+[a-z_:.\-]+(?:\s*=\s*[^>]+)?)*\s*(?:>|$))/i,!1)){var Gn=Et.string.indexOf(">",Et.pos);if(Gn!=-1){var Wn=Et.string.substring(Et.start,Gn);/markdown\s*=\s*('|"){0,1}1('|"){0,1}/.test(Wn)&&(lt.md_inside=!0)}return Et.backUp(1),lt.htmlState=He.startState(ke),xe(Et,lt,Ne)}if(Ge.xml&&Ut==="<"&&Et.match(/^\/\w*?>/))return lt.md_inside=!1,"tag";if(Ut==="*"||Ut==="_"){for(var qt=1,xt=Et.pos==1?" ":Et.string.charAt(Et.pos-2);qt<3&&Et.eat(Ut);)qt++;var ft=Et.peek()||" ",Bt=!/\s/.test(ft)&&(!fe.test(ft)||/\s/.test(xt)||fe.test(xt)),Ot=!/\s/.test(xt)&&(!fe.test(xt)||/\s/.test(ft)||fe.test(ft)),ut=null,It=null;if(qt%2&&(!lt.em&&Bt&&(Ut==="*"||!Ot||fe.test(xt))?ut=!0:lt.em==Ut&&Ot&&(Ut==="*"||!Bt||fe.test(ft))&&(ut=!1)),qt>1&&(!lt.strong&&Bt&&(Ut==="*"||!Ot||fe.test(xt))?It=!0:lt.strong==Ut&&Ot&&(Ut==="*"||!Bt||fe.test(ft))&&(It=!1)),It!=null||ut!=null){Ge.highlightFormatting&&(lt.formatting=ut==null?"strong":It==null?"em":"strong em"),ut===!0&&(lt.em=Ut),It===!0&&(lt.strong=Ut);var Rn=Ke(lt);return ut===!1&&(lt.em=!1),It===!1&&(lt.strong=!1),Rn}}else if(Ut===" "&&(Et.eat("*")||Et.eat("_"))){if(Et.peek()===" ")return Ke(lt);Et.backUp(1)}if(Ge.strikethrough){if(Ut==="~"&&Et.eatWhile(Ut)){if(lt.strikethrough){Ge.highlightFormatting&&(lt.formatting="strikethrough");var Rn=Ke(lt);return lt.strikethrough=!1,Rn}else if(Et.match(/^[^\s]/,!1))return lt.strikethrough=!0,Ge.highlightFormatting&&(lt.formatting="strikethrough"),Ke(lt)}else if(Ut===" "&&Et.match(/^~~/,!0)){if(Et.peek()===" ")return Ke(lt);Et.backUp(2)}}if(Ge.emoji&&Ut===":"&&Et.match(/^(?:[a-z_\d+][a-z_\d+-]*|\-[a-z_\d+][a-z_\d+-]*):/)){lt.emoji=!0,Ge.highlightFormatting&&(lt.formatting="emoji");var nn=Ke(lt);return lt.emoji=!1,nn}return Ut===" "&&(Et.match(/^ +$/,!1)?lt.trailingSpace++:lt.trailingSpace&&(lt.trailingSpaceNewLine=!0)),Ke(lt)}function tt(Et,lt){var Nt=Et.next();if(Nt===">"){lt.f=lt.inline=Je,Ge.highlightFormatting&&(lt.formatting="link");var Zt=Ke(lt);return Zt?Zt+=" ":Zt="",Zt+we.linkInline}return Et.match(/^[^>]+/,!0),we.linkInline}function gt(Et,lt){if(Et.eatSpace())return null;var Nt=Et.next();return Nt==="("||Nt==="["?(lt.f=lt.inline=St(Nt==="("?")":"]"),Ge.highlightFormatting&&(lt.formatting="link-string"),lt.linkHref=!0,Ke(lt)):"error"}var st={")":/^(?:[^\\\(\)]|\\.|\((?:[^\\\(\)]|\\.)*\))*?(?=\))/,"]":/^(?:[^\\\[\]]|\\.|\[(?:[^\\\[\]]|\\.)*\])*?(?=\])/};function St(Et){return function(lt,Nt){var Zt=lt.next();if(Zt===Et){Nt.f=Nt.inline=Je,Ge.highlightFormatting&&(Nt.formatting="link-string");var Ut=Ke(Nt);return Nt.linkHref=!1,Ut}return lt.match(st[Et]),Nt.linkHref=!0,Ke(Nt)}}function At(Et,lt){return Et.match(/^([^\]\\]|\\.)*\]:/,!1)?(lt.f=vt,Et.next(),Ge.highlightFormatting&&(lt.formatting="link"),lt.linkText=!0,Ke(lt)):ve(Et,lt,Je)}function vt(Et,lt){if(Et.match(/^\]:/,!0)){lt.f=lt.inline=Tt,Ge.highlightFormatting&&(lt.formatting="link");var Nt=Ke(lt);return lt.linkText=!1,Nt}return Et.match(/^([^\]\\]|\\.)+/,!0),we.linkText}function Tt(Et,lt){return Et.eatSpace()?null:(Et.match(/^[^\s]+/,!0),Et.peek()===void 0?lt.linkTitle=!0:Et.match(/^(?:\s+(?:"(?:[^"\\]|\\\\|\\.)+"|'(?:[^'\\]|\\\\|\\.)+'|\((?:[^)\\]|\\\\|\\.)+\)))?/,!0),lt.f=lt.inline=Je,we.linkHref+" url")}var bt={startState:function(){return{f:Se,prevLine:{stream:null},thisLine:{stream:null},block:Se,htmlState:null,indentation:0,inline:Je,text:Ve,formatting:!1,linkText:!1,linkHref:!1,linkTitle:!1,code:0,em:!1,strong:!1,header:0,setext:0,hr:!1,taskList:!1,list:!1,listStack:[],quote:0,trailingSpace:0,trailingSpaceNewLine:!1,strikethrough:!1,emoji:!1,fencedEndRE:null}},copyState:function(Et){return{f:Et.f,prevLine:Et.prevLine,thisLine:Et.thisLine,block:Et.block,htmlState:Et.htmlState&&He.copyState(ke,Et.htmlState),indentation:Et.indentation,localMode:Et.localMode,localState:Et.localMode?He.copyState(Et.localMode,Et.localState):null,inline:Et.inline,text:Et.text,formatting:!1,linkText:Et.linkText,linkTitle:Et.linkTitle,linkHref:Et.linkHref,code:Et.code,em:Et.em,strong:Et.strong,strikethrough:Et.strikethrough,emoji:Et.emoji,header:Et.header,setext:Et.setext,hr:Et.hr,taskList:Et.taskList,list:Et.list,listStack:Et.listStack.slice(0),quote:Et.quote,indentedCode:Et.indentedCode,trailingSpace:Et.trailingSpace,trailingSpaceNewLine:Et.trailingSpaceNewLine,md_inside:Et.md_inside,fencedEndRE:Et.fencedEndRE}},token:function(Et,lt){if(lt.formatting=!1,Et!=lt.thisLine.stream){if(lt.header=0,lt.hr=!1,Et.match(/^\s*$/,!0))return pe(lt),null;if(lt.prevLine=lt.thisLine,lt.thisLine={stream:Et},lt.taskList=!1,lt.trailingSpace=0,lt.trailingSpaceNewLine=!1,!lt.localState&&(lt.f=lt.block,lt.f!=Ne)){var Nt=Et.match(/^\s*/,!0)[0].replace(/\t/g,de).length;if(lt.indentation=Nt,lt.indentationDiff=null,Nt>0)return null}}return lt.f(Et,lt)},innerMode:function(Et){return Et.block==Ne?{state:Et.htmlState,mode:ke}:Et.localState?{state:Et.localState,mode:Et.localMode}:{state:Et,mode:bt}},indent:function(Et,lt,Nt){return Et.block==Ne&&ke.indent?ke.indent(Et.htmlState,lt,Nt):Et.localState&&Et.localMode.indent?Et.localMode.indent(Et.localState,lt,Nt):He.Pass},blankLine:pe,getType:Ke,blockCommentStart:"",closeBrackets:"()[]{}''\"\"``",fold:"markdown"};return bt},"xml"),He.defineMIME("text/markdown","markdown"),He.defineMIME("text/x-markdown","markdown")})},98101:function(sn,an,Be){(function(He){He(Be(89780))})(function(He){"use strict";He.modeInfo=[{name:"APL",mime:"text/apl",mode:"apl",ext:["dyalog","apl"]},{name:"PGP",mimes:["application/pgp","application/pgp-encrypted","application/pgp-keys","application/pgp-signature"],mode:"asciiarmor",ext:["asc","pgp","sig"]},{name:"ASN.1",mime:"text/x-ttcn-asn",mode:"asn.1",ext:["asn","asn1"]},{name:"Asterisk",mime:"text/x-asterisk",mode:"asterisk",file:/^extensions\.conf$/i},{name:"Brainfuck",mime:"text/x-brainfuck",mode:"brainfuck",ext:["b","bf"]},{name:"C",mime:"text/x-csrc",mode:"clike",ext:["c","h","ino"]},{name:"C++",mime:"text/x-c++src",mode:"clike",ext:["cpp","c++","cc","cxx","hpp","h++","hh","hxx"],alias:["cpp"]},{name:"Cobol",mime:"text/x-cobol",mode:"cobol",ext:["cob","cpy"]},{name:"C#",mime:"text/x-csharp",mode:"clike",ext:["cs"],alias:["csharp","cs"]},{name:"Clojure",mime:"text/x-clojure",mode:"clojure",ext:["clj","cljc","cljx"]},{name:"ClojureScript",mime:"text/x-clojurescript",mode:"clojure",ext:["cljs"]},{name:"Closure Stylesheets (GSS)",mime:"text/x-gss",mode:"css",ext:["gss"]},{name:"CMake",mime:"text/x-cmake",mode:"cmake",ext:["cmake","cmake.in"],file:/^CMakeLists\.txt$/},{name:"CoffeeScript",mimes:["application/vnd.coffeescript","text/coffeescript","text/x-coffeescript"],mode:"coffeescript",ext:["coffee"],alias:["coffee","coffee-script"]},{name:"Common Lisp",mime:"text/x-common-lisp",mode:"commonlisp",ext:["cl","lisp","el"],alias:["lisp"]},{name:"Cypher",mime:"application/x-cypher-query",mode:"cypher",ext:["cyp","cypher"]},{name:"Cython",mime:"text/x-cython",mode:"python",ext:["pyx","pxd","pxi"]},{name:"Crystal",mime:"text/x-crystal",mode:"crystal",ext:["cr"]},{name:"CSS",mime:"text/css",mode:"css",ext:["css"]},{name:"CQL",mime:"text/x-cassandra",mode:"sql",ext:["cql"]},{name:"D",mime:"text/x-d",mode:"d",ext:["d"]},{name:"Dart",mimes:["application/dart","text/x-dart"],mode:"dart",ext:["dart"]},{name:"diff",mime:"text/x-diff",mode:"diff",ext:["diff","patch"]},{name:"Django",mime:"text/x-django",mode:"django"},{name:"Dockerfile",mime:"text/x-dockerfile",mode:"dockerfile",file:/^Dockerfile$/},{name:"DTD",mime:"application/xml-dtd",mode:"dtd",ext:["dtd"]},{name:"Dylan",mime:"text/x-dylan",mode:"dylan",ext:["dylan","dyl","intr"]},{name:"EBNF",mime:"text/x-ebnf",mode:"ebnf"},{name:"ECL",mime:"text/x-ecl",mode:"ecl",ext:["ecl"]},{name:"edn",mime:"application/edn",mode:"clojure",ext:["edn"]},{name:"Eiffel",mime:"text/x-eiffel",mode:"eiffel",ext:["e"]},{name:"Elm",mime:"text/x-elm",mode:"elm",ext:["elm"]},{name:"Embedded Javascript",mime:"application/x-ejs",mode:"htmlembedded",ext:["ejs"]},{name:"Embedded Ruby",mime:"application/x-erb",mode:"htmlembedded",ext:["erb"]},{name:"Erlang",mime:"text/x-erlang",mode:"erlang",ext:["erl"]},{name:"Esper",mime:"text/x-esper",mode:"sql"},{name:"Factor",mime:"text/x-factor",mode:"factor",ext:["factor"]},{name:"FCL",mime:"text/x-fcl",mode:"fcl"},{name:"Forth",mime:"text/x-forth",mode:"forth",ext:["forth","fth","4th"]},{name:"Fortran",mime:"text/x-fortran",mode:"fortran",ext:["f","for","f77","f90","f95"]},{name:"F#",mime:"text/x-fsharp",mode:"mllike",ext:["fs"],alias:["fsharp"]},{name:"Gas",mime:"text/x-gas",mode:"gas",ext:["s"]},{name:"Gherkin",mime:"text/x-feature",mode:"gherkin",ext:["feature"]},{name:"GitHub Flavored Markdown",mime:"text/x-gfm",mode:"gfm",file:/^(readme|contributing|history)\.md$/i},{name:"Go",mime:"text/x-go",mode:"go",ext:["go"]},{name:"Groovy",mime:"text/x-groovy",mode:"groovy",ext:["groovy","gradle"],file:/^Jenkinsfile$/},{name:"HAML",mime:"text/x-haml",mode:"haml",ext:["haml"]},{name:"Haskell",mime:"text/x-haskell",mode:"haskell",ext:["hs"]},{name:"Haskell (Literate)",mime:"text/x-literate-haskell",mode:"haskell-literate",ext:["lhs"]},{name:"Haxe",mime:"text/x-haxe",mode:"haxe",ext:["hx"]},{name:"HXML",mime:"text/x-hxml",mode:"haxe",ext:["hxml"]},{name:"ASP.NET",mime:"application/x-aspx",mode:"htmlembedded",ext:["aspx"],alias:["asp","aspx"]},{name:"HTML",mime:"text/html",mode:"htmlmixed",ext:["html","htm","handlebars","hbs"],alias:["xhtml"]},{name:"HTTP",mime:"message/http",mode:"http"},{name:"IDL",mime:"text/x-idl",mode:"idl",ext:["pro"]},{name:"Pug",mime:"text/x-pug",mode:"pug",ext:["jade","pug"],alias:["jade"]},{name:"Java",mime:"text/x-java",mode:"clike",ext:["java"]},{name:"Java Server Pages",mime:"application/x-jsp",mode:"htmlembedded",ext:["jsp"],alias:["jsp"]},{name:"JavaScript",mimes:["text/javascript","text/ecmascript","application/javascript","application/x-javascript","application/ecmascript"],mode:"javascript",ext:["js"],alias:["ecmascript","js","node"]},{name:"JSON",mimes:["application/json","application/x-json"],mode:"javascript",ext:["json","map"],alias:["json5"]},{name:"JSON-LD",mime:"application/ld+json",mode:"javascript",ext:["jsonld"],alias:["jsonld"]},{name:"JSX",mime:"text/jsx",mode:"jsx",ext:["jsx"]},{name:"Jinja2",mime:"text/jinja2",mode:"jinja2",ext:["j2","jinja","jinja2"]},{name:"Julia",mime:"text/x-julia",mode:"julia",ext:["jl"]},{name:"Kotlin",mime:"text/x-kotlin",mode:"clike",ext:["kt"]},{name:"LESS",mime:"text/x-less",mode:"css",ext:["less"]},{name:"LiveScript",mime:"text/x-livescript",mode:"livescript",ext:["ls"],alias:["ls"]},{name:"Lua",mime:"text/x-lua",mode:"lua",ext:["lua"]},{name:"Markdown",mime:"text/x-markdown",mode:"markdown",ext:["markdown","md","mkd"]},{name:"mIRC",mime:"text/mirc",mode:"mirc"},{name:"MariaDB SQL",mime:"text/x-mariadb",mode:"sql"},{name:"Mathematica",mime:"text/x-mathematica",mode:"mathematica",ext:["m","nb","wl","wls"]},{name:"Modelica",mime:"text/x-modelica",mode:"modelica",ext:["mo"]},{name:"MUMPS",mime:"text/x-mumps",mode:"mumps",ext:["mps"]},{name:"MS SQL",mime:"text/x-mssql",mode:"sql"},{name:"mbox",mime:"application/mbox",mode:"mbox",ext:["mbox"]},{name:"MySQL",mime:"text/x-mysql",mode:"sql"},{name:"Nginx",mime:"text/x-nginx-conf",mode:"nginx",file:/nginx.*\.conf$/i},{name:"NSIS",mime:"text/x-nsis",mode:"nsis",ext:["nsh","nsi"]},{name:"NTriples",mimes:["application/n-triples","application/n-quads","text/n-triples"],mode:"ntriples",ext:["nt","nq"]},{name:"Objective-C",mime:"text/x-objectivec",mode:"clike",ext:["m"],alias:["objective-c","objc"]},{name:"Objective-C++",mime:"text/x-objectivec++",mode:"clike",ext:["mm"],alias:["objective-c++","objc++"]},{name:"OCaml",mime:"text/x-ocaml",mode:"mllike",ext:["ml","mli","mll","mly"]},{name:"Octave",mime:"text/x-octave",mode:"octave",ext:["m"]},{name:"Oz",mime:"text/x-oz",mode:"oz",ext:["oz"]},{name:"Pascal",mime:"text/x-pascal",mode:"pascal",ext:["p","pas"]},{name:"PEG.js",mime:"null",mode:"pegjs",ext:["jsonld"]},{name:"Perl",mime:"text/x-perl",mode:"perl",ext:["pl","pm"]},{name:"PHP",mimes:["text/x-php","application/x-httpd-php","application/x-httpd-php-open"],mode:"php",ext:["php","php3","php4","php5","php7","phtml"]},{name:"Pig",mime:"text/x-pig",mode:"pig",ext:["pig"]},{name:"Plain Text",mime:"text/plain",mode:"null",ext:["txt","text","conf","def","list","log"]},{name:"PLSQL",mime:"text/x-plsql",mode:"sql",ext:["pls"]},{name:"PostgreSQL",mime:"text/x-pgsql",mode:"sql"},{name:"PowerShell",mime:"application/x-powershell",mode:"powershell",ext:["ps1","psd1","psm1"]},{name:"Properties files",mime:"text/x-properties",mode:"properties",ext:["properties","ini","in"],alias:["ini","properties"]},{name:"ProtoBuf",mime:"text/x-protobuf",mode:"protobuf",ext:["proto"]},{name:"Python",mime:"text/x-python",mode:"python",ext:["BUILD","bzl","py","pyw"],file:/^(BUCK|BUILD)$/},{name:"Puppet",mime:"text/x-puppet",mode:"puppet",ext:["pp"]},{name:"Q",mime:"text/x-q",mode:"q",ext:["q"]},{name:"R",mime:"text/x-rsrc",mode:"r",ext:["r","R"],alias:["rscript"]},{name:"reStructuredText",mime:"text/x-rst",mode:"rst",ext:["rst"],alias:["rst"]},{name:"RPM Changes",mime:"text/x-rpm-changes",mode:"rpm"},{name:"RPM Spec",mime:"text/x-rpm-spec",mode:"rpm",ext:["spec"]},{name:"Ruby",mime:"text/x-ruby",mode:"ruby",ext:["rb"],alias:["jruby","macruby","rake","rb","rbx"]},{name:"Rust",mime:"text/x-rustsrc",mode:"rust",ext:["rs"]},{name:"SAS",mime:"text/x-sas",mode:"sas",ext:["sas"]},{name:"Sass",mime:"text/x-sass",mode:"sass",ext:["sass"]},{name:"Scala",mime:"text/x-scala",mode:"clike",ext:["scala"]},{name:"Scheme",mime:"text/x-scheme",mode:"scheme",ext:["scm","ss"]},{name:"SCSS",mime:"text/x-scss",mode:"css",ext:["scss"]},{name:"Shell",mimes:["text/x-sh","application/x-sh"],mode:"shell",ext:["sh","ksh","bash"],alias:["bash","sh","zsh"],file:/^PKGBUILD$/},{name:"Sieve",mime:"application/sieve",mode:"sieve",ext:["siv","sieve"]},{name:"Slim",mimes:["text/x-slim","application/x-slim"],mode:"slim",ext:["slim"]},{name:"Smalltalk",mime:"text/x-stsrc",mode:"smalltalk",ext:["st"]},{name:"Smarty",mime:"text/x-smarty",mode:"smarty",ext:["tpl"]},{name:"Solr",mime:"text/x-solr",mode:"solr"},{name:"SML",mime:"text/x-sml",mode:"mllike",ext:["sml","sig","fun","smackspec"]},{name:"Soy",mime:"text/x-soy",mode:"soy",ext:["soy"],alias:["closure template"]},{name:"SPARQL",mime:"application/sparql-query",mode:"sparql",ext:["rq","sparql"],alias:["sparul"]},{name:"Spreadsheet",mime:"text/x-spreadsheet",mode:"spreadsheet",alias:["excel","formula"]},{name:"SQL",mime:"text/x-sql",mode:"sql",ext:["sql"]},{name:"SQLite",mime:"text/x-sqlite",mode:"sql"},{name:"Squirrel",mime:"text/x-squirrel",mode:"clike",ext:["nut"]},{name:"Stylus",mime:"text/x-styl",mode:"stylus",ext:["styl"]},{name:"Swift",mime:"text/x-swift",mode:"swift",ext:["swift"]},{name:"sTeX",mime:"text/x-stex",mode:"stex"},{name:"LaTeX",mime:"text/x-latex",mode:"stex",ext:["text","ltx","tex"],alias:["tex"]},{name:"SystemVerilog",mime:"text/x-systemverilog",mode:"verilog",ext:["v","sv","svh"]},{name:"Tcl",mime:"text/x-tcl",mode:"tcl",ext:["tcl"]},{name:"Textile",mime:"text/x-textile",mode:"textile",ext:["textile"]},{name:"TiddlyWiki",mime:"text/x-tiddlywiki",mode:"tiddlywiki"},{name:"Tiki wiki",mime:"text/tiki",mode:"tiki"},{name:"TOML",mime:"text/x-toml",mode:"toml",ext:["toml"]},{name:"Tornado",mime:"text/x-tornado",mode:"tornado"},{name:"troff",mime:"text/troff",mode:"troff",ext:["1","2","3","4","5","6","7","8","9"]},{name:"TTCN",mime:"text/x-ttcn",mode:"ttcn",ext:["ttcn","ttcn3","ttcnpp"]},{name:"TTCN_CFG",mime:"text/x-ttcn-cfg",mode:"ttcn-cfg",ext:["cfg"]},{name:"Turtle",mime:"text/turtle",mode:"turtle",ext:["ttl"]},{name:"TypeScript",mime:"application/typescript",mode:"javascript",ext:["ts"],alias:["ts"]},{name:"TypeScript-JSX",mime:"text/typescript-jsx",mode:"jsx",ext:["tsx"],alias:["tsx"]},{name:"Twig",mime:"text/x-twig",mode:"twig"},{name:"Web IDL",mime:"text/x-webidl",mode:"webidl",ext:["webidl"]},{name:"VB.NET",mime:"text/x-vb",mode:"vb",ext:["vb"]},{name:"VBScript",mime:"text/vbscript",mode:"vbscript",ext:["vbs"]},{name:"Velocity",mime:"text/velocity",mode:"velocity",ext:["vtl"]},{name:"Verilog",mime:"text/x-verilog",mode:"verilog",ext:["v"]},{name:"VHDL",mime:"text/x-vhdl",mode:"vhdl",ext:["vhd","vhdl"]},{name:"Vue.js Component",mimes:["script/x-vue","text/x-vue"],mode:"vue",ext:["vue"]},{name:"XML",mimes:["application/xml","text/xml"],mode:"xml",ext:["xml","xsl","xsd","svg"],alias:["rss","wsdl","xsd"]},{name:"XQuery",mime:"application/xquery",mode:"xquery",ext:["xy","xquery"]},{name:"Yacas",mime:"text/x-yacas",mode:"yacas",ext:["ys"]},{name:"YAML",mimes:["text/x-yaml","text/yaml"],mode:"yaml",ext:["yaml","yml"],alias:["yml"]},{name:"Z80",mime:"text/x-z80",mode:"z80",ext:["z80"]},{name:"mscgen",mime:"text/x-mscgen",mode:"mscgen",ext:["mscgen","mscin","msc"]},{name:"xu",mime:"text/x-xu",mode:"mscgen",ext:["xu"]},{name:"msgenny",mime:"text/x-msgenny",mode:"mscgen",ext:["msgenny"]},{name:"WebAssembly",mime:"text/webassembly",mode:"wast",ext:["wat","wast"]}];for(var et=0;et-1&&ke.substring(we+1,ke.length);if(Te)return He.findModeByExtension(Te)},He.findModeByName=function(ke){ke=ke.toLowerCase();for(var Ze=0;Ze0?ye.cmdState[ye.cmdState.length-1]:null}function Oe(ye){var ie=ye.cmdState.pop();ie&&ie.closeBracket()}function we(ye){for(var ie=ye.cmdState,ae=ie.length-1;ae>=0;ae--){var fe=ie[ae];if(fe.name!="DEFAULT")return fe}return{styleIdentifier:function(){return null}}}function Te(ye,ie,ae){return function(){this.name=ye,this.bracketNo=0,this.style=ie,this.styles=ae,this.argument=null,this.styleIdentifier=function(){return this.styles[this.bracketNo-1]||null},this.openBracket=function(){return this.bracketNo++,"bracket"},this.closeBracket=function(){}}}var Re={};Re.importmodule=Te("importmodule","tag",["string","builtin"]),Re.documentclass=Te("documentclass","tag",["","atom"]),Re.usepackage=Te("usepackage","tag",["atom"]),Re.begin=Te("begin","tag",["atom"]),Re.end=Te("end","tag",["atom"]),Re.label=Te("label","tag",["atom"]),Re.ref=Te("ref","tag",["atom"]),Re.eqref=Te("eqref","tag",["atom"]),Re.cite=Te("cite","tag",["atom"]),Re.bibitem=Te("bibitem","tag",["atom"]),Re.Bibitem=Te("Bibitem","tag",["atom"]),Re.RBibitem=Te("RBibitem","tag",["atom"]),Re.DEFAULT=function(){this.name="DEFAULT",this.style="tag",this.styleIdentifier=this.openBracket=this.closeBracket=function(){}};function Ie(ye,ie){ye.f=ie}function be(ye,ie){var ae;if(ye.match(/^\\[a-zA-Z@]+/)){var fe=ye.current().slice(1);return ae=Re.hasOwnProperty(fe)?Re[fe]:Re.DEFAULT,ae=new ae,ke(ie,ae),Ie(ie,je),ae.style}if(ye.match(/^\\[$&%#{}_]/)||ye.match(/^\\[,;!\/\\]/))return"tag";if(ye.match("\\["))return Ie(ie,function(ve,xe){return Pe(ve,xe,"\\]")}),"keyword";if(ye.match("\\("))return Ie(ie,function(ve,xe){return Pe(ve,xe,"\\)")}),"keyword";if(ye.match("$$"))return Ie(ie,function(ve,xe){return Pe(ve,xe,"$$")}),"keyword";if(ye.match("$"))return Ie(ie,function(ve,xe){return Pe(ve,xe,"$")}),"keyword";var de=ye.next();if(de=="%")return ye.skipToEnd(),"comment";if(de=="}"||de=="]"){if(ae=Ze(ie),ae)ae.closeBracket(de),Ie(ie,je);else return"error";return"bracket"}else return de=="{"||de=="["?(ae=Re.DEFAULT,ae=new ae,ke(ie,ae),"bracket"):/\d/.test(de)?(ye.eatWhile(/[\w.%]/),"atom"):(ye.eatWhile(/[\w\-_]/),ae=we(ie),ae.name=="begin"&&(ae.argument=ye.current()),ae.styleIdentifier())}function Pe(ye,ie,ae){if(ye.eatSpace())return null;if(ae&&ye.match(ae))return Ie(ie,be),"keyword";if(ye.match(/^\\[a-zA-Z@]+/))return"tag";if(ye.match(/^[a-zA-Z]+/))return"variable-2";if(ye.match(/^\\[$&%#{}_]/)||ye.match(/^\\[,;!\/]/)||ye.match(/^[\^_&]/))return"tag";if(ye.match(/^[+\-<>|=,\/@!*:;'"`~#?]/))return null;if(ye.match(/^(\d+\.\d*|\d*\.\d+|\d+)/))return"number";var fe=ye.next();return fe=="{"||fe=="}"||fe=="["||fe=="]"||fe=="("||fe==")"?"bracket":fe=="%"?(ye.skipToEnd(),"comment"):"error"}function je(ye,ie){var ae=ye.peek(),fe;return ae=="{"||ae=="["?(fe=Ze(ie),fe.openBracket(ae),ye.eat(ae),Ie(ie,be),"bracket"):/[ \t\r]/.test(ae)?(ye.eat(ae),null):(Ie(ie,be),Oe(ie),be(ye,ie))}return{startState:function(){var ye=Ge.inMathMode?function(ie,ae){return Pe(ie,ae)}:be;return{cmdState:[],f:ye}},copyState:function(ye){return{cmdState:ye.cmdState.slice(),f:ye.f}},token:function(ye,ie){return ie.f(ye,ie)},blankLine:function(ye){ye.f=be,ye.cmdState.length=0},lineComment:"%"}}),He.defineMIME("text/x-stex","stex"),He.defineMIME("text/x-latex","stex")})},15525:function(sn,an,Be){(function(He){He(Be(89780))})(function(He){"use strict";var et={autoSelfClosers:{area:!0,base:!0,br:!0,col:!0,command:!0,embed:!0,frame:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0,menuitem:!0},implicitlyClosed:{dd:!0,li:!0,optgroup:!0,option:!0,p:!0,rp:!0,rt:!0,tbody:!0,td:!0,tfoot:!0,th:!0,tr:!0},contextGrabbers:{dd:{dd:!0,dt:!0},dt:{dd:!0,dt:!0},li:{li:!0},option:{option:!0,optgroup:!0},optgroup:{optgroup:!0},p:{address:!0,article:!0,aside:!0,blockquote:!0,dir:!0,div:!0,dl:!0,fieldset:!0,footer:!0,form:!0,h1:!0,h2:!0,h3:!0,h4:!0,h5:!0,h6:!0,header:!0,hgroup:!0,hr:!0,menu:!0,nav:!0,ol:!0,p:!0,pre:!0,section:!0,table:!0,ul:!0},rp:{rp:!0,rt:!0},rt:{rp:!0,rt:!0},tbody:{tbody:!0,tfoot:!0},td:{td:!0,th:!0},tfoot:{tbody:!0},th:{td:!0,th:!0},thead:{tbody:!0,tfoot:!0},tr:{tr:!0}},doNotIndent:{pre:!0},allowUnquoted:!0,allowMissing:!0,caseFold:!0},Ge={autoSelfClosers:{},implicitlyClosed:{},contextGrabbers:{},doNotIndent:{},allowUnquoted:!1,allowMissing:!1,allowMissingTagName:!1,caseFold:!1};He.defineMode("xml",function(ke,Ze){var Oe=ke.indentUnit,we={},Te=Ze.htmlMode?et:Ge;for(var Re in Te)we[Re]=Te[Re];for(var Re in Ze)we[Re]=Ze[Re];var Ie,be;function Pe(tt,gt){function st(vt){return gt.tokenize=vt,vt(tt,gt)}var St=tt.next();if(St=="<")return tt.eat("!")?tt.eat("[")?tt.match("CDATA[")?st(ie("atom","]]>")):null:tt.match("--")?st(ie("comment","-->")):tt.match("DOCTYPE",!0,!0)?(tt.eatWhile(/[\w\._\-]/),st(ae(1))):null:tt.eat("?")?(tt.eatWhile(/[\w\._\-]/),gt.tokenize=ie("meta","?>"),"meta"):(Ie=tt.eat("/")?"closeTag":"openTag",gt.tokenize=je,"tag bracket");if(St=="&"){var At;return tt.eat("#")?tt.eat("x")?At=tt.eatWhile(/[a-fA-F\d]/)&&tt.eat(";"):At=tt.eatWhile(/[\d]/)&&tt.eat(";"):At=tt.eatWhile(/[\w\.\-:]/)&&tt.eat(";"),At?"atom":"error"}else return tt.eatWhile(/[^&<]/),null}Pe.isInText=!0;function je(tt,gt){var st=tt.next();if(st==">"||st=="/"&&tt.eat(">"))return gt.tokenize=Pe,Ie=st==">"?"endTag":"selfcloseTag","tag bracket";if(st=="=")return Ie="equals",null;if(st=="<"){gt.tokenize=Pe,gt.state=xe,gt.tagName=gt.tagStart=null;var St=gt.tokenize(tt,gt);return St?St+" tag error":"tag error"}else return/[\'\"]/.test(st)?(gt.tokenize=ye(st),gt.stringStartCol=tt.column(),gt.tokenize(tt,gt)):(tt.match(/^[^\s\u00a0=<>\"\']*[^\s\u00a0=<>\"\'\/]/),"word")}function ye(tt){var gt=function(st,St){for(;!st.eol();)if(st.next()==tt){St.tokenize=je;break}return"string"};return gt.isInAttribute=!0,gt}function ie(tt,gt){return function(st,St){for(;!st.eol();){if(st.match(gt)){St.tokenize=Pe;break}st.next()}return tt}}function ae(tt){return function(gt,st){for(var St;(St=gt.next())!=null;){if(St=="<")return st.tokenize=ae(tt+1),st.tokenize(gt,st);if(St==">")if(tt==1){st.tokenize=Pe;break}else return st.tokenize=ae(tt-1),st.tokenize(gt,st)}return"meta"}}function fe(tt,gt,st){this.prev=tt.context,this.tagName=gt,this.indent=tt.indented,this.startOfLine=st,(we.doNotIndent.hasOwnProperty(gt)||tt.context&&tt.context.noIndent)&&(this.noIndent=!0)}function de(tt){tt.context&&(tt.context=tt.context.prev)}function ve(tt,gt){for(var st;;){if(!tt.context||(st=tt.context.tagName,!we.contextGrabbers.hasOwnProperty(st)||!we.contextGrabbers[st].hasOwnProperty(gt)))return;de(tt)}}function xe(tt,gt,st){return tt=="openTag"?(st.tagStart=gt.column(),he):tt=="closeTag"?pe:xe}function he(tt,gt,st){return tt=="word"?(st.tagName=gt.current(),be="tag",ze):we.allowMissingTagName&&tt=="endTag"?(be="tag bracket",ze(tt,gt,st)):(be="error",he)}function pe(tt,gt,st){if(tt=="word"){var St=gt.current();return st.context&&st.context.tagName!=St&&we.implicitlyClosed.hasOwnProperty(st.context.tagName)&&de(st),st.context&&st.context.tagName==St||we.matchClosing===!1?(be="tag",Se):(be="tag error",Ne)}else return we.allowMissingTagName&&tt=="endTag"?(be="tag bracket",Se(tt,gt,st)):(be="error",Ne)}function Se(tt,gt,st){return tt!="endTag"?(be="error",Se):(de(st),xe)}function Ne(tt,gt,st){return be="error",Se(tt,gt,st)}function ze(tt,gt,st){if(tt=="word")return be="attribute",Ke;if(tt=="endTag"||tt=="selfcloseTag"){var St=st.tagName,At=st.tagStart;return st.tagName=st.tagStart=null,tt=="selfcloseTag"||we.autoSelfClosers.hasOwnProperty(St)?ve(st,St):(ve(st,St),st.context=new fe(st,St,At==st.indented)),xe}return be="error",ze}function Ke(tt,gt,st){return tt=="equals"?Ve:(we.allowMissing||(be="error"),ze(tt,gt,st))}function Ve(tt,gt,st){return tt=="string"?Je:tt=="word"&&we.allowUnquoted?(be="string",ze):(be="error",ze(tt,gt,st))}function Je(tt,gt,st){return tt=="string"?Je:ze(tt,gt,st)}return{startState:function(tt){var gt={tokenize:Pe,state:xe,indented:tt||0,tagName:null,tagStart:null,context:null};return tt!=null&&(gt.baseIndent=tt),gt},token:function(tt,gt){if(!gt.tagName&&tt.sol()&&(gt.indented=tt.indentation()),tt.eatSpace())return null;Ie=null;var st=gt.tokenize(tt,gt);return(st||Ie)&&st!="comment"&&(be=null,gt.state=gt.state(Ie||st,tt,gt),be&&(st=be=="error"?st+" error":be)),st},indent:function(tt,gt,st){var St=tt.context;if(tt.tokenize.isInAttribute)return tt.tagStart==tt.indented?tt.stringStartCol+1:tt.indented+Oe;if(St&&St.noIndent)return He.Pass;if(tt.tokenize!=je&&tt.tokenize!=Pe)return st?st.match(/^(\s*)/)[0].length:0;if(tt.tagName)return we.multilineTagIndentPastTag!==!1?tt.tagStart+tt.tagName.length+2:tt.tagStart+Oe*(we.multilineTagIndentFactor||1);if(we.alignCDATA&&/$/,blockCommentStart:"",configuration:we.htmlMode?"html":"xml",helperType:we.htmlMode?"html":"xml",skipAttribute:function(tt){tt.state==Ve&&(tt.state=ze)},xmlCurrentTag:function(tt){return tt.tagName?{name:tt.tagName,close:tt.type=="closeTag"}:null},xmlCurrentContext:function(tt){for(var gt=[],st=tt.context;st;st=st.prev)st.tagName&>.push(st.tagName);return gt.reverse()}}}),He.defineMIME("text/xml","xml"),He.defineMIME("application/xml","xml"),He.mimeModes.hasOwnProperty("text/html")||He.defineMIME("text/html",{name:"xml",htmlMode:!0})})},45411:function(sn){"use strict";sn.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(sn,an,Be){var He=Be(45411),et=Be(75029),Ge=Object.hasOwnProperty,ke=Object.create(null);for(var Ze in He)Ge.call(He,Ze)&&(ke[He[Ze]]=Ze);var Oe=sn.exports={to:{},get:{}};Oe.get=function(Re){var Ie=Re.substring(0,3).toLowerCase(),be,Pe;switch(Ie){case"hsl":be=Oe.get.hsl(Re),Pe="hsl";break;case"hwb":be=Oe.get.hwb(Re),Pe="hwb";break;default:be=Oe.get.rgb(Re),Pe="rgb";break}return be?{model:Pe,value:be}:null},Oe.get.rgb=function(Re){if(!Re)return null;var Ie=/^#([a-f0-9]{3,4})$/i,be=/^#([a-f0-9]{6})([a-f0-9]{2})?$/i,Pe=/^rgba?\(\s*([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/,je=/^rgba?\(\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/,ye=/^(\w+)$/,ie=[0,0,0,1],ae,fe,de;if(ae=Re.match(be)){for(de=ae[2],ae=ae[1],fe=0;fe<3;fe++){var ve=fe*2;ie[fe]=parseInt(ae.slice(ve,ve+2),16)}de&&(ie[3]=parseInt(de,16)/255)}else if(ae=Re.match(Ie)){for(ae=ae[1],de=ae[3],fe=0;fe<3;fe++)ie[fe]=parseInt(ae[fe]+ae[fe],16);de&&(ie[3]=parseInt(de+de,16)/255)}else if(ae=Re.match(Pe)){for(fe=0;fe<3;fe++)ie[fe]=parseInt(ae[fe+1],0);ae[4]&&(ae[5]?ie[3]=parseFloat(ae[4])*.01:ie[3]=parseFloat(ae[4]))}else if(ae=Re.match(je)){for(fe=0;fe<3;fe++)ie[fe]=Math.round(parseFloat(ae[fe+1])*2.55);ae[4]&&(ae[5]?ie[3]=parseFloat(ae[4])*.01:ie[3]=parseFloat(ae[4]))}else return(ae=Re.match(ye))?ae[1]==="transparent"?[0,0,0,0]:Ge.call(He,ae[1])?(ie=He[ae[1]],ie[3]=1,ie):null:null;for(fe=0;fe<3;fe++)ie[fe]=we(ie[fe],0,255);return ie[3]=we(ie[3],0,1),ie},Oe.get.hsl=function(Re){if(!Re)return null;var Ie=/^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*)?\)$/,be=Re.match(Ie);if(be){var Pe=parseFloat(be[4]),je=(parseFloat(be[1])%360+360)%360,ye=we(parseFloat(be[2]),0,100),ie=we(parseFloat(be[3]),0,100),ae=we(isNaN(Pe)?1:Pe,0,1);return[je,ye,ie,ae]}return null},Oe.get.hwb=function(Re){if(!Re)return null;var Ie=/^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*)?\)$/,be=Re.match(Ie);if(be){var Pe=parseFloat(be[4]),je=(parseFloat(be[1])%360+360)%360,ye=we(parseFloat(be[2]),0,100),ie=we(parseFloat(be[3]),0,100),ae=we(isNaN(Pe)?1:Pe,0,1);return[je,ye,ie,ae]}return null},Oe.to.hex=function(){var Re=et(arguments);return"#"+Te(Re[0])+Te(Re[1])+Te(Re[2])+(Re[3]<1?Te(Math.round(Re[3]*255)):"")},Oe.to.rgb=function(){var Re=et(arguments);return Re.length<4||Re[3]===1?"rgb("+Math.round(Re[0])+", "+Math.round(Re[1])+", "+Math.round(Re[2])+")":"rgba("+Math.round(Re[0])+", "+Math.round(Re[1])+", "+Math.round(Re[2])+", "+Re[3]+")"},Oe.to.rgb.percent=function(){var Re=et(arguments),Ie=Math.round(Re[0]/255*100),be=Math.round(Re[1]/255*100),Pe=Math.round(Re[2]/255*100);return Re.length<4||Re[3]===1?"rgb("+Ie+"%, "+be+"%, "+Pe+"%)":"rgba("+Ie+"%, "+be+"%, "+Pe+"%, "+Re[3]+")"},Oe.to.hsl=function(){var Re=et(arguments);return Re.length<4||Re[3]===1?"hsl("+Re[0]+", "+Re[1]+"%, "+Re[2]+"%)":"hsla("+Re[0]+", "+Re[1]+"%, "+Re[2]+"%, "+Re[3]+")"},Oe.to.hwb=function(){var Re=et(arguments),Ie="";return Re.length>=4&&Re[3]!==1&&(Ie=", "+Re[3]),"hwb("+Re[0]+", "+Re[1]+"%, "+Re[2]+"%"+Ie+")"},Oe.to.keyword=function(Re){return ke[Re.slice(0,3)]};function we(Re,Ie,be){return Math.min(Math.max(Ie,Re),be)}function Te(Re){var Ie=Math.round(Re).toString(16).toUpperCase();return Ie.length<2?"0"+Ie:Ie}},92546:function(sn,an,Be){sn.exports={graphlib:Be(76626),layout:Be(47194),debug:Be(11303),util:{time:Be(53063).time,notime:Be(53063).notime},version:Be(11897)}},81255:function(sn,an,Be){"use strict";var He=Be(72361),et=Be(39240);sn.exports={run:Ge,undo:Ze};function Ge(Oe){var we=Oe.graph().acyclicer==="greedy"?et(Oe,Te(Oe)):ke(Oe);He.forEach(we,function(Re){var Ie=Oe.edge(Re);Oe.removeEdge(Re),Ie.forwardName=Re.name,Ie.reversed=!0,Oe.setEdge(Re.w,Re.v,Ie,He.uniqueId("rev"))});function Te(Re){return function(Ie){return Re.edge(Ie).weight}}}function ke(Oe){var we=[],Te={},Re={};function Ie(be){He.has(Re,be)||(Re[be]=!0,Te[be]=!0,He.forEach(Oe.outEdges(be),function(Pe){He.has(Te,Pe.w)?we.push(Pe):Ie(Pe.w)}),delete Te[be])}return He.forEach(Oe.nodes(),Ie),we}function Ze(Oe){He.forEach(Oe.edges(),function(we){var Te=Oe.edge(we);if(Te.reversed){Oe.removeEdge(we);var Re=Te.forwardName;delete Te.reversed,delete Te.forwardName,Oe.setEdge(we.w,we.v,Te,Re)}})}},60765:function(sn,an,Be){var He=Be(72361),et=Be(53063);sn.exports=Ge;function Ge(Ze){function Oe(we){var Te=Ze.children(we),Re=Ze.node(we);if(Te.length&&He.forEach(Te,Oe),He.has(Re,"minRank")){Re.borderLeft=[],Re.borderRight=[];for(var Ie=Re.minRank,be=Re.maxRank+1;Ie0;--fe)if(ae=be[fe].dequeue(),ae){je=je.concat(we(Ie,be,Pe,ae,!0));break}}}return je}function we(Ie,be,Pe,je,ye){var ie=ye?[]:void 0;return He.forEach(Ie.inEdges(je.v),function(ae){var fe=Ie.edge(ae),de=Ie.node(ae.v);ye&&ie.push({v:ae.v,w:ae.w}),de.out-=fe,Re(be,Pe,de)}),He.forEach(Ie.outEdges(je.v),function(ae){var fe=Ie.edge(ae),de=ae.w,ve=Ie.node(de);ve.in-=fe,Re(be,Pe,ve)}),Ie.removeNode(je.v),ie}function Te(Ie,be){var Pe=new et,je=0,ye=0;He.forEach(Ie.nodes(),function(fe){Pe.setNode(fe,{v:fe,in:0,out:0})}),He.forEach(Ie.edges(),function(fe){var de=Pe.edge(fe.v,fe.w)||0,ve=be(fe),xe=de+ve;Pe.setEdge(fe.v,fe.w,xe),ye=Math.max(ye,Pe.node(fe.v).out+=ve),je=Math.max(je,Pe.node(fe.w).in+=ve)});var ie=He.range(ye+je+3).map(function(){return new Ge}),ae=je+1;return He.forEach(Pe.nodes(),function(fe){Re(ie,ae,Pe.node(fe))}),{graph:Pe,buckets:ie,zeroIdx:ae}}function Re(Ie,be,Pe){Pe.out?Pe.in?Ie[Pe.out-Pe.in+be].enqueue(Pe):Ie[Ie.length-1].enqueue(Pe):Ie[0].enqueue(Pe)}},47194:function(sn,an,Be){"use strict";var He=Be(72361),et=Be(81255),Ge=Be(27163),ke=Be(64505),Ze=Be(53063).normalizeRanks,Oe=Be(71970),we=Be(53063).removeEmptyRanks,Te=Be(31733),Re=Be(60765),Ie=Be(13257),be=Be(62852),Pe=Be(93021),je=Be(53063),ye=Be(76626).Graph;sn.exports=ie;function ie(Ut,Ft){var Yt=Ft&&Ft.debugTiming?je.time:je.notime;Yt("layout",function(){var dn=Yt(" buildLayoutGraph",function(){return Ke(Ut)});Yt(" runLayout",function(){ae(dn,Yt)}),Yt(" updateInputGraph",function(){fe(Ut,dn)})})}function ae(Ut,Ft){Ft(" makeSpaceForEdgeLabels",function(){Ve(Ut)}),Ft(" removeSelfEdges",function(){bt(Ut)}),Ft(" acyclic",function(){et.run(Ut)}),Ft(" nestingGraph.run",function(){Te.run(Ut)}),Ft(" rank",function(){ke(je.asNonCompoundGraph(Ut))}),Ft(" injectEdgeLabelProxies",function(){Je(Ut)}),Ft(" removeEmptyRanks",function(){we(Ut)}),Ft(" nestingGraph.cleanup",function(){Te.cleanup(Ut)}),Ft(" normalizeRanks",function(){Ze(Ut)}),Ft(" assignRankMinMax",function(){tt(Ut)}),Ft(" removeEdgeLabelProxies",function(){gt(Ut)}),Ft(" normalize.run",function(){Ge.run(Ut)}),Ft(" parentDummyChains",function(){Oe(Ut)}),Ft(" addBorderSegments",function(){Re(Ut)}),Ft(" order",function(){be(Ut)}),Ft(" insertSelfEdges",function(){Et(Ut)}),Ft(" adjustCoordinateSystem",function(){Ie.adjust(Ut)}),Ft(" position",function(){Pe(Ut)}),Ft(" positionSelfEdges",function(){lt(Ut)}),Ft(" removeBorderNodes",function(){Tt(Ut)}),Ft(" normalize.undo",function(){Ge.undo(Ut)}),Ft(" fixupEdgeLabelCoords",function(){At(Ut)}),Ft(" undoCoordinateSystem",function(){Ie.undo(Ut)}),Ft(" translateGraph",function(){st(Ut)}),Ft(" assignNodeIntersects",function(){St(Ut)}),Ft(" reversePoints",function(){vt(Ut)}),Ft(" acyclic.undo",function(){et.undo(Ut)})}function fe(Ut,Ft){He.forEach(Ut.nodes(),function(Yt){var dn=Ut.node(Yt),Dn=Ft.node(Yt);dn&&(dn.x=Dn.x,dn.y=Dn.y,Ft.children(Yt).length&&(dn.width=Dn.width,dn.height=Dn.height))}),He.forEach(Ut.edges(),function(Yt){var dn=Ut.edge(Yt),Dn=Ft.edge(Yt);dn.points=Dn.points,He.has(Dn,"x")&&(dn.x=Dn.x,dn.y=Dn.y)}),Ut.graph().width=Ft.graph().width,Ut.graph().height=Ft.graph().height}var de=["nodesep","edgesep","ranksep","marginx","marginy"],ve={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},xe=["acyclicer","ranker","rankdir","align"],he=["width","height"],pe={width:0,height:0},Se=["minlen","weight","width","height","labeloffset"],Ne={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},ze=["labelpos"];function Ke(Ut){var Ft=new ye({multigraph:!0,compound:!0}),Yt=Zt(Ut.graph());return Ft.setGraph(He.merge({},ve,Nt(Yt,de),He.pick(Yt,xe))),He.forEach(Ut.nodes(),function(dn){var Dn=Zt(Ut.node(dn));Ft.setNode(dn,He.defaults(Nt(Dn,he),pe)),Ft.setParent(dn,Ut.parent(dn))}),He.forEach(Ut.edges(),function(dn){var Dn=Zt(Ut.edge(dn));Ft.setEdge(dn,He.merge({},Ne,Nt(Dn,Se),He.pick(Dn,ze)))}),Ft}function Ve(Ut){var Ft=Ut.graph();Ft.ranksep/=2,He.forEach(Ut.edges(),function(Yt){var dn=Ut.edge(Yt);dn.minlen*=2,dn.labelpos.toLowerCase()!=="c"&&(Ft.rankdir==="TB"||Ft.rankdir==="BT"?dn.width+=dn.labeloffset:dn.height+=dn.labeloffset)})}function Je(Ut){He.forEach(Ut.edges(),function(Ft){var Yt=Ut.edge(Ft);if(Yt.width&&Yt.height){var dn=Ut.node(Ft.v),Dn=Ut.node(Ft.w),Rn={rank:(Dn.rank-dn.rank)/2+dn.rank,e:Ft};je.addDummyNode(Ut,"edge-proxy",Rn,"_ep")}})}function tt(Ut){var Ft=0;He.forEach(Ut.nodes(),function(Yt){var dn=Ut.node(Yt);dn.borderTop&&(dn.minRank=Ut.node(dn.borderTop).rank,dn.maxRank=Ut.node(dn.borderBottom).rank,Ft=He.max(Ft,dn.maxRank))}),Ut.graph().maxRank=Ft}function gt(Ut){He.forEach(Ut.nodes(),function(Ft){var Yt=Ut.node(Ft);Yt.dummy==="edge-proxy"&&(Ut.edge(Yt.e).labelRank=Yt.rank,Ut.removeNode(Ft))})}function st(Ut){var Ft=Number.POSITIVE_INFINITY,Yt=0,dn=Number.POSITIVE_INFINITY,Dn=0,Rn=Ut.graph(),Zn=Rn.marginx||0,ln=Rn.marginy||0;function Gn(Wn){var qt=Wn.x,xt=Wn.y,ft=Wn.width,Bt=Wn.height;Ft=Math.min(Ft,qt-ft/2),Yt=Math.max(Yt,qt+ft/2),dn=Math.min(dn,xt-Bt/2),Dn=Math.max(Dn,xt+Bt/2)}He.forEach(Ut.nodes(),function(Wn){Gn(Ut.node(Wn))}),He.forEach(Ut.edges(),function(Wn){var qt=Ut.edge(Wn);He.has(qt,"x")&&Gn(qt)}),Ft-=Zn,dn-=ln,He.forEach(Ut.nodes(),function(Wn){var qt=Ut.node(Wn);qt.x-=Ft,qt.y-=dn}),He.forEach(Ut.edges(),function(Wn){var qt=Ut.edge(Wn);He.forEach(qt.points,function(xt){xt.x-=Ft,xt.y-=dn}),He.has(qt,"x")&&(qt.x-=Ft),He.has(qt,"y")&&(qt.y-=dn)}),Rn.width=Yt-Ft+Zn,Rn.height=Dn-dn+ln}function St(Ut){He.forEach(Ut.edges(),function(Ft){var Yt=Ut.edge(Ft),dn=Ut.node(Ft.v),Dn=Ut.node(Ft.w),Rn,Zn;Yt.points?(Rn=Yt.points[0],Zn=Yt.points[Yt.points.length-1]):(Yt.points=[],Rn=Dn,Zn=dn),Yt.points.unshift(je.intersectRect(dn,Rn)),Yt.points.push(je.intersectRect(Dn,Zn))})}function At(Ut){He.forEach(Ut.edges(),function(Ft){var Yt=Ut.edge(Ft);if(He.has(Yt,"x"))switch((Yt.labelpos==="l"||Yt.labelpos==="r")&&(Yt.width-=Yt.labeloffset),Yt.labelpos){case"l":Yt.x-=Yt.width/2+Yt.labeloffset;break;case"r":Yt.x+=Yt.width/2+Yt.labeloffset;break}})}function vt(Ut){He.forEach(Ut.edges(),function(Ft){var Yt=Ut.edge(Ft);Yt.reversed&&Yt.points.reverse()})}function Tt(Ut){He.forEach(Ut.nodes(),function(Ft){if(Ut.children(Ft).length){var Yt=Ut.node(Ft),dn=Ut.node(Yt.borderTop),Dn=Ut.node(Yt.borderBottom),Rn=Ut.node(He.last(Yt.borderLeft)),Zn=Ut.node(He.last(Yt.borderRight));Yt.width=Math.abs(Zn.x-Rn.x),Yt.height=Math.abs(Dn.y-dn.y),Yt.x=Rn.x+Yt.width/2,Yt.y=dn.y+Yt.height/2}}),He.forEach(Ut.nodes(),function(Ft){Ut.node(Ft).dummy==="border"&&Ut.removeNode(Ft)})}function bt(Ut){He.forEach(Ut.edges(),function(Ft){if(Ft.v===Ft.w){var Yt=Ut.node(Ft.v);Yt.selfEdges||(Yt.selfEdges=[]),Yt.selfEdges.push({e:Ft,label:Ut.edge(Ft)}),Ut.removeEdge(Ft)}})}function Et(Ut){var Ft=je.buildLayerMatrix(Ut);He.forEach(Ft,function(Yt){var dn=0;He.forEach(Yt,function(Dn,Rn){var Zn=Ut.node(Dn);Zn.order=Rn+dn,He.forEach(Zn.selfEdges,function(ln){je.addDummyNode(Ut,"selfedge",{width:ln.label.width,height:ln.label.height,rank:Zn.rank,order:Rn+ ++dn,e:ln.e,label:ln.label},"_se")}),delete Zn.selfEdges})})}function lt(Ut){He.forEach(Ut.nodes(),function(Ft){var Yt=Ut.node(Ft);if(Yt.dummy==="selfedge"){var dn=Ut.node(Yt.e.v),Dn=dn.x+dn.width/2,Rn=dn.y,Zn=Yt.x-Dn,ln=dn.height/2;Ut.setEdge(Yt.e,Yt.label),Ut.removeNode(Ft),Yt.label.points=[{x:Dn+2*Zn/3,y:Rn-ln},{x:Dn+5*Zn/6,y:Rn-ln},{x:Dn+Zn,y:Rn},{x:Dn+5*Zn/6,y:Rn+ln},{x:Dn+2*Zn/3,y:Rn+ln}],Yt.label.x=Yt.x,Yt.label.y=Yt.y}})}function Nt(Ut,Ft){return He.mapValues(He.pick(Ut,Ft),Number)}function Zt(Ut){var Ft={};return He.forEach(Ut,function(Yt,dn){Ft[dn.toLowerCase()]=Yt}),Ft}},72361:function(sn,an,Be){var He;try{He={cloneDeep:Be(20250),constant:Be(13503),defaults:Be(28548),each:Be(76934),filter:Be(64725),find:Be(79785),flatten:Be(40151),forEach:Be(99204),forIn:Be(23190),has:Be(99946),isUndefined:Be(16513),last:Be(10611),map:Be(9924),mapValues:Be(70642),max:Be(95987),merge:Be(28440),min:Be(73376),minBy:Be(83296),now:Be(5795),pick:Be(89409),range:Be(60859),reduce:Be(16473),sortBy:Be(351),uniqueId:Be(95708),values:Be(81229),zipObject:Be(65441)}}catch(et){}He||(He=window._),sn.exports=He},31733:function(sn,an,Be){var He=Be(72361),et=Be(53063);sn.exports={run:Ge,cleanup:we};function Ge(Te){var Re=et.addDummyNode(Te,"root",{},"_root"),Ie=Ze(Te),be=He.max(He.values(Ie))-1,Pe=2*be+1;Te.graph().nestingRoot=Re,He.forEach(Te.edges(),function(ye){Te.edge(ye).minlen*=Pe});var je=Oe(Te)+1;He.forEach(Te.children(),function(ye){ke(Te,Re,Pe,je,be,Ie,ye)}),Te.graph().nodeRankFactor=Pe}function ke(Te,Re,Ie,be,Pe,je,ye){var ie=Te.children(ye);if(!ie.length){ye!==Re&&Te.setEdge(Re,ye,{weight:0,minlen:Ie});return}var ae=et.addBorderNode(Te,"_bt"),fe=et.addBorderNode(Te,"_bb"),de=Te.node(ye);Te.setParent(ae,ye),de.borderTop=ae,Te.setParent(fe,ye),de.borderBottom=fe,He.forEach(ie,function(ve){ke(Te,Re,Ie,be,Pe,je,ve);var xe=Te.node(ve),he=xe.borderTop?xe.borderTop:ve,pe=xe.borderBottom?xe.borderBottom:ve,Se=xe.borderTop?be:2*be,Ne=he!==pe?1:Pe-je[ye]+1;Te.setEdge(ae,he,{weight:Se,minlen:Ne,nestingEdge:!0}),Te.setEdge(pe,fe,{weight:Se,minlen:Ne,nestingEdge:!0})}),Te.parent(ye)||Te.setEdge(Re,ae,{weight:0,minlen:Pe+je[ye]})}function Ze(Te){var Re={};function Ie(be,Pe){var je=Te.children(be);je&&je.length&&He.forEach(je,function(ye){Ie(ye,Pe+1)}),Re[be]=Pe}return He.forEach(Te.children(),function(be){Ie(be,1)}),Re}function Oe(Te){return He.reduce(Te.edges(),function(Re,Ie){return Re+Te.edge(Ie).weight},0)}function we(Te){var Re=Te.graph();Te.removeNode(Re.nestingRoot),delete Re.nestingRoot,He.forEach(Te.edges(),function(Ie){var be=Te.edge(Ie);be.nestingEdge&&Te.removeEdge(Ie)})}},27163:function(sn,an,Be){"use strict";var He=Be(72361),et=Be(53063);sn.exports={run:Ge,undo:Ze};function Ge(Oe){Oe.graph().dummyChains=[],He.forEach(Oe.edges(),function(we){ke(Oe,we)})}function ke(Oe,we){var Te=we.v,Re=Oe.node(Te).rank,Ie=we.w,be=Oe.node(Ie).rank,Pe=we.name,je=Oe.edge(we),ye=je.labelRank;if(be!==Re+1){Oe.removeEdge(we);var ie,ae,fe;for(fe=0,++Re;Re0;)ye%2&&(ie+=be[ye+1]),ye=ye-1>>1,be[ye]+=je.weight;Pe+=je.weight*ie})),Pe}},62852:function(sn,an,Be){"use strict";var He=Be(72361),et=Be(18043),Ge=Be(45456),ke=Be(86490),Ze=Be(59105),Oe=Be(52205),we=Be(76626).Graph,Te=Be(53063);sn.exports=Re;function Re(je){var ye=Te.maxRank(je),ie=Ie(je,He.range(1,ye+1),"inEdges"),ae=Ie(je,He.range(ye-1,-1,-1),"outEdges"),fe=et(je);Pe(je,fe);for(var de=Number.POSITIVE_INFINITY,ve,xe=0,he=0;he<4;++xe,++he){be(xe%2?ie:ae,xe%4>=2),fe=Te.buildLayerMatrix(je);var pe=Ge(je,fe);pe=Ie.barycenter)&&ke(Ie,be)}}function Te(Ie){return function(be){be.in.push(Ie),--be.indegree===0&&Ze.push(be)}}for(;Ze.length;){var Re=Ze.pop();Oe.push(Re),He.forEach(Re.in.reverse(),we(Re)),He.forEach(Re.out,Te(Re))}return He.map(He.filter(Oe,function(Ie){return!Ie.merged}),function(Ie){return He.pick(Ie,["vs","i","barycenter","weight"])})}function ke(Ze,Oe){var we=0,Te=0;Ze.weight&&(we+=Ze.barycenter*Ze.weight,Te+=Ze.weight),Oe.weight&&(we+=Oe.barycenter*Oe.weight,Te+=Oe.weight),Ze.vs=Oe.vs.concat(Ze.vs),Ze.barycenter=we/Te,Ze.weight=Te,Ze.i=Math.min(Oe.i,Ze.i),Oe.merged=!0}},86490:function(sn,an,Be){var He=Be(72361),et=Be(99506),Ge=Be(45926),ke=Be(88650);sn.exports=Ze;function Ze(Te,Re,Ie,be){var Pe=Te.children(Re),je=Te.node(Re),ye=je?je.borderLeft:void 0,ie=je?je.borderRight:void 0,ae={};ye&&(Pe=He.filter(Pe,function(pe){return pe!==ye&&pe!==ie}));var fe=et(Te,Pe);He.forEach(fe,function(pe){if(Te.children(pe.v).length){var Se=Ze(Te,pe.v,Ie,be);ae[pe.v]=Se,He.has(Se,"barycenter")&&we(pe,Se)}});var de=Ge(fe,Ie);Oe(de,ae);var ve=ke(de,be);if(ye&&(ve.vs=He.flatten([ye,ve.vs,ie],!0),Te.predecessors(ye).length)){var xe=Te.node(Te.predecessors(ye)[0]),he=Te.node(Te.predecessors(ie)[0]);He.has(ve,"barycenter")||(ve.barycenter=0,ve.weight=0),ve.barycenter=(ve.barycenter*ve.weight+xe.order+he.order)/(ve.weight+2),ve.weight+=2}return ve}function Oe(Te,Re){He.forEach(Te,function(Ie){Ie.vs=He.flatten(Ie.vs.map(function(be){return Re[be]?Re[be].vs:be}),!0)})}function we(Te,Re){He.isUndefined(Te.barycenter)?(Te.barycenter=Re.barycenter,Te.weight=Re.weight):(Te.barycenter=(Te.barycenter*Te.weight+Re.barycenter*Re.weight)/(Te.weight+Re.weight),Te.weight+=Re.weight)}},88650:function(sn,an,Be){var He=Be(72361),et=Be(53063);sn.exports=Ge;function Ge(Oe,we){var Te=et.partition(Oe,function(ae){return He.has(ae,"barycenter")}),Re=Te.lhs,Ie=He.sortBy(Te.rhs,function(ae){return-ae.i}),be=[],Pe=0,je=0,ye=0;Re.sort(Ze(!!we)),ye=ke(be,Ie,ye),He.forEach(Re,function(ae){ye+=ae.vs.length,be.push(ae.vs),Pe+=ae.barycenter*ae.weight,je+=ae.weight,ye=ke(be,Ie,ye)});var ie={vs:He.flatten(be,!0)};return je&&(ie.barycenter=Pe/je,ie.weight=je),ie}function ke(Oe,we,Te){for(var Re;we.length&&(Re=He.last(we)).i<=Te;)we.pop(),Oe.push(Re.vs),Te++;return Te}function Ze(Oe){return function(we,Te){return we.barycenterTe.barycenter?1:Oe?Te.i-we.i:we.i-Te.i}}},71970:function(sn,an,Be){var He=Be(72361);sn.exports=et;function et(Ze){var Oe=ke(Ze);He.forEach(Ze.graph().dummyChains,function(we){for(var Te=Ze.node(we),Re=Te.edgeObj,Ie=Ge(Ze,Oe,Re.v,Re.w),be=Ie.path,Pe=Ie.lca,je=0,ye=be[je],ie=!0;we!==Re.w;){if(Te=Ze.node(we),ie){for(;(ye=be[je])!==Pe&&Ze.node(ye).maxRankbe||Pe>Oe[je].lim));for(ye=je,je=Te;(je=Ze.parent(je))!==ye;)Ie.push(je);return{path:Re.concat(Ie.reverse()),lca:ye}}function ke(Ze){var Oe={},we=0;function Te(Re){var Ie=we;He.forEach(Ze.children(Re),Te),Oe[Re]={low:Ie,lim:we++}}return He.forEach(Ze.children(),Te),Oe}},92080:function(sn,an,Be){"use strict";var He=Be(72361),et=Be(76626).Graph,Ge=Be(53063);sn.exports={positionX:ie,findType1Conflicts:ke,findType2Conflicts:Ze,addConflict:we,hasConflict:Te,verticalAlignment:Re,horizontalCompaction:Ie,alignCoordinates:je,findSmallestWidthAlignment:Pe,balance:ye};function ke(de,ve){var xe={};function he(pe,Se){var Ne=0,ze=0,Ke=pe.length,Ve=He.last(Se);return He.forEach(Se,function(Je,tt){var gt=Oe(de,Je),st=gt?de.node(gt).order:Ke;(gt||Je===Ve)&&(He.forEach(Se.slice(ze,tt+1),function(St){He.forEach(de.predecessors(St),function(At){var vt=de.node(At),Tt=vt.order;(TtVe)&&we(xe,gt,Je)})})}function pe(Se,Ne){var ze=-1,Ke,Ve=0;return He.forEach(Ne,function(Je,tt){if(de.node(Je).dummy==="border"){var gt=de.predecessors(Je);gt.length&&(Ke=de.node(gt[0]).order,he(Ne,Ve,tt,ze,Ke),Ve=tt,ze=Ke)}he(Ne,Ve,Ne.length,Ke,Se.length)}),Ne}return He.reduce(ve,pe),xe}function Oe(de,ve){if(de.node(ve).dummy)return He.find(de.predecessors(ve),function(xe){return de.node(xe).dummy})}function we(de,ve,xe){if(ve>xe){var he=ve;ve=xe,xe=he}var pe=de[ve];pe||(de[ve]=pe={}),pe[xe]=!0}function Te(de,ve,xe){if(ve>xe){var he=ve;ve=xe,xe=he}return He.has(de[ve],xe)}function Re(de,ve,xe,he){var pe={},Se={},Ne={};return He.forEach(ve,function(ze){He.forEach(ze,function(Ke,Ve){pe[Ke]=Ke,Se[Ke]=Ke,Ne[Ke]=Ve})}),He.forEach(ve,function(ze){var Ke=-1;He.forEach(ze,function(Ve){var Je=he(Ve);if(Je.length){Je=He.sortBy(Je,function(At){return Ne[At]});for(var tt=(Je.length-1)/2,gt=Math.floor(tt),st=Math.ceil(tt);gt<=st;++gt){var St=Je[gt];Se[Ve]===Ve&&KeKe.lim&&(Ve=Ke,Je=!0);var tt=He.filter(he.edges(),function(gt){return Je===ve(xe,xe.node(gt.v),Ve)&&Je!==ve(xe,xe.node(gt.w),Ve)});return He.minBy(tt,function(gt){return Ge(he,gt)})}function ae(xe,he,pe,Se){var Ne=pe.v,ze=pe.w;xe.removeEdge(Ne,ze),xe.setEdge(Se.v,Se.w,{}),Pe(xe),Re(xe,he),fe(xe,he)}function fe(xe,he){var pe=He.find(xe.nodes(),function(Ne){return!he.node(Ne).parent}),Se=Ze(xe,pe);Se=Se.slice(1),He.forEach(Se,function(Ne){var ze=xe.node(Ne).parent,Ke=he.edge(Ne,ze),Ve=!1;Ke||(Ke=he.edge(ze,Ne),Ve=!0),he.node(Ne).rank=he.node(ze).rank+(Ve?Ke.minlen:-Ke.minlen)})}function de(xe,he,pe){return xe.hasEdge(he,pe)}function ve(xe,he,pe){return pe.low<=he.lim&&he.lim<=pe.lim}},2416:function(sn,an,Be){"use strict";var He=Be(72361);sn.exports={longestPath:et,slack:Ge};function et(ke){var Ze={};function Oe(we){var Te=ke.node(we);if(He.has(Ze,we))return Te.rank;Ze[we]=!0;var Re=He.min(He.map(ke.outEdges(we),function(Ie){return Oe(Ie.w)-ke.edge(Ie).minlen}));return(Re===Number.POSITIVE_INFINITY||Re===void 0||Re===null)&&(Re=0),Te.rank=Re}He.forEach(ke.sources(),Oe)}function Ge(ke,Ze){return ke.node(Ze.w).rank-ke.node(Ze.v).rank-ke.edge(Ze).minlen}},53063:function(sn,an,Be){"use strict";var He=Be(72361),et=Be(76626).Graph;sn.exports={addDummyNode:Ge,simplify:ke,asNonCompoundGraph:Ze,successorWeights:Oe,predecessorWeights:we,intersectRect:Te,buildLayerMatrix:Re,normalizeRanks:Ie,removeEmptyRanks:be,addBorderNode:Pe,maxRank:je,partition:ye,time:ie,notime:ae};function Ge(fe,de,ve,xe){var he;do he=He.uniqueId(xe);while(fe.hasNode(he));return ve.dummy=de,fe.setNode(he,ve),he}function ke(fe){var de=new et().setGraph(fe.graph());return He.forEach(fe.nodes(),function(ve){de.setNode(ve,fe.node(ve))}),He.forEach(fe.edges(),function(ve){var xe=de.edge(ve.v,ve.w)||{weight:0,minlen:1},he=fe.edge(ve);de.setEdge(ve.v,ve.w,{weight:xe.weight+he.weight,minlen:Math.max(xe.minlen,he.minlen)})}),de}function Ze(fe){var de=new et({multigraph:fe.isMultigraph()}).setGraph(fe.graph());return He.forEach(fe.nodes(),function(ve){fe.children(ve).length||de.setNode(ve,fe.node(ve))}),He.forEach(fe.edges(),function(ve){de.setEdge(ve,fe.edge(ve))}),de}function Oe(fe){var de=He.map(fe.nodes(),function(ve){var xe={};return He.forEach(fe.outEdges(ve),function(he){xe[he.w]=(xe[he.w]||0)+fe.edge(he).weight}),xe});return He.zipObject(fe.nodes(),de)}function we(fe){var de=He.map(fe.nodes(),function(ve){var xe={};return He.forEach(fe.inEdges(ve),function(he){xe[he.v]=(xe[he.v]||0)+fe.edge(he).weight}),xe});return He.zipObject(fe.nodes(),de)}function Te(fe,de){var ve=fe.x,xe=fe.y,he=de.x-ve,pe=de.y-xe,Se=fe.width/2,Ne=fe.height/2;if(!he&&!pe)throw new Error("Not possible to find intersection inside of the rectangle");var ze,Ke;return Math.abs(pe)*Se>Math.abs(he)*Ne?(pe<0&&(Ne=-Ne),ze=Ne*he/pe,Ke=Ne):(he<0&&(Se=-Se),ze=Se,Ke=Se*pe/he),{x:ve+ze,y:xe+Ke}}function Re(fe){var de=He.map(He.range(je(fe)+1),function(){return[]});return He.forEach(fe.nodes(),function(ve){var xe=fe.node(ve),he=xe.rank;He.isUndefined(he)||(de[he][xe.order]=ve)}),de}function Ie(fe){var de=He.min(He.map(fe.nodes(),function(ve){return fe.node(ve).rank}));He.forEach(fe.nodes(),function(ve){var xe=fe.node(ve);He.has(xe,"rank")&&(xe.rank-=de)})}function be(fe){var de=He.min(He.map(fe.nodes(),function(pe){return fe.node(pe).rank})),ve=[];He.forEach(fe.nodes(),function(pe){var Se=fe.node(pe).rank-de;ve[Se]||(ve[Se]=[]),ve[Se].push(pe)});var xe=0,he=fe.graph().nodeRankFactor;He.forEach(ve,function(pe,Se){He.isUndefined(pe)&&Se%he!==0?--xe:xe&&He.forEach(pe,function(Ne){fe.node(Ne).rank+=xe})})}function Pe(fe,de,ve,xe){var he={width:0,height:0};return arguments.length>=4&&(he.rank=ve,he.order=xe),Ge(fe,"border",he,de)}function je(fe){return He.max(He.map(fe.nodes(),function(de){var ve=fe.node(de).rank;if(!He.isUndefined(ve))return ve}))}function ye(fe,de){var ve={lhs:[],rhs:[]};return He.forEach(fe,function(xe){de(xe)?ve.lhs.push(xe):ve.rhs.push(xe)}),ve}function ie(fe,de){var ve=He.now();try{return de()}finally{console.log(fe+" time: "+(He.now()-ve)+"ms")}}function ae(fe,de){return de()}},11897:function(sn){sn.exports="0.8.5"},97774:function(sn,an,Be){"use strict";Object.defineProperty(an,"__esModule",{value:!0}),an.default=void 0;var He=Object.assign||function(ae){for(var fe=1;fe0&&(ze=1/Math.sqrt(ze),he[0]=pe[0]*ze,he[1]=pe[1]*ze),he},je.dot=function(he,pe){return he[0]*pe[0]+he[1]*pe[1]},je.cross=function(he,pe,Se){var Ne=pe[0]*Se[1]-pe[1]*Se[0];return he[0]=he[1]=0,he[2]=Ne,he},je.lerp=function(he,pe,Se,Ne){var ze=pe[0],Ke=pe[1];return he[0]=ze+Ne*(Se[0]-ze),he[1]=Ke+Ne*(Se[1]-Ke),he},je.random=function(he,pe){pe=pe||1;var Se=Ie()*2*Math.PI;return he[0]=Math.cos(Se)*pe,he[1]=Math.sin(Se)*pe,he},je.transformMat2=function(he,pe,Se){var Ne=pe[0],ze=pe[1];return he[0]=Se[0]*Ne+Se[2]*ze,he[1]=Se[1]*Ne+Se[3]*ze,he},je.transformMat2d=function(he,pe,Se){var Ne=pe[0],ze=pe[1];return he[0]=Se[0]*Ne+Se[2]*ze+Se[4],he[1]=Se[1]*Ne+Se[3]*ze+Se[5],he},je.transformMat3=function(he,pe,Se){var Ne=pe[0],ze=pe[1];return he[0]=Se[0]*Ne+Se[3]*ze+Se[6],he[1]=Se[1]*Ne+Se[4]*ze+Se[7],he},je.transformMat4=function(he,pe,Se){var Ne=pe[0],ze=pe[1];return he[0]=Se[0]*Ne+Se[4]*ze+Se[12],he[1]=Se[1]*Ne+Se[5]*ze+Se[13],he},je.forEach=function(){var he=je.create();return function(pe,Se,Ne,ze,Ke,Ve){var Je,tt;for(Se||(Se=2),Ne||(Ne=0),ze?tt=Math.min(ze*Se+Ne,pe.length):tt=pe.length,Je=Ne;Je0&&(Ke=1/Math.sqrt(Ke),he[0]=pe[0]*Ke,he[1]=pe[1]*Ke,he[2]=pe[2]*Ke),he},ye.dot=function(he,pe){return he[0]*pe[0]+he[1]*pe[1]+he[2]*pe[2]},ye.cross=function(he,pe,Se){var Ne=pe[0],ze=pe[1],Ke=pe[2],Ve=Se[0],Je=Se[1],tt=Se[2];return he[0]=ze*tt-Ke*Je,he[1]=Ke*Ve-Ne*tt,he[2]=Ne*Je-ze*Ve,he},ye.lerp=function(he,pe,Se,Ne){var ze=pe[0],Ke=pe[1],Ve=pe[2];return he[0]=ze+Ne*(Se[0]-ze),he[1]=Ke+Ne*(Se[1]-Ke),he[2]=Ve+Ne*(Se[2]-Ve),he},ye.random=function(he,pe){pe=pe||1;var Se=Ie()*2*Math.PI,Ne=Ie()*2-1,ze=Math.sqrt(1-Ne*Ne)*pe;return he[0]=Math.cos(Se)*ze,he[1]=Math.sin(Se)*ze,he[2]=Ne*pe,he},ye.transformMat4=function(he,pe,Se){var Ne=pe[0],ze=pe[1],Ke=pe[2],Ve=Se[3]*Ne+Se[7]*ze+Se[11]*Ke+Se[15];return Ve=Ve||1,he[0]=(Se[0]*Ne+Se[4]*ze+Se[8]*Ke+Se[12])/Ve,he[1]=(Se[1]*Ne+Se[5]*ze+Se[9]*Ke+Se[13])/Ve,he[2]=(Se[2]*Ne+Se[6]*ze+Se[10]*Ke+Se[14])/Ve,he},ye.transformMat3=function(he,pe,Se){var Ne=pe[0],ze=pe[1],Ke=pe[2];return he[0]=Ne*Se[0]+ze*Se[3]+Ke*Se[6],he[1]=Ne*Se[1]+ze*Se[4]+Ke*Se[7],he[2]=Ne*Se[2]+ze*Se[5]+Ke*Se[8],he},ye.transformQuat=function(he,pe,Se){var Ne=pe[0],ze=pe[1],Ke=pe[2],Ve=Se[0],Je=Se[1],tt=Se[2],gt=Se[3],st=gt*Ne+Je*Ke-tt*ze,St=gt*ze+tt*Ne-Ve*Ke,At=gt*Ke+Ve*ze-Je*Ne,vt=-Ve*Ne-Je*ze-tt*Ke;return he[0]=st*gt+vt*-Ve+St*-tt-At*-Je,he[1]=St*gt+vt*-Je+At*-Ve-st*-tt,he[2]=At*gt+vt*-tt+st*-Je-St*-Ve,he},ye.rotateX=function(he,pe,Se,Ne){var ze=[],Ke=[];return ze[0]=pe[0]-Se[0],ze[1]=pe[1]-Se[1],ze[2]=pe[2]-Se[2],Ke[0]=ze[0],Ke[1]=ze[1]*Math.cos(Ne)-ze[2]*Math.sin(Ne),Ke[2]=ze[1]*Math.sin(Ne)+ze[2]*Math.cos(Ne),he[0]=Ke[0]+Se[0],he[1]=Ke[1]+Se[1],he[2]=Ke[2]+Se[2],he},ye.rotateY=function(he,pe,Se,Ne){var ze=[],Ke=[];return ze[0]=pe[0]-Se[0],ze[1]=pe[1]-Se[1],ze[2]=pe[2]-Se[2],Ke[0]=ze[2]*Math.sin(Ne)+ze[0]*Math.cos(Ne),Ke[1]=ze[1],Ke[2]=ze[2]*Math.cos(Ne)-ze[0]*Math.sin(Ne),he[0]=Ke[0]+Se[0],he[1]=Ke[1]+Se[1],he[2]=Ke[2]+Se[2],he},ye.rotateZ=function(he,pe,Se,Ne){var ze=[],Ke=[];return ze[0]=pe[0]-Se[0],ze[1]=pe[1]-Se[1],ze[2]=pe[2]-Se[2],Ke[0]=ze[0]*Math.cos(Ne)-ze[1]*Math.sin(Ne),Ke[1]=ze[0]*Math.sin(Ne)+ze[1]*Math.cos(Ne),Ke[2]=ze[2],he[0]=Ke[0]+Se[0],he[1]=Ke[1]+Se[1],he[2]=Ke[2]+Se[2],he},ye.forEach=function(){var he=ye.create();return function(pe,Se,Ne,ze,Ke,Ve){var Je,tt;for(Se||(Se=3),Ne||(Ne=0),ze?tt=Math.min(ze*Se+Ne,pe.length):tt=pe.length,Je=Ne;Je1?0:Math.acos(ze)},ye.str=function(he){return"vec3("+he[0]+", "+he[1]+", "+he[2]+")"},typeof we!="undefined"&&(we.vec3=ye);var ie={};ie.create=function(){var he=new Re(4);return he[0]=0,he[1]=0,he[2]=0,he[3]=0,he},ie.clone=function(he){var pe=new Re(4);return pe[0]=he[0],pe[1]=he[1],pe[2]=he[2],pe[3]=he[3],pe},ie.fromValues=function(he,pe,Se,Ne){var ze=new Re(4);return ze[0]=he,ze[1]=pe,ze[2]=Se,ze[3]=Ne,ze},ie.copy=function(he,pe){return he[0]=pe[0],he[1]=pe[1],he[2]=pe[2],he[3]=pe[3],he},ie.set=function(he,pe,Se,Ne,ze){return he[0]=pe,he[1]=Se,he[2]=Ne,he[3]=ze,he},ie.add=function(he,pe,Se){return he[0]=pe[0]+Se[0],he[1]=pe[1]+Se[1],he[2]=pe[2]+Se[2],he[3]=pe[3]+Se[3],he},ie.subtract=function(he,pe,Se){return he[0]=pe[0]-Se[0],he[1]=pe[1]-Se[1],he[2]=pe[2]-Se[2],he[3]=pe[3]-Se[3],he},ie.sub=ie.subtract,ie.multiply=function(he,pe,Se){return he[0]=pe[0]*Se[0],he[1]=pe[1]*Se[1],he[2]=pe[2]*Se[2],he[3]=pe[3]*Se[3],he},ie.mul=ie.multiply,ie.divide=function(he,pe,Se){return he[0]=pe[0]/Se[0],he[1]=pe[1]/Se[1],he[2]=pe[2]/Se[2],he[3]=pe[3]/Se[3],he},ie.div=ie.divide,ie.min=function(he,pe,Se){return he[0]=Math.min(pe[0],Se[0]),he[1]=Math.min(pe[1],Se[1]),he[2]=Math.min(pe[2],Se[2]),he[3]=Math.min(pe[3],Se[3]),he},ie.max=function(he,pe,Se){return he[0]=Math.max(pe[0],Se[0]),he[1]=Math.max(pe[1],Se[1]),he[2]=Math.max(pe[2],Se[2]),he[3]=Math.max(pe[3],Se[3]),he},ie.scale=function(he,pe,Se){return he[0]=pe[0]*Se,he[1]=pe[1]*Se,he[2]=pe[2]*Se,he[3]=pe[3]*Se,he},ie.scaleAndAdd=function(he,pe,Se,Ne){return he[0]=pe[0]+Se[0]*Ne,he[1]=pe[1]+Se[1]*Ne,he[2]=pe[2]+Se[2]*Ne,he[3]=pe[3]+Se[3]*Ne,he},ie.distance=function(he,pe){var Se=pe[0]-he[0],Ne=pe[1]-he[1],ze=pe[2]-he[2],Ke=pe[3]-he[3];return Math.sqrt(Se*Se+Ne*Ne+ze*ze+Ke*Ke)},ie.dist=ie.distance,ie.squaredDistance=function(he,pe){var Se=pe[0]-he[0],Ne=pe[1]-he[1],ze=pe[2]-he[2],Ke=pe[3]-he[3];return Se*Se+Ne*Ne+ze*ze+Ke*Ke},ie.sqrDist=ie.squaredDistance,ie.length=function(he){var pe=he[0],Se=he[1],Ne=he[2],ze=he[3];return Math.sqrt(pe*pe+Se*Se+Ne*Ne+ze*ze)},ie.len=ie.length,ie.squaredLength=function(he){var pe=he[0],Se=he[1],Ne=he[2],ze=he[3];return pe*pe+Se*Se+Ne*Ne+ze*ze},ie.sqrLen=ie.squaredLength,ie.negate=function(he,pe){return he[0]=-pe[0],he[1]=-pe[1],he[2]=-pe[2],he[3]=-pe[3],he},ie.inverse=function(he,pe){return he[0]=1/pe[0],he[1]=1/pe[1],he[2]=1/pe[2],he[3]=1/pe[3],he},ie.normalize=function(he,pe){var Se=pe[0],Ne=pe[1],ze=pe[2],Ke=pe[3],Ve=Se*Se+Ne*Ne+ze*ze+Ke*Ke;return Ve>0&&(Ve=1/Math.sqrt(Ve),he[0]=pe[0]*Ve,he[1]=pe[1]*Ve,he[2]=pe[2]*Ve,he[3]=pe[3]*Ve),he},ie.dot=function(he,pe){return he[0]*pe[0]+he[1]*pe[1]+he[2]*pe[2]+he[3]*pe[3]},ie.lerp=function(he,pe,Se,Ne){var ze=pe[0],Ke=pe[1],Ve=pe[2],Je=pe[3];return he[0]=ze+Ne*(Se[0]-ze),he[1]=Ke+Ne*(Se[1]-Ke),he[2]=Ve+Ne*(Se[2]-Ve),he[3]=Je+Ne*(Se[3]-Je),he},ie.random=function(he,pe){return pe=pe||1,he[0]=Ie(),he[1]=Ie(),he[2]=Ie(),he[3]=Ie(),ie.normalize(he,he),ie.scale(he,he,pe),he},ie.transformMat4=function(he,pe,Se){var Ne=pe[0],ze=pe[1],Ke=pe[2],Ve=pe[3];return he[0]=Se[0]*Ne+Se[4]*ze+Se[8]*Ke+Se[12]*Ve,he[1]=Se[1]*Ne+Se[5]*ze+Se[9]*Ke+Se[13]*Ve,he[2]=Se[2]*Ne+Se[6]*ze+Se[10]*Ke+Se[14]*Ve,he[3]=Se[3]*Ne+Se[7]*ze+Se[11]*Ke+Se[15]*Ve,he},ie.transformQuat=function(he,pe,Se){var Ne=pe[0],ze=pe[1],Ke=pe[2],Ve=Se[0],Je=Se[1],tt=Se[2],gt=Se[3],st=gt*Ne+Je*Ke-tt*ze,St=gt*ze+tt*Ne-Ve*Ke,At=gt*Ke+Ve*ze-Je*Ne,vt=-Ve*Ne-Je*ze-tt*Ke;return he[0]=st*gt+vt*-Ve+St*-tt-At*-Je,he[1]=St*gt+vt*-Je+At*-Ve-st*-tt,he[2]=At*gt+vt*-tt+st*-Je-St*-Ve,he},ie.forEach=function(){var he=ie.create();return function(pe,Se,Ne,ze,Ke,Ve){var Je,tt;for(Se||(Se=4),Ne||(Ne=0),ze?tt=Math.min(ze*Se+Ne,pe.length):tt=pe.length,Je=Ne;Je.999999?(Ne[0]=0,Ne[1]=0,Ne[2]=0,Ne[3]=1,Ne):(ye.cross(he,ze,Ke),Ne[0]=he[0],Ne[1]=he[1],Ne[2]=he[2],Ne[3]=1+Ve,xe.normalize(Ne,Ne))}}(),xe.setAxes=function(){var he=de.create();return function(pe,Se,Ne,ze){return he[0]=Ne[0],he[3]=Ne[1],he[6]=Ne[2],he[1]=ze[0],he[4]=ze[1],he[7]=ze[2],he[2]=-Se[0],he[5]=-Se[1],he[8]=-Se[2],xe.normalize(pe,xe.fromMat3(pe,he))}}(),xe.clone=ie.clone,xe.fromValues=ie.fromValues,xe.copy=ie.copy,xe.set=ie.set,xe.identity=function(he){return he[0]=0,he[1]=0,he[2]=0,he[3]=1,he},xe.setAxisAngle=function(he,pe,Se){Se=Se*.5;var Ne=Math.sin(Se);return he[0]=Ne*pe[0],he[1]=Ne*pe[1],he[2]=Ne*pe[2],he[3]=Math.cos(Se),he},xe.add=ie.add,xe.multiply=function(he,pe,Se){var Ne=pe[0],ze=pe[1],Ke=pe[2],Ve=pe[3],Je=Se[0],tt=Se[1],gt=Se[2],st=Se[3];return he[0]=Ne*st+Ve*Je+ze*gt-Ke*tt,he[1]=ze*st+Ve*tt+Ke*Je-Ne*gt,he[2]=Ke*st+Ve*gt+Ne*tt-ze*Je,he[3]=Ve*st-Ne*Je-ze*tt-Ke*gt,he},xe.mul=xe.multiply,xe.scale=ie.scale,xe.rotateX=function(he,pe,Se){Se*=.5;var Ne=pe[0],ze=pe[1],Ke=pe[2],Ve=pe[3],Je=Math.sin(Se),tt=Math.cos(Se);return he[0]=Ne*tt+Ve*Je,he[1]=ze*tt+Ke*Je,he[2]=Ke*tt-ze*Je,he[3]=Ve*tt-Ne*Je,he},xe.rotateY=function(he,pe,Se){Se*=.5;var Ne=pe[0],ze=pe[1],Ke=pe[2],Ve=pe[3],Je=Math.sin(Se),tt=Math.cos(Se);return he[0]=Ne*tt-Ke*Je,he[1]=ze*tt+Ve*Je,he[2]=Ke*tt+Ne*Je,he[3]=Ve*tt-ze*Je,he},xe.rotateZ=function(he,pe,Se){Se*=.5;var Ne=pe[0],ze=pe[1],Ke=pe[2],Ve=pe[3],Je=Math.sin(Se),tt=Math.cos(Se);return he[0]=Ne*tt+ze*Je,he[1]=ze*tt-Ne*Je,he[2]=Ke*tt+Ve*Je,he[3]=Ve*tt-Ke*Je,he},xe.calculateW=function(he,pe){var Se=pe[0],Ne=pe[1],ze=pe[2];return he[0]=Se,he[1]=Ne,he[2]=ze,he[3]=Math.sqrt(Math.abs(1-Se*Se-Ne*Ne-ze*ze)),he},xe.dot=ie.dot,xe.lerp=ie.lerp,xe.slerp=function(he,pe,Se,Ne){var ze=pe[0],Ke=pe[1],Ve=pe[2],Je=pe[3],tt=Se[0],gt=Se[1],st=Se[2],St=Se[3],At,vt,Tt,bt,Et;return vt=ze*tt+Ke*gt+Ve*st+Je*St,vt<0&&(vt=-vt,tt=-tt,gt=-gt,st=-st,St=-St),1-vt>1e-6?(At=Math.acos(vt),Tt=Math.sin(At),bt=Math.sin((1-Ne)*At)/Tt,Et=Math.sin(Ne*At)/Tt):(bt=1-Ne,Et=Ne),he[0]=bt*ze+Et*tt,he[1]=bt*Ke+Et*gt,he[2]=bt*Ve+Et*st,he[3]=bt*Je+Et*St,he},xe.invert=function(he,pe){var Se=pe[0],Ne=pe[1],ze=pe[2],Ke=pe[3],Ve=Se*Se+Ne*Ne+ze*ze+Ke*Ke,Je=Ve?1/Ve:0;return he[0]=-Se*Je,he[1]=-Ne*Je,he[2]=-ze*Je,he[3]=Ke*Je,he},xe.conjugate=function(he,pe){return he[0]=-pe[0],he[1]=-pe[1],he[2]=-pe[2],he[3]=pe[3],he},xe.length=ie.length,xe.len=xe.length,xe.squaredLength=ie.squaredLength,xe.sqrLen=xe.squaredLength,xe.normalize=ie.normalize,xe.fromMat3=function(he,pe){var Se=pe[0]+pe[4]+pe[8],Ne;if(Se>0)Ne=Math.sqrt(Se+1),he[3]=.5*Ne,Ne=.5/Ne,he[0]=(pe[5]-pe[7])*Ne,he[1]=(pe[6]-pe[2])*Ne,he[2]=(pe[1]-pe[3])*Ne;else{var ze=0;pe[4]>pe[0]&&(ze=1),pe[8]>pe[ze*3+ze]&&(ze=2);var Ke=(ze+1)%3,Ve=(ze+2)%3;Ne=Math.sqrt(pe[ze*3+ze]-pe[Ke*3+Ke]-pe[Ve*3+Ve]+1),he[ze]=.5*Ne,Ne=.5/Ne,he[3]=(pe[Ke*3+Ve]-pe[Ve*3+Ke])*Ne,he[Ke]=(pe[Ke*3+ze]+pe[ze*3+Ke])*Ne,he[Ve]=(pe[Ve*3+ze]+pe[ze*3+Ve])*Ne}return he},xe.str=function(he){return"quat("+he[0]+", "+he[1]+", "+he[2]+", "+he[3]+")"},typeof we!="undefined"&&(we.quat=xe)}(Oe.exports)})(this)},function(et,Ge,ke){"use strict";var Ze=ke(24),Oe=ke(46),we=ke(5),Te=ke(6),Re=ke(7),Ie=ke(17),be=ke(28),Pe=ke(13),je=ke(0),ye=ke.n(je),ie=ke(29),ae=ke(53),fe=ke.n(ae),de=ke(54),ve=ke(106),xe=ke(107),he=ke(113),pe=ke(114),Se=ke(3),Ne=ke(68),ze=ke(37),Ke=ke(69),Ve=ke(116),Je=ke(70),tt=ke(71),gt=ke(72),st=ke(36),St=ke(30),At=ke(23),vt=ke(4),Tt=ke(117),bt=ke(50),Et=ke(118),lt=ke(119),Nt=ke(120),Zt=ke(9),Ut=ke(67),Ft=ke(49),Yt=ke(15),dn=ke(52),Dn=ke(121),Rn=ke(126),Zn=ke(63),ln=ke(127),Gn=ke(128),Wn=ke(129),qt=ke(130),xt=ke(131),ft=ke(132);ye.a.util.extend(be.a.prototype,Dn.a),Re.a.import(Rn.a),Re.a.import(Zn.a),Re.a.import(ln.a),Re.a.import(Gn.a),Re.a.import(Wn.a),Re.a.import(qt.a),Re.a.import(xt.a),Re.a.import(ft.a);function Bt(Jt){return!Jt||Jt==="none"}function Ot(Jt){return Jt instanceof HTMLCanvasElement||Jt instanceof HTMLImageElement||Jt instanceof Image}function ut(Jt){return Jt.getZr&&Jt.setOption}var It=ie.a.prototype.addToScene,nn=ie.a.prototype.removeFromScene;ie.a.prototype.addToScene=function(Jt){if(It.call(this,Jt),this.__zr){var xn=this.__zr;Jt.traverse(function(Qn){Qn.__zr=xn,Qn.addAnimatorsToZr&&Qn.addAnimatorsToZr(xn)})}},ie.a.prototype.removeFromScene=function(Jt){nn.call(this,Jt),Jt.traverse(function(xn){var Qn=xn.__zr;xn.__zr=null,Qn&&xn.removeAnimatorsFromZr&&xn.removeAnimatorsFromZr(Qn)})},Ie.a.prototype.setTextureImage=function(Jt,xn,Qn,rr){if(this.shader){var Jn=Qn.getZr(),mr=this,Rr;return mr.autoUpdateTextureStatus=!1,mr.disableTexture(Jt),Bt(xn)||(Rr=Pt.loadTexture(xn,Qn,rr,function(Tn){mr.enableTexture(Jt),Jn&&Jn.refresh()}),mr.set(Jt,Rr)),Rr}};var Pt={};Pt.Renderer=Oe.a,Pt.Node=be.a,Pt.Mesh=Ze.a,Pt.Shader=Re.a,Pt.Material=Ie.a,Pt.Texture=Te.a,Pt.Texture2D=we.a,Pt.Geometry=Pe.a,Pt.SphereGeometry=Ne.a,Pt.PlaneGeometry=ze.a,Pt.CubeGeometry=Ke.a,Pt.AmbientLight=Ve.a,Pt.DirectionalLight=Je.a,Pt.PointLight=tt.a,Pt.SpotLight=gt.a,Pt.PerspectiveCamera=st.a,Pt.OrthographicCamera=St.a,Pt.Vector2=At.a,Pt.Vector3=vt.a,Pt.Vector4=Tt.a,Pt.Quaternion=bt.a,Pt.Matrix2=Et.a,Pt.Matrix2d=lt.a,Pt.Matrix3=Nt.a,Pt.Matrix4=Zt.a,Pt.Plane=Ut.a,Pt.Ray=Ft.a,Pt.BoundingBox=Yt.a,Pt.Frustum=dn.a;var Vt=de.a.createBlank("rgba(255,255,255,0)").image;function on(Jt){return Math.pow(2,Math.round(Math.log(Jt)/Math.LN2))}function $t(Jt){if((Jt.wrapS===Te.a.REPEAT||Jt.wrapT===Te.a.REPEAT)&&Jt.image){var xn=on(Jt.width),Qn=on(Jt.height);if(xn!==Jt.width||Qn!==Jt.height){var rr=document.createElement("canvas");rr.width=xn,rr.height=Qn;var Jn=rr.getContext("2d");Jn.drawImage(Jt.image,0,0,xn,Qn),Jt.image=rr}}}Pt.loadTexture=function(Jt,xn,Qn,rr){typeof Qn=="function"&&(rr=Qn,Qn={}),Qn=Qn||{};for(var Jn=Object.keys(Qn).sort(),mr="",Rr=0;Rr3?xn[3]=Jt[3]:xn[3]=1,xn):(xn=ye.a.color.parse(Jt||"#000",xn)||[0,0,0,0],xn[0]/=255,xn[1]/=255,xn[2]/=255,xn)},Pt.directionFromAlphaBeta=function(Jt,xn){var Qn=Jt/180*Math.PI+Math.PI/2,rr=-xn/180*Math.PI+Math.PI/2,Jn=[],mr=Math.sin(Qn);return Jn[0]=mr*Math.cos(rr),Jn[1]=-Math.cos(Qn),Jn[2]=mr*Math.sin(rr),Jn},Pt.getShadowResolution=function(Jt){var xn=1024;switch(Jt){case"low":xn=512;break;case"medium":break;case"high":xn=2048;break;case"ultra":xn=4096;break}return xn},Pt.COMMON_SHADERS=["lambert","color","realistic","hatching"],Pt.createShader=function(Jt){var xn=Re.a.source(Jt+".vertex"),Qn=Re.a.source(Jt+".fragment");xn||console.error("Vertex shader of '%s' not exits",Jt),Qn||console.error("Fragment shader of '%s' not exits",Jt);var rr=new Re.a(xn,Qn);return rr.name=Jt,rr},Pt.createMaterial=function(Jt,xn){xn instanceof Array||(xn=[xn]);var Qn=Pt.createShader(Jt),rr=new Ie.a({shader:Qn});return xn.forEach(function(Jn){typeof Jn=="string"&&rr.define(Jn)}),rr},Pt.setMaterialFromModel=function(Jt,xn,Qn,rr){xn.autoUpdateTextureStatus=!1;var Jn=Qn.getModel(Jt+"Material"),mr=Jn.get("detailTexture"),Rr=Se.a.firstNotNull(Jn.get("textureTiling"),1),Tn=Se.a.firstNotNull(Jn.get("textureOffset"),0);typeof Rr=="number"&&(Rr=[Rr,Rr]),typeof Tn=="number"&&(Tn=[Tn,Tn]);var hr=Rr[0]>1||Rr[1]>1?Pt.Texture.REPEAT:Pt.Texture.CLAMP_TO_EDGE,or={anisotropic:8,wrapS:hr,wrapT:hr};if(Jt==="realistic"){var yr=Jn.get("roughness"),ti=Jn.get("metalness");ti!=null?isNaN(ti)&&(xn.setTextureImage("metalnessMap",ti,rr,or),ti=Se.a.firstNotNull(Jn.get("metalnessAdjust"),.5)):ti=0,yr!=null?isNaN(yr)&&(xn.setTextureImage("roughnessMap",yr,rr,or),yr=Se.a.firstNotNull(Jn.get("roughnessAdjust"),.5)):yr=.5;var mi=Jn.get("normalTexture");xn.setTextureImage("detailMap",mr,rr,or),xn.setTextureImage("normalMap",mi,rr,or),xn.set({roughness:yr,metalness:ti,detailUvRepeat:Rr,detailUvOffset:Tn})}else if(Jt==="lambert")xn.setTextureImage("detailMap",mr,rr,or),xn.set({detailUvRepeat:Rr,detailUvOffset:Tn});else if(Jt==="color")xn.setTextureImage("detailMap",mr,rr,or),xn.set({detailUvRepeat:Rr,detailUvOffset:Tn});else if(Jt==="hatching"){var di=Jn.get("hatchingTextures")||[];di.length<6&&console.error("Invalid hatchingTextures.");for(var Pi=0;Pi<6;Pi++)xn.setTextureImage("hatch"+(Pi+1),di[Pi],rr,{anisotropic:8,wrapS:Pt.Texture.REPEAT,wrapT:Pt.Texture.REPEAT});xn.set({detailUvRepeat:Rr,detailUvOffset:Tn})}},Pt.updateVertexAnimation=function(Jt,xn,Qn,rr){var Jn=rr.get("animation"),mr=rr.get("animationDurationUpdate"),Rr=rr.get("animationEasingUpdate"),Tn=Qn.shadowDepthMaterial;if(Jn&&xn&&mr>0&&xn.geometry.vertexCount===Qn.geometry.vertexCount){Qn.material.define("vertex","VERTEX_ANIMATION"),Qn.ignorePreZ=!0,Tn&&Tn.define("vertex","VERTEX_ANIMATION");for(var hr=0;hrfe?fe:ie}var Pe=Math.atan2,je=Math.asin,ye=Math.abs;Te.eulerFromQuat=function(ie,ae,Ve){ie._dirty=!0,ae=ae.array;var de=ie.array,ve=ae[0],xe=ae[1],he=ae[2],pe=ae[3],Se=ve*ve,Ne=xe*xe,ze=he*he,Ke=pe*pe,Ve=(Ve||"XYZ").toUpperCase();switch(Ve){case"XYZ":de[0]=Pe(2*(ve*pe-xe*he),Ke-Se-Ne+ze),de[1]=je(be(2*(ve*he+xe*pe),-1,1)),de[2]=Pe(2*(he*pe-ve*xe),Ke+Se-Ne-ze);break;case"YXZ":de[0]=je(be(2*(ve*pe-xe*he),-1,1)),de[1]=Pe(2*(ve*he+xe*pe),Ke-Se-Ne+ze),de[2]=Pe(2*(ve*xe+he*pe),Ke-Se+Ne-ze);break;case"ZXY":de[0]=je(be(2*(ve*pe+xe*he),-1,1)),de[1]=Pe(2*(xe*pe-he*ve),Ke-Se-Ne+ze),de[2]=Pe(2*(he*pe-ve*xe),Ke-Se+Ne-ze);break;case"ZYX":de[0]=Pe(2*(ve*pe+he*xe),Ke-Se-Ne+ze),de[1]=je(be(2*(xe*pe-ve*he),-1,1)),de[2]=Pe(2*(ve*xe+he*pe),Ke+Se-Ne-ze);break;case"YZX":de[0]=Pe(2*(ve*pe-he*xe),Ke-Se+Ne-ze),de[1]=Pe(2*(xe*pe-ve*he),Ke+Se-Ne-ze),de[2]=je(be(2*(ve*xe+he*pe),-1,1));break;case"XZY":de[0]=Pe(2*(ve*pe+xe*he),Ke-Se+Ne-ze),de[1]=Pe(2*(ve*he+xe*pe),Ke+Se-Ne-ze),de[2]=je(be(2*(he*pe-ve*xe),-1,1));break;default:console.warn("Unkown order: "+Ve)}return ie},Te.eulerFromMat3=function(ie,ae,tt){var de=ae.array,ve=de[0],xe=de[3],he=de[6],pe=de[1],Se=de[4],Ne=de[7],ze=de[2],Ke=de[5],Ve=de[8],Je=ie.array,tt=(tt||"XYZ").toUpperCase();switch(tt){case"XYZ":Je[1]=je(be(he,-1,1)),ye(he)<.99999?(Je[0]=Pe(-Ne,Ve),Je[2]=Pe(-xe,ve)):(Je[0]=Pe(Ke,Se),Je[2]=0);break;case"YXZ":Je[0]=je(-be(Ne,-1,1)),ye(Ne)<.99999?(Je[1]=Pe(he,Ve),Je[2]=Pe(pe,Se)):(Je[1]=Pe(-ze,ve),Je[2]=0);break;case"ZXY":Je[0]=je(be(Ke,-1,1)),ye(Ke)<.99999?(Je[1]=Pe(-ze,Ve),Je[2]=Pe(-xe,Se)):(Je[1]=0,Je[2]=Pe(pe,ve));break;case"ZYX":Je[1]=je(-be(ze,-1,1)),ye(ze)<.99999?(Je[0]=Pe(Ke,Ve),Je[2]=Pe(pe,ve)):(Je[0]=0,Je[2]=Pe(-xe,Se));break;case"YZX":Je[2]=je(be(pe,-1,1)),ye(pe)<.99999?(Je[0]=Pe(-Ne,Se),Je[1]=Pe(-ze,ve)):(Je[0]=0,Je[1]=Pe(he,Ve));break;case"XZY":Je[2]=je(-be(xe,-1,1)),ye(xe)<.99999?(Je[0]=Pe(Ke,Se),Je[1]=Pe(he,ve)):(Je[0]=Pe(-Ne,Ve),Je[1]=0);break;default:console.warn("Unkown order: "+tt)}return ie._dirty=!0,ie},Te.POSITIVE_X=new Te(1,0,0),Te.NEGATIVE_X=new Te(-1,0,0),Te.POSITIVE_Y=new Te(0,1,0),Te.NEGATIVE_Y=new Te(0,-1,0),Te.POSITIVE_Z=new Te(0,0,1),Te.NEGATIVE_Z=new Te(0,0,-1),Te.UP=new Te(0,1,0),Te.ZERO=new Te(0,0,0),Ge.a=Te},function(et,Ge,ke){"use strict";var Ze=ke(6),Oe=ke(11),we=ke(66),Te=we.a.isPowerOfTwo,Re=Ze.a.extend(function(){return{image:null,pixels:null,mipmaps:[]}},{update:function(Ie){var be=Ie.gl;be.bindTexture(be.TEXTURE_2D,this._cache.get("webgl_texture")),this.updateCommon(Ie);var Pe=this.format,je=this.type;be.texParameteri(be.TEXTURE_2D,be.TEXTURE_WRAP_S,this.getAvailableWrapS()),be.texParameteri(be.TEXTURE_2D,be.TEXTURE_WRAP_T,this.getAvailableWrapT()),be.texParameteri(be.TEXTURE_2D,be.TEXTURE_MAG_FILTER,this.getAvailableMagFilter()),be.texParameteri(be.TEXTURE_2D,be.TEXTURE_MIN_FILTER,this.getAvailableMinFilter());var ye=Ie.getGLExtension("EXT_texture_filter_anisotropic");if(ye&&this.anisotropic>1&&be.texParameterf(be.TEXTURE_2D,ye.TEXTURE_MAX_ANISOTROPY_EXT,this.anisotropic),je===36193){var ie=Ie.getGLExtension("OES_texture_half_float");ie||(je=Oe.a.FLOAT)}if(this.mipmaps.length)for(var ae=this.width,fe=this.height,de=0;de=Ze.a.COMPRESSED_RGB_S3TC_DXT1_EXT?Ie.compressedTexImage2D(Ie.TEXTURE_2D,Pe,ie,je,ye,0,be.pixels):Ie.texImage2D(Ie.TEXTURE_2D,Pe,ie,je,ye,0,ie,ae,be.pixels)},generateMipmap:function(Ie){var be=Ie.gl;this.useMipmap&&!this.NPOT&&(be.bindTexture(be.TEXTURE_2D,this._cache.get("webgl_texture")),be.generateMipmap(be.TEXTURE_2D))},isPowerOfTwo:function(){var Ie,be;return this.image?(Ie=this.image.width,be=this.image.height):(Ie=this.width,be=this.height),Te(Ie)&&Te(be)},isRenderable:function(){return this.image?this.image.nodeName==="CANVAS"||this.image.nodeName==="VIDEO"||this.image.complete:!!(this.width&&this.height)},bind:function(Ie){Ie.gl.bindTexture(Ie.gl.TEXTURE_2D,this.getWebGLTexture(Ie))},unbind:function(Ie){Ie.gl.bindTexture(Ie.gl.TEXTURE_2D,null)},load:function(Ie,be){var Pe=new Image;be&&(Pe.crossOrigin=be);var je=this;return Pe.onload=function(){je.dirty(),je.trigger("success",je),Pe.onload=null},Pe.onerror=function(){je.trigger("error",je),Pe.onerror=null},Pe.src=Ie,this.image=Pe,this}});Object.defineProperty(Re.prototype,"width",{get:function(){return this.image?this.image.width:this._width},set:function(Ie){this.image?console.warn("Texture from image can't set width"):(this._width!==Ie&&this.dirty(),this._width=Ie)}}),Object.defineProperty(Re.prototype,"height",{get:function(){return this.image?this.image.height:this._height},set:function(Ie){this.image?console.warn("Texture from image can't set height"):(this._height!==Ie&&this.dirty(),this._height=Ie)}}),Ge.a=Re},function(et,Ge,ke){"use strict";var Ze=ke(8),Oe=ke(11),we=ke(48),Te=Ze.a.extend({width:512,height:512,type:Oe.a.UNSIGNED_BYTE,format:Oe.a.RGBA,wrapS:Oe.a.REPEAT,wrapT:Oe.a.REPEAT,minFilter:Oe.a.LINEAR_MIPMAP_LINEAR,magFilter:Oe.a.LINEAR,useMipmap:!0,anisotropic:1,flipY:!0,sRGB:!0,unpackAlignment:4,premultiplyAlpha:!1,dynamic:!1,NPOT:!1},function(){this._cache=new we.a},{getWebGLTexture:function(Re){var Ie=Re.gl,be=this._cache;return be.use(Re.__uid__),be.miss("webgl_texture")&&be.put("webgl_texture",Ie.createTexture()),this.dynamic?this.update(Re):be.isDirty()&&(this.update(Re),be.fresh()),be.get("webgl_texture")},bind:function(){},unbind:function(){},dirty:function(){this._cache&&this._cache.dirtyAll()},update:function(Re){},updateCommon:function(Re){var Ie=Re.gl;Ie.pixelStorei(Ie.UNPACK_FLIP_Y_WEBGL,this.flipY),Ie.pixelStorei(Ie.UNPACK_PREMULTIPLY_ALPHA_WEBGL,this.premultiplyAlpha),Ie.pixelStorei(Ie.UNPACK_ALIGNMENT,this.unpackAlignment),this.format===Oe.a.DEPTH_COMPONENT&&(this.useMipmap=!1);var be=Re.getGLExtension("EXT_sRGB");this.format===Te.SRGB&&!be&&(this.format=Te.RGB),this.format===Te.SRGB_ALPHA&&!be&&(this.format=Te.RGBA),this.NPOT=!this.isPowerOfTwo()},getAvailableWrapS:function(){return this.NPOT?Oe.a.CLAMP_TO_EDGE:this.wrapS},getAvailableWrapT:function(){return this.NPOT?Oe.a.CLAMP_TO_EDGE:this.wrapT},getAvailableMinFilter:function(){var Re=this.minFilter;return this.NPOT||!this.useMipmap?Re==Oe.a.NEAREST_MIPMAP_NEAREST||Re==Oe.a.NEAREST_MIPMAP_LINEAR?Oe.a.NEAREST:Re==Oe.a.LINEAR_MIPMAP_LINEAR||Re==Oe.a.LINEAR_MIPMAP_NEAREST?Oe.a.LINEAR:Re:Re},getAvailableMagFilter:function(){return this.magFilter},nextHighestPowerOfTwo:function(Re){--Re;for(var Ie=1;Ie<32;Ie<<=1)Re=Re|Re>>Ie;return Re+1},dispose:function(Re){var Ie=this._cache;Ie.use(Re.__uid__);var be=Ie.get("webgl_texture");be&&Re.gl.deleteTexture(be),Ie.deleteContext(Re.__uid__)},isRenderable:function(){},isPowerOfTwo:function(){}});Object.defineProperty(Te.prototype,"width",{get:function(){return this._width},set:function(Re){this._width=Re}}),Object.defineProperty(Te.prototype,"height",{get:function(){return this._height},set:function(Re){this._height=Re}}),Te.BYTE=Oe.a.BYTE,Te.UNSIGNED_BYTE=Oe.a.UNSIGNED_BYTE,Te.SHORT=Oe.a.SHORT,Te.UNSIGNED_SHORT=Oe.a.UNSIGNED_SHORT,Te.INT=Oe.a.INT,Te.UNSIGNED_INT=Oe.a.UNSIGNED_INT,Te.FLOAT=Oe.a.FLOAT,Te.HALF_FLOAT=36193,Te.UNSIGNED_INT_24_8_WEBGL=34042,Te.DEPTH_COMPONENT=Oe.a.DEPTH_COMPONENT,Te.DEPTH_STENCIL=Oe.a.DEPTH_STENCIL,Te.ALPHA=Oe.a.ALPHA,Te.RGB=Oe.a.RGB,Te.RGBA=Oe.a.RGBA,Te.LUMINANCE=Oe.a.LUMINANCE,Te.LUMINANCE_ALPHA=Oe.a.LUMINANCE_ALPHA,Te.SRGB=35904,Te.SRGB_ALPHA=35906,Te.COMPRESSED_RGB_S3TC_DXT1_EXT=33776,Te.COMPRESSED_RGBA_S3TC_DXT1_EXT=33777,Te.COMPRESSED_RGBA_S3TC_DXT3_EXT=33778,Te.COMPRESSED_RGBA_S3TC_DXT5_EXT=33779,Te.NEAREST=Oe.a.NEAREST,Te.LINEAR=Oe.a.LINEAR,Te.NEAREST_MIPMAP_NEAREST=Oe.a.NEAREST_MIPMAP_NEAREST,Te.LINEAR_MIPMAP_NEAREST=Oe.a.LINEAR_MIPMAP_NEAREST,Te.NEAREST_MIPMAP_LINEAR=Oe.a.NEAREST_MIPMAP_LINEAR,Te.LINEAR_MIPMAP_LINEAR=Oe.a.LINEAR_MIPMAP_LINEAR,Te.REPEAT=Oe.a.REPEAT,Te.CLAMP_TO_EDGE=Oe.a.CLAMP_TO_EDGE,Te.MIRRORED_REPEAT=Oe.a.MIRRORED_REPEAT,Ge.a=Te},function(et,Ge,ke){"use strict";var Ze=ke(21),Oe=ke(18),we=ke(1),Te=ke.n(we),Re=Te.a.mat2,Ie=Te.a.mat3,be=Te.a.mat4,Pe=/uniform\s+(bool|float|int|vec2|vec3|vec4|ivec2|ivec3|ivec4|mat2|mat3|mat4|sampler2D|samplerCube)\s+([\w\,]+)?(\[.*?\])?\s*(:\s*([\S\s]+?))?;/g,je=/attribute\s+(float|int|vec2|vec3|vec4)\s+(\w*)\s*(:\s*(\w+))?;/g,ye=/#define\s+(\w+)?(\s+[\w-.]+)?\s*;?\s*\n/g,ie={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"},ae={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 Re.create()},mat3:function(){return Ie.create()},mat4:function(){return be.create()},array:function(){return[]}},fe=["POSITION","NORMAL","BINORMAL","TANGENT","TEXCOORD","TEXCOORD_0","TEXCOORD_1","COLOR","JOINT","WEIGHT"],de=["SKIN_MATRIX","VIEWPORT_SIZE","VIEWPORT","DEVICEPIXELRATIO","WINDOW_SIZE","NEAR","FAR","TIME"],ve=["WORLD","VIEW","PROJECTION","WORLDVIEW","VIEWPROJECTION","WORLDVIEWPROJECTION","WORLDINVERSE","VIEWINVERSE","PROJECTIONINVERSE","WORLDVIEWINVERSE","VIEWPROJECTIONINVERSE","WORLDVIEWPROJECTIONINVERSE","WORLDTRANSPOSE","VIEWTRANSPOSE","PROJECTIONTRANSPOSE","WORLDVIEWTRANSPOSE","VIEWPROJECTIONTRANSPOSE","WORLDVIEWPROJECTIONTRANSPOSE","WORLDINVERSETRANSPOSE","VIEWINVERSETRANSPOSE","PROJECTIONINVERSETRANSPOSE","WORLDVIEWINVERSETRANSPOSE","VIEWPROJECTIONINVERSETRANSPOSE","WORLDVIEWPROJECTIONINVERSETRANSPOSE"],xe={},he={};function pe(Ke,Ve){var Je="vertex:"+Ke+"fragment:"+Ve;if(xe[Je])return xe[Je];var tt=Ze.a.genGUID();return xe[Je]=tt,he[tt]={vertex:Ke,fragment:Ve},tt}function Se(Ke,Ve){typeof Ke=="object"&&(Ve=Ke.fragment,Ke=Ke.vertex),this._shaderID=pe(Ke,Ve),this._vertexCode=Se.parseImport(Ke),this._fragmentCode=Se.parseImport(Ve),this.attributeSemantics={},this.matrixSemantics={},this.uniformSemantics={},this.matrixSemanticKeys=[],this.uniformTemplates={},this.attributes={},this.textures={},this.vertexDefines={},this.fragmentDefines={},this._parseAttributes(),this._parseUniforms(),this._parseDefines()}Se.prototype={constructor:Se,createUniforms:function(){var Ke={};for(var Ve in this.uniformTemplates){var Je=this.uniformTemplates[Ve];Ke[Ve]={type:Je.type,value:Je.value()}}return Ke},_parseImport:function(){this._vertexCode=Se.parseImport(this.vertex),this._fragmentCode=Se.parseImport(this.fragment)},_parseUniforms:function(){var Ke={},Ve=this,Je="vertex";this._uniformList=[],this._vertexCode=this._vertexCode.replace(Pe,tt),Je="fragment",this._fragmentCode=this._fragmentCode.replace(Pe,tt),Ve.matrixSemanticKeys=Object.keys(this.matrixSemantics);function tt(gt,st,St,At,vt,Tt){if(st&&St){var bt=ie[st],Et=!0,lt;if(bt){if(Ve._uniformList.push(St),(st==="sampler2D"||st==="samplerCube")&&(Ve.textures[St]={shaderType:Je,type:st}),At&&(bt+="v"),Tt)if(fe.indexOf(Tt)>=0)Ve.attributeSemantics[Tt]={symbol:St,type:bt},Et=!1;else if(ve.indexOf(Tt)>=0){var Nt=!1,Zt=Tt;Tt.match(/TRANSPOSE$/)&&(Nt=!0,Zt=Tt.slice(0,-9)),Ve.matrixSemantics[Tt]={symbol:St,type:bt,isTranspose:Nt,semanticNoTranspose:Zt},Et=!1}else if(de.indexOf(Tt)>=0)Ve.uniformSemantics[Tt]={symbol:St,type:bt},Et=!1;else if(Tt==="unconfigurable")Et=!1;else if(lt=Ve._parseDefaultValue(st,Tt),lt)Tt="";else throw new Error('Unkown semantic "'+Tt+'"');Et&&(Ke[St]={type:bt,value:At?ae.array:lt||ae[st],semantic:Tt||null})}return["uniform",st,St,At].join(" ")+`; `}}this.uniformTemplates=Ke},_parseDefaultValue:function(Ke,Ve){var Je=/\[\s*(.*)\s*\]/;if(Ke==="vec2"||Ke==="vec3"||Ke==="vec4"){var tt=Je.exec(Ve)[1];if(tt){var gt=tt.split(/\s*,\s*/);return function(){return new Oe.a.Float32Array(gt)}}else return}else{if(Ke==="bool")return function(){return Ve.toLowerCase()==="true"};if(Ke==="float")return function(){return parseFloat(Ve)};if(Ke==="int")return function(){return parseInt(Ve)}}},_parseAttributes:function(){var Ke={},Ve=this;this._vertexCode=this._vertexCode.replace(je,Je);function Je(tt,gt,st,St,At){if(gt&&st){var vt=1;switch(gt){case"vec4":vt=4;break;case"vec3":vt=3;break;case"vec2":vt=2;break;case"float":vt=1;break}if(Ke[st]={type:"float",size:vt,semantic:At||null},At){if(fe.indexOf(At)<0)throw new Error('Unkown semantic "'+At+'"');Ve.attributeSemantics[At]={symbol:st,type:gt}}}return["attribute",gt,st].join(" ")+`; `}this.attributes=Ke},_parseDefines:function(){var Ke=this,Ve="vertex";this._vertexCode=this._vertexCode.replace(ye,Je),Ve="fragment",this._fragmentCode=this._fragmentCode.replace(ye,Je);function Je(tt,gt,st){var St=Ve==="vertex"?Ke.vertexDefines:Ke.fragmentDefines;return St[gt]||(st=="false"?St[gt]=!1:st=="true"?St[gt]=!0:St[gt]=st?isNaN(parseFloat(st))?st.trim():parseFloat(st):null),""}},clone:function(){var Ke=he[this._shaderID],Ve=new Se(Ke.vertex,Ke.fragment);return Ve}},Object.defineProperty&&(Object.defineProperty(Se.prototype,"shaderID",{get:function(){return this._shaderID}}),Object.defineProperty(Se.prototype,"vertex",{get:function(){return this._vertexCode}}),Object.defineProperty(Se.prototype,"fragment",{get:function(){return this._fragmentCode}}),Object.defineProperty(Se.prototype,"uniforms",{get:function(){return this._uniformList}}));var Ne=/(@import)\s*([0-9a-zA-Z_\-\.]*)/g;Se.parseImport=function(Ke){return Ke=Ke.replace(Ne,function(gt,Je,tt){var gt=Se.source(tt);return gt?Se.parseImport(gt):(console.error('Shader chunk "'+tt+'" not existed in library'),"")}),Ke};var ze=/(@export)\s*([0-9a-zA-Z_\-\.]*)\s*\n([\s\S]*?)@end/g;Se.import=function(Ke){Ke.replace(ze,function(Ve,Je,tt,st){var st=st.replace(/(^[\s\t\xa0\u3000]+)|([\u3000\xa0\s\t]+\x24)/g,"");if(st){for(var St=tt.split("."),At=Se.codes,vt=0,Tt;vtJe[0]&&(Je[0]=gt),st>Je[1]&&(Je[1]=st),St>Je[2]&&(Je[2]=St)}ze._dirty=!0,Ke._dirty=!0}},dirty:function(){for(var Se=this.getEnabledAttributes(),Ne=0;Ne=0){Ne||(Ne=ye());var ze=this.indices;return Ne[0]=ze[Se*3],Ne[1]=ze[Se*3+1],Ne[2]=ze[Se*3+2],Ne}},setTriangleIndices:function(Se,Ne){var ze=this.indices;ze[Se*3]=Ne[0],ze[Se*3+1]=Ne[1],ze[Se*3+2]=Ne[2]},isUseIndices:function(){return!!this.indices},initIndicesFromArray:function(Se){var Ne,ze=this.vertexCount>65535?Te.a.Uint32Array:Te.a.Uint16Array;if(Se[0]&&Se[0].length){var Ke=0,Ve=3;Ne=new ze(Se.length*Ve);for(var Je=0;Je=0?(Ne.splice(ze,1),delete this.attributes[Se],!0):!1},getAttribute:function(Se){return this.attributes[Se]},getEnabledAttributes:function(){var Se=this._enabledAttributes,Ne=this._attributeList;if(Se)return Se;for(var ze=[],Ke=this.vertexCount,Ve=0;Ve65535&&(this.indices=new Te.a.Uint32Array(this.indices));for(var Se=this.attributes,Ne=this.indices,ze=this.getEnabledAttributes(),Ke={},Ve=0;Ve=ve.COLOR_ATTACHMENT0&&pe<=ve.COLOR_ATTACHMENT0+8&&he.push(pe);xe.drawBuffersEXT(he)}}this.trigger("beforerender",this,fe);var Se=this.clearDepth?ve.DEPTH_BUFFER_BIT:0;if(ve.depthMask(!0),this.clearColor){Se=Se|ve.COLOR_BUFFER_BIT,ve.colorMask(!0,!0,!0,!0);var Ne=this.clearColor;Array.isArray(Ne)&&ve.clearColor(Ne[0],Ne[1],Ne[2],Ne[3])}ve.clear(Se),this.blendWithPrevious?(ve.enable(ve.BLEND),this.material.transparent=!0):(ve.disable(ve.BLEND),this.material.transparent=!1),this.renderQuad(fe),this.trigger("afterrender",this,fe),de&&this.unbind(fe,de)},renderQuad:function(fe){ye.material=this.material,fe.renderPass([ye],ie)},dispose:function(fe){}});Ge.a=ae},function(et,Ge,ke){"use strict";var Ze=ke(4),Oe=ke(1),we=ke.n(Oe),Te=we.a.vec3,Re=Te.copy,Ie=Te.set,be=function(Pe,je){this.min=Pe||new Ze.a(1/0,1/0,1/0),this.max=je||new Ze.a(-1/0,-1/0,-1/0)};be.prototype={constructor:be,updateFromVertices:function(Pe){if(Pe.length>0){var je=this.min,ye=this.max,ie=je.array,ae=ye.array;Re(ie,Pe[0]),Re(ae,Pe[0]);for(var fe=1;feae[0]&&(ae[0]=de[0]),de[1]>ae[1]&&(ae[1]=de[1]),de[2]>ae[2]&&(ae[2]=de[2])}je._dirty=!0,ye._dirty=!0}},union:function(Pe){var je=this.min,ye=this.max;return Te.min(je.array,je.array,Pe.min.array),Te.max(ye.array,ye.array,Pe.max.array),je._dirty=!0,ye._dirty=!0,this},intersection:function(Pe){var je=this.min,ye=this.max;return Te.max(je.array,je.array,Pe.min.array),Te.min(ye.array,ye.array,Pe.max.array),je._dirty=!0,ye._dirty=!0,this},intersectBoundingBox:function(Pe){var je=this.min.array,ye=this.max.array,ie=Pe.min.array,ae=Pe.max.array;return!(je[0]>ae[0]||je[1]>ae[1]||je[2]>ae[2]||ye[0]=ae[0]&&ye[1]>=ae[1]&&ye[2]>=ae[2]},containPoint:function(Pe){var je=this.min.array,ye=this.max.array,ie=Pe.array;return je[0]<=ie[0]&&je[1]<=ie[1]&&je[2]<=ie[2]&&ye[0]>=ie[0]&&ye[1]>=ie[1]&&ye[2]>=ie[2]},isFinite:function(){var Pe=this.min.array,je=this.max.array;return isFinite(Pe[0])&&isFinite(Pe[1])&&isFinite(Pe[2])&&isFinite(je[0])&&isFinite(je[1])&&isFinite(je[2])},applyTransform:function(){var Pe=Te.create(),je=Te.create(),ye=Te.create(),ie=Te.create(),ae=Te.create(),fe=Te.create();return function(de){var ve=this.min.array,xe=this.max.array,he=de.array;return Pe[0]=he[0]*ve[0],Pe[1]=he[1]*ve[0],Pe[2]=he[2]*ve[0],je[0]=he[0]*xe[0],je[1]=he[1]*xe[0],je[2]=he[2]*xe[0],ye[0]=he[4]*ve[1],ye[1]=he[5]*ve[1],ye[2]=he[6]*ve[1],ie[0]=he[4]*xe[1],ie[1]=he[5]*xe[1],ie[2]=he[6]*xe[1],ae[0]=he[8]*ve[2],ae[1]=he[9]*ve[2],ae[2]=he[10]*ve[2],fe[0]=he[8]*xe[2],fe[1]=he[9]*xe[2],fe[2]=he[10]*xe[2],ve[0]=Math.min(Pe[0],je[0])+Math.min(ye[0],ie[0])+Math.min(ae[0],fe[0])+he[12],ve[1]=Math.min(Pe[1],je[1])+Math.min(ye[1],ie[1])+Math.min(ae[1],fe[1])+he[13],ve[2]=Math.min(Pe[2],je[2])+Math.min(ye[2],ie[2])+Math.min(ae[2],fe[2])+he[14],xe[0]=Math.max(Pe[0],je[0])+Math.max(ye[0],ie[0])+Math.max(ae[0],fe[0])+he[12],xe[1]=Math.max(Pe[1],je[1])+Math.max(ye[1],ie[1])+Math.max(ae[1],fe[1])+he[13],xe[2]=Math.max(Pe[2],je[2])+Math.max(ye[2],ie[2])+Math.max(ae[2],fe[2])+he[14],this.min._dirty=!0,this.max._dirty=!0,this}}(),applyProjection:function(Pe){var je=this.min.array,ye=this.max.array,ie=Pe.array,ae=je[0],fe=je[1],de=je[2],ve=ye[0],xe=ye[1],he=je[2],pe=ye[0],Se=ye[1],Ne=ye[2];if(ie[15]===1)je[0]=ie[0]*ae+ie[12],je[1]=ie[5]*fe+ie[13],ye[2]=ie[10]*de+ie[14],ye[0]=ie[0]*pe+ie[12],ye[1]=ie[5]*Se+ie[13],je[2]=ie[10]*Ne+ie[14];else{var ze=-1/de;je[0]=ie[0]*ae*ze,je[1]=ie[5]*fe*ze,ye[2]=(ie[10]*de+ie[14])*ze,ze=-1/he,ye[0]=ie[0]*ve*ze,ye[1]=ie[5]*xe*ze,ze=-1/Ne,je[2]=(ie[10]*Ne+ie[14])*ze}return this.min._dirty=!0,this.max._dirty=!0,this},updateVertices:function(){var Pe=this.vertices;if(!Pe){for(var Pe=[],je=0;je<8;je++)Pe[je]=Te.fromValues(0,0,0);this.vertices=Pe}var ye=this.min.array,ie=this.max.array;return Ie(Pe[0],ye[0],ye[1],ye[2]),Ie(Pe[1],ye[0],ie[1],ye[2]),Ie(Pe[2],ie[0],ye[1],ye[2]),Ie(Pe[3],ie[0],ie[1],ye[2]),Ie(Pe[4],ye[0],ye[1],ie[2]),Ie(Pe[5],ye[0],ie[1],ie[2]),Ie(Pe[6],ie[0],ye[1],ie[2]),Ie(Pe[7],ie[0],ie[1],ie[2]),this},copy:function(Pe){var je=this.min,ye=this.max;return Re(je.array,Pe.min.array),Re(ye.array,Pe.max.array),je._dirty=!0,ye._dirty=!0,this},clone:function(){var Pe=new be;return Pe.copy(this),Pe}},Ge.a=be},function(et,Ge,ke){"use strict";Ge.a=function(Ze,Oe,we){return{seriesType:Ze,reset:function(Te,Re){var Ie=Te.getData(),be=Te.visualColorAccessPath.split(".");be[be.length-1]="opacity";var Pe=Te.get(be);Ie.setVisual("opacity",Pe==null?1:Pe);function je(ye){var ie=Ie.getItemModel(ye),ae=ie.get(be);ae!=null&&Ie.setItemVisual(ye,"opacity",ae)}return{dataEach:Ie.hasItemOption?je:null}}}}},function(et,Ge,ke){"use strict";var Ze=ke(8),Oe=ke(6),we=ke(21),Te=ke(93),Re=Te.a.parseToFloat,Ie={};function be(ye,ie,ae){var fe=Object.keys(ye);fe.sort();for(var de=[],ve=0;ve=0},getEnabledUniforms:function(){return this._enabledUniforms},getTextureUniforms:function(){return this._textureUniforms},set:function(ye,ie){if(typeof ye=="object")for(var ae in ye){var fe=ye[ae];this.setUniform(ae,fe)}else this.setUniform(ye,ie)},get:function(ye){var ie=this.uniforms[ye];if(ie)return ie.value},attachShader:function(ye,ie){var ae=this.uniforms;this.uniforms=ye.createUniforms(),this.shader=ye;var fe=this.uniforms;this._enabledUniforms=Object.keys(fe),this._enabledUniforms.sort(),this._textureUniforms=this._enabledUniforms.filter(function(Se){var Ne=this.uniforms[Se].type;return Ne==="t"||Ne==="tv"},this);var de=this.vertexDefines,ve=this.fragmentDefines;if(this.vertexDefines=we.a.clone(ye.vertexDefines),this.fragmentDefines=we.a.clone(ye.fragmentDefines),ie){for(var xe in ae)fe[xe]&&(fe[xe].value=ae[xe].value);we.a.defaults(this.vertexDefines,de),we.a.defaults(this.fragmentDefines,ve)}var he={};for(var pe in ye.textures)he[pe]={shaderType:ye.textures[pe].shaderType,type:ye.textures[pe].type,enabled:ie&&this._textureStatus[pe]?this._textureStatus[pe].enabled:!1};this._textureStatus=he,this._programKey=""},clone:function(){var ye=new this.constructor({name:this.name,shader:this.shader});for(var ie in this.uniforms)ye.uniforms[ie].value=this.uniforms[ie].value;return ye.depthTest=this.depthTest,ye.depthMask=this.depthMask,ye.transparent=this.transparent,ye.blend=this.blend,ye.vertexDefines=we.a.clone(this.vertexDefines),ye.fragmentDefines=we.a.clone(this.fragmentDefines),ye.enableTexture(this.getEnabledTextures()),ye.precision=this.precision,ye},define:function(ye,ie,ae){var fe=this.vertexDefines,de=this.fragmentDefines;ye!=="vertex"&&ye!=="fragment"&&ye!=="both"&&arguments.length<3&&(ae=ie,ie=ye,ye="both"),ae=ae!=null?ae:null,(ye==="vertex"||ye==="both")&&fe[ie]!==ae&&(fe[ie]=ae,this._programKey=""),(ye==="fragment"||ye==="both")&&de[ie]!==ae&&(de[ie]=ae,ye!=="both"&&(this._programKey=""))},undefine:function(ye,ie){ye!=="vertex"&&ye!=="fragment"&&ye!=="both"&&arguments.length<2&&(ie=ye,ye="both"),(ye==="vertex"||ye==="both")&&this.isDefined("vertex",ie)&&(delete this.vertexDefines[ie],this._programKey=""),(ye==="fragment"||ye==="both")&&this.isDefined("fragment",ie)&&(delete this.fragmentDefines[ie],ye!=="both"&&(this._programKey=""))},isDefined:function(ye,ie){switch(ye){case"vertex":return this.vertexDefines[ie]!==void 0;case"fragment":return this.fragmentDefines[ie]!==void 0}},getDefine:function(ye,ie){switch(ye){case"vertex":return this.vertexDefines[ie];case"fragment":return this.fragmentDefines[ie]}},enableTexture:function(ye){if(Array.isArray(ye)){for(var ie=0;ie=pe.x&&he>=pe.y&&xe<=pe.x+pe.width&&he<=pe.y+pe.height};var ve=new je.a;de.prototype.castRay=function(xe,he,pe){var Se=this.layer.renderer,Ne=Se.viewport;return Se.viewport=this.viewport,Se.screenToNDC(xe,he,ve),this.camera.castRay(ve,pe),Se.viewport=Ne,pe},de.prototype.prepareRender=function(){this.scene.update(),this.camera.update(),this._needsSortProgressively=!1;for(var xe=0;xe30},de.prototype._doRender=function(xe,he,pe){var Se=this.scene,Ne=this.camera;if(pe=pe||0,this._updateTransparent(xe,Se,Ne,pe),he||(this._shadowMapPass.kernelPCF=this._pcfKernels[0],this._shadowMapPass.render(xe,Se,Ne,!0)),this._updateShadowPCFKernel(pe),xe.gl.clearColor(0,0,0,0),this._enablePostEffect&&(this.needsTemporalSS()&&this._temporalSS.jitterProjection(xe,Ne),this._compositor.updateNormal(xe,Se,Ne,this._temporalSS.getFrame())),this._updateSSAO(xe,Se,Ne,this._temporalSS.getFrame()),this._enablePostEffect){var ze=this._compositor.getSourceFrameBuffer();ze.bind(xe),xe.gl.clear(xe.gl.DEPTH_BUFFER_BIT|xe.gl.COLOR_BUFFER_BIT),xe.render(Se,Ne,!0,!0),ze.unbind(xe),this.needsTemporalSS()&&he?(this._compositor.composite(xe,Ne,this._temporalSS.getSourceFrameBuffer(),this._temporalSS.getFrame()),xe.setViewport(this.viewport),this._temporalSS.render(xe)):(xe.setViewport(this.viewport),this._compositor.composite(xe,Ne,null,0))}else if(this.needsTemporalSS()&&he){var ze=this._temporalSS.getSourceFrameBuffer();ze.bind(xe),xe.saveClear(),xe.clearBit=xe.gl.DEPTH_BUFFER_BIT|xe.gl.COLOR_BUFFER_BIT,xe.render(Se,Ne,!0,!0),xe.restoreClear(),ze.unbind(xe),xe.setViewport(this.viewport),this._temporalSS.render(xe)}else xe.setViewport(this.viewport),xe.render(Se,Ne,!0,!0)},de.prototype._updateTransparent=function(xe,he,pe,Se){for(var Ne=new Pe.a,ze=new be.a,Ke=pe.getWorldPosition(),Ve=0;Vethis.camera.far||xe65535?this.indices instanceof Uint16Array&&(this.indices=new Uint32Array(this.indices)):this.indices instanceof Uint32Array&&(this.indices=new Uint16Array(this.indices)))},setTriangleCount:function(ye){this.triangleCount!==ye&&(ye===0?this.indices=null:this.indices=this.vertexCount>65535?new Uint32Array(ye*3):new Uint16Array(ye*3))},_getCubicCurveApproxStep:function(ye,ie,ae,fe){var de=be.dist(ye,ie)+be.dist(ae,ie)+be.dist(fe,ae),ve=1/(de+1)*this.segmentScale;return ve},getCubicCurveVertexCount:function(ye,ie,ae,fe){var de=this._getCubicCurveApproxStep(ye,ie,ae,fe),ve=Math.ceil(1/de);return this.useNativeLine?ve*2:ve*2+2},getCubicCurveTriangleCount:function(ye,ie,ae,fe){var de=this._getCubicCurveApproxStep(ye,ie,ae,fe),ve=Math.ceil(1/de);return this.useNativeLine?0:ve*2},getLineVertexCount:function(){return this.getPolylineVertexCount(Pe)},getLineTriangleCount:function(){return this.getPolylineTriangleCount(Pe)},getPolylineVertexCount:function(ye){var ie;if(typeof ye=="number")ie=ye;else{var ae=typeof ye[0]!="number";ie=ae?ye.length:ye.length/3}return this.useNativeLine?(ie-1)*2:(ie-1)*2+2},getPolylineTriangleCount:function(ye){var ie;if(typeof ye=="number")ie=ye;else{var ae=typeof ye[0]!="number";ie=ae?ye.length:ye.length/3}return this.useNativeLine?0:Math.max(ie-1,0)*2},addCubicCurve:function(ye,ie,ae,fe,de,ve){ve==null&&(ve=1);for(var xe=ye[0],he=ye[1],pe=ye[2],Se=ie[0],Ne=ie[1],ze=ie[2],Ke=ae[0],Ve=ae[1],Je=ae[2],tt=fe[0],gt=fe[1],st=fe[2],St=this._getCubicCurveApproxStep(ye,ie,ae,fe),At=St*St,vt=At*St,Tt=3*St,bt=3*At,Et=6*At,lt=6*vt,Nt=xe-Se*2+Ke,Zt=he-Ne*2+Ve,Ut=pe-ze*2+Je,Ft=(Se-Ke)*3-xe+tt,Yt=(Ne-Ve)*3-he+gt,dn=(ze-Je)*3-pe+st,Dn=xe,Rn=he,Zn=pe,ln=(Se-xe)*Tt+Nt*bt+Ft*vt,Gn=(Ne-he)*Tt+Zt*bt+Yt*vt,Wn=(ze-pe)*Tt+Ut*bt+dn*vt,qt=Nt*Et+Ft*lt,xt=Zt*Et+Yt*lt,ft=Ut*Et+dn*lt,Bt=Ft*lt,Ot=Yt*lt,ut=dn*lt,It=0,nn=0,Pt=Math.ceil(1/St),Vt=new Float32Array((Pt+1)*3),Vt=[],on=0,nn=0;nn1&&(Dn=ln>0?Math.min(Dn,tt):Math.max(Dn,tt),Rn=Gn>0?Math.min(Rn,gt):Math.max(Rn,gt),Zn=Wn>0?Math.min(Zn,st):Math.max(Zn,st));return this.addPolyline(Vt,de,ve)},addLine:function(ye,ie,ae,fe){return this.addPolyline([ye,ie],ae,fe)},addPolyline:function(ye,ie,ae,fe,de){if(ye.length){var ve=typeof ye[0]!="number";if(de==null&&(de=ve?ye.length:ye.length/3),!(de<2)){fe==null&&(fe=0),ae==null&&(ae=1),this._itemVertexOffsets.push(this._vertexOffset);var ve=typeof ye[0]!="number",xe=ve?typeof ie[0]!="number":ie.length/4===de,he=this.attributes.position,pe=this.attributes.positionPrev,Se=this.attributes.positionNext,Ne=this.attributes.color,ze=this.attributes.offset,Ke=this.indices,Ve=this._vertexOffset,Je,tt;ae=Math.max(ae,.01);for(var gt=fe;gt1&&(he.copy(Ve,Ve-1),Ne.copy(Ve,Ve-1),Ve++):(gt0&&(Se.set(Ve-2,Je),Se.set(Ve-1,Je)),he.set(Ve,Je),he.set(Ve+1,Je),Ne.set(Ve,tt),Ne.set(Ve+1,tt),ze.set(Ve,ae/2),ze.set(Ve+1,-ae/2),Ve+=2),this.useNativeLine)Ne.set(Ve,tt),he.set(Ve,Je),Ve++;else if(gt>0){var At=this._triangleOffset*3,Ke=this.indices;Ke[At]=Ve-4,Ke[At+1]=Ve-3,Ke[At+2]=Ve-2,Ke[At+3]=Ve-3,Ke[At+4]=Ve-1,Ke[At+5]=Ve-2,this._triangleOffset+=2}}if(!this.useNativeLine){var vt=this._vertexOffset,Tt=this._vertexOffset+de*2;pe.copy(vt,vt+2),pe.copy(vt+1,vt+3),Se.copy(Tt-1,Tt-3),Se.copy(Tt-2,Tt-4)}return this._vertexOffset=Ve,this._vertexOffset}}},setItemColor:function(ye,ie){for(var ae=this._itemVertexOffsets[ye],fe=ye0)},render:function(Re,Ie,be){var Pe=Re.gl;if(this.skeleton){this.skeleton.update();var je=this.skeleton.getSubSkinMatrices(this.__uid__,this.joints);be.setUniformOfSemantic(Pe,"SKIN_MATRIX",je)}return Ze.a.prototype.render.call(this,Re,Ie,be)},getSkinMatricesTexture:function(){return this._skinMatricesTexture=this._skinMatricesTexture||new we.a({type:Oe.a.FLOAT,minFilter:Oe.a.NEAREST,magFilter:Oe.a.NEAREST,useMipmap:!1,flipY:!1}),this._skinMatricesTexture}});Te.POINTS=Oe.a.POINTS,Te.LINES=Oe.a.LINES,Te.LINE_LOOP=Oe.a.LINE_LOOP,Te.LINE_STRIP=Oe.a.LINE_STRIP,Te.TRIANGLES=Oe.a.TRIANGLES,Te.TRIANGLE_STRIP=Oe.a.TRIANGLE_STRIP,Te.TRIANGLE_FAN=Oe.a.TRIANGLE_FAN,Te.BACK=Oe.a.BACK,Te.FRONT=Oe.a.FRONT,Te.FRONT_AND_BACK=Oe.a.FRONT_AND_BACK,Te.CW=Oe.a.CW,Te.CCW=Oe.a.CCW,Ge.a=Te},function(et,Ge,ke){"use strict";var Ze=ke(6),Oe=ke(11),we=ke(21),Te=ke(66),Re=Te.a.isPowerOfTwo,Ie=["px","nx","py","ny","pz","nz"],be=Ze.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(je){var ye=je.gl;ye.bindTexture(ye.TEXTURE_CUBE_MAP,this._cache.get("webgl_texture")),this.updateCommon(je);var ie=this.format,ae=this.type;ye.texParameteri(ye.TEXTURE_CUBE_MAP,ye.TEXTURE_WRAP_S,this.getAvailableWrapS()),ye.texParameteri(ye.TEXTURE_CUBE_MAP,ye.TEXTURE_WRAP_T,this.getAvailableWrapT()),ye.texParameteri(ye.TEXTURE_CUBE_MAP,ye.TEXTURE_MAG_FILTER,this.getAvailableMagFilter()),ye.texParameteri(ye.TEXTURE_CUBE_MAP,ye.TEXTURE_MIN_FILTER,this.getAvailableMinFilter());var fe=je.getGLExtension("EXT_texture_filter_anisotropic");if(fe&&this.anisotropic>1&&ye.texParameterf(ye.TEXTURE_CUBE_MAP,fe.TEXTURE_MAX_ANISOTROPY_EXT,this.anisotropic),ae===36193){var de=je.getGLExtension("OES_texture_half_float");de||(ae=Oe.a.FLOAT)}if(this.mipmaps.length)for(var ve=this.width,xe=this.height,he=0;he0&&console.warn("Found multiple camera in one scene. Use the fist one."),this._cameraList.push(ye)),ye.name&&(this._nodeRepository[ye.name]=ye)},removeFromScene:function(ye){if(ye instanceof we.a){var ie=this._cameraList.indexOf(ye);ie>=0&&this._cameraList.splice(ie,1)}ye.name&&delete this._nodeRepository[ye.name]},getNode:function(ye){return this._nodeRepository[ye]},cloneNode:function(ye){var ie=ye.clone(),ae={},fe=function(ve,xe){ve.skeleton&&(xe.skeleton=ve.skeleton.clone(ye,ie),xe.joints=ve.joints.slice()),ve.material&&(ae[ve.material.__uid__]={oldMat:ve.material});for(var he=0;he0&&this._updateRenderList(fe)}},_updateLightUniforms:function(){var ye=this.lights;ye.sort(je);var ie=this._lightUniforms;for(var ae in ie)for(var fe in ie[ae])ie[ae][fe].value.length=0;for(var de=0;de0?Ze[Oe].value=new Float32Array(Ze[Oe].value):Ze[Oe].value=null;this.indices&&this.indices.length>0&&(this.indices=this.vertexCount>65535?new Uint32Array(this.indices):new Uint16Array(this.indices)),this.dirty()}}},function(et,Ge,ke){"use strict";var Ze=ke(2),Oe=ke(57),we=ke(56),Te=ke(0),Re=ke.n(Te);function Ie(){}Ie.prototype={constructor:Ie,setScene:function(be){this._scene=be,this._skybox&&this._skybox.attachScene(this._scene)},initLight:function(be){this._lightRoot=be,this.mainLight=new Ze.a.DirectionalLight({shadowBias:.005}),this.ambientLight=new Ze.a.AmbientLight,be.add(this.mainLight),be.add(this.ambientLight)},dispose:function(){this._lightRoot&&(this._lightRoot.remove(this.mainLight),this._lightRoot.remove(this.ambientLight))},updateLight:function(be){var Pe=this.mainLight,je=this.ambientLight,ye=be.getModel("light"),ie=ye.getModel("main"),ae=ye.getModel("ambient");Pe.intensity=ie.get("intensity"),je.intensity=ae.get("intensity"),Pe.color=Ze.a.parseColor(ie.get("color")).slice(0,3),je.color=Ze.a.parseColor(ae.get("color")).slice(0,3);var fe=ie.get("alpha")||0,de=ie.get("beta")||0;Pe.position.setArray(Ze.a.directionFromAlphaBeta(fe,de)),Pe.lookAt(Ze.a.Vector3.ZERO),Pe.castShadow=ie.get("shadow"),Pe.shadowResolution=Ze.a.getShadowResolution(ie.get("shadowQuality"))},updateAmbientCubemap:function(be,Pe,je){var ye=Pe.getModel("light.ambientCubemap"),ie=ye.get("texture");if(ie){this._cubemapLightsCache=this._cubemapLightsCache||{};var ae=this._cubemapLightsCache[ie];if(!ae){var fe=this;ae=this._cubemapLightsCache[ie]=Ze.a.createAmbientCubemap(ye.option,be,je,function(){fe._skybox instanceof Oe.a&&fe._skybox.setEnvironmentMap(ae.specular.cubemap),je.getZr().refresh()})}this._lightRoot.add(ae.diffuse),this._lightRoot.add(ae.specular),this._currentCubemapLights=ae}else this._currentCubemapLights&&(this._lightRoot.remove(this._currentCubemapLights.diffuse),this._lightRoot.remove(this._currentCubemapLights.specular),this._currentCubemapLights=null)},updateSkybox:function(be,Pe,je){var ye=Pe.get("environment"),ie=this;function ae(){return ie._skybox instanceof Oe.a||(ie._skybox&&ie._skybox.dispose(be),ie._skybox=new Oe.a),ie._skybox}function fe(){return ie._skybox instanceof we.a||(ie._skybox&&ie._skybox.dispose(be),ie._skybox=new we.a),ie._skybox}if(ye&&ye!=="none")if(ye==="auto")if(this._currentCubemapLights){var de=ae(),ve=this._currentCubemapLights.specular.cubemap;de.setEnvironmentMap(ve),this._scene&&de.attachScene(this._scene),de.material.set("lod",2)}else this._skybox&&this._skybox.detachScene();else if(typeof ye=="object"&&ye.colorStops||typeof ye=="string"&&Re.a.color.parse(ye)){var xe=fe(),he=new Ze.a.Texture2D({anisotropic:8,flipY:!1});xe.setEnvironmentMap(he);var pe=he.image=document.createElement("canvas");pe.width=pe.height=16;var Se=pe.getContext("2d"),Ne=new Re.a.graphic.Rect({shape:{x:0,y:0,width:16,height:16},style:{fill:ye}});Ne.brush(Se),xe.attachScene(this._scene)}else{var xe=fe(),he=Ze.a.loadTexture(ye,je,{anisotropic:8,flipY:!1});xe.setEnvironmentMap(he),xe.attachScene(this._scene)}else this._skybox&&this._skybox.detachScene(this._scene),this._skybox=null;var ze=Pe.coordinateSystem;if(this._skybox)if(ze&&ze.viewGL&&ye!=="auto"&&!(ye.match&&ye.match(/.hdr$/))){var Ke=ze.viewGL.isLinearSpace()?"define":"undefine";this._skybox.material[Ke]("fragment","SRGB_DECODE")}else this._skybox.material.undefine("fragment","SRGB_DECODE")}},Ge.a=Ie},function(et,Ge,ke){"use strict";var Ze=ke(0),Oe=ke.n(Ze);function we(Te,Re){var Ie=[];return Oe.a.util.each(Te.dimensions,function(be){var Pe=Te.getDimensionInfo(be),je=Pe.otherDims,ye=je[Re];ye!=null&&ye!==!1&&(Ie[ye]=Pe.name)}),Ie}Ge.a=function(Te,Re,Ie){function be(ve){var xe=!0,he=[],pe=we(Pe,"tooltip");pe.length?Oe.a.util.each(pe,function(Ne){Se(Pe.get(Ne,Re),Ne)}):Oe.a.util.each(ve,Se);function Se(Ne,ze){var Ke=Pe.getDimensionInfo(ze);if(!(!Ke||Ke.otherDims.tooltip===!1)){var Ve=Ke.type,Je=(xe?"- "+(Ke.tooltipName||Ke.name)+": ":"")+(Ve==="ordinal"?Ne+"":Ve==="time"?Ie?"":Oe.a.format.formatTime("yyyy/MM/dd hh:mm:ss",Ne):Oe.a.format.addCommas(Ne));Je&&he.push(Oe.a.format.encodeHTML(Je))}}return(xe?"
      ":"")+he.join(xe?"
      ":", ")}var Pe=Te.getData(),je=Te.getRawValue(Re),ye=Oe.a.util.isArray(je)?be(je):Oe.a.format.encodeHTML(Oe.a.format.addCommas(je)),ie=Pe.getName(Re),ae=Pe.getItemVisual(Re,"color");Oe.a.util.isObject(ae)&&ae.colorStops&&(ae=(ae.colorStops[0]||{}).color),ae=ae||"transparent";var fe=Oe.a.format.getTooltipMarker(ae),de=Te.name;return de==="\0-"&&(de=""),de=de?Oe.a.format.encodeHTML(de)+(Ie?": ":"
      "):"",Ie?fe+de+ye:de+fe+(ie?Oe.a.format.encodeHTML(ie)+": "+ye:ye)}},function(et,Ge,ke){"use strict";var Ze=ke(51),Oe=Ze.a.extend({fov:50,aspect:1,near:.1,far:2e3},{updateProjectionMatrix:function(){var we=this.fov/180*Math.PI;this.projectionMatrix.perspective(we,this.aspect,this.near,this.far)},decomposeProjectionMatrix:function(){var we=this.projectionMatrix.array,Te=Math.atan(1/we[5])*2;this.fov=Te/Math.PI*180,this.aspect=we[5]/we[0],this.near=we[14]/(we[10]-1),this.far=we[14]/(we[10]+1)},clone:function(){var we=Ze.a.prototype.clone.call(this);return we.fov=this.fov,we.aspect=this.aspect,we.near=this.near,we.far=this.far,we}});Ge.a=Oe},function(et,Ge,ke){"use strict";var Ze=ke(13),Oe=ke(15),we=Ze.a.extend({dynamic:!1,widthSegments:1,heightSegments:1},function(){this.build()},{build:function(){for(var Te=this.heightSegments,Re=this.widthSegments,Ie=this.attributes,be=[],Pe=[],je=[],ye=[],ie=0;ie<=Te;ie++)for(var ae=ie/Te,fe=0;fe<=Re;fe++){var de=fe/Re;if(be.push([2*de-1,2*ae-1,0]),Pe&&Pe.push([de,ae]),je&&je.push([0,0,1]),fe0&&this._notFirst?this.animateTo({alpha:Se,beta:Ne,center:ze,distance:ve,targetOrthographicSize:xe,easing:pe.animationEasingUpdate,duration:pe.animationDurationUpdate}):(this.setDistance(ve),this.setAlpha(Se),this.setBeta(Ne),this.setCenter(ze),this.setOrthographicSize(xe)),this._notFirst=!0,this._validateProperties()},_validateProperties:function(){be[this.panMouseButton]==null&&console.error("Unkown panMouseButton %s. It should be left|middle|right",this.panMouseButton),be[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(ye){var ie=this.zr,ae=this,fe={},de={};return ye.distance!=null&&(fe.distance=this.getDistance(),de.distance=ye.distance),ye.orthographicSize!=null&&(fe.orthographicSize=this.getOrthographicSize(),de.orthographicSize=ye.orthographicSize),ye.alpha!=null&&(fe.alpha=this.getAlpha(),de.alpha=ye.alpha),ye.beta!=null&&(fe.beta=this.getBeta(),de.beta=ye.beta),ye.center!=null&&(fe.center=this.getCenter(),de.center=ye.center),this._addAnimator(ie.animation.animate(fe).when(ye.duration||1e3,de).during(function(){fe.alpha!=null&&ae.setAlpha(fe.alpha),fe.beta!=null&&ae.setBeta(fe.beta),fe.distance!=null&&ae.setDistance(fe.distance),fe.center!=null&&ae.setCenter(fe.center),fe.orthographicSize!=null&&ae.setOrthographicSize(fe.orthographicSize),ae._needsUpdate=!0})).start(ye.easing||"linear")},stopAllAnimation:function(){for(var ye=0;ye0},_update:function(ye){if(this._rotating){var ie=(this.autoRotateDirection==="cw"?1:-1)*this.autoRotateSpeed/180*Math.PI;this._phi-=ie*ye/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&&(ye=Math.min(ye,50),this._updateDistanceOrSize(ye),this._updatePan(ye),this._updateRotate(ye),this._updateTransform(),this.getCamera().update(),this.zr&&this.zr.refresh(),this.trigger("update"),this._needsUpdate=!1)},_updateRotate:function(ye){var ie=this._rotateVelocity;this._phi=ie.y*ye/20+this._phi,this._theta=ie.x*ye/20+this._theta,this.setAlpha(this.getAlpha()),this.setBeta(this.getBeta()),this._vectorDamping(ie,Math.pow(this.damping,ye/16))},_updateDistanceOrSize:function(ye){this._projection==="perspective"?this._setDistance(this._distance+this._zoomSpeed*ye/20):this._setOrthoSize(this._orthoSize+this._zoomSpeed*ye/20),this._zoomSpeed*=Math.pow(this.damping,ye/16)},_setDistance:function(ye){this._distance=Math.max(Math.min(ye,this.maxDistance),this.minDistance)},_setOrthoSize:function(ye){this._orthoSize=Math.max(Math.min(ye,this.maxOrthographicSize),this.minOrthographicSize);var ie=this.getCamera(),ae=this._orthoSize,fe=ae/this.viewGL.viewport.height*this.viewGL.viewport.width;ie.left=-fe/2,ie.right=fe/2,ie.top=ae/2,ie.bottom=-ae/2},_updatePan:function(ye){var ie=this._panVelocity,ae=this._distance,fe=this.getCamera(),de=fe.worldTransform.y,ve=fe.worldTransform.x;this._center.scaleAndAdd(ve,-ie.x*ae/200).scaleAndAdd(de,-ie.y*ae/200),this._vectorDamping(ie,0)},_updateTransform:function(){var ye=this.getCamera(),ie=new we.a,ae=this._theta+Math.PI/2,fe=this._phi+Math.PI/2,de=Math.sin(ae);ie.x=de*Math.cos(fe),ie.y=-Math.cos(ae),ie.z=de*Math.sin(fe),ye.position.copy(this._center).scaleAndAdd(ie,this._distance),ye.rotation.identity().rotateY(-this._phi).rotateX(-this._theta)},_startCountingStill:function(){clearTimeout(this._stillTimeout);var ye=this.autoRotateAfterStill,ie=this;!isNaN(ye)&&ye>0&&(this._stillTimeout=setTimeout(function(){ie._rotating=!0},ye*1e3))},_vectorDamping:function(ye,ie){var ae=ye.len();ae=ae*ie,ae<1e-4&&(ae=0),ye.normalize().scale(ae)},_decomposeTransform:function(){if(this.getCamera()){this.getCamera().updateWorldTransform();var ye=this.getCamera().worldTransform.z,ie=Math.asin(ye.y),ae=Math.atan2(ye.x,ye.z);this._theta=ie,this._phi=-ae,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(ye){if(!ye.target&&!this._isAnimating()){var ie=ye.offsetX,ae=ye.offsetY;this.viewGL&&!this.viewGL.containPoint(ie,ae)||(this.zr.on("mousemove",this._mouseMoveHandler),this.zr.on("mouseup",this._mouseUpHandler),ye.event.targetTouches?ye.event.targetTouches.length===1&&(this._mode="rotate"):ye.event.button===be[this.rotateMouseButton]?this._mode="rotate":ye.event.button===be[this.panMouseButton]?this._mode="pan":this._mode="",this._rotateVelocity.set(0,0),this._rotating=!1,this.autoRotate&&this._startCountingStill(),this._mouseX=ye.offsetX,this._mouseY=ye.offsetY)}},_mouseMoveHandler:function(ye){if(!(ye.target&&ye.target.__isGLToZRProxy)&&!this._isAnimating()){var ie=Pe(this.panSensitivity),ae=Pe(this.rotateSensitivity);this._mode==="rotate"?(this._rotateVelocity.y=(ye.offsetX-this._mouseX)/this.zr.getHeight()*2*ae[0],this._rotateVelocity.x=(ye.offsetY-this._mouseY)/this.zr.getWidth()*2*ae[1]):this._mode==="pan"&&(this._panVelocity.x=(ye.offsetX-this._mouseX)/this.zr.getWidth()*ie[0]*400,this._panVelocity.y=(-ye.offsetY+this._mouseY)/this.zr.getHeight()*ie[1]*400),this._mouseX=ye.offsetX,this._mouseY=ye.offsetY,ye.event.preventDefault()}},_mouseWheelHandler:function(ye){if(!this._isAnimating()){var ie=ye.event.wheelDelta||-ye.event.detail;this._zoomHandler(ye,ie)}},_pinchHandler:function(ye){this._isAnimating()||(this._zoomHandler(ye,ye.pinchScale>1?1:-1),this._mode="")},_zoomHandler:function(ye,ie){if(ie!==0){var ae=ye.offsetX,fe=ye.offsetY;if(!(this.viewGL&&!this.viewGL.containPoint(ae,fe))){var de;this._projection==="perspective"?de=Math.max(Math.max(Math.min(this._distance-this.minDistance,this.maxDistance-this._distance))/20,.5):de=Math.max(Math.max(Math.min(this._orthoSize-this.minOrthographicSize,this.maxOrthographicSize-this._orthoSize))/20,.5),this._zoomSpeed=(ie>0?-1:1)*de*this.zoomSensitivity,this._rotating=!1,this.autoRotate&&this._mode==="rotate"&&this._startCountingStill(),ye.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(ye){this._isRightMouseButtonUsed()&&ye.preventDefault()},_addAnimator:function(ye){var ie=this._animators;return ie.push(ye),ye.done(function(){var ae=ie.indexOf(ye);ae>=0&&ie.splice(ae,1)}),ye}});Object.defineProperty(je.prototype,"autoRotate",{get:function(ye){return this._autoRotate},set:function(ye){this._autoRotate=ye,this._rotating=ye}}),Ge.a=je},function(et,Ge,ke){"use strict";Ge.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(et,Ge,ke){var Ze=ke(12),Oe=ke(75),we=ke(78),Te=we.parsePercent,Re=ke(149),Ie=Ze.each,be=["left","right","top","bottom","width","height"],Pe=[["width","left","right"],["height","top","bottom"]];function je(Ne,ze,Ke,Ve,Je){var tt=0,gt=0;Ve==null&&(Ve=1/0),Je==null&&(Je=1/0);var st=0;ze.eachChild(function(St,At){var vt=St.position,Tt=St.getBoundingRect(),bt=ze.childAt(At+1),Et=bt&&bt.getBoundingRect(),lt,Nt;if(Ne==="horizontal"){var Zt=Tt.width+(Et?-Et.x+Tt.x:0);lt=tt+Zt,lt>Ve||St.newline?(tt=0,lt=Zt,gt+=st+Ke,st=Tt.height):st=Math.max(st,Tt.height)}else{var Ut=Tt.height+(Et?-Et.y+Tt.y:0);Nt=gt+Ut,Nt>Je||St.newline?(tt+=st+Ke,gt=0,Nt=Ut,st=Tt.width):st=Math.max(st,Tt.width)}St.newline||(vt[0]=tt,vt[1]=gt,Ne==="horizontal"?tt=lt+Ke:gt=Nt+Ke)})}var ye=je,ie=Ze.curry(je,"vertical"),ae=Ze.curry(je,"horizontal");function fe(Ne,ze,Ke){var Ve=ze.width,Je=ze.height,tt=Te(Ne.x,Ve),gt=Te(Ne.y,Je),st=Te(Ne.x2,Ve),St=Te(Ne.y2,Je);return(isNaN(tt)||isNaN(parseFloat(Ne.x)))&&(tt=0),(isNaN(st)||isNaN(parseFloat(Ne.x2)))&&(st=Ve),(isNaN(gt)||isNaN(parseFloat(Ne.y)))&&(gt=0),(isNaN(St)||isNaN(parseFloat(Ne.y2)))&&(St=Je),Ke=Re.normalizeCssArray(Ke||0),{width:Math.max(st-tt-Ke[1]-Ke[3],0),height:Math.max(St-gt-Ke[0]-Ke[2],0)}}function de(Ne,ze,Ke){Ke=Re.normalizeCssArray(Ke||0);var Ve=ze.width,Je=ze.height,tt=Te(Ne.left,Ve),gt=Te(Ne.top,Je),st=Te(Ne.right,Ve),St=Te(Ne.bottom,Je),At=Te(Ne.width,Ve),vt=Te(Ne.height,Je),Tt=Ke[2]+Ke[0],bt=Ke[1]+Ke[3],Et=Ne.aspect;switch(isNaN(At)&&(At=Ve-st-bt-tt),isNaN(vt)&&(vt=Je-St-Tt-gt),Et!=null&&(isNaN(At)&&isNaN(vt)&&(Et>Ve/Je?At=Ve*.8:vt=Je*.8),isNaN(At)&&(At=Et*vt),isNaN(vt)&&(vt=At/Et)),isNaN(tt)&&(tt=Ve-st-At-bt),isNaN(gt)&&(gt=Je-St-vt-Tt),Ne.left||Ne.right){case"center":tt=Ve/2-At/2-Ke[3];break;case"right":tt=Ve-At-bt;break}switch(Ne.top||Ne.bottom){case"middle":case"center":gt=Je/2-vt/2-Ke[0];break;case"bottom":gt=Je-vt-Tt;break}tt=tt||0,gt=gt||0,isNaN(At)&&(At=Ve-bt-tt-(st||0)),isNaN(vt)&&(vt=Je-Tt-gt-(St||0));var lt=new Oe(tt+Ke[3],gt+Ke[0],At,vt);return lt.margin=Ke,lt}function ve(Ne,ze,Ke,Ve,Je){var tt=!Je||!Je.hv||Je.hv[0],gt=!Je||!Je.hv||Je.hv[1],st=Je&&Je.boundingMode||"all";if(!(!tt&&!gt)){var St;if(st==="raw")St=Ne.type==="group"?new Oe(0,0,+ze.width||0,+ze.height||0):Ne.getBoundingRect();else if(St=Ne.getBoundingRect(),Ne.needLocalTransform()){var At=Ne.getLocalTransform();St=St.clone(),St.applyTransform(At)}ze=de(Ze.defaults({width:St.width,height:St.height},ze),Ke,Ve);var vt=Ne.position,Tt=tt?ze.x-St.x:0,bt=gt?ze.y-St.y:0;Ne.attr("position",st==="raw"?[Tt,bt]:[vt[0]+Tt,vt[1]+bt])}}function xe(Ne,ze){return Ne[Pe[ze][0]]!=null||Ne[Pe[ze][1]]!=null&&Ne[Pe[ze][2]]!=null}function he(Ne,ze,Ke){!Ze.isObject(Ke)&&(Ke={});var Ve=Ke.ignoreSize;!Ze.isArray(Ve)&&(Ve=[Ve,Ve]);var Je=gt(Pe[0],0),tt=gt(Pe[1],1);At(Pe[0],Ne,Je),At(Pe[1],Ne,tt);function gt(vt,Tt){var bt={},Et=0,lt={},Nt=0,Zt=2;if(Ie(vt,function(Yt){lt[Yt]=Ne[Yt]}),Ie(vt,function(Yt){st(ze,Yt)&&(bt[Yt]=lt[Yt]=ze[Yt]),St(bt,Yt)&&Et++,St(lt,Yt)&&Nt++}),Ve[Tt])return St(ze,vt[1])?lt[vt[2]]=null:St(ze,vt[2])&&(lt[vt[1]]=null),lt;if(Nt===Zt||!Et)return lt;if(Et>=Zt)return bt;for(var Ut=0;Ut0){var Te=this.outputs[we];Te.keepLastFrame?(this._prevOutputTextures[we]&&this._compositor.releaseTexture(this._prevOutputTextures[we]),this._prevOutputTextures[we]=this._outputTextures[we]):this._compositor.releaseTexture(this._outputTextures[we])}}});Ge.a=Oe},function(et,Ge,ke){"use strict";function Ze(Oe,we){for(var Te=0,Re=1/we,Ie=Oe;Ie>0;)Te=Te+Re*(Ie%we),Ie=Math.floor(Ie/we),Re=Re/we;return Te}Ge.a=Ze},function(et,Ge,ke){"use strict";var Ze=ke(0),Oe=ke.n(Ze);Ge.a=function(we,Te,Re){Re=Re||we.getSource();var Ie=Te||Oe.a.getCoordinateSystemDimensions(we.get("coordinateSystem"))||["x","y","z"],be=Oe.a.helper.createDimensions(Re,{dimensionsDefine:Re.dimensionsDefine||we.get("dimensions"),encodeDefine:Re.encodeDefine||we.get("encode"),coordDimensions:Ie.map(function(je){var ye=we.getReferringComponents(je+"Axis3D")[0];return{type:ye&&ye.get("type")==="category"?"ordinal":"float",name:je,stackable:je==="z"}})});we.get("coordinateSystem")==="cartesian3D"&&be.forEach(function(je){if(Ie.indexOf(je.coordDim)>=0){var ye=we.getReferringComponents(je.coordDim+"Axis3D")[0];ye&&ye.get("type")==="category"&&(je.ordinalMeta=ye.getOrdinalMeta())}});var Pe=new Oe.a.List(be,we);return Pe.initData(Re),Pe}},function(et,Ge){function ke(Ze,Oe,we){return{seriesType:Ze,performRawSeries:!0,reset:function(Te,Re,Ie){var be=Te.getData(),Pe=Te.get("symbol")||Oe,je=Te.get("symbolSize");if(be.setVisual({legendSymbol:we||Pe,symbol:Pe,symbolSize:je}),Re.isSeriesFiltered(Te))return;var ye=typeof je=="function";function ie(ae,fe){if(typeof je=="function"){var de=Te.getRawValue(fe),ve=Te.getDataParams(fe);ae.setItemVisual(fe,"symbolSize",je(de,ve))}if(ae.hasItemOption){var xe=ae.getItemModel(fe),he=xe.getShallow("symbol",!0),pe=xe.getShallow("symbolSize",!0);he!=null&&ae.setItemVisual(fe,"symbol",he),pe!=null&&ae.setItemVisual(fe,"symbolSize",pe)}}return{dataEach:be.hasItemOption||ye?ie:null}}}}et.exports=ke},function(et,Ge,ke){"use strict";var Ze=ke(8),Oe=ke(92),we=ke(11),Te=ke(18),Re=ke(15),Ie=ke(9),be=ke(17),Pe=ke(23),je=ke(96),ye=ke(7),ie=ke(98),ae=ke(63),fe=ke(1),de=ke.n(fe);ye.a.import(ie.a),ye.a.import(ae.a);var ve=de.a.mat4,xe=de.a.vec3,he=ve.create,pe={};function Se(Ve){return Ve.material}function Ne(){}var ze=Ze.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 Ve=this.canvas;try{var Je={alpha:this.alpha,depth:this.depth,stencil:this.stencil,antialias:this.antialias,premultipliedAlpha:this.premultipliedAlpha,preserveDrawingBuffer:this.preserveDrawingBuffer};if(this.gl=Ve.getContext("webgl",Je)||Ve.getContext("experimental-webgl",Je),!this.gl)throw new Error;this._glinfo=new Oe.a(this.gl),this.gl.targetRenderer&&console.error("Already created a renderer"),this.gl.targetRenderer=this,this.resize()}catch(tt){throw"Error creating WebGL Context "+tt}this._programMgr=new je.a(this)},{resize:function(Ve,Je){var tt=this.canvas,gt=this.devicePixelRatio;Ve!=null?(tt.style.width=Ve+"px",tt.style.height=Je+"px",tt.width=Ve*gt,tt.height=Je*gt,this._width=Ve,this._height=Je):(this._width=tt.width/gt,this._height=tt.height/gt),this.setViewport(0,0,this._width,this._height)},getWidth:function(){return this._width},getHeight:function(){return this._height},getViewportAspect:function(){var Ve=this.viewport;return Ve.width/Ve.height},setDevicePixelRatio:function(Ve){this.devicePixelRatio=Ve,this.resize(this._width,this._height)},getDevicePixelRatio:function(){return this.devicePixelRatio},getGLExtension:function(Ve){return this._glinfo.getExtension(Ve)},getGLParameter:function(Ve){return this._glinfo.getParameter(Ve)},setViewport:function(Ve,Je,tt,gt,st){if(typeof Ve=="object"){var St=Ve;Ve=St.x,Je=St.y,tt=St.width,gt=St.height,st=St.devicePixelRatio}st=st||this.devicePixelRatio,this.gl.viewport(Ve*st,Je*st,tt*st,gt*st),this.viewport={x:Ve,y:Je,width:tt,height:gt,devicePixelRatio:st}},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 Ve=this._clearStack.pop();this.clearColor=Ve.clearColor,this.clearBit=Ve.clearBit}},bindSceneRendering:function(Ve){this._sceneRendering=Ve},render:function(Ve,Je,tt,gt){var st=this.gl,St=this.clearColor;if(this.clearBit){st.colorMask(!0,!0,!0,!0),st.depthMask(!0);var At=this.viewport,vt=!1,Tt=At.devicePixelRatio;(At.width!==this._width||At.height!==this._height||Tt&&Tt!==this.devicePixelRatio||At.x||At.y)&&(vt=!0,st.enable(st.SCISSOR_TEST),st.scissor(At.x*Tt,At.y*Tt,At.width*Tt,At.height*Tt)),st.clearColor(St[0],St[1],St[2],St[3]),st.clear(this.clearBit),vt&&st.disable(st.SCISSOR_TEST)}if(tt||Ve.update(!1),Je=Je||Ve.getMainCamera(),!Je){console.error("Can't find camera in the scene.");return}Je.getScene()||Je.update(!0),this._sceneRendering=Ve,Ve.viewBoundingBoxLastFrame.min.set(1/0,1/0,1/0),Ve.viewBoundingBoxLastFrame.max.set(-1/0,-1/0,-1/0);var bt=this.cullRenderList(Ve.opaqueList,Ve,Je),Et=this.cullRenderList(Ve.transparentList,Ve,Je),lt=Ve.material;Ve.trigger("beforerender",this,Ve,Je),gt?(this.renderPreZ(bt,Ve,Je),st.depthFunc(st.LEQUAL)):st.depthFunc(st.LESS);for(var Nt=he(),Zt=xe.create(),Ut=0;Ut0){var vt=Ve[st-1],Tt=vt.joints?vt.joints.length:0,bt=St.joints.length?St.joints.length:0;if(bt===Tt&&St.material===vt.material&&St.lightGroup===vt.lightGroup){St.__program=vt.__program;continue}}var Et=this._programMgr.getProgram(St,At,Je);this.validateProgram(Et),St.__program=Et}},cullRenderList:function(Ve,Je,tt){for(var gt=[],st=0;st0&&Ve.min.array[2]<0&&(Ve.max.array[2]=-1e-20),Ve.applyProjection(Je);var Tt=Ve.min.array,bt=Ve.max.array;if(bt[0]<-1||Tt[0]>1||bt[1]<-1||Tt[1]>1||bt[2]<-1||Tt[2]>1)return!0}return!1}}(),disposeScene:function(Ve){this.disposeNode(Ve,!0,!0),Ve.dispose()},disposeNode:function(Ve,Je,tt){Ve.getParent()&&Ve.getParent().remove(Ve),Ve.traverse(function(gt){gt.geometry&&Je&>.geometry.dispose(this),gt.dispose&>.dispose(this)},this)},disposeGeometry:function(Ve){Ve.dispose(this)},disposeTexture:function(Ve){Ve.dispose(this)},disposeFrameBuffer:function(Ve){Ve.dispose(this)},dispose:function(){},screenToNDC:function(Ve,Je,tt){tt||(tt=new Pe.a),Je=this._height-Je;var gt=this.viewport,st=tt.array;return st[0]=(Ve-gt.x)/gt.width,st[0]=st[0]*2-1,st[1]=(Je-gt.y)/gt.height,st[1]=st[1]*2-1,tt}});ze.opaqueSortCompare=ze.prototype.opaqueSortCompare=function(Ve,Je){return Ve.renderOrder===Je.renderOrder?Ve.__program===Je.__program?Ve.material===Je.material?Ve.geometry.__uid__-Je.geometry.__uid__:Ve.material.__uid__-Je.material.__uid__:Ve.__program&&Je.__program?Ve.__program.__uid__-Je.__program.__uid__:0:Ve.renderOrder-Je.renderOrder},ze.transparentSortCompare=ze.prototype.transparentSortCompare=function(Ve,Je){return Ve.renderOrder===Je.renderOrder?Ve.__depth===Je.__depth?Ve.__program===Je.__program?Ve.material===Je.material?Ve.geometry.__uid__-Je.geometry.__uid__:Ve.material.__uid__-Je.material.__uid__:Ve.__program&&Je.__program?Ve.__program.__uid__-Je.__program.__uid__:0:Ve.__depth-Je.__depth:Ve.renderOrder-Je.renderOrder};var Ke={IDENTITY:he(),WORLD:he(),VIEW:he(),PROJECTION:he(),WORLDVIEW:he(),VIEWPROJECTION:he(),WORLDVIEWPROJECTION:he(),WORLDINVERSE:he(),VIEWINVERSE:he(),PROJECTIONINVERSE:he(),WORLDVIEWINVERSE:he(),VIEWPROJECTIONINVERSE:he(),WORLDVIEWPROJECTIONINVERSE:he(),WORLDTRANSPOSE:he(),VIEWTRANSPOSE:he(),PROJECTIONTRANSPOSE:he(),WORLDVIEWTRANSPOSE:he(),VIEWPROJECTIONTRANSPOSE:he(),WORLDVIEWPROJECTIONTRANSPOSE:he(),WORLDINVERSETRANSPOSE:he(),VIEWINVERSETRANSPOSE:he(),PROJECTIONINVERSETRANSPOSE:he(),WORLDVIEWINVERSETRANSPOSE:he(),VIEWPROJECTIONINVERSETRANSPOSE:he(),WORLDVIEWPROJECTIONINVERSETRANSPOSE:he()};ze.COLOR_BUFFER_BIT=we.a.COLOR_BUFFER_BIT,ze.DEPTH_BUFFER_BIT=we.a.DEPTH_BUFFER_BIT,ze.STENCIL_BUFFER_BIT=we.a.STENCIL_BUFFER_BIT,Ge.a=ze},function(et,Ge,ke){"use strict";function Ze(we,Te){this.action=we,this.context=Te}var Oe={trigger:function(we){if(this.hasOwnProperty("__handlers__")&&this.__handlers__.hasOwnProperty(we)){var Te=this.__handlers__[we],Re=Te.length,Ie=-1,be=arguments;switch(be.length){case 1:for(;++Iexe)){var he=Math.sqrt(xe-ve),pe=fe-he,Se=fe+he;return ye||(ye=new Ze.a),pe<0?Se<0?null:(Te.scaleAndAdd(ye.array,ie,ae,Se),ye):(Te.scaleAndAdd(ye.array,ie,ae,pe),ye)}}}(),intersectBoundingBox:function(be,Pe){var je=this.direction.array,ye=this.origin.array,ie=be.min.array,ae=be.max.array,fe=1/je[0],de=1/je[1],ve=1/je[2],xe,he,pe,Se,Ne,ze;if(fe>=0?(xe=(ie[0]-ye[0])*fe,he=(ae[0]-ye[0])*fe):(he=(ie[0]-ye[0])*fe,xe=(ae[0]-ye[0])*fe),de>=0?(pe=(ie[1]-ye[1])*de,Se=(ae[1]-ye[1])*de):(Se=(ie[1]-ye[1])*de,pe=(ae[1]-ye[1])*de),xe>Se||pe>he||((pe>xe||xe!==xe)&&(xe=pe),(Se=0?(Ne=(ie[2]-ye[2])*ve,ze=(ae[2]-ye[2])*ve):(ze=(ie[2]-ye[2])*ve,Ne=(ae[2]-ye[2])*ve),xe>ze||Ne>he)||((Ne>xe||xe!==xe)&&(xe=Ne),(ze=0?xe:he;return Pe||(Pe=new Ze.a),Te.scaleAndAdd(Pe.array,ye,je,Ke),Pe},intersectTriangle:function(){var be=Te.create(),Pe=Te.create(),je=Te.create(),ye=Te.create();return function(ie,ae,fe,de,ve,xe){var he=this.direction.array,pe=this.origin.array;ie=ie.array,ae=ae.array,fe=fe.array,Te.sub(be,ae,ie),Te.sub(Pe,fe,ie),Te.cross(ye,Pe,he);var Se=Te.dot(be,ye);if(de){if(Se>-Re)return null}else if(Se>-Re&&Se1)return null;Te.cross(ye,be,je);var ze=Te.dot(he,ye)/Se;if(ze<0||ze>1||Ne+ze>1)return null;Te.cross(ye,be,Pe);var Ke=-Te.dot(je,ye)/Se;return Ke<0?null:(ve||(ve=new Ze.a),xe&&Ze.a.set(xe,1-Ne-ze,Ne,ze),Te.scaleAndAdd(ve.array,pe,he,Ke),ve)}}(),applyTransform:function(be){Ze.a.add(this.direction,this.direction,this.origin),Ze.a.transformMat4(this.origin,this.origin,be),Ze.a.transformMat4(this.direction,this.direction,be),Ze.a.sub(this.direction,this.direction,this.origin),Ze.a.normalize(this.direction,this.direction)},copy:function(be){Ze.a.copy(this.origin,be.origin),Ze.a.copy(this.direction,be.direction)},clone:function(){var be=new Ie;return be.copy(this),be}},Ge.a=Ie},function(et,Ge,ke){"use strict";var Ze=ke(1),Oe=ke.n(Ze),we=Oe.a.quat,Te=function(be,Pe,je,ye){be=be||0,Pe=Pe||0,je=je||0,ye=ye===void 0?1:ye,this.array=we.fromValues(be,Pe,je,ye),this._dirty=!0};Te.prototype={constructor:Te,add:function(be){return we.add(this.array,this.array,be.array),this._dirty=!0,this},calculateW:function(){return we.calculateW(this.array,this.array),this._dirty=!0,this},set:function(be,Pe,je,ye){return this.array[0]=be,this.array[1]=Pe,this.array[2]=je,this.array[3]=ye,this._dirty=!0,this},setArray:function(be){return this.array[0]=be[0],this.array[1]=be[1],this.array[2]=be[2],this.array[3]=be[3],this._dirty=!0,this},clone:function(){return new Te(this.x,this.y,this.z,this.w)},conjugate:function(){return we.conjugate(this.array,this.array),this._dirty=!0,this},copy:function(be){return we.copy(this.array,be.array),this._dirty=!0,this},dot:function(be){return we.dot(this.array,be.array)},fromMat3:function(be){return we.fromMat3(this.array,be.array),this._dirty=!0,this},fromMat4:function(){var be=Oe.a.mat3,Pe=be.create();return function(je){return be.fromMat4(Pe,je.array),be.transpose(Pe,Pe),we.fromMat3(this.array,Pe),this._dirty=!0,this}}(),identity:function(){return we.identity(this.array),this._dirty=!0,this},invert:function(){return we.invert(this.array,this.array),this._dirty=!0,this},len:function(){return we.len(this.array)},length:function(){return we.length(this.array)},lerp:function(be,Pe,je){return we.lerp(this.array,be.array,Pe.array,je),this._dirty=!0,this},mul:function(be){return we.mul(this.array,this.array,be.array),this._dirty=!0,this},mulLeft:function(be){return we.multiply(this.array,be.array,this.array),this._dirty=!0,this},multiply:function(be){return we.multiply(this.array,this.array,be.array),this._dirty=!0,this},multiplyLeft:function(be){return we.multiply(this.array,be.array,this.array),this._dirty=!0,this},normalize:function(){return we.normalize(this.array,this.array),this._dirty=!0,this},rotateX:function(be){return we.rotateX(this.array,this.array,be),this._dirty=!0,this},rotateY:function(be){return we.rotateY(this.array,this.array,be),this._dirty=!0,this},rotateZ:function(be){return we.rotateZ(this.array,this.array,be),this._dirty=!0,this},rotationTo:function(be,Pe){return we.rotationTo(this.array,be.array,Pe.array),this._dirty=!0,this},setAxes:function(be,Pe,je){return we.setAxes(this.array,be.array,Pe.array,je.array),this._dirty=!0,this},setAxisAngle:function(be,Pe){return we.setAxisAngle(this.array,be.array,Pe),this._dirty=!0,this},slerp:function(be,Pe,je){return we.slerp(this.array,be.array,Pe.array,je),this._dirty=!0,this},sqrLen:function(){return we.sqrLen(this.array)},squaredLength:function(){return we.squaredLength(this.array)},fromEuler:function(be,Pe){return Te.fromEuler(this,be,Pe)},toString:function(){return"["+Array.prototype.join.call(this.array,",")+"]"},toArray:function(){return Array.prototype.slice.call(this.array)}};var Re=Object.defineProperty;if(Re){var Ie=Te.prototype;Re(Ie,"x",{get:function(){return this.array[0]},set:function(be){this.array[0]=be,this._dirty=!0}}),Re(Ie,"y",{get:function(){return this.array[1]},set:function(be){this.array[1]=be,this._dirty=!0}}),Re(Ie,"z",{get:function(){return this.array[2]},set:function(be){this.array[2]=be,this._dirty=!0}}),Re(Ie,"w",{get:function(){return this.array[3]},set:function(be){this.array[3]=be,this._dirty=!0}})}Te.add=function(be,Pe,je){return we.add(be.array,Pe.array,je.array),be._dirty=!0,be},Te.set=function(be,Pe,je,ye,ie){we.set(be.array,Pe,je,ye,ie),be._dirty=!0},Te.copy=function(be,Pe){return we.copy(be.array,Pe.array),be._dirty=!0,be},Te.calculateW=function(be,Pe){return we.calculateW(be.array,Pe.array),be._dirty=!0,be},Te.conjugate=function(be,Pe){return we.conjugate(be.array,Pe.array),be._dirty=!0,be},Te.identity=function(be){return we.identity(be.array),be._dirty=!0,be},Te.invert=function(be,Pe){return we.invert(be.array,Pe.array),be._dirty=!0,be},Te.dot=function(be,Pe){return we.dot(be.array,Pe.array)},Te.len=function(be){return we.length(be.array)},Te.lerp=function(be,Pe,je,ye){return we.lerp(be.array,Pe.array,je.array,ye),be._dirty=!0,be},Te.slerp=function(be,Pe,je,ye){return we.slerp(be.array,Pe.array,je.array,ye),be._dirty=!0,be},Te.mul=function(be,Pe,je){return we.multiply(be.array,Pe.array,je.array),be._dirty=!0,be},Te.multiply=Te.mul,Te.rotateX=function(be,Pe,je){return we.rotateX(be.array,Pe.array,je),be._dirty=!0,be},Te.rotateY=function(be,Pe,je){return we.rotateY(be.array,Pe.array,je),be._dirty=!0,be},Te.rotateZ=function(be,Pe,je){return we.rotateZ(be.array,Pe.array,je),be._dirty=!0,be},Te.setAxisAngle=function(be,Pe,je){return we.setAxisAngle(be.array,Pe.array,je),be._dirty=!0,be},Te.normalize=function(be,Pe){return we.normalize(be.array,Pe.array),be._dirty=!0,be},Te.sqrLen=function(be){return we.sqrLen(be.array)},Te.squaredLength=Te.sqrLen,Te.fromMat3=function(be,Pe){return we.fromMat3(be.array,Pe.array),be._dirty=!0,be},Te.setAxes=function(be,Pe,je,ye){return we.setAxes(be.array,Pe.array,je.array,ye.array),be._dirty=!0,be},Te.rotationTo=function(be,Pe,je){return we.rotationTo(be.array,Pe.array,je.array),be._dirty=!0,be},Te.fromEuler=function(be,Pe,he){be._dirty=!0,Pe=Pe.array;var ye=be.array,ie=Math.cos(Pe[0]/2),ae=Math.cos(Pe[1]/2),fe=Math.cos(Pe[2]/2),de=Math.sin(Pe[0]/2),ve=Math.sin(Pe[1]/2),xe=Math.sin(Pe[2]/2),he=(he||"XYZ").toUpperCase();switch(he){case"XYZ":ye[0]=de*ae*fe+ie*ve*xe,ye[1]=ie*ve*fe-de*ae*xe,ye[2]=ie*ae*xe+de*ve*fe,ye[3]=ie*ae*fe-de*ve*xe;break;case"YXZ":ye[0]=de*ae*fe+ie*ve*xe,ye[1]=ie*ve*fe-de*ae*xe,ye[2]=ie*ae*xe-de*ve*fe,ye[3]=ie*ae*fe+de*ve*xe;break;case"ZXY":ye[0]=de*ae*fe-ie*ve*xe,ye[1]=ie*ve*fe+de*ae*xe,ye[2]=ie*ae*xe+de*ve*fe,ye[3]=ie*ae*fe-de*ve*xe;break;case"ZYX":ye[0]=de*ae*fe-ie*ve*xe,ye[1]=ie*ve*fe+de*ae*xe,ye[2]=ie*ae*xe-de*ve*fe,ye[3]=ie*ae*fe+de*ve*xe;break;case"YZX":ye[0]=de*ae*fe+ie*ve*xe,ye[1]=ie*ve*fe+de*ae*xe,ye[2]=ie*ae*xe-de*ve*fe,ye[3]=ie*ae*fe-de*ve*xe;break;case"XZY":ye[0]=de*ae*fe-ie*ve*xe,ye[1]=ie*ve*fe-de*ae*xe,ye[2]=ie*ae*xe+de*ve*fe,ye[3]=ie*ae*fe+de*ve*xe;break}},Ge.a=Te},function(et,Ge,ke){"use strict";var Ze=ke(28),Oe=ke(9),we=ke(52),Te=ke(49),Re=ke(1),Ie=ke.n(Re),be=Ie.a.vec3,Pe=Ie.a.vec4,je=Ze.a.extend(function(){return{projectionMatrix:new Oe.a,invProjectionMatrix:new Oe.a,viewMatrix:new Oe.a,frustum:new we.a}},function(){this.update(!0)},{update:function(ye){Ze.a.prototype.update.call(this,ye),Oe.a.invert(this.viewMatrix,this.worldTransform),this.updateProjectionMatrix(),Oe.a.invert(this.invProjectionMatrix,this.projectionMatrix),this.frustum.setFromProjection(this.projectionMatrix)},setViewMatrix:function(ye){Oe.a.copy(this.viewMatrix,ye),Oe.a.invert(this.worldTransform,ye),this.decomposeWorldTransform()},decomposeProjectionMatrix:function(){},setProjectionMatrix:function(ye){Oe.a.copy(this.projectionMatrix,ye),Oe.a.invert(this.invProjectionMatrix,ye),this.decomposeProjectionMatrix()},updateProjectionMatrix:function(){},castRay:function(){var ye=Pe.create();return function(ie,ae){var fe=ae!==void 0?ae:new Te.a,de=ie.array[0],ve=ie.array[1];return Pe.set(ye,de,ve,-1,1),Pe.transformMat4(ye,ye,this.invProjectionMatrix.array),Pe.transformMat4(ye,ye,this.worldTransform.array),be.scale(fe.origin.array,ye,1/ye[3]),Pe.set(ye,de,ve,1,1),Pe.transformMat4(ye,ye,this.invProjectionMatrix.array),Pe.transformMat4(ye,ye,this.worldTransform.array),be.scale(ye,ye,1/ye[3]),be.sub(fe.direction.array,ye,fe.origin.array),be.normalize(fe.direction.array,fe.direction.array),fe.direction._dirty=!0,fe.origin._dirty=!0,fe}}()});Ge.a=je},function(et,Ge,ke){"use strict";var Ze=ke(4),Oe=ke(15),we=ke(67),Te=ke(1),Re=ke.n(Te),Ie=Re.a.vec3,be=Ie.set,Pe=Ie.copy,je=Ie.transformMat4,ye=Math.min,ie=Math.max,ae=function(){this.planes=[];for(var fe=0;fe<6;fe++)this.planes.push(new we.a);this.boundingBox=new Oe.a,this.vertices=[];for(var fe=0;fe<8;fe++)this.vertices[fe]=Ie.fromValues(0,0,0)};ae.prototype={setFromProjection:function(fe){var de=this.planes,ve=fe.array,xe=ve[0],he=ve[1],pe=ve[2],Se=ve[3],Ne=ve[4],ze=ve[5],Ke=ve[6],Ve=ve[7],Je=ve[8],tt=ve[9],gt=ve[10],st=ve[11],St=ve[12],At=ve[13],vt=ve[14],Tt=ve[15];be(de[0].normal.array,Se-xe,Ve-Ne,st-Je),de[0].distance=-(Tt-St),de[0].normalize(),be(de[1].normal.array,Se+xe,Ve+Ne,st+Je),de[1].distance=-(Tt+St),de[1].normalize(),be(de[2].normal.array,Se+he,Ve+ze,st+tt),de[2].distance=-(Tt+At),de[2].normalize(),be(de[3].normal.array,Se-he,Ve-ze,st-tt),de[3].distance=-(Tt-At),de[3].normalize(),be(de[4].normal.array,Se-pe,Ve-Ke,st-gt),de[4].distance=-(Tt-vt),de[4].normalize(),be(de[5].normal.array,Se+pe,Ve+Ke,st+gt),de[5].distance=-(Tt+vt),de[5].normalize();var bt=this.boundingBox;if(Tt===0){var Et=ze/xe,lt=-vt/(gt-1),Nt=-vt/(gt+1),Zt=-Nt/ze,Ut=-lt/ze;bt.min.set(-Zt*Et,-Zt,Nt),bt.max.set(Zt*Et,Zt,lt);var Ft=this.vertices;be(Ft[0],-Zt*Et,-Zt,Nt),be(Ft[1],-Zt*Et,Zt,Nt),be(Ft[2],Zt*Et,-Zt,Nt),be(Ft[3],Zt*Et,Zt,Nt),be(Ft[4],-Ut*Et,-Ut,lt),be(Ft[5],-Ut*Et,Ut,lt),be(Ft[6],Ut*Et,-Ut,lt),be(Ft[7],Ut*Et,Ut,lt)}else{var Yt=(-1-St)/xe,dn=(1-St)/xe,Dn=(1-At)/ze,Rn=(-1-At)/ze,Zn=(-1-vt)/gt,ln=(1-vt)/gt;bt.min.set(Math.min(Yt,dn),Math.min(Rn,Dn),Math.min(ln,Zn)),bt.max.set(Math.max(dn,Yt),Math.max(Dn,Rn),Math.max(Zn,ln));var Gn=bt.min.array,Wn=bt.max.array,Ft=this.vertices;be(Ft[0],Gn[0],Gn[1],Gn[2]),be(Ft[1],Gn[0],Wn[1],Gn[2]),be(Ft[2],Wn[0],Gn[1],Gn[2]),be(Ft[3],Wn[0],Wn[1],Gn[2]),be(Ft[4],Gn[0],Gn[1],Wn[2]),be(Ft[5],Gn[0],Wn[1],Wn[2]),be(Ft[6],Wn[0],Gn[1],Wn[2]),be(Ft[7],Wn[0],Wn[1],Wn[2])}},getTransformedBoundingBox:function(){var fe=Ie.create();return function(de,ve){var xe=this.vertices,he=ve.array,pe=de.min,Se=de.max,Ne=pe.array,ze=Se.array,Ke=xe[0];je(fe,Ke,he),Pe(Ne,fe),Pe(ze,fe);for(var Ve=1;Ve<8;Ve++)Ke=xe[Ve],je(fe,Ke,he),Ne[0]=ye(fe[0],Ne[0]),Ne[1]=ye(fe[1],Ne[1]),Ne[2]=ye(fe[2],Ne[2]),ze[0]=ie(fe[0],ze[0]),ze[1]=ie(fe[1],ze[1]),ze[2]=ie(fe[2],ze[2]);return pe._dirty=!0,Se._dirty=!0,de}}()},Ge.a=ae},function(et,Ge){var ke=function(){this.head=null,this.tail=null,this._len=0},Ze=ke.prototype;Ze.insert=function(Ie){var be=new Oe(Ie);return this.insertEntry(be),be},Ze.insertEntry=function(Ie){this.head?(this.tail.next=Ie,Ie.prev=this.tail,Ie.next=null,this.tail=Ie):this.head=this.tail=Ie,this._len++},Ze.remove=function(Ie){var be=Ie.prev,Pe=Ie.next;be?be.next=Pe:this.head=Pe,Pe?Pe.prev=be:this.tail=be,Ie.next=Ie.prev=null,this._len--},Ze.len=function(){return this._len},Ze.clear=function(){this.head=this.tail=null,this._len=0};var Oe=function(Ie){this.value=Ie,this.next,this.prev},we=function(Ie){this._list=new ke,this._map={},this._maxSize=Ie||10,this._lastRemovedEntry=null},Te=we.prototype;Te.put=function(Ie,be){var Pe=this._list,je=this._map,ye=null;if(je[Ie]==null){var ie=Pe.len(),ae=this._lastRemovedEntry;if(ie>=this._maxSize&&ie>0){var fe=Pe.head;Pe.remove(fe),delete je[fe.key],ye=fe.value,this._lastRemovedEntry=fe}ae?ae.value=be:ae=new Oe(be),ae.key=Ie,Pe.insertEntry(ae),je[Ie]=ae}return ye},Te.get=function(Ie){var be=this._map[Ie],Pe=this._list;if(be!=null)return be!==Pe.tail&&(Pe.remove(be),Pe.insertEntry(be)),be.value},Te.clear=function(){this._list.clear(),this._map={}};var Re=we;et.exports=Re},function(et,Ge,ke){"use strict";var Ze=ke(5),Oe=ke(25),we=ke(102),Te=ke(55),Re=ke(56),Ie=ke(29),be=ke(104),Pe=ke(105),je={loadTexture:function(ye,ie,ae,fe){var de;if(typeof ie=="function"?(ae=ie,fe=ae,ie={}):ie=ie||{},typeof ye=="string"){if(ye.match(/.hdr$/)||ie.fileType==="hdr")return de=new Ze.a({width:0,height:0,sRGB:!1}),je._fetchTexture(ye,function(ve){Pe.a.parseRGBE(ve,de,ie.exposure),de.dirty(),ae&&ae(de)},fe),de;ye.match(/.dds$/)||ie.fileType==="dds"?(de=new Ze.a({width:0,height:0}),je._fetchTexture(ye,function(ve){be.a.parse(ve,de),de.dirty(),ae&&ae(de)},fe)):(de=new Ze.a,de.load(ye),de.success(ae),de.error(fe))}else if(typeof ye=="object"&&typeof ye.px!="undefined"){var de=new Oe.a;de.load(ye),de.success(ae),de.error(fe)}return de},loadPanorama:function(ye,ie,ae,fe,de,ve){var xe=this;typeof fe=="function"?(de=fe,ve=de,fe={}):fe=fe||{},je.loadTexture(ie,fe,function(he){he.flipY=fe.flipY||!1,xe.panoramaToCubeMap(ye,he,ae,fe),he.dispose(ye),de&&de(ae)},ve)},panoramaToCubeMap:function(ye,ie,ae,fe){var de=new Te.a,ve=new Re.a({scene:new Ie.a});return ve.material.set("diffuseMap",ie),fe=fe||{},fe.encodeRGBM&&ve.material.define("fragment","RGBM_ENCODE"),ae.sRGB=ie.sRGB,de.texture=ae,de.render(ye,ve.scene),de.texture=null,de.dispose(ye),ae},heightToNormal:function(ye,ie){var ae=document.createElement("canvas"),fe=ae.width=ye.width,de=ae.height=ye.height,ve=ae.getContext("2d");ve.drawImage(ye,0,0,fe,de),ie=ie||!1;for(var xe=ve.getImageData(0,0,fe,de),he=ve.createImageData(fe,de),pe=0;pe20)return console.warn("Given image is not a height map"),ye}var Ve,Je,tt,gt;pe%(fe*4)===0?(Ve=xe.data[pe],tt=xe.data[pe+4]):pe%(fe*4)===(fe-1)*4?(Ve=xe.data[pe-4],tt=xe.data[pe]):(Ve=xe.data[pe-4],tt=xe.data[pe+4]),pefe*(de-1)*4?(Je=xe.data[pe-fe*4],gt=xe.data[pe]):(Je=xe.data[pe-fe*4],gt=xe.data[pe+fe*4]),he.data[pe]=Ve-tt+127,he.data[pe+1]=Je-gt+127,he.data[pe+2]=255,he.data[pe+3]=255}return ve.putImageData(he,0,0),ae},isHeightImage:function(ye,ie,ae){if(!ye||!ye.width||!ye.height)return!1;var fe=document.createElement("canvas"),de=fe.getContext("2d"),ve=ie||32;ae=ae||20,fe.width=fe.height=ve,de.drawImage(ye,0,0,ve,ve);for(var xe=de.getImageData(0,0,ve,ve),he=0;heae)return!1}return!0},_fetchTexture:function(ye,ie,ae){we.a.get({url:ye,responseType:"arraybuffer",onload:ie,onerror:ae})},createChessboard:function(ye,ie,ae,fe){ye=ye||512,ie=ie||64,ae=ae||"black",fe=fe||"white";var de=Math.ceil(ye/ie),ve=document.createElement("canvas");ve.width=ye,ve.height=ye;var xe=ve.getContext("2d");xe.fillStyle=fe,xe.fillRect(0,0,ye,ye),xe.fillStyle=ae;for(var he=0;he0?this.material.define("fragment","LOD"):this.material.undefine("fragment","LOD"),be.renderPass([this],Pe)}});Ge.a=Ie},function(et,Ge,ke){"use strict";var Ze=ke(2),Oe=ke(143),we=ke(144);Ze.a.Shader.import(we.a),Ge.a=Ze.a.Mesh.extend(function(){var Te=new Oe.a({dynamic:!0}),Re=new Ze.a.Material({shader:Ze.a.createShader("ecgl.labels"),transparent:!0,depthMask:!1});return{geometry:Te,material:Re,culling:!1,castShadow:!1,ignorePicking:!0}})},function(et,Ge,ke){"use strict";var Ze=ke(0),Oe=ke.n(Ze),we=ke(2),Te=ke(186),Re=ke(22),Ie=ke(3),be=ke(1),Pe=ke.n(be),je=ke(60),ye=ke(61),ie=ke(40),ae=Pe.a.vec3;we.a.Shader.import(ie.a);function fe(de){this.rootNode=new we.a.Node,this._triangulationResults={},this._shadersMap=we.a.COMMON_SHADERS.reduce(function(xe,he){return xe[he]=we.a.createShader("ecgl."+he),xe},{}),this._linesShader=we.a.createShader("ecgl.meshLines3D");var ve={};we.a.COMMON_SHADERS.forEach(function(xe){ve[xe]=new we.a.Material({shader:we.a.createShader("ecgl."+xe)})}),this._groundMaterials=ve,this._groundMesh=new we.a.Mesh({geometry:new we.a.PlaneGeometry({dynamic:!0}),castShadow:!1,renderNormal:!0,$ignorePicking:!0}),this._groundMesh.rotation.rotateX(-Math.PI/2),this._labelsBuilder=new ye.a(512,512,de),this._labelsBuilder.getMesh().renderOrder=100,this._labelsBuilder.getMesh().material.depthTest=!1,this.rootNode.add(this._labelsBuilder.getMesh()),this._initMeshes(),this._api=de}fe.prototype={constructor:fe,extrudeY:!0,update:function(de,ve,xe,he,pe){var Se=de.getData();he==null&&(he=0),pe==null&&(pe=Se.count()),this._startIndex=he,this._endIndex=pe-1,this._triangulation(de,he,pe);var Ne=this._getShader(de.get("shading"));this._prepareMesh(de,Ne,xe,he,pe),this.rootNode.updateWorldTransform(),this._updateRegionMesh(de,xe,he,pe);var ze=de.coordinateSystem;ze.type==="geo3D"&&this._updateGroundPlane(de,ze,xe);var Ke=this;this._labelsBuilder.updateData(Se,he,pe),this._labelsBuilder.getLabelPosition=function(Ve,Je,tt){var gt=Se.getName(Ve),st,St=tt;if(ze.type==="geo3D"){var At=ze.getRegion(gt);return st=At.center,ze.dataToPoint([st[0],st[1],St])}else var vt=Ke._triangulationResults[Ve-Ke._startIndex],st=Ke.extrudeY?[(vt.max[0]+vt.min[0])/2,vt.max[1]+St,(vt.max[2]+vt.min[2])/2]:[(vt.max[0]+vt.min[0])/2,(vt.max[1]+vt.min[1])/2,vt.max[2]+St]},this._data=Se,this._labelsBuilder.updateLabels(),this._updateDebugWireframe(de),this._lastHoverDataIndex=0},_initMeshes:function(){this.rootNode.removeAll();var de=this;function ve(){var pe=new we.a.Mesh({name:"Polygon",material:new we.a.Material({shader:de._shadersMap.lambert}),culling:!1,geometry:new we.a.Geometry({sortTriangles:!0,dynamic:!0}),ignorePicking:!0,renderNormal:!0});return Oe.a.util.extend(pe.geometry,je.a),pe}var xe=ve(),he=new we.a.Mesh({material:new we.a.Material({shader:this._linesShader}),castShadow:!1,ignorePicking:!0,$ignorePicking:!0,geometry:new Re.a({useNativeLine:!1})});this.rootNode.add(xe),this.rootNode.add(he),xe.material.define("both","VERTEX_COLOR"),xe.material.define("fragment","DOUBLE_SIDED"),this._polygonMesh=xe,this._linesMesh=he,this.rootNode.add(this._groundMesh)},_getShader:function(de){var ve=this._shadersMap[de];return ve||(console.warn("Unkown shading "+de),ve=this._shadersMap.lambert),ve.__shading=de,ve},_prepareMesh:function(de,ve,xe,he,pe){for(var Se=0,Ne=0,ze=0,Ke=0,Ve=he;Ve65535?new Uint32Array(Ne*3):new Uint16Array(Ne*3),gt.material.shader!==ve&>.material.attachShader(ve,!0),we.a.setMaterialFromModel(ve.__shading,gt.material,de,xe),ze>0&&(this._linesMesh.geometry.resetOffset(),this._linesMesh.geometry.setVertexCount(ze),this._linesMesh.geometry.setTriangleCount(Ke)),this._dataIndexOfVertex=new Uint32Array(Se),this._vertexRangeOfDataIndex=new Uint32Array((pe-he)*2)},_updateRegionMesh:function(de,ve,xe,he){for(var pe=de.getData(),Se=0,Ne=0,ze=!1,Zt=this._polygonMesh,Ke=this._linesMesh,Ve=xe;Ve0;Nt&&(lt*=ve.getDevicePixelRatio(),this._updateLinesGeometry(Ke.geometry,de,Ve,Tt,lt,de.coordinateSystem.transform)),Ke.invisible=!Nt,Ke.material.set({color:At})}var Zt=this._polygonMesh;Zt.material.transparent=ze,Zt.material.depthMask=!ze,Zt.geometry.updateBoundingBox(),Zt.material.get("normalMap")&&Zt.geometry.generateTangents(),Zt.seriesIndex=de.seriesIndex,Zt.on("mousemove",this._onmousemove,this),Zt.on("mouseout",this._onmouseout,this)},_updateDebugWireframe:function(de){var ve=de.getModel("debug.wireframe");if(ve.get("show")){var xe=we.a.parseColor(ve.get("lineStyle.color")||"rgba(0,0,0,0.5)"),he=Ie.a.firstNotNull(ve.get("lineStyle.width"),1),pe=this._polygonMesh;pe.geometry.generateBarycentric(),pe.material.define("both","WIREFRAME_TRIANGLE"),pe.material.set("wireframeLineColor",xe),pe.material.set("wireframeLineWidth",he)}},_onmousemove:function(de){var ve=this._dataIndexOfVertex[de.triangle[0]];ve==null&&(ve=-1),ve!==this._lastHoverDataIndex&&(this.downplay(this._lastHoverDataIndex),this.highlight(ve)),this._lastHoverDataIndex=ve,this._polygonMesh.dataIndex=ve},_onmouseover:function(de){if(de.target){var ve=de.target.eventData?this._data.indexOfName(de.target.eventData.name):de.target.dataIndex;ve!=null&&(this.highlight(ve),this._labelsBuilder.updateLabels([ve]))}},_onmouseout:function(de){de.target&&(this.downplay(this._lastHoverDataIndex),this._lastHoverDataIndex=-1,this._polygonMesh.dataIndex=-1)},_updateGroundPlane:function(de,ve,xe){var he=de.getModel("groundPlane",de);if(this._groundMesh.invisible=!he.get("show",!0),!this._groundMesh.invisible){var pe=de.get("shading"),Se=this._groundMaterials[pe];Se||(console.warn("Unkown shading "+pe),Se=this._groundMaterials.lambert),we.a.setMaterialFromModel(pe,Se,he,xe),Se.get("normalMap")&&this._groundMesh.geometry.generateTangents(),this._groundMesh.material=Se,this._groundMesh.material.set("color",we.a.parseColor(he.get("color"))),this._groundMesh.scale.set(ve.size[0],ve.size[2],1)}},_triangulation:function(de,ve,xe){this._triangulationResults=[];for(var he=[1/0,1/0,1/0],pe=[-1/0,-1/0,-1/0],Se=de.coordinateSystem,Ne=ve;Ne1?he:0,Gn[Pt][vt]=Dn.points[on+2],Ke.set(pe+Pt,Gn[Pt]),ze?(ft[0]=(Dn.points[on]*Tt[0]-bt[0])/lt,ft[1]=(Dn.points[on+2]*Tt[vt]-bt[vt])/lt):(ft[0]=(Vt?Bt:Bt+nn)/lt,ft[1]=(Gn[Pt][At]*Tt[At]-bt[At])/lt),Je.set(pe+Pt,ft)}ae.sub(Wn,Gn[1],Gn[0]),ae.sub(qt,Gn[3],Gn[0]),ae.cross(xt,Wn,qt),ae.normalize(xt,xt);for(var Pt=0;Pt<4;Pt++)Ve.set(pe+Pt,xt),st&&tt.set(pe+Pt,Ne);for(var Pt=0;Pt<6;Pt++)St[Se*3+Pt]=ln[Pt]+pe;pe+=4,Se+=2,Bt+=nn}}return ve.dirty(),{vertexOffset:pe,triangleOffset:Se}},_getRegionLinesInfo:function(de,ve,xe){var he=0,pe=0,Se=ve.getRegionModel(de),Ne=Se.getModel("itemStyle"),ze=Ne.get("borderWidth");if(ze>0){var Ke=ve.getRegionPolygonCoords(de);Ke.forEach(function(Ve){var Je=Ve.exterior,tt=Ve.interiors;he+=xe.getPolylineVertexCount(Je),pe+=xe.getPolylineTriangleCount(Je);for(var gt=0;gtthis._endIndex)){ve-=this._startIndex;for(var he=this._vertexRangeOfDataIndex[ve*2];he=2e4},doSortTriangles:function(Pe,je){var ye=this.indices;if(je===0){var ie=this.attributes.position,Pe=Pe.array;(!this._triangleZList||this._triangleZList.length!==this.triangleCount)&&(this._triangleZList=new Float32Array(this.triangleCount),this._sortedTriangleIndices=new Uint32Array(this.triangleCount),this._indicesTmp=new ye.constructor(ye.length),this._triangleZListTmp=new Float32Array(this.triangleCount));for(var ae=0,fe,de=0;de0,ie={},ae=0;ae2?(st=this._updateSymbolSprite(fe,tt,Ve,Je),Ne.enableTexture("sprite")):Ne.disableTexture("sprite"),Ke.position.init(he-xe);var St=[];if(gt){Ne.undefine("VERTEX_SIZE"),Ne.undefine("VERTEX_COLOR");var At=Se.getVisual("color"),vt=Se.getVisual("opacity");we.a.parseColor(At,St),St[3]*=vt,Ne.set({color:St,u_Size:Ve.maxSize*this._sizeScale})}else Ne.set({color:[1,1,1,1]}),Ne.define("VERTEX_SIZE"),Ne.define("VERTEX_COLOR"),Ke.size.init(he-xe),Ke.color.init(he-xe),this._originalOpacity=new Float32Array(he-xe);for(var Tt=Se.getLayout("points"),bt=Ke.position.value,Et=!1,lt=0;lt1?(he[0]=ve.maxSize,he[1]=ve.maxSize/ve.aspect):(he[1]=ve.maxSize,he[0]=ve.maxSize*ve.aspect),he[0]=he[0]||1,he[1]=he[1]||1,(this._symbolType!==ve.type||!ie(this._symbolSize,he)||this._lineWidth!==de.lineWidth)&&(Te.a.createSymbolSprite(ve.type,he,{fill:"#fff",lineWidth:de.lineWidth,stroke:"transparent",shadowColor:"transparent",minMargin:Math.min(he[0]/2,10)},this._spriteImageCanvas),Te.a.createSDFFromCanvas(this._spriteImageCanvas,Math.min(this._spriteImageCanvas.width,32),je,this._mesh.material.get("sprite").image),this._symbolType=ve.type,this._symbolSize=he,this._lineWidth=de.lineWidth),this._spriteImageCanvas.width/ve.maxSize*xe},_updateMaterial:function(fe,de){var ve=fe.get("blendMode")==="lighter"?we.a.additiveBlend:null,xe=this._mesh.material;xe.blend=ve,xe.set("lineWidth",de.lineWidth/je);var he=we.a.parseColor(de.stroke);xe.set("strokeColor",he),xe.transparent=!0,xe.depthMask=!1,xe.depthTest=!this.is2D,xe.sortVertices=!this.is2D},_updateLabelBuilder:function(fe,Se,ve){var xe=fe.getData(),he=this._mesh.geometry,pe=he.attributes.position.value,Se=this._startDataIndex,Ne=this._mesh.sizeScale;this._labelsBuilder.updateData(xe,Se,ve),this._labelsBuilder.getLabelPosition=function(ze,Ke,Ve){var Je=(ze-Se)*3;return[pe[Je],pe[Je+1],pe[Je+2]]},this._labelsBuilder.getLabelDistance=function(ze,Ke,Ve){var Je=he.attributes.size.get(ze-Se)/Ne;return Je/2+Ve},this._labelsBuilder.updateLabels()},_updateAnimation:function(fe){we.a.updateVertexAnimation([["prevPosition","position"],["prevSize","size"]],this._prevMesh,this._mesh,fe)},_updateHandler:function(fe,de,ve){var xe=fe.getData(),he=this._mesh,pe=this,Se=-1,Ne=fe.coordinateSystem&&fe.coordinateSystem.type==="cartesian3D",ze;Ne&&(ze=fe.coordinateSystem.model),he.seriesIndex=fe.seriesIndex,he.off("mousemove"),he.off("mouseout"),he.on("mousemove",function(Ke){var Ve=Ke.vertexIndex+pe._startDataIndex;Ve!==Se&&(this.highlightOnMouseover&&(this.downplay(xe,Se),this.highlight(xe,Ve),this._labelsBuilder.updateLabels([Ve])),Ne&&ve.dispatchAction({type:"grid3DShowAxisPointer",value:[xe.get(fe.coordDimToDataDim("x")[0],Ve),xe.get(fe.coordDimToDataDim("y")[0],Ve),xe.get(fe.coordDimToDataDim("z")[0],Ve)],grid3DIndex:ze.componentIndex})),he.dataIndex=Ve,Se=Ve},this),he.on("mouseout",function(Ke){var Ve=Ke.vertexIndex+pe._startDataIndex;this.highlightOnMouseover&&(this.downplay(xe,Ve),this._labelsBuilder.updateLabels()),Se=-1,he.dataIndex=-1,Ne&&ve.dispatchAction({type:"grid3DHideAxisPointer",grid3DIndex:ze.componentIndex})},this)},updateLayout:function(fe,de,ve){var xe=fe.getData();if(this._mesh){var he=this._mesh.geometry.attributes.position.value,pe=xe.getLayout("points");if(this.is2D)for(var Se=0;Sethis._endDataIndex||dethis._endDataIndex||de.05&&(Se=!0),Je!==Ne&&(ze=!0),Ne=Je,pe=tt}return Se&&console.warn("Different symbol width / height ratio will be ignored."),ze&&console.warn("Different symbol type will be ignored."),{maxSize:Ke,type:Ne,aspect:pe}}},Ge.a=ae},function(et,Ge,ke){"use strict";Ge.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(et,Ge,ke){"use strict";var Ze=ke(28),Oe=ke(11),we=0,Te=null,Re=!0,Ie,be=function(){this.triangleCount=0,this.vertexCount=0,this.drawCallCount=0};function Pe(ye,ie,ae){this.availableAttributes=ye,this.availableAttributeSymbols=ie,this.indicesBuffer=ae,this.vao=null}var je=Ze.a.extend({material:null,geometry:null,mode:Oe.a.TRIANGLES,_drawCache:null,_renderInfo:null},function(){this._drawCache={},this._renderInfo=new be},{__program:null,lightGroup:0,renderOrder:0,lineWidth:1,culling:!0,cullFace:Oe.a.BACK,frontFace:Oe.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(ye){},afterRender:function(ye,ie){},getBoundingBox:function(ye,ie){return ie=Ze.a.prototype.getBoundingBox.call(this,ye,ie),this.geometry&&this.geometry.boundingBox&&ie.union(this.geometry.boundingBox),ie},render:function(ye,ie,ae){var fe=ye.gl;ie=ie||this.material;var de=ie.shader,ve=this.geometry,xe=this.mode,he=ve.vertexCount,pe=ve.isUseIndices(),Se=ye.getGLExtension("OES_element_index_uint"),Ne=Se&&he>65535,ze=Ne?fe.UNSIGNED_INT:fe.UNSIGNED_SHORT,Ke=ye.getGLExtension("OES_vertex_array_object"),Ve=!ve.dynamic,Je=this._renderInfo;Je.vertexCount=he,Je.triangleCount=0,Je.drawCallCount=0;var tt=!1;if(Ie=ye.__uid__+"-"+ve.__uid__+"-"+ae.__uid__,(Ie!==we||Ke&&Ve||ve._cache.isDirty("any"))&&(tt=!0),we=Ie,!tt)Re?(fe.drawElements(xe,Te.count,ze,0),Je.triangleCount=Te.count/3):fe.drawArrays(xe,0,he),Je.drawCallCount=1;else{var gt=this._drawCache[Ie];if(!gt){var st=ve.getBufferChunks(ye);if(!st)return;gt=[];for(var St=0;St>1,Oe|=Oe>>2,Oe|=Oe>>4,Oe|=Oe>>8,Oe|=Oe>>16,Oe++,Oe},Ze.nearestPowerOfTwo=function(Oe){return Math.pow(2,Math.round(Math.log(Oe)/Math.LN2))},Ge.a=Ze},function(et,Ge,ke){"use strict";var Ze=ke(4),Oe=ke(1),we=ke.n(Oe),Te=we.a.vec3,Re=we.a.mat4,Ie=we.a.vec4,be=function(Pe,je){this.normal=Pe||new Ze.a(0,1,0),this.distance=je||0};be.prototype={constructor:be,distanceToPoint:function(Pe){return Te.dot(Pe.array,this.normal.array)-this.distance},projectPoint:function(Pe,je){je||(je=new Ze.a);var ye=this.distanceToPoint(Pe);return Te.scaleAndAdd(je.array,Pe.array,this.normal.array,-ye),je._dirty=!0,je},normalize:function(){var Pe=1/Te.len(this.normal.array);Te.scale(this.normal.array,Pe),this.distance*=Pe},intersectFrustum:function(Pe){for(var je=Pe.vertices,ye=this.normal.array,ie=Te.dot(je[0].array,ye)>this.distance,ae=1;ae<8;ae++)if(Te.dot(je[ae].array,ye)>this.distance!=ie)return!0},intersectLine:function(){var Pe=Te.create();return function(je,ye,ie){var ae=this.distanceToPoint(je),fe=this.distanceToPoint(ye);if(ae>0&&fe>0||ae<0&&fe<0)return null;var de=this.normal.array,ve=this.distance,xe=je.array;Te.sub(Pe,ye.array,je.array),Te.normalize(Pe,Pe);var he=Te.dot(de,Pe);if(he===0)return null;ie||(ie=new Ze.a);var pe=(Te.dot(de,xe)-ve)/he;return Te.scaleAndAdd(ie.array,xe,Pe,-pe),ie._dirty=!0,ie}}(),applyTransform:function(){var Pe=Re.create(),je=Ie.create(),ye=Ie.create();return ye[3]=1,function(ie){ie=ie.array,Te.scale(ye,this.normal.array,this.distance),Ie.transformMat4(ye,ye,ie),this.distance=Te.dot(ye,this.normal.array),Re.invert(Pe,ie),Re.transpose(Pe,Pe),je[3]=0,Te.copy(je,this.normal.array),Ie.transformMat4(je,je,Pe),Te.copy(this.normal.array,je)}}(),copy:function(Pe){Te.copy(this.normal.array,Pe.normal.array),this.normal._dirty=!0,this.distance=Pe.distance},clone:function(){var Pe=new be;return Pe.copy(this),Pe}},Ge.a=be},function(et,Ge,ke){"use strict";var Ze=ke(13),Oe=ke(15),we=Ze.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 Te=this.heightSegments,Re=this.widthSegments,Ie=this.attributes.position,be=this.attributes.texcoord0,Pe=this.attributes.normal,je=(Re+1)*(Te+1);Ie.init(je),be.init(je),Pe.init(je);var ye=je>65535?Uint32Array:Uint16Array,ie=this.indices=new ye(Re*Te*6),ae,fe,de,ve,xe,he,pe,Ve=this.radius,Se=this.phiStart,Ne=this.phiLength,ze=this.thetaStart,Ke=this.thetaLength,Ve=this.radius,Je=[],tt=[],gt=0,st=1/Ve;for(pe=0;pe<=Te;pe++)for(he=0;he<=Re;he++)ve=he/Re,xe=pe/Te,ae=-Ve*Math.cos(Se+ve*Ne)*Math.sin(ze+xe*Ke),fe=Ve*Math.cos(ze+xe*Ke),de=Ve*Math.sin(Se+ve*Ne)*Math.sin(ze+xe*Ke),Je[0]=ae,Je[1]=fe,Je[2]=de,tt[0]=ve,tt[1]=xe,Ie.set(gt,Je),be.set(gt,tt),Je[0]*=st,Je[1]*=st,Je[2]*=st,Pe.set(gt,Je),gt++;var St,At,vt,Tt,bt=Re+1,Et=0;for(pe=0;peae&&(ye=this._x=0,ie+=this._rowHeight+de,this._y=ie,this._rowHeight=0),this._x+=be+de,this._rowHeight=Math.max(this._rowHeight,Pe),ie+Pe+de>fe)return null;Ie.position[0]+=this.offsetX*this.dpr+ye,Ie.position[1]+=this.offsetY*this.dpr+ie,this._zr.add(Ie);var ve=[this.offsetX/this.width,this.offsetY/this.height],xe=[[ye/ae+ve[0],ie/fe+ve[1]],[(ye+be)/ae+ve[0],(ie+Pe)/fe+ve[1]]];return xe},_fitElement:function(Ie,be,Pe){var je=Ie.getBoundingRect(),ye=be/je.width,ie=Pe/je.height;Ie.position=[-je.x*ye,-je.y*ie],Ie.scale=[ye,ie],Ie.update()}};function Re(Ie){Ie=Ie||{},Ie.width=Ie.width||512,Ie.height=Ie.height||512,Ie.devicePixelRatio=Ie.devicePixelRatio||1,Ie.gap=Ie.gap==null?2:Ie.gap;var be=document.createElement("canvas");be.width=Ie.width*Ie.devicePixelRatio,be.height=Ie.height*Ie.devicePixelRatio,this._canvas=be,this._texture=new we.a({image:be,flipY:!1});var Pe=this;this._zr=Oe.a.zrender.init(be);var je=this._zr.refreshImmediately;this._zr.refreshImmediately=function(){je.call(this),Pe._texture.dirty(),Pe.onupdate&&Pe.onupdate()},this._dpr=Ie.devicePixelRatio,this._coords={},this.onupdate=Ie.onupdate,this._gap=Ie.gap,this._textureAtlasNodes=[new Te(this._zr,0,0,Ie.width,Ie.height,this._gap,this._dpr)],this._nodeWidth=Ie.width,this._nodeHeight=Ie.height,this._currentNodeIdx=0}Re.prototype={clear:function(){for(var Ie=0;Ie=Ie){console.error("Too much labels. Some will be ignored.");return}var ie=(je+this._nodeWidth)*this._dpr,ae=(ye+this._nodeHeight)*this._dpr;try{this._zr.resize({width:ie,height:ae})}catch(de){this._canvas.width=ie,this._canvas.height=ae}var fe=new Te(this._zr,je,ye,this._nodeWidth,this._nodeHeight,this._gap,this._dpr);return this._textureAtlasNodes.push(fe),fe},add:function(Ie,be,Pe){if(this._coords[Ie.id])return console.warn("Element already been add"),this._coords[Ie.id];var je=this._getCurrentNode().add(Ie,be,Pe);if(!je){var ye=this._expand();if(!ye)return;je=ye.add(Ie,be,Pe)}return this._coords[Ie.id]=je,je},getCoordsScale:function(){var Ie=this._dpr;return[this._nodeWidth/this._canvas.width*Ie,this._nodeHeight/this._canvas.height*Ie]},getCoords:function(Ie){return this._coords[Ie]}},Ge.a=Re},function(et,Ge,ke){"use strict";Ge.a=Ze;function Ze(Oe,we,Te){var Re,Ie=Oe.scale;return Ie.type==="ordinal"&&(typeof Te=="function"?(Re=Ie.getTicks()[we],!Te(Re,Ie.getLabel(Re))):we%(Te+1))}},function(et,Ge,ke){var Ze=ke(76),Oe=ke(77),we=Ze.applyTransform,Te=Math.min,Re=Math.max;function Ie(Pe,je,ye,ie){ye<0&&(Pe=Pe+ye,ye=-ye),ie<0&&(je=je+ie,ie=-ie),this.x=Pe,this.y=je,this.width=ye,this.height=ie}Ie.prototype={constructor:Ie,union:function(Pe){var je=Te(Pe.x,this.x),ye=Te(Pe.y,this.y);this.width=Re(Pe.x+Pe.width,this.x+this.width)-je,this.height=Re(Pe.y+Pe.height,this.y+this.height)-ye,this.x=je,this.y=ye},applyTransform:function(){var Pe=[],je=[],ye=[],ie=[];return function(ae){if(ae){Pe[0]=ye[0]=this.x,Pe[1]=ie[1]=this.y,je[0]=ie[0]=this.x+this.width,je[1]=ye[1]=this.y+this.height,we(Pe,Pe,ae),we(je,je,ae),we(ye,ye,ae),we(ie,ie,ae),this.x=Te(Pe[0],je[0],ye[0],ie[0]),this.y=Te(Pe[1],je[1],ye[1],ie[1]);var fe=Re(Pe[0],je[0],ye[0],ie[0]),de=Re(Pe[1],je[1],ye[1],ie[1]);this.width=fe-this.x,this.height=de-this.y}}}(),calculateTransform:function(Pe){var je=this,ye=Pe.width/je.width,ie=Pe.height/je.height,ae=Oe.create();return Oe.translate(ae,ae,[-je.x,-je.y]),Oe.scale(ae,ae,[ye,ie]),Oe.translate(ae,ae,[Pe.x,Pe.y]),ae},intersect:function(Pe){if(!Pe)return!1;Pe instanceof Ie||(Pe=Ie.create(Pe));var je=this,ye=je.x,ie=je.x+je.width,ae=je.y,fe=je.y+je.height,de=Pe.x,ve=Pe.x+Pe.width,xe=Pe.y,he=Pe.y+Pe.height;return!(ie=ye.x&&Pe<=ye.x+ye.width&&je>=ye.y&&je<=ye.y+ye.height},clone:function(){return new Ie(this.x,this.y,this.width,this.height)},copy:function(Pe){this.x=Pe.x,this.y=Pe.y,this.width=Pe.width,this.height=Pe.height},plain:function(){return{x:this.x,y:this.y,width:this.width,height:this.height}}},Ie.create=function(Pe){return new Ie(Pe.x,Pe.y,Pe.width,Pe.height)};var be=Ie;et.exports=be},function(et,Ge){var ke=typeof Float32Array=="undefined"?Array:Float32Array;function Ze(gt,st){var St=new ke(2);return gt==null&&(gt=0),st==null&&(st=0),St[0]=gt,St[1]=st,St}function Oe(gt,st){return gt[0]=st[0],gt[1]=st[1],gt}function we(gt){var st=new ke(2);return st[0]=gt[0],st[1]=gt[1],st}function Te(gt,st,St){return gt[0]=st,gt[1]=St,gt}function Re(gt,st,St){return gt[0]=st[0]+St[0],gt[1]=st[1]+St[1],gt}function Ie(gt,st,St,At){return gt[0]=st[0]+St[0]*At,gt[1]=st[1]+St[1]*At,gt}function be(gt,st,St){return gt[0]=st[0]-St[0],gt[1]=st[1]-St[1],gt}function Pe(gt){return Math.sqrt(ye(gt))}var je=Pe;function ye(gt){return gt[0]*gt[0]+gt[1]*gt[1]}var ie=ye;function ae(gt,st,St){return gt[0]=st[0]*St[0],gt[1]=st[1]*St[1],gt}function fe(gt,st,St){return gt[0]=st[0]/St[0],gt[1]=st[1]/St[1],gt}function de(gt,st){return gt[0]*st[0]+gt[1]*st[1]}function ve(gt,st,St){return gt[0]=st[0]*St,gt[1]=st[1]*St,gt}function xe(gt,st){var St=Pe(st);return St===0?(gt[0]=0,gt[1]=0):(gt[0]=st[0]/St,gt[1]=st[1]/St),gt}function he(gt,st){return Math.sqrt((gt[0]-st[0])*(gt[0]-st[0])+(gt[1]-st[1])*(gt[1]-st[1]))}var pe=he;function Se(gt,st){return(gt[0]-st[0])*(gt[0]-st[0])+(gt[1]-st[1])*(gt[1]-st[1])}var Ne=Se;function ze(gt,st){return gt[0]=-st[0],gt[1]=-st[1],gt}function Ke(gt,st,St,At){return gt[0]=st[0]+At*(St[0]-st[0]),gt[1]=st[1]+At*(St[1]-st[1]),gt}function Ve(gt,st,St){var At=st[0],vt=st[1];return gt[0]=St[0]*At+St[2]*vt+St[4],gt[1]=St[1]*At+St[3]*vt+St[5],gt}function Je(gt,st,St){return gt[0]=Math.min(st[0],St[0]),gt[1]=Math.min(st[1],St[1]),gt}function tt(gt,st,St){return gt[0]=Math.max(st[0],St[0]),gt[1]=Math.max(st[1],St[1]),gt}Ge.create=Ze,Ge.copy=Oe,Ge.clone=we,Ge.set=Te,Ge.add=Re,Ge.scaleAndAdd=Ie,Ge.sub=be,Ge.len=Pe,Ge.length=je,Ge.lenSquare=ye,Ge.lengthSquare=ie,Ge.mul=ae,Ge.div=fe,Ge.dot=de,Ge.scale=ve,Ge.normalize=xe,Ge.distance=he,Ge.dist=pe,Ge.distanceSquare=Se,Ge.distSquare=Ne,Ge.negate=ze,Ge.lerp=Ke,Ge.applyTransform=Ve,Ge.min=Je,Ge.max=tt},function(et,Ge){var ke=typeof Float32Array=="undefined"?Array:Float32Array;function Ze(){var ye=new ke(6);return Oe(ye),ye}function Oe(ye){return ye[0]=1,ye[1]=0,ye[2]=0,ye[3]=1,ye[4]=0,ye[5]=0,ye}function we(ye,ie){return ye[0]=ie[0],ye[1]=ie[1],ye[2]=ie[2],ye[3]=ie[3],ye[4]=ie[4],ye[5]=ie[5],ye}function Te(ye,ie,ae){var fe=ie[0]*ae[0]+ie[2]*ae[1],de=ie[1]*ae[0]+ie[3]*ae[1],ve=ie[0]*ae[2]+ie[2]*ae[3],xe=ie[1]*ae[2]+ie[3]*ae[3],he=ie[0]*ae[4]+ie[2]*ae[5]+ie[4],pe=ie[1]*ae[4]+ie[3]*ae[5]+ie[5];return ye[0]=fe,ye[1]=de,ye[2]=ve,ye[3]=xe,ye[4]=he,ye[5]=pe,ye}function Re(ye,ie,ae){return ye[0]=ie[0],ye[1]=ie[1],ye[2]=ie[2],ye[3]=ie[3],ye[4]=ie[4]+ae[0],ye[5]=ie[5]+ae[1],ye}function Ie(ye,ie,ae){var fe=ie[0],de=ie[2],ve=ie[4],xe=ie[1],he=ie[3],pe=ie[5],Se=Math.sin(ae),Ne=Math.cos(ae);return ye[0]=fe*Ne+xe*Se,ye[1]=-fe*Se+xe*Ne,ye[2]=de*Ne+he*Se,ye[3]=-de*Se+Ne*he,ye[4]=Ne*ve+Se*pe,ye[5]=Ne*pe-Se*ve,ye}function be(ye,ie,ae){var fe=ae[0],de=ae[1];return ye[0]=ie[0]*fe,ye[1]=ie[1]*de,ye[2]=ie[2]*fe,ye[3]=ie[3]*de,ye[4]=ie[4]*fe,ye[5]=ie[5]*de,ye}function Pe(ye,ie){var ae=ie[0],fe=ie[2],de=ie[4],ve=ie[1],xe=ie[3],he=ie[5],pe=ae*xe-ve*fe;return pe?(pe=1/pe,ye[0]=xe*pe,ye[1]=-ve*pe,ye[2]=-fe*pe,ye[3]=ae*pe,ye[4]=(fe*he-xe*de)*pe,ye[5]=(ve*de-ae*he)*pe,ye):null}function je(ye){var ie=Ze();return we(ie,ye),ie}Ge.create=Ze,Ge.identity=Oe,Ge.copy=we,Ge.mul=Te,Ge.translate=Re,Ge.rotate=Ie,Ge.scale=be,Ge.invert=Pe,Ge.clone=je},function(et,Ge,ke){var Ze=ke(12),Oe=1e-4;function we(Ke){return Ke.replace(/^\s+/,"").replace(/\s+$/,"")}function Te(Ke,Ve,Je,tt){var gt=Ve[1]-Ve[0],st=Je[1]-Je[0];if(gt===0)return st===0?Je[0]:(Je[0]+Je[1])/2;if(tt)if(gt>0){if(Ke<=Ve[0])return Je[0];if(Ke>=Ve[1])return Je[1]}else{if(Ke>=Ve[0])return Je[0];if(Ke<=Ve[1])return Je[1]}else{if(Ke===Ve[0])return Je[0];if(Ke===Ve[1])return Je[1]}return(Ke-Ve[0])/gt*st+Je[0]}function Re(Ke,Ve){switch(Ke){case"center":case"middle":Ke="50%";break;case"left":case"top":Ke="0%";break;case"right":case"bottom":Ke="100%";break}return typeof Ke=="string"?we(Ke).match(/%$/)?parseFloat(Ke)/100*Ve:parseFloat(Ke):Ke==null?NaN:+Ke}function Ie(Ke,Ve,Je){return Ve==null&&(Ve=10),Ve=Math.min(Math.max(0,Ve),20),Ke=(+Ke).toFixed(Ve),Je?Ke:+Ke}function be(Ke){return Ke.sort(function(Ve,Je){return Ve-Je}),Ke}function Pe(Ke){if(Ke=+Ke,isNaN(Ke))return 0;for(var Ve=1,Je=0;Math.round(Ke*Ve)/Ve!==Ke;)Ve*=10,Je++;return Je}function je(Ke){var Ve=Ke.toString(),Je=Ve.indexOf("e");if(Je>0){var tt=+Ve.slice(Je+1);return tt<0?-tt:0}else{var gt=Ve.indexOf(".");return gt<0?0:Ve.length-1-gt}}function ye(Ke,Ve){var Je=Math.log,tt=Math.LN10,gt=Math.floor(Je(Ke[1]-Ke[0])/tt),st=Math.round(Je(Math.abs(Ve[1]-Ve[0]))/tt),St=Math.min(Math.max(-gt+st,0),20);return isFinite(St)?St:20}function ie(Ke,Ve,Je){if(!Ke[Ve])return 0;var tt=Ze.reduce(Ke,function(Zt,Ut){return Zt+(isNaN(Ut)?0:Ut)},0);if(tt===0)return 0;for(var gt=Math.pow(10,Je),st=Ze.map(Ke,function(Zt){return(isNaN(Zt)?0:Zt)/tt*gt*100}),St=gt*100,At=Ze.map(st,function(Zt){return Math.floor(Zt)}),vt=Ze.reduce(At,function(Zt,Ut){return Zt+Ut},0),Tt=Ze.map(st,function(Zt,Ut){return Zt-At[Ut]});vtbt&&(bt=Tt[lt],Et=lt);++At[Et],Tt[Et]=0,++vt}return At[Ve]/gt}var ae=9007199254740991;function fe(Ke){var Ve=Math.PI*2;return(Ke%Ve+Ve)%Ve}function de(Ke){return Ke>-Oe&&Ke=-20?+Ke.toFixed(Je<0?-Je:0):Ke}function Ne(Ke){Ke.sort(function(vt,Tt){return At(vt,Tt,0)?-1:1});for(var Ve=-1/0,Je=1,tt=0;tt=0}Ge.linearMap=Te,Ge.parsePercent=Re,Ge.round=Ie,Ge.asc=be,Ge.getPrecision=Pe,Ge.getPrecisionSafe=je,Ge.getPixelPrecision=ye,Ge.getPercentWithPrecision=ie,Ge.MAX_SAFE_INTEGER=ae,Ge.remRadian=fe,Ge.isRadianAroundZero=de,Ge.parseDate=xe,Ge.quantity=he,Ge.nice=Se,Ge.reformIntervals=Ne,Ge.isNumeric=ze},function(et,Ge,ke){"use strict";var Ze=ke(5),Oe=ke(11),we=ke(21),Te=function(){this._pool={},this._allocatedTextures=[]};Te.prototype={constructor:Te,get:function(ye){var ie=be(ye);this._pool.hasOwnProperty(ie)||(this._pool[ie]=[]);var ae=this._pool[ie];if(!ae.length){var fe=new Ze.a(ye);return this._allocatedTextures.push(fe),fe}return ae.pop()},put:function(ye){var ie=be(ye);this._pool.hasOwnProperty(ie)||(this._pool[ie]=[]);var ae=this._pool[ie];ae.push(ye)},clear:function(ye){for(var ie=0;iefe&&ae.push({pivot:Math.floor((de+fe)/2),left:fe,right:de});var fe=ye[ie].pivot+1,de=ye[ie].right;de>fe&&ae.push({pivot:Math.floor((de+fe)/2),left:fe,right:de})}ye=this._parts=ae}else for(var ie=0;ie65535?this.indices instanceof Uint16Array&&(this.indices=new Uint32Array(this.indices)):this.indices instanceof Uint32Array&&(this.indices=new Uint16Array(this.indices)))},setTriangleCount:function(ye){this.triangleCount!==ye&&(ye===0?this.indices=null:this.indices=this.vertexCount>65535?new Uint32Array(ye*3):new Uint16Array(ye*3))},_getCubicCurveApproxStep:function(ye,ie,ae,fe){var de=be.dist(ye,ie)+be.dist(ae,ie)+be.dist(fe,ae),ve=1/(de+1)*this.segmentScale;return ve},getCubicCurveVertexCount:function(ye,ie,ae,fe){var de=this._getCubicCurveApproxStep(ye,ie,ae,fe),ve=Math.ceil(1/de);return this.useNativeLine?ve*2:ve*2+2},getCubicCurveTriangleCount:function(ye,ie,ae,fe){var de=this._getCubicCurveApproxStep(ye,ie,ae,fe),ve=Math.ceil(1/de);return this.useNativeLine?0:ve*2},getLineVertexCount:function(){return this.getPolylineVertexCount(Pe)},getLineTriangleCount:function(){return this.getPolylineTriangleCount(Pe)},getPolylineVertexCount:function(ye){var ie;if(typeof ye=="number")ie=ye;else{var ae=typeof ye[0]!="number";ie=ae?ye.length:ye.length/2}return this.useNativeLine?(ie-1)*2:(ie-1)*2+2},getPolylineTriangleCount:function(ye){var ie;if(typeof ye=="number")ie=ye;else{var ae=typeof ye[0]!="number";ie=ae?ye.length:ye.length/2}return this.useNativeLine?0:(ie-1)*2},addCubicCurve:function(ye,ie,ae,fe,de,ve){ve==null&&(ve=1);for(var xe=ye[0],he=ye[1],pe=ie[0],Se=ie[1],Ne=ae[0],ze=ae[1],Ke=fe[0],Ve=fe[1],Je=this._getCubicCurveApproxStep(ye,ie,ae,fe),tt=Je*Je,gt=tt*Je,st=3*Je,St=3*tt,At=6*tt,vt=6*gt,Tt=xe-pe*2+Ne,bt=he-Se*2+ze,Et=(pe-Ne)*3-xe+Ke,lt=(Se-ze)*3-he+Ve,Nt=xe,Zt=he,Ut=(pe-xe)*st+Tt*St+Et*gt,Ft=(Se-he)*st+bt*St+lt*gt,Yt=Tt*At+Et*vt,dn=bt*At+lt*vt,Dn=Et*vt,Rn=lt*vt,Zn=0,ln=0,Gn=Math.ceil(1/Je),Wn=new Float32Array((Gn+1)*3),Wn=[],qt=0,ln=0;ln1&&(Nt=Ut>0?Math.min(Nt,Ke):Math.max(Nt,Ke),Zt=Ft>0?Math.min(Zt,Ve):Math.max(Zt,Ve));this.addPolyline(Wn,de,ve)},addLine:function(ye,ie,ae,fe){this.addPolyline([ye,ie],ae,fe)},addPolyline:function(){var ye=be.create(),ie=be.create(),ae=be.create(),fe=be.create(),de=[],ve=[],xe=[];return function(he,pe,Se,Ne,ze){if(he.length){var Ke=typeof he[0]!="number";if(ze==null&&(ze=Ke?he.length:he.length/2),!(ze<2)){Ne==null&&(Ne=0),Se==null&&(Se=1),this._itemVertexOffsets.push(this._vertexOffset);for(var Ve=Ke?typeof pe[0]!="number":pe.length/4===ze,Je=this.attributes.position,tt=this.attributes.color,gt=this.attributes.offset,st=this.attributes.normal,St=this.indices,At=this._vertexOffset,vt,Tt=0;Tt1&&(Je.copy(At,At-1),tt.copy(At,At-1),At++);else{var lt;if(Tt0){be.sub(ye,de,xe),be.sub(ie,ve,de),be.normalize(ye,ye),be.normalize(ie,ie),be.add(fe,ye,ie),be.normalize(fe,fe);var Nt=Se/2*Math.min(1/be.dot(ye,fe),2);ae[0]=-fe[1],ae[1]=fe[0],lt=Nt}else be.sub(ye,ve,de),be.normalize(ye,ye),ae[0]=-ye[1],ae[1]=ye[0],lt=Se/2}else be.sub(ye,de,xe),be.normalize(ye,ye),ae[0]=-ye[1],ae[1]=ye[0],lt=Se/2;st.set(At,ae),st.set(At+1,ae),gt.set(At,lt),gt.set(At+1,-lt),be.copy(xe,de),Je.set(At,de),Je.set(At+1,de),tt.set(At,vt),tt.set(At+1,vt),At+=2}if(this.useNativeLine)tt.set(At,vt),Je.set(At,de),At++;else if(Tt>0){var Zt=this._faceOffset*3,St=this.indices;St[Zt]=At-4,St[Zt+1]=At-3,St[Zt+2]=At-2,St[Zt+3]=At-3,St[Zt+4]=At-1,St[Zt+5]=At-2,this._faceOffset+=2}}this._vertexOffset=At}}}}(),setItemColor:function(ye,ie){for(var ae=this._itemVertexOffsets[ye],fe=yest&&bt=0&&this._viewsToDispose.splice(he,1),this.views.push(xe),xe.layer=this;var pe=this.zr;xe.scene.traverse(function(Se){Se.__zr=pe,Se.addAnimatorsToZr&&Se.addAnimatorsToZr(pe)})}};function ye(xe){var he=xe.__zr;xe.__zr=null,he&&xe.removeAnimatorsFromZr&&xe.removeAnimatorsFromZr(he)}je.prototype.removeView=function(xe){if(xe.layer===this){var he=this.views.indexOf(xe);he>=0&&(this.views.splice(he,1),xe.scene.traverse(ye,this),xe.layer=null,this._viewsToDispose.push(xe))}},je.prototype.removeViewsAll=function(){this.views.forEach(function(xe){xe.scene.traverse(ye,this),xe.layer=null,this._viewsToDispose.push(xe)},this),this.views.length=0},je.prototype.resize=function(xe,he){var pe=this.renderer;pe.resize(xe,he)},je.prototype.clear=function(){var xe=this.renderer.gl;xe.clearColor(0,0,0,0),xe.depthMask(!0),xe.colorMask(!0,!0,!0,!0),xe.clear(xe.DEPTH_BUFFER_BIT|xe.COLOR_BUFFER_BIT)},je.prototype.clearDepth=function(){var xe=this.renderer.gl;xe.clear(xe.DEPTH_BUFFER_BIT)},je.prototype.clearColor=function(){var xe=this.renderer.gl;xe.clearColor(0,0,0,0),xe.clear(xe.COLOR_BUFFER_BIT)},je.prototype.needsRefresh=function(){this.zr.refresh()},je.prototype.refresh=function(){for(var xe=0;xe20)){xe=xe.event;var Se=this.pickObject(xe.offsetX,xe.offsetY);Se&&(this._dispatchEvent(xe.type,xe,Se),this._dispatchDataEvent(xe.type,xe,Se));var Ne=this._clickToSetFocusPoint(xe);if(Ne){var ze=Ne.view.setDOFFocusOnPoint(Ne.distance);ze&&this.zr.refresh()}}}},je.prototype._clickToSetFocusPoint=function(xe){for(var he=this.renderer,pe=he.viewport,Se=this.views.length-1;Se>=0;Se--){var Ne=this.views[Se];if(Ne.hasDOF()&&Ne.containPoint(xe.offsetX,xe.offsetY)){this._picking.scene=Ne.scene,this._picking.camera=Ne.camera,he.viewport=Ne.viewport;var ze=this._picking.pick(xe.offsetX,xe.offsetY,!0);if(ze)return ze.view=Ne,ze}}he.viewport=pe},je.prototype.onglobalout=function(xe){var he=this._hovered;he&&this._dispatchEvent("mouseout",xe,{target:he.target})},je.prototype.pickObject=function(xe,he){for(var pe=[],Se=this.renderer,Ne=Se.viewport,ze=0;ze=0&&(Je.dataIndex=this._lastDataIndex,Je.seriesIndex=this._lastSeriesIndex,this.zr.handler.dispatchToElement(tt,"mouseout",he)),Ve=!0):Ke!=null&&Ke!==this._lastEventData&&(this._lastEventData!=null&&(Je.eventData=this._lastEventData,this.zr.handler.dispatchToElement(tt,"mouseout",he)),Ve=!0),this._lastEventData=Ke,this._lastDataIndex=Ne,this._lastSeriesIndex=ze),Je.eventData=Ke,Je.dataIndex=Ne,Je.seriesIndex=ze,(Ke!=null||parseInt(Ne,10)>=0)&&(this.zr.handler.dispatchToElement(tt,xe,he),Ve&&this.zr.handler.dispatchToElement(tt,"mouseover",he))},je.prototype._dispatchToView=function(xe,he){for(var pe=0;pe255?255:pe}function Re(pe){return pe=Math.round(pe),pe<0?0:pe>360?360:pe}function Ie(pe){return pe<0?0:pe>1?1:pe}function be(pe){return pe.length&&pe.charAt(pe.length-1)==="%"?Te(parseFloat(pe)/100*255):Te(parseInt(pe,10))}function Pe(pe){return pe.length&&pe.charAt(pe.length-1)==="%"?Ie(parseFloat(pe)/100):Ie(parseFloat(pe))}function je(pe,Se,Ne){return Ne<0?Ne+=1:Ne>1&&(Ne-=1),Ne*6<1?pe+(Se-pe)*Ne*6:Ne*2<1?Se:Ne*3<2?pe+(Se-pe)*(2/3-Ne)*6:pe}function ye(pe,Se,Ne){return pe+(Se-pe)*Ne}function ie(pe,Se,Ne,ze,Ke){return pe[0]=Se,pe[1]=Ne,pe[2]=ze,pe[3]=Ke,pe}function ae(pe,Se){return pe[0]=Se[0],pe[1]=Se[1],pe[2]=Se[2],pe[3]=Se[3],pe}var fe=new Ze.a(20),de=null;function ve(pe,Se){de&&ae(de,Se),de=fe.put(pe,de||Se.slice())}Oe.parse=function(pe,Se){if(pe){Se=Se||[];var Ne=fe.get(pe);if(Ne)return ae(Se,Ne);pe=pe+"";var ze=pe.replace(/ /g,"").toLowerCase();if(ze in we)return ae(Se,we[ze]),ve(pe,Se),Se;if(ze.charAt(0)==="#"){if(ze.length===4){var Ke=parseInt(ze.substr(1),16);if(!(Ke>=0&&Ke<=4095)){ie(Se,0,0,0,1);return}return ie(Se,(Ke&3840)>>4|(Ke&3840)>>8,Ke&240|(Ke&240)>>4,Ke&15|(Ke&15)<<4,1),ve(pe,Se),Se}else if(ze.length===7){var Ke=parseInt(ze.substr(1),16);if(!(Ke>=0&&Ke<=16777215)){ie(Se,0,0,0,1);return}return ie(Se,(Ke&16711680)>>16,(Ke&65280)>>8,Ke&255,1),ve(pe,Se),Se}return}var Ve=ze.indexOf("("),Je=ze.indexOf(")");if(Ve!==-1&&Je+1===ze.length){var tt=ze.substr(0,Ve),gt=ze.substr(Ve+1,Je-(Ve+1)).split(","),st=1;switch(tt){case"rgba":if(gt.length!==4){ie(Se,0,0,0,1);return}st=Pe(gt.pop());case"rgb":if(gt.length!==3){ie(Se,0,0,0,1);return}return ie(Se,be(gt[0]),be(gt[1]),be(gt[2]),st),ve(pe,Se),Se;case"hsla":if(gt.length!==4){ie(Se,0,0,0,1);return}return gt[3]=Pe(gt[3]),xe(gt,Se),ve(pe,Se),Se;case"hsl":if(gt.length!==3){ie(Se,0,0,0,1);return}return xe(gt,Se),ve(pe,Se),Se;default:return}}ie(Se,0,0,0,1)}},Oe.parseToFloat=function(pe,Se){if(Se=Oe.parse(pe,Se),!!Se)return Se[0]/=255,Se[1]/=255,Se[2]/=255,Se};function xe(pe,Se){var Ne=(parseFloat(pe[0])%360+360)%360/360,ze=Pe(pe[1]),Ke=Pe(pe[2]),Ve=Ke<=.5?Ke*(ze+1):Ke+ze-Ke*ze,Je=Ke*2-Ve;return Se=Se||[],ie(Se,Te(je(Je,Ve,Ne+1/3)*255),Te(je(Je,Ve,Ne)*255),Te(je(Je,Ve,Ne-1/3)*255),1),pe.length===4&&(Se[3]=pe[3]),Se}function he(pe){if(pe){var Se=pe[0]/255,Ne=pe[1]/255,ze=pe[2]/255,Ke=Math.min(Se,Ne,ze),Ve=Math.max(Se,Ne,ze),Je=Ve-Ke,tt=(Ve+Ke)/2,gt,st;if(Je===0)gt=0,st=0;else{tt<.5?st=Je/(Ve+Ke):st=Je/(2-Ve-Ke);var St=((Ve-Se)/6+Je/2)/Je,At=((Ve-Ne)/6+Je/2)/Je,vt=((Ve-ze)/6+Je/2)/Je;Se===Ve?gt=vt-At:Ne===Ve?gt=1/3+St-vt:ze===Ve&&(gt=2/3+At-St),gt<0&&(gt+=1),gt>1&&(gt-=1)}var Tt=[gt*360,st,tt];return pe[3]!=null&&Tt.push(pe[3]),Tt}}Oe.lift=function(pe,Se){var Ne=Oe.parse(pe);if(Ne){for(var ze=0;ze<3;ze++)Se<0?Ne[ze]=Ne[ze]*(1-Se)|0:Ne[ze]=(255-Ne[ze])*Se+Ne[ze]|0;return Oe.stringify(Ne,Ne.length===4?"rgba":"rgb")}},Oe.toHex=function(pe){var Se=Oe.parse(pe);if(Se)return((1<<24)+(Se[0]<<16)+(Se[1]<<8)+ +Se[2]).toString(16).slice(1)},Oe.fastLerp=function(pe,Se,Ne){if(!(!(Se&&Se.length)||!(pe>=0&&pe<=1))){Ne=Ne||[];var ze=pe*(Se.length-1),Ke=Math.floor(ze),Ve=Math.ceil(ze),Je=Se[Ke],tt=Se[Ve],gt=ze-Ke;return Ne[0]=Te(ye(Je[0],tt[0],gt)),Ne[1]=Te(ye(Je[1],tt[1],gt)),Ne[2]=Te(ye(Je[2],tt[2],gt)),Ne[3]=Ie(ye(Je[3],tt[3],gt)),Ne}},Oe.fastMapToColor=Oe.fastLerp,Oe.lerp=function(pe,Se,Ne){if(!(!(Se&&Se.length)||!(pe>=0&&pe<=1))){var ze=pe*(Se.length-1),Ke=Math.floor(ze),Ve=Math.ceil(ze),Je=Oe.parse(Se[Ke]),tt=Oe.parse(Se[Ve]),gt=ze-Ke,st=Oe.stringify([Te(ye(Je[0],tt[0],gt)),Te(ye(Je[1],tt[1],gt)),Te(ye(Je[2],tt[2],gt)),Ie(ye(Je[3],tt[3],gt))],"rgba");return Ne?{color:st,leftIndex:Ke,rightIndex:Ve,value:ze}:st}},Oe.mapToColor=Oe.lerp,Oe.modifyHSL=function(pe,Se,Ne,ze){if(pe=Oe.parse(pe),pe)return pe=he(pe),Se!=null&&(pe[0]=Re(Se)),Ne!=null&&(pe[1]=Pe(Ne)),ze!=null&&(pe[2]=Pe(ze)),Oe.stringify(xe(pe),"rgba")},Oe.modifyAlpha=function(pe,Se){if(pe=Oe.parse(pe),pe&&Se!=null)return pe[3]=Ie(Se),Oe.stringify(pe,"rgba")},Oe.stringify=function(pe,Se){if(!(!pe||!pe.length)){var Ne=pe[0]+","+pe[1]+","+pe[2];return(Se==="rgba"||Se==="hsva"||Se==="hsla")&&(Ne+=","+pe[3]),Se+"("+Ne+")"}},Ge.a=Oe},function(et,Ge,ke){"use strict";var Ze=ke(95),Oe=function(we){this._list=new Ze.a,this._map={},this._maxSize=we||10};Oe.prototype.setMaxSize=function(we){this._maxSize=we},Oe.prototype.put=function(we,Te){if(typeof this._map[we]=="undefined"){var Re=this._list.length();if(Re>=this._maxSize&&Re>0){var Ie=this._list.head;this._list.remove(Ie),delete this._map[Ie.key]}var be=this._list.insert(Te);be.key=we,this._map[we]=be}},Oe.prototype.get=function(we){var Te=this._map[we];if(typeof Te!="undefined")return Te!==this._list.tail&&(this._list.remove(Te),this._list.insertEntry(Te)),Te.value},Oe.prototype.remove=function(we){var Te=this._map[we];typeof Te!="undefined"&&(delete this._map[we],this._list.remove(Te))},Oe.prototype.clear=function(){this._list.clear(),this._map={}},Ge.a=Oe},function(et,Ge,ke){"use strict";var Ze=function(){this.head=null,this.tail=null,this._length=0};Ze.prototype.insert=function(Oe){var we=new Ze.Entry(Oe);return this.insertEntry(we),we},Ze.prototype.insertAt=function(Oe,we){if(!(Oe<0)){for(var Te=this.head,Re=0;Te&&Re!=Oe;)Te=Te.next,Re++;if(Te){var Ie=new Ze.Entry(we),be=Te.prev;be?(be.next=Ie,Ie.prev=be):this.head=Ie,Ie.next=Te,Te.prev=Ie}else this.insert(we)}},Ze.prototype.insertBeforeEntry=function(Oe,we){var Te=new Ze.Entry(Oe),Re=we.prev;Re?(Re.next=Te,Te.prev=Re):this.head=Te,Te.next=we,we.prev=Te,this._length++},Ze.prototype.insertEntry=function(Oe){this.head?(this.tail.next=Oe,Oe.prev=this.tail,this.tail=Oe):this.head=this.tail=Oe,this._length++},Ze.prototype.remove=function(Oe){var we=Oe.prev,Te=Oe.next;we?we.next=Te:this.head=Te,Te?Te.prev=we:this.tail=we,Oe.next=Oe.prev=null,this._length--},Ze.prototype.removeAt=function(Oe){if(!(Oe<0)){for(var we=this.head,Te=0;we&&Te!=Oe;)we=we.next,Te++;if(we)return this.remove(we),we.value}},Ze.prototype.getHead=function(){if(this.head)return this.head.value},Ze.prototype.getTail=function(){if(this.tail)return this.tail.value},Ze.prototype.getAt=function(Oe){if(!(Oe<0)){for(var we=this.head,Te=0;we&&Te!=Oe;)we=we.next,Te++;return we.value}},Ze.prototype.indexOf=function(Oe){for(var we=this.head,Te=0;we;){if(we.value===Oe)return Te;we=we.next,Te++}},Ze.prototype.length=function(){return this._length},Ze.prototype.isEmpty=function(){return this._length===0},Ze.prototype.forEach=function(Oe,we){for(var Te=this.head,Re=0,Ie=typeof we!="undefined";Te;)Ie?Oe.call(we,Te.value,Re):Oe(Te.value,Re),Te=Te.next,Re++},Ze.prototype.clear=function(){this.tail=this.head=null,this._length=0},Ze.Entry=function(Oe){this.value=Oe,this.next=null,this.prev=null},Ge.a=Ze},function(et,Ge,ke){"use strict";var Ze=ke(97),Oe=/for\s*?\(int\s*?_idx_\s*\=\s*([\w-]+)\;\s*_idx_\s*<\s*([\w-]+);\s*_idx_\s*\+\+\s*\)\s*\{\{([\s\S]+?)(?=\}\})\}\}/g;function we(Pe,je,ye){function ie(de,ve,xe,he){var pe="";isNaN(ve)&&(ve in je?ve=je[ve]:ve=ae[ve]),isNaN(xe)&&(xe in je?xe=je[xe]:xe=ae[xe]);for(var Se=parseInt(ve);Se0&&ie.push("#define "+ae.toUpperCase()+"_COUNT "+fe)}if(ye)for(var de=0;de=0&&bt[vt]>1e-4&&(ye.transformMat4(Nt,Tt,St[Et[vt]]),ye.scaleAndAdd(lt,lt,Nt,bt[vt]));Zt.set(At,lt)}}for(var At=0;At=0&&(Re(Pe),Pe.coordinateSystem==="mapbox"&&(Pe.coordinateSystem="mapbox3D",be.mapbox3D=be.mapbox))}),Ie(be.xAxis3D),Ie(be.yAxis3D),Ie(be.zAxis3D),Ie(be.grid3D),Te(be.geo3D)}},function(et,Ge,ke){"use strict";function Ze(Oe){var we=new XMLHttpRequest;we.open("get",Oe.url),we.responseType=Oe.responseType||"text",Oe.onprogress&&(we.onprogress=function(Te){if(Te.lengthComputable){var Re=Te.loaded/Te.total;Oe.onprogress(Re,Te.loaded,Te.total)}else Oe.onprogress(null)}),we.onload=function(Te){we.status>=400?Oe.onerror&&Oe.onerror():Oe.onload&&Oe.onload(we.response)},Oe.onerror&&(we.onerror=Oe.onerror),we.send(null)}Ge.a={get:Ze}},function(et,Ge,ke){"use strict";Ge.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(et,Ge,ke){"use strict";var Ze=ke(6),Oe=ke(5),we=ke(25),Te=542327876,Re=1,Ie=2,be=4,Pe=8,je=4096,ye=131072,ie=524288,ae=8388608,fe=8,de=4194304,ve=4096,xe=512,he=1024,pe=2048,Se=4096,Ne=8192,ze=16384,Ke=32768,Ve=2097152,Je=1,tt=2,gt=4,st=64,St=512,At=131072;function vt(ft){return ft.charCodeAt(0)+(ft.charCodeAt(1)<<8)+(ft.charCodeAt(2)<<16)+(ft.charCodeAt(3)<<24)}function Tt(ft){return String.fromCharCode(ft&255,ft>>8&255,ft>>16&255,ft>>24&255)}var bt=31,Et=vt("DXT1"),lt=vt("DXT3"),Nt=vt("DXT5"),Zt=0,Ut=1,Ft=2,Yt=3,dn=4,Dn=7,Rn=20,Zn=21,ln=27,Gn=28,Wn=29,qt=30,xt={parse:function(ft,Bt){var Ot=new Int32Array(ft,0,bt);if(Ot[Zt]!==Te||!Ot(Rn)>)return null;var ut=Ot(Zn),It=Ot[dn],nn=Ot[Yt],Pt=Ot[Gn]&xe,Vt=Ot[Ft]&ye,on,$t;switch(ut){case Et:on=8,$t=Ze.a.COMPRESSED_RGB_S3TC_DXT1_EXT;break;case lt:on=16,$t=Ze.a.COMPRESSED_RGBA_S3TC_DXT3_EXT;break;case Nt:on=16,$t=Ze.a.COMPRESSED_RGBA_S3TC_DXT5_EXT;break;default:return null}var Jt=Ot[Ut]+4,xn=Pt?6:1,Qn=1;Vt&&(Qn=Math.max(1,Ot[Dn]));for(var rr=[],Jn=0;Jn0){var xe=Math.pow(2,ae[3]-128-8+ve);fe[de+0]=ae[0]*xe,fe[de+1]=ae[1]*xe,fe[de+2]=ae[2]*xe}else fe[de+0]=0,fe[de+1]=0,fe[de+2]=0;return fe[de+3]=1,fe}function be(ae,fe,de){for(var ve="",xe=fe;xe0;)if(ae[he][0]=fe[de++],ae[he][1]=fe[de++],ae[he][2]=fe[de++],ae[he][3]=fe[de++],ae[he][0]===1&&ae[he][1]===1&&ae[he][2]===1){for(var Se=ae[he][3]<>>0;Se>0;Se--)Pe(ae[he-1],ae[he]),he++,pe--;xe+=8}else he++,pe--,xe=0;return de}function ye(ae,fe,de,ve){if(veRe)return je(ae,fe,de,ve);var xe=fe[de++];if(xe!=2)return je(ae,fe,de-1,ve);if(ae[0][1]=fe[de++],ae[0][2]=fe[de++],xe=fe[de++],(ae[0][2]<<8>>>0|xe)>>>0!==ve)return null;for(var xe=0;xe<4;xe++)for(var he=0;he128){pe=(pe&127)>>>0;for(var Se=fe[de++];pe--;)ae[he++][xe]=Se}else for(;pe--;)ae[he++][xe]=fe[de++]}return de}var ie={parseRGBE:function(ae,fe,de){de==null&&(de=0);var ve=new Uint8Array(ae),xe=ve.length;if(be(ve,0,2)==="#?"){for(var he=2;he=xe)){he+=2;for(var pe="";he=0||(Te.forEach(function(Pe){be.on(Pe,this[Re(Pe)],this)},this),this._meshes.push(be))},detachFromMesh:function(be){var Pe=this._meshes.indexOf(be);Pe>=0&&this._meshes.splice(Pe,1),Te.forEach(function(je){be.off(je,this[Re(je)])},this)},dispose:function(){this._meshes.forEach(function(be){this.detachFromMesh(be)},this)}},Ge.a=Ie},function(et,Ge,ke){"use strict";var Ze=ke(19),Oe=ke(108),we=Ze.a.extend({cubemap:null,castShadow:!1,_normalDistribution:null,_brdfLookup:null},{type:"AMBIENT_CUBEMAP_LIGHT",prefilter:function(Te,Re){this._brdfLookup||(this._normalDistribution=Oe.a.generateNormalDistribution(),this._brdfLookup=Oe.a.integrateBRDF(Te,this._normalDistribution));var Ie=this.cubemap;if(!Ie.__prefiltered){var be=Oe.a.prefilterEnvironmentMap(Te,Ie,{encodeRGBM:!0,width:Re,height:Re},this._normalDistribution,this._brdfLookup);this.cubemap=be.environmentMap,this.cubemap.__prefiltered=!0,Ie.dispose(Te)}},uniformTemplates:{ambientCubemapLightColor:{type:"3f",value:function(Te){var Re=Te.color,Ie=Te.intensity;return[Re[0]*Ie,Re[1]*Ie,Re[2]*Ie]}},ambientCubemapLightCubemap:{type:"t",value:function(Te){return Te.cubemap}},ambientCubemapLightBRDFLookup:{type:"t",value:function(Te){return Te._brdfLookup}}}});Ge.a=we},function(et,Ge,ke){"use strict";var Ze=ke(5),Oe=ke(25),we=ke(6),Te=ke(10),Re=ke(14),Ie=ke(17),be=ke(7),Pe=ke(57),je=ke(29),ye=ke(55),ie=ke(18),ae=ke(54),fe=ke(111),de=ke(112),ve={},xe=["px","nx","py","ny","pz","nz"];ve.prefilterEnvironmentMap=function(he,pe,Se,Ne,ze){(!ze||!Ne)&&(Ne=ve.generateNormalDistribution(),ze=ve.integrateBRDF(he,Ne)),Se=Se||{};var Ke=Se.width||64,Ve=Se.height||64,Je=Se.type||pe.type,tt=new Oe.a({width:Ke,height:Ve,type:Je,flipY:!1,mipmaps:[]});tt.isPowerOfTwo()||console.warn("Width and height must be power of two to enable mipmap.");var gt=Math.min(Ke,Ve),st=Math.log(gt)/Math.log(2)+1,St=new Ie.a({shader:new be.a({vertex:be.a.source("clay.skybox.vertex"),fragment:de.a})});St.set("normalDistribution",Ne),Se.encodeRGBM&&St.define("fragment","RGBM_ENCODE"),Se.decodeRGBM&&St.define("fragment","RGBM_DECODE");var At=new je.a,vt;if(pe instanceof Ze.a){var Tt=new Oe.a({width:Ke,height:Ve,type:Je===we.a.FLOAT?we.a.HALF_FLOAT:Je});ae.a.panoramaToCubeMap(he,pe,Tt,{encodeRGBM:Se.decodeRGBM}),pe=Tt}vt=new Pe.a({scene:At,material:St}),vt.material.set("environmentMap",pe);var bt=new ye.a({texture:tt});Se.encodeRGBM&&(Je=tt.type=we.a.UNSIGNED_BYTE);for(var Et=new Ze.a({width:Ke,height:Ve,type:Je}),lt=new Te.a({depthBuffer:!1}),Nt=ie.a[Je===we.a.UNSIGNED_BYTE?"Uint8Array":"Float32Array"],Zt=0;Zt>>16)>>>0;tt=((tt&1431655765)<<1|(tt&2863311530)>>>1)>>>0,tt=((tt&858993459)<<2|(tt&3435973836)>>>2)>>>0,tt=((tt&252645135)<<4|(tt&4042322160)>>>4)>>>0,tt=(((tt&16711935)<<8|(tt&4278255360)>>>8)>>>0)/4294967296;for(var gt=0;gt 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(et,Ge,ke){"use strict";Ge.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(et,Ge,ke){"use strict";var Ze=ke(19),Oe=ke(18),we=Ze.a.extend({castShadow:!1,coefficients:[]},function(){this._coefficientsTmpArr=new Oe.a.Float32Array(9*3)},{type:"AMBIENT_SH_LIGHT",uniformTemplates:{ambientSHLightColor:{type:"3f",value:function(Te){var Re=Te.color,Ie=Te.intensity;return[Re[0]*Ie,Re[1]*Ie,Re[2]*Ie]}},ambientSHLightCoefficients:{type:"3f",value:function(Te){for(var Re=Te._coefficientsTmpArr,Ie=0;Ie=0&&ae.splice(ve,1)}),ae.push(fe),this.__zr&&this.__zr.animation.addAnimator(fe),fe},stopAnimation:function(Te){this._animators=this._animators||[];for(var Re=this._animators,Ie=Re.length,be=0;be.5?Ke:ze}function ye(ze,Ke,Ve,Je,tt){var gt=ze.length;if(tt==1)for(var st=0;sttt;if(gt)ze.length=tt;else for(var st=Je;st=0&&!(Ut[$t]<=on);$t--);$t=Math.min($t,vt-2)}else{for($t=Gn;$ton);$t++);$t=Math.min($t-1,vt-2)}Gn=$t,Wn=on;var Jt=Ut[$t+1]-Ut[$t];if(Jt!==0)if(xt=(on-Ut[$t])/Jt,At)if(Bt=Ft[$t],ft=Ft[$t===0?$t:$t-1],Ot=Ft[$t>vt-2?vt-1:$t+1],ut=Ft[$t>vt-3?vt-1:$t+2],bt)fe(ft,Bt,Ot,ut,xt,xt*xt,xt*xt*xt,st(Vt,tt),Nt);else{var xn;if(Et)xn=fe(ft,Bt,Ot,ut,xt,xt*xt,xt*xt*xt,It,1),xn=xe(It);else{if(lt)return je(Bt,Ot,xt);xn=de(ft,Bt,Ot,ut,xt,xt*xt,xt*xt*xt)}St(Vt,tt,xn)}else if(bt)ye(Ft[$t],Ft[$t+1],xt,st(Vt,tt),Nt);else{var xn;if(Et)ye(Ft[$t],Ft[$t+1],xt,It,1),xn=xe(It);else{if(lt)return je(Ft[$t],Ft[$t+1],xt);xn=Pe(Ft[$t],Ft[$t+1],xt)}St(Vt,tt,xn)}},Pt=new Ze({target:ze._target,life:Zt,loop:ze._loop,delay:ze._delay,onframe:nn,ondestroy:Ve});return Ke&&Ke!=="spline"&&(Pt.easing=Ke),Pt}}}var Se=function(ze,Ke,Ve,Je){this._tracks={},this._target=ze,this._loop=Ke||!1,this._getter=Ve||Ie,this._setter=Je||be,this._clipCount=0,this._delay=0,this._doneList=[],this._onframeList=[],this._clipList=[]};Se.prototype={when:function(ze,Ke){var Ve=this._tracks;for(var Je in Ke)if(Ke.hasOwnProperty(Je)){if(!Ve[Je]){Ve[Je]=[];var tt=this._getter(this._target,Je);if(tt==null)continue;ze!==0&&Ve[Je].push({time:0,value:ve(tt)})}Ve[Je].push({time:ze,value:Ke[Je]})}return this},during:function(ze){return this._onframeList.push(ze),this},pause:function(){for(var ze=0;ze255?255:st}function Te(st){return st=Math.round(st),st<0?0:st>360?360:st}function Re(st){return st<0?0:st>1?1:st}function Ie(st){return st.length&&st.charAt(st.length-1)==="%"?we(parseFloat(st)/100*255):we(parseInt(st,10))}function be(st){return st.length&&st.charAt(st.length-1)==="%"?Re(parseFloat(st)/100):Re(parseFloat(st))}function Pe(st,St,At){return At<0?At+=1:At>1&&(At-=1),At*6<1?st+(St-st)*At*6:At*2<1?St:At*3<2?st+(St-st)*(2/3-At)*6:st}function je(st,St,At){return st+(St-st)*At}function ye(st,St,At,vt,Tt){return st[0]=St,st[1]=At,st[2]=vt,st[3]=Tt,st}function ie(st,St){return st[0]=St[0],st[1]=St[1],st[2]=St[2],st[3]=St[3],st}var ae=new Ze(20),fe=null;function de(st,St){fe&&ie(fe,St),fe=ae.put(st,fe||St.slice())}function ve(st,St){if(st){St=St||[];var At=ae.get(st);if(At)return ie(St,At);st=st+"";var vt=st.replace(/ /g,"").toLowerCase();if(vt in Oe)return ie(St,Oe[vt]),de(st,St),St;if(vt.charAt(0)==="#"){if(vt.length===4){var Tt=parseInt(vt.substr(1),16);if(!(Tt>=0&&Tt<=4095)){ye(St,0,0,0,1);return}return ye(St,(Tt&3840)>>4|(Tt&3840)>>8,Tt&240|(Tt&240)>>4,Tt&15|(Tt&15)<<4,1),de(st,St),St}else if(vt.length===7){var Tt=parseInt(vt.substr(1),16);if(!(Tt>=0&&Tt<=16777215)){ye(St,0,0,0,1);return}return ye(St,(Tt&16711680)>>16,(Tt&65280)>>8,Tt&255,1),de(st,St),St}return}var bt=vt.indexOf("("),Et=vt.indexOf(")");if(bt!==-1&&Et+1===vt.length){var lt=vt.substr(0,bt),Nt=vt.substr(bt+1,Et-(bt+1)).split(","),Zt=1;switch(lt){case"rgba":if(Nt.length!==4){ye(St,0,0,0,1);return}Zt=be(Nt.pop());case"rgb":if(Nt.length!==3){ye(St,0,0,0,1);return}return ye(St,Ie(Nt[0]),Ie(Nt[1]),Ie(Nt[2]),Zt),de(st,St),St;case"hsla":if(Nt.length!==4){ye(St,0,0,0,1);return}return Nt[3]=be(Nt[3]),xe(Nt,St),de(st,St),St;case"hsl":if(Nt.length!==3){ye(St,0,0,0,1);return}return xe(Nt,St),de(st,St),St;default:return}}ye(St,0,0,0,1)}}function xe(st,St){var At=(parseFloat(st[0])%360+360)%360/360,vt=be(st[1]),Tt=be(st[2]),bt=Tt<=.5?Tt*(vt+1):Tt+vt-Tt*vt,Et=Tt*2-bt;return St=St||[],ye(St,we(Pe(Et,bt,At+1/3)*255),we(Pe(Et,bt,At)*255),we(Pe(Et,bt,At-1/3)*255),1),st.length===4&&(St[3]=st[3]),St}function he(st){if(st){var St=st[0]/255,At=st[1]/255,vt=st[2]/255,Tt=Math.min(St,At,vt),bt=Math.max(St,At,vt),Et=bt-Tt,lt=(bt+Tt)/2,Nt,Zt;if(Et===0)Nt=0,Zt=0;else{lt<.5?Zt=Et/(bt+Tt):Zt=Et/(2-bt-Tt);var Ut=((bt-St)/6+Et/2)/Et,Ft=((bt-At)/6+Et/2)/Et,Yt=((bt-vt)/6+Et/2)/Et;St===bt?Nt=Yt-Ft:At===bt?Nt=1/3+Ut-Yt:vt===bt&&(Nt=2/3+Ft-Ut),Nt<0&&(Nt+=1),Nt>1&&(Nt-=1)}var dn=[Nt*360,Zt,lt];return st[3]!=null&&dn.push(st[3]),dn}}function pe(st,St){var At=ve(st);if(At){for(var vt=0;vt<3;vt++)St<0?At[vt]=At[vt]*(1-St)|0:At[vt]=(255-At[vt])*St+At[vt]|0;return gt(At,At.length===4?"rgba":"rgb")}}function Se(st){var St=ve(st);if(St)return((1<<24)+(St[0]<<16)+(St[1]<<8)+ +St[2]).toString(16).slice(1)}function Ne(st,St,At){if(!(!(St&&St.length)||!(st>=0&&st<=1))){At=At||[];var vt=st*(St.length-1),Tt=Math.floor(vt),bt=Math.ceil(vt),Et=St[Tt],lt=St[bt],Nt=vt-Tt;return At[0]=we(je(Et[0],lt[0],Nt)),At[1]=we(je(Et[1],lt[1],Nt)),At[2]=we(je(Et[2],lt[2],Nt)),At[3]=Re(je(Et[3],lt[3],Nt)),At}}var ze=Ne;function Ke(st,St,At){if(!(!(St&&St.length)||!(st>=0&&st<=1))){var vt=st*(St.length-1),Tt=Math.floor(vt),bt=Math.ceil(vt),Et=ve(St[Tt]),lt=ve(St[bt]),Nt=vt-Tt,Zt=gt([we(je(Et[0],lt[0],Nt)),we(je(Et[1],lt[1],Nt)),we(je(Et[2],lt[2],Nt)),Re(je(Et[3],lt[3],Nt))],"rgba");return At?{color:Zt,leftIndex:Tt,rightIndex:bt,value:vt}:Zt}}var Ve=Ke;function Je(st,St,At,vt){if(st=ve(st),st)return st=he(st),St!=null&&(st[0]=Te(St)),At!=null&&(st[1]=be(At)),vt!=null&&(st[2]=be(vt)),gt(xe(st),"rgba")}function tt(st,St){if(st=ve(st),st&&St!=null)return st[3]=Re(St),gt(st,"rgba")}function gt(st,St){if(!(!st||!st.length)){var At=st[0]+","+st[1]+","+st[2];return(St==="rgba"||St==="hsva"||St==="hsla")&&(At+=","+st[3]),St+"("+At+")"}}Ge.parse=ve,Ge.lift=pe,Ge.toHex=Se,Ge.fastLerp=Ne,Ge.fastMapToColor=ze,Ge.lerp=Ke,Ge.mapToColor=Ve,Ge.modifyHSL=Je,Ge.modifyAlpha=tt,Ge.stringify=gt},function(et,Ge,ke){"use strict";Ge.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(et,Ge,ke){"use strict";Ge.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(et,Ge,ke){"use strict";Ge.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(et,Ge,ke){"use strict";Ge.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(et,Ge,ke){"use strict";Ge.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(et,Ge,ke){"use strict";Ge.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(et,Ge,ke){"use strict";Ge.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(et,Ge,ke){"use strict";var Ze=ke(134),Oe=ke(138),we=ke(139),Te=ke(145),Re=ke(0),Ie=ke.n(Re);Ie.a.registerAction({type:"grid3DChangeCamera",event:"grid3dcamerachanged",update:"series:updateCamera"},function(be,Pe){Pe.eachComponent({mainType:"grid3D",query:be},function(je){je.setView(be)})}),Ie.a.registerAction({type:"grid3DShowAxisPointer",event:"grid3dshowaxispointer",update:"grid3D:showAxisPointer"},function(be,Pe){}),Ie.a.registerAction({type:"grid3DHideAxisPointer",event:"grid3dhideaxispointer",update:"grid3D:hideAxisPointer"},function(be,Pe){})},function(et,Ge,ke){"use strict";var Ze=ke(0),Oe=ke.n(Ze),we=ke(135),Te=Oe.a.extendComponentModel({type:"cartesian3DAxis",axis:null,getCoordSysModel:function(){return this.ecModel.queryComponents({mainType:"grid3D",index:this.option.gridIndex,id:this.option.gridId})[0]}});Oe.a.helper.mixinAxisModelCommonMethods(Te);function Re(Ie,be){return be.type||(be.data?"category":"value")}Object(we.a)("x",Te,Re,{name:"X"}),Object(we.a)("y",Te,Re,{name:"Y"}),Object(we.a)("z",Te,Re,{name:"Z"})},function(et,Ge,ke){"use strict";var Ze=ke(0),Oe=ke.n(Ze),we=ke(136),Te=ke(137),Re=ke.n(Te),Ie=["value","category","time","log"];Ge.a=function(be,Pe,je,ye){Oe.a.util.each(Ie,function(ie){Pe.extend({type:be+"Axis3D."+ie,__ordinalMeta:null,mergeDefaultAndTheme:function(ae,fe){var de=fe.getTheme();Oe.a.util.merge(ae,de.get(ie+"Axis3D")),Oe.a.util.merge(ae,this.getDefaultOption()),ae.type=je(be,ae)},optionUpdated:function(){var ae=this.option;ae.type==="category"&&(this.__ordinalMeta=Re.a.createByAxisModel(this))},getCategories:function(){if(this.option.type==="category")return this.__ordinalMeta.categories},getOrdinalMeta:function(){return this.__ordinalMeta},defaultOption:Oe.a.util.merge(Oe.a.util.clone(we.a[ie+"Axis3D"]),ye||{},!0)})}),Pe.superClass.registerSubTypeDefaulter(be+"Axis3D",Oe.a.util.curry(je,be))}},function(et,Ge,ke){"use strict";var Ze=ke(0),Oe=ke.n(Ze),we={show:!0,grid3DIndex:0,inverse:!1,name:"",nameLocation:"middle",nameTextStyle:{fontSize:16},nameGap:20,axisPointer:{},axisLine:{},axisTick:{},axisLabel:{},splitArea:{}},Te=Oe.a.util.merge({boundaryGap:!0,axisTick:{alignWithLabel:!1,interval:"auto"},axisLabel:{interval:"auto"},axisPointer:{label:{show:!1}}},we),Re=Oe.a.util.merge({boundaryGap:[0,0],splitNumber:5,axisPointer:{label:{}}},we),Ie=Oe.a.util.defaults({scale:!0,min:"dataMin",max:"dataMax"},Re),be=Oe.a.util.defaults({logBase:10},Re);be.scale=!0,Ge.a={categoryAxis3D:Te,valueAxis3D:Re,timeAxis3D:Ie,logAxis3D:be}},function(et,Ge,ke){var Ze=ke(12),Oe=Ze.createHashMap,we=Ze.isObject,Te=Ze.map;function Re(ye){this.categories=ye.categories||[],this._needCollect=ye.needCollect,this._deduplication=ye.deduplication,this._map}Re.createByAxisModel=function(ye){var ie=ye.option,ae=ie.data,fe=ae&&Te(ae,Pe);return new Re({categories:fe,needCollect:!fe,deduplication:ie.dedplication!==!1})};var Ie=Re.prototype;Ie.getOrdinal=function(ye){return be(this).get(ye)},Ie.parseAndCollect=function(ye){var ie,ae=this._needCollect;if(typeof ye!="string"&&!ae)return ye;if(ae&&!this._deduplication)return ie=this.categories.length,this.categories[ie]=ye,ie;var fe=be(this);return ie=fe.get(ye),ie==null&&(ae?(ie=this.categories.length,this.categories[ie]=ye,fe.set(ye,ie)):ie=NaN),ie};function be(ye){return ye._map||(ye._map=Oe(ye.categories))}function Pe(ye){return we(ye)&&ye.value!=null?ye.value:ye+""}var je=Re;et.exports=je},function(et,Ge,ke){"use strict";var Ze=ke(0),Oe=ke.n(Ze),we=ke(38),Te=ke(31),Re=ke(32),Ie=Oe.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}}});Oe.a.util.merge(Ie.prototype,we.a),Oe.a.util.merge(Ie.prototype,Te.a),Oe.a.util.merge(Ie.prototype,Re.a);var be=Ie},function(et,Ge,ke){"use strict";var Ze=ke(0),Oe=ke.n(Ze),we=ke(2),Te=ke(39),Re=ke(22),Ie=ke(3),be=ke(73),Pe=ke(34),je=ke(140),ye=ke(142),ie=ke(58),ae=ke(40),fe=Ie.a.firstNotNull;we.a.Shader.import(ae.a),["x","y","z"].forEach(function(xe){Oe.a.extendComponentView({type:xe+"Axis3D"})});var de={x:0,y:2,z:1},ve=Oe.a.extendComponentView({type:"grid3D",__ecgl__:!0,init:function(xe,he){var pe=[["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"]],Se=["x","y","z"],Ne=new we.a.Material({shader:we.a.createShader("ecgl.color"),depthMask:!1,transparent:!0}),ze=new we.a.Material({shader:we.a.createShader("ecgl.meshLines3D"),depthMask:!1,transparent:!0});Ne.define("fragment","DOUBLE_SIDED"),Ne.define("both","VERTEX_COLOR"),this.groupGL=new we.a.Node,this._control=new Te.a({zr:he.getZr()}),this._control.init(),this._faces=pe.map(function(Ve){var Je=new je.a(Ve,ze,Ne);return this.groupGL.add(Je.rootNode),Je},this),this._axes=Se.map(function(Ve){var Je=new ye.a(Ve,ze);return this.groupGL.add(Je.rootNode),Je},this);var Ke=he.getDevicePixelRatio();this._axisLabelSurface=new be.a({width:256,height:256,devicePixelRatio:Ke}),this._axisLabelSurface.onupdate=function(){he.getZr().refresh()},this._axisPointerLineMesh=new we.a.Mesh({geometry:new Re.a({useNativeLine:!1}),material:ze,castShadow:!1,ignorePicking:!0,renderOrder:3}),this.groupGL.add(this._axisPointerLineMesh),this._axisPointerLabelsSurface=new be.a({width:128,height:128,devicePixelRatio:Ke}),this._axisPointerLabelsMesh=new ie.a({ignorePicking:!0,renderOrder:4,castShadow:!1}),this._axisPointerLabelsMesh.material.set("textureAtlas",this._axisPointerLabelsSurface.getTexture()),this.groupGL.add(this._axisPointerLabelsMesh),this._lightRoot=new we.a.Node,this._sceneHelper=new Pe.a,this._sceneHelper.initLight(this._lightRoot)},render:function(xe,he,pe){this._model=xe,this._api=pe;var Se=xe.coordinateSystem;Se.viewGL.add(this._lightRoot),xe.get("show")?Se.viewGL.add(this.groupGL):Se.viewGL.remove(this.groupGL);var Ne=this._control;Ne.setViewGL(Se.viewGL);var ze=xe.getModel("viewControl");Ne.setFromViewControlModel(ze,0),this._axisLabelSurface.clear();var Ke=["x","y","z"].reduce(function(Ve,Je){var tt=Se.getAxis(Je),gt=tt.model;return Ve[Je]=fe(gt.get("axisLabel.interval"),xe.get("axisLabel.interval")),tt.scale.type==="ordinal"&&(Ve[Je]==null||Ve[Je]=="auto")&&(Ve[Je]=Math.floor(tt.scale.getTicks().length/8)),Ve},{});Ne.off("update"),xe.get("show")&&(this._faces.forEach(function(Ve){Ve.update(Ke,xe,he,pe)},this),this._axes.forEach(function(Ve){Ve.update(xe,Ke,this._axisLabelSurface,pe)},this)),Ne.on("update",this._onCameraChange.bind(this,xe,pe),this),this._sceneHelper.setScene(Se.viewGL.scene),this._sceneHelper.updateLight(xe),Se.viewGL.setPostEffect(xe.getModel("postEffect"),pe),Se.viewGL.setTemporalSuperSampling(xe.getModel("temporalSuperSampling")),this._initMouseHandler(xe)},afterRender:function(xe,he,pe,Se){var Ne=Se.renderer;this._sceneHelper.updateAmbientCubemap(Ne,xe,pe),this._sceneHelper.updateSkybox(Ne,xe,pe)},showAxisPointer:function(xe,he,pe,Se){this._doShowAxisPointer(),this._updateAxisPointer(Se.value)},hideAxisPointer:function(xe,he,pe,Se){this._doHideAxisPointer()},_initMouseHandler:function(xe){var he=xe.coordinateSystem,pe=he.viewGL;xe.get("show")&&xe.get("axisPointer.show")?pe.on("mousemove",this._updateAxisPointerOnMousePosition,this):pe.off("mousemove",this._updateAxisPointerOnMousePosition)},_updateAxisPointerOnMousePosition:function(xe){if(!xe.target){for(var he=this._model,pe=he.coordinateSystem,Se=pe.viewGL,Ne=Se.castRay(xe.offsetX,xe.offsetY,new we.a.Ray),ze,Ke=0;KeSe[1]?0:1,Ve=this._faces[pe*2+Ke],Je=this._faces[pe*2+1-Ke];Ve.rootNode.invisible=!0,Je.rootNode.invisible=!1}},_updateAxisLinePosition:function(){var xe=this._model.coordinateSystem,he=xe.getAxis("x"),pe=xe.getAxis("y"),Se=xe.getAxis("z"),Ne=Se.getExtentMax(),ze=Se.getExtentMin(),Ke=he.getExtentMin(),Ve=he.getExtentMax(),Je=pe.getExtentMax(),tt=pe.getExtentMin(),gt=this._axes[0].rootNode,st=this._axes[1].rootNode,St=this._axes[2].rootNode,At=this._faces,vt=At[4].rootNode.invisible?tt:Je,Tt=At[2].rootNode.invisible?Ne:ze,bt=At[0].rootNode.invisible?Ke:Ve,Et=At[2].rootNode.invisible?Ne:ze,lt=At[0].rootNode.invisible?Ve:Ke,Nt=At[4].rootNode.invisible?tt:Je;gt.rotation.identity(),st.rotation.identity(),St.rotation.identity(),At[4].rootNode.invisible&&(this._axes[0].flipped=!0,gt.rotation.rotateX(Math.PI)),At[0].rootNode.invisible&&(this._axes[1].flipped=!0,st.rotation.rotateZ(Math.PI)),At[4].rootNode.invisible&&(this._axes[2].flipped=!0,St.rotation.rotateY(Math.PI)),gt.position.set(0,Tt,vt),st.position.set(bt,Et,0),St.position.set(lt,0,Nt),gt.update(),st.update(),St.update(),this._updateAxisLabelAlign()},_updateAxisLabelAlign:function(){var xe=this._control.getCamera(),he=[new we.a.Vector4,new we.a.Vector4],pe=new we.a.Vector4;this.groupGL.getWorldPosition(pe),pe.w=1,pe.transformMat4(xe.viewMatrix).transformMat4(xe.projectionMatrix),pe.x/=pe.w,pe.y/=pe.w,this._axes.forEach(function(Se){for(var Ne=Se.axisLineCoords,ze=Se.labelsMesh.geometry,Ke=0;Kepe.y?"bottom":"top"):(St="middle",st=tt>pe.x?"left":"right"),Se.setSpriteAlign(st,St,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(xe){var he=this._model.coordinateSystem,pe=he.dataToPoint(xe),Se=this._axisPointerLineMesh,Ne=Se.geometry,ze=this._model.getModel("axisPointer"),Ke=this._api.getDevicePixelRatio();Ne.convertToDynamicArray(!0);function Ve(dn){return Ie.a.firstNotNull(dn.model.get("axisPointer.show"),ze.get("show"))}function Je(dn){var Dn=dn.model.getModel("axisPointer",ze),Rn=Dn.getModel("lineStyle"),Zn=we.a.parseColor(Rn.get("color")),ln=fe(Rn.get("width"),1),Gn=fe(Rn.get("opacity"),1);return Zn[3]*=Gn,{color:Zn,lineWidth:ln}}for(var tt=0;tt0&&ae.rotation.rotateY(Math.PI),fe.normal.z=-ve)}function ie(ae,fe,de){this.rootNode=new we.a.Node;var ve=new we.a.Mesh({geometry:new Re.a({useNativeLine:!1}),material:fe,castShadow:!1,ignorePicking:!0,renderOrder:1}),xe=new we.a.Mesh({geometry:new Ie.a,material:de,castShadow:!1,culling:!1,ignorePicking:!0,renderOrder:0});this.rootNode.add(xe),this.rootNode.add(ve),this.faceInfo=ae,this.plane=new we.a.Plane,this.linesMesh=ve,this.quadsMesh=xe}ie.prototype.update=function(ae,fe,de,ve){var xe=fe.coordinateSystem,he=[xe.getAxis(this.faceInfo[0]),xe.getAxis(this.faceInfo[1])],pe=this.linesMesh.geometry,Se=this.quadsMesh.geometry;pe.convertToDynamicArray(!0),Se.convertToDynamicArray(!0),this._updateSplitLines(pe,he,fe,ae,ve),this._udpateSplitAreas(Se,he,fe,ae,ve),pe.convertToTypedArray(),Se.convertToTypedArray();var Ne=xe.getAxis(this.faceInfo[2]);ye(this.rootNode,this.plane,Ne,this.faceInfo[3])},ie.prototype._updateSplitLines=function(ae,fe,de,ve,xe){var he=xe.getDevicePixelRatio();fe.forEach(function(pe,Se){var Ne=pe.model,ze=fe[1-Se].getExtent();if(!pe.scale.isBlank()){var Ke=Ne.getModel("splitLine",de.getModel("splitLine"));if(Ke.get("show")){var Ve=Ke.getModel("lineStyle"),Je=Ve.get("color"),tt=Pe(Ve.get("opacity"),1),gt=Pe(Ve.get("width"),1),st=Ke.get("interval");(st==null||st==="auto")&&(st=ve[pe.dim]),Je=Oe.a.util.isArray(Je)?Je:[Je];for(var St=pe.getTicksCoords(),At=0,vt=0;vt65535?new Uint32Array(ae*3):new Uint16Array(ae*3))},getQuadVertexCount:function(){return 4},getQuadTriangleCount:function(){return 2},addQuad:function(){var je=be.create(),ye=be.create(),ie=be.create(),ae=[0,3,1,3,2,1];return function(fe,de){var ve=this.attributes.position,xe=this.attributes.normal,he=this.attributes.color;be.sub(je,fe[1],fe[0]),be.sub(ye,fe[2],fe[1]),be.cross(ie,je,ye),be.normalize(ie,ie);for(var pe=0;pe<4;pe++)ve.set(this._vertexOffset+pe,fe[pe]),he.set(this._vertexOffset+pe,de),xe.set(this._vertexOffset+pe,ie);for(var Se=this._faceOffset*3,pe=0;pe<6;pe++)this.indices[Se+pe]=ae[pe]+this._vertexOffset;this._vertexOffset+=4,this._faceOffset+=2}}()});we.a.util.defaults(Pe.prototype,Te.a),Ge.a=Pe},function(et,Ge,ke){"use strict";var Ze=ke(0),Oe=ke.n(Ze),we=ke(2),Te=ke(22),Re=ke(3),Ie=ke(58),be=ke(74),Pe=Re.a.firstNotNull,je={x:0,y:2,z:1};function ye(ae,fe){var de=new we.a.Mesh({geometry:new Te.a({useNativeLine:!1}),material:fe,castShadow:!1,ignorePicking:!0,renderOrder:2}),ve=new Ie.a;ve.material.depthMask=!1;var xe=new we.a.Node;xe.add(de),xe.add(ve),this.rootNode=xe,this.dim=ae,this.linesMesh=de,this.labelsMesh=ve,this.axisLineCoords=null,this.labelElements=[]}var ie={x:"y",y:"x",z:"y"};ye.prototype.update=function(ae,fe,de,ve){var xe=ae.coordinateSystem,he=xe.getAxis(this.dim),pe=fe[this.dim],Se=this.linesMesh.geometry,Ne=this.labelsMesh.geometry;Se.convertToDynamicArray(!0),Ne.convertToDynamicArray(!0);var ze=he.model,Ke=he.getExtent(),Rn=ve.getDevicePixelRatio(),Ve=ze.getModel("axisLine",ae.getModel("axisLine")),Je=ze.getModel("axisTick",ae.getModel("axisTick")),tt=ze.getModel("axisLabel",ae.getModel("axisLabel")),gt=Ve.get("lineStyle.color");if(Ve.get("show")){var st=Ve.getModel("lineStyle"),St=[0,0,0],At=[0,0,0],vt=je[he.dim];St[vt]=Ke[0],At[vt]=Ke[1],this.axisLineCoords=[St,At];var Tt=we.a.parseColor(gt),bt=Pe(st.get("width"),1),Et=Pe(st.get("opacity"),1);Tt[3]*=Et,Se.addLine(St,At,Tt,bt*Rn)}if(Je.get("show")){var lt=Je.getModel("lineStyle"),Nt=we.a.parseColor(Pe(lt.get("color"),gt)),bt=Pe(lt.get("width"),1);Nt[3]*=Pe(lt.get("opacity"),1);var Zt=he.getTicksCoords(),Ut=Je.get("interval");(Ut==null||Ut==="auto")&&(Ut=pe);for(var Ft=Je.get("length"),Yt=0;Yt65535?new Uint32Array(je*3):new Uint16Array(je*3))},setSpriteAlign:function(be,Pe,je,ye,ie){je==null&&(je="left"),ye==null&&(ye="top");var ae,fe,de,ve;switch(ie=ie||0,je){case"left":ae=ie,de=Pe[0]+ie;break;case"center":case"middle":ae=-Pe[0]/2,de=Pe[0]/2;break;case"right":ae=-Pe[0]-ie,de=-ie;break}switch(ye){case"bottom":fe=ie,ve=Pe[1]+ie;break;case"middle":fe=-Pe[1]/2,ve=Pe[1]/2;break;case"top":fe=-Pe[1]-ie,ve=-ie;break}var xe=be*4,he=this.attributes.offset;he.set(xe,[ae,ve]),he.set(xe+1,[de,ve]),he.set(xe+2,[de,fe]),he.set(xe+3,[ae,fe])},addSprite:function(be,Pe,je,ye,ie,ae){var fe=this._vertexOffset;this.setSprite(this._vertexOffset/4,be,Pe,je,ye,ie,ae);for(var de=0;de1?"."+pe[1]:""))}function Re(pe,Se){return pe=(pe||"").toLowerCase().replace(/-(.)/g,function(Ne,ze){return ze.toUpperCase()}),Se&&pe&&(pe=pe.charAt(0).toUpperCase()+pe.slice(1)),pe}var Ie=Ze.normalizeCssArray;function be(pe){return String(pe).replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}var Pe=["a","b","c","d","e","f","g"],je=function(pe,Se){return"{"+pe+(Se==null?"":Se)+"}"};function ye(pe,Se,Ne){Ze.isArray(Se)||(Se=[Se]);var ze=Se.length;if(!ze)return"";for(var Ke=Se[0].$vars||[],Ve=0;Ve':'':""}var fe=function(pe){return pe<10?"0"+pe:pe};function de(pe,Se,Ne){(pe==="week"||pe==="month"||pe==="quarter"||pe==="half-year"||pe==="year")&&(pe=`MM-dd yyyy`);var ze=we.parseDate(Se),Ke=Ne?"UTC":"",Ve=ze["get"+Ke+"FullYear"](),Je=ze["get"+Ke+"Month"]()+1,tt=ze["get"+Ke+"Date"](),gt=ze["get"+Ke+"Hours"](),st=ze["get"+Ke+"Minutes"](),St=ze["get"+Ke+"Seconds"]();return pe=pe.replace("MM",fe(Je)).replace("M",Je).replace("yyyy",Ve).replace("yy",Ve%100).replace("dd",fe(tt)).replace("d",tt).replace("hh",fe(gt)).replace("h",gt).replace("mm",fe(st)).replace("m",st).replace("ss",fe(St)).replace("s",St),pe}function ve(pe){return pe&&pe.charAt(0).toUpperCase()+pe.substr(1)}var xe=Oe.truncateText,he=Oe.getBoundingRect;Ge.addCommas=Te,Ge.toCamelCase=Re,Ge.normalizeCssArray=Ie,Ge.encodeHTML=be,Ge.formatTpl=ye,Ge.formatTplSimple=ie,Ge.getTooltipMarker=ae,Ge.formatTime=de,Ge.capitalFirst=ve,Ge.truncateText=xe,Ge.getTextRect=he},function(et,Ge,ke){var Ze=ke(75),Oe=ke(151),we=ke(12),Te=we.getContext,Re=we.extend,Ie=we.retrieve2,be=we.retrieve3,Pe={},je=0,ye=5e3,ie=/\{([a-zA-Z0-9_]+)\|([^}]*)\}/g,ae="12px sans-serif",fe={};function de(bt,Et){fe[bt]=Et}function ve(bt,Et){Et=Et||ae;var lt=bt+":"+Et;if(Pe[lt])return Pe[lt];for(var Nt=(bt+"").split(` `),Zt=0,Ut=0,Ft=Nt.length;Utye&&(je=0,Pe={}),je++,Pe[lt]=Zt,Zt}function xe(bt,Et,lt,Nt,Zt,Ut,Ft){return Ut?pe(bt,Et,lt,Nt,Zt,Ut,Ft):he(bt,Et,lt,Nt,Zt,Ft)}function he(bt,Et,lt,Nt,Zt,Ut){var Ft=St(bt,Et,Zt,Ut),Yt=ve(bt,Et);Zt&&(Yt+=Zt[1]+Zt[3]);var dn=Ft.outerHeight,Dn=Se(0,Yt,lt),Rn=Ne(0,dn,Nt),Zn=new Ze(Dn,Rn,Yt,dn);return Zn.lineHeight=Ft.lineHeight,Zn}function pe(bt,Et,lt,Nt,Zt,Ut,Ft){var Yt=At(bt,{rich:Ut,truncate:Ft,font:Et,textAlign:lt,textPadding:Zt}),dn=Yt.outerWidth,Dn=Yt.outerHeight,Rn=Se(0,dn,lt),Zn=Ne(0,Dn,Nt);return new Ze(Rn,Zn,dn,Dn)}function Se(bt,Et,lt){return lt==="right"?bt-=Et:lt==="center"&&(bt-=Et/2),bt}function Ne(bt,Et,lt){return lt==="middle"?bt-=Et/2:lt==="bottom"&&(bt-=Et),bt}function ze(bt,Et,lt){var Nt=Et.x,Zt=Et.y,Ut=Et.height,Ft=Et.width,Yt=Ut/2,dn="left",Dn="top";switch(bt){case"left":Nt-=lt,Zt+=Yt,dn="right",Dn="middle";break;case"right":Nt+=lt+Ft,Zt+=Yt,Dn="middle";break;case"top":Nt+=Ft/2,Zt-=lt,dn="center",Dn="bottom";break;case"bottom":Nt+=Ft/2,Zt+=Ut+lt,dn="center";break;case"inside":Nt+=Ft/2,Zt+=Yt,dn="center",Dn="middle";break;case"insideLeft":Nt+=lt,Zt+=Yt,Dn="middle";break;case"insideRight":Nt+=Ft-lt,Zt+=Yt,dn="right",Dn="middle";break;case"insideTop":Nt+=Ft/2,Zt+=lt,dn="center";break;case"insideBottom":Nt+=Ft/2,Zt+=Ut-lt,dn="center",Dn="bottom";break;case"insideTopLeft":Nt+=lt,Zt+=lt;break;case"insideTopRight":Nt+=Ft-lt,Zt+=lt,dn="right";break;case"insideBottomLeft":Nt+=lt,Zt+=Ut-lt,Dn="bottom";break;case"insideBottomRight":Nt+=Ft-lt,Zt+=Ut-lt,dn="right",Dn="bottom";break}return{x:Nt,y:Zt,textAlign:dn,textVerticalAlign:Dn}}function Ke(bt,Et,lt,Nt,Zt){if(!Et)return"";var Ut=(bt+"").split(` `);Zt=Ve(Et,lt,Nt,Zt);for(var Ft=0,Yt=Ut.length;Ft=Ft;dn++)Yt-=Ft;var Dn=ve(Zt);return Dn>Yt&&(Zt="",Dn=0),Yt=bt-Dn,Nt.ellipsis=Zt,Nt.ellipsisWidth=Dn,Nt.contentWidth=Yt,Nt.containerWidth=bt,Nt}function Je(bt,Et){var lt=Et.containerWidth,Nt=Et.font,Zt=Et.contentWidth;if(!lt)return"";var Ut=ve(bt,Nt);if(Ut<=lt)return bt;for(var Ft=0;;Ft++){if(Ut<=Zt||Ft>=Et.maxIterations){bt+=Et.ellipsis;break}var Yt=Ft===0?tt(bt,Zt,Et.ascCharWidth,Et.cnCharWidth):Ut>0?Math.floor(bt.length*Zt/Ut):0;bt=bt.substr(0,Yt),Ut=ve(bt,Nt)}return bt===""&&(bt=Et.placeholder),bt}function tt(bt,Et,lt,Nt){for(var Zt=0,Ut=0,Ft=bt.length;Utdn)bt="",Ut=[];else if(Dn!=null)for(var Rn=Ve(Dn-(lt?lt[1]+lt[3]:0),Et,Nt.ellipsis,{minChar:Nt.minChar,placeholder:Nt.placeholder}),Zn=0,ln=Ut.length;ZnNt&&vt(lt,bt.substring(Nt,Ut)),vt(lt,Zt[2],Zt[1]),Nt=ie.lastIndex}NtGn)return{lines:[],width:0,height:0};Ot.textWidth=ve(Ot.text,nn);var Vt=ut.textWidth,on=Vt==null||Vt==="auto";if(typeof Vt=="string"&&Vt.charAt(Vt.length-1)==="%")Ot.percentWidth=Vt,Dn.push(Ot),Vt=0;else{if(on){Vt=Ot.textWidth;var $t=ut.textBackgroundColor,Jt=$t&&$t.image;Jt&&(Jt=Oe.findExistImage(Jt),Oe.isImageReady(Jt)&&(Vt=Math.max(Vt,Jt.width*Pt/Jt.height)))}var xn=It?It[1]+It[3]:0;Vt+=xn;var Qn=ln!=null?ln-ft:null;Qn!=null&&Qn4){console.warn("Support at most 4 cascade");continue}Gn.shadowCascade>1&&(Zn=Gn.shadowCascade),this.renderDirectionalLightShadow(Tt,bt,Et,Gn,this._opaqueCasters,Dn,dn,Yt)}else Gn instanceof ie.a?this.renderSpotLightShadow(Tt,bt,Gn,this._opaqueCasters,Ft,Ut):Gn instanceof fe.a&&this.renderPointLightShadow(Tt,bt,Gn,this._opaqueCasters,Rn);this._shadowMapNumber[Gn.type]++}for(var Wn in this._shadowMapNumber)for(var qt=this._shadowMapNumber[Wn],xt=Wn+"_SHADOWMAP_COUNT",ln=0;ln0?Bt.define("fragment",xt,qt):Bt.isDefined("fragment",xt)&&Bt.undefine("fragment",xt))}for(var ln=0;ln0){var It=Yt.map(ut);if(Ot.directionalLightShadowMaps={value:Yt,type:"tv"},Ot.directionalLightMatrices={value:dn,type:"m4v"},Ot.directionalLightShadowMapSizes={value:It,type:"1fv"},Zn){var nn=Dn.slice(),Pt=Dn.slice();nn.pop(),Pt.shift(),nn.reverse(),Pt.reverse(),dn.reverse(),Ot.shadowCascadeClipsNear={value:nn,type:"1fv"},Ot.shadowCascadeClipsFar={value:Pt,type:"1fv"}}}if(Ut.length>0){var Vt=Ut.map(ut),Ot=bt.shadowUniforms;Ot.spotLightShadowMaps={value:Ut,type:"tv"},Ot.spotLightMatrices={value:Ft,type:"m4v"},Ot.spotLightShadowMapSizes={value:Vt,type:"1fv"}}Rn.length>0&&(Ot.pointLightShadowMaps={value:Rn,type:"tv"})},renderDirectionalLightShadow:function(){var Tt=new Re.a,bt=new Ie.a,Et=new Te.a,lt=new Ie.a,Nt=new Ie.a,Zt=new Ie.a,Ut=new Ie.a;return function(Ft,Yt,dn,Dn,Rn,Zn,ln,Gn){var Wn=this._getDepthMaterial(Dn),qt={getMaterial:function(ti){return ti.shadowDepthMaterial||Wn},sortCompare:be.a.opaqueSortCompare};if(!Yt.viewBoundingBoxLastFrame.isFinite()){var xt=Yt.getBoundingBox();Yt.viewBoundingBoxLastFrame.copy(xt).applyTransform(dn.viewMatrix)}var ft=Math.min(-Yt.viewBoundingBoxLastFrame.min.z,dn.far),Bt=Math.max(-Yt.viewBoundingBoxLastFrame.max.z,dn.near),Ot=this._getDirectionalLightCamera(Dn,Yt,dn),ut=Zt.array;Ut.copy(Ot.projectionMatrix),st.invert(Nt.array,Ot.worldTransform.array),st.multiply(Nt.array,Nt.array,dn.worldTransform.array),st.multiply(ut,Ut.array,Nt.array);for(var It=[],nn=dn instanceof Ne.a,Pt=(dn.near+dn.far)/(dn.near-dn.far),Vt=2*dn.near*dn.far/(dn.near-dn.far),on=0;on<=Dn.shadowCascade;on++){var $t=Bt*Math.pow(ft/Bt,on/Dn.shadowCascade),Jt=Bt+(ft-Bt)*on/Dn.shadowCascade,xn=$t*Dn.cascadeSplitLogFactor+Jt*(1-Dn.cascadeSplitLogFactor);It.push(xn),Zn.push(-(-xn*Pt+Vt)/-xn)}var Qn=this._getTexture(Dn,Dn.shadowCascade);Gn.push(Qn);var rr=Ft.viewport,Jn=Ft.gl;this._frameBuffer.attach(Qn),this._frameBuffer.bind(Ft),Jn.clear(Jn.COLOR_BUFFER_BIT|Jn.DEPTH_BUFFER_BIT);for(var on=0;on= 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(et,Ge,ke){"use strict";var Ze=ke(7),Oe=ke(5),we=ke(6),Te=ke(10),Re=ke(156),Ie=ke(162),be=ke(164),Pe=ke(166),je=ke(2),ye=ke(167),ie=ke(169),ae=ke(9),fe=ke(170),de=ke(171),ve=ke(172),xe=ke(173),he=ke(174),pe=ke(175),Se=ke(176),Ne=ke(177),ze=ke(178),Ke=ke(179),Ve=ke(180),Je=ke(181);Ze.a.import(de.a),Ze.a.import(ve.a),Ze.a.import(xe.a),Ze.a.import(he.a),Ze.a.import(pe.a),Ze.a.import(Se.a),Ze.a.import(Ne.a),Ze.a.import(ze.a),Ze.a.import(Ke.a),Ze.a.import(Ve.a),Ze.a.import(Je.a);var tt={color:{parameters:{width:function(St){return St.getWidth()},height:function(St){return St.getHeight()}}}},gt=["composite","FXAA"];function st(){this._sourceTexture=new Oe.a({type:we.a.HALF_FLOAT}),this._depthTexture=new Oe.a({format:we.a.DEPTH_COMPONENT,type:we.a.UNSIGNED_INT}),this._framebuffer=new Te.a,this._framebuffer.attach(this._sourceTexture),this._framebuffer.attach(this._depthTexture,Te.a.DEPTH_ATTACHMENT),this._normalPass=new ye.a,this._compositor=Object(Re.a)(fe.a);var St=this._compositor.getNodeByName("source");St.texture=this._sourceTexture;var At=this._compositor.getNodeByName("coc");this._sourceNode=St,this._cocNode=At,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(Tt){return this._compositor.getNodeByName(Tt)},this),this._dofBlurKernel=0,this._dofBlurKernelSize=new Float32Array(0),this._finalNodesChain=gt.map(function(Tt){return this._compositor.getNodeByName(Tt)},this);var vt={normalTexture:this._normalPass.getNormalTexture(),depthTexture:this._normalPass.getDepthTexture()};this._ssaoPass=new Ie.a(vt),this._ssrPass=new be.a(vt),this._edgePass=new ie.a(vt)}st.prototype.resize=function(Tt,bt,vt){vt=vt||1;var Tt=Tt*vt,bt=bt*vt,Et=this._sourceTexture,lt=this._depthTexture;Et.width=Tt,Et.height=bt,lt.width=Tt,lt.height=bt},st.prototype._ifRenderNormalPass=function(){return this._enableSSAO||this._enableEdge||this._enableSSR},st.prototype._getPrevNode=function(St){for(var At=gt.indexOf(St.name)-1,vt=this._finalNodesChain[At];vt&&!this._compositor.getNodeByName(vt.name);)At-=1,vt=this._finalNodesChain[At];return vt},st.prototype._getNextNode=function(St){for(var At=gt.indexOf(St.name)+1,vt=this._finalNodesChain[At];vt&&!this._compositor.getNodeByName(vt.name);)At+=1,vt=this._finalNodesChain[At];return vt},st.prototype._addChainNode=function(St){var At=this._getPrevNode(St),vt=this._getNextNode(St);At&&(At.outputs=tt,St.inputs.texture=At.name,vt?(St.outputs=tt,vt.inputs.texture=St.name):St.outputs=null,this._compositor.addNode(St))},st.prototype._removeChainNode=function(St){var At=this._getPrevNode(St),vt=this._getNextNode(St);At&&(vt?(At.outputs=tt,vt.inputs.texture=At.name):At.outputs=null,this._compositor.removeNode(St))},st.prototype.updateNormal=function(St,At,vt,Tt){this._ifRenderNormalPass()&&this._normalPass.update(St,At,vt)},st.prototype.updateSSAO=function(St,At,vt,Tt){this._ssaoPass.update(St,vt,Tt)},st.prototype.enableSSAO=function(){this._enableSSAO=!0},st.prototype.disableSSAO=function(){this._enableSSAO=!1},st.prototype.enableSSR=function(){this._enableSSR=!0},st.prototype.disableSSR=function(){this._enableSSR=!1},st.prototype.getSSAOTexture=function(St,At,vt,Tt){return this._ssaoPass.getTargetTexture()},st.prototype.getSourceFrameBuffer=function(){return this._framebuffer},st.prototype.getSourceTexture=function(){return this._sourceTexture},st.prototype.disableFXAA=function(){this._removeChainNode(this._fxaaNode)},st.prototype.enableFXAA=function(){this._addChainNode(this._fxaaNode)},st.prototype.enableBloom=function(){this._compositeNode.inputs.bloom="bloom_composite",this._compositor.dirty()},st.prototype.disableBloom=function(){this._compositeNode.inputs.bloom=null,this._compositor.dirty()},st.prototype.enableDOF=function(){this._compositeNode.inputs.texture="dof_composite",this._compositor.dirty()},st.prototype.disableDOF=function(){this._compositeNode.inputs.texture="source",this._compositor.dirty()},st.prototype.enableColorCorrection=function(){this._compositeNode.define("COLOR_CORRECTION"),this._enableColorCorrection=!0},st.prototype.disableColorCorrection=function(){this._compositeNode.undefine("COLOR_CORRECTION"),this._enableColorCorrection=!1},st.prototype.enableEdge=function(){this._enableEdge=!0},st.prototype.disableEdge=function(){this._enableEdge=!1},st.prototype.setBloomIntensity=function(St){this._compositeNode.setParameter("bloomIntensity",St)},st.prototype.setSSAOParameter=function(St,At){switch(St){case"quality":var vt={low:6,medium:12,high:32,ultra:62}[At]||12;this._ssaoPass.setParameter("kernelSize",vt);break;case"radius":this._ssaoPass.setParameter(St,At),this._ssaoPass.setParameter("bias",At/200);break;case"intensity":this._ssaoPass.setParameter(St,At);break;default:console.warn("Unkown SSAO parameter "+St)}},st.prototype.setDOFParameter=function(St,At){switch(St){case"focalDistance":case"focalRange":case"fstop":this._cocNode.setParameter(St,At);break;case"blurRadius":for(var vt=0;vt=0||(this.nodes.push(Te),this._dirty=!0)},removeNode:function(Te){typeof Te=="string"&&(Te=this.getNodeByName(Te));var Re=this.nodes.indexOf(Te);Re>=0&&(this.nodes.splice(Re,1),this._dirty=!0)},getNodeByName:function(Te){for(var Re=0;Re=Ie.COLOR_ATTACHMENT0&&fe<=Ie.COLOR_ATTACHMENT0+8&&ve.push(fe);de.drawBuffersEXT(ve)}Re.saveClear(),Re.clearBit=Oe.a.DEPTH_BUFFER_BIT|Oe.a.COLOR_BUFFER_BIT,be=Re.render(this.scene,this.camera,!this.autoUpdateScene,this.preZ),Re.restoreClear(),Pe.unbind(Re)}this.trigger("afterrender",be),this._rendering=!1,this._rendered=!0}});Ge.a=Te},function(et,Ge,ke){"use strict";var Ze=ke(42),Oe=Ze.a.extend(function(){return{texture:null,outputs:{color:{}}}},function(){},{getOutput:function(we,Te){return this.texture},beforeFrame:function(){},afterFrame:function(){}});Ge.a=Oe},function(et,Ge,ke){"use strict";var Ze=ke(14),Oe=ke(42),we=Oe.a.extend(function(){return{name:"",inputs:{},outputs:null,shader:"",inputLinks:{},outputLinks:{},pass:null,_prevOutputTextures:{},_outputTextures:{},_outputReferences:{},_rendering:!1,_rendered:!1,_compositor:null}},function(){var Te=new Ze.a({fragment:this.shader});this.pass=Te},{render:function(Te,Re){this.trigger("beforerender",Te),this._rendering=!0;var Ie=Te.gl;for(var be in this.inputLinks){var Pe=this.inputLinks[be],je=Pe.node.getOutput(Te,Pe.pin);this.pass.setUniform(be,je)}if(!this.outputs)this.pass.outputs=null,this._compositor.getFrameBuffer().unbind(Te),this.pass.render(Te,Re);else{this.pass.outputs={};var ye={};for(var ie in this.outputs){var ae=this.updateParameter(ie,Te);isNaN(ae.width)&&this.updateParameter(ie,Te);var fe=this.outputs[ie],de=this._compositor.allocateTexture(ae);this._outputTextures[ie]=de;var ve=fe.attachment||Ie.COLOR_ATTACHMENT0;typeof ve=="string"&&(ve=Ie[ve]),ye[ve]=de}this._compositor.getFrameBuffer().bind(Te);for(var ve in ye)this._compositor.getFrameBuffer().attach(ye[ve],ve);this.pass.render(Te),this._compositor.getFrameBuffer().updateMipmap(Te.gl)}for(var be in this.inputLinks){var Pe=this.inputLinks[be];Pe.node.removeReference(Pe.pin)}this._rendering=!1,this._rendered=!0,this.trigger("afterrender",Te)},updateParameter:function(Te,Re){var Ie=this.outputs[Te],be=Ie.parameters,Pe=Ie._parametersCopy;if(Pe||(Pe=Ie._parametersCopy={}),be)for(var je in be)je!=="width"&&je!=="height"&&(Pe[je]=be[je]);var ye,ie;return be.width instanceof Function?ye=be.width.call(this,Re):ye=be.width,be.height instanceof Function?ie=be.height.call(this,Re):ie=be.height,(Pe.width!==ye||Pe.height!==ie)&&this._outputTextures[Te]&&this._outputTextures[Te].dispose(Re),Pe.width=ye,Pe.height=ie,Pe},setParameter:function(Te,Re){this.pass.setUniform(Te,Re)},getParameter:function(Te){return this.pass.getUniform(Te)},setParameters:function(Te){for(var Re in Te)this.setParameter(Re,Te[Re])},define:function(Te,Re){this.pass.material.define("fragment",Te,Re)},undefine:function(Te){this.pass.material.undefine("fragment",Te)},removeReference:function(Te){if(this._outputReferences[Te]--,this._outputReferences[Te]===0){var Re=this.outputs[Te];Re.keepLastFrame?(this._prevOutputTextures[Te]&&this._compositor.releaseTexture(this._prevOutputTextures[Te]),this._prevOutputTextures[Te]=this._outputTextures[Te]):this._compositor.releaseTexture(this._outputTextures[Te])}},clear:function(){Oe.a.prototype.clear.call(this),this.pass.material.disableTexturesAll()}});Ge.a=we},function(et,Ge,ke){"use strict";var Ze=ke(9),Oe=ke(4),we=ke(5),Te=ke(6),Re=ke(14),Ie=ke(7),be=ke(10),Pe=ke(43),je=ke(163);Ie.a.import(je.a);function ye(de){for(var ve=new Uint8Array(de*de*4),xe=0,he=new Oe.a,pe=0;pe 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(et,Ge,ke){"use strict";var Ze=ke(9),Oe=ke(4),we=ke(5),Te=ke(6),Re=ke(14),Ie=ke(7),be=ke(10),Pe=ke(43),je=ke(165);Ie.a.import(je.a);function ye(ie){ie=ie||{},this._ssrPass=new Re.a({fragment:Ie.a.source("ecgl.ssr.main"),clearColor:[0,0,0,0]}),this._blurPass1=new Re.a({fragment:Ie.a.source("ecgl.ssr.blur"),clearColor:[0,0,0,0]}),this._blurPass2=new Re.a({fragment:Ie.a.source("ecgl.ssr.blur"),clearColor:[0,0,0,0]}),this._ssrPass.setUniform("gBufferTexture1",ie.normalTexture),this._ssrPass.setUniform("gBufferTexture2",ie.depthTexture),this._blurPass1.setUniform("gBufferTexture1",ie.normalTexture),this._blurPass1.setUniform("gBufferTexture2",ie.depthTexture),this._blurPass2.setUniform("gBufferTexture1",ie.normalTexture),this._blurPass2.setUniform("gBufferTexture2",ie.depthTexture),this._blurPass2.material.define("fragment","VERTICAL"),this._blurPass2.material.define("fragment","BLEND"),this._texture1=new we.a({type:Te.a.HALF_FLOAT}),this._texture2=new we.a({type:Te.a.HALF_FLOAT}),this._texture3=new we.a({type:Te.a.HALF_FLOAT}),this._frameBuffer=new be.a({depthBuffer:!1})}ye.prototype.update=function(ie,ae,fe,de){var ve=ie.getWidth(),xe=ie.getHeight(),he=ie.getDevicePixelRatio(),pe=this._texture1,Se=this._texture2,Ne=this._texture3;Se.width=ve/2,Se.height=xe/2,pe.width=ve,pe.height=xe,Ne.width=ve*he,Ne.height=xe*he;var ze=this._frameBuffer,Ke=this._ssrPass,Ve=this._blurPass1,Je=this._blurPass2,tt=new Ze.a;Ze.a.transpose(tt,ae.worldTransform),Ke.setUniform("sourceTexture",fe),Ke.setUniform("projection",ae.projectionMatrix.array),Ke.setUniform("projectionInv",ae.invProjectionMatrix.array),Ke.setUniform("viewInverseTranspose",tt.array),Ke.setUniform("nearZ",ae.near),Ke.setUniform("jitterOffset",de/30),Ve.setUniform("textureSize",[ve/2,xe/2]),Je.setUniform("textureSize",[ve,xe]),Je.setUniform("sourceTexture",fe),Ve.setUniform("projection",ae.projectionMatrix.array),Je.setUniform("projection",ae.projectionMatrix.array),ze.attach(pe),ze.bind(ie),Ke.render(ie),ze.attach(Se),Ve.setUniform("texture",pe),Ve.render(ie),ze.attach(Ne),Je.setUniform("texture",Se),Je.render(ie),ze.unbind(ie)},ye.prototype.getTargetTexture=function(){return this._texture3},ye.prototype.setParameter=function(ie,ae){ie==="maxIteration"?this._ssrPass.material.define("fragment","MAX_ITERATION",ae):this._ssrPass.setUniform(ie,ae)},ye.prototype.setSSAOTexture=function(ie){var ae=this._blurPass2;ie?(ae.material.enableTexture("ssaoTex"),ae.material.set("ssaoTex",ie)):ae.material.disableTexture("ssaoTex")},ye.prototype.dispose=function(ie){this._texture1.dispose(ie),this._texture2.dispose(ie),this._texture3.dispose(ie),this._frameBuffer.dispose(ie)},Ge.a=ye},function(et,Ge,ke){"use strict";Ge.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(et,Ge,ke){"use strict";Ge.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(et,Ge,ke){"use strict";var Ze=ke(5),Oe=ke(6),we=ke(7),Te=ke(10),Re=ke(17),Ie=ke(14),be=ke(54),Pe=ke(168);we.a.import(Pe.a);function je(ae,fe,de,ve,xe){var he=ae.gl;fe.setUniform(he,"1i",de,xe),he.activeTexture(he.TEXTURE0+xe),ve.isRenderable()?ve.bind(ae):ve.unbind(ae)}function ye(ae,fe,de,ve,xe){var he,pe,Se,Ne,ze=ae.gl;return function(Ke,Ve,Je){if(!(Ne&&Ne.material===Ke.material)){var tt=Ke.material,gt=Ke.__program,st=tt.get("roughness");st==null&&(st=1);var St=tt.get("normalMap")||fe,At=tt.get("roughnessMap"),vt=tt.get("bumpMap"),Tt=tt.get("uvRepeat"),bt=tt.get("uvOffset"),Et=tt.get("detailUvRepeat"),lt=tt.get("detailUvOffset"),Nt=!!vt&&tt.isTextureEnabled("bumpMap"),Zt=!!At&&tt.isTextureEnabled("roughnessMap"),Ut=tt.isDefined("fragment","DOUBLE_SIDED");vt=vt||de,At=At||ve,Je!==Ve?(Ve.set("normalMap",St),Ve.set("bumpMap",vt),Ve.set("roughnessMap",At),Ve.set("useBumpMap",Nt),Ve.set("useRoughnessMap",Zt),Ve.set("doubleSide",Ut),Tt!=null&&Ve.set("uvRepeat",Tt),bt!=null&&Ve.set("uvOffset",bt),Et!=null&&Ve.set("detailUvRepeat",Et),lt!=null&&Ve.set("detailUvOffset",lt),Ve.set("roughness",st)):(gt.setUniform(ze,"1f","roughness",st),he!==St&&je(ae,gt,"normalMap",St,0),pe!==vt&&vt&&je(ae,gt,"bumpMap",vt,1),Se!==At&&At&&je(ae,gt,"roughnessMap",At,2),Tt!=null&>.setUniform(ze,"2f","uvRepeat",Tt),bt!=null&>.setUniform(ze,"2f","uvOffset",bt),Et!=null&>.setUniform(ze,"2f","detailUvRepeat",Et),lt!=null&>.setUniform(ze,"2f","detailUvOffset",lt),gt.setUniform(ze,"1i","useBumpMap",+Nt),gt.setUniform(ze,"1i","useRoughnessMap",+Zt),gt.setUniform(ze,"1i","doubleSide",+Ut)),he=St,pe=vt,Se=At,Ne=Ke}}}function ie(ae){ae=ae||{},this._depthTex=new Ze.a({format:Oe.a.DEPTH_COMPONENT,type:Oe.a.UNSIGNED_INT}),this._normalTex=new Ze.a({type:Oe.a.HALF_FLOAT}),this._framebuffer=new Te.a,this._framebuffer.attach(this._normalTex),this._framebuffer.attach(this._depthTex,Te.a.DEPTH_ATTACHMENT),this._normalMaterial=new Re.a({shader:new we.a(we.a.source("ecgl.normal.vertex"),we.a.source("ecgl.normal.fragment"))}),this._normalMaterial.enableTexture(["normalMap","bumpMap","roughnessMap"]),this._defaultNormalMap=be.a.createBlank("#000"),this._defaultBumpMap=be.a.createBlank("#000"),this._defaultRoughessMap=be.a.createBlank("#000"),this._debugPass=new Ie.a({fragment:we.a.source("clay.compositor.output")}),this._debugPass.setUniform("texture",this._normalTex),this._debugPass.material.undefine("fragment","OUTPUT_ALPHA")}ie.prototype.getDepthTexture=function(){return this._depthTex},ie.prototype.getNormalTexture=function(){return this._normalTex},ie.prototype.update=function(ae,fe,de){var ve=ae.getWidth(),xe=ae.getHeight(),he=this._depthTex,pe=this._normalTex,Se=this._normalMaterial;he.width=ve,he.height=xe,pe.width=ve,pe.height=xe;var Ne=fe.opaqueList;this._framebuffer.bind(ae),ae.gl.clearColor(0,0,0,0),ae.gl.clear(ae.gl.COLOR_BUFFER_BIT|ae.gl.DEPTH_BUFFER_BIT),ae.gl.disable(ae.gl.BLEND),ae.renderPass(Ne,de,{getMaterial:function(){return Se},ifRender:function(ze){return ze.renderNormal},beforeRender:ye(ae,this._defaultNormalMap,this._defaultBumpMap,this._defaultRoughessMap,this._normalMaterial),sort:ae.opaqueSortCompare}),this._framebuffer.unbind(ae)},ie.prototype.renderDebug=function(ae){this._debugPass.render(ae)},ie.prototype.dispose=function(ae){this._depthTex.dispose(ae),this._normalTex.dispose(ae)},Ge.a=ie},function(et,Ge,ke){"use strict";Ge.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(et,Ge,ke){"use strict";var Ze=ke(9),Oe=ke(4),we=ke(5),Te=ke(6),Re=ke(14),Ie=ke(7),be=ke(10);function Pe(je){je=je||{},this._edgePass=new Re.a({fragment:Ie.a.source("ecgl.edge")}),this._edgePass.setUniform("normalTexture",je.normalTexture),this._edgePass.setUniform("depthTexture",je.depthTexture),this._targetTexture=new we.a({type:Te.a.HALF_FLOAT}),this._frameBuffer=new be.a,this._frameBuffer.attach(this._targetTexture)}Pe.prototype.update=function(je,ye,ie,ae){var fe=je.getWidth(),de=je.getHeight(),ve=this._targetTexture;ve.width=fe,ve.height=de;var xe=this._frameBuffer;xe.bind(je),this._edgePass.setUniform("projectionInv",ye.invProjectionMatrix.array),this._edgePass.setUniform("textureSize",[fe,de]),this._edgePass.setUniform("texture",ie),this._edgePass.render(je),xe.unbind(je)},Pe.prototype.getTargetTexture=function(){return this._targetTexture},Pe.prototype.setParameter=function(je,ye){this._edgePass.setUniform(je,ye)},Pe.prototype.dispose=function(je){this._targetTexture.dispose(je),this._frameBuffer.dispose(je)},Ge.a=Pe},function(et,Ge,ke){"use strict";Ge.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(et,Ge,ke){"use strict";Ge.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(et,Ge,ke){"use strict";Ge.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(et,Ge,ke){"use strict";Ge.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(et,Ge,ke){"use strict";Ge.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(et,Ge,ke){"use strict";Ge.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(et,Ge,ke){"use strict";Ge.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(et,Ge,ke){"use strict";Ge.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(et,Ge,ke){"use strict";Ge.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(et,Ge,ke){"use strict";Ge.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(et,Ge,ke){"use strict";Ge.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(et,Ge,ke){"use strict";Ge.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(et,Ge,ke){"use strict";var Ze=ke(43),Oe=ke(14),we=ke(10),Te=ke(5),Re=ke(7),Ie=ke(9);function be(Pe){for(var je=[],ye=0;ye<30;ye++)je.push([Object(Ze.a)(ye,2),Object(Ze.a)(ye,3)]);this._haltonSequence=je,this._frame=0,this._sourceTex=new Te.a,this._sourceFb=new we.a,this._sourceFb.attach(this._sourceTex),this._prevFrameTex=new Te.a,this._outputTex=new Te.a;var ie=this._blendPass=new Oe.a({fragment:Re.a.source("clay.compositor.blend")});ie.material.disableTexturesAll(),ie.material.enableTexture(["texture1","texture2"]),this._blendFb=new we.a({depthBuffer:!1}),this._outputPass=new Oe.a({fragment:Re.a.source("clay.compositor.output"),blendWithPrevious:!0}),this._outputPass.material.define("fragment","OUTPUT_ALPHA"),this._outputPass.material.blend=function(ae){ae.blendEquationSeparate(ae.FUNC_ADD,ae.FUNC_ADD),ae.blendFuncSeparate(ae.ONE,ae.ONE_MINUS_SRC_ALPHA,ae.ONE,ae.ONE_MINUS_SRC_ALPHA)}}be.prototype={constructor:be,jitterProjection:function(Pe,je){var ye=Pe.viewport,ie=ye.devicePixelRatio||Pe.getDevicePixelRatio(),ae=ye.width*ie,fe=ye.height*ie,de=this._haltonSequence[this._frame%this._haltonSequence.length],ve=new Ie.a;ve.array[12]=(de[0]*2-1)/ae,ve.array[13]=(de[1]*2-1)/fe,Ie.a.mul(je.projectionMatrix,ve,je.projectionMatrix),Ie.a.invert(je.invProjectionMatrix,je.projectionMatrix)},resetFrame:function(){this._frame=0},getFrame:function(){return this._frame},getSourceFrameBuffer:function(){return this._sourceFb},getOutputTexture:function(){return this._outputTex},resize:function(Pe,je){this._prevFrameTex.width=Pe,this._prevFrameTex.height=je,this._outputTex.width=Pe,this._outputTex.height=je,this._sourceTex.width=Pe,this._sourceTex.height=je,this._prevFrameTex.dirty(),this._outputTex.dirty(),this._sourceTex.dirty()},isFinished:function(){return this._frame>=this._haltonSequence.length},render:function(Pe,je,ye){var ie=this._blendPass;this._frame===0?(ie.setUniform("weight1",0),ie.setUniform("weight2",1)):(ie.setUniform("weight1",.9),ie.setUniform("weight2",.1)),ie.setUniform("texture1",this._prevFrameTex),ie.setUniform("texture2",je||this._sourceTex),this._blendFb.attach(this._outputTex),this._blendFb.bind(Pe),ie.render(Pe),this._blendFb.unbind(Pe),ye||(this._outputPass.setUniform("texture",this._outputTex),this._outputPass.render(Pe));var ae=this._prevFrameTex;this._prevFrameTex=this._outputTex,this._outputTex=ae,this._frame++},dispose:function(Pe){this._sourceFb.dispose(Pe),this._blendFb.dispose(Pe),this._prevFrameTex.dispose(Pe),this._outputTex.dispose(Pe),this._sourceTex.dispose(Pe),this._outputPass.dispose(Pe),this._blendPass.dispose(Pe)}},Ge.a=be},function(et,Ge,ke){"use strict";var Ze=ke(0),Oe=ke.n(Ze),we=ke(184),Te=ke(185),Re=ke(82);Oe.a.registerAction({type:"geo3DChangeCamera",event:"geo3dcamerachanged",update:"series:updateCamera"},function(Ie,be){be.eachComponent({mainType:"geo3D",query:Ie},function(Pe){Pe.setView(Ie)})})},function(et,Ge,ke){"use strict";var Ze=ke(0),Oe=ke.n(Ze),we=ke(38),Te=ke(31),Re=ke(32),Ie=ke(26),be=ke(80),Pe=Oe.a.extendComponentModel({type:"geo3D",layoutMode:"box",coordinateSystem:null,optionUpdated:function(){var ye=this.option;ye.regions=this.getFilledRegions(ye.regions,ye.map);var ie=Oe.a.helper.completeDimensions(["value"],ye.data,{encodeDef:this.get("encode"),dimsDef:this.get("dimensions")}),ae=new Oe.a.List(ie,this);ae.initData(ye.regions);var fe={};ae.each(function(de){var ve=ae.getName(de),xe=ae.getItemModel(de);fe[ve]=xe}),this._regionModelMap=fe,this._data=ae},getData:function(){return this._data},getRegionModel:function(ye){var ie=this.getData().getName(ye);return this._regionModelMap[ie]||new Oe.a.Model(null,this)},getRegionPolygonCoords:function(ye){var ie=this.getData().getName(ye),ae=this.coordinateSystem.getRegion(ie);return ae?ae.geometries:[]},getFormattedLabel:function(ye,ie){var ae=this._data.getName(ye),fe=this.getRegionModel(ae),de=fe.get(ie==="normal"?["label","formatter"]:["emphasis","label","formatter"]);de==null&&(de=fe.get(["label","formatter"]));var ve={name:ae};if(typeof de=="function")return ve.status=ie,de(ve);if(typeof de=="string"){var xe=ve.seriesName;return de.replace("{a}",xe!=null?xe:"")}else return ae},defaultOption:{regions:[]}});Oe.a.util.merge(Pe.prototype,be.a),Oe.a.util.merge(Pe.prototype,we.a),Oe.a.util.merge(Pe.prototype,Te.a),Oe.a.util.merge(Pe.prototype,Re.a),Oe.a.util.merge(Pe.prototype,Ie.a);var je=Pe},function(et,Ge,ke){"use strict";var Ze=ke(59),Oe=ke(0),we=ke.n(Oe),Te=ke(2),Re=ke(39),Ie=ke(34),be=we.a.extendComponentView({type:"geo3D",__ecgl__:!0,init:function(Pe,je){this._geo3DBuilder=new Ze.a(je),this.groupGL=new Te.a.Node,this._lightRoot=new Te.a.Node,this._sceneHelper=new Ie.a(this._lightRoot),this._sceneHelper.initLight(this._lightRoot),this._control=new Re.a({zr:je.getZr()}),this._control.init()},render:function(Pe,je,ye){this.groupGL.add(this._geo3DBuilder.rootNode);var ie=Pe.coordinateSystem;if(!(!ie||!ie.viewGL)){ie.viewGL.add(this._lightRoot),Pe.get("show")?ie.viewGL.add(this.groupGL):ie.viewGL.remove(this.groupGL);var ae=this._control;ae.setViewGL(ie.viewGL);var fe=Pe.getModel("viewControl");ae.setFromViewControlModel(fe,0),this._sceneHelper.setScene(ie.viewGL.scene),this._sceneHelper.updateLight(Pe),ie.viewGL.setPostEffect(Pe.getModel("postEffect"),ye),ie.viewGL.setTemporalSuperSampling(Pe.getModel("temporalSuperSampling")),this._geo3DBuilder.update(Pe,je,ye,0,Pe.getData().count());var de=ie.viewGL.isLinearSpace()?"define":"undefine";this._geo3DBuilder.rootNode.traverse(function(ve){ve.material&&ve.material[de]("fragment","SRGB_DECODE")}),ae.off("update"),ae.on("update",function(){ye.dispatchAction({type:"geo3DChangeCamera",alpha:ae.getAlpha(),beta:ae.getBeta(),distance:ae.getDistance(),center:ae.getCenter(),from:this.uid,geo3DId:Pe.id})})}},afterRender:function(Pe,je,ye,ie){var ae=ie.renderer;this._sceneHelper.updateAmbientCubemap(ae,Pe,ye),this._sceneHelper.updateSkybox(ae,Pe,ye)},dispose:function(){this._control.dispose()}})},function(et,Ge,ke){"use strict";Ge.a=Ze;function Ze(vt,Tt,bt){bt=bt||2;var Et=Tt&&Tt.length,lt=Et?Tt[0]*bt:vt.length,Nt=Oe(vt,0,lt,bt,!0),Zt=[];if(!Nt)return Zt;var Ut,Ft,Yt,dn,Dn,Rn,Zn;if(Et&&(Nt=je(vt,Tt,Nt,bt)),vt.length>80*bt){Ut=Yt=vt[0],Ft=dn=vt[1];for(var ln=bt;lnYt&&(Yt=Dn),Rn>dn&&(dn=Rn);Zn=Math.max(Yt-Ut,dn-Ft)}return Te(Nt,Zt,bt,Ut,Ft,Zn),Zt}function Oe(vt,Tt,bt,Et,lt){var Nt,Zt;if(lt===At(vt,Tt,bt,Et)>0)for(Nt=Tt;Nt=Tt;Nt-=Et)Zt=gt(Nt,vt[Nt],vt[Nt+1],Zt);return Zt&&Ne(Zt,Zt.next)&&(st(Zt),Zt=Zt.next),Zt}function we(vt,Tt){if(!vt)return vt;Tt||(Tt=vt);var bt=vt,Et;do if(Et=!1,!bt.steiner&&(Ne(bt,bt.next)||Se(bt.prev,bt,bt.next)===0)){if(st(bt),bt=Tt=bt.prev,bt===bt.next)return null;Et=!0}else bt=bt.next;while(Et||bt!==Tt);return Tt}function Te(vt,Tt,bt,Et,lt,Nt,Zt){if(vt){!Zt&&Nt&&fe(vt,Et,lt,Nt);for(var Ut=vt,Ft,Yt;vt.prev!==vt.next;){if(Ft=vt.prev,Yt=vt.next,Nt?Ie(vt,Et,lt,Nt):Re(vt)){Tt.push(Ft.i/bt),Tt.push(vt.i/bt),Tt.push(Yt.i/bt),st(vt),vt=Yt.next,Ut=Yt.next;continue}if(vt=Yt,vt===Ut){Zt?Zt===1?(vt=be(vt,Tt,bt),Te(vt,Tt,bt,Et,lt,Nt,2)):Zt===2&&Pe(vt,Tt,bt,Et,lt,Nt):Te(we(vt),Tt,bt,Et,lt,Nt,1);break}}}}function Re(vt){var Tt=vt.prev,bt=vt,Et=vt.next;if(Se(Tt,bt,Et)>=0)return!1;for(var lt=vt.next.next;lt!==vt.prev;){if(he(Tt.x,Tt.y,bt.x,bt.y,Et.x,Et.y,lt.x,lt.y)&&Se(lt.prev,lt,lt.next)>=0)return!1;lt=lt.next}return!0}function Ie(vt,Tt,bt,Et){var lt=vt.prev,Nt=vt,Zt=vt.next;if(Se(lt,Nt,Zt)>=0)return!1;for(var Ut=lt.xNt.x?lt.x>Zt.x?lt.x:Zt.x:Nt.x>Zt.x?Nt.x:Zt.x,dn=lt.y>Nt.y?lt.y>Zt.y?lt.y:Zt.y:Nt.y>Zt.y?Nt.y:Zt.y,Dn=ve(Ut,Ft,Tt,bt,Et),Rn=ve(Yt,dn,Tt,bt,Et),Zn=vt.nextZ;Zn&&Zn.z<=Rn;){if(Zn!==vt.prev&&Zn!==vt.next&&he(lt.x,lt.y,Nt.x,Nt.y,Zt.x,Zt.y,Zn.x,Zn.y)&&Se(Zn.prev,Zn,Zn.next)>=0)return!1;Zn=Zn.nextZ}for(Zn=vt.prevZ;Zn&&Zn.z>=Dn;){if(Zn!==vt.prev&&Zn!==vt.next&&he(lt.x,lt.y,Nt.x,Nt.y,Zt.x,Zt.y,Zn.x,Zn.y)&&Se(Zn.prev,Zn,Zn.next)>=0)return!1;Zn=Zn.prevZ}return!0}function be(vt,Tt,bt){var Et=vt;do{var lt=Et.prev,Nt=Et.next.next;!Ne(lt,Nt)&&ze(lt,Et,Et.next,Nt)&&Ve(lt,Nt)&&Ve(Nt,lt)&&(Tt.push(lt.i/bt),Tt.push(Et.i/bt),Tt.push(Nt.i/bt),st(Et),st(Et.next),Et=vt=Nt),Et=Et.next}while(Et!==vt);return Et}function Pe(vt,Tt,bt,Et,lt,Nt){var Zt=vt;do{for(var Ut=Zt.next.next;Ut!==Zt.prev;){if(Zt.i!==Ut.i&&pe(Zt,Ut)){var Ft=tt(Zt,Ut);Zt=we(Zt,Zt.next),Ft=we(Ft,Ft.next),Te(Zt,Tt,bt,Et,lt,Nt),Te(Ft,Tt,bt,Et,lt,Nt);return}Ut=Ut.next}Zt=Zt.next}while(Zt!==vt)}function je(vt,Tt,bt,Et){var lt=[],Nt,Zt,Ut,Ft,Yt;for(Nt=0,Zt=Tt.length;Nt=bt.next.y&&bt.next.y!==bt.y){var Ut=bt.x+(lt-bt.y)*(bt.next.x-bt.x)/(bt.next.y-bt.y);if(Ut<=Et&&Ut>Nt){if(Nt=Ut,Ut===Et){if(lt===bt.y)return bt;if(lt===bt.next.y)return bt.next}Zt=bt.x=bt.x&&bt.x>=Yt&&Et!==bt.x&&he(ltZt.x)&&Ve(bt,vt)&&(Zt=bt,Dn=Rn)),bt=bt.next;return Zt}function fe(vt,Tt,bt,Et){var lt=vt;do lt.z===null&&(lt.z=ve(lt.x,lt.y,Tt,bt,Et)),lt.prevZ=lt.prev,lt.nextZ=lt.next,lt=lt.next;while(lt!==vt);lt.prevZ.nextZ=null,lt.prevZ=null,de(lt)}function de(vt){var Tt,bt,Et,lt,Nt,Zt,Ut,Ft,Yt=1;do{for(bt=vt,vt=null,Nt=null,Zt=0;bt;){for(Zt++,Et=bt,Ut=0,Tt=0;Tt0||Ft>0&&Et;)Ut!==0&&(Ft===0||!Et||bt.z<=Et.z)?(lt=bt,bt=bt.nextZ,Ut--):(lt=Et,Et=Et.nextZ,Ft--),Nt?Nt.nextZ=lt:vt=lt,lt.prevZ=Nt,Nt=lt;bt=Et}Nt.nextZ=null,Yt*=2}while(Zt>1);return vt}function ve(vt,Tt,bt,Et,lt){return vt=32767*(vt-bt)/lt,Tt=32767*(Tt-Et)/lt,vt=(vt|vt<<8)&16711935,vt=(vt|vt<<4)&252645135,vt=(vt|vt<<2)&858993459,vt=(vt|vt<<1)&1431655765,Tt=(Tt|Tt<<8)&16711935,Tt=(Tt|Tt<<4)&252645135,Tt=(Tt|Tt<<2)&858993459,Tt=(Tt|Tt<<1)&1431655765,vt|Tt<<1}function xe(vt){var Tt=vt,bt=vt;do Tt.x=0&&(vt-Zt)*(Et-Ut)-(bt-Zt)*(Tt-Ut)>=0&&(bt-Zt)*(Nt-Ut)-(lt-Zt)*(Et-Ut)>=0}function pe(vt,Tt){return vt.next.i!==Tt.i&&vt.prev.i!==Tt.i&&!Ke(vt,Tt)&&Ve(vt,Tt)&&Ve(Tt,vt)&&Je(vt,Tt)}function Se(vt,Tt,bt){return(Tt.y-vt.y)*(bt.x-Tt.x)-(Tt.x-vt.x)*(bt.y-Tt.y)}function Ne(vt,Tt){return vt.x===Tt.x&&vt.y===Tt.y}function ze(vt,Tt,bt,Et){return Ne(vt,Tt)&&Ne(bt,Et)||Ne(vt,Et)&&Ne(bt,Tt)?!0:Se(vt,Tt,bt)>0!=Se(vt,Tt,Et)>0&&Se(bt,Et,vt)>0!=Se(bt,Et,Tt)>0}function Ke(vt,Tt){var bt=vt;do{if(bt.i!==vt.i&&bt.next.i!==vt.i&&bt.i!==Tt.i&&bt.next.i!==Tt.i&&ze(bt,bt.next,vt,Tt))return!0;bt=bt.next}while(bt!==vt);return!1}function Ve(vt,Tt){return Se(vt.prev,vt,vt.next)<0?Se(vt,Tt,vt.next)>=0&&Se(vt,vt.prev,Tt)>=0:Se(vt,Tt,vt.prev)<0||Se(vt,vt.next,Tt)<0}function Je(vt,Tt){var bt=vt,Et=!1,lt=(vt.x+Tt.x)/2,Nt=(vt.y+Tt.y)/2;do bt.y>Nt!=bt.next.y>Nt&&bt.next.y!==bt.y&<<(bt.next.x-bt.x)*(Nt-bt.y)/(bt.next.y-bt.y)+bt.x&&(Et=!Et),bt=bt.next;while(bt!==vt);return Et}function tt(vt,Tt){var bt=new St(vt.i,vt.x,vt.y),Et=new St(Tt.i,Tt.x,Tt.y),lt=vt.next,Nt=Tt.prev;return vt.next=Tt,Tt.prev=vt,bt.next=lt,lt.prev=bt,Et.next=bt,bt.prev=Et,Nt.next=Et,Et.prev=Nt,Et}function gt(vt,Tt,bt,Et){var lt=new St(vt,Tt,bt);return Et?(lt.next=Et.next,lt.prev=Et,Et.next.prev=lt,Et.next=lt):(lt.prev=lt,lt.next=lt),lt}function st(vt){vt.next.prev=vt.prev,vt.prev.next=vt.next,vt.prevZ&&(vt.prevZ.nextZ=vt.nextZ),vt.nextZ&&(vt.nextZ.prevZ=vt.prevZ)}function St(vt,Tt,bt){this.i=vt,this.x=Tt,this.y=bt,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}Ze.deviation=function(vt,Tt,bt,Et){var lt=Tt&&Tt.length,Nt=lt?Tt[0]*bt:vt.length,Zt=Math.abs(At(vt,0,Nt,bt));if(lt)for(var Ut=0,Ft=Tt.length;Ut0},_displacementChanged:!0,_displacementScale:0,updateDisplacementHash:function(){var ye=this.getDisplacementTexture(),ie=this.getDisplacemenScale();this._displacementChanged=this._displacementTexture!==ye||this._displacementScale!==ie,this._displacementTexture=ye,this._displacementScale=ie},isDisplacementChanged:function(){return this._displacementChanged}});Oe.a.util.merge(Pe.prototype,we.a),Oe.a.util.merge(Pe.prototype,Te.a),Oe.a.util.merge(Pe.prototype,Re.a),Oe.a.util.merge(Pe.prototype,Ie.a);var je=Pe},function(et,Ge,ke){"use strict";var Ze=ke(0),Oe=ke.n(Ze),we=ke(2),Te=ke(39),Re=ke(34),Ie=ke(192),be=ke(3),Pe=Oe.a.extendComponentView({type:"globe",__ecgl__:!0,_displacementScale:0,init:function(je,ye){this.groupGL=new we.a.Node,this._sphereGeometry=new we.a.SphereGeometry({widthSegments:200,heightSegments:100,dynamic:!0}),this._overlayGeometry=new we.a.SphereGeometry({widthSegments:80,heightSegments:40}),this._planeGeometry=new we.a.PlaneGeometry,this._earthMesh=new we.a.Mesh({renderNormal:!0}),this._lightRoot=new we.a.Node,this._sceneHelper=new Re.a,this._sceneHelper.initLight(this._lightRoot),this.groupGL.add(this._earthMesh),this._control=new Te.a({zr:ye.getZr()}),this._control.init(),this._layerMeshes={}},render:function(je,ye,ie){var ae=je.coordinateSystem,fe=je.get("shading");ae.viewGL.add(this._lightRoot),je.get("show")?ae.viewGL.add(this.groupGL):ae.viewGL.remove(this.groupGL),this._sceneHelper.setScene(ae.viewGL.scene),ae.viewGL.setPostEffect(je.getModel("postEffect"),ie),ae.viewGL.setTemporalSuperSampling(je.getModel("temporalSuperSampling"));var de=this._earthMesh;de.geometry=this._sphereGeometry;var ve="ecgl."+fe;(!de.material||de.material.shader.name!==ve)&&(de.material=we.a.createMaterial(ve)),we.a.setMaterialFromModel(fe,de.material,je,ie),["roughnessMap","metalnessMap","detailMap","normalMap"].forEach(function(Se){var Ne=de.material.get(Se);Ne&&(Ne.flipY=!1)}),de.material.set("color",we.a.parseColor(je.get("baseColor")));var xe=ae.radius*.99;de.scale.set(xe,xe,xe);var he=de.material.setTextureImage("diffuseMap",je.get("baseTexture"),ie,{flipY:!1,anisotropic:8});he&&he.surface&&he.surface.attachToMesh(de);var pe=de.material.setTextureImage("bumpMap",je.get("heightTexture"),ie,{flipY:!1,anisotropic:8});pe&&pe.surface&&pe.surface.attachToMesh(de),de.material[je.get("postEffect.enable")?"define":"undefine"]("fragment","SRGB_DECODE"),this._updateLight(je,ie),this._displaceVertices(je,ie),this._updateViewControl(je,ie),this._updateLayers(je,ie)},afterRender:function(je,ye,ie,ae){var fe=ae.renderer;this._sceneHelper.updateAmbientCubemap(fe,je,ie),this._sceneHelper.updateSkybox(fe,je,ie)},_updateLayers:function(je,ye){var ie=je.coordinateSystem,ae=je.get("layers"),fe=ie.radius,de=[],ve=[],xe=[],he=[];Oe.a.util.each(ae,function(Ke){var Ve=new Oe.a.Model(Ke),Je=Ve.get("type"),tt=we.a.loadTexture(Ve.get("texture"),ye,{flipY:!1,anisotropic:8});if(tt.surface&&tt.surface.attachToMesh(this._earthMesh),Je==="blend"){var gt=Ve.get("blendTo"),st=be.a.firstNotNull(Ve.get("intensity"),1);gt==="emission"?(xe.push(tt),he.push(st)):(de.push(tt),ve.push(st))}else{var St=Ve.get("id"),At=this._layerMeshes[St];At||(At=this._layerMeshes[St]=new we.a.Mesh({geometry:this._overlayGeometry,castShadow:!1,ignorePicking:!0}));var vt=Ve.get("shading");vt==="lambert"?(At.material=At.__lambertMaterial||new we.a.Material({autoUpdateTextureStatus:!1,shader:we.a.createShader("ecgl.lambert"),transparent:!0,depthMask:!1}),At.__lambertMaterial=At.material):(At.material=At.__colorMaterial||new we.a.Material({autoUpdateTextureStatus:!1,shader:we.a.createShader("ecgl.color"),transparent:!0,depthMask:!1}),At.__colorMaterial=At.material),At.material.enableTexture("diffuseMap");var Tt=Ve.get("distance"),bt=fe+(Tt==null?ie.radius/100:Tt);At.scale.set(bt,bt,bt),fe=bt;var Et=this._blankTexture||(this._blankTexture=we.a.createBlankTexture("rgba(255, 255, 255, 0)"));At.material.set("diffuseMap",Et),we.a.loadTexture(Ve.get("texture"),ye,{flipY:!1,anisotropic:8},function(lt){lt.surface&<.surface.attachToMesh(At),At.material.set("diffuseMap",lt),ye.getZr().refresh()}),Ve.get("show")?this.groupGL.add(At):this.groupGL.remove(At)}},this);var pe=this._earthMesh.material;pe.define("fragment","LAYER_DIFFUSEMAP_COUNT",de.length),pe.define("fragment","LAYER_EMISSIVEMAP_COUNT",xe.length),pe.set("layerDiffuseMap",de),pe.set("layerDiffuseIntensity",ve),pe.set("layerEmissiveMap",xe),pe.set("layerEmissionIntensity",he);var Se=je.getModel("debug.wireframe");if(Se.get("show")){pe.define("both","WIREFRAME_TRIANGLE");var Ne=we.a.parseColor(Se.get("lineStyle.color")||"rgba(0,0,0,0.5)"),ze=be.a.firstNotNull(Se.get("lineStyle.width"),1);pe.set("wireframeLineWidth",ze),pe.set("wireframeLineColor",Ne)}else pe.undefine("both","WIREFRAME_TRIANGLE")},_updateViewControl:function(je,ye){var ie=je.coordinateSystem,ae=je.getModel("viewControl"),fe=ie.viewGL.camera,de=this;function ve(){return{type:"globeChangeCamera",alpha:xe.getAlpha(),beta:xe.getBeta(),distance:xe.getDistance()-ie.radius,center:xe.getCenter(),from:de.uid,globeId:je.id}}var xe=this._control;xe.setViewGL(ie.viewGL);var he=ae.get("targetCoord"),pe,Se;he!=null&&(Se=he[0]+90,pe=he[1]),xe.setFromViewControlModel(ae,{baseDistance:ie.radius,alpha:pe,beta:Se}),xe.off("update"),xe.on("update",function(){ye.dispatchAction(ve())})},_displaceVertices:function(je,ye){var ie=je.get("displacementQuality"),ae=je.get("debug.wireframe.show"),fe=je.coordinateSystem;if(!(!je.isDisplacementChanged()&&ie===this._displacementQuality&&ae===this._showDebugWireframe)){this._displacementQuality=ie,this._showDebugWireframe=ae;var de=this._sphereGeometry,ve={low:100,medium:200,high:400,ultra:800}[ie]||200,xe=ve/2;(de.widthSegments!==ve||ae)&&(de.widthSegments=ve,de.heightSegments=xe,de.build()),this._doDisplaceVertices(de,fe),ae&&de.generateBarycentric()}},_doDisplaceVertices:function(je,ye){var ie=je.attributes.position.value,ae=je.attributes.texcoord0.value,fe=je.__originalPosition;(!fe||fe.length!==ie.length)&&(fe=new Float32Array(ie.length),fe.set(ie),je.__originalPosition=fe);for(var de=ye.displacementWidth,ve=ye.displacementHeight,xe=ye.displacementData,he=0;he0&&ye>0||je<0&&ye<0)}function be(Pe,je){var ye=Pe.getData(),ie=Pe.get("barSize");if(ie==null){var ae=je.size,fe,de,ve=je.getAxis("x"),xe=je.getAxis("y");ve.type==="category"?fe=ve.getBandWidth()*.7:fe=Math.round(ae[0]/Math.sqrt(ye.count()))*.6,xe.type==="category"?de=xe.getBandWidth()*.7:de=Math.round(ae[1]/Math.sqrt(ye.count()))*.6,ie=[fe,de]}else Oe.a.util.isArray(ie)||(ie=[ie,ie]);var he=je.getAxis("z").scale.getExtent(),pe=Ie(he),Se=["x","y","z"].map(function(Ne){return Pe.coordDimToDataDim(Ne)[0]});ye.each(Se,function(Ne,ze,Ke,Ve){var Je=ye.get(Se[2],Ve,!0),tt=ye.stackedOn?Je-Ke:pe?0:he[0],gt=je.dataToPoint([Ne,ze,tt]),st=je.dataToPoint([Ne,ze,Je]),St=Re.dist(gt,st),At=[0,st[1]0&&(St++,Ke[3]<.99&&(tt=!0))}}),pe.geometry.setBarCount(St);var gt=de.getLayout("orient"),st=this._barIndexOfData=new Int32Array(de.count()),St=0;de.each(function(vt){if(!de.hasValue(vt)){st[vt]=-1;return}var Tt=de.getItemLayout(vt),bt=Tt[0],Et=Tt[1],lt=Tt[2],Nt=vt*4;Ke[0]=Ve[Nt++],Ke[1]=Ve[Nt++],Ke[2]=Ve[Nt++],Ke[3]=Ve[Nt++],Ke[3]>0&&(he._barMesh.geometry.addBar(bt,Et,gt,lt,Ke,vt),st[vt]=St++)}),pe.geometry.dirty(),pe.geometry.updateBoundingBox();var At=pe.material;At.transparent=tt,At.depthMask=!tt,pe.geometry.sortTriangles=tt,this._initHandler(ae,fe)},_initHandler:function(ae,fe){var de=ae.getData(),ve=this._barMesh,xe=ae.coordinateSystem.type==="cartesian3D";ve.seriesIndex=ae.seriesIndex;var he=-1;ve.off("mousemove"),ve.off("mouseout"),ve.on("mousemove",function(pe){var Se=ve.geometry.getDataIndexOfVertex(pe.triangle[0]);Se!==he&&(this._downplay(he),this._highlight(Se),this._labelsBuilder.updateLabels([Se]),xe&&fe.dispatchAction({type:"grid3DShowAxisPointer",value:[de.get("x",Se),de.get("y",Se),de.get("z",Se,!0)]})),he=Se,ve.dataIndex=Se},this),ve.on("mouseout",function(pe){this._downplay(he),this._labelsBuilder.updateLabels(),he=-1,ve.dataIndex=-1,xe&&fe.dispatchAction({type:"grid3DHideAxisPointer"})},this)},_highlight:function(ae){var fe=this._data;if(fe){var de=this._barIndexOfData[ae];if(!(de<0)){var ve=fe.getItemModel(ae),xe=ve.getModel("emphasis.itemStyle"),he=xe.get("color"),pe=xe.get("opacity");if(he==null){var Se=fe.getItemVisual(ae,"color");he=Oe.a.color.lift(Se,-.4)}pe==null&&(pe=fe.getItemVisual(ae,"opacity"));var Ne=we.a.parseColor(he);Ne[3]*=pe,this._barMesh.geometry.setColor(de,Ne),this._api.getZr().refresh()}}},_downplay:function(ae){var fe=this._data;if(fe){var de=this._barIndexOfData[ae];if(!(de<0)){var ve=fe.getItemVisual(ae,"color"),xe=fe.getItemVisual(ae,"opacity"),he=we.a.parseColor(ve);he[3]*=xe,this._barMesh.geometry.setColor(de,he),this._api.getZr().refresh()}}},highlight:function(ae,fe,de,ve){this._toggleStatus("highlight",ae,fe,de,ve)},downplay:function(ae,fe,de,ve){this._toggleStatus("downplay",ae,fe,de,ve)},_toggleStatus:function(ae,fe,de,ve,xe){var he=fe.getData(),pe=Te.a.queryDataIndex(he,xe),Se=this;pe!=null?Oe.a.util.each(Re.a.normalizeToArray(pe),function(Ne){ae==="highlight"?this._highlight(Ne):this._downplay(Ne)},this):he.each(function(Ne){ae==="highlight"?Se._highlight(Ne):Se._downplay(Ne)})},remove:function(){this.groupGL.removeAll()},dispose:function(){this.groupGL.removeAll()}})},function(et,Ge,ke){"use strict";var Ze=ke(0),Oe=ke.n(Ze),we=ke(33),Te=ke(60),Re=ke(13),Ie=ke(1),be=ke.n(Ie),Pe=be.a.vec3,je=be.a.mat3,ye=Re.a.extend(function(){return{attributes:{position:new Re.a.Attribute("position","float",3,"POSITION"),normal:new Re.a.Attribute("normal","float",3,"NORMAL"),color:new Re.a.Attribute("color","float",4,"COLOR"),prevPosition:new Re.a.Attribute("prevPosition","float",3),prevNormal:new Re.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(ie){var ae=this.enableNormal,fe=this.getBarVertexCount()*ie,de=this.getBarTriangleCount()*ie;this.vertexCount!==fe&&(this.attributes.position.init(fe),ae?this.attributes.normal.init(fe):this.attributes.normal.value=null,this.attributes.color.init(fe)),this.triangleCount!==de&&(this.indices=fe>65535?new Uint32Array(de*3):new Uint16Array(de*3),this._dataIndices=new Uint32Array(fe))},getBarVertexCount:function(){var ie=this.bevelSize>0?this.bevelSegments:0;return ie>0?this._getBevelBarVertexCount(ie):this.enableNormal?24:8},getBarTriangleCount:function(){var ie=this.bevelSize>0?this.bevelSegments:0;return ie>0?this._getBevelBarTriangleCount(ie):12},_getBevelBarVertexCount:function(ie){return(ie+1)*4*(ie+1)*2},_getBevelBarTriangleCount:function(ie){var ae=ie*4+3,fe=ie*2+1;return(ae+1)*fe*2+4},setColor:function(ie,ae){for(var fe=this.getBarVertexCount(),de=fe*ie,ve=fe*(ie+1),xe=de;xe0&&this.bevelSegments>0)this._addBevelBar(vt,Tt,bt,Et,this.bevelSize,this.bevelSegments,lt);else{Pe.copy(ve,Tt),Pe.normalize(ve,ve),Pe.cross(xe,bt,ve),Pe.normalize(xe,xe),Pe.cross(de,ve,xe),Pe.normalize(xe,xe),Pe.negate(he,de),Pe.negate(pe,ve),Pe.negate(Se,xe),ae(Ne[0],vt,de,Et[0]/2),ae(Ne[0],Ne[0],xe,Et[2]/2),ae(Ne[1],vt,de,Et[0]/2),ae(Ne[1],Ne[1],Se,Et[2]/2),ae(Ne[2],vt,he,Et[0]/2),ae(Ne[2],Ne[2],Se,Et[2]/2),ae(Ne[3],vt,he,Et[0]/2),ae(Ne[3],Ne[3],xe,Et[2]/2),ae(fe,vt,ve,Et[1]),ae(Ne[4],fe,de,Et[0]/2),ae(Ne[4],Ne[4],xe,Et[2]/2),ae(Ne[5],fe,de,Et[0]/2),ae(Ne[5],Ne[5],Se,Et[2]/2),ae(Ne[6],fe,he,Et[0]/2),ae(Ne[6],Ne[6],Se,Et[2]/2),ae(Ne[7],fe,he,Et[0]/2),ae(Ne[7],Ne[7],xe,Et[2]/2);var Ut=this.attributes;if(this.enableNormal){ze[0]=de,ze[1]=he,ze[2]=ve,ze[3]=pe,ze[4]=xe,ze[5]=Se;for(var Ft=this._vertexOffset,Yt=0;Yt=0){var Zt=Je*3,Ut=new be.a(this._points[Zt],this._points[Zt+1],this._points[Zt+2]);Ne.push({dataIndex:Je,point:Ut,pointWorld:Ut.clone(),target:this._line3DMesh,distance:this._camera.getWorldPosition().dist(Ut)})}},remove:function(){this.groupGL.removeAll()},dispose:function(){this.groupGL.removeAll()}})},function(et,Ge){function ke(Ze,Oe,we,Te,Re,Ie,be){if(Re===0)return!1;var Pe=Re,je=0,ye=Ze;if(be>Oe+Pe&&be>Te+Pe||beZe+Pe&&Ie>we+Pe||Iefe?de.position[1]+=(ve-fe)/2:de.position[0]+=(ve-ae)/2;var xe=de.getBoundingRect();return de.position[0]-=xe.x,de.position[1]-=xe.y,de.setStyle(je),de.update(),de.__size=ve,de}function Re(be,Pe,je){var ye=Pe.width,ie=Pe.height,ae=be.canvas.width,fe=be.canvas.height,de=ye/ae,ve=ie/fe;function xe(Je){return Je<128?1:-1}function he(Je,tt){var gt=1/0;Je=Math.floor(Je*de),tt=Math.floor(tt*ve);for(var st=tt*ye+Je,St=Pe.data[st*4],At=xe(St),vt=Math.max(tt-je,0);vt=0;Ne--){var ze;this.geometry.indices?ze=this.geometry.indices[Ne]:ze=Ne;var Ke=xe[ze*2],Ve=xe[ze*2+1],Je=this.geometry.attributes.size.get(ze)/this.sizeScale,tt=Je/2;if(ye>Ke-tt*pe&&yeVe-tt*Se&&ie=2e4},doSortVertices:function(Re,Ie){var be=this.indices,Pe=Te.create();if(!be){be=this.indices=this.vertexCount>65535?new Uint32Array(this.vertexCount):new Uint16Array(this.vertexCount);for(var je=0;je.05);else for(var je=0;je<3;je++)this._progressiveQuickSort(Ie*3+je);this.dirtyIndices()},_simpleSort:function(Re){var Ie=this._zList,be=this.indices;function Pe(je,ye){return Ie[ye]-Ie[je]}Re?Array.prototype.sort.call(be,Pe):Ze.a.sort(be,Pe,0,be.length-1)},_progressiveQuickSort:function(Re){var Ie=this._zList,be=this.indices;this._quickSort=this._quickSort||new Ze.a,this._quickSort.step(be,function(Pe,je){return Ie[je]-Ie[Pe]},Re)}}},function(et,Ge,ke){"use strict";Ge.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(et,Ge,ke){"use strict";var Ze=ke(0),Oe=ke.n(Ze),we=ke(221),Te=ke(222),Re=ke(225),Ie=ke(16);Oe.a.registerVisual(Object(Ie.a)("lines3D")),Oe.a.registerAction({type:"lines3DPauseEffect",event:"lines3deffectpaused",update:"series.lines3D:pauseEffect"},function(){}),Oe.a.registerAction({type:"lines3DResumeEffect",event:"lines3deffectresumed",update:"series.lines3D:resumeEffect"},function(){}),Oe.a.registerAction({type:"lines3DToggleEffect",event:"lines3deffectchanged",update:"series.lines3D:toggleEffect"},function(){})},function(et,Ge,ke){"use strict";var Ze=ke(0),Oe=ke.n(Ze),we=ke(1),Te=ke.n(we),Re=Te.a.vec3,Ie=Te.a.vec2,be=Re.normalize,Pe=Re.cross,je=Re.sub,ye=Re.add,ie=Re.create,ae=ie(),fe=ie(),de=ie(),ve=ie(),xe=[],he=[];function pe(Je,tt){Ie.copy(xe,Je[0]),Ie.copy(he,Je[1]);var gt=[],st=gt[0]=ie(),St=gt[1]=ie(),At=gt[2]=ie(),vt=gt[3]=ie();tt.dataToPoint(xe,st),tt.dataToPoint(he,vt),be(ae,st),je(fe,vt,st),be(fe,fe),Pe(de,fe,ae),be(de,de),Pe(fe,ae,de),ye(St,ae,fe),be(St,St),be(ae,vt),je(fe,st,vt),be(fe,fe),Pe(de,fe,ae),be(de,de),Pe(fe,ae,de),ye(At,ae,fe),be(At,At),ye(ve,st,vt),be(ve,ve);var Tt=Re.dot(st,ve),bt=Re.dot(ve,St),Et=(Math.max(Re.len(st),Re.len(vt))-Tt)/bt*2;return Re.scaleAndAdd(St,st,St,Et),Re.scaleAndAdd(At,vt,At,Et),gt}function Se(Je,tt,gt){var st=[],St=st[0]=Re.create(),At=st[1]=Re.create(),vt=st[2]=Re.create(),Tt=st[3]=Re.create();tt.dataToPoint(Je[0],St),tt.dataToPoint(Je[1],Tt);var bt=Re.dist(St,Tt);return Re.lerp(At,St,Tt,.3),Re.lerp(vt,St,Tt,.3),Re.scaleAndAdd(At,At,gt,Math.min(bt*.1,10)),Re.scaleAndAdd(vt,vt,gt,Math.min(bt*.1,10)),st}function Ne(Je,tt){for(var gt=new Float32Array(Je.length*3),st=0,St=[],At=0;At0&&St[0]instanceof Array))throw new Error("Invalid coords "+JSON.stringify(St)+". Lines must have 2d coords array in data item.");tt.push(St)}),{coordsList:tt}}function Ke(Je,tt){var gt=Je.getData(),st=Je.get("polyline");gt.setLayout("lineType",st?"polyline":"cubicBezier");var St=ze(gt);gt.each(function(At){var vt=St.coordsList[At],Tt=st?Ne:pe;gt.setItemLayout(At,Tt(vt,tt))})}function Ve(Je,tt,gt){var st=Je.getData(),St=Je.get("polyline"),At=ze(st);st.setLayout("lineType",St?"polyline":"cubicBezier"),st.each(function(vt){var Tt=At.coordsList[vt],bt=St?Ne(Tt,tt):Se(Tt,tt,gt);st.setItemLayout(vt,bt)})}Oe.a.registerLayout(function(Je,tt){Je.eachSeriesByType("lines3D",function(gt){var st=gt.coordinateSystem;st.type==="globe"?Ke(gt,st):st.type==="geo3D"?Ve(gt,st,[0,1,0]):st.type==="mapbox3D"&&Ve(gt,st,[0,0,1])})})},function(et,Ge,ke){"use strict";var Ze=ke(0),Oe=ke.n(Ze),we=ke(2),Te=ke(22),Re=ke(223),Ie=ke(40);we.a.Shader.import(Ie.a);function be(je){return je.radius!=null?je.radius:je.size!=null?Math.max(je.size[0],je.size[1],je.size[2]):100}var Pe=Oe.a.extendChartView({type:"lines3D",__ecgl__:!0,init:function(je,ye){this.groupGL=new we.a.Node,this._meshLinesMaterial=new we.a.Material({shader:we.a.createShader("ecgl.meshLines3D"),transparent:!0,depthMask:!1}),this._linesMesh=new we.a.Mesh({geometry:new Te.a,material:this._meshLinesMaterial,$ignorePicking:!0}),this._trailMesh=new Re.a},render:function(je,ye,ie){this.groupGL.add(this._linesMesh);var ae=je.coordinateSystem,fe=je.getData();if(ae&&ae.viewGL){var de=ae.viewGL;de.add(this.groupGL),this._updateLines(je,ye,ie);var ve=ae.viewGL.isLinearSpace()?"define":"undefine";this._linesMesh.material[ve]("fragment","SRGB_DECODE"),this._trailMesh.material[ve]("fragment","SRGB_DECODE")}var xe=this._trailMesh;if(xe.stopAnimation(),je.get("effect.show")){this.groupGL.add(xe),xe.updateData(fe,ie,this._linesMesh.geometry),xe.__time=xe.__time||0;var he=3600*1e3;this._curveEffectsAnimator=xe.animate("",{loop:!0}).when(he,{__time:he}).during(function(){xe.setAnimationTime(xe.__time)}).start()}else this.groupGL.remove(xe),this._curveEffectsAnimator=null;this._linesMesh.material.blend=this._trailMesh.material.blend=je.get("blendMode")==="lighter"?we.a.additiveBlend:null},pauseEffect:function(){this._curveEffectsAnimator&&this._curveEffectsAnimator.pause()},resumeEffect:function(){this._curveEffectsAnimator&&this._curveEffectsAnimator.resume()},toggleEffect:function(){var je=this._curveEffectsAnimator;je&&(je.isPaused()?je.resume():je.pause())},_updateLines:function(je,ye,ie){var ae=je.getData(),fe=je.coordinateSystem,de=this._linesMesh.geometry,ve=je.get("polyline");de.expandLine=!0;var xe=be(fe);de.segmentScale=xe/20;var he="lineStyle.width".split("."),pe=ie.getDevicePixelRatio(),Se=0;ae.each(function(Ve){var Je=ae.getItemModel(Ve),tt=Je.get(he);tt==null&&(tt=1),ae.setItemVisual(Ve,"lineWidth",tt),Se=Math.max(tt,Se)}),de.useNativeLine=!1;var Ne=0,ze=0;ae.each(function(Ve){var Je=ae.getItemLayout(Ve);ve?(Ne+=de.getPolylineVertexCount(Je),ze+=de.getPolylineTriangleCount(Je)):(Ne+=de.getCubicCurveVertexCount(Je[0],Je[1],Je[2],Je[3]),ze+=de.getCubicCurveTriangleCount(Je[0],Je[1],Je[2],Je[3]))}),de.setVertexCount(Ne),de.setTriangleCount(ze),de.resetOffset();var Ke=[];ae.each(function(Ve){var Je=ae.getItemLayout(Ve),tt=ae.getItemVisual(Ve,"color"),gt=ae.getItemVisual(Ve,"opacity"),st=ae.getItemVisual(Ve,"lineWidth")*pe;gt==null&&(gt=1),Ke=we.a.parseColor(tt,Ke),Ke[3]*=gt,ve?de.addPolyline(Je,Ke,st):de.addCubicCurve(Je[0],Je[1],Je[2],Je[3],Ke,st)}),de.dirty()},remove:function(){this.groupGL.removeAll()},dispose:function(){this.groupGL.removeAll()}})},function(et,Ge,ke){"use strict";var Ze=ke(0),Oe=ke.n(Ze),we=ke(2),Te=ke(1),Re=ke.n(Te),Ie=ke(22),be=ke(224),Pe=Re.a.vec3;function je(ye){return ye>0?1:-1}we.a.Shader.import(be.a),Ge.a=we.a.Mesh.extend(function(){var ye=new we.a.Material({shader:new we.a.Shader(we.a.Shader.source("ecgl.trail2.vertex"),we.a.Shader.source("ecgl.trail2.fragment")),transparent:!0,depthMask:!1}),ie=new Ie.a({dynamic:!0});return ie.createAttribute("dist","float",1),ie.createAttribute("distAll","float",1),ie.createAttribute("start","float",1),{geometry:ie,material:ye,culling:!1,$ignorePicking:!0}},{updateData:function(ye,ie,ae){var fe=ye.hostModel,de=this.geometry,ve=fe.getModel("effect"),xe=ve.get("trailWidth")*ie.getDevicePixelRatio(),he=ve.get("trailLength"),pe=fe.get("effect.constantSpeed"),Se=fe.get("effect.period")*1e3,Ne=pe!=null;this.getScene()||console.error("TrailMesh must been add to scene before updateData"),Ne?this.material.set("speed",pe/1e3):this.material.set("period",Se),this.material[Ne?"define":"undefine"]("vertex","CONSTANT_SPEED");var ze=fe.get("polyline");de.trailLength=he,this.material.set("trailLength",he),de.resetOffset(),["position","positionPrev","positionNext"].forEach(function(Et){de.attributes[Et].value=ae.attributes[Et].value});var Ke=["dist","distAll","start","offset","color"];Ke.forEach(function(Et){de.attributes[Et].init(de.vertexCount)}),de.indices=ae.indices;var Ve=[],Je=ve.get("trailColor"),tt=ve.get("trailOpacity"),gt=Je!=null,st=tt!=null;this.updateWorldTransform();var St=this.worldTransform.x.len(),At=this.worldTransform.y.len(),vt=this.worldTransform.z.len(),Tt=0,bt=0;ye.each(function(Et){var lt=ye.getItemLayout(Et),Nt=st?tt:ye.getItemVisual(Et,"opacity"),Zt=ye.getItemVisual(Et,"color");Nt==null&&(Nt=1),Ve=we.a.parseColor(gt?Je:Zt,Ve),Ve[3]*=Nt;for(var Ut=ze?ae.getPolylineVertexCount(lt):ae.getCubicCurveVertexCount(lt[0],lt[1],lt[2],lt[3]),Ft=0,Yt=[],dn=[],Dn=Tt;DnTt&&(Ft+=Pe.dist(Yt,dn)),de.attributes.dist.set(Dn,Ft),Pe.copy(dn,Yt);bt=Math.max(bt,Ft);for(var Rn=Math.random()*(Ne?Ft:Se),Dn=Tt;Dn 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(et,Ge,ke){"use strict";var Ze=ke(0),Oe=ke.n(Ze);Oe.a.extendSeriesModel({type:"series.lines3D",dependencies:["globe"],visualColorAccessPath:"lineStyle.color",getInitialData:function(we,Te){var Re=new Oe.a.List(["value"],this);return Re.hasItemOption=!1,Re.initData(we.data,[],function(Ie,be,Pe,je){if(Ie instanceof Array)return NaN;Re.hasItemOption=!0;var ye=Ie.value;if(ye!=null)return ye instanceof Array?ye[je]:ye}),Re},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(et,Ge,ke){"use strict";var Ze=ke(0),Oe=ke.n(Ze),we=ke(227),Te=ke(228),Re=ke(16);Oe.a.registerVisual(Object(Re.a)("polygons3D"))},function(et,Ge,ke){"use strict";var Ze=ke(0),Oe=ke.n(Ze),we=ke(26);function Te(be,Pe){for(var je=[],ye=0;ye0;this._updateSurfaceMesh(this._surfaceMesh,ye,Ne,Ve);var Je=this._surfaceMesh.material;Ve?(Je.define("WIREFRAME_QUAD"),Je.set("wireframeLineWidth",Ke),Je.set("wireframeLineColor",we.a.parseColor(ze.get("lineStyle.color")))):Je.undefine("WIREFRAME_QUAD"),this._initHandler(ye,ae),this._updateAnimation(ye)},_updateAnimation:function(ye){we.a.updateVertexAnimation([["prevPosition","position"],["prevNormal","normal"]],this._prevSurfaceMesh,this._surfaceMesh,ye)},_createSurfaceMesh:function(){var ye=new we.a.Mesh({geometry:new we.a.Geometry({dynamic:!0,sortTriangles:!0}),shadowDepthMaterial:new we.a.Material({shader:new we.a.Shader(we.a.Shader.source("ecgl.sm.depth.vertex"),we.a.Shader.source("ecgl.sm.depth.fragment"))}),culling:!1,renderOrder:10,renderNormal:!0});return ye.geometry.createAttribute("barycentric","float",4),ye.geometry.createAttribute("prevPosition","float",3),ye.geometry.createAttribute("prevNormal","float",3),Oe.a.util.extend(ye.geometry,be.a),ye},_initHandler:function(ye,ie){var ae=ye.getData(),fe=this._surfaceMesh,de=ye.coordinateSystem;function ve(he,pe){for(var Se=1/0,Ne=-1,ze=[],Ke=0;Ke=0){var Se=[];fe.geometry.attributes.position.get(pe,Se);for(var Ne=de.pointToData(Se),ze=1/0,Ke=-1,Ve=[],Je=0;Je65535?Uint32Array:Uint16Array)((Je-1)*(tt-1)*6),bt=function(Jt,xn,Qn){Qn[1]=Jt*tt+xn,Qn[0]=Jt*tt+xn+1,Qn[3]=(Jt+1)*tt+xn+1,Qn[2]=(Jt+1)*tt+xn},Et=!1;if(pe){var lt=[],Nt=[],Zt=0;st?Ne.init(de.vertexCount):Ne.value=null;for(var Ut=[[],[],[]],Ft=[],Yt=[],dn=Pe.create(),Dn=function(Jt,xn,Qn){var rr=xn*3;return Qn[0]=Jt[rr],Qn[1]=Jt[rr+1],Qn[2]=Jt[rr+2],Qn},Rn=new Float32Array(xe.length),Zn=new Float32Array(xe.length/3*4),ln=0;ln ")),ie.value&&(ve+=" : "+Oe.a.format.encodeHTML(ie.value)),ve}else return Re.superApply(this,"formatTooltip",arguments)},_updateCategoriesData:function(){var be=(this.option.categories||[]).map(function(je){return je.value!=null?je:Oe.a.util.extend({value:0},je)}),Pe=new Oe.a.List(["value"],this);Pe.initData(be),this._categoriesData=Pe,this._categoriesModels=Pe.mapArray(function(je){return Pe.getItemModel(je,!0)})},setView:function(be){be.zoom!=null&&(this.option.zoom=be.zoom),be.offset!=null&&(this.option.offset=be.offset)},setNodePosition:function(be){for(var Pe=0;Pe "+Ne)),he++)}var ze,Ke=Oe.a.helper.completeDimensions(["value"],Pe);ze=new Oe.a.List(Ke,ye),ze.initData(Pe);var Ve=new Oe.a.List(["value"],ye);return Ve.initData(xe,ve),ae&&ae(ze,Ve),Ie()({mainData:ze,struct:fe,structAttr:"graph",datas:{node:ze,edge:Ve},datasAttr:{node:"data",edge:"edgeData"}}),fe.update(),fe}},function(et,Ge,ke){var Ze=ke(85),Oe=Ze.__DEV__,we=ke(12),Te=ke(244),Re=Te.enableClassCheck;function Ie(fe){return"_EC_"+fe}var be=function(fe){this._directed=fe||!1,this.nodes=[],this.edges=[],this._nodesMap={},this._edgesMap={},this.data,this.edgeData},Pe=be.prototype;Pe.type="graph",Pe.isDirected=function(){return this._directed},Pe.addNode=function(fe,de){fe=fe||""+de;var ve=this._nodesMap;if(!ve[Ie(fe)]){var xe=new je(fe,de);return xe.hostGraph=this,this.nodes.push(xe),ve[Ie(fe)]=xe,xe}},Pe.getNodeByIndex=function(fe){var de=this.data.getRawIndex(fe);return this.nodes[de]},Pe.getNodeById=function(fe){return this._nodesMap[Ie(fe)]},Pe.addEdge=function(fe,de,ve){var xe=this._nodesMap,he=this._edgesMap;if(typeof fe=="number"&&(fe=this.nodes[fe]),typeof de=="number"&&(de=this.nodes[de]),je.isInstance(fe)||(fe=xe[Ie(fe)]),je.isInstance(de)||(de=xe[Ie(de)]),!(!fe||!de)){var pe=fe.id+"-"+de.id;if(!he[pe]){var Se=new ye(fe,de,ve);return Se.hostGraph=this,this._directed&&(fe.outEdges.push(Se),de.inEdges.push(Se)),fe.edges.push(Se),fe!==de&&de.edges.push(Se),this.edges.push(Se),he[pe]=Se,Se}}},Pe.getEdgeByIndex=function(fe){var de=this.edgeData.getRawIndex(fe);return this.edges[de]},Pe.getEdge=function(fe,de){je.isInstance(fe)&&(fe=fe.id),je.isInstance(de)&&(de=de.id);var ve=this._edgesMap;return this._directed?ve[fe+"-"+de]:ve[fe+"-"+de]||ve[de+"-"+fe]},Pe.eachNode=function(fe,de){for(var ve=this.nodes,xe=ve.length,he=0;he=0&&fe.call(de,ve[he],he)},Pe.eachEdge=function(fe,de){for(var ve=this.edges,xe=ve.length,he=0;he=0&&ve[he].node1.dataIndex>=0&&ve[he].node2.dataIndex>=0&&fe.call(de,ve[he],he)},Pe.breadthFirstTraverse=function(fe,de,ve,xe){if(je.isInstance(de)||(de=this._nodesMap[Ie(de)]),!!de){for(var he=ve==="out"?"outEdges":ve==="in"?"inEdges":"edges",pe=0;pe=0&&Ne.node2.dataIndex>=0});for(var he=0,pe=xe.length;he=0&&this[fe][de].setItemVisual(this.dataIndex,ve,xe)},getVisual:function(ve,xe){return this[fe][de].getItemVisual(this.dataIndex,ve,xe)},setLayout:function(ve,xe){this.dataIndex>=0&&this[fe][de].setItemLayout(this.dataIndex,ve,xe)},getLayout:function(){return this[fe][de].getItemLayout(this.dataIndex)},getGraphicEl:function(){return this[fe][de].getItemGraphicEl(this.dataIndex)},getRawIndex:function(){return this[fe][de].getRawIndex(this.dataIndex)}}};we.mixin(je,ie("hostGraph","data")),we.mixin(ye,ie("hostGraph","edgeData")),be.Node=je,be.Edge=ye,Re(je),Re(ye);var ae=be;et.exports=ae},function(et,Ge){var ke;ke=function(){return this}();try{ke=ke||Function("return this")()||(0,eval)("this")}catch(Ze){typeof window=="object"&&(ke=window)}et.exports=ke},function(et,Ge,ke){var Ze=ke(85),Oe=Ze.__DEV__,we=ke(12),Te=".",Re="___EC__COMPONENT__CONTAINER___";function Ie(ve){var xe={main:"",sub:""};return ve&&(ve=ve.split(Te),xe.main=ve[0]||"",xe.sub=ve[1]||""),xe}function be(ve){we.assert(/^[a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)?$/.test(ve),'componentType "'+ve+'" illegal')}function Pe(ve,xe){ve.$constructor=ve,ve.extend=function(he){var pe=this,Se=function(){he.$constructor?he.$constructor.apply(this,arguments):pe.apply(this,arguments)};return we.extend(Se.prototype,he),Se.extend=this.extend,Se.superCall=ie,Se.superApply=ae,we.inherits(Se,this),Se.superClass=pe,Se}}var je=0;function ye(ve){var xe=["__\0is_clz",je++,Math.random().toFixed(3)].join("_");ve.prototype[xe]=!0,ve.isInstance=function(he){return!!(he&&he[xe])}}function ie(ve,xe){var he=we.slice(arguments,2);return this.superClass.prototype[xe].apply(ve,he)}function ae(ve,xe,he){return this.superClass.prototype[xe].apply(ve,he)}function fe(ve,xe){xe=xe||{};var he={};ve.registerClass=function(Ne,ze){if(ze){if(be(ze),ze=Ie(ze),!ze.sub)he[ze.main]=Ne;else if(ze.sub!==Re){var Ke=pe(ze);Ke[ze.sub]=Ne}}return Ne},ve.getClass=function(Ne,ze,Ke){var Ve=he[Ne];if(Ve&&Ve[Re]&&(Ve=ze?Ve[ze]:null),Ke&&!Ve)throw new Error(ze?"Component "+Ne+"."+(ze||"")+" not exists. Load it first.":Ne+".type should be specified.");return Ve},ve.getClassesByMainType=function(Ne){Ne=Ie(Ne);var ze=[],Ke=he[Ne.main];return Ke&&Ke[Re]?we.each(Ke,function(Ve,Je){Je!==Re&&ze.push(Ve)}):ze.push(Ke),ze},ve.hasClass=function(Ne){return Ne=Ie(Ne),!!he[Ne.main]},ve.getAllClassMainTypes=function(){var Ne=[];return we.each(he,function(ze,Ke){Ne.push(Ke)}),Ne},ve.hasSubTypes=function(Ne){Ne=Ie(Ne);var ze=he[Ne.main];return ze&&ze[Re]},ve.parseClassType=Ie;function pe(Ne){var ze=he[Ne.main];return(!ze||!ze[Re])&&(ze=he[Ne.main]={},ze[Re]=!0),ze}if(xe.registerWhenExtend){var Se=ve.extend;Se&&(ve.extend=function(Ne){var ze=Se.call(this,Ne);return ve.registerClass(ze,Ne.type)})}return ve}function de(ve,xe){}Ge.parseClassType=Ie,Ge.enableClassExtend=Pe,Ge.enableClassCheck=ye,Ge.enableClassManagement=fe,Ge.setReadOnly=de},function(et,Ge,ke){var Ze=ke(12),Oe=Ze.each,we="\0__link_datas",Te="\0__link_mainData";function Re(de){var ve=de.mainData,xe=de.datas;xe||(xe={main:ve},de.datasAttr={main:"data"}),de.datas=de.mainData=null,ie(ve,xe,de),Oe(xe,function(he){Oe(ve.TRANSFERABLE_METHODS,function(pe){he.wrapMethod(pe,Ze.curry(Ie,de))})}),ve.wrapMethod("cloneShallow",Ze.curry(Pe,de)),Oe(ve.CHANGABLE_METHODS,function(he){ve.wrapMethod(he,Ze.curry(be,de))}),Ze.assert(xe[ve.dataType]===ve)}function Ie(de,ve){if(ye(this)){var xe=Ze.extend({},this[we]);xe[this.dataType]=ve,ie(ve,xe,de)}else ae(ve,this.dataType,this[Te],de);return ve}function be(de,ve){return de.struct&&de.struct.update(this),ve}function Pe(de,ve){return Oe(ve[we],function(xe,he){xe!==ve&&ae(xe.cloneShallow(),he,ve,de)}),ve}function je(de){var ve=this[Te];return de==null||ve==null?ve:ve[we][de]}function ye(de){return de[Te]===de}function ie(de,ve,xe){de[we]={},Oe(ve,function(he,pe){ae(he,pe,de,xe)})}function ae(de,ve,xe,he){xe[we][ve]=de,de[Te]=xe,de.dataType=ve,he.struct&&(de[he.structAttr]=he.struct,he.struct[he.datasAttr[ve]]=de),de.getLinkedData=je}var fe=Re;et.exports=fe},function(et,Ge,ke){"use strict";var Ze=ke(0),Oe=ke.n(Ze),we=ke(41),Te=ke.n(we),Re=ke(2),Ie=ke(20),be=ke(86),Pe=ke(3),je=ke(247),ye=ke(249),ie=ke(65),ae=ke.n(ie),fe=ke(1),de=ke.n(fe),ve=ke(251),xe=ke(62),he=ke(252),pe=de.a.vec2;Re.a.Shader.import(he.a);var Se=1;Oe.a.extendChartView({type:"graphGL",__ecgl__:!0,init:function(Ne,ze){this.groupGL=new Re.a.Node,this.viewGL=new Ie.a("orthographic"),this.viewGL.camera.left=this.viewGL.camera.right=0,this.viewGL.add(this.groupGL),this._pointsBuilder=new xe.a(!0,ze),this._forceEdgesMesh=new Re.a.Mesh({material:new Re.a.Material({shader:Re.a.createShader("ecgl.forceAtlas2.edges"),transparent:!0,depthMask:!1,depthTest:!1}),$ignorePicking:!0,geometry:new Re.a.Geometry({attributes:{node:new Re.a.Geometry.Attribute("node","float",2),color:new Re.a.Geometry.Attribute("color","float",4,"COLOR")},dynamic:!0,mainAttribute:"node"}),renderOrder:-1,mode:Re.a.Mesh.LINES}),this._edgesMesh=new Re.a.Mesh({material:new Re.a.Material({shader:Re.a.createShader("ecgl.meshLines2D"),transparent:!0,depthMask:!1,depthTest:!1}),$ignorePicking:!0,geometry:new be.a({useNativeLine:!1,dynamic:!0}),renderOrder:-1,culling:!1}),this._layoutId=0,this._control=new ve.a({zr:ze.getZr(),viewGL:this.viewGL}),this._control.setTarget(this.groupGL),this._control.init(),this._clickHandler=this._clickHandler.bind(this)},render:function(Ne,ze,Ke){this.groupGL.add(this._pointsBuilder.rootNode),this._model=Ne,this._api=Ke,this._initLayout(Ne,ze,Ke),this._pointsBuilder.update(Ne,ze,Ke),this._forceLayoutInstance instanceof je.a||this.groupGL.remove(this._forceEdgesMesh),this._updateCamera(Ne,Ke),this._control.off("update"),this._control.on("update",function(){Ke.dispatchAction({type:"graphGLRoam",seriesId:Ne.id,zoom:this._control.getZoom(),offset:this._control.getOffset()}),this._pointsBuilder.updateView(this.viewGL.camera)},this),this._control.setZoom(Pe.a.firstNotNull(Ne.get("zoom"),1)),this._control.setOffset(Ne.get("offset")||[0,0]);var Ve=this._pointsBuilder.getPointsMesh();if(Ve.off("mousemove",this._mousemoveHandler),Ve.off("mouseout",this._mouseOutHandler,this),Ke.getZr().off("click",this._clickHandler),this._pointsBuilder.highlightOnMouseover=!0,Ne.get("focusNodeAdjacency")){var Je=Ne.get("focusNodeAdjacencyOn");Je==="click"?Ke.getZr().on("click",this._clickHandler):Je==="mouseover"?(Ve.on("mousemove",this._mousemoveHandler,this),Ve.on("mouseout",this._mouseOutHandler,this),this._pointsBuilder.highlightOnMouseover=!1):console.warn("Unkown focusNodeAdjacencyOn value s"+Je)}this._lastMouseOverDataIndex=-1},_clickHandler:function(Ne){if(!this._layouting){var ze=this._pointsBuilder.getPointsMesh().dataIndex;ze>=0?this._api.dispatchAction({type:"graphGLFocusNodeAdjacency",seriesId:this._model.id,dataIndex:ze}):this._api.dispatchAction({type:"graphGLUnfocusNodeAdjacency",seriesId:this._model.id})}},_mousemoveHandler:function(Ne){if(!this._layouting){var ze=this._pointsBuilder.getPointsMesh().dataIndex;ze>=0?ze!==this._lastMouseOverDataIndex&&this._api.dispatchAction({type:"graphGLFocusNodeAdjacency",seriesId:this._model.id,dataIndex:ze}):this._mouseOutHandler(Ne),this._lastMouseOverDataIndex=ze}},_mouseOutHandler:function(Ne){this._layouting||(this._api.dispatchAction({type:"graphGLUnfocusNodeAdjacency",seriesId:this._model.id}),this._lastMouseOverDataIndex=-1)},_updateForceEdgesGeometry:function(Ne,ze){var Ke=this._forceEdgesMesh.geometry,Ve=ze.getEdgeData(),Je=0,tt=this._forceLayoutInstance,gt=Ve.count()*2;Ke.attributes.node.init(gt),Ke.attributes.color.init(gt),Ve.each(function(st){var St=Ne[st];Ke.attributes.node.set(Je,tt.getNodeUV(St.node1)),Ke.attributes.node.set(Je+1,tt.getNodeUV(St.node2));var At=Ve.getItemVisual(St.dataIndex,"color"),vt=Re.a.parseColor(At);vt[3]*=Pe.a.firstNotNull(Ve.getItemVisual(St.dataIndex,"opacity"),1),Ke.attributes.color.set(Je,vt),Ke.attributes.color.set(Je+1,vt),Je+=2}),Ke.dirty()},_updateMeshLinesGeometry:function(){var ze=this._model.getEdgeData(),Ne=this._edgesMesh.geometry,ze=this._model.getEdgeData(),Ke=this._model.getData().getLayout("points");Ne.resetOffset(),Ne.setVertexCount(ze.count()*Ne.getLineVertexCount()),Ne.setTriangleCount(ze.count()*Ne.getLineTriangleCount());var Ve=[],Je=[],tt=["lineStyle","width"];this._originalEdgeColors=new Float32Array(ze.count()*4),this._edgeIndicesMap=new Float32Array(ze.count()),ze.each(function(gt){var st=ze.graph.getEdgeByIndex(gt),St=st.node1.dataIndex*2,At=st.node2.dataIndex*2;Ve[0]=Ke[St],Ve[1]=Ke[St+1],Je[0]=Ke[At],Je[1]=Ke[At+1];var vt=ze.getItemVisual(st.dataIndex,"color"),Tt=Re.a.parseColor(vt);Tt[3]*=Pe.a.firstNotNull(ze.getItemVisual(st.dataIndex,"opacity"),1);var bt=ze.getItemModel(st.dataIndex),Et=Pe.a.firstNotNull(bt.get(tt),1)*this._api.getDevicePixelRatio();Ne.addLine(Ve,Je,Tt,Et);for(var lt=0;lt<4;lt++)this._originalEdgeColors[st.dataIndex*4+lt]=Tt[lt];this._edgeIndicesMap[st.dataIndex]=gt},!1,this),Ne.dirty()},_updateForceNodesGeometry:function(Ne){for(var ze=this._pointsBuilder.getPointsMesh(),Ke=[],Ve=0;Ve=lt&&(At._syncNodePosition(Ne),Et=0),tt.getZr().refresh(),ae()(function(){Nt(Zt)})})}};ae()(function(){At._forceLayoutInstanceToDispose&&(At._forceLayoutInstanceToDispose.dispose(Je.layer.renderer),At._forceLayoutInstanceToDispose=null),Nt(vt)}),this._layouting=!0}}},stopLayout:function(Ne,ze,Ke,Ve){Ve&&Ve.from!=null&&Ve.from!==this.uid||(this._layoutId=0,this.groupGL.remove(this._forceEdgesMesh),this.groupGL.add(this._edgesMesh),this._forceLayoutInstance&&this.viewGL.layer&&(Ve&&Ve.beforeLayout||(this._syncNodePosition(Ne),this._updateAfterLayout(Ne,ze,Ke)),this._api.getZr().refresh(),this._layouting=!1))},_syncNodePosition:function(Ne){var ze=this._forceLayoutInstance.getNodePosition(this.viewGL.layer.renderer);Ne.getData().setLayout("points",ze),Ne.setNodePosition(ze)},_updateAfterLayout:function(Ne,ze,Ke){this._updateMeshLinesGeometry(),this._pointsBuilder.removePositionTexture(),this._pointsBuilder.updateLayout(Ne,ze,Ke),this._pointsBuilder.updateView(this.viewGL.camera),this._pointsBuilder.updateLabels(),this._pointsBuilder.showLabels()},focusNodeAdjacency:function(Ne,ze,Ke,Ve){var Je=this._model.getData();this._downplayAll();var tt=Ve.dataIndex,gt=Je.graph,st=[],St=gt.getNodeByIndex(tt);st.push(St),St.edges.forEach(function(vt){vt.dataIndex<0||(vt.node1!==St&&st.push(vt.node1),vt.node2!==St&&st.push(vt.node2))},this),this._pointsBuilder.fadeOutAll(.05),this._fadeOutEdgesAll(.05),st.forEach(function(vt){this._pointsBuilder.highlight(Je,vt.dataIndex)},this),this._pointsBuilder.updateLabels(st.map(function(vt){return vt.dataIndex}));var At=[];St.edges.forEach(function(vt){vt.dataIndex>=0&&(this._highlightEdge(vt.dataIndex),At.push(vt))},this),this._focusNodes=st,this._focusEdges=At},unfocusNodeAdjacency:function(Ne,ze,Ke,Ve){this._downplayAll(),this._pointsBuilder.fadeInAll(),this._fadeInEdgesAll(),this._pointsBuilder.updateLabels()},_highlightEdge:function(Ne){var ze=this._model.getEdgeData().getItemModel(Ne),Ke=Re.a.parseColor(ze.get("emphasis.lineStyle.color")||ze.get("lineStyle.color")),Ve=Pe.a.firstNotNull(ze.get("emphasis.lineStyle.opacity"),ze.get("lineStyle.opacity"),1);Ke[3]*=Ve,this._edgesMesh.geometry.setItemColor(this._edgeIndicesMap[Ne],Ke)},_downplayAll:function(){this._focusNodes&&this._focusNodes.forEach(function(Ne){this._pointsBuilder.downplay(this._model.getData(),Ne.dataIndex)},this),this._focusEdges&&this._focusEdges.forEach(function(Ne){this._downplayEdge(Ne.dataIndex)},this)},_downplayEdge:function(Ne){var ze=this._getColor(Ne,[]);this._edgesMesh.geometry.setItemColor(this._edgeIndicesMap[Ne],ze)},_setEdgeFade:function(){var Ne=[];return function(ze,Ke){this._getColor(ze,Ne),Ne[3]*=Ke,this._edgesMesh.geometry.setItemColor(this._edgeIndicesMap[ze],Ne)}}(),_getColor:function(Ne,ze){for(var Ke=0;Ke<4;Ke++)ze[Ke]=this._originalEdgeColors[Ne*4+Ke];return ze},_fadeOutEdgesAll:function(Ne){var ze=this._model.getData().graph;ze.eachEdge(function(Ke){this._setEdgeFade(Ke.dataIndex,Ne)},this)},_fadeInEdgesAll:function(){this._fadeOutEdgesAll(1)},_updateCamera:function(Ne,ze){this.viewGL.setViewport(0,0,ze.getWidth(),ze.getHeight(),ze.getDevicePixelRatio());for(var Ke=this.viewGL.camera,Ve=Ne.getData(),Je=Ve.getLayout("points"),tt=pe.create(1/0,1/0),gt=pe.create(-1/0,-1/0),st=[],St=0;StKe.left&&vtKe.top)){var Tt=Math.max(gt[0]-tt[0],10),bt=Tt/ze.getWidth()*ze.getHeight();Tt*=1.4,bt*=1.4,tt[0]-=Tt*.2,Ke.left=tt[0],Ke.top=At-bt/2,Ke.bottom=At+bt/2,Ke.right=Tt+tt[0],Ke.near=0,Ke.far=100}},dispose:function(){var Ne=this.viewGL.layer.renderer;this._forceLayoutInstance&&this._forceLayoutInstance.dispose(Ne),this.groupGL.removeAll(),this._layoutId=-1},remove:function(){this.groupGL.removeAll(),this._control.dispose()}})},function(et,Ge,ke){"use strict";var Ze=ke(0),Oe=ke.n(Ze),we=ke(2),Te=ke(14),Re=ke(10),Ie=ke(248);we.a.Shader.import(Ie.a);var be={repulsionByDegree:!0,linLogMode:!1,strongGravityMode:!1,gravity:1,scaling:1,edgeWeightInfluence:1,jitterTolerence:.1,preventOverlap:!1,dissuadeHubs:!1,gravityCenter:null};function Pe(je){var ye={type:we.a.Texture.FLOAT,minFilter:we.a.Texture.NEAREST,magFilter:we.a.Texture.NEAREST};this._positionSourceTex=new we.a.Texture2D(ye),this._positionSourceTex.flipY=!1,this._positionTex=new we.a.Texture2D(ye),this._positionPrevTex=new we.a.Texture2D(ye),this._forceTex=new we.a.Texture2D(ye),this._forcePrevTex=new we.a.Texture2D(ye),this._weightedSumTex=new we.a.Texture2D(ye),this._weightedSumTex.width=this._weightedSumTex.height=1,this._globalSpeedTex=new we.a.Texture2D(ye),this._globalSpeedPrevTex=new we.a.Texture2D(ye),this._globalSpeedTex.width=this._globalSpeedTex.height=1,this._globalSpeedPrevTex.width=this._globalSpeedPrevTex.height=1,this._nodeRepulsionPass=new Te.a({fragment:we.a.Shader.source("ecgl.forceAtlas2.updateNodeRepulsion")}),this._positionPass=new Te.a({fragment:we.a.Shader.source("ecgl.forceAtlas2.updatePosition")}),this._globalSpeedPass=new Te.a({fragment:we.a.Shader.source("ecgl.forceAtlas2.calcGlobalSpeed")}),this._copyPass=new Te.a({fragment:we.a.Shader.source("clay.compositor.output")});var ie=function(ae){ae.blendEquation(ae.FUNC_ADD),ae.blendFunc(ae.ONE,ae.ONE)};this._edgeForceMesh=new we.a.Mesh({geometry:new we.a.Geometry({attributes:{node1:new we.a.Geometry.Attribute("node1","float",2),node2:new we.a.Geometry.Attribute("node2","float",2),weight:new we.a.Geometry.Attribute("weight","float",1)},dynamic:!0,mainAttribute:"node1"}),material:new we.a.Material({transparent:!0,shader:we.a.createShader("ecgl.forceAtlas2.updateEdgeAttraction"),blend:ie,depthMask:!1,depthText:!1}),mode:we.a.Mesh.POINTS}),this._weightedSumMesh=new we.a.Mesh({geometry:new we.a.Geometry({attributes:{node:new we.a.Geometry.Attribute("node","float",2)},dynamic:!0,mainAttribute:"node"}),material:new we.a.Material({transparent:!0,shader:we.a.createShader("ecgl.forceAtlas2.calcWeightedSum"),blend:ie,depthMask:!1,depthText:!1}),mode:we.a.Mesh.POINTS}),this._framebuffer=new Re.a({depthBuffer:!1}),this._dummyCamera=new we.a.OrthographicCamera({left:-1,right:1,top:1,bottom:-1,near:0,far:100}),this._globalSpeed=0}Pe.prototype.updateOption=function(je){for(var ye in be)this[ye]=be[ye];var ie=this._nodes.length;if(ie>5e4?this.jitterTolerence=10:ie>5e3?this.jitterTolerence=1:this.jitterTolerence=.1,ie>100?this.scaling=2:this.scaling=10,je)for(var ye in be)je[ye]!=null&&(this[ye]=je[ye]);if(this.repulsionByDegree)for(var ae=this._positionSourceTex.pixels,fe=0;feje},Pe.prototype._swapTexture=function(){var je=this._positionPrevTex;this._positionPrevTex=this._positionTex,this._positionTex=je;var je=this._forcePrevTex;this._forcePrevTex=this._forceTex,this._forceTex=je;var je=this._globalSpeedPrevTex;this._globalSpeedPrevTex=this._globalSpeedTex,this._globalSpeedTex=je},Pe.prototype._initFromSource=function(je){this._framebuffer.attach(this._positionPrevTex),this._framebuffer.bind(je),this._copyPass.setUniform("texture",this._positionSourceTex),this._copyPass.render(je),je.gl.clearColor(0,0,0,0),this._framebuffer.attach(this._forcePrevTex),je.gl.clear(je.gl.COLOR_BUFFER_BIT),this._framebuffer.attach(this._globalSpeedPrevTex),je.gl.clear(je.gl.COLOR_BUFFER_BIT),this._framebuffer.unbind(je)},Pe.prototype._resize=function(je,ye){["_positionSourceTex","_positionTex","_positionPrevTex","_forceTex","_forcePrevTex"].forEach(function(ie){this[ie].width=je,this[ie].height=ye,this[ie].dirty()},this)},Pe.prototype.dispose=function(je){this._framebuffer.dispose(je),this._copyPass.dispose(je),this._nodeRepulsionPass.dispose(je),this._positionPass.dispose(je),this._globalSpeedPass.dispose(je),this._edgeForceMesh.geometry.dispose(je),this._weightedSumMesh.geometry.dispose(je),this._positionSourceTex.dispose(je),this._positionTex.dispose(je),this._positionPrevTex.dispose(je),this._forceTex.dispose(je),this._forcePrevTex.dispose(je),this._weightedSumTex.dispose(je),this._globalSpeedTex.dispose(je),this._globalSpeedPrevTex.dispose(je)},Oe.a.ForceAtlas2GPU=Pe,Ge.a=Pe},function(et,Ge,ke){"use strict";Ge.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(et,Ge,ke){"use strict";var Ze=ke(5),Oe=ke(6),we=ke(250),Te=we.a.toString();Te=Te.slice(Te.indexOf("{")+1,Te.lastIndexOf("}"));var Re={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},Ie=function(be){for(var Pe in Re)this[Pe]=Re[Pe];if(be)for(var Pe in be)this[Pe]=be[Pe];this._nodes=[],this._edges=[],this._disposed=!1,this._positionTex=new Ze.a({type:Oe.a.FLOAT,flipY:!1,minFilter:Oe.a.NEAREST,magFilter:Oe.a.NEAREST})};Ie.prototype.initData=function(be,Pe){var je=new Blob([Te]),ye=window.URL.createObjectURL(je);this._worker=new Worker(ye),this._worker.onmessage=this._$onupdate.bind(this),this._nodes=be,this._edges=Pe,this._frame=0;for(var ie=be.length,ae=Pe.length,fe=new Float32Array(ie*2),de=new Float32Array(ie),ve=new Float32Array(ie),xe=new Float32Array(ae*2),he=new Float32Array(ae),pe=0;pe5e4?Pe.jitterTolerence=10:ae>5e3?Pe.jitterTolerence=1:Pe.jitterTolerence=.1,ae>100?Pe.scaling=2:Pe.scaling=10,ae>1e3?Pe.barnesHutOptimize=!0:Pe.barnesHutOptimize=!1,be)for(var je in Re)be[je]!=null&&(Pe[je]=be[je]);if(!Pe.gravityCenter){for(var fe=[1/0,1/0],de=[-1/0,-1/0],ve=0;vebe},Ie.prototype.getNodePosition=function(be,Pe){if(Pe||(Pe=new Float32Array(this._nodes.length*2)),this._positionArr)for(var je=0;je0&&(de=1/Math.sqrt(de),ye[0]=ie[0]*de,ye[1]=ie[1]*de),ye},negate:function(ye,ie){return ye[0]=-ie[0],ye[1]=-ie[1],ye},copy:function(ye,ie){return ye[0]=ie[0],ye[1]=ie[1],ye},set:function(ye,ie,ae){return ye[0]=ie,ye[1]=ae,ye}};function we(){this.subRegions=[],this.nSubRegions=0,this.node=null,this.mass=0,this.centerOfMass=null,this.bbox=new Float32Array(4),this.size=0}var Te=we.prototype;Te.beforeUpdate=function(){for(var ye=0;ye=ye&&this.bbox[1]<=ie&&this.bbox[3]>=ie},Te.setBBox=function(ye,ie,ae,fe){this.bbox[0]=ye,this.bbox[1]=ie,this.bbox[2]=ae,this.bbox[3]=fe,this.size=(ae-ye+fe-ie)/2},Te._newSubRegion=function(){var ye=this.subRegions[this.nSubRegions];return ye||(ye=new we,this.subRegions[this.nSubRegions]=ye),this.nSubRegions++,ye},Te._addNodeToSubRegion=function(ye){var ie=this.findSubRegion(ye.position[0],ye.position[1]),ae=this.bbox;if(!ie){var fe=(ae[0]+ae[2])/2,de=(ae[1]+ae[3])/2,ve=(ae[2]-ae[0])/2,xe=(ae[3]-ae[1])/2,he=ye.position[0]>=fe?1:0,pe=ye.position[1]>=de?1:0,ie=this._newSubRegion();ie.setBBox(he*ve+ae[0],pe*xe+ae[1],(he+1)*ve+ae[0],(pe+1)*xe+ae[1])}ie.addNode(ye)},Te._updateCenterOfMass=function(ye){this.centerOfMass==null&&(this.centerOfMass=new Float32Array(2));var ie=this.centerOfMass[0]*this.mass,ae=this.centerOfMass[1]*this.mass;ie+=ye.position[0]*ye.mass,ae+=ye.position[1]*ye.mass,this.mass+=ye.mass,this.centerOfMass[0]=ie/this.mass,this.centerOfMass[1]=ae/this.mass};function Re(){this.position=new Float32Array(2),this.force=Oe.create(),this.forcePrev=Oe.create(),this.mass=1,this.inDegree=0,this.outDegree=0}function Ie(ye,ie){this.source=ye,this.target=ie,this.weight=1}function be(){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 we,this.rootRegion.centerOfMass=Oe.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 Pe=be.prototype;Pe.initNodes=function(ye,ie,ae){var fe=ie.length;this.nodes.length=0;for(var de=typeof ae!="undefined",ve=0;ve0&&(this.strongGravityMode?this.applyNodeStrongGravity(fe):this.applyNodeGravity(fe))}for(var ie=0;ie0&&(ze=Math.min(ze/this._globalSpeed,1.5)*this._globalSpeed),this._globalSpeed=ze;for(var ie=0;ie0&&(Ke=Math.min(Ve*Ke,10)/Ve,Oe.scaleAndAdd(ae.position,ae.position,ae.force,Ke))}},Pe.applyRegionToNodeRepulsion=function(){var ye=Oe.create();return function(ae,fe){if(ae.node)this.applyNodeToNodeRepulsion(ae.node,fe,!0);else{Oe.sub(ye,fe.position,ae.centerOfMass);var de=ye[0]*ye[0]+ye[1]*ye[1];if(de>this.barnesHutTheta*ae.size*ae.size){var ve=this.scaling*fe.mass*ae.mass/de;Oe.scaleAndAdd(fe.force,fe.force,ye,ve)}else for(var xe=0;xe0)xe=this.scaling*ae.mass*fe.mass/(he*he);else if(he<0)xe=this.scaling*100*ae.mass*fe.mass;else return}else xe=this.scaling*ae.mass*fe.mass/ve;Oe.scaleAndAdd(ae.force,ae.force,ye,xe),Oe.scaleAndAdd(fe.force,fe.force,ye,-xe)}}}}(),Pe.applyEdgeAttraction=function(){var ye=Oe.create();return function(ae){var fe=ae.source,de=ae.target;Oe.sub(ye,fe.position,de.position);var ve=Oe.len(ye),xe;this.edgeWeightInfluence===0?xe=1:this.edgeWeightInfluence===1?xe=ae.weight:xe=Math.pow(ae.weight,this.edgeWeightInfluence);var he;this.preventOverlap&&(ve=ve-fe.size-de.size,ve<=0)||(this.linLogMode?he=-xe*Math.log(ve+1)/(ve+1):he=-xe,Oe.scaleAndAdd(fe.force,fe.force,ye,he),Oe.scaleAndAdd(de.force,de.force,ye,-he))}}(),Pe.applyNodeGravity=function(){var ye=Oe.create();return function(ie){Oe.sub(ye,this.gravityCenter,ie.position);var ae=Oe.len(ye);Oe.scaleAndAdd(ie.force,ie.force,ye,this.gravity*ie.mass/(ae+1))}}(),Pe.applyNodeStrongGravity=function(){var ye=Oe.create();return function(ie){Oe.sub(ye,this.gravityCenter,ie.position),Oe.scaleAndAdd(ie.force,ie.force,ye,this.gravity*ie.mass)}}(),Pe.updateBBox=function(){for(var ye=1/0,ie=1/0,ae=-1/0,fe=-1/0,de=0;de0?1.1:.9,je=Math.max(Math.min(this._zoom*Pe,this.maxZoom),this.minZoom);Pe=je/this._zoom;var ye=this._convertPos(Ie,be),ie=(ye.x-this._dx)*(Pe-1),ae=(ye.y-this._dy)*(Pe-1);this._dx-=ie,this._dy-=ae,this._zoom=je,this._needsUpdate=!0}}},dispose:function(){var Te=this.zr;Te.off("mousedown",this._mouseDownHandler),Te.off("mousemove",this._mouseMoveHandler),Te.off("mouseup",this._mouseUpHandler),Te.off("mousewheel",this._mouseWheelHandler),Te.off("globalout",this._mouseUpHandler),Te.animation.off("frame",this._update)}});Ge.a=we},function(et,Ge,ke){"use strict";Ge.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(et,Ge,ke){"use strict";var Ze=ke(0),Oe=ke.n(Ze),we=ke(254),Te=ke(258)},function(et,Ge,ke){"use strict";var Ze=ke(0),Oe=ke.n(Ze),we=ke(2),Te=ke(3),Re=ke(20),Ie=ke(255);Oe.a.extendChartView({type:"flowGL",__ecgl__:!0,init:function(be,Pe){this.viewGL=new Re.a("orthographic"),this.groupGL=new we.a.Node,this.viewGL.add(this.groupGL),this._particleSurface=new Ie.a;var je=new we.a.Mesh({geometry:new we.a.PlaneGeometry,material:new we.a.Material({shader:new we.a.Shader({vertex:we.a.Shader.source("ecgl.color.vertex"),fragment:we.a.Shader.source("ecgl.color.fragment")}),transparent:!0})});je.material.enableTexture("diffuseMap"),this.groupGL.add(je),this._planeMesh=je},render:function(be,Pe,je){var ye=this._particleSurface;ye.setParticleType(be.get("particleType")),ye.setSupersampling(be.get("supersampling")),this._updateData(be,je),this._updateCamera(je.getWidth(),je.getHeight(),je.getDevicePixelRatio());var ie=Te.a.firstNotNull(be.get("particleDensity"),128);ye.setParticleDensity(ie,ie);var ae=this._planeMesh,fe=+new Date,de=this,ve=!0;ae.__percent=0,ae.stopAnimation(),ae.animate("",{loop:!0}).when(1e5,{__percent:1}).during(function(){var pe=+new Date,Se=Math.min(pe-fe,20);fe=fe+Se,de._renderer&&(ye.update(de._renderer,je,Se/1e3,ve),ae.material.set("diffuseMap",ye.getSurfaceTexture())),ve=!1}).start();var xe=be.getModel("itemStyle"),he=we.a.parseColor(xe.get("color"));he[3]*=Te.a.firstNotNull(xe.get("opacity"),1),ae.material.set("color",he),ye.setColorTextureImage(be.get("colorTexture"),je),ye.setParticleSize(be.get("particleSize")),ye.particleSpeedScaling=be.get("particleSpeed"),ye.motionBlurFactor=1-Math.pow(.1,be.get("particleTrail"))},updateTransform:function(be,Pe,je){this._updateData(be,je)},afterRender:function(be,Pe,je,ye){var ie=ye.renderer;this._renderer=ie},_updateData:function(be,Pe){var je=be.coordinateSystem,ye=je.dimensions.map(function(tt){return be.coordDimToDataDim(tt)[0]}),ie=be.getData(),ae=ie.getDataExtent(ye[0]),fe=ie.getDataExtent(ye[1]),de=be.get("gridWidth"),ve=be.get("gridHeight");if(de==null||de==="auto"){var xe=(ae[1]-ae[0])/(fe[1]-fe[0]);de=Math.round(Math.sqrt(xe*ie.count()))}(ve==null||ve==="auto")&&(ve=Math.ceil(ie.count()/de));var he=this._particleSurface.vectorFieldTexture,pe=he.pixels;if(!pe||pe.length!==ve*de*4)pe=he.pixels=new Float32Array(de*ve*4);else for(var Se=0;Se=359;de&&(ie[0]>0&&(ie[0]=0),ae[0]0?ve[ve.length-1]:this._lastFrameTexture},setRegion:function(ve){this._particlePass.setUniform("region",ve)},resize:function(ve,xe){this._lastFrameTexture.width=ve*this._supersampling,this._lastFrameTexture.height=xe*this._supersampling,this._thisFrameTexture.width=ve*this._supersampling,this._thisFrameTexture.height=xe*this._supersampling,this._width=ve,this._height=xe},setParticleSize:function(ve){var xe=this._getParticleMesh();if(ve<=2){xe.material.disableTexture("spriteTexture"),xe.material.transparent=!1;return}this._spriteTexture||(this._spriteTexture=new Ie.a),(!this._spriteTexture.image||this._spriteTexture.image.width!==ve)&&(this._spriteTexture.image=fe(ve),this._spriteTexture.dirty()),xe.material.transparent=!0,xe.material.enableTexture("spriteTexture"),xe.material.set("spriteTexture",this._spriteTexture),this._particleSize=ve},setGradientTexture:function(ve){var xe=this._getParticleMesh().material;xe[ve?"enableTexture":"disableTexture"]("gradientTexture"),xe.setUniform("gradientTexture",ve)},setColorTextureImage:function(ve,xe){var he=this._getParticleMesh().material;he.setTextureImage("colorTexture",ve,xe,{flipY:!0})},setParticleType:function(ve){this._particleType=ve},clearFrame:function(ve){var xe=this._frameBuffer;xe.attach(this._lastFrameTexture),xe.bind(ve),ve.gl.clear(ve.gl.DEPTH_BUFFER_BIT|ve.gl.COLOR_BUFFER_BIT),xe.unbind(ve)},setSupersampling:function(ve){this._supersampling=ve,this.resize(this._width,this._height)},_updateDownsampleTextures:function(ve,xe){for(var he=this._downsampleTextures,pe=Math.max(Math.floor(Math.log(this._supersampling/xe.getDevicePixelRatio())/Math.log(2)),0),Se=2,Ne=this._width*this._supersampling,ze=this._height*this._supersampling,Ke=0;Ke65535?new Uint32Array(Pe*3):new Uint16Array(Pe*3))},addLine:function(Re){var Ie=this._vertexOffset;this.attributes.position.set(Ie,[Re[0],Re[1],1]),this.attributes.position.set(Ie+1,[Re[0],Re[1],-1]),this.attributes.position.set(Ie+2,[Re[0],Re[1],2]),this.attributes.position.set(Ie+3,[Re[0],Re[1],-2]),this.setTriangleIndices(this._faceOffset++,[Ie,Ie+1,Ie+2]),this.setTriangleIndices(this._faceOffset++,[Ie+1,Ie+2,Ie+3]),this._vertexOffset+=4}});Ge.a=Te},function(et,Ge,ke){"use strict";Ge.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(et,Ge,ke){"use strict";var Ze=ke(0),Oe=ke.n(Ze);Oe.a.extendSeriesModel({type:"series.flowGL",dependencies:["geo","grid","bmap"],visualColorAccessPath:"itemStyle.color",getInitialData:function(we,Te){var Re=Oe.a.getCoordinateSystemDimensions(this.get("coordinateSystem"))||["x","y"];if(Re.length>2)throw new Error("flowGL can only be used on 2d coordinate systems.");Re.push("vx","vy");var Ie=Oe.a.helper.completeDimensions(Re,this.getSource(),{encodeDef:this.get("encode"),dimsDef:this.get("dimensions")}),be=new Oe.a.List(Ie,this);return be.initData(this.getSource()),be},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(et,Ge,ke){"use strict";var Ze=ke(0),Oe=ke.n(Ze),we=ke(260),Te=ke(261),Re=ke(16);Oe.a.registerVisual(Object(Re.a)("linesGL"))},function(et,Ge,ke){"use strict";var Ze=ke(0),Oe=ke.n(Ze),we=ke(12),Te=ke.n(we),Re=Oe.a.extendSeriesModel({type:"series.linesGL",dependencies:["grid","geo"],visualColorAccessPath:"lineStyle.color",streamEnabled:!0,init:function(Ie){var be=this._processFlatCoordsArray(Ie.data);this._flatCoords=be.flatCoords,this._flatCoordsOffset=be.flatCoordsOffset,be.flatCoords&&(Ie.data=new Float32Array(be.count)),Re.superApply(this,"init",arguments)},mergeOption:function(Ie){var be=this._processFlatCoordsArray(Ie.data);this._flatCoords=be.flatCoords,this._flatCoordsOffset=be.flatCoordsOffset,be.flatCoords&&(Ie.data=new Float32Array(be.count)),Re.superApply(this,"mergeOption",arguments)},appendData:function(Ie){var be=this._processFlatCoordsArray(Ie.data);be.flatCoords&&(this._flatCoords?(this._flatCoords=Object(we.concatArray)(this._flatCoords,be.flatCoords),this._flatCoordsOffset=Object(we.concatArray)(this._flatCoordsOffset,be.flatCoordsOffset)):(this._flatCoords=be.flatCoords,this._flatCoordsOffset=be.flatCoordsOffset),Ie.data=new Float32Array(be.count)),this.getRawData().appendData(Ie.data)},_getCoordsFromItemModel:function(Ie){var be=this.getData().getItemModel(Ie),Pe=be.option instanceof Array?be.option:be.getShallow("coords");if(!(Pe instanceof Array&&Pe.length>0&&Pe[0]instanceof Array))throw new Error("Invalid coords "+JSON.stringify(Pe)+". Lines must have 2d coords array in data item.");return Pe},getLineCoordsCount:function(Ie){return this._flatCoordsOffset?this._flatCoordsOffset[Ie*2+1]:this._getCoordsFromItemModel(Ie).length},getLineCoords:function(Ie,be){if(this._flatCoordsOffset){for(var Pe=this._flatCoordsOffset[Ie*2],je=this._flatCoordsOffset[Ie*2+1],ye=0;yePe)throw new Error("Invalid data format.")}}return{flatCoordsOffset:new Uint32Array(je.buffer,0,ae),flatCoords:ye,count:fe}}return{flatCoordsOffset:null,flatCoords:null,count:Ie.length}},getInitialData:function(Ie,be){var Pe=new Oe.a.List(["value"],this);return Pe.hasItemOption=!1,Pe.initData(Ie.data,[],function(je,ye,ie,ae){if(je instanceof Array)return NaN;Pe.hasItemOption=!0;var fe=je.value;if(fe!=null)return fe instanceof Array?fe[ae]:fe}),Pe},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(et,Ge,ke){"use strict";var Ze=ke(0),Oe=ke.n(Ze),we=ke(2),Te=ke(20),Re=ke(86),Ie=ke(84),be=ke(3);Oe.a.extendChartView({type:"linesGL",__ecgl__:!0,init:function(Pe,je){this.groupGL=new we.a.Node,this.viewGL=new Te.a("orthographic"),this.viewGL.add(this.groupGL),this._glViewHelper=new Ie.a(this.viewGL),this._nativeLinesShader=we.a.createShader("ecgl.lines3D"),this._meshLinesShader=we.a.createShader("ecgl.meshLines3D"),this._linesMeshes=[],this._currentStep=0},render:function(Pe,je,ye){this.groupGL.removeAll(),this._glViewHelper.reset(Pe,ye);var ie=this._linesMeshes[0];ie||(ie=this._linesMeshes[0]=this._createLinesMesh(Pe)),this._linesMeshes.length=1,this.groupGL.add(ie),this._updateLinesMesh(Pe,ie,0,Pe.getData().count()),this.viewGL.setPostEffect(Pe.getModel("postEffect"),ye)},incrementalPrepareRender:function(Pe,je,ye){this.groupGL.removeAll(),this._glViewHelper.reset(Pe,ye),this._currentStep=0,this.viewGL.setPostEffect(Pe.getModel("postEffect"),ye)},incrementalRender:function(Pe,je,ye,ie){var ae=this._linesMeshes[this._currentStep];ae||(ae=this._createLinesMesh(je),this._linesMeshes[this._currentStep]=ae),this._updateLinesMesh(je,ae,Pe.start,Pe.end),this.groupGL.add(ae),ie.getZr().refresh(),this._currentStep++},updateTransform:function(Pe,je,ye){Pe.coordinateSystem.getRoamTransform&&this._glViewHelper.updateTransform(Pe,ye)},_createLinesMesh:function(Pe){var je=new we.a.Mesh({$ignorePicking:!0,material:new we.a.Material({shader:we.a.createShader("ecgl.lines3D"),transparent:!0,depthMask:!1,depthTest:!1}),geometry:new Re.a({segmentScale:10,useNativeLine:!0,dynamic:!1}),mode:we.a.Mesh.LINES,culling:!1});return je},_updateLinesMesh:function(Pe,je,ye,ie){var ae=Pe.getData();je.material.blend=Pe.get("blendMode")==="lighter"?we.a.additiveBlend:null;var fe=Pe.get("lineStyle.curveness")||0,de=Pe.get("polyline"),ve=je.geometry,xe=Pe.coordinateSystem,he=be.a.firstNotNull(Pe.get("lineStyle.width"),1);he>1?(je.material.shader!==this._meshLinesShader&&je.material.attachShader(this._meshLinesShader),je.mode=we.a.Mesh.TRIANGLES):(je.material.shader!==this._nativeLinesShader&&je.material.attachShader(this._nativeLinesShader),je.mode=we.a.Mesh.LINES),ye=ye||0,ie=ie||ae.count(),ve.resetOffset();var pe=0,Se=0,Ne=[],ze=[],Ke=[],Ve=[],Je=[],tt=.3,gt=.7;function st(){ze[0]=Ne[0]*gt+Ve[0]*tt-(Ne[1]-Ve[1])*fe,ze[1]=Ne[1]*gt+Ve[1]*tt-(Ve[0]-Ne[0])*fe,Ke[0]=Ne[0]*tt+Ve[0]*gt-(Ne[1]-Ve[1])*fe,Ke[1]=Ne[1]*tt+Ve[1]*gt-(Ve[0]-Ne[0])*fe}if(de||fe!==0)for(var St=ye;St0&&(ze=he[0]),ze instanceof Error)throw ze;var Ke=new Error("Unhandled error."+(ze?" ("+ze.message+")":""));throw Ke.context=ze,Ke}var Ve=Ne[xe];if(Ve===void 0)return!1;if(typeof Ve=="function")Be(Ve,this,he);else for(var Je=Ve.length,tt=je(Ve,Je),pe=0;pe0&&ze.length>Se&&!ze.warned){ze.warned=!0;var Ke=new Error("Possible EventEmitter memory leak detected. "+ze.length+" "+String(xe)+" listeners added. Use emitter.setMaxListeners() to increase limit");Ke.name="MaxListenersExceededWarning",Ke.emitter=ve,Ke.type=xe,Ke.count=ze.length,et(Ke)}return ve}ke.prototype.addListener=function(xe,he){return Te(this,xe,he,!1)},ke.prototype.on=ke.prototype.addListener,ke.prototype.prependListener=function(xe,he){return Te(this,xe,he,!0)};function Re(){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 Ie(ve,xe,he){var pe={fired:!1,wrapFn:void 0,target:ve,type:xe,listener:he},Se=Re.bind(pe);return Se.listener=he,pe.wrapFn=Se,Se}ke.prototype.once=function(xe,he){return Oe(he),this.on(xe,Ie(this,xe,he)),this},ke.prototype.prependOnceListener=function(xe,he){return Oe(he),this.prependListener(xe,Ie(this,xe,he)),this},ke.prototype.removeListener=function(xe,he){var pe,Se,Ne,ze,Ke;if(Oe(he),Se=this._events,Se===void 0)return this;if(pe=Se[xe],pe===void 0)return this;if(pe===he||pe.listener===he)--this._eventsCount===0?this._events=Object.create(null):(delete Se[xe],Se.removeListener&&this.emit("removeListener",xe,pe.listener||he));else if(typeof pe!="function"){for(Ne=-1,ze=pe.length-1;ze>=0;ze--)if(pe[ze]===he||pe[ze].listener===he){Ke=pe[ze].listener,Ne=ze;break}if(Ne<0)return this;Ne===0?pe.shift():ye(pe,Ne),pe.length===1&&(Se[xe]=pe[0]),Se.removeListener!==void 0&&this.emit("removeListener",xe,Ke||he)}return this},ke.prototype.off=ke.prototype.removeListener,ke.prototype.removeAllListeners=function(xe){var he,pe,Se;if(pe=this._events,pe===void 0)return this;if(pe.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):pe[xe]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete pe[xe]),this;if(arguments.length===0){var Ne=Object.keys(pe),ze;for(Se=0;Se=0;Se--)this.removeListener(xe,he[Se]);return this};function be(ve,xe,he){var pe=ve._events;if(pe===void 0)return[];var Se=pe[xe];return Se===void 0?[]:typeof Se=="function"?he?[Se.listener||Se]:[Se]:he?ie(Se):je(Se,Se.length)}ke.prototype.listeners=function(xe){return be(this,xe,!0)},ke.prototype.rawListeners=function(xe){return be(this,xe,!1)},ke.listenerCount=function(ve,xe){return typeof ve.listenerCount=="function"?ve.listenerCount(xe):Pe.call(ve,xe)},ke.prototype.listenerCount=Pe;function Pe(ve){var xe=this._events;if(xe!==void 0){var he=xe[ve];if(typeof he=="function")return 1;if(he!==void 0)return he.length}return 0}ke.prototype.eventNames=function(){return this._eventsCount>0?He(this._events):[]};function je(ve,xe){for(var he=new Array(xe),pe=0;peee&&(ee=Math.max(0,se+ee)),(ne==null||ne>se)&&(ne=se),ne=Number(ne),0>ne&&(ne=Math.max(0,se+ne)),ee=Number(ee||0);ee=a.length?a.push(ee):a.splice(y,0,ee):tn("Cannot insert an object into an HTMLCollection or NodeList: "+ee+" at "+y)}function lr(a,y){Array.isArray(a)?y>=a.length?a.pop():a.splice(y,1):tn("Cannot remove an object from an HTMLCollection or NodeList at "+y)}function gr(){var a=$i.pop();return a===void 0?[]:a}function Tr(a){a.length=0,$i.push(a)}function ur(a){if(typeof a=="function"){if(a.className)return a.className;if(a.name)return a.name;var y=a.toString();if(y=y.substring(9,y.indexOf("(")).trim(),y!=="")return a._className=y}else if(Bn(a)&&a.constructor)return ur(a.constructor);return typeof a}function Br(a){var y=a;return Bn(a)&&(a.text?y=a.text:a.name?y=a.name:a.key!==void 0?y=a.key:a.id!==void 0?y=a.id:a.constructor===Object&&(a.Text?y=a.Text:a.Name?y=a.Name:a.Key!==void 0?y=a.Key:a.Id!==void 0?y=a.Id:a.ID!==void 0&&(y=a.ID))),y===void 0?"undefined":y===null?"null":y.toString()}function jr(a,y){if(a.hasOwnProperty(y))return!0;for(a=Object.getPrototypeOf(a);a&&a!==Function;){if(a.hasOwnProperty(y))return!0;var ee=a.CA;if(ee&&ee[y])return!0;a=Object.getPrototypeOf(a)}return!1}function fr(a,y,ee){Object.defineProperty(Ai.prototype,a,{get:y,set:ee})}function qn(a){for(var y=[],ee=0;256>ee;ee++)y["0123456789abcdef".charAt(ee>>4)+"0123456789abcdef".charAt(ee&15)]=String.fromCharCode(ee);a.length%2&&(a="0"+a),ee=[];for(var ne=0,se=0;seee;ee++)y[ee]=ee;for(ee=ne=0;256>ee;ee++)ne=(ne+y[ee]+119)%256,se=y[ee],y[ee]=y[ne],y[ne]=se;ne=ee=0;for(var ue="",me=0;me-1||ue.indexOf("\xA9 1998-2021 Northwoods Software")>-1||ue.indexOf("Not for distribution or production use")>-1||ue.indexOf("gojs.net")>-1?"":ue}var fi=wt.navigator!==void 0&&0this.key)return!1;a=a.s;var y=a.length,ee=++this.Za,ne=this.qf;if(ne!==null)for(;eethis.key)return!1;var y=--this.Za;return 0<=y?(this.key=y,this.value=a.s[y],!0):(this.de(),!1)},Fo.prototype.Ad=function(){return this.next()},Fo.prototype.first=function(){var a=this.Bb;this.qa=a.Ja;var y=a.s;return this.Za=a=y.length-1,0<=a?(y=y[a],this.key=a,this.value=y):null},Fo.prototype.any=function(a){var y=this.Bb;y.Hg=null,y=y.s;var ee=y.length;for(this.Za=ee,--ee;0<=ee;ee--)if(a(y[ee]))return!0;return!1},Fo.prototype.all=function(a){var y=this.Bb;y.Hg=null,y=y.s;var ee=y.length;for(this.Za=ee,--ee;0<=ee;ee--)if(!a(y[ee]))return!1;return!0},Fo.prototype.each=function(a){var y=this.Bb;y.Hg=null,y=y.s;var ee=y.length;for(this.Za=ee,--ee;0<=ee;ee--)a(y[ee]);return this},Fo.prototype.map=function(a){var y=this.Bb;y.Hg=null;var ee=[];y=y.s;var ne=y.length;for(this.Za=ne,--ne;0<=ne;ne--)ee.push(a(y[ne]));return a=new Zr,a.s=ee,a.xb(),a.iterator},Fo.prototype.filter=function(a){var y=this.Bb;y.Hg=null;var ee=[];y=y.s;var ne=y.length;for(this.Za=ne,--ne;0<=ne;ne--){var se=y[ne];a(se)&&ee.push(se)}return a=new Zr,a.s=ee,a.xb(),a.iterator},Fo.prototype.de=function(){this.key=-1,this.value=null,this.qa=-1,this.Bb.Hg=this},Fo.prototype.toString=function(){return"ListIteratorBackwards("+this.Za+"/"+this.Bb.count+")"},De.Object.defineProperties(Fo.prototype,{iterator:{get:function(){return this}},count:{get:function(){return this.Bb.s.length}}}),Fo.prototype.first=Fo.prototype.first,Fo.prototype.hasNext=Fo.prototype.Ad,Fo.prototype.next=Fo.prototype.next,Fo.prototype.reset=Fo.prototype.reset,Fo.className="ListIteratorBackwards";function Zr(a){Ma(this),this._isFrozen=!1,this.s=[],this.Ja=0,this.Hg=this.Sa=null,typeof a=="string"&&tn("Error: Since 2.0 List/Map/Set constructors no longer take an argument that enforces type."),a!==void 0&&this.addAll(a)}Rt=Zr.prototype,Rt.xb=function(){var a=this.Ja;a++,999999999a||a>=y.length)&&tr(a,"0 <= i < length",Zr,"elt:i"),y[a]},Rt.get=function(a){return this.M(a)},Rt.cd=function(a,y){var ee=this.s;(0>a||a>=ee.length)&&tr(a,"0 <= i < length",Zr,"setElt:i"),this._isFrozen&&Vn(this,a),ee[a]=y},Rt.set=function(a,y){this.cd(a,y)},Rt.first=function(){var a=this.s;return a.length===0?null:a[0]},Rt.jc=function(){var a=this.s,y=a.length;return 0a&&tr(a,">= 0",Zr,"insertAt:i"),this._isFrozen&&Vn(this,a);var ee=this.s;a>=ee.length?ee.push(y):ee.splice(a,0,y),this.xb()},Rt.remove=function(a){if(a===null)return!1;this._isFrozen&&Vn(this,a);var y=this.s;return a=y.indexOf(a),a===-1?!1:(a===y.length-1?y.pop():y.splice(a,1),this.xb(),!0)},Rt.delete=function(a){return this.remove(a)},Rt.mb=function(a){var y=this.s;(0>a||a>=y.length)&&tr(a,"0 <= i < length",Zr,"removeAt:i"),this._isFrozen&&Vn(this,a),a===y.length-1?y.pop():y.splice(a,1),this.xb()},Rt.removeRange=function(a,y){var ee=this.s,ne=ee.length;if(0>a)a=0;else if(a>=ne)return this;if(0>y)return this;if(y>=ne&&(y=ne-1),a>y)return this;this._isFrozen&&Vn(this);for(var se=a,ue=y+1;ue=ue)return this;if((0>y||y>=se-1)&&tr(y,"0 <= from < length",Zr,"sortRange:from"),ue===2)return ee=ne[y],se=ne[y+1],0=se)ne.sort(a);else for(y=ne.slice(0,ee),y.sort(a),a=0;a=se)for(ee=ne.slice(y),ee.sort(a),a=y;a=this.s.length)return bo;var a=this.Sa;return a!==null?(a.reset(),a):new Gi(this)}},iteratorBackwards:{get:function(){if(0>=this.s.length)return bo;var a=this.Hg;return a!==null?(a.reset(),a):new Fo(this)}}}),Zr.prototype.reverse=Zr.prototype.reverse,Zr.prototype.sortRange=Zr.prototype.zi,Zr.prototype.sort=Zr.prototype.sort,Zr.prototype.toSet=Zr.prototype.Iv,Zr.prototype.toArray=Zr.prototype.Fa,Zr.prototype.removeRange=Zr.prototype.removeRange,Zr.prototype.removeAt=Zr.prototype.mb,Zr.prototype.delete=Zr.prototype.delete,Zr.prototype.remove=Zr.prototype.remove,Zr.prototype.insertAt=Zr.prototype.Gb,Zr.prototype.pop=Zr.prototype.pop,Zr.prototype.last=Zr.prototype.jc,Zr.prototype.first=Zr.prototype.first,Zr.prototype.set=Zr.prototype.set,Zr.prototype.setElt=Zr.prototype.cd,Zr.prototype.get=Zr.prototype.get,Zr.prototype.elt=Zr.prototype.M,Zr.prototype.indexOf=Zr.prototype.indexOf,Zr.prototype.has=Zr.prototype.has,Zr.prototype.contains=Zr.prototype.contains,Zr.prototype.clear=Zr.prototype.clear,Zr.prototype.addAll=Zr.prototype.addAll,Zr.prototype.push=Zr.prototype.push,Zr.prototype.add=Zr.prototype.add,Zr.prototype.thaw=Zr.prototype.ka,Zr.prototype.freeze=Zr.prototype.freeze,Zr.className="List";function Pa(a){this.eg=a,a.Sa=null,this.qa=a.Ja,this.sa=null}Pa.prototype.reset=function(){var a=this.eg;a.Sa=null,this.qa=a.Ja,this.sa=null},Pa.prototype.next=function(){var a=this.eg;if(a.Ja!==this.qa&&this.key===null)return!1;var y=this.sa;return y=y===null?a.ea:y.va,y!==null?(this.sa=y,this.value=y.value,this.key=y.key,!0):(this.de(),!1)},Pa.prototype.Ad=function(){return this.next()},Pa.prototype.first=function(){var a=this.eg;if(this.qa=a.Ja,a=a.ea,a!==null){this.sa=a;var y=a.value;return this.key=a.key,this.value=y}return null},Pa.prototype.any=function(a){var y=this.eg;for(this.sa=y.Sa=null,y=y.ea;y!==null;){if(a(y.value))return!0;y=y.va}return!1},Pa.prototype.all=function(a){var y=this.eg;for(this.sa=y.Sa=null,y=y.ea;y!==null;){if(!a(y.value))return!1;y=y.va}return!0},Pa.prototype.each=function(a){var y=this.eg;for(this.sa=y.Sa=null,y=y.ea;y!==null;)a(y.value),y=y.va;return this},Pa.prototype.map=function(a){var y=this.eg;y.Sa=null;var ee=new Zr;for(y=y.ea;y!==null;)ee.add(a(y.value)),y=y.va;return ee.iterator},Pa.prototype.filter=function(a){var y=this.eg;y.Sa=null;var ee=new Zr;for(y=y.ea;y!==null;){var ne=y.value;a(ne)&&ee.add(ne),y=y.va}return ee.iterator},Pa.prototype.de=function(){this.value=this.key=null,this.qa=-1,this.eg.Sa=this},Pa.prototype.toString=function(){return this.sa!==null?"SetIterator@"+this.sa.value:"SetIterator"},De.Object.defineProperties(Pa.prototype,{iterator:{get:function(){return this}},count:{get:function(){return this.eg.Sb}}}),Pa.prototype.first=Pa.prototype.first,Pa.prototype.hasNext=Pa.prototype.Ad,Pa.prototype.next=Pa.prototype.next,Pa.prototype.reset=Pa.prototype.reset,Pa.className="SetIterator";function Xr(a){Ma(this),this._isFrozen=!1,this.Tb={},this.Sb=0,this.Sa=null,this.Ja=0,this.kf=this.ea=null,typeof a=="string"&&tn("Error: Since 2.0 List/Map/Set constructors no longer take an argument that enforces type."),a!==void 0&&this.addAll(a)}Rt=Xr.prototype,Rt.xb=function(){var a=this.Ja;a++,999999999=this.Sb)return bo;var a=this.Sa;return a!==null?(a.reset(),a):new Pa(this)}}}),Xr.prototype.toList=Xr.prototype.Hv,Xr.prototype.toArray=Xr.prototype.Fa,Xr.prototype.clear=Xr.prototype.clear,Xr.prototype.retainAll=Xr.prototype.pA,Xr.prototype.removeAll=Xr.prototype.hp,Xr.prototype.delete=Xr.prototype.delete,Xr.prototype.remove=Xr.prototype.remove,Xr.prototype.first=Xr.prototype.first,Xr.prototype.containsAny=Xr.prototype.Ty,Xr.prototype.containsAll=Xr.prototype.Sy,Xr.prototype.has=Xr.prototype.has,Xr.prototype.contains=Xr.prototype.contains,Xr.prototype.addAll=Xr.prototype.addAll,Xr.prototype.add=Xr.prototype.add,Xr.prototype.thaw=Xr.prototype.ka,Xr.prototype.freeze=Xr.prototype.freeze;var ys=1;Xr.className="Set",Xr.uniqueHash=Ma,Xr.hashIdUnique=ts,Xr.hashId=fa;function qa(a){this.ma=a,this.qa=a.Ja,this.sa=null}qa.prototype.reset=function(){this.qa=this.ma.Ja,this.sa=null},qa.prototype.next=function(){var a=this.ma;if(a.Ja!==this.qa&&this.key===null)return!1;var y=this.sa;return y=y===null?a.ea:y.va,y!==null?(this.sa=y,this.value=this.key=a=y.key,!0):(this.de(),!1)},qa.prototype.Ad=function(){return this.next()},qa.prototype.first=function(){var a=this.ma;return this.qa=a.Ja,a=a.ea,a!==null?(this.sa=a,this.value=this.key=a=a.key):null},qa.prototype.any=function(a){var y=this.ma;for(this.sa=null,y=y.ea;y!==null;){if(a(y.key))return!0;y=y.va}return!1},qa.prototype.all=function(a){var y=this.ma;for(this.sa=null,y=y.ea;y!==null;){if(!a(y.key))return!1;y=y.va}return!0},qa.prototype.each=function(a){var y=this.ma;for(this.sa=null,y=y.ea;y!==null;)a(y.key),y=y.va;return this},qa.prototype.map=function(a){var y=this.ma;this.sa=null;var ee=new Zr;for(y=y.ea;y!==null;)ee.add(a(y.key)),y=y.va;return ee.iterator},qa.prototype.filter=function(a){var y=this.ma;this.sa=null;var ee=new Zr;for(y=y.ea;y!==null;){var ne=y.key;a(ne)&&ee.add(ne),y=y.va}return ee.iterator},qa.prototype.de=function(){this.value=this.key=null,this.qa=-1},qa.prototype.toString=function(){return this.sa!==null?"MapKeySetIterator@"+this.sa.value:"MapKeySetIterator"},De.Object.defineProperties(qa.prototype,{iterator:{get:function(){return this}},count:{get:function(){return this.ma.Sb}}}),qa.prototype.first=qa.prototype.first,qa.prototype.hasNext=qa.prototype.Ad,qa.prototype.next=qa.prototype.next,qa.prototype.reset=qa.prototype.reset,qa.className="MapKeySetIterator";function Go(a){Xr.call(this),Ma(this),this._isFrozen=!0,this.ma=a}We(Go,Xr),Rt=Go.prototype,Rt.freeze=function(){return this},Rt.ka=function(){return this},Rt.toString=function(){return"MapKeySet("+this.ma.toString()+")"},Rt.add=function(){tn("This Set is read-only: "+this.toString())},Rt.contains=function(a){return this.ma.contains(a)},Rt.has=function(a){return this.contains(a)},Rt.remove=function(){tn("This Set is read-only: "+this.toString())},Rt.delete=function(a){return this.remove(a)},Rt.clear=function(){tn("This Set is read-only: "+this.toString())},Rt.first=function(){var a=this.ma.ea;return a!==null?a.key:null},Go.prototype.any=function(a){for(var y=this.ma.ea;y!==null;){if(a(y.key))return!0;y=y.va}return!1},Go.prototype.all=function(a){for(var y=this.ma.ea;y!==null;){if(!a(y.key))return!1;y=y.va}return!0},Go.prototype.each=function(a){for(var y=this.ma.ea;y!==null;)a(y.key),y=y.va;return this},Go.prototype.map=function(a){for(var y=new Xr,ee=this.ma.ea;ee!==null;)y.add(a(ee.key)),ee=ee.va;return y},Go.prototype.filter=function(a){for(var y=new Xr,ee=this.ma.ea;ee!==null;){var ne=ee.key;a(ne)&&y.add(ne),ee=ee.va}return y},Go.prototype.copy=function(){return new Go(this.ma)},Go.prototype.Iv=function(){var a=new Xr,y=this.ma.Tb,ee;for(ee in y)a.add(y[ee].key);return a},Go.prototype.Fa=function(){var a=this.ma.Tb,y=Array(this.ma.Sb),ee=0,ne;for(ne in a)y[ee]=a[ne].key,ee++;return y},Go.prototype.Hv=function(){var a=new Zr,y=this.ma.Tb,ee;for(ee in y)a.add(y[ee].key);return a},De.Object.defineProperties(Go.prototype,{count:{get:function(){return this.ma.Sb}},size:{get:function(){return this.ma.Sb}},iterator:{get:function(){return 0>=this.ma.Sb?bo:new qa(this.ma)}}}),Go.prototype.toList=Go.prototype.Hv,Go.prototype.toArray=Go.prototype.Fa,Go.prototype.toSet=Go.prototype.Iv,Go.prototype.first=Go.prototype.first,Go.prototype.clear=Go.prototype.clear,Go.prototype.delete=Go.prototype.delete,Go.prototype.remove=Go.prototype.remove,Go.prototype.has=Go.prototype.has,Go.prototype.contains=Go.prototype.contains,Go.prototype.add=Go.prototype.add,Go.prototype.thaw=Go.prototype.ka,Go.prototype.freeze=Go.prototype.freeze,Go.className="MapKeySet";function li(a){this.ma=a,a.jf=null,this.qa=a.Ja,this.sa=null}li.prototype.reset=function(){var a=this.ma;a.jf=null,this.qa=a.Ja,this.sa=null},li.prototype.next=function(){var a=this.ma;if(a.Ja!==this.qa&&this.key===null)return!1;var y=this.sa;return y=y===null?a.ea:y.va,y!==null?(this.sa=y,this.value=y.value,this.key=y.key,!0):(this.de(),!1)},li.prototype.Ad=function(){return this.next()},li.prototype.first=function(){var a=this.ma;if(this.qa=a.Ja,a=a.ea,a!==null){this.sa=a;var y=a.value;return this.key=a.key,this.value=y}return null},li.prototype.any=function(a){var y=this.ma;for(this.sa=y.jf=null,y=y.ea;y!==null;){if(a(y.value))return!0;y=y.va}return!1},li.prototype.all=function(a){var y=this.ma;for(this.sa=y.jf=null,y=y.ea;y!==null;){if(!a(y.value))return!1;y=y.va}return!0},li.prototype.each=function(a){var y=this.ma;for(this.sa=y.jf=null,y=y.ea;y!==null;)a(y.value),y=y.va;return this},li.prototype.map=function(a){var y=this.ma;this.sa=y.jf=null;var ee=new Zr;for(y=y.ea;y!==null;)ee.add(a(y.value)),y=y.va;return ee.iterator},li.prototype.filter=function(a){var y=this.ma;this.sa=y.jf=null;var ee=new Zr;for(y=y.ea;y!==null;){var ne=y.value;a(ne)&&ee.add(ne),y=y.va}return ee.iterator},li.prototype.de=function(){this.value=this.key=null,this.qa=-1,this.ma.jf=this},li.prototype.toString=function(){return this.sa!==null?"MapValueSetIterator@"+this.sa.value:"MapValueSetIterator"},De.Object.defineProperties(li.prototype,{iterator:{get:function(){return this}},count:{get:function(){return this.ma.Sb}}}),li.prototype.first=li.prototype.first,li.prototype.hasNext=li.prototype.Ad,li.prototype.next=li.prototype.next,li.prototype.reset=li.prototype.reset,li.className="MapValueSetIterator";function Ca(a,y){this.key=a,this.value=y,this.ll=this.va=null}Ca.prototype.toString=function(){return"{"+this.key+":"+this.value+"}"},Ca.className="KeyValuePair";function Za(a){this.ma=a,a.Sa=null,this.qa=a.Ja,this.sa=null}Za.prototype.reset=function(){var a=this.ma;a.Sa=null,this.qa=a.Ja,this.sa=null},Za.prototype.next=function(){var a=this.ma;if(a.Ja!==this.qa&&this.key===null)return!1;var y=this.sa;return y=y===null?a.ea:y.va,y!==null?(this.sa=y,this.key=y.key,this.value=y.value,!0):(this.de(),!1)},Za.prototype.Ad=function(){return this.next()},Za.prototype.first=function(){var a=this.ma;return this.qa=a.Ja,a=a.ea,a!==null?(this.sa=a,this.key=a.key,this.value=a.value,a):null},Za.prototype.any=function(a){var y=this.ma;for(this.sa=y.Sa=null,y=y.ea;y!==null;){if(a(y))return!0;y=y.va}return!1},Za.prototype.all=function(a){var y=this.ma;for(this.sa=y.Sa=null,y=y.ea;y!==null;){if(!a(y))return!1;y=y.va}return!0},Za.prototype.each=function(a){var y=this.ma;for(this.sa=y.Sa=null,y=y.ea;y!==null;)a(y),y=y.va;return this},Za.prototype.map=function(a){var y=this.ma;this.sa=y.Sa=null;var ee=new Zr;for(y=y.ea;y!==null;)ee.add(a(y)),y=y.va;return ee.iterator},Za.prototype.filter=function(a){var y=this.ma;this.sa=y.Sa=null;var ee=new Zr;for(y=y.ea;y!==null;)a(y)&&ee.add(y),y=y.va;return ee.iterator},Za.prototype.de=function(){this.value=this.key=null,this.qa=-1,this.ma.Sa=this},Za.prototype.toString=function(){return this.sa!==null?"MapIterator@"+this.sa:"MapIterator"},De.Object.defineProperties(Za.prototype,{iterator:{get:function(){return this}},count:{get:function(){return this.ma.Sb}}}),Za.prototype.first=Za.prototype.first,Za.prototype.hasNext=Za.prototype.Ad,Za.prototype.next=Za.prototype.next,Za.prototype.reset=Za.prototype.reset,Za.className="MapIterator";function lo(a){Ma(this),this._isFrozen=!1,this.Tb={},this.Sb=0,this.jf=this.Sa=null,this.Ja=0,this.kf=this.ea=null,typeof a=="string"&&tn("Error: Since 2.0 List/Map/Set constructors no longer take an argument that enforces type."),a!==void 0&&this.addAll(a)}Rt=lo.prototype,Rt.xb=function(){var a=this.Ja;a++,999999999=this.count)return bo;var a=this.Sa;return a!==null?(a.reset(),a):new Za(this)}},iteratorKeys:{get:function(){return 0>=this.count?bo:new qa(this)}},iteratorValues:{get:function(){if(0>=this.count)return bo;var a=this.jf;return a!==null?(a.reset(),a):new li(this)}}}),lo.prototype.toKeySet=lo.prototype.Lf,lo.prototype.toArray=lo.prototype.Fa,lo.prototype.clear=lo.prototype.clear,lo.prototype.delete=lo.prototype.delete,lo.prototype.remove=lo.prototype.remove,lo.prototype.get=lo.prototype.get,lo.prototype.getValue=lo.prototype.I,lo.prototype.has=lo.prototype.has,lo.prototype.contains=lo.prototype.contains,lo.prototype.first=lo.prototype.first,lo.prototype.addAll=lo.prototype.addAll,lo.prototype.set=lo.prototype.set,lo.prototype.add=lo.prototype.add,lo.prototype.thaw=lo.prototype.ka,lo.prototype.freeze=lo.prototype.freeze,lo.className="Map";function fn(a,y){a===void 0?this.y=this.x=0:typeof a=="number"&&typeof y=="number"?(this.x=a,this.y=y):tn("Invalid arguments to Point constructor: "+a+", "+y),this._isFrozen=!1}var Yo,Ms,_a,Bs,Vs;fn.prototype.assign=function(a){return this.x=a.x,this.y=a.y,this},fn.prototype.h=function(a,y){return this.x=a,this.y=y,this},fn.prototype.sg=function(a,y){return this.x=a,this.y=y,this},fn.prototype.set=function(a){return this.x=a.x,this.y=a.y,this},fn.prototype.copy=function(){var a=new fn;return a.x=this.x,a.y=this.y,a},Rt=fn.prototype,Rt.ja=function(){return this._isFrozen=!0,Object.freeze(this),this},Rt.J=function(){return this._isFrozen||Object.isFrozen(this)?this:this.copy().freeze()},Rt.freeze=function(){return this._isFrozen=!0,this},Rt.ka=function(){return Object.isFrozen(this)&&tn("cannot thaw constant: "+this),this._isFrozen=!1,this};function ol(a){if(typeof a=="string"){a=a.split(" ");for(var y=0,ee=0;a[y]==="";)y++;var ne=a[y++];ne&&(ee=parseFloat(ne));for(var se=0;a[y]==="";)y++;return(ne=a[y++])&&(se=parseFloat(ne)),new fn(ee,se)}return new fn}function ka(a){return a.x.toString()+" "+a.y.toString()}Rt.toString=function(){return"Point("+this.x+","+this.y+")"},Rt.D=function(a){return a instanceof fn?this.x===a.x&&this.y===a.y:!1},Rt.hi=function(a,y){return this.x===a&&this.y===y},Rt.Xa=function(a){return cr.B(this.x,a.x)&&cr.B(this.y,a.y)},Rt.add=function(a){return this.x+=a.x,this.y+=a.y,this},Rt.re=function(a){return this.x-=a.x,this.y-=a.y,this},Rt.offset=function(a,y){return this.x+=a,this.y+=y,this},fn.prototype.rotate=function(a){if(a===0)return this;var y=this.x,ee=this.y;if(y===0&&ee===0)return this;if(360<=a?a-=360:0>a&&(a+=360),a===90){a=0;var ne=1}else a===180?(a=-1,ne=0):a===270?(a=0,ne=-1):(ne=a*Math.PI/180,a=Math.cos(ne),ne=Math.sin(ne));return this.x=a*y-ne*ee,this.y=ne*y+a*ee,this},Rt=fn.prototype,Rt.scale=function(a,y){return this.x*=a,this.y*=y,this},Rt.Bf=function(a){var y=a.x-this.x;return a=a.y-this.y,y*y+a*a},Rt.zd=function(a,y){return a-=this.x,y-=this.y,a*a+y*y},Rt.normalize=function(){var a=this.x,y=this.y,ee=Math.sqrt(a*a+y*y);return 0y?270:0;if(y===0)return 0a?ee=0>y?ee+180:180-ee:0>y&&(ee=360-ee),ee}Rt.Ry=function(a,y){return cr.Fl(a.x,a.y,y.x,y.y,this.x,this.y)},Rt.fA=function(a,y,ee,ne){return cr.qh(a,y,ee,ne,this.x,this.y,this),this},Rt.gA=function(a,y){return cr.qh(a.x,a.y,y.x,y.y,this.x,this.y,this),this},Rt.uA=function(a,y,ee,ne){return cr.No(this.x,this.y,a,y,ee,ne,this),this},Rt.vA=function(a,y){return cr.No(this.x,this.y,a.x,a.y,y.width,y.height,this),this},Rt.xi=function(a,y){return this.x=a.x+y.x*a.width+y.offsetX,this.y=a.y+y.y*a.height+y.offsetY,this},Rt.yi=function(a,y,ee,ne,se){return this.x=a+se.x*ee+se.offsetX,this.y=y+se.y*ne+se.offsetY,this},Rt.transform=function(a){return a.Ga(this),this};function Sa(a,y){return y.Cd(a),a}function xs(a,y,ee,ne,se,ue){var me=se-ee,Ce=ue-ne,Fe=me*me+Ce*Ce;ee-=a,ne-=y;var Ye=-ee*me-ne*Ce;return 0>=Ye||Ye>=Fe?(me=se-a,Ce=ue-y,Math.min(ee*ee+ne*ne,me*me+Ce*Ce)):(a=me*ne-Ce*ee,a*a/Fe)}function Ls(a,y,ee,ne){return a=ee-a,y=ne-y,a*a+y*y}function la(a,y,ee,ne){return a=ee-a,y=ne-y,a===0?0y?270:0:y===0?0a?ne=0>y?ne+180:180-ne:0>y&&(ne=360-ne),ne)}Rt.w=function(){return isFinite(this.x)&&isFinite(this.y)},fn.alloc=function(){var a=na.pop();return a===void 0?new fn:a},fn.allocAt=function(a,y){var ee=na.pop();return ee===void 0?new fn(a,y):(ee.x=a,ee.y=y,ee)},fn.free=function(a){na.push(a)},fn.prototype.isReal=fn.prototype.w,fn.prototype.setSpot=fn.prototype.yi,fn.prototype.setRectSpot=fn.prototype.xi,fn.prototype.snapToGridPoint=fn.prototype.vA,fn.prototype.snapToGrid=fn.prototype.uA,fn.prototype.projectOntoLineSegmentPoint=fn.prototype.gA,fn.prototype.projectOntoLineSegment=fn.prototype.fA,fn.intersectingLineSegments=function(a,y,ee,ne,se,ue,me,Ce){return cr.Rl(a,y,ee,ne,se,ue,me,Ce)},fn.prototype.compareWithLineSegmentPoint=fn.prototype.Ry,fn.compareWithLineSegment=function(a,y,ee,ne,se,ue){return cr.Fl(a,y,ee,ne,se,ue)},fn.prototype.direction=fn.prototype.direction,fn.prototype.directionPoint=fn.prototype.ab,fn.prototype.normalize=fn.prototype.normalize,fn.prototype.distanceSquared=fn.prototype.zd,fn.prototype.distanceSquaredPoint=fn.prototype.Bf,fn.prototype.scale=fn.prototype.scale,fn.prototype.rotate=fn.prototype.rotate,fn.prototype.offset=fn.prototype.offset,fn.prototype.subtract=fn.prototype.re,fn.prototype.add=fn.prototype.add,fn.prototype.equalsApprox=fn.prototype.Xa,fn.prototype.equalTo=fn.prototype.hi,fn.prototype.equals=fn.prototype.D,fn.prototype.set=fn.prototype.set,fn.prototype.setTo=fn.prototype.sg;var na=[];fn.className="Point",fn.parse=ol,fn.stringify=ka,fn.distanceLineSegmentSquared=xs,fn.distanceSquared=Ls,fn.direction=la,fn.Origin=Yo=new fn(0,0).ja(),fn.InfiniteTopLeft=Ms=new fn(-1/0,-1/0).ja(),fn.InfiniteBottomRight=_a=new fn(1/0,1/0).ja(),fn.SixPoint=Bs=new fn(6,6).ja(),fn.NoPoint=Vs=new fn(NaN,NaN).ja(),fn.parse=ol,fn.stringify=ka,fn.distanceLineSegmentSquared=xs,fn.distanceSquared=Ls,fn.direction=la;function Ri(a,y){a===void 0?this.height=this.width=0:typeof a=="number"&&(0<=a||isNaN(a))&&typeof y=="number"&&(0<=y||isNaN(y))?(this.width=a,this.height=y):tn("Invalid arguments to Size constructor: "+a+", "+y),this._isFrozen=!1}var qo,Ts,pl,Rs,As,Ns,Ks;Ri.prototype.assign=function(a){return this.width=a.width,this.height=a.height,this},Ri.prototype.h=function(a,y){return this.width=a,this.height=y,this},Ri.prototype.sg=function(a,y){return this.width=a,this.height=y,this},Ri.prototype.set=function(a){return this.width=a.width,this.height=a.height,this},Ri.prototype.copy=function(){var a=new Ri;return a.width=this.width,a.height=this.height,a},Rt=Ri.prototype,Rt.ja=function(){return this._isFrozen=!0,Object.freeze(this),this},Rt.J=function(){return this._isFrozen||Object.isFrozen(this)?this:this.copy().freeze()},Rt.freeze=function(){return this._isFrozen=!0,this},Rt.ka=function(){return Object.isFrozen(this)&&tn("cannot thaw constant: "+this),this._isFrozen=!1,this};function Yl(a){if(typeof a=="string"){a=a.split(" ");for(var y=0,ee=0;a[y]==="";)y++;var ne=a[y++];ne&&(ee=parseFloat(ne));for(var se=0;a[y]==="";)y++;return(ne=a[y++])&&(se=parseFloat(ne)),new Ri(ee,se)}return new Ri}function Gl(a){return a.width.toString()+" "+a.height.toString()}Rt.toString=function(){return"Size("+this.width+","+this.height+")"},Rt.D=function(a){return a instanceof Ri?this.width===a.width&&this.height===a.height:!1},Rt.hi=function(a,y){return this.width===a&&this.height===y},Rt.Xa=function(a){return cr.B(this.width,a.width)&&cr.B(this.height,a.height)},Rt.Bc=function(a,y){return a=this.width+a,this.width=0<=a?a:0,y=this.height+y,this.height=0<=y?y:0,this},Rt.w=function(){return isFinite(this.width)&&isFinite(this.height)},Ri.alloc=function(){var a=yu.pop();return a===void 0?new Ri:a},Ri.free=function(a){yu.push(a)},Ri.prototype.isReal=Ri.prototype.w,Ri.prototype.inflate=Ri.prototype.Bc,Ri.prototype.equalsApprox=Ri.prototype.Xa,Ri.prototype.equalTo=Ri.prototype.hi,Ri.prototype.equals=Ri.prototype.D,Ri.prototype.set=Ri.prototype.set,Ri.prototype.setTo=Ri.prototype.sg;var yu=[];Ri.className="Size",Ri.parse=Yl,Ri.stringify=Gl,Ri.ZeroSize=qo=new Ri(0,0).ja(),Ri.OneSize=Ts=new Ri(1,1).ja(),Ri.SixSize=pl=new Ri(6,6).ja(),Ri.EightSize=Rs=new Ri(8,8).ja(),Ri.TenSize=As=new Ri(10,10).ja(),Ri.InfiniteSize=Ns=new Ri(1/0,1/0).ja(),Ri.NoSize=Ks=new Ri(NaN,NaN).ja(),Ri.parse=Yl,Ri.stringify=Gl;function Pr(a,y,ee,ne){a===void 0?this.height=this.width=this.y=this.x=0:typeof a=="number"&&typeof y=="number"&&typeof ee=="number"&&(0<=ee||isNaN(ee))&&typeof ne=="number"&&(0<=ne||isNaN(ne))?(this.x=a,this.y=y,this.width=ee,this.height=ne):a instanceof fn?(ee=a.x,a=a.y,y instanceof fn?(ne=y.x,y=y.y,this.x=Math.min(ee,ne),this.y=Math.min(a,y),this.width=Math.abs(ee-ne),this.height=Math.abs(a-y)):y instanceof Ri?(this.x=ee,this.y=a,this.width=y.width,this.height=y.height):tn("Incorrect second argument supplied to Rect constructor "+y)):tn("Invalid arguments to Rect constructor: "+a+", "+y+", "+ee+", "+ne),this._isFrozen=!1}Rt=Pr.prototype,Rt.assign=function(a){return this.x=a.x,this.y=a.y,this.width=a.width,this.height=a.height,this},Rt.h=function(a,y,ee,ne){return this.x=a,this.y=y,this.width=ee,this.height=ne,this};function ou(a,y,ee){a.width=y,a.height=ee}Rt.sg=function(a,y,ee,ne){return this.x=a,this.y=y,this.width=ee,this.height=ne,this},Rt.set=function(a){return this.x=a.x,this.y=a.y,this.width=a.width,this.height=a.height,this},Rt.dd=function(a){return this.x=a.x,this.y=a.y,this},Rt.tA=function(a){return this.width=a.width,this.height=a.height,this},Pr.prototype.copy=function(){var a=new Pr;return a.x=this.x,a.y=this.y,a.width=this.width,a.height=this.height,a},Rt=Pr.prototype,Rt.ja=function(){return this._isFrozen=!0,Object.freeze(this),this},Rt.J=function(){return this._isFrozen||Object.isFrozen(this)?this:this.copy().freeze()},Rt.freeze=function(){return this._isFrozen=!0,this},Rt.ka=function(){return Object.isFrozen(this)&&tn("cannot thaw constant: "+this),this._isFrozen=!1,this};function vd(a){if(typeof a=="string"){a=a.split(" ");for(var y=0,ee=0;a[y]==="";)y++;var ne=a[y++];ne&&(ee=parseFloat(ne));for(var se=0;a[y]==="";)y++;(ne=a[y++])&&(se=parseFloat(ne));for(var ue=0;a[y]==="";)y++;(ne=a[y++])&&(ue=parseFloat(ne));for(var me=0;a[y]==="";)y++;return(ne=a[y++])&&(me=parseFloat(ne)),new Pr(ee,se,ue,me)}return new Pr}function Tc(a){return a.x.toString()+" "+a.y.toString()+" "+a.width.toString()+" "+a.height.toString()}Rt.toString=function(){return"Rect("+this.x+","+this.y+","+this.width+","+this.height+")"},Rt.D=function(a){return a instanceof Pr?this.x===a.x&&this.y===a.y&&this.width===a.width&&this.height===a.height:!1},Rt.hi=function(a,y,ee,ne){return this.x===a&&this.y===y&&this.width===ee&&this.height===ne},Rt.Xa=function(a){return cr.B(this.x,a.x)&&cr.B(this.y,a.y)&&cr.B(this.width,a.width)&&cr.B(this.height,a.height)};function qs(a,y){return cr.$(a.x,y.x)&&cr.$(a.y,y.y)&&cr.$(a.width,y.width)&&cr.$(a.height,y.height)}Rt.ca=function(a){return this.x<=a.x&&this.x+this.width>=a.x&&this.y<=a.y&&this.y+this.height>=a.y},Rt.Re=function(a){return this.x<=a.x&&a.x+a.width<=this.x+this.width&&this.y<=a.y&&a.y+a.height<=this.y+this.height},Rt.contains=function(a,y,ee,ne){return ee===void 0&&(ee=0),ne===void 0&&(ne=0),this.x<=a&&a+ee<=this.x+this.width&&this.y<=y&&y+ne<=this.y+this.height},Rt.offset=function(a,y){return this.x+=a,this.y+=y,this},Rt.Bc=function(a,y){return ws(this,y,a,y,a)},Rt.Co=function(a){return ws(this,a.top,a.right,a.bottom,a.left)},Rt.Fv=function(a){return ws(this,-a.top,-a.right,-a.bottom,-a.left)},Rt.Hz=function(a,y,ee,ne){return ws(this,a,y,ee,ne)};function ws(a,y,ee,ne,se){var ue=a.width;return ee+se<=-ue?(a.x+=ue/2,a.width=0):(a.x-=se,a.width+=ee+se),ee=a.height,y+ne<=-ee?(a.y+=ee/2,a.height=0):(a.y-=y,a.height+=y+ne),a}Rt.Ex=function(a){return au(this,a.x,a.y,a.width,a.height)},Rt.Uu=function(a,y,ee,ne){return au(this,a,y,ee,ne)};function au(a,y,ee,ne,se){var ue=Math.max(a.x,y),me=Math.max(a.y,ee);return y=Math.min(a.x+a.width,y+ne),ee=Math.min(a.y+a.height,ee+se),a.x=ue,a.y=me,a.width=Math.max(0,y-ue),a.height=Math.max(0,ee-me),a}Rt.Yc=function(a){return this.Vu(a.x,a.y,a.width,a.height)},Rt.Vu=function(a,y,ee,ne){var se=this.width,ue=this.x;return se!==1/0&&ee!==1/0&&(se+=ue,ee+=a,isNaN(ee)||isNaN(se)||ue>ee||a>se)?!1:(a=this.height,ee=this.y,!(a!==1/0&&ne!==1/0&&(a+=ee,ne+=y,isNaN(ne)||isNaN(a)||ee>ne||y>a)))};function hl(a,y){var ee=a.width,ne=a.x,se=y.x-10;return ne>y.width+10+10+se||se>ee+ne?!1:(ee=a.height,a=a.y,ne=y.y-10,!(a>y.height+10+10+ne||ne>ee+a))}Rt.Ye=function(a){return Cs(this,a.x,a.y,0,0)},Rt.ed=function(a){return Cs(this,a.x,a.y,a.width,a.height)},Rt.Kv=function(a,y,ee,ne){return ee===void 0&&(ee=0),ne===void 0&&(ne=0),Cs(this,a,y,ee,ne)};function Cs(a,y,ee,ne,se){var ue=Math.min(a.x,y),me=Math.min(a.y,ee);return y=Math.max(a.x+a.width,y+ne),ee=Math.max(a.y+a.height,ee+se),a.x=ue,a.y=me,a.width=y-ue,a.height=ee-me,a}Rt.yi=function(a,y,ee){return this.x=a-ee.offsetX-ee.x*this.width,this.y=y-ee.offsetY-ee.y*this.height,this};function wl(a,y,ee,ne,se,ue,me,Ce){return me===void 0&&(me=0),Ce===void 0&&(Ce=0),a<=se&&se+me<=a+ee&&y<=ue&&ue+Ce<=y+ne}function Dc(a,y,ee,ne,se,ue,me,Ce){return a>me+se||se>ee+a?!1:!(y>Ce+ue||ue>ne+y)}Rt.w=function(){return isFinite(this.x)&&isFinite(this.y)&&isFinite(this.width)&&isFinite(this.height)},Rt.Mz=function(){return this.width===0&&this.height===0},Pr.alloc=function(){var a=ks.pop();return a===void 0?new Pr:a},Pr.allocAt=function(a,y,ee,ne){var se=ks.pop();return se===void 0?new Pr(a,y,ee,ne):se.h(a,y,ee,ne)},Pr.free=function(a){ks.push(a)},De.Object.defineProperties(Pr.prototype,{left:{get:function(){return this.x},set:function(a){this.x=a}},top:{get:function(){return this.y},set:function(a){this.y=a}},right:{get:function(){return this.x+this.width},set:function(a){this.x+=a-(this.x+this.width)}},bottom:{get:function(){return this.y+this.height},set:function(a){this.y+=a-(this.y+this.height)}},position:{get:function(){return new fn(this.x,this.y)},set:function(a){this.x=a.x,this.y=a.y}},size:{get:function(){return new Ri(this.width,this.height)},set:function(a){this.width=a.width,this.height=a.height}},center:{get:function(){return new fn(this.x+this.width/2,this.y+this.height/2)},set:function(a){this.x=a.x-this.width/2,this.y=a.y-this.height/2}},centerX:{get:function(){return this.x+this.width/2},set:function(a){this.x=a-this.width/2}},centerY:{get:function(){return this.y+this.height/2},set:function(a){this.y=a-this.height/2}}}),Pr.prototype.isEmpty=Pr.prototype.Mz,Pr.prototype.isReal=Pr.prototype.w,Pr.intersectsLineSegment=function(a,y,ee,ne,se,ue,me,Ce){return cr.Fx(a,y,ee,ne,se,ue,me,Ce)},Pr.prototype.setSpot=Pr.prototype.yi,Pr.prototype.union=Pr.prototype.Kv,Pr.prototype.unionRect=Pr.prototype.ed,Pr.prototype.unionPoint=Pr.prototype.Ye,Pr.prototype.intersects=Pr.prototype.Vu,Pr.prototype.intersectsRect=Pr.prototype.Yc,Pr.prototype.intersect=Pr.prototype.Uu,Pr.prototype.intersectRect=Pr.prototype.Ex,Pr.prototype.grow=Pr.prototype.Hz,Pr.prototype.subtractMargin=Pr.prototype.Fv,Pr.prototype.addMargin=Pr.prototype.Co,Pr.prototype.inflate=Pr.prototype.Bc,Pr.prototype.offset=Pr.prototype.offset,Pr.prototype.contains=Pr.prototype.contains,Pr.prototype.containsRect=Pr.prototype.Re,Pr.prototype.containsPoint=Pr.prototype.ca,Pr.prototype.equalsApprox=Pr.prototype.Xa,Pr.prototype.equalTo=Pr.prototype.hi,Pr.prototype.equals=Pr.prototype.D,Pr.prototype.setSize=Pr.prototype.tA,Pr.prototype.setPoint=Pr.prototype.dd,Pr.prototype.set=Pr.prototype.set,Pr.prototype.setTo=Pr.prototype.sg;var Ha=null,Xs=null,ks=[];Pr.className="Rect",Pr.parse=vd,Pr.stringify=Tc,Pr.contains=wl,Pr.intersects=Dc,Pr.ZeroRect=Ha=new Pr(0,0,0,0).ja(),Pr.NoRect=Xs=new Pr(NaN,NaN,NaN,NaN).ja(),Pr.parse=vd,Pr.stringify=Tc,Pr.contains=wl,Pr.intersects=Dc;function Ro(a,y,ee,ne){a===void 0?this.left=this.bottom=this.right=this.top=0:y===void 0?this.left=this.bottom=this.right=this.top=a:ee===void 0?(this.top=a,this.right=y,this.bottom=a,this.left=y):ne!==void 0?(this.top=a,this.right=y,this.bottom=ee,this.left=ne):tn("Invalid arguments to Margin constructor: "+a+", "+y+", "+ee+", "+ne),this._isFrozen=!1}Ro.prototype.assign=function(a){return this.top=a.top,this.right=a.right,this.bottom=a.bottom,this.left=a.left,this},Ro.prototype.sg=function(a,y,ee,ne){return this.top=a,this.right=y,this.bottom=ee,this.left=ne,this},Ro.prototype.set=function(a){return this.top=a.top,this.right=a.right,this.bottom=a.bottom,this.left=a.left,this},Ro.prototype.copy=function(){var a=new Ro;return a.top=this.top,a.right=this.right,a.bottom=this.bottom,a.left=this.left,a},Rt=Ro.prototype,Rt.ja=function(){return this._isFrozen=!0,Object.freeze(this),this},Rt.J=function(){return this._isFrozen||Object.isFrozen(this)?this:this.copy().freeze()},Rt.freeze=function(){return this._isFrozen=!0,this},Rt.ka=function(){return Object.isFrozen(this)&&tn("cannot thaw constant: "+this),this._isFrozen=!1,this};function pu(a){if(typeof a=="string"){a=a.split(" ");for(var y=0,ee=NaN;a[y]==="";)y++;var ne=a[y++];if(ne&&(ee=parseFloat(ne)),isNaN(ee))return new Ro;for(var se=NaN;a[y]==="";)y++;if((ne=a[y++])&&(se=parseFloat(ne)),isNaN(se))return new Ro(ee);for(var ue=NaN;a[y]==="";)y++;if((ne=a[y++])&&(ue=parseFloat(ne)),isNaN(ue))return new Ro(ee,se);for(var me=NaN;a[y]==="";)y++;return(ne=a[y++])&&(me=parseFloat(ne)),isNaN(me)?new Ro(ee,se):new Ro(ee,se,ue,me)}return new Ro}function ku(a){return a.top.toString()+" "+a.right.toString()+" "+a.bottom.toString()+" "+a.left.toString()}Rt.toString=function(){return"Margin("+this.top+","+this.right+","+this.bottom+","+this.left+")"},Rt.D=function(a){return a instanceof Ro?this.top===a.top&&this.right===a.right&&this.bottom===a.bottom&&this.left===a.left:!1},Rt.hi=function(a,y,ee,ne){return this.top===a&&this.right===y&&this.bottom===ee&&this.left===ne},Rt.Xa=function(a){return cr.B(this.top,a.top)&&cr.B(this.right,a.right)&&cr.B(this.bottom,a.bottom)&&cr.B(this.left,a.left)},Rt.w=function(){return isFinite(this.top)&&isFinite(this.right)&&isFinite(this.bottom)&&isFinite(this.left)},Ro.alloc=function(){var a=Uh.pop();return a===void 0?new Ro:a},Ro.free=function(a){Uh.push(a)},Ro.prototype.isReal=Ro.prototype.w,Ro.prototype.equalsApprox=Ro.prototype.Xa,Ro.prototype.equalTo=Ro.prototype.hi,Ro.prototype.equals=Ro.prototype.D,Ro.prototype.set=Ro.prototype.set,Ro.prototype.setTo=Ro.prototype.sg;var Ic=null,Dh=null,Uh=[];Ro.className="Margin",Ro.parse=pu,Ro.stringify=ku,Ro.ZeroMargin=Ic=new Ro(0,0,0,0).ja(),Ro.TwoMargin=Dh=new Ro(2,2,2,2).ja(),Ro.parse=pu,Ro.stringify=ku;function So(a,y,ee,ne){a===void 0?this.offsetY=this.offsetX=this.y=this.x=0:(y===void 0&&(y=0),ee===void 0&&(ee=0),ne===void 0&&(ne=0),this.x=a,this.y=y,this.offsetX=ee,this.offsetY=ne),this._isFrozen=!1}var su,Vu,Ih,td,vc,cs,qc,$c,eh,mc,vh,kc,Hc,th,yf,ng,ic,rg,jf,Ll,nh,Fc,Oc,yc,Nc,Ds,Al,_c,Du,Fu,du,Ws,Ku,xu,Bd,Iu;So.prototype.assign=function(a){return this.x=a.x,this.y=a.y,this.offsetX=a.offsetX,this.offsetY=a.offsetY,this},So.prototype.sg=function(a,y,ee,ne){return this.x=a,this.y=y,this.offsetX=ee,this.offsetY=ne,this},So.prototype.set=function(a){return this.x=a.x,this.y=a.y,this.offsetX=a.offsetX,this.offsetY=a.offsetY,this},So.prototype.copy=function(){var a=new So;return a.x=this.x,a.y=this.y,a.offsetX=this.offsetX,a.offsetY=this.offsetY,a},Rt=So.prototype,Rt.ja=function(){return this._isFrozen=!0,Object.freeze(this),this},Rt.J=function(){return this._isFrozen||Object.isFrozen(this)?this:this.copy().freeze()},Rt.freeze=function(){return this._isFrozen=!0,this},Rt.ka=function(){return Object.isFrozen(this)&&tn("cannot thaw constant: "+this),this._isFrozen=!1,this};function Eu(a,y){return a.x=NaN,a.y=NaN,a.offsetX=y,a}function zc(a){if(typeof a=="string"){if(a=a.trim(),a==="None")return su;if(a==="TopLeft")return Vu;if(a==="Top"||a==="TopCenter"||a==="MiddleTop")return Ih;if(a==="TopRight")return td;if(a==="Left"||a==="LeftCenter"||a==="MiddleLeft")return vc;if(a==="Center")return cs;if(a==="Right"||a==="RightCenter"||a==="MiddleRight")return qc;if(a==="BottomLeft")return $c;if(a==="Bottom"||a==="BottomCenter"||a==="MiddleBottom")return eh;if(a==="BottomRight")return mc;if(a==="TopSide")return vh;if(a==="LeftSide")return kc;if(a==="RightSide")return Hc;if(a==="BottomSide")return th;if(a==="TopBottomSides")return yf;if(a==="LeftRightSides")return ng;if(a==="TopLeftSides")return ic;if(a==="TopRightSides")return rg;if(a==="BottomLeftSides")return jf;if(a==="BottomRightSides")return Ll;if(a==="NotTopSide")return nh;if(a==="NotLeftSide")return Fc;if(a==="NotRightSide")return Oc;if(a==="NotBottomSide")return yc;if(a==="AllSides")return Nc;if(a==="Default")return Ds;a=a.split(" ");for(var y=0,ee=0;a[y]==="";)y++;var ne=a[y++];ne!==void 0&&0a&&(a+=360),a===0)return this;if(this.translate(y,ee),a===90){a=0;var ne=1}else a===180?(a=-1,ne=0):a===270?(a=0,ne=-1):(ne=a*Math.PI/180,a=Math.cos(ne),ne=Math.sin(ne));var se=this.m12*a+this.m22*ne,ue=this.m11*-ne+this.m21*a,me=this.m12*-ne+this.m22*a;return this.m11=this.m11*a+this.m21*ne,this.m12=se,this.m21=ue,this.m22=me,this.translate(-y,-ee),this},Rt=Ta.prototype,Rt.translate=function(a,y){return this.dx+=this.m11*a+this.m21*y,this.dy+=this.m12*a+this.m22*y,this},Rt.scale=function(a,y){return y===void 0&&(y=a),this.m11*=a,this.m12*=a,this.m21*=y,this.m22*=y,this},Rt.Ga=function(a){var y=a.x,ee=a.y;return a.h(y*this.m11+ee*this.m21+this.dx,y*this.m12+ee*this.m22+this.dy)},Rt.Cd=function(a){var y=1/(this.m11*this.m22-this.m12*this.m21),ee=a.x,ne=a.y;return a.h(ee*this.m22*y+ne*-this.m21*y+y*(this.m21*this.dy-this.m22*this.dx),ee*-this.m12*y+ne*this.m11*y+y*(this.m12*this.dx-this.m11*this.dy))},Rt.Eu=function(a){var y=1/(this.m11*this.m22-this.m12*this.m21),ee=1.25*a.x,ne=1.2*a.y;return a.h(ee*this.m22*y+ne*-this.m21*y+y*(this.m21*this.dy-this.m22*this.dx),ee*-this.m12*y+ne*this.m11*y+y*(this.m12*this.dx-this.m11*this.dy))},Rt.pp=function(a){var y=a.x,ee=a.y,ne=y+a.width,se=ee+a.height,ue=this.m11,me=this.m12,Ce=this.m21,Fe=this.m22,Ye=this.dx,Qe=this.dy,at=y*ue+ee*Ce+Ye,mt=y*me+ee*Fe+Qe,Lt=ne*ue+ee*Ce+Ye,kt=ne*me+ee*Fe+Qe;return ee=y*ue+se*Ce+Ye,y=y*me+se*Fe+Qe,ue=ne*ue+se*Ce+Ye,ne=ne*me+se*Fe+Qe,se=Math.min(at,Lt),at=Math.max(at,Lt),Lt=Math.min(mt,kt),mt=Math.max(mt,kt),se=Math.min(se,ee),at=Math.max(at,ee),Lt=Math.min(Lt,y),mt=Math.max(mt,y),se=Math.min(se,ue),at=Math.max(at,ue),Lt=Math.min(Lt,ne),mt=Math.max(mt,ne),a.h(se,Lt,at-se,mt-Lt),a},Ta.alloc=function(){var a=mh.pop();return a===void 0?new Ta:a},Ta.free=function(a){mh.push(a)},Ta.prototype.transformRect=Ta.prototype.pp,Ta.prototype.transformPoint=Ta.prototype.Ga,Ta.prototype.scale=Ta.prototype.scale,Ta.prototype.translate=Ta.prototype.translate,Ta.prototype.rotate=Ta.prototype.rotate,Ta.prototype.invert=Ta.prototype.Vj,Ta.prototype.multiplyInverted=Ta.prototype.bv,Ta.prototype.multiply=Ta.prototype.multiply,Ta.prototype.reset=Ta.prototype.reset,Ta.prototype.isIdentity=Ta.prototype.ws,Ta.prototype.equals=Ta.prototype.D,Ta.prototype.setTransform=Ta.prototype.setTransform,Ta.prototype.set=Ta.prototype.set;var mh=[];Ta.className="Transform",Ta.xF="54a702f3e53909c447824c6706603faf4c";var cr={AA:"7da71ca0ad381e90",wg:(Math.sqrt(2)-1)/3*4,Uv:null,sqrt:function(a){if(0>=a)return 0;var y=cr.Uv;if(y===null){y=[];for(var ee=0;2e3>=ee;ee++)y[ee]=Math.sqrt(ee);cr.Uv=y}return 1>a?(ee=1/a,2e3>=ee?1/y[ee|0]:Math.sqrt(a)):2e3>=a?y[a|0]:Math.sqrt(a)},B:function(a,y){return a-=y,.5>a&&-.5a&&-5e-8=se&&(se=1e-6),aQe-Ye)if(a-ee>se||ee-a>se){if(ue=(ne-y)/(ee-a)*(ue-a)+y,ue-se<=me&&me<=ue+se)return!0}else return!0;else if(y-ne>se||ne-y>se){if(me=(ee-a)/(ne-y)*(me-y)+a,me-se<=ue&&ue<=me+se)return!0}else return!0;return!1},cs:function(a,y,ee,ne,se,ue,me,Ce,Fe,Ye,Qe,at){if(cr.Yb(a,y,me,Ce,at,ee,ne)&&cr.Yb(a,y,me,Ce,at,se,ue))return cr.Yb(a,y,me,Ce,at,Ye,Qe);var mt=(a+ee)/2,Lt=(y+ne)/2,kt=(ee+se)/2,Xt=(ne+ue)/2;se=(se+me)/2,ue=(ue+Ce)/2,ne=(mt+kt)/2,ee=(Lt+Xt)/2,kt=(kt+se)/2,Xt=(Xt+ue)/2;var bn=(ne+kt)/2,gn=(ee+Xt)/2;return cr.cs(a,y,mt,Lt,ne,ee,bn,gn,Fe,Ye,Qe,at)||cr.cs(bn,gn,kt,Xt,se,ue,me,Ce,Fe,Ye,Qe,at)},ax:function(a,y,ee,ne,se,ue,me,Ce,Fe){var Ye=(ee+se)/2,Qe=(ne+ue)/2;return Fe.h((((a+ee)/2+Ye)/2+(Ye+(se+me)/2)/2)/2,(((y+ne)/2+Qe)/2+(Qe+(ue+Ce)/2)/2)/2),Fe},My:function(a,y,ee,ne,se,ue,me,Ce){var Fe=(ee+se)/2,Ye=(ne+ue)/2;return la(((a+ee)/2+Fe)/2,((y+ne)/2+Ye)/2,(Fe+(se+me)/2)/2,(Ye+(ue+Ce)/2)/2)},Dl:function(a,y,ee,ne,se,ue,me,Ce,Fe,Ye){if(cr.Yb(a,y,me,Ce,Fe,ee,ne)&&cr.Yb(a,y,me,Ce,Fe,se,ue))Cs(Ye,a,y,0,0),Cs(Ye,me,Ce,0,0);else{var Qe=(a+ee)/2,at=(y+ne)/2,mt=(ee+se)/2,Lt=(ne+ue)/2;se=(se+me)/2,ue=(ue+Ce)/2,ne=(Qe+mt)/2,ee=(at+Lt)/2,mt=(mt+se)/2,Lt=(Lt+ue)/2;var kt=(ne+mt)/2,Xt=(ee+Lt)/2;cr.Dl(a,y,Qe,at,ne,ee,kt,Xt,Fe,Ye),cr.Dl(kt,Xt,mt,Lt,se,ue,me,Ce,Fe,Ye)}return Ye},Qe:function(a,y,ee,ne,se,ue,me,Ce,Fe,Ye){if(cr.Yb(a,y,me,Ce,Fe,ee,ne)&&cr.Yb(a,y,me,Ce,Fe,se,ue))Ye.length===0&&(Ye.push(a),Ye.push(y)),Ye.push(me),Ye.push(Ce);else{var Qe=(a+ee)/2,at=(y+ne)/2,mt=(ee+se)/2,Lt=(ne+ue)/2;se=(se+me)/2,ue=(ue+Ce)/2,ne=(Qe+mt)/2,ee=(at+Lt)/2,mt=(mt+se)/2,Lt=(Lt+ue)/2;var kt=(ne+mt)/2,Xt=(ee+Lt)/2;cr.Qe(a,y,Qe,at,ne,ee,kt,Xt,Fe,Ye),cr.Qe(kt,Xt,mt,Lt,se,ue,me,Ce,Fe,Ye)}return Ye},jv:function(a,y,ee,ne,se,ue,me,Ce,Fe,Ye){if(cr.Yb(a,y,se,ue,Ye,ee,ne))return cr.Yb(a,y,se,ue,Ye,Ce,Fe);var Qe=(a+ee)/2,at=(y+ne)/2;ee=(ee+se)/2,ne=(ne+ue)/2;var mt=(Qe+ee)/2,Lt=(at+ne)/2;return cr.jv(a,y,Qe,at,mt,Lt,me,Ce,Fe,Ye)||cr.jv(mt,Lt,ee,ne,se,ue,me,Ce,Fe,Ye)},OA:function(a,y,ee,ne,se,ue,me){return me.h(((a+ee)/2+(ee+se)/2)/2,((y+ne)/2+(ne+ue)/2)/2),me},iv:function(a,y,ee,ne,se,ue,me,Ce){if(cr.Yb(a,y,se,ue,me,ee,ne))Cs(Ce,a,y,0,0),Cs(Ce,se,ue,0,0);else{var Fe=(a+ee)/2,Ye=(y+ne)/2;ee=(ee+se)/2,ne=(ne+ue)/2;var Qe=(Fe+ee)/2,at=(Ye+ne)/2;cr.iv(a,y,Fe,Ye,Qe,at,me,Ce),cr.iv(Qe,at,ee,ne,se,ue,me,Ce)}return Ce},ep:function(a,y,ee,ne,se,ue,me,Ce){if(cr.Yb(a,y,se,ue,me,ee,ne))Ce.length===0&&(Ce.push(a),Ce.push(y)),Ce.push(se),Ce.push(ue);else{var Fe=(a+ee)/2,Ye=(y+ne)/2;ee=(ee+se)/2,ne=(ne+ue)/2;var Qe=(Fe+ee)/2,at=(Ye+ne)/2;cr.ep(a,y,Fe,Ye,Qe,at,me,Ce),cr.ep(Qe,at,ee,ne,se,ue,me,Ce)}return Ce},Eo:function(a,y,ee,ne,se,ue,me,Ce,Fe,Ye,Qe,at,mt,Lt){if(cr.Yb(a,y,me,Ce,mt,ee,ne)&&cr.Yb(a,y,me,Ce,mt,se,ue))return!cr.Rl(a,y,me,Ce,Fe,Ye,Qe,at)||(mt=(a-me)*(Ye-at)-(y-Ce)*(Fe-Qe),mt===0)?!1:(Lt.h(((a*Ce-y*me)*(Fe-Qe)-(a-me)*(Fe*at-Ye*Qe))/mt,((a*Ce-y*me)*(Ye-at)-(y-Ce)*(Fe*at-Ye*Qe))/mt),!0);var kt=(a+ee)/2,Xt=(y+ne)/2,bn=(ee+se)/2,gn=(ne+ue)/2;se=(se+me)/2,ue=(ue+Ce)/2,ne=(kt+bn)/2,ee=(Xt+gn)/2,bn=(bn+se)/2,gn=(gn+ue)/2;var _n=(ne+bn)/2,jn=(ee+gn)/2,Yn=1/0,nr=!1,Or=0,Xi=0;return cr.Eo(a,y,kt,Xt,ne,ee,_n,jn,Fe,Ye,Qe,at,mt,Lt)&&(a=(Lt.x-Fe)*(Lt.x-Fe)+(Lt.y-Ye)*(Lt.y-Ye),a=Qe)return Lt;if((Fe>Qe?Fe-Qe:Qe-Fe)<(Ye>at?Ye-at:at-Ye)){if(ya)return Lt}else if(aa)return Lt;0mt&&Lt--}else{kt=(a+ee)/2,Xt=(y+ne)/2;var bn=(ee+se)/2,gn=(ne+ue)/2;se=(se+me)/2,ue=(ue+Ce)/2,ne=(kt+bn)/2,ee=(Xt+gn)/2,bn=(bn+se)/2,gn=(gn+ue)/2;var _n=(ne+bn)/2,jn=(ee+gn)/2;Lt+=cr.Fo(a,y,kt,Xt,ne,ee,_n,jn,Fe,Ye,Qe,at,mt),Lt+=cr.Fo(_n,jn,bn,gn,se,ue,me,Ce,Fe,Ye,Qe,at,mt)}return Lt},qh:function(a,y,ee,ne,se,ue,me){return cr.$(a,ee)?(yy?(me.h(a,y),!1):(me.h(a,ue),!0)):cr.$(y,ne)?(aa?(me.h(a,y),!1):(me.h(se,y),!0)):(se=((a-se)*(a-ee)+(y-ue)*(y-ne))/((ee-a)*(ee-a)+(ne-y)*(ne-y)),-5e-6>se?(me.h(a,y),!1):1.000005y?(Fe.h(a,y),!1):(Fe.h(a,ee),!0)):(me=(ne-y)/(ee-a),cr.$(Ce,me)?(cr.qh(a,y,ee,ne,se,ue,Fe),!1):(se=(me*a-Ce*se+ue-y)/(me-Ce),cr.$(me,0)?(aa?(Fe.h(a,y),!1):(Fe.h(se,y),!0)):cr.qh(a,y,ee,ne,se,me*(se-a)+y,Fe))))},MA:function(a,y,ee,ne,se){return cr.Ve(ee.x,ee.y,ne.x,ne.y,a.x,a.y,y.x,y.y,se)},KA:function(a,y,ee,ne,se,ue,me,Ce,Fe,Ye){function Qe(bn,gn){var _n=(bn-a)*(bn-a)+(gn-y)*(gn-y);_n(ee>a?ee-a:a-ee)){if(mt=1-(ee-se)*(ee-se)/(mt*mt),0>mt)return Fe;mt=Math.sqrt(mt),ne=-Ye*mt+ue,Qe(ee,Ye*mt+ue),Qe(ee,ne)}else{if(ee=(ne-y)/(ee-a),ne=1/(mt*mt)+ee*ee/(Ye*Ye),Ce=2*ee*(y-ee*a)/(Ye*Ye)-2*ee*ue/(Ye*Ye)-2*se/(mt*mt),mt=Ce*Ce-4*ne*(2*ee*a*ue/(Ye*Ye)-2*y*ue/(Ye*Ye)+ue*ue/(Ye*Ye)+se*se/(mt*mt)-1+(y-ee*a)*(y-ee*a)/(Ye*Ye)),0>mt)return Fe;mt=Math.sqrt(mt),Ye=(-Ce+mt)/(2*ne),Qe(Ye,ee*Ye-ee*a+y),mt=(-Ce-mt)/(2*ne),Qe(mt,ee*mt-ee*a+y)}return Fe},Ff:function(a,y,ee,ne,se,ue,me,Ce,Fe){var Ye=1e21,Qe=a,at=y;if(cr.Ve(a,y,a,ne,se,ue,me,Ce,Fe)){var mt=(Fe.x-se)*(Fe.x-se)+(Fe.y-ue)*(Fe.y-ue);mtYe},us:function(a,y,ee){return cr.Fx(a.x,a.y,a.width,a.height,y.x,y.y,ee.x,ee.y)},Fx:function(a,y,ee,ne,se,ue,me,Ce){var Fe=a+ee,Ye=y+ne;return se===me?(ue=y):ue===Ce?(se=a):!!(wl(a,y,ee,ne,se,ue)||wl(a,y,ee,ne,me,Ce)||cr.Rl(a,y,Fe,y,se,ue,me,Ce)||cr.Rl(Fe,y,Fe,Ye,se,ue,me,Ce)||cr.Rl(Fe,Ye,a,Ye,se,ue,me,Ce)||cr.Rl(a,Ye,a,y,se,ue,me,Ce))},Rl:function(a,y,ee,ne,se,ue,me,Ce){return a===ee&&y===ne&&se===me&&ue===Ce?a===se&&y===ue:0>=cr.Fl(a,y,ee,ne,se,ue)*cr.Fl(a,y,ee,ne,me,Ce)&&0>=cr.Fl(se,ue,me,Ce,a,y)*cr.Fl(se,ue,me,Ce,ee,ne)},Fl:function(a,y,ee,ne,se,ue){return ee-=a,ne-=y,a=se-a,y=ue-y,ue=a*ne-y*ee,ue===0&&(ue=a*ee+y*ne,0ue&&(ue=0))),ue},bp:function(a){return 0>a&&(a+=360),360<=a&&(a-=360),a},jx:function(a,y,ee,ne,se,ue){var me=Math.PI;ue||(ne*=me/180,se*=me/180);var Ce=ne>se?-1:1;ue=[];var Fe=me/2,Ye=ne;if(ne=Math.min(2*me,Math.abs(se-ne)),1e-5>ne)return Fe=Ye+Ce*Math.min(ne,Fe),Ce=a+ee*Math.cos(Ye),Ye=y+ee*Math.sin(Ye),a+=ee*Math.cos(Fe),y+=ee*Math.sin(Fe),ee=(Ce+a)/2,Fe=(Ye+y)/2,ue.push([Ce,Ye,ee,Fe,ee,Fe,a,y]),ue;for(;1e-5ee,ue=0>ne;if(aYe&&(y=.5*(Ce+Fe),!(y===Ce||y===Fe));++Ye){var Qe=a/(y+se),at=me/(y+ue);if(Qe=Qe*Qe+at*at-1,0Qe)Fe=y;else break}ee=se*ee/(y+se)-ee,ne=ue*ne/(y+ue)-ne,ee=Math.sqrt(ee*ee+ne*ne)}else ee=Math.abs(ne-y);else ne=a*a-y*y,ue=a*ee,uea?"M"+this.startX.toString()+" "+this.startY.toString()+"L"+this.endX.toString()+" "+this.endY.toString():"M"+this.startX.toFixed(a)+" "+this.startY.toFixed(a)+"L"+this.endX.toFixed(a)+" "+this.endY.toFixed(a);case Ci.u:var y=new Pr(this.startX,this.startY,0,0);return y.Kv(this.endX,this.endY,0,0),0>a?"M"+y.x.toString()+" "+y.y.toString()+"H"+y.right.toString()+"V"+y.bottom.toString()+"H"+y.left.toString()+"z":"M"+y.x.toFixed(a)+" "+y.y.toFixed(a)+"H"+y.right.toFixed(a)+"V"+y.bottom.toFixed(a)+"H"+y.left.toFixed(a)+"z";case Ci.F:if(y=new Pr(this.startX,this.startY,0,0),y.Kv(this.endX,this.endY,0,0),0>a)return a=y.left.toString()+" "+(y.y+y.height/2).toString(),"M"+a+"A"+(y.width/2).toString()+" "+(y.height/2).toString()+" 0 0 1 "+(y.right.toString()+" "+(y.y+y.height/2).toString())+"A"+(y.width/2).toString()+" "+(y.height/2).toString()+" 0 0 1 "+a;var ee=y.left.toFixed(a)+" "+(y.y+y.height/2).toFixed(a);return"M"+ee+"A"+(y.width/2).toFixed(a)+" "+(y.height/2).toFixed(a)+" 0 0 1 "+(y.right.toFixed(a)+" "+(y.y+y.height/2).toFixed(a))+"A"+(y.width/2).toFixed(a)+" "+(y.height/2).toFixed(a)+" 0 0 1 "+ee;case Ci.o:y="",ee=this.figures.s;for(var ne=ee.length,se=0;se=Yn-1?!0:Ye[Xt+1].match(nr)!==null}function ne(){return Xt++,Ye[Xt]}function se(La){var ya=parseFloat(ne()),zs=parseFloat(ne());bn===bn.toLowerCase()&&(ya=jn.x+ya,zs=jn.y+zs),La.h(ya,zs)}function ue(){return se(jn),jn}function me(){return se(_n),_n}function Ce(){var La=gn.toLowerCase();return La!=="c"&&La!=="s"&&La!=="q"&&La!=="t"?jn:new fn(2*jn.x-_n.x,2*jn.y-_n.y)}y===void 0&&(y=!1);var Fe=/([UuBbMmZzLlHhVvCcSsQqTtAaFfXx])([UuBbMmZzLlHhVvCcSsQqTtAaFfXx])/gm;a=a.replace(/,/gm," "),a=a.replace(Fe,"$1 $2"),a=a.replace(Fe,"$1 $2"),a=a.replace(/([UuBbMmZzLlHhVvCcSsQqTtAaFfXx])([^s])/gm,"$1 $2"),a=a.replace(/([^s])([UuBbMmZzLlHhVvCcSsQqTtAaFfXx])/gm,"$1 $2"),a=a.replace(/([0-9])([+\-])/gm,"$1 $2"),a=a.replace(/[\s\r\t\n]+/gm," "),a=a.replace(/^\s+|\s+$/g,"");var Ye=a.split(" ");for(a=0;a=Yn-1);)if(gn=bn,bn=ne(),bn!=="")switch(bn.toUpperCase()){case"X":Lt=!0,at=Qe=!1;break;case"M":for(kt=ue(),a.mc===null||Lt===!0?(Sy(a,kt.x,kt.y,Qe,!at,mt),Lt=!1):a.moveTo(kt.x,kt.y),Fe.assign(jn);!ee();)kt=ue(),a.lineTo(kt.x,kt.y);break;case"L":for(;!ee();)kt=ue(),a.lineTo(kt.x,kt.y);break;case"H":for(;!ee();)jn=new fn((bn===bn.toLowerCase()?jn.x:0)+parseFloat(ne()),jn.y),a.lineTo(jn.x,jn.y);break;case"V":for(;!ee();)jn=new fn(jn.x,(bn===bn.toLowerCase()?jn.y:0)+parseFloat(ne())),a.lineTo(jn.x,jn.y);break;case"C":for(;!ee();){kt=new fn,se(kt);var Or=me(),Xi=ue();Q0(a,kt.x,kt.y,Or.x,Or.y,Xi.x,Xi.y)}break;case"S":for(;!ee();)kt=Ce(),Or=me(),Xi=ue(),Q0(a,kt.x,kt.y,Or.x,Or.y,Xi.x,Xi.y);break;case"Q":for(;!ee();)kt=me(),Or=ue(),Tw(a,kt.x,kt.y,Or.x,Or.y);break;case"T":for(;!ee();)_n=kt=Ce(),Or=ue(),Tw(a,kt.x,kt.y,Or.x,Or.y);break;case"B":for(;!ee();){kt=parseFloat(ne()),Or=parseFloat(ne()),Xi=parseFloat(ne());var po=parseFloat(ne()),ao=parseFloat(ne()),Di=ao,hi=!1;ee()||(Di=parseFloat(ne()),ee()||(hi=parseFloat(ne())!==0)),bn===bn.toLowerCase()&&(Xi+=jn.x,po+=jn.y),a.arcTo(kt,Or,Xi,po,ao,Di,hi)}break;case"A":for(;!ee();)kt=Math.abs(parseFloat(ne())),Or=Math.abs(parseFloat(ne())),Xi=parseFloat(ne()),ao=po=!1,hi=Di=0,Di=ne(),Di.length===1?(po=!!parseFloat(Di),ao=!!parseFloat(ne()),Di=parseFloat(ne())):Di.length===2?(po=!!parseFloat(Di[0]),ao=!!parseFloat(Di[1]),Di=parseFloat(ne())):(po=!!parseFloat(Di[0]),ao=!!parseFloat(Di[1]),Di=parseFloat(Di.slice(2))),hi=parseFloat(ne()),bn===bn.toLowerCase()&&(Di=jn.x+Di,hi=jn.y+hi),jn.h(Di,hi),xI(a,kt,Or,Xi,po,ao,Di,hi);break;case"Z":Y2(a),jn.assign(Fe);break;case"F":for(kt="",Or=1;Ye[Xt+Or];)if(Ye[Xt+Or]==="0")mt=!0,Or++;else if(Ye[Xt+Or].match(/[Uu]/)!==null)Or++;else if(Ye[Xt+Or].match(nr)===null)Or++;else{kt=Ye[Xt+Or];break}kt.match(/[Mm]/)?Qe=!0:0me&&(me+=360),kt.startAngle+=me),0>a&&(kt.startAngle=180-kt.startAngle,kt.sweepAngle=-kt.sweepAngle),0>ne&&(kt.startAngle=-kt.startAngle,kt.sweepAngle=-kt.sweepAngle),kt.radiusX*=Math.sqrt(a*a+ee*ee),kt.radiusY!==void 0&&(kt.radiusY*=Math.sqrt(y*y+ne*ne));break;case Ln:if(me=kt.endX,Ce=kt.endY,kt.endX=me*a+Ce*ee+se,kt.endY=me*y+Ce*ne+ue,kt.radiusX===0||kt.radiusY===0)break;y!==0&&(me=180*Math.atan2(y,a)/Math.PI,0>me&&(me+=360),kt.xAxisRotation+=me),0>a&&(kt.xAxisRotation=180-kt.xAxisRotation,kt.isClockwiseArc=!kt.isClockwiseArc),0>ne&&(kt.xAxisRotation=-kt.xAxisRotation,kt.isClockwiseArc=!kt.isClockwiseArc),kt.radiusX*=Math.sqrt(a*a+ee*ee),kt.radiusY*=Math.sqrt(y*y+ne*ne);break;default:tn("Unknown Segment type: "+kt.type)}}}}return this._isInvalidBounds=!0,this},Rt.ca=function(a,y){y===void 0&&(y=0);var ee=this.od,ne=this.pd,se=this.Dc,ue=this.Ec;switch(this.type){case Ci.j:return cr.Yb(ee,ne,se,ue,y,a.x,a.y);case Ci.u:var me=Pr.allocAt(Math.min(ee,se)-y,Math.min(ne,ue)-y,Math.abs(se-ee)+2*y,Math.abs(ue-ne)+2*y);return a=me.ca(a),Pr.free(me),a;case Ci.F:me=Math.min(ee,se)-y;var Ce=Math.min(ne,ue)-y;return ee=(Math.abs(se-ee)+2*y)/2,y=(Math.abs(ue-ne)+2*y)/2,0>=ee||0>=y?!1:(me=a.x-(me+ee),Ce=a.y-(Ce+y),1>=me*me/(ee*ee)+Ce*Ce/(y*y));case Ci.o:return oo(this,a,y,!0,!1);default:return!1}};function oo(a,y,ee,ne,se){var ue=y.x;y=y.y;for(var me=a.bounds.x-20,Ce=0,Fe,Ye,Qe,at,mt=a.figures.s,Lt=mt.length,kt=0;kt=a)return 0;if((se>me?se-me:me-se)<(ue>Ce?ue-Ce:Ce-ue)){if(ueCe)return 0}else if(yue)return 0}else if(seme)return 0}else if(Yese)return 0;return 0a?a=0:1=ue)return ne=ue-me,ne=Qe===0?0:ne/Qe,ee=ee[Ce],Ce=ee[2*a],se=ee[2*a+1],y.h(Ce+(ee[2*a+2]-Ce)*ne,se+(ee[2*a+3]-se)*ne),y;me+=Qe}}return y},Rt.wx=function(a){if(0>a?a=0:1=se)return se=y[me],y=se[2*a],ee=se[2*a+1],ne=se[2*a+2],a=se[2*a+3],1>Math.abs(ne-y)&&1>Math.abs(a-ee)?0:1>Math.abs(ne-y)?0<=a-ee?90:270:1>Math.abs(a-ee)?0<=ne-y?0:180:180*Math.atan2(a-ee,ne-y)/Math.PI;ue+=Ye}}return NaN},Rt.Qu=function(a,y){if(0>a?a=0:1=ue)return ne=ue-me,ne=Qe===0?0:ne/Qe,Qe=ee[Ce],ee=Qe[2*a],Ce=Qe[2*a+1],se=Qe[2*a+2],a=Qe[2*a+3],y[0]=ee+(se-ee)*ne,y[1]=Ce+(a-Ce)*ne,y[2]=1>Math.abs(se-ee)&&1>Math.abs(a-Ce)?0:1>Math.abs(se-ee)?0<=a-Ce?90:270:1>Math.abs(a-Ce)?0<=se-ee?0:180:180*Math.atan2(a-Ce,se-ee)/Math.PI,y;me+=Qe}}return y},Rt.xx=function(a){if(this.type===Ci.j){var y=this.startX,ee=this.startY,ne=this.endX,se=this.endY;if(y!==ne||ee!==se){var ue=a.x;if(a=a.y,y===ne){if(ee=ne?ne===ee?0:1:Math.abs(a-ee)/(ne-me)}if(ee===se)return y=ne?ne===y?0:1:Math.abs(ue-y)/(ne-me);me=(ne-y)*(ne-y)+(se-ee)*(se-ee);var Ce=fn.alloc();return cr.qh(y,ee,ne,se,ue,a,Ce),a=Ce.x,ue=Ce.y,fn.free(Ce),Math.sqrt(((a-y)*(a-y)+(ue-ee)*(ue-ee))/me)}}else if(this.type===Ci.u){me=this.startX,Ce=this.startY;var Fe=this.endX;if(se=this.endY,me!==Fe||Ce!==se){y=Fe-me,ee=se-Ce,ue=2*y+2*ee,ne=a.x,a=a.y,ne=Math.min(Math.max(ne,me),Fe),a=Math.min(Math.max(a,Ce),se),me=Math.abs(ne-me),Fe=Math.abs(ne-Fe),Ce=Math.abs(a-Ce),se=Math.abs(a-se);var Ye=Math.min(me,Fe,Ce,se);if(Ye===Ce)return ne/ue;if(Ye===Fe)return(y+a)/ue;if(Ye===se)return(2*y+ee-ne)/ue;if(Ye===me)return(2*y+2*ee-a)/ue}}else{y=this.flattenedSegments,ee=this.flattenedLengths,ue=this.flattenedTotalLength,ne=fn.alloc(),se=1/0,Ce=me=0,Fe=y.length;for(var Qe=Ye=0,at=0;ata?0:1a?"M"+this.startX.toString()+" "+this.startY.toString():"M"+this.startX.toFixed(a)+" "+this.startY.toFixed(a),ee=this.segments.s,ne=ee.length,se=0;sea&&(a+=360),this.Ne=a,this.Vh=0,this.Wh=Math.max(ne,0),this.Pg=Math.max(se,0),typeof me=="boolean"?me&&(this.isLargeArc=!0):typeof me=="number"&&me&&(this.isLargeArc=!0),Ce&&(this.isClockwiseArc=!0)):(this.Ne=ne,this.Vh=se,a===En&&(ue=Math.max(ue,0)),this.Wh=ue,typeof me=="number"?(a===En&&(me=Math.max(me,0)),this.Pg=me):this.Pg=0),this.ae=null}gs.prototype.copy=function(){var a=new gs;return a.na=this.na,a.l=this.l&-2,a.Dc=this.Dc,a.Ec=this.Ec,a.Ne=this.Ne,a.Vh=this.Vh,a.Wh=this.Wh,a.Pg=this.Pg,a},Rt=gs.prototype,Rt.Xa=function(a){if(!(a instanceof gs)||this.type!==a.type||this.isClosed!==a.isClosed)return!1;switch(this.type){case lu:case Us:return cr.B(this.endX,a.endX)&&cr.B(this.endY,a.endY);case oc:return cr.B(this.endX,a.endX)&&cr.B(this.endY,a.endY)&&cr.B(this.point1X,a.point1X)&&cr.B(this.point1Y,a.point1Y)&&cr.B(this.point2X,a.point2X)&&cr.B(this.point2Y,a.point2Y);case cn:return cr.B(this.endX,a.endX)&&cr.B(this.endY,a.endY)&&cr.B(this.point1X,a.point1X)&&cr.B(this.point1Y,a.point1Y);case En:return cr.B(this.startAngle,a.startAngle)&&cr.B(this.sweepAngle,a.sweepAngle)&&cr.B(this.centerX,a.centerX)&&cr.B(this.centerY,a.centerY)&&cr.B(this.radiusX,a.radiusX)&&cr.B(this.radiusY,a.radiusY);case Ln:return this.isClockwiseArc===a.isClockwiseArc&&this.isLargeArc===a.isLargeArc&&cr.B(this.xAxisRotation,a.xAxisRotation)&&cr.B(this.endX,a.endX)&&cr.B(this.endY,a.endY)&&cr.B(this.radiusX,a.radiusX)&&cr.B(this.radiusY,a.radiusY);default:return!1}},Rt.qb=function(a){a.classType===gs&&(this.type=a)},Rt.toString=function(a){switch(a===void 0&&(a=-1),this.type){case lu:a=0>a?"M"+this.endX.toString()+" "+this.endY.toString():"M"+this.endX.toFixed(a)+" "+this.endY.toFixed(a);break;case Us:a=0>a?"L"+this.endX.toString()+" "+this.endY.toString():"L"+this.endX.toFixed(a)+" "+this.endY.toFixed(a);break;case oc:a=0>a?"C"+this.point1X.toString()+" "+this.point1Y.toString()+" "+this.point2X.toString()+" "+this.point2Y.toString()+" "+this.endX.toString()+" "+this.endY.toString():"C"+this.point1X.toFixed(a)+" "+this.point1Y.toFixed(a)+" "+this.point2X.toFixed(a)+" "+this.point2Y.toFixed(a)+" "+this.endX.toFixed(a)+" "+this.endY.toFixed(a);break;case cn:a=0>a?"Q"+this.point1X.toString()+" "+this.point1Y.toString()+" "+this.endX.toString()+" "+this.endY.toString():"Q"+this.point1X.toFixed(a)+" "+this.point1Y.toFixed(a)+" "+this.endX.toFixed(a)+" "+this.endY.toFixed(a);break;case En:a=0>a?"B"+this.startAngle.toString()+" "+this.sweepAngle.toString()+" "+this.centerX.toString()+" "+this.centerY.toString()+" "+this.radiusX.toString()+" "+this.radiusY.toString():"B"+this.startAngle.toFixed(a)+" "+this.sweepAngle.toFixed(a)+" "+this.centerX.toFixed(a)+" "+this.centerY.toFixed(a)+" "+this.radiusX.toFixed(a)+" "+this.radiusY.toFixed(a);break;case Ln:a=0>a?"A"+this.radiusX.toString()+" "+this.radiusY.toString()+" "+this.xAxisRotation.toString()+" "+(this.isLargeArc?1:0)+" "+(this.isClockwiseArc?1:0)+" "+this.endX.toString()+" "+this.endY.toString():"A"+this.radiusX.toFixed(a)+" "+this.radiusY.toFixed(a)+" "+this.xAxisRotation.toFixed(a)+" "+(this.isLargeArc?1:0)+" "+(this.isClockwiseArc?1:0)+" "+this.endX.toFixed(a)+" "+this.endY.toFixed(a);break;default:a=this.type.toString()}return a+(this.isClosed?"z":"")},Rt.freeze=function(){return this._isFrozen=!0,this},Rt.ka=function(){return this._isFrozen=!1,this},Rt.close=function(){return this.isClosed=!0,this};function hc(a,y){if(a.ae!==null&&y._isInvalidBounds===!1)return a.ae;var ee=a.radiusX,ne=a.radiusY;if(ne===void 0&&(ne=ee),ee===0||ne===0)return a.ae=[],a.ae;y=a.Ne;var se=a.Vh,ue=cr.jx(0,0,ee=Lt?me=Math.PI:1<=Lt&&(me=0),!Fe&&0me&&(me+=2*Math.PI),Fe=y>ue?1:y/ue,Lt=y>ue?ue/y:1,y=cr.jx(0,0,y>ue?y:ue,Qe,Qe+me,!0),ue=Ta.alloc(),ue.reset(),ue.translate(ee,ne),ue.rotate(a.Ne,0,0),ue.scale(Fe,Lt),Ci.Ha(y,ue),Ta.free(ue),a.ae=y,a.ae}De.Object.defineProperties(gs.prototype,{_isFrozen:{get:function(){return(this.l&1)!==0},set:function(a){this.l=a?this.l|1:this.l&-2}},_isInvalidBounds:{get:function(){return(this.l&2)!==0},set:function(a){this.l=a?this.l|2:this.l&-3}},isClosed:{get:function(){return(this.l&8)!==0},set:function(a){this.isClosed!==a&&(this.l=a?this.l|8:this.l&-9,this._isInvalidBounds=!0)}},type:{get:function(){return this.na},set:function(a){this._isFrozen&&Vn(this,a),this.na=a,this._isInvalidBounds=!0}},endX:{get:function(){return this.Dc},set:function(a){this._isFrozen&&Vn(this,a),this.Dc=a,this._isInvalidBounds=!0}},endY:{get:function(){return this.Ec},set:function(a){this._isFrozen&&Vn(this,a),this.Ec=a,this._isInvalidBounds=!0}},point1X:{get:function(){return this.Ne},set:function(a){this._isFrozen&&Vn(this,a),this.Ne=a,this._isInvalidBounds=!0}},point1Y:{get:function(){return this.Vh},set:function(a){this._isFrozen&&Vn(this,a),this.Vh=a,this._isInvalidBounds=!0}},point2X:{get:function(){return this.Wh},set:function(a){this._isFrozen&&Vn(this,a),this.Wh=a,this._isInvalidBounds=!0}},point2Y:{get:function(){return this.Pg},set:function(a){this._isFrozen&&Vn(this,a),this.Pg=a,this._isInvalidBounds=!0}},centerX:{get:function(){return this.Ne},set:function(a){this._isFrozen&&Vn(this,a),this.Ne=a,this._isInvalidBounds=!0}},centerY:{get:function(){return this.Vh},set:function(a){this._isFrozen&&Vn(this,a),this.Vh=a,this._isInvalidBounds=!0}},radiusX:{get:function(){return this.Wh},set:function(a){0>a&&tr(a,">= zero",gs,"radiusX"),this._isFrozen&&Vn(this,a),this.Wh=a,this._isInvalidBounds=!0}},radiusY:{get:function(){return this.Pg},set:function(a){0>a&&tr(a,">= zero",gs,"radiusY"),this._isFrozen&&Vn(this,a),this.Pg=a,this._isInvalidBounds=!0}},startAngle:{get:function(){return this.Dc},set:function(a){this._isFrozen&&Vn(this,a),a%=360,0>a&&(a+=360),this.Dc=a,this._isInvalidBounds=!0}},sweepAngle:{get:function(){return this.Ec},set:function(a){this._isFrozen&&Vn(this,a),360a&&(a=-360),this.Ec=a,this._isInvalidBounds=!0}},isClockwiseArc:{get:function(){return(this.l&4)!==0},set:function(a){this._isFrozen&&Vn(this,a),this.l=a?this.l|4:this.l&-5,this._isInvalidBounds=!0}},isLargeArc:{get:function(){return(this.l&16)!==0},set:function(a){this._isFrozen&&Vn(this,a),this.l=a?this.l|16:this.l&-17,this._isInvalidBounds=!0}},xAxisRotation:{get:function(){return this.Ne},set:function(a){this._isFrozen&&Vn(this,a),a%=360,0>a&&(a+=360),this.Ne=a,this._isInvalidBounds=!0}}}),gs.prototype.equalsApprox=gs.prototype.Xa;var lu=new wr(gs,"Move",0),Us=new wr(gs,"Line",1),oc=new wr(gs,"Bezier",2),cn=new wr(gs,"QuadraticBezier",3),En=new wr(gs,"Arc",4),Ln=new wr(gs,"SvgArc",4);gs.className="PathSegment",gs.Move=lu,gs.Line=Us,gs.Bezier=oc,gs.QuadraticBezier=cn,gs.Arc=En,gs.SvgArc=Ln;function Er(){this.H=null,this.xu=new fn(0,0).freeze(),this.mt=new fn(0,0).freeze(),this.Bp=this.Rq=0,this.Cp=1,this.xq="",this.Wr=this.Tp=!1,this.Rp=this.Ep=0,this.xg=this.nq=this.tq=!1,this.Zp=null,this.Rr=0,this.xd=this.Nr=null}Er.prototype.copy=function(){var a=new Er;return this.clone(a)},Er.prototype.clone=function(a){return a.H=this.H,a.xu.assign(this.viewPoint),a.mt.assign(this.documentPoint),a.Rq=this.Rq,a.Bp=this.Bp,a.Cp=this.Cp,a.xq=this.xq,a.Tp=this.Tp,a.Wr=this.Wr,a.Ep=this.Ep,a.Rp=this.Rp,a.tq=this.tq,a.nq=this.nq,a.xg=this.xg,a.Zp=this.Zp,a.Rr=this.Rr,a.Nr=this.Nr,a.xd=this.xd,a},Er.prototype.toString=function(){var a="^";return this.modifiers!==0&&(a+="M:"+this.modifiers),this.button!==0&&(a+="B:"+this.button),this.key!==""&&(a+="K:"+this.key),this.clickCount!==0&&(a+="C:"+this.clickCount),this.delta!==0&&(a+="D:"+this.delta),this.handled&&(a+="h"),this.bubbles&&(a+="b"),this.documentPoint!==null&&(a+="@"+this.documentPoint.toString()),a},Er.prototype.So=function(a,y){var ee=this.diagram;return ee===null||a0(ee,a,y),y},Er.prototype.Bz=function(a,y){var ee=this.diagram;return ee===null||(a0(ee,a,y),y.assign(ee.Ps(y))),y},De.Object.defineProperties(Er.prototype,{diagram:{get:function(){return this.H},set:function(a){this.H=a}},viewPoint:{get:function(){return this.xu},set:function(a){this.xu.assign(a)}},documentPoint:{get:function(){return this.mt},set:function(a){this.mt.assign(a)}},modifiers:{get:function(){return this.Rq},set:function(a){this.Rq=a}},button:{get:function(){return this.Bp},set:function(a){if(this.Bp=a,this.event===null)switch(a){case 0:this.buttons=1;break;case 1:this.buttons=4;break;case 2:this.buttons=2}}},buttons:{get:function(){return this.Cp},set:function(a){this.Cp=a}},key:{get:function(){return this.xq},set:function(a){this.xq=a}},down:{get:function(){return this.Tp},set:function(a){this.Tp=a}},up:{get:function(){return this.Wr},set:function(a){this.Wr=a}},clickCount:{get:function(){return this.Ep},set:function(a){this.Ep=a}},delta:{get:function(){return this.Rp},set:function(a){this.Rp=a}},isMultiTouch:{get:function(){return this.tq},set:function(a){this.tq=a}},handled:{get:function(){return this.nq},set:function(a){this.nq=a}},bubbles:{get:function(){return this.xg},set:function(a){this.xg=a}},event:{get:function(){return this.Zp},set:function(a){this.Zp=a}},isTouchEvent:{get:function(){var a=this.event;return a===null?!1:a.pointerType==="touch"||a.pointerType==="pen"}},timestamp:{get:function(){return this.Rr},set:function(a){this.Rr=a}},targetDiagram:{get:function(){return this.Nr},set:function(a){this.Nr=a}},targetObject:{get:function(){return this.xd},set:function(a){this.xd=a}},control:{get:function(){return(this.modifiers&1)!==0},set:function(a){this.modifiers=a?this.modifiers|1:this.modifiers&-2}},shift:{get:function(){return(this.modifiers&4)!==0},set:function(a){this.modifiers=a?this.modifiers|4:this.modifiers&-5}},alt:{get:function(){return(this.modifiers&2)!==0},set:function(a){this.modifiers=a?this.modifiers|2:this.modifiers&-3}},meta:{get:function(){return(this.modifiers&8)!==0},set:function(a){this.modifiers=a?this.modifiers|8:this.modifiers&-9}},left:{get:function(){var a=this.event;return a===null||a.type!=="mousedown"&&a.type!=="mouseup"&&a.type!=="pointerdown"&&a.type!=="pointerup"?(this.buttons&1)!==0:this.button===0},set:function(a){this.buttons=a?this.buttons|1:this.buttons&-2}},right:{get:function(){var a=this.event;return a===null||a.type!=="mousedown"&&a.type!=="mouseup"&&a.type!=="pointerdown"&&a.type!=="pointerup"?(this.buttons&2)!==0:this.button===2},set:function(a){this.buttons=a?this.buttons|2:this.buttons&-3}},middle:{get:function(){var a=this.event;return a===null||a.type!=="mousedown"&&a.type!=="mouseup"&&a.type!=="pointerdown"&&a.type!=="pointerup"?(this.buttons&4)!==0:this.button===1},set:function(a){this.buttons=a?this.buttons|4:this.buttons&-5}}}),Er.prototype.getMultiTouchDocumentPoint=Er.prototype.Bz,Er.prototype.getMultiTouchViewPoint=Er.prototype.So,Er.className="InputEvent";function xr(){this.H=null,this.xa="",this.ar=this.Lr=null}xr.prototype.copy=function(){var a=new xr;return a.H=this.H,a.xa=this.xa,a.Lr=this.Lr,a.ar=this.ar,a},xr.prototype.toString=function(){var a="*"+this.name;return this.subject!==null&&(a+=":"+this.subject.toString()),this.parameter!==null&&(a+="("+this.parameter.toString()+")"),a},De.Object.defineProperties(xr.prototype,{diagram:{get:function(){return this.H},set:function(a){this.H=a}},name:{get:function(){return this.xa},set:function(a){this.xa=a}},subject:{get:function(){return this.Lr},set:function(a){this.Lr=a}},parameter:{get:function(){return this.ar},set:function(a){this.ar=a}}}),xr.className="DiagramEvent";function Yr(){this.Fm=Ei,this.rf=this.Qq="",this.Ln=this.Mn=this.Rn=this.Sn=this.Qn=this.H=this.cc=null}Yr.prototype.clear=function(){this.Ln=this.Mn=this.Rn=this.Sn=this.Qn=this.H=this.cc=null},Yr.prototype.copy=function(){var a=new Yr;a.Fm=this.Fm,a.Qq=this.Qq,a.rf=this.rf,a.cc=this.cc,a.H=this.H,a.Qn=this.Qn;var y=this.Sn;return a.Sn=Bn(y)&&typeof y.J=="function"?y.J():y,y=this.Rn,a.Rn=Bn(y)&&typeof y.J=="function"?y.J():y,y=this.Mn,a.Mn=Bn(y)&&typeof y.J=="function"?y.J():y,y=this.Ln,a.Ln=Bn(y)&&typeof y.J=="function"?y.J():y,a},Yr.prototype.qb=function(a){a.classType===Yr&&(this.change=a)},Yr.prototype.toString=function(){var a="";return a=this.change===$r?a+"* ":this.change===Ei?a+(this.model!==null?"!m":"!d"):a+((this.model!==null?"!m":"!d")+this.change),this.propertyName&&typeof this.propertyName=="string"&&(a+=" "+this.propertyName),this.modelChange&&this.modelChange!==this.propertyName&&(a+=" "+this.modelChange),a+=": ",this.change===$r?this.oldValue!==null&&(a+=" "+this.oldValue):(this.object!==null&&(a+=Br(this.object)),this.oldValue!==null&&(a+=" old: "+Br(this.oldValue)),this.oldParam!==null&&(a+=" "+this.oldParam),this.newValue!==null&&(a+=" new: "+Br(this.newValue)),this.newParam!==null&&(a+=" "+this.newParam)),a},Yr.prototype.I=function(a){return a?this.oldValue:this.newValue},Yr.prototype.Dz=function(a){return a?this.oldParam:this.newParam},Yr.prototype.canUndo=function(){return this.model!==null||this.diagram!==null},Yr.prototype.undo=function(){this.canUndo()&&(this.model!==null?this.model.changeState(this,!0):this.diagram!==null&&this.diagram.changeState(this,!0))},Yr.prototype.canRedo=function(){return this.model!==null||this.diagram!==null},Yr.prototype.redo=function(){this.canRedo()&&(this.model!==null?this.model.changeState(this,!1):this.diagram!==null&&this.diagram.changeState(this,!1))},De.Object.defineProperties(Yr.prototype,{model:{get:function(){return this.cc},set:function(a){this.cc=a}},diagram:{get:function(){return this.H},set:function(a){this.H=a}},change:{get:function(){return this.Fm},set:function(a){this.Fm=a}},modelChange:{get:function(){return this.Qq},set:function(a){this.Qq=a}},propertyName:{get:function(){return this.rf},set:function(a){this.rf=a}},isTransactionFinished:{get:function(){return this.Fm===$r&&(this.rf==="CommittedTransaction"||this.rf==="FinishedUndo"||this.rf==="FinishedRedo")}},object:{get:function(){return this.Qn},set:function(a){this.Qn=a}},oldValue:{get:function(){return this.Sn},set:function(a){this.Sn=a}},oldParam:{get:function(){return this.Rn},set:function(a){this.Rn=a}},newValue:{get:function(){return this.Mn},set:function(a){this.Mn=a}},newParam:{get:function(){return this.Ln},set:function(a){this.Ln=a}}}),Yr.prototype.redo=Yr.prototype.redo,Yr.prototype.canRedo=Yr.prototype.canRedo,Yr.prototype.undo=Yr.prototype.undo,Yr.prototype.canUndo=Yr.prototype.canUndo,Yr.prototype.getParam=Yr.prototype.Dz,Yr.prototype.getValue=Yr.prototype.I,Yr.prototype.clear=Yr.prototype.clear;var $r=new wr(Yr,"Transaction",-1),Ei=new wr(Yr,"Property",0),bi=new wr(Yr,"Insert",1),Zi=new wr(Yr,"Remove",2);Yr.className="ChangedEvent",Yr.Transaction=$r,Yr.Property=Ei,Yr.Insert=bi,Yr.Remove=Zi;function Oo(){this.o=new Zr().freeze(),this.xa="",this.j=!1}Oo.prototype.toString=function(a){var y="Transaction: "+this.name+" "+this.changes.count.toString()+(this.isComplete?"":", incomplete");if(a!==void 0&&0y&&a.cd(y,ne),y++);for(;a.length>y;)a.pop();a.freeze()}},De.Object.defineProperties(Oo.prototype,{changes:{get:function(){return this.o}},name:{get:function(){return this.xa},set:function(a){this.xa=a}},isComplete:{get:function(){return this.j},set:function(a){this.j=a}}}),Oo.prototype.optimize=Oo.prototype.ak,Oo.prototype.redo=Oo.prototype.redo,Oo.prototype.canRedo=Oo.prototype.canRedo,Oo.prototype.undo=Oo.prototype.undo,Oo.prototype.canUndo=Oo.prototype.canUndo,Oo.prototype.clear=Oo.prototype.clear,Oo.className="Transaction";function Hi(){this.Pt=new Xr,this.Jd=!1,this.u=new Zr().freeze(),this.Ce=-1,this.o=999,this.Fe=!1,this.Np=null,this.bi=0,this.j=!1,this.Ie=new Zr().freeze(),this.hl=new Zr,this.tt=!0,this.Dt=this.rq=this.Gt=this.Ft=!1}Hi.prototype.toString=function(a){var y="UndoManager "+this.historyIndex+"<"+this.history.count+"<="+this.maxHistoryLength;y+="[";for(var ee=this.nestedTransactionNames.count,ne=0;nea.transactionLevel&&dr("Ending transaction without having started a transaction: "+ee);var ne=a.transactionLevel===1,se=a.currentTransaction;ne&&y&&(a.isInternalTransaction||a.Ob("CommittingTransaction",ee,se));var ue=0;if(0=ne&&(ue=y.M(0),ue!==null&&ue.clear(),y.mb(0),a.Ce--)),ne===0||y.count!==0&&y.get(y.count-1)===se||(y.add(se),a.Ce++),y.freeze()),a.isInternalTransaction||a.Ob("CommittedTransaction",ee,se);else{a.Fe=!0;try{a.isEnabled&&se!==null&&(se.isComplete=!0,se.undo())}finally{a.isInternalTransaction||a.Ob("RolledBackTransaction",ee,se),a.Fe=!1}se!==null&&se.clear()}return a.Np=null,a.isPendingClear&&a.clear(),a.isPendingClear=!1,a.isPendingUnmodified=!1,!0}if(a.isEnabled&&!y&&se!==null){for(a=ue,ee=se.changes,se=ee.count-1;se>=a;se--)y=ee.M(se),y!==null&&y.undo(),ee.ka(),ee.mb(se);ee.freeze()}return!1}Rt.lx=function(){if(!this.isUndoingRedoing&&this.canRedo()){var a=this.history;a.ka();for(var y=a.count-1;y>this.historyIndex;y--){var ee=a.M(y);ee!==null&&ee.clear(),a.mb(y),this.rq=!0}a.freeze()}},Hi.prototype.canUndo=function(){if(!this.isEnabled||0=this.transactionLevel&&!this.tt&&(a=a.diagram,a!==null&&a.pi===!1||dr("Change not within a transaction: "+ee.toString()))}},Hi.prototype.skipsEvent=function(a){if(a===null||0>a.change.value)return!0;if(a=a.object,a===null)return!1;if(a.layer!==void 0){if(a=a.layer,a!==null&&a.isTemporary)return!0}else if(a.isTemporary)return!0;return!1},De.Object.defineProperties(Hi.prototype,{models:{get:function(){return this.Pt.iterator}},isEnabled:{get:function(){return this.Jd},set:function(a){this.Jd=a}},transactionToUndo:{get:function(){return 0<=this.historyIndex&&this.historyIndex<=this.history.count-1?this.history.M(this.historyIndex):null}},transactionToRedo:{get:function(){return this.historyIndexse||Math.abs(y.y-a.y)>ne},De.Object.defineProperties(Wi.prototype,{diagram:{get:function(){return this.H},set:function(a){a instanceof Mr&&(this.H=a)}},name:{get:function(){return this.xa},set:function(a){this.xa=a}},isEnabled:{get:function(){return this.Jd},set:function(a){this.Jd=a}},isActive:{get:function(){return this.nb},set:function(a){this.nb=a}},transactionResult:{get:function(){return this.wm},set:function(a){this.wm=a}}}),Wi.prototype.startTransaction=Wi.prototype.Ea,Wi.className="Tool";function Ai(){Wi.call(this),this.name="ToolManager",this.hb=new Zr,this.ob=new Zr,this.Hb=new Zr,this.F=this.V=850,this.o=new Ri(2,2).ja(),this.Ha=5e3,this.ia=Ko,this.u=Va,this.Mp=this.j=null,this.zj=-1}We(Ai,Wi),Ai.prototype.initializeStandardTools=function(){},Ai.prototype.updateAdornments=function(a){var y=this.currentToolTip;if(y instanceof Es&&this.Mp===a){var ee=y.adornedObject;(a!==null?ee.part===a:ee===null)?this.showToolTip(y,ee):this.hideToolTip()}},Ai.prototype.doMouseDown=function(){var a=this.diagram,y=a.lastInput;if(y.isTouchEvent&&this.gestureBehavior===Ka&&(y.bubbles=!1),y.isMultiTouch){if(this.cancelWaitAfter(),this.gestureBehavior===Ba){y.bubbles=!0;return}if(this.gestureBehavior===Ka)return;if(a.currentTool.canStartMultiTouch()){a.currentTool.standardPinchZoomStart();return}}for(var ee=this.mouseDownTools.length,ne=0;nese.right&&(ee.x-=ne.width+5/y.scale),ee.xse.bottom?ee.y-(ne.height+5/y.scale):ee.y+20/y.scale,ee.yee.pointsCount)){var ne=a.diagram;if(!ne.isReadOnly){var se=a.Oe;if(se!==null){var ue=null,me=null;ee.fromNode===null&&(ue=Xl(a,ee.i(0),!1),ue!==null&&(me=ue.part));var Ce=null,Fe=null;ee.toNode===null&&(Ce=Xl(a,ee.i(ee.pointsCount-1),!0),Ce!==null&&(Fe=Ce.part)),se.isValidLink(me,ue,Fe,Ce)?y?(ee.defaultFromPoint=ee.i(0),ee.defaultToPoint=ee.i(ee.pointsCount-1),ee.suspendsRouting=!1,ee.fromNode=me,ue!==null&&(ee.fromPortId=ue.portId),ee.toNode=Fe,Ce!==null&&(ee.toPortId=Ce.portId),ee.fromPort!==ne.Mx&&ne.R("LinkRelinked",ee,ne.Mx),ee.toPort!==ne.Nx&&ne.R("LinkRelinked",ee,ne.Nx)):Ho(se,me,ue,Fe,Ce):Ho(se,null,null,null,null)}}}}_o.prototype.doDragOver=function(){};function Ou(a,y){var ee=a.diagram;a.dragsLink&&ra(a,!0),dl(a);var ne=a.findDragOverObject(y),se=ee.lastInput;if(se.targetObject=ne,ne!==null){se.handled=!1;for(var ue=ne;ue!==null;){var me=ue.mouseDrop;if(me!==null&&(me(se,ue),se.handled))break;tc(a,se,ue),ue=mu(ue)}}else ue=ee.mouseDrop,ue!==null&&ue(se);if(a.isActive||pr!==null){for(se=(a.copiedParts||a.draggedParts).iterator;se.next();)ue=se.key,ue instanceof qi&&ue.linksConnected.each(function(Ce){Ce.suspendsRouting=!1});if(a.doDropOnto(y,ne),a.isActive||pr!==null){for(a=Pr.alloc(),y=ee.selection.iterator;y.next();)ne=y.value,ne instanceof qi&&Cn(ee,ne,a);Pr.free(a)}}}function tc(a,y,ee){a=a.diagram,ee=ee.part,!a.handlesDragDropForTopLevelParts||!ee.isTopLevel||ee instanceof ci||(ee=a.mouseDrop,ee!==null&&ee(y))}function Cn(a,y,ee){var ne=!1;if(ee=y.getAvoidableRect(ee),a.viewportBounds.Re(ee)&&(ne=!0),a=a.Nu(ee,function(se){return se.part},function(se){return se instanceof Oi},!0,function(se){return se instanceof Oi},ne),a.count!==0)for(a=a.iterator;a.next();)ee=a.value,!ee.Td(y)&&ee.isAvoiding&&ee.bb()}_o.prototype.doDropOnto=function(){},_o.prototype.doMouseMove=function(){if(this.isActive){var a=this.diagram,y=a.lastInput;this.simulatedMouseMove(y.event,y.documentPoint,y.targetDiagram)||this.currentPart===null||this.draggedParts===null||(this.mayCopy()?(Tl(this,!1),bv(a,this.copiedParts),yl(this,this.copiedParts,!1),ef(a,this.copiedParts)):this.mayMove()?(Dl(this),yl(this,this.draggedParts,!0)):this.mayDragOut()?(Tl(this,!1),yl(this,this.copiedParts,!1)):Dl(this),Bl(this,a.lastInput.documentPoint))}},_o.prototype.doMouseUp=function(){if(this.isActive){var a=this.diagram,y=a.lastInput;if(!this.simulatedMouseUp(y.event,y.documentPoint,y.targetDiagram)){y=!1;var ee=this.mayCopy();if(ee&&this.copiedParts!==null?(Dl(this),Tl(this,!0),bv(a,this.copiedParts),yl(this,this.copiedParts,!1),ef(a,this.copiedParts),this.copiedParts!==null&&(a.R("ChangingSelection",a.selection),a.clearSelection(!0),this.copiedParts.iteratorKeys.each(function(se){se.isSelected=!0}))):(y=!0,Dl(this),this.mayMove()&&(yl(this,this.draggedParts,!0),Bl(this,a.lastInput.documentPoint))),this.Ym=!0,Ou(this,a.lastInput.documentPoint),this.isActive){var ne=ee?this.copiedParts.Lf():this.draggedParts.Lf();this.copiedParts=null,y&&On(this),a.Ya(),ef(a,this.draggedParts),this.transactionResult=ee?"Copy":"Move",a.R(ee?"SelectionCopied":"SelectionMoved",ne)}this.stopTool(),ee&&a.R("ChangedSelection",a.selection)}}},_o.prototype.simulatedMouseMove=function(a,y,ee){if(pr===null)return!1;var ne=pr.diagram;ee instanceof Mr||(ee=null);var se=kr;return ee!==se&&(se!==null&&se!==ne&&(se.ug(),pr.isDragOutStarted=!1,se=se.toolManager.findTool("Dragging"),se!==null&&se.doSimulatedDragLeave()),kr=ee,ee!==null&&ee!==ne&&(Nl(),se=ee.toolManager.findTool("Dragging"),se!==null&&(rs.contains(se)||rs.add(se),se.doSimulatedDragEnter())),this.doUpdateCursor(null)),ee===null||ee===ne||!ee.allowDrop||ee.isReadOnly||!ee.allowInsert?!1:(ne=ee.toolManager.findTool("Dragging"),ne!==null&&(a!==null&&(a.targetTouches!==void 0&&(0me&&(me=Ye),Qe>Ce&&(Ce=Qe))}}for(ne===1/0?ue.h(0,0,0,0):ue.h(ne,se,me-ne,Ce-se),ne=ue.x+ue.width/2,se=ue.y+ue.height/2,Pr.free(ue),ue=a.Fr,me=new lo,Ce=fn.alloc(),Fe=y.iterator;Fe.next();)Ye=Fe.value,Ye instanceof Oi&&Ye.canCopy()&&(Qe=ee.I(Ye),Qe!==null&&(Qe.points=Ye.points,Up(Qe,ue.x-ne,ue.y-se),Qe.suspendsRouting=!0,me.add(Qe,a.Pd())));for(y=y.iterator;y.next();)Ye=y.value,Ye.Zc()&&Ye.canCopy()&&(Fe=ee.I(Ye),Fe!==null&&(Ye=Ye.location,Ce.h(ue.x-(ne-Ye.x),ue.y-(se-Ye.y)),Fe.location=Ce,Fe.Va(),me.add(Fe,a.Pd(Ce))));fn.free(Ce),a.copiedParts=me,Zs(a,me.Lf()),a.draggedLink!==null&&(ee=a.draggedLink,y=ee.routeBounds,Up(ee,a.startPoint.x-(y.x+y.width/2),a.startPoint.y-(y.y+y.height/2))),a.doUpdateCursor(null)}}}_o.prototype.doSimulatedDragOut=function(){var a=this.diagram;a.Ns=!1,this.mayCopy()||this.mayMove()?a.currentCursor="":a.currentCursor=this.nodropCursor,this.Bn=null},_o.prototype.computeMove=function(a,y,ee,ne){return ee=this.diagram,ee!==null?ee.computeMove(a,y,this.dragOptions,ne):new fn},De.Object.defineProperties(_o.prototype,{isCopyEnabled:{get:function(){return this.ob},set:function(a){this.ob=a}},copiesEffectiveCollection:{get:function(){return this.u},set:function(a){this.u=a}},dragOptions:{get:function(){return this.ia},set:function(a){this.ia=a}},isGridSnapEnabled:{get:function(){return this.dragOptions.isGridSnapEnabled},set:function(a){this.dragOptions.isGridSnapEnabled=a}},isComplexRoutingRealtime:{get:function(){return this.hb},set:function(a){this.hb=a}},isGridSnapRealtime:{get:function(){return this.dragOptions.isGridSnapRealtime},set:function(a){this.dragOptions.isGridSnapRealtime=a}},gridSnapCellSize:{get:function(){return this.dragOptions.gridSnapCellSize},set:function(a){this.dragOptions.gridSnapCellSize.D(a)||(a=a.J(),this.dragOptions.gridSnapCellSize=a)}},gridSnapCellSpot:{get:function(){return this.dragOptions.gridSnapCellSpot},set:function(a){this.dragOptions.gridSnapCellSpot.D(a)||(a=a.J(),this.dragOptions.gridSnapCellSpot=a)}},gridSnapOrigin:{get:function(){return this.dragOptions.gridSnapOrigin},set:function(a){this.dragOptions.gridSnapOrigin.D(a)||(a=a.J(),this.dragOptions.gridSnapOrigin=a)}},dragsLink:{get:function(){return this.dragOptions.dragsLink},set:function(a){this.dragOptions.dragsLink=a}},dragsTree:{get:function(){return this.dragOptions.dragsTree},set:function(a){this.dragOptions.dragsTree=a}},copyCursor:{get:function(){return this.F},set:function(a){this.F=a}},moveCursor:{get:function(){return this.Oc},set:function(a){this.Oc=a}},nodropCursor:{get:function(){return this.Pc},set:function(a){this.Pc=a}},currentPart:{get:function(){return this.V},set:function(a){this.V=a}},copiedParts:{get:function(){return this.o},set:function(a){this.o=a}},draggedParts:{get:function(){return this.Ha},set:function(a){this.Ha=a}},draggingParts:{get:function(){return this.copiedParts!==null?this.copiedParts.Lf():this.draggedParts!==null?this.draggedParts.Lf():this.te}},draggedLink:{get:function(){return this.diagram.draggedLink},set:function(a){this.diagram.draggedLink=a}},isDragOutStarted:{get:function(){return this.Hb},set:function(a){this.Hb=a}},startPoint:{get:function(){return this.Fr},set:function(a){this.Fr.D(a)||this.Fr.assign(a)}},delay:{get:function(){return this.Ik},set:function(a){this.Ik=a}}}),_o.prototype.getDraggingSource=_o.prototype.Az;var pr=null,kr=null;_o.className="DraggingTool",rs=new Zr,fr("draggingTool",function(){return this.findTool("Dragging")},function(a){this.gb("Dragging",a,this.mouseMoveTools)}),Ai.prototype.doCancel=function(){pr!==null&&pr.doCancel(),Wi.prototype.doCancel.call(this)};function Lr(){Wi.call(this),this.te=100,this.Ha=!1,this.u="pointer";var a=new Oi,y=new Ra;y.isPanelMain=!0,y.stroke="blue",a.add(y),y=new Ra,y.toArrow="Standard",y.fill="blue",y.stroke="blue",a.add(y),a.layerName="Tool",this.Ci=a,a=new qi,y=new Ra,y.portId="",y.figure="Rectangle",y.fill=null,y.stroke="magenta",y.strokeWidth=2,y.desiredSize=Ts,a.add(y),a.selectable=!1,a.layerName="Tool",this.Bi=a,this.j=y,a=new qi,y=new Ra,y.portId="",y.figure="Rectangle",y.fill=null,y.stroke="magenta",y.strokeWidth=2,y.desiredSize=Ts,a.add(y),a.selectable=!1,a.layerName="Tool",this.Di=a,this.o=y,this.Pc=this.Oc=this.ob=this.hb=this.Hb=null,this.ia=!0,this.hy=new lo,this.Of=this.gj=this.Pf=null}We(Lr,Wi),Lr.prototype.doStop=function(){this.diagram.ug(),this.originalToPort=this.originalToNode=this.originalFromPort=this.originalFromNode=this.originalLink=null,this.validPortsCache.clear(),this.targetPort=null},Lr.prototype.copyPortProperties=function(a,y,ee,ne,se){if(a!==null&&y!==null&&ee!==null&&ne!==null){var ue=y.Df(),me=Ri.alloc();me.width=y.naturalBounds.width*ue,me.height=y.naturalBounds.height*ue,ne.desiredSize=me,Ri.free(me),se?(ne.toSpot=y.toSpot,ne.toEndSegmentLength=y.toEndSegmentLength):(ne.fromSpot=y.fromSpot,ne.fromEndSegmentLength=y.fromEndSegmentLength),ee.locationSpot=cs,ue=fn.alloc(),ee.location=y.ga(cs,ue),fn.free(ue),ne.angle=y.li(),this.portTargeted!==null&&this.portTargeted(a,y,ee,ne,se)}},Lr.prototype.setNoTargetPortProperties=function(a,y,ee){y!==null&&(y.desiredSize=Ts,y.fromSpot=su,y.toSpot=su),a!==null&&(a.location=this.diagram.lastInput.documentPoint),this.portTargeted!==null&&this.portTargeted(null,null,a,y,ee)},Lr.prototype.doMouseDown=function(){this.isActive&&this.doMouseMove()},Lr.prototype.doMouseMove=function(){if(this.isActive){var a=this.diagram;if(this.targetPort=this.findTargetPort(this.isForwards),this.targetPort!==null&&this.targetPort.part instanceof qi){var y=this.targetPort.part;this.isForwards?this.copyPortProperties(y,this.targetPort,this.temporaryToNode,this.temporaryToPort,!0):this.copyPortProperties(y,this.targetPort,this.temporaryFromNode,this.temporaryFromPort,!1)}else this.isForwards?this.setNoTargetPortProperties(this.temporaryToNode,this.temporaryToPort,!0):this.setNoTargetPortProperties(this.temporaryFromNode,this.temporaryFromPort,!1);(a.allowHorizontalScroll||a.allowVerticalScroll)&&a.gs(a.lastInput.viewPoint)}},Lr.prototype.findValidLinkablePort=function(a,y){if(a===null)return null;var ee=a.part;if(!(ee instanceof qi))return null;for(;a!==null;){var ne=y?a.toLinkable:a.fromLinkable;if(ne===!0&&(a.portId!==null||a instanceof qi)&&(y?this.isValidTo(ee,a):this.isValidFrom(ee,a)))return a;if(ne===!1)break;a=a.panel}return null},Lr.prototype.findTargetPort=function(a){var y=this.diagram,ee=y.lastInput.documentPoint,ne=this.portGravity;0>=ne&&(ne=.1);var se=this,ue=y.og(ee,ne,function(at){return se.findValidLinkablePort(at,a)},null,!0);for(ne=1/0,y=null,ue=ue.iterator;ue.next();){var me=ue.value,Ce=me.part;if(Ce instanceof qi){var Fe=me.ga(cs,fn.alloc()),Ye=ee.x-Fe.x,Qe=ee.y-Fe.y;fn.free(Fe),Fe=Ye*Ye+Qe*Qe,Feee){if(this.originalLink!==null&&a===this.originalFromNode&&y===this.originalFromPort)return!0;if(y=y.portId,y===null&&(y=""),a.Mo(y).count>=ee)return!1}return!0},Lr.prototype.isValidTo=function(a,y){if(a===null||y===null)return this.isUnconnectedLinkValid;if(this.diagram.currentTool===this&&(a.layer!==null&&!a.layer.allowLink||y.toLinkable!==!0))return!1;var ee=y.toMaxLinks;if(1/0>ee){if(this.originalLink!==null&&a===this.originalToNode&&y===this.originalToPort)return!0;if(y=y.portId,y===null&&(y=""),a.Sd(y).count>=ee)return!1}return!0},Lr.prototype.isInSameNode=function(a,y){return a===null||y===null?!1:a===y?!0:(a=a.part,y=y.part,a!==null&&a===y)},Lr.prototype.isLinked=function(a,y){if(a===null||y===null)return!1;var ee=a.part;if(!(ee instanceof qi))return!1;a=a.portId,a===null&&(a="");var ne=y.part;if(!(ne instanceof qi))return!1;for(y=y.portId,y===null&&(y=""),y=ne.Sd(y);y.next();)if(ne=y.value,ne.fromNode===ee&&ne.fromPortId===a)return!0;return!1},Lr.prototype.isValidLink=function(a,y,ee,ne){if(!this.isValidFrom(a,y)||!this.isValidTo(ee,ne)||!(y===null||ne===null||(y.fromLinkableSelfNode&&ne.toLinkableSelfNode||!this.isInSameNode(y,ne))&&(y.fromLinkableDuplicates&&ne.toLinkableDuplicates||!this.isLinked(y,ne)))||this.originalLink!==null&&(a!==null&&this.isLabelDependentOnLink(a,this.originalLink)||ee!==null&&this.isLabelDependentOnLink(ee,this.originalLink))||a!==null&&ee!==null&&(a.data===null&&ee.data!==null||a.data!==null&&ee.data===null)||!this.isValidCycle(a,ee,this.originalLink))return!1;if(a!==null){var se=a.linkValidation;if(se!==null&&!se(a,y,ee,ne,this.originalLink))return!1}return ee!==null&&(se=ee.linkValidation,se!==null&&!se(a,y,ee,ne,this.originalLink))?!1:(se=this.linkValidation,se!==null?se(a,y,ee,ne,this.originalLink):!0)},Lr.prototype.isLabelDependentOnLink=function(a,y){if(a===null)return!1;var ee=a.labeledLink;if(ee===null)return!1;if(ee===y)return!0;var ne=new Xr;return ne.add(a),ai(this,ee,y,ne)};function ai(a,y,ee,ne){if(y===ee)return!0;var se=y.fromNode;return se!==null&&se.isLinkLabel&&(ne.add(se),ai(a,se.labeledLink,ee,ne))?!0:(y=y.toNode,!!(y!==null&&y.isLinkLabel&&(ne.add(y),ai(a,y.labeledLink,ee,ne))))}Lr.prototype.isValidCycle=function(a,y,ee){if(ee===void 0&&(ee=null),a===null||y===null)return this.isUnconnectedLinkValid;var ne=this.diagram.validCycle;if(ne!==my){if(ne===m1){if(ne=ee||this.temporaryLink,ne!==null&&!ne.isTreeLink)return!0;for(ne=y.linksConnected;ne.next();){var se=ne.value;if(se!==ee&&se.isTreeLink&&se.toNode===y)return!1}return!ni(this,a,y,ee,!0)}if(ne===y1){if(ne=ee||this.temporaryLink,ne!==null&&!ne.isTreeLink)return!0;for(ne=a.linksConnected;ne.next();)if(se=ne.value,se!==ee&&se.isTreeLink&&se.fromNode===a)return!1;return!ni(this,a,y,ee,!0)}if(ne===Rp)return a===y?a=!0:(ne=new Xr,ne.add(y),a=ri(this,ne,a,y,ee)),!a;if(ne===l0)return!ni(this,a,y,ee,!1);if(ne===v1)return a===y?a=!0:(ne=new Xr,ne.add(y),a=Ni(this,ne,a,y,ee)),!a}return!0};function ni(a,y,ee,ne,se){if(y===ee)return!0;if(y===null||ee===null)return!1;for(var ue=y.linksConnected;ue.next();){var me=ue.value;if(me!==ne&&(!se||me.isTreeLink)&&me.toNode===y&&(me=me.fromNode,me!==y&&ni(a,me,ee,ne,se)))return!0}return!1}function ri(a,y,ee,ne,se){if(ee===ne)return!0;if(ee===null||ne===null||y.contains(ee))return!1;y.add(ee);for(var ue=ee.linksConnected;ue.next();){var me=ue.value;if(me!==se&&me.toNode===ee&&(me=me.fromNode,me!==ee&&ri(a,y,me,ne,se)))return!0}return!1}function Ni(a,y,ee,ne,se){if(ee===ne)return!0;if(ee===null||ne===null||y.contains(ee))return!1;y.add(ee);for(var ue=ee.linksConnected;ue.next();){var me=ue.value;if(me!==se){var Ce=me.fromNode;if(me=me.toNode,Ce=Ce===ee?me:Ce,Ce!==ee&&Ni(a,y,Ce,ne,se))return!0}}return!1}De.Object.defineProperties(Lr.prototype,{portGravity:{get:function(){return this.te},set:function(a){0<=a&&(this.te=a)}},isUnconnectedLinkValid:{get:function(){return this.Ha},set:function(a){this.Ha=a}},linkingCursor:{get:function(){return this.u},set:function(a){this.u=a}},temporaryLink:{get:function(){return this.Ci},set:function(a){this.Ci=a}},temporaryFromNode:{get:function(){return this.Bi},set:function(a){(this.Bi=a)&&(this.j=a.port)}},temporaryFromPort:{get:function(){return this.j},set:function(a){if(this.j!==null){var y=this.j.panel;if(y!==null){var ee=y.O.indexOf(this.j);y.mb(ee),y.Gb(ee,a)}}this.j=a}},temporaryToNode:{get:function(){return this.Di},set:function(a){(this.Di=a)&&(this.o=a.port)}},temporaryToPort:{get:function(){return this.o},set:function(a){if(this.o!==null){var y=this.o.panel;if(y!==null){var ee=y.O.indexOf(this.o);y.mb(ee),y.Gb(ee,a)}}this.o=a}},originalLink:{get:function(){return this.Hb},set:function(a){this.Hb=a}},originalFromNode:{get:function(){return this.hb},set:function(a){this.hb=a}},originalFromPort:{get:function(){return this.ob},set:function(a){this.ob=a}},originalToNode:{get:function(){return this.Oc},set:function(a){this.Oc=a}},originalToPort:{get:function(){return this.Pc},set:function(a){this.Pc=a}},isForwards:{get:function(){return this.ia},set:function(a){this.ia=a}},validPortsCache:{get:function(){return this.hy}},targetPort:{get:function(){return this.Pf},set:function(a){this.Pf=a}},linkValidation:{get:function(){return this.gj},set:function(a){this.gj=a}},portTargeted:{get:function(){return this.Of},set:function(a){this.Of=a}}}),Lr.className="LinkingBaseTool";function yi(){Lr.call(this),this.name="Linking",this.V={},this.F=null,this.K=Ii,this.Xd=null}We(yi,Lr),yi.prototype.canStart=function(){if(!this.isEnabled)return!1;var a=this.diagram;return a.isReadOnly||a.isModelReadOnly||!a.allowLink||!a.model.xs()||!a.lastInput.left||a.currentTool!==this&&!this.isBeyondDragSize()?!1:this.findLinkablePort()!==null},yi.prototype.findLinkablePort=function(){var a=this.diagram,y=this.startObject;if(y===null&&(y=a.ic(a.firstInput.documentPoint,null,null)),y===null||(a=y.part,!(a instanceof qi)))return null;var ee=this.direction;if(ee===Ii||ee===co){var ne=this.findValidLinkablePort(y,!1);if(ne!==null||this.startObject===a&&(ne=a.port,this.findValidLinkablePort(ne,!1)))return this.isForwards=!0,ne}return(ee===Ii||ee===uo)&&(y=this.findValidLinkablePort(y,!0),y!==null||this.startObject===a&&(y=a.port,this.findValidLinkablePort(y,!0)))?(this.isForwards=!1,y):null},yi.prototype.doActivate=function(){var a=this.diagram,y=this.findLinkablePort();y===null?this.stopTool():(this.Ea(this.name),a.isMouseCaptured=!0,a.currentCursor=this.linkingCursor,this.isForwards?(this.temporaryToNode!==null&&(this.temporaryToNode.location=a.lastInput.documentPoint),this.originalFromPort=y,y=this.originalFromPort.part,y instanceof qi&&(this.originalFromNode=y),this.copyPortProperties(this.originalFromNode,this.originalFromPort,this.temporaryFromNode,this.temporaryFromPort,!1)):(this.temporaryFromNode!==null&&(this.temporaryFromNode.location=a.lastInput.documentPoint),this.originalToPort=y,y=this.originalToPort.part,y instanceof qi&&(this.originalToNode=y),this.copyPortProperties(this.originalToNode,this.originalToPort,this.temporaryToNode,this.temporaryToPort,!0)),a.add(this.temporaryFromNode),this.temporaryFromNode&&this.temporaryFromNode.Va(),a.add(this.temporaryToNode),this.temporaryToNode&&this.temporaryToNode.Va(),this.temporaryLink!==null&&(this.temporaryFromNode!==null&&(this.temporaryLink.fromNode=this.temporaryFromNode),this.temporaryToNode!==null&&(this.temporaryLink.toNode=this.temporaryToNode),this.temporaryLink.isTreeLink=this.isNewTreeLink(),this.temporaryLink.bb(),a.add(this.temporaryLink)),this.isActive=!0)},yi.prototype.doDeactivate=function(){this.isActive=!1;var a=this.diagram;a.remove(this.temporaryLink),a.remove(this.temporaryFromNode),a.remove(this.temporaryToNode),a.isMouseCaptured=!1,a.currentCursor="",this.stopTransaction()},yi.prototype.doStop=function(){Lr.prototype.doStop.call(this),this.startObject=null},yi.prototype.doMouseUp=function(){if(this.isActive){var a=this.diagram,y=this.transactionResult=null,ee=null,ne=null,se=null,ue=null;try{var me=this.targetPort=this.findTargetPort(this.isForwards);if(me!==null){var Ce=me.part;Ce instanceof qi&&(this.isForwards?(this.originalFromNode!==null&&(y=this.originalFromNode,ee=this.originalFromPort),ne=Ce,se=me):(y=Ce,ee=me,this.originalToNode!==null&&(ne=this.originalToNode,se=this.originalToPort)))}else this.isForwards?this.originalFromNode!==null&&this.isUnconnectedLinkValid&&(y=this.originalFromNode,ee=this.originalFromPort):this.originalToNode!==null&&this.isUnconnectedLinkValid&&(ne=this.originalToNode,se=this.originalToPort);y!==null||ne!==null?(ue=this.insertLink(y,ee,ne,se),ue!==null?(me===null&&(this.isForwards?ue.defaultToPoint=a.lastInput.documentPoint:ue.defaultFromPoint=a.lastInput.documentPoint),a.allowSelect&&(a.R("ChangingSelection",a.selection),a.clearSelection(!0),ue.isSelected=!0),this.transactionResult=this.name,a.R("LinkDrawn",ue)):this.doNoLink(y,ee,ne,se)):this.isForwards?this.doNoLink(this.originalFromNode,this.originalFromPort,null,null):this.doNoLink(null,null,this.originalToNode,this.originalToPort)}finally{this.stopTool(),ue&&a.allowSelect&&a.R("ChangedSelection",a.selection)}}},yi.prototype.isNewTreeLink=function(){var a=this.archetypeLinkData;if(a===null)return!0;if(a instanceof Oi)return a.isTreeLink;var y=this.diagram;return y===null?!0:(a=y.partManager.getLinkCategoryForData(a),y=y.partManager.findLinkTemplateForCategory(a),y!==null?y.isTreeLink:!0)},yi.prototype.insertLink=function(a,y,ee,ne){return this.diagram.partManager.insertLink(a,y,ee,ne)},yi.prototype.doNoLink=function(){},De.Object.defineProperties(yi.prototype,{archetypeLinkData:{get:function(){return this.V},set:function(a){this.V=a}},archetypeLabelNodeData:{get:function(){return this.F},set:function(a){this.F=a}},direction:{get:function(){return this.K},set:function(a){this.K=a}},startObject:{get:function(){return this.Xd},set:function(a){this.Xd=a}}});var Ii=new wr(yi,"Either",0),co=new wr(yi,"ForwardsOnly",0),uo=new wr(yi,"BackwardsOnly",0);yi.className="LinkingTool",yi.Either=Ii,yi.ForwardsOnly=co,yi.BackwardsOnly=uo;function gi(){Lr.call(this),this.name="Relinking";var a=new Ra;a.figure="Diamond",a.desiredSize=Rs,a.fill="lightblue",a.stroke="dodgerblue",a.cursor=this.linkingCursor,a.segmentIndex=0,this.V=a,a=new Ra,a.figure="Diamond",a.desiredSize=Rs,a.fill="lightblue",a.stroke="dodgerblue",a.cursor=this.linkingCursor,a.segmentIndex=-1,this.Xd=a,this.F=null,this.Ew=new Pr}We(gi,Lr),gi.prototype.updateAdornments=function(a){if(a!==null&&a instanceof Oi){var y="RelinkFrom",ee=null;if(a.isSelected&&!this.diagram.isReadOnly){var ne=a.selectionObject;ne!==null&&a.canRelinkFrom()&&a.actualBounds.w()&&a.isVisible()&&ne.actualBounds.w()&&ne.Ed()&&(ee=a.Pj(y),ee===null&&(ee=this.makeAdornment(ne,!1),a.bh(y,ee)))}ee===null&&a.Jf(y),y="RelinkTo",ee=null,a.isSelected&&!this.diagram.isReadOnly&&(ne=a.selectionObject,ne!==null&&a.canRelinkTo()&&a.actualBounds.w()&&a.isVisible()&&ne.actualBounds.w()&&ne.Ed()&&(ee=a.Pj(y),ee===null?(ee=this.makeAdornment(ne,!0),a.bh(y,ee)):ee.v())),ee===null&&a.Jf(y)}},gi.prototype.makeAdornment=function(a,y){var ee=new Es;return ee.type=Mi.Link,y=y?this.toHandleArchetype:this.fromHandleArchetype,y!==null&&ee.add(y.copy()),ee.adornedObject=a,ee},gi.prototype.canStart=function(){if(!this.isEnabled)return!1;var a=this.diagram;if(a.isReadOnly||a.isModelReadOnly||!a.allowRelink||!a.model.xs()||!a.lastInput.left)return!1;var y=this.findToolHandleAt(a.firstInput.documentPoint,"RelinkFrom");return y===null&&(y=this.findToolHandleAt(a.firstInput.documentPoint,"RelinkTo")),y!==null},gi.prototype.doActivate=function(){var a=this.diagram;if(this.originalLink===null){var y=this.handle;if(y===null&&(y=this.findToolHandleAt(a.firstInput.documentPoint,"RelinkFrom"),y===null&&(y=this.findToolHandleAt(a.firstInput.documentPoint,"RelinkTo"))),y===null)return;var ee=y.part;if(!(ee instanceof Es&&ee.adornedPart instanceof Oi))return;this.handle=y,this.isForwards=ee===null||ee.category==="RelinkTo",this.originalLink=ee.adornedPart}this.Ea(this.name),a.isMouseCaptured=!0,a.currentCursor=this.linkingCursor,this.originalFromPort=this.originalLink.fromPort,this.originalFromNode=this.originalLink.fromNode,this.originalToPort=this.originalLink.toPort,this.originalToNode=this.originalLink.toNode,this.Ew.set(this.originalLink.actualBounds),this.originalLink!==null&&0y.firstPickIndex+1&&ee=ee.x)y=0>=ee.y?y+225:1<=ee.y?y+135:y+180;else if(1<=ee.x)0>=ee.y?y+=315:1<=ee.y&&(y+=45);else if(0>=ee.y)y+=270;else if(1<=ee.y)y+=90;else break e;0>y?y+=360:360<=y&&(y-=360),a.cursor=22.5>y?"e-resize":67.5>y?"se-resize":112.5>y?"s-resize":157.5>y?"sw-resize":202.5>y?"w-resize":247.5>y?"nw-resize":292.5>y?"n-resize":337.5>y?"ne-resize":"e-resize"}else if(a instanceof Mi)for(a=a.elements;a.next();)this.updateResizeHandles(a.value,y)}},ca.prototype.canStart=function(){if(!this.isEnabled)return!1;var a=this.diagram;return!a.isReadOnly&&a.allowResize&&a.lastInput.left?this.findToolHandleAt(a.firstInput.documentPoint,this.name)!==null:!1},ca.prototype.doActivate=function(){var a=this.diagram;this.handle===null&&(this.handle=this.findToolHandleAt(a.firstInput.documentPoint,this.name)),this.handle!==null&&(this.adornedObject=this.handle.part.adornedObject,this.adornedObject!==null&&(a.isMouseCaptured=!0,a.animationManager.Cc(),this.Ea(this.name),this.Xq.set(this.adornedObject.ga(this.handle.alignment.gv())),this.Tn.set(this.adornedObject.part.location),this.Dw.set(this.adornedObject.desiredSize),this.pt=this.computeCellSize(),this.rt=this.computeMinSize(),this.qt=this.computeMaxSize(),this.isActive=!0))},ca.prototype.doDeactivate=function(){var a=this.diagram;this.stopTransaction(),this.ue=this.handle=null,this.isActive=a.isMouseCaptured=!1},ca.prototype.stopTransaction=function(){var a=this.diagram,y=Wi.prototype.stopTransaction.call(this);return y&&a.undoManager.transactionToUndo!==null&&a.undoManager.transactionToUndo.ak(),y},ca.prototype.doCancel=function(){this.adornedObject!==null&&(this.adornedObject.desiredSize=this.originalDesiredSize,this.adornedObject.part.location=this.originalLocation),this.stopTool()},ca.prototype.doMouseMove=function(){var a=this.diagram;if(this.isActive){var y=this.rt,ee=this.qt,ne=this.pt,se=this.adornedObject.qs(a.lastInput.documentPoint,fn.alloc()),ue=this.computeReshape();y=this.computeResize(se,this.handle.alignment,y,ee,ne,ue),this.resize(y),a.bd(),fn.free(se)}},ca.prototype.doMouseUp=function(){var a=this.diagram;if(this.isActive){var y=this.rt,ee=this.qt,ne=this.pt,se=this.adornedObject.qs(a.lastInput.documentPoint,fn.alloc()),ue=this.computeReshape();y=this.computeResize(se,this.handle.alignment,y,ee,ne,ue),this.resize(y),fn.free(se),a.Ya(),this.transactionResult=this.name,a.R("PartResized",this.adornedObject,this.originalDesiredSize)}this.stopTool()},ca.prototype.resize=function(a){var y=this.diagram,ee=this.adornedObject;if(ee!==null){if(ee.desiredSize=a.size,a=ee.part,a.Va(),ee=ee.ga(this.handle.alignment.gv()),a instanceof ci){var ne=new Zr;if(ne.add(a),!this.dragsMembers&&a.placeholder===null){var se=new _e;se.dragsMembers=!1}y.moveParts(ne,this.oppositePoint.copy().re(ee),!0,se)}else a.location=a.location.copy().re(ee).add(this.oppositePoint);y.bd()}},ca.prototype.computeResize=function(a,y,ee,ne,se,ue){y.Mc()&&(y=cs);var me=this.adornedObject.naturalBounds,Ce=me.x,Fe=me.y,Ye=me.x+me.width,Qe=me.y+me.height,at=1;if(!ue){at=me.width;var mt=me.height;0>=at&&(at=1),0>=mt&&(mt=1),at=mt/at}return mt=fn.alloc(),cr.No(a.x,a.y,Ce,Fe,se.width,se.height,mt),a=me.copy(),0>=y.x?0>=y.y?(a.x=Math.max(mt.x,Ye-ne.width),a.x=Math.min(a.x,Ye-ee.width),a.width=Math.max(Ye-a.x,ee.width),a.y=Math.max(mt.y,Qe-ne.height),a.y=Math.min(a.y,Qe-ee.height),a.height=Math.max(Qe-a.y,ee.height),ue||(1<=a.height/a.width?(a.height=Math.max(Math.min(at*a.width,ne.height),ee.height),a.width=a.height/at):(a.width=Math.max(Math.min(a.height/at,ne.width),ee.width),a.height=at*a.width),a.x=Ye-a.width,a.y=Qe-a.height)):1<=y.y?(a.x=Math.max(mt.x,Ye-ne.width),a.x=Math.min(a.x,Ye-ee.width),a.width=Math.max(Ye-a.x,ee.width),a.height=Math.max(Math.min(mt.y-Fe,ne.height),ee.height),ue||(1<=a.height/a.width?(a.height=Math.max(Math.min(at*a.width,ne.height),ee.height),a.width=a.height/at):(a.width=Math.max(Math.min(a.height/at,ne.width),ee.width),a.height=at*a.width),a.x=Ye-a.width)):(a.x=Math.max(mt.x,Ye-ne.width),a.x=Math.min(a.x,Ye-ee.width),a.width=Ye-a.x,ue||(a.height=Math.max(Math.min(at*a.width,ne.height),ee.height),a.width=a.height/at,a.y=Fe+.5*(Qe-Fe-a.height))):1<=y.x?0>=y.y?(a.width=Math.max(Math.min(mt.x-Ce,ne.width),ee.width),a.y=Math.max(mt.y,Qe-ne.height),a.y=Math.min(a.y,Qe-ee.height),a.height=Math.max(Qe-a.y,ee.height),ue||(1<=a.height/a.width?(a.height=Math.max(Math.min(at*a.width,ne.height),ee.height),a.width=a.height/at):(a.width=Math.max(Math.min(a.height/at,ne.width),ee.width),a.height=at*a.width),a.y=Qe-a.height)):1<=y.y?(a.width=Math.max(Math.min(mt.x-Ce,ne.width),ee.width),a.height=Math.max(Math.min(mt.y-Fe,ne.height),ee.height),ue||(1<=a.height/a.width?(a.height=Math.max(Math.min(at*a.width,ne.height),ee.height),a.width=a.height/at):(a.width=Math.max(Math.min(a.height/at,ne.width),ee.width),a.height=at*a.width))):(a.width=Math.max(Math.min(mt.x-Ce,ne.width),ee.width),ue||(a.height=Math.max(Math.min(at*a.width,ne.height),ee.height),a.width=a.height/at,a.y=Fe+.5*(Qe-Fe-a.height))):0>=y.y?(a.y=Math.max(mt.y,Qe-ne.height),a.y=Math.min(a.y,Qe-ee.height),a.height=Qe-a.y,ue||(a.width=Math.max(Math.min(a.height/at,ne.width),ee.width),a.height=at*a.width,a.x=Ce+.5*(Ye-Ce-a.width))):1<=y.y&&(a.height=Math.max(Math.min(mt.y-Fe,ne.height),ee.height),ue||(a.width=Math.max(Math.min(a.height/at,ne.width),ee.width),a.height=at*a.width,a.x=Ce+.5*(Ye-Ce-a.width))),fn.free(mt),a},ca.prototype.computeReshape=function(){var a=vi;return this.adornedObject instanceof Ra&&(a=S1(this.adornedObject)),!(a===wo||this.diagram.lastInput.shift)},ca.prototype.computeMinSize=function(){var a=this.adornedObject.minSize.copy(),y=this.minSize;return!isNaN(y.width)&&y.width>a.width&&(a.width=y.width),!isNaN(y.height)&&y.height>a.height&&(a.height=y.height),a},ca.prototype.computeMaxSize=function(){var a=this.adornedObject.maxSize.copy(),y=this.maxSize;return!isNaN(y.width)&&y.widthee?ee+=360:360<=ee&&(ee-=360),ee=Math.round(45*Math.round(ee/45));var ne=this.handleDistance;return ee===0?y.x=a.naturalBounds.width+ne:ee===45?(y.x=a.naturalBounds.width+ne,y.y=a.naturalBounds.height+ne):ee===90?y.y=a.naturalBounds.height+ne:ee===135?(y.x=-ne,y.y=a.naturalBounds.height+ne):ee===180?y.x=-ne:ee===225?(y.x=-ne,y.y=-ne):ee===270?y.y=-ne:ee===315&&(y.x=a.naturalBounds.width+ne,y.y=-ne),a.ga(y)},Da.prototype.doDeactivate=function(){var a=this.diagram;this.stopTransaction(),this.ue=this.handle=null,this.kr=new fn(NaN,NaN),this.isActive=a.isMouseCaptured=!1},Da.prototype.stopTransaction=function(){var a=this.diagram,y=Wi.prototype.stopTransaction.call(this);return y&&a.undoManager.transactionToUndo!==null&&a.undoManager.transactionToUndo.ak(),y},Da.prototype.doCancel=function(){this.diagram.delaysLayout=!1,this.rotate(this.originalAngle),this.stopTool()},Da.prototype.doMouseMove=function(){var a=this.diagram;this.isActive&&(a=this.computeRotate(a.lastInput.documentPoint),this.rotate(a))},Da.prototype.doMouseUp=function(){var a=this.diagram;if(this.isActive){a.delaysLayout=!1;var y=this.computeRotate(a.lastInput.documentPoint);this.rotate(y),a.Ya(),this.transactionResult=this.name,a.R("PartRotated",this.adornedObject,this.originalAngle)}this.stopTool()},Da.prototype.rotate=function(a){var y=this.adornedObject;if(y!==null){y.angle=a,y=y.part,y.Va();var ee=y.locationObject,ne=y.rotateObject;(ee===ne||ee.rg(ne))&&(ee=this.Tn.copy(),y.location=ee.re(this.rotationPoint).rotate(a-this.originalAngle).add(this.rotationPoint)),this.diagram.bd()}},Da.prototype.computeRotate=function(a){a=this.rotationPoint.ab(a)-this.handleAngle;var y=this.adornedObject.panel;y!==null&&(a-=y.li()),360<=a?a-=360:0>a&&(a+=360),y=Math.min(Math.abs(this.snapAngleMultiple),180);var ee=Math.min(Math.abs(this.snapAngleEpsilon),y/2);return!this.diagram.lastInput.shift&&0y-ee&&(a=(Math.floor(a/y)+1)*y)),360<=a?a-=360:0>a&&(a+=360),a},De.Object.defineProperties(Da.prototype,{handleArchetype:{get:function(){return this.o},set:function(a){this.o=a}},handle:{get:function(){return this.j},set:function(a){if(a!==null&&!(a.part instanceof Es))throw Error("new handle is not in an Adornment: "+a);this.j=a}},adornedObject:{get:function(){return this.ue},set:function(a){if(a!==null&&a.part instanceof Es)throw Error("new handle must not be in an Adornment: "+a);this.ue=a}},snapAngleMultiple:{get:function(){return this.ia},set:function(a){this.ia=a}},snapAngleEpsilon:{get:function(){return this.V},set:function(a){this.V=a}},originalAngle:{get:function(){return this.Cw}},rotationPoint:{get:function(){return this.kr},set:function(a){this.kr=a.copy()}},handleAngle:{get:function(){return this.u},set:function(a){this.u=a}},handleDistance:{get:function(){return this.F},set:function(a){this.F=a}}}),Da.className="RotatingTool",fr("rotatingTool",function(){return this.findTool("Rotating")},function(a){this.gb("Rotating",a,this.mouseDownTools)});function ds(){Wi.call(this),this.name="ClickSelecting"}We(ds,Wi),ds.prototype.canStart=function(){return!(!this.isEnabled||this.isBeyondDragSize())},ds.prototype.doMouseUp=function(){this.isActive&&(this.standardMouseSelect(),!this.standardMouseClick()&&this.diagram.lastInput.isTouchEvent&&this.diagram.toolManager.doToolTip()),this.stopTool()},ds.className="ClickSelectingTool";function da(){Wi.call(this),this.name="Action",this.pk=null}We(da,Wi),da.prototype.canStart=function(){if(!this.isEnabled)return!1;var a=this.diagram,y=a.lastInput,ee=a.ic(y.documentPoint,function(ne){for(;ne.panel!==null&&!ne.isActionable;)ne=ne.panel;return ne});return ee!==null&&ee.isActionable?(this.pk=ee,a.Ck=a.ic(y.documentPoint,null,null),!0):!1},da.prototype.doMouseDown=function(){if(this.isActive){var a=this.diagram.lastInput,y=this.pk;y!==null&&(a.targetObject=y,y.actionDown!==null&&y.actionDown(a,y))}else this.canStart()&&this.doActivate()},da.prototype.doMouseMove=function(){if(this.isActive){var a=this.diagram.lastInput,y=this.pk;y!==null&&(a.targetObject=y,y.actionMove!==null&&y.actionMove(a,y))}},da.prototype.doMouseUp=function(){if(this.isActive){var a=this.diagram.lastInput,y=this.pk;if(y===null)return;a.targetObject=y,y.actionUp!==null&&y.actionUp(a,y),this.standardMouseClick(function(ee){for(;ee.panel!==null&&(!ee.isActionable||ee!==y);)ee=ee.panel;return ee},function(ee){return ee===y})}this.stopTool()},da.prototype.doCancel=function(){var a=this.diagram.lastInput,y=this.pk;y!==null&&(a.targetObject=y,y.actionCancel!==null&&y.actionCancel(a,y),this.stopTool())},da.prototype.doStop=function(){this.pk=null},da.className="ActionTool";function ja(){Wi.call(this),this.name="ClickCreating",this.Ri=null,this.o=!0,this.j=!1,this.mw=new fn(0,0)}We(ja,Wi),ja.prototype.canStart=function(){if(!this.isEnabled||this.archetypeNodeData===null)return!1;var a=this.diagram;if(a.isReadOnly||a.isModelReadOnly||!a.allowInsert||!a.lastInput.left||this.isBeyondDragSize())return!1;if(this.isDoubleClick){if(a.lastInput.clickCount===1&&(this.mw=a.lastInput.viewPoint.copy()),a.lastInput.clickCount!==2||this.isBeyondDragSize(this.mw))return!1}else if(a.lastInput.clickCount!==1)return!1;return!(a.currentTool!==this&&a.Ol(a.lastInput.documentPoint,!0)!==null)},ja.prototype.doMouseUp=function(){var a=this.diagram;this.isActive&&this.insertPart(a.lastInput.documentPoint),this.stopTool()},ja.prototype.insertPart=function(a){var y=this.diagram,ee=this.archetypeNodeData;if(ee===null)return null;var ne=null;try{if(y.R("ChangingSelection",y.selection),this.Ea(this.name),ee instanceof Wo)ee.Zc()&&(hd(ee),ne=ee.copy(),ne!==null&&y.add(ne));else if(ee!==null){var se=y.model.copyNodeData(ee);Bn(se)&&(y.model.xf(se),ne=y.Lc(se))}if(ne!==null){var ue=fn.allocAt(a.x,a.y);this.isGridSnapEnabled&&gy(this.diagram,ne,a,ue),ne.location=ue,y.allowSelect&&(y.clearSelection(!0),ne.isSelected=!0),fn.free(ue)}y.Ya(),this.transactionResult=this.name,y.R("PartCreated",ne)}finally{this.stopTransaction(),y.R("ChangedSelection",y.selection)}return ne},De.Object.defineProperties(ja.prototype,{archetypeNodeData:{get:function(){return this.Ri},set:function(a){this.Ri=a}},isDoubleClick:{get:function(){return this.o},set:function(a){this.o=a}},isGridSnapEnabled:{get:function(){return this.j},set:function(a){this.j=a}}}),ja.className="ClickCreatingTool";function ha(){Wi.call(this),this.name="DragSelecting",this.Ik=175,this.o=!1;var a=new Wo;a.layerName="Tool",a.selectable=!1;var y=new Ra;y.name="SHAPE",y.figure="Rectangle",y.fill=null,y.stroke="magenta",a.add(y),this.j=a}We(ha,Wi),ha.prototype.canStart=function(){if(!this.isEnabled)return!1;var a=this.diagram;if(!a.allowSelect)return!1;var y=a.lastInput;return!(!y.left||a.currentTool!==this&&(!this.isBeyondDragSize()||y.timestamp-a.firstInput.timestampse.right&&(ee.x-=ne.width+5/y.scale),ee.xse.bottom&&(ee.y-=ne.height+5/y.scale),ee.ya.lastInput.clickCount)):!1},mn.prototype.doStart=function(){Bo=this,this.textBlock!==null&&this.doActivate()},mn.prototype.doActivate=function(){if(!this.isActive){var a=this.diagram;if(a!==null){var y=this.textBlock;if(y===null&&(y=a.ic(a.lastInput.documentPoint)),y!==null&&y instanceof ml&&(this.textBlock=y,y.part!==null)){a.animationManager.Cc(),this.isActive=!0,this.qa=Vr;var ee=this.defaultTextEditor;y.textEditor!==null&&(ee=y.textEditor),this.Zh=this.textBlock.copy();var ne=new Pr(this.textBlock.ga(Vu),this.textBlock.ga(mc));a.tv(ne),ee.show(y,a,this),this.currentTextEditor=ee}}}},mn.prototype.doCancel=function(){this.stopTool()},mn.prototype.doMouseUp=function(){this.canStart()&&this.doActivate()},mn.prototype.doMouseDown=function(){this.isActive&&this.acceptText(Dr)},mn.prototype.acceptText=function(a){switch(a){case Dr:this.qa===qr?this.currentTextEditor instanceof HTMLElement&&this.currentTextEditor.focus():(this.qa===Vr||this.qa===xi||this.qa===Ti)&&(this.qa=Li,Un(this));break;case ir:case Qr:case br:(Qr!==a||this.textBlock.isMultiline!==!0)&&(this.qa===Vr||this.qa===xi||this.qa===Ti)&&(this.qa=Li,Un(this))}};function Un(a){var y=a.textBlock,ee=a.diagram,ne=a.currentTextEditor;if(y!==null&&ne!==null){var se=y.text,ue="";ne.valueFunction!==null&&(ue=ne.valueFunction()),a.isValidText(y,se,ue)?(a.Ea(a.name),a.qa=qr,a.transactionResult=a.name,y.text=ue,a.doSuccess(se,ue),ee!==null&&ee.R("TextEdited",y,se),a.stopTransaction(),a.stopTool(),ee!==null&&ee.doFocus()):(a.qa=xi,a.doError(se,ue))}}mn.prototype.doError=function(a,y){var ee=this.textBlock;ee.errorFunction!==null&&ee.errorFunction(this,a,y),(a=this.currentTextEditor)&&a.show(ee,this.diagram,this)},mn.prototype.doSuccess=function(a,y){var ee=this.textBlock;ee.textEdited!==null&&ee.textEdited(ee,a,y)},mn.prototype.doDeactivate=function(){var a=this.diagram;a!==null&&(this.qa=zr,this.currentTextEditor!==null&&this.currentTextEditor.hide(a,this),this.textBlock=null,this.isActive=!1)},mn.prototype.doStop=function(){Bo=null},mn.prototype.isValidText=function(a,y,ee){var ne=this.textValidation;return ne!==null&&!ne(a,y,ee)?!1:(ne=a.textValidation,!!(ne===null||ne(a,y,ee)))},mn.prototype.Lx=function(a){var y=this.Zh;return y.text=a,y.measure(this.textBlock.Ih,1/0),y},De.Object.defineProperties(mn.prototype,{textBlock:{get:function(){return this.ia},set:function(a){this.ia=a}},currentTextEditor:{get:function(){return this.o},set:function(a){this.o=a}},defaultTextEditor:{get:function(){return this.j},set:function(a){this.j=a}},starting:{get:function(){return this.V},set:function(a){this.V=a}},textValidation:{get:function(){return this.vj},set:function(a){this.vj=a}},minimumEditorScale:{get:function(){return this.u},set:function(a){this.u=a}},selectsTextOnActivate:{get:function(){return this.F},set:function(a){this.F=a}},state:{get:function(){return this.qa},set:function(a){this.qa!==a&&(this.qa=a)}}}),mn.prototype.measureTemporaryTextBlock=mn.prototype.Lx;var ir=new wr(mn,"LostFocus",0),Dr=new wr(mn,"MouseDown",1),br=new wr(mn,"Tab",2),Qr=new wr(mn,"Enter",3),Hr=new wr(mn,"SingleClick",0),Fr=new wr(mn,"SingleClickSelected",1),Ur=new wr(mn,"DoubleClick",2),zr=new wr(mn,"StateNone",0),Vr=new wr(mn,"StateActive",1),Ti=new wr(mn,"StateEditing",2),Li=new wr(mn,"StateValidating",3),xi=new wr(mn,"StateInvalid",4),qr=new wr(mn,"StateValidated",5),Bo=null;mn.className="TextEditingTool",mn.LostFocus=ir,mn.MouseDown=Dr,mn.Tab=br,mn.Enter=Qr,mn.SingleClick=Hr,mn.SingleClickSelected=Fr,mn.DoubleClick=Ur,mn.StateNone=zr,mn.StateActive=Vr,mn.StateEditing=Ti,mn.StateValidating=Li,mn.StateInvalid=xi,mn.StateValidated=qr,fr("textEditingTool",function(){return this.findTool("TextEditing")},function(a){this.gb("TextEditing",a,this.mouseUpTools)});function ta(a){ba||($a(),ba=!0),this.H=$d,this.Ok=this.zb=this.vq=this.bc=!1,this.Qw=!0,this.Pk=bs,this.Dm=!1,this.Gh=this.Jd=!0,this.Dg=600,this.cw=this.Ow=!1,this.Zd=new Xr,this.ce=new Fs,this.ce.Yd=this,this.Ei=new Xr,this.pu=new Xr,this.Sr=new Xr,this.pr=new Xr,a&&Object.assign(this,a)}ta.prototype.Xe=function(a){this.H=a},ta.prototype.canStart=function(){return!0};function ga(a,y){a.Jd&&a.canStart(y)&&(a.Zd.add(y),a.defaultAnimation.isAnimating&&a.Cc(),Bc(a.H),a.zb=!0)}function ki(a){if(a.Jd&&a.zb){var y=a.ce,ee=a.H,ne=a.Zd.contains("Model");ne&&(a.Ok=!0,a.Pk===bs?(y.isViewportUnconstrained=!0,y.vc.clear(),y.add(ee,"position",ee.position.copy().offset(0,-200),ee.position),y.add(ee,"opacity",0,1)):a.Pk===Gs&&y.vc.clear(),a.Qw=!!(a.Pk===Cl&&ee.du.D(ee.pa)),ee.R("InitialAnimationStarting",a)),ne&&!a.Gh||y.vc.count===0?(a.Zd.clear(),a.zb=!1,y.vc.clear(),_l(y,ee),a.Ok=!1,ee.N()):(a.Zd.clear(),ee.kg=!1,ne=y.vc.get(ee),ee.autoScale!==Nh&&ne!==null&&(delete ne.start.scale,delete ne.end.scale),wt.requestAnimationFrame(function(){a.zb===!1||y.bc||(ee.Gf("temporaryPixelRatio")&&rh(ee),k0(ee),a.zb=!1,y.start(),y.bc&&(ho(a),ee.Ya(),sg(y,0),Oh(ee,!0),Qi(a),ee.R("AnimationStarting",a)))}))}}function Fi(a){return a.Zd.contains("Trigger")&&a.Zd.count===1}function Do(a,y,ee,ne){a.isTicking||Fi(a)||y instanceof Oi&&(y.fromNode!==null||y.toNode!==null)||a.ce.add(y,"position",ee,ne,!1)}Rt=ta.prototype,Rt.fv=function(a){return this.ce.fv(a)},Rt.Xu=function(a){return this.ce.Xu(a)};function Wr(a,y){function ee(){if(0ue?ue+=360:Fe+=360),ue=se(ee,ue,Fe-ue,ne)%360,me=se(ee,me,Ye-me,ne),Ce=se(ee,Ce,Qe-Ce,ne),ee=se(ee,a,y-a,ne),"hsla("+ue+", "+me+"%, "+Ce+"%, "+ee+")"}function $a(){function a(ee,ne,se,ue,me,Ce){ee.position=new fn(ue(me,ne.x,se.x-ne.x,Ce),ue(me,ne.y,se.y-ne.y,Ce))}var y=new lo;y.add("position:diagram",a),y.add("position",a),y.add("position:part",function(ee,ne,se,ue,me,Ce){mea&&tr(a,">= 1",ta,"duration"),this.Dg=a}},isAnimating:{get:function(){return this.bc}},isTicking:{get:function(){return this.vq}},isInitial:{get:function(){return this.Gh},set:function(a){this.Gh=a}},defaultAnimation:{get:function(){return this.ce}},activeAnimations:{get:function(){return this.Ei}},initialAnimationStyle:{get:function(){return this.Pk},set:function(a){this.Pk=a}}}),ta.prototype.stopAnimation=ta.prototype.Cc;var Ao=null,ba=!1,bs=new wr(ta,"Default",1),Cl=new wr(ta,"AnimateLocations",2),Gs=new wr(ta,"None",3);ta.className="AnimationManager",ta.defineAnimationEffect=function(a,y){ba||($a(),ba=!0),Ao.add(a,y)},ta.Default=bs,ta.AnimateLocations=Cl,ta.None=Gs;function Fs(a){this.vu=this.Nw=this.Yd=this.H=null,this.Xk=this.bc=this.j=!1,this.cn=this.Qd=0,this.Lp=this.ot=nd,this.Wk=this.ho=!1,this.cu=1,this.au=0,this.Gd=this.Dg=NaN,this.gw=0,this.dn=null,this.o=Yo,this.vc=new lo,this.Tt=new lo,this.yl=new Xr,this.Ut=new Xr,this.dw=kp,a&&Object.assign(this,a)}Fs.prototype.suspend=function(){this.Xk=!0},Fs.prototype.advanceTo=function(a,y){y&&(this.Xk=!1),this.ho&&a>=this.Gd&&(this.Wk=!0,a-=this.Gd),this.gw=a,yd(this,!0),ho(this.Yd),Oh(this.H),Qi(this.Yd),this.H.redraw()};function _l(a,y){if(a.Tt.clear(),a.Wk=!1,a.au=0,a.Gd=NaN,0a.cn?a.Gd:ne-a.Qd;y&&(se=a.gw,sea.cn&&(a.ho&&!a.Wk?(a.Qd=+new Date,a.cn=a.Qd+a.Gd,a.Wk=!0):a.Ml(!1))}}}function sg(a,y){for(var ee=a.Gd,ne=a.vc.iterator,se=a.Wk;ne.next();){var ue=ne.key;if(!(ue instanceof ar&&ue.diagram===null)){var me=ne.value,Ce=se?me.end:me.start;me=se?me.start:me.end;var Fe=Ao,Ye;for(Ye in me)Ye==="position"&&(me["position:placeholder"]||me["position:nodeCollapse"])||Fe.get(Ye)===null||Fe.get(Ye)(ue,Ce[Ye],me[Ye],a.Lp,y,ee,a)}}}Rt.stop=function(){return this.bc?(this.Ml(!0),this):this},Rt.Ml=function(a){if(this.vu!==null&&this.vu.jo.remove(this.Nw),this.bc){var y=this.H,ee=this.Yd;this.Xk=this.bc=ee.Ok=!1,ho(ee);for(var ne=this.vc,se=this.yl.iterator;se.next();)y.remove(se.value);for(se=this.Ut.iterator;se.next();)se.value.v();se=this.ho,ne=ne.iterator;for(var ue=Ao;ne.next();){var me=ne.key,Ce=ne.value,Fe=se?Ce.end:Ce.start,Ye=se?Ce.start:Ce.end,Qe=Ce.Ku,at;for(at in Ye)if(ue.get(at)!==null){var mt=at;!Ce.Hu||mt!=="position:nodeCollapse"&&mt!=="position:placeholder"||(mt="position"),ue.get(mt)(me,Fe[at],Qe[at]!==void 0?Qe[at]:Ce.Hu?Fe[at]:Ye[at],this.Lp,this.Gd,this.Gd,this)}Ce.Hu&&Qe.location!==void 0&&me instanceof Wo&&(me.location=Qe.location),Ce.nv&&me instanceof Wo&&me.Zb(!1)}if(y.As.clear(),Np(y,!1),y.Ya(),y.N(),Oh(y,!0),ee.defaultAnimation===this){for(at=ee.pr.iterator;at.next();)se=at.value,se.Tg!==null&&(se.points=se.Tg,se.Tg=null);ee.pr.clear()}Oh(y,!0),this.isViewportUnconstrained&&(y.scrollMode=this.dw),Qi(ee),this.au++,!a&&this.cu>this.au?(this.Wk=!1,this.start()):(this.dn&&this.dn(this),_l(this,null),ee.Ml(this),y.$b())}},Rt.Cj=function(a,y){var ee=y.actualBounds,ne=null;if(y instanceof ci&&(ne=y.placeholder),ne!==null?(ee=ne.ga(Vu),ne=ne.padding,ee.x+=ne.left,ee.y+=ne.top,this.add(a,"position",ee,a.position,!1)):this.add(a,"position",new fn(ee.x+ee.width/2,ee.y+ee.height/2),a.position,!1),this.add(a,"scale",.01,a.scale,!1),a instanceof ci)for(a=a.memberParts;a.next();)ne=a.value,ne instanceof qi&&this.Cj(ne,y)},Rt.Aj=function(a,y){if(a.isVisible()){var ee=null;if(y instanceof ci&&(ee=y.placeholder),ee!==null){var ne=ee.ga(Vu);ee=ee.padding,ne.x+=ee.left,ne.y+=ee.top,this.add(a,"position:placeholder",a.position,ne,!0)}else this.add(a,"position:nodeCollapse",a.position,y,!0);if(this.add(a,"scale",a.scale,.01,!0),ne=this.vc,ne.contains(a)&&(ne.I(a).nv=!0),a instanceof ci)for(a=a.memberParts;a.next();)ne=a.value,ne instanceof qi&&this.Aj(ne,y)}},Rt.Ez=function(a){var y=this.Tt.get(a);return y===null&&(y={},this.Tt.add(a,y)),y},De.Object.defineProperties(Fs.prototype,{duration:{get:function(){return this.Dg},set:function(a){1>a&&tr(a,">= 1",Fs,"duration"),this.Dg=a}},reversible:{get:function(){return this.ho},set:function(a){this.ho=a}},runCount:{get:function(){return this.cu},set:function(a){0a?ee/2*a*a+y:-ee/2*(--a*(a-2)-1)+y}function Wf(a,y,ee,ne){return a===ne?y+ee:ee*(-Math.pow(2,-10*a/ne)+1)+y}Fs.className="Animation",Fs.EaseLinear=function(a,y,ee,ne){return ee*a/ne+y},Fs.EaseInOutQuad=nd,Fs.EaseInQuad=function(a,y,ee,ne){return ee*(a/=ne)*a+y},Fs.EaseOutQuad=function(a,y,ee,ne){return-ee*(a/=ne)*(a-2)+y},Fs.EaseInExpo=function(a,y,ee,ne){return a===0?y:ee*Math.pow(2,10*(a/ne-1))+y},Fs.EaseOutExpo=Wf;function xf(a,y,ee){this.start=a,this.end=y,this.Ku={},this.Hu=ee,this.nv=!1}xf.className="AnimationState";function rd(a,y,ee){this.xd=null,this.rf=a,this.so=ee||nu,this.uk=null,y!==void 0&&(this.uk=y,ee===void 0&&(this.so=xc))}rd.prototype.copy=function(){var a=new rd(this.rf);a.so=this.so;var y=this.uk;if(y!==null){var ee={};y.duration!==void 0&&(ee.duration=y.duration),y.finished!==void 0&&(ee.finished=y.finished),y.easing!==void 0&&(ee.easing=y.easing),a.uk=ee}return a};function Vl(a,y){a=a.uk,a!==null&&(a.duration&&(y.duration=a.duration),a.finished&&(y.finished=a.finished),a.easing&&(y.easing=a.easing))}De.Object.defineProperties(rd.prototype,{propertyName:{get:function(){return this.rf},set:function(a){this.rf=a}},animationSettings:{get:function(){return this.uk},set:function(a){this.uk=a}},startCondition:{get:function(){return this.so},set:function(a){this.so=a}}});var nu=new wr(rd,"Default",1),xc=new wr(rd,"Immediate",2),Mu=new wr(rd,"Bundled",3);rd.className="AnimationTrigger",rd.Default=nu,rd.Immediate=xc,rd.Bundled=Mu;function Kl(a){Ma(this),this.H=null,this.Pa=new Zr,this.xa="",this.pb=1,this.o=!1,this.j=this.Uh=this.u=this.Oi=this.Ni=this.Mi=this.Li=this.Ji=this.Ki=this.Ii=this.Qi=this.Hi=this.Pi=this.Gi=this.Fi=!0,this.Zq=[],a&&Object.assign(this,a)}Rt=Kl.prototype,Rt.clear=function(){for(var a=this.Pa,y=0;y=a)return y;for(var ee=0,ne=0,se=0,ue=0,me=0,Ce=this.Pa.iterator;Ce.next();){var Fe=Ce.value;Fe instanceof ci?se++:Fe instanceof qi?ne++:Fe instanceof Oi?ue++:Fe instanceof Es?me++:ee++}if(Ce="",0ee.Oq||Ce.height*se>ee.Oq?y.gc(a,ee):(se=y.actualBounds,ue=y.naturalBounds,se.width===0||se.height===0||isNaN(se.x)||isNaN(se.y)||!y.isVisible()||(ee=y.transform,y.areaBackground!==null&&(Lu(y,a,y.areaBackground,!0,!0,ue,se),a.fillRect(se.x,se.y,se.width,se.height)),y.areaBackground===null&&y.background===null&&(Lu(y,a,"rgba(0,0,0,0.3)",!0,!1,ue,se),a.fillRect(se.x,se.y,se.width,se.height)),y.background!==null&&(a.transform(ee.m11,ee.m12,ee.m21,ee.m22,ee.dx,ee.dy),Lu(y,a,y.background,!0,!1,ue,se),a.fillRect(0,0,ue.width/2,ue.height/2),ee.ws()||(y=1/(ee.m11*ee.m22-ee.m12*ee.m21),a.transform(ee.m22*y,-ee.m12*y,-ee.m21*y,ee.m11*y,y*(ee.m21*ee.dy-ee.m22*ee.dx),y*(ee.m12*ee.dx-ee.m11*ee.dy)))))),ne&&(a.restore(),a.Vc(!0))}},Rt.g=function(a,y,ee,ne,se){var ue=this.diagram;ue!==null&&ue.cb(Ei,a,this,y,ee,ne,se)},Rt.oi=function(a,y,ee){var ne=this.Pa;if(y.Ig=this,this===null&&Rh(y),a>=ne.count)a=ne.count;else if(ne.M(a)===y)return-1;return ne.Gb(a,y),y.Vo(ee),ne=this.diagram,ne!==null&&(ee?ne.N():ne.oi(y)),Jd(this,a,y),a},Rt.pc=function(a,y,ee){if(!ee&&y.layer!==this&&y.layer!==null)return y.layer.pc(a,y,ee);var ne=this.Pa;if(0>a||a>=ne.length){if(a=ne.indexOf(y),0>a)return-1}else if(ne.M(a)!==y&&(a=ne.indexOf(y),0>a))return-1;return y.Wo(ee),ne.mb(a),ne=this.diagram,ne!==null&&(ee?ne.N():ne.pc(y)),y.Ig=null,Rh(y),a};function Jd(a,y,ee){if(y=Uf(a,y,ee),ee instanceof ci&&ee!==null&&isNaN(ee.zOrder)){if(ee.memberParts.count!==0){for(var ne=-1,se=a.Pa.s,ue=se.length,me=0;mene&&Ce.containingGroup===ee&&(ne=me,0<=y))break}!(0>ne)&&ne=se)return y;if(0>y&&(y=a.indexOf(ee)),0>y)return-1;for(var ue=y-1,me=NaN;0<=ue&&(me=a.M(ue).zOrder,!!isNaN(me));)ue--;for(var Ce=y+1,Fe=NaN;Cene)for(;;){if(ue===-1||me<=ne){if(ue++,ue===y)break;return a.mb(y),a.Gb(ue,ee),ue}for(me=NaN;0<=--ue&&(me=a.M(ue).zOrder,isNaN(me)););}else if(!isNaN(Fe)&&Fe=ne){if(Ce--,Ce===y)break;return a.mb(y),a.Gb(Ce,ee),Ce}for(Fe=NaN;++Cea||1=a)return y;for(var ee=this.Wa.iterator;ee.next();)y+=` `+ee.value.toString(a-1);return y};function Ac(a,y){if(vl){if(y!=null||tn("Diagram setup requires an argument DIV."),a.Ka!==null&&tn("Diagram has already completed setup."),typeof y=="string"?a.Ka=wt.document.getElementById(y):y instanceof HTMLDivElement?a.Ka=y:tn("No DIV or DIV id supplied: "+y),a.Ka===null&&tn("Invalid DIV id; could not get element with id: "+y),a.Ka.H!==void 0&&tn("Invalid div id; div already has a Diagram associated with it."),!a.ol&&wt.ResizeObserver){var ee=un(function(){a.$b()},250);a.ol=new wt.ResizeObserver(function(){ee()}),a.ol.observe(a.Ka)}wt.getComputedStyle(a.Ka,null).position==="static"&&(a.Ka.style.position="relative"),y=5;var ne="rgba(2"+y+"5, 255, 255, 0)";y--,a.Ka.style["-webkit-tap-highlight-color"]=ne,a.Ka.innerHTML="",a.Ka.H=a,a.Ka.goDiagram=a,a.Ka.go=wt.go;var se=new gg(a);if(se.style!==void 0&&(se.style.position="absolute",se.style.top="0px",se.style.left="0px",wt.getComputedStyle(a.Ka,null).getPropertyValue("direction")==="rtl"&&(a.tn=!0),se.style.zIndex="2",se.style.userSelect="none",se.style.MozUserSelect="none",se.style.touchAction="none",se.style.letterSpacing="normal !important",se.style.wordSpacing="normal !important"),a.ta=se,a.ib=se.context,ne=a.ib,a.Mb=a.computePixelRatio(),a.viewSize.w()||(a.Aa=a.Ka.clientWidth||1,a.ya=a.Ka.clientHeight||1),G0(a,a.Aa,a.ya),a.Ka.insertBefore(se.Oa,a.Ka.firstChild),se=new gg(null),se.width=1,se.height=1,a.jw=se,a.oy=se.context,vl){se=Fn("div");var ue=Fn("div");se.style.position="absolute",se.style.overflow="auto",se.style.width=a.Aa+"px",se.style.height=a.ya+"px",se.style.zIndex="1",ue.style.position="absolute",ue.style.width="1px",ue.style.height="1px",a.Ka.appendChild(se),se.appendChild(ue),se.onscroll=fy,se.addEventListener("pointerdown",z0),se.H=a,se.uy=!0,se.vy=!0,a.ku=se,a.hu=ue}a.hk=un(function(){a.Yh=null,a.N()},300),a.Ov=un(function(){k0(a)},250),a.preventDefault=function(me){return me.preventDefault(),!1},a.$j=function(me){if(a.isEnabled){var Ce=id(a,me,!0);Ce.bubbles=!0;var Fe=0,Ye=0;Ce.delta=0,me.deltaX!==void 0?(me.deltaX!==0&&(Fe=0Math.abs(me.deltaY)?-Fe:-Ye):me.wheelDeltaX!==void 0?(me.wheelDeltaX!==0&&(Fe=0Math.abs(me.wheelDeltaY)?-Fe:-Ye):me.wheelDelta!==void 0&&me.wheelDelta!==0&&(Ce.delta=0Ce||Math.abs(Ye.y-me.screenY)>Ce)?a.yq++:a.yq=1,Fe.clickCount=a.yq,a.tw=me.timeStamp,a.uw.sg(me.screenX,me.screenY),a.doMouseDown(),me.button===1?me.preventDefault():od(Fe,me)}},a.dk=function(me){if(a.isEnabled){a.Vk=!0;var Ce=a.oj;if(Ce[0]===null||Ce[0].pointerId!==me.pointerId&&Ce[0].pointerType===me.pointerType){if(Ce[1]!==null&&Ce[1].pointerId===me.pointerId){Ce[1]=me;return}if(Ce[0]===null)Ce[0]=me;else return}else Ce[0]=me;if(Ce[0].pointerId===me.pointerId){Ce=xd(a,me,!1,!1,!1,Ce[1]!==null);var Fe=wt.document.elementFromPoint(me.clientX,me.clientY)||null;Fe!==null&&Fe.shadowRoot!==void 0&&Fe.shadowRoot!==null&&(Fe=Fe.shadowRoot.elementFromPoint(me.clientX,me.clientY));var Ye=a,Qe=me;Fe&&Fe.H&&(Qe=me,Ye=Fe.H),Ce.targetDiagram=Ye,Hf(a,Qe,Ce),Ce.targetObject=null,a.doMouseMove(),od(Ce,me)}}},a.fk=function(me){if(a.isEnabled){a.Vk=!0;var Ce=me.pointerType==="touch"||me.pointerType==="pen",Fe=a.Yt;if(Ce&&a.qu)delete Fe[me.pointerId],me.preventDefault();else if(Fe=a.oj,Fe[0]===null||Fe[0].pointerId!==me.pointerId&&Fe[0].pointerType===me.pointerType)Fe[1]!==null&&Fe[1].pointerId===me.pointerId&&(Fe[1]=null);else{Fe[0]=null,Fe=xd(a,me,!1,!0,!0,!1);var Ye=wt.document.elementFromPoint(me.clientX,me.clientY)||null;Ye!==null&&Ye.shadowRoot!==void 0&&Ye.shadowRoot!==null&&(Ye=Ye.shadowRoot.elementFromPoint(me.clientX,me.clientY)),Ye!==null&&Ye.H instanceof Mr&&Ye.H!==a&&Hf(Ye.H,me,Fe),Ye===null&&(Ye=me.target),Hf(a,me,Fe),Fe.clickCount=a.yq,Fe.targetDiagram=Cv(me,Ye),Fe.targetObject=null,a.doMouseUp(),od(Fe,me),Ce&&(a.wq=!1)}}},a.ek=function(me){if(a.isEnabled){a.Vk=!1;var Ce=a.Yt;Ce[me.pointerId]&&delete Ce[me.pointerId],Ce=a.oj,Ce[0]!==null&&Ce[0].pointerId===me.pointerId&&(Ce[0]=null),Ce[1]!==null&&Ce[1].pointerId===me.pointerId&&(Ce[1]=null),me.pointerType!=="touch"&&me.pointerType!=="pen"&&(me=a.currentTool,me.cancelWaitAfter(),me.standardMouseOver())}},a.ck=function(me){var Ce=a.oj;Ce[0]!==null&&Ce[0].pointerId===me.pointerId?(Ce[0]=null,a.wq=!1):Ce[1]!==null&&Ce[1].pointerId===me.pointerId&&(Ce[1]=null)},a.Vp=ne.Z["d"+Om[1]+Om[2]+"wI"+Fp.slice(1,5)]["b"+TT.slice(1,y)](ne.Z,Mv,y,y),ne.Vc(!0),Am(a),a.nl==="svg"&&(y=a.pj.get("svg"),a.Ka.appendChild(y.Oa),a.ib=y.context)}}Mr.prototype.addEventListener=function(a,y,ee,ne){a.addEventListener(y,ee,{capture:ne,passive:!1})},Mr.prototype.removeEventListener=function(a,y,ee,ne){a.removeEventListener(y,ee,{capture:ne})};function Am(a){var y=a.ta.Oa;y instanceof HTMLCanvasElement||(y=a.div),a.addEventListener(y,"pointerdown",a.ui,!1),a.addEventListener(y,"pointermove",a.dk,!1),a.addEventListener(y,"pointerup",a.fk,!1),a.addEventListener(y,"pointerout",a.ek,!1),a.addEventListener(y,"pointercancel",a.ck,!1),a.addEventListener(y,"pointerenter",a.bz,!1),a.addEventListener(y,"pointerleave",a.cz,!1),a.addEventListener(y,"wheel",a.$j,!1),a.addEventListener(y,"keydown",a.Qz,!1),a.addEventListener(y,"keyup",a.Rz,!1),a.addEventListener(y,"blur",a.Ny,!1),a.addEventListener(y,"focus",a.Oy,!1),a.addEventListener(y,"selectstart",function(ee){return ee.preventDefault(),!1},!1),a.addEventListener(y,"contextmenu",function(ee){return ee.preventDefault(),!1},!1),a.addEventListener(wt,"resize",a.Ov,!1)}function rh(a){30kt&&(this.position=bn.h(-(y.scrollWidth-this.Aa)+gn-this.Aa/se+Qe,this.position.y))),a.vy&&this.allowVerticalScroll&&(CeXt&&(this.position=bn.h(this.position.x,-(y.scrollHeight-this.ya)+a.scrollTop-this.ya/se+ue))),fn.free(bn),this.vd=!0,this.Ee=this.qr=!1,ne=this.documentBounds,se=this.viewportBounds,Qe=ne.right,kt=se.right,ue=ne.bottom,Xt=se.bottom,me=ne.x,at=se.x,Ce=ne.y,ne=se.y,mt>=Fe&&me>=at&&Qe<=kt&&(ee.style.width="1px"),Lt>=Ye&&Ce>=ne&&ue<=Xt&&(ee.style.height="1px"))}},Mr.prototype.computeBounds=function(a){return a===void 0&&(a=new Pr),Bc(this),j0(this,a)};function j0(a,y){if(a.fixedBounds.w())return y.assign(a.fixedBounds),y.Co(a.yb),y;for(var ee=!0,ne=a.Wa.s,se=ne.length,ue=0;ueee&&(y=ee),ya.maxScale&&(y=a.maxScale),y):y===K0?(y=Fe>Ce?(me-a.Db)/ne:(ue-a.Db)/se,y>ee&&(y=ee),ya.maxScale&&(y=a.maxScale),y):a.scale}Mr.prototype.zoomToFit=function(){var a=this.sj;this.sj=kp,this.scale=Gg(this,_d),a!==kp&&(xh(this,!1),Sm(this,this.documentBounds,this.Aa/this.Ca,this.ya/this.Ca,this.zk,!1)),this.sj=a},Rt=Mr.prototype,Rt.BA=function(a,y){y===void 0&&(y=_d);var ee=a.width,ne=a.height;if(!(ee===0||ne===0||isNaN(ee)&&isNaN(ne))){var se=1;if(y===_d||y===K0)if(isNaN(ee))se=this.viewportBounds.height*this.scale/ne;else if(isNaN(ne))se=this.viewportBounds.width*this.scale/ee;else{se=this.Aa;var ue=this.ya;se=y===K0?ue/ne>se/ee?(ue-(this.Be?this.Db:0))/ne:(se-(this.gf?this.Db:0))/ee:Math.min(ue/ne,se/ee)}this.scale=se,this.position=new fn(a.x,a.y)}},Rt.Jy=function(a,y){this.Va();var ee=this.documentBounds,ne=this.viewportBounds;this.position=new fn(ee.x+(a.x*ee.width+a.offsetX)-(y.x*ne.width-y.offsetX),ee.y+(a.y*ee.height+a.offsetY)-(y.y*ne.height-y.offsetY))},Rt.zz=function(a){if(a instanceof ar){this.eq=a;var y=fn.alloc();this.fq=this.op(a.ga(Vu,y)),fn.free(y)}else this.eq=null,this.fq=Vs};function Sm(a,y,ee,ne,se,ue){var me=fn.allocAt(a.pa.x,a.pa.y),Ce=me.x,Fe=me.y;if(a.eq!==null){var Ye=fn.alloc();Ye=a.eq.ga(Vu,Ye),Ce=Ye.x-a.fq.x/a.scale,Fe=Ye.y-a.fq.y/a.scale,se=su,fn.free(Ye)}(ue||a.scrollMode===kp)&&(se.sb()&&(ee>y.width&&(Ce=y.x+(se.x*y.width+se.offsetX)-(se.x*ee-se.offsetX)),ne>y.height&&(Fe=y.y+(se.y*y.height+se.offsetY)-(se.y*ne-se.offsetY))),se=a.rj,ue=ee-y.width,eey.left?Ce=y.left:Cey.top?Fe=y.top:Fey;y++){var ee=a.De.iterator;if(ee===null||a.De.count===0)break;a.De=new Xr,a.Nv(ee,a.De)}a.nodes.each(function(ne){ne instanceof ci&&ne.U&65536&&(ne.U=ne.U^65536)})}}Rt.Nv=function(a,y){for(a.reset();a.next();){var ee=a.value;!ee.Zc()||ee instanceof ci||(ee.si()?(ee.measure(1/0,1/0),ee.arrange()):y.add(ee))}for(a.reset();a.next();)ee=a.value,ee instanceof ci&&ee.isVisible()&&Jl(this,ee);for(a.reset();a.next();)ee=a.value,ee instanceof Oi&&ee.isVisible()&&(ee.si()?(ee.measure(1/0,1/0),ee.arrange()):y.add(ee));for(a.reset();a.next();)ee=a.value,ee instanceof Es&&ee.isVisible()&&(ee.si()?(ee.measure(1/0,1/0),ee.arrange()):y.add(ee))};function Jl(a,y){for(var ee=gr(),ne=gr(),se=y.memberParts;se.next();){var ue=se.value;ue.isVisible()&&(ue instanceof ci?(bf(ue)||Su(ue)||km(ue))&&Jl(a,ue):ue instanceof Oi?ue.fromNode===y||ue.toNode===y?ne.push(ue):ee.push(ue):(ue.measure(1/0,1/0),ue.arrange()))}for(a=ee.length,se=0;senr&&(gn=Xi.left,_n=Xi.right),bn.height>Or&&(jn=Xi.top,Yn=Xi.bottom)):(gn=Xi.left,_n=Xi.right,jn=Xi.top,Yn=Xi.bottom);var po=bn.width+gn+_n,ao=bn.height+jn+Yn;Xi=a.scale;var Di=po>Fe/Xi,hi=ao>Ye/Xi;if(!(ue||a.gf||a.Be||Di||hi))return!0;gn=bn.x-gn,Fe=Qe.x,_n=bn.right+_n,Ye=Qe.right+me,jn=bn.y-jn;var La=Qe.y;bn=bn.bottom+Yn,Qe=Qe.bottom+Ce;var ya="1px";if(Yn="1px",a.scrollMode===kp&&(Di||hi)&&(Di&&a.hasHorizontalScrollbar&&a.allowHorizontalScroll&&(Di=1,gn+1Ye+1&&(Di=Math.max((_n-Ye)*Xi+a.Aa,Di)),nr+me+1Qe+1&&(Di=Math.max((bn-Qe)*Xi+a.ya,Di)),Or+Ce+1Ye+1&&(me=Math.max((_n-Ye)*Xi+a.Aa,me)),nr+1Qe+1&&(Ce=Math.max((bn-Qe)*Xi+me,Ce)),Or+1Ye+1&&(y=a.position.x*Xi)),a.tn)switch(a.bu){case"negative":y=-(kt.scrollWidth-y-kt.clientWidth);break;case"reverse":y=kt.scrollWidth-y-kt.clientWidth}return kt.scrollLeft=y,a.hasVerticalScrollbar&&a.allowVerticalScroll&&(Or+1Qe+1&&(kt.scrollTop=a.position.y*Xi)),Fe=a.Aa,Ye=a.ya,kt.style.width=Fe+(a.gf?a.Db:0)+"px",kt.style.height=Ye+(a.Be?a.Db:0)+"px",ee!==Fe||ne!==Ye||a.animationManager.zb?(ee=Pr.allocAt(se,at,mt,Lt),a.onViewportBoundsChanged(ee,a.viewportBounds,Xi,ue),Pr.free(ee),!1):!0}Rt=Mr.prototype,Rt.add=function(a){var y=a.diagram;if(y!==this&&(y!==null&&tn("Cannot add part "+a.toString()+" to "+this.toString()+". It is already a part of "+y.toString()),y=this.Qj(a.layerName),y===null&&(y=this.Qj("")),y===null&&tn('Cannot add a Part when unable find a Layer named "'+a.layerName+'" and there is no default Layer'),a.layer!==y)){var ee=y.oi(99999999,a,a.diagram===this);0<=ee&&this.cb(bi,"parts",y,null,a,null,ee),y.isTemporary||this.Ya(),a.C(1),ee=a.layerChanged,ee!==null&&ee(a,null,y)}},Rt.oi=function(a){this.partManager.oi(a);var y=this;cd(a,function(ee){Pv(y,ee)}),(a instanceof Es||a instanceof ci&&a.placeholder!==null)&&a.v(),a.data!==null&&cd(a,function(ee){Zw(y.partManager,ee)}),Su(a)!==!0&&km(a)!==!0||this.De.add(a),Nw(a,!0,this),xT(a)?(a.actualBounds.w()&&this.N(Rm(a,a.actualBounds)),this.Ya()):a.isVisible()&&a.actualBounds.w()&&this.N(Rm(a,a.actualBounds)),this.$b()},Rt.pc=function(a){a.Ej(),this.partManager.pc(a);var y=this;a.data!==null&&cd(a,function(ee){Yw(y.partManager,ee,y)}),this.De.remove(a),xT(a)?(a.actualBounds.w()&&this.N(Rm(a,a.actualBounds)),this.Ya()):a.isVisible()&&a.actualBounds.w()&&this.N(Rm(a,a.actualBounds)),this.$b()},Rt.remove=function(a){H0(this,a,!0)};function H0(a,y,ee){var ne=y.layer;ne!==null&&ne.diagram===a&&(y.isSelected=!1,y.isHighlighted=!1,y.C(2),ee&&y.Lj(),ee=ne.pc(-1,y,!1),0<=ee&&a.cb(Zi,"parts",ne,y,null,ee,null),a=y.layerChanged,a!==null&&a(y,ne,null))}Rt.Is=function(a,y){if(y===void 0&&(y=!1),An(a))for(var ee=a.length,ne=0;nene&&this.Ya(),this},Rt.Cy=function(a,y){d1(this,a,y),a.Xe(this);var ee=this.Wa,ne=ee.indexOf(a);0<=ne&&(ee.remove(a),this.cc!==null&&this.cb(Zi,"layers",this,a,null,ne,null));var se=ee.count,ue;for(ue=0;uene&&this.Ya(),this},Rt.kA=function(a){if(a.diagram!==this&&tn("Cannot remove a Layer from another Diagram: "+a+" of "+a.diagram),a.name!==""){var y=this.Wa,ee=y.indexOf(a);if(y.remove(a)){for(y=a.Pa.copy().iterator;y.next();){var ne=y.value,se=ne.layerName;se!==a.name?ne.layerName=se:ne.layerName=""}this.cc!==null&&this.cb(Zi,"layers",this,a,null,ee,null),this.N(),this.Ya()}}},Rt.Qj=function(a){for(var y=this.layers;y.next();){var ee=y.value;if(ee.name===a)return ee}return null},Rt.Yw=function(a){return this.pf===null&&(this.pf=new Zr),this.pf.add(a),this.model.Pe(a),this},Rt.mA=function(a){this.pf!==null&&(this.pf.remove(a),this.pf.count===0&&(this.pf=null)),this.model.ik(a)},Rt.Pe=function(a){return this.zg===null&&(this.zg=new Zr),this.zg.add(a),this},Rt.ik=function(a){this.zg!==null&&(this.zg.remove(a),this.zg.count===0&&(this.zg=null))},Rt.ds=function(a){if(this.skipsUndoManager||this.model.skipsUndoManager||this.model.undoManager.Tu(a),a.change!==$r&&(this.isModified=!0),this.zg!==null)for(var y=this.zg,ee=y.length,ne=0;neat.Pa.indexOf(Lt)&&at.oi(mt,Lt,kt):(Lt.isSelected=!1,Lt.isHighlighted=!1,Lt.Wb(),at.pc(kt?mt:-1,Lt,kt)))}else at instanceof Mr?typeof mt=="number"&&Lt instanceof Kl&&(y?(Lt.Xe(this),this.Wa.Gb(mt,Lt)):this.Wa.mb(mt)):tn("unknown ChangedEvent.Remove object: "+a.toString());this.isModified=!0}else ne!==$r&&tn("unknown ChangedEvent: "+a.toString())}finally{this.skipsModelSourceBindings=ee}}},Mr.prototype.Ea=function(a){return this.undoManager.Ea(a)},Mr.prototype.eb=function(a){return this.undoManager.eb(a)},Mr.prototype.Kf=function(){return this.undoManager.Kf()},Mr.prototype.commit=function(a,y){y===void 0&&(y="");var ee=this.skipsUndoManager;y===null&&(this.skipsUndoManager=!0,y=""),this.undoManager.Ea(y);var ne=!1;try{a(this),ne=!0}finally{ne?this.undoManager.eb(y):this.undoManager.Kf(),this.skipsUndoManager=ee}},Mr.prototype.updateAllTargetBindings=function(a){this.partManager.updateAllTargetBindings(a)},Mr.prototype.rp=function(){this.partManager.rp()};function bm(a,y,ee){var ne=a.animationManager;if(a.vb||a.ld)a.Ca=ee,hg(a),a.N(),a.Ee=!0,ne.zb&&(Fi(ne)||ne.ce.add(ne.H,"scale",y,a.Ca));else if(a.ta===null)a.Ca=ee,hg(a);else{a.vb=!0;var se=a.viewportBounds.copy(),ue=a.Aa,me=a.ya,Ce=a.zoomPoint.x,Fe=a.zoomPoint.y,Ye=a.contentAlignment;isNaN(Ce)&&(Ye.$c()?Ye.Hf(kc)?Ce=0:Ye.Hf(Hc)&&(Ce=ue-1):Ce=Ye.sb()?Ye.x*(ue-1):ue/2),isNaN(Fe)&&(Ye.$c()?Ye.Hf(vh)?Fe=0:Ye.Hf(th)&&(Fe=me-1):Fe=Ye.sb()?Ye.y*(me-1):me/2),a.scaleComputation===null||a.animationManager.defaultAnimation.isAnimating||(ee=a.scaleComputation(a,ee)),eea.maxScale&&(ee=a.maxScale),ue=fn.allocAt(a.pa.x+Ce/y-Ce/ee,a.pa.y+Fe/y-Fe/ee),a.position=ue,fn.free(ue),a.Ca=ee,hg(a),a.vb=!1,a.onViewportBoundsChanged(se,a.viewportBounds,y,!1),xh(a,!1),ne.zb&&(Fi(ne)||ne.ce.add(ne.H,"scale",y,a.Ca))}}Mr.prototype.onViewportBoundsChanged=function(a,y,ee,ne){if(!a.D(y)){ne===void 0&&(ne=!1),ne||(this.Ee=!0),this.vd=!0;var se=this.layout;se===null||!se.isViewportSized||this.autoScale!==Nh||a.width===y.width&&a.height===y.height||se.C(),se=this.currentTool,this.Vk===!0&&se instanceof Ai&&(this.lastInput.documentPoint=this.Ps(this.lastInput.viewPoint),so(se,this)),this.vb||this.invalidateViewport(a,y),cg(this),this.fc.scale=ee,this.fc.position.x=a.x,this.fc.position.y=a.y,this.fc.bounds.assign(a),this.fc.canvasSize.width=Math.round(a.width*ee),this.fc.canvasSize.height=Math.round(a.height*ee),this.fc.newCanvasSize.width=this.Aa,this.fc.newCanvasSize.height=this.ya,this.fc.isScroll=ne,this.R("ViewportBoundsChanged",this.fc,a),this.isVirtualized&&this.links.each(function(ue){ue.isAvoiding&&ue.actualBounds.Yc(y)&&ue.bb()})}};function cg(a,y){var ee=a.fe;if(ee!==null&&ee.visible){for(var ne=Ri.alloc(),se=1,ue=1,me=ee.O.s,Ce=me.length,Fe=0;FeQe||(N2(Ye.figure)?ue=ue*Qe/cr.vx(ue,Qe):se=se*Qe/cr.vx(se,Qe))}if(me=ee.gridCellSize,ne.h(ue*me.width,se*me.height),y!==void 0)se=y.width,ue=y.height,a=y.x,me=y.y;else{if(y=Pr.alloc(),a=a.viewportBounds,y.h(a.x,a.y,a.width,a.height),!y.w()){Pr.free(y);return}se=y.width,ue=y.height,a=y.x,me=y.y,Pr.free(y)}ee.width=se+2*ne.width,ee.height=ue+2*ne.height,y=fn.alloc(),cr.No(a,me,0,0,ne.width,ne.height,y),y.offset(-ne.width,-ne.height),Ri.free(ne),ee.part.location=y,fn.free(y)}}Mr.prototype.clearSelection=function(a){a===void 0&&(a=!1);var y=this.selection;if(y.count!==0){a||this.R("ChangingSelection",y);for(var ee=y.Fa(),ne=ee.length,se=0;se=ne&&!ue.defaultAnimation.isAnimating&&!ue.zb&&(y||ga(ue,"Layout")),a.xh=!1;for(var me=a.ai.iterator;me.next();)p1(a,me.value,y,ne);se.isValidLayout||(!y||se.isRealtime||se.isRealtime===null||ne===0?(se.doLayout(a),Bc(a),se.isValidLayout=!0):a.xh=!0)}finally{y=a.undoManager.isInternalTransaction,ne===0&&(a.eb("Layout"),a.undoManager.isInternalTransaction=!1),!y||ne!==0&&ne!==1||ki(ue),a.aa=ee}}}function p1(a,y,ee,ne){if(y!==null){for(var se=y.gl.iterator;se.next();)p1(a,se.value,ee,ne);se=y.layout,se===null||se.isValidLayout||(!ee||se.isRealtime||ne===0?(y.rh=!y.location.w(),se.doLayout(y),y.C(32),Jl(a,y),se.isValidLayout=!0):a.xh=!0)}}Rt.yz=function(){for(var a=new Zr,y=this.nodes;y.next();){var ee=y.value;ee.isTopLevel&&ee.kh()===null&&a.add(ee)}return a.iterator};function lA(a){function y(se){var ue=se.toLowerCase(),me=new Zr;ee.add(se,me),ee.add(ue,me),ne.add(se,se),ne.add(ue,se)}var ee=new lo,ne=new lo;y("InitialAnimationStarting"),y("AnimationStarting"),y("AnimationFinished"),y("BackgroundSingleClicked"),y("BackgroundDoubleClicked"),y("BackgroundContextClicked"),y("ClipboardChanged"),y("ClipboardPasted"),y("DocumentBoundsChanged"),y("ExternalObjectsDropped"),y("GainedFocus"),y("InitialLayoutCompleted"),y("LayoutCompleted"),y("LinkDrawn"),y("LinkRelinked"),y("LinkReshaped"),y("LostFocus"),y("Modified"),y("ObjectSingleClicked"),y("ObjectDoubleClicked"),y("ObjectContextClicked"),y("PartCreated"),y("PartResized"),y("PartRotated"),y("SelectionMoved"),y("SelectionCopied"),y("SelectionDeleting"),y("SelectionDeleted"),y("SelectionGrouped"),y("SelectionUngrouped"),y("ChangingSelection"),y("ChangedSelection"),y("SubGraphCollapsed"),y("SubGraphExpanded"),y("TextEdited"),y("TreeCollapsed"),y("TreeExpanded"),y("ViewportBoundsChanged"),y("InvalidateDraw"),a.iw=ee,a.hw=ne}function Au(a,y){var ee=a.hw.I(y);return ee!==null?ee:a.hw.I(y.toLowerCase())}function Is(a,y){var ee=a.iw.I(y);if(ee!==null||(ee=a.iw.I(y.toLowerCase()),ee!==null))return ee;tn("Unknown DiagramEvent name: "+y)}Rt.Bj=function(a,y){return a=Is(this,a),a!==null&&a.add(y),this},Rt.am=function(a,y){a=Is(this,a),a!==null&&a.remove(y)},Rt.R=function(a,y,ee){var ne=Is(this,a),se=new xr;if(se.diagram=this,a=Au(this,a),a!==null&&(se.name=a),y!==void 0&&(se.subject=y),ee!==void 0&&(se.parameter=ee),y=ne.length,y===1)ne.M(0)(se);else if(y!==0)for(ne=ne.Fa(),ee=0;ee=ee.top&&0>=ee.left&&0>=ee.right&&0>=ee.bottom)return y;var ne=this.viewportBounds,se=this.scale;ne=Pr.allocAt(0,0,ne.width*se,ne.height*se);var ue=fn.allocAt(0,0);if(a.x>=ne.x&&a.xne.x+ne.width-ee.right&&this.allowHorizontalScroll&&(me=Math.max(this.scrollHorizontalLineChange,1),me|=0,ue.x+=me,a.x>ne.x+ne.width-ee.right/2&&(ue.x+=me),a.x>ne.x+ne.width-ee.right/4&&(ue.x+=4*me));return a.y>=ne.y&&a.yne.y+ne.height-ee.bottom&&this.allowVerticalScroll&&(me=Math.max(this.scrollVerticalLineChange,1),me|=0,ue.y+=me,a.y>ne.y+ne.height-ee.bottom/2&&(ue.y+=me),a.y>ne.y+ne.height-ee.bottom/4&&(ue.y+=4*me)),ue.Xa(Yo)||(y=new fn(y.x+ue.x/se,y.y+ue.y/se)),Pr.free(ne),fn.free(ue),y},Rt=Mr.prototype,Rt.Cs=function(){return null},Rt.av=function(){return null},Rt.bs=function(a,y){this.pj.add(a,y)},Rt.Fu=function(a){(this.Pw=a)||this.nodes.each(function(y){y instanceof ci&&(y.$p=null)})};function Sf(a,y,ee){function ne(){var Qe=+new Date;for(ue=!0,me.reset();me.next();)if(!me.value[0].al){ue=!1;break}ue||Qe-Ye>Fe?y(ee,se,Ce):wt.requestAnimationFrame(ne)}for(var se=ee.callback,ue=!0,me=a.Og.iterator;me.next();)if(!me.value[0].al){ue=!1;break}if(typeof se!="function"||ue)return y(ee,se,a);var Ce=a,Fe=ee.callbackTimeout||300,Ye=+new Date;return wt.requestAnimationFrame(function(){ne()}),null}Rt.Wz=function(a){return vl?(a===void 0&&(a={}),a.returnType="Image",this.Jx(a)):null},Rt.Jx=function(a){return a===void 0&&(a={}),Sf(this,this.Xz,a)},Rt.Xz=function(a,y,ee){var ne=Fd(ee,a,"canvas",null);if(ne===null)return null;ee=ne.Z.canvas;var se=null;if(ee!==null)switch(se=a.returnType,se===void 0?se="string":se=se.toLowerCase(),se){case Fp+"data":se=ne.getImageData(0,0,ee.width,ee.height);break;case Fp:ne=(a.document||document).createElement("img"),ne.src=ee.toDataURL(a.type,a.details),se=ne;break;case"blob":return typeof y!="function"&&tn('Error: Diagram.makeImageData called with "returnType: toBlob", but no required "callback" function property defined.'),typeof ee.toBlob=="function"?(ee.toBlob(y,a.type,a.details),"toBlob"):(y(null),null);default:se=ee.toDataURL(a.type,a.details)}return typeof y=="function"?(y(se),null):se};function Fd(a,y,ee,ne){if(a.animationManager.Cc(),a.bd(),a.ta===null)return null;typeof y!="object"&&tn("properties argument must be an Object.");var se=y.size||null,ue=y.scale||null;y.scale!==void 0&&isNaN(y.scale)&&(ue="NaN");var me=y.maxSize;y.maxSize===void 0&&(me=ee==="SVG"?new Ri(1/0,1/0):new Ri(2e3,2e3));var Ce=y.position||null,Fe=y.parts||null,Ye=y.padding===void 0?1:y.padding,Qe=y.background||null,at=y.omitTemporary;at===void 0&&(at=!0);var mt=y.document||document,Lt=y.elementFinished||null,kt=y.showTemporary;kt===void 0&&(kt=!at),y=y.showGrid,y===void 0&&(y=kt),se!==null&&isNaN(se.width)&&isNaN(se.height)&&(se=null),typeof Ye=="number"?Ye=new Ro(Ye):Ye instanceof Ro||tn("MakeImage padding must be a Margin or a number."),Ye.left=Math.max(Ye.left,0),Ye.right=Math.max(Ye.right,0),Ye.top=Math.max(Ye.top,0),Ye.bottom=Math.max(Ye.bottom,0),a.ib.Vc(!0),at=new gg(null,mt,void 0,!0);var Xt=at.context;if(!(se||ue||Fe||Ce))return at.width=a.Aa+Math.ceil(Ye.left+Ye.right),at.height=a.ya+Math.ceil(Ye.top+Ye.bottom),ee==="SVG"?ne===null?null:(ne.resize(at.width,at.height,at.width,at.height),ne.ownerDocument=mt,ne.hs=Lt,Zu(a,ne.context,Ye,new Ri(at.width,at.height),a.Ca,a.pa,Fe,Qe,kt,y),ne.context):(a.Xm=!1,Zu(a,Xt,Ye,new Ri(at.width,at.height),a.Ca,a.pa,Fe,Qe,kt,y),a.Xm=!0,at.context);var bn=a.Pp,gn=a.documentBounds.copy();if(gn.Fv(a.yb),kt)for(var _n=a.Wa.s,jn=_n.length,Yn=0;Ynbn?(ue=bn,se=gn.width,gn=gn.height):(se=me.width,gn=me.height)):(se=gn.width*ue,gn=gn.height*ue):(ue=bn,se=gn.width,gn=gn.height),Ye!==null?(se+=Ce,gn+=jn):Ye=new Ro(0),me!==null&&(bn=me.width,me=me.height,isNaN(bn)&&(bn=2e3),isNaN(me)&&(me=2e3),isFinite(bn)&&(se=Math.min(se,bn)),isFinite(me)&&(gn=Math.min(gn,me))),at.width=Math.ceil(se),at.height=Math.ceil(gn),ee==="SVG"?ne===null?null:(ne.resize(at.width,at.height,at.width,at.height),ne.ownerDocument=mt,ne.hs=Lt,Zu(a,ne.context,Ye,new Ri(Math.ceil(se),Math.ceil(gn)),ue,_n,Fe,Qe,kt,y),ne.context):(a.Xm=!1,Zu(a,Xt,Ye,new Ri(Math.ceil(se),Math.ceil(gn)),ue,_n,Fe,Qe,kt,y),a.Xm=!0,at.context)}De.Object.defineProperties(Mr.prototype,{renderer:{get:function(){return this.nl},set:function(a){this instanceof ct||(a===""&&(a="default"),a=a.toLowerCase(),a!==this.nl&&(this.nl=a,a==="default"||a==="canvas"?(a=this.pj.get("svg"),a!==null&&a.Oa.remove(),this.ta&&(this.ib=this.ta.context)):a==="svg"?(this.pj.contains("svg")?a=this.pj.get("svg"):(a=new _p(this,wt.document),this.bs("svg",a)),this.div!==null&&this.div.appendChild(a.Oa),this.ib=a.context,this.ta&&(this.ta.context.setTransform(this.Mb,0,0,this.Mb,0,0),this.ta.context.clearRect(0,0,this.Aa,this.ya))):a!=="debug"||this.pj.contains("SVG")||(a=new _p(this,wt.document),this.bs("SVG",a),a.Oa.style.backgroundColor="whitesmoke",this.div!==null&&this.div.after(a.Oa)),this.hk()))}},div:{get:function(){return this.Ka},set:function(a){if(this.Ka!==a){var y=this.Ka;y!==null?(y.H=void 0,y.goDiagram=void 0,y.go=void 0,y.innerHTML="",this.ta!==null&&(y=this.ta.Oa,this.removeEventListener(y,"pointermove",this.dk,!1),this.removeEventListener(y,"pointerdown",this.ui,!1),this.removeEventListener(y,"pointerup",this.fk,!1),this.removeEventListener(y,"pointerout",this.ek,!1),this.removeEventListener(y,"pointercancel",this.ck,!1),this.ta.mx()),this.ol&&(this.ol.disconnect(),this.ol=null),y=this.toolManager,y!==null&&(y.mouseDownTools.each(function(ee){ee.cancelWaitAfter()}),y.mouseMoveTools.each(function(ee){ee.cancelWaitAfter()}),y.mouseUpTools.each(function(ee){ee.cancelWaitAfter()})),y.cancelWaitAfter(),this.currentTool.doCancel(),this.ta=null,this.removeEventListener(wt,"resize",this.Ov,!1),this.removeEventListener(wt,"wheel",this.$j,!0),$d===this&&($d=null)):this.ui===null&&(this.hf=!1),this.Ka=null,a!==null&&((y=a.H)&&(y.div=null),Ac(this,a),this.hk())}}},$w:{get:function(){return this.Sq}},pi:{get:function(){return this.hf}},draggedLink:{get:function(){return this.nt},set:function(a){this.nt!==a&&(this.nt=a,a!==null&&(this.Vt=a.fromPort,this.Wt=a.toPort))}},Mx:{get:function(){return this.Vt},set:function(a){this.Vt=a}},Nx:{get:function(){return this.Wt},set:function(a){this.Wt=a}},animationManager:{get:function(){return this.Yd}},undoManager:{get:function(){return this.cc.undoManager}},skipsUndoManager:{get:function(){return this.Wg},set:function(a){this.Wg=a,this.cc.skipsUndoManager=a}},delaysLayout:{get:function(){return this.lt},set:function(a){this.lt=a}},opacity:{get:function(){return this.pb},set:function(a){var y=this.pb;y!==a&&((0>a||1a&&tr(a,">= 0",Mr,"scrollHorizontalLineChange"),this.iu=a,this.g("scrollHorizontalLineChange",y,a))}},scrollVerticalLineChange:{get:function(){return this.mu},set:function(a){var y=this.mu;y!==a&&(0>a&&tr(a,">= 0",Mr,"scrollVerticalLineChange"),this.mu=a,this.g("scrollVerticalLineChange",y,a))}},lastInput:{get:function(){return this.cj},set:function(a){this.cj=a}},previousInput:{get:function(){return this.Qg},set:function(a){this.Qg=a}},firstInput:{get:function(){return this.bq},set:function(a){this.bq=a}},currentCursor:{get:function(){return this.it},set:function(a){if(a===""&&(a=this.Op),this.it!==a){var y=this.ta,ee=this.Ka;if(y!==null&&ee!==null){this.it=a;var ne=y.style.cursor;y.style.cursor=a,ee.style.cursor=a,y.style.cursor===ne&&(y.style.cursor="-webkit-"+a,ee.style.cursor="-webkit-"+a,y.style.cursor===ne&&(y.style.cursor="-moz-"+a,ee.style.cursor="-moz-"+a,y.style.cursor===ne&&(y.style.cursor=a,ee.style.cursor=a)))}}}},defaultCursor:{get:function(){return this.Op},set:function(a){a===""&&(a="auto");var y=this.Op;y!==a&&(this.Op=a,this.g("defaultCursor",y,a))}},click:{get:function(){return this.zh},set:function(a){var y=this.zh;y!==a&&(this.zh=a,this.g("click",y,a))}},doubleClick:{get:function(){return this.Fh},set:function(a){var y=this.Fh;y!==a&&(this.Fh=a,this.g("doubleClick",y,a))}},contextClick:{get:function(){return this.Bh},set:function(a){var y=this.Bh;y!==a&&(this.Bh=a,this.g("contextClick",y,a))}},mouseOver:{get:function(){return this.Qh},set:function(a){var y=this.Qh;y!==a&&(this.Qh=a,this.g("mouseOver",y,a))}},mouseHover:{get:function(){return this.Oh},set:function(a){var y=this.Oh;y!==a&&(this.Oh=a,this.g("mouseHover",y,a))}},mouseHold:{get:function(){return this.Nh},set:function(a){var y=this.Nh;y!==a&&(this.Nh=a,this.g("mouseHold",y,a))}},mouseDragOver:{get:function(){return this.Qt},set:function(a){var y=this.Qt;y!==a&&(this.Qt=a,this.g("mouseDragOver",y,a))}},mouseDrop:{get:function(){return this.Lh},set:function(a){var y=this.Lh;y!==a&&(this.Lh=a,this.g("mouseDrop",y,a))}},handlesDragDropForTopLevelParts:{get:function(){return this.xt},set:function(a){var y=this.xt;y!==a&&(this.xt=a,this.g("handlesDragDropForTopLevelParts",y,a))}},mouseEnter:{get:function(){return this.Mh},set:function(a){var y=this.Mh;y!==a&&(this.Mh=a,this.g("mouseEnter",y,a))}},mouseLeave:{get:function(){return this.Ph},set:function(a){var y=this.Ph;y!==a&&(this.Ph=a,this.g("mouseLeave",y,a))}},toolTip:{get:function(){return this.$h},set:function(a){var y=this.$h;y!==a&&(this.$h=a,this.g("toolTip",y,a))}},contextMenu:{get:function(){return this.Ch},set:function(a){var y=this.Ch;y!==a&&(this.Ch=a,this.g("contextMenu",y,a))}},commandHandler:{get:function(){return this.nb},set:function(a){this.nb!==a&&(this.nb=a,a.Xe(this))}},toolManager:{get:function(){return this.te},set:function(a){this.te!==a&&(this.te=a,a.diagram=this)}},defaultTool:{get:function(){return this.ob},set:function(a){var y=this.ob;y!==a&&(this.ob=a,a.diagram=this,this.currentTool===y&&(this.currentTool=a))}},currentTool:{get:function(){return this.hb},set:function(a){var y=this.hb;y&&(y.isActive&&y.doDeactivate(),y.cancelWaitAfter(),y.doStop()),a===null&&(a=this.defaultTool),a!==null&&(this.hb=a,a.diagram=this,a.doStart())}},selection:{get:function(){return this.Hw}},maxSelectionCount:{get:function(){return this.Nt},set:function(a){var y=this.Nt;if(y!==a)if(0<=a&&!isNaN(a)){if(this.Nt=a,this.g("maxSelectionCount",y,a),!this.undoManager.isUndoingRedoing&&(a=this.selection.count-a,0= 0",Mr,"maxSelectionCount")}},nodeSelectionAdornmentTemplate:{get:function(){return this.St},set:function(a){var y=this.St;y!==a&&(this.St=a,this.g("nodeSelectionAdornmentTemplate",y,a))}},groupSelectionAdornmentTemplate:{get:function(){return this.wt},set:function(a){var y=this.wt;y!==a&&(this.wt=a,this.g("groupSelectionAdornmentTemplate",y,a))}},linkSelectionAdornmentTemplate:{get:function(){return this.Kt},set:function(a){var y=this.Kt;y!==a&&(this.Kt=a,this.g("linkSelectionAdornmentTemplate",y,a))}},highlighteds:{get:function(){return this.nw}},isModified:{get:function(){var a=this.undoManager;return a.isEnabled?a.currentTransaction!==null?!0:this.rn&&this.Ce!==a.historyIndex:this.rn},set:function(a){if(this.rn!==a){this.rn=a;var y=this.undoManager;!a&&y.isEnabled&&(this.Ce=y.historyIndex),a||Vg(this)}}},model:{get:function(){return this.cc},set:function(a){var y=this.cc;if(y!==a){this.currentTool.doCancel(),y&&y.undoManager!==a.undoManager&&y.undoManager.isInTransaction&&tn("Do not replace a Diagram.model while a transaction is in progress."),this.animationManager.Cc(!0);var ee=o0(this,!0);this.hf=!1,this.fn=!0,this.Ce=-2,this.kg=!1;var ne=this.vb;this.vb=!0,ga(this.animationManager,"Model"),y&&(this.pf!==null&&this.pf.each(function(ue){return y.ik(ue)}),y.ik(this.Oc)),this.cc=a,this.partManager=f1(this.cc.type);for(var se=0;sethis.scale&&(this.scale=a)):tr(a,"> 0",Mr,"minScale"))}},maxScale:{get:function(){return this.Mt},set:function(a){var y=this.Mt;y!==a&&(0 0",Mr,"maxScale"))}},zoomPoint:{get:function(){return this.zu},set:function(a){this.zu.D(a)||(this.zu=a=a.J())}},contentAlignment:{get:function(){return this.zk},set:function(a){var y=this.zk;y.D(a)||(this.zk=a=a.J(),this.g("contentAlignment",y,a),xh(this,!1))}},initialContentAlignment:{get:function(){return this.pq},set:function(a){var y=this.pq;y.D(a)||(this.pq=a=a.J(),this.g("initialContentAlignment",y,a))}},padding:{get:function(){return this.yb},set:function(a){typeof a=="number"&&(a=new Ro(a));var y=this.yb;y.D(a)||(this.yb=a=a.J(),this.Ya(),this.g("padding",y,a))}},partManager:{get:function(){return this.Pc},set:function(a){var y=this.Pc;y!==a&&(a.diagram!==null&&tn("Cannot share PartManagers between Diagrams: "+a.toString()),y&&y.Xe(null),this.Pc=a,a.Xe(this))}},nodes:{get:function(){return this.partManager.nodes.iterator}},links:{get:function(){return this.partManager.links.iterator}},parts:{get:function(){return this.partManager.parts.iterator}},layout:{get:function(){return this.Sc},set:function(a){var y=this.Sc;y!==a&&(this.Sc=a,a.diagram=this,a.group=null,this.xh=!0,this.g("layout",y,a),this.$b())}},isTreePathToChildren:{get:function(){return this.Ht},set:function(a){var y=this.Ht;if(y!==a&&(this.Ht=a,this.g("isTreePathToChildren",y,a),!this.undoManager.isUndoingRedoing))for(a=this.nodes;a.next();)kA(a.value)}},treeCollapsePolicy:{get:function(){return this.uu},set:function(a){var y=this.uu;y!==a&&(a!==Z0&&a!==ju&&a!==u0&&tn("Unknown Diagram.treeCollapsePolicy: "+a),this.uu=a,this.g("treeCollapsePolicy",y,a))}},Ue:{get:function(){return this.pw},set:function(a){this.pw=a}},avoidanceCellSize:{get:function(){return this.aw},set:function(a){this.Xh=null,this.aw=new Ri(Math.max(1,a.width),Math.max(1,a.height))}},avoidanceLimit:{get:function(){return this.bw},set:function(a){this.bw=Math.max(1,a)}},autoScrollInterval:{get:function(){return this.vp},set:function(a){var y=this.vp;y!==a&&(this.vp=a,this.g("autoScrollInterval",y,a))}},autoScrollRegion:{get:function(){return this.xp},set:function(a){typeof a=="number"&&(a=new Ro(a));var y=this.xp;y.D(a)||(this.xp=a=a.J(),this.Ya(),this.g("autoScrollRegion",y,a))}}}),De.Object.defineProperties(Mr,{licenseKey:{get:function(){return Tm.jc()},set:function(a){Tm.add(a.replace(/\s/g,""))}},version:{get:function(){return Dm}}}),Mr.prototype.makeImageData=Mr.prototype.Jx,Mr.prototype.makeImage=Mr.prototype.Wz,Mr.prototype.cacheGroupExternalLinks=Mr.prototype.Fu,Mr.prototype.addRenderer=Mr.prototype.bs,Mr.prototype.makeSVG=Mr.prototype.av,Mr.prototype.makeSvg=Mr.prototype.Cs,Mr.prototype.stopAutoScroll=Mr.prototype.ug,Mr.prototype.doAutoScroll=Mr.prototype.gs,Mr.prototype.isUnoccupied=Mr.prototype.Yj,Mr.prototype.raiseDiagramEvent=Mr.prototype.R,Mr.prototype.removeDiagramListener=Mr.prototype.am,Mr.prototype.addDiagramListener=Mr.prototype.Bj,Mr.prototype.findTreeRoots=Mr.prototype.yz,Mr.prototype.layoutDiagram=Mr.prototype.Uz,Mr.prototype.findTopLevelGroups=Mr.prototype.qz,Mr.prototype.findTopLevelNodesAndLinks=Mr.prototype.rz,Mr.prototype.ensureBounds=Mr.prototype.Va,Mr.prototype.findLinksByExample=Mr.prototype.ls,Mr.prototype.findNodesByExample=Mr.prototype.ms,Mr.prototype.findLinkForData=Mr.prototype.Kc,Mr.prototype.findNodeForData=Mr.prototype.ii,Mr.prototype.findPartForData=Mr.prototype.Lc,Mr.prototype.findLinkForKey=Mr.prototype.findLinkForKey,Mr.prototype.findNodeForKey=Mr.prototype.Vb,Mr.prototype.findPartForKey=Mr.prototype.findPartForKey,Mr.prototype.rebuildParts=Mr.prototype.Wd,Mr.prototype.transformViewToDoc=Mr.prototype.Ps,Mr.prototype.transformRectDocToView=Mr.prototype.zA,Mr.prototype.transformDocToView=Mr.prototype.op,Mr.prototype.centerRect=Mr.prototype.es,Mr.prototype.scrollToRect=Mr.prototype.tv,Mr.prototype.scroll=Mr.prototype.scroll,Mr.prototype.highlightCollection=Mr.prototype.Jz,Mr.prototype.highlight=Mr.prototype.Iz,Mr.prototype.selectCollection=Mr.prototype.rA,Mr.prototype.select=Mr.prototype.select,Mr.prototype.updateAllRelationshipsFromData=Mr.prototype.rp,Mr.prototype.updateAllTargetBindings=Mr.prototype.updateAllTargetBindings,Mr.prototype.commit=Mr.prototype.commit,Mr.prototype.rollbackTransaction=Mr.prototype.Kf,Mr.prototype.commitTransaction=Mr.prototype.eb,Mr.prototype.startTransaction=Mr.prototype.Ea,Mr.prototype.raiseChanged=Mr.prototype.g,Mr.prototype.raiseChangedEvent=Mr.prototype.cb,Mr.prototype.removeChangedListener=Mr.prototype.ik,Mr.prototype.addChangedListener=Mr.prototype.Pe,Mr.prototype.removeModelChangedListener=Mr.prototype.mA,Mr.prototype.addModelChangedListener=Mr.prototype.Yw,Mr.prototype.findLayer=Mr.prototype.Qj,Mr.prototype.removeLayer=Mr.prototype.kA,Mr.prototype.addLayerAfter=Mr.prototype.Cy,Mr.prototype.addLayerBefore=Mr.prototype.Ww,Mr.prototype.addLayer=Mr.prototype.Al,Mr.prototype.moveParts=Mr.prototype.moveParts,Mr.prototype.copyParts=Mr.prototype.Kj,Mr.prototype.removeParts=Mr.prototype.Is,Mr.prototype.remove=Mr.prototype.remove,Mr.prototype.add=Mr.prototype.add,Mr.prototype.clearDelayedGeometries=Mr.prototype.bx,Mr.prototype.setProperties=Mr.prototype.nm,Mr.prototype.attach=Mr.prototype.Du,Mr.prototype.set=Mr.prototype.set,Mr.prototype.resetInputOptions=Mr.prototype.Sx,Mr.prototype.setInputOption=Mr.prototype.sA,Mr.prototype.getInputOption=Mr.prototype.Ql,Mr.prototype.resetRenderingHints=Mr.prototype.Tx,Mr.prototype.setRenderingHint=Mr.prototype.Xx,Mr.prototype.getRenderingHint=Mr.prototype.Gf,Mr.prototype.maybeUpdate=Mr.prototype.bd,Mr.prototype.requestUpdate=Mr.prototype.$b,Mr.prototype.delayInitialization=Mr.prototype.Xy,Mr.prototype.isUpdateRequested=Mr.prototype.Pz,Mr.prototype.invalidateDocumentBounds=Mr.prototype.Ya,Mr.prototype.findObjectsNear=Mr.prototype.og,Mr.prototype.findPartsNear=Mr.prototype.mz,Mr.prototype.findObjectsIn=Mr.prototype.Cf,Mr.prototype.findPartsIn=Mr.prototype.ux,Mr.prototype.findObjectsAt=Mr.prototype.ji,Mr.prototype.findPartsAt=Mr.prototype.lz,Mr.prototype.findObjectAt=Mr.prototype.ic,Mr.prototype.findPartAt=Mr.prototype.Ol,Mr.prototype.focusObject=Mr.prototype.zz,Mr.prototype.alignDocument=Mr.prototype.Jy,Mr.prototype.zoomToRect=Mr.prototype.BA,Mr.prototype.zoomToFit=Mr.prototype.zoomToFit,Mr.prototype.diagramScroll=Mr.prototype.kx,Mr.prototype.focus=Mr.prototype.focus;var Zg=new lo,wf=null,vl=wt.document!==void 0,cp=null,V0="",Nh=new wr(Mr,"None",0),_d=new wr(Mr,"Uniform",1),K0=new wr(Mr,"UniformToFill",2),my=new wr(Mr,"CycleAll",10),Rp=new wr(Mr,"CycleNotDirected",11),l0=new wr(Mr,"CycleNotDirectedFast",12),v1=new wr(Mr,"CycleNotUndirected",13),m1=new wr(Mr,"CycleDestinationTree",14),y1=new wr(Mr,"CycleSourceTree",15),kp=new wr(Mr,"DocumentScroll",1),Lm=new wr(Mr,"InfiniteScroll",2),Z0=new wr(Mr,"TreeParentCollapsed",21),ju=new wr(Mr,"AllParentsCollapsed",22),u0=new wr(Mr,"AnyParentsCollapsed",23),Tm=new Zr,Dm="2.3.10",Fp="image",Mv=null,uA=!1;function dh(){if(vl){var a=wt.document.createElement("canvas"),y=a.getContext("2d"),ee=qn("7ca11abfd022028846");y[ee]=qn("398c3597c01238");for(var ne=["5da73c80a36455d7038e4972187c3cae51fd22",rn.Dx+"4ae6247590da4bb21c324ba3a84e385776",Ta.xF+"fb236cdfda5de14c134ba1a95a2d4c7cc6f93c1387",cr.za],se=1;5>se;se++)y[qn("7ca11abfd7330390")](qn(ne[se-1]),10,15*se);for(y[ee]=qn("39f046ebb36e4b"),ee=1;5>ee;ee++)y[qn("7ca11abfd7330390")](qn(ne[ee-1]),10,15*ee);(ne.length!==4||ne[0][0]!=="5"||ne[3][0]!=="7")&&(Ta.prototype.Cd=Ta.prototype.Eu),Mv=a}}Mr.className="Diagram",Mr.fromDiv=function(a){var y=a;return typeof a=="string"&&(y=wt.document.getElementById(a)),y instanceof HTMLDivElement&&y.H instanceof Mr?y.H:null},Mr.inherit=function(a,y){function ee(){}if(Object.getPrototypeOf(a).prototype)throw Error(`Used go.Diagram.inherit defining already defined class `+a);ee.prototype=y.prototype,a.prototype=new ee,a.prototype.constructor=a},Mr.useDOM=function(a){vl=a?wt.document!==void 0:!1},Mr.isUsingDOM=function(){return vl},Mr.None=Nh,Mr.Uniform=_d,Mr.UniformToFill=K0,Mr.CycleAll=my,Mr.CycleNotDirected=Rp,Mr.CycleNotDirectedFast=l0,Mr.CycleNotUndirected=v1,Mr.CycleDestinationTree=m1,Mr.CycleSourceTree=y1,Mr.DocumentScroll=kp,Mr.InfiniteScroll=Lm,Mr.TreeParentCollapsed=Z0,Mr.AllParentsCollapsed=ju,Mr.AnyParentsCollapsed=u0;function cA(){this.wy=null,this.j="zz@orderNum",this._tk==="63ad05bbe23a1786468a4c741b6d2"?this.Rc=this.j=!0:this.Rc=null}function Im(a,y){if(y.ib.setTransform(y.Mb,0,0,y.Mb,0,0),y.ib.yc(),a.Rc===null)e:{y="f";var ee=wt[qn("76a715b2f73f148a")][qn("72ba13b5")]||"";if(a.Rc=!0,vl){var ne=Mr[qn("76a115b6ed251eaf4692")];if(ne)for(var se=Tm.iterator;se.next()&&(ne=se.value,ne=qn(ne).split(qn("39e9")),!(6>ne.length));){var ue=qn(ne[1]).split(".");if(ne[4]!=="7da71ca0")break;var me=qn(rn[qn("6cae19")]).split(".");if(ue[0]>me[0]||ue[0]===me[0]&&ue[1]>=me[1]){var Ce=wt[qn("74a900bae4370f8b51")][qn("6fbb13a1c2311e8a57")].toLowerCase();if(me=Ce[qn("73a612b6fb191d")](qn("3aad1ab6e022098b4dc4")),ue=qn(ne[2]),-1me&&ue!==qn("7da71ca0ad381e90")&&(me=y[qn("73a612b6fb191d")](qn("76a715b2ef3e149757"))),0>me&&(me=y[qn("73a612b6fb191d")](qn("76a715b2ef3e149757"))),0>me&&(me=y[qn("73a612b6fb191d")](qn("2bfa41fdb3784bca12"))),0>me&&(me=ee[qn("73a612b6fb191d")](qn("7baa19a6f76c1988428554"))),a.Rc=!(0<=me&&meCe),!a.Rc)))break;if(ue[0]==="#"){me=wt.document.createElement("div");for(var Fe=ne[0].replace(/[A-Za-z]/g,"");4>Fe.length;)Fe+="9";if(Ce=Fe,Fe=Fe.substr(Fe.length-4),ne="",ne+=["gsh","gsf"][parseInt(Fe.substr(0,1),10)%2],ne+=["Header","Background","Display","Feedback"][parseInt(Fe.substr(0,1),10)%4],me[qn("79a417a0f0181a8946")]=ne,wt.document[qn("78a712aa")]){wt.document[qn("78a712aa")][qn("7bb806b6ed32388c4a875b")](me),Fe=wt.getComputedStyle(me).getPropertyValue(qn("78a704b7e62456904c9b12701b6532a8"));var Ye=wt.getComputedStyle(me).getPropertyValue(qn("75b817b0ea2202"));if(wt.document[qn("78a712aa")][qn("68ad1bbcf533388c4a875b")](me),Fe){if(me=wt[qn("77a902b0eb1b1e804a8a")],Ye==="0."+parseInt(Ce,10)%100||Fe.indexOf(parseInt(ue[1]+ue[2],16))!==-1&&Fe.indexOf(parseInt(ue[3]+ue[4],16))!==-1){a.Rc=!1;break}else if(me&&me(qn("32ae19a1e0331fc94084537c067a67fa59f1386b89d006")).matches)for(ne="."+ne,ue=0;uene.updateDelay?ne.N():ne.o||(ne.o=!0,setTimeout(function(){return ne.redraw()},ne.updateDelay))},ee.Of=function(){ne.observed!==null&&hn(ne)},ee.autoScale=_d,ee.vb=!1,y&&Object.assign(ee,y),ee}We(ct,Mr),ct.prototype.computePixelRatio=function(){return 1},ct.prototype.redraw=function(){if(this.o&&1<=this.updateDelay){this.o=!1;var a=this.ta,y=this.ib;if(a!==null&&y!==null){if(kd(this),this.ql===null){var ee=new gg(null);ee.width=a.width,ee.height=a.height,this.ql=ee}try{this.ta=this.ql,this.ib=this.ta.context,this.ib.Vc(!0),this.ib.setTransform(1,0,0,1,0,0),this.ib.clearRect(0,0,this.ta.width,this.ta.height),jt(this)}finally{this.ta=a,this.ib=y}}}Mr.prototype.redraw.call(this)},ct.prototype.gc=function(){if(this.Ka===null&&tn("No div specified"),this.ta===null&&tn("No canvas specified"),!(this.ta instanceof _p)&&(Dw(this.box),this.Fc)){var a=this.observed;if(a!==null&&!a.animationManager.defaultAnimation.isAnimating&&a.pi){kd(this);var y=this.ta;a=this.ib,a.Vc(!0),a.setTransform(1,0,0,1,0,0),a.clearRect(0,0,y.width,y.height),1>this.updateDelay?jt(this):this.ql!==null&&(a.drawImage(this.ql.Oa,0,0),y=this.Ab,y.reset(),this.scale!==1&&y.scale(this.scale),this.position.x===0&&this.position.y===0||y.translate(-this.position.x,-this.position.y),a.scale(this.Mb,this.Mb),a.transform(y.m11,y.m12,y.m21,y.m22,y.dx,y.dy),a.yc()),y=this.Wa.s;for(var ee=y.length,ne=0;nea&&(a=0),this.ia!==a&&(this.ia=a)}}}),ct.className="Overview";function Mn(){_o.call(this),this.j=null}We(Mn,_o),Mn.prototype.canStart=function(){if(!this.isEnabled)return!1;var a=this.diagram;if(a===null||!a.allowMove||!a.allowSelect)return!1;var y=a.observed;if(y===null)return!1;var ee=a.lastInput;return!ee.left||a.currentTool!==this&&(!this.isBeyondDragSize()||ee.isTouchEvent&&ee.timestamp-a.firstInput.timestampy.maxScale||(y.scale=a))},Pn.prototype.canDecreaseZoom=function(a){a===void 0&&(a=1/this.zoomFactor);var y=this.diagram;return y.autoScale!==Nh?!1:(a=y.scale*a,ay.maxScale?!1:y.allowZoom)},Pn.prototype.increaseZoom=function(a){a===void 0&&(a=this.zoomFactor);var y=this.diagram;y.autoScale===Nh&&(a=y.scale*a,ay.maxScale||(y.scale=a))},Pn.prototype.canIncreaseZoom=function(a){a===void 0&&(a=this.zoomFactor);var y=this.diagram;return y.autoScale!==Nh?!1:(a=y.scale*a,ay.maxScale?!1:y.allowZoom)},Pn.prototype.resetZoom=function(a){a===void 0&&(a=this.defaultScale);var y=this.diagram;ay.maxScale||(y.scale=a)},Pn.prototype.canResetZoom=function(a){a===void 0&&(a=this.defaultScale);var y=this.diagram;return ay.maxScale?!1:y.allowZoom},Pn.prototype.zoomToFit=function(){var a=this.diagram,y=a.animationManager;y.Cc(),a.redraw();var ee=a.position,ne=a.scale;ga(y,"Zoom To Fit"),this.isZoomToFitRestoreEnabled&&ne===this.Au&&!isNaN(this.Jt)&&a.documentBounds.D(this.yu)?(a.scale=this.Jt,a.position=this.sw,this.Au=NaN,this.yu=Ha):(this.Jt=ne,this.sw=ee.copy(),a.zoomToFit(),this.Au=a.scale,this.yu=a.documentBounds.copy()),ki(y)},Pn.prototype.canZoomToFit=function(){return this.diagram.allowZoom},Pn.prototype.scrollToPart=function(a){a===void 0&&(a=null);var y=this.diagram;if(y.Va(),a===null){try{this.cg!==null&&(this.cg.next()?a=this.cg.value:this.cg=null)}catch(Fe){this.cg=null}a===null&&(0a&&(a+=360)),a},Rt.Df=function(){if(!(this.l&4096))return this.Kk;var a=this.Ca;return this.panel!==null?a*this.panel.Df():a},Rt.qs=function(a,y){return y===void 0&&(y=new fn),y.assign(a),this.oe.Cd(y),y},Rt.rs=function(a,y,ee){return this.Sj(a.x,a.y,y.x,y.y,ee)},Rt.Sj=function(a,y,ee,ne,se){var ue=this.transform,me=1/(ue.m11*ue.m22-ue.m12*ue.m21),Ce=ue.m22*me,Fe=-ue.m12*me,Ye=-ue.m21*me,Qe=ue.m11*me,at=me*(ue.m21*ue.dy-ue.m22*ue.dx),mt=me*(ue.m12*ue.dx-ue.m11*ue.dy);return this.areaBackground!==null?(ue=this.actualBounds,cr.Ff(ue.left,ue.top,ue.right,ue.bottom,a,y,ee,ne,se)):(me=a*Ce+y*Ye+at,a=a*Fe+y*Qe+mt,y=ee*Ce+ne*Ye+at,ee=ee*Fe+ne*Qe+mt,se.h(0,0),ne=this.naturalBounds,ee=cr.Ff(0,0,ne.width,ne.height,me,a,y,ee,se),se.transform(ue),ee)},ar.prototype.measure=function(a,y,ee,ne){if(bf(this)!==!1){var se=this.Kg,ue=se.right+se.left;se=se.top+se.bottom,a=Math.max(a-ue,0),y=Math.max(y-se,0),ee=Math.max((ee||0)-ue,0),ne=Math.max((ne||0)-se,0),ue=this.angle,se=this.desiredSize;var me=this.kq();ue===90||ue===270?(a=isFinite(se.height)?se.height+me:a,y=isFinite(se.width)?se.width+me:y):(a=isFinite(se.width)?se.width+me:a,y=isFinite(se.height)?se.height+me:y),se=ee||0,me=ne||0;var Ce=this instanceof Mi;switch(Ad(this,!0)){case vi:me=se=0,Ce&&(y=a=1/0);break;case Si:isFinite(a)&&a>ee&&(se=a),isFinite(y)&&y>ne&&(me=y);break;case No:isFinite(a)&&a>ee&&(se=a),me=0,Ce&&(y=1/0);break;case ia:isFinite(y)&&y>ne&&(me=y),se=0,Ce&&(a=1/0)}Ce=this.maxSize;var Fe=this.minSize;se>Ce.width&&Fe.widthCe.height&&Fe.heighta.height||this.Cb>a.width))&&(ee=!0)),this.l=ee?this.l|256:this.l&-257,this.Ib.w()||tn("Non-real actualBounds has been set. Object "+this+", actualBounds: "+this.Ib.toString()),this.Xl(ue,this.Ib),h0(this,!1),Pr.free(ue)},Rt=ar.prototype,Rt.eh=function(){};function Gh(a,y,ee,ne,se){if(a.Ib.h(y,ee,ne,se),!a.desiredSize.w()){var ue=a.uc;ee=a.Kg,y=ee.right+ee.left;var me=ee.top+ee.bottom;switch(ee=ue.width+y,ue=ue.height+me,ne+=y,se+=me,y=Ad(a,!0),ee===ne&&ue===se&&(y=vi),y){case vi:(ee>ne||ue>se)&&(ac(a,!0),a.measure(ee>ne?ne:ee,ue>se?se:ue,0,0));break;case Si:ac(a,!0),a.measure(ne,se,0,0);break;case No:ac(a,!0),a.measure(ne,ue,0,0);break;case ia:ac(a,!0),a.measure(ee,se,0,0)}}}Rt.Xl=function(a,y){var ee=this.part;ee!==null&&ee.diagram!==null&&(ee.selectionObject!==this&&ee.resizeObject!==this&&ee.rotateObject!==this||NA(ee,!0),this.N(),qs(a,y)||(ee.oh(),this.Pn(ee)))},Rt.Pn=function(a){this.portId!==null&&(NA(a,!0),a instanceof qi&&T1(a,this))},Rt.gc=function(a,y){if(!Vf(this,a,y)&&this.visible){var ee=this.opacity;if(ee!==0){var ne=1;ee!==1&&(ne=a.globalAlpha,a.globalAlpha=ne*ee);var se="";this.filter!==""&&(se=a.filter,a.filter=this.filter);var ue=this instanceof Mi&&Xg(this),me=this.Ib;if(ue){var Ce=this.Ib,Fe=this.dc,Ye=this.areaBackground,Qe=this.Ma;Ye===null&&Qe===null||a.yc(),Ye!==null&&(Lu(this,a,Ye,!0,!0,Fe,Ce),Ye instanceof $s&&Ye.type===Yf?(a.beginPath(),a.rect(Ce.x,Ce.y,Ce.width,Ce.height),a.ng(Ye)):a.fillRect(Ce.x,Ce.y,Ce.width,Ce.height)),Qe!==null&&(Lu(this,a,Qe,!0,!1,Fe,Ce),Qe instanceof $s&&Qe.type===Yf?(a.beginPath(),a.rect(Ce.x,Ce.y,Ce.width,Ce.height),a.ng(Qe)):a.fillRect(Ce.x,Ce.y,Ce.width,Ce.height)),this.hh(a,y)}if(!ue&&(ue||me.width!==0&&me.height!==0&&!isNaN(me.x)&&!isNaN(me.y))){ue=this.transform,Ce=this.panel,this.l&4096&&Vc(this),Ye=this.part,Fe=!1;var at=0;Ye&&y.Gf("drawShadows")&&(Fe=Ye.isShadowed)&&(Qe=Ye.shadowOffset,at=Math.max(Qe.y,Qe.x)*y.scale*y.Mb),Qe=this.Dd();var mt;if(!(mt=y.$i||!Qe)){var Lt=this.naturalBounds;mt=this.wh;var kt=mt.m11,Xt=mt.m21,bn=mt.dx,gn=mt.m12,_n=mt.m22,jn=mt.dy,Yn,nr=Yn=0;mt=Yn*kt+nr*Xt+bn;var Or=Yn*gn+nr*_n+jn;Yn=Lt.width+at,nr=0;var Xi=Yn*kt+nr*Xt+bn;Yn=Yn*gn+nr*_n+jn,nr=Math.min(mt,Xi);var po=Math.min(Or,Yn),ao=Math.max(mt+0,Xi)-nr,Di=Math.max(Or+0,Yn)-po;mt=nr,Or=po,Yn=Lt.width+at,nr=Lt.height+at,Xi=Yn*kt+nr*Xt+bn,Yn=Yn*gn+nr*_n+jn,nr=Math.min(mt,Xi),po=Math.min(Or,Yn),ao=Math.max(mt+ao,Xi)-nr,Di=Math.max(Or+Di,Yn)-po,mt=nr,Or=po,Yn=0,nr=Lt.height+at,Xi=Yn*kt+nr*Xt+bn,Yn=Yn*gn+nr*_n+jn,nr=Math.min(mt,Xi),po=Math.min(Or,Yn),ao=Math.max(mt+ao,Xi)-nr,Di=Math.max(Or+Di,Yn)-po,mt=nr,Or=po,at=y.viewportBounds,Lt=at.x,kt=at.y,mt=!(mt>at.width+Lt||Lt>ao+mt||Or>at.height+kt||kt>Di+Or)}if(mt){if(mt=(this.l&256)!==0,a.clipInsteadOfFill&&(mt=!1),this instanceof ml&&(a.font=this.font),mt){if(Or=Ce.se()?Ce.naturalBounds:Ce.actualBounds,ao=Math.max(me.x,Or.x),Di=Math.max(me.y,Or.y),at=Math.min(me.right,Or.right)-ao,Lt=Math.min(me.bottom,Or.bottom)-Di,kt=this.tb,kt!==null&&(ao=kt.x,Di=kt.y,at=kt.width,Lt=kt.height),ao>me.width+me.x||me.x>Or.width+Or.x){ee!==1&&(a.globalAlpha=ne),this.filter!==""&&(a.filter=se);return}a.save(),a.beginPath(),a.rect(ao,Di,at,Lt),a.clip()}if(Qe){if(!Ye.isVisible()){ee!==1&&(a.globalAlpha=ne),this.filter!==""&&(a.filter=se);return}Fe&&(Or=Ye.shadowOffset,a.Ev(Or.x*y.scale*this.scale*y.Mb,Or.y*y.scale*this.scale*y.Mb,Ye.shadowBlur),d0(a),a.shadowColor=Ye.shadowColor)}Fe&&this.shadowVisible===!0?d0(a):Fe&&this.shadowVisible===!1&&zp(a),Ye=this.naturalBounds,this.areaBackground!==null&&(a.yc(),Cf(this,a,Ye,me)),a.transform(ue.m11,ue.m12,ue.m21,ue.m22,ue.dx,ue.dy),Fe&&jc(this,Ce)&&this.shadowVisible===null&&zp(a),this.Ma!==null&&(a.yc(),zd(this,a,Ye,me)),Fe&&(this.Ma!==null||this.areaBackground!==null||jc(this,Ce))?(Yg(this,!0),this.shadowVisible===null&&zp(a)):Yg(this,!1),this.hh(a,y),Fe&&this.l&512&&d0(a),Qe&&Fe&&zp(a),mt&&(a.restore(),a.Vc(this instanceof Mi)),ue.ws()||(y=1/(ue.m11*ue.m22-ue.m12*ue.m21),a.transform(ue.m22*y,-ue.m12*y,-ue.m21*y,ue.m11*y,y*(ue.m21*ue.dy-ue.m22*ue.dx),y*(ue.m12*ue.dx-ue.m11*ue.dy)))}}ee!==1&&(a.globalAlpha=ne),this.filter!==""&&(a.filter=se)}}};function jc(a,y){return y===null?!1:(Xg(y)&&(y=y.panel),(y.l&512)!==0||(y.type===Mi.Auto||y.type===Mi.Spot)&&y.Pb()!==a)}Rt.Dv=function(){};function Cf(a,y,ee,ne){Lu(a,y,a.areaBackground,!0,!0,ee,ne),a.areaBackground instanceof $s&&a.areaBackground.type===Yf?(y.beginPath(),y.rect(ne.x,ne.y,ne.width,ne.height),y.ng(a.areaBackground)):y.fillRect(ne.x,ne.y,ne.width,ne.height)}function zd(a,y,ee,ne){var se=a.kq(),ue=ee.x,me=ee.y,Ce=ee.width+se,Fe=ee.height+se;Lu(a,y,a.Ma,!0,!1,ee,ne),a.Ma instanceof $s&&a.Ma.type===Yf?(y.beginPath(),y.rect(ue-se/2,me-se/2,Ce,Fe),y.ng(a.Ma)):y.fillRect(ue-se/2,me-se/2,Ce,Fe)}function Bh(a,y,ee){for(var ne=y.O.s,se=ne.length,ue=-1,me=0;mese)&&tn("Must specify non-negative integer row for RowColumnDefinition "+y+", not: "+se),a.isRow=!0,a.index=se):y.column!==void 0&&(se=y.column,(se==null||se===1/0||isNaN(se)||0>se)&&tn("Must specify non-negative integer column for RowColumnDefinition "+y+", not: "+se),a.isRow=!1,a.index=se),se=new Yi;for(ee in y)ee!=="row"&&ee!=="column"&&(se[ee]=y[ee]);Rd(a,se)}else Rd(a,y);else tn('Unknown initializer "'+y+'" for object being constructed by GraphObject.make: '+a)}function Lv(a,y){kx.add(a,y)}function nw(a,y,ee){ee===void 0&&(ee=null);var ne=a[1];if(typeof ee=="function"?ee(ne):typeof ne=="string")return a.splice(1,1),ne;if(y===void 0)throw Error("no "+(typeof ee=="function"?"satisfactory":"string")+" argument for GraphObject builder "+a[0]);return y}De.Object.defineProperties(ar.prototype,{bindingId:{get:function(){return this.A!==null?this.A.zp:-1},set:function(a){this.bindingId!==a&&(this.A===null&&(this.A=new E1),this.A.zp=a)}},localBindings:{get:function(){return this.A!==null?this.A.te:null},set:function(a){this.localBindings!==a&&(this.A===null&&(this.A=new E1),this.A.te=a)}},srcBindings:{get:function(){return this.A!==null?this.A.wm:null},set:function(a){this.srcBindings!==a&&(this.A===null&&(this.A=new E1),this.A.wm=a)}},shadowVisible:{get:function(){return this.A!==null?this.A.Ci:null},set:function(a){var y=this.shadowVisible;y!==a&&(Ya(this),this.A.Ci=a,this.Uc=!0,this.N(),this.g("shadowVisible",y,a))}},enabledChanged:{get:function(){return this.A!==null?this.A.Hb:null},set:function(a){var y=this.enabledChanged;y!==a&&(Ya(this),this.A.Hb=a,this.g("enabledChanged",y,a))}},segmentOrientation:{get:function(){return this.Ua!==null?this.Ua.rr:Kh},set:function(a){var y=this.segmentOrientation;y!==a&&(this.Ua===null&&(this.Ua=new Tv),this.Ua.rr=a,this.v(),this.g("segmentOrientation",y,a),a===Kh&&(this.angle=0))}},segmentIndex:{get:function(){return this.Ua!==null?this.Ua.u:-1/0},set:function(a){a=Math.round(a);var y=this.segmentIndex;y!==a&&(this.Ua===null&&(this.Ua=new Tv),this.Ua.u=a,this.v(),this.g("segmentIndex",y,a))}},segmentFraction:{get:function(){return this.Ua!==null?this.Ua.o:0},set:function(a){isNaN(a)||0>a?a=0:1a||1=a&&tn("GraphObject.scale for "+this+" must be greater than zero, not: "+a),this.Ca=a,this.v(),this.g("scale",y,a))}},angle:{get:function(){return this.Kb},set:function(a){var y=this.Kb;y!==a&&(a%=360,0>a&&(a+=360),y!==a&&(this.Kb=a,sT(this),this.v(),this.g("angle",y,a)))}},desiredSize:{get:function(){return this.jd},set:function(a){var y=a.width,ee=a.height,ne=this.jd,se=ne.width,ue=ne.height;(se===y||isNaN(se)&&isNaN(y))&&(ue===ee||isNaN(ue)&&isNaN(ee))||(this.jd=a=a.J(),this.v(),this instanceof Ra&&this.qc(),this.g("desiredSize",ne,a),ih(this)&&(a=this.part,a!==null&&(zl(this,a,"width"),zl(this,a,"height"))))}},width:{get:function(){return this.jd.width},set:function(a){var y=this.jd.width;y===a||isNaN(y)&&isNaN(a)||(y=this.jd,this.jd=a=new Ri(a,this.jd.height).freeze(),this.v(),this instanceof Ra&&this.qc(),this.g("desiredSize",y,a),ih(this)&&(a=this.part,a!==null&&zl(this,a,"width")))}},height:{get:function(){return this.jd.height},set:function(a){var y=this.jd.height;y===a||isNaN(y)&&isNaN(a)||(y=this.jd,this.jd=a=new Ri(this.jd.width,a).freeze(),this.v(),this instanceof Ra&&this.qc(),this.g("desiredSize",y,a),ih(this)&&(a=this.part,a!==null&&zl(this,a,"height")))}},minSize:{get:function(){return this.A!==null?this.A.u:qo},set:function(a){var y=this.minSize;y.D(a)||(a=a.copy(),isNaN(a.width)&&(a.width=0),isNaN(a.height)&&(a.height=0),a.freeze(),Ya(this),this.A.u=a,this.v(),this.g("minSize",y,a))}},maxSize:{get:function(){return this.A!==null?this.A.o:Ns},set:function(a){var y=this.maxSize;y.D(a)||(a=a.copy(),isNaN(a.width)&&(a.width=1/0),isNaN(a.height)&&(a.height=1/0),a.freeze(),Ya(this),this.A.o=a,this.v(),this.g("maxSize",y,a))}},measuredBounds:{get:function(){return this.uc}},naturalBounds:{get:function(){return this.dc}},margin:{get:function(){return this.Kg},set:function(a){typeof a=="number"&&(a=new Ro(a));var y=this.Kg;y.D(a)||(this.Kg=a=a.J(),this.v(),this.g("margin",y,a))}},transform:{get:function(){return this.l&2048&&Vc(this),this.Ab}},oe:{get:function(){return this.l&4096&&Vc(this),this.wh}},animationTriggers:{get:function(){return this.A!==null?this.A.hb:null},set:function(a){this.animationTriggers!==a&&(Ya(this),this.A.hb=a)}},reshapingBehavior:{get:function(){return this.A!==null?this.A.Pf:vi},set:function(a){this.reshapingBehavior!==a&&(Ya(this),this.A.Pf=a)}},alignment:{get:function(){return this.Jb},set:function(a){var y=this.Jb;y.D(a)||(a.Mc()&&!a.Xb()&&tn("GraphObject.alignment for "+this+" must be a real Spot or Spot.Default, not: "+a),this.Jb=a=a.J(),sd(this),this.g("alignment",y,a))}},column:{get:function(){return this.Ag},set:function(a){a=Math.round(a);var y=this.Ag;y!==a&&(0>a&&tr(a,">= 0",ar,"column"),this.Ag=a,this.v(),this.g("column",y,a),this.svg!==null&&this.svg.remove())}},columnSpan:{get:function(){return this.A!==null?this.A.ob:1},set:function(a){a=Math.round(a);var y=this.columnSpan;y!==a&&(1>a&&tr(a,">= 1",ar,"columnSpan"),Ya(this),this.A.ob=a,this.v(),this.g("columnSpan",y,a))}},row:{get:function(){return this.io},set:function(a){a=Math.round(a);var y=this.io;y!==a&&(0>a&&tr(a,">= 0",ar,"row"),this.io=a,this.v(),this.g("row",y,a),this.svg!==null&&this.svg.remove())}},rowSpan:{get:function(){return this.A!==null?this.A.Bi:1},set:function(a){a=Math.round(a);var y=this.rowSpan;y!==a&&(1>a&&tr(a,">= 1",ar,"rowSpan"),Ya(this),this.A.Bi=a,this.v(),this.g("rowSpan",y,a))}},spanAllocation:{get:function(){return this.A!==null?this.A.Di:null},set:function(a){var y=this.spanAllocation;y!==a&&(Ya(this),this.A.Di=a,this.v(),this.g("spanAllocation",y,a))}},alignmentFocus:{get:function(){return this.sk},set:function(a){var y=this.sk;y.D(a)||(this.sk=a=a.J(),this.v(),this.g("alignmentFocus",y,a))}},portId:{get:function(){return this.Yn},set:function(a){var y=this.Yn;if(y!==a){var ee=this.part;ee===null||ee instanceof qi||tn("Cannot set portID on a Link: "+a),y!==null&&ee!==null&&of(ee,this),this.Yn=a,a!==null&&ee!==null&&(ee.Te=!0,Ib(ee,this)),this.g("portId",y,a)}}},toSpot:{get:function(){return this.ba!==null?this.ba.yj:su},set:function(a){var y=this.toSpot;y.D(a)||(a=a.J(),this.Xc(),this.ba.yj=a,this.g("toSpot",y,a),fg(this))}},toEndSegmentLength:{get:function(){return this.ba!==null?this.ba.wj:10},set:function(a){var y=this.toEndSegmentLength;y!==a&&(0>a&&tr(a,">= 0",ar,"toEndSegmentLength"),this.Xc(),this.ba.wj=a,this.g("toEndSegmentLength",y,a),fg(this))}},toShortLength:{get:function(){return this.ba!==null?this.ba.xj:0},set:function(a){var y=this.toShortLength;y!==a&&(this.Xc(),this.ba.xj=a,this.g("toShortLength",y,a),fg(this))}},toLinkable:{get:function(){return this.ba!==null?this.ba.Tr:null},set:function(a){var y=this.toLinkable;y!==a&&(this.Xc(),this.ba.Tr=a,this.g("toLinkable",y,a))}},toMaxLinks:{get:function(){return this.ba!==null?this.ba.Ur:1/0},set:function(a){var y=this.toMaxLinks;y!==a&&(0>a&&tr(a,">= 0",ar,"toMaxLinks"),this.Xc(),this.ba.Ur=a,this.g("toMaxLinks",y,a))}},fromSpot:{get:function(){return this.ba!==null?this.ba.Xi:su},set:function(a){var y=this.fromSpot;y.D(a)||(a=a.J(),this.Xc(),this.ba.Xi=a,this.g("fromSpot",y,a),fg(this))}},fromEndSegmentLength:{get:function(){return this.ba!==null?this.ba.Vi:10},set:function(a){var y=this.fromEndSegmentLength;y!==a&&(0>a&&tr(a,">= 0",ar,"fromEndSegmentLength"),this.Xc(),this.ba.Vi=a,this.g("fromEndSegmentLength",y,a),fg(this))}},fromShortLength:{get:function(){return this.ba!==null?this.ba.Wi:0},set:function(a){var y=this.fromShortLength;y!==a&&(this.Xc(),this.ba.Wi=a,this.g("fromShortLength",y,a),fg(this))}},fromLinkable:{get:function(){return this.ba!==null?this.ba.hq:null},set:function(a){var y=this.fromLinkable;y!==a&&(this.Xc(),this.ba.hq=a,this.g("fromLinkable",y,a))}},fromMaxLinks:{get:function(){return this.ba!==null?this.ba.iq:1/0},set:function(a){var y=this.fromMaxLinks;y!==a&&(0>a&&tr(a,">= 0",ar,"fromMaxLinks"),this.Xc(),this.ba.iq=a,this.g("fromMaxLinks",y,a))}},cursor:{get:function(){return this.A!==null?this.A.j:""},set:function(a){var y=this.cursor;y!==a&&(Ya(this),this.A.j=a,this.g("cursor",y,a))}},click:{get:function(){return this.A!==null?this.A.zh:null},set:function(a){var y=this.click;y!==a&&(Ya(this),this.A.zh=a,this.g("click",y,a))}},doubleClick:{get:function(){return this.A!==null?this.A.Fh:null},set:function(a){var y=this.doubleClick;y!==a&&(Ya(this),this.A.Fh=a,this.g("doubleClick",y,a))}},contextClick:{get:function(){return this.A!==null?this.A.Bh:null},set:function(a){var y=this.contextClick;y!==a&&(Ya(this),this.A.Bh=a,this.g("contextClick",y,a))}},mouseEnter:{get:function(){return this.A!==null?this.A.Mh:null},set:function(a){var y=this.mouseEnter;y!==a&&(Ya(this),this.A.Mh=a,this.g("mouseEnter",y,a))}},mouseLeave:{get:function(){return this.A!==null?this.A.Ph:null},set:function(a){var y=this.mouseLeave;y!==a&&(Ya(this),this.A.Ph=a,this.g("mouseLeave",y,a))}},mouseOver:{get:function(){return this.A!==null?this.A.Qh:null},set:function(a){var y=this.mouseOver;y!==a&&(Ya(this),this.A.Qh=a,this.g("mouseOver",y,a))}},mouseHover:{get:function(){return this.A!==null?this.A.Oh:null},set:function(a){var y=this.mouseHover;y!==a&&(Ya(this),this.A.Oh=a,this.g("mouseHover",y,a))}},mouseHold:{get:function(){return this.A!==null?this.A.Nh:null},set:function(a){var y=this.mouseHold;y!==a&&(Ya(this),this.A.Nh=a,this.g("mouseHold",y,a))}},mouseDragEnter:{get:function(){return this.A!==null?this.A.Of:null},set:function(a){var y=this.mouseDragEnter;y!==a&&(Ya(this),this.A.Of=a,this.g("mouseDragEnter",y,a))}},mouseDragLeave:{get:function(){return this.A!==null?this.A.Xd:null},set:function(a){var y=this.mouseDragLeave;y!==a&&(Ya(this),this.A.Xd=a,this.g("mouseDragLeave",y,a))}},mouseDrop:{get:function(){return this.A!==null?this.A.Lh:null},set:function(a){var y=this.mouseDrop;y!==a&&(Ya(this),this.A.Lh=a,this.g("mouseDrop",y,a))}},actionDown:{get:function(){return this.A!==null?this.A.V:null},set:function(a){var y=this.actionDown;y!==a&&(Ya(this),this.A.V=a,this.g("actionDown",y,a))}},actionMove:{get:function(){return this.A!==null?this.A.ia:null},set:function(a){var y=this.actionMove;y!==a&&(Ya(this),this.A.ia=a,this.g("actionMove",y,a))}},actionUp:{get:function(){return this.A!==null?this.A.Ha:null},set:function(a){var y=this.actionUp;y!==a&&(Ya(this),this.A.Ha=a,this.g("actionUp",y,a))}},actionCancel:{get:function(){return this.A!==null?this.A.F:null},set:function(a){var y=this.actionCancel;y!==a&&(Ya(this),this.A.F=a,this.g("actionCancel",y,a))}},toolTip:{get:function(){return this.A!==null?this.A.$h:null},set:function(a){var y=this.toolTip;y!==a&&(Ya(this),this.A.$h=a,this.g("toolTip",y,a))}},contextMenu:{get:function(){return this.A!==null?this.A.Ch:null},set:function(a){var y=this.contextMenu;y!==a&&(Ya(this),this.A.Ch=a,this.g("contextMenu",y,a))}}}),ar.prototype.trigger=ar.prototype.Jv,ar.prototype.findBindingPanel=ar.prototype.ih,ar.prototype.findTemplateBinder=ar.prototype.pz,ar.prototype.setProperties=ar.prototype.nm,ar.prototype.apply=ar.prototype.apply,ar.prototype.attach=ar.prototype.Du,ar.prototype.set=ar.prototype.set,ar.prototype.isEnabledObject=ar.prototype.If,ar.prototype.isVisibleObject=ar.prototype.Ed,ar.prototype.isContainedBy=ar.prototype.rg,ar.prototype.getNearestIntersectionPoint=ar.prototype.rs,ar.prototype.getLocalPoint=ar.prototype.qs,ar.prototype.getDocumentScale=ar.prototype.Df,ar.prototype.getDocumentAngle=ar.prototype.li,ar.prototype.getDocumentBounds=ar.prototype.mi,ar.prototype.getDocumentPoint=ar.prototype.ga,ar.prototype.intersectsRect=ar.prototype.Yc,ar.prototype.containedInRect=ar.prototype.fh,ar.prototype.containsRect=ar.prototype.Re,ar.prototype.containsPoint=ar.prototype.ca,ar.prototype.raiseChanged=ar.prototype.g,ar.prototype.raiseChangedEvent=ar.prototype.cb,ar.prototype.addCopyProperty=ar.prototype.Vw;var kx=null;ar.className="GraphObject",kx=new lo,Lv("Button",function(){function a(ee,ne){return ee.diagram.ic(ee.documentPoint,function(se){for(;se.panel!==null&&!se.isActionable;)se=se.panel;return se},function(se){return se===ne})!==null}var y=Zf(Mi,Mi.Auto,{isActionable:!0,enabledChanged:function(ee,ne){if(ee instanceof Mi){var se=ee.fb("ButtonBorder");se!==null&&(se.fill=ne?ee._buttonFillNormal:ee._buttonFillDisabled)}},cursor:"pointer",_buttonFillNormal:"#F5F5F5",_buttonStrokeNormal:"#BDBDBD",_buttonFillOver:"#E0E0E0",_buttonStrokeOver:"#9E9E9E",_buttonFillPressed:"#BDBDBD",_buttonStrokePressed:"#9E9E9E",_buttonFillDisabled:"#E5E5E5"},Zf(Ra,{name:"ButtonBorder",figure:"RoundedRectangle",spot1:new So(0,0,2.76142374915397,2.761423749153969),spot2:new So(1,1,-2.76142374915397,-2.761423749153969),parameter1:2,parameter2:2,fill:"#F5F5F5",stroke:"#BDBDBD"}));return y.mouseEnter=function(ee,ne){if(ne.If()&&ne instanceof Mi&&(ee=ne.fb("ButtonBorder"),ee instanceof Ra)){var se=ne._buttonFillOver;ne._buttonFillNormal=ee.fill,ee.fill=se,se=ne._buttonStrokeOver,ne._buttonStrokeNormal=ee.stroke,ee.stroke=se}},y.mouseLeave=function(ee,ne){ne.If()&&ne instanceof Mi&&(ee=ne.fb("ButtonBorder"),ee instanceof Ra&&(ee.fill=ne._buttonFillNormal,ee.stroke=ne._buttonStrokeNormal))},y.actionDown=function(ee,ne){if(ne.If()&&ne instanceof Mi&&ne._buttonFillPressed!==null&&ee.button===0){var se=ne.fb("ButtonBorder");if(se instanceof Ra){ee=ee.diagram;var ue=ee.skipsUndoManager;ee.skipsUndoManager=!0;var me=ne._buttonFillPressed;ne._buttonFillOver=se.fill,se.fill=me,me=ne._buttonStrokePressed,ne._buttonStrokeOver=se.stroke,se.stroke=me,ee.skipsUndoManager=ue}}},y.actionUp=function(ee,ne){if(ne.If()&&ne instanceof Mi&&ne._buttonFillPressed!==null&&ee.button===0){var se=ne.fb("ButtonBorder");if(se instanceof Ra){var ue=ee.diagram,me=ue.skipsUndoManager;ue.skipsUndoManager=!0,a(ee,ne)?(se.fill=ne._buttonFillOver,se.stroke=ne._buttonStrokeOver):(se.fill=ne._buttonFillNormal,se.stroke=ne._buttonStrokeNormal),ue.skipsUndoManager=me}}},y.actionCancel=function(ee,ne){if(ne.If()&&ne instanceof Mi&&ne._buttonFillPressed!==null){var se=ne.fb("ButtonBorder");if(se instanceof Ra){var ue=ee.diagram,me=ue.skipsUndoManager;ue.skipsUndoManager=!0,a(ee,ne)?(se.fill=ne._buttonFillOver,se.stroke=ne._buttonStrokeOver):(se.fill=ne._buttonFillNormal,se.stroke=ne._buttonStrokeNormal),ue.skipsUndoManager=me}}},y.actionMove=function(ee,ne){if(ne.If()&&ne instanceof Mi&&ne._buttonFillPressed!==null){var se=ee.diagram;if(se.firstInput.button===0&&(se.currentTool.standardMouseOver(),a(ee,ne)&&(ee=ne.fb("ButtonBorder"),ee instanceof Ra))){var ue=se.skipsUndoManager;se.skipsUndoManager=!0;var me=ne._buttonFillPressed;ee.fill!==me&&(ee.fill=me),me=ne._buttonStrokePressed,ee.stroke!==me&&(ee.stroke=me),se.skipsUndoManager=ue}}},y}),Lv("TreeExpanderButton",function(){var a=Zf("Button",{_treeExpandedFigure:"MinusLine",_treeCollapsedFigure:"PlusLine"},Zf(Ra,{name:"ButtonIcon",figure:"MinusLine",stroke:"#424242",strokeWidth:2,desiredSize:Rs},new Qu("figure","isTreeExpanded",function(y,ee){return ee=ee.panel,y?ee._treeExpandedFigure:ee._treeCollapsedFigure}).cp()),{visible:!1},new Qu("visible","isTreeLeaf",function(y){return!y}).cp());return a.click=function(y,ee){if(ee=ee.part,ee instanceof Es&&(ee=ee.adornedPart),ee instanceof qi){var ne=ee.diagram;if(ne!==null){if(ne=ne.commandHandler,ee.isTreeExpanded){if(!ne.canCollapseTree(ee))return}else if(!ne.canExpandTree(ee))return;y.handled=!0,ee.isTreeExpanded?ne.collapseTree(ee):ne.expandTree(ee)}}},a}),Lv("SubGraphExpanderButton",function(){var a=Zf("Button",{_subGraphExpandedFigure:"MinusLine",_subGraphCollapsedFigure:"PlusLine"},Zf(Ra,{name:"ButtonIcon",figure:"MinusLine",stroke:"#424242",strokeWidth:2,desiredSize:Rs},new Qu("figure","isSubGraphExpanded",function(y,ee){return ee=ee.panel,y?ee._subGraphExpandedFigure:ee._subGraphCollapsedFigure}).cp()));return a.click=function(y,ee){if(ee=ee.part,ee instanceof Es&&(ee=ee.adornedPart),ee instanceof ci){var ne=ee.diagram;if(ne!==null){if(ne=ne.commandHandler,ee.isSubGraphExpanded){if(!ne.canCollapseSubGraph(ee))return}else if(!ne.canExpandSubGraph(ee))return;y.handled=!0,ee.isSubGraphExpanded?ne.collapseSubGraph(ee):ne.expandSubGraph(ee)}}},a}),Lv("ToolTip",function(){return Zf(Es,Mi.Auto,{isShadowed:!0,shadowColor:"rgba(0, 0, 0, .4)",shadowOffset:new fn(0,3),shadowBlur:5},Zf(Ra,{name:"Border",figure:"RoundedRectangle",parameter1:1,parameter2:1,fill:"#F5F5F5",stroke:"#F0F0F0",spot1:new So(0,0,4,6),spot2:new So(1,1,-4,-4)}))}),Lv("ContextMenu",function(){return Zf(Es,Mi.Vertical,{background:"#F5F5F5",isShadowed:!0,shadowColor:"rgba(0, 0, 0, .4)",shadowOffset:new fn(0,3),shadowBlur:5},new Qu("background","",function(a){return a.adornedPart!==null&&a.placeholder!==null?null:"#F5F5F5"}))}),Lv("ContextMenuButton",function(){var a=Zf("Button");a.stretch=No;var y=a.fb("ButtonBorder");return y instanceof Ra&&(y.figure="Rectangle",y.strokeWidth=0,y.spot1=new So(0,0,2,3),y.spot2=new So(1,1,-2,-2)),a}),Lv("PanelExpanderButton",function(a){var y=nw(a,"COLLAPSIBLE"),ee=Zf("Button",{_buttonExpandedFigure:"M0 0 M0 6 L4 2 8 6 M8 8",_buttonCollapsedFigure:"M0 0 M0 2 L4 6 8 2 M8 8",_buttonFillNormal:"rgba(0, 0, 0, 0)",_buttonStrokeNormal:null,_buttonFillOver:"rgba(0, 0, 0, .2)",_buttonStrokeOver:null,_buttonFillPressed:"rgba(0, 0, 0, .4)",_buttonStrokePressed:null},Zf(Ra,{name:"ButtonIcon",strokeWidth:2},new Qu("geometryString","visible",function(ne){return ne?ee._buttonExpandedFigure:ee._buttonCollapsedFigure}).cp(y)));return a=ee.fb("ButtonBorder"),a instanceof Ra&&(a.stroke=null,a.fill="rgba(0, 0, 0, 0)"),ee.click=function(ne,se){var ue=se.diagram;if(ue!==null&&!ue.isReadOnly){var me=se.ih();me===null&&(me=se.part),me!==null&&(se=me.fb(y),se!==null&&(ne.handled=!0,ue.Ea("Collapse/Expand Panel"),se.visible=!se.visible,ue.eb("Collapse/Expand Panel")))}},ee}),Lv("CheckBoxButton",function(a){var y=nw(a);return a=Zf("Button",{desiredSize:new Ri(14,14)},Zf(Ra,{name:"ButtonIcon",geometryString:"M0 0 M0 8.85 L4.9 13.75 16.2 2.45 M16.2 16.2",strokeWidth:2,stretch:Si,geometryStretch:wo,visible:!1},y!==""?new Qu("visible",y).Kx():[])),a.click=function(ee,ne){if(ne instanceof Mi){var se=ee.diagram;if(!(se===null||se.isReadOnly||y!==""&&se.model.isReadOnly)){ee.handled=!0;var ue=ne.fb("ButtonIcon");se.Ea("checkbox"),ue.visible=!ue.visible,typeof ne._doClick=="function"&&ne._doClick(ee,ne),se.eb("checkbox")}}},a}),Lv("CheckBox",function(a){a=nw(a),a=Zf("CheckBoxButton",a,{name:"Button",isActionable:!1,margin:new Ro(0,1,0,0)});var y=Zf(Mi,"Horizontal",a,{isActionable:!0,cursor:a.cursor,margin:new Ro(1),_buttonFillNormal:a._buttonFillNormal,_buttonStrokeNormal:a._buttonStrokeNormal,_buttonFillOver:a._buttonFillOver,_buttonStrokeOver:a._buttonStrokeOver,_buttonFillPressed:a._buttonFillPressed,_buttonStrokePressed:a._buttonStrokePressed,_buttonFillDisabled:a._buttonFillDisabled,mouseEnter:a.mouseEnter,mouseLeave:a.mouseLeave,actionDown:a.actionDown,actionUp:a.actionUp,actionCancel:a.actionCancel,actionMove:a.actionMove,click:a.click,_buttonClick:a.click});return a.mouseEnter=null,a.mouseLeave=null,a.actionDown=null,a.actionUp=null,a.actionCancel=null,a.actionMove=null,a.click=null,y}),ar.None=vi=new wr(ar,"None",0),ar.Default=Ia=new wr(ar,"Default",0),ar.Vertical=ia=new wr(ar,"Vertical",4),ar.Horizontal=No=new wr(ar,"Horizontal",5),ar.Fill=Si=new wr(ar,"Fill",3),ar.Uniform=wo=new wr(ar,"Uniform",1),ar.UniformToFill=fs=new wr(ar,"UniformToFill",2),ar.FlipVertical=Ja=new wr(ar,"FlipVertical",1),ar.FlipHorizontal=Ss=new wr(ar,"FlipHorizontal",2),ar.FlipBoth=ul=new wr(ar,"FlipBoth",3),ar.make=Zf,ar.getBuilders=function(){var a=new lo,y;for(y in kx)if(y!==y.toLowerCase()){var ee=kx.I(y);typeof ee=="function"&&a.add(y,ee)}return a.freeze(),a},ar.defineBuilder=Lv,ar.build=function(a,y,ee){for(var ne=[],se=2;sea&&(a+=360),a!==0){if(this.translate(y,ee),a===90){a=0;var ne=1}else a===180?(a=-1,ne=0):a===270?(a=0,ne=-1):(ne=a*Math.PI/180,a=Math.cos(ne),ne=Math.sin(ne));var se=this.ha[1]*a+this.ha[3]*ne,ue=this.ha[0]*-ne+this.ha[2]*a,me=this.ha[1]*-ne+this.ha[3]*a;this.ha[0]=this.ha[0]*a+this.ha[2]*ne,this.ha[1]=se,this.ha[2]=ue,this.ha[3]=me,this.translate(-y,-ee)}},yy.className="STransform";function Dv(a){this.type=a,this.r2=this.y2=this.x2=this.r1=this.y1=this.x1=0,this.gx=[],this.pattern=null}Dv.prototype.addColorStop=function(a,y){this.gx.push({offset:a,color:y})},Dv.className="SGradient";function _p(a,y,ee){this.ownerDocument=a=y===void 0?wt.document:y,this.cA="http://www.w3.org/2000/svg",a!==void 0&&(this.Oa=this.Ud("svg",{width:"1px",height:"1px",viewBox:"0 0 1 1"}),this.style.display="block",this.style.letterSpacing="normal",this.style.wordSpacing="normal",this.Oa.setAttributeNS("http://www.w3.org/2000/xmlns/","xmlns","http://www.w3.org/2000/svg"),this.Oa.setAttributeNS("http://www.w3.org/2000/xmlns/","xmlns:xlink","http://www.w3.org/1999/xlink")),this.hs=null,this.context=new ld(this,ee)}_p.prototype.resize=function(a,y,ee,ne){return this.width!==a||this.height!==y?(this.width=a,this.height=y,this.style.width=ee+"px",this.style.height=ne+"px",this.Oa.setAttributeNS(null,"width",ee+"px"),this.Oa.setAttributeNS(null,"height",ne+"px"),this.Oa.setAttributeNS(null,"viewBox","0 0 "+ee+" "+ne),this.context.ww.firstElementChild.setAttributeNS(null,"width",ee+"px"),this.context.ww.firstElementChild.setAttributeNS(null,"height",ne+"px"),!0):!1},_p.prototype.Ud=function(a,y,ee){if(a=this.ownerDocument.createElementNS(this.cA,a),Bn(y))for(var ne in y)a.setAttributeNS(ne==="href"?"http://www.w3.org/1999/xlink":"",ne,y[ne]);return ee!==void 0&&(a.textContent=ee),a},_p.prototype.getBoundingClientRect=function(){return this.Oa.getBoundingClientRect()},_p.prototype.focus=function(){this.Oa.focus()},_p.prototype.mx=function(){this.ownerDocument=null},De.Object.defineProperties(_p.prototype,{width:{get:function(){return this.Oa.width.baseVal.value},set:function(a){this.Oa.setAttribute("width",a+"px")}},height:{get:function(){return this.Oa.height.baseVal.value},set:function(a){this.Oa.setAttribute("height",a+"px")}},style:{get:function(){return this.Oa.style}}}),_p.className="SVGSurface";function ld(a,y){this.Gv=a,this.svg=a.Oa,this.stack=[],this.nh=[],this.fillStyle="#000000",this.font="10px sans-serif",this.globalAlpha=1,this.lineCap="butt",this.lineDashOffset=0,this.lineJoin="miter",this.lineWidth=1,this.miterLimit=10,this.shadowBlur=0,this.shadowColor="rgba(0, 0, 0, 0)",this.shadowOffsetY=this.shadowOffsetX=0,this.Il=!1,this.strokeStyle="#000000",this.textAlign="start",this.clipInsteadOfFill=!1,this.Vg=this.Br=this.Ar=0,this.yd=this.ad=null,this.path=[],this.Yl={},this.Ct=!1,this.Yg=null,this.uj=0,this.rb=new yy,this.j=Wx(this),this.Nj=Wx(this,"gojs-diagram"),this.Hl=this.ti=null;var ee=ys++,ne=this.Ud("clipPath",{id:"mainClip"+ee});ne.appendChild(this.Ud("rect",{x:0,y:0,width:a.width,height:a.height})),this.ww=ne,this.svg.appendChild(this.j),this.j.appendChild(this.Nj),this.svg.appendChild(ne),this.j.setAttributeNS(null,"clip-path","url(#mainClip"+ee+")"),this.eA={},this.isTemporary=!!y,this.filter="",this.bk=null}function lT(a,y,ee,ne,se,ue,me){a.Nj===void 0?dA(a,y,ee,ne,se,ue,me):a.Nj.setAttribute("transform","matrix("+y+", "+ee+", "+ne+", "+se+", "+ue+", "+me+")")}Rt=ld.prototype,Rt.arc=function(a,y,ee,ne,se,ue,me,Ce){var Fe=2*Math.PI,Ye=Fe-1e-6,Qe=ee*Math.cos(ne),at=ee*Math.sin(ne),mt=a+Qe,Lt=y+at,kt=ue?0:1;ne=ue?ne-se:se-ne,(1e-6ne&&(ne=ne%Fe+Fe),ne>Ye?(this.path.push(["A",ee,ee,0,1,kt,a-Qe,y-at]),this.path.push(["A",ee,ee,0,1,kt,mt,Lt])):1e-6=Math.PI),kt,a+ee*Math.cos(se),y+ee*Math.sin(se)])},Rt.beginPath=function(){this.path=[],this.Yl={stroke:"none",fill:"none"}},Rt.Se=function(a){this.addPath(this.path,this.rb,a||0)},Rt.bezierCurveTo=function(a,y,ee,ne,se,ue){this.path.push(["C",a,y,ee,ne,se,ue])},Rt.clearRect=function(){},Rt.clip=function(){this.Yl.clipPath=!0},Rt.closePath=function(){this.path.push(["z"])},Rt.createLinearGradient=function(a,y,ee,ne){var se=new Dv("linear");return se.x1=a,se.y1=y,se.x2=ee,se.y2=ne,se},Rt.createPattern=function(a){var y="";a instanceof HTMLCanvasElement&&(y=a.toDataURL()),a instanceof HTMLImageElement&&(y=a.getAttribute("src"));var ee=this.eA;if(ee[y])return"url(#"+ee[y]+")";var ne="PATTERN"+ys++,se={x:0,y:0,width:a.width,height:a.height,href:y};return a=this.Ud("pattern",{width:a.width,height:a.height,id:ne,patternUnits:"userSpaceOnUse"}),a.appendChild(this.Ud(Fp,se)),this.svg.appendChild(a),ee[y]=ne,"url(#"+ne+")"},Rt.createRadialGradient=function(a,y,ee,ne,se,ue){var me=new Dv("radial");return me.x1=a,me.y1=y,me.r1=ee,me.x2=ne,me.y2=se,me.r2=ue,me};function A2(a,y,ee,ne,se,ue,me,Ce,Fe){ne=Ce/ne,se=Fe/se,ue===0&&me===0||a.rb.translate(ue,me),ne===1&&se===1||a.rb.scale(ne,se),y===0&&ee===0||a.rb.translate(-y,-ee)}Rt.drawImage=function(a,y,ee,ne,se,ue,me,Ce,Fe){var Ye="";a instanceof HTMLCanvasElement&&(Ye=a.toDataURL()),a instanceof HTMLImageElement&&(Ye=a.getAttribute("src"));var Qe=a instanceof HTMLImageElement?a.naturalWidth:a.width;a=a instanceof HTMLImageElement?a.naturalHeight:a.height,ne===void 0&&(ue=y,me=ee,Ce=ne=Qe,Fe=se=a),ne=ne||0,se=se||0,Ce=Ce||0,Fe=Fe||0,A2(this,y,ee,ne,se,ue||0,me||0,Ce,Fe),ue={x:0,y:0,width:Qe||ne,height:a||se,href:Ye},cr.$(ne,Ce)&&cr.$(se,Fe)?Ye.toLowerCase().indexOf(".svg")===-1&&Ye.toLowerCase().indexOf("data:image/svg")===-1&&(ue.preserveAspectRatio="xMidYMid slice"):ue.preserveAspectRatio="none",(y!==0||ee!==0||ne!==Qe||se!==a)&&(ne+=y,se+=ee,ue["clip-path"]="path('M "+y+","+ee+" L "+ne+" "+ee+" L "+ne+" "+se+" L "+y+" "+se+" z')"),zx(this,Fp,ue,this.rb),this.addElement(Fp,ue)},Rt.fill=function(a){a&&(this.Yl["fill-rule"]="evenodd"),S2(this,this.Yl)},Rt.ng=function(a,y){this.clipInsteadOfFill?this.clip():this.fill(y)},Rt.fillRect=function(a,y,ee,ne){a=[a,y,ee,ne],a={x:a[0],y:a[1],width:a[2],height:a[3]},zx(this,"fill",a,this.rb),this.addElement("rect",a)},Rt.ox=function(a,y,ee,ne){a={x:a,y,width:ee,height:ne},zx(this,"fill",a,this.rb),S2(this,a),this.svg.prepend(this.Ud("rect",a))},Rt.fillText=function(a,y,ee){a=[a,y,ee],y=this.textAlign,y==="left"?y="start":y==="right"?y="end":y==="center"&&(y="middle"),y={x:a[1],y:a[2],style:"font: "+this.font,"text-anchor":y},zx(this,"fill",y,this.rb),this.addElement("text",y,a[0])},Rt.lineTo=function(a,y){this.path.push(["L",a,y])},Rt.moveTo=function(a,y){this.path.push(["M",a,y])},Rt.quadraticCurveTo=function(a,y,ee,ne){this.path.push(["Q",a,y,ee,ne])},Rt.rect=function(a,y,ee,ne){this.path.push(["M",a,y],["L",a+ee,y],["L",a+ee,y+ne],["L",a,y+ne],["z"])},Rt.restore=function(){this.rb=this.stack.pop(),this.path=this.stack.pop();var a=this.stack.pop();this.fillStyle=a.fillStyle,this.font=a.font,this.globalAlpha=a.globalAlpha,this.lineCap=a.lineCap,this.lineDashOffset=a.lineDashOffset,this.lineJoin=a.lineJoin,this.lineWidth=a.lineWidth,this.miterLimit=a.miterLimit,this.shadowBlur=a.shadowBlur,this.shadowColor=a.shadowColor,this.shadowOffsetX=a.shadowOffsetX,this.shadowOffsetY=a.shadowOffsetY,this.strokeStyle=a.strokeStyle,this.textAlign=a.textAlign,this.bk=a.bk},Rt.save=function(){this.stack.push({fillStyle:this.fillStyle,font:this.font,globalAlpha:this.globalAlpha,lineCap:this.lineCap,lineDashOffset:this.lineDashOffset,lineJoin:this.lineJoin,lineWidth:this.lineWidth,miterLimit:this.miterLimit,shadowBlur:this.shadowBlur,shadowColor:this.shadowColor,shadowOffsetX:this.shadowOffsetX,shadowOffsetY:this.shadowOffsetY,strokeStyle:this.strokeStyle,textAlign:this.textAlign,bk:this.bk});for(var a=[],y=0;yQe.offset?1:-1}),se=0;seee?(this.scale(ee/a,1),this.translate((a-ee)/2,0)):ee>a&&(this.scale(1,a/ee),this.translate(0,(ee-a)/2)),this.Hm?this.clip():this.fill(y),a>ee?(this.translate(-(a-ee)/2,0),this.scale(1/(ee/a),1)):ee>a&&(this.translate(0,-(ee-a)/2),this.scale(1,1/(a/ee)))}else this.Hm?this.clip():this.fill(y)},Rt.jk=function(){this.Hm||this.stroke()},Rt.Ev=function(a,y,ee){this.Ar=a,this.Br=y,this.Vg=ee},Rt.js=function(a,y){var ee=this.Z;ee.setLineDash!==void 0&&(ee.setLineDash(a),ee.lineDashOffset=y)},Rt.fs=function(){var a=this.Z;a.setLineDash!==void 0&&(a.setLineDash(yI),a.lineDashOffset=0)},Rt.Vc=function(a){a&&(this.dt=""),this.ct=this.et=""},Rt.Hs=function(){},De.Object.defineProperties(xy.prototype,{fillStyle:{get:function(){return this.Z.fillStyle},set:function(a){this.ct!==a&&(this.ct=this.Z.fillStyle=a)}},font:{get:function(){return this.Z.font},set:function(a){this.dt!==a&&(this.dt=this.Z.font=a)}},globalAlpha:{get:function(){return this.Z.globalAlpha},set:function(a){this.Z.globalAlpha=a}},lineCap:{get:function(){return this.Z.lineCap},set:function(a){this.Z.lineCap=a}},lineDashOffset:{get:function(){return this.Z.lineDashOffset},set:function(a){this.Z.lineDashOffset=a}},lineJoin:{get:function(){return this.Z.lineJoin},set:function(a){this.Z.lineJoin=a}},lineWidth:{get:function(){return this.Z.lineWidth},set:function(a){this.Z.lineWidth=a}},miterLimit:{get:function(){return this.Z.miterLimit},set:function(a){this.Z.miterLimit=a}},shadowBlur:{get:function(){return this.Z.shadowBlur},set:function(a){this.Z.shadowBlur=a}},shadowColor:{get:function(){return this.Z.shadowColor},set:function(a){this.Z.shadowColor=a}},shadowOffsetX:{get:function(){return this.Z.shadowOffsetX},set:function(a){this.Z.shadowOffsetX=a}},shadowOffsetY:{get:function(){return this.Z.shadowOffsetY},set:function(a){this.Z.shadowOffsetY=a}},strokeStyle:{get:function(){return this.Z.strokeStyle},set:function(a){this.et!==a&&(this.et=this.Z.strokeStyle=a)}},textAlign:{get:function(){return this.Z.textAlign},set:function(a){this.Z.textAlign=a}},imageSmoothingEnabled:{get:function(){return this.Z.imageSmoothingEnabled},set:function(a){this.Z.imageSmoothingEnabled=a}},filter:{get:function(){return this.Z.filter},set:function(a){this.Z.filter=a===""?"none":a}},clipInsteadOfFill:{get:function(){return this.Hm},set:function(a){this.Hm=a}}});var yI=Object.freeze([]);xy.className="CanvasSurfaceContext";function fA(){this.F=this.o=this.u=this.j=0}fA.className="ColorNumbers";function $s(a,y){Vx||(M2(),Vx=!0),Ma(this),this._isFrozen=!1,a===void 0?(this.na=Iv,this.xk="black"):typeof a=="string"?(this.na=Iv,this.xk=a):(this.na=a,this.xk="black"),a=this.na,a===X0?(this.Qd=Ih,this.Lk=eh):this.Lk=a===Yf?this.Qd=cs:this.Qd=su,this.Gr=0,this.Xp=NaN,this.xe=this.cr=this.we=null,this.ft=this.yk=0,y&&Object.assign(this,y)}$s.prototype.copy=function(){var a=new $s;return a.na=this.na,a.xk=this.xk,a.Qd=this.Qd.J(),a.Lk=this.Lk.J(),a.Gr=this.Gr,a.Xp=this.Xp,this.we!==null&&(a.we=this.we.copy()),a.cr=this.cr,a},Rt=$s.prototype,Rt.freeze=function(){return this._isFrozen=!0,this.we!==null&&this.we.freeze(),this},Rt.ka=function(){return Object.isFrozen(this)&&tn("cannot thaw constant: "+this),this._isFrozen=!1,this.we!==null&&this.we.ka(),this},Rt.qb=function(a){a.classType===$s&&(this.type=a)},Rt.toString=function(){var a="Brush(";if(this.type===Iv)a+=this.color;else if(a=this.type===X0?a+"Linear ":this.type===Yf?a+"Radial ":this.type===Kx?a+"Pattern ":a+"(unknown) ",a+=this.start+" "+this.end,this.colorStops!==null)for(var y=this.colorStops.iterator;y.next();)a+=" "+y.key+":"+y.value;return a+")"},Rt.addColorStop=function(a,y){return this._isFrozen&&Vn(this),(typeof a!="number"||!isFinite(a)||1a)&&tr(a,"0 <= loc <= 1",$s,"addColorStop:loc"),this.we===null&&(this.we=new lo),this.we.add(a,y),this.na===Iv&&(this.type=X0),this.xe=null,this},Rt.Vz=function(a,y){if(this._isFrozen&&Vn(this),a=a===void 0||typeof a!="number"?.2:a,y=y===void 0?Zx:y,this.type===Iv)dp(this.color),this.color=Gx(a,y);else if((this.type===X0||this.type===Yf)&&this.colorStops!==null)for(var ee=this.colorStops.iterator;ee.next();)dp(ee.value),this.addColorStop(ee.key,Gx(a,y));return this};function uT(a,y,ee){return y=y===void 0||typeof y!="number"?.2:y,ee=ee===void 0?Zx:ee,dp(a),Gx(y,ee)}Rt.Wy=function(a,y){if(this._isFrozen&&Vn(this),a=a===void 0||typeof a!="number"?.2:a,y=y===void 0?Zx:y,this.type===Iv)dp(this.color),this.color=Gx(-a,y);else if((this.type===X0||this.type===Yf)&&this.colorStops!==null)for(var ee=this.colorStops.iterator;ee.next();)dp(ee.value),this.addColorStop(ee.key,Gx(-a,y));return this};function cT(a,y,ee){return y=y===void 0||typeof y!="number"?.2:y,ee=ee===void 0?Zx:ee,dp(a),Gx(-y,ee)}function C2(a,y,ee){dp(a),a=Il.j;var ne=Il.u,se=Il.o,ue=Il.F;return dp(y),ee===void 0&&(ee=.5),"rgba("+Math.round((Il.j-a)*ee+a)+", "+Math.round((Il.u-ne)*ee+ne)+", "+Math.round((Il.o-se)*ee+se)+", "+Math.round((Il.F-ue)*ee+ue)+")"}Rt.Gx=function(){if(this.type===Iv)return Ux(this.color);if((this.type===X0||this.type===Yf)&&this.colorStops!==null){var a=this.colorStops;if(this.type===Yf)return Ux(a.first().value);if(a.get(.5)!==null)return Ux(a.get(.5));if(a.count===2)return a=a.Fa(),Ux(C2(a[0].value,a[1].value));for(var y=a.iterator,ee=-1,ne=-1,se=1,ue=1;y.next();){var me=y.key,Ce=Math.abs(.5-y.key);se>ue&&Ce=se&&Cene&&(ue=ee,ee=ne,ne=ue,ue=se),se=ne-ee,Ux(C2(a.get(ee),a.get(ne),1-ue/se))}return!1};function Ux(a){return a?a instanceof $s?a.Gx():(dp(a),128>(299*Il.j+587*Il.u+114*Il.o)/1e3):!1}function Gx(a,y){switch(y){case Zx:y=100*P2(Il.j);var ee=100*P2(Il.u),ne=100*P2(Il.o);return ud.j=.4124564*y+.3575761*ee+.1804375*ne,ud.u=.2126729*y+.7151522*ee+.072175*ne,ud.o=.0193339*y+.119192*ee+.9503041*ne,ud.F=Il.F,y=ow(ud.j/Hx[0]),ee=ow(ud.u/Hx[1]),ne=ow(ud.o/Hx[2]),f0.j=116*ee-16,f0.u=500*(y-ee),f0.o=200*(ee-ne),f0.F=ud.F,f0.j=Math.min(100,Math.max(0,f0.j+100*a)),a=(f0.j+16)/116,y=a-f0.o/200,ud.j=Hx[0]*hT(f0.u/500+a),ud.u=Hx[1]*(f0.j>aw*L2?Math.pow(a,3):f0.j/aw),ud.o=Hx[2]*hT(y),ud.F=f0.F,a=-.969266*ud.j+1.8760108*ud.u+.041556*ud.o,y=.0556434*ud.j+-.2040259*ud.u+1.0572252*ud.o,Il.j=255*iw((3.2404542*ud.j+-1.5371385*ud.u+-.4985314*ud.o)/100),Il.u=255*iw(a/100),Il.o=255*iw(y/100),Il.F=ud.F,Il.j=Math.round(Il.j),255Il.j&&(Il.j=0),Il.u=Math.round(Il.u),255Il.u&&(Il.u=0),Il.o=Math.round(Il.o),255Il.o&&(Il.o=0),"rgba("+Il.j+", "+Il.u+", "+Il.o+", "+Il.F+")";case D2:return b2(),Pf.o=Math.min(100,Math.max(0,Pf.o+100*a)),"hsla("+Pf.j+", "+Pf.u+"%, "+Pf.o+"%, "+Pf.F+")";default:tn("Unknown color space: "+y)}}function dp(a){Vx||(M2(),Vx=!0);var y=T2;if(y!==null){y.clearRect(0,0,1,1),y.fillStyle="#000000";var ee=y.fillStyle;y.fillStyle=a,y.fillStyle!==ee?(y.fillRect(0,0,1,1),a=y.getImageData(0,0,1,1).data,Il.j=a[0],Il.u=a[1],Il.o=a[2],Il.F=a[3]/255):(y.fillStyle="#FFFFFF",y.fillStyle=a,Il.j=0,Il.u=0,Il.o=0,Il.F=1)}}function b2(){var a=Il.j/255,y=Il.u/255,ee=Il.o/255,ne=Math.max(a,y,ee),se=Math.min(a,y,ee),ue=ne-se;if(se=(ne+se)/2,ue===0)var me=a=0;else{switch(ne){case a:me=(y-ee)/ue%6;break;case y:me=(ee-a)/ue+2;break;case ee:me=(a-y)/ue+4}me*=60,0>me&&(me+=360),a=ue/(1-Math.abs(2*se-1))}Pf.j=Math.round(me),Pf.u=Math.round(100*a),Pf.o=Math.round(100*se),Pf.F=Il.F}function P2(a){return a/=255,.04045>=a?a/12.92:Math.pow((a+.055)/1.055,2.4)}function iw(a){return .0031308>=a?12.92*a:1.055*Math.pow(a,1/2.4)-.055}function ow(a){return a>L2?Math.pow(a,1/3):(aw*a+16)/116}function hT(a){var y=a*a*a;return y>L2?y:(116*a-16)/aw}function A1(a,y){typeof a!="string"&&(a instanceof $s||tn("Value for "+y+" must be a color string or a Brush, not "+a))}function M2(){T2=vl?new gg(null,void 0,{willReadFrequently:!0}).context:null}De.Object.defineProperties($s.prototype,{type:{get:function(){return this.na},set:function(a){this._isFrozen&&Vn(this,a),this.na=a,this.start.Mc()&&(a===X0?this.start=Ih:a===Yf&&(this.start=cs)),this.end.Mc()&&(a===X0?this.end=eh:a===Yf&&(this.end=cs)),this.xe=null}},color:{get:function(){return this.xk},set:function(a){this._isFrozen&&Vn(this,a),this.xk=a,this.xe=null}},start:{get:function(){return this.Qd},set:function(a){this._isFrozen&&Vn(this,a),this.Qd=a.J(),this.xe=null}},end:{get:function(){return this.Lk},set:function(a){this._isFrozen&&Vn(this,a),this.Lk=a.J(),this.xe=null}},startRadius:{get:function(){return this.Gr},set:function(a){this._isFrozen&&Vn(this,a),0>a&&tr(a,">= zero",$s,"startRadius"),this.Gr=a,this.xe=null}},endRadius:{get:function(){return this.Xp},set:function(a){this._isFrozen&&Vn(this,a),0>a&&tr(a,">= zero",$s,"endRadius"),this.Xp=a,this.xe=null}},colorStops:{get:function(){return this.we},set:function(a){this._isFrozen&&Vn(this,a),this.we=a,this.xe=null}},pattern:{get:function(){return this.cr},set:function(a){this._isFrozen&&Vn(this,a),this.cr=a,this.xe=null}}}),$s.prototype.isDark=$s.prototype.Gx,$s.prototype.darkenBy=$s.prototype.Wy,$s.prototype.lightenBy=$s.prototype.Vz,$s.prototype.addColorStop=$s.prototype.addColorStop;var L2=216/24389,aw=24389/27,Hx=[95.047,100,108.883],T2=null,Il=new fA,Pf=new fA,ud=new fA,f0=new fA,Vx=!1;$s.className="Brush";var Iv;$s.Solid=Iv=new wr($s,"Solid",0);var X0;$s.Linear=X0=new wr($s,"Linear",1);var Yf;$s.Radial=Yf=new wr($s,"Radial",2);var Kx;$s.Pattern=Kx=new wr($s,"Pattern",4);var Zx;$s.Lab=Zx=new wr($s,"Lab",5);var D2;$s.HSL=D2=new wr($s,"HSL",6),$s.randomColor=function(a,y){a===void 0&&(a=128),y===void 0&&(y=Math.max(a,255));var ee=Math.abs(y-a);y=Math.floor(a+Math.random()*ee).toString(16);var ne=Math.floor(a+Math.random()*ee).toString(16);return a=Math.floor(a+Math.random()*ee).toString(16),2>y.length&&(y="0"+y),2>ne.length&&(ne="0"+ne),2>a.length&&(a="0"+a),"#"+y+ne+a},$s.isValidColor=function(a){if(a==="black")return!0;if(a==="")return!1;Vx||(M2(),Vx=!0);var y=T2;if(y===null)return!0;y.fillStyle="#000000";var ee=y.fillStyle;return y.fillStyle=a,y.fillStyle!==ee?!0:(y.fillStyle="#FFFFFF",ee=y.fillStyle,y.fillStyle=a,y.fillStyle!==ee)},$s.lighten=function(a){return uT(a)},$s.lightenBy=uT,$s.darken=function(a){return cT(a)},$s.darkenBy=cT,$s.mix=C2,$s.isDark=Ux;function sc(){this.xa="Base"}sc.prototype.measure=function(){},sc.prototype.Yz=function(a,y,ee,ne,se){a.measure(y,ee,ne,se)},sc.prototype.arrange=function(){},sc.prototype.Ly=function(a,y,ee,ne,se,ue){a.arrange(y,ee,ne,se,ue)},sc.prototype.iA=function(a){a.Uj()},sc.prototype.gc=function(){},De.Object.defineProperties(sc.prototype,{name:{get:function(){return this.xa},set:function(a){this.xa=a}},classType:{get:function(){return Mi}}}),sc.prototype.remeasureObject=sc.prototype.iA,sc.prototype.arrangeElement=sc.prototype.Ly,sc.prototype.measureElement=sc.prototype.Yz,sc.className="PanelLayout";function sw(){this.xa="Base"}We(sw,sc),sw.prototype.measure=function(a,y,ee,ne,se,ue,me){var Ce=ne.length;a=os(a);for(var Fe=0;Fepo&&(gc=Math.max(po-Yv,0));var $m=hi.oa===0;hi.oc=hi.oc+gc,hi.actual=hi.oa+gc,po=Math.max(po-(gc+($m?Yv:0)),0)}if(bl.columnSpan===1&&(Zl===vi||Zl===ia)){hi=a.Eb(Jh);var Xv=hi.Wc();gc=Math.max(qm-hi.actual,0),gc+Xv>Xi&&(gc=Math.max(Xi-Xv,0));var bC=hi.oa===0;hi.oc=hi.oc+gc,hi.actual=hi.oa+gc,Xi=Math.max(Xi-(gc+(bC?Xv:0)),0)}Zv&&bl.Uj()}}}}}Tr(_n);var uf=0,x0=0;ue=a.columnCount;for(var Gd=0;Gd=a.rowCount);tm++)hi=a.Fb(Bu.row+tm),gc=0,gc=Zl===Si||Zl===ia?Math.max(hi.minimum,Ap[Bu.row+tm]===0?hi.maximum:Math.min(Ap[Bu.row+tm],hi.maximum)):Math.max(hi.minimum,isNaN(hi.Hc)?hi.maximum:Math.min(hi.Hc,hi.maximum)),hv.height+=gc,gd+=hi.minimum;for(var cf=1;cf=a.columnCount);cf++)hi=a.Eb(Bu.column+cf),gc=0,gc=Zl===Si||Zl===No?Math.max(hi.minimum,Ld[Bu.column+cf]===0?hi.maximum:Math.min(Ld[Bu.column+cf],hi.maximum)):Math.max(hi.minimum,isNaN(hi.Hc)?hi.maximum:Math.min(hi.Hc,hi.maximum)),hv.width+=gc,ax+=hi.minimum;Cu.width+=hv.width,Cu.height+=hv.height;var ty=Bu.margin,nm=ty.right+ty.left,RE=ty.top+ty.bottom;Bu.measure(Cu.width,Cu.height,ax,gd);for(var sx=Bu.measuredBounds,Sp=Math.max(sx.width+nm,0),ny=Math.max(sx.height+RE,0),rm=0,dv=0;dv=a.rowCount);dv++)hi=a.Fb(Bu.row+dv),rm+=hi.total||0;if(rm=wp)&&!(Bu.row+$p>=a.rowCount);$p++){hi=a.Fb(Bu.row+$p);var A0=hi.oa||0,S0=E0(Bu,hi,qp);hi.actual=Math.min(hi.maximum,A0+S0),hi.oa!==A0&&(wp-=hi.oa-A0)}for(;0Og&&(hi.actual=Math.min(hi.maximum,Og+wp),hi.oa!==Og&&(wp-=hi.oa-Og)),hi.index===0)break;hi=a.Fb(hi.index-1)}}for(var Vy=0,fv=0;fv=a.columnCount);fv++)hi=a.Eb(Bu.column+fv),Vy+=hi.total||0;if(Vy=im)&&!(Bu.column+w0>=a.columnCount);w0++){hi=a.Eb(Bu.column+w0);var ry=hi.oa||0,lx=np(Bu,hi,MC);hi.actual=Math.min(hi.maximum,ry+lx),hi.oa!==ry&&(im-=hi.oa-ry)}for(;0Ky&&(hi.actual=Math.min(hi.maximum,Ky+im),hi.oa!==Ky&&(im-=hi.oa-Ky)),hi.index===0)break;hi=a.Eb(hi.index-1)}}}}Tr(jn),Ri.free(hv),Ri.free(Cu),Ap!==void 0&&Tr(Ap),Ld!==void 0&&Tr(Ld);var gv=0,pv=0,Zy=a.desiredSize,kE=a.maxSize;Zl=Ad(a,!0);var iy=x0=uf=0,om=0;ue=a.columnCount;for(var ux=0;ux=a.rowCount);hi++){var La=a.Fb(_n+hi);La.oa!==0&&(gn.height+=La.total)}for(hi=1;hi=a.columnCount);hi++)La=a.Eb(Yn+hi),La.oa!==0&&(gn.width+=La.total);var ya=nr.oa+gn.width,zs=jn.oa+gn.height;hi=Ce,La=Fe;var xl=ya,fc=zs,Pc=Ce,Xo=Fe,gc=ya,lv=zs;Ce+ya>ee.width&&(gc=Math.max(ee.width-Ce,0)),Fe+zs>ee.height&&(lv=Math.max(ee.height-Fe,0));var Ju=ao.alignment;if(Ju.Xb()){Ju=a.defaultAlignment,Ju.sb()||(Ju=cs);var Pg=Ju.x,Jh=Ju.y,Xp=Ju.offsetX;Ju=Ju.offsetY;var Pd=nr.alignment,Nf=jn.alignment;Pd.sb()&&(Pg=Pd.x,Xp=Pd.offsetX),Nf.sb()&&(Jh=Nf.y,Ju=Nf.offsetY)}else Pg=Ju.x,Jh=Ju.y,Xp=Ju.offsetX,Ju=Ju.offsetY;(isNaN(Pg)||isNaN(Jh))&&(Jh=Pg=.5,Ju=Xp=0),Pd=Di.width,Nf=Di.height;var Wd=ao.margin,bl=Wd.left+Wd.right,Zv=Wd.top+Wd.bottom,Fh=hp(ao,jn,nr,!1);!isNaN(ao.desiredSize.width)||Fh!==Si&&Fh!==No||(Pd=Math.max(ya-bl,0)),!isNaN(ao.desiredSize.height)||Fh!==Si&&Fh!==ia||(Nf=Math.max(zs-Zv,0)),ya=ao.maxSize,zs=ao.minSize,Pd=Math.min(ya.width,Pd),Nf=Math.min(ya.height,Nf),Pd=Math.max(zs.width,Pd),Nf=Math.max(zs.height,Nf),ya=Nf+Zv,hi+=xl*Pg-(Pd+bl)*Pg+Xp+Wd.left,La+=fc*Jh-ya*Jh+Ju+Wd.top,ao.visible&&(wl(Pc,Xo,gc,lv,hi,La,Di.width,Di.height)?ao.arrange(hi,La,Pd,Nf):ao.arrange(hi,La,Pd,Nf,new Pr(Pc,Xo,gc,lv)))}}}for(Ri.free(gn),a=0;a=ee&&(ee=1);var ne=a.gridCellSize,se=ne.width;ne=ne.height;var ue=a.naturalBounds,me=a.actualBounds,Ce=ue.width,Fe=ue.height,Ye=Math.ceil(Ce/se),Qe=Math.ceil(Fe/ne),at=a.gridOrigin,mt=at.x;at=at.y,y.save(),y.beginPath(),y.rect(0,0,Ce,Fe),y.clip(),y.Se();for(var Lt=[],kt=a.O.s,Xt=kt.length,bn=0;bnjn)){gn=N2(gn.figure);for(var Yn=0;Ynjn&&_n.push(nr))}}}}for(kt=a.O.s,Xt=kt.length,bn=0;bnse*gn*ee))){if(jn=Or.segmentIndex,(!isFinite(jn)||isNaN(jn))&&(jn=0),0>jn&&(jn=gn-Math.min(-jn,gn)),jn=Math.round(jn%gn),gn=Or.opacity,Yn=1,gn!==1){if(gn===0)continue;Yn=y.globalAlpha,y.globalAlpha=Yn*gn}nr=Lt[bn];var Xi=!1,po=Or.strokeDashArray;if(po!==null&&(Xi=!0,y.js(po,Or.strokeDashOffset)),Or.figure==="LineV"&&Or.stroke!==null&&0y)return a%y===ee;if(a%y!==ee)return!1;y=ne.length;for(var se=0;seat)_n.measure(1/0,1/0,0,0),jn=_n.measuredBounds,ee.ed(jn),Lt.push(jn);else{var Yn=_n.segmentIndex,nr=_n.segmentFraction,Or=_n.alignmentFocus;Or.Mc()&&(Or=cs);var Xi=_n.segmentOrientation,po=_n.segmentOffset;if(isNaN(Yn)){var ao=Fe.ua;jn=gr(),ao.Qu(nr,jn);var Di=fn.allocAt(jn[0],jn[1]);if(Di.add(Fe.i(0)),ao.type===Ci.j?Di.offset(-ao.startX,-ao.startY):(ao=ao.figures.first(),ao!==null&&Di.offset(-ao.startX,-ao.startY)),ao=jn[2],Xi!==Kh){var hi=Fe.computeAngle(_n,Xi,ao);_n.Kb=hi}hi=Di.x-y.x;var La=Di.y-y.y;fn.free(Di),Tr(jn)}else if(Yn<-at||Yn>=at)jn=fn.alloc(),Fe.vg(),Fe.computeMidPoint(jn),ao=Fe.midAngle,Xi!==Kh&&(hi=Fe.computeAngle(_n,Xi,ao),_n.Kb=hi),hi=jn.x-y.x,La=jn.y-y.y,fn.free(jn);else{if(hi=0,0<=Yn?(La=Qe.M(Yn),jn=Ynya+10?0<=Yn?ao.ab(La):La.ab(ao):ya>Di+10?0<=Yn?jn.ab(hi):hi.ab(jn):0<=Yn?ao.ab(hi):hi.ab(ao)}else ao=0<=Yn?La.ab(jn):jn.ab(La);Xi!==Kh&&(hi=Fe.computeAngle(_n,Xi,ao),_n.Kb=hi),hi=La.x+(jn.x-La.x)*nr-y.x,La=La.y+(jn.y-La.y)*nr-y.y}_n.measure(1/0,1/0,0,0),jn=_n.measuredBounds,Di=_n.naturalBounds;var zs=0;_n instanceof Ra&&(zs=_n.strokeWidth),ya=Di.width+zs;var xl=Di.height+zs;kt.reset(),kt.translate(-jn.x,-jn.y),kt.scale(_n.scale,_n.scale),kt.rotate(Xi===Kh?_n.angle:ao,ya/2,xl/2),Xi!==sE&&Xi!==lc||kt.rotate(90,ya/2,xl/2),Xi!==lE&&Xi!==by||kt.rotate(-90,ya/2,xl/2),Xi===Eg&&(45ao||225ao)&&kt.rotate(-ao,ya/2,xl/2),Di=new Pr(0,0,ya,xl),Xt.xi(Di,Or),kt.Ga(Xt),Or=-Xt.x+zs/2*_n.scale,_n=-Xt.y+zs/2*_n.scale,bn.assign(po),zs=isNaN(po.x);var fc=isNaN(po.y);if(zs||fc){ya=ya/2+3,xl=xl/2+3;var Pc=45<=ao&&135>=ao,Xo=225<=ao&&315>=ao;Xi===Kh&&(Pc||Xo)?(bn.x=fc?ya:po.y,bn.y=zs?xl:po.x,Pc?0<=Yn||isNaN(Yn)&&.5>nr||!zs||(bn.y=-xl):Xo&&((0<=Yn||isNaN(Yn)&&.5>nr)&&zs&&(bn.y=-xl),fc&&(bn.x=-ya))):(zs&&(bn.x=0<=Yn||isNaN(Yn)&&.5>nr?ya:-ya),fc&&(bn.y=-xl),bn.rotate(ao))}else bn.rotate(ao);hi+=bn.x,La+=bn.y,Di.set(jn),Di.h(hi+Or,La+_n,jn.width,jn.height),Lt.push(Di),ee.ed(Di)}}if(me!==null)for(ne=me.labelNodes;ne.next();)ne.value.measure(1/0,1/0);a.jg=ee,a.position.h(y.x+ee.x,y.y+ee.y),ou(se,ee.width||0,ee.height||0),Ta.free(kt),fn.free(Xt),fn.free(bn)}}}},vw.prototype.arrange=function(a,y){var ee=y.length;if(a instanceof Es||a instanceof Oi){var ne=a,se=null;a instanceof Es&&(se=a,ne=se.adornedPart);var ue=a instanceof Es?null:ne.path,me=a.j;if(me.length!==0){var Ce=0;if(ue!==null&&Ce=ee)kt=fn.alloc(),Lt=at,bn=kt,Lt.vg(),Lt.computeMidPoint(bn),Lt=at.midAngle,Ye!==Kh&&(at=at.computeAngle(me,Ye,Lt),me.angle=at),at=kt.x,bn=kt.y,fn.free(kt);else{if(Xt=0,0<=Ce?(kt=y.s[Ce],bn=Ce_n+10?0<=Ce?Lt.ab(kt):kt.ab(Lt):_n>gn+10?0<=Ce?bn.ab(Xt):Xt.ab(bn):0<=Ce?Lt.ab(Xt):Xt.ab(Lt)}else Lt=0<=Ce?kt.ab(bn):bn.ab(kt);Ye!==Kh&&(at=at.computeAngle(me,Ye,Lt),me.angle=at),at=kt.x+(bn.x-kt.x)*Fe,bn=kt.y+(bn.y-kt.y)*Fe}if(mt.ys())me.location=new fn(at,bn);else{mt.Mc()&&(mt=cs),kt=Ta.alloc(),kt.reset(),kt.scale(me.scale,me.scale),kt.rotate(me.angle,0,0);var jn=me.naturalBounds;Xt=Pr.allocAt(0,0,jn.width,jn.height),gn=fn.alloc(),gn.xi(Xt,mt),kt.Ga(gn),mt=-gn.x,_n=-gn.y;var Yn=jn.width,nr=jn.height;jn=fn.alloc(),jn.assign(Qe);var Or=isNaN(Qe.x),Xi=isNaN(Qe.y);if(Or||Xi){Yn=Yn/2+3,nr=nr/2+3;var po=45<=Lt&&135>=Lt,ao=225<=Lt&&315>=Lt;Ye===Kh&&(po||ao)?(jn.x=Xi?Yn:Qe.y,jn.y=Or?nr:Qe.x,po?0<=Ce||isNaN(Ce)&&.5>Fe||!Or||(jn.y=-nr):ao&&((0<=Ce||isNaN(Ce)&&.5>Fe)&&Or&&(jn.y=-nr),Xi&&(jn.x=-Yn))):(Or&&(jn.x=0<=Ce||isNaN(Ce)&&.5>Fe?Yn:-Yn),Xi&&(jn.y=-nr),jn.rotate(Lt))}else jn.rotate(Lt);at+=jn.x,bn+=jn.y,kt.pp(Xt),mt+=Xt.x,_n+=Xt.y,Ce=fn.allocAt(at+mt,bn+_n),me.move(Ce),fn.free(Ce),fn.free(jn),fn.free(gn),Pr.free(Xt),Ta.free(kt)}}se!==null?se.Ul(!1):ne.Ul(!1),ne=Ow(a),a.location.h(a.position.x+ne.x,a.position.y+ne.y),fn.free(ne)}};function dT(a,y,ee,ne){if(bf(ne)!==!1){var se=ne.strokeWidth;se===0&&a instanceof Es&&a.type===Mi.Link&&a.adornedObject instanceof Ra&&(se=a.adornedObject.strokeWidth),se*=ne.Ca,a instanceof Oi&&a.ua!==null?(a=a.geometry.bounds,ne.Ge(a.x-se/2,a.y-se/2,a.width+se,a.height+se)):a instanceof Es&&a.adornedPart.ua!==null?(a=a.adornedPart.ua.bounds,ne.Ge(a.x-se/2,a.y-se/2,a.width+se,a.height+se)):ne.Ge(-(se/2),-(se/2),y+se,ee+se),se=ne.desiredSize,se.w()||ne.ua===null?ne.dc.h(0,0,se.width,se.height):ne.dc.assign(ne.ua.bounds),ac(ne,!1)}}function vA(){this.xa="Base"}We(vA,sc),vA.prototype.measure=function(a,y,ee,ne,se,ue,me){var Ce=a.Pb();a.graduatedBounds=[];var Fe=Ce.margin,Ye=Fe.right+Fe.left,Qe=Fe.top+Fe.bottom;Ce.measure(y,ee,ue,me);var at=Ce.measuredBounds,mt=new Pr(-Fe.left,-Fe.top,Math.max(at.width+Ye,0),Math.max(at.height+Qe,0));a.graduatedBounds.push(mt),se.assign(mt);for(var Lt=Ce.geometry,kt=Ce.strokeWidth,Xt=Lt.flattenedSegments,bn=Lt.flattenedLengths,gn=Lt.flattenedTotalLength,_n=Xt.length,jn=0,Yn=0,nr=gr(),Or=0;Or<_n;Or++){var Xi=Xt[Or],po=[];Yn=jn=0;for(var ao=Xi.length,Di=0;Diya&&(ya+=360),po.push(ya)}jn=hi,Yn=La}nr.push(po)}if(a.graduatedIntervals===null){for(var zs=[],xl=a.O.s,fc=xl.length,Pc=0;Pclv)){for(var Ju=0;Julv&&gc.push(Jh)}}}}}a.graduatedIntervals=zs}var Xp=a.graduatedIntervals,Pd=a.O.s,Nf=Pd.length,Wd=0,bl=0,Zv=gn;a.graduatedMarks=[];for(var Fh,uv=0;uvxp*Zl*gn/a.graduatedRange&&Ud.graduatedSkip===null)){var Wy=bn[0][0],Mg=0,Mh=0;bl=gn*Ud.graduatedStart-1e-4,Zv=gn*Ud.graduatedEnd+1e-4;var qm=xp*Zl,Uu=a.graduatedTickBase;if(Uua.graduatedMin+qm&&(Uu-=Math.floor((Uu-a.graduatedMin)/qm)*qm);for(var $m=Xp[uv],Xv=Uu,bC=1e-6*a.graduatedMax,uf=1;Uu<=a.graduatedMax+bC;uf++){e:{for(var x0=$m.length,Gd=0;Gd-Qp){var Jv=!1;break e}}Jv=!0}if(Jv&&(Uu>a.graduatedMax&&(Uu=a.graduatedMax),Ud.graduatedSkip===null||Ud instanceof ml&&!Ud.graduatedSkip(Uu,Ud)||Ud instanceof Ra&&!Ud.graduatedSkip(Uu,Ud))&&(Wd=(Uu-a.graduatedMin)*gn/a.graduatedRange,Wd>gn&&(Wd=gn),bl<=Wd&&Wd<=Zv)){for(var Lg=nr[Mg][Mh],sh=bn[Mg][Mh];MgWy&&Mhcv&&.4995cv?0cv||.9995Gy){var Hy=1-Math.abs(.5-cv);Lg=(Tg*Hy+Ep*(1-Hy))%360;break e}}}Lg=Tg}if(Ud instanceof ml){var ep="";Ud.graduatedFunction!==null?(ep=Ud.graduatedFunction(Uu,Ud),ep=ep!=null?ep.toString():""):ep=(+Uu.toFixed(2)).toString(),ep!==""&&Fh.push({$l:Uy,angle:Lg,text:ep})}else Fh.push({$l:Uy,angle:Lg})}Uu=Xv+uf*qm}}}a.graduatedMarks.push(Fh)}Tr(nr);var Cu=a.graduatedMarks;if(Cu!==null)for(var tx=ne.length,qh=0;qhDg;Dg++){switch(Dg){case 0:fd.h(hv,Ap);break;case 1:fd.h(hv+rx,Ap);break;case 2:fd.h(hv,Ap+em);break;case 3:fd.h(hv+rx,Ap+em)}fd.rotate(Bu+qu.angle),fd.offset(PC,ox),BE===0&&Dg===0?Ld.h(fd.x,fd.y,0,0):Ld.Ye(fd),fd.offset(-PC,-ox),fd.rotate(-Bu-qu.angle)}fn.free(fd),tp.graduatedBounds!==null&&tp.graduatedBounds.push(Ld),Cs(Jp,Ld.x,Ld.y,Ld.width,Ld.height)}else if(qu instanceof ml){var Ig=a,ax=se;Ig.temporaryTextBlock===null&&(Ig.temporaryTextBlock=new ml);var gd=Ig.temporaryTextBlock;Cw(gd,qu);var tm=qu.alignmentFocus;tm.Mc()&&(tm=Ih);for(var cf=qu.segmentOrientation,ty=qu.segmentOffset,nm=new Pr,RE=0,sx=0,Sp=0,ny=0,rm=0,dv=fh.length,wp=0;wpSp||225Sp)&&Og.rotate(-Sp,A0/2,S0/2);var Vy=Pr.allocAt(0,0,A0,S0),fv=fn.alloc();fv.xi(Vy,tm),Og.Ga(fv);var im=-fv.x,MC=-fv.y,np=fn.alloc();np.assign(ty),isNaN(np.x)&&(np.x=A0/2+3),isNaN(np.y)&&(np.y=-(S0/2+3)),np.rotate(Sp),RE+=np.x+im,sx+=np.y+MC;var w0=new Pr(RE,sx,E0.width,E0.height),ry=new Pr(E0.x,E0.y,E0.width,E0.height),lx=new Pr($p.x,$p.y,$p.width,$p.height);qp.Sz=ny,qp.lineCount=gd.lineCount,qp.lines=[gd.Cb,gd.Ih,gd.df,gd.Le,gd.Qc,gd.Qb,gd.ze],qp.actualBounds=w0,qp.measuredBounds=ry,qp.naturalBounds=lx,wp===0?nm.assign(w0):nm.ed(w0),fn.free(np),fn.free(fv),Pr.free(Vy),Ta.free(Og)}Ig.graduatedBounds!==null&&Ig.graduatedBounds.push(nm),Cs(ax,nm.x,nm.y,nm.width,nm.height)}ac(qu,!1)}}},vA.prototype.arrange=function(a,y,ee){if(a.graduatedBounds!==null){var ne=a.Pb(),se=a.graduatedMarks;if(se!==null){var ue=a.graduatedBounds,me=0,Ce=ue[me];me++,ne!==null&&ne.arrange(Ce.x-ee.x,Ce.y-ee.y,Ce.width,Ce.height);for(var Fe=y.length,Ye=0;Ye=me&&(me=1);for(var Ce=ue.actualBounds,Fe=a.O.s,Ye=a.graduatedMarks,Qe=Fe.length,at=0;ata.graduatedTickUnit*mt.interval*ue.geometry.flattenedTotalLength/a.graduatedRange*me&&mt.graduatedSkip===null)){var Xt=mt.measuredBounds,bn=mt.strokeWidth*mt.scale,gn=mt.alignmentFocus;gn.Mc()&&(gn=Ih);for(var _n=0;_nme.height)continue}else if(Ye.position>me.width)continue;var Qe=Ye.separatorStrokeWidth;isNaN(Qe)&&(Qe=ee?a.defaultRowSeparatorStrokeWidth:a.defaultColumnSeparatorStrokeWidth);var at=Ye.separatorStroke;if(at===null&&(at=ee?a.defaultRowSeparatorStroke:a.defaultColumnSeparatorStroke),Qe!==0&&at!==null){Lu(a,y,at,!1,!1,me,ue),at=!1;var mt=Ye.separatorDashArray;mt===null&&(mt=ee?a.defaultRowSeparatorDashArray:a.defaultColumnSeparatorDashArray),mt!==null&&(at=!0,y.js(mt,0)),y.beginPath(),mt=Ye.position+Qe,ee?mt>me.height&&(Qe-=mt-me.height):mt>me.width&&(Qe-=mt-me.width),Ye=Ye.position+Qe/2,y.lineWidth=Qe,Qe=a.yb,ee?(Ye+=Qe.top,mt=me.width-Qe.right,y.moveTo(Qe.left,Ye),y.lineTo(mt,Ye)):(Ye+=Qe.left,mt=me.height-Qe.bottom,y.moveTo(Ye,Qe.top),y.lineTo(Ye,mt)),y.stroke(),y.Se(),at&&y.fs()}}}}function mw(a,y,ee,ne,se){for(var ue=ne.length,me=a.actualBounds,Ce=a.naturalBounds,Fe=gT(a,!0),Ye=gT(a,!1),Qe=0;Qemt)){var Lt=at.Wc(),kt=at.separatorStrokeWidth;isNaN(kt)&&(kt=ee?a.defaultRowSeparatorStrokeWidth:a.defaultColumnSeparatorStrokeWidth);var Xt=at.separatorStroke;Xt===null&&(Xt=ee?a.defaultRowSeparatorStroke:a.defaultColumnSeparatorStroke),(Xt===null||at.index===(ee?Fe:Ye))&&(kt=0),Lt-=kt,kt=at.position+kt,Lt+=at.actual,kt+Lt>mt&&(Lt=mt-kt),0>=Lt||(mt=a.yb,Lu(a,y,at.background,!0,!1,Ce,me),ee?y.fillRect(mt.left,kt+mt.top,me.width-(mt.left+mt.right),Lt):y.fillRect(kt+mt.left,mt.top,Lt,me.height-(mt.top+mt.bottom)))}}}}function gT(a,y){for(var ee=y?a.rowCount:a.columnCount,ne=0;nene&&se.set(kt),fn.free(kt)),fn.free(Qe),ue&&se.transform(me),Ye},Rt.Gj=function(){for(var a=this.O.s,y=a.length,ee=0;eeee||ue>ne)&&(this.v(),this.measure(y>ee?ee:y,ue>ne?ne:ue,0,0));break;case Si:this.v(!0),this.measure(ee+Ce,ne+me,0,0);break;case No:this.v(!0),this.measure(ee+Ce,ue+me,0,0);break;case ia:this.v(!0),this.measure(y+Ce,ne+me,0,0)}}this.na.arrange(this,se,this.jg)}},Rt.gh=function(a){var y=this.naturalBounds,ee=os(this);if(wl(0,0,y.width,y.height,a.x,a.y)){y=this.O.s;for(var ne=y.length,se=fn.allocAt(0,0);ne--;){var ue=y[ne];if((ue.visible||ue===ee)&&(Sa(se.set(a),ue.transform),ue.ca(se)))return fn.free(se),!0}return fn.free(se),!(this.Ma===null&&this.areaBackground===null)}return!1},Rt.ks=function(a){if(this.bindingId===a)return this;for(var y=this.O.s,ee=y.length,ne=0;nemt.width||at.y>mt.height||0>at.x+at.width||0>at.y+at.height||(at=Qe,Qe=Qe instanceof Mi?Qe:null,mt=Ta.alloc(),mt.set(me),(Qe!==null?Qe.Cf(a,y,ee,ne,se,mt):Sc(at,a,ne,mt))&&(y!==null&&(at=y(at)),at===null||ee!==null&&!ee(at)||se.add(at)),Ta.free(mt))}}return ue===void 0&&Ta.free(me),ne}return ue===void 0&&Ta.free(me),!1};function mA(a,y,ee,ne){for(var se=a.O.s,ue=se.length;ue--;){var me=se[ue];if(me.visible){var Ce=me.actualBounds,Fe=a.naturalBounds;Ce.x>Fe.width||Ce.y>Fe.height||0>Ce.x+Ce.width||0>Ce.y+Ce.height||(me instanceof Mi&&mA(me,y,ee,ne),y!==null&&(me=y(me)),me===null||ee!==null&&!ee(me)||ne.add(me))}}}Rt.og=function(a,y,ee,ne,se,ue){if(this.pickable===!1)return!1;ee===void 0&&(ee=null),ne===void 0&&(ne=null);var me=this.naturalBounds,Ce=this.se(),Fe=Ce?a:Sa(fn.allocAt(a.x,a.y),this.transform),Ye=Ce?y:Sa(fn.allocAt(y.x,y.y),this.transform),Qe=Fe.Bf(Ye),at=0bn.width||Xt.y>bn.height||0>Xt.x+Xt.width||0>Xt.y+Xt.height))&&(kt.se()?(Xt=kt.transform,Sa(Fe.set(a),Xt),Sa(Ye.set(y),Xt)):(Fe.set(a),Ye.set(y)),Xt=kt,kt=kt instanceof Mi?kt:null,(kt!==null?kt.og(Fe,Ye,ee,ne,se,ue):Xt.tx(Fe,Ye,se))&&(ee!==null&&(Xt=ee(Xt)),Xt===null||ne!==null&&!ne(Xt)||ue.add(Xt)))}}fn.free(Fe),fn.free(Ye)}return se?at:me}return!1};function yA(a){var y=null;return a instanceof Ra&&(y=a.spot1,y===Ds&&(y=null),a=a.geometry,a!==null&&y===null&&(y=a.spot1)),y===null&&(y=Vu),y}function xA(a){var y=null;return a instanceof Ra&&(y=a.spot2,y===Ds&&(y=null),a=a.geometry,a!==null&&y===null&&(y=a.spot2)),y===null&&(y=mc),y}Rt.add=function(a){for(var y=[],ee=0;ee=se.count&&a>=se.count)return;se.mb(ue),ne=ue}else tn("element "+y.toString()+" has panel "+ee.toString()+" but is not contained by it.")}(0>a||a>se.count)&&(a=se.count),se.Gb(a,y),(a===0||y.isPanelMain)&&(this.$g=null),bf(this)||this.v(),y.v(!1),y.portId!==null?this.Te=!0:y instanceof Mi&&y.Te===!0&&(this.Te=!0),this.graduatedIntervals=null,this.If()||SA(this,y,!1),ee=this.part,ee!==null&&(ee.Rh=null,ee.ag=NaN,this.Te&&ee instanceof qi&&(ee.Te=!0),ee.Te&&ee instanceof qi&&(ee.wc=null),se=this.diagram,se!==null&&se.undoManager.isUndoingRedoing||(ne!==-1&&ee.cb(Zi,"elements",this,y,null,ne,null),ee.cb(bi,"elements",this,null,y,null,a)))};function EA(a,y){a.l=y?a.l|16777216:a.l&-16777217}Rt.remove=function(a){for(var y=this.O.s,ee=y.length,ne=-1,se=0;sea&&tr(a,">= 0",Mi,"getRowDefinition:idx"),a=Math.round(a);var y=this.rowDefs;if(y[a]===void 0){var ee=new rc;ee.wi(this),ee.isRow=!0,ee.index=a,y[a]=ee,this.cb(bi,"rowdefs",this,null,ee,null,a)}return y[a]},Rt.oA=function(a){if(0>a&&tr(a,">= 0",Mi,"removeRowDefinition:idx"),this.rowCount!==0){a=Math.round(a);var y=this.rowDefs,ee=y[a];if(ee){y[a]=void 0;for(var ne=y.length-1;0<=ne&&y[ne--]===void 0;)y.length--;this.cb(Zi,"rowdefs",this,ee,null,a,null),this.v()}}};function yw(a,y,ee){var ne=a.rowDefs;if(!(0>y)){if(ne[y]=ee instanceof rc?ee:void 0,!ee)for(y=ne.length-1;0<=y&&ne[y--]===void 0;)ne.length--;a.v()}}Rt.Eb=function(a){0>a&&tr(a,">= 0",Mi,"getColumnDefinition:idx"),a=Math.round(a);var y=this.colDefs;if(y[a]===void 0){var ee=new rc;ee.wi(this),ee.isRow=!1,ee.index=a,y[a]=ee,this.cb(bi,"coldefs",this,null,ee,null,a)}return y[a]},Rt.jA=function(a){if(0>a&&tr(a,">= 0",Mi,"removeColumnDefinition:idx"),this.columnCount!==0){a=Math.round(a);var y=this.colDefs,ee=y[a];if(ee){y[a]=void 0;for(var ne=y.length-1;0<=ne&&y[ne--]===void 0;)y.length--;this.cb(Zi,"coldefs",this,ee,null,a,null),this.v()}}};function R2(a,y,ee){var ne=a.colDefs;if(!(0>y)){if(ne[y]=ee instanceof rc?ee:void 0,!ee)for(y=ne.length-1;0<=y&&ne[y--]===void 0;)ne.length--;a.v()}}Rt.Gy=function(a){var y=null;return a.isRow?y=this.Fb(a.index):a.isRow||(y=this.Eb(a.index)),y&&wA(y,a),this},Rt.Hy=function(a,y){return(a=this.Fb(a))&&wA(a,new rc(y)),this},Rt.By=function(a,y){return(a=this.Eb(a))&&wA(a,new rc(y)),this},Rt.nz=function(a){if(0>a||this.type!==Mi.Table||this.rowCount===0)return-1;for(var y=0,ee=this.rowDefs,ne=ee.length,se=this.topIndex;sea||this.type!==Mi.Table||this.columnCount===0)return-1;for(var y=0,ee=this.colDefs,ne=ee.length,se=this.leftIndex;sea;)this.pc(this.O.length-1,!1);Xx(this,this.itemArray)};function Xx(a,y){var ee=Yx(a);if(y===null||y.length===0)for(;a.O.length>ee;)a.pc(a.O.length-1,!1);else if(a.O.length<=ee){ee=y.length;for(var ne=0;neee)){var se=Ew(a,y);if(se=Aw(a,se),se!==null){if(hd(se),se=se.copy(),se.l&16777216){var ue=a.ih();ue!==null&&EA(ue,!0)}typeof y=="object"&&(a.ge===null&&(a.ge=new lo),a.ge.add(y,se)),ue=ee+Yx(a),a.Gb(ue,se),ne&&(se.ub=y,xw(a,ue,ee),se.ub=null),se.data=y}}}function xw(a,y,ee){for(a=a.O;ya&&tr(a,">= 0",Mi,"padding"),a=new Ro(a)):(0>a.left&&tr(a.left,">= 0",Mi,"padding:value.left"),0>a.right&&tr(a.right,">= 0",Mi,"padding:value.right"),0>a.top&&tr(a.top,">= 0",Mi,"padding:value.top"),0>a.bottom&&tr(a.bottom,">= 0",Mi,"padding:value.bottom"));var y=this.yb;y.D(a)||(this.yb=a=a.J(),this.v(),this.g("padding",y,a))}},defaultAlignment:{get:function(){return this.Tm},set:function(a){var y=this.Tm;y.D(a)||(this.Tm=a=a.J(),this.v(),this.g("defaultAlignment",y,a))}},defaultStretch:{get:function(){return this.Uf},set:function(a){var y=this.Uf;y!==a&&(this.Uf=a,this.v(),this.g("defaultStretch",y,a))}},defaultSeparatorPadding:{get:function(){return this.T!==null?this.T.Qp:Ic},set:function(a){typeof a=="number"&&(a=new Ro(a));var y=this.defaultSeparatorPadding;y.D(a)||(a=a.J(),this.T===null&&(this.T=new tf),this.T.Qp=a,this.v(),this.g("defaultSeparatorPadding",y,a))}},defaultRowSeparatorStroke:{get:function(){return this.T!==null?this.T.ia:null},set:function(a){var y=this.defaultRowSeparatorStroke;y!==a&&(a===null||typeof a=="string"||a instanceof $s)&&(a instanceof $s&&a.freeze(),this.T===null&&(this.T=new tf),this.T.ia=a,this.N(),this.g("defaultRowSeparatorStroke",y,a))}},defaultRowSeparatorStrokeWidth:{get:function(){return this.T!==null?this.T.Ha:1},set:function(a){var y=this.defaultRowSeparatorStrokeWidth;y!==a&&isFinite(a)&&0<=a&&(this.T===null&&(this.T=new tf),this.T.Ha=a,this.v(),this.g("defaultRowSeparatorStrokeWidth",y,a))}},defaultRowSeparatorDashArray:{get:function(){return this.T!==null?this.T.V:null},set:function(a){var y=this.defaultRowSeparatorDashArray;if(y!==a){if(a!==null){for(var ee=a.length,ne=0,se=0;sea)&&tn("Panel.topIndex must be greater than zero and a real number, not: "+a),this.T===null&&(this.T=new tf),this.T.Hb=a,this.v(),this.g("topIndex",y,a))}},leftIndex:{get:function(){return this.T!==null?this.T.hb:0},set:function(a){var y=this.leftIndex;y!==a&&((!isFinite(a)||0>a)&&tn("Panel.leftIndex must be greater than zero and a real number, not: "+a),this.T===null&&(this.T=new tf),this.T.hb=a,this.v(),this.g("leftIndex",y,a))}},data:{get:function(){return this.ub},set:function(a){var y=this.ub;if(y!==a){var ee=this instanceof Wo&&!(this instanceof Es);hd(this),this.ub=a;var ne=this.diagram;ne!==null&&(ee?(ee=ne.partManager,this instanceof Oi?(y!==null&&ee.bf.remove(y),a!==null&&ee.bf.add(a,this)):this instanceof Wo&&(y!==null&&ee.cf.remove(y),a!==null&&ee.cf.add(a,this))):(ee=this.panel,ee!==null&&ee.ge!==null&&(y!==null&&ee.ge.remove(y),a!==null&&ee.ge.add(a,this)))),this.g("data",y,a),ne!==null&&ne.undoManager.isUndoingRedoing||a!==null&&this.La()}}},itemIndex:{get:function(){return this.zn},set:function(a){var y=this.zn;y!==a&&(this.zn=a,this.g("itemIndex",y,a))}},allBindings:{get:function(){return this.A!==null?this.A.nb:null},set:function(a){this.localBindings!==a&&(this.A===null&&(this.A=new E1),this.A.nb=a)}},itemArray:{get:function(){return this.Hh},set:function(a){var y=this.Hh;if(y!==a||a!==null&&pT(this,a)){var ee=this.diagram;y!==a&&(ee!==null&&y!==null&&Yw(ee.partManager,this,ee),this.Hh=a,ee!==null&&a!==null&&Zw(ee.partManager,this)),this.g("itemArray",y,a),ee!==null&&ee.undoManager.isUndoingRedoing||Xx(this,a)}}},itemTemplate:{get:function(){return this.itemTemplateMap===null?null:this.itemTemplateMap.I("")},set:function(a){if(this.itemTemplateMap===null){if(a===null)return;this.itemTemplateMap=new lo}var y=this.itemTemplateMap.I("");y!==a&&((a instanceof Wo||a.isPanelMain)&&tn("Panel.itemTemplate must not be a Part or be Panel.isPanelMain: "+a),this.itemTemplateMap.add("",a),this.g("itemTemplate",y,a),a=this.diagram,a!==null&&a.undoManager.isUndoingRedoing||this.mv())}},itemTemplateMap:{get:function(){return this.A!==null?this.A.Pc:null},set:function(a){var y=this.itemTemplateMap;if(y!==a){for(var ee=a.iterator;ee.next(););Ya(this),this.A.Pc=a,this.g("itemTemplateMap",y,a),a=this.diagram,a!==null&&a.undoManager.isUndoingRedoing||this.mv()}}},itemCategoryProperty:{get:function(){return this.A!==null?this.A.Oc:"category"},set:function(a){var y=this.itemCategoryProperty;y!==a&&(Ya(this),this.A.Oc=a,this.g("itemCategoryProperty",y,a))}},isAtomic:{get:function(){return(this.l&1048576)!==0},set:function(a){var y=(this.l&1048576)!==0;y!==a&&(this.l^=1048576,this.g("isAtomic",y,a))}},isClipping:{get:function(){return(this.l&2097152)!==0},set:function(a){var y=(this.l&2097152)!==0;y!==a&&(this.l^=2097152,this instanceof ci&&(this.tb=null),this.v(),this.g("isClipping",y,a))}},isOpposite:{get:function(){return(this.l&33554432)!==0},set:function(a){var y=(this.l&33554432)!==0;y!==a&&(this.l^=33554432,this.v(),this.g("isOpposite",y,a))}},isEnabled:{get:function(){return(this.l&4194304)!==0},set:function(a){var y=(this.l&4194304)!==0;if(y!==a){var ee=this.panel===null||this.panel.If();this.l^=4194304,this.g("isEnabled",y,a),y=this.diagram,y!==null&&y.undoManager.isUndoingRedoing||ee&&SA(this,this,a)}}},alignmentFocusName:{get:function(){return this.$e},set:function(a){var y=this.$e;y!==a&&(this.$e=a,this.v(),this.g("alignmentFocusName",y,a))}}}),De.Object.defineProperties(Mi,{Position:{get:function(){return Hh.I("Position")}},Horizontal:{get:function(){return Hh.I("Horizontal")}},Vertical:{get:function(){return Hh.I("Vertical")}},Spot:{get:function(){return Hh.I("Spot")}},Auto:{get:function(){return Hh.I("Auto")}},Table:{get:function(){return Hh.I("Table")}},Viewbox:{get:function(){return Hh.I("Viewbox")}},TableRow:{get:function(){return Hh.I("TableRow")}},TableColumn:{get:function(){return Hh.I("TableColumn")}},Link:{get:function(){return Hh.I("Link")}},Grid:{get:function(){return Hh.I("Grid")}},Graduated:{get:function(){return Hh.I("Graduated")}}}),Mi.prototype.rebuildItemElements=Mi.prototype.mv,Mi.prototype.findItemPanelForData=Mi.prototype.sx,Mi.prototype.updateTargetBindings=Mi.prototype.La,Mi.prototype.copyTemplate=Mi.prototype.Uy,Mi.prototype.graduatedValueForPoint=Mi.prototype.Gz,Mi.prototype.graduatedPointForValue=Mi.prototype.Fz,Mi.prototype.findColumnForLocalX=Mi.prototype.fz,Mi.prototype.findRowForLocalY=Mi.prototype.nz,Mi.prototype.addColumnDefinition=Mi.prototype.By,Mi.prototype.addRowDefinition=Mi.prototype.Hy,Mi.prototype.addRowColumnDefinition=Mi.prototype.Gy,Mi.prototype.removeColumnDefinition=Mi.prototype.jA,Mi.prototype.getColumnDefinition=Mi.prototype.Eb,Mi.prototype.removeRowDefinition=Mi.prototype.oA,Mi.prototype.getRowDefinition=Mi.prototype.Fb,Mi.prototype.removeAt=Mi.prototype.mb,Mi.prototype.remove=Mi.prototype.remove,Mi.prototype.insertAt=Mi.prototype.Gb,Mi.prototype.elt=Mi.prototype.M,Mi.prototype.add=Mi.prototype.add,Mi.prototype.findObject=Mi.prototype.fb,Mi.prototype.findInVisualTree=Mi.prototype.Nl,Mi.prototype.walkVisualTreeFrom=Mi.prototype.qm,Mi.prototype.findMainElement=Mi.prototype.Pb;var F2=!1,Qx=null,Hh=new lo;Mi.className="Panel",Mi.definePanelLayout=fp,fp("Position",new sw),fp("Vertical",new uw),fp("Auto",new hw),fp("Link",new vw);function gp(){this.lq=0,this.F=100,this.ia=10,this.V=0,this.Zh=this.o=this.j=this.u=null}gp.prototype.copy=function(){var a=new gp;return a.lq=this.lq,a.F=this.F,a.ia=this.ia,a.V=this.V,a.u=this.u,a.j=this.j,a.o=this.o,a.Zh=this.Zh,a},gp.className="GradPanelSettings";function tf(){this.Pc=[],this.Oc=[],this.j=this.ob=PA,this.hb=this.Hb=0,this.Qp=Ic,this.Ha=1,this.V=this.ia=null,this.F=1,this.nb=this.o=this.u=null}tf.prototype.copy=function(a){for(var y=new tf,ee=this.Pc,ne=ee.length,se=y.Pc,ue=0;uea&&tr(a,">= 0",rc,"height"),this.Hc=a,this.actual=this.oa,this.panel!==null&&this.panel.v(),this.Ob("height",y,a))}},width:{get:function(){return this.Hc},set:function(a){var y=this.Hc;y!==a&&(0>a&&tr(a,">= 0",rc,"width"),this.Hc=a,this.actual=this.oa,this.panel!==null&&this.panel.v(),this.Ob("width",y,a))}},minimum:{get:function(){return this.jj},set:function(a){var y=this.jj;y!==a&&((0>a||!isFinite(a))&&tr(a,">= 0",rc,"minimum"),this.jj=a,this.actual=this.oa,this.panel!==null&&this.panel.v(),this.Ob("minimum",y,a))}},maximum:{get:function(){return this.hj},set:function(a){var y=this.hj;y!==a&&(0>a&&tr(a,">= 0",rc,"maximum"),this.hj=a,this.actual=this.oa,this.panel!==null&&this.panel.v(),this.Ob("maximum",y,a))}},alignment:{get:function(){return this.Jb},set:function(a){var y=this.Jb;y.D(a)||(this.Jb=a.J(),this.panel!==null&&this.panel.v(),this.Ob("alignment",y,a))}},stretch:{get:function(){return this.hg},set:function(a){var y=this.hg;y!==a&&(this.hg=a,this.panel!==null&&this.panel.v(),this.Ob("stretch",y,a))}},separatorPadding:{get:function(){return this.dg},set:function(a){typeof a=="number"&&(a=new Ro(a));var y=this.dg;a!==null&&y!==null&&y.D(a)||(a!==null&&(a=a.J()),this.dg=a,this.panel!==null&&this.panel.v(),this.Ob("separatorPadding",y,a))}},separatorStroke:{get:function(){return this.lo},set:function(a){var y=this.lo;y!==a&&(a!==null&&A1(a,"RowColumnDefinition.separatorStroke"),a instanceof $s&&a.freeze(),this.lo=a,this.panel!==null&&this.panel.v(),this.Ob("separatorStroke",y,a))}},separatorStrokeWidth:{get:function(){return this.mo},set:function(a){var y=this.mo;y!==a&&(this.mo=a,this.panel!==null&&this.panel.v(),this.Ob("separatorStrokeWidth",y,a))}},separatorDashArray:{get:function(){return this.tj},set:function(a){var y=this.tj;if(y!==a){if(a!==null){for(var ee=a.length,ne=0,se=0;sese)){var ue=ne.measuredBounds,me=Math.max(1,ue.width);ue=ue.height;for(var Ce=ee[0],Fe=ee[1],Ye,Qe,at,mt,Lt,kt,Xt=0,bn=gr(),gn=2;gnat&&(at=1),se=ee=at,Ye=me/2,Qe=Ye!==0,gn=0,kt=bn[gn],at=kt[0],Lt=kt[1],mt=kt[2],kt=kt[3];for(var _n=0;.1<=Xt;){if(_n===0&&(Qe?(se=ee,se-=Ye,Xt-=Ye,Qe=!1):se=ee,se===0&&(se=1)),se>Xt){Tr(bn);return}se>kt?(_n=se-kt,se=kt):_n=0;var jn=Math.sqrt(se*se/(1+mt*mt));if(0>at&&(jn=-jn),Ce+=jn,Fe+=mt*jn,a.translate(Ce,Fe),a.rotate(Lt),a.translate(-(me/2),-(ue/2)),_n===0&&ne.hh(a,y),a.translate(me/2,ue/2),a.rotate(-Lt),a.translate(-Ce,-Fe),Xt-=se,kt-=se,_n!==0){if(gn++,gn===bn.length){Tr(bn);return}kt=bn[gn],at=kt[0],Lt=kt[1],mt=kt[2],kt=kt[3],se=_n}}Tr(bn)}}Rt.hh=function(a,y){var ee=this.xc,ne=this.Ui;if(ee!==null||ne!==null){var se=this.ua;if(se!==null){a.yc();var ue=this.actualBounds,me=this.naturalBounds;ne!==null&&Lu(this,a,ne,!0,!1,me,ue);var Ce=this.part,Fe=this.ig;if(ee===null||Fe!==0||Ce===null||!this.isPanelMain&&Ce.Pb()!==this||(Fe=Ce.type===Mi.Link&&Ce instanceof Es&&Ce.category==="Selection"&&Ce.adornedObject instanceof Ra&&Ce.adornedPart.Pb()===Ce.adornedObject?Ce.adornedObject.strokeWidth:0),Fe===0&&(ee=null),ee!==null&&Fe!==0&&(Lu(this,a,ee,!1,!1,me,ue),a.lineWidth=Fe,a.lineJoin=this.strokeJoin,a.lineCap=this.strokeCap,a.miterLimit=this.strokeMiterLimit),ue=!1,Ce&&y.Gf("drawShadows")&&(ue=Ce.isShadowed),a.Il===!1&&(ue=!1),Ce=!0,ee===null||ne!==null&&ne!=="transparent"||(Ce=!1),me=!1,Fe=this.strokeDashArray,Fe!==null&&(me=!0,a.js(Fe,this.strokeDashOffset)),se.type===Ci.j)a.beginPath(),a.moveTo(se.startX,se.startY),a.lineTo(se.endX,se.endY),ee!==null&&a.jk(),a.Se();else if(se.type===Ci.u){var Ye=se.startX;Fe=se.startY;var Qe=se.endX,at=se.endY;se=Math.min(Ye,Qe);var mt=Math.min(Fe,at);Ye=Math.abs(Qe-Ye),Fe=Math.abs(at-Fe),a.beginPath(),a.rect(se,mt,Ye,Fe),ne!==null&&a.ng(ne),ee!==null&&(Ce&&ue&&zp(a),a.jk(),Ce&&ue&&d0(a)),a.Se()}else if(se.type===Ci.F)Ye=se.startX,Fe=se.startY,Qe=se.endX,at=se.endY,se=Math.abs(Qe-Ye)/2,mt=Math.abs(at-Fe)/2,Ye=Math.min(Ye,Qe)+se,Fe=Math.min(Fe,at)+mt,a.beginPath(),a.moveTo(Ye,Fe-mt),a.bezierCurveTo(Ye+cr.wg*se,Fe-mt,Ye+se,Fe-cr.wg*mt,Ye+se,Fe),a.bezierCurveTo(Ye+se,Fe+cr.wg*mt,Ye+cr.wg*se,Fe+mt,Ye,Fe+mt),a.bezierCurveTo(Ye-cr.wg*se,Fe+mt,Ye-se,Fe+cr.wg*mt,Ye-se,Fe),a.bezierCurveTo(Ye-se,Fe-cr.wg*mt,Ye-cr.wg*se,Fe-mt,Ye,Fe-mt),a.closePath(),ne!==null&&a.ng(ne),ee!==null&&(Ce&&ue&&zp(a),a.jk(),Ce&&ue&&d0(a)),a.Se();else if(se.type===Ci.o)for(se=se.figures,Fe=se.length,mt=0;mtXt.sweepAngle,Lt!==null?Lt.endX:Ye.startX,Lt!==null?Lt.endY:Ye.startY)}else if(Lt=hc(Xt,Ye),bn=Lt.length,bn===0)a.lineTo(Xt.centerX,Xt.centerY);else for(var gn=0;gn(ee.startX-ee.endX)*(a.x-ee.endX)+(ee.startY-ee.endY)*(a.y-ee.endY)||0>ne)?!1:(Pr.free(ue),cr.Yb(ee.startX,ee.startY,ee.endX,ee.endY,se,a.x,a.y));if(ee.type===Ci.u){y=ee.startX;var me=ee.startY,Ce=ee.endX;if(ee=ee.endY,ue.x=Math.min(y,Ce),ue.y=Math.min(me,ee),ue.width=Math.abs(Ce-y),ue.height=Math.abs(ee-me),this.fill===null){if(ue.Bc(-ne,-ne),ue.ca(a))return Pr.free(ue),!1;ue.Bc(ne,ne)}return this.stroke!==null&&ue.Bc(se,se),a=ue.ca(a),Pr.free(ue),a}if(ee.type===Ci.F){me=ee.startX,se=ee.startY,Ce=ee.endX;var Fe=ee.endY;if(ee=Math.min(me,Ce),y=Math.min(se,Fe),me=Math.abs(Ce-me)/2,se=Math.abs(Fe-se)/2,ee=a.x-(ee+me),y=a.y-(y+se),this.fill===null){if(me-=ne,se-=ne,0>=me||0>=se||1>=ee*ee/(me*me)+y*y/(se*se))return Pr.free(ue),!1;me+=ne,se+=ne}return this.stroke!==null&&(me+=ne,se+=ne),Pr.free(ue),0>=me||0>=se?!1:1>=ee*ee/(me*me)+y*y/(se*se)}if(ee.type===Ci.o)return Pr.free(ue),this.fill===null?Qd(ee,a.x,a.y,se):oo(ee,a,se,1=this.strokeWidth)Qe=cr.Ve(Ye.startX,Ye.startY,Ye.endX,Ye.endY,ue,me,Ce,Fe,se);else{if(Ye.startX===Ye.endX?(ne=at,Qe=0):(y=(Ye.endY-Ye.startY)/(Ye.endX-Ye.startX),Qe=at/Math.sqrt(1+y*y),ne=Qe*y),y=gr(),a=new fn,cr.Ve(Ye.startX+ne,Ye.startY+Qe,Ye.endX+ne,Ye.endY+Qe,ue,me,Ce,Fe,a)&&y.push(a),a=new fn,cr.Ve(Ye.startX-ne,Ye.startY-Qe,Ye.endX-ne,Ye.endY-Qe,ue,me,Ce,Fe,a)&&y.push(a),a=new fn,cr.Ve(Ye.startX+ne,Ye.startY+Qe,Ye.startX-ne,Ye.startY-Qe,ue,me,Ce,Fe,a)&&y.push(a),a=new fn,cr.Ve(Ye.endX+ne,Ye.endY+Qe,Ye.endX-ne,Ye.endY-Qe,ue,me,Ce,Fe,a)&&y.push(a),Ce=y.length,Ce===0)return Tr(y),!1;for(Qe=!0,Fe=1/0,ne=0;neMath.abs(ee)){if(Fe=me-Qe-ee*(ue-ne),0>a*a*ee*ee+Ye*Ye-Fe*Fe){se.x=NaN,se.y=NaN,Qe=!1;break e}at=Math.sqrt(a*a*ee*ee+Ye*Ye-Fe*Fe),Ce=(-(a*a*ee*Fe)+a*Ye*at)/(Ye*Ye+a*a*ee*ee)+ne,a=(-(a*a*ee*Fe)-a*Ye*at)/(Ye*Ye+a*a*ee*ee)+ne,Ye=ee*(Ce-ne)+Fe+Qe,Fe=ee*(a-ne)+Fe+Qe,Math.abs((ue-Ce)*(ue-Ce))+Math.abs((me-Ye)*(me-Ye))Ce){se.x=NaN,se.y=NaN,Qe=!1;break e}Fe=Math.sqrt(Ce),Ce=Qe+Fe,Fe=Qe-Fe,Math.abs(Ce-me)Math.abs(kt)?(Xt*=.5/kt,kt=.5):Xt!==0&&.5>Math.abs(Xt)&&(kt*=.5/Xt,Xt=.5),gn-=kt,_n-=Xt;Lt.contains(gn,_n);)gn-=kt,_n-=Xt;for(se.x=Ce,se.y=Fe,Xt=0;Xtee?a-ee:ee-a)<(y>ne?y-ne:ne-y)?(a=ya||cr.$(Fe.y,a))&&(Fe.yy||cr.$(Fe.x,y))&&(Fe.x=a&&ne<=y):(a=ne&&ee<=a)}Rt.tx=function(a,y,ee){function ne(bn,gn){for(var _n=bn.length,jn=0;jn<_n;jn+=2)if(gn.zd(bn[jn],bn[jn+1])>se)return!0;return!1}if(ee&&this.fill!==null&&this.gh(a,!0))return!0;var se=a.Bf(y),ue=se;if(1.5=se||Ls(y,ue,0,-at)>=se||Ls(y,ue,0,at)>=se||Ls(y,ue,Qe,0)>=se)}else if(y.type===Ci.o){if(Ye=y.bounds,ue=Ye.x,Ce=Ye.y,Fe=Ye.x+Ye.width,Ye=Ye.y+Ye.height,a.x>Fe&&a.xYe&&a.yse&&xs(a.x,a.y,ue,Ce,Fe,Ce)>se&&xs(a.x,a.y,Fe,Ye,ue,Ye)>se&&xs(a.x,a.y,Fe,Ye,Fe,Ce)>se)return!1;if(ue=Math.sqrt(se),ee){if(this.fill===null?Qd(y,a.x,a.y,ue):oo(y,a,ue,!0,!1))return!0}else{for(ee=y.figures,y=0;yse)return!1;for(Ce=ue.segments.s,Fe=Ce.length,Ye=0;Yese)return!1;break;case oc:var mt=gr();if(cr.Qe(me,Qe,at.point1X,at.point1Y,at.point2X,at.point2Y,at.endX,at.endY,.8,mt),me=ne(mt,a),Tr(mt),me||(me=at.endX,Qe=at.endY,a.zd(me,Qe)>se))return!1;break;case cn:if(mt=gr(),cr.ep(me,Qe,at.point1X,at.point1Y,at.endX,at.endY,.8,mt),me=ne(mt,a),Tr(mt),me||(me=at.endX,Qe=at.endY,a.zd(me,Qe)>se))return!1;break;case En:case Ln:mt=at.type===En?hc(at,ue):zu(at,ue,me,Qe);var Lt=mt.length;if(Lt===0){if(me=at.type===En?at.centerX:at.endX,Qe=at.type===En?at.centerY:at.endY,a.zd(me,Qe)>se)return!1;break}at=null;for(var kt=gr(),Xt=0;Xt= 0",Ra,"strokeWidth:value")}},strokeCap:{get:function(){return this.Na!==null?this.Na.Hr:"butt"},set:function(a){var y=this.strokeCap;y!==a&&(typeof a!="string"||a!=="butt"&&a!=="round"&&a!=="square"?tr(a,'"butt", "round", or "square"',Ra,"strokeCap"):(Nm(this),this.Na.Hr=a,this.N(),this.g("strokeCap",y,a)))}},strokeJoin:{get:function(){return this.Na!==null?this.Na.Ir:"miter"},set:function(a){var y=this.strokeJoin;y!==a&&(typeof a!="string"||a!=="miter"&&a!=="bevel"&&a!=="round"?tr(a,'"miter", "bevel", or "round"',Ra,"strokeJoin"):(Nm(this),this.Na.Ir=a,this.N(),this.g("strokeJoin",y,a)))}},strokeMiterLimit:{get:function(){return this.Na!==null?this.Na.Jr:10},set:function(a){var y=this.strokeMiterLimit;if(y!==a&&1<=a){Nm(this),this.Na.Jr=a,this.N();var ee=this.part;ee!==null&&(ee.ag=NaN),this.g("strokeMiterLimit",y,a)}}},strokeDashArray:{get:function(){return this.Yg},set:function(a){var y=this.Yg;if(y!==a){if(a!==null){for(var ee=a.length,ne=0,se=0;sea?a=0:1a?a=0:1(at*at+Qe*Qe)*mt*mt&&(ee=!0),y.ib!==a&&(ee=!1),y.ib instanceof ld&&(ee=!1),y.Gf("textGreeking")===!1&&(ee=!1),y=this.spacingAbove,at=this.spacingBelow,this.flip){case Ss:a.translate(se,0),a.scale(-1,1);break;case Ja:a.translate(0,ue),a.scale(1,-1);break;case ul:a.translate(se,ue),a.scale(-1,-1)}if(a.yc(),Qe=this.Gc,mt=(y+me+at)*Qe,ue>mt&&(ne=this.verticalAlignment,ne=ne.y*ue-ne.y*mt+ne.offsetY),Qe===1&&this.ze!==null)at=this.Cb,at>se&&(at=se),this.Oj(this.ze,a,0,ne+y,se,me,at,ee,Ce,Fe,Ye);else if(this.Qc!==null&&this.Qb!==null)for(mt=0;mtse&&(Lt=se),ne+=y,this.Oj(this.Qb[mt],a,0,ne,se,me,Lt,ee,Ce,Fe,Ye),ne+=me+at}switch(this.flip){case Ss:a.scale(-1,1),a.translate(-se,0);break;case Ja:a.scale(1,-1),a.translate(0,-ue);break;case ul:a.scale(-1,-1),a.translate(-se,-ue)}}},Rt.Oj=function(a,y,ee,ne,se,ue,me,Ce,Fe,Ye,Qe){var at=0;if(Ce)Fe==="left"?at=0:Fe==="right"?at=se-me:Fe==="center"&&(at=(se-me)/2),y.fillRect(ee+at,ne+.25*ue,me,1);else{if(Fe==="left"?at=0:Fe==="right"?at=se:Fe==="center"&&(at=se/2),se=eE!==null?eE(this,ue):.75*ue,y.fillText(a,ee+at,ne+se),a=ue/20|0,a===0&&(a=1),Fe==="right"?at-=me:Fe==="center"&&(at-=me/2),Ye){Ce=LA!==null?LA(this,ue):.8*ue,Fe=ee+at,Ye=ne+Ce,se=ee+at+me,Ce=ne+Ce;var mt=a;y.beginPath(),y.lineWidth=mt,y.moveTo(Fe,Ye),y.lineTo(se,Ce),y.stroke(),y.Se(),y instanceof ld&&y.ad.classList.add("gojs-td")}Qe&&(Qe=ne+ue-ue/2.2|0,a%2!==0&&(Qe+=.5),ne=ee+at,ue=Qe,ee=ee+at+me,me=Qe,at=a,y.beginPath(),y.lineWidth=at,y.moveTo(ne,ue),y.lineTo(ee,me),y.stroke(),y.Se(),y instanceof ld&&y.ad.classList.add("gojs-td"))}},Rt.kk=function(a,y,ee){if(!ar.prototype.kk.call(this,a,y,ee))return!1;if(Lu(this,a,this.xc,!0,!1,this.naturalBounds,this.actualBounds),ee){if(this.svg.getElementsByTagName("text").length===0)return!0;for(y=this.svg.getElementsByClassName("gojs-td"),ee=0;ee=this.Qb.length))){for(this.l|=16777216,Ye=this.Qb[Fe],y=Math.max(1,a-y);Xf(Ye)>y&&1a.maxLines&&(a.l|=16777216))}function $x(a,y,ee,ne){var se=a.formatting===tE;se&&(y=y.trim());var ue=0,me=a.Ae,Ce=a.spacingAbove+a.spacingBelow;Ce=Math.max(0,b1(a)+Ce);var Fe=a.overflow===TA?z2(me):0;if(a.Gc>=a.maxLines)ne!==null&&ne.h(0,Ce);else if(me=y,a.wrap===bw){a.Le=1;var Ye=Xf(y);if(Fe===0||Ye<=ee)a.Cb=Math.max(a.Cb,Ye),qx(a,y,a.Cb),ne!==null&&ne.h(Ye,Ce);else{for(ue=C1(a,me),me=me.substr(ue.length),y=C1(a,me),Ye=Xf(ue+y);0ee&&1ee;){var at=1;for(Ye=Xf(y.substr(0,at)),Qe=0;Ye<=ee;)at++,Qe=Ye,Ye=Xf(y.substr(0,at));if(at===1){var mt=Ye;ue=Math.max(ue,Ye)}else mt=Qe,ue=Math.max(ue,Qe);if(at--,1>at&&(at=1),qx(a,y.substr(0,at),mt),Fe++,y=y.substr(at),a.Gc+Fe>a.maxLines)break}for(Qe=C1(a,me),Ye=Xf(y+Qe);0a.maxLines))break}a.Le=Math.min(a.maxLines,Fe),a.Cb=Math.max(a.Cb,ue),ne!==null&&ne.h(a.Cb,Ce*a.Le)}}function C1(a,y){if(a.wrap===U2)return y.substr(0,1);for(var ee=y.length,ne=0,se=vT;ne=y.length?y:y.substr(0,ne)}function Xf(a){return kh===null?8*a.length:kh.measureText(a).width}function b1(a){if(a.df!==null)return a.df;var y=a.Ae;if(kh===null){var ee=16;return a.df=ee}return P1[y]!==void 0&&5e3>_s?ee=P1[y]:(ee=1.3*kh.measureText("M").width,P1[y]=ee,_s++),a.df=ee}function z2(a){if(kh===null)return 6;if(Sh[a]!==void 0&&5e3>Lw)var y=Sh[a];else y=kh.measureText(ps).width,Sh[a]=y,Lw++;return y}function j2(a,y){var ee=a.ec.replace(/\r\n/g,` `).replace(/\r/g,` `),ne=a.spacingAbove+a.spacingBelow;if(ne=Math.max(0,b1(a)+ne),ee.length===0)return a.Cb=0,a.Gc=1,ne;if(!a.isMultiline){var se=ee.indexOf(` `,0);0<=se&&(ee=ee.substr(0,se))}se=0;for(var ue=a.Gc=0,me,Ce=!1;!Ce;){if(me=ee.indexOf(` `,ue),me===-1&&(me=ee.length,Ce=!0),ue<=me){if(ue=ee.substr(ue,me-ue),a.wrap!==bw){a.Le=0;var Fe=Ri.alloc();$x(a,ue,y,Fe),se+=Fe.height,Ri.free(Fe),a.Gc+=a.Le}else $x(a,ue,y,null),se+=ne,a.Gc++;a.Gc===a.maxLines&&(Ce=!0)}ue=me+1}return a.Lq=se}De.Object.defineProperties(ml.prototype,{font:{get:function(){return this.Ae},set:function(a){var y=this.Ae;y!==a&&(this.Ae=a,this.df=null,this.v(),this.g("font",y,a))}},text:{get:function(){return this.ec},set:function(a){var y=this.ec;a!=null?a=a.toString():a="",y!==a&&(this.ec=a,this.v(),this.g("text",y,a),this.Uc=!0)}},textAlign:{get:function(){return this.da!==null?this.da.Or:"start"},set:function(a){var y=this.textAlign;y===a||a!=="start"&&a!=="end"&&a!=="left"&&a!=="right"&&a!=="center"||(pp(this),this.da.Or=a,this.N(),this.g("textAlign",y,a))}},flip:{get:function(){return this.da!==null?this.da.Xf:vi},set:function(a){var y=this.flip;y!==a&&(pp(this),this.da.Xf=a,this.N(),this.g("flip",y,a))}},verticalAlignment:{get:function(){return this.da!==null?this.da.Yr:Du},set:function(a){var y=this.verticalAlignment;y.D(a)||(a=a.J(),pp(this),this.da.Yr=a,sd(this),this.g("verticalAlignment",y,a))}},naturalBounds:{get:function(){if(!this.dc.w()){var a=Ri.alloc();$x(this,this.ec,999999,a);var y=a.width;Ri.free(a),a=j2(this,y);var ee=this.desiredSize;isNaN(ee.width)||(y=ee.width),isNaN(ee.height)||(a=ee.height),ou(this.dc,y,a)}return this.dc}},isMultiline:{get:function(){return(this.l&2097152)!==0},set:function(a){var y=(this.l&2097152)!==0;y!==a&&(this.l^=2097152,this.v(),this.g("isMultiline",y,a))}},isUnderline:{get:function(){return(this.l&4194304)!==0},set:function(a){var y=(this.l&4194304)!==0;y!==a&&(this.l^=4194304,this.Uc=!0,this.N(),this.g("isUnderline",y,a))}},isStrikethrough:{get:function(){return(this.l&8388608)!==0},set:function(a){var y=(this.l&8388608)!==0;y!==a&&(this.l^=8388608,this.Uc=!0,this.N(),this.g("isStrikethrough",y,a))}},wrap:{get:function(){return this.da!==null?this.da.$r:Pw},set:function(a){var y=this.wrap;y!==a&&(pp(this),this.da.$r=a,this.v(),this.g("wrap",y,a))}},overflow:{get:function(){return this.da!==null?this.da.$q:jl},set:function(a){var y=this.overflow;y!==a&&(pp(this),this.da.$q=a,this.v(),this.g("overflow",y,a))}},isOverflowed:{get:function(){return(this.l&16777216)!==0}},stroke:{get:function(){return this.xc},set:function(a){var y=this.xc;y!==a&&(a!==null&&A1(a,"TextBlock.stroke"),a instanceof $s&&a.freeze(),this.xc=a,this.N(),this.g("stroke",y,a))}},lineCount:{get:function(){return this.Gc}},lineHeight:{get:function(){return b1(this)}},editable:{get:function(){return(this.l&1048576)!==0},set:function(a){var y=(this.l&1048576)!==0;y!==a&&(this.l^=1048576,this.g("editable",y,a))}},textEditor:{get:function(){return this.da!==null?this.da.Qr:null},set:function(a){var y=this.textEditor;y!==a&&(pp(this),this.da.Qr=a,this.g("textEditor",y,a))}},errorFunction:{get:function(){return this.da!==null?this.da.Hd:null},set:function(a){var y=this.errorFunction;y!==a&&(pp(this),this.da.Hd=a,this.g("errorFunction",y,a))}},interval:{get:function(){return this.fa!==null?this.fa.Tk:1},set:function(a){var y=this.interval;if(a=Math.round(a),y!==a&&a!==0&&isFinite(a)){this.fa===null&&(this.fa=new pg),this.fa.Tk=a,this.v();var ee=this.panel;ee!==null&&(ee.graduatedIntervals=null),this.g("interval",y,a)}}},graduatedStart:{get:function(){return this.fa!==null?this.fa.u:0},set:function(a){var y=this.graduatedStart;y!==a&&(0>a?a=0:1a?a=0:1=a&&tr(a,"> 0",ml,"maxLines"),pp(this),this.da.Jq=a,this.v(),this.g("maxLines",y,a))}},metrics:{get:function(){return{arrSize:this.Qc!==null?this.Qc:[this.Cb],arrText:this.Qb!==null?this.Qb:[this.ze],maxLineWidth:this.Cb,fontHeight:this.df}}},choices:{get:function(){return this.Gm},set:function(a){var y=this.Gm;y!==a&&(this.Gm=a,this.g("choices",y,a))}}});var eE=null,LA=null,bw=new wr(ml,"None",0),W2=new wr(ml,"WrapFit",1),Pw=new wr(ml,"WrapDesiredSize",2),U2=new wr(ml,"WrapBreakAll",3),jl=new wr(ml,"OverflowClip",0),TA=new wr(ml,"OverflowEllipsis",1),tE=new wr(ml,"FormatTrim",0),Mw=new wr(ml,"FormatNone",0),vT=/[ \u200b\u00ad]/,P1=new Yi,_s=0,Sh=new Yi,Lw=0,ps="...",G2="",kh=null,nE=!1;ml.className="TextBlock";function rf(){this.nc=!1,this.Hd=null,this.Xf=vi,this.gq=tE,this.Jq=1/0,this.$q=jl,this.Er=this.Dr=0,this.Or="start",this.vj=this.Qr=this.Pr=null,this.Yr=Du,this.$r=Pw}rf.prototype.copy=function(){var a=new rf;return a.Hd=this.Hd,a.Xf=this.Xf,a.gq=this.gq,a.Jq=this.Jq,a.$q=this.$q,a.Dr=this.Dr,a.Er=this.Er,a.Or=this.Or,a.Pr=this.Pr,a.Qr=this.Qr,a.vj=this.vj,a.Yr=this.Yr,a.$r=this.$r,a},ml.getEllipsis=function(){return ps},ml.setEllipsis=function(a){ps=a,Sh=new Yi,Lw=0},ml.getBaseline=function(){return eE},ml.setBaseline=function(a){eE=a},ml.getUnderline=function(){return LA},ml.setUnderline=function(a){LA=a},ml.isValidFont=function(a){if(nE||(kh=vl?new gg(null).context:null,nE=!0),kh===null)return!0;var y=kh.font;if(a===y||a==="10px sans-serif")return!0;kh.font="10px sans-serif",kh.font=a;var ee=kh.font;if(ee!=="10px sans-serif")return kh.font=y,!0;kh.font="19px serif";var ne=kh.font;return kh.font=a,ee=kh.font,kh.font=y,ee!==ne},ml.FormatNone=Mw,ml.FormatTrim=tE,ml.None=bw,ml.OverflowClip=jl,ml.OverflowEllipsis=TA,ml.WrapBreakAll=U2,ml.WrapDesiredSize=Pw,ml.WrapFit=W2;function pg(){this.Tk=1,this.u=0,this.j=1,this.o=this.F=null}pg.prototype.copy=function(){var a=new pg;return a.Tk=this.Tk,a.u=this.u,a.j=this.j,a.F=this.F,a.o=this.o,a},pg.className="GradElementSettings";function Vh(a,y){ar.call(this),this.Eg=null,this.qo="",this.Xg=Xs,this.Nk=Si,this.Zg=this.Hd=null,this.Mk=cs,this.Xf=vi,this.vl=null,this.qn=!1,this.en=!0,this.al=!1,this.bt=this.rl=null,typeof a=="string"?this.source=a:a&&Object.assign(this,a),y&&Object.assign(this,y)}var Ay;We(Vh,ar),Vh.prototype.cloneProtected=function(a){ar.prototype.cloneProtected.call(this,a),a.qo=this.qo,a.element=this.Eg,a.Xg=this.Xg.J(),a.Nk=this.Nk,a.Xf=this.Xf,a.Hd=this.Hd,a.Zg=this.Zg,a.Mk=this.Mk.J(),a.en=this.en,a.rl=this.rl},Vh.prototype.qb=function(a){a===vi||a===wo||a===fs?this.imageStretch=a:ar.prototype.qb.call(this,a)},Vh.prototype.toString=function(){return"Picture("+this.source+")#"+fa(this)};function M1(a){a===void 0&&(a=""),a!==""?Ay[a]&&(delete Ay[a],DA--):(Ay=new Yi,DA=0)}function H2(a,y){y.qy||(y.Fq=function(ee){y.sq=!0,y.ln=!1;var ne=y.Bg.copy();if(ne!=null){for(ne=ne.iterator;ne.next();){var se=ne.value;se.N();var ue=y.getAttribute("src")||"",me=se.Og.I(ue);if(me!==null)for(var Ce=me.length,Fe=0;Fe=ne.width&&(ue=ue+kt.offsetX+(at*kt.x-ne.width*kt.x)),mt>=ne.height&&(me=me+kt.offsetY+(mt*kt.y-ne.height*kt.y)),Fe=Math.min(ne.width,at),Ce=Math.min(ne.height,mt);break;case Si:at=ne.width,mt=ne.height;break;case wo:case fs:Lt===wo?(Lt=Math.min(ne.height/mt,ne.width/at),at*=Lt,mt*=Lt):Lt===fs&&(Lt=Math.max(ne.height/mt,ne.width/at),at*=Lt,mt*=Lt,at>=ne.width&&(ue=(ue+kt.offsetX+(at*kt.x-ne.width*kt.x)/at)*Fe),mt>=ne.height&&(me=(me+kt.offsetY+(mt*kt.y-ne.height*kt.y)/mt)*Ce),Fe*=1/(at/ne.width),Ce*=1/(mt/ne.height),at=ne.width,mt=ne.height)}Lt=this.Df()*y.scale;var Xt=at*Lt*mt*Lt,bn=Fe*Ce/Xt,gn=ee.__goCache;Lt=null;var _n=mT;if(!se){if(ee.sq&&gn!==void 0&&4_n*_n)for(gn.gi===null&&(K2(gn,4,Ye,Qe,ee),K2(gn,16,Ye,Qe,ee)),se=gn.gi,Ye=se.length,Qe=0;Qea)&&(a=5),a=Math.min(a,y/3),a=Math.min(a,ee/3);var ne="rr"+y+","+ee+","+a,se=cr.Mf[ne];if(se!==void 0)return se;var ue=a*cr.wg;return se=new Ci().add(new _u(a,0,!0).add(new gs(Us,y-a,0)).add(new gs(oc,y,a,y-ue,0,y,ue)).add(new gs(Us,y,ee-a)).add(new gs(oc,y-a,ee,y,ee-ue,y-ue,ee)).add(new gs(Us,a,ee)).add(new gs(oc,0,ee-a,ue,ee,0,ee-ue)).add(new gs(Us,0,a)).add(new gs(oc,a,0,0,ue,ue,0).close())),1se.x&&a.y>se.y&&a.rightse.x&&y.y>se.y&&y.right=ee.maxSelectionCount)){this.G^=4096;var ne=!1;if(ee!==null){ne=ee.skipsUndoManager,ee.skipsUndoManager=!0;var se=ee.selection;se.ka(),a?se.add(this):se.remove(this),se.freeze()}this.g("isSelected",y,a),this.Wb(),a=this.selectionChanged,a!==null&&a(this),ee!==null&&(ee.$b(),ee.skipsUndoManager=ne)}}}},isHighlighted:{get:function(){return(this.G&524288)!==0},set:function(a){var y=(this.G&524288)!==0;if(y!==a){this.G^=524288;var ee=this.diagram;ee!==null&&(ee=ee.highlighteds,ee.ka(),a?ee.add(this):ee.remove(this),ee.freeze()),this.g("isHighlighted",y,a),this.N(),a=this.highlightedChanged,a!==null&&a(this)}}},isShadowed:{get:function(){return(this.G&8192)!==0},set:function(a){var y=(this.G&8192)!==0;y!==a&&(this.G^=8192,this.Uc=!0,this.g("isShadowed",y,a),this.N())}},isAnimated:{get:function(){return(this.G&262144)!==0},set:function(a){var y=(this.G&262144)!==0;y!==a&&(this.G^=262144,this.g("isAnimated",y,a))}},highlightedChanged:{get:function(){return this.P!==null?this.P.oq:null},set:function(a){var y=this.highlightedChanged;y!==a&&(wc(this),this.P.oq=a,this.g("highlightedChanged",y,a))}},selectionObjectName:{get:function(){return this.P!==null?this.P.vr:""},set:function(a){var y=this.selectionObjectName;y!==a&&(wc(this),this.P.vr=a,this.Ug=null,this.g("selectionObjectName",y,a))}},selectionAdornmentTemplate:{get:function(){return this.P!==null?this.P.tr:null},set:function(a){var y=this.selectionAdornmentTemplate;y!==a&&(wc(this),this.P.tr=a,this.g("selectionAdornmentTemplate",y,a))}},selectionObject:{get:function(){if(this.Ug===null){var a=this.selectionObjectName;a!==null&&a!==""?(a=this.fb(a),a!==null?this.Ug=a:this.Ug=this):this instanceof Oi?(a=this.path,a!==null?this.Ug=a:this.Ug=this):this.Ug=this}return this.Ug}},selectionChanged:{get:function(){return this.P!==null?this.P.ur:null},set:function(a){var y=this.selectionChanged;y!==a&&(wc(this),this.P.ur=a,this.g("selectionChanged",y,a))}},resizeAdornmentTemplate:{get:function(){return this.P!==null?this.P.fr:null},set:function(a){var y=this.resizeAdornmentTemplate;y!==a&&(wc(this),this.P.fr=a,this.g("resizeAdornmentTemplate",y,a))}},resizeObjectName:{get:function(){return this.P!==null?this.P.hr:""},set:function(a){var y=this.resizeObjectName;y!==a&&(wc(this),this.P.hr=a,this.g("resizeObjectName",y,a))}},resizeObject:{get:function(){var a=this.resizeObjectName;return a!==""&&(a=this.fb(a),a!==null)?a:this}},resizeCellSize:{get:function(){return this.P!==null?this.P.gr:Ks},set:function(a){var y=this.resizeCellSize;y.D(a)||(a=a.J(),wc(this),this.P.gr=a,this.g("resizeCellSize",y,a))}},rotateAdornmentTemplate:{get:function(){return this.P!==null?this.P.ir:null},set:function(a){var y=this.rotateAdornmentTemplate;y!==a&&(wc(this),this.P.ir=a,this.g("rotateAdornmentTemplate",y,a))}},rotateObjectName:{get:function(){return this.P!==null?this.P.jr:""},set:function(a){var y=this.rotateObjectName;y!==a&&(wc(this),this.P.jr=a,this.g("rotateObjectName",y,a))}},rotateObject:{get:function(){var a=this.rotateObjectName;return a!==""&&(a=this.fb(a),a!==null)?a:this}},rotationSpot:{get:function(){return this.P!==null?this.P.lr:Ds},set:function(a){var y=this.rotationSpot;y.D(a)||(a=a.J(),wc(this),this.P.lr=a,this.g("rotationSpot",y,a))}},text:{get:function(){return this.ec},set:function(a){var y=this.ec;y!==a&&(this.ec=a,this.g("text",y,a))}},containingGroup:{get:function(){return this.Ah},set:function(a){if(this.Zc()){var y=this.Ah;if(y!==a){a===null||this!==a&&!a.Td(this)||(this===a&&tn("Cannot make a Group a member of itself: "+this.toString()),tn("Cannot make a Group indirectly contain itself: "+this.toString()+" already contains "+a.toString())),this.C(2);var ee=this.diagram;if(y!==null?q0(y,this):this instanceof ci&&ee!==null&&ee.ai.remove(this),this.Ah=a,a!==null?I1(a,this):this instanceof ci&&ee!==null&&ee.ai.add(this),this.C(1),ee!==null&&ee.aa){var ne=this.data,se=ee.model;if(ne!==null&&se.Xj()){var ue=se.wa(a!==null?a.data:null);se.mp(ne,ue)}}if(ne=this.containingGroupChanged,ne!==null&&(se=!0,ee!==null&&(se=ee.aa,ee.aa=!0),ne(this,y,a),ee!==null&&(ee.aa=se)),this instanceof ci){for(ee=new Xr,Fm(ee,this,!0,0,!0),ee=ee.iterator;ee.next();)if(ne=ee.value,ne instanceof qi)for(ne=ne.linksConnected;ne.next();)O1(ne.value)}if(this instanceof qi){for(ee=this.linksConnected;ee.next();)O1(ee.value);ee=this.labeledLink,ee!==null&&O1(ee)}this.g("containingGroup",y,a),a!==null&&(y=a.layer,y!==null&&Jd(y,-1,a))}}else tn("cannot set the Part.containingGroup of a Link or Adornment")}},containingGroupChanged:{get:function(){return this.P!==null?this.P.Kp:null},set:function(a){var y=this.containingGroupChanged;y!==a&&(wc(this),this.P.Kp=a,this.g("containingGroupChanged",y,a))}},isTopLevel:{get:function(){return!(this.containingGroup!==null||this instanceof qi&&this.labeledLink!==null)}},layoutConditions:{get:function(){return this.P!==null?this.P.Cq:127},set:function(a){var y=this.layoutConditions;y!==a&&(wc(this),this.P.Cq=a,this.g("layoutConditions",y,a))}},dragComputation:{get:function(){return this.P!==null?this.P.Up:null},set:function(a){var y=this.dragComputation;y!==a&&(wc(this),this.P.Up=a,this.g("dragComputation",y,a))}},shadowOffset:{get:function(){return this.P!==null?this.P.zr:Bs},set:function(a){var y=this.shadowOffset;y.D(a)||(a=a.J(),wc(this),this.P.zr=a,this.N(),this.g("shadowOffset",y,a))}},shadowColor:{get:function(){return this.P!==null?this.P.yr:"gray"},set:function(a){var y=this.shadowColor;y!==a&&(wc(this),this.P.yr=a,this.N(),this.g("shadowColor",y,a))}},shadowBlur:{get:function(){return this.P!==null?this.P.Vg:4},set:function(a){var y=this.shadowBlur;y!==a&&(wc(this),this.P.Vg=a,this.N(),this.g("shadowBlur",y,a))}}}),Wo.prototype.invalidateLayout=Wo.prototype.C,Wo.prototype.findCommonContainingGroup=Wo.prototype.px,Wo.prototype.isMemberOf=Wo.prototype.Td,Wo.prototype.findTopLevelPart=Wo.prototype.sz,Wo.prototype.findSubGraphLevel=Wo.prototype.oz,Wo.prototype.ensureBounds=Wo.prototype.Va,Wo.prototype.getDocumentBounds=Wo.prototype.mi,Wo.prototype.findObject=Wo.prototype.fb,Wo.prototype.moveTo=Wo.prototype.moveTo,Wo.prototype.invalidateAdornments=Wo.prototype.Wb,Wo.prototype.clearAdornments=Wo.prototype.Ej,Wo.prototype.removeAdornment=Wo.prototype.Jf,Wo.prototype.addAdornment=Wo.prototype.bh,Wo.prototype.findAdornment=Wo.prototype.Pj,Wo.prototype.updateTargetBindings=Wo.prototype.La;var ET=!1;Wo.className="Part",Wo.LayoutNone=0,Wo.LayoutAdded=1,Wo.LayoutRemoved=2,Wo.LayoutShown=4,Wo.LayoutHidden=8,Wo.LayoutNodeSized=16,Wo.LayoutGroupLayout=32,Wo.LayoutNodeReplaced=64,Wo.LayoutStandard=127,Wo.LayoutAll=16777215;function Es(a,y){a===void 0||a instanceof sc||typeof a=="string"?Wo.call(this,a):(Wo.call(this),a&&(y=a)),this.G&=-257,this.Jg="Adornment",this.ue=null,this.Aw=0,this.Uw=!1,this.j=this.$a=null,y&&Object.assign(this,y)}We(Es,Wo),Es.prototype.toString=function(){var a=this.adornedPart;return"Adornment("+this.category+")"+(a!==null?a.toString():"")},Es.prototype.updateRelationshipsFromData=function(){},Es.prototype.Ul=function(a){var y=this.adornedObject,ee=y==null?void 0:y.part;if(ee instanceof Oi&&y instanceof Ra){y=ee.path,ee.Ul(a),a=y.geometry,ee=this.O.s,y=ee.length;for(var ne=0;nea&&(a=1);var y=this.diagram;if(y!==null&&!y.Ue){y.Ue=!0;var ee=new Xr;ee.add(this),Ob(this,ee,y.isTreePathToChildren,a,y,this,y.treeCollapsePolicy===Z0),y.Ue=!1}};function Ob(a,y,ee,ne,se,ue,me){if(1a&&(a=2);var y=this.diagram;if(y!==null&&!y.Ue){y.Ue=!0;var ee=new Xr;ee.add(this),zm(this,ee,y.isTreePathToChildren,a,y,this,y.treeCollapsePolicy===Z0),y.Ue=!1}};function zm(a,y,ee,ne,se,ue,me){for(var Ce=ue===a?!1:a.isTreeExpanded,Fe=ee?a.Mo():a.Sd(),Ye={};Fe.next();){var Qe=Fe.value;if(Qe.isTreeLink&&(Ce||Qe.fd||Qe.bb(),Qe=Qe.To(a),Qe!==null&&Qe!==a&&!y.contains(Qe))){if(y.add(Qe),!Ce){Qe.Zb(!0),Qe.oh();var at=ee?Qe.Oo():Qe.Po();Ye.vv=a,at.all(function(mt){return function(Lt){return Lt===mt.vv||!Lt.isTreeExpanded}}(Ye))&&se.Cj(Qe,ue)}(2se&&(se=Ce.right),Ce.bottom>ue&&(ue=Ce.bottom)}}return isFinite(ee)&&isFinite(ne)?a.h(ee,ne,se-ee,ue-ne):(y=y.location,a.h(y.x,y.y,0,0)),a},De.Object.defineProperties(Kc.prototype,{padding:{get:function(){return this.yb},set:function(a){typeof a=="number"&&(a=new Ro(a));var y=this.yb;y.D(a)||(this.yb=a=a.J(),this.g("padding",y,a),this.v())}}}),Kc.className="Placeholder";function Oi(a){Wo.call(this,Mi.Link),this.Qa=8,this.ef=null,this.ff="",this.uf=this.gn=null,this.vf="",this.uo=null,this.qk=Kh,this.Om=0,this.Qm=Kh,this.Rm=NaN,this.qj=R1,this.po=.5,this.wd=null,this.Nb=new Zr().freeze(),this.Tg=this.Mg=null,this.ml=new Pr,this.ua=new Ci,this.u=this.o=this.Sf=this.Wf=null,this.su=new fn,this.cq=this.Mw=this.Lw=null,this.vt=NaN,this.ba=null,this.j=[],a&&Object.assign(this,a)}We(Oi,Wo),Oi.prototype.cloneProtected=function(a){Wo.prototype.cloneProtected.call(this,a),a.Qa=this.Qa&-113,a.ff=this.ff,a.gn=this.gn,a.vf=this.vf,a.uo=this.uo,a.qk=this.qk,a.Om=this.Om,a.Qm=this.Qm,a.Rm=this.Rm,a.qj=this.qj,a.po=this.po,this.ba!==null&&(a.ba=this.ba.copy())},Rt=Oi.prototype,Rt.Af=function(a){Wo.prototype.Af.call(this,a),this.ff=a.ff,this.vf=a.vf,a.Mg=null,a.bb(),a.Sf=this.Sf;var y=a.fromPort;y!==null&&Sd(y),a=a.toPort,a!==null&&Sd(a)},Rt.qb=function(a){a.classType===Oi?(a.value&2)===2?this.routing=a:a===af||a===p0||a===yg?this.curve=a:a===xg||a===Um||a===Ol?this.adjusting=a:a!==R1&&a!==Kh&&tn("Unknown Link enum value for a Link property: "+a):Wo.prototype.qb.call(this,a)},Rt.Xc=function(){this.ba===null&&(this.ba=new Fx)},Rt.si=function(){var a=this.fromNode;if(a!==null){var y=a.findVisibleNode();if(y!==null&&(a=y),Su(a)||km(a))return!1}return a=this.toNode,!(a!==null&&(y=a.findVisibleNode(),y!==null&&(a=y),Su(a)||km(a)))},Rt.zv=function(){return!1},Rt.Av=function(){},Rt.Zc=function(){return!1},Oi.prototype.computeAngle=function(a,y,ee){return Oi.computeAngle(y,ee)},Oi.computeAngle=function(a,y){switch(a){default:case Kh:a=0;break;case k1:a=y;break;case sE:a=y+90;break;case lE:a=y-90;break;case _w:a=y+180;break;case F1:a=cr.bp(y),90a&&(a-=180);break;case lc:a=cr.bp(y+90),90a&&(a-=180);break;case by:a=cr.bp(y-90),90a&&(a-=180);break;case Eg:if(a=cr.bp(y),45a||225a)return 0;90a&&(a-=180)}return cr.bp(a)};function O1(a){var y=a.fromNode,ee=a.toNode,ne=null;if(y!==null?ne=ee!==null?y.px(ee):y.containingGroup:ee!==null?ne=ee.containingGroup:ne=null,y=ne,ee=a.Ah,ee!==y){ee!==null&&q0(ee,a),a.Ah=y,y!==null&&I1(y,a);var se=a.containingGroupChanged;if(se!==null){var ue=!0,me=a.diagram;me!==null&&(ue=me.aa,me.aa=!0),se(a,ee,y),me!==null&&(me.aa=ue)}!a.fd||a.Lw!==ee&&a.Mw!==ee||a.bb()}if(a.isLabeledLink)for(a=a.labelNodes;a.next();)a.value.containingGroup=ne}Rt=Oi.prototype,Rt.oh=function(){var a=this.containingGroup;a!==null&&this.fromNode!==a&&this.toNode!==a&&a.computesBoundsIncludingLinks&&Wo.prototype.oh.call(this)},Rt.To=function(a){var y=this.fromNode;return a===y?this.toNode:y},Rt.Cz=function(a){var y=this.fromPort;return a===y?this.toPort:y};function kw(a,y){a.wd===null&&(a.wd=new Xr),a.wd.add(y),a.v()}Rt.Vo=function(a){if(Wo.prototype.Vo.call(this,a),Yu(this)&&this.Xo(this.actualBounds),!a){a=this.ef;var y=null;a!==null&&(y=this.fromPort,D1(a,this,y));var ee=this.uf;if(ee!==null){var ne=this.toPort;ee===a&&ne===y||D1(ee,this,ne)}aE(this)}},Rt.Wo=function(a){if(Wo.prototype.Wo.call(this,a),Yu(this)&&this.Xo(this.actualBounds),!a){a=this.ef;var y=null;a!==null&&(y=this.fromPort,RA(a,this,y));var ee=this.uf;if(ee!==null){var ne=this.toPort;ee===a&&ne===y||RA(ee,this,ne)}zA(this)}},Rt.Lj=function(){if(this.fd=!0,this.wd!==null){var a=this.diagram;if(a!==null)for(var y=this.wd.copy().iterator;y.next();)a.remove(y.value)}this.data!==null&&(a=this.diagram,a!==null&&a.partManager.removeDataForLink(this))},Oi.prototype.updateRelationshipsFromData=function(){if(this.data!==null){var a=this.diagram;a!==null&&a.partManager.updateRelationshipsFromData(this)}},Oi.prototype.move=function(a,y){var ee=y?this.location:this.position,ne=ee.x;isNaN(ne)&&(ne=0);var se=ee.y;for(isNaN(se)&&(se=0),ne=a.x-ne,se=a.y-se,y===!0?Wo.prototype.move.call(this,a,!1):(a=fn.allocAt(ee.x+ne,ee.y+se),Wo.prototype.move.call(this,a,!1),fn.free(a)),Up(this,ne,se),a=this.labelNodes;a.next();)y=a.value,ee=y.position,y.moveTo(ee.x+ne,ee.y+se)},Oi.prototype.canRelinkFrom=function(){if(!this.relinkableFrom)return!1;var a=this.layer;return a===null?!0:a.allowRelink?(a=a.diagram,!!(a===null||a.allowRelink)):!1},Oi.prototype.canRelinkTo=function(){if(!this.relinkableTo)return!1;var a=this.layer;return a===null?!0:a.allowRelink?(a=a.diagram,!!(a===null||a.allowRelink)):!1},Oi.prototype.computeMidPoint=function(a){var y=this.pointsCount;if(y===0)return a.assign(Vs),a;if(y===1)return a.assign(this.i(0)),a;if(y===2){var ee=this.i(0),ne=this.i(1);return a.h((ee.x+ne.x)/2,(ee.y+ne.y)/2),a}if(this.isOrthogonal&&(15<=this.computeCorner()||this.computeCurve()===af))return this.ua.Pu(.5,a),a.add(this.i(0)),ee=this.ua.figures.first(),a.offset(-ee.startX,-ee.startY),a;if(this.computeCurve()===af){if(y===3){ee=this.i(0),ne=this.i(1);var se=this.i(2);return cr.ax(ee.x,ee.y,ne.x,ne.y,ne.x,ne.y,se.x,se.y,a),a}if(ne=(y-1)/3|0,ee=3*(ne/2|0),ne%2===1){ne=this.i(ee),se=this.i(ee+1);var ue=this.i(ee+2);ee=this.i(ee+3),cr.ax(ne.x,ne.y,se.x,se.y,ue.x,ue.y,ee.x,ee.y,a)}else a.assign(this.i(ee));return a}var me=this.flattenedLengths;for(ee=this.flattenedTotalLength,se=ue=ne=0;neee/2));)ne+=se,ue++;return y=this.i(ue),ue=this.i(ue+1),1>Math.abs(y.x-ue.x)?y.y>ue.y?a.h(y.x,y.y-(ee/2-ne)):a.h(y.x,y.y+(ee/2-ne)):1>Math.abs(y.y-ue.y)?y.x>ue.x?a.h(y.x-(ee/2-ne),y.y):a.h(y.x+(ee/2-ne),y.y):(ee=(ee/2-ne)/se,a.h(y.x+ee*(ue.x-y.x),y.y+ee*(ue.y-y.y))),a},Oi.prototype.computeMidAngle=function(){var a=this.pointsCount;if(2>a)return NaN;if(a===2)return this.i(0).ab(this.i(1));if(this.isOrthogonal&&(15<=this.computeCorner()||this.computeCurve()===af))return this.ua.wx(.5);if(this.computeCurve()===af&&4<=a){var y=(a-1)/3|0,ee=3*(y/2|0);if(y%2===1){ee=Math.floor(ee),a=this.i(ee),y=this.i(ee+1);var ne=this.i(ee+2);return ee=this.i(ee+3),cr.My(a.x,a.y,y.x,y.y,ne.x,ne.y,ee.x,ee.y)}if(0ne/2));)se+=ue,ee++;if(y=this.i(ee),ne=this.i(ee+1),1>Math.abs(y.x-ne.x)&&1>Math.abs(y.y-ne.y)){if(0Math.abs(y.x-ne.x))return y.y>ne.y?270:90;if(1>Math.abs(y.y-ne.y))return y.x>ne.x?180:0}return y.ab(ne)},Rt=Oi.prototype,Rt.i=function(a){return this.Nb.s[a]},Rt.dd=function(a,y){this.Nb.cd(a,y)},Rt.L=function(a,y,ee){this.Nb.cd(a,new fn(y,ee))},Rt.Kz=function(a,y){this.Nb.Gb(a,y)},Rt.m=function(a,y,ee){this.Nb.Gb(a,new fn(y,ee))},Rt.ne=function(a){this.Nb.add(a)},Rt.yf=function(a,y){this.Nb.add(new fn(a,y))},Rt.pv=function(a){this.Nb.mb(a)},Rt.Fj=function(){this.Nb.clear()};function Up(a,y,ee){if(y!==0||ee!==0)if(a.pointsCount===0)a.defaultFromPoint&&a.defaultFromPoint.offset(y,ee),a.defaultToPoint&&a.defaultToPoint.offset(y,ee);else{for(var ne=a.fd,se=new Zr,ue=a.Nb.iterator;ue.next();){var me=ue.value;se.add(new fn(me.x+y,me.y+ee).freeze())}se.freeze(),ue=a.Nb,a.Nb=se,me=a.diagram,isNaN(y)||isNaN(ee)||me!==null&&me.animationManager.zb?a.v():(a.ke.h(a.ke.x+y,a.ke.y+ee),a.pa.h(a.pa.x+y,a.pa.y+ee),sd(a)),ne?Cc(a):(a.defaultFromPoint&&(a.defaultFromPoint=a.i(0)),a.defaultToPoint&&(a.defaultToPoint=a.i(a.pointsCount-1))),me!==null&&me.animationManager.zb&&Eo(me.animationManager,a,se),a.g("points",ue,se)}}Rt.uh=function(){this.Mg===null&&(this.Mg=this.Nb,this.Nb=this.Nb.copy())},Rt.zf=function(){if(this.Mg!==null){for(var a=this.Mg,y=this.Nb,ee=1/0,ne=1/0,se=a.s,ue=se.length,me=0;meYe&&(at=-at),Xt=(0>Fe?-1:1)*at+Lt,bn=Qe*(Xt-Lt)+kt),Lt=ue.x+2*Ce/3,kt=ue.y+2*Fe/3;var gn=Lt,_n=kt;cr.B(Fe,0)?_n=0Fe?-1:1)*at+Lt,_n=Qe*(gn-Lt)+kt),this.Fj(),this.ne(ue),this.yf(Xt,bn),this.yf(gn,_n),this.ne(mt),this.dd(0,this.getLinkPoint(a,y,me,!0,!1,ne,se)),this.dd(3,this.getLinkPoint(ne,se,ee,!1,!1,a,y))}else ue=ne,mt=se,ne=this.getLinkPoint(a,y,me,!0,!1,ue,mt),se=this.getLinkPoint(ue,mt,ee,!1,!1,a,y),this.hasCurviness()?(mt=se.x-ne.x,ee=se.y-ne.y,me=this.computeCurviness(),a=ne.x+mt/2,y=ne.y+ee/2,ue=a,Ce=y,cr.B(ee,0)?Ce=0me&&(ue=-ue),ue=(0>ee?-1:1)*ue+a,Ce=mt*(ue-a)+y),this.ne(ne),this.yf(ue,Ce),this.ne(se)):(this.ne(ne),this.ne(se),Ce=Pr.alloc(),y.mi(Ce),Fe=Ce.ca(se),mt.mi(Ce),Ye=Ce.ca(ne),(Fe||Ye)&&(me=y.ga(wd(me),new fn),this.dd(0,this.getLinkPointFromPoint(a,y,me,se,!0,me)),ee=mt.ga(wd(ee),new fn),this.dd(1,this.getLinkPointFromPoint(ue,mt,ee,ne,!1,ee))),Pr.free(Ce))}else{at=this.isAvoiding,mt&&(Qe&&at||Ye)&&this.Fj();var jn=Ye?this.computeCurviness():0;at=this.getLinkPoint(a,y,me,!0,Qe,ne,se),Lt=Xt=kt=0,(Qe||!Ce||Ye)&&(bn=this.computeEndSegmentLength(a,y,me,!0),Lt=this.getLinkDirection(a,y,at,me,!0,Qe,ne,se),Ye&&(Ce||me.D(ee)||!Qe&&me.x+ee.x===1&&me.y+ee.y===1)&&(Lt-=Qe?90:30,0>jn&&(Lt-=180)),0>Lt?Lt+=360:360<=Lt&&(Lt-=360),Ye&&(bn+=Math.abs(jn)*(Qe?1:2)),Lt===0?kt=bn:Lt===90?Xt=bn:Lt===180?kt=-bn:Lt===270?Xt=-bn:(kt=bn*Math.cos(Lt*Math.PI/180),Xt=bn*Math.sin(Lt*Math.PI/180)),me.Mc()&&Ye&&(bn=y.ga(cs,fn.alloc()),gn=fn.allocAt(bn.x+1e3*kt,bn.y+1e3*Xt),this.getLinkPointFromPoint(a,y,bn,gn,!0,at),fn.free(bn),fn.free(gn))),bn=this.getLinkPoint(ne,se,ee,!1,Qe,a,y);var Yn=_n=gn=0;if(Qe||!Fe||Ye){var nr=this.computeEndSegmentLength(ne,se,ee,!1);Yn=this.getLinkDirection(ne,se,bn,ee,!1,Qe,a,y),Ye&&(Fe||me.D(ee)||!Qe&&me.x+ee.x===1&&me.y+ee.y===1)&&(Yn+=Qe?0:30,0>jn&&(Yn+=180)),0>Yn?Yn+=360:360<=Yn&&(Yn-=360),Ye&&(nr+=Math.abs(jn)*(Qe?1:2)),Yn===0?gn=nr:Yn===90?_n=nr:Yn===180?gn=-nr:Yn===270?_n=-nr:(gn=nr*Math.cos(Yn*Math.PI/180),_n=nr*Math.sin(Yn*Math.PI/180)),ee.Mc()&&Ye&&(ee=se.ga(cs,fn.alloc()),me=fn.allocAt(ee.x+1e3*gn,ee.y+1e3*_n),this.getLinkPointFromPoint(ne,se,ee,me,!1,bn),fn.free(ee),fn.free(me))}ee=at,(Qe||!Ce||Ye)&&(ee=new fn(at.x+kt,at.y+Xt)),me=bn,(Qe||!Fe||Ye)&&(me=new fn(bn.x+gn,bn.y+_n)),!mt&&!Qe&&Ce&&3Math.abs(y.y-a.y)?(y.x>=a.x?y.x=a.x+9e9:y.x=a.x-9e9,y.y=a.y):(y.y>=a.y?y.y=a.y+9e9:y.y=a.y-9e9,y.x=a.x),y}Oi.prototype.getLinkPointFromPoint=function(a,y,ee,ne,se,ue){if(ue===void 0&&(ue=new fn),a===null||y===null)return ue.assign(ee),ue;if(a.isVisible()||(se=a.findVisibleNode(),se!==null&&se!==a&&(y=se.port)),a=null,se=y.panel,se===null||se.se()||(se=se.panel),se===null){se=ne.x,ne=ne.y;var me=ee.x;ee=ee.y}else{a=se.oe,se=1/(a.m11*a.m22-a.m12*a.m21),me=a.m22*se;var Ce=-a.m12*se,Fe=-a.m21*se,Ye=a.m11*se,Qe=se*(a.m21*a.dy-a.m22*a.dx),at=se*(a.m12*a.dx-a.m11*a.dy);se=ne.x*me+ne.y*Fe+Qe,ne=ne.x*Ce+ne.y*Ye+at,me=ee.x*me+ee.y*Fe+Qe,ee=ee.x*Ce+ee.y*Ye+at}return y.Sj(se,ne,me,ee,ue),a!==null&&ue.transform(a),ue};function Bv(a,y){var ee=y.Zn;return ee===null&&(ee=new Ly,ee.port=y,ee.node=y.part,y.Zn=ee),Rb(ee,a)}Oi.prototype.getLinkPoint=function(a,y,ee,ne,se,ue,me,Ce){if(Ce===void 0&&(Ce=new fn),ee.sb()&&!N1(ee))return y.ga(ee,Ce),Ce;if(ee.$c()){var Fe=Bv(this,y);if(Fe!==null){if(Ce.assign(Fe.Zo),se&&this.routing===jA){var Ye=Bv(this,me);if(Ye!==null&&Fe.Gl=Qe.y&&a.y<=Qe.y+Qe.height?Ce.y=a.y:(ee.Hf(vh)||ee.Hf(th))&&a.x>=Qe.x&&a.x<=Qe.x+Qe.width&&(Ce.x=a.x),fn.free(Fe),fn.free(Ye)}}return Ce}}return ee=y.ga(wd(ee),fn.alloc()),this.pointsCount>(se?6:2)?(me=ne?this.i(1):this.i(this.pointsCount-2),se&&(me=Fw(ee,me.copy()))):(Fe=this.computeSpot(!ne,me),ue=fn.alloc(),me=me.ga(wd(Fe),ue),se&&(me=Fw(ee,me)),fn.free(ue)),this.getLinkPointFromPoint(a,y,ee,me,ne,Ce),fn.free(ee),Ce},Oi.prototype.getLinkDirection=function(a,y,ee,ne,se,ue,me,Ce){e:if(ne.sb())var Fe=ne.x>ne.y?ne.x>1-ne.y?0:ne.x<1-ne.y?270:315:ne.x1-ne.y?90:ne.x<1-ne.y?180:135:.5>ne.x?225:.5(ue?6:2)?(Ce=se?this.i(1):this.i(this.pointsCount-2),Ce=ue?Fw(Fe,Ce.copy()):ee):(ee=fn.alloc(),Ce=Ce.ga(cs,ee),fn.free(ee)),ee=Math.abs(Ce.x-Fe.x)>Math.abs(Ce.y-Fe.y)?Ce.x>=Fe.x?0:180:Ce.y>=Fe.y?90:270,fn.free(Fe),Fe=ee}return ne.Mc()&&me.Td(a)&&(Fe+=180,360<=Fe&&(Fe-=360)),N1(ne)||(a=y.li(),a===0)||(45<=a&&135>a?Fe+=90:135<=a&&225>a?Fe+=180:225<=a&&315>a&&(Fe+=270),360<=Fe&&(Fe-=360)),Fe},Oi.prototype.computeEndSegmentLength=function(a,y,ee,ne){return y!==null&&ee.$c()&&(a=Bv(this,y),a!==null)?a.Ju:(a=ne?this.fromEndSegmentLength:this.toEndSegmentLength,y!==null&&isNaN(a)&&(a=ne?y.fromEndSegmentLength:y.toEndSegmentLength),isNaN(a)&&(a=10),a)},Oi.prototype.computeSpot=function(a,y){return y===void 0&&(y=null),a?(a=y||this.fromPort,a===null?a=cs:(y=this.fromSpot,y.Xb()&&(y=a.fromSpot),a=y===Ds?su:y)):(a=y||this.toPort,a===null?a=cs:(y=this.toSpot,y.Xb()&&(y=a.toSpot),a=y===Ds?su:y)),a};function N1(a){return a===su||a.x===.5&&a.y===.5}function wd(a){return a.x===.5&&a.y===.5?a:cs}Oi.prototype.computeOtherPoint=function(a,y){return this.computeAdjusting()!==Kh&&4mt.width||at.y>mt.height||0>at.x+at.width||0>at.y+at.height)){if(at=Ta.alloc(),at.set(me),Qe instanceof Mi)Ce=Qe.Cf(a,y,ee,ne,se,at);else if(this.path===Qe){if(Qe instanceof Ra)if(Ce=a,mt=ne,Qe.pickable===!1)Ce=!1;else if(at.multiply(Qe.transform),mt)e:{var Lt=Ce,kt=at;if(Qe.fh(Lt,kt))Ce=!0;else{if(kt===void 0&&(kt=Qe.transform,Lt.Re(Qe.actualBounds))){Ce=!0;break e}Ce=Lt.left,mt=Lt.right;var Xt=Lt.top;Lt=Lt.bottom;var bn=fn.alloc(),gn=fn.alloc(),_n=fn.alloc(),jn=Ta.alloc();jn.set(kt),jn.bv(Qe.transform),jn.Vj(),gn.x=mt,gn.y=Xt,gn.transform(jn),bn.x=Ce,bn.y=Xt,bn.transform(jn),kt=!1,jp(Qe,bn,gn,_n)?kt=!0:(bn.x=mt,bn.y=Lt,bn.transform(jn),jp(Qe,bn,gn,_n)?kt=!0:(gn.x=Ce,gn.y=Lt,gn.transform(jn),jp(Qe,bn,gn,_n)?kt=!0:(bn.x=Ce,bn.y=Xt,bn.transform(jn),jp(Qe,bn,gn,_n)&&(kt=!0)))),Ta.free(jn),fn.free(bn),fn.free(gn),fn.free(_n),Ce=kt}}else Ce=Qe.fh(Ce,at)}else Ce=Sc(Qe,a,ne,at);Ce&&(mt=Qe,y!==null&&(mt=y(Qe)),mt&&(ee===null||ee(mt))&&se.add(mt)),Ta.free(at)}}}return ue===void 0&&Ta.free(me),Ce||this.background!==null||this.areaBackground!==null}return ue===void 0&&Ta.free(me),!1},Oi.prototype.computeCurve=function(){if(this.Wf===null){var a=this.fromPort,y=this.isOrthogonal;this.Wf=a!==null&&a===this.toPort&&!y}return this.Wf?af:this.curve},Oi.prototype.computeCorner=function(){if(this.curve===af)return 0;var a=this.corner;return(isNaN(a)||0>a)&&(a=10),a},Oi.prototype.findMidLabel=function(){for(var a=this.path,y=this.O.s,ee=y.length,ne=0;neFe?-Math.PI/2:Math.PI/2;else Qe=Math.atan(Fe/Math.abs(Ce)),0>Ce&&(Qe=Math.PI-Qe);me=y.x;var at=y.y;Ce=ne.x-me;var mt=ne.y-at;for(Fe=Math.sqrt(Ce*Ce+mt*mt),cr.$(Ce,0)?mt=0>mt?-Math.PI/2:Math.PI/2:(mt=Math.atan(mt/Math.abs(Ce)),0>Ce&&(mt=Math.PI-mt)),Ye=Fe/Ye,Qe=mt-Qe,this.dd(a,y),a+=1;aFe?-Math.PI/2:Math.PI/2:(Fe=Math.atan(Fe/Math.abs(Ce)),0>Ce&&(Fe=Math.PI-Fe)),Ce=Fe+Qe,y*=Ye,this.L(a,me+y*Math.cos(Ce),at+y*Math.sin(Ce)));this.dd(ee,ne)}}return!0;case Ol:if(ue=this.i(a),at=this.i(ee),!ue.Xa(y)||!at.Xa(ne)){se=ue.x,ue=ue.y,me=at.x,at=at.y,Ye=(me-se)*(me-se)+(at-ue)*(at-ue),Ce=y.x,Qe=y.y,Fe=ne.x,mt=ne.y;var Lt=1;if(Fe-Ce!==0){var kt=(mt-Qe)/(Fe-Ce);Lt=Math.sqrt(1+1/(kt*kt))}else kt=9e9;for(this.dd(a,y),a+=1;ay?y+=360:360<=y&&(y-=360),0>ne?ne+=360:360<=ne&&(ne-=360);var me=ne;y=315<=y||45>y?0:45<=y&&135>y?90:135<=y&&225>y?180:270,ne=315<=ne||45>ne?0:45<=ne&&135>ne?90:135<=ne&&225>ne?180:270;var Ce=se.actualBounds.copy(),Fe=ue.actualBounds.copy();if(Ce.w()&&Fe.w()){Ce.Bc(_1,_1),Fe.Bc(_1,_1),Ce.Ye(a),Fe.Ye(ee);var Ye=fn.alloc(),Qe=fn.alloc();y===0?ee.x>a.x||ne===270&&ee.ya.x||ne===90&&ee.y>a.y&&Fe.right>a.x?(Ye.h(ee.x,a.y),Qe.h(ee.x,(a.y+ee.y)/2),ne===180?(Ye.x=this.computeMidOrthoPosition(a.x,a.y,ee.x,ee.y,!1),Qe.x=Ye.x,Qe.y=ee.y):ne===270&&ee.ya.y?(Ye.x=a.xFe.bottom)?this.computeMidOrthoPosition(a.x,a.y,ee.x,ee.y,!1):Fe.right,Qe.x=Ye.x,Qe.y=ee.y):ne===0&&a.xFe.top&&a.yCe.bottom)&&(ne===180&&(Fe.ca(a)||Ce.ca(ee))?Ye.y=this.computeMidOrthoPosition(a.x,a.y,ee.x,ee.y,!0):ee.ya.y&&(ne===180||ne===270)&&(Ye.y=this.computeMidOrthoPosition(a.x,Ce.bottom,ee.x,Math.min(ee.y,Fe.top),!0)),Qe.x=ee.x,Qe.y=Ye.y),Ye.y>Ce.top&&Ye.y=Ce.left&&ee.x<=a.x||a.x<=Fe.right&&a.x>=ee.x?(ne===90||ne===270)&&(Ye.h(Math.max((a.x+ee.x)/2,a.x),a.y),Qe.h(Ye.x,ee.y)):(Ye.y=ne===270||(ne===0||ne===180)&&ee.ya.y&&Fe.lefta.y?(Ye.x=a.x>Fe.right?this.computeMidOrthoPosition(a.x,a.y,Fe.right,ee.y,!1):a.x>Fe.left&&(ne===270&&a.yFe.bottom)?this.computeMidOrthoPosition(a.x,a.y,ee.x,ee.y,!1):Fe.left,Qe.x=Ye.x,Qe.y=ee.y):ne===180&&a.x>Fe.right&&a.y>Fe.top&&a.yCe.bottom)&&(ne===0&&(Fe.ca(a)||Ce.ca(ee))?Ye.y=this.computeMidOrthoPosition(a.x,a.y,ee.x,ee.y,!0):ee.ya.y&&(ne===0||ne===270)&&(Ye.y=this.computeMidOrthoPosition(a.x,Ce.bottom,ee.x,Math.min(ee.y,Fe.top),!0)),Qe.x=ee.x,Qe.y=Ye.y),Ye.y>Ce.top&&Ye.y=a.x||a.x>=Fe.left&&a.x<=ee.x?(ne===90||ne===270)&&(Ye.h(Math.min((a.x+ee.x)/2,a.x),a.y),Qe.h(Ye.x,ee.y)):(Ye.y=ne===270||(ne===0||ne===180)&&ee.ya.y||ne===180&&ee.xa.y||ne===0&&ee.x>a.x&&Fe.bottom>a.y?(Ye.h(a.x,ee.y),Qe.h((a.x+ee.x)/2,ee.y),ne===270?(Ye.y=this.computeMidOrthoPosition(a.x,a.y,ee.x,ee.y,!0),Qe.x=ee.x,Qe.y=Ye.y):ne===180&&ee.xa.x?(Ye.y=a.yFe.right)?this.computeMidOrthoPosition(a.x,a.y,ee.x,ee.y,!0):Fe.bottom,Qe.x=ee.x,Qe.y=Ye.y):ne===90&&a.yFe.left&&a.xCe.right)&&(ne===270&&(Fe.ca(a)||Ce.ca(ee))?Ye.x=this.computeMidOrthoPosition(a.x,a.y,ee.x,ee.y,!1):ee.xa.x&&(ne===270||ne===180)&&(Ye.x=this.computeMidOrthoPosition(Ce.right,a.y,Math.min(ee.x,Fe.left),ee.y,!1)),Qe.x=Ye.x,Qe.y=ee.y),Ye.x>Ce.left&&Ye.x=Ce.top&&ee.y<=a.y||a.y<=Fe.bottom&&a.y>=ee.y?(ne===0||ne===180)&&(Ye.h(a.x,Math.max((a.y+ee.y)/2,a.y)),Qe.h(ee.x,Ye.y)):(Ye.x=ne===180||(ne===90||ne===270)&&ee.xa.x&&Fe.top=a.x?(Ye.y=a.y>Fe.bottom?this.computeMidOrthoPosition(a.x,a.y,ee.x,Fe.bottom,!0):a.y>Fe.top&&(ne===180&&a.xFe.right)?this.computeMidOrthoPosition(a.x,a.y,ee.x,ee.y,!0):Fe.top,Qe.x=ee.x,Qe.y=Ye.y):ne===270&&a.y>Fe.bottom&&a.x>Fe.left&&a.xCe.right)&&(ne===90&&(Fe.ca(a)||Ce.ca(ee))?Ye.x=this.computeMidOrthoPosition(a.x,a.y,ee.x,ee.y,!1):ee.xa.x&&(ne===90||ne===180)&&(Ye.x=this.computeMidOrthoPosition(Ce.right,a.y,Math.min(ee.x,Fe.left),ee.y,!1)),Qe.x=Ye.x,Qe.y=ee.y),Ye.x>Ce.left&&Ye.x=a.y||a.y>=Fe.top&&a.y<=ee.y?(ne===0||ne===180)&&(Ye.h(a.x,Math.min((a.y+ee.y)/2,a.y)),Qe.h(ee.x,Ye.y)):(Ye.x=ne===180||(ne===90||ne===270)&&ee.x=z1&&(UA(Lt),Ce.Bc(Lt.Ho*Lt.Hx,Lt.Go*Lt.Ix),uE(Lt,a,y,at,ne,Ce,!1),Fe=Na(Lt,at.x,at.y)),!Lt.abort&&Fethis.pointsCount?(y===0||y===180?(Ce.x=a.x,Ce.y=at.y):(Ce.x=at.x,Ce.y=a.y),this.L(2,Ce.x,Ce.y),this.m(3,Ce.x,Ce.y)):(me=this.i(3),y===0||y===180?cr.B(Ce.x,me.x)?(Ce=y===0?Math.max(Ce.x,a.x):Math.min(Ce.x,a.x),this.L(2,Ce,a.y),this.L(3,Ce,me.y)):cr.B(Ce.y,me.y)?(Math.abs(a.y-Ce.y)<=Lt.Go/2&&(this.L(2,Ce.x,a.y),this.L(3,me.x,a.y)),this.m(2,Ce.x,a.y)):this.L(2,a.x,Ce.y):(y===90||y===270)&&(cr.B(Ce.y,me.y)?(Ce=y===90?Math.max(Ce.y,a.y):Math.min(Ce.y,a.y),this.L(2,a.x,Ce),this.L(3,me.x,Ce)):cr.B(Ce.x,me.x)?(Math.abs(a.x-Ce.x)<=Lt.Ho/2&&(this.L(2,a.x,Ce.y),this.L(3,a.x,me.y)),this.m(2,a.x,Ce.y)):this.L(2,Ce.x,a.y))),ee!==null&&(a=this.i(1),me=this.i(2),a.x!==me.x&&a.y!==me.y?y===0||y===180?this.m(2,a.x,me.y):this.m(2,me.x,a.y):y===0||y===180?this.m(2,se.x,ee.y):this.m(2,ee.x,se.y)),kt!==null&&(ne===0||ne===180?this.yf(ue.x,kt.y):this.yf(kt.x,ue.y)),y=!0):y=!1}}}else y=!1;y||(this.ne(Ye.copy()),this.ne(Qe.copy())),fn.free(Ye),fn.free(Qe)}},Oi.prototype.computeMidOrthoPosition=function(a,y,ee,ne,se){var ue=0;return!this.hasCurviness()||this.computeSpot(!0,this.fromPort).$c()||this.computeSpot(!1,this.toPort).$c()||(ue=this.computeCurviness()),se?(y+ne)/2+ue:(a+ee)/2+ue};function jm(a){if(a.diagram===null||!a.isAvoiding||!is(a.diagram))return!1;var y=a.points.s,ee=y.length;if(4>ee)return!1;a=uu(a.diagram,!0,a.containingGroup,null);for(var ne=1;neMf&&Na(y,Qe,at)!==Ye-1&&(Na(y,ee-Ce,ne)===Ye-1?(se=180,Qe=ee-Ce,at=ne):Na(y,ee+Ce,ne)===Ye-1?(se=0,Qe=ee+Ce,at=ne):Na(y,ee,ne-Fe)===Ye-1?(se=270,Qe=ee,at=ne-Fe):Na(y,ee,ne+Fe)===Ye-1&&(se=90,Qe=ee,at=ne+Fe));Ye>Mf&&Na(y,Qe,at)===Ye-1;)ee=Qe,ne=at,se===0?Qe+=Ce:se===90?at+=Fe:se===180?Qe-=Ce:at-=Fe,--Ye;ue?Ye>Mf&&(se===180||se===0?ee=Math.floor(ee/Ce)*Ce+Ce/2:(se===90||se===270)&&(ne=Math.floor(ne/Fe)*Fe+Fe/2)):(ee=Math.floor(ee/Ce)*Ce+Ce/2,ne=Math.floor(ne/Fe)*Fe+Fe/2),Ye>Mf&&(ue=se,me=ee,Qe=ne,se===0?(ue=90,Qe+=Fe):se===90?(ue=180,me-=Ce):se===180?(ue=270,Qe-=Fe):se===270&&(ue=0,me+=Ce),Na(y,me,Qe)===Ye-1?dc(a,y,me,Qe,ue,!1,ue):(me=ee,Qe=ne,se===0?(ue=270,Qe-=Fe):se===90?(ue=0,me+=Ce):se===180?(ue=90,Qe+=Fe):se===270&&(ue=180,me-=Ce),Na(y,me,Qe)===Ye-1&&dc(a,y,me,Qe,ue,!1,ue))),a.yf(ee,ne)}Oi.prototype.ez=function(a){var y=a.x;a=a.y;for(var ee=this.i(0),ne=this.i(1),se=xs(y,a,ee.x,ee.y,ne.x,ne.y),ue=0,me=1;methis.pointsCount?this.lk=!0:this.ua=this.makeGeometry(),a=this.path,a!==null)){a.ua=this.ua;for(var y=this.O.s,ee=y.length,ne=0;ne=y&&(ne=y-1),Fe=this.i(ne),ue.x=Math.min(Fe.x,ue.x),ue.y=Math.min(Fe.y,ue.y);ne=ue.x,Fe=ue.y}else{for(Fe=0;Febn?kt>Lt?(ue.x=gn-jn,ue.y=Lt-jn,se.x=gn+Xt,se.y=Lt+Xt):(ue.x=gn-jn,ue.y=Lt+jn,se.x=gn+Xt,se.y=Lt-Xt):kt>Lt?(ue.x=gn+jn,ue.y=Lt-jn,se.x=gn-Xt,se.y=Lt+Xt):(ue.x=gn+jn,ue.y=Lt+jn,se.x=gn-Xt,se.y=Lt-Xt)),cr.$(bn,gn)&&cr.$(Lt,kt)&&(Lt>mt?(_n>gn?(ue.x=gn-jn,ue.y=Lt-jn,se.x=gn+Xt):(ue.x=gn+jn,ue.y=Lt-jn,se.x=gn-Xt),se.y=Lt+Xt):(_n>gn?(ue.x=gn-jn,ue.y=Lt+jn,se.x=gn+Xt):(ue.x=gn+jn,ue.y=Lt+jn,se.x=gn-Xt),se.y=Lt-Xt)),(cr.$(bn,gn)&&cr.$(gn,_n)||cr.$(mt,Lt)&&cr.$(Lt,kt))&&(bn=.5*(bn+_n),mt=.5*(mt+kt),ue.x=bn,ue.y=mt,se.x=bn,se.y=mt),(at===1||at===2&&cr.$(me.x,this.i(0).x)&&cr.$(me.y,this.i(0).y))&&(ee.x=.5*(me.x+Ye.x),ee.y=.5*(me.y+Ye.y)),Q0(Ce,ee.x-ne,ee.y-Fe,ue.x-ne,ue.y-Fe,Ye.x-ne,Ye.y-Fe),y.set(ue),ee.set(se),me=Ye}}Ye=me.x,me=me.y,Qe=this.i(this.pointsCount-1),this.computeShortLength(!1)!==0&&(Qe=wy(this,Qe.copy(),!1,Yo)),Ye=.5*(Ye+Qe.x),me=.5*(me+Qe.y),Q0(Ce,se.x-ne,se.y-Fe,Ye-ne,me-Fe,Qe.x-ne,Qe.y-Fe),fn.free(y),fn.free(ee),fn.free(ue),fn.free(se)}else for(ee=3;ee=y&&(ee=y-1),se=this.i(ee-1),me=this.i(ee),ee===y-1&&this.computeShortLength(!1)!==0&&(me=wy(this,me.copy(),!1,Yo)),Q0(Ce,ue.x-ne,ue.y-Fe,se.x-ne,se.y-Fe,me.x-ne,me.y-Fe);else{for(ue=fn.alloc(),ue.assign(this.i(0)),se=fn.alloc(),se.assign(ue),me=this.computeCorner(),at=1,Ye=0;at=y-1){if(!ue.D(Qe))this.computeShortLength(!1)!==0&&(Qe=wy(this,Qe.copy(),!1,Yo)),kv(this,Ce,-ne,-Fe,ue,Qe,ee);else if(Ye===0)for(at=1;atue.x?Yn=mt.x-kt:Yn=mt.x+kt,gn.y>mt.y?_n=mt.y+jn:_n=mt.y-jn,gn=fn.allocAt(Yn,nr),kv(this,Ce,at,bn,ue,gn,Xt),fn.free(gn),Tw(Ce,mt.x+at,mt.y+bn,Lt+at,_n+bn),ue.h(Lt,_n)}else cr.B(ue.x,mt.x)&&cr.B(mt.y,gn.y)?(kt=Math.min(me,Math.abs(mt.y-se.y)/2),kt=jn=Math.min(kt,Math.abs(gn.x-mt.x)/2),cr.B(jn,0)?(kv(this,Ce,at,bn,ue,mt,Xt),ue.assign(mt)):(Yn=mt.x,nr=mt.y,Lt=Yn,_n=nr,mt.y>ue.y?nr=mt.y-kt:nr=mt.y+kt,gn.x>mt.x?Lt=mt.x+jn:Lt=mt.x-jn,gn=fn.allocAt(Yn,nr),kv(this,Ce,at,bn,ue,gn,Xt),fn.free(gn),Tw(Ce,mt.x+at,mt.y+bn,Lt+at,_n+bn),ue.h(Lt,_n))):(kv(this,Ce,at,bn,ue,mt,Xt),ue.assign(mt));se.assign(Qe),at=Ye}fn.free(ue)}rE=Ce}else Ce=this.i(1).copy(),Ce.x-=ne,Ce.y-=Fe,this.computeShortLength(!0)!==0&&(se=wy(this,se,!0,ue)),this.computeShortLength(!1)!==0&&(Ce=wy(this,Ce,!1,ue)),a.type=Ci.j,a.startX=se.x,a.startY=se.y,a.endX=Ce.x,a.endY=Ce.y;return this.lk=!0,a};function Rv(a,y,ee,ne){return a=ee-a,isNaN(a)||a===1/0||a===-1/0?NaN:(0>a&&(a=-a),y=ne-y,isNaN(y)||y===1/0||y===-1/0?NaN:(0>y&&(y=-y),cr.$(a,0)?y:cr.$(y,0)?a:Math.sqrt(a*a+y*y)))}function wy(a,y,ee,ne){var se=a.pointsCount;if(2>se)return y;if(ee){var ue=a.i(1);if(ee=ue.x-ne.x,ue=ue.y-ne.y,ne=Rv(y.x,y.y,ee,ue),ne===0)return y;se=se===2?.5*ne:ne,a=a.computeShortLength(!0),a>se&&(a=se),se=a*(ue-y.y)/ne,y.x+=a*(ee-y.x)/ne,y.y+=se}else{if(ue=a.i(se-2),ee=ue.x-ne.x,ue=ue.y-ne.y,ne=Rv(y.x,y.y,ee,ue),ne===0)return y;se=se===2?.5*ne:ne,a=a.computeShortLength(!1),a>se&&(a=se),se=a*(y.y-ue)/ne,y.x-=a*(y.x-ee)/ne,y.y-=se}return y}function Wm(a,y,ee,ne){for(var se=a.pointsCount,ue=y;cr.$(y.x,ue.x)&&cr.$(y.y,ue.y);){if(ee>=se)return se-1;ue=a.i(ee++)}if(!cr.$(y.x,ue.x)&&!cr.$(y.y,ue.y))return ee-1;for(var me=ue;cr.$(y.x,ue.x)&&cr.$(ue.x,me.x)&&(!ne||(y.y>=ue.y?ue.y>=me.y:ue.y<=me.y))||cr.$(y.y,ue.y)&&cr.$(ue.y,me.y)&&(!ne||(y.x>=ue.x?ue.x>=me.x:ue.x<=me.x));){if(ee>=se)return se-1;me=a.i(ee++)}return ee-2}Oi.prototype.computeJumpLength=function(){return 10};function kv(a,y,ee,ne,se,ue,me){if(!me&&Yu(a)){me=a.computeJumpLength();var Ce=me/2,Fe=[],Ye=0;if(a.isVisible()&&(Ye=vg(a,se,ue,Fe)),0at-me);)Ye--,at=Math.max(Qe-Ce,ue.x);Qe=ue.y-me+ne,at+=ee,Lt=ue.y+ne,a.curve===p0?Sy(y,at,Lt,!1):Q0(y,mt,Qe,at,Qe,at,Lt)}else if(cr.B(se.x,ue.x))if(se.yQe-me);)Ye--,Qe=Math.max(at-Ce,ue.y);at=ue.x-me+ee,Lt=ue.x+ee,Qe+=ne,a.curve===p0?Sy(y,Lt,Qe,!1):Q0(y,at,mt,at,Qe,Lt,Qe)}}}y.lineTo(ue.x+ee,ue.y+ne)}function vg(a,y,ee,ne){var se=a.diagram;if(se===null||y.D(ee))return 0;for(se=se.layers;se.next();){var ue=se.value;if(ue!==null&&ue.visible){ue=ue.Pa.s;for(var me=ue.length,Ce=0;Ceme.x&&Qe.x>=Ye.x||Ye.xme.y&&Qe.y>=Ye.y||Ye.yme&&Math.min(kt,Xt)Qe&&!cr.B(kt,Xt)){Ce.x=Qe,Ce.y=me,Qe=!0;break e}}else if(cr.B(at,Lt)&&cr.B(kt,Xt)&&Math.min(Qe,mt)kt&&Math.min(me,bn)at&&!cr.B(me,bn)){Ce.x=kt,Ce.y=at,Qe=!0;break e}Ce.x=0,Ce.y=0,Qe=!1}Qe&&(se?ee.push(Ce.x):ee.push(Ce.y)),me=Ye}fn.free(Ce)}function Yu(a){return a=a.curve,a===yg||a===p0}function _A(a,y){(y||Yu(a))&&(y=a.diagram,y===null||y.animationManager.isTicking||y.Eh.contains(a)||a.ml.width===0&&a.ml.height===0||y.Eh.add(a,a.ml.copy()))}Oi.prototype.Xo=function(a){var y=this.layer;if(y!==null&&y.visible&&!y.isTemporary){var ee=y.diagram;if(ee!==null&&!ee.animationManager.isTicking){var ne=!1;for(ee=ee.layers;ee.next();){var se=ee.value;if(se.visible){if(se===y){ne=!0;var ue=!1;se=se.Pa.s;for(var me=se.length,Ce=0;Cea&&tr(a,">= 0",Oi,"fromEndSegmentLength"),this.Xc(),this.ba.Vi=a,this.g("fromEndSegmentLength",y,a),this.bb())}},fromShortLength:{get:function(){return this.ba!==null?this.ba.Wi:NaN},set:function(a){var y=this.fromShortLength;y!==a&&(this.Xc(),this.ba.Wi=a,this.qc(),this.g("fromShortLength",y,a))}},toSpot:{get:function(){return this.ba!==null?this.ba.yj:Ds},set:function(a){var y=this.toSpot;y.D(a)||(a=a.J(),this.Xc(),this.ba.yj=a,this.g("toSpot",y,a),(y.$c()||a.$c())&&this.toNode!==null&&Sd(this.toPort),this.bb())}},toEndSegmentLength:{get:function(){return this.ba!==null?this.ba.wj:NaN},set:function(a){var y=this.toEndSegmentLength;y!==a&&(0>a&&tr(a,">= 0",Oi,"toEndSegmentLength"),this.Xc(),this.ba.wj=a,this.g("toEndSegmentLength",y,a),this.bb())}},toShortLength:{get:function(){return this.ba!==null?this.ba.xj:NaN},set:function(a){var y=this.toShortLength;y!==a&&(this.Xc(),this.ba.xj=a,this.qc(),this.g("toShortLength",y,a))}},isLabeledLink:{get:function(){return this.wd===null?!1:0=ne&&(ue=ne-1);var Ce=this.i(ue-1),Fe=this.i(ue);cr.Dl(se.x,se.y,me.x,me.y,Ce.x,Ce.y,Fe.x,Fe.y,.5,a),y=Math.min(Fe.x,y),ee=Math.min(Fe.y,ee),se=Fe}else for(se=this.i(0),ue=this.i(1),y=Math.min(se.x,ue.x),ee=Math.min(se.y,ue.y),a.h(se.x,se.y,0,0),a.Ye(ue),se=2;sene&&(ne=-ne)):cr.$(ne.y,se.y)?(ne=se.x-ne.x,0>ne&&(ne=-ne)):ne=Math.sqrt(ne.Bf(se)),a.push(ne)}}return this.cq}},flattenedTotalLength:{get:function(){var a=this.vt;if(isNaN(a)){for(var y=this.flattenedLengths,ee=y.length,ne=a=0;nethis.pointsCount)return this.lk=!0,this.ua;this.ua=this.makeGeometry()}return this.ua}},firstPickIndex:{get:function(){return 2>=this.pointsCount?0:this.isOrthogonal||!N1(this.computeSpot(!0))?1:0}},lastPickIndex:{get:function(){var a=this.pointsCount;return a===0?0:2>=a?a-1:this.isOrthogonal||!N1(this.computeSpot(!1))?a-2:a-1}},adjusting:{get:function(){return this.qk},set:function(a){var y=this.qk;y!==a&&(this.qk=a,this.g("adjusting",y,a))}},corner:{get:function(){return this.Om},set:function(a){var y=this.Om;y!==a&&(this.Om=a,this.qc(),this.g("corner",y,a))}},curve:{get:function(){return this.Qm},set:function(a){var y=this.Qm;y!==a&&(this.Qm=a,this.bb(),this.qc(),_A(this,y===p0||y===yg||a===p0||a===yg),this.g("curve",y,a))}},curviness:{get:function(){return this.Rm},set:function(a){var y=this.Rm;y!==a&&(this.Rm=a,this.bb(),this.qc(),this.g("curviness",y,a))}},routing:{get:function(){return this.qj},set:function(a){var y=this.qj;y!==a&&(this.qj=a,this.Wf=null,this.bb(),_A(this,(y.value&2)===2||(a.value&2)===2),this.g("routing",y,a))}},smoothness:{get:function(){return this.po},set:function(a){var y=this.po;y!==a&&(this.po=a,this.qc(),this.g("smoothness",y,a))}},key:{get:function(){var a=this.diagram;if(a!==null&&a.model.ri())return a.model.Ac(this.data)}}}),Oi.prototype.invalidateOtherJumpOvers=Oi.prototype.Xo,Oi.prototype.findClosestSegment=Oi.prototype.ez,Oi.prototype.updateRoute=Oi.prototype.vg,Oi.prototype.invalidateRoute=Oi.prototype.bb,Oi.prototype.rollbackRoute=Oi.prototype.rv,Oi.prototype.commitRoute=Oi.prototype.zf,Oi.prototype.startRoute=Oi.prototype.uh,Oi.prototype.clearPoints=Oi.prototype.Fj,Oi.prototype.removePoint=Oi.prototype.pv,Oi.prototype.addPointAt=Oi.prototype.yf,Oi.prototype.addPoint=Oi.prototype.ne,Oi.prototype.insertPointAt=Oi.prototype.m,Oi.prototype.insertPoint=Oi.prototype.Kz,Oi.prototype.setPointAt=Oi.prototype.L,Oi.prototype.setPoint=Oi.prototype.dd,Oi.prototype.getPoint=Oi.prototype.i,Oi.prototype.getOtherPort=Oi.prototype.Cz,Oi.prototype.getOtherNode=Oi.prototype.To;var B1=null,Cy=null,R1=new wr(Oi,"Normal",1),bT=new wr(Oi,"Orthogonal",2),PT=new wr(Oi,"AvoidsNodes",6),jA=new wr(Oi,"AvoidsNodesStraight",7),Kh=new wr(Oi,"None",0),af=new wr(Oi,"Bezier",9),p0=new wr(Oi,"JumpGap",10),yg=new wr(Oi,"JumpOver",11),xg=new wr(Oi,"End",17),Um=new wr(Oi,"Scale",18),Ol=new wr(Oi,"Stretch",19),k1=new wr(Oi,"OrientAlong",21),sE=new wr(Oi,"OrientPlus90",22),lE=new wr(Oi,"OrientMinus90",23),_w=new wr(Oi,"OrientOpposite",24),F1=new wr(Oi,"OrientUpright",25),lc=new wr(Oi,"OrientPlus90Upright",26),by=new wr(Oi,"OrientMinus90Upright",27),Eg=new wr(Oi,"OrientUpright45",28),zw=16,jw=14,_1=8;Oi.className="Link",Oi.Normal=R1,Oi.Orthogonal=bT,Oi.AvoidsNodes=PT,Oi.AvoidsNodesStraight=jA,Oi.None=Kh,Oi.Bezier=af,Oi.JumpGap=p0,Oi.JumpOver=yg,Oi.End=xg,Oi.Scale=Um,Oi.Stretch=Ol,Oi.OrientAlong=k1,Oi.OrientPlus90=sE,Oi.OrientMinus90=lE,Oi.OrientOpposite=_w,Oi.OrientUpright=F1,Oi.OrientPlus90Upright=lc,Oi.OrientMinus90Upright=by,Oi.OrientUpright45=Eg,Oi.EndSegmentStep=8,Oi.CurvinessStart=zw,Oi.SpacingMin=jw,Oi.OrthoShortCut=_1;function WA(a,y,ee,ne){Ma(this),this.Fe=this.qq=!1,this.Ds=a,this.Ox=y,this.cv=ee,this.Px=ne,this.links=[]}WA.prototype.Sl=function(){if(!this.qq){var a=this.links;0=a.width||0>=a.height)){var y=a.y,ee=a.x+a.width,ne=a.y+a.height;if(this.Nd=Math.floor((a.x-this.rc)/this.rc)*this.rc,this.Od=Math.floor((y-this.sc)/this.sc)*this.sc,this.En=Math.ceil((ee+2*this.rc)/this.rc)*this.rc,this.Fn=Math.ceil((ne+2*this.sc)/this.sc)*this.sc,a=1+(Math.ceil((this.En-this.Nd)/this.rc)|0),y=1+(Math.ceil((this.Fn-this.Od)/this.sc)|0),this.ac===null||this.di=Mf&&(ee[ne]=Ww)}Gm.prototype.Yj=function(a,y,ee,ne){if(a>this.En||a+eethis.Fn||y+nea&&(ee+=a,a=0),0>y&&(se+=y,y=0),0>ee||0>se)return!0;for(ne=Math.min(a+ee-1,this.di)|0,ee=Math.min(y+se-1,this.ei)|0;a<=ne;a++){se=this.ac[a];for(var ue=y;ue<=ee;ue++)if(se[ue]===Qg)return!1}return!0};function vp(a,y,ee,ne,se,ue,me,Ce,Fe){if(!(yme||eeFe)){var Ye=y|0,Qe=ee|0,at=a.ac[Ye][Qe];if(at>=Mf&&at=a.ac[Ye][Qe]);)a.ac[Ye][Qe]=at,at+=1,se?Qe+=ne:Ye+=ne;if(Ye=se?Qe:Ye,se)if(0Ye;ee+=ne)vp(a,y,ee,1,!se,ue,me,Ce,Fe),vp(a,y,ee,-1,!se,ue,me,Ce,Fe);else if(0Ye;y+=ne)vp(a,y,ee,1,!se,ue,me,Ce,Fe),vp(a,y,ee,-1,!se,ue,me,Ce,Fe)}}function Hm(a,y,ee,ne,se,ue,me,Ce,Fe){y|=0,ee|=0;var Ye=Qg,Qe=Mf;for(a.ac[y][ee]=Qe;Ye===Qg&&y>ue&&yCe&&eeue&&yCe&&ee=Math.abs(Ce-Ye)&&1>=Math.abs(Fe-Qe))a.abort=!0;else{var at=ue.x;ne=ue.y,y=ue.x+ue.width;var mt=ue.y+ue.height;at-=a.Nd,at/=a.rc,ne-=a.Od,ne/=a.sc,y-=a.Nd,y/=a.rc,mt-=a.Od,mt/=a.sc,ue=Math.max(0,Math.min(a.di,at|0)),y=Math.min(a.di,Math.max(0,y|0)),at=Math.max(0,Math.min(a.ei,ne|0)),mt=Math.min(a.ei,Math.max(0,mt|0)),ne=a.ac,Ce|=0,Fe|=0,Ye|=0,Qe|=0;var Lt=ee===0||ee===90?1:-1;if(ee=ee===90||ee===270,ne[Ce][Fe]===Qg?(Hm(a,Ce,Fe,Lt,ee,ue,y,at,mt),Hm(a,Ce,Fe,1,!ee,ue,y,at,mt),Hm(a,Ce,Fe,-1,!ee,ue,y,at,mt)):Hm(a,Ce,Fe,Lt,ee,Ce,Fe,Ce,Fe),ne[Ye][Qe]===Qg?(Vm(a,Ye,Qe,se===0||se===90?1:-1,se===90||se===270,ue,y,at,mt),Vm(a,Ye,Qe,1,!(se===90||se===270),ue,y,at,mt),Vm(a,Ye,Qe,-1,!(se===90||se===270),ue,y,at,mt)):Vm(a,Ye,Qe,Lt,ee,Ye,Qe,Ye,Qe),ee=gr(),me&&My(a,Ye,Qe,se,Ce,Fe,ee))for((ee[0]!==Ye||ee[1]!==Qe)&&(ee.unshift(Qe),ee.unshift(Ye)),(ee[ee.length-2]!==Ce||ee[ee.length-1]!==Fe)&&(ee.push(Ce),ee.push(Fe)),a=Mf,se=ee[ee.length-2],me=ee[ee.length-1],ne[se][me]=a++,ue=ee.length-4;0<=ue;ue-=2)for(se=ee[ue+2],me=ee[ue+3],y=ee[ue],Ye=ee[ue+1];y>se?se++:yme?me++:Yese)Qe--;else break;else if(at>ue)at--;else break;var mt=Ce[Qe][at];if(mt===0||mt===Uw)break;Fe=Qe,Ye=at}for(;;){if(Qe=ne,at=Fe,mt=Ye,ne===0?mtue&&(Qe=270,mt--):ne===90?atse&&(Qe=180,at--):ne===180?mtue&&(Qe=270,mt--):atse&&(Qe=180,at--),at=Ce[at][mt],Qe!==ne&&at!==0&&at!==Uw){if(me.push(Fe),me.push(Ye),My(a,Fe,Ye,Qe,se,ue,me))return!0;me.pop(),me.pop()}if(Ce[Fe][Ye]=Uw,ne===0){if(Fe===y)return!1;Fe--}else if(ne===90){if(Ye===ee)return!1;Ye--}else if(ne===180){if(Fe===y)return!1;Fe++}else{if(Ye===ee)return!1;Ye++}}}De.Object.defineProperties(Gm.prototype,{bounds:{get:function(){return new Pr(this.Nd,this.Od,this.En-this.Nd,this.Fn-this.Od)}},Ho:{get:function(){return this.rc},set:function(a){0=ee?180:0}switch(a=180*Math.atan2(a.height,a.width)/Math.PI,y){case 3:return ee>a&&ee<=180+a?180:270;case 5:return ee>180-a&&ee<=360-a?270:0;case 12:return ee>a&&ee<=180+a?90:0;case 10:return ee>180-a&&ee<=360-a?180:90;case 7:return 90180+a&&ee<=360-a?270:0;case 13:return 180a&&180>=ee?90:0;case 14:return ee>a&&ee<=180-a?90:ee>180-a&&270>=ee?180:0;case 11:return ee>180-a&&ee<=180+a?180:ee>180+a?270:90}return ne&&y!==15&&(ee-=15,0>ee&&(ee+=360)),ee>a&&ee<180-a?90:ee>=180-a&&ee<=180+a?180:ee>180+a&&ee<360-a?270:0}Ly.prototype.Sl=function(){this.pe.length=0};function Rb(a,y){var ee=a.pe;if(ee.length===0){e:if(!a.ap){ee=a.ap,a.ap=!0;var ne=null,se=a.node,ue=se instanceof ci?se:null;if(ue===null||ue.isSubGraphExpanded)var me=se.isTreeExpanded?se.findLinksConnected(a.port.portId):se.qx();else{if(!ue.actualBounds.w()){a.ap=ee;break e}ne=ue,me=ne.Lu()}ue=a.pe.length=0;var Ce=a.port.ga(Vu,fn.alloc()),Fe=a.port.ga(mc,fn.alloc());for(se=Pr.allocAt(Ce.x,Ce.y,0,0),se.Ye(Fe),fn.free(Ce),fn.free(Fe),Ce=fn.allocAt(se.x+se.width/2,se.y+se.height/2),Fe=a.port.li(),me=me.iterator;me.next();){var Ye=me.value;if(Ye.isVisible()&&Ye.fromPort!==Ye.toPort){var Qe=Ye.fromPort===a.port||Ye.fromNode!==null&&Ye.fromNode.Td(ne),at=Ye.computeSpot(Qe,a.port);if(at.$c()&&(Qe=Qe?Ye.toPort:Ye.fromPort,Qe!==null)){var mt=Qe.part;if(mt!==null){var Lt=mt.findVisibleNode();Lt!==null&&Lt!==mt&&(mt=Lt,Qe=mt.port),Qe=Ye.computeOtherPoint(mt,Qe),mt=Ce.ab(Qe),mt-=Fe,0>mt?mt+=360:360<=mt&&(mt-=360),at=MT(se,at,mt,Ye.isOrthogonal),at===0?(at=4,180mt&&(mt+=360)),Lt=a.pe[ue],Lt===void 0?(Lt=new Gw(Ye,mt,at),a.pe[ue]=Lt):(Lt.link=Ye,Lt.angle=mt,Lt.Nc=at),Lt.hv.set(Qe),ue++}}}}for(fn.free(Ce),a.pe.sort(Ly.prototype.j),Fe=a.pe.length,ne=-1,ue=Ce=0;ueMath.abs(Xt)?(_n=Math.abs(Xt)/mt,mt=Math.abs(Xt)):_n=1;break;case 2:Lt>Math.abs(jn)?(_n=Math.abs(jn)/Lt,Lt=Math.abs(jn)):_n=1;break;case 1:at>Math.abs(Xt)?(_n=Math.abs(Xt)/at,at=Math.abs(Xt)):_n=1;break;default:case 4:Qe>Math.abs(jn)?(_n=Math.abs(jn)/Qe,Qe=Math.abs(jn)):_n=1}gn=0}var Or=Yn.Zo;if(ne===Rw){switch(Yn=Yn.link.computeThickness(),Yn*=_n,Or.set(nr),kt){case 8:Or.x=nr.x+Xt/2+mt/2-gn-Yn/2;break;case 2:Or.y=nr.y+jn/2+Lt/2-gn-Yn/2;break;case 1:Or.x=nr.x+Xt/2-at/2+gn+Yn/2;break;default:case 4:Or.y=nr.y+jn/2-Qe/2+gn+Yn/2}gn+=Yn}else{var Xi=.5;ne===oE&&(Xi=(Yn.Uo+1)/(Yn.Gl+1)),Or.x=nr.x+Xt*Xi,Or.y=nr.y+jn*Xi}}}for(fn.free(Ce),fn.free(Fe),fn.free(me),fn.free(Ye),nr=a.pe,ue=0;uey.Nc?1:a.angley.angle?1:0},Ly.prototype.computeEndSegmentLength=function(a){var y=a.link,ee=y.computeEndSegmentLength(this.node,this.port,su,y.fromPort===this.port),ne=a.Uo;if(0>ne)return ee;var se=a.Gl;if(1>=se||!y.isOrthogonal)return ee;y=a.hv;var ue=a.Zo;return(a.Nc===2||a.Nc===8)&&(ne=se-1-ne),((a=a.Nc===2||a.Nc===4)?y.y=y-1?(ue=0,ne=ee,se+=me+20,me=0):ue++}},Wl.prototype.doMinimalNetworkLayout=function(){var a=Math.ceil(Math.sqrt(this.network.vertexes.count));this.arrangementOrigin=this.initialOrigin(this.arrangementOrigin);for(var y=this.arrangementOrigin.x,ee=y,ne=this.arrangementOrigin.y,se=0,ue=0,me=this.network.vertexes.iterator;me.next();){var Ce=me.value.node;if(!(Ce===null||Ce instanceof Oi)&&(cE(Ce),this.rh(Ce))){var Fe=Ce.measuredBounds,Ye=Fe.width;Fe=Fe.height,Ce.moveTo(ee,ne),Ce instanceof ci&&(Ce.rh=!1),ee+=Math.max(Ye,50)+20,ue=Math.max(ue,Math.max(Fe,50)),se>=a-1?(se=0,ee=y,ne+=ue+20,ue=0):se++}}},Wl.prototype.rh=function(a){return!!(!a.location.w()||a instanceof ci&&a.rh)};function $0(a,y,ee,ne,se,ue,me,Ce){for(ee=ee.iterator;ee.next();){var Fe=ee.value;ne&&!Fe.isTopLevel||se!==null&&!se(Fe)||!Fe.canLayout()||(ue&&Fe instanceof qi?Fe.isLinkLabel||(Fe instanceof ci&&Fe.layout===null?$0(a,y,Fe.memberParts,!1,se,ue,me,Ce):(cE(Fe),y.add(Fe))):me&&Fe instanceof Oi?y.add(Fe):!Ce||!Fe.Zc()||Fe instanceof qi||(cE(Fe),y.add(Fe)))}}function cE(a){var y=a.actualBounds;(y.width===0||y.height===0||isNaN(y.width)||isNaN(y.height))&&a.Va()}Wl.prototype.ni=function(a,y){var ee=this.boundsComputation;return ee!==null?(y||(y=new Pr),ee(a,this,y)):y?(y.set(a.actualBounds),y):a.actualBounds},Wl.prototype.ex=function(a){var y=new Xr;return a instanceof Mr?($0(this,y,a.nodes,!0,null,!0,!0,!0),$0(this,y,a.links,!0,null,!0,!0,!0),$0(this,y,a.parts,!0,null,!0,!0,!0)):a instanceof ci?$0(this,y,a.memberParts,!1,null,!0,!0,!0):$0(this,y,a.iterator,!1,null,!0,!0,!0),y},Wl.prototype.initialOrigin=function(a){var y=this.group;if(y!==null){var ee=y.position.copy();return(isNaN(ee.x)||isNaN(ee.y))&&ee.set(a),y=y.placeholder,y!==null&&(ee=y.ga(Vu),(isNaN(ee.x)||isNaN(ee.y))&&ee.set(a),a=y.padding,ee.x+=a.left,ee.y+=a.top),ee}return a},De.Object.defineProperties(Wl.prototype,{diagram:{get:function(){return this.H},set:function(a){this.H=a}},group:{get:function(){return this.o},set:function(a){this.o!==a&&(this.o=a,a!==null&&(this.H=a.diagram))}},isOngoing:{get:function(){return this.sn},set:function(a){this.sn!==a&&(this.sn=a)}},isInitial:{get:function(){return this.Gh},set:function(a){this.Gh=a,a||(this.xn=!0)}},isViewportSized:{get:function(){return this.yn},set:function(a){this.yn!==a&&(this.yn=a)&&this.C()}},isRouting:{get:function(){return this.vn},set:function(a){this.vn!==a&&(this.vn=a)}},isRealtime:{get:function(){return this.un},set:function(a){this.un!==a&&(this.un=a)}},isValidLayout:{get:function(){return this.xn},set:function(a){this.xn!==a&&(this.xn=a,a||(a=this.diagram,a!==null&&(a.xh=!0)))}},network:{get:function(){return this.j},set:function(a){this.j!==a&&(this.j=a,a!==null&&(a.layout=this))}},boundsComputation:{get:function(){return this.Em},set:function(a){this.Em!==a&&(this.Em=a,this.C())}},arrangementOrigin:{get:function(){return this.Am},set:function(a){this.Am.D(a)||(this.Am.assign(a),this.C())}}}),Wl.prototype.collectParts=Wl.prototype.ex,Wl.prototype.getLayoutBounds=Wl.prototype.ni,Wl.prototype.invalidateLayout=Wl.prototype.C,Wl.className="Layout";function Sl(a){Ma(this),this.Sc=a,this.wf=new Xr,this.ye=new Xr,this.Es=new lo,this.zs=new lo}Sl.prototype.clear=function(){if(this.wf)for(var a=this.wf.iterator;a.next();)a.value.clear();if(this.ye)for(a=this.ye.iterator;a.next();)a.value.clear();this.wf=new Xr,this.ye=new Xr,this.Es=new lo,this.zs=new lo},Sl.prototype.toString=function(a){a===void 0&&(a=0);var y="LayoutNetwork"+(this.layout!==null?"("+this.layout.toString()+")":"");if(0>=a)return y;if(y+=" vertexes: "+this.wf.count+" edges: "+this.ye.count,1y?1:0):1:y!==null?-1:0}De.Object.defineProperties(uc.prototype,{sourceEdgesArrayAccess:{get:function(){return this.tg._dataArray}},destinationEdgesArrayAccess:{get:function(){return this.mg._dataArray}},data:{get:function(){return this.ub},set:function(a){if(this.ub=a,a!==null&&a.bounds){var y=a.bounds;a=y.x;var ee=y.y,ne=y.width;y=y.height,this.o.h(ne/2,y/2),this.j.h(a,ee,ne,y)}}},node:{get:function(){return this.Sh},set:function(a){if(this.Sh!==a){this.Sh=a,a.Va();var y=this.network.layout,ee=Pr.alloc(),ne=y.ni(a,ee);y=ne.x;var se=ne.y,ue=ne.width;if(ne=ne.height,isNaN(y)&&(y=0),isNaN(se)&&(se=0),this.j.h(y,se,ue,ne),Pr.free(ee),!(a instanceof ci)&&(a=a.locationObject.ga(cs),a.w())){this.o.h(a.x-y,a.y-se);return}this.o.h(ue/2,ne/2)}}},bounds:{get:function(){return this.j},set:function(a){this.j.D(a)||this.j.assign(a)}},focus:{get:function(){return this.o},set:function(a){this.o.D(a)||this.o.assign(a)}},centerX:{get:function(){return this.j.x+this.o.x},set:function(a){var y=this.j;y.x+this.o.x!==a&&(y.ka(),y.x=a-this.o.x,y.freeze())}},centerY:{get:function(){return this.j.y+this.o.y},set:function(a){var y=this.j;y.y+this.o.y!==a&&(y.ka(),y.y=a-this.o.y,y.freeze())}},focusX:{get:function(){return this.o.x},set:function(a){var y=this.o;y.x!==a&&(y.ka(),y.x=a,y.freeze())}},focusY:{get:function(){return this.o.y},set:function(a){var y=this.o;y.y!==a&&(y.ka(),y.y=a,y.freeze())}},x:{get:function(){return this.j.x},set:function(a){var y=this.j;y.x!==a&&(y.ka(),y.x=a,y.freeze())}},y:{get:function(){return this.j.y},set:function(a){var y=this.j;y.y!==a&&(y.ka(),y.y=a,y.freeze())}},width:{get:function(){return this.j.width},set:function(a){var y=this.j;y.width!==a&&(y.ka(),y.width=a,y.freeze())}},height:{get:function(){return this.j.height},set:function(a){var y=this.j;y.height!==a&&(y.ka(),y.height=a,y.freeze())}},network:{get:function(){return this.ob},set:function(a){this.ob=a}},sourceVertexes:{get:function(){for(var a=new Xr,y=this.sourceEdges;y.next();)a.add(y.value.fromVertex);return a.iterator}},destinationVertexes:{get:function(){for(var a=new Xr,y=this.destinationEdges;y.next();)a.add(y.value.toVertex);return a.iterator}},vertexes:{get:function(){for(var a=new Xr,y=this.sourceEdges;y.next();)a.add(y.value.fromVertex);for(y=this.destinationEdges;y.next();)a.add(y.value.toVertex);return a.iterator}},sourceEdges:{get:function(){return this.tg.iterator}},destinationEdges:{get:function(){return this.mg.iterator}},edges:{get:function(){for(var a=new Zr,y=this.sourceEdges;y.next();)a.add(y.value);for(y=this.destinationEdges;y.next();)a.add(y.value);return a.iterator}},edgesCount:{get:function(){return this.tg.count+this.mg.count}}}),uc.prototype.deleteDestinationEdge=uc.prototype.Jl,uc.prototype.addDestinationEdge=uc.prototype.zl,uc.prototype.deleteSourceEdge=uc.prototype.Kl,uc.prototype.addSourceEdge=uc.prototype.Cl,uc.className="LayoutVertex",uc.standardComparer=Qf,uc.smartComparer=function(a,y){if(a!==null){if(y!==null){a=a.Sh;var ee=y.Sh;if(a!==null){if(ee!==null){for(y=a.text.toLocaleLowerCase().split(/([+-]?[.]?\d+(?:\.\d*)?(?:e[+-]?\d+)?)/),a=ee.text.toLocaleLowerCase().split(/([+-]?[.]?\d+(?:\.\d*)?(?:e[+-]?\d+)?)/),ee=0;ee "+(this.qd?this.qd.toString():"null"))),y},Cd.prototype.gm=function(){var a=this.kd;this.kd=this.qd,this.qd=a},Cd.prototype.commit=function(){},Cd.prototype.Ax=function(a){return this.qd===a?this.kd:this.kd===a?this.qd:null},De.Object.defineProperties(Cd.prototype,{network:{get:function(){return this.nb},set:function(a){this.nb=a}},data:{get:function(){return this.ub},set:function(a){this.ub!==a&&(this.ub=a)}},link:{get:function(){return this.$k},set:function(a){this.$k!==a&&(this.$k=a)}},fromVertex:{get:function(){return this.kd},set:function(a){this.kd!==a&&(this.kd=a)}},toVertex:{get:function(){return this.qd},set:function(a){this.qd!==a&&(this.qd=a)}}}),Cd.prototype.getOtherVertex=Cd.prototype.Ax,Cd.className="LayoutEdge";function Uc(a){Wl.call(this),this.isViewportSized=!0,this.yo=this.zo=NaN,this.yg=new Ri(NaN,NaN).freeze(),this.tf=new Ri(10,10).freeze(),this.Jb=v0,this.Rb=ev,this.nd=Sg,this.hd=Kw,a&&Object.assign(this,a)}We(Uc,Wl),Uc.prototype.cloneProtected=function(a){Wl.prototype.cloneProtected.call(this,a),a.zo=this.zo,a.yo=this.yo,a.yg.assign(this.yg),a.tf.assign(this.tf),a.Jb=this.Jb,a.Rb=this.Rb,a.nd=this.nd,a.hd=this.hd},Uc.prototype.qb=function(a){a.classType===Uc?a===Sg||a===hE||a===VA||a===KA?this.sorting=a:a===ev||a===Ag?this.arrangement=a:a===v0||a===Ty?this.alignment=a:tn("Unknown enum value: "+a):Wl.prototype.qb.call(this,a)},Uc.prototype.doLayout=function(a){this.arrangementOrigin=this.initialOrigin(this.arrangementOrigin);var y=this.ex(a);a=this.diagram;for(var ee=y.copy().iterator;ee.next();){var ne=ee.value;if(!ne.ph()||ne.fromNode===null&&ne.toNode===null){if(ne.Va(),ne instanceof ci)for(ne=ne.memberParts;ne.next();)y.remove(ne.value)}else y.remove(ne)}var se=y.Fa();if(se.length!==0){switch(this.sorting){case KA:se.reverse();break;case Sg:se.sort(this.comparer);break;case hE:se.sort(this.comparer),se.reverse()}var ue=this.wrappingColumn;isNaN(ue)&&(ue=0);var me=this.wrappingWidth;switch(isNaN(me)&&a!==null?(y=a.padding,me=Math.max(a.viewportBounds.width-y.left-y.right,0)):me=Math.max(this.wrappingWidth,0),0>=ue&&0>=me&&(ue=1),y=this.spacing.width,isFinite(y)||(y=0),ee=this.spacing.height,isFinite(ee)||(ee=0),a!==null&&a.Ea("Layout"),ne=[],this.alignment){case Ty:var Ce=y,Fe=ee,Ye=Pr.alloc(),Qe=Math.max(this.cellSize.width,1);if(!isFinite(Qe))for(var at=Qe=0;atue-1||0me)&&(ne.push(new Pr(0,Xt,me+Ce,gn)),bn=0,kt=Lt,Xt+=gn,gn=0),gn=Math.max(gn,Or),mt){case Ag:Yn=-Yn.width;break;default:Yn=0}switch(jn.moveTo(kt+Yn,Xt),mt){case Ag:kt-=nr;break;default:kt+=nr}bn++}ne.push(new Pr(0,Xt,me+Ce,gn)),Pr.free(Ye);break;case v0:for(Fe=me,Qe=ue,at=y,mt=ee,me=Pr.alloc(),Lt=Math.max(this.cellSize.width,1),ue=Xt=Ye=0,Ce=fn.alloc(),kt=0;kt=Ye&&(Fe-=Ye),Ye=jn=0,nr=Math.max(this.cellSize.height,1),Yn=ue=0,Or=!0,bn=fn.alloc(),Xi=0;XiQe-1||0Fe){for(ne.push(new Pr(0,Or?_n-ue:_n,Fe+at,Yn+ue+mt)),po=0;poYe&&(ue.width+=ue.x-Ye,ue.x=Ye);Pr.free(me)}for(Ce=ue=me=se=0;Cey?1:0}De.Object.defineProperties(Uc.prototype,{wrappingWidth:{get:function(){return this.zo},set:function(a){this.zo!==a&&(0at)){var Xt=at+Yx(kt);kt.pc(Xt,!0),xw(kt,Xt,at)}}y.isModified=!0}}finally{y.aa=!0}}}}},el.prototype.updateAllTargetBindings=function(a){a===void 0&&(a="");for(var y=this.parts.iterator;y.next();)y.value.La(a);for(y=this.nodes.iterator;y.next();)y.value.La(a);for(y=this.links.iterator;y.next();)y.value.La(a)},el.prototype.rp=function(){for(var a=this.H.model,y=new Xr,ee=a.nodeDataArray,ne=0;ne=ne)return"[]";var se=new ji;se.add("["),ee&&1ne)return;lr(a.Tc,ne)}Xu(a,"nodeDataArray",Zi,"nodeDataArray",a,y,null,ne,null),a.qp(y)}Rt.nA=function(a){if(An(a))for(var y=a.length,ee=0;eey&&(y=a.length),$n(a,y,ee),Xu(this,"",bi,"",a,null,ee,null,y)},Rt.ov=function(a,y){y===void 0&&(y=-1),a===this.Tc&&tn("Model.removeArrayItem should not be called on the Model.nodeDataArray"),y===-1&&(y=a.length-1);var ee=a[y];lr(a,y),Xu(this,"",Zi,"",a,ee,null,y,null)},Rt.Ro=function(a){if(a===null)return"";var y=this.lj;if(y===""||(y=Wu(a,y),y===void 0))return"";if(typeof y=="string")return y;tn("getCategoryForNodeData found a non-string category for "+a+": "+y)},Rt.jm=function(a,y){if(a!==null){var ee=this.lj;if(ee!=="")if(this.lb(a)){var ne=Wu(a,ee);ne===void 0&&(ne=""),ne!==y&&(Ul(a,ee,y),Xu(this,"nodeCategory",Ei,ee,a,ne,y))}else Ul(a,ee,y)}},Rt.lm=function(a,y){this.jm(y,this.Ro(a))},Rt.Tl=function(){return!1},Rt.Wj=function(){return!1},Rt.ri=function(){return!1},Rt.xs=function(){return!1},Rt.Xj=function(){return!1};function qw(){return new yo}function fE(a,y){if(typeof y=="function"){if(y.className)return y.className;if(y.name)return y.name}else if(typeof y=="object"&&y!==null&&y.constructor)return fE(a,y.constructor);return typeof y}function $w(a){return wg[a]?wg[a]:wt.go!==void 0&&wt.go[a]?wt.go[a]:null}function Wu(a,y){if(!a||!y)return null;try{if(typeof y=="function")var ee=y(a);else typeof a.getAttribute=="function"?(ee=a.getAttribute(y),ee===null&&(ee=void 0)):ee=a[y]}catch(ne){}return ee}function Ul(a,y,ee){if(a&&y)try{typeof y=="function"?y(a,ee):typeof a.setAttribute=="function"?a.setAttribute(y,ee):a[y]=ee}catch(ne){}}De.Object.defineProperties(yo.prototype,{name:{get:function(){return this.xa},set:function(a){var y=this.xa;y!==a&&(this.xa=a,this.g("name",y,a))}},dataFormat:{get:function(){return this.Sm},set:function(a){var y=this.Sm;y!==a&&(this.Sm=a,this.g("dataFormat",y,a))}},isReadOnly:{get:function(){return this.Gg},set:function(a){var y=this.Gg;y!==a&&(this.Gg=a,this.g("isReadOnly",y,a))}},modelData:{get:function(){return this.j},set:function(a){var y=this.j;y!==a&&(this.j=a,this.g("modelData",y,a),this.La(a))}},undoManager:{get:function(){return this.o},set:function(a){var y=this.o;y!==a&&(y!==null&&y.Rx(this),this.o=a,a!==null&&a.Xw(this))}},skipsUndoManager:{get:function(){return this.Wg},set:function(a){this.Wg=a}},nodeKeyProperty:{get:function(){return this.Th},set:function(a){var y=this.Th;y!==a&&(a===""&&tn("Model.nodeKeyProperty may not be the empty string"),0"+bh(this,se,!1)}return y},Rt.Qv=function(a,y){this.linkKeyProperty===""&&tn("GraphLinksModel.linkKeyProperty must not be an empty string for .toIncrementalData() to succeed.");var ee=yo.prototype.Qv.call(this,a,y),ne=this,se=new Xr,ue=new Xr,me=new Xr,Ce=this.vh;a.changes.each(function(Qe){Qe.model===ne&&(Qe.modelChange==="linkDataArray"?Qe.change===bi?se.add(Qe.newValue):Qe.change===Zi&&me.add(Qe.oldValue):ne.Jc(Qe.object)?ue.add(Qe.object):Qe.object!==null&&(Qe.object!==null&&Ce&&Ce.contains(Qe.object)?Ce.get(Qe.object).each(function(at){ne.Jc(at)&&ue.add(at)}):Qe.object instanceof yo||ne.lb(Qe.object)||DT(ne,Qe.object).each(function(at){ue.add(at)})))});var Fe=this.il;Fe.clear(),se.each(function(Qe){Fe.add(ne.Ac(Qe)),y||ue.add(Qe)});var Ye=this.kl;return Ye.clear(),me.each(function(Qe){Ye.add(ne.Ac(Qe)),y&&ue.add(Qe)}),a=ne.cloneDeep(ue.Fa()),0ne.indexOf(a.newValue)&&ne.splice(ee,0,a.newValue));return}}else if(a.change===Zi){if(ee=a.oldParam,a.modelChange==="linkDataArray"){a=a.oldValue,Bn(a)&&typeof ee=="number"&&(ne=this.Ac(a),y?(this.$f.add(a),this.md[ee]!==a&&this.md.splice(ee,0,a),ne!==void 0&&this.wb.add(ne,a)):(this.$f.remove(a),this.md[ee]===a&&this.md.splice(ee,1),ne!==void 0&&this.wb.remove(ne)));return}if(a.modelChange==="linkLabelKeys"){ne=this.Ef(a.object),Array.isArray(ne)&&typeof ee=="number"&&(y?0>ne.indexOf(a.newValue)&&ne.splice(ee,0,a.newValue):(ee=ne.indexOf(a.newValue),0<=ee&&ne.splice(ee,1)));return}}yo.prototype.changeState.call(this,a,y)}},Rt=vs.prototype,Rt.Vl=function(a){if(a!==void 0){var y=this.Ri;if(y!==null){var ee=this.hc(a);ee===null&&(ee=this.copyNodeData(y),Ul(ee,this.nodeKeyProperty,a),this.xf(ee))}return a}},Rt.yx=function(a){return bh(this,a,!0)},Rt.wv=function(a,y){zv(this,a,y,!0)},Rt.Bx=function(a){return bh(this,a,!1)},Rt.Bv=function(a,y){zv(this,a,y,!1)};function bh(a,y,ee){if(y!==null&&(a=ee?a.lf:a.mf,a!==""&&(a=Wu(y,a),a!==void 0))){if(_v(a))return a;tn((ee?"FromKey":"ToKey")+" value for link data "+y+" is not a number or a string: "+a)}}function zv(a,y,ee,ne){if(ee===null&&(ee=void 0),y!==null){var se=ne?a.lf:a.mf;if(se!=="")if(ee=a.Vl(ee),a.Jc(y)){var ue=Wu(y,se);ue!==ee&&(Nu(a,ue,y),Ul(y,se,ee),a.hc(ee)===null&&Jg(a,ee,y),Xu(a,ne?"linkFromKey":"linkToKey",Ei,se,y,ue,ee),typeof se=="string"&&a.La(y,se))}else Ul(y,se,ee)}}Rt.zx=function(a){return Zm(this,a,!0)},Rt.xv=function(a,y){W1(this,a,y,!0)},Rt.Cx=function(a){return Zm(this,a,!1)},Rt.Cv=function(a,y){W1(this,a,y,!1)};function Zm(a,y,ee){return y===null||(a=ee?a.ej:a.fj,a==="")?"":(y=Wu(y,a),y===void 0?"":y)}function W1(a,y,ee,ne){if(y!==null){var se=ne?a.ej:a.fj;if(se!=="")if(a.Jc(y)){var ue=Wu(y,se);ue===void 0&&(ue=""),ue!==ee&&(Ul(y,se,ee),Xu(a,ne?"linkFromPortId":"linkToPortId",Ei,se,y,ue,ee),typeof se=="string"&&a.La(y,se))}else Ul(y,se,ee)}}Rt.Ef=function(a){if(a===null)return pE;var y=this.je;return y===""?pE:(a=Wu(a,y),a===void 0?pE:a)},Rt.Ls=function(a,y){if(a!==null){var ee=this.je;if(ee!=="")if(this.Jc(a)){var ne=Wu(a,ee);if(ne===void 0&&(ne=pE),ne!==y){if(Array.isArray(ne))for(var se=ne.length,ue=0;uese||(ne.splice(se,1),this.Jc(a)&&(Nu(this,y,a),Xu(this,"linkLabelKeys",Zi,ee,a,y,null,se,null)))}else ne!==void 0&&tn(ee+" property is not an Array; cannot removeLabelKeyforLinkData: "+a)}}},Rt.Ac=function(a){if(a!==null){var y=this.Jh;if(y!==""&&(y=Wu(a,y),y!==void 0)){if(_v(y))return y;tn("Key value for link data "+a+" is not a number or a string: "+y)}}},Rt.Ks=function(a,y){if(a!==null){var ee=this.Jh;if(ee!=="")if(this.Jc(a)){var ne=Wu(a,ee);ne!==y&&this.jh(y)===null&&(Ul(a,ee,y),ne!==void 0&&this.wb.remove(ne),this.wb.add(y,a),Xu(this,"linkKey",Ei,ee,a,ne,y),typeof ee=="string"&&this.La(a,ee))}else Ul(a,ee,y)}},Rt.jh=function(a){return a===null&&tn("GraphLinksModel.findLinkDataForKey:key must not be null"),a!==void 0&&_v(a)?this.wb.I(a):null},Rt.Bs=function(a){if(a!==null){var y=this.Jh;if(y!==""){var ee=this.Ac(a);if(ee===void 0||this.wb.contains(ee)){var ne=this.cl;if(ne!==null&&(ee=ne(this,a),ee!=null&&!this.wb.contains(ee))){Ul(a,y,ee);return}if(typeof ee=="string"){for(ne=2;this.wb.contains(ee+ne);)ne++;Ul(a,y,ee+ne)}else if(ee===void 0||typeof ee=="number"){for(ee=-this.wb.count-1;this.wb.contains(ee);)ee--;Ul(a,y,ee)}}}}},Rt.Jc=function(a){return a===null?!1:this.$f.contains(a)},Rt.fi=function(a){a!==null&&(ts(a),this.Jc(a)||U1(this,a,!0))};function U1(a,y,ee){if(a.linkKeyProperty!==""){var ne=a.Ac(y);if(ne!==void 0&&a.wb.I(ne)===y)return;a.Bs(y),ne=a.Ac(y),ne===void 0&&tn("GraphLinksModel.makeLinkDataKeyUnique failed on "+y+". Data not added to model."),a.wb.add(ne,y)}a.$f.add(y),ne=null,ee&&(ne=a.md.length,a.md.splice(ne,0,y)),Xu(a,"linkDataArray",bi,"linkDataArray",a,null,y,null,ne),nC(a,y)}Rt.Ey=function(a){if(Array.isArray(a))for(var y=a.length,ee=0;eene)return;a.md.splice(ne,1)}if(Xu(a,"linkDataArray",Zi,"linkDataArray",a,y,null,ne,null),ee=bh(a,y,!0),Nu(a,ee,y),ee=bh(a,y,!1),Nu(a,ee,y),ne=a.Ef(y),Array.isArray(ne))for(var se=ne.length,ue=0;ue=a.count)a.count===1&&(a=a.first(),a.centerX=0,a.centerY=0);else{var y=new Zr;y.addAll(a.iterator),a=new Zr;var ee=new Zr,ne=this.sort(y),se,ue,me=this.Jp,Ce=this.arrangement,Fe=this.nodeDiameterFormula,Ye=this.radius;(!isFinite(Ye)||0>=Ye)&&(Ye=NaN);var Qe=this.aspectRatio;(!isFinite(Qe)||0>=Qe)&&(Qe=1);var at=this.startAngle;isFinite(at)||(at=0);var mt=this.sweepAngle;if((!isFinite(mt)||360mt)&&(mt=360),y=this.spacing,isFinite(y)||(y=NaN),Ce===Cg&&Fe===Xm?Ce=Lf:Ce===Cg&&Fe!==Xm&&(Ce=this.arrangement),(this.direction===Ym||this.direction===Wv)&&this.sorting!==Oy){for(Fe=0;!(Fe>=ne.length)&&(a.add(ne.M(Fe)),!(Fe+1>=ne.length));Fe+=2)ee.add(ne.M(Fe+1));this.direction===Ym?(this.arrangement===Cg&&a.reverse(),ne=new Zr,ne.addAll(a),ne.addAll(ee)):(this.arrangement===Cg&&ee.reverse(),ne=new Zr,ne.addAll(ee),ne.addAll(a))}Fe=ne.length;for(var Lt=ue=se=0;Ltmt&&(Lt===0||Lt===ne.length-1)&&(Xt/=2),se+=Xt,ue++}if(isNaN(Ye)||Ce===Cg){if(isNaN(y)&&(y=6),Ce!==Lf&&Ce!==Cg){for(ue=-1/0,me=0;meYe?(Ye=se,ue=Ye*Qe):me=Lt/(360<=mt?Fe:Fe-1)}if(this.kw=Ce,this.lc=Ye,this.Zm=Qe,this.lw=at,this.Wp=mt,this.Ti=y,this.me=ue,this.Jp=me,y=ne,ne=this.kw,Ce=this.lc,Ye=this.lw,Qe=this.Wp,at=this.Ti,mt=this.me,Fe=this.Jp,this.direction!==Ym&&this.direction!==Wv||ne!==Cg)if(this.direction===Ym||this.direction===Wv){switch(me=0,ne){case tv:me=180*G1(this,Ce,mt,Ye,Fe)/Math.PI;break;case Lf:Fe=y=0,me=a.first(),me!==null&&(y=Uv(me,Math.PI/2)),me=ee.first(),me!==null&&(Fe=Uv(me,Math.PI/2)),me=180*G1(this,Ce,mt,Ye,at+(y+Fe)/2)/Math.PI;break;case Hp:me=Qe/y.length}if(this.direction===Ym){switch(ne){case tv:sf(this,a,Ye,jv);break;case Lf:mE(this,a,Ye,jv);break;case Hp:vE(this,a,Qe/2,Ye,jv)}switch(ne){case tv:sf(this,ee,Ye+me,Yh);break;case Lf:mE(this,ee,Ye+me,Yh);break;case Hp:vE(this,ee,Qe/2,Ye+me,Yh)}}else{switch(ne){case tv:sf(this,ee,Ye,jv);break;case Lf:mE(this,ee,Ye,jv);break;case Hp:vE(this,ee,Qe/2,Ye,jv)}switch(ne){case tv:sf(this,a,Ye+me,Yh);break;case Lf:mE(this,a,Ye+me,Yh);break;case Hp:vE(this,a,Qe/2,Ye+me,Yh)}}}else switch(ne){case tv:sf(this,y,Ye,this.direction);break;case Lf:mE(this,y,Ye,this.direction);break;case Hp:vE(this,y,Qe,Ye,this.direction);break;case Cg:rC(this,y,Qe,Ye,this.direction)}else rC(this,y,Qe,Ye-Qe/2,Yh)}this.updateParts(),this.network=null,this.isValidLayout=!0};function vE(a,y,ee,ne,se){var ue=a.Wp,me=a.lc;a=a.me,ne=ne*Math.PI/180,ee=ee*Math.PI/180;for(var Ce=y.length,Fe=0;Feee){for(ue=ne+(se===Yh?ue:-ue);0>ue;)ue+=360;ue%=360,180=Qe.length-1));at++)Xb(a,Fe,Ye,Qe,at,se,ue)||Qb(a,Fe,Ye,Qe,at,se,ue),Fe=ue.x,Ye=ue.y;if(fn.free(ue),a.mj++,!(23Math.abs(Lt)?Math.abs(Fe-ue)<(Qe[0].width+Qe[Qe.length-1].width)/2&&(me=0):me=0Math.abs(mt)?0:mt,Fe=Math.abs(ue)>Math.abs(at)?0at:0a.mj?a.lc-me/(2*Math.PI):5>Qe.length&&10=at.length-1));mt++)Xb(a,Fe,Ye,at,mt,se,Qe)||Qb(a,Fe,Ye,at,mt,se,Qe),Fe=Qe.x,Ye=Qe.y;if(fn.free(Qe),a.mj++,!(23a.mj?a.lc-ue/(2*Math.PI):a.lc-(0Ce){if(ue=y-a,ue<-Ce)return me.x=ue,me.y=Ye,!1;Qe=!0}}else if(ue=y-a,ue<-Ce){if(ue=y+a,ue>Ce)return me.x=ue,me.y=Ye,!1;Qe=!0}return Ye=Math.sqrt(1-Math.min(1,ue*ue/(Ce*Ce)))*Fe,0>ee!==Qe&&(Ye=-Ye),Math.abs(ee-Ye)>(ne[se].height+ne[se+1].height)/2?(me.x=ue,me.y=Ye,!1):(me.x=ue,me.y=Ye,!0)}function Qb(a,y,ee,ne,se,ue,me){var Ce=a.lc,Fe=a.me,Ye=0;if(a=(ne[se].height+ne[se+1].height)/2+a.Ti,ne=!1,0<=y!=(ue===Yh)){if(ue=ee-a,ue<-Fe){if(ue=ee+a,ue>Fe){me.x=Ye,me.y=ue;return}ne=!0}}else if(ue=ee+a,ue>Fe){if(ue=ee-a,ue<-Fe){me.x=Ye,me.y=ue;return}ne=!0}Ye=Math.sqrt(1-Math.min(1,ue*ue/(Fe*Fe)))*Ce,0>y!==ne&&(Ye=-Ye),me.x=Ye,me.y=ue}ql.prototype.commitLayout=function(){this.commitNodes(),this.isRouting&&this.commitLinks()},ql.prototype.commitNodes=function(){var a=this.group!==null&&this.group.placeholder!==null&&this.group.isSubGraphExpanded,y=a?this.group.location.copy():null,ee=this.actualCenter;a?ee=new fn(0,0):(ee.x=this.arrangementOrigin.x+this.lc,ee.y=this.arrangementOrigin.y+this.me);for(var ne=this.network.vertexes.iterator;ne.next();){var se=ne.value;se.x+=ee.x,se.y+=ee.y,se.commit()}a&&(this.group.Va(),a=this.group.position.copy(),ee=this.group.location.copy(),y=y.re(ee.re(a)),this.group.move(y),this.Zv=y.re(a))},ql.prototype.commitLinks=function(){for(var a=this.network.edges.iterator;a.next();)a.value.commit()};function eS(a,y,ee,ne,se){var ue=a.ty;if(.001>Math.abs(a.Zm-1))return ne!==void 0&&se!==void 0?se*y:2*Math.PI*y;a=y>ee?Math.sqrt(y*y-ee*ee)/y:Math.sqrt(ee*ee-y*y)/ee;for(var me=0,Ce=ne!==void 0&&se!==void 0?se/(ue+1):Math.PI/(2*(ue+1)),Fe=0,Ye=0;Ye<=ue;Ye++){ne!==void 0&&se!==void 0?Fe=ne+Ye*se/ue:Fe=Ye*Math.PI/(2*ue);var Qe=Math.sin(Fe);me+=Math.sqrt(1-a*a*Qe*Qe)*Ce}return ne!==void 0&&se!==void 0?(y>ee?y:ee)*me:4*(y>ee?y:ee)*me}function yE(a,y,ee,ne,se){return y/(ne!==void 0&&se!==void 0?eS(a,1,ee,ne,se):eS(a,1,ee))}function G1(a,y,ee,ne,se){if(.001>Math.abs(a.Zm-1))return se/y;var ue=y>ee?Math.sqrt(y*y-ee*ee)/y:Math.sqrt(ee*ee-y*y)/ee,me=0;a=2*Math.PI/(700*a.network.vertexes.count),y>ee&&(ne+=Math.PI/2);for(var Ce=0;;Ce++){var Fe=Math.sin(ne+Ce*a);if(me+=(y>ee?y:ee)*Math.sqrt(1-ue*ue*Fe*Fe)*a,me>=se)return Ce*a}}ql.prototype.sort=function(a){switch(this.sorting){case tS:break;case Iy:a.reverse();break;case xE:a.sort(this.comparer);break;case EE:a.sort(this.comparer),a.reverse();break;case Oy:return this.ak(iC(a));default:tn("Invalid sorting type.")}return a};function iC(a){for(var y=[],ee=0;eese&&(se=Ce,ue=me)}else for(me=0;mese&&(se=Ce,ue=me);for(ee.add(a.M(ue)),y[ue]=-1,ue=a.M(ue),me=ue.sourceEdges;me.next();)se=a.indexOf(me.value.fromVertex),0>se||0<=y[se]&&y[se]++;for(ue=ue.destinationEdges;ue.next();)se=a.indexOf(ue.value.toVertex),0>se||0<=y[se]&&y[se]++}return ee}ql.prototype.ak=function(a){for(var y=[],ee=0;eey[ee].indexOf(se)&&y[ee].push(se);for(ne=ne.sourceEdges;ne.next();)se=a.indexOf(ne.value.fromVertex),se!==ee&&0>y[ee].indexOf(se)&&y[ee].push(se)}for(ue=[],ee=0;eey[ee[kt]].indexOf(ee[kt===ee.length-1?0:kt+1])&&Lt.push(kt===ee.length-1?0:kt+1);if(Lt.length===0)for(kt=0;ktee.indexOf(Or)||nree.indexOf(Or)||nr=Xt?nr+1:nr)),gn+=nr=Xt&&nr++,jn>=Xt&&jn++,nr>jn&&(Yn=jn,jn=nr,nr=Yn),jn-nr<(ee.length+2)/2==(nrLt||Lt===Qe||(kt=Lt>Qe?Lt-Qe:Qe-Lt,at+=Ltme-kt?1:-1);ee.splice(0>at?Qe:Qe+1,0,Fe),ne.splice(Ce,1),Ce--}else ue=!1;if(ue)break;ee.push(ne[0]),ne.splice(0,1)}for(y=0;y=a?this.ul=a:this.ul=360,this.C())}},arrangement:{get:function(){return this.Rb},set:function(a){this.Rb===a||a!==Cg&&a!==Lf&&a!==tv&&a!==Hp||(this.Rb=a,this.C())}},direction:{get:function(){return this.K},set:function(a){this.K===a||a!==Yh&&a!==jv&&a!==Ym&&a!==Wv||(this.K=a,this.C())}},sorting:{get:function(){return this.nd},set:function(a){this.nd===a||a!==tS&&a!==Iy&&a!==xE&&!EE&&a!==Oy||(this.nd=a,this.C())}},comparer:{get:function(){return this.hd},set:function(a){this.hd!==a&&(this.hd=a,this.C())}},spacing:{get:function(){return this.tf},set:function(a){this.tf!==a&&(this.tf=a,this.C())}},nodeDiameterFormula:{get:function(){return this.Nn},set:function(a){this.Nn===a||a!==nS&&a!==Xm||(this.Nn=a,this.C())}},actualXRadius:{get:function(){return this.lc}},actualYRadius:{get:function(){return this.me}},actualSpacing:{get:function(){return this.Ti}},actualCenter:{get:function(){return this.Zv}}});var Lf=new wr(ql,"ConstantSpacing",0),tv=new wr(ql,"ConstantDistance",1),Hp=new wr(ql,"ConstantAngle",2),Cg=new wr(ql,"Packed",3),Yh=new wr(ql,"Clockwise",4),jv=new wr(ql,"Counterclockwise",5),Ym=new wr(ql,"BidirectionalLeft",6),Wv=new wr(ql,"BidirectionalRight",7),tS=new wr(ql,"Forwards",8),Iy=new wr(ql,"Reverse",9),xE=new wr(ql,"Ascending",10),EE=new wr(ql,"Descending",11),Oy=new wr(ql,"Optimized",12),nS=new wr(ql,"Pythagorean",13),Xm=new wr(ql,"Circular",14);ql.className="CircularLayout",ql.ConstantSpacing=Lf,ql.ConstantDistance=tv,ql.ConstantAngle=Hp,ql.Packed=Cg,ql.Clockwise=Yh,ql.Counterclockwise=jv,ql.BidirectionalLeft=Ym,ql.BidirectionalRight=Wv,ql.Forwards=tS,ql.Reverse=Iy,ql.Ascending=xE,ql.Descending=EE,ql.Optimized=Oy,ql.Pythagorean=nS,ql.Circular=Xm;function Qm(){this.Pl=-1/0,this.tm=this.mk=null}Qm.prototype.compare=function(a,y){if(0this.Pl||Math.abs(a)a&&0Ce?(se=mt.x+mt.width/2,ue=mt.y+mt.height/2,Ye[0]=new fn(mt.x+mt.width+ne.width,mt.y),Ye[1]=new fn(mt.x,mt.y+mt.height+ne.height),Ce=2):(Fe=aC(Ye,Ce,se,ue,mt.width,mt.height,ne),at=Ye[Fe],Lt=new fn(at.x+mt.width+ne.width,at.y),mt=new fn(at.x,at.y+mt.height+ne.height),Fe+1this.network.vertexes.count)return!1;for(var a=0,y=0,ee=this.network.vertexes.first().bounds,ne=this.network.vertexes.iterator;ne.next();){if(ne.value.bounds.Yc(ee)&&(a++,2a.network.vertexes.count)return!1;for(a.ah=a.network.vertexes.Fa(),a=a.ah,a.sort(function(ee,ne){return ee===null||ne===null||ee===ne?0:ne.Vd-ee.Vd}),y=a.length-1;0<=y&&1>=a[y].Vd;)y--;return 1=me))){for(var Ye=Ce=0,Qe=Fe.count-me;QeLt&&(Lt=1),Ce=cr.sqrt((Ce+Lt+Ye*Ye*4/(me*me))/Lt),me=(Ce-1)*Qe/2,Ce=(Ce-1)*at/2,se.bounds=new Pr(ue-mt.x-me,Fe-mt.y-Ce,Qe+2*me,at+2*Ce),se.focus=new fn(mt.x+me,mt.y+Ce)}}return a.network=ne,ee}function EI(a,y){for(var ee=a.network.vertexes.iterator;ee.next();){var ne=ee.value;if(ne.network=y,ne.We!==null){var se=ne.We.M(ne.sv);ne.Vd=se.Rs;var ue=se.Sv,me=se.Tv;ne.bounds=new Pr(ne.centerX-ue,ne.centerY-me,se.Ss,se.Qs),ne.focus=new fn(ue,me),ne.sv--}}for(ee=a.network.edges.iterator;ee.next();)ee.value.network=y;a.network=y}function AI(a,y){var ee=y.Hj;if(ee!==null&&ee.count!==0){var ne=y.centerX,se=y.centerY,ue=y.width,me=y.height;y.We!==null&&0=at.Vd?Fe++:(Ce=!0,Ye++,me+=Math.atan2(y.centerY-at.centerY,y.centerX-at.centerX))}if(Fe!==0){for(0>1)+Ye)*(Ce%2===0?1:-1),Fe.centerX=ne+Qe*Math.cos(at),Fe.centerY=se+Qe*Math.sin(at),Ce++}}}}function aC(a,y,ee,ne,se,ue,me){var Ce=9e19,Fe=-1,Ye=0;e:for(;YeQe.y&&a[mt].x-Qe.xQe.x&&a[mt].y-Qe.yy+ue?(ee=ne+se-me,a=a-y-ue,cr.sqrt(ee*ee+a*a)):a+eeme+Ce?a>y+ue?(ee=ne-me-Ce,a=a-y-ue,cr.sqrt(ee*ee+a*a)):a+eey+ue?a-(y+ue):a+ee=y.length)return!1;var ee=y[0];ee.forceX=0,ee.forceY=0;for(var ne=ee.centerX,se=ne,ue=ee=ee.centerY,me=1;meue-ee)?y.sort(function(Xt,bn){return Xt===null||bn===null||Xt===bn?0:Xt.centerX-bn.centerX}):y.sort(function(Xt,bn){return Xt===null||bn===null||Xt===bn?0:Xt.centerY-bn.centerY}),ee=a.Zf;var Ye=ne=Ce=0;for(ue=0;ueee||Ye-Fe>ee){if(se)break}else if(Qe-Lt>ee||Lt-Qe>ee){if(!se)break}else{var kt=Jb(me,mt);1>kt?(ne=a.randomNumberGenerator,ne===null&&(a.randomNumberGenerator=ne=new Tf),kt=ne.random(),Ce=ne.random(),Fe>Ye?(ne=Math.abs(mt.bounds.right-me.bounds.x),ne=(1+ne)*kt):FeLt?(Ye=Math.abs(mt.bounds.bottom-me.bounds.y),Ye=(1+Ye)*Ce):Feat?(at=a.randomNumberGenerator,at===null&&(a.randomNumberGenerator=at=new Tf),Ce=at.random(),at=at.random(),ne=(ne>Fe?1:-1)*(1+(ue.width>ee.width?ue.width:ee.width))*Ce,Ye=(me>Qe?1:-1)*(1+(ue.height>ee.height?ue.height:ee.height))*at):(Ce=Ce.stiffness*(at-Ce.length),ne=(Fe-ne)/at*Ce,Ye=(Qe-me)/at*Ce),ee.forceX+=ne,ee.forceY+=Ye,ue.forceX-=ne,ue.forceY-=Ye;for(se=ne=0;sea.epsilonDistance*a.epsilonDistance}oh.prototype.moveVertex=function(a){var y=a.forceX,ee=a.forceY,ne=this.moveLimit;return y<-ne?y=-ne:y>ne&&(y=ne),ee<-ne?ee=-ne:ee>ne&&(ee=ne),a.centerX+=y,a.centerY+=ee,y*y+ee*ee},oh.prototype.moveFixedVertex=function(){},oh.prototype.commitLayout=function(){this.yv(),this.commitNodes(),this.isRouting&&this.commitLinks()},oh.prototype.yv=function(){if(this.setsPortSpots)for(var a=this.network.edges.iterator;a.next();){var y=a.value.link;y!==null&&(y.fromSpot=Ds,y.toSpot=Ds)}},oh.prototype.commitNodes=function(){var a=0,y=0;if(this.arrangesToOrigin){var ee=Pr.alloc();this.computeBounds(this.network,ee),y=this.arrangementOrigin,a=y.x-ee.x,y=y.y-ee.y,Pr.free(ee)}ee=Pr.alloc();for(var ne=this.network.vertexes.iterator;ne.next();){var se=ne.value;(a!==0||y!==0)&&(ee.assign(se.bounds),ee.x+=a,ee.y+=y,se.bounds=ee),se.commit()}Pr.free(ee)},oh.prototype.commitLinks=function(){for(var a=this.network.edges.iterator;a.next();)a.value.commit()},oh.prototype.springStiffness=function(a){return a=a.stiffness,isNaN(a)?this.Hk:a},oh.prototype.springLength=function(a){return a=a.length,isNaN(a)?this.Gk:a},oh.prototype.electricalCharge=function(a){return a=a.charge,isNaN(a)?this.Ek:a},oh.prototype.electricalFieldX=function(){return 0},oh.prototype.electricalFieldY=function(){return 0},oh.prototype.gravitationalMass=function(a){return a=a.mass,isNaN(a)?this.Fk:a},oh.prototype.gravitationalFieldX=function(){return 0},oh.prototype.gravitationalFieldY=function(){return 0},oh.prototype.isFixed=function(a){return a.isFixed},De.Object.defineProperties(oh.prototype,{currentIteration:{get:function(){return this.An}},arrangementSpacing:{get:function(){return this.$d},set:function(a){this.$d.D(a)||(this.$d.assign(a),this.C())}},arrangesToOrigin:{get:function(){return this.Bm},set:function(a){this.Bm!==a&&(this.Bm=a,this.C())}},setsPortSpots:{get:function(){return this.sf},set:function(a){this.sf!==a&&(this.sf=a,this.C())}},comments:{get:function(){return this.td},set:function(a){this.td!==a&&(this.td=a,this.C())}},maxIterations:{get:function(){return this.dl},set:function(a){this.dl!==a&&0<=a&&(this.dl=a,this.C())}},epsilonDistance:{get:function(){return this.$m},set:function(a){this.$m!==a&&0Xt&&0Xt&&0a[this.Md]&&(this.Iq=a[ee]-1,this.Md=ee),a[ee]me)for(var Qe=me+1;QeFe;Qe--)at=ne[Qe],at.near===Ye&&at.Dj===Ye.Dj||Ce++;var mt;if(0<=ee)for(Fe=ne[me].sourceEdgesArrayAccess,Ye=0;YeXt||at===Xt&&Lt>kt)&&Ce++,bnat||Xt===at&&kt>Lt)&&Ce++}}}if(0>=ee){for(Fe=ne[me].destinationEdgesArrayAccess,Ye=0;YeXt||at===Xt&&Qe>bn)&&Ce++,ktat||Xt===at&&bn>Qe)&&Ce++)}for(ue[me*se+me]=Ce,Fe=me+1;Fe=ee){for(Ce=ne[me].destinationEdgesArrayAccess,jn=ne[Fe].destinationEdgesArrayAccess,Ye=0;Ye=ee&&(Fe=Ce.sourceEdgesArrayAccess);var Ye=null;0<=ee&&(Ye=Ce.destinationEdgesArrayAccess);var Qe=0,at=0,mt=Ce.near;if(mt!==null&&mt.layer===Ce.layer&&(Qe+=mt.column-1,at++),Fe!==null)for(mt=0;mt=ee&&(Fe=Ce.sourceEdgesArrayAccess);var Ye=null;0<=ee&&(Ye=Ce.destinationEdgesArrayAccess);var Qe=0,at=[],mt=Ce.near;if(mt!==null&&mt.layer===Ce.layer&&(at[Qe]=mt.column-1,Qe++),Ce=void 0,Fe!==null)for(mt=0;mt>1,ue[me]=Qe&1?at[Ye]:at[Ye-1]+at[Ye]>>1)}return Hv(a,y,ne),ue}function V1(a,y,ee,ne,se,ue){if(y.component===ne){if(y.component=ee,se)for(var me=y.destinationEdges;me.next();){var Ce=me.value,Fe=Ce.toVertex,Ye=y.layer-Fe.layer;Ce=a.linkMinLength(Ce),Ye===Ce&&V1(a,Fe,ee,ne,se,ue)}if(ue)for(me=y.sourceEdges;me.next();)Ce=me.value,Fe=Ce.fromVertex,Ye=Fe.layer-y.layer,Ce=a.linkMinLength(Ce),Ye===Ce&&V1(a,Fe,ee,ne,se,ue)}}function uC(a,y,ee,ne,se,ue){if(y.component===ne){if(y.component=ee,se)for(var me=y.destinationEdges;me.next();)uC(a,me.value.toVertex,ee,ne,se,ue);if(ue)for(y=y.sourceEdges;y.next();)uC(a,y.value.fromVertex,ee,ne,se,ue)}}Ys.prototype.removeCycles=function(){for(var a=this.network.edges.iterator;a.next();)a.value.rev=!1;switch(this.Dk){default:case fC:a=this.network;var y=0,ee=a.vertexes.count-1,ne=[];ne.length=ee+1;for(var se=a.vertexes.iterator;se.next();)se.value.valid=!0;for(;BT(a)!==null;){for(se=oS(a);se!==null;)ne[ee]=se,ee--,se.valid=!1,se=oS(a);for(se=nP(a);se!==null;)ne[y]=se,y++,se.valid=!1,se=nP(a);se=null;for(var ue=0,me=this.network.vertexes.iterator;me.next();){var Ce=me.value;if(Ce.valid){for(var Fe=0,Ye=Ce.destinationEdges;Ye.next();)Ye.value.toVertex.valid&&Fe++;Ye=0;for(var Qe=Ce.sourceEdges;Qe.next();)Qe.value.fromVertex.valid&&Ye++;(se===null||uey.toVertex.index&&(a.gm(y),y.rev=!0);break;case fS:for(ne=this.network.vertexes.iterator;ne.next();)a=ne.value,a.Ll=-1,a.finish=-1;for(a=this.network.edges.iterator;a.next();)a.value.forest=!1;for(this.Kn=0,ne.reset();ne.next();)y=ne.value,y.sourceEdges.count===0&&cC(this,y);for(ne.reset();ne.next();)y=ne.value,y.Ll===-1&&cC(this,y);for(a.reset();a.next();)ne=a.value,ne.forest||(y=ne.fromVertex,ee=y.finish,se=ne.toVertex,ue=se.finish,se.Llne){if(0>ne)for(y.reset();y.next();)y.value.layer-=ne;for(ne=[],y.reset();y.next();)ee=y.value,se=ne[ee.layer],se===void 0?ne[ee.layer]=[ee]:se.push(ee);for(ee=y=0;eeme&&V1(a,Ce,0,-1,!0,!1)}for(V1(a,y,1,-1,!0,!0);y.component!==0;){for(ue=0,ne=1/0,Ce=0,Fe=null,me=a.network.vertexes.iterator;me.next();){var Ye=me.value;if(Ye.component===1){var Qe=0,at=!1,mt=Ye.sourceEdgesArrayAccess;se=mt.length;for(var Lt=0;Ltue)&&!Qe&&(Ce=me,ue=Ye)}if(0>ne){for(ee.reset();ee.next();)ne=ee.value,ne.component===1&&(ne.layer-=se);y.component=0}else Ce.component=0}}}function oP(a,y,ee){return a.K===90?ee&&!y.rev||!ee&&y.rev?270:90:a.K===180?ee&&!y.rev||!ee&&y.rev?0:180:a.K===270?ee&&!y.rev||!ee&&y.rev?90:270:ee&&!y.rev||!ee&&y.rev?180:0}Ys.prototype.initializeIndices=function(){switch(this.Qk){default:case mC:for(var a=this.network.vertexes.iterator;a.next();){var y=a.value,ee=y.layer;y.index=this.tc[ee],this.tc[ee]++}break;case Z1:for(a=this.network.vertexes.iterator,y=this.Ia;0<=y;y--)for(a.reset();a.next();)ee=a.value,ee.layer===y&&ee.index===-1&&hC(this,ee);break;case vC:for(a=this.network.vertexes.iterator,y=0;y<=this.Ia;y++)for(a.reset();a.next();)ee=a.value,ee.layer===y&&ee.index===-1&&lS(this,ee)}};function hC(a,y){var ee=y.layer;for(y.index=a.tc[ee],a.tc[ee]++,y=y.destinationEdgesArrayAccess,ee=!0;ee;){ee=!1;for(var ne=0;neue.portFromColOffset&&(ee=!0,y[ne]=ue,y[ne+1]=se)}}for(ee=0;eeue.portToColOffset&&(ne=!0,y[ee]=ue,y[ee+1]=se)}for(ee=0;ee=me;ne--)ue=Df(this,ne,-1)||ue;for(se=this.countCrossings(),se>=a?lf(this,y):(a=se,y=Xh(this)),ue=!0;ue;)for(ue=!1,ne=ee;ne>=me;ne--)ue=Df(this,ne,1)||ue;for(se=this.countCrossings(),se>=a?lf(this,y):(a=se,y=Xh(this)),ue=!0;ue;)for(ue=!1,ne=me;ne<=ee;ne++)ue=Df(this,ne,1)||ue;for(se>=a?lf(this,y):(a=se,y=Xh(this)),ue=!0;ue;)for(ue=!1,ne=me;ne<=ee;ne++)ue=Df(this,ne,-1)||ue;for(se>=a?lf(this,y):(a=se,y=Xh(this)),ue=!0;ue;)for(ue=!1,ne=ee;ne>=me;ne--)ue=Df(this,ne,0)||ue;for(se>=a?lf(this,y):(a=se,y=Xh(this)),ue=!0;ue;)for(ue=!1,ne=me;ne<=ee;ne++)ue=Df(this,ne,0)||ue;se>=a?lf(this,y):(a=se,y=Xh(this))}break;default:case wE:for(ee=this.Ia,me=0,Ce=a+1;(ne=this.countCrossings())=me;ne--)ue=Df(this,ne,-1)||ue;for(se=this.countCrossings(),se>=a?lf(this,y):(a=se,y=Xh(this)),ue=!0;ue;)for(ue=!1,ne=ee;ne>=me;ne--)ue=Df(this,ne,1)||ue;for(se=this.countCrossings(),se>=a?lf(this,y):(a=se,y=Xh(this)),ue=!0;ue;)for(ue=!1,ne=me;ne<=ee;ne++)ue=Df(this,ne,1)||ue;for(se>=a?lf(this,y):(a=se,y=Xh(this)),ue=!0;ue;)for(ue=!1,ne=me;ne<=ee;ne++)ue=Df(this,ne,-1)||ue;for(se>=a?lf(this,y):(a=se,y=Xh(this)),ue=!0;ue;)for(ue=!1,ne=ee;ne>=me;ne--)ue=Df(this,ne,0)||ue;for(se>=a?lf(this,y):(a=se,y=Xh(this)),ue=!0;ue;)for(ue=!1,ne=me;ne<=ee;ne++)ue=Df(this,ne,0)||ue;se>=a?lf(this,y):(a=se,y=Xh(this))}}lf(this,y)};function uS(a,y,ee){var ne=Gv(a,y),se=a.tc[y],ue=tP(a,y,ee),me=lC(a,y,ee);for(ee=0;eeue+1&&(mt+=4*(_n-ue),Lt+=4*(_n-(ue+1)))}for(Yn=ne[ue].destinationEdges.iterator,Yn.reset();Yn.next();)if(_n=Yn.value,jn=_n.toVertex,_n.valid&&jn.layer===y){for(_n=0;ne[_n]!==jn;)_n++;_n===ue+1&&(Lt+=1)}for(Yn=ne[ue+1].sourceEdges.iterator,Yn.reset();Yn.next();)if(_n=Yn.value,jn=_n.fromVertex,_n.valid&&jn.layer===y){for(_n=0;ne[_n]!==jn;)_n++;_nue+1&&(mt+=4*(_n-(ue+1)),Lt+=4*(_n-ue))}for(Yn=ne[ue+1].destinationEdges.iterator,Yn.reset();Yn.next();)if(_n=Yn.value,jn=_n.toVertex,_n.valid&&jn.layer===y){for(_n=0;ne[_n]!==jn;)_n++;_n===ue&&(mt+=1)}_n=jn=0,Yn=me[ne[ue].index];var nr=Ce[ne[ue].index],Or=me[ne[ue+1].index],Xi=Ce[ne[ue+1].index];Yn!==-1&&(jn+=Math.abs(Yn-kt),_n+=Math.abs(Yn-gn)),nr!==-1&&(jn+=Math.abs(nr-kt),_n+=Math.abs(nr-gn)),Or!==-1&&(jn+=Math.abs(Or-Xt),_n+=Math.abs(Or-bn)),Xi!==-1&&(jn+=Math.abs(Xi-Xt),_n+=Math.abs(Xi-bn)),(Lt>1)+8*ne;this.Ra*=8}if(this.bg&2)for(ee=!0;ee;){for(ee=!1,y=this.Md+1;y<=this.Ia;y++)ee=K1(this,y,1)||ee;for(y=this.Md-1;0<=y;y--)ee=K1(this,y,-1)||ee;ee=K1(this,this.Md,0)||ee}if(this.bg&4){for(y=this.Md+1;y<=this.Ia;y++)cS(this,y,1);for(y=this.Md-1;0<=y;y--)cS(this,y,-1);cS(this,this.Md,0)}if(a&&(aP(this,-1),aP(this,1)),this.bg&2)for(ee=!0;ee;){for(ee=!1,ee=K1(this,this.Md,0)||ee,y=this.Md+1;y<=this.Ia;y++)ee=K1(this,y,0)||ee;for(y=this.Md-1;0<=y;y--)ee=K1(this,y,0)||ee}}else lP(this)};function K1(a,y,ee){for(var ne=!1;RT(a,y,ee);)ne=!0;return ne}function RT(a,y,ee){var ne,se=Gv(a,y),ue=a.tc[y],me=lC(a,y,-1);if(0ee)for(ne=0;nene-1||Qe-se[ne-1].column-1>at+a.nodeMinColumnSpace(se[ne-1],!1)?Lt=Qe-1:Lt=Qe,at=ne+1>=ue||se[ne+1].column-Qe-1>mt+a.nodeMinColumnSpace(se[ne+1],!0)?Qe+1:Qe;var kt=mt=0,Xt=0;if(0>=ee)for(var bn=se[ne].sourceEdges.iterator;bn.next();){var gn=bn.value,_n=gn.fromVertex;if(gn.valid&&_n.layer!==y){var jn=By(gn),Yn=gn.portFromColOffset;gn=gn.portToColOffset,_n=_n.column,mt+=(Math.abs(Qe+gn-(_n+Yn))+1)*jn,kt+=(Math.abs(Lt+gn-(_n+Yn))+1)*jn,Xt+=(Math.abs(at+gn-(_n+Yn))+1)*jn}}if(0<=ee)for(bn=se[ne].destinationEdges.iterator;bn.next();)gn=bn.value,_n=gn.toVertex,gn.valid&&_n.layer!==y&&(jn=By(gn),Yn=gn.portFromColOffset,gn=gn.portToColOffset,_n=_n.column,mt+=(Math.abs(Qe+Yn-(_n+gn))+1)*jn,kt+=(Math.abs(Lt+Yn-(_n+gn))+1)*jn,Xt+=(Math.abs(at+Yn-(_n+gn))+1)*jn);gn=Yn=jn=0,bn=me[se[ne].index],_n=Ce[se[ne].index],bn!==-1&&(jn+=Math.abs(bn-Qe),Yn+=Math.abs(bn-Lt),gn+=Math.abs(bn-at)),_n!==-1&&(jn+=Math.abs(_n-Qe),Yn+=Math.abs(_n-Lt),gn+=Math.abs(_n-at)),kt=me[ee]?Qe=Fe:Ye<=me[ee]&&(Qe=Ye));Qe!==Ce&&(ue=!0,ne[ee].column=Qe)}Hv(a,y,ne),a.normalize()}function kT(a,y){for(var ee=!0,ne=a.network.vertexes.iterator;ne.next();){var se=ne.value,ue=a.nodeMinColumnSpace(se,!0),me=a.nodeMinColumnSpace(se,!1);if(se.column-ue<=y&&se.column+me>=y){ee=!1;break}}if(a=!1,ee)for(ne.reset();ne.next();)ee=ne.value,ee.column>y&&(--ee.column,a=!0);return a}function FT(a,y){var ee=y+1,ne,se=[],ue=[];for(ne=0;ne<=a.Ia;ne++)se[ne]=!1,ue[ne]=!1;for(var me=a.network.vertexes.iterator;me.next();){ne=me.value;var Ce=ne.column-a.nodeMinColumnSpace(ne,!0),Fe=ne.column+a.nodeMinColumnSpace(ne,!1);Ce<=y&&Fe>=y&&(se[ne.layer]=!0),Ce<=ee&&Fe>=ee&&(ue[ne.layer]=!0)}for(Ce=!0,ee=!1,ne=0;ne<=a.Ia;ne++)Ce=Ce&&!(se[ne]&&ue[ne]);if(Ce)for(me.reset();me.next();)a=me.value,a.column>y&&(--a.column,ee=!0);return ee}function aP(a,y){for(var ee=0;ee<=a.Ra;ee++)for(;kT(a,ee););for(a.normalize(),ee=0;eeue?lf(a,se):mey)for(ee=a.Ra;0<=ee;ee--)for(se=Xh(a),ue=iS(a),ne=ue+1;ueue?lf(a,se):meee)for(ne.reset();ne.next();)se=ne.value,se.column+a.nodeMinColumnSpace(se,!1)>=y&&(se.component=a.le);for(a.le++,ne.reset();ne.next();)y=ne.value,y.component===-1&&(uC(a,y,a.le,-1,!0,!0),a.le++);var ue;for(y=[],ue=0;ueee)for(me=a.Ra;0ee)for(ne.reset();ne.next();)ee=ne.value,se[ee.component]&&(ee.column+=1)}function lP(a){for(var y=gr(),ee=a.fl.length,ne=0;ne<=ee;ne++)y[ne]=[];for(ne=a.network.vertexes.iterator;ne.next();){var se=ne.value;y[ee-se.layer][se.index]=se}ee=new Xr,dC(y,ee);var ue=null,me=null,Ce=null,Fe=null,Ye=(a.ve&1)!==0,Qe=(a.ve&2)!==0,at=(a.ve&4)!==0,mt=(a.ve&8)!==0;for(Ye&&(a.verticalAlignment(y,ee,!0),ue=hS(a,y,!0,!1)),y.reverse(),at&&(a.verticalAlignment(y,ee,!1),Ce=hS(a,y,!1,!1)),ne=Bi(y),se=ne.next();!se.done;se=ne.next())se.value.reverse();mt&&(a.verticalAlignment(y,ee,!1),Fe=hS(a,y,!1,!0)),y.reverse(),Qe&&(a.verticalAlignment(y,ee,!0),me=hS(a,y,!0,!0)),Tr(y),a.u(ue,me,Ce,Fe),a.network.vertexes.each(function(Lt){var kt=gr();Ye&&kt.push(ue.get(Lt)),Qe&&kt.push(me.get(Lt)),at&&kt.push(Ce.get(Lt)),mt&&kt.push(Fe.get(Lt)),kt.sort(function(bn,gn){return bn-gn});var Xt=kt.length;Xt=(kt[Math.floor((Xt-1)/2)]+kt[Math.ceil((Xt-1)/2)])/2,Tr(kt),Lt.zc=Xt})}function dC(a,y){for(var ee=a.length,ne=1;neQe)&&y.add(at);ue++}se=Qe}}}Ys.prototype.verticalAlignment=function(a,y,ee){_T(a),a=Bi(a);for(var ne=a.next();!ne.done;ne=a.next()){var se=-1;ne=Bi(ne.value);for(var ue=ne.next();!ue.done;ue=ne.next()){ue=ue.value;var me=ee?CE(ue):mS(ue),Ce=me.length;if(0=y[ee].length)&&(me=y[ee][0],me.sd===me)){me.sd.shift===1/0&&(me.sd.shift=0),me=ee,Ce=0;do{for(ue=y[me][Ce];ue.align!==ue.root;)ue=ue.align,me++,0a&&tn("Could not determine previous vertex in layer"),y[ee][a-1]}Ys.prototype.u=function(a){for(var y=[],ee=0;eeme;me++)if(y[me]){var Ce=zT(this,y[me],ne,se,me);Ceme;ue={delta:ue.delta},me++)y[me]&&(ue.delta=me===0||me===2?ne[ee]-ne[me]:se[ee]-se[me],ue.delta!==0&&y[me].each(function(Fe){return function(Ye){Ye.value+=Fe.delta}}(ue)));Tr(ne),Tr(se)};function zT(a,y,ee,ne,se){if(!y||y.count===0)return ee[se]=0,ne[se]=0,1/0;var ue=1/0,me=-1/0;return y.each(function(Ce){var Fe=Ce.key;Ce=Ce.value,Fe=a.K===90||a.K===270?Fe.width:Fe.height,Ceme&&(me=Ce+Fe)}),ee[se]=ue,ne[se]=me,me-ue}Ys.prototype.commitLayout=function(){if(this.setsPortSpots)for(var a=dS(this,!0),y=dS(this,!1),ee=this.network.edges.iterator;ee.next();){var ne=ee.value.link;ne!==null&&(ne.fromSpot=a,ne.toSpot=y)}this.commitNodes(),this.Gu(),this.isRouting&&this.commitLinks()};function dS(a,y){return a.K===270?y?du:xu:a.K===90?y?xu:du:a.K===180?y?Ws:Ku:y?Ku:Ws}Ys.prototype.commitNodes=function(){this.he=[],this.Ld=[],this.Kd=[],this.Ta=[];for(var a=0;a<=this.Ia;a++)this.he[a]=0,this.Ld[a]=0,this.Kd[a]=0,this.Ta[a]=0;for(a=this.network.vertexes.iterator;a.next();){var y=a.value,ee=y.layer;this.he[ee]=Math.max(this.he[ee],this.nodeMinLayerSpace(y,!0)),this.Ld[ee]=Math.max(this.Ld[ee],this.nodeMinLayerSpace(y,!1))}y=0,ee=this.ie;for(var ne=0;ne<=this.Ia;ne++){var se=ee;0>=this.he[ne]+this.Ld[ne]&&(se=0),0=at.bounds.bottom?(at=at.bounds.y+at.bounds.height,y.m(Xt++,Yn,at+Or),y.m(Xt++,Yn,at),y.m(Xt++,Yn,at-jn)):(y.m(Xt++,Yn,nr+Or),y.m(Xt++,Yn,nr),y.m(Xt++,Yn,nr-jn)):this.K===270?nr<=at.bounds.y?(at=at.bounds.y,y.m(Xt++,Yn,at-jn),y.m(Xt++,Yn,at),y.m(Xt++,Yn,at+Or)):(y.m(Xt++,Yn,nr-jn),y.m(Xt++,Yn,nr),y.m(Xt++,Yn,nr+Or)):this.K===0&&(Yn>=at.bounds.right?(at=at.bounds.x+at.bounds.width,y.m(Xt++,at+Or,nr),y.m(Xt++,at,nr),y.m(Xt++,at-jn,nr)):(y.m(Xt++,Yn+Or,nr),y.m(Xt++,Yn,nr),y.m(Xt++,Yn-jn,nr)));else{y.m(Xt++,gn,_n);var Xi=0;this.K===180||this.K===0?((this.K===180?Yn>=at.bounds.right:Yn<=at.bounds.x)&&(Xi=(this.K===0?-jn:Or)/2),y.m(Xt++,gn+Xi,nr)):((this.K===270?nr>=at.bounds.bottom:nr<=at.bounds.y)&&(Xi=(this.K===90?-jn:Or)/2),y.m(Xt++,Yn,_n+Xi)),y.m(Xt++,Yn,nr)}}else jn=Math.max(10,this.he[bn.layer]),Or=Math.max(10,this.Ld[bn.layer]),mt?this.K===180?(y.m(Xt++,Yn-jn-kt,nr),y.m(Xt++,Math.min(Yn-jn+kt/2,Yn),nr),y.m(Xt++,Yn,nr),y.m(Xt++,Yn,nr),y.m(Xt++,Math.max(Yn+Or-kt/2,Yn),nr),y.m(Xt++,Yn+Or+kt,nr)):this.K===90?(y.m(Xt++,Yn,nr+Or+kt),y.m(Xt++,Yn,Math.max(nr+Or-kt/2,nr)),y.m(Xt++,Yn,nr),y.m(Xt++,Yn,nr),y.m(Xt++,Yn,Math.min(nr-jn+kt/2,nr)),y.m(Xt++,Yn,nr-jn-kt)):this.K===270?(y.m(Xt++,Yn,nr-jn-kt),y.m(Xt++,Yn,Math.min(nr-jn+kt/2,nr)),y.m(Xt++,Yn,nr),y.m(Xt++,Yn,nr),y.m(Xt++,Yn,Math.max(nr+Or-kt/2,nr)),y.m(Xt++,Yn,nr+Or+kt)):(y.m(Xt++,Yn+Or+kt,nr),y.m(Xt++,Math.max(Yn+Or-kt/2,Yn),nr),y.m(Xt++,Yn,nr),y.m(Xt++,Yn,nr),y.m(Xt++,Math.min(Yn-jn+kt/2,Yn),nr),y.m(Xt++,Yn-jn-kt,nr)):y.m(Xt++,Yn,nr)}at=bn}(Ce===null||Ye!==su||Lt)&&(gn=y.i(Xt-1).x,_n=y.i(Xt-1).y,Yn=y.i(Xt).x,nr=y.i(Xt).y,Lt?(kt=this.Ld[Qe.layer],this.K===180||this.K===0?(Lt=_n,Lt>=Qe.bounds.y&&Lt<=Qe.bounds.bottom&&(this.K===180?Yn>=Qe.bounds.x:Yn<=Qe.bounds.right)&&(at=Qe.centerX+(this.K===180?-kt:kt),Lt=Qe.bounds.x&&Lt<=Qe.bounds.right&&(this.K===270?nr>=Qe.bounds.y:nr<=Qe.bounds.bottom)&&(at=Qe.centerY+(this.K===270?-kt:kt),Lt=Qe.bounds.x?(at=Qe.bounds.x+Qe.bounds.width,y.L(Xt-2,at,_n),y.L(Xt-1,at+Or,_n)):this.K===90&&nr<=Qe.bounds.bottom?(at=Qe.bounds.y,y.L(Xt-2,gn,at),y.L(Xt-1,gn,at-jn)):this.K===270&&nr>=Qe.bounds.y?(at=Qe.bounds.y+Qe.bounds.height,y.L(Xt-2,gn,at),y.L(Xt-1,gn,at+Or)):this.K===0&&Yn<=Qe.bounds.right&&(at=Qe.bounds.x,y.L(Xt-2,at,_n),y.L(Xt-1,at-jn,_n))):(jn=Math.max(10,this.he[Qe.layer]),Or=Math.max(10,this.Ld[Qe.layer]),Lt=0,this.K===180||this.K===0?((this.K===180?Yn<=Qe.bounds.x:Yn>=Qe.bounds.right)&&(Lt=(this.K===0?Or:-jn)/2),y.m(Xt++,Yn+Lt,_n)):((this.K===270?nr<=Qe.bounds.y:nr>=Qe.bounds.bottom)&&(Lt=(this.K===90?Or:-jn)/2),y.m(Xt++,gn,nr+Lt)),y.m(Xt++,Yn,nr)))}else{for(;Qe!==null&&Qe!==at;){for(jn=bn=null,Qe=Qe.destinationEdges.iterator;Qe.next()&&(gn=Qe.value,gn.link!==ee.link||(bn=gn.toVertex,jn=gn.fromVertex,jn.node!==null&&(jn=null),bn.node!==null)););if(bn===null)break;bn!==at&&(gn=y.i(Xt-1).x,_n=y.i(Xt-1).y,Yn=bn.centerX,nr=bn.centerY,Lt?this.K===180||this.K===0?(jn!==null?jn.centerY:_n)!==nr&&(jn=this.Ta[bn.layer]+this.Rf.x,Xt===y.firstPickIndex+1&&(jn=this.K===0?Math.max(jn,gn):Math.min(jn,gn)),y.m(Xt++,jn,_n),y.m(Xt++,jn,nr)):(jn!==null?jn.centerX:gn)!==Yn&&(jn=this.Ta[bn.layer]+this.Rf.y,Xt===y.firstPickIndex+1&&(jn=this.K===90?Math.max(jn,_n):Math.min(jn,_n)),y.m(Xt++,gn,jn),y.m(Xt++,Yn,jn)):(jn=Math.max(10,this.he[bn.layer]),Or=Math.max(10,this.Ld[bn.layer]),mt?this.K===180?(y.m(Xt++,Yn+Or+kt,nr),y.m(Xt++,Math.max(Yn+Or-kt/2,Yn),nr),y.m(Xt++,Yn,nr),y.m(Xt++,Yn,nr),y.m(Xt++,Math.min(Yn-jn+kt/2,Yn),nr),y.m(Xt++,Yn-jn-kt,nr)):this.K===90?(y.m(Xt++,Yn,nr-jn-kt),y.m(Xt++,Yn,Math.min(nr-jn+kt/2,nr)),y.m(Xt++,Yn,nr),y.m(Xt++,Yn,nr),y.m(Xt++,Yn,Math.max(nr+Or-kt/2,nr)),y.m(Xt++,Yn,nr+Or+kt)):this.K===270?(y.m(Xt++,Yn,nr+Or+kt),y.m(Xt++,Yn,Math.max(nr+Or-kt/2,nr)),y.m(Xt++,Yn,nr),y.m(Xt++,Yn,nr),y.m(Xt++,Yn,Math.min(nr-jn+kt/2,nr)),y.m(Xt++,Yn,nr-jn-kt)):(y.m(Xt++,Yn-jn-kt,nr),y.m(Xt++,Math.min(Yn-jn+kt/2,Yn),nr),y.m(Xt++,Yn,nr),y.m(Xt++,Yn,nr),y.m(Xt++,Math.max(Yn+Or-kt/2,Yn),nr),y.m(Xt++,Yn+Or+kt,nr)):this.K===180?(y.m(Xt++,Yn+Or,nr),y.m(Xt++,Yn-jn,nr)):this.K===90?(y.m(Xt++,Yn,nr-jn),y.m(Xt++,Yn,nr+Or)):this.K===270?(y.m(Xt++,Yn,nr+Or),y.m(Xt++,Yn,nr-jn)):(y.m(Xt++,Yn-jn,nr),y.m(Xt++,Yn+Or,nr)))),Qe=bn}Lt&&(gn=y.i(Xt-1).x,_n=y.i(Xt-1).y,Yn=y.i(Xt).x,nr=y.i(Xt).y,this.K===180||this.K===0?_n!==nr&&(jn=this.K===0?Math.min(Math.max((Yn+gn)/2,this.Ta[at.layer]+this.Rf.x),Yn):Math.max(Math.min((Yn+gn)/2,this.Ta[at.layer]+this.Rf.x),Yn),y.m(Xt++,jn,_n),y.m(Xt++,jn,nr)):gn!==Yn&&(jn=this.K===90?Math.min(Math.max((nr+_n)/2,this.Ta[at.layer]+this.Rf.y),nr):Math.max(Math.min((nr+_n)/2,this.Ta[at.layer]+this.Rf.y),nr),y.m(Xt++,gn,jn),y.m(Xt++,Yn,jn)))}ne!==null&&mt&&4<=y.pointsCount&&(me!==null&&(me=Ye===su?y.getLinkPointFromPoint(se,me,me.ga(cs),y.i(3),!0):y.i(0),Ye===su&&(Ye=y.i(2),ne=y.i(3),this.direction===90||this.direction===270?(y.L(1,(me.x+Ye.x)/2,Ye.y),y.L(2,ne.x,(Ye.y+ne.y)/2)):(y.L(1,Ye.x,(me.y+Ye.y)/2),y.L(2,(Ye.x+ne.x)/2,ne.y))),me.w()||me.set(se.actualBounds.center),y.L(0,me.x,me.y)),Ce!==null&&(se=Fe===su?y.getLinkPointFromPoint(ue,Ce,Ce.ga(cs),y.i(y.pointsCount-4),!1):y.i(y.pointsCount-1),Fe===su&&(Ce=y.i(y.pointsCount-3),Fe=y.i(y.pointsCount-4),this.direction===90||this.direction===270?(y.L(y.pointsCount-2,(se.x+Ce.x)/2,Ce.y),y.L(y.pointsCount-2,Fe.x,(Ce.y+Fe.y)/2)):(y.L(y.pointsCount-2,Ce.x,(se.y+Ce.y)/2),y.L(y.pointsCount-3,(Ce.x+Fe.x)/2,Fe.y))),se.w()||se.set(ue.actualBounds.center),y.L(y.pointsCount-1,se.x,se.y))),y.zf(),ee.commit()}}}this.avoidOrthogonalOverlaps()},Ys.prototype.avoidOrthogonalOverlaps=function(){if(!(0>=this.linkSpacing)){for(var a=new Zr,y=this.network.edges.iterator;y.next();){var ee=y.value.link;ee!==null&&ee.isOrthogonal&&!a.contains(ee)&&a.add(ee)}if(0ue.y&&(Qe=Ye.y>ue.y?0:me.xue.x&&(Qe=Ye.x>ue.x?0:me.yy.layer?1:a.rdy.rd?1:a.Icy.Ic?1:0:0},Rt.Ux=function(a,y){return a instanceof rv&&y instanceof rv&&a!==y?a.firsty.first||a.jy.j||a.rdy.rd?1:a.Icy.Ic?1:0:0},Rt.Js=function(a,y){return a instanceof rv&&y instanceof rv&&a!==y?a.jcy.jc||a.jy.j||a.rdy.rd?1:a.Icy.Ic?1:0:0},Rt.B=function(a,y){return a-=y,-1a},Rt.zi=function(a,y,ee,ne){var se=a.length,ue=ne-ee;if(!(1>=ue))if((0>ee||ee>=se-1)&&tn("not in range 0 <= from < length: "+ee),ue===2)ne=a[ee],se=a[ee+1],0=se)a.sort(y);else for(ee=a.slice(0,ne),ee.sort(y),y=0;y=se)for(ne=a.slice(ee),ne.sort(y),y=ee;y=a.He.length){for(var ne=[],se=0;sea&&(this.bg=a,this.C())}},alignOption:{get:function(){return this.ve},set:function(a){this.ve!==a&&0<=a&&16>a&&(this.ve=a,this.C())}},setsPortSpots:{get:function(){return this.sf},set:function(a){this.sf!==a&&(this.sf=a,this.C())}},linkSpacing:{get:function(){return this.Cn},set:function(a){this.Cn!==a&&0<=a&&(this.Cn=a,this.C())}},maxLayer:{get:function(){return this.Ia}},maxIndex:{get:function(){return this.Iq}},maxColumn:{get:function(){return this.Ra}},minIndexLayer:{get:function(){return this.Hn}},maxIndexLayer:{get:function(){return this.Md}}});var fS=new wr(Ys,"CycleDepthFirst",0),fC=new wr(Ys,"CycleGreedy",1),AE=new wr(Ys,"CycleFromLayers",2),gC=new wr(Ys,"LayerOptimalLinkLength",0),SE=new wr(Ys,"LayerLongestPathSink",1),pC=new wr(Ys,"LayerLongestPathSource",2),Z1=new wr(Ys,"InitDepthFirstOut",0),vC=new wr(Ys,"InitDepthFirstIn",1),mC=new wr(Ys,"InitNaive",2),gS=new wr(Ys,"AggressiveNone",0),wE=new wr(Ys,"AggressiveLess",1),pS=new wr(Ys,"AggressiveMore",2),jT=8;Ys.className="LayeredDigraphLayout",Ys.CycleDepthFirst=fS,Ys.CycleGreedy=fC,Ys.CycleFromLayers=AE,Ys.LayerOptimalLinkLength=gC,Ys.LayerLongestPathSink=SE,Ys.LayerLongestPathSource=pC,Ys.InitDepthFirstOut=Z1,Ys.InitDepthFirstIn=vC,Ys.InitNaive=mC,Ys.AggressiveNone=gS,Ys.AggressiveLess=wE,Ys.AggressiveMore=pS,Ys.PackNone=0,Ys.PackExpand=1,Ys.PackStraighten=2,Ys.PackMedian=4,Ys.PackAll=15,Ys.AlignNone=0,Ys.AlignUpperLeft=1,Ys.AlignUpperRight=2,Ys.AlignLowerLeft=4,Ys.AlignLowerRight=8,Ys.AlignAll=15;function rv(){this.index=this.Ic=this.rd=this.jc=this.first=this.layer=0,this.link=null,this.j=0}rv.className="SegInfo";function Y1(a){Sl.call(this,a)}We(Y1,Sl),Y1.prototype.createVertex=function(){return new If(this)},Y1.prototype.createEdge=function(){return new m0(this)},Y1.className="LayeredDigraphNetwork";function If(a){uc.call(this,a),this.$n=this.bo=this.ao=this.co=null,this.Za=this.Ag=this.Ig=-1,this.u=NaN,this.F=null,this.valid=!1,this.finish=this.Ll=NaN,this.Dj=0,this.dv=this.ev=null}We(If,uc);function hP(a,y){return a.index-y.index}function vS(a,y){if(!a.$n){for(var ee=[],ne=Bi(a.destinationEdgesArrayAccess),se=ne.next();!se.done;se=ne.next())se=se.value,se.valid&&ee.push(se);a.$n=ee}for(a=Bi(a.$n),ee=a.next();!ee.done;ee=a.next())if(ee=ee.value,ee.toVertex===y)return ee;tn("Unable to find destination edge to given vertex")}function CE(a){if(!a.co){for(var y=[],ee=Bi(a.sourceEdgesArrayAccess),ne=ee.next();!ne.done;ne=ee.next())ne=ne.value,ne.valid&&y.push(ne.fromVertex);y.sort(hP),a.co=y}return a.co}function mS(a){if(!a.ao){for(var y=[],ee=Bi(a.destinationEdgesArrayAccess),ne=ee.next();!ne.done;ne=ee.next())ne=ne.value,ne.valid&&y.push(ne.toVertex);y.sort(hP),a.ao=y}return a.ao}If.prototype.Cl=function(a){uc.prototype.Cl.call(this,a),this.bo=this.co=null},If.prototype.Kl=function(a){uc.prototype.Kl.call(this,a),this.bo=this.co=null},If.prototype.zl=function(a){uc.prototype.zl.call(this,a),this.$n=this.ao=null},If.prototype.Jl=function(a){uc.prototype.Jl.call(this,a),this.$n=this.ao=null},De.Object.defineProperties(If.prototype,{layer:{get:function(){return this.Ig},set:function(a){this.Ig!==a&&(this.Ig=a)}},column:{get:function(){return this.Ag},set:function(a){this.Ag!==a&&(this.Ag=a)}},index:{get:function(){return this.Za},set:function(a){this.Za!==a&&(this.Za=a)}},component:{get:function(){return this.u},set:function(a){this.u!==a&&(this.u=a)}},near:{get:function(){return this.F},set:function(a){this.F!==a&&(this.F=a)}}}),If.prototype.deleteDestinationEdge=If.prototype.Jl,If.prototype.addDestinationEdge=If.prototype.zl,If.prototype.deleteSourceEdge=If.prototype.Kl,If.prototype.addSourceEdge=If.prototype.Cl,If.className="LayeredDigraphVertex";function m0(a){Cd.call(this,a),this.j=this.ia=this.Ha=!1,this.V=this.u=NaN,this.F=this.o=0}We(m0,Cd),De.Object.defineProperties(m0.prototype,{fromVertex:{get:function(){return this.kd},set:function(a){this.kd!==a&&(this.kd=a)}},toVertex:{get:function(){return this.qd},set:function(a){this.qd!==a&&(this.qd=a)}},valid:{get:function(){return this.Ha},set:function(a){this.Ha!==a&&(this.Ha=a)}},rev:{get:function(){return this.ia},set:function(a){this.ia!==a&&(this.ia=a)}},forest:{get:function(){return this.j},set:function(a){this.j!==a&&(this.j=a)}},portFromPos:{get:function(){return this.u},set:function(a){this.u!==a&&(this.u=a)}},portToPos:{get:function(){return this.V},set:function(a){this.V!==a&&(this.V=a)}},portFromColOffset:{get:function(){return this.o},set:function(a){this.o!==a&&(this.o=a)}},portToColOffset:{get:function(){return this.F},set:function(a){this.F!==a&&(this.F=a)}}}),m0.className="LayeredDigraphEdge";function ls(a){Wl.call(this),this.Ub=new Xr,this.Wn=PE,this.ud=yp,this.vo=zy,this.Bq=CC,this.$v=[],this.td=!0,this.Rb=IE,this.$d=new Ri(10,10).freeze();var y=new jy(this);this.W=new Jf(y),this.Y=new Jf(y),this.ru=[],a&&Object.assign(this,a)}We(ls,Wl),ls.prototype.cloneProtected=function(a){Wl.prototype.cloneProtected.call(this,a),a.Wn=this.Wn,a.vo=this.vo,a.Bq=this.Bq,a.td=this.td,a.Rb=this.Rb,a.$d.assign(this.$d),a.W.copyInheritedPropertiesFrom(this.W),a.Y.copyInheritedPropertiesFrom(this.Y)},ls.prototype.qb=function(a){a.classType===ls?a.name.indexOf("Alignment")===0?this.alignment=a:a.name.indexOf("Arrangement")===0?this.arrangement=a:a.name.indexOf("Compaction")===0?this.compaction=a:a.name.indexOf("Path")===0?this.path=a:a.name.indexOf("Sorting")===0?this.sorting=a:a.name.indexOf("Style")===0?this.treeStyle=a:tn("Unknown enum value: "+a):Wl.prototype.qb.call(this,a)},ls.prototype.createNetwork=function(){return new jy(this)},ls.prototype.makeNetwork=function(a){function y(ne){if(ne instanceof qi)return!ne.isLinkLabel&&ne.category!=="Comment";if(ne instanceof Oi){var se=ne.fromNode;return se===null||se.isLinkLabel||se.category==="Comment"?!1:(ne=ne.toNode,!(ne===null||ne.isLinkLabel||ne.category==="Comment"))}return!1}var ee=this.createNetwork();return a instanceof Mr?(ee.lg(a.nodes,!0,y),ee.lg(a.links,!0,y)):a instanceof ci?ee.lg(a.memberParts,!1,y):ee.lg(a.iterator,!1,y),ee},ls.prototype.doLayout=function(a){this.network===null&&(this.network=this.makeNetwork(a)),this.arrangement!==wS&&(this.arrangementOrigin=this.initialOrigin(this.arrangementOrigin));var y=this.diagram;if(y===null&&a instanceof Mr&&(y=a),this.path===PE&&y!==null?this.ud=y.isTreePathToChildren?yp:ky:this.ud=this.path===PE?yp:this.path,0y.level)return!1;a.removeChild(ee.parent,ee)}return!0}ls.prototype.removeChild=function(a,y){if(a!==null&&y!==null){for(var ee=a.children,ne=0,se=0;sese?EC(this,a,me,ya,gn,_n):yS(this,a,me,ya,gn,_n),ya=_n.x,gn=_n.width,_n=_n.height;break;case av:for(Yn=0;Ynat&&(poPc&&(Ry(a,-Pc,0,La,zs-1),ES(Yn,-Pc,0),ES(nr,-Pc,0),Pc=0)}xl.S.h(Pc,ao),gn=Math.max(gn,Or),_n=Math.max(_n,jn+(Di===0?0:kt)+fc.height),po=Or}else 0at&&(aoPc&&(Ry(a,0,-Pc,La,zs-1),ES(Yn,0,-Pc),ES(nr,0,-Pc),Pc=0)),xl.S.h(po,Pc),_n=Math.max(_n,Xi),gn=Math.max(gn,jn+(Di===0?0:kt)+fc.width),ao=Xi;hi++}switch(0Ye&&(Ye=0),135Xt&&(Xt=0),Fe===sv&&(Ce+=mt/2+a.focus.y),me+=ne+ee):y?(a.comments===null?ne>gn&&(gn=Of(Fe,ne-gn,0),me=gn.x,Ce=gn.y,gn=ne,Ye=0):gn=AC(a,gn,Ye),0>Ye&&(me-=Ye,Ye=0),135_n&&(_n=Of(Fe,0,bn-_n),me=_n.x,Ce=_n.y,_n=bn,Xt=0):_n=SC(a,_n,Xt),0>Xt&&(Ce-=Xt,Xt=0),me+=ne+ee),0se[0].x?se[2].assign(se[1]):se[1].assign(se[2])),se[3].yse[0].x?se[3].assign(se[2]):se[2].assign(se[3])),Di[0].h(Ye+ne,0),Di[1].h(Di[0].x,bn),Di[2].yse[0].y?se[2].assign(se[1]):se[1].assign(se[2])),se[3].xse[0].y?se[3].assign(se[2]):se[2].assign(se[3])),Di[0].h(0,Xt+bn),Di[1].h(ne,Di[0].y),Di[2].xne?EC(a,y,se,hi,jn,Yn):yS(a,y,se,hi,jn,Yn),hi=Yn.x,jn=Yn.width,Yn=Yn.height;break;case av:for(mt=0;mtmt&&(Ormt&&(Xiat&&(at=0),135gn&&(gn=0)),y.la.h(at,gn),y.Da.h(jn,Yn)}}ls.prototype.customAlignment=function(a,y,ee,ne,se){return[y,ee,ne,se]};function EC(a,y,ee,ne,se,ue){var me=ee.length;if(me===0)return new Pr(ne,0,se,ue);if(me===1)return y=ee[0],se=y.Da.width,ue=y.Da.height,new Pr(ne,0,se,ue);for(var Ce=y.nodeSpacing,Fe=y.rowSpacing,Ye=bg(y)===90,Qe=0,at=0,mt=0,Lt=0;LtYe&&(se-=Ye),ue=Math.max(ue,Math.max(Lt,mt)+a+me.height),0>ee.S.x&&(ne=bE(y,ee.S.x,!1,ne,Ce))):(ee.S.h(se+a,ne+Ce/2-ee.focus.y-ee.la.y),se=Math.max(se,Math.max(kt,at)+a+me.width),mt=ne+Ce/2-ee.focus.y-ee.la.y,ue=Math.max(ue,mt+me.height),0>mt&&(ue-=mt),0>ee.S.y&&(ne=bE(y,ee.S.y,!0,ne,Ce)))),new Pr(ne,0,se,ue)}function yS(a,y,ee,ne,se,ue){var me=ee.length;if(me===0)return new Pr(ne,0,se,ue);if(me===1)return ee=ee[0],se=ee.Da.width,ue=ee.Da.height,new Pr(ne,0,se,ue);for(var Ce=y.nodeSpacing,Fe=y.rowSpacing,Ye=bg(y)===270,Qe=0,at=0,mt=0,Lt=0;Ltat&&(se-=at),ue=Math.max(ue,Math.abs(Math.min(Lt,mt))+a+Qe.height),0>Fe.S.x&&(ne=bE(y,Fe.S.x,!1,ne,Ce))):(Fe.S.h(-se-Qe.width-a,ne+Ce/2-Fe.focus.y-Fe.la.y),se=Math.max(se,Math.abs(Math.min(kt,at))+a+Qe.width),mt=ne+Ce/2-Fe.focus.y-Fe.la.y,ue=Math.max(ue,mt+Qe.height),0>mt&&(ue-=mt),0>Fe.S.y&&(ne=bE(y,Fe.S.y,!0,ne,Ce)))),y=0;yy&&(y=ee+a.width),0>ee&&(y-=ee),y;case Vp:return a.width>y?a.width:y;case Kp:return 2*a.focus.x>y?a.width:y+a.width-2*a.focus.x;case ov:case Zp:return Math.max(a.width,Math.max(y,ee+a.width)-Math.min(0,ee));case av:return a.width-a.focus.x+a.nodeSpacing/2+y;case sv:return Math.max(a.width,a.focus.x+a.nodeSpacing/2+y);default:return y}}function SC(a,y,ee){switch(a.alignment){case Fy:case q1:return ee+a.height>y&&(y=ee+a.height),0>ee&&(y-=ee),y;case Vp:return a.height>y?a.height:y;case Kp:return 2*a.focus.y>y?a.height:y+a.height-2*a.focus.y;case ov:case Zp:return Math.max(a.height,Math.max(y,ee+a.height)-Math.min(0,ee));case av:return a.height-a.focus.y+a.nodeSpacing/2+y;case sv:return Math.max(a.height,a.focus.y+a.nodeSpacing/2+y);default:return y}}function Of(a,y,ee){switch(a){case q1:y/=2,ee/=2;break;case Fy:y/=2,ee/=2;break;case Vp:ee=y=0;break;case Kp:break;default:tn("Unhandled alignment value "+a.toString())}return new fn(y,ee)}function iv(a,y,ee,ne,se,ue){y=Of(y,ee,ne),Ry(a,y.x,y.y,se,ue)}function Ry(a,y,ee,ne,se){if(y!==0||ee!==0)for(a=a.children;ne<=se;ne++){var ue=a[ne].S;ue.x+=y,ue.y+=ee}}function xS(a,y,ee,ne){var se=y.parent;switch(a.ud){case yp:for(a=y.sourceEdges;a.next();)y=a.value,y.fromVertex===se&&y.relativePoint.h(ee,ne);break;case ky:for(a=y.destinationEdges;a.next();)y=a.value,y.toVertex===se&&y.relativePoint.h(ee,ne);break;default:tn("Unhandled path value "+a.ud.toString())}}function ES(a,y,ee){for(var ne=0;neat.length||Lt===null||2>Lt.length))for(se=ee=0;eeYe&&ue.y<_n?jn=Fe+(ue.y-Ye)/(_n-Ye)*(bn-Fe)-ue.x:Ye>ue.y&&Yey.length||ee===null||2>ee.length)ne=null;else{for(Qe=wu(a,y.length+ee.length),ne=ue=Fe=0;ueFe;)Ye=ee[ue++],Qe[ne++].h(Ye.x+se,Ye.y);for(ee=wu(a,ne),Fe=0;Feat.length||ue===null||2>ue.length)se=null;else{for(Qe=wu(a,at.length+ue.length),se=Ye=ee=0;eeue;)Fe=at[ee++],Qe[se++].h(Fe.x,Fe.y);for(ue=wu(a,se),ee=0;eeat.length||Lt===null||2>Lt.length))for(se=ee=0;eeFe&&ue.xue.x&&Fey.length||ee===null||2>ee.length)ne=null;else{for(Qe=wu(a,y.length+ee.length),ne=ue=Fe=0;ueFe;)Ye=ee[ue++],Qe[ne++].h(Ye.x,Ye.y+se);for(ee=wu(a,ne),Fe=0;Feat.length||ue===null||2>ue.length)se=null;else{for(Qe=wu(a,at.length+ue.length),se=Ye=ee=0;eeue;)Fe=at[ee++],Qe[se++].h(Fe.x,Fe.y);for(ue=wu(a,se),ee=0;ee=a?0:135>=a?90:225>=a?180:315>=a?270:0}ls.prototype.computeLayerSpacing=function(a){var y=bg(a);y=y===90||y===270;var ee=a.layerSpacing;if(0=a&&(this.W.nodeIndentPastParent=a,this.C())}},nodeSpacing:{get:function(){return this.W.nodeSpacing},set:function(a){this.W.nodeSpacing!==a&&(this.W.nodeSpacing=a,this.C())}},layerSpacing:{get:function(){return this.W.layerSpacing},set:function(a){this.W.layerSpacing!==a&&(this.W.layerSpacing=a,this.C())}},layerSpacingParentOverlap:{get:function(){return this.W.layerSpacingParentOverlap},set:function(a){this.W.layerSpacingParentOverlap!==a&&0<=a&&1>=a&&(this.W.layerSpacingParentOverlap=a,this.C())}},compaction:{get:function(){return this.W.compaction},set:function(a){this.W.compaction===a||a!==_y&&a!==$1||(this.W.compaction=a,this.C())}},breadthLimit:{get:function(){return this.W.breadthLimit},set:function(a){this.W.breadthLimit!==a&&0<=a&&(this.W.breadthLimit=a,this.C())}},rowSpacing:{get:function(){return this.W.rowSpacing},set:function(a){this.W.rowSpacing!==a&&(this.W.rowSpacing=a,this.C())}},rowIndent:{get:function(){return this.W.rowIndent},set:function(a){this.W.rowIndent!==a&&0<=a&&(this.W.rowIndent=a,this.C())}},commentSpacing:{get:function(){return this.W.commentSpacing},set:function(a){this.W.commentSpacing!==a&&(this.W.commentSpacing=a,this.C())}},commentMargin:{get:function(){return this.W.commentMargin},set:function(a){this.W.commentMargin!==a&&(this.W.commentMargin=a,this.C())}},setsPortSpot:{get:function(){return this.W.setsPortSpot},set:function(a){this.W.setsPortSpot!==a&&(this.W.setsPortSpot=a,this.C())}},portSpot:{get:function(){return this.W.portSpot},set:function(a){this.W.portSpot.D(a)||(this.W.portSpot=a,this.C())}},setsChildPortSpot:{get:function(){return this.W.setsChildPortSpot},set:function(a){this.W.setsChildPortSpot!==a&&(this.W.setsChildPortSpot=a,this.C())}},childPortSpot:{get:function(){return this.W.childPortSpot},set:function(a){this.W.childPortSpot.D(a)||(this.W.childPortSpot=a,this.C())}},alternateSorting:{get:function(){return this.Y.sorting},set:function(a){this.Y.sorting===a||a!==J1&&a!==ME&&a!==LE&&!TE||(this.Y.sorting=a,this.C())}},alternateComparer:{get:function(){return this.Y.comparer},set:function(a){this.Y.comparer!==a&&(this.Y.comparer=a,this.C())}},alternateAngle:{get:function(){return this.Y.angle},set:function(a){this.Y.angle===a||a!==0&&a!==90&&a!==180&&a!==270||(this.Y.angle=a,this.C())}},alternateAlignment:{get:function(){return this.Y.alignment},set:function(a){this.Y.alignment!==a&&(this.Y.alignment=a,this.C())}},alternateNodeIndent:{get:function(){return this.Y.nodeIndent},set:function(a){this.Y.nodeIndent!==a&&0<=a&&(this.Y.nodeIndent=a,this.C())}},alternateNodeIndentPastParent:{get:function(){return this.Y.nodeIndentPastParent},set:function(a){this.Y.nodeIndentPastParent!==a&&0<=a&&1>=a&&(this.Y.nodeIndentPastParent=a,this.C())}},alternateNodeSpacing:{get:function(){return this.Y.nodeSpacing},set:function(a){this.Y.nodeSpacing!==a&&(this.Y.nodeSpacing=a,this.C())}},alternateLayerSpacing:{get:function(){return this.Y.layerSpacing},set:function(a){this.Y.layerSpacing!==a&&(this.Y.layerSpacing=a,this.C())}},alternateLayerSpacingParentOverlap:{get:function(){return this.Y.layerSpacingParentOverlap},set:function(a){this.Y.layerSpacingParentOverlap!==a&&0<=a&&1>=a&&(this.Y.layerSpacingParentOverlap=a,this.C())}},alternateCompaction:{get:function(){return this.Y.compaction},set:function(a){this.Y.compaction===a||a!==_y&&a!==$1||(this.Y.compaction=a,this.C())}},alternateBreadthLimit:{get:function(){return this.Y.breadthLimit},set:function(a){this.Y.breadthLimit!==a&&0<=a&&(this.Y.breadthLimit=a,this.C())}},alternateRowSpacing:{get:function(){return this.Y.rowSpacing},set:function(a){this.Y.rowSpacing!==a&&(this.Y.rowSpacing=a,this.C())}},alternateRowIndent:{get:function(){return this.Y.rowIndent},set:function(a){this.Y.rowIndent!==a&&0<=a&&(this.Y.rowIndent=a,this.C())}},alternateCommentSpacing:{get:function(){return this.Y.commentSpacing},set:function(a){this.Y.commentSpacing!==a&&(this.Y.commentSpacing=a,this.C())}},alternateCommentMargin:{get:function(){return this.Y.commentMargin},set:function(a){this.Y.commentMargin!==a&&(this.Y.commentMargin=a,this.C())}},alternateSetsPortSpot:{get:function(){return this.Y.setsPortSpot},set:function(a){this.Y.setsPortSpot!==a&&(this.Y.setsPortSpot=a,this.C())}},alternatePortSpot:{get:function(){return this.Y.portSpot},set:function(a){this.Y.portSpot.D(a)||(this.Y.portSpot=a,this.C())}},alternateSetsChildPortSpot:{get:function(){return this.Y.setsChildPortSpot},set:function(a){this.Y.setsChildPortSpot!==a&&(this.Y.setsChildPortSpot=a,this.C())}},alternateChildPortSpot:{get:function(){return this.Y.childPortSpot},set:function(a){this.Y.childPortSpot.D(a)||(this.Y.childPortSpot=a,this.C())}}});var PE=new wr(ls,"PathDefault",-1),yp=new wr(ls,"PathDestination",0),ky=new wr(ls,"PathSource",1),J1=new wr(ls,"SortingForwards",10),ME=new wr(ls,"SortingReverse",11),LE=new wr(ls,"SortingAscending",12),TE=new wr(ls,"SortingDescending",13),q1=new wr(ls,"AlignmentCenterSubtrees",20),Fy=new wr(ls,"AlignmentCenterChildren",21),Vp=new wr(ls,"AlignmentStart",22),Kp=new wr(ls,"AlignmentEnd",23),ov=new wr(ls,"AlignmentBus",24),Zp=new wr(ls,"AlignmentBusBranching",25),av=new wr(ls,"AlignmentTopLeftBus",26),sv=new wr(ls,"AlignmentBottomRightBus",27),_y=new wr(ls,"CompactionNone",30),$1=new wr(ls,"CompactionBlock",31),zy=new wr(ls,"StyleLayered",40),DE=new wr(ls,"StyleLastParents",41),Qh=new wr(ls,"StyleAlternating",42),SS=new wr(ls,"StyleRootOnly",43),IE=new wr(ls,"ArrangementVertical",50),ah=new wr(ls,"ArrangementHorizontal",51),wS=new wr(ls,"ArrangementFixedRoots",52),CC=new wr(ls,"LayerIndividual",60),OE=new wr(ls,"LayerSiblings",61),Kv=new wr(ls,"LayerUniform",62);ls.className="TreeLayout",ls.PathDefault=PE,ls.PathDestination=yp,ls.PathSource=ky,ls.SortingForwards=J1,ls.SortingReverse=ME,ls.SortingAscending=LE,ls.SortingDescending=TE,ls.AlignmentCenterSubtrees=q1,ls.AlignmentCenterChildren=Fy,ls.AlignmentStart=Vp,ls.AlignmentEnd=Kp,ls.AlignmentBus=ov,ls.AlignmentBusBranching=Zp,ls.AlignmentTopLeftBus=av,ls.AlignmentBottomRightBus=sv,ls.CompactionNone=_y,ls.CompactionBlock=$1,ls.StyleLayered=zy,ls.StyleLastParents=DE,ls.StyleAlternating=Qh,ls.StyleRootOnly=SS,ls.ArrangementVertical=IE,ls.ArrangementHorizontal=ah,ls.ArrangementFixedRoots=wS,ls.LayerIndividual=CC,ls.LayerSiblings=OE,ls.LayerUniform=Kv;function jy(a){Sl.call(this,a)}We(jy,Sl),jy.prototype.createVertex=function(){return new Jf(this)},jy.prototype.createEdge=function(){return new ex(this)},jy.className="TreeNetwork";function Jf(a){uc.call(this,a),this.V=!1,this.hb=null,this.u=[],this.nb=this.Ha=this.F=this.ia=0,this.td=null,this.S=new fn(0,0),this.Da=new Ri(0,0),this.la=new fn(0,0),this.im=this.hm=this.qA=!1,this.kp=this.Yo=null,this.nd=J1,this.hd=Qf,this.Kb=0,this.Jb=Fy,this.Vq=this.Uq=0,this.Wq=20,this.ie=50,this.Aq=0,this.Hp=$1,this.Ap=0,this.nr=25,this.Gp=this.mr=10,this.Fp=20,this.xr=!0,this.dr=Ds,this.wr=!0,this.Dp=Ds}We(Jf,uc),Jf.prototype.copyInheritedPropertiesFrom=function(a){a!==null&&(this.nd=a.sorting,this.hd=a.comparer,this.Kb=a.angle,this.Jb=a.alignment,this.Uq=a.nodeIndent,this.Vq=a.nodeIndentPastParent,this.Wq=a.nodeSpacing,this.ie=a.layerSpacing,this.Aq=a.layerSpacingParentOverlap,this.Hp=a.compaction,this.Ap=a.breadthLimit,this.nr=a.rowSpacing,this.mr=a.rowIndent,this.Gp=a.commentSpacing,this.Fp=a.commentMargin,this.xr=a.setsPortSpot,this.dr=a.portSpot,this.wr=a.setsChildPortSpot,this.Dp=a.childPortSpot)},De.Object.defineProperties(Jf.prototype,{initialized:{get:function(){return this.V},set:function(a){this.V!==a&&(this.V=a)}},parent:{get:function(){return this.hb},set:function(a){this.hb!==a&&(this.hb=a)}},children:{get:function(){return this.u},set:function(a){if(this.u!==a){if(a!==null)for(var y=a.length,ee=0;eeLt.y+ee.rowIndent&&(ue=Math.min(ue,Math.max(at.y,ue-y.computeNodeIndent(ee))))):ee.alignment===Vp?(ue=ne.top+se.y,se.y===0&&at.yLt.x+ee.rowIndent&&(ue=Math.min(ue,Math.max(at.x,ue-y.computeNodeIndent(ee))))):ee.alignment===Vp?(ue=ne.left+se.x,se.x===0&&at.xLt.y+ee.rowIndent&&(ue=Math.min(ue,Math.max(at.y,ue-y.computeNodeIndent(ee))))):ee.alignment===Vp?(ue=ne.top+se.y,se.y===0&&at.yLt.x+ee.rowIndent&&(ue=Math.min(ue,Math.max(at.x,ue-y.computeNodeIndent(ee))))):ee.alignment===Vp?(ue=ne.left+se.x,se.x===0&&at.x0&&(Pe=be.removeMin(),je=Ie[Pe],je.distance!==Number.POSITIVE_INFINITY);)Re(Pe).forEach(ye);return Ie}},59324:function(sn,an,Be){var He=Be(95329),et=Be(94558);sn.exports=Ge;function Ge(ke){return He.filter(et(ke),function(Ze){return Ze.length>1||Ze.length===1&&ke.hasEdge(Ze[0],Ze[0])})}},22893:function(sn,an,Be){var He=Be(95329);sn.exports=Ge;var et=He.constant(1);function Ge(Ze,Oe,we){return ke(Ze,Oe||et,we||function(Te){return Ze.outEdges(Te)})}function ke(Ze,Oe,we){var Te={},Re=Ze.nodes();return Re.forEach(function(Ie){Te[Ie]={},Te[Ie][Ie]={distance:0},Re.forEach(function(be){Ie!==be&&(Te[Ie][be]={distance:Number.POSITIVE_INFINITY})}),we(Ie).forEach(function(be){var Pe=be.v===Ie?be.w:be.v,je=Oe(be);Te[Ie][Pe]={distance:je,predecessor:Ie}})}),Re.forEach(function(Ie){var be=Te[Ie];Re.forEach(function(Pe){var je=Te[Pe];Re.forEach(function(ye){var ie=je[Ie],ae=be[ye],fe=je[ye],de=ie.distance+ae.distance;de0;){if(Ie=Re.removeMin(),He.has(Te,Ie))we.setEdge(Ie,Te[Ie]);else{if(Pe)throw new Error("Input graph is not connected: "+Ze);Pe=!0}Ze.nodeEdges(Ie).forEach(be)}return we}},94558:function(sn,an,Be){var He=Be(95329);sn.exports=et;function et(Ge){var ke=0,Ze=[],Oe={},we=[];function Te(Re){var Ie=Oe[Re]={onStack:!0,lowlink:ke,index:ke++};if(Ze.push(Re),Ge.successors(Re).forEach(function(je){He.has(Oe,je)?Oe[je].onStack&&(Ie.lowlink=Math.min(Ie.lowlink,Oe[je].index)):(Te(je),Ie.lowlink=Math.min(Ie.lowlink,Oe[je].lowlink))}),Ie.lowlink===Ie.index){var be=[],Pe;do Pe=Ze.pop(),Oe[Pe].onStack=!1,be.push(Pe);while(Re!==Pe);we.push(be)}}return Ge.nodes().forEach(function(Re){He.has(Oe,Re)||Te(Re)}),we}},7793:function(sn,an,Be){var He=Be(95329);sn.exports=et,et.CycleException=Ge;function et(ke){var Ze={},Oe={},we=[];function Te(Re){if(He.has(Oe,Re))throw new Ge;He.has(Ze,Re)||(Oe[Re]=!0,Ze[Re]=!0,He.each(ke.predecessors(Re),Te),delete Oe[Re],we.push(Re))}if(He.each(ke.sinks(),Te),He.size(Ze)!==ke.nodeCount())throw new Ge;return we}function Ge(){}Ge.prototype=new Error},36614:function(sn,an,Be){var He=Be(95329);sn.exports=et;function et(){this._arr=[],this._keyIndices={}}et.prototype.size=function(){return this._arr.length},et.prototype.keys=function(){return this._arr.map(function(Ge){return Ge.key})},et.prototype.has=function(Ge){return He.has(this._keyIndices,Ge)},et.prototype.priority=function(Ge){var ke=this._keyIndices[Ge];if(ke!==void 0)return this._arr[ke].priority},et.prototype.min=function(){if(this.size()===0)throw new Error("Queue underflow");return this._arr[0].key},et.prototype.add=function(Ge,ke){var Ze=this._keyIndices;if(Ge=String(Ge),!He.has(Ze,Ge)){var Oe=this._arr,we=Oe.length;return Ze[Ge]=we,Oe.push({key:Ge,priority:ke}),this._decrease(we),!0}return!1},et.prototype.removeMin=function(){this._swap(0,this._arr.length-1);var Ge=this._arr.pop();return delete this._keyIndices[Ge.key],this._heapify(0),Ge.key},et.prototype.decrease=function(Ge,ke){var Ze=this._keyIndices[Ge];if(ke>this._arr[Ze].priority)throw new Error("New priority is greater than current priority. Key: "+Ge+" Old: "+this._arr[Ze].priority+" New: "+ke);this._arr[Ze].priority=ke,this._decrease(Ze)},et.prototype._heapify=function(Ge){var ke=this._arr,Ze=2*Ge,Oe=Ze+1,we=Ge;Ze>1,!(ke[Oe].priority1?ye.setNode(ie,Pe):ye.setNode(ie)}),this},Ze.prototype.setNode=function(be,Pe){return He.has(this._nodes,be)?(arguments.length>1&&(this._nodes[be]=Pe),this):(this._nodes[be]=arguments.length>1?Pe:this._defaultNodeLabelFn(be),this._isCompound&&(this._parent[be]=Ge,this._children[be]={},this._children[Ge][be]=!0),this._in[be]={},this._preds[be]={},this._out[be]={},this._sucs[be]={},++this._nodeCount,this)},Ze.prototype.node=function(be){return this._nodes[be]},Ze.prototype.hasNode=function(be){return He.has(this._nodes,be)},Ze.prototype.removeNode=function(be){var Pe=this;if(He.has(this._nodes,be)){var je=function(ye){Pe.removeEdge(Pe._edgeObjs[ye])};delete this._nodes[be],this._isCompound&&(this._removeFromParentsChildList(be),delete this._parent[be],He.each(this.children(be),function(ye){Pe.setParent(ye)}),delete this._children[be]),He.each(He.keys(this._in[be]),je),delete this._in[be],delete this._preds[be],He.each(He.keys(this._out[be]),je),delete this._out[be],delete this._sucs[be],--this._nodeCount}return this},Ze.prototype.setParent=function(be,Pe){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(He.isUndefined(Pe))Pe=Ge;else{Pe+="";for(var je=Pe;!He.isUndefined(je);je=this.parent(je))if(je===be)throw new Error("Setting "+Pe+" as parent of "+be+" would create a cycle");this.setNode(Pe)}return this.setNode(be),this._removeFromParentsChildList(be),this._parent[be]=Pe,this._children[Pe][be]=!0,this},Ze.prototype._removeFromParentsChildList=function(be){delete this._children[this._parent[be]][be]},Ze.prototype.parent=function(be){if(this._isCompound){var Pe=this._parent[be];if(Pe!==Ge)return Pe}},Ze.prototype.children=function(be){if(He.isUndefined(be)&&(be=Ge),this._isCompound){var Pe=this._children[be];if(Pe)return He.keys(Pe)}else{if(be===Ge)return this.nodes();if(this.hasNode(be))return[]}},Ze.prototype.predecessors=function(be){var Pe=this._preds[be];if(Pe)return He.keys(Pe)},Ze.prototype.successors=function(be){var Pe=this._sucs[be];if(Pe)return He.keys(Pe)},Ze.prototype.neighbors=function(be){var Pe=this.predecessors(be);if(Pe)return He.union(Pe,this.successors(be))},Ze.prototype.isLeaf=function(be){var Pe;return this.isDirected()?Pe=this.successors(be):Pe=this.neighbors(be),Pe.length===0},Ze.prototype.filterNodes=function(be){var Pe=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});Pe.setGraph(this.graph());var je=this;He.each(this._nodes,function(ae,fe){be(fe)&&Pe.setNode(fe,ae)}),He.each(this._edgeObjs,function(ae){Pe.hasNode(ae.v)&&Pe.hasNode(ae.w)&&Pe.setEdge(ae,je.edge(ae))});var ye={};function ie(ae){var fe=je.parent(ae);return fe===void 0||Pe.hasNode(fe)?(ye[ae]=fe,fe):fe in ye?ye[fe]:ie(fe)}return this._isCompound&&He.each(Pe.nodes(),function(ae){Pe.setParent(ae,ie(ae))}),Pe},Ze.prototype.setDefaultEdgeLabel=function(be){return He.isFunction(be)||(be=He.constant(be)),this._defaultEdgeLabelFn=be,this},Ze.prototype.edgeCount=function(){return this._edgeCount},Ze.prototype.edges=function(){return He.values(this._edgeObjs)},Ze.prototype.setPath=function(be,Pe){var je=this,ye=arguments;return He.reduce(be,function(ie,ae){return ye.length>1?je.setEdge(ie,ae,Pe):je.setEdge(ie,ae),ae}),this},Ze.prototype.setEdge=function(){var be,Pe,je,ye,ie=!1,ae=arguments[0];typeof ae=="object"&&ae!==null&&"v"in ae?(be=ae.v,Pe=ae.w,je=ae.name,arguments.length===2&&(ye=arguments[1],ie=!0)):(be=ae,Pe=arguments[1],je=arguments[3],arguments.length>2&&(ye=arguments[2],ie=!0)),be=""+be,Pe=""+Pe,He.isUndefined(je)||(je=""+je);var fe=Te(this._isDirected,be,Pe,je);if(He.has(this._edgeLabels,fe))return ie&&(this._edgeLabels[fe]=ye),this;if(!He.isUndefined(je)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(be),this.setNode(Pe),this._edgeLabels[fe]=ie?ye:this._defaultEdgeLabelFn(be,Pe,je);var de=Re(this._isDirected,be,Pe,je);return be=de.v,Pe=de.w,Object.freeze(de),this._edgeObjs[fe]=de,Oe(this._preds[Pe],be),Oe(this._sucs[be],Pe),this._in[Pe][fe]=de,this._out[be][fe]=de,this._edgeCount++,this},Ze.prototype.edge=function(be,Pe,je){var ye=arguments.length===1?Ie(this._isDirected,arguments[0]):Te(this._isDirected,be,Pe,je);return this._edgeLabels[ye]},Ze.prototype.hasEdge=function(be,Pe,je){var ye=arguments.length===1?Ie(this._isDirected,arguments[0]):Te(this._isDirected,be,Pe,je);return He.has(this._edgeLabels,ye)},Ze.prototype.removeEdge=function(be,Pe,je){var ye=arguments.length===1?Ie(this._isDirected,arguments[0]):Te(this._isDirected,be,Pe,je),ie=this._edgeObjs[ye];return ie&&(be=ie.v,Pe=ie.w,delete this._edgeLabels[ye],delete this._edgeObjs[ye],we(this._preds[Pe],be),we(this._sucs[be],Pe),delete this._in[Pe][ye],delete this._out[be][ye],this._edgeCount--),this},Ze.prototype.inEdges=function(be,Pe){var je=this._in[be];if(je){var ye=He.values(je);return Pe?He.filter(ye,function(ie){return ie.v===Pe}):ye}},Ze.prototype.outEdges=function(be,Pe){var je=this._out[be];if(je){var ye=He.values(je);return Pe?He.filter(ye,function(ie){return ie.w===Pe}):ye}},Ze.prototype.nodeEdges=function(be,Pe){var je=this.inEdges(be,Pe);if(je)return je.concat(this.outEdges(be,Pe))};function Oe(be,Pe){be[Pe]?be[Pe]++:be[Pe]=1}function we(be,Pe){--be[Pe]||delete be[Pe]}function Te(be,Pe,je,ye){var ie=""+Pe,ae=""+je;if(!be&&ie>ae){var fe=ie;ie=ae,ae=fe}return ie+ke+ae+ke+(He.isUndefined(ye)?et:ye)}function Re(be,Pe,je,ye){var ie=""+Pe,ae=""+je;if(!be&&ie>ae){var fe=ie;ie=ae,ae=fe}var de={v:ie,w:ae};return ye&&(de.name=ye),de}function Ie(be,Pe){return Te(be,Pe.v,Pe.w,Pe.name)}},89224:function(sn,an,Be){sn.exports={Graph:Be(6349),version:Be(16544)}},17401:function(sn,an,Be){var He=Be(95329),et=Be(6349);sn.exports={write:Ge,read:Oe};function Ge(we){var Te={options:{directed:we.isDirected(),multigraph:we.isMultigraph(),compound:we.isCompound()},nodes:ke(we),edges:Ze(we)};return He.isUndefined(we.graph())||(Te.value=He.clone(we.graph())),Te}function ke(we){return He.map(we.nodes(),function(Te){var Re=we.node(Te),Ie=we.parent(Te),be={v:Te};return He.isUndefined(Re)||(be.value=Re),He.isUndefined(Ie)||(be.parent=Ie),be})}function Ze(we){return He.map(we.edges(),function(Te){var Re=we.edge(Te),Ie={v:Te.v,w:Te.w};return He.isUndefined(Te.name)||(Ie.name=Te.name),He.isUndefined(Re)||(Ie.value=Re),Ie})}function Oe(we){var Te=new et(we.options).setGraph(we.value);return He.each(we.nodes,function(Re){Te.setNode(Re.v,Re.value),Re.parent&&Te.setParent(Re.v,Re.parent)}),He.each(we.edges,function(Re){Te.setEdge({v:Re.v,w:Re.w,name:Re.name},Re.value)}),Te}},95329:function(sn,an,Be){var He;try{He={clone:Be(76833),constant:Be(13503),each:Be(76934),filter:Be(64725),has:Be(99946),isArray:Be(80744),isEmpty:Be(61627),isFunction:Be(9363),isUndefined:Be(16513),keys:Be(55451),map:Be(9924),reduce:Be(16473),size:Be(40617),transform:Be(91116),union:Be(44065),values:Be(81229)}}catch(et){}He||(He=window._),sn.exports=He},16544:function(sn){sn.exports="2.1.8"},95328:function(sn){function an(Ge,ke,Ze){return(ke[0]-Ge[0])*(Ze[1]-Ge[1])-(ke[1]-Ge[1])*(Ze[0]-Ge[0])}function Be(Ge){const ke=[];for(let Ze=0;Ze=2&&an(ke[ke.length-2],ke[ke.length-1],Ge[Ze])<=0;)ke.pop();ke.push(Ge[Ze])}return ke.pop(),ke}function He(Ge){const ke=Ge.reverse(),Ze=[];for(let Oe=0;Oe=2&&an(Ze[Ze.length-2],Ze[Ze.length-1],ke[Oe])<=0;)Ze.pop();Ze.push(ke[Oe])}return Ze.pop(),Ze}function et(Ge){const ke=Be(Ge),Oe=He(Ge).concat(ke);return Oe.push(Ge[0]),Oe}sn.exports=et},11950:function(sn){sn.exports={toXy:function(an,Be){return Be===void 0?an.slice():an.map(function(He){return new Function("pt","return [pt"+Be[0]+",pt"+Be[1]+"];")(He)})},fromXy:function(an,Be){return Be===void 0?an.slice():an.map(function(He){return new Function("pt","const o = {}; o"+Be[0]+"= pt[0]; o"+Be[1]+"= pt[1]; return o;")(He)})}}},98204:function(sn){function an(He,et){this._cells=[],this._cellSize=et,this._reverseCellSize=1/et;for(let Ge=0;Ge=0;pe--)fe[pe][0]xe&&(xe=fe[pe][0]),fe[pe][1]>he&&(he=fe[pe][1]);return[xe-de,he-ve]}function be(fe){return[Math.min(fe[0][0],fe[1][0]),Math.min(fe[0][1],fe[1][1]),Math.max(fe[0][0],fe[1][0]),Math.max(fe[0][1],fe[1][1])]}function Pe(fe,de,ve){let xe=null,he=ie,pe=ie,Se,Ne;for(let ze=0;zehe&&Ne>pe&&!Re([fe[0],de[ze]],ve)&&!Re([fe[1],de[ze]],ve)&&(he=Se,pe=Ne,xe=de[ze]);return xe}function je(fe,de,ve,xe,he){let pe=!1;for(let Se=0;SeJe||ve[1]>tt));Je>=ve[0]&&tt>=ve[1]&&he.add(ze),gt!==null&&(fe.splice(Se+1,0,gt),xe.removePoint(gt),pe=!0)}return pe?je(fe,de,ve,xe,he):fe}function ye(fe,de,ve){let xe=de||20;const he=Ze(Oe(Ge.toXy(fe,ve)));if(he.length<4){const Je=he.concat([he[0]]);return ve?Ge.fromXy(Je,ve):Je}const pe=Ie(he),Se=[pe[0]*ae,pe[1]*ae],Ne=ke(he),ze=he.filter(function(Je){return Ne.indexOf(Je)<0}),Ke=Math.ceil(1/(he.length/(pe[0]*pe[1]))),Ve=je(Ne,Math.pow(xe,2),Se,et(ze,Ke),new Set);return ve?Ge.fromXy(Ve,ve):Ve}const ie=Math.cos(90/(180/Math.PI)),ae=.6;sn.exports=ye},86972:function(sn){function an(He,et,Ge,ke,Ze,Oe){const we=(Oe-et)*(Ge-He)-(ke-et)*(Ze-He);return we>0?!0:!(we<0)}function Be(He,et){const Ge=He[0][0],ke=He[0][1],Ze=He[1][0],Oe=He[1][1],we=et[0][0],Te=et[0][1],Re=et[1][0],Ie=et[1][1];return an(Ge,ke,we,Te,Re,Ie)!==an(Ze,Oe,we,Te,Re,Ie)&&an(Ge,ke,Ze,Oe,we,Te)!==an(Ge,ke,Ze,Oe,Re,Ie)}sn.exports=Be},34634:function(sn,an,Be){"use strict";Be.r(an),Be.d(an,{isAnyArray:function(){return et}});const He=Object.prototype.toString;function et(Ge){const ke=He.call(Ge);return ke.endsWith("Array]")&&!ke.includes("Big")}},22948:function(sn){sn.exports=function(Be){return!Be||typeof Be=="string"?!1:Be instanceof Array||Array.isArray(Be)||Be.length>=0&&(Be.splice instanceof Function||Object.getOwnPropertyDescriptor(Be,Be.length-1)&&Be.constructor.name!=="String")}},15584:function(sn,an,Be){var He=Be(73893),et=Be(33152),Ge=He(et,"DataView");sn.exports=Ge},97288:function(sn,an,Be){var He=Be(73893),et=Be(33152),Ge=He(et,"Promise");sn.exports=Ge},23599:function(sn,an,Be){var He=Be(73893),et=Be(33152),Ge=He(et,"Set");sn.exports=Ge},98924:function(sn,an,Be){var He=Be(52166),et=Be(34776),Ge=Be(40393);function ke(Ze){var Oe=-1,we=Ze==null?0:Ze.length;for(this.__data__=new He;++Oe-1}sn.exports=et},94874:function(sn){function an(Be,He,et){for(var Ge=-1,ke=Be==null?0:Be.length;++Ge0&&Oe(be)?Ze>1?Ge(be,Ze-1,Oe,we,Te):He(Te,be):we||(Te[Te.length]=be)}return Te}sn.exports=Ge},85605:function(sn,an,Be){var He=Be(14018),et=Be(55451);function Ge(ke,Ze){return ke&&He(ke,Ze,et)}sn.exports=Ge},89147:function(sn,an,Be){var He=Be(1186),et=Be(9171);function Ge(ke,Ze){Ze=He(Ze,ke);for(var Oe=0,we=Ze.length;ke!=null&&OeHe}sn.exports=an},3251:function(sn){var an=Object.prototype,Be=an.hasOwnProperty;function He(et,Ge){return et!=null&&Be.call(et,Ge)}sn.exports=He},62348:function(sn){function an(Be,He){return Be!=null&&He in Object(Be)}sn.exports=an},17424:function(sn,an,Be){var He=Be(51533),et=Be(8373),Ge=Be(49237);function ke(Ze,Oe,we){return Oe===Oe?Ge(Ze,Oe,we):He(Ze,et,we)}sn.exports=ke},77295:function(sn,an,Be){var He=Be(84412),et=Be(93913);function Ge(ke,Ze,Oe,we,Te){return ke===Ze?!0:ke==null||Ze==null||!et(ke)&&!et(Ze)?ke!==ke&&Ze!==Ze:He(ke,Ze,Oe,we,Ge,Te)}sn.exports=Ge},84412:function(sn,an,Be){var He=Be(91866),et=Be(50401),Ge=Be(57710),ke=Be(4983),Ze=Be(66139),Oe=Be(80744),we=Be(57835),Te=Be(18397),Re=1,Ie="[object Arguments]",be="[object Array]",Pe="[object Object]",je=Object.prototype,ye=je.hasOwnProperty;function ie(ae,fe,de,ve,xe,he){var pe=Oe(ae),Se=Oe(fe),Ne=pe?be:Ze(ae),ze=Se?be:Ze(fe);Ne=Ne==Ie?Pe:Ne,ze=ze==Ie?Pe:ze;var Ke=Ne==Pe,Ve=ze==Pe,Je=Ne==ze;if(Je&&we(ae)){if(!we(fe))return!1;pe=!0,Ke=!1}if(Je&&!Ke)return he||(he=new He),pe||Te(ae)?et(ae,fe,de,ve,xe,he):Ge(ae,fe,Ne,de,ve,xe,he);if(!(de&Re)){var tt=Ke&&ye.call(ae,"__wrapped__"),gt=Ve&&ye.call(fe,"__wrapped__");if(tt||gt){var st=tt?ae.value():ae,St=gt?fe.value():fe;return he||(he=new He),xe(st,St,de,ve,he)}}return Je?(he||(he=new He),ke(ae,fe,de,ve,xe,he)):!1}sn.exports=ie},55005:function(sn,an,Be){var He=Be(66139),et=Be(93913),Ge="[object Map]";function ke(Ze){return et(Ze)&&He(Ze)==Ge}sn.exports=ke},51524:function(sn,an,Be){var He=Be(91866),et=Be(77295),Ge=1,ke=2;function Ze(Oe,we,Te,Re){var Ie=Te.length,be=Ie,Pe=!Re;if(Oe==null)return!be;for(Oe=Object(Oe);Ie--;){var je=Te[Ie];if(Pe&&je[2]?je[1]!==Oe[je[0]]:!(je[0]in Oe))return!1}for(;++Ie=we){var de=Ie?null:Ze(Re);if(de)return Oe(de);ie=!1,je=ke,fe=new He}else fe=Ie?[]:ae;e:for(;++Peke||Te&&Re&&be&&!Ie&&!Pe||Oe&&Re&&be||!Ze&&be||!we)return 1;if(!Oe&&!Te&&!Pe&&Ge=Ie)return be;var Pe=Ze[Oe];return be*(Pe=="desc"?-1:1)}}return Ge.index-ke.index}sn.exports=et},15168:function(sn,an,Be){var He=Be(95378),et=Be(58966);function Ge(ke,Ze){return He(ke,et(ke),Ze)}sn.exports=Ge},71678:function(sn,an,Be){var He=Be(95378),et=Be(66817);function Ge(ke,Ze){return He(ke,et(ke),Ze)}sn.exports=Ge},49164:function(sn,an,Be){var He=Be(24665);function et(Ge,ke){return function(Ze,Oe){if(Ze==null)return Ze;if(!He(Ze))return Ge(Ze,Oe);for(var we=Ze.length,Te=ke?we:-1,Re=Object(Ze);(ke?Te--:++Te-1?Re[Ie?Oe[be]:be]:void 0}}sn.exports=ke},76106:function(sn,an,Be){var He=Be(36121),et=Be(8138),Ge=Be(97341);function ke(Ze){return function(Oe,we,Te){return Te&&typeof Te!="number"&&et(Oe,we,Te)&&(we=Te=void 0),Oe=Ge(Oe),we===void 0?(we=Oe,Oe=0):we=Ge(we),Te=Te===void 0?Oeye))return!1;var ae=Pe.get(we),fe=Pe.get(Te);if(ae&&fe)return ae==Te&&fe==we;var de=-1,ve=!0,xe=Re&Ze?new He:void 0;for(Pe.set(we,Te),Pe.set(Te,we);++de2?Re[2]:void 0;for(Pe&&Ge(Re[0],Re[1],Pe)&&(be=1);++Ie1&&ke(Oe,we[0],we[1])?we=[]:Te>2&&ke(we[0],we[1],we[2])&&(we=[we[0]]),et(Oe,He(we,1),[])});sn.exports=Ze},4134:function(sn){function an(){return[]}sn.exports=an},97341:function(sn,an,Be){var He=Be(59406),et=1/0,Ge=17976931348623157e292;function ke(Ze){if(!Ze)return Ze===0?Ze:0;if(Ze=He(Ze),Ze===et||Ze===-et){var Oe=Ze<0?-1:1;return Oe*Ge}return Ze===Ze?Ze:0}sn.exports=ke},12824:function(sn,an,Be){var He=Be(97341);function et(Ge){var ke=He(Ge),Ze=ke%1;return ke===ke?Ze?ke-Ze:ke:0}sn.exports=et},59406:function(sn,an,Be){var He=Be(13927),et=Be(20816),Ge=Be(45029),ke=NaN,Ze=/^[-+]0x[0-9a-f]+$/i,Oe=/^0b[01]+$/i,we=/^0o[0-7]+$/i,Te=parseInt;function Re(Ie){if(typeof Ie=="number")return Ie;if(Ge(Ie))return ke;if(et(Ie)){var be=typeof Ie.valueOf=="function"?Ie.valueOf():Ie;Ie=et(be)?be+"":be}if(typeof Ie!="string")return Ie===0?Ie:+Ie;Ie=He(Ie);var Pe=Oe.test(Ie);return Pe||we.test(Ie)?Te(Ie.slice(2),Pe?2:8):Ze.test(Ie)?ke:+Ie}sn.exports=Re},44140:function(sn,an,Be){var He=Be(50230);function et(Ge){return Ge==null?"":He(Ge)}sn.exports=et},91116:function(sn,an,Be){var He=Be(74809),et=Be(35024),Ge=Be(85605),ke=Be(95979),Ze=Be(49217),Oe=Be(80744),we=Be(57835),Te=Be(9363),Re=Be(20816),Ie=Be(18397);function be(Pe,je,ye){var ie=Oe(Pe),ae=ie||we(Pe)||Ie(Pe);if(je=ke(je,4),ye==null){var fe=Pe&&Pe.constructor;ae?ye=ie?new fe:[]:Re(Pe)?ye=Te(fe)?et(Ze(Pe)):{}:ye={}}return(ae?He:Ge)(Pe,function(de,ve,xe){return je(ye,de,ve,xe)}),ye}sn.exports=be},44065:function(sn,an,Be){var He=Be(9256),et=Be(92918),Ge=Be(29098),ke=Be(41590),Ze=et(function(Oe){return Ge(He(Oe,1,ke,!0))});sn.exports=Ze},95708:function(sn,an,Be){var He=Be(44140),et=0;function Ge(ke){var Ze=++et;return He(ke)+Ze}sn.exports=Ge},81229:function(sn,an,Be){var He=Be(20720),et=Be(55451);function Ge(ke){return ke==null?[]:He(ke,et(ke))}sn.exports=Ge},65441:function(sn,an,Be){var He=Be(60348),et=Be(94484);function Ge(ke,Ze){return et(ke||[],Ze||[],He)}sn.exports=Ge},2859:function(sn,an,Be){"use strict";Be.d(an,{hP:function(){return Wn}});var He=function(qt,xt){return(He=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(ft,Bt){ft.__proto__=Bt}||function(ft,Bt){for(var Ot in Bt)Object.prototype.hasOwnProperty.call(Bt,Ot)&&(ft[Ot]=Bt[Ot])})(qt,xt)};function et(qt,xt){function ft(){this.constructor=qt}He(qt,xt),qt.prototype=xt===null?Object.create(xt):(ft.prototype=xt.prototype,new ft)}function Ge(qt,xt,ft,Bt){return new(ft||(ft=Promise))(function(Ot,ut){function It(Vt){try{Pt(Bt.next(Vt))}catch(on){ut(on)}}function nn(Vt){try{Pt(Bt.throw(Vt))}catch(on){ut(on)}}function Pt(Vt){var on;Vt.done?Ot(Vt.value):(on=Vt.value,on instanceof ft?on:new ft(function($t){$t(on)})).then(It,nn)}Pt((Bt=Bt.apply(qt,xt||[])).next())})}function ke(qt,xt){var ft,Bt,Ot,ut,It={label:0,sent:function(){if(1&Ot[0])throw Ot[1];return Ot[1]},trys:[],ops:[]};return ut={next:nn(0),throw:nn(1),return:nn(2)},typeof Symbol=="function"&&(ut[Symbol.iterator]=function(){return this}),ut;function nn(Pt){return function(Vt){return function(on){if(ft)throw new TypeError("Generator is already executing.");for(;It;)try{if(ft=1,Bt&&(Ot=2&on[0]?Bt.return:on[0]?Bt.throw||((Ot=Bt.return)&&Ot.call(Bt),0):Bt.next)&&!(Ot=Ot.call(Bt,on[1])).done)return Ot;switch(Bt=0,Ot&&(on=[2&on[0],Ot.value]),on[0]){case 0:case 1:Ot=on;break;case 4:return It.label++,{value:on[1],done:!1};case 5:It.label++,Bt=on[1],on=[0];continue;case 7:on=It.ops.pop(),It.trys.pop();continue;default:if(Ot=It.trys,!((Ot=Ot.length>0&&Ot[Ot.length-1])||on[0]!==6&&on[0]!==2)){It=0;continue}if(on[0]===3&&(!Ot||on[1]>Ot[0]&&on[1]',"select"),this.addActionButton(Bt,'',"delete"),this.uiStyleSettings.clearButtonVisible&&this.addActionButton(Bt,'',"clear"),this.uiStyleSettings.undoButtonVisible&&this.addActionButton(Bt,'',"undo"),this.uiStyleSettings.redoButtonVisible&&this.addActionButton(Bt,'',"redo"),this.uiStyleSettings.zoomButtonVisible&&this.addActionButton(Bt,'',"zoom"),this.uiStyleSettings.zoomButtonVisible&&this.uiStyleSettings.zoomOutButtonVisible&&this.addActionButton(Bt,'',"zoom-out"),this.uiStyleSettings.notesButtonVisible&&this.addActionButton(Bt,'',"notes"),this.markerButtonBlock=document.createElement("div"),this.markerButtonBlock.className=this.toolbarBlockStyleClass.name,this.markerButtonBlock.style.flexGrow="2",this.markerButtonBlock.style.textAlign="center",this.uiContainer.appendChild(this.markerButtonBlock),this.markerButtonOverflowBlock=document.createElement("div"),this.markerButtonOverflowBlock.className=this.toolbarOverflowBlockStyleClass.name+" "+(this.uiStyleSettings.toolbarOverflowBlockStyleColorsClassName?this.uiStyleSettings.toolbarOverflowBlockStyleColorsClassName:this.toolbarOverflowBlockStyleColorsClass.name),this.markerButtonOverflowBlock.style.display="none",this.uiContainer.appendChild(this.markerButtonOverflowBlock),this.markerItems&&(this.markerItems.forEach(function(ut){var It=document.createElement("div");It.className=""+ft.toolbarButtonStyleClass.name,It.setAttribute("data-type-name",ut.typeName),It.innerHTML=ut.icon,It.addEventListener("click",function(){ft.markerToolbarButtonClicked(It,ut)}),ft.buttons.push(It),ft.markerButtons.push(It)}),this.overflowButton=document.createElement("div"),this.overflowButton.className=this.toolbarButtonStyleClass.name+" "+(this.uiStyleSettings.toolbarButtonStyleColorsClassName?this.uiStyleSettings.toolbarButtonStyleColorsClassName:this.toolbarButtonStyleColorsClass.name),this.overflowButton.innerHTML='',this.overflowButton.addEventListener("click",this.overflowButtonClicked),this.markerButtonBlock.appendChild(this.overflowButton));var Ot=document.createElement("div");Ot.className=this.toolbarBlockStyleClass.name,Ot.style.whiteSpace="nowrap",Ot.style.display=this.uiStyleSettings.resultButtonBlockVisible!==!1?"":"none",this.uiContainer.appendChild(Ot),this.addActionButton(Ot,'',"render"),this.addActionButton(Ot,'',"close"),this.markerjsContainer.appendChild(this.uiContainer),this.setSelectMode(),this.setCurrentMarker(),this.adjustLayout()},qt.prototype.addButtonClickListener=function(xt){this.buttonClickListeners.push(xt)},qt.prototype.removeButtonClickListener=function(xt){this.buttonClickListeners.indexOf(xt)>-1&&this.buttonClickListeners.splice(this.buttonClickListeners.indexOf(xt),1)},qt.prototype.setSelectMode=function(){this.resetButtonStyles(),this.setActiveButton(this.buttons[0])},qt.prototype.adjustLayout=function(){if(this.markerButtons&&this.markerButtons.length>0){var xt=Math.floor(this.markerButtonBlock.clientWidth/this.uiStyleSettings.toolbarHeight)-1;this.markerButtonBlock.innerHTML="",this.markerButtonOverflowBlock.innerHTML="";for(var ft=0;ft0&&this.buttonClickListeners.forEach(function(Bt){return Bt("marker",ft)}),this.markerButtonOverflowBlock.style.display="none"},qt.prototype.actionToolbarButtonClicked=function(xt,ft){this.buttonClickListeners&&this.buttonClickListeners.length>0&&this.buttonClickListeners.forEach(function(Bt){return Bt("action",ft)}),this.markerButtonOverflowBlock.style.display="none",this.setActiveButton(this.buttons[0])},qt.prototype.setActiveButton=function(xt){this.resetButtonStyles(),xt.className=xt.className.replace(this.uiStyleSettings.toolbarButtonStyleColorsClassName?this.uiStyleSettings.toolbarButtonStyleColorsClassName:this.toolbarButtonStyleColorsClass.name,"").trim(),xt.className+=" "+(this.uiStyleSettings.toolbarActiveButtonStyleColorsClassName?this.uiStyleSettings.toolbarActiveButtonStyleColorsClassName:this.toolbarActiveButtonStyleColorsClass.name)},qt.prototype.setActiveMarkerButton=function(xt){var ft=this.markerButtons.find(function(Bt){return Bt.getAttribute("data-type-name")===xt});ft&&this.setActiveButton(ft)},qt.prototype.setCurrentMarker=function(xt){var ft=this;this.currentMarker=xt,this.buttons.filter(function(Bt){return/delete|notes/.test(Bt.getAttribute("data-action"))}).forEach(function(Bt){ft.currentMarker===void 0?(Bt.style.fillOpacity="0.4",Bt.style.pointerEvents="none"):(Bt.style.fillOpacity="1",Bt.style.pointerEvents="all")})},qt}(),ye=function(){function qt(xt,ft,Bt,Ot){this.panels=[],this.panelButtons=[],this.markerjsContainer=xt,this.displayMode=ft,this.uiStyleSettings=Bt,this.styles=Ot,this.panelButtonClick=this.panelButtonClick.bind(this),this.addStyles()}return qt.prototype.addStyles=function(){var xt;this.toolboxStyleClass=this.styles.addClass(new Pe("toolbox",` width: 100%; flex-shrink: 0; display: flex; flex-direction: column; font-family: sans-serif; `+(this.displayMode==="popup"?"height:"+2.5*this.uiStyleSettings.toolbarHeight+"px;":"")+` box-sizing: content-box; `+(this.displayMode==="popup"?"background-color: "+this.uiStyleSettings.canvasBackgroundColor+";":"")+` `+(this.displayMode==="inline"?"border-bottom-left-radius: "+Math.round(this.uiStyleSettings.toolbarHeight/10)+"px;":"")+` `+(this.displayMode==="inline"?"border-bottom-right-radius: "+Math.round(this.uiStyleSettings.toolbarHeight/10)+"px;":"")+` overflow: hidden; `)),this.toolboxStyleColorsClass=this.styles.addClass(new Pe("toolbox_colors",` color: `+this.uiStyleSettings.toolboxColor+`; `));var ft=this.uiStyleSettings.toolbarHeight/4;this.toolboxButtonRowStyleClass=this.styles.addClass(new Pe("toolbox-button-row",` display: flex; cursor: default; box-sizing: content-box; `)),this.toolboxButtonRowStyleColorsClass=this.styles.addClass(new Pe("toolbox-button-row_colors",` background-color: `+this.uiStyleSettings.toolbarBackgroundColor+`; `)),this.toolboxPanelRowStyleClass=this.styles.addClass(new Pe("toolbox-panel-row",` display: flex; `+(this.displayMode==="inline"?"position: absolute;":"")+` `+(this.displayMode==="inline"?"bottom: "+this.uiStyleSettings.toolbarHeight+"px;":"")+` cursor: default; height: `+1.5*this.uiStyleSettings.toolbarHeight+`px; `+(this.displayMode==="inline"?"width: 100%;":"")+` box-sizing: content-box; `)),this.toolboxPanelRowStyleColorsClass=this.styles.addClass(new Pe("toolbox-panel-row_colors",` background-color: `+((xt=this.uiStyleSettings.toolboxBackgroundColor)!==null&&xt!==void 0?xt:this.uiStyleSettings.toolbarBackgroundHoverColor)+`; `)),this.toolboxButtonStyleClass=this.styles.addClass(new Pe("toolbox_button",` display: inline-block; width: `+(this.uiStyleSettings.toolbarHeight-2*ft)+`px; height: `+(this.uiStyleSettings.toolbarHeight-2*ft)+`px; padding: `+ft+`px; box-sizing: content-box; `)),this.toolboxButtonStyleColorsClass=this.styles.addClass(new Pe("toolbox-button_colors",` fill: `+this.uiStyleSettings.toolbarColor+`; `)),this.toolboxActiveButtonStyleColorsClass=this.styles.addClass(new Pe("toolbox-active-button_colors",` background-color: `+this.uiStyleSettings.toolbarBackgroundHoverColor+`; fill: `+this.uiStyleSettings.toolbarColor+`; `)),this.styles.addRule(new be("."+this.toolboxButtonStyleColorsClass.name+":hover",` background-color: `+this.uiStyleSettings.toolbarBackgroundHoverColor+` `)),this.styles.addRule(new be("."+this.toolboxButtonStyleClass.name+" svg",` height: `+this.uiStyleSettings.toolbarHeight/2+`px; `))},qt.prototype.show=function(xt){var ft;this.uiContainer=document.createElement("div"),this.uiContainer.style.visibility=xt,this.uiContainer.className=this.toolboxStyleClass.name+" "+((ft=this.uiStyleSettings.toolboxStyleColorsClassName)!==null&&ft!==void 0?ft:this.toolboxStyleColorsClass.name),this.markerjsContainer.appendChild(this.uiContainer)},qt.prototype.setPanelButtons=function(xt){var ft,Bt,Ot=this;this.panels=xt,this.uiContainer!==void 0&&(this.uiContainer.innerHTML="",this.panelRow=document.createElement("div"),this.panelRow.className=this.toolboxPanelRowStyleClass.name+" "+((ft=this.uiStyleSettings.toolboxPanelRowStyleColorsClassName)!==null&&ft!==void 0?ft:this.toolboxPanelRowStyleColorsClass.name),this.uiContainer.appendChild(this.panelRow),this.buttonRow=document.createElement("div"),this.buttonRow.className=this.toolboxButtonRowStyleClass.name+" "+((Bt=this.uiStyleSettings.toolboxButtonRowStyleColorsClassName)!==null&&Bt!==void 0?Bt:this.toolboxButtonRowStyleColorsClass.name)+" ",this.uiContainer.appendChild(this.buttonRow),this.panelButtons.splice(0),this.panels.forEach(function(ut){var It;ut.uiStyleSettings=Ot.uiStyleSettings;var nn=document.createElement("div");nn.className=Ot.toolboxButtonStyleClass.name+" "+((It=Ot.uiStyleSettings.toolboxButtonStyleColorsClassName)!==null&&It!==void 0?It:Ot.toolboxButtonStyleColorsClass.name),nn.innerHTML=ut.icon,nn.title=ut.title,nn.addEventListener("click",function(){Ot.panelButtonClick(ut)}),Ot.panelButtons.push(nn),Ot.buttonRow.appendChild(nn)}),this.displayMode==="inline"?this.panelRow.style.display="none":this.panelRow.style.visibility="hidden")},qt.prototype.panelButtonClick=function(xt){var ft=this,Bt=-1;if(xt!==this.activePanel){Bt=this.panels.indexOf(xt),this.panelRow.innerHTML="";var Ot=xt.getUi();Ot.style.margin=this.uiStyleSettings.toolbarHeight/4+"px",this.panelRow.appendChild(Ot),this.panelRow.style.display="flex",this.panelRow.style.visibility="visible",this.panelRow.className=this.panelRow.className.replace(this.styles.fadeOutAnimationClassName,""),this.panelRow.className+=" "+this.styles.fadeInAnimationClassName,this.activePanel=xt}else this.activePanel=void 0,this.panelRow.className=this.panelRow.className.replace(this.styles.fadeInAnimationClassName,""),this.panelRow.className+=" "+this.styles.fadeOutAnimationClassName,setTimeout(function(){ft.displayMode==="inline"?ft.panelRow.style.display="none":ft.panelRow.style.visibility="hidden"},200);this.panelButtons.forEach(function(ut,It){var nn,Pt;ut.className=ft.toolboxButtonStyleClass.name+" "+(It===Bt?""+((nn=ft.uiStyleSettings.toolboxActiveButtonStyleColorsClassName)!==null&&nn!==void 0?nn:ft.toolboxActiveButtonStyleColorsClass.name):""+((Pt=ft.uiStyleSettings.toolboxButtonStyleColorsClassName)!==null&&Pt!==void 0?Pt:ft.toolboxButtonStyleColorsClass.name))})},qt}(),ie=function(qt,xt){this.title=qt,this.icon=xt},ae=function(qt){function xt(ft,Bt,Ot,ut){var It=qt.call(this,ft,ut||'')||this;return It.colors=[],It.addTransparent=!1,It.colorBoxes=[],It.colors=Bt,It.currentColor=Ot,It.setCurrentColor=It.setCurrentColor.bind(It),It.getColorBox=It.getColorBox.bind(It),It}return et(xt,qt),xt.prototype.getUi=function(){var ft=this,Bt=document.createElement("div");return Bt.style.overflow="hidden",Bt.style.whiteSpace="nowrap",this.colors.forEach(function(Ot){var ut=ft.getColorBox(Ot);Bt.appendChild(ut),ft.colorBoxes.push(ut)}),Bt},xt.prototype.getColorBox=function(ft){var Bt=this,Ot=this.uiStyleSettings.toolbarHeight/4,ut=this.uiStyleSettings.toolbarHeight-Ot,It=document.createElement("div");It.style.display="inline-block",It.style.boxSizing="content-box",It.style.width=ut-2+"px",It.style.height=ut-2+"px",It.style.padding="1px",It.style.marginRight="2px",It.style.marginBottom="2px",It.style.borderWidth="2px",It.style.borderStyle="solid",It.style.borderRadius=(ut+2)/2+"px",It.style.borderColor=ft===this.currentColor?this.uiStyleSettings.toolboxAccentColor:"transparent",It.addEventListener("click",function(){Bt.setCurrentColor(ft,It)});var nn=document.createElement("div");return nn.style.display="inline-block",nn.style.width=ut-2+"px",nn.style.height=ut-2+"px",nn.style.backgroundColor=ft,nn.style.borderRadius=ut/2+"px",ft==="transparent"&&(nn.style.fill=this.uiStyleSettings.toolboxAccentColor,nn.innerHTML=` `),It.appendChild(nn),It},xt.prototype.setCurrentColor=function(ft,Bt){var Ot=this;this.currentColor=ft,this.colorBoxes.forEach(function(ut){ut.style.borderColor=ut===Bt?Ot.uiStyleSettings.toolboxAccentColor:"transparent"}),this.onColorChanged&&this.onColorChanged(ft)},xt}(ie),fe=function(){function qt(xt,ft,Bt){this._state="new",this._isSelected=!1,this._container=xt,this._overlayContainer=ft,this.globalSettings=Bt,this.stateChanged=this.stateChanged.bind(this),this.colorChanged=this.colorChanged.bind(this),this.fillColorChanged=this.fillColorChanged.bind(this)}return Object.defineProperty(qt.prototype,"typeName",{get:function(){return Object.getPrototypeOf(this).constructor.typeName},enumerable:!1,configurable:!0}),Object.defineProperty(qt.prototype,"container",{get:function(){return this._container},enumerable:!1,configurable:!0}),Object.defineProperty(qt.prototype,"overlayContainer",{get:function(){return this._overlayContainer},enumerable:!1,configurable:!0}),Object.defineProperty(qt.prototype,"state",{get:function(){return this._state},enumerable:!1,configurable:!0}),Object.defineProperty(qt.prototype,"toolboxPanels",{get:function(){return[]},enumerable:!1,configurable:!0}),qt.prototype.ownsTarget=function(xt){return!1},Object.defineProperty(qt.prototype,"isSelected",{get:function(){return this._isSelected},enumerable:!1,configurable:!0}),qt.prototype.select=function(){this.container.style.cursor="move",this._isSelected=!0,this.manipulationStartState=this.getState()},qt.prototype.deselect=function(){this.container.style.cursor="default",this._isSelected=!1,this.stateChanged()},qt.prototype.pointerDown=function(xt,ft){},qt.prototype.dblClick=function(xt,ft){},qt.prototype.manipulate=function(xt){},qt.prototype.pointerUp=function(xt){this.stateChanged()},qt.prototype.dispose=function(){},qt.prototype.addMarkerVisualToContainer=function(xt){this.container.childNodes.length>0?this.container.insertBefore(xt,this.container.childNodes[0]):this.container.appendChild(xt)},qt.prototype.getState=function(){return{typeName:qt.typeName,state:this.state,notes:this.notes}},qt.prototype.restoreState=function(xt){this._state=xt.state,this.notes=xt.notes},qt.prototype.scale=function(xt,ft){},qt.prototype.colorChanged=function(xt){this.onColorChanged&&this.onColorChanged(xt),this.stateChanged()},qt.prototype.fillColorChanged=function(xt){this.onFillColorChanged&&this.onFillColorChanged(xt),this.stateChanged()},qt.prototype.stateChanged=function(){if(this.onStateChanged&&this.state!=="creating"&&this.state!=="new"){var xt=this.getState();this.manipulationStartState!==void 0&&(this.manipulationStartState.state="select"),xt.state="select",JSON.stringify(this.manipulationStartState)!=JSON.stringify(xt)&&this.onStateChanged(this)}},qt.typeName="MarkerBase",qt}(),de=function(){function qt(){this.findGripByVisual=this.findGripByVisual.bind(this)}return qt.prototype.findGripByVisual=function(xt){return this.topLeft.ownsTarget(xt)?this.topLeft:this.topCenter.ownsTarget(xt)?this.topCenter:this.topRight.ownsTarget(xt)?this.topRight:this.centerLeft.ownsTarget(xt)?this.centerLeft:this.centerRight.ownsTarget(xt)?this.centerRight:this.bottomLeft.ownsTarget(xt)?this.bottomLeft:this.bottomCenter.ownsTarget(xt)?this.bottomCenter:this.bottomRight.ownsTarget(xt)?this.bottomRight:void 0},qt}(),ve=function(){function qt(){this.GRIP_SIZE=10,this.visual=Oe.createGroup(),this.visual.appendChild(Oe.createCircle(1.5*this.GRIP_SIZE,[["fill","transparent"]])),this.visual.appendChild(Oe.createCircle(this.GRIP_SIZE,[["fill","#cccccc"],["fill-opacity","0.7"],["stroke","#333333"],["stroke-width","2"],["stroke-opacity","0.7"]]))}return qt.prototype.ownsTarget=function(xt){return xt===this.visual||xt===this.visual.childNodes[0]||xt===this.visual.childNodes[1]},qt}(),xe=function(){function qt(){}return qt.toITransformMatrix=function(xt){return{a:xt.a,b:xt.b,c:xt.c,d:xt.d,e:xt.e,f:xt.f}},qt.toSVGMatrix=function(xt,ft){return xt.a=ft.a,xt.b=ft.b,xt.c=ft.c,xt.d=ft.d,xt.e=ft.e,xt.f=ft.f,xt},qt}(),he=function(qt){function xt(ft,Bt,Ot){var ut=qt.call(this,ft,Bt,Ot)||this;return ut.left=0,ut.top=0,ut.width=0,ut.height=0,ut.defaultSize={x:50,y:20},ut.offsetX=0,ut.offsetY=0,ut.rotationAngle=0,ut.CB_DISTANCE=10,ut._suppressMarkerCreateEvent=!1,ut.container.transform.baseVal.appendItem(Oe.createTransform()),ut.setupControlBox(),ut}return et(xt,qt),Object.defineProperty(xt.prototype,"centerX",{get:function(){return this.left+this.width/2},enumerable:!1,configurable:!0}),Object.defineProperty(xt.prototype,"centerY",{get:function(){return this.top+this.height/2},enumerable:!1,configurable:!0}),Object.defineProperty(xt.prototype,"visual",{get:function(){return this._visual},set:function(ft){this._visual=ft;var Bt=Oe.createTransform();this._visual.transform.baseVal.appendItem(Bt)},enumerable:!1,configurable:!0}),xt.prototype.ownsTarget=function(ft){return!!qt.prototype.ownsTarget.call(this,ft)||!!(this.controlGrips.findGripByVisual(ft)!==void 0||this.rotatorGrip!==void 0&&this.rotatorGrip.ownsTarget(ft))},xt.prototype.pointerDown=function(ft,Bt){qt.prototype.pointerDown.call(this,ft,Bt),this.state==="new"&&(this.left=ft.x,this.top=ft.y),this.manipulationStartLeft=this.left,this.manipulationStartTop=this.top,this.manipulationStartWidth=this.width,this.manipulationStartHeight=this.height;var Ot=this.unrotatePoint(ft);if(this.manipulationStartX=Ot.x,this.manipulationStartY=Ot.y,this.offsetX=Ot.x-this.left,this.offsetY=Ot.y-this.top,this.state!=="new")if(this.select(),this.activeGrip=this.controlGrips.findGripByVisual(Bt),this.activeGrip!==void 0)this._state="resize";else if(this.rotatorGrip!==void 0&&this.rotatorGrip.ownsTarget(Bt)){this.activeGrip=this.rotatorGrip;var ut=this.rotatePoint({x:this.centerX,y:this.centerY});this.left=ut.x-this.width/2,this.top=ut.y-this.height/2,this.moveVisual({x:this.left,y:this.top});var It=this.container.transform.baseVal.getItem(0);It.setRotate(this.rotationAngle,this.centerX,this.centerY),this.container.transform.baseVal.replaceItem(It,0),this.adjustControlBox(),this._state="rotate"}else this._state="move"},xt.prototype.pointerUp=function(ft){var Bt=this.state;qt.prototype.pointerUp.call(this,ft),this.state==="creating"&&this.width<10&&this.height<10?(this.width=this.defaultSize.x,this.height=this.defaultSize.y):this.manipulate(ft),this._state="select",Bt==="creating"&&this.onMarkerCreated&&this._suppressMarkerCreateEvent===!1&&this.onMarkerCreated(this)},xt.prototype.moveVisual=function(ft){this.visual.style.transform="translate("+ft.x+"px, "+ft.y+"px)"},xt.prototype.manipulate=function(ft){var Bt=this.unrotatePoint(ft);this.state==="creating"?this.resize(ft):this.state==="move"?(this.left=this.manipulationStartLeft+(Bt.x-this.manipulationStartLeft)-this.offsetX,this.top=this.manipulationStartTop+(Bt.y-this.manipulationStartTop)-this.offsetY,this.moveVisual({x:this.left,y:this.top}),this.adjustControlBox()):this.state==="resize"?this.resize(Bt):this.state==="rotate"&&this.rotate(ft)},xt.prototype.resize=function(ft){var Bt=this.manipulationStartLeft,Ot=this.manipulationStartWidth,ut=this.manipulationStartTop,It=this.manipulationStartHeight;switch(this.activeGrip){case this.controlGrips.bottomLeft:case this.controlGrips.centerLeft:case this.controlGrips.topLeft:Bt=this.manipulationStartLeft+ft.x-this.manipulationStartX,Ot=this.manipulationStartWidth+this.manipulationStartLeft-Bt;break;case this.controlGrips.bottomRight:case this.controlGrips.centerRight:case this.controlGrips.topRight:case void 0:Ot=this.manipulationStartWidth+ft.x-this.manipulationStartX}switch(this.activeGrip){case this.controlGrips.topCenter:case this.controlGrips.topLeft:case this.controlGrips.topRight:ut=this.manipulationStartTop+ft.y-this.manipulationStartY,It=this.manipulationStartHeight+this.manipulationStartTop-ut;break;case this.controlGrips.bottomCenter:case this.controlGrips.bottomLeft:case this.controlGrips.bottomRight:case void 0:It=this.manipulationStartHeight+ft.y-this.manipulationStartY}Ot>=0?(this.left=Bt,this.width=Ot):(this.left=Bt+Ot,this.width=-Ot),It>=0?(this.top=ut,this.height=It):(this.top=ut+It,this.height=-It),this.setSize()},xt.prototype.setSize=function(){this.moveVisual({x:this.left,y:this.top}),this.adjustControlBox()},xt.prototype.rotate=function(ft){if(Math.abs(ft.x-this.centerX)>.1){var Bt=Math.sign(ft.x-this.centerX);this.rotationAngle=180*Math.atan((ft.y-this.centerY)/(ft.x-this.centerX))/Math.PI+90*Bt,this.applyRotation()}},xt.prototype.applyRotation=function(){var ft=this.container.transform.baseVal.getItem(0);ft.setRotate(this.rotationAngle,this.centerX,this.centerY),this.container.transform.baseVal.replaceItem(ft,0)},xt.prototype.rotatePoint=function(ft){if(this.rotationAngle===0)return ft;var Bt=this.container.getCTM(),Ot=Oe.createPoint(ft.x,ft.y);return{x:(Ot=Ot.matrixTransform(Bt)).x,y:Ot.y}},xt.prototype.unrotatePoint=function(ft){if(this.rotationAngle===0)return ft;var Bt=this.container.getCTM();Bt=Bt.inverse();var Ot=Oe.createPoint(ft.x,ft.y);return{x:(Ot=Ot.matrixTransform(Bt)).x,y:Ot.y}},xt.prototype.select=function(){qt.prototype.select.call(this),this.adjustControlBox(),this.controlBox.style.display=""},xt.prototype.deselect=function(){qt.prototype.deselect.call(this),this.controlBox.style.display="none"},xt.prototype.setupControlBox=function(){this.controlBox=Oe.createGroup();var ft=Oe.createTransform();ft.setTranslate(-this.CB_DISTANCE/2,-this.CB_DISTANCE/2),this.controlBox.transform.baseVal.appendItem(ft),this.container.appendChild(this.controlBox),this.controlRect=Oe.createRect(this.width+this.CB_DISTANCE,this.height+this.CB_DISTANCE,[["stroke","black"],["stroke-width","1"],["stroke-opacity","0.5"],["stroke-dasharray","3, 2"],["fill","transparent"],["pointer-events","none"]]),this.controlBox.appendChild(this.controlRect),this.globalSettings.disableRotation!==!0&&(this.rotatorGripLine=Oe.createLine((this.width+2*this.CB_DISTANCE)/2,this.top-this.CB_DISTANCE,(this.width+2*this.CB_DISTANCE)/2,this.top-3*this.CB_DISTANCE,[["stroke","black"],["stroke-width","1"],["stroke-opacity","0.5"],["stroke-dasharray","3, 2"]]),this.controlBox.appendChild(this.rotatorGripLine)),this.controlGrips=new de,this.addControlGrips(),this.controlBox.style.display="none"},xt.prototype.adjustControlBox=function(){var ft=this.controlBox.transform.baseVal.getItem(0);ft.setTranslate(this.left-this.CB_DISTANCE/2,this.top-this.CB_DISTANCE/2),this.controlBox.transform.baseVal.replaceItem(ft,0),this.controlRect.setAttribute("width",(this.width+this.CB_DISTANCE).toString()),this.controlRect.setAttribute("height",(this.height+this.CB_DISTANCE).toString()),this.rotatorGripLine!==void 0&&(this.rotatorGripLine.setAttribute("x1",((this.width+this.CB_DISTANCE)/2).toString()),this.rotatorGripLine.setAttribute("y1",(-this.CB_DISTANCE/2).toString()),this.rotatorGripLine.setAttribute("x2",((this.width+this.CB_DISTANCE)/2).toString()),this.rotatorGripLine.setAttribute("y2",(3*-this.CB_DISTANCE).toString())),this.positionGrips()},xt.prototype.addControlGrips=function(){this.controlGrips.topLeft=this.createGrip(),this.controlGrips.topCenter=this.createGrip(),this.controlGrips.topRight=this.createGrip(),this.controlGrips.centerLeft=this.createGrip(),this.controlGrips.centerRight=this.createGrip(),this.controlGrips.bottomLeft=this.createGrip(),this.controlGrips.bottomCenter=this.createGrip(),this.controlGrips.bottomRight=this.createGrip(),this.globalSettings.disableRotation!==!0&&(this.rotatorGrip=this.createGrip()),this.positionGrips()},xt.prototype.createGrip=function(){var ft=new ve;return ft.visual.transform.baseVal.appendItem(Oe.createTransform()),this.controlBox.appendChild(ft.visual),ft},xt.prototype.positionGrips=function(){var ft=this.controlGrips.topLeft.GRIP_SIZE,Bt=-ft/2,Ot=Bt,ut=(this.width+this.CB_DISTANCE)/2-ft/2,It=(this.height+this.CB_DISTANCE)/2-ft/2,nn=this.height+this.CB_DISTANCE-ft/2,Pt=this.width+this.CB_DISTANCE-ft/2;this.positionGrip(this.controlGrips.topLeft.visual,Bt,Ot),this.positionGrip(this.controlGrips.topCenter.visual,ut,Ot),this.positionGrip(this.controlGrips.topRight.visual,Pt,Ot),this.positionGrip(this.controlGrips.centerLeft.visual,Bt,It),this.positionGrip(this.controlGrips.centerRight.visual,Pt,It),this.positionGrip(this.controlGrips.bottomLeft.visual,Bt,nn),this.positionGrip(this.controlGrips.bottomCenter.visual,ut,nn),this.positionGrip(this.controlGrips.bottomRight.visual,Pt,nn),this.rotatorGrip!==void 0&&this.positionGrip(this.rotatorGrip.visual,ut,Ot-3*this.CB_DISTANCE)},xt.prototype.positionGrip=function(ft,Bt,Ot){var ut=ft.transform.baseVal.getItem(0);ut.setTranslate(Bt,Ot),ft.transform.baseVal.replaceItem(ut,0)},xt.prototype.hideControlBox=function(){this.controlBox.style.display="none"},xt.prototype.showControlBox=function(){this.controlBox.style.display=""},xt.prototype.getState=function(){return Object.assign({left:this.left,top:this.top,width:this.width,height:this.height,rotationAngle:this.rotationAngle,visualTransformMatrix:xe.toITransformMatrix(this.visual.transform.baseVal.getItem(0).matrix),containerTransformMatrix:xe.toITransformMatrix(this.container.transform.baseVal.getItem(0).matrix)},qt.prototype.getState.call(this))},xt.prototype.restoreState=function(ft){qt.prototype.restoreState.call(this,ft);var Bt=ft;this.left=Bt.left,this.top=Bt.top,this.width=Bt.width,this.height=Bt.height,this.rotationAngle=Bt.rotationAngle,this.visual.transform.baseVal.getItem(0).setMatrix(xe.toSVGMatrix(this.visual.transform.baseVal.getItem(0).matrix,Bt.visualTransformMatrix)),this.container.transform.baseVal.getItem(0).setMatrix(xe.toSVGMatrix(this.container.transform.baseVal.getItem(0).matrix,Bt.containerTransformMatrix))},xt.prototype.scale=function(ft,Bt){qt.prototype.scale.call(this,ft,Bt);var Ot=this.rotatePoint({x:this.left,y:this.top}),ut=this.unrotatePoint({x:Ot.x*ft,y:Ot.y*Bt});this.left=ut.x,this.top=ut.y,this.width=this.width*ft,this.height=this.height*Bt,this.adjustControlBox()},xt}(fe),pe=function(qt){function xt(ft,Bt,Ot){var ut=qt.call(this,ft,Bt,Ot)||this;return ut.fillColor="transparent",ut.strokeColor="transparent",ut.strokeWidth=0,ut.strokeDasharray="",ut.opacity=1,ut.setStrokeColor=ut.setStrokeColor.bind(ut),ut.setFillColor=ut.setFillColor.bind(ut),ut.setStrokeWidth=ut.setStrokeWidth.bind(ut),ut.setStrokeDasharray=ut.setStrokeDasharray.bind(ut),ut.createVisual=ut.createVisual.bind(ut),ut}return et(xt,qt),xt.prototype.ownsTarget=function(ft){return!(!qt.prototype.ownsTarget.call(this,ft)&&ft!==this.visual)},xt.prototype.createVisual=function(){this.visual=Oe.createRect(1,1,[["fill",this.fillColor],["stroke",this.strokeColor],["stroke-width",this.strokeWidth.toString()],["stroke-dasharray",this.strokeDasharray],["opacity",this.opacity.toString()]]),this.addMarkerVisualToContainer(this.visual)},xt.prototype.pointerDown=function(ft,Bt){qt.prototype.pointerDown.call(this,ft,Bt),this.state==="new"&&(this.createVisual(),this.moveVisual(ft),this._state="creating")},xt.prototype.manipulate=function(ft){qt.prototype.manipulate.call(this,ft)},xt.prototype.resize=function(ft){qt.prototype.resize.call(this,ft),this.setSize()},xt.prototype.setSize=function(){qt.prototype.setSize.call(this),Oe.setAttributes(this.visual,[["width",this.width.toString()],["height",this.height.toString()]])},xt.prototype.pointerUp=function(ft){qt.prototype.pointerUp.call(this,ft),this.setSize()},xt.prototype.setStrokeColor=function(ft){this.strokeColor=ft,this.visual&&Oe.setAttributes(this.visual,[["stroke",this.strokeColor]]),this.colorChanged(ft),this.stateChanged()},xt.prototype.setFillColor=function(ft){this.fillColor=ft,this.visual&&Oe.setAttributes(this.visual,[["fill",this.fillColor]]),this.stateChanged()},xt.prototype.setStrokeWidth=function(ft){this.strokeWidth=ft,this.visual&&Oe.setAttributes(this.visual,[["stroke-width",this.strokeWidth.toString()]]),this.stateChanged()},xt.prototype.setStrokeDasharray=function(ft){this.strokeDasharray=ft,this.visual&&Oe.setAttributes(this.visual,[["stroke-dasharray",this.strokeDasharray]]),this.stateChanged()},xt.prototype.getState=function(){return Object.assign({fillColor:this.fillColor,strokeColor:this.strokeColor,strokeWidth:this.strokeWidth,strokeDasharray:this.strokeDasharray,opacity:this.opacity},qt.prototype.getState.call(this))},xt.prototype.restoreState=function(ft){var Bt=ft;this.fillColor=Bt.fillColor,this.strokeColor=Bt.strokeColor,this.strokeWidth=Bt.strokeWidth,this.strokeDasharray=Bt.strokeDasharray,this.opacity=Bt.opacity,this.createVisual(),qt.prototype.restoreState.call(this,ft),this.setSize()},xt.prototype.scale=function(ft,Bt){qt.prototype.scale.call(this,ft,Bt),this.setSize()},xt.title="Rectangle marker",xt}(he),Se=function(qt){function xt(ft,Bt,Ot,ut){var It=qt.call(this,ft,ut||'')||this;return It.widths=[],It.widthBoxes=[],It.widths=Bt,It.currentWidth=Ot,It.setCurrentWidth=It.setCurrentWidth.bind(It),It}return et(xt,qt),xt.prototype.getUi=function(){var ft=this,Bt=document.createElement("div");return Bt.style.display="flex",Bt.style.overflow="hidden",Bt.style.flexGrow="2",this.widths.forEach(function(Ot){var ut=document.createElement("div");ut.style.display="flex",ut.style.flexGrow="2",ut.style.alignItems="center",ut.style.justifyContent="space-between",ut.style.padding="5px",ut.style.borderWidth="2px",ut.style.borderStyle="solid",ut.style.borderColor=Ot===ft.currentWidth?ft.uiStyleSettings.toolboxAccentColor:"transparent",ut.addEventListener("click",function(){ft.setCurrentWidth(Ot,ut)}),Bt.appendChild(ut);var It=document.createElement("div");It.innerText=Ot.toString(),It.style.marginRight="5px",ut.appendChild(It);var nn=document.createElement("div");nn.style.minHeight="20px",nn.style.flexGrow="2",nn.style.display="flex",nn.style.alignItems="center";var Pt=document.createElement("hr");Pt.style.minWidth="20px",Pt.style.border="0px",Pt.style.borderTop=Ot+"px solid "+ft.uiStyleSettings.toolboxColor,Pt.style.flexGrow="2",nn.appendChild(Pt),ut.appendChild(nn),ft.widthBoxes.push(ut)}),Bt},xt.prototype.setCurrentWidth=function(ft,Bt){var Ot=this;this.currentWidth=ft,this.widthBoxes.forEach(function(ut){ut.style.borderColor=ut===Bt?Ot.uiStyleSettings.toolboxAccentColor:"transparent"}),this.onWidthChanged&&this.onWidthChanged(this.currentWidth)},xt}(ie),Ne=function(qt){function xt(ft,Bt,Ot,ut){var It=qt.call(this,ft,ut||'')||this;return It.styles=[],It.styleBoxes=[],It.styles=Bt,It.currentStyle=Ot,It.setCurrentStyle=It.setCurrentStyle.bind(It),It}return et(xt,qt),xt.prototype.getUi=function(){var ft=this,Bt=document.createElement("div");return Bt.style.display="flex",Bt.style.overflow="hidden",Bt.style.flexGrow="2",this.styles.forEach(function(Ot){var ut=document.createElement("div");ut.style.display="flex",ut.style.alignItems="center",ut.style.justifyContent="space-between",ut.style.padding="5px",ut.style.borderWidth="2px",ut.style.borderStyle="solid",ut.style.overflow="hidden",ut.style.maxWidth=100/ft.styles.length-5+"%",ut.style.borderColor=Ot===ft.currentStyle?ft.uiStyleSettings.toolboxAccentColor:"transparent",ut.addEventListener("click",function(){ft.setCurrentStyle(Ot,ut)}),Bt.appendChild(ut);var It=document.createElement("div");It.style.minHeight="20px",It.style.flexGrow="2",It.style.overflow="hidden";var nn=` `;It.innerHTML=nn,ut.appendChild(It),ft.styleBoxes.push(ut)}),Bt},xt.prototype.setCurrentStyle=function(ft,Bt){var Ot=this;this.currentStyle=ft,this.styleBoxes.forEach(function(ut){ut.style.borderColor=ut===Bt?Ot.uiStyleSettings.toolboxAccentColor:"transparent"}),this.onStyleChanged&&this.onStyleChanged(this.currentStyle)},xt}(ie),ze=function(qt){function xt(ft,Bt,Ot){var ut=qt.call(this,ft,Bt,Ot)||this;return ut.strokeColor=Ot.defaultColor,ut.strokeWidth=Ot.defaultStrokeWidth,ut.strokeDasharray=Ot.defaultStrokeDasharray,ut.strokePanel=new ae("Line color",Ot.defaultColorSet,Ot.defaultColor),ut.strokePanel.onColorChanged=ut.setStrokeColor,ut.strokeWidthPanel=new Se("Line width",Ot.defaultStrokeWidths,Ot.defaultStrokeWidth),ut.strokeWidthPanel.onWidthChanged=ut.setStrokeWidth,ut.strokeStylePanel=new Ne("Line style",Ot.defaultStrokeDasharrays,Ot.defaultStrokeDasharray),ut.strokeStylePanel.onStyleChanged=ut.setStrokeDasharray,ut}return et(xt,qt),Object.defineProperty(xt.prototype,"toolboxPanels",{get:function(){return[this.strokePanel,this.strokeWidthPanel,this.strokeStylePanel]},enumerable:!1,configurable:!0}),xt.prototype.getState=function(){var ft=qt.prototype.getState.call(this);return ft.typeName=xt.typeName,ft},xt.typeName="FrameMarker",xt.title="Frame marker",xt.icon='',xt}(pe),Ke=function(){this.defaultColorSet=["#EF4444","#10B981","#2563EB","#FFFF00","#7C3AED","#F472B6","#000000","#FFFFFF"],this.defaultColor=this.defaultColorSet[0],this.defaultFillColor=this.defaultColorSet[0],this.defaultStrokeColor=this.defaultColorSet[7],this.defaultHighlightColor=this.defaultColorSet[3],this.defaultStrokeWidth=3,this.defaultStrokeDasharray="",this.defaultHighlightOpacity=.5,this.defaultFontFamily="Helvetica, Arial, sans-serif",this.defaultStrokeWidths=[1,2,3,5,10],this.defaultStrokeDasharrays=["","3","12 3","9 6 3 6"],this.defaultOpacitySteps=[.1,.25,.5,.75,1],this.displayMode="inline",this.defaultFontFamilies=['Times, "Times New Roman", serif',"Helvetica, Arial, sans-serif",'Courier, "Courier New", monospace',"cursive","fantasy"],this.popupMargin=30,this.newFreehandMarkerOnPointerUp=!1,this.defaultColorsFollowCurrentColors=!1,this.freehandPixelRatio=1,this.disableRotation=!1,this.defaultCaptionFontSize="1rem",this.defaultCaptionText="Text"},Ve=function(qt){function xt(ft,Bt,Ot){var ut=qt.call(this,ft,Bt,Ot)||this;return ut.x1=0,ut.y1=0,ut.x2=0,ut.y2=0,ut.defaultLength=50,ut.manipulationStartX=0,ut.manipulationStartY=0,ut.manipulationStartX1=0,ut.manipulationStartY1=0,ut.manipulationStartX2=0,ut.manipulationStartY2=0,ut.setupControlBox(),ut}return et(xt,qt),xt.prototype.ownsTarget=function(ft){return!!qt.prototype.ownsTarget.call(this,ft)||!(!this.grip1.ownsTarget(ft)&&!this.grip2.ownsTarget(ft))},xt.prototype.pointerDown=function(ft,Bt){qt.prototype.pointerDown.call(this,ft,Bt),this.manipulationStartX=ft.x,this.manipulationStartY=ft.y,this.state==="new"&&(this.x1=ft.x,this.y1=ft.y,this.x2=ft.x,this.y2=ft.y),this.manipulationStartX1=this.x1,this.manipulationStartY1=this.y1,this.manipulationStartX2=this.x2,this.manipulationStartY2=this.y2,this.state!=="new"&&(this.select(),this.grip1.ownsTarget(Bt)?this.activeGrip=this.grip1:this.grip2.ownsTarget(Bt)?this.activeGrip=this.grip2:this.activeGrip=void 0,this.activeGrip?this._state="resize":this._state="move")},xt.prototype.pointerUp=function(ft){var Bt=this.state;qt.prototype.pointerUp.call(this,ft),this.state==="creating"&&Math.abs(this.x1-this.x2)<10&&Math.abs(this.y1-this.y2)<10?(this.x2=this.x1+this.defaultLength,this.adjustVisual(),this.adjustControlBox()):this.manipulate(ft),this._state="select",Bt==="creating"&&this.onMarkerCreated&&this.onMarkerCreated(this)},xt.prototype.adjustVisual=function(){},xt.prototype.manipulate=function(ft){this.state==="creating"?this.resize(ft):this.state==="move"?(this.x1=this.manipulationStartX1+ft.x-this.manipulationStartX,this.y1=this.manipulationStartY1+ft.y-this.manipulationStartY,this.x2=this.manipulationStartX2+ft.x-this.manipulationStartX,this.y2=this.manipulationStartY2+ft.y-this.manipulationStartY,this.adjustVisual(),this.adjustControlBox()):this.state==="resize"&&this.resize(ft)},xt.prototype.resize=function(ft){switch(this.activeGrip){case this.grip1:this.x1=ft.x,this.y1=ft.y;break;case this.grip2:case void 0:this.x2=ft.x,this.y2=ft.y}this.adjustVisual(),this.adjustControlBox()},xt.prototype.select=function(){qt.prototype.select.call(this),this.adjustControlBox(),this.controlBox.style.display=""},xt.prototype.deselect=function(){qt.prototype.deselect.call(this),this.controlBox.style.display="none"},xt.prototype.setupControlBox=function(){this.controlBox=Oe.createGroup(),this.container.appendChild(this.controlBox),this.addControlGrips(),this.controlBox.style.display="none"},xt.prototype.adjustControlBox=function(){this.positionGrips()},xt.prototype.addControlGrips=function(){this.grip1=this.createGrip(),this.grip2=this.createGrip(),this.positionGrips()},xt.prototype.createGrip=function(){var ft=new ve;return ft.visual.transform.baseVal.appendItem(Oe.createTransform()),this.controlBox.appendChild(ft.visual),ft},xt.prototype.positionGrips=function(){var ft=this.grip1.GRIP_SIZE;this.positionGrip(this.grip1.visual,this.x1-ft/2,this.y1-ft/2),this.positionGrip(this.grip2.visual,this.x2-ft/2,this.y2-ft/2)},xt.prototype.positionGrip=function(ft,Bt,Ot){var ut=ft.transform.baseVal.getItem(0);ut.setTranslate(Bt,Ot),ft.transform.baseVal.replaceItem(ut,0)},xt.prototype.getState=function(){return Object.assign({x1:this.x1,y1:this.y1,x2:this.x2,y2:this.y2},qt.prototype.getState.call(this))},xt.prototype.restoreState=function(ft){qt.prototype.restoreState.call(this,ft);var Bt=ft;this.x1=Bt.x1,this.y1=Bt.y1,this.x2=Bt.x2,this.y2=Bt.y2},xt.prototype.scale=function(ft,Bt){qt.prototype.scale.call(this,ft,Bt),this.x1=this.x1*ft,this.y1=this.y1*Bt,this.x2=this.x2*ft,this.y2=this.y2*Bt,this.adjustVisual(),this.adjustControlBox()},xt}(fe),Je=function(qt){function xt(ft,Bt,Ot){var ut=qt.call(this,ft,Bt,Ot)||this;return ut.strokeColor="transparent",ut.strokeWidth=0,ut.strokeDasharray="",ut.setStrokeColor=ut.setStrokeColor.bind(ut),ut.setStrokeWidth=ut.setStrokeWidth.bind(ut),ut.setStrokeDasharray=ut.setStrokeDasharray.bind(ut),ut.strokeColor=Ot.defaultColor,ut.strokeWidth=Ot.defaultStrokeWidth,ut.strokeDasharray=Ot.defaultStrokeDasharray,ut.strokePanel=new ae("Line color",Ot.defaultColorSet,Ot.defaultColor),ut.strokePanel.onColorChanged=ut.setStrokeColor,ut.strokeWidthPanel=new Se("Line width",Ot.defaultStrokeWidths,Ot.defaultStrokeWidth),ut.strokeWidthPanel.onWidthChanged=ut.setStrokeWidth,ut.strokeStylePanel=new Ne("Line style",Ot.defaultStrokeDasharrays,Ot.defaultStrokeDasharray),ut.strokeStylePanel.onStyleChanged=ut.setStrokeDasharray,ut}return et(xt,qt),xt.prototype.ownsTarget=function(ft){return!(!qt.prototype.ownsTarget.call(this,ft)&&ft!==this.visual&&ft!==this.selectorLine&&ft!==this.visibleLine)},xt.prototype.createVisual=function(){this.visual=Oe.createGroup(),this.selectorLine=Oe.createLine(this.x1,this.y1,this.x2,this.y2,[["stroke","transparent"],["stroke-width",(this.strokeWidth+10).toString()]]),this.visibleLine=Oe.createLine(this.x1,this.y1,this.x2,this.y2,[["stroke",this.strokeColor],["stroke-width",this.strokeWidth.toString()]]),this.visual.appendChild(this.selectorLine),this.visual.appendChild(this.visibleLine),this.addMarkerVisualToContainer(this.visual)},xt.prototype.pointerDown=function(ft,Bt){qt.prototype.pointerDown.call(this,ft,Bt),this.state==="new"&&(this.createVisual(),this.adjustVisual(),this._state="creating")},xt.prototype.adjustVisual=function(){this.selectorLine&&this.visibleLine&&(this.selectorLine.setAttribute("x1",this.x1.toString()),this.selectorLine.setAttribute("y1",this.y1.toString()),this.selectorLine.setAttribute("x2",this.x2.toString()),this.selectorLine.setAttribute("y2",this.y2.toString()),this.visibleLine.setAttribute("x1",this.x1.toString()),this.visibleLine.setAttribute("y1",this.y1.toString()),this.visibleLine.setAttribute("x2",this.x2.toString()),this.visibleLine.setAttribute("y2",this.y2.toString()),Oe.setAttributes(this.visibleLine,[["stroke",this.strokeColor]]),Oe.setAttributes(this.visibleLine,[["stroke-width",this.strokeWidth.toString()]]),Oe.setAttributes(this.visibleLine,[["stroke-dasharray",this.strokeDasharray.toString()]]))},xt.prototype.setStrokeColor=function(ft){this.strokeColor=ft,this.adjustVisual(),this.colorChanged(ft)},xt.prototype.setStrokeWidth=function(ft){this.strokeWidth=ft,this.adjustVisual()},xt.prototype.setStrokeDasharray=function(ft){this.strokeDasharray=ft,this.adjustVisual(),this.stateChanged()},Object.defineProperty(xt.prototype,"toolboxPanels",{get:function(){return[this.strokePanel,this.strokeWidthPanel,this.strokeStylePanel]},enumerable:!1,configurable:!0}),xt.prototype.getState=function(){var ft=Object.assign({strokeColor:this.strokeColor,strokeWidth:this.strokeWidth,strokeDasharray:this.strokeDasharray},qt.prototype.getState.call(this));return ft.typeName=xt.typeName,ft},xt.prototype.restoreState=function(ft){qt.prototype.restoreState.call(this,ft);var Bt=ft;this.strokeColor=Bt.strokeColor,this.strokeWidth=Bt.strokeWidth,this.strokeDasharray=Bt.strokeDasharray,this.createVisual(),this.adjustVisual()},xt.typeName="LineMarker",xt.title="Line marker",xt.icon='',xt}(Ve),tt=function(qt){function xt(ft,Bt,Ot,ut){var It=qt.call(this,ft,ut||'')||this;return It.fonts=[],It.fontBoxes=[],It.fonts=Bt,It.currentFont=Ot,It.setCurrentFont=It.setCurrentFont.bind(It),It}return et(xt,qt),xt.prototype.getUi=function(){var ft=this,Bt=document.createElement("div");return Bt.style.overflow="hidden",Bt.style.flexGrow="2",this.fonts.forEach(function(Ot){var ut=document.createElement("div");ut.style.display="inline-block",ut.style.alignItems="center",ut.style.justifyContent="space-between",ut.style.padding="5px",ut.style.borderWidth="2px",ut.style.borderStyle="solid",ut.style.overflow="hidden",ut.style.maxWidth=100/ft.fonts.length-5+"%",ut.style.borderColor=Ot===ft.currentFont?ft.uiStyleSettings.toolboxAccentColor:"transparent",ut.addEventListener("click",function(){ft.setCurrentFont(Ot,ut)}),Bt.appendChild(ut);var It=document.createElement("div");It.style.display="flex",It.style.minHeight="20px",It.style.flexGrow="2",It.style.fontFamily=Ot,It.style.overflow="hidden";var nn=document.createElement("div");nn.style.whiteSpace="nowrap",nn.style.overflow="hidden",nn.style.textOverflow="ellipsis",nn.innerHTML="The quick brown fox jumps over the lazy dog",It.appendChild(nn),ut.appendChild(It),ft.fontBoxes.push(ut)}),Bt},xt.prototype.setCurrentFont=function(ft,Bt){var Ot=this;this.currentFont=ft,this.fontBoxes.forEach(function(ut){ut.style.borderColor=ut===Bt?Ot.uiStyleSettings.toolboxAccentColor:"transparent"}),this.onFontChanged&&this.onFontChanged(this.currentFont)},xt}(ie),gt=function(qt){function xt(ft,Bt,Ot){var ut=qt.call(this,ft,Bt,Ot)||this;return ut.color="transparent",ut.padding=5,ut.DEFAULT_TEXT="\u8BF7\u8F93\u5165\u6587\u672C",ut.text=ut.DEFAULT_TEXT,ut.isMoved=!1,ut.color=Ot.defaultColor,ut.fontFamily=Ot.defaultFontFamily,ut.defaultSize={x:100,y:30},ut.setColor=ut.setColor.bind(ut),ut.setFont=ut.setFont.bind(ut),ut.renderText=ut.renderText.bind(ut),ut.sizeText=ut.sizeText.bind(ut),ut.textEditDivClicked=ut.textEditDivClicked.bind(ut),ut.showTextEditor=ut.showTextEditor.bind(ut),ut.setSize=ut.setSize.bind(ut),ut.positionTextEditor=ut.positionTextEditor.bind(ut),ut.colorPanel=new ae("Color",Ot.defaultColorSet,Ot.defaultColor),ut.colorPanel.onColorChanged=ut.setColor,ut.fontFamilyPanel=new tt("Font",Ot.defaultFontFamilies,Ot.defaultFontFamily),ut.fontFamilyPanel.onFontChanged=ut.setFont,ut}return et(xt,qt),xt.prototype.ownsTarget=function(ft){if(qt.prototype.ownsTarget.call(this,ft)||ft===this.visual||ft===this.textElement||ft===this.bgRectangle)return!0;var Bt=!1;return this.textElement.childNodes.forEach(function(Ot){Ot===ft&&(Bt=!0)}),Bt},xt.prototype.createVisual=function(){this.visual=Oe.createGroup(),this.bgRectangle=Oe.createRect(1,1,[["fill","transparent"]]),this.visual.appendChild(this.bgRectangle),this.textElement=Oe.createText([["fill",this.color],["font-family",this.fontFamily],["font-size","16px"],["x","0"],["y","0"]]),this.textElement.transform.baseVal.appendItem(Oe.createTransform()),this.textElement.transform.baseVal.appendItem(Oe.createTransform()),this.visual.appendChild(this.textElement),this.addMarkerVisualToContainer(this.visual),this.renderText()},xt.prototype.pointerDown=function(ft,Bt){qt.prototype.pointerDown.call(this,ft,Bt),this.isMoved=!1,this.pointerDownPoint=ft,this.pointerDownTimestamp=Date.now(),this.state==="new"&&(this.createVisual(),this.moveVisual(ft),this._state="creating")},xt.prototype.renderText=function(){var ft=this;if(this.textElement){for(;this.textElement.lastChild;)this.textElement.removeChild(this.textElement.lastChild);this.text.split(/\r\n|[\n\v\f\r\x85\u2028\u2029]/).forEach(function(Bt){ft.textElement.appendChild(Oe.createTSpan(Bt.trim()===""?" ":Bt.trim(),[["x","0"],["dy","1.2em"]]))}),setTimeout(this.sizeText,10)}},xt.prototype.getTextScale=function(){var ft=this.textElement.getBBox(),Bt=1;if(ft.width>0&&ft.height>0){var Ot=(1*this.width-this.width*this.padding*2/100)/ft.width,ut=(1*this.height-this.height*this.padding*2/100)/ft.height;Bt=Math.min(Ot,ut)}return Bt},xt.prototype.getTextPosition=function(ft){var Bt=this.textElement.getBBox(),Ot=0,ut=0;return Bt.width>0&&Bt.height>0&&(Ot=(this.width-Bt.width*ft)/2,ut=this.height/2-Bt.height*ft/2),{x:Ot,y:ut}},xt.prototype.sizeText=function(){var ft=this.textElement.getBBox(),Bt=this.getTextScale(),Ot=this.getTextPosition(Bt);Ot.y-=ft.y*Bt,navigator.userAgent.indexOf("Edge/")>-1?this.textElement.style.transform="translate("+Ot.x+"px, "+Ot.y+"px) scale("+Bt+", "+Bt+")":(this.textElement.transform.baseVal.getItem(0).setTranslate(Ot.x,Ot.y),this.textElement.transform.baseVal.getItem(1).setScale(Bt,Bt))},xt.prototype.manipulate=function(ft){qt.prototype.manipulate.call(this,ft),this.pointerDownPoint!==void 0&&(this.isMoved=Math.abs(ft.x-this.pointerDownPoint.x)>5||Math.abs(ft.y-this.pointerDownPoint.y)>5)},xt.prototype.resize=function(ft){qt.prototype.resize.call(this,ft),this.isMoved=!0,this.setSize(),this.sizeText()},xt.prototype.setSize=function(){qt.prototype.setSize.call(this),this.visual&&this.bgRectangle&&(Oe.setAttributes(this.visual,[["width",this.width.toString()],["height",this.height.toString()]]),Oe.setAttributes(this.bgRectangle,[["width",this.width.toString()],["height",this.height.toString()]]))},xt.prototype.pointerUp=function(ft){var Bt=this.state;Bt==="creating"&&(this._suppressMarkerCreateEvent=!0),qt.prototype.pointerUp.call(this,ft),this.setSize(),(Bt==="creating"||!this.isMoved&&Date.now()-this.pointerDownTimestamp>500)&&this.showTextEditor(),this.pointerDownPoint=void 0},xt.prototype.showTextEditor=function(){var ft=this;this._state="edit",this.overlayContainer.innerHTML="",this.textEditDiv=document.createElement("div"),this.textEditDiv.style.flexGrow="2",this.textEditDiv.style.alignItems="center",this.textEditDiv.style.justifyContent="center",this.textEditDiv.style.pointerEvents="auto",this.textEditDiv.style.overflow="hidden",this.textEditor=document.createElement("div"),this.textEditor.style.position="absolute",this.textEditor.style.fontFamily=this.fontFamily,this.textEditor.style.lineHeight="1em",this.textEditor.innerText=this.text,this.textEditor.contentEditable="true",this.textEditor.style.color=this.color,this.textEditor.style.whiteSpace="pre",this.positionTextEditor(),this.textEditor.addEventListener("pointerup",function(Bt){Bt.stopPropagation()}),this.textEditor.addEventListener("input",function(){for(var Bt=Number.parseFloat(ft.textEditor.style.fontSize);ft.textEditor.clientWidth>=Number.parseInt(ft.textEditor.style.maxWidth)&&Bt>.9;)Bt-=.1,ft.textEditor.style.fontSize=Math.max(Bt,.9)+"em"}),this.textEditor.addEventListener("keyup",function(Bt){Bt.cancelBubble=!0}),this.textEditor.addEventListener("paste",function(Bt){if(Bt.clipboardData){var Ot=Bt.clipboardData.getData("text"),ut=window.getSelection();if(!ut.rangeCount)return!1;ut.deleteFromDocument(),ut.getRangeAt(0).insertNode(document.createTextNode(Ot)),Bt.preventDefault()}}),this.textEditDiv.addEventListener("pointerup",function(){ft.textEditDivClicked(ft.textEditor.innerText)}),this.textEditDiv.appendChild(this.textEditor),this.overlayContainer.appendChild(this.textEditDiv),this.hideVisual(),this.textEditor.focus(),document.execCommand("selectAll")},xt.prototype.positionTextEditor=function(){if(this.state==="edit")if(this.textEditor===void 0)this.showTextEditor();else{this.textElement.style.display="";var ft=this.getTextScale(),Bt=this.rotatePoint({x:this.left+this.width/2,y:this.top+this.height/2}),Ot=this.textElement.getBBox(),ut={x:Ot.width*ft,y:Ot.height*ft};Bt.x-=ut.x/2,Bt.y-=ut.y/2,this.textEditor.style.top=Bt.y+"px",this.textEditor.style.left=Bt.x+"px",this.textEditor.style.maxWidth=this.overlayContainer.offsetWidth-Bt.x+"px",this.textEditor.style.fontSize=Math.max(16*ft,12)+"px",this.textElement.style.display="none"}},xt.prototype.textEditDivClicked=function(ft){this.text=ft.trim(),this.overlayContainer.innerHTML="",this.renderText(),this.showVisual(),this._suppressMarkerCreateEvent&&(this._suppressMarkerCreateEvent=!1,this.onMarkerCreated&&this.onMarkerCreated(this)),this.stateChanged()},xt.prototype.select=function(){qt.prototype.select.call(this),this.state==="edit"&&this.textEditDivClicked(this.textEditor.innerText)},xt.prototype.deselect=function(){this.state==="edit"&&this.textEditDivClicked(this.textEditor.innerText),qt.prototype.deselect.call(this)},xt.prototype.dblClick=function(ft,Bt){qt.prototype.dblClick.call(this,ft,Bt),this.showTextEditor()},xt.prototype.setColor=function(ft){this.textElement&&Oe.setAttributes(this.textElement,[["fill",ft]]),this.color=ft,this.textEditor&&(this.textEditor.style.color=this.color),this.colorChanged(ft)},xt.prototype.setFont=function(ft){this.textElement&&Oe.setAttributes(this.textElement,[["font-family",ft]]),this.fontFamily=ft,this.textEditor&&(this.textEditor.style.fontFamily=this.fontFamily),this.renderText(),this.stateChanged()},xt.prototype.hideVisual=function(){this.textElement.style.display="none",this.hideControlBox()},xt.prototype.showVisual=function(){this.state==="edit"&&(this._state="select"),this.textElement.style.display="",this.showControlBox()},Object.defineProperty(xt.prototype,"toolboxPanels",{get:function(){return[this.colorPanel,this.fontFamilyPanel]},enumerable:!1,configurable:!0}),xt.prototype.getState=function(){var ft=Object.assign({color:this.color,fontFamily:this.fontFamily,padding:this.padding,text:this.text},qt.prototype.getState.call(this));return ft.typeName=xt.typeName,ft},xt.prototype.restoreState=function(ft){var Bt=ft;this.color=Bt.color,this.fontFamily=Bt.fontFamily,this.padding=Bt.padding,this.text=Bt.text,this.createVisual(),qt.prototype.restoreState.call(this,ft),this.setSize()},xt.prototype.scale=function(ft,Bt){qt.prototype.scale.call(this,ft,Bt),this.setSize(),this.sizeText(),this.positionTextEditor()},xt.typeName="TextMarker",xt.title="Text marker",xt.icon='',xt}(he),st=function(qt){function xt(ft,Bt,Ot){var ut=qt.call(this,ft,Bt,Ot)||this;return ut.color="transparent",ut.lineWidth=3,ut.drawing=!1,ut.pixelRatio=1,ut.color=Ot.defaultColor,ut.lineWidth=Ot.defaultStrokeWidth,ut.pixelRatio=Ot.freehandPixelRatio,ut.setColor=ut.setColor.bind(ut),ut.addCanvas=ut.addCanvas.bind(ut),ut.finishCreation=ut.finishCreation.bind(ut),ut.setLineWidth=ut.setLineWidth.bind(ut),ut.colorPanel=new ae("Color",Ot.defaultColorSet,Ot.defaultColor),ut.colorPanel.onColorChanged=ut.setColor,ut.lineWidthPanel=new Se("Line width",Ot.defaultStrokeWidths,Ot.defaultStrokeWidth),ut.lineWidthPanel.onWidthChanged=ut.setLineWidth,ut}return et(xt,qt),xt.prototype.ownsTarget=function(ft){return!(!qt.prototype.ownsTarget.call(this,ft)&&ft!==this.visual&&ft!==this.drawingImage)},xt.prototype.createVisual=function(){this.visual=Oe.createGroup(),this.drawingImage=Oe.createImage(),this.visual.appendChild(this.drawingImage);var ft=Oe.createTransform();this.visual.transform.baseVal.appendItem(ft),this.addMarkerVisualToContainer(this.visual)},xt.prototype.pointerDown=function(ft,Bt){this.state==="new"&&(this.addCanvas(),this.createVisual(),this._state="creating"),this.state==="creating"?(this.canvasContext.strokeStyle=this.color,this.canvasContext.lineWidth=this.lineWidth,this.canvasContext.beginPath(),this.canvasContext.moveTo(ft.x,ft.y),this.drawing=!0):qt.prototype.pointerDown.call(this,ft,Bt)},xt.prototype.manipulate=function(ft){this.state==="creating"?this.drawing&&(this.canvasContext.lineTo(ft.x,ft.y),this.canvasContext.stroke()):qt.prototype.manipulate.call(this,ft)},xt.prototype.resize=function(ft){qt.prototype.resize.call(this,ft),Oe.setAttributes(this.visual,[["width",this.width.toString()],["height",this.height.toString()]]),Oe.setAttributes(this.drawingImage,[["width",this.width.toString()],["height",this.height.toString()]])},xt.prototype.pointerUp=function(ft){this._state==="creating"?this.drawing&&(this.canvasContext.closePath(),this.drawing=!1,this.globalSettings.newFreehandMarkerOnPointerUp&&this.finishCreation()):qt.prototype.pointerUp.call(this,ft)},xt.prototype.addCanvas=function(){this.overlayContainer.innerHTML="",this.canvasElement=document.createElement("canvas"),this.canvasElement.width=this.overlayContainer.clientWidth*this.pixelRatio,this.canvasElement.height=this.overlayContainer.clientHeight*this.pixelRatio,this.canvasContext=this.canvasElement.getContext("2d"),this.canvasContext.scale(this.pixelRatio,this.pixelRatio),this.overlayContainer.appendChild(this.canvasElement)},xt.prototype.select=function(){this.state==="creating"&&this.finishCreation(),qt.prototype.select.call(this)},xt.prototype.deselect=function(){this.state==="creating"&&this.finishCreation(),qt.prototype.deselect.call(this)},xt.prototype.finishCreation=function(){for(var ft=this.canvasContext.getImageData(0,0,this.canvasElement.width,this.canvasElement.height),Bt=[this.canvasElement.width+1,this.canvasElement.height+1,-1,-1],Ot=Bt[0],ut=Bt[1],It=Bt[2],nn=Bt[3],Pt=!1,Vt=0;Vt0&&(Pt=!0,Vtnn&&(nn=Vt),on>It&&(It=on));if(Pt){this.left=Ot/this.pixelRatio,this.top=ut/this.pixelRatio,this.width=(It-Ot)/this.pixelRatio,this.height=(nn-ut)/this.pixelRatio;var $t=document.createElement("canvas");$t.width=It-Ot,$t.height=nn-ut,$t.getContext("2d").putImageData(this.canvasContext.getImageData(Ot,ut,It-Ot,nn-ut),0,0),this.drawingImgUrl=$t.toDataURL("image/png"),this.setDrawingImage(),this._state="select",this.onMarkerCreated&&this.onMarkerCreated(this)}this.overlayContainer.innerHTML=""},xt.prototype.setDrawingImage=function(){Oe.setAttributes(this.drawingImage,[["width",this.width.toString()],["height",this.height.toString()]]),Oe.setAttributes(this.drawingImage,[["href",this.drawingImgUrl]]),this.moveVisual({x:this.left,y:this.top})},xt.prototype.setColor=function(ft){this.color=ft,this.colorChanged(ft)},xt.prototype.setLineWidth=function(ft){this.lineWidth=ft},Object.defineProperty(xt.prototype,"toolboxPanels",{get:function(){return this.state==="new"||this.state==="creating"?[this.colorPanel,this.lineWidthPanel]:[]},enumerable:!1,configurable:!0}),xt.prototype.getState=function(){var ft=Object.assign({drawingImgUrl:this.drawingImgUrl},qt.prototype.getState.call(this));return ft.typeName=xt.typeName,ft},xt.prototype.restoreState=function(ft){this.createVisual(),qt.prototype.restoreState.call(this,ft),this.drawingImgUrl=ft.drawingImgUrl,this.setDrawingImage()},xt.prototype.scale=function(ft,Bt){qt.prototype.scale.call(this,ft,Bt),this.setDrawingImage()},xt.typeName="FreehandMarker",xt.title="Freehand marker",xt.icon='',xt}(he),St=function(qt){function xt(ft,Bt,Ot){var ut=qt.call(this,ft,Ot||'')||this;return ut.typeBoxes=[],ut.currentType=Bt,ut.setCurrentType=ut.setCurrentType.bind(ut),ut}return et(xt,qt),xt.prototype.getUi=function(){var ft=this,Bt=document.createElement("div");Bt.style.display="flex",Bt.style.overflow="hidden",Bt.style.flexGrow="2";for(var Ot=function(nn){var Pt="both";switch(nn){case 0:Pt="both";break;case 1:Pt="start";break;case 2:Pt="end";break;case 3:Pt="none"}var Vt=document.createElement("div");if(Vt.style.display="flex",Vt.style.flexGrow="2",Vt.style.alignItems="center",Vt.style.justifyContent="space-between",Vt.style.padding="5px",Vt.style.borderWidth="2px",Vt.style.borderStyle="solid",Vt.style.borderColor=Pt===ut.currentType?ut.uiStyleSettings.toolboxAccentColor:"transparent",Vt.addEventListener("click",function(){ft.setCurrentType(Pt,Vt)}),Bt.appendChild(Vt),Pt==="both"||Pt==="start"){var on=document.createElement("div");on.style.display="flex",on.style.alignItems="center",on.style.minHeight="20px",on.innerHTML=` `,on.style.marginLeft="5px",Vt.appendChild(on)}var $t=document.createElement("div");$t.style.display="flex",$t.style.alignItems="center",$t.style.minHeight="20px",$t.style.flexGrow="2";var Jt=document.createElement("hr");if(Jt.style.minWidth="20px",Jt.style.border="0px",Jt.style.borderTop="3px solid "+(ut.uiStyleSettings!==void 0?ut.uiStyleSettings.toolboxColor:"#eeeeee"),Jt.style.flexGrow="2",$t.appendChild(Jt),Vt.appendChild($t),Pt==="both"||Pt==="end"){var xn=document.createElement("div");xn.style.display="flex",xn.style.alignItems="center",xn.style.minHeight="20px",xn.innerHTML=` `,xn.style.marginRight="5px",Vt.appendChild(xn)}ut.typeBoxes.push(Vt)},ut=this,It=0;It<4;It++)Ot(It);return Bt},xt.prototype.setCurrentType=function(ft,Bt){var Ot=this;this.currentType=ft,this.typeBoxes.forEach(function(ut){ut.style.borderColor=ut===Bt?Ot.uiStyleSettings!==void 0?Ot.uiStyleSettings.toolboxAccentColor:"#3080c3":"transparent"}),this.onArrowTypeChanged&&this.onArrowTypeChanged(this.currentType)},xt}(ie),At=function(qt){function xt(ft,Bt,Ot){var ut=qt.call(this,ft,Bt,Ot)||this;return ut.arrowType="end",ut.arrowBaseHeight=10,ut.arrowBaseWidth=10,ut.getArrowPoints=ut.getArrowPoints.bind(ut),ut.setArrowType=ut.setArrowType.bind(ut),ut.arrowTypePanel=new St("Arrow type","end"),ut.arrowTypePanel.onArrowTypeChanged=ut.setArrowType,ut}return et(xt,qt),xt.prototype.ownsTarget=function(ft){return!(!qt.prototype.ownsTarget.call(this,ft)&&ft!==this.arrow1&&ft!==this.arrow2)},xt.prototype.getArrowPoints=function(ft,Bt){var Ot=this.arrowBaseWidth+2*this.strokeWidth,ut=this.arrowBaseHeight+2*this.strokeWidth;return ft-Ot/2+","+(Bt+ut/2)+" "+ft+","+(Bt-ut/2)+" "+(ft+Ot/2)+","+(Bt+ut/2)},xt.prototype.createTips=function(){this.arrow1=Oe.createPolygon(this.getArrowPoints(this.x1,this.y1),[["fill",this.strokeColor]]),this.arrow1.transform.baseVal.appendItem(Oe.createTransform()),this.visual.appendChild(this.arrow1),this.arrow2=Oe.createPolygon(this.getArrowPoints(this.x2,this.y2),[["fill",this.strokeColor]]),this.arrow2.transform.baseVal.appendItem(Oe.createTransform()),this.visual.appendChild(this.arrow2)},xt.prototype.pointerDown=function(ft,Bt){qt.prototype.pointerDown.call(this,ft,Bt),this.state==="creating"&&this.createTips()},xt.prototype.adjustVisual=function(){if(qt.prototype.adjustVisual.call(this),this.arrow1&&this.arrow2){this.arrow1.style.display=this.arrowType==="both"||this.arrowType==="start"?"":"none",this.arrow2.style.display=this.arrowType==="both"||this.arrowType==="end"?"":"none",Oe.setAttributes(this.arrow1,[["points",this.getArrowPoints(this.x1,this.y1)],["fill",this.strokeColor]]),Oe.setAttributes(this.arrow2,[["points",this.getArrowPoints(this.x2,this.y2)],["fill",this.strokeColor]]);var ft=0;Math.abs(this.x1-this.x2)>.1&&(ft=180*Math.atan((this.y2-this.y1)/(this.x2-this.x1))/Math.PI+90*Math.sign(this.x1-this.x2));var Bt=this.arrow1.transform.baseVal.getItem(0);Bt.setRotate(ft,this.x1,this.y1),this.arrow1.transform.baseVal.replaceItem(Bt,0);var Ot=this.arrow2.transform.baseVal.getItem(0);Ot.setRotate(ft+180,this.x2,this.y2),this.arrow2.transform.baseVal.replaceItem(Ot,0)}},xt.prototype.setArrowType=function(ft){this.arrowType=ft,this.adjustVisual(),this.stateChanged()},Object.defineProperty(xt.prototype,"toolboxPanels",{get:function(){return[this.strokePanel,this.strokeWidthPanel,this.strokeStylePanel,this.arrowTypePanel]},enumerable:!1,configurable:!0}),xt.prototype.getState=function(){var ft=Object.assign({arrowType:this.arrowType},qt.prototype.getState.call(this));return ft.typeName=xt.typeName,ft},xt.prototype.restoreState=function(ft){qt.prototype.restoreState.call(this,ft);var Bt=ft;this.arrowType=Bt.arrowType,this.createTips(),this.adjustVisual()},xt.typeName="ArrowMarker",xt.title="Arrow marker",xt.icon='',xt}(Je),vt=function(qt){function xt(ft,Bt,Ot){var ut=qt.call(this,ft,Bt,Ot)||this;return ut.fillColor=Ot.defaultFillColor,ut.strokeWidth=0,ut.fillPanel=new ae("Color",Ot.defaultColorSet,Ot.defaultFillColor),ut.fillPanel.onColorChanged=ut.setFillColor,ut}return et(xt,qt),Object.defineProperty(xt.prototype,"toolboxPanels",{get:function(){return[this.fillPanel]},enumerable:!1,configurable:!0}),xt.prototype.getState=function(){var ft=qt.prototype.getState.call(this);return ft.typeName=xt.typeName,ft},xt.typeName="CoverMarker",xt.title="Cover marker",xt.icon='',xt}(pe),Tt=function(qt){function xt(ft,Bt,Ot,ut){var It=qt.call(this,ft,ut||'')||this;return It.opacities=[],It.opacityBoxes=[],It.opacities=Bt,It.currentOpacity=Ot,It.setCurrentOpacity=It.setCurrentOpacity.bind(It),It}return et(xt,qt),xt.prototype.getUi=function(){var ft=this,Bt=document.createElement("div");return Bt.style.display="flex",Bt.style.overflow="hidden",Bt.style.flexGrow="2",Bt.style.justifyContent="space-between",this.opacities.forEach(function(Ot){var ut=document.createElement("div");ut.style.display="flex",ut.style.alignItems="center",ut.style.justifyContent="center",ut.style.padding="5px",ut.style.borderWidth="2px",ut.style.borderStyle="solid",ut.style.borderColor=Ot===ft.currentOpacity?ft.uiStyleSettings.toolboxAccentColor:"transparent",ut.addEventListener("click",function(){ft.setCurrentOpacity(Ot,ut)}),Bt.appendChild(ut);var It=document.createElement("div");It.innerText=100*Ot+"%",ut.appendChild(It),ft.opacityBoxes.push(ut)}),Bt},xt.prototype.setCurrentOpacity=function(ft,Bt){var Ot=this;this.currentOpacity=ft,this.opacityBoxes.forEach(function(ut){ut.style.borderColor=ut===Bt?Ot.uiStyleSettings.toolboxAccentColor:"transparent"}),this.onOpacityChanged&&this.onOpacityChanged(this.currentOpacity)},xt}(ie),bt=function(qt){function xt(ft,Bt,Ot){var ut=qt.call(this,ft,Bt,Ot)||this;return ut.setOpacity=ut.setOpacity.bind(ut),ut.fillColor=Ot.defaultHighlightColor,ut.strokeWidth=0,ut.opacity=Ot.defaultHighlightOpacity,ut.fillPanel=new ae("Color",Ot.defaultColorSet,ut.fillColor),ut.fillPanel.onColorChanged=ut.setFillColor,ut.opacityPanel=new Tt("Opacity",Ot.defaultOpacitySteps,ut.opacity),ut.opacityPanel.onOpacityChanged=ut.setOpacity,ut}return et(xt,qt),xt.prototype.setOpacity=function(ft){this.opacity=ft,this.visual&&Oe.setAttributes(this.visual,[["opacity",this.opacity.toString()]]),this.stateChanged()},Object.defineProperty(xt.prototype,"toolboxPanels",{get:function(){return[this.fillPanel,this.opacityPanel]},enumerable:!1,configurable:!0}),xt.prototype.getState=function(){var ft=qt.prototype.getState.call(this);return ft.typeName=xt.typeName,ft},xt.typeName="HighlightMarker",xt.title="Highlight marker",xt.icon='',xt}(vt),Et='',lt='',Nt=function(qt){function xt(ft,Bt,Ot){var ut=qt.call(this,ft,Bt,Ot)||this;return ut.bgColor="transparent",ut.tipPosition={x:0,y:0},ut.tipBase1Position={x:0,y:0},ut.tipBase2Position={x:0,y:0},ut.tipMoving=!1,ut.color=Ot.defaultStrokeColor,ut.bgColor=Ot.defaultFillColor,ut.fontFamily=Ot.defaultFontFamily,ut.defaultSize={x:100,y:30},ut.setBgColor=ut.setBgColor.bind(ut),ut.getTipPoints=ut.getTipPoints.bind(ut),ut.positionTip=ut.positionTip.bind(ut),ut.setTipPoints=ut.setTipPoints.bind(ut),ut.colorPanel=new ae("Text color",Ot.defaultColorSet,ut.color,Et),ut.colorPanel.onColorChanged=ut.setColor,ut.bgColorPanel=new ae("Fill color",Ot.defaultColorSet,ut.bgColor,lt),ut.bgColorPanel.onColorChanged=ut.setBgColor,ut.fontFamilyPanel=new tt("Font",Ot.defaultFontFamilies,Ot.defaultFontFamily),ut.fontFamilyPanel.onFontChanged=ut.setFont,ut.tipGrip=new ve,ut.tipGrip.visual.transform.baseVal.appendItem(Oe.createTransform()),ut.controlBox.appendChild(ut.tipGrip.visual),ut}return et(xt,qt),xt.prototype.ownsTarget=function(ft){return qt.prototype.ownsTarget.call(this,ft)||this.tipGrip.ownsTarget(ft)||this.tip===ft},xt.prototype.createTip=function(){Oe.setAttributes(this.bgRectangle,[["fill",this.bgColor],["rx","10px"]]),this.tip=Oe.createPolygon(this.getTipPoints(),[["fill",this.bgColor]]),this.visual.appendChild(this.tip)},xt.prototype.pointerDown=function(ft,Bt){this.state==="new"&&qt.prototype.pointerDown.call(this,ft,Bt),this.state==="creating"?this.createTip():this.tipGrip.ownsTarget(Bt)?(this.manipulationStartLeft=this.left,this.manipulationStartTop=this.top,this.tipMoving=!0):qt.prototype.pointerDown.call(this,ft,Bt)},xt.prototype.pointerUp=function(ft){if(this.tipMoving)this.tipMoving=!1,this.isMoved=!0,qt.prototype.pointerUp.call(this,ft);else{var Bt=this.state==="creating";qt.prototype.pointerUp.call(this,ft),this.setTipPoints(Bt),this.positionTip()}},xt.prototype.manipulate=function(ft){if(this.tipMoving){var Bt=this.unrotatePoint(ft);this.tipPosition={x:Bt.x-this.manipulationStartLeft,y:Bt.y-this.manipulationStartTop},this.positionTip()}else qt.prototype.manipulate.call(this,ft)},xt.prototype.setBgColor=function(ft){this.bgRectangle&&this.tip&&(Oe.setAttributes(this.bgRectangle,[["fill",ft]]),Oe.setAttributes(this.tip,[["fill",ft]])),this.bgColor=ft,this.fillColorChanged(ft)},xt.prototype.getTipPoints=function(){return this.setTipPoints(this.state==="creating"),this.tipBase1Position.x+","+this.tipBase1Position.y+" "+this.tipBase2Position.x+","+this.tipBase2Position.y+" "+this.tipPosition.x+","+this.tipPosition.y},xt.prototype.setTipPoints=function(ft){ft===void 0&&(ft=!1);var Bt=Math.min(this.height/2,15),Ot=this.height/5;ft&&(this.tipPosition={x:Bt+Ot/2,y:this.height+20});var ut=Math.atan(this.height/2/(this.width/2));this.tipPosition.x=this.width/2&&this.tipPosition.y=this.width/2&&this.tipPosition.y>=this.height/2?ut.1)){var ft=180*Math.atan((this.y2-this.y1)/(this.x2-this.x1))/Math.PI+90*Math.sign(this.x1-this.x2),Bt=this.tip1.transform.baseVal.getItem(0);Bt.setRotate(ft,this.x1,this.y1),this.tip1.transform.baseVal.replaceItem(Bt,0);var Ot=this.tip2.transform.baseVal.getItem(0);Ot.setRotate(ft+180,this.x2,this.y2),this.tip2.transform.baseVal.replaceItem(Ot,0)}},Object.defineProperty(xt.prototype,"toolboxPanels",{get:function(){return[this.strokePanel,this.strokeWidthPanel,this.strokeStylePanel]},enumerable:!1,configurable:!0}),xt.prototype.getState=function(){var ft=qt.prototype.getState.call(this);return ft.typeName=xt.typeName,ft},xt.prototype.restoreState=function(ft){qt.prototype.restoreState.call(this,ft),this.createTips(),this.adjustVisual()},xt.typeName="MeasurementMarker",xt.title="Measurement marker",xt.icon='',xt}(Je),Ft=function(qt){function xt(ft,Bt,Ot){var ut=qt.call(this,ft,Bt,Ot)||this;return ut.strokePanel.colors=Ot.defaultColorSet,ut.fillColor="transparent",ut}return et(xt,qt),Object.defineProperty(xt.prototype,"toolboxPanels",{get:function(){return[this.strokePanel,this.strokeWidthPanel,this.strokeStylePanel]},enumerable:!1,configurable:!0}),xt.prototype.getState=function(){var ft=qt.prototype.getState.call(this);return ft.typeName=xt.typeName,ft},xt.typeName="EllipseFrameMarker",xt.title="Ellipse frame marker",xt.icon='',xt}(Zt),Yt=function(){function qt(){this.undoStack=[],this.redoStack=[]}return Object.defineProperty(qt.prototype,"isUndoPossible",{get:function(){return this.undoStack.length>0},enumerable:!1,configurable:!0}),Object.defineProperty(qt.prototype,"isRedoPossible",{get:function(){return this.redoStack.length>0},enumerable:!1,configurable:!0}),Object.defineProperty(qt.prototype,"undoStepCount",{get:function(){return this.undoStack.length},enumerable:!1,configurable:!0}),Object.defineProperty(qt.prototype,"redoStepCount",{get:function(){return this.redoStack.length},enumerable:!1,configurable:!0}),qt.prototype.addUndoStep=function(xt){this.undoStack.length!==0&&JSON.stringify(this.undoStack[this.undoStack.length-1])===JSON.stringify(xt)||(this.undoStack.push(xt),JSON.stringify(this.lastRedoStep)!==JSON.stringify(xt)&&this.redoStack.splice(0,this.redoStack.length))},qt.prototype.replaceLastUndoStep=function(xt){this.undoStack.length>0&&(this.undoStack[this.undoStack.length-1]=xt)},qt.prototype.getLastUndoStep=function(){return this.undoStack.length>0?this.undoStack[this.undoStack.length-1]:void 0},qt.prototype.undo=function(){if(this.undoStack.length>1){var xt=this.undoStack.pop();return xt!==void 0&&this.redoStack.push(xt),this.undoStack.length>0?this.undoStack[this.undoStack.length-1]:void 0}},qt.prototype.redo=function(){return this.lastRedoStep=this.redoStack.pop(),this.lastRedoStep},qt}(),dn=function(qt){function xt(ft,Bt,Ot){var ut=qt.call(this,ft,Bt,Ot)||this;return ut.strokeColor="transparent",ut.strokeWidth=0,ut.strokeDasharray="",ut.curveX=0,ut.curveY=0,ut.manipulationStartCurveX=0,ut.manipulationStartCurveY=0,ut.setStrokeColor=ut.setStrokeColor.bind(ut),ut.setStrokeWidth=ut.setStrokeWidth.bind(ut),ut.setStrokeDasharray=ut.setStrokeDasharray.bind(ut),ut.positionGrips=ut.positionGrips.bind(ut),ut.addControlGrips=ut.addControlGrips.bind(ut),ut.adjustVisual=ut.adjustVisual.bind(ut),ut.setupControlBox=ut.setupControlBox.bind(ut),ut.resize=ut.resize.bind(ut),ut.strokeColor=Ot.defaultColor,ut.strokeWidth=Ot.defaultStrokeWidth,ut.strokeDasharray=Ot.defaultStrokeDasharray,ut.strokePanel=new ae("Line color",Ot.defaultColorSet,Ot.defaultColor),ut.strokePanel.onColorChanged=ut.setStrokeColor,ut.strokeWidthPanel=new Se("Line width",Ot.defaultStrokeWidths,Ot.defaultStrokeWidth),ut.strokeWidthPanel.onWidthChanged=ut.setStrokeWidth,ut.strokeStylePanel=new Ne("Line style",Ot.defaultStrokeDasharrays,Ot.defaultStrokeDasharray),ut.strokeStylePanel.onStyleChanged=ut.setStrokeDasharray,ut}return et(xt,qt),xt.prototype.ownsTarget=function(ft){return!(!qt.prototype.ownsTarget.call(this,ft)&&ft!==this.visual&&ft!==this.selectorCurve&&ft!==this.visibleCurve&&!this.curveGrip.ownsTarget(ft))},xt.prototype.getPathD=function(){return"M "+this.x1+" "+this.y1+" Q "+this.curveX+" "+this.curveY+", "+this.x2+" "+this.y2},xt.prototype.createVisual=function(){this.visual=Oe.createGroup(),this.selectorCurve=Oe.createPath(this.getPathD(),[["stroke","transparent"],["stroke-width",(this.strokeWidth+10).toString()],["fill","transparent"]]),this.visibleCurve=Oe.createPath(this.getPathD(),[["stroke",this.strokeColor],["stroke-width",this.strokeWidth.toString()],["fill","transparent"]]),this.visual.appendChild(this.selectorCurve),this.visual.appendChild(this.visibleCurve),this.addMarkerVisualToContainer(this.visual)},xt.prototype.pointerDown=function(ft,Bt){qt.prototype.pointerDown.call(this,ft,Bt),this.manipulationStartCurveX=this.curveX,this.manipulationStartCurveY=this.curveY,this.state==="new"&&(this.curveX=ft.x,this.curveY=ft.y),this.state==="new"?(this.createVisual(),this.adjustVisual(),this._state="creating"):this.curveGrip.ownsTarget(Bt)&&(this.activeGrip=this.curveGrip,this._state="resize")},xt.prototype.adjustVisual=function(){this.selectorCurve&&this.visibleCurve&&(this.selectorCurve.setAttribute("d",this.getPathD()),this.visibleCurve.setAttribute("d",this.getPathD()),Oe.setAttributes(this.visibleCurve,[["stroke",this.strokeColor]]),Oe.setAttributes(this.visibleCurve,[["stroke-width",this.strokeWidth.toString()]]),Oe.setAttributes(this.visibleCurve,[["stroke-dasharray",this.strokeDasharray.toString()]]))},xt.prototype.setupControlBox=function(){qt.prototype.setupControlBox.call(this),this.curveControlLine1=Oe.createLine(this.x1,this.y1,this.curveX,this.curveY,[["stroke","black"],["stroke-width","1"],["stroke-opacity","0.5"],["stroke-dasharray","3, 2"]]),this.curveControlLine2=Oe.createLine(this.x2,this.y2,this.curveX,this.curveY,[["stroke","black"],["stroke-width","1"],["stroke-opacity","0.5"],["stroke-dasharray","3, 2"]]),this.controlBox.insertBefore(this.curveControlLine1,this.controlBox.firstChild),this.controlBox.insertBefore(this.curveControlLine2,this.controlBox.firstChild)},xt.prototype.addControlGrips=function(){this.curveGrip=this.createGrip(),this.curveX=0,this.curveY=0,qt.prototype.addControlGrips.call(this)},xt.prototype.positionGrips=function(){qt.prototype.positionGrips.call(this);var ft=this.curveGrip.GRIP_SIZE;this.positionGrip(this.curveGrip.visual,this.curveX-ft/2,this.curveY-ft/2),this.curveControlLine1&&this.curveControlLine2&&(this.curveControlLine1.setAttribute("x1",this.x1.toString()),this.curveControlLine1.setAttribute("y1",this.y1.toString()),this.curveControlLine1.setAttribute("x2",this.curveX.toString()),this.curveControlLine1.setAttribute("y2",this.curveY.toString()),this.curveControlLine2.setAttribute("x1",this.x2.toString()),this.curveControlLine2.setAttribute("y1",this.y2.toString()),this.curveControlLine2.setAttribute("x2",this.curveX.toString()),this.curveControlLine2.setAttribute("y2",this.curveY.toString()))},xt.prototype.manipulate=function(ft){this.state==="move"&&(this.curveX=this.manipulationStartCurveX+ft.x-this.manipulationStartX,this.curveY=this.manipulationStartCurveY+ft.y-this.manipulationStartY),qt.prototype.manipulate.call(this,ft)},xt.prototype.resize=function(ft){this.activeGrip===this.curveGrip&&(this.curveX=ft.x,this.curveY=ft.y),qt.prototype.resize.call(this,ft),this.state==="creating"&&(this.curveX=this.x1+(this.x2-this.x1)/2,this.curveY=this.y1+(this.y2-this.y1)/2)},xt.prototype.setStrokeColor=function(ft){this.strokeColor=ft,this.adjustVisual(),this.colorChanged(ft)},xt.prototype.setStrokeWidth=function(ft){this.strokeWidth=ft,this.adjustVisual()},xt.prototype.setStrokeDasharray=function(ft){this.strokeDasharray=ft,this.adjustVisual()},xt.prototype.scale=function(ft,Bt){this.curveX=this.curveX*ft,this.curveY=this.curveY*Bt,qt.prototype.scale.call(this,ft,Bt)},Object.defineProperty(xt.prototype,"toolboxPanels",{get:function(){return[this.strokePanel,this.strokeWidthPanel,this.strokeStylePanel]},enumerable:!1,configurable:!0}),xt.prototype.getState=function(){var ft=Object.assign({strokeColor:this.strokeColor,strokeWidth:this.strokeWidth,strokeDasharray:this.strokeDasharray,curveX:this.curveX,curveY:this.curveY},qt.prototype.getState.call(this));return ft.typeName=xt.typeName,ft},xt.prototype.restoreState=function(ft){qt.prototype.restoreState.call(this,ft);var Bt=ft;this.strokeColor=Bt.strokeColor,this.strokeWidth=Bt.strokeWidth,this.strokeDasharray=Bt.strokeDasharray,this.curveX=Bt.curveX,this.curveY=Bt.curveY,this.createVisual(),this.adjustVisual()},xt.typeName="CurveMarker",xt.title="Curve marker",xt.icon='',xt}(Ve),Dn=function(qt){function xt(ft,Bt,Ot){var ut=qt.call(this,ft,Bt,Ot)||this;return ut.fillColor="transparent",ut.strokeColor="transparent",ut.strokeWidth=0,ut.strokeDasharray="",ut.textColor="transparent",ut.fontSize="1rem",ut.isMoved=!1,ut.captionText="Caption",ut.PADDING=5,ut.captionBoxWidth=0,ut.captionBoxHeight=0,ut.strokeColor=Ot.defaultColor,ut.strokeWidth=Ot.defaultStrokeWidth,ut.strokeDasharray=Ot.defaultStrokeDasharray,ut.fillColor=Ot.defaultFillColor,ut.textColor=Ot.defaultStrokeColor,ut.fontFamily=Ot.defaultFontFamily,ut.fontSize=Ot.defaultCaptionFontSize,ut.captionText=Ot.defaultCaptionText,ut.setStrokeColor=ut.setStrokeColor.bind(ut),ut.setFillColor=ut.setFillColor.bind(ut),ut.setStrokeWidth=ut.setStrokeWidth.bind(ut),ut.setStrokeDasharray=ut.setStrokeDasharray.bind(ut),ut.createVisual=ut.createVisual.bind(ut),ut.sizeCaption=ut.sizeCaption.bind(ut),ut.setCaptionText=ut.setCaptionText.bind(ut),ut.showTextEditor=ut.showTextEditor.bind(ut),ut.positionTextEditor=ut.positionTextEditor.bind(ut),ut.finishTextEditing=ut.finishTextEditing.bind(ut),ut.setFont=ut.setFont.bind(ut),ut.setTextColor=ut.setTextColor.bind(ut),ut.strokePanel=new ae("Line color",Ze(Ot.defaultColorSet,["transparent"]),ut.strokeColor),ut.strokePanel.onColorChanged=ut.setStrokeColor,ut.fillPanel=new ae("Fill color",Ze(Ot.defaultColorSet,["transparent"]),ut.fillColor,lt),ut.fillPanel.onColorChanged=ut.setFillColor,ut.strokeWidthPanel=new Se("Line width",Ot.defaultStrokeWidths,Ot.defaultStrokeWidth),ut.strokeWidthPanel.onWidthChanged=ut.setStrokeWidth,ut.strokeStylePanel=new Ne("Line style",Ot.defaultStrokeDasharrays,Ot.defaultStrokeDasharray),ut.strokeStylePanel.onStyleChanged=ut.setStrokeDasharray,ut.fontFamilyPanel=new tt("Font",Ot.defaultFontFamilies,Ot.defaultFontFamily),ut.fontFamilyPanel.onFontChanged=ut.setFont,ut.textColorPanel=new ae("Text color",Ot.defaultColorSet,ut.textColor,Et),ut.textColorPanel.onColorChanged=ut.setTextColor,ut}return et(xt,qt),xt.prototype.ownsTarget=function(ft){return!(!qt.prototype.ownsTarget.call(this,ft)&&ft!==this.visual&&ft!==this.frame&&ft!==this.captionBg&&ft!==this.captionElement)},xt.prototype.createVisual=function(){this.visual=Oe.createGroup(),this.addMarkerVisualToContainer(this.visual),this.captionBg=Oe.createRect(1,1,[["fill",this.fillColor]]),this.visual.appendChild(this.captionBg),this.captionElement=Oe.createText([["fill",this.textColor],["font-family",this.fontFamily]]),this.captionElement.style.fontSize=this.fontSize,this.captionElement.style.textAnchor="start",this.captionElement.style.dominantBaseline="text-before-edge",this.captionElement.textContent=this.captionText,this.visual.appendChild(this.captionElement),this.frame=Oe.createRect(this.width,this.height,[["fill","transparent"],["stroke",this.strokeColor],["stroke-width",this.strokeWidth.toString()],["stroke-dasharray",this.strokeDasharray]]),this.visual.appendChild(this.frame),this.sizeCaption()},xt.prototype.setCaptionText=function(ft){this.captionText=ft,this.captionElement.textContent=this.captionText,this.sizeCaption()},xt.prototype.pointerDown=function(ft,Bt){qt.prototype.pointerDown.call(this,ft,Bt),this.isMoved=!1,this.pointerDownPoint=ft,this.pointerDownTimestamp=Date.now(),this.state==="new"&&(this.createVisual(),this.moveVisual(ft),this._state="creating")},xt.prototype.manipulate=function(ft){qt.prototype.manipulate.call(this,ft),this.pointerDownPoint!==void 0&&(this.isMoved=Math.abs(ft.x-this.pointerDownPoint.x)>5||Math.abs(ft.y-this.pointerDownPoint.y)>5)},xt.prototype.resize=function(ft){qt.prototype.resize.call(this,ft),this.setSize()},xt.prototype.sizeCaption=function(){var ft=this.captionElement.getBBox();this.captionText.trim()!==""?(this.captionBoxWidth=ft.width+2*this.PADDING,this.captionBoxHeight=ft.height+2*this.PADDING):(this.captionBoxWidth=0,this.captionBoxHeight=0),Oe.setAttributes(this.captionBg,[["width",this.captionBoxWidth.toString()],["height",this.captionBoxHeight.toString()],["clip-path","path('M0,0 H"+this.width+" V"+this.height+" H"+-this.width+" Z')"]]),Oe.setAttributes(this.captionElement,[["x",this.PADDING.toString()],["y",this.PADDING.toString()],["clip-path","path('M0,0 H"+(this.width-this.PADDING)+" V"+this.height+" H"+(-this.width-this.PADDING)+" Z')"]])},xt.prototype.showTextEditor=function(){var ft=this;this._state="edit",this.overlayContainer.innerHTML="",this.textEditDiv=document.createElement("div"),this.textEditDiv.style.flexGrow="2",this.textEditDiv.style.alignItems="center",this.textEditDiv.style.justifyContent="center",this.textEditDiv.style.pointerEvents="auto",this.textEditDiv.style.overflow="hidden",this.textEditBox=document.createElement("input"),this.textEditBox.style.position="absolute",this.textEditBox.style.width=this.width+"px",this.captionBoxHeight>0&&(this.textEditBox.style.height=this.captionBoxHeight+"px"),this.textEditBox.style.fontSize=this.fontSize,this.textEditBox.style.fontFamily=this.fontFamily,this.textEditBox.style.backgroundColor=this.fillColor,this.textEditBox.style.color=this.textColor,this.textEditBox.style.borderWidth="0",this.textEditBox.setAttribute("value",this.captionText),this.textEditBox.select(),this.textEditDiv.appendChild(this.textEditBox),this.overlayContainer.appendChild(this.textEditDiv),this.textEditBox.addEventListener("pointerup",function(Bt){Bt.stopPropagation()}),this.textEditBox.addEventListener("keypress",function(Bt){Bt.key==="Enter"&&ft.finishTextEditing(ft.textEditBox.value)}),this.textEditBox.addEventListener("keyup",function(Bt){Bt.cancelBubble=!0}),this.textEditBox.addEventListener("blur",function(){ft.finishTextEditing(ft.textEditBox.value)}),this.textEditDiv.addEventListener("pointerup",function(){ft.finishTextEditing(ft.textEditBox.value)}),this.positionTextEditor(),this.textEditBox.focus()},xt.prototype.positionTextEditor=function(){this.state==="edit"&&(this.textEditBox===void 0?this.showTextEditor():(this.textEditBox.style.left=this.left+"px",this.textEditBox.style.top=this.top+"px",this.textEditBox.style.transform="rotate("+this.rotationAngle+"deg)",this.textEditBox.style.transformOrigin=this.width/2+"px "+this.height/2+"px"))},xt.prototype.finishTextEditing=function(ft){this.setCaptionText(ft.trim()),this.overlayContainer.innerHTML="",this.stateChanged()},xt.prototype.setFont=function(ft){this.captionElement&&Oe.setAttributes(this.captionElement,[["font-family",ft]]),this.fontFamily=ft,this.textEditBox&&(this.textEditBox.style.fontFamily=this.fontFamily),this.sizeCaption(),this.stateChanged()},xt.prototype.setTextColor=function(ft){this.captionElement&&Oe.setAttributes(this.captionElement,[["fill",ft]]),this.textColor=ft,this.textEditBox&&(this.textEditBox.style.color=this.textColor),this.stateChanged()},xt.prototype.setSize=function(){qt.prototype.setSize.call(this),Oe.setAttributes(this.frame,[["width",this.width.toString()],["height",this.height.toString()]]),this.sizeCaption()},xt.prototype.pointerUp=function(ft){qt.prototype.pointerUp.call(this,ft),this.setSize(),!this.isMoved&&Date.now()-this.pointerDownTimestamp>500&&this.showTextEditor(),this.pointerDownPoint=void 0},xt.prototype.dblClick=function(ft,Bt){qt.prototype.dblClick.call(this,ft,Bt),this.showTextEditor()},xt.prototype.setStrokeColor=function(ft){this.strokeColor=ft,this.frame&&Oe.setAttributes(this.frame,[["stroke",this.strokeColor]]),this.colorChanged(ft),this.stateChanged()},xt.prototype.setFillColor=function(ft){this.fillColor=ft,this.captionBg&&Oe.setAttributes(this.captionBg,[["fill",this.fillColor]]),this.fillColorChanged(ft),this.stateChanged()},xt.prototype.setStrokeWidth=function(ft){this.strokeWidth=ft,this.frame&&Oe.setAttributes(this.frame,[["stroke-width",this.strokeWidth.toString()]]),this.stateChanged()},xt.prototype.setStrokeDasharray=function(ft){this.strokeDasharray=ft,this.frame&&Oe.setAttributes(this.frame,[["stroke-dasharray",this.strokeDasharray]]),this.stateChanged()},Object.defineProperty(xt.prototype,"toolboxPanels",{get:function(){return[this.strokePanel,this.fillPanel,this.strokeWidthPanel,this.strokeStylePanel,this.fontFamilyPanel,this.textColorPanel]},enumerable:!1,configurable:!0}),xt.prototype.getState=function(){var ft=Object.assign({fillColor:this.fillColor,strokeColor:this.strokeColor,strokeWidth:this.strokeWidth,strokeDasharray:this.strokeDasharray,opacity:1,textColor:this.textColor,fontFamily:this.fontFamily,fontSize:this.fontSize,captionText:this.captionText},qt.prototype.getState.call(this));return ft.typeName=this.typeName,ft},xt.prototype.restoreState=function(ft){var Bt=ft;this.fillColor=Bt.fillColor,this.strokeColor=Bt.strokeColor,this.strokeWidth=Bt.strokeWidth,this.strokeDasharray=Bt.strokeDasharray,this.textColor=Bt.textColor,this.fontFamily=Bt.fontFamily,this.captionText=Bt.captionText,this.fontSize=Bt.fontSize,this.createVisual(),qt.prototype.restoreState.call(this,ft),this.setSize()},xt.prototype.scale=function(ft,Bt){qt.prototype.scale.call(this,ft,Bt),this.setSize()},xt.typeName="CaptionFrameMarker",xt.title="Caption frame marker",xt.icon='',xt}(he),Rn=function(){function qt(xt,ft){ft===void 0&&(ft=!1),this.cancelable=!1,this._defaultPrevented=!1,this.markerArea=xt,this.cancelable=ft}return Object.defineProperty(qt.prototype,"defaultPrevented",{get:function(){return this._defaultPrevented},enumerable:!1,configurable:!0}),qt.prototype.preventDefault=function(){this._defaultPrevented=!0},qt}(),Zn=function(qt){function xt(ft,Bt,Ot){var ut=qt.call(this,ft,!1)||this;return ut.dataUrl=Bt,ut.state=Ot,ut}return et(xt,qt),xt}(Rn),ln=function(qt){function xt(ft,Bt,Ot){Ot===void 0&&(Ot=!1);var ut=qt.call(this,ft,Ot)||this;return ut.marker=Bt,ut}return et(xt,qt),xt}(Rn),Gn=function(){function qt(){this.render=[],this.beforeclose=[],this.close=[],this.show=[],this.restorestate=[],this.statechange=[],this.markerselect=[],this.markerdeselect=[],this.markercreating=[],this.markercreate=[],this.markerbeforedelete=[],this.markerdelete=[],this.markerchange=[],this.focus=[],this.blur=[]}return qt.prototype.addEventListener=function(xt,ft){this[xt].push(ft)},qt.prototype.removeEventListener=function(xt,ft){var Bt=this[xt].indexOf(ft);Bt>-1&&this[xt].splice(Bt,1)},qt}(),Wn=function(){function qt(xt){this.touchPoints=0,this._availableMarkerTypes=this.DEFAULT_MARKER_TYPES,this.mode="select",this.markers=[],this.isDragging=!1,this.renderEventListeners=[],this.closeEventListeners=[],this.settings=new Ke,this._isOpen=!1,this.undoRedoManager=new Yt,this.renderAtNaturalSize=!1,this.renderImageType="image/png",this.renderMarkersOnly=!1,this.zoomSteps=[1,1.5,2,4],this._zoomLevel=1,this._isResizing=!1,this.prevPanPoint={x:0,y:0},this.eventListeners=new Gn,this._silentRenderMode=!1,this._isFocused=!1,this._instanceNo=qt.instanceCounter++,this.styles=new Ie(this.instanceNo),this.uiStyleSettings=this.styles.settings,this.target=xt,this.targetRoot=document.body,this.width=xt.clientWidth,this.height=xt.clientHeight,this.styles.removeStyleSheet(),this.open=this.open.bind(this),this.setTopLeft=this.setTopLeft.bind(this),this.toolbarButtonClicked=this.toolbarButtonClicked.bind(this),this.createNewMarker=this.createNewMarker.bind(this),this.addNewMarker=this.addNewMarker.bind(this),this.markerCreated=this.markerCreated.bind(this),this.setCurrentMarker=this.setCurrentMarker.bind(this),this.onPointerDown=this.onPointerDown.bind(this),this.onDblClick=this.onDblClick.bind(this),this.onPointerMove=this.onPointerMove.bind(this),this.onPointerUp=this.onPointerUp.bind(this),this.onPointerOut=this.onPointerOut.bind(this),this.onKeyUp=this.onKeyUp.bind(this),this.overrideOverflow=this.overrideOverflow.bind(this),this.restoreOverflow=this.restoreOverflow.bind(this),this.close=this.close.bind(this),this.closeUI=this.closeUI.bind(this),this.addCloseEventListener=this.addCloseEventListener.bind(this),this.removeCloseEventListener=this.removeCloseEventListener.bind(this),this.addRenderEventListener=this.addRenderEventListener.bind(this),this.removeRenderEventListener=this.removeRenderEventListener.bind(this),this.clientToLocalCoordinates=this.clientToLocalCoordinates.bind(this),this.onWindowResize=this.onWindowResize.bind(this),this.deleteSelectedMarker=this.deleteSelectedMarker.bind(this),this.setWindowHeight=this.setWindowHeight.bind(this),this.removeMarker=this.removeMarker.bind(this),this.colorChanged=this.colorChanged.bind(this),this.fillColorChanged=this.fillColorChanged.bind(this),this.onPopupTargetResize=this.onPopupTargetResize.bind(this),this.showNotesEditor=this.showNotesEditor.bind(this),this.hideNotesEditor=this.hideNotesEditor.bind(this),this.stepZoom=this.stepZoom.bind(this),this.focus=this.focus.bind(this),this.blur=this.blur.bind(this),this.markerStateChanged=this.markerStateChanged.bind(this),this.switchToSelectMode=this.switchToSelectMode.bind(this),this.addDefs=this.addDefs.bind(this),this.addDefsToImage=this.addDefsToImage.bind(this)}return Object.defineProperty(qt.prototype,"ALL_MARKER_TYPES",{get:function(){return[ze,st,At,gt,Ft,Zt,bt,Nt,Ut,vt,Je,dn,Dn]},enumerable:!1,configurable:!0}),Object.defineProperty(qt.prototype,"DEFAULT_MARKER_TYPES",{get:function(){return[ze,st,At,gt,Zt,bt,Nt]},enumerable:!1,configurable:!0}),Object.defineProperty(qt.prototype,"BASIC_MARKER_TYPES",{get:function(){return[ze,st,At,gt,bt]},enumerable:!1,configurable:!0}),Object.defineProperty(qt.prototype,"availableMarkerTypes",{get:function(){return this._availableMarkerTypes},set:function(xt){var ft=this;this._availableMarkerTypes.splice(0),xt.forEach(function(Bt){if(typeof Bt=="string"){var Ot=ft.ALL_MARKER_TYPES.find(function(ut){return ut.typeName===Bt});Ot!==void 0&&ft._availableMarkerTypes.push(Ot)}else ft._availableMarkerTypes.push(Bt)})},enumerable:!1,configurable:!0}),Object.defineProperty(qt.prototype,"currentMarker",{get:function(){return this._currentMarker},enumerable:!1,configurable:!0}),Object.defineProperty(qt.prototype,"isOpen",{get:function(){return this._isOpen},enumerable:!1,configurable:!0}),Object.defineProperty(qt.prototype,"isUndoPossible",{get:function(){return!(!this.undoRedoManager||!this.undoRedoManager.isUndoPossible)},enumerable:!1,configurable:!0}),Object.defineProperty(qt.prototype,"isRedoPossible",{get:function(){return!(!this.undoRedoManager||!this.undoRedoManager.isRedoPossible)},enumerable:!1,configurable:!0}),Object.defineProperty(qt.prototype,"zoomLevel",{get:function(){return this._zoomLevel},set:function(xt){this._zoomLevel=xt,this.editorCanvas&&this.contentDiv&&(this.editorCanvas.style.transform="scale("+this._zoomLevel+")",this.contentDiv.scrollTo({left:(this.editorCanvas.clientWidth*this._zoomLevel-this.contentDiv.clientWidth)/2,top:(this.editorCanvas.clientHeight*this._zoomLevel-this.contentDiv.clientHeight)/2}))},enumerable:!1,configurable:!0}),Object.defineProperty(qt.prototype,"instanceNo",{get:function(){return this._instanceNo},enumerable:!1,configurable:!0}),qt.prototype.open=function(){this.setupResizeObserver(),this.setEditingTarget(),this.setTopLeft(),this.initMarkerCanvas(),this.initOverlay(),this.attachEvents(),this.settings.displayMode==="popup"&&this.onPopupTargetResize(),we.isLicensed||this.addLogo(),this._isOpen=!0,this._isFocused=!0},qt.prototype.show=function(){var xt=this;this.styles.styleSheetRoot===void 0&&Re.styleSheetRoot!==void 0&&(this.styles.styleSheetRoot=Re.styleSheetRoot),this.setWindowHeight(),this.showUI(),this.open(),this.eventListeners.show.forEach(function(ft){return ft(new Rn(xt))})},qt.prototype.render=function(){return Ge(this,void 0,void 0,function(){var xt;return ke(this,function(ft){switch(ft.label){case 0:return this.setCurrentMarker(),(xt=new Te).naturalSize=this.renderAtNaturalSize,xt.imageType=this.renderImageType,xt.imageQuality=this.renderImageQuality,xt.markersOnly=this.renderMarkersOnly,xt.width=this.renderWidth,xt.height=this.renderHeight,[4,xt.rasterize(this.target instanceof HTMLImageElement?this.target:null,this.markerImage,this.renderTarget)];case 1:return ft.sent(),[4,xt.rasterize(this.target instanceof HTMLImageElement?this.target:null,this.markerImage,this.renderTarget)];case 2:return[2,ft.sent()]}})})},qt.prototype.close=function(xt){var ft=this;if(xt===void 0&&(xt=!1),this.isOpen){var Bt=!1;xt||this.eventListeners.beforeclose.forEach(function(Ot){var ut=new Rn(ft,!0);Ot(ut),ut.defaultPrevented&&(Bt=!0)}),Bt||(this.coverDiv&&this.closeUI(),this.targetObserver&&(this.targetObserver.unobserve(this.target),this.targetObserver.unobserve(this.editorCanvas)),this.settings.displayMode==="popup"&&window.removeEventListener("resize",this.setWindowHeight),this.eventListeners.close.forEach(function(Ot){return Ot(new Rn(ft))}),this.detachEvents(),this._isOpen=!1)}},qt.prototype.addMarkersToToolbar=function(){for(var xt,ft=[],Bt=0;Btthis.editorCanvas.clientHeight?this.editorCanvas.clientHeight*xt:this.editorCanvas.clientWidth,Bt=ft',xt.title="Powered by marker.js",xt.style.display="grid",xt.style.alignItems="center",xt.style.justifyItems="center",xt.style.padding="3px",xt.style.width="20px",xt.style.height="20px",this.logoUI.appendChild(xt),this.editorCanvas.appendChild(this.logoUI),this.logoUI.style.position="absolute",this.logoUI.style.pointerEvents="all",this.positionLogo()},qt.prototype.positionLogo=function(){this.logoUI&&(this.uiStyleSettings.logoPosition!=="right"?this.logoUI.style.left=this.markerImageHolder.offsetLeft+10+"px":this.logoUI.style.left=this.markerImageHolder.offsetLeft+this.markerImageHolder.offsetWidth-this.logoUI.clientWidth-10+"px",this.logoUI.style.top=this.markerImageHolder.offsetTop+this.markerImageHolder.offsetHeight-this.logoUI.clientHeight-10+"px")},qt.prototype.overrideOverflow=function(){this.scrollXState=window.scrollX,this.scrollYState=window.scrollY,this.bodyOverflowState=document.body.style.overflow,window.scroll({top:0,left:0}),document.body.style.overflow="hidden"},qt.prototype.restoreOverflow=function(){document.body.style.overflow=this.bodyOverflowState,window.scroll({top:this.scrollYState,left:this.scrollXState})},qt.prototype.showUI=function(){switch(this.settings.displayMode==="popup"&&this.overrideOverflow(),this.coverDiv=document.createElement("div"),this.coverDiv.style.visibility=this._silentRenderMode?"hidden":"visible",this.coverDiv.className=this.styles.classNamePrefixBase+" "+this.styles.classNamePrefix,this.coverDiv.style.fontSize="16px",this.coverDiv.style.userSelect="none",this.settings.displayMode){case"inline":this.coverDiv.style.position="absolute";var xt=this.settings.uiOffsetTop!==void 0?this.target.offsetTop+this.settings.uiOffsetTop:this.target.offsetTop>this.styles.settings.toolbarHeight?this.target.offsetTop-this.styles.settings.toolbarHeight:0;this.coverDiv.style.top=xt+"px",this.coverDiv.style.left=this.target.offsetLeft.toString()+"px",this.coverDiv.style.width=this.target.offsetWidth.toString()+"px",this.coverDiv.style.zIndex=this.uiStyleSettings.zIndex!==void 0?this.uiStyleSettings.zIndex:"5";break;case"popup":this.coverDiv.style.position="absolute",this.coverDiv.style.top="0px",this.coverDiv.style.left="0px",this.coverDiv.style.width="100vw",this.coverDiv.style.height=window.innerHeight+"px",this.coverDiv.style.backgroundColor="rgba(0, 0, 0, 0.75)",this.coverDiv.style.zIndex=this.uiStyleSettings.zIndex!==void 0?this.uiStyleSettings.zIndex:"1000",this.coverDiv.style.display="flex"}this.targetRoot.appendChild(this.coverDiv),this.uiDiv=document.createElement("div"),this.uiDiv.style.display="flex",this.uiDiv.style.flexDirection="column",this.uiDiv.style.flexGrow="2",this.uiDiv.style.margin=this.settings.displayMode==="popup"?this.settings.popupMargin+"px":"0px",this.uiDiv.style.border="0px",this.coverDiv.appendChild(this.uiDiv),this.toolbar=new je(this.uiDiv,this.settings.displayMode,this._availableMarkerTypes,this.uiStyleSettings,this.styles),this.toolbar.addButtonClickListener(this.toolbarButtonClicked),this.toolbar.show(this._silentRenderMode||this.uiStyleSettings.hideToolbar?"hidden":"visible"),this.contentDiv=document.createElement("div"),this.contentDiv.style.display="flex",this.contentDiv.style.flexDirection="row",this.contentDiv.style.flexGrow="2",this.contentDiv.style.flexShrink="1",this.settings.displayMode==="popup"&&(this.contentDiv.style.backgroundColor=this.uiStyleSettings.canvasBackgroundColor,this.contentDiv.style.maxHeight=this.windowHeight-2*this.settings.popupMargin-3.5*this.uiStyleSettings.toolbarHeight+"px",this.contentDiv.style.maxWidth="calc(100vw - "+2*this.settings.popupMargin+"px)"),this.contentDiv.style.overflow="auto",this.uiDiv.appendChild(this.contentDiv),this.editorCanvas=document.createElement("div"),this.editorCanvas.style.flexGrow="2",this.editorCanvas.style.flexShrink="1",this.editorCanvas.style.position="relative",this.editorCanvas.style.overflow="hidden",this.editorCanvas.style.display="flex",this.settings.displayMode==="popup"&&(this.editorCanvas.style.alignItems="center",this.editorCanvas.style.justifyContent="center"),this.editorCanvas.style.pointerEvents="none",this.editorCanvas.style.transformOrigin="left top",this.editorCanvas.style.transform="scale("+this.zoomLevel+")",this.contentDiv.appendChild(this.editorCanvas),this.editingTarget=this.target instanceof HTMLImageElement?document.createElement("img"):document.createElement("canvas"),this.settings.uiOffsetTop===void 0&&this.target.offsetTop-1&&this.markers.splice(this.markers.indexOf(xt),1),xt.dispose()},qt.prototype.switchToSelectMode=function(){this.mode="select",this.hideNotesEditor(),this._currentMarker!==void 0&&(this._currentMarker.state!=="new"?this._currentMarker.select():(this.removeMarker(this._currentMarker),this.setCurrentMarker(),this.markerImage.style.cursor="default"),this.addUndoStep())},qt.prototype.toolbarButtonClicked=function(xt,ft){if(xt==="marker"&&ft!==void 0)this.createNewMarker(ft);else if(xt==="action")switch(ft){case"select":this.switchToSelectMode(),this.switchToSelectMode();break;case"delete":this.deleteSelectedMarker();break;case"clear":this.clear();break;case"undo":this.undo();break;case"redo":this.redo();break;case"zoom":this.stepZoom();break;case"zoom-out":this.zoomLevel=1;break;case"notes":this.notesArea===void 0?(this.switchToSelectMode(),this.zoomLevel=1,this.showNotesEditor()):this.switchToSelectMode();break;case"close":this.close();break;case"render":this.switchToSelectMode(),this.startRenderAndClose()}},qt.prototype.deleteSelectedMarker=function(){var xt=this;if(this._currentMarker!==void 0){var ft=!1;if(this.eventListeners.markerbeforedelete.forEach(function(Ot){var ut=new ln(xt,xt._currentMarker,!0);Ot(ut),ut.defaultPrevented&&(ft=!0)}),!ft){var Bt=this._currentMarker;this._currentMarker.dispose(),this.markerImage.removeChild(this._currentMarker.container),this.markers.splice(this.markers.indexOf(this._currentMarker),1),this.setCurrentMarker(),this.addUndoStep(),this.eventListeners.markerdelete.forEach(function(Ot){return Ot(new ln(xt,Bt))})}}},qt.prototype.clear=function(){var xt=this,ft=!1;if(this.markers.length>0&&(this.eventListeners.markerbeforedelete.forEach(function(It){var nn=new ln(xt,void 0,!0);It(nn),nn.defaultPrevented&&(ft=!0)}),!ft)){this.setCurrentMarker();for(var Bt=function(It){var nn=Ot.markers[It];Ot.setCurrentMarker(Ot.markers[It]),Ot._currentMarker.dispose(),Ot.markerImage.removeChild(Ot._currentMarker.container),Ot.markers.splice(Ot.markers.indexOf(Ot._currentMarker),1),Ot.eventListeners.markerdelete.forEach(function(Pt){return Pt(new ln(xt,nn))})},Ot=this,ut=this.markers.length-1;ut>=0;ut--)Bt(ut);this.addUndoStep()}},Object.defineProperty(qt.prototype,"isNotesAreaOpen",{get:function(){return this.notesArea!==void 0},enumerable:!1,configurable:!0}),qt.prototype.showNotesEditor=function(){var xt;this._currentMarker!==void 0&&(this.overlayContainer.innerHTML="",this.notesArea=document.createElement("textarea"),this.notesArea.className=this.uiStyleSettings.notesAreaStyleClassName,this.notesArea.style.pointerEvents="auto",this.notesArea.style.alignSelf="stretch",this.notesArea.style.width="100%",this.notesArea.style.margin=this.uiStyleSettings.toolbarHeight/4+"px",this.notesArea.value=(xt=this._currentMarker.notes)!==null&&xt!==void 0?xt:"",this.overlayContainer.appendChild(this.notesArea))},qt.prototype.hideNotesEditor=function(){this.isNotesAreaOpen&&(this._currentMarker!==void 0&&(this._currentMarker.notes=this.notesArea.value.trim()!==""?this.notesArea.value:void 0),this.overlayContainer.removeChild(this.notesArea),this.notesArea=void 0)},qt.prototype.selectLastMarker=function(){this.markers.length>0?this.setCurrentMarker(this.markers[this.markers.length-1]):this.setCurrentMarker()},qt.prototype.addUndoStep=function(){var xt=this;if(this._currentMarker===void 0||this._currentMarker.state!=="edit"){var ft=this.getState(),Bt=this.undoRedoManager.getLastUndoStep();if(!Bt||Bt.width===ft.width&&Bt.height===ft.height){var Ot=this.undoRedoManager.undoStepCount;this.undoRedoManager.addUndoStep(ft),Ot1&&this.panTo({x:xt.clientX,y:xt.clientY}))},qt.prototype.onPointerUp=function(xt){this.touchPoints>0&&this.touchPoints--,this.touchPoints===0&&this.isDragging&&this._currentMarker!==void 0&&this._currentMarker.pointerUp(this.clientToLocalCoordinates(xt.clientX,xt.clientY)),this.isDragging=!1,this.addUndoStep()},qt.prototype.onPointerOut=function(){this.touchPoints>0&&this.touchPoints--},qt.prototype.onKeyUp=function(xt){this._currentMarker===void 0||this.notesArea!==void 0||xt.key!=="Delete"&&xt.key!=="Backspace"||this.deleteSelectedMarker()},qt.prototype.clientToLocalCoordinates=function(xt,ft){var Bt=this.markerImage.getBoundingClientRect();return{x:(xt-Bt.left)/this.zoomLevel,y:(ft-Bt.top)/this.zoomLevel}},qt.prototype.onWindowResize=function(){this.positionUI()},qt.prototype.positionUI=function(){switch(this.setTopLeft(),this.settings.displayMode){case"inline":var xt=this.target.getClientRects().item(0).y>this.styles.settings.toolbarHeight?this.target.offsetTop-this.styles.settings.toolbarHeight:0;this.coverDiv.style.top=xt+"px",this.coverDiv.style.left=this.target.offsetLeft.toString()+"px";break;case"popup":this.coverDiv.style.top="0px",this.coverDiv.style.left="0px",this.coverDiv.style.width="100vw",this.coverDiv.style.height=this.windowHeight+"px",this.contentDiv.style.maxHeight=this.windowHeight-2*this.settings.popupMargin-3.5*this.styles.settings.toolbarHeight+"px"}this.positionMarkerImage(),this.positionLogo()},qt.prototype.addLicenseKey=function(xt){we.addKey(xt)},qt.prototype.addEventListener=function(xt,ft){this.eventListeners.addEventListener(xt,ft)},qt.prototype.removeEventListener=function(xt,ft){this.eventListeners.removeEventListener(xt,ft)},qt.prototype.renderState=function(xt){this._silentRenderMode=!0,this.settings.displayMode="inline",this.isOpen||this.show(),this.restoreState(xt),this.startRenderAndClose(),this._silentRenderMode=!1},Object.defineProperty(qt.prototype,"isFocused",{get:function(){return this._isFocused},enumerable:!1,configurable:!0}),qt.prototype.focus=function(){var xt=this;this._isFocused||(this.attachWindowEvents(),this._isFocused=!0,this._previousCurrentMarker!==void 0&&this.setCurrentMarker(this._previousCurrentMarker),this.eventListeners.focus.forEach(function(ft){return ft(new Rn(xt))}))},qt.prototype.blur=function(){var xt=this;this._isFocused&&(this.detachWindowEvents(),this._isFocused=!1,this._previousCurrentMarker=this._currentMarker,this.setCurrentMarker(),this.eventListeners.blur.forEach(function(ft){return ft(new Rn(xt))}))},qt.instanceCounter=0,qt}()},34402:function(sn,an,Be){"use strict";Be.r(an),Be.d(an,{default:function(){return ke}});var He=Be(34634);function et(Ze){var Oe=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!(0,He.isAnyArray)(Ze))throw new TypeError("input must be an array");if(Ze.length===0)throw new TypeError("input must not be empty");var we=Oe.fromIndex,Te=we===void 0?0:we,Re=Oe.toIndex,Ie=Re===void 0?Ze.length:Re;if(Te<0||Te>=Ze.length||!Number.isInteger(Te))throw new Error("fromIndex must be a positive integer smaller than length");if(Ie<=Te||Ie>Ze.length||!Number.isInteger(Ie))throw new Error("toIndex must be an integer greater than fromIndex and at most equal to length");for(var be=Ze[Te],Pe=Te+1;Pebe&&(be=Ze[Pe]);return be}function Ge(Ze){var Oe=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!(0,He.isAnyArray)(Ze))throw new TypeError("input must be an array");if(Ze.length===0)throw new TypeError("input must not be empty");var we=Oe.fromIndex,Te=we===void 0?0:we,Re=Oe.toIndex,Ie=Re===void 0?Ze.length:Re;if(Te<0||Te>=Ze.length||!Number.isInteger(Te))throw new Error("fromIndex must be a positive integer smaller than length");if(Ie<=Te||Ie>Ze.length||!Number.isInteger(Ie))throw new Error("toIndex must be an integer greater than fromIndex and at most equal to length");for(var be=Ze[Te],Pe=Te+1;Pe1&&arguments[1]!==void 0?arguments[1]:{};if((0,He.isAnyArray)(Ze)){if(Ze.length===0)throw new TypeError("input must not be empty")}else throw new TypeError("input must be an array");var we;if(Oe.output!==void 0){if(!(0,He.isAnyArray)(Oe.output))throw new TypeError("output option must be an array if specified");we=Oe.output}else we=new Array(Ze.length);var Te=Ge(Ze),Re=et(Ze);if(Te===Re)throw new RangeError("minimum and maximum input values are equal. Cannot rescale a constant array");var Ie=Oe.min,be=Ie===void 0?Oe.autoMinMax?Te:0:Ie,Pe=Oe.max,je=Pe===void 0?Oe.autoMinMax?Re:1:Pe;if(be>=je)throw new RangeError("min option must be smaller than max option");for(var ye=(je-be)/(Re-Te),ie=0;ie5&&arguments[5]!==void 0?arguments[5]:!1,tn=arguments.length>6?arguments[6]:void 0,Vn=arguments.length>7?arguments[7]:void 0,tr=Ie.useMemo(function(){if((0,we.Z)(un)==="object")return un.clearIcon;if(zn)return zn},[un,zn]),dr=Ie.useMemo(function(){return!!(!Fn&&un&&(rn.length||tn)&&!(Vn==="combobox"&&tn===""))},[un,Fn,rn.length,tn,Vn]);return{allowClear:dr,clearIcon:Ie.createElement(de,{className:"".concat(Mt,"-clear"),onMouseDown:wt,customizeIcon:tr},"\xD7")}}var xe=Ie.createContext(null);function he(){return Ie.useContext(xe)}function pe(){var Mt=arguments.length>0&&arguments[0]!==void 0?arguments[0]:10,wt=Ie.useState(!1),rn=(0,Ze.Z)(wt,2),un=rn[0],zn=rn[1],Fn=Ie.useRef(null),tn=function(){window.clearTimeout(Fn.current)};Ie.useEffect(function(){return tn},[]);var Vn=function(dr,Bn){tn(),Fn.current=window.setTimeout(function(){zn(dr),Bn&&Bn()},Mt)};return[un,Vn,tn]}function Se(){var Mt=arguments.length>0&&arguments[0]!==void 0?arguments[0]:250,wt=Ie.useRef(null),rn=Ie.useRef(null);Ie.useEffect(function(){return function(){window.clearTimeout(rn.current)}},[]);function un(zn){(zn||wt.current===null)&&(wt.current=zn),window.clearTimeout(rn.current),rn.current=window.setTimeout(function(){wt.current=null},Mt)}return[function(){return wt.current},un]}function Ne(Mt,wt,rn,un){var zn=Ie.useRef(null);zn.current={open:wt,triggerOpen:rn,customizedTrigger:un},Ie.useEffect(function(){function Fn(tn){var Vn;if(!((Vn=zn.current)!==null&&Vn!==void 0&&Vn.customizedTrigger)){var tr=tn.target;tr.shadowRoot&&tn.composed&&(tr=tn.composedPath()[0]||tr),zn.current.open&&Mt().filter(function(dr){return dr}).every(function(dr){return!dr.contains(tr)&&dr!==tr})&&zn.current.triggerOpen(!1)}}return window.addEventListener("mousedown",Fn),function(){return window.removeEventListener("mousedown",Fn)}},[])}var ze=Be(26112),Ke=Be(11780),Ve=function(wt,rn){var un,zn,Fn=wt.prefixCls,tn=wt.id,Vn=wt.inputElement,tr=wt.disabled,dr=wt.tabIndex,Bn=wt.autoFocus,An=wt.autoComplete,Nn=wt.editable,$n=wt.activeDescendantId,lr=wt.value,gr=wt.maxLength,Tr=wt.onKeyDown,ur=wt.onMouseDown,Br=wt.onChange,jr=wt.onPaste,fr=wt.onCompositionStart,qn=wt.onCompositionEnd,fi=wt.open,ui=wt.attrs,$i=Vn||Ie.createElement("input",null),wr=$i,oi=wr.ref,ji=wr.props,Yi=ji.onKeyDown,Vi=ji.onChange,to=ji.onMouseDown,bo=ji.onCompositionStart,Lo=ji.onCompositionEnd,Gi=ji.style;return(0,Re.Kp)(!("maxLength"in $i.props),"Passing 'maxLength' to input element directly may not work because input in BaseSelect is controlled."),$i=Ie.cloneElement($i,(0,ke.Z)((0,ke.Z)((0,ke.Z)({type:"search"},ji),{},{id:tn,ref:(0,ae.sQ)(rn,oi),disabled:tr,tabIndex:dr,autoComplete:An||"off",autoFocus:Bn,className:Pe()("".concat(Fn,"-selection-search-input"),(un=$i)===null||un===void 0||(zn=un.props)===null||zn===void 0?void 0:zn.className),role:"combobox","aria-label":"Search","aria-expanded":fi||!1,"aria-haspopup":"listbox","aria-owns":"".concat(tn,"_list"),"aria-autocomplete":"list","aria-controls":"".concat(tn,"_list"),"aria-activedescendant":fi?$n:void 0},ui),{},{value:Nn?lr:"",maxLength:gr,readOnly:!Nn,unselectable:Nn?null:"on",style:(0,ke.Z)((0,ke.Z)({},Gi),{},{opacity:Nn?null:0}),onKeyDown:function(Zr){Tr(Zr),Yi&&Yi(Zr)},onMouseDown:function(Zr){ur(Zr),to&&to(Zr)},onChange:function(Zr){Br(Zr),Vi&&Vi(Zr)},onCompositionStart:function(Zr){fr(Zr),bo&&bo(Zr)},onCompositionEnd:function(Zr){qn(Zr),Lo&&Lo(Zr)},onPaste:jr})),$i},Je=Ie.forwardRef(Ve);Je.displayName="Input";var tt=Je;function gt(Mt){return Array.isArray(Mt)?Mt:Mt!==void 0?[Mt]:[]}var st=typeof window!="undefined"&&window.document&&window.document.documentElement,St=st;function At(Mt){return Mt!=null}function vt(Mt){return!Mt&&Mt!==0}function Tt(Mt){return["string","number"].includes((0,we.Z)(Mt))}function bt(Mt){var wt=void 0;return Mt&&(Tt(Mt.title)?wt=Mt.title.toString():Tt(Mt.label)&&(wt=Mt.label.toString())),wt}function Et(Mt,wt){St?Ie.useLayoutEffect(Mt,wt):Ie.useEffect(Mt,wt)}function lt(Mt){var wt;return(wt=Mt.key)!==null&&wt!==void 0?wt:Mt.value}var Nt=function(wt){wt.preventDefault(),wt.stopPropagation()},Zt=function(wt){var rn=wt.id,un=wt.prefixCls,zn=wt.values,Fn=wt.open,tn=wt.searchValue,Vn=wt.autoClearSearchValue,tr=wt.inputRef,dr=wt.placeholder,Bn=wt.disabled,An=wt.mode,Nn=wt.showSearch,$n=wt.autoFocus,lr=wt.autoComplete,gr=wt.activeDescendantId,Tr=wt.tabIndex,ur=wt.removeIcon,Br=wt.maxTagCount,jr=wt.maxTagTextLength,fr=wt.maxTagPlaceholder,qn=fr===void 0?function(Yo){return"+ ".concat(Yo.length," ...")}:fr,fi=wt.tagRender,ui=wt.onToggleOpen,$i=wt.onRemove,wr=wt.onInputChange,oi=wt.onInputPaste,ji=wt.onInputKeyDown,Yi=wt.onInputMouseDown,Vi=wt.onInputCompositionStart,to=wt.onInputCompositionEnd,bo=Ie.useRef(null),Lo=(0,Ie.useState)(0),Gi=(0,Ze.Z)(Lo,2),Fo=Gi[0],Zr=Gi[1],Pa=(0,Ie.useState)(!1),Xr=(0,Ze.Z)(Pa,2),Ma=Xr[0],ts=Xr[1],fa="".concat(un,"-selection"),ys=Fn||An==="multiple"&&Vn===!1||An==="tags"?tn:"",qa=An==="tags"||An==="multiple"&&Vn===!1||Nn&&(Fn||Ma);Et(function(){Zr(bo.current.scrollWidth)},[ys]);function Go(Yo,Ms,_a,Bs,Vs){return Ie.createElement("span",{className:Pe()("".concat(fa,"-item"),(0,Ge.Z)({},"".concat(fa,"-item-disabled"),_a)),title:bt(Yo)},Ie.createElement("span",{className:"".concat(fa,"-item-content")},Ms),Bs&&Ie.createElement(de,{className:"".concat(fa,"-item-remove"),onMouseDown:Nt,onClick:Vs,customizeIcon:ur},"\xD7"))}function li(Yo,Ms,_a,Bs,Vs){var ol=function(Aa){Nt(Aa),ui(!Fn)};return Ie.createElement("span",{onMouseDown:ol},fi({label:Ms,value:Yo,disabled:_a,closable:Bs,onClose:Vs}))}function Ca(Yo){var Ms=Yo.disabled,_a=Yo.label,Bs=Yo.value,Vs=!Bn&&!Ms,ol=_a;if(typeof jr=="number"&&(typeof _a=="string"||typeof _a=="number")){var ka=String(ol);ka.length>jr&&(ol="".concat(ka.slice(0,jr),"..."))}var Aa=function(xs){xs&&xs.stopPropagation(),$i(Yo)};return typeof fi=="function"?li(Bs,ol,Ms,Vs,Aa):Go(Yo,ol,Ms,Vs,Aa)}function Za(Yo){var Ms=typeof qn=="function"?qn(Yo):qn;return Go({title:Ms},Ms,!1)}var lo=Ie.createElement("div",{className:"".concat(fa,"-search"),style:{width:Fo},onFocus:function(){ts(!0)},onBlur:function(){ts(!1)}},Ie.createElement(tt,{ref:tr,open:Fn,prefixCls:un,id:rn,inputElement:null,disabled:Bn,autoFocus:$n,autoComplete:lr,editable:qa,activeDescendantId:gr,value:ys,onKeyDown:ji,onMouseDown:Yi,onChange:wr,onPaste:oi,onCompositionStart:Vi,onCompositionEnd:to,tabIndex:Tr,attrs:(0,ze.Z)(wt,!0)}),Ie.createElement("span",{ref:bo,className:"".concat(fa,"-search-mirror"),"aria-hidden":!0},ys,"\xA0")),fn=Ie.createElement(Ke.Z,{prefixCls:"".concat(fa,"-overflow"),data:zn,renderItem:Ca,renderRest:Za,suffix:lo,itemKey:lt,maxCount:Br});return Ie.createElement(Ie.Fragment,null,fn,!zn.length&&!ys&&Ie.createElement("span",{className:"".concat(fa,"-placeholder")},dr))},Ut=Zt,Ft=function(wt){var rn=wt.inputElement,un=wt.prefixCls,zn=wt.id,Fn=wt.inputRef,tn=wt.disabled,Vn=wt.autoFocus,tr=wt.autoComplete,dr=wt.activeDescendantId,Bn=wt.mode,An=wt.open,Nn=wt.values,$n=wt.placeholder,lr=wt.tabIndex,gr=wt.showSearch,Tr=wt.searchValue,ur=wt.activeValue,Br=wt.maxLength,jr=wt.onInputKeyDown,fr=wt.onInputMouseDown,qn=wt.onInputChange,fi=wt.onInputPaste,ui=wt.onInputCompositionStart,$i=wt.onInputCompositionEnd,wr=wt.title,oi=Ie.useState(!1),ji=(0,Ze.Z)(oi,2),Yi=ji[0],Vi=ji[1],to=Bn==="combobox",bo=to||gr,Lo=Nn[0],Gi=Tr||"";to&&ur&&!Yi&&(Gi=ur),Ie.useEffect(function(){to&&Vi(!1)},[to,ur]);var Fo=Bn!=="combobox"&&!An&&!gr?!1:!!Gi,Zr=wr===void 0?bt(Lo):wr,Pa=function(){if(Lo)return null;var Ma=Fo?{visibility:"hidden"}:void 0;return Ie.createElement("span",{className:"".concat(un,"-selection-placeholder"),style:Ma},$n)};return Ie.createElement(Ie.Fragment,null,Ie.createElement("span",{className:"".concat(un,"-selection-search")},Ie.createElement(tt,{ref:Fn,prefixCls:un,id:zn,open:An,inputElement:rn,disabled:tn,autoFocus:Vn,autoComplete:tr,editable:bo,activeDescendantId:dr,value:Gi,onKeyDown:jr,onMouseDown:fr,onChange:function(Ma){Vi(!0),qn(Ma)},onPaste:fi,onCompositionStart:ui,onCompositionEnd:$i,tabIndex:lr,attrs:(0,ze.Z)(wt,!0),maxLength:to?Br:void 0})),!to&&Lo?Ie.createElement("span",{className:"".concat(un,"-selection-item"),title:Zr,style:Fo?{visibility:"hidden"}:void 0},Lo.label):null,Pa())},Yt=Ft;function dn(Mt){return![ie.Z.ESC,ie.Z.SHIFT,ie.Z.BACKSPACE,ie.Z.TAB,ie.Z.WIN_KEY,ie.Z.ALT,ie.Z.META,ie.Z.WIN_KEY_RIGHT,ie.Z.CTRL,ie.Z.SEMICOLON,ie.Z.EQUALS,ie.Z.CAPS_LOCK,ie.Z.CONTEXT_MENU,ie.Z.F1,ie.Z.F2,ie.Z.F3,ie.Z.F4,ie.Z.F5,ie.Z.F6,ie.Z.F7,ie.Z.F8,ie.Z.F9,ie.Z.F10,ie.Z.F11,ie.Z.F12].includes(Mt)}var Dn=function(wt,rn){var un=(0,Ie.useRef)(null),zn=(0,Ie.useRef)(!1),Fn=wt.prefixCls,tn=wt.open,Vn=wt.mode,tr=wt.showSearch,dr=wt.tokenWithEnter,Bn=wt.autoClearSearchValue,An=wt.onSearch,Nn=wt.onSearchSubmit,$n=wt.onToggleOpen,lr=wt.onInputKeyDown,gr=wt.domRef;Ie.useImperativeHandle(rn,function(){return{focus:function(){un.current.focus()},blur:function(){un.current.blur()}}});var Tr=Se(0),ur=(0,Ze.Z)(Tr,2),Br=ur[0],jr=ur[1],fr=function(Gi){var Fo=Gi.which;(Fo===ie.Z.UP||Fo===ie.Z.DOWN)&&Gi.preventDefault(),lr&&lr(Gi),Fo===ie.Z.ENTER&&Vn==="tags"&&!zn.current&&!tn&&(Nn==null||Nn(Gi.target.value)),dn(Fo)&&$n(!0)},qn=function(){jr(!0)},fi=(0,Ie.useRef)(null),ui=function(Gi){An(Gi,!0,zn.current)!==!1&&$n(!0)},$i=function(){zn.current=!0},wr=function(Gi){zn.current=!1,Vn!=="combobox"&&ui(Gi.target.value)},oi=function(Gi){var Fo=Gi.target.value;if(dr&&fi.current&&/[\r\n]/.test(fi.current)){var Zr=fi.current.replace(/[\r\n]+$/,"").replace(/\r\n/g," ").replace(/[\r\n]/g," ");Fo=Fo.replace(Zr,fi.current)}fi.current=null,ui(Fo)},ji=function(Gi){var Fo=Gi.clipboardData,Zr=Fo.getData("text");fi.current=Zr},Yi=function(Gi){var Fo=Gi.target;if(Fo!==un.current){var Zr=document.body.style.msTouchAction!==void 0;Zr?setTimeout(function(){un.current.focus()}):un.current.focus()}},Vi=function(Gi){var Fo=Br();Gi.target!==un.current&&!Fo&&Vn!=="combobox"&&Gi.preventDefault(),(Vn!=="combobox"&&(!tr||!Fo)||!tn)&&(tn&&Bn!==!1&&An("",!0,!1),$n())},to={inputRef:un,onInputKeyDown:fr,onInputMouseDown:qn,onInputChange:oi,onInputPaste:ji,onInputCompositionStart:$i,onInputCompositionEnd:wr},bo=Vn==="multiple"||Vn==="tags"?Ie.createElement(Ut,(0,He.Z)({},wt,to)):Ie.createElement(Yt,(0,He.Z)({},wt,to));return Ie.createElement("div",{ref:gr,className:"".concat(Fn,"-selector"),onClick:Yi,onMouseDown:Vi},bo)},Rn=Ie.forwardRef(Dn);Rn.displayName="Selector";var Zn=Rn,ln=Be(35593),Gn=["prefixCls","disabled","visible","children","popupElement","animation","transitionName","dropdownStyle","dropdownClassName","direction","placement","builtinPlacements","dropdownMatchSelectWidth","dropdownRender","dropdownAlign","getPopupContainer","empty","getTriggerDOMNode","onPopupVisibleChange","onPopupMouseEnter"],Wn=function(wt){var rn=wt===!0?0:1;return{bottomLeft:{points:["tl","bl"],offset:[0,4],overflow:{adjustX:rn,adjustY:1},htmlRegion:"scroll"},bottomRight:{points:["tr","br"],offset:[0,4],overflow:{adjustX:rn,adjustY:1},htmlRegion:"scroll"},topLeft:{points:["bl","tl"],offset:[0,-4],overflow:{adjustX:rn,adjustY:1},htmlRegion:"scroll"},topRight:{points:["br","tr"],offset:[0,-4],overflow:{adjustX:rn,adjustY:1},htmlRegion:"scroll"}}},qt=function(wt,rn){var un=wt.prefixCls,zn=wt.disabled,Fn=wt.visible,tn=wt.children,Vn=wt.popupElement,tr=wt.animation,dr=wt.transitionName,Bn=wt.dropdownStyle,An=wt.dropdownClassName,Nn=wt.direction,$n=Nn===void 0?"ltr":Nn,lr=wt.placement,gr=wt.builtinPlacements,Tr=wt.dropdownMatchSelectWidth,ur=wt.dropdownRender,Br=wt.dropdownAlign,jr=wt.getPopupContainer,fr=wt.empty,qn=wt.getTriggerDOMNode,fi=wt.onPopupVisibleChange,ui=wt.onPopupMouseEnter,$i=(0,Oe.Z)(wt,Gn),wr="".concat(un,"-dropdown"),oi=Vn;ur&&(oi=ur(Vn));var ji=Ie.useMemo(function(){return gr||Wn(Tr)},[gr,Tr]),Yi=tr?"".concat(wr,"-").concat(tr):dr,Vi=typeof Tr=="number",to=Ie.useMemo(function(){return Vi?null:Tr===!1?"minWidth":"width"},[Tr,Vi]),bo=Bn;Vi&&(bo=(0,ke.Z)((0,ke.Z)({},bo),{},{width:Tr}));var Lo=Ie.useRef(null);return Ie.useImperativeHandle(rn,function(){return{getPopupElement:function(){return Lo.current}}}),Ie.createElement(ln.Z,(0,He.Z)({},$i,{showAction:fi?["click"]:[],hideAction:fi?["click"]:[],popupPlacement:lr||($n==="rtl"?"bottomRight":"bottomLeft"),builtinPlacements:ji,prefixCls:wr,popupTransitionName:Yi,popup:Ie.createElement("div",{ref:Lo,onMouseEnter:ui},oi),stretch:to,popupAlign:Br,popupVisible:Fn,getPopupContainer:jr,popupClassName:Pe()(An,(0,Ge.Z)({},"".concat(wr,"-empty"),fr)),popupStyle:bo,getTriggerDOMNode:qn,onPopupVisibleChange:fi}),tn)},xt=Ie.forwardRef(qt);xt.displayName="SelectTrigger";var ft=xt,Bt=Be(34589);function Ot(Mt,wt){var rn=Mt.key,un;return"value"in Mt&&(un=Mt.value),rn!=null?rn:un!==void 0?un:"rc-index-key-".concat(wt)}function ut(Mt,wt){var rn=Mt||{},un=rn.label,zn=rn.value,Fn=rn.options,tn=rn.groupLabel,Vn=un||(wt?"children":"label");return{label:Vn,value:zn||"value",options:Fn||"options",groupLabel:tn||Vn}}function It(Mt){var wt=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},rn=wt.fieldNames,un=wt.childrenAsData,zn=[],Fn=ut(rn,!1),tn=Fn.label,Vn=Fn.value,tr=Fn.options,dr=Fn.groupLabel;function Bn(An,Nn){An.forEach(function($n){if(Nn||!(tr in $n)){var lr=$n[Vn];zn.push({key:Ot($n,zn.length),groupOption:Nn,data:$n,label:$n[tn],value:lr})}else{var gr=$n[dr];gr===void 0&&un&&(gr=$n.label),zn.push({key:Ot($n,zn.length),group:!0,data:$n,label:gr}),Bn($n[tr],!0)}})}return Bn(Mt,!1),zn}function nn(Mt){var wt=(0,ke.Z)({},Mt);return"props"in wt||Object.defineProperty(wt,"props",{get:function(){return(0,Re.ZP)(!1,"Return type is option instead of Option instance. Please read value directly instead of reading from `props`."),wt}}),wt}function Pt(Mt,wt){if(!wt||!wt.length)return null;var rn=!1;function un(Fn,tn){var Vn=(0,Bt.Z)(tn),tr=Vn[0],dr=Vn.slice(1);if(!tr)return[Fn];var Bn=Fn.split(tr);return rn=rn||Bn.length>1,Bn.reduce(function(An,Nn){return[].concat((0,et.Z)(An),(0,et.Z)(un(Nn,dr)))},[]).filter(function(An){return An})}var zn=un(Mt,wt);return rn?zn:null}var Vt=["id","prefixCls","className","showSearch","tagRender","direction","omitDomProps","displayValues","onDisplayValuesChange","emptyOptions","notFoundContent","onClear","mode","disabled","loading","getInputElement","getRawInputElement","open","defaultOpen","onDropdownVisibleChange","activeValue","onActiveValueChange","activeDescendantId","searchValue","autoClearSearchValue","onSearch","onSearchSplit","tokenSeparators","allowClear","suffixIcon","clearIcon","OptionList","animation","transitionName","dropdownStyle","dropdownClassName","dropdownMatchSelectWidth","dropdownRender","dropdownAlign","placement","builtinPlacements","getPopupContainer","showAction","onFocus","onBlur","onKeyUp","onKeyDown","onMouseDown"],on=["value","onChange","removeIcon","placeholder","autoFocus","maxTagCount","maxTagTextLength","maxTagPlaceholder","choiceTransitionName","onInputKeyDown","onPopupScroll","tabIndex"];function $t(Mt){return Mt==="tags"||Mt==="multiple"}var Jt=Ie.forwardRef(function(Mt,wt){var rn,un,zn=Mt.id,Fn=Mt.prefixCls,tn=Mt.className,Vn=Mt.showSearch,tr=Mt.tagRender,dr=Mt.direction,Bn=Mt.omitDomProps,An=Mt.displayValues,Nn=Mt.onDisplayValuesChange,$n=Mt.emptyOptions,lr=Mt.notFoundContent,gr=lr===void 0?"Not Found":lr,Tr=Mt.onClear,ur=Mt.mode,Br=Mt.disabled,jr=Mt.loading,fr=Mt.getInputElement,qn=Mt.getRawInputElement,fi=Mt.open,ui=Mt.defaultOpen,$i=Mt.onDropdownVisibleChange,wr=Mt.activeValue,oi=Mt.onActiveValueChange,ji=Mt.activeDescendantId,Yi=Mt.searchValue,Vi=Mt.autoClearSearchValue,to=Mt.onSearch,bo=Mt.onSearchSplit,Lo=Mt.tokenSeparators,Gi=Mt.allowClear,Fo=Mt.suffixIcon,Zr=Mt.clearIcon,Pa=Mt.OptionList,Xr=Mt.animation,Ma=Mt.transitionName,ts=Mt.dropdownStyle,fa=Mt.dropdownClassName,ys=Mt.dropdownMatchSelectWidth,qa=Mt.dropdownRender,Go=Mt.dropdownAlign,li=Mt.placement,Ca=Mt.builtinPlacements,Za=Mt.getPopupContainer,lo=Mt.showAction,fn=lo===void 0?[]:lo,Yo=Mt.onFocus,Ms=Mt.onBlur,_a=Mt.onKeyUp,Bs=Mt.onKeyDown,Vs=Mt.onMouseDown,ol=(0,Oe.Z)(Mt,Vt),ka=$t(ur),Aa=(Vn!==void 0?Vn:ka)||ur==="combobox",Sa=(0,ke.Z)({},ol);on.forEach(function(Ds){delete Sa[Ds]}),Bn==null||Bn.forEach(function(Ds){delete Sa[Ds]});var xs=Ie.useState(!1),Ls=(0,Ze.Z)(xs,2),la=Ls[0],na=Ls[1];Ie.useEffect(function(){na((0,ye.Z)())},[]);var Ri=Ie.useRef(null),qo=Ie.useRef(null),Ts=Ie.useRef(null),pl=Ie.useRef(null),Rs=Ie.useRef(null),As=pe(),Ns=(0,Ze.Z)(As,3),Ks=Ns[0],Yl=Ns[1],Gl=Ns[2];Ie.useImperativeHandle(wt,function(){var Ds,Al;return{focus:(Ds=pl.current)===null||Ds===void 0?void 0:Ds.focus,blur:(Al=pl.current)===null||Al===void 0?void 0:Al.blur,scrollTo:function(Du){var Fu;return(Fu=Rs.current)===null||Fu===void 0?void 0:Fu.scrollTo(Du)}}});var yu=Ie.useMemo(function(){var Ds;if(ur!=="combobox")return Yi;var Al=(Ds=An[0])===null||Ds===void 0?void 0:Ds.value;return typeof Al=="string"||typeof Al=="number"?String(Al):""},[Yi,ur,An]),Pr=ur==="combobox"&&typeof fr=="function"&&fr()||null,ou=typeof qn=="function"&&qn(),vd=(0,ae.x1)(qo,ou==null||(rn=ou.props)===null||rn===void 0?void 0:rn.ref),Tc=Ie.useState(!1),qs=(0,Ze.Z)(Tc,2),ws=qs[0],au=qs[1];(0,je.Z)(function(){au(!0)},[]);var hl=(0,Te.Z)(!1,{defaultValue:ui,value:fi}),Cs=(0,Ze.Z)(hl,2),wl=Cs[0],Dc=Cs[1],Ha=ws?wl:!1,Xs=!gr&&$n;(Br||Xs&&Ha&&ur==="combobox")&&(Ha=!1);var ks=Xs?!1:Ha,Ro=Ie.useCallback(function(Ds){var Al=Ds!==void 0?Ds:!Ha;Br||(Dc(Al),Ha!==Al&&($i==null||$i(Al)))},[Br,Ha,Dc,$i]),pu=Ie.useMemo(function(){return(Lo||[]).some(function(Ds){return[` `,`\r `].includes(Ds)})},[Lo]),ku=function(Al,_c,Du){var Fu=!0,du=Al;oi==null||oi(null);var Ws=Du?null:Pt(Al,Lo);return ur!=="combobox"&&Ws&&(du="",bo==null||bo(Ws),Ro(!1),Fu=!1),to&&yu!==du&&to(du,{source:_c?"typing":"effect"}),Fu},Ic=function(Al){!Al||!Al.trim()||to(Al,{source:"submit"})};Ie.useEffect(function(){!Ha&&!ka&&ur!=="combobox"&&ku("",!1,!1)},[Ha]),Ie.useEffect(function(){wl&&Br&&Dc(!1),Br&&Yl(!1)},[Br]);var Dh=Se(),Uh=(0,Ze.Z)(Dh,2),So=Uh[0],su=Uh[1],Vu=function(Al){var _c=So(),Du=Al.which;if(Du===ie.Z.ENTER&&(ur!=="combobox"&&Al.preventDefault(),Ha||Ro(!0)),su(!!yu),Du===ie.Z.BACKSPACE&&!_c&&ka&&!yu&&An.length){for(var Fu=(0,et.Z)(An),du=null,Ws=Fu.length-1;Ws>=0;Ws-=1){var Ku=Fu[Ws];if(!Ku.disabled){Fu.splice(Ws,1),du=Ku;break}}du&&Nn(Fu,{type:"remove",values:[du]})}for(var xu=arguments.length,Bd=new Array(xu>1?xu-1:0),Iu=1;Iu1?_c-1:0),Fu=1;Fu<_c;Fu++)Du[Fu-1]=arguments[Fu];if(Ha&&Rs.current){var du;(du=Rs.current).onKeyUp.apply(du,[Al].concat(Du))}_a==null||_a.apply(void 0,[Al].concat(Du))},td=function(Al){var _c=An.filter(function(Du){return Du!==Al});Nn(_c,{type:"remove",values:[Al]})},vc=Ie.useRef(!1),cs=function(){Yl(!0),Br||(Yo&&!vc.current&&Yo.apply(void 0,arguments),fn.includes("focus")&&Ro(!0)),vc.current=!0},qc=function(){Yl(!1,function(){vc.current=!1,Ro(!1)}),!Br&&(yu&&(ur==="tags"?to(yu,{source:"submit"}):ur==="multiple"&&to("",{source:"blur"})),Ms&&Ms.apply(void 0,arguments))},$c=[];Ie.useEffect(function(){return function(){$c.forEach(function(Ds){return clearTimeout(Ds)}),$c.splice(0,$c.length)}},[]);var eh=function(Al){var _c,Du=Al.target,Fu=(_c=Ts.current)===null||_c===void 0?void 0:_c.getPopupElement();if(Fu&&Fu.contains(Du)){var du=setTimeout(function(){var Bd=$c.indexOf(du);if(Bd!==-1&&$c.splice(Bd,1),Gl(),!la&&!Fu.contains(document.activeElement)){var Iu;(Iu=pl.current)===null||Iu===void 0||Iu.focus()}});$c.push(du)}for(var Ws=arguments.length,Ku=new Array(Ws>1?Ws-1:0),xu=1;xu1&&arguments[1]!==void 0?arguments[1]:!1;return(0,Rr.Z)(Mt).map(function(rn,un){if(!Ie.isValidElement(rn)||!rn.type)return null;var zn=rn,Fn=zn.type.isSelectOptGroup,tn=zn.key,Vn=zn.props,tr=Vn.children,dr=(0,Oe.Z)(Vn,hr);return wt||!Fn?or(rn):(0,ke.Z)((0,ke.Z)({key:"__RC_SELECT_GRP__".concat(tn===null?un:tn,"__"),label:tn},dr),{},{options:yr(tr)})}).filter(function(rn){return rn})}function ti(Mt,wt,rn,un,zn){return Ie.useMemo(function(){var Fn=Mt,tn=!Mt;tn&&(Fn=yr(wt));var Vn=new Map,tr=new Map,dr=function(Nn,$n,lr){lr&&typeof lr=="string"&&Nn.set($n[lr],$n)};function Bn(An){for(var Nn=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,$n=0;$n1&&arguments[1]!==void 0?arguments[1]:1,Za=oi.length,lo=0;lo1&&arguments[1]!==void 0?arguments[1]:!1;Fo(li);var Za={source:Ca?"keyboard":"mouse"},lo=oi[li];if(!lo){gr(null,-1,Za);return}gr(lo.value,li,Za)};(0,Ie.useEffect)(function(){Zr(Tr!==!1?to(0):-1)},[oi.length,dr]);var Pa=Ie.useCallback(function(Go){return jr.has(Go)&&tr!=="combobox"},[tr,(0,et.Z)(jr).toString(),jr.size]);(0,Ie.useEffect)(function(){var Go=setTimeout(function(){if(!Vn&&tn&&jr.size===1){var Ca=Array.from(jr)[0],Za=oi.findIndex(function(lo){var fn=lo.data;return fn.value===Ca});Za!==-1&&(Zr(Za),Vi(Za))}});if(tn){var li;(li=ji.current)===null||li===void 0||li.scrollTo(void 0)}return function(){return clearTimeout(Go)}},[tn,dr,lr.length]);var Xr=function(li){li!==void 0&&ur(li,{selected:!jr.has(li)}),Vn||Bn(!1)};if(Ie.useImperativeHandle(rn,function(){return{onKeyDown:function(li){var Ca=li.which,Za=li.ctrlKey;switch(Ca){case ie.Z.N:case ie.Z.P:case ie.Z.UP:case ie.Z.DOWN:{var lo=0;if(Ca===ie.Z.UP?lo=-1:Ca===ie.Z.DOWN?lo=1:ko()&&Za&&(Ca===ie.Z.N?lo=1:Ca===ie.Z.P&&(lo=-1)),lo!==0){var fn=to(Gi+lo,lo);Vi(fn),Zr(fn,!0)}break}case ie.Z.ENTER:{var Yo=oi[Gi];Yo&&!Yo.data.disabled?Xr(Yo.value):Xr(void 0),tn&&li.preventDefault();break}case ie.Z.ESC:Bn(!1),tn&&li.stopPropagation()}},onKeyUp:function(){},scrollTo:function(li){Vi(li)}}}),oi.length===0)return Ie.createElement("div",{role:"listbox",id:"".concat(Fn,"_list"),className:"".concat(wr,"-empty"),onMouseDown:Yi},An);var Ma=Object.keys(fr).map(function(Go){return fr[Go]}),ts=function(li){return li.label};function fa(Go,li){var Ca=Go.group;return{role:Ca?"presentation":"option",id:"".concat(Fn,"_list_").concat(li)}}var ys=function(li){var Ca=oi[li];if(!Ca)return null;var Za=Ca.data||{},lo=Za.value,fn=Ca.group,Yo=(0,ze.Z)(Za,!0),Ms=ts(Ca);return Ca?Ie.createElement("div",(0,He.Z)({"aria-label":typeof Ms=="string"&&!fn?Ms:null},Yo,{key:li},fa(Ca,li),{"aria-selected":Pa(lo)}),lo):null},qa={role:"listbox",id:"".concat(Fn,"_list")};return Ie.createElement(Ie.Fragment,null,qn&&Ie.createElement("div",(0,He.Z)({},qa,{style:{height:0,width:0,overflow:"hidden"}}),ys(Gi-1),ys(Gi),ys(Gi+1)),Ie.createElement(ma.Z,{itemKey:"key",ref:ji,data:oi,height:ui,itemHeight:$i,fullHeight:!1,onMouseDown:Yi,onScroll:Nn,virtual:qn,direction:fi,innerProps:qn?null:qa},function(Go,li){var Ca,Za=Go.group,lo=Go.groupOption,fn=Go.data,Yo=Go.label,Ms=Go.value,_a=fn.key;if(Za){var Bs,Vs=(Bs=fn.title)!==null&&Bs!==void 0?Bs:Rt(Yo)?Yo.toString():void 0;return Ie.createElement("div",{className:Pe()(wr,"".concat(wr,"-group")),title:Vs},Yo!==void 0?Yo:_a)}var ol=fn.disabled,ka=fn.title,Aa=fn.children,Sa=fn.style,xs=fn.className,Ls=(0,Oe.Z)(fn,ro),la=(0,xo.Z)(Ls,Ma),na=Pa(Ms),Ri="".concat(wr,"-option"),qo=Pe()(wr,Ri,xs,(Ca={},(0,Ge.Z)(Ca,"".concat(Ri,"-grouped"),lo),(0,Ge.Z)(Ca,"".concat(Ri,"-active"),Gi===li&&!ol),(0,Ge.Z)(Ca,"".concat(Ri,"-disabled"),ol),(0,Ge.Z)(Ca,"".concat(Ri,"-selected"),na),Ca)),Ts=ts(Go),pl=!Br||typeof Br=="function"||na,Rs=typeof Ts=="number"?Ts:Ts||Ms,As=Rt(Rs)?Rs.toString():void 0;return ka!==void 0&&(As=ka),Ie.createElement("div",(0,He.Z)({},(0,ze.Z)(la),qn?{}:fa(Go,li),{"aria-selected":na,className:qo,title:As,onMouseMove:function(){Gi===li||ol||Zr(li)},onClick:function(){ol||Xr(Ms)},style:Sa}),Ie.createElement("div",{className:"".concat(Ri,"-content")},Rs),Ie.isValidElement(Br)||na,pl&&Ie.createElement(de,{className:"".concat(wr,"-option-state"),customizeIcon:Br,customizeIconProps:{isSelected:na}},na?"\u2713":null))}))},Bi=Ie.forwardRef(Kr);Bi.displayName="OptionList";var _r=Bi;function pi(Mt){var wt=Mt.mode,rn=Mt.options,un=Mt.children,zn=Mt.backfill,Fn=Mt.allowClear,tn=Mt.placeholder,Vn=Mt.getInputElement,tr=Mt.showSearch,dr=Mt.onSearch,Bn=Mt.defaultOpen,An=Mt.autoFocus,Nn=Mt.labelInValue,$n=Mt.value,lr=Mt.inputValue,gr=Mt.optionLabelProp,Tr=isMultiple(wt),ur=tr!==void 0?tr:Tr||wt==="combobox",Br=rn||convertChildrenToData(un);if(warning(wt!=="tags"||Br.every(function(fi){return!fi.disabled}),"Please avoid setting option to disabled in tags mode since user can always type text as tag."),wt==="tags"||wt==="combobox"){var jr=Br.some(function(fi){return fi.options?fi.options.some(function(ui){return typeof("value"in ui?ui.value:ui.key)=="number"}):typeof("value"in fi?fi.value:fi.key)=="number"});warning(!jr,"`value` of Option should not use number type when `mode` is `tags` or `combobox`.")}if(warning(wt!=="combobox"||!gr,"`combobox` mode not support `optionLabelProp`. Please set `value` on Option directly."),warning(wt==="combobox"||!zn,"`backfill` only works with `combobox` mode."),warning(wt==="combobox"||!Vn,"`getInputElement` only work with `combobox` mode."),noteOnce(wt!=="combobox"||!Vn||!Fn||!tn,"Customize `getInputElement` should customize clear and placeholder logic instead of configuring `allowClear` and `placeholder`."),dr&&!ur&&wt!=="combobox"&&wt!=="tags"&&warning(!1,"`onSearch` should work with `showSearch` instead of use alone."),noteOnce(!Bn||An,"`defaultOpen` makes Select open without focus which means it will not close by click outside. You can set `autoFocus` if needed."),$n!=null){var fr=toArray($n);warning(!Nn||fr.every(function(fi){return _typeof(fi)==="object"&&("key"in fi||"value"in fi)}),"`value` should in shape of `{ value: string | number, label?: ReactNode }` when you set `labelInValue` to `true`"),warning(!Tr||Array.isArray($n),"`value` should be array when `mode` is `multiple` or `tags`")}if(un){var qn=null;toNodeArray(un).some(function(fi){if(!React.isValidElement(fi)||!fi.type)return!1;var ui=fi,$i=ui.type;if($i.isSelectOption)return!1;if($i.isSelectOptGroup){var wr=toNodeArray(fi.props.children).every(function(oi){return!React.isValidElement(oi)||!fi.type||oi.type.isSelectOption?!0:(qn=oi.type,!1)});return!wr}return qn=$i,!0}),qn&&warning(!1,"`children` should be `Select.Option` or `Select.OptGroup` instead of `".concat(qn.displayName||qn.name||qn,"`.")),warning(lr===void 0,"`inputValue` is deprecated, please use `searchValue` instead.")}}function ii(Mt,wt){if(Mt){var rn=function un(zn){for(var Fn=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,tn=0;tn2&&arguments[2]!==void 0?arguments[2]:{},Ro=ks.source,pu=Ro===void 0?"keyboard":Ro;vd(Xs),tn&&un==="combobox"&&Ha!==null&&pu==="keyboard"&&Gl(String(Ha))},[tn,un]),ws=function(Xs,ks,Ro){var pu=function(){var vc,cs=xs(Xs);return[Gi?{label:cs==null?void 0:cs[fa.label],value:Xs,key:(vc=cs==null?void 0:cs.key)!==null&&vc!==void 0?vc:Xs}:Xs,nn(cs)]};if(ks&&$n){var ku=pu(),Ic=(0,Ze.Z)(ku,2),Dh=Ic[0],Uh=Ic[1];$n(Dh,Uh)}else if(!ks&&lr&&Ro!=="clear"){var So=pu(),su=(0,Ze.Z)(So,2),Vu=su[0],Ih=su[1];lr(Vu,Ih)}},au=mi(function(Ha,Xs){var ks,Ro=Xr?Xs.selected:!0;Ro?ks=Xr?[].concat((0,et.Z)(Sa),[Ha]):[Ha]:ks=Sa.filter(function(pu){return pu.value!==Ha}),As(ks),ws(Ha,Ro),un==="combobox"?Gl(""):(!$t||Nn)&&(li(""),Gl(""))}),hl=function(Xs,ks){As(Xs);var Ro=ks.type,pu=ks.values;(Ro==="remove"||Ro==="clear")&&pu.forEach(function(ku){ws(ku.value,!1,Ro)})},Cs=function(Xs,ks){if(li(Xs),Gl(null),ks.source==="submit"){var Ro=(Xs||"").trim();if(Ro){var pu=Array.from(new Set([].concat((0,et.Z)(la),[Ro])));As(pu),ws(Ro,!0),li("")}return}ks.source!=="blur"&&(un==="combobox"&&As(Xs),Bn==null||Bn(Xs))},wl=function(Xs){var ks=Xs;un!=="tags"&&(ks=Xs.map(function(pu){var ku=lo.get(pu);return ku==null?void 0:ku.value}).filter(function(pu){return pu!==void 0}));var Ro=Array.from(new Set([].concat((0,et.Z)(la),(0,et.Z)(ks))));As(Ro),Ro.forEach(function(pu){ws(pu,!0)})},Dc=Ie.useMemo(function(){var Ha=wr!==!1&&Tr!==!1;return(0,ke.Z)((0,ke.Z)({},Ca),{},{flattenOptions:Rs,onActiveValue:qs,defaultActiveFirstOption:Tc,onSelect:au,menuItemSelectedIcon:$i,rawValues:la,fieldNames:fa,virtual:Ha,direction:oi,listHeight:Yi,listItemHeight:to,childrenAsData:Ma})},[Ca,Rs,qs,Tc,au,$i,la,fa,wr,Tr,Yi,to,Ma]);return Ie.createElement(_i.Provider,{value:Dc},Ie.createElement(xn,(0,He.Z)({},Zr,{id:Pa,prefixCls:Fn,ref:wt,omitDomProps:Kt,mode:un,displayValues:Ls,onDisplayValuesChange:hl,direction:oi,searchValue:Go,onSearch:Cs,autoClearSearchValue:Nn,onSearchSplit:wl,dropdownMatchSelectWidth:Tr,OptionList:_r,emptyOptions:!Rs.length,activeValue:Yl,activeDescendantId:"".concat(Pa,"_list_").concat(ou)})))}),De=We;De.Option=Co,De.OptGroup=Pi;var qe=De,dt=qe},9296:function(sn,an,Be){"use strict";Be.r(an),Be.d(an,{ResizableTextArea:function(){return Je},default:function(){return vt}});var He=Be(92413),et=Be(33708),Ge=Be(400),ke=Be(39559),Ze=Be(33606),Oe=Be(37061),we=Be(26407),Te=Be(92310),Re=Be.n(Te),Ie=Be(93681),be=Be(5643),Pe=Be(18929),je=Be(59301),ye=Be(29301),ie=Be(34280),ae=Be(16089),fe=` min-height:0 !important; max-height:none !important; height:0 !important; visibility:hidden !important; overflow:hidden !important; position:absolute !important; z-index:-1000 !important; top:0 !important; right:0 !important; pointer-events: none !important; `,de=["letter-spacing","line-height","padding-top","padding-bottom","font-family","font-weight","font-size","font-variant","text-rendering","text-transform","width","text-indent","padding-left","padding-right","border-width","box-sizing","word-break","white-space"],ve={},xe;function he(Tt){var bt=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,Et=Tt.getAttribute("id")||Tt.getAttribute("data-reactid")||Tt.getAttribute("name");if(bt&&ve[Et])return ve[Et];var lt=window.getComputedStyle(Tt),Nt=lt.getPropertyValue("box-sizing")||lt.getPropertyValue("-moz-box-sizing")||lt.getPropertyValue("-webkit-box-sizing"),Zt=parseFloat(lt.getPropertyValue("padding-bottom"))+parseFloat(lt.getPropertyValue("padding-top")),Ut=parseFloat(lt.getPropertyValue("border-bottom-width"))+parseFloat(lt.getPropertyValue("border-top-width")),Ft=de.map(function(dn){return"".concat(dn,":").concat(lt.getPropertyValue(dn))}).join(";"),Yt={sizingStyle:Ft,paddingSize:Zt,borderSize:Ut,boxSizing:Nt};return bt&&Et&&(ve[Et]=Yt),Yt}function pe(Tt){var bt=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,Et=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null,lt=arguments.length>3&&arguments[3]!==void 0?arguments[3]:null;xe||(xe=document.createElement("textarea"),xe.setAttribute("tab-index","-1"),xe.setAttribute("aria-hidden","true"),document.body.appendChild(xe)),Tt.getAttribute("wrap")?xe.setAttribute("wrap",Tt.getAttribute("wrap")):xe.removeAttribute("wrap");var Nt=he(Tt,bt),Zt=Nt.paddingSize,Ut=Nt.borderSize,Ft=Nt.boxSizing,Yt=Nt.sizingStyle;xe.setAttribute("style","".concat(Yt,";").concat(fe)),xe.value=Tt.value||Tt.placeholder||"";var dn=void 0,Dn=void 0,Rn,Zn=xe.scrollHeight;if(Ft==="border-box"?Zn+=Ut:Ft==="content-box"&&(Zn-=Zt),Et!==null||lt!==null){xe.value=" ";var ln=xe.scrollHeight-Zt;Et!==null&&(dn=ln*Et,Ft==="border-box"&&(dn=dn+Zt+Ut),Zn=Math.max(dn,Zn)),lt!==null&&(Dn=ln*lt,Ft==="border-box"&&(Dn=Dn+Zt+Ut),Rn=Zn>Dn?"":"hidden",Zn=Math.min(Dn,Zn))}var Gn={height:Zn,overflowY:Rn,resize:"none"};return dn&&(Gn.minHeight=dn),Dn&&(Gn.maxHeight=Dn),Gn}var Se=["prefixCls","onPressEnter","defaultValue","value","autoSize","onResize","className","style","disabled","onChange","onInternalAutoSize"],Ne=0,ze=1,Ke=2,Ve=je.forwardRef(function(Tt,bt){var Et=Tt,lt=Et.prefixCls,Nt=Et.onPressEnter,Zt=Et.defaultValue,Ut=Et.value,Ft=Et.autoSize,Yt=Et.onResize,dn=Et.className,Dn=Et.style,Rn=Et.disabled,Zn=Et.onChange,ln=Et.onInternalAutoSize,Gn=(0,Oe.Z)(Et,Se),Wn=(0,Pe.Z)(Zt,{value:Ut,postState:function(Pi){return Pi!=null?Pi:""}}),qt=(0,Ze.Z)(Wn,2),xt=qt[0],ft=qt[1],Bt=function(Pi){ft(Pi.target.value),Zn==null||Zn(Pi)},Ot=je.useRef();je.useImperativeHandle(bt,function(){return{textArea:Ot.current}});var ut=je.useMemo(function(){return Ft&&(0,ke.Z)(Ft)==="object"?[Ft.minRows,Ft.maxRows]:[]},[Ft]),It=(0,Ze.Z)(ut,2),nn=It[0],Pt=It[1],Vt=!!Ft,on=function(){try{if(document.activeElement===Ot.current){var Pi=Ot.current,vo=Pi.selectionStart,Co=Pi.selectionEnd,To=Pi.scrollTop;Ot.current.setSelectionRange(vo,Co),Ot.current.scrollTop=To}}catch(xo){}},$t=je.useState(Ke),Jt=(0,Ze.Z)($t,2),xn=Jt[0],Qn=Jt[1],rr=je.useState(),Jn=(0,Ze.Z)(rr,2),mr=Jn[0],Rr=Jn[1],Tn=function(){Qn(Ne)};(0,ie.Z)(function(){Vt&&Tn()},[Ut,nn,Pt,Vt]),(0,ie.Z)(function(){if(xn===Ne)Qn(ze);else if(xn===ze){var di=pe(Ot.current,!1,nn,Pt);Qn(Ke),Rr(di)}else on()},[xn]);var hr=je.useRef(),or=function(){ae.Z.cancel(hr.current)},yr=function(Pi){xn===Ke&&(Yt==null||Yt(Pi),Ft&&(or(),hr.current=(0,ae.Z)(function(){Tn()})))};je.useEffect(function(){return or},[]);var ti=Vt?mr:null,mi=(0,et.Z)((0,et.Z)({},Dn),ti);return(xn===Ne||xn===ze)&&(mi.overflowY="hidden",mi.overflowX="hidden"),je.createElement(ye.Z,{onResize:yr,disabled:!(Ft||Yt)},je.createElement("textarea",(0,He.Z)({},Gn,{ref:Ot,style:mi,className:Re()(lt,dn,(0,Ge.Z)({},"".concat(lt,"-disabled"),Rn)),disabled:Rn,value:xt,onChange:Bt})))}),Je=Ve,tt=["defaultValue","value","onFocus","onBlur","onChange","allowClear","maxLength","onCompositionStart","onCompositionEnd","suffix","prefixCls","classes","showCount","className","style","disabled","hidden","classNames","styles","onResize"];function gt(Tt,bt){return(0,we.Z)(Tt||"").slice(0,bt).join("")}function st(Tt,bt,Et,lt){var Nt=Et;return Tt?Nt=gt(Et,lt):(0,we.Z)(bt||"").lengthlt&&(Nt=bt),Nt}var St=je.forwardRef(function(Tt,bt){var Et,lt=Tt.defaultValue,Nt=Tt.value,Zt=Tt.onFocus,Ut=Tt.onBlur,Ft=Tt.onChange,Yt=Tt.allowClear,dn=Tt.maxLength,Dn=Tt.onCompositionStart,Rn=Tt.onCompositionEnd,Zn=Tt.suffix,ln=Tt.prefixCls,Gn=ln===void 0?"rc-textarea":ln,Wn=Tt.classes,qt=Tt.showCount,xt=Tt.className,ft=Tt.style,Bt=Tt.disabled,Ot=Tt.hidden,ut=Tt.classNames,It=Tt.styles,nn=Tt.onResize,Pt=(0,Oe.Z)(Tt,tt),Vt=(0,Pe.Z)(lt,{value:Nt,defaultValue:lt}),on=(0,Ze.Z)(Vt,2),$t=on[0],Jt=on[1],xn=(0,je.useRef)(null),Qn=je.useState(!1),rr=(0,Ze.Z)(Qn,2),Jn=rr[0],mr=rr[1],Rr=je.useState(!1),Tn=(0,Ze.Z)(Rr,2),hr=Tn[0],or=Tn[1],yr=je.useRef(),ti=je.useRef(0),mi=je.useState(null),di=(0,Ze.Z)(mi,2),Pi=di[0],vo=di[1],Co=function(){var Le;(Le=xn.current)===null||Le===void 0||Le.textArea.focus()};(0,je.useImperativeHandle)(bt,function(){return{resizableTextArea:xn.current,focus:Co,blur:function(){var Le;(Le=xn.current)===null||Le===void 0||Le.textArea.blur()}}}),(0,je.useEffect)(function(){mr(function(Kt){return!Bt&&Kt})},[Bt]);var To=Number(dn)>0,xo=function(Le){or(!0),yr.current=$t,ti.current=Le.currentTarget.selectionStart,Dn==null||Dn(Le)},ma=function(Le){or(!1);var We=Le.currentTarget.value;if(To){var De,qe=ti.current>=dn+1||ti.current===((De=yr.current)===null||De===void 0?void 0:De.length);We=st(qe,yr.current,We,dn)}We!==$t&&(Jt(We),(0,be.rJ)(Le.currentTarget,Le,Ft,We)),Rn==null||Rn(Le)},xa=function(Le){var We=Le.target.value;if(!hr&&To){var De=Le.target.selectionStart>=dn+1||Le.target.selectionStart===We.length||!Le.target.selectionStart;We=st(De,$t,We,dn)}Jt(We),(0,be.rJ)(Le.currentTarget,Le,Ft,We)},_i=function(Le){var We=Pt.onPressEnter,De=Pt.onKeyDown;Le.key==="Enter"&&We&&We(Le),De==null||De(Le)},ko=function(Le){mr(!0),Zt==null||Zt(Le)},ro=function(Le){mr(!1),Ut==null||Ut(Le)},Rt=function(Le){var We;Jt(""),Co(),(0,be.rJ)((We=xn.current)===null||We===void 0?void 0:We.textArea,Le,Ft)},Kr=(0,be.D7)($t);!hr&&To&&Nt==null&&(Kr=gt(Kr,dn));var Bi=Zn,_r;if(qt){var pi=(0,we.Z)(Kr).length;(0,ke.Z)(qt)==="object"?_r=qt.formatter({value:Kr,count:pi,maxLength:dn}):_r="".concat(pi).concat(To?" / ".concat(dn):""),Bi=je.createElement(je.Fragment,null,Bi,je.createElement("span",{className:Re()("".concat(Gn,"-data-count"),ut==null?void 0:ut.count),style:It==null?void 0:It.count},_r))}var ii=function(Le){var We;nn==null||nn(Le),(We=xn.current)!==null&&We!==void 0&&We.textArea.style.height&&vo(!0)},zi=!Pt.autoSize&&!qt&&!Yt,Jr=je.createElement(Ie.BaseInput,{value:Kr,allowClear:Yt,handleReset:Rt,suffix:Bi,prefixCls:Gn,classes:{affixWrapper:Re()(Wn==null?void 0:Wn.affixWrapper,(Et={},(0,Ge.Z)(Et,"".concat(Gn,"-show-count"),qt),(0,Ge.Z)(Et,"".concat(Gn,"-textarea-allow-clear"),Yt),Et))},disabled:Bt,focused:Jn,className:xt,style:(0,et.Z)((0,et.Z)({},ft),Pi&&!zi?{height:"auto"}:{}),dataAttrs:{affixWrapper:{"data-count":typeof _r=="string"?_r:void 0}},hidden:Ot,inputElement:je.createElement(Je,(0,He.Z)({},Pt,{onKeyDown:_i,onChange:xa,onFocus:ko,onBlur:ro,onCompositionStart:xo,onCompositionEnd:ma,className:ut==null?void 0:ut.textarea,style:(0,et.Z)((0,et.Z)({},It==null?void 0:It.textarea),{},{resize:ft==null?void 0:ft.resize}),disabled:Bt,prefixCls:Gn,onResize:ii,ref:xn}))});return Jr}),At=St,vt=At},39417:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return ze}});var He=Be(92413),et=Be(400),Ge=Be(37061),ke=Be(33708),Ze=Be(6909),Oe=Be(4771),we=Be(25314),Te=Be(9427),Re=Be(25440),Ie=Be(92310),be=Be.n(Ie),Pe=Be(26112),je=Be(59301),ye=Be(39378),ie=function(Ve){for(var Je=Ve.prefixCls,tt=Ve.level,gt=Ve.isStart,st=Ve.isEnd,St="".concat(Je,"-indent-unit"),At=[],vt=0;vt0&&arguments[0]!==void 0?arguments[0]:[],Bt=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],Ot=ft.length,ut=Bt.length;if(Math.abs(Ot-ut)!==1)return{add:!1,key:null};function It(nn,Pt){var Vt=new Map;nn.forEach(function($t){Vt.set($t,!0)});var on=Pt.filter(function($t){return!Vt.has($t)});return on.length===1?on[0]:null}return Ot ").concat(Bt);return Bt}var dn=ae.forwardRef(function(ft,Bt){var Ot=ft.prefixCls,ut=ft.data,It=ft.selectable,nn=ft.checkable,Pt=ft.expandedKeys,Vt=ft.selectedKeys,on=ft.checkedKeys,$t=ft.loadedKeys,Jt=ft.loadingKeys,xn=ft.halfCheckedKeys,Qn=ft.keyEntities,rr=ft.disabled,Jn=ft.dragging,mr=ft.dragOverNodeKey,Rr=ft.dropPosition,Tn=ft.motion,hr=ft.height,or=ft.itemHeight,yr=ft.virtual,ti=ft.focusable,mi=ft.activeItem,di=ft.focused,Pi=ft.tabIndex,vo=ft.onKeyDown,Co=ft.onFocus,To=ft.onBlur,xo=ft.onActiveChange,ma=ft.onListChangeStart,xa=ft.onListChangeEnd,_i=(0,he.Z)(ft,vt),ko=ae.useRef(null),ro=ae.useRef(null);ae.useImperativeHandle(Bt,function(){return{scrollTo:function(An){ko.current.scrollTo(An)},getIndentWidth:function(){return ro.current.offsetWidth}}});var Rt=ae.useState(Pt),Kr=(0,xe.Z)(Rt,2),Bi=Kr[0],_r=Kr[1],pi=ae.useState(ut),ii=(0,xe.Z)(pi,2),zi=ii[0],Jr=ii[1],Kt=ae.useState(ut),Le=(0,xe.Z)(Kt,2),We=Le[0],De=Le[1],qe=ae.useState([]),dt=(0,xe.Z)(qe,2),Mt=dt[0],wt=dt[1],rn=ae.useState(null),un=(0,xe.Z)(rn,2),zn=un[0],Fn=un[1],tn=ae.useRef(ut);tn.current=ut;function Vn(){var Bn=tn.current;Jr(Bn),De(Bn),wt([]),Fn(null),xa()}(0,pe.Z)(function(){_r(Pt);var Bn=St(Bi,Pt);if(Bn.key!==null)if(Bn.add){var An=zi.findIndex(function(ur){var Br=ur.key;return Br===Bn.key}),Nn=Ut(At(zi,ut,Bn.key),yr,hr,or),$n=zi.slice();$n.splice(An+1,0,Zt),De($n),wt(Nn),Fn("show")}else{var lr=ut.findIndex(function(ur){var Br=ur.key;return Br===Bn.key}),gr=Ut(At(ut,zi,Bn.key),yr,hr,or),Tr=ut.slice();Tr.splice(lr+1,0,Zt),De(Tr),wt(gr),Fn("hide")}else zi!==ut&&(Jr(ut),De(ut))},[Pt,ut]),ae.useEffect(function(){Jn||Vn()},[Jn]);var tr=Tn?We:ut,dr={expandedKeys:Pt,selectedKeys:Vt,loadedKeys:$t,loadingKeys:Jt,checkedKeys:on,halfCheckedKeys:xn,dragOverNodeKey:mr,dropPosition:Rr,keyEntities:Qn};return ae.createElement(ae.Fragment,null,di&&mi&&ae.createElement("span",{style:Tt,"aria-live":"assertive"},Yt(mi)),ae.createElement("div",null,ae.createElement("input",{style:Tt,disabled:ti===!1||rr,tabIndex:ti!==!1?Pi:null,onKeyDown:vo,onFocus:Co,onBlur:To,value:"",onChange:bt,"aria-label":"for screen reader"})),ae.createElement("div",{className:"".concat(Ot,"-treenode"),"aria-hidden":!0,style:{position:"absolute",pointerEvents:"none",visibility:"hidden",height:0,overflow:"hidden",border:0,padding:0}},ae.createElement("div",{className:"".concat(Ot,"-indent")},ae.createElement("div",{ref:ro,className:"".concat(Ot,"-indent-unit")}))),ae.createElement(Se.Z,(0,He.Z)({},_i,{data:tr,itemKey:Ft,height:hr,fullHeight:!1,virtual:yr,itemHeight:or,prefixCls:"".concat(Ot,"-list"),ref:ko,onVisibleChange:function(An,Nn){var $n=new Set(An),lr=Nn.filter(function(gr){return!$n.has(gr)});lr.some(function(gr){return Ft(gr)===Et})&&Vn()}}),function(Bn){var An=Bn.pos,Nn=(0,He.Z)({},(ve(Bn.data),Bn.data)),$n=Bn.title,lr=Bn.key,gr=Bn.isStart,Tr=Bn.isEnd,ur=(0,Ve.km)(lr,An);delete Nn.key,delete Nn.children;var Br=(0,Ve.H8)(ur,dr);return ae.createElement(st,(0,He.Z)({},Nn,Br,{title:$n,active:!!mi&&lr===mi.key,pos:An,data:Bn.data,isStart:gr,isEnd:Tr,motion:Tn,motionNodes:lr===Et?Mt:null,motionType:zn,onMotionStart:ma,onMotionEnd:Vn,treeNodeRequiredProps:dr,onMouseMove:function(){xo(null)}}))}))});dn.displayName="NodeList";var Dn=dn,Rn=Be(35654),Zn=Be(90782),ln=Be(67841),Gn=10,Wn=function(ft){(0,Re.Z)(Ot,ft);var Bt=(0,Ie.Z)(Ot);function Ot(){var ut;(0,Oe.Z)(this,Ot);for(var It=arguments.length,nn=new Array(It),Pt=0;Pt2&&arguments[2]!==void 0?arguments[2]:!1,xn=ut.state,Qn=xn.dragChildrenKeys,rr=xn.dropPosition,Jn=xn.dropTargetKey,mr=xn.dropTargetPos,Rr=xn.dropAllowed;if(Rr){var Tn=ut.props.onDrop;if(ut.setState({dragOverNodeKey:null}),ut.cleanDragState(),Jn!==null){var hr=(0,ke.Z)((0,ke.Z)({},(0,Ve.H8)(Jn,ut.getTreeNodeRequiredProps())),{},{active:(($t=ut.getActiveItem())===null||$t===void 0?void 0:$t.key)===Jn,data:(0,ln.Z)(ut.state.keyEntities,Jn).node}),or=Qn.indexOf(Jn)!==-1;(0,ie.ZP)(!or,"Can not drop to dragNode's children node. This is a bug of rc-tree. Please report an issue.");var yr=(0,Rn.yx)(mr),ti={event:Vt,node:(0,Ve.F)(hr),dragNode:ut.dragNode?(0,Ve.F)(ut.dragNode.props):null,dragNodesKeys:[ut.dragNode.props.eventKey].concat(Qn),dropToGap:rr!==0,dropPosition:rr+Number(yr[yr.length-1])};Jt||Tn==null||Tn(ti),ut.dragNode=null}}},ut.cleanDragState=function(){var Vt=ut.state.draggingNodeKey;Vt!==null&&ut.setState({draggingNodeKey:null,dropPosition:null,dropContainerKey:null,dropTargetKey:null,dropLevelOffset:null,dropAllowed:!0,dragOverNodeKey:null}),ut.dragStartMousePosition=null,ut.currentMouseOverDroppableNodeKey=null},ut.triggerExpandActionExpand=function(Vt,on){var $t=ut.state,Jt=$t.expandedKeys,xn=$t.flattenNodes,Qn=on.expanded,rr=on.key,Jn=on.isLeaf;if(!(Jn||Vt.shiftKey||Vt.metaKey||Vt.ctrlKey)){var mr=xn.filter(function(Tn){return Tn.key===rr})[0],Rr=(0,Ve.F)((0,ke.Z)((0,ke.Z)({},(0,Ve.H8)(rr,ut.getTreeNodeRequiredProps())),{},{data:mr.data}));ut.setExpandedKeys(Qn?(0,Rn._5)(Jt,rr):(0,Rn.L0)(Jt,rr)),ut.onNodeExpand(Vt,Rr)}},ut.onNodeClick=function(Vt,on){var $t=ut.props,Jt=$t.onClick,xn=$t.expandAction;xn==="click"&&ut.triggerExpandActionExpand(Vt,on),Jt==null||Jt(Vt,on)},ut.onNodeDoubleClick=function(Vt,on){var $t=ut.props,Jt=$t.onDoubleClick,xn=$t.expandAction;xn==="doubleClick"&&ut.triggerExpandActionExpand(Vt,on),Jt==null||Jt(Vt,on)},ut.onNodeSelect=function(Vt,on){var $t=ut.state.selectedKeys,Jt=ut.state,xn=Jt.keyEntities,Qn=Jt.fieldNames,rr=ut.props,Jn=rr.onSelect,mr=rr.multiple,Rr=on.selected,Tn=on[Qn.key],hr=!Rr;hr?mr?$t=(0,Rn.L0)($t,Tn):$t=[Tn]:$t=(0,Rn._5)($t,Tn);var or=$t.map(function(yr){var ti=(0,ln.Z)(xn,yr);return ti?ti.node:null}).filter(function(yr){return yr});ut.setUncontrolledState({selectedKeys:$t}),Jn==null||Jn($t,{event:"select",selected:hr,node:on,selectedNodes:or,nativeEvent:Vt.nativeEvent})},ut.onNodeCheck=function(Vt,on,$t){var Jt=ut.state,xn=Jt.keyEntities,Qn=Jt.checkedKeys,rr=Jt.halfCheckedKeys,Jn=ut.props,mr=Jn.checkStrictly,Rr=Jn.onCheck,Tn=on.key,hr,or={event:"check",node:on,checked:$t,nativeEvent:Vt.nativeEvent};if(mr){var yr=$t?(0,Rn.L0)(Qn,Tn):(0,Rn._5)(Qn,Tn),ti=(0,Rn._5)(rr,Tn);hr={checked:yr,halfChecked:ti},or.checkedNodes=yr.map(function(To){return(0,ln.Z)(xn,To)}).filter(function(To){return To}).map(function(To){return To.node}),ut.setUncontrolledState({checkedKeys:yr})}else{var mi=(0,Zn.S)([].concat((0,Ze.Z)(Qn),[Tn]),!0,xn),di=mi.checkedKeys,Pi=mi.halfCheckedKeys;if(!$t){var vo=new Set(di);vo.delete(Tn);var Co=(0,Zn.S)(Array.from(vo),{checked:!1,halfCheckedKeys:Pi},xn);di=Co.checkedKeys,Pi=Co.halfCheckedKeys}hr=di,or.checkedNodes=[],or.checkedNodesPositions=[],or.halfCheckedKeys=Pi,di.forEach(function(To){var xo=(0,ln.Z)(xn,To);if(xo){var ma=xo.node,xa=xo.pos;or.checkedNodes.push(ma),or.checkedNodesPositions.push({node:ma,pos:xa})}}),ut.setUncontrolledState({checkedKeys:di},!1,{halfCheckedKeys:Pi})}Rr==null||Rr(hr,or)},ut.onNodeLoad=function(Vt){var on=Vt.key,$t=new Promise(function(Jt,xn){ut.setState(function(Qn){var rr=Qn.loadedKeys,Jn=rr===void 0?[]:rr,mr=Qn.loadingKeys,Rr=mr===void 0?[]:mr,Tn=ut.props,hr=Tn.loadData,or=Tn.onLoad;if(!hr||Jn.indexOf(on)!==-1||Rr.indexOf(on)!==-1)return null;var yr=hr(Vt);return yr.then(function(){var ti=ut.state.loadedKeys,mi=(0,Rn.L0)(ti,on);or==null||or(mi,{event:"load",node:Vt}),ut.setUncontrolledState({loadedKeys:mi}),ut.setState(function(di){return{loadingKeys:(0,Rn._5)(di.loadingKeys,on)}}),Jt()}).catch(function(ti){if(ut.setState(function(di){return{loadingKeys:(0,Rn._5)(di.loadingKeys,on)}}),ut.loadingRetryTimes[on]=(ut.loadingRetryTimes[on]||0)+1,ut.loadingRetryTimes[on]>=Gn){var mi=ut.state.loadedKeys;(0,ie.ZP)(!1,"Retry for `loadData` many times but still failed. No more retry."),ut.setUncontrolledState({loadedKeys:(0,Rn.L0)(mi,on)}),Jt()}xn(ti)}),{loadingKeys:(0,Rn.L0)(Rr,on)}})});return $t.catch(function(){}),$t},ut.onNodeMouseEnter=function(Vt,on){var $t=ut.props.onMouseEnter;$t==null||$t({event:Vt,node:on})},ut.onNodeMouseLeave=function(Vt,on){var $t=ut.props.onMouseLeave;$t==null||$t({event:Vt,node:on})},ut.onNodeContextMenu=function(Vt,on){var $t=ut.props.onRightClick;$t&&(Vt.preventDefault(),$t({event:Vt,node:on}))},ut.onFocus=function(){var Vt=ut.props.onFocus;ut.setState({focused:!0});for(var on=arguments.length,$t=new Array(on),Jt=0;Jt1&&arguments[1]!==void 0?arguments[1]:!1,$t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:null;if(!ut.destroyed){var Jt=!1,xn=!0,Qn={};Object.keys(Vt).forEach(function(rr){if(rr in ut.props){xn=!1;return}Jt=!0,Qn[rr]=Vt[rr]}),Jt&&(!on||xn)&&ut.setState((0,ke.Z)((0,ke.Z)({},Qn),$t))}},ut.scrollTo=function(Vt){ut.listRef.current.scrollTo(Vt)},ut}return(0,we.Z)(Ot,[{key:"componentDidMount",value:function(){this.destroyed=!1,this.onUpdated()}},{key:"componentDidUpdate",value:function(){this.onUpdated()}},{key:"onUpdated",value:function(){var It=this.props.activeKey;It!==void 0&&It!==this.state.activeKey&&(this.setState({activeKey:It}),It!==null&&this.scrollTo({key:It}))}},{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 It,nn=this.state,Pt=nn.focused,Vt=nn.flattenNodes,on=nn.keyEntities,$t=nn.draggingNodeKey,Jt=nn.activeKey,xn=nn.dropLevelOffset,Qn=nn.dropContainerKey,rr=nn.dropTargetKey,Jn=nn.dropPosition,mr=nn.dragOverNodeKey,Rr=nn.indent,Tn=this.props,hr=Tn.prefixCls,or=Tn.className,yr=Tn.style,ti=Tn.showLine,mi=Tn.focusable,di=Tn.tabIndex,Pi=di===void 0?0:di,vo=Tn.selectable,Co=Tn.showIcon,To=Tn.icon,xo=Tn.switcherIcon,ma=Tn.draggable,xa=Tn.checkable,_i=Tn.checkStrictly,ko=Tn.disabled,ro=Tn.motion,Rt=Tn.loadData,Kr=Tn.filterTreeNode,Bi=Tn.height,_r=Tn.itemHeight,pi=Tn.virtual,ii=Tn.titleRender,zi=Tn.dropIndicatorRender,Jr=Tn.onContextMenu,Kt=Tn.onScroll,Le=Tn.direction,We=Tn.rootClassName,De=Tn.rootStyle,qe=(0,ye.Z)(this.props,{aria:!0,data:!0}),dt;return ma&&((0,Ge.Z)(ma)==="object"?dt=ma:typeof ma=="function"?dt={nodeDraggable:ma}:dt={}),ae.createElement(fe.k.Provider,{value:{prefixCls:hr,selectable:vo,showIcon:Co,icon:To,switcherIcon:xo,draggable:dt,draggingNodeKey:$t,checkable:xa,checkStrictly:_i,disabled:ko,keyEntities:on,dropLevelOffset:xn,dropContainerKey:Qn,dropTargetKey:rr,dropPosition:Jn,dragOverNodeKey:mr,indent:Rr,direction:Le,dropIndicatorRender:zi,loadData:Rt,filterTreeNode:Kr,titleRender:ii,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}},ae.createElement("div",{role:"tree",className:Pe()(hr,or,We,(It={},(0,et.Z)(It,"".concat(hr,"-show-line"),ti),(0,et.Z)(It,"".concat(hr,"-focused"),Pt),(0,et.Z)(It,"".concat(hr,"-active-focused"),Jt!==null),It)),style:De},ae.createElement(Dn,(0,He.Z)({ref:this.listRef,prefixCls:hr,style:yr,data:Vt,disabled:ko,selectable:vo,checkable:!!xa,motion:ro,dragging:$t!==null,height:Bi,itemHeight:_r,virtual:pi,focusable:mi,focused:Pt,tabIndex:Pi,activeItem:this.getActiveItem(),onFocus:this.onFocus,onBlur:this.onBlur,onKeyDown:this.onKeyDown,onActiveChange:this.onActiveChange,onListChangeStart:this.onListChangeStart,onListChangeEnd:this.onListChangeEnd,onContextMenu:Jr,onScroll:Kt},this.getTreeNodeRequiredProps(),qe))))}}],[{key:"getDerivedStateFromProps",value:function(It,nn){var Pt=nn.prevProps,Vt={prevProps:It};function on(mi){return!Pt&&mi in It||Pt&&Pt[mi]!==It[mi]}var $t,Jt=nn.fieldNames;if(on("fieldNames")&&(Jt=(0,Ve.w$)(It.fieldNames),Vt.fieldNames=Jt),on("treeData")?$t=It.treeData:on("children")&&((0,ie.ZP)(!1,"`children` of Tree is deprecated. Please use `treeData` instead."),$t=(0,Ve.zn)(It.children)),$t){Vt.treeData=$t;var xn=(0,Ve.I8)($t,{fieldNames:Jt});Vt.keyEntities=(0,ke.Z)((0,et.Z)({},Et,Nt),xn.keyEntities)}var Qn=Vt.keyEntities||nn.keyEntities;if(on("expandedKeys")||Pt&&on("autoExpandParent"))Vt.expandedKeys=It.autoExpandParent||!Pt&&It.defaultExpandParent?(0,Rn.r7)(It.expandedKeys,Qn):It.expandedKeys;else if(!Pt&&It.defaultExpandAll){var rr=(0,ke.Z)({},Qn);delete rr[Et],Vt.expandedKeys=Object.keys(rr).map(function(mi){return rr[mi].key})}else!Pt&&It.defaultExpandedKeys&&(Vt.expandedKeys=It.autoExpandParent||It.defaultExpandParent?(0,Rn.r7)(It.defaultExpandedKeys,Qn):It.defaultExpandedKeys);if(Vt.expandedKeys||delete Vt.expandedKeys,$t||Vt.expandedKeys){var Jn=(0,Ve.oH)($t||nn.treeData,Vt.expandedKeys||nn.expandedKeys,Jt);Vt.flattenNodes=Jn}if(It.selectable&&(on("selectedKeys")?Vt.selectedKeys=(0,Rn.BT)(It.selectedKeys,It):!Pt&&It.defaultSelectedKeys&&(Vt.selectedKeys=(0,Rn.BT)(It.defaultSelectedKeys,It))),It.checkable){var mr;if(on("checkedKeys")?mr=(0,Rn.E6)(It.checkedKeys)||{}:!Pt&&It.defaultCheckedKeys?mr=(0,Rn.E6)(It.defaultCheckedKeys)||{}:$t&&(mr=(0,Rn.E6)(It.checkedKeys)||{checkedKeys:nn.checkedKeys,halfCheckedKeys:nn.halfCheckedKeys}),mr){var Rr=mr,Tn=Rr.checkedKeys,hr=Tn===void 0?[]:Tn,or=Rr.halfCheckedKeys,yr=or===void 0?[]:or;if(!It.checkStrictly){var ti=(0,Zn.S)(hr,!0,Qn);hr=ti.checkedKeys,yr=ti.halfCheckedKeys}Vt.checkedKeys=hr,Vt.halfCheckedKeys=yr}}return on("loadedKeys")&&(Vt.loadedKeys=It.loadedKeys),Vt}}]),Ot}(ae.Component);Wn.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:de,allowDrop:function(){return!0},expandAction:!1},Wn.TreeNode=ze.Z;var qt=Wn,xt=qt},35654:function(sn,an,Be){"use strict";Be.d(an,{BT:function(){return ae},E6:function(){return ve},L0:function(){return Ie},OM:function(){return ie},_5:function(){return Re},r7:function(){return xe},wA:function(){return Pe},yx:function(){return be}});var He=Be(26407),et=Be(39559),Ge=Be(48736),ke=Be(59301),Ze=Be(39417),Oe=Be(67841),we=Be(71430),Te=null;function Re(he,pe){if(!he)return[];var Se=he.slice(),Ne=Se.indexOf(pe);return Ne>=0&&Se.splice(Ne,1),Se}function Ie(he,pe){var Se=(he||[]).slice();return Se.indexOf(pe)===-1&&Se.push(pe),Se}function be(he){return he.split("-")}function Pe(he,pe){var Se=[],Ne=(0,Oe.Z)(pe,he);function ze(){var Ke=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[];Ke.forEach(function(Ve){var Je=Ve.key,tt=Ve.children;Se.push(Je),ze(tt)})}return ze(Ne.children),Se}function je(he){if(he.parent){var pe=be(he.pos);return Number(pe[pe.length-1])===he.parent.children.length-1}return!1}function ye(he){var pe=be(he.pos);return Number(pe[pe.length-1])===0}function ie(he,pe,Se,Ne,ze,Ke,Ve,Je,tt,gt){var st,St=he.clientX,At=he.clientY,vt=he.target.getBoundingClientRect(),Tt=vt.top,bt=vt.height,Et=(gt==="rtl"?-1:1)*(((ze==null?void 0:ze.x)||0)-St),lt=(Et-12)/Ne,Nt=(0,Oe.Z)(Je,Se.props.eventKey);if(At-1.5?Ke({dragNode:Gn,dropNode:Wn,dropPosition:1})?Rn=1:qt=!1:Ke({dragNode:Gn,dropNode:Wn,dropPosition:0})?Rn=0:Ke({dragNode:Gn,dropNode:Wn,dropPosition:1})?Rn=1:qt=!1:Ke({dragNode:Gn,dropNode:Wn,dropPosition:1})?Rn=1:qt=!1,{dropPosition:Rn,dropLevelOffset:Zn,dropTargetKey:Nt.key,dropTargetPos:Nt.pos,dragOverNodeKey:Dn,dropContainerKey:Rn===0?null:((st=Nt.parent)===null||st===void 0?void 0:st.key)||null,dropAllowed:qt}}function ae(he,pe){if(he){var Se=pe.multiple;return Se?he.slice():he.length?[he[0]]:he}}var fe=function(pe){return pe};function de(he,pe){if(!he)return[];var Se=pe||{},Ne=Se.processProps,ze=Ne===void 0?fe:Ne,Ke=Array.isArray(he)?he:[he];return Ke.map(function(Ve){var Je=Ve.children,tt=_objectWithoutProperties(Ve,Te),gt=de(Je,pe);return React.createElement(TreeNode,_extends({key:tt.key},ze(tt)),gt)})}function ve(he){if(!he)return null;var pe;if(Array.isArray(he))pe={checkedKeys:he,halfCheckedKeys:void 0};else if((0,et.Z)(he)==="object")pe={checkedKeys:he.checked||void 0,halfCheckedKeys:he.halfChecked||void 0};else return(0,Ge.ZP)(!1,"`checkedKeys` is not an array or an object"),null;return pe}function xe(he,pe){var Se=new Set;function Ne(ze){if(!Se.has(ze)){var Ke=(0,Oe.Z)(pe,ze);if(Ke){Se.add(ze);var Ve=Ke.parent,Je=Ke.node;Je.disabled||Ve&&Ne(Ve.key)}}}return(he||[]).forEach(function(ze){Ne(ze)}),(0,He.Z)(Se)}},90782:function(sn,an,Be){"use strict";Be.d(an,{S:function(){return we}});var He=Be(48736),et=Be(67841);function Ge(Te,Re){var Ie=new Set;return Te.forEach(function(be){Re.has(be)||Ie.add(be)}),Ie}function ke(Te){var Re=Te||{},Ie=Re.disabled,be=Re.disableCheckbox,Pe=Re.checkable;return!!(Ie||be)||Pe===!1}function Ze(Te,Re,Ie,be){for(var Pe=new Set(Te),je=new Set,ye=0;ye<=Ie;ye+=1){var ie=Re.get(ye)||new Set;ie.forEach(function(ve){var xe=ve.key,he=ve.node,pe=ve.children,Se=pe===void 0?[]:pe;Pe.has(xe)&&!be(he)&&Se.filter(function(Ne){return!be(Ne.node)}).forEach(function(Ne){Pe.add(Ne.key)})})}for(var ae=new Set,fe=Ie;fe>=0;fe-=1){var de=Re.get(fe)||new Set;de.forEach(function(ve){var xe=ve.parent,he=ve.node;if(!(be(he)||!ve.parent||ae.has(ve.parent.key))){if(be(ve.parent.node)){ae.add(xe.key);return}var pe=!0,Se=!1;(xe.children||[]).filter(function(Ne){return!be(Ne.node)}).forEach(function(Ne){var ze=Ne.key,Ke=Pe.has(ze);pe&&!Ke&&(pe=!1),!Se&&(Ke||je.has(ze))&&(Se=!0)}),pe&&Pe.add(xe.key),Se&&je.add(xe.key),ae.add(xe.key)}})}return{checkedKeys:Array.from(Pe),halfCheckedKeys:Array.from(Ge(je,Pe))}}function Oe(Te,Re,Ie,be,Pe){for(var je=new Set(Te),ye=new Set(Re),ie=0;ie<=be;ie+=1){var ae=Ie.get(ie)||new Set;ae.forEach(function(xe){var he=xe.key,pe=xe.node,Se=xe.children,Ne=Se===void 0?[]:Se;!je.has(he)&&!ye.has(he)&&!Pe(pe)&&Ne.filter(function(ze){return!Pe(ze.node)}).forEach(function(ze){je.delete(ze.key)})})}ye=new Set;for(var fe=new Set,de=be;de>=0;de-=1){var ve=Ie.get(de)||new Set;ve.forEach(function(xe){var he=xe.parent,pe=xe.node;if(!(Pe(pe)||!xe.parent||fe.has(xe.parent.key))){if(Pe(xe.parent.node)){fe.add(he.key);return}var Se=!0,Ne=!1;(he.children||[]).filter(function(ze){return!Pe(ze.node)}).forEach(function(ze){var Ke=ze.key,Ve=je.has(Ke);Se&&!Ve&&(Se=!1),!Ne&&(Ve||ye.has(Ke))&&(Ne=!0)}),Se||je.delete(he.key),Ne&&ye.add(he.key),fe.add(he.key)}})}return{checkedKeys:Array.from(je),halfCheckedKeys:Array.from(Ge(ye,je))}}function we(Te,Re,Ie,be){var Pe=[],je;be?je=be:je=ke;var ye=new Set(Te.filter(function(de){var ve=!!(0,et.Z)(Ie,de);return ve||Pe.push(de),ve})),ie=new Map,ae=0;Object.keys(Ie).forEach(function(de){var ve=Ie[de],xe=ve.level,he=ie.get(xe);he||(he=new Set,ie.set(xe,he)),he.add(ve),ae=Math.max(ae,xe)}),(0,He.ZP)(!Pe.length,"Tree missing follow keys: ".concat(Pe.slice(0,100).map(function(de){return"'".concat(de,"'")}).join(", ")));var fe;return Re===!0?fe=Ze(ye,ie,ae,je):fe=Oe(ye,Re.halfCheckedKeys,ie,ae,je),fe}},67841:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return He}});function He(et,Ge){return et[Ge]}},71430:function(sn,an,Be){"use strict";Be.d(an,{F:function(){return xe},H8:function(){return ve},I8:function(){return de},km:function(){return Pe},oH:function(){return ae},w$:function(){return je},zn:function(){return ie}});var He=Be(39559),et=Be(26407),Ge=Be(33708),ke=Be(37061),Ze=Be(11592),Oe=Be(2738),we=Be(48736),Te=Be(67841),Re=["children"];function Ie(he,pe){return"".concat(he,"-").concat(pe)}function be(he){return he&&he.type&&he.type.isTreeNode}function Pe(he,pe){return he!=null?he:pe}function je(he){var pe=he||{},Se=pe.title,Ne=pe._title,ze=pe.key,Ke=pe.children,Ve=Se||"title";return{title:Ve,_title:Ne||[Ve],key:ze||"key",children:Ke||"children"}}function ye(he,pe){var Se=new Map;function Ne(ze){var Ke=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"";(ze||[]).forEach(function(Ve){var Je=Ve[pe.key],tt=Ve[pe.children];warning(Je!=null,"Tree node must have a certain key: [".concat(Ke).concat(Je,"]"));var gt=String(Je);warning(!Se.has(gt)||Je===null||Je===void 0,"Same 'key' exist in the Tree: ".concat(gt)),Se.set(gt,!0),Ne(tt,"".concat(Ke).concat(gt," > "))})}Ne(he)}function ie(he){function pe(Se){var Ne=(0,Ze.Z)(Se);return Ne.map(function(ze){if(!be(ze))return(0,we.ZP)(!ze,"Tree/TreeNode can only accept TreeNode as children."),null;var Ke=ze.key,Ve=ze.props,Je=Ve.children,tt=(0,ke.Z)(Ve,Re),gt=(0,Ge.Z)({key:Ke},tt),st=pe(Je);return st.length&&(gt.children=st),gt}).filter(function(ze){return ze})}return pe(he)}function ae(he,pe,Se){var Ne=je(Se),ze=Ne._title,Ke=Ne.key,Ve=Ne.children,Je=new Set(pe===!0?[]:pe),tt=[];function gt(st){var St=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;return st.map(function(At,vt){for(var Tt=Ie(St?St.pos:"0",vt),bt=Pe(At[Ke],Tt),Et,lt=0;lt1&&arguments[1]!==void 0?arguments[1]:{},Se=pe.initWrapper,Ne=pe.processEntity,ze=pe.onProcessFinished,Ke=pe.externalGetKey,Ve=pe.childrenPropName,Je=pe.fieldNames,tt=arguments.length>2?arguments[2]:void 0,gt=Ke||tt,st={},St={},At={posEntities:st,keyEntities:St};return Se&&(At=Se(At)||At),fe(he,function(vt){var Tt=vt.node,bt=vt.index,Et=vt.pos,lt=vt.key,Nt=vt.parentPos,Zt=vt.level,Ut=vt.nodes,Ft={node:Tt,nodes:Ut,index:bt,key:lt,pos:Et,level:Zt},Yt=Pe(lt,Et);st[Et]=Ft,St[Yt]=Ft,Ft.parent=st[Nt],Ft.parent&&(Ft.parent.children=Ft.parent.children||[],Ft.parent.children.push(Ft)),Ne&&Ne(Ft,At)},{externalGetKey:gt,childrenPropName:Ve,fieldNames:Je}),ze&&ze(At),At}function ve(he,pe){var Se=pe.expandedKeys,Ne=pe.selectedKeys,ze=pe.loadedKeys,Ke=pe.loadingKeys,Ve=pe.checkedKeys,Je=pe.halfCheckedKeys,tt=pe.dragOverNodeKey,gt=pe.dropPosition,st=pe.keyEntities,St=(0,Te.Z)(st,he),At={eventKey:he,expanded:Se.indexOf(he)!==-1,selected:Ne.indexOf(he)!==-1,loaded:ze.indexOf(he)!==-1,loading:Ke.indexOf(he)!==-1,checked:Ve.indexOf(he)!==-1,halfChecked:Je.indexOf(he)!==-1,pos:String(St?St.pos:""),dragOver:tt===he&>===0,dragOverGapTop:tt===he&>===-1,dragOverGapBottom:tt===he&>===1};return At}function xe(he){var pe=he.data,Se=he.expanded,Ne=he.selected,ze=he.checked,Ke=he.loaded,Ve=he.loading,Je=he.halfChecked,tt=he.dragOver,gt=he.dragOverGapTop,st=he.dragOverGapBottom,St=he.pos,At=he.active,vt=he.eventKey,Tt=(0,Ge.Z)((0,Ge.Z)({},pe),{},{expanded:Se,selected:Ne,checked:ze,loaded:Ke,loading:Ve,halfChecked:Je,dragOver:tt,dragOverGapTop:gt,dragOverGapBottom:st,pos:St,active:At,key:vt});return"props"in Tt||Object.defineProperty(Tt,"props",{get:function(){return(0,we.ZP)(!1,"Second param return from event is node data instead of TreeNode instance. Please read value directly instead of reading from `props`."),he}}),Tt}},8224:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return et}});var He=Be(4676);function et(Ge,ke,Ze,Oe){var we=He.unstable_batchedUpdates?function(Re){He.unstable_batchedUpdates(Ze,Re)}:Ze;return Ge!=null&&Ge.addEventListener&&Ge.addEventListener(ke,we,Oe),{remove:function(){Ge!=null&&Ge.removeEventListener&&Ge.removeEventListener(ke,we,Oe)}}}},55468:function(sn,an,Be){"use strict";Be.d(an,{g1:function(){return be},os:function(){return je}});var He=/margin|padding|width|height|max|min|offset/,et={left:!0,top:!0},Ge={cssFloat:1,styleFloat:1,float:1};function ke(ye){return ye.nodeType===1?ye.ownerDocument.defaultView.getComputedStyle(ye,null):{}}function Ze(ye,ie,ae){if(ie=ie.toLowerCase(),ae==="auto"){if(ie==="height")return ye.offsetHeight;if(ie==="width")return ye.offsetWidth}return ie in et||(et[ie]=He.test(ie)),et[ie]?parseFloat(ae)||0:ae}function Oe(ye,ie){var ae=arguments.length,fe=ke(ye);return ie=Ge[ie]?"cssFloat"in ye.style?"cssFloat":"styleFloat":ie,ae===1?fe:Ze(ye,ie,fe[ie]||ye.style[ie])}function we(ye,ie,ae){var fe=arguments.length;if(ie=Ge[ie]?"cssFloat"in ye.style?"cssFloat":"styleFloat":ie,fe===3)return typeof ae=="number"&&He.test(ie)&&(ae="".concat(ae,"px")),ye.style[ie]=ae,ae;for(var de in ie)ie.hasOwnProperty(de)&&we(ye,de,ie[de]);return ke(ye)}function Te(ye){return ye===document.body?document.documentElement.clientWidth:ye.offsetWidth}function Re(ye){return ye===document.body?window.innerHeight||document.documentElement.clientHeight:ye.offsetHeight}function Ie(){var ye=Math.max(document.documentElement.scrollWidth,document.body.scrollWidth),ie=Math.max(document.documentElement.scrollHeight,document.body.scrollHeight);return{width:ye,height:ie}}function be(){var ye=document.documentElement.clientWidth,ie=window.innerHeight||document.documentElement.clientHeight;return{width:ye,height:ie}}function Pe(){return{scrollLeft:Math.max(document.documentElement.scrollLeft,document.body.scrollLeft),scrollTop:Math.max(document.documentElement.scrollTop,document.body.scrollTop)}}function je(ye){var ie=ye.getBoundingClientRect(),ae=document.documentElement;return{left:ie.left+(window.pageXOffset||ae.scrollLeft)-(ae.clientLeft||document.body.clientLeft||0),top:ie.top+(window.pageYOffset||ae.scrollTop)-(ae.clientTop||document.body.clientTop||0)}}},24514:function(sn,an,Be){"use strict";Be.d(an,{G:function(){return ke}});var He=Be(47273),et=function(Oe){if((0,He.Z)()&&window.document.documentElement){var we=Array.isArray(Oe)?Oe:[Oe],Te=window.document.documentElement;return we.some(function(Re){return Re in Te.style})}return!1},Ge=function(Oe,we){if(!et(Oe))return!1;var Te=document.createElement("div"),Re=Te.style[Oe];return Te.style[Oe]=we,Te.style[Oe]!==Re};function ke(Ze,Oe){return!Array.isArray(Ze)&&Oe!==void 0?Ge(Ze,Oe):et(Ze)}},4409:function(sn,an,Be){"use strict";Be.d(an,{Z:function(){return qt}});var He=Be(92413),et=Be(39559),Ge=Be(33708),ke=Be(400),Ze=Be(33606),Oe=Be(37061),we=Be(92310),Te=Be.n(we),Re=Be(29301),Ie=Be(70425),be=Be(34280),Pe=Be(59301),je=Be(4676),ye=Pe.forwardRef(function(xt,ft){var Bt=xt.height,Ot=xt.offsetY,ut=xt.offsetX,It=xt.children,nn=xt.prefixCls,Pt=xt.onInnerResize,Vt=xt.innerProps,on=xt.rtl,$t=xt.extra,Jt={},xn={display:"flex",flexDirection:"column"};return Ot!==void 0&&(Jt={height:Bt,position:"relative",overflow:"hidden"},xn=(0,Ge.Z)((0,Ge.Z)({},xn),{},(0,ke.Z)((0,ke.Z)((0,ke.Z)((0,ke.Z)((0,ke.Z)({transform:"translateY(".concat(Ot,"px)")},on?"marginRight":"marginLeft",-ut),"position","absolute"),"left",0),"right",0),"top",0))),Pe.createElement("div",{style:Jt},Pe.createElement(Re.Z,{onResize:function(rr){var Jn=rr.offsetHeight;Jn&&Pt&&Pt()}},Pe.createElement("div",(0,He.Z)({style:xn,className:Te()((0,ke.Z)({},"".concat(nn,"-holder-inner"),nn)),ref:ft},Vt),It,$t)))});ye.displayName="Filler";var ie=ye;function ae(xt){var ft=xt.children,Bt=xt.setRef,Ot=Pe.useCallback(function(ut){Bt(ut)},[]);return Pe.cloneElement(ft,{ref:Ot})}function fe(xt,ft,Bt,Ot,ut,It,nn,Pt){var Vt=Pt.getKey;return xt.slice(ft,Bt+1).map(function(on,$t){var Jt=ft+$t,xn=nn(on,Jt,{style:{width:Ot},offsetX:ut}),Qn=Vt(on);return Pe.createElement(ae,{key:Qn,setRef:function(Jn){return It(on,Jn)}},xn)})}function de(xt,ft,Bt,Ot){var ut=Bt-xt,It=ft-Bt,nn=Math.min(ut,It)*2;if(Ot<=nn){var Pt=Math.floor(Ot/2);return Ot%2?Bt+Pt+1:Bt-Pt}return ut>It?Bt-(Ot-It):Bt+(Ot-ut)}function ve(xt,ft,Bt){var Ot=xt.length,ut=ft.length,It,nn;if(Ot===0&&ut===0)return null;Ot2&&arguments[2]!==void 0?arguments[2]:!1,Jt=Vt?on<0&&Pt.current.left||on>0&&Pt.current.right:on<0&&Pt.current.top||on>0&&Pt.current.bottom;return $t&&Jt?(clearTimeout(It.current),ut.current=!1):(!Jt||ut.current)&&nn(),!ut.current&&Jt}};function ze(xt,ft,Bt,Ot,ut,It,nn){var Pt=(0,Pe.useRef)(0),Vt=(0,Pe.useRef)(null),on=(0,Pe.useRef)(null),$t=(0,Pe.useRef)(!1),Jt=Ne(ft,Bt,Ot,ut);function xn(Tn,hr){if(he.Z.cancel(Vt.current),!Jt(!1,hr)){var or=Tn;if(!or._virtualHandled)or._virtualHandled=!0;else return;Pt.current+=hr,on.current=hr,Se||or.preventDefault(),Vt.current=(0,he.Z)(function(){var yr=$t.current?10:1;nn(Pt.current*yr,!1),Pt.current=0})}}function Qn(Tn,hr){nn(hr,!0),Se||Tn.preventDefault()}var rr=(0,Pe.useRef)(null),Jn=(0,Pe.useRef)(null);function mr(Tn){if(xt){he.Z.cancel(Jn.current),Jn.current=(0,he.Z)(function(){rr.current=null},2);var hr=Tn.deltaX,or=Tn.deltaY,yr=Tn.shiftKey,ti=hr,mi=or;(rr.current==="sx"||!rr.current&&yr&&or&&!hr)&&(ti=or,mi=0,rr.current="sx");var di=Math.abs(ti),Pi=Math.abs(mi);rr.current===null&&(rr.current=It&&di>Pi?"x":"y"),rr.current==="y"?xn(Tn,mi):Qn(Tn,ti)}}function Rr(Tn){xt&&($t.current=Tn.detail===on.current)}return[mr,Rr]}function Ke(xt,ft,Bt,Ot){var ut=Pe.useMemo(function(){return[new Map,[]]},[xt,Bt.id,Ot]),It=(0,Ze.Z)(ut,2),nn=It[0],Pt=It[1],Vt=function($t){var Jt=arguments.length>1&&arguments[1]!==void 0?arguments[1]:$t,xn=nn.get($t),Qn=nn.get(Jt);if(xn===void 0||Qn===void 0)for(var rr=xt.length,Jn=Pt.length;Jn0&&arguments[0]!==void 0?arguments[0]:!1;$t();var rr=function(){var Rr=!1;Pt.current.forEach(function(Tn,hr){if(Tn&&Tn.offsetParent){var or=(0,Ve.ZP)(Tn),yr=or.offsetHeight,ti=getComputedStyle(or),mi=ti.marginTop,di=ti.marginBottom,Pi=St(mi),vo=St(di),Co=yr+Pi+vo;Vt.current.get(hr)!==Co&&(Vt.current.set(hr,Co),Rr=!0)}}),Rr&&nn(function(Tn){return Tn+1})};if(Qn)rr();else{on.current+=1;var Jn=on.current;Promise.resolve().then(function(){Jn===on.current&&rr()})}}function xn(Qn,rr){var Jn=xt(Qn),mr=Pt.current.get(Jn);rr?(Pt.current.set(Jn,rr),Jt()):Pt.current.delete(Jn),!mr!=!rr&&(rr?ft==null||ft(Qn):Bt==null||Bt(Qn))}return(0,Pe.useEffect)(function(){return $t},[]),[xn,Jt,Vt.current,It]}var vt=14/15;function Tt(xt,ft,Bt){var Ot=(0,Pe.useRef)(!1),ut=(0,Pe.useRef)(0),It=(0,Pe.useRef)(0),nn=(0,Pe.useRef)(null),Pt=(0,Pe.useRef)(null),Vt,on=function(Qn){if(Ot.current){var rr=Math.ceil(Qn.touches[0].pageX),Jn=Math.ceil(Qn.touches[0].pageY),mr=ut.current-rr,Rr=It.current-Jn,Tn=Math.abs(mr)>Math.abs(Rr);Tn?ut.current=rr:It.current=Jn;var hr=Bt(Tn,Tn?mr:Rr,!1,Qn);hr&&Qn.preventDefault(),clearInterval(Pt.current),hr&&(Pt.current=setInterval(function(){Tn?mr*=vt:Rr*=vt;var or=Math.floor(Tn?mr:Rr);(!Bt(Tn,or,!0)||Math.abs(or)<=.1)&&clearInterval(Pt.current)},16))}},$t=function(){Ot.current=!1,Vt()},Jt=function(Qn){Vt(),Qn.touches.length===1&&!Ot.current&&(Ot.current=!0,ut.current=Math.ceil(Qn.touches[0].pageX),It.current=Math.ceil(Qn.touches[0].pageY),nn.current=Qn.target,nn.current.addEventListener("touchmove",on,{passive:!1}),nn.current.addEventListener("touchend",$t,{passive:!0}))};Vt=function(){nn.current&&(nn.current.removeEventListener("touchmove",on),nn.current.removeEventListener("touchend",$t))},(0,be.Z)(function(){return xt&&ft.current.addEventListener("touchstart",Jt,{passive:!0}),function(){var xn;(xn=ft.current)===null||xn===void 0||xn.removeEventListener("touchstart",Jt),Vt(),clearInterval(Pt.current)}},[xt])}function bt(xt){return Math.floor(Math.pow(xt,.5))}function Et(xt,ft){var Bt="touches"in xt?xt.touches[0]:xt;return Bt[ft?"pageX":"pageY"]-window[ft?"scrollX":"scrollY"]}function lt(xt,ft,Bt){Pe.useEffect(function(){var Ot=ft.current;if(xt&&Ot){var ut=!1,It,nn,Pt=function(){he.Z.cancel(It)},Vt=function xn(){Pt(),It=(0,he.Z)(function(){Bt(nn),xn()})},on=function(Qn){if(!Qn.target.draggable){var rr=Qn;rr._virtualHandled||(rr._virtualHandled=!0,ut=!0)}},$t=function(){ut=!1,Pt()},Jt=function(Qn){if(ut){var rr=Et(Qn,!1),Jn=Ot.getBoundingClientRect(),mr=Jn.top,Rr=Jn.bottom;if(rr<=mr){var Tn=mr-rr;nn=-bt(Tn),Vt()}else if(rr>=Rr){var hr=rr-Rr;nn=bt(hr),Vt()}else Pt()}};return Ot.addEventListener("mousedown",on),Ot.ownerDocument.addEventListener("mouseup",$t),Ot.ownerDocument.addEventListener("mousemove",Jt),function(){Ot.removeEventListener("mousedown",on),Ot.ownerDocument.removeEventListener("mouseup",$t),Ot.ownerDocument.removeEventListener("mousemove",Jt),Pt()}}},[xt])}var Nt=10;function Zt(xt,ft,Bt,Ot,ut,It,nn,Pt){var Vt=Pe.useRef(),on=Pe.useState(null),$t=(0,Ze.Z)(on,2),Jt=$t[0],xn=$t[1];return(0,be.Z)(function(){if(Jt&&Jt.times=0;ma-=1){var xa=ut(ft[ma]),_i=Bt.get(xa);if(_i===void 0){Tn=!0;break}if(xo-=_i,xo<=0)break}switch(yr){case"top":or=mi-mr;break;case"bottom":or=di-Rr+mr;break;default:{var ko=xt.current.scrollTop,ro=ko+Rr;miro&&(hr="bottom")}}or!==null&&nn(or),or!==Jt.lastTop&&(Tn=!0)}Tn&&xn((0,Ge.Z)((0,Ge.Z)({},Jt),{},{times:Jt.times+1,targetAlign:hr,lastTop:or}))}},[Jt,xt.current]),function(Qn){if(Qn==null){Pt();return}if(he.Z.cancel(Vt.current),typeof Qn=="number")nn(Qn);else if(Qn&&(0,et.Z)(Qn)==="object"){var rr,Jn=Qn.align;"index"in Qn?rr=Qn.index:rr=ft.findIndex(function(Tn){return ut(Tn)===Qn.key});var mr=Qn.offset,Rr=mr===void 0?0:mr;xn({times:0,index:rr,offset:Rr,originAlign:Jn})}}}var Ut=Pe.forwardRef(function(xt,ft){var Bt=xt.prefixCls,Ot=xt.rtl,ut=xt.scrollOffset,It=xt.scrollRange,nn=xt.onStartMove,Pt=xt.onStopMove,Vt=xt.onScroll,on=xt.horizontal,$t=xt.spinSize,Jt=xt.containerSize,xn=xt.style,Qn=xt.thumbStyle,rr=xt.showScrollBar,Jn=Pe.useState(!1),mr=(0,Ze.Z)(Jn,2),Rr=mr[0],Tn=mr[1],hr=Pe.useState(null),or=(0,Ze.Z)(hr,2),yr=or[0],ti=or[1],mi=Pe.useState(null),di=(0,Ze.Z)(mi,2),Pi=di[0],vo=di[1],Co=!Ot,To=Pe.useRef(),xo=Pe.useRef(),ma=Pe.useState(rr),xa=(0,Ze.Z)(ma,2),_i=xa[0],ko=xa[1],ro=Pe.useRef(),Rt=function(){rr===!0||rr===!1||(clearTimeout(ro.current),ko(!0),ro.current=setTimeout(function(){ko(!1)},3e3))},Kr=It-Jt||0,Bi=Jt-$t||0,_r=Pe.useMemo(function(){if(ut===0||Kr===0)return 0;var qe=ut/Kr;return qe*Bi},[ut,Kr,Bi]),pi=function(dt){dt.stopPropagation(),dt.preventDefault()},ii=Pe.useRef({top:_r,dragging:Rr,pageY:yr,startTop:Pi});ii.current={top:_r,dragging:Rr,pageY:yr,startTop:Pi};var zi=function(dt){Tn(!0),ti(Et(dt,on)),vo(ii.current.top),nn(),dt.stopPropagation(),dt.preventDefault()};Pe.useEffect(function(){var qe=function(rn){rn.preventDefault()},dt=To.current,Mt=xo.current;return dt.addEventListener("touchstart",qe,{passive:!1}),Mt.addEventListener("touchstart",zi,{passive:!1}),function(){dt.removeEventListener("touchstart",qe),Mt.removeEventListener("touchstart",zi)}},[]);var Jr=Pe.useRef();Jr.current=Kr;var Kt=Pe.useRef();Kt.current=Bi,Pe.useEffect(function(){if(Rr){var qe,dt=function(rn){var un=ii.current,zn=un.dragging,Fn=un.pageY,tn=un.startTop;he.Z.cancel(qe);var Vn=To.current.getBoundingClientRect(),tr=Jt/(on?Vn.width:Vn.height);if(zn){var dr=(Et(rn,on)-Fn)*tr,Bn=tn;!Co&&on?Bn-=dr:Bn+=dr;var An=Jr.current,Nn=Kt.current,$n=Nn?Bn/Nn:0,lr=Math.ceil($n*An);lr=Math.max(lr,0),lr=Math.min(lr,An),qe=(0,he.Z)(function(){Vt(lr,on)})}},Mt=function(){Tn(!1),Pt()};return window.addEventListener("mousemove",dt,{passive:!0}),window.addEventListener("touchmove",dt,{passive:!0}),window.addEventListener("mouseup",Mt,{passive:!0}),window.addEventListener("touchend",Mt,{passive:!0}),function(){window.removeEventListener("mousemove",dt),window.removeEventListener("touchmove",dt),window.removeEventListener("mouseup",Mt),window.removeEventListener("touchend",Mt),he.Z.cancel(qe)}}},[Rr]),Pe.useEffect(function(){return Rt(),function(){clearTimeout(ro.current)}},[ut]),Pe.useImperativeHandle(ft,function(){return{delayHidden:Rt}});var Le="".concat(Bt,"-scrollbar"),We={position:"absolute",visibility:_i?null:"hidden"},De={position:"absolute",background:"rgba(0, 0, 0, 0.5)",borderRadius:99,cursor:"pointer",userSelect:"none"};return on?(We.height=8,We.left=0,We.right=0,We.bottom=0,De.height="100%",De.width=$t,Co?De.left=_r:De.right=_r):(We.width=8,We.top=0,We.bottom=0,Co?We.right=0:We.left=0,De.width="100%",De.height=$t,De.top=_r),Pe.createElement("div",{ref:To,className:Te()(Le,(0,ke.Z)((0,ke.Z)((0,ke.Z)({},"".concat(Le,"-horizontal"),on),"".concat(Le,"-vertical"),!on),"".concat(Le,"-visible"),_i)),style:(0,Ge.Z)((0,Ge.Z)({},We),xn),onMouseDown:pi,onMouseMove:Rt},Pe.createElement("div",{ref:xo,className:Te()("".concat(Le,"-thumb"),(0,ke.Z)({},"".concat(Le,"-thumb-moving"),Rr)),style:(0,Ge.Z)((0,Ge.Z)({},De),Qn),onMouseDown:zi}))}),Ft=Ut,Yt=20;function dn(){var xt=arguments.length>0&&arguments[0]!==void 0?arguments[0]:0,ft=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,Bt=xt/ft*xt;return isNaN(Bt)&&(Bt=0),Bt=Math.max(Bt,Yt),Math.floor(Bt)}var Dn=["prefixCls","className","height","itemHeight","fullHeight","style","data","children","itemKey","virtual","direction","scrollWidth","component","onScroll","onVirtualScroll","onVisibleChange","innerProps","extraRender","styles","showScrollBar"],Rn=[],Zn={overflowY:"auto",overflowAnchor:"none"};function ln(xt,ft){var Bt=xt.prefixCls,Ot=Bt===void 0?"rc-virtual-list":Bt,ut=xt.className,It=xt.height,nn=xt.itemHeight,Pt=xt.fullHeight,Vt=Pt===void 0?!0:Pt,on=xt.style,$t=xt.data,Jt=xt.children,xn=xt.itemKey,Qn=xt.virtual,rr=xt.direction,Jn=xt.scrollWidth,mr=xt.component,Rr=mr===void 0?"div":mr,Tn=xt.onScroll,hr=xt.onVirtualScroll,or=xt.onVisibleChange,yr=xt.innerProps,ti=xt.extraRender,mi=xt.styles,di=xt.showScrollBar,Pi=di===void 0?"optional":di,vo=(0,Oe.Z)(xt,Dn),Co=Pe.useCallback(function(ka){return typeof xn=="function"?xn(ka):ka==null?void 0:ka[xn]},[xn]),To=At(Co,null,null),xo=(0,Ze.Z)(To,4),ma=xo[0],xa=xo[1],_i=xo[2],ko=xo[3],ro=!!(Qn!==!1&&It&&nn),Rt=Pe.useMemo(function(){return Object.values(_i.maps).reduce(function(ka,Aa){return ka+Aa},0)},[_i.id,_i.maps]),Kr=ro&&$t&&(Math.max(nn*$t.length,Rt)>It||!!Jn),Bi=rr==="rtl",_r=Te()(Ot,(0,ke.Z)({},"".concat(Ot,"-rtl"),Bi),ut),pi=$t||Rn,ii=(0,Pe.useRef)(),zi=(0,Pe.useRef)(),Jr=(0,Pe.useRef)(),Kt=(0,Pe.useState)(0),Le=(0,Ze.Z)(Kt,2),We=Le[0],De=Le[1],qe=(0,Pe.useState)(0),dt=(0,Ze.Z)(qe,2),Mt=dt[0],wt=dt[1],rn=(0,Pe.useState)(!1),un=(0,Ze.Z)(rn,2),zn=un[0],Fn=un[1],tn=function(){Fn(!0)},Vn=function(){Fn(!1)},tr={getKey:Co};function dr(ka){De(function(Aa){var Sa;typeof ka=="function"?Sa=ka(Aa):Sa=ka;var xs=bo(Sa);return ii.current.scrollTop=xs,xs})}var Bn=(0,Pe.useRef)({start:0,end:pi.length}),An=(0,Pe.useRef)(),Nn=xe(pi,Co),$n=(0,Ze.Z)(Nn,1),lr=$n[0];An.current=lr;var gr=Pe.useMemo(function(){if(!ro)return{scrollHeight:void 0,start:0,end:pi.length-1,offset:void 0};if(!Kr){var ka;return{scrollHeight:((ka=zi.current)===null||ka===void 0?void 0:ka.offsetHeight)||0,start:0,end:pi.length-1,offset:void 0}}for(var Aa=0,Sa,xs,Ls,la=pi.length,na=0;na=We&&Sa===void 0&&(Sa=na,xs=Aa),pl>We+It&&Ls===void 0&&(Ls=na),Aa=pl}return Sa===void 0&&(Sa=0,xs=0,Ls=Math.ceil(It/nn)),Ls===void 0&&(Ls=pi.length-1),Ls=Math.min(Ls+1,pi.length-1),{scrollHeight:Aa,start:Sa,end:Ls,offset:xs}},[Kr,ro,We,pi,ko,It]),Tr=gr.scrollHeight,ur=gr.start,Br=gr.end,jr=gr.offset;Bn.current.start=ur,Bn.current.end=Br,Pe.useLayoutEffect(function(){var ka=_i.getRecord();if(ka.size===1){var Aa=Array.from(ka)[0],Sa=Co(pi[ur]);if(Sa===Aa){var xs=_i.get(Aa),Ls=xs-nn;dr(function(la){return la+Ls})}}_i.resetRecord()},[Tr]);var fr=Pe.useState({width:0,height:It}),qn=(0,Ze.Z)(fr,2),fi=qn[0],ui=qn[1],$i=function(Aa){ui({width:Aa.offsetWidth,height:Aa.offsetHeight})},wr=(0,Pe.useRef)(),oi=(0,Pe.useRef)(),ji=Pe.useMemo(function(){return dn(fi.width,Jn)},[fi.width,Jn]),Yi=Pe.useMemo(function(){return dn(fi.height,Tr)},[fi.height,Tr]),Vi=Tr-It,to=(0,Pe.useRef)(Vi);to.current=Vi;function bo(ka){var Aa=ka;return Number.isNaN(to.current)||(Aa=Math.min(Aa,to.current)),Aa=Math.max(Aa,0),Aa}var Lo=We<=0,Gi=We>=Vi,Fo=Mt<=0,Zr=Mt>=Jn,Pa=Ne(Lo,Gi,Fo,Zr),Xr=function(){return{x:Bi?-Mt:Mt,y:We}},Ma=(0,Pe.useRef)(Xr()),ts=(0,Ie.useEvent)(function(ka){if(hr){var Aa=(0,Ge.Z)((0,Ge.Z)({},Xr()),ka);(Ma.current.x!==Aa.x||Ma.current.y!==Aa.y)&&(hr(Aa),Ma.current=Aa)}});function fa(ka,Aa){var Sa=ka;Aa?((0,je.flushSync)(function(){wt(Sa)}),ts()):dr(Sa)}function ys(ka){var Aa=ka.currentTarget.scrollTop;Aa!==We&&dr(Aa),Tn==null||Tn(ka),ts()}var qa=function(Aa){var Sa=Aa,xs=Jn?Jn-fi.width:0;return Sa=Math.max(Sa,0),Sa=Math.min(Sa,xs),Sa},Go=(0,Ie.useEvent)(function(ka,Aa){Aa?((0,je.flushSync)(function(){wt(function(Sa){var xs=Sa+(Bi?-ka:ka);return qa(xs)})}),ts()):dr(function(Sa){var xs=Sa+ka;return xs})}),li=ze(ro,Lo,Gi,Fo,Zr,!!Jn,Go),Ca=(0,Ze.Z)(li,2),Za=Ca[0],lo=Ca[1];Tt(ro,ii,function(ka,Aa,Sa,xs){var Ls=xs;return Pa(ka,Aa,Sa)?!1:!Ls||!Ls._virtualHandled?(Ls&&(Ls._virtualHandled=!0),Za({preventDefault:function(){},deltaX:ka?Aa:0,deltaY:ka?0:Aa}),!0):!1}),lt(Kr,ii,function(ka){dr(function(Aa){return Aa+ka})}),(0,be.Z)(function(){function ka(Sa){var xs=Lo&&Sa.detail<0,Ls=Gi&&Sa.detail>0;ro&&!xs&&!Ls&&Sa.preventDefault()}var Aa=ii.current;return Aa.addEventListener("wheel",Za,{passive:!1}),Aa.addEventListener("DOMMouseScroll",lo,{passive:!0}),Aa.addEventListener("MozMousePixelScroll",ka,{passive:!1}),function(){Aa.removeEventListener("wheel",Za),Aa.removeEventListener("DOMMouseScroll",lo),Aa.removeEventListener("MozMousePixelScroll",ka)}},[ro,Lo,Gi]),(0,be.Z)(function(){if(Jn){var ka=qa(Mt);wt(ka),ts({x:ka})}},[fi.width,Jn]);var fn=function(){var Aa,Sa;(Aa=wr.current)===null||Aa===void 0||Aa.delayHidden(),(Sa=oi.current)===null||Sa===void 0||Sa.delayHidden()},Yo=Zt(ii,pi,_i,nn,Co,function(){return xa(!0)},dr,fn);Pe.useImperativeHandle(ft,function(){return{nativeElement:Jr.current,getScrollInfo:Xr,scrollTo:function(Aa){function Sa(xs){return xs&&(0,et.Z)(xs)==="object"&&("left"in xs||"top"in xs)}Sa(Aa)?(Aa.left!==void 0&&wt(qa(Aa.left)),Yo(Aa.top)):Yo(Aa)}}}),(0,be.Z)(function(){if(or){var ka=pi.slice(ur,Br+1);or(ka,pi)}},[ur,Br,pi]);var Ms=Ke(pi,Co,_i,nn),_a=ti==null?void 0:ti({start:ur,end:Br,virtual:Kr,offsetX:Mt,offsetY:jr,rtl:Bi,getSize:Ms}),Bs=fe(pi,ur,Br,Jn,Mt,ma,Jt,tr),Vs=null;It&&(Vs=(0,Ge.Z)((0,ke.Z)({},Vt?"height":"maxHeight",It),Zn),ro&&(Vs.overflowY="hidden",Jn&&(Vs.overflowX="hidden"),zn&&(Vs.pointerEvents="none")));var ol={};return Bi&&(ol.dir="rtl"),Pe.createElement("div",(0,He.Z)({ref:Jr,style:(0,Ge.Z)((0,Ge.Z)({},on),{},{position:"relative"}),className:_r},ol,vo),Pe.createElement(Re.Z,{onResize:$i},Pe.createElement(Rr,{className:"".concat(Ot,"-holder"),style:Vs,ref:ii,onScroll:ys,onMouseEnter:fn},Pe.createElement(ie,{prefixCls:Ot,height:Tr,offsetX:Mt,offsetY:jr,scrollWidth:Jn,onInnerResize:xa,ref:zi,innerProps:yr,rtl:Bi,extra:_a},Bs))),Kr&&Tr>It&&Pe.createElement(Ft,{ref:wr,prefixCls:Ot,scrollOffset:We,scrollRange:Tr,rtl:Bi,onScroll:fa,onStartMove:tn,onStopMove:Vn,spinSize:Yi,containerSize:fi.height,style:mi==null?void 0:mi.verticalScrollBar,thumbStyle:mi==null?void 0:mi.verticalScrollBarThumb,showScrollBar:Pi}),Kr&&Jn>fi.width&&Pe.createElement(Ft,{ref:oi,prefixCls:Ot,scrollOffset:Mt,scrollRange:Jn,rtl:Bi,onScroll:fa,onStartMove:tn,onStopMove:Vn,spinSize:ji,containerSize:fi.width,horizontal:!0,style:mi==null?void 0:mi.horizontalScrollBar,thumbStyle:mi==null?void 0:mi.horizontalScrollBarThumb,showScrollBar:Pi}))}var Gn=Pe.forwardRef(ln);Gn.displayName="List";var Wn=Gn,qt=Wn},51581:function(sn,an,Be){"use strict";Object.defineProperty(an,"__esModule",{value:!0});var He=function(){function Pe(je,ye){for(var ie=0;ie=0||Object.prototype.hasOwnProperty.call(Pe,ie)&&(ye[ie]=Pe[ie]);return ye}function Te(Pe,je){if(!(Pe instanceof je))throw new TypeError("Cannot call a class as a function")}function Re(Pe,je){if(!Pe)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return je&&(typeof je=="object"||typeof je=="function")?je:Pe}function Ie(Pe,je){if(typeof je!="function"&&je!==null)throw new TypeError("Super expression must either be null or a function, not "+typeof je);Pe.prototype=Object.create(je&&je.prototype,{constructor:{value:Pe,enumerable:!1,writable:!0,configurable:!0}}),je&&(Object.setPrototypeOf?Object.setPrototypeOf(Pe,je):Pe.__proto__=je)}var be=function(Pe){Ie(je,Pe);function je(ye){Te(this,je);var ie=Re(this,(je.__proto__||Object.getPrototypeOf(je)).call(this,ye));return ie.scrollListener=ie.scrollListener.bind(ie),ie.eventListenerOptions=ie.eventListenerOptions.bind(ie),ie.mousewheelListener=ie.mousewheelListener.bind(ie),ie}return He(je,[{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 ie=this.getParentElement(this.scrollComponent);ie.scrollTop=ie.scrollHeight-this.beforeScrollHeight+this.beforeScrollTop,this.loadMore=!1}this.attachScrollListener()}},{key:"componentWillUnmount",value:function(){this.detachScrollListener(),this.detachMousewheelListener()}},{key:"isPassiveSupported",value:function(){var ie=!1,ae={get passive(){ie=!0}};try{document.addEventListener("test",null,ae),document.removeEventListener("test",null,ae)}catch(fe){}return ie}},{key:"eventListenerOptions",value:function(){var ie=this.props.useCapture;return this.isPassiveSupported()&&(ie={useCapture:this.props.useCapture,passive:!0}),ie}},{key:"setDefaultLoader",value:function(ie){this.defaultLoader=ie}},{key:"detachMousewheelListener",value:function(){var ie=window;this.props.useWindow===!1&&(ie=this.scrollComponent.parentNode),ie.removeEventListener("mousewheel",this.mousewheelListener,this.options?this.options:this.props.useCapture)}},{key:"detachScrollListener",value:function(){var ie=window;this.props.useWindow===!1&&(ie=this.getParentElement(this.scrollComponent)),ie.removeEventListener("scroll",this.scrollListener,this.options?this.options:this.props.useCapture),ie.removeEventListener("resize",this.scrollListener,this.options?this.options:this.props.useCapture)}},{key:"getParentElement",value:function(ie){var ae=this.props.getScrollParent&&this.props.getScrollParent();return ae!=null?ae:ie&&ie.parentNode}},{key:"filterProps",value:function(ie){return ie}},{key:"attachScrollListener",value:function(){var ie=this.getParentElement(this.scrollComponent);if(!(!this.props.hasMore||!ie)){var ae=window;this.props.useWindow===!1&&(ae=ie),ae.addEventListener("mousewheel",this.mousewheelListener,this.options?this.options:this.props.useCapture),ae.addEventListener("scroll",this.scrollListener,this.options?this.options:this.props.useCapture),ae.addEventListener("resize",this.scrollListener,this.options?this.options:this.props.useCapture),this.props.initialLoad&&this.scrollListener()}}},{key:"mousewheelListener",value:function(ie){ie.deltaY===1&&!this.isPassiveSupported()&&ie.preventDefault()}},{key:"scrollListener",value:function(){var ie=this.scrollComponent,ae=window,fe=this.getParentElement(ie),de=void 0;if(this.props.useWindow){var ve=document.documentElement||document.body.parentNode||document.body,xe=ae.pageYOffset!==void 0?ae.pageYOffset:ve.scrollTop;this.props.isReverse?de=xe:de=this.calculateOffset(ie,xe)}else this.props.isReverse?de=fe.scrollTop:de=ie.scrollHeight-fe.scrollTop-fe.clientHeight;de1&&arguments[1]!==void 0?arguments[1]:60,ke=null;return function(){for(var Ze=this,Oe=arguments.length,we=new Array(Oe),Te=0;Tetypeof Re=="object"&&Re!=null&&Re.nodeType===1,et=(Re,Ie)=>(!Ie||Re!=="hidden")&&Re!=="visible"&&Re!=="clip",Ge=(Re,Ie)=>{if(Re.clientHeight{const je=(ye=>{if(!ye.ownerDocument||!ye.ownerDocument.defaultView)return null;try{return ye.ownerDocument.defaultView.frameElement}catch(ie){return null}})(Pe);return!!je&&(je.clientHeightyeIe||ye>Re&&ie=Ie&&ae>=be?ye-Re-Pe:ie>Ie&&aebe?ie-Ie+je:0,Ze=Re=>{const Ie=Re.parentElement;return Ie==null?Re.getRootNode().host||null:Ie},Oe=(Re,Ie)=>{var be,Pe,je,ye;if(typeof document=="undefined")return[];const{scrollMode:ie,block:ae,inline:fe,boundary:de,skipOverflowHiddenElements:ve}=Ie,xe=typeof de=="function"?de:Ut=>Ut!==de;if(!He(Re))throw new TypeError("Invalid target");const he=document.scrollingElement||document.documentElement,pe=[];let Se=Re;for(;He(Se)&&xe(Se);){if(Se=Ze(Se),Se===he){pe.push(Se);break}Se!=null&&Se===document.body&&Ge(Se)&&!Ge(document.documentElement)||Se!=null&&Ge(Se,ve)&&pe.push(Se)}const Ne=(Pe=(be=window.visualViewport)==null?void 0:be.width)!=null?Pe:innerWidth,ze=(ye=(je=window.visualViewport)==null?void 0:je.height)!=null?ye:innerHeight,{scrollX:Ke,scrollY:Ve}=window,{height:Je,width:tt,top:gt,right:st,bottom:St,left:At}=Re.getBoundingClientRect(),{top:vt,right:Tt,bottom:bt,left:Et}=(Ut=>{const Ft=window.getComputedStyle(Ut);return{top:parseFloat(Ft.scrollMarginTop)||0,right:parseFloat(Ft.scrollMarginRight)||0,bottom:parseFloat(Ft.scrollMarginBottom)||0,left:parseFloat(Ft.scrollMarginLeft)||0}})(Re);let lt=ae==="start"||ae==="nearest"?gt-vt:ae==="end"?St+bt:gt+Je/2-vt+bt,Nt=fe==="center"?At+tt/2-Et+Tt:fe==="end"?st+Tt:At-Et;const Zt=[];for(let Ut=0;Ut=0&&At>=0&&St<=ze&&st<=Ne&&(Ft===he&&!Ge(Ft)||gt>=Dn&&St<=Zn&&At>=ln&&st<=Rn))return Zt;const Gn=getComputedStyle(Ft),Wn=parseInt(Gn.borderLeftWidth,10),qt=parseInt(Gn.borderTopWidth,10),xt=parseInt(Gn.borderRightWidth,10),ft=parseInt(Gn.borderBottomWidth,10);let Bt=0,Ot=0;const ut="offsetWidth"in Ft?Ft.offsetWidth-Ft.clientWidth-Wn-xt:0,It="offsetHeight"in Ft?Ft.offsetHeight-Ft.clientHeight-qt-ft:0,nn="offsetWidth"in Ft?Ft.offsetWidth===0?0:dn/Ft.offsetWidth:0,Pt="offsetHeight"in Ft?Ft.offsetHeight===0?0:Yt/Ft.offsetHeight:0;if(he===Ft)Bt=ae==="start"?lt:ae==="end"?lt-ze:ae==="nearest"?ke(Ve,Ve+ze,ze,qt,ft,Ve+lt,Ve+lt+Je,Je):lt-ze/2,Ot=fe==="start"?Nt:fe==="center"?Nt-Ne/2:fe==="end"?Nt-Ne:ke(Ke,Ke+Ne,Ne,Wn,xt,Ke+Nt,Ke+Nt+tt,tt),Bt=Math.max(0,Bt+Ve),Ot=Math.max(0,Ot+Ke);else{Bt=ae==="start"?lt-Dn-qt:ae==="end"?lt-Zn+ft+It:ae==="nearest"?ke(Dn,Zn,Yt,qt,ft+It,lt,lt+Je,Je):lt-(Dn+Yt/2)+It/2,Ot=fe==="start"?Nt-ln-Wn:fe==="center"?Nt-(ln+dn/2)+ut/2:fe==="end"?Nt-Rn+xt+ut:ke(ln,Rn,dn,Wn,xt+ut,Nt,Nt+tt,tt);const{scrollLeft:Vt,scrollTop:on}=Ft;Bt=Pt===0?0:Math.max(0,Math.min(on+Bt/Pt,Ft.scrollHeight-Yt/Pt+It)),Ot=nn===0?0:Math.max(0,Math.min(Vt+Ot/nn,Ft.scrollWidth-dn/nn+ut)),lt+=on-Bt,Nt+=Vt-Ot}Zt.push({el:Ft,top:Bt,left:Ot})}return Zt},we=Re=>Re===!1?{block:"end",inline:"nearest"}:(Ie=>Ie===Object(Ie)&&Object.keys(Ie).length!==0)(Re)?Re:{block:"start",inline:"nearest"};function Te(Re,Ie){if(!Re.isConnected||!(je=>{let ye=je;for(;ye&&ye.parentNode;){if(ye.parentNode===document)return!0;ye=ye.parentNode instanceof ShadowRoot?ye.parentNode.host:ye.parentNode}return!1})(Re))return;const be=(je=>{const ye=window.getComputedStyle(je);return{top:parseFloat(ye.scrollMarginTop)||0,right:parseFloat(ye.scrollMarginRight)||0,bottom:parseFloat(ye.scrollMarginBottom)||0,left:parseFloat(ye.scrollMarginLeft)||0}})(Re);if((je=>typeof je=="object"&&typeof je.behavior=="function")(Ie))return Ie.behavior(Oe(Re,Ie));const Pe=typeof Ie=="boolean"||Ie==null?void 0:Ie.behavior;for(const{el:je,top:ye,left:ie}of Oe(Re,we(Ie))){const ae=ye-be.top+be.bottom,fe=ie-be.left+be.right;je.scroll({top:ae,left:fe,behavior:Pe})}}},80813:function(sn,an,Be){"use strict";Be.d(an,{CR:function(){return fe},Jh:function(){return je},Q_:function(){return gt},XA:function(){return ae},ZT:function(){return et},_T:function(){return ke},ev:function(){return xe},mG:function(){return Pe},pi:function(){return Ge},pr:function(){return ve}});var He=function(lt,Nt){return He=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(Zt,Ut){Zt.__proto__=Ut}||function(Zt,Ut){for(var Ft in Ut)Object.prototype.hasOwnProperty.call(Ut,Ft)&&(Zt[Ft]=Ut[Ft])},He(lt,Nt)};function et(lt,Nt){if(typeof Nt!="function"&&Nt!==null)throw new TypeError("Class extends value "+String(Nt)+" is not a constructor or null");He(lt,Nt);function Zt(){this.constructor=lt}lt.prototype=Nt===null?Object.create(Nt):(Zt.prototype=Nt.prototype,new Zt)}var Ge=function(){return Ge=Object.assign||function(Nt){for(var Zt,Ut=1,Ft=arguments.length;Ut=0;Dn--)(dn=lt[Dn])&&(Yt=(Ft<3?dn(Yt):Ft>3?dn(Nt,Zt,Yt):dn(Nt,Zt))||Yt);return Ft>3&&Yt&&Object.defineProperty(Nt,Zt,Yt),Yt}function Oe(lt,Nt){return function(Zt,Ut){Nt(Zt,Ut,lt)}}function we(lt,Nt,Zt,Ut,Ft,Yt){function dn(Ot){if(Ot!==void 0&&typeof Ot!="function")throw new TypeError("Function expected");return Ot}for(var Dn=Ut.kind,Rn=Dn==="getter"?"get":Dn==="setter"?"set":"value",Zn=!Nt&<?Ut.static?lt:lt.prototype:null,ln=Nt||(Zn?Object.getOwnPropertyDescriptor(Zn,Ut.name):{}),Gn,Wn=!1,qt=Zt.length-1;qt>=0;qt--){var xt={};for(var ft in Ut)xt[ft]=ft==="access"?{}:Ut[ft];for(var ft in Ut.access)xt.access[ft]=Ut.access[ft];xt.addInitializer=function(Ot){if(Wn)throw new TypeError("Cannot add initializers after decoration has completed");Yt.push(dn(Ot||null))};var Bt=(0,Zt[qt])(Dn==="accessor"?{get:ln.get,set:ln.set}:ln[Rn],xt);if(Dn==="accessor"){if(Bt===void 0)continue;if(Bt===null||typeof Bt!="object")throw new TypeError("Object expected");(Gn=dn(Bt.get))&&(ln.get=Gn),(Gn=dn(Bt.set))&&(ln.set=Gn),(Gn=dn(Bt.init))&&Ft.unshift(Gn)}else(Gn=dn(Bt))&&(Dn==="field"?Ft.unshift(Gn):ln[Rn]=Gn)}Zn&&Object.defineProperty(Zn,Ut.name,ln),Wn=!0}function Te(lt,Nt,Zt){for(var Ut=arguments.length>2,Ft=0;Ft0&&Yt[Yt.length-1])&&(Zn[0]===6||Zn[0]===2)){Zt=0;continue}if(Zn[0]===3&&(!Yt||Zn[1]>Yt[0]&&Zn[1]=lt.length&&(lt=void 0),{value:lt&<[Ut++],done:!lt}}};throw new TypeError(Nt?"Object is not iterable.":"Symbol.iterator is not defined.")}function fe(lt,Nt){var Zt=typeof Symbol=="function"&<[Symbol.iterator];if(!Zt)return lt;var Ut=Zt.call(lt),Ft,Yt=[],dn;try{for(;(Nt===void 0||Nt-- >0)&&!(Ft=Ut.next()).done;)Yt.push(Ft.value)}catch(Dn){dn={error:Dn}}finally{try{Ft&&!Ft.done&&(Zt=Ut.return)&&Zt.call(Ut)}finally{if(dn)throw dn.error}}return Yt}function de(){for(var lt=[],Nt=0;Nt1||Rn(qt,ft)})},xt&&(Ft[qt]=xt(Ft[qt])))}function Rn(qt,xt){try{Zn(Ut[qt](xt))}catch(ft){Wn(Yt[0][3],ft)}}function Zn(qt){qt.value instanceof he?Promise.resolve(qt.value.v).then(ln,Gn):Wn(Yt[0][2],qt)}function ln(qt){Rn("next",qt)}function Gn(qt){Rn("throw",qt)}function Wn(qt,xt){qt(xt),Yt.shift(),Yt.length&&Rn(Yt[0][0],Yt[0][1])}}function Se(lt){var Nt,Zt;return Nt={},Ut("next"),Ut("throw",function(Ft){throw Ft}),Ut("return"),Nt[Symbol.iterator]=function(){return this},Nt;function Ut(Ft,Yt){Nt[Ft]=lt[Ft]?function(dn){return(Zt=!Zt)?{value:he(lt[Ft](dn)),done:!1}:Yt?Yt(dn):dn}:Yt}}function Ne(lt){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var Nt=lt[Symbol.asyncIterator],Zt;return Nt?Nt.call(lt):(lt=typeof ae=="function"?ae(lt):lt[Symbol.iterator](),Zt={},Ut("next"),Ut("throw"),Ut("return"),Zt[Symbol.asyncIterator]=function(){return this},Zt);function Ut(Yt){Zt[Yt]=lt[Yt]&&function(dn){return new Promise(function(Dn,Rn){dn=lt[Yt](dn),Ft(Dn,Rn,dn.done,dn.value)})}}function Ft(Yt,dn,Dn,Rn){Promise.resolve(Rn).then(function(Zn){Yt({value:Zn,done:Dn})},dn)}}function ze(lt,Nt){return Object.defineProperty?Object.defineProperty(lt,"raw",{value:Nt}):lt.raw=Nt,lt}var Ke=Object.create?function(lt,Nt){Object.defineProperty(lt,"default",{enumerable:!0,value:Nt})}:function(lt,Nt){lt.default=Nt},Ve=function(lt){return Ve=Object.getOwnPropertyNames||function(Nt){var Zt=[];for(var Ut in Nt)Object.prototype.hasOwnProperty.call(Nt,Ut)&&(Zt[Zt.length]=Ut);return Zt},Ve(lt)};function Je(lt){if(lt&<.__esModule)return lt;var Nt={};if(lt!=null)for(var Zt=Ve(lt),Ut=0;Ut