@moxa/graph 3.0.0-beta.16 → 3.0.0-beta.17
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/index.cjs
CHANGED
|
@@ -328,7 +328,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
328
328
|
* @date 6/27/2025, 8:35:41 AM
|
|
329
329
|
* @author AntVis
|
|
330
330
|
* @docs https://g.antv.antgroup.com/
|
|
331
|
-
*/var SB;function E5e(){if(SB)return Ho;SB=1;var n=so(),e=ao(),t=Fo(),r=zo(),i=oo(),a=g5e(),s=p5e(),o=b5e(),l=x5e(),u=w5e(),c=mW(),h=ly(),f=uy(),d=hr;function v(A){var C=Object.create(null);return A&&Object.keys(A).forEach(function(B){if(B!=="default"){var D=Object.getOwnPropertyDescriptor(A,B);Object.defineProperty(C,B,D.get?D:{enumerable:!0,get:function(){return A[B]}})}}),C.default=A,Object.freeze(C)}var p=v(a),g=v(s),m=v(o),x=v(l),w=v(u),E=v(c),M=function(){function A(C){e(this,A),this.renderingContext=C.renderingContext,this.canvasConfig=C.config}return n(A,[{key:"init",value:function(){var B=this.canvasConfig,D=B.container,z=B.canvas;if(z)this.$canvas=z,D&&z.parentElement!==D&&D.appendChild(z),this.$container=z.parentElement,this.canvasConfig.container=this.$container;else if(D&&(this.$container=d.isString(D)?document.getElementById(D):D,this.$container)){var G=document.createElement("canvas");this.$container.appendChild(G),this.$container.style.position||(this.$container.style.position="relative"),this.$canvas=G}this.context=this.$canvas.getContext("2d"),this.resize(this.canvasConfig.width,this.canvasConfig.height)}},{key:"getContext",value:function(){return this.context}},{key:"getDomElement",value:function(){return this.$canvas}},{key:"getDPR",value:function(){return this.dpr}},{key:"getBoundingClientRect",value:function(){if(this.$canvas.getBoundingClientRect)return this.$canvas.getBoundingClientRect()}},{key:"destroy",value:function(){this.$container&&this.$canvas&&this.$canvas.parentNode&&this.$container.removeChild(this.$canvas)}},{key:"resize",value:function(B,D){var z=this.canvasConfig.devicePixelRatio;this.dpr=z,this.$canvas&&(this.$canvas.width=this.dpr*B,this.$canvas.height=this.dpr*D,i.setDOMSize(this.$canvas,B,D)),this.renderingContext.renderReasons.add(i.RenderReason.CAMERA_CHANGED)}},{key:"applyCursorStyle",value:function(B){this.$container&&this.$container.style&&(this.$container.style.cursor=B)}},{key:"toDataURL",value:function(){var C=f(h().mark(function D(){var z,G,H,W=arguments;return h().wrap(function(ee){for(;;)switch(ee.prev=ee.next){case 0:return z=W.length>0&&W[0]!==void 0?W[0]:{},G=z.type,H=z.encoderOptions,ee.abrupt("return",this.context.canvas.toDataURL(G,H));case 1:case"end":return ee.stop()}},D,this)}));function B(){return C.apply(this,arguments)}return B}()}])}(),S=function(A){function C(){var B;e(this,C);for(var D=arguments.length,z=new Array(D),G=0;G<D;G++)z[G]=arguments[G];return B=t(this,C,[].concat(z)),B.name="canvas-context-register",B}return r(C,A),n(C,[{key:"init",value:function(){this.context.ContextService=M}},{key:"destroy",value:function(){delete this.context.ContextService}}])}(i.AbstractRendererPlugin),T=function(A){function C(B){var D;return e(this,C),D=t(this,C,[B]),D.registerPlugin(new S),D.registerPlugin(new E.Plugin),D.registerPlugin(new p.Plugin),D.registerPlugin(new m.Plugin),D.registerPlugin(new x.Plugin),D.registerPlugin(new g.Plugin),D.registerPlugin(new w.Plugin),D}return r(C,A),n(C)}(i.AbstractRenderer);return Ho.CanvasPathGenerator=p,Ho.CanvasPicker=g,Ho.CanvasRenderer=m,Ho.DomInteraction=x,Ho.HTMLRenderer=w,Ho.ImageLoader=E,Ho.Renderer=T,Ho}var MB;function S5e(){if(MB)return Vu;MB=1;var n=Vu&&Vu.__rest||function(o,l){var u={};for(var c in o)Object.prototype.hasOwnProperty.call(o,c)&&l.indexOf(c)<0&&(u[c]=o[c]);if(o!=null&&typeof Object.getOwnPropertySymbols=="function")for(var h=0,c=Object.getOwnPropertySymbols(o);h<c.length;h++)l.indexOf(c[h])<0&&Object.prototype.propertyIsEnumerable.call(o,c[h])&&(u[c[h]]=o[c[h]]);return u};Object.defineProperty(Vu,"__esModule",{value:!0}),Vu.HTML=void 0;const e=Vi(),t=E5e(),r=hr,i=gy(),a=Ic();class s extends a.BaseNode{constructor(l){super(Object.assign(Object.assign({},l),{style:Object.assign({},s.defaultStyleProps,l.style)})),this.rootPointerEvent=new e.FederatedPointerEvent(null),this.forwardEvents=u=>{const c=this.context.canvas,h=c.context.renderingContext.root.ownerDocument.defaultView;this.normalizeToPointerEvent(u,h).forEach(d=>{const v=this.bootstrapEvent(this.rootPointerEvent,d,h,u);(0,r.set)(c.context.eventService,"mappingTable.pointerupoutside",[]),c.context.eventService.mapEvent(v)})}}get eventService(){return this.context.canvas.context.eventService}get events(){return[i.CommonEvent.CLICK,i.CommonEvent.POINTER_DOWN,i.CommonEvent.POINTER_MOVE,i.CommonEvent.POINTER_UP,i.CommonEvent.POINTER_OVER,i.CommonEvent.POINTER_LEAVE]}getDomElement(){return this.getShape("key").getDomElement()}render(l=this.parsedAttributes,u=this){this.drawKeyShape(l,u),this.drawPortShapes(l,u)}getKeyStyle(l){const u=(0,r.pick)(l,["dx","dy","innerHTML","pointerEvents","cursor"]),{dx:c=0,dy:h=0}=u,f=n(u,["dx","dy"]),[d,v]=this.getSize(l);return Object.assign(Object.assign({x:c,y:h},f),{width:d,height:v})}drawKeyShape(l,u){const c=this.getKeyStyle(l),{x:h,y:f,width:d=0,height:v=0}=c,p=this.upsert("key-container",e.Rect,{x:h,y:f,width:d,height:v,opacity:0},u);return this.upsert("key",e.HTML,c,p)}connectedCallback(){if(!(this.context.canvas.getRenderer("main")instanceof t.Renderer))return;const c=this.getDomElement();this.events.forEach(h=>{c.addEventListener(h,this.forwardEvents)})}attributeChangedCallback(l,u,c){l==="zIndex"&&u!==c&&(this.getDomElement().style.zIndex=c)}destroy(){const l=this.getDomElement();this.events.forEach(u=>{l.removeEventListener(u,this.forwardEvents)}),super.destroy()}normalizeToPointerEvent(l,u){const c=[];if(u.isTouchEvent(l))for(let h=0;h<l.changedTouches.length;h++){const f=l.changedTouches[h];(0,r.isUndefined)(f.button)&&(f.button=0),(0,r.isUndefined)(f.buttons)&&(f.buttons=1),(0,r.isUndefined)(f.isPrimary)&&(f.isPrimary=l.touches.length===1&&l.type==="touchstart"),(0,r.isUndefined)(f.width)&&(f.width=f.radiusX||1),(0,r.isUndefined)(f.height)&&(f.height=f.radiusY||1),(0,r.isUndefined)(f.tiltX)&&(f.tiltX=0),(0,r.isUndefined)(f.tiltY)&&(f.tiltY=0),(0,r.isUndefined)(f.pointerType)&&(f.pointerType="touch"),(0,r.isUndefined)(f.pointerId)&&(f.pointerId=f.identifier||0),(0,r.isUndefined)(f.pressure)&&(f.pressure=f.force||.5),(0,r.isUndefined)(f.twist)&&(f.twist=0),(0,r.isUndefined)(f.tangentialPressure)&&(f.tangentialPressure=0),f.isNormalized=!0,f.type=l.type,c.push(f)}else if(u.isMouseEvent(l)){const h=l;(0,r.isUndefined)(h.isPrimary)&&(h.isPrimary=!0),(0,r.isUndefined)(h.width)&&(h.width=1),(0,r.isUndefined)(h.height)&&(h.height=1),(0,r.isUndefined)(h.tiltX)&&(h.tiltX=0),(0,r.isUndefined)(h.tiltY)&&(h.tiltY=0),(0,r.isUndefined)(h.pointerType)&&(h.pointerType="mouse"),(0,r.isUndefined)(h.pointerId)&&(h.pointerId=1),(0,r.isUndefined)(h.pressure)&&(h.pressure=.5),(0,r.isUndefined)(h.twist)&&(h.twist=0),(0,r.isUndefined)(h.tangentialPressure)&&(h.tangentialPressure=0),h.isNormalized=!0,c.push(h)}else c.push(l);return c}transferMouseData(l,u){l.isTrusted=u.isTrusted,l.srcElement=u.srcElement,l.timeStamp=performance.now(),l.type=u.type,l.altKey=u.altKey,l.metaKey=u.metaKey,l.shiftKey=u.shiftKey,l.ctrlKey=u.ctrlKey,l.button=u.button,l.buttons=u.buttons,l.client.x=u.clientX,l.client.y=u.clientY,l.movement.x=u.movementX,l.movement.y=u.movementY,l.page.x=u.pageX,l.page.y=u.pageY,l.screen.x=u.screenX,l.screen.y=u.screenY,l.relatedTarget=null}bootstrapEvent(l,u,c,h){l.view=c,l.originalEvent=null,l.nativeEvent=h,l.pointerId=u.pointerId,l.width=u.width,l.height=u.height,l.isPrimary=u.isPrimary,l.pointerType=u.pointerType,l.pressure=u.pressure,l.tangentialPressure=u.tangentialPressure,l.tiltX=u.tiltX,l.tiltY=u.tiltY,l.twist=u.twist,this.transferMouseData(l,u);const{x:f,y:d}=this.getViewportXY(u);l.viewport.x=f,l.viewport.y=d;const[v,p]=this.context.canvas.getCanvasByViewport([f,d]);return l.canvas.x=v,l.canvas.y=p,l.global.copyFrom(l.canvas),l.offset.copyFrom(l.canvas),l.isTrusted=h.isTrusted,l.type==="pointerleave"&&(l.type="pointerout"),l}getViewportXY(l){let u,c;const{offsetX:h,offsetY:f,clientX:d,clientY:v}=l;if(!(0,r.isNil)(h)&&!(0,r.isNil)(f))u=h,c=f;else{const p=this.eventService.client2Viewport({x:d,y:v});u=p.x,c=p.y}return{x:u,y:c}}onframe(){super.onframe();const{opacity:l}=this.attributes;this.getDomElement().style.opacity=`${l}`}}return Vu.HTML=s,s.defaultStyleProps={size:[160,80],halo:!1,icon:!1,label:!1,pointerEvents:"auto"},Vu}var Hu={},TB;function M5e(){if(TB)return Hu;TB=1;var n=Hu&&Hu.__rest||function(c,h){var f={};for(var d in c)Object.prototype.hasOwnProperty.call(c,d)&&h.indexOf(d)<0&&(f[d]=c[d]);if(c!=null&&typeof Object.getOwnPropertySymbols=="function")for(var v=0,d=Object.getOwnPropertySymbols(c);v<d.length;v++)h.indexOf(d[v])<0&&Object.prototype.propertyIsEnumerable.call(c,d[v])&&(f[d[v]]=c[d[v]]);return f};Object.defineProperty(Hu,"__esModule",{value:!0}),Hu.Image=void 0;const e=Vi(),t=au(),r=Es(),i=Li(),a=gl(),s=K0(),o=Z0(),l=Ic();class u extends l.BaseNode{constructor(h){super((0,i.mergeOptions)({style:u.defaultStyleProps},h))}getKeyStyle(h){const[f,d]=this.getSize(h),v=super.getKeyStyle(h),{fillOpacity:p,opacity:g=p}=v,m=n(v,["fillOpacity","opacity"]);return Object.assign(Object.assign({opacity:g},m),{width:f,height:d,x:-f/2,y:-d/2})}getBounds(){return this.getShape("key").getBounds()}getHaloStyle(h){if(h.halo===!1)return!1;const f=this.getShape("key").attributes,{fill:d,stroke:v}=f;n(f,["fill","stroke"]);const p=(0,r.subStyleProps)(this.getGraphicStyle(h),"halo"),g=Number(p.lineWidth),[m,x]=(0,a.add)(this.getSize(h),[g,g]),{lineWidth:w}=p,E={fill:"transparent",lineWidth:w/2,width:m-w/2,height:x-w/2,x:-(m-w/2)/2,y:-(x-w/2)/2};return Object.assign(Object.assign({},p),E)}getIconStyle(h){const f=super.getIconStyle(h),[d,v]=this.getSize(h);return f?Object.assign({width:d*t.ICON_SIZE_RATIO,height:v*t.ICON_SIZE_RATIO},f):!1}drawKeyShape(h,f){const d=this.upsert("key",s.Image,this.getKeyStyle(h),f);return(0,o.connectImage)(this),d}drawHaloShape(h,f){this.upsert("halo",e.Rect,this.getHaloStyle(h),f)}update(h){super.update(h),h&&("x"in h||"y"in h||"z"in h)&&(0,o.dispatchPositionChange)(this)}}return Hu.Image=u,u.defaultStyleProps={size:32},Hu}var id={},AB;function T5e(){if(AB)return id;AB=1,Object.defineProperty(id,"__esModule",{value:!0}),id.Rect=void 0;const n=Vi(),e=au(),t=Ic();class r extends t.BaseNode{constructor(a){super(a)}getKeyStyle(a){const[s,o]=this.getSize(a);return Object.assign(Object.assign({},super.getKeyStyle(a)),{width:s,height:o,x:-s/2,y:-o/2})}getIconStyle(a){const s=super.getIconStyle(a),{width:o,height:l}=this.getShape("key").attributes;return s?Object.assign({width:o*e.ICON_SIZE_RATIO,height:l*e.ICON_SIZE_RATIO},s):!1}drawKeyShape(a,s){return this.upsert("key",n.Rect,this.getKeyStyle(a),s)}}return id.Rect=r,id}var ad={},OB;function A5e(){if(OB)return ad;OB=1,Object.defineProperty(ad,"__esModule",{value:!0}),ad.Star=void 0;const n=au(),e=pl(),t=py();class r extends t.Polygon{constructor(a){super(a)}getInnerR(a){return a.innerR||this.getOuterR(a)*3/8}getOuterR(a){return Math.min(...this.getSize(a))/2}getPoints(a){return(0,e.getStarPoints)(this.getOuterR(a),this.getInnerR(a))}getIconStyle(a){const s=super.getIconStyle(a),o=this.getInnerR(a)*2*n.ICON_SIZE_RATIO;return s?Object.assign({width:o,height:o},s):!1}getPortXY(a,s){const{placement:o="top"}=s,l=this.getShape("key").getLocalBounds(),u=(0,e.getStarPorts)(this.getOuterR(a),this.getInnerR(a));return(0,e.getPortXYByPlacement)(l,o,u,!1)}}return ad.Star=r,ad}var sd={},_B;function O5e(){if(_B)return sd;_B=1,Object.defineProperty(sd,"__esModule",{value:!0}),sd.Triangle=void 0;const n=hr,e=au(),t=lo(),r=pl(),i=Es(),a=Li(),s=py();class o extends s.Polygon{constructor(u){super((0,a.mergeOptions)({style:o.defaultStyleProps},u))}getPoints(u){const{direction:c}=u,[h,f]=this.getSize(u);return(0,r.getTrianglePoints)(h,f,c)}getPortXY(u,c){const{direction:h}=u,{placement:f="top"}=c,d=this.getShape("key").getLocalBounds(),[v,p]=this.getSize(u),g=(0,r.getTrianglePorts)(v,p,h);return(0,r.getPortXYByPlacement)(d,f,g,!1)}getIconStyle(u){const{icon:c,iconText:h,iconSrc:f,direction:d}=u;if(c===!1||(0,n.isEmpty)(h||f))return!1;const v=(0,i.subStyleProps)(this.getGraphicStyle(u),"icon"),p=this.getShape("key").getLocalBounds(),[g,m]=(0,t.getTriangleCenter)(p,d),x=(0,t.getIncircleRadius)(p,d)*2*e.ICON_SIZE_RATIO;return Object.assign({x:g,y:m,width:x,height:x},v)}}return sd.Triangle=o,o.defaultStyleProps={size:40,direction:"up"},sd}var kB;function yW(){return kB||(kB=1,function(n){Object.defineProperty(n,"__esModule",{value:!0}),n.Triangle=n.Star=n.Rect=n.Image=n.HTML=n.Hexagon=n.Ellipse=n.Donut=n.Diamond=n.Circle=n.BaseNode=void 0;var e=Ic();Object.defineProperty(n,"BaseNode",{enumerable:!0,get:function(){return e.BaseNode}});var t=pW();Object.defineProperty(n,"Circle",{enumerable:!0,get:function(){return t.Circle}});var r=h5e();Object.defineProperty(n,"Diamond",{enumerable:!0,get:function(){return r.Diamond}});var i=f5e();Object.defineProperty(n,"Donut",{enumerable:!0,get:function(){return i.Donut}});var a=d5e();Object.defineProperty(n,"Ellipse",{enumerable:!0,get:function(){return a.Ellipse}});var s=v5e();Object.defineProperty(n,"Hexagon",{enumerable:!0,get:function(){return s.Hexagon}});var o=S5e();Object.defineProperty(n,"HTML",{enumerable:!0,get:function(){return o.HTML}});var l=M5e();Object.defineProperty(n,"Image",{enumerable:!0,get:function(){return l.Image}});var u=T5e();Object.defineProperty(n,"Rect",{enumerable:!0,get:function(){return u.Rect}});var c=A5e();Object.defineProperty(n,"Star",{enumerable:!0,get:function(){return c.Star}});var h=O5e();Object.defineProperty(n,"Triangle",{enumerable:!0,get:function(){return h.Triangle}})}(nM)),nM}var PB;function gO(){if(PB)return Ru;PB=1;var n=Ru&&Ru.__rest||function(p,g){var m={};for(var x in p)Object.prototype.hasOwnProperty.call(p,x)&&g.indexOf(x)<0&&(m[x]=p[x]);if(p!=null&&typeof Object.getOwnPropertySymbols=="function")for(var w=0,x=Object.getOwnPropertySymbols(p);w<x.length;w++)g.indexOf(x[w])<0&&Object.prototype.propertyIsEnumerable.call(p,x[w])&&(m[x[w]]=p[x[w]]);return m};Object.defineProperty(Ru,"__esModule",{value:!0}),Ru.BaseCombo=void 0;const e=Vi(),t=hr,r=lo(),i=iy(),a=cO(),s=Y0(),o=Es(),l=Qh(),u=Li(),c=gl(),h=yW(),f=K0(),d=Z0();class v extends h.BaseNode{constructor(g){super((0,u.mergeOptions)({style:v.defaultStyleProps},g)),this.type="combo",this.updateComboPosition(this.parsedAttributes)}getKeySize(g){const{collapsed:m,childrenNode:x=[]}=g;return x.length===0?this.getEmptyKeySize(g):m?this.getCollapsedKeySize(g):this.getExpandedKeySize(g)}getEmptyKeySize(g){const{padding:m,collapsedSize:x}=g,[w,E,M,S]=(0,a.parsePadding)(m);return(0,c.add)((0,l.parseSize)(x),[S+E,w+M,0])}getCollapsedKeySize(g){return(0,l.parseSize)(g.collapsedSize)}getExpandedKeySize(g){const m=this.getContentBBox(g);return[(0,r.getBBoxWidth)(m),(0,r.getBBoxHeight)(m),0]}getContentBBox(g){const{childrenNode:m=[],padding:x}=g,w=m.map(M=>this.context.element.getElement(M)).filter(Boolean);if(w.length===0){const M=new e.AABB,{x:S=0,y:T=0,size:A}=g,[C,B]=(0,l.parseSize)(A);return M.setMinMax([S-C/2,T-B/2,0],[S+C/2,T+B/2,0]),M}const E=(0,r.getCombinedBBox)(w.map(M=>M.getBounds()));return x?(0,r.getExpandedBBox)(E,x):E}drawCollapsedMarkerShape(g,m){const x=this.getCollapsedMarkerStyle(g);this.upsert("collapsed-marker",f.Icon,x,m),(0,d.connectImage)(this)}getCollapsedMarkerStyle(g){if(!g.collapsed||!g.collapsedMarker)return!1;const m=(0,o.subStyleProps)(this.getGraphicStyle(g),"collapsedMarker"),{type:x}=m,w=n(m,["type"]),E=this.getShape("key"),[M,S]=(0,s.getXYByPlacement)(E.getLocalBounds(),"center"),T=Object.assign(Object.assign({},w),{x:M,y:S});if(x){const A=this.getCollapsedMarkerText(x,g);Object.assign(T,{text:A})}return T}getCollapsedMarkerText(g,m){const{childrenData:x=[]}=m,{model:w}=this.context;return g==="descendant-count"?w.getDescendantsData(this.id).length.toString():g==="child-count"?x.length.toString():g==="node-count"?w.getDescendantsData(this.id).filter(E=>w.getElementType((0,i.idOf)(E))==="node").length.toString():(0,t.isFunction)(g)?g(x):""}getComboPosition(g){const{x:m=0,y:x=0,collapsed:w,childrenData:E=[]}=g;if(E.length===0)return[+m,+x,0];if(w){const{model:M}=this.context,S=M.getDescendantsData(this.id).filter(T=>!M.isCombo((0,i.idOf)(T)));if(S.length>0&&S.some(s.hasPosition)){const T=S.reduce((A,C)=>(0,c.add)(A,(0,s.positionOf)(C)),[0,0,0]);return(0,c.divide)(T,S.length)}return[+m,+x,0]}return this.getContentBBox(g).center}getComboStyle(g){const[m,x]=this.getComboPosition(g);return{x:m,y:x,transform:[["translate",m,x]]}}updateComboPosition(g){const m=this.getComboStyle(g);Object.assign(this.style,m);const{x,y:w}=m;this.context.model.syncNodeLikeDatum({id:this.id,style:{x,y:w}}),(0,d.dispatchPositionChange)(this)}render(g,m=this){super.render(g,m),this.drawCollapsedMarkerShape(g,m)}update(g={}){super.update(g),this.updateComboPosition(this.parsedAttributes)}onframe(){super.onframe(),this.attributes.collapsed||this.updateComboPosition(this.parsedAttributes),this.drawKeyShape(this.parsedAttributes,this)}animate(g,m){const x=super.animate(this.attributes.collapsed?g:g.map(w=>{var{x:E,y:M,z:S,transform:T}=w,A=n(w,["x","y","z","transform"]);return A}),m);return x&&new Proxy(x,{set:(w,E,M)=>(E==="currentTime"&&Promise.resolve().then(()=>this.onframe()),Reflect.set(w,E,M))})}}return Ru.BaseCombo=v,v.defaultStyleProps={childrenNode:[],droppable:!0,draggable:!0,collapsed:!1,collapsedSize:32,collapsedMarker:!0,collapsedMarkerZIndex:1,collapsedMarkerFontSize:12,collapsedMarkerTextAlign:"center",collapsedMarkerTextBaseline:"middle",collapsedMarkerType:"child-count"},Ru}var od={},CB;function _5e(){if(CB)return od;CB=1,Object.defineProperty(od,"__esModule",{value:!0}),od.CircleCombo=void 0;const n=Vi(),e=lo(),t=$o(),r=Es(),i=Qh(),a=gO();class s extends a.BaseCombo{constructor(l){super(l)}drawKeyShape(l,u){return this.upsert("key",n.Circle,this.getKeyStyle(l),u)}getKeyStyle(l){const{collapsed:u}=l,c=super.getKeyStyle(l),[h]=this.getKeySize(l);return Object.assign(Object.assign(Object.assign({},c),u&&(0,r.subStyleProps)(c,"collapsed")),{r:h/2})}getCollapsedKeySize(l){const[u,c]=(0,i.parseSize)(l.collapsedSize),h=Math.max(u,c)/2;return[h*2,h*2,0]}getExpandedKeySize(l){const u=this.getContentBBox(l),[c,h]=(0,e.getBBoxSize)(u),f=Math.sqrt(Math.pow(c,2)+Math.pow(h,2))/2;return[f*2,f*2,0]}getIntersectPoint(l,u=!1){const c=this.getShape("key").getBounds();return(0,t.getEllipseIntersectPoint)(l,c,u)}}return od.CircleCombo=s,od}var ld={},NB;function k5e(){if(NB)return ld;NB=1,Object.defineProperty(ld,"__esModule",{value:!0}),ld.RectCombo=void 0;const n=Vi(),e=Es(),t=gO();class r extends t.BaseCombo{constructor(a){super(a)}drawKeyShape(a,s){return this.upsert("key",n.Rect,this.getKeyStyle(a),s)}getKeyStyle(a){const s=super.getKeyStyle(a),[o,l]=this.getKeySize(a);return Object.assign(Object.assign(Object.assign({},s),a.collapsed&&(0,e.subStyleProps)(s,"collapsed")),{width:o,height:l,x:-o/2,y:-l/2})}}return ld.RectCombo=r,ld}var RB;function P5e(){return RB||(RB=1,function(n){Object.defineProperty(n,"__esModule",{value:!0}),n.RectCombo=n.CircleCombo=n.BaseCombo=void 0;var e=gO();Object.defineProperty(n,"BaseCombo",{enumerable:!0,get:function(){return e.BaseCombo}});var t=_5e();Object.defineProperty(n,"CircleCombo",{enumerable:!0,get:function(){return t.CircleCombo}});var r=k5e();Object.defineProperty(n,"RectCombo",{enumerable:!0,get:function(){return r.RectCombo}})}(tM)),tM}var hM={},Ga={},Hi={},LB;function C5e(){if(LB)return Hi;LB=1,Object.defineProperty(Hi,"__esModule",{value:!0}),Hi.simple=Hi.triangleRect=Hi.rect=Hi.vee=Hi.diamond=Hi.triangle=Hi.circle=void 0;const n=(o,l)=>{const u=Math.max(o,l)/2;return[["M",-o/2,0],["A",u,u,0,1,0,2*u-o/2,0],["A",u,u,0,1,0,-o/2,0],["Z"]]};Hi.circle=n;const e=(o,l)=>[["M",-o/2,0],["L",o/2,-l/2],["L",o/2,l/2],["Z"]];Hi.triangle=e;const t=(o,l)=>[["M",-o/2,0],["L",0,-l/2],["L",o/2,0],["L",0,l/2],["Z"]];Hi.diamond=t;const r=(o,l)=>[["M",-o/2,0],["L",o/2,-l/2],["L",4*o/5-o/2,0],["L",o/2,l/2],["Z"]];Hi.vee=r;const i=(o,l)=>[["M",-o/2,-l/2],["L",o/2,-l/2],["L",o/2,l/2],["L",-o/2,l/2],["Z"]];Hi.rect=i;const a=(o,l)=>{const u=o/2,c=o/7,h=o-c;return[["M",-u,0],["L",0,-l/2],["L",0,l/2],["Z"],["M",h-u,-l/2],["L",h+c-u,-l/2],["L",h+c-u,l/2],["L",h-u,l/2],["Z"]]};Hi.triangleRect=a;const s=(o,l)=>[["M",o/2,-l/2],["L",-o/2,0],["L",o/2,0],["L",-o/2,0],["L",o/2,l/2]];return Hi.simple=s,Hi}var IB;function J0(){if(IB)return Ga;IB=1;var n=Ga&&Ga.__createBinding||(Object.create?function(m,x,w,E){E===void 0&&(E=w);var M=Object.getOwnPropertyDescriptor(x,w);(!M||("get"in M?!x.__esModule:M.writable||M.configurable))&&(M={enumerable:!0,get:function(){return x[w]}}),Object.defineProperty(m,E,M)}:function(m,x,w,E){E===void 0&&(E=w),m[E]=x[w]}),e=Ga&&Ga.__setModuleDefault||(Object.create?function(m,x){Object.defineProperty(m,"default",{enumerable:!0,value:x})}:function(m,x){m.default=x}),t=Ga&&Ga.__importStar||function(){var m=function(x){return m=Object.getOwnPropertyNames||function(w){var E=[];for(var M in w)Object.prototype.hasOwnProperty.call(w,M)&&(E[E.length]=M);return E},m(x)};return function(x){if(x&&x.__esModule)return x;var w={};if(x!=null)for(var E=m(x),M=0;M<E.length;M++)E[M]!=="default"&&n(w,x,E[M]);return e(w,x),w}}(),r=Ga&&Ga.__rest||function(m,x){var w={};for(var E in m)Object.prototype.hasOwnProperty.call(m,E)&&x.indexOf(E)<0&&(w[E]=m[E]);if(m!=null&&typeof Object.getOwnPropertySymbols=="function")for(var M=0,E=Object.getOwnPropertySymbols(m);M<E.length;M++)x.indexOf(E[M])<0&&Object.prototype.propertyIsEnumerable.call(m,E[M])&&(w[E[M]]=m[E[M]]);return w};Object.defineProperty(Ga,"__esModule",{value:!0}),Ga.BaseEdge=void 0;const i=Vi(),a=hr,s=lo(),o=Q0(),l=pl(),u=Es(),c=Qh(),h=Li(),f=t(C5e()),d=dO(),v=gW(),p=K0();class g extends v.BaseElement{constructor(x){super((0,h.mergeOptions)({style:g.defaultStyleProps},x)),this.type="edge"}get sourceNode(){const{sourceNode:x}=this.parsedAttributes;return this.context.element.getElement(x)}get targetNode(){const{targetNode:x}=this.parsedAttributes;return this.context.element.getElement(x)}getKeyStyle(x){const w=this.getGraphicStyle(x),{loop:E}=w,M=r(w,["loop"]),{sourceNode:S,targetNode:T}=this,C={d:E&&(0,l.isSameNode)(S,T)?this.getLoopPath(x):this.getKeyPath(x)};return i.Path.PARSED_STYLE_LIST.forEach(B=>{B in M&&(C[B]=M[B])}),C}getLoopPath(x){const{sourcePort:w,targetPort:E}=x,M=this.sourceNode,S=(0,s.getNodeBBox)(M),T=Math.max((0,s.getBBoxWidth)(S),(0,s.getBBoxHeight)(S)),{placement:A,clockwise:C,dist:B=T}=(0,u.subStyleProps)(this.getGraphicStyle(x),"loop");return(0,o.getCubicLoopPath)(M,A,C,B,w,E)}getEndpoints(x,w=!0,E=[]){const{sourcePort:M,targetPort:S}=x,{sourceNode:T,targetNode:A}=this,[C,B]=(0,l.findPorts)(T,A,M,S);if(!w){const H=C?(0,l.getPortPosition)(C):T.getCenter(),W=B?(0,l.getPortPosition)(B):A.getCenter();return[H,W]}const D=typeof E=="function"?E():E,z=(0,l.getConnectionPoint)(C||T,D[0]||B||A),G=(0,l.getConnectionPoint)(B||A,D[D.length-1]||C||T);return[z,G]}getHaloStyle(x){if(x.halo===!1)return!1;const w=this.getKeyStyle(x),E=(0,u.subStyleProps)(this.getGraphicStyle(x),"halo");return Object.assign(Object.assign({},w),E)}getLabelStyle(x){if(x.label===!1||!x.labelText)return!1;const w=(0,u.subStyleProps)(this.getGraphicStyle(x),"label"),{placement:E,offsetX:M,offsetY:S,autoRotate:T,maxWidth:A}=w,C=r(w,["placement","offsetX","offsetY","autoRotate","maxWidth"]),B=(0,o.getLabelPositionStyle)(this.shapeMap.key,E,T,M,S),D=this.shapeMap.key.getLocalBounds(),z=(0,d.getWordWrapWidthByEnds)([D.min,D.max],A);return Object.assign({wordWrapWidth:z},B,C)}getBadgeStyle(x){if(x.badge===!1||!x.badgeText)return!1;const w=(0,u.subStyleProps)(x,"badge"),{offsetX:E,offsetY:M,placement:S}=w,T=r(w,["offsetX","offsetY","placement"]);return Object.assign(T,(0,o.getBadgePositionStyle)(this.shapeMap,S,x.labelPlacement,E,M))}drawArrow(x,w){var E;const M=w==="start",T=x[w==="start"?"startArrow":"endArrow"],A=this.shapeMap.key;if(T){const C=this.getArrowStyle(x,M),[B,D,z]=M?["markerStart","markerStartOffset","startArrowOffset"]:["markerEnd","markerEndOffset","endArrowOffset"],G=A.parsedStyle[B];if(G)G.attr(C);else{const H=C.src?i.Image:i.Path,W=new H({style:C});A.style[B]=W}A.style[D]=x[z]||C.width/2+ +C.lineWidth}else{const C=M?"markerStart":"markerEnd";(E=A.style[C])===null||E===void 0||E.destroy(),A.style[C]=null}}getArrowStyle(x,w){const E=this.getShape("key").attributes,M=w?"startArrow":"endArrow",S=(0,u.subStyleProps)(this.getGraphicStyle(x),M),{size:T,type:A}=S,C=r(S,["size","type"]),[B,D]=(0,c.parseSize)((0,o.getArrowSize)(E.lineWidth,T)),G=((0,a.isFunction)(A)?A:f[A]||f.triangle)(B,D);return Object.assign((0,a.pick)(E,["stroke","strokeOpacity","fillOpacity"]),{width:B,height:D},Object.assign({},G&&{d:G,fill:A==="simple"?"":E.stroke}),C)}drawLabelShape(x,w){const E=this.getLabelStyle(x);this.upsert("label",p.Label,E,w)}drawHaloShape(x,w){const E=this.getHaloStyle(x);this.upsert("halo",i.Path,E,w)}drawBadgeShape(x,w){const E=this.getBadgeStyle(x);this.upsert("badge",p.Badge,E,w)}drawSourceArrow(x){this.drawArrow(x,"start")}drawTargetArrow(x){this.drawArrow(x,"end")}drawKeyShape(x,w){const E=this.getKeyStyle(x);return this.upsert("key",i.Path,E,w)}render(x=this.parsedAttributes,w=this){this.drawKeyShape(x,w),this.getShape("key")&&(this.drawSourceArrow(x),this.drawTargetArrow(x),this.drawLabelShape(x,w),this.drawHaloShape(x,w),this.drawBadgeShape(x,w))}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,w){const E=super.animate(x,w);return E&&new Proxy(E,{set:(M,S,T)=>(S==="currentTime"&&Promise.resolve().then(()=>this.onframe()),Reflect.set(M,S,T))})}}return Ga.BaseEdge=g,g.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},Ga}var ud={},DB;function my(){if(DB)return ud;DB=1,Object.defineProperty(ud,"__esModule",{value:!0}),ud.Cubic=void 0;const n=Q0(),e=Li(),t=J0();class r extends t.BaseEdge{constructor(a){super((0,e.mergeOptions)({style:r.defaultStyleProps},a))}getKeyPath(a){const[s,o]=this.getEndpoints(a),{controlPoints:l,curvePosition:u,curveOffset:c}=a,h=this.getControlPoints(s,o,(0,n.parseCurvePosition)(u),(0,n.parseCurveOffset)(c),l);return(0,n.getCubicPath)(s,o,h)}getControlPoints(a,s,o,l,u){return(u==null?void 0:u.length)===2?u:[(0,n.getCurveControlPoint)(a,s,o[0],l[0]),(0,n.getCurveControlPoint)(a,s,o[1],l[1])]}}return ud.Cubic=r,r.defaultStyleProps={curvePosition:.5,curveOffset:20},ud}var cd={},BB;function N5e(){if(BB)return cd;BB=1,Object.defineProperty(cd,"__esModule",{value:!0}),cd.CubicHorizontal=void 0;const n=Li(),e=my();class t extends e.Cubic{constructor(i){super((0,n.mergeOptions)({style:t.defaultStyleProps},i))}getControlPoints(i,a,s,o){const l=a[0]-i[0];return[[i[0]+l*s[0]+o[0],i[1]],[a[0]-l*s[1]+o[1],a[1]]]}}return cd.CubicHorizontal=t,t.defaultStyleProps={curvePosition:[.5,.5],curveOffset:[0,0]},cd}var hd={},FB;function R5e(){if(FB)return hd;FB=1,Object.defineProperty(hd,"__esModule",{value:!0}),hd.CubicRadial=void 0;const n=Y0(),e=Li(),t=gl(),r=my();class i extends r.Cubic{constructor(s){super((0,e.mergeOptions)({style:i.defaultStyleProps},s))}get ref(){return this.context.model.getRootsData()[0]}getEndpoints(s){if(this.sourceNode.id===this.ref.id)return super.getEndpoints(s);const o=(0,n.positionOf)(this.ref),l=this.sourceNode.getIntersectPoint(o,!0),u=this.targetNode.getIntersectPoint(o);return[l,u]}toRadialCoordinate(s){const o=(0,n.positionOf)(this.ref),l=(0,t.distance)(s,o),u=(0,t.rad)((0,t.subtract)(s,o));return[l,u]}getControlPoints(s,o,l,u){const[c,h]=this.toRadialCoordinate(s),[f]=this.toRadialCoordinate(o),d=f-c;return[[s[0]+(d*l[0]+u[0])*Math.cos(h),s[1]+(d*l[0]+u[0])*Math.sin(h)],[o[0]-(d*l[1]-u[0])*Math.cos(h),o[1]-(d*l[1]-u[0])*Math.sin(h)]]}}return hd.CubicRadial=i,i.defaultStyleProps={curvePosition:.5,curveOffset:20},hd}var fd={},zB;function L5e(){if(zB)return fd;zB=1,Object.defineProperty(fd,"__esModule",{value:!0}),fd.CubicVertical=void 0;const n=Li(),e=my();class t extends e.Cubic{constructor(i){super((0,n.mergeOptions)({style:t.defaultStyleProps},i))}getControlPoints(i,a,s,o){const l=a[1]-i[1];return[[i[0],i[1]+l*s[0]+o[0]],[a[0],a[1]-l*s[1]+o[1]]]}}return fd.CubicVertical=t,t.defaultStyleProps={curvePosition:[.5,.5],curveOffset:[0,0]},fd}var dd={},$B;function I5e(){if($B)return dd;$B=1,Object.defineProperty(dd,"__esModule",{value:!0}),dd.Line=void 0;const n=Li(),e=J0();class t extends e.BaseEdge{constructor(i){super((0,n.mergeOptions)({style:t.defaultStyleProps},i))}getKeyPath(i){const[a,s]=this.getEndpoints(i);return[["M",a[0],a[1]],["L",s[0],s[1]]]}}return dd.Line=t,t.defaultStyleProps={},dd}var vd={},us={},GB;function pO(){if(GB)return us;GB=1,Object.defineProperty(us,"__esModule",{value:!0}),us.orth=a,us.getDirection=l,us.getBBoxSize=u,us.pointToPoint=c,us.nodeToPoint=h,us.pointToNode=f,us.nodeToNode=d,us.insideNode=v,us.freeJoin=p;const n=hr,e=lo(),t=$o(),r=gl(),i={padding:10};function a(g,m,x,w,E,M){const{padding:S}=Object.assign(i,M),T=(0,e.getNodeBBox)(x,S),A=(0,e.getNodeBBox)(w,S),C=[g,...E,m];let B=null;const D=[];for(let z=0,G=C.length;z<G-1;z++){const H=z+1,W=C[z],ee=C[H],X=(0,t.isOrthogonal)(W,ee);let Z=null;if(z===0)if(H===G-1)if(T.intersects(A))Z=v(W,ee,T,A);else if(!(0,e.isPointBBoxCenter)(W,T)&&!(0,e.isPointBBoxCenter)(ee,A)){const J=(0,e.getNearestBoundaryPoint)(W,T),q=(0,e.getNearestBoundaryPoint)(ee,A);Z=c(J,q,l(J,q)),Z.points.unshift(J),Z.points.push(q)}else X||(Z=d(W,ee,T,A));else(0,e.isPointInBBox)(ee,T)?Z=v(W,ee,T,(0,e.getNodeBBox)(ee,S),B):X||(Z=h(W,ee,T));else H===G-1?(0,e.isPointInBBox)(W,A)?Z=v(W,ee,(0,e.getNodeBBox)(W,S),A,B):X||(Z=f(W,ee,A,B)):X||(Z=c(W,ee,B));Z?(D.push(...Z.points),B=Z.direction):B=l(W,ee),H<G-1&&D.push(ee)}return D.map(r.toVector2)}const s={N:"S",S:"N",W:"E",E:"W"},o={N:-Math.PI/2,S:Math.PI/2,E:0,W:Math.PI};function l(g,m){const[x,w]=g,[E,M]=m;return x===E?w>M?"N":"S":w===M?x>E?"W":"E":null}function u(g,m){return m==="N"||m==="S"?(0,e.getBBoxHeight)(g):(0,e.getBBoxWidth)(g)}function c(g,m,x){const w=[g[0],m[1]],E=[m[0],g[1]],M=l(g,w),S=l(g,E),T=x?s[x]:null,A=M===x||M!==T&&S!==x?w:E;return{points:[A],direction:l(A,m)}}function h(g,m,x){if((0,e.isPointBBoxCenter)(g,x)){const w=p(g,m,x);return{points:[w],direction:l(w,m)}}else{const w=(0,e.getNearestBoundaryPoint)(g,x),M=["left","right"].includes((0,e.getNearestBoundarySide)(g,x))?[m[0],w[1]]:[w[0],m[1]];return{points:[M],direction:l(M,m)}}}function f(g,m,x,w){const E=(0,e.isPointBBoxCenter)(m,x)?m:(0,e.getNearestBoundaryPoint)(m,x),M=[[E[0],g[1]],[g[0],E[1]]],S=M.filter(A=>(0,e.isPointOutsideBBox)(A,x)&&!(0,e.isPointOnBBoxBoundary)(A,x,!0)),T=S.filter(A=>l(A,g)!==w);if(T.length>0){const A=T.find(C=>l(g,C)===w)||T[0];return{points:[A],direction:l(A,m)}}else{const A=(0,n.difference)(M,S)[0],C=(0,t.moveTo)(m,A,u(x,w)/2);return{points:[p(C,g,x),C],direction:l(C,m)}}}function d(g,m,x,w){let E=h(g,m,x);const M=(0,r.toVector3)(E.points[0]);if((0,e.isPointInBBox)(M,w)){E=h(m,g,w);const S=(0,r.toVector3)(E.points[0]);if((0,e.isPointInBBox)(S,x)){const T=(0,t.moveTo)(g,M,u(x,l(g,M))/2),A=(0,t.moveTo)(m,S,u(w,l(m,S))/2),C=[(T[0]+A[0])/2,(T[1]+A[1])/2],B=h(g,C,x),D=f(C,m,w,B.direction);E.points=[B.points[0],D.points[0]],E.direction=D.direction}}return E}function v(g,m,x,w,E){const S=(0,e.getCombinedBBox)([x,w]),T=(0,r.distance)(m,S.center)>(0,r.distance)(g,S.center),[A,C]=T?[m,g]:[g,m],B=(0,e.getBBoxHeight)(S)+(0,e.getBBoxWidth)(S);let D;if(E){const H=[A[0]+B*Math.cos(o[E]),A[1]+B*Math.sin(o[E])];D=(0,t.moveTo)((0,e.getNearestBoundaryPoint)(H,S),H,.01)}else D=(0,t.moveTo)((0,e.getNearestBoundaryPoint)(A,S),A,-.01);let z=p(D,C,S),G=[(0,t.round)(D,2),(0,t.round)(z,2)];if((0,n.isEqual)((0,t.round)(D),(0,t.round)(z))){const H=(0,r.angle)((0,r.subtract)(D,A),[1,0,0])+Math.PI/2;z=[C[0]+B*Math.cos(H),C[1]+B*Math.sin(H),0],z=(0,t.round)((0,t.moveTo)((0,e.getNearestBoundaryPoint)(z,S),C,-.01),2);const W=p(D,z,S);G=[D,W,z]}return{points:T?G.reverse():G,direction:l(T?D:z,m)}}function p(g,m,x){let w=[g[0],m[1]];return(0,e.isPointInBBox)(w,x)&&(w=[m[0],g[1]]),w}return us}var Ml={},VB;function bW(){if(VB)return Ml;VB=1,Object.defineProperty(Ml,"__esModule",{value:!0}),Ml.SortedArray=void 0,Ml.estimateCost=h,Ml.getNearestPoint=f,Ml.aStarSearch=p;const n=hr,e=lo(),t=Hj(),r=gl(),i={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:r.manhattanDistance},a=m=>`${Math.round(m[0])}|||${Math.round(m[1])}`;function s(m,x){const w=E=>Math.round(E/x);return(0,n.isNumber)(m)?w(m):m.map(w)}function o(m,x){const w=Math.abs(m-x);return w>Math.PI?2*Math.PI-w:w}function l(m,x){const w=x[0]-m[0],E=x[1]-m[1];return!w&&!E?0:Math.atan2(E,w)}function u(m,x,w,E){const M=l(m,x),S=w[a(m)],A=l(S||E,m);return o(A,M)}const c=(m,x)=>{const{offset:w,gridSize:E}=x,M={};return m.forEach(S=>{if(!S||S.destroyed||!S.isVisible())return;const T=(0,e.getExpandedBBox)(S.getRenderBounds(),w);for(let A=s(T.min[0],E);A<=s(T.max[0],E);A+=1)for(let C=s(T.min[1],E);C<=s(T.max[1],E);C+=1)M[`${A}|||${C}`]=!0}),M};function h(m,x,w){return Math.min(...x.map(E=>w(m,E)))}function f(m,x,w){let E=m[0],M=w(m[0],x);for(let S=0;S<m.length;S++){const T=m[S],A=w(T,x);A<M&&(E=T,M=A)}return E}const d=(m,x,w,E)=>{if(!x)return[m];const{directionMap:M,offset:S}=E,T=(0,e.getExpandedBBox)(x.getRenderBounds(),S),A=Object.keys(M).reduce((C,B)=>{if(w.includes(B)){const D=M[B],[z,G]=(0,e.getBBoxSize)(T),H=[m[0]+D.stepX*z,m[1]+D.stepY*G],W=(0,e.getBBoxSegments)(T);for(let ee=0;ee<W.length;ee++){const X=(0,t.getLinesIntersection)([m,H],W[ee]);X&&(0,e.isPointOnBBoxBoundary)(X,T)&&C.push(X)}}return C},[]);return(0,e.isPointInBBox)(m,T)||A.push(m),A.map(C=>s(C,E.gridSize))},v=(m,x,w,E,M,S,T)=>{const A=[];let C=[S[0]===E[0]?E[0]:m[0]*T,S[1]===E[1]?E[1]:m[1]*T];A.unshift(C);let B=m,D=x[a(B)];for(;D;){const H=D,W=B;u(H,W,x,w)&&(C=[H[0]===W[0]?C[0]:H[0]*T,H[1]===W[1]?C[1]:H[1]*T],A.unshift(C)),D=x[a(H)],B=H}const z=M.map(H=>[H[0]*T,H[1]*T]),G=f(z,C,r.manhattanDistance);return A.unshift(G),A};function p(m,x,w,E){const M=(0,r.toVector2)(m.getCenter()),S=(0,r.toVector2)(x.getCenter()),T=Object.assign(i,E),{gridSize:A}=T,C=T.enableObstacleAvoidance?w:[m,x],B=c(C,T),D=s(M,A),z=s(S,A),G=d(M,m,T.startDirections,T),H=d(S,x,T.endDirections,T);G.forEach(ne=>delete B[a(ne)]),H.forEach(ne=>delete B[a(ne)]);const W={},ee={},X={},Z={},J={},q=new g;for(let ne=0;ne<G.length;ne++){const se=G[ne],ue=a(se);W[ue]=se,Z[ue]=0,J[ue]=h(se,H,T.distFunc),q.add({id:ue,value:J[ue]})}const Q=H.map(ne=>a(ne));let oe=T.maximumLoops,fe,ae=1/0;for(const[ne,se]of Object.entries(W))J[ne]<=ae&&(ae=J[ne],fe=se);for(;Object.keys(W).length>0&&oe>0;){const ne=q.minId(!1);if(ne)fe=W[ne];else break;const se=a(fe);if(Q.includes(se))return v(fe,X,D,S,G,z,A);delete W[se],q.remove(se),ee[se]=!0;for(const ue of Object.values(T.directionMap)){const pe=(0,r.add)(fe,[ue.stepX,ue.stepY]),de=a(pe);if(ee[de])continue;const ke=u(fe,pe,X,D);if(ke>T.maxAllowedDirectionChange||B[de])continue;W[de]||(W[de]=pe);const Ae=T.penalties[ke],De=T.distFunc(fe,pe)+(isNaN(Ae)?A:Ae),Ye=Z[se]+De,rt=Z[de];rt&&Ye>=rt||(X[de]=fe,Z[de]=Ye,J[de]=Ye+h(pe,H,T.distFunc),q.add({id:de,value:J[de]}))}oe-=1}return[]}class g{constructor(){this.arr=[],this.map={},this.arr=[],this.map={}}_innerAdd(x,w){let E=0,M=w-1;for(;M-E>1;){const S=Math.floor((E+M)/2);if(this.arr[S].value>x.value)M=S;else if(this.arr[S].value<x.value)E=S;else{this.arr.splice(S,0,x),this.map[x.id]=!0;return}}this.arr.splice(M,0,x),this.map[x.id]=!0}add(x){delete this.map[x.id];const w=this.arr.length;if(!w||this.arr[w-1].value<x.value){this.arr.push(x),this.map[x.id]=!0;return}this._innerAdd(x,w)}remove(x){this.map[x]&&delete this.map[x]}_clearAndGetMinId(){let x;for(let w=this.arr.length-1;w>=0;w--)this.map[this.arr[w].id]?x=this.arr[w].id:this.arr.splice(w,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()}}return Ml.SortedArray=g,Ml}var HB;function D5e(){if(HB)return vd;HB=1,Object.defineProperty(vd,"__esModule",{value:!0}),vd.Polyline=void 0;const n=lo(),e=Q0(),t=Es(),r=pO(),i=bW(),a=Li(),s=J0();class o extends s.BaseEdge{constructor(u){super((0,a.mergeOptions)({style:o.defaultStyleProps},u))}getControlPoints(u){const{router:c}=u,{sourceNode:h,targetNode:f}=this,[d,v]=this.getEndpoints(u,!1);let p=[];if(!c)p=u.controlPoints;else if(c.type==="shortest-path"){const g=this.context.element.getNodes();p=(0,i.aStarSearch)(h,f,g,c),p.length||(p=(0,r.orth)(d,v,h,f,u.controlPoints,{padding:c.offset}))}else c.type==="orth"&&(p=(0,r.orth)(d,v,h,f,u.controlPoints,c));return p}getPoints(u){const c=this.getControlPoints(u),[h,f]=this.getEndpoints(u,!0,c);return[h,...c,f]}getKeyPath(u){const c=this.getPoints(u);return(0,e.getPolylinePath)(c,u.radius)}getLoopPath(u){const{sourcePort:c,targetPort:h,radius:f}=u,d=this.sourceNode,v=(0,n.getNodeBBox)(d),p=Math.max((0,n.getBBoxWidth)(v),(0,n.getBBoxHeight)(v))/4,{placement:g,clockwise:m,dist:x=p}=(0,t.subStyleProps)(this.getGraphicStyle(u),"loop");return(0,e.getPolylineLoopPath)(d,f,g,m,x,c,h)}}return vd.Polyline=o,o.defaultStyleProps={radius:0,controlPoints:[],router:!1},vd}var gd={},qB;function B5e(){if(qB)return gd;qB=1,Object.defineProperty(gd,"__esModule",{value:!0}),gd.Quadratic=void 0;const n=Q0(),e=Li(),t=J0();class r extends t.BaseEdge{constructor(a){super((0,e.mergeOptions)({style:r.defaultStyleProps},a))}getKeyPath(a){const{curvePosition:s,curveOffset:o}=a,[l,u]=this.getEndpoints(a),c=a.controlPoint||(0,n.getCurveControlPoint)(l,u,s,o);return(0,n.getQuadraticPath)(l,u,c)}}return gd.Quadratic=r,r.defaultStyleProps={curvePosition:.5,curveOffset:30},gd}var jB;function F5e(){return jB||(jB=1,function(n){Object.defineProperty(n,"__esModule",{value:!0}),n.Quadratic=n.Polyline=n.Line=n.CubicVertical=n.CubicRadial=n.CubicHorizontal=n.Cubic=n.BaseEdge=void 0;var e=J0();Object.defineProperty(n,"BaseEdge",{enumerable:!0,get:function(){return e.BaseEdge}});var t=my();Object.defineProperty(n,"Cubic",{enumerable:!0,get:function(){return t.Cubic}});var r=N5e();Object.defineProperty(n,"CubicHorizontal",{enumerable:!0,get:function(){return r.CubicHorizontal}});var i=R5e();Object.defineProperty(n,"CubicRadial",{enumerable:!0,get:function(){return i.CubicRadial}});var a=L5e();Object.defineProperty(n,"CubicVertical",{enumerable:!0,get:function(){return a.CubicVertical}});var s=I5e();Object.defineProperty(n,"Line",{enumerable:!0,get:function(){return s.Line}});var o=D5e();Object.defineProperty(n,"Polyline",{enumerable:!0,get:function(){return o.Polyline}});var l=B5e();Object.defineProperty(n,"Quadratic",{enumerable:!0,get:function(){return l.Quadratic}})}(hM)),hM}var WB;function z5e(){return WB||(WB=1,function(n){var e=Nu&&Nu.__createBinding||(Object.create?function(r,i,a,s){s===void 0&&(s=a);var o=Object.getOwnPropertyDescriptor(i,a);(!o||("get"in o?!i.__esModule:o.writable||o.configurable))&&(o={enumerable:!0,get:function(){return i[a]}}),Object.defineProperty(r,s,o)}:function(r,i,a,s){s===void 0&&(s=a),r[s]=i[a]}),t=Nu&&Nu.__exportStar||function(r,i){for(var a in r)a!=="default"&&!Object.prototype.hasOwnProperty.call(i,a)&&e(i,r,a)};Object.defineProperty(n,"__esModule",{value:!0}),t(P5e(),n),t(F5e(),n),t(yW(),n)}(Nu)),Nu}var UB;function pl(){if(UB)return Wn;UB=1;var n=Wn&&Wn.__rest||function(q,Q){var oe={};for(var fe in q)Object.prototype.hasOwnProperty.call(q,fe)&&Q.indexOf(fe)<0&&(oe[fe]=q[fe]);if(q!=null&&typeof Object.getOwnPropertySymbols=="function")for(var ae=0,fe=Object.getOwnPropertySymbols(q);ae<fe.length;ae++)Q.indexOf(fe[ae])<0&&Object.prototype.propertyIsEnumerable.call(q,fe[ae])&&(oe[fe[ae]]=q[fe[ae]]);return oe};Object.defineProperty(Wn,"__esModule",{value:!0}),Wn.isNode=o,Wn.isEdge=l,Wn.isCombo=u,Wn.isElement=c,Wn.isSameNode=h,Wn.getPortXYByPlacement=d,Wn.getAllPorts=v,Wn.isSimplePort=p,Wn.getPortPosition=g,Wn.findPorts=m,Wn.findPort=x,Wn.getConnectionPoint=E,Wn.getPortConnectionPoint=M,Wn.getNodeConnectionPoint=S,Wn.getTextStyleByPlacement=T,Wn.getStarPoints=A,Wn.getStarPorts=C,Wn.getTrianglePoints=B,Wn.getTrianglePorts=D,Wn.getBoundingPoints=z,Wn.getDiamondPoints=G,Wn.isVisible=H,Wn.setAttributes=W,Wn.updateStyle=ee,Wn.getHexagonPoints=X,Wn.markToBeDestroyed=Z,Wn.isToBeDestroyed=J;const e=hr,t=z5e(),r=lo(),i=uO(),a=$o(),s=Y0();function o(q){return q instanceof t.BaseNode&&q.type==="node"}function l(q){return q instanceof t.BaseEdge}function u(q){return q instanceof t.BaseCombo}function c(q){return o(q)||l(q)||u(q)}function h(q,Q){return!q||!Q?!1:q===Q}const f={top:[.5,0],right:[1,.5],bottom:[.5,1],left:[0,.5],"left-top":[0,0],"top-left":[0,0],"left-bottom":[0,1],"bottom-left":[0,1],"right-top":[1,0],"top-right":[1,0],"right-bottom":[1,1],"bottom-right":[1,1],default:[.5,.5]};function d(q,Q,oe=f,fe=!0){const ae=[.5,.5],ne=(0,e.isString)(Q)?(0,e.get)(oe,Q.toLocaleLowerCase(),ae):Q;if(!fe&&(0,e.isString)(Q))return ne;const[se,ue]=ne||ae;return[q.min[0]+(0,r.getBBoxWidth)(q)*se,q.min[1]+(0,r.getBBoxHeight)(q)*ue]}function v(q){if(!q)return{};const Q=q.getPorts();return(q.attributes.ports||[]).forEach((fe,ae)=>{var ne;const{key:se,placement:ue}=fe;p(fe)&&(Q[ne=se||ae]||(Q[ne]=(0,s.getXYByPlacement)(q.getShape("key").getBounds(),ue)))}),Q}function p(q){const{r:Q}=q;return!Q||Number(Q)===0}function g(q){return(0,i.isPoint)(q)?q:q.getPosition()}function m(q,Q,oe,fe){const ae=x(q,Q,oe,fe),ne=x(Q,q,fe,oe);return[ae,ne]}function x(q,Q,oe,fe){const ae=v(q);if(oe)return ae[oe];const ne=Object.values(ae);if(ne.length===0)return;const se=ne.map(de=>g(de)),ue=w(Q,fe),[pe]=(0,a.findNearestPoints)(se,ue);return ne.find(de=>g(de)===pe)}function w(q,Q){const oe=v(q);if(Q)return[g(oe[Q])];const fe=Object.values(oe);return fe.length>0?fe.map(ae=>g(ae)):[q.getCenter()]}function E(q,Q){return u(q)||o(q)?S(q,Q):M(q,Q)}function M(q,Q){if(!q||!Q)return[0,0,0];if((0,i.isPoint)(q))return q;if(q.attributes.linkToCenter)return q.getPosition();const oe=(0,i.isPoint)(Q)?Q:o(Q)?Q.getCenter():Q.getPosition();return(0,a.getEllipseIntersectPoint)(oe,q.getBounds())}function S(q,Q){if(!q||!Q)return[0,0,0];const oe=(0,i.isPoint)(Q)?Q:o(Q)?Q.getCenter():Q.getPosition();return q.getIntersectPoint(oe)||q.getCenter()}function T(q,Q="bottom",oe=0,fe=0,ae=!1){const ne=Q.split("-"),[se,ue]=(0,s.getXYByPlacement)(q,Q),[pe,de]=ae?["bottom","top"]:["top","bottom"],ke=ne.includes("top")?de:ne.includes("bottom")?pe:"middle",Ae=ne.includes("left")?"right":ne.includes("right")?"left":"center";return{transform:[["translate",se+oe,ue+fe]],textBaseline:ke,textAlign:Ae}}function A(q,Q){return[[0,-q],[Q*Math.cos(3*Math.PI/10),-Q*Math.sin(3*Math.PI/10)],[q*Math.cos(Math.PI/10),-q*Math.sin(Math.PI/10)],[Q*Math.cos(Math.PI/10),Q*Math.sin(Math.PI/10)],[q*Math.cos(3*Math.PI/10),q*Math.sin(3*Math.PI/10)],[0,Q],[-q*Math.cos(3*Math.PI/10),q*Math.sin(3*Math.PI/10)],[-Q*Math.cos(Math.PI/10),Q*Math.sin(Math.PI/10)],[-q*Math.cos(Math.PI/10),-q*Math.sin(Math.PI/10)],[-Q*Math.cos(3*Math.PI/10),-Q*Math.sin(3*Math.PI/10)]]}function C(q,Q){const oe={};return oe.top=[0,-q],oe.left=[-q*Math.cos(Math.PI/10),-q*Math.sin(Math.PI/10)],oe["left-bottom"]=[-q*Math.cos(3*Math.PI/10),q*Math.sin(3*Math.PI/10)],oe.bottom=[0,Q],oe["right-bottom"]=[q*Math.cos(3*Math.PI/10),q*Math.sin(3*Math.PI/10)],oe.right=oe.default=[q*Math.cos(Math.PI/10),-q*Math.sin(Math.PI/10)],oe}function B(q,Q,oe){const fe=Q/2,ae=q/2,ne={up:[[-ae,fe],[ae,fe],[0,-fe]],left:[[-ae,0],[ae,fe],[ae,-fe]],right:[[-ae,fe],[-ae,-fe],[ae,0]],down:[[-ae,-fe],[ae,-fe],[0,fe]]};return ne[oe]||ne.up}function D(q,Q,oe){const fe=Q/2,ae=q/2,ne={};return oe==="down"?(ne.bottom=ne.default=[0,fe],ne.right=[ae,-fe],ne.left=[-ae,-fe]):oe==="left"?(ne.top=[ae,-fe],ne.bottom=[ae,fe],ne.left=ne.default=[-ae,0]):oe==="right"?(ne.top=[-ae,-fe],ne.bottom=[-ae,fe],ne.right=ne.default=[ae,0]):(ne.left=[-ae,fe],ne.top=ne.default=[0,-fe],ne.right=[ae,fe]),ne}function z(q,Q){return[[q/2,-Q/2],[q/2,Q/2],[-q/2,Q/2],[-q/2,-Q/2]]}function G(q,Q){return[[0,-Q/2],[q/2,0],[0,Q/2],[-q/2,0]]}function H(q){return(0,e.get)(q,["style","visibility"])!=="hidden"}function W(q,Q){const{zIndex:oe,transform:fe,transformOrigin:ae,visibility:ne,cursor:se,clipPath:ue,component:pe}=Q,de=n(Q,["zIndex","transform","transformOrigin","visibility","cursor","clipPath","component"]);Object.assign(q.attributes,de),fe&&q.setAttribute("transform",fe),(0,e.isNumber)(oe)&&q.setAttribute("zIndex",oe),ae&&q.setAttribute("transformOrigin",ae),ne&&q.setAttribute("visibility",ne),se&&q.setAttribute("cursor",se),ue&&q.setAttribute("clipPath",ue),pe&&q.setAttribute("component",pe)}function ee(q,Q){"update"in q?q.update(Q):q.attr(Q)}function X(q){return[[0,q],[q*Math.sqrt(3)/2,q/2],[q*Math.sqrt(3)/2,-q/2],[0,-q],[-q*Math.sqrt(3)/2,-q/2],[-q*Math.sqrt(3)/2,q/2]]}function Z(q){(0,e.set)(q,"__to_be_destroyed__",!0)}function J(q){return(0,e.get)(q,"__to_be_destroyed__",!1)}return Wn}var YB;function Q0(){return YB||(YB=1,function(n){Object.defineProperty(n,"__esModule",{value:!0}),n.getRadians=void 0,n.getLabelPositionStyle=u,n.getBadgePositionStyle=c,n.getCurveControlPoint=f,n.parseCurveOffset=d,n.parseCurvePosition=v,n.getQuadraticPath=p,n.getCubicPath=g,n.getPolylinePath=m,n.getBorderRadiusPoints=x,n.getLoopEndpoints=E,n.getCubicLoopPath=M,n.getCubicLoopControlPoints=S,n.getPolylineLoopPath=T,n.getPolylineLoopControlPoints=A,n.getSubgraphRelatedEdges=C,n.findActualConnectNodeData=B,n.getArrowSize=D;const e=hr,t=lo(),r=$Te(),i=pl(),a=iy(),s=$o(),o=pO(),l=gl();function u(z,G,H,W,ee){let q=typeof G=="number"?G:.5;G==="start"&&(q=0),G==="end"&&(q=.99);const Q=(0,s.parsePoint)(z.getPoint(q)),oe=(0,s.parsePoint)(z.getPoint(q+.01));let fe=G==="start"?"left":G==="end"?"right":"center";if((0,s.isHorizontal)(Q,oe)||!H){const[de,ke]=h(z,q,W,ee);return{transform:[["translate",de,ke]],textAlign:fe}}let ae=Math.atan2(oe[1]-Q[1],oe[0]-Q[0]);oe[0]<Q[0]&&(fe=fe==="center"?fe:fe==="left"?"right":"left",W*=-1,ae+=Math.PI);const[se,ue]=h(z,q,W,ee,ae),pe=[["translate",se,ue],["rotate",ae/Math.PI*180]];return{textAlign:fe,transform:pe}}function c(z,G,H,W,ee){var X,Z;const J=((X=z.badge)===null||X===void 0?void 0:X.getGeometryBounds().halfExtents[0])*2||0,q=((Z=z.label)===null||Z===void 0?void 0:Z.getGeometryBounds().halfExtents[0])*2||0;return u(z.key,H,!0,(q?(q/2+J/2)*(G==="suffix"?1:-1):0)+W,ee)}function h(z,G,H,W,ee){const[X,Z]=(0,s.parsePoint)(z.getPoint(G));let J=H,q=W;return ee&&(J=H*Math.cos(ee)-W*Math.sin(ee),q=H*Math.sin(ee)+W*Math.cos(ee)),[X+J,Z+q]}function f(z,G,H,W){if((0,e.isEqual)(z,G))return z;const ee=(0,l.subtract)(G,z),X=[z[0]+H*ee[0],z[1]+H*ee[1]],Z=(0,l.normalize)((0,l.perpendicular)(ee,!1));return X[0]+=W*Z[0],X[1]+=W*Z[1],X}function d(z){return(0,e.isNumber)(z)?[z,-z]:z}function v(z){return(0,e.isNumber)(z)?[z,1-z]:z}function p(z,G,H){return[["M",z[0],z[1]],["Q",H[0],H[1],G[0],G[1]]]}function g(z,G,H){return[["M",z[0],z[1]],["C",H[0][0],H[0][1],H[1][0],H[1][1],G[0],G[1]]]}function m(z,G=0,H=!1){const W=z.length-1,ee=z[0],X=z[W],Z=z.slice(1,W),J=[["M",ee[0],ee[1]]];return Z.forEach((q,Q)=>{const oe=Z[Q-1]||ee,fe=Z[Q+1]||X;if(!(0,s.isCollinear)(oe,q,fe)&&G){const[ae,ne]=x(oe,q,fe,G);J.push(["L",ae[0],ae[1]],["Q",q[0],q[1],ne[0],ne[1]],["L",ne[0],ne[1]])}else J.push(["L",q[0],q[1]])}),J.push(["L",X[0],X[1]]),H&&J.push(["Z"]),J}function x(z,G,H,W){const ee=(0,l.manhattanDistance)(z,G),X=(0,l.manhattanDistance)(H,G),Z=Math.min(W,Math.min(ee,X)/2),J=[G[0]-Z/ee*(G[0]-z[0]),G[1]-Z/ee*(G[1]-z[1])],q=[G[0]-Z/X*(G[0]-H[0]),G[1]-Z/X*(G[1]-H[1])];return[J,q]}const w=z=>{const G=Math.PI/2,H=(0,t.getBBoxHeight)(z)/2,W=(0,t.getBBoxWidth)(z)/2,ee=Math.atan2(H,W)/2,X=Math.atan2(W,H)/2;return{top:[-G-X,-G+X],"top-right":[-G+X,-ee],"right-top":[-G+X,-ee],right:[-ee,ee],"bottom-right":[ee,G-X],"right-bottom":[ee,G-X],bottom:[G-X,G+X],"bottom-left":[G+X,Math.PI-ee],"left-bottom":[G+X,Math.PI-ee],left:[Math.PI-ee,Math.PI+ee],"top-left":[Math.PI+ee,-G-X],"left-top":[Math.PI+ee,-G-X]}};n.getRadians=w;function E(z,G,H,W,ee){const X=(0,t.getNodeBBox)(z),Z=z.getCenter();let J=W&&(0,i.getPortPosition)(W),q=ee&&(0,i.getPortPosition)(ee);if(!J||!q){const Q=(0,n.getRadians)(X),oe=Q[G][0],fe=Q[G][1],[ae,ne]=(0,t.getBBoxSize)(X),se=Math.max(ae,ne),ue=(0,l.add)(Z,[se*Math.cos(oe),se*Math.sin(oe),0]),pe=(0,l.add)(Z,[se*Math.cos(fe),se*Math.sin(fe),0]);J=(0,i.getNodeConnectionPoint)(z,ue),q=(0,i.getNodeConnectionPoint)(z,pe),H||([J,q]=[q,J])}return[J,q]}function M(z,G,H,W,ee,X){const Z=z.getPorts()[ee||X],J=z.getPorts()[X||ee];let[q,Q]=E(z,G,H,Z,J);const oe=S(z,q,Q,W);return Z&&(q=(0,i.getPortConnectionPoint)(Z,oe[0])),J&&(Q=(0,i.getPortConnectionPoint)(J,oe.at(-1))),g(q,Q,oe)}function S(z,G,H,W){const ee=z.getCenter();if((0,e.isEqual)(G,H)){const X=(0,l.subtract)(G,ee),Z=[W*Math.sign(X[0])||W/2,W*Math.sign(X[1])||-W/2,0];return[(0,l.add)(G,Z),(0,l.add)(H,(0,l.multiply)(Z,[1,-1,1]))]}return[(0,s.moveTo)(ee,G,(0,l.distance)(ee,G)+W),(0,s.moveTo)(ee,H,(0,l.distance)(ee,H)+W)]}function T(z,G,H,W,ee,X,Z){const J=(0,i.getAllPorts)(z),q=J[X||Z],Q=J[Z||X];let[oe,fe]=E(z,H,W,q,Q);const ae=A(z,oe,fe,ee);return q&&(oe=(0,i.getPortConnectionPoint)(q,ae[0])),Q&&(fe=(0,i.getPortConnectionPoint)(Q,ae.at(-1))),m([oe,...ae,fe],G)}function A(z,G,H,W){const ee=[],X=(0,t.getNodeBBox)(z);if((0,e.isEqual)(G,H))switch((0,t.getNearestBoundarySide)(G,X)){case"left":ee.push([G[0]-W,G[1]]),ee.push([G[0]-W,G[1]+W]),ee.push([G[0],G[1]+W]);break;case"right":ee.push([G[0]+W,G[1]]),ee.push([G[0]+W,G[1]+W]),ee.push([G[0],G[1]+W]);break;case"top":ee.push([G[0],G[1]-W]),ee.push([G[0]+W,G[1]-W]),ee.push([G[0]+W,G[1]]);break;case"bottom":ee.push([G[0],G[1]+W]),ee.push([G[0]+W,G[1]+W]),ee.push([G[0]+W,G[1]]);break}else{const Z=(0,t.getNearestBoundarySide)(G,X),J=(0,t.getNearestBoundarySide)(H,X);if(Z===J){const q=Z;let Q,oe;switch(q){case"left":Q=Math.min(G[0],H[0])-W,ee.push([Q,G[1]]),ee.push([Q,H[1]]);break;case"right":Q=Math.max(G[0],H[0])+W,ee.push([Q,G[1]]),ee.push([Q,H[1]]);break;case"top":oe=Math.min(G[1],H[1])-W,ee.push([G[0],oe]),ee.push([H[0],oe]);break;case"bottom":oe=Math.max(G[1],H[1])+W,ee.push([G[0],oe]),ee.push([H[0],oe]);break}}else{const q=(ae,ne)=>({left:[ne[0]-W,ne[1]],right:[ne[0]+W,ne[1]],top:[ne[0],ne[1]-W],bottom:[ne[0],ne[1]+W]})[ae],Q=q(Z,G),oe=q(J,H),fe=(0,o.freeJoin)(Q,oe,X);ee.push(Q,fe,oe)}}return ee}function C(z,G){const H=new Set,W=new Set,ee=new Set;return z.forEach(X=>{G(X).forEach(J=>{H.add(J),z.includes(J.source)&&z.includes(J.target)?W.add(J):ee.add(J)})}),{edges:Array.from(H),internal:Array.from(W),external:Array.from(ee)}}function B(z,G){const H=[];let W=z;for(;W;){H.push(W);const ee=G((0,a.idOf)(W));if(ee)W=ee;else break}if(H.some(ee=>{var X;return(X=ee.style)===null||X===void 0?void 0:X.collapsed})){const ee=H.reverse().findIndex(r.isCollapsed);return H[ee]||H.at(-1)}return z}function D(z,G){return G||(z<4?10:z===4?12:z*2.5)}}(eM)),eM}var xW=Q0();const i1=[16,16],$5e=(n,e,t,r)=>{const{halfExtents:i}=n.getGeometryBounds(),a=1,s=t[1]===t[3]?0:t[1]>t[3]?t[3]:t[1],o=[-i[0]-s+4,-16/2],l=[i[0]-i1[0]+s-4,-16/2],u=[[o[0]*a,o[1]],[l[0]*a,l[1]]];return e==="start"?u[0]:e==="end"?u[1]:[0,0]},wW=(n,e,t)=>{const r=6+i1[0];if(n&&e)return[3,r,3,r];if(t){if(n)return[3,r,3,6];if(e)return[3,6,3,r]}else{if(n)return[3,6,3,r];if(e)return[3,r,3,6]}return[3,6,3,6]},G5e=(n,e,t)=>{const{id:r,startArrow:i,endArrow:a,type:s}=rr(n.getGraphicStyle(e),"label"),o=n.getShape("key"),l=n.getShape(`label-${r}`),u=hy(o),c=wW(i,a,u),h=$5e(l,t,c),f=`translate(${h[0]}, ${h[1]})`,d={start:"arrow_back",end:"arrow_forward"},v=s==="filled"?"white":"black";return{src:Ec(ma(n==null?void 0:n.context).iconSpriteText,d[t],v),width:i1[0],height:i1[1],transform:f,zIndex:1}},V5e=(n,e,t,r)=>{const{color:i,lineHighlightColor:a}=e,s=jj(a,r),o=lp(n,s,t,n.getTheme());return{fill:i||o}},XB=(n,e,t)=>{const r={start:"edge_start_arrow",end:"edge_end_arrow"},{fill:i}=V5e(ma(n==null?void 0:n.context),e,Uj(n),t),{translate:a,rotate:s}=Wj(n.getShape("key"),.5,t==="start"?-12:0,-10/2,!1);return{src:Ec(ma(n==null?void 0:n.context).iconSpriteText,r[t],i),width:12,height:10,transform:`translate(${a.x}, ${a.y}) rotate(${s})`}};function mO(n,e,t){var s,o;const{direction:r}=e,i="middle-start-arrow",a="middle-end-arrow";r!=="forward"&&((s=n.shapeMap[i])==null||s.destroy(),delete n.shapeMap[i]),r!=="backward"&&((o=n.shapeMap[a])==null||o.destroy(),delete n.shapeMap[a]),(e.direction==="forward"||e.direction==="both")&&n.upsert("middle-start-arrow",Qa,XB(n,e,"start"),t),(e.direction==="backward"||e.direction==="both")&&n.upsert("middle-end-arrow",Qa,XB(n,e,"end"),t)}function yO(n,e){var r;const t=hy(n.getShape("key"));(r=e.labels)==null||r.forEach(i=>{const{labelId:a,labelStartArrow:s,labelEndArrow:o}=i,l=n.getShape(`label-${a}`),u=l.style,c={...e,...i},[h,f]=t?[o,s]:[s,o];[{type:"start",key:"startArrow",arrow:h},{type:"end",key:"endArrow",arrow:f}].forEach(({type:v,arrow:p,key:g})=>{var m;if(p===!1&&((m=u[g])==null||m.destroy(),delete u[g]),p===!0){const x=G5e(n,c,v),w=new Qa({style:x});u[g]=w,l.appendChild(u[g])}})})}const H5e={"primary/primary-0":"#000000","red/red-0":"#000000","red/red-10":"#410002","red/red-20":"#690005","red/red-30":"#93000A","red/red-40":"#BA1A1A","red/red-50":"#DE3730","red/red-60":"#FF5449","red/red-70":"#FF897D","red/red-80":"#FFB4AB","red/red-90":"#FFDAD6","red/red-95":"#FFEDEA","primary/primary-10":"#002020","primary/primary-20":"#003737","primary/primary-30":"#004F4F","primary/primary-40":"#006A6A","primary/primary-50":"#008585","primary/primary-60":"#00A1A1","primary/primary-70":"#1EBEBE","primary/primary-80":"#4CDADA","primary/primary-90":"#6FF7F6","primary/primary-95":"#ADFFFE","primary/primary-99":"#F1FFFE","red/red-99":"#FFFBFF","yellow/yellow-0":"#000000","yellow/yellow-10":"#2A1700","yellow/yellow-20":"#462A00","yellow/yellow-30":"#653E00","yellow/yellow-40":"#855400","yellow/yellow-50":"#A66A00","yellow/yellow-60":"#C98100","yellow/yellow-70":"#ED9900","yellow/yellow-80":"#FFB95C","yellow/yellow-90":"#FFDDB7","yellow/yellow-95":"#FFEEDE","green/green-0":"#000000","green/green-10":"#002109","green/green-20":"#003914","green/green-30":"#005320","green/green-40":"#186C32","green/green-50":"#378648","yellow/yellow-99":"#FFFBFF","green/green-60":"#52A160","green/green-70":"#6CBD78","green/green-80":"#87D991","green/green-90":"#A2F6AB","green/green-95":"#C6FFC8","blue/blue-0":"#000000","blue/blue-10":"#001C3A","green/green-99":"#F6FFF1","blue/blue-20":"#00315F","blue/blue-30":"#004786","blue/blue-40":"#005FAF","blue/blue-50":"#0078DA","blue/blue-60":"#2792FF","blue/blue-70":"#72ADFF","blue/blue-80":"#A5C8FF","blue/blue-90":"#D4E3FF","blue/blue-95":"#EBF1FF","grey/grey-0":"#000000","grey/grey-4":"#0B0F0F","grey/grey-6":"#101414","grey/grey-10":"#191C1C","grey/grey-20":"#2D3131","grey/grey-30":"#444747","grey/grey-40":"#5B5F5F","grey/grey-50":"#747877","grey/grey-60":"#8E9191","grey/grey-70":"#A9ACAB","grey/grey-80":"#C4C7C6","grey/grey-90":"#E0E3E2","grey/grey-92":"#E6E9E8","grey/grey-95":"#EFF1F0","blue-grey/blue-grey-0":"#000000","blue-grey/blue-grey-10":"#141D1D","blue-grey/blue-grey-20":"#293232","blue-grey/blue-grey-30":"#3F4948","blue-grey/blue-grey-40":"#566060","blue-grey/blue-grey-50":"#6F7979","blue-grey/blue-grey-60":"#889392","blue-grey/blue-grey-70":"#A3ADAD","blue-grey/blue-grey-80":"#BEC9C8","blue-grey/blue-grey-90":"#DAE5E4","blue-grey/blue-grey-92":"#E0EBEA","blue-grey/blue-grey-95":"#E9F3F2","blue/blue-99":"#FDFCFF","grey/grey-98":"#F7FAF9","primary/primary-100":"#FFFFFF","red/red-100":"#FFFFFF","yellow/yellow-100":"#FFFFFF","green/green-100":"#FFFFFF","blue/blue-100":"#FFFFFF","grey/grey-100":"#FFFFFF","blue-grey/blue-grey-100":"#FFFFFF"},q5e={"background-neutral-default":"#F7FAF9","text-neutral-default":"#191C1C","text-neutral-default-subtle":"#3F4948","background-neutral-subtle":"#FFFFFF","background-neutral-inverse":"#2D3131","text-neutral-inverse":"#EFF1F0","icon-primary-default":"#008585","icon-error-default":"#DE3730","icon-warning-default":"#ED9900","icon-success-default":"#378648","icon-info-default":"#0078DA","border-primary-default":"#008585","border-error-default":"#DE3730","border-warning-default":"#ED9900","border-success-default":"#378648","border-info-default":"#0078DA","path/outline-neutral-default":"#3F4948","guides/outline-accent":"#FF5449","background-primary-default":"#6FF7F6","background-primary-hovered":"#4CDADA","background-neutral-hovered":"#C4C7C6","background-error-default":"#FFDAD6","background-error-hovered":"#FFB4AB","background-warning-default":"#FFDDB7","background-warning-hovered":"#FFB95C","background-success-default":"#A2F6AB","background-success-hovered":"#87D991","background-info-default":"#D4E3FF","background-info-hovered":"#A5C8FF"},j5e={"background-neutral-default":"#101414","text-neutral-default":"#E0E3E2","text-neutral-default-subtle":"#A3ADAD","background-neutral-subtle":"#0B0F0F","background-neutral-inverse":"#E0E3E2","text-neutral-inverse":"#191C1C","icon-primary-default":"#1EBEBE","icon-error-default":"#FF897D","icon-warning-default":"#ED9900","icon-success-default":"#6CBD78","icon-info-default":"#72ADFF","border-primary-default":"#1EBEBE","border-error-default":"#FF897D","border-warning-default":"#ED9900","border-success-default":"#6CBD78","border-info-default":"#72ADFF","path/outline-neutral-default":"#BEC9C8","guides/outline-accent":"#FF5449","background-primary-default":"#004F4F","background-primary-hovered":"#006A6A","background-neutral-hovered":"#5B5F5F","background-error-default":"#93000A","background-error-hovered":"#BA1A1A","background-warning-default":"#653E00","background-warning-hovered":"#855400","background-success-default":"#005320","background-success-hovered":"#186C32","background-info-default":"#004786","background-info-hovered":"#005FAF"},W5e={palettes:H5e,light:q5e,dark:j5e},U5e=(n,e="light")=>{const{color:t,position:r,type:i,customBackground:a}=rr(n,"label"),s=W5e[e];let o=s["text-neutral-default"],l=s["background-neutral-default"],u="transparent";const c=jj(n.lineHighlightColor,r<=.5?"start":"end");i==="filled"?(o=s["text-neutral-inverse"],l=s["background-neutral-inverse"]):i==="outlined"&&(l=s["background-neutral-default"],u=s["path/outline-neutral-default"],c==="info"?u=s["border-info-default"]:c==="success"?u=s["border-success-default"]:c==="warning"?u=s["border-warning-default"]:c==="error"&&(u=s["border-error-default"]));const h=$t(a==null?void 0:a.radius)?4:a==null?void 0:a.radius,f=$t(a==null?void 0:a.borderWidth)?1:a==null?void 0:a.borderWidth;return{fill:t||o,background:!0,backgroundFill:(a==null?void 0:a.color)||l,backgroundStroke:(a==null?void 0:a.borderColor)||u,backgroundRadius:h,backgroundLineWidth:f,backgroundOpacity:1}};function Y5e(n,e){const t=rr(n.getGraphicStyle(e),"label"),{placement:r,offsetX:i,offsetY:a,autoRotate:s,maxWidth:o,textAlign:l,position:u,type:c,startArrow:h,endArrow:f,fill:d,color:v,customBackground:p,...g}=t,m=U5e(e,ma(n==null?void 0:n.context).getTheme()),{translate:x,rotate:w}=Wj(n.getShape("key"),$t(u)?.5:u,i??0,a),E=s?`translate(${x.x}, ${x.y}) rotate(${w})`:`translate(${x.x}, ${x.y})`,M=n.getShape("key"),S=hy(M),T=wW(h,f,S),C=n.context.model.getElementState(n.id).includes("readonly");return{...g,...m,textAlign:l||"center",textBaseline:"middle",padding:T,transform:E,opacity:C?.72:g.opacity??1}}function bO(n,e,t){var i;X5e(n);const r=[];(i=e.labels)==null||i.forEach(a=>{const s=Y5e(n,{...e,...a}),o=n.upsert(`label-${a.labelId}`,hl,s,t);o&&r.push(o)}),requestAnimationFrame(()=>{r.forEach(a=>{a&&typeof a.toFront=="function"&&(a.toFront(),a.childNodes&&a.childNodes.length>0&&a.childNodes[0].toFront())})})}function X5e(n){const e=n.shapeMap;Object.keys(e).filter(r=>r.startsWith("label-")).forEach(r=>{var i;(i=e[r])==null||i.destroy(),delete e[r]})}class EW extends eA{getEndpoints(e){return qj(this.sourceNode,this.targetNode)||super.getEndpoints(e)}getKeyStyle(e){const t=Uj(this),r=super.getKeyStyle(e),i=hO(ma(this.context),e,t,this);return{...r,...i}}getLoopPath(e){const{sourcePort:t,targetPort:r}=e,i=this.sourceNode.getShape("icon");i.getPorts=this.sourceNode.getPorts,i.getIntersectPoint=this.sourceNode.getIntersectPoint,i.getCenter=()=>i.getBounds().center,i.getShape=()=>i;const a=up.getNodeBBox(i.getPosition()),s=Math.max(up.getBBoxWidth(a),up.getBBoxHeight(a)),{placement:o,clockwise:l,dist:u=s}=rr(this.getGraphicStyle(e),"loop");return xW.getCubicLoopPath(i,o,l,u,t,r)}render(e,t){super.render(e,t),bO(this,e,t),mO(this,e,t),yO(this,e)}}ia(wi.EDGE,"line-edge",EW);var ZB=pl(),fM=pO(),Z5e=bW();const dM={left:65,right:65,bump:65},SW=120,K5e=.01;function MW(n,e,t,r,i){const a=(i==null?void 0:i.leftOffset)??dM.left,s=(i==null?void 0:i.rightOffset)??dM.right,o=(i==null?void 0:i.bumpOffset)??dM.bump,l=(i==null?void 0:i.gapThreshold)??SW;return i!=null&&i.fromYOffset&&(e+=i.fromYOffset),i!=null&&i.toYOffset&&(r+=i.toYOffset),J5e(n,t,l)?Q5e(n,e,t,r,a,s,o):eAe(n,e,t,r,a,s)}function J5e(n,e,t){return Math.abs(n-e)<=t}function Q5e(n,e,t,r,i,a,s){if(n>=t&&e>=r){const c=n+a+s,h=e-Math.abs(r-e)/2,f=t-i-s;return[[n+a,e],[c,e],[c,h],[f,h],[f,r],[t-i,r]]}if(n>=t&&e<=r){const c=n+a+s,h=e+Math.abs(r-e)/2,f=t-i-s;return[[n+a,e],[c,e],[c,h],[f,h],[f,r],[t-i,r]]}if(n<=t&&e<=r){const c=t+a+s,h=r-Math.abs(r-e)/2,f=n-i-s;return[[n-i,e],[f,e],[f,h],[c,h],[c,r],[t+a,r]]}const o=t+a+s,l=r+Math.abs(r-e)/2,u=n-i-s;return[[n-i,e],[u,e],[u,l],[o,l],[o,r],[t+a,r]]}function eAe(n,e,t,r,i,a){const s=n+(t-n)/2;return e===r&&(e+=K5e),t<=n&&r<=e?[[n-i,e],[s,e],[s,r],[t+a,r]]:t>=n&&r<=e?[[n+a,e],[s,e],[s,r],[t-i,r]]:t<=n&&r>=e?[[n-i,e],[s,e],[s,r],[t+a,r]]:[[n+a,e],[s,e],[s,r],[t-i,r]]}function tAe(n,e,t=SW){return n>=e?Math.abs(n-e)<=t?["right","left"]:["left","right"]:Math.abs(e-n)<=t?["left","right"]:["right","left"]}class TW extends tA{get states(){return this.isEdgeExist?this.context.model.getElementState(this.id):[]}get isEdgeExist(){return this.context.model.hasEdge(this.id)}getSourceTarget(e=!1){const{sourceNode:t,targetNode:r}=this,i=t.getShape("icon")||t,a=r.getShape("icon")||r;if(e){const s=[i.getPosition()[0],i.getPosition()[1]],o=[a.getPosition()[0],a.getPosition()[1]];return{source:s,target:o}}return{source:i,target:a}}getKeyPath(e){const{radius:t}=e,r=this.getPoints(e);return xW.getPolylinePath(r,t)}getPoints(e){const t=e.router,{source:r,target:i}=this.getSourceTarget(!0),[a,s]=this.getEndpoints(e);let o=[];if(!t)o=fM.orth(a,s,r,i,e.controlPoints,{padding:0});else{if(t.type==="elbow")return MW(r[0],r[1],i[0],i[1],{fromYOffset:t.fromYOffset,toYOffset:t.toYOffset});if(t.type==="shortest-path"){const c=this.context.element.getNodes();o=Z5e.aStarSearch(r,i,c,t),o.length||(o=fM.orth(a,s,r,i,e.controlPoints,{padding:t.offset}))}else t.type==="orth"&&(o=fM.orth(a,s,r,i,e.controlPoints,t))}const[l,u]=this.getEndpoints(e,!0,o);return[l,...o,u]}getEndpoints(e,t=!0,r=[]){const{source:i,target:a}=this.getSourceTarget(!0),s=typeof r=="function"?r():r,o=ZB.getConnectionPoint(i,s[0]||a),l=ZB.getConnectionPoint(a,s[s.length-1]||i);return[o,l]}getKeyStyle(e){return{...super.getKeyStyle(e),...hO(ma(this.context),e,this.states,this)}}render(e,t){super.render(e,t),bO(this,e,t),mO(this,e,t),yO(this,e)}}ia(wi.EDGE,"polyline-edge",TW);class AW extends k0{get states(){return this.isEdgeExist?this.context.model.getElementState(this.id):[]}get isEdgeExist(){return this.context.model.hasEdge(this.id)}getEndpoints(e){return qj(this.sourceNode,this.targetNode)||super.getEndpoints(e)}getKeyStyle(e){return{...super.getKeyStyle(e),...hO(ma(this.context),e,this.states,this)}}render(e,t){super.render(e,t),bO(this,e,t),mO(this,e,t),yO(this,e)}}ia(wi.EDGE,"quadratic-edge",AW);function nAe(n,e,t){return Yj(n,e,t,{})}const a1=132,pd="title",Wg="label",Ug="label-background",rAe="status-icon";function iAe(n,e,t){var a,s;if(!e.label)return t&&n.shapeMap[Wg]&&(n.shapeMap[Wg].destroy(),delete n.shapeMap[Wg]),!1;const r=((s=(a=n.constructor.prototype.getLabelStyle)==null?void 0:a.call)==null?void 0:s.call(a,n,e))||{},i=dy(n,e,r,{nodeSize:132});return t?n.upsert(Wg,Zs,i,t):i}function aAe(n,e,t){if(!e.title)return n.shapeMap[pd]&&(n.shapeMap[pd].destroy(),delete n.shapeMap[pd]),!1;const r=n.constructor.prototype.getLabelStyle.call(n,e),i=dy(n,e,r,{nodeSize:132}),a=rr(e,pd),s=Kj(n,e,i,a,{nodeSize:132});return n.upsert(pd,Zs,s,t)}function sAe(n,e,t){const r=rr(e,"status"),i=OTe(n,e,r,{nodeSize:132});return n.upsert(rAe,Qa,i,t)}function oAe(n,e,t){if(!e.label)return n.shapeMap[Ug]&&(n.shapeMap[Ug].destroy(),delete n.shapeMap[Ug]),!1;const r=Xj(n,e),i=n.upsert(Ug,xi,r,t);return requestAnimationFrame(()=>{n.toFront()}),i}const lAe=132;function OW(n,e,t){const r={...t,r:lAe/2,cursor:"default"},i=ma(n.context),a=n.context.model.getElementState(n.id);return a.includes("disabled")&&(r.cursor="not-allowed"),a.includes("readonly")&&(r.cursor="default"),Object.assign(r,Zj(i,a,e.highlight,e.stateStyles))}class _W extends Gh{get nodeData(){return this.isNodeExist?this.context.model.getNodeLikeDatum(this.id):null}get states(){return this.isNodeExist?this.context.model.getElementState(this.id):[]}get isNodeExist(){return this.context.model.hasNode(this.id)}getKeyStyle(e){const t=super.getKeyStyle(e);return OW(this,e,t)}getHaloStyle(e){return!1}getIconStyle(e){const t=super.getIconStyle(e);return nAe(this,e,t)}getLabelStyle(e){const t=super.getLabelStyle(e);return dy(this,e,t)}render(e,t){this.isNodeExist&&(super.render(e,t),oAe(this,e,t),aAe(this,e,t),iAe(this,e,t),sAe(this,e,t))}}ia(wi.NODE,"device-node",_W);function kW(n,e,t){var s;const r=ma(n.context),i=n.context.model.getElementState(n.id),a={...t,...Zj(r,i,e.highlight,e.stateStyles),cursor:"default"};return a.strokeOpacity===0&&(a.fill="#ffffff",a.fillOpacity=.64,a.stroke=(s=r.getThemeTokens())==null?void 0:s["background-neutral-hovered"],a.strokeOpacity=.64,a.strokeWidth=3,a.lineWidth=1),i.includes("disabled")&&(a.cursor="not-allowed"),i.includes("readonly")&&(a.cursor="default",a.opacity=.72),a}function PW(n,e){return e?{...e,stroke:"none"}:!1}class xO extends $G{constructor(){super(...arguments);Mt(this,"_eventListeners")}get eventListeners(){return this._eventListeners||(this._eventListeners=new Map),this._eventListeners}get states(){return this.isExist?this.context.model.getElementState(this.id):[]}get isExist(){return this.context.model.hasCombo(this.id)}getKeyStyle(t){const r=super.getKeyStyle(t);return kW(this,t,r)}getKeySize(t){const{collapsed:r,childrenData:i=[]}=t;return r||i.length===0?this.getCollapsedKeySize(t):this.getExpandedKeySize(t)}getExpandedKeySize(t){const r=super.getExpandedKeySize(t),i=44;return[r[0]+i,r[1]+i,0]}getHaloStyle(t){const r=super.getHaloStyle(t);return PW(t,r)}getIconStyle(t){if(t.icon===!1||t.collapsed===!1)return!1;const r=super.getIconStyle(t),i=this.getKeySize(t),a={...t,iconOffsetY:(t.iconOffsetY||0)-Rj};return Yj(this,a,{...r,text:"group"},{keySize:[i[0],i[1]]})}getLabelEnhancedAttrs(t,r,i){const{collapsed:a}=t,{labelOffsetX:s,labelMaxWidthAdjustment:o}=this.calculateLabelOffsetX(t),{collapsedOffsetY:l,expandedOffsetY:u}=this.calculateLabelOffsetY(i);return a?{...t,labelMaxWidth:t.labelMaxWidth||Dl*.7+o,labelMaxLines:t.labelMaxLines||2,labelWordWrap:t.labelWordWrap??!0,labelOffsetY:l,labelOffsetX:s,labelTextOverflow:t.labelTextOverflow||"ellipsis"}:{...t,labelMaxWidth:t.labelMaxWidth||r*.4+o,labelMaxLines:1,labelWordWrap:t.labelWordWrap??!0,labelOffsetY:u,labelOffsetX:s,labelTextOverflow:t.labelTextOverflow||"ellipsis"}}calculateLabelOffsetX(t){const r=eW(t,this);return{labelOffsetX:r.labelOffsetX,labelMaxWidthAdjustment:r.labelMaxWidthAdjustment}}calculateLabelOffsetY(t){const r=-Pj/2,i=Dl/2-t-qo+f0;return{collapsedOffsetY:r,expandedOffsetY:i}}getLabelBounds(){var i;const t=this.getShape("label");if(!t)return null;const r=(i=t.getLocalBounds)==null?void 0:i.call(t);return r?{min:{x:r.min[0],y:r.min[1]},max:{x:r.max[0],y:r.max[1]}}:{min:{x:0,y:0},max:{x:0,y:0}}}getLabelTransformY(){var a,s;const t=this.getShape("label");if(!t)return 0;const r=((a=t.attr)==null?void 0:a.call(t,"transform"))||((s=t.style)==null?void 0:s.transform);let i=0;if(r){if(typeof r=="string"){const o=r.match(/translate\(([^,]+),\s*([^)]+)\)/);o&&o[2]&&(i=parseFloat(o[2]))}else if(Array.isArray(r)){const o=r.find(([l])=>l==="translateY");o&&(i=o[1])}}return i}getLabelStyle(t){const r=super.getLabelStyle(t),i=this.getKeySize(t),a=this.getLabelEnhancedAttrs(t,i[0],i[1]);return dy(this,a,r,{nodeSize:Dl,keySize:[i[0],i[1]]})}getTitleStyle(t){if(t.collapsed!==!1)return!1;const r=this.getLabelStyle(t),i=this.getKeySize(t),a=rr(t,$T);return Kj(this,t,r,a,{nodeSize:a1,keySize:[i[0],i[1]]})}getStatusStyle(t){if(!t.labelStatus)return!1;const r=rr(t,"status"),i=this.getLabelBounds();if(!i)return!1;const a=i.min.x-8-Ku/2,o=this.getLabelTransformY()-Ku/2-f0/2,l=gs(this.context.graph),u=(l==null?void 0:l.getThemeTokens())||{};return{...r,x:a,y:o,width:Ku,height:Ku,src:this.getStatusIconSrc(l,t.labelStatus,u),zIndex:1,cursor:"default"}}getStatusIconSrc(t,r,i){switch(r){case"success":return Ys(t,"check_circle",i["icon-success-default"]);case"warning":return Ys(t,"warning",i["icon-warning-default"]);case"error":return Ys(t,"cancel",i["icon-error-default"])}return""}getDeviceCountStyle(t){const{collapsed:r}=t;if(!r)return!1;const{countLabel:i}=t;let a;if(i)a=i;else{const h=gs(this.context.graph);if(!h)return!1;const f=h.getChildrenData(this.id,{level:-1}),d=this.calculateDeviceCount(f);a=`${d} ${d<=1?"device":"devices"}`}const s=this.getLabelStyle(t),o=s.y||0,l=s.fontSize*(s.maxLines||1)||0;let u=0;if(s.transform&&typeof s.transform=="string"){const h=s.transform.match(/translate\(([^,]+),\s*([^)]+)\)/);h&&h[2]&&(u=parseFloat(h[2]))}const c=o+u+l-8;return{text:a,fontSize:Nj,fill:"#666666",textAlign:"center",textBaseline:"top",x:0,y:c,fontFamily:sO(),fontWeight:"normal",zIndex:10}}calculateDeviceCount(t){let r=0;for(const i of t)(i.type==="device-node"||i.type&&!i.type.includes("combo")&&!i.type.includes("group"))&&r++;return r}getShadowStyle(t){const{collapsed:r}=t;if(r)return!1;const i=this.getKeySize(t);return{cx:0,cy:0,r:Math.min(i[0],i[1])/2,fill:"#fff",fillOpacity:.64,stroke:"none",shadowColor:"rgba(0, 0, 0, 0.16)",shadowBlur:24,shadowOffsetX:0,shadowOffsetY:8,zIndex:-2,pointerEvents:"none"}}drawShadowShape(t,r){return this.upsert("combo-shadow-shadow",Xs,this.getShadowStyle(t),r)}getCollapseButtonStyle(t){const{collapsed:r,childrenData:i=[],collapsible:a=!0}=t;if(a===!1||!i||i.length===0)return!1;const s=this.getKeySize(t),o=Math.min(s[0],s[1])/2,l=-12,u=-o-qo/2,c=gs(this.context.graph),h=r?"unfold-more":"unfold-less",f=Ec((c==null?void 0:c.iconSpriteText)||"",h,"#666");return{x:l,y:u,width:qo,height:qo,src:f,cursor:"pointer",zIndex:101,pointerEvents:"auto"}}getDrillDownIconStyle(t){return LTe(this,t)}getTitleBackgroundStyle(t){const r=this.getLabelBackgroundStyle(t);return PTe(this,t,r)}getLabelBackgroundStyle(t){return ITe(this,t)}drawTitleShape(t,r){return this.upsert($T,Zs,this.getTitleStyle(t),r)}drawStatusShape(t,r){return this.upsert(_j,Qa,this.getStatusStyle(t),r)}drawDeviceCountShape(t,r){return this.upsert(kj,Zs,this.getDeviceCountStyle(t),r)}drawCollapseButtonShape(t,r){var A,C;const i=this.getCollapseButtonStyle(t),a=r.getElementById(bo);if(i===!1){a&&(a.remove(),(A=a.destroy)==null||A.call(a));return}a&&!a.parentNode&&((C=a.destroy)==null||C.call(a));const s=this.getKeySize(t),o=Math.min(s[0],s[1])/2,l=0,u=-o;let c=a;if(!c||!c.parentNode?(c=new bi({id:bo,style:{transform:[["translateX",l],["translateY",u]],cursor:"pointer",zIndex:101,pointerEvents:"auto"}}),r.appendChild(c)):c.attr({transform:[["translateX",l],["translateY",u]]}),!c.getElementById(GT)){const B=new Xs({id:GT,style:{r:Cj/2,fill:"#ffffff",stroke:"#e0e0e0",lineWidth:1}});c.appendChild(B)}const f=c.getElementById(`${bo}-icon`),{collapsed:d}=t,v=gs(this.context.graph),p=d?"unfold-more":"unfold-less",g=Ec((v==null?void 0:v.iconSpriteText)||"",p,"#666");if(f)f.attr({src:g});else{const B=new Qa({id:`${bo}-icon`,style:{x:-qo/2,y:-qo/2,width:qo,height:qo,src:g}});c.appendChild(B)}const m=`${bo}-click-${this.id}`,x=`${bo}-mouseenter-${this.id}`,w=`${bo}-mouseleave-${this.id}`,E=this.eventListeners.get(m);E&&c.removeEventListener("click",E);const M=this.eventListeners.get(x);M&&c.removeEventListener("mouseenter",M);const S=this.eventListeners.get(w);S&&c.removeEventListener("mouseleave",S);const T=B=>{B.stopPropagation();const D=gs(this.context.graph),z=this.id;D&&z&&(this.parsedAttributes.collapsed?D.expandGroup(z):D.collapseGroup(z))};return c.addEventListener("click",T),this.eventListeners.set(m,T),c}drawDrillDownIconShape(t,r){var o,l,u,c;const i=this.getDrillDownIconStyle(t),a=this.getShape("label");if(i===!1||!a){a&&a.style[ca]&&((l=(o=a.style[ca]).destroy)==null||l.call(o),delete a.style[ca]);return}a.style[ca]&&((c=(u=a.style[ca]).destroy)==null||c.call(u),delete a.style[ca]);const s=new Qa({style:i});if(a.style[ca]=s,a.appendChild(s),s){s.style.cursor="pointer",s.id=ca;const h=`${ca}-click-${this.id}`,f=`${ca}-mouseenter-${this.id}`,d=`${ca}-mouseleave-${this.id}`,v=this.eventListeners.get(h);v&&s.removeEventListener("click",v);const p=this.eventListeners.get(f);p&&s.removeEventListener("mouseenter",p);const g=this.eventListeners.get(d);g&&s.removeEventListener("mouseleave",g);const m=E=>{const M=gs(this.context.graph),S=this.id;if(!M||!S)return;const T=M.getBehaviorInstance("drillDown");T&&typeof T.drillIntoGroup=="function"&&(E.stopPropagation(),T.drillIntoGroup(S))},x=()=>{s.style.cursor="pointer"},w=()=>{s.style.cursor="default"};s.addEventListener("click",m),s.addEventListener("mouseenter",x),s.addEventListener("mouseleave",w),this.eventListeners.set(h,m),this.eventListeners.set(f,x),this.eventListeners.set(d,w)}return s}drawTitleBackgroundShape(t,r){return this.upsert(Aj,xi,this.getTitleBackgroundStyle(t),r)}drawLabelBackgroundShape(t,r){return this.upsert(Oj,xi,this.getLabelBackgroundStyle(t),r)}render(t,r){super.render(t,r),this.drawShadowShape(t,r),this.drawStatusShape(t,r),this.drawDrillDownIconShape(t,r),this.drawLabelBackgroundShape(t,r),this.drawTitleShape(t,r),this.drawDeviceCountShape(t,r),this.drawCollapseButtonShape(t,r),this.ensureGroupOnTopWhenSelected(),this.ensureChildrenOnTopWhenHover()}onframe(){const t=this.parsedAttributes;super.onframe(),this.drawStatusShape(t,this),this.drawDrillDownIconShape(t,this),this.drawLabelBackgroundShape(t,this),this.drawTitleShape(t,this),this.drawDeviceCountShape(t,this),this.drawCollapseButtonShape(t,this),this.ensureGroupOnTopWhenSelected(),this.ensureChildrenOnTopWhenHover()}ensureGroupOnTopWhenSelected(){this.states.includes("selected")&&requestAnimationFrame(()=>{typeof this.toFront=="function"&&this.toFront(),this.bringChildrenToFront()})}ensureChildrenOnTopWhenHover(){const t=this.states;t.includes("active")&&!t.includes("selected")&&requestAnimationFrame(()=>{this.bringChildrenToFront()})}bringChildrenToFront(){const t=gs(this.context.graph);if(!t)return;const r=t.getChildrenData(this.id,{level:-1});if(!r||r.length===0)return;const{element:i}=this.context;i&&r.forEach(a=>{const s=i.getElement(a.id);s&&typeof s.toFront=="function"&&s.toFront()})}animate(t,r){return super.animate(t,r)}destroy(){this.eventListeners.forEach((t,r)=>{var i;if(r.startsWith(bo)){const a=this.getElementById(bo);if(a){const s=r.includes("-click-")?"click":r.includes("-mouseenter-")?"mouseenter":r.includes("-mouseleave-")?"mouseleave":"click";a.removeEventListener(s,t)}}else if(r.startsWith(ca)){const a=this.getShape("label"),s=(i=a==null?void 0:a.style)==null?void 0:i[ca];if(s){const o=r.includes("-click-")?"click":r.includes("-mouseenter-")?"mouseenter":r.includes("-mouseleave-")?"mouseleave":"click";s.removeEventListener(o,t)}}}),this.eventListeners.clear(),super.destroy()}}Mt(xO,"defaultProps",{collapsedSize:Dl,padding:-30,collapsedMarker:!1});ia(wi.COMBO,"device-group",xO);const uAe="1.0.4",cAe={},hAe=JSON.parse('[{"name":"color-palettes","modes":[{"name":"value","variables":[{"name":"primary/primary-0","type":"color","isAlias":false,"value":"#000000"},{"name":"red/red-0","type":"color","isAlias":false,"value":"#000000"},{"name":"red/red-10","type":"color","isAlias":false,"value":"#410002"},{"name":"red/red-20","type":"color","isAlias":false,"value":"#690005"},{"name":"red/red-30","type":"color","isAlias":false,"value":"#93000A"},{"name":"red/red-40","type":"color","isAlias":false,"value":"#BA1A1A"},{"name":"red/red-50","type":"color","isAlias":false,"value":"#DE3730"},{"name":"red/red-60","type":"color","isAlias":false,"value":"#FF5449"},{"name":"red/red-70","type":"color","isAlias":false,"value":"#FF897D"},{"name":"red/red-80","type":"color","isAlias":false,"value":"#FFB4AB"},{"name":"red/red-90","type":"color","isAlias":false,"value":"#FFDAD6"},{"name":"red/red-95","type":"color","isAlias":false,"value":"#FFEDEA"},{"name":"primary/primary-10","type":"color","isAlias":false,"value":"#002020"},{"name":"primary/primary-20","type":"color","isAlias":false,"value":"#003737"},{"name":"primary/primary-30","type":"color","isAlias":false,"value":"#004F4F"},{"name":"primary/primary-40","type":"color","isAlias":false,"value":"#006A6A"},{"name":"primary/primary-50","type":"color","isAlias":false,"value":"#008585"},{"name":"primary/primary-60","type":"color","isAlias":false,"value":"#00A1A1"},{"name":"primary/primary-70","type":"color","isAlias":false,"value":"#1EBEBE"},{"name":"primary/primary-80","type":"color","isAlias":false,"value":"#4CDADA"},{"name":"primary/primary-90","type":"color","isAlias":false,"value":"#6FF7F6"},{"name":"primary/primary-95","type":"color","isAlias":false,"value":"#ADFFFE"},{"name":"primary/primary-99","type":"color","isAlias":false,"value":"#F1FFFE"},{"name":"red/red-99","type":"color","isAlias":false,"value":"#FFFBFF"},{"name":"yellow/yellow-0","type":"color","isAlias":false,"value":"#000000"},{"name":"yellow/yellow-10","type":"color","isAlias":false,"value":"#2A1700"},{"name":"yellow/yellow-20","type":"color","isAlias":false,"value":"#462A00"},{"name":"yellow/yellow-30","type":"color","isAlias":false,"value":"#653E00"},{"name":"yellow/yellow-40","type":"color","isAlias":false,"value":"#855400"},{"name":"yellow/yellow-50","type":"color","isAlias":false,"value":"#A66A00"},{"name":"yellow/yellow-60","type":"color","isAlias":false,"value":"#C98100"},{"name":"yellow/yellow-70","type":"color","isAlias":false,"value":"#ED9900"},{"name":"yellow/yellow-80","type":"color","isAlias":false,"value":"#FFB95C"},{"name":"yellow/yellow-90","type":"color","isAlias":false,"value":"#FFDDB7"},{"name":"yellow/yellow-95","type":"color","isAlias":false,"value":"#FFEEDE"},{"name":"green/green-0","type":"color","isAlias":false,"value":"#000000"},{"name":"green/green-10","type":"color","isAlias":false,"value":"#002109"},{"name":"green/green-20","type":"color","isAlias":false,"value":"#003914"},{"name":"green/green-30","type":"color","isAlias":false,"value":"#005320"},{"name":"green/green-40","type":"color","isAlias":false,"value":"#186C32"},{"name":"green/green-50","type":"color","isAlias":false,"value":"#378648"},{"name":"yellow/yellow-99","type":"color","isAlias":false,"value":"#FFFBFF"},{"name":"green/green-60","type":"color","isAlias":false,"value":"#52A160"},{"name":"green/green-70","type":"color","isAlias":false,"value":"#6CBD78"},{"name":"green/green-80","type":"color","isAlias":false,"value":"#87D991"},{"name":"green/green-90","type":"color","isAlias":false,"value":"#A2F6AB"},{"name":"green/green-95","type":"color","isAlias":false,"value":"#C6FFC8"},{"name":"blue/blue-0","type":"color","isAlias":false,"value":"#000000"},{"name":"blue/blue-10","type":"color","isAlias":false,"value":"#001C3A"},{"name":"green/green-99","type":"color","isAlias":false,"value":"#F6FFF1"},{"name":"blue/blue-20","type":"color","isAlias":false,"value":"#00315F"},{"name":"blue/blue-30","type":"color","isAlias":false,"value":"#004786"},{"name":"blue/blue-40","type":"color","isAlias":false,"value":"#005FAF"},{"name":"blue/blue-50","type":"color","isAlias":false,"value":"#0078DA"},{"name":"blue/blue-60","type":"color","isAlias":false,"value":"#2792FF"},{"name":"blue/blue-70","type":"color","isAlias":false,"value":"#72ADFF"},{"name":"blue/blue-80","type":"color","isAlias":false,"value":"#A5C8FF"},{"name":"blue/blue-90","type":"color","isAlias":false,"value":"#D4E3FF"},{"name":"blue/blue-95","type":"color","isAlias":false,"value":"#EBF1FF"},{"name":"grey/grey-0","type":"color","isAlias":false,"value":"#000000"},{"name":"grey/grey-4","type":"color","isAlias":false,"value":"#0B0F0F"},{"name":"grey/grey-6","type":"color","isAlias":false,"value":"#101414"},{"name":"grey/grey-10","type":"color","isAlias":false,"value":"#191C1C"},{"name":"grey/grey-20","type":"color","isAlias":false,"value":"#2D3131"},{"name":"grey/grey-30","type":"color","isAlias":false,"value":"#444747"},{"name":"grey/grey-40","type":"color","isAlias":false,"value":"#5B5F5F"},{"name":"grey/grey-50","type":"color","isAlias":false,"value":"#747877"},{"name":"grey/grey-60","type":"color","isAlias":false,"value":"#8E9191"},{"name":"grey/grey-70","type":"color","isAlias":false,"value":"#A9ACAB"},{"name":"grey/grey-80","type":"color","isAlias":false,"value":"#C4C7C6"},{"name":"grey/grey-90","type":"color","isAlias":false,"value":"#E0E3E2"},{"name":"grey/grey-92","type":"color","isAlias":false,"value":"#E6E9E8"},{"name":"grey/grey-95","type":"color","isAlias":false,"value":"#EFF1F0"},{"name":"blue-grey/blue-grey-0","type":"color","isAlias":false,"value":"#000000"},{"name":"blue-grey/blue-grey-10","type":"color","isAlias":false,"value":"#141D1D"},{"name":"blue-grey/blue-grey-20","type":"color","isAlias":false,"value":"#293232"},{"name":"blue-grey/blue-grey-30","type":"color","isAlias":false,"value":"#3F4948"},{"name":"blue-grey/blue-grey-40","type":"color","isAlias":false,"value":"#566060"},{"name":"blue-grey/blue-grey-50","type":"color","isAlias":false,"value":"#6F7979"},{"name":"blue-grey/blue-grey-60","type":"color","isAlias":false,"value":"#889392"},{"name":"blue-grey/blue-grey-70","type":"color","isAlias":false,"value":"#A3ADAD"},{"name":"blue-grey/blue-grey-80","type":"color","isAlias":false,"value":"#BEC9C8"},{"name":"blue-grey/blue-grey-90","type":"color","isAlias":false,"value":"#DAE5E4"},{"name":"blue-grey/blue-grey-92","type":"color","isAlias":false,"value":"#E0EBEA"},{"name":"blue-grey/blue-grey-95","type":"color","isAlias":false,"value":"#E9F3F2"},{"name":"blue/blue-99","type":"color","isAlias":false,"value":"#FDFCFF"},{"name":"grey/grey-98","type":"color","isAlias":false,"value":"#F7FAF9"},{"name":"primary/primary-100","type":"color","isAlias":false,"value":"#FFFFFF"},{"name":"red/red-100","type":"color","isAlias":false,"value":"#FFFFFF"},{"name":"yellow/yellow-100","type":"color","isAlias":false,"value":"#FFFFFF"},{"name":"green/green-100","type":"color","isAlias":false,"value":"#FFFFFF"},{"name":"blue/blue-100","type":"color","isAlias":false,"value":"#FFFFFF"},{"name":"grey/grey-100","type":"color","isAlias":false,"value":"#FFFFFF"},{"name":"blue-grey/blue-grey-100","type":"color","isAlias":false,"value":"#FFFFFF"}]}]},{"name":"color-schemes","modes":[{"name":"light","variables":[{"name":"background-neutral-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"grey/grey-98"}},{"name":"text-neutral-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"grey/grey-10"}},{"name":"text-neutral-default-subtle","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"blue-grey/blue-grey-30"}},{"name":"background-neutral-subtle","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"grey/grey-100"}},{"name":"background-neutral-inverse","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"grey/grey-20"}},{"name":"text-neutral-inverse","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"grey/grey-95"}},{"name":"icon-primary-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"primary/primary-50"}},{"name":"icon-error-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"red/red-50"}},{"name":"icon-warning-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"yellow/yellow-70"}},{"name":"icon-success-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"green/green-50"}},{"name":"icon-info-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"blue/blue-50"}},{"name":"border-primary-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"primary/primary-50"}},{"name":"border-error-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"red/red-50"}},{"name":"border-warning-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"yellow/yellow-70"}},{"name":"border-success-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"green/green-50"}},{"name":"border-info-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"blue/blue-50"}},{"name":"path/outline-neutral-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"blue-grey/blue-grey-30"}},{"name":"guides/outline-accent","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"red/red-60"}},{"name":"background-primary-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"primary/primary-90"}},{"name":"background-primary-hovered","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"primary/primary-80"}},{"name":"background-neutral-hovered","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"grey/grey-80"}},{"name":"background-error-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"red/red-90"}},{"name":"background-error-hovered","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"red/red-80"}},{"name":"background-warning-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"yellow/yellow-90"}},{"name":"background-warning-hovered","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"yellow/yellow-80"}},{"name":"background-success-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"green/green-90"}},{"name":"background-success-hovered","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"green/green-80"}},{"name":"background-info-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"blue/blue-90"}},{"name":"background-info-hovered","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"blue/blue-80"}}]},{"name":"dark","variables":[{"name":"background-neutral-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"grey/grey-6"}},{"name":"text-neutral-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"grey/grey-90"}},{"name":"text-neutral-default-subtle","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"blue-grey/blue-grey-70"}},{"name":"background-neutral-subtle","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"grey/grey-4"}},{"name":"background-neutral-inverse","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"grey/grey-90"}},{"name":"text-neutral-inverse","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"grey/grey-10"}},{"name":"icon-primary-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"primary/primary-70"}},{"name":"icon-error-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"red/red-70"}},{"name":"icon-warning-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"yellow/yellow-70"}},{"name":"icon-success-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"green/green-70"}},{"name":"icon-info-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"blue/blue-70"}},{"name":"border-primary-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"primary/primary-70"}},{"name":"border-error-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"red/red-70"}},{"name":"border-warning-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"yellow/yellow-70"}},{"name":"border-success-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"green/green-70"}},{"name":"border-info-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"blue/blue-70"}},{"name":"path/outline-neutral-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"blue-grey/blue-grey-80"}},{"name":"guides/outline-accent","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"red/red-60"}},{"name":"background-primary-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"primary/primary-30"}},{"name":"background-primary-hovered","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"primary/primary-40"}},{"name":"background-neutral-hovered","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"grey/grey-40"}},{"name":"background-error-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"red/red-30"}},{"name":"background-error-hovered","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"red/red-40"}},{"name":"background-warning-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"yellow/yellow-30"}},{"name":"background-warning-hovered","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"yellow/yellow-40"}},{"name":"background-success-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"green/green-30"}},{"name":"background-success-hovered","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"green/green-40"}},{"name":"background-info-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"blue/blue-30"}},{"name":"background-info-hovered","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"blue/blue-40"}}]}]},{"name":"opacity","modes":[{"name":"Mode 1","variables":[{"name":"opacity-64","type":"number","isAlias":false,"value":64},{"name":"opacity-70","type":"number","isAlias":false,"value":70}]}]},{"name":"Typography","modes":[{"name":"Style","variables":[{"name":"typography/topology/title","type":"typography","isAlias":false,"value":{"fontSize":14,"fontFamily":"Roboto","fontWeight":"Medium","lineHeight":20,"lineHeightUnit":"PIXELS","letterSpacing":0.10000000149011612,"letterSpacingUnit":"PIXELS","textCase":"ORIGINAL","textDecoration":"NONE"}},{"name":"typography/topology/body","type":"typography","isAlias":false,"value":{"fontSize":14,"fontFamily":"Roboto","fontWeight":"Regular","lineHeight":20,"lineHeightUnit":"PIXELS","letterSpacing":0.25,"letterSpacingUnit":"PIXELS","textCase":"ORIGINAL","textDecoration":"NONE"}}]}]}]'),fAe={version:uAe,metadata:cAe,collections:hAe},dAe="3.0.0-beta.16",vM='<?xml version="1.0" encoding="utf-8"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg viewBox="0 0 160 160" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><style>:root>svg{display:none}:root>svg:target{display:block}</style><svg viewBox="0 0 24 24" id="account_box" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M3 5v14a2 2 0 0 0 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2H5a2 2 0 0 0-2 2zm12 4c0 1.66-1.34 3-3 3s-3-1.34-3-3 1.34-3 3-3 3 1.34 3 3zm-9 8c0-2 4-3.1 6-3.1s6 1.1 6 3.1v1H6v-1z"/></svg><svg viewBox="0 0 24 24" id="account_tree" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M22 11V3h-7v3H9V3H2v8h7V8h2v10h4v3h7v-8h-7v3h-2V8h2v3z"/></svg><svg viewBox="0 0 24 24" id="add" xmlns="http://www.w3.org/2000/svg"><path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"/><path d="M0 0h24v24H0z" fill="none"/></svg><svg viewBox="0 0 24 24" id="add_box" xmlns="http://www.w3.org/2000/svg"><path d="M19 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2Zm-2 10h-4v4h-2v-4H7v-2h4V7h2v4h4v2Z"/></svg><svg viewBox="0 0 24 24" id="add_circle" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm5 11h-4v4h-2v-4H7v-2h4V7h2v4h4v2z"/></svg><svg viewBox="0 -960 960 960" id="add_link" xmlns="http://www.w3.org/2000/svg"><path d="M680-160v-120H560v-80h120v-120h80v120h120v80H760v120h-80ZM440-280H280q-83 0-141.5-58.5T80-480q0-83 58.5-141.5T280-680h160v80H280q-50 0-85 35t-35 85q0 50 35 85t85 35h160v80ZM320-440v-80h320v80H320Zm560-40h-80q0-50-35-85t-85-35H520v-80h160q83 0 141.5 58.5T880-480Z"/></svg><svg viewBox="0 0 24 24" id="apartment" xmlns="http://www.w3.org/2000/svg"><path d="M17 11V3H7v4H3v14h8v-4h2v4h8V11h-4ZM7 19H5v-2h2v2Zm0-4H5v-2h2v2Zm0-4H5V9h2v2Zm4 4H9v-2h2v2Zm0-4H9V9h2v2Zm0-4H9V5h2v2Zm4 8h-2v-2h2v2Zm0-4h-2V9h2v2Zm0-4h-2V5h2v2Zm4 12h-2v-2h2v2Zm0-4h-2v-2h2v2Z"/></svg><svg viewBox="0 0 24 24" id="api" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="m14 12-2 2-2-2 2-2 2 2zm-2-6 2.12 2.12 2.5-2.5L12 1 7.38 5.62l2.5 2.5L12 6zm-6 6 2.12-2.12-2.5-2.5L1 12l4.62 4.62 2.5-2.5L6 12zm12 0-2.12 2.12 2.5 2.5L23 12l-4.62-4.62-2.5 2.5L18 12zm-6 6-2.12-2.12-2.5 2.5L12 23l4.62-4.62-2.5-2.5L12 18z"/></svg><svg viewBox="0 0 24 24" id="apollo_project" xmlns="http://www.w3.org/2000/svg"><g data-name="圖層 2"><g data-name="圖層 1"><path style="fill:none" d="M0 0h24v24H0V0z"/><path d="M12 17a4 4 0 1 0-4-4 4 4 0 0 0 4 4Zm-1.6-4.8h.06A1.58 1.58 0 0 1 12 11a1.6 1.6 0 0 1 1.6 1.6h.2a1 1 0 0 1 0 2h-3.4a1.2 1.2 0 0 1 0-2.4Z"/><path d="M20 6h-8l-2-2H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2Zm0 12H4V8h16Z"/></g></g></svg><svg viewBox="0 0 24 24" id="apps" xmlns="http://www.w3.org/2000/svg"><path d="M4 8h4V4H4v4zm6 12h4v-4h-4v4zm-6 0h4v-4H4v4zm0-6h4v-4H4v4zm6 0h4v-4h-4v4zm6-10v4h4V4h-4zm-6 4h4V4h-4v4zm6 6h4v-4h-4v4zm0 6h4v-4h-4v4z"/><path d="M0 0h24v24H0z" fill="none"/></svg><svg viewBox="0 0 24 24" id="archive" xmlns="http://www.w3.org/2000/svg"><path d="m20.54 5.23-1.39-1.68C18.88 3.21 18.47 3 18 3H6c-.47 0-.88.21-1.16.55L3.46 5.23C3.17 5.57 3 6.02 3 6.5V19c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V6.5c0-.48-.17-.93-.46-1.27zM12 17.5 6.5 12H10v-2h4v2h3.5L12 17.5zM5.12 5l.81-1h12l.94 1H5.12z"/><path d="M0 0h24v24H0z" fill="none"/></svg><svg viewBox="0 0 24 24" id="arrow_back" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M20 11H7.83l5.59-5.59L12 4l-8 8 8 8 1.41-1.41L7.83 13H20v-2z"/></svg><svg viewBox="0 0 24 24" id="arrow_circle_down" xmlns="http://www.w3.org/2000/svg"><path d="M12 4c4.41 0 8 3.59 8 8s-3.59 8-8 8-8-3.59-8-8 3.59-8 8-8Zm0-2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2Zm1 10V8h-2v4H8l4 4 4-4h-3Z"/></svg><svg viewBox="0 0 24 24" id="arrow_circle_up" xmlns="http://www.w3.org/2000/svg"><path d="M12 20c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8Zm0 2c5.52 0 10-4.48 10-10S17.52 2 12 2 2 6.48 2 12s4.48 10 10 10Zm-1-10v4h2v-4h3l-4-4-4 4h3Z"/></svg><svg viewBox="0 0 24 24" id="arrow_downward" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0V0z"/><path d="m20 12-1.41-1.41L13 16.17V4h-2v12.17l-5.58-5.59L4 12l8 8 8-8z"/></svg><svg viewBox="0 0 24 24" id="arrow_drop_down" xmlns="http://www.w3.org/2000/svg"><path d="m7 10 5 5 5-5z"/><path d="M0 0h24v24H0z" fill="none"/></svg><svg viewBox="0 0 24 24" id="arrow_drop_up" xmlns="http://www.w3.org/2000/svg"><path d="m7 14 5-5 5 5z"/><path d="M0 0h24v24H0z" fill="none"/></svg><svg viewBox="0 0 24 24" id="arrow_forward" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="m12 4-1.41 1.41L16.17 11H4v2h12.17l-5.58 5.59L12 20l8-8z"/></svg><svg viewBox="0 0 24 24" id="arrow_left" xmlns="http://www.w3.org/2000/svg"><path d="m14 7-5 5 5 5V7z"/><path fill="none" d="M24 0v24H0V0h24z"/></svg><svg viewBox="0 0 24 24" id="arrow_right" xmlns="http://www.w3.org/2000/svg"><path d="m10 17 5-5-5-5v10z"/><path fill="none" d="M0 24V0h24v24H0z"/></svg><svg viewBox="0 0 24 24" id="arrow_upward" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0V0z"/><path d="m4 12 1.41 1.41L11 7.83V20h2V7.83l5.58 5.59L20 12l-8-8-8 8z"/></svg><svg viewBox="0 0 24 24" id="article" xmlns="http://www.w3.org/2000/svg"><path d="M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2Zm-5 14H7v-2h7v2Zm3-4H7v-2h10v2Zm0-4H7V7h10v2Z"/></svg><svg viewBox="0 0 24 24" id="assignment" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M19 3h-4.18C14.4 1.84 13.3 1 12 1c-1.3 0-2.4.84-2.82 2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-7 0c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm2 14H7v-2h7v2zm3-4H7v-2h10v2zm0-4H7V7h10v2z"/></svg><svg viewBox="0 0 24 24" id="attach_file" xmlns="http://www.w3.org/2000/svg"><path d="M16.5 6v11.5c0 2.21-1.79 4-4 4s-4-1.79-4-4V5a2.5 2.5 0 0 1 5 0v10.5c0 .55-.45 1-1 1s-1-.45-1-1V6H10v9.5a2.5 2.5 0 0 0 5 0V5c0-2.21-1.79-4-4-4S7 2.79 7 5v12.5c0 3.04 2.46 5.5 5.5 5.5s5.5-2.46 5.5-5.5V6h-1.5z"/><path d="M0 0h24v24H0z" fill="none"/></svg><svg viewBox="0 0 14 18" id="bookmark_star" xmlns="http://www.w3.org/2000/svg"><path d="M4.725 11 7 9.625 9.275 11l-.6-2.6 2-1.725L8.05 6.45 7 4 5.95 6.45l-2.625.225 2 1.725-.6 2.6ZM0 18V2C0 1.45.196.98.588.587A1.926 1.926 0 0 1 2 0h10c.55 0 1.02.196 1.412.588C13.804.979 14 1.45 14 2v16l-7-3-7 3Z"/></svg><svg viewBox="0 0 24 24" id="build" xmlns="http://www.w3.org/2000/svg"><path clip-rule="evenodd" fill="none" d="M0 0h24v24H0z"/><path d="m22.7 19-9.1-9.1c.9-2.3.4-5-1.5-6.9-2-2-5-2.4-7.4-1.3L9 6 6 9 1.6 4.7C.4 7.1.9 10.1 2.9 12.1c1.9 1.9 4.6 2.4 6.9 1.5l9.1 9.1c.4.4 1 .4 1.4 0l2.3-2.3c.5-.4.5-1.1.1-1.4z"/></svg><svg viewBox="0 0 24 24" id="cable" xmlns="http://www.w3.org/2000/svg"><path d="M20 5V4c0-.55-.45-1-1-1h-2c-.55 0-1 .45-1 1v1h-1v4c0 .55.45 1 1 1h1v7c0 1.1-.9 2-2 2s-2-.9-2-2V7c0-2.21-1.79-4-4-4S5 4.79 5 7v7H4c-.55 0-1 .45-1 1v4h1v1c0 .55.45 1 1 1h2c.55 0 1-.45 1-1v-1h1v-4c0-.55-.45-1-1-1H7V7c0-1.1.9-2 2-2s2 .9 2 2v10c0 2.21 1.79 4 4 4s4-1.79 4-4v-7h1c.55 0 1-.45 1-1V5h-1Z"/></svg><svg viewBox="0 0 24 24" id="calculate" xmlns="http://www.w3.org/2000/svg"><path d="M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2Zm-5.97 4.06L14.09 6l1.41 1.41L16.91 6l1.06 1.06-1.41 1.41 1.41 1.41-1.06 1.06-1.41-1.4-1.41 1.41-1.06-1.06 1.41-1.41-1.41-1.42Zm-6.78.66h5v1.5h-5v-1.5ZM11.5 16h-2v2H8v-2H6v-1.5h2v-2h1.5v2h2V16Zm6.5 1.25h-5v-1.5h5v1.5Zm0-2.5h-5v-1.5h5v1.5Z"/></svg><svg viewBox="0 0 24 24" id="camera" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="m9.4 10.5 4.77-8.26a9.984 9.984 0 0 0-8.49 2.01l3.66 6.35.06-.1zM21.54 9c-.92-2.92-3.15-5.26-6-6.34L11.88 9h9.66zm.26 1h-7.49l.29.5 4.76 8.25A9.91 9.91 0 0 0 22 12c0-.69-.07-1.35-.2-2zM8.54 12l-3.9-6.75A9.958 9.958 0 0 0 2.2 14h7.49l-1.15-2zm-6.08 3c.92 2.92 3.15 5.26 6 6.34L12.12 15H2.46zm11.27 0-3.9 6.76a9.984 9.984 0 0 0 8.49-2.01l-3.66-6.35-.93 1.6z"/></svg><svg viewBox="0 0 24 24" id="cancel" xmlns="http://www.w3.org/2000/svg"><path d="M12 2C6.47 2 2 6.47 2 12s4.47 10 10 10 10-4.47 10-10S17.53 2 12 2zm5 13.59L15.59 17 12 13.41 8.41 17 7 15.59 10.59 12 7 8.41 8.41 7 12 10.59 15.59 7 17 8.41 13.41 12 17 15.59z"/><path d="M0 0h24v24H0z" fill="none"/></svg><svg viewBox="0 0 24 24" id="card_membership" xmlns="http://www.w3.org/2000/svg"><path d="M20 2H4c-1.11 0-2 .89-2 2v11c0 1.11.89 2 2 2h4v5l4-2 4 2v-5h4c1.11 0 2-.89 2-2V4c0-1.11-.89-2-2-2Zm0 13H4v-2h16v2Zm0-5H4V4h16v6Z"/></svg><svg viewBox="0 0 24 24" id="category" xmlns="http://www.w3.org/2000/svg"><path d="m12 2-5.5 9h11L12 2ZM17.5 22a4.5 4.5 0 1 0 0-9 4.5 4.5 0 0 0 0 9ZM3 13.5h8v8H3v-8Z"/></svg><svg viewBox="0 0 24 24" id="center_focus_weak" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M5 15H3v4c0 1.1.9 2 2 2h4v-2H5v-4zM5 5h4V3H5c-1.1 0-2 .9-2 2v4h2V5zm14-2h-4v2h4v4h2V5c0-1.1-.9-2-2-2zm0 16h-4v2h4c1.1 0 2-.9 2-2v-4h-2v4zM12 8c-2.21 0-4 1.79-4 4s1.79 4 4 4 4-1.79 4-4-1.79-4-4-4zm0 6c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2z"/></svg><svg viewBox="0 0 24 24" id="check_circle" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"/></svg><svg viewBox="0 0 24 24" id="circle" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M12 2C6.47 2 2 6.47 2 12s4.47 10 10 10 10-4.47 10-10S17.53 2 12 2z"/></svg><svg viewBox="0 0 24 24" id="cleaning_services" xmlns="http://www.w3.org/2000/svg"><path d="M16 11h-1V3c0-1.1-.9-2-2-2h-2c-1.1 0-2 .9-2 2v8H8c-2.76 0-5 2.24-5 5v7h18v-7c0-2.76-2.24-5-5-5Zm3 10h-2v-3c0-.55-.45-1-1-1s-1 .45-1 1v3h-2v-3c0-.55-.45-1-1-1s-1 .45-1 1v3H9v-3c0-.55-.45-1-1-1s-1 .45-1 1v3H5v-5c0-1.65 1.35-3 3-3h8c1.65 0 3 1.35 3 3v5Z"/></svg><svg viewBox="0 0 24 24" id="clear" xmlns="http://www.w3.org/2000/svg"><path d="M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"/><path d="M0 0h24v24H0z" fill="none"/></svg><svg viewBox="0 0 20 20" id="cloud-upload-outline" xmlns="http://www.w3.org/2000/svg"><path d="M5.417 16.667c-1.264 0-2.344-.438-3.24-1.313C1.281 14.48.833 13.41.833 12.146c0-1.084.327-2.049.98-2.896a4.331 4.331 0 0 1 2.562-1.625 5.656 5.656 0 0 1 2.083-3.104A5.702 5.702 0 0 1 10 3.333c1.625 0 3.003.566 4.135 1.698 1.132 1.132 1.698 2.51 1.698 4.136a3.64 3.64 0 0 1 2.386 1.239c.632.715.948 1.552.948 2.51 0 1.042-.365 1.928-1.094 2.657-.73.73-1.615 1.094-2.656 1.094h-4.584c-.458 0-.85-.163-1.176-.49A1.606 1.606 0 0 1 9.167 15v-4.292L7.833 12l-1.166-1.167L10 7.5l3.333 3.333L12.167 12l-1.334-1.292V15h4.584c.583 0 1.076-.201 1.479-.604.403-.403.604-.896.604-1.48 0-.583-.201-1.076-.604-1.479a2.012 2.012 0 0 0-1.48-.604h-1.25V9.167c0-1.153-.405-2.136-1.218-2.949C12.135 5.406 11.153 5 10 5s-2.135.406-2.948 1.218c-.812.813-1.219 1.796-1.219 2.949h-.416a2.81 2.81 0 0 0-2.063.854 2.81 2.81 0 0 0-.854 2.062c0 .806.285 1.493.854 2.063A2.81 2.81 0 0 0 5.417 15H7.5v1.667H5.417Z"/></svg><svg viewBox="0 0 24 24" id="cloud_off" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M19.35 10.04A7.49 7.49 0 0 0 12 4c-1.48 0-2.85.43-4.01 1.17l1.46 1.46a5.497 5.497 0 0 1 8.05 4.87v.5H19c1.66 0 3 1.34 3 3 0 1.13-.64 2.11-1.56 2.62l1.45 1.45C23.16 18.16 24 16.68 24 15c0-2.64-2.05-4.78-4.65-4.96zM3 5.27l2.75 2.74C2.56 8.15 0 10.77 0 14c0 3.31 2.69 6 6 6h11.73l2 2L21 20.73 4.27 4 3 5.27zM7.73 10l8 8H6c-2.21 0-4-1.79-4-4s1.79-4 4-4h1.73z"/></svg><svg viewBox="0 0 24 24" id="cloud_queue" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M19.35 10.04A7.49 7.49 0 0 0 12 4C9.11 4 6.6 5.64 5.35 8.04A5.994 5.994 0 0 0 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM19 18H6c-2.21 0-4-1.79-4-4s1.79-4 4-4h.71C7.37 7.69 9.48 6 12 6c3.04 0 5.5 2.46 5.5 5.5v.5H19c1.66 0 3 1.34 3 3s-1.34 3-3 3z"/></svg><svg viewBox="0 0 20 20" id="cloud_upload_outline" xmlns="http://www.w3.org/2000/svg"><path d="M5.417 16.667c-1.264 0-2.344-.438-3.24-1.313C1.281 14.48.833 13.41.833 12.146c0-1.084.327-2.049.98-2.896a4.331 4.331 0 0 1 2.562-1.625 5.656 5.656 0 0 1 2.083-3.104A5.702 5.702 0 0 1 10 3.333c1.625 0 3.003.566 4.135 1.698 1.132 1.132 1.698 2.51 1.698 4.136a3.64 3.64 0 0 1 2.386 1.239c.632.715.948 1.552.948 2.51 0 1.042-.365 1.928-1.094 2.657-.73.73-1.615 1.094-2.656 1.094h-4.584c-.458 0-.85-.163-1.176-.49A1.606 1.606 0 0 1 9.167 15v-4.292L7.833 12l-1.166-1.167L10 7.5l3.333 3.333L12.167 12l-1.334-1.292V15h4.584c.583 0 1.076-.201 1.479-.604.403-.403.604-.896.604-1.48 0-.583-.201-1.076-.604-1.479a2.012 2.012 0 0 0-1.48-.604h-1.25V9.167c0-1.153-.405-2.136-1.218-2.949C12.135 5.406 11.153 5 10 5s-2.135.406-2.948 1.218c-.812.813-1.219 1.796-1.219 2.949h-.416a2.81 2.81 0 0 0-2.063.854 2.81 2.81 0 0 0-.854 2.062c0 .806.285 1.493.854 2.063A2.81 2.81 0 0 0 5.417 15H7.5v1.667H5.417Z"/></svg><svg viewBox="0 0 18 18" id="create_new_folder" xmlns="http://www.w3.org/2000/svg"><path d="M15 4.5H9L7.5 3H3c-.833 0-1.492.667-1.492 1.5l-.008 9c0 .832.667 1.5 1.5 1.5h12c.832 0 1.5-.668 1.5-1.5V6c0-.832-.668-1.5-1.5-1.5Zm-.75 6H12v2.25h-1.5V10.5H8.25V9h2.25V6.75H12V9h2.25v1.5Z"/></svg><svg viewBox="0 0 24 24" id="dashboard" xmlns="http://www.w3.org/2000/svg"><path d="M3 13h8V3H3v10Zm0 8h8v-6H3v6Zm10 0h8V11h-8v10Zm0-18v6h8V3h-8Z"/></svg><svg viewBox="0 0 24 24" id="delete_forever" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0V0z"/><path d="M6 19c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7H6v12zm2.46-7.12 1.41-1.41L12 12.59l2.12-2.12 1.41 1.41L13.41 14l2.12 2.12-1.41 1.41L12 15.41l-2.12 2.12-1.41-1.41L10.59 14l-2.13-2.12zM15.5 4l-1-1h-5l-1 1H5v2h14V4z"/><path fill="none" d="M0 0h24v24H0z"/></svg><svg viewBox="0 0 24 24" id="density_large" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="M3 3h18v2H3zM3 19h18v2H3z"/></svg><svg viewBox="0 0 24 24" id="density_medium" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="M3 3h18v2H3zM3 19h18v2H3zM3 11h18v2H3z"/></svg><svg viewBox="0 0 24 24" id="density_small" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="M3 2h18v2H3zM3 20h18v2H3zM3 14h18v2H3zM3 8h18v2H3z"/></svg><svg viewBox="0 0 24 24" id="description" xmlns="http://www.w3.org/2000/svg"><path d="M14 2H6c-1.1 0-1.99.9-1.99 2L4 20c0 1.1.89 2 1.99 2H18c1.1 0 2-.9 2-2V8l-6-6Zm2 16H8v-2h8v2Zm0-4H8v-2h8v2Zm-3-5V3.5L18.5 9H13Z"/></svg><svg viewBox="0 0 24 24" id="device_hub" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M0 0h24v24H0V0z" fill="none"/><path d="m17 16-4-4V8.82C14.16 8.4 15 7.3 15 6c0-1.66-1.34-3-3-3S9 4.34 9 6c0 1.3.84 2.4 2 2.82V12l-4 4H3v5h5v-3.05l4-4.2 4 4.2V21h5v-5h-4z"/></svg><svg viewBox="0 0 24 24" id="done" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4L9 16.2z"/></svg><svg viewBox="0 0 24 24" id="download" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="M5 20h14v-2H5v2zM19 9h-4V3H9v6H5l7 7 7-7z"/></svg><svg viewBox="0 0 24 24" id="drag_indicator" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M11 18c0 1.1-.9 2-2 2s-2-.9-2-2 .9-2 2-2 2 .9 2 2zm-2-8c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0-6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm6 4c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z"/></svg><svg fill="none" viewBox="0 0 24 24" id="draw" xmlns="http://www.w3.org/2000/svg"><path d="M4 21v-4.25L17.175 3.6c.2-.2.425-.35.675-.45a1.975 1.975 0 0 1 1.512 0c.242.1.455.25.638.45L21.4 5c.2.183.35.396.45.638a1.975 1.975 0 0 1 0 1.512c-.1.25-.25.475-.45.675L8.25 21H4ZM18.65 7.775 20 6.425 18.575 5l-1.35 1.35 1.425 1.425ZM14 21a6.644 6.644 0 0 0 3.425-.925C18.475 19.458 19 18.6 19 17.5c0-.6-.158-1.117-.475-1.55-.317-.433-.742-.808-1.275-1.125L15.775 16.3c.383.167.683.35.9.55.217.2.325.417.325.65 0 .383-.304.73-.913 1.038-.608.308-1.304.462-2.087.462a.968.968 0 0 0-.713.288A.968.968 0 0 0 13 20c0 .283.096.52.287.712.192.192.43.288.713.288Zm-9.425-7.65 1.5-1.5a3.576 3.576 0 0 1-.788-.412C5.096 11.296 5 11.15 5 11c0-.2.15-.4.45-.6.3-.2.933-.508 1.9-.925 1.467-.633 2.442-1.208 2.925-1.725.483-.517.725-1.1.725-1.75 0-.917-.367-1.646-1.1-2.188C9.167 3.272 8.2 3 7 3c-.75 0-1.42.133-2.013.4-.591.267-1.045.592-1.362.975A.908.908 0 0 0 3.4 5.1a.938.938 0 0 0 .375.65.908.908 0 0 0 .725.225c.267-.033.492-.142.675-.325.233-.233.492-.4.775-.5C6.233 5.05 6.583 5 7 5c.683 0 1.188.1 1.512.3.325.2.488.433.488.7 0 .233-.146.446-.438.638-.291.191-.962.529-2.012 1.012-1.333.583-2.258 1.112-2.775 1.588A2.298 2.298 0 0 0 3 11c0 .533.142.988.425 1.363.283.375.667.704 1.15.987Z" fill="#000"/></svg><svg viewBox="0 0 24 24" id="dynamic_form" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="M17 20v-9h-2V4h7l-2 5h2l-5 11zm-2-7v7H4c-1.1 0-2-.9-2-2v-3c0-1.1.9-2 2-2h11zm-8.75 2.75h-1.5v1.5h1.5v-1.5zM13 4v7H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2h9zM6.25 6.75h-1.5v1.5h1.5v-1.5z"/></svg><svg viewBox="0 0 13 10" id="edge_end_arrow" xmlns="http://www.w3.org/2000/svg"><path d="m.5 5 12 5V0L.5 5Z"/></svg><svg viewBox="0 0 13 10" id="edge_start_arrow" xmlns="http://www.w3.org/2000/svg"><path d="m12.5 5-12 5V0l12 5Z"/></svg><svg viewBox="0 0 24 24" id="edit" xmlns="http://www.w3.org/2000/svg"><path d="M3 17.25V21h3.75L17.81 9.94l-3.75-3.75L3 17.25zM20.71 7.04a.996.996 0 0 0 0-1.41l-2.34-2.34a.996.996 0 0 0-1.41 0l-1.83 1.83 3.75 3.75 1.83-1.83z"/><path d="M0 0h24v24H0z" fill="none"/></svg><svg viewBox="0 0 24 24" id="edit_attributes" xmlns="http://www.w3.org/2000/svg"><path d="M17.63 7H6.37C3.96 7 2 9.24 2 12s1.96 5 4.37 5h11.26c2.41 0 4.37-2.24 4.37-5s-1.96-5-4.37-5zM7.24 14.46l-2.57-2.57.7-.7 1.87 1.87 3.52-3.52.7.7-4.22 4.22z"/><path class="cfst0" d="M0 0h24v24H0z" fill="none"/></svg><svg viewBox="0 0 24 24" id="edit_notifications" xmlns="http://www.w3.org/2000/svg"><path d="m17.58 6.25 1.77 1.77L14.37 13H12.6v-1.77l4.98-4.98Zm3.27-.44-1.06-1.06c-.2-.2-.51-.2-.71 0l-.85.85L20 7.37l.85-.85c.2-.2.2-.52 0-.71ZM18 12.2V17h2v2H4v-2h2v-7c0-2.79 1.91-5.14 4.5-5.8v-.7c0-.83.67-1.5 1.5-1.5s1.5.67 1.5 1.5v.7c.82.21 1.57.59 2.21 1.09L10.6 10.4V15h4.6l2.8-2.8ZM10 20h4c0 1.1-.9 2-2 2s-2-.9-2-2Z"/></svg><svg viewBox="0 0 24 24" id="edit_off" xmlns="http://www.w3.org/2000/svg"><path d="m12.126 8.125 1.937-1.937 3.747 3.747-1.937 1.938-3.747-3.748ZM20.71 5.63l-2.34-2.34a1 1 0 0 0-1.41 0l-1.83 1.83 3.75 3.75L20.71 7a1 1 0 0 0 0-1.37ZM2 5l6.63 6.63L3 17.25V21h3.75l5.63-5.62L18 21l2-2L4 3 2 5Z"/></svg><svg viewBox="0 0 24 24" id="email" xmlns="http://www.w3.org/2000/svg"><path d="M20 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2Zm0 4-8 5-8-5V6l8 5 8-5v2Z"/></svg><svg viewBox="0 0 24 24" id="engineering-maintenance" xmlns="http://www.w3.org/2000/svg"><g data-name="圖層 2"><g data-name="圖層 1"><path d="M0 0h24v24H0Z" style="fill:none"/><path d="M22.1 6.84V6.5a1.87 1.87 0 0 0 0-.34l.74-.58a.17.17 0 0 0 0-.22l-.7-1.21a.18.18 0 0 0-.14-.08l-.86.35a2.66 2.66 0 0 0-.59-.34l-.13-.93A.18.18 0 0 0 20.2 3h-1.4a.16.16 0 0 0-.17.15l-.13.93a3.12 3.12 0 0 0-.59.34L17 4.07a.17.17 0 0 0-.21.08l-.7 1.21a.17.17 0 0 0 0 .22l.74.58a1.94 1.94 0 0 0 0 .68l-.74.58a.17.17 0 0 0 0 .22l.7 1.21a.18.18 0 0 0 .21.08l.87-.35a2.66 2.66 0 0 0 .59.34l.13.93a.16.16 0 0 0 .17.15h1.4a.16.16 0 0 0 .17-.15l.13-.93a3.12 3.12 0 0 0 .59-.34l.87.35a.17.17 0 0 0 .21-.08l.7-1.21a.17.17 0 0 0 0-.22Zm-2.6.91a1.25 1.25 0 1 1 1.25-1.25 1.25 1.25 0 0 1-1.25 1.25ZM9 15c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4Zm10.42-4.19.5.87a.15.15 0 0 1 0 .17l-.53.41a1.79 1.79 0 0 1 0 .24 1.94 1.94 0 0 1 0 .24l.52.41a.12.12 0 0 1 0 .16l-.5.87a.12.12 0 0 1-.15.06l-.63-.24a2.18 2.18 0 0 1-.42.24l-.09.66a.11.11 0 0 1-.12.1h-1a.12.12 0 0 1-.12-.11l-.09-.66a1.76 1.76 0 0 1-.42-.24l-.62.25a.12.12 0 0 1-.15-.06l-.5-.87a.12.12 0 0 1 0-.16l.53-.41a1.79 1.79 0 0 1 0-.24 1.94 1.94 0 0 1 0-.24l-.53-.41a.12.12 0 0 1 0-.16l.5-.87a.12.12 0 0 1 .15-.06l.62.25a2.18 2.18 0 0 1 .42-.24l.09-.66A.12.12 0 0 1 17 10h1a.15.15 0 0 1 .14.1l.09.66a1.76 1.76 0 0 1 .42.24l.62-.25a.12.12 0 0 1 .15.06Zm-2.75 1.69a.83.83 0 1 0 .83-.83.83.83 0 0 0-.83.83ZM4.74 9h8.53a.49.49 0 0 0 .49-.49.49.49 0 0 0-.49-.51H13a4 4 0 0 0-2-3.45v1a.5.5 0 0 1-1 0V4.14A4.09 4.09 0 0 0 9 4a4.09 4.09 0 0 0-1 .14V5.5a.5.5 0 0 1-1 0v-1A4 4 0 0 0 5 8h-.26a.49.49 0 0 0-.49.49.49.49 0 0 0 .49.51Zm8.12 1a4 4 0 0 1-7.72 0Z" style="fill-rule:evenodd"/></g></g></svg><svg viewBox="0 0 24 24" id="engineering_maintenance" xmlns="http://www.w3.org/2000/svg"><g data-name="圖層 2"><g data-name="圖層 1"><path d="M0 0h24v24H0Z" style="fill:none"/><path d="M22.1 6.84V6.5a1.87 1.87 0 0 0 0-.34l.74-.58a.17.17 0 0 0 0-.22l-.7-1.21a.18.18 0 0 0-.14-.08l-.86.35a2.66 2.66 0 0 0-.59-.34l-.13-.93A.18.18 0 0 0 20.2 3h-1.4a.16.16 0 0 0-.17.15l-.13.93a3.12 3.12 0 0 0-.59.34L17 4.07a.17.17 0 0 0-.21.08l-.7 1.21a.17.17 0 0 0 0 .22l.74.58a1.94 1.94 0 0 0 0 .68l-.74.58a.17.17 0 0 0 0 .22l.7 1.21a.18.18 0 0 0 .21.08l.87-.35a2.66 2.66 0 0 0 .59.34l.13.93a.16.16 0 0 0 .17.15h1.4a.16.16 0 0 0 .17-.15l.13-.93a3.12 3.12 0 0 0 .59-.34l.87.35a.17.17 0 0 0 .21-.08l.7-1.21a.17.17 0 0 0 0-.22Zm-2.6.91a1.25 1.25 0 1 1 1.25-1.25 1.25 1.25 0 0 1-1.25 1.25ZM9 15c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4Zm10.42-4.19.5.87a.15.15 0 0 1 0 .17l-.53.41a1.79 1.79 0 0 1 0 .24 1.94 1.94 0 0 1 0 .24l.52.41a.12.12 0 0 1 0 .16l-.5.87a.12.12 0 0 1-.15.06l-.63-.24a2.18 2.18 0 0 1-.42.24l-.09.66a.11.11 0 0 1-.12.1h-1a.12.12 0 0 1-.12-.11l-.09-.66a1.76 1.76 0 0 1-.42-.24l-.62.25a.12.12 0 0 1-.15-.06l-.5-.87a.12.12 0 0 1 0-.16l.53-.41a1.79 1.79 0 0 1 0-.24 1.94 1.94 0 0 1 0-.24l-.53-.41a.12.12 0 0 1 0-.16l.5-.87a.12.12 0 0 1 .15-.06l.62.25a2.18 2.18 0 0 1 .42-.24l.09-.66A.12.12 0 0 1 17 10h1a.15.15 0 0 1 .14.1l.09.66a1.76 1.76 0 0 1 .42.24l.62-.25a.12.12 0 0 1 .15.06Zm-2.75 1.69a.83.83 0 1 0 .83-.83.83.83 0 0 0-.83.83ZM4.74 9h8.53a.49.49 0 0 0 .49-.49.49.49 0 0 0-.49-.51H13a4 4 0 0 0-2-3.45v1a.5.5 0 0 1-1 0V4.14A4.09 4.09 0 0 0 9 4a4.09 4.09 0 0 0-1 .14V5.5a.5.5 0 0 1-1 0v-1A4 4 0 0 0 5 8h-.26a.49.49 0 0 0-.49.49.49.49 0 0 0 .49.51Zm8.12 1a4 4 0 0 1-7.72 0Z" style="fill-rule:evenodd"/></g></g></svg><svg viewBox="0 0 24 24" id="error" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-2h2v2zm0-4h-2V7h2v6z"/></svg><svg viewBox="0 0 24 24" id="event_busy" xmlns="http://www.w3.org/2000/svg"><path d="m9.31 17 2.44-2.44L14.19 17l1.06-1.06-2.44-2.44 2.44-2.44L14.19 10l-2.44 2.44L9.31 10l-1.06 1.06 2.44 2.44-2.44 2.44L9.31 17ZM19 3h-1V1h-2v2H8V1H6v2H5c-1.11 0-1.99.9-1.99 2L3 19a2 2 0 0 0 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2Zm0 16H5V8h14v11Z"/></svg><svg viewBox="0 0 24 24" id="event_note" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M17 10H7v2h10v-2zm2-7h-1V1h-2v2H8V1H6v2H5c-1.11 0-1.99.9-1.99 2L3 19a2 2 0 0 0 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H5V8h14v11zm-5-5H7v2h7v-2z"/></svg><svg viewBox="0 0 24 24" id="extension" xmlns="http://www.w3.org/2000/svg"><path d="M20.5 11H19V7c0-1.1-.9-2-2-2h-4V3.5a2.5 2.5 0 0 0-5 0V5H4c-1.1 0-1.99.9-1.99 2v3.8H3.5c1.49 0 2.7 1.21 2.7 2.7 0 1.49-1.21 2.7-2.7 2.7H2V20c0 1.1.9 2 2 2h3.8v-1.5c0-1.49 1.21-2.7 2.7-2.7 1.49 0 2.7 1.21 2.7 2.7V22H17c1.1 0 2-.9 2-2v-4h1.5a2.5 2.5 0 0 0 0-5Z"/></svg><svg fill="none" viewBox="0 0 24 24" id="eye_tracking" xmlns="http://www.w3.org/2000/svg"><path d="M6 23H3c-.55 0-1.02-.196-1.413-.587A1.926 1.926 0 0 1 1 21v-3h2v3h3v2Zm12 0v-2h3v-3h2v3c0 .55-.196 1.02-.587 1.413A1.926 1.926 0 0 1 21 23h-3Zm-6-4.5c-2 0-3.813-.592-5.438-1.775C4.938 15.542 3.75 13.967 3 12c.75-1.967 1.938-3.542 3.563-4.725C8.188 6.092 10 5.5 12 5.5c2 0 3.813.592 5.438 1.775C19.063 8.458 20.25 10.033 21 12c-.75 1.967-1.938 3.542-3.563 4.725C15.813 17.908 14 18.5 12 18.5Zm0-3c.967 0 1.792-.342 2.475-1.025A3.372 3.372 0 0 0 15.5 12c0-.967-.342-1.792-1.025-2.475A3.372 3.372 0 0 0 12 8.5c-.967 0-1.792.342-2.475 1.025A3.372 3.372 0 0 0 8.5 12c0 .967.342 1.792 1.025 2.475A3.372 3.372 0 0 0 12 15.5Zm0-2c-.417 0-.77-.146-1.063-.438A1.446 1.446 0 0 1 10.5 12c0-.417.146-.77.438-1.063A1.446 1.446 0 0 1 12 10.5c.417 0 .77.146 1.063.438.291.291.437.645.437 1.062 0 .417-.146.77-.438 1.063A1.446 1.446 0 0 1 12 13.5ZM1 6V3c0-.55.196-1.02.587-1.413A1.926 1.926 0 0 1 3 1h3v2H3v3H1Zm20 0V3h-3V1h3c.55 0 1.02.196 1.413.587C22.803 1.98 23 2.45 23 3v3h-2Z" fill="#000"/></svg><svg fill="none" viewBox="0 0 48 48" id="factory" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M33.34 9.389a.562.562 0 0 0-.562.562v11.597h-7.556v-5.184l-8.889 6.08v-6.008L10 21.056V39.05c0 .31.252.562.563.562h26.874c.311 0 .563-.252.563-.562V9.95a.562.562 0 0 0-.563-.562H33.34Zm-2.562.562A2.562 2.562 0 0 1 33.34 7.39h4.097A2.563 2.563 0 0 1 40 9.95V39.05a2.562 2.562 0 0 1-2.563 2.562H10.564A2.562 2.562 0 0 1 8 39.05V20.04l10.333-7.539v6.152l8.89-6.08v6.975h3.555V9.951Z" fill="#191C1C"/><path d="M18.14 26.61h-3.905v3.906h3.906v-3.907ZM18.14 32.86h-3.905v3.906h3.906v-3.907ZM25.953 26.61h-3.906v3.906h3.906v-3.907ZM25.953 32.86h-3.906v3.906h3.906v-3.907ZM33.766 26.61H29.86v3.906h3.906v-3.907ZM33.766 32.86H29.86v3.906h3.906v-3.907Z" fill="#191C1C"/></svg><svg viewBox="0 0 24 24" id="favorite" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="m12 21.35-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z"/></svg><svg viewBox="0 0 24 24" id="favorite_border" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M16.5 3c-1.74 0-3.41.81-4.5 2.09C10.91 3.81 9.24 3 7.5 3 4.42 3 2 5.42 2 8.5c0 3.78 3.4 6.86 8.55 11.54L12 21.35l1.45-1.32C18.6 15.36 22 12.28 22 8.5 22 5.42 19.58 3 16.5 3zm-4.4 15.55-.1.1-.1-.1C7.14 14.24 4 11.39 4 8.5 4 6.5 5.5 5 7.5 5c1.54 0 3.04.99 3.57 2.36h1.87C13.46 5.99 14.96 5 16.5 5c2 0 3.5 1.5 3.5 3.5 0 2.89-3.14 5.74-7.9 10.05z"/></svg><svg viewBox="0 0 24 24" id="file_copy" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm-1 4 6 6v10c0 1.1-.9 2-2 2H7.99C6.89 23 6 22.1 6 21l.01-14c0-1.1.89-2 1.99-2h7zm-1 7h5.5L14 6.5V12z"/></svg><svg viewBox="0 0 24 24" id="filter_alt" xmlns="http://www.w3.org/2000/svg"><path d="M4.25 5.61C6.27 8.2 10 13 10 13v6c0 .55.45 1 1 1h2c.55 0 1-.45 1-1v-6s3.72-4.8 5.74-7.39A.998.998 0 0 0 18.95 4H5.04c-.83 0-1.3.95-.79 1.61Z"/></svg><svg viewBox="0 0 24 24" id="first_page" xmlns="http://www.w3.org/2000/svg"><path d="M18.41 16.59 13.82 12l4.59-4.59L17 6l-6 6 6 6 1.41-1.41ZM6 6h2v12H6V6Z"/></svg><svg viewBox="0 0 24 24" id="folder" xmlns="http://www.w3.org/2000/svg"><path d="M10 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2h-8l-2-2Z"/></svg><svg viewBox="0 0 24 24" id="folder_off" xmlns="http://www.w3.org/2000/svg"><g data-name="圖層 2"><path d="M0 0h24v24H0Z" style="fill:none"/><path d="m1.89 4.44 1.33 1.33A1.79 1.79 0 0 0 3 6.6v10.8a1.81 1.81 0 0 0 1.8 1.8h11.86l2.91 2.91 1.27-1.27L3.17 3.16ZM19.2 6.6H12l-1.8-1.8H7.34l13.44 13.44a1.72 1.72 0 0 0 .22-.84v-9a1.81 1.81 0 0 0-1.8-1.8Z"/></g></svg><svg viewBox="0 0 24 24" id="folder_open" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M20 6h-8l-2-2H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2zm0 12H4V8h16v10z"/></svg><svg viewBox="0 -960 960 960" id="format_list_numbered_rtl" xmlns="http://www.w3.org/2000/svg"><path d="M680-80v-60h100v-30h-60v-60h60v-30H680v-60h120q17 0 28.5 11.5T840-280v40q0 17-11.5 28.5T800-200q17 0 28.5 11.5T840-160v40q0 17-11.5 28.5T800-80H680Zm0-280v-110q0-17 11.5-28.5T720-510h60v-30H680v-60h120q17 0 28.5 11.5T840-560v70q0 17-11.5 28.5T800-450h-60v30h100v60H680Zm60-280v-180h-60v-60h120v240h-60ZM120-200v-80h480v80H120Zm0-240v-80h480v80H120Zm0-240v-80h480v80H120Z"/></svg><svg viewBox="0 0 24 24" id="forward" xmlns="http://www.w3.org/2000/svg"><path d="M12 8V4l8 8-8 8v-4H4V8h8Z"/></svg><svg viewBox="0 0 24 24" id="fullscreen" xmlns="http://www.w3.org/2000/svg"><path d="M7 14H5v5h5v-2H7v-3Zm-2-4h2V7h3V5H5v5Zm12 7h-3v2h5v-5h-2v3ZM14 5v2h3v3h2V5h-5Z"/></svg><svg viewBox="0 0 24 24" id="fullscreen_exit" xmlns="http://www.w3.org/2000/svg"><path d="M5 16h3v3h2v-5H5v2Zm3-8H5v2h5V5H8v3Zm6 11h2v-3h3v-2h-5v5Zm2-11V5h-2v5h5V8h-3Z"/></svg><svg viewBox="0 0 24 24" id="functions" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M18 4H6v2l6.5 6L6 18v2h12v-3h-7l5-5-5-5h7z"/></svg><svg viewBox="0 0 24 24" id="gps_fixed" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M12 8c-2.21 0-4 1.79-4 4s1.79 4 4 4 4-1.79 4-4-1.79-4-4-4zm8.94 3A8.994 8.994 0 0 0 13 3.06V1h-2v2.06A8.994 8.994 0 0 0 3.06 11H1v2h2.06A8.994 8.994 0 0 0 11 20.94V23h2v-2.06A8.994 8.994 0 0 0 20.94 13H23v-2h-2.06zM12 19c-3.87 0-7-3.13-7-7s3.13-7 7-7 7 3.13 7 7-3.13 7-7 7z"/></svg><svg viewBox="0 0 24 24" id="grid" xmlns="http://www.w3.org/2000/svg"><g fill-rule="evenodd"><path d="M0 0h24v24H0z" fill="none"/><path d="M3 3v8h8V3H3zm6 6H5V5h4v4zm-6 4v8h8v-8H3zm6 6H5v-4h4v4zm4-16v8h8V3h-8zm6 6h-4V5h4v4zm-6 4v8h8v-8h-8zm6 6h-4v-4h4v4z"/></g></svg><svg viewBox="0 0 48 48" id="group" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M24 3.79a9.21 9.21 0 0 0-5.694 16.45l-3.62 5.948A9.21 9.21 0 1 0 20.97 37.1h6.06c.95 4.075 4.606 7.11 8.97 7.11a9.21 9.21 0 1 0 0-18.42 9.21 9.21 0 0 0-2.685.398l-3.62-5.949A9.21 9.21 0 0 0 24 3.79Zm3.816 17.595A9.176 9.176 0 0 1 24 22.21a9.176 9.176 0 0 1-3.816-.825l-3.47 5.701a9.206 9.206 0 0 1 4.495 7.814h5.582a9.205 9.205 0 0 1 4.495-7.814l-3.47-5.701ZM17.21 13a6.79 6.79 0 1 1 13.58 0 6.79 6.79 0 0 1-13.58 0Zm-12 22a6.79 6.79 0 1 1 13.58 0 6.79 6.79 0 0 1-13.58 0ZM36 28.21a6.79 6.79 0 1 0 0 13.58 6.79 6.79 0 0 0 0-13.58Z"/></svg><svg viewBox="0 0 24 24" id="group_work" xmlns="http://www.w3.org/2000/svg"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2ZM8 17.5a2.5 2.5 0 0 1 0-5 2.5 2.5 0 0 1 0 5ZM9.5 8a2.5 2.5 0 0 1 5 0 2.5 2.5 0 0 1-5 0Zm6.5 9.5a2.5 2.5 0 0 1 0-5 2.5 2.5 0 0 1 0 5Z"/></svg><svg viewBox="0 0 24 24" id="help" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 17h-2v-2h2v2zm2.07-7.75-.9.92C13.45 12.9 13 13.5 13 15h-2v-.5c0-1.1.45-2.1 1.17-2.83l1.24-1.26c.37-.36.59-.86.59-1.41 0-1.1-.9-2-2-2s-2 .9-2 2H8c0-2.21 1.79-4 4-4s4 1.79 4 4c0 .88-.36 1.68-.93 2.25z"/></svg><svg viewBox="0 0 24 24" id="help_outline" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="M11 18h2v-2h-2v2zm1-16C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8zm0-14c-2.21 0-4 1.79-4 4h2c0-1.1.9-2 2-2s2 .9 2 2c0 2-3 1.75-3 5h2c0-2.25 3-2.5 3-5 0-2.21-1.79-4-4-4z"/></svg><svg viewBox="0 0 24 24" id="hide_source" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M2.81 2.81 1.39 4.22l2.27 2.27A9.91 9.91 0 0 0 2 12c0 5.52 4.48 10 10 10 2.04 0 3.93-.61 5.51-1.66l2.27 2.27 1.41-1.41L2.81 2.81zM12 20c-4.41 0-8-3.59-8-8 0-1.48.41-2.86 1.12-4.06l10.94 10.94C14.86 19.59 13.48 20 12 20zM7.94 5.12 6.49 3.66A9.91 9.91 0 0 1 12 2c5.52 0 10 4.48 10 10 0 2.04-.61 3.93-1.66 5.51l-1.46-1.46A7.869 7.869 0 0 0 20 12c0-4.41-3.59-8-8-8-1.48 0-2.86.41-4.06 1.12z"/></svg><svg viewBox="0 0 24 24" id="highlight_off" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M14.59 8 12 10.59 9.41 8 8 9.41 10.59 12 8 14.59 9.41 16 12 13.41 14.59 16 16 14.59 13.41 12 16 9.41 14.59 8zM12 2C6.47 2 2 6.47 2 12s4.47 10 10 10 10-4.47 10-10S17.53 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8z"/></svg><svg viewBox="0 0 24 24" id="history" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M13 3a9 9 0 0 0-9 9H1l3.89 3.89.07.14L9 12H6c0-3.87 3.13-7 7-7s7 3.13 7 7-3.13 7-7 7c-1.93 0-3.68-.79-4.94-2.06l-1.42 1.42A8.954 8.954 0 0 0 13 21a9 9 0 0 0 0-18zm-1 5v5l4.28 2.54.72-1.21-3.5-2.08V8H12z"/></svg><svg viewBox="0 0 24 24" id="home" xmlns="http://www.w3.org/2000/svg"><path d="M10 20v-6h4v6h5v-8h3L12 3 2 12h3v8z"/><path d="M0 0h24v24H0z" fill="none"/></svg><svg fill="none" viewBox="0 0 24 24" id="image" xmlns="http://www.w3.org/2000/svg"><path d="M19 5v14H5V5h14Zm0-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2Zm-4.86 8.86-3 3.87L9 13.14 6 17h12l-3.86-5.14Z" fill="#000"/></svg><svg viewBox="0 0 24 24" id="image-outline" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M19 5v14H5V5h14m0-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-4.86 8.86-3 3.87L9 13.14 6 17h12l-3.86-5.14z"/></svg><svg viewBox="0 0 24 24" id="info" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z"/></svg><svg viewBox="0 0 24 24" id="info_outline" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M11 7h2v2h-2zm0 4h2v6h-2zm1-9C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8z"/></svg><svg viewBox="0 0 24 24" id="inventory" xmlns="http://www.w3.org/2000/svg"><path d="M20 2H4c-1 0-2 .9-2 2v3.01c0 .72.43 1.34 1 1.69V20c0 1.1 1.1 2 2 2h14c.9 0 2-.9 2-2V8.7c.57-.35 1-.97 1-1.69V4c0-1.1-1-2-2-2Zm-5 12H9v-2h6v2Zm5-7H4V4l16-.02V7Z"/></svg><svg viewBox="0 0 24 24" id="keyboard_arrow_down" xmlns="http://www.w3.org/2000/svg"><path d="M7.41 8.59 12 13.17l4.59-4.58L18 10l-6 6-6-6 1.41-1.41z"/><path fill="none" d="M0 0h24v24H0V0z"/></svg><svg viewBox="0 0 24 24" id="keyboard_arrow_up" xmlns="http://www.w3.org/2000/svg"><path d="M7.41 15.41 12 10.83l4.59 4.58L18 14l-6-6-6 6z"/><path d="M0 0h24v24H0z" fill="none"/></svg><svg viewBox="0 0 24 24" id="label" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M17.63 5.84C17.27 5.33 16.67 5 16 5L5 5.01C3.9 5.01 3 5.9 3 7v10c0 1.1.9 1.99 2 1.99L16 19c.67 0 1.27-.33 1.63-.84L22 12l-4.37-6.16z"/></svg><svg viewBox="0 0 24 24" id="lan" xmlns="http://www.w3.org/2000/svg"><path d="M13 22h8v-7h-3v-4h-5V9h3V2H8v7h3v2H6v4H3v7h8v-7H8v-2h8v2h-3v7Z"/></svg><svg viewBox="0 0 24 24" id="language" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zm6.93 6h-2.95a15.65 15.65 0 0 0-1.38-3.56A8.03 8.03 0 0 1 18.92 8zM12 4.04c.83 1.2 1.48 2.53 1.91 3.96h-3.82c.43-1.43 1.08-2.76 1.91-3.96zM4.26 14C4.1 13.36 4 12.69 4 12s.1-1.36.26-2h3.38c-.08.66-.14 1.32-.14 2 0 .68.06 1.34.14 2H4.26zm.82 2h2.95c.32 1.25.78 2.45 1.38 3.56A7.987 7.987 0 0 1 5.08 16zm2.95-8H5.08a7.987 7.987 0 0 1 4.33-3.56A15.65 15.65 0 0 0 8.03 8zM12 19.96c-.83-1.2-1.48-2.53-1.91-3.96h3.82c-.43 1.43-1.08 2.76-1.91 3.96zM14.34 14H9.66c-.09-.66-.16-1.32-.16-2 0-.68.07-1.35.16-2h4.68c.09.65.16 1.32.16 2 0 .68-.07 1.34-.16 2zm.25 5.56c.6-1.11 1.06-2.31 1.38-3.56h2.95a8.03 8.03 0 0 1-4.33 3.56zM16.36 14c.08-.66.14-1.32.14-2 0-.68-.06-1.34-.14-2h3.38c.16.64.26 1.31.26 2s-.1 1.36-.26 2h-3.38z"/></svg><svg viewBox="0 0 24 24" id="last_page" xmlns="http://www.w3.org/2000/svg"><path d="M5.59 7.41 10.18 12l-4.59 4.59L7 18l6-6-6-6-1.41 1.41ZM16 6h2v12h-2V6Z"/></svg><svg viewBox="0 0 24 24" id="launch" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M19 19H5V5h7V3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"/></svg><svg fill="none" viewBox="0 0 30 30" id="left_circle" xmlns="http://www.w3.org/2000/svg"><circle cx="15" cy="15" r="14" transform="rotate(-180 15 15)" stroke="#AFB3BA" stroke-width="2"/><path d="M18.41 10.41 13.83 15l4.58 4.59L17 21l-6-6 6-6 1.41 1.41Z" fill="#AFB3BA"/></svg><svg viewBox="0 0 24 24" id="link" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M3.9 12c0-1.71 1.39-3.1 3.1-3.1h4V7H7c-2.76 0-5 2.24-5 5s2.24 5 5 5h4v-1.9H7c-1.71 0-3.1-1.39-3.1-3.1zM8 13h8v-2H8v2zm9-6h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1s-1.39 3.1-3.1 3.1h-4V17h4c2.76 0 5-2.24 5-5s-2.24-5-5-5z"/></svg><svg viewBox="0 0 24 24" id="link_off" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0V0z"/><path d="M17 7h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1 0 1.43-.98 2.63-2.31 2.98l1.46 1.46C20.88 15.61 22 13.95 22 12c0-2.76-2.24-5-5-5zm-1 4h-2.19l2 2H16zM2 4.27l3.11 3.11A4.991 4.991 0 0 0 2 12c0 2.76 2.24 5 5 5h4v-1.9H7c-1.71 0-3.1-1.39-3.1-3.1 0-1.59 1.21-2.9 2.76-3.07L8.73 11H8v2h2.73L13 15.27V17h1.73l4.01 4L20 19.74 3.27 3 2 4.27z"/><path fill="none" d="M0 24V0"/></svg><svg viewBox="0 0 24 24" id="local_activity" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M20 12c0-1.1.9-2 2-2V6c0-1.1-.9-2-2-2H4c-1.1 0-1.99.9-1.99 2v4c1.1 0 1.99.9 1.99 2s-.89 2-2 2v4c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2v-4c-1.1 0-2-.9-2-2zm-4.42 4.8L12 14.5l-3.58 2.3 1.08-4.12-3.29-2.69 4.24-.25L12 5.8l1.54 3.95 4.24.25-3.29 2.69 1.09 4.11z"/></svg><svg viewBox="0 0 24 24" id="local_offer" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="m21.41 11.58-9-9C12.05 2.22 11.55 2 11 2H4c-1.1 0-2 .9-2 2v7c0 .55.22 1.05.59 1.42l9 9c.36.36.86.58 1.41.58.55 0 1.05-.22 1.41-.59l7-7c.37-.36.59-.86.59-1.41 0-.55-.23-1.06-.59-1.42zM5.5 7C4.67 7 4 6.33 4 5.5S4.67 4 5.5 4 7 4.67 7 5.5 6.33 7 5.5 7z"/></svg><svg viewBox="0 0 24 24" id="location" xmlns="http://www.w3.org/2000/svg"><path d="M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7Zm0 9.5a2.5 2.5 0 0 1 0-5 2.5 2.5 0 0 1 0 5Z"/></svg><svg viewBox="0 0 24 24" id="lock" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zm-6 9c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zm3.1-9H8.9V6c0-1.71 1.39-3.1 3.1-3.1 1.71 0 3.1 1.39 3.1 3.1v2z"/></svg><svg viewBox="0 0 24 24" id="lock_open" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M12 17c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm6-9h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6h1.9c0-1.71 1.39-3.1 3.1-3.1 1.71 0 3.1 1.39 3.1 3.1v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zm0 12H6V10h12v10z"/></svg><svg viewBox="0 -960 960 960" id="login" xmlns="http://www.w3.org/2000/svg"><path d="M480-120v-80h280v-560H480v-80h280q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H480Zm-80-160-55-58 102-102H120v-80h327L345-622l55-58 200 200-200 200Z"/></svg><svg viewBox="0 0 24 24" id="loop" xmlns="http://www.w3.org/2000/svg"><path d="M12 4V1L8 5l4 4V6c3.31 0 6 2.69 6 6 0 1.01-.25 1.97-.7 2.8l1.46 1.46A7.93 7.93 0 0 0 20 12c0-4.42-3.58-8-8-8zm0 14c-3.31 0-6-2.69-6-6 0-1.01.25-1.97.7-2.8L5.24 7.74A7.93 7.93 0 0 0 4 12c0 4.42 3.58 8 8 8v3l4-4-4-4v3z"/><path d="M0 0h24v24H0z" fill="none"/></svg><svg viewBox="0 0 24 24" id="low_priority" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M14 5h8v2h-8zm0 5.5h8v2h-8zm0 5.5h8v2h-8zM2 11.5C2 15.08 4.92 18 8.5 18H9v2l3-3-3-3v2h-.5C6.02 16 4 13.98 4 11.5S6.02 7 8.5 7H12V5H8.5C4.92 5 2 7.92 2 11.5z"/></svg><svg viewBox="0 0 24 24" id="mark_email_unread" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="M22 8.98V18c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2h10.1c-.06.32-.1.66-.1 1 0 1.48.65 2.79 1.67 3.71L12 11 4 6v2l8 5 5.3-3.32c.54.2 1.1.32 1.7.32 1.13 0 2.16-.39 3-1.02zM16 5c0 1.66 1.34 3 3 3s3-1.34 3-3-1.34-3-3-3-3 1.34-3 3z"/></svg><svg viewBox="0 0 24 24" id="medical_information" xmlns="http://www.w3.org/2000/svg"><path d="M20 7h-5V4c0-1.1-.9-2-2-2h-2c-1.1 0-2 .9-2 2v3H4c-1.1 0-2 .9-2 2v11c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V9c0-1.1-.9-2-2-2Zm-9-3h2v5h-2V4Zm0 12H9v2H7v-2H5v-2h2v-2h2v2h2v2Zm2-1.5V13h6v1.5h-6Zm0 3V16h4v1.5h-4Z"/></svg><svg viewBox="0 0 24 24" id="menu" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z"/></svg><svg viewBox="0 0 24 24" id="more_vert" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M12 8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z"/></svg><svg viewBox="0 0 24 24" id="multiple_stop" xmlns="http://www.w3.org/2000/svg"><path d="m17 4 4 4-4 4V9h-4V7h4V4Zm-7 3c-.55 0-1 .45-1 1s.45 1 1 1 1-.45 1-1-.45-1-1-1ZM6 7c-.55 0-1 .45-1 1s.45 1 1 1 1-.45 1-1-.45-1-1-1Zm1 10h4v-2H7v-3l-4 4 4 4v-3Zm7 0c.55 0 1-.45 1-1s-.45-1-1-1-1 .45-1 1 .45 1 1 1Zm4 0c.55 0 1-.45 1-1s-.45-1-1-1-1 .45-1 1 .45 1 1 1Z"/></svg><svg viewBox="0 0 24 24" id="mx-509_certificate" xmlns="http://www.w3.org/2000/svg"><g data-name="圖層 2"><g data-name="圖層 1"><path d="M0 0h24v24H0Z" style="fill:none"/><path d="M4 10h7v1.5H4zM4 12.5h6V14H4zM4 7.5h8V9H4z"/><path d="M21 3.5H3a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2h18a2 2 0 0 0 2-2v-13a2 2 0 0 0-2-2Zm0 15H3v-13h18Z"/><path d="M13.91 13.48h1v3l1.5-.64 1.5.64v-3h1V12l1-1-1-1V8.52h-1.5l-1-1-1 1h-1.5V10l-1 1 1 1Zm2.48-3.72A1.24 1.24 0 1 1 15.15 11a1.24 1.24 0 0 1 1.24-1.24Z"/></g></g></svg><svg viewBox="0 0 24 24" id="mx-application_cog_outline" xmlns="http://www.w3.org/2000/svg"><path d="M21.7 18.6v-1l1.1-.8c.1-.1.2-.2.1-.3l-1-1.7c0-.1-.2-.1-.3-.1l-1.2.5c-.3-.2-.6-.4-.9-.5l-.2-1.3c0-.1-.1-.2-.2-.2h-2c-.2 0-.3.1-.3.2l-.2 1.3c-.3.2-.5.3-.8.5l-1.2-.5c-.1 0-.2 0-.3.1l-1 1.7c0 .1 0 .2.1.3l1.1.8v1l-1.1.8c-.1.1-.2.2-.1.3l1 1.7c.1.1.2.1.3.1l1.2-.5c.2.2.5.4.8.5l.2 1.3c.1.1.2.2.3.2h2c.1 0 .2-.1.2-.2l.2-1.3c.3-.2.5-.3.8-.5l1.2.4c.1 0 .2 0 .3-.1l1-1.7c.1-.1.1-.2 0-.2l-1.1-.8Zm-3.7.9c-.8 0-1.5-.7-1.5-1.5s.7-1.5 1.5-1.5 1.5.7 1.5 1.5-.7 1.5-1.5 1.5ZM12.3 22H3c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h18c1.1 0 2 .9 2 2v9.1c-.6-.6-1.3-1.1-2-1.4V6H3v14h8.3c.2.7.5 1.4 1 2Z"/></svg><svg viewBox="0 0 24 24" id="mx-application_empty" xmlns="http://www.w3.org/2000/svg"><g data-name="圖層 2"><path d="M0 0h24v24H0Z" style="fill:none"/><path d="M4 16h4v4H4zM16 4h4v4h-4zM14 8V4h-4v3.46l.54.54H14zM20 14v-4h-4v3.46l.54.54H20zM14 10h-1.46L14 11.46V10zM20 16h-1.46L20 17.46V16z"/><path d="m20.84 20.83-.01.01L3.16 3.17 1.89 4.44 4 6.54V8h1.46l2 2H4v4h4v-3.46l2 2V14h1.46l2 2H10v4h4v-3.46l2 2V20h1.46l2.11 2.11 1.27-1.27v-.01zM8 4H6.54L8 5.46V4z"/></g></svg><svg viewBox="0 0 24 24" id="mx-calendar_clock" xmlns="http://www.w3.org/2000/svg"><g data-name="圖層 2"><g data-name="圖層 1"><path style="fill:none" d="M0 0h24v24H0z"/><path d="M15 13h1.5v2.82l2.44 1.41-.75 1.3L15 16.69V13m4-5H5v11h4.67A7 7 0 0 1 19 9.67V8M5 21a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h1V1h2v2h8V1h2v2h1a2 2 0 0 1 2 2v6.1a7 7 0 0 1-9.9 9.9H5m11-9.85A4.85 4.85 0 0 0 11.15 16a4.85 4.85 0 0 0 9.7 0A4.85 4.85 0 0 0 16 11.15Z"/></g></g></svg><svg viewBox="0 0 24 24" id="mx-circle_dash" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="m21.814 13.956-1.966-.39a8.051 8.051 0 0 0 0-3.125l1.966-.389a10.055 10.055 0 0 1 0 3.904ZM20.32 6.448l-1.665 1.115a8.05 8.05 0 0 0-2.21-2.21l1.115-1.665c1.09.73 2.03 1.67 2.76 2.76Zm-6.364-4.254-.39 1.966a8.045 8.045 0 0 0-3.125 0l-.389-1.966a10.05 10.05 0 0 1 3.904 0ZM6.448 3.688l1.114 1.665a8.051 8.051 0 0 0-2.209 2.21L3.688 6.448c.73-1.09 1.67-2.03 2.76-2.76Zm-4.254 6.365a10.05 10.05 0 0 0 0 3.903l1.966-.39a8.046 8.046 0 0 1 0-3.125l-1.966-.389Zm1.494 7.507 1.665-1.114a8.052 8.052 0 0 0 2.21 2.209L6.447 20.32a10.055 10.055 0 0 1-2.76-2.76Zm6.364 4.254.39-1.966a8.044 8.044 0 0 0 3.125 0l.389 1.966a10.046 10.046 0 0 1-3.904 0Zm7.508-1.494-1.115-1.665a8.05 8.05 0 0 0 2.21-2.21l1.665 1.115a10.056 10.056 0 0 1-2.76 2.76Z"/></svg><svg version="1.1" id="mx-cog-off" x="0" y="0" viewBox="0 0 24 24" style="enable-background:new 0 0 24 24" xml:space="preserve" xmlns="http://www.w3.org/2000/svg"><style>.st1{display:none;opacity:.76;fill:none;stroke:#b1d135;stroke-width:1.8;stroke-miterlimit:10;enable-background:new}</style><path d="M0 0h24v24H0V0zm0 0h24v24H0V0zm0 0h24v24H0V0zm0 0h24v24H0V0z" style="fill:none"/><path d="m2 4.3 2.1 2.1-1.4 2.5c-.1.2 0 .4.2.6l2 1.6c0 .3-.1.6-.1.9s0 .6.1.9l-2 1.6c-.2.1-.2.4-.1.6l1.9 3.3c.1.2.4.3.6.2l2.4-1c.5.4 1 .7 1.6.9l.4 2.5c0 .2.2.4.5.4H14c.2 0 .4-.2.5-.4l.4-2.5c.4-.2.7-.3 1.1-.6l3.9 3.9 1.3-1.3L3.3 3 2 4.3zm10 11.3c-2 0-3.6-1.6-3.6-3.6 0-.4.1-.8.2-1.1l4.5 4.5c-.3.1-.7.2-1.1.2zM19.1 12.9c0-.3.1-.6.1-.9s0-.6-.1-.9l2-1.6c.2-.1.2-.4.1-.6l-1.9-3.3c-.1-.2-.4-.3-.6-.2l-2.4 1c-.5-.4-1-.7-1.6-.9L14.3 3c0-.2-.2-.4-.5-.4H10c-.2 0-.4.2-.5.4l-.2 2.4c-.3.1-.5.2-.8.3l2.8 2.8c.2 0 .5-.1.7-.1 2 0 3.6 1.6 3.6 3.6 0 .2 0 .5-.1.7l4.5 4.5 1.2-2.1c.1-.2.1-.5-.1-.6l-2-1.6z"/></svg><svg viewBox="0 0 24 24" id="mx-cursor" xmlns="http://www.w3.org/2000/svg"><path d="M13.64 21.97a.99.99 0 0 1-1.33-.47l-2.18-4.74-2.51 2.02c-.17.14-.38.22-.62.22a1 1 0 0 1-1-1V3a1 1 0 0 1 1.64-.77l.01-.01 11.49 9.64a1.001 1.001 0 0 1-.44 1.75l-3.16.62 2.2 4.73c.26.5.02 1.09-.48 1.32l-3.62 1.69Z"/></svg><svg viewBox="0 0 24 24" id="mx-cursor-add" xmlns="http://www.w3.org/2000/svg"><path d="m18 11 .113-.001 1.027.861a1.001 1.001 0 0 1-.44 1.75l-3.16.62 2.2 4.73c.26.5.02 1.09-.48 1.32l-3.62 1.69a.99.99 0 0 1-1.33-.47l-2.18-4.74-2.51 2.02c-.17.14-.38.22-.62.22a1 1 0 0 1-1-1V3a1 1 0 0 1 1.64-.77l.01-.01 5.407 4.536A5.001 5.001 0 0 0 18 11ZM21 7h-2v2h-2V7h-2V5h2V3h2v2h2v2Z"/></svg><svg viewBox="0 0 24 24" id="mx-cursor-add-outline" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="m18 11 .113-.001 1.027.861a1.001 1.001 0 0 1-.44 1.75l-3.16.62 2.2 4.73c.26.5.02 1.09-.48 1.32l-3.62 1.69a.99.99 0 0 1-1.33-.47l-2.18-4.74-2.51 2.02c-.17.14-.38.22-.62.22a1 1 0 0 1-1-1V3a1 1 0 0 1 1.64-.77l.01-.01 5.407 4.536A5.001 5.001 0 0 0 18 11Zm-7.93 3.27a.997.997 0 0 1 1.33.48l2.3 4.99 1.8-.85-2.31-4.98c-.24-.5-.02-1.1.48-1.33l.28-.08 2.3-.45L8 5.12V15.9l1.82-1.47.25-.16Z"/><path d="M21 7h-2v2h-2V7h-2V5h2V3h2v2h2v2Z"/></svg><svg viewBox="0 0 24 24" id="mx-cursor-outline" xmlns="http://www.w3.org/2000/svg"><path d="M10.07 14.27a.997.997 0 0 1 1.33.48l2.3 4.99 1.8-.85-2.31-4.98c-.24-.5-.02-1.1.48-1.33l.28-.08 2.3-.45L8 5.12V15.9l1.82-1.47.25-.16Zm3.57 7.7a.99.99 0 0 1-1.33-.47l-2.18-4.74-2.51 2.02c-.17.14-.38.22-.62.22a1 1 0 0 1-1-1V3a1 1 0 0 1 1.64-.77l.01-.01 11.49 9.64a1.001 1.001 0 0 1-.44 1.75l-3.16.62 2.2 4.73c.26.5.02 1.09-.48 1.32l-3.62 1.69Z"/></svg><svg fill="none" viewBox="0 0 24 24" id="mx-cursor_add" xmlns="http://www.w3.org/2000/svg"><path d="m18 11 .113-.001 1.027.861a1.001 1.001 0 0 1-.44 1.75l-3.16.62 2.2 4.73c.26.5.02 1.09-.48 1.32l-3.62 1.69a.99.99 0 0 1-1.33-.47l-2.18-4.74-2.51 2.02c-.17.14-.38.22-.62.22a1 1 0 0 1-1-1V3a1 1 0 0 1 1.64-.77l.01-.01 5.407 4.536A5.001 5.001 0 0 0 18 11ZM21 7h-2v2h-2V7h-2V5h2V3h2v2h2v2Z" fill="#000"/></svg><svg fill="none" viewBox="0 0 24 24" id="mx-cursor_add_outline" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="m18 11 .113-.001 1.027.861a1.001 1.001 0 0 1-.44 1.75l-3.16.62 2.2 4.73c.26.5.02 1.09-.48 1.32l-3.62 1.69a.99.99 0 0 1-1.33-.47l-2.18-4.74-2.51 2.02c-.17.14-.38.22-.62.22a1 1 0 0 1-1-1V3a1 1 0 0 1 1.64-.77l.01-.01 5.407 4.536A5.001 5.001 0 0 0 18 11Zm-7.93 3.27a.997.997 0 0 1 1.33.48l2.3 4.99 1.8-.85-2.31-4.98c-.24-.5-.02-1.1.48-1.33l.28-.08 2.3-.45L8 5.12V15.9l1.82-1.47.25-.16Z" fill="#000"/><path d="M21 7h-2v2h-2V7h-2V5h2V3h2v2h2v2Z" fill="#000"/></svg><svg fill="none" viewBox="0 0 24 24" id="mx-cursor_outline" xmlns="http://www.w3.org/2000/svg"><path d="M10.07 14.27a.997.997 0 0 1 1.33.48l2.3 4.99 1.8-.85-2.31-4.98c-.24-.5-.02-1.1.48-1.33l.28-.08 2.3-.45L8 5.12V15.9l1.82-1.47.25-.16Zm3.57 7.7a.99.99 0 0 1-1.33-.47l-2.18-4.74-2.51 2.02c-.17.14-.38.22-.62.22a1 1 0 0 1-1-1V3a1 1 0 0 1 1.64-.77l.01-.01 11.49 9.64a1.001 1.001 0 0 1-.44 1.75l-3.16.62 2.2 4.73c.26.5.02 1.09-.48 1.32l-3.62 1.69Z" fill="#000"/></svg><svg viewBox="0 0 24 24" style="enable-background:new 0 0 24 24" xml:space="preserve" id="mx-default_route" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0V0z" style="fill:none"/><path d="M22 12c0-5.5-4.5-10-10-10S2 6.5 2 12s4.5 10 10 10 10-4.5 10-10zM7.1 8.9l3.1 3.1-3.1 3.1v-2.2H4.4v-1.8h2.7V8.9zm1.8-1.8L12 4l3.1 3.1h-2.2v2.7h-1.8V7.1H8.9zm8 8L13.8 12l3.1-3.1v2.2h2.7v1.8h-2.7v2.2zm-1.8 1.8L12 20l-3.1-3.1h2.2v-2.7h1.8v2.7h2.2z"/></svg><svg fill="none" viewBox="0 0 24 24" id="mx-disband_group_outline" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10c.488 0 .968-.035 1.438-.103A5.976 5.976 0 0 1 12 18c0-1.75.749-3.324 1.943-4.42.356-.515.9-.89 1.533-1.025A5.978 5.978 0 0 1 18 12c1.488 0 2.849.541 3.897 1.438.068-.47.103-.95.103-1.438 0-5.52-4.48-10-10-10ZM8 17.5a2.5 2.5 0 0 1 0-5 2.5 2.5 0 0 1 0 5ZM9.5 8a2.5 2.5 0 0 1 5 0 2.5 2.5 0 0 1-5 0Z" fill="#000"/><path d="m20.12 14.47 1.42 1.41L19.41 18l2.13 2.12-1.42 1.42L18 19.41l-2.12 2.13-1.41-1.42L16.59 18l-2.12-2.12 1.41-1.41L18 16.59l2.12-2.12Z" fill="#000"/></svg><svg viewBox="0 0 160 160" id="mx-empty_state_404" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M113.061 97c-11.08 0-20.06 8.981-20.06 20.061 0 11.079 8.98 20.06 20.06 20.06 4.523 0 8.716-1.51 12.083-4.06v2.378l19.011 18.975 6.259-6.26-18.974-19.01h-2.378a19.964 19.964 0 0 0 4.06-12.083c0-11.08-8.982-20.061-20.061-20.061Zm-10.802 20.061a10.785 10.785 0 0 1 10.802-10.802 10.785 10.785 0 0 1 10.802 10.802 10.785 10.785 0 0 1-10.802 10.802 10.785 10.785 0 0 1-10.802-10.802Z"/><path d="m80.164 83.71.002-.008c.456-1.677.702-4.01.702-7.046 0-4.06-.534-6.98-1.487-8.89l-.006-.01c-.91-1.869-2.052-2.62-3.45-2.62-1.012 0-1.847.322-2.557.952l-.003.002c-.648.571-1.253 1.621-1.72 3.335-.43 1.65-.663 3.984-.663 7.051 0 4.059.52 6.982 1.45 8.896.936 1.87 2.094 2.624 3.493 2.624 1.022 0 1.841-.313 2.517-.908.677-.601 1.282-1.666 1.72-3.37l.002-.008Z"/><path fill-rule="evenodd" clip-rule="evenodd" d="M40 20c-6.6 0-11.94 5.137-11.94 11.416l-.055 100.58a8 8 0 0 0 8 8.004H99.34c1.163 0 1.653-2.375.68-3.013-6.487-4.254-10.771-11.589-10.771-19.926 0-13.151 10.66-23.811 23.811-23.811 3.359 0 6.556.696 9.454 1.95.688.299 1.485-.189 1.485-.938V48.379L98.24 20H40Zm12.196 73.46v-6.698H39.8v-4.635L48.971 59l5.199 2.385-7.622 19.373h5.648v-8.947h5.867v8.947h3.441v6.004h-3.44v6.698h-5.868Zm15.41-4.264-.003-.004c-1.837-3.136-2.696-7.4-2.696-12.67 0-5.3.872-9.56 2.747-12.643l.005-.007c1.945-3.148 4.756-4.74 8.308-4.74 3.581 0 6.387 1.61 8.278 4.804 1.84 3.109 2.698 7.377 2.698 12.675 0 5.3-.886 9.561-2.79 12.646C82.234 92.408 79.434 94 75.883 94c-3.58 0-6.387-1.61-8.277-4.804Zm35.136-2.434v6.698h5.867v-6.698h3.441v-6.004h-3.441v-8.947h-5.867v8.947h-5.648l7.621-19.373L99.517 59l-9.171 23.127v4.635h12.396Z"/></svg><svg viewBox="0 0 160 160" id="mx-empty_state_500" xmlns="http://www.w3.org/2000/svg"><path d="M111.211 89.517c-1.093.27-1.464 1.64-.667 2.436l9.004 9.004-1.369 8.22-8.22 1.37-9.005-9.005c-.801-.801-2.167-.415-2.44.686-1.422 5.737.11 12.055 4.592 16.539 4.8 4.8 11.759 6.121 17.825 4.123l20.184 20.183a7.75 7.75 0 0 0 10.959-10.959l-20.162-20.161c2.024-6.069.688-13.014-4.144-17.846-4.489-4.489-10.816-6.018-16.557-4.59Zm38.288 48.075a2.906 2.906 0 1 1-5.812.002 2.906 2.906 0 0 1 5.812-.002Z"/><path fill-rule="evenodd" clip-rule="evenodd" d="M31.88 30h87.281c2.133 0 3.879 1.741 3.879 3.87v23.22c0 2.13-1.746 3.87-3.879 3.87H31.879c-2.133 0-3.879-1.74-3.879-3.87V33.87c0-2.128 1.746-3.87 3.88-3.87Zm3.878 15.48c0 4.258 3.492 7.74 7.759 7.74s7.758-3.483 7.758-7.74-3.491-7.74-7.758-7.74c-4.267 0-7.759 3.483-7.759 7.74ZM123.04 131.07a.996.996 0 0 0-.293-.707l-2.64-2.641a1.03 1.03 0 0 0-.909-.279c-6.629 1.187-13.762-.69-18.92-5.848a21.368 21.368 0 0 1-6.27-14.556H31.88c-2.133 0-3.879 1.742-3.879 3.87v23.221c0 2.128 1.746 3.87 3.88 3.87h87.281c2.133 0 3.879-1.742 3.879-3.87v-3.06Zm-87.282-8.55c0 4.257 3.492 7.74 7.759 7.74s7.758-3.483 7.758-7.74c0-4.258-3.491-7.741-7.758-7.741-4.267 0-7.759 3.483-7.759 7.741ZM95.558 99.299H31.879c-2.133 0-3.879-1.742-3.879-3.87v-23.22c0-2.13 1.746-3.87 3.88-3.87h87.281c2.133 0 3.879 1.74 3.879 3.87V84.94c0 .7-.701 1.184-1.37.982a21.542 21.542 0 0 0-11.422-.288c-4.165 1.034-5.493 6.187-2.533 9.147l4.518 4.518h-7.865l-.585-.585c-2.477-2.477-6.343-1.93-8.225.585Zm-59.8-15.48c0 4.257 3.492 7.74 7.759 7.74s7.758-3.483 7.758-7.74c0-4.258-3.491-7.74-7.758-7.74-4.267 0-7.759 3.483-7.759 7.74Z"/></svg><svg viewBox="0 0 160 160" id="mx-empty_state_box" xmlns="http://www.w3.org/2000/svg"><path d="M119.547 36H38.6c-6.413 0-11.44 5.142-11.44 11.556l-.058 80.889C27.102 134.8 32.187 140 38.6 140h80.947c6.355 0 11.555-5.2 11.555-11.555v-80.89c0-6.413-5.2-11.555-11.555-11.555Zm0 69.333H96.436c0 9.592-7.8 17.334-17.334 17.334-9.533 0-17.333-7.742-17.333-17.334H38.6V47.556h80.947v57.777ZM118.255 9.578l4.149 17.313-6.801 1.63-4.149-17.313 6.801-1.63ZM142.853 16.614l-9.657 14.898-5.606-3.634 9.657-14.898 5.606 3.634ZM154.207 39.48l-16.694 4-1.63-6.801 16.694-4.001 1.63 6.801Z"/></svg><svg viewBox="0 0 160 160" id="mx-empty_state_module_not_found" xmlns="http://www.w3.org/2000/svg"><path d="M38.85 73.099c-.954 3.56 1.183 7.253 4.748 8.209 3.566.955 7.263-1.176 8.217-4.735.954-3.56-1.183-7.254-4.748-8.209-3.566-.955-7.264 1.175-8.217 4.735ZM79.784 90.835c0 4.493 3.682 8.17 8.183 8.17 4.5 0 8.183-3.677 8.183-8.17s-3.682-8.17-8.183-8.17c-4.5 0-8.183 3.677-8.183 8.17Z"/><path fill-rule="evenodd" clip-rule="evenodd" d="M60 32H24c-6.6 0-11.94 5.4-11.94 12L12 116c0 6.6 5.4 12 12 12h76.63a1 1 0 0 0 .864-.496l21.261-36.448c1.602-2.746 4.783-3.66 7.435-2.742.791.274 1.81-.243 1.81-1.08V56c0-6.6-5.4-12-12-12H72L60 32Zm-1.702 46.31c-.16.593-.344 1.14-.56 1.66l2.858 3.811c.274.343.244.817-.078 1.155l-5.057 5.041a.89.89 0 0 1-1.168.111L50.45 87.21a12.79 12.79 0 0 1-3.37.909L45.21 92.51a.869.869 0 0 1-1.043.51l-6.915-1.853c-.432-.115-.693-.513-.667-.968l.575-4.74c-.947-.716-1.747-1.547-2.464-2.472l-4.767.573c-.43.02-.846-.227-.956-.68l-1.858-6.895c-.102-.413.118-.874.51-1.039l4.416-1.86c.055-.564.178-1.167.327-1.724.15-.558.38-1.131.615-1.647l-2.895-3.82c-.292-.348-.24-.834.078-1.154l5.039-5.047a.89.89 0 0 1 1.168-.11l3.842 2.878c1.06-.428 2.192-.761 3.37-.908l1.871-4.392c.188-.413.612-.626 1.044-.51l6.915 1.852c.432.116.71.518.667.969l-.575 4.74c.947.716 1.747 1.547 2.464 2.471l4.767-.572c.43-.02.846.227.956.68l1.858 6.895c.102.412-.118.874-.51 1.038l-4.416 1.861a10.729 10.729 0 0 1-.327 1.724Zm46.036 12.525c0 .749-.046 1.452-.137 2.133l4.569 3.585c.432.318.546.886.273 1.385l-4.364 7.534a1.086 1.086 0 0 1-1.342.499l-5.432-2.178a15.62 15.62 0 0 1-3.683 2.133l-.818 5.764a1.06 1.06 0 0 1-1.069.93h-8.728c-.546 0-.978-.386-1.091-.93l-.819-5.764c-1.341-.545-2.546-1.271-3.682-2.133l-5.433 2.178c-.5.159-1.069 0-1.341-.499l-4.365-7.534c-.25-.454-.136-1.067.273-1.385l4.615-3.585c-.114-.68-.16-1.43-.16-2.133 0-.704.091-1.452.205-2.133l-4.615-3.586c-.454-.317-.545-.907-.272-1.384l4.341-7.534c.273-.5.841-.68 1.342-.5l5.432 2.18c1.114-.84 2.342-1.59 3.683-2.134l.818-5.764c.091-.544.523-.93 1.069-.93h8.728c.546 0 1 .386 1.092.93l.818 5.764c1.341.545 2.546 1.27 3.682 2.133l5.433-2.178c.5-.16 1.069 0 1.341.499l4.365 7.534c.25.454.136 1.067-.273 1.384l-4.614 3.586c.113.68.159 1.407.159 2.133Z"/><path d="M100.755 136.992c-.778 1.334.183 3.008 1.727 3.008h51.369c1.544 0 2.506-1.674 1.728-3.008l-25.685-44.03c-.772-1.324-2.683-1.324-3.455 0l-25.684 44.03Zm30.063-4.105h-5.303v-5.264h5.303v5.264Zm0-10.527h-5.303v-15.214h5.303v15.214Z"/></svg><svg viewBox="0 0 24 24" id="mx-ethernet_port" xmlns="http://www.w3.org/2000/svg"><path d="M7 15h2v3h2v-3h2v3h2v-3h2v3h2V9h-4V6H9v3H5v9h2v-3M4.38 3h15.25A2.37 2.37 0 0 1 22 5.38v14.25A2.37 2.37 0 0 1 19.63 22H4.38A2.37 2.37 0 0 1 2 19.63V5.38C2 4.06 3.06 3 4.38 3Z"/></svg><svg viewBox="0 0 18 21" id="mx-export" xmlns="http://www.w3.org/2000/svg"><path d="M8 3.825 6.4 5.4 5 4l4-4 4 4-1.4 1.4L10 3.825V16H8V3.825Z"/><path d="M2 21c-.55 0-1.02-.196-1.412-.588A1.925 1.925 0 0 1 0 19V9c0-.55.196-1.02.588-1.412A1.925 1.925 0 0 1 2 7h4v2H2v10h14V9h-4V7h4c.55 0 1.02.196 1.412.588C17.804 7.98 18 8.45 18 9v10c0 .55-.196 1.02-.588 1.412A1.925 1.925 0 0 1 16 21H2Z"/></svg><svg viewBox="0 0 24 24" id="mx-file-eye-outline" xmlns="http://www.w3.org/2000/svg"><path d="M17 18c.56 0 1 .44 1 1s-.44 1-1 1-1-.44-1-1 .44-1 1-1m0-3c-2.73 0-5.06 1.66-6 4 .94 2.34 3.27 4 6 4s5.06-1.66 6-4c-.94-2.34-3.27-4-6-4m0 6.5a2.5 2.5 0 0 1-2.5-2.5 2.5 2.5 0 0 1 2.5-2.5 2.5 2.5 0 0 1 2.5 2.5 2.5 2.5 0 0 1-2.5 2.5M9.27 20H6V4h7v5h5v4.07c.7.08 1.36.25 2 .49V8l-6-6H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h4.5a8.15 8.15 0 0 1-1.23-2Z"/></svg><svg viewBox="0 0 24 24" id="mx-file_cog_outline" xmlns="http://www.w3.org/2000/svg"><path d="M6 2a2 2 0 0 0-2 2v16c0 1.11.89 2 2 2h6v-2H6V4h7v5h5v3h2V8l-6-6m4 12a.26.26 0 0 0-.26.21l-.19 1.32c-.3.13-.59.29-.85.47l-1.24-.5c-.11 0-.24 0-.31.13l-1 1.73c-.06.11-.04.24.06.32l1.06.82a4.193 4.193 0 0 0 0 1l-1.06.82a.26.26 0 0 0-.06.32l1 1.73c.06.13.19.13.31.13l1.24-.5c.26.18.54.35.85.47l.19 1.32c.02.12.12.21.26.21h2c.11 0 .22-.09.24-.21l.19-1.32c.3-.13.57-.29.84-.47l1.23.5c.13 0 .26 0 .33-.13l1-1.73a.26.26 0 0 0-.06-.32l-1.07-.82c.02-.17.04-.33.04-.5 0-.17-.01-.33-.04-.5l1.06-.82a.26.26 0 0 0 .06-.32l-1-1.73c-.06-.13-.19-.13-.32-.13l-1.23.5c-.27-.18-.54-.35-.85-.47l-.19-1.32A.236.236 0 0 0 20 14m-1 3.5c.83 0 1.5.67 1.5 1.5s-.67 1.5-1.5 1.5c-.84 0-1.5-.67-1.5-1.5s.67-1.5 1.5-1.5Z"/></svg><svg viewBox="0 0 24 24" id="mx-folder-cog" xmlns="http://www.w3.org/2000/svg"><g data-name="圖層 2"><g data-name="圖層 1"><path d="M4 4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8.08a6.74 6.74 0 0 1-.08-1 7 7 0 0 1 10-6.31V8a2 2 0 0 0-2-2h-8l-2-2H4m14 10a.26.26 0 0 0-.26.21l-.19 1.32a5 5 0 0 0-.85.47l-1.24-.5c-.11 0-.24 0-.31.13l-1 1.73a.25.25 0 0 0 .06.32l1.06.82a4.18 4.18 0 0 0 0 1l-1.06.82a.26.26 0 0 0-.06.32l1 1.73c.06.13.19.13.31.13l1.24-.5a4.11 4.11 0 0 0 .85.47l.19 1.32A.25.25 0 0 0 18 24h2a.25.25 0 0 0 .24-.21l.19-1.32a5.31 5.31 0 0 0 .84-.47l1.23.5c.13 0 .26 0 .33-.13l1-1.73a.26.26 0 0 0-.06-.32l-1.07-.82a4.21 4.21 0 0 0 0-.5 2.81 2.81 0 0 0 0-.5l1.06-.82a.26.26 0 0 0 .06-.32l-1-1.73c-.06-.13-.19-.13-.32-.13l-1.23.5a4.39 4.39 0 0 0-.85-.47l-.19-1.32A.24.24 0 0 0 20 14h-2m1 3.5a1.5 1.5 0 1 1-1.5 1.5 1.5 1.5 0 0 1 1.5-1.5Z"/><path d="M0 0h24v24H0Z" style="fill:none"/></g></g></svg><svg viewBox="0 0 24 24" id="mx-form-textbox" xmlns="http://www.w3.org/2000/svg"><path d="M17 7h5v10h-5v2a1 1 0 0 0 1 1h2v2h-2.5c-.55 0-1.5-.45-1.5-1 0 .55-.95 1-1.5 1H12v-2h2a1 1 0 0 0 1-1V5a1 1 0 0 0-1-1h-2V2h2.5c.55 0 1.5.45 1.5 1 0-.55.95-1 1.5-1H20v2h-2a1 1 0 0 0-1 1v2ZM2 7h11v2H4v6h9v2H2V7Zm18 8V9h-3v6h3Z"/></svg><svg viewBox="0 0 24 24" id="mx-forward" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="M12 0C5.4 0 0 5.4 0 12s5.4 12 12 12 12-5.4 12-12S18.6 0 12 0Zm0 23C5.936 23 1 18.064 1 12S5.936 1 12 1s11 4.936 11 11-4.936 11-11 11Z"/><path d="M12.565 9.783V7l5.565 5.565-5.565 5.565v-2.782H7V9.783z"/></svg><svg viewBox="0 0 24 24" id="mx-grid" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M4.25 7.913a2.884 2.884 0 0 1-1.375-.788A2.893 2.893 0 0 1 2 5c0-.833.292-1.542.875-2.125A2.893 2.893 0 0 1 5 2c.833 0 1.542.292 2.125.875.4.4.662.858.788 1.375h1.174c.126-.517.388-.975.788-1.375A2.893 2.893 0 0 1 12 2c.833 0 1.542.292 2.125.875.4.4.662.858.788 1.375h1.174c.126-.517.388-.975.788-1.375A2.893 2.893 0 0 1 19 2c.833 0 1.542.292 2.125.875S22 4.167 22 5s-.292 1.542-.875 2.125c-.4.4-.858.662-1.375.788v1.174c.517.126.975.388 1.375.788.583.583.875 1.292.875 2.125s-.292 1.542-.875 2.125c-.4.4-.858.662-1.375.788v1.174c.517.126.975.388 1.375.788.583.583.875 1.292.875 2.125s-.292 1.542-.875 2.125A2.893 2.893 0 0 1 19 22a2.893 2.893 0 0 1-2.125-.875c-.4-.4-.662-.858-.788-1.375h-1.174a2.884 2.884 0 0 1-.788 1.375A2.893 2.893 0 0 1 12 22a2.893 2.893 0 0 1-2.125-.875c-.4-.4-.662-.858-.788-1.375H7.913a2.884 2.884 0 0 1-.788 1.375A2.893 2.893 0 0 1 5 22a2.893 2.893 0 0 1-2.125-.875A2.893 2.893 0 0 1 2 19c0-.833.292-1.542.875-2.125.4-.4.858-.662 1.375-.788v-1.174a2.884 2.884 0 0 1-1.375-.788A2.893 2.893 0 0 1 2 12c0-.833.292-1.542.875-2.125.4-.4.858-.662 1.375-.788V7.913Zm12.625-.788c.4.4.858.662 1.375.788v1.174a2.885 2.885 0 0 0-1.375.788c-.4.4-.662.858-.788 1.375h-1.174a2.885 2.885 0 0 0-.788-1.375c-.4-.4-.858-.662-1.375-.788V7.913a2.885 2.885 0 0 0 1.375-.788c.4-.4.662-.858.788-1.375h1.174c.126.517.388.975.788 1.375Zm-5.625.788a2.885 2.885 0 0 1-1.375-.788c-.4-.4-.662-.858-.788-1.375H7.913a2.884 2.884 0 0 1-.788 1.375c-.4.4-.858.662-1.375.788v1.174c.517.126.975.388 1.375.788s.662.858.788 1.375h1.174c.126-.517.388-.975.788-1.375s.858-.662 1.375-.788V7.913Zm0 7a2.884 2.884 0 0 1-1.375-.788c-.4-.4-.662-.858-.788-1.375H7.913a2.884 2.884 0 0 1-.788 1.375c-.4.4-.858.662-1.375.788v1.174c.517.126.975.388 1.375.788s.662.858.788 1.375h1.174c.126-.517.388-.975.788-1.375s.858-.662 1.375-.788v-1.174Zm1.5 1.174c.517.126.975.388 1.375.788s.662.858.788 1.375h1.174c.126-.517.388-.975.788-1.375s.858-.662 1.375-.788v-1.174a2.884 2.884 0 0 1-1.375-.788c-.4-.4-.662-.858-.788-1.375h-1.174a2.884 2.884 0 0 1-.788 1.375c-.4.4-.858.662-1.375.788v1.174Z"/></svg><svg viewBox="0 0 24 24" id="mx-horizontal-line" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M2.875 14.125A2.893 2.893 0 0 0 5 15c.833 0 1.542-.292 2.125-.875.4-.4.662-.858.788-1.375h1.174c.126.517.388.975.788 1.375A2.893 2.893 0 0 0 12 15c.833 0 1.542-.292 2.125-.875.4-.4.662-.858.788-1.375h1.174c.126.517.388.975.788 1.375A2.893 2.893 0 0 0 19 15c.833 0 1.542-.292 2.125-.875A2.893 2.893 0 0 0 22 12c0-.833-.292-1.542-.875-2.125A2.893 2.893 0 0 0 19 9c-.833 0-1.542.292-2.125.875-.4.4-.662.858-.788 1.375h-1.174a2.885 2.885 0 0 0-.788-1.375A2.893 2.893 0 0 0 12 9c-.833 0-1.542.292-2.125.875-.4.4-.662.858-.788 1.375H7.913a2.884 2.884 0 0 0-.788-1.375A2.893 2.893 0 0 0 5 9c-.833 0-1.542.292-2.125.875A2.893 2.893 0 0 0 2 12c0 .833.292 1.542.875 2.125Z"/></svg><svg viewBox="0 0 24 24" id="mx-horizontal_align_center" xmlns="http://www.w3.org/2000/svg"><path d="M22 13h-4.2l1.6 1.6L18 16l-4-4 4-4 1.4 1.4-1.6 1.6H22v2Zm-9 7h-2V4h2v16Zm-3-8-4 4-1.4-1.4L6.2 13H2v-2h4.2L4.6 9.4 6 8l4 4Z"/></svg><svg viewBox="0 0 20 20" id="mx-https" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M13.75 10c0-.567-.05-1.117-.117-1.667h2.817c.133.534.217 1.092.217 1.667 0 .308-.025.608-.067.9a4.772 4.772 0 0 1 1.6.533c.083-.466.133-.941.133-1.433 0-4.583-3.75-8.333-8.333-8.333-4.608 0-8.333 3.75-8.333 8.333s3.75 8.333 8.333 8.333c.492 0 .967-.05 1.433-.133-.383-.7-.6-1.508-.6-2.367 0-.241.025-.475.059-.708A12.367 12.367 0 0 1 10 16.633c-.692-1-1.25-2.108-1.592-3.3h3.1a4.959 4.959 0 0 1 2.159-2c.05-.441.083-.883.083-1.333ZM10 3.358c.692 1 1.25 2.117 1.592 3.309H8.408A11.35 11.35 0 0 1 10 3.358Zm-6.45 8.309A6.868 6.868 0 0 1 3.333 10c0-.575.084-1.133.217-1.667h2.817c-.067.55-.117 1.1-.117 1.667s.05 1.117.117 1.667H3.55Zm.683 1.666h2.434c.291 1.042.666 2.042 1.166 2.967a6.673 6.673 0 0 1-3.6-2.967Zm2.434-6.666H4.233a6.603 6.603 0 0 1 3.6-2.967c-.5.925-.875 1.925-1.166 2.967Zm5.283 5h-3.9c-.083-.55-.133-1.1-.133-1.667s.05-1.125.133-1.667h3.9c.075.542.133 1.1.133 1.667s-.058 1.117-.133 1.667Zm.208-7.967a6.656 6.656 0 0 1 3.609 2.967h-2.459a13.042 13.042 0 0 0-1.15-2.967Z"/><path fill-rule="evenodd" clip-rule="evenodd" d="M17.396 14.722h.312c.344 0 .625.286.625.635v3.175c0 .349-.28.635-.625.635h-3.75a.632.632 0 0 1-.625-.635v-3.175c0-.349.282-.635.625-.635h.313v-.635c0-.876.7-1.587 1.562-1.587.863 0 1.563.711 1.563 1.587v.635Zm-2.188 2.223c0 .349.282.634.625.634a.632.632 0 0 0 .625-.634.632.632 0 0 0-.625-.636.632.632 0 0 0-.625.636Zm-.343-2.858v.635h1.937v-.635a.977.977 0 0 0-.969-.984.977.977 0 0 0-.968.984Z"/></svg><svg viewBox="0 0 24 24" id="mx-ip_network_outline" xmlns="http://www.w3.org/2000/svg"><path d="M15 19a1 1 0 0 0-1-1h-1v-2h4a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H7a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h4v2h-1a1 1 0 0 0-1 1H2v2h7a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1h7v-2h-7m-8-5V4h10v10H7m3-9H8v8h2V5m4 0h-3v8h2v-2h1a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2m0 4h-1V7h1v2Z" fill-rule="nonzero"/></svg><svg viewBox="0 0 24 24" id="mx-lan" xmlns="http://www.w3.org/2000/svg"><g data-name="圖層 2"><g data-name="圖層 1"><path d="M0 0h24v24H0Z" style="fill:none"/><path d="M10 2a2 2 0 0 0-2 2v3a2 2 0 0 0 2 2h1v2H2v2h4v2H5a2 2 0 0 0-2 2v3a2 2 0 0 0 2 2h4a2 2 0 0 0 2-2v-3a2 2 0 0 0-2-2H8v-2h8v2h-1a2 2 0 0 0-2 2v3a2 2 0 0 0 2 2h4a2 2 0 0 0 2-2v-3a2 2 0 0 0-2-2h-1v-2h4v-2h-9V9h1a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2Zm0 2h4v3h-4ZM5 17h4v3H5Zm10 0h4v3h-4Z"/></g></g></svg><svg viewBox="0 0 20 20" id="mx-moxa_device_extension" xmlns="http://www.w3.org/2000/svg"><path d="M16.389 12.917V15h2.083v1.389H16.39v2.083H15V16.39h-2.083V15H15v-2.083h1.389Z"/><path fill-rule="evenodd" clip-rule="evenodd" d="M16.667 2.583 16 3.25c-1-.917-2.25-1.417-3.5-1.417S10 2.333 9 3.25l-.667-.667A5.874 5.874 0 0 1 12.5.833c1.5 0 3 .584 4.167 1.75ZM12.5 2.75c1 0 2 .417 2.75 1.167l-.667.666C14 4 13.25 3.75 12.5 3.75c-.75 0-1.5.25-2.083.833l-.667-.666c.75-.75 1.75-1.167 2.75-1.167Zm.833 6.417H15a1.667 1.667 0 0 1 1.667 1.666v.917a4.167 4.167 0 0 0-5 4.083H3.333a1.667 1.667 0 0 1-1.666-1.666v-3.334a1.667 1.667 0 0 1 1.666-1.666h8.334V5.833h1.666v3.334Zm-9.166 4.166h1.666v-1.666H4.167v1.666Zm2.916 0H8.75v-1.666H7.083v1.666Zm2.917 0h1.667v-1.666H10v1.666Z"/></svg><svg viewBox="0 0 14 14" id="mx-moxa_m" xmlns="http://www.w3.org/2000/svg"><g data-name="圖層 2"><g data-name="圖層 1"><path d="M2.63 10.55V5.72l3.44 4.83h1.84l3.47-4.86v4.86H14V3.44h-3.18l-3.83 5.4-3.84-5.4H0v7.11h2.63z"/><path style="fill:none" d="M0 0h14v14H0V0z"/></g></g></svg><svg viewBox="0 0 24 24" id="mx-network_service" xmlns="http://www.w3.org/2000/svg"><path d="M13 19h1a1 1 0 0 1 1 1h7v2h-7a1 1 0 0 1-1 1h-4a1 1 0 0 1-1-1H2v-2h7a1 1 0 0 1 1-1h1v-2H4a1 1 0 0 1-1-1v-4a1 1 0 0 1 1-1h16a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1h-7v2M4 3h16a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1m5 4h1V5H9v2m0 8h1v-2H9v2M5 5v2h2V5H5m0 8v2h2v-2H5Z"/></svg><svg viewBox="0 0 24 24" id="mx-package_update" xmlns="http://www.w3.org/2000/svg"><g data-name="圖層 2"><g data-name="圖層 1"><path style="fill:none" d="M0 0h24v24H0z"/><path d="M15.06 12.4a2.61 2.61 0 0 0 0-.4 1.75 1.75 0 0 0 0-.4l.87-.68a.22.22 0 0 0 .06-.26l-.83-1.42a.2.2 0 0 0-.25-.1l-1 .41a3.25 3.25 0 0 0-.7-.4L13 8.06a.21.21 0 0 0-.21-.17h-1.61a.19.19 0 0 0-.2.17l-.16 1.09a3.36 3.36 0 0 0-.69.4l-1-.41a.2.2 0 0 0-.25.1L8 10.66a.2.2 0 0 0 .05.26l.95.68a2.69 2.69 0 0 0 0 .4 1.8 1.8 0 0 0 0 .4l-.87.68a.22.22 0 0 0-.06.26l.83 1.42a.2.2 0 0 0 .25.1l1-.41a3.25 3.25 0 0 0 .7.4l.15 1.09a.21.21 0 0 0 .21.17h1.64a.19.19 0 0 0 .2-.17l.16-1.09a3 3 0 0 0 .69-.4l1 .41a.2.2 0 0 0 .25-.1l.85-1.42a.2.2 0 0 0-.05-.26ZM12 13.54A1.54 1.54 0 1 1 13.54 12 1.54 1.54 0 0 1 12 13.54Z"/><path d="M4 12a8 8 0 0 1 2.62-5.88L9 8.5v-6H3l2.2 2.2A10 10 0 0 0 11 22v-2a8 8 0 0 1-7-8Zm18 0a10 10 0 0 0-9-9.95v2a8 8 0 0 1 4.38 13.81L15 15.5v6h6l-2.2-2.2A9.93 9.93 0 0 0 22 12Z"/></g></g></svg><svg fill="none" viewBox="0 0 24 24" id="mx-redundancy" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M18 1h4a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1h-4a1 1 0 0 1-1-1V5H5v12h1a1 1 0 0 1 1 1v1h4v2H7v1a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1v-4a1 1 0 0 1 1-1h1V4a1 1 0 0 1 1-1h13V2a1 1 0 0 1 1-1Zm1 7v3h2V8h-2Zm-6 11h3v2h-3v-2Zm5 0h3v2h-3v-2Zm1-3v-3h2v3h-2Z" fill="currentColor"/></svg><svg viewBox="0 0 24 24" style="enable-background:new 0 0 24 24" xml:space="preserve" id="mx-remote_vpn" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0V0z" style="fill:none"/><path d="M21.3 2.8H2.7c-.3 0-.6.3-.6.6v9.1c0 3.2 1.7 6.2 4.6 7.7l5.1 2.8c.1 0 .2.1.3.1s.2 0 .3-.1l5.1-2.8c2.8-1.6 4.6-4.5 4.6-7.7V3.4c-.2-.3-.4-.6-.8-.6zM9.4 9.6l-1.5 3.7c-.1.2-.3.4-.6.4s-.5-.1-.6-.4L5.2 9.6c-.1-.3.1-.6.4-.7.3-.1.7 0 .8.3l1 2.4 1-2.4c.1-.3.5-.4.8-.3.2.1.3.4.2.7zm3.2 2.2h-1.5v1.3c0 .3-.3.6-.6.6s-.6-.3-.6-.6V9.4c0-.3.3-.6.6-.6h2.1c.8 0 1.5.7 1.5 1.5 0 .9-.7 1.5-1.5 1.5zm6.2 1.3c0 .3-.2.5-.4.6h-.2c-.2 0-.3-.1-.5-.2l-2-2.4v2c0 .3-.3.6-.6.6s-.6-.3-.6-.6V9.4c0-.3.2-.5.4-.6.2-.1.5 0 .7.2l2 2.4v-2c0-.3.3-.6.6-.6s.6.3.6.6v3.7z"/><path d="M12.6 10h-1.5v.7h1.5c.2 0 .3-.1.3-.3 0-.3-.1-.4-.3-.4z"/></svg><svg viewBox="0 0 24 24" id="mx-restart" xmlns="http://www.w3.org/2000/svg"><g data-name="圖層 2"><g data-name="圖層 1"><path d="M0 0h24v24H0Z" style="fill:none"/><path d="M13 3a9 9 0 0 0-9 9H1l3.89 3.89L5 16l4-4H6a7 7 0 1 1 2.06 4.94l-1.42 1.42A9 9 0 1 0 13 3Z"/><path d="M11.5 9v6l5-3-5-3z"/></g></g></svg><svg viewBox="0 0 24 24" id="mx-ring" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M2.375 18.625A2.893 2.893 0 0 0 4.5 19.5c.669 0 1.257-.188 1.765-.564a8.986 8.986 0 0 0 2.772 1.565c.096.62.375 1.161.838 1.624A2.893 2.893 0 0 0 12 23c.833 0 1.542-.292 2.125-.875a2.869 2.869 0 0 0 .838-1.624 8.986 8.986 0 0 0 2.772-1.565c.508.376 1.096.564 1.765.564.833 0 1.542-.292 2.125-.875A2.893 2.893 0 0 0 22.5 16.5c0-.833-.292-1.542-.875-2.125a3.008 3.008 0 0 0-.804-.582 9.045 9.045 0 0 0 0-3.586c.29-.142.558-.336.804-.582A2.893 2.893 0 0 0 22.5 7.5c0-.833-.292-1.542-.875-2.125A2.893 2.893 0 0 0 19.5 4.5c-.669 0-1.257.188-1.765.564a8.986 8.986 0 0 0-2.772-1.565 2.869 2.869 0 0 0-.838-1.624A2.893 2.893 0 0 0 12 1c-.833 0-1.542.292-2.125.875a2.869 2.869 0 0 0-.838 1.624 8.995 8.995 0 0 0-3.103 1.852A2.935 2.935 0 0 0 4.5 5c-.833 0-1.542.292-2.125.875A2.893 2.893 0 0 0 1.5 8c0 .833.292 1.542.875 2.125.223.223.464.403.723.54a9.074 9.074 0 0 0 .08 3.128c-.29.142-.557.336-.803.582A2.893 2.893 0 0 0 1.5 16.5c0 .833.292 1.542.875 2.125ZM9.192 5.09c-.787.32-1.507.77-2.133 1.324.294.466.441.995.441 1.586 0 .833-.292 1.542-.875 2.125a2.882 2.882 0 0 1-2.015.873 7.524 7.524 0 0 0 .085 2.507c.75.043 1.393.333 1.93.87.583.583.875 1.292.875 2.125 0 .451-.085.866-.256 1.244a7.453 7.453 0 0 0 1.948 1.166c.146-.38.373-.725.683-1.035A2.893 2.893 0 0 1 12 17c.833 0 1.542.292 2.125.875.31.31.537.655.683 1.035a7.454 7.454 0 0 0 1.948-1.166A2.98 2.98 0 0 1 16.5 16.5c0-.833.292-1.542.875-2.125a2.876 2.876 0 0 1 1.93-.87 7.488 7.488 0 0 0 0-3.01 2.876 2.876 0 0 1-1.93-.87A2.893 2.893 0 0 1 16.5 7.5c0-.451.085-.866.256-1.244a7.455 7.455 0 0 0-1.948-1.167 2.94 2.94 0 0 1-.683 1.036A2.893 2.893 0 0 1 12 7a2.893 2.893 0 0 1-2.125-.875 2.941 2.941 0 0 1-.683-1.035Z"/></svg><svg viewBox="0 0 24 24" id="mx-router_empty" xmlns="http://www.w3.org/2000/svg"><g data-name="圖層 2"><path d="M0 0h24v24H0z" fill="none"/><path d="m12.7 6.7.8.8a3.63 3.63 0 0 1 5 0l.8-.8a4.59 4.59 0 0 0-6.6 0zM19 13h-2V9h-2v3.46l6 6V15a2 2 0 0 0-2-2z"/><path d="M16 4.2a6.25 6.25 0 0 1 4.2 1.7l.8-.8a7 7 0 0 0-10 0l.8.8A6.25 6.25 0 0 1 16 4.2zm-14.11.24L10.46 13H5a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h13.46l1.11 1.11 1.27-1.27L3.17 3.16zM8 18H6v-2h2zm5-2h.46L15 17.54V18h-2zm-1.5 2h-2v-2h2z"/></g></svg><svg viewBox="0 0 24 24" id="mx-safety_check" xmlns="http://www.w3.org/2000/svg"><path d="M12 1 3 4.3v6.699C3 16.554 6.836 21.735 12 23c5.164-1.265 9-6.446 9-12.001V4.3L12 1Zm0 16.5c-3.105 0-5.625-2.464-5.625-5.5S8.895 6.5 12 6.5s5.625 2.464 5.625 5.5-2.52 5.5-5.625 5.5Zm1.856-2.915-2.418-2.365V8.7h1.124v3.069l2.082 2.035-.788.781Z"/></svg><svg viewBox="0 0 24 24" id="mx-scan_device" xmlns="http://www.w3.org/2000/svg"><path d="M17 2v2h3v3h2V2h-5ZM18.29 7.14l.62-.62a5.4 5.4 0 0 0-7.69 0l.61.62a4.64 4.64 0 0 1 6.46 0Z"/><path d="M17.6 7.75a3.55 3.55 0 0 0-5.08 0l.62.62a2.79 2.79 0 0 1 3.85 0l.61-.62Z"/><path fill-rule="evenodd" clip-rule="evenodd" d="M17.37 12.6h-1.54V9.52h-1.54v3.08H6.6a1.54 1.54 0 0 0-1.54 1.54v3.08a1.55 1.55 0 0 0 1.54 1.54h10.77a1.55 1.55 0 0 0 1.54-1.54v-3.08a1.54 1.54 0 0 0-1.54-1.54Zm-8.46 3.85H7.37v-1.54h1.54v1.54Zm2.69 0h-1.54v-1.54h1.54v1.54Zm2.69 0h-1.54v-1.54h1.54v1.54Z"/><path d="M17 20h3v-3h2v5h-5v-2ZM4 17H2v5h5v-2H4v-3ZM4 7H2V2h5v2H4v3Z"/></svg><svg fill="none" viewBox="0 0 24 24" id="mx-switching" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M19.941 19.503V4.497v15.006ZM3 4.5C3 3.672 3.593 3 4.324 3h15.353C20.407 3 21 3.672 21 4.5v15c0 .828-.593 1.5-1.323 1.5H4.324C3.593 21 3 20.328 3 19.5v-15Zm5.576 4.2H11.4V6.9H8.576V4.8L5.4 7.8l3.176 3V8.7Zm6.848-.6H12.6v1.8h2.824V12L18.6 9l-3.177-3v2.1Zm-6.848 7.8H11.4v-1.8H8.576V12L5.4 15l3.176 3v-2.1Zm4.024-.6h2.824v-2.1l3.176 3-3.177 3v-2.1H12.6v-1.8Z" fill="currentColor"/></svg><svg viewBox="0 0 24 24" id="mx-system-dashboard" xmlns="http://www.w3.org/2000/svg"><g data-name="圖層 2"><g data-name="圖層 1"><path d="M0 0h24v24H0Z" style="fill:none"/><path d="m2 12 10-9 10 9h-3v8H5v-8Zm13.27 4.77a.75.75 0 0 0 .23-.55v-1.55a.79.79 0 0 0-.78-.78h-.78v-1.56h-.77v1.56H9.28a.79.79 0 0 0-.78.78v1.55a.79.79 0 0 0 .78.78h5.44a.75.75 0 0 0 .55-.23ZM12.86 11a2 2 0 0 0-.59.41l.26.31a1.41 1.41 0 0 1 .46-.3 1.65 1.65 0 0 1 .54-.09 1.26 1.26 0 0 1 .54.09 1.41 1.41 0 0 1 .46.3l.31-.31a2 2 0 0 0-.59-.41 1.8 1.8 0 0 0-1.39 0Zm.7-.56a2.38 2.38 0 0 1 1.63.66l.36-.31a2.62 2.62 0 0 0-.89-.61 2.7 2.7 0 0 0-1.05-.18 2.66 2.66 0 0 0-1.08.2 2.77 2.77 0 0 0-.92.62l.31.31a2.38 2.38 0 0 1 1.64-.66Zm-3.89 4.62h.78v.78h-.78Zm2.72 0h.78v.78h-.78Zm-.58 0H11v.78h.78Z" style="fill-rule:evenodd"/></g></g></svg><svg viewBox="0 0 20 20" id="mx-tag-search" xmlns="http://www.w3.org/2000/svg"><path d="m17.842 9.65-7.5-7.5c-.3-.3-.717-.483-1.175-.483H3.333a1.66 1.66 0 0 0-1.666 1.666v5.834c0 .458.183.875.491 1.175l7.492 7.5c.308.3.725.491 1.183.491.459 0 .875-.191 1.175-.491l.35-.342c-2.691-.083-4.858-2.283-4.858-5 0-2.758 2.242-5 5-5 2.717 0 4.917 2.167 5 4.858l.342-.35c.308-.3.491-.716.491-1.175 0-.466-.191-.883-.491-1.183ZM4.583 5.833c-.691 0-1.25-.558-1.25-1.25 0-.691.559-1.25 1.25-1.25.692 0 1.25.559 1.25 1.25 0 .692-.558 1.25-1.25 1.25Zm8.009 3.009a3.734 3.734 0 0 1 3.75 3.75c0 .741-.209 1.425-.575 1.991l2.566 2.592-1.158 1.158-2.592-2.558a3.755 3.755 0 0 1-1.991.567 3.734 3.734 0 0 1-3.75-3.75 3.734 3.734 0 0 1 3.75-3.75Zm0 1.666a2.084 2.084 0 1 0 2.083 2.084 2.074 2.074 0 0 0-2.083-2.084Z"/></svg><svg viewBox="0 0 24 24" id="mx-ungroup" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10c.488 0 .968-.035 1.438-.103A5.976 5.976 0 0 1 12 18c0-1.75.749-3.324 1.943-4.42.356-.515.9-.89 1.533-1.025A5.978 5.978 0 0 1 18 12c1.488 0 2.849.541 3.897 1.438.068-.47.103-.95.103-1.438 0-5.52-4.48-10-10-10ZM8 17.5a2.5 2.5 0 0 1 0-5 2.5 2.5 0 0 1 0 5ZM9.5 8a2.5 2.5 0 0 1 5 0 2.5 2.5 0 0 1-5 0Z"/><path d="m20.12 14.47 1.42 1.41L19.41 18l2.13 2.12-1.42 1.42L18 19.41l-2.12 2.13-1.41-1.42L16.59 18l-2.12-2.12 1.41-1.41L18 16.59l2.12-2.12Z"/></svg><svg viewBox="0 0 14 14" id="mx-verified_error" xmlns="http://www.w3.org/2000/svg"><path d="m7 .583 5.25 2.334v3.5c0 3.237-2.24 6.265-5.25 7-3.01-.735-5.25-3.763-5.25-7v-3.5L7 .583ZM9.01 4 6.918 6.094 4.822 4 4 4.822l2.094 2.095L4 9.01l.822.822L6.918 7.74 9.01 9.833l.822-.822L7.74 6.917l2.094-2.095L9.011 4Z"/></svg><svg viewBox="0 0 14 14" id="mx-verified_unknow" xmlns="http://www.w3.org/2000/svg"><path d="M7 .583 1.75 2.917v3.5c0 3.237 2.24 6.265 5.25 7 3.01-.735 5.25-3.763 5.25-7v-3.5L7 .583Zm.583 10.5H6.417V9.917h1.166v1.166Zm1.208-4.52-.525.536c-.42.426-.683.776-.683 1.651H6.417v-.292c0-.641.262-1.225.682-1.65l.723-.736a1.14 1.14 0 0 0 .345-.822A1.17 1.17 0 0 0 7 4.083 1.17 1.17 0 0 0 5.833 5.25H4.667a2.333 2.333 0 1 1 4.666 0c0 .513-.21.98-.542 1.313Z"/></svg><svg viewBox="0 0 24 24" id="mx-vertical-line" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M9.875 2.875A2.893 2.893 0 0 0 9 5c0 .833.292 1.542.875 2.125.4.4.858.662 1.375.788v1.174a2.885 2.885 0 0 0-1.375.788A2.893 2.893 0 0 0 9 12c0 .833.292 1.542.875 2.125.4.4.858.662 1.375.788v1.174a2.884 2.884 0 0 0-1.375.788A2.893 2.893 0 0 0 9 19c0 .833.292 1.542.875 2.125A2.893 2.893 0 0 0 12 22c.833 0 1.542-.292 2.125-.875A2.893 2.893 0 0 0 15 19c0-.833-.292-1.542-.875-2.125-.4-.4-.858-.662-1.375-.788v-1.174a2.884 2.884 0 0 0 1.375-.788A2.893 2.893 0 0 0 15 12c0-.833-.292-1.542-.875-2.125-.4-.4-.858-.662-1.375-.788V7.913a2.885 2.885 0 0 0 1.375-.788A2.893 2.893 0 0 0 15 5c0-.833-.292-1.542-.875-2.125A2.893 2.893 0 0 0 12 2c-.833 0-1.542.292-2.125.875Z"/></svg><svg fill="none" viewBox="0 0 24 24" id="mx-vertical_align_center" xmlns="http://www.w3.org/2000/svg"><path d="M11 22v-4.2l-1.6 1.6L8 18l4-4 4 4-1.4 1.4-1.6-1.6V22h-2Zm-7-9v-2h16v2H4Zm8-3L8 6l1.4-1.4L11 6.2V2h2v4.2l1.6-1.6L16 6l-4 4Z" fill="#000"/></svg><svg viewBox="0 0 24 24" id="mx-wan" xmlns="http://www.w3.org/2000/svg"><path d="M12 2a8 8 0 0 0-8 8c0 4.03 3 7.42 7 7.93V19h-1a1 1 0 0 0-1 1H2v2h7a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1h7v-2h-7a1 1 0 0 0-1-1h-1v-1.07c4-.5 7-3.9 7-7.93a8 8 0 0 0-8-8m0 2s.74 1.28 1.26 3h-2.52C11.26 5.28 12 4 12 4m-2.23.43c-.27.5-.68 1.41-1.03 2.57H6.81C7.5 5.84 8.5 4.93 9.77 4.43m4.46.01c1.27.5 2.27 1.4 2.96 2.56h-1.93c-.35-1.16-.76-2.07-1.03-2.56M6.09 9h2.23c-.04.33-.07.66-.07 1 0 .34.03.67.07 1H6.09a5.551 5.551 0 0 1 0-2m4.23 0h3.36c.04.33.07.66.07 1 0 .34-.03.67-.07 1h-3.36c-.04-.33-.07-.66-.07-1 0-.34.03-.67.07-1m5.36 0h2.23a5.551 5.551 0 0 1 0 2h-2.23c.04-.33.07-.66.07-1 0-.34-.03-.67-.07-1m-8.87 4h1.93c.35 1.16.76 2.07 1.03 2.56-1.27-.5-2.27-1.4-2.96-2.56m3.93 0h2.52c-.52 1.72-1.26 3-1.26 3s-.74-1.28-1.26-3m4.52 0h1.93c-.69 1.16-1.69 2.07-2.96 2.57.27-.5.68-1.41 1.03-2.57Z"/></svg><svg viewBox="0 0 24 24" id="my_location" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M12 8c-2.21 0-4 1.79-4 4s1.79 4 4 4 4-1.79 4-4-1.79-4-4-4zm8.94 3A8.994 8.994 0 0 0 13 3.06V1h-2v2.06A8.994 8.994 0 0 0 3.06 11H1v2h2.06A8.994 8.994 0 0 0 11 20.94V23h2v-2.06A8.994 8.994 0 0 0 20.94 13H23v-2h-2.06zM12 19c-3.87 0-7-3.13-7-7s3.13-7 7-7 7 3.13 7 7-3.13 7-7 7z"/></svg><svg viewBox="0 0 24 24" id="navigate_before" xmlns="http://www.w3.org/2000/svg"><path d="M15.41 7.41 14 6l-6 6 6 6 1.41-1.41L10.83 12z"/><path d="M0 0h24v24H0z" fill="none"/></svg><svg viewBox="0 0 24 24" id="navigate_next" xmlns="http://www.w3.org/2000/svg"><path d="M10 6 8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"/><path d="M0 0h24v24H0z" fill="none"/></svg><svg viewBox="0 0 24 24" id="near_me" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M21 3 3 10.53v.98l6.84 2.65L12.48 21h.98L21 3z"/></svg><svg viewBox="0 -960 960 960" id="network_manage" xmlns="http://www.w3.org/2000/svg"><path d="M339-262q22-22 49.5-36t58.5-19q-5 19-8 38t-3 39q0 24 3.5 47t11.5 44L339-262Zm-85-84-84-86q62-62 142-95t168-33q49 0 96 10.5t90 30.5q-44 8-81.5 29T517-438q-9-1-18.5-1.5T480-440q-64 0-122.5 24.5T254-346ZM84-516 0-600q95-97 219.5-148.5T480-800q136 0 260.5 51.5T960-600l-84 84q-79-79-181.5-121.5T480-680q-112 0-214.5 42.5T84-516Zm676 76 12 60q12 5 22.5 10.5T816-356l58-18 40 68-46 40q2 12 2 26t-2 26l46 40-40 68-58-18q-11 8-21.5 13.5T772-100l-12 60h-80l-12-60q-12-5-22.5-10.5T624-124l-58 18-40-68 46-40q-2-12-2-26t2-26l-46-40 40-68 58 18q11-8 21.5-13.5T668-380l12-60h80Zm-40 120q-33 0-56.5 23.5T640-240q0 33 23.5 56.5T720-160q33 0 56.5-23.5T800-240q0-33-23.5-56.5T720-320Z"/></svg><svg viewBox="0 0 24 24" id="notifications" xmlns="http://www.w3.org/2000/svg"><path d="M12 22c1.1 0 2-.9 2-2h-4a2 2 0 0 0 2 2zm6-6v-5c0-3.07-1.64-5.64-4.5-6.32V4c0-.83-.67-1.5-1.5-1.5s-1.5.67-1.5 1.5v.68C7.63 5.36 6 7.92 6 11v5l-2 2v1h16v-1l-2-2z"/></svg><svg viewBox="0 0 24 24" id="notifications_active" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M7.58 4.08 6.15 2.65C3.75 4.48 2.17 7.3 2.03 10.5h2a8.445 8.445 0 0 1 3.55-6.42zm12.39 6.42h2c-.15-3.2-1.73-6.02-4.12-7.85l-1.42 1.43a8.495 8.495 0 0 1 3.54 6.42zM18 11c0-3.07-1.64-5.64-4.5-6.32V4c0-.83-.67-1.5-1.5-1.5s-1.5.67-1.5 1.5v.68C7.63 5.36 6 7.92 6 11v5l-2 2v1h16v-1l-2-2v-5zm-6 11c.14 0 .27-.01.4-.04.65-.14 1.18-.58 1.44-1.18.1-.24.15-.5.15-.78h-4c.01 1.1.9 2 2.01 2z"/></svg><svg viewBox="0 0 24 24" id="notifications_none" xmlns="http://www.w3.org/2000/svg"><path d="M12 22c1.1 0 2-.9 2-2h-4c0 1.1.9 2 2 2Zm6-6v-5c0-3.07-1.63-5.64-4.5-6.32V4c0-.83-.67-1.5-1.5-1.5s-1.5.67-1.5 1.5v.68C7.64 5.36 6 7.92 6 11v5l-2 2v1h16v-1l-2-2Zm-2 1H8v-6c0-2.48 1.51-4.5 4-4.5s4 2.02 4 4.5v6Z"/></svg><svg viewBox="0 0 24 24" id="notifications_off" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M20 18.69 7.84 6.14 5.27 3.49 4 4.76l2.8 2.8v.01c-.52.99-.8 2.16-.8 3.42v5l-2 2v1h13.73l2 2L21 19.72l-1-1.03zM12 22c1.11 0 2-.89 2-2h-4c0 1.11.89 2 2 2zm6-7.32V11c0-3.08-1.64-5.64-4.5-6.32V4c0-.83-.67-1.5-1.5-1.5s-1.5.67-1.5 1.5v.68c-.15.03-.29.08-.42.12-.1.03-.2.07-.3.11h-.01c-.01 0-.01 0-.02.01-.23.09-.46.2-.68.31 0 0-.01 0-.01.01L18 14.68z"/></svg><svg fill="none" viewBox="0 0 48 48" id="nport" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="m25.2 21.868-.722-.214c.055-1.481-1.49-2.61-2.882-2.116a2.19 2.19 0 0 0-1.438 1.586l-.913 4.256h1.253l.438-2.044c.45.37 1.052.504 1.621.434.602-.075 1.182-.38 1.52-.893l.692.205a2.19 2.19 0 0 0 2.185 2.278h.001c2.873-.049 2.875-4.324 0-4.373h-.001c-.719 0-1.356.347-1.754.88Zm-2.91-1.22c1.265.024 1.263 1.903 0 1.926-1.267-.033-1.271-1.888 0-1.926Zm4.664 1.563c1.264.023 1.264 1.902 0 1.926-1.266-.024-1.262-1.904 0-1.926Z" fill="#191C1C"/><path d="M15.023 19.428h-.13l-.017.08-1.234 5.75-.025.122h1.378l.65-3.032 2.786 3.12.041-.193.948-4.418.306-1.429h-1.378l-.644 3.002-2.68-3.002Z" fill="#191C1C"/><path fill-rule="evenodd" clip-rule="evenodd" d="M33.925 20.765h-1.252l-.145.678c-.434.012-1.006.09-1.433.305a1.635 1.635 0 0 0-.487-.515l-.026-.018h-1.346l-.046.189c.25.13.445.38.556.686.112.306.137.661.058.992l-.212.988-.255 1.188-.028.122h1.254l.4-1.87c.067-.262.282-.458.56-.592.234-.112.5-.174.73-.194l.253-1.18-.366 1.706c-.16.61-.082 1.115.234 1.474.313.355.839.543 1.524.569l.084.003.26-1.217-.127.003-.081.002a4.49 4.49 0 0 1-.387.001c-.125-.008-.2-.03-.244-.065-.04-.03-.073-.085-.081-.201-.009-.119.01-.289.062-.531l.008-.034.114-.536h1.028l.274-1.277H33.78l.145-.676Z" fill="#191C1C"/><path fill-rule="evenodd" clip-rule="evenodd" d="M11.9 4.8a2 2 0 0 0-2 2v31.84a2 2 0 0 0 2 2h4.4v1.56a1 1 0 0 0 1 1h1.84a1 1 0 0 0 1-1v-1.56h1.28v1.56a1 1 0 0 0 1 1h3.12a1 1 0 0 0 1-1v-1.56h1.28v1.56a1 1 0 0 0 1 1h1.84a1 1 0 0 0 1-1v-1.56h4.4a2 2 0 0 0 2-2V6.8a2 2 0 0 0-2-2H11.9Zm24.16 2H11.9v31.84h24.16V6.8Z" fill="#191C1C"/></svg><svg viewBox="0 0 24 24" id="outlined-feedback" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M20 2H4c-1.1 0-1.99.9-1.99 2L2 22l4-4h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm0 14H5.17l-.59.59-.58.58V4h16v12zm-9-4h2v2h-2zm0-6h2v4h-2z"/></svg><svg viewBox="0 0 16 20" id="outlined-gpp_bad" xmlns="http://www.w3.org/2000/svg"><path d="M5.9 13.5 8 11.4l2.1 2.1 1.4-1.4L9.4 10l2.1-2.1-1.4-1.4L8 8.6 5.9 6.5 4.5 7.9 6.6 10l-2.1 2.1 1.4 1.4ZM8 20c-2.317-.583-4.23-1.913-5.737-3.988C.754 13.938 0 11.633 0 9.1V3l8-3 8 3v6.1c0 2.533-.754 4.838-2.262 6.912C12.229 18.087 10.317 19.418 8 20Zm0-2.1c1.733-.55 3.167-1.65 4.3-3.3S14 11.117 14 9.1V4.375l-6-2.25-6 2.25V9.1c0 2.017.567 3.85 1.7 5.5s2.567 2.75 4.3 3.3Z"/></svg><svg viewBox="0 0 24 24" id="outlined-near_me" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0V0z" fill="none"/><path d="m17.27 6.73-4.24 10.13-1.32-3.42-.32-.83-.82-.32-3.43-1.33 10.13-4.23M21 3 3 10.53v.98l6.84 2.65L12.48 21h.98L21 3z"/></svg><svg viewBox="0 0 24 24" id="outlined-push_pin" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="M14 4v5c0 1.12.37 2.16 1 3H9c.65-.86 1-1.9 1-3V4h4m3-2H7c-.55 0-1 .45-1 1s.45 1 1 1h1v5c0 1.66-1.34 3-3 3v2h5.97v7l1 1 1-1v-7H19v-2c-1.66 0-3-1.34-3-3V4h1c.55 0 1-.45 1-1s-.45-1-1-1z"/></svg><svg viewBox="0 0 24 24" id="outlined-stop_circle" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8zm4-4H8V8h8v8z"/></svg><svg viewBox="0 0 16 20" id="outlined-verified_user" xmlns="http://www.w3.org/2000/svg"><path d="M6.95 13.55 12.6 7.9l-1.425-1.425L6.95 10.7l-2.1-2.1-1.425 1.425L6.95 13.55ZM8 20c-2.317-.583-4.23-1.913-5.737-3.988C.754 13.938 0 11.633 0 9.1V3l8-3 8 3v6.1c0 2.533-.754 4.838-2.262 6.912C12.229 18.087 10.317 19.418 8 20Zm0-2.1c1.733-.55 3.167-1.65 4.3-3.3S14 11.117 14 9.1V4.375l-6-2.25-6 2.25V9.1c0 2.017.567 3.85 1.7 5.5s2.567 2.75 4.3 3.3Z"/></svg><svg viewBox="0 0 24 24" id="outlined-view_week" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="M20 4H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zM8 18H4V6h4v12zm6 0h-4V6h4v12zm6 0h-4V6h4v12z"/></svg><svg viewBox="0 0 24 24" id="pan_tool" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="M23 5.5V20c0 2.2-1.8 4-4 4h-7.3c-1.08 0-2.1-.43-2.85-1.19L1 14.83s1.26-1.23 1.3-1.25c.22-.19.49-.29.79-.29.22 0 .42.06.6.16.04.01 4.31 2.46 4.31 2.46V4c0-.83.67-1.5 1.5-1.5S11 3.17 11 4v7h1V1.5c0-.83.67-1.5 1.5-1.5S15 .67 15 1.5V11h1V2.5c0-.83.67-1.5 1.5-1.5s1.5.67 1.5 1.5V11h1V5.5c0-.83.67-1.5 1.5-1.5s1.5.67 1.5 1.5z"/></svg><svg viewBox="0 0 24 24" id="pan_tool-outline" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M18 24h-6.55c-1.08 0-2.14-.45-2.89-1.23l-7.3-7.61 2.07-1.83c.62-.55 1.53-.66 2.26-.27L8 14.34V4.79a2.5 2.5 0 0 1 3.01-2.45C11.1 1.04 12.18.01 13.5.01c.86 0 1.61.43 2.06 1.09.29-.12.61-.18.94-.18a2.5 2.5 0 0 1 2.5 2.5v.28a2.5 2.5 0 0 1 3 2.45V20c0 2.21-1.79 4-4 4zM4.14 15.28l5.86 6.1c.38.39.9.62 1.44.62H18c1.1 0 2-.9 2-2V6.15c0-.28-.22-.5-.5-.5s-.5.22-.5.5V12h-2V3.42c0-.28-.22-.5-.5-.5s-.5.22-.5.5V12h-2V2.51c0-.28-.22-.5-.5-.5s-.5.22-.5.5V12h-2V4.79c0-.28-.22-.5-.5-.5s-.5.23-.5.5v12.87l-5.35-2.83-.51.45z"/></svg><svg viewBox="0 -960 960 960" id="panorama_fish_eye" xmlns="http://www.w3.org/2000/svg"><path d="M480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320Z"/></svg><svg viewBox="0 0 24 24" id="pause_circle" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-1 14H9V8h2v8zm4 0h-2V8h2v8z"/></svg><svg viewBox="0 0 24 24" id="pending_actions" xmlns="http://www.w3.org/2000/svg"><path d="M17 12c-2.76 0-5 2.24-5 5s2.24 5 5 5 5-2.24 5-5-2.24-5-5-5Zm1.65 7.35L16.5 17.2V14h1v2.79l1.85 1.85-.7.71ZM18 3h-3.18C14.4 1.84 13.3 1 12 1c-1.3 0-2.4.84-2.82 2H6c-1.1 0-2 .9-2 2v15c0 1.1.9 2 2 2h6.11a6.743 6.743 0 0 1-1.42-2H6V5h2v3h8V5h2v5.08c.71.1 1.38.31 2 .6V5c0-1.1-.9-2-2-2Zm-6 2c-.55 0-1-.45-1-1s.45-1 1-1 1 .45 1 1-.45 1-1 1Z"/></svg><svg viewBox="0 0 24 24" id="person" xmlns="http://www.w3.org/2000/svg"><path d="M12 12c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm0 2c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4z"/><path d="M0 0h24v24H0z" fill="none"/></svg><svg viewBox="0 0 24 24" id="phone" xmlns="http://www.w3.org/2000/svg"><path d="M6.62 10.79c1.44 2.83 3.76 5.14 6.59 6.59l2.2-2.2c.27-.27.67-.36 1.02-.24 1.12.37 2.33.57 3.57.57.55 0 1 .45 1 1V20c0 .55-.45 1-1 1-9.39 0-17-7.61-17-17 0-.55.45-1 1-1h3.5c.55 0 1 .45 1 1 0 1.25.2 2.45.57 3.57.11.35.03.74-.25 1.02l-2.2 2.2Z"/></svg><svg viewBox="0 0 18 21" id="place_item" xmlns="http://www.w3.org/2000/svg"><path d="M2 21c-.55 0-1.02-.196-1.413-.587A1.926 1.926 0 0 1 0 19V9c0-.55.196-1.02.588-1.412A1.926 1.926 0 0 1 2 7h4v2H2v10h14V9h-4V7h4c.55 0 1.02.196 1.413.588.391.391.587.862.587 1.412v10c0 .55-.196 1.02-.587 1.413A1.926 1.926 0 0 1 16 21H2Zm7-5-4-4 1.4-1.4L8 12.175V0h2v12.175l1.6-1.575L13 12l-4 4Z"/></svg><svg viewBox="0 0 24 24" id="play_circle" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zM9.5 16.5v-9l7 4.5-7 4.5z"/></svg><svg viewBox="0 0 24 24" id="policy" xmlns="http://www.w3.org/2000/svg"><path d="M12 15a3 3 0 1 0 0-6 3 3 0 0 0 0 6Z"/><path d="m21 5-9-4-9 4v6c0 5.55 3.84 10.74 9 12 2.3-.56 4.33-1.9 5.88-3.71l-3.12-3.12a4.994 4.994 0 0 1-6.29-.64 5.003 5.003 0 0 1 0-7.07 5.003 5.003 0 0 1 7.07 0 5.006 5.006 0 0 1 .64 6.29l2.9 2.9C20.29 15.69 21 13.38 21 11V5Z"/></svg><svg viewBox="0 0 24 24" id="power_settings_new" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="M13 3h-2v10h2V3zm4.83 2.17-1.42 1.42A6.92 6.92 0 0 1 19 12c0 3.87-3.13 7-7 7A6.995 6.995 0 0 1 7.58 6.58L6.17 5.17A8.932 8.932 0 0 0 3 12a9 9 0 0 0 18 0c0-2.74-1.23-5.18-3.17-6.83z"/></svg><svg viewBox="0 0 24 24" id="priority_high" xmlns="http://www.w3.org/2000/svg"><circle cx="12" cy="19" r="2"/><path d="M10 3h4v12h-4z"/><path d="M0 0h24v24H0z" fill="none"/></svg><svg viewBox="0 0 24 24" id="project_type_agt" xmlns="http://www.w3.org/2000/svg"><g data-name="圖層 2"><g data-name="圖層 1"><path d="M0 0h24v24H0Z" style="fill:none"/><path d="M19 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V5a2 2 0 0 0-2-2Zm-.5 10.74-2.35 2.16-3.45-.39v-1.09h3.14l.53-.63a4.57 4.57 0 0 0 .35-1.79 4.41 4.41 0 0 0-.2-1.33 5.68 5.68 0 0 1-1.32.15 5.87 5.87 0 0 1-4.82-2.5 6 6 0 0 1-3.08 3.17 2.91 2.91 0 0 0 0 .51 4.73 4.73 0 0 0 4.7 4.73 4.65 4.65 0 0 0 1.93-.42c.37.71.54 1.06.53 1.06a8.37 8.37 0 0 1-2.46.53 5.9 5.9 0 0 1-4.18-1.73 5.79 5.79 0 0 1-1.46-2.4H5.5v-2.95h.71a5.9 5.9 0 0 1 10-3 5.82 5.82 0 0 1 1.61 3h.72ZM13 12.59a.74.74 0 0 1 .74-.74.74.74 0 0 1 0 1.48.74.74 0 0 1-.74-.74Zm-2.07 0a.76.76 0 0 1-.21.52.74.74 0 1 1 0-1 .78.78 0 0 1 .28.48Z"/></g></g></svg><svg viewBox="0 0 24 24" id="project_type_tpe" xmlns="http://www.w3.org/2000/svg"><g data-name="圖層 2"><g data-name="圖層 1"><path d="M0 0h24v24H0Z" style="fill:none"/><path d="M10.02 12.71H8.4v3.65h1.35v-2.48l1.77 2.48h.95l1.78-2.5v2.5h1.35v-3.65h-1.63l-1.98 2.77-1.97-2.77z"/><path d="M19 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V5a2 2 0 0 0-2-2Zm-1 9.6-1.1-.83v5.75H7.09v-5.75L6 12.61l-.74-1L12 6.48l6.75 5.15Z"/></g></g></svg><svg viewBox="0 0 24 24" id="push_pin" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="M16 9V4h1c.55 0 1-.45 1-1s-.45-1-1-1H7c-.55 0-1 .45-1 1s.45 1 1 1h1v5c0 1.66-1.34 3-3 3v2h5.97v7l1 1 1-1v-7H19v-2c-1.66 0-3-1.34-3-3z" fill-rule="evenodd"/></svg><svg viewBox="0 0 24 24" id="redo" xmlns="http://www.w3.org/2000/svg"><path d="M18.4 10.6C16.55 8.99 14.15 8 11.5 8c-4.65 0-8.58 3.03-9.96 7.22L3.9 16a8.002 8.002 0 0 1 7.6-5.5c1.95 0 3.73.72 5.12 1.88L13 16h9V7l-3.6 3.6Z"/></svg><svg viewBox="0 0 24 24" id="redo_copy" xmlns="http://www.w3.org/2000/svg"><path d="M18.4 10.6C16.55 8.99 14.15 8 11.5 8c-4.65 0-8.58 3.03-9.96 7.22L3.9 16a8.002 8.002 0 0 1 7.6-5.5c1.95 0 3.73.72 5.12 1.88L13 16h9V7l-3.6 3.6Z"/></svg><svg viewBox="0 0 24 24" id="refresh" xmlns="http://www.w3.org/2000/svg"><path d="M17.65 6.35A7.958 7.958 0 0 0 12 4c-4.42 0-7.99 3.58-7.99 8s3.57 8 7.99 8c3.73 0 6.84-2.55 7.73-6h-2.08A5.99 5.99 0 0 1 12 18c-3.31 0-6-2.69-6-6s2.69-6 6-6c1.66 0 3.14.69 4.22 1.78L13 11h7V4l-2.35 2.35z"/><path d="M0 0h24v24H0z" fill="none"/></svg><svg viewBox="0 0 24 24" id="remove" xmlns="http://www.w3.org/2000/svg"><path d="M19 13H5v-2h14v2Z"/></svg><svg viewBox="0 0 24 24" id="remove_circle" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm5 11H7v-2h10v2z"/></svg><svg viewBox="0 0 24 24" id="remove_copy" xmlns="http://www.w3.org/2000/svg"><path d="M19 13H5v-2h14v2Z"/></svg><svg viewBox="0 0 24 24" id="restart_alt" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M12 5V2L8 6l4 4V7c3.31 0 6 2.69 6 6 0 2.97-2.17 5.43-5 5.91v2.02c3.95-.49 7-3.85 7-7.93 0-4.42-3.58-8-8-8zM6 13c0-1.65.67-3.15 1.76-4.24L6.34 7.34A8.014 8.014 0 0 0 4 13c0 4.08 3.05 7.44 7 7.93v-2.02c-2.83-.48-5-2.94-5-5.91z"/></svg><svg viewBox="0 0 24 24" id="room_preferences" xmlns="http://www.w3.org/2000/svg"><path d="M14 11.26V6h3v4h2V4h-5V3H5v16H3v2h9.26A6.963 6.963 0 0 1 11 17c0-2.38 1.19-4.47 3-5.74ZM10 11h2v2h-2v-2Zm11.69 5.37 1.14-1-1-1.73-1.45.49c-.32-.27-.68-.48-1.08-.63L19 12h-2l-.3 1.49c-.4.15-.76.36-1.08.63l-1.45-.49-1 1.73 1.14 1c-.08.5-.08.76 0 1.26l-1.14 1 1 1.73 1.45-.49c.32.27.68.48 1.08.63L17 22h2l.3-1.49c.4-.15.76-.36 1.08-.63l1.45.49 1-1.73-1.14-1c.08-.51.08-.77 0-1.27ZM18 19c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2Z"/></svg><svg viewBox="0 0 24 24" id="router" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="m20.2 5.9.8-.8C19.6 3.7 17.8 3 16 3s-3.6.7-5 2.1l.8.8C13 4.8 14.5 4.2 16 4.2s3 .6 4.2 1.7zm-.9.8c-.9-.9-2.1-1.4-3.3-1.4s-2.4.5-3.3 1.4l.8.8c.7-.7 1.6-1 2.5-1 .9 0 1.8.3 2.5 1l.8-.8zM19 13h-2V9h-2v4H5c-1.1 0-2 .9-2 2v4c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2v-4c0-1.1-.9-2-2-2zM8 18H6v-2h2v2zm3.5 0h-2v-2h2v2zm3.5 0h-2v-2h2v2z"/></svg><svg viewBox="0 0 24 24" id="running_with_errors" xmlns="http://www.w3.org/2000/svg"><path d="M22 10v8h-2v-8h2Zm-2 10v2h2v-2h-2Zm-2-2.71A7.99 7.99 0 0 1 12 20c-4.41 0-8-3.59-8-8s3.59-8 8-8v9l7.55-7.55A9.965 9.965 0 0 0 12 2C6.48 2 2 6.48 2 12s4.48 10 10 10c2.25 0 4.33-.74 6-2v-2.71Z"/></svg><svg viewBox="0 0 24 24" id="save" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M17 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14c1.1 0 2-.9 2-2V7l-4-4zm-5 16c-1.66 0-3-1.34-3-3s1.34-3 3-3 3 1.34 3 3-1.34 3-3 3zm3-10H5V5h10v4z"/></svg><svg viewBox="0 0 24 24" id="schedule" xmlns="http://www.w3.org/2000/svg"><path d="M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z"/><path d="M0 0h24v24H0z" fill="none"/><path d="M12.5 7H11v6l5.25 3.15.75-1.23-4.5-2.67z"/></svg><svg viewBox="0 0 24 24" id="schedule_send" xmlns="http://www.w3.org/2000/svg"><path d="M16.5 12.5H15v4l3 2 .75-1.23-2.25-1.52V12.5ZM16 9 2 3v7l9 2-9 2v7l7.27-3.11C10.09 20.83 12.79 23 16 23c3.86 0 7-3.14 7-7s-3.14-7-7-7Zm0 12c-2.75 0-4.98-2.22-5-4.97v-.07a5.008 5.008 0 0 1 5-4.97c2.76 0 5 2.24 5 5S18.76 21 16 21Z"/></svg><svg viewBox="0 0 24 24" id="search" xmlns="http://www.w3.org/2000/svg"><path d="M15.5 14h-.79l-.28-.27A6.471 6.471 0 0 0 16 9.5 6.5 6.5 0 1 0 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"/><path d="M0 0h24v24H0z" fill="none"/></svg><svg viewBox="0 0 24 24" id="security" xmlns="http://www.w3.org/2000/svg"><path d="M12 1 3 5v6c0 5.55 3.84 10.74 9 12 5.16-1.26 9-6.45 9-12V5l-9-4zm0 10.99h7c-.53 4.12-3.28 7.79-7 8.94V12H5V6.3l7-3.11v8.8z"/><path d="M0 0h24v24H0z" fill="none"/></svg><svg viewBox="0 0 24 24" id="send" xmlns="http://www.w3.org/2000/svg"><path d="M2.01 21 23 12 2.01 3 2 10l15 2-15 2z"/><path d="M0 0h24v24H0z" fill="none"/></svg><svg viewBox="0 0 24 24" id="settings" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M19.14 12.94c.04-.3.06-.61.06-.94 0-.32-.02-.64-.07-.94l2.03-1.58a.49.49 0 0 0 .12-.61l-1.92-3.32a.488.488 0 0 0-.59-.22l-2.39.96c-.5-.38-1.03-.7-1.62-.94l-.36-2.54a.484.484 0 0 0-.48-.41h-3.84c-.24 0-.43.17-.47.41l-.36 2.54c-.59.24-1.13.57-1.62.94l-2.39-.96c-.22-.08-.47 0-.59.22L2.74 8.87c-.12.21-.08.47.12.61l2.03 1.58c-.05.3-.09.63-.09.94s.02.64.07.94l-2.03 1.58a.49.49 0 0 0-.12.61l1.92 3.32c.12.22.37.29.59.22l2.39-.96c.5.38 1.03.7 1.62.94l.36 2.54c.05.24.24.41.48.41h3.84c.24 0 .44-.17.47-.41l.36-2.54c.59-.24 1.13-.56 1.62-.94l2.39.96c.22.08.47 0 .59-.22l1.92-3.32c.12-.22.07-.47-.12-.61l-2.01-1.58zM12 15.6c-1.98 0-3.6-1.62-3.6-3.6s1.62-3.6 3.6-3.6 3.6 1.62 3.6 3.6-1.62 3.6-3.6 3.6z"/></svg><svg viewBox="0 0 24 24" id="settings_applications" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M12 10c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm7-7H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V5a2 2 0 0 0-2-2zm-1.75 9c0 .23-.02.46-.05.68l1.48 1.16c.13.11.17.3.08.45l-1.4 2.42c-.09.15-.27.21-.43.15l-1.74-.7c-.36.28-.76.51-1.18.69l-.26 1.85c-.03.17-.18.3-.35.3h-2.8c-.17 0-.32-.13-.35-.29l-.26-1.85c-.43-.18-.82-.41-1.18-.69l-1.74.7c-.16.06-.34 0-.43-.15l-1.4-2.42a.353.353 0 0 1 .08-.45l1.48-1.16c-.03-.23-.05-.46-.05-.69 0-.23.02-.46.05-.68l-1.48-1.16a.353.353 0 0 1-.08-.45l1.4-2.42c.09-.15.27-.21.43-.15l1.74.7c.36-.28.76-.51 1.18-.69l.26-1.85c.03-.17.18-.3.35-.3h2.8c.17 0 .32.13.35.29l.26 1.85c.43.18.82.41 1.18.69l1.74-.7c.16-.06.34 0 .43.15l1.4 2.42c.09.15.05.34-.08.45l-1.48 1.16c.03.23.05.46.05.69z"/></svg><svg viewBox="0 0 24 24" id="settings_ethernet" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M7.77 6.76 6.23 5.48.82 12l5.41 6.52 1.54-1.28L3.42 12l4.35-5.24zM7 13h2v-2H7v2zm10-2h-2v2h2v-2zm-6 2h2v-2h-2v2zm6.77-7.52-1.54 1.28L20.58 12l-4.35 5.24 1.54 1.28L23.18 12l-5.41-6.52z"/></svg><svg viewBox="0 0 24 24" id="settings_input_component" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M5 2c0-.55-.45-1-1-1s-1 .45-1 1v4H1v6h6V6H5V2zm4 14c0 1.3.84 2.4 2 2.82V23h2v-4.18c1.16-.41 2-1.51 2-2.82v-2H9v2zm-8 0c0 1.3.84 2.4 2 2.82V23h2v-4.18C6.16 18.4 7 17.3 7 16v-2H1v2zM21 6V2c0-.55-.45-1-1-1s-1 .45-1 1v4h-2v6h6V6h-2zm-8-4c0-.55-.45-1-1-1s-1 .45-1 1v4H9v6h6V6h-2V2zm4 14c0 1.3.84 2.4 2 2.82V23h2v-4.18c1.16-.41 2-1.51 2-2.82v-2h-6v2z"/></svg><svg viewBox="0 0 24 24" id="settings_power" xmlns="http://www.w3.org/2000/svg"><path d="M7 24h2v-2H7v2Zm4 0h2v-2h-2v2Zm2-22h-2v10h2V2Zm3.56 2.44-1.45 1.45A5.969 5.969 0 0 1 18 11c0 3.31-2.69 6-6 6s-6-2.69-6-6c0-2.17 1.16-4.06 2.88-5.12L7.44 4.44A7.961 7.961 0 0 0 4 11c0 4.42 3.58 8 8 8s8-3.58 8-8c0-2.72-1.36-5.12-3.44-6.56ZM15 24h2v-2h-2v2Z"/></svg><svg viewBox="0 0 24 24" id="settings_remote" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M15 9H9c-.55 0-1 .45-1 1v12c0 .55.45 1 1 1h6c.55 0 1-.45 1-1V10c0-.55-.45-1-1-1zm-3 6c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zM7.05 6.05l1.41 1.41a5.022 5.022 0 0 1 7.08 0l1.41-1.41C15.68 4.78 13.93 4 12 4s-3.68.78-4.95 2.05zM12 0C8.96 0 6.21 1.23 4.22 3.22l1.41 1.41C7.26 3.01 9.51 2 12 2s4.74 1.01 6.36 2.64l1.41-1.41C17.79 1.23 15.04 0 12 0z"/></svg><svg viewBox="0 0 24 24" id="settings_suggest" xmlns="http://www.w3.org/2000/svg"><path d="M17.41 6.59 15 5.5l2.41-1.09L18.5 2l1.09 2.41L22 5.5l-2.41 1.09L18.5 9l-1.09-2.41Zm3.87 6.13L20.5 11l-.78 1.72-1.72.78 1.72.78.78 1.72.78-1.72L23 13.5l-1.72-.78Zm-5.04 1.65 1.94 1.47-2.5 4.33-2.24-.94c-.2.13-.42.26-.64.37l-.3 2.4h-5l-.3-2.41c-.22-.11-.43-.23-.64-.37l-2.24.94-2.5-4.33 1.94-1.47c-.01-.11-.01-.24-.01-.36s0-.25.01-.37l-1.94-1.47 2.5-4.33 2.24.94c.2-.13.42-.26.64-.37L7.5 6h5l.3 2.41c.22.11.43.23.64.37l2.24-.94 2.5 4.33-1.94 1.47c.01.12.01.24.01.37s0 .24-.01.36ZM13 14c0-1.66-1.34-3-3-3s-3 1.34-3 3 1.34 3 3 3 3-1.34 3-3Z"/></svg><svg viewBox="0 0 24 24" id="shape_line_outline" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M6 11c2.76 0 5-2.24 5-5S8.76 1 6 1 1 3.24 1 6s2.24 5 5 5Zm0-8c1.65 0 3 1.35 3 3S7.65 9 6 9 3 7.65 3 6s1.35-3 3-3ZM21 14h-5c-1.1 0-2 .9-2 2v5c0 1.1.9 2 2 2h5c1.1 0 2-.9 2-2v-5c0-1.1-.9-2-2-2Zm0 7h-5v-5h5v5Z"/><path d="M19 8c-.46 0-.89-.11-1.29-.3L7.7 17.71c.19.4.3.83.3 1.29 0 1.65-1.35 3-3 3s-3-1.35-3-3 1.35-3 3-3c.46 0 .89.11 1.29.3L16.3 6.29c-.19-.4-.3-.83-.3-1.29 0-1.65 1.35-3 3-3s3 1.35 3 3-1.35 3-3 3Z"/></svg><svg viewBox="0 0 24 24" id="signal_cellular_alt" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M17 4h3v16h-3zM5 14h3v6H5zm6-5h3v11h-3z"/></svg><svg viewBox="0 0 24 24" id="signal_cellular_alt_1_bar" xmlns="http://www.w3.org/2000/svg"><path d="M5 14h3v6H5v-6Z"/></svg><svg viewBox="0 0 24 24" id="signal_cellular_alt_2_bar" xmlns="http://www.w3.org/2000/svg"><path d="M5 14h3v6H5v-6Zm6-5h3v11h-3V9Z"/></svg><svg viewBox="0 0 24 24" id="sms" xmlns="http://www.w3.org/2000/svg"><path d="M20 2H4c-1.1 0-1.99.9-1.99 2L2 22l4-4h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zM9 11H7V9h2v2zm4 0h-2V9h2v2zm4 0h-2V9h2v2z"/><path d="M0 0h24v24H0z" fill="none"/></svg><svg viewBox="0 0 24 24" id="star" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M0 0h24v24H0z" fill="none"/><path d="M12 17.27 18.18 21l-1.64-7.03L22 9.24l-7.19-.61L12 2 9.19 8.63 2 9.24l5.46 4.73L5.82 21z"/></svg><svg viewBox="0 0 24 24" id="star_border" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="m22 9.24-7.19-.62L12 2 9.19 8.63 2 9.24l5.46 4.73L5.82 21 12 17.27 18.18 21l-1.63-7.03L22 9.24zM12 15.4l-3.76 2.27 1-4.28-3.32-2.88 4.38-.38L12 6.1l1.71 4.04 4.38.38-3.32 2.88 1 4.28L12 15.4z"/></svg><svg viewBox="0 0 24 24" id="storage" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M2 20h20v-4H2v4zm2-3h2v2H4v-2zM2 4v4h20V4H2zm4 3H4V5h2v2zm-4 7h20v-4H2v4zm2-3h2v2H4v-2z"/></svg><svg viewBox="0 0 24 24" id="style" xmlns="http://www.w3.org/2000/svg"><g data-name="圖層 2"><g data-name="圖層 1"><path d="M0 0h24v24H0Z" style="fill:none"/><path d="m17.91 6 4.14 10.14a1.69 1.69 0 0 1 .11.67 1.72 1.72 0 0 1-.15.67 1.76 1.76 0 0 1-.93.93l-7.85 3.29a1.72 1.72 0 0 1-1.31 0 1.73 1.73 0 0 1-.92-.92L6.9 10.65a1.71 1.71 0 0 1 0-1.33l2.31-5.58a1.73 1.73 0 0 1 2.24-.94L17 5.09a1.72 1.72 0 0 1 .91.91ZM12 7.26a1.29 1.29 0 0 0 .69-.69 1.33 1.33 0 0 0 0-1A1.26 1.26 0 0 0 11 4.88a1.28 1.28 0 0 0-.71.7 1.31 1.31 0 0 0 0 1 1.25 1.25 0 0 0 1.71.68ZM2.53 19.65l1.34.56v-9L1.44 17a1.91 1.91 0 0 0-.16.78 1.78 1.78 0 0 0 .15.78 1.92 1.92 0 0 0 .44.65 2 2 0 0 0 .66.44Zm3.35.1a2 2 0 0 0 2 2h1.45l-3.45-8.34Z" style="fill-rule:evenodd"/></g></g></svg><svg viewBox="0 0 24 24" id="sync_alt" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="m22 8-4-4v3H3v2h15v3l4-4zM2 16l4 4v-3h15v-2H6v-3l-4 4z"/></svg><svg viewBox="0 0 24 24" id="sync_disabled" xmlns="http://www.w3.org/2000/svg"><path d="M10 6.35V4.26c-.8.21-1.55.54-2.23.96l1.46 1.46c.25-.12.5-.24.77-.33Zm-7.14-.94 2.36 2.36a7.925 7.925 0 0 0 1.14 9.87L4 20h6v-6l-2.24 2.24A6.003 6.003 0 0 1 6 12c0-1 .25-1.94.68-2.77l8.08 8.08c-.25.13-.5.25-.77.34v2.09c.8-.21 1.55-.54 2.23-.96l2.36 2.36 1.27-1.27L4.14 4.14 2.86 5.41ZM20 4h-6v6l2.24-2.24A6.003 6.003 0 0 1 18 12c0 1-.25 1.94-.68 2.77l1.46 1.46a7.925 7.925 0 0 0-1.14-9.87L20 4Z"/></svg><svg viewBox="0 0 24 24" id="sync_problem" xmlns="http://www.w3.org/2000/svg"><path d="M3 12c0 2.21.91 4.2 2.36 5.64L3 20h6v-6l-2.24 2.24A6.003 6.003 0 0 1 5 12a5.99 5.99 0 0 1 4-5.65V4.26C5.55 5.15 3 8.27 3 12Zm8 5h2v-2h-2v2ZM21 4h-6v6l2.24-2.24A6.003 6.003 0 0 1 19 12a5.99 5.99 0 0 1-4 5.65v2.09c3.45-.89 6-4.01 6-7.74 0-2.21-.91-4.2-2.36-5.64L21 4Zm-10 9h2V7h-2v6Z"/></svg><svg viewBox="0 0 24 24" id="task_alt" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="M22 5.18 10.59 16.6l-4.24-4.24 1.41-1.41 2.83 2.83 10-10L22 5.18zm-2.21 5.04c.13.57.21 1.17.21 1.78 0 4.42-3.58 8-8 8s-8-3.58-8-8 3.58-8 8-8c1.58 0 3.04.46 4.28 1.25l1.44-1.44A9.9 9.9 0 0 0 12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10c0-1.19-.22-2.33-.6-3.39l-1.61 1.61z"/></svg><svg viewBox="0 0 24 24" id="tenancy" xmlns="http://www.w3.org/2000/svg"><path d="M4 21a2.893 2.893 0 0 1-2.125-.875A2.893 2.893 0 0 1 1 18c0-.833.292-1.542.875-2.125A2.893 2.893 0 0 1 4 15c.15 0 .296.012.438.037.141.025.279.055.412.088L8.9 9.55a4.076 4.076 0 0 1-.662-1.175A3.975 3.975 0 0 1 8 7c0-1.1.392-2.042 1.175-2.825C9.958 3.392 10.9 3 12 3s2.042.392 2.825 1.175C15.608 4.958 16 5.9 16 7c0 .483-.083.942-.25 1.375a4.318 4.318 0 0 1-.675 1.175l4.075 5.575a6.01 6.01 0 0 1 .413-.088c.141-.025.287-.037.437-.037.833 0 1.542.292 2.125.875S23 17.167 23 18s-.292 1.542-.875 2.125A2.893 2.893 0 0 1 20 21a2.893 2.893 0 0 1-2.125-.875A2.893 2.893 0 0 1 17 18c0-.317.046-.62.137-.913.092-.291.221-.554.388-.787l-4.05-5.575a1.551 1.551 0 0 1-.237.075 1.551 1.551 0 0 0-.238.075v4.3a2.91 2.91 0 0 1 1.438 1.075c.374.517.562 1.1.562 1.75 0 .833-.292 1.542-.875 2.125A2.893 2.893 0 0 1 12 21a2.893 2.893 0 0 1-2.125-.875A2.893 2.893 0 0 1 9 18c0-.65.188-1.23.563-1.738A3.09 3.09 0 0 1 11 15.175v-4.3a1.551 1.551 0 0 0-.238-.075 1.551 1.551 0 0 1-.237-.075L6.475 16.3c.167.233.296.496.388.787.091.292.137.596.137.913 0 .833-.292 1.542-.875 2.125A2.893 2.893 0 0 1 4 21Z"/></svg><svg viewBox="0 0 24 24" id="terminal" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="M20 4H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h16c1.1 0 2-.9 2-2V6a2 2 0 0 0-2-2zm0 14H4V8h16v10zm-2-1h-6v-2h6v2zM7.5 17l-1.41-1.41L8.67 13l-2.59-2.59L7.5 9l4 4-4 4z"/></svg><svg viewBox="0 0 24 24" id="today" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M19 3h-1V1h-2v2H8V1H6v2H5c-1.11 0-1.99.9-1.99 2L3 19a2 2 0 0 0 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H5V8h14v11zM7 10h5v5H7z"/></svg><svg viewBox="0 0 20 12" id="trending_down" xmlns="http://www.w3.org/2000/svg"><path d="M14 12v-2h2.6l-5.2-5.15-4 4L0 1.4 1.4 0l6 6 4-4L18 8.6V6h2v6h-6Z"/></svg><svg viewBox="0 0 19 10" id="trending_flat" xmlns="http://www.w3.org/2000/svg"><path d="m14.5 9.5-1.425-1.4 2.1-2.1H0V4h15.175L13.1 1.9 14.525.5 19 5l-4.5 4.5Z"/></svg><svg viewBox="0 0 20 12" id="trending_up" xmlns="http://www.w3.org/2000/svg"><path d="M1.4 12 0 10.6l7.4-7.45 4 4L16.6 2H14V0h6v6h-2V3.4L11.4 10l-4-4-6 6Z"/></svg><svg viewBox="0 0 24 24" id="troubleshoot" xmlns="http://www.w3.org/2000/svg"><path d="m22 20.59-4.69-4.69A7.902 7.902 0 0 0 19 11c0-4.42-3.58-8-8-8-4.08 0-7.44 3.05-7.93 7h2.02C5.57 7.17 8.03 5 11 5c3.31 0 6 2.69 6 6s-2.69 6-6 6c-2.42 0-4.5-1.44-5.45-3.5H3.4C4.45 16.69 7.46 19 11 19c1.85 0 3.55-.63 4.9-1.69L20.59 22 22 20.59Z"/><path d="M8.43 9.69 9.65 15h1.64l1.26-3.78.95 2.28h2V12h-1l-1.25-3h-1.54l-1.12 3.37L9.35 7H7.7l-1.25 4H1v1.5h6.55l.88-2.81Z"/></svg><svg viewBox="0 0 24 24" id="tune" xmlns="http://www.w3.org/2000/svg"><path d="M3 17v2h6v-2H3ZM3 5v2h10V5H3Zm10 16v-2h8v-2h-8v-2h-2v6h2ZM7 9v2H3v2h4v2h2V9H7Zm14 4v-2H11v2h10Zm-6-4h2V7h4V5h-4V3h-2v6Z"/></svg><svg viewBox="0 0 24 24" id="unarchive" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="m20.55 5.22-1.39-1.68A1.51 1.51 0 0 0 18 3H6c-.47 0-.88.21-1.15.55L3.46 5.22C3.17 5.57 3 6.01 3 6.5V19a2 2 0 0 0 2 2h14c1.1 0 2-.9 2-2V6.5c0-.49-.17-.93-.45-1.28zM12 9.5l5.5 5.5H14v2h-4v-2H6.5L12 9.5zM5.12 5l.82-1h12l.93 1H5.12z"/></svg><svg viewBox="0 0 24 24" id="undo" xmlns="http://www.w3.org/2000/svg"><path d="M12.5 8c-2.65 0-5.05.99-6.9 2.6L2 7v9h9l-3.62-3.62c1.39-1.16 3.16-1.88 5.12-1.88 3.54 0 6.55 2.31 7.6 5.5l2.37-.78C21.08 11.03 17.15 8 12.5 8Z"/></svg><svg viewBox="0 0 24 24" id="undo_copy" xmlns="http://www.w3.org/2000/svg"><path d="M12.5 8c-2.65 0-5.05.99-6.9 2.6L2 7v9h9l-3.62-3.62c1.39-1.16 3.16-1.88 5.12-1.88 3.54 0 6.55 2.31 7.6 5.5l2.37-.78C21.08 11.03 17.15 8 12.5 8Z"/></svg><svg fill="none" viewBox="0 0 24 24" id="unfold-less" xmlns="http://www.w3.org/2000/svg"><path d="M7.41 18.59 8.83 20 12 16.83 15.17 20l1.41-1.41L12 14l-4.59 4.59Zm9.18-13.18L15.17 4 12 7.17 8.83 4 7.41 5.41 12 10l4.59-4.59Z" fill="#000"/></svg><svg fill="none" viewBox="0 0 24 24" id="unfold-more" xmlns="http://www.w3.org/2000/svg"><path d="M12 5.83 15.17 9l1.41-1.41L12 3 7.41 7.59 8.83 9 12 5.83Zm0 12.34L8.83 15l-1.41 1.41L12 21l4.59-4.59L15.17 15 12 18.17Z" fill="#000"/></svg><svg viewBox="0 -960 960 960" id="unfold_less" xmlns="http://www.w3.org/2000/svg"><path d="m356-160-56-56 180-180 180 180-56 56-124-124-124 124Zm124-404L300-744l56-56 124 124 124-124 56 56-180 180Z"/></svg><svg viewBox="0 -960 960 960" id="unfold_more" xmlns="http://www.w3.org/2000/svg"><path d="M480-120 300-300l58-58 122 122 122-122 58 58-180 180ZM358-598l-58-58 180-180 180 180-58 58-122-122-122 122Z"/></svg><svg viewBox="0 0 24 24" id="update" xmlns="http://www.w3.org/2000/svg"><defs><path id="jva" d="M0 0h24v24H0V0z"/></defs><clipPath id="jvb"><use xlink:href="#jva" overflow="visible"/></clipPath><path clip-path="url(#jvb)" d="M21 10.12h-6.78l2.74-2.82c-2.73-2.7-7.15-2.8-9.88-.1a6.875 6.875 0 0 0 0 9.79 7.02 7.02 0 0 0 9.88 0C18.32 15.65 19 14.08 19 12.1h2c0 1.98-.88 4.55-2.64 6.29-3.51 3.48-9.21 3.48-12.72 0-3.5-3.47-3.53-9.11-.02-12.58a8.987 8.987 0 0 1 12.65 0L21 3v7.12zM12.5 8v4.25l3.5 2.08-.72 1.21L11 13V8h1.5z"/></svg><svg viewBox="0 0 24 24" id="upgrade" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="M16 18v2H8v-2h8zM11 7.99V16h2V7.99h3L12 4 8 7.99h3z"/></svg><svg viewBox="0 0 24 24" id="upload" xmlns="http://www.w3.org/2000/svg"><path d="M5 20h14v-2H5v2Zm0-10h4v6h6v-6h4l-7-7-7 7Z"/></svg><svg viewBox="0 0 24 24" id="verified_user" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M12 1 3 5v6c0 5.55 3.84 10.74 9 12 5.16-1.26 9-6.45 9-12V5l-9-4zm-2 16-4-4 1.41-1.41L10 14.17l6.59-6.59L18 9l-8 8z"/></svg><svg viewBox="0 -960 960 960" id="vertical_align_center" xmlns="http://www.w3.org/2000/svg"><path d="M440-80v-168l-64 64-56-56 160-160 160 160-56 56-64-64v168h-80ZM160-440v-80h640v80H160Zm320-120L320-720l56-56 64 64v-168h80v168l64-64 56 56-160 160Z"/></svg><svg viewBox="0 0 24 24" id="view_headline" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M4 15h16v-2H4v2zm0 4h16v-2H4v2zm0-8h16V9H4v2zm0-6v2h16V5H4z"/></svg><svg viewBox="0 0 24 24" id="visibility" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z"/></svg><svg viewBox="0 0 24 24" id="visibility_off" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0zm0 0h24v24H0zm0 0h24v24H0zm0 0h24v24H0z" fill="none"/><path d="M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46A11.804 11.804 0 0 0 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z"/></svg><svg viewBox="0 0 24 24" id="vpn_key" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M12.65 10A5.99 5.99 0 0 0 7 6c-3.31 0-6 2.69-6 6s2.69 6 6 6a5.99 5.99 0 0 0 5.65-4H17v4h4v-4h2v-4H12.65zM7 14c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2z"/></svg><svg viewBox="0 0 24 24" id="wallpaper" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M4 4h7V2H4c-1.1 0-2 .9-2 2v7h2V4zm6 9-4 5h12l-3-4-2.03 2.71L10 13zm7-4.5c0-.83-.67-1.5-1.5-1.5S14 7.67 14 8.5s.67 1.5 1.5 1.5S17 9.33 17 8.5zM20 2h-7v2h7v7h2V4c0-1.1-.9-2-2-2zm0 18h-7v2h7c1.1 0 2-.9 2-2v-7h-2v7zM4 13H2v7c0 1.1.9 2 2 2h7v-2H4v-7z"/></svg><svg viewBox="0 0 24 24" id="warning" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M1 21h22L12 2 1 21zm12-3h-2v-2h2v2zm0-4h-2v-4h2v4z"/></svg><svg viewBox="0 0 24 24" id="warning_copy" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M1 21h22L12 2 1 21zm12-3h-2v-2h2v2zm0-4h-2v-4h2v4z"/></svg><svg viewBox="0 0 24 24" id="widgets" xmlns="http://www.w3.org/2000/svg"><path d="M13 13v8h8v-8h-8zM3 21h8v-8H3v8zM3 3v8h8V3H3zm13.66-1.31L11 7.34 16.66 13l5.66-5.66-5.66-5.65z"/><path d="M0 0h24v24H0z" fill="none"/></svg><svg viewBox="0 0 24 24" id="wifi" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="m1 9 2 2c4.97-4.97 13.03-4.97 18 0l2-2C16.93 2.93 7.08 2.93 1 9zm8 8 3 3 3-3a4.237 4.237 0 0 0-6 0zm-4-4 2 2a7.074 7.074 0 0 1 10 0l2-2C15.14 9.14 8.87 9.14 5 13z"/></svg><svg viewBox="0 0 24 24" id="wifi_1_bar" xmlns="http://www.w3.org/2000/svg"><path d="M15.53 17.46 12 21l-3.53-3.54c.9-.9 2.15-1.46 3.53-1.46s2.63.56 3.53 1.46Z"/></svg><svg viewBox="0 0 24 24" id="wifi_2_bar" xmlns="http://www.w3.org/2000/svg"><path d="M12 10c3.03 0 5.78 1.23 7.76 3.22l-2.12 2.12A7.967 7.967 0 0 0 12 13c-2.2 0-4.2.9-5.64 2.35l-2.12-2.12C6.22 11.23 8.97 10 12 10Zm0 6c-1.38 0-2.63.56-3.53 1.46L12 21l3.53-3.54A4.98 4.98 0 0 0 12 16Z"/></svg><svg viewBox="0 0 24 24" id="wifi_medium_darkTheme" xmlns="http://www.w3.org/2000/svg"><g fill="none" fill-rule="evenodd"><path d="M0 0h24v24H0z"/><path d="m1 9 2 2c4.97-4.97 13.03-4.97 18 0l2-2C16.93 2.93 7.08 2.93 1 9Z" fill-opacity=".3" fill="#FFF" fill-rule="nonzero"/><path d="m9 17 3 3 3-3a4.237 4.237 0 0 0-6 0ZM5 13l2 2a7.074 7.074 0 0 1 10 0l2-2C15.14 9.14 8.87 9.14 5 13Z" fill-opacity=".8" fill="#FFF" fill-rule="nonzero"/></g></svg><svg viewBox="0 0 24 24" id="wifi_medium_lightTheme" xmlns="http://www.w3.org/2000/svg"><g fill="none" fill-rule="evenodd"><path d="M0 0h24v24H0z"/><path d="m1 9 2 2c4.97-4.97 13.03-4.97 18 0l2-2C16.93 2.93 7.08 2.93 1 9Z" fill-opacity=".1" fill="#000" fill-rule="nonzero"/><path d="m9 17 3 3 3-3a4.237 4.237 0 0 0-6 0ZM5 13l2 2a7.074 7.074 0 0 1 10 0l2-2C15.14 9.14 8.87 9.14 5 13Z" fill-opacity=".6" fill="#000" fill-rule="nonzero"/></g></svg><svg viewBox="0 0 24 24" id="wifi_off" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M24 .01c0-.01 0-.01 0 0L0 0v24h24V.01zM0 0h24v24H0V0zm0 0h24v24H0V0z"/><path d="M22.99 9C19.15 5.16 13.8 3.76 8.84 4.78l2.52 2.52c3.47-.17 6.99 1.05 9.63 3.7l2-2zm-4 4a9.793 9.793 0 0 0-4.49-2.56l3.53 3.53.96-.97zM2 3.05 5.07 6.1C3.6 6.82 2.22 7.78 1 9l1.99 2c1.24-1.24 2.67-2.16 4.2-2.77l2.24 2.24A9.684 9.684 0 0 0 5 13v.01L6.99 15a7.042 7.042 0 0 1 4.92-2.06L18.98 20l1.27-1.26L3.29 1.79 2 3.05zM9 17l3 3 3-3a4.237 4.237 0 0 0-6 0z"/></svg><svg viewBox="0 0 24 24" id="wifi_strength_darkTheme" xmlns="http://www.w3.org/2000/svg"><g fill="none" fill-rule="evenodd"><path d="M0 0h24v24H0z"/><path d="m1 9 2 2c4.97-4.97 13.03-4.97 18 0l2-2C16.93 2.93 7.08 2.93 1 9ZM9 17l3 3 3-3a4.237 4.237 0 0 0-6 0Z" fill-opacity=".8" fill="#FFF" fill-rule="nonzero"/><path d="m5 13 2 2a7.074 7.074 0 0 1 10 0l2-2C15.14 9.14 8.87 9.14 5 13Z" fill-opacity=".8" fill="#FFF" fill-rule="nonzero"/></g></svg><svg viewBox="0 0 24 24" id="wifi_strength_lightTheme" xmlns="http://www.w3.org/2000/svg"><g fill="none" fill-rule="evenodd"><path d="M0 0h24v24H0z"/><path d="m1 9 2 2c4.97-4.97 13.03-4.97 18 0l2-2C16.93 2.93 7.08 2.93 1 9ZM9 17l3 3 3-3a4.237 4.237 0 0 0-6 0Z" fill-opacity=".6" fill="#000" fill-rule="nonzero"/><path d="m5 13 2 2a7.074 7.074 0 0 1 10 0l2-2C15.14 9.14 8.87 9.14 5 13Z" fill-opacity=".6" fill="#000" fill-rule="nonzero"/></g></svg><svg viewBox="0 0 24 24" id="wifi_weak_darkTheme" xmlns="http://www.w3.org/2000/svg"><g fill="none" fill-rule="evenodd"><path d="M0 0h24v24H0z"/><path d="m1 9 2 2c4.97-4.97 13.03-4.97 18 0l2-2C16.93 2.93 7.08 2.93 1 9Z" fill-opacity=".3" fill="#FFF" fill-rule="nonzero"/><path d="m9 17 3 3 3-3a4.237 4.237 0 0 0-6 0Z" fill-opacity=".8" fill="#FFF" fill-rule="nonzero"/><path d="m5 13 2 2a7.074 7.074 0 0 1 10 0l2-2C15.14 9.14 8.87 9.14 5 13Z" fill-opacity=".3" fill="#FFF" fill-rule="nonzero"/></g></svg><svg viewBox="0 0 24 24" id="wifi_weak_lightTheme" xmlns="http://www.w3.org/2000/svg"><g fill="none" fill-rule="evenodd"><path d="M0 0h24v24H0z"/><path d="m1 9 2 2c4.97-4.97 13.03-4.97 18 0l2-2C16.93 2.93 7.08 2.93 1 9Z" fill-opacity=".1" fill="#000" fill-rule="nonzero"/><path d="m9 17 3 3 3-3a4.237 4.237 0 0 0-6 0Z" fill-opacity=".6" fill="#000" fill-rule="nonzero"/><path d="m5 13 2 2a7.074 7.074 0 0 1 10 0l2-2C15.14 9.14 8.87 9.14 5 13Z" fill-opacity=".1" fill="#000" fill-rule="nonzero"/></g></svg></svg>';class CW{constructor(e){Mt(this,"config");Mt(this,"tokenConfig");Mt(this,"iconSpriteText","");this.config=e,this.loadTokenConfig(),this.loadIconSprite()}getConfig(){return this.config}updateConfig(e){this.config={...this.config,...e}}getTokenConfig(){return this.tokenConfig}getIconSpriteText(){return this.iconSpriteText}getVersion(){return dAe}loadTokenConfig(){try{return this.tokenConfig=vj(fAe),!0}catch(e){return console.error("Failed to load token config:",e),!1}}loadIconSprite(){try{return typeof vM=="string"&&vM.length>0?(this.iconSpriteText=vM,!0):(console.warn("Icon sprite content not found or empty"),!1)}catch(e){return console.error("Failed to load icon sprite:",e),!1}}validateConfig(){try{return!(!this.config||!this.config.container)}catch(e){return console.error("Config validation error:",e),!1}}getRendererType(){return this.config.renderer||"svg"}shouldShowVersion(){return this.config.showVersion!==!1}}const vAe={removeUndefined:!0,removeNull:!1,removeEmptyObjects:!0,removeEmptyArrays:!1,removeEmptyStrings:!1,removeWhitespaceStrings:!1};function HT(n,e={}){const t={...vAe,...e};if(n==null)return n;if(Array.isArray(n))return n.map(i=>HT(i,e)).filter(i=>!gM(i,t));if(typeof n=="object"){const r={};for(const[i,a]of Object.entries(n)){if(gM(a,t))continue;const s=HT(a,e);gM(s,t)||(r[i]=s)}return r}return n}function gM(n,e){return!!(e.removeUndefined&&n===void 0||e.removeNull&&n===null||e.removeEmptyStrings&&typeof n=="string"&&n===""||e.removeWhitespaceStrings&&typeof n=="string"&&n.trim()===""||e.removeEmptyArrays&&Array.isArray(n)&&n.length===0||e.removeEmptyObjects&&typeof n=="object"&&n!==null&&!Array.isArray(n)&&Object.keys(n).length===0)}function KB(n){return HT(n,{removeUndefined:!0,removeNull:!0,removeEmptyObjects:!0,removeEmptyArrays:!0,removeEmptyStrings:!0,removeWhitespaceStrings:!0})}/*!
|
|
331
|
+
*/var SB;function E5e(){if(SB)return Ho;SB=1;var n=so(),e=ao(),t=Fo(),r=zo(),i=oo(),a=g5e(),s=p5e(),o=b5e(),l=x5e(),u=w5e(),c=mW(),h=ly(),f=uy(),d=hr;function v(A){var C=Object.create(null);return A&&Object.keys(A).forEach(function(B){if(B!=="default"){var D=Object.getOwnPropertyDescriptor(A,B);Object.defineProperty(C,B,D.get?D:{enumerable:!0,get:function(){return A[B]}})}}),C.default=A,Object.freeze(C)}var p=v(a),g=v(s),m=v(o),x=v(l),w=v(u),E=v(c),M=function(){function A(C){e(this,A),this.renderingContext=C.renderingContext,this.canvasConfig=C.config}return n(A,[{key:"init",value:function(){var B=this.canvasConfig,D=B.container,z=B.canvas;if(z)this.$canvas=z,D&&z.parentElement!==D&&D.appendChild(z),this.$container=z.parentElement,this.canvasConfig.container=this.$container;else if(D&&(this.$container=d.isString(D)?document.getElementById(D):D,this.$container)){var G=document.createElement("canvas");this.$container.appendChild(G),this.$container.style.position||(this.$container.style.position="relative"),this.$canvas=G}this.context=this.$canvas.getContext("2d"),this.resize(this.canvasConfig.width,this.canvasConfig.height)}},{key:"getContext",value:function(){return this.context}},{key:"getDomElement",value:function(){return this.$canvas}},{key:"getDPR",value:function(){return this.dpr}},{key:"getBoundingClientRect",value:function(){if(this.$canvas.getBoundingClientRect)return this.$canvas.getBoundingClientRect()}},{key:"destroy",value:function(){this.$container&&this.$canvas&&this.$canvas.parentNode&&this.$container.removeChild(this.$canvas)}},{key:"resize",value:function(B,D){var z=this.canvasConfig.devicePixelRatio;this.dpr=z,this.$canvas&&(this.$canvas.width=this.dpr*B,this.$canvas.height=this.dpr*D,i.setDOMSize(this.$canvas,B,D)),this.renderingContext.renderReasons.add(i.RenderReason.CAMERA_CHANGED)}},{key:"applyCursorStyle",value:function(B){this.$container&&this.$container.style&&(this.$container.style.cursor=B)}},{key:"toDataURL",value:function(){var C=f(h().mark(function D(){var z,G,H,W=arguments;return h().wrap(function(ee){for(;;)switch(ee.prev=ee.next){case 0:return z=W.length>0&&W[0]!==void 0?W[0]:{},G=z.type,H=z.encoderOptions,ee.abrupt("return",this.context.canvas.toDataURL(G,H));case 1:case"end":return ee.stop()}},D,this)}));function B(){return C.apply(this,arguments)}return B}()}])}(),S=function(A){function C(){var B;e(this,C);for(var D=arguments.length,z=new Array(D),G=0;G<D;G++)z[G]=arguments[G];return B=t(this,C,[].concat(z)),B.name="canvas-context-register",B}return r(C,A),n(C,[{key:"init",value:function(){this.context.ContextService=M}},{key:"destroy",value:function(){delete this.context.ContextService}}])}(i.AbstractRendererPlugin),T=function(A){function C(B){var D;return e(this,C),D=t(this,C,[B]),D.registerPlugin(new S),D.registerPlugin(new E.Plugin),D.registerPlugin(new p.Plugin),D.registerPlugin(new m.Plugin),D.registerPlugin(new x.Plugin),D.registerPlugin(new g.Plugin),D.registerPlugin(new w.Plugin),D}return r(C,A),n(C)}(i.AbstractRenderer);return Ho.CanvasPathGenerator=p,Ho.CanvasPicker=g,Ho.CanvasRenderer=m,Ho.DomInteraction=x,Ho.HTMLRenderer=w,Ho.ImageLoader=E,Ho.Renderer=T,Ho}var MB;function S5e(){if(MB)return Vu;MB=1;var n=Vu&&Vu.__rest||function(o,l){var u={};for(var c in o)Object.prototype.hasOwnProperty.call(o,c)&&l.indexOf(c)<0&&(u[c]=o[c]);if(o!=null&&typeof Object.getOwnPropertySymbols=="function")for(var h=0,c=Object.getOwnPropertySymbols(o);h<c.length;h++)l.indexOf(c[h])<0&&Object.prototype.propertyIsEnumerable.call(o,c[h])&&(u[c[h]]=o[c[h]]);return u};Object.defineProperty(Vu,"__esModule",{value:!0}),Vu.HTML=void 0;const e=Vi(),t=E5e(),r=hr,i=gy(),a=Ic();class s extends a.BaseNode{constructor(l){super(Object.assign(Object.assign({},l),{style:Object.assign({},s.defaultStyleProps,l.style)})),this.rootPointerEvent=new e.FederatedPointerEvent(null),this.forwardEvents=u=>{const c=this.context.canvas,h=c.context.renderingContext.root.ownerDocument.defaultView;this.normalizeToPointerEvent(u,h).forEach(d=>{const v=this.bootstrapEvent(this.rootPointerEvent,d,h,u);(0,r.set)(c.context.eventService,"mappingTable.pointerupoutside",[]),c.context.eventService.mapEvent(v)})}}get eventService(){return this.context.canvas.context.eventService}get events(){return[i.CommonEvent.CLICK,i.CommonEvent.POINTER_DOWN,i.CommonEvent.POINTER_MOVE,i.CommonEvent.POINTER_UP,i.CommonEvent.POINTER_OVER,i.CommonEvent.POINTER_LEAVE]}getDomElement(){return this.getShape("key").getDomElement()}render(l=this.parsedAttributes,u=this){this.drawKeyShape(l,u),this.drawPortShapes(l,u)}getKeyStyle(l){const u=(0,r.pick)(l,["dx","dy","innerHTML","pointerEvents","cursor"]),{dx:c=0,dy:h=0}=u,f=n(u,["dx","dy"]),[d,v]=this.getSize(l);return Object.assign(Object.assign({x:c,y:h},f),{width:d,height:v})}drawKeyShape(l,u){const c=this.getKeyStyle(l),{x:h,y:f,width:d=0,height:v=0}=c,p=this.upsert("key-container",e.Rect,{x:h,y:f,width:d,height:v,opacity:0},u);return this.upsert("key",e.HTML,c,p)}connectedCallback(){if(!(this.context.canvas.getRenderer("main")instanceof t.Renderer))return;const c=this.getDomElement();this.events.forEach(h=>{c.addEventListener(h,this.forwardEvents)})}attributeChangedCallback(l,u,c){l==="zIndex"&&u!==c&&(this.getDomElement().style.zIndex=c)}destroy(){const l=this.getDomElement();this.events.forEach(u=>{l.removeEventListener(u,this.forwardEvents)}),super.destroy()}normalizeToPointerEvent(l,u){const c=[];if(u.isTouchEvent(l))for(let h=0;h<l.changedTouches.length;h++){const f=l.changedTouches[h];(0,r.isUndefined)(f.button)&&(f.button=0),(0,r.isUndefined)(f.buttons)&&(f.buttons=1),(0,r.isUndefined)(f.isPrimary)&&(f.isPrimary=l.touches.length===1&&l.type==="touchstart"),(0,r.isUndefined)(f.width)&&(f.width=f.radiusX||1),(0,r.isUndefined)(f.height)&&(f.height=f.radiusY||1),(0,r.isUndefined)(f.tiltX)&&(f.tiltX=0),(0,r.isUndefined)(f.tiltY)&&(f.tiltY=0),(0,r.isUndefined)(f.pointerType)&&(f.pointerType="touch"),(0,r.isUndefined)(f.pointerId)&&(f.pointerId=f.identifier||0),(0,r.isUndefined)(f.pressure)&&(f.pressure=f.force||.5),(0,r.isUndefined)(f.twist)&&(f.twist=0),(0,r.isUndefined)(f.tangentialPressure)&&(f.tangentialPressure=0),f.isNormalized=!0,f.type=l.type,c.push(f)}else if(u.isMouseEvent(l)){const h=l;(0,r.isUndefined)(h.isPrimary)&&(h.isPrimary=!0),(0,r.isUndefined)(h.width)&&(h.width=1),(0,r.isUndefined)(h.height)&&(h.height=1),(0,r.isUndefined)(h.tiltX)&&(h.tiltX=0),(0,r.isUndefined)(h.tiltY)&&(h.tiltY=0),(0,r.isUndefined)(h.pointerType)&&(h.pointerType="mouse"),(0,r.isUndefined)(h.pointerId)&&(h.pointerId=1),(0,r.isUndefined)(h.pressure)&&(h.pressure=.5),(0,r.isUndefined)(h.twist)&&(h.twist=0),(0,r.isUndefined)(h.tangentialPressure)&&(h.tangentialPressure=0),h.isNormalized=!0,c.push(h)}else c.push(l);return c}transferMouseData(l,u){l.isTrusted=u.isTrusted,l.srcElement=u.srcElement,l.timeStamp=performance.now(),l.type=u.type,l.altKey=u.altKey,l.metaKey=u.metaKey,l.shiftKey=u.shiftKey,l.ctrlKey=u.ctrlKey,l.button=u.button,l.buttons=u.buttons,l.client.x=u.clientX,l.client.y=u.clientY,l.movement.x=u.movementX,l.movement.y=u.movementY,l.page.x=u.pageX,l.page.y=u.pageY,l.screen.x=u.screenX,l.screen.y=u.screenY,l.relatedTarget=null}bootstrapEvent(l,u,c,h){l.view=c,l.originalEvent=null,l.nativeEvent=h,l.pointerId=u.pointerId,l.width=u.width,l.height=u.height,l.isPrimary=u.isPrimary,l.pointerType=u.pointerType,l.pressure=u.pressure,l.tangentialPressure=u.tangentialPressure,l.tiltX=u.tiltX,l.tiltY=u.tiltY,l.twist=u.twist,this.transferMouseData(l,u);const{x:f,y:d}=this.getViewportXY(u);l.viewport.x=f,l.viewport.y=d;const[v,p]=this.context.canvas.getCanvasByViewport([f,d]);return l.canvas.x=v,l.canvas.y=p,l.global.copyFrom(l.canvas),l.offset.copyFrom(l.canvas),l.isTrusted=h.isTrusted,l.type==="pointerleave"&&(l.type="pointerout"),l}getViewportXY(l){let u,c;const{offsetX:h,offsetY:f,clientX:d,clientY:v}=l;if(!(0,r.isNil)(h)&&!(0,r.isNil)(f))u=h,c=f;else{const p=this.eventService.client2Viewport({x:d,y:v});u=p.x,c=p.y}return{x:u,y:c}}onframe(){super.onframe();const{opacity:l}=this.attributes;this.getDomElement().style.opacity=`${l}`}}return Vu.HTML=s,s.defaultStyleProps={size:[160,80],halo:!1,icon:!1,label:!1,pointerEvents:"auto"},Vu}var Hu={},TB;function M5e(){if(TB)return Hu;TB=1;var n=Hu&&Hu.__rest||function(c,h){var f={};for(var d in c)Object.prototype.hasOwnProperty.call(c,d)&&h.indexOf(d)<0&&(f[d]=c[d]);if(c!=null&&typeof Object.getOwnPropertySymbols=="function")for(var v=0,d=Object.getOwnPropertySymbols(c);v<d.length;v++)h.indexOf(d[v])<0&&Object.prototype.propertyIsEnumerable.call(c,d[v])&&(f[d[v]]=c[d[v]]);return f};Object.defineProperty(Hu,"__esModule",{value:!0}),Hu.Image=void 0;const e=Vi(),t=au(),r=Es(),i=Li(),a=gl(),s=K0(),o=Z0(),l=Ic();class u extends l.BaseNode{constructor(h){super((0,i.mergeOptions)({style:u.defaultStyleProps},h))}getKeyStyle(h){const[f,d]=this.getSize(h),v=super.getKeyStyle(h),{fillOpacity:p,opacity:g=p}=v,m=n(v,["fillOpacity","opacity"]);return Object.assign(Object.assign({opacity:g},m),{width:f,height:d,x:-f/2,y:-d/2})}getBounds(){return this.getShape("key").getBounds()}getHaloStyle(h){if(h.halo===!1)return!1;const f=this.getShape("key").attributes,{fill:d,stroke:v}=f;n(f,["fill","stroke"]);const p=(0,r.subStyleProps)(this.getGraphicStyle(h),"halo"),g=Number(p.lineWidth),[m,x]=(0,a.add)(this.getSize(h),[g,g]),{lineWidth:w}=p,E={fill:"transparent",lineWidth:w/2,width:m-w/2,height:x-w/2,x:-(m-w/2)/2,y:-(x-w/2)/2};return Object.assign(Object.assign({},p),E)}getIconStyle(h){const f=super.getIconStyle(h),[d,v]=this.getSize(h);return f?Object.assign({width:d*t.ICON_SIZE_RATIO,height:v*t.ICON_SIZE_RATIO},f):!1}drawKeyShape(h,f){const d=this.upsert("key",s.Image,this.getKeyStyle(h),f);return(0,o.connectImage)(this),d}drawHaloShape(h,f){this.upsert("halo",e.Rect,this.getHaloStyle(h),f)}update(h){super.update(h),h&&("x"in h||"y"in h||"z"in h)&&(0,o.dispatchPositionChange)(this)}}return Hu.Image=u,u.defaultStyleProps={size:32},Hu}var id={},AB;function T5e(){if(AB)return id;AB=1,Object.defineProperty(id,"__esModule",{value:!0}),id.Rect=void 0;const n=Vi(),e=au(),t=Ic();class r extends t.BaseNode{constructor(a){super(a)}getKeyStyle(a){const[s,o]=this.getSize(a);return Object.assign(Object.assign({},super.getKeyStyle(a)),{width:s,height:o,x:-s/2,y:-o/2})}getIconStyle(a){const s=super.getIconStyle(a),{width:o,height:l}=this.getShape("key").attributes;return s?Object.assign({width:o*e.ICON_SIZE_RATIO,height:l*e.ICON_SIZE_RATIO},s):!1}drawKeyShape(a,s){return this.upsert("key",n.Rect,this.getKeyStyle(a),s)}}return id.Rect=r,id}var ad={},OB;function A5e(){if(OB)return ad;OB=1,Object.defineProperty(ad,"__esModule",{value:!0}),ad.Star=void 0;const n=au(),e=pl(),t=py();class r extends t.Polygon{constructor(a){super(a)}getInnerR(a){return a.innerR||this.getOuterR(a)*3/8}getOuterR(a){return Math.min(...this.getSize(a))/2}getPoints(a){return(0,e.getStarPoints)(this.getOuterR(a),this.getInnerR(a))}getIconStyle(a){const s=super.getIconStyle(a),o=this.getInnerR(a)*2*n.ICON_SIZE_RATIO;return s?Object.assign({width:o,height:o},s):!1}getPortXY(a,s){const{placement:o="top"}=s,l=this.getShape("key").getLocalBounds(),u=(0,e.getStarPorts)(this.getOuterR(a),this.getInnerR(a));return(0,e.getPortXYByPlacement)(l,o,u,!1)}}return ad.Star=r,ad}var sd={},_B;function O5e(){if(_B)return sd;_B=1,Object.defineProperty(sd,"__esModule",{value:!0}),sd.Triangle=void 0;const n=hr,e=au(),t=lo(),r=pl(),i=Es(),a=Li(),s=py();class o extends s.Polygon{constructor(u){super((0,a.mergeOptions)({style:o.defaultStyleProps},u))}getPoints(u){const{direction:c}=u,[h,f]=this.getSize(u);return(0,r.getTrianglePoints)(h,f,c)}getPortXY(u,c){const{direction:h}=u,{placement:f="top"}=c,d=this.getShape("key").getLocalBounds(),[v,p]=this.getSize(u),g=(0,r.getTrianglePorts)(v,p,h);return(0,r.getPortXYByPlacement)(d,f,g,!1)}getIconStyle(u){const{icon:c,iconText:h,iconSrc:f,direction:d}=u;if(c===!1||(0,n.isEmpty)(h||f))return!1;const v=(0,i.subStyleProps)(this.getGraphicStyle(u),"icon"),p=this.getShape("key").getLocalBounds(),[g,m]=(0,t.getTriangleCenter)(p,d),x=(0,t.getIncircleRadius)(p,d)*2*e.ICON_SIZE_RATIO;return Object.assign({x:g,y:m,width:x,height:x},v)}}return sd.Triangle=o,o.defaultStyleProps={size:40,direction:"up"},sd}var kB;function yW(){return kB||(kB=1,function(n){Object.defineProperty(n,"__esModule",{value:!0}),n.Triangle=n.Star=n.Rect=n.Image=n.HTML=n.Hexagon=n.Ellipse=n.Donut=n.Diamond=n.Circle=n.BaseNode=void 0;var e=Ic();Object.defineProperty(n,"BaseNode",{enumerable:!0,get:function(){return e.BaseNode}});var t=pW();Object.defineProperty(n,"Circle",{enumerable:!0,get:function(){return t.Circle}});var r=h5e();Object.defineProperty(n,"Diamond",{enumerable:!0,get:function(){return r.Diamond}});var i=f5e();Object.defineProperty(n,"Donut",{enumerable:!0,get:function(){return i.Donut}});var a=d5e();Object.defineProperty(n,"Ellipse",{enumerable:!0,get:function(){return a.Ellipse}});var s=v5e();Object.defineProperty(n,"Hexagon",{enumerable:!0,get:function(){return s.Hexagon}});var o=S5e();Object.defineProperty(n,"HTML",{enumerable:!0,get:function(){return o.HTML}});var l=M5e();Object.defineProperty(n,"Image",{enumerable:!0,get:function(){return l.Image}});var u=T5e();Object.defineProperty(n,"Rect",{enumerable:!0,get:function(){return u.Rect}});var c=A5e();Object.defineProperty(n,"Star",{enumerable:!0,get:function(){return c.Star}});var h=O5e();Object.defineProperty(n,"Triangle",{enumerable:!0,get:function(){return h.Triangle}})}(nM)),nM}var PB;function gO(){if(PB)return Ru;PB=1;var n=Ru&&Ru.__rest||function(p,g){var m={};for(var x in p)Object.prototype.hasOwnProperty.call(p,x)&&g.indexOf(x)<0&&(m[x]=p[x]);if(p!=null&&typeof Object.getOwnPropertySymbols=="function")for(var w=0,x=Object.getOwnPropertySymbols(p);w<x.length;w++)g.indexOf(x[w])<0&&Object.prototype.propertyIsEnumerable.call(p,x[w])&&(m[x[w]]=p[x[w]]);return m};Object.defineProperty(Ru,"__esModule",{value:!0}),Ru.BaseCombo=void 0;const e=Vi(),t=hr,r=lo(),i=iy(),a=cO(),s=Y0(),o=Es(),l=Qh(),u=Li(),c=gl(),h=yW(),f=K0(),d=Z0();class v extends h.BaseNode{constructor(g){super((0,u.mergeOptions)({style:v.defaultStyleProps},g)),this.type="combo",this.updateComboPosition(this.parsedAttributes)}getKeySize(g){const{collapsed:m,childrenNode:x=[]}=g;return x.length===0?this.getEmptyKeySize(g):m?this.getCollapsedKeySize(g):this.getExpandedKeySize(g)}getEmptyKeySize(g){const{padding:m,collapsedSize:x}=g,[w,E,M,S]=(0,a.parsePadding)(m);return(0,c.add)((0,l.parseSize)(x),[S+E,w+M,0])}getCollapsedKeySize(g){return(0,l.parseSize)(g.collapsedSize)}getExpandedKeySize(g){const m=this.getContentBBox(g);return[(0,r.getBBoxWidth)(m),(0,r.getBBoxHeight)(m),0]}getContentBBox(g){const{childrenNode:m=[],padding:x}=g,w=m.map(M=>this.context.element.getElement(M)).filter(Boolean);if(w.length===0){const M=new e.AABB,{x:S=0,y:T=0,size:A}=g,[C,B]=(0,l.parseSize)(A);return M.setMinMax([S-C/2,T-B/2,0],[S+C/2,T+B/2,0]),M}const E=(0,r.getCombinedBBox)(w.map(M=>M.getBounds()));return x?(0,r.getExpandedBBox)(E,x):E}drawCollapsedMarkerShape(g,m){const x=this.getCollapsedMarkerStyle(g);this.upsert("collapsed-marker",f.Icon,x,m),(0,d.connectImage)(this)}getCollapsedMarkerStyle(g){if(!g.collapsed||!g.collapsedMarker)return!1;const m=(0,o.subStyleProps)(this.getGraphicStyle(g),"collapsedMarker"),{type:x}=m,w=n(m,["type"]),E=this.getShape("key"),[M,S]=(0,s.getXYByPlacement)(E.getLocalBounds(),"center"),T=Object.assign(Object.assign({},w),{x:M,y:S});if(x){const A=this.getCollapsedMarkerText(x,g);Object.assign(T,{text:A})}return T}getCollapsedMarkerText(g,m){const{childrenData:x=[]}=m,{model:w}=this.context;return g==="descendant-count"?w.getDescendantsData(this.id).length.toString():g==="child-count"?x.length.toString():g==="node-count"?w.getDescendantsData(this.id).filter(E=>w.getElementType((0,i.idOf)(E))==="node").length.toString():(0,t.isFunction)(g)?g(x):""}getComboPosition(g){const{x:m=0,y:x=0,collapsed:w,childrenData:E=[]}=g;if(E.length===0)return[+m,+x,0];if(w){const{model:M}=this.context,S=M.getDescendantsData(this.id).filter(T=>!M.isCombo((0,i.idOf)(T)));if(S.length>0&&S.some(s.hasPosition)){const T=S.reduce((A,C)=>(0,c.add)(A,(0,s.positionOf)(C)),[0,0,0]);return(0,c.divide)(T,S.length)}return[+m,+x,0]}return this.getContentBBox(g).center}getComboStyle(g){const[m,x]=this.getComboPosition(g);return{x:m,y:x,transform:[["translate",m,x]]}}updateComboPosition(g){const m=this.getComboStyle(g);Object.assign(this.style,m);const{x,y:w}=m;this.context.model.syncNodeLikeDatum({id:this.id,style:{x,y:w}}),(0,d.dispatchPositionChange)(this)}render(g,m=this){super.render(g,m),this.drawCollapsedMarkerShape(g,m)}update(g={}){super.update(g),this.updateComboPosition(this.parsedAttributes)}onframe(){super.onframe(),this.attributes.collapsed||this.updateComboPosition(this.parsedAttributes),this.drawKeyShape(this.parsedAttributes,this)}animate(g,m){const x=super.animate(this.attributes.collapsed?g:g.map(w=>{var{x:E,y:M,z:S,transform:T}=w,A=n(w,["x","y","z","transform"]);return A}),m);return x&&new Proxy(x,{set:(w,E,M)=>(E==="currentTime"&&Promise.resolve().then(()=>this.onframe()),Reflect.set(w,E,M))})}}return Ru.BaseCombo=v,v.defaultStyleProps={childrenNode:[],droppable:!0,draggable:!0,collapsed:!1,collapsedSize:32,collapsedMarker:!0,collapsedMarkerZIndex:1,collapsedMarkerFontSize:12,collapsedMarkerTextAlign:"center",collapsedMarkerTextBaseline:"middle",collapsedMarkerType:"child-count"},Ru}var od={},CB;function _5e(){if(CB)return od;CB=1,Object.defineProperty(od,"__esModule",{value:!0}),od.CircleCombo=void 0;const n=Vi(),e=lo(),t=$o(),r=Es(),i=Qh(),a=gO();class s extends a.BaseCombo{constructor(l){super(l)}drawKeyShape(l,u){return this.upsert("key",n.Circle,this.getKeyStyle(l),u)}getKeyStyle(l){const{collapsed:u}=l,c=super.getKeyStyle(l),[h]=this.getKeySize(l);return Object.assign(Object.assign(Object.assign({},c),u&&(0,r.subStyleProps)(c,"collapsed")),{r:h/2})}getCollapsedKeySize(l){const[u,c]=(0,i.parseSize)(l.collapsedSize),h=Math.max(u,c)/2;return[h*2,h*2,0]}getExpandedKeySize(l){const u=this.getContentBBox(l),[c,h]=(0,e.getBBoxSize)(u),f=Math.sqrt(Math.pow(c,2)+Math.pow(h,2))/2;return[f*2,f*2,0]}getIntersectPoint(l,u=!1){const c=this.getShape("key").getBounds();return(0,t.getEllipseIntersectPoint)(l,c,u)}}return od.CircleCombo=s,od}var ld={},NB;function k5e(){if(NB)return ld;NB=1,Object.defineProperty(ld,"__esModule",{value:!0}),ld.RectCombo=void 0;const n=Vi(),e=Es(),t=gO();class r extends t.BaseCombo{constructor(a){super(a)}drawKeyShape(a,s){return this.upsert("key",n.Rect,this.getKeyStyle(a),s)}getKeyStyle(a){const s=super.getKeyStyle(a),[o,l]=this.getKeySize(a);return Object.assign(Object.assign(Object.assign({},s),a.collapsed&&(0,e.subStyleProps)(s,"collapsed")),{width:o,height:l,x:-o/2,y:-l/2})}}return ld.RectCombo=r,ld}var RB;function P5e(){return RB||(RB=1,function(n){Object.defineProperty(n,"__esModule",{value:!0}),n.RectCombo=n.CircleCombo=n.BaseCombo=void 0;var e=gO();Object.defineProperty(n,"BaseCombo",{enumerable:!0,get:function(){return e.BaseCombo}});var t=_5e();Object.defineProperty(n,"CircleCombo",{enumerable:!0,get:function(){return t.CircleCombo}});var r=k5e();Object.defineProperty(n,"RectCombo",{enumerable:!0,get:function(){return r.RectCombo}})}(tM)),tM}var hM={},Ga={},Hi={},LB;function C5e(){if(LB)return Hi;LB=1,Object.defineProperty(Hi,"__esModule",{value:!0}),Hi.simple=Hi.triangleRect=Hi.rect=Hi.vee=Hi.diamond=Hi.triangle=Hi.circle=void 0;const n=(o,l)=>{const u=Math.max(o,l)/2;return[["M",-o/2,0],["A",u,u,0,1,0,2*u-o/2,0],["A",u,u,0,1,0,-o/2,0],["Z"]]};Hi.circle=n;const e=(o,l)=>[["M",-o/2,0],["L",o/2,-l/2],["L",o/2,l/2],["Z"]];Hi.triangle=e;const t=(o,l)=>[["M",-o/2,0],["L",0,-l/2],["L",o/2,0],["L",0,l/2],["Z"]];Hi.diamond=t;const r=(o,l)=>[["M",-o/2,0],["L",o/2,-l/2],["L",4*o/5-o/2,0],["L",o/2,l/2],["Z"]];Hi.vee=r;const i=(o,l)=>[["M",-o/2,-l/2],["L",o/2,-l/2],["L",o/2,l/2],["L",-o/2,l/2],["Z"]];Hi.rect=i;const a=(o,l)=>{const u=o/2,c=o/7,h=o-c;return[["M",-u,0],["L",0,-l/2],["L",0,l/2],["Z"],["M",h-u,-l/2],["L",h+c-u,-l/2],["L",h+c-u,l/2],["L",h-u,l/2],["Z"]]};Hi.triangleRect=a;const s=(o,l)=>[["M",o/2,-l/2],["L",-o/2,0],["L",o/2,0],["L",-o/2,0],["L",o/2,l/2]];return Hi.simple=s,Hi}var IB;function J0(){if(IB)return Ga;IB=1;var n=Ga&&Ga.__createBinding||(Object.create?function(m,x,w,E){E===void 0&&(E=w);var M=Object.getOwnPropertyDescriptor(x,w);(!M||("get"in M?!x.__esModule:M.writable||M.configurable))&&(M={enumerable:!0,get:function(){return x[w]}}),Object.defineProperty(m,E,M)}:function(m,x,w,E){E===void 0&&(E=w),m[E]=x[w]}),e=Ga&&Ga.__setModuleDefault||(Object.create?function(m,x){Object.defineProperty(m,"default",{enumerable:!0,value:x})}:function(m,x){m.default=x}),t=Ga&&Ga.__importStar||function(){var m=function(x){return m=Object.getOwnPropertyNames||function(w){var E=[];for(var M in w)Object.prototype.hasOwnProperty.call(w,M)&&(E[E.length]=M);return E},m(x)};return function(x){if(x&&x.__esModule)return x;var w={};if(x!=null)for(var E=m(x),M=0;M<E.length;M++)E[M]!=="default"&&n(w,x,E[M]);return e(w,x),w}}(),r=Ga&&Ga.__rest||function(m,x){var w={};for(var E in m)Object.prototype.hasOwnProperty.call(m,E)&&x.indexOf(E)<0&&(w[E]=m[E]);if(m!=null&&typeof Object.getOwnPropertySymbols=="function")for(var M=0,E=Object.getOwnPropertySymbols(m);M<E.length;M++)x.indexOf(E[M])<0&&Object.prototype.propertyIsEnumerable.call(m,E[M])&&(w[E[M]]=m[E[M]]);return w};Object.defineProperty(Ga,"__esModule",{value:!0}),Ga.BaseEdge=void 0;const i=Vi(),a=hr,s=lo(),o=Q0(),l=pl(),u=Es(),c=Qh(),h=Li(),f=t(C5e()),d=dO(),v=gW(),p=K0();class g extends v.BaseElement{constructor(x){super((0,h.mergeOptions)({style:g.defaultStyleProps},x)),this.type="edge"}get sourceNode(){const{sourceNode:x}=this.parsedAttributes;return this.context.element.getElement(x)}get targetNode(){const{targetNode:x}=this.parsedAttributes;return this.context.element.getElement(x)}getKeyStyle(x){const w=this.getGraphicStyle(x),{loop:E}=w,M=r(w,["loop"]),{sourceNode:S,targetNode:T}=this,C={d:E&&(0,l.isSameNode)(S,T)?this.getLoopPath(x):this.getKeyPath(x)};return i.Path.PARSED_STYLE_LIST.forEach(B=>{B in M&&(C[B]=M[B])}),C}getLoopPath(x){const{sourcePort:w,targetPort:E}=x,M=this.sourceNode,S=(0,s.getNodeBBox)(M),T=Math.max((0,s.getBBoxWidth)(S),(0,s.getBBoxHeight)(S)),{placement:A,clockwise:C,dist:B=T}=(0,u.subStyleProps)(this.getGraphicStyle(x),"loop");return(0,o.getCubicLoopPath)(M,A,C,B,w,E)}getEndpoints(x,w=!0,E=[]){const{sourcePort:M,targetPort:S}=x,{sourceNode:T,targetNode:A}=this,[C,B]=(0,l.findPorts)(T,A,M,S);if(!w){const H=C?(0,l.getPortPosition)(C):T.getCenter(),W=B?(0,l.getPortPosition)(B):A.getCenter();return[H,W]}const D=typeof E=="function"?E():E,z=(0,l.getConnectionPoint)(C||T,D[0]||B||A),G=(0,l.getConnectionPoint)(B||A,D[D.length-1]||C||T);return[z,G]}getHaloStyle(x){if(x.halo===!1)return!1;const w=this.getKeyStyle(x),E=(0,u.subStyleProps)(this.getGraphicStyle(x),"halo");return Object.assign(Object.assign({},w),E)}getLabelStyle(x){if(x.label===!1||!x.labelText)return!1;const w=(0,u.subStyleProps)(this.getGraphicStyle(x),"label"),{placement:E,offsetX:M,offsetY:S,autoRotate:T,maxWidth:A}=w,C=r(w,["placement","offsetX","offsetY","autoRotate","maxWidth"]),B=(0,o.getLabelPositionStyle)(this.shapeMap.key,E,T,M,S),D=this.shapeMap.key.getLocalBounds(),z=(0,d.getWordWrapWidthByEnds)([D.min,D.max],A);return Object.assign({wordWrapWidth:z},B,C)}getBadgeStyle(x){if(x.badge===!1||!x.badgeText)return!1;const w=(0,u.subStyleProps)(x,"badge"),{offsetX:E,offsetY:M,placement:S}=w,T=r(w,["offsetX","offsetY","placement"]);return Object.assign(T,(0,o.getBadgePositionStyle)(this.shapeMap,S,x.labelPlacement,E,M))}drawArrow(x,w){var E;const M=w==="start",T=x[w==="start"?"startArrow":"endArrow"],A=this.shapeMap.key;if(T){const C=this.getArrowStyle(x,M),[B,D,z]=M?["markerStart","markerStartOffset","startArrowOffset"]:["markerEnd","markerEndOffset","endArrowOffset"],G=A.parsedStyle[B];if(G)G.attr(C);else{const H=C.src?i.Image:i.Path,W=new H({style:C});A.style[B]=W}A.style[D]=x[z]||C.width/2+ +C.lineWidth}else{const C=M?"markerStart":"markerEnd";(E=A.style[C])===null||E===void 0||E.destroy(),A.style[C]=null}}getArrowStyle(x,w){const E=this.getShape("key").attributes,M=w?"startArrow":"endArrow",S=(0,u.subStyleProps)(this.getGraphicStyle(x),M),{size:T,type:A}=S,C=r(S,["size","type"]),[B,D]=(0,c.parseSize)((0,o.getArrowSize)(E.lineWidth,T)),G=((0,a.isFunction)(A)?A:f[A]||f.triangle)(B,D);return Object.assign((0,a.pick)(E,["stroke","strokeOpacity","fillOpacity"]),{width:B,height:D},Object.assign({},G&&{d:G,fill:A==="simple"?"":E.stroke}),C)}drawLabelShape(x,w){const E=this.getLabelStyle(x);this.upsert("label",p.Label,E,w)}drawHaloShape(x,w){const E=this.getHaloStyle(x);this.upsert("halo",i.Path,E,w)}drawBadgeShape(x,w){const E=this.getBadgeStyle(x);this.upsert("badge",p.Badge,E,w)}drawSourceArrow(x){this.drawArrow(x,"start")}drawTargetArrow(x){this.drawArrow(x,"end")}drawKeyShape(x,w){const E=this.getKeyStyle(x);return this.upsert("key",i.Path,E,w)}render(x=this.parsedAttributes,w=this){this.drawKeyShape(x,w),this.getShape("key")&&(this.drawSourceArrow(x),this.drawTargetArrow(x),this.drawLabelShape(x,w),this.drawHaloShape(x,w),this.drawBadgeShape(x,w))}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,w){const E=super.animate(x,w);return E&&new Proxy(E,{set:(M,S,T)=>(S==="currentTime"&&Promise.resolve().then(()=>this.onframe()),Reflect.set(M,S,T))})}}return Ga.BaseEdge=g,g.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},Ga}var ud={},DB;function my(){if(DB)return ud;DB=1,Object.defineProperty(ud,"__esModule",{value:!0}),ud.Cubic=void 0;const n=Q0(),e=Li(),t=J0();class r extends t.BaseEdge{constructor(a){super((0,e.mergeOptions)({style:r.defaultStyleProps},a))}getKeyPath(a){const[s,o]=this.getEndpoints(a),{controlPoints:l,curvePosition:u,curveOffset:c}=a,h=this.getControlPoints(s,o,(0,n.parseCurvePosition)(u),(0,n.parseCurveOffset)(c),l);return(0,n.getCubicPath)(s,o,h)}getControlPoints(a,s,o,l,u){return(u==null?void 0:u.length)===2?u:[(0,n.getCurveControlPoint)(a,s,o[0],l[0]),(0,n.getCurveControlPoint)(a,s,o[1],l[1])]}}return ud.Cubic=r,r.defaultStyleProps={curvePosition:.5,curveOffset:20},ud}var cd={},BB;function N5e(){if(BB)return cd;BB=1,Object.defineProperty(cd,"__esModule",{value:!0}),cd.CubicHorizontal=void 0;const n=Li(),e=my();class t extends e.Cubic{constructor(i){super((0,n.mergeOptions)({style:t.defaultStyleProps},i))}getControlPoints(i,a,s,o){const l=a[0]-i[0];return[[i[0]+l*s[0]+o[0],i[1]],[a[0]-l*s[1]+o[1],a[1]]]}}return cd.CubicHorizontal=t,t.defaultStyleProps={curvePosition:[.5,.5],curveOffset:[0,0]},cd}var hd={},FB;function R5e(){if(FB)return hd;FB=1,Object.defineProperty(hd,"__esModule",{value:!0}),hd.CubicRadial=void 0;const n=Y0(),e=Li(),t=gl(),r=my();class i extends r.Cubic{constructor(s){super((0,e.mergeOptions)({style:i.defaultStyleProps},s))}get ref(){return this.context.model.getRootsData()[0]}getEndpoints(s){if(this.sourceNode.id===this.ref.id)return super.getEndpoints(s);const o=(0,n.positionOf)(this.ref),l=this.sourceNode.getIntersectPoint(o,!0),u=this.targetNode.getIntersectPoint(o);return[l,u]}toRadialCoordinate(s){const o=(0,n.positionOf)(this.ref),l=(0,t.distance)(s,o),u=(0,t.rad)((0,t.subtract)(s,o));return[l,u]}getControlPoints(s,o,l,u){const[c,h]=this.toRadialCoordinate(s),[f]=this.toRadialCoordinate(o),d=f-c;return[[s[0]+(d*l[0]+u[0])*Math.cos(h),s[1]+(d*l[0]+u[0])*Math.sin(h)],[o[0]-(d*l[1]-u[0])*Math.cos(h),o[1]-(d*l[1]-u[0])*Math.sin(h)]]}}return hd.CubicRadial=i,i.defaultStyleProps={curvePosition:.5,curveOffset:20},hd}var fd={},zB;function L5e(){if(zB)return fd;zB=1,Object.defineProperty(fd,"__esModule",{value:!0}),fd.CubicVertical=void 0;const n=Li(),e=my();class t extends e.Cubic{constructor(i){super((0,n.mergeOptions)({style:t.defaultStyleProps},i))}getControlPoints(i,a,s,o){const l=a[1]-i[1];return[[i[0],i[1]+l*s[0]+o[0]],[a[0],a[1]-l*s[1]+o[1]]]}}return fd.CubicVertical=t,t.defaultStyleProps={curvePosition:[.5,.5],curveOffset:[0,0]},fd}var dd={},$B;function I5e(){if($B)return dd;$B=1,Object.defineProperty(dd,"__esModule",{value:!0}),dd.Line=void 0;const n=Li(),e=J0();class t extends e.BaseEdge{constructor(i){super((0,n.mergeOptions)({style:t.defaultStyleProps},i))}getKeyPath(i){const[a,s]=this.getEndpoints(i);return[["M",a[0],a[1]],["L",s[0],s[1]]]}}return dd.Line=t,t.defaultStyleProps={},dd}var vd={},us={},GB;function pO(){if(GB)return us;GB=1,Object.defineProperty(us,"__esModule",{value:!0}),us.orth=a,us.getDirection=l,us.getBBoxSize=u,us.pointToPoint=c,us.nodeToPoint=h,us.pointToNode=f,us.nodeToNode=d,us.insideNode=v,us.freeJoin=p;const n=hr,e=lo(),t=$o(),r=gl(),i={padding:10};function a(g,m,x,w,E,M){const{padding:S}=Object.assign(i,M),T=(0,e.getNodeBBox)(x,S),A=(0,e.getNodeBBox)(w,S),C=[g,...E,m];let B=null;const D=[];for(let z=0,G=C.length;z<G-1;z++){const H=z+1,W=C[z],ee=C[H],X=(0,t.isOrthogonal)(W,ee);let Z=null;if(z===0)if(H===G-1)if(T.intersects(A))Z=v(W,ee,T,A);else if(!(0,e.isPointBBoxCenter)(W,T)&&!(0,e.isPointBBoxCenter)(ee,A)){const J=(0,e.getNearestBoundaryPoint)(W,T),q=(0,e.getNearestBoundaryPoint)(ee,A);Z=c(J,q,l(J,q)),Z.points.unshift(J),Z.points.push(q)}else X||(Z=d(W,ee,T,A));else(0,e.isPointInBBox)(ee,T)?Z=v(W,ee,T,(0,e.getNodeBBox)(ee,S),B):X||(Z=h(W,ee,T));else H===G-1?(0,e.isPointInBBox)(W,A)?Z=v(W,ee,(0,e.getNodeBBox)(W,S),A,B):X||(Z=f(W,ee,A,B)):X||(Z=c(W,ee,B));Z?(D.push(...Z.points),B=Z.direction):B=l(W,ee),H<G-1&&D.push(ee)}return D.map(r.toVector2)}const s={N:"S",S:"N",W:"E",E:"W"},o={N:-Math.PI/2,S:Math.PI/2,E:0,W:Math.PI};function l(g,m){const[x,w]=g,[E,M]=m;return x===E?w>M?"N":"S":w===M?x>E?"W":"E":null}function u(g,m){return m==="N"||m==="S"?(0,e.getBBoxHeight)(g):(0,e.getBBoxWidth)(g)}function c(g,m,x){const w=[g[0],m[1]],E=[m[0],g[1]],M=l(g,w),S=l(g,E),T=x?s[x]:null,A=M===x||M!==T&&S!==x?w:E;return{points:[A],direction:l(A,m)}}function h(g,m,x){if((0,e.isPointBBoxCenter)(g,x)){const w=p(g,m,x);return{points:[w],direction:l(w,m)}}else{const w=(0,e.getNearestBoundaryPoint)(g,x),M=["left","right"].includes((0,e.getNearestBoundarySide)(g,x))?[m[0],w[1]]:[w[0],m[1]];return{points:[M],direction:l(M,m)}}}function f(g,m,x,w){const E=(0,e.isPointBBoxCenter)(m,x)?m:(0,e.getNearestBoundaryPoint)(m,x),M=[[E[0],g[1]],[g[0],E[1]]],S=M.filter(A=>(0,e.isPointOutsideBBox)(A,x)&&!(0,e.isPointOnBBoxBoundary)(A,x,!0)),T=S.filter(A=>l(A,g)!==w);if(T.length>0){const A=T.find(C=>l(g,C)===w)||T[0];return{points:[A],direction:l(A,m)}}else{const A=(0,n.difference)(M,S)[0],C=(0,t.moveTo)(m,A,u(x,w)/2);return{points:[p(C,g,x),C],direction:l(C,m)}}}function d(g,m,x,w){let E=h(g,m,x);const M=(0,r.toVector3)(E.points[0]);if((0,e.isPointInBBox)(M,w)){E=h(m,g,w);const S=(0,r.toVector3)(E.points[0]);if((0,e.isPointInBBox)(S,x)){const T=(0,t.moveTo)(g,M,u(x,l(g,M))/2),A=(0,t.moveTo)(m,S,u(w,l(m,S))/2),C=[(T[0]+A[0])/2,(T[1]+A[1])/2],B=h(g,C,x),D=f(C,m,w,B.direction);E.points=[B.points[0],D.points[0]],E.direction=D.direction}}return E}function v(g,m,x,w,E){const S=(0,e.getCombinedBBox)([x,w]),T=(0,r.distance)(m,S.center)>(0,r.distance)(g,S.center),[A,C]=T?[m,g]:[g,m],B=(0,e.getBBoxHeight)(S)+(0,e.getBBoxWidth)(S);let D;if(E){const H=[A[0]+B*Math.cos(o[E]),A[1]+B*Math.sin(o[E])];D=(0,t.moveTo)((0,e.getNearestBoundaryPoint)(H,S),H,.01)}else D=(0,t.moveTo)((0,e.getNearestBoundaryPoint)(A,S),A,-.01);let z=p(D,C,S),G=[(0,t.round)(D,2),(0,t.round)(z,2)];if((0,n.isEqual)((0,t.round)(D),(0,t.round)(z))){const H=(0,r.angle)((0,r.subtract)(D,A),[1,0,0])+Math.PI/2;z=[C[0]+B*Math.cos(H),C[1]+B*Math.sin(H),0],z=(0,t.round)((0,t.moveTo)((0,e.getNearestBoundaryPoint)(z,S),C,-.01),2);const W=p(D,z,S);G=[D,W,z]}return{points:T?G.reverse():G,direction:l(T?D:z,m)}}function p(g,m,x){let w=[g[0],m[1]];return(0,e.isPointInBBox)(w,x)&&(w=[m[0],g[1]]),w}return us}var Ml={},VB;function bW(){if(VB)return Ml;VB=1,Object.defineProperty(Ml,"__esModule",{value:!0}),Ml.SortedArray=void 0,Ml.estimateCost=h,Ml.getNearestPoint=f,Ml.aStarSearch=p;const n=hr,e=lo(),t=Hj(),r=gl(),i={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:r.manhattanDistance},a=m=>`${Math.round(m[0])}|||${Math.round(m[1])}`;function s(m,x){const w=E=>Math.round(E/x);return(0,n.isNumber)(m)?w(m):m.map(w)}function o(m,x){const w=Math.abs(m-x);return w>Math.PI?2*Math.PI-w:w}function l(m,x){const w=x[0]-m[0],E=x[1]-m[1];return!w&&!E?0:Math.atan2(E,w)}function u(m,x,w,E){const M=l(m,x),S=w[a(m)],A=l(S||E,m);return o(A,M)}const c=(m,x)=>{const{offset:w,gridSize:E}=x,M={};return m.forEach(S=>{if(!S||S.destroyed||!S.isVisible())return;const T=(0,e.getExpandedBBox)(S.getRenderBounds(),w);for(let A=s(T.min[0],E);A<=s(T.max[0],E);A+=1)for(let C=s(T.min[1],E);C<=s(T.max[1],E);C+=1)M[`${A}|||${C}`]=!0}),M};function h(m,x,w){return Math.min(...x.map(E=>w(m,E)))}function f(m,x,w){let E=m[0],M=w(m[0],x);for(let S=0;S<m.length;S++){const T=m[S],A=w(T,x);A<M&&(E=T,M=A)}return E}const d=(m,x,w,E)=>{if(!x)return[m];const{directionMap:M,offset:S}=E,T=(0,e.getExpandedBBox)(x.getRenderBounds(),S),A=Object.keys(M).reduce((C,B)=>{if(w.includes(B)){const D=M[B],[z,G]=(0,e.getBBoxSize)(T),H=[m[0]+D.stepX*z,m[1]+D.stepY*G],W=(0,e.getBBoxSegments)(T);for(let ee=0;ee<W.length;ee++){const X=(0,t.getLinesIntersection)([m,H],W[ee]);X&&(0,e.isPointOnBBoxBoundary)(X,T)&&C.push(X)}}return C},[]);return(0,e.isPointInBBox)(m,T)||A.push(m),A.map(C=>s(C,E.gridSize))},v=(m,x,w,E,M,S,T)=>{const A=[];let C=[S[0]===E[0]?E[0]:m[0]*T,S[1]===E[1]?E[1]:m[1]*T];A.unshift(C);let B=m,D=x[a(B)];for(;D;){const H=D,W=B;u(H,W,x,w)&&(C=[H[0]===W[0]?C[0]:H[0]*T,H[1]===W[1]?C[1]:H[1]*T],A.unshift(C)),D=x[a(H)],B=H}const z=M.map(H=>[H[0]*T,H[1]*T]),G=f(z,C,r.manhattanDistance);return A.unshift(G),A};function p(m,x,w,E){const M=(0,r.toVector2)(m.getCenter()),S=(0,r.toVector2)(x.getCenter()),T=Object.assign(i,E),{gridSize:A}=T,C=T.enableObstacleAvoidance?w:[m,x],B=c(C,T),D=s(M,A),z=s(S,A),G=d(M,m,T.startDirections,T),H=d(S,x,T.endDirections,T);G.forEach(ne=>delete B[a(ne)]),H.forEach(ne=>delete B[a(ne)]);const W={},ee={},X={},Z={},J={},q=new g;for(let ne=0;ne<G.length;ne++){const se=G[ne],ue=a(se);W[ue]=se,Z[ue]=0,J[ue]=h(se,H,T.distFunc),q.add({id:ue,value:J[ue]})}const Q=H.map(ne=>a(ne));let oe=T.maximumLoops,fe,ae=1/0;for(const[ne,se]of Object.entries(W))J[ne]<=ae&&(ae=J[ne],fe=se);for(;Object.keys(W).length>0&&oe>0;){const ne=q.minId(!1);if(ne)fe=W[ne];else break;const se=a(fe);if(Q.includes(se))return v(fe,X,D,S,G,z,A);delete W[se],q.remove(se),ee[se]=!0;for(const ue of Object.values(T.directionMap)){const pe=(0,r.add)(fe,[ue.stepX,ue.stepY]),de=a(pe);if(ee[de])continue;const ke=u(fe,pe,X,D);if(ke>T.maxAllowedDirectionChange||B[de])continue;W[de]||(W[de]=pe);const Ae=T.penalties[ke],De=T.distFunc(fe,pe)+(isNaN(Ae)?A:Ae),Ye=Z[se]+De,rt=Z[de];rt&&Ye>=rt||(X[de]=fe,Z[de]=Ye,J[de]=Ye+h(pe,H,T.distFunc),q.add({id:de,value:J[de]}))}oe-=1}return[]}class g{constructor(){this.arr=[],this.map={},this.arr=[],this.map={}}_innerAdd(x,w){let E=0,M=w-1;for(;M-E>1;){const S=Math.floor((E+M)/2);if(this.arr[S].value>x.value)M=S;else if(this.arr[S].value<x.value)E=S;else{this.arr.splice(S,0,x),this.map[x.id]=!0;return}}this.arr.splice(M,0,x),this.map[x.id]=!0}add(x){delete this.map[x.id];const w=this.arr.length;if(!w||this.arr[w-1].value<x.value){this.arr.push(x),this.map[x.id]=!0;return}this._innerAdd(x,w)}remove(x){this.map[x]&&delete this.map[x]}_clearAndGetMinId(){let x;for(let w=this.arr.length-1;w>=0;w--)this.map[this.arr[w].id]?x=this.arr[w].id:this.arr.splice(w,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()}}return Ml.SortedArray=g,Ml}var HB;function D5e(){if(HB)return vd;HB=1,Object.defineProperty(vd,"__esModule",{value:!0}),vd.Polyline=void 0;const n=lo(),e=Q0(),t=Es(),r=pO(),i=bW(),a=Li(),s=J0();class o extends s.BaseEdge{constructor(u){super((0,a.mergeOptions)({style:o.defaultStyleProps},u))}getControlPoints(u){const{router:c}=u,{sourceNode:h,targetNode:f}=this,[d,v]=this.getEndpoints(u,!1);let p=[];if(!c)p=u.controlPoints;else if(c.type==="shortest-path"){const g=this.context.element.getNodes();p=(0,i.aStarSearch)(h,f,g,c),p.length||(p=(0,r.orth)(d,v,h,f,u.controlPoints,{padding:c.offset}))}else c.type==="orth"&&(p=(0,r.orth)(d,v,h,f,u.controlPoints,c));return p}getPoints(u){const c=this.getControlPoints(u),[h,f]=this.getEndpoints(u,!0,c);return[h,...c,f]}getKeyPath(u){const c=this.getPoints(u);return(0,e.getPolylinePath)(c,u.radius)}getLoopPath(u){const{sourcePort:c,targetPort:h,radius:f}=u,d=this.sourceNode,v=(0,n.getNodeBBox)(d),p=Math.max((0,n.getBBoxWidth)(v),(0,n.getBBoxHeight)(v))/4,{placement:g,clockwise:m,dist:x=p}=(0,t.subStyleProps)(this.getGraphicStyle(u),"loop");return(0,e.getPolylineLoopPath)(d,f,g,m,x,c,h)}}return vd.Polyline=o,o.defaultStyleProps={radius:0,controlPoints:[],router:!1},vd}var gd={},qB;function B5e(){if(qB)return gd;qB=1,Object.defineProperty(gd,"__esModule",{value:!0}),gd.Quadratic=void 0;const n=Q0(),e=Li(),t=J0();class r extends t.BaseEdge{constructor(a){super((0,e.mergeOptions)({style:r.defaultStyleProps},a))}getKeyPath(a){const{curvePosition:s,curveOffset:o}=a,[l,u]=this.getEndpoints(a),c=a.controlPoint||(0,n.getCurveControlPoint)(l,u,s,o);return(0,n.getQuadraticPath)(l,u,c)}}return gd.Quadratic=r,r.defaultStyleProps={curvePosition:.5,curveOffset:30},gd}var jB;function F5e(){return jB||(jB=1,function(n){Object.defineProperty(n,"__esModule",{value:!0}),n.Quadratic=n.Polyline=n.Line=n.CubicVertical=n.CubicRadial=n.CubicHorizontal=n.Cubic=n.BaseEdge=void 0;var e=J0();Object.defineProperty(n,"BaseEdge",{enumerable:!0,get:function(){return e.BaseEdge}});var t=my();Object.defineProperty(n,"Cubic",{enumerable:!0,get:function(){return t.Cubic}});var r=N5e();Object.defineProperty(n,"CubicHorizontal",{enumerable:!0,get:function(){return r.CubicHorizontal}});var i=R5e();Object.defineProperty(n,"CubicRadial",{enumerable:!0,get:function(){return i.CubicRadial}});var a=L5e();Object.defineProperty(n,"CubicVertical",{enumerable:!0,get:function(){return a.CubicVertical}});var s=I5e();Object.defineProperty(n,"Line",{enumerable:!0,get:function(){return s.Line}});var o=D5e();Object.defineProperty(n,"Polyline",{enumerable:!0,get:function(){return o.Polyline}});var l=B5e();Object.defineProperty(n,"Quadratic",{enumerable:!0,get:function(){return l.Quadratic}})}(hM)),hM}var WB;function z5e(){return WB||(WB=1,function(n){var e=Nu&&Nu.__createBinding||(Object.create?function(r,i,a,s){s===void 0&&(s=a);var o=Object.getOwnPropertyDescriptor(i,a);(!o||("get"in o?!i.__esModule:o.writable||o.configurable))&&(o={enumerable:!0,get:function(){return i[a]}}),Object.defineProperty(r,s,o)}:function(r,i,a,s){s===void 0&&(s=a),r[s]=i[a]}),t=Nu&&Nu.__exportStar||function(r,i){for(var a in r)a!=="default"&&!Object.prototype.hasOwnProperty.call(i,a)&&e(i,r,a)};Object.defineProperty(n,"__esModule",{value:!0}),t(P5e(),n),t(F5e(),n),t(yW(),n)}(Nu)),Nu}var UB;function pl(){if(UB)return Wn;UB=1;var n=Wn&&Wn.__rest||function(q,Q){var oe={};for(var fe in q)Object.prototype.hasOwnProperty.call(q,fe)&&Q.indexOf(fe)<0&&(oe[fe]=q[fe]);if(q!=null&&typeof Object.getOwnPropertySymbols=="function")for(var ae=0,fe=Object.getOwnPropertySymbols(q);ae<fe.length;ae++)Q.indexOf(fe[ae])<0&&Object.prototype.propertyIsEnumerable.call(q,fe[ae])&&(oe[fe[ae]]=q[fe[ae]]);return oe};Object.defineProperty(Wn,"__esModule",{value:!0}),Wn.isNode=o,Wn.isEdge=l,Wn.isCombo=u,Wn.isElement=c,Wn.isSameNode=h,Wn.getPortXYByPlacement=d,Wn.getAllPorts=v,Wn.isSimplePort=p,Wn.getPortPosition=g,Wn.findPorts=m,Wn.findPort=x,Wn.getConnectionPoint=E,Wn.getPortConnectionPoint=M,Wn.getNodeConnectionPoint=S,Wn.getTextStyleByPlacement=T,Wn.getStarPoints=A,Wn.getStarPorts=C,Wn.getTrianglePoints=B,Wn.getTrianglePorts=D,Wn.getBoundingPoints=z,Wn.getDiamondPoints=G,Wn.isVisible=H,Wn.setAttributes=W,Wn.updateStyle=ee,Wn.getHexagonPoints=X,Wn.markToBeDestroyed=Z,Wn.isToBeDestroyed=J;const e=hr,t=z5e(),r=lo(),i=uO(),a=$o(),s=Y0();function o(q){return q instanceof t.BaseNode&&q.type==="node"}function l(q){return q instanceof t.BaseEdge}function u(q){return q instanceof t.BaseCombo}function c(q){return o(q)||l(q)||u(q)}function h(q,Q){return!q||!Q?!1:q===Q}const f={top:[.5,0],right:[1,.5],bottom:[.5,1],left:[0,.5],"left-top":[0,0],"top-left":[0,0],"left-bottom":[0,1],"bottom-left":[0,1],"right-top":[1,0],"top-right":[1,0],"right-bottom":[1,1],"bottom-right":[1,1],default:[.5,.5]};function d(q,Q,oe=f,fe=!0){const ae=[.5,.5],ne=(0,e.isString)(Q)?(0,e.get)(oe,Q.toLocaleLowerCase(),ae):Q;if(!fe&&(0,e.isString)(Q))return ne;const[se,ue]=ne||ae;return[q.min[0]+(0,r.getBBoxWidth)(q)*se,q.min[1]+(0,r.getBBoxHeight)(q)*ue]}function v(q){if(!q)return{};const Q=q.getPorts();return(q.attributes.ports||[]).forEach((fe,ae)=>{var ne;const{key:se,placement:ue}=fe;p(fe)&&(Q[ne=se||ae]||(Q[ne]=(0,s.getXYByPlacement)(q.getShape("key").getBounds(),ue)))}),Q}function p(q){const{r:Q}=q;return!Q||Number(Q)===0}function g(q){return(0,i.isPoint)(q)?q:q.getPosition()}function m(q,Q,oe,fe){const ae=x(q,Q,oe,fe),ne=x(Q,q,fe,oe);return[ae,ne]}function x(q,Q,oe,fe){const ae=v(q);if(oe)return ae[oe];const ne=Object.values(ae);if(ne.length===0)return;const se=ne.map(de=>g(de)),ue=w(Q,fe),[pe]=(0,a.findNearestPoints)(se,ue);return ne.find(de=>g(de)===pe)}function w(q,Q){const oe=v(q);if(Q)return[g(oe[Q])];const fe=Object.values(oe);return fe.length>0?fe.map(ae=>g(ae)):[q.getCenter()]}function E(q,Q){return u(q)||o(q)?S(q,Q):M(q,Q)}function M(q,Q){if(!q||!Q)return[0,0,0];if((0,i.isPoint)(q))return q;if(q.attributes.linkToCenter)return q.getPosition();const oe=(0,i.isPoint)(Q)?Q:o(Q)?Q.getCenter():Q.getPosition();return(0,a.getEllipseIntersectPoint)(oe,q.getBounds())}function S(q,Q){if(!q||!Q)return[0,0,0];const oe=(0,i.isPoint)(Q)?Q:o(Q)?Q.getCenter():Q.getPosition();return q.getIntersectPoint(oe)||q.getCenter()}function T(q,Q="bottom",oe=0,fe=0,ae=!1){const ne=Q.split("-"),[se,ue]=(0,s.getXYByPlacement)(q,Q),[pe,de]=ae?["bottom","top"]:["top","bottom"],ke=ne.includes("top")?de:ne.includes("bottom")?pe:"middle",Ae=ne.includes("left")?"right":ne.includes("right")?"left":"center";return{transform:[["translate",se+oe,ue+fe]],textBaseline:ke,textAlign:Ae}}function A(q,Q){return[[0,-q],[Q*Math.cos(3*Math.PI/10),-Q*Math.sin(3*Math.PI/10)],[q*Math.cos(Math.PI/10),-q*Math.sin(Math.PI/10)],[Q*Math.cos(Math.PI/10),Q*Math.sin(Math.PI/10)],[q*Math.cos(3*Math.PI/10),q*Math.sin(3*Math.PI/10)],[0,Q],[-q*Math.cos(3*Math.PI/10),q*Math.sin(3*Math.PI/10)],[-Q*Math.cos(Math.PI/10),Q*Math.sin(Math.PI/10)],[-q*Math.cos(Math.PI/10),-q*Math.sin(Math.PI/10)],[-Q*Math.cos(3*Math.PI/10),-Q*Math.sin(3*Math.PI/10)]]}function C(q,Q){const oe={};return oe.top=[0,-q],oe.left=[-q*Math.cos(Math.PI/10),-q*Math.sin(Math.PI/10)],oe["left-bottom"]=[-q*Math.cos(3*Math.PI/10),q*Math.sin(3*Math.PI/10)],oe.bottom=[0,Q],oe["right-bottom"]=[q*Math.cos(3*Math.PI/10),q*Math.sin(3*Math.PI/10)],oe.right=oe.default=[q*Math.cos(Math.PI/10),-q*Math.sin(Math.PI/10)],oe}function B(q,Q,oe){const fe=Q/2,ae=q/2,ne={up:[[-ae,fe],[ae,fe],[0,-fe]],left:[[-ae,0],[ae,fe],[ae,-fe]],right:[[-ae,fe],[-ae,-fe],[ae,0]],down:[[-ae,-fe],[ae,-fe],[0,fe]]};return ne[oe]||ne.up}function D(q,Q,oe){const fe=Q/2,ae=q/2,ne={};return oe==="down"?(ne.bottom=ne.default=[0,fe],ne.right=[ae,-fe],ne.left=[-ae,-fe]):oe==="left"?(ne.top=[ae,-fe],ne.bottom=[ae,fe],ne.left=ne.default=[-ae,0]):oe==="right"?(ne.top=[-ae,-fe],ne.bottom=[-ae,fe],ne.right=ne.default=[ae,0]):(ne.left=[-ae,fe],ne.top=ne.default=[0,-fe],ne.right=[ae,fe]),ne}function z(q,Q){return[[q/2,-Q/2],[q/2,Q/2],[-q/2,Q/2],[-q/2,-Q/2]]}function G(q,Q){return[[0,-Q/2],[q/2,0],[0,Q/2],[-q/2,0]]}function H(q){return(0,e.get)(q,["style","visibility"])!=="hidden"}function W(q,Q){const{zIndex:oe,transform:fe,transformOrigin:ae,visibility:ne,cursor:se,clipPath:ue,component:pe}=Q,de=n(Q,["zIndex","transform","transformOrigin","visibility","cursor","clipPath","component"]);Object.assign(q.attributes,de),fe&&q.setAttribute("transform",fe),(0,e.isNumber)(oe)&&q.setAttribute("zIndex",oe),ae&&q.setAttribute("transformOrigin",ae),ne&&q.setAttribute("visibility",ne),se&&q.setAttribute("cursor",se),ue&&q.setAttribute("clipPath",ue),pe&&q.setAttribute("component",pe)}function ee(q,Q){"update"in q?q.update(Q):q.attr(Q)}function X(q){return[[0,q],[q*Math.sqrt(3)/2,q/2],[q*Math.sqrt(3)/2,-q/2],[0,-q],[-q*Math.sqrt(3)/2,-q/2],[-q*Math.sqrt(3)/2,q/2]]}function Z(q){(0,e.set)(q,"__to_be_destroyed__",!0)}function J(q){return(0,e.get)(q,"__to_be_destroyed__",!1)}return Wn}var YB;function Q0(){return YB||(YB=1,function(n){Object.defineProperty(n,"__esModule",{value:!0}),n.getRadians=void 0,n.getLabelPositionStyle=u,n.getBadgePositionStyle=c,n.getCurveControlPoint=f,n.parseCurveOffset=d,n.parseCurvePosition=v,n.getQuadraticPath=p,n.getCubicPath=g,n.getPolylinePath=m,n.getBorderRadiusPoints=x,n.getLoopEndpoints=E,n.getCubicLoopPath=M,n.getCubicLoopControlPoints=S,n.getPolylineLoopPath=T,n.getPolylineLoopControlPoints=A,n.getSubgraphRelatedEdges=C,n.findActualConnectNodeData=B,n.getArrowSize=D;const e=hr,t=lo(),r=$Te(),i=pl(),a=iy(),s=$o(),o=pO(),l=gl();function u(z,G,H,W,ee){let q=typeof G=="number"?G:.5;G==="start"&&(q=0),G==="end"&&(q=.99);const Q=(0,s.parsePoint)(z.getPoint(q)),oe=(0,s.parsePoint)(z.getPoint(q+.01));let fe=G==="start"?"left":G==="end"?"right":"center";if((0,s.isHorizontal)(Q,oe)||!H){const[de,ke]=h(z,q,W,ee);return{transform:[["translate",de,ke]],textAlign:fe}}let ae=Math.atan2(oe[1]-Q[1],oe[0]-Q[0]);oe[0]<Q[0]&&(fe=fe==="center"?fe:fe==="left"?"right":"left",W*=-1,ae+=Math.PI);const[se,ue]=h(z,q,W,ee,ae),pe=[["translate",se,ue],["rotate",ae/Math.PI*180]];return{textAlign:fe,transform:pe}}function c(z,G,H,W,ee){var X,Z;const J=((X=z.badge)===null||X===void 0?void 0:X.getGeometryBounds().halfExtents[0])*2||0,q=((Z=z.label)===null||Z===void 0?void 0:Z.getGeometryBounds().halfExtents[0])*2||0;return u(z.key,H,!0,(q?(q/2+J/2)*(G==="suffix"?1:-1):0)+W,ee)}function h(z,G,H,W,ee){const[X,Z]=(0,s.parsePoint)(z.getPoint(G));let J=H,q=W;return ee&&(J=H*Math.cos(ee)-W*Math.sin(ee),q=H*Math.sin(ee)+W*Math.cos(ee)),[X+J,Z+q]}function f(z,G,H,W){if((0,e.isEqual)(z,G))return z;const ee=(0,l.subtract)(G,z),X=[z[0]+H*ee[0],z[1]+H*ee[1]],Z=(0,l.normalize)((0,l.perpendicular)(ee,!1));return X[0]+=W*Z[0],X[1]+=W*Z[1],X}function d(z){return(0,e.isNumber)(z)?[z,-z]:z}function v(z){return(0,e.isNumber)(z)?[z,1-z]:z}function p(z,G,H){return[["M",z[0],z[1]],["Q",H[0],H[1],G[0],G[1]]]}function g(z,G,H){return[["M",z[0],z[1]],["C",H[0][0],H[0][1],H[1][0],H[1][1],G[0],G[1]]]}function m(z,G=0,H=!1){const W=z.length-1,ee=z[0],X=z[W],Z=z.slice(1,W),J=[["M",ee[0],ee[1]]];return Z.forEach((q,Q)=>{const oe=Z[Q-1]||ee,fe=Z[Q+1]||X;if(!(0,s.isCollinear)(oe,q,fe)&&G){const[ae,ne]=x(oe,q,fe,G);J.push(["L",ae[0],ae[1]],["Q",q[0],q[1],ne[0],ne[1]],["L",ne[0],ne[1]])}else J.push(["L",q[0],q[1]])}),J.push(["L",X[0],X[1]]),H&&J.push(["Z"]),J}function x(z,G,H,W){const ee=(0,l.manhattanDistance)(z,G),X=(0,l.manhattanDistance)(H,G),Z=Math.min(W,Math.min(ee,X)/2),J=[G[0]-Z/ee*(G[0]-z[0]),G[1]-Z/ee*(G[1]-z[1])],q=[G[0]-Z/X*(G[0]-H[0]),G[1]-Z/X*(G[1]-H[1])];return[J,q]}const w=z=>{const G=Math.PI/2,H=(0,t.getBBoxHeight)(z)/2,W=(0,t.getBBoxWidth)(z)/2,ee=Math.atan2(H,W)/2,X=Math.atan2(W,H)/2;return{top:[-G-X,-G+X],"top-right":[-G+X,-ee],"right-top":[-G+X,-ee],right:[-ee,ee],"bottom-right":[ee,G-X],"right-bottom":[ee,G-X],bottom:[G-X,G+X],"bottom-left":[G+X,Math.PI-ee],"left-bottom":[G+X,Math.PI-ee],left:[Math.PI-ee,Math.PI+ee],"top-left":[Math.PI+ee,-G-X],"left-top":[Math.PI+ee,-G-X]}};n.getRadians=w;function E(z,G,H,W,ee){const X=(0,t.getNodeBBox)(z),Z=z.getCenter();let J=W&&(0,i.getPortPosition)(W),q=ee&&(0,i.getPortPosition)(ee);if(!J||!q){const Q=(0,n.getRadians)(X),oe=Q[G][0],fe=Q[G][1],[ae,ne]=(0,t.getBBoxSize)(X),se=Math.max(ae,ne),ue=(0,l.add)(Z,[se*Math.cos(oe),se*Math.sin(oe),0]),pe=(0,l.add)(Z,[se*Math.cos(fe),se*Math.sin(fe),0]);J=(0,i.getNodeConnectionPoint)(z,ue),q=(0,i.getNodeConnectionPoint)(z,pe),H||([J,q]=[q,J])}return[J,q]}function M(z,G,H,W,ee,X){const Z=z.getPorts()[ee||X],J=z.getPorts()[X||ee];let[q,Q]=E(z,G,H,Z,J);const oe=S(z,q,Q,W);return Z&&(q=(0,i.getPortConnectionPoint)(Z,oe[0])),J&&(Q=(0,i.getPortConnectionPoint)(J,oe.at(-1))),g(q,Q,oe)}function S(z,G,H,W){const ee=z.getCenter();if((0,e.isEqual)(G,H)){const X=(0,l.subtract)(G,ee),Z=[W*Math.sign(X[0])||W/2,W*Math.sign(X[1])||-W/2,0];return[(0,l.add)(G,Z),(0,l.add)(H,(0,l.multiply)(Z,[1,-1,1]))]}return[(0,s.moveTo)(ee,G,(0,l.distance)(ee,G)+W),(0,s.moveTo)(ee,H,(0,l.distance)(ee,H)+W)]}function T(z,G,H,W,ee,X,Z){const J=(0,i.getAllPorts)(z),q=J[X||Z],Q=J[Z||X];let[oe,fe]=E(z,H,W,q,Q);const ae=A(z,oe,fe,ee);return q&&(oe=(0,i.getPortConnectionPoint)(q,ae[0])),Q&&(fe=(0,i.getPortConnectionPoint)(Q,ae.at(-1))),m([oe,...ae,fe],G)}function A(z,G,H,W){const ee=[],X=(0,t.getNodeBBox)(z);if((0,e.isEqual)(G,H))switch((0,t.getNearestBoundarySide)(G,X)){case"left":ee.push([G[0]-W,G[1]]),ee.push([G[0]-W,G[1]+W]),ee.push([G[0],G[1]+W]);break;case"right":ee.push([G[0]+W,G[1]]),ee.push([G[0]+W,G[1]+W]),ee.push([G[0],G[1]+W]);break;case"top":ee.push([G[0],G[1]-W]),ee.push([G[0]+W,G[1]-W]),ee.push([G[0]+W,G[1]]);break;case"bottom":ee.push([G[0],G[1]+W]),ee.push([G[0]+W,G[1]+W]),ee.push([G[0]+W,G[1]]);break}else{const Z=(0,t.getNearestBoundarySide)(G,X),J=(0,t.getNearestBoundarySide)(H,X);if(Z===J){const q=Z;let Q,oe;switch(q){case"left":Q=Math.min(G[0],H[0])-W,ee.push([Q,G[1]]),ee.push([Q,H[1]]);break;case"right":Q=Math.max(G[0],H[0])+W,ee.push([Q,G[1]]),ee.push([Q,H[1]]);break;case"top":oe=Math.min(G[1],H[1])-W,ee.push([G[0],oe]),ee.push([H[0],oe]);break;case"bottom":oe=Math.max(G[1],H[1])+W,ee.push([G[0],oe]),ee.push([H[0],oe]);break}}else{const q=(ae,ne)=>({left:[ne[0]-W,ne[1]],right:[ne[0]+W,ne[1]],top:[ne[0],ne[1]-W],bottom:[ne[0],ne[1]+W]})[ae],Q=q(Z,G),oe=q(J,H),fe=(0,o.freeJoin)(Q,oe,X);ee.push(Q,fe,oe)}}return ee}function C(z,G){const H=new Set,W=new Set,ee=new Set;return z.forEach(X=>{G(X).forEach(J=>{H.add(J),z.includes(J.source)&&z.includes(J.target)?W.add(J):ee.add(J)})}),{edges:Array.from(H),internal:Array.from(W),external:Array.from(ee)}}function B(z,G){const H=[];let W=z;for(;W;){H.push(W);const ee=G((0,a.idOf)(W));if(ee)W=ee;else break}if(H.some(ee=>{var X;return(X=ee.style)===null||X===void 0?void 0:X.collapsed})){const ee=H.reverse().findIndex(r.isCollapsed);return H[ee]||H.at(-1)}return z}function D(z,G){return G||(z<4?10:z===4?12:z*2.5)}}(eM)),eM}var xW=Q0();const i1=[16,16],$5e=(n,e,t,r)=>{const{halfExtents:i}=n.getGeometryBounds(),a=1,s=t[1]===t[3]?0:t[1]>t[3]?t[3]:t[1],o=[-i[0]-s+4,-16/2],l=[i[0]-i1[0]+s-4,-16/2],u=[[o[0]*a,o[1]],[l[0]*a,l[1]]];return e==="start"?u[0]:e==="end"?u[1]:[0,0]},wW=(n,e,t)=>{const r=6+i1[0];if(n&&e)return[3,r,3,r];if(t){if(n)return[3,r,3,6];if(e)return[3,6,3,r]}else{if(n)return[3,6,3,r];if(e)return[3,r,3,6]}return[3,6,3,6]},G5e=(n,e,t)=>{const{id:r,startArrow:i,endArrow:a,type:s}=rr(n.getGraphicStyle(e),"label"),o=n.getShape("key"),l=n.getShape(`label-${r}`),u=hy(o),c=wW(i,a,u),h=$5e(l,t,c),f=`translate(${h[0]}, ${h[1]})`,d={start:"arrow_back",end:"arrow_forward"},v=s==="filled"?"white":"black";return{src:Ec(ma(n==null?void 0:n.context).iconSpriteText,d[t],v),width:i1[0],height:i1[1],transform:f,zIndex:1}},V5e=(n,e,t,r)=>{const{color:i,lineHighlightColor:a}=e,s=jj(a,r),o=lp(n,s,t,n.getTheme());return{fill:i||o}},XB=(n,e,t)=>{const r={start:"edge_start_arrow",end:"edge_end_arrow"},{fill:i}=V5e(ma(n==null?void 0:n.context),e,Uj(n),t),{translate:a,rotate:s}=Wj(n.getShape("key"),.5,t==="start"?-12:0,-10/2,!1);return{src:Ec(ma(n==null?void 0:n.context).iconSpriteText,r[t],i),width:12,height:10,transform:`translate(${a.x}, ${a.y}) rotate(${s})`}};function mO(n,e,t){var s,o;const{direction:r}=e,i="middle-start-arrow",a="middle-end-arrow";r!=="forward"&&((s=n.shapeMap[i])==null||s.destroy(),delete n.shapeMap[i]),r!=="backward"&&((o=n.shapeMap[a])==null||o.destroy(),delete n.shapeMap[a]),(e.direction==="forward"||e.direction==="both")&&n.upsert("middle-start-arrow",Qa,XB(n,e,"start"),t),(e.direction==="backward"||e.direction==="both")&&n.upsert("middle-end-arrow",Qa,XB(n,e,"end"),t)}function yO(n,e){var r;const t=hy(n.getShape("key"));(r=e.labels)==null||r.forEach(i=>{const{labelId:a,labelStartArrow:s,labelEndArrow:o}=i,l=n.getShape(`label-${a}`),u=l.style,c={...e,...i},[h,f]=t?[o,s]:[s,o];[{type:"start",key:"startArrow",arrow:h},{type:"end",key:"endArrow",arrow:f}].forEach(({type:v,arrow:p,key:g})=>{var m;if(p===!1&&((m=u[g])==null||m.destroy(),delete u[g]),p===!0){const x=G5e(n,c,v),w=new Qa({style:x});u[g]=w,l.appendChild(u[g])}})})}const H5e={"primary/primary-0":"#000000","red/red-0":"#000000","red/red-10":"#410002","red/red-20":"#690005","red/red-30":"#93000A","red/red-40":"#BA1A1A","red/red-50":"#DE3730","red/red-60":"#FF5449","red/red-70":"#FF897D","red/red-80":"#FFB4AB","red/red-90":"#FFDAD6","red/red-95":"#FFEDEA","primary/primary-10":"#002020","primary/primary-20":"#003737","primary/primary-30":"#004F4F","primary/primary-40":"#006A6A","primary/primary-50":"#008585","primary/primary-60":"#00A1A1","primary/primary-70":"#1EBEBE","primary/primary-80":"#4CDADA","primary/primary-90":"#6FF7F6","primary/primary-95":"#ADFFFE","primary/primary-99":"#F1FFFE","red/red-99":"#FFFBFF","yellow/yellow-0":"#000000","yellow/yellow-10":"#2A1700","yellow/yellow-20":"#462A00","yellow/yellow-30":"#653E00","yellow/yellow-40":"#855400","yellow/yellow-50":"#A66A00","yellow/yellow-60":"#C98100","yellow/yellow-70":"#ED9900","yellow/yellow-80":"#FFB95C","yellow/yellow-90":"#FFDDB7","yellow/yellow-95":"#FFEEDE","green/green-0":"#000000","green/green-10":"#002109","green/green-20":"#003914","green/green-30":"#005320","green/green-40":"#186C32","green/green-50":"#378648","yellow/yellow-99":"#FFFBFF","green/green-60":"#52A160","green/green-70":"#6CBD78","green/green-80":"#87D991","green/green-90":"#A2F6AB","green/green-95":"#C6FFC8","blue/blue-0":"#000000","blue/blue-10":"#001C3A","green/green-99":"#F6FFF1","blue/blue-20":"#00315F","blue/blue-30":"#004786","blue/blue-40":"#005FAF","blue/blue-50":"#0078DA","blue/blue-60":"#2792FF","blue/blue-70":"#72ADFF","blue/blue-80":"#A5C8FF","blue/blue-90":"#D4E3FF","blue/blue-95":"#EBF1FF","grey/grey-0":"#000000","grey/grey-4":"#0B0F0F","grey/grey-6":"#101414","grey/grey-10":"#191C1C","grey/grey-20":"#2D3131","grey/grey-30":"#444747","grey/grey-40":"#5B5F5F","grey/grey-50":"#747877","grey/grey-60":"#8E9191","grey/grey-70":"#A9ACAB","grey/grey-80":"#C4C7C6","grey/grey-90":"#E0E3E2","grey/grey-92":"#E6E9E8","grey/grey-95":"#EFF1F0","blue-grey/blue-grey-0":"#000000","blue-grey/blue-grey-10":"#141D1D","blue-grey/blue-grey-20":"#293232","blue-grey/blue-grey-30":"#3F4948","blue-grey/blue-grey-40":"#566060","blue-grey/blue-grey-50":"#6F7979","blue-grey/blue-grey-60":"#889392","blue-grey/blue-grey-70":"#A3ADAD","blue-grey/blue-grey-80":"#BEC9C8","blue-grey/blue-grey-90":"#DAE5E4","blue-grey/blue-grey-92":"#E0EBEA","blue-grey/blue-grey-95":"#E9F3F2","blue/blue-99":"#FDFCFF","grey/grey-98":"#F7FAF9","primary/primary-100":"#FFFFFF","red/red-100":"#FFFFFF","yellow/yellow-100":"#FFFFFF","green/green-100":"#FFFFFF","blue/blue-100":"#FFFFFF","grey/grey-100":"#FFFFFF","blue-grey/blue-grey-100":"#FFFFFF"},q5e={"background-neutral-default":"#F7FAF9","text-neutral-default":"#191C1C","text-neutral-default-subtle":"#3F4948","background-neutral-subtle":"#FFFFFF","background-neutral-inverse":"#2D3131","text-neutral-inverse":"#EFF1F0","icon-primary-default":"#008585","icon-error-default":"#DE3730","icon-warning-default":"#ED9900","icon-success-default":"#378648","icon-info-default":"#0078DA","border-primary-default":"#008585","border-error-default":"#DE3730","border-warning-default":"#ED9900","border-success-default":"#378648","border-info-default":"#0078DA","path/outline-neutral-default":"#3F4948","guides/outline-accent":"#FF5449","background-primary-default":"#6FF7F6","background-primary-hovered":"#4CDADA","background-neutral-hovered":"#C4C7C6","background-error-default":"#FFDAD6","background-error-hovered":"#FFB4AB","background-warning-default":"#FFDDB7","background-warning-hovered":"#FFB95C","background-success-default":"#A2F6AB","background-success-hovered":"#87D991","background-info-default":"#D4E3FF","background-info-hovered":"#A5C8FF"},j5e={"background-neutral-default":"#101414","text-neutral-default":"#E0E3E2","text-neutral-default-subtle":"#A3ADAD","background-neutral-subtle":"#0B0F0F","background-neutral-inverse":"#E0E3E2","text-neutral-inverse":"#191C1C","icon-primary-default":"#1EBEBE","icon-error-default":"#FF897D","icon-warning-default":"#ED9900","icon-success-default":"#6CBD78","icon-info-default":"#72ADFF","border-primary-default":"#1EBEBE","border-error-default":"#FF897D","border-warning-default":"#ED9900","border-success-default":"#6CBD78","border-info-default":"#72ADFF","path/outline-neutral-default":"#BEC9C8","guides/outline-accent":"#FF5449","background-primary-default":"#004F4F","background-primary-hovered":"#006A6A","background-neutral-hovered":"#5B5F5F","background-error-default":"#93000A","background-error-hovered":"#BA1A1A","background-warning-default":"#653E00","background-warning-hovered":"#855400","background-success-default":"#005320","background-success-hovered":"#186C32","background-info-default":"#004786","background-info-hovered":"#005FAF"},W5e={palettes:H5e,light:q5e,dark:j5e},U5e=(n,e="light")=>{const{color:t,position:r,type:i,customBackground:a}=rr(n,"label"),s=W5e[e];let o=s["text-neutral-default"],l=s["background-neutral-default"],u="transparent";const c=jj(n.lineHighlightColor,r<=.5?"start":"end");i==="filled"?(o=s["text-neutral-inverse"],l=s["background-neutral-inverse"]):i==="outlined"&&(l=s["background-neutral-default"],u=s["path/outline-neutral-default"],c==="info"?u=s["border-info-default"]:c==="success"?u=s["border-success-default"]:c==="warning"?u=s["border-warning-default"]:c==="error"&&(u=s["border-error-default"]));const h=$t(a==null?void 0:a.radius)?4:a==null?void 0:a.radius,f=$t(a==null?void 0:a.borderWidth)?1:a==null?void 0:a.borderWidth;return{fill:t||o,background:!0,backgroundFill:(a==null?void 0:a.color)||l,backgroundStroke:(a==null?void 0:a.borderColor)||u,backgroundRadius:h,backgroundLineWidth:f,backgroundOpacity:1}};function Y5e(n,e){const t=rr(n.getGraphicStyle(e),"label"),{placement:r,offsetX:i,offsetY:a,autoRotate:s,maxWidth:o,textAlign:l,position:u,type:c,startArrow:h,endArrow:f,fill:d,color:v,customBackground:p,...g}=t,m=U5e(e,ma(n==null?void 0:n.context).getTheme()),{translate:x,rotate:w}=Wj(n.getShape("key"),$t(u)?.5:u,i??0,a),E=s?`translate(${x.x}, ${x.y}) rotate(${w})`:`translate(${x.x}, ${x.y})`,M=n.getShape("key"),S=hy(M),T=wW(h,f,S),C=n.context.model.getElementState(n.id).includes("readonly");return{...g,...m,textAlign:l||"center",textBaseline:"middle",padding:T,transform:E,opacity:C?.72:g.opacity??1}}function bO(n,e,t){var i;X5e(n);const r=[];(i=e.labels)==null||i.forEach(a=>{const s=Y5e(n,{...e,...a}),o=n.upsert(`label-${a.labelId}`,hl,s,t);o&&r.push(o)}),requestAnimationFrame(()=>{r.forEach(a=>{a&&typeof a.toFront=="function"&&(a.toFront(),a.childNodes&&a.childNodes.length>0&&a.childNodes[0].toFront())})})}function X5e(n){const e=n.shapeMap;Object.keys(e).filter(r=>r.startsWith("label-")).forEach(r=>{var i;(i=e[r])==null||i.destroy(),delete e[r]})}class EW extends eA{getEndpoints(e){return qj(this.sourceNode,this.targetNode)||super.getEndpoints(e)}getKeyStyle(e){const t=Uj(this),r=super.getKeyStyle(e),i=hO(ma(this.context),e,t,this);return{...r,...i}}getLoopPath(e){const{sourcePort:t,targetPort:r}=e,i=this.sourceNode.getShape("icon");i.getPorts=this.sourceNode.getPorts,i.getIntersectPoint=this.sourceNode.getIntersectPoint,i.getCenter=()=>i.getBounds().center,i.getShape=()=>i;const a=up.getNodeBBox(i.getPosition()),s=Math.max(up.getBBoxWidth(a),up.getBBoxHeight(a)),{placement:o,clockwise:l,dist:u=s}=rr(this.getGraphicStyle(e),"loop");return xW.getCubicLoopPath(i,o,l,u,t,r)}render(e,t){super.render(e,t),bO(this,e,t),mO(this,e,t),yO(this,e)}}ia(wi.EDGE,"line-edge",EW);var ZB=pl(),fM=pO(),Z5e=bW();const dM={left:65,right:65,bump:65},SW=120,K5e=.01;function MW(n,e,t,r,i){const a=(i==null?void 0:i.leftOffset)??dM.left,s=(i==null?void 0:i.rightOffset)??dM.right,o=(i==null?void 0:i.bumpOffset)??dM.bump,l=(i==null?void 0:i.gapThreshold)??SW;return i!=null&&i.fromYOffset&&(e+=i.fromYOffset),i!=null&&i.toYOffset&&(r+=i.toYOffset),J5e(n,t,l)?Q5e(n,e,t,r,a,s,o):eAe(n,e,t,r,a,s)}function J5e(n,e,t){return Math.abs(n-e)<=t}function Q5e(n,e,t,r,i,a,s){if(n>=t&&e>=r){const c=n+a+s,h=e-Math.abs(r-e)/2,f=t-i-s;return[[n+a,e],[c,e],[c,h],[f,h],[f,r],[t-i,r]]}if(n>=t&&e<=r){const c=n+a+s,h=e+Math.abs(r-e)/2,f=t-i-s;return[[n+a,e],[c,e],[c,h],[f,h],[f,r],[t-i,r]]}if(n<=t&&e<=r){const c=t+a+s,h=r-Math.abs(r-e)/2,f=n-i-s;return[[n-i,e],[f,e],[f,h],[c,h],[c,r],[t+a,r]]}const o=t+a+s,l=r+Math.abs(r-e)/2,u=n-i-s;return[[n-i,e],[u,e],[u,l],[o,l],[o,r],[t+a,r]]}function eAe(n,e,t,r,i,a){const s=n+(t-n)/2;return e===r&&(e+=K5e),t<=n&&r<=e?[[n-i,e],[s,e],[s,r],[t+a,r]]:t>=n&&r<=e?[[n+a,e],[s,e],[s,r],[t-i,r]]:t<=n&&r>=e?[[n-i,e],[s,e],[s,r],[t+a,r]]:[[n+a,e],[s,e],[s,r],[t-i,r]]}function tAe(n,e,t=SW){return n>=e?Math.abs(n-e)<=t?["right","left"]:["left","right"]:Math.abs(e-n)<=t?["left","right"]:["right","left"]}class TW extends tA{get states(){return this.isEdgeExist?this.context.model.getElementState(this.id):[]}get isEdgeExist(){return this.context.model.hasEdge(this.id)}getSourceTarget(e=!1){const{sourceNode:t,targetNode:r}=this,i=t.getShape("icon")||t,a=r.getShape("icon")||r;if(e){const s=[i.getPosition()[0],i.getPosition()[1]],o=[a.getPosition()[0],a.getPosition()[1]];return{source:s,target:o}}return{source:i,target:a}}getKeyPath(e){const{radius:t}=e,r=this.getPoints(e);return xW.getPolylinePath(r,t)}getPoints(e){const t=e.router,{source:r,target:i}=this.getSourceTarget(!0),[a,s]=this.getEndpoints(e);let o=[];if(!t)o=fM.orth(a,s,r,i,e.controlPoints,{padding:0});else{if(t.type==="elbow")return MW(r[0],r[1],i[0],i[1],{fromYOffset:t.fromYOffset,toYOffset:t.toYOffset});if(t.type==="shortest-path"){const c=this.context.element.getNodes();o=Z5e.aStarSearch(r,i,c,t),o.length||(o=fM.orth(a,s,r,i,e.controlPoints,{padding:t.offset}))}else t.type==="orth"&&(o=fM.orth(a,s,r,i,e.controlPoints,t))}const[l,u]=this.getEndpoints(e,!0,o);return[l,...o,u]}getEndpoints(e,t=!0,r=[]){const{source:i,target:a}=this.getSourceTarget(!0),s=typeof r=="function"?r():r,o=ZB.getConnectionPoint(i,s[0]||a),l=ZB.getConnectionPoint(a,s[s.length-1]||i);return[o,l]}getKeyStyle(e){return{...super.getKeyStyle(e),...hO(ma(this.context),e,this.states,this)}}render(e,t){super.render(e,t),bO(this,e,t),mO(this,e,t),yO(this,e)}}ia(wi.EDGE,"polyline-edge",TW);class AW extends k0{get states(){return this.isEdgeExist?this.context.model.getElementState(this.id):[]}get isEdgeExist(){return this.context.model.hasEdge(this.id)}getEndpoints(e){return qj(this.sourceNode,this.targetNode)||super.getEndpoints(e)}getKeyStyle(e){return{...super.getKeyStyle(e),...hO(ma(this.context),e,this.states,this)}}render(e,t){super.render(e,t),bO(this,e,t),mO(this,e,t),yO(this,e)}}ia(wi.EDGE,"quadratic-edge",AW);function nAe(n,e,t){return Yj(n,e,t,{})}const a1=132,pd="title",Wg="label",Ug="label-background",rAe="status-icon";function iAe(n,e,t){var a,s;if(!e.label)return t&&n.shapeMap[Wg]&&(n.shapeMap[Wg].destroy(),delete n.shapeMap[Wg]),!1;const r=((s=(a=n.constructor.prototype.getLabelStyle)==null?void 0:a.call)==null?void 0:s.call(a,n,e))||{},i=dy(n,e,r,{nodeSize:132});return t?n.upsert(Wg,Zs,i,t):i}function aAe(n,e,t){if(!e.title)return n.shapeMap[pd]&&(n.shapeMap[pd].destroy(),delete n.shapeMap[pd]),!1;const r=n.constructor.prototype.getLabelStyle.call(n,e),i=dy(n,e,r,{nodeSize:132}),a=rr(e,pd),s=Kj(n,e,i,a,{nodeSize:132});return n.upsert(pd,Zs,s,t)}function sAe(n,e,t){const r=rr(e,"status"),i=OTe(n,e,r,{nodeSize:132});return n.upsert(rAe,Qa,i,t)}function oAe(n,e,t){if(!e.label)return n.shapeMap[Ug]&&(n.shapeMap[Ug].destroy(),delete n.shapeMap[Ug]),!1;const r=Xj(n,e),i=n.upsert(Ug,xi,r,t);return requestAnimationFrame(()=>{n.toFront()}),i}const lAe=132;function OW(n,e,t){const r={...t,r:lAe/2,cursor:"default"},i=ma(n.context),a=n.context.model.getElementState(n.id);return a.includes("disabled")&&(r.cursor="not-allowed"),a.includes("readonly")&&(r.cursor="default"),Object.assign(r,Zj(i,a,e.highlight,e.stateStyles))}class _W extends Gh{get nodeData(){return this.isNodeExist?this.context.model.getNodeLikeDatum(this.id):null}get states(){return this.isNodeExist?this.context.model.getElementState(this.id):[]}get isNodeExist(){return this.context.model.hasNode(this.id)}getKeyStyle(e){const t=super.getKeyStyle(e);return OW(this,e,t)}getHaloStyle(e){return!1}getIconStyle(e){const t=super.getIconStyle(e);return nAe(this,e,t)}getLabelStyle(e){const t=super.getLabelStyle(e);return dy(this,e,t)}render(e,t){this.isNodeExist&&(super.render(e,t),oAe(this,e,t),aAe(this,e,t),iAe(this,e,t),sAe(this,e,t))}}ia(wi.NODE,"device-node",_W);function kW(n,e,t){var s;const r=ma(n.context),i=n.context.model.getElementState(n.id),a={...t,...Zj(r,i,e.highlight,e.stateStyles),cursor:"default"};return a.strokeOpacity===0&&(a.fill="#ffffff",a.fillOpacity=.64,a.stroke=(s=r.getThemeTokens())==null?void 0:s["background-neutral-hovered"],a.strokeOpacity=.64,a.strokeWidth=3,a.lineWidth=1),i.includes("disabled")&&(a.cursor="not-allowed"),i.includes("readonly")&&(a.cursor="default",a.opacity=.72),a}function PW(n,e){return e?{...e,stroke:"none"}:!1}class xO extends $G{constructor(){super(...arguments);Mt(this,"_eventListeners")}get eventListeners(){return this._eventListeners||(this._eventListeners=new Map),this._eventListeners}get states(){return this.isExist?this.context.model.getElementState(this.id):[]}get isExist(){return this.context.model.hasCombo(this.id)}getKeyStyle(t){const r=super.getKeyStyle(t);return kW(this,t,r)}getKeySize(t){const{collapsed:r,childrenData:i=[]}=t;return r||i.length===0?this.getCollapsedKeySize(t):this.getExpandedKeySize(t)}getExpandedKeySize(t){const r=super.getExpandedKeySize(t),i=44;return[r[0]+i,r[1]+i,0]}getHaloStyle(t){const r=super.getHaloStyle(t);return PW(t,r)}getIconStyle(t){if(t.icon===!1||t.collapsed===!1)return!1;const r=super.getIconStyle(t),i=this.getKeySize(t),a={...t,iconOffsetY:(t.iconOffsetY||0)-Rj};return Yj(this,a,{...r,text:"group"},{keySize:[i[0],i[1]]})}getLabelEnhancedAttrs(t,r,i){const{collapsed:a}=t,{labelOffsetX:s,labelMaxWidthAdjustment:o}=this.calculateLabelOffsetX(t),{collapsedOffsetY:l,expandedOffsetY:u}=this.calculateLabelOffsetY(i);return a?{...t,labelMaxWidth:t.labelMaxWidth||Dl*.7+o,labelMaxLines:t.labelMaxLines||2,labelWordWrap:t.labelWordWrap??!0,labelOffsetY:l,labelOffsetX:s,labelTextOverflow:t.labelTextOverflow||"ellipsis"}:{...t,labelMaxWidth:t.labelMaxWidth||r*.4+o,labelMaxLines:1,labelWordWrap:t.labelWordWrap??!0,labelOffsetY:u,labelOffsetX:s,labelTextOverflow:t.labelTextOverflow||"ellipsis"}}calculateLabelOffsetX(t){const r=eW(t,this);return{labelOffsetX:r.labelOffsetX,labelMaxWidthAdjustment:r.labelMaxWidthAdjustment}}calculateLabelOffsetY(t){const r=-Pj/2,i=Dl/2-t-qo+f0;return{collapsedOffsetY:r,expandedOffsetY:i}}getLabelBounds(){var i;const t=this.getShape("label");if(!t)return null;const r=(i=t.getLocalBounds)==null?void 0:i.call(t);return r?{min:{x:r.min[0],y:r.min[1]},max:{x:r.max[0],y:r.max[1]}}:{min:{x:0,y:0},max:{x:0,y:0}}}getLabelTransformY(){var a,s;const t=this.getShape("label");if(!t)return 0;const r=((a=t.attr)==null?void 0:a.call(t,"transform"))||((s=t.style)==null?void 0:s.transform);let i=0;if(r){if(typeof r=="string"){const o=r.match(/translate\(([^,]+),\s*([^)]+)\)/);o&&o[2]&&(i=parseFloat(o[2]))}else if(Array.isArray(r)){const o=r.find(([l])=>l==="translateY");o&&(i=o[1])}}return i}getLabelStyle(t){const r=super.getLabelStyle(t),i=this.getKeySize(t),a=this.getLabelEnhancedAttrs(t,i[0],i[1]);return dy(this,a,r,{nodeSize:Dl,keySize:[i[0],i[1]]})}getTitleStyle(t){if(t.collapsed!==!1)return!1;const r=this.getLabelStyle(t),i=this.getKeySize(t),a=rr(t,$T);return Kj(this,t,r,a,{nodeSize:a1,keySize:[i[0],i[1]]})}getStatusStyle(t){if(!t.labelStatus)return!1;const r=rr(t,"status"),i=this.getLabelBounds();if(!i)return!1;const a=i.min.x-8-Ku/2,o=this.getLabelTransformY()-Ku/2-f0/2,l=gs(this.context.graph),u=(l==null?void 0:l.getThemeTokens())||{};return{...r,x:a,y:o,width:Ku,height:Ku,src:this.getStatusIconSrc(l,t.labelStatus,u),zIndex:1,cursor:"default"}}getStatusIconSrc(t,r,i){switch(r){case"success":return Ys(t,"check_circle",i["icon-success-default"]);case"warning":return Ys(t,"warning",i["icon-warning-default"]);case"error":return Ys(t,"cancel",i["icon-error-default"])}return""}getDeviceCountStyle(t){const{collapsed:r}=t;if(!r)return!1;const{countLabel:i}=t;let a;if(i)a=i;else{const h=gs(this.context.graph);if(!h)return!1;const f=h.getChildrenData(this.id,{level:-1}),d=this.calculateDeviceCount(f);a=`${d} ${d<=1?"device":"devices"}`}const s=this.getLabelStyle(t),o=s.y||0,l=s.fontSize*(s.maxLines||1)||0;let u=0;if(s.transform&&typeof s.transform=="string"){const h=s.transform.match(/translate\(([^,]+),\s*([^)]+)\)/);h&&h[2]&&(u=parseFloat(h[2]))}const c=o+u+l-8;return{text:a,fontSize:Nj,fill:"#666666",textAlign:"center",textBaseline:"top",x:0,y:c,fontFamily:sO(),fontWeight:"normal",zIndex:10}}calculateDeviceCount(t){let r=0;for(const i of t)(i.type==="device-node"||i.type&&!i.type.includes("combo")&&!i.type.includes("group"))&&r++;return r}getShadowStyle(t){const{collapsed:r}=t;if(r)return!1;const i=this.getKeySize(t);return{cx:0,cy:0,r:Math.min(i[0],i[1])/2,fill:"#fff",fillOpacity:.64,stroke:"none",shadowColor:"rgba(0, 0, 0, 0.16)",shadowBlur:24,shadowOffsetX:0,shadowOffsetY:8,zIndex:-2,pointerEvents:"none"}}drawShadowShape(t,r){return this.upsert("combo-shadow-shadow",Xs,this.getShadowStyle(t),r)}getCollapseButtonStyle(t){const{collapsed:r,childrenData:i=[],collapsible:a=!0}=t;if(a===!1||!i||i.length===0)return!1;const s=this.getKeySize(t),o=Math.min(s[0],s[1])/2,l=-12,u=-o-qo/2,c=gs(this.context.graph),h=r?"unfold-more":"unfold-less",f=Ec((c==null?void 0:c.iconSpriteText)||"",h,"#666");return{x:l,y:u,width:qo,height:qo,src:f,cursor:"pointer",zIndex:101,pointerEvents:"auto"}}getDrillDownIconStyle(t){return LTe(this,t)}getTitleBackgroundStyle(t){const r=this.getLabelBackgroundStyle(t);return PTe(this,t,r)}getLabelBackgroundStyle(t){return ITe(this,t)}drawTitleShape(t,r){return this.upsert($T,Zs,this.getTitleStyle(t),r)}drawStatusShape(t,r){return this.upsert(_j,Qa,this.getStatusStyle(t),r)}drawDeviceCountShape(t,r){return this.upsert(kj,Zs,this.getDeviceCountStyle(t),r)}drawCollapseButtonShape(t,r){var A,C;const i=this.getCollapseButtonStyle(t),a=r.getElementById(bo);if(i===!1){a&&(a.remove(),(A=a.destroy)==null||A.call(a));return}a&&!a.parentNode&&((C=a.destroy)==null||C.call(a));const s=this.getKeySize(t),o=Math.min(s[0],s[1])/2,l=0,u=-o;let c=a;if(!c||!c.parentNode?(c=new bi({id:bo,style:{transform:[["translateX",l],["translateY",u]],cursor:"pointer",zIndex:101,pointerEvents:"auto"}}),r.appendChild(c)):c.attr({transform:[["translateX",l],["translateY",u]]}),!c.getElementById(GT)){const B=new Xs({id:GT,style:{r:Cj/2,fill:"#ffffff",stroke:"#e0e0e0",lineWidth:1}});c.appendChild(B)}const f=c.getElementById(`${bo}-icon`),{collapsed:d}=t,v=gs(this.context.graph),p=d?"unfold-more":"unfold-less",g=Ec((v==null?void 0:v.iconSpriteText)||"",p,"#666");if(f)f.attr({src:g});else{const B=new Qa({id:`${bo}-icon`,style:{x:-qo/2,y:-qo/2,width:qo,height:qo,src:g}});c.appendChild(B)}const m=`${bo}-click-${this.id}`,x=`${bo}-mouseenter-${this.id}`,w=`${bo}-mouseleave-${this.id}`,E=this.eventListeners.get(m);E&&c.removeEventListener("click",E);const M=this.eventListeners.get(x);M&&c.removeEventListener("mouseenter",M);const S=this.eventListeners.get(w);S&&c.removeEventListener("mouseleave",S);const T=B=>{B.stopPropagation();const D=gs(this.context.graph),z=this.id;D&&z&&(this.parsedAttributes.collapsed?D.expandGroup(z):D.collapseGroup(z))};return c.addEventListener("click",T),this.eventListeners.set(m,T),c}drawDrillDownIconShape(t,r){var o,l,u,c;const i=this.getDrillDownIconStyle(t),a=this.getShape("label");if(i===!1||!a){a&&a.style[ca]&&((l=(o=a.style[ca]).destroy)==null||l.call(o),delete a.style[ca]);return}a.style[ca]&&((c=(u=a.style[ca]).destroy)==null||c.call(u),delete a.style[ca]);const s=new Qa({style:i});if(a.style[ca]=s,a.appendChild(s),s){s.style.cursor="pointer",s.id=ca;const h=`${ca}-click-${this.id}`,f=`${ca}-mouseenter-${this.id}`,d=`${ca}-mouseleave-${this.id}`,v=this.eventListeners.get(h);v&&s.removeEventListener("click",v);const p=this.eventListeners.get(f);p&&s.removeEventListener("mouseenter",p);const g=this.eventListeners.get(d);g&&s.removeEventListener("mouseleave",g);const m=E=>{const M=gs(this.context.graph),S=this.id;if(!M||!S)return;const T=M.getBehaviorInstance("drillDown");T&&typeof T.drillIntoGroup=="function"&&(E.stopPropagation(),T.drillIntoGroup(S))},x=()=>{s.style.cursor="pointer"},w=()=>{s.style.cursor="default"};s.addEventListener("click",m),s.addEventListener("mouseenter",x),s.addEventListener("mouseleave",w),this.eventListeners.set(h,m),this.eventListeners.set(f,x),this.eventListeners.set(d,w)}return s}drawTitleBackgroundShape(t,r){return this.upsert(Aj,xi,this.getTitleBackgroundStyle(t),r)}drawLabelBackgroundShape(t,r){return this.upsert(Oj,xi,this.getLabelBackgroundStyle(t),r)}render(t,r){super.render(t,r),this.drawShadowShape(t,r),this.drawStatusShape(t,r),this.drawDrillDownIconShape(t,r),this.drawLabelBackgroundShape(t,r),this.drawTitleShape(t,r),this.drawDeviceCountShape(t,r),this.drawCollapseButtonShape(t,r),this.ensureGroupOnTopWhenSelected(),this.ensureChildrenOnTopWhenHover()}onframe(){const t=this.parsedAttributes;super.onframe(),this.drawStatusShape(t,this),this.drawDrillDownIconShape(t,this),this.drawLabelBackgroundShape(t,this),this.drawTitleShape(t,this),this.drawDeviceCountShape(t,this),this.drawCollapseButtonShape(t,this),this.ensureGroupOnTopWhenSelected(),this.ensureChildrenOnTopWhenHover()}ensureGroupOnTopWhenSelected(){this.states.includes("selected")&&requestAnimationFrame(()=>{typeof this.toFront=="function"&&this.toFront(),this.bringChildrenToFront()})}ensureChildrenOnTopWhenHover(){const t=this.states;t.includes("active")&&!t.includes("selected")&&requestAnimationFrame(()=>{this.bringChildrenToFront()})}bringChildrenToFront(){const t=gs(this.context.graph);if(!t)return;const r=t.getChildrenData(this.id,{level:-1});if(!r||r.length===0)return;const{element:i}=this.context;i&&r.forEach(a=>{const s=i.getElement(a.id);s&&typeof s.toFront=="function"&&s.toFront()})}animate(t,r){return super.animate(t,r)}destroy(){this.eventListeners.forEach((t,r)=>{var i;if(r.startsWith(bo)){const a=this.getElementById(bo);if(a){const s=r.includes("-click-")?"click":r.includes("-mouseenter-")?"mouseenter":r.includes("-mouseleave-")?"mouseleave":"click";a.removeEventListener(s,t)}}else if(r.startsWith(ca)){const a=this.getShape("label"),s=(i=a==null?void 0:a.style)==null?void 0:i[ca];if(s){const o=r.includes("-click-")?"click":r.includes("-mouseenter-")?"mouseenter":r.includes("-mouseleave-")?"mouseleave":"click";s.removeEventListener(o,t)}}}),this.eventListeners.clear(),super.destroy()}}Mt(xO,"defaultProps",{collapsedSize:Dl,padding:-30,collapsedMarker:!1});ia(wi.COMBO,"device-group",xO);const uAe="1.0.4",cAe={},hAe=JSON.parse('[{"name":"color-palettes","modes":[{"name":"value","variables":[{"name":"primary/primary-0","type":"color","isAlias":false,"value":"#000000"},{"name":"red/red-0","type":"color","isAlias":false,"value":"#000000"},{"name":"red/red-10","type":"color","isAlias":false,"value":"#410002"},{"name":"red/red-20","type":"color","isAlias":false,"value":"#690005"},{"name":"red/red-30","type":"color","isAlias":false,"value":"#93000A"},{"name":"red/red-40","type":"color","isAlias":false,"value":"#BA1A1A"},{"name":"red/red-50","type":"color","isAlias":false,"value":"#DE3730"},{"name":"red/red-60","type":"color","isAlias":false,"value":"#FF5449"},{"name":"red/red-70","type":"color","isAlias":false,"value":"#FF897D"},{"name":"red/red-80","type":"color","isAlias":false,"value":"#FFB4AB"},{"name":"red/red-90","type":"color","isAlias":false,"value":"#FFDAD6"},{"name":"red/red-95","type":"color","isAlias":false,"value":"#FFEDEA"},{"name":"primary/primary-10","type":"color","isAlias":false,"value":"#002020"},{"name":"primary/primary-20","type":"color","isAlias":false,"value":"#003737"},{"name":"primary/primary-30","type":"color","isAlias":false,"value":"#004F4F"},{"name":"primary/primary-40","type":"color","isAlias":false,"value":"#006A6A"},{"name":"primary/primary-50","type":"color","isAlias":false,"value":"#008585"},{"name":"primary/primary-60","type":"color","isAlias":false,"value":"#00A1A1"},{"name":"primary/primary-70","type":"color","isAlias":false,"value":"#1EBEBE"},{"name":"primary/primary-80","type":"color","isAlias":false,"value":"#4CDADA"},{"name":"primary/primary-90","type":"color","isAlias":false,"value":"#6FF7F6"},{"name":"primary/primary-95","type":"color","isAlias":false,"value":"#ADFFFE"},{"name":"primary/primary-99","type":"color","isAlias":false,"value":"#F1FFFE"},{"name":"red/red-99","type":"color","isAlias":false,"value":"#FFFBFF"},{"name":"yellow/yellow-0","type":"color","isAlias":false,"value":"#000000"},{"name":"yellow/yellow-10","type":"color","isAlias":false,"value":"#2A1700"},{"name":"yellow/yellow-20","type":"color","isAlias":false,"value":"#462A00"},{"name":"yellow/yellow-30","type":"color","isAlias":false,"value":"#653E00"},{"name":"yellow/yellow-40","type":"color","isAlias":false,"value":"#855400"},{"name":"yellow/yellow-50","type":"color","isAlias":false,"value":"#A66A00"},{"name":"yellow/yellow-60","type":"color","isAlias":false,"value":"#C98100"},{"name":"yellow/yellow-70","type":"color","isAlias":false,"value":"#ED9900"},{"name":"yellow/yellow-80","type":"color","isAlias":false,"value":"#FFB95C"},{"name":"yellow/yellow-90","type":"color","isAlias":false,"value":"#FFDDB7"},{"name":"yellow/yellow-95","type":"color","isAlias":false,"value":"#FFEEDE"},{"name":"green/green-0","type":"color","isAlias":false,"value":"#000000"},{"name":"green/green-10","type":"color","isAlias":false,"value":"#002109"},{"name":"green/green-20","type":"color","isAlias":false,"value":"#003914"},{"name":"green/green-30","type":"color","isAlias":false,"value":"#005320"},{"name":"green/green-40","type":"color","isAlias":false,"value":"#186C32"},{"name":"green/green-50","type":"color","isAlias":false,"value":"#378648"},{"name":"yellow/yellow-99","type":"color","isAlias":false,"value":"#FFFBFF"},{"name":"green/green-60","type":"color","isAlias":false,"value":"#52A160"},{"name":"green/green-70","type":"color","isAlias":false,"value":"#6CBD78"},{"name":"green/green-80","type":"color","isAlias":false,"value":"#87D991"},{"name":"green/green-90","type":"color","isAlias":false,"value":"#A2F6AB"},{"name":"green/green-95","type":"color","isAlias":false,"value":"#C6FFC8"},{"name":"blue/blue-0","type":"color","isAlias":false,"value":"#000000"},{"name":"blue/blue-10","type":"color","isAlias":false,"value":"#001C3A"},{"name":"green/green-99","type":"color","isAlias":false,"value":"#F6FFF1"},{"name":"blue/blue-20","type":"color","isAlias":false,"value":"#00315F"},{"name":"blue/blue-30","type":"color","isAlias":false,"value":"#004786"},{"name":"blue/blue-40","type":"color","isAlias":false,"value":"#005FAF"},{"name":"blue/blue-50","type":"color","isAlias":false,"value":"#0078DA"},{"name":"blue/blue-60","type":"color","isAlias":false,"value":"#2792FF"},{"name":"blue/blue-70","type":"color","isAlias":false,"value":"#72ADFF"},{"name":"blue/blue-80","type":"color","isAlias":false,"value":"#A5C8FF"},{"name":"blue/blue-90","type":"color","isAlias":false,"value":"#D4E3FF"},{"name":"blue/blue-95","type":"color","isAlias":false,"value":"#EBF1FF"},{"name":"grey/grey-0","type":"color","isAlias":false,"value":"#000000"},{"name":"grey/grey-4","type":"color","isAlias":false,"value":"#0B0F0F"},{"name":"grey/grey-6","type":"color","isAlias":false,"value":"#101414"},{"name":"grey/grey-10","type":"color","isAlias":false,"value":"#191C1C"},{"name":"grey/grey-20","type":"color","isAlias":false,"value":"#2D3131"},{"name":"grey/grey-30","type":"color","isAlias":false,"value":"#444747"},{"name":"grey/grey-40","type":"color","isAlias":false,"value":"#5B5F5F"},{"name":"grey/grey-50","type":"color","isAlias":false,"value":"#747877"},{"name":"grey/grey-60","type":"color","isAlias":false,"value":"#8E9191"},{"name":"grey/grey-70","type":"color","isAlias":false,"value":"#A9ACAB"},{"name":"grey/grey-80","type":"color","isAlias":false,"value":"#C4C7C6"},{"name":"grey/grey-90","type":"color","isAlias":false,"value":"#E0E3E2"},{"name":"grey/grey-92","type":"color","isAlias":false,"value":"#E6E9E8"},{"name":"grey/grey-95","type":"color","isAlias":false,"value":"#EFF1F0"},{"name":"blue-grey/blue-grey-0","type":"color","isAlias":false,"value":"#000000"},{"name":"blue-grey/blue-grey-10","type":"color","isAlias":false,"value":"#141D1D"},{"name":"blue-grey/blue-grey-20","type":"color","isAlias":false,"value":"#293232"},{"name":"blue-grey/blue-grey-30","type":"color","isAlias":false,"value":"#3F4948"},{"name":"blue-grey/blue-grey-40","type":"color","isAlias":false,"value":"#566060"},{"name":"blue-grey/blue-grey-50","type":"color","isAlias":false,"value":"#6F7979"},{"name":"blue-grey/blue-grey-60","type":"color","isAlias":false,"value":"#889392"},{"name":"blue-grey/blue-grey-70","type":"color","isAlias":false,"value":"#A3ADAD"},{"name":"blue-grey/blue-grey-80","type":"color","isAlias":false,"value":"#BEC9C8"},{"name":"blue-grey/blue-grey-90","type":"color","isAlias":false,"value":"#DAE5E4"},{"name":"blue-grey/blue-grey-92","type":"color","isAlias":false,"value":"#E0EBEA"},{"name":"blue-grey/blue-grey-95","type":"color","isAlias":false,"value":"#E9F3F2"},{"name":"blue/blue-99","type":"color","isAlias":false,"value":"#FDFCFF"},{"name":"grey/grey-98","type":"color","isAlias":false,"value":"#F7FAF9"},{"name":"primary/primary-100","type":"color","isAlias":false,"value":"#FFFFFF"},{"name":"red/red-100","type":"color","isAlias":false,"value":"#FFFFFF"},{"name":"yellow/yellow-100","type":"color","isAlias":false,"value":"#FFFFFF"},{"name":"green/green-100","type":"color","isAlias":false,"value":"#FFFFFF"},{"name":"blue/blue-100","type":"color","isAlias":false,"value":"#FFFFFF"},{"name":"grey/grey-100","type":"color","isAlias":false,"value":"#FFFFFF"},{"name":"blue-grey/blue-grey-100","type":"color","isAlias":false,"value":"#FFFFFF"}]}]},{"name":"color-schemes","modes":[{"name":"light","variables":[{"name":"background-neutral-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"grey/grey-98"}},{"name":"text-neutral-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"grey/grey-10"}},{"name":"text-neutral-default-subtle","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"blue-grey/blue-grey-30"}},{"name":"background-neutral-subtle","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"grey/grey-100"}},{"name":"background-neutral-inverse","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"grey/grey-20"}},{"name":"text-neutral-inverse","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"grey/grey-95"}},{"name":"icon-primary-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"primary/primary-50"}},{"name":"icon-error-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"red/red-50"}},{"name":"icon-warning-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"yellow/yellow-70"}},{"name":"icon-success-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"green/green-50"}},{"name":"icon-info-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"blue/blue-50"}},{"name":"border-primary-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"primary/primary-50"}},{"name":"border-error-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"red/red-50"}},{"name":"border-warning-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"yellow/yellow-70"}},{"name":"border-success-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"green/green-50"}},{"name":"border-info-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"blue/blue-50"}},{"name":"path/outline-neutral-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"blue-grey/blue-grey-30"}},{"name":"guides/outline-accent","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"red/red-60"}},{"name":"background-primary-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"primary/primary-90"}},{"name":"background-primary-hovered","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"primary/primary-80"}},{"name":"background-neutral-hovered","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"grey/grey-80"}},{"name":"background-error-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"red/red-90"}},{"name":"background-error-hovered","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"red/red-80"}},{"name":"background-warning-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"yellow/yellow-90"}},{"name":"background-warning-hovered","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"yellow/yellow-80"}},{"name":"background-success-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"green/green-90"}},{"name":"background-success-hovered","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"green/green-80"}},{"name":"background-info-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"blue/blue-90"}},{"name":"background-info-hovered","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"blue/blue-80"}}]},{"name":"dark","variables":[{"name":"background-neutral-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"grey/grey-6"}},{"name":"text-neutral-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"grey/grey-90"}},{"name":"text-neutral-default-subtle","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"blue-grey/blue-grey-70"}},{"name":"background-neutral-subtle","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"grey/grey-4"}},{"name":"background-neutral-inverse","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"grey/grey-90"}},{"name":"text-neutral-inverse","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"grey/grey-10"}},{"name":"icon-primary-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"primary/primary-70"}},{"name":"icon-error-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"red/red-70"}},{"name":"icon-warning-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"yellow/yellow-70"}},{"name":"icon-success-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"green/green-70"}},{"name":"icon-info-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"blue/blue-70"}},{"name":"border-primary-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"primary/primary-70"}},{"name":"border-error-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"red/red-70"}},{"name":"border-warning-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"yellow/yellow-70"}},{"name":"border-success-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"green/green-70"}},{"name":"border-info-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"blue/blue-70"}},{"name":"path/outline-neutral-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"blue-grey/blue-grey-80"}},{"name":"guides/outline-accent","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"red/red-60"}},{"name":"background-primary-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"primary/primary-30"}},{"name":"background-primary-hovered","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"primary/primary-40"}},{"name":"background-neutral-hovered","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"grey/grey-40"}},{"name":"background-error-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"red/red-30"}},{"name":"background-error-hovered","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"red/red-40"}},{"name":"background-warning-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"yellow/yellow-30"}},{"name":"background-warning-hovered","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"yellow/yellow-40"}},{"name":"background-success-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"green/green-30"}},{"name":"background-success-hovered","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"green/green-40"}},{"name":"background-info-default","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"blue/blue-30"}},{"name":"background-info-hovered","type":"color","isAlias":true,"value":{"collection":"color-palettes","name":"blue/blue-40"}}]}]},{"name":"opacity","modes":[{"name":"Mode 1","variables":[{"name":"opacity-64","type":"number","isAlias":false,"value":64},{"name":"opacity-70","type":"number","isAlias":false,"value":70}]}]},{"name":"Typography","modes":[{"name":"Style","variables":[{"name":"typography/topology/title","type":"typography","isAlias":false,"value":{"fontSize":14,"fontFamily":"Roboto","fontWeight":"Medium","lineHeight":20,"lineHeightUnit":"PIXELS","letterSpacing":0.10000000149011612,"letterSpacingUnit":"PIXELS","textCase":"ORIGINAL","textDecoration":"NONE"}},{"name":"typography/topology/body","type":"typography","isAlias":false,"value":{"fontSize":14,"fontFamily":"Roboto","fontWeight":"Regular","lineHeight":20,"lineHeightUnit":"PIXELS","letterSpacing":0.25,"letterSpacingUnit":"PIXELS","textCase":"ORIGINAL","textDecoration":"NONE"}}]}]}]'),fAe={version:uAe,metadata:cAe,collections:hAe},dAe="3.0.0-beta.17",vM='<?xml version="1.0" encoding="utf-8"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg viewBox="0 0 160 160" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><style>:root>svg{display:none}:root>svg:target{display:block}</style><svg viewBox="0 0 24 24" id="account_box" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M3 5v14a2 2 0 0 0 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2H5a2 2 0 0 0-2 2zm12 4c0 1.66-1.34 3-3 3s-3-1.34-3-3 1.34-3 3-3 3 1.34 3 3zm-9 8c0-2 4-3.1 6-3.1s6 1.1 6 3.1v1H6v-1z"/></svg><svg viewBox="0 0 24 24" id="account_tree" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M22 11V3h-7v3H9V3H2v8h7V8h2v10h4v3h7v-8h-7v3h-2V8h2v3z"/></svg><svg viewBox="0 0 24 24" id="add" xmlns="http://www.w3.org/2000/svg"><path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"/><path d="M0 0h24v24H0z" fill="none"/></svg><svg viewBox="0 0 24 24" id="add_box" xmlns="http://www.w3.org/2000/svg"><path d="M19 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2Zm-2 10h-4v4h-2v-4H7v-2h4V7h2v4h4v2Z"/></svg><svg viewBox="0 0 24 24" id="add_circle" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm5 11h-4v4h-2v-4H7v-2h4V7h2v4h4v2z"/></svg><svg viewBox="0 -960 960 960" id="add_link" xmlns="http://www.w3.org/2000/svg"><path d="M680-160v-120H560v-80h120v-120h80v120h120v80H760v120h-80ZM440-280H280q-83 0-141.5-58.5T80-480q0-83 58.5-141.5T280-680h160v80H280q-50 0-85 35t-35 85q0 50 35 85t85 35h160v80ZM320-440v-80h320v80H320Zm560-40h-80q0-50-35-85t-85-35H520v-80h160q83 0 141.5 58.5T880-480Z"/></svg><svg viewBox="0 0 24 24" id="apartment" xmlns="http://www.w3.org/2000/svg"><path d="M17 11V3H7v4H3v14h8v-4h2v4h8V11h-4ZM7 19H5v-2h2v2Zm0-4H5v-2h2v2Zm0-4H5V9h2v2Zm4 4H9v-2h2v2Zm0-4H9V9h2v2Zm0-4H9V5h2v2Zm4 8h-2v-2h2v2Zm0-4h-2V9h2v2Zm0-4h-2V5h2v2Zm4 12h-2v-2h2v2Zm0-4h-2v-2h2v2Z"/></svg><svg viewBox="0 0 24 24" id="api" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="m14 12-2 2-2-2 2-2 2 2zm-2-6 2.12 2.12 2.5-2.5L12 1 7.38 5.62l2.5 2.5L12 6zm-6 6 2.12-2.12-2.5-2.5L1 12l4.62 4.62 2.5-2.5L6 12zm12 0-2.12 2.12 2.5 2.5L23 12l-4.62-4.62-2.5 2.5L18 12zm-6 6-2.12-2.12-2.5 2.5L12 23l4.62-4.62-2.5-2.5L12 18z"/></svg><svg viewBox="0 0 24 24" id="apollo_project" xmlns="http://www.w3.org/2000/svg"><g data-name="圖層 2"><g data-name="圖層 1"><path style="fill:none" d="M0 0h24v24H0V0z"/><path d="M12 17a4 4 0 1 0-4-4 4 4 0 0 0 4 4Zm-1.6-4.8h.06A1.58 1.58 0 0 1 12 11a1.6 1.6 0 0 1 1.6 1.6h.2a1 1 0 0 1 0 2h-3.4a1.2 1.2 0 0 1 0-2.4Z"/><path d="M20 6h-8l-2-2H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2Zm0 12H4V8h16Z"/></g></g></svg><svg viewBox="0 0 24 24" id="apps" xmlns="http://www.w3.org/2000/svg"><path d="M4 8h4V4H4v4zm6 12h4v-4h-4v4zm-6 0h4v-4H4v4zm0-6h4v-4H4v4zm6 0h4v-4h-4v4zm6-10v4h4V4h-4zm-6 4h4V4h-4v4zm6 6h4v-4h-4v4zm0 6h4v-4h-4v4z"/><path d="M0 0h24v24H0z" fill="none"/></svg><svg viewBox="0 0 24 24" id="archive" xmlns="http://www.w3.org/2000/svg"><path d="m20.54 5.23-1.39-1.68C18.88 3.21 18.47 3 18 3H6c-.47 0-.88.21-1.16.55L3.46 5.23C3.17 5.57 3 6.02 3 6.5V19c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V6.5c0-.48-.17-.93-.46-1.27zM12 17.5 6.5 12H10v-2h4v2h3.5L12 17.5zM5.12 5l.81-1h12l.94 1H5.12z"/><path d="M0 0h24v24H0z" fill="none"/></svg><svg viewBox="0 0 24 24" id="arrow_back" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M20 11H7.83l5.59-5.59L12 4l-8 8 8 8 1.41-1.41L7.83 13H20v-2z"/></svg><svg viewBox="0 0 24 24" id="arrow_circle_down" xmlns="http://www.w3.org/2000/svg"><path d="M12 4c4.41 0 8 3.59 8 8s-3.59 8-8 8-8-3.59-8-8 3.59-8 8-8Zm0-2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2Zm1 10V8h-2v4H8l4 4 4-4h-3Z"/></svg><svg viewBox="0 0 24 24" id="arrow_circle_up" xmlns="http://www.w3.org/2000/svg"><path d="M12 20c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8Zm0 2c5.52 0 10-4.48 10-10S17.52 2 12 2 2 6.48 2 12s4.48 10 10 10Zm-1-10v4h2v-4h3l-4-4-4 4h3Z"/></svg><svg viewBox="0 0 24 24" id="arrow_downward" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0V0z"/><path d="m20 12-1.41-1.41L13 16.17V4h-2v12.17l-5.58-5.59L4 12l8 8 8-8z"/></svg><svg viewBox="0 0 24 24" id="arrow_drop_down" xmlns="http://www.w3.org/2000/svg"><path d="m7 10 5 5 5-5z"/><path d="M0 0h24v24H0z" fill="none"/></svg><svg viewBox="0 0 24 24" id="arrow_drop_up" xmlns="http://www.w3.org/2000/svg"><path d="m7 14 5-5 5 5z"/><path d="M0 0h24v24H0z" fill="none"/></svg><svg viewBox="0 0 24 24" id="arrow_forward" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="m12 4-1.41 1.41L16.17 11H4v2h12.17l-5.58 5.59L12 20l8-8z"/></svg><svg viewBox="0 0 24 24" id="arrow_left" xmlns="http://www.w3.org/2000/svg"><path d="m14 7-5 5 5 5V7z"/><path fill="none" d="M24 0v24H0V0h24z"/></svg><svg viewBox="0 0 24 24" id="arrow_right" xmlns="http://www.w3.org/2000/svg"><path d="m10 17 5-5-5-5v10z"/><path fill="none" d="M0 24V0h24v24H0z"/></svg><svg viewBox="0 0 24 24" id="arrow_upward" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0V0z"/><path d="m4 12 1.41 1.41L11 7.83V20h2V7.83l5.58 5.59L20 12l-8-8-8 8z"/></svg><svg viewBox="0 0 24 24" id="article" xmlns="http://www.w3.org/2000/svg"><path d="M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2Zm-5 14H7v-2h7v2Zm3-4H7v-2h10v2Zm0-4H7V7h10v2Z"/></svg><svg viewBox="0 0 24 24" id="assignment" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M19 3h-4.18C14.4 1.84 13.3 1 12 1c-1.3 0-2.4.84-2.82 2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-7 0c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm2 14H7v-2h7v2zm3-4H7v-2h10v2zm0-4H7V7h10v2z"/></svg><svg viewBox="0 0 24 24" id="attach_file" xmlns="http://www.w3.org/2000/svg"><path d="M16.5 6v11.5c0 2.21-1.79 4-4 4s-4-1.79-4-4V5a2.5 2.5 0 0 1 5 0v10.5c0 .55-.45 1-1 1s-1-.45-1-1V6H10v9.5a2.5 2.5 0 0 0 5 0V5c0-2.21-1.79-4-4-4S7 2.79 7 5v12.5c0 3.04 2.46 5.5 5.5 5.5s5.5-2.46 5.5-5.5V6h-1.5z"/><path d="M0 0h24v24H0z" fill="none"/></svg><svg viewBox="0 0 14 18" id="bookmark_star" xmlns="http://www.w3.org/2000/svg"><path d="M4.725 11 7 9.625 9.275 11l-.6-2.6 2-1.725L8.05 6.45 7 4 5.95 6.45l-2.625.225 2 1.725-.6 2.6ZM0 18V2C0 1.45.196.98.588.587A1.926 1.926 0 0 1 2 0h10c.55 0 1.02.196 1.412.588C13.804.979 14 1.45 14 2v16l-7-3-7 3Z"/></svg><svg viewBox="0 0 24 24" id="build" xmlns="http://www.w3.org/2000/svg"><path clip-rule="evenodd" fill="none" d="M0 0h24v24H0z"/><path d="m22.7 19-9.1-9.1c.9-2.3.4-5-1.5-6.9-2-2-5-2.4-7.4-1.3L9 6 6 9 1.6 4.7C.4 7.1.9 10.1 2.9 12.1c1.9 1.9 4.6 2.4 6.9 1.5l9.1 9.1c.4.4 1 .4 1.4 0l2.3-2.3c.5-.4.5-1.1.1-1.4z"/></svg><svg viewBox="0 0 24 24" id="cable" xmlns="http://www.w3.org/2000/svg"><path d="M20 5V4c0-.55-.45-1-1-1h-2c-.55 0-1 .45-1 1v1h-1v4c0 .55.45 1 1 1h1v7c0 1.1-.9 2-2 2s-2-.9-2-2V7c0-2.21-1.79-4-4-4S5 4.79 5 7v7H4c-.55 0-1 .45-1 1v4h1v1c0 .55.45 1 1 1h2c.55 0 1-.45 1-1v-1h1v-4c0-.55-.45-1-1-1H7V7c0-1.1.9-2 2-2s2 .9 2 2v10c0 2.21 1.79 4 4 4s4-1.79 4-4v-7h1c.55 0 1-.45 1-1V5h-1Z"/></svg><svg viewBox="0 0 24 24" id="calculate" xmlns="http://www.w3.org/2000/svg"><path d="M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2Zm-5.97 4.06L14.09 6l1.41 1.41L16.91 6l1.06 1.06-1.41 1.41 1.41 1.41-1.06 1.06-1.41-1.4-1.41 1.41-1.06-1.06 1.41-1.41-1.41-1.42Zm-6.78.66h5v1.5h-5v-1.5ZM11.5 16h-2v2H8v-2H6v-1.5h2v-2h1.5v2h2V16Zm6.5 1.25h-5v-1.5h5v1.5Zm0-2.5h-5v-1.5h5v1.5Z"/></svg><svg viewBox="0 0 24 24" id="camera" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="m9.4 10.5 4.77-8.26a9.984 9.984 0 0 0-8.49 2.01l3.66 6.35.06-.1zM21.54 9c-.92-2.92-3.15-5.26-6-6.34L11.88 9h9.66zm.26 1h-7.49l.29.5 4.76 8.25A9.91 9.91 0 0 0 22 12c0-.69-.07-1.35-.2-2zM8.54 12l-3.9-6.75A9.958 9.958 0 0 0 2.2 14h7.49l-1.15-2zm-6.08 3c.92 2.92 3.15 5.26 6 6.34L12.12 15H2.46zm11.27 0-3.9 6.76a9.984 9.984 0 0 0 8.49-2.01l-3.66-6.35-.93 1.6z"/></svg><svg viewBox="0 0 24 24" id="cancel" xmlns="http://www.w3.org/2000/svg"><path d="M12 2C6.47 2 2 6.47 2 12s4.47 10 10 10 10-4.47 10-10S17.53 2 12 2zm5 13.59L15.59 17 12 13.41 8.41 17 7 15.59 10.59 12 7 8.41 8.41 7 12 10.59 15.59 7 17 8.41 13.41 12 17 15.59z"/><path d="M0 0h24v24H0z" fill="none"/></svg><svg viewBox="0 0 24 24" id="card_membership" xmlns="http://www.w3.org/2000/svg"><path d="M20 2H4c-1.11 0-2 .89-2 2v11c0 1.11.89 2 2 2h4v5l4-2 4 2v-5h4c1.11 0 2-.89 2-2V4c0-1.11-.89-2-2-2Zm0 13H4v-2h16v2Zm0-5H4V4h16v6Z"/></svg><svg viewBox="0 0 24 24" id="category" xmlns="http://www.w3.org/2000/svg"><path d="m12 2-5.5 9h11L12 2ZM17.5 22a4.5 4.5 0 1 0 0-9 4.5 4.5 0 0 0 0 9ZM3 13.5h8v8H3v-8Z"/></svg><svg viewBox="0 0 24 24" id="center_focus_weak" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M5 15H3v4c0 1.1.9 2 2 2h4v-2H5v-4zM5 5h4V3H5c-1.1 0-2 .9-2 2v4h2V5zm14-2h-4v2h4v4h2V5c0-1.1-.9-2-2-2zm0 16h-4v2h4c1.1 0 2-.9 2-2v-4h-2v4zM12 8c-2.21 0-4 1.79-4 4s1.79 4 4 4 4-1.79 4-4-1.79-4-4-4zm0 6c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2z"/></svg><svg viewBox="0 0 24 24" id="check_circle" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"/></svg><svg viewBox="0 0 24 24" id="circle" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M12 2C6.47 2 2 6.47 2 12s4.47 10 10 10 10-4.47 10-10S17.53 2 12 2z"/></svg><svg viewBox="0 0 24 24" id="cleaning_services" xmlns="http://www.w3.org/2000/svg"><path d="M16 11h-1V3c0-1.1-.9-2-2-2h-2c-1.1 0-2 .9-2 2v8H8c-2.76 0-5 2.24-5 5v7h18v-7c0-2.76-2.24-5-5-5Zm3 10h-2v-3c0-.55-.45-1-1-1s-1 .45-1 1v3h-2v-3c0-.55-.45-1-1-1s-1 .45-1 1v3H9v-3c0-.55-.45-1-1-1s-1 .45-1 1v3H5v-5c0-1.65 1.35-3 3-3h8c1.65 0 3 1.35 3 3v5Z"/></svg><svg viewBox="0 0 24 24" id="clear" xmlns="http://www.w3.org/2000/svg"><path d="M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"/><path d="M0 0h24v24H0z" fill="none"/></svg><svg viewBox="0 0 20 20" id="cloud-upload-outline" xmlns="http://www.w3.org/2000/svg"><path d="M5.417 16.667c-1.264 0-2.344-.438-3.24-1.313C1.281 14.48.833 13.41.833 12.146c0-1.084.327-2.049.98-2.896a4.331 4.331 0 0 1 2.562-1.625 5.656 5.656 0 0 1 2.083-3.104A5.702 5.702 0 0 1 10 3.333c1.625 0 3.003.566 4.135 1.698 1.132 1.132 1.698 2.51 1.698 4.136a3.64 3.64 0 0 1 2.386 1.239c.632.715.948 1.552.948 2.51 0 1.042-.365 1.928-1.094 2.657-.73.73-1.615 1.094-2.656 1.094h-4.584c-.458 0-.85-.163-1.176-.49A1.606 1.606 0 0 1 9.167 15v-4.292L7.833 12l-1.166-1.167L10 7.5l3.333 3.333L12.167 12l-1.334-1.292V15h4.584c.583 0 1.076-.201 1.479-.604.403-.403.604-.896.604-1.48 0-.583-.201-1.076-.604-1.479a2.012 2.012 0 0 0-1.48-.604h-1.25V9.167c0-1.153-.405-2.136-1.218-2.949C12.135 5.406 11.153 5 10 5s-2.135.406-2.948 1.218c-.812.813-1.219 1.796-1.219 2.949h-.416a2.81 2.81 0 0 0-2.063.854 2.81 2.81 0 0 0-.854 2.062c0 .806.285 1.493.854 2.063A2.81 2.81 0 0 0 5.417 15H7.5v1.667H5.417Z"/></svg><svg viewBox="0 0 24 24" id="cloud_off" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M19.35 10.04A7.49 7.49 0 0 0 12 4c-1.48 0-2.85.43-4.01 1.17l1.46 1.46a5.497 5.497 0 0 1 8.05 4.87v.5H19c1.66 0 3 1.34 3 3 0 1.13-.64 2.11-1.56 2.62l1.45 1.45C23.16 18.16 24 16.68 24 15c0-2.64-2.05-4.78-4.65-4.96zM3 5.27l2.75 2.74C2.56 8.15 0 10.77 0 14c0 3.31 2.69 6 6 6h11.73l2 2L21 20.73 4.27 4 3 5.27zM7.73 10l8 8H6c-2.21 0-4-1.79-4-4s1.79-4 4-4h1.73z"/></svg><svg viewBox="0 0 24 24" id="cloud_queue" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M19.35 10.04A7.49 7.49 0 0 0 12 4C9.11 4 6.6 5.64 5.35 8.04A5.994 5.994 0 0 0 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM19 18H6c-2.21 0-4-1.79-4-4s1.79-4 4-4h.71C7.37 7.69 9.48 6 12 6c3.04 0 5.5 2.46 5.5 5.5v.5H19c1.66 0 3 1.34 3 3s-1.34 3-3 3z"/></svg><svg viewBox="0 0 20 20" id="cloud_upload_outline" xmlns="http://www.w3.org/2000/svg"><path d="M5.417 16.667c-1.264 0-2.344-.438-3.24-1.313C1.281 14.48.833 13.41.833 12.146c0-1.084.327-2.049.98-2.896a4.331 4.331 0 0 1 2.562-1.625 5.656 5.656 0 0 1 2.083-3.104A5.702 5.702 0 0 1 10 3.333c1.625 0 3.003.566 4.135 1.698 1.132 1.132 1.698 2.51 1.698 4.136a3.64 3.64 0 0 1 2.386 1.239c.632.715.948 1.552.948 2.51 0 1.042-.365 1.928-1.094 2.657-.73.73-1.615 1.094-2.656 1.094h-4.584c-.458 0-.85-.163-1.176-.49A1.606 1.606 0 0 1 9.167 15v-4.292L7.833 12l-1.166-1.167L10 7.5l3.333 3.333L12.167 12l-1.334-1.292V15h4.584c.583 0 1.076-.201 1.479-.604.403-.403.604-.896.604-1.48 0-.583-.201-1.076-.604-1.479a2.012 2.012 0 0 0-1.48-.604h-1.25V9.167c0-1.153-.405-2.136-1.218-2.949C12.135 5.406 11.153 5 10 5s-2.135.406-2.948 1.218c-.812.813-1.219 1.796-1.219 2.949h-.416a2.81 2.81 0 0 0-2.063.854 2.81 2.81 0 0 0-.854 2.062c0 .806.285 1.493.854 2.063A2.81 2.81 0 0 0 5.417 15H7.5v1.667H5.417Z"/></svg><svg viewBox="0 0 18 18" id="create_new_folder" xmlns="http://www.w3.org/2000/svg"><path d="M15 4.5H9L7.5 3H3c-.833 0-1.492.667-1.492 1.5l-.008 9c0 .832.667 1.5 1.5 1.5h12c.832 0 1.5-.668 1.5-1.5V6c0-.832-.668-1.5-1.5-1.5Zm-.75 6H12v2.25h-1.5V10.5H8.25V9h2.25V6.75H12V9h2.25v1.5Z"/></svg><svg viewBox="0 0 24 24" id="dashboard" xmlns="http://www.w3.org/2000/svg"><path d="M3 13h8V3H3v10Zm0 8h8v-6H3v6Zm10 0h8V11h-8v10Zm0-18v6h8V3h-8Z"/></svg><svg viewBox="0 0 24 24" id="delete_forever" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0V0z"/><path d="M6 19c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7H6v12zm2.46-7.12 1.41-1.41L12 12.59l2.12-2.12 1.41 1.41L13.41 14l2.12 2.12-1.41 1.41L12 15.41l-2.12 2.12-1.41-1.41L10.59 14l-2.13-2.12zM15.5 4l-1-1h-5l-1 1H5v2h14V4z"/><path fill="none" d="M0 0h24v24H0z"/></svg><svg viewBox="0 0 24 24" id="density_large" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="M3 3h18v2H3zM3 19h18v2H3z"/></svg><svg viewBox="0 0 24 24" id="density_medium" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="M3 3h18v2H3zM3 19h18v2H3zM3 11h18v2H3z"/></svg><svg viewBox="0 0 24 24" id="density_small" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="M3 2h18v2H3zM3 20h18v2H3zM3 14h18v2H3zM3 8h18v2H3z"/></svg><svg viewBox="0 0 24 24" id="description" xmlns="http://www.w3.org/2000/svg"><path d="M14 2H6c-1.1 0-1.99.9-1.99 2L4 20c0 1.1.89 2 1.99 2H18c1.1 0 2-.9 2-2V8l-6-6Zm2 16H8v-2h8v2Zm0-4H8v-2h8v2Zm-3-5V3.5L18.5 9H13Z"/></svg><svg viewBox="0 0 24 24" id="device_hub" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M0 0h24v24H0V0z" fill="none"/><path d="m17 16-4-4V8.82C14.16 8.4 15 7.3 15 6c0-1.66-1.34-3-3-3S9 4.34 9 6c0 1.3.84 2.4 2 2.82V12l-4 4H3v5h5v-3.05l4-4.2 4 4.2V21h5v-5h-4z"/></svg><svg viewBox="0 0 24 24" id="done" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4L9 16.2z"/></svg><svg viewBox="0 0 24 24" id="download" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="M5 20h14v-2H5v2zM19 9h-4V3H9v6H5l7 7 7-7z"/></svg><svg viewBox="0 0 24 24" id="drag_indicator" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M11 18c0 1.1-.9 2-2 2s-2-.9-2-2 .9-2 2-2 2 .9 2 2zm-2-8c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0-6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm6 4c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z"/></svg><svg fill="none" viewBox="0 0 24 24" id="draw" xmlns="http://www.w3.org/2000/svg"><path d="M4 21v-4.25L17.175 3.6c.2-.2.425-.35.675-.45a1.975 1.975 0 0 1 1.512 0c.242.1.455.25.638.45L21.4 5c.2.183.35.396.45.638a1.975 1.975 0 0 1 0 1.512c-.1.25-.25.475-.45.675L8.25 21H4ZM18.65 7.775 20 6.425 18.575 5l-1.35 1.35 1.425 1.425ZM14 21a6.644 6.644 0 0 0 3.425-.925C18.475 19.458 19 18.6 19 17.5c0-.6-.158-1.117-.475-1.55-.317-.433-.742-.808-1.275-1.125L15.775 16.3c.383.167.683.35.9.55.217.2.325.417.325.65 0 .383-.304.73-.913 1.038-.608.308-1.304.462-2.087.462a.968.968 0 0 0-.713.288A.968.968 0 0 0 13 20c0 .283.096.52.287.712.192.192.43.288.713.288Zm-9.425-7.65 1.5-1.5a3.576 3.576 0 0 1-.788-.412C5.096 11.296 5 11.15 5 11c0-.2.15-.4.45-.6.3-.2.933-.508 1.9-.925 1.467-.633 2.442-1.208 2.925-1.725.483-.517.725-1.1.725-1.75 0-.917-.367-1.646-1.1-2.188C9.167 3.272 8.2 3 7 3c-.75 0-1.42.133-2.013.4-.591.267-1.045.592-1.362.975A.908.908 0 0 0 3.4 5.1a.938.938 0 0 0 .375.65.908.908 0 0 0 .725.225c.267-.033.492-.142.675-.325.233-.233.492-.4.775-.5C6.233 5.05 6.583 5 7 5c.683 0 1.188.1 1.512.3.325.2.488.433.488.7 0 .233-.146.446-.438.638-.291.191-.962.529-2.012 1.012-1.333.583-2.258 1.112-2.775 1.588A2.298 2.298 0 0 0 3 11c0 .533.142.988.425 1.363.283.375.667.704 1.15.987Z" fill="#000"/></svg><svg viewBox="0 0 24 24" id="dynamic_form" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="M17 20v-9h-2V4h7l-2 5h2l-5 11zm-2-7v7H4c-1.1 0-2-.9-2-2v-3c0-1.1.9-2 2-2h11zm-8.75 2.75h-1.5v1.5h1.5v-1.5zM13 4v7H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2h9zM6.25 6.75h-1.5v1.5h1.5v-1.5z"/></svg><svg viewBox="0 0 13 10" id="edge_end_arrow" xmlns="http://www.w3.org/2000/svg"><path d="m.5 5 12 5V0L.5 5Z"/></svg><svg viewBox="0 0 13 10" id="edge_start_arrow" xmlns="http://www.w3.org/2000/svg"><path d="m12.5 5-12 5V0l12 5Z"/></svg><svg viewBox="0 0 24 24" id="edit" xmlns="http://www.w3.org/2000/svg"><path d="M3 17.25V21h3.75L17.81 9.94l-3.75-3.75L3 17.25zM20.71 7.04a.996.996 0 0 0 0-1.41l-2.34-2.34a.996.996 0 0 0-1.41 0l-1.83 1.83 3.75 3.75 1.83-1.83z"/><path d="M0 0h24v24H0z" fill="none"/></svg><svg viewBox="0 0 24 24" id="edit_attributes" xmlns="http://www.w3.org/2000/svg"><path d="M17.63 7H6.37C3.96 7 2 9.24 2 12s1.96 5 4.37 5h11.26c2.41 0 4.37-2.24 4.37-5s-1.96-5-4.37-5zM7.24 14.46l-2.57-2.57.7-.7 1.87 1.87 3.52-3.52.7.7-4.22 4.22z"/><path class="cfst0" d="M0 0h24v24H0z" fill="none"/></svg><svg viewBox="0 0 24 24" id="edit_notifications" xmlns="http://www.w3.org/2000/svg"><path d="m17.58 6.25 1.77 1.77L14.37 13H12.6v-1.77l4.98-4.98Zm3.27-.44-1.06-1.06c-.2-.2-.51-.2-.71 0l-.85.85L20 7.37l.85-.85c.2-.2.2-.52 0-.71ZM18 12.2V17h2v2H4v-2h2v-7c0-2.79 1.91-5.14 4.5-5.8v-.7c0-.83.67-1.5 1.5-1.5s1.5.67 1.5 1.5v.7c.82.21 1.57.59 2.21 1.09L10.6 10.4V15h4.6l2.8-2.8ZM10 20h4c0 1.1-.9 2-2 2s-2-.9-2-2Z"/></svg><svg viewBox="0 0 24 24" id="edit_off" xmlns="http://www.w3.org/2000/svg"><path d="m12.126 8.125 1.937-1.937 3.747 3.747-1.937 1.938-3.747-3.748ZM20.71 5.63l-2.34-2.34a1 1 0 0 0-1.41 0l-1.83 1.83 3.75 3.75L20.71 7a1 1 0 0 0 0-1.37ZM2 5l6.63 6.63L3 17.25V21h3.75l5.63-5.62L18 21l2-2L4 3 2 5Z"/></svg><svg viewBox="0 0 24 24" id="email" xmlns="http://www.w3.org/2000/svg"><path d="M20 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2Zm0 4-8 5-8-5V6l8 5 8-5v2Z"/></svg><svg viewBox="0 0 24 24" id="engineering-maintenance" xmlns="http://www.w3.org/2000/svg"><g data-name="圖層 2"><g data-name="圖層 1"><path d="M0 0h24v24H0Z" style="fill:none"/><path d="M22.1 6.84V6.5a1.87 1.87 0 0 0 0-.34l.74-.58a.17.17 0 0 0 0-.22l-.7-1.21a.18.18 0 0 0-.14-.08l-.86.35a2.66 2.66 0 0 0-.59-.34l-.13-.93A.18.18 0 0 0 20.2 3h-1.4a.16.16 0 0 0-.17.15l-.13.93a3.12 3.12 0 0 0-.59.34L17 4.07a.17.17 0 0 0-.21.08l-.7 1.21a.17.17 0 0 0 0 .22l.74.58a1.94 1.94 0 0 0 0 .68l-.74.58a.17.17 0 0 0 0 .22l.7 1.21a.18.18 0 0 0 .21.08l.87-.35a2.66 2.66 0 0 0 .59.34l.13.93a.16.16 0 0 0 .17.15h1.4a.16.16 0 0 0 .17-.15l.13-.93a3.12 3.12 0 0 0 .59-.34l.87.35a.17.17 0 0 0 .21-.08l.7-1.21a.17.17 0 0 0 0-.22Zm-2.6.91a1.25 1.25 0 1 1 1.25-1.25 1.25 1.25 0 0 1-1.25 1.25ZM9 15c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4Zm10.42-4.19.5.87a.15.15 0 0 1 0 .17l-.53.41a1.79 1.79 0 0 1 0 .24 1.94 1.94 0 0 1 0 .24l.52.41a.12.12 0 0 1 0 .16l-.5.87a.12.12 0 0 1-.15.06l-.63-.24a2.18 2.18 0 0 1-.42.24l-.09.66a.11.11 0 0 1-.12.1h-1a.12.12 0 0 1-.12-.11l-.09-.66a1.76 1.76 0 0 1-.42-.24l-.62.25a.12.12 0 0 1-.15-.06l-.5-.87a.12.12 0 0 1 0-.16l.53-.41a1.79 1.79 0 0 1 0-.24 1.94 1.94 0 0 1 0-.24l-.53-.41a.12.12 0 0 1 0-.16l.5-.87a.12.12 0 0 1 .15-.06l.62.25a2.18 2.18 0 0 1 .42-.24l.09-.66A.12.12 0 0 1 17 10h1a.15.15 0 0 1 .14.1l.09.66a1.76 1.76 0 0 1 .42.24l.62-.25a.12.12 0 0 1 .15.06Zm-2.75 1.69a.83.83 0 1 0 .83-.83.83.83 0 0 0-.83.83ZM4.74 9h8.53a.49.49 0 0 0 .49-.49.49.49 0 0 0-.49-.51H13a4 4 0 0 0-2-3.45v1a.5.5 0 0 1-1 0V4.14A4.09 4.09 0 0 0 9 4a4.09 4.09 0 0 0-1 .14V5.5a.5.5 0 0 1-1 0v-1A4 4 0 0 0 5 8h-.26a.49.49 0 0 0-.49.49.49.49 0 0 0 .49.51Zm8.12 1a4 4 0 0 1-7.72 0Z" style="fill-rule:evenodd"/></g></g></svg><svg viewBox="0 0 24 24" id="engineering_maintenance" xmlns="http://www.w3.org/2000/svg"><g data-name="圖層 2"><g data-name="圖層 1"><path d="M0 0h24v24H0Z" style="fill:none"/><path d="M22.1 6.84V6.5a1.87 1.87 0 0 0 0-.34l.74-.58a.17.17 0 0 0 0-.22l-.7-1.21a.18.18 0 0 0-.14-.08l-.86.35a2.66 2.66 0 0 0-.59-.34l-.13-.93A.18.18 0 0 0 20.2 3h-1.4a.16.16 0 0 0-.17.15l-.13.93a3.12 3.12 0 0 0-.59.34L17 4.07a.17.17 0 0 0-.21.08l-.7 1.21a.17.17 0 0 0 0 .22l.74.58a1.94 1.94 0 0 0 0 .68l-.74.58a.17.17 0 0 0 0 .22l.7 1.21a.18.18 0 0 0 .21.08l.87-.35a2.66 2.66 0 0 0 .59.34l.13.93a.16.16 0 0 0 .17.15h1.4a.16.16 0 0 0 .17-.15l.13-.93a3.12 3.12 0 0 0 .59-.34l.87.35a.17.17 0 0 0 .21-.08l.7-1.21a.17.17 0 0 0 0-.22Zm-2.6.91a1.25 1.25 0 1 1 1.25-1.25 1.25 1.25 0 0 1-1.25 1.25ZM9 15c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4Zm10.42-4.19.5.87a.15.15 0 0 1 0 .17l-.53.41a1.79 1.79 0 0 1 0 .24 1.94 1.94 0 0 1 0 .24l.52.41a.12.12 0 0 1 0 .16l-.5.87a.12.12 0 0 1-.15.06l-.63-.24a2.18 2.18 0 0 1-.42.24l-.09.66a.11.11 0 0 1-.12.1h-1a.12.12 0 0 1-.12-.11l-.09-.66a1.76 1.76 0 0 1-.42-.24l-.62.25a.12.12 0 0 1-.15-.06l-.5-.87a.12.12 0 0 1 0-.16l.53-.41a1.79 1.79 0 0 1 0-.24 1.94 1.94 0 0 1 0-.24l-.53-.41a.12.12 0 0 1 0-.16l.5-.87a.12.12 0 0 1 .15-.06l.62.25a2.18 2.18 0 0 1 .42-.24l.09-.66A.12.12 0 0 1 17 10h1a.15.15 0 0 1 .14.1l.09.66a1.76 1.76 0 0 1 .42.24l.62-.25a.12.12 0 0 1 .15.06Zm-2.75 1.69a.83.83 0 1 0 .83-.83.83.83 0 0 0-.83.83ZM4.74 9h8.53a.49.49 0 0 0 .49-.49.49.49 0 0 0-.49-.51H13a4 4 0 0 0-2-3.45v1a.5.5 0 0 1-1 0V4.14A4.09 4.09 0 0 0 9 4a4.09 4.09 0 0 0-1 .14V5.5a.5.5 0 0 1-1 0v-1A4 4 0 0 0 5 8h-.26a.49.49 0 0 0-.49.49.49.49 0 0 0 .49.51Zm8.12 1a4 4 0 0 1-7.72 0Z" style="fill-rule:evenodd"/></g></g></svg><svg viewBox="0 0 24 24" id="error" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-2h2v2zm0-4h-2V7h2v6z"/></svg><svg viewBox="0 0 24 24" id="event_busy" xmlns="http://www.w3.org/2000/svg"><path d="m9.31 17 2.44-2.44L14.19 17l1.06-1.06-2.44-2.44 2.44-2.44L14.19 10l-2.44 2.44L9.31 10l-1.06 1.06 2.44 2.44-2.44 2.44L9.31 17ZM19 3h-1V1h-2v2H8V1H6v2H5c-1.11 0-1.99.9-1.99 2L3 19a2 2 0 0 0 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2Zm0 16H5V8h14v11Z"/></svg><svg viewBox="0 0 24 24" id="event_note" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M17 10H7v2h10v-2zm2-7h-1V1h-2v2H8V1H6v2H5c-1.11 0-1.99.9-1.99 2L3 19a2 2 0 0 0 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H5V8h14v11zm-5-5H7v2h7v-2z"/></svg><svg viewBox="0 0 24 24" id="extension" xmlns="http://www.w3.org/2000/svg"><path d="M20.5 11H19V7c0-1.1-.9-2-2-2h-4V3.5a2.5 2.5 0 0 0-5 0V5H4c-1.1 0-1.99.9-1.99 2v3.8H3.5c1.49 0 2.7 1.21 2.7 2.7 0 1.49-1.21 2.7-2.7 2.7H2V20c0 1.1.9 2 2 2h3.8v-1.5c0-1.49 1.21-2.7 2.7-2.7 1.49 0 2.7 1.21 2.7 2.7V22H17c1.1 0 2-.9 2-2v-4h1.5a2.5 2.5 0 0 0 0-5Z"/></svg><svg fill="none" viewBox="0 0 24 24" id="eye_tracking" xmlns="http://www.w3.org/2000/svg"><path d="M6 23H3c-.55 0-1.02-.196-1.413-.587A1.926 1.926 0 0 1 1 21v-3h2v3h3v2Zm12 0v-2h3v-3h2v3c0 .55-.196 1.02-.587 1.413A1.926 1.926 0 0 1 21 23h-3Zm-6-4.5c-2 0-3.813-.592-5.438-1.775C4.938 15.542 3.75 13.967 3 12c.75-1.967 1.938-3.542 3.563-4.725C8.188 6.092 10 5.5 12 5.5c2 0 3.813.592 5.438 1.775C19.063 8.458 20.25 10.033 21 12c-.75 1.967-1.938 3.542-3.563 4.725C15.813 17.908 14 18.5 12 18.5Zm0-3c.967 0 1.792-.342 2.475-1.025A3.372 3.372 0 0 0 15.5 12c0-.967-.342-1.792-1.025-2.475A3.372 3.372 0 0 0 12 8.5c-.967 0-1.792.342-2.475 1.025A3.372 3.372 0 0 0 8.5 12c0 .967.342 1.792 1.025 2.475A3.372 3.372 0 0 0 12 15.5Zm0-2c-.417 0-.77-.146-1.063-.438A1.446 1.446 0 0 1 10.5 12c0-.417.146-.77.438-1.063A1.446 1.446 0 0 1 12 10.5c.417 0 .77.146 1.063.438.291.291.437.645.437 1.062 0 .417-.146.77-.438 1.063A1.446 1.446 0 0 1 12 13.5ZM1 6V3c0-.55.196-1.02.587-1.413A1.926 1.926 0 0 1 3 1h3v2H3v3H1Zm20 0V3h-3V1h3c.55 0 1.02.196 1.413.587C22.803 1.98 23 2.45 23 3v3h-2Z" fill="#000"/></svg><svg fill="none" viewBox="0 0 48 48" id="factory" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M33.34 9.389a.562.562 0 0 0-.562.562v11.597h-7.556v-5.184l-8.889 6.08v-6.008L10 21.056V39.05c0 .31.252.562.563.562h26.874c.311 0 .563-.252.563-.562V9.95a.562.562 0 0 0-.563-.562H33.34Zm-2.562.562A2.562 2.562 0 0 1 33.34 7.39h4.097A2.563 2.563 0 0 1 40 9.95V39.05a2.562 2.562 0 0 1-2.563 2.562H10.564A2.562 2.562 0 0 1 8 39.05V20.04l10.333-7.539v6.152l8.89-6.08v6.975h3.555V9.951Z" fill="#191C1C"/><path d="M18.14 26.61h-3.905v3.906h3.906v-3.907ZM18.14 32.86h-3.905v3.906h3.906v-3.907ZM25.953 26.61h-3.906v3.906h3.906v-3.907ZM25.953 32.86h-3.906v3.906h3.906v-3.907ZM33.766 26.61H29.86v3.906h3.906v-3.907ZM33.766 32.86H29.86v3.906h3.906v-3.907Z" fill="#191C1C"/></svg><svg viewBox="0 0 24 24" id="favorite" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="m12 21.35-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z"/></svg><svg viewBox="0 0 24 24" id="favorite_border" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M16.5 3c-1.74 0-3.41.81-4.5 2.09C10.91 3.81 9.24 3 7.5 3 4.42 3 2 5.42 2 8.5c0 3.78 3.4 6.86 8.55 11.54L12 21.35l1.45-1.32C18.6 15.36 22 12.28 22 8.5 22 5.42 19.58 3 16.5 3zm-4.4 15.55-.1.1-.1-.1C7.14 14.24 4 11.39 4 8.5 4 6.5 5.5 5 7.5 5c1.54 0 3.04.99 3.57 2.36h1.87C13.46 5.99 14.96 5 16.5 5c2 0 3.5 1.5 3.5 3.5 0 2.89-3.14 5.74-7.9 10.05z"/></svg><svg viewBox="0 0 24 24" id="file_copy" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm-1 4 6 6v10c0 1.1-.9 2-2 2H7.99C6.89 23 6 22.1 6 21l.01-14c0-1.1.89-2 1.99-2h7zm-1 7h5.5L14 6.5V12z"/></svg><svg viewBox="0 0 24 24" id="filter_alt" xmlns="http://www.w3.org/2000/svg"><path d="M4.25 5.61C6.27 8.2 10 13 10 13v6c0 .55.45 1 1 1h2c.55 0 1-.45 1-1v-6s3.72-4.8 5.74-7.39A.998.998 0 0 0 18.95 4H5.04c-.83 0-1.3.95-.79 1.61Z"/></svg><svg viewBox="0 0 24 24" id="first_page" xmlns="http://www.w3.org/2000/svg"><path d="M18.41 16.59 13.82 12l4.59-4.59L17 6l-6 6 6 6 1.41-1.41ZM6 6h2v12H6V6Z"/></svg><svg viewBox="0 0 24 24" id="folder" xmlns="http://www.w3.org/2000/svg"><path d="M10 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2h-8l-2-2Z"/></svg><svg viewBox="0 0 24 24" id="folder_off" xmlns="http://www.w3.org/2000/svg"><g data-name="圖層 2"><path d="M0 0h24v24H0Z" style="fill:none"/><path d="m1.89 4.44 1.33 1.33A1.79 1.79 0 0 0 3 6.6v10.8a1.81 1.81 0 0 0 1.8 1.8h11.86l2.91 2.91 1.27-1.27L3.17 3.16ZM19.2 6.6H12l-1.8-1.8H7.34l13.44 13.44a1.72 1.72 0 0 0 .22-.84v-9a1.81 1.81 0 0 0-1.8-1.8Z"/></g></svg><svg viewBox="0 0 24 24" id="folder_open" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M20 6h-8l-2-2H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2zm0 12H4V8h16v10z"/></svg><svg viewBox="0 -960 960 960" id="format_list_numbered_rtl" xmlns="http://www.w3.org/2000/svg"><path d="M680-80v-60h100v-30h-60v-60h60v-30H680v-60h120q17 0 28.5 11.5T840-280v40q0 17-11.5 28.5T800-200q17 0 28.5 11.5T840-160v40q0 17-11.5 28.5T800-80H680Zm0-280v-110q0-17 11.5-28.5T720-510h60v-30H680v-60h120q17 0 28.5 11.5T840-560v70q0 17-11.5 28.5T800-450h-60v30h100v60H680Zm60-280v-180h-60v-60h120v240h-60ZM120-200v-80h480v80H120Zm0-240v-80h480v80H120Zm0-240v-80h480v80H120Z"/></svg><svg viewBox="0 0 24 24" id="forward" xmlns="http://www.w3.org/2000/svg"><path d="M12 8V4l8 8-8 8v-4H4V8h8Z"/></svg><svg viewBox="0 0 24 24" id="fullscreen" xmlns="http://www.w3.org/2000/svg"><path d="M7 14H5v5h5v-2H7v-3Zm-2-4h2V7h3V5H5v5Zm12 7h-3v2h5v-5h-2v3ZM14 5v2h3v3h2V5h-5Z"/></svg><svg viewBox="0 0 24 24" id="fullscreen_exit" xmlns="http://www.w3.org/2000/svg"><path d="M5 16h3v3h2v-5H5v2Zm3-8H5v2h5V5H8v3Zm6 11h2v-3h3v-2h-5v5Zm2-11V5h-2v5h5V8h-3Z"/></svg><svg viewBox="0 0 24 24" id="functions" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M18 4H6v2l6.5 6L6 18v2h12v-3h-7l5-5-5-5h7z"/></svg><svg viewBox="0 0 24 24" id="gps_fixed" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M12 8c-2.21 0-4 1.79-4 4s1.79 4 4 4 4-1.79 4-4-1.79-4-4-4zm8.94 3A8.994 8.994 0 0 0 13 3.06V1h-2v2.06A8.994 8.994 0 0 0 3.06 11H1v2h2.06A8.994 8.994 0 0 0 11 20.94V23h2v-2.06A8.994 8.994 0 0 0 20.94 13H23v-2h-2.06zM12 19c-3.87 0-7-3.13-7-7s3.13-7 7-7 7 3.13 7 7-3.13 7-7 7z"/></svg><svg viewBox="0 0 24 24" id="grid" xmlns="http://www.w3.org/2000/svg"><g fill-rule="evenodd"><path d="M0 0h24v24H0z" fill="none"/><path d="M3 3v8h8V3H3zm6 6H5V5h4v4zm-6 4v8h8v-8H3zm6 6H5v-4h4v4zm4-16v8h8V3h-8zm6 6h-4V5h4v4zm-6 4v8h8v-8h-8zm6 6h-4v-4h4v4z"/></g></svg><svg viewBox="0 0 48 48" id="group" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M24 3.79a9.21 9.21 0 0 0-5.694 16.45l-3.62 5.948A9.21 9.21 0 1 0 20.97 37.1h6.06c.95 4.075 4.606 7.11 8.97 7.11a9.21 9.21 0 1 0 0-18.42 9.21 9.21 0 0 0-2.685.398l-3.62-5.949A9.21 9.21 0 0 0 24 3.79Zm3.816 17.595A9.176 9.176 0 0 1 24 22.21a9.176 9.176 0 0 1-3.816-.825l-3.47 5.701a9.206 9.206 0 0 1 4.495 7.814h5.582a9.205 9.205 0 0 1 4.495-7.814l-3.47-5.701ZM17.21 13a6.79 6.79 0 1 1 13.58 0 6.79 6.79 0 0 1-13.58 0Zm-12 22a6.79 6.79 0 1 1 13.58 0 6.79 6.79 0 0 1-13.58 0ZM36 28.21a6.79 6.79 0 1 0 0 13.58 6.79 6.79 0 0 0 0-13.58Z"/></svg><svg viewBox="0 0 24 24" id="group_work" xmlns="http://www.w3.org/2000/svg"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2ZM8 17.5a2.5 2.5 0 0 1 0-5 2.5 2.5 0 0 1 0 5ZM9.5 8a2.5 2.5 0 0 1 5 0 2.5 2.5 0 0 1-5 0Zm6.5 9.5a2.5 2.5 0 0 1 0-5 2.5 2.5 0 0 1 0 5Z"/></svg><svg viewBox="0 0 24 24" id="help" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 17h-2v-2h2v2zm2.07-7.75-.9.92C13.45 12.9 13 13.5 13 15h-2v-.5c0-1.1.45-2.1 1.17-2.83l1.24-1.26c.37-.36.59-.86.59-1.41 0-1.1-.9-2-2-2s-2 .9-2 2H8c0-2.21 1.79-4 4-4s4 1.79 4 4c0 .88-.36 1.68-.93 2.25z"/></svg><svg viewBox="0 0 24 24" id="help_outline" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="M11 18h2v-2h-2v2zm1-16C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8zm0-14c-2.21 0-4 1.79-4 4h2c0-1.1.9-2 2-2s2 .9 2 2c0 2-3 1.75-3 5h2c0-2.25 3-2.5 3-5 0-2.21-1.79-4-4-4z"/></svg><svg viewBox="0 0 24 24" id="hide_source" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M2.81 2.81 1.39 4.22l2.27 2.27A9.91 9.91 0 0 0 2 12c0 5.52 4.48 10 10 10 2.04 0 3.93-.61 5.51-1.66l2.27 2.27 1.41-1.41L2.81 2.81zM12 20c-4.41 0-8-3.59-8-8 0-1.48.41-2.86 1.12-4.06l10.94 10.94C14.86 19.59 13.48 20 12 20zM7.94 5.12 6.49 3.66A9.91 9.91 0 0 1 12 2c5.52 0 10 4.48 10 10 0 2.04-.61 3.93-1.66 5.51l-1.46-1.46A7.869 7.869 0 0 0 20 12c0-4.41-3.59-8-8-8-1.48 0-2.86.41-4.06 1.12z"/></svg><svg viewBox="0 0 24 24" id="highlight_off" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M14.59 8 12 10.59 9.41 8 8 9.41 10.59 12 8 14.59 9.41 16 12 13.41 14.59 16 16 14.59 13.41 12 16 9.41 14.59 8zM12 2C6.47 2 2 6.47 2 12s4.47 10 10 10 10-4.47 10-10S17.53 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8z"/></svg><svg viewBox="0 0 24 24" id="history" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M13 3a9 9 0 0 0-9 9H1l3.89 3.89.07.14L9 12H6c0-3.87 3.13-7 7-7s7 3.13 7 7-3.13 7-7 7c-1.93 0-3.68-.79-4.94-2.06l-1.42 1.42A8.954 8.954 0 0 0 13 21a9 9 0 0 0 0-18zm-1 5v5l4.28 2.54.72-1.21-3.5-2.08V8H12z"/></svg><svg viewBox="0 0 24 24" id="home" xmlns="http://www.w3.org/2000/svg"><path d="M10 20v-6h4v6h5v-8h3L12 3 2 12h3v8z"/><path d="M0 0h24v24H0z" fill="none"/></svg><svg fill="none" viewBox="0 0 24 24" id="image" xmlns="http://www.w3.org/2000/svg"><path d="M19 5v14H5V5h14Zm0-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2Zm-4.86 8.86-3 3.87L9 13.14 6 17h12l-3.86-5.14Z" fill="#000"/></svg><svg viewBox="0 0 24 24" id="image-outline" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M19 5v14H5V5h14m0-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-4.86 8.86-3 3.87L9 13.14 6 17h12l-3.86-5.14z"/></svg><svg viewBox="0 0 24 24" id="info" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z"/></svg><svg viewBox="0 0 24 24" id="info_outline" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M11 7h2v2h-2zm0 4h2v6h-2zm1-9C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8z"/></svg><svg viewBox="0 0 24 24" id="inventory" xmlns="http://www.w3.org/2000/svg"><path d="M20 2H4c-1 0-2 .9-2 2v3.01c0 .72.43 1.34 1 1.69V20c0 1.1 1.1 2 2 2h14c.9 0 2-.9 2-2V8.7c.57-.35 1-.97 1-1.69V4c0-1.1-1-2-2-2Zm-5 12H9v-2h6v2Zm5-7H4V4l16-.02V7Z"/></svg><svg viewBox="0 0 24 24" id="keyboard_arrow_down" xmlns="http://www.w3.org/2000/svg"><path d="M7.41 8.59 12 13.17l4.59-4.58L18 10l-6 6-6-6 1.41-1.41z"/><path fill="none" d="M0 0h24v24H0V0z"/></svg><svg viewBox="0 0 24 24" id="keyboard_arrow_up" xmlns="http://www.w3.org/2000/svg"><path d="M7.41 15.41 12 10.83l4.59 4.58L18 14l-6-6-6 6z"/><path d="M0 0h24v24H0z" fill="none"/></svg><svg viewBox="0 0 24 24" id="label" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M17.63 5.84C17.27 5.33 16.67 5 16 5L5 5.01C3.9 5.01 3 5.9 3 7v10c0 1.1.9 1.99 2 1.99L16 19c.67 0 1.27-.33 1.63-.84L22 12l-4.37-6.16z"/></svg><svg viewBox="0 0 24 24" id="lan" xmlns="http://www.w3.org/2000/svg"><path d="M13 22h8v-7h-3v-4h-5V9h3V2H8v7h3v2H6v4H3v7h8v-7H8v-2h8v2h-3v7Z"/></svg><svg viewBox="0 0 24 24" id="language" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zm6.93 6h-2.95a15.65 15.65 0 0 0-1.38-3.56A8.03 8.03 0 0 1 18.92 8zM12 4.04c.83 1.2 1.48 2.53 1.91 3.96h-3.82c.43-1.43 1.08-2.76 1.91-3.96zM4.26 14C4.1 13.36 4 12.69 4 12s.1-1.36.26-2h3.38c-.08.66-.14 1.32-.14 2 0 .68.06 1.34.14 2H4.26zm.82 2h2.95c.32 1.25.78 2.45 1.38 3.56A7.987 7.987 0 0 1 5.08 16zm2.95-8H5.08a7.987 7.987 0 0 1 4.33-3.56A15.65 15.65 0 0 0 8.03 8zM12 19.96c-.83-1.2-1.48-2.53-1.91-3.96h3.82c-.43 1.43-1.08 2.76-1.91 3.96zM14.34 14H9.66c-.09-.66-.16-1.32-.16-2 0-.68.07-1.35.16-2h4.68c.09.65.16 1.32.16 2 0 .68-.07 1.34-.16 2zm.25 5.56c.6-1.11 1.06-2.31 1.38-3.56h2.95a8.03 8.03 0 0 1-4.33 3.56zM16.36 14c.08-.66.14-1.32.14-2 0-.68-.06-1.34-.14-2h3.38c.16.64.26 1.31.26 2s-.1 1.36-.26 2h-3.38z"/></svg><svg viewBox="0 0 24 24" id="last_page" xmlns="http://www.w3.org/2000/svg"><path d="M5.59 7.41 10.18 12l-4.59 4.59L7 18l6-6-6-6-1.41 1.41ZM16 6h2v12h-2V6Z"/></svg><svg viewBox="0 0 24 24" id="launch" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M19 19H5V5h7V3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z"/></svg><svg fill="none" viewBox="0 0 30 30" id="left_circle" xmlns="http://www.w3.org/2000/svg"><circle cx="15" cy="15" r="14" transform="rotate(-180 15 15)" stroke="#AFB3BA" stroke-width="2"/><path d="M18.41 10.41 13.83 15l4.58 4.59L17 21l-6-6 6-6 1.41 1.41Z" fill="#AFB3BA"/></svg><svg viewBox="0 0 24 24" id="link" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M3.9 12c0-1.71 1.39-3.1 3.1-3.1h4V7H7c-2.76 0-5 2.24-5 5s2.24 5 5 5h4v-1.9H7c-1.71 0-3.1-1.39-3.1-3.1zM8 13h8v-2H8v2zm9-6h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1s-1.39 3.1-3.1 3.1h-4V17h4c2.76 0 5-2.24 5-5s-2.24-5-5-5z"/></svg><svg viewBox="0 0 24 24" id="link_off" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0V0z"/><path d="M17 7h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1 0 1.43-.98 2.63-2.31 2.98l1.46 1.46C20.88 15.61 22 13.95 22 12c0-2.76-2.24-5-5-5zm-1 4h-2.19l2 2H16zM2 4.27l3.11 3.11A4.991 4.991 0 0 0 2 12c0 2.76 2.24 5 5 5h4v-1.9H7c-1.71 0-3.1-1.39-3.1-3.1 0-1.59 1.21-2.9 2.76-3.07L8.73 11H8v2h2.73L13 15.27V17h1.73l4.01 4L20 19.74 3.27 3 2 4.27z"/><path fill="none" d="M0 24V0"/></svg><svg viewBox="0 0 24 24" id="local_activity" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M20 12c0-1.1.9-2 2-2V6c0-1.1-.9-2-2-2H4c-1.1 0-1.99.9-1.99 2v4c1.1 0 1.99.9 1.99 2s-.89 2-2 2v4c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2v-4c-1.1 0-2-.9-2-2zm-4.42 4.8L12 14.5l-3.58 2.3 1.08-4.12-3.29-2.69 4.24-.25L12 5.8l1.54 3.95 4.24.25-3.29 2.69 1.09 4.11z"/></svg><svg viewBox="0 0 24 24" id="local_offer" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="m21.41 11.58-9-9C12.05 2.22 11.55 2 11 2H4c-1.1 0-2 .9-2 2v7c0 .55.22 1.05.59 1.42l9 9c.36.36.86.58 1.41.58.55 0 1.05-.22 1.41-.59l7-7c.37-.36.59-.86.59-1.41 0-.55-.23-1.06-.59-1.42zM5.5 7C4.67 7 4 6.33 4 5.5S4.67 4 5.5 4 7 4.67 7 5.5 6.33 7 5.5 7z"/></svg><svg viewBox="0 0 24 24" id="location" xmlns="http://www.w3.org/2000/svg"><path d="M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7Zm0 9.5a2.5 2.5 0 0 1 0-5 2.5 2.5 0 0 1 0 5Z"/></svg><svg viewBox="0 0 24 24" id="lock" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zm-6 9c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zm3.1-9H8.9V6c0-1.71 1.39-3.1 3.1-3.1 1.71 0 3.1 1.39 3.1 3.1v2z"/></svg><svg viewBox="0 0 24 24" id="lock_open" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M12 17c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm6-9h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6h1.9c0-1.71 1.39-3.1 3.1-3.1 1.71 0 3.1 1.39 3.1 3.1v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2zm0 12H6V10h12v10z"/></svg><svg viewBox="0 -960 960 960" id="login" xmlns="http://www.w3.org/2000/svg"><path d="M480-120v-80h280v-560H480v-80h280q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H480Zm-80-160-55-58 102-102H120v-80h327L345-622l55-58 200 200-200 200Z"/></svg><svg viewBox="0 0 24 24" id="loop" xmlns="http://www.w3.org/2000/svg"><path d="M12 4V1L8 5l4 4V6c3.31 0 6 2.69 6 6 0 1.01-.25 1.97-.7 2.8l1.46 1.46A7.93 7.93 0 0 0 20 12c0-4.42-3.58-8-8-8zm0 14c-3.31 0-6-2.69-6-6 0-1.01.25-1.97.7-2.8L5.24 7.74A7.93 7.93 0 0 0 4 12c0 4.42 3.58 8 8 8v3l4-4-4-4v3z"/><path d="M0 0h24v24H0z" fill="none"/></svg><svg viewBox="0 0 24 24" id="low_priority" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M14 5h8v2h-8zm0 5.5h8v2h-8zm0 5.5h8v2h-8zM2 11.5C2 15.08 4.92 18 8.5 18H9v2l3-3-3-3v2h-.5C6.02 16 4 13.98 4 11.5S6.02 7 8.5 7H12V5H8.5C4.92 5 2 7.92 2 11.5z"/></svg><svg viewBox="0 0 24 24" id="mark_email_unread" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="M22 8.98V18c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2h10.1c-.06.32-.1.66-.1 1 0 1.48.65 2.79 1.67 3.71L12 11 4 6v2l8 5 5.3-3.32c.54.2 1.1.32 1.7.32 1.13 0 2.16-.39 3-1.02zM16 5c0 1.66 1.34 3 3 3s3-1.34 3-3-1.34-3-3-3-3 1.34-3 3z"/></svg><svg viewBox="0 0 24 24" id="medical_information" xmlns="http://www.w3.org/2000/svg"><path d="M20 7h-5V4c0-1.1-.9-2-2-2h-2c-1.1 0-2 .9-2 2v3H4c-1.1 0-2 .9-2 2v11c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V9c0-1.1-.9-2-2-2Zm-9-3h2v5h-2V4Zm0 12H9v2H7v-2H5v-2h2v-2h2v2h2v2Zm2-1.5V13h6v1.5h-6Zm0 3V16h4v1.5h-4Z"/></svg><svg viewBox="0 0 24 24" id="menu" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z"/></svg><svg viewBox="0 0 24 24" id="more_vert" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M12 8c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z"/></svg><svg viewBox="0 0 24 24" id="multiple_stop" xmlns="http://www.w3.org/2000/svg"><path d="m17 4 4 4-4 4V9h-4V7h4V4Zm-7 3c-.55 0-1 .45-1 1s.45 1 1 1 1-.45 1-1-.45-1-1-1ZM6 7c-.55 0-1 .45-1 1s.45 1 1 1 1-.45 1-1-.45-1-1-1Zm1 10h4v-2H7v-3l-4 4 4 4v-3Zm7 0c.55 0 1-.45 1-1s-.45-1-1-1-1 .45-1 1 .45 1 1 1Zm4 0c.55 0 1-.45 1-1s-.45-1-1-1-1 .45-1 1 .45 1 1 1Z"/></svg><svg viewBox="0 0 24 24" id="mx-509_certificate" xmlns="http://www.w3.org/2000/svg"><g data-name="圖層 2"><g data-name="圖層 1"><path d="M0 0h24v24H0Z" style="fill:none"/><path d="M4 10h7v1.5H4zM4 12.5h6V14H4zM4 7.5h8V9H4z"/><path d="M21 3.5H3a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2h18a2 2 0 0 0 2-2v-13a2 2 0 0 0-2-2Zm0 15H3v-13h18Z"/><path d="M13.91 13.48h1v3l1.5-.64 1.5.64v-3h1V12l1-1-1-1V8.52h-1.5l-1-1-1 1h-1.5V10l-1 1 1 1Zm2.48-3.72A1.24 1.24 0 1 1 15.15 11a1.24 1.24 0 0 1 1.24-1.24Z"/></g></g></svg><svg viewBox="0 0 24 24" id="mx-application_cog_outline" xmlns="http://www.w3.org/2000/svg"><path d="M21.7 18.6v-1l1.1-.8c.1-.1.2-.2.1-.3l-1-1.7c0-.1-.2-.1-.3-.1l-1.2.5c-.3-.2-.6-.4-.9-.5l-.2-1.3c0-.1-.1-.2-.2-.2h-2c-.2 0-.3.1-.3.2l-.2 1.3c-.3.2-.5.3-.8.5l-1.2-.5c-.1 0-.2 0-.3.1l-1 1.7c0 .1 0 .2.1.3l1.1.8v1l-1.1.8c-.1.1-.2.2-.1.3l1 1.7c.1.1.2.1.3.1l1.2-.5c.2.2.5.4.8.5l.2 1.3c.1.1.2.2.3.2h2c.1 0 .2-.1.2-.2l.2-1.3c.3-.2.5-.3.8-.5l1.2.4c.1 0 .2 0 .3-.1l1-1.7c.1-.1.1-.2 0-.2l-1.1-.8Zm-3.7.9c-.8 0-1.5-.7-1.5-1.5s.7-1.5 1.5-1.5 1.5.7 1.5 1.5-.7 1.5-1.5 1.5ZM12.3 22H3c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h18c1.1 0 2 .9 2 2v9.1c-.6-.6-1.3-1.1-2-1.4V6H3v14h8.3c.2.7.5 1.4 1 2Z"/></svg><svg viewBox="0 0 24 24" id="mx-application_empty" xmlns="http://www.w3.org/2000/svg"><g data-name="圖層 2"><path d="M0 0h24v24H0Z" style="fill:none"/><path d="M4 16h4v4H4zM16 4h4v4h-4zM14 8V4h-4v3.46l.54.54H14zM20 14v-4h-4v3.46l.54.54H20zM14 10h-1.46L14 11.46V10zM20 16h-1.46L20 17.46V16z"/><path d="m20.84 20.83-.01.01L3.16 3.17 1.89 4.44 4 6.54V8h1.46l2 2H4v4h4v-3.46l2 2V14h1.46l2 2H10v4h4v-3.46l2 2V20h1.46l2.11 2.11 1.27-1.27v-.01zM8 4H6.54L8 5.46V4z"/></g></svg><svg viewBox="0 0 24 24" id="mx-calendar_clock" xmlns="http://www.w3.org/2000/svg"><g data-name="圖層 2"><g data-name="圖層 1"><path style="fill:none" d="M0 0h24v24H0z"/><path d="M15 13h1.5v2.82l2.44 1.41-.75 1.3L15 16.69V13m4-5H5v11h4.67A7 7 0 0 1 19 9.67V8M5 21a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h1V1h2v2h8V1h2v2h1a2 2 0 0 1 2 2v6.1a7 7 0 0 1-9.9 9.9H5m11-9.85A4.85 4.85 0 0 0 11.15 16a4.85 4.85 0 0 0 9.7 0A4.85 4.85 0 0 0 16 11.15Z"/></g></g></svg><svg viewBox="0 0 24 24" id="mx-circle_dash" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="m21.814 13.956-1.966-.39a8.051 8.051 0 0 0 0-3.125l1.966-.389a10.055 10.055 0 0 1 0 3.904ZM20.32 6.448l-1.665 1.115a8.05 8.05 0 0 0-2.21-2.21l1.115-1.665c1.09.73 2.03 1.67 2.76 2.76Zm-6.364-4.254-.39 1.966a8.045 8.045 0 0 0-3.125 0l-.389-1.966a10.05 10.05 0 0 1 3.904 0ZM6.448 3.688l1.114 1.665a8.051 8.051 0 0 0-2.209 2.21L3.688 6.448c.73-1.09 1.67-2.03 2.76-2.76Zm-4.254 6.365a10.05 10.05 0 0 0 0 3.903l1.966-.39a8.046 8.046 0 0 1 0-3.125l-1.966-.389Zm1.494 7.507 1.665-1.114a8.052 8.052 0 0 0 2.21 2.209L6.447 20.32a10.055 10.055 0 0 1-2.76-2.76Zm6.364 4.254.39-1.966a8.044 8.044 0 0 0 3.125 0l.389 1.966a10.046 10.046 0 0 1-3.904 0Zm7.508-1.494-1.115-1.665a8.05 8.05 0 0 0 2.21-2.21l1.665 1.115a10.056 10.056 0 0 1-2.76 2.76Z"/></svg><svg version="1.1" id="mx-cog-off" x="0" y="0" viewBox="0 0 24 24" style="enable-background:new 0 0 24 24" xml:space="preserve" xmlns="http://www.w3.org/2000/svg"><style>.st1{display:none;opacity:.76;fill:none;stroke:#b1d135;stroke-width:1.8;stroke-miterlimit:10;enable-background:new}</style><path d="M0 0h24v24H0V0zm0 0h24v24H0V0zm0 0h24v24H0V0zm0 0h24v24H0V0z" style="fill:none"/><path d="m2 4.3 2.1 2.1-1.4 2.5c-.1.2 0 .4.2.6l2 1.6c0 .3-.1.6-.1.9s0 .6.1.9l-2 1.6c-.2.1-.2.4-.1.6l1.9 3.3c.1.2.4.3.6.2l2.4-1c.5.4 1 .7 1.6.9l.4 2.5c0 .2.2.4.5.4H14c.2 0 .4-.2.5-.4l.4-2.5c.4-.2.7-.3 1.1-.6l3.9 3.9 1.3-1.3L3.3 3 2 4.3zm10 11.3c-2 0-3.6-1.6-3.6-3.6 0-.4.1-.8.2-1.1l4.5 4.5c-.3.1-.7.2-1.1.2zM19.1 12.9c0-.3.1-.6.1-.9s0-.6-.1-.9l2-1.6c.2-.1.2-.4.1-.6l-1.9-3.3c-.1-.2-.4-.3-.6-.2l-2.4 1c-.5-.4-1-.7-1.6-.9L14.3 3c0-.2-.2-.4-.5-.4H10c-.2 0-.4.2-.5.4l-.2 2.4c-.3.1-.5.2-.8.3l2.8 2.8c.2 0 .5-.1.7-.1 2 0 3.6 1.6 3.6 3.6 0 .2 0 .5-.1.7l4.5 4.5 1.2-2.1c.1-.2.1-.5-.1-.6l-2-1.6z"/></svg><svg viewBox="0 0 24 24" id="mx-cursor" xmlns="http://www.w3.org/2000/svg"><path d="M13.64 21.97a.99.99 0 0 1-1.33-.47l-2.18-4.74-2.51 2.02c-.17.14-.38.22-.62.22a1 1 0 0 1-1-1V3a1 1 0 0 1 1.64-.77l.01-.01 11.49 9.64a1.001 1.001 0 0 1-.44 1.75l-3.16.62 2.2 4.73c.26.5.02 1.09-.48 1.32l-3.62 1.69Z"/></svg><svg viewBox="0 0 24 24" id="mx-cursor-add" xmlns="http://www.w3.org/2000/svg"><path d="m18 11 .113-.001 1.027.861a1.001 1.001 0 0 1-.44 1.75l-3.16.62 2.2 4.73c.26.5.02 1.09-.48 1.32l-3.62 1.69a.99.99 0 0 1-1.33-.47l-2.18-4.74-2.51 2.02c-.17.14-.38.22-.62.22a1 1 0 0 1-1-1V3a1 1 0 0 1 1.64-.77l.01-.01 5.407 4.536A5.001 5.001 0 0 0 18 11ZM21 7h-2v2h-2V7h-2V5h2V3h2v2h2v2Z"/></svg><svg viewBox="0 0 24 24" id="mx-cursor-add-outline" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="m18 11 .113-.001 1.027.861a1.001 1.001 0 0 1-.44 1.75l-3.16.62 2.2 4.73c.26.5.02 1.09-.48 1.32l-3.62 1.69a.99.99 0 0 1-1.33-.47l-2.18-4.74-2.51 2.02c-.17.14-.38.22-.62.22a1 1 0 0 1-1-1V3a1 1 0 0 1 1.64-.77l.01-.01 5.407 4.536A5.001 5.001 0 0 0 18 11Zm-7.93 3.27a.997.997 0 0 1 1.33.48l2.3 4.99 1.8-.85-2.31-4.98c-.24-.5-.02-1.1.48-1.33l.28-.08 2.3-.45L8 5.12V15.9l1.82-1.47.25-.16Z"/><path d="M21 7h-2v2h-2V7h-2V5h2V3h2v2h2v2Z"/></svg><svg viewBox="0 0 24 24" id="mx-cursor-outline" xmlns="http://www.w3.org/2000/svg"><path d="M10.07 14.27a.997.997 0 0 1 1.33.48l2.3 4.99 1.8-.85-2.31-4.98c-.24-.5-.02-1.1.48-1.33l.28-.08 2.3-.45L8 5.12V15.9l1.82-1.47.25-.16Zm3.57 7.7a.99.99 0 0 1-1.33-.47l-2.18-4.74-2.51 2.02c-.17.14-.38.22-.62.22a1 1 0 0 1-1-1V3a1 1 0 0 1 1.64-.77l.01-.01 11.49 9.64a1.001 1.001 0 0 1-.44 1.75l-3.16.62 2.2 4.73c.26.5.02 1.09-.48 1.32l-3.62 1.69Z"/></svg><svg fill="none" viewBox="0 0 24 24" id="mx-cursor_add" xmlns="http://www.w3.org/2000/svg"><path d="m18 11 .113-.001 1.027.861a1.001 1.001 0 0 1-.44 1.75l-3.16.62 2.2 4.73c.26.5.02 1.09-.48 1.32l-3.62 1.69a.99.99 0 0 1-1.33-.47l-2.18-4.74-2.51 2.02c-.17.14-.38.22-.62.22a1 1 0 0 1-1-1V3a1 1 0 0 1 1.64-.77l.01-.01 5.407 4.536A5.001 5.001 0 0 0 18 11ZM21 7h-2v2h-2V7h-2V5h2V3h2v2h2v2Z" fill="#000"/></svg><svg fill="none" viewBox="0 0 24 24" id="mx-cursor_add_outline" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="m18 11 .113-.001 1.027.861a1.001 1.001 0 0 1-.44 1.75l-3.16.62 2.2 4.73c.26.5.02 1.09-.48 1.32l-3.62 1.69a.99.99 0 0 1-1.33-.47l-2.18-4.74-2.51 2.02c-.17.14-.38.22-.62.22a1 1 0 0 1-1-1V3a1 1 0 0 1 1.64-.77l.01-.01 5.407 4.536A5.001 5.001 0 0 0 18 11Zm-7.93 3.27a.997.997 0 0 1 1.33.48l2.3 4.99 1.8-.85-2.31-4.98c-.24-.5-.02-1.1.48-1.33l.28-.08 2.3-.45L8 5.12V15.9l1.82-1.47.25-.16Z" fill="#000"/><path d="M21 7h-2v2h-2V7h-2V5h2V3h2v2h2v2Z" fill="#000"/></svg><svg fill="none" viewBox="0 0 24 24" id="mx-cursor_outline" xmlns="http://www.w3.org/2000/svg"><path d="M10.07 14.27a.997.997 0 0 1 1.33.48l2.3 4.99 1.8-.85-2.31-4.98c-.24-.5-.02-1.1.48-1.33l.28-.08 2.3-.45L8 5.12V15.9l1.82-1.47.25-.16Zm3.57 7.7a.99.99 0 0 1-1.33-.47l-2.18-4.74-2.51 2.02c-.17.14-.38.22-.62.22a1 1 0 0 1-1-1V3a1 1 0 0 1 1.64-.77l.01-.01 11.49 9.64a1.001 1.001 0 0 1-.44 1.75l-3.16.62 2.2 4.73c.26.5.02 1.09-.48 1.32l-3.62 1.69Z" fill="#000"/></svg><svg viewBox="0 0 24 24" style="enable-background:new 0 0 24 24" xml:space="preserve" id="mx-default_route" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0V0z" style="fill:none"/><path d="M22 12c0-5.5-4.5-10-10-10S2 6.5 2 12s4.5 10 10 10 10-4.5 10-10zM7.1 8.9l3.1 3.1-3.1 3.1v-2.2H4.4v-1.8h2.7V8.9zm1.8-1.8L12 4l3.1 3.1h-2.2v2.7h-1.8V7.1H8.9zm8 8L13.8 12l3.1-3.1v2.2h2.7v1.8h-2.7v2.2zm-1.8 1.8L12 20l-3.1-3.1h2.2v-2.7h1.8v2.7h2.2z"/></svg><svg fill="none" viewBox="0 0 24 24" id="mx-disband_group_outline" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10c.488 0 .968-.035 1.438-.103A5.976 5.976 0 0 1 12 18c0-1.75.749-3.324 1.943-4.42.356-.515.9-.89 1.533-1.025A5.978 5.978 0 0 1 18 12c1.488 0 2.849.541 3.897 1.438.068-.47.103-.95.103-1.438 0-5.52-4.48-10-10-10ZM8 17.5a2.5 2.5 0 0 1 0-5 2.5 2.5 0 0 1 0 5ZM9.5 8a2.5 2.5 0 0 1 5 0 2.5 2.5 0 0 1-5 0Z" fill="#000"/><path d="m20.12 14.47 1.42 1.41L19.41 18l2.13 2.12-1.42 1.42L18 19.41l-2.12 2.13-1.41-1.42L16.59 18l-2.12-2.12 1.41-1.41L18 16.59l2.12-2.12Z" fill="#000"/></svg><svg viewBox="0 0 160 160" id="mx-empty_state_404" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M113.061 97c-11.08 0-20.06 8.981-20.06 20.061 0 11.079 8.98 20.06 20.06 20.06 4.523 0 8.716-1.51 12.083-4.06v2.378l19.011 18.975 6.259-6.26-18.974-19.01h-2.378a19.964 19.964 0 0 0 4.06-12.083c0-11.08-8.982-20.061-20.061-20.061Zm-10.802 20.061a10.785 10.785 0 0 1 10.802-10.802 10.785 10.785 0 0 1 10.802 10.802 10.785 10.785 0 0 1-10.802 10.802 10.785 10.785 0 0 1-10.802-10.802Z"/><path d="m80.164 83.71.002-.008c.456-1.677.702-4.01.702-7.046 0-4.06-.534-6.98-1.487-8.89l-.006-.01c-.91-1.869-2.052-2.62-3.45-2.62-1.012 0-1.847.322-2.557.952l-.003.002c-.648.571-1.253 1.621-1.72 3.335-.43 1.65-.663 3.984-.663 7.051 0 4.059.52 6.982 1.45 8.896.936 1.87 2.094 2.624 3.493 2.624 1.022 0 1.841-.313 2.517-.908.677-.601 1.282-1.666 1.72-3.37l.002-.008Z"/><path fill-rule="evenodd" clip-rule="evenodd" d="M40 20c-6.6 0-11.94 5.137-11.94 11.416l-.055 100.58a8 8 0 0 0 8 8.004H99.34c1.163 0 1.653-2.375.68-3.013-6.487-4.254-10.771-11.589-10.771-19.926 0-13.151 10.66-23.811 23.811-23.811 3.359 0 6.556.696 9.454 1.95.688.299 1.485-.189 1.485-.938V48.379L98.24 20H40Zm12.196 73.46v-6.698H39.8v-4.635L48.971 59l5.199 2.385-7.622 19.373h5.648v-8.947h5.867v8.947h3.441v6.004h-3.44v6.698h-5.868Zm15.41-4.264-.003-.004c-1.837-3.136-2.696-7.4-2.696-12.67 0-5.3.872-9.56 2.747-12.643l.005-.007c1.945-3.148 4.756-4.74 8.308-4.74 3.581 0 6.387 1.61 8.278 4.804 1.84 3.109 2.698 7.377 2.698 12.675 0 5.3-.886 9.561-2.79 12.646C82.234 92.408 79.434 94 75.883 94c-3.58 0-6.387-1.61-8.277-4.804Zm35.136-2.434v6.698h5.867v-6.698h3.441v-6.004h-3.441v-8.947h-5.867v8.947h-5.648l7.621-19.373L99.517 59l-9.171 23.127v4.635h12.396Z"/></svg><svg viewBox="0 0 160 160" id="mx-empty_state_500" xmlns="http://www.w3.org/2000/svg"><path d="M111.211 89.517c-1.093.27-1.464 1.64-.667 2.436l9.004 9.004-1.369 8.22-8.22 1.37-9.005-9.005c-.801-.801-2.167-.415-2.44.686-1.422 5.737.11 12.055 4.592 16.539 4.8 4.8 11.759 6.121 17.825 4.123l20.184 20.183a7.75 7.75 0 0 0 10.959-10.959l-20.162-20.161c2.024-6.069.688-13.014-4.144-17.846-4.489-4.489-10.816-6.018-16.557-4.59Zm38.288 48.075a2.906 2.906 0 1 1-5.812.002 2.906 2.906 0 0 1 5.812-.002Z"/><path fill-rule="evenodd" clip-rule="evenodd" d="M31.88 30h87.281c2.133 0 3.879 1.741 3.879 3.87v23.22c0 2.13-1.746 3.87-3.879 3.87H31.879c-2.133 0-3.879-1.74-3.879-3.87V33.87c0-2.128 1.746-3.87 3.88-3.87Zm3.878 15.48c0 4.258 3.492 7.74 7.759 7.74s7.758-3.483 7.758-7.74-3.491-7.74-7.758-7.74c-4.267 0-7.759 3.483-7.759 7.74ZM123.04 131.07a.996.996 0 0 0-.293-.707l-2.64-2.641a1.03 1.03 0 0 0-.909-.279c-6.629 1.187-13.762-.69-18.92-5.848a21.368 21.368 0 0 1-6.27-14.556H31.88c-2.133 0-3.879 1.742-3.879 3.87v23.221c0 2.128 1.746 3.87 3.88 3.87h87.281c2.133 0 3.879-1.742 3.879-3.87v-3.06Zm-87.282-8.55c0 4.257 3.492 7.74 7.759 7.74s7.758-3.483 7.758-7.74c0-4.258-3.491-7.741-7.758-7.741-4.267 0-7.759 3.483-7.759 7.741ZM95.558 99.299H31.879c-2.133 0-3.879-1.742-3.879-3.87v-23.22c0-2.13 1.746-3.87 3.88-3.87h87.281c2.133 0 3.879 1.74 3.879 3.87V84.94c0 .7-.701 1.184-1.37.982a21.542 21.542 0 0 0-11.422-.288c-4.165 1.034-5.493 6.187-2.533 9.147l4.518 4.518h-7.865l-.585-.585c-2.477-2.477-6.343-1.93-8.225.585Zm-59.8-15.48c0 4.257 3.492 7.74 7.759 7.74s7.758-3.483 7.758-7.74c0-4.258-3.491-7.74-7.758-7.74-4.267 0-7.759 3.483-7.759 7.74Z"/></svg><svg viewBox="0 0 160 160" id="mx-empty_state_box" xmlns="http://www.w3.org/2000/svg"><path d="M119.547 36H38.6c-6.413 0-11.44 5.142-11.44 11.556l-.058 80.889C27.102 134.8 32.187 140 38.6 140h80.947c6.355 0 11.555-5.2 11.555-11.555v-80.89c0-6.413-5.2-11.555-11.555-11.555Zm0 69.333H96.436c0 9.592-7.8 17.334-17.334 17.334-9.533 0-17.333-7.742-17.333-17.334H38.6V47.556h80.947v57.777ZM118.255 9.578l4.149 17.313-6.801 1.63-4.149-17.313 6.801-1.63ZM142.853 16.614l-9.657 14.898-5.606-3.634 9.657-14.898 5.606 3.634ZM154.207 39.48l-16.694 4-1.63-6.801 16.694-4.001 1.63 6.801Z"/></svg><svg viewBox="0 0 160 160" id="mx-empty_state_module_not_found" xmlns="http://www.w3.org/2000/svg"><path d="M38.85 73.099c-.954 3.56 1.183 7.253 4.748 8.209 3.566.955 7.263-1.176 8.217-4.735.954-3.56-1.183-7.254-4.748-8.209-3.566-.955-7.264 1.175-8.217 4.735ZM79.784 90.835c0 4.493 3.682 8.17 8.183 8.17 4.5 0 8.183-3.677 8.183-8.17s-3.682-8.17-8.183-8.17c-4.5 0-8.183 3.677-8.183 8.17Z"/><path fill-rule="evenodd" clip-rule="evenodd" d="M60 32H24c-6.6 0-11.94 5.4-11.94 12L12 116c0 6.6 5.4 12 12 12h76.63a1 1 0 0 0 .864-.496l21.261-36.448c1.602-2.746 4.783-3.66 7.435-2.742.791.274 1.81-.243 1.81-1.08V56c0-6.6-5.4-12-12-12H72L60 32Zm-1.702 46.31c-.16.593-.344 1.14-.56 1.66l2.858 3.811c.274.343.244.817-.078 1.155l-5.057 5.041a.89.89 0 0 1-1.168.111L50.45 87.21a12.79 12.79 0 0 1-3.37.909L45.21 92.51a.869.869 0 0 1-1.043.51l-6.915-1.853c-.432-.115-.693-.513-.667-.968l.575-4.74c-.947-.716-1.747-1.547-2.464-2.472l-4.767.573c-.43.02-.846-.227-.956-.68l-1.858-6.895c-.102-.413.118-.874.51-1.039l4.416-1.86c.055-.564.178-1.167.327-1.724.15-.558.38-1.131.615-1.647l-2.895-3.82c-.292-.348-.24-.834.078-1.154l5.039-5.047a.89.89 0 0 1 1.168-.11l3.842 2.878c1.06-.428 2.192-.761 3.37-.908l1.871-4.392c.188-.413.612-.626 1.044-.51l6.915 1.852c.432.116.71.518.667.969l-.575 4.74c.947.716 1.747 1.547 2.464 2.471l4.767-.572c.43-.02.846.227.956.68l1.858 6.895c.102.412-.118.874-.51 1.038l-4.416 1.861a10.729 10.729 0 0 1-.327 1.724Zm46.036 12.525c0 .749-.046 1.452-.137 2.133l4.569 3.585c.432.318.546.886.273 1.385l-4.364 7.534a1.086 1.086 0 0 1-1.342.499l-5.432-2.178a15.62 15.62 0 0 1-3.683 2.133l-.818 5.764a1.06 1.06 0 0 1-1.069.93h-8.728c-.546 0-.978-.386-1.091-.93l-.819-5.764c-1.341-.545-2.546-1.271-3.682-2.133l-5.433 2.178c-.5.159-1.069 0-1.341-.499l-4.365-7.534c-.25-.454-.136-1.067.273-1.385l4.615-3.585c-.114-.68-.16-1.43-.16-2.133 0-.704.091-1.452.205-2.133l-4.615-3.586c-.454-.317-.545-.907-.272-1.384l4.341-7.534c.273-.5.841-.68 1.342-.5l5.432 2.18c1.114-.84 2.342-1.59 3.683-2.134l.818-5.764c.091-.544.523-.93 1.069-.93h8.728c.546 0 1 .386 1.092.93l.818 5.764c1.341.545 2.546 1.27 3.682 2.133l5.433-2.178c.5-.16 1.069 0 1.341.499l4.365 7.534c.25.454.136 1.067-.273 1.384l-4.614 3.586c.113.68.159 1.407.159 2.133Z"/><path d="M100.755 136.992c-.778 1.334.183 3.008 1.727 3.008h51.369c1.544 0 2.506-1.674 1.728-3.008l-25.685-44.03c-.772-1.324-2.683-1.324-3.455 0l-25.684 44.03Zm30.063-4.105h-5.303v-5.264h5.303v5.264Zm0-10.527h-5.303v-15.214h5.303v15.214Z"/></svg><svg viewBox="0 0 24 24" id="mx-ethernet_port" xmlns="http://www.w3.org/2000/svg"><path d="M7 15h2v3h2v-3h2v3h2v-3h2v3h2V9h-4V6H9v3H5v9h2v-3M4.38 3h15.25A2.37 2.37 0 0 1 22 5.38v14.25A2.37 2.37 0 0 1 19.63 22H4.38A2.37 2.37 0 0 1 2 19.63V5.38C2 4.06 3.06 3 4.38 3Z"/></svg><svg viewBox="0 0 18 21" id="mx-export" xmlns="http://www.w3.org/2000/svg"><path d="M8 3.825 6.4 5.4 5 4l4-4 4 4-1.4 1.4L10 3.825V16H8V3.825Z"/><path d="M2 21c-.55 0-1.02-.196-1.412-.588A1.925 1.925 0 0 1 0 19V9c0-.55.196-1.02.588-1.412A1.925 1.925 0 0 1 2 7h4v2H2v10h14V9h-4V7h4c.55 0 1.02.196 1.412.588C17.804 7.98 18 8.45 18 9v10c0 .55-.196 1.02-.588 1.412A1.925 1.925 0 0 1 16 21H2Z"/></svg><svg viewBox="0 0 24 24" id="mx-file-eye-outline" xmlns="http://www.w3.org/2000/svg"><path d="M17 18c.56 0 1 .44 1 1s-.44 1-1 1-1-.44-1-1 .44-1 1-1m0-3c-2.73 0-5.06 1.66-6 4 .94 2.34 3.27 4 6 4s5.06-1.66 6-4c-.94-2.34-3.27-4-6-4m0 6.5a2.5 2.5 0 0 1-2.5-2.5 2.5 2.5 0 0 1 2.5-2.5 2.5 2.5 0 0 1 2.5 2.5 2.5 2.5 0 0 1-2.5 2.5M9.27 20H6V4h7v5h5v4.07c.7.08 1.36.25 2 .49V8l-6-6H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h4.5a8.15 8.15 0 0 1-1.23-2Z"/></svg><svg viewBox="0 0 24 24" id="mx-file_cog_outline" xmlns="http://www.w3.org/2000/svg"><path d="M6 2a2 2 0 0 0-2 2v16c0 1.11.89 2 2 2h6v-2H6V4h7v5h5v3h2V8l-6-6m4 12a.26.26 0 0 0-.26.21l-.19 1.32c-.3.13-.59.29-.85.47l-1.24-.5c-.11 0-.24 0-.31.13l-1 1.73c-.06.11-.04.24.06.32l1.06.82a4.193 4.193 0 0 0 0 1l-1.06.82a.26.26 0 0 0-.06.32l1 1.73c.06.13.19.13.31.13l1.24-.5c.26.18.54.35.85.47l.19 1.32c.02.12.12.21.26.21h2c.11 0 .22-.09.24-.21l.19-1.32c.3-.13.57-.29.84-.47l1.23.5c.13 0 .26 0 .33-.13l1-1.73a.26.26 0 0 0-.06-.32l-1.07-.82c.02-.17.04-.33.04-.5 0-.17-.01-.33-.04-.5l1.06-.82a.26.26 0 0 0 .06-.32l-1-1.73c-.06-.13-.19-.13-.32-.13l-1.23.5c-.27-.18-.54-.35-.85-.47l-.19-1.32A.236.236 0 0 0 20 14m-1 3.5c.83 0 1.5.67 1.5 1.5s-.67 1.5-1.5 1.5c-.84 0-1.5-.67-1.5-1.5s.67-1.5 1.5-1.5Z"/></svg><svg viewBox="0 0 24 24" id="mx-folder-cog" xmlns="http://www.w3.org/2000/svg"><g data-name="圖層 2"><g data-name="圖層 1"><path d="M4 4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8.08a6.74 6.74 0 0 1-.08-1 7 7 0 0 1 10-6.31V8a2 2 0 0 0-2-2h-8l-2-2H4m14 10a.26.26 0 0 0-.26.21l-.19 1.32a5 5 0 0 0-.85.47l-1.24-.5c-.11 0-.24 0-.31.13l-1 1.73a.25.25 0 0 0 .06.32l1.06.82a4.18 4.18 0 0 0 0 1l-1.06.82a.26.26 0 0 0-.06.32l1 1.73c.06.13.19.13.31.13l1.24-.5a4.11 4.11 0 0 0 .85.47l.19 1.32A.25.25 0 0 0 18 24h2a.25.25 0 0 0 .24-.21l.19-1.32a5.31 5.31 0 0 0 .84-.47l1.23.5c.13 0 .26 0 .33-.13l1-1.73a.26.26 0 0 0-.06-.32l-1.07-.82a4.21 4.21 0 0 0 0-.5 2.81 2.81 0 0 0 0-.5l1.06-.82a.26.26 0 0 0 .06-.32l-1-1.73c-.06-.13-.19-.13-.32-.13l-1.23.5a4.39 4.39 0 0 0-.85-.47l-.19-1.32A.24.24 0 0 0 20 14h-2m1 3.5a1.5 1.5 0 1 1-1.5 1.5 1.5 1.5 0 0 1 1.5-1.5Z"/><path d="M0 0h24v24H0Z" style="fill:none"/></g></g></svg><svg viewBox="0 0 24 24" id="mx-form-textbox" xmlns="http://www.w3.org/2000/svg"><path d="M17 7h5v10h-5v2a1 1 0 0 0 1 1h2v2h-2.5c-.55 0-1.5-.45-1.5-1 0 .55-.95 1-1.5 1H12v-2h2a1 1 0 0 0 1-1V5a1 1 0 0 0-1-1h-2V2h2.5c.55 0 1.5.45 1.5 1 0-.55.95-1 1.5-1H20v2h-2a1 1 0 0 0-1 1v2ZM2 7h11v2H4v6h9v2H2V7Zm18 8V9h-3v6h3Z"/></svg><svg viewBox="0 0 24 24" id="mx-forward" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="M12 0C5.4 0 0 5.4 0 12s5.4 12 12 12 12-5.4 12-12S18.6 0 12 0Zm0 23C5.936 23 1 18.064 1 12S5.936 1 12 1s11 4.936 11 11-4.936 11-11 11Z"/><path d="M12.565 9.783V7l5.565 5.565-5.565 5.565v-2.782H7V9.783z"/></svg><svg viewBox="0 0 24 24" id="mx-grid" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M4.25 7.913a2.884 2.884 0 0 1-1.375-.788A2.893 2.893 0 0 1 2 5c0-.833.292-1.542.875-2.125A2.893 2.893 0 0 1 5 2c.833 0 1.542.292 2.125.875.4.4.662.858.788 1.375h1.174c.126-.517.388-.975.788-1.375A2.893 2.893 0 0 1 12 2c.833 0 1.542.292 2.125.875.4.4.662.858.788 1.375h1.174c.126-.517.388-.975.788-1.375A2.893 2.893 0 0 1 19 2c.833 0 1.542.292 2.125.875S22 4.167 22 5s-.292 1.542-.875 2.125c-.4.4-.858.662-1.375.788v1.174c.517.126.975.388 1.375.788.583.583.875 1.292.875 2.125s-.292 1.542-.875 2.125c-.4.4-.858.662-1.375.788v1.174c.517.126.975.388 1.375.788.583.583.875 1.292.875 2.125s-.292 1.542-.875 2.125A2.893 2.893 0 0 1 19 22a2.893 2.893 0 0 1-2.125-.875c-.4-.4-.662-.858-.788-1.375h-1.174a2.884 2.884 0 0 1-.788 1.375A2.893 2.893 0 0 1 12 22a2.893 2.893 0 0 1-2.125-.875c-.4-.4-.662-.858-.788-1.375H7.913a2.884 2.884 0 0 1-.788 1.375A2.893 2.893 0 0 1 5 22a2.893 2.893 0 0 1-2.125-.875A2.893 2.893 0 0 1 2 19c0-.833.292-1.542.875-2.125.4-.4.858-.662 1.375-.788v-1.174a2.884 2.884 0 0 1-1.375-.788A2.893 2.893 0 0 1 2 12c0-.833.292-1.542.875-2.125.4-.4.858-.662 1.375-.788V7.913Zm12.625-.788c.4.4.858.662 1.375.788v1.174a2.885 2.885 0 0 0-1.375.788c-.4.4-.662.858-.788 1.375h-1.174a2.885 2.885 0 0 0-.788-1.375c-.4-.4-.858-.662-1.375-.788V7.913a2.885 2.885 0 0 0 1.375-.788c.4-.4.662-.858.788-1.375h1.174c.126.517.388.975.788 1.375Zm-5.625.788a2.885 2.885 0 0 1-1.375-.788c-.4-.4-.662-.858-.788-1.375H7.913a2.884 2.884 0 0 1-.788 1.375c-.4.4-.858.662-1.375.788v1.174c.517.126.975.388 1.375.788s.662.858.788 1.375h1.174c.126-.517.388-.975.788-1.375s.858-.662 1.375-.788V7.913Zm0 7a2.884 2.884 0 0 1-1.375-.788c-.4-.4-.662-.858-.788-1.375H7.913a2.884 2.884 0 0 1-.788 1.375c-.4.4-.858.662-1.375.788v1.174c.517.126.975.388 1.375.788s.662.858.788 1.375h1.174c.126-.517.388-.975.788-1.375s.858-.662 1.375-.788v-1.174Zm1.5 1.174c.517.126.975.388 1.375.788s.662.858.788 1.375h1.174c.126-.517.388-.975.788-1.375s.858-.662 1.375-.788v-1.174a2.884 2.884 0 0 1-1.375-.788c-.4-.4-.662-.858-.788-1.375h-1.174a2.884 2.884 0 0 1-.788 1.375c-.4.4-.858.662-1.375.788v1.174Z"/></svg><svg viewBox="0 0 24 24" id="mx-horizontal-line" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M2.875 14.125A2.893 2.893 0 0 0 5 15c.833 0 1.542-.292 2.125-.875.4-.4.662-.858.788-1.375h1.174c.126.517.388.975.788 1.375A2.893 2.893 0 0 0 12 15c.833 0 1.542-.292 2.125-.875.4-.4.662-.858.788-1.375h1.174c.126.517.388.975.788 1.375A2.893 2.893 0 0 0 19 15c.833 0 1.542-.292 2.125-.875A2.893 2.893 0 0 0 22 12c0-.833-.292-1.542-.875-2.125A2.893 2.893 0 0 0 19 9c-.833 0-1.542.292-2.125.875-.4.4-.662.858-.788 1.375h-1.174a2.885 2.885 0 0 0-.788-1.375A2.893 2.893 0 0 0 12 9c-.833 0-1.542.292-2.125.875-.4.4-.662.858-.788 1.375H7.913a2.884 2.884 0 0 0-.788-1.375A2.893 2.893 0 0 0 5 9c-.833 0-1.542.292-2.125.875A2.893 2.893 0 0 0 2 12c0 .833.292 1.542.875 2.125Z"/></svg><svg viewBox="0 0 24 24" id="mx-horizontal_align_center" xmlns="http://www.w3.org/2000/svg"><path d="M22 13h-4.2l1.6 1.6L18 16l-4-4 4-4 1.4 1.4-1.6 1.6H22v2Zm-9 7h-2V4h2v16Zm-3-8-4 4-1.4-1.4L6.2 13H2v-2h4.2L4.6 9.4 6 8l4 4Z"/></svg><svg viewBox="0 0 20 20" id="mx-https" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M13.75 10c0-.567-.05-1.117-.117-1.667h2.817c.133.534.217 1.092.217 1.667 0 .308-.025.608-.067.9a4.772 4.772 0 0 1 1.6.533c.083-.466.133-.941.133-1.433 0-4.583-3.75-8.333-8.333-8.333-4.608 0-8.333 3.75-8.333 8.333s3.75 8.333 8.333 8.333c.492 0 .967-.05 1.433-.133-.383-.7-.6-1.508-.6-2.367 0-.241.025-.475.059-.708A12.367 12.367 0 0 1 10 16.633c-.692-1-1.25-2.108-1.592-3.3h3.1a4.959 4.959 0 0 1 2.159-2c.05-.441.083-.883.083-1.333ZM10 3.358c.692 1 1.25 2.117 1.592 3.309H8.408A11.35 11.35 0 0 1 10 3.358Zm-6.45 8.309A6.868 6.868 0 0 1 3.333 10c0-.575.084-1.133.217-1.667h2.817c-.067.55-.117 1.1-.117 1.667s.05 1.117.117 1.667H3.55Zm.683 1.666h2.434c.291 1.042.666 2.042 1.166 2.967a6.673 6.673 0 0 1-3.6-2.967Zm2.434-6.666H4.233a6.603 6.603 0 0 1 3.6-2.967c-.5.925-.875 1.925-1.166 2.967Zm5.283 5h-3.9c-.083-.55-.133-1.1-.133-1.667s.05-1.125.133-1.667h3.9c.075.542.133 1.1.133 1.667s-.058 1.117-.133 1.667Zm.208-7.967a6.656 6.656 0 0 1 3.609 2.967h-2.459a13.042 13.042 0 0 0-1.15-2.967Z"/><path fill-rule="evenodd" clip-rule="evenodd" d="M17.396 14.722h.312c.344 0 .625.286.625.635v3.175c0 .349-.28.635-.625.635h-3.75a.632.632 0 0 1-.625-.635v-3.175c0-.349.282-.635.625-.635h.313v-.635c0-.876.7-1.587 1.562-1.587.863 0 1.563.711 1.563 1.587v.635Zm-2.188 2.223c0 .349.282.634.625.634a.632.632 0 0 0 .625-.634.632.632 0 0 0-.625-.636.632.632 0 0 0-.625.636Zm-.343-2.858v.635h1.937v-.635a.977.977 0 0 0-.969-.984.977.977 0 0 0-.968.984Z"/></svg><svg viewBox="0 0 24 24" id="mx-ip_network_outline" xmlns="http://www.w3.org/2000/svg"><path d="M15 19a1 1 0 0 0-1-1h-1v-2h4a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2H7a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h4v2h-1a1 1 0 0 0-1 1H2v2h7a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1h7v-2h-7m-8-5V4h10v10H7m3-9H8v8h2V5m4 0h-3v8h2v-2h1a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2m0 4h-1V7h1v2Z" fill-rule="nonzero"/></svg><svg viewBox="0 0 24 24" id="mx-lan" xmlns="http://www.w3.org/2000/svg"><g data-name="圖層 2"><g data-name="圖層 1"><path d="M0 0h24v24H0Z" style="fill:none"/><path d="M10 2a2 2 0 0 0-2 2v3a2 2 0 0 0 2 2h1v2H2v2h4v2H5a2 2 0 0 0-2 2v3a2 2 0 0 0 2 2h4a2 2 0 0 0 2-2v-3a2 2 0 0 0-2-2H8v-2h8v2h-1a2 2 0 0 0-2 2v3a2 2 0 0 0 2 2h4a2 2 0 0 0 2-2v-3a2 2 0 0 0-2-2h-1v-2h4v-2h-9V9h1a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2Zm0 2h4v3h-4ZM5 17h4v3H5Zm10 0h4v3h-4Z"/></g></g></svg><svg viewBox="0 0 20 20" id="mx-moxa_device_extension" xmlns="http://www.w3.org/2000/svg"><path d="M16.389 12.917V15h2.083v1.389H16.39v2.083H15V16.39h-2.083V15H15v-2.083h1.389Z"/><path fill-rule="evenodd" clip-rule="evenodd" d="M16.667 2.583 16 3.25c-1-.917-2.25-1.417-3.5-1.417S10 2.333 9 3.25l-.667-.667A5.874 5.874 0 0 1 12.5.833c1.5 0 3 .584 4.167 1.75ZM12.5 2.75c1 0 2 .417 2.75 1.167l-.667.666C14 4 13.25 3.75 12.5 3.75c-.75 0-1.5.25-2.083.833l-.667-.666c.75-.75 1.75-1.167 2.75-1.167Zm.833 6.417H15a1.667 1.667 0 0 1 1.667 1.666v.917a4.167 4.167 0 0 0-5 4.083H3.333a1.667 1.667 0 0 1-1.666-1.666v-3.334a1.667 1.667 0 0 1 1.666-1.666h8.334V5.833h1.666v3.334Zm-9.166 4.166h1.666v-1.666H4.167v1.666Zm2.916 0H8.75v-1.666H7.083v1.666Zm2.917 0h1.667v-1.666H10v1.666Z"/></svg><svg viewBox="0 0 14 14" id="mx-moxa_m" xmlns="http://www.w3.org/2000/svg"><g data-name="圖層 2"><g data-name="圖層 1"><path d="M2.63 10.55V5.72l3.44 4.83h1.84l3.47-4.86v4.86H14V3.44h-3.18l-3.83 5.4-3.84-5.4H0v7.11h2.63z"/><path style="fill:none" d="M0 0h14v14H0V0z"/></g></g></svg><svg viewBox="0 0 24 24" id="mx-network_service" xmlns="http://www.w3.org/2000/svg"><path d="M13 19h1a1 1 0 0 1 1 1h7v2h-7a1 1 0 0 1-1 1h-4a1 1 0 0 1-1-1H2v-2h7a1 1 0 0 1 1-1h1v-2H4a1 1 0 0 1-1-1v-4a1 1 0 0 1 1-1h16a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1h-7v2M4 3h16a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1m5 4h1V5H9v2m0 8h1v-2H9v2M5 5v2h2V5H5m0 8v2h2v-2H5Z"/></svg><svg viewBox="0 0 24 24" id="mx-package_update" xmlns="http://www.w3.org/2000/svg"><g data-name="圖層 2"><g data-name="圖層 1"><path style="fill:none" d="M0 0h24v24H0z"/><path d="M15.06 12.4a2.61 2.61 0 0 0 0-.4 1.75 1.75 0 0 0 0-.4l.87-.68a.22.22 0 0 0 .06-.26l-.83-1.42a.2.2 0 0 0-.25-.1l-1 .41a3.25 3.25 0 0 0-.7-.4L13 8.06a.21.21 0 0 0-.21-.17h-1.61a.19.19 0 0 0-.2.17l-.16 1.09a3.36 3.36 0 0 0-.69.4l-1-.41a.2.2 0 0 0-.25.1L8 10.66a.2.2 0 0 0 .05.26l.95.68a2.69 2.69 0 0 0 0 .4 1.8 1.8 0 0 0 0 .4l-.87.68a.22.22 0 0 0-.06.26l.83 1.42a.2.2 0 0 0 .25.1l1-.41a3.25 3.25 0 0 0 .7.4l.15 1.09a.21.21 0 0 0 .21.17h1.64a.19.19 0 0 0 .2-.17l.16-1.09a3 3 0 0 0 .69-.4l1 .41a.2.2 0 0 0 .25-.1l.85-1.42a.2.2 0 0 0-.05-.26ZM12 13.54A1.54 1.54 0 1 1 13.54 12 1.54 1.54 0 0 1 12 13.54Z"/><path d="M4 12a8 8 0 0 1 2.62-5.88L9 8.5v-6H3l2.2 2.2A10 10 0 0 0 11 22v-2a8 8 0 0 1-7-8Zm18 0a10 10 0 0 0-9-9.95v2a8 8 0 0 1 4.38 13.81L15 15.5v6h6l-2.2-2.2A9.93 9.93 0 0 0 22 12Z"/></g></g></svg><svg fill="none" viewBox="0 0 24 24" id="mx-redundancy" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M18 1h4a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1h-4a1 1 0 0 1-1-1V5H5v12h1a1 1 0 0 1 1 1v1h4v2H7v1a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1v-4a1 1 0 0 1 1-1h1V4a1 1 0 0 1 1-1h13V2a1 1 0 0 1 1-1Zm1 7v3h2V8h-2Zm-6 11h3v2h-3v-2Zm5 0h3v2h-3v-2Zm1-3v-3h2v3h-2Z" fill="currentColor"/></svg><svg viewBox="0 0 24 24" style="enable-background:new 0 0 24 24" xml:space="preserve" id="mx-remote_vpn" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0V0z" style="fill:none"/><path d="M21.3 2.8H2.7c-.3 0-.6.3-.6.6v9.1c0 3.2 1.7 6.2 4.6 7.7l5.1 2.8c.1 0 .2.1.3.1s.2 0 .3-.1l5.1-2.8c2.8-1.6 4.6-4.5 4.6-7.7V3.4c-.2-.3-.4-.6-.8-.6zM9.4 9.6l-1.5 3.7c-.1.2-.3.4-.6.4s-.5-.1-.6-.4L5.2 9.6c-.1-.3.1-.6.4-.7.3-.1.7 0 .8.3l1 2.4 1-2.4c.1-.3.5-.4.8-.3.2.1.3.4.2.7zm3.2 2.2h-1.5v1.3c0 .3-.3.6-.6.6s-.6-.3-.6-.6V9.4c0-.3.3-.6.6-.6h2.1c.8 0 1.5.7 1.5 1.5 0 .9-.7 1.5-1.5 1.5zm6.2 1.3c0 .3-.2.5-.4.6h-.2c-.2 0-.3-.1-.5-.2l-2-2.4v2c0 .3-.3.6-.6.6s-.6-.3-.6-.6V9.4c0-.3.2-.5.4-.6.2-.1.5 0 .7.2l2 2.4v-2c0-.3.3-.6.6-.6s.6.3.6.6v3.7z"/><path d="M12.6 10h-1.5v.7h1.5c.2 0 .3-.1.3-.3 0-.3-.1-.4-.3-.4z"/></svg><svg viewBox="0 0 24 24" id="mx-restart" xmlns="http://www.w3.org/2000/svg"><g data-name="圖層 2"><g data-name="圖層 1"><path d="M0 0h24v24H0Z" style="fill:none"/><path d="M13 3a9 9 0 0 0-9 9H1l3.89 3.89L5 16l4-4H6a7 7 0 1 1 2.06 4.94l-1.42 1.42A9 9 0 1 0 13 3Z"/><path d="M11.5 9v6l5-3-5-3z"/></g></g></svg><svg viewBox="0 0 24 24" id="mx-ring" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M2.375 18.625A2.893 2.893 0 0 0 4.5 19.5c.669 0 1.257-.188 1.765-.564a8.986 8.986 0 0 0 2.772 1.565c.096.62.375 1.161.838 1.624A2.893 2.893 0 0 0 12 23c.833 0 1.542-.292 2.125-.875a2.869 2.869 0 0 0 .838-1.624 8.986 8.986 0 0 0 2.772-1.565c.508.376 1.096.564 1.765.564.833 0 1.542-.292 2.125-.875A2.893 2.893 0 0 0 22.5 16.5c0-.833-.292-1.542-.875-2.125a3.008 3.008 0 0 0-.804-.582 9.045 9.045 0 0 0 0-3.586c.29-.142.558-.336.804-.582A2.893 2.893 0 0 0 22.5 7.5c0-.833-.292-1.542-.875-2.125A2.893 2.893 0 0 0 19.5 4.5c-.669 0-1.257.188-1.765.564a8.986 8.986 0 0 0-2.772-1.565 2.869 2.869 0 0 0-.838-1.624A2.893 2.893 0 0 0 12 1c-.833 0-1.542.292-2.125.875a2.869 2.869 0 0 0-.838 1.624 8.995 8.995 0 0 0-3.103 1.852A2.935 2.935 0 0 0 4.5 5c-.833 0-1.542.292-2.125.875A2.893 2.893 0 0 0 1.5 8c0 .833.292 1.542.875 2.125.223.223.464.403.723.54a9.074 9.074 0 0 0 .08 3.128c-.29.142-.557.336-.803.582A2.893 2.893 0 0 0 1.5 16.5c0 .833.292 1.542.875 2.125ZM9.192 5.09c-.787.32-1.507.77-2.133 1.324.294.466.441.995.441 1.586 0 .833-.292 1.542-.875 2.125a2.882 2.882 0 0 1-2.015.873 7.524 7.524 0 0 0 .085 2.507c.75.043 1.393.333 1.93.87.583.583.875 1.292.875 2.125 0 .451-.085.866-.256 1.244a7.453 7.453 0 0 0 1.948 1.166c.146-.38.373-.725.683-1.035A2.893 2.893 0 0 1 12 17c.833 0 1.542.292 2.125.875.31.31.537.655.683 1.035a7.454 7.454 0 0 0 1.948-1.166A2.98 2.98 0 0 1 16.5 16.5c0-.833.292-1.542.875-2.125a2.876 2.876 0 0 1 1.93-.87 7.488 7.488 0 0 0 0-3.01 2.876 2.876 0 0 1-1.93-.87A2.893 2.893 0 0 1 16.5 7.5c0-.451.085-.866.256-1.244a7.455 7.455 0 0 0-1.948-1.167 2.94 2.94 0 0 1-.683 1.036A2.893 2.893 0 0 1 12 7a2.893 2.893 0 0 1-2.125-.875 2.941 2.941 0 0 1-.683-1.035Z"/></svg><svg viewBox="0 0 24 24" id="mx-router_empty" xmlns="http://www.w3.org/2000/svg"><g data-name="圖層 2"><path d="M0 0h24v24H0z" fill="none"/><path d="m12.7 6.7.8.8a3.63 3.63 0 0 1 5 0l.8-.8a4.59 4.59 0 0 0-6.6 0zM19 13h-2V9h-2v3.46l6 6V15a2 2 0 0 0-2-2z"/><path d="M16 4.2a6.25 6.25 0 0 1 4.2 1.7l.8-.8a7 7 0 0 0-10 0l.8.8A6.25 6.25 0 0 1 16 4.2zm-14.11.24L10.46 13H5a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h13.46l1.11 1.11 1.27-1.27L3.17 3.16zM8 18H6v-2h2zm5-2h.46L15 17.54V18h-2zm-1.5 2h-2v-2h2z"/></g></svg><svg viewBox="0 0 24 24" id="mx-safety_check" xmlns="http://www.w3.org/2000/svg"><path d="M12 1 3 4.3v6.699C3 16.554 6.836 21.735 12 23c5.164-1.265 9-6.446 9-12.001V4.3L12 1Zm0 16.5c-3.105 0-5.625-2.464-5.625-5.5S8.895 6.5 12 6.5s5.625 2.464 5.625 5.5-2.52 5.5-5.625 5.5Zm1.856-2.915-2.418-2.365V8.7h1.124v3.069l2.082 2.035-.788.781Z"/></svg><svg viewBox="0 0 24 24" id="mx-scan_device" xmlns="http://www.w3.org/2000/svg"><path d="M17 2v2h3v3h2V2h-5ZM18.29 7.14l.62-.62a5.4 5.4 0 0 0-7.69 0l.61.62a4.64 4.64 0 0 1 6.46 0Z"/><path d="M17.6 7.75a3.55 3.55 0 0 0-5.08 0l.62.62a2.79 2.79 0 0 1 3.85 0l.61-.62Z"/><path fill-rule="evenodd" clip-rule="evenodd" d="M17.37 12.6h-1.54V9.52h-1.54v3.08H6.6a1.54 1.54 0 0 0-1.54 1.54v3.08a1.55 1.55 0 0 0 1.54 1.54h10.77a1.55 1.55 0 0 0 1.54-1.54v-3.08a1.54 1.54 0 0 0-1.54-1.54Zm-8.46 3.85H7.37v-1.54h1.54v1.54Zm2.69 0h-1.54v-1.54h1.54v1.54Zm2.69 0h-1.54v-1.54h1.54v1.54Z"/><path d="M17 20h3v-3h2v5h-5v-2ZM4 17H2v5h5v-2H4v-3ZM4 7H2V2h5v2H4v3Z"/></svg><svg fill="none" viewBox="0 0 24 24" id="mx-switching" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M19.941 19.503V4.497v15.006ZM3 4.5C3 3.672 3.593 3 4.324 3h15.353C20.407 3 21 3.672 21 4.5v15c0 .828-.593 1.5-1.323 1.5H4.324C3.593 21 3 20.328 3 19.5v-15Zm5.576 4.2H11.4V6.9H8.576V4.8L5.4 7.8l3.176 3V8.7Zm6.848-.6H12.6v1.8h2.824V12L18.6 9l-3.177-3v2.1Zm-6.848 7.8H11.4v-1.8H8.576V12L5.4 15l3.176 3v-2.1Zm4.024-.6h2.824v-2.1l3.176 3-3.177 3v-2.1H12.6v-1.8Z" fill="currentColor"/></svg><svg viewBox="0 0 24 24" id="mx-system-dashboard" xmlns="http://www.w3.org/2000/svg"><g data-name="圖層 2"><g data-name="圖層 1"><path d="M0 0h24v24H0Z" style="fill:none"/><path d="m2 12 10-9 10 9h-3v8H5v-8Zm13.27 4.77a.75.75 0 0 0 .23-.55v-1.55a.79.79 0 0 0-.78-.78h-.78v-1.56h-.77v1.56H9.28a.79.79 0 0 0-.78.78v1.55a.79.79 0 0 0 .78.78h5.44a.75.75 0 0 0 .55-.23ZM12.86 11a2 2 0 0 0-.59.41l.26.31a1.41 1.41 0 0 1 .46-.3 1.65 1.65 0 0 1 .54-.09 1.26 1.26 0 0 1 .54.09 1.41 1.41 0 0 1 .46.3l.31-.31a2 2 0 0 0-.59-.41 1.8 1.8 0 0 0-1.39 0Zm.7-.56a2.38 2.38 0 0 1 1.63.66l.36-.31a2.62 2.62 0 0 0-.89-.61 2.7 2.7 0 0 0-1.05-.18 2.66 2.66 0 0 0-1.08.2 2.77 2.77 0 0 0-.92.62l.31.31a2.38 2.38 0 0 1 1.64-.66Zm-3.89 4.62h.78v.78h-.78Zm2.72 0h.78v.78h-.78Zm-.58 0H11v.78h.78Z" style="fill-rule:evenodd"/></g></g></svg><svg viewBox="0 0 20 20" id="mx-tag-search" xmlns="http://www.w3.org/2000/svg"><path d="m17.842 9.65-7.5-7.5c-.3-.3-.717-.483-1.175-.483H3.333a1.66 1.66 0 0 0-1.666 1.666v5.834c0 .458.183.875.491 1.175l7.492 7.5c.308.3.725.491 1.183.491.459 0 .875-.191 1.175-.491l.35-.342c-2.691-.083-4.858-2.283-4.858-5 0-2.758 2.242-5 5-5 2.717 0 4.917 2.167 5 4.858l.342-.35c.308-.3.491-.716.491-1.175 0-.466-.191-.883-.491-1.183ZM4.583 5.833c-.691 0-1.25-.558-1.25-1.25 0-.691.559-1.25 1.25-1.25.692 0 1.25.559 1.25 1.25 0 .692-.558 1.25-1.25 1.25Zm8.009 3.009a3.734 3.734 0 0 1 3.75 3.75c0 .741-.209 1.425-.575 1.991l2.566 2.592-1.158 1.158-2.592-2.558a3.755 3.755 0 0 1-1.991.567 3.734 3.734 0 0 1-3.75-3.75 3.734 3.734 0 0 1 3.75-3.75Zm0 1.666a2.084 2.084 0 1 0 2.083 2.084 2.074 2.074 0 0 0-2.083-2.084Z"/></svg><svg viewBox="0 0 24 24" id="mx-ungroup" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10c.488 0 .968-.035 1.438-.103A5.976 5.976 0 0 1 12 18c0-1.75.749-3.324 1.943-4.42.356-.515.9-.89 1.533-1.025A5.978 5.978 0 0 1 18 12c1.488 0 2.849.541 3.897 1.438.068-.47.103-.95.103-1.438 0-5.52-4.48-10-10-10ZM8 17.5a2.5 2.5 0 0 1 0-5 2.5 2.5 0 0 1 0 5ZM9.5 8a2.5 2.5 0 0 1 5 0 2.5 2.5 0 0 1-5 0Z"/><path d="m20.12 14.47 1.42 1.41L19.41 18l2.13 2.12-1.42 1.42L18 19.41l-2.12 2.13-1.41-1.42L16.59 18l-2.12-2.12 1.41-1.41L18 16.59l2.12-2.12Z"/></svg><svg viewBox="0 0 14 14" id="mx-verified_error" xmlns="http://www.w3.org/2000/svg"><path d="m7 .583 5.25 2.334v3.5c0 3.237-2.24 6.265-5.25 7-3.01-.735-5.25-3.763-5.25-7v-3.5L7 .583ZM9.01 4 6.918 6.094 4.822 4 4 4.822l2.094 2.095L4 9.01l.822.822L6.918 7.74 9.01 9.833l.822-.822L7.74 6.917l2.094-2.095L9.011 4Z"/></svg><svg viewBox="0 0 14 14" id="mx-verified_unknow" xmlns="http://www.w3.org/2000/svg"><path d="M7 .583 1.75 2.917v3.5c0 3.237 2.24 6.265 5.25 7 3.01-.735 5.25-3.763 5.25-7v-3.5L7 .583Zm.583 10.5H6.417V9.917h1.166v1.166Zm1.208-4.52-.525.536c-.42.426-.683.776-.683 1.651H6.417v-.292c0-.641.262-1.225.682-1.65l.723-.736a1.14 1.14 0 0 0 .345-.822A1.17 1.17 0 0 0 7 4.083 1.17 1.17 0 0 0 5.833 5.25H4.667a2.333 2.333 0 1 1 4.666 0c0 .513-.21.98-.542 1.313Z"/></svg><svg viewBox="0 0 24 24" id="mx-vertical-line" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M9.875 2.875A2.893 2.893 0 0 0 9 5c0 .833.292 1.542.875 2.125.4.4.858.662 1.375.788v1.174a2.885 2.885 0 0 0-1.375.788A2.893 2.893 0 0 0 9 12c0 .833.292 1.542.875 2.125.4.4.858.662 1.375.788v1.174a2.884 2.884 0 0 0-1.375.788A2.893 2.893 0 0 0 9 19c0 .833.292 1.542.875 2.125A2.893 2.893 0 0 0 12 22c.833 0 1.542-.292 2.125-.875A2.893 2.893 0 0 0 15 19c0-.833-.292-1.542-.875-2.125-.4-.4-.858-.662-1.375-.788v-1.174a2.884 2.884 0 0 0 1.375-.788A2.893 2.893 0 0 0 15 12c0-.833-.292-1.542-.875-2.125-.4-.4-.858-.662-1.375-.788V7.913a2.885 2.885 0 0 0 1.375-.788A2.893 2.893 0 0 0 15 5c0-.833-.292-1.542-.875-2.125A2.893 2.893 0 0 0 12 2c-.833 0-1.542.292-2.125.875Z"/></svg><svg fill="none" viewBox="0 0 24 24" id="mx-vertical_align_center" xmlns="http://www.w3.org/2000/svg"><path d="M11 22v-4.2l-1.6 1.6L8 18l4-4 4 4-1.4 1.4-1.6-1.6V22h-2Zm-7-9v-2h16v2H4Zm8-3L8 6l1.4-1.4L11 6.2V2h2v4.2l1.6-1.6L16 6l-4 4Z" fill="#000"/></svg><svg viewBox="0 0 24 24" id="mx-wan" xmlns="http://www.w3.org/2000/svg"><path d="M12 2a8 8 0 0 0-8 8c0 4.03 3 7.42 7 7.93V19h-1a1 1 0 0 0-1 1H2v2h7a1 1 0 0 0 1 1h4a1 1 0 0 0 1-1h7v-2h-7a1 1 0 0 0-1-1h-1v-1.07c4-.5 7-3.9 7-7.93a8 8 0 0 0-8-8m0 2s.74 1.28 1.26 3h-2.52C11.26 5.28 12 4 12 4m-2.23.43c-.27.5-.68 1.41-1.03 2.57H6.81C7.5 5.84 8.5 4.93 9.77 4.43m4.46.01c1.27.5 2.27 1.4 2.96 2.56h-1.93c-.35-1.16-.76-2.07-1.03-2.56M6.09 9h2.23c-.04.33-.07.66-.07 1 0 .34.03.67.07 1H6.09a5.551 5.551 0 0 1 0-2m4.23 0h3.36c.04.33.07.66.07 1 0 .34-.03.67-.07 1h-3.36c-.04-.33-.07-.66-.07-1 0-.34.03-.67.07-1m5.36 0h2.23a5.551 5.551 0 0 1 0 2h-2.23c.04-.33.07-.66.07-1 0-.34-.03-.67-.07-1m-8.87 4h1.93c.35 1.16.76 2.07 1.03 2.56-1.27-.5-2.27-1.4-2.96-2.56m3.93 0h2.52c-.52 1.72-1.26 3-1.26 3s-.74-1.28-1.26-3m4.52 0h1.93c-.69 1.16-1.69 2.07-2.96 2.57.27-.5.68-1.41 1.03-2.57Z"/></svg><svg viewBox="0 0 24 24" id="my_location" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M12 8c-2.21 0-4 1.79-4 4s1.79 4 4 4 4-1.79 4-4-1.79-4-4-4zm8.94 3A8.994 8.994 0 0 0 13 3.06V1h-2v2.06A8.994 8.994 0 0 0 3.06 11H1v2h2.06A8.994 8.994 0 0 0 11 20.94V23h2v-2.06A8.994 8.994 0 0 0 20.94 13H23v-2h-2.06zM12 19c-3.87 0-7-3.13-7-7s3.13-7 7-7 7 3.13 7 7-3.13 7-7 7z"/></svg><svg viewBox="0 0 24 24" id="navigate_before" xmlns="http://www.w3.org/2000/svg"><path d="M15.41 7.41 14 6l-6 6 6 6 1.41-1.41L10.83 12z"/><path d="M0 0h24v24H0z" fill="none"/></svg><svg viewBox="0 0 24 24" id="navigate_next" xmlns="http://www.w3.org/2000/svg"><path d="M10 6 8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"/><path d="M0 0h24v24H0z" fill="none"/></svg><svg viewBox="0 0 24 24" id="near_me" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M21 3 3 10.53v.98l6.84 2.65L12.48 21h.98L21 3z"/></svg><svg viewBox="0 -960 960 960" id="network_manage" xmlns="http://www.w3.org/2000/svg"><path d="M339-262q22-22 49.5-36t58.5-19q-5 19-8 38t-3 39q0 24 3.5 47t11.5 44L339-262Zm-85-84-84-86q62-62 142-95t168-33q49 0 96 10.5t90 30.5q-44 8-81.5 29T517-438q-9-1-18.5-1.5T480-440q-64 0-122.5 24.5T254-346ZM84-516 0-600q95-97 219.5-148.5T480-800q136 0 260.5 51.5T960-600l-84 84q-79-79-181.5-121.5T480-680q-112 0-214.5 42.5T84-516Zm676 76 12 60q12 5 22.5 10.5T816-356l58-18 40 68-46 40q2 12 2 26t-2 26l46 40-40 68-58-18q-11 8-21.5 13.5T772-100l-12 60h-80l-12-60q-12-5-22.5-10.5T624-124l-58 18-40-68 46-40q-2-12-2-26t2-26l-46-40 40-68 58 18q11-8 21.5-13.5T668-380l12-60h80Zm-40 120q-33 0-56.5 23.5T640-240q0 33 23.5 56.5T720-160q33 0 56.5-23.5T800-240q0-33-23.5-56.5T720-320Z"/></svg><svg viewBox="0 0 24 24" id="notifications" xmlns="http://www.w3.org/2000/svg"><path d="M12 22c1.1 0 2-.9 2-2h-4a2 2 0 0 0 2 2zm6-6v-5c0-3.07-1.64-5.64-4.5-6.32V4c0-.83-.67-1.5-1.5-1.5s-1.5.67-1.5 1.5v.68C7.63 5.36 6 7.92 6 11v5l-2 2v1h16v-1l-2-2z"/></svg><svg viewBox="0 0 24 24" id="notifications_active" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M7.58 4.08 6.15 2.65C3.75 4.48 2.17 7.3 2.03 10.5h2a8.445 8.445 0 0 1 3.55-6.42zm12.39 6.42h2c-.15-3.2-1.73-6.02-4.12-7.85l-1.42 1.43a8.495 8.495 0 0 1 3.54 6.42zM18 11c0-3.07-1.64-5.64-4.5-6.32V4c0-.83-.67-1.5-1.5-1.5s-1.5.67-1.5 1.5v.68C7.63 5.36 6 7.92 6 11v5l-2 2v1h16v-1l-2-2v-5zm-6 11c.14 0 .27-.01.4-.04.65-.14 1.18-.58 1.44-1.18.1-.24.15-.5.15-.78h-4c.01 1.1.9 2 2.01 2z"/></svg><svg viewBox="0 0 24 24" id="notifications_none" xmlns="http://www.w3.org/2000/svg"><path d="M12 22c1.1 0 2-.9 2-2h-4c0 1.1.9 2 2 2Zm6-6v-5c0-3.07-1.63-5.64-4.5-6.32V4c0-.83-.67-1.5-1.5-1.5s-1.5.67-1.5 1.5v.68C7.64 5.36 6 7.92 6 11v5l-2 2v1h16v-1l-2-2Zm-2 1H8v-6c0-2.48 1.51-4.5 4-4.5s4 2.02 4 4.5v6Z"/></svg><svg viewBox="0 0 24 24" id="notifications_off" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M20 18.69 7.84 6.14 5.27 3.49 4 4.76l2.8 2.8v.01c-.52.99-.8 2.16-.8 3.42v5l-2 2v1h13.73l2 2L21 19.72l-1-1.03zM12 22c1.11 0 2-.89 2-2h-4c0 1.11.89 2 2 2zm6-7.32V11c0-3.08-1.64-5.64-4.5-6.32V4c0-.83-.67-1.5-1.5-1.5s-1.5.67-1.5 1.5v.68c-.15.03-.29.08-.42.12-.1.03-.2.07-.3.11h-.01c-.01 0-.01 0-.02.01-.23.09-.46.2-.68.31 0 0-.01 0-.01.01L18 14.68z"/></svg><svg fill="none" viewBox="0 0 48 48" id="nport" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="m25.2 21.868-.722-.214c.055-1.481-1.49-2.61-2.882-2.116a2.19 2.19 0 0 0-1.438 1.586l-.913 4.256h1.253l.438-2.044c.45.37 1.052.504 1.621.434.602-.075 1.182-.38 1.52-.893l.692.205a2.19 2.19 0 0 0 2.185 2.278h.001c2.873-.049 2.875-4.324 0-4.373h-.001c-.719 0-1.356.347-1.754.88Zm-2.91-1.22c1.265.024 1.263 1.903 0 1.926-1.267-.033-1.271-1.888 0-1.926Zm4.664 1.563c1.264.023 1.264 1.902 0 1.926-1.266-.024-1.262-1.904 0-1.926Z" fill="#191C1C"/><path d="M15.023 19.428h-.13l-.017.08-1.234 5.75-.025.122h1.378l.65-3.032 2.786 3.12.041-.193.948-4.418.306-1.429h-1.378l-.644 3.002-2.68-3.002Z" fill="#191C1C"/><path fill-rule="evenodd" clip-rule="evenodd" d="M33.925 20.765h-1.252l-.145.678c-.434.012-1.006.09-1.433.305a1.635 1.635 0 0 0-.487-.515l-.026-.018h-1.346l-.046.189c.25.13.445.38.556.686.112.306.137.661.058.992l-.212.988-.255 1.188-.028.122h1.254l.4-1.87c.067-.262.282-.458.56-.592.234-.112.5-.174.73-.194l.253-1.18-.366 1.706c-.16.61-.082 1.115.234 1.474.313.355.839.543 1.524.569l.084.003.26-1.217-.127.003-.081.002a4.49 4.49 0 0 1-.387.001c-.125-.008-.2-.03-.244-.065-.04-.03-.073-.085-.081-.201-.009-.119.01-.289.062-.531l.008-.034.114-.536h1.028l.274-1.277H33.78l.145-.676Z" fill="#191C1C"/><path fill-rule="evenodd" clip-rule="evenodd" d="M11.9 4.8a2 2 0 0 0-2 2v31.84a2 2 0 0 0 2 2h4.4v1.56a1 1 0 0 0 1 1h1.84a1 1 0 0 0 1-1v-1.56h1.28v1.56a1 1 0 0 0 1 1h3.12a1 1 0 0 0 1-1v-1.56h1.28v1.56a1 1 0 0 0 1 1h1.84a1 1 0 0 0 1-1v-1.56h4.4a2 2 0 0 0 2-2V6.8a2 2 0 0 0-2-2H11.9Zm24.16 2H11.9v31.84h24.16V6.8Z" fill="#191C1C"/></svg><svg viewBox="0 0 24 24" id="outlined-feedback" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M20 2H4c-1.1 0-1.99.9-1.99 2L2 22l4-4h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm0 14H5.17l-.59.59-.58.58V4h16v12zm-9-4h2v2h-2zm0-6h2v4h-2z"/></svg><svg viewBox="0 0 16 20" id="outlined-gpp_bad" xmlns="http://www.w3.org/2000/svg"><path d="M5.9 13.5 8 11.4l2.1 2.1 1.4-1.4L9.4 10l2.1-2.1-1.4-1.4L8 8.6 5.9 6.5 4.5 7.9 6.6 10l-2.1 2.1 1.4 1.4ZM8 20c-2.317-.583-4.23-1.913-5.737-3.988C.754 13.938 0 11.633 0 9.1V3l8-3 8 3v6.1c0 2.533-.754 4.838-2.262 6.912C12.229 18.087 10.317 19.418 8 20Zm0-2.1c1.733-.55 3.167-1.65 4.3-3.3S14 11.117 14 9.1V4.375l-6-2.25-6 2.25V9.1c0 2.017.567 3.85 1.7 5.5s2.567 2.75 4.3 3.3Z"/></svg><svg viewBox="0 0 24 24" id="outlined-near_me" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0V0z" fill="none"/><path d="m17.27 6.73-4.24 10.13-1.32-3.42-.32-.83-.82-.32-3.43-1.33 10.13-4.23M21 3 3 10.53v.98l6.84 2.65L12.48 21h.98L21 3z"/></svg><svg viewBox="0 0 24 24" id="outlined-push_pin" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="M14 4v5c0 1.12.37 2.16 1 3H9c.65-.86 1-1.9 1-3V4h4m3-2H7c-.55 0-1 .45-1 1s.45 1 1 1h1v5c0 1.66-1.34 3-3 3v2h5.97v7l1 1 1-1v-7H19v-2c-1.66 0-3-1.34-3-3V4h1c.55 0 1-.45 1-1s-.45-1-1-1z"/></svg><svg viewBox="0 0 24 24" id="outlined-stop_circle" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8zm4-4H8V8h8v8z"/></svg><svg viewBox="0 0 16 20" id="outlined-verified_user" xmlns="http://www.w3.org/2000/svg"><path d="M6.95 13.55 12.6 7.9l-1.425-1.425L6.95 10.7l-2.1-2.1-1.425 1.425L6.95 13.55ZM8 20c-2.317-.583-4.23-1.913-5.737-3.988C.754 13.938 0 11.633 0 9.1V3l8-3 8 3v6.1c0 2.533-.754 4.838-2.262 6.912C12.229 18.087 10.317 19.418 8 20Zm0-2.1c1.733-.55 3.167-1.65 4.3-3.3S14 11.117 14 9.1V4.375l-6-2.25-6 2.25V9.1c0 2.017.567 3.85 1.7 5.5s2.567 2.75 4.3 3.3Z"/></svg><svg viewBox="0 0 24 24" id="outlined-view_week" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="M20 4H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zM8 18H4V6h4v12zm6 0h-4V6h4v12zm6 0h-4V6h4v12z"/></svg><svg viewBox="0 0 24 24" id="pan_tool" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="M23 5.5V20c0 2.2-1.8 4-4 4h-7.3c-1.08 0-2.1-.43-2.85-1.19L1 14.83s1.26-1.23 1.3-1.25c.22-.19.49-.29.79-.29.22 0 .42.06.6.16.04.01 4.31 2.46 4.31 2.46V4c0-.83.67-1.5 1.5-1.5S11 3.17 11 4v7h1V1.5c0-.83.67-1.5 1.5-1.5S15 .67 15 1.5V11h1V2.5c0-.83.67-1.5 1.5-1.5s1.5.67 1.5 1.5V11h1V5.5c0-.83.67-1.5 1.5-1.5s1.5.67 1.5 1.5z"/></svg><svg viewBox="0 0 24 24" id="pan_tool-outline" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M18 24h-6.55c-1.08 0-2.14-.45-2.89-1.23l-7.3-7.61 2.07-1.83c.62-.55 1.53-.66 2.26-.27L8 14.34V4.79a2.5 2.5 0 0 1 3.01-2.45C11.1 1.04 12.18.01 13.5.01c.86 0 1.61.43 2.06 1.09.29-.12.61-.18.94-.18a2.5 2.5 0 0 1 2.5 2.5v.28a2.5 2.5 0 0 1 3 2.45V20c0 2.21-1.79 4-4 4zM4.14 15.28l5.86 6.1c.38.39.9.62 1.44.62H18c1.1 0 2-.9 2-2V6.15c0-.28-.22-.5-.5-.5s-.5.22-.5.5V12h-2V3.42c0-.28-.22-.5-.5-.5s-.5.22-.5.5V12h-2V2.51c0-.28-.22-.5-.5-.5s-.5.22-.5.5V12h-2V4.79c0-.28-.22-.5-.5-.5s-.5.23-.5.5v12.87l-5.35-2.83-.51.45z"/></svg><svg viewBox="0 -960 960 960" id="panorama_fish_eye" xmlns="http://www.w3.org/2000/svg"><path d="M480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320Z"/></svg><svg viewBox="0 0 24 24" id="pause_circle" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-1 14H9V8h2v8zm4 0h-2V8h2v8z"/></svg><svg viewBox="0 0 24 24" id="pending_actions" xmlns="http://www.w3.org/2000/svg"><path d="M17 12c-2.76 0-5 2.24-5 5s2.24 5 5 5 5-2.24 5-5-2.24-5-5-5Zm1.65 7.35L16.5 17.2V14h1v2.79l1.85 1.85-.7.71ZM18 3h-3.18C14.4 1.84 13.3 1 12 1c-1.3 0-2.4.84-2.82 2H6c-1.1 0-2 .9-2 2v15c0 1.1.9 2 2 2h6.11a6.743 6.743 0 0 1-1.42-2H6V5h2v3h8V5h2v5.08c.71.1 1.38.31 2 .6V5c0-1.1-.9-2-2-2Zm-6 2c-.55 0-1-.45-1-1s.45-1 1-1 1 .45 1 1-.45 1-1 1Z"/></svg><svg viewBox="0 0 24 24" id="person" xmlns="http://www.w3.org/2000/svg"><path d="M12 12c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm0 2c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4z"/><path d="M0 0h24v24H0z" fill="none"/></svg><svg viewBox="0 0 24 24" id="phone" xmlns="http://www.w3.org/2000/svg"><path d="M6.62 10.79c1.44 2.83 3.76 5.14 6.59 6.59l2.2-2.2c.27-.27.67-.36 1.02-.24 1.12.37 2.33.57 3.57.57.55 0 1 .45 1 1V20c0 .55-.45 1-1 1-9.39 0-17-7.61-17-17 0-.55.45-1 1-1h3.5c.55 0 1 .45 1 1 0 1.25.2 2.45.57 3.57.11.35.03.74-.25 1.02l-2.2 2.2Z"/></svg><svg viewBox="0 0 18 21" id="place_item" xmlns="http://www.w3.org/2000/svg"><path d="M2 21c-.55 0-1.02-.196-1.413-.587A1.926 1.926 0 0 1 0 19V9c0-.55.196-1.02.588-1.412A1.926 1.926 0 0 1 2 7h4v2H2v10h14V9h-4V7h4c.55 0 1.02.196 1.413.588.391.391.587.862.587 1.412v10c0 .55-.196 1.02-.587 1.413A1.926 1.926 0 0 1 16 21H2Zm7-5-4-4 1.4-1.4L8 12.175V0h2v12.175l1.6-1.575L13 12l-4 4Z"/></svg><svg viewBox="0 0 24 24" id="play_circle" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zM9.5 16.5v-9l7 4.5-7 4.5z"/></svg><svg viewBox="0 0 24 24" id="policy" xmlns="http://www.w3.org/2000/svg"><path d="M12 15a3 3 0 1 0 0-6 3 3 0 0 0 0 6Z"/><path d="m21 5-9-4-9 4v6c0 5.55 3.84 10.74 9 12 2.3-.56 4.33-1.9 5.88-3.71l-3.12-3.12a4.994 4.994 0 0 1-6.29-.64 5.003 5.003 0 0 1 0-7.07 5.003 5.003 0 0 1 7.07 0 5.006 5.006 0 0 1 .64 6.29l2.9 2.9C20.29 15.69 21 13.38 21 11V5Z"/></svg><svg viewBox="0 0 24 24" id="power_settings_new" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="M13 3h-2v10h2V3zm4.83 2.17-1.42 1.42A6.92 6.92 0 0 1 19 12c0 3.87-3.13 7-7 7A6.995 6.995 0 0 1 7.58 6.58L6.17 5.17A8.932 8.932 0 0 0 3 12a9 9 0 0 0 18 0c0-2.74-1.23-5.18-3.17-6.83z"/></svg><svg viewBox="0 0 24 24" id="priority_high" xmlns="http://www.w3.org/2000/svg"><circle cx="12" cy="19" r="2"/><path d="M10 3h4v12h-4z"/><path d="M0 0h24v24H0z" fill="none"/></svg><svg viewBox="0 0 24 24" id="project_type_agt" xmlns="http://www.w3.org/2000/svg"><g data-name="圖層 2"><g data-name="圖層 1"><path d="M0 0h24v24H0Z" style="fill:none"/><path d="M19 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V5a2 2 0 0 0-2-2Zm-.5 10.74-2.35 2.16-3.45-.39v-1.09h3.14l.53-.63a4.57 4.57 0 0 0 .35-1.79 4.41 4.41 0 0 0-.2-1.33 5.68 5.68 0 0 1-1.32.15 5.87 5.87 0 0 1-4.82-2.5 6 6 0 0 1-3.08 3.17 2.91 2.91 0 0 0 0 .51 4.73 4.73 0 0 0 4.7 4.73 4.65 4.65 0 0 0 1.93-.42c.37.71.54 1.06.53 1.06a8.37 8.37 0 0 1-2.46.53 5.9 5.9 0 0 1-4.18-1.73 5.79 5.79 0 0 1-1.46-2.4H5.5v-2.95h.71a5.9 5.9 0 0 1 10-3 5.82 5.82 0 0 1 1.61 3h.72ZM13 12.59a.74.74 0 0 1 .74-.74.74.74 0 0 1 0 1.48.74.74 0 0 1-.74-.74Zm-2.07 0a.76.76 0 0 1-.21.52.74.74 0 1 1 0-1 .78.78 0 0 1 .28.48Z"/></g></g></svg><svg viewBox="0 0 24 24" id="project_type_tpe" xmlns="http://www.w3.org/2000/svg"><g data-name="圖層 2"><g data-name="圖層 1"><path d="M0 0h24v24H0Z" style="fill:none"/><path d="M10.02 12.71H8.4v3.65h1.35v-2.48l1.77 2.48h.95l1.78-2.5v2.5h1.35v-3.65h-1.63l-1.98 2.77-1.97-2.77z"/><path d="M19 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V5a2 2 0 0 0-2-2Zm-1 9.6-1.1-.83v5.75H7.09v-5.75L6 12.61l-.74-1L12 6.48l6.75 5.15Z"/></g></g></svg><svg viewBox="0 0 24 24" id="push_pin" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="M16 9V4h1c.55 0 1-.45 1-1s-.45-1-1-1H7c-.55 0-1 .45-1 1s.45 1 1 1h1v5c0 1.66-1.34 3-3 3v2h5.97v7l1 1 1-1v-7H19v-2c-1.66 0-3-1.34-3-3z" fill-rule="evenodd"/></svg><svg viewBox="0 0 24 24" id="redo" xmlns="http://www.w3.org/2000/svg"><path d="M18.4 10.6C16.55 8.99 14.15 8 11.5 8c-4.65 0-8.58 3.03-9.96 7.22L3.9 16a8.002 8.002 0 0 1 7.6-5.5c1.95 0 3.73.72 5.12 1.88L13 16h9V7l-3.6 3.6Z"/></svg><svg viewBox="0 0 24 24" id="redo_copy" xmlns="http://www.w3.org/2000/svg"><path d="M18.4 10.6C16.55 8.99 14.15 8 11.5 8c-4.65 0-8.58 3.03-9.96 7.22L3.9 16a8.002 8.002 0 0 1 7.6-5.5c1.95 0 3.73.72 5.12 1.88L13 16h9V7l-3.6 3.6Z"/></svg><svg viewBox="0 0 24 24" id="refresh" xmlns="http://www.w3.org/2000/svg"><path d="M17.65 6.35A7.958 7.958 0 0 0 12 4c-4.42 0-7.99 3.58-7.99 8s3.57 8 7.99 8c3.73 0 6.84-2.55 7.73-6h-2.08A5.99 5.99 0 0 1 12 18c-3.31 0-6-2.69-6-6s2.69-6 6-6c1.66 0 3.14.69 4.22 1.78L13 11h7V4l-2.35 2.35z"/><path d="M0 0h24v24H0z" fill="none"/></svg><svg viewBox="0 0 24 24" id="remove" xmlns="http://www.w3.org/2000/svg"><path d="M19 13H5v-2h14v2Z"/></svg><svg viewBox="0 0 24 24" id="remove_circle" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm5 11H7v-2h10v2z"/></svg><svg viewBox="0 0 24 24" id="remove_copy" xmlns="http://www.w3.org/2000/svg"><path d="M19 13H5v-2h14v2Z"/></svg><svg viewBox="0 0 24 24" id="restart_alt" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M12 5V2L8 6l4 4V7c3.31 0 6 2.69 6 6 0 2.97-2.17 5.43-5 5.91v2.02c3.95-.49 7-3.85 7-7.93 0-4.42-3.58-8-8-8zM6 13c0-1.65.67-3.15 1.76-4.24L6.34 7.34A8.014 8.014 0 0 0 4 13c0 4.08 3.05 7.44 7 7.93v-2.02c-2.83-.48-5-2.94-5-5.91z"/></svg><svg viewBox="0 0 24 24" id="room_preferences" xmlns="http://www.w3.org/2000/svg"><path d="M14 11.26V6h3v4h2V4h-5V3H5v16H3v2h9.26A6.963 6.963 0 0 1 11 17c0-2.38 1.19-4.47 3-5.74ZM10 11h2v2h-2v-2Zm11.69 5.37 1.14-1-1-1.73-1.45.49c-.32-.27-.68-.48-1.08-.63L19 12h-2l-.3 1.49c-.4.15-.76.36-1.08.63l-1.45-.49-1 1.73 1.14 1c-.08.5-.08.76 0 1.26l-1.14 1 1 1.73 1.45-.49c.32.27.68.48 1.08.63L17 22h2l.3-1.49c.4-.15.76-.36 1.08-.63l1.45.49 1-1.73-1.14-1c.08-.51.08-.77 0-1.27ZM18 19c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2Z"/></svg><svg viewBox="0 0 24 24" id="router" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="m20.2 5.9.8-.8C19.6 3.7 17.8 3 16 3s-3.6.7-5 2.1l.8.8C13 4.8 14.5 4.2 16 4.2s3 .6 4.2 1.7zm-.9.8c-.9-.9-2.1-1.4-3.3-1.4s-2.4.5-3.3 1.4l.8.8c.7-.7 1.6-1 2.5-1 .9 0 1.8.3 2.5 1l.8-.8zM19 13h-2V9h-2v4H5c-1.1 0-2 .9-2 2v4c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2v-4c0-1.1-.9-2-2-2zM8 18H6v-2h2v2zm3.5 0h-2v-2h2v2zm3.5 0h-2v-2h2v2z"/></svg><svg viewBox="0 0 24 24" id="running_with_errors" xmlns="http://www.w3.org/2000/svg"><path d="M22 10v8h-2v-8h2Zm-2 10v2h2v-2h-2Zm-2-2.71A7.99 7.99 0 0 1 12 20c-4.41 0-8-3.59-8-8s3.59-8 8-8v9l7.55-7.55A9.965 9.965 0 0 0 12 2C6.48 2 2 6.48 2 12s4.48 10 10 10c2.25 0 4.33-.74 6-2v-2.71Z"/></svg><svg viewBox="0 0 24 24" id="save" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M17 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14c1.1 0 2-.9 2-2V7l-4-4zm-5 16c-1.66 0-3-1.34-3-3s1.34-3 3-3 3 1.34 3 3-1.34 3-3 3zm3-10H5V5h10v4z"/></svg><svg viewBox="0 0 24 24" id="schedule" xmlns="http://www.w3.org/2000/svg"><path d="M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z"/><path d="M0 0h24v24H0z" fill="none"/><path d="M12.5 7H11v6l5.25 3.15.75-1.23-4.5-2.67z"/></svg><svg viewBox="0 0 24 24" id="schedule_send" xmlns="http://www.w3.org/2000/svg"><path d="M16.5 12.5H15v4l3 2 .75-1.23-2.25-1.52V12.5ZM16 9 2 3v7l9 2-9 2v7l7.27-3.11C10.09 20.83 12.79 23 16 23c3.86 0 7-3.14 7-7s-3.14-7-7-7Zm0 12c-2.75 0-4.98-2.22-5-4.97v-.07a5.008 5.008 0 0 1 5-4.97c2.76 0 5 2.24 5 5S18.76 21 16 21Z"/></svg><svg viewBox="0 0 24 24" id="search" xmlns="http://www.w3.org/2000/svg"><path d="M15.5 14h-.79l-.28-.27A6.471 6.471 0 0 0 16 9.5 6.5 6.5 0 1 0 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"/><path d="M0 0h24v24H0z" fill="none"/></svg><svg viewBox="0 0 24 24" id="security" xmlns="http://www.w3.org/2000/svg"><path d="M12 1 3 5v6c0 5.55 3.84 10.74 9 12 5.16-1.26 9-6.45 9-12V5l-9-4zm0 10.99h7c-.53 4.12-3.28 7.79-7 8.94V12H5V6.3l7-3.11v8.8z"/><path d="M0 0h24v24H0z" fill="none"/></svg><svg viewBox="0 0 24 24" id="send" xmlns="http://www.w3.org/2000/svg"><path d="M2.01 21 23 12 2.01 3 2 10l15 2-15 2z"/><path d="M0 0h24v24H0z" fill="none"/></svg><svg viewBox="0 0 24 24" id="settings" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M19.14 12.94c.04-.3.06-.61.06-.94 0-.32-.02-.64-.07-.94l2.03-1.58a.49.49 0 0 0 .12-.61l-1.92-3.32a.488.488 0 0 0-.59-.22l-2.39.96c-.5-.38-1.03-.7-1.62-.94l-.36-2.54a.484.484 0 0 0-.48-.41h-3.84c-.24 0-.43.17-.47.41l-.36 2.54c-.59.24-1.13.57-1.62.94l-2.39-.96c-.22-.08-.47 0-.59.22L2.74 8.87c-.12.21-.08.47.12.61l2.03 1.58c-.05.3-.09.63-.09.94s.02.64.07.94l-2.03 1.58a.49.49 0 0 0-.12.61l1.92 3.32c.12.22.37.29.59.22l2.39-.96c.5.38 1.03.7 1.62.94l.36 2.54c.05.24.24.41.48.41h3.84c.24 0 .44-.17.47-.41l.36-2.54c.59-.24 1.13-.56 1.62-.94l2.39.96c.22.08.47 0 .59-.22l1.92-3.32c.12-.22.07-.47-.12-.61l-2.01-1.58zM12 15.6c-1.98 0-3.6-1.62-3.6-3.6s1.62-3.6 3.6-3.6 3.6 1.62 3.6 3.6-1.62 3.6-3.6 3.6z"/></svg><svg viewBox="0 0 24 24" id="settings_applications" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M12 10c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm7-7H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V5a2 2 0 0 0-2-2zm-1.75 9c0 .23-.02.46-.05.68l1.48 1.16c.13.11.17.3.08.45l-1.4 2.42c-.09.15-.27.21-.43.15l-1.74-.7c-.36.28-.76.51-1.18.69l-.26 1.85c-.03.17-.18.3-.35.3h-2.8c-.17 0-.32-.13-.35-.29l-.26-1.85c-.43-.18-.82-.41-1.18-.69l-1.74.7c-.16.06-.34 0-.43-.15l-1.4-2.42a.353.353 0 0 1 .08-.45l1.48-1.16c-.03-.23-.05-.46-.05-.69 0-.23.02-.46.05-.68l-1.48-1.16a.353.353 0 0 1-.08-.45l1.4-2.42c.09-.15.27-.21.43-.15l1.74.7c.36-.28.76-.51 1.18-.69l.26-1.85c.03-.17.18-.3.35-.3h2.8c.17 0 .32.13.35.29l.26 1.85c.43.18.82.41 1.18.69l1.74-.7c.16-.06.34 0 .43.15l1.4 2.42c.09.15.05.34-.08.45l-1.48 1.16c.03.23.05.46.05.69z"/></svg><svg viewBox="0 0 24 24" id="settings_ethernet" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M7.77 6.76 6.23 5.48.82 12l5.41 6.52 1.54-1.28L3.42 12l4.35-5.24zM7 13h2v-2H7v2zm10-2h-2v2h2v-2zm-6 2h2v-2h-2v2zm6.77-7.52-1.54 1.28L20.58 12l-4.35 5.24 1.54 1.28L23.18 12l-5.41-6.52z"/></svg><svg viewBox="0 0 24 24" id="settings_input_component" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M5 2c0-.55-.45-1-1-1s-1 .45-1 1v4H1v6h6V6H5V2zm4 14c0 1.3.84 2.4 2 2.82V23h2v-4.18c1.16-.41 2-1.51 2-2.82v-2H9v2zm-8 0c0 1.3.84 2.4 2 2.82V23h2v-4.18C6.16 18.4 7 17.3 7 16v-2H1v2zM21 6V2c0-.55-.45-1-1-1s-1 .45-1 1v4h-2v6h6V6h-2zm-8-4c0-.55-.45-1-1-1s-1 .45-1 1v4H9v6h6V6h-2V2zm4 14c0 1.3.84 2.4 2 2.82V23h2v-4.18c1.16-.41 2-1.51 2-2.82v-2h-6v2z"/></svg><svg viewBox="0 0 24 24" id="settings_power" xmlns="http://www.w3.org/2000/svg"><path d="M7 24h2v-2H7v2Zm4 0h2v-2h-2v2Zm2-22h-2v10h2V2Zm3.56 2.44-1.45 1.45A5.969 5.969 0 0 1 18 11c0 3.31-2.69 6-6 6s-6-2.69-6-6c0-2.17 1.16-4.06 2.88-5.12L7.44 4.44A7.961 7.961 0 0 0 4 11c0 4.42 3.58 8 8 8s8-3.58 8-8c0-2.72-1.36-5.12-3.44-6.56ZM15 24h2v-2h-2v2Z"/></svg><svg viewBox="0 0 24 24" id="settings_remote" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M15 9H9c-.55 0-1 .45-1 1v12c0 .55.45 1 1 1h6c.55 0 1-.45 1-1V10c0-.55-.45-1-1-1zm-3 6c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zM7.05 6.05l1.41 1.41a5.022 5.022 0 0 1 7.08 0l1.41-1.41C15.68 4.78 13.93 4 12 4s-3.68.78-4.95 2.05zM12 0C8.96 0 6.21 1.23 4.22 3.22l1.41 1.41C7.26 3.01 9.51 2 12 2s4.74 1.01 6.36 2.64l1.41-1.41C17.79 1.23 15.04 0 12 0z"/></svg><svg viewBox="0 0 24 24" id="settings_suggest" xmlns="http://www.w3.org/2000/svg"><path d="M17.41 6.59 15 5.5l2.41-1.09L18.5 2l1.09 2.41L22 5.5l-2.41 1.09L18.5 9l-1.09-2.41Zm3.87 6.13L20.5 11l-.78 1.72-1.72.78 1.72.78.78 1.72.78-1.72L23 13.5l-1.72-.78Zm-5.04 1.65 1.94 1.47-2.5 4.33-2.24-.94c-.2.13-.42.26-.64.37l-.3 2.4h-5l-.3-2.41c-.22-.11-.43-.23-.64-.37l-2.24.94-2.5-4.33 1.94-1.47c-.01-.11-.01-.24-.01-.36s0-.25.01-.37l-1.94-1.47 2.5-4.33 2.24.94c.2-.13.42-.26.64-.37L7.5 6h5l.3 2.41c.22.11.43.23.64.37l2.24-.94 2.5 4.33-1.94 1.47c.01.12.01.24.01.37s0 .24-.01.36ZM13 14c0-1.66-1.34-3-3-3s-3 1.34-3 3 1.34 3 3 3 3-1.34 3-3Z"/></svg><svg viewBox="0 0 24 24" id="shape_line_outline" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M6 11c2.76 0 5-2.24 5-5S8.76 1 6 1 1 3.24 1 6s2.24 5 5 5Zm0-8c1.65 0 3 1.35 3 3S7.65 9 6 9 3 7.65 3 6s1.35-3 3-3ZM21 14h-5c-1.1 0-2 .9-2 2v5c0 1.1.9 2 2 2h5c1.1 0 2-.9 2-2v-5c0-1.1-.9-2-2-2Zm0 7h-5v-5h5v5Z"/><path d="M19 8c-.46 0-.89-.11-1.29-.3L7.7 17.71c.19.4.3.83.3 1.29 0 1.65-1.35 3-3 3s-3-1.35-3-3 1.35-3 3-3c.46 0 .89.11 1.29.3L16.3 6.29c-.19-.4-.3-.83-.3-1.29 0-1.65 1.35-3 3-3s3 1.35 3 3-1.35 3-3 3Z"/></svg><svg viewBox="0 0 24 24" id="signal_cellular_alt" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M17 4h3v16h-3zM5 14h3v6H5zm6-5h3v11h-3z"/></svg><svg viewBox="0 0 24 24" id="signal_cellular_alt_1_bar" xmlns="http://www.w3.org/2000/svg"><path d="M5 14h3v6H5v-6Z"/></svg><svg viewBox="0 0 24 24" id="signal_cellular_alt_2_bar" xmlns="http://www.w3.org/2000/svg"><path d="M5 14h3v6H5v-6Zm6-5h3v11h-3V9Z"/></svg><svg viewBox="0 0 24 24" id="sms" xmlns="http://www.w3.org/2000/svg"><path d="M20 2H4c-1.1 0-1.99.9-1.99 2L2 22l4-4h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zM9 11H7V9h2v2zm4 0h-2V9h2v2zm4 0h-2V9h2v2z"/><path d="M0 0h24v24H0z" fill="none"/></svg><svg viewBox="0 0 24 24" id="star" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M0 0h24v24H0z" fill="none"/><path d="M12 17.27 18.18 21l-1.64-7.03L22 9.24l-7.19-.61L12 2 9.19 8.63 2 9.24l5.46 4.73L5.82 21z"/></svg><svg viewBox="0 0 24 24" id="star_border" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="m22 9.24-7.19-.62L12 2 9.19 8.63 2 9.24l5.46 4.73L5.82 21 12 17.27 18.18 21l-1.63-7.03L22 9.24zM12 15.4l-3.76 2.27 1-4.28-3.32-2.88 4.38-.38L12 6.1l1.71 4.04 4.38.38-3.32 2.88 1 4.28L12 15.4z"/></svg><svg viewBox="0 0 24 24" id="storage" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M2 20h20v-4H2v4zm2-3h2v2H4v-2zM2 4v4h20V4H2zm4 3H4V5h2v2zm-4 7h20v-4H2v4zm2-3h2v2H4v-2z"/></svg><svg viewBox="0 0 24 24" id="style" xmlns="http://www.w3.org/2000/svg"><g data-name="圖層 2"><g data-name="圖層 1"><path d="M0 0h24v24H0Z" style="fill:none"/><path d="m17.91 6 4.14 10.14a1.69 1.69 0 0 1 .11.67 1.72 1.72 0 0 1-.15.67 1.76 1.76 0 0 1-.93.93l-7.85 3.29a1.72 1.72 0 0 1-1.31 0 1.73 1.73 0 0 1-.92-.92L6.9 10.65a1.71 1.71 0 0 1 0-1.33l2.31-5.58a1.73 1.73 0 0 1 2.24-.94L17 5.09a1.72 1.72 0 0 1 .91.91ZM12 7.26a1.29 1.29 0 0 0 .69-.69 1.33 1.33 0 0 0 0-1A1.26 1.26 0 0 0 11 4.88a1.28 1.28 0 0 0-.71.7 1.31 1.31 0 0 0 0 1 1.25 1.25 0 0 0 1.71.68ZM2.53 19.65l1.34.56v-9L1.44 17a1.91 1.91 0 0 0-.16.78 1.78 1.78 0 0 0 .15.78 1.92 1.92 0 0 0 .44.65 2 2 0 0 0 .66.44Zm3.35.1a2 2 0 0 0 2 2h1.45l-3.45-8.34Z" style="fill-rule:evenodd"/></g></g></svg><svg viewBox="0 0 24 24" id="sync_alt" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="m22 8-4-4v3H3v2h15v3l4-4zM2 16l4 4v-3h15v-2H6v-3l-4 4z"/></svg><svg viewBox="0 0 24 24" id="sync_disabled" xmlns="http://www.w3.org/2000/svg"><path d="M10 6.35V4.26c-.8.21-1.55.54-2.23.96l1.46 1.46c.25-.12.5-.24.77-.33Zm-7.14-.94 2.36 2.36a7.925 7.925 0 0 0 1.14 9.87L4 20h6v-6l-2.24 2.24A6.003 6.003 0 0 1 6 12c0-1 .25-1.94.68-2.77l8.08 8.08c-.25.13-.5.25-.77.34v2.09c.8-.21 1.55-.54 2.23-.96l2.36 2.36 1.27-1.27L4.14 4.14 2.86 5.41ZM20 4h-6v6l2.24-2.24A6.003 6.003 0 0 1 18 12c0 1-.25 1.94-.68 2.77l1.46 1.46a7.925 7.925 0 0 0-1.14-9.87L20 4Z"/></svg><svg viewBox="0 0 24 24" id="sync_problem" xmlns="http://www.w3.org/2000/svg"><path d="M3 12c0 2.21.91 4.2 2.36 5.64L3 20h6v-6l-2.24 2.24A6.003 6.003 0 0 1 5 12a5.99 5.99 0 0 1 4-5.65V4.26C5.55 5.15 3 8.27 3 12Zm8 5h2v-2h-2v2ZM21 4h-6v6l2.24-2.24A6.003 6.003 0 0 1 19 12a5.99 5.99 0 0 1-4 5.65v2.09c3.45-.89 6-4.01 6-7.74 0-2.21-.91-4.2-2.36-5.64L21 4Zm-10 9h2V7h-2v6Z"/></svg><svg viewBox="0 0 24 24" id="task_alt" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="M22 5.18 10.59 16.6l-4.24-4.24 1.41-1.41 2.83 2.83 10-10L22 5.18zm-2.21 5.04c.13.57.21 1.17.21 1.78 0 4.42-3.58 8-8 8s-8-3.58-8-8 3.58-8 8-8c1.58 0 3.04.46 4.28 1.25l1.44-1.44A9.9 9.9 0 0 0 12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10c0-1.19-.22-2.33-.6-3.39l-1.61 1.61z"/></svg><svg viewBox="0 0 24 24" id="tenancy" xmlns="http://www.w3.org/2000/svg"><path d="M4 21a2.893 2.893 0 0 1-2.125-.875A2.893 2.893 0 0 1 1 18c0-.833.292-1.542.875-2.125A2.893 2.893 0 0 1 4 15c.15 0 .296.012.438.037.141.025.279.055.412.088L8.9 9.55a4.076 4.076 0 0 1-.662-1.175A3.975 3.975 0 0 1 8 7c0-1.1.392-2.042 1.175-2.825C9.958 3.392 10.9 3 12 3s2.042.392 2.825 1.175C15.608 4.958 16 5.9 16 7c0 .483-.083.942-.25 1.375a4.318 4.318 0 0 1-.675 1.175l4.075 5.575a6.01 6.01 0 0 1 .413-.088c.141-.025.287-.037.437-.037.833 0 1.542.292 2.125.875S23 17.167 23 18s-.292 1.542-.875 2.125A2.893 2.893 0 0 1 20 21a2.893 2.893 0 0 1-2.125-.875A2.893 2.893 0 0 1 17 18c0-.317.046-.62.137-.913.092-.291.221-.554.388-.787l-4.05-5.575a1.551 1.551 0 0 1-.237.075 1.551 1.551 0 0 0-.238.075v4.3a2.91 2.91 0 0 1 1.438 1.075c.374.517.562 1.1.562 1.75 0 .833-.292 1.542-.875 2.125A2.893 2.893 0 0 1 12 21a2.893 2.893 0 0 1-2.125-.875A2.893 2.893 0 0 1 9 18c0-.65.188-1.23.563-1.738A3.09 3.09 0 0 1 11 15.175v-4.3a1.551 1.551 0 0 0-.238-.075 1.551 1.551 0 0 1-.237-.075L6.475 16.3c.167.233.296.496.388.787.091.292.137.596.137.913 0 .833-.292 1.542-.875 2.125A2.893 2.893 0 0 1 4 21Z"/></svg><svg viewBox="0 0 24 24" id="terminal" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="M20 4H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h16c1.1 0 2-.9 2-2V6a2 2 0 0 0-2-2zm0 14H4V8h16v10zm-2-1h-6v-2h6v2zM7.5 17l-1.41-1.41L8.67 13l-2.59-2.59L7.5 9l4 4-4 4z"/></svg><svg viewBox="0 0 24 24" id="today" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M19 3h-1V1h-2v2H8V1H6v2H5c-1.11 0-1.99.9-1.99 2L3 19a2 2 0 0 0 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H5V8h14v11zM7 10h5v5H7z"/></svg><svg viewBox="0 0 20 12" id="trending_down" xmlns="http://www.w3.org/2000/svg"><path d="M14 12v-2h2.6l-5.2-5.15-4 4L0 1.4 1.4 0l6 6 4-4L18 8.6V6h2v6h-6Z"/></svg><svg viewBox="0 0 19 10" id="trending_flat" xmlns="http://www.w3.org/2000/svg"><path d="m14.5 9.5-1.425-1.4 2.1-2.1H0V4h15.175L13.1 1.9 14.525.5 19 5l-4.5 4.5Z"/></svg><svg viewBox="0 0 20 12" id="trending_up" xmlns="http://www.w3.org/2000/svg"><path d="M1.4 12 0 10.6l7.4-7.45 4 4L16.6 2H14V0h6v6h-2V3.4L11.4 10l-4-4-6 6Z"/></svg><svg viewBox="0 0 24 24" id="troubleshoot" xmlns="http://www.w3.org/2000/svg"><path d="m22 20.59-4.69-4.69A7.902 7.902 0 0 0 19 11c0-4.42-3.58-8-8-8-4.08 0-7.44 3.05-7.93 7h2.02C5.57 7.17 8.03 5 11 5c3.31 0 6 2.69 6 6s-2.69 6-6 6c-2.42 0-4.5-1.44-5.45-3.5H3.4C4.45 16.69 7.46 19 11 19c1.85 0 3.55-.63 4.9-1.69L20.59 22 22 20.59Z"/><path d="M8.43 9.69 9.65 15h1.64l1.26-3.78.95 2.28h2V12h-1l-1.25-3h-1.54l-1.12 3.37L9.35 7H7.7l-1.25 4H1v1.5h6.55l.88-2.81Z"/></svg><svg viewBox="0 0 24 24" id="tune" xmlns="http://www.w3.org/2000/svg"><path d="M3 17v2h6v-2H3ZM3 5v2h10V5H3Zm10 16v-2h8v-2h-8v-2h-2v6h2ZM7 9v2H3v2h4v2h2V9H7Zm14 4v-2H11v2h10Zm-6-4h2V7h4V5h-4V3h-2v6Z"/></svg><svg viewBox="0 0 24 24" id="unarchive" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="m20.55 5.22-1.39-1.68A1.51 1.51 0 0 0 18 3H6c-.47 0-.88.21-1.15.55L3.46 5.22C3.17 5.57 3 6.01 3 6.5V19a2 2 0 0 0 2 2h14c1.1 0 2-.9 2-2V6.5c0-.49-.17-.93-.45-1.28zM12 9.5l5.5 5.5H14v2h-4v-2H6.5L12 9.5zM5.12 5l.82-1h12l.93 1H5.12z"/></svg><svg viewBox="0 0 24 24" id="undo" xmlns="http://www.w3.org/2000/svg"><path d="M12.5 8c-2.65 0-5.05.99-6.9 2.6L2 7v9h9l-3.62-3.62c1.39-1.16 3.16-1.88 5.12-1.88 3.54 0 6.55 2.31 7.6 5.5l2.37-.78C21.08 11.03 17.15 8 12.5 8Z"/></svg><svg viewBox="0 0 24 24" id="undo_copy" xmlns="http://www.w3.org/2000/svg"><path d="M12.5 8c-2.65 0-5.05.99-6.9 2.6L2 7v9h9l-3.62-3.62c1.39-1.16 3.16-1.88 5.12-1.88 3.54 0 6.55 2.31 7.6 5.5l2.37-.78C21.08 11.03 17.15 8 12.5 8Z"/></svg><svg fill="none" viewBox="0 0 24 24" id="unfold-less" xmlns="http://www.w3.org/2000/svg"><path d="M7.41 18.59 8.83 20 12 16.83 15.17 20l1.41-1.41L12 14l-4.59 4.59Zm9.18-13.18L15.17 4 12 7.17 8.83 4 7.41 5.41 12 10l4.59-4.59Z" fill="#000"/></svg><svg fill="none" viewBox="0 0 24 24" id="unfold-more" xmlns="http://www.w3.org/2000/svg"><path d="M12 5.83 15.17 9l1.41-1.41L12 3 7.41 7.59 8.83 9 12 5.83Zm0 12.34L8.83 15l-1.41 1.41L12 21l4.59-4.59L15.17 15 12 18.17Z" fill="#000"/></svg><svg viewBox="0 -960 960 960" id="unfold_less" xmlns="http://www.w3.org/2000/svg"><path d="m356-160-56-56 180-180 180 180-56 56-124-124-124 124Zm124-404L300-744l56-56 124 124 124-124 56 56-180 180Z"/></svg><svg viewBox="0 -960 960 960" id="unfold_more" xmlns="http://www.w3.org/2000/svg"><path d="M480-120 300-300l58-58 122 122 122-122 58 58-180 180ZM358-598l-58-58 180-180 180 180-58 58-122-122-122 122Z"/></svg><svg viewBox="0 0 24 24" id="update" xmlns="http://www.w3.org/2000/svg"><defs><path id="jva" d="M0 0h24v24H0V0z"/></defs><clipPath id="jvb"><use xlink:href="#jva" overflow="visible"/></clipPath><path clip-path="url(#jvb)" d="M21 10.12h-6.78l2.74-2.82c-2.73-2.7-7.15-2.8-9.88-.1a6.875 6.875 0 0 0 0 9.79 7.02 7.02 0 0 0 9.88 0C18.32 15.65 19 14.08 19 12.1h2c0 1.98-.88 4.55-2.64 6.29-3.51 3.48-9.21 3.48-12.72 0-3.5-3.47-3.53-9.11-.02-12.58a8.987 8.987 0 0 1 12.65 0L21 3v7.12zM12.5 8v4.25l3.5 2.08-.72 1.21L11 13V8h1.5z"/></svg><svg viewBox="0 0 24 24" id="upgrade" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="M16 18v2H8v-2h8zM11 7.99V16h2V7.99h3L12 4 8 7.99h3z"/></svg><svg viewBox="0 0 24 24" id="upload" xmlns="http://www.w3.org/2000/svg"><path d="M5 20h14v-2H5v2Zm0-10h4v6h6v-6h4l-7-7-7 7Z"/></svg><svg viewBox="0 0 24 24" id="verified_user" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M12 1 3 5v6c0 5.55 3.84 10.74 9 12 5.16-1.26 9-6.45 9-12V5l-9-4zm-2 16-4-4 1.41-1.41L10 14.17l6.59-6.59L18 9l-8 8z"/></svg><svg viewBox="0 -960 960 960" id="vertical_align_center" xmlns="http://www.w3.org/2000/svg"><path d="M440-80v-168l-64 64-56-56 160-160 160 160-56 56-64-64v168h-80ZM160-440v-80h640v80H160Zm320-120L320-720l56-56 64 64v-168h80v168l64-64 56 56-160 160Z"/></svg><svg viewBox="0 0 24 24" id="view_headline" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0V0z" fill="none"/><path d="M4 15h16v-2H4v2zm0 4h16v-2H4v2zm0-8h16V9H4v2zm0-6v2h16V5H4z"/></svg><svg viewBox="0 0 24 24" id="visibility" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z"/></svg><svg viewBox="0 0 24 24" id="visibility_off" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0zm0 0h24v24H0zm0 0h24v24H0zm0 0h24v24H0z" fill="none"/><path d="M12 7c2.76 0 5 2.24 5 5 0 .65-.13 1.26-.36 1.83l2.92 2.92c1.51-1.26 2.7-2.89 3.43-4.75-1.73-4.39-6-7.5-11-7.5-1.4 0-2.74.25-3.98.7l2.16 2.16C10.74 7.13 11.35 7 12 7zM2 4.27l2.28 2.28.46.46A11.804 11.804 0 0 0 1 12c1.73 4.39 6 7.5 11 7.5 1.55 0 3.03-.3 4.38-.84l.42.42L19.73 22 21 20.73 3.27 3 2 4.27zM7.53 9.8l1.55 1.55c-.05.21-.08.43-.08.65 0 1.66 1.34 3 3 3 .22 0 .44-.03.65-.08l1.55 1.55c-.67.33-1.41.53-2.2.53-2.76 0-5-2.24-5-5 0-.79.2-1.53.53-2.2zm4.31-.78 3.15 3.15.02-.16c0-1.66-1.34-3-3-3l-.17.01z"/></svg><svg viewBox="0 0 24 24" id="vpn_key" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M12.65 10A5.99 5.99 0 0 0 7 6c-3.31 0-6 2.69-6 6s2.69 6 6 6a5.99 5.99 0 0 0 5.65-4H17v4h4v-4h2v-4H12.65zM7 14c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2z"/></svg><svg viewBox="0 0 24 24" id="wallpaper" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M4 4h7V2H4c-1.1 0-2 .9-2 2v7h2V4zm6 9-4 5h12l-3-4-2.03 2.71L10 13zm7-4.5c0-.83-.67-1.5-1.5-1.5S14 7.67 14 8.5s.67 1.5 1.5 1.5S17 9.33 17 8.5zM20 2h-7v2h7v7h2V4c0-1.1-.9-2-2-2zm0 18h-7v2h7c1.1 0 2-.9 2-2v-7h-2v7zM4 13H2v7c0 1.1.9 2 2 2h7v-2H4v-7z"/></svg><svg viewBox="0 0 24 24" id="warning" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M1 21h22L12 2 1 21zm12-3h-2v-2h2v2zm0-4h-2v-4h2v4z"/></svg><svg viewBox="0 0 24 24" id="warning_copy" xmlns="http://www.w3.org/2000/svg"><path d="M0 0h24v24H0z" fill="none"/><path d="M1 21h22L12 2 1 21zm12-3h-2v-2h2v2zm0-4h-2v-4h2v4z"/></svg><svg viewBox="0 0 24 24" id="widgets" xmlns="http://www.w3.org/2000/svg"><path d="M13 13v8h8v-8h-8zM3 21h8v-8H3v8zM3 3v8h8V3H3zm13.66-1.31L11 7.34 16.66 13l5.66-5.66-5.66-5.65z"/><path d="M0 0h24v24H0z" fill="none"/></svg><svg viewBox="0 0 24 24" id="wifi" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M0 0h24v24H0z"/><path d="m1 9 2 2c4.97-4.97 13.03-4.97 18 0l2-2C16.93 2.93 7.08 2.93 1 9zm8 8 3 3 3-3a4.237 4.237 0 0 0-6 0zm-4-4 2 2a7.074 7.074 0 0 1 10 0l2-2C15.14 9.14 8.87 9.14 5 13z"/></svg><svg viewBox="0 0 24 24" id="wifi_1_bar" xmlns="http://www.w3.org/2000/svg"><path d="M15.53 17.46 12 21l-3.53-3.54c.9-.9 2.15-1.46 3.53-1.46s2.63.56 3.53 1.46Z"/></svg><svg viewBox="0 0 24 24" id="wifi_2_bar" xmlns="http://www.w3.org/2000/svg"><path d="M12 10c3.03 0 5.78 1.23 7.76 3.22l-2.12 2.12A7.967 7.967 0 0 0 12 13c-2.2 0-4.2.9-5.64 2.35l-2.12-2.12C6.22 11.23 8.97 10 12 10Zm0 6c-1.38 0-2.63.56-3.53 1.46L12 21l3.53-3.54A4.98 4.98 0 0 0 12 16Z"/></svg><svg viewBox="0 0 24 24" id="wifi_medium_darkTheme" xmlns="http://www.w3.org/2000/svg"><g fill="none" fill-rule="evenodd"><path d="M0 0h24v24H0z"/><path d="m1 9 2 2c4.97-4.97 13.03-4.97 18 0l2-2C16.93 2.93 7.08 2.93 1 9Z" fill-opacity=".3" fill="#FFF" fill-rule="nonzero"/><path d="m9 17 3 3 3-3a4.237 4.237 0 0 0-6 0ZM5 13l2 2a7.074 7.074 0 0 1 10 0l2-2C15.14 9.14 8.87 9.14 5 13Z" fill-opacity=".8" fill="#FFF" fill-rule="nonzero"/></g></svg><svg viewBox="0 0 24 24" id="wifi_medium_lightTheme" xmlns="http://www.w3.org/2000/svg"><g fill="none" fill-rule="evenodd"><path d="M0 0h24v24H0z"/><path d="m1 9 2 2c4.97-4.97 13.03-4.97 18 0l2-2C16.93 2.93 7.08 2.93 1 9Z" fill-opacity=".1" fill="#000" fill-rule="nonzero"/><path d="m9 17 3 3 3-3a4.237 4.237 0 0 0-6 0ZM5 13l2 2a7.074 7.074 0 0 1 10 0l2-2C15.14 9.14 8.87 9.14 5 13Z" fill-opacity=".6" fill="#000" fill-rule="nonzero"/></g></svg><svg viewBox="0 0 24 24" id="wifi_off" xmlns="http://www.w3.org/2000/svg"><path fill="none" d="M24 .01c0-.01 0-.01 0 0L0 0v24h24V.01zM0 0h24v24H0V0zm0 0h24v24H0V0z"/><path d="M22.99 9C19.15 5.16 13.8 3.76 8.84 4.78l2.52 2.52c3.47-.17 6.99 1.05 9.63 3.7l2-2zm-4 4a9.793 9.793 0 0 0-4.49-2.56l3.53 3.53.96-.97zM2 3.05 5.07 6.1C3.6 6.82 2.22 7.78 1 9l1.99 2c1.24-1.24 2.67-2.16 4.2-2.77l2.24 2.24A9.684 9.684 0 0 0 5 13v.01L6.99 15a7.042 7.042 0 0 1 4.92-2.06L18.98 20l1.27-1.26L3.29 1.79 2 3.05zM9 17l3 3 3-3a4.237 4.237 0 0 0-6 0z"/></svg><svg viewBox="0 0 24 24" id="wifi_strength_darkTheme" xmlns="http://www.w3.org/2000/svg"><g fill="none" fill-rule="evenodd"><path d="M0 0h24v24H0z"/><path d="m1 9 2 2c4.97-4.97 13.03-4.97 18 0l2-2C16.93 2.93 7.08 2.93 1 9ZM9 17l3 3 3-3a4.237 4.237 0 0 0-6 0Z" fill-opacity=".8" fill="#FFF" fill-rule="nonzero"/><path d="m5 13 2 2a7.074 7.074 0 0 1 10 0l2-2C15.14 9.14 8.87 9.14 5 13Z" fill-opacity=".8" fill="#FFF" fill-rule="nonzero"/></g></svg><svg viewBox="0 0 24 24" id="wifi_strength_lightTheme" xmlns="http://www.w3.org/2000/svg"><g fill="none" fill-rule="evenodd"><path d="M0 0h24v24H0z"/><path d="m1 9 2 2c4.97-4.97 13.03-4.97 18 0l2-2C16.93 2.93 7.08 2.93 1 9ZM9 17l3 3 3-3a4.237 4.237 0 0 0-6 0Z" fill-opacity=".6" fill="#000" fill-rule="nonzero"/><path d="m5 13 2 2a7.074 7.074 0 0 1 10 0l2-2C15.14 9.14 8.87 9.14 5 13Z" fill-opacity=".6" fill="#000" fill-rule="nonzero"/></g></svg><svg viewBox="0 0 24 24" id="wifi_weak_darkTheme" xmlns="http://www.w3.org/2000/svg"><g fill="none" fill-rule="evenodd"><path d="M0 0h24v24H0z"/><path d="m1 9 2 2c4.97-4.97 13.03-4.97 18 0l2-2C16.93 2.93 7.08 2.93 1 9Z" fill-opacity=".3" fill="#FFF" fill-rule="nonzero"/><path d="m9 17 3 3 3-3a4.237 4.237 0 0 0-6 0Z" fill-opacity=".8" fill="#FFF" fill-rule="nonzero"/><path d="m5 13 2 2a7.074 7.074 0 0 1 10 0l2-2C15.14 9.14 8.87 9.14 5 13Z" fill-opacity=".3" fill="#FFF" fill-rule="nonzero"/></g></svg><svg viewBox="0 0 24 24" id="wifi_weak_lightTheme" xmlns="http://www.w3.org/2000/svg"><g fill="none" fill-rule="evenodd"><path d="M0 0h24v24H0z"/><path d="m1 9 2 2c4.97-4.97 13.03-4.97 18 0l2-2C16.93 2.93 7.08 2.93 1 9Z" fill-opacity=".1" fill="#000" fill-rule="nonzero"/><path d="m9 17 3 3 3-3a4.237 4.237 0 0 0-6 0Z" fill-opacity=".6" fill="#000" fill-rule="nonzero"/><path d="m5 13 2 2a7.074 7.074 0 0 1 10 0l2-2C15.14 9.14 8.87 9.14 5 13Z" fill-opacity=".1" fill="#000" fill-rule="nonzero"/></g></svg></svg>';class CW{constructor(e){Mt(this,"config");Mt(this,"tokenConfig");Mt(this,"iconSpriteText","");this.config=e,this.loadTokenConfig(),this.loadIconSprite()}getConfig(){return this.config}updateConfig(e){this.config={...this.config,...e}}getTokenConfig(){return this.tokenConfig}getIconSpriteText(){return this.iconSpriteText}getVersion(){return dAe}loadTokenConfig(){try{return this.tokenConfig=vj(fAe),!0}catch(e){return console.error("Failed to load token config:",e),!1}}loadIconSprite(){try{return typeof vM=="string"&&vM.length>0?(this.iconSpriteText=vM,!0):(console.warn("Icon sprite content not found or empty"),!1)}catch(e){return console.error("Failed to load icon sprite:",e),!1}}validateConfig(){try{return!(!this.config||!this.config.container)}catch(e){return console.error("Config validation error:",e),!1}}getRendererType(){return this.config.renderer||"svg"}shouldShowVersion(){return this.config.showVersion!==!1}}const vAe={removeUndefined:!0,removeNull:!1,removeEmptyObjects:!0,removeEmptyArrays:!1,removeEmptyStrings:!1,removeWhitespaceStrings:!1};function HT(n,e={}){const t={...vAe,...e};if(n==null)return n;if(Array.isArray(n))return n.map(i=>HT(i,e)).filter(i=>!gM(i,t));if(typeof n=="object"){const r={};for(const[i,a]of Object.entries(n)){if(gM(a,t))continue;const s=HT(a,e);gM(s,t)||(r[i]=s)}return r}return n}function gM(n,e){return!!(e.removeUndefined&&n===void 0||e.removeNull&&n===null||e.removeEmptyStrings&&typeof n=="string"&&n===""||e.removeWhitespaceStrings&&typeof n=="string"&&n.trim()===""||e.removeEmptyArrays&&Array.isArray(n)&&n.length===0||e.removeEmptyObjects&&typeof n=="object"&&n!==null&&!Array.isArray(n)&&Object.keys(n).length===0)}function KB(n){return HT(n,{removeUndefined:!0,removeNull:!0,removeEmptyObjects:!0,removeEmptyArrays:!0,removeEmptyStrings:!0,removeWhitespaceStrings:!0})}/*!
|
|
332
332
|
* @antv/g-plugin-svg-picker
|
|
333
333
|
* @description A G plugin for picking in SVG
|
|
334
334
|
* @version 2.0.39
|
|
@@ -494,4 +494,4 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
494
494
|
`,tU=(n,e)=>{const t={type:on.FIXED_TOOLBAR,key:on.FIXED_TOOLBAR,position:"bottom-right",items:[{icon:"remove",value:"zoom-out",info:"Zoom Out"},{icon:"add",value:"zoom-in",info:"Zoom In"},{icon:"center_focus_weak",value:"fit-view",info:"Fit View"}],onClick:r=>{switch(r){case"zoom-in":n.zoom(1.5);break;case"zoom-out":n.zoom(.5);break;case"fit-view":n.fitView();break}}};return e?{...t,...e}:t},g1=class g1 extends oi{constructor(t,r){super(t,Object.assign({},g1.defaultOptions,r));Mt(this,"$element",o1.createPluginContainer("toolbar",!1));Mt(this,"onToolbarItemClick",t=>{const{onClick:r}=this.options;if(t.target instanceof Element&&t.target.className.includes("mx-toolbar-item")){const i=t.target.getAttribute("value");r==null||r(i,t.target)}});const i=this.context.canvas.getContainer();this.$element.style.display="flex",i.appendChild(this.$element),o1.insertDOM("mx-toolbar-css","style",{},wOe,document.head),this.$element.addEventListener("click",this.onToolbarItemClick),this.update(r)}async update(t){super.update(t);const{className:r,position:i,style:a}=this.options;this.$element.className=`${Cd} ${r||""}`,Object.assign(this.$element.style,a,xOe.parsePositionToStyle(i)),this.$element.innerHTML=await this.getDOMContent()}destroy(){this.$element.removeEventListener("click",this.onToolbarItemClick),this.$element.remove(),super.destroy()}async getDOMContent(){const t=this.options.items,r=this.context.graph.mxGraph;return t.map(i=>{const{icon:a,iconSrc:s,value:o,info:l=""}=i,u=s||a&&Ys(r,a,"#566060")||"";return`
|
|
495
495
|
<div class="mx-toolbar-item" value="${o}" title="${l}">
|
|
496
496
|
<img src="${u}"/>
|
|
497
|
-
</div>`}).join("")}};Mt(g1,"defaultOptions",{position:"bottom-right",items:[]});let g0=g1;ia(wi.PLUGIN,on.FIXED_TOOLBAR,g0);const nU=(n,e)=>({type:on.GRAPH_BACKGROUND,key:on.GRAPH_BACKGROUND,...e}),p1=class p1 extends oi{constructor(t,r){const i={...p1.defaultOptions,...r};super(t,i);Mt(this,"imageNode");Mt(this,"getEvents",()=>({[Kr.GRAPH_AFTER_SIZE_CHANGE]:this.onGraphSizeChange}));Mt(this,"onGraphSizeChange",t=>{this.setBackgroundImage()});this.bindEvents(),this.update(i)}update(t){super.update(t),this.setBackgroundImage()}setBackgroundImage(){const{url:t,begin:r,width:i,height:a,opacity:s}=this.options,{graph:o}=this.context,l=o.getSize();if(!t)return;const u=new Qa({style:{src:t,x:r.x,y:r.y,width:i||l[0],height:a||l[1],pointerEvents:"none",opacity:s}});this.imageNode&&this.imageNode.destroy(),o.getCanvas().appendChild(u,0),this.imageNode=u}destroy(){var t;(t=this.imageNode)==null||t.destroy(),this.unbindEvents(),super.destroy()}bindEvents(){const{graph:t}=this.context,r=this.getEvents();Object.keys(r).forEach(i=>{t.on(i,r[i])})}unbindEvents(){const{graph:t}=this.context,r=this.getEvents();Object.keys(r).forEach(i=>{t.off(i,r[i])})}};Mt(p1,"defaultOptions",{begin:{x:0,y:0},opacity:1});let p0=p1;ia(wi.PLUGIN,on.GRAPH_BACKGROUND,p0);const EOe=.1,SOe=["x","y","icon","iconSrc","iconWidth","iconHeight","label","labelText","title","titleText","visibility"],MOe=["visibility"],TOe=["x","y","label","labelText","title","titleText","visibility"],AOe=n=>mM(n,"nodes",SOe)||mM(n,"edges",MOe)||COe(n)||mM(n,"combos",TOe)||NOe(n),mM=({current:n,original:e},t,r)=>{var s,o;const i=((s=n.add[t])==null?void 0:s.length)??0,a=((o=n.remove[t])==null?void 0:o.length)??0;return i>0||a>0?!0:OOe(n,e,t,r)},OOe=(n,e,t,r)=>{const i=n.update[t]??[],a=e.update[t]??[];return i.some(s=>{const o=a.find(l=>l.id===s.id);return r.some(l=>_Oe(s,o,l))})},_Oe=(n,e,t)=>{var a,s,o,l;const r=((a=n.style)==null?void 0:a[t])??((s=n.data)==null?void 0:s[t]),i=((o=e==null?void 0:e.style)==null?void 0:o[t])??((l=e==null?void 0:e.data)==null?void 0:l[t]);return r==null&&i==null?!1:kOe(t)?POe(r,i):r!==i},kOe=n=>n==="x"||n==="y",POe=(n,e)=>typeof n!="number"||typeof e!="number"?!1:Math.abs(n-e)>EOe,COe=({current:n,original:e})=>{const t=n.update.edges??[],r=e.update.edges??[];return t.some(i=>{var l,u;const a=r.find(c=>c.id===i.id),s=JSON.stringify(((l=i.style)==null?void 0:l.labels)??[]),o=JSON.stringify(((u=a==null?void 0:a.style)==null?void 0:u.labels)??[]);return s!==o})},NOe=({current:n,original:e})=>{const t=n.update.combos??[],r=e.update.combos??[];return t.some(a=>{var f,d,v,p;if(!(((f=a.id)==null?void 0:f.startsWith("__hull_metadata__"))||((d=a.data)==null?void 0:d._isHullMetadata)===!0))return!1;const o=r.find(g=>g.id===a.id);if(!o)return console.warn("[Hull History] No original found for hull metadata update:",a.id),!0;const l=(v=a.data)==null?void 0:v.hullConfig,u=(p=o==null?void 0:o.data)==null?void 0:p.hullConfig;if(!l||!u)return l!==u;const c=JSON.stringify(l),h=JSON.stringify(u);return c!==h})},ROe=25,rU=(n,e)=>({type:on.HISTORY,key:on.HISTORY,stackSize:(e==null?void 0:e.stackSize)??ROe,beforeAddCommand:AOe});function iU(n){const e=()=>{try{const t=n.getPluginInstance("history");t&&t.clear()}catch{}};return n.on(Kr.GROUP_DRILL_DOWN,e),n.on(Kr.GROUP_DRILL_UP,e),n.on(Kr.GROUP_RESET_DRILL,e),()=>{n.off(Kr.GROUP_DRILL_DOWN,e),n.off(Kr.GROUP_DRILL_UP,e),n.off(Kr.GROUP_RESET_DRILL,e)}}const LOe={type:on.MINIMAP,key:on.MINIMAP,position:"bottom-right",size:[200,150],offset:[0,0]},aU=(n,e)=>{const{key:t,position:r,size:i,offset:a,className:s}={...LOe,...e},o={key:t,type:on.MINIMAP,shape:(l,u)=>{var c;return(c=n.elementController.getElement(l))==null?void 0:c.cloneNode()},containerStyle:{...V0.defaultOptions.containerStyle,transform:`translate(${(a==null?void 0:a[0])||0}px, ${(a==null?void 0:a[1])||0}px)`}};return r&&(o.position=r),i&&(o.size=i),s&&(o.className=s),o},IOe=n=>{var t;const e=n.getPluginInstance(on.MINIMAP);(t=n.container.querySelectorAll(".g6-minimap"))==null||t.forEach(r=>{r.remove()}),e.canvas.destroy(),e.canvas=void 0};var tf=(n=>(n.HULL_CREATED="hull:created",n.HULL_UPDATED="hull:updated",n.HULL_REMOVED="hull:removed",n))(tf||{});function yy(n){return`hull_${n}_${Date.now()}_${Math.random().toString(36).substring(2,9)}`}function sU(n,e){return{key:n,hullConfig:e,affectedNodeIds:e.members||[],timestamp:Date.now(),operationId:yy("create")}}function oU(n,e,t,r){const i=Array.from(new Set([...e.members||[],...t.members||[]]));return{key:n,previousConfig:e,updatedConfig:t,updateOptions:r,affectedNodeIds:i,timestamp:Date.now(),operationId:yy("update")}}function SO(n,e){return{key:n,removedConfig:e,affectedNodeIds:e.members||[],timestamp:Date.now(),operationId:yy("remove")}}const l1="__hull_metadata__",MO="_isHullMetadata";function Dc(n){return`${l1}${n}`}function DOe(n){if(n.startsWith(l1))return n.substring(l1.length)}function BOe(n){return n.startsWith(l1)}function by(n){var e,t,r;return((e=n==null?void 0:n.data)==null?void 0:e[MO])===!0&&typeof((t=n==null?void 0:n.data)==null?void 0:t.hullKey)=="string"&&typeof((r=n==null?void 0:n.data)==null?void 0:r.hullConfig)=="object"}function lU(n){return{id:Dc(n.key),data:{[MO]:!0,hullKey:n.key,hullConfig:{...n}},style:{visibility:"hidden"}}}function uU(n,e,t){const r=Dc(e);n.updateComboData([{id:r,data:{[MO]:!0,hullKey:e,hullConfig:{...t}}}])}function cU(n,e){const t=Dc(e);n.removeComboData([t])}function FOe(n,e){var i;const t=Dc(e),r=(i=n.context)==null?void 0:i.model;return(r==null?void 0:r.hasCombo(t))||!1}function xy(n,e){const t=Dc(e),r=n.getComboData(t);if(r&&by(r))return r}function TO(n){const e=new Map,t=n.getComboData()||[];for(const r of t)if(by(r)){const{hullKey:i,hullConfig:a}=r.data;e.set(i,a)}return e}function zOe(n){return Array.from(TO(n).keys())}function $Oe(n,e,t){for(const r of e){let i;if(typeof r=="function")try{i=r.call(n)}catch{i=r}else i=r;if(!i||typeof i!="object"||i.type!=="hull")continue;const a=i.key,s=t.get(a);if(!s)return!0;const o={members:i.members,padding:i.padding,corner:i.corner,concavity:i.concavity,lineDash:i.lineDash,fill:i.fill,fillOpacity:i.fillOpacity,stroke:i.stroke,strokeOpacity:i.strokeOpacity,lineWidth:i.lineWidth},l=fU(s),u=JSON.stringify({members:o.members,padding:o.padding,corner:o.corner,fill:o.fill,fillOpacity:o.fillOpacity,stroke:o.stroke,strokeOpacity:o.strokeOpacity}),c=JSON.stringify({members:l.members,padding:l.padding,corner:l.corner,fill:l.fill,fillOpacity:l.fillOpacity,stroke:l.stroke,strokeOpacity:l.strokeOpacity});if(u!==c)return!0}return!1}function hU(n){const e=TO(n),t=n.getPlugins()||[],r=new Set;for(const o of t){let l;if(typeof o=="function")try{l=o.call(n)}catch{l=o}else l=o;l&&typeof l=="object"&&l.type==="hull"&&l.key&&r.add(l.key)}const i=new Set(e.keys());if(!(i.size!==r.size||Array.from(i).some(o=>!r.has(o))||$Oe(n,t,e)))return;const s=[];for(const o of t){let l;if(typeof o=="function")try{l=o.call(n)}catch{l=o}else l=o;(!l||typeof l!="object"||l.type!=="hull")&&s.push(o)}for(const[,o]of e)s.push(fU(o));n.setPlugins(s),n.render()}function fU(n){const{key:e,members:t,style:r={},padding:i=10,corner:a="rounded",concavity:s=1/0,lineDash:o}=n;return{type:"hull",key:e,members:t,padding:i,corner:a,concavity:s,lineDash:o,fill:r.fill||"lightblue",fillOpacity:r.fillOpacity??.2,stroke:r.stroke||"blue",strokeOpacity:r.strokeOpacity??.2,lineWidth:r.lineWidth??1}}function GOe(n){const t=(n.getComboData()||[]).filter(r=>by(r)).map(r=>r.id);t.length>0&&n.removeComboData(t)}const Zl="hull",dU={fill:"lightblue",fillOpacity:.2,stroke:"blue",strokeOpacity:.4,lineWidth:1},Wu={fill:"#000",fontSize:14,fontFamily:"Roboto, sans-serif",fontWeight:"normal",padding:[2,8],background:{show:!0,radius:4,opacity:.6}},vU={padding:10,corner:"rounded",concavity:1/0},Kl=new Map;function gU(n,e){for(const t of e){const r=Kl.get(t);if(r&&r!==n)throw new Error(`Node '${t}' already belongs to hull '${r}'. Remove it from '${r}' before adding to '${n}'.`)}}function wy(n,e){gU(n,e);for(const t of e)Kl.set(t,n)}function VOe(n,e){for(const t of e)Kl.get(t)===n&&Kl.delete(t)}function Ey(n){for(const[e,t]of Kl.entries())t===n&&Kl.delete(e)}function HOe(n){return Kl.get(n)}function AO(n){if(!(n!=null&&n.confirm)&&!(n!=null&&n.force))throw new Error("Hull removal requires confirmation. Set { confirm: true } or { force: true } to proceed.")}function qOe(n){if(!(n!=null&&n.confirm))throw new Error("Removing hull with members requires confirmation. Set { confirm: true } to proceed. This operation will delete all member nodes and their connected edges.")}function jOe(n,e){var r,i,a,s;return n?n.show??!0?{label:!0,labelText:n.text,labelCloseToPath:!0,labelAutoRotate:!0,labelFill:n.fill??Wu.fill,labelFontSize:n.fontSize??Wu.fontSize,labelFontFamily:n.fontFamily??Wu.fontFamily,labelFontWeight:n.fontWeight??Wu.fontWeight,labelPadding:n.padding??Wu.padding,...n.offsetX!==void 0&&{labelOffsetX:n.offsetX},...n.offsetY!==void 0&&{labelOffsetY:n.offsetY},...(((r=n.background)==null?void 0:r.show)??(e==null?void 0:e.show))&&{labelBackground:!0,labelBackgroundOpacity:((i=n.background)==null?void 0:i.opacity)??(e==null?void 0:e.opacity),labelBackgroundFill:((a=n.background)==null?void 0:a.fill)??(e==null?void 0:e.fill),labelBackgroundRadius:((s=n.background)==null?void 0:s.radius)??(e==null?void 0:e.radius)}}:{label:!1}:{}}const pU=(n,e)=>{if(!e)throw new Error("HullOptions is required");const{key:t,members:r}=e;if(!t)throw new Error("Hull key is required");return r&&r.length>0&&wy(t,r),Sy(e)};function WOe(){Kl.clear()}function Sy(n){const e={...vU,...n},{key:t,members:r,style:i,label:a,padding:s,corner:o,concavity:l,lineDash:u}=e,c={...dU,...i};return{type:Zl,key:t,members:r,padding:s,corner:o,concavity:l,lineDash:u,fill:c.fill,fillOpacity:c.fillOpacity,stroke:c.stroke,strokeOpacity:c.strokeOpacity,lineWidth:c.lineWidth,...jOe(a,Wu.background)}}function mU(n){const e={key:n.key,members:n.members,style:{fill:n.fill,fillOpacity:n.fillOpacity,stroke:n.stroke,strokeOpacity:n.strokeOpacity,lineWidth:n.lineWidth},padding:n.padding,corner:n.corner,concavity:n.concavity,lineDash:n.lineDash},t=n.labelText;return t&&(e.label={text:t.toString(),fill:n.labelFill,fontSize:n.labelFontSize,fontFamily:n.labelFontFamily,fontWeight:n.labelFontWeight,offsetX:n.labelOffsetX,offsetY:n.labelOffsetY,padding:n.labelPadding},n.labelBackground&&(e.label.background={show:n.labelBackground,fill:n.labelBackgroundFill,opacity:n.labelBackgroundOpacity,radius:n.labelBackgroundRadius})),e}function UOe(n){return(n.getPlugins()||[]).filter(t=>{if(typeof t=="function"){const r=t();return(r==null?void 0:r.type)===Zl}return(t==null?void 0:t.type)===Zl})}async function yU(n,e){const{key:t,members:r}=e;if(UOe(n).some(u=>u.key===t))throw new Error(`Hull '${t}' already exists. Use updateHull instead.`);r&&r.length>0&&wy(t,r);const s=lU(e);n.addComboData([s]);const o=Sy(e);n.setPlugins(u=>[...u,o]);const l=sU(t,e);n.emit(tf.HULL_CREATED,l),await n.render()}async function bU(n,e,t){AO(t);const r=xy(n,e),i=(r==null?void 0:r.data.hullConfig)||ev(n,e);if(Ey(e),cU(n,e),n.setPlugins(a=>a.filter(s=>{if(typeof s=="function"){const o=s();return(o==null?void 0:o.key)!==e}return(s==null?void 0:s.key)!==e})),i){const a=SO(e,i);n.emit(tf.HULL_REMOVED,a)}await n.render()}async function xU(n,e,t){if(e.length===0)return;AO(t);const r=[];for(const a of e){const s=xy(n,a),o=(s==null?void 0:s.data.hullConfig)||ev(n,a);o&&r.push({key:a,config:o}),Ey(a)}const i=e.map(a=>Dc(a));n.removeComboData(i),n.setPlugins(a=>a.filter(s=>{if(typeof s=="function"){const o=s();return!(o!=null&&o.key)||!e.includes(o.key)}return!(s!=null&&s.key)||!e.includes(s.key)}));for(const{key:a,config:s}of r){const o=SO(a,s);n.emit(tf.HULL_REMOVED,o)}await n.render()}async function wU(n,e,t){if(!(n.getPlugins()||[]).some(u=>{const c=typeof u=="function"?u():u;return(c==null?void 0:c.type)===Zl&&(c==null?void 0:c.key)===e}))throw new Error(`Hull '${e}' not found.`);const a=xy(n,e),s=(a==null?void 0:a.data.hullConfig)||ev(n,e);if(!s)throw new Error(`Hull '${e}' metadata not found.`);t.members&&(Ey(e),wy(e,t.members));const o={key:e,members:t.members||s.members,style:{...s.style,...t.style},padding:t.padding??s.padding,corner:t.corner??s.corner,concavity:t.concavity??s.concavity,lineDash:t.lineDash??s.lineDash};t.label&&s.label?o.label={show:t.label.show??s.label.show,text:t.label.text??s.label.text,fontSize:t.label.fontSize??s.label.fontSize,fill:t.label.fill??s.label.fill,fontFamily:t.label.fontFamily??s.label.fontFamily,fontWeight:t.label.fontWeight??s.label.fontWeight,padding:t.label.padding??s.label.padding,offsetX:t.label.offsetX??s.label.offsetX,offsetY:t.label.offsetY??s.label.offsetY,background:t.label.background??s.label.background}:t.label&&t.label.text?o.label=t.label:o.label=s.label,uU(n,e,o),n.setPlugins(u=>u.map(c=>{const h=typeof c=="function"?c():c;return(h==null?void 0:h.type)===Zl&&(h==null?void 0:h.key)===e?Sy(o):c}));const l=oU(e,s,o,t);n.emit(tf.HULL_UPDATED,l),await n.render()}function ev(n,e){const t=n.getPlugins()||[];for(const r of t){const i=typeof r=="function"?r():r;if((i==null?void 0:i.type)===Zl&&(i==null?void 0:i.key)===e)return mU(i)}}function EU(n){const e=n.getPlugins()||[],t=[];for(const r of e){const i=typeof r=="function"?r():r;(i==null?void 0:i.type)===Zl&&t.push(mU(i))}return t}const YOe=(n,e)=>{const t=n.getThemeTokens(),r={type:on.TOOLTIP,key:on.RICH_TOOLTIP,enterable:!0,style:{".tooltip":{padding:"12px 16px","border-radius":"4px","box-shadow":"0px 2px 6px 2px #0000001F, 0px 1px 2px 0px #00000029","font-size":"12px","font-weight":"400","line-height":"16px","background-color":t["background-neutral-default"],color:t["text-neutral-default"]}}};if(!e)return r;const{enable:i,itemTypes:a,render:s,trigger:o}=e,l=r;if(s&&(l.getContent=u=>s(u)),o==="click"&&(l.trigger="click"),a){const u=c=>{switch(c.targetType){case"node":return a.includes("node");case"edge":return a.includes("edge");case"combo":return a.includes("group")}return!0};if(i!==void 0){const c=typeof i=="function"?i:()=>i;l.enable=h=>c(h)&&u(h)}else l.enable=u}else i!==void 0&&(l.enable=i);return l};var SU=(n=>(n.LEFT_EDGE="left-edge",n.RIGHT_EDGE="right-edge",n.TOP_EDGE="top-edge",n.BOTTOM_EDGE="bottom-edge",n.HORIZONTAL_CENTER="horizontal-center",n.VERTICAL_CENTER="vertical-center",n))(SU||{});const XOe={type:on.SNAPLINE,key:on.SNAPLINE},cs=(n,e)=>Math.abs(n-e),m1=class m1 extends oi{constructor(t,r){super(t,{...m1.defaultOptions,...r});Mt(this,"verticalLine");Mt(this,"horizontalLine");Mt(this,"verticalState",{isSnapped:!1,isDisabled:!1,timer:null});Mt(this,"horizontalState",{isSnapped:!1,isDisabled:!1,timer:null});Mt(this,"calcSnaplineMetadata",(t,r)=>{const{tolerance:i=20}=this.options,{min:[a,s],max:[o,l],center:[u,c]}=r;let h=null,f=null,d=null,v=null,p=null,g=null,m=null,x=null;return this.getNodes().some(w=>{if(Er(t.id,w.id))return!1;const E=w.getRenderBounds(),{min:[M,S],max:[T,A],center:[C,B]}=E;return h===null&&(cs(C,u)<i?(h=C,v="center"):cs(M,a)<i?(h=M,v="left"):cs(M,o)<i?(h=M,v="right"):cs(T,o)<i?(h=T,v="right"):cs(T,a)<i&&(h=T,v="left"),h!==null&&(f=Math.min(S,s),d=Math.max(A,l))),p===null&&(cs(B,c)<i?(p=B,x="center"):cs(S,s)<i?(p=S,x="top"):cs(S,l)<i?(p=S,x="bottom"):cs(A,l)<i?(p=A,x="bottom"):cs(A,s)<i&&(p=A,x="top"),p!==null&&(g=Math.min(M,a),m=Math.max(T,o))),h!==null&&p!==null}),{verticalX:h,verticalMinY:f,verticalMaxY:d,verticalAlignType:v,horizontalY:p,horizontalMinX:g,horizontalMaxX:m,horizontalAlignType:x}});Mt(this,"onDragStart",()=>{this.initSnapline(),this.resetSnapState(this.verticalState),this.resetSnapState(this.horizontalState)});Mt(this,"onDrag",t=>{const r=t.target,i=r.getRenderBounds();this.hideSnapline();const a=this.calcSnaplineMetadata(r,i);this.updateSnapline(a),this.options.autoSnap&&this.applySnap(r,i,a)});Mt(this,"onDragEnd",()=>{this.hideSnapline(),this.resetSnapState(this.verticalState),this.resetSnapState(this.horizontalState)});this.bindEvents()}initSnapline(){const{verticalLineStyle:t,horizontalLineStyle:r}=this.options,i=this.context.canvas.getLayer("transient");this.verticalLine||(this.verticalLine=new sl({style:{x1:0,y1:0,x2:0,y2:0,...t,visibility:"hidden"}}),i.appendChild(this.verticalLine)),this.horizontalLine||(this.horizontalLine=new sl({style:{x1:0,y1:0,x2:0,y2:0,...r,visibility:"hidden"}}),i.appendChild(this.horizontalLine))}getNodes(){const{graph:t,element:r}=this.context,{filter:i}=this.options,a=[],s=t.getNodeData();for(const o of s)try{const l=r==null?void 0:r.getElement(o.id);l&&a.push(l)}catch{continue}return a.filter(o=>i?i(o):!0)}hideSnapline(){this.verticalLine&&(this.verticalLine.style.visibility="hidden"),this.horizontalLine&&(this.horizontalLine.style.visibility="hidden")}getLineWidth(t){const{graph:r}=this.context,i=(t==null?void 0:t.lineWidth)||1;return Number(i)/r.getZoom()}updateSnapline(t){const{offset:r=20,verticalLineStyle:i,horizontalLineStyle:a}=this.options,{verticalX:s,verticalMinY:o,verticalMaxY:l,horizontalY:u,horizontalMinX:c,horizontalMaxX:h}=t;s!==null&&o!==null&&l!==null&&this.verticalLine&&this.verticalLine.attr({x1:s,y1:o-r,x2:s,y2:l+r,lineWidth:this.getLineWidth(i),visibility:"visible"}),u!==null&&c!==null&&h!==null&&this.horizontalLine&&this.horizontalLine.attr({x1:c-r,y1:u,x2:h+r,y2:u,lineWidth:this.getLineWidth(a),visibility:"visible"})}setSnapTimer(t,r,i){r<=0||(t.timer!==null&&clearTimeout(t.timer),t.timer=window.setTimeout(()=>{i(),t.timer=null},r))}resetSnapState(t){t.isSnapped=!1,t.isDisabled=!1,t.timer!==null&&(clearTimeout(t.timer),t.timer=null)}handleSnapLogic(t,r,i,a,s,o){if(r===null||i===void 0||a===null)return this.resetSnapState(t),0;if(r>s&&(t.isDisabled=!1),r<=s&&!t.isDisabled){const u=a-i;return t.isSnapped||(t.isSnapped=!0,this.setSnapTimer(t,o,()=>{t.isDisabled=!0,t.isSnapped=!1})),u}else return t.isSnapped=!1,0}clearSnapTimers(){this.verticalState.timer!==null&&(clearTimeout(this.verticalState.timer),this.verticalState.timer=null),this.horizontalState.timer!==null&&(clearTimeout(this.horizontalState.timer),this.horizontalState.timer=null)}applySnap(t,r,i){const{graph:a}=this.context,{tolerance:s=20,snapDuration:o=300}=this.options,{min:[l,u],max:[c,h],center:[f,d]}=r;let v,p=null;if(i.verticalX!==null&&i.verticalAlignType){switch(i.verticalAlignType){case"center":v=f;break;case"left":v=l;break;case"right":v=c;break}v!==void 0&&(p=cs(i.verticalX,v))}let g,m=null;if(i.horizontalY!==null&&i.horizontalAlignType){switch(i.horizontalAlignType){case"center":g=d;break;case"top":g=u;break;case"bottom":g=h;break}g!==void 0&&(m=cs(i.horizontalY,g))}const x=this.handleSnapLogic(this.verticalState,p,v,i.verticalX,s,o),w=this.handleSnapLogic(this.horizontalState,m,g,i.horizontalY,s,o);(x!==0||w!==0)&&a.translateElementBy({[t.id]:[x,w]})}bindEvents(){const{graph:t}=this.context;t.on($n.DRAG_START,this.onDragStart),t.on($n.DRAG,this.onDrag),t.on($n.DRAG_END,this.onDragEnd)}unbindEvents(){const{graph:t}=this.context;t.off($n.DRAG_START,this.onDragStart),t.off($n.DRAG,this.onDrag),t.off($n.DRAG_END,this.onDragEnd)}destroy(){var t,r;this.clearSnapTimers(),this.unbindEvents(),(t=this.verticalLine)==null||t.destroy(),(r=this.horizontalLine)==null||r.destroy(),super.destroy()}};Mt(m1,"defaultOptions",{tolerance:20,offset:20,autoSnap:!0,snapDuration:100});let u1=m1;ia(wi.PLUGIN,"boundary-snapline",u1);const MU=(n,e)=>{const{key:t,type:r,...i}={...XOe,...e},a={stroke:"#FF5449",lineWidth:1,lineDash:5};return{...i,type:"boundary-snapline",key:t||on.SNAPLINE,tolerance:i.tolerance||10,offset:i.offset||20,autoSnap:i.autoSnap??!0,horizontalLineStyle:a,verticalLineStyle:a}},TU=(n,e)=>{const t=n.getThemeTokens(),r={type:on.TOOLTIP,key:on.TOOLTIP,enterable:!0,style:{".tooltip":{padding:"4px 8px","border-radius":"4px","box-shadow":"none","font-size":"12px","font-weight":"400","line-height":"16px","background-color":t["background-neutral-inverse"],"min-width":"auto",color:t["text-neutral-inverse"]}}};if(!e)return r;const{enable:i,itemTypes:a,content:s}=e,o=r;if(s&&(o.getContent=l=>`${s(l)}`),a){const l=u=>{switch(u.targetType){case"node":return a.includes("node");case"edge":return a.includes("edge");case"combo":return a.includes("group")}return!0};if(i!==void 0){const u=typeof i=="function"?i:()=>i;o.enable=c=>u(c)&&l(c)}else o.enable=l}else i!==void 0&&(o.enable=i);return o},ZOe=[{type:on.GRAPH_BACKGROUND}],AU=[on.HISTORY,on.TOOLTIP,on.MINIMAP,on.SNAPLINE],WT={[on.CONTEXT_MENU]:XW,[on.ELEMENT_TOOLBAR]:eU,[on.FIXED_TOOLBAR]:tU,[on.GRAPH_BACKGROUND]:nU,[on.HISTORY]:rU,[on.MINIMAP]:aU,[on.HULL]:pU,[on.RICH_TOOLTIP]:YOe,[on.SNAPLINE]:MU,[on.TOOLTIP]:TU},hp=(n,e)=>{if(typeof n=="string"){const t=WT[n];return t?t(e==null?void 0:e.graph):n}if(n&&typeof n=="object"&&"type"in n){const t=WT[n.type];return t?t(e==null?void 0:e.graph,n):n}return n},OU=(n,e)=>{var o;const t=(e==null?void 0:e.theme)||"light",r=e==null?void 0:e.graph,i=(o=r==null?void 0:r.tokenConfig)==null?void 0:o[t],a=ZOe.map(l=>nr(l)&&l.type===on.GRAPH_BACKGROUND&&i?{...l,background:i["background-neutral-default"]}:hp(l,e)),s=n?n.map(l=>hp(l,e)):AU.map(l=>hp(l,e));return{plugins:[...a,...s]}},_U=n=>{if(!n)return[];const e=[],t=(r,i,a)=>{i===!1||i===void 0||(i===!0?e.push(r):typeof i=="object"&&e.push({type:r,...i}))};return t(on.HISTORY,n.history),t(on.CONTEXT_MENU,n.contextMenu),t(on.TOOLTIP,n.tooltip),t(on.RICH_TOOLTIP,n.richTooltip),t(on.FIXED_TOOLBAR,n.fixedToolbar),t(on.ELEMENT_TOOLBAR,n.elementToolbar),t(on.GRAPH_BACKGROUND,n.graphBackground),t(on.MINIMAP,n.minimap),t(on.HULL,n.hull),t(on.SNAPLINE,n.snapline),e},oF=n=>{const e={};return n.forEach(t=>{if(typeof t=="string"){const r=t;r in Zp&&(e[r]=!0)}else if(t&&typeof t=="object"&&"type"in t){const{type:r,...i}=t,a=r;a in Zp&&(e[a]=Object.keys(i).length>0?i:!0)}}),e},OO=(n,e)=>{const t={...uF,...n.behaviors},r=GW(t),i={...Zp,...n.plugins},a=_U(i);return{...KOe(n),...JOe(n.container),...QOe(n.renderer),...$W(r),...YW(n.layouts,e),...OU(a,e),...r_e(n.animation),...e_e(n.data),...t_e(n.data,n.layouts),...n_e(n.theme)}},KOe=n=>{const{width:e,height:t,bgColor:r,autoSize:i,autoFitMode:a,theme:s,zoomRange:o}=n,l={autoResize:!0};return e&&(l.width=e),t&&(l.height=t),r&&(l.background=r),i!==void 0&&(l.autoResize=i),a&&(l.autoFit=a),o&&(l.zoomRange=o),s&&(l.theme=s),l},JOe=n=>({container:un(n)?document.getElementById(n):n}),QOe=n=>({renderer:()=>n==="svg"?new eOe:new Mh}),e_e=n=>{var e,t,r;return n?{data:{nodes:(e=n.nodes)==null?void 0:e.map(i=>d0(i,{full:!0})),edges:aO(((t=n.edges)==null?void 0:t.map(i=>zl(i)))||[]),combos:(r=n.groups)==null?void 0:r.map(i=>zd(i,{full:!0}))}}:{}},t_e=(n,e)=>{var s;const t=(e==null?void 0:e.tree)!==!1&&(e==null?void 0:e.tree)!==void 0;if(!n||!e||!t)return{};const r=((s=n.nodes)==null?void 0:s.map(o=>d0(o)))||[];return{data:pj(r).map(o=>A4e(o)).reduce((o,l)=>{var u,c,h;return(u=o.nodes)==null||u.push(...l.nodes||[]),(c=o.edges)==null||c.push(...l.edges||[]),(h=o.combos)==null||h.push(...l.combos||[]),o},{nodes:[],edges:[],combos:[]})}},n_e=n=>n?{theme:gj(n)}:{},r_e=n=>{const e={animation:!1};return n!==void 0&&(e.animation=n),e},i_e=()=>({transform:(n,e)=>{var t,r,i;return{nodes:((t=n.nodes)==null?void 0:t.map(a=>d0(a,e)))||[],edges:((r=n.edges)==null?void 0:r.map(a=>zl(a)))||[],combos:((i=n.groups)==null?void 0:i.map(a=>zd(a,e)))||[]}},reverse:(n,e)=>{throw new Error("Reverse transformation not implemented yet")}}),a_e=(n,e)=>n.map(t=>OO(t,e)),Lh={"normalize-data":n=>({nodes:n.nodes||[],edges:n.edges||[],combos:n.combos||n.groups||[]}),"process-parallel-edges":(n,e)=>n.edges?{...n,edges:aO(n.edges)}:n,"map-business-data":(n,e)=>n,"filter-hidden-nodes":n=>{var e,t;return{...n,nodes:((e=n.nodes)==null?void 0:e.filter(r=>!r.hidden))||[],edges:((t=n.edges)==null?void 0:t.filter(r=>{var a;const i=new Set(((a=n.nodes)==null?void 0:a.filter(s=>s.hidden).map(s=>s.id))||[]);return!i.has(r.source)&&!i.has(r.target)}))||[]}},"validate-data":n=>{if(!n.nodes||!Array.isArray(n.nodes))throw new Error("Invalid nodes data");if(!n.edges||!Array.isArray(n.edges))throw new Error("Invalid edges data");return n}},My=n=>{const{transforms:e,context:t}=n;return r=>e.reduce((i,a)=>{if(typeof a=="string"){const s=Lh[a];if(!s)throw new Error(`Unknown transform: ${a}`);return s(i,t)}if(typeof a=="function")return a(i,t);if(s_e(a))return(Lh[a.name]||a.transform)(i,{...t,...a.options});throw new Error("Invalid transform configuration")},r)},_O=(n,e)=>{try{return e(n)}catch(t){throw console.error("Transform pipeline error:",t),t}},kU=(n,e)=>{Lh[n]=e},PU=n=>n in Lh,CU=()=>Object.keys(Lh),NU=n=>{delete Lh[n]};function s_e(n){return n&&typeof n=="object"&&"name"in n&&"transform"in n}const kO=(n=[],e)=>My({transforms:["validate-data","normalize-data","filter-hidden-nodes","process-parallel-edges","map-business-data",...n],context:e}),RU=n=>My({transforms:["normalize-data","map-business-data"],context:n}),o_e={create:My,execute:_O,register:kU,unregister:NU,isRegistered:PU,getRegistered:CU,createStandard:kO,createMinimal:RU};class LU{constructor(){Mt(this,"pipeline",kO())}transformToG6Data(e){var r,i,a;const t={nodes:((r=e.nodes)==null?void 0:r.map(s=>d0(s,{full:!0})))||[],edges:((i=e.edges)==null?void 0:i.map(s=>zl(s)))||[],combos:((a=e.groups)==null?void 0:a.map(s=>zd(s,{full:!0})))||[]};return _O(t,this.pipeline)}transformToMxData(e){var t,r,i;return{nodes:((t=e.nodes)==null?void 0:t.map(a=>BMe(a)))||[],edges:((r=e.edges)==null?void 0:r.map(a=>Tj(a)))||[],groups:((i=e.combos)==null?void 0:i.map(a=>MMe(a)))||[]}}addNodes(e){return e.map(t=>d0(t,{full:!0}))}addEdges(e){return e.map(t=>zl(t))}addGroups(e){return e.map(t=>zd(t,{full:!0}))}updateGroups(e){const t=e.map(r=>zd(r,{full:!1}));return KB(t)}updateEdges(e){const t=e.map(r=>zl(r));return KB(t)}updatePipeline(e){this.pipeline=e}validateData(e){try{return!(!e||e.nodes&&!Array.isArray(e.nodes)||e.edges&&!Array.isArray(e.edges)||e.groups&&!Array.isArray(e.groups))}catch(t){return console.error("Data validation error:",t),!1}}normalizeData(e){return{nodes:e.nodes||[],edges:e.edges||[],groups:e.groups||e.combos||[]}}}var Yg={exports:{}},lF;function l_e(){if(lF)return Yg.exports;lF=1;var n=[],e=[],t="insert-css: You need to provide a CSS string. Usage: insertCss(cssString[, options]).";function r(a,s){if(s=s||{},a===void 0)throw new Error(t);var o=s.prepend===!0?"prepend":"append",l=s.container!==void 0?s.container:document.querySelector("head"),u=n.indexOf(l);u===-1&&(u=n.push(l)-1,e[u]={});var c;return e[u]!==void 0&&e[u][o]!==void 0?c=e[u][o]:(c=e[u][o]=i(),o==="prepend"?l.insertBefore(c,l.childNodes[0]):l.appendChild(c)),a.charCodeAt(0)===65279&&(a=a.substr(1,a.length)),c.styleSheet?c.styleSheet.cssText+=a:c.textContent+=a,c}function i(){var a=document.createElement("style");return a.setAttribute("type","text/css"),a}return Yg.exports=r,Yg.exports.insertCss=r,Yg.exports}var u_e=l_e();class PO{constructor(e){Mt(this,"_graph");Mt(this,"config");this.config=e}get graph(){return this._graph}initialize(e){const t=OO(this.config,{graph:e});this._graph=new lj(t),this._graph.mxGraph=e}render(){if(!this._graph)throw new Error("Graph not initialized. Call initialize() first.");this._graph.render()}destroy(){this._graph&&this._graph.destroy()}updateConfig(e){this.config={...this.config,...e}}}class IU{constructor(e,t,r,i){this.graph=e,this.dataManager=t,this.dataController=r,this.context=i}getGroupData(e){var r;if(typeof e=="string"){const i=this.graph.getComboData(e);return i?(r=this.dataManager.transformToMxData({nodes:[],edges:[],combos:[i]}).groups)==null?void 0:r[0]:void 0}if(En(e)){const i=this.graph.getComboData(e);return i?this.dataManager.transformToMxData({nodes:[],edges:[],combos:i}).groups:[]}const t=this.graph.getComboData();return this.dataManager.transformToMxData({nodes:[],edges:[],combos:t||[]}).groups}getChildrenData(e,t={}){const{level:r}=t,i=(s,o=0)=>!$t(r)&&r>0&&o>=r?s:s.map(u=>{if(this.dataController.isCombo(u.id)){const c=this.graph.getChildrenData(u.id);return[u,...i(c,o+1)]}return u}).flat(),a=this.graph.getChildrenData(e);return r===1?a.map(s=>{var o,l;return s.type==="node"?(o=this.dataManager.transformToMxData({nodes:[s],edges:[],combos:[]}).nodes)==null?void 0:o[0]:s.type==="combo"?(l=this.dataManager.transformToMxData({nodes:[],edges:[],combos:[s]}).groups)==null?void 0:l[0]:s}):i(a).map(s=>{var o,l;return s.type==="node"?(o=this.dataManager.transformToMxData({nodes:[s],edges:[],combos:[]}).nodes)==null?void 0:o[0]:s.type==="combo"?(l=this.dataManager.transformToMxData({nodes:[],edges:[],combos:[s]}).groups)==null?void 0:l[0]:s})}addGroupInternal(e){const t=En(e)?e:[e],r=this.dataManager.addGroups(t);this.graph.addComboData(r)}updateGroup(e){var i;const t=En(e)?e:[e];for(const a of t){const s=this.context.getElementType(a.id);if(!s)throw new Error(`Group not found: ${a.id}`);if(s!=="group")throw new Error(`Element is not a group: ${a.id}`);if(((i=this.graph.getElementState(a.id))==null?void 0:i[0])==="locked")throw new Error(`Cannot update locked group: ${a.id}`)}const r=this.dataManager.updateGroups(t);this.graph.updateComboData(r)}removeGroupInternal(e){const t=En(e)?e:[e];this.graph.removeComboData(t)}async expandGroup(e){const t=En(e)?e:[e];for(const r of t)await this.graph.expandElement(r);t.length>1&&this.graph.layout()}async collapseGroup(e){const t=En(e)?e:[e];for(const r of t)await this.graph.collapseElement(r);t.length>1&&this.graph.layout()}getElementDimensions(e){try{if(this.context.isElementShow(e)){const r=this.graph.getElementRenderBounds(e);if(r){const i=r.max[0]-r.min[0],a=r.max[1]-r.min[1];if(i>0&&a>0)return{width:i,height:a}}}}catch{}return this.context.getElementType(e)==="group"?{width:Dl,height:Dl}:{width:a1,height:a1}}createGroup(e,t){var g,m,x,w;const r=mj(e);if(!r.isValid)throw new Error(r.error);const i=[];let a,s=!0;for(const E of e){const M=this.context.getElementType(E);if(!M)throw new Error(`Element not found: ${E}`);let S,T;if(M==="node"?(S=(g=this.context.getNodeData(E).config)==null?void 0:g.parentId,T=(m=this.graph.getElementState(E))==null?void 0:m[0]):M==="group"&&(S=(x=this.getGroupData(E).config)==null?void 0:x.parentId,T=(w=this.graph.getElementState(E))==null?void 0:w[0]),s)a=S,s=!1;else if(a!==S)throw new Error("Selected elements must be from the same parent group");i.push({id:E,type:M,state:T,parentId:S})}const o=zT(i,"create");if(!o.isValid)throw new Error(o.error);const l=(t==null?void 0:t.id)||`group_${Date.now()}_${Math.random().toString(36).substring(2,11)}`,u=(t==null?void 0:t.type)||"device-group",c=i.map(E=>{var M,S,T,A;if(E.type==="node"){const C=this.context.getNodeData(E.id),B=this.getElementDimensions(E.id);return{id:E.id,x:((S=(M=C.config)==null?void 0:M.point)==null?void 0:S.x)||0,y:((A=(T=C.config)==null?void 0:T.point)==null?void 0:A.y)||0,width:B.width,height:B.height}}else{const B=this.getChildrenData(E.id).map(z=>{var H,W,ee,X;const G=this.getElementDimensions(z.id);return{id:z.id,x:((W=(H=z.config)==null?void 0:H.point)==null?void 0:W.x)||0,y:((X=(ee=z.config)==null?void 0:ee.point)==null?void 0:X.y)||0,width:G.width,height:G.height}}),D=Qp(B)||{x:0,y:0,width:100,height:100};return{id:E.id,x:D.x,y:D.y,width:D.width,height:D.height}}}),h=Qp(c),f=h?wj(h,(t==null?void 0:t.padding)||20):null,d={id:l,config:{type:u,parentId:a,point:f?{x:f.x,y:f.y}:void 0,...t}},v=new Map;for(const E of i)v.set(E.id,E.parentId);this.addGroupInternal(d);for(const E of e){const M=this.context.getElementType(E);M==="node"?this.context.updateNode({id:E,config:{parentId:l}}):M==="group"&&this.updateGroup({id:E,config:{parentId:l}})}const p={groupId:l,groupData:d,affectedElementIds:e,previousParentIds:v,sharedParentId:a,timestamp:Date.now(),operationId:`create_${Date.now()}`};return this.graph.emit(Co.GROUP_CREATED,p),l}ungroup(e){var p,g,m;const t=En(e)?e:[e];if(t.length===0)throw new Error("At least one group ID required for ungrouping");t.forEach(x=>{try{this.graph.expandElement(x)}catch{}});const r=[],i=new Map;for(const x of t){const w=this.context.getElementType(x);if(!w)throw new Error(`Group not found: ${x}`);if(w!=="group")throw new Error(`Cannot ungroup non-group element: ${x}`);const E=this.getGroupData(x);i.set(x,E);const M=(p=this.graph.getElementState(x))==null?void 0:p[0];r.push({id:x,type:"group",state:M,parentId:(g=E.config)==null?void 0:g.parentId})}const a=zT(r,"ungroup");if(!a.isValid)throw new Error(a.error);const s=new Set(t),l=xj(s,x=>this.getChildrenData(x).map(w=>w.id));if(!l.isValid)throw new Error(l.error);const u=[],c=new Map,h=[],f=[],d=[];for(const x of t){const w=i.get(x);if(!w)throw new Error(`Group data not found: ${x}`);h.push(w);const E=this.getChildrenData(x,{level:1}),M=(m=w.config)==null?void 0:m.parentId;for(const S of E){u.push(S.id),c.set(S.id,M);const T=this.context.getElementType(S.id);T==="node"?f.push({id:S.id,config:{parentId:M}}):T==="group"&&d.push({id:S.id,config:{parentId:M}})}}f.length>0&&this.context.updateNode(f),d.length>0&&this.updateGroup(d),this.removeGroupInternal(t),this.graph.render();const v={groupIds:t,ungroupedData:h,affectedElementIds:u,newParentIds:c,timestamp:Date.now(),operationId:`ungroup_${Date.now()}`};this.graph.emit(Co.GROUP_UNGROUPED,v)}}class c_e{constructor(e){Mt(this,"renderer");Mt(this,"dataManager");Mt(this,"configManager");Mt(this,"groupManager");Mt(this,"historyDrillCleanup",null);Mt(this,"graphReady",!1);if(this.configManager=new CW(e),this.dataManager=new LU,this.renderer=new PO(e),!this.configManager.validateConfig())throw new Error("Invalid graph configuration");this.initGraph()}get graph(){return this.renderer.graph}get container(){var e;return(e=this.graph.getCanvas())==null?void 0:e.getContainer()}get canvas(){var e;return(e=this.graph.getCanvas())==null?void 0:e.context.contextService.getDomElement()}get elementController(){var e;return(e=this.graph.context)==null?void 0:e.element}get dataController(){var e;return(e=this.graph.context)==null?void 0:e.model}get behaviorController(){var e;return(e=this.graph.context)==null?void 0:e.behavior}get viewportController(){var e;return(e=this.graph.context)==null?void 0:e.viewport}get tokenConfig(){return this.configManager.getTokenConfig()}get iconSpriteText(){return this.configManager.getIconSpriteText()}initGraph(){this.renderer.initialize(this),this.initGroupManager(),this.setupEventHandlers()}initGroupManager(){this.groupManager=new IU(this.graph,this.dataManager,this.dataController,this)}setupEventHandlers(){this.once(Kr.GRAPH_AFTER_RENDER,()=>{this.configManager.shouldShowVersion()&&console.log(FT.bgBlack.greenBright(`🚀 MOXA GRAPH - ${this.configManager.getVersion()} 🚀`)),this.graphReady=!0,this.canvas.focus(),this.canvas.dispatchEvent(new MouseEvent("click")),u_e.insertCss(`body #${this.container.id} * { user-select: none; }`),this.setupHistoryDrillIntegration(),this.setupHullSync()})}setupHistoryDrillIntegration(){try{const e=this.graph.getPluginInstance("history"),t=this.getBehaviorInstance("drillDown");e&&t&&(this.historyDrillCleanup=iU(this.graph))}catch{}}setupHullSync(){try{const e=this.graph.getPluginInstance("history");if(!e)return;const t=()=>{hU(this.graph)};e.on("change",t)}catch{}}isElementExist(e){return!!(this.dataController.hasNode(e)||this.dataController.hasEdge(e)||this.dataController.hasCombo(e))}isElementShow(e){return!!this.elementController.getElement(e)}isElementInView(e){const t=this.elementController.getElement(e);return t?this.viewportController.isInViewport(t.getRenderBounds(),!1,30):!1}getElementBoundingBox(e){const t=En(e)?e:[e],r=up.getCombinedBBox(t.filter(i=>this.isElementShow(i)).map(i=>{if(this.graph.getElementType(i)==="edge"){const a=this.elementController.getElement(i);return a?a.getBounds():this.graph.getElementRenderBounds(i)}return this.graph.getElementRenderBounds(i)}));return{...r,width:r.max[0]-r.min[0],height:r.max[1]-r.min[1]}}getConfig(){const{container:e,autoFit:t,autoResize:r,animation:i}=this.graph.getOptions(),{width:a,height:s}=this.getSize(),o=this.getLayout(),l=this.getBehavior(),u=oF(this.graph.getPlugins().map(h=>Pt(h)?h.bind(this.graph)():(nr(h),h)).filter(Boolean)),c=this.getTheme();return{container:e,renderer:this.configManager.getRendererType(),width:a,height:s,data:{nodes:this.getNodeData(),edges:this.getEdgeData(),groups:this.getGroupData()},behaviors:l,layouts:o,plugins:u,theme:c,autoFitMode:t==="center"?"center":"view",autoSize:!!r,animation:!!i}}getSize(){const[e,t]=this.graph.getSize();return{width:e,height:t}}getElementType(e){if(!this.isElementExist(e))return null;switch(this.graph.getElementType(e)){case"node":return"node";case"edge":return"edge";case"combo":return"group"}}getElementState(e){return this.isElementExist(e)?this.graph.getElementState(e):[]}getElementByState(e,t){if(e==="node"){const r=this.graph.getElementDataByState("node",t);return(r==null?void 0:r.map(i=>{var a;return(a=this.dataManager.transformToMxData({nodes:[i],edges:[],combos:[]}).nodes)==null?void 0:a[0]}).filter(Boolean))||[]}if(e==="edge"){const r=this.graph.getElementDataByState("edge",t);return(r==null?void 0:r.map(i=>{var a;return(a=this.dataManager.transformToMxData({nodes:[],edges:[i],combos:[]}).edges)==null?void 0:a[0]}).filter(Boolean))||[]}if(e==="group"){const r=this.graph.getElementDataByState("combo",t);return(r==null?void 0:r.map(i=>{var a;return(a=this.dataManager.transformToMxData({nodes:[],edges:[],combos:[i]}).groups)==null?void 0:a[0]}).filter(Boolean))||[]}return[]}getElementByTypes(e){return[...new Set(e)].map(r=>r==="node"?this.getNodeData():r==="edge"?this.getEdgeData():r==="group"?this.getGroupData():[]).flat()}setRenderer(e){this.configManager.updateConfig({renderer:e}),this.renderer.updateConfig({renderer:e}),this.renderer.destroy(),this.renderer.initialize(this)}getTheme(){if(!this.graph)return"light";const e=this.graph.getTheme();return typeof e=="string"?e.replace("mx-",""):"light"}getThemeTokens(){const{tokenConfig:e}=this,t=this.getTheme();return e==null?void 0:e[t]}setTheme(e){const t=`mx-${e}`;this.graph.setTheme(t),this.refresh()}setThemeTokens(e){this.refresh()}getLayout(){const e=this.graph.getLayout();return pOe(e)}setLayout(e){const t=s1(e,{graph:this.graph});this.graph.setLayout(t)}async layout(e){if(e){const t=s1(e,{graph:this.graph});await this.graph.layout(t)}else await this.graph.layout()}resize(e,t){e&&t?(this.graph.resize(e,t),this.container.style.width=`${e}px`,this.container.style.height=`${t}px`):this.graph.resize()}refresh(){this.dataController.refreshData(),this.setPlugin({})}autoSize(e){this.configManager.updateConfig({autoSize:e}),this.renderer.destroy(),this.renderer.initialize(this)}zoom(e){this.graph.zoomBy(e)}zoomTo(e){this.graph.zoomTo(e)}getZoom(){return this.graph.getZoom()}setZoomRange(e){var t;if(e){const[r,i]=e;if(r<=0||i<=0)throw new Error("Zoom range must be greater than 0");if(r>i)throw new Error("Minimum zoom range must be less or equal than maximum zoom range");(t=this.graph)==null||t.setZoomRange(e)}}getZoomRange(){var e;return(e=this.graph)==null?void 0:e.getZoomRange()}getCommonPoints(){const{width:e,height:t}=this.getBoundingRect(),r=[0,0],i=[e,0],a=[e,t],s=[0,t],o=this.graph.getCanvas().getCamera().getPosition(),l=this.graph.getCanvas().getCanvasByViewport(r),u=this.graph.getCanvas().getCanvasByViewport(i),c=this.graph.getCanvas().getCanvasByViewport(a),h=this.graph.getCanvas().getCanvasByViewport(s);return{middle:{x:o[0],y:o[1]},leftTop:{x:l[0],y:l[1]},rightTop:{x:u[0],y:u[1]},rightBottom:{x:c[0],y:c[1]},leftBottom:{x:h[0],y:h[1]}}}getBoundingRect(){const e=this.graph.getCanvas().getContextService().getBoundingClientRect();return e||{left:0,top:0,right:0,bottom:0,width:0,height:0,x:0,y:0}}canvasToViewport(e){const[t,r]=this.graph.getCanvas().getViewportByCanvas([e.x,e.y]);return{x:t,y:r}}viewportToCanvas(e){const[t,r]=this.graph.getCanvas().getCanvasByViewport([e.x,e.y]);return{x:t,y:r}}fitView(){this.graph.fitView()}fitCenter(){this.graph.fitCenter()}focusItem(e){this.graph.focusElement(e)}undo(){const e=this.graph.getPluginInstance("history");e.canUndo()&&e.undo()}redo(){const e=this.graph.getPluginInstance("history");e.canRedo()&&e.redo()}async drillIntoGroup(e,t){const r=this.getBehaviorInstance("drillDown");r&&await r.drillIntoGroup(e,t)}async drillOutOfGroup(){const e=this.getBehaviorInstance("drillDown");e&&await e.drillOutOfGroup()}async resetDrill(){const e=this.getBehaviorInstance("drillDown");e&&await e.resetDrill()}getDrillDownState(){const e=this.getBehaviorInstance("drillDown");if(e)return e.getDrillDownState()}setDrillDownState(e){const t=this.getBehaviorInstance("drillDown");t&&t.setDrillDownState(e)}render(){return this.renderer.render()}setData(e){const t=this.dataManager.transformToG6Data(e);this.graph.setData(t)}clear(){return this.graph.clear()}destroy(){return new Promise(e=>{this.historyDrillCleanup&&(this.historyDrillCleanup(),this.historyDrillCleanup=null),this.graph.destroy(),setTimeout(()=>{const t=this;for(const r in t)Object.prototype.hasOwnProperty.call(t,r)&&delete t[r];Object.setPrototypeOf(this,null),e()})})}getEvent(){return this.graph.getEvents()}hasEvent(e){const t=this.graph.getEvents();return Object.keys(t).includes(e)}getBehavior(){const e=this.graph.getBehaviors().map(t=>Pt(t)?t.bind(this.graph)():t);return nOe(e)}getBehaviorInstance(e){return this.behaviorController.extensionMap[e]}setBehavior(e){const t=GW(e);this.graph.setBehaviors(t)}on(e,t){this.graph.on(e,t)}once(e,t){this.graph.once(e,t)}off(e,t){e&&t?this.graph.off(e,t):e?this.graph.off(e):this.off()}getNodeData(e){var r;if(typeof e=="string"){const i=this.graph.getNodeData(e);return i?(r=this.dataManager.transformToMxData({nodes:[i],edges:[],combos:[]}).nodes)==null?void 0:r[0]:void 0}if(En(e)){const i=this.graph.getNodeData(e);return i?this.dataManager.transformToMxData({nodes:i,edges:[],combos:[]}).nodes:[]}const t=this.graph.getNodeData();return this.dataManager.transformToMxData({nodes:t||[],edges:[],combos:[]}).nodes}addNode(e){const t=En(e)?e:[e],r=this.dataManager.addNodes(t);this.graph.addNodeData(r)}updateNode(e){const t=En(e)?e:[e],r=this.dataManager.addNodes(t);this.graph.updateNodeData(r)}removeNode(e){const t=En(e)?e:[e];this.graph.removeNodeData(t)}showElement(e){this.graph.showElement(e)}hideElement(e){this.graph.hideElement(e)}removeElement(e){const t=En(e)?e:[e],{node:r,edge:i,group:a}=t.reduce((s,o)=>{var u;const l=this.getElementType(o);return l&&((u=s[l])==null||u.push(o)),s},{node:[],edge:[],group:[]});this.removeNode(r),this.removeEdge(i),a.length>0&&this.ungroup(a)}setElementState(e){this.graph.setElementState(e)}clearElementState(e){const r=(En(e)?e:[e]).reduce((i,a)=>(i[a]=[],i),{});this.graph.setElementState(r)}getEdgeData(e){var r;if(typeof e=="string"){const i=this.graph.getEdgeData(e);return i?(r=this.dataManager.transformToMxData({nodes:[],edges:[i],combos:[]}).edges)==null?void 0:r[0]:void 0}if(En(e)){const i=this.graph.getEdgeData(e);return i?this.dataManager.transformToMxData({nodes:[],edges:i,combos:[]}).edges:[]}const t=this.graph.getEdgeData();return this.dataManager.transformToMxData({nodes:[],edges:t||[],combos:[]}).edges}isIsolated(e){return this.graph.getRelatedEdgesData(e).length<=0}addEdge(e){const t=En(e)?e:[e],r=this.dataManager.addEdges(t);this.graph.addEdgeData(r)}removeEdge(e){const t=En(e)?e:[e];this.graph.removeEdgeData(t)}updateEdge(e){const t=En(e)?e:[e],r=this.dataManager.updateEdges(t);this.graph.updateEdgeData(r)}getGroupData(e){return this.groupManager.getGroupData(e)}getChildrenData(e,t={}){return this.groupManager.getChildrenData(e,t)}updateGroup(e){this.groupManager.updateGroup(e)}async expandGroup(e){return this.groupManager.expandGroup(e)}async collapseGroup(e){return this.groupManager.collapseGroup(e)}createGroup(e,t){return this.groupManager.createGroup(e,t)}ungroup(e){this.groupManager.ungroup(e)}getPlugin(){const e=this.graph.getPlugins().map(t=>Pt(t)?t.bind(this.graph)():(nr(t),t));return oF(e.filter(Boolean))}getPluginInstance(e){return this.graph.getPluginInstance(e)}setPlugin(e){const t=_U(e);this.graph.setPlugins(t)}async addHull(e){await yU(this.graph,e)}async removeHull(e,t){await bU(this.graph,e,t)}async removeBatchHulls(e,t){await xU(this.graph,e,t)}async updateHull(e,t){await wU(this.graph,e,t)}getHull(e){return ev(this.graph,e)}getAllHulls(){return EU(this.graph)}}exports.AlignLayout=HW;exports.AlignmentPoint=SU;exports.AllEvent=Kr;exports.BEHAVIOR_FACTORIES=jT;exports.Behavior=sn;exports.BoundarySnapline=u1;exports.COLLAPSE_BUTTON_BG_KEY=GT;exports.COLLAPSE_BUTTON_BG_SIZE=Cj;exports.COLLAPSE_BUTTON_KEY=bo;exports.COLLAPSE_BUTTON_SIZE=qo;exports.CanvasEvent=Ch;exports.CanvasEventEnum=Ch;exports.ClickSelect=e1;exports.ConfigManager=CW;exports.CreateEdge=t1;exports.DEFAULT_BEHAVIORS=CZ;exports.DEFAULT_BEHAVIOR_CONFIG=uF;exports.DEFAULT_HULL_LABEL_STYLE=Wu;exports.DEFAULT_HULL_OPTIONS=vU;exports.DEFAULT_HULL_STYLE=dU;exports.DEFAULT_LAYOUT_CONFIG=B4e;exports.DEFAULT_PLUGINS=AU;exports.DEFAULT_PLUGIN_CONFIG=Zp;exports.DEVICE_COUNT_FONT_SIZE=Nj;exports.DEVICE_COUNT_KEY=kj;exports.DRILL_DOWN_ICON_KEY=ca;exports.DRILL_DOWN_ICON_SIZE=h0;exports.DataManager=LU;exports.DeviceGroup=xO;exports.DeviceNode=_W;exports.DrillDown=n1;exports.EDGE_TOOLBAR_OPTIONS=KW;exports.EdgeEvent=wc;exports.EdgeEventEnum=wc;exports.ElementToolbar=v0;exports.FONT_SIZE=mMe;exports.FixElementSize=r1;exports.FixedToolbar=g0;exports.G6_HULL_TYPE=Zl;exports.GROUP_NODE_SIZE=Dl;exports.GROUP_SHADOW_BLUR=xMe;exports.GROUP_SHADOW_COLOR=bMe;exports.GROUP_SHADOW_OFFSET_X=wMe;exports.GROUP_SHADOW_OFFSET_Y=EMe;exports.GROUP_TOOLBAR_OPTIONS=JW;exports.Graph=c_e;exports.GraphBackground=p0;exports.GraphEvent=xc;exports.GraphEventEnum=xc;exports.GraphRenderer=PO;exports.GroupEvent=Co;exports.GroupEventEnum=Co;exports.GroupManager=IU;exports.HullEventEnum=tf;exports.ICON_PADDING=lh;exports.ICON_SIZE=Pj;exports.LABEL_BG_KEY=Oj;exports.Layout=Ya;exports.LineEdge=EW;exports.MAX_GROUP_DEPTH=Jp;exports.MULTI_NODE_GROUP_TOOLBAR_OPTIONS=QW;exports.MxElementToolbar=v0;exports.MxFixedToolbar=g0;exports.MxGraphBackground=p0;exports.MxGraphRendererClass=PO;exports.NODE_SIZE=a1;exports.NODE_TOOLBAR_OPTIONS=ZW;exports.NodeEvent=nl;exports.NodeEventEnum=nl;exports.PADDING_LG=yMe;exports.PADDING_MD=Rj;exports.PADDING_SM=f0;exports.PLUGIN_FACTORIES=WT;exports.ParentPathCache=rMe;exports.PipelineUtils=o_e;exports.Plugin=on;exports.PolylineEdge=TW;exports.QuadraticEdge=AW;exports.STATUS_ICON_KEY=_j;exports.STATUS_ICON_SIZE=Ku;exports.SelectAll=hW;exports.TITLE_BG_KEY=Aj;exports.TITLE_KEY=$T;exports.addHullToGraph=yU;exports.applyPadding=wj;exports.batchTransformGraphData=a_e;exports.buildParentPath=iO;exports.calcElbowControlPoints=MW;exports.calculateBoundingBox=Qp;exports.calculateElementDepth=Q4e;exports.calculateLCA=nMe;exports.calculateMaxDepthAfterGrouping=bj;exports.clearAllHullMembership=WOe;exports.clearAllHullMetadata=GOe;exports.convertSVGToDataURL=dj;exports.convertToMxGraph=gs;exports.createGraphDataTransformer=i_e;exports.createHullCreatedPayload=sU;exports.createHullMetadataCombo=lU;exports.createHullRemovedPayload=SO;exports.createHullUpdatedPayload=oU;exports.createMinimalPipeline=RU;exports.createStandardPipeline=kO;exports.createTransformPipeline=My;exports.determineLinkSide=tAe;exports.executePipeline=_O;exports.executeRenderWithWait=op;exports.extractHullKeyFromComboId=DOe;exports.generateOperationId=yy;exports.getActiveStates=z4e;exports.getAlignLayoutOptions=VW;exports.getAllHullKeysFromMetadata=zOe;exports.getAllHullsFromGraph=EU;exports.getBehaviorOptions=tOe;exports.getBrushSelectBehavior=Ej;exports.getClickSelectBehavior=Sj;exports.getCollapseExpandBehavior=Mj;exports.getContextMenuOptions=XW;exports.getCreateEdgeBehavior=tW;exports.getDragCanvasBehavior=nW;exports.getDragElementBehavior=rW;exports.getDrillDownBehavior=iW;exports.getElementToolbarOptions=eU;exports.getFixElementSizeBehavior=sW;exports.getFixedToolbarOptions=tU;exports.getFocusElementBehavior=oW;exports.getForceLayoutOptions=qW;exports.getGraphBackgroundOptions=nU;exports.getGridLayoutOptions=jW;exports.getGroupHaloStyle=PW;exports.getGroupKeyStyle=kW;exports.getHistoryOptions=rU;exports.getHoverActivateBehavior=lW;exports.getHullFromGraph=ev;exports.getHullMetadataCombo=xy;exports.getHullMetadataComboId=Dc;exports.getHullMetadataFromGraph=TO;exports.getHullPluginOptions=pU;exports.getIcon=Ys;exports.getIconFromSprite=Ec;exports.getItemRect=ry;exports.getMinimapOptions=aU;exports.getMxTokenConfig=vj;exports.getNodeHull=HOe;exports.getNodeStyle=OW;exports.getRegisteredTransforms=CU;exports.getRingLayoutOptions=WW;exports.getScrollCanvasBehavior=uW;exports.getSelectAllBehavior=cW;exports.getSnaplineOptions=MU;exports.getThemeType=gj;exports.getTooltipOptions=TU;exports.getTreeData=pj;exports.getTreeLayoutOptions=UW;exports.getZoomCanvasBehavior=fW;exports.hasHullMetadataCombo=FOe;exports.hasParentChildRelationship=yj;exports.isHullMetadataCombo=by;exports.isHullMetadataComboId=BOe;exports.isMacOS=rO;exports.isTransformRegistered=PU;exports.isWindows=F4e;exports.mapG6ElementType=hj;exports.mapMxElementType=fj;exports.matchState=Ko;exports.mergeBoundingBoxes=iMe;exports.processParallelEdgesTransform=aO;exports.registerMembers=wy;exports.registerTransform=kU;exports.removeBatchHullsFromGraph=xU;exports.removeHullFromGraph=bU;exports.removeHullMetadataCombo=cU;exports.resetMinimap=IOe;exports.retrieveMxGraphFromContext=ma;exports.reverseEdgeData=Tj;exports.setupHistoryDrillIntegration=iU;exports.syncHullPluginsFromMetadata=hU;exports.toG6HullOptions=Sy;exports.transformBehavior=EO;exports.transformBehaviors=$W;exports.transformEdgeData=zl;exports.transformGraphOptions=OO;exports.transformLayout=YW;exports.transformLayoutConfig=s1;exports.transformPlugin=hp;exports.transformPlugins=OU;exports.unregisterAllMembers=Ey;exports.unregisterMembers=VOe;exports.unregisterTransform=NU;exports.updateHullInGraph=wU;exports.updateHullMetadataCombo=uU;exports.validateCompleteGroupSelection=xj;exports.validateDepthLimit=eMe;exports.validateElementStates=zT;exports.validateGroupsOnly=tMe;exports.validateMembership=gU;exports.validateMinimumSelection=mj;exports.validateParentChildRelationships=J4e;exports.validateRemoval=AO;exports.validateRemovalWithMembers=qOe;
|
|
497
|
+
</div>`}).join("")}};Mt(g1,"defaultOptions",{position:"bottom-right",items:[]});let g0=g1;ia(wi.PLUGIN,on.FIXED_TOOLBAR,g0);const nU=(n,e)=>({type:on.GRAPH_BACKGROUND,key:on.GRAPH_BACKGROUND,...e}),p1=class p1 extends oi{constructor(t,r){const i={...p1.defaultOptions,...r};super(t,i);Mt(this,"imageNode");Mt(this,"getEvents",()=>({[Kr.GRAPH_AFTER_SIZE_CHANGE]:this.onGraphSizeChange}));Mt(this,"onGraphSizeChange",t=>{this.setBackgroundImage()});this.bindEvents(),this.update(i)}update(t){super.update(t),this.setBackgroundImage(),this.setBackgroundColor()}setBackgroundImage(){const{url:t,begin:r,width:i,height:a,opacity:s}=this.options,{graph:o}=this.context,l=o.getSize();if(!t)return;const u=new Qa({style:{src:t,x:r.x,y:r.y,width:i||l[0],height:a||l[1],pointerEvents:"none",opacity:s}});this.imageNode&&this.imageNode.destroy(),o.getCanvas().appendChild(u,0),this.imageNode=u}setBackgroundColor(){const{color:t}=this.options,r=this.context.graph.getCanvas().getContainer();r&&(r.style.backgroundColor=t||"")}destroy(){var t;(t=this.imageNode)==null||t.destroy(),this.unbindEvents(),super.destroy()}bindEvents(){const{graph:t}=this.context,r=this.getEvents();Object.keys(r).forEach(i=>{t.on(i,r[i])})}unbindEvents(){const{graph:t}=this.context,r=this.getEvents();Object.keys(r).forEach(i=>{t.off(i,r[i])})}};Mt(p1,"defaultOptions",{begin:{x:0,y:0},opacity:1});let p0=p1;ia(wi.PLUGIN,on.GRAPH_BACKGROUND,p0);const EOe=.1,SOe=["x","y","icon","iconSrc","iconWidth","iconHeight","label","labelText","title","titleText","visibility"],MOe=["visibility"],TOe=["x","y","label","labelText","title","titleText","visibility"],AOe=n=>mM(n,"nodes",SOe)||mM(n,"edges",MOe)||COe(n)||mM(n,"combos",TOe)||NOe(n),mM=({current:n,original:e},t,r)=>{var s,o;const i=((s=n.add[t])==null?void 0:s.length)??0,a=((o=n.remove[t])==null?void 0:o.length)??0;return i>0||a>0?!0:OOe(n,e,t,r)},OOe=(n,e,t,r)=>{const i=n.update[t]??[],a=e.update[t]??[];return i.some(s=>{const o=a.find(l=>l.id===s.id);return r.some(l=>_Oe(s,o,l))})},_Oe=(n,e,t)=>{var a,s,o,l;const r=((a=n.style)==null?void 0:a[t])??((s=n.data)==null?void 0:s[t]),i=((o=e==null?void 0:e.style)==null?void 0:o[t])??((l=e==null?void 0:e.data)==null?void 0:l[t]);return r==null&&i==null?!1:kOe(t)?POe(r,i):r!==i},kOe=n=>n==="x"||n==="y",POe=(n,e)=>typeof n!="number"||typeof e!="number"?!1:Math.abs(n-e)>EOe,COe=({current:n,original:e})=>{const t=n.update.edges??[],r=e.update.edges??[];return t.some(i=>{var l,u;const a=r.find(c=>c.id===i.id),s=JSON.stringify(((l=i.style)==null?void 0:l.labels)??[]),o=JSON.stringify(((u=a==null?void 0:a.style)==null?void 0:u.labels)??[]);return s!==o})},NOe=({current:n,original:e})=>{const t=n.update.combos??[],r=e.update.combos??[];return t.some(a=>{var f,d,v,p;if(!(((f=a.id)==null?void 0:f.startsWith("__hull_metadata__"))||((d=a.data)==null?void 0:d._isHullMetadata)===!0))return!1;const o=r.find(g=>g.id===a.id);if(!o)return console.warn("[Hull History] No original found for hull metadata update:",a.id),!0;const l=(v=a.data)==null?void 0:v.hullConfig,u=(p=o==null?void 0:o.data)==null?void 0:p.hullConfig;if(!l||!u)return l!==u;const c=JSON.stringify(l),h=JSON.stringify(u);return c!==h})},ROe=25,rU=(n,e)=>({type:on.HISTORY,key:on.HISTORY,stackSize:(e==null?void 0:e.stackSize)??ROe,beforeAddCommand:AOe});function iU(n){const e=()=>{try{const t=n.getPluginInstance("history");t&&t.clear()}catch{}};return n.on(Kr.GROUP_DRILL_DOWN,e),n.on(Kr.GROUP_DRILL_UP,e),n.on(Kr.GROUP_RESET_DRILL,e),()=>{n.off(Kr.GROUP_DRILL_DOWN,e),n.off(Kr.GROUP_DRILL_UP,e),n.off(Kr.GROUP_RESET_DRILL,e)}}const LOe={type:on.MINIMAP,key:on.MINIMAP,position:"bottom-right",size:[200,150],offset:[0,0]},aU=(n,e)=>{const{key:t,position:r,size:i,offset:a,className:s}={...LOe,...e},o={key:t,type:on.MINIMAP,shape:(l,u)=>{var c;return(c=n.elementController.getElement(l))==null?void 0:c.cloneNode()},containerStyle:{...V0.defaultOptions.containerStyle,transform:`translate(${(a==null?void 0:a[0])||0}px, ${(a==null?void 0:a[1])||0}px)`}};return r&&(o.position=r),i&&(o.size=i),s&&(o.className=s),o},IOe=n=>{var t;const e=n.getPluginInstance(on.MINIMAP);(t=n.container.querySelectorAll(".g6-minimap"))==null||t.forEach(r=>{r.remove()}),e.canvas.destroy(),e.canvas=void 0};var tf=(n=>(n.HULL_CREATED="hull:created",n.HULL_UPDATED="hull:updated",n.HULL_REMOVED="hull:removed",n))(tf||{});function yy(n){return`hull_${n}_${Date.now()}_${Math.random().toString(36).substring(2,9)}`}function sU(n,e){return{key:n,hullConfig:e,affectedNodeIds:e.members||[],timestamp:Date.now(),operationId:yy("create")}}function oU(n,e,t,r){const i=Array.from(new Set([...e.members||[],...t.members||[]]));return{key:n,previousConfig:e,updatedConfig:t,updateOptions:r,affectedNodeIds:i,timestamp:Date.now(),operationId:yy("update")}}function SO(n,e){return{key:n,removedConfig:e,affectedNodeIds:e.members||[],timestamp:Date.now(),operationId:yy("remove")}}const l1="__hull_metadata__",MO="_isHullMetadata";function Dc(n){return`${l1}${n}`}function DOe(n){if(n.startsWith(l1))return n.substring(l1.length)}function BOe(n){return n.startsWith(l1)}function by(n){var e,t,r;return((e=n==null?void 0:n.data)==null?void 0:e[MO])===!0&&typeof((t=n==null?void 0:n.data)==null?void 0:t.hullKey)=="string"&&typeof((r=n==null?void 0:n.data)==null?void 0:r.hullConfig)=="object"}function lU(n){return{id:Dc(n.key),data:{[MO]:!0,hullKey:n.key,hullConfig:{...n}},style:{visibility:"hidden"}}}function uU(n,e,t){const r=Dc(e);n.updateComboData([{id:r,data:{[MO]:!0,hullKey:e,hullConfig:{...t}}}])}function cU(n,e){const t=Dc(e);n.removeComboData([t])}function FOe(n,e){var i;const t=Dc(e),r=(i=n.context)==null?void 0:i.model;return(r==null?void 0:r.hasCombo(t))||!1}function xy(n,e){const t=Dc(e),r=n.getComboData(t);if(r&&by(r))return r}function TO(n){const e=new Map,t=n.getComboData()||[];for(const r of t)if(by(r)){const{hullKey:i,hullConfig:a}=r.data;e.set(i,a)}return e}function zOe(n){return Array.from(TO(n).keys())}function $Oe(n,e,t){for(const r of e){let i;if(typeof r=="function")try{i=r.call(n)}catch{i=r}else i=r;if(!i||typeof i!="object"||i.type!=="hull")continue;const a=i.key,s=t.get(a);if(!s)return!0;const o={members:i.members,padding:i.padding,corner:i.corner,concavity:i.concavity,lineDash:i.lineDash,fill:i.fill,fillOpacity:i.fillOpacity,stroke:i.stroke,strokeOpacity:i.strokeOpacity,lineWidth:i.lineWidth},l=fU(s),u=JSON.stringify({members:o.members,padding:o.padding,corner:o.corner,fill:o.fill,fillOpacity:o.fillOpacity,stroke:o.stroke,strokeOpacity:o.strokeOpacity}),c=JSON.stringify({members:l.members,padding:l.padding,corner:l.corner,fill:l.fill,fillOpacity:l.fillOpacity,stroke:l.stroke,strokeOpacity:l.strokeOpacity});if(u!==c)return!0}return!1}function hU(n){const e=TO(n),t=n.getPlugins()||[],r=new Set;for(const o of t){let l;if(typeof o=="function")try{l=o.call(n)}catch{l=o}else l=o;l&&typeof l=="object"&&l.type==="hull"&&l.key&&r.add(l.key)}const i=new Set(e.keys());if(!(i.size!==r.size||Array.from(i).some(o=>!r.has(o))||$Oe(n,t,e)))return;const s=[];for(const o of t){let l;if(typeof o=="function")try{l=o.call(n)}catch{l=o}else l=o;(!l||typeof l!="object"||l.type!=="hull")&&s.push(o)}for(const[,o]of e)s.push(fU(o));n.setPlugins(s),n.render()}function fU(n){const{key:e,members:t,style:r={},padding:i=10,corner:a="rounded",concavity:s=1/0,lineDash:o}=n;return{type:"hull",key:e,members:t,padding:i,corner:a,concavity:s,lineDash:o,fill:r.fill||"lightblue",fillOpacity:r.fillOpacity??.2,stroke:r.stroke||"blue",strokeOpacity:r.strokeOpacity??.2,lineWidth:r.lineWidth??1}}function GOe(n){const t=(n.getComboData()||[]).filter(r=>by(r)).map(r=>r.id);t.length>0&&n.removeComboData(t)}const Zl="hull",dU={fill:"lightblue",fillOpacity:.2,stroke:"blue",strokeOpacity:.4,lineWidth:1},Wu={fill:"#000",fontSize:14,fontFamily:"Roboto, sans-serif",fontWeight:"normal",padding:[2,8],background:{show:!0,radius:4,opacity:.6}},vU={padding:10,corner:"rounded",concavity:1/0},Kl=new Map;function gU(n,e){for(const t of e){const r=Kl.get(t);if(r&&r!==n)throw new Error(`Node '${t}' already belongs to hull '${r}'. Remove it from '${r}' before adding to '${n}'.`)}}function wy(n,e){gU(n,e);for(const t of e)Kl.set(t,n)}function VOe(n,e){for(const t of e)Kl.get(t)===n&&Kl.delete(t)}function Ey(n){for(const[e,t]of Kl.entries())t===n&&Kl.delete(e)}function HOe(n){return Kl.get(n)}function AO(n){if(!(n!=null&&n.confirm)&&!(n!=null&&n.force))throw new Error("Hull removal requires confirmation. Set { confirm: true } or { force: true } to proceed.")}function qOe(n){if(!(n!=null&&n.confirm))throw new Error("Removing hull with members requires confirmation. Set { confirm: true } to proceed. This operation will delete all member nodes and their connected edges.")}function jOe(n,e){var r,i,a,s;return n?n.show??!0?{label:!0,labelText:n.text,labelCloseToPath:!0,labelAutoRotate:!0,labelFill:n.fill??Wu.fill,labelFontSize:n.fontSize??Wu.fontSize,labelFontFamily:n.fontFamily??Wu.fontFamily,labelFontWeight:n.fontWeight??Wu.fontWeight,labelPadding:n.padding??Wu.padding,...n.offsetX!==void 0&&{labelOffsetX:n.offsetX},...n.offsetY!==void 0&&{labelOffsetY:n.offsetY},...(((r=n.background)==null?void 0:r.show)??(e==null?void 0:e.show))&&{labelBackground:!0,labelBackgroundOpacity:((i=n.background)==null?void 0:i.opacity)??(e==null?void 0:e.opacity),labelBackgroundFill:((a=n.background)==null?void 0:a.fill)??(e==null?void 0:e.fill),labelBackgroundRadius:((s=n.background)==null?void 0:s.radius)??(e==null?void 0:e.radius)}}:{label:!1}:{}}const pU=(n,e)=>{if(!e)throw new Error("HullOptions is required");const{key:t,members:r}=e;if(!t)throw new Error("Hull key is required");return r&&r.length>0&&wy(t,r),Sy(e)};function WOe(){Kl.clear()}function Sy(n){const e={...vU,...n},{key:t,members:r,style:i,label:a,padding:s,corner:o,concavity:l,lineDash:u}=e,c={...dU,...i};return{type:Zl,key:t,members:r,padding:s,corner:o,concavity:l,lineDash:u,fill:c.fill,fillOpacity:c.fillOpacity,stroke:c.stroke,strokeOpacity:c.strokeOpacity,lineWidth:c.lineWidth,...jOe(a,Wu.background)}}function mU(n){const e={key:n.key,members:n.members,style:{fill:n.fill,fillOpacity:n.fillOpacity,stroke:n.stroke,strokeOpacity:n.strokeOpacity,lineWidth:n.lineWidth},padding:n.padding,corner:n.corner,concavity:n.concavity,lineDash:n.lineDash},t=n.labelText;return t&&(e.label={text:t.toString(),fill:n.labelFill,fontSize:n.labelFontSize,fontFamily:n.labelFontFamily,fontWeight:n.labelFontWeight,offsetX:n.labelOffsetX,offsetY:n.labelOffsetY,padding:n.labelPadding},n.labelBackground&&(e.label.background={show:n.labelBackground,fill:n.labelBackgroundFill,opacity:n.labelBackgroundOpacity,radius:n.labelBackgroundRadius})),e}function UOe(n){return(n.getPlugins()||[]).filter(t=>{if(typeof t=="function"){const r=t();return(r==null?void 0:r.type)===Zl}return(t==null?void 0:t.type)===Zl})}async function yU(n,e){const{key:t,members:r}=e;if(UOe(n).some(u=>u.key===t))throw new Error(`Hull '${t}' already exists. Use updateHull instead.`);r&&r.length>0&&wy(t,r);const s=lU(e);n.addComboData([s]);const o=Sy(e);n.setPlugins(u=>[...u,o]);const l=sU(t,e);n.emit(tf.HULL_CREATED,l),await n.render()}async function bU(n,e,t){AO(t);const r=xy(n,e),i=(r==null?void 0:r.data.hullConfig)||ev(n,e);if(Ey(e),cU(n,e),n.setPlugins(a=>a.filter(s=>{if(typeof s=="function"){const o=s();return(o==null?void 0:o.key)!==e}return(s==null?void 0:s.key)!==e})),i){const a=SO(e,i);n.emit(tf.HULL_REMOVED,a)}await n.render()}async function xU(n,e,t){if(e.length===0)return;AO(t);const r=[];for(const a of e){const s=xy(n,a),o=(s==null?void 0:s.data.hullConfig)||ev(n,a);o&&r.push({key:a,config:o}),Ey(a)}const i=e.map(a=>Dc(a));n.removeComboData(i),n.setPlugins(a=>a.filter(s=>{if(typeof s=="function"){const o=s();return!(o!=null&&o.key)||!e.includes(o.key)}return!(s!=null&&s.key)||!e.includes(s.key)}));for(const{key:a,config:s}of r){const o=SO(a,s);n.emit(tf.HULL_REMOVED,o)}await n.render()}async function wU(n,e,t){if(!(n.getPlugins()||[]).some(u=>{const c=typeof u=="function"?u():u;return(c==null?void 0:c.type)===Zl&&(c==null?void 0:c.key)===e}))throw new Error(`Hull '${e}' not found.`);const a=xy(n,e),s=(a==null?void 0:a.data.hullConfig)||ev(n,e);if(!s)throw new Error(`Hull '${e}' metadata not found.`);t.members&&(Ey(e),wy(e,t.members));const o={key:e,members:t.members||s.members,style:{...s.style,...t.style},padding:t.padding??s.padding,corner:t.corner??s.corner,concavity:t.concavity??s.concavity,lineDash:t.lineDash??s.lineDash};t.label&&s.label?o.label={show:t.label.show??s.label.show,text:t.label.text??s.label.text,fontSize:t.label.fontSize??s.label.fontSize,fill:t.label.fill??s.label.fill,fontFamily:t.label.fontFamily??s.label.fontFamily,fontWeight:t.label.fontWeight??s.label.fontWeight,padding:t.label.padding??s.label.padding,offsetX:t.label.offsetX??s.label.offsetX,offsetY:t.label.offsetY??s.label.offsetY,background:t.label.background??s.label.background}:t.label&&t.label.text?o.label=t.label:o.label=s.label,uU(n,e,o),n.setPlugins(u=>u.map(c=>{const h=typeof c=="function"?c():c;return(h==null?void 0:h.type)===Zl&&(h==null?void 0:h.key)===e?Sy(o):c}));const l=oU(e,s,o,t);n.emit(tf.HULL_UPDATED,l),await n.render()}function ev(n,e){const t=n.getPlugins()||[];for(const r of t){const i=typeof r=="function"?r():r;if((i==null?void 0:i.type)===Zl&&(i==null?void 0:i.key)===e)return mU(i)}}function EU(n){const e=n.getPlugins()||[],t=[];for(const r of e){const i=typeof r=="function"?r():r;(i==null?void 0:i.type)===Zl&&t.push(mU(i))}return t}const YOe=(n,e)=>{const t=n.getThemeTokens(),r={type:on.TOOLTIP,key:on.RICH_TOOLTIP,enterable:!0,style:{".tooltip":{padding:"12px 16px","border-radius":"4px","box-shadow":"0px 2px 6px 2px #0000001F, 0px 1px 2px 0px #00000029","font-size":"12px","font-weight":"400","line-height":"16px","background-color":t["background-neutral-default"],color:t["text-neutral-default"]}}};if(!e)return r;const{enable:i,itemTypes:a,render:s,trigger:o}=e,l=r;if(s&&(l.getContent=u=>s(u)),o==="click"&&(l.trigger="click"),a){const u=c=>{switch(c.targetType){case"node":return a.includes("node");case"edge":return a.includes("edge");case"combo":return a.includes("group")}return!0};if(i!==void 0){const c=typeof i=="function"?i:()=>i;l.enable=h=>c(h)&&u(h)}else l.enable=u}else i!==void 0&&(l.enable=i);return l};var SU=(n=>(n.LEFT_EDGE="left-edge",n.RIGHT_EDGE="right-edge",n.TOP_EDGE="top-edge",n.BOTTOM_EDGE="bottom-edge",n.HORIZONTAL_CENTER="horizontal-center",n.VERTICAL_CENTER="vertical-center",n))(SU||{});const XOe={type:on.SNAPLINE,key:on.SNAPLINE},cs=(n,e)=>Math.abs(n-e),m1=class m1 extends oi{constructor(t,r){super(t,{...m1.defaultOptions,...r});Mt(this,"verticalLine");Mt(this,"horizontalLine");Mt(this,"verticalState",{isSnapped:!1,isDisabled:!1,timer:null});Mt(this,"horizontalState",{isSnapped:!1,isDisabled:!1,timer:null});Mt(this,"calcSnaplineMetadata",(t,r)=>{const{tolerance:i=20}=this.options,{min:[a,s],max:[o,l],center:[u,c]}=r;let h=null,f=null,d=null,v=null,p=null,g=null,m=null,x=null;return this.getNodes().some(w=>{if(Er(t.id,w.id))return!1;const E=w.getRenderBounds(),{min:[M,S],max:[T,A],center:[C,B]}=E;return h===null&&(cs(C,u)<i?(h=C,v="center"):cs(M,a)<i?(h=M,v="left"):cs(M,o)<i?(h=M,v="right"):cs(T,o)<i?(h=T,v="right"):cs(T,a)<i&&(h=T,v="left"),h!==null&&(f=Math.min(S,s),d=Math.max(A,l))),p===null&&(cs(B,c)<i?(p=B,x="center"):cs(S,s)<i?(p=S,x="top"):cs(S,l)<i?(p=S,x="bottom"):cs(A,l)<i?(p=A,x="bottom"):cs(A,s)<i&&(p=A,x="top"),p!==null&&(g=Math.min(M,a),m=Math.max(T,o))),h!==null&&p!==null}),{verticalX:h,verticalMinY:f,verticalMaxY:d,verticalAlignType:v,horizontalY:p,horizontalMinX:g,horizontalMaxX:m,horizontalAlignType:x}});Mt(this,"onDragStart",()=>{this.initSnapline(),this.resetSnapState(this.verticalState),this.resetSnapState(this.horizontalState)});Mt(this,"onDrag",t=>{const r=t.target,i=r.getRenderBounds();this.hideSnapline();const a=this.calcSnaplineMetadata(r,i);this.updateSnapline(a),this.options.autoSnap&&this.applySnap(r,i,a)});Mt(this,"onDragEnd",()=>{this.hideSnapline(),this.resetSnapState(this.verticalState),this.resetSnapState(this.horizontalState)});this.bindEvents()}initSnapline(){const{verticalLineStyle:t,horizontalLineStyle:r}=this.options,i=this.context.canvas.getLayer("transient");this.verticalLine||(this.verticalLine=new sl({style:{x1:0,y1:0,x2:0,y2:0,...t,visibility:"hidden"}}),i.appendChild(this.verticalLine)),this.horizontalLine||(this.horizontalLine=new sl({style:{x1:0,y1:0,x2:0,y2:0,...r,visibility:"hidden"}}),i.appendChild(this.horizontalLine))}getNodes(){const{graph:t,element:r}=this.context,{filter:i}=this.options,a=[],s=t.getNodeData();for(const o of s)try{const l=r==null?void 0:r.getElement(o.id);l&&a.push(l)}catch{continue}return a.filter(o=>i?i(o):!0)}hideSnapline(){this.verticalLine&&(this.verticalLine.style.visibility="hidden"),this.horizontalLine&&(this.horizontalLine.style.visibility="hidden")}getLineWidth(t){const{graph:r}=this.context,i=(t==null?void 0:t.lineWidth)||1;return Number(i)/r.getZoom()}updateSnapline(t){const{offset:r=20,verticalLineStyle:i,horizontalLineStyle:a}=this.options,{verticalX:s,verticalMinY:o,verticalMaxY:l,horizontalY:u,horizontalMinX:c,horizontalMaxX:h}=t;s!==null&&o!==null&&l!==null&&this.verticalLine&&this.verticalLine.attr({x1:s,y1:o-r,x2:s,y2:l+r,lineWidth:this.getLineWidth(i),visibility:"visible"}),u!==null&&c!==null&&h!==null&&this.horizontalLine&&this.horizontalLine.attr({x1:c-r,y1:u,x2:h+r,y2:u,lineWidth:this.getLineWidth(a),visibility:"visible"})}setSnapTimer(t,r,i){r<=0||(t.timer!==null&&clearTimeout(t.timer),t.timer=window.setTimeout(()=>{i(),t.timer=null},r))}resetSnapState(t){t.isSnapped=!1,t.isDisabled=!1,t.timer!==null&&(clearTimeout(t.timer),t.timer=null)}handleSnapLogic(t,r,i,a,s,o){if(r===null||i===void 0||a===null)return this.resetSnapState(t),0;if(r>s&&(t.isDisabled=!1),r<=s&&!t.isDisabled){const u=a-i;return t.isSnapped||(t.isSnapped=!0,this.setSnapTimer(t,o,()=>{t.isDisabled=!0,t.isSnapped=!1})),u}else return t.isSnapped=!1,0}clearSnapTimers(){this.verticalState.timer!==null&&(clearTimeout(this.verticalState.timer),this.verticalState.timer=null),this.horizontalState.timer!==null&&(clearTimeout(this.horizontalState.timer),this.horizontalState.timer=null)}applySnap(t,r,i){const{graph:a}=this.context,{tolerance:s=20,snapDuration:o=300}=this.options,{min:[l,u],max:[c,h],center:[f,d]}=r;let v,p=null;if(i.verticalX!==null&&i.verticalAlignType){switch(i.verticalAlignType){case"center":v=f;break;case"left":v=l;break;case"right":v=c;break}v!==void 0&&(p=cs(i.verticalX,v))}let g,m=null;if(i.horizontalY!==null&&i.horizontalAlignType){switch(i.horizontalAlignType){case"center":g=d;break;case"top":g=u;break;case"bottom":g=h;break}g!==void 0&&(m=cs(i.horizontalY,g))}const x=this.handleSnapLogic(this.verticalState,p,v,i.verticalX,s,o),w=this.handleSnapLogic(this.horizontalState,m,g,i.horizontalY,s,o);(x!==0||w!==0)&&a.translateElementBy({[t.id]:[x,w]})}bindEvents(){const{graph:t}=this.context;t.on($n.DRAG_START,this.onDragStart),t.on($n.DRAG,this.onDrag),t.on($n.DRAG_END,this.onDragEnd)}unbindEvents(){const{graph:t}=this.context;t.off($n.DRAG_START,this.onDragStart),t.off($n.DRAG,this.onDrag),t.off($n.DRAG_END,this.onDragEnd)}destroy(){var t,r;this.clearSnapTimers(),this.unbindEvents(),(t=this.verticalLine)==null||t.destroy(),(r=this.horizontalLine)==null||r.destroy(),super.destroy()}};Mt(m1,"defaultOptions",{tolerance:20,offset:20,autoSnap:!0,snapDuration:100});let u1=m1;ia(wi.PLUGIN,"boundary-snapline",u1);const MU=(n,e)=>{const{key:t,type:r,...i}={...XOe,...e},a={stroke:"#FF5449",lineWidth:1,lineDash:5};return{...i,type:"boundary-snapline",key:t||on.SNAPLINE,tolerance:i.tolerance||10,offset:i.offset||20,autoSnap:i.autoSnap??!0,horizontalLineStyle:a,verticalLineStyle:a}},TU=(n,e)=>{const t=n.getThemeTokens(),r={type:on.TOOLTIP,key:on.TOOLTIP,enterable:!0,style:{".tooltip":{padding:"4px 8px","border-radius":"4px","box-shadow":"none","font-size":"12px","font-weight":"400","line-height":"16px","background-color":t["background-neutral-inverse"],"min-width":"auto",color:t["text-neutral-inverse"]}}};if(!e)return r;const{enable:i,itemTypes:a,content:s}=e,o=r;if(s&&(o.getContent=l=>`${s(l)}`),a){const l=u=>{switch(u.targetType){case"node":return a.includes("node");case"edge":return a.includes("edge");case"combo":return a.includes("group")}return!0};if(i!==void 0){const u=typeof i=="function"?i:()=>i;o.enable=c=>u(c)&&l(c)}else o.enable=l}else i!==void 0&&(o.enable=i);return o},ZOe=[{type:on.GRAPH_BACKGROUND}],AU=[on.HISTORY,on.TOOLTIP,on.MINIMAP,on.SNAPLINE],WT={[on.CONTEXT_MENU]:XW,[on.ELEMENT_TOOLBAR]:eU,[on.FIXED_TOOLBAR]:tU,[on.GRAPH_BACKGROUND]:nU,[on.HISTORY]:rU,[on.MINIMAP]:aU,[on.HULL]:pU,[on.RICH_TOOLTIP]:YOe,[on.SNAPLINE]:MU,[on.TOOLTIP]:TU},hp=(n,e)=>{if(typeof n=="string"){const t=WT[n];return t?t(e==null?void 0:e.graph):n}if(n&&typeof n=="object"&&"type"in n){const t=WT[n.type];return t?t(e==null?void 0:e.graph,n):n}return n},OU=(n,e)=>{var o;const t=(e==null?void 0:e.theme)||"light",r=e==null?void 0:e.graph,i=(o=r==null?void 0:r.tokenConfig)==null?void 0:o[t],a=ZOe.map(l=>nr(l)&&l.type===on.GRAPH_BACKGROUND&&i?{...l,background:i["background-neutral-default"]}:hp(l,e)),s=n?n.map(l=>hp(l,e)):AU.map(l=>hp(l,e));return{plugins:[...a,...s]}},_U=n=>{if(!n)return[];const e=[],t=(r,i,a)=>{i===!1||i===void 0||(i===!0?e.push(r):typeof i=="object"&&e.push({type:r,...i}))};return t(on.HISTORY,n.history),t(on.CONTEXT_MENU,n.contextMenu),t(on.TOOLTIP,n.tooltip),t(on.RICH_TOOLTIP,n.richTooltip),t(on.FIXED_TOOLBAR,n.fixedToolbar),t(on.ELEMENT_TOOLBAR,n.elementToolbar),t(on.GRAPH_BACKGROUND,n.graphBackground),t(on.MINIMAP,n.minimap),t(on.HULL,n.hull),t(on.SNAPLINE,n.snapline),e},oF=n=>{const e={};return n.forEach(t=>{if(typeof t=="string"){const r=t;r in Zp&&(e[r]=!0)}else if(t&&typeof t=="object"&&"type"in t){const{type:r,...i}=t,a=r;a in Zp&&(e[a]=Object.keys(i).length>0?i:!0)}}),e},OO=(n,e)=>{const t={...uF,...n.behaviors},r=GW(t),i={...Zp,...n.plugins},a=_U(i);return{...KOe(n),...JOe(n.container),...QOe(n.renderer),...$W(r),...YW(n.layouts,e),...OU(a,e),...r_e(n.animation),...e_e(n.data),...t_e(n.data,n.layouts),...n_e(n.theme)}},KOe=n=>{const{width:e,height:t,bgColor:r,autoSize:i,autoFitMode:a,theme:s,zoomRange:o}=n,l={autoResize:!0};return e&&(l.width=e),t&&(l.height=t),r&&(l.background=r),i!==void 0&&(l.autoResize=i),a&&(l.autoFit=a),o&&(l.zoomRange=o),s&&(l.theme=s),l},JOe=n=>({container:un(n)?document.getElementById(n):n}),QOe=n=>({renderer:()=>n==="svg"?new eOe:new Mh}),e_e=n=>{var e,t,r;return n?{data:{nodes:(e=n.nodes)==null?void 0:e.map(i=>d0(i,{full:!0})),edges:aO(((t=n.edges)==null?void 0:t.map(i=>zl(i)))||[]),combos:(r=n.groups)==null?void 0:r.map(i=>zd(i,{full:!0}))}}:{}},t_e=(n,e)=>{var s;const t=(e==null?void 0:e.tree)!==!1&&(e==null?void 0:e.tree)!==void 0;if(!n||!e||!t)return{};const r=((s=n.nodes)==null?void 0:s.map(o=>d0(o)))||[];return{data:pj(r).map(o=>A4e(o)).reduce((o,l)=>{var u,c,h;return(u=o.nodes)==null||u.push(...l.nodes||[]),(c=o.edges)==null||c.push(...l.edges||[]),(h=o.combos)==null||h.push(...l.combos||[]),o},{nodes:[],edges:[],combos:[]})}},n_e=n=>n?{theme:gj(n)}:{},r_e=n=>{const e={animation:!1};return n!==void 0&&(e.animation=n),e},i_e=()=>({transform:(n,e)=>{var t,r,i;return{nodes:((t=n.nodes)==null?void 0:t.map(a=>d0(a,e)))||[],edges:((r=n.edges)==null?void 0:r.map(a=>zl(a)))||[],combos:((i=n.groups)==null?void 0:i.map(a=>zd(a,e)))||[]}},reverse:(n,e)=>{throw new Error("Reverse transformation not implemented yet")}}),a_e=(n,e)=>n.map(t=>OO(t,e)),Lh={"normalize-data":n=>({nodes:n.nodes||[],edges:n.edges||[],combos:n.combos||n.groups||[]}),"process-parallel-edges":(n,e)=>n.edges?{...n,edges:aO(n.edges)}:n,"map-business-data":(n,e)=>n,"filter-hidden-nodes":n=>{var e,t;return{...n,nodes:((e=n.nodes)==null?void 0:e.filter(r=>!r.hidden))||[],edges:((t=n.edges)==null?void 0:t.filter(r=>{var a;const i=new Set(((a=n.nodes)==null?void 0:a.filter(s=>s.hidden).map(s=>s.id))||[]);return!i.has(r.source)&&!i.has(r.target)}))||[]}},"validate-data":n=>{if(!n.nodes||!Array.isArray(n.nodes))throw new Error("Invalid nodes data");if(!n.edges||!Array.isArray(n.edges))throw new Error("Invalid edges data");return n}},My=n=>{const{transforms:e,context:t}=n;return r=>e.reduce((i,a)=>{if(typeof a=="string"){const s=Lh[a];if(!s)throw new Error(`Unknown transform: ${a}`);return s(i,t)}if(typeof a=="function")return a(i,t);if(s_e(a))return(Lh[a.name]||a.transform)(i,{...t,...a.options});throw new Error("Invalid transform configuration")},r)},_O=(n,e)=>{try{return e(n)}catch(t){throw console.error("Transform pipeline error:",t),t}},kU=(n,e)=>{Lh[n]=e},PU=n=>n in Lh,CU=()=>Object.keys(Lh),NU=n=>{delete Lh[n]};function s_e(n){return n&&typeof n=="object"&&"name"in n&&"transform"in n}const kO=(n=[],e)=>My({transforms:["validate-data","normalize-data","filter-hidden-nodes","process-parallel-edges","map-business-data",...n],context:e}),RU=n=>My({transforms:["normalize-data","map-business-data"],context:n}),o_e={create:My,execute:_O,register:kU,unregister:NU,isRegistered:PU,getRegistered:CU,createStandard:kO,createMinimal:RU};class LU{constructor(){Mt(this,"pipeline",kO())}transformToG6Data(e){var r,i,a;const t={nodes:((r=e.nodes)==null?void 0:r.map(s=>d0(s,{full:!0})))||[],edges:((i=e.edges)==null?void 0:i.map(s=>zl(s)))||[],combos:((a=e.groups)==null?void 0:a.map(s=>zd(s,{full:!0})))||[]};return _O(t,this.pipeline)}transformToMxData(e){var t,r,i;return{nodes:((t=e.nodes)==null?void 0:t.map(a=>BMe(a)))||[],edges:((r=e.edges)==null?void 0:r.map(a=>Tj(a)))||[],groups:((i=e.combos)==null?void 0:i.map(a=>MMe(a)))||[]}}addNodes(e){return e.map(t=>d0(t,{full:!0}))}addEdges(e){return e.map(t=>zl(t))}addGroups(e){return e.map(t=>zd(t,{full:!0}))}updateGroups(e){const t=e.map(r=>zd(r,{full:!1}));return KB(t)}updateEdges(e){const t=e.map(r=>zl(r));return KB(t)}updatePipeline(e){this.pipeline=e}validateData(e){try{return!(!e||e.nodes&&!Array.isArray(e.nodes)||e.edges&&!Array.isArray(e.edges)||e.groups&&!Array.isArray(e.groups))}catch(t){return console.error("Data validation error:",t),!1}}normalizeData(e){return{nodes:e.nodes||[],edges:e.edges||[],groups:e.groups||e.combos||[]}}}var Yg={exports:{}},lF;function l_e(){if(lF)return Yg.exports;lF=1;var n=[],e=[],t="insert-css: You need to provide a CSS string. Usage: insertCss(cssString[, options]).";function r(a,s){if(s=s||{},a===void 0)throw new Error(t);var o=s.prepend===!0?"prepend":"append",l=s.container!==void 0?s.container:document.querySelector("head"),u=n.indexOf(l);u===-1&&(u=n.push(l)-1,e[u]={});var c;return e[u]!==void 0&&e[u][o]!==void 0?c=e[u][o]:(c=e[u][o]=i(),o==="prepend"?l.insertBefore(c,l.childNodes[0]):l.appendChild(c)),a.charCodeAt(0)===65279&&(a=a.substr(1,a.length)),c.styleSheet?c.styleSheet.cssText+=a:c.textContent+=a,c}function i(){var a=document.createElement("style");return a.setAttribute("type","text/css"),a}return Yg.exports=r,Yg.exports.insertCss=r,Yg.exports}var u_e=l_e();class PO{constructor(e){Mt(this,"_graph");Mt(this,"config");this.config=e}get graph(){return this._graph}initialize(e){const t=OO(this.config,{graph:e});this._graph=new lj(t),this._graph.mxGraph=e}render(){if(!this._graph)throw new Error("Graph not initialized. Call initialize() first.");this._graph.render()}destroy(){this._graph&&this._graph.destroy()}updateConfig(e){this.config={...this.config,...e}}}class IU{constructor(e,t,r,i){this.graph=e,this.dataManager=t,this.dataController=r,this.context=i}getGroupData(e){var r;if(typeof e=="string"){const i=this.graph.getComboData(e);return i?(r=this.dataManager.transformToMxData({nodes:[],edges:[],combos:[i]}).groups)==null?void 0:r[0]:void 0}if(En(e)){const i=this.graph.getComboData(e);return i?this.dataManager.transformToMxData({nodes:[],edges:[],combos:i}).groups:[]}const t=this.graph.getComboData();return this.dataManager.transformToMxData({nodes:[],edges:[],combos:t||[]}).groups}getChildrenData(e,t={}){const{level:r}=t,i=(s,o=0)=>!$t(r)&&r>0&&o>=r?s:s.map(u=>{if(this.dataController.isCombo(u.id)){const c=this.graph.getChildrenData(u.id);return[u,...i(c,o+1)]}return u}).flat(),a=this.graph.getChildrenData(e);return r===1?a.map(s=>{var o,l;return s.type==="node"?(o=this.dataManager.transformToMxData({nodes:[s],edges:[],combos:[]}).nodes)==null?void 0:o[0]:s.type==="combo"?(l=this.dataManager.transformToMxData({nodes:[],edges:[],combos:[s]}).groups)==null?void 0:l[0]:s}):i(a).map(s=>{var o,l;return s.type==="node"?(o=this.dataManager.transformToMxData({nodes:[s],edges:[],combos:[]}).nodes)==null?void 0:o[0]:s.type==="combo"?(l=this.dataManager.transformToMxData({nodes:[],edges:[],combos:[s]}).groups)==null?void 0:l[0]:s})}addGroupInternal(e){const t=En(e)?e:[e],r=this.dataManager.addGroups(t);this.graph.addComboData(r)}updateGroup(e){var i;const t=En(e)?e:[e];for(const a of t){const s=this.context.getElementType(a.id);if(!s)throw new Error(`Group not found: ${a.id}`);if(s!=="group")throw new Error(`Element is not a group: ${a.id}`);if(((i=this.graph.getElementState(a.id))==null?void 0:i[0])==="locked")throw new Error(`Cannot update locked group: ${a.id}`)}const r=this.dataManager.updateGroups(t);this.graph.updateComboData(r)}removeGroupInternal(e){const t=En(e)?e:[e];this.graph.removeComboData(t)}async expandGroup(e){const t=En(e)?e:[e];for(const r of t)await this.graph.expandElement(r);t.length>1&&this.graph.layout()}async collapseGroup(e){const t=En(e)?e:[e];for(const r of t)await this.graph.collapseElement(r);t.length>1&&this.graph.layout()}getElementDimensions(e){try{if(this.context.isElementShow(e)){const r=this.graph.getElementRenderBounds(e);if(r){const i=r.max[0]-r.min[0],a=r.max[1]-r.min[1];if(i>0&&a>0)return{width:i,height:a}}}}catch{}return this.context.getElementType(e)==="group"?{width:Dl,height:Dl}:{width:a1,height:a1}}createGroup(e,t){var g,m,x,w;const r=mj(e);if(!r.isValid)throw new Error(r.error);const i=[];let a,s=!0;for(const E of e){const M=this.context.getElementType(E);if(!M)throw new Error(`Element not found: ${E}`);let S,T;if(M==="node"?(S=(g=this.context.getNodeData(E).config)==null?void 0:g.parentId,T=(m=this.graph.getElementState(E))==null?void 0:m[0]):M==="group"&&(S=(x=this.getGroupData(E).config)==null?void 0:x.parentId,T=(w=this.graph.getElementState(E))==null?void 0:w[0]),s)a=S,s=!1;else if(a!==S)throw new Error("Selected elements must be from the same parent group");i.push({id:E,type:M,state:T,parentId:S})}const o=zT(i,"create");if(!o.isValid)throw new Error(o.error);const l=(t==null?void 0:t.id)||`group_${Date.now()}_${Math.random().toString(36).substring(2,11)}`,u=(t==null?void 0:t.type)||"device-group",c=i.map(E=>{var M,S,T,A;if(E.type==="node"){const C=this.context.getNodeData(E.id),B=this.getElementDimensions(E.id);return{id:E.id,x:((S=(M=C.config)==null?void 0:M.point)==null?void 0:S.x)||0,y:((A=(T=C.config)==null?void 0:T.point)==null?void 0:A.y)||0,width:B.width,height:B.height}}else{const B=this.getChildrenData(E.id).map(z=>{var H,W,ee,X;const G=this.getElementDimensions(z.id);return{id:z.id,x:((W=(H=z.config)==null?void 0:H.point)==null?void 0:W.x)||0,y:((X=(ee=z.config)==null?void 0:ee.point)==null?void 0:X.y)||0,width:G.width,height:G.height}}),D=Qp(B)||{x:0,y:0,width:100,height:100};return{id:E.id,x:D.x,y:D.y,width:D.width,height:D.height}}}),h=Qp(c),f=h?wj(h,(t==null?void 0:t.padding)||20):null,d={id:l,config:{type:u,parentId:a,point:f?{x:f.x,y:f.y}:void 0,...t}},v=new Map;for(const E of i)v.set(E.id,E.parentId);this.addGroupInternal(d);for(const E of e){const M=this.context.getElementType(E);M==="node"?this.context.updateNode({id:E,config:{parentId:l}}):M==="group"&&this.updateGroup({id:E,config:{parentId:l}})}const p={groupId:l,groupData:d,affectedElementIds:e,previousParentIds:v,sharedParentId:a,timestamp:Date.now(),operationId:`create_${Date.now()}`};return this.graph.emit(Co.GROUP_CREATED,p),l}ungroup(e){var p,g,m;const t=En(e)?e:[e];if(t.length===0)throw new Error("At least one group ID required for ungrouping");t.forEach(x=>{try{this.graph.expandElement(x)}catch{}});const r=[],i=new Map;for(const x of t){const w=this.context.getElementType(x);if(!w)throw new Error(`Group not found: ${x}`);if(w!=="group")throw new Error(`Cannot ungroup non-group element: ${x}`);const E=this.getGroupData(x);i.set(x,E);const M=(p=this.graph.getElementState(x))==null?void 0:p[0];r.push({id:x,type:"group",state:M,parentId:(g=E.config)==null?void 0:g.parentId})}const a=zT(r,"ungroup");if(!a.isValid)throw new Error(a.error);const s=new Set(t),l=xj(s,x=>this.getChildrenData(x).map(w=>w.id));if(!l.isValid)throw new Error(l.error);const u=[],c=new Map,h=[],f=[],d=[];for(const x of t){const w=i.get(x);if(!w)throw new Error(`Group data not found: ${x}`);h.push(w);const E=this.getChildrenData(x,{level:1}),M=(m=w.config)==null?void 0:m.parentId;for(const S of E){u.push(S.id),c.set(S.id,M);const T=this.context.getElementType(S.id);T==="node"?f.push({id:S.id,config:{parentId:M}}):T==="group"&&d.push({id:S.id,config:{parentId:M}})}}f.length>0&&this.context.updateNode(f),d.length>0&&this.updateGroup(d),this.removeGroupInternal(t),this.graph.render();const v={groupIds:t,ungroupedData:h,affectedElementIds:u,newParentIds:c,timestamp:Date.now(),operationId:`ungroup_${Date.now()}`};this.graph.emit(Co.GROUP_UNGROUPED,v)}}class c_e{constructor(e){Mt(this,"renderer");Mt(this,"dataManager");Mt(this,"configManager");Mt(this,"groupManager");Mt(this,"historyDrillCleanup",null);Mt(this,"graphReady",!1);if(this.configManager=new CW(e),this.dataManager=new LU,this.renderer=new PO(e),!this.configManager.validateConfig())throw new Error("Invalid graph configuration");this.initGraph()}get graph(){return this.renderer.graph}get container(){var e;return(e=this.graph.getCanvas())==null?void 0:e.getContainer()}get canvas(){var e;return(e=this.graph.getCanvas())==null?void 0:e.context.contextService.getDomElement()}get elementController(){var e;return(e=this.graph.context)==null?void 0:e.element}get dataController(){var e;return(e=this.graph.context)==null?void 0:e.model}get behaviorController(){var e;return(e=this.graph.context)==null?void 0:e.behavior}get viewportController(){var e;return(e=this.graph.context)==null?void 0:e.viewport}get tokenConfig(){return this.configManager.getTokenConfig()}get iconSpriteText(){return this.configManager.getIconSpriteText()}initGraph(){this.renderer.initialize(this),this.initGroupManager(),this.setupEventHandlers()}initGroupManager(){this.groupManager=new IU(this.graph,this.dataManager,this.dataController,this)}setupEventHandlers(){this.once(Kr.GRAPH_AFTER_RENDER,()=>{this.configManager.shouldShowVersion()&&console.log(FT.bgBlack.greenBright(`🚀 MOXA GRAPH - ${this.configManager.getVersion()} 🚀`)),this.graphReady=!0,this.canvas.focus(),this.canvas.dispatchEvent(new MouseEvent("click")),u_e.insertCss(`body #${this.container.id} * { user-select: none; }`),this.setupHistoryDrillIntegration(),this.setupHullSync()})}setupHistoryDrillIntegration(){try{const e=this.graph.getPluginInstance("history"),t=this.getBehaviorInstance("drillDown");e&&t&&(this.historyDrillCleanup=iU(this.graph))}catch{}}setupHullSync(){try{const e=this.graph.getPluginInstance("history");if(!e)return;const t=()=>{hU(this.graph)};e.on("change",t)}catch{}}isElementExist(e){return!!(this.dataController.hasNode(e)||this.dataController.hasEdge(e)||this.dataController.hasCombo(e))}isElementShow(e){return!!this.elementController.getElement(e)}isElementInView(e){const t=this.elementController.getElement(e);return t?this.viewportController.isInViewport(t.getRenderBounds(),!1,30):!1}getElementBoundingBox(e){const t=En(e)?e:[e],r=up.getCombinedBBox(t.filter(i=>this.isElementShow(i)).map(i=>{if(this.graph.getElementType(i)==="edge"){const a=this.elementController.getElement(i);return a?a.getBounds():this.graph.getElementRenderBounds(i)}return this.graph.getElementRenderBounds(i)}));return{...r,width:r.max[0]-r.min[0],height:r.max[1]-r.min[1]}}getConfig(){const{container:e,autoFit:t,autoResize:r,animation:i}=this.graph.getOptions(),{width:a,height:s}=this.getSize(),o=this.getLayout(),l=this.getBehavior(),u=oF(this.graph.getPlugins().map(h=>Pt(h)?h.bind(this.graph)():(nr(h),h)).filter(Boolean)),c=this.getTheme();return{container:e,renderer:this.configManager.getRendererType(),width:a,height:s,data:{nodes:this.getNodeData(),edges:this.getEdgeData(),groups:this.getGroupData()},behaviors:l,layouts:o,plugins:u,theme:c,autoFitMode:t==="center"?"center":"view",autoSize:!!r,animation:!!i}}getSize(){const[e,t]=this.graph.getSize();return{width:e,height:t}}getElementType(e){if(!this.isElementExist(e))return null;switch(this.graph.getElementType(e)){case"node":return"node";case"edge":return"edge";case"combo":return"group"}}getElementState(e){return this.isElementExist(e)?this.graph.getElementState(e):[]}getElementByState(e,t){if(e==="node"){const r=this.graph.getElementDataByState("node",t);return(r==null?void 0:r.map(i=>{var a;return(a=this.dataManager.transformToMxData({nodes:[i],edges:[],combos:[]}).nodes)==null?void 0:a[0]}).filter(Boolean))||[]}if(e==="edge"){const r=this.graph.getElementDataByState("edge",t);return(r==null?void 0:r.map(i=>{var a;return(a=this.dataManager.transformToMxData({nodes:[],edges:[i],combos:[]}).edges)==null?void 0:a[0]}).filter(Boolean))||[]}if(e==="group"){const r=this.graph.getElementDataByState("combo",t);return(r==null?void 0:r.map(i=>{var a;return(a=this.dataManager.transformToMxData({nodes:[],edges:[],combos:[i]}).groups)==null?void 0:a[0]}).filter(Boolean))||[]}return[]}getElementByTypes(e){return[...new Set(e)].map(r=>r==="node"?this.getNodeData():r==="edge"?this.getEdgeData():r==="group"?this.getGroupData():[]).flat()}setRenderer(e){this.configManager.updateConfig({renderer:e}),this.renderer.updateConfig({renderer:e}),this.renderer.destroy(),this.renderer.initialize(this)}getTheme(){if(!this.graph)return"light";const e=this.graph.getTheme();return typeof e=="string"?e.replace("mx-",""):"light"}getThemeTokens(){const{tokenConfig:e}=this,t=this.getTheme();return e==null?void 0:e[t]}setTheme(e){const t=`mx-${e}`;this.graph.setTheme(t),this.refresh()}setThemeTokens(e){this.refresh()}getLayout(){const e=this.graph.getLayout();return pOe(e)}setLayout(e){const t=s1(e,{graph:this.graph});this.graph.setLayout(t)}async layout(e){if(e){const t=s1(e,{graph:this.graph});await this.graph.layout(t)}else await this.graph.layout()}resize(e,t){e&&t?(this.graph.resize(e,t),this.container.style.width=`${e}px`,this.container.style.height=`${t}px`):this.graph.resize()}refresh(){this.dataController.refreshData(),this.setPlugin({})}autoSize(e){this.configManager.updateConfig({autoSize:e}),this.renderer.destroy(),this.renderer.initialize(this)}zoom(e){this.graph.zoomBy(e)}zoomTo(e){this.graph.zoomTo(e)}getZoom(){return this.graph.getZoom()}setZoomRange(e){var t;if(e){const[r,i]=e;if(r<=0||i<=0)throw new Error("Zoom range must be greater than 0");if(r>i)throw new Error("Minimum zoom range must be less or equal than maximum zoom range");(t=this.graph)==null||t.setZoomRange(e)}}getZoomRange(){var e;return(e=this.graph)==null?void 0:e.getZoomRange()}getCommonPoints(){const{width:e,height:t}=this.getBoundingRect(),r=[0,0],i=[e,0],a=[e,t],s=[0,t],o=this.graph.getCanvas().getCamera().getPosition(),l=this.graph.getCanvas().getCanvasByViewport(r),u=this.graph.getCanvas().getCanvasByViewport(i),c=this.graph.getCanvas().getCanvasByViewport(a),h=this.graph.getCanvas().getCanvasByViewport(s);return{middle:{x:o[0],y:o[1]},leftTop:{x:l[0],y:l[1]},rightTop:{x:u[0],y:u[1]},rightBottom:{x:c[0],y:c[1]},leftBottom:{x:h[0],y:h[1]}}}getBoundingRect(){const e=this.graph.getCanvas().getContextService().getBoundingClientRect();return e||{left:0,top:0,right:0,bottom:0,width:0,height:0,x:0,y:0}}canvasToViewport(e){const[t,r]=this.graph.getCanvas().getViewportByCanvas([e.x,e.y]);return{x:t,y:r}}viewportToCanvas(e){const[t,r]=this.graph.getCanvas().getCanvasByViewport([e.x,e.y]);return{x:t,y:r}}fitView(){this.graph.fitView()}fitCenter(){this.graph.fitCenter()}focusItem(e){this.graph.focusElement(e)}undo(){const e=this.graph.getPluginInstance("history");e.canUndo()&&e.undo()}redo(){const e=this.graph.getPluginInstance("history");e.canRedo()&&e.redo()}async drillIntoGroup(e,t){const r=this.getBehaviorInstance("drillDown");r&&await r.drillIntoGroup(e,t)}async drillOutOfGroup(){const e=this.getBehaviorInstance("drillDown");e&&await e.drillOutOfGroup()}async resetDrill(){const e=this.getBehaviorInstance("drillDown");e&&await e.resetDrill()}getDrillDownState(){const e=this.getBehaviorInstance("drillDown");if(e)return e.getDrillDownState()}setDrillDownState(e){const t=this.getBehaviorInstance("drillDown");t&&t.setDrillDownState(e)}render(){return this.renderer.render()}setData(e){const t=this.dataManager.transformToG6Data(e);this.graph.setData(t)}clear(){return this.graph.clear()}destroy(){return new Promise(e=>{this.historyDrillCleanup&&(this.historyDrillCleanup(),this.historyDrillCleanup=null),this.graph.destroy(),setTimeout(()=>{const t=this;for(const r in t)Object.prototype.hasOwnProperty.call(t,r)&&delete t[r];Object.setPrototypeOf(this,null),e()})})}getEvent(){return this.graph.getEvents()}hasEvent(e){const t=this.graph.getEvents();return Object.keys(t).includes(e)}getBehavior(){const e=this.graph.getBehaviors().map(t=>Pt(t)?t.bind(this.graph)():t);return nOe(e)}getBehaviorInstance(e){return this.behaviorController.extensionMap[e]}setBehavior(e){const t=GW(e);this.graph.setBehaviors(t)}on(e,t){this.graph.on(e,t)}once(e,t){this.graph.once(e,t)}off(e,t){e&&t?this.graph.off(e,t):e?this.graph.off(e):this.off()}getNodeData(e){var r;if(typeof e=="string"){const i=this.graph.getNodeData(e);return i?(r=this.dataManager.transformToMxData({nodes:[i],edges:[],combos:[]}).nodes)==null?void 0:r[0]:void 0}if(En(e)){const i=this.graph.getNodeData(e);return i?this.dataManager.transformToMxData({nodes:i,edges:[],combos:[]}).nodes:[]}const t=this.graph.getNodeData();return this.dataManager.transformToMxData({nodes:t||[],edges:[],combos:[]}).nodes}addNode(e){const t=En(e)?e:[e],r=this.dataManager.addNodes(t);this.graph.addNodeData(r)}updateNode(e){const t=En(e)?e:[e],r=this.dataManager.addNodes(t);this.graph.updateNodeData(r)}removeNode(e){const t=En(e)?e:[e];this.graph.removeNodeData(t)}showElement(e){this.graph.showElement(e)}hideElement(e){this.graph.hideElement(e)}removeElement(e){const t=En(e)?e:[e],{node:r,edge:i,group:a}=t.reduce((s,o)=>{var u;const l=this.getElementType(o);return l&&((u=s[l])==null||u.push(o)),s},{node:[],edge:[],group:[]});this.removeNode(r),this.removeEdge(i),a.length>0&&this.ungroup(a)}setElementState(e){this.graph.setElementState(e)}clearElementState(e){const r=(En(e)?e:[e]).reduce((i,a)=>(i[a]=[],i),{});this.graph.setElementState(r)}getEdgeData(e){var r;if(typeof e=="string"){const i=this.graph.getEdgeData(e);return i?(r=this.dataManager.transformToMxData({nodes:[],edges:[i],combos:[]}).edges)==null?void 0:r[0]:void 0}if(En(e)){const i=this.graph.getEdgeData(e);return i?this.dataManager.transformToMxData({nodes:[],edges:i,combos:[]}).edges:[]}const t=this.graph.getEdgeData();return this.dataManager.transformToMxData({nodes:[],edges:t||[],combos:[]}).edges}isIsolated(e){return this.graph.getRelatedEdgesData(e).length<=0}addEdge(e){const t=En(e)?e:[e],r=this.dataManager.addEdges(t);this.graph.addEdgeData(r)}removeEdge(e){const t=En(e)?e:[e];this.graph.removeEdgeData(t)}updateEdge(e){const t=En(e)?e:[e],r=this.dataManager.updateEdges(t);this.graph.updateEdgeData(r)}getGroupData(e){return this.groupManager.getGroupData(e)}getChildrenData(e,t={}){return this.groupManager.getChildrenData(e,t)}updateGroup(e){this.groupManager.updateGroup(e)}async expandGroup(e){return this.groupManager.expandGroup(e)}async collapseGroup(e){return this.groupManager.collapseGroup(e)}createGroup(e,t){return this.groupManager.createGroup(e,t)}ungroup(e){this.groupManager.ungroup(e)}getPlugin(){const e=this.graph.getPlugins().map(t=>Pt(t)?t.bind(this.graph)():(nr(t),t));return oF(e.filter(Boolean))}getPluginInstance(e){return this.graph.getPluginInstance(e)}setPlugin(e){const t=_U(e);this.graph.setPlugins(t)}updatePlugin(e){const t=this.getPlugin();this.setPlugin({...t,...e})}async addHull(e){await yU(this.graph,e)}async removeHull(e,t){await bU(this.graph,e,t)}async removeBatchHulls(e,t){await xU(this.graph,e,t)}async updateHull(e,t){await wU(this.graph,e,t)}getHull(e){return ev(this.graph,e)}getAllHulls(){return EU(this.graph)}}exports.AlignLayout=HW;exports.AlignmentPoint=SU;exports.AllEvent=Kr;exports.BEHAVIOR_FACTORIES=jT;exports.Behavior=sn;exports.BoundarySnapline=u1;exports.COLLAPSE_BUTTON_BG_KEY=GT;exports.COLLAPSE_BUTTON_BG_SIZE=Cj;exports.COLLAPSE_BUTTON_KEY=bo;exports.COLLAPSE_BUTTON_SIZE=qo;exports.CanvasEvent=Ch;exports.CanvasEventEnum=Ch;exports.ClickSelect=e1;exports.ConfigManager=CW;exports.CreateEdge=t1;exports.DEFAULT_BEHAVIORS=CZ;exports.DEFAULT_BEHAVIOR_CONFIG=uF;exports.DEFAULT_HULL_LABEL_STYLE=Wu;exports.DEFAULT_HULL_OPTIONS=vU;exports.DEFAULT_HULL_STYLE=dU;exports.DEFAULT_LAYOUT_CONFIG=B4e;exports.DEFAULT_PLUGINS=AU;exports.DEFAULT_PLUGIN_CONFIG=Zp;exports.DEVICE_COUNT_FONT_SIZE=Nj;exports.DEVICE_COUNT_KEY=kj;exports.DRILL_DOWN_ICON_KEY=ca;exports.DRILL_DOWN_ICON_SIZE=h0;exports.DataManager=LU;exports.DeviceGroup=xO;exports.DeviceNode=_W;exports.DrillDown=n1;exports.EDGE_TOOLBAR_OPTIONS=KW;exports.EdgeEvent=wc;exports.EdgeEventEnum=wc;exports.ElementToolbar=v0;exports.FONT_SIZE=mMe;exports.FixElementSize=r1;exports.FixedToolbar=g0;exports.G6_HULL_TYPE=Zl;exports.GROUP_NODE_SIZE=Dl;exports.GROUP_SHADOW_BLUR=xMe;exports.GROUP_SHADOW_COLOR=bMe;exports.GROUP_SHADOW_OFFSET_X=wMe;exports.GROUP_SHADOW_OFFSET_Y=EMe;exports.GROUP_TOOLBAR_OPTIONS=JW;exports.Graph=c_e;exports.GraphBackground=p0;exports.GraphEvent=xc;exports.GraphEventEnum=xc;exports.GraphRenderer=PO;exports.GroupEvent=Co;exports.GroupEventEnum=Co;exports.GroupManager=IU;exports.HullEventEnum=tf;exports.ICON_PADDING=lh;exports.ICON_SIZE=Pj;exports.LABEL_BG_KEY=Oj;exports.Layout=Ya;exports.LineEdge=EW;exports.MAX_GROUP_DEPTH=Jp;exports.MULTI_NODE_GROUP_TOOLBAR_OPTIONS=QW;exports.MxElementToolbar=v0;exports.MxFixedToolbar=g0;exports.MxGraphBackground=p0;exports.MxGraphRendererClass=PO;exports.NODE_SIZE=a1;exports.NODE_TOOLBAR_OPTIONS=ZW;exports.NodeEvent=nl;exports.NodeEventEnum=nl;exports.PADDING_LG=yMe;exports.PADDING_MD=Rj;exports.PADDING_SM=f0;exports.PLUGIN_FACTORIES=WT;exports.ParentPathCache=rMe;exports.PipelineUtils=o_e;exports.Plugin=on;exports.PolylineEdge=TW;exports.QuadraticEdge=AW;exports.STATUS_ICON_KEY=_j;exports.STATUS_ICON_SIZE=Ku;exports.SelectAll=hW;exports.TITLE_BG_KEY=Aj;exports.TITLE_KEY=$T;exports.addHullToGraph=yU;exports.applyPadding=wj;exports.batchTransformGraphData=a_e;exports.buildParentPath=iO;exports.calcElbowControlPoints=MW;exports.calculateBoundingBox=Qp;exports.calculateElementDepth=Q4e;exports.calculateLCA=nMe;exports.calculateMaxDepthAfterGrouping=bj;exports.clearAllHullMembership=WOe;exports.clearAllHullMetadata=GOe;exports.convertSVGToDataURL=dj;exports.convertToMxGraph=gs;exports.createGraphDataTransformer=i_e;exports.createHullCreatedPayload=sU;exports.createHullMetadataCombo=lU;exports.createHullRemovedPayload=SO;exports.createHullUpdatedPayload=oU;exports.createMinimalPipeline=RU;exports.createStandardPipeline=kO;exports.createTransformPipeline=My;exports.determineLinkSide=tAe;exports.executePipeline=_O;exports.executeRenderWithWait=op;exports.extractHullKeyFromComboId=DOe;exports.generateOperationId=yy;exports.getActiveStates=z4e;exports.getAlignLayoutOptions=VW;exports.getAllHullKeysFromMetadata=zOe;exports.getAllHullsFromGraph=EU;exports.getBehaviorOptions=tOe;exports.getBrushSelectBehavior=Ej;exports.getClickSelectBehavior=Sj;exports.getCollapseExpandBehavior=Mj;exports.getContextMenuOptions=XW;exports.getCreateEdgeBehavior=tW;exports.getDragCanvasBehavior=nW;exports.getDragElementBehavior=rW;exports.getDrillDownBehavior=iW;exports.getElementToolbarOptions=eU;exports.getFixElementSizeBehavior=sW;exports.getFixedToolbarOptions=tU;exports.getFocusElementBehavior=oW;exports.getForceLayoutOptions=qW;exports.getGraphBackgroundOptions=nU;exports.getGridLayoutOptions=jW;exports.getGroupHaloStyle=PW;exports.getGroupKeyStyle=kW;exports.getHistoryOptions=rU;exports.getHoverActivateBehavior=lW;exports.getHullFromGraph=ev;exports.getHullMetadataCombo=xy;exports.getHullMetadataComboId=Dc;exports.getHullMetadataFromGraph=TO;exports.getHullPluginOptions=pU;exports.getIcon=Ys;exports.getIconFromSprite=Ec;exports.getItemRect=ry;exports.getMinimapOptions=aU;exports.getMxTokenConfig=vj;exports.getNodeHull=HOe;exports.getNodeStyle=OW;exports.getRegisteredTransforms=CU;exports.getRingLayoutOptions=WW;exports.getScrollCanvasBehavior=uW;exports.getSelectAllBehavior=cW;exports.getSnaplineOptions=MU;exports.getThemeType=gj;exports.getTooltipOptions=TU;exports.getTreeData=pj;exports.getTreeLayoutOptions=UW;exports.getZoomCanvasBehavior=fW;exports.hasHullMetadataCombo=FOe;exports.hasParentChildRelationship=yj;exports.isHullMetadataCombo=by;exports.isHullMetadataComboId=BOe;exports.isMacOS=rO;exports.isTransformRegistered=PU;exports.isWindows=F4e;exports.mapG6ElementType=hj;exports.mapMxElementType=fj;exports.matchState=Ko;exports.mergeBoundingBoxes=iMe;exports.processParallelEdgesTransform=aO;exports.registerMembers=wy;exports.registerTransform=kU;exports.removeBatchHullsFromGraph=xU;exports.removeHullFromGraph=bU;exports.removeHullMetadataCombo=cU;exports.resetMinimap=IOe;exports.retrieveMxGraphFromContext=ma;exports.reverseEdgeData=Tj;exports.setupHistoryDrillIntegration=iU;exports.syncHullPluginsFromMetadata=hU;exports.toG6HullOptions=Sy;exports.transformBehavior=EO;exports.transformBehaviors=$W;exports.transformEdgeData=zl;exports.transformGraphOptions=OO;exports.transformLayout=YW;exports.transformLayoutConfig=s1;exports.transformPlugin=hp;exports.transformPlugins=OU;exports.unregisterAllMembers=Ey;exports.unregisterMembers=VOe;exports.unregisterTransform=NU;exports.updateHullInGraph=wU;exports.updateHullMetadataCombo=uU;exports.validateCompleteGroupSelection=xj;exports.validateDepthLimit=eMe;exports.validateElementStates=zT;exports.validateGroupsOnly=tMe;exports.validateMembership=gU;exports.validateMinimumSelection=mj;exports.validateParentChildRelationships=J4e;exports.validateRemoval=AO;exports.validateRemovalWithMembers=qOe;
|