From 9afdfecd2dbfda4722058cc8bede685fb11d94f2 Mon Sep 17 00:00:00 2001 From: autosubmit Date: Fri, 20 Jun 2025 11:04:17 +0800 Subject: [PATCH] Auto Submit --- index.html | 2 +- ...sync.js => p__knowledgegraph__Detail__id.0bfd4b3c.async.js | 4 ++-- umi.ed67603c.js => umi.b1f161b6.js | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) rename p__knowledgegraph__Detail__id.77b0b93e.async.js => p__knowledgegraph__Detail__id.0bfd4b3c.async.js (92%) rename umi.ed67603c.js => umi.b1f161b6.js (99%) diff --git a/index.html b/index.html index c367cf3bee..bc6b4dac4d 100644 --- a/index.html +++ b/index.html @@ -172,7 +172,7 @@ display: block !important; } - + \ No newline at end of file diff --git a/p__knowledgegraph__Detail__id.77b0b93e.async.js b/p__knowledgegraph__Detail__id.0bfd4b3c.async.js similarity index 92% rename from p__knowledgegraph__Detail__id.77b0b93e.async.js rename to p__knowledgegraph__Detail__id.0bfd4b3c.async.js index e53fd40283..de943c382e 100644 --- a/p__knowledgegraph__Detail__id.77b0b93e.async.js +++ b/p__knowledgegraph__Detail__id.0bfd4b3c.async.js @@ -269,7 +269,7 @@ YYYY`):Sh(y,"MM\u6708");case"year":return Sh(y,"YYYY");default:return Sh(y,"YYYY {name} {value} - `)},style:HK(te)})||this,x.timestamp=-1,x.prevCustomContentKey=x.attributes.contentKey,x.initShape(),x.render(x.attributes,x),x}return Object.defineProperty(a.prototype,"HTMLTooltipElement",{get:function(){return this.element},enumerable:!1,configurable:!0}),a.prototype.getContainer=function(){return this.element},Object.defineProperty(a.prototype,"elementSize",{get:function(){var y=this.element.offsetWidth,x=this.element.offsetHeight;return{width:y,height:x}},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"HTMLTooltipItemsElements",{get:function(){var y=this.attributes,x=y.data,b=y.template;return x.map(function(z,te){var re=z.name,ae=re===void 0?"":re,se=z.color,fe=se===void 0?"black":se,pe=z.index,be=(0,on._T)(z,["name","color","index"]),Oe=(0,on.pi)({name:ae,color:fe,index:pe!=null?pe:te},be);return OC(zK(b.item,Oe))})},enumerable:!1,configurable:!0}),a.prototype.render=function(y,x){this.renderHTMLTooltipElement(),this.updatePosition()},a.prototype.destroy=function(){var y;(y=this.element)===null||y===void 0||y.remove(),E.prototype.destroy.call(this)},a.prototype.show=function(y,x){var b=this;if(y!==void 0&&x!==void 0){var z=this.element.style.visibility==="hidden",te=function(){b.attributes.x=y!=null?y:b.attributes.x,b.attributes.y=x!=null?x:b.attributes.y,b.updatePosition()};z?this.closeTransition(te):te()}this.element.style.visibility="visible"},a.prototype.hide=function(y,x){y===void 0&&(y=0),x===void 0&&(x=0);var b=this.attributes.enterable;b&&this.isCursorEntered(y,x)||(this.element.style.visibility="hidden")},a.prototype.initShape=function(){var y=this.attributes.template;this.element=OC(y.container),this.id&&this.element.setAttribute("id",this.id)},a.prototype.renderCustomContent=function(){if(!(this.prevCustomContentKey!==void 0&&this.prevCustomContentKey===this.attributes.contentKey)){this.prevCustomContentKey=this.attributes.contentKey;var y=this.attributes.content;y&&(typeof y=="string"?this.element.innerHTML=y:XM(this.element,y))}},a.prototype.renderHTMLTooltipElement=function(){var y,x,b=this.attributes,z=b.template,te=b.title,re=b.enterable,ae=b.style,se=b.content,fe=TC(z.prefixCls),pe=this.element;if(this.element.style.pointerEvents=re?"auto":"none",se)this.renderCustomContent();else{te?(pe.innerHTML=z.title,pe.getElementsByClassName(fe.TITLE)[0].innerHTML=te):(x=(y=pe.getElementsByClassName(fe.TITLE))===null||y===void 0?void 0:y[0])===null||x===void 0||x.remove();var be=this.HTMLTooltipItemsElements,Oe=document.createElement("ul");Oe.className=fe.LIST,XM(Oe,be);var _e=this.element.querySelector(".".concat(fe.LIST));_e?_e.replaceWith(Oe):pe.appendChild(Oe)}wH(pe,ae)},a.prototype.getRelativeOffsetFromCursor=function(y){var x=this.attributes,b=x.position,z=x.offset,te=y||b,re=te.split("-"),ae={left:[-1,0],right:[1,0],top:[0,-1],bottom:[0,1]},se=this.elementSize,fe=se.width,pe=se.height,be=[-fe/2,-pe/2];return re.forEach(function(Oe){var _e=(0,on.CR)(be,2),je=_e[0],ze=_e[1],Je=(0,on.CR)(ae[Oe],2),qe=Je[0],ot=Je[1];be=[je+(fe/2+z[0])*qe,ze+(pe/2+z[1])*ot]}),be},a.prototype.setOffsetPosition=function(y){var x=(0,on.CR)(y,2),b=x[0],z=x[1],te=this.attributes,re=te.x,ae=re===void 0?0:re,se=te.y,fe=se===void 0?0:se,pe=te.container,be=pe.x,Oe=pe.y;this.element.style.left="".concat(+ae+be+b,"px"),this.element.style.top="".concat(+fe+Oe+z,"px")},a.prototype.updatePosition=function(){var y=this.attributes.showDelay,x=y===void 0?60:y,b=Date.now();this.timestamp>0&&b-this.timestampqe+pt,top:zeot+Et},Ct=[];fe.split("-").forEach(function(Zt){bt[Zt]?Ct.push(Je[Zt]):Ct.push(Zt)});var St=Ct.join("-");return this.getRelativeOffsetFromCursor(St)},a.prototype.isCursorEntered=function(y,x){if(this.element){var b=this.element.getBoundingClientRect(),z=b.x,te=b.y,re=b.width,ae=b.height;return new Vf(z,te,re,ae).isPointIn(y,x)}return!1},a.prototype.closeTransition=function(y){var x=this,b=this.element.style.transition;this.element.style.transition="none",y(),setTimeout(function(){x.element.style.transition=b},10)},a.tag="tooltip",a}(Hc),qM=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(te){te(z)})}return new(y||(y=Promise))(function(z,te){function re(fe){try{se(x.next(fe))}catch(pe){te(pe)}}function ae(fe){try{se(x.throw(fe))}catch(pe){te(pe)}}function se(fe){fe.done?z(fe.value):b(fe.value).then(re,ae)}se((x=x.apply(E,a||[])).next())})};class rx extends Pf{constructor(a,y){super(a,Object.assign({},rx.defaultOptions,y)),this.currentTarget=null,this.tooltipElement=null,this.container=null,this.isEnable=(x,b)=>{const{enable:z}=this.options;return typeof z=="function"?z(x,b):z},this.onClick=x=>{const{target:{id:b}}=x;this.currentTarget===b?this.hide(x):this.show(x)},this.onPointerMove=x=>{const{target:b}=x;!this.currentTarget||b.id===this.currentTarget||this.show(x)},this.onPointerLeave=x=>{this.hide(x)},this.onCanvasMove=x=>{this.hide(x)},this.onPointerEnter=x=>{this.show(x)},this.showById=x=>qM(this,void 0,void 0,function*(){const b={target:{id:x}};yield this.show(b)}),this.getElementData=(x,b)=>{const{model:z}=this.context;switch(b){case"node":return z.getNodeData([x]);case"edge":return z.getEdgeData([x]);case"combo":return z.getComboData([x]);default:return[]}},this.show=x=>qM(this,void 0,void 0,function*(){var b,z;const{client:te,target:{id:re}}=x;if(HE(x.target))return;const ae=this.context.graph.getElementType(re),{getContent:se,title:fe}=this.options,pe=this.getElementData(re,ae);if(!this.tooltipElement||!this.isEnable(x,pe))return;let be={};if(se){if(be.content=yield se(x,pe),!be.content)return}else{const je=this.context.graph.getElementRenderStyle(re),ze=ae==="node"?je.fill:je.stroke;be={title:fe||ae,data:pe.map(Je=>({name:"ID",value:Je.id||`${Je.source} -> ${Je.target}`,color:ze}))}}this.currentTarget=re;let Oe,_e;if(te)Oe=te.x,_e=te.y;else{const je=zh(pe,"0.style",{x:0,y:0});Oe=je.x,_e=je.y}(z=(b=this.options).onOpenChange)===null||z===void 0||z.call(b,!0),this.tooltipElement.update(Object.assign(Object.assign(Object.assign({},this.tooltipStyleProps),{x:Oe,y:_e,style:{".tooltip":{visibility:"visible"}}}),be))}),this.hide=x=>{var b,z,te,re,ae;if(!x){(z=(b=this.options).onOpenChange)===null||z===void 0||z.call(b,!1),(te=this.tooltipElement)===null||te===void 0||te.hide(),this.currentTarget=null;return}if(!this.tooltipElement||!this.currentTarget)return;const{client:{x:se,y:fe}}=x;(ae=(re=this.options).onOpenChange)===null||ae===void 0||ae.call(re,!1),this.tooltipElement.hide(se,fe),this.currentTarget=null},this.initTooltip=()=>{var x;const b=new WK({className:"tooltip",style:this.tooltipStyleProps});return(x=this.container)===null||x===void 0||x.appendChild(b.HTMLTooltipElement),b},this.render(),this.bindEvents()}getEvents(){return this.options.trigger==="click"?{"node:click":this.onClick,"edge:click":this.onClick,"combo:click":this.onClick,"canvas:click":this.onPointerLeave,contextmenu:this.onPointerLeave,drag:this.onPointerLeave}:{"node:pointerenter":this.onPointerEnter,"node:pointermove":this.onPointerMove,"canvas:pointermove":this.onCanvasMove,"edge:pointerenter":this.onPointerEnter,"edge:pointermove":this.onPointerMove,"combo:pointerenter":this.onPointerEnter,"combo:pointermove":this.onPointerMove,contextmenu:this.onPointerLeave,"node:drag":this.onPointerLeave}}update(a){var y;this.unbindEvents(),super.update(a),this.tooltipElement&&((y=this.container)===null||y===void 0||y.removeChild(this.tooltipElement.HTMLTooltipElement)),this.tooltipElement=this.initTooltip(),this.bindEvents()}render(){const{canvas:a}=this.context,y=a.getContainer();y&&(this.container=y,this.tooltipElement=this.initTooltip())}unbindEvents(){const{graph:a}=this.context,y=this.getEvents();Object.keys(y).forEach(x=>{a.off(x,y[x])})}bindEvents(){const{graph:a}=this.context,y=this.getEvents();Object.keys(y).forEach(x=>{a.on(x,y[x])})}get tooltipStyleProps(){const{canvas:a}=this.context,{center:y}=a.getBounds(),x=a.getContainer(),{top:b,left:z}=x.getBoundingClientRect(),{style:te,position:re,enterable:ae,container:se={x:-z,y:-b},title:fe,offset:pe}=this.options,[be,Oe]=y,[_e,je]=a.getSize();return{x:be,y:Oe,container:se,title:fe,bounding:{x:0,y:0,width:_e,height:je},position:re,enterable:ae,offset:pe,style:te}}destroy(){var a;this.unbindEvents(),this.tooltipElement&&((a=this.container)===null||a===void 0||a.removeChild(this.tooltipElement.HTMLTooltipElement)),super.destroy()}}rx.defaultOptions={trigger:"hover",position:"top-right",enterable:!1,enable:!0,offset:[10,10],style:{".tooltip":{visibility:"hidden"}}};var $M=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(te){te(z)})}return new(y||(y=Promise))(function(z,te){function re(fe){try{se(x.next(fe))}catch(pe){te(pe)}}function ae(fe){try{se(x.throw(fe))}catch(pe){te(pe)}}function se(fe){fe.done?z(fe.value):b(fe.value).then(re,ae)}se((x=x.apply(E,a||[])).next())})};let hp;function eL(E,a){return hp||(hp=document.createElement("canvas")),hp.width=E,hp.height=a,hp.getContext("2d").clearRect(0,0,E,a),hp}function GK(E,a,y,x){return $M(this,void 0,void 0,function*(){const b=eL(E,a),z=b.getContext("2d"),{rotate:te,opacity:re,textFill:ae,textFontSize:se,textFontFamily:fe,textFontVariant:pe,textFontWeight:be,textAlign:Oe,textBaseline:_e}=x;return z.textAlign=Oe,z.textBaseline=_e,z.translate(E/2,a/2),z.font=`${se}px ${fe} ${pe} ${be}`,te&&z.rotate(te),re&&(z.globalAlpha=re),ae&&(z.fillStyle=ae,z.fillText(`${y}`,0,0)),b.toDataURL()})}function KK(E,a,y,x){return $M(this,void 0,void 0,function*(){const b=eL(E,a),z=b.getContext("2d"),{rotate:te,opacity:re}=x;te&&z.rotate(te),re&&(z.globalAlpha=re);const ae=new Image;return ae.crossOrigin="anonymous",ae.src=y,new Promise(se=>{ae.onload=function(){const fe=E>ae.width?(E-ae.width)/2:0,pe=a>ae.height?(a-ae.height)/2:0;z.drawImage(ae,0,0,ae.width,ae.height,fe,pe,E-fe*2,a-pe*2),se(b.toDataURL())}})})}var VK=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(te){te(z)})}return new(y||(y=Promise))(function(z,te){function re(fe){try{se(x.next(fe))}catch(pe){te(pe)}}function ae(fe){try{se(x.throw(fe))}catch(pe){te(pe)}}function se(fe){fe.done?z(fe.value):b(fe.value).then(re,ae)}se((x=x.apply(E,a||[])).next())})},ZK=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);bsuper.update}});return VK(this,void 0,void 0,function*(){y.update.call(this,a);const x=this.options,{width:b,height:z,text:te,imageURL:re}=x,ae=ZK(x,["width","height","text","imageURL"]);Object.keys(ae).forEach(fe=>{fe.startsWith("background")&&(this.$element.style[fe]=a[fe])});const se=re?yield KK(b,z,re,ae):yield GK(b,z,te,ae);this.$element.style.backgroundImage=`url(${se})`})}destroy(){super.destroy(),this.$element.remove()}}ax.defaultOptions={width:200,height:100,opacity:.2,rotate:Math.PI/12,text:"",textFill:"#000",textFontSize:16,textAlign:"center",textBaseline:"middle",backgroundRepeat:"repeat"};const YK=["#7E92B5","#F4664A","#FFBE3A"],XK={type:"group",color:["#1783FF","#00C9C9","#F08F56","#D580FF","#7863FF","#DB9D0D","#60C42D","#FF80CA","#2491B3","#17C76F"]},JK={type:"group",color:["#99ADD1","#1783FF","#00C9C9","#F08F56","#D580FF","#7863FF","#DB9D0D","#60C42D","#FF80CA","#2491B3","#17C76F"]};function tL(E){const{bgColor:a,textColor:y,nodeColor:x,nodeColorDisabled:b,nodeStroke:z,nodeHaloStrokeOpacityActive:te=.15,nodeHaloStrokeOpacitySelected:re=.25,nodeOpacityDisabled:ae=.06,nodeIconOpacityInactive:se=.85,nodeOpacityInactive:fe=.25,nodeBadgePalette:pe=YK,nodePaletteOptions:be=XK,edgeColor:Oe,edgeColorDisabled:_e,edgePaletteOptions:je=JK,comboColor:ze,comboColorDisabled:Je,comboStroke:qe,comboStrokeDisabled:ot,edgeColorInactive:pt}=E;return{background:a,node:{palette:be,style:{donutOpacity:1,badgeBackgroundOpacity:1,badgeFill:"#fff",badgeFontSize:8,badgePadding:[0,4],badgePalette:pe,fill:x,fillOpacity:1,halo:!1,iconFill:"#fff",iconOpacity:1,labelBackground:!1,labelBackgroundFill:a,labelBackgroundLineWidth:0,labelBackgroundOpacity:.75,labelFill:y,labelFillOpacity:.85,labelLineHeight:16,labelPadding:[0,2],labelFontSize:12,labelFontWeight:400,labelOpacity:1,labelOffsetY:2,lineWidth:0,portFill:x,portLineWidth:1,portStroke:z,portStrokeOpacity:.65,size:32,stroke:z,strokeOpacity:1,zIndex:2},state:{selected:{halo:!0,haloLineWidth:24,haloStrokeOpacity:re,labelFontSize:12,labelFontWeight:"bold",lineWidth:4,stroke:z},active:{halo:!0,haloLineWidth:12,haloStrokeOpacity:te},highlight:{labelFontWeight:"bold",lineWidth:4,stroke:z,strokeOpacity:.85},inactive:{badgeBackgroundOpacity:fe,donutOpacity:fe,fillOpacity:fe,iconOpacity:se,labelFill:y,labelFillOpacity:fe,strokeOpacity:fe},disabled:{badgeBackgroundOpacity:.25,donutOpacity:ae,fill:b,fillOpacity:ae,iconFill:b,iconOpacity:.25,labelFill:y,labelFillOpacity:.25,strokeOpacity:ae}},animation:{enter:"fade",exit:"fade",show:"fade",hide:"fade",expand:"node-expand",collapse:"node-collapse",update:[{fields:["x","y","fill","stroke"]}],translate:[{fields:["x","y"]}]}},edge:{palette:je,style:{badgeBackgroundFill:Oe,badgeFill:"#fff",badgeFontSize:8,badgeOffsetX:10,fillOpacity:1,halo:!1,haloLineWidth:12,haloStrokeOpacity:1,increasedLineWidthForHitTesting:2,labelBackground:!1,labelBackgroundFill:a,labelBackgroundLineWidth:0,labelBackgroundOpacity:.75,labelBackgroundPadding:[4,4,4,4],labelFill:y,labelFontSize:12,labelFontWeight:400,labelOpacity:1,labelPlacement:"center",labelTextBaseline:"middle",lineWidth:1,stroke:Oe,strokeOpacity:1,zIndex:1},state:{selected:{halo:!0,haloStrokeOpacity:.25,labelFontSize:14,labelFontWeight:"bold",lineWidth:3},active:{halo:!0,haloStrokeOpacity:.15},highlight:{labelFontWeight:"bold",lineWidth:3},inactive:{stroke:pt,fillOpacity:.08,labelOpacity:.25,strokeOpacity:.08,badgeBackgroundOpacity:.25},disabled:{stroke:_e,fillOpacity:.45,strokeOpacity:.45,labelOpacity:.25,badgeBackgroundOpacity:.45}},animation:{enter:"fade",exit:"fade",expand:"path-in",collapse:"path-out",show:"fade",hide:"fade",update:[{fields:["sourceNode","targetNode"]},{fields:["stroke"],shape:"key"}],translate:[{fields:["sourceNode","targetNode"]}]}},combo:{style:{collapsedMarkerFill:a,collapsedMarkerFontSize:12,collapsedMarkerFillOpacity:1,collapsedSize:32,collapsedFillOpacity:1,fill:ze,halo:!1,haloLineWidth:12,haloStroke:qe,haloStrokeOpacity:.25,labelBackground:!1,labelBackgroundFill:a,labelBackgroundLineWidth:0,labelBackgroundOpacity:.75,labelBackgroundPadding:[2,4,2,4],labelFill:y,labelFontSize:12,labelFontWeight:400,labelOpacity:1,lineDash:0,lineWidth:1,fillOpacity:.04,strokeOpacity:1,padding:10,stroke:qe},state:{selected:{halo:!0,labelFontSize:14,labelFontWeight:700,lineWidth:4},active:{halo:!0},highlight:{labelFontWeight:700,lineWidth:4},inactive:{fillOpacity:.65,labelOpacity:.25,strokeOpacity:.65},disabled:{fill:Je,fillOpacity:.25,labelOpacity:.25,stroke:ot,strokeOpacity:.25}},animation:{enter:"fade",exit:"fade",show:"fade",hide:"fade",expand:"combo-expand",collapse:"combo-collapse",update:[{fields:["x","y"]},{fields:["fill","stroke","lineWidth"],shape:"key"}],translate:[{fields:["x","y"]}]}}}}const qK=tL({bgColor:"#000000",comboColor:"#fdfdfd",comboColorDisabled:"#d0e4ff",comboStroke:"#99add1",comboStrokeDisabled:"#969696",edgeColor:"#637088",edgeColorDisabled:"#637088",edgeColorInactive:"#D0E4FF",edgePaletteOptions:{type:"group",color:["#637088","#0F55A6","#008383","#9C5D38","#8B53A6","#4E40A6","#8F6608","#3E801D","#A65383","#175E75","#0F8248"]},nodeColor:"#1783ff",nodeColorDisabled:"#D0E4FF",nodeHaloStrokeOpacityActive:.25,nodeHaloStrokeOpacitySelected:.45,nodeIconOpacityInactive:.45,nodeOpacityDisabled:.25,nodeOpacityInactive:.45,nodeStroke:"#d0e4ff",textColor:"#ffffff"}),$K=tL({bgColor:"#ffffff",comboColor:"#99ADD1",comboColorDisabled:"#f0f0f0",comboStroke:"#99add1",comboStrokeDisabled:"#d9d9d9",edgeColor:"#99add1",edgeColorDisabled:"#d9d9d9",edgeColorInactive:"#1B324F",nodeColor:"#1783ff",nodeColorDisabled:"#1B324F",nodeHaloStrokeOpacityActive:.15,nodeHaloStrokeOpacitySelected:.25,nodeIconOpacityInactive:.85,nodeOpacityDisabled:.06,nodeOpacityInactive:.25,nodeStroke:"#000000",textColor:"#000000"});class fv extends Ob{beforeDraw(a,y){return a}afterLayout(a,y){}}class eV extends fv{beforeDraw(a){const{model:y}=this.context,x=a.add.combos,b=z=>{const te=[];return z.forEach((re,ae)=>{const fe=y.getAncestorsData(ae,"combo").map(pe=>oi(pe)).reverse();te.push([ae,re,fe.length])}),new Map(te.sort(([,,re],[,,ae])=>ae-re).map(([re,ae])=>[re,ae]))};return a.add.combos=b(x),a.update.combos=b(a.update.combos),a}}function bA(E,a,y,x,b){const z=oi(x),te=`${y}s`,re=b?x:E.add[te].get(z)||E.update[te].get(z)||E.remove[te].get(z)||x;Object.entries(E).forEach(([ae,se])=>{a===ae?se[te].set(z,re):se[te].delete(z)})}function ix(E,a){return Object.keys(E).every(y=>E[y]===a[y])}class tV extends fv{beforeDraw(a,y){if(y.stage==="visibility"||!this.context.model.model.hasTreeStructure(Ou))return a;const{model:x}=this.context,{add:b,update:z}=a,te=[...a.update.combos.entries(),...a.add.combos.entries()];for(;te.length;){const[re,ae]=te.pop();if(Qh(ae)){const se=x.getDescendantsData(re),fe=se.map(oi),{internal:pe,external:be}=lS(fe,Oe=>x.getRelatedEdgesData(Oe));se.forEach(Oe=>{const _e=oi(Oe),je=te.findIndex(([Je])=>Je===_e);je!==-1&&te.splice(je,1);const ze=x.getElementType(_e);bA(a,"remove",ze,Oe)}),pe.forEach(Oe=>bA(a,"remove","edge",Oe)),be.forEach(Oe=>{var _e;const je=oi(Oe);((_e=this.context.element)===null||_e===void 0?void 0:_e.getElement(je))?z.edges.set(je,Oe):b.edges.set(je,Oe)})}else{const se=x.getChildrenData(re),fe=se.map(oi),{edges:pe}=lS(fe,be=>x.getRelatedEdgesData(be));[...se,...pe].forEach(be=>{var Oe;const _e=oi(be),je=x.getElementType(_e);((Oe=this.context.element)===null||Oe===void 0?void 0:Oe.getElement(_e))?bA(a,"update",je,be):bA(a,"add",je,be),je==="combo"&&te.push([_e,be])})}}return a}}const nL=(E,a,y,x)=>{const b=`${y}s`,z=oi(x);!E.add[b].has(z)&&!E.update[b].has(z)&&E[a][b].set(oi(x),x)};class nV extends fv{getElement(a){return this.context.element.getElement(a)}handleExpand(a,y){if(nL(y,"add","node",a),Qh(a))return;const x=oi(a);nL(y,"add","node",a),this.context.model.getRelatedEdgesData(x,"out").forEach(te=>{bA(y,"add","edge",te)}),this.context.model.getChildrenData(x).forEach(te=>{this.handleExpand(te,y)})}beforeDraw(a){const{graph:y,model:x}=this.context;if(!x.model.hasTreeStructure(gA))return a;const{add:{nodes:b,edges:z},update:{nodes:te}}=a,re=new Map,ae=new Map;b.forEach((fe,pe)=>{Qh(fe)&&re.set(pe,fe)}),z.forEach(fe=>{if(y.getElementType(fe.source)!=="node")return;const pe=y.getNodeData(fe.source);Qh(pe)&&re.set(fe.source,pe)}),te.forEach((fe,pe)=>{const be=this.getElement(pe);if(!be)return;const Oe=be.attributes.collapsed;Qh(fe)?Oe||re.set(pe,fe):Oe&&ae.set(pe,fe)});const se=new Set;return re.forEach((fe,pe)=>{x.getDescendantsData(pe).forEach(Oe=>{const _e=oi(Oe);if(se.has(_e))return;bA(a,"remove","node",Oe),x.getRelatedEdgesData(_e).forEach(ze=>{bA(a,"remove","edge",ze)}),se.add(_e)})}),ae.forEach((fe,pe)=>{if(x.getAncestorsData(pe,gA).some(Qh)){bA(a,"remove","node",fe);return}this.handleExpand(fe,a)}),a}}const FC=new WeakMap;function nee(E,a,y){FC.has(E)||FC.set(E,{});const x=FC.get(E);if(!x[a])return x[a]=y,!0;const b=x[a];return rL(b,y)?!1:(x[a]=y,!0)}const rL=(E,a,y=2)=>{if(typeof E!="object"||typeof a!="object")return E===a;const x=Object.keys(E),b=Object.keys(a);if(x.length!==b.length)return!1;for(const z of x){const te=E[z],re=a[z];if(y>1&&typeof te=="object"&&typeof re=="object"){if(!rL(te,re,y-1))return!1}else if(te!==re)return!1}return!0};function rV(E,a,y){zw[E][a]&&jh.warn(`The extension ${a} of ${E} has been registered before, and will be overridden.`),Object.assign(zw[E],{[a]:y})}var aL=function(){function E(a){(0,xa.Z)(this,E),this.dragndropPluginOptions=a}return(0,kr.Z)(E,[{key:"apply",value:function(y){var x=this,b=y.renderingService,z=y.renderingContext,te=z.root.ownerDocument,re=te.defaultView,ae=function(fe){var pe=fe.target,be=pe===te,Oe=be&&x.dragndropPluginOptions.isDocumentDraggable?te:pe.closest&&pe.closest("[draggable=true]");if(Oe){var _e=!1,je=fe.timeStamp,ze=[fe.clientX,fe.clientY],Je=null,qe=[fe.clientX,fe.clientY],ot=function(){var Et=(0,z0.Z)((0,Gf.Z)().mark(function bt(Ct){var St,Zt,sn,gn,Dn,or;return(0,Gf.Z)().wrap(function(Dr){for(;;)switch(Dr.prev=Dr.next){case 0:if(_e){Dr.next=8;break}if(St=Ct.timeStamp-je,Zt=ms([Ct.clientX,Ct.clientY],ze),!(St<=x.dragndropPluginOptions.dragstartTimeThreshold||Zt<=x.dragndropPluginOptions.dragstartDistanceThreshold)){Dr.next=5;break}return Dr.abrupt("return");case 5:Ct.type="dragstart",Oe.dispatchEvent(Ct),_e=!0;case 8:if(Ct.type="drag",Ct.dx=Ct.clientX-qe[0],Ct.dy=Ct.clientY-qe[1],Oe.dispatchEvent(Ct),qe=[Ct.clientX,Ct.clientY],be){Dr.next=21;break}return sn=x.dragndropPluginOptions.overlap==="pointer"?[Ct.canvasX,Ct.canvasY]:pe.getBounds().center,Dr.next=17,te.elementsFromPoint(sn[0],sn[1]);case 17:gn=Dr.sent,Dn=gn[gn.indexOf(pe)+1],or=(Dn==null?void 0:Dn.closest("[droppable=true]"))||(x.dragndropPluginOptions.isDocumentDroppable?te:null),Je!==or&&(Je&&(Ct.type="dragleave",Ct.target=Je,Je.dispatchEvent(Ct)),or&&(Ct.type="dragenter",Ct.target=or,or.dispatchEvent(Ct)),Je=or,Je&&(Ct.type="dragover",Ct.target=Je,Je.dispatchEvent(Ct)));case 21:case"end":return Dr.stop()}},bt)}));return function(Ct){return Et.apply(this,arguments)}}();re.addEventListener("pointermove",ot);var pt=function(bt){if(_e){bt.detail={preventClick:!0};var Ct=bt.clone();Je&&(Ct.type="drop",Ct.target=Je,Je.dispatchEvent(Ct)),Ct.type="dragend",Oe.dispatchEvent(Ct),_e=!1}re.removeEventListener("pointermove",ot)};pe.addEventListener("pointerup",pt,{once:!0}),pe.addEventListener("pointerupoutside",pt,{once:!0})}};b.hooks.init.tap(E.tag,function(){re.addEventListener("pointerdown",ae)}),b.hooks.destroy.tap(E.tag,function(){re.removeEventListener("pointerdown",ae)})}}])}();aL.tag="Dragndrop";var aV=function(E){function a(){var y,x=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return(0,xa.Z)(this,a),y=Oa(this,a),y.name="dragndrop",y.options=x,y}return(0,Oi.Z)(a,E),(0,kr.Z)(a,[{key:"init",value:function(){this.addRenderingPlugin(new aL((0,Pa.Z)({overlap:"pointer",isDocumentDraggable:!1,isDocumentDroppable:!1,dragstartDistanceThreshold:0,dragstartTimeThreshold:0},this.options)))}},{key:"destroy",value:function(){this.removeAllRenderingPlugins()}},{key:"setOptions",value:function(x){Object.assign(this.plugins[0].dragndropPluginOptions,x)}}])}(H0),iL=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(te){te(z)})}return new(y||(y=Promise))(function(z,te){function re(fe){try{se(x.next(fe))}catch(pe){te(pe)}}function ae(fe){try{se(x.throw(fe))}catch(pe){te(pe)}}function se(fe){fe.done?z(fe.value):b(fe.value).then(re,ae)}se((x=x.apply(E,a||[])).next())})},oL=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b{const be=new Lw(Object.assign(Object.assign({},re),{supportsMutipleCanvasesInOneContainer:te,renderer:se[pe],background:te?pe==="background"?b:void 0:b}));return[pe,be]}));dL(fe),this.extends={config:this.config,renderer:x,renderers:se,layers:fe}}get ready(){return Promise.all(Object.entries(this.getLayers()).map(([,a])=>a.ready))}resize(a,y){Object.assign(this.extends.config,{width:a,height:y}),Object.values(this.getLayers()).forEach(x=>{const b=x.getCamera(),z=b.getPosition(),te=b.getFocalPoint();x.resize(a,y),b.setPosition(z),b.setFocalPoint(te)})}getBounds(a){return ry(Object.values(this.getLayers()).map(y=>a?y.getRoot().childNodes.find(b=>b.classList.includes(a)):y.getRoot()).filter(y=>(y==null?void 0:y.childNodes.length)>0).map(y=>y.getBounds()))}getContainer(){const a=this.extends.config.container;return typeof a=="string"?document.getElementById(a):a}getSize(){return[this.extends.config.width||0,this.extends.config.height||0]}appendChild(a,y){var x;const b=((x=a.style)===null||x===void 0?void 0:x.$layer)||"main";return this.getLayer(b).appendChild(a,y)}setRenderer(a){if(a===this.extends.renderer)return;const y=cL(a,this.config.enableMultiLayer?lL:sL);this.extends.renderers=y,Object.entries(y).forEach(([x,b])=>this.getLayer(x).setRenderer(b)),dL(this.getLayers())}getCanvasByViewport(a){return Sf(this.getLayer().viewport2Canvas(Bg(a)))}getViewportByCanvas(a){return Sf(this.getLayer().canvas2Viewport(Bg(a)))}getViewportByClient(a){return Sf(this.getLayer().client2Viewport(Bg(a)))}getClientByViewport(a){return Sf(this.getLayer().viewport2Client(Bg(a)))}getClientByCanvas(a){return this.getClientByViewport(this.getViewportByCanvas(a))}getCanvasByClient(a){const y=this.getLayer(),x=y.client2Viewport(Bg(a));return Sf(y.viewport2Canvas(x))}toDataURL(){return iL(this,arguments,void 0,function*(a={}){const y=globalThis.devicePixelRatio||1,{mode:x="viewport"}=a,b=oL(a,["mode"]);let[z,te,re,ae]=[0,0,0,0];if(x==="viewport")[re,ae]=this.getSize();else if(x==="overall"){const Je=this.getBounds(),qe=Z0(Je);[z,te]=Je.min,[re,ae]=qe}const se=OC('
'),fe=new Lw({width:re,height:ae,renderer:new Ay,devicePixelRatio:y,container:se,background:this.extends.config.background});yield fe.ready,fe.appendChild(this.getLayer("background").getRoot().cloneNode(!0)),fe.appendChild(this.getRoot().cloneNode(!0));const pe=this.getLayer("label").getRoot().cloneNode(!0),be=fe.viewport2Canvas({x:0,y:0}),Oe=this.getCanvasByViewport([0,0]);pe.translate([Oe[0]-be.x,Oe[1]-be.y]),pe.scale(1/this.getCamera().getZoom()),fe.appendChild(pe),fe.appendChild(this.getLayer("transient").getRoot().cloneNode(!0));const _e=this.getCamera(),je=fe.getCamera();if(x==="viewport")je.setZoom(_e.getZoom()),je.setPosition(_e.getPosition()),je.setFocalPoint(_e.getFocalPoint());else if(x==="overall"){const[Je,qe,ot]=je.getPosition(),[pt,Et,bt]=je.getFocalPoint();je.setPosition([Je+z,qe+te,ot]),je.setFocalPoint([pt+z,Et+te,bt])}const ze=fe.getContextService();return new Promise(Je=>{fe.addEventListener(AA.RERENDER,()=>iL(this,void 0,void 0,function*(){yield new Promise(ot=>setTimeout(ot,300));const qe=yield ze.toDataURL(b);Je(qe)}))})})}destroy(){Object.values(this.getLayers()).forEach(a=>{a.getCamera().cancelLandmarkAnimation(),a.destroy()})}}function cL(E,a){return Object.fromEntries(a.map(y=>{const x=(E==null?void 0:E(y))||new Ay;return x instanceof Ay&&x.setConfig({enableDirtyRectangleRendering:!1}),y==="main"?x.registerPlugin(new aV({isDocumentDraggable:!0,isDocumentDroppable:!0,dragstartDistanceThreshold:10,dragstartTimeThreshold:100})):x.unregisterPlugin(x.getPlugin("dom-interaction")),[y,x]}))}function dL(E){Object.entries(E).forEach(([a,y])=>{const x=y.getContextService().getDomElement();x!=null&&x.style&&(x.style.gridArea="1 / 1 / 2 / 2",x.style.outline="none",x.tabIndex=1,a!=="main"&&(x.style.pointerEvents="none")),x!=null&&x.parentElement&&(x.parentElement.style.display="grid")})}const Ap=E=>E?parseInt(E):0;function oV(E){const a=getComputedStyle(E),y=E.clientWidth||Ap(a.width),x=E.clientHeight||Ap(a.height),b=Ap(a.paddingLeft)+Ap(a.paddingRight),z=Ap(a.paddingTop)+Ap(a.paddingBottom);return[y-b,x-z]}function fL(E){if(!E)return[0,0];let a=640,y=480;const[x,b]=oV(E);a=x||a,y=b||y;const z=1,te=1;return[Math.max(vo(a)?a:z,z),Math.max(vo(y)?y:te,te)]}class ox{constructor(a){this.type=a}}class Pd extends ox{constructor(a,y){super(a),this.data=y}}class $A extends ox{constructor(a,y,x,b){super(a),this.animationType=y,this.animation=x,this.data=b}}class gp extends ox{constructor(a,y,x){super(a),this.elementType=y,this.data=x}}class sx extends ox{constructor(a,y){super(a),this.data=y}}function Yd(E,a){E.emit(a.type,a)}function sV(E){if(!E)return null;if(E instanceof bP)return{type:"canvas",element:E};let a=E;for(;a;){if(vy(a))return{type:"node",element:a};if(z3(a))return{type:"edge",element:a};if(uS(a))return{type:"combo",element:a};a=a.parentElement}return null}function hL(E){var a;return((a=E==null?void 0:E.style)===null||a===void 0?void 0:a.zIndex)||0}const vp="cachedStyle",lx=E=>`__${E}__`;function lV(E,a){const y=Array.isArray(a)?a:[a];zh(E,vp)||cy(E,vp,{}),y.forEach(x=>{cy(zh(E,vp),lx(x),E.attributes[x])})}function AL(E,a){return zh(E,[vp,lx(a)])}function uV(E,a){return lx(a)in(zh(E,vp)||{})}function ree(E,a,y){set(E,[vp,lx(a)],y)}class cV{constructor(a){this.tasks=[],this.animations=new Set,this.context=a}getTasks(){const a=[...this.tasks];return this.tasks=[],a}add(a,y){this.tasks.push([a,y])}animate(a,y,x){var b,z,te;(b=y==null?void 0:y.before)===null||b===void 0||b.call(y);const re=this.getTasks().map(([se,fe])=>{var pe,be,Oe;const{element:_e,elementType:je,stage:ze}=se,Je=a8(this.context.options,je,ze,a);(pe=fe==null?void 0:fe.before)===null||pe===void 0||pe.call(fe);const qe=Je.length?o8(_e,this.inferStyle(se,x),Je):null;return qe?((be=fe==null?void 0:fe.beforeAnimate)===null||be===void 0||be.call(fe,qe),qe.finished.then(()=>{var ot,pt;(ot=fe==null?void 0:fe.afterAnimate)===null||ot===void 0||ot.call(fe,qe),(pt=fe==null?void 0:fe.after)===null||pt===void 0||pt.call(fe),this.animations.delete(qe)})):(Oe=fe==null?void 0:fe.after)===null||Oe===void 0||Oe.call(fe),qe}).filter(Boolean);re.forEach(se=>this.animations.add(se));const ae=Hw(re);return ae?((z=y==null?void 0:y.beforeAnimate)===null||z===void 0||z.call(y,ae),ae.finished.then(()=>{var se,fe;(se=y==null?void 0:y.afterAnimate)===null||se===void 0||se.call(y,ae),(fe=y==null?void 0:y.after)===null||fe===void 0||fe.call(y),this.release()})):(te=y==null?void 0:y.after)===null||te===void 0||te.call(y),ae}inferStyle(a,y){var x,b;const{element:z,elementType:te,stage:re,originalStyle:ae,updatedStyle:se={}}=a;a.modifiedStyle||(a.modifiedStyle=Object.assign(Object.assign({},ae),se));const{modifiedStyle:fe}=a,pe={},be={};if(re==="enter")Object.assign(pe,{opacity:0});else if(re==="exit")Object.assign(be,{opacity:0});else if(re==="show")Object.assign(pe,{opacity:0}),Object.assign(be,{opacity:(x=AL(z,"opacity"))!==null&&x!==void 0?x:ny("opacity")});else if(re==="hide")Object.assign(pe,{opacity:(b=AL(z,"opacity"))!==null&&b!==void 0?b:ny("opacity")}),Object.assign(be,{opacity:0});else if(re==="collapse"){const{collapse:Oe}=y||{},{target:_e,descendants:je,position:ze}=Oe;if(te==="node"){if(je.includes(z.id)){const[Je,qe,ot]=ze;Object.assign(be,{x:Je,y:qe,z:ot})}}else if(te==="combo"){if(z.id===_e||je.includes(z.id)){const[Je,qe]=ze;Object.assign(be,{x:Je,y:qe,childrenNode:ae.childrenNode})}}else te==="edge"&&Object.assign(be,{sourceNode:fe.sourceNode,targetNode:fe.targetNode})}else if(re==="expand"){const{expand:Oe}=y||{},{target:_e,descendants:je,position:ze}=Oe;if(te==="node"){if(z.id===_e||je.includes(z.id)){const[Je,qe,ot]=ze;Object.assign(pe,{x:Je,y:qe,z:ot})}}else if(te==="combo"){if(z.id===_e||je.includes(z.id)){const[Je,qe,ot]=ze;Object.assign(pe,{x:Je,y:qe,z:ot,childrenNode:fe.childrenNode})}}else te==="edge"&&Object.assign(pe,{sourceNode:fe.sourceNode,targetNode:fe.targetNode})}return[Object.keys(pe).length>0?Object.assign({},ae,pe):ae,Object.keys(be).length>0?Object.assign({},fe,be):fe]}stop(){this.animations.forEach(a=>a.cancel())}clear(){this.tasks=[]}release(){var a,y;const{canvas:x}=this.context,b=(y=(a=x.document)===null||a===void 0?void 0:a.timeline)===null||y===void 0?void 0:y.animationsWithPromises;b&&(x.document.timeline.animationsWithPromises=b.filter(z=>z.playState!=="finished"))}destroy(){this.stop(),this.animations.clear(),this.tasks=[]}}class dV{constructor(a){this.batchCount=0,this.context=a}emit(a){const{graph:y}=this.context;y.emit(a.type,a)}startBatch(a=!0){this.batchCount++,this.batchCount===1&&this.emit(new Pd(No.BATCH_START,{initiate:a}))}endBatch(){this.batchCount--,this.batchCount===0&&this.emit(new Pd(No.BATCH_END))}get isBatching(){return this.batchCount>0}destroy(){this.context=null}}class fV extends Lb{constructor(a){super(a),this.currentTarget=null,this.currentTargetType=null,this.category="behavior",this.forwardCanvasEvents=y=>{const{target:x}=y,b=sV(x);if(!b)return;const{graph:z,canvas:te}=this.context,{type:re,element:ae}=b;if("destroyed"in ae&&(HE(ae)||ae.destroyed))return;const{type:se,detail:fe,button:pe}=y,be=Object.assign(Object.assign({},y),{target:ae,targetType:re,originalTarget:x});se===Zi.POINTER_MOVE&&(this.currentTarget!==ae&&(this.currentTarget&&z.emit(`${this.currentTargetType}:${Zi.POINTER_LEAVE}`,Object.assign(Object.assign({},be),{type:Zi.POINTER_LEAVE,target:this.currentTarget,targetType:this.currentTargetType})),ae&&(Object.assign(be,{type:Zi.POINTER_ENTER}),z.emit(`${re}:${Zi.POINTER_ENTER}`,be))),this.currentTarget=ae,this.currentTargetType=re),se===Zi.CLICK&&pe===2||(z.emit(`${re}:${se}`,be),z.emit(se,be)),se===Zi.CLICK&&fe===2&&(Object.assign(be,{type:Zi.DBLCLICK}),z.emit(`${re}:${Zi.DBLCLICK}`,be),z.emit(Zi.DBLCLICK,be)),se===Zi.POINTER_DOWN&&pe===2&&(Object.assign(be,{type:Zi.CONTEXT_MENU,preventDefault:()=>{var Oe;(Oe=te.getContainer())===null||Oe===void 0||Oe.addEventListener(Zi.CONTEXT_MENU,_e=>_e.preventDefault(),{once:!0})}}),z.emit(`${re}:${Zi.CONTEXT_MENU}`,be),z.emit(Zi.CONTEXT_MENU,be))},this.forwardContainerEvents=y=>{this.context.graph.emit(y.type,y)},this.forwardEvents(),this.setBehaviors(this.context.options.behaviors||[])}setBehaviors(a){this.setExtensions(a)}forwardEvents(){const a=this.context.canvas.getContainer();a&&[Ym.KEY_DOWN,Ym.KEY_UP].forEach(x=>{a.addEventListener(x,this.forwardContainerEvents)});const y=this.context.canvas.document;y&&[Zi.CLICK,Zi.DBLCLICK,Zi.POINTER_OVER,Zi.POINTER_LEAVE,Zi.POINTER_ENTER,Zi.POINTER_MOVE,Zi.POINTER_OUT,Zi.POINTER_DOWN,Zi.POINTER_UP,Zi.CONTEXT_MENU,Zi.DRAG_START,Zi.DRAG,Zi.DRAG_END,Zi.DRAG_ENTER,Zi.DRAG_OVER,Zi.DRAG_LEAVE,Zi.DROP,Zi.WHEEL].forEach(x=>{y.addEventListener(x,this.forwardCanvasEvents)})}destroy(){const a=this.context.canvas.getContainer();a&&[Ym.KEY_DOWN,Ym.KEY_UP].forEach(y=>{a.removeEventListener(y,this.forwardContainerEvents)}),this.context.canvas.document.removeAllEventListeners(),super.destroy()}}function hV(E,a){a===void 0&&(a=new Map);var y=[];if(Array.isArray(E))for(var x=0,b=E.length;x_e.length!==je.length?!1:_e.every((ze,Je)=>ze===je[Je]),Oe=(_e,je)=>{const ze=Object.keys(_e),Je=Object.keys(je);return ze.length!==Je.length?!1:ze.every(qe=>_e[qe]===je[qe])};return!(!Oe(te,pe)||!be(z,fe)||!be(y,re)||!Oe(x,ae)||!Oe(b,se))}var AV=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b0}silence(a){this.isTraceless=!0,a(),this.isTraceless=!1}isCombo(a){return this.comboIds.has(a)||this.latestRemovedComboIds.has(a)}getData(){return{nodes:this.getNodeData(),edges:this.getEdgeData(),combos:this.getComboData()}}getNodeData(a){return this.model.getAllNodes().reduce((y,x)=>{const b=df(x);return this.isCombo(oi(b))||(a===void 0||a.includes(oi(b)))&&y.push(b),y},[])}getEdgeDatum(a){return df(this.model.getEdge(a))}getEdgeData(a){return this.model.getAllEdges().reduce((y,x)=>{const b=df(x);return(a===void 0||a.includes(oi(b)))&&y.push(b),y},[])}getComboData(a){return this.model.getAllNodes().reduce((y,x)=>{const b=df(x);return this.isCombo(oi(b))&&(a===void 0||a.includes(oi(b)))&&y.push(b),y},[])}getRootsData(a=gA){return this.model.getRoots(a).map(df)}getAncestorsData(a,y){const{model:x}=this;return!x.hasNode(a)||!x.hasTreeStructure(y)?[]:x.getAncestors(a,y).map(df)}getDescendantsData(a){const y=this.getElementDataById(a),x=[];return em(y,b=>{b!==y&&x.push(b)},b=>this.getChildrenData(oi(b)),"TB"),x}getParentData(a,y){const{model:x}=this;if(!y){jh.warn("The hierarchy structure key is not specified");return}if(!x.hasNode(a)||!x.hasTreeStructure(y))return;const b=x.getParent(a,y);return b?df(b):void 0}getChildrenData(a){const y=this.getElementType(a)==="node"?gA:Ou,{model:x}=this;return!x.hasNode(a)||!x.hasTreeStructure(y)?[]:x.getChildren(a,y).map(df)}getElementsDataByType(a){return a==="node"?this.getNodeData():a==="edge"?this.getEdgeData():a==="combo"?this.getComboData():[]}getElementDataById(a){return this.getElementType(a)==="edge"?this.getEdgeDatum(a):this.getNodeLikeDatum(a)}getNodeLikeDatum(a){const y=this.model.getNode(a);return df(y)}getNodeLikeData(a){return this.model.getAllNodes().reduce((y,x)=>{const b=df(x);return a?a.includes(oi(b))&&y.push(b):y.push(b),y},[])}getElementDataByState(a,y){return this.getElementsDataByType(a).filter(b=>{var z;return(z=b.states)===null||z===void 0?void 0:z.includes(y)})}getElementState(a){var y;return((y=this.getElementDataById(a))===null||y===void 0?void 0:y.states)||[]}hasNode(a){return this.model.hasNode(a)&&!this.isCombo(a)}hasEdge(a){return this.model.hasEdge(a)}hasCombo(a){return this.model.hasNode(a)&&this.isCombo(a)}getRelatedEdgesData(a,y="both"){return this.model.getRelatedEdges(a,y).map(df)}getNeighborNodesData(a){return this.model.getNeighbors(a).map(df)}setData(a){const{nodes:y=[],edges:x=[],combos:b=[]}=a,{nodes:z,edges:te,combos:re}=this.getData(),ae=J0(z,y,pe=>oi(pe),mp),se=J0(te,x,pe=>oi(pe),mp),fe=J0(re,b,pe=>oi(pe),mp);this.batch(()=>{const pe={nodes:ae.enter,edges:se.enter,combos:fe.enter};this.addData(pe),this.computeZIndex(pe,"add",!0);const be={nodes:ae.update,edges:se.update,combos:fe.update};this.updateData(be),this.computeZIndex(be,"update",!0);const Oe={nodes:ae.exit.map(oi),edges:se.exit.map(oi),combos:fe.exit.map(oi)};this.removeData(Oe)})}addData(a){const{nodes:y,edges:x,combos:b}=a;this.batch(()=>{this.addComboData(b),this.addNodeData(y),this.addEdgeData(x)}),this.computeZIndex(a,"add")}addNodeData(a=[]){a.length&&(this.model.addNodes(a.map(y=>(this.pushChange({value:y,type:ic.NodeAdded}),RC(y)))),this.updateNodeLikeHierarchy(a),this.computeZIndex({nodes:a},"add"))}addEdgeData(a=[]){a.length&&(this.model.addEdges(a.map(y=>(this.pushChange({value:y,type:ic.EdgeAdded}),RC(y)))),this.computeZIndex({edges:a},"add"))}addComboData(a=[]){if(!a.length)return;const{model:y}=this;y.hasTreeStructure(Ou)||y.attachTreeStructure(Ou),y.addNodes(a.map(x=>(this.comboIds.add(oi(x)),this.pushChange({value:x,type:ic.ComboAdded}),RC(x)))),this.updateNodeLikeHierarchy(a),this.computeZIndex({combos:a},"add")}addChildrenData(a,y){const x=this.getNodeLikeDatum(a),b=y.map(oi);this.addNodeData(y),this.updateNodeData([{id:a,children:[...x.children||[],...b]}]),this.addEdgeData(b.map(z=>({source:a,target:z})))}computeZIndex(a,y,x=!1){!x&&this.isBatching()||this.batch(()=>{const{nodes:b=[],edges:z=[],combos:te=[]}=a;te.forEach(re=>{var ae,se,fe;const pe=oi(re);if(y==="add"&&vo((ae=re.style)===null||ae===void 0?void 0:ae.zIndex)||y==="update"&&!("combo"in re))return;const be=this.getParentData(pe,Ou),Oe=be?((fe=(se=be.style)===null||se===void 0?void 0:se.zIndex)!==null&&fe!==void 0?fe:0)+1:0;this.preventUpdateNodeLikeHierarchy(()=>{this.updateComboData([{id:pe,style:{zIndex:Oe}}])})}),b.forEach(re=>{var ae,se,fe;const pe=oi(re);if(y==="add"&&vo((ae=re.style)===null||ae===void 0?void 0:ae.zIndex)||y==="update"&&!("combo"in re)&&!("children"in re))return;let be=0;const Oe=this.getParentData(pe,Ou);if(Oe)be=(((se=Oe.style)===null||se===void 0?void 0:se.zIndex)||0)+1;else{const _e=this.getParentData(pe,gA);_e&&(be=((fe=_e==null?void 0:_e.style)===null||fe===void 0?void 0:fe.zIndex)||0)}this.preventUpdateNodeLikeHierarchy(()=>{this.updateNodeData([{id:pe,style:{zIndex:be}}])})}),z.forEach(re=>{var ae,se,fe,pe,be;if(vo((ae=re.style)===null||ae===void 0?void 0:ae.zIndex))return;let{id:Oe,source:_e,target:je}=re;if(!Oe)Oe=oi(re);else{const qe=this.getEdgeDatum(Oe);_e=qe.source,je=qe.target}if(!_e||!je)return;const ze=((fe=(se=this.getNodeLikeDatum(_e))===null||se===void 0?void 0:se.style)===null||fe===void 0?void 0:fe.zIndex)||0,Je=((be=(pe=this.getNodeLikeDatum(je))===null||pe===void 0?void 0:pe.style)===null||be===void 0?void 0:be.zIndex)||0;this.updateEdgeData([{id:oi(re),style:{zIndex:Math.max(ze,Je)-1}}])})})}getFrontZIndex(a){var y;const x=this.getElementType(a),b=this.getElementDataById(a),z=this.getData();if(Object.assign(z,{[`${x}s`]:z[`${x}s`].filter(te=>oi(te)!==a)}),x==="combo"&&!Qh(b)){const te=new Set(this.getAncestorsData(a,Ou).map(oi));z.nodes=z.nodes.filter(re=>!te.has(oi(re))),z.combos=z.combos.filter(re=>!te.has(oi(re))),z.edges=z.edges.filter(({source:re,target:ae})=>!te.has(re)&&!te.has(ae))}return Math.max(((y=b.style)===null||y===void 0?void 0:y.zIndex)||0,0,...Object.values(z).flat().map(te=>{var re;return(((re=te==null?void 0:te.style)===null||re===void 0?void 0:re.zIndex)||0)+1}))}updateNodeLikeHierarchy(a){if(!this.enableUpdateNodeLikeHierarchy)return;const{model:y}=this;a.forEach(x=>{const b=oi(x),z=fE(x);z!==void 0&&(y.hasTreeStructure(Ou)||y.attachTreeStructure(Ou),z===null&&this.refreshComboData(b),this.setParent(b,fE(x),Ou));const te=x.children||[];if(te.length){y.hasTreeStructure(gA)||y.attachTreeStructure(gA);const re=te.filter(ae=>y.hasNode(ae));re.forEach(ae=>this.setParent(ae,b,gA)),re.length!==te.length&&this.updateNodeData([{id:b,children:re}])}})}preventUpdateNodeLikeHierarchy(a){this.enableUpdateNodeLikeHierarchy=!1,a(),this.enableUpdateNodeLikeHierarchy=!0}updateData(a){const{nodes:y,edges:x,combos:b}=a;this.batch(()=>{this.updateNodeData(y),this.updateComboData(b),this.updateEdgeData(x)}),this.computeZIndex(a,"update")}updateNodeData(a=[]){if(!a.length)return;const{model:y}=this;this.batch(()=>{const x=[];a.forEach(b=>{const z=oi(b),te=df(y.getNode(z));if(mp(te,b))return;const re=hv(te,b);this.pushChange({value:re,original:te,type:ic.NodeUpdated}),y.mergeNodeData(z,re),x.push(re)}),this.updateNodeLikeHierarchy(x)}),this.computeZIndex({nodes:a},"update")}refreshData(){const{nodes:a,edges:y,combos:x}=this.getData();a.forEach(b=>{this.pushChange({value:b,original:b,type:ic.NodeUpdated})}),y.forEach(b=>{this.pushChange({value:b,original:b,type:ic.EdgeUpdated})}),x.forEach(b=>{this.pushChange({value:b,original:b,type:ic.ComboUpdated})})}syncNodeLikeDatum(a){const{model:y}=this,x=oi(a);if(!y.hasNode(x))return;const b=df(y.getNode(x)),z=hv(b,a);y.mergeNodeData(x,z)}syncEdgeDatum(a){const{model:y}=this,x=oi(a);if(!y.hasEdge(x))return;const b=df(y.getEdge(x)),z=hv(b,a);y.mergeEdgeData(x,z)}updateEdgeData(a=[]){if(!a.length)return;const{model:y}=this;this.batch(()=>{a.forEach(x=>{const b=oi(x),z=df(y.getEdge(b));if(mp(z,x))return;x.source&&z.source!==x.source&&y.updateEdgeSource(b,x.source),x.target&&z.target!==x.target&&y.updateEdgeTarget(b,x.target);const te=hv(z,x);this.pushChange({value:te,original:z,type:ic.EdgeUpdated}),y.mergeEdgeData(b,te)})}),this.computeZIndex({edges:a},"update")}updateComboData(a=[]){if(!a.length)return;const{model:y}=this;y.batch(()=>{const x=[];a.forEach(b=>{const z=oi(b),te=df(y.getNode(z));if(mp(te,b))return;const re=hv(te,b);this.pushChange({value:re,original:te,type:ic.ComboUpdated}),y.mergeNodeData(z,re),x.push(re)}),this.updateNodeLikeHierarchy(x)}),this.computeZIndex({combos:a},"update")}setParent(a,y,x,b=!0){if(a===y)return;const z=this.getNodeLikeDatum(a),te=fE(z);if(te!==y&&x===Ou){const re={id:a,combo:y};this.isCombo(a)?this.syncNodeLikeDatum(re):this.syncNodeLikeDatum(re)}this.model.setParent(a,y,x),b&&x===Ou&&hV([te,y]).forEach(re=>{re!==void 0&&this.refreshComboData(re)})}refreshComboData(a){const y=this.getComboData([a])[0],x=this.getAncestorsData(a,Ou);y&&this.pushChange({value:y,original:y,type:ic.ComboUpdated}),x.forEach(b=>{this.pushChange({value:b,original:b,type:ic.ComboUpdated})})}getElementPosition(a){const y=this.getElementDataById(a);return Vd(y)}translateNodeLikeBy(a,y){this.isCombo(a)?this.translateComboBy(a,y):this.translateNodeBy(a,y)}translateNodeLikeTo(a,y){this.isCombo(a)?this.translateComboTo(a,y):this.translateNodeTo(a,y)}translateNodeBy(a,y){const x=this.getElementPosition(a),b=fl(x,[...y,0].slice(0,3));this.translateNodeTo(a,b)}translateNodeTo(a,y){const[x=0,b=0,z=0]=y;this.preventUpdateNodeLikeHierarchy(()=>{this.updateNodeData([{id:a,style:{x,y:b,z}}])})}translateComboBy(a,y){const[x=0,b=0,z=0]=y;if([x,b,z].some(isNaN)||[x,b,z].every(ae=>ae===0))return;const te=this.getComboData([a])[0];if(!te)return;const re=new Set;em(te,ae=>{const se=oi(ae);if(re.has(se))return;re.add(se);const[fe,pe,be]=Vd(ae),Oe=hv(ae,{style:{x:fe+x,y:pe+b,z:be+z}});this.pushChange({value:Oe,original:ae,type:this.isCombo(se)?ic.ComboUpdated:ic.NodeUpdated}),this.model.mergeNodeData(se,Oe)},ae=>this.getChildrenData(oi(ae)),"BT")}translateComboTo(a,y){var x;if(y.some(isNaN))return;const[b=0,z=0,te=0]=y,re=(x=this.getComboData([a]))===null||x===void 0?void 0:x[0];if(!re)return;const[ae,se,fe]=Vd(re),pe=b-ae,be=z-se,Oe=te-fe;em(re,_e=>{const je=oi(_e),[ze,Je,qe]=Vd(_e),ot=hv(_e,{style:{x:ze+pe,y:Je+be,z:qe+Oe}});this.pushChange({value:ot,original:_e,type:this.isCombo(je)?ic.ComboUpdated:ic.NodeUpdated}),this.model.mergeNodeData(je,ot)},_e=>this.getChildrenData(oi(_e)),"BT")}removeData(a){const{nodes:y,edges:x,combos:b}=a;this.batch(()=>{this.removeEdgeData(x),this.removeNodeData(y),this.removeComboData(b),this.latestRemovedComboIds=new Set(b)})}removeNodeData(a=[]){a.length&&this.batch(()=>{a.forEach(y=>{this.removeEdgeData(this.getRelatedEdgesData(y).map(oi)),this.pushChange({value:this.getNodeData([y])[0],type:ic.NodeRemoved}),this.removeNodeLikeHierarchy(y)}),this.model.removeNodes(a)})}removeEdgeData(a=[]){a.length&&(a.forEach(y=>this.pushChange({value:this.getEdgeData([y])[0],type:ic.EdgeRemoved})),this.model.removeEdges(a))}removeComboData(a=[]){a.length&&this.batch(()=>{a.forEach(y=>{this.pushChange({value:this.getComboData([y])[0],type:ic.ComboRemoved}),this.removeNodeLikeHierarchy(y),this.comboIds.delete(y)}),this.model.removeNodes(a)})}removeNodeLikeHierarchy(a){if(this.model.hasTreeStructure(Ou)){const y=fE(this.getNodeLikeDatum(a));this.setParent(a,void 0,Ou,!1),this.model.getChildren(a,Ou).forEach(x=>{const b=df(x),z=oi(b);this.setParent(oi(b),y,Ou,!1);const te=hv(b,{id:oi(b),combo:y});this.pushChange({value:te,original:b,type:this.isCombo(z)?ic.ComboUpdated:ic.NodeUpdated}),this.model.mergeNodeData(oi(b),te)}),Ko(y)||this.refreshComboData(y)}}getElementType(a){if(this.model.hasNode(a))return this.isCombo(a)?"combo":"node";if(this.model.hasEdge(a))return"edge";throw new Error(m0(`Unknown element type of id: ${a}`))}destroy(){const{model:a}=this,y=a.getAllNodes(),x=a.getAllEdges();a.removeEdges(x.map(b=>b.id)),a.removeNodes(y.map(b=>b.id)),this.context={}}}var Qy=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(te){te(z)})}return new(y||(y=Promise))(function(z,te){function re(fe){try{se(x.next(fe))}catch(pe){te(pe)}}function ae(fe){try{se(x.throw(fe))}catch(pe){te(pe)}}function se(fe){fe.done?z(fe.value):b(fe.value).then(re,ae)}se((x=x.apply(E,a||[])).next())})};class mV{constructor(a){this.elementMap={},this.shapeTypeMap={},this.paletteStyle={},this.defaultStyle={},this.stateStyle={},this.visibilityCache=new WeakMap,this.context=a}init(){this.initContainer()}initContainer(){if(!this.container||this.container.destroyed){const{canvas:a}=this.context;this.container=a.appendChild(new Kd({className:"elements"}))}}emit(a,y){y.silence||Yd(this.context.graph,a)}forEachElementData(a){$v.forEach(y=>{const x=this.context.model.getElementsDataByType(y);a(y,x)})}getElementType(a,y){var x;const{options:b,graph:z}=this.context,te=((x=b[a])===null||x===void 0?void 0:x.type)||y.type;return te?typeof te=="string"?te:te.call(z,y):a==="edge"?"line":"circle"}getTheme(a){return VP(this.context.options)[a]||{}}getThemeStyle(a){return this.getTheme(a).style||{}}getThemeStateStyle(a,y){const{state:x={}}=this.getTheme(a);return Object.assign({},...y.map(b=>x[b]||{}))}computePaletteStyle(){const{options:a}=this.context;this.paletteStyle={},this.forEachElementData((y,x)=>{var b,z;const te=Object.assign({},i3((b=this.getTheme(y))===null||b===void 0?void 0:b.palette),i3((z=a[y])===null||z===void 0?void 0:z.palette));te!=null&&te.field&&Object.assign(this.paletteStyle,P_(x,te))})}getPaletteStyle(a,y){const x=this.paletteStyle[y];return x?a==="edge"?{stroke:x}:{fill:x}:{}}computeElementDefaultStyle(a,y){var x;const{options:b}=this.context,z=((x=b[a])===null||x===void 0?void 0:x.style)||{};"transform"in z&&Array.isArray(z.transform)&&(z.transform=[...z.transform]),this.defaultStyle[oi(y.datum)]=a3(z,y)}computeElementsDefaultStyle(a){const{graph:y}=this.context;this.forEachElementData((x,b)=>{const z=b.length;for(let te=0;tethis.getElementStateStyle(a,b,x)))}computeElementsStatesStyle(a){const{graph:y}=this.context;this.forEachElementData((x,b)=>{const z=b.length;for(let te=0;tethis.elementMap[a])}getEdges(){return this.context.model.getEdgeData().map(a=>this.elementMap[oi(a)])}getCombos(){return this.context.model.getComboData().map(({id:a})=>this.elementMap[a])}getElementComputedStyle(a,y){const x=oi(y),b=this.getThemeStyle(a),z=this.getPaletteStyle(a,x),te=y.style||{},re=this.getDefaultStyle(x),ae=this.getThemeStateStyle(a,this.getElementState(x)),se=this.getStateStyle(x),fe=Object.assign({},b,z,te,re,ae,se);if(a==="combo"){const pe=this.context.model.getChildrenData(x),Oe=!!fe.collapsed?[]:pe.map(oi).filter(_e=>this.getElement(_e));Object.assign(fe,{childrenNode:Oe,childrenData:pe})}return fe}getDrawData(a){this.init();const y=this.computeChangesAndDrawData(a);if(!y)return null;const{type:x="draw",stage:b=x}=a;return this.markDestroyElement(y.drawData),this.computeStyle(b),{type:x,stage:b,data:y}}draw(a={animation:!0}){const y=this.getDrawData(a);if(!y)return;const{data:{drawData:{add:x,update:b,remove:z}}}=y;return this.destroyElements(z,a),this.createElements(x,a),this.updateElements(b,a),this.setAnimationTask(a,y)}preLayoutDraw(){return Qy(this,arguments,void 0,function*(a={animation:!0}){var y,x;const b=this.getDrawData(a);if(!b)return;const{data:{drawData:z}}=b;yield(x=(y=this.context.layout)===null||y===void 0?void 0:y.preLayout)===null||x===void 0?void 0:x.call(y,z);const{add:te,update:re,remove:ae}=z;return this.destroyElements(ae,a),this.createElements(te,a),this.updateElements(re,a),this.setAnimationTask(a,b)})}setAnimationTask(a,y){const{animation:x,silence:b}=a,{data:{dataChanges:z,drawData:te},stage:re,type:ae}=y;return this.context.animation.animate(x,b?{}:{before:()=>this.emit(new Pd(No.BEFORE_DRAW,{dataChanges:z,animation:x,stage:re,render:ae==="render"}),a),beforeAnimate:se=>this.emit(new $A(No.BEFORE_ANIMATE,Uh.DRAW,se,te),a),afterAnimate:se=>this.emit(new $A(No.AFTER_ANIMATE,Uh.DRAW,se,te),a),after:()=>this.emit(new Pd(No.AFTER_DRAW,{dataChanges:z,animation:x,stage:re,render:ae==="render",firstRender:this.context.graph.rendered===!1}),a)})}computeChangesAndDrawData(a){const{model:y}=this.context,x=y.getChanges(),b=KS(x);if(b.length===0)return null;const{NodeAdded:z=[],NodeUpdated:te=[],NodeRemoved:re=[],EdgeAdded:ae=[],EdgeUpdated:se=[],EdgeRemoved:fe=[],ComboAdded:pe=[],ComboUpdated:be=[],ComboRemoved:Oe=[]}=q1(b,Je=>Je.type),_e=Je=>new Map(Je.map(qe=>{const ot=qe.value;return[oi(ot),ot]})),je={add:{nodes:_e(z),edges:_e(ae),combos:_e(pe)},update:{nodes:_e(te),edges:_e(se),combos:_e(be)},remove:{nodes:_e(re),edges:_e(fe),combos:_e(Oe)}},ze=this.transformData(je,a);return y.clearChanges(),{dataChanges:x,drawData:ze}}transformData(a,y){const x=this.context.transform.getTransformInstance();return Object.values(x).reduce((b,z)=>z.beforeDraw(b,y),a)}createElement(a,y,x){var b;const z=oi(y);if(this.getElement(z))return;const re=this.getElementType(a,y),ae=this.getElementComputedStyle(a,y),se=v0(a,re);if(!se)return jh.warn(`The element ${re} of ${a} is not registered.`);this.emit(new gp(No.BEFORE_ELEMENT_CREATE,a,y),x);const fe=this.container.appendChild(new se({id:z,context:this.context,style:ae}));this.shapeTypeMap[z]=re,this.elementMap[z]=fe;const{stage:pe="enter"}=x;(b=this.context.animation)===null||b===void 0||b.add({element:fe,elementType:a,stage:pe,originalStyle:Object.assign({},fe.attributes),updatedStyle:ae},{after:()=>{var be;this.emit(new gp(No.AFTER_ELEMENT_CREATE,a,y),x),(be=fe.onCreate)===null||be===void 0||be.call(fe)}})}createElements(a,y){const{nodes:x,edges:b,combos:z}=a;[["node",x],["combo",z],["edge",b]].forEach(([re,ae])=>{ae.forEach(se=>this.createElement(re,se,y))})}getUpdateStageStyle(a,y,x){const{stage:b="update"}=x;if(b==="translate")if(a==="node"||a==="combo"){const{style:{x:z=0,y:te=0,z:re=0}={}}=y;return{x:z,y:te,z:re}}else return{};return this.getElementComputedStyle(a,y)}updateElement(a,y,x){var b;const z=oi(y),{stage:te="update"}=x,re=this.getElement(z);if(!re)return()=>null;this.emit(new gp(No.BEFORE_ELEMENT_UPDATE,a,y),x);const ae=this.getElementType(a,y),se=this.getUpdateStageStyle(a,y,x);this.shapeTypeMap[z]!==ae&&(re.destroy(),delete this.shapeTypeMap[z],delete this.elementMap[z],this.createElement(a,y,{animation:!1,silence:!0}));const fe=te!=="visibility"?te:se.visibility==="hidden"?"hide":"show";fe==="hide"&&delete se.visibility,(b=this.context.animation)===null||b===void 0||b.add({element:re,elementType:a,stage:fe,originalStyle:Object.assign({},re.attributes),updatedStyle:se},{before:()=>{const pe=this.elementMap[z];te!=="collapse"&&hS(pe,se),te==="visibility"&&(uV(pe,"opacity")||lV(pe,"opacity"),this.visibilityCache.set(pe,fe==="show"?"visible":"hidden"),fe==="show"&&Jv(pe,"visible"))},after:()=>{var pe;const be=this.elementMap[z];te==="collapse"&&hS(be,se),fe==="hide"&&Jv(be,this.visibilityCache.get(be)),this.emit(new gp(No.AFTER_ELEMENT_UPDATE,a,y),x),(pe=be.onUpdate)===null||pe===void 0||pe.call(be)}})}updateElements(a,y){const{nodes:x,edges:b,combos:z}=a;[["node",x],["combo",z],["edge",b]].forEach(([re,ae])=>{ae.forEach(se=>this.updateElement(re,se,y))})}markDestroyElement(a){Object.values(a.remove).forEach(y=>{y.forEach(x=>{const b=oi(x),z=this.getElement(b);z&&Uk(z)})})}destroyElement(a,y,x){var b;const{stage:z="exit"}=x,te=oi(y),re=this.elementMap[te];if(!re)return()=>null;this.emit(new gp(No.BEFORE_ELEMENT_DESTROY,a,y),x),(b=this.context.animation)===null||b===void 0||b.add({element:re,elementType:a,stage:z,originalStyle:Object.assign({},re.attributes),updatedStyle:{}},{after:()=>{var ae;this.clearElement(te),re.destroy(),(ae=re.onDestroy)===null||ae===void 0||ae.call(re),this.emit(new gp(No.AFTER_ELEMENT_DESTROY,a,y),x)}})}destroyElements(a,y){const{nodes:x,edges:b,combos:z}=a;[["combo",z],["edge",b],["node",x]].forEach(([re,ae])=>{ae.forEach(se=>this.destroyElement(re,se,y))})}clearElement(a){delete this.paletteStyle[a],delete this.defaultStyle[a],delete this.stateStyle[a],delete this.elementMap[a],delete this.shapeTypeMap[a]}alignLayoutResultToElement(a,y){var x,b;const z=(x=a.nodes)===null||x===void 0?void 0:x.find(te=>oi(te)===y);if(z){const te=Vd(this.context.model.getNodeLikeDatum(y)),re=Vd(z),ae=Pu(te,re);(b=a.nodes)===null||b===void 0||b.forEach(se=>{var fe,pe,be;!((fe=se.style)===null||fe===void 0)&&fe.x&&(se.style.x+=ae[0]),!((pe=se.style)===null||pe===void 0)&&pe.y&&(se.style.y+=ae[1]),!((be=se.style)===null||be===void 0)&&be.z&&(se.style.z+=ae[2]||0)})}}collapseNode(a,y){return Qy(this,void 0,void 0,function*(){var x;const{animation:b,align:z}=y,{model:te,layout:re}=this.context,ae=this.computeChangesAndDrawData({stage:"collapse",animation:b});if(!ae)return;this.markDestroyElement(ae.drawData);const se=yield re.simulate();z&&this.alignLayoutResultToElement(se,a),te.updateData(se);const fe=this.computeChangesAndDrawData({stage:"collapse",animation:b});if(!fe)return;const{drawData:pe}=fe,{add:be,remove:Oe,update:_e}=pe;this.markDestroyElement(pe);const je={animation:b,stage:"collapse",data:pe};this.destroyElements(Oe,je),this.createElements(be,je),this.updateElements(_e,je),yield(x=this.context.animation.animate(b,{beforeAnimate:ze=>this.emit(new $A(No.BEFORE_ANIMATE,Uh.COLLAPSE,ze,pe),je),afterAnimate:ze=>this.emit(new $A(No.AFTER_ANIMATE,Uh.COLLAPSE,ze,pe),je)},{collapse:{target:a,descendants:Array.from(Oe.nodes).map(([,ze])=>oi(ze)),position:Vd(_e.nodes.get(a))}}))===null||x===void 0?void 0:x.finished})}expandNode(a,y){return Qy(this,void 0,void 0,function*(){var x;const{model:b,layout:z}=this.context,{animation:te,align:re}=y,ae=Vd(b.getNodeData([a])[0]),se=this.computeChangesAndDrawData({stage:"expand",animation:te});if(!se)return;const{drawData:{add:fe}}=se;this.createElements(fe,{animation:!1,stage:"expand",target:a}),this.context.animation.clear();const pe=yield z.simulate();re&&this.alignLayoutResultToElement(pe,a),b.updateData(pe),this.computeStyle("expand");const be=this.computeChangesAndDrawData({stage:"collapse",animation:te});if(!be)return;const{drawData:Oe}=be,{update:_e}=Oe,je={animation:te,stage:"expand",data:Oe};fe.edges.forEach(ze=>_e.edges.set(oi(ze),ze)),fe.nodes.forEach(ze=>_e.nodes.set(oi(ze),ze)),this.updateElements(_e,je),yield(x=this.context.animation.animate(te,{beforeAnimate:ze=>this.emit(new $A(No.BEFORE_ANIMATE,Uh.EXPAND,ze,Oe),je),afterAnimate:ze=>this.emit(new $A(No.AFTER_ANIMATE,Uh.EXPAND,ze,Oe),je)},{expand:{target:a,descendants:Array.from(fe.nodes).map(([,ze])=>oi(ze)),position:ae}}))===null||x===void 0?void 0:x.finished})}collapseCombo(a,y){return Qy(this,void 0,void 0,function*(){var x;const{model:b,element:z}=this.context;if(b.getAncestorsData(a,Ou).some(je=>Qh(je)))return;const te=z.getElement(a),re=te.getComboPosition(Object.assign(Object.assign({},te.attributes),{collapsed:!0})),ae=this.computeChangesAndDrawData({stage:"collapse",animation:y});if(!ae)return;const{dataChanges:se,drawData:fe}=ae;this.markDestroyElement(fe);const{update:pe,remove:be}=fe,Oe={animation:y,stage:"collapse",data:fe};this.destroyElements(be,Oe),this.updateElements(pe,Oe);const _e=je=>Array.from(je).map(([,ze])=>oi(ze));yield(x=this.context.animation.animate(y,{before:()=>this.emit(new Pd(No.BEFORE_DRAW,{dataChanges:se,animation:y}),Oe),beforeAnimate:je=>this.emit(new $A(No.BEFORE_ANIMATE,Uh.COLLAPSE,je,fe),Oe),afterAnimate:je=>this.emit(new $A(No.AFTER_ANIMATE,Uh.COLLAPSE,je,fe),Oe),after:()=>this.emit(new Pd(No.AFTER_DRAW,{dataChanges:se,animation:y}),Oe)},{collapse:{target:a,descendants:[..._e(be.nodes),..._e(be.combos)],position:re}}))===null||x===void 0?void 0:x.finished})}expandCombo(a,y){return Qy(this,void 0,void 0,function*(){var x;const{model:b}=this.context,z=Vd(b.getComboData([a])[0]);this.computeStyle("expand");const te=this.computeChangesAndDrawData({stage:"expand",animation:y});if(!te)return;const{dataChanges:re,drawData:ae}=te,{add:se,update:fe}=ae,pe={animation:y,stage:"expand",data:ae,target:a};this.createElements(se,pe),this.updateElements(fe,pe);const be=Oe=>Array.from(Oe).map(([,_e])=>oi(_e));yield(x=this.context.animation.animate(y,{before:()=>this.emit(new Pd(No.BEFORE_DRAW,{dataChanges:re,animation:y}),pe),beforeAnimate:Oe=>this.emit(new $A(No.BEFORE_ANIMATE,Uh.EXPAND,Oe,ae),pe),afterAnimate:Oe=>this.emit(new $A(No.AFTER_ANIMATE,Uh.EXPAND,Oe,ae),pe),after:()=>this.emit(new Pd(No.AFTER_DRAW,{dataChanges:re,animation:y}),pe)},{expand:{target:a,descendants:[...be(se.nodes),...be(se.combos)],position:z}}))===null||x===void 0?void 0:x.finished})}clear(){this.container.destroy(),this.initContainer(),this.elementMap={},this.shapeTypeMap={},this.defaultStyle={},this.stateStyle={},this.paletteStyle={}}destroy(){this.clear(),this.container.destroy(),this.context={}}}const gL=Symbol("Comlink.proxy"),pV=Symbol("Comlink.endpoint"),vL=Symbol("Comlink.releaseProxy"),_C=Symbol("Comlink.finalizer"),ux=Symbol("Comlink.thrown"),mL=E=>typeof E=="object"&&E!==null||typeof E=="function",yV={canHandle:E=>mL(E)&&E[gL],serialize(E){const{port1:a,port2:y}=new MessageChannel;return yL(E,a),[y,[y]]},deserialize(E){return E.start(),xL(E)}},EV={canHandle:E=>mL(E)&&ux in E,serialize({value:E}){let a;return E instanceof Error?a={isError:!0,value:{message:E.message,name:E.name,stack:E.stack}}:a={isError:!1,value:E},[a,[]]},deserialize(E){throw E.isError?Object.assign(new Error(E.value.message),E.value):E.value}},pL=new Map([["proxy",yV],["throw",EV]]);function xV(E,a){for(const y of E)if(a===y||y==="*"||y instanceof RegExp&&y.test(a))return!0;return!1}function yL(E,a=globalThis,y=["*"]){a.addEventListener("message",function x(b){if(!b||!b.data)return;if(!xV(y,b.origin)){console.warn(`Invalid origin '${b.origin}' for comlink proxy`);return}const{id:z,type:te,path:re}=Object.assign({path:[]},b.data),ae=(b.data.argumentList||[]).map(gm);let se;try{const fe=re.slice(0,-1).reduce((be,Oe)=>be[Oe],E),pe=re.reduce((be,Oe)=>be[Oe],E);switch(te){case"GET":se=pe;break;case"SET":fe[re.slice(-1)[0]]=gm(b.data.value),se=!0;break;case"APPLY":se=pe.apply(fe,ae);break;case"CONSTRUCT":{const be=new pe(...ae);se=BV(be)}break;case"ENDPOINT":{const{port1:be,port2:Oe}=new MessageChannel;yL(E,Oe),se=PV(be,[be])}break;case"RELEASE":se=void 0;break;default:return}}catch(fe){se={value:fe,[ux]:0}}Promise.resolve(se).catch(fe=>({value:fe,[ux]:0})).then(fe=>{const[pe,be]=hx(fe);a.postMessage(Object.assign(Object.assign({},pe),{id:z}),be),te==="RELEASE"&&(a.removeEventListener("message",x),EL(a),_C in E&&typeof E[_C]=="function"&&E[_C]())}).catch(fe=>{const[pe,be]=hx({value:new TypeError("Unserializable return value"),[ux]:0});a.postMessage(Object.assign(Object.assign({},pe),{id:z}),be)})}),a.start&&a.start()}function wV(E){return E.constructor.name==="MessagePort"}function EL(E){wV(E)&&E.close()}function xL(E,a){const y=new Map;return E.addEventListener("message",function(b){const{data:z}=b;if(!z||!z.id)return;const te=y.get(z.id);if(te)try{te(z)}finally{y.delete(z.id)}}),kC(E,y,[],a)}function cx(E){if(E)throw new Error("Proxy has been released and is not useable")}function wL(E){return pp(E,new Map,{type:"RELEASE"}).then(()=>{EL(E)})}const dx=new WeakMap,fx="FinalizationRegistry"in globalThis&&new FinalizationRegistry(E=>{const a=(dx.get(E)||0)-1;dx.set(E,a),a===0&&wL(E)});function bV(E,a){const y=(dx.get(a)||0)+1;dx.set(a,y),fx&&fx.register(E,a,E)}function SV(E){fx&&fx.unregister(E)}function kC(E,a,y=[],x=function(){}){let b=!1;const z=new Proxy(x,{get(te,re){if(cx(b),re===vL)return()=>{SV(z),wL(E),a.clear(),b=!0};if(re==="then"){if(y.length===0)return{then:()=>z};const ae=pp(E,a,{type:"GET",path:y.map(se=>se.toString())}).then(gm);return ae.then.bind(ae)}return kC(E,a,[...y,re])},set(te,re,ae){cx(b);const[se,fe]=hx(ae);return pp(E,a,{type:"SET",path:[...y,re].map(pe=>pe.toString()),value:se},fe).then(gm)},apply(te,re,ae){cx(b);const se=y[y.length-1];if(se===pV)return pp(E,a,{type:"ENDPOINT"}).then(gm);if(se==="bind")return kC(E,a,y.slice(0,-1));const[fe,pe]=bL(ae);return pp(E,a,{type:"APPLY",path:y.map(be=>be.toString()),argumentList:fe},pe).then(gm)},construct(te,re){cx(b);const[ae,se]=bL(re);return pp(E,a,{type:"CONSTRUCT",path:y.map(fe=>fe.toString()),argumentList:ae},se).then(gm)}});return bV(z,E),z}function CV(E){return Array.prototype.concat.apply([],E)}function bL(E){const a=E.map(hx);return[a.map(y=>y[0]),CV(a.map(y=>y[1]))]}const SL=new WeakMap;function PV(E,a){return SL.set(E,a),E}function BV(E){return Object.assign(E,{[gL]:!0})}function iee(E,a=globalThis,y="*"){return{postMessage:(x,b)=>E.postMessage(x,y,b),addEventListener:a.addEventListener.bind(a),removeEventListener:a.removeEventListener.bind(a)}}function hx(E){for(const[a,y]of pL)if(y.canHandle(E)){const[x,b]=y.serialize(E);return[{type:"HANDLER",name:a,value:x},b]}return[{type:"RAW",value:E},SL.get(E)||[]]}function gm(E){switch(E.type){case"HANDLER":return pL.get(E.name).deserialize(E.value);case"RAW":return E.value}}function pp(E,a,y,x){return new Promise(b=>{const z=IV();a.set(z,b),E.start&&E.start(),E.postMessage(Object.assign({id:z},y),x)})}function IV(){return new Array(4).fill(0).map(()=>Math.floor(Math.random()*Number.MAX_SAFE_INTEGER).toString(16)).join("-")}class DV extends XE{constructor(a,y,x){super(),this.graph=a,this.layout=y,this.options=x,this.spawnWorker()}spawnWorker(){this.proxy=xL(new Worker(new URL(De.p+De.u(7890),De.b),{type:void 0})),this.running&&(this.running=!1,this.execute())}execute(){var a;return(0,on.mG)(this,void 0,void 0,function*(){if(this.running)return this;this.running=!0;const y=this.layout.options,{onTick:x}=y,b=(0,on._T)(y,["onTick"]),z={};Object.keys(b).forEach(se=>{Xo(b[se])||(z[se]=b[se])});const te={layout:{id:this.layout.id,options:z,iterations:(a=this.options)===null||a===void 0?void 0:a.iterations},nodes:this.graph.getAllNodes(),edges:this.graph.getAllEdges()},re=new Float32Array([0]),[ae]=yield this.proxy.calculateLayout(te,[re]);return ae})}stop(){return this.running=!1,this.proxy.stopLayout(),this}kill(){this.proxy[vL]()}isRunning(){return this.running}}var yp=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(te){te(z)})}return new(y||(y=Promise))(function(z,te){function re(fe){try{se(x.next(fe))}catch(pe){te(pe)}}function ae(fe){try{se(x.throw(fe))}catch(pe){te(pe)}}function se(fe){fe.done?z(fe.value):b(fe.value).then(re,ae)}se((x=x.apply(E,a||[])).next())})},MV=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b{const pe=oi(fe),be=ae.nodes.get(pe);re.syncNodeLikeDatum(fe),be&&Object.assign(be.style,fe.style)}),(b=se==null?void 0:se.edges)===null||b===void 0||b.forEach(fe=>{const pe=oi(fe),be=ae.edges.get(pe);re.syncEdgeDatum(fe),be&&Object.assign(be.style,fe.style)}),(z=se==null?void 0:se.combos)===null||z===void 0||z.forEach(fe=>{const pe=oi(fe),be=ae.combos.get(pe);re.syncNodeLikeDatum(fe),be&&Object.assign(be.style,fe.style)}),Yd(te,new Pd(No.AFTER_LAYOUT,{type:"pre"})),this.transformDataAfterLayout("pre",a)})}postLayout(){return yp(this,arguments,void 0,function*(a=this.options){if(!a)return;const y=Array.isArray(a)?a:[a],{graph:x}=this.context;Yd(x,new Pd(No.BEFORE_LAYOUT,{type:"post"}));for(let b=0;bb.afterLayout(a,y))}simulate(){return yp(this,void 0,void 0,function*(){if(!this.options)return{};const a=Array.isArray(this.options)?this.options:[this.options];let y={};for(let x=0;x{this.updateElementPosition(se,!1)}}):(re.execute(a),re.stop(),re.tick(te));const ae=yield re.execute(a);if(b){const se=this.updateElementPosition(ae,b);yield se==null?void 0:se.finished}return ae})}treeLayout(a,y,x){return yp(this,void 0,void 0,function*(){const{type:b,animation:z}=y,te=v0("layout",b);if(!te)return{};const{nodes:re=[],edges:ae=[]}=a,se=new ad({nodes:re.map(_e=>({id:oi(_e),data:_e.data||{}})),edges:ae.map(_e=>({id:oi(_e),source:_e.source,target:_e.target,data:_e.data||{}}))});gV(se);const fe={nodes:[],edges:[]},pe={nodes:[],edges:[]};se.getRoots(gA).forEach(_e=>{em(_e,ot=>{ot.children=se.getSuccessors(ot.id)},ot=>se.getSuccessors(ot.id),"TB");const je=te(_e,y),{x:ze,y:Je,z:qe=0}=je;em(je,ot=>{const{id:pt,x:Et,y:bt,z:Ct=0}=ot;fe.nodes.push({id:pt,style:{x:ze,y:Je,z:qe}}),pe.nodes.push({id:pt,style:{x:Et,y:bt,z:Ct}})},ot=>ot.children,"TB")});const Oe=this.inferTreeLayoutOffset(pe);if(CL(pe,Oe),z){CL(fe,Oe),this.updateElementPosition(fe,!1);const _e=this.updateElementPosition(pe,z);yield _e==null?void 0:_e.finished}return pe})}inferTreeLayoutOffset(a){var y;let[x,b]=[1/0,-1/0],[z,te]=[1/0,-1/0];(y=a.nodes)===null||y===void 0||y.forEach(je=>{const{x:ze=0,y:Je=0}=je.style||{};x=Math.min(x,ze),b=Math.max(b,ze),z=Math.min(z,Je),te=Math.max(te,Je)});const{canvas:re}=this.context,ae=re.getSize(),[se,fe]=re.getCanvasByViewport([0,0]),[pe,be]=re.getCanvasByViewport(ae);if(x>=se&&b<=pe&&z>=fe&&te<=be)return[0,0];const Oe=(se+pe)/2,_e=(fe+be)/2;return[Oe-(x+b)/2,_e-(z+te)/2]}stopLayout(){this.instance&&OS(this.instance)&&(this.instance.stop(),this.instance=void 0),this.supervisor&&(this.supervisor.stop(),this.supervisor=void 0),this.animationResult&&(this.animationResult.finish(),this.animationResult=void 0)}getLayoutData(a){const{nodeFilter:y=()=>!0,preLayout:x=!1,isLayoutInvisibleNodes:b=!1}=a,{nodes:z,edges:te,combos:re}=this.context.model.getData(),{element:ae,model:se}=this.context,fe=je=>ae.getElement(je),pe=x?je=>{var ze;return!b&&(((ze=je.style)===null||ze===void 0?void 0:ze.visibility)==="hidden"||se.getAncestorsData(je.id,gA).some(Qh)||se.getAncestorsData(je.id,Ou).some(Qh))?!1:y(je)}:je=>{const ze=oi(je),Je=fe(ze);return!Je||HE(Je)?!1:y(je)},be=z.filter(pe),Oe=new Map(be.map(je=>[oi(je),je]));re.forEach(je=>Oe.set(oi(je),je));const _e=te.filter(({source:je,target:ze})=>Oe.has(je)&&Oe.has(ze));return{nodes:be,edges:_e,combos:re}}initGraphLayout(a){var y;const{element:x,viewport:b}=this.context,{type:z,enableWorker:te,animation:re,iterations:ae}=a,se=MV(a,["type","enableWorker","animation","iterations"]),[fe,pe]=b.getCanvasSize(),be=[fe/2,pe/2],Oe=(y=a==null?void 0:a.nodeSize)!==null&&y!==void 0?y:qe=>{const ot=x==null?void 0:x.getElement(qe.id);return ot?ot.attributes.size:x==null?void 0:x.getElementComputedStyle("node",qe).size},_e=v0("layout",z);if(!_e)return jh.warn(`The layout of ${z} is not registered.`);const je=Object.getPrototypeOf(_e.prototype)===qE.prototype?_e:Jk(_e,this.context),ze=new je(this.context),Je={nodeSize:Oe,width:fe,height:pe,center:be};switch(ze.id){case"d3-force":case"d3-force-3d":Object.assign(Je,{center:{x:fe/2,y:pe/2,z:0}});break;default:break}return Eh(ze.options,Je,se),ze}updateElementPosition(a,y){const{model:x,element:b}=this.context;return b?(x.updateData(a),b.draw({animation:y,silence:!0})):null}destroy(){var a;this.stopLayout(),this.context={},(a=this.supervisor)===null||a===void 0||a.kill(),this.supervisor=void 0,this.instance=void 0,this.instances=[],this.animationResult=void 0}}const CL=(E,a)=>{var y;const[x,b]=a;(y=E.nodes)===null||y===void 0||y.forEach(z=>{if(z.style){const{x:te=0,y:re=0}=z.style;z.style.x=te+x,z.style.y=re+b}else z.style={x,y:b}})};function OV(E){return[TV].reduce((y,x)=>x(y),E)}function TV(E){return!E.layout||Array.isArray(E.layout)||"preLayout"in E.layout||["antv-dagre","combo-combined","compact-box","circular","concentric","dagre","fishbone","grid","indented","mds","radial","random","snake","dendrogram","mindmap"].includes(E.layout.type)&&(E.layout.preLayout=!0),E}class FV extends Lb{constructor(a){super(a),this.category="plugin",this.setPlugins(this.context.options.plugins||[])}setPlugins(a){this.setExtensions(a)}getPluginInstance(a){const y=this.extensionMap[a];if(y)return y;jh.warn(`Cannot find the plugin ${a}, will try to find it by type.`);const x=this.extensions.find(b=>b.type===a);if(x)return this.extensionMap[x.key]}}const Ax=["update-related-edges","collapse-expand-node","collapse-expand-combo","get-edge-actual-ends","arrange-draw-order"];class NV extends Lb{constructor(a){super(a),this.category="transform",this.setTransforms(this.context.options.transforms||[])}getTransforms(){}setTransforms(a){this.setExtensions([...Ax.slice(0,Ax.length-1),...a,Ax[Ax.length-1]])}getTransformInstance(a){return a?this.extensionMap[a]:this.extensionMap}}var zy=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(te){te(z)})}return new(y||(y=Promise))(function(z,te){function re(fe){try{se(x.next(fe))}catch(pe){te(pe)}}function ae(fe){try{se(x.throw(fe))}catch(pe){te(pe)}}function se(fe){fe.done?z(fe.value):b(fe.value).then(re,ae)}se((x=x.apply(E,a||[])).next())})};class RV{get padding(){return wg(this.context.options.padding)}get paddingOffset(){const[a,y,x,b]=this.padding,[z,te,re]=[(b-y)/2,(a-x)/2,0];return[z,te,re]}constructor(a){this.landmarkCounter=0,this.context=a;const[y,x]=this.paddingOffset,{zoom:b,rotation:z,x:te=y,y:re=x}=a.options;this.transform({mode:"absolute",scale:b,translate:[te,re],rotate:z},!1)}get camera(){const{canvas:a}=this.context;return new Proxy(a.getCamera(),{get:(y,x)=>{const z=Object.entries(a.getLayers()).filter(([re])=>!["main"].includes(re)).map(([,re])=>re.getCamera()),te=y[x];if(typeof te=="function")return(...re)=>{const ae=te.apply(y,re);return z.forEach(se=>{se[x].apply(se,re)}),ae}}})}createLandmark(a){return this.camera.createLandmark(`landmark-${this.landmarkCounter++}`,a)}getAnimation(a){const y=ZP(this.context.options,a);return y?rm(Object.assign({},y),["easing","duration"]):!1}getCanvasSize(){const{canvas:a}=this.context,{width:y=0,height:x=0}=a.getConfig();return[y,x]}getCanvasCenter(){const{canvas:a}=this.context,{width:y=0,height:x=0}=a.getConfig();return[y/2,x/2,0]}getViewportCenter(){const[a,y]=this.camera.getPosition();return[a,y,0]}getGraphCenter(){return this.context.graph.getViewportByCanvas(this.getCanvasCenter())}getZoom(){return this.camera.getZoom()}getRotation(){return this.camera.getRoll()}getTranslateOptions(a){const{camera:y}=this,{mode:x,translate:b=[]}=a,z=this.getZoom(),te=y.getPosition(),re=y.getFocalPoint(),[ae,se]=this.getCanvasCenter(),[fe=0,pe=0,be=0]=b,Oe=Pg([-fe,-pe,-be],z);return x==="relative"?{position:fl(te,Oe),focalPoint:fl(re,Oe)}:{position:fl([ae,se,te[2]],Oe),focalPoint:fl([ae,se,re[2]],Oe)}}getRotateOptions(a){const{mode:y,rotate:x=0}=a;return{roll:y==="relative"?this.camera.getRoll()+x:x}}getZoomOptions(a){const{zoomRange:y}=this.context.options,x=this.camera.getZoom(),{mode:b,scale:z=1}=a;return Ql(b==="relative"?x*z:z,...y)}transform(a,y){return zy(this,void 0,void 0,function*(){const{graph:x}=this.context,{translate:b,rotate:z,scale:te,origin:re}=a;this.cancelAnimation();const ae=this.getAnimation(y);if(Yd(x,new sx(No.BEFORE_TRANSFORM,a)),!z&&te&&!b&&re&&!ae){this.camera.setZoomByViewportPoint(this.getZoomOptions(a),re),Yd(x,new sx(No.AFTER_TRANSFORM,a));return}const se={};if(b&&Object.assign(se,this.getTranslateOptions(a)),vo(z)&&Object.assign(se,this.getRotateOptions(a)),vo(te)&&Object.assign(se,{zoom:this.getZoomOptions(a)}),ae)return Yd(x,new $A(No.BEFORE_ANIMATE,Uh.TRANSFORM,null,a)),new Promise(fe=>{this.transformResolver=fe,this.camera.gotoLandmark(this.createLandmark(se),Object.assign(Object.assign({},ae),{onfinish:()=>{Yd(x,new $A(No.AFTER_ANIMATE,Uh.TRANSFORM,null,a)),Yd(x,new sx(No.AFTER_TRANSFORM,a)),this.transformResolver=void 0,fe()}}))});this.camera.gotoLandmark(this.createLandmark(se),{duration:0}),Yd(x,new sx(No.AFTER_TRANSFORM,a))})}fitView(a,y){return zy(this,void 0,void 0,function*(){const[x,b,z,te]=this.padding,{when:re="always",direction:ae="both"}=a||{},[se,fe]=this.context.canvas.getSize(),pe=se-te-b,be=fe-x-z,Oe=this.context.canvas.getBounds(),_e=this.getBBoxInViewport(Oe),[je,ze]=Z0(_e),Je=ae==="x"&&je>=pe||ae==="y"&&ze>=be||ae==="both"&&je>=pe&&ze>=be;if(re==="overflow"&&!Je)return yield this.fitCenter({animation:y});const qe=pe/je,ot=be/ze,pt=ae==="x"?qe:ae==="y"?ot:Math.min(qe,ot),Et=this.getAnimation(y);yield this.transform({mode:"relative",scale:pt,translate:fl(Pu(this.getCanvasCenter(),this.getBBoxInViewport(Oe).center),Pg(this.paddingOffset,pt))},Et)})}fitCenter(a){return zy(this,void 0,void 0,function*(){const y=this.context.canvas.getBounds();yield this.focus(y,a)})}focusElements(a){return zy(this,arguments,void 0,function*(y,x={}){const{element:b}=this.context;if(!b)return;const z=re=>x.shapes?re.getShape(x.shapes).getRenderBounds():re.getRenderBounds(),te=ry(y.map(re=>z(b.getElement(re))));yield this.focus(te,x)})}focus(a,y){return zy(this,void 0,void 0,function*(){const x=this.context.graph.getViewportByCanvas(a.center),b=y.position||this.getCanvasCenter(),z=Pu(b,x);yield this.transform({mode:"relative",translate:fl(z,this.paddingOffset)},y.animation)})}getBBoxInViewport(a){const{min:y,max:x}=a,{graph:b}=this.context,[z,te]=b.getViewportByCanvas(y),[re,ae]=b.getViewportByCanvas(x),se=new Qu;return se.setMinMax([z,te,0],[re,ae,0]),se}isInViewport(a,y=!1,x=0){const{graph:b}=this.context,z=this.getCanvasSize(),[te,re]=b.getCanvasByViewport([0,0]),[ae,se]=b.getCanvasByViewport(z);let fe=new Qu;return fe.setMinMax([te,re,0],[ae,se,0]),x&&(fe=X0(fe,x)),Jm(a)?bg(a,fe):y?m8(a,fe):fe.intersects(a)}cancelAnimation(){var a,y;!((a=this.camera.landmarks)===null||a===void 0)&&a.length&&this.camera.cancelLandmarkAnimation(),(y=this.transformResolver)===null||y===void 0||y.call(this)}}var Hu=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(te){te(z)})}return new(y||(y=Promise))(function(z,te){function re(fe){try{se(x.next(fe))}catch(pe){te(pe)}}function ae(fe){try{se(x.throw(fe))}catch(pe){te(pe)}}function se(fe){fe.done?z(fe.value):b(fe.value).then(re,ae)}se((x=x.apply(E,a||[])).next())})};class Ep extends XE{constructor(a){var y;super(),this.options={},this.rendered=!1,this.destroyed=!1,this.context={model:new vV},this.isCollapsingExpanding=!1,this.onResize=py(()=>{this.resize()},300),this._setOptions(Object.assign({},Ep.defaultOptions,a),!0),this.context.graph=this,this.options.autoResize&&((y=globalThis.addEventListener)===null||y===void 0||y.call(globalThis,"resize",this.onResize))}getOptions(){return this.options}setOptions(a){this._setOptions(a,!1)}_setOptions(a,y){if(this.updateCanvas(a),Object.assign(this.options,OV(a)),y){const{data:be}=a;be&&this.addData(be);return}const{behaviors:x,combo:b,data:z,edge:te,layout:re,node:ae,plugins:se,theme:fe,transforms:pe}=a;x&&this.setBehaviors(x),z&&this.setData(z),ae&&this.setNode(ae),te&&this.setEdge(te),b&&this.setCombo(b),re&&this.setLayout(re),fe&&this.setTheme(fe),se&&this.setPlugins(se),pe&&this.setTransforms(pe)}getSize(){return this.context.canvas?this.context.canvas.getSize():[this.options.width||0,this.options.height||0]}setSize(a,y){a&&(this.options.width=a),y&&(this.options.height=y),this.resize(a,y)}setZoomRange(a){this.options.zoomRange=a}getZoomRange(){return this.options.zoomRange}setNode(a){this.options.node=a,this.context.model.refreshData()}setEdge(a){this.options.edge=a,this.context.model.refreshData()}setCombo(a){this.options.combo=a,this.context.model.refreshData()}getTheme(){return this.options.theme}setTheme(a){this.options.theme=Xo(a)?a(this.getTheme()):a}setLayout(a){this.options.layout=Xo(a)?a(this.getLayout()):a}getLayout(){return this.options.layout}setBehaviors(a){var y;this.options.behaviors=Xo(a)?a(this.getBehaviors()):a,(y=this.context.behavior)===null||y===void 0||y.setBehaviors(this.options.behaviors)}updateBehavior(a){this.setBehaviors(y=>y.map(x=>typeof x=="object"&&x.key===a.key?Object.assign(Object.assign({},x),a):x))}getBehaviors(){return this.options.behaviors||[]}setPlugins(a){var y;this.options.plugins=Xo(a)?a(this.getPlugins()):a,(y=this.context.plugin)===null||y===void 0||y.setPlugins(this.options.plugins)}updatePlugin(a){this.setPlugins(y=>y.map(x=>typeof x=="object"&&x.key===a.key?Object.assign(Object.assign({},x),a):x))}getPlugins(){return this.options.plugins||[]}getPluginInstance(a){return this.context.plugin.getPluginInstance(a)}setTransforms(a){var y;this.options.transforms=Xo(a)?a(this.getTransforms()):a,(y=this.context.transform)===null||y===void 0||y.setTransforms(this.options.transforms)}updateTransform(a){this.setTransforms(y=>y.map(x=>typeof x=="object"&&x.key===a.key?Object.assign(Object.assign({},x),a):x)),this.context.model.refreshData()}getTransforms(){return this.options.transforms||[]}getData(){return this.context.model.getData()}getElementData(a){return Array.isArray(a)?a.map(y=>this.context.model.getElementDataById(y)):this.context.model.getElementDataById(a)}getNodeData(a){return a===void 0?this.context.model.getNodeData():Array.isArray(a)?this.context.model.getNodeData(a):this.context.model.getNodeLikeDatum(a)}getEdgeData(a){return a===void 0?this.context.model.getEdgeData():Array.isArray(a)?this.context.model.getEdgeData(a):this.context.model.getEdgeDatum(a)}getComboData(a){return a===void 0?this.context.model.getComboData():Array.isArray(a)?this.context.model.getComboData(a):this.context.model.getNodeLikeDatum(a)}setData(a){this.context.model.setData(Xo(a)?a(this.getData()):a)}addData(a){this.context.model.addData(Xo(a)?a(this.getData()):a)}addNodeData(a){this.context.model.addNodeData(Xo(a)?a(this.getNodeData()):a)}addEdgeData(a){this.context.model.addEdgeData(Xo(a)?a(this.getEdgeData()):a)}addComboData(a){this.context.model.addComboData(Xo(a)?a(this.getComboData()):a)}addChildrenData(a,y){this.context.model.addChildrenData(a,y)}updateData(a){this.context.model.updateData(Xo(a)?a(this.getData()):a)}updateNodeData(a){this.context.model.updateNodeData(Xo(a)?a(this.getNodeData()):a)}updateEdgeData(a){this.context.model.updateEdgeData(Xo(a)?a(this.getEdgeData()):a)}updateComboData(a){this.context.model.updateComboData(Xo(a)?a(this.getComboData()):a)}removeData(a){this.context.model.removeData(Xo(a)?a(this.getData()):a)}removeNodeData(a){this.context.model.removeNodeData(Xo(a)?a(this.getNodeData()):a)}removeEdgeData(a){this.context.model.removeEdgeData(Xo(a)?a(this.getEdgeData()):a)}removeComboData(a){this.context.model.removeComboData(Xo(a)?a(this.getComboData()):a)}getElementType(a){return this.context.model.getElementType(a)}getRelatedEdgesData(a,y="both"){return this.context.model.getRelatedEdgesData(a,y)}getNeighborNodesData(a){return this.context.model.getNeighborNodesData(a)}getAncestorsData(a,y){return this.context.model.getAncestorsData(a,y)}getParentData(a,y){return this.context.model.getParentData(a,y)}getChildrenData(a){return this.context.model.getChildrenData(a)}getDescendantsData(a){return this.context.model.getDescendantsData(a)}getElementDataByState(a,y){return this.context.model.getElementDataByState(a,y)}initCanvas(){return Hu(this,void 0,void 0,function*(){var a;if(this.context.canvas)return yield this.context.canvas.ready;const{container:y="container",width:x,height:b,renderer:z,cursor:te,background:re,canvas:ae,devicePixelRatio:se=(a=globalThis.devicePixelRatio)!==null&&a!==void 0?a:1}=this.options;if(y instanceof uL)this.context.canvas=y,te&&y.setCursor(te),z&&y.setRenderer(z),yield y.ready;else{const fe=ol(y)?document.getElementById(y):y,pe=fL(fe);this.emit(No.BEFORE_CANVAS_INIT,{container:fe,width:x,height:b});const be=Object.assign(Object.assign({},ae),{container:fe,width:x||pe[0],height:b||pe[1],background:re,renderer:z,cursor:te,devicePixelRatio:se}),Oe=new uL(be);this.context.canvas=Oe,yield Oe.ready,this.emit(No.AFTER_CANVAS_INIT,{canvas:Oe})}})}updateCanvas(a){var y,x;const{renderer:b,cursor:z,height:te,width:re}=a,ae=this.context.canvas;ae&&(b&&(this.emit(No.BEFORE_RENDERER_CHANGE,{renderer:this.options.renderer}),ae.setRenderer(b),this.emit(No.AFTER_RENDERER_CHANGE,{renderer:b})),z&&ae.setCursor(z),(vo(re)||vo(te))&&this.setSize((y=re!=null?re:this.options.width)!==null&&y!==void 0?y:0,(x=te!=null?te:this.options.height)!==null&&x!==void 0?x:0))}initRuntime(){this.context.options=this.options,this.context.batch||(this.context.batch=new dV(this.context)),this.context.plugin||(this.context.plugin=new FV(this.context)),this.context.viewport||(this.context.viewport=new RV(this.context)),this.context.transform||(this.context.transform=new NV(this.context)),this.context.element||(this.context.element=new mV(this.context)),this.context.animation||(this.context.animation=new cV(this.context)),this.context.layout||(this.context.layout=new LV(this.context)),this.context.behavior||(this.context.behavior=new fV(this.context))}prepare(){return Hu(this,void 0,void 0,function*(){if(yield Promise.resolve(),this.destroyed){console.error(m0("The graph instance has been destroyed"));return}yield this.initCanvas(),this.initRuntime()})}render(){return Hu(this,void 0,void 0,function*(){if(yield this.prepare(),Yd(this,new Pd(No.BEFORE_RENDER)),this.options.layout)if(!this.rendered&&Xk(this.options.layout)){const a=yield this.context.element.preLayoutDraw({type:"render"});yield Promise.all([a==null?void 0:a.finished,this.autoFit()])}else{const a=this.context.element.draw({type:"render"});yield Promise.all([a==null?void 0:a.finished,this.context.layout.postLayout()]),yield this.autoFit()}else{const a=this.context.element.draw({type:"render"});yield Promise.all([a==null?void 0:a.finished,this.autoFit()])}this.rendered=!0,Yd(this,new Pd(No.AFTER_RENDER))})}draw(){return Hu(this,void 0,void 0,function*(){var a;yield this.prepare(),yield(a=this.context.element.draw())===null||a===void 0?void 0:a.finished})}layout(a){return Hu(this,void 0,void 0,function*(){yield this.context.layout.postLayout(a)})}stopLayout(){this.context.layout.stopLayout()}clear(){return Hu(this,void 0,void 0,function*(){const{model:a,element:y}=this.context;a.setData({}),a.clearChanges(),y==null||y.clear()})}destroy(){var a;Yd(this,new Pd(No.BEFORE_DESTROY));const{layout:y,animation:x,element:b,model:z,canvas:te,behavior:re,plugin:ae}=this.context;ae==null||ae.destroy(),re==null||re.destroy(),y==null||y.destroy(),x==null||x.destroy(),b==null||b.destroy(),z.destroy(),te==null||te.destroy(),this.options={},this.context={},this.off(),(a=globalThis.removeEventListener)===null||a===void 0||a.call(globalThis,"resize",this.onResize),this.destroyed=!0,Yd(this,new Pd(No.AFTER_DESTROY))}getCanvas(){return this.context.canvas}resize(a,y){var x;const b=fL((x=this.context.canvas)===null||x===void 0?void 0:x.getContainer()),z=[a||b[0],y||b[1]];if(!this.context.canvas)return;const te=this.context.canvas.getSize();td(z,te)||(Yd(this,new Pd(No.BEFORE_SIZE_CHANGE,{size:z})),this.context.canvas.resize(...z),Yd(this,new Pd(No.AFTER_SIZE_CHANGE,{size:z})))}fitView(a,y){return Hu(this,void 0,void 0,function*(){var x;yield(x=this.context.viewport)===null||x===void 0?void 0:x.fitView(a,y)})}fitCenter(a){return Hu(this,void 0,void 0,function*(){var y;yield(y=this.context.viewport)===null||y===void 0?void 0:y.fitCenter({animation:a})})}autoFit(){return Hu(this,void 0,void 0,function*(){const{autoFit:a}=this.context.options;if(a)if(ol(a))a==="view"?yield this.fitView():a==="center"&&(yield this.fitCenter());else{const{type:y,animation:x}=a;y==="view"?yield this.fitView(a.options,x):y==="center"&&(yield this.fitCenter(x))}})}focusElement(a,y){return Hu(this,void 0,void 0,function*(){var x;yield(x=this.context.viewport)===null||x===void 0?void 0:x.focusElements(Array.isArray(a)?a:[a],{animation:y})})}zoomBy(a,y,x){return Hu(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:"relative",scale:a,origin:x},y)})}zoomTo(a,y,x){return Hu(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:"absolute",scale:a,origin:x},y)})}getZoom(){return this.context.viewport.getZoom()}rotateBy(a,y,x){return Hu(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:"relative",rotate:a,origin:x},y)})}rotateTo(a,y,x){return Hu(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:"absolute",rotate:a,origin:x},y)})}getRotation(){return this.context.viewport.getRotation()}translateBy(a,y){return Hu(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:"relative",translate:a},y)})}translateTo(a,y){return Hu(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:"absolute",translate:a},y)})}getPosition(){return Pu([0,0],this.getCanvasByViewport([0,0]))}translateElementBy(a,y){return Hu(this,arguments,void 0,function*(x,b,z=!0){var te,re;const[ae,se]=mu(x)?[x,(te=b)!==null&&te!==void 0?te:!0]:[{[x]:b},z];Object.entries(ae).forEach(([fe,pe])=>this.context.model.translateNodeLikeBy(fe,pe)),yield(re=this.context.element.draw({animation:se,stage:"translate"}))===null||re===void 0?void 0:re.finished})}translateElementTo(a,y){return Hu(this,arguments,void 0,function*(x,b,z=!0){var te,re;const[ae,se]=mu(x)?[x,(te=b)!==null&&te!==void 0?te:!0]:[{[x]:b},z];Object.entries(ae).forEach(([fe,pe])=>this.context.model.translateNodeLikeTo(fe,pe)),yield(re=this.context.element.draw({animation:se,stage:"translate"}))===null||re===void 0?void 0:re.finished})}getElementPosition(a){return this.context.model.getElementPosition(a)}getElementRenderStyle(a){return jS(this.context.element.getElement(a).attributes,["context"])}setElementVisibility(a,y){return Hu(this,arguments,void 0,function*(x,b,z=!0){var te,re;const[ae,se]=mu(x)?[x,(te=b)!==null&&te!==void 0?te:!0]:[{[x]:b},z],fe={nodes:[],edges:[],combos:[]};Object.entries(ae).forEach(([Oe,_e])=>{const je=this.getElementType(Oe);fe[`${je}s`].push({id:Oe,style:{visibility:_e}})});const{model:pe,element:be}=this.context;pe.preventUpdateNodeLikeHierarchy(()=>{pe.updateData(fe)}),yield(re=be.draw({animation:se,stage:"visibility"}))===null||re===void 0?void 0:re.finished})}showElement(a,y){return Hu(this,void 0,void 0,function*(){const x=Array.isArray(a)?a:[a];yield this.setElementVisibility(Object.fromEntries(x.map(b=>[b,"visible"])),y)})}hideElement(a,y){return Hu(this,void 0,void 0,function*(){const x=Array.isArray(a)?a:[a];yield this.setElementVisibility(Object.fromEntries(x.map(b=>[b,"hidden"])),y)})}getElementVisibility(a){var y,x;const b=this.context.element.getElement(a);return(x=(y=b==null?void 0:b.style)===null||y===void 0?void 0:y.visibility)!==null&&x!==void 0?x:"visible"}setElementZIndex(a,y){return Hu(this,void 0,void 0,function*(){var x;const b={nodes:[],edges:[],combos:[]},z=mu(a)?a:{[a]:y};Object.entries(z).forEach(([ae,se])=>{const fe=this.getElementType(ae);b[`${fe}s`].push({id:ae,style:{zIndex:se}})});const{model:te,element:re}=this.context;te.preventUpdateNodeLikeHierarchy(()=>te.updateData(b)),yield(x=re.draw({animation:!1,stage:"zIndex"}))===null||x===void 0?void 0:x.finished})}frontElement(a){return Hu(this,void 0,void 0,function*(){const y=Array.isArray(a)?a:[a],{model:x}=this.context,b={};y.map(z=>{const te=x.getFrontZIndex(z);if(x.getElementType(z)==="combo"){const ae=x.getAncestorsData(z,Ou).at(-1)||this.getComboData(z),se=[ae,...x.getDescendantsData(oi(ae))],fe=te-hL(ae);se.forEach(be=>{b[oi(be)]=this.getElementZIndex(oi(be))+fe});const{internal:pe}=lS(se.map(oi),be=>x.getRelatedEdgesData(be));pe.forEach(be=>{const Oe=oi(be);b[Oe]=this.getElementZIndex(Oe)+fe})}else b[z]=te}),yield this.setElementZIndex(b)})}getElementZIndex(a){return hL(this.context.model.getElementDataById(a))}setElementState(a,y){return Hu(this,arguments,void 0,function*(x,b,z=!0){var te,re;const[ae,se]=mu(x)?[x,(te=b)!==null&&te!==void 0?te:!0]:[{[x]:b},z],fe=be=>be?Array.isArray(be)?be:[be]:[],pe={nodes:[],edges:[],combos:[]};Object.entries(ae).forEach(([be,Oe])=>{const _e=this.getElementType(be);pe[`${_e}s`].push({id:be,states:fe(Oe)})}),this.updateData(pe),yield(re=this.context.element.draw({animation:se,stage:"state"}))===null||re===void 0?void 0:re.finished})}getElementState(a){return this.context.model.getElementState(a)}getElementRenderBounds(a){return this.context.element.getElement(a).getRenderBounds()}collapseElement(a){return Hu(this,arguments,void 0,function*(y,x=!0){const{model:b,element:z}=this.context;if(Qh(b.getNodeLikeData([y])[0])||this.isCollapsingExpanding)return;typeof x=="boolean"&&(x={animation:x,align:!0});const te=b.getElementType(y);yield this.frontElement(y),this.isCollapsingExpanding=!0,this.setElementCollapsibility(y,!0),te==="node"?yield z.collapseNode(y,x):te==="combo"&&(yield z.collapseCombo(y,!!x.animation)),this.isCollapsingExpanding=!1})}expandElement(a){return Hu(this,arguments,void 0,function*(y,x=!0){const{model:b,element:z}=this.context;if(!Qh(b.getNodeLikeData([y])[0])||this.isCollapsingExpanding)return;typeof x=="boolean"&&(x={animation:x,align:!0});const te=b.getElementType(y);this.isCollapsingExpanding=!0,this.setElementCollapsibility(y,!1),te==="node"?yield z.expandNode(y,x):te==="combo"&&(yield z.expandCombo(y,!!x.animation)),this.isCollapsingExpanding=!1})}setElementCollapsibility(a,y){const x=this.getElementType(a);x==="node"?this.updateNodeData([{id:a,style:{collapsed:y}}]):x==="combo"&&this.updateComboData([{id:a,style:{collapsed:y}}])}toDataURL(){return Hu(this,arguments,void 0,function*(a={}){return this.context.canvas.toDataURL(a)})}getCanvasByViewport(a){return this.context.canvas.getCanvasByViewport(a)}getViewportByCanvas(a){return this.context.canvas.getViewportByCanvas(a)}getClientByCanvas(a){return this.context.canvas.getClientByCanvas(a)}getCanvasByClient(a){return this.context.canvas.getCanvasByClient(a)}getViewportCenter(){return this.context.viewport.getViewportCenter()}getCanvasCenter(){return this.context.viewport.getCanvasCenter()}on(a,y,x){return super.on(a,y,x)}once(a,y){return super.once(a,y)}off(a,y){return super.off(a,y)}}Ep.defaultOptions={autoResize:!1,theme:"light",rotation:0,zoom:1,zoomRange:[.01,10]};var _V=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b{if(re.depth=ae,!re.children)return re;const{children:se}=re,fe=_V(re,["children"]);return Object.assign(Object.assign({},fe),{children:se.map(pe=>pe.id)})},getEdgeData:x=(re,ae)=>({source:re.id,target:ae.id}),getChildren:b=re=>re.children||[]}=a||{},z=[],te=[];return em(E,(re,ae)=>{z.push(y(re,ae));const se=b(re);for(const fe of se)te.push(x(re,fe))},re=>b(re),"TB"),{nodes:z,edges:te}}class kV extends fv{beforeDraw(a){const{add:y,update:x}=a,{model:b}=this.context;return[...y.edges.entries(),...x.edges.entries()].forEach(([,z])=>{PL(b,z)}),a}}const PL=(E,a)=>{const{source:y,target:x}=a,b=E.getElementDataById(y),z=E.getElementDataById(x),te=R3(b,pe=>E.getParentData(pe,Ou)),re=R3(z,pe=>E.getParentData(pe,Ou)),ae=oi(te),se=oi(re),fe={sourceNode:ae,targetNode:se};return a.style?Object.assign(a.style,fe):a.style=fe,a},UV=(E,a,y)=>{const[x,b]=a,[z,te]=y;if(b===x)return z;const re=(E-x)/(b-x);return z+re*(te-z)},jV=(E,a,y)=>{const[x,b]=a,[z,te]=y,re=Math.log(E-x+1)/Math.log(b-x+1);return z+re*(te-z)},QV=(E,a,y,x=2)=>{const[b,z]=a,[te,re]=y,ae=Math.pow((E-b)/(z-b),x);return te+ae*(re-te)},zV=(E,a,y)=>{const[x,b]=a,[z,te]=y,re=Math.sqrt((E-x)/(b-x));return z+re*(te-z)};class gx extends fv{constructor(a,y){super(a,Eh({},gx.defaultOptions,y)),this.assignSizeByCentrality=(x,b,z,te,re,ae)=>{const se=[b,z],fe=[te[0],re[0]],pe=[te[1],re[1]],be=[te[2],re[2]],Oe=(_e,je)=>{if(typeof ae=="function")return ae(_e,se,je);switch(ae){case"linear":return UV(_e,se,je);case"log":return jV(_e,se,je);case"pow":return QV(_e,se,je,2);case"sqrt":return zV(_e,se,je);default:return je[0]}};return[Oe(x,fe),Oe(x,pe),Oe(x,be)]}}beforeDraw(a){const{model:y}=this.context,x=y.getNodeData(),b=mA(this.options.maxSize),z=mA(this.options.minSize),te=this.getCentralities(this.options.centrality),re=te.size>0?Math.max(...te.values()):0,ae=te.size>0?Math.min(...te.values()):0;return x.forEach(se=>{var fe;const pe=this.assignSizeByCentrality(te.get(oi(se))||0,ae,re,z,b,this.options.scale),be=(fe=this.context.element)===null||fe===void 0?void 0:fe.getElement(oi(se)),Oe={size:pe};this.assignLabelStyle(Oe,pe,se,be),(!be||!ix(Oe,be.attributes))&&bA(a,be?"update":"add","node",Eh(se,{style:Oe}),!0)}),a}assignLabelStyle(a,y,x,b){var z;const te=b?b.config.style:(z=this.context.element)===null||z===void 0?void 0:z.getElementComputedStyle("node",x);if(Object.assign(a,rm(te,["labelFontSize","labelLineHeight"])),this.options.mapLabelSize){const re=this.getLabelSizeByNodeSize(y,1/0,Number(a.labelFontSize));Object.assign(a,{labelFontSize:re,labelLineHeight:re+v8(a.labelPadding)})}return a}getLabelSizeByNodeSize(a,y,x){const b=Math.min(...a)/2,[z,te]=Array.isArray(this.options.mapLabelSize)?this.options.mapLabelSize:[x,y];return Math.min(te,Math.max(b,z))}getCentralities(a){const{model:y}=this.context,x=y.getData();if(typeof a=="function")return a(x);const b=y.getRelatedEdgesData.bind(y);return UB(x,b,a)}}gx.defaultOptions={centrality:{type:"degree"},maxSize:80,minSize:20,scale:"linear",mapLabelSize:!1};class vx extends fv{constructor(a,y){super(a,Object.assign({},vx.defaultOptions,y))}get ref(){return this.context.model.getRootsData()[0]}afterLayout(){var a;const y=Vd(this.ref),{graph:x,model:b}=this.context;(a=b.getData().nodes)===null||a===void 0||a.forEach(te=>{var re;if(oi(te)===oi(this.ref))return;const ae=HB(Pu(Vd(te),y)),se=Math.abs(ae)>Math.PI/2,fe=!te.children||te.children.length===0,pe=oi(te),be=(re=this.context.element)===null||re===void 0?void 0:re.getElement(pe);if(!be||!be.isVisible())return;const Oe=mA(x.getElementRenderStyle(pe).size)[0]/2,_e=(fe?1:-1)*(Oe+this.options.offset),je=[["translate",_e*Math.cos(ae),_e*Math.sin(ae)],["rotate",se?Nh(ae)+180:Nh(ae)]];b.updateNodeData([{id:oi(te),style:{labelTextAlign:se===fe?"right":"left",labelTextBaseline:"middle",labelTransform:je}}])}),x.draw()}}vx.defaultOptions={offset:5};const HV="quadratic",BL=["top","top-right","right","right-bottom","bottom","bottom-left","left","left-top"];class mx extends fv{constructor(a,y){super(a,Object.assign({},mx.defaultOptions,y)),this.cacheMergeStyle=new Map,this.getAffectedParallelEdges=x=>{const{add:{edges:b},update:{nodes:z,edges:te,combos:re},remove:{edges:ae}}=x,{model:se}=this.context,fe=new Map,pe=(_e,je)=>{se.getRelatedEdgesData(je).forEach(Je=>!fe.has(oi(Je))&&fe.set(oi(Je),Je))};z.forEach(pe),re.forEach(pe);const be=_e=>{const je=se.getEdgeData().map(Je=>PL(se,Je));WV(_e,je,!0).forEach(Je=>!fe.has(oi(Je))&&fe.set(oi(Je),Je))};if(ae.size&&ae.forEach(be),b.size&&b.forEach(be),te.size){const _e=BD(KS(se.getChanges())).update.edges;te.forEach(je=>{var ze;be(je);const Je=(ze=_e.find(qe=>oi(qe.value)===oi(je)))===null||ze===void 0?void 0:ze.original;Je&&!jC(je,Je)&&be(Je)})}r0(this.options.edges)||fe.forEach((_e,je)=>!this.options.edges.includes(je)&&fe.delete(je));const Oe=se.getEdgeData().map(oi);return new Map([...fe].sort((_e,je)=>Oe.indexOf(_e[0])-Oe.indexOf(je[0])))},this.applyBundlingStyle=(x,b,z)=>{const{edgeMap:te,reverses:re}=IL(b);te.forEach(ae=>{ae.forEach((se,fe,pe)=>{var be;const Oe=pe.length,_e=se.style||{};if(se.source===se.target){const Je=BL.length;_e.loopPlacement=BL[fe%Je],_e.loopDist=Math.floor(fe/Je)*z+50}else if(Oe===1)_e.curveOffset=0;else{const Je=(fe%2===0?1:-1)*(re[`${se.source}|${se.target}|${fe}`]?-1:1);_e.curveOffset=Oe%2===1?Je*Math.ceil(fe/2)*z*2:Je*(Math.floor(fe/2)*z*2+z)}const je=Object.assign(se,{type:HV,style:_e}),ze=(be=this.context.element)===null||be===void 0?void 0:be.getElement(oi(se));(!ze||!ix(je.style,ze.attributes))&&bA(x,ze?"update":"add","edge",je,!0)})})},this.resetEdgeStyle=x=>{const b=x.style||{},z=this.cacheMergeStyle.get(oi(x))||{};return Object.keys(z).forEach(te=>{td(b[te],z[te])&&(x[te]?b[te]=x[te]:delete b[te])}),Object.assign(x,{style:b})},this.applyMergingStyle=(x,b)=>{const{edgeMap:z,reverses:te}=IL(b);z.forEach(re=>{var ae;if(re.length===1){const fe=re[0],pe=(ae=this.context.element)===null||ae===void 0?void 0:ae.getElement(oi(fe)),be=this.resetEdgeStyle(fe);(!pe||!ix(be,pe.attributes))&&bA(x,pe?"update":"add","edge",be);return}const se=re.map(({source:fe,target:pe,style:be={}},Oe)=>{const{startArrow:_e,endArrow:je}=be,ze={},[Je,qe]=te[`${fe}|${pe}|${Oe}`]?["endArrow","startArrow"]:["startArrow","endArrow"];return mh(_e)&&(ze[Je]=_e),mh(je)&&(ze[qe]=je),ze}).reduce((fe,pe)=>Object.assign(Object.assign({},fe),pe),{});re.forEach((fe,pe,be)=>{var Oe;if(pe!==0){bA(x,"remove","edge",fe);return}const _e=Object.assign({},Xo(this.options.style)?this.options.style(be):this.options.style,{childrenData:be});this.cacheMergeStyle.set(oi(fe),_e);const je=Object.assign(Object.assign({},fe),{type:"line",style:Object.assign(Object.assign(Object.assign({},fe.style),se),_e)}),ze=(Oe=this.context.element)===null||Oe===void 0?void 0:Oe.getElement(oi(fe));(!ze||!ix(je.style,ze.attributes))&&bA(x,ze?"update":"add","edge",je,!0)})})}}beforeDraw(a){const y=this.getAffectedParallelEdges(a);return y.size===0||(this.options.mode==="bundle"?this.applyBundlingStyle(a,y,this.options.distance):this.applyMergingStyle(a,y)),a}}mx.defaultOptions={mode:"bundle",distance:15};const IL=E=>{const a=new Map,y=new Set,x={},b=new Map;for(const[z,te]of E){if(y.has(z))continue;const{source:re,target:ae}=te,se=`${re}-${ae}`;a.has(se)||(a.set(se,[]),b.set(se,new Set));const fe=a.get(se),pe=b.get(se);fe&&pe&&!pe.has(z)&&(fe.push(te),pe.add(z),y.add(z));for(const[be,Oe]of E)if(!(y.has(be)||be===z)&&jC(te,Oe)){const _e=a.get(se),je=b.get(se);_e&&je&&!je.has(be)&&(_e.push(Oe),je.add(be),re===Oe.target&&ae===Oe.source&&(x[`${Oe.source}|${Oe.target}|${_e.length-1}`]=!0),y.add(be))}}return{edgeMap:a,reverses:x}},WV=(E,a,y)=>a.filter(x=>(y||oi(x)!==oi(E))&&jC(x,E)),jC=(E,a)=>{const{sourceNode:y,targetNode:x}=E.style||{},{sourceNode:b,targetNode:z}=a.style||{};return y===b&&x===z||y===z&&x===b};class GV extends fv{beforeDraw(a,y){const{stage:x}=y;if(x==="visibility")return a;const{model:b}=this.context,{update:{nodes:z,edges:te,combos:re}}=a,ae=(se,fe)=>{b.getRelatedEdgesData(fe).forEach(be=>!te.has(oi(be))&&te.set(oi(be),be))};return z.forEach(ae),re.forEach(ae),a}}const KV={animation:{"combo-collapse":qP,"combo-expand":d8,"node-collapse":XP,"node-expand":u8,"path-in":JP,"path-out":c8,fade:s8,translate:l8},behavior:{"brush-select":uy,"click-select":yE,"collapse-expand":WE,"create-edge":ZE,"drag-canvas":YE,"drag-element-force":$k,"drag-element":yy,"fix-element-size":e2,"focus-element":t2,"hover-activate":n2,"lasso-select":tU,"auto-adapt-label":hE,"optimize-viewport-transform":r2,"scroll-canvas":a2,"zoom-canvas":i2},combo:{circle:W7,rect:G7},edge:{cubic:am,line:jE,polyline:QE,quadratic:zE,"cubic-horizontal":_E,"cubic-radial":kE,"cubic-vertical":UE},layout:{"antv-dagre":j9,"combo-combined":Wj,"compact-box":o2.compactBox,"d3-force":mQ,"force-atlas2":EQ,circular:H9,concentric:PS,dagre:f2,dendrogram:o2.dendrogram,fishbone:g2,force:HI,fruchterman:bQ,grid:CQ,indented:o2.indented,mds:XI,mindmap:o2.mindmap,radial:FQ,random:QQ,snake:v2},node:{circle:tm,diamond:G_,ellipse:SE,hexagon:X_,html:OE,image:TE,rect:z7,star:H7,donut:wE,triangle:FE},palette:{spectral:KQ,tableau:VQ,oranges:ZQ,greens:YQ,blues:XQ},theme:{dark:qK,light:$K},plugin:{"bubble-sets":P2,"edge-bundling":I2,"edge-filter-lens":D2,"grid-line":O2,background:m2,contextmenu:B2,fisheye:M2,fullscreen:L2,history:T2,hull:_2,legend:z2,minimap:H2,snapline:W2,timebar:tx,toolbar:nx,tooltip:rx,watermark:ax},transform:{"arrange-draw-order":eV,"collapse-expand-combo":tV,"collapse-expand-node":nV,"get-edge-actual-ends":kV,"map-node-size":gx,"place-radial-labels":vx,"process-parallel-edges":mx,"update-related-edges":GV},shape:{circle:h0,ellipse:Yp,group:Kd,html:Xp,image:Kb,line:Gv,path:hA,polygon:Kv,polyline:L1,rect:bf,text:Vv,label:ev,badge:ep}};function VV(){Object.entries(KV).forEach(([E,a])=>{Object.entries(a).forEach(([y,x])=>{rV(E,y,x)})})}VV();const oee={css:"//at.alicdn.com/t/a/font_470089_8hnbbf8n4u8.css",js:"//at.alicdn.com/t/a/font_470089_8hnbbf8n4u8.js"};var QC=De(59301),ZV=Object.defineProperty,YV=Object.defineProperties,XV=Object.getOwnPropertyDescriptors,DL=Object.getOwnPropertySymbols,JV=Object.prototype.hasOwnProperty,qV=Object.prototype.propertyIsEnumerable,ML=(E,a,y)=>a in E?ZV(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,zC=(E,a)=>{for(var y in a||(a={}))JV.call(a,y)&&ML(E,y,a[y]);if(DL)for(var y of DL(a))qV.call(a,y)&&ML(E,y,a[y]);return E},HC=(E,a)=>YV(E,XV(a)),$V=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(se){b(se)}},te=ae=>{try{re(y.throw(ae))}catch(se){b(se)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,te);re((y=y.apply(E,a)).next())});const eZ=(E,a)=>{const y=E.getParentData(a.id,"tree");return y?a.style.x>y.style.x?"right":"left":"center"},tZ=[3,2,1];let px=[{name:"\u6839\u8282\u70B9",src:"/images/one.svg",color:"#CC7CF5"},{name:"\u8BFE\u7A0B",src:"/images/kc.svg",color:"#3241F7"},{name:"\u7AE0\u8282",src:"/images/zj.svg",color:"#5e54e7"},{name:"\u77E5\u8BC6\u70B9",src:"/images/zsd.svg",color:"#FFDF55"},{name:"\u5B9E\u8BAD",src:"/images/sx.svg",color:"#4E9DFF"},{name:"\u4F5C\u4E1A",src:"/images/zy.svg",color:"#445DF3"},{name:"\u89C6\u9891",src:"/images/sp.svg",color:"#6BC4DE"},{name:"\u8BFE\u4EF6",src:"/images/fj.svg",color:"#6BDE73"},{name:"\u8BD5\u5377",src:"/images/sj.svg",color:"#2D9534"},{name:"\u5176\u4ED6",src:"/images/qt.svg",color:"#2D947C"}];const nZ=(E,a)=>{const y={};let x=null;return E.forEach(b=>{y[b.properties.uuid]=HC(zC({},b),{id:b.properties.uuid,children:[]})}),a.forEach(b=>{const z=y[b.startNodeUuid],te=y[b.endNodeUuid];z&&(z.id=z.properties.uuid),z&&te&&z.children.push(te)}),E.forEach(b=>{!a.some(te=>te.endNodeUuid===b.properties.uuid)&&(x=y[b.properties.uuid])}),x};var rZ=(0,Ne.forwardRef)(({nodeUuid:E,subject_id:a,setshowdetail:y,setitems:x,setzoomsize:b},z)=>{const[te,re]=(0,Ne.useState)(!1),ae=(0,Ne.useRef)(0),se=(0,Ne.useRef)(null),fe=(0,Ne.useRef)();(0,Ne.useEffect)(()=>{ze()},[]);function pe(qe){fe.current.zoomBy(qe)}function be(){setTimeout(()=>{var qe;b((((qe=fe==null?void 0:fe.current)==null?void 0:qe.getZoom())*100).toFixed(0))},300)}function Oe(qe){var ot;let pt=fe.current.getElementDataByState("node","selected");(pt==null?void 0:pt.length)>0&&fe.current.setElementState((ot=pt==null?void 0:pt[0])==null?void 0:ot.id,[""]),fe.current.setElementState(qe,["selected"])}function _e(qe,ot){try{const pt={},Et={};fe.current.getEdgeData().map(bt=>{pt[bt.id]=qe==="Enter"?"inactive":"active"}),fe.current.getNodeData().map(bt=>{qe==="Enter"?Et[bt.id]=bt.colornodeType===ot?"highlight":"inactive":Et[bt.id]="active"}),fe.current.setElementState(pt),fe.current.setElementState(Et)}catch(pt){}}function je(qe,ot){var pt;(pt=fe==null?void 0:fe.current)==null||pt.fitView(qe,ot)}(0,Ne.useImperativeHandle)(z,()=>({zoomBy:pe,getData:ze,selectall:Oe,onMouse:_e,fitView:je,getZooms:be}));const ze=()=>$V(void 0,null,function*(){var qe,ot,pt,Et,bt,Ct,St,Zt,sn;re(!0);let gn=yield(0,ee.ZP)("/api/knowledge/v2/get_node.json",{method:"get",params:{nodeUuid:E,subject_id:a,depth:-1,relationshipFilter:"\u5305\u542B>"}});re(!1);let Dn=(ot=(qe=gn==null?void 0:gn.data)==null?void 0:qe.nodes)==null?void 0:ot.map(vr=>{var mr,Ir,ca,pr,Ca,Fi,Ti,di,Ha,Ii,Hi,ho;return HC(zC({},vr==null?void 0:vr.properties),{rootNodeUuid:(mr=vr==null?void 0:vr.properties)==null?void 0:mr.rootNodeUuid,id:(Ir=vr==null?void 0:vr.properties)==null?void 0:Ir.uuid,name:(ca=vr==null?void 0:vr.properties)==null?void 0:ca.name,description:(pr=vr==null?void 0:vr.properties)==null?void 0:pr.description,nodeType:(Ca=vr==null?void 0:vr.properties)==null?void 0:Ca.nodeType,tags:((Fi=vr==null?void 0:vr.properties)==null?void 0:Fi.tags)&&((Ha=(di=(Ti=vr==null?void 0:vr.properties)==null?void 0:Ti.tags)==null?void 0:di.split("\uFF0C"))==null?void 0:Ha.map(Mo=>({name:Mo})))||[],colorType:parseInt((Ii=vr==null?void 0:vr.properties)==null?void 0:Ii.color)>3?"3":(Hi=vr==null?void 0:vr.properties)==null?void 0:Hi.color,activeColor:"#FA6400",size:tZ[((ho=vr==null?void 0:vr.properties)==null?void 0:ho.color)-1]||1,shape:"circle",hide:!1,isExtendedState:!0})}),or=nZ((Et=(pt=gn==null?void 0:gn.data)==null?void 0:pt.nodes)==null?void 0:Et.map((vr,mr)=>{var Ir,ca,pr,Ca,Fi;return HC(zC({},vr),{key:mr,title:(Ir=vr==null?void 0:vr.properties)==null?void 0:Ir.name,newcolor:parseInt((ca=vr==null?void 0:vr.properties)==null?void 0:ca.color)===1?"#CC7CF5":((pr=px==null?void 0:px.find(Ti=>{var di;return(Ti==null?void 0:Ti.name)===((di=vr==null?void 0:vr.properties)==null?void 0:di.nodeType)}))==null?void 0:pr.color)||"#2D947C",colornodeType:parseInt((Ca=vr==null?void 0:vr.properties)==null?void 0:Ca.color)===1?"\u6839\u8282\u70B9":((Fi=px==null?void 0:px.find(Ti=>{var di;return(Ti==null?void 0:Ti.name)===((di=vr==null?void 0:vr.properties)==null?void 0:di.nodeType)}))==null?void 0:Fi.name)||"\u5176\u4ED6"})}),(Ct=(bt=gn==null?void 0:gn.data)==null?void 0:bt.relationships)==null?void 0:Ct.filter(vr=>vr.type==="\u5305\u542B"));fe!=null&&fe.current&&((St=fe==null?void 0:fe.current)==null||St.destroy());let Vn=UC(or),Dr=(Zt=Vn.nodes)==null?void 0:Zt.filter((vr,mr,Ir)=>mr===Ir.findIndex(ca=>ca.id===vr.id)),sa=(sn=Vn.edges)==null?void 0:sn.filter((vr,mr,Ir)=>mr===Ir.findIndex(ca=>ca.source===vr.source&&ca.target===vr.target));Je({nodes:Dr,edges:sa},Dn)}),Je=(qe,ot)=>{var pt,Et;fe.current=null,fe.current=new Ep({container:se.current,autoResize:!0,autoFit:{type:((pt=qe==null?void 0:qe.nodes)==null?void 0:pt.length)>20?"view":"center",options:{direction:"both",when:"always"}},animation:!(((Et=qe==null?void 0:qe.nodes)==null?void 0:Et.length)>300),data:qe,node:{style:{labelText:bt=>bt.title,labelFill:"#ffffff",fill:bt=>bt.newcolor,labelBackground:!1,labelPlacement:function(bt){const Ct=eZ(this,bt);return Ct==="center"?"right":Ct},halo:!0,haloStrokeOpacity:.5,haloLineWidth:10,ports:[{placement:"right"},{placement:"left"}]},animation:{enter:!1}},edge:{type:"cubic-horizontal",animation:{enter:!1}},layout:{type:"mindmap",direction:"H",getHeight:()=>32,getWidth:()=>32,getVGap:()=>4,getHGap:()=>64,getSide:bt=>(ae.current++,ae.current%2==0?"left":"right")},behaviors:["drag-element",{type:"zoom-canvas",onFinish:()=>{setTimeout(()=>{var bt;b((((bt=fe==null?void 0:fe.current)==null?void 0:bt.getZoom())*100).toFixed(0))},300)}},"collapse-expand","drag-canvas",{type:"click-select",state:"selected",onClick:bt=>{let Ct=ot.filter(St=>{var Zt,sn;return(St==null?void 0:St.id)===((sn=(Zt=bt.target)==null?void 0:Zt.config)==null?void 0:sn.id)});if((Ct==null?void 0:Ct.length)===0){y(!1);return}x(Ct==null?void 0:Ct[0]),y(!0),bt.view.setCursor("pointer")},multiple:!1}]}),fe.current.render(),setTimeout(()=>{var bt;b((((bt=fe==null?void 0:fe.current)==null?void 0:bt.getZoom())*100).toFixed(0))},300)};return QC.createElement("div",{style:{height:"100%"}},QC.createElement(ue.Z,{spinning:te,className:"mt60 w100",tip:"\u52A0\u8F7D\u4E2D..."}),QC.createElement("div",{style:{height:"100%"},ref:se}))}),Wu={flex_box_center:"flex_box_center___mORrQ",flex_space_between:"flex_space_between___AGgBm",flex_box_vertical_center:"flex_box_vertical_center____H93g",flex_box_center_end:"flex_box_center_end___VPK8Q",flex_box_column:"flex_box_column___qksG3",RadioGroupStyle:"RadioGroupStyle___tgdIW",autocomp:"autocomp___H_feM",autocompwidth:"autocompwidth___RMYtG",hoverone:"hoverone___j7m8k",name:"name___qwPqM",img:"img___WHKD_",autopop:"autopop___YCC3k",studentHead:"studentHead___DeVom",headLi:"headLi___qiYnp",btn:"btn___s7HI8",tupugx:"tupugx___JCYSy",textname:"textname___iEAMA",dropdownst:"dropdownst___ca1cn"},WC=De(84989),LL=De(59301),aZ=Object.defineProperty,iZ=Object.defineProperties,oZ=Object.getOwnPropertyDescriptors,yx=Object.getOwnPropertySymbols,OL=Object.prototype.hasOwnProperty,TL=Object.prototype.propertyIsEnumerable,FL=(E,a,y)=>a in E?aZ(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,NL=(E,a)=>{for(var y in a||(a={}))OL.call(a,y)&&FL(E,y,a[y]);if(yx)for(var y of yx(a))TL.call(a,y)&&FL(E,y,a[y]);return E},sZ=(E,a)=>iZ(E,oZ(a)),lZ=(E,a)=>{var y={};for(var x in E)OL.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&yx)for(var x of yx(E))a.indexOf(x)<0&&TL.call(E,x)&&(y[x]=E[x]);return y},uZ=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(se){b(se)}},te=ae=>{try{re(y.throw(ae))}catch(se){b(se)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,te);re((y=y.apply(E,a)).next())});let Ex=[{name:"\u6839\u8282\u70B9",src:"/images/one.svg",color:"#CC7CF5",bordercolor:"#A150CB"},{name:"\u8BFE\u7A0B",src:"/images/kc.svg",color:"#3241F7",bordercolor:"#3437D9"},{name:"\u7AE0\u8282",src:"/images/zj.svg",color:"#5e54e7",bordercolor:"#7f77f9"},{name:"\u77E5\u8BC6\u70B9",src:"/images/zsd.svg",color:"#FFDF55",bordercolor:"#FFD60F"},{name:"\u5B9E\u8BAD",src:"/images/sx.svg",color:"#4E9DFF",bordercolor:"#0882FB"},{name:"\u4F5C\u4E1A",src:"/images/zy.svg",color:"#445DF3",bordercolor:"#3149D5"},{name:"\u89C6\u9891",src:"/images/sp.svg",color:"#6BC4DE",bordercolor:"#339DC4"},{name:"\u8BFE\u4EF6",src:"/images/fj.svg",color:"#6BDE73",bordercolor:"#33C448"},{name:"\u8BD5\u5377",src:"/images/sj.svg",color:"#2D9534",bordercolor:"#077A04"},{name:"\u5176\u4ED6",src:"/images/qt.svg",color:"#2D947C",bordercolor:"#157660"}];const lee=null;let uee=null;const cZ=E=>{var a=E,{pathsDetail:y,user:x,globalSetting:b,loading:z,dispatch:te,datas:re}=a,ae=lZ(a,["pathsDetail","user","globalSetting","loading","dispatch","datas"]);const se=(0,Ne.useRef)(),fe=(0,Ne.useRef)(null);(0,Ne.useEffect)(()=>{pe()},[re]);function pe(){return uZ(this,null,function*(){var be,Oe,_e,je,ze,Je,qe;if(((be=re==null?void 0:re.nodes)==null?void 0:be.length)>0){let ot=(0,Bt.fX)((Oe=re==null?void 0:re.nodes)==null?void 0:Oe.map((St,Zt)=>{var sn,gn,Dn,or,Vn,Dr,sa,vr,mr,Ir,ca,pr,Ca,Fi,Ti,di;return sZ(NL(NL({},St),St==null?void 0:St.properties),{rootNodeUuid:(sn=St==null?void 0:St.properties)==null?void 0:sn.rootNodeUuid,id:(gn=St==null?void 0:St.properties)==null?void 0:gn.uuid,name:(Dn=St==null?void 0:St.properties)==null?void 0:Dn.name,labelstype:(or=St==null?void 0:St.labels)==null?void 0:or[1],description:(Vn=St==null?void 0:St.properties)==null?void 0:Vn.description,nodeType:(Dr=St==null?void 0:St.properties)==null?void 0:Dr.nodeType,colornodeType:parseInt((sa=St==null?void 0:St.properties)==null?void 0:sa.color)===1?"\u6839\u8282\u70B9":((vr=Ex==null?void 0:Ex.find(Ha=>{var Ii;return(Ha==null?void 0:Ha.name)===((Ii=St==null?void 0:St.properties)==null?void 0:Ii.nodeType)}))==null?void 0:vr.name)||"\u5176\u4ED6",newcolor:parseInt((mr=St==null?void 0:St.properties)==null?void 0:mr.color)===1?"#CC7CF5":((Ir=Ex==null?void 0:Ex.find(Ha=>{var Ii;return(Ha==null?void 0:Ha.name)===((Ii=St==null?void 0:St.properties)==null?void 0:Ii.nodeType)}))==null?void 0:Ir.color)||"#2D947C",tags:((ca=St==null?void 0:St.properties)==null?void 0:ca.tags)&&((Fi=(Ca=(pr=St==null?void 0:St.properties)==null?void 0:pr.tags)==null?void 0:Ca.split("\uFF0C"))==null?void 0:Fi.map(Ha=>({name:Ha})))||[],colorType:parseInt((Ti=St==null?void 0:St.properties)==null?void 0:Ti.color)>3?"3":(di=St==null?void 0:St.properties)==null?void 0:di.color})}),(ze=(je=(_e=re==null?void 0:re.relationships)==null?void 0:_e.filter(St=>{var Zt,sn,gn;return(St==null?void 0:St.endNodeUuid)!==((gn=(sn=(Zt=re==null?void 0:re.nodes)==null?void 0:Zt[0])==null?void 0:sn.properties)==null?void 0:gn.rootNodeUuid)}))==null?void 0:je.filter(St=>{var Zt,sn,gn;return(St==null?void 0:St.startNodeUuid)!==((gn=(sn=(Zt=re==null?void 0:re.nodes)==null?void 0:Zt[0])==null?void 0:sn.properties)==null?void 0:gn.rootNodeUuid)}))==null?void 0:ze.filter(St=>St.type==="\u5305\u542B")),pt=UC(ot),Et=(Je=pt.nodes)==null?void 0:Je.filter((St,Zt,sn)=>Zt===sn.findIndex(gn=>gn.id===St.id)),bt=(qe=pt.edges)==null?void 0:qe.filter((St,Zt,sn)=>Zt===sn.findIndex(gn=>gn.source===St.source&&gn.target===St.target));Et.map(St=>(St.transformd=!0,St.style={labelWordWrap:!0,labelPlacement:St.depth===0?"center":St.depth<3?"top-left":"top",haloLineWidth:Math.max(20-St.depth*6,0),labelMaxWidth:St.depth===0?300:200,labelFontSize:St.depth===0?22:Et.length>300?12:14,labelLineHeight:100,halo:St.depth<3},St)),se.current=null;let Ct=Et==null?void 0:Et.length;se.current=new Ep({container:fe.current,autoResize:!0,background:"#010A23",autoFit:{type:Et.length>50?"view":"center",options:{direction:"both",when:"always"}},animation:!1,padding:50,data:{nodes:Et,edges:bt},node:{type:"circle",style:{size:St=>St.colorType==1?100:St.depth<2?50:Ct>250?10:20,fill:St=>St.newcolor,labelText:St=>St.name,labelFill:"#ffffff"},state:{highlight:{stroke:"transparent"},selected:{stroke:"transparent"},inactive:{fill:St=>St.newcolor,port:!1,labelBackground:!1,halo:!1,badgeBackground:!1}}},edge:{style:{labelBackground:!1,halo:!1,stroke:"#A150CB",strokeOpacity:.5},state:{inactive:{stroke:"#f9f0ff",strokeOpacity:.5,halo:!1,labelBackground:!1,lineWidth:1},highlight:{stroke:"#43E93F",strokeOpacity:1,halo:!1,lineWidth:1},selected:{stroke:"#43E93F",strokeOpacity:1,halo:!1,lineWidth:1},active:{halo:!1},disable:{halo:!1}}},layout:[{type:"dendrogram",radial:!0,nodeSep:40,rankSep:Et.length>250?360:240,direction:"RL",unitRadius:90,linkDistance:200,preventOverlap:!0,maxPreventOverlapIteration:100,strictRadial:!1}],plugins:[{type:"tooltip",enable:St=>St.targetType==="node",getContent:(St,Zt)=>{let sn="";return Zt.forEach(gn=>{sn+=`
${gn.name||""}
`}),sn}}],behaviors:["drag-canvas",{type:"zoom-canvas"},"drag-element",{type:"collapse-expand",onExpand:(St,Zt)=>{console.log("----",St,Zt)}},{type:"fix-element-size",state:"fix-element-size",enable:!0}],transforms:[{type:"place-radial-labels"}]}),se.current.render()}})}return LL.createElement("div",{style:{background:"#fff",height:"800rem"}},LL.createElement("div",{style:{width:"100%",height:"800rem"},ref:fe}))};var dZ=(0,Ce.connect)(({pathsDetail:E,user:a,loading:y,globalSetting:x})=>({pathsDetail:E,user:a,globalSetting:x,loading:y.models.index}))(cZ),fZ=De(44164),hZ=De.n(fZ),ao=De(59301),AZ=Object.defineProperty,gZ=Object.defineProperties,vZ=Object.getOwnPropertyDescriptors,xx=Object.getOwnPropertySymbols,RL=Object.prototype.hasOwnProperty,_L=Object.prototype.propertyIsEnumerable,kL=(E,a,y)=>a in E?AZ(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,vm=(E,a)=>{for(var y in a||(a={}))RL.call(a,y)&&kL(E,y,a[y]);if(xx)for(var y of xx(a))_L.call(a,y)&&kL(E,y,a[y]);return E},mZ=(E,a)=>gZ(E,vZ(a)),pZ=(E,a)=>{var y={};for(var x in E)RL.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&xx)for(var x of xx(E))a.indexOf(x)<0&&_L.call(E,x)&&(y[x]=E[x]);return y},P0=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(se){b(se)}},te=ae=>{try{re(y.throw(ae))}catch(se){b(se)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,te);re((y=y.apply(E,a)).next())});let Hy=[{name:"\u6839\u8282\u70B9",src:"/images/one.svg",color:"#CC7CF5",bordercolor:"#A150CB"},{name:"\u8BFE\u7A0B",src:"/images/kc.svg",color:"#3241F7",bordercolor:"#3437D9"},{name:"\u7AE0\u8282",src:"/images/zj.svg",color:"#5e54e7",bordercolor:"#7f77f9"},{name:"\u77E5\u8BC6\u70B9",src:"/images/zsd.svg",color:"#FFDF55",bordercolor:"#FFD60F"},{name:"\u5B9E\u8BAD",src:"/images/sx.svg",color:"#4E9DFF",bordercolor:"#0882FB"},{name:"\u4F5C\u4E1A",src:"/images/zy.svg",color:"#445DF3",bordercolor:"#3149D5"},{name:"\u89C6\u9891",src:"/images/sp.svg",color:"#6BC4DE",bordercolor:"#339DC4"},{name:"\u8BFE\u4EF6",src:"/images/fj.svg",color:"#6BDE73",bordercolor:"#33C448"},{name:"\u8BD5\u5377",src:"/images/sj.svg",color:"#2D9534",bordercolor:"#077A04"},{name:"\u5176\u4ED6",src:"/images/qt.svg",color:"#2D947C",bordercolor:"#157660"}];const yZ=E=>{var a=E,{pathsDetail:y,user:x,globalSetting:b,loading:z,dispatch:te,uuid:re,Tabsdatas:ae,initdata:se,setactivied:fe,tpacti:pe}=a,be=pZ(a,["pathsDetail","user","globalSetting","loading","dispatch","uuid","Tabsdatas","initdata","setactivied","tpacti"]),Oe,_e,je,ze,Je,qe,ot,pt;const Et=(0,Ne.useRef)(),bt=(0,Ne.useRef)(),Ct=(0,Ne.useRef)(),[St,Zt]=(0,Ne.useState)([]),[sn,gn]=(0,Ne.useState)(!0),[Dn,or]=(0,Ne.useState)([]),[Vn,Dr]=(0,Ne.useState)(""),[sa,vr]=(0,Ne.useState)(!1),mr=(0,Ne.useRef)(null),[Ir,ca]=(0,Ne.useState)(),[pr,Ca]=(0,Ne.useState)(!1),[Fi,Ti]=(0,Ne.useState)([]);let[di,Ha]=(0,Ne.useState)(!1);const[Ii,Hi]=(0,Ne.useState)(!1),[ho,Mo]=(0,Ne.useState)(!1),[zs,As]=(0,Ne.useState)([]),[Bo,ds]=(0,Ne.useState)(!1),[$o,fs]=(0,Ne.useState)([]),[Is]=(0,Ce.useSearchParams)(),[El,cl]=(0,Ne.useState)(!1),[Oo,Zo]=(0,Ne.useState)(0),[$i,Ao]=(0,Ne.useState)("\u5168\u90E8");let[So,rs]=(0,Ne.useState)({page:1,limit:10});const[oo,ws]=(0,Ne.useState)({}),[as,_l]=(0,Ne.useState)([]),ml=(0,Ne.useRef)(null),Cl=(0,Ne.useRef)(null),[au]=me.default.useForm(),[id,lu]=(0,Ne.useState)(!1),[Ch,Df]=(0,Ne.useState)(!1),[tu,nl]=(0,Ne.useState)(!1),Fl=window.ENV==="build"?"/react/build":"";(0,Ne.useEffect)(()=>(di=!1,Ha(!1),Sc(2),ke.ZP.config({getContainer:()=>mr.current}),()=>{gn(!1),or([]),Ca(!1),Dr("")}),[re]);const Xl=()=>ao.createElement("div",{className:Wu.studentHead},ao.createElement("div",{className:Wu.headLi},ao.createElement("img",{src:nt}),ao.createElement("aside",null,ao.createElement("span",null,"\u8D44\u6E90\u603B\u6570"),ao.createElement("b",null,oo==null?void 0:oo.resource_count))),ao.createElement("div",{className:Wu.headLi},ao.createElement("img",{src:kt}),ao.createElement("aside",null,ao.createElement("span",null,"\u5B66\u4E60\u5B8C\u6210\u7387"),ao.createElement("b",{style:{color:"#F7B500"}},oo==null?void 0:oo.complete_rate,"%"))),ao.createElement("div",{className:Wu.headLi},ao.createElement("img",{src:Ht}),ao.createElement("aside",null,ao.createElement("span",null,"\u5B66\u4E60\u638C\u63E1\u7387"),ao.createElement("b",{style:{color:"#3AFFC8"}},oo==null?void 0:oo.grasp_rate,"%"))),ao.createElement("div",{className:Wu.headLi},ao.createElement("img",{src:Ln}),ao.createElement("aside",null,ao.createElement("span",{style:{marginBottom:"10rem"}},"\u4E0A\u6B21\u5B66\u5230"),ao.createElement(mn.Z,{title:oo==null?void 0:oo.last_knowledge_name},ao.createElement("b",{style:{color:"#7FAAFF",fontSize:"16rem"}},(0,Bt.Pq)(oo==null?void 0:oo.last_knowledge_name,13))))),ao.createElement("div",{onClick:()=>handleClickDetails({knowledge_uuid:oo==null?void 0:oo.last_knowledge_uuid}),className:Wu.btn},"\u7EE7\u7EED\u5B66\u4E60")),lc={onRemove:()=>{As([])},beforeUpload:Wo=>{if(console.log(Wo),(Wo==null?void 0:Wo.size)>1024*1024*50)return ke.ZP.info("\u6587\u4EF6\u8D85\u8FC750M\uFF0C\u4E0D\u7B26\u5408\u4E0A\u4F20\u8981\u6C42"),!1;let Bs=[];return Bs.push(Wo),As([...Bs]),!1},fileList:zs,accept:".xls,.xlsx"};(0,Ne.useEffect)(()=>{},[di]),(0,Ne.useEffect)(()=>(window.addEventListener("resize",Jd),()=>{window.removeEventListener("resize",Jd)}),[]);function Jd(){var Wo,Bs;(Bs=(Wo=Et.current)==null?void 0:Wo.update)==null||Bs.call(Wo)}function Sc(Wo){return P0(this,null,function*(){var Bs,Al,rl,Ds,Cc,Yf,Ph,ff,hf,Hl,$l;cl(!0);let Ml=yield(0,ee.ZP)("/api/knowledge/v2/get_node.json",{method:"get",params:{nodeUuid:re,subject_id:(Bs=y==null?void 0:y.detail)==null?void 0:Bs.id,depth:Wo===0?Wo:Wo||-1,relationshipFilter:"\u5305\u542B>"}});if(cl(!1),(Ml==null?void 0:Ml.status)===0){if(Is.get("type")==="classrooms"?te({type:"pathsDetail/getCourseDetail",payload:vm({id:(Al=y==null?void 0:y.detail)==null?void 0:Al.id,knowledge:!0},(0,Bt.oP)())}):te({type:"pathsDetail/getPathsDetail",payload:vm({id:(rl=y==null?void 0:y.detail)==null?void 0:rl.id,knowledge:!0},(0,Bt.oP)())}),di){bt.current.getData();return}gn(!0);let Fg=(0,Bt.fX)((Cc=(Ds=Ml==null?void 0:Ml.data)==null?void 0:Ds.nodes)==null?void 0:Cc.map((Go,Bh)=>{var Ih,Hh,vv,SA,Dx,gs,CA,Mx,Lx,Ox,Tx,mv,Fx,Nx,li,is,al;return mZ(vm(vm({},Go),Go==null?void 0:Go.properties),{rootNodeUuid:(Ih=Go==null?void 0:Go.properties)==null?void 0:Ih.rootNodeUuid,id:(Hh=Go==null?void 0:Go.properties)==null?void 0:Hh.uuid,name:(vv=Go==null?void 0:Go.properties)==null?void 0:vv.name,label:(SA=Go==null?void 0:Go.properties)==null?void 0:SA.name,labelstype:(Dx=Go==null?void 0:Go.labels)==null?void 0:Dx[1],description:(gs=Go==null?void 0:Go.properties)==null?void 0:gs.description,nodeType:(CA=Go==null?void 0:Go.properties)==null?void 0:CA.nodeType,colornodeType:parseInt((Mx=Go==null?void 0:Go.properties)==null?void 0:Mx.color)===1?"\u6839\u8282\u70B9":((Lx=Hy==null?void 0:Hy.find(Fs=>{var Kl;return(Fs==null?void 0:Fs.name)===((Kl=Go==null?void 0:Go.properties)==null?void 0:Kl.nodeType)}))==null?void 0:Lx.name)||"\u5176\u4ED6",newcolor:parseInt((Ox=Go==null?void 0:Go.properties)==null?void 0:Ox.color)===1?"#CC7CF5":((Tx=Hy==null?void 0:Hy.find(Fs=>{var Kl;return(Fs==null?void 0:Fs.name)===((Kl=Go==null?void 0:Go.properties)==null?void 0:Kl.nodeType)}))==null?void 0:Tx.color)||"#2D947C",tags:((mv=Go==null?void 0:Go.properties)==null?void 0:mv.tags)&&((li=(Nx=(Fx=Go==null?void 0:Go.properties)==null?void 0:Fx.tags)==null?void 0:Nx.split("\uFF0C"))==null?void 0:li.map(Fs=>({name:Fs})))||[],colorType:parseInt((is=Go==null?void 0:Go.properties)==null?void 0:is.color)>3?"3":(al=Go==null?void 0:Go.properties)==null?void 0:al.color})}),(Ph=(Yf=Ml==null?void 0:Ml.data)==null?void 0:Yf.relationships)==null?void 0:Ph.filter(Go=>Go.type==="\u5305\u542B"));console.log("----types",Fg,Ml==null?void 0:Ml.data);let gv=UC(Fg),od=(ff=gv.nodes)==null?void 0:ff.filter((Go,Bh,Ih)=>Bh===Ih.findIndex(Hh=>Hh.id===Go.id));Zt(od);let D0=(hf=gv.edges)==null?void 0:hf.filter((Go,Bh,Ih)=>Bh===Ih.findIndex(Hh=>Hh.source===Go.source&&Hh.target===Go.target));od.map(Go=>(Go.transformd=!0,Go.style={labelWordWrap:!0,labelPlacement:Go.depth===0?"center":Go.depth<3?"top-left":"top",haloLineWidth:Math.max(20-Go.depth*6,0),labelMaxWidth:Go.depth===0?300:200,labelFontSize:Go.depth===0?22:od.length>300?12:14,labelLineHeight:100,halo:Go.depth<3},Go)),Ct.current=null;let M0=od==null?void 0:od.length;Ct.current=new Ep({container:Cl.current,autoResize:!0,background:"#010A23",autoFit:{type:od.length>50?"view":"center",options:{direction:"both",when:"always"}},animation:!1,padding:50,data:{nodes:od,edges:D0},node:{type:"circle",style:{size:Go=>Go.colorType==1?100:Go.depth<2?50:M0>250?10:20,fill:Go=>Go.newcolor,labelText:Go=>Go.name,labelFill:"#ffffff"},state:{highlight:{stroke:"transparent"},selected:{stroke:"transparent"},inactive:{fill:Go=>Go.newcolor,port:!1,labelBackground:!1,halo:!1,badgeBackground:!1}}},edge:{style:{labelBackground:!1,halo:!1,stroke:"#A150CB",strokeOpacity:.5},state:{inactive:{stroke:"#f9f0ff",strokeOpacity:.5,halo:!1,labelBackground:!1,lineWidth:1},highlight:{stroke:"#43E93F",strokeOpacity:1,halo:!1,lineWidth:1},selected:{stroke:"#43E93F",strokeOpacity:1,halo:!1,lineWidth:1},active:{halo:!1},disable:{halo:!1}}},layout:[{type:"dendrogram",radial:!0,nodeSep:40,rankSep:od.length>250?360:240,direction:"RL",unitRadius:90,linkDistance:200,preventOverlap:!0,maxPreventOverlapIteration:100,strictRadial:!1}],plugins:[{type:"tooltip",enable:Go=>Go.targetType==="node",getContent:(Go,Bh)=>{let Ih="";return Bh.forEach(Hh=>{Ih+=`
${Hh.name||""}
`}),Ih}}],behaviors:["drag-canvas",{type:"zoom-canvas",onFinish:()=>{setTimeout(()=>{var Go;Zo((((Go=Ct==null?void 0:Ct.current)==null?void 0:Go.getZoom())*100).toFixed(0))},300)}},"drag-element",{type:"collapse-expand",onExpand:(Go,Bh)=>{console.log("----",Go,Bh)}},{type:"fix-element-size",state:"fix-element-size",enable:!0},{type:"click-select",state:"selected",onClick:Go=>{ml.current?(clearTimeout(ml.current),ml.current=null):ml.current=setTimeout(()=>{let Bh=od.filter(Ih=>{var Hh,vv;return(Ih==null?void 0:Ih.id)===((vv=(Hh=Go.target)==null?void 0:Hh.config)==null?void 0:vv.id)});if((Bh==null?void 0:Bh.length)===0){Ca(!1);return}ca(Bh==null?void 0:Bh[0]),Ca(!0),Go.view.setCursor("pointer"),ml.current=null},300)},multiple:!1},{type:"hover-activate",enable:Go=>Go.targetType==="node",degree:1,state:"highlight",direction:"both",inactiveState:"inactive",onHover:Go=>{Go.view.setCursor("pointer")},onHoverEnd:Go=>{Go.view.setCursor("default")}}],transforms:[{type:"place-radial-labels"}]}),Ct.current.render(),Cl.current.style.opacity=1,(Hl=Ct==null?void 0:Ct.current)==null||Hl.fitView(),setTimeout(()=>{var Go;Zo((((Go=Ct==null?void 0:Ct.current)==null?void 0:Go.getZoom())*100).toFixed(0))},300);var Gu=Ct.current.getOptions();setTimeout(()=>{Gu.animation=!0,Ct.current.setOptions(Gu)},2500),window.graphsRef=Ct.current}let Tc=yield(0,ee.ZP)("/api/knowledge_items.json",{method:"get",params:{item_type:3,subject_id:($l=y==null?void 0:y.detail)==null?void 0:$l.id}});(Tc==null?void 0:Tc.status)===0&&_l(Tc==null?void 0:Tc.data)})}const mm=(Wo,Bs)=>{if(Ct.current){if(di){bt.current.onMouse(Wo,Bs.name);return}try{const Al={},rl={};Ct.current.getEdgeData().map(Ds=>{Al[Ds.id]=Wo==="Enter"?"inactive":"active"}),Ct.current.getNodeData().map(Ds=>{Wo==="Enter"?rl[Ds.id]=Ds.colornodeType===Bs.name?"highlight":"inactive":rl[Ds.id]="active"}),Ct.current.setElementState(Al),Ct.current.setElementState(rl)}catch(Al){}}},pm=(Wo,Bs)=>{if(Ct.current){if(di){bt.current.onMouse(Wo,Bs.name);return}try{const Al={},rl={};Ct.current.getEdgeData().map(Ds=>{Al[Ds.id]=Wo==="Enter"?"inactive":"active"}),Ct.current.getNodeData().map(Ds=>{var Cc,Yf;Wo==="Enter"?rl[Ds.id]=(Yf=(Cc=Ds.tags)==null?void 0:Cc.map(Ph=>Ph==null?void 0:Ph.name))!=null&&Yf.includes(Bs.name)?"highlight":"inactive":rl[Ds.id]="active"}),Ct.current.setElementState(Al),Ct.current.setElementState(rl)}catch(Al){}}};return ao.createElement(ue.Z,{spinning:El},ao.createElement("div",{ref:mr,style:{background:"#010A23",height:"100vh",overflow:"hidden",position:"relative"}},ao.createElement("div",{style:{color:"#fff",display:"flex",alignItems:"center",marginLeft:"10rem",position:"fixed",bottom:"30px",zIndex:1}},(Oe=Hy.filter(Wo=>{var Bs;return(Bs=St==null?void 0:St.map(Al=>Al==null?void 0:Al.colornodeType))==null?void 0:Bs.includes(Wo==null?void 0:Wo.name)}))==null?void 0:Oe.map(Wo=>ao.createElement("div",{onMouseLeave:()=>mm("Leave",Wo),onMouseEnter:()=>mm("Enter",Wo),style:{display:"flex",alignItems:"center",margin:"0 2px",cursor:"pointer"}},ao.createElement("span",{style:{display:"inline-flex",marginLeft:"10rem",width:"20rem",height:"20rem",borderRadius:"50%",background:Wo.color}}),ao.createElement("span",{style:{marginLeft:"5rem"}},Wo==null?void 0:Wo.name)))),ao.createElement("div",{style:{color:"#fff",display:"flex",alignItems:"center",marginLeft:"10rem",position:"fixed",bottom:"30px",zIndex:1,right:40}},ao.createElement(cn.Z,{overlayClassName:Wu.dropdownst,getPopupContainer:()=>mr.current,menu:{items:[{label:ao.createElement("div",{onClick:()=>{Sc()}},"\u5C55\u5F00\u5168\u90E8"),key:"1"},{label:ao.createElement("div",{onClick:()=>{Sc(3)}},"\u5C55\u5F003\u5C42"),key:"2"},{label:ao.createElement("div",{onClick:()=>{Sc(2)}},"\u5C55\u5F002\u5C42"),key:"3"},{label:ao.createElement("div",{onClick:()=>{Sc(1)}},"\u5C55\u5F001\u5C42"),key:"4"},{label:ao.createElement("div",{onClick:()=>{Sc(0)}},"\u6536\u8D77\u5168\u90E8"),key:"5"}]}},ao.createElement("img",{style:{cursor:"pointer"},onClick:()=>{},src:tu===7?`${Fl}/images/xscjxz.png`:`${Fl}/images/xscj.png`,onMouseOut:()=>{nl(!1)},onMouseOver:()=>{nl(7)}})),ao.createElement(mn.Z,{title:"\u5C45\u4E2D\u663E\u793A"},ao.createElement("img",{onClick:()=>{gn(!1),Sc()},style:{marginLeft:"10rem",cursor:"pointer"},src:tu===8?`${Fl}/images/jzxsxz.png`:`${Fl}/images/jzxs.png`,onMouseOut:()=>{nl(!1)},onMouseOver:()=>{nl(8)},className:Wu.img})),ao.createElement("div",{style:{marginLeft:"10rem",background:"#202F4F",borderRadius:"4px",alignItems:"center"}},ao.createElement("img",{style:{cursor:"pointer"},onClick:()=>{di?(bt.current.zoomBy(.9),bt.current.getZooms()):(Ct.current.zoomBy(.9),setTimeout(()=>{var Wo;Zo((((Wo=Ct==null?void 0:Ct.current)==null?void 0:Wo.getZoom())*100).toFixed(0))},300))},src:tu===9?`${Fl}/images/newsxxz.png`:`${Fl}/images/newsx.png`,onMouseOut:()=>{nl(!1)},onMouseOver:()=>{nl(9)}}),ao.createElement("span",{style:{display:"inline-flex",width:"46px",justifyContent:"center"},onClick:()=>{}}," ",Oo+"%"),ao.createElement("img",{style:{cursor:"pointer"},onClick:()=>{di?(bt.current.zoomBy(1.1),bt.current.getZooms()):(Ct.current.zoomBy(1.1),setTimeout(()=>{var Wo;Zo((((Wo=Ct==null?void 0:Ct.current)==null?void 0:Wo.getZoom())*100).toFixed(0))},300))},src:tu===12?`${Fl}/images/newfdxz.png`:`${Fl}/images/newfd.png`,onMouseOut:()=>{nl(!1)},onMouseOver:()=>{nl(12)}}))),ao.createElement("div",{style:{display:"flex",justifyContent:"start",width:"1840rem",left:"40rem",paddingTop:"25rem",position:"absolute",zIndex:1}},ao.createElement("span",{className:Wu.tupugx,onClick:()=>{fe()}},ao.createElement("img",{src:`${Fl}/images/tpgx.svg`,style:{marginRight:"10rem",width:"16rem"}}),"\u56FE\u8C31\u5173\u7CFB"),ao.createElement("div",{className:Wu.autocomp},sn&&ao.createElement("div",{style:{display:"flex",alignItems:"center"}},ao.createElement(ba.Z,{className:Wu.autocompwidth,options:Dn,popupClassName:Wu.autopop,getPopupContainer:()=>mr.current,value:Vn,onSelect:(Wo,Bs)=>{var Al;if(Dr(St.find(rl=>rl.id===Wo).name),ca(St.find(rl=>rl.id===Wo)),Ca(!0),di)bt.current.selectall(Wo);else{let rl=Ct.current.getElementDataByState("node","selected");(rl==null?void 0:rl.length)>0&&Ct.current.setElementState((Al=rl==null?void 0:rl[0])==null?void 0:Al.id,[""]),Ct.current.setElementState(Wo,["selected"])}},onChange:Wo=>{Dr(Wo)},onSearch:Wo=>{or(()=>{var Bs,Al,rl;return $i==="\u5168\u90E8"?(Bs=St==null?void 0:St.filter(Ds=>Ds.name.includes(Wo)))==null?void 0:Bs.map(Ds=>({label:ao.createElement("div",{style:{display:"flex",alignItems:"center"}},ao.createElement("span",{style:{marginRight:"10rem",height:"20rem",lineHeight:"20rem",padding:"0rem 6rem",color:"#fff",fontSize:"12rem",background:"#1890FF",borderRadius:"2rem"}},Ds==null?void 0:Ds.nodeType)," ",ao.createElement("div",{style:{color:"#fff"},dangerouslySetInnerHTML:{__html:Ds==null?void 0:Ds.name.replaceAll(Wo,`${Wo}`)}})),value:Ds==null?void 0:Ds.id})):(rl=(Al=St==null?void 0:St.filter(Ds=>{var Cc;return(Cc=Ds==null?void 0:Ds.tags)==null?void 0:Cc.find(Yf=>Yf.name===$i)}))==null?void 0:Al.filter(Ds=>Ds.name.includes(Wo)))==null?void 0:rl.map(Ds=>({label:ao.createElement("div",{style:{display:"flex",alignItems:"center"}},ao.createElement("span",{style:{marginRight:"10rem",height:"20rem",padding:"2rem 6rem",color:"#fff",fontSize:"12rem",background:"#1890FF",borderRadius:"2rem"}},Ds==null?void 0:Ds.nodeType)," ",ao.createElement("div",{style:{color:"#fff"},dangerouslySetInnerHTML:{__html:Ds==null?void 0:Ds.name.replaceAll(Wo,`${Wo}`)}})),value:Ds==null?void 0:Ds.id}))})}},ao.createElement(xe.default,{placeholder:"\u8BF7\u8F93\u5165\u5173\u952E\u8BCD\u641C\u7D22",addonBefore:ao.createElement(cn.Z,{overlayClassName:Wu.dropdownst,menu:{items:[{label:ao.createElement("div",{onClick:()=>{Ao("\u5168\u90E8"),pm("\u5168\u90E8","")}},"\u5168\u90E8"),key:"1"},...as==null?void 0:as.map(Wo=>({label:ao.createElement("div",{onClick:()=>{Ao(Wo.name),pm("Enter",Wo)}},Wo==null?void 0:Wo.name),key:Wo.id}))]}},ao.createElement("div",{style:{display:"flex",alignItems:"center"}},ao.createElement("div",{className:Wu.textname,style:{width:"60rem"}},$i),ao.createElement("div",{style:{height:"22rem",background:"linear-gradient( 180deg, rgba(255,255,255,0) 0%, #AEAEAE 52%, rgba(255,255,255,0) 100%)",width:"1rem"}})))})))),ao.createElement("div",{style:{display:"flex",position:"absolute",right:"0rem",zIndex:"3"}},((_e=y==null?void 0:y.detail)==null?void 0:_e.sync_uuid)&&((je=y==null?void 0:y.detail)==null?void 0:je.sync_uuid)===re&&((ze=y==null?void 0:y.detail)==null?void 0:ze.can_managed)&&ao.createElement(mn.Z,{title:"\u540C\u6B65"},ao.createElement("img",{className:"current",onClick:(0,Xf.debounce)(()=>{Pe.default.confirm({title:"\u63D0\u793A",icon:null,centered:!0,getContainer:()=>mr.current,content:"\u8BF7\u786E\u5B9A\u662F\u5426\u5C06\u540C\u6B65\u8BFE\u7A0B\u7AE0\u8282\u5185\u5BB9\uFF0C\u66F4\u65B0\u540E\u539F\u6709\u77E5\u8BC6\u56FE\u8C31\u5185\u5BB9\u5C06\u88AB\u8986\u76D6\uFF0C\u8986\u76D6\u540E\u53EF\u5728\u7248\u672C\u7BA1\u7406\u4E2D\u9009\u62E9\u6062\u590D\u3002",onOk:()=>P0(void 0,null,function*(){var Wo,Bs;const Al=(Wo=ae==null?void 0:ae.find(Ds=>(Ds==null?void 0:Ds.uuid)===re))==null?void 0:Wo.name;let rl=yield(0,ee.ZP)("/api/knowledge/v2/sync.json",{method:"post",body:{subject_id:(Bs=y==null?void 0:y.detail)==null?void 0:Bs.id,uuid:re,name:Al}});rl.status===0&&ke.ZP.info(rl==null?void 0:rl.message)})})},500),src:tu===1?`${Fl}/images/gxxz.png`:`${Fl}/images/gx.png`,onMouseOut:()=>{nl(!1)},onMouseOver:()=>{nl(1)},style:{width:"40rem",height:"40rem",marginRight:"15rem",marginTop:"5rem"}})),((Je=y==null?void 0:y.detail)==null?void 0:Je.can_managed)&&ao.createElement("div",{className:Wu.hoverone},ao.createElement("div",{onClick:()=>P0(void 0,null,function*(){var Wo;let Bs=yield(0,ee.ZP)("/api/knowledge/v2/backup.json",{method:"POST",body:{subject_id:(Wo=y==null?void 0:y.detail)==null?void 0:Wo.id,parentNodeUuid:re}});(Bs==null?void 0:Bs.status)===0&&ke.ZP.info("\u56FE\u8C31\u4FDD\u5B58\u6210\u529F")})},ao.createElement("img",{src:tu===2?`${Fl}/images/bcbbxz.png`:`${Fl}/images/bcbb.png`,onMouseOut:()=>{nl(!1)},onMouseOver:()=>{nl(2)}}),ao.createElement("div",{className:Wu.name},"\u4FDD\u5B58\u7248\u672C")),ao.createElement("div",{onClick:()=>P0(void 0,null,function*(){var Wo;So.page=1,So.limit=10;let Bs=yield(0,ee.ZP)("/api/knowledge/v2/knowledge_histories.json",{mehtod:"get",params:vm({subject_id:(Wo=y==null?void 0:y.detail)==null?void 0:Wo.id,nodeUuid:re},So)});rs(So),(Bs==null?void 0:Bs.status)===0&&(ds(!0),fs(Bs))})},ao.createElement("img",{src:tu===3?`${Fl}/images/qhbbxz.png`:`${Fl}/images/qhbb.png`,onMouseOut:()=>{nl(!1)},onMouseOver:()=>{nl(3)},className:Wu.img}),ao.createElement("div",{className:Wu.name},"\u5207\u6362\u7248\u672C"))),ao.createElement("div",{className:Wu.hoverone},ao.createElement("div",{onClick:()=>{di=!1,Ha(!1),gn(!1),Sc()}},ao.createElement("img",{src:tu===4?`${Fl}/images/gxtxz.png`:`${Fl}/images/gxt.png`,onMouseOut:()=>{nl(!1)},onMouseOver:()=>{nl(4)}}),ao.createElement("div",{className:Wu.name},"\u5173\u7CFB\u56FE")),ao.createElement("div",{onClick:()=>{di=!0,Ha(!0)}},ao.createElement("img",{src:tu===5?`${Fl}/images/zssxz.png`:`${Fl}/images/zss.png`,onMouseOut:()=>{nl(!1)},onMouseOver:()=>{nl(5)},className:Wu.img}),ao.createElement("div",{className:Wu.name},"\u77E5\u8BC6\u6811"))),ao.createElement(mn.Z,{title:"\u5168\u5C4F"},ao.createElement("img",{className:"current",onClick:()=>{var Wo,Bs,Al,rl;(0,WC.vp)()?(vr(!1),(0,WC.BU)(),!di&&sn?(Wo=Ct==null?void 0:Ct.current)==null||Wo.fitCenter():(Bs=bt==null?void 0:bt.current)==null||Bs.fitView()):(vr(!0),(0,WC.Dj)(mr.current),!di&&sn?(Al=Ct==null?void 0:Ct.current)==null||Al.fitCenter():(rl=bt==null?void 0:bt.current)==null||rl.fitView())},src:tu===6?`${Fl}/images/qpxz.png`:`${Fl}/images/qp.png`,onMouseOut:()=>{nl(!1)},onMouseOver:()=>{nl(6)},style:{width:"40rem",height:"40rem",marginRight:"15rem",marginTop:"5rem"}})),((qe=y==null?void 0:y.detail)==null?void 0:qe.can_managed)&&ao.createElement("div",{className:Wu.hoverone,style:{marginRight:"0rem"}},ao.createElement("div",{onClick:()=>{Hi(!0)}},ao.createElement("img",{src:tu===10?`${Fl}/images/drxz.png`:`${Fl}/images/dr.png`,onMouseOut:()=>{nl(!1)},onMouseOver:()=>{nl(10)}}),ao.createElement("div",{className:Wu.name},"\u5BFC\u5165")),ao.createElement("div",{onClick:()=>{lu(!0)}},ao.createElement("img",{src:tu===11?`${Fl}/images/dcxz.png`:`${Fl}/images/dc.png`,onMouseOut:()=>{nl(!1)},onMouseOver:()=>{nl(11)},className:Wu.img}),ao.createElement("div",{className:Wu.name},"\u5BFC\u51FA"))))),sn&&!di&&ao.createElement("div",{style:{width:"100%",height:"100vh",opacity:0},ref:Cl}),ao.createElement("div",{id:"myDiagramDiv",style:{height:"100vh",width:"100%",visibility:di?"visible":"hidden"}},di?ao.createElement(rZ,{ref:bt,setzoomsize:Zo,setshowdetail:Ca,setitems:ca,nodeUuid:re,subject_id:(ot=y==null?void 0:y.detail)==null?void 0:ot.id}):""),ao.createElement(Er,{tpacti:pe,initdata:se,uuid:re,Tabsdatas:ae,setshow:gn,getData:Sc,containerRef:mr,showdetail:pr,setshowdetail:Ca,items:Ir}),ao.createElement(Pe.default,{title:"\u6587\u4EF6\u5BFC\u5165",open:Ii,centered:!0,getContainer:()=>mr.current,okButtonProps:{loading:ho},onCancel:()=>{Hi(!1),As([])},onOk:()=>P0(void 0,null,function*(){var Wo,Bs,Al,rl;const Ds=new FormData;if(zs.length>0)Ds.append("file",zs[0]);else{ke.ZP.warning("\u8BF7\u9009\u62E9\u6587\u4EF6");return}Mo(!0),Ds.append("subject_id",((Wo=y.detail)==null?void 0:Wo.id)+""),Ds.append("parentNodeUuid",re);let Cc=yield(0,ee.ZP)("/api/knowledge/v2/import.json",{method:"post",body:Ds},!0);Mo(!1),(Cc==null?void 0:Cc.status)===0&&((Bs=Cc==null?void 0:Cc.data)!=null&&Bs.importErrorFilePath?Pe.default.confirm({icon:null,title:"\u5BFC\u5165\u5931\u8D25",centered:!0,content:ao.createElement("span",null,"\u68C0\u6D4B\u5230\u672C\u6B21\u5BFC\u5165\u5B58\u5728\u4E0D\u7B26\u5408\u8981\u6C42\u7684\u6570\u636E\uFF0C\u70B9\u51FB\u4E0B\u8F7D",ao.createElement("a",{href:`${ar.Z.API_SERVER}${(Al=Cc==null?void 0:Cc.data)==null?void 0:Al.importErrorFilePath}`,download:"\u5931\u8D25\u6570\u636E.xlsx"},"\u5BFC\u5165\u5931\u8D25\u7684\u6570\u636E"),"\u67E5\u770B")}):(Sc(),gn(!1),(rl=Cc==null?void 0:Cc.data)!=null&&rl.has_route?ke.ZP.info("\u77E5\u8BC6\u56FE\u8C31\u6570\u636E\u5BFC\u5165\u6210\u529F\uFF0C\u4E3A\u4FDD\u8BC1\u5B66\u4E60\u8DEF\u5F84\u7684\u8282\u70B9\u4E0E\u77E5\u8BC6\u56FE\u8C31\u8282\u70B9\u7ED1\u5B9A\uFF0C\u8BF7\u66F4\u65B0\u5B66\u4E60\u8DEF\u5F84"):ke.ZP.info("\u5BFC\u5165\u6210\u529F"),As([]),ca({}),Hi(!1)))})},(St==null?void 0:St.length)>0&&ao.createElement("div",{style:{marginBottom:30,color:"#333333"}},"\u68C0\u6D4B\u5F53\u524D\u5DF2\u5B58\u5728\u6570\u636E\uFF0C\u5BFC\u5165\u540E\u539F\u6570\u636E\u5C06\u4F1A\u88AB\u8986\u76D6\uFF0C\u6309\u7167\u6700\u65B0\u5BFC\u5165\u7684\u4E3A\u4E3B\uFF0C\u5982\u9700\u7EE7\u7EED\u5BFC\u5165\uFF0C\u8BF7\u6309\u7167\u4E0B\u65B9\u6B65\u9AA4\u8FDB\u884C"),ao.createElement("p",{style:{color:"#5F6368"}},"\u6B65\u9AA41\uFF1A",ao.createElement("span",{style:{color:"#000000"}},"\u4E0B\u8F7D"),ao.createElement("a",{href:`${ar.Z.API_SERVER}/api/knowledge/v2/down_template.json`,download:"\u6A21\u7248.xlsx"},"\u77E5\u8BC6\u56FE\u8C31\u5BFC\u5165\u6A21\u7248")),ao.createElement(ua.Z,null,ao.createElement(wt.Z,{style:{color:"#5F6368"}},"\u6B65\u9AA42\uFF1A",ao.createElement("span",{style:{color:"#000000"}},"\u4E0A\u4F20\u586B\u5199\u597D\u7684\u300A\u77E5\u8BC6\u56FE\u8C31\u5BFC\u5165\u6A21\u7248\u300B"))),ao.createElement(ua.Z,{style:{marginTop:10,marginLeft:50}},ao.createElement(Ns.default,vm({},lc),ao.createElement("span",{style:{padding:"0px 16px",color:"#1b8565",cursor:"pointer",height:32,alignItems:"center",display:"inline-flex",borderRadius:2,border:"1px solid #1b8565",background:"#1b8565 linear-gradient(180deg, #FFFFFF 0%, #F6F7F9 100%)",boxShadow:"0px 2px 4px 0px #E0DFE1, inset 0px 1px 3px 0px rgba(255,255,255,0.5)"}},ao.createElement("i",{style:{fontSize:12,marginRight:6},className:"iconfont icon-tianjiashitixiaojiahao"})," \u9009\u62E9\u6587\u4EF6")))),ao.createElement(yn,null,ao.createElement(ao.Fragment,null,ao.createElement(Pe.default,{title:"\u7248\u672C\u8BB0\u5F55",centered:!0,width:1200,open:Bo,footer:!1,getContainer:()=>mr.current,onCancel:()=>{ds(!1)}},ao.createElement(du.default,{dataSource:$o==null?void 0:$o.data,pagination:!1,columns:[{title:"\u7248\u672C\u4FDD\u5B58\u65F6\u95F4",dataIndex:"created_at",ellipsis:!0,key:"created_at",render:(Wo,Bs)=>ao.createElement("div",null,ao.createElement("span",null,Wo),(Bs==null?void 0:Bs.is_now_version)&&ao.createElement("span",{style:{background:"#2BAC8E",padding:"4rem",fontSize:"12rem",marginLeft:"5rem",color:"#fff"}},"\u5F53\u524D\u4F7F\u7528\u7248\u672C"))},{title:"\u4FDD\u5B58\u4EBA",dataIndex:"username",ellipsis:!0,key:"username"},{title:"\u64CD\u4F5C",dataIndex:"name",ellipsis:!0,key:"name",render:(Wo,Bs)=>ao.createElement("div",null,ao.createElement("span",{style:{color:"#1B8565",marginRight:"30rem",cursor:"pointer"},onClick:()=>P0(void 0,null,function*(){var Al,rl;let Ds=yield(0,ee.ZP)(`${Bs==null?void 0:Bs.url}`,{method:"get"});(Ds==null?void 0:Ds.status)===0&&((rl=(Al=Ds==null?void 0:Ds.data)==null?void 0:Al.nodes)==null?void 0:rl.length)>0&&Ti(Ds==null?void 0:Ds.data)})},"\u67E5\u770B"),ao.createElement("span",{onClick:()=>P0(void 0,null,function*(){var Al;if(Bs!=null&&Bs.is_now_version)return;let rl=yield(0,ee.ZP)("/api/knowledge/v2/restore.json",{method:"post",body:{subject_id:(Al=y==null?void 0:y.detail)==null?void 0:Al.id,backupFilePath:Bs==null?void 0:Bs.backupFilePath}});(rl==null?void 0:rl.status)===0&&(Sc(),ds(!1),gn(!1),ke.ZP.info("\u5207\u6362\u6210\u529F"))}),style:{color:Bs!=null&&Bs.is_now_version?"#999999":"#1B8565",cursor:"pointer"}},"\u5207\u6362\u81F3\u5F53\u524D\u7248\u672C"))}]}),ao.createElement(Rn.Z,{hideOnSinglePage:!0,style:{marginTop:"20rem"},pageSize:So.limit,total:$o==null?void 0:$o.total_count,current:So.page,onChange:(Wo,Bs)=>P0(void 0,null,function*(){var Al;So.page=Wo,So.limit=Bs,rs(So);let rl=yield(0,ee.ZP)("/api/knowledge/v2/knowledge_histories.json",{mehtod:"get",params:vm({subject_id:(Al=y==null?void 0:y.detail)==null?void 0:Al.id,nodeUuid:re},So)});(rl==null?void 0:rl.status)===0&&(ds(!0),fs(rl))})})),ao.createElement(Pe.default,{open:((pt=Fi==null?void 0:Fi.nodes)==null?void 0:pt.length)>0,title:"\u5386\u53F2\u56FE\u8C31",width:"1200rem",footer:null,getContainer:()=>mr.current,destroyOnClose:!0,onCancel:()=>{Ti({})}},ao.createElement(dZ,{datas:Fi})),ao.createElement(Pe.default,{open:id,title:"\u5BFC\u51FA",width:800,centered:!0,onCancel:()=>{lu(!1)},confirmLoading:Ch,onOk:()=>{au.submit()}},ao.createElement(me.default,{form:au,onFinish:Wo=>P0(void 0,null,function*(){var Bs,Al,rl,Ds,Cc,Yf,Ph;if(Df(!0),Wo.export=="pdf"){const ff=yield(0,Bt.Hi)(Ct.current,{type:"image/webp",encoderOptions:1}),hf=document.createElement("img");hf.src=ff,yield hZ()().set({filename:`${(Bs=y==null?void 0:y.detail)==null?void 0:Bs.name}_${(Al=ae==null?void 0:ae.find(Hl=>(Hl==null?void 0:Hl.uuid)===re))==null?void 0:Al.name}_${tn()().format("YYYYMMDD_HHmmss")}.pdf`,image:{type:"png",quality:.95},html2canvas:{scale:5,letterRendering:!0,useCORS:!0,allowTaint:!1}}).from(hf).toPdf().save(),Df(!1);return}if(Wo.export=="html"){let ff=function(Tc){return new Promise((Fg,gv)=>{const od=new FileReader;od.onload=()=>{var D0;const M0=(D0=od.result)==null?void 0:D0.split(",")[1];Fg(M0)},od.onerror=gv,od.readAsDataURL(Tc)})};const hf=yield(0,Bt.Hi)(Ct.current,{type:"image/webp",encoderOptions:1},!1),Hl=yield ff(hf),$l=` + `)},style:HK(te)})||this,x.timestamp=-1,x.prevCustomContentKey=x.attributes.contentKey,x.initShape(),x.render(x.attributes,x),x}return Object.defineProperty(a.prototype,"HTMLTooltipElement",{get:function(){return this.element},enumerable:!1,configurable:!0}),a.prototype.getContainer=function(){return this.element},Object.defineProperty(a.prototype,"elementSize",{get:function(){var y=this.element.offsetWidth,x=this.element.offsetHeight;return{width:y,height:x}},enumerable:!1,configurable:!0}),Object.defineProperty(a.prototype,"HTMLTooltipItemsElements",{get:function(){var y=this.attributes,x=y.data,b=y.template;return x.map(function(z,te){var re=z.name,ae=re===void 0?"":re,se=z.color,fe=se===void 0?"black":se,pe=z.index,be=(0,on._T)(z,["name","color","index"]),Oe=(0,on.pi)({name:ae,color:fe,index:pe!=null?pe:te},be);return OC(zK(b.item,Oe))})},enumerable:!1,configurable:!0}),a.prototype.render=function(y,x){this.renderHTMLTooltipElement(),this.updatePosition()},a.prototype.destroy=function(){var y;(y=this.element)===null||y===void 0||y.remove(),E.prototype.destroy.call(this)},a.prototype.show=function(y,x){var b=this;if(y!==void 0&&x!==void 0){var z=this.element.style.visibility==="hidden",te=function(){b.attributes.x=y!=null?y:b.attributes.x,b.attributes.y=x!=null?x:b.attributes.y,b.updatePosition()};z?this.closeTransition(te):te()}this.element.style.visibility="visible"},a.prototype.hide=function(y,x){y===void 0&&(y=0),x===void 0&&(x=0);var b=this.attributes.enterable;b&&this.isCursorEntered(y,x)||(this.element.style.visibility="hidden")},a.prototype.initShape=function(){var y=this.attributes.template;this.element=OC(y.container),this.id&&this.element.setAttribute("id",this.id)},a.prototype.renderCustomContent=function(){if(!(this.prevCustomContentKey!==void 0&&this.prevCustomContentKey===this.attributes.contentKey)){this.prevCustomContentKey=this.attributes.contentKey;var y=this.attributes.content;y&&(typeof y=="string"?this.element.innerHTML=y:XM(this.element,y))}},a.prototype.renderHTMLTooltipElement=function(){var y,x,b=this.attributes,z=b.template,te=b.title,re=b.enterable,ae=b.style,se=b.content,fe=TC(z.prefixCls),pe=this.element;if(this.element.style.pointerEvents=re?"auto":"none",se)this.renderCustomContent();else{te?(pe.innerHTML=z.title,pe.getElementsByClassName(fe.TITLE)[0].innerHTML=te):(x=(y=pe.getElementsByClassName(fe.TITLE))===null||y===void 0?void 0:y[0])===null||x===void 0||x.remove();var be=this.HTMLTooltipItemsElements,Oe=document.createElement("ul");Oe.className=fe.LIST,XM(Oe,be);var _e=this.element.querySelector(".".concat(fe.LIST));_e?_e.replaceWith(Oe):pe.appendChild(Oe)}wH(pe,ae)},a.prototype.getRelativeOffsetFromCursor=function(y){var x=this.attributes,b=x.position,z=x.offset,te=y||b,re=te.split("-"),ae={left:[-1,0],right:[1,0],top:[0,-1],bottom:[0,1]},se=this.elementSize,fe=se.width,pe=se.height,be=[-fe/2,-pe/2];return re.forEach(function(Oe){var _e=(0,on.CR)(be,2),je=_e[0],ze=_e[1],Je=(0,on.CR)(ae[Oe],2),qe=Je[0],ot=Je[1];be=[je+(fe/2+z[0])*qe,ze+(pe/2+z[1])*ot]}),be},a.prototype.setOffsetPosition=function(y){var x=(0,on.CR)(y,2),b=x[0],z=x[1],te=this.attributes,re=te.x,ae=re===void 0?0:re,se=te.y,fe=se===void 0?0:se,pe=te.container,be=pe.x,Oe=pe.y;this.element.style.left="".concat(+ae+be+b,"px"),this.element.style.top="".concat(+fe+Oe+z,"px")},a.prototype.updatePosition=function(){var y=this.attributes.showDelay,x=y===void 0?60:y,b=Date.now();this.timestamp>0&&b-this.timestampqe+pt,top:zeot+Et},Ct=[];fe.split("-").forEach(function(Zt){bt[Zt]?Ct.push(Je[Zt]):Ct.push(Zt)});var St=Ct.join("-");return this.getRelativeOffsetFromCursor(St)},a.prototype.isCursorEntered=function(y,x){if(this.element){var b=this.element.getBoundingClientRect(),z=b.x,te=b.y,re=b.width,ae=b.height;return new Vf(z,te,re,ae).isPointIn(y,x)}return!1},a.prototype.closeTransition=function(y){var x=this,b=this.element.style.transition;this.element.style.transition="none",y(),setTimeout(function(){x.element.style.transition=b},10)},a.tag="tooltip",a}(Hc),qM=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(te){te(z)})}return new(y||(y=Promise))(function(z,te){function re(fe){try{se(x.next(fe))}catch(pe){te(pe)}}function ae(fe){try{se(x.throw(fe))}catch(pe){te(pe)}}function se(fe){fe.done?z(fe.value):b(fe.value).then(re,ae)}se((x=x.apply(E,a||[])).next())})};class rx extends Pf{constructor(a,y){super(a,Object.assign({},rx.defaultOptions,y)),this.currentTarget=null,this.tooltipElement=null,this.container=null,this.isEnable=(x,b)=>{const{enable:z}=this.options;return typeof z=="function"?z(x,b):z},this.onClick=x=>{const{target:{id:b}}=x;this.currentTarget===b?this.hide(x):this.show(x)},this.onPointerMove=x=>{const{target:b}=x;!this.currentTarget||b.id===this.currentTarget||this.show(x)},this.onPointerLeave=x=>{this.hide(x)},this.onCanvasMove=x=>{this.hide(x)},this.onPointerEnter=x=>{this.show(x)},this.showById=x=>qM(this,void 0,void 0,function*(){const b={target:{id:x}};yield this.show(b)}),this.getElementData=(x,b)=>{const{model:z}=this.context;switch(b){case"node":return z.getNodeData([x]);case"edge":return z.getEdgeData([x]);case"combo":return z.getComboData([x]);default:return[]}},this.show=x=>qM(this,void 0,void 0,function*(){var b,z;const{client:te,target:{id:re}}=x;if(HE(x.target))return;const ae=this.context.graph.getElementType(re),{getContent:se,title:fe}=this.options,pe=this.getElementData(re,ae);if(!this.tooltipElement||!this.isEnable(x,pe))return;let be={};if(se){if(be.content=yield se(x,pe),!be.content)return}else{const je=this.context.graph.getElementRenderStyle(re),ze=ae==="node"?je.fill:je.stroke;be={title:fe||ae,data:pe.map(Je=>({name:"ID",value:Je.id||`${Je.source} -> ${Je.target}`,color:ze}))}}this.currentTarget=re;let Oe,_e;if(te)Oe=te.x,_e=te.y;else{const je=zh(pe,"0.style",{x:0,y:0});Oe=je.x,_e=je.y}(z=(b=this.options).onOpenChange)===null||z===void 0||z.call(b,!0),this.tooltipElement.update(Object.assign(Object.assign(Object.assign({},this.tooltipStyleProps),{x:Oe,y:_e,style:{".tooltip":{visibility:"visible"}}}),be))}),this.hide=x=>{var b,z,te,re,ae;if(!x){(z=(b=this.options).onOpenChange)===null||z===void 0||z.call(b,!1),(te=this.tooltipElement)===null||te===void 0||te.hide(),this.currentTarget=null;return}if(!this.tooltipElement||!this.currentTarget)return;const{client:{x:se,y:fe}}=x;(ae=(re=this.options).onOpenChange)===null||ae===void 0||ae.call(re,!1),this.tooltipElement.hide(se,fe),this.currentTarget=null},this.initTooltip=()=>{var x;const b=new WK({className:"tooltip",style:this.tooltipStyleProps});return(x=this.container)===null||x===void 0||x.appendChild(b.HTMLTooltipElement),b},this.render(),this.bindEvents()}getEvents(){return this.options.trigger==="click"?{"node:click":this.onClick,"edge:click":this.onClick,"combo:click":this.onClick,"canvas:click":this.onPointerLeave,contextmenu:this.onPointerLeave,drag:this.onPointerLeave}:{"node:pointerenter":this.onPointerEnter,"node:pointermove":this.onPointerMove,"canvas:pointermove":this.onCanvasMove,"edge:pointerenter":this.onPointerEnter,"edge:pointermove":this.onPointerMove,"combo:pointerenter":this.onPointerEnter,"combo:pointermove":this.onPointerMove,contextmenu:this.onPointerLeave,"node:drag":this.onPointerLeave}}update(a){var y;this.unbindEvents(),super.update(a),this.tooltipElement&&((y=this.container)===null||y===void 0||y.removeChild(this.tooltipElement.HTMLTooltipElement)),this.tooltipElement=this.initTooltip(),this.bindEvents()}render(){const{canvas:a}=this.context,y=a.getContainer();y&&(this.container=y,this.tooltipElement=this.initTooltip())}unbindEvents(){const{graph:a}=this.context,y=this.getEvents();Object.keys(y).forEach(x=>{a.off(x,y[x])})}bindEvents(){const{graph:a}=this.context,y=this.getEvents();Object.keys(y).forEach(x=>{a.on(x,y[x])})}get tooltipStyleProps(){const{canvas:a}=this.context,{center:y}=a.getBounds(),x=a.getContainer(),{top:b,left:z}=x.getBoundingClientRect(),{style:te,position:re,enterable:ae,container:se={x:-z,y:-b},title:fe,offset:pe}=this.options,[be,Oe]=y,[_e,je]=a.getSize();return{x:be,y:Oe,container:se,title:fe,bounding:{x:0,y:0,width:_e,height:je},position:re,enterable:ae,offset:pe,style:te}}destroy(){var a;this.unbindEvents(),this.tooltipElement&&((a=this.container)===null||a===void 0||a.removeChild(this.tooltipElement.HTMLTooltipElement)),super.destroy()}}rx.defaultOptions={trigger:"hover",position:"top-right",enterable:!1,enable:!0,offset:[10,10],style:{".tooltip":{visibility:"hidden"}}};var $M=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(te){te(z)})}return new(y||(y=Promise))(function(z,te){function re(fe){try{se(x.next(fe))}catch(pe){te(pe)}}function ae(fe){try{se(x.throw(fe))}catch(pe){te(pe)}}function se(fe){fe.done?z(fe.value):b(fe.value).then(re,ae)}se((x=x.apply(E,a||[])).next())})};let hp;function eL(E,a){return hp||(hp=document.createElement("canvas")),hp.width=E,hp.height=a,hp.getContext("2d").clearRect(0,0,E,a),hp}function GK(E,a,y,x){return $M(this,void 0,void 0,function*(){const b=eL(E,a),z=b.getContext("2d"),{rotate:te,opacity:re,textFill:ae,textFontSize:se,textFontFamily:fe,textFontVariant:pe,textFontWeight:be,textAlign:Oe,textBaseline:_e}=x;return z.textAlign=Oe,z.textBaseline=_e,z.translate(E/2,a/2),z.font=`${se}px ${fe} ${pe} ${be}`,te&&z.rotate(te),re&&(z.globalAlpha=re),ae&&(z.fillStyle=ae,z.fillText(`${y}`,0,0)),b.toDataURL()})}function KK(E,a,y,x){return $M(this,void 0,void 0,function*(){const b=eL(E,a),z=b.getContext("2d"),{rotate:te,opacity:re}=x;te&&z.rotate(te),re&&(z.globalAlpha=re);const ae=new Image;return ae.crossOrigin="anonymous",ae.src=y,new Promise(se=>{ae.onload=function(){const fe=E>ae.width?(E-ae.width)/2:0,pe=a>ae.height?(a-ae.height)/2:0;z.drawImage(ae,0,0,ae.width,ae.height,fe,pe,E-fe*2,a-pe*2),se(b.toDataURL())}})})}var VK=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(te){te(z)})}return new(y||(y=Promise))(function(z,te){function re(fe){try{se(x.next(fe))}catch(pe){te(pe)}}function ae(fe){try{se(x.throw(fe))}catch(pe){te(pe)}}function se(fe){fe.done?z(fe.value):b(fe.value).then(re,ae)}se((x=x.apply(E,a||[])).next())})},ZK=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);bsuper.update}});return VK(this,void 0,void 0,function*(){y.update.call(this,a);const x=this.options,{width:b,height:z,text:te,imageURL:re}=x,ae=ZK(x,["width","height","text","imageURL"]);Object.keys(ae).forEach(fe=>{fe.startsWith("background")&&(this.$element.style[fe]=a[fe])});const se=re?yield KK(b,z,re,ae):yield GK(b,z,te,ae);this.$element.style.backgroundImage=`url(${se})`})}destroy(){super.destroy(),this.$element.remove()}}ax.defaultOptions={width:200,height:100,opacity:.2,rotate:Math.PI/12,text:"",textFill:"#000",textFontSize:16,textAlign:"center",textBaseline:"middle",backgroundRepeat:"repeat"};const YK=["#7E92B5","#F4664A","#FFBE3A"],XK={type:"group",color:["#1783FF","#00C9C9","#F08F56","#D580FF","#7863FF","#DB9D0D","#60C42D","#FF80CA","#2491B3","#17C76F"]},JK={type:"group",color:["#99ADD1","#1783FF","#00C9C9","#F08F56","#D580FF","#7863FF","#DB9D0D","#60C42D","#FF80CA","#2491B3","#17C76F"]};function tL(E){const{bgColor:a,textColor:y,nodeColor:x,nodeColorDisabled:b,nodeStroke:z,nodeHaloStrokeOpacityActive:te=.15,nodeHaloStrokeOpacitySelected:re=.25,nodeOpacityDisabled:ae=.06,nodeIconOpacityInactive:se=.85,nodeOpacityInactive:fe=.25,nodeBadgePalette:pe=YK,nodePaletteOptions:be=XK,edgeColor:Oe,edgeColorDisabled:_e,edgePaletteOptions:je=JK,comboColor:ze,comboColorDisabled:Je,comboStroke:qe,comboStrokeDisabled:ot,edgeColorInactive:pt}=E;return{background:a,node:{palette:be,style:{donutOpacity:1,badgeBackgroundOpacity:1,badgeFill:"#fff",badgeFontSize:8,badgePadding:[0,4],badgePalette:pe,fill:x,fillOpacity:1,halo:!1,iconFill:"#fff",iconOpacity:1,labelBackground:!1,labelBackgroundFill:a,labelBackgroundLineWidth:0,labelBackgroundOpacity:.75,labelFill:y,labelFillOpacity:.85,labelLineHeight:16,labelPadding:[0,2],labelFontSize:12,labelFontWeight:400,labelOpacity:1,labelOffsetY:2,lineWidth:0,portFill:x,portLineWidth:1,portStroke:z,portStrokeOpacity:.65,size:32,stroke:z,strokeOpacity:1,zIndex:2},state:{selected:{halo:!0,haloLineWidth:24,haloStrokeOpacity:re,labelFontSize:12,labelFontWeight:"bold",lineWidth:4,stroke:z},active:{halo:!0,haloLineWidth:12,haloStrokeOpacity:te},highlight:{labelFontWeight:"bold",lineWidth:4,stroke:z,strokeOpacity:.85},inactive:{badgeBackgroundOpacity:fe,donutOpacity:fe,fillOpacity:fe,iconOpacity:se,labelFill:y,labelFillOpacity:fe,strokeOpacity:fe},disabled:{badgeBackgroundOpacity:.25,donutOpacity:ae,fill:b,fillOpacity:ae,iconFill:b,iconOpacity:.25,labelFill:y,labelFillOpacity:.25,strokeOpacity:ae}},animation:{enter:"fade",exit:"fade",show:"fade",hide:"fade",expand:"node-expand",collapse:"node-collapse",update:[{fields:["x","y","fill","stroke"]}],translate:[{fields:["x","y"]}]}},edge:{palette:je,style:{badgeBackgroundFill:Oe,badgeFill:"#fff",badgeFontSize:8,badgeOffsetX:10,fillOpacity:1,halo:!1,haloLineWidth:12,haloStrokeOpacity:1,increasedLineWidthForHitTesting:2,labelBackground:!1,labelBackgroundFill:a,labelBackgroundLineWidth:0,labelBackgroundOpacity:.75,labelBackgroundPadding:[4,4,4,4],labelFill:y,labelFontSize:12,labelFontWeight:400,labelOpacity:1,labelPlacement:"center",labelTextBaseline:"middle",lineWidth:1,stroke:Oe,strokeOpacity:1,zIndex:1},state:{selected:{halo:!0,haloStrokeOpacity:.25,labelFontSize:14,labelFontWeight:"bold",lineWidth:3},active:{halo:!0,haloStrokeOpacity:.15},highlight:{labelFontWeight:"bold",lineWidth:3},inactive:{stroke:pt,fillOpacity:.08,labelOpacity:.25,strokeOpacity:.08,badgeBackgroundOpacity:.25},disabled:{stroke:_e,fillOpacity:.45,strokeOpacity:.45,labelOpacity:.25,badgeBackgroundOpacity:.45}},animation:{enter:"fade",exit:"fade",expand:"path-in",collapse:"path-out",show:"fade",hide:"fade",update:[{fields:["sourceNode","targetNode"]},{fields:["stroke"],shape:"key"}],translate:[{fields:["sourceNode","targetNode"]}]}},combo:{style:{collapsedMarkerFill:a,collapsedMarkerFontSize:12,collapsedMarkerFillOpacity:1,collapsedSize:32,collapsedFillOpacity:1,fill:ze,halo:!1,haloLineWidth:12,haloStroke:qe,haloStrokeOpacity:.25,labelBackground:!1,labelBackgroundFill:a,labelBackgroundLineWidth:0,labelBackgroundOpacity:.75,labelBackgroundPadding:[2,4,2,4],labelFill:y,labelFontSize:12,labelFontWeight:400,labelOpacity:1,lineDash:0,lineWidth:1,fillOpacity:.04,strokeOpacity:1,padding:10,stroke:qe},state:{selected:{halo:!0,labelFontSize:14,labelFontWeight:700,lineWidth:4},active:{halo:!0},highlight:{labelFontWeight:700,lineWidth:4},inactive:{fillOpacity:.65,labelOpacity:.25,strokeOpacity:.65},disabled:{fill:Je,fillOpacity:.25,labelOpacity:.25,stroke:ot,strokeOpacity:.25}},animation:{enter:"fade",exit:"fade",show:"fade",hide:"fade",expand:"combo-expand",collapse:"combo-collapse",update:[{fields:["x","y"]},{fields:["fill","stroke","lineWidth"],shape:"key"}],translate:[{fields:["x","y"]}]}}}}const qK=tL({bgColor:"#000000",comboColor:"#fdfdfd",comboColorDisabled:"#d0e4ff",comboStroke:"#99add1",comboStrokeDisabled:"#969696",edgeColor:"#637088",edgeColorDisabled:"#637088",edgeColorInactive:"#D0E4FF",edgePaletteOptions:{type:"group",color:["#637088","#0F55A6","#008383","#9C5D38","#8B53A6","#4E40A6","#8F6608","#3E801D","#A65383","#175E75","#0F8248"]},nodeColor:"#1783ff",nodeColorDisabled:"#D0E4FF",nodeHaloStrokeOpacityActive:.25,nodeHaloStrokeOpacitySelected:.45,nodeIconOpacityInactive:.45,nodeOpacityDisabled:.25,nodeOpacityInactive:.45,nodeStroke:"#d0e4ff",textColor:"#ffffff"}),$K=tL({bgColor:"#ffffff",comboColor:"#99ADD1",comboColorDisabled:"#f0f0f0",comboStroke:"#99add1",comboStrokeDisabled:"#d9d9d9",edgeColor:"#99add1",edgeColorDisabled:"#d9d9d9",edgeColorInactive:"#1B324F",nodeColor:"#1783ff",nodeColorDisabled:"#1B324F",nodeHaloStrokeOpacityActive:.15,nodeHaloStrokeOpacitySelected:.25,nodeIconOpacityInactive:.85,nodeOpacityDisabled:.06,nodeOpacityInactive:.25,nodeStroke:"#000000",textColor:"#000000"});class fv extends Ob{beforeDraw(a,y){return a}afterLayout(a,y){}}class eV extends fv{beforeDraw(a){const{model:y}=this.context,x=a.add.combos,b=z=>{const te=[];return z.forEach((re,ae)=>{const fe=y.getAncestorsData(ae,"combo").map(pe=>oi(pe)).reverse();te.push([ae,re,fe.length])}),new Map(te.sort(([,,re],[,,ae])=>ae-re).map(([re,ae])=>[re,ae]))};return a.add.combos=b(x),a.update.combos=b(a.update.combos),a}}function bA(E,a,y,x,b){const z=oi(x),te=`${y}s`,re=b?x:E.add[te].get(z)||E.update[te].get(z)||E.remove[te].get(z)||x;Object.entries(E).forEach(([ae,se])=>{a===ae?se[te].set(z,re):se[te].delete(z)})}function ix(E,a){return Object.keys(E).every(y=>E[y]===a[y])}class tV extends fv{beforeDraw(a,y){if(y.stage==="visibility"||!this.context.model.model.hasTreeStructure(Ou))return a;const{model:x}=this.context,{add:b,update:z}=a,te=[...a.update.combos.entries(),...a.add.combos.entries()];for(;te.length;){const[re,ae]=te.pop();if(Qh(ae)){const se=x.getDescendantsData(re),fe=se.map(oi),{internal:pe,external:be}=lS(fe,Oe=>x.getRelatedEdgesData(Oe));se.forEach(Oe=>{const _e=oi(Oe),je=te.findIndex(([Je])=>Je===_e);je!==-1&&te.splice(je,1);const ze=x.getElementType(_e);bA(a,"remove",ze,Oe)}),pe.forEach(Oe=>bA(a,"remove","edge",Oe)),be.forEach(Oe=>{var _e;const je=oi(Oe);((_e=this.context.element)===null||_e===void 0?void 0:_e.getElement(je))?z.edges.set(je,Oe):b.edges.set(je,Oe)})}else{const se=x.getChildrenData(re),fe=se.map(oi),{edges:pe}=lS(fe,be=>x.getRelatedEdgesData(be));[...se,...pe].forEach(be=>{var Oe;const _e=oi(be),je=x.getElementType(_e);((Oe=this.context.element)===null||Oe===void 0?void 0:Oe.getElement(_e))?bA(a,"update",je,be):bA(a,"add",je,be),je==="combo"&&te.push([_e,be])})}}return a}}const nL=(E,a,y,x)=>{const b=`${y}s`,z=oi(x);!E.add[b].has(z)&&!E.update[b].has(z)&&E[a][b].set(oi(x),x)};class nV extends fv{getElement(a){return this.context.element.getElement(a)}handleExpand(a,y){if(nL(y,"add","node",a),Qh(a))return;const x=oi(a);nL(y,"add","node",a),this.context.model.getRelatedEdgesData(x,"out").forEach(te=>{bA(y,"add","edge",te)}),this.context.model.getChildrenData(x).forEach(te=>{this.handleExpand(te,y)})}beforeDraw(a){const{graph:y,model:x}=this.context;if(!x.model.hasTreeStructure(gA))return a;const{add:{nodes:b,edges:z},update:{nodes:te}}=a,re=new Map,ae=new Map;b.forEach((fe,pe)=>{Qh(fe)&&re.set(pe,fe)}),z.forEach(fe=>{if(y.getElementType(fe.source)!=="node")return;const pe=y.getNodeData(fe.source);Qh(pe)&&re.set(fe.source,pe)}),te.forEach((fe,pe)=>{const be=this.getElement(pe);if(!be)return;const Oe=be.attributes.collapsed;Qh(fe)?Oe||re.set(pe,fe):Oe&&ae.set(pe,fe)});const se=new Set;return re.forEach((fe,pe)=>{x.getDescendantsData(pe).forEach(Oe=>{const _e=oi(Oe);if(se.has(_e))return;bA(a,"remove","node",Oe),x.getRelatedEdgesData(_e).forEach(ze=>{bA(a,"remove","edge",ze)}),se.add(_e)})}),ae.forEach((fe,pe)=>{if(x.getAncestorsData(pe,gA).some(Qh)){bA(a,"remove","node",fe);return}this.handleExpand(fe,a)}),a}}const FC=new WeakMap;function nee(E,a,y){FC.has(E)||FC.set(E,{});const x=FC.get(E);if(!x[a])return x[a]=y,!0;const b=x[a];return rL(b,y)?!1:(x[a]=y,!0)}const rL=(E,a,y=2)=>{if(typeof E!="object"||typeof a!="object")return E===a;const x=Object.keys(E),b=Object.keys(a);if(x.length!==b.length)return!1;for(const z of x){const te=E[z],re=a[z];if(y>1&&typeof te=="object"&&typeof re=="object"){if(!rL(te,re,y-1))return!1}else if(te!==re)return!1}return!0};function rV(E,a,y){zw[E][a]&&jh.warn(`The extension ${a} of ${E} has been registered before, and will be overridden.`),Object.assign(zw[E],{[a]:y})}var aL=function(){function E(a){(0,xa.Z)(this,E),this.dragndropPluginOptions=a}return(0,kr.Z)(E,[{key:"apply",value:function(y){var x=this,b=y.renderingService,z=y.renderingContext,te=z.root.ownerDocument,re=te.defaultView,ae=function(fe){var pe=fe.target,be=pe===te,Oe=be&&x.dragndropPluginOptions.isDocumentDraggable?te:pe.closest&&pe.closest("[draggable=true]");if(Oe){var _e=!1,je=fe.timeStamp,ze=[fe.clientX,fe.clientY],Je=null,qe=[fe.clientX,fe.clientY],ot=function(){var Et=(0,z0.Z)((0,Gf.Z)().mark(function bt(Ct){var St,Zt,sn,gn,Dn,or;return(0,Gf.Z)().wrap(function(Dr){for(;;)switch(Dr.prev=Dr.next){case 0:if(_e){Dr.next=8;break}if(St=Ct.timeStamp-je,Zt=ms([Ct.clientX,Ct.clientY],ze),!(St<=x.dragndropPluginOptions.dragstartTimeThreshold||Zt<=x.dragndropPluginOptions.dragstartDistanceThreshold)){Dr.next=5;break}return Dr.abrupt("return");case 5:Ct.type="dragstart",Oe.dispatchEvent(Ct),_e=!0;case 8:if(Ct.type="drag",Ct.dx=Ct.clientX-qe[0],Ct.dy=Ct.clientY-qe[1],Oe.dispatchEvent(Ct),qe=[Ct.clientX,Ct.clientY],be){Dr.next=21;break}return sn=x.dragndropPluginOptions.overlap==="pointer"?[Ct.canvasX,Ct.canvasY]:pe.getBounds().center,Dr.next=17,te.elementsFromPoint(sn[0],sn[1]);case 17:gn=Dr.sent,Dn=gn[gn.indexOf(pe)+1],or=(Dn==null?void 0:Dn.closest("[droppable=true]"))||(x.dragndropPluginOptions.isDocumentDroppable?te:null),Je!==or&&(Je&&(Ct.type="dragleave",Ct.target=Je,Je.dispatchEvent(Ct)),or&&(Ct.type="dragenter",Ct.target=or,or.dispatchEvent(Ct)),Je=or,Je&&(Ct.type="dragover",Ct.target=Je,Je.dispatchEvent(Ct)));case 21:case"end":return Dr.stop()}},bt)}));return function(Ct){return Et.apply(this,arguments)}}();re.addEventListener("pointermove",ot);var pt=function(bt){if(_e){bt.detail={preventClick:!0};var Ct=bt.clone();Je&&(Ct.type="drop",Ct.target=Je,Je.dispatchEvent(Ct)),Ct.type="dragend",Oe.dispatchEvent(Ct),_e=!1}re.removeEventListener("pointermove",ot)};pe.addEventListener("pointerup",pt,{once:!0}),pe.addEventListener("pointerupoutside",pt,{once:!0})}};b.hooks.init.tap(E.tag,function(){re.addEventListener("pointerdown",ae)}),b.hooks.destroy.tap(E.tag,function(){re.removeEventListener("pointerdown",ae)})}}])}();aL.tag="Dragndrop";var aV=function(E){function a(){var y,x=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return(0,xa.Z)(this,a),y=Oa(this,a),y.name="dragndrop",y.options=x,y}return(0,Oi.Z)(a,E),(0,kr.Z)(a,[{key:"init",value:function(){this.addRenderingPlugin(new aL((0,Pa.Z)({overlap:"pointer",isDocumentDraggable:!1,isDocumentDroppable:!1,dragstartDistanceThreshold:0,dragstartTimeThreshold:0},this.options)))}},{key:"destroy",value:function(){this.removeAllRenderingPlugins()}},{key:"setOptions",value:function(x){Object.assign(this.plugins[0].dragndropPluginOptions,x)}}])}(H0),iL=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(te){te(z)})}return new(y||(y=Promise))(function(z,te){function re(fe){try{se(x.next(fe))}catch(pe){te(pe)}}function ae(fe){try{se(x.throw(fe))}catch(pe){te(pe)}}function se(fe){fe.done?z(fe.value):b(fe.value).then(re,ae)}se((x=x.apply(E,a||[])).next())})},oL=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b{const be=new Lw(Object.assign(Object.assign({},re),{supportsMutipleCanvasesInOneContainer:te,renderer:se[pe],background:te?pe==="background"?b:void 0:b}));return[pe,be]}));dL(fe),this.extends={config:this.config,renderer:x,renderers:se,layers:fe}}get ready(){return Promise.all(Object.entries(this.getLayers()).map(([,a])=>a.ready))}resize(a,y){Object.assign(this.extends.config,{width:a,height:y}),Object.values(this.getLayers()).forEach(x=>{const b=x.getCamera(),z=b.getPosition(),te=b.getFocalPoint();x.resize(a,y),b.setPosition(z),b.setFocalPoint(te)})}getBounds(a){return ry(Object.values(this.getLayers()).map(y=>a?y.getRoot().childNodes.find(b=>b.classList.includes(a)):y.getRoot()).filter(y=>(y==null?void 0:y.childNodes.length)>0).map(y=>y.getBounds()))}getContainer(){const a=this.extends.config.container;return typeof a=="string"?document.getElementById(a):a}getSize(){return[this.extends.config.width||0,this.extends.config.height||0]}appendChild(a,y){var x;const b=((x=a.style)===null||x===void 0?void 0:x.$layer)||"main";return this.getLayer(b).appendChild(a,y)}setRenderer(a){if(a===this.extends.renderer)return;const y=cL(a,this.config.enableMultiLayer?lL:sL);this.extends.renderers=y,Object.entries(y).forEach(([x,b])=>this.getLayer(x).setRenderer(b)),dL(this.getLayers())}getCanvasByViewport(a){return Sf(this.getLayer().viewport2Canvas(Bg(a)))}getViewportByCanvas(a){return Sf(this.getLayer().canvas2Viewport(Bg(a)))}getViewportByClient(a){return Sf(this.getLayer().client2Viewport(Bg(a)))}getClientByViewport(a){return Sf(this.getLayer().viewport2Client(Bg(a)))}getClientByCanvas(a){return this.getClientByViewport(this.getViewportByCanvas(a))}getCanvasByClient(a){const y=this.getLayer(),x=y.client2Viewport(Bg(a));return Sf(y.viewport2Canvas(x))}toDataURL(){return iL(this,arguments,void 0,function*(a={}){const y=globalThis.devicePixelRatio||1,{mode:x="viewport"}=a,b=oL(a,["mode"]);let[z,te,re,ae]=[0,0,0,0];if(x==="viewport")[re,ae]=this.getSize();else if(x==="overall"){const Je=this.getBounds(),qe=Z0(Je);[z,te]=Je.min,[re,ae]=qe}const se=OC('
'),fe=new Lw({width:re,height:ae,renderer:new Ay,devicePixelRatio:y,container:se,background:this.extends.config.background});yield fe.ready,fe.appendChild(this.getLayer("background").getRoot().cloneNode(!0)),fe.appendChild(this.getRoot().cloneNode(!0));const pe=this.getLayer("label").getRoot().cloneNode(!0),be=fe.viewport2Canvas({x:0,y:0}),Oe=this.getCanvasByViewport([0,0]);pe.translate([Oe[0]-be.x,Oe[1]-be.y]),pe.scale(1/this.getCamera().getZoom()),fe.appendChild(pe),fe.appendChild(this.getLayer("transient").getRoot().cloneNode(!0));const _e=this.getCamera(),je=fe.getCamera();if(x==="viewport")je.setZoom(_e.getZoom()),je.setPosition(_e.getPosition()),je.setFocalPoint(_e.getFocalPoint());else if(x==="overall"){const[Je,qe,ot]=je.getPosition(),[pt,Et,bt]=je.getFocalPoint();je.setPosition([Je+z,qe+te,ot]),je.setFocalPoint([pt+z,Et+te,bt])}const ze=fe.getContextService();return new Promise(Je=>{fe.addEventListener(AA.RERENDER,()=>iL(this,void 0,void 0,function*(){yield new Promise(ot=>setTimeout(ot,300));const qe=yield ze.toDataURL(b);Je(qe)}))})})}destroy(){Object.values(this.getLayers()).forEach(a=>{a.getCamera().cancelLandmarkAnimation(),a.destroy()})}}function cL(E,a){return Object.fromEntries(a.map(y=>{const x=(E==null?void 0:E(y))||new Ay;return x instanceof Ay&&x.setConfig({enableDirtyRectangleRendering:!1}),y==="main"?x.registerPlugin(new aV({isDocumentDraggable:!0,isDocumentDroppable:!0,dragstartDistanceThreshold:10,dragstartTimeThreshold:100})):x.unregisterPlugin(x.getPlugin("dom-interaction")),[y,x]}))}function dL(E){Object.entries(E).forEach(([a,y])=>{const x=y.getContextService().getDomElement();x!=null&&x.style&&(x.style.gridArea="1 / 1 / 2 / 2",x.style.outline="none",x.tabIndex=1,a!=="main"&&(x.style.pointerEvents="none")),x!=null&&x.parentElement&&(x.parentElement.style.display="grid")})}const Ap=E=>E?parseInt(E):0;function oV(E){const a=getComputedStyle(E),y=E.clientWidth||Ap(a.width),x=E.clientHeight||Ap(a.height),b=Ap(a.paddingLeft)+Ap(a.paddingRight),z=Ap(a.paddingTop)+Ap(a.paddingBottom);return[y-b,x-z]}function fL(E){if(!E)return[0,0];let a=640,y=480;const[x,b]=oV(E);a=x||a,y=b||y;const z=1,te=1;return[Math.max(vo(a)?a:z,z),Math.max(vo(y)?y:te,te)]}class ox{constructor(a){this.type=a}}class Pd extends ox{constructor(a,y){super(a),this.data=y}}class $A extends ox{constructor(a,y,x,b){super(a),this.animationType=y,this.animation=x,this.data=b}}class gp extends ox{constructor(a,y,x){super(a),this.elementType=y,this.data=x}}class sx extends ox{constructor(a,y){super(a),this.data=y}}function Yd(E,a){E.emit(a.type,a)}function sV(E){if(!E)return null;if(E instanceof bP)return{type:"canvas",element:E};let a=E;for(;a;){if(vy(a))return{type:"node",element:a};if(z3(a))return{type:"edge",element:a};if(uS(a))return{type:"combo",element:a};a=a.parentElement}return null}function hL(E){var a;return((a=E==null?void 0:E.style)===null||a===void 0?void 0:a.zIndex)||0}const vp="cachedStyle",lx=E=>`__${E}__`;function lV(E,a){const y=Array.isArray(a)?a:[a];zh(E,vp)||cy(E,vp,{}),y.forEach(x=>{cy(zh(E,vp),lx(x),E.attributes[x])})}function AL(E,a){return zh(E,[vp,lx(a)])}function uV(E,a){return lx(a)in(zh(E,vp)||{})}function ree(E,a,y){set(E,[vp,lx(a)],y)}class cV{constructor(a){this.tasks=[],this.animations=new Set,this.context=a}getTasks(){const a=[...this.tasks];return this.tasks=[],a}add(a,y){this.tasks.push([a,y])}animate(a,y,x){var b,z,te;(b=y==null?void 0:y.before)===null||b===void 0||b.call(y);const re=this.getTasks().map(([se,fe])=>{var pe,be,Oe;const{element:_e,elementType:je,stage:ze}=se,Je=a8(this.context.options,je,ze,a);(pe=fe==null?void 0:fe.before)===null||pe===void 0||pe.call(fe);const qe=Je.length?o8(_e,this.inferStyle(se,x),Je):null;return qe?((be=fe==null?void 0:fe.beforeAnimate)===null||be===void 0||be.call(fe,qe),qe.finished.then(()=>{var ot,pt;(ot=fe==null?void 0:fe.afterAnimate)===null||ot===void 0||ot.call(fe,qe),(pt=fe==null?void 0:fe.after)===null||pt===void 0||pt.call(fe),this.animations.delete(qe)})):(Oe=fe==null?void 0:fe.after)===null||Oe===void 0||Oe.call(fe),qe}).filter(Boolean);re.forEach(se=>this.animations.add(se));const ae=Hw(re);return ae?((z=y==null?void 0:y.beforeAnimate)===null||z===void 0||z.call(y,ae),ae.finished.then(()=>{var se,fe;(se=y==null?void 0:y.afterAnimate)===null||se===void 0||se.call(y,ae),(fe=y==null?void 0:y.after)===null||fe===void 0||fe.call(y),this.release()})):(te=y==null?void 0:y.after)===null||te===void 0||te.call(y),ae}inferStyle(a,y){var x,b;const{element:z,elementType:te,stage:re,originalStyle:ae,updatedStyle:se={}}=a;a.modifiedStyle||(a.modifiedStyle=Object.assign(Object.assign({},ae),se));const{modifiedStyle:fe}=a,pe={},be={};if(re==="enter")Object.assign(pe,{opacity:0});else if(re==="exit")Object.assign(be,{opacity:0});else if(re==="show")Object.assign(pe,{opacity:0}),Object.assign(be,{opacity:(x=AL(z,"opacity"))!==null&&x!==void 0?x:ny("opacity")});else if(re==="hide")Object.assign(pe,{opacity:(b=AL(z,"opacity"))!==null&&b!==void 0?b:ny("opacity")}),Object.assign(be,{opacity:0});else if(re==="collapse"){const{collapse:Oe}=y||{},{target:_e,descendants:je,position:ze}=Oe;if(te==="node"){if(je.includes(z.id)){const[Je,qe,ot]=ze;Object.assign(be,{x:Je,y:qe,z:ot})}}else if(te==="combo"){if(z.id===_e||je.includes(z.id)){const[Je,qe]=ze;Object.assign(be,{x:Je,y:qe,childrenNode:ae.childrenNode})}}else te==="edge"&&Object.assign(be,{sourceNode:fe.sourceNode,targetNode:fe.targetNode})}else if(re==="expand"){const{expand:Oe}=y||{},{target:_e,descendants:je,position:ze}=Oe;if(te==="node"){if(z.id===_e||je.includes(z.id)){const[Je,qe,ot]=ze;Object.assign(pe,{x:Je,y:qe,z:ot})}}else if(te==="combo"){if(z.id===_e||je.includes(z.id)){const[Je,qe,ot]=ze;Object.assign(pe,{x:Je,y:qe,z:ot,childrenNode:fe.childrenNode})}}else te==="edge"&&Object.assign(pe,{sourceNode:fe.sourceNode,targetNode:fe.targetNode})}return[Object.keys(pe).length>0?Object.assign({},ae,pe):ae,Object.keys(be).length>0?Object.assign({},fe,be):fe]}stop(){this.animations.forEach(a=>a.cancel())}clear(){this.tasks=[]}release(){var a,y;const{canvas:x}=this.context,b=(y=(a=x.document)===null||a===void 0?void 0:a.timeline)===null||y===void 0?void 0:y.animationsWithPromises;b&&(x.document.timeline.animationsWithPromises=b.filter(z=>z.playState!=="finished"))}destroy(){this.stop(),this.animations.clear(),this.tasks=[]}}class dV{constructor(a){this.batchCount=0,this.context=a}emit(a){const{graph:y}=this.context;y.emit(a.type,a)}startBatch(a=!0){this.batchCount++,this.batchCount===1&&this.emit(new Pd(No.BATCH_START,{initiate:a}))}endBatch(){this.batchCount--,this.batchCount===0&&this.emit(new Pd(No.BATCH_END))}get isBatching(){return this.batchCount>0}destroy(){this.context=null}}class fV extends Lb{constructor(a){super(a),this.currentTarget=null,this.currentTargetType=null,this.category="behavior",this.forwardCanvasEvents=y=>{const{target:x}=y,b=sV(x);if(!b)return;const{graph:z,canvas:te}=this.context,{type:re,element:ae}=b;if("destroyed"in ae&&(HE(ae)||ae.destroyed))return;const{type:se,detail:fe,button:pe}=y,be=Object.assign(Object.assign({},y),{target:ae,targetType:re,originalTarget:x});se===Zi.POINTER_MOVE&&(this.currentTarget!==ae&&(this.currentTarget&&z.emit(`${this.currentTargetType}:${Zi.POINTER_LEAVE}`,Object.assign(Object.assign({},be),{type:Zi.POINTER_LEAVE,target:this.currentTarget,targetType:this.currentTargetType})),ae&&(Object.assign(be,{type:Zi.POINTER_ENTER}),z.emit(`${re}:${Zi.POINTER_ENTER}`,be))),this.currentTarget=ae,this.currentTargetType=re),se===Zi.CLICK&&pe===2||(z.emit(`${re}:${se}`,be),z.emit(se,be)),se===Zi.CLICK&&fe===2&&(Object.assign(be,{type:Zi.DBLCLICK}),z.emit(`${re}:${Zi.DBLCLICK}`,be),z.emit(Zi.DBLCLICK,be)),se===Zi.POINTER_DOWN&&pe===2&&(Object.assign(be,{type:Zi.CONTEXT_MENU,preventDefault:()=>{var Oe;(Oe=te.getContainer())===null||Oe===void 0||Oe.addEventListener(Zi.CONTEXT_MENU,_e=>_e.preventDefault(),{once:!0})}}),z.emit(`${re}:${Zi.CONTEXT_MENU}`,be),z.emit(Zi.CONTEXT_MENU,be))},this.forwardContainerEvents=y=>{this.context.graph.emit(y.type,y)},this.forwardEvents(),this.setBehaviors(this.context.options.behaviors||[])}setBehaviors(a){this.setExtensions(a)}forwardEvents(){const a=this.context.canvas.getContainer();a&&[Ym.KEY_DOWN,Ym.KEY_UP].forEach(x=>{a.addEventListener(x,this.forwardContainerEvents)});const y=this.context.canvas.document;y&&[Zi.CLICK,Zi.DBLCLICK,Zi.POINTER_OVER,Zi.POINTER_LEAVE,Zi.POINTER_ENTER,Zi.POINTER_MOVE,Zi.POINTER_OUT,Zi.POINTER_DOWN,Zi.POINTER_UP,Zi.CONTEXT_MENU,Zi.DRAG_START,Zi.DRAG,Zi.DRAG_END,Zi.DRAG_ENTER,Zi.DRAG_OVER,Zi.DRAG_LEAVE,Zi.DROP,Zi.WHEEL].forEach(x=>{y.addEventListener(x,this.forwardCanvasEvents)})}destroy(){const a=this.context.canvas.getContainer();a&&[Ym.KEY_DOWN,Ym.KEY_UP].forEach(y=>{a.removeEventListener(y,this.forwardContainerEvents)}),this.context.canvas.document.removeAllEventListeners(),super.destroy()}}function hV(E,a){a===void 0&&(a=new Map);var y=[];if(Array.isArray(E))for(var x=0,b=E.length;x_e.length!==je.length?!1:_e.every((ze,Je)=>ze===je[Je]),Oe=(_e,je)=>{const ze=Object.keys(_e),Je=Object.keys(je);return ze.length!==Je.length?!1:ze.every(qe=>_e[qe]===je[qe])};return!(!Oe(te,pe)||!be(z,fe)||!be(y,re)||!Oe(x,ae)||!Oe(b,se))}var AV=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b0}silence(a){this.isTraceless=!0,a(),this.isTraceless=!1}isCombo(a){return this.comboIds.has(a)||this.latestRemovedComboIds.has(a)}getData(){return{nodes:this.getNodeData(),edges:this.getEdgeData(),combos:this.getComboData()}}getNodeData(a){return this.model.getAllNodes().reduce((y,x)=>{const b=df(x);return this.isCombo(oi(b))||(a===void 0||a.includes(oi(b)))&&y.push(b),y},[])}getEdgeDatum(a){return df(this.model.getEdge(a))}getEdgeData(a){return this.model.getAllEdges().reduce((y,x)=>{const b=df(x);return(a===void 0||a.includes(oi(b)))&&y.push(b),y},[])}getComboData(a){return this.model.getAllNodes().reduce((y,x)=>{const b=df(x);return this.isCombo(oi(b))&&(a===void 0||a.includes(oi(b)))&&y.push(b),y},[])}getRootsData(a=gA){return this.model.getRoots(a).map(df)}getAncestorsData(a,y){const{model:x}=this;return!x.hasNode(a)||!x.hasTreeStructure(y)?[]:x.getAncestors(a,y).map(df)}getDescendantsData(a){const y=this.getElementDataById(a),x=[];return em(y,b=>{b!==y&&x.push(b)},b=>this.getChildrenData(oi(b)),"TB"),x}getParentData(a,y){const{model:x}=this;if(!y){jh.warn("The hierarchy structure key is not specified");return}if(!x.hasNode(a)||!x.hasTreeStructure(y))return;const b=x.getParent(a,y);return b?df(b):void 0}getChildrenData(a){const y=this.getElementType(a)==="node"?gA:Ou,{model:x}=this;return!x.hasNode(a)||!x.hasTreeStructure(y)?[]:x.getChildren(a,y).map(df)}getElementsDataByType(a){return a==="node"?this.getNodeData():a==="edge"?this.getEdgeData():a==="combo"?this.getComboData():[]}getElementDataById(a){return this.getElementType(a)==="edge"?this.getEdgeDatum(a):this.getNodeLikeDatum(a)}getNodeLikeDatum(a){const y=this.model.getNode(a);return df(y)}getNodeLikeData(a){return this.model.getAllNodes().reduce((y,x)=>{const b=df(x);return a?a.includes(oi(b))&&y.push(b):y.push(b),y},[])}getElementDataByState(a,y){return this.getElementsDataByType(a).filter(b=>{var z;return(z=b.states)===null||z===void 0?void 0:z.includes(y)})}getElementState(a){var y;return((y=this.getElementDataById(a))===null||y===void 0?void 0:y.states)||[]}hasNode(a){return this.model.hasNode(a)&&!this.isCombo(a)}hasEdge(a){return this.model.hasEdge(a)}hasCombo(a){return this.model.hasNode(a)&&this.isCombo(a)}getRelatedEdgesData(a,y="both"){return this.model.getRelatedEdges(a,y).map(df)}getNeighborNodesData(a){return this.model.getNeighbors(a).map(df)}setData(a){const{nodes:y=[],edges:x=[],combos:b=[]}=a,{nodes:z,edges:te,combos:re}=this.getData(),ae=J0(z,y,pe=>oi(pe),mp),se=J0(te,x,pe=>oi(pe),mp),fe=J0(re,b,pe=>oi(pe),mp);this.batch(()=>{const pe={nodes:ae.enter,edges:se.enter,combos:fe.enter};this.addData(pe),this.computeZIndex(pe,"add",!0);const be={nodes:ae.update,edges:se.update,combos:fe.update};this.updateData(be),this.computeZIndex(be,"update",!0);const Oe={nodes:ae.exit.map(oi),edges:se.exit.map(oi),combos:fe.exit.map(oi)};this.removeData(Oe)})}addData(a){const{nodes:y,edges:x,combos:b}=a;this.batch(()=>{this.addComboData(b),this.addNodeData(y),this.addEdgeData(x)}),this.computeZIndex(a,"add")}addNodeData(a=[]){a.length&&(this.model.addNodes(a.map(y=>(this.pushChange({value:y,type:ic.NodeAdded}),RC(y)))),this.updateNodeLikeHierarchy(a),this.computeZIndex({nodes:a},"add"))}addEdgeData(a=[]){a.length&&(this.model.addEdges(a.map(y=>(this.pushChange({value:y,type:ic.EdgeAdded}),RC(y)))),this.computeZIndex({edges:a},"add"))}addComboData(a=[]){if(!a.length)return;const{model:y}=this;y.hasTreeStructure(Ou)||y.attachTreeStructure(Ou),y.addNodes(a.map(x=>(this.comboIds.add(oi(x)),this.pushChange({value:x,type:ic.ComboAdded}),RC(x)))),this.updateNodeLikeHierarchy(a),this.computeZIndex({combos:a},"add")}addChildrenData(a,y){const x=this.getNodeLikeDatum(a),b=y.map(oi);this.addNodeData(y),this.updateNodeData([{id:a,children:[...x.children||[],...b]}]),this.addEdgeData(b.map(z=>({source:a,target:z})))}computeZIndex(a,y,x=!1){!x&&this.isBatching()||this.batch(()=>{const{nodes:b=[],edges:z=[],combos:te=[]}=a;te.forEach(re=>{var ae,se,fe;const pe=oi(re);if(y==="add"&&vo((ae=re.style)===null||ae===void 0?void 0:ae.zIndex)||y==="update"&&!("combo"in re))return;const be=this.getParentData(pe,Ou),Oe=be?((fe=(se=be.style)===null||se===void 0?void 0:se.zIndex)!==null&&fe!==void 0?fe:0)+1:0;this.preventUpdateNodeLikeHierarchy(()=>{this.updateComboData([{id:pe,style:{zIndex:Oe}}])})}),b.forEach(re=>{var ae,se,fe;const pe=oi(re);if(y==="add"&&vo((ae=re.style)===null||ae===void 0?void 0:ae.zIndex)||y==="update"&&!("combo"in re)&&!("children"in re))return;let be=0;const Oe=this.getParentData(pe,Ou);if(Oe)be=(((se=Oe.style)===null||se===void 0?void 0:se.zIndex)||0)+1;else{const _e=this.getParentData(pe,gA);_e&&(be=((fe=_e==null?void 0:_e.style)===null||fe===void 0?void 0:fe.zIndex)||0)}this.preventUpdateNodeLikeHierarchy(()=>{this.updateNodeData([{id:pe,style:{zIndex:be}}])})}),z.forEach(re=>{var ae,se,fe,pe,be;if(vo((ae=re.style)===null||ae===void 0?void 0:ae.zIndex))return;let{id:Oe,source:_e,target:je}=re;if(!Oe)Oe=oi(re);else{const qe=this.getEdgeDatum(Oe);_e=qe.source,je=qe.target}if(!_e||!je)return;const ze=((fe=(se=this.getNodeLikeDatum(_e))===null||se===void 0?void 0:se.style)===null||fe===void 0?void 0:fe.zIndex)||0,Je=((be=(pe=this.getNodeLikeDatum(je))===null||pe===void 0?void 0:pe.style)===null||be===void 0?void 0:be.zIndex)||0;this.updateEdgeData([{id:oi(re),style:{zIndex:Math.max(ze,Je)-1}}])})})}getFrontZIndex(a){var y;const x=this.getElementType(a),b=this.getElementDataById(a),z=this.getData();if(Object.assign(z,{[`${x}s`]:z[`${x}s`].filter(te=>oi(te)!==a)}),x==="combo"&&!Qh(b)){const te=new Set(this.getAncestorsData(a,Ou).map(oi));z.nodes=z.nodes.filter(re=>!te.has(oi(re))),z.combos=z.combos.filter(re=>!te.has(oi(re))),z.edges=z.edges.filter(({source:re,target:ae})=>!te.has(re)&&!te.has(ae))}return Math.max(((y=b.style)===null||y===void 0?void 0:y.zIndex)||0,0,...Object.values(z).flat().map(te=>{var re;return(((re=te==null?void 0:te.style)===null||re===void 0?void 0:re.zIndex)||0)+1}))}updateNodeLikeHierarchy(a){if(!this.enableUpdateNodeLikeHierarchy)return;const{model:y}=this;a.forEach(x=>{const b=oi(x),z=fE(x);z!==void 0&&(y.hasTreeStructure(Ou)||y.attachTreeStructure(Ou),z===null&&this.refreshComboData(b),this.setParent(b,fE(x),Ou));const te=x.children||[];if(te.length){y.hasTreeStructure(gA)||y.attachTreeStructure(gA);const re=te.filter(ae=>y.hasNode(ae));re.forEach(ae=>this.setParent(ae,b,gA)),re.length!==te.length&&this.updateNodeData([{id:b,children:re}])}})}preventUpdateNodeLikeHierarchy(a){this.enableUpdateNodeLikeHierarchy=!1,a(),this.enableUpdateNodeLikeHierarchy=!0}updateData(a){const{nodes:y,edges:x,combos:b}=a;this.batch(()=>{this.updateNodeData(y),this.updateComboData(b),this.updateEdgeData(x)}),this.computeZIndex(a,"update")}updateNodeData(a=[]){if(!a.length)return;const{model:y}=this;this.batch(()=>{const x=[];a.forEach(b=>{const z=oi(b),te=df(y.getNode(z));if(mp(te,b))return;const re=hv(te,b);this.pushChange({value:re,original:te,type:ic.NodeUpdated}),y.mergeNodeData(z,re),x.push(re)}),this.updateNodeLikeHierarchy(x)}),this.computeZIndex({nodes:a},"update")}refreshData(){const{nodes:a,edges:y,combos:x}=this.getData();a.forEach(b=>{this.pushChange({value:b,original:b,type:ic.NodeUpdated})}),y.forEach(b=>{this.pushChange({value:b,original:b,type:ic.EdgeUpdated})}),x.forEach(b=>{this.pushChange({value:b,original:b,type:ic.ComboUpdated})})}syncNodeLikeDatum(a){const{model:y}=this,x=oi(a);if(!y.hasNode(x))return;const b=df(y.getNode(x)),z=hv(b,a);y.mergeNodeData(x,z)}syncEdgeDatum(a){const{model:y}=this,x=oi(a);if(!y.hasEdge(x))return;const b=df(y.getEdge(x)),z=hv(b,a);y.mergeEdgeData(x,z)}updateEdgeData(a=[]){if(!a.length)return;const{model:y}=this;this.batch(()=>{a.forEach(x=>{const b=oi(x),z=df(y.getEdge(b));if(mp(z,x))return;x.source&&z.source!==x.source&&y.updateEdgeSource(b,x.source),x.target&&z.target!==x.target&&y.updateEdgeTarget(b,x.target);const te=hv(z,x);this.pushChange({value:te,original:z,type:ic.EdgeUpdated}),y.mergeEdgeData(b,te)})}),this.computeZIndex({edges:a},"update")}updateComboData(a=[]){if(!a.length)return;const{model:y}=this;y.batch(()=>{const x=[];a.forEach(b=>{const z=oi(b),te=df(y.getNode(z));if(mp(te,b))return;const re=hv(te,b);this.pushChange({value:re,original:te,type:ic.ComboUpdated}),y.mergeNodeData(z,re),x.push(re)}),this.updateNodeLikeHierarchy(x)}),this.computeZIndex({combos:a},"update")}setParent(a,y,x,b=!0){if(a===y)return;const z=this.getNodeLikeDatum(a),te=fE(z);if(te!==y&&x===Ou){const re={id:a,combo:y};this.isCombo(a)?this.syncNodeLikeDatum(re):this.syncNodeLikeDatum(re)}this.model.setParent(a,y,x),b&&x===Ou&&hV([te,y]).forEach(re=>{re!==void 0&&this.refreshComboData(re)})}refreshComboData(a){const y=this.getComboData([a])[0],x=this.getAncestorsData(a,Ou);y&&this.pushChange({value:y,original:y,type:ic.ComboUpdated}),x.forEach(b=>{this.pushChange({value:b,original:b,type:ic.ComboUpdated})})}getElementPosition(a){const y=this.getElementDataById(a);return Vd(y)}translateNodeLikeBy(a,y){this.isCombo(a)?this.translateComboBy(a,y):this.translateNodeBy(a,y)}translateNodeLikeTo(a,y){this.isCombo(a)?this.translateComboTo(a,y):this.translateNodeTo(a,y)}translateNodeBy(a,y){const x=this.getElementPosition(a),b=fl(x,[...y,0].slice(0,3));this.translateNodeTo(a,b)}translateNodeTo(a,y){const[x=0,b=0,z=0]=y;this.preventUpdateNodeLikeHierarchy(()=>{this.updateNodeData([{id:a,style:{x,y:b,z}}])})}translateComboBy(a,y){const[x=0,b=0,z=0]=y;if([x,b,z].some(isNaN)||[x,b,z].every(ae=>ae===0))return;const te=this.getComboData([a])[0];if(!te)return;const re=new Set;em(te,ae=>{const se=oi(ae);if(re.has(se))return;re.add(se);const[fe,pe,be]=Vd(ae),Oe=hv(ae,{style:{x:fe+x,y:pe+b,z:be+z}});this.pushChange({value:Oe,original:ae,type:this.isCombo(se)?ic.ComboUpdated:ic.NodeUpdated}),this.model.mergeNodeData(se,Oe)},ae=>this.getChildrenData(oi(ae)),"BT")}translateComboTo(a,y){var x;if(y.some(isNaN))return;const[b=0,z=0,te=0]=y,re=(x=this.getComboData([a]))===null||x===void 0?void 0:x[0];if(!re)return;const[ae,se,fe]=Vd(re),pe=b-ae,be=z-se,Oe=te-fe;em(re,_e=>{const je=oi(_e),[ze,Je,qe]=Vd(_e),ot=hv(_e,{style:{x:ze+pe,y:Je+be,z:qe+Oe}});this.pushChange({value:ot,original:_e,type:this.isCombo(je)?ic.ComboUpdated:ic.NodeUpdated}),this.model.mergeNodeData(je,ot)},_e=>this.getChildrenData(oi(_e)),"BT")}removeData(a){const{nodes:y,edges:x,combos:b}=a;this.batch(()=>{this.removeEdgeData(x),this.removeNodeData(y),this.removeComboData(b),this.latestRemovedComboIds=new Set(b)})}removeNodeData(a=[]){a.length&&this.batch(()=>{a.forEach(y=>{this.removeEdgeData(this.getRelatedEdgesData(y).map(oi)),this.pushChange({value:this.getNodeData([y])[0],type:ic.NodeRemoved}),this.removeNodeLikeHierarchy(y)}),this.model.removeNodes(a)})}removeEdgeData(a=[]){a.length&&(a.forEach(y=>this.pushChange({value:this.getEdgeData([y])[0],type:ic.EdgeRemoved})),this.model.removeEdges(a))}removeComboData(a=[]){a.length&&this.batch(()=>{a.forEach(y=>{this.pushChange({value:this.getComboData([y])[0],type:ic.ComboRemoved}),this.removeNodeLikeHierarchy(y),this.comboIds.delete(y)}),this.model.removeNodes(a)})}removeNodeLikeHierarchy(a){if(this.model.hasTreeStructure(Ou)){const y=fE(this.getNodeLikeDatum(a));this.setParent(a,void 0,Ou,!1),this.model.getChildren(a,Ou).forEach(x=>{const b=df(x),z=oi(b);this.setParent(oi(b),y,Ou,!1);const te=hv(b,{id:oi(b),combo:y});this.pushChange({value:te,original:b,type:this.isCombo(z)?ic.ComboUpdated:ic.NodeUpdated}),this.model.mergeNodeData(oi(b),te)}),Ko(y)||this.refreshComboData(y)}}getElementType(a){if(this.model.hasNode(a))return this.isCombo(a)?"combo":"node";if(this.model.hasEdge(a))return"edge";throw new Error(m0(`Unknown element type of id: ${a}`))}destroy(){const{model:a}=this,y=a.getAllNodes(),x=a.getAllEdges();a.removeEdges(x.map(b=>b.id)),a.removeNodes(y.map(b=>b.id)),this.context={}}}var Qy=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(te){te(z)})}return new(y||(y=Promise))(function(z,te){function re(fe){try{se(x.next(fe))}catch(pe){te(pe)}}function ae(fe){try{se(x.throw(fe))}catch(pe){te(pe)}}function se(fe){fe.done?z(fe.value):b(fe.value).then(re,ae)}se((x=x.apply(E,a||[])).next())})};class mV{constructor(a){this.elementMap={},this.shapeTypeMap={},this.paletteStyle={},this.defaultStyle={},this.stateStyle={},this.visibilityCache=new WeakMap,this.context=a}init(){this.initContainer()}initContainer(){if(!this.container||this.container.destroyed){const{canvas:a}=this.context;this.container=a.appendChild(new Kd({className:"elements"}))}}emit(a,y){y.silence||Yd(this.context.graph,a)}forEachElementData(a){$v.forEach(y=>{const x=this.context.model.getElementsDataByType(y);a(y,x)})}getElementType(a,y){var x;const{options:b,graph:z}=this.context,te=((x=b[a])===null||x===void 0?void 0:x.type)||y.type;return te?typeof te=="string"?te:te.call(z,y):a==="edge"?"line":"circle"}getTheme(a){return VP(this.context.options)[a]||{}}getThemeStyle(a){return this.getTheme(a).style||{}}getThemeStateStyle(a,y){const{state:x={}}=this.getTheme(a);return Object.assign({},...y.map(b=>x[b]||{}))}computePaletteStyle(){const{options:a}=this.context;this.paletteStyle={},this.forEachElementData((y,x)=>{var b,z;const te=Object.assign({},i3((b=this.getTheme(y))===null||b===void 0?void 0:b.palette),i3((z=a[y])===null||z===void 0?void 0:z.palette));te!=null&&te.field&&Object.assign(this.paletteStyle,P_(x,te))})}getPaletteStyle(a,y){const x=this.paletteStyle[y];return x?a==="edge"?{stroke:x}:{fill:x}:{}}computeElementDefaultStyle(a,y){var x;const{options:b}=this.context,z=((x=b[a])===null||x===void 0?void 0:x.style)||{};"transform"in z&&Array.isArray(z.transform)&&(z.transform=[...z.transform]),this.defaultStyle[oi(y.datum)]=a3(z,y)}computeElementsDefaultStyle(a){const{graph:y}=this.context;this.forEachElementData((x,b)=>{const z=b.length;for(let te=0;tethis.getElementStateStyle(a,b,x)))}computeElementsStatesStyle(a){const{graph:y}=this.context;this.forEachElementData((x,b)=>{const z=b.length;for(let te=0;tethis.elementMap[a])}getEdges(){return this.context.model.getEdgeData().map(a=>this.elementMap[oi(a)])}getCombos(){return this.context.model.getComboData().map(({id:a})=>this.elementMap[a])}getElementComputedStyle(a,y){const x=oi(y),b=this.getThemeStyle(a),z=this.getPaletteStyle(a,x),te=y.style||{},re=this.getDefaultStyle(x),ae=this.getThemeStateStyle(a,this.getElementState(x)),se=this.getStateStyle(x),fe=Object.assign({},b,z,te,re,ae,se);if(a==="combo"){const pe=this.context.model.getChildrenData(x),Oe=!!fe.collapsed?[]:pe.map(oi).filter(_e=>this.getElement(_e));Object.assign(fe,{childrenNode:Oe,childrenData:pe})}return fe}getDrawData(a){this.init();const y=this.computeChangesAndDrawData(a);if(!y)return null;const{type:x="draw",stage:b=x}=a;return this.markDestroyElement(y.drawData),this.computeStyle(b),{type:x,stage:b,data:y}}draw(a={animation:!0}){const y=this.getDrawData(a);if(!y)return;const{data:{drawData:{add:x,update:b,remove:z}}}=y;return this.destroyElements(z,a),this.createElements(x,a),this.updateElements(b,a),this.setAnimationTask(a,y)}preLayoutDraw(){return Qy(this,arguments,void 0,function*(a={animation:!0}){var y,x;const b=this.getDrawData(a);if(!b)return;const{data:{drawData:z}}=b;yield(x=(y=this.context.layout)===null||y===void 0?void 0:y.preLayout)===null||x===void 0?void 0:x.call(y,z);const{add:te,update:re,remove:ae}=z;return this.destroyElements(ae,a),this.createElements(te,a),this.updateElements(re,a),this.setAnimationTask(a,b)})}setAnimationTask(a,y){const{animation:x,silence:b}=a,{data:{dataChanges:z,drawData:te},stage:re,type:ae}=y;return this.context.animation.animate(x,b?{}:{before:()=>this.emit(new Pd(No.BEFORE_DRAW,{dataChanges:z,animation:x,stage:re,render:ae==="render"}),a),beforeAnimate:se=>this.emit(new $A(No.BEFORE_ANIMATE,Uh.DRAW,se,te),a),afterAnimate:se=>this.emit(new $A(No.AFTER_ANIMATE,Uh.DRAW,se,te),a),after:()=>this.emit(new Pd(No.AFTER_DRAW,{dataChanges:z,animation:x,stage:re,render:ae==="render",firstRender:this.context.graph.rendered===!1}),a)})}computeChangesAndDrawData(a){const{model:y}=this.context,x=y.getChanges(),b=KS(x);if(b.length===0)return null;const{NodeAdded:z=[],NodeUpdated:te=[],NodeRemoved:re=[],EdgeAdded:ae=[],EdgeUpdated:se=[],EdgeRemoved:fe=[],ComboAdded:pe=[],ComboUpdated:be=[],ComboRemoved:Oe=[]}=q1(b,Je=>Je.type),_e=Je=>new Map(Je.map(qe=>{const ot=qe.value;return[oi(ot),ot]})),je={add:{nodes:_e(z),edges:_e(ae),combos:_e(pe)},update:{nodes:_e(te),edges:_e(se),combos:_e(be)},remove:{nodes:_e(re),edges:_e(fe),combos:_e(Oe)}},ze=this.transformData(je,a);return y.clearChanges(),{dataChanges:x,drawData:ze}}transformData(a,y){const x=this.context.transform.getTransformInstance();return Object.values(x).reduce((b,z)=>z.beforeDraw(b,y),a)}createElement(a,y,x){var b;const z=oi(y);if(this.getElement(z))return;const re=this.getElementType(a,y),ae=this.getElementComputedStyle(a,y),se=v0(a,re);if(!se)return jh.warn(`The element ${re} of ${a} is not registered.`);this.emit(new gp(No.BEFORE_ELEMENT_CREATE,a,y),x);const fe=this.container.appendChild(new se({id:z,context:this.context,style:ae}));this.shapeTypeMap[z]=re,this.elementMap[z]=fe;const{stage:pe="enter"}=x;(b=this.context.animation)===null||b===void 0||b.add({element:fe,elementType:a,stage:pe,originalStyle:Object.assign({},fe.attributes),updatedStyle:ae},{after:()=>{var be;this.emit(new gp(No.AFTER_ELEMENT_CREATE,a,y),x),(be=fe.onCreate)===null||be===void 0||be.call(fe)}})}createElements(a,y){const{nodes:x,edges:b,combos:z}=a;[["node",x],["combo",z],["edge",b]].forEach(([re,ae])=>{ae.forEach(se=>this.createElement(re,se,y))})}getUpdateStageStyle(a,y,x){const{stage:b="update"}=x;if(b==="translate")if(a==="node"||a==="combo"){const{style:{x:z=0,y:te=0,z:re=0}={}}=y;return{x:z,y:te,z:re}}else return{};return this.getElementComputedStyle(a,y)}updateElement(a,y,x){var b;const z=oi(y),{stage:te="update"}=x,re=this.getElement(z);if(!re)return()=>null;this.emit(new gp(No.BEFORE_ELEMENT_UPDATE,a,y),x);const ae=this.getElementType(a,y),se=this.getUpdateStageStyle(a,y,x);this.shapeTypeMap[z]!==ae&&(re.destroy(),delete this.shapeTypeMap[z],delete this.elementMap[z],this.createElement(a,y,{animation:!1,silence:!0}));const fe=te!=="visibility"?te:se.visibility==="hidden"?"hide":"show";fe==="hide"&&delete se.visibility,(b=this.context.animation)===null||b===void 0||b.add({element:re,elementType:a,stage:fe,originalStyle:Object.assign({},re.attributes),updatedStyle:se},{before:()=>{const pe=this.elementMap[z];te!=="collapse"&&hS(pe,se),te==="visibility"&&(uV(pe,"opacity")||lV(pe,"opacity"),this.visibilityCache.set(pe,fe==="show"?"visible":"hidden"),fe==="show"&&Jv(pe,"visible"))},after:()=>{var pe;const be=this.elementMap[z];te==="collapse"&&hS(be,se),fe==="hide"&&Jv(be,this.visibilityCache.get(be)),this.emit(new gp(No.AFTER_ELEMENT_UPDATE,a,y),x),(pe=be.onUpdate)===null||pe===void 0||pe.call(be)}})}updateElements(a,y){const{nodes:x,edges:b,combos:z}=a;[["node",x],["combo",z],["edge",b]].forEach(([re,ae])=>{ae.forEach(se=>this.updateElement(re,se,y))})}markDestroyElement(a){Object.values(a.remove).forEach(y=>{y.forEach(x=>{const b=oi(x),z=this.getElement(b);z&&Uk(z)})})}destroyElement(a,y,x){var b;const{stage:z="exit"}=x,te=oi(y),re=this.elementMap[te];if(!re)return()=>null;this.emit(new gp(No.BEFORE_ELEMENT_DESTROY,a,y),x),(b=this.context.animation)===null||b===void 0||b.add({element:re,elementType:a,stage:z,originalStyle:Object.assign({},re.attributes),updatedStyle:{}},{after:()=>{var ae;this.clearElement(te),re.destroy(),(ae=re.onDestroy)===null||ae===void 0||ae.call(re),this.emit(new gp(No.AFTER_ELEMENT_DESTROY,a,y),x)}})}destroyElements(a,y){const{nodes:x,edges:b,combos:z}=a;[["combo",z],["edge",b],["node",x]].forEach(([re,ae])=>{ae.forEach(se=>this.destroyElement(re,se,y))})}clearElement(a){delete this.paletteStyle[a],delete this.defaultStyle[a],delete this.stateStyle[a],delete this.elementMap[a],delete this.shapeTypeMap[a]}alignLayoutResultToElement(a,y){var x,b;const z=(x=a.nodes)===null||x===void 0?void 0:x.find(te=>oi(te)===y);if(z){const te=Vd(this.context.model.getNodeLikeDatum(y)),re=Vd(z),ae=Pu(te,re);(b=a.nodes)===null||b===void 0||b.forEach(se=>{var fe,pe,be;!((fe=se.style)===null||fe===void 0)&&fe.x&&(se.style.x+=ae[0]),!((pe=se.style)===null||pe===void 0)&&pe.y&&(se.style.y+=ae[1]),!((be=se.style)===null||be===void 0)&&be.z&&(se.style.z+=ae[2]||0)})}}collapseNode(a,y){return Qy(this,void 0,void 0,function*(){var x;const{animation:b,align:z}=y,{model:te,layout:re}=this.context,ae=this.computeChangesAndDrawData({stage:"collapse",animation:b});if(!ae)return;this.markDestroyElement(ae.drawData);const se=yield re.simulate();z&&this.alignLayoutResultToElement(se,a),te.updateData(se);const fe=this.computeChangesAndDrawData({stage:"collapse",animation:b});if(!fe)return;const{drawData:pe}=fe,{add:be,remove:Oe,update:_e}=pe;this.markDestroyElement(pe);const je={animation:b,stage:"collapse",data:pe};this.destroyElements(Oe,je),this.createElements(be,je),this.updateElements(_e,je),yield(x=this.context.animation.animate(b,{beforeAnimate:ze=>this.emit(new $A(No.BEFORE_ANIMATE,Uh.COLLAPSE,ze,pe),je),afterAnimate:ze=>this.emit(new $A(No.AFTER_ANIMATE,Uh.COLLAPSE,ze,pe),je)},{collapse:{target:a,descendants:Array.from(Oe.nodes).map(([,ze])=>oi(ze)),position:Vd(_e.nodes.get(a))}}))===null||x===void 0?void 0:x.finished})}expandNode(a,y){return Qy(this,void 0,void 0,function*(){var x;const{model:b,layout:z}=this.context,{animation:te,align:re}=y,ae=Vd(b.getNodeData([a])[0]),se=this.computeChangesAndDrawData({stage:"expand",animation:te});if(!se)return;const{drawData:{add:fe}}=se;this.createElements(fe,{animation:!1,stage:"expand",target:a}),this.context.animation.clear();const pe=yield z.simulate();re&&this.alignLayoutResultToElement(pe,a),b.updateData(pe),this.computeStyle("expand");const be=this.computeChangesAndDrawData({stage:"collapse",animation:te});if(!be)return;const{drawData:Oe}=be,{update:_e}=Oe,je={animation:te,stage:"expand",data:Oe};fe.edges.forEach(ze=>_e.edges.set(oi(ze),ze)),fe.nodes.forEach(ze=>_e.nodes.set(oi(ze),ze)),this.updateElements(_e,je),yield(x=this.context.animation.animate(te,{beforeAnimate:ze=>this.emit(new $A(No.BEFORE_ANIMATE,Uh.EXPAND,ze,Oe),je),afterAnimate:ze=>this.emit(new $A(No.AFTER_ANIMATE,Uh.EXPAND,ze,Oe),je)},{expand:{target:a,descendants:Array.from(fe.nodes).map(([,ze])=>oi(ze)),position:ae}}))===null||x===void 0?void 0:x.finished})}collapseCombo(a,y){return Qy(this,void 0,void 0,function*(){var x;const{model:b,element:z}=this.context;if(b.getAncestorsData(a,Ou).some(je=>Qh(je)))return;const te=z.getElement(a),re=te.getComboPosition(Object.assign(Object.assign({},te.attributes),{collapsed:!0})),ae=this.computeChangesAndDrawData({stage:"collapse",animation:y});if(!ae)return;const{dataChanges:se,drawData:fe}=ae;this.markDestroyElement(fe);const{update:pe,remove:be}=fe,Oe={animation:y,stage:"collapse",data:fe};this.destroyElements(be,Oe),this.updateElements(pe,Oe);const _e=je=>Array.from(je).map(([,ze])=>oi(ze));yield(x=this.context.animation.animate(y,{before:()=>this.emit(new Pd(No.BEFORE_DRAW,{dataChanges:se,animation:y}),Oe),beforeAnimate:je=>this.emit(new $A(No.BEFORE_ANIMATE,Uh.COLLAPSE,je,fe),Oe),afterAnimate:je=>this.emit(new $A(No.AFTER_ANIMATE,Uh.COLLAPSE,je,fe),Oe),after:()=>this.emit(new Pd(No.AFTER_DRAW,{dataChanges:se,animation:y}),Oe)},{collapse:{target:a,descendants:[..._e(be.nodes),..._e(be.combos)],position:re}}))===null||x===void 0?void 0:x.finished})}expandCombo(a,y){return Qy(this,void 0,void 0,function*(){var x;const{model:b}=this.context,z=Vd(b.getComboData([a])[0]);this.computeStyle("expand");const te=this.computeChangesAndDrawData({stage:"expand",animation:y});if(!te)return;const{dataChanges:re,drawData:ae}=te,{add:se,update:fe}=ae,pe={animation:y,stage:"expand",data:ae,target:a};this.createElements(se,pe),this.updateElements(fe,pe);const be=Oe=>Array.from(Oe).map(([,_e])=>oi(_e));yield(x=this.context.animation.animate(y,{before:()=>this.emit(new Pd(No.BEFORE_DRAW,{dataChanges:re,animation:y}),pe),beforeAnimate:Oe=>this.emit(new $A(No.BEFORE_ANIMATE,Uh.EXPAND,Oe,ae),pe),afterAnimate:Oe=>this.emit(new $A(No.AFTER_ANIMATE,Uh.EXPAND,Oe,ae),pe),after:()=>this.emit(new Pd(No.AFTER_DRAW,{dataChanges:re,animation:y}),pe)},{expand:{target:a,descendants:[...be(se.nodes),...be(se.combos)],position:z}}))===null||x===void 0?void 0:x.finished})}clear(){this.container.destroy(),this.initContainer(),this.elementMap={},this.shapeTypeMap={},this.defaultStyle={},this.stateStyle={},this.paletteStyle={}}destroy(){this.clear(),this.container.destroy(),this.context={}}}const gL=Symbol("Comlink.proxy"),pV=Symbol("Comlink.endpoint"),vL=Symbol("Comlink.releaseProxy"),_C=Symbol("Comlink.finalizer"),ux=Symbol("Comlink.thrown"),mL=E=>typeof E=="object"&&E!==null||typeof E=="function",yV={canHandle:E=>mL(E)&&E[gL],serialize(E){const{port1:a,port2:y}=new MessageChannel;return yL(E,a),[y,[y]]},deserialize(E){return E.start(),xL(E)}},EV={canHandle:E=>mL(E)&&ux in E,serialize({value:E}){let a;return E instanceof Error?a={isError:!0,value:{message:E.message,name:E.name,stack:E.stack}}:a={isError:!1,value:E},[a,[]]},deserialize(E){throw E.isError?Object.assign(new Error(E.value.message),E.value):E.value}},pL=new Map([["proxy",yV],["throw",EV]]);function xV(E,a){for(const y of E)if(a===y||y==="*"||y instanceof RegExp&&y.test(a))return!0;return!1}function yL(E,a=globalThis,y=["*"]){a.addEventListener("message",function x(b){if(!b||!b.data)return;if(!xV(y,b.origin)){console.warn(`Invalid origin '${b.origin}' for comlink proxy`);return}const{id:z,type:te,path:re}=Object.assign({path:[]},b.data),ae=(b.data.argumentList||[]).map(gm);let se;try{const fe=re.slice(0,-1).reduce((be,Oe)=>be[Oe],E),pe=re.reduce((be,Oe)=>be[Oe],E);switch(te){case"GET":se=pe;break;case"SET":fe[re.slice(-1)[0]]=gm(b.data.value),se=!0;break;case"APPLY":se=pe.apply(fe,ae);break;case"CONSTRUCT":{const be=new pe(...ae);se=BV(be)}break;case"ENDPOINT":{const{port1:be,port2:Oe}=new MessageChannel;yL(E,Oe),se=PV(be,[be])}break;case"RELEASE":se=void 0;break;default:return}}catch(fe){se={value:fe,[ux]:0}}Promise.resolve(se).catch(fe=>({value:fe,[ux]:0})).then(fe=>{const[pe,be]=hx(fe);a.postMessage(Object.assign(Object.assign({},pe),{id:z}),be),te==="RELEASE"&&(a.removeEventListener("message",x),EL(a),_C in E&&typeof E[_C]=="function"&&E[_C]())}).catch(fe=>{const[pe,be]=hx({value:new TypeError("Unserializable return value"),[ux]:0});a.postMessage(Object.assign(Object.assign({},pe),{id:z}),be)})}),a.start&&a.start()}function wV(E){return E.constructor.name==="MessagePort"}function EL(E){wV(E)&&E.close()}function xL(E,a){const y=new Map;return E.addEventListener("message",function(b){const{data:z}=b;if(!z||!z.id)return;const te=y.get(z.id);if(te)try{te(z)}finally{y.delete(z.id)}}),kC(E,y,[],a)}function cx(E){if(E)throw new Error("Proxy has been released and is not useable")}function wL(E){return pp(E,new Map,{type:"RELEASE"}).then(()=>{EL(E)})}const dx=new WeakMap,fx="FinalizationRegistry"in globalThis&&new FinalizationRegistry(E=>{const a=(dx.get(E)||0)-1;dx.set(E,a),a===0&&wL(E)});function bV(E,a){const y=(dx.get(a)||0)+1;dx.set(a,y),fx&&fx.register(E,a,E)}function SV(E){fx&&fx.unregister(E)}function kC(E,a,y=[],x=function(){}){let b=!1;const z=new Proxy(x,{get(te,re){if(cx(b),re===vL)return()=>{SV(z),wL(E),a.clear(),b=!0};if(re==="then"){if(y.length===0)return{then:()=>z};const ae=pp(E,a,{type:"GET",path:y.map(se=>se.toString())}).then(gm);return ae.then.bind(ae)}return kC(E,a,[...y,re])},set(te,re,ae){cx(b);const[se,fe]=hx(ae);return pp(E,a,{type:"SET",path:[...y,re].map(pe=>pe.toString()),value:se},fe).then(gm)},apply(te,re,ae){cx(b);const se=y[y.length-1];if(se===pV)return pp(E,a,{type:"ENDPOINT"}).then(gm);if(se==="bind")return kC(E,a,y.slice(0,-1));const[fe,pe]=bL(ae);return pp(E,a,{type:"APPLY",path:y.map(be=>be.toString()),argumentList:fe},pe).then(gm)},construct(te,re){cx(b);const[ae,se]=bL(re);return pp(E,a,{type:"CONSTRUCT",path:y.map(fe=>fe.toString()),argumentList:ae},se).then(gm)}});return bV(z,E),z}function CV(E){return Array.prototype.concat.apply([],E)}function bL(E){const a=E.map(hx);return[a.map(y=>y[0]),CV(a.map(y=>y[1]))]}const SL=new WeakMap;function PV(E,a){return SL.set(E,a),E}function BV(E){return Object.assign(E,{[gL]:!0})}function iee(E,a=globalThis,y="*"){return{postMessage:(x,b)=>E.postMessage(x,y,b),addEventListener:a.addEventListener.bind(a),removeEventListener:a.removeEventListener.bind(a)}}function hx(E){for(const[a,y]of pL)if(y.canHandle(E)){const[x,b]=y.serialize(E);return[{type:"HANDLER",name:a,value:x},b]}return[{type:"RAW",value:E},SL.get(E)||[]]}function gm(E){switch(E.type){case"HANDLER":return pL.get(E.name).deserialize(E.value);case"RAW":return E.value}}function pp(E,a,y,x){return new Promise(b=>{const z=IV();a.set(z,b),E.start&&E.start(),E.postMessage(Object.assign({id:z},y),x)})}function IV(){return new Array(4).fill(0).map(()=>Math.floor(Math.random()*Number.MAX_SAFE_INTEGER).toString(16)).join("-")}class DV extends XE{constructor(a,y,x){super(),this.graph=a,this.layout=y,this.options=x,this.spawnWorker()}spawnWorker(){this.proxy=xL(new Worker(new URL(De.p+De.u(7890),De.b),{type:void 0})),this.running&&(this.running=!1,this.execute())}execute(){var a;return(0,on.mG)(this,void 0,void 0,function*(){if(this.running)return this;this.running=!0;const y=this.layout.options,{onTick:x}=y,b=(0,on._T)(y,["onTick"]),z={};Object.keys(b).forEach(se=>{Xo(b[se])||(z[se]=b[se])});const te={layout:{id:this.layout.id,options:z,iterations:(a=this.options)===null||a===void 0?void 0:a.iterations},nodes:this.graph.getAllNodes(),edges:this.graph.getAllEdges()},re=new Float32Array([0]),[ae]=yield this.proxy.calculateLayout(te,[re]);return ae})}stop(){return this.running=!1,this.proxy.stopLayout(),this}kill(){this.proxy[vL]()}isRunning(){return this.running}}var yp=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(te){te(z)})}return new(y||(y=Promise))(function(z,te){function re(fe){try{se(x.next(fe))}catch(pe){te(pe)}}function ae(fe){try{se(x.throw(fe))}catch(pe){te(pe)}}function se(fe){fe.done?z(fe.value):b(fe.value).then(re,ae)}se((x=x.apply(E,a||[])).next())})},MV=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b{const pe=oi(fe),be=ae.nodes.get(pe);re.syncNodeLikeDatum(fe),be&&Object.assign(be.style,fe.style)}),(b=se==null?void 0:se.edges)===null||b===void 0||b.forEach(fe=>{const pe=oi(fe),be=ae.edges.get(pe);re.syncEdgeDatum(fe),be&&Object.assign(be.style,fe.style)}),(z=se==null?void 0:se.combos)===null||z===void 0||z.forEach(fe=>{const pe=oi(fe),be=ae.combos.get(pe);re.syncNodeLikeDatum(fe),be&&Object.assign(be.style,fe.style)}),Yd(te,new Pd(No.AFTER_LAYOUT,{type:"pre"})),this.transformDataAfterLayout("pre",a)})}postLayout(){return yp(this,arguments,void 0,function*(a=this.options){if(!a)return;const y=Array.isArray(a)?a:[a],{graph:x}=this.context;Yd(x,new Pd(No.BEFORE_LAYOUT,{type:"post"}));for(let b=0;bb.afterLayout(a,y))}simulate(){return yp(this,void 0,void 0,function*(){if(!this.options)return{};const a=Array.isArray(this.options)?this.options:[this.options];let y={};for(let x=0;x{this.updateElementPosition(se,!1)}}):(re.execute(a),re.stop(),re.tick(te));const ae=yield re.execute(a);if(b){const se=this.updateElementPosition(ae,b);yield se==null?void 0:se.finished}return ae})}treeLayout(a,y,x){return yp(this,void 0,void 0,function*(){const{type:b,animation:z}=y,te=v0("layout",b);if(!te)return{};const{nodes:re=[],edges:ae=[]}=a,se=new ad({nodes:re.map(_e=>({id:oi(_e),data:_e.data||{}})),edges:ae.map(_e=>({id:oi(_e),source:_e.source,target:_e.target,data:_e.data||{}}))});gV(se);const fe={nodes:[],edges:[]},pe={nodes:[],edges:[]};se.getRoots(gA).forEach(_e=>{em(_e,ot=>{ot.children=se.getSuccessors(ot.id)},ot=>se.getSuccessors(ot.id),"TB");const je=te(_e,y),{x:ze,y:Je,z:qe=0}=je;em(je,ot=>{const{id:pt,x:Et,y:bt,z:Ct=0}=ot;fe.nodes.push({id:pt,style:{x:ze,y:Je,z:qe}}),pe.nodes.push({id:pt,style:{x:Et,y:bt,z:Ct}})},ot=>ot.children,"TB")});const Oe=this.inferTreeLayoutOffset(pe);if(CL(pe,Oe),z){CL(fe,Oe),this.updateElementPosition(fe,!1);const _e=this.updateElementPosition(pe,z);yield _e==null?void 0:_e.finished}return pe})}inferTreeLayoutOffset(a){var y;let[x,b]=[1/0,-1/0],[z,te]=[1/0,-1/0];(y=a.nodes)===null||y===void 0||y.forEach(je=>{const{x:ze=0,y:Je=0}=je.style||{};x=Math.min(x,ze),b=Math.max(b,ze),z=Math.min(z,Je),te=Math.max(te,Je)});const{canvas:re}=this.context,ae=re.getSize(),[se,fe]=re.getCanvasByViewport([0,0]),[pe,be]=re.getCanvasByViewport(ae);if(x>=se&&b<=pe&&z>=fe&&te<=be)return[0,0];const Oe=(se+pe)/2,_e=(fe+be)/2;return[Oe-(x+b)/2,_e-(z+te)/2]}stopLayout(){this.instance&&OS(this.instance)&&(this.instance.stop(),this.instance=void 0),this.supervisor&&(this.supervisor.stop(),this.supervisor=void 0),this.animationResult&&(this.animationResult.finish(),this.animationResult=void 0)}getLayoutData(a){const{nodeFilter:y=()=>!0,preLayout:x=!1,isLayoutInvisibleNodes:b=!1}=a,{nodes:z,edges:te,combos:re}=this.context.model.getData(),{element:ae,model:se}=this.context,fe=je=>ae.getElement(je),pe=x?je=>{var ze;return!b&&(((ze=je.style)===null||ze===void 0?void 0:ze.visibility)==="hidden"||se.getAncestorsData(je.id,gA).some(Qh)||se.getAncestorsData(je.id,Ou).some(Qh))?!1:y(je)}:je=>{const ze=oi(je),Je=fe(ze);return!Je||HE(Je)?!1:y(je)},be=z.filter(pe),Oe=new Map(be.map(je=>[oi(je),je]));re.forEach(je=>Oe.set(oi(je),je));const _e=te.filter(({source:je,target:ze})=>Oe.has(je)&&Oe.has(ze));return{nodes:be,edges:_e,combos:re}}initGraphLayout(a){var y;const{element:x,viewport:b}=this.context,{type:z,enableWorker:te,animation:re,iterations:ae}=a,se=MV(a,["type","enableWorker","animation","iterations"]),[fe,pe]=b.getCanvasSize(),be=[fe/2,pe/2],Oe=(y=a==null?void 0:a.nodeSize)!==null&&y!==void 0?y:qe=>{const ot=x==null?void 0:x.getElement(qe.id);return ot?ot.attributes.size:x==null?void 0:x.getElementComputedStyle("node",qe).size},_e=v0("layout",z);if(!_e)return jh.warn(`The layout of ${z} is not registered.`);const je=Object.getPrototypeOf(_e.prototype)===qE.prototype?_e:Jk(_e,this.context),ze=new je(this.context),Je={nodeSize:Oe,width:fe,height:pe,center:be};switch(ze.id){case"d3-force":case"d3-force-3d":Object.assign(Je,{center:{x:fe/2,y:pe/2,z:0}});break;default:break}return Eh(ze.options,Je,se),ze}updateElementPosition(a,y){const{model:x,element:b}=this.context;return b?(x.updateData(a),b.draw({animation:y,silence:!0})):null}destroy(){var a;this.stopLayout(),this.context={},(a=this.supervisor)===null||a===void 0||a.kill(),this.supervisor=void 0,this.instance=void 0,this.instances=[],this.animationResult=void 0}}const CL=(E,a)=>{var y;const[x,b]=a;(y=E.nodes)===null||y===void 0||y.forEach(z=>{if(z.style){const{x:te=0,y:re=0}=z.style;z.style.x=te+x,z.style.y=re+b}else z.style={x,y:b}})};function OV(E){return[TV].reduce((y,x)=>x(y),E)}function TV(E){return!E.layout||Array.isArray(E.layout)||"preLayout"in E.layout||["antv-dagre","combo-combined","compact-box","circular","concentric","dagre","fishbone","grid","indented","mds","radial","random","snake","dendrogram","mindmap"].includes(E.layout.type)&&(E.layout.preLayout=!0),E}class FV extends Lb{constructor(a){super(a),this.category="plugin",this.setPlugins(this.context.options.plugins||[])}setPlugins(a){this.setExtensions(a)}getPluginInstance(a){const y=this.extensionMap[a];if(y)return y;jh.warn(`Cannot find the plugin ${a}, will try to find it by type.`);const x=this.extensions.find(b=>b.type===a);if(x)return this.extensionMap[x.key]}}const Ax=["update-related-edges","collapse-expand-node","collapse-expand-combo","get-edge-actual-ends","arrange-draw-order"];class NV extends Lb{constructor(a){super(a),this.category="transform",this.setTransforms(this.context.options.transforms||[])}getTransforms(){}setTransforms(a){this.setExtensions([...Ax.slice(0,Ax.length-1),...a,Ax[Ax.length-1]])}getTransformInstance(a){return a?this.extensionMap[a]:this.extensionMap}}var zy=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(te){te(z)})}return new(y||(y=Promise))(function(z,te){function re(fe){try{se(x.next(fe))}catch(pe){te(pe)}}function ae(fe){try{se(x.throw(fe))}catch(pe){te(pe)}}function se(fe){fe.done?z(fe.value):b(fe.value).then(re,ae)}se((x=x.apply(E,a||[])).next())})};class RV{get padding(){return wg(this.context.options.padding)}get paddingOffset(){const[a,y,x,b]=this.padding,[z,te,re]=[(b-y)/2,(a-x)/2,0];return[z,te,re]}constructor(a){this.landmarkCounter=0,this.context=a;const[y,x]=this.paddingOffset,{zoom:b,rotation:z,x:te=y,y:re=x}=a.options;this.transform({mode:"absolute",scale:b,translate:[te,re],rotate:z},!1)}get camera(){const{canvas:a}=this.context;return new Proxy(a.getCamera(),{get:(y,x)=>{const z=Object.entries(a.getLayers()).filter(([re])=>!["main"].includes(re)).map(([,re])=>re.getCamera()),te=y[x];if(typeof te=="function")return(...re)=>{const ae=te.apply(y,re);return z.forEach(se=>{se[x].apply(se,re)}),ae}}})}createLandmark(a){return this.camera.createLandmark(`landmark-${this.landmarkCounter++}`,a)}getAnimation(a){const y=ZP(this.context.options,a);return y?rm(Object.assign({},y),["easing","duration"]):!1}getCanvasSize(){const{canvas:a}=this.context,{width:y=0,height:x=0}=a.getConfig();return[y,x]}getCanvasCenter(){const{canvas:a}=this.context,{width:y=0,height:x=0}=a.getConfig();return[y/2,x/2,0]}getViewportCenter(){const[a,y]=this.camera.getPosition();return[a,y,0]}getGraphCenter(){return this.context.graph.getViewportByCanvas(this.getCanvasCenter())}getZoom(){return this.camera.getZoom()}getRotation(){return this.camera.getRoll()}getTranslateOptions(a){const{camera:y}=this,{mode:x,translate:b=[]}=a,z=this.getZoom(),te=y.getPosition(),re=y.getFocalPoint(),[ae,se]=this.getCanvasCenter(),[fe=0,pe=0,be=0]=b,Oe=Pg([-fe,-pe,-be],z);return x==="relative"?{position:fl(te,Oe),focalPoint:fl(re,Oe)}:{position:fl([ae,se,te[2]],Oe),focalPoint:fl([ae,se,re[2]],Oe)}}getRotateOptions(a){const{mode:y,rotate:x=0}=a;return{roll:y==="relative"?this.camera.getRoll()+x:x}}getZoomOptions(a){const{zoomRange:y}=this.context.options,x=this.camera.getZoom(),{mode:b,scale:z=1}=a;return Ql(b==="relative"?x*z:z,...y)}transform(a,y){return zy(this,void 0,void 0,function*(){const{graph:x}=this.context,{translate:b,rotate:z,scale:te,origin:re}=a;this.cancelAnimation();const ae=this.getAnimation(y);if(Yd(x,new sx(No.BEFORE_TRANSFORM,a)),!z&&te&&!b&&re&&!ae){this.camera.setZoomByViewportPoint(this.getZoomOptions(a),re),Yd(x,new sx(No.AFTER_TRANSFORM,a));return}const se={};if(b&&Object.assign(se,this.getTranslateOptions(a)),vo(z)&&Object.assign(se,this.getRotateOptions(a)),vo(te)&&Object.assign(se,{zoom:this.getZoomOptions(a)}),ae)return Yd(x,new $A(No.BEFORE_ANIMATE,Uh.TRANSFORM,null,a)),new Promise(fe=>{this.transformResolver=fe,this.camera.gotoLandmark(this.createLandmark(se),Object.assign(Object.assign({},ae),{onfinish:()=>{Yd(x,new $A(No.AFTER_ANIMATE,Uh.TRANSFORM,null,a)),Yd(x,new sx(No.AFTER_TRANSFORM,a)),this.transformResolver=void 0,fe()}}))});this.camera.gotoLandmark(this.createLandmark(se),{duration:0}),Yd(x,new sx(No.AFTER_TRANSFORM,a))})}fitView(a,y){return zy(this,void 0,void 0,function*(){const[x,b,z,te]=this.padding,{when:re="always",direction:ae="both"}=a||{},[se,fe]=this.context.canvas.getSize(),pe=se-te-b,be=fe-x-z,Oe=this.context.canvas.getBounds(),_e=this.getBBoxInViewport(Oe),[je,ze]=Z0(_e),Je=ae==="x"&&je>=pe||ae==="y"&&ze>=be||ae==="both"&&je>=pe&&ze>=be;if(re==="overflow"&&!Je)return yield this.fitCenter({animation:y});const qe=pe/je,ot=be/ze,pt=ae==="x"?qe:ae==="y"?ot:Math.min(qe,ot),Et=this.getAnimation(y);yield this.transform({mode:"relative",scale:pt,translate:fl(Pu(this.getCanvasCenter(),this.getBBoxInViewport(Oe).center),Pg(this.paddingOffset,pt))},Et)})}fitCenter(a){return zy(this,void 0,void 0,function*(){const y=this.context.canvas.getBounds();yield this.focus(y,a)})}focusElements(a){return zy(this,arguments,void 0,function*(y,x={}){const{element:b}=this.context;if(!b)return;const z=re=>x.shapes?re.getShape(x.shapes).getRenderBounds():re.getRenderBounds(),te=ry(y.map(re=>z(b.getElement(re))));yield this.focus(te,x)})}focus(a,y){return zy(this,void 0,void 0,function*(){const x=this.context.graph.getViewportByCanvas(a.center),b=y.position||this.getCanvasCenter(),z=Pu(b,x);yield this.transform({mode:"relative",translate:fl(z,this.paddingOffset)},y.animation)})}getBBoxInViewport(a){const{min:y,max:x}=a,{graph:b}=this.context,[z,te]=b.getViewportByCanvas(y),[re,ae]=b.getViewportByCanvas(x),se=new Qu;return se.setMinMax([z,te,0],[re,ae,0]),se}isInViewport(a,y=!1,x=0){const{graph:b}=this.context,z=this.getCanvasSize(),[te,re]=b.getCanvasByViewport([0,0]),[ae,se]=b.getCanvasByViewport(z);let fe=new Qu;return fe.setMinMax([te,re,0],[ae,se,0]),x&&(fe=X0(fe,x)),Jm(a)?bg(a,fe):y?m8(a,fe):fe.intersects(a)}cancelAnimation(){var a,y;!((a=this.camera.landmarks)===null||a===void 0)&&a.length&&this.camera.cancelLandmarkAnimation(),(y=this.transformResolver)===null||y===void 0||y.call(this)}}var Hu=function(E,a,y,x){function b(z){return z instanceof y?z:new y(function(te){te(z)})}return new(y||(y=Promise))(function(z,te){function re(fe){try{se(x.next(fe))}catch(pe){te(pe)}}function ae(fe){try{se(x.throw(fe))}catch(pe){te(pe)}}function se(fe){fe.done?z(fe.value):b(fe.value).then(re,ae)}se((x=x.apply(E,a||[])).next())})};class Ep extends XE{constructor(a){var y;super(),this.options={},this.rendered=!1,this.destroyed=!1,this.context={model:new vV},this.isCollapsingExpanding=!1,this.onResize=py(()=>{this.resize()},300),this._setOptions(Object.assign({},Ep.defaultOptions,a),!0),this.context.graph=this,this.options.autoResize&&((y=globalThis.addEventListener)===null||y===void 0||y.call(globalThis,"resize",this.onResize))}getOptions(){return this.options}setOptions(a){this._setOptions(a,!1)}_setOptions(a,y){if(this.updateCanvas(a),Object.assign(this.options,OV(a)),y){const{data:be}=a;be&&this.addData(be);return}const{behaviors:x,combo:b,data:z,edge:te,layout:re,node:ae,plugins:se,theme:fe,transforms:pe}=a;x&&this.setBehaviors(x),z&&this.setData(z),ae&&this.setNode(ae),te&&this.setEdge(te),b&&this.setCombo(b),re&&this.setLayout(re),fe&&this.setTheme(fe),se&&this.setPlugins(se),pe&&this.setTransforms(pe)}getSize(){return this.context.canvas?this.context.canvas.getSize():[this.options.width||0,this.options.height||0]}setSize(a,y){a&&(this.options.width=a),y&&(this.options.height=y),this.resize(a,y)}setZoomRange(a){this.options.zoomRange=a}getZoomRange(){return this.options.zoomRange}setNode(a){this.options.node=a,this.context.model.refreshData()}setEdge(a){this.options.edge=a,this.context.model.refreshData()}setCombo(a){this.options.combo=a,this.context.model.refreshData()}getTheme(){return this.options.theme}setTheme(a){this.options.theme=Xo(a)?a(this.getTheme()):a}setLayout(a){this.options.layout=Xo(a)?a(this.getLayout()):a}getLayout(){return this.options.layout}setBehaviors(a){var y;this.options.behaviors=Xo(a)?a(this.getBehaviors()):a,(y=this.context.behavior)===null||y===void 0||y.setBehaviors(this.options.behaviors)}updateBehavior(a){this.setBehaviors(y=>y.map(x=>typeof x=="object"&&x.key===a.key?Object.assign(Object.assign({},x),a):x))}getBehaviors(){return this.options.behaviors||[]}setPlugins(a){var y;this.options.plugins=Xo(a)?a(this.getPlugins()):a,(y=this.context.plugin)===null||y===void 0||y.setPlugins(this.options.plugins)}updatePlugin(a){this.setPlugins(y=>y.map(x=>typeof x=="object"&&x.key===a.key?Object.assign(Object.assign({},x),a):x))}getPlugins(){return this.options.plugins||[]}getPluginInstance(a){return this.context.plugin.getPluginInstance(a)}setTransforms(a){var y;this.options.transforms=Xo(a)?a(this.getTransforms()):a,(y=this.context.transform)===null||y===void 0||y.setTransforms(this.options.transforms)}updateTransform(a){this.setTransforms(y=>y.map(x=>typeof x=="object"&&x.key===a.key?Object.assign(Object.assign({},x),a):x)),this.context.model.refreshData()}getTransforms(){return this.options.transforms||[]}getData(){return this.context.model.getData()}getElementData(a){return Array.isArray(a)?a.map(y=>this.context.model.getElementDataById(y)):this.context.model.getElementDataById(a)}getNodeData(a){return a===void 0?this.context.model.getNodeData():Array.isArray(a)?this.context.model.getNodeData(a):this.context.model.getNodeLikeDatum(a)}getEdgeData(a){return a===void 0?this.context.model.getEdgeData():Array.isArray(a)?this.context.model.getEdgeData(a):this.context.model.getEdgeDatum(a)}getComboData(a){return a===void 0?this.context.model.getComboData():Array.isArray(a)?this.context.model.getComboData(a):this.context.model.getNodeLikeDatum(a)}setData(a){this.context.model.setData(Xo(a)?a(this.getData()):a)}addData(a){this.context.model.addData(Xo(a)?a(this.getData()):a)}addNodeData(a){this.context.model.addNodeData(Xo(a)?a(this.getNodeData()):a)}addEdgeData(a){this.context.model.addEdgeData(Xo(a)?a(this.getEdgeData()):a)}addComboData(a){this.context.model.addComboData(Xo(a)?a(this.getComboData()):a)}addChildrenData(a,y){this.context.model.addChildrenData(a,y)}updateData(a){this.context.model.updateData(Xo(a)?a(this.getData()):a)}updateNodeData(a){this.context.model.updateNodeData(Xo(a)?a(this.getNodeData()):a)}updateEdgeData(a){this.context.model.updateEdgeData(Xo(a)?a(this.getEdgeData()):a)}updateComboData(a){this.context.model.updateComboData(Xo(a)?a(this.getComboData()):a)}removeData(a){this.context.model.removeData(Xo(a)?a(this.getData()):a)}removeNodeData(a){this.context.model.removeNodeData(Xo(a)?a(this.getNodeData()):a)}removeEdgeData(a){this.context.model.removeEdgeData(Xo(a)?a(this.getEdgeData()):a)}removeComboData(a){this.context.model.removeComboData(Xo(a)?a(this.getComboData()):a)}getElementType(a){return this.context.model.getElementType(a)}getRelatedEdgesData(a,y="both"){return this.context.model.getRelatedEdgesData(a,y)}getNeighborNodesData(a){return this.context.model.getNeighborNodesData(a)}getAncestorsData(a,y){return this.context.model.getAncestorsData(a,y)}getParentData(a,y){return this.context.model.getParentData(a,y)}getChildrenData(a){return this.context.model.getChildrenData(a)}getDescendantsData(a){return this.context.model.getDescendantsData(a)}getElementDataByState(a,y){return this.context.model.getElementDataByState(a,y)}initCanvas(){return Hu(this,void 0,void 0,function*(){var a;if(this.context.canvas)return yield this.context.canvas.ready;const{container:y="container",width:x,height:b,renderer:z,cursor:te,background:re,canvas:ae,devicePixelRatio:se=(a=globalThis.devicePixelRatio)!==null&&a!==void 0?a:1}=this.options;if(y instanceof uL)this.context.canvas=y,te&&y.setCursor(te),z&&y.setRenderer(z),yield y.ready;else{const fe=ol(y)?document.getElementById(y):y,pe=fL(fe);this.emit(No.BEFORE_CANVAS_INIT,{container:fe,width:x,height:b});const be=Object.assign(Object.assign({},ae),{container:fe,width:x||pe[0],height:b||pe[1],background:re,renderer:z,cursor:te,devicePixelRatio:se}),Oe=new uL(be);this.context.canvas=Oe,yield Oe.ready,this.emit(No.AFTER_CANVAS_INIT,{canvas:Oe})}})}updateCanvas(a){var y,x;const{renderer:b,cursor:z,height:te,width:re}=a,ae=this.context.canvas;ae&&(b&&(this.emit(No.BEFORE_RENDERER_CHANGE,{renderer:this.options.renderer}),ae.setRenderer(b),this.emit(No.AFTER_RENDERER_CHANGE,{renderer:b})),z&&ae.setCursor(z),(vo(re)||vo(te))&&this.setSize((y=re!=null?re:this.options.width)!==null&&y!==void 0?y:0,(x=te!=null?te:this.options.height)!==null&&x!==void 0?x:0))}initRuntime(){this.context.options=this.options,this.context.batch||(this.context.batch=new dV(this.context)),this.context.plugin||(this.context.plugin=new FV(this.context)),this.context.viewport||(this.context.viewport=new RV(this.context)),this.context.transform||(this.context.transform=new NV(this.context)),this.context.element||(this.context.element=new mV(this.context)),this.context.animation||(this.context.animation=new cV(this.context)),this.context.layout||(this.context.layout=new LV(this.context)),this.context.behavior||(this.context.behavior=new fV(this.context))}prepare(){return Hu(this,void 0,void 0,function*(){if(yield Promise.resolve(),this.destroyed){console.error(m0("The graph instance has been destroyed"));return}yield this.initCanvas(),this.initRuntime()})}render(){return Hu(this,void 0,void 0,function*(){if(yield this.prepare(),Yd(this,new Pd(No.BEFORE_RENDER)),this.options.layout)if(!this.rendered&&Xk(this.options.layout)){const a=yield this.context.element.preLayoutDraw({type:"render"});yield Promise.all([a==null?void 0:a.finished,this.autoFit()])}else{const a=this.context.element.draw({type:"render"});yield Promise.all([a==null?void 0:a.finished,this.context.layout.postLayout()]),yield this.autoFit()}else{const a=this.context.element.draw({type:"render"});yield Promise.all([a==null?void 0:a.finished,this.autoFit()])}this.rendered=!0,Yd(this,new Pd(No.AFTER_RENDER))})}draw(){return Hu(this,void 0,void 0,function*(){var a;yield this.prepare(),yield(a=this.context.element.draw())===null||a===void 0?void 0:a.finished})}layout(a){return Hu(this,void 0,void 0,function*(){yield this.context.layout.postLayout(a)})}stopLayout(){this.context.layout.stopLayout()}clear(){return Hu(this,void 0,void 0,function*(){const{model:a,element:y}=this.context;a.setData({}),a.clearChanges(),y==null||y.clear()})}destroy(){var a;Yd(this,new Pd(No.BEFORE_DESTROY));const{layout:y,animation:x,element:b,model:z,canvas:te,behavior:re,plugin:ae}=this.context;ae==null||ae.destroy(),re==null||re.destroy(),y==null||y.destroy(),x==null||x.destroy(),b==null||b.destroy(),z.destroy(),te==null||te.destroy(),this.options={},this.context={},this.off(),(a=globalThis.removeEventListener)===null||a===void 0||a.call(globalThis,"resize",this.onResize),this.destroyed=!0,Yd(this,new Pd(No.AFTER_DESTROY))}getCanvas(){return this.context.canvas}resize(a,y){var x;const b=fL((x=this.context.canvas)===null||x===void 0?void 0:x.getContainer()),z=[a||b[0],y||b[1]];if(!this.context.canvas)return;const te=this.context.canvas.getSize();td(z,te)||(Yd(this,new Pd(No.BEFORE_SIZE_CHANGE,{size:z})),this.context.canvas.resize(...z),Yd(this,new Pd(No.AFTER_SIZE_CHANGE,{size:z})))}fitView(a,y){return Hu(this,void 0,void 0,function*(){var x;yield(x=this.context.viewport)===null||x===void 0?void 0:x.fitView(a,y)})}fitCenter(a){return Hu(this,void 0,void 0,function*(){var y;yield(y=this.context.viewport)===null||y===void 0?void 0:y.fitCenter({animation:a})})}autoFit(){return Hu(this,void 0,void 0,function*(){const{autoFit:a}=this.context.options;if(a)if(ol(a))a==="view"?yield this.fitView():a==="center"&&(yield this.fitCenter());else{const{type:y,animation:x}=a;y==="view"?yield this.fitView(a.options,x):y==="center"&&(yield this.fitCenter(x))}})}focusElement(a,y){return Hu(this,void 0,void 0,function*(){var x;yield(x=this.context.viewport)===null||x===void 0?void 0:x.focusElements(Array.isArray(a)?a:[a],{animation:y})})}zoomBy(a,y,x){return Hu(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:"relative",scale:a,origin:x},y)})}zoomTo(a,y,x){return Hu(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:"absolute",scale:a,origin:x},y)})}getZoom(){return this.context.viewport.getZoom()}rotateBy(a,y,x){return Hu(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:"relative",rotate:a,origin:x},y)})}rotateTo(a,y,x){return Hu(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:"absolute",rotate:a,origin:x},y)})}getRotation(){return this.context.viewport.getRotation()}translateBy(a,y){return Hu(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:"relative",translate:a},y)})}translateTo(a,y){return Hu(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:"absolute",translate:a},y)})}getPosition(){return Pu([0,0],this.getCanvasByViewport([0,0]))}translateElementBy(a,y){return Hu(this,arguments,void 0,function*(x,b,z=!0){var te,re;const[ae,se]=mu(x)?[x,(te=b)!==null&&te!==void 0?te:!0]:[{[x]:b},z];Object.entries(ae).forEach(([fe,pe])=>this.context.model.translateNodeLikeBy(fe,pe)),yield(re=this.context.element.draw({animation:se,stage:"translate"}))===null||re===void 0?void 0:re.finished})}translateElementTo(a,y){return Hu(this,arguments,void 0,function*(x,b,z=!0){var te,re;const[ae,se]=mu(x)?[x,(te=b)!==null&&te!==void 0?te:!0]:[{[x]:b},z];Object.entries(ae).forEach(([fe,pe])=>this.context.model.translateNodeLikeTo(fe,pe)),yield(re=this.context.element.draw({animation:se,stage:"translate"}))===null||re===void 0?void 0:re.finished})}getElementPosition(a){return this.context.model.getElementPosition(a)}getElementRenderStyle(a){return jS(this.context.element.getElement(a).attributes,["context"])}setElementVisibility(a,y){return Hu(this,arguments,void 0,function*(x,b,z=!0){var te,re;const[ae,se]=mu(x)?[x,(te=b)!==null&&te!==void 0?te:!0]:[{[x]:b},z],fe={nodes:[],edges:[],combos:[]};Object.entries(ae).forEach(([Oe,_e])=>{const je=this.getElementType(Oe);fe[`${je}s`].push({id:Oe,style:{visibility:_e}})});const{model:pe,element:be}=this.context;pe.preventUpdateNodeLikeHierarchy(()=>{pe.updateData(fe)}),yield(re=be.draw({animation:se,stage:"visibility"}))===null||re===void 0?void 0:re.finished})}showElement(a,y){return Hu(this,void 0,void 0,function*(){const x=Array.isArray(a)?a:[a];yield this.setElementVisibility(Object.fromEntries(x.map(b=>[b,"visible"])),y)})}hideElement(a,y){return Hu(this,void 0,void 0,function*(){const x=Array.isArray(a)?a:[a];yield this.setElementVisibility(Object.fromEntries(x.map(b=>[b,"hidden"])),y)})}getElementVisibility(a){var y,x;const b=this.context.element.getElement(a);return(x=(y=b==null?void 0:b.style)===null||y===void 0?void 0:y.visibility)!==null&&x!==void 0?x:"visible"}setElementZIndex(a,y){return Hu(this,void 0,void 0,function*(){var x;const b={nodes:[],edges:[],combos:[]},z=mu(a)?a:{[a]:y};Object.entries(z).forEach(([ae,se])=>{const fe=this.getElementType(ae);b[`${fe}s`].push({id:ae,style:{zIndex:se}})});const{model:te,element:re}=this.context;te.preventUpdateNodeLikeHierarchy(()=>te.updateData(b)),yield(x=re.draw({animation:!1,stage:"zIndex"}))===null||x===void 0?void 0:x.finished})}frontElement(a){return Hu(this,void 0,void 0,function*(){const y=Array.isArray(a)?a:[a],{model:x}=this.context,b={};y.map(z=>{const te=x.getFrontZIndex(z);if(x.getElementType(z)==="combo"){const ae=x.getAncestorsData(z,Ou).at(-1)||this.getComboData(z),se=[ae,...x.getDescendantsData(oi(ae))],fe=te-hL(ae);se.forEach(be=>{b[oi(be)]=this.getElementZIndex(oi(be))+fe});const{internal:pe}=lS(se.map(oi),be=>x.getRelatedEdgesData(be));pe.forEach(be=>{const Oe=oi(be);b[Oe]=this.getElementZIndex(Oe)+fe})}else b[z]=te}),yield this.setElementZIndex(b)})}getElementZIndex(a){return hL(this.context.model.getElementDataById(a))}setElementState(a,y){return Hu(this,arguments,void 0,function*(x,b,z=!0){var te,re;const[ae,se]=mu(x)?[x,(te=b)!==null&&te!==void 0?te:!0]:[{[x]:b},z],fe=be=>be?Array.isArray(be)?be:[be]:[],pe={nodes:[],edges:[],combos:[]};Object.entries(ae).forEach(([be,Oe])=>{const _e=this.getElementType(be);pe[`${_e}s`].push({id:be,states:fe(Oe)})}),this.updateData(pe),yield(re=this.context.element.draw({animation:se,stage:"state"}))===null||re===void 0?void 0:re.finished})}getElementState(a){return this.context.model.getElementState(a)}getElementRenderBounds(a){return this.context.element.getElement(a).getRenderBounds()}collapseElement(a){return Hu(this,arguments,void 0,function*(y,x=!0){const{model:b,element:z}=this.context;if(Qh(b.getNodeLikeData([y])[0])||this.isCollapsingExpanding)return;typeof x=="boolean"&&(x={animation:x,align:!0});const te=b.getElementType(y);yield this.frontElement(y),this.isCollapsingExpanding=!0,this.setElementCollapsibility(y,!0),te==="node"?yield z.collapseNode(y,x):te==="combo"&&(yield z.collapseCombo(y,!!x.animation)),this.isCollapsingExpanding=!1})}expandElement(a){return Hu(this,arguments,void 0,function*(y,x=!0){const{model:b,element:z}=this.context;if(!Qh(b.getNodeLikeData([y])[0])||this.isCollapsingExpanding)return;typeof x=="boolean"&&(x={animation:x,align:!0});const te=b.getElementType(y);this.isCollapsingExpanding=!0,this.setElementCollapsibility(y,!1),te==="node"?yield z.expandNode(y,x):te==="combo"&&(yield z.expandCombo(y,!!x.animation)),this.isCollapsingExpanding=!1})}setElementCollapsibility(a,y){const x=this.getElementType(a);x==="node"?this.updateNodeData([{id:a,style:{collapsed:y}}]):x==="combo"&&this.updateComboData([{id:a,style:{collapsed:y}}])}toDataURL(){return Hu(this,arguments,void 0,function*(a={}){return this.context.canvas.toDataURL(a)})}getCanvasByViewport(a){return this.context.canvas.getCanvasByViewport(a)}getViewportByCanvas(a){return this.context.canvas.getViewportByCanvas(a)}getClientByCanvas(a){return this.context.canvas.getClientByCanvas(a)}getCanvasByClient(a){return this.context.canvas.getCanvasByClient(a)}getViewportCenter(){return this.context.viewport.getViewportCenter()}getCanvasCenter(){return this.context.viewport.getCanvasCenter()}on(a,y,x){return super.on(a,y,x)}once(a,y){return super.once(a,y)}off(a,y){return super.off(a,y)}}Ep.defaultOptions={autoResize:!1,theme:"light",rotation:0,zoom:1,zoomRange:[.01,10]};var _V=function(E,a){var y={};for(var x in E)Object.prototype.hasOwnProperty.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&typeof Object.getOwnPropertySymbols=="function")for(var b=0,x=Object.getOwnPropertySymbols(E);b{if(re.depth=ae,!re.children)return re;const{children:se}=re,fe=_V(re,["children"]);return Object.assign(Object.assign({},fe),{children:se.map(pe=>pe.id)})},getEdgeData:x=(re,ae)=>({source:re.id,target:ae.id}),getChildren:b=re=>re.children||[]}=a||{},z=[],te=[];return em(E,(re,ae)=>{z.push(y(re,ae));const se=b(re);for(const fe of se)te.push(x(re,fe))},re=>b(re),"TB"),{nodes:z,edges:te}}class kV extends fv{beforeDraw(a){const{add:y,update:x}=a,{model:b}=this.context;return[...y.edges.entries(),...x.edges.entries()].forEach(([,z])=>{PL(b,z)}),a}}const PL=(E,a)=>{const{source:y,target:x}=a,b=E.getElementDataById(y),z=E.getElementDataById(x),te=R3(b,pe=>E.getParentData(pe,Ou)),re=R3(z,pe=>E.getParentData(pe,Ou)),ae=oi(te),se=oi(re),fe={sourceNode:ae,targetNode:se};return a.style?Object.assign(a.style,fe):a.style=fe,a},UV=(E,a,y)=>{const[x,b]=a,[z,te]=y;if(b===x)return z;const re=(E-x)/(b-x);return z+re*(te-z)},jV=(E,a,y)=>{const[x,b]=a,[z,te]=y,re=Math.log(E-x+1)/Math.log(b-x+1);return z+re*(te-z)},QV=(E,a,y,x=2)=>{const[b,z]=a,[te,re]=y,ae=Math.pow((E-b)/(z-b),x);return te+ae*(re-te)},zV=(E,a,y)=>{const[x,b]=a,[z,te]=y,re=Math.sqrt((E-x)/(b-x));return z+re*(te-z)};class gx extends fv{constructor(a,y){super(a,Eh({},gx.defaultOptions,y)),this.assignSizeByCentrality=(x,b,z,te,re,ae)=>{const se=[b,z],fe=[te[0],re[0]],pe=[te[1],re[1]],be=[te[2],re[2]],Oe=(_e,je)=>{if(typeof ae=="function")return ae(_e,se,je);switch(ae){case"linear":return UV(_e,se,je);case"log":return jV(_e,se,je);case"pow":return QV(_e,se,je,2);case"sqrt":return zV(_e,se,je);default:return je[0]}};return[Oe(x,fe),Oe(x,pe),Oe(x,be)]}}beforeDraw(a){const{model:y}=this.context,x=y.getNodeData(),b=mA(this.options.maxSize),z=mA(this.options.minSize),te=this.getCentralities(this.options.centrality),re=te.size>0?Math.max(...te.values()):0,ae=te.size>0?Math.min(...te.values()):0;return x.forEach(se=>{var fe;const pe=this.assignSizeByCentrality(te.get(oi(se))||0,ae,re,z,b,this.options.scale),be=(fe=this.context.element)===null||fe===void 0?void 0:fe.getElement(oi(se)),Oe={size:pe};this.assignLabelStyle(Oe,pe,se,be),(!be||!ix(Oe,be.attributes))&&bA(a,be?"update":"add","node",Eh(se,{style:Oe}),!0)}),a}assignLabelStyle(a,y,x,b){var z;const te=b?b.config.style:(z=this.context.element)===null||z===void 0?void 0:z.getElementComputedStyle("node",x);if(Object.assign(a,rm(te,["labelFontSize","labelLineHeight"])),this.options.mapLabelSize){const re=this.getLabelSizeByNodeSize(y,1/0,Number(a.labelFontSize));Object.assign(a,{labelFontSize:re,labelLineHeight:re+v8(a.labelPadding)})}return a}getLabelSizeByNodeSize(a,y,x){const b=Math.min(...a)/2,[z,te]=Array.isArray(this.options.mapLabelSize)?this.options.mapLabelSize:[x,y];return Math.min(te,Math.max(b,z))}getCentralities(a){const{model:y}=this.context,x=y.getData();if(typeof a=="function")return a(x);const b=y.getRelatedEdgesData.bind(y);return UB(x,b,a)}}gx.defaultOptions={centrality:{type:"degree"},maxSize:80,minSize:20,scale:"linear",mapLabelSize:!1};class vx extends fv{constructor(a,y){super(a,Object.assign({},vx.defaultOptions,y))}get ref(){return this.context.model.getRootsData()[0]}afterLayout(){var a;const y=Vd(this.ref),{graph:x,model:b}=this.context;(a=b.getData().nodes)===null||a===void 0||a.forEach(te=>{var re;if(oi(te)===oi(this.ref))return;const ae=HB(Pu(Vd(te),y)),se=Math.abs(ae)>Math.PI/2,fe=!te.children||te.children.length===0,pe=oi(te),be=(re=this.context.element)===null||re===void 0?void 0:re.getElement(pe);if(!be||!be.isVisible())return;const Oe=mA(x.getElementRenderStyle(pe).size)[0]/2,_e=(fe?1:-1)*(Oe+this.options.offset),je=[["translate",_e*Math.cos(ae),_e*Math.sin(ae)],["rotate",se?Nh(ae)+180:Nh(ae)]];b.updateNodeData([{id:oi(te),style:{labelTextAlign:se===fe?"right":"left",labelTextBaseline:"middle",labelTransform:je}}])}),x.draw()}}vx.defaultOptions={offset:5};const HV="quadratic",BL=["top","top-right","right","right-bottom","bottom","bottom-left","left","left-top"];class mx extends fv{constructor(a,y){super(a,Object.assign({},mx.defaultOptions,y)),this.cacheMergeStyle=new Map,this.getAffectedParallelEdges=x=>{const{add:{edges:b},update:{nodes:z,edges:te,combos:re},remove:{edges:ae}}=x,{model:se}=this.context,fe=new Map,pe=(_e,je)=>{se.getRelatedEdgesData(je).forEach(Je=>!fe.has(oi(Je))&&fe.set(oi(Je),Je))};z.forEach(pe),re.forEach(pe);const be=_e=>{const je=se.getEdgeData().map(Je=>PL(se,Je));WV(_e,je,!0).forEach(Je=>!fe.has(oi(Je))&&fe.set(oi(Je),Je))};if(ae.size&&ae.forEach(be),b.size&&b.forEach(be),te.size){const _e=BD(KS(se.getChanges())).update.edges;te.forEach(je=>{var ze;be(je);const Je=(ze=_e.find(qe=>oi(qe.value)===oi(je)))===null||ze===void 0?void 0:ze.original;Je&&!jC(je,Je)&&be(Je)})}r0(this.options.edges)||fe.forEach((_e,je)=>!this.options.edges.includes(je)&&fe.delete(je));const Oe=se.getEdgeData().map(oi);return new Map([...fe].sort((_e,je)=>Oe.indexOf(_e[0])-Oe.indexOf(je[0])))},this.applyBundlingStyle=(x,b,z)=>{const{edgeMap:te,reverses:re}=IL(b);te.forEach(ae=>{ae.forEach((se,fe,pe)=>{var be;const Oe=pe.length,_e=se.style||{};if(se.source===se.target){const Je=BL.length;_e.loopPlacement=BL[fe%Je],_e.loopDist=Math.floor(fe/Je)*z+50}else if(Oe===1)_e.curveOffset=0;else{const Je=(fe%2===0?1:-1)*(re[`${se.source}|${se.target}|${fe}`]?-1:1);_e.curveOffset=Oe%2===1?Je*Math.ceil(fe/2)*z*2:Je*(Math.floor(fe/2)*z*2+z)}const je=Object.assign(se,{type:HV,style:_e}),ze=(be=this.context.element)===null||be===void 0?void 0:be.getElement(oi(se));(!ze||!ix(je.style,ze.attributes))&&bA(x,ze?"update":"add","edge",je,!0)})})},this.resetEdgeStyle=x=>{const b=x.style||{},z=this.cacheMergeStyle.get(oi(x))||{};return Object.keys(z).forEach(te=>{td(b[te],z[te])&&(x[te]?b[te]=x[te]:delete b[te])}),Object.assign(x,{style:b})},this.applyMergingStyle=(x,b)=>{const{edgeMap:z,reverses:te}=IL(b);z.forEach(re=>{var ae;if(re.length===1){const fe=re[0],pe=(ae=this.context.element)===null||ae===void 0?void 0:ae.getElement(oi(fe)),be=this.resetEdgeStyle(fe);(!pe||!ix(be,pe.attributes))&&bA(x,pe?"update":"add","edge",be);return}const se=re.map(({source:fe,target:pe,style:be={}},Oe)=>{const{startArrow:_e,endArrow:je}=be,ze={},[Je,qe]=te[`${fe}|${pe}|${Oe}`]?["endArrow","startArrow"]:["startArrow","endArrow"];return mh(_e)&&(ze[Je]=_e),mh(je)&&(ze[qe]=je),ze}).reduce((fe,pe)=>Object.assign(Object.assign({},fe),pe),{});re.forEach((fe,pe,be)=>{var Oe;if(pe!==0){bA(x,"remove","edge",fe);return}const _e=Object.assign({},Xo(this.options.style)?this.options.style(be):this.options.style,{childrenData:be});this.cacheMergeStyle.set(oi(fe),_e);const je=Object.assign(Object.assign({},fe),{type:"line",style:Object.assign(Object.assign(Object.assign({},fe.style),se),_e)}),ze=(Oe=this.context.element)===null||Oe===void 0?void 0:Oe.getElement(oi(fe));(!ze||!ix(je.style,ze.attributes))&&bA(x,ze?"update":"add","edge",je,!0)})})}}beforeDraw(a){const y=this.getAffectedParallelEdges(a);return y.size===0||(this.options.mode==="bundle"?this.applyBundlingStyle(a,y,this.options.distance):this.applyMergingStyle(a,y)),a}}mx.defaultOptions={mode:"bundle",distance:15};const IL=E=>{const a=new Map,y=new Set,x={},b=new Map;for(const[z,te]of E){if(y.has(z))continue;const{source:re,target:ae}=te,se=`${re}-${ae}`;a.has(se)||(a.set(se,[]),b.set(se,new Set));const fe=a.get(se),pe=b.get(se);fe&&pe&&!pe.has(z)&&(fe.push(te),pe.add(z),y.add(z));for(const[be,Oe]of E)if(!(y.has(be)||be===z)&&jC(te,Oe)){const _e=a.get(se),je=b.get(se);_e&&je&&!je.has(be)&&(_e.push(Oe),je.add(be),re===Oe.target&&ae===Oe.source&&(x[`${Oe.source}|${Oe.target}|${_e.length-1}`]=!0),y.add(be))}}return{edgeMap:a,reverses:x}},WV=(E,a,y)=>a.filter(x=>(y||oi(x)!==oi(E))&&jC(x,E)),jC=(E,a)=>{const{sourceNode:y,targetNode:x}=E.style||{},{sourceNode:b,targetNode:z}=a.style||{};return y===b&&x===z||y===z&&x===b};class GV extends fv{beforeDraw(a,y){const{stage:x}=y;if(x==="visibility")return a;const{model:b}=this.context,{update:{nodes:z,edges:te,combos:re}}=a,ae=(se,fe)=>{b.getRelatedEdgesData(fe).forEach(be=>!te.has(oi(be))&&te.set(oi(be),be))};return z.forEach(ae),re.forEach(ae),a}}const KV={animation:{"combo-collapse":qP,"combo-expand":d8,"node-collapse":XP,"node-expand":u8,"path-in":JP,"path-out":c8,fade:s8,translate:l8},behavior:{"brush-select":uy,"click-select":yE,"collapse-expand":WE,"create-edge":ZE,"drag-canvas":YE,"drag-element-force":$k,"drag-element":yy,"fix-element-size":e2,"focus-element":t2,"hover-activate":n2,"lasso-select":tU,"auto-adapt-label":hE,"optimize-viewport-transform":r2,"scroll-canvas":a2,"zoom-canvas":i2},combo:{circle:W7,rect:G7},edge:{cubic:am,line:jE,polyline:QE,quadratic:zE,"cubic-horizontal":_E,"cubic-radial":kE,"cubic-vertical":UE},layout:{"antv-dagre":j9,"combo-combined":Wj,"compact-box":o2.compactBox,"d3-force":mQ,"force-atlas2":EQ,circular:H9,concentric:PS,dagre:f2,dendrogram:o2.dendrogram,fishbone:g2,force:HI,fruchterman:bQ,grid:CQ,indented:o2.indented,mds:XI,mindmap:o2.mindmap,radial:FQ,random:QQ,snake:v2},node:{circle:tm,diamond:G_,ellipse:SE,hexagon:X_,html:OE,image:TE,rect:z7,star:H7,donut:wE,triangle:FE},palette:{spectral:KQ,tableau:VQ,oranges:ZQ,greens:YQ,blues:XQ},theme:{dark:qK,light:$K},plugin:{"bubble-sets":P2,"edge-bundling":I2,"edge-filter-lens":D2,"grid-line":O2,background:m2,contextmenu:B2,fisheye:M2,fullscreen:L2,history:T2,hull:_2,legend:z2,minimap:H2,snapline:W2,timebar:tx,toolbar:nx,tooltip:rx,watermark:ax},transform:{"arrange-draw-order":eV,"collapse-expand-combo":tV,"collapse-expand-node":nV,"get-edge-actual-ends":kV,"map-node-size":gx,"place-radial-labels":vx,"process-parallel-edges":mx,"update-related-edges":GV},shape:{circle:h0,ellipse:Yp,group:Kd,html:Xp,image:Kb,line:Gv,path:hA,polygon:Kv,polyline:L1,rect:bf,text:Vv,label:ev,badge:ep}};function VV(){Object.entries(KV).forEach(([E,a])=>{Object.entries(a).forEach(([y,x])=>{rV(E,y,x)})})}VV();const oee={css:"//at.alicdn.com/t/a/font_470089_8hnbbf8n4u8.css",js:"//at.alicdn.com/t/a/font_470089_8hnbbf8n4u8.js"};var QC=De(59301),ZV=Object.defineProperty,YV=Object.defineProperties,XV=Object.getOwnPropertyDescriptors,DL=Object.getOwnPropertySymbols,JV=Object.prototype.hasOwnProperty,qV=Object.prototype.propertyIsEnumerable,ML=(E,a,y)=>a in E?ZV(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,zC=(E,a)=>{for(var y in a||(a={}))JV.call(a,y)&&ML(E,y,a[y]);if(DL)for(var y of DL(a))qV.call(a,y)&&ML(E,y,a[y]);return E},HC=(E,a)=>YV(E,XV(a)),$V=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(se){b(se)}},te=ae=>{try{re(y.throw(ae))}catch(se){b(se)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,te);re((y=y.apply(E,a)).next())});const eZ=(E,a)=>{const y=E.getParentData(a.id,"tree");return y?a.style.x>y.style.x?"right":"left":"center"},tZ=[3,2,1];let px=[{name:"\u6839\u8282\u70B9",src:"/images/one.svg",color:"#CC7CF5"},{name:"\u8BFE\u7A0B",src:"/images/kc.svg",color:"#3241F7"},{name:"\u7AE0\u8282",src:"/images/zj.svg",color:"#5e54e7"},{name:"\u77E5\u8BC6\u70B9",src:"/images/zsd.svg",color:"#FFDF55"},{name:"\u5B9E\u8BAD",src:"/images/sx.svg",color:"#4E9DFF"},{name:"\u4F5C\u4E1A",src:"/images/zy.svg",color:"#445DF3"},{name:"\u89C6\u9891",src:"/images/sp.svg",color:"#6BC4DE"},{name:"\u8BFE\u4EF6",src:"/images/fj.svg",color:"#6BDE73"},{name:"\u8BD5\u5377",src:"/images/sj.svg",color:"#2D9534"},{name:"\u5176\u4ED6",src:"/images/qt.svg",color:"#2D947C"}];const nZ=(E,a)=>{const y={};let x=null;return E.forEach(b=>{y[b.properties.uuid]=HC(zC({},b),{id:b.properties.uuid,children:[]})}),a.forEach(b=>{const z=y[b.startNodeUuid],te=y[b.endNodeUuid];z&&(z.id=z.properties.uuid),z&&te&&z.children.push(te)}),E.forEach(b=>{!a.some(te=>te.endNodeUuid===b.properties.uuid)&&(x=y[b.properties.uuid])}),x};var rZ=(0,Ne.forwardRef)(({nodeUuid:E,subject_id:a,setshowdetail:y,setitems:x,setzoomsize:b},z)=>{const[te,re]=(0,Ne.useState)(!1),ae=(0,Ne.useRef)(0),se=(0,Ne.useRef)(null),fe=(0,Ne.useRef)();(0,Ne.useEffect)(()=>{ze()},[]);function pe(qe){fe.current.zoomBy(qe)}function be(){setTimeout(()=>{var qe;b((((qe=fe==null?void 0:fe.current)==null?void 0:qe.getZoom())*100).toFixed(0))},300)}function Oe(qe){var ot;let pt=fe.current.getElementDataByState("node","selected");(pt==null?void 0:pt.length)>0&&fe.current.setElementState((ot=pt==null?void 0:pt[0])==null?void 0:ot.id,[""]),fe.current.setElementState(qe,["selected"])}function _e(qe,ot){try{const pt={},Et={};fe.current.getEdgeData().map(bt=>{pt[bt.id]=qe==="Enter"?"inactive":"active"}),fe.current.getNodeData().map(bt=>{qe==="Enter"?Et[bt.id]=bt.colornodeType===ot?"highlight":"inactive":Et[bt.id]="active"}),fe.current.setElementState(pt),fe.current.setElementState(Et)}catch(pt){}}function je(qe,ot){var pt;(pt=fe==null?void 0:fe.current)==null||pt.fitView(qe,ot)}(0,Ne.useImperativeHandle)(z,()=>({zoomBy:pe,getData:ze,selectall:Oe,onMouse:_e,fitView:je,getZooms:be}));const ze=()=>$V(void 0,null,function*(){var qe,ot,pt,Et,bt,Ct,St,Zt,sn;re(!0);let gn=yield(0,ee.ZP)("/api/knowledge/v2/get_node.json",{method:"get",params:{nodeUuid:E,subject_id:a,depth:-1,relationshipFilter:"\u5305\u542B>"}});re(!1);let Dn=(ot=(qe=gn==null?void 0:gn.data)==null?void 0:qe.nodes)==null?void 0:ot.map(vr=>{var mr,Ir,ca,pr,Ca,Fi,Ti,di,Ha,Ii,Hi,ho;return HC(zC({},vr==null?void 0:vr.properties),{rootNodeUuid:(mr=vr==null?void 0:vr.properties)==null?void 0:mr.rootNodeUuid,id:(Ir=vr==null?void 0:vr.properties)==null?void 0:Ir.uuid,name:(ca=vr==null?void 0:vr.properties)==null?void 0:ca.name,description:(pr=vr==null?void 0:vr.properties)==null?void 0:pr.description,nodeType:(Ca=vr==null?void 0:vr.properties)==null?void 0:Ca.nodeType,tags:((Fi=vr==null?void 0:vr.properties)==null?void 0:Fi.tags)&&((Ha=(di=(Ti=vr==null?void 0:vr.properties)==null?void 0:Ti.tags)==null?void 0:di.split("\uFF0C"))==null?void 0:Ha.map(Mo=>({name:Mo})))||[],colorType:parseInt((Ii=vr==null?void 0:vr.properties)==null?void 0:Ii.color)>3?"3":(Hi=vr==null?void 0:vr.properties)==null?void 0:Hi.color,activeColor:"#FA6400",size:tZ[((ho=vr==null?void 0:vr.properties)==null?void 0:ho.color)-1]||1,shape:"circle",hide:!1,isExtendedState:!0})}),or=nZ((Et=(pt=gn==null?void 0:gn.data)==null?void 0:pt.nodes)==null?void 0:Et.map((vr,mr)=>{var Ir,ca,pr,Ca,Fi;return HC(zC({},vr),{key:mr,title:(Ir=vr==null?void 0:vr.properties)==null?void 0:Ir.name,newcolor:parseInt((ca=vr==null?void 0:vr.properties)==null?void 0:ca.color)===1?"#CC7CF5":((pr=px==null?void 0:px.find(Ti=>{var di;return(Ti==null?void 0:Ti.name)===((di=vr==null?void 0:vr.properties)==null?void 0:di.nodeType)}))==null?void 0:pr.color)||"#2D947C",colornodeType:parseInt((Ca=vr==null?void 0:vr.properties)==null?void 0:Ca.color)===1?"\u6839\u8282\u70B9":((Fi=px==null?void 0:px.find(Ti=>{var di;return(Ti==null?void 0:Ti.name)===((di=vr==null?void 0:vr.properties)==null?void 0:di.nodeType)}))==null?void 0:Fi.name)||"\u5176\u4ED6"})}),(Ct=(bt=gn==null?void 0:gn.data)==null?void 0:bt.relationships)==null?void 0:Ct.filter(vr=>vr.type==="\u5305\u542B"));fe!=null&&fe.current&&((St=fe==null?void 0:fe.current)==null||St.destroy());let Vn=UC(or),Dr=(Zt=Vn.nodes)==null?void 0:Zt.filter((vr,mr,Ir)=>mr===Ir.findIndex(ca=>ca.id===vr.id)),sa=(sn=Vn.edges)==null?void 0:sn.filter((vr,mr,Ir)=>mr===Ir.findIndex(ca=>ca.source===vr.source&&ca.target===vr.target));Je({nodes:Dr,edges:sa},Dn)}),Je=(qe,ot)=>{var pt,Et;fe.current=null,fe.current=new Ep({container:se.current,autoResize:!0,autoFit:{type:((pt=qe==null?void 0:qe.nodes)==null?void 0:pt.length)>20?"view":"center",options:{direction:"both",when:"always"}},animation:!(((Et=qe==null?void 0:qe.nodes)==null?void 0:Et.length)>300),data:qe,node:{style:{labelText:bt=>bt.title,labelFill:"#ffffff",fill:bt=>bt.newcolor,labelBackground:!1,labelPlacement:function(bt){const Ct=eZ(this,bt);return Ct==="center"?"right":Ct},halo:!0,haloStrokeOpacity:.5,haloLineWidth:10,ports:[{placement:"right"},{placement:"left"}]},animation:{enter:!1}},edge:{type:"cubic-horizontal",animation:{enter:!1}},layout:{type:"mindmap",direction:"H",getHeight:()=>32,getWidth:()=>32,getVGap:()=>4,getHGap:()=>64,getSide:bt=>(ae.current++,ae.current%2==0?"left":"right")},behaviors:["drag-element",{type:"zoom-canvas",onFinish:()=>{setTimeout(()=>{var bt;b((((bt=fe==null?void 0:fe.current)==null?void 0:bt.getZoom())*100).toFixed(0))},300)}},"collapse-expand","drag-canvas",{type:"click-select",state:"selected",onClick:bt=>{let Ct=ot.filter(St=>{var Zt,sn;return(St==null?void 0:St.id)===((sn=(Zt=bt.target)==null?void 0:Zt.config)==null?void 0:sn.id)});if((Ct==null?void 0:Ct.length)===0){y(!1);return}x(Ct==null?void 0:Ct[0]),y(!0),bt.view.setCursor("pointer")},multiple:!1}]}),fe.current.render(),setTimeout(()=>{var bt;b((((bt=fe==null?void 0:fe.current)==null?void 0:bt.getZoom())*100).toFixed(0))},300)};return QC.createElement("div",{style:{height:"100%"}},QC.createElement(ue.Z,{spinning:te,className:"mt60 w100",tip:"\u52A0\u8F7D\u4E2D..."}),QC.createElement("div",{style:{height:"100%"},ref:se}))}),Wu={flex_box_center:"flex_box_center___mORrQ",flex_space_between:"flex_space_between___AGgBm",flex_box_vertical_center:"flex_box_vertical_center____H93g",flex_box_center_end:"flex_box_center_end___VPK8Q",flex_box_column:"flex_box_column___qksG3",RadioGroupStyle:"RadioGroupStyle___tgdIW",autocomp:"autocomp___H_feM",autocompwidth:"autocompwidth___RMYtG",hoverone:"hoverone___j7m8k",name:"name___qwPqM",img:"img___WHKD_",autopop:"autopop___YCC3k",studentHead:"studentHead___DeVom",headLi:"headLi___qiYnp",btn:"btn___s7HI8",tupugx:"tupugx___JCYSy",textname:"textname___iEAMA",dropdownst:"dropdownst___ca1cn"},WC=De(84989),LL=De(59301),aZ=Object.defineProperty,iZ=Object.defineProperties,oZ=Object.getOwnPropertyDescriptors,yx=Object.getOwnPropertySymbols,OL=Object.prototype.hasOwnProperty,TL=Object.prototype.propertyIsEnumerable,FL=(E,a,y)=>a in E?aZ(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,NL=(E,a)=>{for(var y in a||(a={}))OL.call(a,y)&&FL(E,y,a[y]);if(yx)for(var y of yx(a))TL.call(a,y)&&FL(E,y,a[y]);return E},sZ=(E,a)=>iZ(E,oZ(a)),lZ=(E,a)=>{var y={};for(var x in E)OL.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&yx)for(var x of yx(E))a.indexOf(x)<0&&TL.call(E,x)&&(y[x]=E[x]);return y},uZ=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(se){b(se)}},te=ae=>{try{re(y.throw(ae))}catch(se){b(se)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,te);re((y=y.apply(E,a)).next())});let Ex=[{name:"\u6839\u8282\u70B9",src:"/images/one.svg",color:"#CC7CF5",bordercolor:"#A150CB"},{name:"\u8BFE\u7A0B",src:"/images/kc.svg",color:"#3241F7",bordercolor:"#3437D9"},{name:"\u7AE0\u8282",src:"/images/zj.svg",color:"#5e54e7",bordercolor:"#7f77f9"},{name:"\u77E5\u8BC6\u70B9",src:"/images/zsd.svg",color:"#FFDF55",bordercolor:"#FFD60F"},{name:"\u5B9E\u8BAD",src:"/images/sx.svg",color:"#4E9DFF",bordercolor:"#0882FB"},{name:"\u4F5C\u4E1A",src:"/images/zy.svg",color:"#445DF3",bordercolor:"#3149D5"},{name:"\u89C6\u9891",src:"/images/sp.svg",color:"#6BC4DE",bordercolor:"#339DC4"},{name:"\u8BFE\u4EF6",src:"/images/fj.svg",color:"#6BDE73",bordercolor:"#33C448"},{name:"\u8BD5\u5377",src:"/images/sj.svg",color:"#2D9534",bordercolor:"#077A04"},{name:"\u5176\u4ED6",src:"/images/qt.svg",color:"#2D947C",bordercolor:"#157660"}];const lee=null;let uee=null;const cZ=E=>{var a=E,{pathsDetail:y,user:x,globalSetting:b,loading:z,dispatch:te,datas:re}=a,ae=lZ(a,["pathsDetail","user","globalSetting","loading","dispatch","datas"]);const se=(0,Ne.useRef)(),fe=(0,Ne.useRef)(null);(0,Ne.useEffect)(()=>{pe()},[re]);function pe(){return uZ(this,null,function*(){var be,Oe,_e,je,ze,Je,qe;if(((be=re==null?void 0:re.nodes)==null?void 0:be.length)>0){let ot=(0,Bt.fX)((Oe=re==null?void 0:re.nodes)==null?void 0:Oe.map((St,Zt)=>{var sn,gn,Dn,or,Vn,Dr,sa,vr,mr,Ir,ca,pr,Ca,Fi,Ti,di;return sZ(NL(NL({},St),St==null?void 0:St.properties),{rootNodeUuid:(sn=St==null?void 0:St.properties)==null?void 0:sn.rootNodeUuid,id:(gn=St==null?void 0:St.properties)==null?void 0:gn.uuid,name:(Dn=St==null?void 0:St.properties)==null?void 0:Dn.name,labelstype:(or=St==null?void 0:St.labels)==null?void 0:or[1],description:(Vn=St==null?void 0:St.properties)==null?void 0:Vn.description,nodeType:(Dr=St==null?void 0:St.properties)==null?void 0:Dr.nodeType,colornodeType:parseInt((sa=St==null?void 0:St.properties)==null?void 0:sa.color)===1?"\u6839\u8282\u70B9":((vr=Ex==null?void 0:Ex.find(Ha=>{var Ii;return(Ha==null?void 0:Ha.name)===((Ii=St==null?void 0:St.properties)==null?void 0:Ii.nodeType)}))==null?void 0:vr.name)||"\u5176\u4ED6",newcolor:parseInt((mr=St==null?void 0:St.properties)==null?void 0:mr.color)===1?"#CC7CF5":((Ir=Ex==null?void 0:Ex.find(Ha=>{var Ii;return(Ha==null?void 0:Ha.name)===((Ii=St==null?void 0:St.properties)==null?void 0:Ii.nodeType)}))==null?void 0:Ir.color)||"#2D947C",tags:((ca=St==null?void 0:St.properties)==null?void 0:ca.tags)&&((Fi=(Ca=(pr=St==null?void 0:St.properties)==null?void 0:pr.tags)==null?void 0:Ca.split("\uFF0C"))==null?void 0:Fi.map(Ha=>({name:Ha})))||[],colorType:parseInt((Ti=St==null?void 0:St.properties)==null?void 0:Ti.color)>3?"3":(di=St==null?void 0:St.properties)==null?void 0:di.color})}),(ze=(je=(_e=re==null?void 0:re.relationships)==null?void 0:_e.filter(St=>{var Zt,sn,gn;return(St==null?void 0:St.endNodeUuid)!==((gn=(sn=(Zt=re==null?void 0:re.nodes)==null?void 0:Zt[0])==null?void 0:sn.properties)==null?void 0:gn.rootNodeUuid)}))==null?void 0:je.filter(St=>{var Zt,sn,gn;return(St==null?void 0:St.startNodeUuid)!==((gn=(sn=(Zt=re==null?void 0:re.nodes)==null?void 0:Zt[0])==null?void 0:sn.properties)==null?void 0:gn.rootNodeUuid)}))==null?void 0:ze.filter(St=>St.type==="\u5305\u542B")),pt=UC(ot),Et=(Je=pt.nodes)==null?void 0:Je.filter((St,Zt,sn)=>Zt===sn.findIndex(gn=>gn.id===St.id)),bt=(qe=pt.edges)==null?void 0:qe.filter((St,Zt,sn)=>Zt===sn.findIndex(gn=>gn.source===St.source&&gn.target===St.target));Et.map(St=>(St.transformd=!0,St.style={labelWordWrap:!0,labelPlacement:St.depth===0?"center":St.depth<3?"top-left":"top",haloLineWidth:Math.max(20-St.depth*6,0),labelMaxWidth:St.depth===0?300:200,labelFontSize:St.depth===0?22:Et.length>300?12:14,labelLineHeight:100,halo:St.depth<3},St)),se.current=null;let Ct=Et==null?void 0:Et.length;se.current=new Ep({container:fe.current,autoResize:!0,background:"#010A23",autoFit:{type:Et.length>50?"view":"center",options:{direction:"both",when:"always"}},animation:!1,padding:50,data:{nodes:Et,edges:bt},node:{type:"circle",style:{size:St=>St.colorType==1?100:St.depth<2?50:Ct>250?10:20,fill:St=>St.newcolor,labelText:St=>St.name,labelFill:"#ffffff"},state:{highlight:{stroke:"transparent"},selected:{stroke:"transparent"},inactive:{fill:St=>St.newcolor,port:!1,labelBackground:!1,halo:!1,badgeBackground:!1}}},edge:{style:{labelBackground:!1,halo:!1,stroke:"#A150CB",strokeOpacity:.5},state:{inactive:{stroke:"#f9f0ff",strokeOpacity:.5,halo:!1,labelBackground:!1,lineWidth:1},highlight:{stroke:"#43E93F",strokeOpacity:1,halo:!1,lineWidth:1},selected:{stroke:"#43E93F",strokeOpacity:1,halo:!1,lineWidth:1},active:{halo:!1},disable:{halo:!1}}},layout:[{type:"dendrogram",radial:!0,nodeSep:40,rankSep:Et.length>250?360:240,direction:"RL",unitRadius:90,linkDistance:200,preventOverlap:!0,maxPreventOverlapIteration:100,strictRadial:!1}],plugins:[{type:"tooltip",enable:St=>St.targetType==="node",getContent:(St,Zt)=>{let sn="";return Zt.forEach(gn=>{sn+=`
${gn.name||""}
`}),sn}}],behaviors:["drag-canvas",{type:"zoom-canvas"},"drag-element",{type:"collapse-expand",onExpand:(St,Zt)=>{console.log("----",St,Zt)}},{type:"fix-element-size",state:"fix-element-size",enable:!0}],transforms:[{type:"place-radial-labels"}]}),se.current.render()}})}return LL.createElement("div",{style:{background:"#fff",height:"800rem"}},LL.createElement("div",{style:{width:"100%",height:"800rem"},ref:fe}))};var dZ=(0,Ce.connect)(({pathsDetail:E,user:a,loading:y,globalSetting:x})=>({pathsDetail:E,user:a,globalSetting:x,loading:y.models.index}))(cZ),fZ=De(44164),hZ=De.n(fZ),ao=De(59301),AZ=Object.defineProperty,gZ=Object.defineProperties,vZ=Object.getOwnPropertyDescriptors,xx=Object.getOwnPropertySymbols,RL=Object.prototype.hasOwnProperty,_L=Object.prototype.propertyIsEnumerable,kL=(E,a,y)=>a in E?AZ(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,vm=(E,a)=>{for(var y in a||(a={}))RL.call(a,y)&&kL(E,y,a[y]);if(xx)for(var y of xx(a))_L.call(a,y)&&kL(E,y,a[y]);return E},mZ=(E,a)=>gZ(E,vZ(a)),pZ=(E,a)=>{var y={};for(var x in E)RL.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&xx)for(var x of xx(E))a.indexOf(x)<0&&_L.call(E,x)&&(y[x]=E[x]);return y},P0=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(se){b(se)}},te=ae=>{try{re(y.throw(ae))}catch(se){b(se)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,te);re((y=y.apply(E,a)).next())});let Hy=[{name:"\u6839\u8282\u70B9",src:"/images/one.svg",color:"#CC7CF5",bordercolor:"#A150CB"},{name:"\u8BFE\u7A0B",src:"/images/kc.svg",color:"#3241F7",bordercolor:"#3437D9"},{name:"\u7AE0\u8282",src:"/images/zj.svg",color:"#5e54e7",bordercolor:"#7f77f9"},{name:"\u77E5\u8BC6\u70B9",src:"/images/zsd.svg",color:"#FFDF55",bordercolor:"#FFD60F"},{name:"\u5B9E\u8BAD",src:"/images/sx.svg",color:"#4E9DFF",bordercolor:"#0882FB"},{name:"\u4F5C\u4E1A",src:"/images/zy.svg",color:"#445DF3",bordercolor:"#3149D5"},{name:"\u89C6\u9891",src:"/images/sp.svg",color:"#6BC4DE",bordercolor:"#339DC4"},{name:"\u8BFE\u4EF6",src:"/images/fj.svg",color:"#6BDE73",bordercolor:"#33C448"},{name:"\u8BD5\u5377",src:"/images/sj.svg",color:"#2D9534",bordercolor:"#077A04"},{name:"\u5176\u4ED6",src:"/images/qt.svg",color:"#2D947C",bordercolor:"#157660"}];const yZ=E=>{var a=E,{pathsDetail:y,user:x,globalSetting:b,loading:z,dispatch:te,uuid:re,Tabsdatas:ae,initdata:se,setactivied:fe,tpacti:pe}=a,be=pZ(a,["pathsDetail","user","globalSetting","loading","dispatch","uuid","Tabsdatas","initdata","setactivied","tpacti"]),Oe,_e,je,ze,Je,qe,ot,pt;const Et=(0,Ne.useRef)(),bt=(0,Ne.useRef)(),Ct=(0,Ne.useRef)(),[St,Zt]=(0,Ne.useState)([]),[sn,gn]=(0,Ne.useState)(!0),[Dn,or]=(0,Ne.useState)([]),[Vn,Dr]=(0,Ne.useState)(""),[sa,vr]=(0,Ne.useState)(!1),mr=(0,Ne.useRef)(null),[Ir,ca]=(0,Ne.useState)(),[pr,Ca]=(0,Ne.useState)(!1),[Fi,Ti]=(0,Ne.useState)([]);let[di,Ha]=(0,Ne.useState)(!1);const[Ii,Hi]=(0,Ne.useState)(!1),[ho,Mo]=(0,Ne.useState)(!1),[zs,As]=(0,Ne.useState)([]),[Bo,ds]=(0,Ne.useState)(!1),[$o,fs]=(0,Ne.useState)([]),[Is]=(0,Ce.useSearchParams)(),[El,cl]=(0,Ne.useState)(!1),[Oo,Zo]=(0,Ne.useState)(0),[$i,Ao]=(0,Ne.useState)("\u5168\u90E8");let[So,rs]=(0,Ne.useState)({page:1,limit:10});const[oo,ws]=(0,Ne.useState)({}),[as,_l]=(0,Ne.useState)([]),ml=(0,Ne.useRef)(null),Cl=(0,Ne.useRef)(null),[au]=me.default.useForm(),[id,lu]=(0,Ne.useState)(!1),[Ch,Df]=(0,Ne.useState)(!1),[tu,nl]=(0,Ne.useState)(!1),Fl=window.ENV==="build"?"/react/build":"";(0,Ne.useEffect)(()=>(di=!1,Ha(!1),Sc(2),ke.ZP.config({getContainer:()=>mr.current}),()=>{gn(!1),or([]),Ca(!1),Dr("")}),[re]);const Xl=()=>ao.createElement("div",{className:Wu.studentHead},ao.createElement("div",{className:Wu.headLi},ao.createElement("img",{src:nt}),ao.createElement("aside",null,ao.createElement("span",null,"\u8D44\u6E90\u603B\u6570"),ao.createElement("b",null,oo==null?void 0:oo.resource_count))),ao.createElement("div",{className:Wu.headLi},ao.createElement("img",{src:kt}),ao.createElement("aside",null,ao.createElement("span",null,"\u5B66\u4E60\u5B8C\u6210\u7387"),ao.createElement("b",{style:{color:"#F7B500"}},oo==null?void 0:oo.complete_rate,"%"))),ao.createElement("div",{className:Wu.headLi},ao.createElement("img",{src:Ht}),ao.createElement("aside",null,ao.createElement("span",null,"\u5B66\u4E60\u638C\u63E1\u7387"),ao.createElement("b",{style:{color:"#3AFFC8"}},oo==null?void 0:oo.grasp_rate,"%"))),ao.createElement("div",{className:Wu.headLi},ao.createElement("img",{src:Ln}),ao.createElement("aside",null,ao.createElement("span",{style:{marginBottom:"10rem"}},"\u4E0A\u6B21\u5B66\u5230"),ao.createElement(mn.Z,{title:oo==null?void 0:oo.last_knowledge_name},ao.createElement("b",{style:{color:"#7FAAFF",fontSize:"16rem"}},(0,Bt.Pq)(oo==null?void 0:oo.last_knowledge_name,13))))),ao.createElement("div",{onClick:()=>handleClickDetails({knowledge_uuid:oo==null?void 0:oo.last_knowledge_uuid}),className:Wu.btn},"\u7EE7\u7EED\u5B66\u4E60")),lc={onRemove:()=>{As([])},beforeUpload:Wo=>{if(console.log(Wo),(Wo==null?void 0:Wo.size)>1024*1024*50)return ke.ZP.info("\u6587\u4EF6\u8D85\u8FC750M\uFF0C\u4E0D\u7B26\u5408\u4E0A\u4F20\u8981\u6C42"),!1;let Bs=[];return Bs.push(Wo),As([...Bs]),!1},fileList:zs,accept:".xls,.xlsx"};(0,Ne.useEffect)(()=>{},[di]),(0,Ne.useEffect)(()=>(window.addEventListener("resize",Jd),()=>{window.removeEventListener("resize",Jd)}),[]);function Jd(){var Wo,Bs;(Bs=(Wo=Et.current)==null?void 0:Wo.update)==null||Bs.call(Wo)}function Sc(Wo){return P0(this,null,function*(){var Bs,Al,rl,Ds,Cc,Yf,Ph,ff,hf,Hl,$l;cl(!0);let Ml=yield(0,ee.ZP)("/api/knowledge/v2/get_node.json",{method:"get",params:{nodeUuid:re,subject_id:(Bs=y==null?void 0:y.detail)==null?void 0:Bs.id,depth:Wo===0?Wo:Wo||-1,relationshipFilter:"\u5305\u542B>"}});if(cl(!1),(Ml==null?void 0:Ml.status)===0){if(Is.get("type")==="classrooms"?te({type:"pathsDetail/getCourseDetail",payload:vm({id:(Al=y==null?void 0:y.detail)==null?void 0:Al.id,knowledge:!0},(0,Bt.oP)())}):te({type:"pathsDetail/getPathsDetail",payload:vm({id:(rl=y==null?void 0:y.detail)==null?void 0:rl.id,knowledge:!0},(0,Bt.oP)())}),di){bt.current.getData();return}gn(!0);let Fg=(0,Bt.fX)((Cc=(Ds=Ml==null?void 0:Ml.data)==null?void 0:Ds.nodes)==null?void 0:Cc.map((Go,Bh)=>{var Ih,Hh,vv,SA,Dx,gs,CA,Mx,Lx,Ox,Tx,mv,Fx,Nx,li,is,al;return mZ(vm(vm({},Go),Go==null?void 0:Go.properties),{rootNodeUuid:(Ih=Go==null?void 0:Go.properties)==null?void 0:Ih.rootNodeUuid,id:(Hh=Go==null?void 0:Go.properties)==null?void 0:Hh.uuid,name:(vv=Go==null?void 0:Go.properties)==null?void 0:vv.name,label:(SA=Go==null?void 0:Go.properties)==null?void 0:SA.name,labelstype:(Dx=Go==null?void 0:Go.labels)==null?void 0:Dx[1],description:(gs=Go==null?void 0:Go.properties)==null?void 0:gs.description,nodeType:(CA=Go==null?void 0:Go.properties)==null?void 0:CA.nodeType,colornodeType:parseInt((Mx=Go==null?void 0:Go.properties)==null?void 0:Mx.color)===1?"\u6839\u8282\u70B9":((Lx=Hy==null?void 0:Hy.find(Fs=>{var Kl;return(Fs==null?void 0:Fs.name)===((Kl=Go==null?void 0:Go.properties)==null?void 0:Kl.nodeType)}))==null?void 0:Lx.name)||"\u5176\u4ED6",newcolor:parseInt((Ox=Go==null?void 0:Go.properties)==null?void 0:Ox.color)===1?"#CC7CF5":((Tx=Hy==null?void 0:Hy.find(Fs=>{var Kl;return(Fs==null?void 0:Fs.name)===((Kl=Go==null?void 0:Go.properties)==null?void 0:Kl.nodeType)}))==null?void 0:Tx.color)||"#2D947C",tags:((mv=Go==null?void 0:Go.properties)==null?void 0:mv.tags)&&((li=(Nx=(Fx=Go==null?void 0:Go.properties)==null?void 0:Fx.tags)==null?void 0:Nx.split("\uFF0C"))==null?void 0:li.map(Fs=>({name:Fs})))||[],colorType:parseInt((is=Go==null?void 0:Go.properties)==null?void 0:is.color)>3?"3":(al=Go==null?void 0:Go.properties)==null?void 0:al.color})}),(Ph=(Yf=Ml==null?void 0:Ml.data)==null?void 0:Yf.relationships)==null?void 0:Ph.filter(Go=>Go.type==="\u5305\u542B"));console.log("----types",Fg,Ml==null?void 0:Ml.data);let gv=UC(Fg),od=(ff=gv.nodes)==null?void 0:ff.filter((Go,Bh,Ih)=>Bh===Ih.findIndex(Hh=>Hh.id===Go.id));Zt(od);let D0=(hf=gv.edges)==null?void 0:hf.filter((Go,Bh,Ih)=>Bh===Ih.findIndex(Hh=>Hh.source===Go.source&&Hh.target===Go.target));od.map(Go=>(Go.transformd=!0,Go.style={labelWordWrap:!0,labelPlacement:Go.depth===0?"center":Go.depth<3?"top-left":"top",haloLineWidth:Math.max(20-Go.depth*6,0),labelMaxWidth:Go.depth===0?300:200,labelFontSize:Go.depth===0?22:od.length>300?12:14,labelLineHeight:100,halo:Go.depth<3},Go)),Ct.current=null;let M0=od==null?void 0:od.length;Ct.current=new Ep({container:Cl.current,autoResize:!0,background:"#010A23",autoFit:{type:od.length>50?"view":"center",options:{direction:"both",when:"always"}},animation:!1,padding:50,data:{nodes:od,edges:D0},node:{type:"circle",style:{size:Go=>Go.colorType==1?100:Go.depth<2?50:M0>250?10:20,fill:Go=>Go.newcolor,labelText:Go=>Go.name,labelFill:"#ffffff"},state:{highlight:{stroke:"transparent"},selected:{stroke:"transparent"},inactive:{fill:Go=>Go.newcolor,port:!1,labelBackground:!1,halo:!1,badgeBackground:!1}}},edge:{style:{labelBackground:!1,halo:!1,stroke:"#A150CB",strokeOpacity:.5},state:{inactive:{stroke:"#f9f0ff",strokeOpacity:.5,halo:!1,labelBackground:!1,lineWidth:1},highlight:{stroke:"#43E93F",strokeOpacity:1,halo:!1,lineWidth:1},selected:{stroke:"#43E93F",strokeOpacity:1,halo:!1,lineWidth:1},active:{halo:!1},disable:{halo:!1}}},layout:[{type:"dendrogram",radial:!0,nodeSep:40,rankSep:od.length>250?360:240,direction:"RL",unitRadius:90,linkDistance:200,preventOverlap:!0,maxPreventOverlapIteration:100,strictRadial:!1}],plugins:[{type:"tooltip",enable:Go=>Go.targetType==="node",getContent:(Go,Bh)=>{let Ih="";return Bh.forEach(Hh=>{Ih+=`
${Hh.name||""}
`}),Ih}}],behaviors:["drag-canvas",{type:"zoom-canvas",onFinish:()=>{setTimeout(()=>{var Go;Zo((((Go=Ct==null?void 0:Ct.current)==null?void 0:Go.getZoom())*100).toFixed(0))},300)}},"drag-element",{type:"collapse-expand",onExpand:(Go,Bh)=>{console.log("----",Go,Bh)}},{type:"fix-element-size",state:"fix-element-size",enable:!0},{type:"click-select",state:"selected",onClick:Go=>{ml.current?(clearTimeout(ml.current),ml.current=null):ml.current=setTimeout(()=>{let Bh=od.filter(Ih=>{var Hh,vv;return(Ih==null?void 0:Ih.id)===((vv=(Hh=Go.target)==null?void 0:Hh.config)==null?void 0:vv.id)});if((Bh==null?void 0:Bh.length)===0){Ca(!1);return}ca(Bh==null?void 0:Bh[0]),Ca(!0),Go.view.setCursor("pointer"),ml.current=null},300)},multiple:!1},{type:"hover-activate",enable:Go=>Go.targetType==="node",degree:1,state:"highlight",direction:"both",inactiveState:"inactive",onHover:Go=>{Go.view.setCursor("pointer")},onHoverEnd:Go=>{Go.view.setCursor("default")}}],transforms:[{type:"place-radial-labels"}]}),Ct.current.render(),Cl.current.style.opacity=1,(Hl=Ct==null?void 0:Ct.current)==null||Hl.fitView(),setTimeout(()=>{var Go;Zo((((Go=Ct==null?void 0:Ct.current)==null?void 0:Go.getZoom())*100).toFixed(0))},300);var Gu=Ct.current.getOptions();setTimeout(()=>{Gu.animation=!0,Ct.current.setOptions(Gu)},2500),window.graphsRef=Ct.current}let Tc=yield(0,ee.ZP)("/api/knowledge_items.json",{method:"get",params:{item_type:3,subject_id:($l=y==null?void 0:y.detail)==null?void 0:$l.id}});(Tc==null?void 0:Tc.status)===0&&_l(Tc==null?void 0:Tc.data)})}const mm=(Wo,Bs)=>{if(Ct.current){if(di){bt.current.onMouse(Wo,Bs.name);return}try{const Al={},rl={};Ct.current.getEdgeData().map(Ds=>{Al[Ds.id]=Wo==="Enter"?"inactive":"active"}),Ct.current.getNodeData().map(Ds=>{Wo==="Enter"?rl[Ds.id]=Ds.colornodeType===Bs.name?"highlight":"inactive":rl[Ds.id]="active"}),Ct.current.setElementState(Al),Ct.current.setElementState(rl)}catch(Al){}}},pm=(Wo,Bs)=>{if(Ct.current){if(di){bt.current.onMouse(Wo,Bs.name);return}try{const Al={},rl={};Ct.current.getEdgeData().map(Ds=>{Al[Ds.id]=Wo==="Enter"?"inactive":"active"}),Ct.current.getNodeData().map(Ds=>{var Cc,Yf;Wo==="Enter"?rl[Ds.id]=(Yf=(Cc=Ds.tags)==null?void 0:Cc.map(Ph=>Ph==null?void 0:Ph.name))!=null&&Yf.includes(Bs.name)?"highlight":"inactive":rl[Ds.id]="active"}),Ct.current.setElementState(Al),Ct.current.setElementState(rl)}catch(Al){}}};return ao.createElement(ue.Z,{spinning:El},ao.createElement("div",{ref:mr,style:{background:"#010A23",height:"100vh",overflow:"hidden",position:"relative"}},ao.createElement("div",{style:{color:"#fff",display:"flex",alignItems:"center",marginLeft:"10rem",position:"fixed",bottom:"30px",zIndex:1}},(Oe=Hy.filter(Wo=>{var Bs;return(Bs=St==null?void 0:St.map(Al=>Al==null?void 0:Al.colornodeType))==null?void 0:Bs.includes(Wo==null?void 0:Wo.name)}))==null?void 0:Oe.map(Wo=>ao.createElement("div",{onMouseLeave:()=>mm("Leave",Wo),onMouseEnter:()=>mm("Enter",Wo),style:{display:"flex",alignItems:"center",margin:"0 2px",cursor:"pointer"}},ao.createElement("span",{style:{display:"inline-flex",marginLeft:"10rem",width:"20rem",height:"20rem",borderRadius:"50%",background:Wo.color}}),ao.createElement("span",{style:{marginLeft:"5rem"}},Wo==null?void 0:Wo.name)))),ao.createElement("div",{style:{color:"#fff",display:"flex",alignItems:"center",marginLeft:"10rem",position:"fixed",bottom:"30px",zIndex:1,right:40}},ao.createElement(cn.Z,{overlayClassName:Wu.dropdownst,getPopupContainer:()=>mr.current,menu:{items:[{label:ao.createElement("div",{onClick:()=>{Sc()}},"\u5C55\u5F00\u5168\u90E8"),key:"1"},{label:ao.createElement("div",{onClick:()=>{Sc(3)}},"\u5C55\u5F003\u5C42"),key:"2"},{label:ao.createElement("div",{onClick:()=>{Sc(2)}},"\u5C55\u5F002\u5C42"),key:"3"},{label:ao.createElement("div",{onClick:()=>{Sc(1)}},"\u5C55\u5F001\u5C42"),key:"4"},{label:ao.createElement("div",{onClick:()=>{Sc(0)}},"\u6536\u8D77\u5168\u90E8"),key:"5"}]}},ao.createElement("img",{style:{cursor:"pointer"},onClick:()=>{},src:tu===7?`${Fl}/images/xscjxz.png`:`${Fl}/images/xscj.png`,onMouseOut:()=>{nl(!1)},onMouseOver:()=>{nl(7)}})),ao.createElement(mn.Z,{title:"\u5C45\u4E2D\u663E\u793A"},ao.createElement("img",{onClick:()=>{gn(!1),Sc()},style:{marginLeft:"10rem",cursor:"pointer"},src:tu===8?`${Fl}/images/jzxsxz.png`:`${Fl}/images/jzxs.png`,onMouseOut:()=>{nl(!1)},onMouseOver:()=>{nl(8)},className:Wu.img})),ao.createElement("div",{style:{marginLeft:"10rem",background:"#202F4F",borderRadius:"4px",alignItems:"center"}},ao.createElement("img",{style:{cursor:"pointer"},onClick:()=>{di?(bt.current.zoomBy(.9),bt.current.getZooms()):(Ct.current.zoomBy(.9),setTimeout(()=>{var Wo;Zo((((Wo=Ct==null?void 0:Ct.current)==null?void 0:Wo.getZoom())*100).toFixed(0))},300))},src:tu===9?`${Fl}/images/newsxxz.png`:`${Fl}/images/newsx.png`,onMouseOut:()=>{nl(!1)},onMouseOver:()=>{nl(9)}}),ao.createElement("span",{style:{display:"inline-flex",width:"46px",justifyContent:"center"},onClick:()=>{}}," ",Oo+"%"),ao.createElement("img",{style:{cursor:"pointer"},onClick:()=>{di?(bt.current.zoomBy(1.1),bt.current.getZooms()):(Ct.current.zoomBy(1.1),setTimeout(()=>{var Wo;Zo((((Wo=Ct==null?void 0:Ct.current)==null?void 0:Wo.getZoom())*100).toFixed(0))},300))},src:tu===12?`${Fl}/images/newfdxz.png`:`${Fl}/images/newfd.png`,onMouseOut:()=>{nl(!1)},onMouseOver:()=>{nl(12)}}))),ao.createElement("div",{style:{display:"flex",justifyContent:"start",width:"1840rem",left:"40rem",paddingTop:"25rem",position:"absolute",zIndex:1}},ao.createElement("span",{className:Wu.tupugx,onClick:()=>{fe()}},ao.createElement("img",{src:`${Fl}/images/tpgx.svg`,style:{marginRight:"10rem",width:"16rem"}}),"\u56FE\u8C31\u5173\u7CFB"),ao.createElement("div",{className:Wu.autocomp},sn&&ao.createElement("div",{style:{display:"flex",alignItems:"center"}},ao.createElement(ba.Z,{className:Wu.autocompwidth,options:Dn,popupClassName:Wu.autopop,getPopupContainer:()=>mr.current,value:Vn,onSelect:(Wo,Bs)=>{var Al;if(Dr(St.find(rl=>rl.id===Wo).name),ca(St.find(rl=>rl.id===Wo)),Ca(!0),di)bt.current.selectall(Wo);else{let rl=Ct.current.getElementDataByState("node","selected");(rl==null?void 0:rl.length)>0&&Ct.current.setElementState((Al=rl==null?void 0:rl[0])==null?void 0:Al.id,[""]),Ct.current.setElementState(Wo,["selected"])}},onChange:Wo=>{Dr(Wo)},onSearch:Wo=>{or(()=>{var Bs,Al,rl;return $i==="\u5168\u90E8"?(Bs=St==null?void 0:St.filter(Ds=>Ds.name.includes(Wo)))==null?void 0:Bs.map(Ds=>({label:ao.createElement("div",{style:{display:"flex",alignItems:"center"}},ao.createElement("span",{style:{marginRight:"10rem",height:"20rem",lineHeight:"20rem",padding:"0rem 6rem",color:"#fff",fontSize:"12rem",background:"#1890FF",borderRadius:"2rem"}},Ds==null?void 0:Ds.nodeType)," ",ao.createElement("div",{style:{color:"#fff"},dangerouslySetInnerHTML:{__html:Ds==null?void 0:Ds.name.replaceAll(Wo,`${Wo}`)}})),value:Ds==null?void 0:Ds.id})):(rl=(Al=St==null?void 0:St.filter(Ds=>{var Cc;return(Cc=Ds==null?void 0:Ds.tags)==null?void 0:Cc.find(Yf=>Yf.name===$i)}))==null?void 0:Al.filter(Ds=>Ds.name.includes(Wo)))==null?void 0:rl.map(Ds=>({label:ao.createElement("div",{style:{display:"flex",alignItems:"center"}},ao.createElement("span",{style:{marginRight:"10rem",height:"20rem",padding:"2rem 6rem",color:"#fff",fontSize:"12rem",background:"#1890FF",borderRadius:"2rem"}},Ds==null?void 0:Ds.nodeType)," ",ao.createElement("div",{style:{color:"#fff"},dangerouslySetInnerHTML:{__html:Ds==null?void 0:Ds.name.replaceAll(Wo,`${Wo}`)}})),value:Ds==null?void 0:Ds.id}))})}},ao.createElement(xe.default,{placeholder:"\u8BF7\u8F93\u5165\u5173\u952E\u8BCD\u641C\u7D22",addonBefore:ao.createElement(cn.Z,{overlayClassName:Wu.dropdownst,menu:{items:[{label:ao.createElement("div",{onClick:()=>{Ao("\u5168\u90E8"),pm("\u5168\u90E8","")}},"\u5168\u90E8"),key:"1"},...as==null?void 0:as.map(Wo=>({label:ao.createElement("div",{onClick:()=>{Ao(Wo.name),pm("Enter",Wo)}},Wo==null?void 0:Wo.name),key:Wo.id}))]}},ao.createElement("div",{style:{display:"flex",alignItems:"center"}},ao.createElement("div",{className:Wu.textname,style:{width:"60rem"}},$i),ao.createElement("div",{style:{height:"22rem",background:"linear-gradient( 180deg, rgba(255,255,255,0) 0%, #AEAEAE 52%, rgba(255,255,255,0) 100%)",width:"1rem"}})))})))),ao.createElement("div",{style:{display:"flex",position:"absolute",right:"0rem",zIndex:"3"}},((_e=y==null?void 0:y.detail)==null?void 0:_e.sync_uuid)&&((je=y==null?void 0:y.detail)==null?void 0:je.sync_uuid)===re&&((ze=y==null?void 0:y.detail)==null?void 0:ze.can_managed)&&ao.createElement(mn.Z,{title:"\u540C\u6B65"},ao.createElement("img",{className:"current",onClick:(0,Xf.debounce)(()=>{Pe.default.confirm({title:"\u63D0\u793A",icon:null,centered:!0,getContainer:()=>mr.current,content:"\u8BF7\u786E\u5B9A\u662F\u5426\u5C06\u540C\u6B65\u8BFE\u7A0B\u7AE0\u8282\u5185\u5BB9\uFF0C\u66F4\u65B0\u540E\u539F\u6709\u77E5\u8BC6\u56FE\u8C31\u5185\u5BB9\u5C06\u88AB\u8986\u76D6\uFF0C\u8986\u76D6\u540E\u53EF\u5728\u7248\u672C\u7BA1\u7406\u4E2D\u9009\u62E9\u6062\u590D\u3002",onOk:()=>P0(void 0,null,function*(){var Wo,Bs;const Al=(Wo=ae==null?void 0:ae.find(Ds=>(Ds==null?void 0:Ds.uuid)===re))==null?void 0:Wo.name;let rl=yield(0,ee.ZP)("/api/knowledge/v2/sync.json",{method:"post",body:{subject_id:(Bs=y==null?void 0:y.detail)==null?void 0:Bs.id,uuid:re,name:Al}});rl.status===0&&ke.ZP.info(rl==null?void 0:rl.message)})})},500),src:tu===1?`${Fl}/images/gxxz.png`:`${Fl}/images/gx.png`,onMouseOut:()=>{nl(!1)},onMouseOver:()=>{nl(1)},style:{width:"40rem",height:"40rem",marginRight:"15rem",marginTop:"5rem"}})),((Je=y==null?void 0:y.detail)==null?void 0:Je.can_managed)&&ao.createElement("div",{className:Wu.hoverone},ao.createElement("div",{onClick:()=>P0(void 0,null,function*(){var Wo;let Bs=yield(0,ee.ZP)("/api/knowledge/v2/backup.json",{method:"POST",body:{subject_id:(Wo=y==null?void 0:y.detail)==null?void 0:Wo.id,parentNodeUuid:re}});(Bs==null?void 0:Bs.status)===0&&ke.ZP.info("\u56FE\u8C31\u4FDD\u5B58\u6210\u529F")})},ao.createElement("img",{src:tu===2?`${Fl}/images/bcbbxz.png`:`${Fl}/images/bcbb.png`,onMouseOut:()=>{nl(!1)},onMouseOver:()=>{nl(2)}}),ao.createElement("div",{className:Wu.name},"\u4FDD\u5B58\u7248\u672C")),ao.createElement("div",{onClick:()=>P0(void 0,null,function*(){var Wo;So.page=1,So.limit=10;let Bs=yield(0,ee.ZP)("/api/knowledge/v2/knowledge_histories.json",{mehtod:"get",params:vm({subject_id:(Wo=y==null?void 0:y.detail)==null?void 0:Wo.id,nodeUuid:re},So)});rs(So),(Bs==null?void 0:Bs.status)===0&&(ds(!0),fs(Bs))})},ao.createElement("img",{src:tu===3?`${Fl}/images/qhbbxz.png`:`${Fl}/images/qhbb.png`,onMouseOut:()=>{nl(!1)},onMouseOver:()=>{nl(3)},className:Wu.img}),ao.createElement("div",{className:Wu.name},"\u5207\u6362\u7248\u672C"))),ao.createElement("div",{className:Wu.hoverone},ao.createElement("div",{onClick:()=>{di=!1,Ha(!1),gn(!1),Sc()}},ao.createElement("img",{src:tu===4?`${Fl}/images/gxtxz.png`:`${Fl}/images/gxt.png`,onMouseOut:()=>{nl(!1)},onMouseOver:()=>{nl(4)}}),ao.createElement("div",{className:Wu.name},"\u5173\u7CFB\u56FE")),ao.createElement("div",{onClick:()=>{di=!0,Ha(!0)}},ao.createElement("img",{src:tu===5?`${Fl}/images/zssxz.png`:`${Fl}/images/zss.png`,onMouseOut:()=>{nl(!1)},onMouseOver:()=>{nl(5)},className:Wu.img}),ao.createElement("div",{className:Wu.name},"\u77E5\u8BC6\u6811"))),ao.createElement(mn.Z,{title:"\u5168\u5C4F"},ao.createElement("img",{className:"current",onClick:()=>{var Wo,Bs,Al,rl;(0,WC.vp)()?(vr(!1),(0,WC.BU)(),!di&&sn?(Wo=Ct==null?void 0:Ct.current)==null||Wo.fitCenter():(Bs=bt==null?void 0:bt.current)==null||Bs.fitView()):(vr(!0),(0,WC.Dj)(mr.current),!di&&sn?(Al=Ct==null?void 0:Ct.current)==null||Al.fitCenter():(rl=bt==null?void 0:bt.current)==null||rl.fitView())},src:tu===6?`${Fl}/images/qpxz.png`:`${Fl}/images/qp.png`,onMouseOut:()=>{nl(!1)},onMouseOver:()=>{nl(6)},style:{width:"40rem",height:"40rem",marginRight:"15rem",marginTop:"5rem"}})),((qe=y==null?void 0:y.detail)==null?void 0:qe.can_managed)&&ao.createElement("div",{className:Wu.hoverone,style:{marginRight:"0rem"}},ao.createElement("div",{onClick:()=>{Hi(!0)}},ao.createElement("img",{src:tu===10?`${Fl}/images/drxz.png`:`${Fl}/images/dr.png`,onMouseOut:()=>{nl(!1)},onMouseOver:()=>{nl(10)}}),ao.createElement("div",{className:Wu.name},"\u5BFC\u5165")),ao.createElement("div",{onClick:()=>{lu(!0)}},ao.createElement("img",{src:tu===11?`${Fl}/images/dcxz.png`:`${Fl}/images/dc.png`,onMouseOut:()=>{nl(!1)},onMouseOver:()=>{nl(11)},className:Wu.img}),ao.createElement("div",{className:Wu.name},"\u5BFC\u51FA"))))),sn&&!di&&ao.createElement("div",{style:{width:"100%",height:"100vh",opacity:0},ref:Cl}),ao.createElement("div",{id:"myDiagramDiv",style:{height:"100vh",width:"100%",visibility:di?"visible":"hidden"}},di?ao.createElement(rZ,{ref:bt,setzoomsize:Zo,setshowdetail:Ca,setitems:ca,nodeUuid:re,subject_id:(ot=y==null?void 0:y.detail)==null?void 0:ot.id}):""),ao.createElement(Er,{tpacti:pe,initdata:se,uuid:re,Tabsdatas:ae,setshow:gn,getData:Sc,containerRef:mr,showdetail:pr,setshowdetail:Ca,items:Ir}),ao.createElement(Pe.default,{title:"\u6587\u4EF6\u5BFC\u5165",open:Ii,centered:!0,getContainer:()=>mr.current,okButtonProps:{loading:ho},onCancel:()=>{Hi(!1),As([])},onOk:()=>P0(void 0,null,function*(){var Wo,Bs,Al,rl;const Ds=new FormData;if(zs.length>0)Ds.append("file",zs[0]);else{ke.ZP.warning("\u8BF7\u9009\u62E9\u6587\u4EF6");return}Mo(!0),Ds.append("subject_id",((Wo=y.detail)==null?void 0:Wo.id)+""),Ds.append("parentNodeUuid",re);let Cc=yield(0,ee.ZP)("/api/knowledge/v2/import.json",{method:"post",body:Ds},!0);Mo(!1),(Cc==null?void 0:Cc.status)===0&&((Bs=Cc==null?void 0:Cc.data)!=null&&Bs.importErrorFilePath?Pe.default.confirm({icon:null,title:"\u5BFC\u5165\u5931\u8D25",centered:!0,content:ao.createElement("span",null,"\u68C0\u6D4B\u5230\u672C\u6B21\u5BFC\u5165\u5B58\u5728\u4E0D\u7B26\u5408\u8981\u6C42\u7684\u6570\u636E\uFF0C\u70B9\u51FB\u4E0B\u8F7D",ao.createElement("a",{href:`${ar.Z.API_SERVER}${(Al=Cc==null?void 0:Cc.data)==null?void 0:Al.importErrorFilePath}`,download:"\u5931\u8D25\u6570\u636E.xlsx"},"\u5BFC\u5165\u5931\u8D25\u7684\u6570\u636E"),"\u67E5\u770B")}):(Sc(),gn(!1),(rl=Cc==null?void 0:Cc.data)!=null&&rl.has_route?ke.ZP.info("\u77E5\u8BC6\u56FE\u8C31\u6570\u636E\u5BFC\u5165\u6210\u529F\uFF0C\u4E3A\u4FDD\u8BC1\u5B66\u4E60\u8DEF\u5F84\u7684\u8282\u70B9\u4E0E\u77E5\u8BC6\u56FE\u8C31\u8282\u70B9\u7ED1\u5B9A\uFF0C\u8BF7\u66F4\u65B0\u5B66\u4E60\u8DEF\u5F84"):ke.ZP.info("\u5BFC\u5165\u6210\u529F"),As([]),ca({}),Hi(!1)))})},(St==null?void 0:St.length)>0&&ao.createElement("div",{style:{marginBottom:30,color:"#333333"}},"\u68C0\u6D4B\u5F53\u524D\u5DF2\u5B58\u5728\u6570\u636E\uFF0C\u5BFC\u5165\u540E\u539F\u6570\u636E\u5C06\u4F1A\u88AB\u8986\u76D6\uFF0C\u6309\u7167\u6700\u65B0\u5BFC\u5165\u7684\u4E3A\u4E3B\uFF0C\u5982\u9700\u7EE7\u7EED\u5BFC\u5165\uFF0C\u8BF7\u6309\u7167\u4E0B\u65B9\u6B65\u9AA4\u8FDB\u884C"),ao.createElement("p",{style:{color:"#5F6368"}},"\u6B65\u9AA41\uFF1A",ao.createElement("span",{style:{color:"#000000"}},"\u4E0B\u8F7D"),ao.createElement("a",{href:`${ar.Z.API_SERVER}/api/knowledge/v2/down_template.json`,download:"\u6A21\u7248.xlsx"},"\u77E5\u8BC6\u56FE\u8C31\u5BFC\u5165\u6A21\u7248")),ao.createElement(ua.Z,null,ao.createElement(wt.Z,{style:{color:"#5F6368"}},"\u6B65\u9AA42\uFF1A",ao.createElement("span",{style:{color:"#000000"}},"\u4E0A\u4F20\u586B\u5199\u597D\u7684\u300A\u77E5\u8BC6\u56FE\u8C31\u5BFC\u5165\u6A21\u7248\u300B"))),ao.createElement(ua.Z,{style:{marginTop:10,marginLeft:50}},ao.createElement(Ns.default,vm({},lc),ao.createElement("span",{style:{padding:"0px 16px",color:"#1b8565",cursor:"pointer",height:32,alignItems:"center",display:"inline-flex",borderRadius:2,border:"1px solid #1b8565",background:"#1b8565 linear-gradient(180deg, #FFFFFF 0%, #F6F7F9 100%)",boxShadow:"0px 2px 4px 0px #E0DFE1, inset 0px 1px 3px 0px rgba(255,255,255,0.5)"}},ao.createElement("i",{style:{fontSize:12,marginRight:6},className:"iconfont icon-tianjiashitixiaojiahao"})," \u9009\u62E9\u6587\u4EF6")))),ao.createElement(yn,null,ao.createElement(ao.Fragment,null,ao.createElement(Pe.default,{title:"\u7248\u672C\u8BB0\u5F55",centered:!0,width:1200,open:Bo,footer:!1,getContainer:()=>mr.current,onCancel:()=>{ds(!1)}},ao.createElement(du.default,{dataSource:$o==null?void 0:$o.data,pagination:!1,columns:[{title:"\u7248\u672C\u4FDD\u5B58\u65F6\u95F4",dataIndex:"created_at",ellipsis:!0,key:"created_at",render:(Wo,Bs)=>ao.createElement("div",null,ao.createElement("span",null,Wo),(Bs==null?void 0:Bs.is_now_version)&&ao.createElement("span",{style:{background:"#2BAC8E",padding:"4rem",fontSize:"12rem",marginLeft:"5rem",color:"#fff"}},"\u5F53\u524D\u4F7F\u7528\u7248\u672C"))},{title:"\u4FDD\u5B58\u4EBA",dataIndex:"username",ellipsis:!0,key:"username"},{title:"\u64CD\u4F5C",dataIndex:"name",ellipsis:!0,key:"name",render:(Wo,Bs)=>ao.createElement("div",null,ao.createElement("span",{style:{color:"#1B8565",marginRight:"30rem",cursor:"pointer"},onClick:()=>P0(void 0,null,function*(){var Al,rl;let Ds=yield(0,ee.ZP)(`${Bs==null?void 0:Bs.url}`,{method:"get"});(Ds==null?void 0:Ds.status)===0&&((rl=(Al=Ds==null?void 0:Ds.data)==null?void 0:Al.nodes)==null?void 0:rl.length)>0&&Ti(Ds==null?void 0:Ds.data)})},"\u67E5\u770B"),ao.createElement("span",{onClick:()=>P0(void 0,null,function*(){var Al;if(Bs!=null&&Bs.is_now_version)return;let rl=yield(0,ee.ZP)("/api/knowledge/v2/restore.json",{method:"post",body:{subject_id:(Al=y==null?void 0:y.detail)==null?void 0:Al.id,backupFilePath:Bs==null?void 0:Bs.backupFilePath}});(rl==null?void 0:rl.status)===0&&(Sc(),ds(!1),gn(!1),ke.ZP.info("\u5207\u6362\u6210\u529F"))}),style:{color:Bs!=null&&Bs.is_now_version?"#999999":"#1B8565",cursor:"pointer"}},"\u5207\u6362\u81F3\u5F53\u524D\u7248\u672C"))}]}),ao.createElement(Rn.Z,{hideOnSinglePage:!0,style:{marginTop:"20rem"},pageSize:So.limit,total:$o==null?void 0:$o.total_count,current:So.page,onChange:(Wo,Bs)=>P0(void 0,null,function*(){var Al;So.page=Wo,So.limit=Bs,rs(So);let rl=yield(0,ee.ZP)("/api/knowledge/v2/knowledge_histories.json",{mehtod:"get",params:vm({subject_id:(Al=y==null?void 0:y.detail)==null?void 0:Al.id,nodeUuid:re},So)});(rl==null?void 0:rl.status)===0&&(ds(!0),fs(rl))})})),ao.createElement(Pe.default,{open:((pt=Fi==null?void 0:Fi.nodes)==null?void 0:pt.length)>0,title:"\u5386\u53F2\u56FE\u8C31",width:"1200rem",footer:null,getContainer:()=>mr.current,destroyOnClose:!0,onCancel:()=>{Ti({})}},ao.createElement(dZ,{datas:Fi})),ao.createElement(Pe.default,{open:id,title:"\u5BFC\u51FA",width:800,centered:!0,onCancel:()=>{lu(!1)},confirmLoading:Ch,onOk:()=>{au.submit()}},ao.createElement(me.default,{initialValues:{export:"xlsx"},form:au,onFinish:Wo=>P0(void 0,null,function*(){var Bs,Al,rl,Ds,Cc,Yf,Ph;if(Df(!0),Wo.export=="pdf"){const ff=yield(0,Bt.Hi)(Ct.current,{type:"image/webp",encoderOptions:1}),hf=document.createElement("img");hf.src=ff,yield hZ()().set({filename:`${(Bs=y==null?void 0:y.detail)==null?void 0:Bs.name}_${(Al=ae==null?void 0:ae.find(Hl=>(Hl==null?void 0:Hl.uuid)===re))==null?void 0:Al.name}_${tn()().format("YYYYMMDD_HHmmss")}.pdf`,image:{type:"png",quality:.95},html2canvas:{scale:5,letterRendering:!0,useCORS:!0,allowTaint:!1}}).from(hf).toPdf().save(),Df(!1);return}if(Wo.export=="html"){let ff=function(Tc){return new Promise((Fg,gv)=>{const od=new FileReader;od.onload=()=>{var D0;const M0=(D0=od.result)==null?void 0:D0.split(",")[1];Fg(M0)},od.onerror=gv,od.readAsDataURL(Tc)})};const hf=yield(0,Bt.Hi)(Ct.current,{type:"image/webp",encoderOptions:1},!1),Hl=yield ff(hf),$l=` @@ -286,7 +286,7 @@ YYYY`):Sh(y,"MM\u6708");case"year":return Sh(y,"YYYY");default:return Sh(y,"YYYY - `,Ml=new Blob([$l],{type:"text/html"}),Gu=URL.createObjectURL(Ml);(0,Bt.FH)(`${(Cc=y==null?void 0:y.detail)==null?void 0:Cc.name}_${(Yf=ae==null?void 0:ae.find(Tc=>(Tc==null?void 0:Tc.uuid)===re))==null?void 0:Yf.name}_${tn()().format("YYYYMMDD_HHmmss")}.html`,Gu),Df(!1);return}(0,Bt.FH)("",ar.Z.API_SERVER+`/api/knowledge/v2/export.json?subject_id=${(Ph=y==null?void 0:y.detail)==null?void 0:Ph.id}&fileType=${Wo.export}&parentNodeUuid=${re}`),Df(!1)})},ao.createElement(me.default.Item,{name:"export",label:"\u5BFC\u51FA\u683C\u5F0F",rules:[{required:!0,message:"\u8BF7\u9009\u62E9\u5BFC\u51FA\u683C\u5F0F"}]},ao.createElement(Ae.ZP.Group,{className:Wu.RadioGroupStyle,defaultValue:"xlsx",options:[{value:"xlsx",label:"Excel"},{value:"owl",label:"OWL"},{value:"rdf",label:"RDF"},{value:"xml",label:"XML"},{value:"html",label:"HTML"},{value:"pdf",label:"PDF"}]}))))))))};var EZ=(0,Ce.connect)(({pathsDetail:E,user:a,loading:y,globalSetting:x})=>({pathsDetail:E,user:a,globalSetting:x,loading:y.models.index}))(yZ),B0={wrap:"wrap___HuFFi",add:"add___GrP2R",dimensionalBall:"dimensionalBall___flm6B",archer:"archer___biVqC",svg:"svg___hXxGw",modal:"modal___DR9M_",mHead:"mHead___I923K",form:"form___W2fTe",mType:"mType___hoISa",listItem:"listItem___JCZwd"},eg={flex_box_center:"flex_box_center___aEG4A",flex_space_between:"flex_space_between___O70yE",flex_box_vertical_center:"flex_box_vertical_center___rEvY1",flex_box_center_end:"flex_box_center_end___Xp3ui",flex_box_column:"flex_box_column___McZmY",largeBall:"largeBall___SbxSR",middleBall:"middleBall___eKLzh",smallBall:"smallBall___r7xv5",largeBallDish:"largeBallDish___EeTGm",middleBallDish:"middleBallDish___hca4h",smallBallDish:"smallBallDish___rrHxf",smallBallGather:"smallBallGather___hHHqa",box:"box___yWjPn",spectrum:"spectrum___r9a7p",pedestal:"pedestal___Grjvz",spectrumHover:"spectrumHover___OibBM",pedestalHover:"pedestalHover___EcKUJ"};const xZ="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMjkxcHgiIGhlaWdodD0iMTk0cHgiIHZpZXdCb3g9IjAgMCAyOTEgMTk0IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPgogICAgPCEtLSBHZW5lcmF0b3I6IFNrZXRjaCA2MSAoODk1ODEpIC0gaHR0cHM6Ly9za2V0Y2guY29tIC0tPgogICAgPHRpdGxlPuWfuuW6pzwvdGl0bGU+CiAgICA8ZGVzYz5DcmVhdGVkIHdpdGggU2tldGNoLjwvZGVzYz4KICAgIDxkZWZzPgogICAgICAgIDxsaW5lYXJHcmFkaWVudCB4MT0iMjcuNzcyODY0MyUiIHkxPSI0My4xNzgwNjE3JSIgeDI9Ijk3LjIyMjIyMjIlIiB5Mj0iNTAlIiBpZD0ibGluZWFyR3JhZGllbnQtMSI+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiMzMTdDRDMiIG9mZnNldD0iMCUiPjwvc3RvcD4KICAgICAgICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iIzI3MkE5NSIgb2Zmc2V0PSIxMDAlIj48L3N0b3A+CiAgICAgICAgPC9saW5lYXJHcmFkaWVudD4KICAgICAgICA8bGluZWFyR3JhZGllbnQgeDE9IjE0LjI3MTI2ODMlIiB5MT0iMzEuNjQ0NzI5NyUiIHgyPSIxMDAlIiB5Mj0iNzMuMTEyMDA3OCUiIGlkPSJsaW5lYXJHcmFkaWVudC0yIj4KICAgICAgICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iIzI3NzFEQiIgb2Zmc2V0PSIwJSI+PC9zdG9wPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjMjg0REIwIiBvZmZzZXQ9IjEwMCUiPjwvc3RvcD4KICAgICAgICA8L2xpbmVhckdyYWRpZW50PgogICAgICAgIDxsaW5lYXJHcmFkaWVudCB4MT0iMTAwJSIgeTE9IjM1LjA0MTMwMTklIiB4Mj0iMCUiIHkyPSI2NS41NDY3MzEzJSIgaWQ9ImxpbmVhckdyYWRpZW50LTMiPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjMzA2NkI0IiBvZmZzZXQ9IjAlIj48L3N0b3A+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiMxNDM4OTQiIG9mZnNldD0iMTAwJSI+PC9zdG9wPgogICAgICAgIDwvbGluZWFyR3JhZGllbnQ+CiAgICAgICAgPGxpbmVhckdyYWRpZW50IHgxPSIyNy43NzI4NjQzJSIgeTE9IjQzLjE1NTA2NzMlIiB4Mj0iOTcuMjIyMjIyMiUiIHkyPSI1MCUiIGlkPSJsaW5lYXJHcmFkaWVudC00Ij4KICAgICAgICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iIzMxN0NEMyIgb2Zmc2V0PSIwJSI+PC9zdG9wPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjMjcyQTk1IiBvZmZzZXQ9IjEwMCUiPjwvc3RvcD4KICAgICAgICA8L2xpbmVhckdyYWRpZW50PgogICAgICAgIDxsaW5lYXJHcmFkaWVudCB4MT0iMCUiIHkxPSI1MCUiIHgyPSI1MCUiIHkyPSI2NC4yMTc0OTQ1JSIgaWQ9ImxpbmVhckdyYWRpZW50LTUiPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjMkY3MEM5IiBvZmZzZXQ9IjAlIj48L3N0b3A+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiM1QjVGRkYiIG9mZnNldD0iMTAwJSI+PC9zdG9wPgogICAgICAgIDwvbGluZWFyR3JhZGllbnQ+CiAgICAgICAgPHBvbHlnb24gaWQ9InBhdGgtNiIgcG9pbnRzPSIxNDQuNzQ1OSAxNi40Njc5NzAxIDI2MC4xMzI5MzUgNzIuOTI3OTU1NiAxNDYuMTg4MjM4IDEzOC43NTc4OTYgMzAuODAxMjAzMyA3Mi4yMDcxODk5Ij48L3BvbHlnb24+CiAgICAgICAgPGZpbHRlciB4PSItMS41JSIgeT0iLTIuOSUiIHdpZHRoPSIxMDMuMSUiIGhlaWdodD0iMTA1LjclIiBmaWx0ZXJVbml0cz0ib2JqZWN0Qm91bmRpbmdCb3giIGlkPSJmaWx0ZXItNyI+CiAgICAgICAgICAgIDxmZUdhdXNzaWFuQmx1ciBzdGREZXZpYXRpb249IjEiIGluPSJTb3VyY2VBbHBoYSIgcmVzdWx0PSJzaGFkb3dCbHVySW5uZXIxIj48L2ZlR2F1c3NpYW5CbHVyPgogICAgICAgICAgICA8ZmVPZmZzZXQgZHg9IjAiIGR5PSI1IiBpbj0ic2hhZG93Qmx1cklubmVyMSIgcmVzdWx0PSJzaGFkb3dPZmZzZXRJbm5lcjEiPjwvZmVPZmZzZXQ+CiAgICAgICAgICAgIDxmZUNvbXBvc2l0ZSBpbj0ic2hhZG93T2Zmc2V0SW5uZXIxIiBpbjI9IlNvdXJjZUFscGhhIiBvcGVyYXRvcj0iYXJpdGhtZXRpYyIgazI9Ii0xIiBrMz0iMSIgcmVzdWx0PSJzaGFkb3dJbm5lcklubmVyMSI+PC9mZUNvbXBvc2l0ZT4KICAgICAgICAgICAgPGZlQ29sb3JNYXRyaXggdmFsdWVzPSIwIDAgMCAwIDAuNzk2ODM2ODkgICAwIDAgMCAwIDAuOTc0NjYwMTA4ICAgMCAwIDAgMCAxICAwIDAgMCAwLjUgMCIgdHlwZT0ibWF0cml4IiBpbj0ic2hhZG93SW5uZXJJbm5lcjEiPjwvZmVDb2xvck1hdHJpeD4KICAgICAgICA8L2ZpbHRlcj4KICAgIDwvZGVmcz4KICAgIDxnIGlkPSLpobXpnaItMSIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9IjA4MjAtM0Tlm77osLEt5YiH5Zu+VjQuMCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTQ0OS4wMDAwMDAsIC0xMzQ0LjAwMDAwMCkiPgogICAgICAgICAgICA8ZyBpZD0i5Z+65bqnIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg0NDkuMDAwMDAwLCAxMzQ0LjAwMDAwMCkiPgogICAgICAgICAgICAgICAgPHBvbHlnb24gaWQ9IuefqeW9oiIgZmlsbD0idXJsKCNsaW5lYXJHcmFkaWVudC0xKSIgb3BhY2l0eT0iMC4zMjA4NzA1MzYiIHBvaW50cz0iMTQ0LjU4NDkwNiAzOC45MDI0MTk0IDI5MSAxMTAuNDY0MzA1IDE0Ni40MTUwOTQgMTkzLjkwMjQxOSAwIDEwOS41NTA3NDkiPjwvcG9seWdvbj4KICAgICAgICAgICAgICAgIDxwb2x5Z29uIGlkPSLnn6nlvaIiIGZpbGw9InVybCgjbGluZWFyR3JhZGllbnQtMikiIHBvaW50cz0iLTcuNTMxNzUzZS0xMyA3MC43NTEyNzkgMTQ2LjA3Njk5NCAxNTUuMjI1ODY2IDE0Ni4wNzY5OTQgMTc3Ljc5MzA4NSAtNy41MzE3NTNlLTEzIDkzLjMxODQ5NzMiPjwvcG9seWdvbj4KICAgICAgICAgICAgICAgIDxwb2x5Z29uIGlkPSLnn6nlvaIiIGZpbGw9InVybCgjbGluZWFyR3JhZGllbnQtMykiIHBvaW50cz0iMTQ2LjA3Njk5NCAxNTUuMjI1ODY2IDI5MC45MzQxMzggNzEuNjY2MTY2MiAyOTAuOTM0MTM4IDk0LjIzMzM4NDUgMTQ2LjA3Njk5NCAxNzcuNzkzMDg1Ij48L3BvbHlnb24+CiAgICAgICAgICAgICAgICA8cG9seWdvbiBpZD0i55+p5b2iIiBmaWxsPSJ1cmwoI2xpbmVhckdyYWRpZW50LTQpIiBwb2ludHM9IjE0NC41NTIxODIgLTUuODk5OTA5NzdlLTEzIDI5MC45MzQxMzggNzEuNjY2MTY2MiAxNDYuMzgxOTU2IDE1NS4yMjU4NjYgLTUuNjg0MzQxODllLTEzIDcwLjc1MTI3OSI+PC9wb2x5Z29uPgogICAgICAgICAgICAgICAgPGcgaWQ9IuefqeW9oiI+CiAgICAgICAgICAgICAgICAgICAgPHVzZSBmaWxsPSJ1cmwoI2xpbmVhckdyYWRpZW50LTUpIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIHhsaW5rOmhyZWY9IiNwYXRoLTYiPjwvdXNlPgogICAgICAgICAgICAgICAgICAgIDx1c2UgZmlsbD0iYmxhY2siIGZpbGwtb3BhY2l0eT0iMSIgZmlsdGVyPSJ1cmwoI2ZpbHRlci03KSIgeGxpbms6aHJlZj0iI3BhdGgtNiI+PC91c2U+CiAgICAgICAgICAgICAgICA8L2c+CiAgICAgICAgICAgIDwvZz4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==",wZ="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMjk1cHgiIGhlaWdodD0iMTk3cHgiIHZpZXdCb3g9IjAgMCAyOTUgMTk3IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPgogICAgPCEtLSBHZW5lcmF0b3I6IFNrZXRjaCA2MSAoODk1ODEpIC0gaHR0cHM6Ly9za2V0Y2guY29tIC0tPgogICAgPHRpdGxlPuW6leW6p+mAieS4rTwvdGl0bGU+CiAgICA8ZGVzYz5DcmVhdGVkIHdpdGggU2tldGNoLjwvZGVzYz4KICAgIDxkZWZzPgogICAgICAgIDxsaW5lYXJHcmFkaWVudCB4MT0iMjcuNzcyODY0MyUiIHkxPSI0My4xNTUwNjczJSIgeDI9Ijk3LjIyMjIyMjIlIiB5Mj0iNTAlIiBpZD0ibGluZWFyR3JhZGllbnQtMSI+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiMzMTdDRDMiIG9mZnNldD0iMCUiPjwvc3RvcD4KICAgICAgICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iIzI3MkE5NSIgb2Zmc2V0PSIxMDAlIj48L3N0b3A+CiAgICAgICAgPC9saW5lYXJHcmFkaWVudD4KICAgICAgICA8bGluZWFyR3JhZGllbnQgeDE9IjE0LjI3MTI2ODMlIiB5MT0iMzEuNjQ0NzI5NyUiIHgyPSIxMDAlIiB5Mj0iNzMuMTEyMDA3OCUiIGlkPSJsaW5lYXJHcmFkaWVudC0yIj4KICAgICAgICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iIzI3NzFEQiIgb2Zmc2V0PSIwJSI+PC9zdG9wPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjMjg0REIwIiBvZmZzZXQ9IjEwMCUiPjwvc3RvcD4KICAgICAgICA8L2xpbmVhckdyYWRpZW50PgogICAgICAgIDxsaW5lYXJHcmFkaWVudCB4MT0iMTAwJSIgeTE9IjM1LjA0MTMwMTklIiB4Mj0iMCUiIHkyPSI2NS41NDY3MzEzJSIgaWQ9ImxpbmVhckdyYWRpZW50LTMiPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjMzA2NkI0IiBvZmZzZXQ9IjAlIj48L3N0b3A+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiMxNDM4OTQiIG9mZnNldD0iMTAwJSI+PC9zdG9wPgogICAgICAgIDwvbGluZWFyR3JhZGllbnQ+CiAgICAgICAgPGxpbmVhckdyYWRpZW50IHgxPSI1MCUiIHkxPSI2LjA2MjU2MyUiIHgyPSI1MCUiIHkyPSI2NC40MjMxOTgxJSIgaWQ9ImxpbmVhckdyYWRpZW50LTQiPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjMkY3MEM5IiBvZmZzZXQ9IjAlIj48L3N0b3A+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiMyREUxRkQiIG9mZnNldD0iMTAwJSI+PC9zdG9wPgogICAgICAgIDwvbGluZWFyR3JhZGllbnQ+CiAgICAgICAgPHBvbHlnb24gaWQ9InBhdGgtNSIgcG9pbnRzPSIxNDYuMzI3NiAxNi42NDc5MjI2IDI2Mi45NzU1MTcgNzMuNzI0ODcwMiAxNDcuNzg1Njk5IDE0MC4yNzQxNjIgMzEuMTM3NzgxMSA3Mi45OTYyMjgzIj48L3BvbHlnb24+CiAgICAgICAgPGZpbHRlciB4PSItMS4xJSIgeT0iLTIuMCUiIHdpZHRoPSIxMDIuMiUiIGhlaWdodD0iMTA0LjAlIiBmaWx0ZXJVbml0cz0ib2JqZWN0Qm91bmRpbmdCb3giIGlkPSJmaWx0ZXItNiI+CiAgICAgICAgICAgIDxmZUdhdXNzaWFuQmx1ciBzdGREZXZpYXRpb249IjAuNSIgaW49IlNvdXJjZUFscGhhIiByZXN1bHQ9InNoYWRvd0JsdXJJbm5lcjEiPjwvZmVHYXVzc2lhbkJsdXI+CiAgICAgICAgICAgIDxmZU9mZnNldCBkeD0iMCIgZHk9IjQiIGluPSJzaGFkb3dCbHVySW5uZXIxIiByZXN1bHQ9InNoYWRvd09mZnNldElubmVyMSI+PC9mZU9mZnNldD4KICAgICAgICAgICAgPGZlQ29tcG9zaXRlIGluPSJzaGFkb3dPZmZzZXRJbm5lcjEiIGluMj0iU291cmNlQWxwaGEiIG9wZXJhdG9yPSJhcml0aG1ldGljIiBrMj0iLTEiIGszPSIxIiByZXN1bHQ9InNoYWRvd0lubmVySW5uZXIxIj48L2ZlQ29tcG9zaXRlPgogICAgICAgICAgICA8ZmVDb2xvck1hdHJpeCB2YWx1ZXM9IjAgMCAwIDAgMC43OTY4MzY4OSAgIDAgMCAwIDAgMC45NzQ2NjAxMDggICAwIDAgMCAwIDEgIDAgMCAwIDAuNSAwIiB0eXBlPSJtYXRyaXgiIGluPSJzaGFkb3dJbm5lcklubmVyMSI+PC9mZUNvbG9yTWF0cml4PgogICAgICAgIDwvZmlsdGVyPgogICAgPC9kZWZzPgogICAgPGcgaWQ9Iumhtemdoi0xIiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4KICAgICAgICA8ZyBpZD0iMDgyMC0zROWbvuiwsS3liIflm75WNC4wIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMTQ3MS4wMDAwMDAsIC0xMzU0LjAwMDAwMCkiPgogICAgICAgICAgICA8ZyBpZD0i5bqV5bqn6YCJ5LitIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxNDcxLjAwMDAwMCwgMTM1NC4wMDAwMDApIj4KICAgICAgICAgICAgICAgIDxnIGlkPSLnvJbnu4QtMyI+CiAgICAgICAgICAgICAgICAgICAgPHBvbHlnb24gaWQ9IuefqeW9oiIgZmlsbD0idXJsKCNsaW5lYXJHcmFkaWVudC0xKSIgb3BhY2l0eT0iMC4zMjA4NzA1MzYiIHBvaW50cz0iMTQ2LjEzMTc2NSAzOS40MTkzNDQyIDI5NC4xMTMyOTggMTExLjg2ODYzNyAxNDcuOTgxNTM0IDE5Ni4zNDE0MjkgLTEuNDIxMDg1NDdlLTEzIDExMC45NDM3NTIiPjwvcG9seWdvbj4KICAgICAgICAgICAgICAgICAgICA8cG9seWdvbiBpZD0i55+p5b2iIiBmaWxsPSJ1cmwoI2xpbmVhckdyYWRpZW50LTIpIiBwb2ludHM9IjEuMTM2ODY4MzhlLTEzIDcxLjUyNDQwOCAxNDcuNjczMjM5IDE1Ni45MjIwODUgMTQ3LjY3MzIzOSAxNzkuNzM1OTA1IDEuMTM2ODY4MzhlLTEzIDk0LjMzODIyNzgiPjwvcG9seWdvbj4KICAgICAgICAgICAgICAgICAgICA8cG9seWdvbiBpZD0i55+p5b2iIiBmaWxsPSJ1cmwoI2xpbmVhckdyYWRpZW50LTMpIiBwb2ludHM9IjE0Ny42NzMyMzkgMTU2LjkyMjA4NSAyOTQuMTEzMjk4IDcyLjQ0OTI5MjYgMjk0LjExMzI5OCA5NS4yNjMxMTI0IDE0Ny42NzMyMzkgMTc5LjczNTkwNSI+PC9wb2x5Z29uPgogICAgICAgICAgICAgICAgICAgIDxwb2x5Z29uIGlkPSLnn6nlvaIiIGZpbGw9InVybCgjbGluZWFyR3JhZGllbnQtMSkiIHBvaW50cz0iMTQ2LjEzMTc2NSAtNC43OTMzNDg4M2UtMTMgMjk0LjExMzI5OCA3Mi40NDkyOTI2IDE0Ny45ODE1MzQgMTU2LjkyMjA4NSAtMS40MjEwODU0N2UtMTMgNzEuNTI0NDA4Ij48L3BvbHlnb24+CiAgICAgICAgICAgICAgICAgICAgPGcgaWQ9IuefqeW9oiI+CiAgICAgICAgICAgICAgICAgICAgICAgIDx1c2UgZmlsbD0idXJsKCNsaW5lYXJHcmFkaWVudC00KSIgZmlsbC1ydWxlPSJldmVub2RkIiB4bGluazpocmVmPSIjcGF0aC01Ij48L3VzZT4KICAgICAgICAgICAgICAgICAgICAgICAgPHVzZSBmaWxsPSJibGFjayIgZmlsbC1vcGFjaXR5PSIxIiBmaWx0ZXI9InVybCgjZmlsdGVyLTYpIiB4bGluazpocmVmPSIjcGF0aC01Ij48L3VzZT4KICAgICAgICAgICAgICAgICAgICA8L2c+CiAgICAgICAgICAgICAgICA8L2c+CiAgICAgICAgICAgIDwvZz4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==",bZ="data:image/png;base64,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",SZ="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAUcAAAGCCAYAAABzbAFsAAAAAXNSR0IArs4c6QAAIABJREFUeF7svWtvG1ma5/k/ESduvJO6WbYyy5nlzulxbu9i14MCFthB+UVjgf0A7o9QX8Ppj7H1Edpv9vW8cgGNWWAWxgA9W+7pLHWWMq20LJEixWvcIyafuFDBIEMkJVJKSkGUK8WIE+c5fCLOL57LuTDkn1wDuQZyDeQamNIA21Sd+L4/0XbGmL+pvyVvd66B+6SB+9I3Nw6OacWnH6ockvepm+W/ZZM0cN/65kbBcZ7y4wcpB+Qmdam8rfdBA/exb24yHNNtH7vVORzvQ3fLf8MmaSAFx3vRN+8THOlZCgCZw3GTulXe1vuggTlw3Mi+ualwzGp3Dsf70NPy37BxGkjA8d70zU2HY9z+ZKY6TGPn2euN62B5gzdXAzPguPF9cxPhGLc5K66RW4+b28fylm+oBiI43qu+uTFwTL2ZMk33N78EHl8Dfh533NBeljd74zRwX/vmpsFx6s30DmAvo0TMWwCvwr9zOG5cF8sbvKkayLIaN71vbjIcr3Krczhuak/L271xGpgBx3vRNzcOjm8B9ip8fIK2vwfYC8B/ByCyIAPLMR/Ss3F9LG/whmoghuN965sbB0eCYmSuJwEJAmQERT+PO25oL8ubvZEaSFiO96pvbiQcCZCRxZh8mMZwjA7mrvVGdrW80ZumgSQc71Pf3Fg4xm71B4A9v7Qa8Rbw86TMpnWvvL2brIE0HO9L39wkOArRA0RtTv7DBwA64Cdd6zxjvcndLW/7JmnA9/172Tc3Co5xwPc9IGihxZjlVufDeTapd+Vt3WgNEBzvY9/cRDiOrcbDKGP9LJGMiZMyueW40f0tb/wGaSABx3vVNzcKjil3mhEcn4UPkZ9wrb0YkPksmQ3qYXlTN1YDkVs9Ee66D31zM+Do+7QHQjrWGH/HIQAL8KO4Yw7Hje1mecM3TgP3uG9uBBzT2bAPgCADjB+B4Snof8lhPDkcN66H5Q3eVA3c5765cXBMJGPYEcCeAjgC4AD+M4DAmMNxU3ta3u6N00ASjvetb24kHF8A7OgIwlMiYwKO1gf4z5/DzWOOG9fH8gZvqAbScLxPfXPj4AhAODyEwJ+B8ShbTVYjudYfAP85cjhuaD/Lm72BGki51feqb24mHAGBwBjDEcfAwQG8HI4b2LvyJm+0BqbgeI/65sbB8QMgUjLmWZS9PjkBc/fhR9aj9+4dvJcvw7hjPpRno/td3vgN0EASjvetb24kHJ8D7BgQxMitdhHC0TmEf/wM7ssoKZPDcQN6V97EjdZAGo73qW9uJBwLRxD4U7AYjjgBzH14BMhjJOFIzx0Nkcw/uQZyDaxDA2k43qe+uXFwBCAeAYJyAgH7gHAK5u3BJ+vRALxngPv2LfxXr+AFPy7fhXAdfSKvM9dAoIFUzPFe9c2NguM7QHgJCAEcAUGI3GoPl3DsAt4PgPcKORzz/ptrYN0aiOF4H/vmxsHxABApS52E4ymABuAdAN77BBxDwzF3q9fdQfL6H64GknC8b31zI+GoRskYshz3ABAc7QiObz/Ax3O4ZDnmcHy4nTb/5bejgTQc71Pf3Cg4BgPAAZFugJRyq8m13gfcxFjHHI630z9yKQ9YA4mY473rm/cCjs0mUN+Bl8PxAffS/KffiQbmwXGT++bGwZGy1TTGMbYc2wCjTHUdl3A8A7w/Ad7rfCD4nXSYXOjD0UASjvetb24MHN8CwtfvIbx4AeEEEDuJQeANwD8B/MoR3NFTeDkcH07nzH/p3WqA4Hhf++ZmwREQXuASjrvRUJ5zACbgVQB3hByOd9tdcukPSQNjON7Dvvnrh2O40jBtuUo7nImvAEaWIwcEBrCLyK2uAZ4OuPEUwtytfkhdNP+td6KBe943NxKO/3wKruxNzq0ewzGaQpjD8U66Sy70IWlgBhzvU9/cGDjSMJ63keX4zwCnQeA0t5rGOtIwHgvwCoATrQhOC97mK/M8pI6a/9bb10AEx/vaN68NxyhLNXVDVj6f2ffZdwD7PSDsAkIh3LNa7LchCgwMlKaO4NgF3J1ofnUOx9vvK7nEB6aBX1nfXDWTNheOgDgxt7oFv70NJ4fjA+ug+c+9Ow1kwfGO+uadwzGrAek7tLI5zTNuwAjgcjRDpncBVvE7vl2ve0XAiVfmyS3Hu+szueQHooFfSd9cF5OWshwXbUT8aKwEkIkbcHAIkfaOieE4uIBQo0wM4NPc6gHgVgGXli3L4fhAOmj+M+9OA7+CvrlOJi0Ex2UbkLxbNwZk8gYAYvMYQvUA4iNA6IXDe3I43l33yCU/ZA3cYd+8DSYtAkfm+zdfTPu6kCQlvIkSMrQkUhMQnlFCBhCH3a6AapXMRF8D3B8B7/8MtrDOLceH3Gfz3347GrjDvnkrTJoLx3mEJnDRraB5zFfdkutmsWfdgAbAaW71MLIcCY6lcB1Hl+D4/j28H36AF6wGnq/neDs9JZfy4DRwV33ztph0JRyvagRB8fXsxyETktcBVdYN0AGRxjmKPTDXh69Vg6mD7v9McEyuBp7D8cF12vwH344G7qJv3iaTrgvHeRbnTEBex3qctSTSz4C0F2WrB9H0QXKrCY60+MT5U7jjrRJyON5OT8mlPDgN3EXfvAKOK2fS0nC8wmJMPxyzAbkkrNI3oHsC0dkHL3QhijQInFaboEHgHXh9B+7THTjnyOH44Hpq/oNvXQN30TdnwXFdTFoajrQtyyJ34U1GHHJZ1zp9A344Bf96D2LsVlNbCI5FwPsJcJ8ih+Mi9ycvk2vgphq4i76ZYTmuhUmZld7AfA10vjY4AvxrXMJR6IN1fPh7FbgG4NL86txyvOljn1+fa2C+BqbguOa+edtMWhiOiaz0fK1dlphyrZeNOyZvAC1Z9p+iG9AEOCVkKtE4R1p4QgacHI7L3J68bK6B62vgtvtmGo7rZtLCcJzlTr+NXOxX4XqLwedVYkgPWY/0SQ/zWca1nnUDtjrgVh1iHWDDPphWhkdwHLbgPtmGnVuO13/g8ytzDSyqgdvumzMsxyl+rZJJs+F4uRRRUk8TZakRBMX0hyCZBGR0fsKCvA4c37+HSFskvG1C2pHAlRoEuQ8BZcDtw5fLcCljrQD2//cBXrw96zKyFn0o8nK5BnINADEcb6Vv3gGTZsJxXtAzC4yJBybtTt8cjoBIWyS8AyQAnJYv0wGhDOAC8GWEcGwfwzk+CGbIBHtX53DMu3GugfVoYAzHW+ibd8Gka8FxXsZ6hvW4EjhuHUE8egpeA7jVhyiWwYQBmFaCpwKuSXAEHFp84s85HNfTI/Jacw3E7uAvc6uJBe8Bcd19cx4c18GkpeGYthrfvQPDS9D/rrIWJ+FIyl1wvCMp5e1bCF+/grAFiEeI4AiI0gACaN4gudUe3JEL12vAJjg+j+ZX55Zj3pdzDaxHA7fZN6+C47qYNBeOMzJCE9dkwTFlPU5nrZeBI23LihlwTKzKQ241zZDxkMNxPV0hrzXXwKQGAjjeUt9MwvG2mLQUHKcIPWNAeGxBrguO/9yC9OU2RDUc6yjoAzAaBF4rwUnC8ewdvD/9Cd5339EWM/kn10CugVVrIA3HdfbNLDiuk0lz4Zj05VMNmXntO4Qu9trgCEhfAqLbBzcZhFIpnCFj9OAKFTjNEzhf78M5AzzagfA7lsNx1Z0ir++6GqAYXbDT8B19Vit/Co5r7Jspt3rMnnUyaRpw0ynzazUkjtnSf2eNd1w0FjjrBnzVBXeq4SBwfRiuysNKcATAaQKOeAj3YxfeyQu437Grl1K7o6f0VyD2Ljvpr+DnX6sJWXAJEhPRJ6nXRY4nGkLYnAg3peX9uuRfp29+jWsYLnfEpCk4zhloGZR/B7CXVz9cwdvx7Vvg1Sv4K4cjwJ1ohkwMR+7DFR04qMM+Wx0c0/q57bf+LcnPQTnncV5o7u5c3gbwS5T67pdv3814eafLza14wQIrlv8dtf/3EJ7vQjioQPyhAOlrDq5WIFrDcJV+Mlwo5KV34FLf1K4Bx7ti0pVwnLHaRVx+fN376Ha/SGSrM1xr0tUYLtexHK1j8IsCpIMGRIJjcAOKwGAIiD240OA0P8E5/jPcXjSc5+2HX2R+t+DDExeLy6evy6pnXrnNkO/frcu35D26leJJy+8XgdMwo34w/cJMl8uCYPo3ULnLZ3B+vWHfm19uTfKTcNR0cPEr8BoH9wXwYMWsYhjy4n24YhnO+Skctw9HewZ3mZBXOt6YWkd2bUxaCI7xlJydCISx1RiDcXxD3wMvXsBfBxzx4YN48Py5KLQhFRoQ+wNIYgnsojUSXL/gsy5cT4Yz0mAfH8LtHYdjHd/+wzXgmH5o/xw9tN8u6KLPg+WyHfu25T/0JNZ3fmD1THyS95T+nvd93vXLPgPz5KXP34L870jm7yE0dIi1J+BlD1J5ByIkcLEIZupg5W24YzgCjgs4NFnjpnC8DSbNc6uD87MakrAYg9vwProZCQsyfqMl32zXthzxAeLB82CvasnrgfuV0HK0dQiSD0+nMY4WnFMdTrcNh+D47gO8d+S2zJrnuOzD+dDK04vgQUHyFysxabnR/Y5fSvT3VS9GKpc8n/4ePztXHY/LpOuZdXzWy/sO5L96DlbvQHgsQ/z6f4NYrkAqSxBNGZJjQKhvwa8WwtWyxHC1rDQciQdzQ1WzkjG3waSF4JiIlEy40y9SNykJSLIe6fMy2Bxw/LmEIx1aYKxjHPSlFXlog60AjgD3I7ea4KjrI1qPxzV12J/7cBwP9hiOf56v/BtzrxlZlju3IGtWY9cp/95DMoJiEoQ3fiAeRgWvXgH1ryE87kP8+t9DLCuQuA4ucHCCo8DAdupDh3tFF2XYPzThlnaCuGNkOVJ/mR/vzshUz3SnV8mka8GRrMZ0I+LHgQBJ1mMMx2b0ZqDFKJJrPAaCbwDHIsBNQDg9h+iN4MOBa0qwfzgN3lT2+Rnc//z/wHv//R0B6771j5e/vOTukyVJU9/+AQKuerHQueQLL/09vsfzyl11XVzHrBfrvHrvWP7Lb8F2nkMgo+XZDsTHT8FtB1JFArdFCNCAkge3rMKZCUdiw4IMSHSnNBSD7+tg0sJwpJkwL6NgY7IhHxL5t+eAv244DjsdmfE6LwngFoPQDSxH0Iasrm7APhnCaZ3DaX2C+98suO9ProBjTPBY83Ewddnj8fVZ12WBclk58+qfdz7djuvIp078lryB+W/8X+X7IQlFut9pHUTuzszjyeckeV26nkXrXbRcWpHz5C1a76LlMuS/+Abs678HOziA+KwK0R/0lcpWWazK4I4QZqsbNTjlYrBdsk27g5aQsBxvCMd1MykTjqlMNUsO34nhmARjoL8PgP4cfjJz/TZhOUY6Dlzr61iO2gm4qkJiHGM4NjsQux0wSYTjMVh/NeCe/QVO8xjuhx7cP3/KLce1QKoDb6MgSUmWd2GHxTdgeJx4Lj4lssRJT4PKXfV91ni2JDSTcrKOU3s2VD7Bcfd/gvC3/wFC5QLSzhYkpQC+W4U4siCS5ViX4RRUOIUSrJvC8baZNBeOiRHoU/HGWXB8/vzSeqT7ngXH0Kueb30kY44awFVAqkQxx95oJI4uCmJbB3wHrjaA9b0IJ4bjf/0rvMPPiU5QXxKUndR+Ofn108Fzgsc7GrEx/16uBdLzKo2hSKC66hMHzCks9OIywTiv+pWd30D5FFojOH7xFcT9HfCdKqSGAu65kFxBFzRoqFRgM3fg7iol6y81ODexHGM43haTloZjptUYPSVJ1zppKSayUktlrGfB8QDgn4dDyWZFYXQB8dQA8xy4yhDW90M4Z204zc9w/+X/hzsBx5U9yXlFUxr4lmKSvyJIhsNxhAmr7Ka3jV6WC7wgv+2A/XmBcks351cmn37nzrcQvnkBoa5C2qlD+lIDH3i65IlMqCiqX3kEm3lwdx0EcBwewXn6FE4wlGdJtzoLjuti0o3h+Dxxhz/McK3jMY83heO3gPgDwPdpsdt+X2qZolTaLrBPn8B7JpgtwcFPsE/7cEYm7H/5DPe//b/wjk5nWIulJS3IQWR1ZF33baSEP2c87vH18en7LJ+g8H/DWSTQvjQcFrnglS+iDgEEErovM+7Jt98Cf866V4vIWLTMPZdPP4/g+B++hig+B/+6DKnQH0kjMKnU0BhUYKcK2y/A2QWsn1pwKwPY35/DDab2rgmOq2LSJBwTcxivorQWhQzjRhwegj17Bj+AIwCyHmMYrhKO708hPd8DHw0gjwRwienC588a73XBbAGORDegCXfwGfa/nsD9/s9wAzg+ixp2mHqq4+PzHvas61Z1/D7K/wIeHv9iSd5WhpugCNA/PHsENstjyDqOR2DYil6YSWhmHU/fLyqXCN88FPn0O3e+gvC/HkCUd8C/rkIqApKuQipqYI5psEfbqiVvwR7DcRv294B78svkmYXgeIdMyoTjjLGN4xR6HGuUD8HG4KGHEiEg01nraBmzqUHhi8Yc37yD+LsDiK0y+CQcIZydGlLLVJllw3FbQ7tTKNqDc9j/2oL74b/CO+7MsBLLqWP9yDJMH487warOx/U9JPkEjW9/yVauC5IJKAaQiz+HiTfXs/AtSP+fPpx+v80ql3zGkbyAKkzGtB+YfFJrAEcFov8bSP/+MbgkQHZlcEWAoMBA/UvVkjXYhW7XblerTgXXh+NtM+nacCSr8TC9nuMhYD2DPyvumFjCbOmY4xtA/B0gigDfQmQ5lsAlQDg7gtQywYYOXGEE63QIp9+E/X0T7vdNeJ+68DELkPOstfz8ajUw/CW7vUpIEhQH4ASuAHrJ1tLLLPkCSn9f7S97sPKf9sG2/ncIf1sE/+I3EB8XQzgaCiRFhKACqG7B4grshgOrXcVa4bhqJk3Acd5I9GTgM201xs9bbD1SAjk5lTCG48RA8AWz1e/ChW3HcDwfQDEE8FIB7OcfIZ/3wFwaBO7Bavdh3zoch5HFUlwylrmqTrpJ8glan+HgLa1RfI3PS58/+zuIh7E1P6OKpwCOljieLpp1fVzuuufnXXfT+uddv2r5T58C3xQh7uxD3N0Gf7wPLphQPAWc3GrRBNt+rJtVRbOVIiza32lZy/EumbQ0HLUPYOQ3yzNWAY9cksC1XgccB01IX+9AJDiyIOYI4eMZpM99U3AdxfVcmJ9HcPrnsP/ShvvXj3ADy/H4Gp2QLjmIrpt3fVwuLWbedfOadZ/lP4K3FCS/8/nTI/BZ0MtSI3XeoxkXpCFB5ejjdMFmhmEiAQf1q89PQfaeyyd9PH8Mofob8N0G+OMSuCpAlhVwuQABCrC9DVP14FSKMNcFx3Ux6Uo4vn0LRvMnow/tMsbSDZmV67AQutbJDPUqLEeCI+1ZbdUgM4Ru9V9/gjzohW616sL813O4xggWwfHwX+Cd9hLW3LKWXWyRxRrIr5+7SMAEIBbRH4U8hrAzLck/+BIeQxwvApG8B3WwZMgkgFeiAfRuGcNuGMzkwDEViOoIyscXxPUmy8V1BRVFX3L542cgDccdEZK6A1mRweVohsyTum5KimZ/UYT5z224TxqwlknIpC3H22TS8nAEWOzbHx+BxW9dekEfRLNh1gZHQNq5uISjr0P8uQmJ4Nj14LEWrKMBnG4T9k8jOEc/wZ2A4zxLbUXnH0f1fFpRfctWs5HyLXh4GiRunF+m4TP8ARxF8ORvTzLqKp08HoJ9SsSZAyjGF0zR87KmiXIzBOTyE3oEQHr+5n+BUKNZMU/Bt82RVNgtyMUSxEs4wpQasOs9WD84cNYCxzUx6Wo4Aiyx2ldoOQIsjjfyIzBELknglqTg+D5a3zFpQS4bc/zuO1/4/WsIFHMcRHDsSVAEAVwGhKMW5KEFNhzCddqwf3Zhd49COP7QhtccwMdp6knXlowN6lFMMeO6uTCKr4+bkcvPtkAJakShIRjpNfMFk7DgAhgmLbrIYo3vC6l9fD6qN74VV73AcvlX65/0/tVvIe58A3G3RnCEVNiFLEvglJAht/o3+zAkDbbyc9/+/KRsy8ewOwdwFh3KM2U53iKTrgfHKN7IU3FHiu8cPIVPlmNqnvV4GM+N4Qjw3vASjictyN0BhM7QdO2RZ/880OxuC/ZPJ3B+MuDOhGPUM/b2wj9OU/DMOh53qHnnF7X0cvmz9Y/o5TEBtyuUmobYXgVslseQBbssObn8S6XPeomQnp8WIW7vQSTLcb8ELktQlEroVisAvtyDIdZhKf2+/bm8RjiugUkz4ZgeAJ5Y/YLRGEdKxiRd6uRzG1iP0ZCeRFJmNhzpwjkZ6+98X/g9bcEaW44ER0BxdF2SoAln55DPP0PsMzj+ENbPHuxuJ8hYOx//Dd6/DuDvpDpWs5CyHEeRZZg+Hl23E52fum7O+Yi98OL6o/K5/Kv1T3qbgFtkeQfHE1b3FAQzyiE+vjdZb3B92qsAQC+tXH7iHs3QK7047McQvm5A2N6CuFsH36lAKhQhizAlWSM4KviiAgNVWFUX1ucybBmwaZOtF4DLFpghE1uOd8GkheD4x/fvhRd4EUzIj+GYthpj/iRd61lwjMotvDJPEo4nrZb8jSTxE84VUSgGCZlPJ6bStRWhb8OxL2D/PITdbcPun8I5voB3qMMHudY01SmGUwqWWcfTxkp+faiR5jr1V4Afv1TSVn0ArQTMYst7kXLp65JMDKB7zXpjVUzVn6rvvsknnXm/BftShbi9DbFRGEpf7wmclZislFUuOhBlAF/9DXSosKqA9RmXcPzh7VvvH1698uYZR1lwvA0mLQZHQKh/AKO5lLJ8yPDsGUXKg2tPjsP/7h+EAEq61mk4xrsRxjHIRZYtm4Qj5G8k8BMOhdZzlDQI/3YMpXlmcdP2HX2oWJ0B7OYQVgDHH+AdDuFDDdu2bbQmfm9L3Z6IfS0Lv7i8b4Q6aEVysjzAXP5i+if9CZEVn4RYbMEHgE5Y+XQ8/T3r+qnr4puVqi+XH/aZq/S/U0rAcQfSFxIk+Qmkgo/AcqTrn+zCKMgjS3ALlu50bNTrFlmOP7yF9w+vcH043gKTroRjPF3nj9QQRHBM+PYBGBNj/PbJTD4CnCjuOAXHX9YBoBXBrwPHoyNwrwTpm+0w5lgogo8MiH/9BKUzgmgO4ehDWM1zOM1BCMdPF/B+8OGhNRtX21kUm3M8XV1WPRlix7Xn8mcrmiVeMkkrlV5G6e/pGrLOz7uO6vGNFmOpF2Yu/1LDSf3T334J7GAf4lYDYmMb0hccUqUBqVwCdxyIrgD21WOMCjIswYWlO7BRx43geJtMuhkc0wPBj0MLklxrSsqsHI5PIX0TxRy5DslhEP5yArU/hGA6cPQRrGYbzmeKObbgnPTgHZ3Da2TATsjIGnvp7HJ0fVb5KfhG1MuqJ25OLj971ECrdflq2cY2YmAmYbVtgCWt9e0SWPpepM+zKMQSwDBRPl0ul3+1/gmOrgjhy68hjOFYCmOOBVo5K7Icx3AswNI7CTgC3j/Q/lJzcg5pt3ouHFfIpGvBkVzq2Gr8AsDHBHzIelwnHJ/0IA3JrWbgjgbhL3+FeqFDNG04ug6r2YHz+ecwIXNmwb0Kjtc0HPPL1qwBemkk2IixhU1/JM3x9PeoXV4RrE3hlOiznSh31eVBueiTy7/URZb+vS/AnqiXluNBlJApKpB8GsoD4OlTY1StqqYAWDpgA5HluGI4roNJN4LjF6lpcwRJgiPFHXUH/u4zeMFmW++Aly/hpxefWCbmeARwD5DqP0P265Alpksu04Tjz1A7XYgDG443gnUyhD0BRx1+vZPhvimTlotvdsImKfWJWKRvRrs6pMovyoj4+nR5lstP6TnUv1irBztWJi3vdsLKT4cjqFwSho3i9KrfSSs9WW/6eFa5XH7iZRO/hLQQjrW9YBVwvq9CLj+CpDJLpmHgEoC/+Q2GkGGVXFiDEqzOCewX+8F+Miu1HGM4rpJJmXB8/vYtexXNHUzHHIOGAIysxvSHrEaaLUMu9W8+wNd1+P0X8GnZsuuszBMnZKbhCMllEI4+Qut2IVK2OoDjAHavA/uUYo8tuD/58LLgmAm3enQmA6qLQvHa5R64/PRL49p6zC9cqwZqBbBiDQLBsb4VxhwLW5CLMiTXs0RJlvHbPQylMswYjtoJ7P1rwvG2mZQNx8RI9KvgeHoCRubiXjQ7JoYjTSWkuOOfPwAdHf4fXsC7KRz77bZ8oDek0HKEZDBD/PlUUNst8D6THTaCeTGCffoJdossyD68n07h11KPyLTFNmlpZJ3P6rTzLMu05ZjLT1vsCf1fAGwPPqPtdqNPUn9J3dHxq76nyeAXwCbqLQRzs4PPRD3pcpHnMFXugcv3RAhPvoTQqEGslnT5oKxJZDkGcHQhCsxi3+zKA2kXZmkASyrBMm4Cx1tm0iUcUyvuPp/RkNLhIdM4Z0+fPgVZjnIExvghJECSa20C/hiOAD1//h9wfTjuv38vyi9eiFIbcqEByRxBKTJwMIj/dooAjheO5bq6b+mWYn46g9M6hX06gHdswK8ZS04XXOv7Nq98ngbGACMLOmm9p7/HFc0rl3Vd1vWL1rtouXsqn142j3YhfnkAsSRA3n0CrkhQKiVwQQxXZf/mCwx8WbcKrmuVSyWT9pTfD7dpne9W3zGTZsKRXqTxDl/v3r1j5Zcv2Q8AK0Vzq5VjMPLtT9OZoRPA2oefTMrQqvNpOL55A7x+HQJr3mrg5Fbvv4cov8AEHGUBEg0C//4YWr8HbuhwL0amNTIU86wL+6wD5+yk7/18UfaqGb1xWQtxyhJJWBRpq4K++2Y30u/sFuTyZ1uQpJdZVvq1LMgEXAPLMRHnTVueSUs1lz9tUKT172tgj2SI1R3wJw1Iu4/BuQ+1Ei56K3gM7Lc7GJTLMJkLq1zCteF4F0y6Eo4778C+//49e/GHF5iAYxRvnIIjpaKwABx/AcfryA2/LhwrArnVpviXj4rW60HUXbgjHdaoC7M7hNM5RpwFAAAgAElEQVQ6hvNjG+7PPrxqd56tsuLzMQtvW278MzZcfh5zXPHzuKbqKiqYqkKsP4H4qAT5i8fgkKBsF8FdEaJr2+ybr6R+WV4dHG+TSVfDEWDfA+wPUViGtkU4DsIzky61dApm74VvGnKtKe4YD+dJWo5xCGmZxScmLEdArvYhD8qQKwbBEeKPH6G1zmzJkn2na8jWsAez2YN9egynNQy2SfAqC1qOs2Jck5f2ovhUZaF1DbOy1HGd82KY081+APLphVIFWCIUkmXhzbPkp2KEKthEvanv4/ufLpeKLWaxZtb9nrBU75l8XwXb24b4RRViaQfyngyZ1yHXmCVBkQWaPnjwBINiSTcVTTPLuLnluHOLTFoajnGmOl4JnMBIRCQfmwAZxB2PAZOG8jyFtxI4AuLw+JjvHhxIBMc2h7Ktgfe7Jv/4iWlnA5mbDI5uwOq3YA16sGm848cLuIPuL/sp55+N0kAAlFlWN1nEi1jj6XLLXBdrKpc//cyk9Ehw3N2BuK+NePVJQXpcgsQaULYkcM+zRYp7PdnyBtUtxVA0rA2O62LSjeA4BmOkRptc5SjuSEmZXawSjuC7BxjDscIgmcwUPx4r2lnTlh1fsjumZQ+bntns+nZrqNntC7h9Ez5Cg2vqw+SrEzW+1Y/0Uw4txozyvhWNg5xzPt2AXP5s/S/rVvtmjzEjYc1HYYVlY4rXfYM8VPkBHBsQ99hIerxX4I9KkKwYjiJEwQH78kv0qyUYvje0NLto8hqlJcKEzCvAuzKslkjIxDHHWZZjEo6rZNLN4JhKyKThqB/CHzyDHydkru1WA2L9GLxT7MiP63VJ16HAMmRPVYWjv6Lw+QKSI8G2+rA7fZjdj3A6w6H9sVN0hzRFKf6kIRn721nHr3vdsnJy+RNcmvfSuC7E8utWq4GyCkZTB8sqePWxIe03VEmVLKXAmARFEkQGdvAl+ltF6L4HS7Nh9k3Yz/dgrQ2OK2TS0nBsHkOIM9XSrIZESRmyHGkg+ACrhCPkujSQLVFUZKZJHg0C/xmFZhMy7Vt9YcAamTCbZ7DPW7BbI3ij/gy3Om3hRZbf+NHJOj91fNKyxLx6YwHzyj1k+TJ8emf1Zwy/IkueyeXL8Y8W2DIgpc6crDf9Pb49Wcdz+ZP6LwkQth9BKDfA92qQdsqmzIpMKUsy90SINEOG4FguwpA8mFoRZv8UtnoOG8/hrspyXBeTpuD45s0b9vr1a9BQnqQJe3gI4ZiDKU8vkzEEx3YzdCkbO+F2BBR3pIz1yuEI8E6H4AjZEqHIgVsN8acjFFpdWzZHcCxBMkd9mGc/w+mMYB934Q5N+MzKxzmu1mZYc20xGImSvctwBrlxM0MkUblxq2Z8Tydipn5Br584FIZRkMu/Uv/0EmmQ5XgAXpUh7VYgF2qQC3Iwtzpwq7/6Ct0AjhpMDdeD410xaQYcwV6/xjQcAWGcqQbY+SnYoz1gAo60OnA0M+Y24EiDwP/yCYWzE1uxLcnWRVijAczmJ8PpnKv2z92hO/KLHgaLxRx9axDOrZZLi2Wjo/JAKRKQIWh8frIdaasnlz9gpPuKDD8jTBwosGyB9a+IF2edn3ddfHfSbE0/PfPqeSjyywoYzY4p18H3KmQ5QiaHmkApihBt2PjiK6n3uAjd0WDuA+ZHwFY/LGc5vnlzN0yahiPAXmM+HGOXuh271s3QepwHx7dv3+LDq1f+UuMcKeZIliMg1weR5ahBggnxhx9RPOlC9nQ4AwZz0IF1PoB9/lc4JwzOaJBnq9ds5628+glLP4agBUb2XGDf0bEgWRZZeMkWJKAZQGp8rg9ELvnk8clakvZjcGkuPzQUZui/KJfZVh1iqQ6+uwdppwSZq6HlqIoQPSfYnbS7HcGx0oXVrsJaGo53xKRMOJIB9S4xpugwZTmOXerEBi0NwP98Clge/C0X/s4BvMS6jkFihFYD//AK14cjIA90qIoACmmIHz+h0GxBthw4PcOyBm3Z6piwzmmx2x5c/Uo4RpaelLIU7elVXcI+llE+jQc7tEAvLcosfuTyA82k9E92+PAaoZByGegn6DaGaaT+9PmiDDZLTtbxeW+Bhyaf9DQBxwZkhUMpSJBEDyL10C92rV6jLutMhTGGY7h02cIxx3j/mNtm0hiOsxaVjOH4f3wAOytAoG1YgwHgAAvgCLDd6Ik5o7gjwRHAVuRa7wDes2jl7z/+8T2++abvN1++9D9gxXDsQjYMuAM3shxbsNt9OL02HB3whlne7rynPXW+mFF+OKdc+vySYsfFH4x8Kdj3J/pc3rxSqYRB8l4SRZMHSmF4Iw1X6sQT18VV03zYCMIU0gjqnxKbyx+rK6X/4hZYQxqJpRrju48EaaehhHCUIUlKuJ7jbw/QKxVxLTjeNZMWgyPAzhD+2MEJBFmI4o0JONK5s7RrfQT/5dPArfX/+B74pg+/+RI3gqM2gOKIUATLlJmgiD+eonjehWzpcEY2jN4F7A6Z7304J204Iwt+GirDiFaMOmHi46csxmLqQqprFtgKcmhpzjsfX5vLDzUxS//Bsei+BOxb4E2SVa5ogwaVBPcsWU/W8bSoXP7V+i9SzLEKkdZyLO9CaihQCipkVbBlSZEEgYH9Zh/dWh2j61iOV8LxFpi0FBybx2CaCJaEo9QKwVDfhj8Fx18Wun0ZjjNcPRwFyAzB9MFi89xWLEdyBt2haTncOu0qVrsJ57MR7CvjxYzLsvAWPR53nlXVt2w9D0V+bM0l303Je0THp74nXnTUaWMaDumPyG0nKM6y4q+SM36hJciZyw/1T0ZBvQpxuwZeewJeEyy1UJVlVbZlSSA4OuzRltfd2pVHcIfGTrFotgFLXdCtXgSO62TSXDj+6QOE38lg2jOwoCEHoVstN4OpQ7TiTlhHC7C34ZNrnUzKjOFIyxcBfhM3sxx3BlD6IlRfgERw/OsPKDU7UGic42gIo+/AuiDLsQmn24NrjKYTMvMsxtFE1wMKCLtPfN24g0WWZiHqOKOUJVqwh5F+J03QXP7VFjvpJ2mFj7VXApIhkmLqe/LlkYZn7G8nr6fOPUuOn3Gc/PVc/uVbolAHq3OIhSKkR0/AHylQJMVWlYrEKVtNJb/cQq++iyFcGDtFrASOt8Wk+XAEhN/FS5VF8cbz6L8Ub5wHx4PDQ//Zs2feHxNwnNiBcM4GO8HCE4lsdXk4VG2hqMQJmX/7iNLPTai2BZvcasOAfdqE1e7B6TXhGj48Zk92xlHKf4rhtoAHt5IiufxJNab1n3x5JOFFMLuE3jB6ZVFdxSlLMjlMiqZ3putJ38is87n8y76T1n9gOVYEcbui8fIOpEdlS1G4rBQ1hHDkwOPqJRyLLiyjAvPiEM6jZ3DmDQLPshz/dEtMuhKO0XxGYbyOYyoZE7jUiQ09gumDTaC8E2apg0VvD+E/e4YbwxEnJxL296XyEKotQBFsyFIFwvf/Zpc/tyXFtmEPejANHXZTh0mWY28w23KMO0Yamr40e460b43C8Y92YTJGGZUf15caexfPuc4iai4/ZUFG+hSSUz5nKM+3h4xJxYl7MdNSTLnfhUQMcpa7nA5bZN23XH6of7Kw6xWIDc2Qqo9VvqtaqqbJskbZatUJhvI8OuAXe7XQclwFHG+TSTPhGO/V8P79e+GHFy8uF7lNwzE1fbCOMO5IQ3noX2kfHq0I/gyrgCMk7OMSjgJoRSTxr8cofepAtW2b9o6xrKFvNUey2RnA6V/AmeVWr8T8yytZmwZiOFKCLBmqIEslOQaSIBU24jJskS4fm5QTx7OGahUvs9dUay7/av17GAm1akHcriCyHKFoGmRRhqyIjugxzp5+hU69gaE1gll3YF7XcrwLJmXAEYz21nr/HsIPLxIrgM+BYxx3JKuR/pWwWjiOtAt5T6opdhGKYIZwPDxC+VSHYjuwe2cER1hND2b7BC7B0SQrRJ/Xj5d0dPmc6YhO1jjJrHbk8pOaYYWCN51xCUskNVWYlRlJq/iKTA55CrH7PUqUm1lvdD6Xf6lgrQZW9cG39sDLZVN6VFYUbQuywiDHbvUXj3CxvYfBoDWy9uSCcX043j6TZsOR5lW/Ayu/BNMA9mMi5tg/DYfySCx0qXvtEASVRgiMOBmThKP14YP/T8+f+3FC5joxR5xAGmmQ9yQoIxGqyGjDR4hHn1A6uXBU2/ftXkeyHMDsnsO6GMA5O4dr6vBYGmbzYKlFD0C6XHw83QEXLRdfl8u/+m3F4c9aUILCFOlY4k3KpRuRDIPcpN5F27nx8n0I1QrErR3wcgkSJWSUKhSVFr0VIPjMYU92vYutbW9gDFRzbxuGAZgXgPMIy8UcaU+r22ZSNhwRTNeahiNAK/yyON4YwLEBoB0CMglH/Rj+jnPk745G3o3hCEijC8h7NSgjI4SjY1v8px9ZqTWUVFN3nK7NDceGeXYOi9zqXgTHzJhfCpr+HItvCrJRxfF1886n25Eun8uPYr5+PuVznq/zqzgvgREcG3VIJYJjA0owCLxAc6sd0XPBvviSdyqqOXRtxbgxHG+ZSUvBMRgAvn85Q4bA2CAwhmykRUxmwBH+7gjePz3HdSxH9uof/1H4+1evaAC6JF9AVmpQuheGJopMZkwRf/qEUusCqqkHS5aZdmQ5ds5M93yo2GQ5/ioepLwRC2uAxXBMJrxSIw4mKqNyyfPp73Hhq47H1nzyhZnLv5xenNa/M2KqVGDyTmg5bkmQ6gRHLbQcRR8i58BvHqNTUzEcSjD2Cje0HGfAcZ1MWg6OkdUYTx+k1aQiNo7heN4Cnm7DIwvyB8DfiVYE/ydcB44+e/WPEP7+VTA75xKOBjTRhswYudV2uX3ONMPmdteBYXYtq9n3rYs2nL6pOLPgyJxUlpQ2eU18ss5PHY8D+5G7Pa/eWMS8crl83We2dpmNzgpnkEKTIYpkuQWO+5LOGE/IGXsCOsvlz9e/Bwi1OoS6BmlrC9JuyVaEiqSogiPT3GrOOb7cR2erjMGwCqPS75sDwzDdnR37Wm71LDiukUkrgWO/02Hlet1vk2vtwbd9+DScZ5Vw7J2eytt7e5ICKF2CI4Ps2Rb/+Ekutc+hGTbsnmlbhiUZF6em3TMVu9UOY46Yl0BZ2KbJC65dAzogaKG1T2GGZOgh/T1uy7xy2dfp0fOvYVZIZF69D1k+6cbnYNUyxHrNlBoNJu1UZIkr0EoUc2RhzPFgn3d2S+hfyDC3HBifP7Us7d9tW+uG4yqYtDAcB8fHgnZwEM6OiRaeoL0b+p3Q6irXEcKR4o7NcChPdw/eqizH3ink7T2k4Aj+4wnKnXNotu3YFwY39RHMzqll903ZPu9hpuV42cGzMikZx9OQnYpR3jQzMycT9BDkUzKGZhpdlbQiNV3n/Lzr4gdjXrnrnp933QbJ93tgagVMqUGoq5AatG91CYpYBk3QoISMyGkl8H10drfRv/BiOMLS/h1WAsd1M2kJOEKIpw4aLQiS0GaNRgMTcEzFHcuAF2+0dS232vfZK0D4e0AgOBbVrqxxrgwcUSsIquwyi//4kZWbbaY5Puyuzo0Ajh3YfQv2eR+OaSwylGfF9lAW41YsJrO6DZfPokHgZJkkQwwqBzOSIZHod/q2zpgUuYEJaAbXx1M6U8dn+eNUXbL+XH62/kk3BMeKAFGtmdJemcn1ApPFiqSUmCOLIhc95rAvdv32k32vr3uKUQgsx1XCcb1MWhyOgbcDpjchKDtgUpSM6ccDwTuAXQ/2/xgnZWI40kZb/8WC//vn8Ghu9cJDeabgCFm0R6pVKqgFBtklt7oll05PUXBs2BembRoDyaCpg/0+QsuR4LjiT3pudLr69Oo+KxY/tZrNfZJPMNR4sP9QxicrmDhfy2nDbfJ7XK+Gqw28XH6oaQ2KBqEiGqK2rfK9MuSaYitKQ1IU5shKMH2QY38P7Sfb5iUcTVja9oosxzUzaS4czw4PBTx7RmubhHAEBFrTkdZzlMilrl8+lJSEWT8coVolqLJtKYzJ4o+f7fJpWyo4OuyhC7PXhalb4WrgrY7hmibNrVYX2vZgfvdarIQaFTMWK77yUpsuP7YcpxRDYYwF4seqBGYks6uOzjAj8TJd/5xyufxL/UtgCgerFCFqDfC6ArmuQCntQil4jsJlLtgujXP024/rUn8kwVAcGLwMc4ibwfG2mDQFx+T+sDTO8ewQAp4F67oJximEL/ZCMFKmOr37YDmIoSeG85yEUwhpF8L/Avi/xw0sR0AudslyjOEIxWMW/+mzUG43eWA59hwYBMeuBasfwBEBHLPiU6saZ6hGsUcjo+NmjV/M5adGDUR6HM+tzso+p6imaoAxw6Cjl8T4BZU4H5SP65gXu1yg3IOUrwWxD2GvCqG6A6kGyNWSrYgNppQYlxUlXJVnbw/txyXcCI53xaT5cIwXuQWEajwAPAOOtEQPZaptD766Dc+6Ao5v3rzB69ev/Xmbeo9jjgk4jiRTKwiK7DHwnz6jfNpyiq7Frb5lW+RWN7uWPTDkYMHbAI4Zn3kTYcb9JtWBtOjCzH61YF4mlx/emLS6knOrKYQxAbkZ91KxwczEcnHp7/ElWccpDDJLTtbxdBMeonzSjVoGK4sQK9uQGkVIBRlKseKoRYHLIsFRBPYadvugLvVuYjlOwfGWmHQtOOrttjBgjNXrCZ+anpgEHE2/6Ws7Ox7Nr44tx/337/36ixcexRzfvAFev8ZycARkcQR1ZEMraJA9C/zo2Km0Bzxwqy+GjmUMfaNl+Va/7dujvuJYM+CYtvBiyy9+6I1LuyI4pCJ0VMfHeeSmR5bOpRs76UjH16U7Uy5/0mJM65+p8CYswYyXWwjNaZPx6uOXlU1ZfNGprOPpZjxo+Rqg+BAqVQhq2ZR2FSZXi0xRy5JSpEHgMkTPddj+E35+0ECvO9TNfUnT9XKwC6E1WGL64CJwXAeTFoLj6RHYthLOjgkz1dHc6oiN/OKCObXaeG41xR7NJnxtByk4wq+/wI3g6I5GmiMWgpgjWY7Hn+XyeccpOgbsrslNdwij1bXsoSFbJxehW83csDNmxeLmHZ+CW9qty+i86ZjjPDlZ5R+a/HiGTBpSmTCTDGYk4srpmONUDHKeW54ByVz+ZfiCFu1QRbBSEWJ125LqBVkqFKAUJagFxVG4xINxjnuP/fMnRa83dBRjX8LK4HgbTLoSjs0PEErPweKG6LwpKGyHSdthvHFwccFqwYNUg1O7XHgigCPgU1hiwnIE/DoiOP4yyJe2Z13GrRZ7PUXiFdURKSFDMcfAra6ct1D0fFidESy9Z5ttUzL7bdijAWZajvMtxMsSSaia7mRiRxEnZ9YsCrdcfqiBLAtdYIG3EX0utaqNX2/TA3F0PVFOUy/tyYRhSeEQfewVqJNZ6fH1KsJyufz4LsWaSOtfUSCUFQjVbUg12QosR1liarHAA8uRFrvd28X5kwZ6Qw9G3R0Yfqlk3MRyvE0mLQZHgG0DwngYT5SMGVwghGMNoEQM/UlgTMJRPz72SwcHHiVk9q8Jx28/fBCLz59LMRx129RUkQVw/PizUGlfoOja3OqaMB2C41CyhiaszvnVcMww+PLDd6wBk4Vx4vSQGnK/kyGJefka1TEYi0IgiwzAocRZuv7kdbn8hH4cMKUIViqYYq2u8IpqK/WKJMvcUZUCl2XR4bTwxMEjv7W/K3VXDsdbYNLVcASCVcBPsxqCCI40QwbwOxR27ABKPRz8bZye+qq955UOMIbjyTv4z5vw472rF7Ecv/0AsfgcktiDInGoughNDSxHK4IjLzqGY/ccbjg9mO0hrMEQdmcIx6aYo7nq3p6qUFQmhwq5y67nuGz77rF8ET5l8Y3ET4zDEYG1mRgRkIYVuXnpez0u7xhMVVQY5qWFSd/j8tPlLu9JLv9SF2M9iWAK8aECQStb0k5JlqtVKDKHWipAZr7DAY7HW/b53o7XNbmi110Yfgk3sxxvkUnLwTE5xpHcarIgu10GVFH04V+Q5ejDt3z4cgOecQpftTEJR8B//vb6cISta05JU0M4kuWIyvk5Srbj2F3TNr2RZnRMmP2m5VwM5cCtzlpKbC6S0lBVMq6Iy2WdnytoTr3x6Qcif2KcY+Ie+OKlJTjWWPIeRfohC9CM4sxBWCSht2ToI0ioJCE8S7+5/LGqk/oPhqeVwIoCxGrZkqolFsBRKUlKQYQiCuFQnsdbON/bQXfAdWPX1XSCo3B0ZBefPrUX3UMmmZBppuG4RiZdC45mpyNIjDHUapC6kZXU7cKuVH27Bt9qJ+C4F8YdY7f6hOCY2IGQqqE1BmbiIZohk7QcIemaI2gqH1qqoMjijz871W6blUxftLpDmN4IERzhXAznudWL0i9s3fz1GsP6GJ+0JLPXaczlT973kE6Zg8AThdMLUpgJi1KZuS5njMWkHXjdt9bksxDA+IHJDzQXw3ELUrWIyHJ01BCOLIg5PtkTW3s1giOMXRcRHGEXn2KlcFwHk5aGo9VuCzJrBCuBS6zLUK2GT1gXsKthvLEE+Cetli9tb3tqlJSJ4ZjenjVkI1sCjtBgmxoEpviM8c8/S5XztlsyHN/uGaFbTZbjoAena8IOhvKs3K2+fqfKr5yvgTEc5w1wjKviJoOTeCHREnSpZemCouly85qSy0+Mlk8pi4PJIphUgFhuWFJVJstRUoqqo0oyFEngggCX7Ve9870vpc7AWx8c18WkTDh23r8X6tHmWv/9+Fj4m4ODYOqg1YYgB2CMhvNEbCTVxWAMkjIt+N1tjOE4CGOS4wVvPwB+mK1eAo6AAp3gCA0CFJ+Bfz5DpXmGshnHHPt2AMfhhWQHlqM1Y99qMTUzY+EYYWQZRjFGf+q6xSxBlsuf3MUxpcdgEHgSbsn1NtPHFypnRs+5QpnDS9kT63im/POF6k1BOLOd91A+B/MoWy1DoC0SqiXIlRrUAiVkNC6LgityiNjfts+3trwLgyv6TS3H22bSFXCEUI821/rvxxD+5iCcVx3AsRHNrSaXOguOgN/FJRwPDwHlGbwpyzFg49WW4ytA/BGQ7H5fVXlZhQDNtS1VYLL46QzVVhNly4Y1HDqmodtmZ8jNYce3dYd2UoCXjD/NMxby83evgXlbs85roe+YLB3amHfNKs8/BPnBeo5FsIYKkeCoFe3AciyoUGXBUUSZBXB8vIXW1hYuDA696g4M27KMcq9h/Xj0zsGf/uR99913mTPY4n2r45hj5/3tMikbjoBQR7jz4AQcE1MIaazjqBfGHAsV+N0uUPDhK7VwJfD1whEqWY4nJ6ieN90yxRxHQ5jmCEa7a1sjU7IuenDJcowHgd+4A8xdT/HGEq6u4CHIp/UcybI2p+O349gtrXySSLhMLUobZK1nXC+Cpa+L09VJmPpZ18exzFx+8JzKHKxYhagUw5hjQ3ZUWUVgOQq+y2n+4ONdu7WzL3UGOowtDt22YJR7sH48goM/wfvuO7Y4HG+ZSQvBcXAMoSpBOBZbgrK9PV7sNglHoIeCXwlWAad/NJwnCUdS5i7g9QGfli0bu9VLWY5QRa5rzBY0RVAUM4ZjG2XHdOy+ww19APOiA3Now9YvEFiO1gIruawZa3n1S2iAxVM+KT+T8HYVBTHzwtrmZJcnzs/Iaqeb5LsmY8nYZS4/U/8+N5lSUFhBTcCx6KiKwhVNdhXanFVwwfbrTmtrz+sYkqxvOREcG7B+fHczON4GkxaDIy06cUpwhKBsg9kXcdyxx1CphM9YL7Qeg3hjJ4QjTSHsOPBkE97eU/irgSM0ZkNTVCimDf7pxKm1e7zkmLA7Bgx7ALPTgjXyYI3O4QZwTMX4luinGUUnY4uLZ6dvLjms4X7LVxmNk52kWTpOS1qgmG/y+HQMGEifT36XXbBYDkuMVU0ejymcy5+O08syhGIDQlmCVClCLhehBm61BlkQwH3PZY93/OZWg3cMCauF4y0waXE4AsJxC8L+Nph5AWEUJGQy4IhoOI8Lby1wFKApDMrIgXT6CdXzXmQ5Drmh92EOhzCHDuzuOVzHhWslXLAb4WneOMOocrJwJhC2qmz5A5HPohkyU/cqZcll3UtFNJnppgbm3+jGxzd26r00s9YHIV80mSwqrFCBWJYhaTXIFQ1KWXO0gsplHy4HudX7aG7toGN4a4Djmpm0NBzLIo1xrLMQjmC0H+uU5ZiG4z68vWgXwuu61R+akLdVKEMOjTtmgQlMMZnMCY6dC7dimKI9MJzAre72uUFwJMsxgGNmx1gsu3x5eVQ+NY5RjmJRVmztpM4jcz/sXP7krYnGOUpwg+NJvSVfcGl3V5wc9A0xzA4rUC7tz8T1NCd+bJkm71V6Mdtc/uWunGn9U0JGBKtXIJZUW65WJKkkO6qmuVqQrZbIrXbZ7o7fbGx5HZvLo1JvaAi8qJdX4VZHSyiSwbYuJk3A8c2bN+z169d48+6dsP/yJYsTMrTQLa3leAwI5Q4EqR5mq4NkTAXQ+32mlct+IZpXTa51PBC8A3gyVgfHC1svaJKmeY6lWgLjpy1WbXd42TZhDxyEMcduaDnqXTgOudUZlqMc9cw0PLOOxx153vlFjZRcfqiptP7TluM8gzF9Pqv8vHoyLdE5BuNDlS/JECjmWC5CqhRsWS0ytVLiqia4CiSIHgN7si2eNbbQsTlGpR4MYRd6GbB+DJZjgPcduzohc5dMSsER7PVrLA5H2jahD1aml3wZPsUdpUqYqV4HHEtqXzU41zSB4Bhmqz+foHp27lYtW7T6JgyDLEcTxlCHrffh2vZ0ttq0JrujIseYitzhVG9VUhQz4+4cXRd7u/PqjTvfvHLmA5dPcEy+0GhozDj2l0iu0SDkWeXoflhp652yq6ny9N2ckdXOqpds0eTMnIcsn6xGijkWimHMsVSylXKBqYUSjXXkMmQECZmdmtPc3uNtnUOvudCF4rJwvDsmZcARwv5LTFmOBiCYgHs6swcAACAASURBVBDsH0OWI82i6odDefq0ikqUqaa51VIttBhXaTmGcCxrkmMWfFcI4Hj6mVVbXV4xTdfuO77hGtzodm1zOILdsyTXMS5jjmOIpUyEVU+JHkMwQ86yzvSilmi6XJacX7t8K4o5BhZZOls9QxnzLLd0Peksd9b5XP4V+ndMJlO2WoFYKkIqVyBrBagVFYHl6Anggge2u+ufbdW8tlWQRzeD4+0z6VpwtLsQKN6osz4rl8luBPr9+XAcfIC/E+1AuOxQnmYTsq5CNTgiOCqqz2x+2pKqzXNUTcu1+6ZvuCNudEe2OdJh93qSM8tyvOxfWQ71bBxdf2ZLFt5y+ZOaCU10mj44a/hVHNsNXPGkBemAXfV9HA65Zrnk9fHfD16+ElriBMeaArlchayVoWiSo2kSVwQBos9ctr3tN3d2vPOR6+nbXB0ZVseQh0Ord3BgL+ZWx5bj1XBcB5Mm4fjLJOfXvzycbwBhH2DmIYT/6xlAK2EcN5uiJYqC3Giwy4aARWwMTEdyre1uuCrPLMtxdXBEwReiQeDHTq3V5lXLQeBWuzaMi7Zt6ZZk9QzMgeN1bbL8unVqgIZfUf2EyuTrQ1YAK2FJTgZDpuOXVD7OyKTrSY0UGv+cdP25/Ms7PaF/BZB8CLUyxGLkVmvlcIaMJkGhZScIjjtb4tnODs5HLvRtjpFhwZCHx4vD8Q6ZNAXH52/BPrwCm4YjREuEYAuXc6t1FsLR6PeZWi5P7DwoAZ7ZavnO9rYbJ2SuC8f/eHjI9VpNFpVtpe/ohQLXNMe1NXKrz85ZtXXOq6YLe2BAd4aO2e3y0HLU4Tg2PHgZq/5cu4dPWnxMlK+cK3xtMZkX3m/5wfTB5MD9RBZ5Al5pWIpW9DxfYtVyL+8NWTpIJufoeyRnot7E8eAW5PKn9BTEHDUwjVu8XmBSuSDJStHRyipTJe1yybKdPfGsXrfaliuPKtZQ93hRl4ewege0FMMCCRmA3RWT5sLx7/gRGyiKoPN9YQzHWhhz1Cn2GMUc1TJ8cq15GZ5FCZlOx+du3Wu7p9723p5LQ3lo8YmdaHvWZdzq/3gIrtdAO5opfQcFhVsFX2BBzPGM3Ooz1IKY48g3XJ3capg63QAXjjNcIRxnmSqBj7d6/M2s8YHIv+ncaoopmomslhLYoLf4eQjyFcDzIVQ18GIBUllzZLXA1VLJ1WQVsiiIwXqOW7VgnOO55WJU4dA9CzeG420x6Wo4AsLfHYENFAj6PgQLEILZMREcOcCMFBzjxW5FDx534bVdeNt7WAkcXWegmtWSpjiXbvXpZ6fWbLOa64hWZ2Cari4aPRoMTnC0ECRksrvFcjG/bAqm0tnepCUJIWtl8Fz+rJij4IX3zBctxhKWX9Z9zCpH1s04uzyxaO3kHOtl602Xf4jyTddikiQLVXKrCY4VR1Y1rpYkgqMoC4LLfQa2teWf7Wzz1sg19QZXRjeG4y0yaRqOAPuAyK2e0xCn3xeCDRIoJ9OP9o+JVgIP4FiHJ53Ca9nw/vYA3k0tR1cdqKZ4CUfXtaVmi1WbbV6jmGNvAJNijt0eTH0Eq5/HHG/RXFqdqMwZMtcWEb+EbtmCvIxkRn/dH/mk0YIAUVMIjrZUbjBZ1aCWFa5KkqsIQcwRbLvhn94YjnfEpMXg+BRCsFwZWY6A4PZ6wUrgEsosACN9IjjScJ6WD1+swuNYNRyhDh2jUBRVzVehujakZgvVsybqjuXa3aGoO4ZjkuU46tu26YbZajsdc0yNc0RqnOOUmzw2DDMsvazz6XrjzpLLTxmMk9AgOM5aScl3LZaM76bnVs9j59Rc7NQqPfH1gcU5Y+JALv9S/6YLJkkQqqXIcixDLsiOVixwhWKO4dxqsO1dnG7VrHPDlUcNjutZjrPgeAtMmg/HcK+YFBzDoTwUd5yAYznYjtVvdRNwBLzW8aosR4IjCmoUcwQkfnrq1JotVncc1x6asm4OYHT10HI0XTj2aAYc5/Wi/PydaoBREo0+UV4lHkIVLCU2K747ldZOp7lTS5zFi+smmTzxwopO5PKDSNIs/dNtIDhWNPBaAZJaRmg5FqGqKhSaW00vo+0d/7ReNc/tQnHYcDDyitDl4yUTMmk43hKTloZjr9sVZVYNVwKnmCMbMNpMQi2FK/IEcKRwESLLkeAIeH+LVbjVk3D0HEjNc1Y9O2UN1xetge4apu6HcNS5ZfbDbPWU5Xjdrp9e3WfhFcSvKzB13QORz2B5oLUL0h8nkY2eyGZbbKJ8eo50XE/W8VlycvlX6592nZAghG41pDJZjgq0QhGqpLqK4NMOMkCj4Z9tNbyWIfijmu2ObG7plVrN7AVRuAWz1XPguC4mzYTjDsC+p3GOFHNMUbrXhShXo5XACY6DMNlAcKRsdb0cTh+koTx9cqtTcOy8h19/AW+pbDXAdUB2B1CHHAXVQcF1bQ1M4s0LVM9O0XBc2EPT1Y2eb/ZMbug6LNOA4zjw7LSLRLeFPtKKoLVsNbn8K/XPbCtaAFWm3T3DTuoE09UQGnhXxBDTQ4DG98bCGKAZC4GE9U+MbMzlZ+jfgoyCYIlaVRZqGqRiAYpShlpQoEpS6FbT/oONGs62ttEyHHNUs5WRzaFXalgajnfBpCvh+AUgaBEcz1oQHRGCS+McZ8AxACRNH0Tft33fFz3P82o1d5Vw1E8Hml0taZJjFSHIKo1SO/vs1M7OQ8txOIJujGD2+jBH5FYTHFdgOU4vEHG74wwfmnyFwbPTVvKi7nT6RZW4ThItZiey35IINpYzUS5xfBwnnvEGnOXOPxD5lK0uFmVBLUKscUhF2VGUOldV1dUURZQFMVyyrF5xznYe8abhYFSTMLKtm8HxNpl0bTi6/X64PStKwf8wiOEYrgRO2WqvhrXAURgNSqJaUmI4njbZluvDGppiAEd9hMByHMSWo7GaQeDXzq+saBzkQ5E/ma1OWXKTc2amg4tRqDIJV8kFs6auCyk2jqe55LLPnXMzQ166fWEt91++HMQcCY5V2ZYVmSlalSsF2SoUFFGGFI5zrFWd5u4eP7sNOK6aScvDsQ5Bpvh2P0zKBGCkD8GR4o79OXAE/Dqu51brA2g2hyaMrBJEpoqyJH7+2ak3L3jDdWENLNdwh6LRGcEYJdzq7EHasX8b/gQ75WenvW47CJNcfi7Px3+F520uTcRrpMz1HHP5SX3G+md+NDY1bZllhC8u3e3JApIAWhAruBdJhEmCxez0WNRZdefys4f2uhbjBSZoBEdNkooSFEWjZExkOUrgnm8JWzX58+4ezgwOWnhiPZbjmpiUCcc/fYDwu+dgU251qiEmwoSMUoKv0nqOCTj2PXiiC8/cgRsnZGh71pvDESWIUCHb/OyTV2+e84brEBxhuKZo9EcwDLIcB2HMMZ4yNomixUOOWdctW9+y5eP++tDkO9GqPMmX06UOps1wCTKSSTeCop3EYQTCqeORpThbzuTzkctPxxdkcMUWNU2iWTIhHEtBplrTKFtNg8A9l9XLwunOtnemi/5omyvDm7jVt82kheD48fRUtPf2BKcDYSj2RDka40iWYxKOGAwglkpBQoay1f32GuBYgia0YziCn31y6mft0K0eDGC4hmP0R6Jh6L41MKUAjrH1cBmbT+FGXjAzY827bkH8za0nw0Sae939kE9u9VQSLcqfJX+h5FrMTs1rJ83R3UxrIjieKh/EHGeMZ8w8nqr3IcunWUESZ6FbrUaWYwmqpkJTOS12K4oBHGviaaMxbFoCH1Ysd8R4YXTdhEwSjrfBpAXhCNHeg+AAwrAXwbFcZtIgyGhHdQxoSqu/Ljiet9sKkxuqXYLmd6wyE1iQkGm1pdpp09123TAhE8KRdiG07YEHx7UkdwqOGezJD/86NDDOVssykvAiaF0mkylfGn1keSLLLM+4bqKeIL5IwcnLGGPW+Vz+Zbx+Qv8yjTKGUC5C1CRHJstRrUJRJVagcY5hrlpErYqzrV2cWS6GFWsUwBE6rE+f3tuPX7xw564ETgtPAIyy1ZNwXD+T5sJxcHwsGNKBcAlHiDKNcSyHw3nMaCgPPWsER9vv+2K57CUtx6YD73f7cA8PD6E8e+Zdx62O4WhwoyDoaokJUD1Bl1pncq3ZxlYARxO6M4LZ12HoF449BLddfXULT6x+PcflYPRQ5Av8qvnwgO/YjKXiuhMxxcT5rONpJzF5J+ZN8svl24ziwzTOsVKBEMBR44pSctQAjhLB0Q3gWK34Zzv7/DSAI8eIFTDCyc3geFtMmgvHj+9PRO1gn6Xh6LFBsCJ4mKoOP1fB8Tfmkdd3nvrKMywNx2+PjiS/UpFtR9G8SlETdJSYAtVzHal1xmvNjrvtOLCGFvQg5jhwTL3PraFpO64vuatfsmw5qOWll9OAECVkfAfMToxbTCZYqEaCVFjzZVhkonwiEZZ1fKJllGlMTDXN5Wfr3xLAOIdQEm1eKDGpKENRqkzVuKjJBciCTwtPiKxWc053dvmp7pqjOleGpt3V1VHV/PQJ9uMXuJbleFtMyoYjIPwOYB/fQ9RegF2026IrCIIv1ASyHD0WbpdAbOTDIXP8oh/CEb5Iy5Z1u75TrdLrw2uewPuNCa/v4NpwPK88lcsONEsxCrKoFgPL0YXUaru1ZlvcdkxYQ3KqTd8Y6NzQL2APGWxHnxFzXK6vzig9K6KVLLZgDPPa7bjf8hmzPYiTGf+xquaN7Enr9Kryos3GcpLlkseXqW/ZkUAbLN+m8fkMYkmGKJcgVRRHVStcKUpuQdREWQC4jyDm+HlnFwk4QldHuB4cb5lJS8ARIg0AL9dCKHYH4X85GzKgCMeHTxlrylaHcITvVDETjifv3vl4+dJ7DfhBAxibnqoUmAY+ewUI3x5BOq9ALivQLMcoiFwocSYrpgup3XZr503sOK5ojUbQHRNG34BpDGCZJhzXh+tcd7HbBfMbU9H/VbHxgcoPhvK4kVWYhCRN10wODqcysyA6VW6J69I3M5d/2TcTerVo4QmyHIsQCyVIBdlR1QJXiqpbEGhPXAdcEIFa3T/drvmnpiAN6xxD014lHNfLpEw40tYIpQnL8bIhNNjSZOUg5shprCOAIYZQfN8XSqUg3ng1HOHjJZaGo6DQ/jEouNz6H+y92ZIjV3rn+T+L70AgIpnBLFalpKxWSiWRpaWbY5LJWhe8mFcoPcK8RrFep3k798M2m7EetUSptDAllSiJqsqqzGRmxobFt7O0vuPugMMBDwCxsckAzCRWAA7/kAfwn//Ptw4CxsIiY97JGTs8OcWxKlDMyOdYK8c2HMteobUtfRr50Hei5TxH1rlgqQB/vUjc219el2odm211b9i5u5g94WnLS8bMGgXaF87e8rwr3+U9tF94VUBmICAJjjRcKwl06AWI/IBSCEqaXI3R0L46fse+JDgOy3SmZTS7qnK8ayZthuMLiOg92lZXcPTEWLjpg2zI8gGYnDZwBLXisHyAORwvzKlhmibrPNS/8eViW/3i06vDkU/zBEmQBAxh4ZQjDk/ekHLURZ6LNJ8hG0+RZ2MURb2tVo3a2LQbbX71y6y78uZ3/sZdz7fr8Zs+4a7n2/X4G7ZPARnrlOMqdbo3HrfB0GDtYFVfK7PV49o+y7XJPytJQXv71c2GlGMUgYcehPTgJ0MEg0CHYSwij+uQUnkEB0YHePUgKV+pwJvcGBzviElXgCOEmU64NwDLGWMJEndpTCkg42qrJ5bbgeEG5sK4vnwmfYgKjk9AfklzPTiCTCaeLqNCM+/0gh2evMUxdQJPsyIrpiKdlNb5HAstS61gVrfVuyk2117E9T7oKsjVGpp1SmiVHXv7l60To2j1tjeyTWBuve55wNIugpcM65Rl3/M72Fp36LfKvgdQQCbgjXJUYSJl6MU68jwTgnPBYdhoxF8+fE+8zHU+PSzM9EaU4wocb4dJm+EICPX6NdfHx1zTzOoxfRDUcARLKjZiOm3gCMstDB/CiFOYswaOVZeeG4Gj8YpBEPphkSnv9EIenr/FMQ3YylKdFkqklAyeTlEW5HMsr+Fz3PJiWIXnlm+8ocO+bfYdHOlB6rENLxo3sc5/3H1+09/NPa3xa5JCbZ+3/fre/sLn2F5XDiZkpRyjCH4wRJBIhEGiYz9AIKwQFmCjEV4+fA8VHGUw1QVm4Qj5rz7bPVo931bfEZO2hCO4PsZaONIW209gSTpSUIaqYzbCES6xdDef4xP4+vU0DmwSmwQD6DJizJMnp/ro/I04zktd5jOkhRUzt60mOGqUKlsox211Xm+5Xsd56ZEUaD02iZ29/eW7Qd86k8/xsrXc5DLsrZDpqZzp3qOuev7mPPfBfsFLJqXHA68KyESeCpNQht4QkS/h+jnSaNbRSLw8/g5e5BrTQ4kFHIHyu9gtlWcZjrfPpBuBo9tUzwBK4+FxYrpwPHwIN551rhyvCscpYhquZWQFR6uZdzZmh2dv8S7NkMkzkWoFpxyzHOV0Rv3B5TxavQ8i34xU3dYpsO1x3U9FGQb0HPkd2z4+ycHWZR5U/snqsc3xkpesfZ9r3+Ta59/b719/W+c5EhyjSPlxhDCuxrJGQiKgXTcXYIMRXr77HfGrdJbPHiTBZK4cbxmON8GktXA8/ewzfvThh8xFq52EBR/LU2E550M+4k2OY96MSnAex2rAFrcVHAt7YRN9oGnIlsL14JgAnn96Gkj/KBIUkPH5gHMvtEx5Z6fy8PQr/ai0Is+mOnNwzGyWzWQ50yh1tkWFzK5XcX/4u7pCO4pyI5L29peWiAIySzXUbcXXWnuC2jLklmuqnYJrDvC8lfDOksLb9Tj3Nd9j+55X+RwDSCmVPxrIIA516MWIOUNAL1PPsjYch9xMS1nORgcH2a92hOPXwaQeOIIffYgOHCEs5TmOwE2d47iAY/XbJjiWk4mNHg10cQGbHIA6Xt4sHFWeUEyc4Gi08s/OSDmKdwutiyyjrjxIp6nI0kKVaS5L8jneeIXMuhy8jQS8wQO+5fb7ttVSg80zDy5pMNFVmFKXTPUllbe+FjquUZ7rtvV7+631J+UYgAV+C45SR14sIunpUNCYBGFwlPCXD941v8q5mQ5LgmM0Gx3gCnC8eyY1cGTWWvykLvI+/WzxQT5/9UrGjx6x8SnEAQc3BEcKzFCl1XTKKQG8eTg42oll1hpuh6aB48mrV+bho0f6qtvqSjkikD4ioZAUEgM/pzEJ9bb6BI+KAkWWUvkgsmkq0iU4drk0/+VvKdnmqS3b5TmuJCZ351bv7dffyPr1Z7bULo2n5QdRrUOlB9BYyeYhPW/l7+5X3n1/8/oiA2HxkZoA197+YhVX1h+AkCUPI0+EngriEEESyJAlOg4lAkFjErjAINavHn3X/DLXlOeIaSkxE+mr/OLRo2KDz/FrZ9IWcISMH2EOxxkfC8tYPZo1YUU6c+fwo9gFY8jvSOoxjAd6AUeYh49ws3DUiMCUd/qGHZ2c411dUCoPMpPRthpZNlPVtrqUmtmb6QR+g9pvf6pLVkAX0AQmUnJziLWU3xxezYuXVMS04UfKr6mwWX5+UWmz8nxto6089/ZB3ZKYTMAolScK4ccDgiNCFtB0UARC0mhWzYYDvHz0XfFLCsjcHBzvhkn1j4/EHnqUY/eDQFiqq679jQVVyMwIjlWkuoIjbBjjduAokWRpOfQFi+gSOj9lh29PxSPq55hNtVOOk6nN8kwWJUWr8+vnOS6u401Kc9PrLY29BIdtQ0Wbzr/p9W+G/apCput1XNfQseVTdC+317Hv/a3nXeLhGkpXzsrWC/V5u2Folze5OO4+2S/p5iXAgwjCk/CHkQqTWDo4RlLXc6sNGx7wl9/5DfE8zzAdSkzLkpQj8otH2KAcv34mrYcjwPMvvuBDKdmb6IlYVo7r4UjhavYwNgRGB8fvQLOzM0ODtvLygb4J5Qg9i6UvktLwwRyOY0m11d9xFTKFmKmJzqeFSPMcxays8hxXfI7dvdSKFLhlYbe3v7zAnfXn/5HisXRAw5+ee0g3qryuEmapjLDvXtRnZ2+/+jpa6+aUow9GAZkwhB+FOkziSjlGlMrDmQTnGERuW/281N4kKtOZldH0SnD8Gph0CRzBhxLsTQRhxBtuHz7kBwCfjdfAsXHX2KllNnGArOAIQ4O28hIrcPz8E9gPnsF+/GPYTY0nGp/jHI4iGPiGttWkHPXhm9fsPQ2e5ylSNdHZNBOUylOkdZ7jzW2r91S7lGo3dE+Zz5Bx59tCAXbj0CulKPUHW3l+g9Lc2+9df7oShCh56HnCwdHTYZzoiEd+FPkIXFceTcrR0rb6eSkwiabXhePdMmkzHJ9AmDcVHP2LC2HYAW+21TYFR9zadFpYZrEWjqJ8buTjx8aVDwL2anBELH0kpUALjjh88xrvaSDPC4IjsslM5bmS+azOc5zDcVMpSZ+CXPHab6BAn529/Wrh+tazXh9WtgIybTZ2y/rWKcDu8Y2vcg1j59/iZZUye/uLH3tr/UsOFvlg3K98jg6OQxFyX8eRT/2wjccBFkf25Xcei19UcMQsT8ezSA6znbfVTjnWcLwjJm0JR3D7EEtwtOmUe0my1G2G/I0sqeAIOzaRHmqnHB9Ai+cw8jGuB8cAsVRIclMOA8EiSz7HMTt8+4a9pxXP81Kn+URklNLjttUUkMm3yHPcWfFsouVt79O/3fZpOILqTIKcK8huC7F1ynLtnrzZF7ai3NKDapayaU6iSybhreF3/b69fVdOSNvqMAQPPOXyHOMkDGh+DPfLOAwQeExIy8CSkL9491H5vOB2Ikt/ytLx7EIOs2hXn+MKHG+fSRXcLAm+VkCm54OYX44lRox7gwGzVF/NwGgsBOKY5nlUwRhMLUsSgzFMpLECx5Nnzyzef99sqxw/+vRTcfz0qXeUPPYxhyOGgUBk62312xPxni51kZVIi7FIyxnymUVepEppK7UqbiZaLblauhnQ9+9+KB2nfjcHfFPO+LZsvi/2uYDCmjZvlpWM2Z4muK1FpDZ6VMo6f4ruVZvuJ3TwhuP29hfrT+CTUnHfh/R8eNGAhXGA0PNFHAQIBYPQxrDhEX/x7lEbjphdSGTZ22flB++/r3pnyPxvwKTL4fgU7A1oW11Rei0c6wFbCzhWuY6+Heg2HKefvbAPPnxPn/yHnxHvYwc4Qhw/hZcMzgLfP4yYygdKBgMvVzH5HC/GcnT6Bt/VJYoZMNMTnU2mIisU8ukk0wRHz1YQW30sXzHKXR2LR1f/qc4Vtnh9eb+86pncbr++t1+tE+elqnpg9vkEu99kFUZuErib/pnLweXlqHJfxupaH+eK73Fvn5Q9NZ6gJPAwUP7wQAaBJJ+jiEKJUHIjQV63BC8fPcQviggTqTFlJ9eE4x0yqR+OAB+iC0dIjKqOPHPlOJ8+OCN0WNjYkIL0LTpwhH3wIRZwBOwHP9kckPno0y4cMVASczi6bfVX7Lta8zzXSFWms+lUZLki5QhlKFq9a56jrhVirQz7wjC3Fp655/Z1kwROSt1Iu6kRBClqZRY3wO7fDcr6nu9tqru337/+XDEhJPd9JcNA+/Ew8AOJSEaIA5SRkEKAA9HAvnx3ZH6hht4Y03SWyWhqaa78VZTjHTNpOzi65sykHJfhaNMZpy1186jgiAUch9WYhBzQ08/WwPE/jv+Y3nPJmIQFHBFwNYs9P04cHDWccqRo9elbgqMtUi1m5UWRz5Sf5jNVFDOpNLBmNOt1sda8f1VbLmuK7RRjtZ/b5fHttk/b6iVlV2+xq13v4ruTkFhqRFFXIrnj2i3IaneIO57eX4PUlRm2f731/3bHLY1jqBo67+2311+C8Ndsq4cDHfqBcHAMmQmFhLAGLErUy0eP2M9V2ILjEFn2DOUH72O3bXUbjnfApCvB0bIqGGNndG8AyjRlXhRZgqM3ndpZlBinHGs4nrx+bfDzY7OiHK8BR2jEVit/fM4OL07Zd3VJcMRMpSKjcQl5rooilUqrdXDcBUSbj7WmUpqM923fN5/jOkd82+yzVp7jUsVKj+uw6yqUWjFVq/51rsSV4zvnbd+q9vaX3UzNeliuGCWB+wwyjKVHeY5BLEKCo8cQctpWM7BBbF88eiR+XvBiwkt/mklM7S3A8TaYtBscx6B/sEvlAZtxiZgRGBFH8CxqOMLOIkq7HpvAGJ2MRvrkNQwUzIP3OtvqneGIWCAfKI8PmGFOOY4n7PDiLfsebatnmU41wdFglk1USXA0dKFddcBWl1jz0GYjMXZVfNdBIF3BHcUrv532Of1aatfCEuTaNeplay28ZQVJihD16933txUlHVfWxzXBNQfTS94//wbvuX1S9nM4JvCjAIEf6sgbIPaECDhKj3OBiFJ53hX/XnBMeImbh+MtMmkFjvj0U/7eRx+xfJ2EXfog4BJgZT1gaw5HCzuzDkcmMKTaTk2mjvQcjnUvx8/J53hFOBaeHgrjuyRwguP5a/a41Mhnms8wAfkbqwqZCe2ubhCO12Tb/u3brUA7Wt3eXpMibENs3dn60hkvS3NszmPXnH9vv6UcW+tTasVEILnPlYwi6YUhwiDWkfRN7Puez7nxOKNttX1x9I75ecG9cXRFOH5dTNoKjpOTE5FPJiL0jgR4lcpDCrINRyBFObU2iWIzS+BSeSo4wmSUmNEox+vA0UcsNAaFmQ0F9yNr4I/H7PDiNfsetSxLCz5DIdKs0Fk+E0WaovI57hqQ2XgNdxTcSknzbSu6b7d9Uo4EqvnXQAq5Vs1tOFqmGGtlIlB6Sfera3/39Hr37+a8SwqTztNW6Xv7K+tPosj5HKnxRAQvHCD0Ax17HiJPspB7kNyAxUP+q6N3ygqOAtPx2Xgm3xumu/gc18HxLpi0Bo7g732EJeU4OYHIJ+ciPKLevtSRpw+OkU0irIfjMcwDQJ9cA46Zj3jo4IghMypmHF4Nx8cFRatpW61FmuU6K3KRzki4BQAAIABJREFUpxkqn+MNwXHpgm1dhZvUzEbWbnnAfbHPLN3TrnGDIbC2fI5bLu/NHXYP7JNypGa3vlf5HL0YlOcYSaFjT5pQeFXLsiSxLw4PzM8LZsdJ5E/GajyTw13h+PUwaQc4QoRHEKQYKfnb+R7TlJO/sQnIUApPYu8AjgJDplVMynE6ZqPTE/aY8hypK4+x3izLkRWpKmaUykOqte9C2dWH1z2+uZwa39+m16/rw9x0/k2vf0PsC4bS5Sq21WP3s7e/05WWZbXq9CQa3+PSb6DlU1wh4tJ5l5P+l4695/ZLTy58jgF8b4jAwTHSscdYyKE9gmMY2xeHR+bfVZlPhqPBeKwwk0PsqBz74Hi7TLoSHJFOuevpmMTu/RvheOS6rNycchQYolAJ+RynlAR+hsc6N0WWWaccc4JjgXw2rn2OPcqxt9S5k2d4c5Ji+Ux7+9V6dBOrXECm2yD4tr6E/XmvtALkSQoom0dChATHGGEkEXkJwdGEnFOKOEcY4sXhEf5dlZNbheNtMOlSOKrnz7l+/JhX2+oFpYvsjfDwkHkJqmg1OR3q8sEl5TiEZqcw2RH05NUr++uPHqmdt9WAOAa85AzBVKfJ0PJB6fEht1W0ejJmh6dv2K9pizzP+UwXOs1nIstTVZRlncrDl8sHVZ9i7CkxWxWGy3mGi9eXT0D5cu7R2SHu7fdE3eunXUCm9Wi7E5Z8jhqMtfIR+45rTiUYmG7dKJ2Pcq0vs+ObbCnYvf0qXY3WzvkcPUgvghd4OiLlyELjUnmEL6jvKwtD++LoWHypFCbDCNdWjnfJpCvCEcKLwWh7XTYVMhT9oPqYyJqptcZPEh1QMAQwGQiOsL/+CFeHIxBM36bJ0I8GpSmHXLAYWnqTsa7gqFHkJZ9pTWk8yIsceWqhdL7Ic+xTaqLOU9SdPMVtvV59eYbbVtbs7Vfb12b9uYWaB1fcItYreZ3UpW6AZcXF0HpiJdFxb7+6ybcWxigm/AqOMpKeFyCM/da2mrm0PxYE9sWD74h/W4EjUH7wH1/sNrXV+HSxre6H480zaRWOAH8PVUBGPQfXj7FGOa77IDS3OrVxFJmphbF2YgIz0OEB9E3A0Ts/D0s1ioc+HByp/w9rttUn+DVdmiLLbWqsIDhmeYGiVFAm6y8fXK2V3oTD61bWLF+Re/vrlTb5HJsUsaUVq29iroKlvRsw5AFf7A6kAVt6vT7JyuAto5hak7gve57H3n5dKSShJCB4BUcRwI8iBBE1hvF1LAQLuYSAAQsqn+OXqrST0SP/YjyufY67wPFrYtJ2cAREDohwXAVkiqyCI7KU05a6eVCFTGxRwxEG52Mz+t5Q3TQc86I8IOVIcJxM2OHbE/ZrtqS51XamAde2LC90UZaidAGZG4pWb+2cuSOfZe/n+YbbN0Xtc3SlLAsXxiKjZtWtMcdsSyFKSeWC9aPv+Y7XY8njsrffv/4UqoYSBMcgZr7vI4giEVE/R6+Co6TywYDyHB+af1OpnQxGZjwrw6kLyFwXjnfApJ3gyCYTyRjjSBNewRFcIa3uJnX54DIcYUbfgzp588YY/dBcdVs9fPHCH8bvBSWl8igMCI7G4Vn5swkbnZ2wXzc5iqK0zueYpdSVR+SkHHV2A6k8vZGT1m1hiVSbFOjWmF32Wfb4RFdDGt9s+5zqW1oBGaEV02syDrplgHRcd2Xb7+ueR7R8lu2lped1y5e5t7+6/pRNIAJwjyvPi6RHyjGkPEfBYu4jBIPkAiDlODqwXxomx4Mou3E43iaTdoQjJKMNTArOWMplHDFFARlEkFFVPrgejjBGY3c4fvwx/+jHP+YNHDOdJrEXJbbAgRHUeEL503N2eHbKft1q5AX5HEukZaqzQos82+c57kjhyw+/qzxLXkItttWtRhOkBFsUW9cIogmAtYNepCAbCblaK718/tXj9vabX4VT4s1yMOrKA+6Rz9FnfjRE4PsiCgUcHC1XntAcwdC+GB3af6vgiPGsxI0qRza5PSZthONF8FrY42NO2+rmg6iTmfDimEnCU9pUJaRAFBk5ndkyirWlEsLzRjneLBxLiwNOAxq08rNzdnh6Yn/DtSyjJHDwWT4TqdtWK6tMTuWD2/Vz3Jx43CfdNknLm+rOcz/sC381z/HSRhJrGk24C9p186nX7LK8xL57QkuJ7u23WsKRt8OVD4J7UkqXyuPr0E9EKJlJ/JAHth6TEIT2xeED8a+qLCYHI//iJuB4V0xaC0c8c7NhON6CzwZvBHtX8EIIEfIDQcpRsZnwWMyofFC1otU0mjUykaHaakmDUztwHKRfajx5Yijncava6o8t/+jH4MMX8IcxAqcckyjJ83IkDHNJ4GnKRmen4tfJ51jmOi21mKkUWaHhKmSMvkJtde14x9fUZadx/N9X+xStdmDra4/ThdmSb7COqi6cjYujWwpyxQuy7r6zt79Ypm7FKnczqzkPIMIYvid06A+oQsYkHhMhJCTnHEGoXxweXh+OXweTLodjAD67gGDvghcCIuSo4QhBaTxLcKTa6jSyUYgKjjR7uA3HhzCDL6HxBOZXn31mTz/80GxsPLECRySBVwyUZQcOjgx+OmGj87fsCTTyPLWptpilKdIqWi0q5bgSkLlq1HnT+za9fl0f5abzb3r9m2HfJYG3wNSkStGnb7eFo+dZe1ewwdXqjm/d8ChgwDo5sGSj+/ze/sKX26xfacAEBWQCKQK/SgL3Ix15Hos9AQdH6gTu+Xj58BH+Rc0wORjh4kJNZkjTFMfHxdapPHSiRrDdIZOuBUdQ+WArWu2UI5UPUirPZGI8NdBVQAbGLMER9vRDXAOO/oEwiC1TDo6nJ+z7tkCuSj4rtK6UI5UTUrSalGMDx2ab1B2bwJY7f+/sqNs2Ory3X//eOm6OzvpzoxQBanWoy2WdFlvf2lol2fU2dr/lPunY975LzncP7Kva5+jgKHTgRSKgxhMyELHwEQhGvkDDpGdfvvPA/osu5TgJsvFUqultwvEmmXRNONIWu45Wh5Ft4Hg+m1kZGu3ZgR4Nl+H4Vn1h8/OnZlc4hvoi1PFBXClH/4AZlTAmvTTVo9PX7PsUkClTpEbZWa5EWmS6SHPhaqubxhOicz0sT44Hmtf7n99Wma3H697+8rr0rbP1UFZw7H5hrWh0twb6sr+b02zbEKLvuHY0/L7bR9UJnEklw0j7MpChmz7osVhIhJycIgLwPfvy6J3iX3UpxkPfXNw+HG+OSTvDUaVTwZKEU46jF0VMZXUL+ZAmD1bK8XwGK0NobwA9wk3DEYOiKEeCKmQ4/HTMRmdn4oktTV4UOlOKT6kbeO6mEVbKcVNXnk1QXLlGO090odc0TFiXfrIOm3v71ao0sOQapbWK5sIvVV5X0dINzsE14w2qs29SjlUByPL59/bb69Zef8XAfCofDKSQnvalhyiKRcg9Q8ox5BySGcNlyF4cPLD/wmDGHjMXWoZTpEhxjBvbVt8Wk3aD4wGEmlZ+R8px9CJUcAwBZClsGBlvltqpjcwSHAFjUPkcr6McC2p1MYwSgiMHS4wHr5ixhXIskJaFnWkl0jyrK2SofPDGk8B7Ew5r9t1wnuEKUb/d9g2nUYIL5bjUhHY1F2e+Oq6/YzcfspUvPs9XbALYrJW/1zqvaD9PPsh2E9y9/epWU8ORmvNIX/tUPhgliJgwCcVuhQ9hAeb7/MXBA/wLQzH2mH+hJW4WjrfIpDkcP/7JT9jn77/PPvjRj9g65+dkNpYH3xvyFTg20eosBbUsI+XYwNHasRlqrWaHh3oBR9j8HFfYViMs4jSJB1FSZBhxqxKl4ZcZG529ZU9UicIoPisznZYFMuoMXuYUrbaaMUkR8t0fHQbRxbfuJPOGqzUTu/mAV+73eE/tG0PbalKOy4/5gKwN32RXYW79PjeAq3ms3oC2Pk9H4W79vm+SfQ5G5YNeIIUgn6Ovw/hAhIyzxPMRGkvTJsC80L4YPRBfMGDsMewEx6+bSS04gn3+PtgHP8IyHD0IJsAnM8iD76GCY1InglP5YBhB5RmTNrSlTa21kaEcR1KO9N+hhpod4sbgGPpiMCvYKLA60Ux6WcZGF2/sf6I8R1NiRsqxLJGVBVyFjCnsPs+xt3Hsrj7Uu8mztBylGxrfM1Cru0tuNequyNY0Q6KUrDo63apCBNVOz5+/BLR7+6u1V/Plomg1wVFqGUTCZ752PkcrCI7GVchIC+ZH9sXwgffPBEdeZGMFNZV8MNtmW/3xT75eJq2HI4XO6/+bUfI3wCdjyINhF47k/Myq8sEgtGUKayNqOgEjTQVH7/RcTwdaBw8e6AGg335xNeVYJAhDhST0iwqOoobjpIaj5bmmbXVqZ7as8hzzEmWhhZa6vqi3zVu86TzHXc+36/GbNPGu59v1+Bu2b0k5WkXluS0dtwBzF1pdZVa9rzre/f/6e3cNKVa6RxJL++zs7S90dGf9GRinxhM0oDqC70kdRaGJeChoVEII8jkqw0XEfjV6YL8As2N+MRubQEwaOH5CXw9j63d11rIlOH4NTLpZOALW4rbhiMHMlKPAeoky2s9SjMZn7PuqNIUpeFpmdqYKkRIcldJKF2KNz3FXxdS31bqqb3Fvv7thbv/taqtb0WrZinjRAIXm4XyDrbSsvuOab4ncIu3j6f3zvMfWebvH7e0v1ny+/gRHKOH5TMhI+KFA6Cc6Yh5LKM/R8GpbTUngyZH+gjNxwQszNjaYSA6nHO8Ejtdg0qVwnLx6JfijR7w4OxOlOBQRmwiVceE/jJmrr6bGE7XjXAZVtJrgWE5nVhirZZToSjmOdPAAC+X4FOYUu+U5NsqR+xgog1FgMYfj5I39TW2Qm5LP8tLOTIqsNKQcRalb0WprqL0kwCz5ihcPy+rneef55vjO812h1Jy3eZ71HL+3v93681o50nq2e2wKB8xt8xGXIye6lezd9M9cfI8Sfa/v7S9yUtvrT9d92+cY+ghliIjyHD1pIjDjksCD0L5Mjsp/5iy84EV+bTjeJZM2wBGCPwIvziBKgTkcWcI4SylaHTGVN9HqDDYITZmm1prIiAiattbeKfR0gOvBEfCLi2pbDRRDI/0DYZFYo4M0xcHshFVwzPks15iZDFlZIs9cQOYmW5b1ZeZt2lfe1Ov3w76bIbMuz7FRkLTtbyfy0/PtpaHAWTfR390VN7xvLkk752s/T/97b59RCZODYwwhPfiBRCQ9HUmPJdR4glvj0VKFsXyRHKl/5kxe8AJjY3Et5Th5dXdM2gjH3DsRgj/gFRwhVFYFZCo4up9bdQ5q0OYCMjCU0iPsDcDRWv5RNT/bwdHT6UBYMdDgI4IjOPPziR5NLvhvFiXPmebTLEfqfI5l5XO8WThuCblacWKD4tzybLsf9g23L1rKcV5f7vygtS+x8R03vtGlPXmr+qatNNv+5hUFekkR9ZKtvX2n3Lm0LpUHWvBYCMHhS1nEccBCJpCIUAScw2ua3YaH4mc+w43B8a6YtAUcQf/4BRzr+mqCI+OZm6CzDMfI2BD9cARsji231dbyDz/7THz3ww89gqPW6SAhOHr+SBiVwDA/TzG6OGW/WZSmEIZPs5lNrRapg6OLVvcrx6snX3cVXJdfK2nhawG3t18tS3c1OVMlmFxOm5of1E5IlMtvXrfs7ZN3FOby3OtFQqR7vhu829uvf8N1oIuBeYIJ33d88G1ASeAISTm62mru7mSufDAe2Z8FsTzn05tRjrl3N0zaGo6zdCwPhkOuGjgCnOXgLgG8frhotVOOFRzNeGKSYqCWttVXgOM7jx/7WsUhi2US5WJofD6SQsbK6EBPcHB+xp5SXqMAn6ZTnVmXDI5caahCQ0smliJiGzentfLSHd+kqH2TXdLpjkIUjXJrDuy8vre/vIJdplmjSmtdxkSn0cRyo4jVRhJVHipFn9s+xL7jVs+/msd6WaOK+2yfmhFzq4UXQAYERx9hGIIaTyTSo36OrkKGeQF70cAxO8knoR+MrxOQoW11A8fbZtICjgD7HGAfVEndLpVn6YMIyANqV3YZHO0iWm2mUyMiSkYcqKlu+RyvBcdhEtliaGhbDSSaMV9N9Why7v9mWZgCFtOMOvNopLpAnhWVz1F2ILe4NDdiqsPBPsW4rAFXz9qnJPf212HSAoWD404tw+hMtfqrB0EtdfBuCc6lzmWXVLzs7be+nU4cbBGQgfShA56IIBJlzCMR07hqDhpIahiVD8aJ/Vk4lGcER30UjMPsTRo8fJhvjFZ/zUy6Ehx1lroSQo9FVelgoxxX4JjoROOacIR45/GrWjmuwlGnOBifi6elMoVWmJUzm6qygqO2onTKUdcQ2tYHuEH57ewE3NUHeM/tt5Vj71q3ygRXxxqA6TVNbrvHNTXwO3+f9Ib7bp9myFgIKh+kbTVPqBO4iaWHKpXHGo/6OcqYv4iH6mdM2nNbmLGObweOt8GkneBo0qkIOROMx5zgqCMwYqNGxgRCm2UZrLHGWBhuIk0R65uBI3ytELIYSVAUB/D8AyFUokoWlAWGkwv2W1X5IKZlblOVCQdH2laXTjkuz61e9XJt5yPsfd9cOG6rBLc9bmUD33miNvwts2+4KskZMv/H1grSuQy7Lsc1I1er41YbTQhyUbqnq9cEY0yLOn1rqbZasyWXyt5+tV6t9Xdzq31wybQnpfB4iDD0TcwDHntMRYZallkwL5Iv4nfUPzEQHL2xjjEOM6TBQ9yIcrxNJl0JjqagxM+IERw9ZC6dJwhCM4djVMPRQicDqCngZljr58+NevzY7BaQIeUIX8cImargSD5HXuqB5dIrShxMTtlvaWUKo+1U5zwtMuq8izy3y1155nmGW+Yz9h3fRVY3z7F5vZvvuLe/XT4pt6q0hjmf4xxedHFqTZ3n3YM1UKufXz6uOyBLLyDYOU/lo1y103yHe/uL3N/2+kMKl8ojJTzqysMDEYTCxNZDEggTWekuMuZ7eJm8Y/6RefbcTm8PjrfBpK3gqCbnQh+NREXpRJiCbrqZU46S5QwIUMHRdVE2Jkor5Wih1cCNuL1ROBY+pfLoAWfSKzKCo/1trWRugGkx0anWooJjUQdkervy7Krgdj1+04Zt1/Ptevw30z43i2g1zUtoHrK3BEZAtUpn3HE1RZf0o2tJtny+hcDs2Jm/f29/3forrV0SuAyEpDxH5ukwpDaCEVwSOGdcGg74Pl4mh/wfmYfz2Wk+8Q+Di5tQjnfBpMvhSLNhTyCUOBeaExyrUQmGgjIcXFOo3tVWh7ABDOU6VnAk5QgHx5m50Bda62OldJAfa/UYV1eOEklwgYPCVyNrMeCG+QTHjLbVBQrL+aSYmkxpm7JSUCrPPs9xEx9v4/VdfaxdZwGrAjJWryq+tmJs3kbH9Sm9Tc8vmxbU+39ePbW337/+TUCGlKOQ2nfbasZi+NTPkYdcw7N0gYb8RXJg/pFH8uxG4HiHTOqF4/nz50I8fsyX4MghQgZhKBF8DscqCVwFmRVZaNtwTC00v2E44qIYMd8/sEINuGa+JuV4Yn/bdeVRepaXYsY0T02OPNNVtHrez3FTemIXFL2tuzedqOMLnF+hO5LontrnBEdTpfK4h8u9XrfmncTFtrJs3tt+n1OUrfO0FOaSP3np+b39deuvXeMJwaWnPenD+Rw9ZhIReREXJqIxCbStFlK/jA/ZP3jSnqelGfvHwUX45mo+x7tm0mY4AkKdQ2TpRIrhgPfDEVYAlsoHeRhpM52ZMowVKcgLDT386o0ZJQ/VdZUjwRE+H0HIhGtdwfGc/bYuUBiDqRuVAJuaXOQq16o0q0ngfbXPcyXSU1O9kr9Yv2FTnmO3Gnhvf7mGvXvL4FaXllEzqM6DFGLL19h7q6HJhUsdwbd934bj9vbn6+/gSI3fOLwggmc9gmNJcIwJjrDGTR8UPl7GB/wfPFneHBzviEmXwBFCPIabV90LxxBM5mA6z1kZWKpmtWWaWRYEmhurbxOOzba6LDGcntjfMQq5BZ+WJZ+pUqea4Ki0MhT37EvhaVJ86qtMiVqq1eJinmZXP606xy+EzXKe40rPnea8qxf70jN7+9U6CkPKUXNy+s8fa5VjoyzXKMLuWncV41xZtg7sKtS9/d71n2+rAyF9CZ+HOhTMJNwXsaCWZTS3mmoIPbwMDsw/+LE8SxXGQkzHWZrMzh4i/3xTy7JOnuP587tlUi8cP38O8RttOApIQXeKLJUmhyjI40rR6py5c6zCMdJlCKXPxyaNh2r4FcwowQ0oR4zQ+Bw588sUB9Mz+4MKjnJapEiV0anJCI4oDfk+a6jtGj2e74Z7KmD6FOOudvqOv7/2yX8MjpYv8VLF2FF0FFVtR5mbdex7vtfO3v5CvXcUu6utJh4w7QlP+4j9gLbV3Ecs/Cog4wqcBF7Gh+bZTcDxrpm0EY4Xp6dS8COeCUjrotVcrMIxQBlktXKEpSZutJ0uH0LpX94MHAszjuThMMYFRpZnh7StZtYEeSGG2QWr4Gj4tCiQknIkOJbkczRr8hy7CrCr7Ppev+r7NihGGuO29Ljn9q1BAVKOc2neoyDX+RDX+Rrr54QU0C0F6f5ec3z3uF4Fe4/tuzxHT3BJokkUAY9EIISIuWcSpxypKw8lgdO2+sg8k8ye58y7uI5ybOB4V0y6FI7HwWuhpBRtOBqeCMshnIpkYIZyHAHkyOH7gaH6ahZA8xC6jAmOMGmMaytHgiOPvIRN+AgBH1noAefSzwsMp2fsd5hBrgoz04q21TbVJXJrRWnLls+xL4rarUhZcYJ1fGSbjm/e393O7+1Xv7e+danXzQqRw4J3O5FxrZlZ43PsPr/p7+braaLcZGfdeff2l8se2uvqgi0cXNR5jkwipImgDRxd5w4O5vl4GR2YZ9YW59qKCy8OLrIUV9pWExzvkklbwPHYdeWplGOVxtOFIxwdV+GYmolm5wN9o3As+AgeHymwAWfwVYpheiZ+xxIclZnpAjOleaoVwbJHOc7ht2Pe4Cbl2IXqxr/39peXqFKIFK1WZUs5NsqvpbB167sQQuCyv+fb6ise137/3NVx3+0b7cYkMF/IwNO+g6OkbTWLmcdDzqifI81RwMvBjcPxbpi0Fo5vv/hCvAyf8uMAQtHs7jYcB27kIt3bOS9yTgngFRwB/wCmpArCWWqYXwVk2DmuB0dAlK/gPzCI+FGWsIsFHJlBoAoMZxfiBwRHnRtSjE45MkUty4TzOTblg41SWJcrRz/6Ta9vZF2jfGpfVdfOpvNvev2+2AcTuWWrypGyBdp+3rYzYm2iDyn1WqUudS5rPe/WtLUT6J6/+769/XoXRdFqD5wx7fkMPh8iEHCNbmMmEHEGyatjXvoPzOeitOfamgsONS5ZMt01IPN1MGkFjkeffcaD0YivhSPlOJJybMMxCEDRaoHA8iCz1obGmNSwOlq9BMcfgAoSdksCb8GxOMqS6CIcwcOoVHrIOXyCY3puf9eAZzrDTGs+UzlSZmvlqKG10pb8SDf36FyKq+HpmzO19kzfbvvC6ILguPinCyo+dX8uwWrxtHuNFGT30VWUzXnqN8zPOK+lNppV51mytLffWf/K5wjOhJA+14GNEHiMJV7IY8NMJGTVsgwefxk95H/PZ7MLI+NzjunOcPy6mNQDxw/5yxBz5ainF8IcHgjLIMo8lZYz4Ych43nuqmTcDzOv4KjI5+hbfaNwBPwHY0QF1W2+LQ+Zz6pttVdtq6dj+7ta8ZyTz9Hwmc5tSmMTVFk1u2VWE89b19rleXbz6GXXv9WOXravws5xFBXtXshLF+2mXL3Gzj21L7pJ4M3idRVf3y2I+m72tqm7xn1rb3+uxF0qj4MjpM9RwdGYxAuQGEoC97iwCoyHeBkOzeeisOcm8c55Ph2Xx8n0DNun8lRwvHsmrYEjeDDCMhzFhShSLsVgwJfhSCWEVW01udB5AKsoz9EPNaNodQjFLCWBn+kH6lDL8oUu8tz4T57orQZsUSdwUo4tOPKL8tD3WaUcmfTLAoP83L5PMITi07LQqSp5CvI5aiofFJqRcmz7q+bXx+U+v9UClfWVMaIGL42rWfdoXp/7q/b26xVYv/7caOrNydv3s1VJ2HqGvltSNk2gZ96UuKUAG1PuS+0qw9a5OoKxF6XrJOw9sk/TIWlbzYWQHtcBCI6cxV5gEsMQUfEM9XPk0r4MR+zvCY7KMxe5DS78Y+wIx6+HSVvCEaJIJ9IKLiyPXUDGD8F4XtVXux9QnsMLAlMpR2yE488+/dR+9NFH5mPAgrGlaYDzH2QLjt4YUeAhIThyn42sYkPL4OvSDLMT8bsaJucFnxVap7rwZqBtdapdKg+sq96B6URJedPxu3MFzDlaXwB977up51cQsZxT3vu5v7X2pchhwKmL0aZqIvrqusfRNMnuhMl1xzVfe5+dvf3+9Sfl6HmgjD1PSFDqdyC0SWRgksrnyCU5RpjUr6J32N+JmT2feebC2uCCi5PZ25OT/IunT8tL51bXSeBHn62D4+0zqR+OT8GPX1cBGS3og0BaMZvDUbCMewjZJjiq8dik0VA9OISWL6CLHMZ/An0VOHo6G0iIEVPsEGADY3RgSjHILuz7xrpsollp7KxRjroOyEDBLrujNkWJ+16/6vtWPGFdHHf+vuf2qULGtqLVfZEXITCvmydItsZYtOHYPE8Kvu2DrPJLe2q225kJe/uL32ezXBRskYIzoandre+FOgQ3ieeLmDEazVoFZJiwr6Jj9reilOcz5NeD4x0zaXs4ckibVWk8VSpPxnnOOCggU+RM2MAKysM2gXHKMYROJzQgwej1cIT96CPspBwrOIYjrdShgB5aJn1TYpCe6g8seG4KzPMc3ba6EDTikyptjft9NxdP1x/VMxtmoWA7PspNx88lSc/79vaXdwrd9dQidxUyK+6HLYNqXZ+j8xW2Gx5veZ69/Y77o7VuTbQa2gNFXARZAAAgAElEQVSVD3osFJLHQqqEC0RCcmmNYdxz2+q/M6U9V9I7txYXXGD29gT5F0+xm3LswvGWmXR1OIbgLiBTgFEqD8GR8q79IDA6pWg1dKmNol7gaYQ1yvG6cKy21RUc7Q8teLaAI+Y+RwfHFeW46v2rnultg9Pjetr1Iruuguy+/1tqn6LVS3Bc/nc7BdiNJrd6dgpGYxJWFWH3fUu6sblhMc0u8UjWv5K9fcW0azzBBc0zE74XmBCSxx43Do7gxqN+joLxV9GR+ds7geMNM+lSOOI1xNExhL6gWupKOSqeSopReS5aDa5ds9sGjrB+gBYcI+pV6uCYmBOT5A/UYlt9FThiIIGRhjoUlg1NqQNVskFxwT6wvIZjwWfGIGU5eUHdcPgFHJt8tq5yaxjTV/nSd3yft35TJcze/rJyXF1/qm6qleMiksIZJUGsZhosw2wBRReEq/9sw7KC5OLRuFzIx7h6/r39Rji0159SecirSHmO5HPkkoUs4DGXKhGc02hWj8MwJvjLaHRzcLxLJq2F4y9G4IOn4Nt/kICSH22JCo7TFAaUfE1YiqBTXcGRPy+1OHikp7Nn5vVX75tdt9Vilg39IDwos+wBk2xgjfRtiUExYR9QErhRfEpDtoyCSwJ3qTwGpF87Psc+qm37/PqodOty2/ZEVzzuW28/p34hzeK04df2JbqLtRVkawJs7UVtXifwNedpgjzcUDCxWss5FAUoyrCkPPf2F57ZZv0dHLkWlOfIpPalL0IhTMK5GTCqrSafI+fUPPhleGj+zhbyTCU4t9nVttVfB5MuhyMgjgCR/XIsS49qJZlwmU2cCc4okh+Qd6fu3JHD2MAYpxxrOIZQBMkKjjD8+asbhKM3sDQvt8CgOLc/NATHkk9hMFOqTuUptHLKkeLVbXfJhimE81kvHZXSdvi3L8D5BVvb6Jsp07xnUwR2b18XbeW4oORCCa5zjCy+Yk2Bwrk6badSdTN1FopyOeFqcZxe/HRaSvS+26dAbFMhAwHfI5+jz2MONWABD8GMpPJBIfGVHJm/4YU914l3dm043iGTrgDHWNC/mbOc8wIuINM8yiy37CDQm+EI8/orXE05DsKDckzKsQXHsfihMSY3eZUEbhWfVQGZGo6uqGfdY1P0eZOPsNlwVJdlX57jqi9z3aXlnBMblOTV8iy/gfZzGhh/6WK0E+TXjFNovpm55lk6fqEYryjdqRxn8Zu6h/a1JI1Ub6t94TNuIh7xSFo1oNpqNLXVEl95I/PT24Xj7TDpUjjmb97I7zx8yJeVY/NBqtpqU+c58iCwBEcT0KCEULtt9YpyhBYH0NPZ1eDIT/MDHPADrtgRAyPlGFgtkvzU/J4lOBZmZhWbqUKkzPBMWZRGacPqbfWuCTLz47fs5ziv0e07vnMldtIZ56+uPH/P7IMh50Zw156/eXRLNNtr2WlSS1u+xfa79a13xx8053DvX4PJvf3e9Xf9HCnPkVoSSzg4sgCxpG21ROi68lAVjcArLyn/hht+Vkpzbqf6Qg7j6a7R6mZbfZdMWg/HD8HlixeCeZ6o4AhZeqAWRE41VsoRvCxy7hEcAxLQgS0tzdfKjJ7BCD9UBMeJazbbbKuvD8fygB/4OXvABRsYqwOlRaKm7IdGI0dmZtramclFisLm2sHReYXNUp5jb7/E6rfQVYDz6pqVTuA1xur/LOXQOR24/Pr8l7a3v0yiTgd2gmM7Wt0eoNVu5kHPd/9uTrzd830KcnXQVt95t7OzGAC2fPw3174CmGc1XVhS+PC5g6OJJeB8jpa6eLkZMnglDvBTv7AVHKEvJK/h+NefKPzZn63fDlnLPm4lgf/ia2DSdnAcQ5aUBM4hdJFKiCpaXTJUcKQ2UzQ/huBIPscsMzBWC23URFvNC60OByPNn18djuLlJJbFYFgelC04IlAaSTmxv0cBGTtFqoGpVTallHDNvcIpR1PBcdPc6L4t1qZO3bu+b9fz7Xr8/ELecT73rv+OTVvSXTuiz89HcCTl6CIhrWunfYdbdR4uPs669y3dkNbctPpe39tvrWvL02HALNOc0fRBAZ+DRTZBRHAUAUJTN7sVPl6JgfkpZva8DM2Zd1NwvAMmrcIR4L8AKUcI5kF85yF4Rh+EUnlSqpapU3mwDEdKnNF+HZDpg2MJLR5BT5/tvq0Wk0ksTwiOOOC5csrRWtpWI9EX9vc1eGZTk2rDp9agpRxFVT641oO17Ua7/n301vk1v5/r+jD7Ntr3zD7d6Ja68tT//naqVRv8nYYQ3dZmzbez8vyW55vTYcvj74V9IUDfkUvlIeUIFrGYRxxmwGjAlhuTQLXVeCUP8dcEx0Jk5743PJcc1bZ6W+X4NTFpIxyDh+BqDBkSHBmEzis4UnWMCQNGypEqZJSFlXM4VtFq2k5PNDSPoA7pv204vg/zEbavkHFwnA2GBStHgntHBnoomItWJ+XY/oFRJoeSU63MjLlotc0LjdJSpiWvaqvnj75odV+e44bodrsf4CY15V7f218fIGvWX4jMKipaXe5J1m1q2wojL5a924R2ft9azn/sCs/FYR2leklT23ttn4FZRwIhhdABIzgmPOLWDOCZkDPuuURVab4SB/hrVtqzwthz3/NbcITCn1FiwZpHe1vdgeNdMWknOKqMwBhVPsc856oelUD/NOUHlue5xTDQOrs9OOZ8dihZfFjBUfhW66Q8s39AqTzUlYfyHB0cC+QaKGn6oME+z3EraG990C3nWbpt9aJ8cFsltm507lJz2m6zXKbZvI9j698uOs/v7S83GXZL5YJeWliPZshQQIY5nyMXPKHaakZdeahVOFcVHK08K1Cc+/Zm4XibTNoJjuMslVEDR4ArilZT1AoBlI9VOAZQEwvNqaTl2soRMUWry0iPGjhyg8AAsToxf2jBMhg51aWhBPDUKJ7ZctGV57LrftuO3RYLx3r7fKyTKtQOIGzDm7395VQrSy3LmvLBJSG3XLbXLfNb7A7WjE1YW07YcmmKVgCtHZTb25//hJ1yb9bRNf3Q1GdBconAVcj4JuZMJrStpj6PxtCcGfOVPMRf3RYcb5NJO8IRMqqj1SVtDhm4Kap+jryGo/FhrA1cKo+4TThqfWAphUCLWJ2ZP6RUHqccNZ8ZZVwqj6W51YY298tJ4K09WIddV8szXOQR9imqvvNe10c596b1OCW7r3dR/b+pfYOcRnO0bzLtAVjd1aTj2q/TICj3L23RcylKTDe5+p++bfR7b39xA6NlVaAZMoIzajvBELhotW9icJ4wDgdH5qpozFdyhM8qOOLcj3B+nmEK53O8/rZ6nN0ekzbCkcszwcShIJ8jfRDaUjPqytPAsa6Q4RaWItbG5kZba7gJ1U3BMXv9OhAmij2KVkcYgakjDja0RgfQLFZT8Qc0mpVZuAFb1vAZbathqjzHeUeWDgu6GSS9qOlUytC2i45d2ZJt6vqzt79E5971nwdk2hi8bCu/TkOuO757XPsb7zt+7o28ZBNw/+xrIejuJQiCBEcqH7Q+YkgkDKQcjWSaatjEKx6bv/ICeVqUOFcRzstrwvGumLQzHE2RSUapPEHAnHJsygfzHC4gY2G0zYw1VvtBVN7EtroNx1mEkcfUkQUb0rYaGg6OoAtKV9MHrUIKS9tqKJfKw0XVsmz+uFwxreQ5zj3v1ftW372+QqbbAXxvvw80HS2odGFp+G/zaLc0a9+odh2H0D2e/m6+zHaQbN1xzWfZ23fBNE0NhSn2ICnvWQSSmcjQcC2CI22rWZXnCClfyaH6K0/K03xaXJSeOtc8nlxHOXbheFtM2gKOEDody1BymfJEGJFJxmh8xAKO1YCtOlrt4AhjaRBgEJW29jnG5tSExZFyqTyAeY3to9VtOE6j8tAz5shCDikzH6VJygv+hwwso8mDBEijbMoaOBrhZsi0mgNixUfY40ucX5udWS67+hS7kmNvv+Nj7Kw/DUdbm8rTO95gk3LrU4yblGP3m9tWeW76PNued9vjNtm7+X8/KUfyOXKqY5IskJKHijryMIIjj7ig2mrKhBRUPviXkPLUlMVFadW5fhhPaHbAF59cbVtNQL4LJm0NRy255A6OzpcgRJE7n+N8wFYQWJ7lNMrKwA80NXzIzEzxMFYUkHFwPDpSlJyxOxwRCIPYKzCcw1HIIbc6MFrEZsL+EMrkxvKp1XVXHoJjXnXloW7RbThuVnCborF9vrzr+vA25DmubOy63rdvh33Gl6PVc9F2SafvbufvdWMSui3Pescp9I1Z2NtfqHnXeV1wTpVz1oRSwm2rqTOPpX6OjIo/GbOSfSVj+xkLxMlNw/G2mbQVHM9SyPiAWhBBmLyGI80hK5rpgwFEAFdbLXvgmFNXniOo714HjgzDKS8PPcaqbbVFYDRiM2N/iFIXxrCpLTGD4k45qlIrUq7NDJk5W7p5hn35jc0bdj3+Eu+Ue2nX8+16/DfdPrlI1jS7XW1ye/k/tO/41aa3i4qZbglo28Le/nK02pLPkQIyIOVYwRHcDMARcsY85rbV9ises79kwpwaa89vSjneBZO2g6OAjCkJPE8l45FwytHBsVaO1Jgnr1qWERzJ58i9UGUGyuqJZhQWSQ40wXH0/LnB48d6t211pRx1mR/okI8cHLU5sFz4jOA4wX822uYGmLKSz6BpbnXlcyQFS+2r1hfIbFBavUHmLZXl+rKclnDd21/GW73gndpqNyq3cW10y/naqTbkCZuLeuG+8+VRMPR6O+qqmV45r0Pg4nnnYNvbX7P+zLoZMq49SCC5iWxoYs4xsMxGTHIBA8Yk+4of2L9UwpyKkuDon+uHuPa2+uwOmNQPR+pw/qZyuPZ+kNa22sHRr+GYrcLxTXKg37khODLGjgRFq6vyQQdHWJvTlpralbE5HLWiQQ2s1dtvrdboU2bbKrbmuE0KtE/o7O0vV8yQclzTsqxbIdPrAaR8vHZlS88YrXUevb6QET2/t99a1ybP0aXysIBxHfFAROBwXXmstV61Zva1TdhfWILjdZXjHTPpcjgCgp9VcAzymcdpLGuRSRGFzt/oKmRao1kJjuRz1MgMdKiYU47QrIR6k6CGIwweY0flWKXymGIw1AcYIVcPADOEpW67JjYT778AJjcQE1ASuOYpoyRwynOkrjxSmPVc2qQAN/n0ur7H+nxda3zbPMfLLlcnYXrw2vFVftPtW+RUodr+x3bL/ebwE1VOQDuPoMkSaI9Wbb+fOoZvajjcXei9/cWKuDxHEgJUW+1BcsECC0ScpldzJOBUW80ks4Zzzr6yQ/0XheCnYW7PrxWtJjjeIZOuBEdGFZU1HP2m2W0OUAJ4BUdKAccKHIfqtc7zY/14Rzg+B/zhBHF0gmF2gANf44GFHoIJ3xQ6xph9aKwpSDkygxnTMkVpclhbGkpHbw1fWvYhVX/1bW6b57sXUtOOvzs3eteuP33hl+7z982+ZCKjpk7d2upeD2OnBrv3fd3j2ve2tWmOy7Xde/stj1Cd52g8SObcWyZCaCLu84R8ji4gQ9tqbl7bBP9TC3sWwp4r65+XvEkC37JlWVNbfQkcb4NJl8JRnZzIgD/glXKERwEZKhdiLBfkbyTl6DHGmO/T1Ghqvm2tF9CGxhiTUuGqYmHsIPlGQ18Lji8ncczkIAvCAz7JjljoJZYy8zUic87+iMHkukDKwGdG85RrU1hjnc9RrHQCv16e4+pFcrd5jt92+7C6k8rTo7wvHbna1Xo0KKYzopVmyKxrArLtKNd7bJ82hNTT1WWvcONLKUIteMSsSiB5AGGqxhMMr3GAP9elPefSOxcWF/n5yQw4yb94+nS70awtON4lk24MjgUFYfNNcISmzma7KEd8BvHIgy/fGYdBPEz86XRk/eCASQxgZKUcZ+yPmeWFtSplOU9hkUGjsIY7OHLSsvSoN2o75xl2a6c35EXO4bWyva1e2du/PM/RWJG5MQn0fdEazgHWqm1vr21zXLPw6/5uf4fz6ZBL+4iF37P9+t7+2vWnyTquZRkgmSh9CBFQwwl4PLKeCZnlkhvDrM9fsQH/cyXL87AwFzwOxnqAGZ6h+Px9KDC23uW1risPIHaB43WZtAJHPHsmXscxHz55wvs/SBWtVgUpRzD4BfICLuHpcuW4MxwZPoX47vCFL4/jIExGcWgxyFh5wC2LGYNnlI5x4f1XKhUEjWTVyDV1BTc0lpUrxlzji57HJp9j70aq88Km/MSr+hzvp/0qCbw7mpXWolrH9fmJi+/Suu1cA+DF85yBmSUXS/t7WaM0V5wue/vN+rt7BkBkk9xjVA0TcJ86gJuIWe4zAWFgaLL1K3PI/4dXFhME/lin4+n5e8P01TOU2BKOXxeTNsARkk/OxfRoJGhbbXkqeSuVx22rXUCmQFqA0TBAa3LN/KBKvia/Y1j5Hqtt9RXgCPAnX37pyYMnvtKIAx8R8mJoLIu4z6QpEbMTfAQ4OObQnMBYcPBSWU05jtR6Yvmxa3R526j1tizb269UWk903zBkTFVTJhajQFujVesSvnXTILujW+d+41bZX/d9C0QuR7n39vvXn8Ix3GjuejqC2mLDhwcfgJtZbQW1cgez3L6SB/j/DDNTw4JpNsVMech/9R5I2NFtbKNyXIbj9kxygs33jc5yY/1A78qkNXCEeB2D+9ErIbxHguB44QsJOZARTyVKJkUYclbmwgQB/cuYKSYMbl18FPRv9nzla+QER2OmWoZJeSU4knD/b+AffACBY/g6RKBKRMbksTU0CtIn32dsT9T/yRSUIUobXjBSkYxTLx5X670CxznENkV/u7TbVWn2KcbmvHv7a+8nrkKmFa3uJizO37SczFMlaS+68VSvLtZ4TSpOK++xdRw1cG5vw/f2lxNG3Y3NjUdhbmvtUTMa5oHDN8L4tKOzgnOa/22ZfWmH+v8tmUkFUzM7LXPDj/Ivn7iRZpqKaNb+Blrbajy7GpNIrDk4UjmzxRyO2zLpSnCkyBCpRkGxqCaVBz5sWbDS862gqHWWG78Mciun+dXhSHsoV/kn/gSQL748C0R06Fs/DZnivmQQXAeefVt+ZC2LLXjJFZRlUFUHcG6M0usTwLdReZ2aapcMvO6xSCRe//o2ti4775yl98Q+R2ZNvYdufQeCRqC21qk3z5EgKVpzqzvvW1rq1ne3dpO9t7+Y/91dx3pUAgVqmTVS0SRCDs81naBgDRHU2Ff8Hf3fmTS59OKMZa8K/fZR+fn77q5FyvFG4LiOSQRHTunPBEcfGiZQuwi2HeEIibrxBPkbF3D0XT9HPS04wZFTLMTztaJSQgslJGazEsXO22rn4LD0GfnTLyDjIeRFAE+8nfgiEJ6JI2aztBrwdR5939PmfWU4Z7o01gpjuDWi025s6cJYmQLYJVRH+a1MH6yO53UljOl53aWWrHvs7S+vSrNMivIcqTneYt0uS+peVYQt32Dtwmi/n/aBzfa7qyz7Bnrt7S8pa0e2um0Zp5xUy7SwjLl2hlRBR3kAFBgt/PyvcBj9+yBAUZRQ+eTL8ssnT0g19m+p6+u+mT54uXK8nEkUJF6FoxsbvXE3ewkcIYQHwQXEBZUIUQoP9XMUkLxO5ang6NdqqXABmTKgwdVgVM2nssAQIEvjKmYKGqzDZyi3jlY3cPwEHD8CewqI+G//Vk5+7dek4pzHk5GLPwt7YafKGP+tkFpGvyc0/y1wa42uGk5sm0/YXKnb5hluu8ne269WdlM+abP+jHyOdjGhZRvh3c4FbfJN6X19z29zzl2OuW/2K0chRazdbsal9TBm6IZG6T2WG/4zmUz/wXq6pGszmR2qafyleufJE/1ZlYPQrxp74Xg1JjVwNNZqTKxifkRjo3eH47NnEMfO53jZB2lqqwsHR8sKEsdWW9/VVpOENchZlgcgOEqTmbMwdE0pihTp97+HSQro408+sZ88e2bx8cc9FSz1z7NSj+wjgD//AiILn/MHnsfx6FF1wCvgzfMXNv7wPT367DNzzn9wyFj0Rwx4r/oKN1W6LONr9SLeLhq92geyi9vm78sxcd/tg6LVrRkyS8p7pba6tVpLo1vbz7e+h/b7XY3HalTb+dPaUe3e83aSxO+ZfZp37G5EHC4qAyM44+p5LvKfDn+YUP30yrX52YcfVmB0d66eLXUHjjfGJJvN4YhyrM6+N1TD18tB4jaTVpTjbh8E3ARgtqjh6NdwJOdn7QCl2dazLGN5DcdsBusdQasU09//fz6ZbQXHarGacjIHyg9BQ2Oqmdl4BnxO2Y3jTy0++qhZePODv7Hf5xp/bK0euuOumOdYf5X9QmJ9P7TmJ7B4395+dU1syBtlVmTz2uruCNZmNfuen3/PrVzKzujWtVHyXe3s7dMO0T2s0dxwnApW/MXP/iB6tc21uVGVtwIyxKSDA4gggKDxfut3s4tmOJcxyVXu0eCUXeD4o08+4a+Pj9nrdz/ifcrRnKUeo76OdVce6gauy6JKhLewCrCe52sXGaJWYfUHSS3sxINvMrDSh46JUzGsuYA6zb4cf/n972cbF6u+m9THMXzyCcOPflT9+QmAH8HiJz8Bfvxju3RH+m9WvP/b+H1j8QcAXDH84rHtxnjTp9ukLJv3b1Kwm+z0vf7tsn95s9tmDS4LzawP1VD01JAnbP7oD+msr2O/LC9yc6joW2nfitwY/PXP/m/8DD92a7v9tXnZz91aRkx6hg/E6Z++Lx9ysAc0HLsDx6syCSXU2fewnXKkD/Kvp6c8+9P/i3XheJpNPDdqsWCyDUcq33dJ4A6OvlUoluCYUpNbR+nqg4hfQp4HCOZwfAs2iygXCdn7Bzj/hPXMsF1dRAbbCXLVn6JvvX//b2ySW/wRs3gKZm42qnxVpu3ft3YFGOMUrSYn/zxw4gQh08ysCbD1+Rjp+GYXveQTbI9HcJ1jFh+jff69/cvWX1vOxT8yib/+/ANGOYvNY+drc+2PwFr+5Ev40y9fS7wLvPfOsW3D8aaYtNW2eis4CiZZuVCOCzj6tXKsotQyy6kbuHJwDKFgoM6GFaXHxzD+BcJCIpi8BUMEhDQgnJJKLzD56ROcX+qLuCZQfvj/20c6xp9YQ0ve5+qs97/d7bK53DW68tF45wQrb9/bX09Hm1u7mFu9NEbwku9/nudYH7OS5+jyIFtRVwOml5Rk9cbVprZ9CnP5w9wX+wzil6HF//zpf2Zn17wc17/9c+uSpo/xGvgKuBSON8Ck/Bj68IsvTPr0qT7+BPaTZ/+hgD9uFFQtYbvK0UxPZfDOEZ9TWsSSlXm9rQ64ZgX3WBWtpuRvQUnXLoUnN7ABtStbgWPrg7BfvcCAefAJjKN6WBdVRs88nH7+Lqscurf0+J2f2t9m0H9swUjIrn9w3ukz2KM4m+PMDSvSe2pfMJuppnywdf9wTWi7zWrb/sv6XiTMdse5L71z/uaHoOdVTIufxr23b/UEnvjzZz9kP7+Ny/LDv7Tev40QnVRAMcf0369egz8w9nd//5H2X0HcMpP64Aj+r6fg2Z9ivq1efBB4VqaeKx2kId5F5fykOBVtq01RMOXDCusb42Ge37gBju6D/I8/gX94hAPk8AMG2vBUEw01yosLvPny+xR3uZ0HfRmpV/4XC/571rKq0UHrsfiz+l+U1Nq9oOjvRiDOr7OOIOQdBbk4rnvg3n61AjbnLlq9UGyXexg7irBZxlaLsqX397UuW/mZ7e2T79UCpRHib/7ph/j73nK/61yi1ooHXyCJC8hJAXM2cC0P7aMcZvhLqOA3YBtX310waY1y3AGOVJlSFoLSeEg9UsUgJYETHEk1Gi/QJs201VYNDiOqea621YDOsUbC/hj2v77B4JzjUHIIz2XXg2lqbBFjnCR48yljlDh6K4+n/2wPZI4/scp8nwxsCptcN29xfu3W/6MvsWeuYjr/6m+7fcltRo0n+nyJ3R9Bu6mtQ2tPM9vLnm/OuU2+4n2xTwnxltsv4kL+5Wf/B5vd+MVnLfvBP2FwLhByA8sV/hd77x5kyXWfh33n0d33zp3XPmYXCwyIxWJJALvAguCQkvhekmU5elSUWALtOCUlVspSHMd/RFFsx1ZCsiKlHDlWuZKSrKKdKkVRKQ5hR9Yzia0SlyBF8LUCAWIXWGKwWAADLBazr3ne249zTvCd7r7T986dncfO3Z27mFscLmZud5/uPqe//j2+3/ezBEc5DHsViJ84iuz8FzdosG03JnW61b3BUYVKLQSj2ulcz9FbjsWJeCuP2SkPjqETLnEmjq1rjGTWtQz1FIejXuAI2zxKnuOKf88b/4Rz6vwC9iRNjIZRYUUmkCKC08DV0yO40s945Pu+6+5RynxMQOzpbcOtEyNcL4bZPugaWmbr7v8uGZ8tL6oxx6pF3yFVpihesTJV3VJl3U8zFdk7tq/EEtc7bnms9ba7UVh6gMaX1rwdG/WN6Q+I2W0HRQB3v+mGshZGXNOrINjlGqzIYOsZ4ksn0OQ77oknby8mtXmOvU8EWoXzHeDo0tiDJJMxug2OefngeuBYu3zZ2v37s/Hp3uBYTsJR56JGE/vFIoYoeuRdd45lkWmFS6f3irl+TFju0Tnx8As4Lhw+5Kyt+b+thWVbPAmBzlimo7TTjT7vsvGFzLPVuTgt+YoFAN5QnHYdXuMqCk+XKtBa37/LxndCLSuBb585Lqa3uLxvuNvRl1w0l2BPGELHBlYYWBXCNJvIjiZYPP1BkZbP4e3GpBuDYwi9tATffrG0HFeDY+gtR0ZQVQBrYufjji6gCnen5bhRcCzv7kedG2m9jQOoI7BpHuN0gAgyNKMYbzx9r+Abpi8fTmKYZD9grDxO6aUbD1KaNutls1elv7fp3O+s8QXVAkrLsafMYo/scWdQsWe/HQmFjvr3XrTFG8VU2t/deeNTzgtCfe/cZXwXn+pDCOvLTh/ci71yBHUswxEYZQQrUxgdY+HNbrfdJ9JDFyYAACAASURBVIl7WI63EJNWg+PPQUzQS74EdSWEbi1BjfUEx6htOVKNRwSMObKHjKNMmHFBRBXubDjyOos+5rhZcCzfIFML2OcSTGRs0wAIb7GmkFrjysgevNnPeOTxM24vHD5qYe/dJiTbPcw6d8DzHB18zFG0LTrmy4ywfgmUSNhL0GMFJXMx1h6it54MvmJp8rgrXvPK398t4yuXvZoG+hvnHhIL2744nROTM9iTNjFO4S5K9QjLniawI8tYuvD7mCdtZtW4VXC8TZi0JXAkSCmRg2O7QibIa6s9ncfFbXCsmyUqLWYLh0bS2mVYux/Z7DTsZI+Y440mZsq5QF7FXVZg3LvYIEnYRyBdluLimQlc6mc88sEX3f3KmI86IUbXLScsL6Sb59h9gd28yVVliGtYmusZqAM/voxZklZexkbrWLq3W//3ziz3ynirs9+9aqnWP35nnc3q7W/7+FezBE+f+4B4c9tBEcD+F92IkpgIFFRCUHTUqYC1GZpvP4KrEIUL3WvwTYJjPzBpfXBUUGPNwq0egmotIFAyz1aTzkOAos5tKTyxChyjpQzzNrteN1kjGzdbBcfy/p14yzXEEO5BCw0dQtCC9GLsCnEm8Nr3xsW1fkx0YcXKh1/A+6XAFIwlUdV/bBfPcduc5y6eI3ty9Lq2O258xhy9nAG94wppWwhh3EppVG+yNlvU2c7tuvpY590JS6JQpxhueX/bf70DxxdSxdLhO2eO4YV+GBSHX3G1Vgt3CYW60LCpg61Z2CwGu4FeufSYWFr3Gb0RON4iTFobHAF15Rp0iycioV2MoKVaWoqaVimUFIkyKWQQdZYPahv6umoXwLvVoV02Kh1Kr9evbws4ljf1B+bdvizDPc4gJDjyYaKqPkLM1a7jlX7GI6fedEPNa9mHnZMPeUWSrplenT/p3KLNlyz2WytiuCbPsmu8O298F0snOi5rM5XUbWeblvtmq5rWeGrvhPGtcywtfyF+TX9n+kdFvC5AbXYD59Q90ziUZdhDUBTMNBIcLUwU4+rMMVzbMBj3AsdbjElbAkdWyWgh2iRwtkdIHbUTE6eDHBxNwXOshS6rgmMrvWjmlg6ZzbrVPefJOfmDTdwdL+MQ3ezCkpUuo54kLu4/gFf7GY88Me0OmBQfh7VeGq2Nkltl6qyxGK3rzG7LsrJpo+Osl69ZS1WotIxv8fgGLlZ8inyjrK4qpfY9Wrn4fLsVQYnO/WzRwZD8x87tykOt2r744k4a3wr3hnRLT585PuYLULb348RdL2G/NjiUCIhQw2a5G23VMuZnHvMhr83xlDcJjv3ApE2Do0hFQJ7jCjgW5YNJka0OQqPY0IY9o43L+gqOxQzTjB8dxn1KYi8tSCZtKL7pFDKX4NVn9+HNDb+xtrBqHnzRPaiAjwhnG713X9+2Kxz0NUbfKLqtx4MsD79RVC23v9XjM+Zouw3n1bfI0whWwNOtV77ZzYP0MeEeVU/dFueaPMudP76Qbt5APf3iw+LCFpb2urscedmNLTncK4HIW4p0nzVsaLFsGrj45t1bJI9vAhz7hUltcMSTkFMsHywyQ5id1Qt6QnW61WBtdQGOrK3OY45ez7FdIZNYY50JwxwcF209G0qRmjqyRgazrZZj19RNXXVjmcARODQ8OGZgdzThDJYbAV56ekz04a2Zn8RJ5/SlF/BBSPu4cNA3WlXtB7p46NZ9qNddopvbYKePL4CYL7jcFO9gXfcgnZYme2U7z4esSJN1/74qEMJj9HqxDPD4yiUw9pmzZ/7Nc/jsZ7dLm6+90A5/2dWSQ7hPSoxT0Fqo3FJkkztdw8WZe2/yWaPA9W3GpDXBcXZ2VtfWBMdI+Uy1p9QUeo5d4GjZntUgMxaZiZBSuiwHR5i5JeRuNeCexDs6jGu1Z9zcM59v7ZyYWsZdpoX7YfN4JDSENJCQmK2P49zToq/8yNEgNR8TQjzQPv2Nyi2WO2x6+y7LbqP9CNa6v7d7fJJmCym8jt4KvZg75TX05EN2XqCHurVYQOv9nYcahPElnBD2pdqo/sbprVptN3ruvuTUXY/iXqVzlf0SGCVbMQNvv/EMLuKzG5YeXHukHuB4qzGpJziOzsyo+ShSvcERheVYAUdmq9lrPSadJ7FWB9l64Dg2d9oemZqy2w6Oxe2mJXd93gPkPV7KJXez/fW6FK8+9zxe7gvZtRj/sXPunsyaTzoh9m8F49/V+zjEHhy73NuiiXyPbnW9/V4KfqzkY1YsQ74lO+zR9ruFXmHF4hyw8aXAJanw588dFRT62vbPgfPuYCBwv7X0IEGpFm8tOoVrgcRr2yoS0wWOtwOTOsHxCGRrCmIjJ2KygsrjM8RhAY5JAY7DmQ1xQ8ux3+BYrgxP/YnwPmGx35EbWfTa1RKJNjj37X3i9W1fReUBnROPvohHrMQPOa9cuVGCYnmA9WKV6535YO6vIOOsEnOs8gOrCRpSm9o0JubDesQcy+8ZuiiPUx6jun2v7aqGfGlY7sTxhcRylsXfPPdQ7dx6K2Ir3+99yY1GEu9zDiPsA2WYbFG+s+iybuLCayf6QJ8rwfE2YtIKOAJyCpDsy5KD46Sqaail5QU9FkgtVUO3GtAiyS1HQ55jCuk8LubgmMaJU95y3DngWC6GxxfchHR4ME0x7Nt++uoJHzOdsxLPn+ljPJKliHVkP2ScPEGAXg8jy3b2FMOuLma5Rg12uV0Zuyz37+Vx+r+tg9E7YPzY9HCrFU/MdAgwdnZSLS6YcXBbaZBV3c+DXIGSq0jZ/sLz46/wHFdmYKeN7ySMg3y2Po+/aNckbwX91tiH6zYWeK8RuMt7hhKGnfykQSpqeG1mso+JzqIl8+3EpM2D4wKCjD1kZCc4Ikl8/GGngqOff+fEiTkcFgbvZTySbjYFDnzztAAz9Xk8309+JEsRZYRPOGvv29waXi9b3Hm01SHH7bIgN2b53vz4MvaUvBt8qhYcXwo9LchKPqXc3r9AuvMsm5sMv/XtHh9Kno8dvj79XjG/hdO/8S6fd/I9fwNsLn3EGUifhS4TLg4X9zTxSldrhG0/hbJf/YbAsU+Y1AmOp6tudQ/LUUEnKQJFcMwS5cVuc+I1Ugp6r2M5NjOY4SIhc6vc6l6zxjfi6D48aID3sAE5F4BvQ075OoFzz+zFOWy8n82mF8aJF939RppPQojxTe/8Lthh7Wz1WhffhXarstPlfmuh4mb/3n0et3B8667qIfXVZ+8Vb/RjKfi4osQxYVA39HEIjIwralyLE7x0tR9g3OtCSsvxNmLSDRIyOTiSyqMktIgRyB7g6CkXPiGTg6MOYEjl6ZWQWQWO56dsqbrbj4le75ie+gM8CosJgiOtSM8fCbCsMzx3em9/5OALK1Y+9DIe1wI/4IDI/229Wus1pcsKI2utapD1DMe2lPmNlcnXlm7b9vGpEFqZvmrZZDXUwL93/94GwpWQRBmL9IdcY/tuxtBGjuvDHLdmfAHXElJ963tHvBp3j6TUeqv9xt+zDjrUeBQS+72lyPiChM2AZtTE9189Ji7e3Aib3LtnQubWYtKaVJ6rgAqK8sGWhFYxAqWgZRp7y9GKSDLmaMWSZMdT2QitTOBMACNbse0AxxTpUB1ZDo7bWCGzyfu91uaPXXb3WIkTwqFRkOvY8Etah8tuGafP3Cxn6wbnefd33NDe0eyjTsjjvq3lrfhstDdNv85lvfElYtD62+qnOza5HX70Zs5le8d30snnmwLfnH5vX0r+gntewTFhccQqMFKbl/1JX/57/o0jeLmfXtSat7UHledWY9ImwbGlVVFb7RMyjN6Ehf5CArA1q9Ihg7ZG2ZaxxmUmdZkJh9Kh+vWsmY3vSHD0E/Qlpx7/DB60Dg9BICA4Mhbpq20cXh7bi2dOif71s2EpooX5lBPi7s08h3fktpbioD1CjoUF6J3YKsD6OOKKBdedxW7bkl2xSVSz2xvYv9z+Vo3vDGZEDV/ty8vZOXHv6zgCg0esQyCY7fOSg1TVwkVZx5ktV7dsx6LcMDj2D5NWg+PHIJaGIEfrUEF4TbeWlGoFo1ppBFo2qcYTKFnzlqMViXRJXj5I3q4MEivjwNpGlGVNmJB0nghpZpE1RpAtXr5s9+7fn81OT9vJo0fNqSfhULRB3I77uR3HoKiEa+BEZnA/M8vk1nmOpEMmgOee24Oz20pa7zrpE+fdgwbmE3BipP3Vekrg633ffWO2e/vtPp4oLMeuUF7OW1ydFPJ0xPIaK1/7xmbF9t28xuphyqgCa6ldB8+xM7N/68Z388Jlf/78e2svb8ea7j7GwWl3INCYsg5jBERepY8rAnPG4rm33tuf1gibupYqON4mTKomZMTJU5CzByBLcKwHUMsKarm1GGg1rANKlSnoNIm1zhLlwsj3m/ZUHmq10XJka9ZWbE0YZcYgCw0yV0NaG4VpzcKMxjDzk746xp568kmHs2cdPv/5jaVBN3V3b27jqXm3P03xQSGwv5DPEtZCCWDBCHzzbD/jkV92+tH78SGX2Q+xG8XKc995m9bKYd8wzdvjtqyNbZ1H2rya0MbmYNXkcyFV3GrPuyosu+o5CIJZpUyQv3ePuPK9hLBWuIqFKBhaKwbvPk53CPJWjO8sUinM6edPB89sS5VJ1804+JZrhMuYcsB76D7bwlp0QEtpnHn9XpzvRzxzY6uga6s8IXNbMakDHJ8AxNmzUDk4XlLLwUFVX4Rqhos60MNaJU2dKqG1FEqLqCRUt2urReycGY6McjCZhSE4BnbJuFojrRmYVtYFjvkLn+WD2x5g3tKE9NjpkevuAWHwAV+vXSRtaFEqgTeNxNf7qR/54KwbCZbwCQc8yFPjw93rujpoKtt14ZyYrtjgrRp/JVu9xYuh0nfFAlxPc3iLo6y922bH51Mg5YtyCF9/7q4NaB1u9oS/7PTd9+NRKXCcYSLBbqs5OJpA4KVXl/A8jgvf7GTHfApwvJ2YtAoczwNyDpBjF6EWA6i6hlpuLuhAS53KhlKqRbkylS1AuRpEXjnI/4tc4mKnXGRT17KBcZkbq6chgZIW5JVrNm3syeYPwjTOwk4cgz01AODIa2Mp4tU5nIDDI7AIfGY7J3MLAZxd3oNvTYs+BMuLlfrY6+4ek+LTkPaA/9N6bux63/dwQf2f1jQ5u2zU9Y6/3vfrjc+YI0+mlGbj9l2yaR03gd5LhfTdTuZUWd5tC7M4bknGrL4AOF51nFsxvnNvOa2eOnO/eKsfwPSeV90RZ/EDEBgqAdG70AJvRSP4zvl+Nqu7mQuqgOPtwqQOcCTGkXRJcGQfmavnoOvRdZXuHZeihSBJmpp9pY0SKhBCEhxtHAmXxLkqTwibIrJymQKXTVMbr6dRYUEuWtihmUtmfvSgaSzDTrwNe+rkzrccq/NLSy4U+EEI3M/a3yJhw8cusQLfen4Pvtc3K5iliDN4xBr7cWExtKl1tzkO+aYOvaGNNzu+T8hs6MhrbLQNLO+bGX4j2XEhqYb99ecPixduaqg1dr77TbdfZfiIczjoM9CFC20dFozBdy4+0Eea2nZcUAGOtxOTVoPjaci5MchWDXLvJOTieejGPkitoFtXlnWqhQqkUFay9E6IkBIBUWE5Rv69a5Ut1H9ryBIH08iQLRpYT+M5dMiMAXbkFNyggWM554/PurtNgI9012vD4VoEPNVPfuRx50JxIfuIgH7cCVtAyGbRZztWb/UY2zy+kEmHZViNJXZLkVUTKJ1UqJVQTeFX51lsQkV+7oWQRfFLd7a7S/KsvNybHN8JFpLJZ6LL+HY/Sv4mX3d1AD8oHB5iHsBL/bLkTyAxBs+98R0834945navqKJCxscdp24TJq2A4xcgcAzi5BNgqoqvNTl66ZJaXgjU8P69UjWhY7Wk6FobCRmWWo6tlkCNq7Lm2IpbuKZLHGwQORMYa65ccyY6OJLV98DMzcDUJmHHTsMemUKuyLPDY45rTrpz4rGrOMaFaAXqnvpD2qz0LvcrCvjKd/eI69u+aIoDPvqq22Od+bSAOLLpMTbq9m76wBvcYb3xXd7sd9VnDYNwlTZtd3eEGxXAlINsJCV4k+M75843nXrq/AN96LvunLzvVTzmNPutIyAkWuFlxLgqX0qv4tsb6t2ywSns+2a0HLcFk1qM/9kkatrAWhMaZ2Yza2qTo1k0CzsXr41Jq8FxAmLhJDh7cuziRbU4H6jhA0q2lvaoWENlaklFQsgoFtLW68K2mgL1OtBsQtbqTgIutsuWxbHaNExSR6btNVvP9hieiJ6G2zcCM7IwuJZjdWGwFHFon69yOeEEtKf+cDkS9CX+wo7j6TOif8HuExfc/VaZT8OIvest2HULZYoDbAQn1htrLWyr/n1NjBRIO6TDip1kaUHm1J22Zci/e4uwsl319xWjrytR07XfuvtveXx3FVqdev6e/ihAHb7oDtsEnwQwTktR5Dl46yzeDur42isHxaWtzNdt3acKjjeBSbpW910PE7dsk9qQCRxMy8BEGUxkYOebMDqDG5tbbbBV3WreC8HsUBkAnQQo56uWr0Ili1BDCjLVi8pIIaOWkE4MCeIiP0vXmkKN160cgmsuwdG1DoZgli2svgIbpJft0oP7sxpyy/H0VGE1esuR/71zM9YbWSSPXnd74PAJgZwf6UsRc4mDZRfiqecbfY1HykdeTz8Apz4iJaI26GxQ/5mdyfhpC8Fu5IIr25T7rzLCtji+E0h5LJ9PqSDoKlGeCtq3h+ravjynVcepnH81vLmqkdZNjC+UbGmTfuO7h4Nn+xGLfs+rbo+Q+JR1uL/kKnpwdGDZ2tOv9imeucnlsbXN85jjTWFSswmoGqysw7W8KA4scyDNMRhajbXsomWYLwLcxCmfA8k92cKbXaGGVLNDRbF3DAhmrVsaMp6ArM9BxZeYkIGsj0CgwaMs5cdYbsCnCWaJBnBBDWbZwOph2HkCZQqjDsINASY6C3emedphYcHh5Mly+XXSeXYwvedGs33iurvfOZx0FvuY1Ra5npiEwCVY/Lvn+6gfyXjTuMs+DitPbKQUcaOguNHtNvsUrHVcKWRqKin5DvDaIFi1QbELBNcSDN8weG5gfGspYGK/N+/017dVALa4FsadF9/AR63FVNE0LLcUHTIJPPPaIr6146g5m10c3P4mMUmg4TFFLsItL8BFNZhmAyYwsNcNbP0gjAZcOwcyW/CuP/c5Ty9cBY6eeAmI2bOQ8TGwZZhoXrqkxtVBmSrI0T0Q6TxkuuT7RQsnFotjDEM04LAI6AbswjyghmHltetucXjcqP1g9sDJGbhaC3b6aJGpXnGPSnBcAckBBUg4Jx+Z89zIjwiHehGHpPQTw2Nnl8bxp9OiD1JTxQJkKSJCfBrC3nszFmH3eu62ENuWYpeFKAotxrIj4GYtUimQVsGqpBit0l+s6i52dTHoBrs1LcgNWJqbGt+511ux+sr3HxSXt4IHN9zHOXH/GzhhHMjzoCnSJnIDeFlcx1f6Ijy77Rey3gGd9yVLy3GrmCQaw0wQ+1BfYGEXHJy2V21kjJ2LJ3z+g1Zj7TRcRw7E26vd4PiFLwh87nPwrnXFelw+fVHtnzok4suQBMbRvRBmHsIuQmAUMGJBKDeSo/QI3NwYgNeozAzHn/kUlsTTYI8XynQzGRz4swKQHNPv307SVO/fgIIkSxGzBj5uHd7vKC2fg4ZwOc/s67VxfO20EN6F7MeHpYhO2ZNOcpYqnw26u6voNGvsJ4s6aEpE9/x003LWGZ/guMry67bYui3C7pKWbrDs2n7V8df7fp3xrXPzTqmnztwrpvsxl3e/4e4NLP4yHA6RvO2J3Ln68WUY/Nmrh8Ur/Rj31h2zAxBXhr1JTCL+qFG4+XE4eRWOcUZ1EW5+tIg1HoUdAdyp0p0ujbUelqPHzBKpFwAxNw2ZaYh9EWTrGmR2AMKwEotqy3PVcq2VxKwcc066Pe4qA5ZjsHICDgwJX7qESycOWlwo3gsZ3PGjvr4atWNwOA0wUTNxsmi8xbP5wjvm9ed8XNLjyq2brO0b6cSCO2BT/LAQOOw1s+hqSwghsACLf/v8XvHc9o3WdaSiFFEI+4MUGKh+uxaoredGr/f9Rq9lzfELy7GqPbFe/6w13eW1QG8DFuNGxncOqVXm22cmg9P9UK85+pIbTer4YV+AIGEdQTHPQC/D4muv3wuO268c2kancuvbrcQWK4BYwZXPeYtJ0HqiR7tZTCIW4RoQjO6x2sFdy3IDzVuNZ+FqzdPu9NRUXqnXxpocZ7rdaoKRAE+o4l6TsLJ0IQdJOwmx5+yszJQQ2LcfRl71x1B2r8MVQO/l5M3ibUx4y5FxRlAJ7s382iV/5+d1QB/K/5vZooggyc9ZgNUzOAW0A6TlSbfPeDBB8pHL7mEo/CVY7CU4ehI5rUmLGVXDHz471B8BU962B190I7W6+aRz4uHNPknrWYZrxg7b6NI54nputnDIqtnmjSZMOtzftcCvCyw3DarF/mSySZudM8vXvnbm+IHFraPDGnt+2enDD+FjNsMnvSAzV4llZ0FkyPDdNMSXb6tqzk1fcJeluII7nUcmMJafAiAZ8tscJs06Za27bA+68BAsGTNRQmCE86yZWTg80U7GeJe6Exz5WyVDhCefFHjiiTZas7cMEzSMQfLHXqQFeUkcxMH2uV8ugZAgmL/h8k8BhOwqPql5sTPFF5P+36OTxbYXgJnDcJgGxuhyF5bkKpAcYCsSX3b6xBQ+bDN8QjjUfEfEwpKUwF8kKf7fcxN8Qfbn8/hr7u7Umc/AibvaI2y2FWv3qW3z/gTHMl655URJNwiuAZblZhuOUfqnRr5l7fJXXjjc6IsA7L2vuUeEwI9BYIw8xSIDzfjZBdTw/1w40J9Sw/6suO6j3gAUCwuxvceTPc6oYkFuBpOIRzTCvCFWBcYyQ/2FLwBMxPj5vTE45sDZZc62znqiODxIXoB3ErOZGQFMQlcAjidQXhYtwngaK4GYo8DhCxcEDh9GNgOBScBnDcrPDHCxOFYHwk/1jgvcmgnd/lFYihgF+GELPF662kzcCCB1wJ+dGcNTEHwP9efz6MvuUShLUYt2KeJW3eyNnuFKQifn4HTHKMvxXWZXwLEL5Npg1g1+W9xurcRPr3GklEvW4s/P3CfObvSaN7Pd4bfdXTbDTwiHB1xR2cLGVrC4ZgT+v5l7xfc2c7ydtW0FFEsrsbQKJyBoha36nKKwARwTEd6yo8FG/7oKkJvAJGJRjfdzLaOrAow5AHZ/qtbjyndlGY/AFFCCJL+Op6cFcBRtt5h/LGKIp/MTyceY8n8XeBUC7wUO04I8DHYGF8lFiJRkF34KumowAXeJ1ufrQG0Ctor2lZjkwNN/Hrni7oXAjzvgPsnqGlqRwjc1YrziD763t38PxPEzLpQj+CHAUppNrefurvWwbTfPsXSre/Ic1wPBDcYSN+pOEzzZdc9m9pn6Ef3NfiTQ7n7TDQXAj8Dhw7w8D4w5XzFxwFdeewtP4YP9S9z1D0R7JFmehCS4+c8piClSAokN1c9pEL+ABTAvn4MjdV/zcF/52TomEXRXXOk18xo3AscqePrteE2zp3KUZ2CUf/NAWXyqSRVe+amTJ3Pwyvdx/t/vQ+BjOUgefhjikIZIVAGOBwEzu3I8VSRyghm4kX2w9cNwLxUuNzNME6gkbipZpv5Ndv+O/Ng193gG/JhwGPPUH+dzxVQhn84i/OsXGv3r4fH+V9x4pvEpGHu01xVuVwKm+9hrHZcS/R2tVSs7bpQUXu6yitS9FriukY1Wwp2XRj313fv7UArqnLz/Ij5mCIwWdYpDFJXfrMV5VtTxxxf6WILav9Xcw0okXhTYQYNpqjCy4sJY8ufyEhDdl8cC+evp1eDIv7fJ4VvGpNJdpzV6g3xGD33AVWi/sk3hZpfAv9bNrYQKcnDkCZx5xyX/0soeZcvFiQuQsYZYugqJEzk4jpc9i4vNrztfceOCg3Ah4C4Crk3evINAkpYc7iI/ESfZsazoZ5MXxkn8uWzhj/qi91fc58ffdPelifkMIPbdCCS7v+u2OG+W5yikzKyhMHXxKSphbiXP0UJeiTS+cvqe/qjX3P+Ge9AK/BSpORUlbkL0Gy7A7712kIVqg/ZZAxRLA2kE4ni9CM1NQ/iw2uE8IVteaekhtsGRFh4B5UsdQn3bg0kchEyY8tNFGewBjtyyJ+eoc9vu4Cl3qyJy57xW3d8OqhCDqsyEewtyEqI1C4kJYPwyRFa62sxo850KoATKxkHYixfyACuTN12W5EATyY/Pub3S4t+3wPtJHPcZbZYiOrQg8MdnxvgO7hN9g729X8XjVtiPQlJSpPK5RTxHWo6sh+XIa5UF3qjMr5q1Ls9+I240txUCLS3lN777L77wXD8U6iklFgI/BeD9ZVzRU3NI63L441fvxtP9KDXsO8x2UnLyfAVjiYXbfPwsRByuACLPJ7uYW4FkregiEVuCoy8vplFFih8tvE7FzjacdVzX1jGpnYSpHm8NcCw26cVB4ldrpd3LI1dN1e7RuOSL/U8CcuE0RKsOwWqciRlIutgsV8wExH7eQAnB/64ehvJn5Cx5a9LCXYlhG4fzN4tvv7BC6PRIP6gcSaqQO+An4cC4pOdH0oYUAm9Zhydf2Cue79eiP/yKqw2zFFHKx7pj09vlZq+VAPJutYHbCM9wM+B3ozLEfpf8UaAkbeBHhcAPM2TCLHQBjhkEvmIM/mTmXtHs13z29bgdLJcKKNYhjob500caoKcCXlp5lktaX5lFpls9dqDQXciTMbbT7eUrs1LVV72om8GkNfjTNwbHcvC1Tmgjd7w9QsFN7H7DVMsVQwhSfRYiSCZoYgU5XoLjHsBcL27sdU8ud3MFQJL17kGSHKayVpKsdzbw6sFf2shp75htnBOPLODDLsNPOGDUu9q0qB1ppPieCvAvnx/un+rK0ZcWPg5VBQAAIABJREFUJmpR/dNSqPesVQGz7TxHJkDaqou5AMVaILhmmeFmeI5Svp4qfOX7d/eh5A/AfW+4jwiFn3IO42VMkeAoHM64AE8OLDWnO3l7CtJbigUoZkdzS9ED4t098glvAmznXPswLOl7tBrPMN6Yxxq7gNHb9Sse4XZi0hoP+8bAsXvn9U5sXR5i4bZX0J7NvRZGIFpTuZvNipxugDQiL1vEGPg/LNL1ug5Eo7DXLZx+G662B5Yg2QAs0/arSoMGtBTxsHO1xhx+DMCnfauGQk/Tu58Sfzo3it+fEf2zPB5+2b1Xa/spx4RR92e7eY6sSC1aX/WT58iSP2Oyr77wQO2lfrwM2aJAhvhpAEfYxsETuSk8S06GxZdemRTP9mPcvh9zHUuxbSUy0XoOEnlzj5XP20DwYF6pUuUedgBjvnXBO+wCxl4XeNOYtPqgWwPH7br71Qt6EvKJJ7yoTy56EUJM1CCXAsj4OuT4RO5eEyDTRcjRUWC+OA8Wl6viR1+BW0xgr+2BDWPYUqutrR/Z7fIPGFg+cskdtCE+K4DHGIv0smh0tyn5IfCvzoz7eGR/yiydU8dm8EFp8UNwtmhYvvHFsGGeo7OmaBm6EnNcp1Z6IzHFdkLHIYWS3z4z6UvvNlppvuELPXLVjdkUf004fLzsDOtFZwUFq/CHr76If4dP9Y/DuuET3dSGq/IQ0mefiySLjycyb3AF0kxC2CsQvsCh68OacJnBBXvzZ7MkZZ/5Ghx+DrZC29k4MG7qOja+8e0Fx/I8u7TbCJC+hhKQkxcKN/sQRP0qFAEyWYAcljlQlpIKHijfAIIh2HAkj0kyNlnLYEdiWFbedCmQb+7NtPF7eku2PLbgjiPFX6fDQlfby6KR5iDwmszwfzy/vz+9SXhxx8+8PSwbez/hII7z923nORZu9XbzHFl1I609Zxr6a2cOiL6U/N3/MH7UOfwV3zyE5X55bJGK3F8TNXxpxza0WnPVrvLycsz4IuTxop80EyvpAiQeA81iYc5DjvtKOAB7cgEaNQ535Qqgxr18YRsYmUz1fGj+5GTvlYBIv17yG3xCdwY4ephaEbdkpotWJJWB5t6GfO+PANdnIJcmIUcuQ7YUZCJzybQG4WAESN/Kc5SyARc6WLrc6hocXW6CJPtlj0/CvpZTf+wdwZF0Tj48h89I4D+Ew7AX2c0FdsmP/Fas8TvTI/1r0P7wBXdIK3zaGXv3Btdbx2Y3SOxQtaht0W2HnqMS7lJq1akXDveHL3rvm+6DWuA/hcRBqi4VPSLpRr9kJX57IKk55TOZh79yrDgNSTrO0tuQWQRhD0OkGtIDIrPTBSD6f6/l0y1nc3C83hsYq3quO4plsnPAsWpFVsQviu5j4sA0ZPOotyhlC5AxIIevQ9YlpI9FjkCkl3KAVIWuZNCAbVqvAOwim4MkLcl2TLKq49alyLGVh/127XP8bTeMGn4SBp+xbNVQ1GozSWgt/qg1h9/rh+hqeb3HXo2PS6E/AYth/u1meY6FcOuKu3szPEcplzSSrz97X3i2H6pO98y4ySDAfyaB9/sa6KLsz7HCSeF3XzmAr/Vj3L6utSooHlvJPhMUySpZPg1F19lch7QKgklTWox2Ic8HgC7fSC5XyJ/rZB5UgPEC9YSYePkjuDZVZwc+fzsPHKsgmf93WSYkfbIGkPsuQnq6zwTE8DXI1hJUTUGSTkuApEXJdg0eKCmwuwDXaviMtmWLWGa3PUgWFKAuS7Kj+Lyvi3CbD85SRKvw0wJ41LvZTNVQkNjhugJ+5/k9ggSJvnymvuOC5oHsh5SVH3KdCebu3yrkxd6nIqQ0wuXRuq3yHAVgpLHfNU39zTN9aFh/8C3XGAL+umNVE+9xUfIHR+kB/CGa/X0h9WUSOy1FUu4kfrzIPh+DaM1ApgEkQdEEkGMlKJZ85CIJoIdgPSgSHC/BqRFYxhg7RK5Lqs5mki59uei1D7pzwdGfczsI7M/T8yILjUm2jj1I0jgga4BK5nIrkgrlZhjCXIYcnoBjc2AQUdm6YQiWvSQIkvNX4eojMHMTMPoCHHmSXRzJgQXJ43PuQ87gZyBwV9GigdEbguVLxuBfnJsQ5/q1zqZedmNJwDYR9n3rjXEDnqOxFCXt1SOmKzFTjtGRkOlvyZ94YBb/ngN+xlqMsuSv7UYLfEMM4bde6SO1ar17uuXvy4ZWrF+uUHIOD+VShd2gmC3nmqTV8QTBcBiOz5YchlUJrBe4vgBHfYTpZ+Aw8Y4cYbVXS+5q9CeBuOWbsWKV3eQhbsHunXwq38e2pPwcOpxbk8E1aLrXtCLrqgDIJuRQW3MGWJ4FVN03/rJqHi5pwNCSHEphrh701B8vgHmGepI5R3LHBIc3e5dPOqcvXcePC+CnnMCQB8ecI0kNrFNK4rfOjLF/Wn8+x95w71EGnxask+io/NpQI6+1Y46V0+1O2EDKq6FpfeWZI/VX+3FVR95yj0Lgv3Ck5uQ9W3I3mkoBwD9/5eAAUnO6ni3GFMlTPMyY4tEuUNwLkX4fyo33yEIz6TIEq0dgr1+BC0Zg1AxcuADbOADraTpT7dYo3vLZ6cUZO9xyrCzxLpO/akWS8jM/DxWHkMP7PT9S1gRkugxZH4bImpArwly+KbdrOrgWOyPSxW7AMCbZJEimufnPLNqR4ql+svp079C33FpgwK6IVuA/dhafodHFNo++FJHKcwJfkjP4v/vhduaGvxPH38BjMrMfc0DRp7LHmXbxJKmC06byrNOegEezFrES5hvP/lbwLD6//WWVD7zlDkDh5x3wSZeXseYJF+fZZL/zylP4E3x2+ylB/QD4cl4qx/ZhK/4cL/pG0X2O56FMCGl1biEOq/xfuwSRR5ZJNC5aoRAUqbBdtERR8Yob7Yndbw+OtdhhCfdtAvpx4LWqa/IETd4p8RBk7RqU2QMRLkC1lqFKgMxyUACa3hd3ug7bBFzzrbxbIkGytCQbKezsJCw7kxEkV/W2GTCQPD7njlqHv+lD4CSQwzf7YjzybaHwz8+Oiq/2Y8p4TJYijsrso1bI90s/B+voOW6Q5yiktDLJzlwN9df7UXrHkj83hv/Iwf+EBOwitsiSvz9WCr89va9/jdL6Mh/dluIpiOMH8mZ6ZUwxXYAa3weRLEHZZUifbGmRCLLyabLlKalKLOGtwWgWYjAr/Sps/X0w+gW46QOw3los9RgHwFocXHAsz7wLJMuGYHNjkJNHIa5eglpegCqtyHgZat8IJC1ID5BDREQIgiQrTHQNlkCZLMA2WYpoYJvDMHS39x6EmZmGmzwKU9B/vLHSvokDBpIPXXOfFMDPCuHrFhjsyfmRDt9LBX59ely83JeHEsBDM25fYPBp5yx76bQ/3ZQeJlOs8N0qV/etLvZScDOtQJ3qV8nfA5fdp53F3wZwwNOKHFwBjs8Y4DcGjprTIwN9fBYyfhyC8XvGFAmKo0x0LkNmMZQbhaC1OFTRNuDzQlDkcyILi5FW48IIDPmLZW+WntYi526AnpfBcat7PbEVkHyiMEfOA5JMAiZqxnx32Jz2s7wAHTahIpkDJKtLqGNKX4/V/r59Yw2m5TxP0iQWJrgKuzgKO7YX2RXkvScK0mrekGdANSRpEYX78IRVeMK3ji2Vf7wrjD9pAf9bP3UEj0+3jspAf0pIMe7fNN2tXW9QW52X/KmvvvCA6EvJ35EZ9z5E+K+cwGO0itrACLypgH/20gHxVL9eHv05boXEXdByeoFi1VLMAigCIg0IWo08L0/LKaxFAqM+CLNwBVbMwgV1mDq7+b0A54UjytrolbbLhQrjzky8rHXfBxscV1uSq2g/iadcQdWvQ4VLUOkYZNL0lTaSQBmxH07xZoyLHreqBps42DZIMh6ZwQzvhyFI+rrt03Cnz8MOsrAFY2lhiL8JCaoSe+qPF7YQzO/jf39hDP+6b60avuTUYx/GlLH2w3DoKEX0ytumYp3TERdIhZHfee4wvtOPkr/D19y4Nvhb1uEnCAd0nwmO5Do4id8Z2od/eUaIpD8A1qej5sZD/owXGejjUxBzM1DpVch0KLcU0xaU0ZD1UUjbhLQUxiu8K28p1uDIF5ZkEGSwiymsqsP4bHQTdmgMpt2HnonMXLXbDZKV2GsG7gxw7AZJSrFPQEydzEsQJwA5PwtFlZ+6goollLcih/OFQQsyqkNYpiiYqShcbeU6QbJmYEgkj96EZd/bxjIsOyV29LwdILehvG0PX3WPOIn/kk0KC8fHxySFwIwz+F9e3Ce+3qfHFyeefath9h78uHD2EZ/3zZ/mDuEJKdw5O6S+2peSP+fUkWv4qzD4eQiwfKCUErNC4N8Kg994+S7xdr+uvy/HXSsDfQyy+RyUuRtyeBHKg+I4pLma84TpTZX0HFGDwzKgoryQgsCoExhyGBdjmHAUhp38aCicOd2RiR5YClz3XNxZ4OjdwkoZYimHxgQ1lX4OQy5ehqprqFBBpQJStqCzBqRpQgbSJyrKB9TFEZxs5u526mACB1uzMJcMTPA27NKDyEj/YdKmqA8t3e2Biq34RcGerfNerv/nILHXa0fmCSyC5DecxT99cY9gA8m+fCioIRJ8xhl7j2DrLSetUvJSjOWvnHtPo2jsu71DP3DFfeQdCPi7zuFwW19RwDqLF+DwT1452Md+4tt7KStHW7EWc6vxLCS5ikkEmTADfQCysQSV5daiB0UbF4LKxVEIjDKCZdkfEy+6RkI97BLBsQUTHYOpTcNOJz69l2fuO9oNDJb7fGe71b2urkvMwscipyEZfB4j7eeu3IoMZW5JBiJ/k5YAadjkit5VK397agub1WCSJdiwDtMwyN60sPUMZnQCZnY6p/+czpM1paIIsXZHElzXWhBs9jQ2hP/EOXzWiydQ+YcxyZy68q9chi/2s3XsIxfcwwLmA1Ko7z57H1u1bf/9O3LVvUda/D0n8ElP4CZfkaAIXLbAr1/Yhz8YOJewBMVcDbsDFEcCqHgRKmOyRUOZFlSUQLmG95ZkybFi7F0sw8kQVhnYVgqjQxgaB4vDMOpNWMYW6TF18RZvu4JOP941d57l2HGXOipsxMlCDm1pKNeLXAxyK5K8SCWhA5kDJOORYR3SzEOGFHGI4GLAESRpSabLsPV7kF55CzYagolHkUVnYUdHYWYrHMknOygM2/+Q92NBlMc8esVNBgp/5502sWzfmscic6Qit++fncvjkRUWYj/PZnuOzZK/4QB/C8DPUJ2/4kIzlvi7Cw5fnO2HWs/2nP7qo/TQVSxDSaTltJagh6MV97nGtU1wnIPCUKUxHhvlMbYYwYoluGAcWXMeNgyRhcMwc28VscUpmKJIokyhDSxrYyNTcoeDY4eb7cNZpP1QEm1mGooVAKNM1lyFivcWGW1akU0omUCbvQVARhAu8baESyKvHUkxC5stwZhJZNFCnt1umpz+M38Qxidtvgh3mhp1XygC1P4MBgsk3zfnPiQdfuEdsjM7E3K9SJfXbE9rgV89Mya+tZGFdlu3cU4cuYq/IoBfhAObh7VVcwTwVJbiVy8c6l/IoC/X3lXuV81Ak8DdSKAzFkRchWaihaDIBKR3odnkqvy0gJgxRRZEBDByATYOYcIDyBYzmDCFoS6qtxZLMvcAr+fNzMWdD47l3ejiRnrl8SJhQ9pP4zI0qwBaCko1oQMmbgiQQ5CBgAwICklO/6G0gGF5FBM2EWywDJNZmLSGLOoBkgNfs+2cenAOPymAn6dCH8GxyGqTRP5nJsI/nh4SM5tZeLdq26PX3ON8NVmHE0XVjU+4CIHz1uAfvTKo1Jy81alvS3B0DHJ5Dip9D+SIhiJ5mzHFKIU2I5BGejc6b9RGefw4f9H7l30I44Exg2llMEy6LJHUzdjiKExZLebDRZ+tdAHMI/MDFTLa7Jp794Bj9c6svHW9q00xC+pw7gPkIqDC16BDxmlG81hkHEPrBMrWIHUCiQgoLcks9LL3luAY2AIkM2R0t5MUGRWA5pswFLY4s2Kx8Gx2fG1p92I6esWNKoX/XACfdaTflPFI0mwcfnt+HL/5phDLm12E/dj+/kvuoNT4BxD4CUaAPSAyvigx5xx+/fxe/HbfaEr9uKAeGeiSlkNLMatBjWjIJISOrkGTq2glJBOPPgudQHjleLrPgb8XThkYgmOcwQQhsiXGGMtMdAzrpcXKhMuAcnpvZireneDo71hnPJJiFqywYcJm7yTk4nno+v48YbPcQsB4pJZQTNRYkYMksy0igkvyFg0eJBmPNIzVGGRZHRnpP+RILqQwQ0swFeXjlQzfgLnaR6+7B7TEfwOLj3oCeU4UZkzysrD4tRfH8Xu3K3xw3Lmwdd1buH8H1lfUexea9CAI/F9NjX/yxijfhQP0qSZbrr3TMehjEMxAN+eh0kmoobegs71FooUxxRQ6pAtN9gWtxYRd0HNLkVZiQje6AEWdImM2mpnosIHMq3RPw10YgakIRQzci3w7ZvddDI4VgKS4LqsHnoCYKtozsLpm7ir0sIRcpputoRXjOEOQKoUOal5k1wMk38pIgKwBI2M4b0UGyNKaF7TIjEXGeCQz29dey0mzY3OwHSTyAXRTHrrmTjqBv5u3Zs9J5P6FATxvgP9helz8xXYs0o0e48hVx9ann/etbOk2Fu1PBfCtd375/Mt9bGW70XPc1HZVa5Eu9IEKLSeA8lzFACpJEUQExSSnqHlQTIu5COG4NkWQxxWTAEYbZDqCiQ3McoxMF5nokSFkPek5A/by3tQ9vsHG73JwLO7MWtxIQI5eglpcgq6HUPG4p/rooAUlJXSWQOlabknaxGe2kYZwSQwnW7DBiO+/nKUWJqohu2q9RelBcmICGWu2p496PdeyFHHgqgoocrv4AH6aUl4ARovMds6xc/hDmeEfvTDRn9YE5bo+PO8eCgz+Rwd8vKAceSkx5/AmHH7l5f3i32zXA3PLjlPlK56FooRY8iBkSctJIuiMVLQEOmBssQTFMrZYnKhkkqW0FsnPHUMWX0cWTuRrkZnoxjG+14uwT7Wd8QC+sLdzfnbBsTsWyd/LCpsRiLkpSKr9LM5DDR8oEjYSWsQIfEZ7CNL/yyw3IOKiFNG7MM672D6ekzmYdAkmM8hqKbLhSWTNS0Vm+yzsxNuwpwZEBLTXAnxo3u2DxS84tkjKtb9z/UjKe1j8Znwdv7ndrRpY8hcI/AMH/A2vel640M75cvnfiPfgf+1nu9rtfBDzSE9nAYMP9UxBLl+EIoGbtJzkCnS011uMBERtFVRAi5FaAWkhd5SnSlwawPi4ooFRGUwSIAtiZJ63WMYWz8F2uNB3IJl7q/O0C46r7lwPbmRRYTNah1qmO7MXcvEtBHtGPIFcSwGdLkArkSuZ2MWi0oaF3cOwHiSdz24bGyIzS97lzuomd7fHYmRzh2CY5/GZ7arQ7oC5NEcX3LF3CMT/PYAf7FD9AS4KiV8+Nyr+YKuLtb2fc+qBOfyscPglABSvKKk5tMB/31l8/uV94vWbHudWHaCbr/gExFFSzbTv4a4bh6HpPteYiVbQAV/GDShzJQ/veFAMAZdC+GTLPFyqYbIGMrkEE2hkcYSMGekwgWnVkfq2xZQV+xGYQth5YIVU+jVNu+C41p2t8MhKSbSyhw25kVQeJ+1n+QqC0QA6GYbWAooAafiTQnHBarqXS4AJYFUAY1ow3t1eRmb3Io0uwpgYGSXSfNLmEExbQ3KA+WTvnXM/Jh3+oQMmixJEL4/G+J9Q+KUXh8X3trKoj15zn3xHbvV/ZuFau+Qvz0Q/LzX+/rlR8edbOe5t2ae7Z8spSGorLrEG+hIUXeiEluFlBMmYD+PoIIO2dUh9DZrsibawBHslBbApG8ox3m1gCIypQkrPJUgLa3ERZmgKhm2KT68oc9+RFS43O6e74LiRO1jGfyq8stZRyLHZ/G2ulqGXQgRKQafSA6SWab54ZVqob3MVB3BZ4jPbnhfJRcuYJBM2JkLasjD1FNnS/o6a7YGVR6PIbbTXZ47/tgMavr927v4ya/N/Golf2Wjr2Ieb7r40xq8K4D8o44oQHhQvO4Ffnh7Db/VDrWcjy2NL23Qp5lRBkVbi0DJ0GkMHBoGZgPJxxUVoTWoOixIKF9rzFQmKC3ByCBnd6EAjnQuRqTmYZhMZ15kXiihd6Kqk2Ls8rnijudsFx42u7K540PGzUHzDe0m0y1Bh4BeubhXxSNJ+RIqAiZt2VrsQtcj4lne+IiGju01wDAmQBMoa0paBaaTI5mKYsUmYVaonA+ZqPzzrDpkQ/1A4/GTZ8KuISS46i18L38RvrtWq4W7nhhrz+PuAr9KJ2iV/QCKAL6YOv9JP7cmNLo8Nb9e5jiTZEVdOQTUZRxyCGp6ASprQUQydBAjIkrACSmdQNs0z0X4sLrwhWBHDZtrHFr21qFJkSYIsHEdapefMzMN4zuIdJCm24Xu+xQ13wXGzN67COZs6kjf6oj7e2CRUcD13tXUTWo1AxzEC1mzTiqSrrQqOZDlkAZDGA2QLxgZICZDkSLoa0jhDVi1H9CTyAV7cD153H4TALzvgA0UCJefhAa8I4Je+Pyb+pDod75tzf805/E8QOTWnElv8Uyj84ksj4oXNTt9t3b6agT4NycoWeiAtVmcxnkjKWIKAyZZAQZOvSG/EZlAuhAjSvOwv5ctV+1i2yTQytQyTMtmSIktDH0/MKBTB0j9ya6fninYFAyzQfDvmbRcct3LXq3Wt8NxIeeUCFCXRyI2k2k+z4EYKlQNkKqHrKXQmoEj9YWY7zcf2ViR/WhZZUFiQBMqoAMl2zXYTZt9hmNOn4HCyUP8ZNLfIOfG+efzVdzog/HdwOFRUbfjM9jsqOV+GxN9zBnUB/BoEPlpSg/IiF0xD4BenR8UfbmXabts+pbVIFsQRSExBTD4NFY9BZYdyF5pcxbHA03N0liGg+2wyaMeCA0rHpXlYJuVaYVxRIyPzIcuQaY00YVyxjmzpMky4iKytnsN66FnfSTNPuAyY13Hb5qwSzL2d5zCYY1drtZ+E9FZkHYKu9tJZ6LFjkNE8tGghkBpBIqGHUui05he/VmwnG67QL+hqZ7mghdEWWStAyn9LV5uZ7WQM2cJFmD2HkHkl8m45+gFa+Aeda4zP4xes8yK7tVL1h3FE56AhKnQgqnEL/ApG8E+nhYgHZsFUXOiylp8v0Wbd1z/rRgil5xGmY7mlSCuRgMgfWosBy/5CCIKiSApgpIdRQ+rd6ABZmCBN9yGNMmQLGUwU5/XQbf5smdQbtJfoDpjkXcvxZiehi4Zx8olc8YeNvmZnoYMgd7VVK0/YQCFgLNLUoNJlBLoBqTJf0eAfArpLyymcbnmLILMEyBAZQiTGIB0i/WccZvgiDOk/hdDuwCZtHrrmDhuJXxYOP9Fu9lWI7BZT87ta4799odFfIvnNLoOO/XvEp9ndb+ESdGMJOgmhIq6LDCFBUS4jIGex6kKzbt1TcxQMgZEJPKWQmSGkrHDJMqThNWTpONLlIWS1lv+x0TNwZ54oCgtKzuIAvTS3dR5u8mC74HiTN7C9e7e4bkHgJYF8LipcbT4ALQTD+6HjOQRCIqAVKRlwZw+jsnVsChAkGYtkGWLT5e62M0hdhNRYpI0RZK1ZmDJps0r5Z8AeiPcuuE8Ig3/sgEepQC6A7zjgv35pTHxzu6ao78epUnM+yc48EEfZ3O1iTstpBtAx6/RTBKWlmJk87OJd6Ch/SSLIA4vS5v27mbCzEmnKsr8UaaiQpgHS2iSyhUsw9YMw+1CEW6ouNC94wNZB3+doEwPsguMmbtaGN61Qf46fhFwqyhBJII80NOOQdLNrCULGmvhwCJFnJZm0cUHe+Y00DathWAJm4zxh4yzSYAmZY/KmhjTJkA3vQTYPmEZZaZM/ILkQ6SA9HF9y6n0/jJ+l/vr3x/E7g3PuXR3+ChI3ZcSS+6DKZIvKEGYagTIILC1Gg4DcWGugOOdBAKQERcDSYlQW2XLLW4xpoJCaFGmcIqtppHSflxq5tTjoJagbfq5u8Ya74NivG16RRWOy4TgFLZjVjqCaGmpPC8HyGAJfhpgiIGC+U0GiTQjFeJPMfMwtjxTRimQHU8YjW8jcEBLrvBxaupAh9dJoMTI+LPUyabPSruFdqajSr2ldddwqXzGfZ8l5jiOoBosDmJgLECQJAmURku5Fa9GDIjmxBgy2+IaHaQpHUDQWRjKkkuWxRTOMJM2QMhu93EIWjMBwni8chsEgJ+du2SRtbaBdcNzafdvgXl2yaEUfm+UG1MghqOacD8QHqgBINQTtXW0BLZoI6G6DVmRB4fAVIXVkMoZxATLbREoL0tLVns+tisYk0gXADAFm+nQXhWOQrMgN3uHbtlk1A130bJkc9RJisnENOtZeoCRIOL9LCIuYovcS+PLz3MWyDj+FM2xiFeecV62QMhNtFJIy4bLMrHQG05hARg/hTHdjq9253falsAuO235Lexywqsc3AUFXe+5pqLGjuRUZUg6NCZthaFe42lJ5cPSZbVI5ynik0LkUl01ytyseQhpapJY/GVKTIc1qSD2JfMInbEwhsuva7Rp2H6Sbm/VqxdRJiMPMQFNbcQiqXkfAggClEaQpgozz2ERoa3kNvmtB6aDdpsAJAmPhQhuVz2Gmker830RfhVkOkdUayHY5izc3bZvdexccN3vHbmb7CgmYCuTMavsyRNZqX8+zlYsxQlJ/WILIHHUqEUgDLUMo0n9cBkmAJPVHpLklSReb7nZLIyFQMnHD+NRQjCxtIFsqrA322D75jrv9+ZXuiHe81P3NTFfHvtVkyzEIUrcojkwvoBVBU3A2qCNIQgSa85flwGhq0FETgQshGVtE9g4Nni84gmKETDlkWQwTSCRWIWHShdZithdJjfSctOJC5/M2uO1/t20ybs2BdsHx1tznzlGqCZsDkKR5MKM5tAQd1aDVeJ7QidFuAAAU7ElEQVS0aSUIJS2OFEGaIRAZAkWQpCVJkHRwhpUSgIk1Mk05Ko3UNZE2NZIaQbKatLlQtNXMGyXtPmQbnfuul9psGVechKq/hiAMoWPOUYBwyCAkKKpaHhphXNEx4cLUGEFRw4qkUGnKs9CeohXy3xRpWeHC+DFdaKpyVypcBi/JttF7vAO32wXH2zEpXWosJwE5exZy4pj/V9cOQS3R1ZYI6GZLmQNjIv1/a0n6T564yUUcNJwh5QMwVnvaTxo4L2TBcsS0niHx5YijyJYvIiuVfyo9tgtVlju7YdKmp7ozroiynn7xHAJqK4YRdMxkS4qwTlDUCKRCyPmxFtrVIZ3x1r4QKi/3449Rnr9KvmK6rJCULnRUQ7qcIis7/vlqqGpizU/27hxteh63uMMuOG7xxm3bbl31tmyaNEGwnIVeCqDDnBwcIEGIFKGsM0WDwAjosIXABrkV6TOeWW5JejebvEhakQES10LqShL5MFJ2dPBJm+l2T5sVEvnuw9fZX6hLRqwRQrfIVQwQqARBEiCUBiFfZIIUHSZcCkoWXWjPNHBePciQ0K/pPts84UJrcSHIky71JtKFEZhLTRiwsdWKdU9AHKj+4Nv2bNzmA+2C422egPbwKyRyKrXIuZI8fAgqnMvd7OUEIYEyShGi5gnk/oEk/cdTf1h0l3/e0Xv14roEyMzFoLpkTI6kNT67nSQGWSmPxqSNL0eceqcJ1bu9qqL6sgIkSdxlZUscQQchgjhFyLgiQVFYRO9U+NDKJ2/R10KXXf4IjLQUCYqWyRaDhAmXYBgJK1xIz6m1kFKVmwmXmUlf2ZKLi5Cnulvyd1ufzl1wvK23v8fgKw+nPH4WcmkIkgrkiyG0ZkabFksDmpZknCEM6cYJr/qTE8kZ38otFnaboxVp6FJbylhxL5tbLnxIXYQkG0G6MNtBEan2tHn3uHE9FHOYbEmorbgfuvUKwmDMJ1pCus7CIDTGS9IF1ng3mv2E4K3FQvldRsicQ8ostKb1LhH7sr8AaZoUZX+vIGPDtemjHWrmuwIRO+C53AXHHTAJq06hU/WnTSxu1KBZghZSEm0UgaCrzQc1QyiiPC7JMjSSyellpwW5mG6dTGEcH1KHVGgkzSbSSCMRdLdtXmmzlCAbOYhs+ix1tisP6x3tahdcVCrmPAHBF9Lc6AqJu6UR6BihpjanRpgoRLKFUIbQykAbC40ahGv5rov+hSQVskQhVbml7rPQQYZ0USMOMmSUFCsTLgVn8d35QtqJz17lnHbBccdOUG8CObmRi/BqLoEX1lUIlchd7ThDlEkEUehpQLRoWLPdnuMkTwhkJUgmGokzSGohksVFpI0ICTUkF2ZgRk4ga7dryJMCZb1OnrwZ9E+X6OzxJyHnPgzVWoIefRBSvoUwzik5PqaYDiGMWggzi9CGeT08qVW+G7aCM4z3sk+QRaok0riFNABiV0ecsQ46QmKHkdBKjyZgatPtsr+B7V8+6EtgvfPfBcf17tDt/r6SMX3iCeB8oR1ZutolgdxphARKVtgQJPmvZEyS8bBcK5F9pUkgd3S1mbQhSNLNjoYQM2nTNEiYuBkqkjZLQMaHeOwobEfWdJAtySoonoKcOgnB+K6PK4bQvJ/Nqwhjh4hxRREgihRClvxZ6QneOTXHQBIUmQSL+dKRPgmWOCZceB9V7kJHMRIvEjGEjD2iyRTwlUvnYdsai/7Fs5uFvt2PWvf4u+C402ZkrfOpcu1OQcwWghaNIqvt45GjCLCASAwhQIaIPeno/mERoQzykjX/HNLSobhBCkP3jxFMzaSNRuyWkTqNhJU2aQ3pyBhSgqTva3z6nU7UeVOmweTbVe5hNek1FEFTEGQpzhNeMIhS4+O5TLYEhsT8wlr0oJjfQ2tSWKuQKYmE4YqYoJgi9mV/AZI0RVqr+XYFKzXv1VroXVDc0U/fLjju6OnpOrkeArtllQZrtZnVpphFo4mQ/EiCI7mRroVIhggCJg4A5a3IAiSzzDf88okD1JAgRkJwBGNlBin/ktSRsRyxrLRp1/W2K212utXzjsH8eQgcg/BxRUBeuwidUIWb9e0tBK0AYT1DlNL6tt7y5r+hDaB8Fjq3FslXZFzREBSZ5CI1J4nQKhMuJkUSxUjT/UiX38rL/qicM3kU5lRHdYufgTsjRDFIz9AmznUXHDdxs3bUpl31vV43EFC1awjoGorYu9lBrBBGhRUJEpXpbrM7Ints51FEJhI8F08RIAtLMrFI+MCLFPFihrQxjtjLoyXI5ps9Km12olvY5UKX8nFLgK7PIfDaiowr6vwepQZREZpgNjrwRG6dk7iLkKu10pf8+Vp2utDOILYZkkgithoJre1WgnRV/5a2IvcuIO6o5+gGJ7MLjoMyU73OszupgFw7cmkWmnJZvsZX5q62z2rXEUIgJEj6h58gSUuSIGlyV9G5olabGWzlqT8xs9rNRSQ2QFJj3W8dKWt+fWZ7JX62s1ztKjXnLNRhtq+YhR7RUCRxyxBRm5bDDuMGUWYRkZrDlweTWSzT5H0xMs9A+zgtK1skYiayyB0lMDqNuMOFPghzAQVnsWxqtRNfHoO89m/Bue+C4y24yX0foqIpOHUaiq72xFHI2asIWpTOojJMjLCuELZoHUUIQ4PQkasnEEhaSID0qW0HlxAPyI9USJ3LuZEEA6ERM9lQy5DOR0hY6lZjj+2VzGspjHD7EgwlDapU4p6GXBiB9krcTQSjEcI4jyvWSisRsc/yky/KF0YuOFyU/FmVJ69kExktRRAYM8RMYi0ueQ5j7Mv+Che6TeTeFYjo+7Lv9wC74NjvO3yrjt9pRbY7IrKZU5mFpasNXcQiDaJQIqQryaoPCWiT5JltliKaIqtdUn9cgkTUfFbbg6TL8qSNiZAwHjkxgezUWdg2P5KVNp+/xWVvzuU9nXkN01B3UzczgFqi+8xrHEEYLyKqKUSJRY1xRV+3nle6eBfaU3OowM6ElfTWYuoSFm6ipRWSeAlx2MgtRhK563WkZRZ6Ej6uuCsNd6vWfJ/H2QXHPt/gW374LlfbN40HVAPQS9fzKhsZIBSMs0mEtohHOpbBBZ5YHljdjkd6yX4mIJxC5lKkMIhFHbFr5iC5FCKpzyGhhmT9IszSELJbKpjQFVc82oTKfgQiuoyAhHlazS1WES0girTP4Hv3mf+yTYEHRQutQjCFL2yWg2IaIlGpl39LEKHF66b7HNGNTvPrZSfIRq/r3XWhb/my78eAu+DYj7u6E45ZAQ2q/swAamIG8motB8hWLosW1vjoq5xAHkhEBEkfj2RmO4B0CjKgmEWWg2RKVztB6khXaSHGEGIsFdZkUY64DGThBdh9V2BO59Sf7e+Z3OslcAGq0cgFOxhvbc4hUnwRKESk5aQSkYhzDqgIvOIRY655XJH9w9mjJ8sVcxD6uKL/QR0ts5gLRJCm06znPVzGJmHOnCr6QrOq6HO7faF3wtLfrnPYBcftupM78TgVabQnPgdxvuiISMLzyEEo/YYHSdYHU/EnigiOBhGTEwgLlRkmbSjSSoYkyZGFFUl3k7FI1BCHFrGwiFsBYrOINItyodZV7uZ2gOQNwgf1JoJwH3STvESSt3NqTg76MWqG9ByqcVto2elCGyeLDLRFEki0vFBHhpjcT7rQrB66mCGrxcjYN7zo9riiienT2buZ6J34GGz1nHbBcat3btD2qwha4Cwks7dNutvXciuLziNdbUc3W+UEcsHMtkWkaUnS1S74kcaBwT3DzLaiejVB0iL2PwSVXH0mMQeQ1C/natYElKJdw9ZFdiuJJ5yGOjqVtz0libsZ5DXQQuegyBpoWNR4/p6zyGSL9Qrr0gvP0otmFhp5Btrx3CVi7z6X1iKvgYmnK8iiupcVMxeuwGABDl+B3bUUB+0h2Nz57oLj5u7XgG/dUa+dC1oU8Ug2+yLfj1ltWo41hdBJRJYAw9gkuykTXFRRipgVrihjkaUVqQpwLJI2yBDbIj7nSeRLRTyyo2PeBqytbspSIQ7RqkHXSG5nHJWJJo1I1BDZedTpShMYSV0iKBa8TvbDdqQs+Qw0ky10oaW3fFs831iiZchbjJG0XWj24jkLc4Yai2Xb2105sQF/FtY//V1wXP8e3XlbrKVZSFk0ciMLcV1akU6hhmHmanOwoQVmjAdSr3LttSMljMotMHL/EtJ/BBM3Gq04QFwrqEBZmvMj221FO9rHrgGSPfiKzUtQdKFb+73gbNRgzJTuc+YtRYK5P1cCuk+4kKbEmkdWt8SwlkEE6/Utk1QiDmgpSrToRjPpwrBANIusVUfas6nVrvt85z0TPa5oFxzfFdO8xkV21Rozq01Xu34dARXImbAh0Lg0z+46g5pmVlsgDAoNSYe8XpsgWXAjM8e6bAJlhFboECckkhOAQiQLQ4hrV5GNxcjmShGGXkmbzzuJz/njCpyGPDwFRVAkLWk5Rjg26lWJonAJNQ/geQY6d6OLrLsXnqULLWGtyQnuMucqMgzQygxa1FiEzq1FGyImh7OshfYuNAUi2skWfzq7JX/vkmdmFxzfJRN9w8ssQNL3sild7cvQbDG6nFuRvqzOxyJNYZkZRFqskMil8lU2wtJlzVXIfXldxupsJjjyeGQLAWJrkQxnSJoGprUXKV1Wdkb0HMHKx3doBNTCc9Ajk1CMK8oYkS/3U4hsC/U0QqSL2CIEIsfqFuvlxHzVD61aHx8lWAdopQmSIEIrVWgytmgMknqIOL2KdOQ9SOdmYMbmYXz9eKnIvZtseVc+Jbvg+K6c9q6L7pEBpoxXC5DhNYThMrTYg9DNI0IjtyZtK3dhtURoat59DShqIZm0yby/zBYB7G6TZBHlLPwPs9stGeRgyeZfIyRTjyObY6uGadjoaA6QMYqOjBE0q3w0dSvZcCxFLTSoxSTYNHJgpCWrOX6KgC40BxdBPn4mkUqHJCM4t9AKh9GSCs2E1uIS0izG/9/elezGcUPBItmrFu9GYgQIcsjJV51880/kg/w9+ZCcfMzNQHIQ4hhBDMuyppvNpY167PaMFySApR54ZngQIAgY9vQTUeBj1asaNoXct58jSlzEzphq5A28VAUyOC5V2V1c91OQfA797xnMLeZqA8XF3yKREeJjZrVHjaasUIlUJiapjGgHiykuIGAkYUP3Gk/ChiBlYXWDjlKgVQnbhpRpU0REExM4OgPtNTRF3HiL2paoNe8VDRoX0TaTmFscdMikcxbaCChLfo5M9kwMNIGx1OjQw5o76N7Rlq1Ezxb60qeIiPv4JOkv3yvu4g6+0e+cwfFGy7lHi224/tAQ9tU5ClvDtGSHzYeIBhrB1nZqtQ3nlamZDMJuM9Nm9o/kfV+IHtQT0vtQdJGe7XYibuQUOTQI5goRR4DvYU4NCksZDgmWgHoc0BYajaeYm0a0EeWoxFKMc4piJaY1HE1m2UILAx3QK43eevR1IfeedngNb3/EUP6GeP6E51wB5CQxyqC4R5v4eq+SwfF69dvvT6+zbIQUmXWFnFcuKpScrFm9RV2fyEmSxMh8J0n3n1pa7UJE5DLzzFabACaEyChu2QMBjPeBlNSYUuQ14u4THAzt1WgIUc4MtFoz5gKKPKGmGfA4YiJbpjtOFdBrjc6RdHGw4y1YHzD0t+Cqlwh/PYIHp1ueZlDc70389W+XwfHra3c4n/wf6Y/w0gXqOJM1POlNzDF1hpT/yJRN8o9cmzp4eEWXmyT/4d1gYEAVHXHGElqXKHxIQnQRpDtUI70qp4mdGDByDpp6Re8T4aIselWjUwadXcE2BvbdfdgGydH8FCkbZ29iHw5nF279TTM4br3ku/rADQE5g+6fQl+cwxxfoei+TwJyNbHabINNQMv7SJI2Mq9dJPNYybOZHLWFTOaUjYabbdIo0qb8hjIcRQfuAgXF5yLkNnJSlEArNSBy5C+MGEy6W+xDQCdtNO8z38Ey7a+ZpnSuHsB/EHLPp8XMQu/qZtzK987guJUy79FDNlrtWWojI3yPUHSXKEuaOjjUFdvsAo0AZJU0kjxhap78yCpztplQR2ZZI4YwmVOwVGmOWysHQ+MLTHpFwTLaRFAmNErKXx9JtAywbJ8VfzdJzH1Swcos9D34IyC8+Nh8Ns9B79GWXOpVMjguVdl9X3fNbOuzydBijmmg648iq12ilhFEg3bs0crkik76SERU1CQqOpFHAUqFOMXImmQfNsvLVZha8UIsxGS6BSNsVFgpnhY1+uEYfcv7xYCBhEx/F+7oBcLtC8TnWci977txkffL4LhIWQ9k0Q3pzy+AktjYDe9IttrdgLqly890iiTbzFY7OrT6GAXdgBRQkGChRlETKMvkAMTTJAXczG0REof3ihF9qEQG1OsGq/ECVp2gj5fJJKJ18PYB3GfSnNxCH8imvLnXzOB4c7U87JU2XbgB/eQcht6RV1Vyy2l5ijSJ1Y4RrYz8ESg3GGieIucWmsQMg78o4jaMaqD8Z0z3imyfRchdoh8bWP92skj7A/7umbj/zCLuLM057F15rbfP4Hit8uUPf1SBjVZ7lv7M3pGrl6hOS1SWJhYOTamFqGn5Q4AsGINKr0XeMSbChsw17xcHT2CkJpJMtEevW3TUK86uP6v1veKcqf1thX3lbbKTFcjguJP/tm/8S2+QNmdzq/3P2qFbpD+TJnI6QYrIm6l/ZKlJac9MtqceMpnp0oBWZrMpHHcBrhvgbj+Ee5EE3Ms4jn/jpc5fb7kKZHBcrrYHvvIXvCMp/WGr3aMs7qI60SiDQ+MY9NXJ7HQRAV2WEzgOkl1DsbjYi40lrHsDd/IDBua3iIFuFnIf+D5b7vUzOC5X27wyK7DZagP6Z0CT1T56ndy7aVRL/8jiCIUnKUMPH0p2KkTTI/oIL0l/DVzt4WknxrzsySAi4lnObskbbZkKZHBcpq551U8rsCn9SbZoH0ByuAfTXMI4vU49NCMif8oLRHsEz3tFhnYdrxB/f5wJl7zBlq9ABsfla5yfMFfgS9KfP2H8T1D3XkFbAx3eQJk7GIsHGM0rjK+/Q2yA+NnInxwvs/Fs3lzLVSCD43K1zSv/VwVm6c+vUHgIhVMo4a0ff8x/T0SLNOjZNSdvqW1WIIPjNqudn/WFCkzEzTOoKRbhs4Zc/pBPiXn3bLkC7wGkZRgc8eQNbwAAAABJRU5ErkJggg==";var CZ=Object.defineProperty,PZ=Object.defineProperties,BZ=Object.getOwnPropertyDescriptors,UL=Object.getOwnPropertySymbols,IZ=Object.prototype.hasOwnProperty,DZ=Object.prototype.propertyIsEnumerable,jL=(E,a,y)=>a in E?CZ(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,wx=(E,a)=>{for(var y in a||(a={}))IZ.call(a,y)&&jL(E,y,a[y]);if(UL)for(var y of UL(a))DZ.call(a,y)&&jL(E,y,a[y]);return E},bx=(E,a)=>PZ(E,BZ(a)),MZ=({className:E,style:a={},title:y="",childNode:x=[],knowledgeNode:b=[]})=>{const z="rem",te=[{position:"absolute",zIndex:2,bottom:112,left:44},{position:"absolute",zIndex:3,bottom:94,left:74},{position:"absolute",zIndex:4,bottom:78,left:104},{position:"absolute",zIndex:5,bottom:66,left:136},{position:"absolute",zIndex:6,bottom:82,left:168},{position:"absolute",zIndex:7,bottom:104,left:202},{position:"absolute",zIndex:8,bottom:122,left:166}],re=[{position:"absolute",zIndex:10,bottom:166,left:66},{position:"absolute",zIndex:11,bottom:148,left:120},{position:"absolute",zIndex:12,bottom:150,left:180},{position:"absolute",zIndex:13,bottom:188,left:164},{position:"absolute",zIndex:14,bottom:192,left:114}],ae=(be="")=>{if(!be)return"-";let Oe=3;return/[\u4e00-\u9fff]/.test(be)||(Oe=7),(be==null?void 0:be.length)>=Oe?(be==null?void 0:be.slice(0,Oe-1))+"...":be},se=()=>(Array.isArray(b)?b.slice(0,7):Array(7).fill("\u77E5\u8BC6\u70B9")).map((_e,je)=>{const ze=te[je],Je=bx(wx({},ze),{bottom:`${ze.bottom}${z}`,left:`${ze.left}${z}`});return Ne.createElement("div",{key:je,style:Je,className:eg.smallBallGather},Ne.createElement("div",{className:eg.smallBall},Ne.createElement("b",null,ae(_e))),Ne.createElement("div",{className:eg.smallBallDish}))}),fe=()=>(Array.isArray(x)?x.slice(0,5):Array(5).fill("\u5B50\u8282\u70B9")).map((_e,je)=>{const ze=re[je],Je=bx(wx({},ze),{bottom:`${ze.bottom}${z}`,left:`${ze.left}${z}`});return Ne.createElement("div",{key:je,style:Je,className:eg.middleBall},Ne.createElement("div",null,Ne.createElement("b",null,ae(_e))))}),pe={position:"absolute",zIndex:1,bottom:0,width:"100%"};return Ne.createElement("div",{className:Qn()(eg.box,E),style:a},Ne.createElement("img",{className:eg.pedestal,style:pe,src:xZ}),Ne.createElement("img",{className:eg.pedestalHover,style:pe,src:wZ}),se(),Ne.createElement("div",{style:{position:"absolute",zIndex:9,bottom:138+z,left:"50%",transform:"translateX(-50%)"},className:eg.middleBallDish}),fe(),Ne.createElement("div",{style:{position:"absolute",zIndex:15,bottom:214+z,left:"50%",transform:"translateX(-50%)"},className:eg.largeBallDish}),Ne.createElement("div",{style:{position:"absolute",zIndex:16,bottom:234+z,left:120+z},className:eg.largeBall},Ne.createElement("b",null,ae(y))),Ne.createElement("img",{style:bx(wx({},pe),{zIndex:17}),className:eg.spectrum,src:bZ}),Ne.createElement("img",{style:bx(wx({},pe),{zIndex:17}),className:eg.spectrumHover,src:SZ}),Ne.createElement("div",{title:y,style:{position:"absolute",zIndex:18,bottom:304+z,left:0,fontSize:24+z,width:"100%",textAlign:"center"},className:"c-white blod"},(0,Bt.Pq)(y,9)))},LZ=Object.defineProperty,OZ=Object.defineProperties,TZ=Object.getOwnPropertyDescriptors,QL=Object.getOwnPropertySymbols,FZ=Object.prototype.hasOwnProperty,NZ=Object.prototype.propertyIsEnumerable,zL=(E,a,y)=>a in E?LZ(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,HL=(E,a)=>{for(var y in a||(a={}))FZ.call(a,y)&&zL(E,y,a[y]);if(QL)for(var y of QL(a))NZ.call(a,y)&&zL(E,y,a[y]);return E},WL=(E,a)=>OZ(E,TZ(a));function RZ(E){const a=new Map,y=[];return E.nodes.forEach(x=>{const b=WL(HL({},x.properties),{children:[]});a.set(b.uuid,b)}),E.relationships.forEach(x=>{const b=a.get(x.startNodeUuid),z=a.get(x.endNodeUuid);b&&z&&b.children.push(z)}),E.nodes.forEach(x=>{const b=x.properties;if(!E.relationships.some(re=>re.startNodeUuid===b.uuid||re.endNodeUuid===b.uuid))return;E.relationships.some(re=>re.endNodeUuid===b.uuid)||y.push(a.get(b.uuid))}),y.length===1?y[0]:y}function GL(E,a){const y=new Set,x=[];return E.forEach(b=>{const z=b[a[0]],te=b[a[1]];if(!z||!te)return;const re=`${z}-${te}`,ae=`${te}-${z}`;z!==te&&!y.has(re)&&!y.has(ae)&&(x.push(b),y.add(re),y.add(ae))}),x}const _Z=(E,a)=>{const y=E==null?void 0:E.map(b=>{const z=te=>{let re=[te.uuid];return te.children.forEach(ae=>{re=re.concat(z(ae))}),re};return z(b)});return a.map(b=>{let z,te;return y.forEach(re=>{re.includes(b.startNodeUuid)&&(z=re[0]),re.includes(b.endNodeUuid)&&(te=re[0])}),WL(HL({},b),{firstStartNodeUuid:z,firstEndNodeUuid:te})})};var Xd=De(59301),kZ=({data:E})=>{const a=(0,Ne.useRef)(),y=(0,Ne.useRef)();function x(te,re,ae){let se,fe;switch(re){case"top":se=Math.ceil(te.left+te.width/2-ae.left),fe=Math.ceil(te.top-ae.top);break;case"bottom":se=Math.ceil(te.left+te.width/2-ae.left),fe=Math.ceil(te.bottom-ae.top+15);break;case"left":se=Math.ceil(te.left-ae.left-10),fe=Math.ceil(te.top+te.height/2-ae.top+80);break;case"right":se=Math.ceil(te.right-ae.left+10),fe=Math.ceil(te.top+te.height/2-ae.top+50);break}return{x:se,y:fe}}function b(te,re){const ae={x:parseInt(te.left+te.width/2),y:parseInt(te.top+te.height/2)},se={x:parseInt(re.left+re.width/2),y:parseInt(re.top+re.height/2)},fe=se.x-ae.x,pe=se.y-ae.y;let be,Oe;return Math.abs(fe)>Math.abs(pe)?(be=fe>0?"right":"left",Oe=fe>0?"left":"right"):(be=pe>0?"bottom":"top",Oe=pe>0?"top":"bottom"),{startEdge:be,endEdge:Oe}}function z(){let te=E;if(!(te!=null&&te.length))return;const re=document.getElementById("lineContainer"),ae=document.getElementById("parentContainer").getBoundingClientRect();re.querySelectorAll("line").forEach(se=>se.remove()),te.forEach(se=>{const fe=document.getElementById(se.from),pe=document.getElementById(se.to),be=fe.getBoundingClientRect(),Oe=pe.getBoundingClientRect();let{startEdge:_e,endEdge:je}=se;if(!_e||!je){const ot=b(be,Oe);_e=_e||ot.startEdge,je=je||ot.endEdge}const ze=x(be,_e,ae),Je=x(Oe,je,ae),qe=document.createElementNS("http://www.w3.org/2000/svg","line");if(qe.setAttribute("x1",ze.x+se.offsetStart.x),qe.setAttribute("y1",ze.y+se.offsetStart.y),qe.setAttribute("x2",ze.x+se.offsetStart.x+.01),qe.setAttribute("y2",ze.y+se.offsetStart.y),qe.setAttribute("stroke",`url(#${se.gradient})`),qe.setAttribute("stroke-width","2"),se.dashed&&qe.setAttribute("stroke-dasharray","5, 5"),se.arrow==="start"?qe.setAttribute("marker-start",se!=null&&se.animated?"url(#triangle-start-h)":"url(#triangle-start)"):se.arrow==="end"?qe.setAttribute("marker-end",se!=null&&se.animated?"url(#triangle-end-h)":"url(#triangle-end)"):se.arrow==="both"&&(qe.setAttribute("marker-start",se!=null&&se.animated?"url(#triangle-start-h)":"url(#triangle-start)"),qe.setAttribute("marker-end",se!=null&&se.animated?"url(#triangle-end-h)":"url(#triangle-end)")),se.animated){qe.classList.add("dashed-line");const ot=document.createElementNS("http://www.w3.org/2000/svg","animate");ot.setAttribute("attributeName","x2"),ot.setAttribute("from",ze.x+se.offsetStart.x),ot.setAttribute("to",Je.x+se.offsetEnd.x+.01),ot.setAttribute("dur","1s"),ot.setAttribute("fill","freeze"),qe.appendChild(ot);const pt=document.createElementNS("http://www.w3.org/2000/svg","animate");pt.setAttribute("attributeName","y2"),pt.setAttribute("from",ze.y+se.offsetStart.y),pt.setAttribute("to",Je.y+se.offsetEnd.y),pt.setAttribute("dur","1s"),pt.setAttribute("fill","freeze"),qe.appendChild(pt)}else qe.setAttribute("x2",Je.x+se.offsetEnd.x+.01),qe.setAttribute("y2",Je.y+se.offsetEnd.y);re.appendChild(qe)})}return(0,Ne.useEffect)(()=>{E!=null&&E.length&&z()},[E]),(0,Ne.useEffect)(()=>(window.addEventListener("resize",()=>z),window.addEventListener("scroll",()=>z),()=>{window.removeEventListener("resize",z),window.removeEventListener("scroll",z)}),[]),Xd.createElement(Xd.Fragment,null,Xd.createElement("svg",{id:"lineContainer",style:{width:"100%",height:"100%",position:"absolute",top:0,left:0}}),Xd.createElement("svg",null,Xd.createElement("defs",null,Xd.createElement("linearGradient",{id:"gradient1",x1:"0%",y1:"0%",x2:"0%",y2:"100%"},Xd.createElement("stop",{"stop-color":"#42BECD",offset:"0%"}),Xd.createElement("stop",{"stop-color":"#3C30C6",offset:"100%"})),Xd.createElement("linearGradient",{id:"gradient2",x1:"0%",y1:"0%",x2:"100%",y2:"100%"},Xd.createElement("stop",{"stop-color":"#2DE1FD",offset:"0%"}),Xd.createElement("stop",{"stop-color":"#C7FFB0",offset:"100%"})),Xd.createElement("marker",{id:"triangle-start",viewBox:"0 0 10 10",refX:"2",refY:"5",markerWidth:"6",markerHeight:"6",orient:"auto"},Xd.createElement("path",{d:"M 10 0 L 0 5 L 10 10 z",fill:"url(#gradient1)"})),Xd.createElement("marker",{id:"triangle-end",viewBox:"0 0 10 10",refX:"8",refY:"5",markerWidth:"6",markerHeight:"6",orient:"auto"},Xd.createElement("path",{d:"M 0 0 L 10 5 L 0 10 z",fill:"url(#gradient1)"})),Xd.createElement("marker",{id:"triangle-start-h",viewBox:"0 0 10 10",refX:"2",refY:"5",markerWidth:"6",markerHeight:"6",orient:"auto"},Xd.createElement("path",{d:"M 10 0 L 0 5 L 10 10 z",fill:"url(#gradient2)"})),Xd.createElement("marker",{id:"triangle-end-h",viewBox:"0 0 10 10",refX:"8",refY:"5",markerWidth:"6",markerHeight:"6",orient:"auto"},Xd.createElement("path",{d:"M 0 0 L 10 5 L 0 10 z",fill:"url(#gradient2)"})))))},UZ=Object.defineProperty,jZ=Object.defineProperties,QZ=Object.getOwnPropertyDescriptors,KL=Object.getOwnPropertySymbols,zZ=Object.prototype.hasOwnProperty,HZ=Object.prototype.propertyIsEnumerable,VL=(E,a,y)=>a in E?UZ(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,ZL=(E,a)=>{for(var y in a||(a={}))zZ.call(a,y)&&VL(E,y,a[y]);if(KL)for(var y of KL(a))HZ.call(a,y)&&VL(E,y,a[y]);return E},WZ=(E,a)=>jZ(E,QZ(a)),YL=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(se){b(se)}},te=ae=>{try{re(y.throw(ae))}catch(se){b(se)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,te);re((y=y.apply(E,a)).next())}),GZ=({subjectId:E,setActivated:a,onAddSuccess:y})=>{const x=(0,Ce.useSelector)(mr=>mr),{pathsDetail:{detail:b={}}}=x,[z]=me.default.useForm(),[te,re]=(0,Ne.useState)(""),[ae,se]=(0,Ne.useState)(!1),[fe,pe]=(0,Ne.useState)(!0),[be,Oe]=(0,Ne.useState)(!1),[_e,je]=(0,Ne.useState)([]),[ze,Je]=(0,Ne.useState)([]),[qe,ot]=(0,Ne.useState)(null),[pt,Et]=(0,Ne.useState)(),bt=(0,Ne.useRef)(),Ct=(0,Ne.useRef)();let St=(0,Ne.useRef)().current,Zt=(0,Ne.useRef)().current,sn=(0,Ne.useRef)(!1).current;const gn=b==null?void 0:b.edit_of_subject_knowledge;(0,Ne.useEffect)(()=>{E&&Dn()},[E]);const Dn=()=>YL(void 0,null,function*(){var mr,Ir,ca,pr,Ca;pe(!0);const Fi=yield(0,ee.ZP)("/api/knowledge/v2/get_node.json",{method:"get",params:{depth:-1,subject_id:E}});if(Fi.status===0){re((pr=(ca=(Ir=(mr=Fi==null?void 0:Fi.data)==null?void 0:mr.nodes)==null?void 0:Ir[0])==null?void 0:ca.properties)==null?void 0:pr.uuid);const Ti=((Ca=Fi==null?void 0:Fi.data)==null?void 0:Ca.relationships)||[];let di=[],Ha=[];Ti==null||Ti.forEach(Mo=>{["\u5173\u8054"].includes(Mo.type)?di.push(Mo):["\u5305\u542B"].includes(Mo.type)&&Ha.push(Mo)}),di=GL(di,["startNodeUuid","endNodeUuid"]);const Ii=WZ(ZL({},Fi==null?void 0:Fi.data),{relationships:Ha}),Hi=RZ(Ii);let ho=_Z((Hi==null?void 0:Hi.children)||[],di);console.log(ho,3),ho=GL(ho,["firstStartNodeUuid","firstEndNodeUuid"]),je((Hi==null?void 0:Hi.children)||[]),Je(ho),console.log(ho,Hi==null?void 0:Hi.children,222)}pe(!1)});(0,Ne.useEffect)(()=>{ze!=null&&ze.length&&Et(ze.map(mr=>({from:mr.firstStartNodeUuid,to:mr.firstEndNodeUuid,animated:!1,dashed:!0,arrow:"both",offsetStart:{x:0,y:0},offsetEnd:{x:0,y:1},gradient:"gradient1"})))},[ze]),(0,Ne.useEffect)(()=>{var mr;pt!=null&&pt.length&&((mr=pt==null?void 0:pt.map)==null||mr.call(pt,Ir=>{Ir.animated=Ir.from===qe||Ir.to===qe,Ir.gradient=Ir.from===qe||Ir.to===qe?"gradient2":"gradient1"}),Et([...pt]))},[qe]);function or(mr){var Ir,ca;if(!sn)return;const pr=mr.pageY-St;(ca=(Ir=bt.current)==null?void 0:Ir.scrollTo)==null||ca.call(Ir,0,Zt-pr)}function Vn(mr){var Ir;sn=!0,St=mr.pageY,Zt=((Ir=bt.current)==null?void 0:Ir.scrollTop)||0}function Dr(mr){sn=!1}(0,Ne.useEffect)(()=>(document.addEventListener("mousedown",Vn),document.addEventListener("mousemove",or),document.addEventListener("mouseup",Dr),()=>{document.removeEventListener("mouseup",Dr),document.removeEventListener("mousemove",or),document.removeEventListener("mousedown",Vn)}),[]);const sa=mr=>YL(void 0,null,function*(){const{nodeType:Ir,description:ca,name:pr,tags:Ca}=mr;Oe(!0);const Fi=yield(0,ee.ZP)("/api/knowledge/v2/add_node.json",{method:"POST",body:{label:"\u56FE\u8C31",subject_id:E,properties:{description:ca,rootNodeUuid:te,name:pr,nodeType:Ir[0],tags:(Ca==null?void 0:Ca.join("\uFF0C"))||"",color:"1"},relationships:[{startNodeUuid:te,type:"\u5305\u542B"}]}});(Fi==null?void 0:Fi.status)===0&&(se(!1),Dn(),y()),Oe(!1)}),vr=()=>{const mr=[],Ir=_e==null?void 0:_e.map((pr,Ca)=>{var Fi;let Ti;const di=Ca+1,Ha=mr.length-3,Ii=mr[Ha];di%3===1&&(Ti={top:Ii!==void 0?`${parseFloat(Ii==null?void 0:Ii.top)+600}rem`:"100rem",left:"50%",marginLeft:"-146rem"}),di%3===2&&(Ti={top:Ii!==void 0?`${parseFloat(Ii==null?void 0:Ii.top)+600}rem`:"380rem",left:0}),di%3===0&&(Ti={top:Ii!==void 0?`${parseFloat(Ii==null?void 0:Ii.top)+600}rem`:"380rem",right:0}),mr.push(Ti);let Hi=[],ho=(Fi=pr==null?void 0:pr.children)==null?void 0:Fi.map(Mo=>{var zs;return Mo!=null&&Mo.children&&((zs=Mo==null?void 0:Mo.children)==null||zs.forEach(As=>{Hi.push(As.name)})),Mo.name});return ho.length>5&&(ho[0]="..."),Hi.length>7&&(Hi[0]="..."),Ne.createElement("div",{className:B0.listItem,key:Ca,onMouseEnter:()=>ot(pr==null?void 0:pr.uuid),onMouseLeave:()=>ot(null),id:pr==null?void 0:pr.uuid,onClick:()=>a(pr==null?void 0:pr.uuid),style:ZL({position:"absolute",zIndex:10},Ti)},Ne.createElement(MZ,{childNode:ho,knowledgeNode:Hi,title:pr==null?void 0:pr.name}))}),ca=parseFloat(mr[mr.length-1].top)+352+80+"rem";return Ne.createElement("div",{ref:Ct,style:{height:ca}},Ir)};return Ne.createElement(yn,null,Ne.createElement("div",{className:B0.wrap},fe&&Ne.createElement(ue.Z,{style:{width:"100%",marginTop:"300rem"},spinning:fe}),!fe&&Ne.createElement(Ne.Fragment,null,gn&&Ne.createElement("div",{className:B0.add,onClick:()=>se(!0)},Ne.createElement("i",{className:"iconfont icon-tianjiatixing"})),_e!=null&&_e.length?Ne.createElement("div",{className:B0.dimensionalBall,ref:bt},Ne.createElement("div",{className:B0.archer,id:"parentContainer"},vr(),Ne.createElement(kZ,{data:pt}))):Ne.createElement(da,{text:"\u6682\u65E0\u56FE\u8C31\uFF0C\u7ACB\u5373\u65B0\u5EFA\u4E00\u4E2A\u56FE\u8C31\u5427\uFF5E",textColor:"#fff",buttonText:gn&&"\u65B0\u5EFA\u56FE\u8C31",onClick:()=>se(!0)})),Ne.createElement(Pe.default,{open:ae,centered:!0,width:"1000rem",okText:"\u4FDD\u5B58",onCancel:()=>se(!1),cancelText:"\u53D6\u6D88",afterClose:()=>{z.resetFields()},confirmLoading:be,onOk:()=>z.submit(),title:"\u65B0\u589E\u77E5\u8BC6\u56FE\u8C31"},Ne.createElement("div",{className:B0.modal},Ne.createElement("div",{className:B0.mHead},"\u8282\u70B9\u5C5E\u6027"),Ne.createElement(me.default,{form:z,scrollToFirstError:!0,layout:"horizontal",colon:!1,size:"large",labelCol:{flex:"110rem"},onFinish:sa,className:B0.form},Ne.createElement(me.default.Item,{label:"\u56FE\u8C31\u540D\u79F0",name:"name",rules:[{required:!0,message:"\u8BF7\u8F93\u5165\u8282\u70B9\u540D\u79F0"},{type:"string",max:60,message:"\u8F93\u5165\u8D85\u9650\uFF0C\u8BF7\u7F29\u51CF\u5B57\u7B26\u6570"},{type:"string",whitespace:!0,message:"\u5185\u5BB9\u4E0D\u80FD\u5168\u4E3A\u7A7A\u683C"}]},Ne.createElement(xe.default,{maxLength:60,showCount:!0,placeholder:"\u8BF7\u8F93\u5165"})),Ne.createElement(me.default.Item,{label:"\u7B80\u4ECB",name:"description",rules:[{type:"string",max:5e3,message:"\u8F93\u5165\u8D85\u9650\uFF0C\u8BF7\u7F29\u51CF\u5B57\u7B26\u6570"},{type:"string",whitespace:!0,message:"\u5185\u5BB9\u4E0D\u80FD\u5168\u4E3A\u7A7A\u683C"}]},Ne.createElement(xe.default.TextArea,{maxLength:5e3,showCount:!0,placeholder:"\u8BF7\u8F93\u5165"})),Ne.createElement(me.default.Item,{className:B0.mType,label:Ne.createElement("span",null,"\u56FE\u8C31\u7C7B\u578B ",Ne.createElement(mn.Z,{title:"\u5F53\u524D\u77E5\u8BC6\u56FE\u8C31\u7684\u7C7B\u578B\uFF0C\u5982\uFF1A\u5927\u7EB2\u56FE\u8C31\u3001\u80FD\u529B\u56FE\u8C31"},Ne.createElement(ui.Z,null))),name:"nodeType",rules:[{required:!0,message:"\u8BF7\u9009\u62E9\u8282\u70B9\u7C7B\u578B"}]},Ne.createElement(Pr,{subjectId:E,type:1})))))))},sc={statistics:"statistics___BP4qi",noUnfold:"noUnfold___EpqXR",wrapBox:"wrapBox___TsFlb",scrollBox:"scrollBox___Oh4zJ",content:"content___NRQFH",title:"title___z20Sn",box:"box___k6Eep",left:"left___Gnxfc",right:"right___rNC9V",head:"head___mT3Wl",radio:"radio___sjK3F",active:"active___oX7gd",average:"average___KVA2l",li:"li____NnY1",yellow:"yellow___CCujs",blue:"blue___m_425",lineTitle:"lineTitle___qo6vf",echartsTwo:"echartsTwo___aC24D",echartsThree:"echartsThree___Z2Q2A",unfold:"unfold___VUl4t",select:"select___dM1mS"},KZ="data:image/png;base64,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",VZ="data:image/png;base64,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",ZZ="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAAsCAYAAAA5KtvpAAAAAXNSR0IArs4c6QAABFJJREFUaEPtml9MW1Ucxz+nlxbaUkYvYjdENG7RiEg6jNGQ+aIx08SE6IvZxGS+qGGPPjnj2+J8MIuJMVk00Zgg0zc1Rpm+Gf+M+GdkZKhT4gyMjnWllJWWtrf3mNPLHJcWaBmlXcMvaV96fufez/n+fuf8zjkV/a8ZBzB5R4JO7VpICHlo8A3nt6L/VWNSIttrl9UiEzAyeMz5sOg/khmTkq7aBxbfDB6r2y8OHZFBjzf7rt5Mb61ChyOcWkxrhz86KiaEggxF5Aum5INaBRaCJ9taxPBSaG8D15zQVaVwnQaao/QxlhLSxnU/1Y+RLdxP1QA7BAT8IHIzSekWjUMyBS1NUO+EuTgkUvn9lB84mwVNK4pA921c4bkFS1V/IzS4QA3AYroCwM2nBpnf14fp9RUFvRmNVLSYskIh3XryOMJIc+WZw1sKvdrAlT2kFbAzPEVGDxB5eqDi0EUDzyetSWC1UFk+oq74LPqFURrD/9AUOo8jm8n9nNwR4M/HBzDc5Q1vhwO8LvC5N5jDV5MQXVg/u1wLUe789TP8F88hpFnQIdkUYPyxATJlhlYPb/WBu97+GkUpHJ6HZIEZb3lX/qkx9vw0hJYpsBasQE807+LsE6+AkqKM1tgAeuMGgC/HYNGKyoKmFL37uw9XVXW5k3Ro/NX7PLMd3WVEtbr21kPLiuwpSuG1gLVUguCXb+JMxdcF2ErYsgHfNfIpt06M5GANl4doWyfzgT25HM3U+9h9eghP7BKbBauKi08+t9eNDg0O9uUXN5uusGdumu6v3iLT4ONCTx+RjmBeXt7/9XE8sdCmhbECPjG4rHAG6jTBy/1bANx+dhjPXIiJh54lW+8pGNJdw28z3floSTkbnoVozF4qteoC/w4wDDjxcYWAO377gsngU8g1ZltP9CIJ/23r5vfyBj/8YnLmnH1Z631Ao6dL5OrlyihsmjiyBqbTVRKMamxm4cy4XUG1LQzeZ22V1gSupMIlky45pDPw3pA9LJ11gpees/KwOhVeh/bvfyVTIbuKu+8Q3L5LcEPA1arw9z+bjI7b83DfgxrBzhsErlgOAwsJu8xqH+peKtjLBlwphVNpeP+kPQ9dTsGLB608LBtwpRTeBga2Fa6lSaumQ3r2KsRX7OtvBuAmNzR7N3AAkMnCzJz9PKvagVWpurM5/5y7qAMANUZZE1KZ69DqfH30D3slpfYQe++16uHJS3A5Yv+9PSAI3GL1Nfr7Cl8Bezst36kZmLlS2Nc08+vw3HOXfJW/ur1wu0DVBSutaOCN1s3V5rcNvNaFuAoVV121aZb/PmpzsspNiwr34i/Er93MVTtyYhHU5VohKwnY2wDqU82m7orjydXP0UsCrmbQYt8tD3g6IvdLSe5PH7VomoPunboYyy1f6ktK2TAdYRS4p+aABT+26TwihMidTPy/TM/EZcBY5HUEPUJyE8zL60gjSEk47RYc1XURu9b6P7vslVpOgNBqAAAAAElFTkSuQmCC",YZ="data:image/png;base64,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",XZ="data:image/png;base64,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",GC={wave:"wave___rx4XG",fillWrap:"fillWrap___q512j",svgBox:"svgBox___DfbUu"},JZ=Object.defineProperty,XL=Object.getOwnPropertySymbols,qZ=Object.prototype.hasOwnProperty,$Z=Object.prototype.propertyIsEnumerable,JL=(E,a,y)=>a in E?JZ(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,eY=(E,a)=>{for(var y in a||(a={}))qZ.call(a,y)&&JL(E,y,a[y]);if(XL)for(var y of XL(a))$Z.call(a,y)&&JL(E,y,a[y]);return E};const hee=E=>React.createElement("svg",eY({width:449,height:204,xmlns:"http://www.w3.org/2000/svg",xmlnsXlink:"http://www.w3.org/1999/xlink"},E),React.createElement("title",null,"\u6CE2\u7EB9"),React.createElement("defs",null,React.createElement("linearGradient",{x1:"50%",y1:"41.532%",x2:"51.437%",y2:"65.254%",id:"water_svg__c"},React.createElement("stop",{stopColor:"#34D5A2",offset:"0%"}),React.createElement("stop",{stopColor:"#1D9F76",offset:"100%"})),React.createElement("path",{id:"water_svg__a",d:"M0 0h449v204H0z"})),React.createElement("g",{fill:"none",fillRule:"evenodd"},React.createElement("mask",{id:"water_svg__b",fill:"#fff"},React.createElement("use",{xlinkHref:"#water_svg__a"})),React.createElement("g",{mask:"url(#water_svg__b)"},React.createElement("path",{d:"M0 7.704c14.667 8 29.667 8 45 0 6.537-3.41 23.776-14.982 45 0 17 12 29 9 45 0s31-9 45 0c25 17 35 8 45 0s32.344-7.91 45 0c16 10 32 10 45 0 10.947-8.42 33.124-8.71 45 0 15 11 31.839 11.136 45 0 13-11 30-9.517 45 0s15 17 45 0v196H0v-196Z",fill:"url(#water_svg__c)",transform:"translate(-40)"}),React.createElement("path",{d:"M0 11c14.667 8 29.667 8 45 0 6.537-3.41 23.776-14.982 45 0 17 12 29 9 45 0s31-9 45 0c25 17 35 8 45 0s32.344-7.91 45 0c16 10 32 10 45 0 10.947-8.42 33.124-8.71 45 0 15 11 31.839 11.137 45 0 13-11 30-10 45 0s15 17 45 0v193H0V11Z",fill:"#38E5AE"}))));var tY="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDQ5IiBoZWlnaHQ9IjIwNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+PGRlZnM+PGxpbmVhckdyYWRpZW50IHgxPSI1MCUiIHkxPSI0MS41MzIlIiB4Mj0iNTEuNDM3JSIgeTI9IjY1LjI1NCUiIGlkPSJjIj48c3RvcCBzdG9wLWNvbG9yPSIjMzRENUEyIiBvZmZzZXQ9IjAlIi8+PHN0b3Agc3RvcC1jb2xvcj0iIzFEOUY3NiIgb2Zmc2V0PSIxMDAlIi8+PC9saW5lYXJHcmFkaWVudD48cGF0aCBpZD0iYSIgZD0iTTAgMGg0NDl2MjA0SDB6Ii8+PC9kZWZzPjxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+PG1hc2sgaWQ9ImIiIGZpbGw9IiNmZmYiPjx1c2UgeGxpbms6aHJlZj0iI2EiLz48L21hc2s+PGcgbWFzaz0idXJsKCNiKSI+PHBhdGggZD0iTTAgNy43MDRjMTQuNjY3IDggMjkuNjY3IDggNDUgMCA2LjUzNy0zLjQxIDIzLjc3Ni0xNC45ODIgNDUgMCAxNyAxMiAyOSA5IDQ1IDBzMzEtOSA0NSAwYzI1IDE3IDM1IDggNDUgMHMzMi4zNDQtNy45MSA0NSAwYzE2IDEwIDMyIDEwIDQ1IDAgMTAuOTQ3LTguNDIgMzMuMTI0LTguNzEgNDUgMCAxNSAxMSAzMS44MzkgMTEuMTM2IDQ1IDAgMTMtMTEgMzAtOS41MTcgNDUgMHMxNSAxNyA0NSAwdjE5Nkgwdi0xOTZaIiBmaWxsPSJ1cmwoI2MpIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtNDApIi8+PHBhdGggZD0iTTAgMTFjMTQuNjY3IDggMjkuNjY3IDggNDUgMCA2LjUzNy0zLjQxIDIzLjc3Ni0xNC45ODIgNDUgMCAxNyAxMiAyOSA5IDQ1IDBzMzEtOSA0NSAwYzI1IDE3IDM1IDggNDUgMHMzMi4zNDQtNy45MSA0NSAwYzE2IDEwIDMyIDEwIDQ1IDAgMTAuOTQ3LTguNDIgMzMuMTI0LTguNzEgNDUgMCAxNSAxMSAzMS44MzkgMTEuMTM3IDQ1IDAgMTMtMTEgMzAtMTAgNDUgMHMxNSAxNyA0NSAwdjE5M0gwVjExWiIgZmlsbD0iIzM4RTVBRSIvPjwvZz48L2c+PC9zdmc+",nY=({percentage:E,size:a=180,unit:y="rem"})=>{const[x,b]=(0,Ne.useState)(["",""]),[z,te]=(0,Ne.useState)(0),re=(0,Ne.useRef)(null),ae=(0,Ne.useRef)(null);(0,Ne.useEffect)(()=>(re.current&&(clearTimeout(ae.current),ae.current=setTimeout(()=>{var Oe;const _e=z+20;_e+a>((Oe=re.current)==null?void 0:Oe.offsetWidth)-40&&b([...x,""]),te(_e)},200)),()=>{clearTimeout(ae.current)}),[re.current,z]),(0,Ne.useEffect)(()=>(window.addEventListener("resize",se),()=>{window.removeEventListener("resize",se)}),[]);const se=()=>{te(0)},fe={width:a+y,height:a+y},pe=148-a*(E/100),be=()=>Ne.createElement("img",{src:tY,style:{width:`449${y}`,height:`204${y}`}});return Ne.createElement("div",{className:GC.wave,style:fe},Ne.createElement("div",{className:GC.fillWrap},Ne.createElement("div",{style:{fontSize:`28${y}`,zIndex:2,color:"#fff"}},E,"%"),Ne.createElement("div",{className:GC.svgBox,ref:re,style:{top:pe+y,transform:`translateX(-${z}px)`}},x.map((Oe,_e)=>Ne.createElement(be,{key:_e})))))},I0={trapezoid:"trapezoid___qw8yM",pillarBox:"pillarBox___rGJCP",pillar1:"pillar1___uJ0zx",point:"point____XIHt",pillar2:"pillar2___pL9k5",pillar3:"pillar3___dUdZf",textBox:"textBox___isldE",text1:"text1___g5Hy9",tip:"tip___PXfJr",line:"line___A5wA_",l:"l___hfZzL",text2:"text2___u2scn",text3:"text3___WSnmy"},rY=Object.defineProperty,aY=Object.defineProperties,iY=Object.getOwnPropertyDescriptors,qL=Object.getOwnPropertySymbols,oY=Object.prototype.hasOwnProperty,sY=Object.prototype.propertyIsEnumerable,$L=(E,a,y)=>a in E?rY(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,eO=(E,a)=>{for(var y in a||(a={}))oY.call(a,y)&&$L(E,y,a[y]);if(qL)for(var y of qL(a))sY.call(a,y)&&$L(E,y,a[y]);return E},tO=(E,a)=>aY(E,iY(a)),lY=({dataSource:E=[]})=>{const[a,y]=(0,Ne.useState)([]),[x,b]=(0,Ne.useState)(0),z=(0,Ne.useRef)(String(Math.random()).slice(-6));(0,Ne.useEffect)(()=>{if(E!=null&&E.length){const se=ae(E),fe=E.map((pe,be)=>tO(eO({value:pe,lineWidth:30,pillarWidth:104+se[be]},re[be]),{from:re[be].from+z.current,to:re[be].to+z.current}));y(fe),b(x+1)}},[JSON.stringify(E)]),(0,Ne.useEffect)(()=>{x>0&&te()},[x]),(0,Ne.useEffect)(()=>(window.addEventListener("resize",te),()=>{window.removeEventListener("resize",te)}),[x]);const te=()=>{const se=a.map((fe,pe)=>{const{from:be,to:Oe}=fe,_e=document.querySelector(`#${be}`),je=document.querySelector(`#${Oe}`),ze=_e.getBoundingClientRect(),Je=je.getBoundingClientRect(),qe=Math.abs(Je.left-ze.left);return tO(eO({},fe),{lineWidth:qe})});y(se)},re=[{title:"\u5B8C\u6210\u738780%\uFF5E100%",pillarTitle:"80\uFF5E100%",from:"lineStart1",to:"lineEnd1"},{title:"\u5B8C\u6210\u738760%\uFF5E79%",pillarTitle:"60\uFF5E79%",from:"lineStart2",to:"lineEnd2"},{title:"\u5B8C\u6210\u738759%\u4EE5\u4E0B",pillarTitle:"59%\u4EE5\u4E0B",from:"lineStart3",to:"lineEnd3"}];function ae(se){const fe=se.reduce((pe,be)=>pe+be,0);return se.map(pe=>pe/fe*100)}return Ne.createElement("div",{className:I0.trapezoid},Ne.createElement("div",{className:I0.textBox},a.map((se,fe)=>{const{value:pe,lineWidth:be,title:Oe,from:_e}=se,je=fe+1;return Ne.createElement("div",{key:fe,className:I0[`text${je}`]},Ne.createElement("div",{className:I0.tip},Oe,Ne.createElement("span",null,pe)),Ne.createElement("div",{id:_e,className:I0.line},Ne.createElement("div",{style:{width:be},className:I0.l})))})),Ne.createElement("div",{className:I0.pillarBox},a.map((se,fe)=>{const{pillarWidth:pe,pillarTitle:be,to:Oe}=se,_e=fe+1;return Ne.createElement("div",{key:fe,className:I0[`pillar${_e}`],style:{width:pe+"rem"}},Ne.createElement("span",null,be),Ne.createElement("div",{id:Oe,className:I0.point}))})))},us=De(59301),uY=Object.defineProperty,nO=Object.getOwnPropertySymbols,cY=Object.prototype.hasOwnProperty,dY=Object.prototype.propertyIsEnumerable,rO=(E,a,y)=>a in E?uY(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,KC=(E,a)=>{for(var y in a||(a={}))cY.call(a,y)&&rO(E,y,a[y]);if(nO)for(var y of nO(a))dY.call(a,y)&&rO(E,y,a[y]);return E},fY=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(se){b(se)}},te=ae=>{try{re(y.throw(ae))}catch(se){b(se)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,te);re((y=y.apply(E,a)).next())}),hY=({subjectId:E,uuid:a,isAll:y})=>{const[x,b]=(0,Ne.useState)(!1),[z,te]=(0,Ne.useState)({type:0,course_id:null}),[re,ae]=(0,Ne.useState)(!0),[se,fe]=(0,Ne.useState)(!0),[pe,be]=(0,Ne.useState)([]),[Oe]=(0,Ce.useSearchParams)(),[_e,je]=(0,Ne.useState)({graphCount:0,tagCount:0,resourceCount:0,proportionCount:0}),ze=[{name:"",value:0,itemStyle:{color:"rgb(223,209,38)"}},{name:"",value:0,itemStyle:{color:"rgb(6,234,230)"}},{name:"",value:0,itemStyle:{color:"rgb(6,110,247)"}}],[Je,qe]=(0,Ne.useState)({averageCompletionRate:0,averageMasteryRate:0,completionRate:[0,0,0],masteryRate:ze});(0,Ne.useEffect)(()=>{x?ot(z):te({type:0,course_id:null})},[x]),(0,Ne.useEffect)(()=>{x&&b(!1)},[a]);const ot=(Ct,St=!1)=>fY(void 0,null,function*(){var Zt,sn,gn,Dn,or,Vn,Dr,sa,vr,mr;St?fe(!0):ae(!0);const Ir=yield(0,ee.ZP)(y?"/api/knowledge/v2/subject_statistics.json":"/api/knowledge/v2/knowledge_statistics.json",{method:"get",params:KC({subject_id:E,parentNodeUuid:a,labels:"\u56FE\u8C31,\u6807\u7B7E,\u8D44\u6E90",depth:-1},Ct)});if((Ir==null?void 0:Ir.status)===0){let ca=(Zt=Ir==null?void 0:Ir.data)==null?void 0:Zt.metricCounters;ca=ca||[];const pr={graphCount:((sn=ca.find(di=>(di==null?void 0:di.name)==="\u56FE\u8C31"))==null?void 0:sn.count)||0,tagCount:((gn=ca.find(di=>(di==null?void 0:di.name)==="\u6807\u7B7E"))==null?void 0:gn.count)||0,resourceCount:((Dn=ca.find(di=>(di==null?void 0:di.name)==="\u8D44\u6E90"))==null?void 0:Dn.count)||0,proportionCount:(or=Ir==null?void 0:Ir.data)==null?void 0:or.resource_rate};let Ca=Object.entries((Vn=Ir==null?void 0:Ir.data)==null?void 0:Vn.study_grasp_hash).map(([di,Ha],Ii)=>({name:di,value:Ha,itemStyle:ze[Ii].itemStyle}));const Fi={averageCompletionRate:(Dr=Ir==null?void 0:Ir.data)==null?void 0:Dr.study_complete_rate,averageMasteryRate:(sa=Ir==null?void 0:Ir.data)==null?void 0:sa.study_grasp_rate,completionRate:Object.values((vr=Ir==null?void 0:Ir.data)==null?void 0:vr.study_complete_hash),masteryRate:Ca};console.log(Ca,"newMasteryRate");const Ti=(mr=Ir==null?void 0:Ir.courses)==null?void 0:mr.map(di=>({label:di.name,value:di.id}));be(Ti),je(pr),qe(Fi)}setTimeout(()=>{ae(!1)},500),fe(!1)}),pt=Ct=>{z.type=Ct,te(KC({},z)),(Ct!==2||z.course_id)&&ot(z,!0)},Et=Ct=>{z.course_id=Ct,te(KC({},z)),ot(z,!0)},bt=[{name:"\u5168\u90E8",id:0},{name:"\u81EA\u4E3B\u5B66\u4E60",id:1},{name:"\u8BFE\u5802\u5B66\u4E60",id:2}];return us.createElement(yn,null,us.createElement("div",{className:sc.statistics},us.createElement("div",{onClick:()=>b(!0),className:sc.noUnfold},us.createElement("img",{style:{width:"32rem",marginBottom:"4rem"},src:KZ}),us.createElement("span",null,"\u7EDF"),us.createElement("span",null,"\u8BA1")),us.createElement("div",{className:sc.wrapBox,style:{right:x?0:"-600rem"}},re&&us.createElement(ue.Z,{style:{width:"100%",marginTop:"200rem"},spinning:!0}),!re&&us.createElement(us.Fragment,null,us.createElement("div",{className:sc.scrollBox},us.createElement("div",{className:sc.content},us.createElement("div",{className:sc.title},us.createElement("img",{src:VZ}),us.createElement("span",null,"\u56FE\u8C31\u7EDF\u8BA1\u5206\u6790")),us.createElement(ua.Z,{className:sc.box,justify:"space-between"},us.createElement("div",{className:sc.left},us.createElement("div",null,us.createElement("span",null,"\u77E5\u8BC6\u56FE\u8C31\u6570\u91CF"),us.createElement("b",null,_e==null?void 0:_e.graphCount)),us.createElement("div",{style:{margin:"18rem 0"}},us.createElement("span",null,"\u6807\u7B7E\u8282\u70B9\u6570\u91CF"),us.createElement("b",null,_e==null?void 0:_e.tagCount)),us.createElement("div",null,us.createElement("span",null,"\u8D44\u6E90\u8282\u70B9\u6570\u91CF"),us.createElement("b",null,_e==null?void 0:_e.resourceCount))),us.createElement("div",{className:sc.right},x&&us.createElement(nY,{percentage:_e==null?void 0:_e.proportionCount}),us.createElement("div",{className:"c-white",style:{marginTop:"20rem",fontSize:"14rem"}},"\u5DF2\u5173\u8054\u8D44\u6E90\u7684\u6807\u7B7E\u8282\u70B9\u5360\u6BD4"))),us.createElement("div",{style:{marginTop:"20rem"},className:sc.title},us.createElement("img",{src:ZZ}),us.createElement("span",null,"\u5B66\u4E60\u7EDF\u8BA1\u5206\u6790")),us.createElement("div",{className:sc.box},Oe.get("type")!=="classrooms"&&us.createElement("div",{className:sc.head},us.createElement("span",{style:{marginRight:"10rem",fontSize:"16rem"}},"\u7EDF\u8BA1\u8303\u56F4"),us.createElement("div",{className:sc.radio},bt.map(Ct=>us.createElement("div",{className:z.type===Ct.id?sc.active:"",key:Ct.id,onClick:()=>pt(Ct.id)},us.createElement("b",null),us.createElement("span",null,Ct.name)))),z.type===2&&us.createElement(Ba.default,{className:sc.select,options:pe,value:z==null?void 0:z.course_id,onChange:Et,placeholder:"\u8BF7\u9009\u62E9",getPopupContainer:Ct=>Ct.parentNode,style:{width:"156rem",marginLeft:"10rem"},suffixIcon:us.createElement("i",{className:"iconfont icon-a-bianzu11",style:{color:"#1B8565",fontSize:"16rem"}})})),us.createElement(ue.Z,{spinning:se},us.createElement("div",{className:sc.average},us.createElement("div",{className:sc.li},us.createElement("img",{src:YZ,style:{marginLeft:0}}),us.createElement("aside",{className:sc.yellow},us.createElement("div",{style:{fontSize:"16rem"}},"\u5E73\u5747\u5B8C\u6210\u7387"),us.createElement("div",null,us.createElement("b",{style:{fontSize:"40rem"}},Je==null?void 0:Je.averageCompletionRate),us.createElement("span",{style:{fontSize:"20rem"}},"%")))),us.createElement("div",{className:sc.li},us.createElement("img",{src:XZ}),us.createElement("aside",{className:sc.blue},us.createElement("div",{style:{fontSize:"16rem"}},"\u5E73\u5747\u638C\u63E1\u7387"),us.createElement("div",null,us.createElement("b",{style:{fontSize:"40rem"}},Je==null?void 0:Je.averageMasteryRate),us.createElement("span",{style:{fontSize:"20rem"}},"%"))))),us.createElement("div",{className:sc.lineTitle},us.createElement("b",null),us.createElement("span",null,"\u5B8C\u6210\u7387"),us.createElement("b",null)),us.createElement("div",{className:sc.echartsTwo},us.createElement(lY,{dataSource:Je==null?void 0:Je.completionRate})),us.createElement("div",{className:sc.lineTitle,style:{marginTop:"40rem"}},us.createElement("b",null),us.createElement("span",null,"\u638C\u63E1\u7387"),us.createElement("b",null)),us.createElement("div",{className:sc.echartsThree},us.createElement(gl,{dataSource:Je==null?void 0:Je.masteryRate})))))),x&&us.createElement("div",{onClick:()=>b(!1),className:sc.unfold})))))},Wc={statistics:"statistics___BZJje",noUnfold:"noUnfold___L4va9",wrapBox:"wrapBox___tHLW6",scrollBox:"scrollBox___m8AGu",content:"content____Gl9N",title:"title___SAaGy",top:"top___h1nbU",topLi:"topLi___Ib2Tu",bottom:"bottom___ZKnwW",bottomLi:"bottomLi___YAGiM",echarts:"echarts___M5Dkf",name:"name___XhFko",unfold:"unfold___I5om1",select:"select___TcV_B"},AY="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEQAAABCCAYAAADuSnCvAAAAAXNSR0IArs4c6QAAGBVJREFUeF7VW2l0Vdd13vucc+99TxODkACBABs8IcCADXbi2E5qJ24cd0hSD7XbONOK0wxOsGmbrtWuyF3JajO5SbzSDF14pYkb2+AR23EdJ3E8MQozDwbhCA1PSEKg6U33nnN2u899Dx4ggQATk/tD7613p3O+8+29v733EcIf49FIifpx+le5kASg6PAQX7dSrN7fB5uhEcMzmRKeyc3v2L2N5E+uyDWjEPU8BkQEo41FIbaiVE8YEg91LcG3Tmd8fxyANL6kxsL8iiAIx1MUVUoIlE0kn0Yhp5A1hXkjCClBCgF5TX0W5C8MRt/sW5rcdyrAnLOA1H59aCIONr/XG2i5Tgx2LoRsXx3qfDlYHYCfpPyCu3zyywSQPW6+iAKkUmCs7YzI+7feIfEDaMTjLxwGqXMOkJrG9vl+98a7ZPe2vxA6M9mNmSxQceL8GVRBePnfgRUBnxyRACgkCCHBWnpCS/2FA0vKO0/GlnMGkImNg7XqwGtfwbY1d3nCllmjAWiYyTIgZdUQXvZZsKhOCEhx8srzwRraBtK/pXMJ7jwRKOcEIBP/uflP/OZnfqjyhy4kEwENB0RxFmSAKiZBfuFdJ1vso85L5YEx0GqF/5c99+LGkW5+xwGp+/umT6vmZ78nbFR2xEGeYK4MSOUUxxCy+pRBIUu7AYIPdC7FYZ3tOwrIxHtXf9Fvfu67EqwgOyqfB2A10NgZEC74FIwKwGMgY6ZEBlf1pL33QyNmjkX0HQNk8j9t/Uiwa8UjZCJvWF8x0tpbDbb6QtCX3gnWRKfEkFKfYizev/9e795zApBJjZ2zvS0PviJNunrUzCiO3EZAE+dB1HDbaQPCYRkAtRXq2u57vVWloJx1htQ0UoWoiL4GCI903euv4ZfX37nsRdnfcj070FM+TAhmymIwF3/4tAHhd7LpEOHLnYPe9dCIh53RWQdk4nf1rT7QI1qbPEj1U+ze9Za/9affIBAAbqVO8TAh2OnXgJ71wTMCBABBSvZe6sb9S9TzxVGcXUBuJjn5ivAVFPBuY4wbAOgcyNR6EK2rAHKHAKTP9B09KiYP+vz3gz3vujMEJGaJNvB8d9q/qahkT2Ekox9z8crJ3w4vI7CrgaxXVJpsv6wgIRwC1b4aRMda933UwJg8mJk3gJnxvjMGhMdiCLNWJBb2LsVdPO6zCsik7+T/VQr8Fx0Nk5GjcLIaswdBtr0OovMNxx6Q3omHxT7kwpvA1F91xoAwAKxiCeQ/ppbIb551QCZ8I/OaRXkVm8twB68GIYIQAjDdDar1NRBdWwBMOLJ/MSHohlvB1F0G1hi3oogAvijK/JFzm+HGwGZjLTy/f6n/IQAk97yp9/ePu7K+agFK7cHJxJ/i/CE+yBiUIIHQOKYRHmGcQCjrH9JfCy2NA7DINQuW5Eh8VeF7iVMlkAgCUfW3Ee7fAKBjVh2l4hEIyICZ+i6AMdOdUuWfshGKN3thDJPOTeiohC8GiN8/7KIIxYljRz6dnNPXiH0INy+Xj953888vnwzXWwNHLWVRO3IssNaB5x5MQOjmFqdWgqdIRAIIhCVC6z5BWAuhtXwFCr7f8jWIaA0VAUIefnGwLocRjAxIh0VhselISkuGx2FZvxtAFEwwUGjh/jUm/8JbUJX0eFXIMYwfwI+IoaARQOGzQlsvsahnCW5CaEyVvfKJyS9U+DBVGxhZGPBkisxgbsX8QmuJycpLLt13QqGtlQQOBJ6YMAwa8TleQUQCdw8TpbBsJatH8W/HJ3jEiwI84UtqFYMLO7siymmApAe4crftWfaGmVAZAIoiG5CxK/UMw4MipAeGxJ92L/VewAnf6Kl89JYJz45PwDRjRzYYYqqXAsIMYUCI3CSttdISuokbBscBBI41DAgDE7MI0YJlEVICSMERFBbyaFNhfsRUMQRwRb0PtRXxjDsHNKxvi6jcR3h8Z9S7rCmqHpMUyD7JkYojWkxr4KHwc4azHPYjCPLjHfeo/8bxX+2tWvHx8c+MHpASkykBxFiSzIBRA+IGa53JHB5lgR1F51Gw/nhyRG61r5rh4bhkTNYDaQur94UxIDvC3mXr89VVSeHM0T2T31GgIT86fvzxLOFIAyDv7Vgi78dx/35wzGO3jlv5zgBSYF1x2UoBKdCkNGYwIOOSCA210vmvbfsj6s8BlHmEj++IDvxkTbp6bJlEwa6VHXYREPe9yBJ7nC9hhgCqu1NL5AOHGVKbhBkWTmQyRyIIk5GdJzOw4LNiZlgQFmMz0ew/LEnjTCs2JbLODzkf4uylJCoV/d5wkaA00rDvKDpJ54M55CrAB5uy3Q81DdaMLVfo9A2DzALQgRIDUhzusWbjQq+Qd+7/svqZ8yHfuWHsCmPtJGtgxKIEA1AInY6FNuYg+wt2kML5EAPSALBzlcaSMtYqAyRZ+bA/sYD86QBBFIcjFbJjcSuIGCtaB1YcpkvjRAGZIihuIDxvRPzVntz+zW2ZiclAoZSxGnaKGPkzBqVoNsMBYlBc17XE+y1Ovb8ted/7Ji/v6NdjIkOWB1dcJabokbAV/8pAMCGNAQFIUvMnOAAYCBVZUmTJc2AQeNqCMoYUFR0tkXSMsYjE3GagXeSJDw7ppQK6qCnc+ZIwenhciBx58K1e3bmhZWBSeUJhEQyUqgSY2J9w1D4aEJY/IpReYlH7l3ELQiP5P/8IrejL2SpjKY5SxcEV+FLUT7x4vGjWwU1oLLHecAwwZJXWVhGg0kZ7hoQyxnqWUEXGOIB4mawFvsaZD/PCOf7YC8aAoDPFYY7jf+Tr+M6EJ3BLezbV9Pu+yUHgIfdmYjCU+2SWuMgzDCDuGqQWPZiY29OIQwifIe8Xd9Njg3ksd478mNEUFWa8eizAwKk3ZorRRlg2CQB+q2eJVKRJWSLPWvKYLUZbn4iYLUoTMwkdMOAA4ajE7HBiyoHCgMRoDKcsjwYljhkAvgTc3J5NrW0+NDnw2alKTmWB9YUzm0I7YjhA4pALT3TcE3w0futnyHv4bnpsKA/lNp7rUQc6McxKFSjUhnwBXmUA5ZUBJgNhA/aTvTmb7x6ifC7i1abAgjMTz5AzHc+w2VhSbFIWhCTLvsY52BJvFxM5FmxUMKEiKHHINSUeTsV3usOXiG+0plPr9vRODgI2GWYG+w7+9BwgzoyGYYhrUaD8bOeX5Y9HBQiPMG/BVHo2Obsa62dOwEnVSSw/FriuIZvZ0GG6NnfZfkMoAch3LDHkmGOcXyHF5qUJpWVfyFUiZJkfT60gSuJMpIQp7ETLPYCpVWypcWRp6bOQNzEonkTc1JrpWLunp45NBgSzIwaEvx/2JccCEgu3/lAk5x68F9tOCohxqYDFi6tx6uI6nFnuY8COd9/BqL8nrTOZECN2rPVjVeWsCd5Ylsx7e83gC81RqmsIjJLga0ueNuTFZsPmhCzglLUojmNJHFpi02H6IIAFwsGcgfdMk/CpRWUOuL6shft+k6aIOJsTpBTi5rZ0au3uUwPE9Wos/E/X0uBvigs8oskYC7a2zI67drqcPaEcKrUlu3ZfrmNDe5g6lLU51zUQHG04RzGqrkpW3nBxZf2sCV5VOiS9cmeuc1s3pgMFDKIiaz3tgABmB+c6hVBcMB0nEmLvWvQUhhDCyMC7pwn8yJwEViVihfrsjiw9vi1PlUnfUcQB0ppOnQpDYm0iIgBx1f+n/utPCkheG3vReJr6/plqzu4efeDlvZmWrkEa8JVE6SEqodgDoxNjRst0GEmrrbp6ZrLuhovLJ/OkntuZ61rdZgaEFD4yU5xGscpYZgmLNvZ4gMTJoMvI4oBD1qLmiGYtfnSOj9fNCjAyBC/uGqSaCg9Wbs9SV1ZC4HEkEaAk4Jb2TGrN7gN17ENGYzIFdjzctdS/o2QNRnaqmlUW6YQk63cPhlkhJAW+AiUVSVbOhXDJtNeWhAm1yoahGsxEsmGiqr5lQdW0hCfE6/uiQ8/vzh8ikArBhWHpTMfpFmaLEIXsl30pFxIETx7J4p0Lk2JRvYddgxp+8HKv3bE/DwlfQTLhQ+D7zk+wB2anuqk90zlqQIRgch/SEhf33JNoLvWHI5oMr06oLWquSrmtF8p6kofsShVOdvNfZomT6sbIMLIyl8/5A9lQ1I+RY26/bEz9+DLhb+/S6Se353sHQkCOUoaBIFIs0BxATsXGsj4fWlHhE37y8qScPdHDvQdC+o+XDtqDOYLyhOciNherlYy1RRx2ETe2ZTrX7hkdQ5gdIanP9y6V/3lcVD1R2LWWs9GCKmDnJV19gWsg4ClXJkPOWYyxypLAyBipDckwCr2BTE5Werb8tgVjp54/wSs7kLbR09tzB3cdpFA43UIeRxwGxRjiyIO5yOB5Y4X62MKkVzdG4rZUjh549aDJGgFlgc81WJfaC+k03eF0XqJjyP41e3rrEicxGaEC3lDzUO8/+B8rNZWT+pBhpOJRP61upyn7+mjswkm4/4IJ2Oe0BVkuCgkGJZvP+/kwlFEYJT40p2LSVeeVj+UHbEzpzOst+XRqEEzIStcSm5KsLVdq8RTpXzMz8KRA+N2etHmoqU8blJj0fOQNMKwtXGg8LE+cpOOFwk3t2e6TmYzyAtCWfhPq4KOHvoL9w83xpMLs2Js4++jJQuI7q/Q1nIxNqYD+LyyWTVwyZMb0ZW3ikR10cX/O+tdPs+1Ty3OZgUzea6j1x94wu6JmyhhXfIDetDUHc1wKJBybEKKmwjlYOJjW9MTmgeiVtzIm4XvgFcCI/W0xuT5KsbIPgY1tmQNrdvdOGcmpqqCM1eVvh0Ti5oF78OBIC35SQIryuPgAXyK1D1Dy++v01Vwqq0niwBcWyfUWAT200NRJNY/uoLlcGG2otj1/fqFtGUyHQSanJaL150yUYy6fVlFZP04GSc8lGJSNLLX3RWZDa1qvbclFA3nAsjIffClRKC4XssdyLsYNg9MLRj/WKkS+QNzYke19bdeBqceZjPRBJSq4/PhkaIJPjMSMUZmMkmjzESlPgnbVMHCqkDqGIPn9NdFhQD5/hVzHOSTL0KZOmrBip7mUBzy3Frs/fBHszeSiIIyMyoZaZcJIkjEqochL+kpZY+VgaCGbJ4wsiERCoZIeCimE4FDMuUOh8sdlzGLVq6BsXUbvSwFNrem+13cfqi8FRAQVnNhl0Qu+3jXY/C1obAhdb+CI1DmOKCMyhMH45R49840U1M0cj723NIidnJkOC8giuZbjmIdI61O29rEiIBOw668aoDkTks/ZbaS10saqvLZSR5GKuMZqXEGa/aIQ7AxAChRxqYsPy1PiyjUSJ1poCn6+YDyuQBF4itbtS/e/uqt3hgPES4L0AhAy+J1V6qs9S5OvQONLCrb3EKy4mR85YvNmWED4ZaEF/NYqc3U2ogRvA136LvXa+DLMcZhJMUNKTObzi+RazrgDiXZth61dvsPMjxki9t/SALtzGjzWHOCKzEYYa2UuYhlvlTWF+gi5HicnK8WitGttsNLoyaPqGBD+5AobVScsq5RCqY67PESBQFjXls282jw0I5AE5JevEcJflovkyqGhdBoqeNCpCA69Zc8AEMRvrzLvyWmblIj6S1fK16tPAEicZAE1dULN8u16AbN93kTReVsDvZkNgckjerMi8eu9pl5JoGunU1dSAnGFnnWJRMCcJuVxOlAoR/J0DSIu36Vqe7PgVfmob78k6mG2uDIFSzmBFAgSa1vzqVeaM9uU570oyGxA8gbABwojPz8A6dxZA4TZ03GMU/3iFWoN27evwK5PUe3y7aYEENyZi4znKaRnd+P0V9vsdJ7MTRdAy6JJcDDU5HE0Xd8B1as6sHZCGYQ3nm/2B5wvs1AzIB7arqaExiophPnri8P9ZQrjMkWsy8AXEGxM6Ydf3NT+Q1leEQD4YCVmPS2yIfq5Pzwgi+Ua7g4pQbYpRTWPbjcLY4Zg6tYGsSPS4PnK0lM77flrUzCN88IbZsqWd9WZ7rwFxUx4aKuY2TFEVZzQ3XaJaZlaCTl25FlN8ufb5LTQsj8H87EG05rkNCpunbpqUiAxaGoPV7y4ufNnJAMp/ET4zgJyhQMEPGSG2NpSQG5rENtDA8oXlp7ZDeevardc3YcbZ8q9V06x3XkDLIDhZ1vgwo4hGsM1z9tm2+b6KsiyCs4bFD/dDDPzBj0lUN85175Vpkq2LyNSQkKwti164lebOh46RwBRa5jgvsRjABEdt88R2/OGVCCsffpNO2tVu2t3wI2zRPNV9dDpAAGABzfTJalBGstVsdvn4q4ZlTbLOU7OoFi2CS/KGfI9idEn59k9SXWkssdyxFcQrG+LnvrlGx0PnzOAsG4KBJi1Kap9dJu+zJlMLXbcPk9ujQx4PpJ98k07c3W7PZ8B+eBM3PPeGbIjG1nFruDBTdDQMUTjGJA75+H26WMgrQFFPrTyJ29AQ9aA7wmIPr0AdpZzK9YV6mPp7jNDWvLPPNeUWk6eL955k2EfIjEGpN3WPrrDOEDm1mLHHfPEVjaZQKJ5cqe5oAjIhy6Qb14zDTtihlhatonmtg3QeAbk4/Nwy4xxOORyIgPixxtoXk5DwIB89nK5pUzxv0AcaTUHEhOv78s989y6lsfJKz97gHxrlb46r2MdsuRK9RqH3TjKQPJ7a6NrpACoLsPBLy2Wq9nbJxQyQyY+sk0vZIk1twZTd1wqtkQaZKDQPL7TXLSm3Z7nGDJLvvne6dgW8tYzBPrxG2Z+apDGc2Hok/PlpvPG4aDWVuQtiAfW2YWhgUAJjD53GWysSCAr58JB4EkRrPp95pfPrmt94qwA4iIagn1wo1mwq5cmTqrA/rsXyXWyEOayGuQD6/QVB7JQMX+SaP/beWIbN6wUArUOQOWPNphFWQ3qzy4Quz4wU7RkI1IMyKo2W7dip5nLHa5PXCo2XlyDByMLUgmwT+3UF6zqgOkVCsLPLRYbxgYitNw3+/9tnMs20ZyWPhpfX4X9n5oPW4Vr5xzZ95HwZPDq3vTzK9e1PnXWAOFKXl6D7ByyFTVlMlPhU+TalzFYNBCCfzALyckVMOjHxfBYGiBQdwbKchrU1EocLO51KTSkqGOQKvmaSeWQdk00y3V3BK2NaB+EiqqECCckuWTh2nlce6dsCKorQ2U1ZZSr8MThcbh2bdyXSbzy+/T/rlzT+vRZA6SQPAFv5eR+bBGMIlGVa8ATcUvz2MSAJywEkjbEeQmU9gP5PgZHs+AoaUy5Jg1fyo10E+89OdILJ2D2sWbn80VbKZ4PJCRe3pt54emmlmdIlOPb7lRHqhWc7u/FZlcpMAyK27YQb9eK0/rCDN0WLjYJV7E7+eZe38Pg5eahF59uan17AFl+Nz3Rn4fkcJ270wXhVO7jCpkDplCeLL33qM5qYUNQfPGRnXUJHxOv7c38+vHVLSvZZKQM8sYXOZbuUcLL9ucz+dHnMjeT/NFX4L8qPJqtCdzWv9L3uhLy23AM1zMuPpaVKm+Xciwh3o94pJRb+uriNfwb31M8Egr8xzYNPPLC5v0vgR8IwYCAyHmeyEbCy50aIAAw6/s0df5kWMytRVLcATAKwEjUbgeyArDxdilutx27yeVtAOtMHsGmF1rKrW8d2prL6BClMpJEqAOR00ZkPfByfZANR8+Q40eD8MU9/rgp1Ykwp5NeNBRYJN8LjWsbEOiTG/WZzPA07yWZkCA9EiC19mUotcpH6OW8RJQ/1JUOId2loe5ZA41fdZsYRnrN0XsOGhsFwJ3+eKryI/R8X4WBJu1bIz1fRpLCAiDSe1vM6DTnPuxtXERBn2wESiNY7WmZzwdBPpD58EB2KAJo0QAv21MHpPcOD6ZVqrHpwNOQ9wOlPAOhIs3/JQxIZoQtwW/n7E7jWa6FDrwvyVrusedFEKpQR33l+QhaBzVUt5vTAyR1k4TyiapmTCDDwPdsXkjrCZmErIAQkLxzExDGEJFsFqwVUdJIMNqDSPdwjpjqNUfKh+7KUZoMK4HG30mAWgH9VRLqPDF+yJP8T/Xcgy0uHPnnFigYxsEZAyLMu+2O9mBFZCCdNQAZC9BtS9jhgtnofIgD5D4EuFY4UHp9hGqF0K8QxkiE8oJgOA1K/0FuSRcUXr8h0DkL+X4LdYN0BIwTs8OdPXqghf1dDMr22QgNNfH5VCVCXXK4TV9/kHme0ktS2Xj1GQhuOzTsoNiRHp7uCQPCsZMs9MMKQ3BsKRwM0B/DwQAUj8NAjA6MYRhy0hmfy6C8LVLg/wD5mj8kI0DCbQAAAABJRU5ErkJggg==",gY="data:image/png;base64,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",vY="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAAsCAYAAAA5KtvpAAAAAXNSR0IArs4c6QAABFJJREFUaEPtml9MW1Ucxz+nlxbaUkYvYjdENG7RiEg6jNGQ+aIx08SE6IvZxGS+qGGPPjnj2+J8MIuJMVk00Zgg0zc1Rpm+Gf+M+GdkZKhT4gyMjnWllJWWtrf3mNPLHJcWaBmlXcMvaV96fufez/n+fuf8zjkV/a8ZBzB5R4JO7VpICHlo8A3nt6L/VWNSIttrl9UiEzAyeMz5sOg/khmTkq7aBxbfDB6r2y8OHZFBjzf7rt5Mb61ChyOcWkxrhz86KiaEggxF5Aum5INaBRaCJ9taxPBSaG8D15zQVaVwnQaao/QxlhLSxnU/1Y+RLdxP1QA7BAT8IHIzSekWjUMyBS1NUO+EuTgkUvn9lB84mwVNK4pA921c4bkFS1V/IzS4QA3AYroCwM2nBpnf14fp9RUFvRmNVLSYskIh3XryOMJIc+WZw1sKvdrAlT2kFbAzPEVGDxB5eqDi0EUDzyetSWC1UFk+oq74LPqFURrD/9AUOo8jm8n9nNwR4M/HBzDc5Q1vhwO8LvC5N5jDV5MQXVg/u1wLUe789TP8F88hpFnQIdkUYPyxATJlhlYPb/WBu97+GkUpHJ6HZIEZb3lX/qkx9vw0hJYpsBasQE807+LsE6+AkqKM1tgAeuMGgC/HYNGKyoKmFL37uw9XVXW5k3Ro/NX7PLMd3WVEtbr21kPLiuwpSuG1gLVUguCXb+JMxdcF2ErYsgHfNfIpt06M5GANl4doWyfzgT25HM3U+9h9eghP7BKbBauKi08+t9eNDg0O9uUXN5uusGdumu6v3iLT4ONCTx+RjmBeXt7/9XE8sdCmhbECPjG4rHAG6jTBy/1bANx+dhjPXIiJh54lW+8pGNJdw28z3floSTkbnoVozF4qteoC/w4wDDjxcYWAO377gsngU8g1ZltP9CIJ/23r5vfyBj/8YnLmnH1Z631Ao6dL5OrlyihsmjiyBqbTVRKMamxm4cy4XUG1LQzeZ22V1gSupMIlky45pDPw3pA9LJ11gpees/KwOhVeh/bvfyVTIbuKu+8Q3L5LcEPA1arw9z+bjI7b83DfgxrBzhsErlgOAwsJu8xqH+peKtjLBlwphVNpeP+kPQ9dTsGLB608LBtwpRTeBga2Fa6lSaumQ3r2KsRX7OtvBuAmNzR7N3AAkMnCzJz9PKvagVWpurM5/5y7qAMANUZZE1KZ69DqfH30D3slpfYQe++16uHJS3A5Yv+9PSAI3GL1Nfr7Cl8Bezst36kZmLlS2Nc08+vw3HOXfJW/ur1wu0DVBSutaOCN1s3V5rcNvNaFuAoVV121aZb/PmpzsspNiwr34i/Er93MVTtyYhHU5VohKwnY2wDqU82m7orjydXP0UsCrmbQYt8tD3g6IvdLSe5PH7VomoPunboYyy1f6ktK2TAdYRS4p+aABT+26TwihMidTPy/TM/EZcBY5HUEPUJyE8zL60gjSEk47RYc1XURu9b6P7vslVpOgNBqAAAAAElFTkSuQmCC",mY=De.p+"static/a.d3f19668.png",pY=De.p+"static/b.ba7414bd.png",yY=De.p+"static/c.2b6f6bd3.png",EY=De.p+"static/d.f1216ccd.png",Av={cylinder:"cylinder___rUBlO",cylinderBox:"cylinderBox___NurwX",cylinder1:"cylinder1___LPJD0",item1:"item1___ekrFi",item2:"item2___PuVOv",item3:"item3___x9UjL",point:"point___ZJ1ZD",cylinder2:"cylinder2___aQBbC",cylinder3:"cylinder3___lefpl",textBox:"textBox____wuhT"},xY=Object.defineProperty,wY=Object.defineProperties,bY=Object.getOwnPropertyDescriptors,aO=Object.getOwnPropertySymbols,SY=Object.prototype.hasOwnProperty,CY=Object.prototype.propertyIsEnumerable,iO=(E,a,y)=>a in E?xY(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,oO=(E,a)=>{for(var y in a||(a={}))SY.call(a,y)&&iO(E,y,a[y]);if(aO)for(var y of aO(a))CY.call(a,y)&&iO(E,y,a[y]);return E},sO=(E,a)=>wY(E,bY(a)),PY=({dataSource:E=[]})=>{const[a,y]=(0,Ne.useState)([]),[x,b]=(0,Ne.useState)(0),z=(0,Ne.useRef)(String(Math.random()).slice(-6));console.log(E,a,223),(0,Ne.useEffect)(()=>{if(E!=null&&E.length){const se=ae(E),fe=E.map((pe,be)=>sO(oO({value:pe,lineWidth:30,cylinderWidth:40+se[be]},re[be]),{from:re[be].from+z.current,to:re[be].to+z.current}));y(fe),b(x+1)}},[JSON.stringify(E)]),(0,Ne.useEffect)(()=>{x>0&&te()},[x]),(0,Ne.useEffect)(()=>(window.addEventListener("resize",te),()=>{window.removeEventListener("resize",te)}),[x]);const te=()=>{const se=a.map((fe,pe)=>{const{from:be,to:Oe}=fe,_e=document.querySelector(`#${be}`),je=document.querySelector(`#${Oe}`),ze=_e.getBoundingClientRect(),Je=je.getBoundingClientRect(),qe=Math.abs(Je.left-ze.left);return sO(oO({},fe),{lineWidth:qe})});y(se)},re=[{title:"\u90E8\u5206\u638C\u63E1  ",from:"lineStart1",to:"lineEnd1"},{title:"\u5168\u90E8\u638C\u63E1  ",from:"lineStart2",to:"lineEnd2"},{title:"\u672A  \u638C  \u63E1  ",from:"lineStart3",to:"lineEnd3"}];function ae(se){const fe=se.reduce((pe,be)=>pe+be,0);return se.map(pe=>pe/fe*122)}return Ne.createElement("div",{className:Av.cylinder},Ne.createElement("div",{className:Av.cylinderBox},a.map((se,fe)=>{const{cylinderWidth:pe,lineWidth:be,from:Oe}=se,_e=fe+1;return Ne.createElement("div",{key:_e,className:Av[`cylinder${_e}`],style:{width:pe+"rem"}},Ne.createElement("div",{className:Av.item1}),Ne.createElement("div",{className:Av.item2}),Ne.createElement("div",{className:Av.item3}),Ne.createElement("div",{id:Oe,style:{width:be},className:Av.point}))})),Ne.createElement("div",{className:Av.textBox},a.map((se,fe)=>{const{title:pe,to:be,value:Oe}=se,_e=fe+1;return Ne.createElement("div",{key:_e,id:be},Ne.createElement("span",{dangerouslySetInnerHTML:{__html:`${pe}${Oe}%`}}))})))},Ls=De(59301),BY=Object.defineProperty,lO=Object.getOwnPropertySymbols,IY=Object.prototype.hasOwnProperty,DY=Object.prototype.propertyIsEnumerable,uO=(E,a,y)=>a in E?BY(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,cO=(E,a)=>{for(var y in a||(a={}))IY.call(a,y)&&uO(E,y,a[y]);if(lO)for(var y of lO(a))DY.call(a,y)&&uO(E,y,a[y]);return E},MY=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(se){b(se)}},te=ae=>{try{re(y.throw(ae))}catch(se){b(se)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,te);re((y=y.apply(E,a)).next())}),LY=({subjectId:E,uuid:a,isAll:y})=>{const[x,b]=(0,Ne.useState)(!1),[z,te]=(0,Ne.useState)({course_id:null}),[re,ae]=(0,Ne.useState)(!0),[se,fe]=(0,Ne.useState)(!0),[pe,be]=(0,Ne.useState)([]),[Oe]=(0,Ce.useSearchParams)(),[_e,je]=(0,Ne.useState)({graphCount:0,tagCount:0,resourceCount:0,proportionCount:0}),ze=[{name:"\u5DF2\u5B8C\u6210",value:0,itemStyle:{color:"rgb(223,209,38)"}},{name:"\u5F85\u5F00\u59CB",value:0,itemStyle:{color:"rgb(6,234,230)"}},{name:"\u90E8\u5206\u5B8C\u6210",value:0,itemStyle:{color:"rgb(6,110,247)"}}],[Je,qe]=(0,Ne.useState)({averageCompletionRate:0,averageMasteryRate:0,completionRate:ze,masteryRate:[0,0,0],course_rank_num:0,course_rank_all_num:0,system_rank_num:0,system_rank_all_num:0});(0,Ne.useEffect)(()=>{x?ot(z):te({course_id:null})},[x]),(0,Ne.useEffect)(()=>{x&&b(!1)},[a]);const ot=(Et,bt=!1)=>MY(void 0,null,function*(){var Ct,St,Zt,sn,gn,Dn,or,Vn,Dr,sa,vr,mr,Ir,ca,pr;bt?fe(!0):ae(!0);const Ca=yield(0,ee.ZP)(y?"/api/knowledge/v2/subject_statistics.json":"/api/knowledge/v2/knowledge_statistics.json",{method:"get",params:cO({subject_id:E,parentNodeUuid:a,labels:"\u56FE\u8C31,\u6807\u7B7E,\u8D44\u6E90",depth:-1},Et)});if((Ca==null?void 0:Ca.status)===0){let Fi=(Ct=Ca==null?void 0:Ca.data)==null?void 0:Ct.metricCounters;Fi=Fi||[];const Ti={graphCount:((St=Fi.find(Hi=>(Hi==null?void 0:Hi.name)==="\u56FE\u8C31"))==null?void 0:St.count)||0,tagCount:((Zt=Fi.find(Hi=>(Hi==null?void 0:Hi.name)==="\u6807\u7B7E"))==null?void 0:Zt.count)||0,resourceCount:((sn=Fi.find(Hi=>(Hi==null?void 0:Hi.name)==="\u8D44\u6E90"))==null?void 0:sn.count)||0,proportionCount:(gn=Ca==null?void 0:Ca.data)==null?void 0:gn.resource_rate};let di=Object.entries((Dn=Ca==null?void 0:Ca.data)==null?void 0:Dn.study_complete_hash).map(([Hi,ho],Mo)=>({name:ze[Mo].name,value:ho,itemStyle:ze[Mo].itemStyle}));const Ha={averageCompletionRate:(or=Ca==null?void 0:Ca.data)==null?void 0:or.study_complete_rate,averageMasteryRate:(Vn=Ca==null?void 0:Ca.data)==null?void 0:Vn.study_grasp_rate,completionRate:di,masteryRate:Object.values((Dr=Ca==null?void 0:Ca.data)==null?void 0:Dr.study_grasp_hash),course_rank_num:(sa=Ca==null?void 0:Ca.data)==null?void 0:sa.course_rank_num,course_rank_all_num:(vr=Ca==null?void 0:Ca.data)==null?void 0:vr.course_rank_all_num,system_rank_num:(mr=Ca==null?void 0:Ca.data)==null?void 0:mr.system_rank_num,system_rank_all_num:(Ir=Ca==null?void 0:Ca.data)==null?void 0:Ir.system_rank_all_num},Ii=(ca=Ca==null?void 0:Ca.courses)==null?void 0:ca.map(Hi=>({label:Hi.name,value:Hi.id}));be(Ii),je(Ti),qe(Ha),bt||te({course_id:((pr=Ii==null?void 0:Ii[0])==null?void 0:pr.value)||null})}setTimeout(()=>{ae(!1)},500),fe(!1)}),pt=Et=>{z.course_id=Et,te(cO({},z)),ot(z,!0)};return Ls.createElement(yn,null,Ls.createElement("div",{className:Wc.statistics},Ls.createElement("div",{onClick:()=>b(!0),className:Wc.noUnfold},Ls.createElement("img",{style:{width:"32rem",marginBottom:"4rem"},src:AY}),Ls.createElement("span",null,"\u7EDF"),Ls.createElement("span",null,"\u8BA1")),Ls.createElement("div",{className:Wc.wrapBox,style:{right:x?0:"-600rem"}},re&&Ls.createElement(ue.Z,{style:{width:"100%",marginTop:"200rem"},spinning:!0}),!re&&Ls.createElement(Ls.Fragment,null,Ls.createElement("div",{className:Wc.scrollBox},Ls.createElement("div",{className:Wc.content},Ls.createElement("div",{className:Wc.title},Ls.createElement("img",{src:gY}),Ls.createElement("span",null,"\u56FE\u8C31\u7EDF\u8BA1\u5206\u6790")),Ls.createElement("div",{className:Wc.top},Ls.createElement("div",{className:Wc.topLi},Ls.createElement("div",null,_e==null?void 0:_e.graphCount),Ls.createElement("div",null,"\u77E5\u8BC6\u56FE\u8C31\u6570\u91CF")),Ls.createElement("div",{className:Wc.topLi},Ls.createElement("div",null,_e==null?void 0:_e.tagCount),Ls.createElement("div",null,"\u6807\u7B7E\u8282\u70B9\u6570\u91CF")),Ls.createElement("div",{className:Wc.topLi},Ls.createElement("div",null,_e==null?void 0:_e.resourceCount),Ls.createElement("div",null,"\u8D44\u6E90\u8282\u70B9\u6570\u91CF"))),Ls.createElement("div",{style:{marginTop:"20rem"},className:Wc.title},Ls.createElement("img",{src:vY}),Ls.createElement("span",null,"\u5B66\u4E60\u7EDF\u8BA1\u5206\u6790")),Ls.createElement(ue.Z,{spinning:se},Ls.createElement("div",{className:Wc.bottom},Ls.createElement("div",{className:Wc.bottomLi,style:{marginTop:"82rem",marginRight:"26rem"}},Oe.get("type")!=="classrooms"&&Ls.createElement(Ba.default,{className:Wc.select,options:pe,value:z==null?void 0:z.course_id,size:"small",onChange:pt,placeholder:"\u8BF7\u9009\u62E9",getPopupContainer:Et=>Et.parentNode,style:{width:"222rem"},suffixIcon:Ls.createElement("i",{className:"iconfont icon-a-bianzu11",style:{color:"#fff",fontSize:"12rem"}})}),Ls.createElement("b",{style:{fontSize:"26rem",marginTop:"5rem"}},Je==null?void 0:Je.course_rank_num),Ls.createElement("div",{style:{fontSize:"16rem",marginTop:"4rem"}},"\u8BFE\u5802\u6392\u540D"),Ls.createElement("div",{style:{fontSize:"16rem",marginTop:"4rem"}},"\uFF08\u5171",Je==null?void 0:Je.course_rank_all_num,"\u4EBA\uFF09"),Ls.createElement("img",{src:mY})),Ls.createElement("div",{className:Wc.bottomLi,style:{marginTop:"82rem"}},Ls.createElement("b",{style:{fontSize:"26rem",marginTop:"30rem"}},Je==null?void 0:Je.system_rank_num),Ls.createElement("div",{style:{fontSize:"16rem",marginTop:"4rem"}},"\u7CFB\u7EDF\u6392\u540D"),Ls.createElement("div",{style:{fontSize:"16rem",marginTop:"4rem"}},"\uFF08\u5171",Je==null?void 0:Je.system_rank_all_num,"\u4EBA\uFF09"),Ls.createElement("img",{src:pY})),Ls.createElement("div",{className:Wc.bottomLi,style:{marginTop:"104rem",marginRight:"26rem"}},Ls.createElement("b",{style:{fontSize:"26rem",marginTop:"30rem"}},Je==null?void 0:Je.averageCompletionRate,"%"),Ls.createElement("div",{style:{fontSize:"14rem",marginTop:"2rem"}},"\u5E73\u5747\u5B8C\u6210\u7387"),Ls.createElement("img",{src:yY})),Ls.createElement("div",{className:Wc.bottomLi,style:{marginTop:"104rem"}},Ls.createElement("b",{style:{fontSize:"26rem",marginTop:"30rem"}},Je==null?void 0:Je.averageMasteryRate,"%"),Ls.createElement("div",{style:{fontSize:"14rem",marginTop:"2rem"}},"\u5E73\u5747\u638C\u63E1\u7387"),Ls.createElement("img",{src:EY})),Ls.createElement("div",{className:Wc.echarts},Ls.createElement("div",{className:Wc.name},"\u5B8C\u6210\u60C5\u51B5"),Ls.createElement(gl,{dataSource:Je==null?void 0:Je.completionRate})),Ls.createElement("div",{className:Wc.echarts},Ls.createElement("div",{className:Wc.name},"\u638C\u63E1\u60C5\u51B5"),Ls.createElement(PY,{dataSource:Je==null?void 0:Je.masteryRate})))))),x&&Ls.createElement("div",{onClick:()=>b(!1),className:Wc.unfold})))))},xp=De(59301),OY=Object.defineProperty,Sx=Object.getOwnPropertySymbols,dO=Object.prototype.hasOwnProperty,fO=Object.prototype.propertyIsEnumerable,hO=(E,a,y)=>a in E?OY(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,Cx=(E,a)=>{for(var y in a||(a={}))dO.call(a,y)&&hO(E,y,a[y]);if(Sx)for(var y of Sx(a))fO.call(a,y)&&hO(E,y,a[y]);return E},TY=(E,a)=>{var y={};for(var x in E)dO.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&Sx)for(var x of Sx(E))a.indexOf(x)<0&&fO.call(E,x)&&(y[x]=E[x]);return y},AO=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(se){b(se)}},te=ae=>{try{re(y.throw(ae))}catch(se){b(se)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,te);re((y=y.apply(E,a)).next())});const FY=E=>{var a=E,{pathsDetail:y,user:x,globalSetting:b,loading:z,dispatch:te,tpacti:re,settupuname:ae,settpacti:se}=a,fe=TY(a,["pathsDetail","user","globalSetting","loading","dispatch","tpacti","settupuname","settpacti"]),pe,be,Oe,_e,je,ze,Je,qe,ot;const pt=(0,Ce.useParams)(),[Et,bt]=(0,Ne.useState)(""),[Ct,St]=(0,Ne.useState)([]),[Zt]=(0,Ce.useSearchParams)(),[sn,gn]=(0,Ne.useState)([]),[Dn,or]=(0,Ne.useState)(1);(0,Ne.useEffect)(()=>{var sa,vr,mr,Ir,ca,pr;if((sa=y==null?void 0:y.detail)!=null&&sa.nodes&&Dn===1){St((vr=y==null?void 0:y.detail)==null?void 0:vr.nodes),bt((ca=(Ir=(mr=y==null?void 0:y.detail)==null?void 0:mr.nodes)==null?void 0:Ir[1])==null?void 0:ca.uuid);let Ca=[...(pr=y==null?void 0:y.detail)==null?void 0:pr.nodes];gn(Ca==null?void 0:Ca.splice(1)),or(2)}},[(pe=y==null?void 0:y.detail)==null?void 0:pe.nodes]),(0,Ne.useEffect)(()=>{var sa,vr,mr;bt(re||((mr=(vr=(sa=y==null?void 0:y.detail)==null?void 0:sa.nodes)==null?void 0:vr[1])==null?void 0:mr.uuid))},[re]);function Vn(){return AO(this,null,function*(){var sa,vr,mr,Ir,ca,pr,Ca,Fi;if(Zt.get("type")==="classrooms"){let Ti=yield te({type:"pathsDetail/getCourseDetail",payload:Cx({id:pt.pathId,knowledge:!0},(0,Bt.oP)())});St(Ti==null?void 0:Ti.nodes),bt((vr=(sa=Ti==null?void 0:Ti.nodes)==null?void 0:sa[1])==null?void 0:vr.uuid),se((Ir=(mr=Ti==null?void 0:Ti.nodes)==null?void 0:mr[1])==null?void 0:Ir.uuid);let di=[...Ti==null?void 0:Ti.nodes];gn(di==null?void 0:di.splice(1))}else{let Ti=yield te({type:"pathsDetail/getPathsDetail",payload:Cx({id:pt.pathId,knowledge:!0},(0,Bt.oP)())});St(Ti==null?void 0:Ti.nodes),bt((pr=(ca=Ti==null?void 0:Ti.nodes)==null?void 0:ca[1])==null?void 0:pr.uuid),se((Fi=(Ca=Ti==null?void 0:Ti.nodes)==null?void 0:Ca[1])==null?void 0:Fi.uuid);let di=[...Ti==null?void 0:Ti.nodes];gn(di==null?void 0:di.splice(1))}})}function Dr(){return AO(this,null,function*(){var sa,vr,mr,Ir,ca,pr,Ca,Fi,Ti,di,Ha,Ii,Hi,ho;if(Zt.get("type")==="classrooms"){let Mo=yield te({type:"pathsDetail/getCourseDetail",payload:Cx({id:(sa=y==null?void 0:y.detail)==null?void 0:sa.id,knowledge:!0},(0,Bt.oP)())});bt((mr=(vr=Mo==null?void 0:Mo.nodes)==null?void 0:vr[1])==null?void 0:mr.uuid),se((ca=(Ir=Mo==null?void 0:Mo.nodes)==null?void 0:Ir[1])==null?void 0:ca.uuid),ae(((Ca=(pr=Mo==null?void 0:Mo.nodes)==null?void 0:pr[1])==null?void 0:Ca.name)||"\u8BFE\u7A0B\u56FE\u8C31")}else{let Mo=yield te({type:"pathsDetail/getPathsDetail",payload:Cx({id:(Fi=y==null?void 0:y.detail)==null?void 0:Fi.id,knowledge:!0},(0,Bt.oP)())});bt((di=(Ti=Mo==null?void 0:Mo.nodes)==null?void 0:Ti[1])==null?void 0:di.uuid),se((Ii=(Ha=Mo==null?void 0:Mo.nodes)==null?void 0:Ha[1])==null?void 0:Ii.uuid),ae(((ho=(Hi=Mo==null?void 0:Mo.nodes)==null?void 0:Hi[1])==null?void 0:ho.name)||"\u8BFE\u7A0B\u56FE\u8C31")}})}return xp.createElement("div",{style:{height:"calc(100vh - 72px - 170rem)"}},(Ct==null?void 0:Ct.length)>0&&xp.createElement("div",{className:qr.content},((be=Ct==null?void 0:Ct[0])==null?void 0:be.uuid)===Et&&Et&&xp.createElement(GZ,{onAddSuccess:Dr,setActivated:bt,subjectId:(Oe=y==null?void 0:y.detail)==null?void 0:Oe.id}),((_e=Ct==null?void 0:Ct[0])==null?void 0:_e.uuid)!==Et&&Et&&xp.createElement(EZ,{tpacti:re,setactivied:()=>{var sa;bt((sa=Ct==null?void 0:Ct[0])==null?void 0:sa.uuid)},initdata:Dr,Tabsdatas:sn,uuid:Et})),(je=y==null?void 0:y.detail)!=null&&je.can_managed?xp.createElement(hY,{isAll:((ze=Ct==null?void 0:Ct[0])==null?void 0:ze.uuid)===Et,subjectId:(Je=y==null?void 0:y.detail)==null?void 0:Je.id,uuid:Et}):xp.createElement(LY,{isAll:((qe=Ct==null?void 0:Ct[0])==null?void 0:qe.uuid)===Et,subjectId:(ot=y==null?void 0:y.detail)==null?void 0:ot.id,uuid:Et}))};var NY=(0,Ce.connect)(({pathsDetail:E,user:a,loading:y,globalSetting:x})=>({pathsDetail:E,user:a,globalSetting:x,loading:y.models.index}))(FY),Dl=De(59301),RY=Object.defineProperty,Px=Object.getOwnPropertySymbols,gO=Object.prototype.hasOwnProperty,vO=Object.prototype.propertyIsEnumerable,mO=(E,a,y)=>a in E?RY(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,pO=(E,a)=>{for(var y in a||(a={}))gO.call(a,y)&&mO(E,y,a[y]);if(Px)for(var y of Px(a))vO.call(a,y)&&mO(E,y,a[y]);return E},_Y=(E,a)=>{var y={};for(var x in E)gO.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&Px)for(var x of Px(E))a.indexOf(x)<0&&vO.call(E,x)&&(y[x]=E[x]);return y},yO=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(se){b(se)}},te=ae=>{try{re(y.throw(ae))}catch(se){b(se)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,te);re((y=y.apply(E,a)).next())});const kY=E=>{var a=E,{pathsDetail:y,user:x,globalSetting:b,loading:z,dispatch:te,activied:re,setactivied:ae}=a,se=_Y(a,["pathsDetail","user","globalSetting","loading","dispatch","activied","setactivied"]),fe,pe,be,Oe,_e,je,ze,Je,qe,ot,pt,Et,bt,Ct;const St=(0,Ce.useParams)(),[Zt]=(0,Ce.useSearchParams)(),[sn,gn]=(0,Ne.useState)(((be=(pe=(fe=y==null?void 0:y.detail)==null?void 0:fe.nodes)==null?void 0:pe[0])==null?void 0:be.name)||"\u8BFE\u7A0B\u56FE\u8C31"),[Dn,or]=(0,Ne.useState)(((je=(_e=(Oe=y==null?void 0:y.detail)==null?void 0:Oe.route_nodes)==null?void 0:_e[0])==null?void 0:je.name)||"\u5B66\u4E60\u8DEF\u5F84"),[Vn,Dr]=(0,Ne.useState)([]),[sa,vr]=(0,Ne.useState)(),[mr,Ir]=(0,Ne.useState)(),[ca]=me.default.useForm(),[pr,Ca]=(0,Ne.useState)(!1),[Fi,Ti]=(0,Ne.useState)(!1),di=[{name:"\u8BFE\u7A0B\u4FE1\u606F",key:1,content:Dl.createElement(rn,null),isshow:Zt.get("type")!=="classrooms"},{name:"\u8BFE\u7A0B\u56FE\u8C31",key:3,content:((Je=(ze=y==null?void 0:y.detail)==null?void 0:ze.nodes)==null?void 0:Je.length)<=1?Dl.createElement(da,{text:"\u6682\u65E0\u56FE\u8C31\uFF0C\u7ACB\u5373\u65B0\u5EFA\u4E00\u4E2A\u56FE\u8C31\u5427\uFF5E",textColor:"#fff",buttonText:((qe=y==null?void 0:y.detail)==null?void 0:qe.can_managed)&&"\u65B0\u5EFA\u56FE\u8C31",buttonTexttow:((ot=y==null?void 0:y.detail)==null?void 0:ot.can_managed)&&Zt.get("type")!=="classrooms"&&"\u751F\u6210\u56FE\u8C31",ontwoClick:()=>yO(void 0,null,function*(){var Ii;let Hi=yield(0,ee.ZP)("/api/knowledge/v2/sync.json",{method:"post",body:{subject_id:(Ii=y==null?void 0:y.detail)==null?void 0:Ii.id}});Hi.status===0&&ke.ZP.info(Hi==null?void 0:Hi.message)}),onClick:()=>Ti(!0)}):Dl.createElement(NY,{settupuname:gn,settpacti:vr,tpacti:sa}),isshow:!0},{name:"\u5B66\u4E60\u8DEF\u5F84",key:2,content:Dl.createElement(ci,{setxxljac:Ir,dispatch:te,xxljac:mr,pathsDetail:y}),isshow:!0},{name:"\u4EA4\u6D41\u53CD\u9988",key:4,content:Dl.createElement(Me,null),isshow:Zt.get("type")!=="classrooms"}].filter(Ii=>Ii==null?void 0:Ii.isshow);(0,Ne.useEffect)(()=>{var Ii,Hi;if((Ii=y==null?void 0:y.detail)!=null&&Ii.nodes){let ho=[...(Hi=y==null?void 0:y.detail)==null?void 0:Hi.nodes];Dr(ho==null?void 0:ho.splice(1))}},[(pt=y==null?void 0:y.detail)==null?void 0:pt.nodes]);const Ha=Ii=>yO(void 0,null,function*(){var Hi,ho,Mo,zs,As,Bo,ds,$o,fs,Is;const{nodeType:El,description:cl,name:Oo,tags:Zo}=Ii;Ca(!0);const $i=yield(0,ee.ZP)("/api/knowledge/v2/add_node.json",{method:"POST",body:{label:"\u56FE\u8C31",subject_id:(Hi=y==null?void 0:y.detail)==null?void 0:Hi.id,properties:{description:cl,rootNodeUuid:(zs=(Mo=(ho=y==null?void 0:y.detail)==null?void 0:ho.nodes)==null?void 0:Mo[0])==null?void 0:zs.uuid,name:Oo,nodeType:El[0],tags:(Zo==null?void 0:Zo.join("\uFF0C"))||"",color:"1"},relationships:[{startNodeUuid:(ds=(Bo=(As=y==null?void 0:y.detail)==null?void 0:As.nodes)==null?void 0:Bo[0])==null?void 0:ds.uuid,type:"\u5305\u542B"}]}});($i==null?void 0:$i.status)===0&&(Ti(!1),vr(($o=$i==null?void 0:$i.data)==null?void 0:$o.uuid),gn(Oo),ae(3),Zt.get("type")==="classrooms"?te({type:"pathsDetail/getCourseDetail",payload:pO({id:(fs=y==null?void 0:y.detail)==null?void 0:fs.id,knowledge:!0},(0,Bt.oP)())}):te({type:"pathsDetail/getPathsDetail",payload:pO({id:(Is=y==null?void 0:y.detail)==null?void 0:Is.id,knowledge:!0},(0,Bt.oP)())})),Ca(!1)});return Dl.createElement("div",null,Dl.createElement("div",{className:un.tabs},di==null?void 0:di.map(Ii=>{var Hi,ho,Mo,zs,As,Bo,ds,$o,fs,Is,El,cl;return Dl.createElement("div",{onClick:()=>{var Oo,Zo,$i,Ao,So,rs,oo,ws;ae(Ii.key),(Ii==null?void 0:Ii.name)==="\u8BFE\u7A0B\u56FE\u8C31"&&(console.log("---",2),gn(((Oo=Vn==null?void 0:Vn[0])==null?void 0:Oo.name)||"\u8BFE\u7A0B\u56FE\u8C31"),vr((Zo=Vn==null?void 0:Vn[0])==null?void 0:Zo.uuid)),(Ii==null?void 0:Ii.name)==="\u5B66\u4E60\u8DEF\u5F84"&&(or(((So=(Ao=($i=y==null?void 0:y.detail)==null?void 0:$i.route_nodes)==null?void 0:Ao[0])==null?void 0:So.name)||"\u5B66\u4E60\u8DEF\u5F84"),Ir((ws=(oo=(rs=y==null?void 0:y.detail)==null?void 0:rs.route_nodes)==null?void 0:oo[0])==null?void 0:ws.id))},className:re===(Ii==null?void 0:Ii.key)?un.activied:un.tab},((Ii==null?void 0:Ii.name)==="\u8BFE\u7A0B\u4FE1\u606F"||(Ii==null?void 0:Ii.name)==="\u4EA4\u6D41\u53CD\u9988")&&(Ii==null?void 0:Ii.name),(Ii==null?void 0:Ii.name)==="\u8BFE\u7A0B\u56FE\u8C31"&&Dl.createElement(cn.Z,{overlayClassName:un.dropdownst,disabled:(Vn==null?void 0:Vn.length)===0,menu:{items:Vn==null?void 0:Vn.map(Oo=>({label:Dl.createElement(mn.Z,{title:Oo==null?void 0:Oo.name}," ",Dl.createElement("span",{className:un.dropnametext,style:{width:"100%"},onClick:Zo=>{Zo.stopPropagation(),gn(Oo==null?void 0:Oo.name),vr(Oo==null?void 0:Oo.uuid),ae(3)}},Oo==null?void 0:Oo.name)),key:Oo==null?void 0:Oo.uuid,show:!0})),selectable:!0,selectedKeys:[sa||((Mo=(ho=(Hi=y==null?void 0:y.detail)==null?void 0:Hi.nodes)==null?void 0:ho[1])==null?void 0:Mo.uuid)]}},Dl.createElement("span",{className:un.nametext},"\u8BFE\u7A0B\u56FE\u8C31 ",(Vn==null?void 0:Vn.length)>0&&Dl.createElement("i",{style:{fontSize:"12rem",marginLeft:"10rem"},className:"iconfont icon-zhankai10"}))),(Ii==null?void 0:Ii.name)==="\u5B66\u4E60\u8DEF\u5F84"&&Dl.createElement(cn.Z,{overlayClassName:un.dropdownst,disabled:((As=(zs=y==null?void 0:y.detail)==null?void 0:zs.route_nodes)==null?void 0:As.length)===0,overlayStyle:{background:"#13203D"},menu:{items:(ds=(Bo=y==null?void 0:y.detail)==null?void 0:Bo.route_nodes)==null?void 0:ds.map((Oo,Zo)=>({label:Dl.createElement(mn.Z,{title:Oo==null?void 0:Oo.name},Dl.createElement("span",{className:un.dropnametext,style:{width:"100%"},onClick:$i=>{$i.stopPropagation(),or(Oo==null?void 0:Oo.name),Ir(Oo==null?void 0:Oo.id),ae(2)}},Oo==null?void 0:Oo.name)),key:Oo==null?void 0:Oo.id,show:!0})),selectable:!0,selectedKeys:[(mr||((Is=(fs=($o=y==null?void 0:y.detail)==null?void 0:$o.route_nodes)==null?void 0:fs[0])==null?void 0:Is.id))+""]}},Dl.createElement("span",{className:un.nametext},"\u5B66\u4E60\u8DEF\u5F84 ",((cl=(El=y==null?void 0:y.detail)==null?void 0:El.route_nodes)==null?void 0:cl.length)>0&&Dl.createElement("i",{style:{fontSize:"12rem",marginLeft:"10rem"},className:"iconfont icon-zhankai10"}))))}),Dl.createElement(yn,null,Dl.createElement(Dl.Fragment,null,Zt.get("type")==="classrooms"&&(0,Md.JA)()&&Dl.createElement("div",{style:{position:"fixed",right:"20rem",top:"7rem"}},Dl.createElement("span",{onClick:()=>{var Ii;window.open((Ii=y==null?void 0:y.detail)==null?void 0:Ii.first_category_url)},style:{width:"128rem",height:"36rem",lineHeight:"36rem",display:"inline-block",textAlign:"center",background:"#fff",color:"#1B8565",fontSize:"14rem",borderRadius:"20rem",cursor:"pointer"}},"\u8FD4\u56DE\u6559\u5B66\u8BFE\u5802")),re===3&&((Et=y==null?void 0:y.detail)==null?void 0:Et.can_managed)&&Dl.createElement("div",{style:{position:"fixed",right:Zt.get("type")!=="classrooms"?"170rem":"20rem",top:"7rem"}},Dl.createElement("span",{onClick:()=>{Ti(!0)},style:{width:"128rem",height:"36rem",lineHeight:"36rem",display:"inline-block",textAlign:"center",background:"#fff",color:"#1B8565",fontSize:"14rem",borderRadius:"20rem",cursor:"pointer"}},"\u521B\u5EFA\u77E5\u8BC6\u56FE\u8C31")),Zt.get("type")!=="classrooms"&&(re===2||re===3)&&!(0,Md.JA)()&&Dl.createElement(Kt,{activied:re,styles:{position:"fixed",right:re===3?"20rem":"170rem",top:"7rem"}})))),Dl.createElement(Pe.default,{open:Fi,centered:!0,width:"1000rem",okText:"\u4FDD\u5B58",onCancel:()=>Ti(!1),cancelText:"\u53D6\u6D88",afterClose:()=>{ca.resetFields()},confirmLoading:pr,onOk:()=>ca.submit(),title:"\u65B0\u589E\u77E5\u8BC6\u56FE\u8C31"},Dl.createElement("div",{className:un.modal},Dl.createElement("div",{className:un.mHead},"\u8282\u70B9\u5C5E\u6027"),Dl.createElement(me.default,{form:ca,scrollToFirstError:!0,layout:"horizontal",colon:!1,size:"large",labelCol:{flex:"110rem"},onFinish:Ha,className:un.form},Dl.createElement(me.default.Item,{label:"\u56FE\u8C31\u540D\u79F0",name:"name",rules:[{required:!0,message:"\u8BF7\u8F93\u5165\u8282\u70B9\u540D\u79F0"},{type:"string",max:60,message:"\u8F93\u5165\u8D85\u9650\uFF0C\u8BF7\u7F29\u51CF\u5B57\u7B26\u6570"},{type:"string",whitespace:!0,message:"\u5185\u5BB9\u4E0D\u80FD\u5168\u4E3A\u7A7A\u683C"}]},Dl.createElement(xe.default,{maxLength:60,showCount:!0,placeholder:"\u8BF7\u8F93\u5165"})),Dl.createElement(me.default.Item,{label:"\u7B80\u4ECB",name:"description",rules:[{type:"string",max:5e3,message:"\u8F93\u5165\u8D85\u9650\uFF0C\u8BF7\u7F29\u51CF\u5B57\u7B26\u6570"},{type:"string",whitespace:!0,message:"\u5185\u5BB9\u4E0D\u80FD\u5168\u4E3A\u7A7A\u683C"}]},Dl.createElement(xe.default.TextArea,{maxLength:5e3,showCount:!0,placeholder:"\u8BF7\u8F93\u5165"})),Dl.createElement(me.default.Item,{className:un.mType,label:Dl.createElement("span",null,"\u56FE\u8C31\u7C7B\u578B ",Dl.createElement(mn.Z,{title:"\u5F53\u524D\u77E5\u8BC6\u56FE\u8C31\u7684\u7C7B\u578B\uFF0C\u5982\uFF1A\u5927\u7EB2\u56FE\u8C31\u3001\u80FD\u529B\u56FE\u8C31"},Dl.createElement(ui.Z,null))),name:"nodeType",rules:[{required:!0,message:"\u8BF7\u9009\u62E9\u8282\u70B9\u7C7B\u578B"}]},Dl.createElement(Pr,{subjectId:(bt=y==null?void 0:y.detail)==null?void 0:bt.id,type:1}))))),Dl.createElement("div",{className:un.placeholder}),Dl.createElement("div",{className:un.content},(Ct=di.find(Ii=>Ii.key===re))==null?void 0:Ct.content))};var UY=(0,Ce.connect)(({pathsDetail:E,user:a,loading:y,globalSetting:x})=>({pathsDetail:E,user:a,globalSetting:x,loading:y.models.index}))(kY),Bx=De(59301),jY=Object.defineProperty,Ix=Object.getOwnPropertySymbols,EO=Object.prototype.hasOwnProperty,xO=Object.prototype.propertyIsEnumerable,wO=(E,a,y)=>a in E?jY(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,bO=(E,a)=>{for(var y in a||(a={}))EO.call(a,y)&&wO(E,y,a[y]);if(Ix)for(var y of Ix(a))xO.call(a,y)&&wO(E,y,a[y]);return E},QY=(E,a)=>{var y={};for(var x in E)EO.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&Ix)for(var x of Ix(E))a.indexOf(x)<0&&xO.call(E,x)&&(y[x]=E[x]);return y},zY=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(se){b(se)}},te=ae=>{try{re(y.throw(ae))}catch(se){b(se)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,te);re((y=y.apply(E,a)).next())});const{TabPane:yee}=Ot.default;var HY=(E=>(E.All="",E.Shixun="shixun",E.VideoItem="video",E.Attachment="attachment",E.group_count="group_homework",E.normal_count="normal_homework",E.ExaminationBank="exercise",E.HomeworkCommon="hack_homework",E.Discusses="Discusses",E))(HY||{});function SO(E){const a=(b,z)=>{if(b.localName===z)return b;for(let te=0,re=b;re=re.parentNode;te++){if(re.localName===z)return re;if(re==document.documentElement)return!1}},y=E.target,x=a(y,"a");if(console.log([x],x==null?void 0:x.href,44),!(x!=null&&x.href)&&y.tagName.toUpperCase()==="IMG"){let b=y.src||y.getAttribute("src");b&&b.indexOf("/images/avatars/User")===-1&&(E.stopPropagation(),E.preventDefault(),Lt.Z.publish("preview-image",b))}}const WY=E=>{var a=E,{pathsDetail:y,globalSetting:x,loading:b,dispatch:z}=a,te=QY(a,["pathsDetail","globalSetting","loading","dispatch"]);const[re]=(0,Ce.useSearchParams)(),ae=(0,Ce.useParams)(),se=(0,Ne.useRef)(),[fe,pe]=(0,Ne.useState)(""),[be,Oe]=(0,Ne.useState)(1);(0,Ne.useEffect)(()=>{re.get("tabs")&&Oe(parseInt(re.get("tabs"))||3)},[re.get("tabs")]),(0,Ne.useEffect)(()=>{if(se.current)return se.current.addEventListener("mousedown",SO),()=>{var je;(je=se.current)==null||je.removeEventListener("mousedown",SO)}},[se.current]),(0,Ne.useEffect)(()=>{ae.pathId&&_e()},[ae.pathId]),(0,Ne.useEffect)(()=>(z({type:"globalSetting/footerToggle",payload:!1}),()=>{z({type:"globalSetting/footerToggle",payload:!0})}),[]);const _e=()=>zY(void 0,null,function*(){if(re.get("type")==="classrooms"){z({type:"pathsDetail/getCourseDetail",payload:bO({id:ae.pathId,knowledge:!0},(0,Bt.oP)())});return}const je=yield z({type:"pathsDetail/getPathsDetail",payload:bO({id:ae.pathId,knowledge:!0},(0,Bt.oP)())});je!=null&&je.id&&re.get("token")&&(location.href=location.pathname)});return Bx.createElement(ue.Z,{spinning:!1},Bx.createElement("section",{id:"knowledgegraphDetail",className:Pt.bg},Bx.createElement(xt,null),Bx.createElement(UY,{activied:be,setactivied:Oe})))};var GY=(0,Ce.connect)(({pathsDetail:E,loading:a,globalSetting:y})=>({pathsDetail:E,globalSetting:y,loading:a}))(WY)},84989:function(Wt,en,De){"use strict";De.d(en,{BU:function(){return Ke},Dj:function(){return Re},gH:function(){return Ne},vp:function(){return Ce}});function Re(ke){try{ke.mozRequestFullScreen?ke.mozRequestFullScreen():ke.webkitRequestFullScreen&&ke.webkitRequestFullScreen()}catch(Pe){console.log(Pe,":e")}}function Ke(){window.top.document.webkitExitFullscreen?window.top.document.webkitExitFullscreen():document.exitFullscreen?window.top.document.exitFullscreen():document.msExitFullscreen?window.top.document.msExitFullscreen():document.mozCancelFullScreen&&window.top.document.mozCancelFullScreen()}const Ne=()=>{if(document.webkitExitFullscreen)return"webkitfullscreenchange";if(document.exitFullscreen)return"fullscreenchange";if(document.msExitFullscreen)return"msfullscreenchange";if(document.mozCancelFullScreen)return"mozfullscreenchange"};function Ce(){var ke=window.top.document.fullscreenElement||window.top.document.mozFullscreenElement||window.top.document.webkitFullscreenElement,Pe=document.fullscreenEnabled||document.mozFullscreenEnabled||document.webkitFullscreenEnabled;return console.log("fullscreenElement",ke),window.isFullScreen?window.isFullScreen:ke!=null}},40197:function(Wt,en,De){"use strict";De.d(en,{rX:function(){return ie},pW:function(){return ce},gy:function(){return ge},xY:function(){return he},O5:function(){return de},tJ:function(){return ue},o1:function(){return ee},Rd:function(){return oe}});var Re=De(25690),Ke=De(43418),Ne=De(28103),Ce=De(8591),ke=De(48790),Pe=De(51257),ve=De(87169),ye=De(25510),we="data:image/png;base64,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",me=De.p+"static/newqrcode.a8740efb.png",Ae=De(32637),Ee=De(59301),xe=(Se,Be,Fe)=>new Promise((Te,Ue)=>{var We=At=>{try{Xe(Fe.next(At))}catch(lt){Ue(lt)}},$e=At=>{try{Xe(Fe.throw(At))}catch(lt){Ue(lt)}},Xe=At=>At.done?Te(At.value):Promise.resolve(At.value).then(We,$e);Xe((Fe=Fe.apply(Se,Be)).next())});const ue=(Se,Be=!1)=>!!(ee(Se)&&ne(Be)),ee=Se=>(0,ke.bg)()?!0:(Se({type:"user/showPopLogin",payload:{showPopLogin:!0,showClosable:!0}}),!1),ne=(Se=!1)=>{var Be;const{user:Fe}=(0,Re.getDvaApp)()._store.getState();return(Be=Fe.userInfo)!=null&&Be.profile_completed?!0:(Ke.default.confirm({title:"\u63D0\u793A",width:530,centered:!0,content:"\u60A8\u9700\u8981\u53BB\u5B8C\u5584\u60A8\u7684\u4E2A\u4EBA\u8D44\u6599\uFF0C\u624D\u80FD\u4F7F\u7528\u6B64\u529F\u80FD",okText:"\u7ACB\u5373\u5B8C\u5584",cancelText:"\u7A0D\u540E\u5B8C\u5584",onOk:()=>{(0,Pe.xg)("/account/profile/edit"),le()}}),!1)},le=()=>{Ke.default.success({title:"\u63D0\u793A",width:430,closable:!0,centered:!0,content:"\u5DF2\u5B8C\u5584\u4E2A\u4EBA\u8D44\u6599\uFF1F\u8BF7\u5237\u65B0\u9875\u9762",okText:"\u7ACB\u5373\u5237\u65B0",icon:null,onOk:()=>{location.reload()}})},oe=()=>{Ke.default.warning({title:"\u63D0\u793A",icon:null,width:400,content:Ee.createElement("div",{style:{textAlign:"center"}},Ee.createElement("div",{style:{color:"#191919",fontSize:14,marginBottom:15,textAlign:"left"}},"\u8001\u5E08\u60A8\u597D\uFF0C\u60A8\u7684\u8BFE\u5802\u8BD5\u7528\u671F\u5DF2\u7ED3\u675F\uFF0C\u76F8\u5173\u529F\u80FD\u88AB\u9650\u5236\u3002 \u5982\u9700\u7EE7\u7EED\u4F7F\u7528\uFF0C\u8BF7\u5C3D\u5FEB\u5BF9\u63A5\u4EBA\u5DE5\u652F\u6301\uFF01"),Ee.createElement("img",{style:{border:"1px solid #D8E3E9",width:190,height:180},src:Ae}),Ee.createElement("div",{style:{color:"#666666",fontSize:14,marginTop:15}},"\u6DFB\u52A0\u5BA2\u670D\u4EBA\u5458\u5FAE\u4FE1\uFF0C\u83B7\u5F97\u66F4\u591A\u652F\u6301"))})},de=()=>{var Se;const{user:Be}=(0,Re.getDvaApp)()._store.getState();return(Se=Be.userInfo)!=null&&Se.professional_certification?!0:(Ke.default.confirm({title:"\u63D0\u793A",centered:!0,content:Ee.createElement("div",{className:"tc"},"\u60A8\u9700\u8981\u53BB\u5B8C\u6210\u60A8\u7684\u804C\u4E1A\u8BA4\u8BC1\uFF0C\u624D\u80FD\u4F7F\u7528\u6B64\u529F\u80FD"),okText:"\u7ACB\u5373\u5B8C\u5584",cancelText:"\u7A0D\u540E\u5B8C\u5584",onOk:()=>{(0,Pe.xg)("/account/certification")}}),!1)},he=()=>(0,ke.V9)()?!0:(Ke.default.warning({centered:!0,width:530,title:"\u63D0\u793A",content:Ee.createElement("div",{className:"tc",style:{marginLeft:-38}},Ee.createElement("p",null,"\u626B\u7801\u52A0\u52A9\u6559\uFF0C\u7533\u8BF7\u64CD\u4F5C\u6743\u9650"),Ee.createElement("img",{src:me,width:200})),okText:"\u6211\u77E5\u9053\u4E86",maskClosable:!0}),!1),ie=(Se,Be)=>Se?!0:(Ke.default.confirm({centered:!0,zIndex:1e4,width:530,title:"\u63D0\u793A",content:Ee.createElement("div",null,Ee.createElement("p",null,Be||"\u8BE5\u5B9E\u8DF5\u8D44\u6E90\u9700\u6388\u6743\u540E\u624D\u53EF\u4F7F\u7528\u3002 \u60A8\u53EF\u4EE5\u5728QQ\u670D\u52A1\u7FA4\u5411\u7BA1\u7406\u5458\u7533\u8BF7\uFF0C\u83B7\u5F97\u7EE7\u7EED\u64CD\u4F5C\u7684\u6743\u9650\u3002"),Ee.createElement("div",{style:{marginLeft:"110px"}},Ee.createElement("img",{src:we,width:200}),Ee.createElement("div",{style:{marginLeft:"35px"}},"\u7FA4\u53F7\uFF1A","714336072"))),okText:"\u7ACB\u5373\u8054\u7CFB",cancelText:"\u53D6\u6D88",onOk:()=>{(0,Pe.xg)("https://qm.qq.com/cgi-bin/qm/qr?k=tIyDPXUtE0yEk-MOJxhH55lTUJS-nYAM&jump_from=webapi")}}),!1),ce=Se=>{Ke.default.info({title:"\u8054\u7CFB\u5E73\u53F0\u8FD0\u8425",icon:null,width:615,centered:!0,content:Ee.createElement("div",null,Ee.createElement("div",null,Ee.createElement("p",{style:{color:"#191919",fontWeight:400,fontSize:14}},"\u201C\u4FDD\u5B58\u5B9E\u9A8C\u4E34\u65F6\u6570\u636E\u201D\u529F\u80FD\u4E3A\u4ED8\u8D39\u529F\u80FD\uFF0C\u8BF7\u8054\u7CFB\u5E73\u53F0\u8FD0\u8425\u8FDB\u884C\u5F00\u901A\u3002"),Ee.createElement(Ne.Z,null),Ee.createElement("p",{style:{color:"#666666",fontSize:12}}," ",Ee.createElement("span",{style:{display:"inline-flex",width:14,height:14,borderRadius:2,background:"#F3F3F3",justifyContent:"center",color:"#666666",fontSize:12,lineHeight:"14px",marginRight:8}},"1")," \u56E0\u5E73\u53F0\u7684\u5B9E\u9A8C\u6570\u636E\u50A8\u5B58\u5BB9\u91CF\u548C\u6210\u672C\u6D88\u8017\u8F83\u5927\uFF0C\u5B9E\u8DF5\u9879\u76EE\u9ED8\u8BA4\u4FDD\u5B58\u5B9E\u9A8C\u73AF\u5883\u4E2D\u4E34\u65F6\u6570\u636E ",Ee.createElement("a",null,Se),"\u5929\u3002"),Ee.createElement("p",{style:{color:"#666666",fontSize:12}}," ",Ee.createElement("span",{style:{display:"inline-flex",width:14,height:14,borderRadius:2,background:"#F3F3F3",justifyContent:"center",color:"#666666",fontSize:12,lineHeight:"14px",marginRight:8}},"2"),"\u82E5\u60A8\u9700\u8981\u4E2A\u6027\u5316\u7684\u6570\u636E\u4FDD\u5B58\u5468\u671F\u670D\u52A1\uFF0C\u6211\u4EEC\u53EF\u4EE5\u63D0\u4F9B\u76F8\u5173\u6280\u672F\u652F\u6301\uFF0C\u5E76\u6839\u636E\u60A8\u7684\u9700\u6C42\u6536\u53D6\u5B9A\u5236\u8D39\u7528\u3002")),Ee.createElement("div",{style:{textAlign:"center",marginTop:30}},Ee.createElement("img",{style:{border:"4px solid #0152d9",borderRadius:"4px"},src:ye,alt:"\u4E8C\u7EF4\u7801",width:160})))})},ge=(Se,Be="")=>{const{shixunsDetail:{detail:Fe}}=(0,Re.getDvaApp)()._store.getState();if((Fe==null?void 0:Fe.public)===2||(Fe==null?void 0:Fe.public)===1||(Fe==null?void 0:Fe.shixun_status)===3){let Te="";return(Fe==null?void 0:Fe.public)===2&&(Te="\u5DF2\u516C\u5F00"),(Fe==null?void 0:Fe.public)===1&&(Te="\u5F85\u5BA1\u6838"),(Fe==null?void 0:Fe.shixun_status)===3&&(Te="\u5DF2\u5173\u95ED"),Ke.default.info({centered:!0,icon:Ee.createElement(ve.Z,{style:{color:"#faad14"}}),width:460,title:"\u63D0\u793A",content:Ee.createElement("div",{className:"tc",style:{marginLeft:-38}},Ee.createElement("div",{style:{display:"flex",flexDirection:"column",alignItems:"flex-start",paddingLeft:38,margin:"12px 0"}},Ee.createElement("span",null,"\u8BE5\u5B9E\u8DF5\u9879\u76EE\u7684\u72B6\u6001\u4E3A",Te,"\uFF0C",Be,"\u3002"),Ee.createElement("p",null,"\u5982\u6709\u9700\u8981\uFF0C\u8BF7\u8054\u7CFB\u5E73\u53F0\u7BA1\u7406\u5458\u8FDB\u884C\u6280\u672F\u652F\u6301\u3002")),Ee.createElement("img",{style:{border:"4px solid #0152d9",borderRadius:"4px"},src:ye,alt:"\u4E8C\u7EF4\u7801",width:160})),okText:"\u6211\u77E5\u9053\u4E86"}),!0}return(Fe==null?void 0:Fe.shixun_status)===2?(Ke.default.confirm({centered:!0,icon:Ee.createElement(ve.Z,null),title:"\u63D0\u793A",content:Ee.createElement("div",null,Ee.createElement("span",null,"\u8BE5\u5B9E\u8DF5\u9879\u76EE\u5DF2\u53D1\u5E03\uFF0C",Be,"\u3002"),Ee.createElement("br",null),Ee.createElement("span",null,"\u5982\u6709\u9700\u8981\uFF0C\u60A8\u53EF\u4EE5\u64A4\u9500\u53D1\u5E03\u540E\uFF0C\u518D\u8FDB\u884C\u64CD\u4F5C\u3002")),okText:"\u64A4\u9500\u53D1\u5E03",cancelText:"\u53D6\u6D88",onOk:()=>{Ke.default.confirm({width:440,centered:!0,icon:Ee.createElement(ve.Z,{style:{color:"#faad14"}}),title:"\u63D0\u793A",content:"\u64A4\u9500\u53D1\u5E03\u540E\uFF0C\u5B66\u5458\u5C06\u65E0\u6CD5\u8FDB\u884C\u7EC3\u4E60\u3002\u662F\u5426\u786E\u8BA4\u64A4\u9500\u53D1\u5E03\uFF1F",okText:"\u786E\u5B9A\u64A4\u9500\u53D1\u5E03",cancelText:"\u53D6\u6D88",onOk:()=>xe(void 0,null,function*(){(yield Se({type:"shixunsDetail/cancelRelease",payload:{id:Fe==null?void 0:Fe.identifier}})).status!==401&&(Ce.ZP.success("\u64A4\u9500\u53D1\u5E03\u6210\u529F\u3002\u5B9E\u8BAD\u56DE\u5230\u672A\u53D1\u5E03\u7684\u72B6\u6001\u3002"),Se({type:"shixunsDetail/getShixunsDetail",payload:{id:Fe==null?void 0:Fe.identifier}}),Se({type:"practiceSetting/getCommonData",payload:{id:Fe==null?void 0:Fe.identifier}}))})})}}),!0):!1}},30647:function(Wt,en,De){"use strict";De.d(en,{Z:function(){return Ri}});class Re{static install(){Object.setPrototypeOf=Object.setPrototypeOf||function(Ie,Le){return Ie.__proto__=Le,Ie},Object.assign=Object.assign||function(Ie){if(Ie==null)throw new TypeError("Cannot convert undefined or null to object");let Le=Object(Ie);for(let Me=1;Me ${Le}`;ke.ENABLE_CALLBACK&&ke.emitter.emit("log","error",Me),ke.ENABLE_ERROR&&(console.error?console.error(Me):console.warn?console.warn(Me):console.log(Me))}static i(Ie,Le){(!Ie||ke.FORCE_GLOBAL_TAG)&&(Ie=ke.GLOBAL_TAG);let Me=`[${Ie}] > ${Le}`;ke.ENABLE_CALLBACK&&ke.emitter.emit("log","info",Me),ke.ENABLE_INFO&&(console.info?console.info(Me):console.log(Me))}static w(Ie,Le){(!Ie||ke.FORCE_GLOBAL_TAG)&&(Ie=ke.GLOBAL_TAG);let Me=`[${Ie}] > ${Le}`;ke.ENABLE_CALLBACK&&ke.emitter.emit("log","warn",Me),ke.ENABLE_WARN&&(console.warn?console.warn(Me):console.log(Me))}static d(Ie,Le){(!Ie||ke.FORCE_GLOBAL_TAG)&&(Ie=ke.GLOBAL_TAG);let Me=`[${Ie}] > ${Le}`;ke.ENABLE_CALLBACK&&ke.emitter.emit("log","debug",Me),ke.ENABLE_DEBUG&&(console.debug?console.debug(Me):console.log(Me))}static v(Ie,Le){(!Ie||ke.FORCE_GLOBAL_TAG)&&(Ie=ke.GLOBAL_TAG);let Me=`[${Ie}] > ${Le}`;ke.ENABLE_CALLBACK&&ke.emitter.emit("log","verbose",Me),ke.ENABLE_VERBOSE&&console.log(Me)}}ke.GLOBAL_TAG="flv.js",ke.FORCE_GLOBAL_TAG=!1,ke.ENABLE_ERROR=!0,ke.ENABLE_INFO=!0,ke.ENABLE_WARN=!0,ke.ENABLE_DEBUG=!0,ke.ENABLE_VERBOSE=!0,ke.ENABLE_CALLBACK=!1,ke.emitter=new(Ce());var Pe=ke;class ve{constructor(){this._firstCheckpoint=0,this._lastCheckpoint=0,this._intervalBytes=0,this._totalBytes=0,this._lastSecondBytes=0,self.performance&&self.performance.now?this._now=self.performance.now.bind(self.performance):this._now=Date.now}reset(){this._firstCheckpoint=this._lastCheckpoint=0,this._totalBytes=this._intervalBytes=0,this._lastSecondBytes=0}addBytes(Ie){this._firstCheckpoint===0?(this._firstCheckpoint=this._now(),this._lastCheckpoint=this._firstCheckpoint,this._intervalBytes+=Ie,this._totalBytes+=Ie):this._now()-this._lastCheckpoint<1e3?(this._intervalBytes+=Ie,this._totalBytes+=Ie):(this._lastSecondBytes=this._intervalBytes,this._intervalBytes=Ie,this._totalBytes+=Ie,this._lastCheckpoint=this._now())}get currentKBps(){this.addBytes(0);let Ie=(this._now()-this._lastCheckpoint)/1e3;return Ie==0&&(Ie=1),this._intervalBytes/Ie/1024}get lastSecondKBps(){return this.addBytes(0),this._lastSecondBytes!==0?this._lastSecondBytes/1024:this._now()-this._lastCheckpoint>=500?this.currentKBps:0}get averageKBps(){let Ie=(this._now()-this._firstCheckpoint)/1e3;return this._totalBytes/Ie/1024}}var ye=ve;class we{constructor(Ie){this._message=Ie}get name(){return"RuntimeException"}get message(){return this._message}toString(){return this.name+": "+this.message}}class me extends we{constructor(Ie){super(Ie)}get name(){return"IllegalStateException"}}class Ae extends we{constructor(Ie){super(Ie)}get name(){return"InvalidArgumentException"}}class Ee extends we{constructor(Ie){super(Ie)}get name(){return"NotImplementedException"}}const xe={kIdle:0,kConnecting:1,kBuffering:2,kError:3,kComplete:4},ue={OK:"OK",EXCEPTION:"Exception",HTTP_STATUS_CODE_INVALID:"HttpStatusCodeInvalid",CONNECTING_TIMEOUT:"ConnectingTimeout",EARLY_EOF:"EarlyEof",UNRECOVERABLE_EARLY_EOF:"UnrecoverableEarlyEof"};class ee{constructor(Ie){this._type=Ie||"undefined",this._status=xe.kIdle,this._needStash=!1,this._onContentLengthKnown=null,this._onURLRedirect=null,this._onDataArrival=null,this._onError=null,this._onComplete=null}destroy(){this._status=xe.kIdle,this._onContentLengthKnown=null,this._onURLRedirect=null,this._onDataArrival=null,this._onError=null,this._onComplete=null}isWorking(){return this._status===xe.kConnecting||this._status===xe.kBuffering}get type(){return this._type}get status(){return this._status}get needStashBuffer(){return this._needStash}get onContentLengthKnown(){return this._onContentLengthKnown}set onContentLengthKnown(Ie){this._onContentLengthKnown=Ie}get onURLRedirect(){return this._onURLRedirect}set onURLRedirect(Ie){this._onURLRedirect=Ie}get onDataArrival(){return this._onDataArrival}set onDataArrival(Ie){this._onDataArrival=Ie}get onError(){return this._onError}set onError(Ie){this._onError=Ie}get onComplete(){return this._onComplete}set onComplete(Ie){this._onComplete=Ie}open(Ie,Le){throw new Ee("Unimplemented abstract function!")}abort(){throw new Ee("Unimplemented abstract function!")}}let ne={};function le(){let Qt=self.navigator.userAgent.toLowerCase(),Ie=/(edge)\/([\w.]+)/.exec(Qt)||/(opr)[\/]([\w.]+)/.exec(Qt)||/(chrome)[ \/]([\w.]+)/.exec(Qt)||/(iemobile)[\/]([\w.]+)/.exec(Qt)||/(version)(applewebkit)[ \/]([\w.]+).*(safari)[ \/]([\w.]+)/.exec(Qt)||/(webkit)[ \/]([\w.]+).*(version)[ \/]([\w.]+).*(safari)[ \/]([\w.]+)/.exec(Qt)||/(webkit)[ \/]([\w.]+)/.exec(Qt)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(Qt)||/(msie) ([\w.]+)/.exec(Qt)||Qt.indexOf("trident")>=0&&/(rv)(?::| )([\w.]+)/.exec(Qt)||Qt.indexOf("compatible")<0&&/(firefox)[ \/]([\w.]+)/.exec(Qt)||[],Le=/(ipad)/.exec(Qt)||/(ipod)/.exec(Qt)||/(windows phone)/.exec(Qt)||/(iphone)/.exec(Qt)||/(kindle)/.exec(Qt)||/(android)/.exec(Qt)||/(windows)/.exec(Qt)||/(mac)/.exec(Qt)||/(linux)/.exec(Qt)||/(cros)/.exec(Qt)||[],Me={browser:Ie[5]||Ie[3]||Ie[1]||"",version:Ie[2]||Ie[4]||"0",majorVersion:Ie[4]||Ie[2]||"0",platform:Le[0]||""},Qe={};if(Me.browser){Qe[Me.browser]=!0;let nt=Me.majorVersion.split(".");Qe.version={major:parseInt(Me.majorVersion,10),string:Me.version},nt.length>1&&(Qe.version.minor=parseInt(nt[1],10)),nt.length>2&&(Qe.version.build=parseInt(nt[2],10))}if(Me.platform&&(Qe[Me.platform]=!0),(Qe.chrome||Qe.opr||Qe.safari)&&(Qe.webkit=!0),Qe.rv||Qe.iemobile){Qe.rv&&delete Qe.rv;let nt="msie";Me.browser=nt,Qe[nt]=!0}if(Qe.edge){delete Qe.edge;let nt="msedge";Me.browser=nt,Qe[nt]=!0}if(Qe.opr){let nt="opera";Me.browser=nt,Qe[nt]=!0}if(Qe.safari&&Qe.android){let nt="android";Me.browser=nt,Qe[nt]=!0}Qe.name=Me.browser,Qe.platform=Me.platform;for(let nt in ne)ne.hasOwnProperty(nt)&&delete ne[nt];Object.assign(ne,Qe)}le();var oe=ne;class de extends ee{static isSupported(){try{let Ie=oe.msedge&&oe.version.minor>=15048,Le=oe.msedge?Ie:!0;return self.fetch&&self.ReadableStream&&Le}catch(Ie){return!1}}constructor(Ie,Le){super("fetch-stream-loader"),this.TAG="FetchStreamLoader",this._seekHandler=Ie,this._config=Le,this._needStash=!0,this._requestAbort=!1,this._contentLength=null,this._receivedLength=0}destroy(){this.isWorking()&&this.abort(),super.destroy()}open(Ie,Le){this._dataSource=Ie,this._range=Le;let Me=Ie.url;this._config.reuseRedirectedURL&&Ie.redirectedURL!=null&&(Me=Ie.redirectedURL);let Qe=this._seekHandler.getConfig(Me,Le),nt=new self.Headers;if(typeof Qe.headers=="object"){let Ht=Qe.headers;for(let Ln in Ht)Ht.hasOwnProperty(Ln)&&nt.append(Ln,Ht[Ln])}let kt={method:"GET",headers:nt,mode:"cors",cache:"default",referrerPolicy:"no-referrer-when-downgrade"};if(typeof this._config.headers=="object")for(let Ht in this._config.headers)nt.append(Ht,this._config.headers[Ht]);Ie.cors===!1&&(kt.mode="same-origin"),Ie.withCredentials&&(kt.credentials="include"),Ie.referrerPolicy&&(kt.referrerPolicy=Ie.referrerPolicy),this._status=xe.kConnecting,self.fetch(Qe.url,kt).then(Ht=>{if(this._requestAbort){this._requestAbort=!1,this._status=xe.kIdle;return}if(Ht.ok&&Ht.status>=200&&Ht.status<=299){if(Ht.url!==Qe.url&&this._onURLRedirect){let vn=this._seekHandler.removeURLParameters(Ht.url);this._onURLRedirect(vn)}let Ln=Ht.headers.get("Content-Length");return Ln!=null&&(this._contentLength=parseInt(Ln),this._contentLength!==0&&this._onContentLengthKnown&&this._onContentLengthKnown(this._contentLength)),this._pump.call(this,Ht.body.getReader())}else if(this._status=xe.kError,this._onError)this._onError(ue.HTTP_STATUS_CODE_INVALID,{code:Ht.status,msg:Ht.statusText});else throw new we("FetchStreamLoader: Http code invalid, "+Ht.status+" "+Ht.statusText)}).catch(Ht=>{if(this._status=xe.kError,this._onError)this._onError(ue.EXCEPTION,{code:-1,msg:Ht.message});else throw Ht})}abort(){this._requestAbort=!0}_pump(Ie){return Ie.read().then(Le=>{if(Le.done)if(this._contentLength!==null&&this._receivedLength{if(Le.code===11&&oe.msedge)return;this._status=xe.kError;let Me=0,Qe=null;if((Le.code===19||Le.message==="network error")&&(this._contentLength===null||this._contentLength!==null&&this._receivedLength299))if(this._status=xe.kError,this._onError)this._onError(ue.HTTP_STATUS_CODE_INVALID,{code:Le.status,msg:Le.statusText});else throw new we("MozChunkedLoader: Http code invalid, "+Le.status+" "+Le.statusText);else this._status=xe.kBuffering}}_onProgress(Ie){if(this._status===xe.kError)return;this._contentLength===null&&Ie.total!==null&&Ie.total!==0&&(this._contentLength=Ie.total,this._onContentLengthKnown&&this._onContentLengthKnown(this._contentLength));let Le=Ie.target.response,Me=this._range.from+this._receivedLength;this._receivedLength+=Le.byteLength,this._onDataArrival&&this._onDataArrival(Le,Me,this._receivedLength)}_onLoadEnd(Ie){if(this._requestAbort===!0){this._requestAbort=!1;return}else if(this._status===xe.kError)return;this._status=xe.kComplete,this._onComplete&&this._onComplete(this._range.from,this._range.from+this._receivedLength-1)}_onXhrError(Ie){this._status=xe.kError;let Le=0,Me=null;if(this._contentLength&&Ie.loaded=200&&Le.status<=299){if(this._status=LoaderStatus.kBuffering,Le.responseURL!=null){let Qe=this._seekHandler.removeURLParameters(Le.responseURL);Le.responseURL!==this._currentRequestURL&&Qe!==this._currentRedirectedURL&&(this._currentRedirectedURL=Qe,this._onURLRedirect&&this._onURLRedirect(Qe))}let Me=Le.getResponseHeader("Content-Length");if(Me!=null&&this._contentLength==null){let Qe=parseInt(Me);Qe>0&&(this._contentLength=Qe,this._onContentLengthKnown&&this._onContentLengthKnown(this._contentLength))}}else if(this._status=LoaderStatus.kError,this._onError)this._onError(LoaderErrors.HTTP_STATUS_CODE_INVALID,{code:Le.status,msg:Le.statusText});else throw new RuntimeException("MSStreamLoader: Http code invalid, "+Le.status+" "+Le.statusText);else if(Le.readyState===3&&Le.status>=200&&Le.status<=299){this._status=LoaderStatus.kBuffering;let Me=Le.response;this._reader.readAsArrayBuffer(Me)}}_xhrOnError(Ie){this._status=LoaderStatus.kError;let Le=LoaderErrors.EXCEPTION,Me={code:-1,msg:Ie.constructor.name+" "+Ie.type};if(this._onError)this._onError(Le,Me);else throw new RuntimeException(Me.msg)}_msrOnProgress(Ie){let Me=Ie.target.result;if(Me==null){this._doReconnectIfNeeded();return}let Qe=Me.slice(this._lastTimeBufferSize);this._lastTimeBufferSize=Me.byteLength;let nt=this._totalRange.from+this._receivedLength;this._receivedLength+=Qe.byteLength,this._onDataArrival&&this._onDataArrival(Qe,nt,this._receivedLength),Me.byteLength>=this._bufferLimit&&(Log.v(this.TAG,`MSStream buffer exceeded max size near ${nt+Qe.byteLength}, reconnecting...`),this._doReconnectIfNeeded())}_doReconnectIfNeeded(){if(this._contentLength==null||this._receivedLength=this._contentLength&&(Me=this._range.from+this._contentLength-1),this._currentRequestRange={from:Le,to:Me},this._internalOpen(this._dataSource,this._currentRequestRange)}_internalOpen(Ie,Le){this._lastTimeLoaded=0;let Me=Ie.url;this._config.reuseRedirectedURL&&(this._currentRedirectedURL!=null?Me=this._currentRedirectedURL:Ie.redirectedURL!=null&&(Me=Ie.redirectedURL));let Qe=this._seekHandler.getConfig(Me,Le);this._currentRequestURL=Qe.url;let nt=this._xhr=new XMLHttpRequest;if(nt.open("GET",Qe.url,!0),nt.responseType="arraybuffer",nt.onreadystatechange=this._onReadyStateChange.bind(this),nt.onprogress=this._onProgress.bind(this),nt.onload=this._onLoad.bind(this),nt.onerror=this._onXhrError.bind(this),Ie.withCredentials&&(nt.withCredentials=!0),typeof Qe.headers=="object"){let kt=Qe.headers;for(let Ht in kt)kt.hasOwnProperty(Ht)&&nt.setRequestHeader(Ht,kt[Ht])}if(typeof this._config.headers=="object"){let kt=this._config.headers;for(let Ht in kt)kt.hasOwnProperty(Ht)&&nt.setRequestHeader(Ht,kt[Ht])}nt.send()}abort(){this._requestAbort=!0,this._internalAbort(),this._status=xe.kComplete}_internalAbort(){this._xhr&&(this._xhr.onreadystatechange=null,this._xhr.onprogress=null,this._xhr.onload=null,this._xhr.onerror=null,this._xhr.abort(),this._xhr=null)}_onReadyStateChange(Ie){let Le=Ie.target;if(Le.readyState===2){if(Le.responseURL!=null){let Me=this._seekHandler.removeURLParameters(Le.responseURL);Le.responseURL!==this._currentRequestURL&&Me!==this._currentRedirectedURL&&(this._currentRedirectedURL=Me,this._onURLRedirect&&this._onURLRedirect(Me))}if(Le.status>=200&&Le.status<=299){if(this._waitForTotalLength)return;this._status=xe.kBuffering}else if(this._status=xe.kError,this._onError)this._onError(ue.HTTP_STATUS_CODE_INVALID,{code:Le.status,msg:Le.statusText});else throw new we("RangeLoader: Http code invalid, "+Le.status+" "+Le.statusText)}}_onProgress(Ie){if(this._status===xe.kError)return;if(this._contentLength===null){let Me=!1;if(this._waitForTotalLength){this._waitForTotalLength=!1,this._totalLengthReceived=!0,Me=!0;let Qe=Ie.total;this._internalAbort(),Qe!=null&Qe!==0&&(this._totalLength=Qe)}if(this._range.to===-1?this._contentLength=this._totalLength-this._range.from:this._contentLength=this._range.to-this._range.from+1,Me){this._openSubRange();return}this._onContentLengthKnown&&this._onContentLengthKnown(this._contentLength)}let Le=Ie.loaded-this._lastTimeLoaded;this._lastTimeLoaded=Ie.loaded,this._speedSampler.addBytes(Le)}_normalizeSpeed(Ie){let Le=this._chunkSizeKBList,Me=Le.length-1,Qe=0,nt=0,kt=Me;if(Ie=Le[Qe]&&Ie=3&&(Le=this._speedSampler.currentKBps)),Le!==0){let kt=this._normalizeSpeed(Le);this._currentSpeedNormalized!==kt&&(this._currentSpeedNormalized=kt,this._currentChunkSizeKB=kt)}let Me=Ie.target.response,Qe=this._range.from+this._receivedLength;this._receivedLength+=Me.byteLength;let nt=!1;this._contentLength!=null&&this._receivedLength0&&this._receivedLength{this._dispatchArrayBuffer(Le.result)},Le.readAsArrayBuffer(Ie.data)}else{this._status=xe.kError;let Le={code:-1,msg:"Unsupported WebSocket message type: "+Ie.data.constructor.name};if(this._onError)this._onError(ue.EXCEPTION,Le);else throw new we(Le.msg)}}_dispatchArrayBuffer(Ie){let Le=Ie,Me=this._receivedLength;this._receivedLength+=Le.byteLength,this._onDataArrival&&this._onDataArrival(Le,Me,this._receivedLength)}_onWebSocketError(Ie){this._status=xe.kError;let Le={code:Ie.code,msg:Ie.message};if(this._onError)this._onError(ue.EXCEPTION,Le);else throw new we(Le.msg)}}var Ue=Te;class We{constructor(Ie){this._zeroStart=Ie||!1}getConfig(Ie,Le){let Me={};if(Le.from!==0||Le.to!==-1){let Qe;Le.to!==-1?Qe=`bytes=${Le.from.toString()}-${Le.to.toString()}`:Qe=`bytes=${Le.from.toString()}-`,Me.Range=Qe}else this._zeroStart&&(Me.Range="bytes=0-");return{url:Ie,headers:Me}}removeURLParameters(Ie){return Ie}}var $e=We;class Xe{constructor(Ie,Le){this._startName=Ie,this._endName=Le}getConfig(Ie,Le){let Me=Ie;if(Le.from!==0||Le.to!==-1){let Qe=!0;Me.indexOf("?")===-1&&(Me+="?",Qe=!1),Qe&&(Me+="&"),Me+=`${this._startName}=${Le.from.toString()}`,Le.to!==-1&&(Me+=`&${this._endName}=${Le.to.toString()}`)}return{url:Me,headers:{}}}removeURLParameters(Ie){let Le=Ie.split("?")[0],Me,Qe=Ie.indexOf("?");Qe!==-1&&(Me=Ie.substring(Qe+1));let nt="";if(Me!=null&&Me.length>0){let kt=Me.split("&");for(let Ht=0;Ht0;Ln[0]!==this._startName&&Ln[0]!==this._endName&&(vn&&(nt+="&"),nt+=kt[Ht])}}return nt.length===0?Le:Le+"?"+nt}}var At=Xe;class lt{constructor(Ie,Le,Me){this.TAG="IOController",this._config=Le,this._extraData=Me,this._stashInitialSize=1024*384,Le.stashInitialSize!=null&&Le.stashInitialSize>0&&(this._stashInitialSize=Le.stashInitialSize),this._stashUsed=0,this._stashSize=this._stashInitialSize,this._bufferSize=1024*1024*3,this._stashBuffer=new ArrayBuffer(this._bufferSize),this._stashByteStart=0,this._enableStash=!0,Le.enableStashBuffer===!1&&(this._enableStash=!1),this._loader=null,this._loaderClass=null,this._seekHandler=null,this._dataSource=Ie,this._isWebSocketURL=/wss?:\/\/(.+?)/.test(Ie.url),this._refTotalLength=Ie.filesize?Ie.filesize:null,this._totalLength=this._refTotalLength,this._fullRequestFlag=!1,this._currentRange=null,this._redirectedURL=null,this._speedNormalized=0,this._speedSampler=new ye,this._speedNormalizeList=[64,128,256,384,512,768,1024,1536,2048,3072,4096],this._isEarlyEofReconnecting=!1,this._paused=!1,this._resumeFrom=0,this._onDataArrival=null,this._onSeeked=null,this._onError=null,this._onComplete=null,this._onRedirect=null,this._onRecoveredEarlyEof=null,this._selectSeekHandler(),this._selectLoader(),this._createLoader()}destroy(){this._loader.isWorking()&&this._loader.abort(),this._loader.destroy(),this._loader=null,this._loaderClass=null,this._dataSource=null,this._stashBuffer=null,this._stashUsed=this._stashSize=this._bufferSize=this._stashByteStart=0,this._currentRange=null,this._speedSampler=null,this._isEarlyEofReconnecting=!1,this._onDataArrival=null,this._onSeeked=null,this._onError=null,this._onComplete=null,this._onRedirect=null,this._onRecoveredEarlyEof=null,this._extraData=null}isWorking(){return this._loader&&this._loader.isWorking()&&!this._paused}isPaused(){return this._paused}get status(){return this._loader.status}get extraData(){return this._extraData}set extraData(Ie){this._extraData=Ie}get onDataArrival(){return this._onDataArrival}set onDataArrival(Ie){this._onDataArrival=Ie}get onSeeked(){return this._onSeeked}set onSeeked(Ie){this._onSeeked=Ie}get onError(){return this._onError}set onError(Ie){this._onError=Ie}get onComplete(){return this._onComplete}set onComplete(Ie){this._onComplete=Ie}get onRedirect(){return this._onRedirect}set onRedirect(Ie){this._onRedirect=Ie}get onRecoveredEarlyEof(){return this._onRecoveredEarlyEof}set onRecoveredEarlyEof(Ie){this._onRecoveredEarlyEof=Ie}get currentURL(){return this._dataSource.url}get hasRedirect(){return this._redirectedURL!=null||this._dataSource.redirectedURL!=null}get currentRedirectedURL(){return this._redirectedURL||this._dataSource.redirectedURL}get currentSpeed(){return this._loaderClass===Fe?this._loader.currentSpeed:this._speedSampler.lastSecondKBps}get loaderType(){return this._loader.type}_selectSeekHandler(){let Ie=this._config;if(Ie.seekType==="range")this._seekHandler=new $e(this._config.rangeLoadZeroStart);else if(Ie.seekType==="param"){let Le=Ie.seekParamStart||"bstart",Me=Ie.seekParamEnd||"bend";this._seekHandler=new At(Le,Me)}else if(Ie.seekType==="custom"){if(typeof Ie.customSeekHandler!="function")throw new Ae("Custom seekType specified in config but invalid customSeekHandler!");this._seekHandler=new Ie.customSeekHandler}else throw new Ae(`Invalid seekType in config: ${Ie.seekType}`)}_selectLoader(){if(this._config.customLoader!=null)this._loaderClass=this._config.customLoader;else if(this._isWebSocketURL)this._loaderClass=Ue;else if(he.isSupported())this._loaderClass=he;else if(ce.isSupported())this._loaderClass=ce;else if(Fe.isSupported())this._loaderClass=Fe;else throw new we("Your browser doesn't support xhr with arraybuffer responseType!")}_createLoader(){this._loader=new this._loaderClass(this._seekHandler,this._config),this._loader.needStashBuffer===!1&&(this._enableStash=!1),this._loader.onContentLengthKnown=this._onContentLengthKnown.bind(this),this._loader.onURLRedirect=this._onURLRedirect.bind(this),this._loader.onDataArrival=this._onLoaderChunkArrival.bind(this),this._loader.onComplete=this._onLoaderComplete.bind(this),this._loader.onError=this._onLoaderError.bind(this)}open(Ie){this._currentRange={from:0,to:-1},Ie&&(this._currentRange.from=Ie),this._speedSampler.reset(),Ie||(this._fullRequestFlag=!0),this._loader.open(this._dataSource,Object.assign({},this._currentRange))}abort(){this._loader.abort(),this._paused&&(this._paused=!1,this._resumeFrom=0)}pause(){this.isWorking()&&(this._loader.abort(),this._stashUsed!==0?(this._resumeFrom=this._stashByteStart,this._currentRange.to=this._stashByteStart-1):this._resumeFrom=this._currentRange.to+1,this._stashUsed=0,this._stashByteStart=0,this._paused=!0)}resume(){if(this._paused){this._paused=!1;let Ie=this._resumeFrom;this._resumeFrom=0,this._internalSeek(Ie,!0)}}seek(Ie){this._paused=!1,this._stashUsed=0,this._stashByteStart=0,this._internalSeek(Ie,!0)}_internalSeek(Ie,Le){this._loader.isWorking()&&this._loader.abort(),this._flushStashBuffer(Le),this._loader.destroy(),this._loader=null;let Me={from:Ie,to:-1};this._currentRange={from:Me.from,to:-1},this._speedSampler.reset(),this._stashSize=this._stashInitialSize,this._createLoader(),this._loader.open(this._dataSource,Me),this._onSeeked&&this._onSeeked()}updateUrl(Ie){if(!Ie||typeof Ie!="string"||Ie.length===0)throw new Ae("Url must be a non-empty string!");this._dataSource.url=Ie}_expandBuffer(Ie){let Le=this._stashSize;for(;Le+1024*1024*10){let Qe=new Uint8Array(this._stashBuffer,0,this._stashUsed);new Uint8Array(Me,0,Le).set(Qe,0)}this._stashBuffer=Me,this._bufferSize=Le}_normalizeSpeed(Ie){let Le=this._speedNormalizeList,Me=Le.length-1,Qe=0,nt=0,kt=Me;if(Ie=Le[Qe]&&Ie=512&&Ie<=1024?Le=Math.floor(Ie*1.5):Le=Ie*2,Le>8192&&(Le=8192);let Me=Le*1024+1024*1024*1;this._bufferSize0){let kt=this._stashBuffer.slice(0,this._stashUsed),Ht=this._dispatchChunks(kt,this._stashByteStart);if(Ht0){let Ln=new Uint8Array(kt,Ht);nt.set(Ln,0),this._stashUsed=Ln.byteLength,this._stashByteStart+=Ht}}else this._stashUsed=0,this._stashByteStart+=Ht;this._stashUsed+Ie.byteLength>this._bufferSize&&(this._expandBuffer(this._stashUsed+Ie.byteLength),nt=new Uint8Array(this._stashBuffer,0,this._bufferSize)),nt.set(new Uint8Array(Ie),this._stashUsed),this._stashUsed+=Ie.byteLength}else{let kt=this._dispatchChunks(Ie,Le);if(ktthis._bufferSize&&(this._expandBuffer(Ht),nt=new Uint8Array(this._stashBuffer,0,this._bufferSize)),nt.set(new Uint8Array(Ie,kt),0),this._stashUsed+=Ht,this._stashByteStart=Le+kt}}}else if(this._stashUsed===0){let nt=this._dispatchChunks(Ie,Le);if(ntthis._bufferSize&&this._expandBuffer(kt),new Uint8Array(this._stashBuffer,0,this._bufferSize).set(new Uint8Array(Ie,nt),0),this._stashUsed+=kt,this._stashByteStart=Le+nt}}else{this._stashUsed+Ie.byteLength>this._bufferSize&&this._expandBuffer(this._stashUsed+Ie.byteLength);let nt=new Uint8Array(this._stashBuffer,0,this._bufferSize);nt.set(new Uint8Array(Ie),this._stashUsed),this._stashUsed+=Ie.byteLength;let kt=this._dispatchChunks(this._stashBuffer.slice(0,this._stashUsed),this._stashByteStart);if(kt0){let Ht=new Uint8Array(this._stashBuffer,kt);nt.set(Ht,0)}this._stashUsed-=kt,this._stashByteStart+=kt}}_flushStashBuffer(Ie){if(this._stashUsed>0){let Le=this._stashBuffer.slice(0,this._stashUsed),Me=this._dispatchChunks(Le,this._stashByteStart),Qe=Le.byteLength-Me;if(Me0){let nt=new Uint8Array(this._stashBuffer,0,this._bufferSize),kt=new Uint8Array(Le,Me);nt.set(kt,0),this._stashUsed=kt.byteLength,this._stashByteStart+=Me}return 0}return this._stashUsed=0,this._stashByteStart=0,Qe}return 0}_onLoaderComplete(Ie,Le){this._flushStashBuffer(!0),this._onComplete&&this._onComplete(this._extraData)}_onLoaderError(Ie,Le){switch(Pe.e(this.TAG,`Loader error, code = ${Le.code}, msg = ${Le.msg}`),this._flushStashBuffer(!1),this._isEarlyEofReconnecting&&(this._isEarlyEofReconnecting=!1,Ie=ue.UNRECOVERABLE_EARLY_EOF),Ie){case ue.EARLY_EOF:{if(!this._config.isLive&&this._totalLength){let Me=this._currentRange.to+1;Me0){let Le=Lt.getConfig();Ie.emit("change",Le)}}static registerListener(Ie){Lt.emitter.addListener("change",Ie)}static removeListener(Ie){Lt.emitter.removeListener("change",Ie)}static addLogListener(Ie){Pe.emitter.addListener("log",Ie),Pe.emitter.listenerCount("log")>0&&(Pe.ENABLE_CALLBACK=!0,Lt._notifyChange())}static removeLogListener(Ie){Pe.emitter.removeListener("log",Ie),Pe.emitter.listenerCount("log")===0&&(Pe.ENABLE_CALLBACK=!1,Lt._notifyChange())}}Lt.emitter=new(Ce());var Pt=Lt;class Bt{constructor(){this.mimeType=null,this.duration=null,this.hasAudio=null,this.hasVideo=null,this.audioCodec=null,this.videoCodec=null,this.audioDataRate=null,this.videoDataRate=null,this.audioSampleRate=null,this.audioChannelCount=null,this.width=null,this.height=null,this.fps=null,this.profile=null,this.level=null,this.refFrames=null,this.chromaFormat=null,this.sarNum=null,this.sarDen=null,this.metadata=null,this.segments=null,this.segmentCount=null,this.hasKeyframesIndex=null,this.keyframesIndex=null}isComplete(){let Ie=this.hasAudio===!1||this.hasAudio===!0&&this.audioCodec!=null&&this.audioSampleRate!=null&&this.audioChannelCount!=null,Le=this.hasVideo===!1||this.hasVideo===!0&&this.videoCodec!=null&&this.width!=null&&this.height!=null&&this.fps!=null&&this.profile!=null&&this.level!=null&&this.refFrames!=null&&this.chromaFormat!=null&&this.sarNum!=null&&this.sarDen!=null;return this.mimeType!=null&&this.duration!=null&&this.metadata!=null&&this.hasKeyframesIndex!=null&&Ie&&Le}isSeekable(){return this.hasKeyframesIndex===!0}getNearestKeyframe(Ie){if(this.keyframesIndex==null)return null;let Le=this.keyframesIndex,Me=this._search(Le.times,Ie);return{index:Me,milliseconds:Le.times[Me],fileposition:Le.filepositions[Me]}}_search(Ie,Le){let Me=0,Qe=Ie.length-1,nt=0,kt=0,Ht=Qe;for(Le=Ie[nt]&&Le=128){Ie.push(String.fromCharCode(nt&65535)),Me+=2;continue}}}else if(Le[Me]<240){if(wn(Le,Me,2)){let nt=(Le[Me]&15)<<12|(Le[Me+1]&63)<<6|Le[Me+2]&63;if(nt>=2048&&(nt&63488)!==55296){Ie.push(String.fromCharCode(nt&65535)),Me+=3;continue}}}else if(Le[Me]<248&&wn(Le,Me,3)){let nt=(Le[Me]&7)<<18|(Le[Me+1]&63)<<12|(Le[Me+2]&63)<<6|Le[Me+3]&63;if(nt>65536&&nt<1114112){nt-=65536,Ie.push(String.fromCharCode(nt>>>10|55296)),Ie.push(String.fromCharCode(nt&1023|56320)),Me+=4;continue}}}Ie.push("\uFFFD"),++Me}return Ie.join("")}var $n=Mn;let qt=function(){let Qt=new ArrayBuffer(2);return new DataView(Qt).setInt16(0,256,!0),new Int16Array(Qt)[0]===256}();class Fn{static parseScriptData(Ie,Le,Me){let Qe={};try{let nt=Fn.parseValue(Ie,Le,Me),kt=Fn.parseValue(Ie,Le+nt.size,Me-nt.size);Qe[nt.data]=kt.data}catch(nt){Pe.e("AMF",nt.toString())}return Qe}static parseObject(Ie,Le,Me){if(Me<3)throw new me("Data not enough when parse ScriptDataObject");let Qe=Fn.parseString(Ie,Le,Me),nt=Fn.parseValue(Ie,Le+Qe.size,Me-Qe.size),kt=nt.objectEnd;return{data:{name:Qe.data,value:nt.data},size:Qe.size+nt.size,objectEnd:kt}}static parseVariable(Ie,Le,Me){return Fn.parseObject(Ie,Le,Me)}static parseString(Ie,Le,Me){if(Me<2)throw new me("Data not enough when parse String");let nt=new DataView(Ie,Le,Me).getUint16(0,!qt),kt;return nt>0?kt=$n(new Uint8Array(Ie,Le+2,nt)):kt="",{data:kt,size:2+nt}}static parseLongString(Ie,Le,Me){if(Me<4)throw new me("Data not enough when parse LongString");let nt=new DataView(Ie,Le,Me).getUint32(0,!qt),kt;return nt>0?kt=$n(new Uint8Array(Ie,Le+4,nt)):kt="",{data:kt,size:4+nt}}static parseDate(Ie,Le,Me){if(Me<10)throw new me("Data size invalid when parse Date");let Qe=new DataView(Ie,Le,Me),nt=Qe.getFloat64(0,!qt),kt=Qe.getInt16(8,!qt);return nt+=kt*60*1e3,{data:new Date(nt),size:10}}static parseValue(Ie,Le,Me){if(Me<1)throw new me("Data not enough when parse Value");let Qe=new DataView(Ie,Le,Me),nt=1,kt=Qe.getUint8(0),Ht,Ln=!1;try{switch(kt){case 0:Ht=Qe.getFloat64(1,!qt),nt+=8;break;case 1:{Ht=!!Qe.getUint8(1),nt+=1;break}case 2:{let vn=Fn.parseString(Ie,Le+1,Me-1);Ht=vn.data,nt+=vn.size;break}case 3:{Ht={};let vn=0;for((Qe.getUint32(Me-4,!qt)&16777215)===9&&(vn=3);nt32)throw new Ae("ExpGolomb: readBits() bits exceeded max 32bits!");if(Ie<=this._current_word_bits_left){let kt=this._current_word>>>32-Ie;return this._current_word<<=Ie,this._current_word_bits_left-=Ie,kt}let Le=this._current_word_bits_left?this._current_word:0;Le=Le>>>32-this._current_word_bits_left;let Me=Ie-this._current_word_bits_left;this._fillCurrentWord();let Qe=Math.min(Me,this._current_word_bits_left),nt=this._current_word>>>32-Qe;return this._current_word<<=Qe,this._current_word_bits_left-=Qe,Le=Le<>>Ie)return this._current_word<<=Ie,this._current_word_bits_left-=Ie,Ie;return this._fillCurrentWord(),Ie+this._skipLeadingZero()}readUEG(){let Ie=this._skipLeadingZero();return this.readBits(Ie+1)-1}readSEG(){let Ie=this.readUEG();return Ie&1?Ie+1>>>1:-1*(Ie>>>1)}}var yr=ar;class jn{static _ebsp2rbsp(Ie){let Le=Ie,Me=Le.byteLength,Qe=new Uint8Array(Me),nt=0;for(let kt=0;kt=2&&Le[kt]===3&&Le[kt-1]===0&&Le[kt-2]===0||(Qe[nt]=Le[kt],nt++);return new Uint8Array(Qe.buffer,0,nt)}static parseSPS(Ie){let Le=jn._ebsp2rbsp(Ie),Me=new yr(Le);Me.readByte();let Qe=Me.readByte();Me.readByte();let nt=Me.readByte();Me.readUEG();let kt=jn.getProfileString(Qe),Ht=jn.getLevelString(nt),Ln=1,vn=420,nr=[0,420,422,444],ir=8;if((Qe===100||Qe===110||Qe===122||Qe===244||Qe===44||Qe===83||Qe===86||Qe===118||Qe===128||Qe===138||Qe===144)&&(Ln=Me.readUEG(),Ln===3&&Me.readBits(1),Ln<=3&&(vn=nr[Ln]),ir=Me.readUEG()+8,Me.readUEG(),Me.readBits(1),Me.readBool())){let Ni=Ln!==3?8:12;for(let gi=0;gi0&&Ni<16?(La=gi[Ni-1],oa=to[Ni-1]):Ni===255&&(La=Me.readByte()<<8|Me.readByte(),oa=Me.readByte()<<8|Me.readByte())}if(Me.readBool()&&Me.readBool(),Me.readBool()&&(Me.readBits(4),Me.readBool()&&Me.readBits(24)),Me.readBool()&&(Me.readUEG(),Me.readUEG()),Me.readBool()){let Ni=Me.readBits(32),gi=Me.readBits(32);dr=Me.readBool(),Gn=gi,Vr=Ni*2,sr=Gn/Vr}}let Ba=1;(La!==1||oa!==1)&&(Ba=La/oa);let Ci=0,zi=0;if(Ln===0)Ci=1,zi=2-pa;else{let Ni=Ln===3?1:2,gi=Ln===1?2:1;Ci=Ni,zi=gi*(2-pa)}let Ki=(ra+1)*16,ei=(2-pa)*((ia+1)*16);Ki-=(lr+kn)*Ci,ei-=(_r+Xr)*zi;let ni=Math.ceil(Ki*Ba);return Me.destroy(),Me=null,{profile_string:kt,level_string:Ht,bit_depth:ir,ref_frames:Br,chroma_format:vn,chroma_format_string:jn.getChromaFormatString(vn),frame_rate:{fixed:dr,fps:sr,fps_den:Vr,fps_num:Gn},sar_ratio:{width:La,height:oa},codec_size:{width:Ki,height:ei},present_size:{width:ni,height:ei}}}static _skipScalingList(Ie,Le){let Me=8,Qe=8,nt=0;for(let kt=0;kt>>8&255|(Qt&255)<<8}function yn(Qt){return(Qt&4278190080)>>>24|(Qt&16711680)>>>8|(Qt&65280)<<8|(Qt&255)<<24}function Ft(Qt,Ie){return Qt[Ie]<<24|Qt[Ie+1]<<16|Qt[Ie+2]<<8|Qt[Ie+3]}class Ut{constructor(Ie,Le){this.TAG="FLVDemuxer",this._config=Le,this._onError=null,this._onMediaInfo=null,this._onMetaDataArrived=null,this._onScriptDataArrived=null,this._onTrackMetadata=null,this._onDataAvailable=null,this._dataOffset=Ie.dataOffset,this._firstParse=!0,this._dispatch=!1,this._hasAudio=Ie.hasAudioTrack,this._hasVideo=Ie.hasVideoTrack,this._hasAudioFlagOverrided=!1,this._hasVideoFlagOverrided=!1,this._audioInitialMetadataDispatched=!1,this._videoInitialMetadataDispatched=!1,this._mediaInfo=new un,this._mediaInfo.hasAudio=this._hasAudio,this._mediaInfo.hasVideo=this._hasVideo,this._metadata=null,this._audioMetadata=null,this._videoMetadata=null,this._naluLengthSize=4,this._timestampBase=0,this._timescale=1e3,this._duration=0,this._durationOverrided=!1,this._referenceFrameRate={fixed:!0,fps:23.976,fps_num:23976,fps_den:1e3},this._flvSoundRateTable=[5500,11025,22050,44100,48e3],this._mpegSamplingRates=[96e3,88200,64e3,48e3,44100,32e3,24e3,22050,16e3,12e3,11025,8e3,7350],this._mpegAudioV10SampleRateTable=[44100,48e3,32e3,0],this._mpegAudioV20SampleRateTable=[22050,24e3,16e3,0],this._mpegAudioV25SampleRateTable=[11025,12e3,8e3,0],this._mpegAudioL1BitRateTable=[0,32,64,96,128,160,192,224,256,288,320,352,384,416,448,-1],this._mpegAudioL2BitRateTable=[0,32,48,56,64,80,96,112,128,160,192,224,256,320,384,-1],this._mpegAudioL3BitRateTable=[0,32,40,48,56,64,80,96,112,128,160,192,224,256,320,-1],this._videoTrack={type:"video",id:1,sequenceNumber:0,samples:[],length:0},this._audioTrack={type:"audio",id:2,sequenceNumber:0,samples:[],length:0},this._littleEndian=function(){let Me=new ArrayBuffer(2);return new DataView(Me).setInt16(0,256,!0),new Int16Array(Me)[0]===256}()}destroy(){this._mediaInfo=null,this._metadata=null,this._audioMetadata=null,this._videoMetadata=null,this._videoTrack=null,this._audioTrack=null,this._onError=null,this._onMediaInfo=null,this._onMetaDataArrived=null,this._onScriptDataArrived=null,this._onTrackMetadata=null,this._onDataAvailable=null}static probe(Ie){let Le=new Uint8Array(Ie),Me={match:!1};if(Le[0]!==70||Le[1]!==76||Le[2]!==86||Le[3]!==1)return Me;let Qe=(Le[4]&4)>>>2!==0,nt=(Le[4]&1)!==0,kt=Ft(Le,5);return kt<9?Me:{match:!0,consumed:kt,dataOffset:kt,hasAudioTrack:Qe,hasVideoTrack:nt}}bindDataSource(Ie){return Ie.onDataArrival=this.parseChunks.bind(this),this}get onTrackMetadata(){return this._onTrackMetadata}set onTrackMetadata(Ie){this._onTrackMetadata=Ie}get onMediaInfo(){return this._onMediaInfo}set onMediaInfo(Ie){this._onMediaInfo=Ie}get onMetaDataArrived(){return this._onMetaDataArrived}set onMetaDataArrived(Ie){this._onMetaDataArrived=Ie}get onScriptDataArrived(){return this._onScriptDataArrived}set onScriptDataArrived(Ie){this._onScriptDataArrived=Ie}get onError(){return this._onError}set onError(Ie){this._onError=Ie}get onDataAvailable(){return this._onDataAvailable}set onDataAvailable(Ie){this._onDataAvailable=Ie}get timestampBase(){return this._timestampBase}set timestampBase(Ie){this._timestampBase=Ie}get overridedDuration(){return this._duration}set overridedDuration(Ie){this._durationOverrided=!0,this._duration=Ie,this._mediaInfo.duration=Ie}set overridedHasAudio(Ie){this._hasAudioFlagOverrided=!0,this._hasAudio=Ie,this._mediaInfo.hasAudio=Ie}set overridedHasVideo(Ie){this._hasVideoFlagOverrided=!0,this._hasVideo=Ie,this._mediaInfo.hasVideo=Ie}resetMediaInfo(){this._mediaInfo=new un}_isInitialMetadataDispatched(){return this._hasAudio&&this._hasVideo?this._audioInitialMetadataDispatched&&this._videoInitialMetadataDispatched:this._hasAudio&&!this._hasVideo?this._audioInitialMetadataDispatched:!this._hasAudio&&this._hasVideo?this._videoInitialMetadataDispatched:!1}parseChunks(Ie,Le){if(!this._onError||!this._onMediaInfo||!this._onTrackMetadata||!this._onDataAvailable)throw new me("Flv: onError & onMediaInfo & onTrackMetadata & onDataAvailable callback must be specified");let Me=0,Qe=this._littleEndian;if(Le===0)if(Ie.byteLength>13)Me=Ut.probe(Ie).dataOffset;else return 0;for(this._firstParse&&(this._firstParse=!1,Le+Me!==this._dataOffset&&Pe.w(this.TAG,"First time parsing but chunk byteStart invalid!"),new DataView(Ie,Me).getUint32(0,!Qe)!==0&&Pe.w(this.TAG,"PrevTagSize0 !== 0 !!!"),Me+=4);MeIe.byteLength)break;let kt=nt.getUint8(0),Ht=nt.getUint32(0,!Qe)&16777215;if(Me+11+Ht+4>Ie.byteLength)break;if(kt!==8&&kt!==9&&kt!==18){Pe.w(this.TAG,`Unsupported tag type ${kt}, skipped`),Me+=11+Ht+4;continue}let Ln=nt.getUint8(4),vn=nt.getUint8(5),nr=nt.getUint8(6),ir=nt.getUint8(7),ta=nr|vn<<8|Ln<<16|ir<<24;(nt.getUint32(7,!Qe)&16777215)!==0&&Pe.w(this.TAG,"Meet tag which has StreamID != 0!");let ra=Me+11;switch(kt){case 8:this._parseAudioData(Ie,ra,Ht,ta);break;case 9:this._parseVideoData(Ie,ra,Ht,ta,Le+Me);break;case 18:this._parseScriptData(Ie,ra,Ht);break}let ia=nt.getUint32(11+Ht,!Qe);ia!==11+Ht&&Pe.w(this.TAG,`Invalid PrevTagSize ${ia}`),Me+=11+Ht+4}return this._isInitialMetadataDispatched()&&this._dispatch&&(this._audioTrack.length||this._videoTrack.length)&&this._onDataAvailable(this._audioTrack,this._videoTrack),Me}_parseScriptData(Ie,Le,Me){let Qe=mn.parseScriptData(Ie,Le,Me);if(Qe.hasOwnProperty("onMetaData")){if(Qe.onMetaData==null||typeof Qe.onMetaData!="object"){Pe.w(this.TAG,"Invalid onMetaData structure!");return}this._metadata&&Pe.w(this.TAG,"Found another onMetaData tag!"),this._metadata=Qe;let nt=this._metadata.onMetaData;if(this._onMetaDataArrived&&this._onMetaDataArrived(Object.assign({},nt)),typeof nt.hasAudio=="boolean"&&this._hasAudioFlagOverrided===!1&&(this._hasAudio=nt.hasAudio,this._mediaInfo.hasAudio=this._hasAudio),typeof nt.hasVideo=="boolean"&&this._hasVideoFlagOverrided===!1&&(this._hasVideo=nt.hasVideo,this._mediaInfo.hasVideo=this._hasVideo),typeof nt.audiodatarate=="number"&&(this._mediaInfo.audioDataRate=nt.audiodatarate),typeof nt.videodatarate=="number"&&(this._mediaInfo.videoDataRate=nt.videodatarate),typeof nt.width=="number"&&(this._mediaInfo.width=nt.width),typeof nt.height=="number"&&(this._mediaInfo.height=nt.height),typeof nt.duration=="number"){if(!this._durationOverrided){let kt=Math.floor(nt.duration*this._timescale);this._duration=kt,this._mediaInfo.duration=kt}}else this._mediaInfo.duration=0;if(typeof nt.framerate=="number"){let kt=Math.floor(nt.framerate*1e3);if(kt>0){let Ht=kt/1e3;this._referenceFrameRate.fixed=!0,this._referenceFrameRate.fps=Ht,this._referenceFrameRate.fps_num=kt,this._referenceFrameRate.fps_den=1e3,this._mediaInfo.fps=Ht}}if(typeof nt.keyframes=="object"){this._mediaInfo.hasKeyframesIndex=!0;let kt=nt.keyframes;this._mediaInfo.keyframesIndex=this._parseKeyframesIndex(kt),nt.keyframes=null}else this._mediaInfo.hasKeyframesIndex=!1;this._dispatch=!1,this._mediaInfo.metadata=nt,Pe.v(this.TAG,"Parsed onMetaData"),this._mediaInfo.isComplete()&&this._onMediaInfo(this._mediaInfo)}Object.keys(Qe).length>0&&this._onScriptDataArrived&&this._onScriptDataArrived(Object.assign({},Qe))}_parseKeyframesIndex(Ie){let Le=[],Me=[];for(let Qe=1;Qe>>4;if(Ln!==2&&Ln!==10){this._onError(Jt.CODEC_UNSUPPORTED,"Flv: Unsupported audio codec idx: "+Ln);return}let vn=0,nr=(Ht&12)>>>2;if(nr>=0&&nr<=4)vn=this._flvSoundRateTable[nr];else{this._onError(Jt.FORMAT_ERROR,"Flv: Invalid audio sample rate idx: "+nr);return}let ir=(Ht&2)>>>1,ta=Ht&1,Br=this._audioMetadata,ra=this._audioTrack;if(Br||(this._hasAudio===!1&&this._hasAudioFlagOverrided===!1&&(this._hasAudio=!0,this._mediaInfo.hasAudio=!0),Br=this._audioMetadata={},Br.type="audio",Br.id=ra.id,Br.timescale=this._timescale,Br.duration=this._duration,Br.audioSampleRate=vn,Br.channelCount=ta===0?1:2),Ln===10){let ia=this._parseAACAudioData(Ie,Le+1,Me-1);if(ia==null)return;if(ia.packetType===0){Br.config&&Pe.w(this.TAG,"Found another AudioSpecificConfig!");let pa=ia.data;Br.audioSampleRate=pa.samplingRate,Br.channelCount=pa.channelCount,Br.codec=pa.codec,Br.originalCodec=pa.originalCodec,Br.config=pa.config,Br.refSampleDuration=1024/Br.audioSampleRate*Br.timescale,Pe.v(this.TAG,"Parsed AudioSpecificConfig"),this._isInitialMetadataDispatched()?this._dispatch&&(this._audioTrack.length||this._videoTrack.length)&&this._onDataAvailable(this._audioTrack,this._videoTrack):this._audioInitialMetadataDispatched=!0,this._dispatch=!1,this._onTrackMetadata("audio",Br);let lr=this._mediaInfo;lr.audioCodec=Br.originalCodec,lr.audioSampleRate=Br.audioSampleRate,lr.audioChannelCount=Br.channelCount,lr.hasVideo?lr.videoCodec!=null&&(lr.mimeType='video/x-flv; codecs="'+lr.videoCodec+","+lr.audioCodec+'"'):lr.mimeType='video/x-flv; codecs="'+lr.audioCodec+'"',lr.isComplete()&&this._onMediaInfo(lr)}else if(ia.packetType===1){let pa=this._timestampBase+Qe,lr={unit:ia.data,length:ia.data.byteLength,dts:pa,pts:pa};ra.samples.push(lr),ra.length+=ia.data.length}else Pe.e(this.TAG,`Flv: Unsupported AAC data type ${ia.packetType}`)}else if(Ln===2){if(!Br.codec){let kn=this._parseMP3AudioData(Ie,Le+1,Me-1,!0);if(kn==null)return;Br.audioSampleRate=kn.samplingRate,Br.channelCount=kn.channelCount,Br.codec=kn.codec,Br.originalCodec=kn.originalCodec,Br.refSampleDuration=1152/Br.audioSampleRate*Br.timescale,Pe.v(this.TAG,"Parsed MPEG Audio Frame Header"),this._audioInitialMetadataDispatched=!0,this._onTrackMetadata("audio",Br);let _r=this._mediaInfo;_r.audioCodec=Br.codec,_r.audioSampleRate=Br.audioSampleRate,_r.audioChannelCount=Br.channelCount,_r.audioDataRate=kn.bitRate,_r.hasVideo?_r.videoCodec!=null&&(_r.mimeType='video/x-flv; codecs="'+_r.videoCodec+","+_r.audioCodec+'"'):_r.mimeType='video/x-flv; codecs="'+_r.audioCodec+'"',_r.isComplete()&&this._onMediaInfo(_r)}let ia=this._parseMP3AudioData(Ie,Le+1,Me-1,!1);if(ia==null)return;let pa=this._timestampBase+Qe,lr={unit:ia,length:ia.byteLength,dts:pa,pts:pa};ra.samples.push(lr),ra.length+=ia.length}}_parseAACAudioData(Ie,Le,Me){if(Me<=1){Pe.w(this.TAG,"Flv: Invalid AAC packet, missing AACPacketType or/and Data!");return}let Qe={},nt=new Uint8Array(Ie,Le,Me);return Qe.packetType=nt[0],nt[0]===0?Qe.data=this._parseAACAudioSpecificConfig(Ie,Le+1,Me-1):Qe.data=nt.subarray(1),Qe}_parseAACAudioSpecificConfig(Ie,Le,Me){let Qe=new Uint8Array(Ie,Le,Me),nt=null,kt=0,Ht=0,Ln=null,vn=0,nr=null;if(kt=Ht=Qe[0]>>>3,vn=(Qe[0]&7)<<1|Qe[1]>>>7,vn<0||vn>=this._mpegSamplingRates.length){this._onError(Jt.FORMAT_ERROR,"Flv: AAC invalid sampling frequency index!");return}let ir=this._mpegSamplingRates[vn],ta=(Qe[1]&120)>>>3;if(ta<0||ta>=8){this._onError(Jt.FORMAT_ERROR,"Flv: AAC invalid channel configuration");return}kt===5&&(nr=(Qe[1]&7)<<1|Qe[2]>>>7,Ln=(Qe[2]&124)>>>2);let Br=self.navigator.userAgent.toLowerCase();return Br.indexOf("firefox")!==-1?vn>=6?(kt=5,nt=new Array(4),nr=vn-3):(kt=2,nt=new Array(2),nr=vn):Br.indexOf("android")!==-1?(kt=2,nt=new Array(2),nr=vn):(kt=5,nr=vn,nt=new Array(4),vn>=6?nr=vn-3:ta===1&&(kt=2,nt=new Array(2),nr=vn)),nt[0]=kt<<3,nt[0]|=(vn&15)>>>1,nt[1]=(vn&15)<<7,nt[1]|=(ta&15)<<3,kt===5&&(nt[1]|=(nr&15)>>>1,nt[2]=(nr&1)<<7,nt[2]|=8,nt[3]=0),{config:nt,samplingRate:ir,channelCount:ta,codec:"mp4a.40."+kt,originalCodec:"mp4a.40."+Ht}}_parseMP3AudioData(Ie,Le,Me,Qe){if(Me<4){Pe.w(this.TAG,"Flv: Invalid MP3 packet, header missing!");return}let nt=this._littleEndian,kt=new Uint8Array(Ie,Le,Me),Ht=null;if(Qe){if(kt[0]!==255)return;let Ln=kt[1]>>>3&3,vn=(kt[1]&6)>>1,nr=(kt[2]&240)>>>4,ir=(kt[2]&12)>>>2,Br=(kt[3]>>>6&3)!==3?2:1,ra=0,ia=0,pa=34,lr="mp3";switch(Ln){case 0:ra=this._mpegAudioV25SampleRateTable[ir];break;case 2:ra=this._mpegAudioV20SampleRateTable[ir];break;case 3:ra=this._mpegAudioV10SampleRateTable[ir];break}switch(vn){case 1:pa=34,nr>>4,Ln=kt&15;if(Ln!==7){this._onError(Jt.CODEC_UNSUPPORTED,`Flv: Unsupported codec in video frame: ${Ln}`);return}this._parseAVCVideoPacket(Ie,Le+1,Me-1,Qe,nt,Ht)}_parseAVCVideoPacket(Ie,Le,Me,Qe,nt,kt){if(Me<4){Pe.w(this.TAG,"Flv: Invalid AVC packet, missing AVCPacketType or/and CompositionTime");return}let Ht=this._littleEndian,Ln=new DataView(Ie,Le,Me),vn=Ln.getUint8(0),ir=(Ln.getUint32(0,!Ht)&16777215)<<8>>8;if(vn===0)this._parseAVCDecoderConfigurationRecord(Ie,Le+4,Me-4);else if(vn===1)this._parseAVCVideoData(Ie,Le+4,Me-4,Qe,nt,kt,ir);else if(vn!==2){this._onError(Jt.FORMAT_ERROR,`Flv: Invalid video packet type ${vn}`);return}}_parseAVCDecoderConfigurationRecord(Ie,Le,Me){if(Me<7){Pe.w(this.TAG,"Flv: Invalid AVCDecoderConfigurationRecord, lack of data!");return}let Qe=this._videoMetadata,nt=this._videoTrack,kt=this._littleEndian,Ht=new DataView(Ie,Le,Me);Qe?typeof Qe.avcc!="undefined"&&Pe.w(this.TAG,"Found another AVCDecoderConfigurationRecord!"):(this._hasVideo===!1&&this._hasVideoFlagOverrided===!1&&(this._hasVideo=!0,this._mediaInfo.hasVideo=!0),Qe=this._videoMetadata={},Qe.type="video",Qe.id=nt.id,Qe.timescale=this._timescale,Qe.duration=this._duration);let Ln=Ht.getUint8(0),vn=Ht.getUint8(1),nr=Ht.getUint8(2),ir=Ht.getUint8(3);if(Ln!==1||vn===0){this._onError(Jt.FORMAT_ERROR,"Flv: Invalid AVCDecoderConfigurationRecord");return}if(this._naluLengthSize=(Ht.getUint8(4)&3)+1,this._naluLengthSize!==3&&this._naluLengthSize!==4){this._onError(Jt.FORMAT_ERROR,`Flv: Strange NaluLengthSizeMinusOne: ${this._naluLengthSize-1}`);return}let ta=Ht.getUint8(5)&31;if(ta===0){this._onError(Jt.FORMAT_ERROR,"Flv: Invalid AVCDecoderConfigurationRecord: No SPS");return}else ta>1&&Pe.w(this.TAG,`Flv: Strange AVCDecoderConfigurationRecord: SPS Count = ${ta}`);let Br=6;for(let ia=0;ia1&&Pe.w(this.TAG,`Flv: Strange AVCDecoderConfigurationRecord: PPS Count = ${ra}`);Br++;for(let ia=0;ia=Me){Pe.w(this.TAG,`Malformed Nalu near timestamp ${ra}, offset = ${ta}, dataSize = ${Me}`);break}let pa=vn.getUint32(ta,!Ln);if(Br===3&&(pa>>>=8),pa>Me-Br){Pe.w(this.TAG,`Malformed Nalus near timestamp ${ra}, NaluSize > DataSize!`);return}let lr=vn.getUint8(ta+Br)&31;lr===5&&(ia=!0);let kn=new Uint8Array(Ie,Le+ta,Br+pa),_r={type:lr,data:kn};nr.push(_r),ir+=kn.byteLength,ta+=Br+pa}if(nr.length){let pa=this._videoTrack,lr={units:nr,length:ir,isKeyframe:ia,dts:ra,cts:Ht,pts:ra+Ht};ia&&(lr.fileposition=nt),pa.samples.push(lr),pa.length+=ir}}}var Pn=Ut;class rn{static init(){rn.types={avc1:[],avcC:[],btrt:[],dinf:[],dref:[],esds:[],ftyp:[],hdlr:[],mdat:[],mdhd:[],mdia:[],mfhd:[],minf:[],moof:[],moov:[],mp4a:[],mvex:[],mvhd:[],sdtp:[],stbl:[],stco:[],stsc:[],stsd:[],stsz:[],stts:[],tfdt:[],tfhd:[],traf:[],trak:[],trun:[],trex:[],tkhd:[],vmhd:[],smhd:[],".mp3":[]};for(let Le in rn.types)rn.types.hasOwnProperty(Le)&&(rn.types[Le]=[Le.charCodeAt(0),Le.charCodeAt(1),Le.charCodeAt(2),Le.charCodeAt(3)]);let Ie=rn.constants={};Ie.FTYP=new Uint8Array([105,115,111,109,0,0,0,1,105,115,111,109,97,118,99,49]),Ie.STSD_PREFIX=new Uint8Array([0,0,0,0,0,0,0,1]),Ie.STTS=new Uint8Array([0,0,0,0,0,0,0,0]),Ie.STSC=Ie.STCO=Ie.STTS,Ie.STSZ=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0]),Ie.HDLR_VIDEO=new Uint8Array([0,0,0,0,0,0,0,0,118,105,100,101,0,0,0,0,0,0,0,0,0,0,0,0,86,105,100,101,111,72,97,110,100,108,101,114,0]),Ie.HDLR_AUDIO=new Uint8Array([0,0,0,0,0,0,0,0,115,111,117,110,0,0,0,0,0,0,0,0,0,0,0,0,83,111,117,110,100,72,97,110,100,108,101,114,0]),Ie.DREF=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,12,117,114,108,32,0,0,0,1]),Ie.SMHD=new Uint8Array([0,0,0,0,0,0,0,0]),Ie.VMHD=new Uint8Array([0,0,0,1,0,0,0,0,0,0,0,0])}static box(Ie){let Le=8,Me=null,Qe=Array.prototype.slice.call(arguments,1),nt=Qe.length;for(let Ht=0;Ht>>24&255,Me[1]=Le>>>16&255,Me[2]=Le>>>8&255,Me[3]=Le&255,Me.set(Ie,4);let kt=8;for(let Ht=0;Ht>>24&255,Ie>>>16&255,Ie>>>8&255,Ie&255,Le>>>24&255,Le>>>16&255,Le>>>8&255,Le&255,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255]))}static trak(Ie){return rn.box(rn.types.trak,rn.tkhd(Ie),rn.mdia(Ie))}static tkhd(Ie){let Le=Ie.id,Me=Ie.duration,Qe=Ie.presentWidth,nt=Ie.presentHeight;return rn.box(rn.types.tkhd,new Uint8Array([0,0,0,7,0,0,0,0,0,0,0,0,Le>>>24&255,Le>>>16&255,Le>>>8&255,Le&255,0,0,0,0,Me>>>24&255,Me>>>16&255,Me>>>8&255,Me&255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,Qe>>>8&255,Qe&255,0,0,nt>>>8&255,nt&255,0,0]))}static mdia(Ie){return rn.box(rn.types.mdia,rn.mdhd(Ie),rn.hdlr(Ie),rn.minf(Ie))}static mdhd(Ie){let Le=Ie.timescale,Me=Ie.duration;return rn.box(rn.types.mdhd,new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,Le>>>24&255,Le>>>16&255,Le>>>8&255,Le&255,Me>>>24&255,Me>>>16&255,Me>>>8&255,Me&255,85,196,0,0]))}static hdlr(Ie){let Le=null;return Ie.type==="audio"?Le=rn.constants.HDLR_AUDIO:Le=rn.constants.HDLR_VIDEO,rn.box(rn.types.hdlr,Le)}static minf(Ie){let Le=null;return Ie.type==="audio"?Le=rn.box(rn.types.smhd,rn.constants.SMHD):Le=rn.box(rn.types.vmhd,rn.constants.VMHD),rn.box(rn.types.minf,Le,rn.dinf(),rn.stbl(Ie))}static dinf(){return rn.box(rn.types.dinf,rn.box(rn.types.dref,rn.constants.DREF))}static stbl(Ie){return rn.box(rn.types.stbl,rn.stsd(Ie),rn.box(rn.types.stts,rn.constants.STTS),rn.box(rn.types.stsc,rn.constants.STSC),rn.box(rn.types.stsz,rn.constants.STSZ),rn.box(rn.types.stco,rn.constants.STCO))}static stsd(Ie){return Ie.type==="audio"?Ie.codec==="mp3"?rn.box(rn.types.stsd,rn.constants.STSD_PREFIX,rn.mp3(Ie)):rn.box(rn.types.stsd,rn.constants.STSD_PREFIX,rn.mp4a(Ie)):rn.box(rn.types.stsd,rn.constants.STSD_PREFIX,rn.avc1(Ie))}static mp3(Ie){let Le=Ie.channelCount,Me=Ie.audioSampleRate,Qe=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,Le,0,16,0,0,0,0,Me>>>8&255,Me&255,0,0]);return rn.box(rn.types[".mp3"],Qe)}static mp4a(Ie){let Le=Ie.channelCount,Me=Ie.audioSampleRate,Qe=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,Le,0,16,0,0,0,0,Me>>>8&255,Me&255,0,0]);return rn.box(rn.types.mp4a,Qe,rn.esds(Ie))}static esds(Ie){let Le=Ie.config||[],Me=Le.length,Qe=new Uint8Array([0,0,0,0,3,23+Me,0,1,0,4,15+Me,64,21,0,0,0,0,0,0,0,0,0,0,0,5].concat([Me]).concat(Le).concat([6,1,2]));return rn.box(rn.types.esds,Qe)}static avc1(Ie){let Le=Ie.avcc,Me=Ie.codecWidth,Qe=Ie.codecHeight,nt=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,Me>>>8&255,Me&255,Qe>>>8&255,Qe&255,0,72,0,0,0,72,0,0,0,0,0,0,0,1,10,120,113,113,47,102,108,118,46,106,115,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,255,255]);return rn.box(rn.types.avc1,nt,rn.box(rn.types.avcC,Le))}static mvex(Ie){return rn.box(rn.types.mvex,rn.trex(Ie))}static trex(Ie){let Le=Ie.id,Me=new Uint8Array([0,0,0,0,Le>>>24&255,Le>>>16&255,Le>>>8&255,Le&255,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,1]);return rn.box(rn.types.trex,Me)}static moof(Ie,Le){return rn.box(rn.types.moof,rn.mfhd(Ie.sequenceNumber),rn.traf(Ie,Le))}static mfhd(Ie){let Le=new Uint8Array([0,0,0,0,Ie>>>24&255,Ie>>>16&255,Ie>>>8&255,Ie&255]);return rn.box(rn.types.mfhd,Le)}static traf(Ie,Le){let Me=Ie.id,Qe=rn.box(rn.types.tfhd,new Uint8Array([0,0,0,0,Me>>>24&255,Me>>>16&255,Me>>>8&255,Me&255])),nt=rn.box(rn.types.tfdt,new Uint8Array([0,0,0,0,Le>>>24&255,Le>>>16&255,Le>>>8&255,Le&255])),kt=rn.sdtp(Ie),Ht=rn.trun(Ie,kt.byteLength+16+16+8+16+8+8);return rn.box(rn.types.traf,Qe,nt,Ht,kt)}static sdtp(Ie){let Le=Ie.samples||[],Me=Le.length,Qe=new Uint8Array(4+Me);for(let nt=0;nt>>24&255,Qe>>>16&255,Qe>>>8&255,Qe&255,Le>>>24&255,Le>>>16&255,Le>>>8&255,Le&255],0);for(let Ht=0;Ht>>24&255,Ln>>>16&255,Ln>>>8&255,Ln&255,vn>>>24&255,vn>>>16&255,vn>>>8&255,vn&255,nr.isLeading<<2|nr.dependsOn,nr.isDependedOn<<6|nr.hasRedundancy<<4|nr.isNonSync,0,0,ir>>>24&255,ir>>>16&255,ir>>>8&255,ir&255],12+16*Ht)}return rn.box(rn.types.trun,kt)}static mdat(Ie){return rn.box(rn.types.mdat,Ie)}}rn.init();var Vt=rn;class Rn{static getSilentFrame(Ie,Le){if(Ie==="mp4a.40.2"){if(Le===1)return new Uint8Array([0,200,0,128,35,128]);if(Le===2)return new Uint8Array([33,0,73,144,2,25,0,35,128]);if(Le===3)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,142]);if(Le===4)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,128,44,128,8,2,56]);if(Le===5)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,130,48,4,153,0,33,144,2,56]);if(Le===6)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,130,48,4,153,0,33,144,2,0,178,0,32,8,224])}else{if(Le===1)return new Uint8Array([1,64,34,128,163,78,230,128,186,8,0,0,0,28,6,241,193,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94]);if(Le===2)return new Uint8Array([1,64,34,128,163,94,230,128,186,8,0,0,0,0,149,0,6,241,161,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94]);if(Le===3)return new Uint8Array([1,64,34,128,163,94,230,128,186,8,0,0,0,0,149,0,6,241,161,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94])}return null}}var Wr=Rn;class Qn{constructor(Ie,Le,Me,Qe,nt){this.dts=Ie,this.pts=Le,this.duration=Me,this.originalDts=Qe,this.isSyncPoint=nt,this.fileposition=null}}class qn{constructor(){this.beginDts=0,this.endDts=0,this.beginPts=0,this.endPts=0,this.originalBeginDts=0,this.originalEndDts=0,this.syncPoints=[],this.firstSample=null,this.lastSample=null}appendSyncPoint(Ie){Ie.isSyncPoint=!0,this.syncPoints.push(Ie)}}class cr{constructor(){this._list=[]}clear(){this._list=[]}appendArray(Ie){let Le=this._list;Ie.length!==0&&(Le.length>0&&Ie[0].originalDts=Le[nt].dts&&IeLe[Qe].lastSample.originalDts&&Ie=Le[Qe].lastSample.originalDts&&(Qe===Le.length-1||Qe0&&(nt=this._searchNearestSegmentBefore(Me.originalBeginDts)+1),this._lastAppendLocation=nt,this._list.splice(nt,0,Me)}getLastSegmentBefore(Ie){let Le=this._searchNearestSegmentBefore(Ie);return Le>=0?this._list[Le]:null}getLastSampleBefore(Ie){let Le=this.getLastSegmentBefore(Ie);return Le!=null?Le.lastSample:null}getLastSyncPointBefore(Ie){let Le=this._searchNearestSegmentBefore(Ie),Me=this._list[Le].syncPoints;for(;Me.length===0&&Le>0;)Le--,Me=this._list[Le].syncPoints;return Me.length>0?Me[Me.length-1]:null}}class An{constructor(Ie){this.TAG="MP4Remuxer",this._config=Ie,this._isLive=Ie.isLive===!0,this._dtsBase=-1,this._dtsBaseInited=!1,this._audioDtsBase=1/0,this._videoDtsBase=1/0,this._audioNextDts=void 0,this._videoNextDts=void 0,this._audioStashedLastSample=null,this._videoStashedLastSample=null,this._audioMeta=null,this._videoMeta=null,this._audioSegmentInfoList=new Sr("audio"),this._videoSegmentInfoList=new Sr("video"),this._onInitSegment=null,this._onMediaSegment=null,this._forceFirstIDR=!!(oe.chrome&&(oe.version.major<50||oe.version.major===50&&oe.version.build<2661)),this._fillSilentAfterSeek=oe.msedge||oe.msie,this._mp3UseMpegAudio=!oe.firefox,this._fillAudioTimestampGap=this._config.fixAudioTimestampGap}destroy(){this._dtsBase=-1,this._dtsBaseInited=!1,this._audioMeta=null,this._videoMeta=null,this._audioSegmentInfoList.clear(),this._audioSegmentInfoList=null,this._videoSegmentInfoList.clear(),this._videoSegmentInfoList=null,this._onInitSegment=null,this._onMediaSegment=null}bindDataSource(Ie){return Ie.onDataAvailable=this.remux.bind(this),Ie.onTrackMetadata=this._onTrackMetadataReceived.bind(this),this}get onInitSegment(){return this._onInitSegment}set onInitSegment(Ie){this._onInitSegment=Ie}get onMediaSegment(){return this._onMediaSegment}set onMediaSegment(Ie){this._onMediaSegment=Ie}insertDiscontinuity(){this._audioNextDts=this._videoNextDts=void 0}seek(Ie){this._audioStashedLastSample=null,this._videoStashedLastSample=null,this._videoSegmentInfoList.clear(),this._audioSegmentInfoList.clear()}remux(Ie,Le){if(!this._onMediaSegment)throw new me("MP4Remuxer: onMediaSegment callback must be specificed!");this._dtsBaseInited||this._calculateDtsBase(Ie,Le),this._remuxVideo(Le),this._remuxAudio(Ie)}_onTrackMetadataReceived(Ie,Le){let Me=null,Qe="mp4",nt=Le.codec;if(Ie==="audio")this._audioMeta=Le,Le.codec==="mp3"&&this._mp3UseMpegAudio?(Qe="mpeg",nt="",Me=new Uint8Array):Me=Vt.generateInitSegment(Le);else if(Ie==="video")this._videoMeta=Le,Me=Vt.generateInitSegment(Le);else return;if(!this._onInitSegment)throw new me("MP4Remuxer: onInitSegment callback must be specified!");this._onInitSegment(Ie,{type:Ie,data:Me.buffer,codec:nt,container:`${Ie}/${Qe}`,mediaDuration:Le.duration})}_calculateDtsBase(Ie,Le){this._dtsBaseInited||(Ie.samples&&Ie.samples.length&&(this._audioDtsBase=Ie.samples[0].dts),Le.samples&&Le.samples.length&&(this._videoDtsBase=Le.samples[0].dts),this._dtsBase=Math.min(this._audioDtsBase,this._videoDtsBase),this._dtsBaseInited=!0)}flushStashedSamples(){let Ie=this._videoStashedLastSample,Le=this._audioStashedLastSample,Me={type:"video",id:1,sequenceNumber:0,samples:[],length:0};Ie!=null&&(Me.samples.push(Ie),Me.length=Ie.length);let Qe={type:"audio",id:2,sequenceNumber:0,samples:[],length:0};Le!=null&&(Qe.samples.push(Le),Qe.length=Le.length),this._videoStashedLastSample=null,this._audioStashedLastSample=null,this._remuxVideo(Me,!0),this._remuxAudio(Qe,!0)}_remuxAudio(Ie,Le){if(this._audioMeta==null)return;let Me=Ie,Qe=Me.samples,nt,kt=-1,Ht=-1,Ln=-1,vn=this._audioMeta.refSampleDuration,nr=this._audioMeta.codec==="mp3"&&this._mp3UseMpegAudio,ir=this._dtsBaseInited&&this._audioNextDts===void 0,ta=!1;if(!Qe||Qe.length===0||Qe.length===1&&!Le)return;let Br=0,ra=null,ia=0;nr?(Br=0,ia=Me.length):(Br=8,ia=8+Me.length);let pa=null;if(Qe.length>1&&(pa=Qe.pop(),ia-=pa.length),this._audioStashedLastSample!=null){let oa=this._audioStashedLastSample;this._audioStashedLastSample=null,Qe.unshift(oa),ia+=oa.length}pa!=null&&(this._audioStashedLastSample=pa);let lr=Qe[0].dts-this._dtsBase;if(this._audioNextDts)nt=lr-this._audioNextDts;else if(this._audioSegmentInfoList.isEmpty())nt=0,this._fillSilentAfterSeek&&!this._videoSegmentInfoList.isEmpty()&&this._audioMeta.originalCodec!=="mp3"&&(ta=!0);else{let oa=this._audioSegmentInfoList.getLastSampleBefore(lr);if(oa!=null){let sr=lr-(oa.originalDts+oa.duration);sr<=3&&(sr=0);let dr=oa.dts+oa.duration+sr;nt=lr-dr}else nt=0}if(ta){let oa=lr-nt,sr=this._videoSegmentInfoList.getLastSegmentBefore(lr);if(sr!=null&&sr.beginDts=1?jr=kn[kn.length-1].duration:jr=Math.floor(vn);let Ba=!1,Ci=null;if(jr>vn*1.5&&this._audioMeta.codec!=="mp3"&&this._fillAudioTimestampGap&&!oe.safari){Ba=!0;let zi=Math.abs(jr-vn),Ki=Math.ceil(zi/vn),ei=Vr+vn;Pe.w(this.TAG,`Large audio timestamp gap detected, may cause AV sync to drift. Silent frames will be generated to avoid unsync. + `,Ml=new Blob([$l],{type:"text/html"}),Gu=URL.createObjectURL(Ml);(0,Bt.FH)(`${(Cc=y==null?void 0:y.detail)==null?void 0:Cc.name}_${(Yf=ae==null?void 0:ae.find(Tc=>(Tc==null?void 0:Tc.uuid)===re))==null?void 0:Yf.name}_${tn()().format("YYYYMMDD_HHmmss")}.html`,Gu),Df(!1);return}(0,Bt.FH)("",ar.Z.API_SERVER+`/api/knowledge/v2/export.json?subject_id=${(Ph=y==null?void 0:y.detail)==null?void 0:Ph.id}&fileType=${Wo.export}&parentNodeUuid=${re}`),Df(!1)})},ao.createElement(me.default.Item,{name:"export",label:"\u5BFC\u51FA\u683C\u5F0F",rules:[{required:!0,message:"\u8BF7\u9009\u62E9\u5BFC\u51FA\u683C\u5F0F"}]},ao.createElement(Ae.ZP.Group,{className:Wu.RadioGroupStyle,options:[{value:"xlsx",label:"Excel"},{value:"owl",label:"OWL"},{value:"rdf",label:"RDF"},{value:"xml",label:"XML"},{value:"html",label:"HTML"},{value:"pdf",label:"PDF"}]}))))))))};var EZ=(0,Ce.connect)(({pathsDetail:E,user:a,loading:y,globalSetting:x})=>({pathsDetail:E,user:a,globalSetting:x,loading:y.models.index}))(yZ),B0={wrap:"wrap___HuFFi",add:"add___GrP2R",dimensionalBall:"dimensionalBall___flm6B",archer:"archer___biVqC",svg:"svg___hXxGw",modal:"modal___DR9M_",mHead:"mHead___I923K",form:"form___W2fTe",mType:"mType___hoISa",listItem:"listItem___JCZwd"},eg={flex_box_center:"flex_box_center___aEG4A",flex_space_between:"flex_space_between___O70yE",flex_box_vertical_center:"flex_box_vertical_center___rEvY1",flex_box_center_end:"flex_box_center_end___Xp3ui",flex_box_column:"flex_box_column___McZmY",largeBall:"largeBall___SbxSR",middleBall:"middleBall___eKLzh",smallBall:"smallBall___r7xv5",largeBallDish:"largeBallDish___EeTGm",middleBallDish:"middleBallDish___hca4h",smallBallDish:"smallBallDish___rrHxf",smallBallGather:"smallBallGather___hHHqa",box:"box___yWjPn",spectrum:"spectrum___r9a7p",pedestal:"pedestal___Grjvz",spectrumHover:"spectrumHover___OibBM",pedestalHover:"pedestalHover___EcKUJ"};const xZ="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMjkxcHgiIGhlaWdodD0iMTk0cHgiIHZpZXdCb3g9IjAgMCAyOTEgMTk0IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPgogICAgPCEtLSBHZW5lcmF0b3I6IFNrZXRjaCA2MSAoODk1ODEpIC0gaHR0cHM6Ly9za2V0Y2guY29tIC0tPgogICAgPHRpdGxlPuWfuuW6pzwvdGl0bGU+CiAgICA8ZGVzYz5DcmVhdGVkIHdpdGggU2tldGNoLjwvZGVzYz4KICAgIDxkZWZzPgogICAgICAgIDxsaW5lYXJHcmFkaWVudCB4MT0iMjcuNzcyODY0MyUiIHkxPSI0My4xNzgwNjE3JSIgeDI9Ijk3LjIyMjIyMjIlIiB5Mj0iNTAlIiBpZD0ibGluZWFyR3JhZGllbnQtMSI+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiMzMTdDRDMiIG9mZnNldD0iMCUiPjwvc3RvcD4KICAgICAgICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iIzI3MkE5NSIgb2Zmc2V0PSIxMDAlIj48L3N0b3A+CiAgICAgICAgPC9saW5lYXJHcmFkaWVudD4KICAgICAgICA8bGluZWFyR3JhZGllbnQgeDE9IjE0LjI3MTI2ODMlIiB5MT0iMzEuNjQ0NzI5NyUiIHgyPSIxMDAlIiB5Mj0iNzMuMTEyMDA3OCUiIGlkPSJsaW5lYXJHcmFkaWVudC0yIj4KICAgICAgICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iIzI3NzFEQiIgb2Zmc2V0PSIwJSI+PC9zdG9wPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjMjg0REIwIiBvZmZzZXQ9IjEwMCUiPjwvc3RvcD4KICAgICAgICA8L2xpbmVhckdyYWRpZW50PgogICAgICAgIDxsaW5lYXJHcmFkaWVudCB4MT0iMTAwJSIgeTE9IjM1LjA0MTMwMTklIiB4Mj0iMCUiIHkyPSI2NS41NDY3MzEzJSIgaWQ9ImxpbmVhckdyYWRpZW50LTMiPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjMzA2NkI0IiBvZmZzZXQ9IjAlIj48L3N0b3A+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiMxNDM4OTQiIG9mZnNldD0iMTAwJSI+PC9zdG9wPgogICAgICAgIDwvbGluZWFyR3JhZGllbnQ+CiAgICAgICAgPGxpbmVhckdyYWRpZW50IHgxPSIyNy43NzI4NjQzJSIgeTE9IjQzLjE1NTA2NzMlIiB4Mj0iOTcuMjIyMjIyMiUiIHkyPSI1MCUiIGlkPSJsaW5lYXJHcmFkaWVudC00Ij4KICAgICAgICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iIzMxN0NEMyIgb2Zmc2V0PSIwJSI+PC9zdG9wPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjMjcyQTk1IiBvZmZzZXQ9IjEwMCUiPjwvc3RvcD4KICAgICAgICA8L2xpbmVhckdyYWRpZW50PgogICAgICAgIDxsaW5lYXJHcmFkaWVudCB4MT0iMCUiIHkxPSI1MCUiIHgyPSI1MCUiIHkyPSI2NC4yMTc0OTQ1JSIgaWQ9ImxpbmVhckdyYWRpZW50LTUiPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjMkY3MEM5IiBvZmZzZXQ9IjAlIj48L3N0b3A+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiM1QjVGRkYiIG9mZnNldD0iMTAwJSI+PC9zdG9wPgogICAgICAgIDwvbGluZWFyR3JhZGllbnQ+CiAgICAgICAgPHBvbHlnb24gaWQ9InBhdGgtNiIgcG9pbnRzPSIxNDQuNzQ1OSAxNi40Njc5NzAxIDI2MC4xMzI5MzUgNzIuOTI3OTU1NiAxNDYuMTg4MjM4IDEzOC43NTc4OTYgMzAuODAxMjAzMyA3Mi4yMDcxODk5Ij48L3BvbHlnb24+CiAgICAgICAgPGZpbHRlciB4PSItMS41JSIgeT0iLTIuOSUiIHdpZHRoPSIxMDMuMSUiIGhlaWdodD0iMTA1LjclIiBmaWx0ZXJVbml0cz0ib2JqZWN0Qm91bmRpbmdCb3giIGlkPSJmaWx0ZXItNyI+CiAgICAgICAgICAgIDxmZUdhdXNzaWFuQmx1ciBzdGREZXZpYXRpb249IjEiIGluPSJTb3VyY2VBbHBoYSIgcmVzdWx0PSJzaGFkb3dCbHVySW5uZXIxIj48L2ZlR2F1c3NpYW5CbHVyPgogICAgICAgICAgICA8ZmVPZmZzZXQgZHg9IjAiIGR5PSI1IiBpbj0ic2hhZG93Qmx1cklubmVyMSIgcmVzdWx0PSJzaGFkb3dPZmZzZXRJbm5lcjEiPjwvZmVPZmZzZXQ+CiAgICAgICAgICAgIDxmZUNvbXBvc2l0ZSBpbj0ic2hhZG93T2Zmc2V0SW5uZXIxIiBpbjI9IlNvdXJjZUFscGhhIiBvcGVyYXRvcj0iYXJpdGhtZXRpYyIgazI9Ii0xIiBrMz0iMSIgcmVzdWx0PSJzaGFkb3dJbm5lcklubmVyMSI+PC9mZUNvbXBvc2l0ZT4KICAgICAgICAgICAgPGZlQ29sb3JNYXRyaXggdmFsdWVzPSIwIDAgMCAwIDAuNzk2ODM2ODkgICAwIDAgMCAwIDAuOTc0NjYwMTA4ICAgMCAwIDAgMCAxICAwIDAgMCAwLjUgMCIgdHlwZT0ibWF0cml4IiBpbj0ic2hhZG93SW5uZXJJbm5lcjEiPjwvZmVDb2xvck1hdHJpeD4KICAgICAgICA8L2ZpbHRlcj4KICAgIDwvZGVmcz4KICAgIDxnIGlkPSLpobXpnaItMSIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9IjA4MjAtM0Tlm77osLEt5YiH5Zu+VjQuMCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTQ0OS4wMDAwMDAsIC0xMzQ0LjAwMDAwMCkiPgogICAgICAgICAgICA8ZyBpZD0i5Z+65bqnIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg0NDkuMDAwMDAwLCAxMzQ0LjAwMDAwMCkiPgogICAgICAgICAgICAgICAgPHBvbHlnb24gaWQ9IuefqeW9oiIgZmlsbD0idXJsKCNsaW5lYXJHcmFkaWVudC0xKSIgb3BhY2l0eT0iMC4zMjA4NzA1MzYiIHBvaW50cz0iMTQ0LjU4NDkwNiAzOC45MDI0MTk0IDI5MSAxMTAuNDY0MzA1IDE0Ni40MTUwOTQgMTkzLjkwMjQxOSAwIDEwOS41NTA3NDkiPjwvcG9seWdvbj4KICAgICAgICAgICAgICAgIDxwb2x5Z29uIGlkPSLnn6nlvaIiIGZpbGw9InVybCgjbGluZWFyR3JhZGllbnQtMikiIHBvaW50cz0iLTcuNTMxNzUzZS0xMyA3MC43NTEyNzkgMTQ2LjA3Njk5NCAxNTUuMjI1ODY2IDE0Ni4wNzY5OTQgMTc3Ljc5MzA4NSAtNy41MzE3NTNlLTEzIDkzLjMxODQ5NzMiPjwvcG9seWdvbj4KICAgICAgICAgICAgICAgIDxwb2x5Z29uIGlkPSLnn6nlvaIiIGZpbGw9InVybCgjbGluZWFyR3JhZGllbnQtMykiIHBvaW50cz0iMTQ2LjA3Njk5NCAxNTUuMjI1ODY2IDI5MC45MzQxMzggNzEuNjY2MTY2MiAyOTAuOTM0MTM4IDk0LjIzMzM4NDUgMTQ2LjA3Njk5NCAxNzcuNzkzMDg1Ij48L3BvbHlnb24+CiAgICAgICAgICAgICAgICA8cG9seWdvbiBpZD0i55+p5b2iIiBmaWxsPSJ1cmwoI2xpbmVhckdyYWRpZW50LTQpIiBwb2ludHM9IjE0NC41NTIxODIgLTUuODk5OTA5NzdlLTEzIDI5MC45MzQxMzggNzEuNjY2MTY2MiAxNDYuMzgxOTU2IDE1NS4yMjU4NjYgLTUuNjg0MzQxODllLTEzIDcwLjc1MTI3OSI+PC9wb2x5Z29uPgogICAgICAgICAgICAgICAgPGcgaWQ9IuefqeW9oiI+CiAgICAgICAgICAgICAgICAgICAgPHVzZSBmaWxsPSJ1cmwoI2xpbmVhckdyYWRpZW50LTUpIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIHhsaW5rOmhyZWY9IiNwYXRoLTYiPjwvdXNlPgogICAgICAgICAgICAgICAgICAgIDx1c2UgZmlsbD0iYmxhY2siIGZpbGwtb3BhY2l0eT0iMSIgZmlsdGVyPSJ1cmwoI2ZpbHRlci03KSIgeGxpbms6aHJlZj0iI3BhdGgtNiI+PC91c2U+CiAgICAgICAgICAgICAgICA8L2c+CiAgICAgICAgICAgIDwvZz4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==",wZ="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMjk1cHgiIGhlaWdodD0iMTk3cHgiIHZpZXdCb3g9IjAgMCAyOTUgMTk3IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPgogICAgPCEtLSBHZW5lcmF0b3I6IFNrZXRjaCA2MSAoODk1ODEpIC0gaHR0cHM6Ly9za2V0Y2guY29tIC0tPgogICAgPHRpdGxlPuW6leW6p+mAieS4rTwvdGl0bGU+CiAgICA8ZGVzYz5DcmVhdGVkIHdpdGggU2tldGNoLjwvZGVzYz4KICAgIDxkZWZzPgogICAgICAgIDxsaW5lYXJHcmFkaWVudCB4MT0iMjcuNzcyODY0MyUiIHkxPSI0My4xNTUwNjczJSIgeDI9Ijk3LjIyMjIyMjIlIiB5Mj0iNTAlIiBpZD0ibGluZWFyR3JhZGllbnQtMSI+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiMzMTdDRDMiIG9mZnNldD0iMCUiPjwvc3RvcD4KICAgICAgICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iIzI3MkE5NSIgb2Zmc2V0PSIxMDAlIj48L3N0b3A+CiAgICAgICAgPC9saW5lYXJHcmFkaWVudD4KICAgICAgICA8bGluZWFyR3JhZGllbnQgeDE9IjE0LjI3MTI2ODMlIiB5MT0iMzEuNjQ0NzI5NyUiIHgyPSIxMDAlIiB5Mj0iNzMuMTEyMDA3OCUiIGlkPSJsaW5lYXJHcmFkaWVudC0yIj4KICAgICAgICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iIzI3NzFEQiIgb2Zmc2V0PSIwJSI+PC9zdG9wPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjMjg0REIwIiBvZmZzZXQ9IjEwMCUiPjwvc3RvcD4KICAgICAgICA8L2xpbmVhckdyYWRpZW50PgogICAgICAgIDxsaW5lYXJHcmFkaWVudCB4MT0iMTAwJSIgeTE9IjM1LjA0MTMwMTklIiB4Mj0iMCUiIHkyPSI2NS41NDY3MzEzJSIgaWQ9ImxpbmVhckdyYWRpZW50LTMiPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjMzA2NkI0IiBvZmZzZXQ9IjAlIj48L3N0b3A+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiMxNDM4OTQiIG9mZnNldD0iMTAwJSI+PC9zdG9wPgogICAgICAgIDwvbGluZWFyR3JhZGllbnQ+CiAgICAgICAgPGxpbmVhckdyYWRpZW50IHgxPSI1MCUiIHkxPSI2LjA2MjU2MyUiIHgyPSI1MCUiIHkyPSI2NC40MjMxOTgxJSIgaWQ9ImxpbmVhckdyYWRpZW50LTQiPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjMkY3MEM5IiBvZmZzZXQ9IjAlIj48L3N0b3A+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiMyREUxRkQiIG9mZnNldD0iMTAwJSI+PC9zdG9wPgogICAgICAgIDwvbGluZWFyR3JhZGllbnQ+CiAgICAgICAgPHBvbHlnb24gaWQ9InBhdGgtNSIgcG9pbnRzPSIxNDYuMzI3NiAxNi42NDc5MjI2IDI2Mi45NzU1MTcgNzMuNzI0ODcwMiAxNDcuNzg1Njk5IDE0MC4yNzQxNjIgMzEuMTM3NzgxMSA3Mi45OTYyMjgzIj48L3BvbHlnb24+CiAgICAgICAgPGZpbHRlciB4PSItMS4xJSIgeT0iLTIuMCUiIHdpZHRoPSIxMDIuMiUiIGhlaWdodD0iMTA0LjAlIiBmaWx0ZXJVbml0cz0ib2JqZWN0Qm91bmRpbmdCb3giIGlkPSJmaWx0ZXItNiI+CiAgICAgICAgICAgIDxmZUdhdXNzaWFuQmx1ciBzdGREZXZpYXRpb249IjAuNSIgaW49IlNvdXJjZUFscGhhIiByZXN1bHQ9InNoYWRvd0JsdXJJbm5lcjEiPjwvZmVHYXVzc2lhbkJsdXI+CiAgICAgICAgICAgIDxmZU9mZnNldCBkeD0iMCIgZHk9IjQiIGluPSJzaGFkb3dCbHVySW5uZXIxIiByZXN1bHQ9InNoYWRvd09mZnNldElubmVyMSI+PC9mZU9mZnNldD4KICAgICAgICAgICAgPGZlQ29tcG9zaXRlIGluPSJzaGFkb3dPZmZzZXRJbm5lcjEiIGluMj0iU291cmNlQWxwaGEiIG9wZXJhdG9yPSJhcml0aG1ldGljIiBrMj0iLTEiIGszPSIxIiByZXN1bHQ9InNoYWRvd0lubmVySW5uZXIxIj48L2ZlQ29tcG9zaXRlPgogICAgICAgICAgICA8ZmVDb2xvck1hdHJpeCB2YWx1ZXM9IjAgMCAwIDAgMC43OTY4MzY4OSAgIDAgMCAwIDAgMC45NzQ2NjAxMDggICAwIDAgMCAwIDEgIDAgMCAwIDAuNSAwIiB0eXBlPSJtYXRyaXgiIGluPSJzaGFkb3dJbm5lcklubmVyMSI+PC9mZUNvbG9yTWF0cml4PgogICAgICAgIDwvZmlsdGVyPgogICAgPC9kZWZzPgogICAgPGcgaWQ9Iumhtemdoi0xIiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4KICAgICAgICA8ZyBpZD0iMDgyMC0zROWbvuiwsS3liIflm75WNC4wIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMTQ3MS4wMDAwMDAsIC0xMzU0LjAwMDAwMCkiPgogICAgICAgICAgICA8ZyBpZD0i5bqV5bqn6YCJ5LitIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxNDcxLjAwMDAwMCwgMTM1NC4wMDAwMDApIj4KICAgICAgICAgICAgICAgIDxnIGlkPSLnvJbnu4QtMyI+CiAgICAgICAgICAgICAgICAgICAgPHBvbHlnb24gaWQ9IuefqeW9oiIgZmlsbD0idXJsKCNsaW5lYXJHcmFkaWVudC0xKSIgb3BhY2l0eT0iMC4zMjA4NzA1MzYiIHBvaW50cz0iMTQ2LjEzMTc2NSAzOS40MTkzNDQyIDI5NC4xMTMyOTggMTExLjg2ODYzNyAxNDcuOTgxNTM0IDE5Ni4zNDE0MjkgLTEuNDIxMDg1NDdlLTEzIDExMC45NDM3NTIiPjwvcG9seWdvbj4KICAgICAgICAgICAgICAgICAgICA8cG9seWdvbiBpZD0i55+p5b2iIiBmaWxsPSJ1cmwoI2xpbmVhckdyYWRpZW50LTIpIiBwb2ludHM9IjEuMTM2ODY4MzhlLTEzIDcxLjUyNDQwOCAxNDcuNjczMjM5IDE1Ni45MjIwODUgMTQ3LjY3MzIzOSAxNzkuNzM1OTA1IDEuMTM2ODY4MzhlLTEzIDk0LjMzODIyNzgiPjwvcG9seWdvbj4KICAgICAgICAgICAgICAgICAgICA8cG9seWdvbiBpZD0i55+p5b2iIiBmaWxsPSJ1cmwoI2xpbmVhckdyYWRpZW50LTMpIiBwb2ludHM9IjE0Ny42NzMyMzkgMTU2LjkyMjA4NSAyOTQuMTEzMjk4IDcyLjQ0OTI5MjYgMjk0LjExMzI5OCA5NS4yNjMxMTI0IDE0Ny42NzMyMzkgMTc5LjczNTkwNSI+PC9wb2x5Z29uPgogICAgICAgICAgICAgICAgICAgIDxwb2x5Z29uIGlkPSLnn6nlvaIiIGZpbGw9InVybCgjbGluZWFyR3JhZGllbnQtMSkiIHBvaW50cz0iMTQ2LjEzMTc2NSAtNC43OTMzNDg4M2UtMTMgMjk0LjExMzI5OCA3Mi40NDkyOTI2IDE0Ny45ODE1MzQgMTU2LjkyMjA4NSAtMS40MjEwODU0N2UtMTMgNzEuNTI0NDA4Ij48L3BvbHlnb24+CiAgICAgICAgICAgICAgICAgICAgPGcgaWQ9IuefqeW9oiI+CiAgICAgICAgICAgICAgICAgICAgICAgIDx1c2UgZmlsbD0idXJsKCNsaW5lYXJHcmFkaWVudC00KSIgZmlsbC1ydWxlPSJldmVub2RkIiB4bGluazpocmVmPSIjcGF0aC01Ij48L3VzZT4KICAgICAgICAgICAgICAgICAgICAgICAgPHVzZSBmaWxsPSJibGFjayIgZmlsbC1vcGFjaXR5PSIxIiBmaWx0ZXI9InVybCgjZmlsdGVyLTYpIiB4bGluazpocmVmPSIjcGF0aC01Ij48L3VzZT4KICAgICAgICAgICAgICAgICAgICA8L2c+CiAgICAgICAgICAgICAgICA8L2c+CiAgICAgICAgICAgIDwvZz4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==",bZ="data:image/png;base64,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",SZ="data:image/png;base64,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";var CZ=Object.defineProperty,PZ=Object.defineProperties,BZ=Object.getOwnPropertyDescriptors,UL=Object.getOwnPropertySymbols,IZ=Object.prototype.hasOwnProperty,DZ=Object.prototype.propertyIsEnumerable,jL=(E,a,y)=>a in E?CZ(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,wx=(E,a)=>{for(var y in a||(a={}))IZ.call(a,y)&&jL(E,y,a[y]);if(UL)for(var y of UL(a))DZ.call(a,y)&&jL(E,y,a[y]);return E},bx=(E,a)=>PZ(E,BZ(a)),MZ=({className:E,style:a={},title:y="",childNode:x=[],knowledgeNode:b=[]})=>{const z="rem",te=[{position:"absolute",zIndex:2,bottom:112,left:44},{position:"absolute",zIndex:3,bottom:94,left:74},{position:"absolute",zIndex:4,bottom:78,left:104},{position:"absolute",zIndex:5,bottom:66,left:136},{position:"absolute",zIndex:6,bottom:82,left:168},{position:"absolute",zIndex:7,bottom:104,left:202},{position:"absolute",zIndex:8,bottom:122,left:166}],re=[{position:"absolute",zIndex:10,bottom:166,left:66},{position:"absolute",zIndex:11,bottom:148,left:120},{position:"absolute",zIndex:12,bottom:150,left:180},{position:"absolute",zIndex:13,bottom:188,left:164},{position:"absolute",zIndex:14,bottom:192,left:114}],ae=(be="")=>{if(!be)return"-";let Oe=3;return/[\u4e00-\u9fff]/.test(be)||(Oe=7),(be==null?void 0:be.length)>=Oe?(be==null?void 0:be.slice(0,Oe-1))+"...":be},se=()=>(Array.isArray(b)?b.slice(0,7):Array(7).fill("\u77E5\u8BC6\u70B9")).map((_e,je)=>{const ze=te[je],Je=bx(wx({},ze),{bottom:`${ze.bottom}${z}`,left:`${ze.left}${z}`});return Ne.createElement("div",{key:je,style:Je,className:eg.smallBallGather},Ne.createElement("div",{className:eg.smallBall},Ne.createElement("b",null,ae(_e))),Ne.createElement("div",{className:eg.smallBallDish}))}),fe=()=>(Array.isArray(x)?x.slice(0,5):Array(5).fill("\u5B50\u8282\u70B9")).map((_e,je)=>{const ze=re[je],Je=bx(wx({},ze),{bottom:`${ze.bottom}${z}`,left:`${ze.left}${z}`});return Ne.createElement("div",{key:je,style:Je,className:eg.middleBall},Ne.createElement("div",null,Ne.createElement("b",null,ae(_e))))}),pe={position:"absolute",zIndex:1,bottom:0,width:"100%"};return Ne.createElement("div",{className:Qn()(eg.box,E),style:a},Ne.createElement("img",{className:eg.pedestal,style:pe,src:xZ}),Ne.createElement("img",{className:eg.pedestalHover,style:pe,src:wZ}),se(),Ne.createElement("div",{style:{position:"absolute",zIndex:9,bottom:138+z,left:"50%",transform:"translateX(-50%)"},className:eg.middleBallDish}),fe(),Ne.createElement("div",{style:{position:"absolute",zIndex:15,bottom:214+z,left:"50%",transform:"translateX(-50%)"},className:eg.largeBallDish}),Ne.createElement("div",{style:{position:"absolute",zIndex:16,bottom:234+z,left:120+z},className:eg.largeBall},Ne.createElement("b",null,ae(y))),Ne.createElement("img",{style:bx(wx({},pe),{zIndex:17}),className:eg.spectrum,src:bZ}),Ne.createElement("img",{style:bx(wx({},pe),{zIndex:17}),className:eg.spectrumHover,src:SZ}),Ne.createElement("div",{title:y,style:{position:"absolute",zIndex:18,bottom:304+z,left:0,fontSize:24+z,width:"100%",textAlign:"center"},className:"c-white blod"},(0,Bt.Pq)(y,9)))},LZ=Object.defineProperty,OZ=Object.defineProperties,TZ=Object.getOwnPropertyDescriptors,QL=Object.getOwnPropertySymbols,FZ=Object.prototype.hasOwnProperty,NZ=Object.prototype.propertyIsEnumerable,zL=(E,a,y)=>a in E?LZ(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,HL=(E,a)=>{for(var y in a||(a={}))FZ.call(a,y)&&zL(E,y,a[y]);if(QL)for(var y of QL(a))NZ.call(a,y)&&zL(E,y,a[y]);return E},WL=(E,a)=>OZ(E,TZ(a));function RZ(E){const a=new Map,y=[];return E.nodes.forEach(x=>{const b=WL(HL({},x.properties),{children:[]});a.set(b.uuid,b)}),E.relationships.forEach(x=>{const b=a.get(x.startNodeUuid),z=a.get(x.endNodeUuid);b&&z&&b.children.push(z)}),E.nodes.forEach(x=>{const b=x.properties;if(!E.relationships.some(re=>re.startNodeUuid===b.uuid||re.endNodeUuid===b.uuid))return;E.relationships.some(re=>re.endNodeUuid===b.uuid)||y.push(a.get(b.uuid))}),y.length===1?y[0]:y}function GL(E,a){const y=new Set,x=[];return E.forEach(b=>{const z=b[a[0]],te=b[a[1]];if(!z||!te)return;const re=`${z}-${te}`,ae=`${te}-${z}`;z!==te&&!y.has(re)&&!y.has(ae)&&(x.push(b),y.add(re),y.add(ae))}),x}const _Z=(E,a)=>{const y=E==null?void 0:E.map(b=>{const z=te=>{let re=[te.uuid];return te.children.forEach(ae=>{re=re.concat(z(ae))}),re};return z(b)});return a.map(b=>{let z,te;return y.forEach(re=>{re.includes(b.startNodeUuid)&&(z=re[0]),re.includes(b.endNodeUuid)&&(te=re[0])}),WL(HL({},b),{firstStartNodeUuid:z,firstEndNodeUuid:te})})};var Xd=De(59301),kZ=({data:E})=>{const a=(0,Ne.useRef)(),y=(0,Ne.useRef)();function x(te,re,ae){let se,fe;switch(re){case"top":se=Math.ceil(te.left+te.width/2-ae.left),fe=Math.ceil(te.top-ae.top);break;case"bottom":se=Math.ceil(te.left+te.width/2-ae.left),fe=Math.ceil(te.bottom-ae.top+15);break;case"left":se=Math.ceil(te.left-ae.left-10),fe=Math.ceil(te.top+te.height/2-ae.top+80);break;case"right":se=Math.ceil(te.right-ae.left+10),fe=Math.ceil(te.top+te.height/2-ae.top+50);break}return{x:se,y:fe}}function b(te,re){const ae={x:parseInt(te.left+te.width/2),y:parseInt(te.top+te.height/2)},se={x:parseInt(re.left+re.width/2),y:parseInt(re.top+re.height/2)},fe=se.x-ae.x,pe=se.y-ae.y;let be,Oe;return Math.abs(fe)>Math.abs(pe)?(be=fe>0?"right":"left",Oe=fe>0?"left":"right"):(be=pe>0?"bottom":"top",Oe=pe>0?"top":"bottom"),{startEdge:be,endEdge:Oe}}function z(){let te=E;if(!(te!=null&&te.length))return;const re=document.getElementById("lineContainer"),ae=document.getElementById("parentContainer").getBoundingClientRect();re.querySelectorAll("line").forEach(se=>se.remove()),te.forEach(se=>{const fe=document.getElementById(se.from),pe=document.getElementById(se.to),be=fe.getBoundingClientRect(),Oe=pe.getBoundingClientRect();let{startEdge:_e,endEdge:je}=se;if(!_e||!je){const ot=b(be,Oe);_e=_e||ot.startEdge,je=je||ot.endEdge}const ze=x(be,_e,ae),Je=x(Oe,je,ae),qe=document.createElementNS("http://www.w3.org/2000/svg","line");if(qe.setAttribute("x1",ze.x+se.offsetStart.x),qe.setAttribute("y1",ze.y+se.offsetStart.y),qe.setAttribute("x2",ze.x+se.offsetStart.x+.01),qe.setAttribute("y2",ze.y+se.offsetStart.y),qe.setAttribute("stroke",`url(#${se.gradient})`),qe.setAttribute("stroke-width","2"),se.dashed&&qe.setAttribute("stroke-dasharray","5, 5"),se.arrow==="start"?qe.setAttribute("marker-start",se!=null&&se.animated?"url(#triangle-start-h)":"url(#triangle-start)"):se.arrow==="end"?qe.setAttribute("marker-end",se!=null&&se.animated?"url(#triangle-end-h)":"url(#triangle-end)"):se.arrow==="both"&&(qe.setAttribute("marker-start",se!=null&&se.animated?"url(#triangle-start-h)":"url(#triangle-start)"),qe.setAttribute("marker-end",se!=null&&se.animated?"url(#triangle-end-h)":"url(#triangle-end)")),se.animated){qe.classList.add("dashed-line");const ot=document.createElementNS("http://www.w3.org/2000/svg","animate");ot.setAttribute("attributeName","x2"),ot.setAttribute("from",ze.x+se.offsetStart.x),ot.setAttribute("to",Je.x+se.offsetEnd.x+.01),ot.setAttribute("dur","1s"),ot.setAttribute("fill","freeze"),qe.appendChild(ot);const pt=document.createElementNS("http://www.w3.org/2000/svg","animate");pt.setAttribute("attributeName","y2"),pt.setAttribute("from",ze.y+se.offsetStart.y),pt.setAttribute("to",Je.y+se.offsetEnd.y),pt.setAttribute("dur","1s"),pt.setAttribute("fill","freeze"),qe.appendChild(pt)}else qe.setAttribute("x2",Je.x+se.offsetEnd.x+.01),qe.setAttribute("y2",Je.y+se.offsetEnd.y);re.appendChild(qe)})}return(0,Ne.useEffect)(()=>{E!=null&&E.length&&z()},[E]),(0,Ne.useEffect)(()=>(window.addEventListener("resize",()=>z),window.addEventListener("scroll",()=>z),()=>{window.removeEventListener("resize",z),window.removeEventListener("scroll",z)}),[]),Xd.createElement(Xd.Fragment,null,Xd.createElement("svg",{id:"lineContainer",style:{width:"100%",height:"100%",position:"absolute",top:0,left:0}}),Xd.createElement("svg",null,Xd.createElement("defs",null,Xd.createElement("linearGradient",{id:"gradient1",x1:"0%",y1:"0%",x2:"0%",y2:"100%"},Xd.createElement("stop",{"stop-color":"#42BECD",offset:"0%"}),Xd.createElement("stop",{"stop-color":"#3C30C6",offset:"100%"})),Xd.createElement("linearGradient",{id:"gradient2",x1:"0%",y1:"0%",x2:"100%",y2:"100%"},Xd.createElement("stop",{"stop-color":"#2DE1FD",offset:"0%"}),Xd.createElement("stop",{"stop-color":"#C7FFB0",offset:"100%"})),Xd.createElement("marker",{id:"triangle-start",viewBox:"0 0 10 10",refX:"2",refY:"5",markerWidth:"6",markerHeight:"6",orient:"auto"},Xd.createElement("path",{d:"M 10 0 L 0 5 L 10 10 z",fill:"url(#gradient1)"})),Xd.createElement("marker",{id:"triangle-end",viewBox:"0 0 10 10",refX:"8",refY:"5",markerWidth:"6",markerHeight:"6",orient:"auto"},Xd.createElement("path",{d:"M 0 0 L 10 5 L 0 10 z",fill:"url(#gradient1)"})),Xd.createElement("marker",{id:"triangle-start-h",viewBox:"0 0 10 10",refX:"2",refY:"5",markerWidth:"6",markerHeight:"6",orient:"auto"},Xd.createElement("path",{d:"M 10 0 L 0 5 L 10 10 z",fill:"url(#gradient2)"})),Xd.createElement("marker",{id:"triangle-end-h",viewBox:"0 0 10 10",refX:"8",refY:"5",markerWidth:"6",markerHeight:"6",orient:"auto"},Xd.createElement("path",{d:"M 0 0 L 10 5 L 0 10 z",fill:"url(#gradient2)"})))))},UZ=Object.defineProperty,jZ=Object.defineProperties,QZ=Object.getOwnPropertyDescriptors,KL=Object.getOwnPropertySymbols,zZ=Object.prototype.hasOwnProperty,HZ=Object.prototype.propertyIsEnumerable,VL=(E,a,y)=>a in E?UZ(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,ZL=(E,a)=>{for(var y in a||(a={}))zZ.call(a,y)&&VL(E,y,a[y]);if(KL)for(var y of KL(a))HZ.call(a,y)&&VL(E,y,a[y]);return E},WZ=(E,a)=>jZ(E,QZ(a)),YL=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(se){b(se)}},te=ae=>{try{re(y.throw(ae))}catch(se){b(se)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,te);re((y=y.apply(E,a)).next())}),GZ=({subjectId:E,setActivated:a,onAddSuccess:y})=>{const x=(0,Ce.useSelector)(mr=>mr),{pathsDetail:{detail:b={}}}=x,[z]=me.default.useForm(),[te,re]=(0,Ne.useState)(""),[ae,se]=(0,Ne.useState)(!1),[fe,pe]=(0,Ne.useState)(!0),[be,Oe]=(0,Ne.useState)(!1),[_e,je]=(0,Ne.useState)([]),[ze,Je]=(0,Ne.useState)([]),[qe,ot]=(0,Ne.useState)(null),[pt,Et]=(0,Ne.useState)(),bt=(0,Ne.useRef)(),Ct=(0,Ne.useRef)();let St=(0,Ne.useRef)().current,Zt=(0,Ne.useRef)().current,sn=(0,Ne.useRef)(!1).current;const gn=b==null?void 0:b.edit_of_subject_knowledge;(0,Ne.useEffect)(()=>{E&&Dn()},[E]);const Dn=()=>YL(void 0,null,function*(){var mr,Ir,ca,pr,Ca;pe(!0);const Fi=yield(0,ee.ZP)("/api/knowledge/v2/get_node.json",{method:"get",params:{depth:-1,subject_id:E}});if(Fi.status===0){re((pr=(ca=(Ir=(mr=Fi==null?void 0:Fi.data)==null?void 0:mr.nodes)==null?void 0:Ir[0])==null?void 0:ca.properties)==null?void 0:pr.uuid);const Ti=((Ca=Fi==null?void 0:Fi.data)==null?void 0:Ca.relationships)||[];let di=[],Ha=[];Ti==null||Ti.forEach(Mo=>{["\u5173\u8054"].includes(Mo.type)?di.push(Mo):["\u5305\u542B"].includes(Mo.type)&&Ha.push(Mo)}),di=GL(di,["startNodeUuid","endNodeUuid"]);const Ii=WZ(ZL({},Fi==null?void 0:Fi.data),{relationships:Ha}),Hi=RZ(Ii);let ho=_Z((Hi==null?void 0:Hi.children)||[],di);console.log(ho,3),ho=GL(ho,["firstStartNodeUuid","firstEndNodeUuid"]),je((Hi==null?void 0:Hi.children)||[]),Je(ho),console.log(ho,Hi==null?void 0:Hi.children,222)}pe(!1)});(0,Ne.useEffect)(()=>{ze!=null&&ze.length&&Et(ze.map(mr=>({from:mr.firstStartNodeUuid,to:mr.firstEndNodeUuid,animated:!1,dashed:!0,arrow:"both",offsetStart:{x:0,y:0},offsetEnd:{x:0,y:1},gradient:"gradient1"})))},[ze]),(0,Ne.useEffect)(()=>{var mr;pt!=null&&pt.length&&((mr=pt==null?void 0:pt.map)==null||mr.call(pt,Ir=>{Ir.animated=Ir.from===qe||Ir.to===qe,Ir.gradient=Ir.from===qe||Ir.to===qe?"gradient2":"gradient1"}),Et([...pt]))},[qe]);function or(mr){var Ir,ca;if(!sn)return;const pr=mr.pageY-St;(ca=(Ir=bt.current)==null?void 0:Ir.scrollTo)==null||ca.call(Ir,0,Zt-pr)}function Vn(mr){var Ir;sn=!0,St=mr.pageY,Zt=((Ir=bt.current)==null?void 0:Ir.scrollTop)||0}function Dr(mr){sn=!1}(0,Ne.useEffect)(()=>(document.addEventListener("mousedown",Vn),document.addEventListener("mousemove",or),document.addEventListener("mouseup",Dr),()=>{document.removeEventListener("mouseup",Dr),document.removeEventListener("mousemove",or),document.removeEventListener("mousedown",Vn)}),[]);const sa=mr=>YL(void 0,null,function*(){const{nodeType:Ir,description:ca,name:pr,tags:Ca}=mr;Oe(!0);const Fi=yield(0,ee.ZP)("/api/knowledge/v2/add_node.json",{method:"POST",body:{label:"\u56FE\u8C31",subject_id:E,properties:{description:ca,rootNodeUuid:te,name:pr,nodeType:Ir[0],tags:(Ca==null?void 0:Ca.join("\uFF0C"))||"",color:"1"},relationships:[{startNodeUuid:te,type:"\u5305\u542B"}]}});(Fi==null?void 0:Fi.status)===0&&(se(!1),Dn(),y()),Oe(!1)}),vr=()=>{const mr=[],Ir=_e==null?void 0:_e.map((pr,Ca)=>{var Fi;let Ti;const di=Ca+1,Ha=mr.length-3,Ii=mr[Ha];di%3===1&&(Ti={top:Ii!==void 0?`${parseFloat(Ii==null?void 0:Ii.top)+600}rem`:"100rem",left:"50%",marginLeft:"-146rem"}),di%3===2&&(Ti={top:Ii!==void 0?`${parseFloat(Ii==null?void 0:Ii.top)+600}rem`:"380rem",left:0}),di%3===0&&(Ti={top:Ii!==void 0?`${parseFloat(Ii==null?void 0:Ii.top)+600}rem`:"380rem",right:0}),mr.push(Ti);let Hi=[],ho=(Fi=pr==null?void 0:pr.children)==null?void 0:Fi.map(Mo=>{var zs;return Mo!=null&&Mo.children&&((zs=Mo==null?void 0:Mo.children)==null||zs.forEach(As=>{Hi.push(As.name)})),Mo.name});return ho.length>5&&(ho[0]="..."),Hi.length>7&&(Hi[0]="..."),Ne.createElement("div",{className:B0.listItem,key:Ca,onMouseEnter:()=>ot(pr==null?void 0:pr.uuid),onMouseLeave:()=>ot(null),id:pr==null?void 0:pr.uuid,onClick:()=>a(pr==null?void 0:pr.uuid),style:ZL({position:"absolute",zIndex:10},Ti)},Ne.createElement(MZ,{childNode:ho,knowledgeNode:Hi,title:pr==null?void 0:pr.name}))}),ca=parseFloat(mr[mr.length-1].top)+352+80+"rem";return Ne.createElement("div",{ref:Ct,style:{height:ca}},Ir)};return Ne.createElement(yn,null,Ne.createElement("div",{className:B0.wrap},fe&&Ne.createElement(ue.Z,{style:{width:"100%",marginTop:"300rem"},spinning:fe}),!fe&&Ne.createElement(Ne.Fragment,null,gn&&Ne.createElement("div",{className:B0.add,onClick:()=>se(!0)},Ne.createElement("i",{className:"iconfont icon-tianjiatixing"})),_e!=null&&_e.length?Ne.createElement("div",{className:B0.dimensionalBall,ref:bt},Ne.createElement("div",{className:B0.archer,id:"parentContainer"},vr(),Ne.createElement(kZ,{data:pt}))):Ne.createElement(da,{text:"\u6682\u65E0\u56FE\u8C31\uFF0C\u7ACB\u5373\u65B0\u5EFA\u4E00\u4E2A\u56FE\u8C31\u5427\uFF5E",textColor:"#fff",buttonText:gn&&"\u65B0\u5EFA\u56FE\u8C31",onClick:()=>se(!0)})),Ne.createElement(Pe.default,{open:ae,centered:!0,width:"1000rem",okText:"\u4FDD\u5B58",onCancel:()=>se(!1),cancelText:"\u53D6\u6D88",afterClose:()=>{z.resetFields()},confirmLoading:be,onOk:()=>z.submit(),title:"\u65B0\u589E\u77E5\u8BC6\u56FE\u8C31"},Ne.createElement("div",{className:B0.modal},Ne.createElement("div",{className:B0.mHead},"\u8282\u70B9\u5C5E\u6027"),Ne.createElement(me.default,{form:z,scrollToFirstError:!0,layout:"horizontal",colon:!1,size:"large",labelCol:{flex:"110rem"},onFinish:sa,className:B0.form},Ne.createElement(me.default.Item,{label:"\u56FE\u8C31\u540D\u79F0",name:"name",rules:[{required:!0,message:"\u8BF7\u8F93\u5165\u8282\u70B9\u540D\u79F0"},{type:"string",max:60,message:"\u8F93\u5165\u8D85\u9650\uFF0C\u8BF7\u7F29\u51CF\u5B57\u7B26\u6570"},{type:"string",whitespace:!0,message:"\u5185\u5BB9\u4E0D\u80FD\u5168\u4E3A\u7A7A\u683C"}]},Ne.createElement(xe.default,{maxLength:60,showCount:!0,placeholder:"\u8BF7\u8F93\u5165"})),Ne.createElement(me.default.Item,{label:"\u7B80\u4ECB",name:"description",rules:[{type:"string",max:5e3,message:"\u8F93\u5165\u8D85\u9650\uFF0C\u8BF7\u7F29\u51CF\u5B57\u7B26\u6570"},{type:"string",whitespace:!0,message:"\u5185\u5BB9\u4E0D\u80FD\u5168\u4E3A\u7A7A\u683C"}]},Ne.createElement(xe.default.TextArea,{maxLength:5e3,showCount:!0,placeholder:"\u8BF7\u8F93\u5165"})),Ne.createElement(me.default.Item,{className:B0.mType,label:Ne.createElement("span",null,"\u56FE\u8C31\u7C7B\u578B ",Ne.createElement(mn.Z,{title:"\u5F53\u524D\u77E5\u8BC6\u56FE\u8C31\u7684\u7C7B\u578B\uFF0C\u5982\uFF1A\u5927\u7EB2\u56FE\u8C31\u3001\u80FD\u529B\u56FE\u8C31"},Ne.createElement(ui.Z,null))),name:"nodeType",rules:[{required:!0,message:"\u8BF7\u9009\u62E9\u8282\u70B9\u7C7B\u578B"}]},Ne.createElement(Pr,{subjectId:E,type:1})))))))},sc={statistics:"statistics___BP4qi",noUnfold:"noUnfold___EpqXR",wrapBox:"wrapBox___TsFlb",scrollBox:"scrollBox___Oh4zJ",content:"content___NRQFH",title:"title___z20Sn",box:"box___k6Eep",left:"left___Gnxfc",right:"right___rNC9V",head:"head___mT3Wl",radio:"radio___sjK3F",active:"active___oX7gd",average:"average___KVA2l",li:"li____NnY1",yellow:"yellow___CCujs",blue:"blue___m_425",lineTitle:"lineTitle___qo6vf",echartsTwo:"echartsTwo___aC24D",echartsThree:"echartsThree___Z2Q2A",unfold:"unfold___VUl4t",select:"select___dM1mS"},KZ="data:image/png;base64,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",VZ="data:image/png;base64,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",ZZ="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAAsCAYAAAA5KtvpAAAAAXNSR0IArs4c6QAABFJJREFUaEPtml9MW1Ucxz+nlxbaUkYvYjdENG7RiEg6jNGQ+aIx08SE6IvZxGS+qGGPPjnj2+J8MIuJMVk00Zgg0zc1Rpm+Gf+M+GdkZKhT4gyMjnWllJWWtrf3mNPLHJcWaBmlXcMvaV96fufez/n+fuf8zjkV/a8ZBzB5R4JO7VpICHlo8A3nt6L/VWNSIttrl9UiEzAyeMz5sOg/khmTkq7aBxbfDB6r2y8OHZFBjzf7rt5Mb61ChyOcWkxrhz86KiaEggxF5Aum5INaBRaCJ9taxPBSaG8D15zQVaVwnQaao/QxlhLSxnU/1Y+RLdxP1QA7BAT8IHIzSekWjUMyBS1NUO+EuTgkUvn9lB84mwVNK4pA921c4bkFS1V/IzS4QA3AYroCwM2nBpnf14fp9RUFvRmNVLSYskIh3XryOMJIc+WZw1sKvdrAlT2kFbAzPEVGDxB5eqDi0EUDzyetSWC1UFk+oq74LPqFURrD/9AUOo8jm8n9nNwR4M/HBzDc5Q1vhwO8LvC5N5jDV5MQXVg/u1wLUe789TP8F88hpFnQIdkUYPyxATJlhlYPb/WBu97+GkUpHJ6HZIEZb3lX/qkx9vw0hJYpsBasQE807+LsE6+AkqKM1tgAeuMGgC/HYNGKyoKmFL37uw9XVXW5k3Ro/NX7PLMd3WVEtbr21kPLiuwpSuG1gLVUguCXb+JMxdcF2ErYsgHfNfIpt06M5GANl4doWyfzgT25HM3U+9h9eghP7BKbBauKi08+t9eNDg0O9uUXN5uusGdumu6v3iLT4ONCTx+RjmBeXt7/9XE8sdCmhbECPjG4rHAG6jTBy/1bANx+dhjPXIiJh54lW+8pGNJdw28z3floSTkbnoVozF4qteoC/w4wDDjxcYWAO377gsngU8g1ZltP9CIJ/23r5vfyBj/8YnLmnH1Z631Ao6dL5OrlyihsmjiyBqbTVRKMamxm4cy4XUG1LQzeZ22V1gSupMIlky45pDPw3pA9LJ11gpees/KwOhVeh/bvfyVTIbuKu+8Q3L5LcEPA1arw9z+bjI7b83DfgxrBzhsErlgOAwsJu8xqH+peKtjLBlwphVNpeP+kPQ9dTsGLB608LBtwpRTeBga2Fa6lSaumQ3r2KsRX7OtvBuAmNzR7N3AAkMnCzJz9PKvagVWpurM5/5y7qAMANUZZE1KZ69DqfH30D3slpfYQe++16uHJS3A5Yv+9PSAI3GL1Nfr7Cl8Bezst36kZmLlS2Nc08+vw3HOXfJW/ur1wu0DVBSutaOCN1s3V5rcNvNaFuAoVV121aZb/PmpzsspNiwr34i/Er93MVTtyYhHU5VohKwnY2wDqU82m7orjydXP0UsCrmbQYt8tD3g6IvdLSe5PH7VomoPunboYyy1f6ktK2TAdYRS4p+aABT+26TwihMidTPy/TM/EZcBY5HUEPUJyE8zL60gjSEk47RYc1XURu9b6P7vslVpOgNBqAAAAAElFTkSuQmCC",YZ="data:image/png;base64,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",XZ="data:image/png;base64,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",GC={wave:"wave___rx4XG",fillWrap:"fillWrap___q512j",svgBox:"svgBox___DfbUu"},JZ=Object.defineProperty,XL=Object.getOwnPropertySymbols,qZ=Object.prototype.hasOwnProperty,$Z=Object.prototype.propertyIsEnumerable,JL=(E,a,y)=>a in E?JZ(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,eY=(E,a)=>{for(var y in a||(a={}))qZ.call(a,y)&&JL(E,y,a[y]);if(XL)for(var y of XL(a))$Z.call(a,y)&&JL(E,y,a[y]);return E};const hee=E=>React.createElement("svg",eY({width:449,height:204,xmlns:"http://www.w3.org/2000/svg",xmlnsXlink:"http://www.w3.org/1999/xlink"},E),React.createElement("title",null,"\u6CE2\u7EB9"),React.createElement("defs",null,React.createElement("linearGradient",{x1:"50%",y1:"41.532%",x2:"51.437%",y2:"65.254%",id:"water_svg__c"},React.createElement("stop",{stopColor:"#34D5A2",offset:"0%"}),React.createElement("stop",{stopColor:"#1D9F76",offset:"100%"})),React.createElement("path",{id:"water_svg__a",d:"M0 0h449v204H0z"})),React.createElement("g",{fill:"none",fillRule:"evenodd"},React.createElement("mask",{id:"water_svg__b",fill:"#fff"},React.createElement("use",{xlinkHref:"#water_svg__a"})),React.createElement("g",{mask:"url(#water_svg__b)"},React.createElement("path",{d:"M0 7.704c14.667 8 29.667 8 45 0 6.537-3.41 23.776-14.982 45 0 17 12 29 9 45 0s31-9 45 0c25 17 35 8 45 0s32.344-7.91 45 0c16 10 32 10 45 0 10.947-8.42 33.124-8.71 45 0 15 11 31.839 11.136 45 0 13-11 30-9.517 45 0s15 17 45 0v196H0v-196Z",fill:"url(#water_svg__c)",transform:"translate(-40)"}),React.createElement("path",{d:"M0 11c14.667 8 29.667 8 45 0 6.537-3.41 23.776-14.982 45 0 17 12 29 9 45 0s31-9 45 0c25 17 35 8 45 0s32.344-7.91 45 0c16 10 32 10 45 0 10.947-8.42 33.124-8.71 45 0 15 11 31.839 11.137 45 0 13-11 30-10 45 0s15 17 45 0v193H0V11Z",fill:"#38E5AE"}))));var tY="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDQ5IiBoZWlnaHQ9IjIwNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+PGRlZnM+PGxpbmVhckdyYWRpZW50IHgxPSI1MCUiIHkxPSI0MS41MzIlIiB4Mj0iNTEuNDM3JSIgeTI9IjY1LjI1NCUiIGlkPSJjIj48c3RvcCBzdG9wLWNvbG9yPSIjMzRENUEyIiBvZmZzZXQ9IjAlIi8+PHN0b3Agc3RvcC1jb2xvcj0iIzFEOUY3NiIgb2Zmc2V0PSIxMDAlIi8+PC9saW5lYXJHcmFkaWVudD48cGF0aCBpZD0iYSIgZD0iTTAgMGg0NDl2MjA0SDB6Ii8+PC9kZWZzPjxnIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+PG1hc2sgaWQ9ImIiIGZpbGw9IiNmZmYiPjx1c2UgeGxpbms6aHJlZj0iI2EiLz48L21hc2s+PGcgbWFzaz0idXJsKCNiKSI+PHBhdGggZD0iTTAgNy43MDRjMTQuNjY3IDggMjkuNjY3IDggNDUgMCA2LjUzNy0zLjQxIDIzLjc3Ni0xNC45ODIgNDUgMCAxNyAxMiAyOSA5IDQ1IDBzMzEtOSA0NSAwYzI1IDE3IDM1IDggNDUgMHMzMi4zNDQtNy45MSA0NSAwYzE2IDEwIDMyIDEwIDQ1IDAgMTAuOTQ3LTguNDIgMzMuMTI0LTguNzEgNDUgMCAxNSAxMSAzMS44MzkgMTEuMTM2IDQ1IDAgMTMtMTEgMzAtOS41MTcgNDUgMHMxNSAxNyA0NSAwdjE5Nkgwdi0xOTZaIiBmaWxsPSJ1cmwoI2MpIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtNDApIi8+PHBhdGggZD0iTTAgMTFjMTQuNjY3IDggMjkuNjY3IDggNDUgMCA2LjUzNy0zLjQxIDIzLjc3Ni0xNC45ODIgNDUgMCAxNyAxMiAyOSA5IDQ1IDBzMzEtOSA0NSAwYzI1IDE3IDM1IDggNDUgMHMzMi4zNDQtNy45MSA0NSAwYzE2IDEwIDMyIDEwIDQ1IDAgMTAuOTQ3LTguNDIgMzMuMTI0LTguNzEgNDUgMCAxNSAxMSAzMS44MzkgMTEuMTM3IDQ1IDAgMTMtMTEgMzAtMTAgNDUgMHMxNSAxNyA0NSAwdjE5M0gwVjExWiIgZmlsbD0iIzM4RTVBRSIvPjwvZz48L2c+PC9zdmc+",nY=({percentage:E,size:a=180,unit:y="rem"})=>{const[x,b]=(0,Ne.useState)(["",""]),[z,te]=(0,Ne.useState)(0),re=(0,Ne.useRef)(null),ae=(0,Ne.useRef)(null);(0,Ne.useEffect)(()=>(re.current&&(clearTimeout(ae.current),ae.current=setTimeout(()=>{var Oe;const _e=z+20;_e+a>((Oe=re.current)==null?void 0:Oe.offsetWidth)-40&&b([...x,""]),te(_e)},200)),()=>{clearTimeout(ae.current)}),[re.current,z]),(0,Ne.useEffect)(()=>(window.addEventListener("resize",se),()=>{window.removeEventListener("resize",se)}),[]);const se=()=>{te(0)},fe={width:a+y,height:a+y},pe=148-a*(E/100),be=()=>Ne.createElement("img",{src:tY,style:{width:`449${y}`,height:`204${y}`}});return Ne.createElement("div",{className:GC.wave,style:fe},Ne.createElement("div",{className:GC.fillWrap},Ne.createElement("div",{style:{fontSize:`28${y}`,zIndex:2,color:"#fff"}},E,"%"),Ne.createElement("div",{className:GC.svgBox,ref:re,style:{top:pe+y,transform:`translateX(-${z}px)`}},x.map((Oe,_e)=>Ne.createElement(be,{key:_e})))))},I0={trapezoid:"trapezoid___qw8yM",pillarBox:"pillarBox___rGJCP",pillar1:"pillar1___uJ0zx",point:"point____XIHt",pillar2:"pillar2___pL9k5",pillar3:"pillar3___dUdZf",textBox:"textBox___isldE",text1:"text1___g5Hy9",tip:"tip___PXfJr",line:"line___A5wA_",l:"l___hfZzL",text2:"text2___u2scn",text3:"text3___WSnmy"},rY=Object.defineProperty,aY=Object.defineProperties,iY=Object.getOwnPropertyDescriptors,qL=Object.getOwnPropertySymbols,oY=Object.prototype.hasOwnProperty,sY=Object.prototype.propertyIsEnumerable,$L=(E,a,y)=>a in E?rY(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,eO=(E,a)=>{for(var y in a||(a={}))oY.call(a,y)&&$L(E,y,a[y]);if(qL)for(var y of qL(a))sY.call(a,y)&&$L(E,y,a[y]);return E},tO=(E,a)=>aY(E,iY(a)),lY=({dataSource:E=[]})=>{const[a,y]=(0,Ne.useState)([]),[x,b]=(0,Ne.useState)(0),z=(0,Ne.useRef)(String(Math.random()).slice(-6));(0,Ne.useEffect)(()=>{if(E!=null&&E.length){const se=ae(E),fe=E.map((pe,be)=>tO(eO({value:pe,lineWidth:30,pillarWidth:104+se[be]},re[be]),{from:re[be].from+z.current,to:re[be].to+z.current}));y(fe),b(x+1)}},[JSON.stringify(E)]),(0,Ne.useEffect)(()=>{x>0&&te()},[x]),(0,Ne.useEffect)(()=>(window.addEventListener("resize",te),()=>{window.removeEventListener("resize",te)}),[x]);const te=()=>{const se=a.map((fe,pe)=>{const{from:be,to:Oe}=fe,_e=document.querySelector(`#${be}`),je=document.querySelector(`#${Oe}`),ze=_e.getBoundingClientRect(),Je=je.getBoundingClientRect(),qe=Math.abs(Je.left-ze.left);return tO(eO({},fe),{lineWidth:qe})});y(se)},re=[{title:"\u5B8C\u6210\u738780%\uFF5E100%",pillarTitle:"80\uFF5E100%",from:"lineStart1",to:"lineEnd1"},{title:"\u5B8C\u6210\u738760%\uFF5E79%",pillarTitle:"60\uFF5E79%",from:"lineStart2",to:"lineEnd2"},{title:"\u5B8C\u6210\u738759%\u4EE5\u4E0B",pillarTitle:"59%\u4EE5\u4E0B",from:"lineStart3",to:"lineEnd3"}];function ae(se){const fe=se.reduce((pe,be)=>pe+be,0);return se.map(pe=>pe/fe*100)}return Ne.createElement("div",{className:I0.trapezoid},Ne.createElement("div",{className:I0.textBox},a.map((se,fe)=>{const{value:pe,lineWidth:be,title:Oe,from:_e}=se,je=fe+1;return Ne.createElement("div",{key:fe,className:I0[`text${je}`]},Ne.createElement("div",{className:I0.tip},Oe,Ne.createElement("span",null,pe)),Ne.createElement("div",{id:_e,className:I0.line},Ne.createElement("div",{style:{width:be},className:I0.l})))})),Ne.createElement("div",{className:I0.pillarBox},a.map((se,fe)=>{const{pillarWidth:pe,pillarTitle:be,to:Oe}=se,_e=fe+1;return Ne.createElement("div",{key:fe,className:I0[`pillar${_e}`],style:{width:pe+"rem"}},Ne.createElement("span",null,be),Ne.createElement("div",{id:Oe,className:I0.point}))})))},us=De(59301),uY=Object.defineProperty,nO=Object.getOwnPropertySymbols,cY=Object.prototype.hasOwnProperty,dY=Object.prototype.propertyIsEnumerable,rO=(E,a,y)=>a in E?uY(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,KC=(E,a)=>{for(var y in a||(a={}))cY.call(a,y)&&rO(E,y,a[y]);if(nO)for(var y of nO(a))dY.call(a,y)&&rO(E,y,a[y]);return E},fY=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(se){b(se)}},te=ae=>{try{re(y.throw(ae))}catch(se){b(se)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,te);re((y=y.apply(E,a)).next())}),hY=({subjectId:E,uuid:a,isAll:y})=>{const[x,b]=(0,Ne.useState)(!1),[z,te]=(0,Ne.useState)({type:0,course_id:null}),[re,ae]=(0,Ne.useState)(!0),[se,fe]=(0,Ne.useState)(!0),[pe,be]=(0,Ne.useState)([]),[Oe]=(0,Ce.useSearchParams)(),[_e,je]=(0,Ne.useState)({graphCount:0,tagCount:0,resourceCount:0,proportionCount:0}),ze=[{name:"",value:0,itemStyle:{color:"rgb(223,209,38)"}},{name:"",value:0,itemStyle:{color:"rgb(6,234,230)"}},{name:"",value:0,itemStyle:{color:"rgb(6,110,247)"}}],[Je,qe]=(0,Ne.useState)({averageCompletionRate:0,averageMasteryRate:0,completionRate:[0,0,0],masteryRate:ze});(0,Ne.useEffect)(()=>{x?ot(z):te({type:0,course_id:null})},[x]),(0,Ne.useEffect)(()=>{x&&b(!1)},[a]);const ot=(Ct,St=!1)=>fY(void 0,null,function*(){var Zt,sn,gn,Dn,or,Vn,Dr,sa,vr,mr;St?fe(!0):ae(!0);const Ir=yield(0,ee.ZP)(y?"/api/knowledge/v2/subject_statistics.json":"/api/knowledge/v2/knowledge_statistics.json",{method:"get",params:KC({subject_id:E,parentNodeUuid:a,labels:"\u56FE\u8C31,\u6807\u7B7E,\u8D44\u6E90",depth:-1},Ct)});if((Ir==null?void 0:Ir.status)===0){let ca=(Zt=Ir==null?void 0:Ir.data)==null?void 0:Zt.metricCounters;ca=ca||[];const pr={graphCount:((sn=ca.find(di=>(di==null?void 0:di.name)==="\u56FE\u8C31"))==null?void 0:sn.count)||0,tagCount:((gn=ca.find(di=>(di==null?void 0:di.name)==="\u6807\u7B7E"))==null?void 0:gn.count)||0,resourceCount:((Dn=ca.find(di=>(di==null?void 0:di.name)==="\u8D44\u6E90"))==null?void 0:Dn.count)||0,proportionCount:(or=Ir==null?void 0:Ir.data)==null?void 0:or.resource_rate};let Ca=Object.entries((Vn=Ir==null?void 0:Ir.data)==null?void 0:Vn.study_grasp_hash).map(([di,Ha],Ii)=>({name:di,value:Ha,itemStyle:ze[Ii].itemStyle}));const Fi={averageCompletionRate:(Dr=Ir==null?void 0:Ir.data)==null?void 0:Dr.study_complete_rate,averageMasteryRate:(sa=Ir==null?void 0:Ir.data)==null?void 0:sa.study_grasp_rate,completionRate:Object.values((vr=Ir==null?void 0:Ir.data)==null?void 0:vr.study_complete_hash),masteryRate:Ca};console.log(Ca,"newMasteryRate");const Ti=(mr=Ir==null?void 0:Ir.courses)==null?void 0:mr.map(di=>({label:di.name,value:di.id}));be(Ti),je(pr),qe(Fi)}setTimeout(()=>{ae(!1)},500),fe(!1)}),pt=Ct=>{z.type=Ct,te(KC({},z)),(Ct!==2||z.course_id)&&ot(z,!0)},Et=Ct=>{z.course_id=Ct,te(KC({},z)),ot(z,!0)},bt=[{name:"\u5168\u90E8",id:0},{name:"\u81EA\u4E3B\u5B66\u4E60",id:1},{name:"\u8BFE\u5802\u5B66\u4E60",id:2}];return us.createElement(yn,null,us.createElement("div",{className:sc.statistics},us.createElement("div",{onClick:()=>b(!0),className:sc.noUnfold},us.createElement("img",{style:{width:"32rem",marginBottom:"4rem"},src:KZ}),us.createElement("span",null,"\u7EDF"),us.createElement("span",null,"\u8BA1")),us.createElement("div",{className:sc.wrapBox,style:{right:x?0:"-600rem"}},re&&us.createElement(ue.Z,{style:{width:"100%",marginTop:"200rem"},spinning:!0}),!re&&us.createElement(us.Fragment,null,us.createElement("div",{className:sc.scrollBox},us.createElement("div",{className:sc.content},us.createElement("div",{className:sc.title},us.createElement("img",{src:VZ}),us.createElement("span",null,"\u56FE\u8C31\u7EDF\u8BA1\u5206\u6790")),us.createElement(ua.Z,{className:sc.box,justify:"space-between"},us.createElement("div",{className:sc.left},us.createElement("div",null,us.createElement("span",null,"\u77E5\u8BC6\u56FE\u8C31\u6570\u91CF"),us.createElement("b",null,_e==null?void 0:_e.graphCount)),us.createElement("div",{style:{margin:"18rem 0"}},us.createElement("span",null,"\u6807\u7B7E\u8282\u70B9\u6570\u91CF"),us.createElement("b",null,_e==null?void 0:_e.tagCount)),us.createElement("div",null,us.createElement("span",null,"\u8D44\u6E90\u8282\u70B9\u6570\u91CF"),us.createElement("b",null,_e==null?void 0:_e.resourceCount))),us.createElement("div",{className:sc.right},x&&us.createElement(nY,{percentage:_e==null?void 0:_e.proportionCount}),us.createElement("div",{className:"c-white",style:{marginTop:"20rem",fontSize:"14rem"}},"\u5DF2\u5173\u8054\u8D44\u6E90\u7684\u6807\u7B7E\u8282\u70B9\u5360\u6BD4"))),us.createElement("div",{style:{marginTop:"20rem"},className:sc.title},us.createElement("img",{src:ZZ}),us.createElement("span",null,"\u5B66\u4E60\u7EDF\u8BA1\u5206\u6790")),us.createElement("div",{className:sc.box},Oe.get("type")!=="classrooms"&&us.createElement("div",{className:sc.head},us.createElement("span",{style:{marginRight:"10rem",fontSize:"16rem"}},"\u7EDF\u8BA1\u8303\u56F4"),us.createElement("div",{className:sc.radio},bt.map(Ct=>us.createElement("div",{className:z.type===Ct.id?sc.active:"",key:Ct.id,onClick:()=>pt(Ct.id)},us.createElement("b",null),us.createElement("span",null,Ct.name)))),z.type===2&&us.createElement(Ba.default,{className:sc.select,options:pe,value:z==null?void 0:z.course_id,onChange:Et,placeholder:"\u8BF7\u9009\u62E9",getPopupContainer:Ct=>Ct.parentNode,style:{width:"156rem",marginLeft:"10rem"},suffixIcon:us.createElement("i",{className:"iconfont icon-a-bianzu11",style:{color:"#1B8565",fontSize:"16rem"}})})),us.createElement(ue.Z,{spinning:se},us.createElement("div",{className:sc.average},us.createElement("div",{className:sc.li},us.createElement("img",{src:YZ,style:{marginLeft:0}}),us.createElement("aside",{className:sc.yellow},us.createElement("div",{style:{fontSize:"16rem"}},"\u5E73\u5747\u5B8C\u6210\u7387"),us.createElement("div",null,us.createElement("b",{style:{fontSize:"40rem"}},Je==null?void 0:Je.averageCompletionRate),us.createElement("span",{style:{fontSize:"20rem"}},"%")))),us.createElement("div",{className:sc.li},us.createElement("img",{src:XZ}),us.createElement("aside",{className:sc.blue},us.createElement("div",{style:{fontSize:"16rem"}},"\u5E73\u5747\u638C\u63E1\u7387"),us.createElement("div",null,us.createElement("b",{style:{fontSize:"40rem"}},Je==null?void 0:Je.averageMasteryRate),us.createElement("span",{style:{fontSize:"20rem"}},"%"))))),us.createElement("div",{className:sc.lineTitle},us.createElement("b",null),us.createElement("span",null,"\u5B8C\u6210\u7387"),us.createElement("b",null)),us.createElement("div",{className:sc.echartsTwo},us.createElement(lY,{dataSource:Je==null?void 0:Je.completionRate})),us.createElement("div",{className:sc.lineTitle,style:{marginTop:"40rem"}},us.createElement("b",null),us.createElement("span",null,"\u638C\u63E1\u7387"),us.createElement("b",null)),us.createElement("div",{className:sc.echartsThree},us.createElement(gl,{dataSource:Je==null?void 0:Je.masteryRate})))))),x&&us.createElement("div",{onClick:()=>b(!1),className:sc.unfold})))))},Wc={statistics:"statistics___BZJje",noUnfold:"noUnfold___L4va9",wrapBox:"wrapBox___tHLW6",scrollBox:"scrollBox___m8AGu",content:"content____Gl9N",title:"title___SAaGy",top:"top___h1nbU",topLi:"topLi___Ib2Tu",bottom:"bottom___ZKnwW",bottomLi:"bottomLi___YAGiM",echarts:"echarts___M5Dkf",name:"name___XhFko",unfold:"unfold___I5om1",select:"select___TcV_B"},AY="data:image/png;base64,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",gY="data:image/png;base64,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",vY="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAAsCAYAAAA5KtvpAAAAAXNSR0IArs4c6QAABFJJREFUaEPtml9MW1Ucxz+nlxbaUkYvYjdENG7RiEg6jNGQ+aIx08SE6IvZxGS+qGGPPjnj2+J8MIuJMVk00Zgg0zc1Rpm+Gf+M+GdkZKhT4gyMjnWllJWWtrf3mNPLHJcWaBmlXcMvaV96fufez/n+fuf8zjkV/a8ZBzB5R4JO7VpICHlo8A3nt6L/VWNSIttrl9UiEzAyeMz5sOg/khmTkq7aBxbfDB6r2y8OHZFBjzf7rt5Mb61ChyOcWkxrhz86KiaEggxF5Aum5INaBRaCJ9taxPBSaG8D15zQVaVwnQaao/QxlhLSxnU/1Y+RLdxP1QA7BAT8IHIzSekWjUMyBS1NUO+EuTgkUvn9lB84mwVNK4pA921c4bkFS1V/IzS4QA3AYroCwM2nBpnf14fp9RUFvRmNVLSYskIh3XryOMJIc+WZw1sKvdrAlT2kFbAzPEVGDxB5eqDi0EUDzyetSWC1UFk+oq74LPqFURrD/9AUOo8jm8n9nNwR4M/HBzDc5Q1vhwO8LvC5N5jDV5MQXVg/u1wLUe789TP8F88hpFnQIdkUYPyxATJlhlYPb/WBu97+GkUpHJ6HZIEZb3lX/qkx9vw0hJYpsBasQE807+LsE6+AkqKM1tgAeuMGgC/HYNGKyoKmFL37uw9XVXW5k3Ro/NX7PLMd3WVEtbr21kPLiuwpSuG1gLVUguCXb+JMxdcF2ErYsgHfNfIpt06M5GANl4doWyfzgT25HM3U+9h9eghP7BKbBauKi08+t9eNDg0O9uUXN5uusGdumu6v3iLT4ONCTx+RjmBeXt7/9XE8sdCmhbECPjG4rHAG6jTBy/1bANx+dhjPXIiJh54lW+8pGNJdw28z3floSTkbnoVozF4qteoC/w4wDDjxcYWAO377gsngU8g1ZltP9CIJ/23r5vfyBj/8YnLmnH1Z631Ao6dL5OrlyihsmjiyBqbTVRKMamxm4cy4XUG1LQzeZ22V1gSupMIlky45pDPw3pA9LJ11gpees/KwOhVeh/bvfyVTIbuKu+8Q3L5LcEPA1arw9z+bjI7b83DfgxrBzhsErlgOAwsJu8xqH+peKtjLBlwphVNpeP+kPQ9dTsGLB608LBtwpRTeBga2Fa6lSaumQ3r2KsRX7OtvBuAmNzR7N3AAkMnCzJz9PKvagVWpurM5/5y7qAMANUZZE1KZ69DqfH30D3slpfYQe++16uHJS3A5Yv+9PSAI3GL1Nfr7Cl8Bezst36kZmLlS2Nc08+vw3HOXfJW/ur1wu0DVBSutaOCN1s3V5rcNvNaFuAoVV121aZb/PmpzsspNiwr34i/Er93MVTtyYhHU5VohKwnY2wDqU82m7orjydXP0UsCrmbQYt8tD3g6IvdLSe5PH7VomoPunboYyy1f6ktK2TAdYRS4p+aABT+26TwihMidTPy/TM/EZcBY5HUEPUJyE8zL60gjSEk47RYc1XURu9b6P7vslVpOgNBqAAAAAElFTkSuQmCC",mY=De.p+"static/a.d3f19668.png",pY=De.p+"static/b.ba7414bd.png",yY=De.p+"static/c.2b6f6bd3.png",EY=De.p+"static/d.f1216ccd.png",Av={cylinder:"cylinder___rUBlO",cylinderBox:"cylinderBox___NurwX",cylinder1:"cylinder1___LPJD0",item1:"item1___ekrFi",item2:"item2___PuVOv",item3:"item3___x9UjL",point:"point___ZJ1ZD",cylinder2:"cylinder2___aQBbC",cylinder3:"cylinder3___lefpl",textBox:"textBox____wuhT"},xY=Object.defineProperty,wY=Object.defineProperties,bY=Object.getOwnPropertyDescriptors,aO=Object.getOwnPropertySymbols,SY=Object.prototype.hasOwnProperty,CY=Object.prototype.propertyIsEnumerable,iO=(E,a,y)=>a in E?xY(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,oO=(E,a)=>{for(var y in a||(a={}))SY.call(a,y)&&iO(E,y,a[y]);if(aO)for(var y of aO(a))CY.call(a,y)&&iO(E,y,a[y]);return E},sO=(E,a)=>wY(E,bY(a)),PY=({dataSource:E=[]})=>{const[a,y]=(0,Ne.useState)([]),[x,b]=(0,Ne.useState)(0),z=(0,Ne.useRef)(String(Math.random()).slice(-6));console.log(E,a,223),(0,Ne.useEffect)(()=>{if(E!=null&&E.length){const se=ae(E),fe=E.map((pe,be)=>sO(oO({value:pe,lineWidth:30,cylinderWidth:40+se[be]},re[be]),{from:re[be].from+z.current,to:re[be].to+z.current}));y(fe),b(x+1)}},[JSON.stringify(E)]),(0,Ne.useEffect)(()=>{x>0&&te()},[x]),(0,Ne.useEffect)(()=>(window.addEventListener("resize",te),()=>{window.removeEventListener("resize",te)}),[x]);const te=()=>{const se=a.map((fe,pe)=>{const{from:be,to:Oe}=fe,_e=document.querySelector(`#${be}`),je=document.querySelector(`#${Oe}`),ze=_e.getBoundingClientRect(),Je=je.getBoundingClientRect(),qe=Math.abs(Je.left-ze.left);return sO(oO({},fe),{lineWidth:qe})});y(se)},re=[{title:"\u90E8\u5206\u638C\u63E1  ",from:"lineStart1",to:"lineEnd1"},{title:"\u5168\u90E8\u638C\u63E1  ",from:"lineStart2",to:"lineEnd2"},{title:"\u672A  \u638C  \u63E1  ",from:"lineStart3",to:"lineEnd3"}];function ae(se){const fe=se.reduce((pe,be)=>pe+be,0);return se.map(pe=>pe/fe*122)}return Ne.createElement("div",{className:Av.cylinder},Ne.createElement("div",{className:Av.cylinderBox},a.map((se,fe)=>{const{cylinderWidth:pe,lineWidth:be,from:Oe}=se,_e=fe+1;return Ne.createElement("div",{key:_e,className:Av[`cylinder${_e}`],style:{width:pe+"rem"}},Ne.createElement("div",{className:Av.item1}),Ne.createElement("div",{className:Av.item2}),Ne.createElement("div",{className:Av.item3}),Ne.createElement("div",{id:Oe,style:{width:be},className:Av.point}))})),Ne.createElement("div",{className:Av.textBox},a.map((se,fe)=>{const{title:pe,to:be,value:Oe}=se,_e=fe+1;return Ne.createElement("div",{key:_e,id:be},Ne.createElement("span",{dangerouslySetInnerHTML:{__html:`${pe}${Oe}%`}}))})))},Ls=De(59301),BY=Object.defineProperty,lO=Object.getOwnPropertySymbols,IY=Object.prototype.hasOwnProperty,DY=Object.prototype.propertyIsEnumerable,uO=(E,a,y)=>a in E?BY(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,cO=(E,a)=>{for(var y in a||(a={}))IY.call(a,y)&&uO(E,y,a[y]);if(lO)for(var y of lO(a))DY.call(a,y)&&uO(E,y,a[y]);return E},MY=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(se){b(se)}},te=ae=>{try{re(y.throw(ae))}catch(se){b(se)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,te);re((y=y.apply(E,a)).next())}),LY=({subjectId:E,uuid:a,isAll:y})=>{const[x,b]=(0,Ne.useState)(!1),[z,te]=(0,Ne.useState)({course_id:null}),[re,ae]=(0,Ne.useState)(!0),[se,fe]=(0,Ne.useState)(!0),[pe,be]=(0,Ne.useState)([]),[Oe]=(0,Ce.useSearchParams)(),[_e,je]=(0,Ne.useState)({graphCount:0,tagCount:0,resourceCount:0,proportionCount:0}),ze=[{name:"\u5DF2\u5B8C\u6210",value:0,itemStyle:{color:"rgb(223,209,38)"}},{name:"\u5F85\u5F00\u59CB",value:0,itemStyle:{color:"rgb(6,234,230)"}},{name:"\u90E8\u5206\u5B8C\u6210",value:0,itemStyle:{color:"rgb(6,110,247)"}}],[Je,qe]=(0,Ne.useState)({averageCompletionRate:0,averageMasteryRate:0,completionRate:ze,masteryRate:[0,0,0],course_rank_num:0,course_rank_all_num:0,system_rank_num:0,system_rank_all_num:0});(0,Ne.useEffect)(()=>{x?ot(z):te({course_id:null})},[x]),(0,Ne.useEffect)(()=>{x&&b(!1)},[a]);const ot=(Et,bt=!1)=>MY(void 0,null,function*(){var Ct,St,Zt,sn,gn,Dn,or,Vn,Dr,sa,vr,mr,Ir,ca,pr;bt?fe(!0):ae(!0);const Ca=yield(0,ee.ZP)(y?"/api/knowledge/v2/subject_statistics.json":"/api/knowledge/v2/knowledge_statistics.json",{method:"get",params:cO({subject_id:E,parentNodeUuid:a,labels:"\u56FE\u8C31,\u6807\u7B7E,\u8D44\u6E90",depth:-1},Et)});if((Ca==null?void 0:Ca.status)===0){let Fi=(Ct=Ca==null?void 0:Ca.data)==null?void 0:Ct.metricCounters;Fi=Fi||[];const Ti={graphCount:((St=Fi.find(Hi=>(Hi==null?void 0:Hi.name)==="\u56FE\u8C31"))==null?void 0:St.count)||0,tagCount:((Zt=Fi.find(Hi=>(Hi==null?void 0:Hi.name)==="\u6807\u7B7E"))==null?void 0:Zt.count)||0,resourceCount:((sn=Fi.find(Hi=>(Hi==null?void 0:Hi.name)==="\u8D44\u6E90"))==null?void 0:sn.count)||0,proportionCount:(gn=Ca==null?void 0:Ca.data)==null?void 0:gn.resource_rate};let di=Object.entries((Dn=Ca==null?void 0:Ca.data)==null?void 0:Dn.study_complete_hash).map(([Hi,ho],Mo)=>({name:ze[Mo].name,value:ho,itemStyle:ze[Mo].itemStyle}));const Ha={averageCompletionRate:(or=Ca==null?void 0:Ca.data)==null?void 0:or.study_complete_rate,averageMasteryRate:(Vn=Ca==null?void 0:Ca.data)==null?void 0:Vn.study_grasp_rate,completionRate:di,masteryRate:Object.values((Dr=Ca==null?void 0:Ca.data)==null?void 0:Dr.study_grasp_hash),course_rank_num:(sa=Ca==null?void 0:Ca.data)==null?void 0:sa.course_rank_num,course_rank_all_num:(vr=Ca==null?void 0:Ca.data)==null?void 0:vr.course_rank_all_num,system_rank_num:(mr=Ca==null?void 0:Ca.data)==null?void 0:mr.system_rank_num,system_rank_all_num:(Ir=Ca==null?void 0:Ca.data)==null?void 0:Ir.system_rank_all_num},Ii=(ca=Ca==null?void 0:Ca.courses)==null?void 0:ca.map(Hi=>({label:Hi.name,value:Hi.id}));be(Ii),je(Ti),qe(Ha),bt||te({course_id:((pr=Ii==null?void 0:Ii[0])==null?void 0:pr.value)||null})}setTimeout(()=>{ae(!1)},500),fe(!1)}),pt=Et=>{z.course_id=Et,te(cO({},z)),ot(z,!0)};return Ls.createElement(yn,null,Ls.createElement("div",{className:Wc.statistics},Ls.createElement("div",{onClick:()=>b(!0),className:Wc.noUnfold},Ls.createElement("img",{style:{width:"32rem",marginBottom:"4rem"},src:AY}),Ls.createElement("span",null,"\u7EDF"),Ls.createElement("span",null,"\u8BA1")),Ls.createElement("div",{className:Wc.wrapBox,style:{right:x?0:"-600rem"}},re&&Ls.createElement(ue.Z,{style:{width:"100%",marginTop:"200rem"},spinning:!0}),!re&&Ls.createElement(Ls.Fragment,null,Ls.createElement("div",{className:Wc.scrollBox},Ls.createElement("div",{className:Wc.content},Ls.createElement("div",{className:Wc.title},Ls.createElement("img",{src:gY}),Ls.createElement("span",null,"\u56FE\u8C31\u7EDF\u8BA1\u5206\u6790")),Ls.createElement("div",{className:Wc.top},Ls.createElement("div",{className:Wc.topLi},Ls.createElement("div",null,_e==null?void 0:_e.graphCount),Ls.createElement("div",null,"\u77E5\u8BC6\u56FE\u8C31\u6570\u91CF")),Ls.createElement("div",{className:Wc.topLi},Ls.createElement("div",null,_e==null?void 0:_e.tagCount),Ls.createElement("div",null,"\u6807\u7B7E\u8282\u70B9\u6570\u91CF")),Ls.createElement("div",{className:Wc.topLi},Ls.createElement("div",null,_e==null?void 0:_e.resourceCount),Ls.createElement("div",null,"\u8D44\u6E90\u8282\u70B9\u6570\u91CF"))),Ls.createElement("div",{style:{marginTop:"20rem"},className:Wc.title},Ls.createElement("img",{src:vY}),Ls.createElement("span",null,"\u5B66\u4E60\u7EDF\u8BA1\u5206\u6790")),Ls.createElement(ue.Z,{spinning:se},Ls.createElement("div",{className:Wc.bottom},Ls.createElement("div",{className:Wc.bottomLi,style:{marginTop:"82rem",marginRight:"26rem"}},Oe.get("type")!=="classrooms"&&Ls.createElement(Ba.default,{className:Wc.select,options:pe,value:z==null?void 0:z.course_id,size:"small",onChange:pt,placeholder:"\u8BF7\u9009\u62E9",getPopupContainer:Et=>Et.parentNode,style:{width:"222rem"},suffixIcon:Ls.createElement("i",{className:"iconfont icon-a-bianzu11",style:{color:"#fff",fontSize:"12rem"}})}),Ls.createElement("b",{style:{fontSize:"26rem",marginTop:"5rem"}},Je==null?void 0:Je.course_rank_num),Ls.createElement("div",{style:{fontSize:"16rem",marginTop:"4rem"}},"\u8BFE\u5802\u6392\u540D"),Ls.createElement("div",{style:{fontSize:"16rem",marginTop:"4rem"}},"\uFF08\u5171",Je==null?void 0:Je.course_rank_all_num,"\u4EBA\uFF09"),Ls.createElement("img",{src:mY})),Ls.createElement("div",{className:Wc.bottomLi,style:{marginTop:"82rem"}},Ls.createElement("b",{style:{fontSize:"26rem",marginTop:"30rem"}},Je==null?void 0:Je.system_rank_num),Ls.createElement("div",{style:{fontSize:"16rem",marginTop:"4rem"}},"\u7CFB\u7EDF\u6392\u540D"),Ls.createElement("div",{style:{fontSize:"16rem",marginTop:"4rem"}},"\uFF08\u5171",Je==null?void 0:Je.system_rank_all_num,"\u4EBA\uFF09"),Ls.createElement("img",{src:pY})),Ls.createElement("div",{className:Wc.bottomLi,style:{marginTop:"104rem",marginRight:"26rem"}},Ls.createElement("b",{style:{fontSize:"26rem",marginTop:"30rem"}},Je==null?void 0:Je.averageCompletionRate,"%"),Ls.createElement("div",{style:{fontSize:"14rem",marginTop:"2rem"}},"\u5E73\u5747\u5B8C\u6210\u7387"),Ls.createElement("img",{src:yY})),Ls.createElement("div",{className:Wc.bottomLi,style:{marginTop:"104rem"}},Ls.createElement("b",{style:{fontSize:"26rem",marginTop:"30rem"}},Je==null?void 0:Je.averageMasteryRate,"%"),Ls.createElement("div",{style:{fontSize:"14rem",marginTop:"2rem"}},"\u5E73\u5747\u638C\u63E1\u7387"),Ls.createElement("img",{src:EY})),Ls.createElement("div",{className:Wc.echarts},Ls.createElement("div",{className:Wc.name},"\u5B8C\u6210\u60C5\u51B5"),Ls.createElement(gl,{dataSource:Je==null?void 0:Je.completionRate})),Ls.createElement("div",{className:Wc.echarts},Ls.createElement("div",{className:Wc.name},"\u638C\u63E1\u60C5\u51B5"),Ls.createElement(PY,{dataSource:Je==null?void 0:Je.masteryRate})))))),x&&Ls.createElement("div",{onClick:()=>b(!1),className:Wc.unfold})))))},xp=De(59301),OY=Object.defineProperty,Sx=Object.getOwnPropertySymbols,dO=Object.prototype.hasOwnProperty,fO=Object.prototype.propertyIsEnumerable,hO=(E,a,y)=>a in E?OY(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,Cx=(E,a)=>{for(var y in a||(a={}))dO.call(a,y)&&hO(E,y,a[y]);if(Sx)for(var y of Sx(a))fO.call(a,y)&&hO(E,y,a[y]);return E},TY=(E,a)=>{var y={};for(var x in E)dO.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&Sx)for(var x of Sx(E))a.indexOf(x)<0&&fO.call(E,x)&&(y[x]=E[x]);return y},AO=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(se){b(se)}},te=ae=>{try{re(y.throw(ae))}catch(se){b(se)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,te);re((y=y.apply(E,a)).next())});const FY=E=>{var a=E,{pathsDetail:y,user:x,globalSetting:b,loading:z,dispatch:te,tpacti:re,settupuname:ae,settpacti:se}=a,fe=TY(a,["pathsDetail","user","globalSetting","loading","dispatch","tpacti","settupuname","settpacti"]),pe,be,Oe,_e,je,ze,Je,qe,ot;const pt=(0,Ce.useParams)(),[Et,bt]=(0,Ne.useState)(""),[Ct,St]=(0,Ne.useState)([]),[Zt]=(0,Ce.useSearchParams)(),[sn,gn]=(0,Ne.useState)([]),[Dn,or]=(0,Ne.useState)(1);(0,Ne.useEffect)(()=>{var sa,vr,mr,Ir,ca,pr;if((sa=y==null?void 0:y.detail)!=null&&sa.nodes&&Dn===1){St((vr=y==null?void 0:y.detail)==null?void 0:vr.nodes),bt((ca=(Ir=(mr=y==null?void 0:y.detail)==null?void 0:mr.nodes)==null?void 0:Ir[1])==null?void 0:ca.uuid);let Ca=[...(pr=y==null?void 0:y.detail)==null?void 0:pr.nodes];gn(Ca==null?void 0:Ca.splice(1)),or(2)}},[(pe=y==null?void 0:y.detail)==null?void 0:pe.nodes]),(0,Ne.useEffect)(()=>{var sa,vr,mr;bt(re||((mr=(vr=(sa=y==null?void 0:y.detail)==null?void 0:sa.nodes)==null?void 0:vr[1])==null?void 0:mr.uuid))},[re]);function Vn(){return AO(this,null,function*(){var sa,vr,mr,Ir,ca,pr,Ca,Fi;if(Zt.get("type")==="classrooms"){let Ti=yield te({type:"pathsDetail/getCourseDetail",payload:Cx({id:pt.pathId,knowledge:!0},(0,Bt.oP)())});St(Ti==null?void 0:Ti.nodes),bt((vr=(sa=Ti==null?void 0:Ti.nodes)==null?void 0:sa[1])==null?void 0:vr.uuid),se((Ir=(mr=Ti==null?void 0:Ti.nodes)==null?void 0:mr[1])==null?void 0:Ir.uuid);let di=[...Ti==null?void 0:Ti.nodes];gn(di==null?void 0:di.splice(1))}else{let Ti=yield te({type:"pathsDetail/getPathsDetail",payload:Cx({id:pt.pathId,knowledge:!0},(0,Bt.oP)())});St(Ti==null?void 0:Ti.nodes),bt((pr=(ca=Ti==null?void 0:Ti.nodes)==null?void 0:ca[1])==null?void 0:pr.uuid),se((Fi=(Ca=Ti==null?void 0:Ti.nodes)==null?void 0:Ca[1])==null?void 0:Fi.uuid);let di=[...Ti==null?void 0:Ti.nodes];gn(di==null?void 0:di.splice(1))}})}function Dr(){return AO(this,null,function*(){var sa,vr,mr,Ir,ca,pr,Ca,Fi,Ti,di,Ha,Ii,Hi,ho;if(Zt.get("type")==="classrooms"){let Mo=yield te({type:"pathsDetail/getCourseDetail",payload:Cx({id:(sa=y==null?void 0:y.detail)==null?void 0:sa.id,knowledge:!0},(0,Bt.oP)())});bt((mr=(vr=Mo==null?void 0:Mo.nodes)==null?void 0:vr[1])==null?void 0:mr.uuid),se((ca=(Ir=Mo==null?void 0:Mo.nodes)==null?void 0:Ir[1])==null?void 0:ca.uuid),ae(((Ca=(pr=Mo==null?void 0:Mo.nodes)==null?void 0:pr[1])==null?void 0:Ca.name)||"\u8BFE\u7A0B\u56FE\u8C31")}else{let Mo=yield te({type:"pathsDetail/getPathsDetail",payload:Cx({id:(Fi=y==null?void 0:y.detail)==null?void 0:Fi.id,knowledge:!0},(0,Bt.oP)())});bt((di=(Ti=Mo==null?void 0:Mo.nodes)==null?void 0:Ti[1])==null?void 0:di.uuid),se((Ii=(Ha=Mo==null?void 0:Mo.nodes)==null?void 0:Ha[1])==null?void 0:Ii.uuid),ae(((ho=(Hi=Mo==null?void 0:Mo.nodes)==null?void 0:Hi[1])==null?void 0:ho.name)||"\u8BFE\u7A0B\u56FE\u8C31")}})}return xp.createElement("div",{style:{height:"calc(100vh - 72px - 170rem)"}},(Ct==null?void 0:Ct.length)>0&&xp.createElement("div",{className:qr.content},((be=Ct==null?void 0:Ct[0])==null?void 0:be.uuid)===Et&&Et&&xp.createElement(GZ,{onAddSuccess:Dr,setActivated:bt,subjectId:(Oe=y==null?void 0:y.detail)==null?void 0:Oe.id}),((_e=Ct==null?void 0:Ct[0])==null?void 0:_e.uuid)!==Et&&Et&&xp.createElement(EZ,{tpacti:re,setactivied:()=>{var sa;bt((sa=Ct==null?void 0:Ct[0])==null?void 0:sa.uuid)},initdata:Dr,Tabsdatas:sn,uuid:Et})),(je=y==null?void 0:y.detail)!=null&&je.can_managed?xp.createElement(hY,{isAll:((ze=Ct==null?void 0:Ct[0])==null?void 0:ze.uuid)===Et,subjectId:(Je=y==null?void 0:y.detail)==null?void 0:Je.id,uuid:Et}):xp.createElement(LY,{isAll:((qe=Ct==null?void 0:Ct[0])==null?void 0:qe.uuid)===Et,subjectId:(ot=y==null?void 0:y.detail)==null?void 0:ot.id,uuid:Et}))};var NY=(0,Ce.connect)(({pathsDetail:E,user:a,loading:y,globalSetting:x})=>({pathsDetail:E,user:a,globalSetting:x,loading:y.models.index}))(FY),Dl=De(59301),RY=Object.defineProperty,Px=Object.getOwnPropertySymbols,gO=Object.prototype.hasOwnProperty,vO=Object.prototype.propertyIsEnumerable,mO=(E,a,y)=>a in E?RY(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,pO=(E,a)=>{for(var y in a||(a={}))gO.call(a,y)&&mO(E,y,a[y]);if(Px)for(var y of Px(a))vO.call(a,y)&&mO(E,y,a[y]);return E},_Y=(E,a)=>{var y={};for(var x in E)gO.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&Px)for(var x of Px(E))a.indexOf(x)<0&&vO.call(E,x)&&(y[x]=E[x]);return y},yO=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(se){b(se)}},te=ae=>{try{re(y.throw(ae))}catch(se){b(se)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,te);re((y=y.apply(E,a)).next())});const kY=E=>{var a=E,{pathsDetail:y,user:x,globalSetting:b,loading:z,dispatch:te,activied:re,setactivied:ae}=a,se=_Y(a,["pathsDetail","user","globalSetting","loading","dispatch","activied","setactivied"]),fe,pe,be,Oe,_e,je,ze,Je,qe,ot,pt,Et,bt,Ct;const St=(0,Ce.useParams)(),[Zt]=(0,Ce.useSearchParams)(),[sn,gn]=(0,Ne.useState)(((be=(pe=(fe=y==null?void 0:y.detail)==null?void 0:fe.nodes)==null?void 0:pe[0])==null?void 0:be.name)||"\u8BFE\u7A0B\u56FE\u8C31"),[Dn,or]=(0,Ne.useState)(((je=(_e=(Oe=y==null?void 0:y.detail)==null?void 0:Oe.route_nodes)==null?void 0:_e[0])==null?void 0:je.name)||"\u5B66\u4E60\u8DEF\u5F84"),[Vn,Dr]=(0,Ne.useState)([]),[sa,vr]=(0,Ne.useState)(),[mr,Ir]=(0,Ne.useState)(),[ca]=me.default.useForm(),[pr,Ca]=(0,Ne.useState)(!1),[Fi,Ti]=(0,Ne.useState)(!1),di=[{name:"\u8BFE\u7A0B\u4FE1\u606F",key:1,content:Dl.createElement(rn,null),isshow:Zt.get("type")!=="classrooms"},{name:"\u8BFE\u7A0B\u56FE\u8C31",key:3,content:((Je=(ze=y==null?void 0:y.detail)==null?void 0:ze.nodes)==null?void 0:Je.length)<=1?Dl.createElement(da,{text:"\u6682\u65E0\u56FE\u8C31\uFF0C\u7ACB\u5373\u65B0\u5EFA\u4E00\u4E2A\u56FE\u8C31\u5427\uFF5E",textColor:"#fff",buttonText:((qe=y==null?void 0:y.detail)==null?void 0:qe.can_managed)&&"\u65B0\u5EFA\u56FE\u8C31",buttonTexttow:((ot=y==null?void 0:y.detail)==null?void 0:ot.can_managed)&&Zt.get("type")!=="classrooms"&&"\u751F\u6210\u56FE\u8C31",ontwoClick:()=>yO(void 0,null,function*(){var Ii;let Hi=yield(0,ee.ZP)("/api/knowledge/v2/sync.json",{method:"post",body:{subject_id:(Ii=y==null?void 0:y.detail)==null?void 0:Ii.id}});Hi.status===0&&ke.ZP.info(Hi==null?void 0:Hi.message)}),onClick:()=>Ti(!0)}):Dl.createElement(NY,{settupuname:gn,settpacti:vr,tpacti:sa}),isshow:!0},{name:"\u5B66\u4E60\u8DEF\u5F84",key:2,content:Dl.createElement(ci,{setxxljac:Ir,dispatch:te,xxljac:mr,pathsDetail:y}),isshow:!0},{name:"\u4EA4\u6D41\u53CD\u9988",key:4,content:Dl.createElement(Me,null),isshow:Zt.get("type")!=="classrooms"}].filter(Ii=>Ii==null?void 0:Ii.isshow);(0,Ne.useEffect)(()=>{var Ii,Hi;if((Ii=y==null?void 0:y.detail)!=null&&Ii.nodes){let ho=[...(Hi=y==null?void 0:y.detail)==null?void 0:Hi.nodes];Dr(ho==null?void 0:ho.splice(1))}},[(pt=y==null?void 0:y.detail)==null?void 0:pt.nodes]);const Ha=Ii=>yO(void 0,null,function*(){var Hi,ho,Mo,zs,As,Bo,ds,$o,fs,Is;const{nodeType:El,description:cl,name:Oo,tags:Zo}=Ii;Ca(!0);const $i=yield(0,ee.ZP)("/api/knowledge/v2/add_node.json",{method:"POST",body:{label:"\u56FE\u8C31",subject_id:(Hi=y==null?void 0:y.detail)==null?void 0:Hi.id,properties:{description:cl,rootNodeUuid:(zs=(Mo=(ho=y==null?void 0:y.detail)==null?void 0:ho.nodes)==null?void 0:Mo[0])==null?void 0:zs.uuid,name:Oo,nodeType:El[0],tags:(Zo==null?void 0:Zo.join("\uFF0C"))||"",color:"1"},relationships:[{startNodeUuid:(ds=(Bo=(As=y==null?void 0:y.detail)==null?void 0:As.nodes)==null?void 0:Bo[0])==null?void 0:ds.uuid,type:"\u5305\u542B"}]}});($i==null?void 0:$i.status)===0&&(Ti(!1),vr(($o=$i==null?void 0:$i.data)==null?void 0:$o.uuid),gn(Oo),ae(3),Zt.get("type")==="classrooms"?te({type:"pathsDetail/getCourseDetail",payload:pO({id:(fs=y==null?void 0:y.detail)==null?void 0:fs.id,knowledge:!0},(0,Bt.oP)())}):te({type:"pathsDetail/getPathsDetail",payload:pO({id:(Is=y==null?void 0:y.detail)==null?void 0:Is.id,knowledge:!0},(0,Bt.oP)())})),Ca(!1)});return Dl.createElement("div",null,Dl.createElement("div",{className:un.tabs},di==null?void 0:di.map(Ii=>{var Hi,ho,Mo,zs,As,Bo,ds,$o,fs,Is,El,cl;return Dl.createElement("div",{onClick:()=>{var Oo,Zo,$i,Ao,So,rs,oo,ws;ae(Ii.key),(Ii==null?void 0:Ii.name)==="\u8BFE\u7A0B\u56FE\u8C31"&&(console.log("---",2),gn(((Oo=Vn==null?void 0:Vn[0])==null?void 0:Oo.name)||"\u8BFE\u7A0B\u56FE\u8C31"),vr((Zo=Vn==null?void 0:Vn[0])==null?void 0:Zo.uuid)),(Ii==null?void 0:Ii.name)==="\u5B66\u4E60\u8DEF\u5F84"&&(or(((So=(Ao=($i=y==null?void 0:y.detail)==null?void 0:$i.route_nodes)==null?void 0:Ao[0])==null?void 0:So.name)||"\u5B66\u4E60\u8DEF\u5F84"),Ir((ws=(oo=(rs=y==null?void 0:y.detail)==null?void 0:rs.route_nodes)==null?void 0:oo[0])==null?void 0:ws.id))},className:re===(Ii==null?void 0:Ii.key)?un.activied:un.tab},((Ii==null?void 0:Ii.name)==="\u8BFE\u7A0B\u4FE1\u606F"||(Ii==null?void 0:Ii.name)==="\u4EA4\u6D41\u53CD\u9988")&&(Ii==null?void 0:Ii.name),(Ii==null?void 0:Ii.name)==="\u8BFE\u7A0B\u56FE\u8C31"&&Dl.createElement(cn.Z,{overlayClassName:un.dropdownst,disabled:(Vn==null?void 0:Vn.length)===0,menu:{items:Vn==null?void 0:Vn.map(Oo=>({label:Dl.createElement(mn.Z,{title:Oo==null?void 0:Oo.name}," ",Dl.createElement("span",{className:un.dropnametext,style:{width:"100%"},onClick:Zo=>{Zo.stopPropagation(),gn(Oo==null?void 0:Oo.name),vr(Oo==null?void 0:Oo.uuid),ae(3)}},Oo==null?void 0:Oo.name)),key:Oo==null?void 0:Oo.uuid,show:!0})),selectable:!0,selectedKeys:[sa||((Mo=(ho=(Hi=y==null?void 0:y.detail)==null?void 0:Hi.nodes)==null?void 0:ho[1])==null?void 0:Mo.uuid)]}},Dl.createElement("span",{className:un.nametext},"\u8BFE\u7A0B\u56FE\u8C31 ",(Vn==null?void 0:Vn.length)>0&&Dl.createElement("i",{style:{fontSize:"12rem",marginLeft:"10rem"},className:"iconfont icon-zhankai10"}))),(Ii==null?void 0:Ii.name)==="\u5B66\u4E60\u8DEF\u5F84"&&Dl.createElement(cn.Z,{overlayClassName:un.dropdownst,disabled:((As=(zs=y==null?void 0:y.detail)==null?void 0:zs.route_nodes)==null?void 0:As.length)===0,overlayStyle:{background:"#13203D"},menu:{items:(ds=(Bo=y==null?void 0:y.detail)==null?void 0:Bo.route_nodes)==null?void 0:ds.map((Oo,Zo)=>({label:Dl.createElement(mn.Z,{title:Oo==null?void 0:Oo.name},Dl.createElement("span",{className:un.dropnametext,style:{width:"100%"},onClick:$i=>{$i.stopPropagation(),or(Oo==null?void 0:Oo.name),Ir(Oo==null?void 0:Oo.id),ae(2)}},Oo==null?void 0:Oo.name)),key:Oo==null?void 0:Oo.id,show:!0})),selectable:!0,selectedKeys:[(mr||((Is=(fs=($o=y==null?void 0:y.detail)==null?void 0:$o.route_nodes)==null?void 0:fs[0])==null?void 0:Is.id))+""]}},Dl.createElement("span",{className:un.nametext},"\u5B66\u4E60\u8DEF\u5F84 ",((cl=(El=y==null?void 0:y.detail)==null?void 0:El.route_nodes)==null?void 0:cl.length)>0&&Dl.createElement("i",{style:{fontSize:"12rem",marginLeft:"10rem"},className:"iconfont icon-zhankai10"}))))}),Dl.createElement(yn,null,Dl.createElement(Dl.Fragment,null,Zt.get("type")==="classrooms"&&(0,Md.JA)()&&Dl.createElement("div",{style:{position:"fixed",right:"20rem",top:"7rem"}},Dl.createElement("span",{onClick:()=>{var Ii;window.open((Ii=y==null?void 0:y.detail)==null?void 0:Ii.first_category_url)},style:{width:"128rem",height:"36rem",lineHeight:"36rem",display:"inline-block",textAlign:"center",background:"#fff",color:"#1B8565",fontSize:"14rem",borderRadius:"20rem",cursor:"pointer"}},"\u8FD4\u56DE\u6559\u5B66\u8BFE\u5802")),re===3&&((Et=y==null?void 0:y.detail)==null?void 0:Et.can_managed)&&Dl.createElement("div",{style:{position:"fixed",right:Zt.get("type")!=="classrooms"?"170rem":"20rem",top:"7rem"}},Dl.createElement("span",{onClick:()=>{Ti(!0)},style:{width:"128rem",height:"36rem",lineHeight:"36rem",display:"inline-block",textAlign:"center",background:"#fff",color:"#1B8565",fontSize:"14rem",borderRadius:"20rem",cursor:"pointer"}},"\u521B\u5EFA\u77E5\u8BC6\u56FE\u8C31")),Zt.get("type")!=="classrooms"&&(re===2||re===3)&&!(0,Md.JA)()&&Dl.createElement(Kt,{activied:re,styles:{position:"fixed",right:re===3?"20rem":"170rem",top:"7rem"}})))),Dl.createElement(Pe.default,{open:Fi,centered:!0,width:"1000rem",okText:"\u4FDD\u5B58",onCancel:()=>Ti(!1),cancelText:"\u53D6\u6D88",afterClose:()=>{ca.resetFields()},confirmLoading:pr,onOk:()=>ca.submit(),title:"\u65B0\u589E\u77E5\u8BC6\u56FE\u8C31"},Dl.createElement("div",{className:un.modal},Dl.createElement("div",{className:un.mHead},"\u8282\u70B9\u5C5E\u6027"),Dl.createElement(me.default,{form:ca,scrollToFirstError:!0,layout:"horizontal",colon:!1,size:"large",labelCol:{flex:"110rem"},onFinish:Ha,className:un.form},Dl.createElement(me.default.Item,{label:"\u56FE\u8C31\u540D\u79F0",name:"name",rules:[{required:!0,message:"\u8BF7\u8F93\u5165\u8282\u70B9\u540D\u79F0"},{type:"string",max:60,message:"\u8F93\u5165\u8D85\u9650\uFF0C\u8BF7\u7F29\u51CF\u5B57\u7B26\u6570"},{type:"string",whitespace:!0,message:"\u5185\u5BB9\u4E0D\u80FD\u5168\u4E3A\u7A7A\u683C"}]},Dl.createElement(xe.default,{maxLength:60,showCount:!0,placeholder:"\u8BF7\u8F93\u5165"})),Dl.createElement(me.default.Item,{label:"\u7B80\u4ECB",name:"description",rules:[{type:"string",max:5e3,message:"\u8F93\u5165\u8D85\u9650\uFF0C\u8BF7\u7F29\u51CF\u5B57\u7B26\u6570"},{type:"string",whitespace:!0,message:"\u5185\u5BB9\u4E0D\u80FD\u5168\u4E3A\u7A7A\u683C"}]},Dl.createElement(xe.default.TextArea,{maxLength:5e3,showCount:!0,placeholder:"\u8BF7\u8F93\u5165"})),Dl.createElement(me.default.Item,{className:un.mType,label:Dl.createElement("span",null,"\u56FE\u8C31\u7C7B\u578B ",Dl.createElement(mn.Z,{title:"\u5F53\u524D\u77E5\u8BC6\u56FE\u8C31\u7684\u7C7B\u578B\uFF0C\u5982\uFF1A\u5927\u7EB2\u56FE\u8C31\u3001\u80FD\u529B\u56FE\u8C31"},Dl.createElement(ui.Z,null))),name:"nodeType",rules:[{required:!0,message:"\u8BF7\u9009\u62E9\u8282\u70B9\u7C7B\u578B"}]},Dl.createElement(Pr,{subjectId:(bt=y==null?void 0:y.detail)==null?void 0:bt.id,type:1}))))),Dl.createElement("div",{className:un.placeholder}),Dl.createElement("div",{className:un.content},(Ct=di.find(Ii=>Ii.key===re))==null?void 0:Ct.content))};var UY=(0,Ce.connect)(({pathsDetail:E,user:a,loading:y,globalSetting:x})=>({pathsDetail:E,user:a,globalSetting:x,loading:y.models.index}))(kY),Bx=De(59301),jY=Object.defineProperty,Ix=Object.getOwnPropertySymbols,EO=Object.prototype.hasOwnProperty,xO=Object.prototype.propertyIsEnumerable,wO=(E,a,y)=>a in E?jY(E,a,{enumerable:!0,configurable:!0,writable:!0,value:y}):E[a]=y,bO=(E,a)=>{for(var y in a||(a={}))EO.call(a,y)&&wO(E,y,a[y]);if(Ix)for(var y of Ix(a))xO.call(a,y)&&wO(E,y,a[y]);return E},QY=(E,a)=>{var y={};for(var x in E)EO.call(E,x)&&a.indexOf(x)<0&&(y[x]=E[x]);if(E!=null&&Ix)for(var x of Ix(E))a.indexOf(x)<0&&xO.call(E,x)&&(y[x]=E[x]);return y},zY=(E,a,y)=>new Promise((x,b)=>{var z=ae=>{try{re(y.next(ae))}catch(se){b(se)}},te=ae=>{try{re(y.throw(ae))}catch(se){b(se)}},re=ae=>ae.done?x(ae.value):Promise.resolve(ae.value).then(z,te);re((y=y.apply(E,a)).next())});const{TabPane:yee}=Ot.default;var HY=(E=>(E.All="",E.Shixun="shixun",E.VideoItem="video",E.Attachment="attachment",E.group_count="group_homework",E.normal_count="normal_homework",E.ExaminationBank="exercise",E.HomeworkCommon="hack_homework",E.Discusses="Discusses",E))(HY||{});function SO(E){const a=(b,z)=>{if(b.localName===z)return b;for(let te=0,re=b;re=re.parentNode;te++){if(re.localName===z)return re;if(re==document.documentElement)return!1}},y=E.target,x=a(y,"a");if(console.log([x],x==null?void 0:x.href,44),!(x!=null&&x.href)&&y.tagName.toUpperCase()==="IMG"){let b=y.src||y.getAttribute("src");b&&b.indexOf("/images/avatars/User")===-1&&(E.stopPropagation(),E.preventDefault(),Lt.Z.publish("preview-image",b))}}const WY=E=>{var a=E,{pathsDetail:y,globalSetting:x,loading:b,dispatch:z}=a,te=QY(a,["pathsDetail","globalSetting","loading","dispatch"]);const[re]=(0,Ce.useSearchParams)(),ae=(0,Ce.useParams)(),se=(0,Ne.useRef)(),[fe,pe]=(0,Ne.useState)(""),[be,Oe]=(0,Ne.useState)(1);(0,Ne.useEffect)(()=>{re.get("tabs")&&Oe(parseInt(re.get("tabs"))||3)},[re.get("tabs")]),(0,Ne.useEffect)(()=>{if(se.current)return se.current.addEventListener("mousedown",SO),()=>{var je;(je=se.current)==null||je.removeEventListener("mousedown",SO)}},[se.current]),(0,Ne.useEffect)(()=>{ae.pathId&&_e()},[ae.pathId]),(0,Ne.useEffect)(()=>(z({type:"globalSetting/footerToggle",payload:!1}),()=>{z({type:"globalSetting/footerToggle",payload:!0})}),[]);const _e=()=>zY(void 0,null,function*(){if(re.get("type")==="classrooms"){z({type:"pathsDetail/getCourseDetail",payload:bO({id:ae.pathId,knowledge:!0},(0,Bt.oP)())});return}const je=yield z({type:"pathsDetail/getPathsDetail",payload:bO({id:ae.pathId,knowledge:!0},(0,Bt.oP)())});je!=null&&je.id&&re.get("token")&&(location.href=location.pathname)});return Bx.createElement(ue.Z,{spinning:!1},Bx.createElement("section",{id:"knowledgegraphDetail",className:Pt.bg},Bx.createElement(xt,null),Bx.createElement(UY,{activied:be,setactivied:Oe})))};var GY=(0,Ce.connect)(({pathsDetail:E,loading:a,globalSetting:y})=>({pathsDetail:E,globalSetting:y,loading:a}))(WY)},84989:function(Wt,en,De){"use strict";De.d(en,{BU:function(){return Ke},Dj:function(){return Re},gH:function(){return Ne},vp:function(){return Ce}});function Re(ke){try{ke.mozRequestFullScreen?ke.mozRequestFullScreen():ke.webkitRequestFullScreen&&ke.webkitRequestFullScreen()}catch(Pe){console.log(Pe,":e")}}function Ke(){window.top.document.webkitExitFullscreen?window.top.document.webkitExitFullscreen():document.exitFullscreen?window.top.document.exitFullscreen():document.msExitFullscreen?window.top.document.msExitFullscreen():document.mozCancelFullScreen&&window.top.document.mozCancelFullScreen()}const Ne=()=>{if(document.webkitExitFullscreen)return"webkitfullscreenchange";if(document.exitFullscreen)return"fullscreenchange";if(document.msExitFullscreen)return"msfullscreenchange";if(document.mozCancelFullScreen)return"mozfullscreenchange"};function Ce(){var ke=window.top.document.fullscreenElement||window.top.document.mozFullscreenElement||window.top.document.webkitFullscreenElement,Pe=document.fullscreenEnabled||document.mozFullscreenEnabled||document.webkitFullscreenEnabled;return console.log("fullscreenElement",ke),window.isFullScreen?window.isFullScreen:ke!=null}},40197:function(Wt,en,De){"use strict";De.d(en,{rX:function(){return ie},pW:function(){return ce},gy:function(){return ge},xY:function(){return he},O5:function(){return de},tJ:function(){return ue},o1:function(){return ee},Rd:function(){return oe}});var Re=De(25690),Ke=De(43418),Ne=De(28103),Ce=De(8591),ke=De(48790),Pe=De(51257),ve=De(87169),ye=De(25510),we="data:image/png;base64,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",me=De.p+"static/newqrcode.a8740efb.png",Ae=De(32637),Ee=De(59301),xe=(Se,Be,Fe)=>new Promise((Te,Ue)=>{var We=At=>{try{Xe(Fe.next(At))}catch(lt){Ue(lt)}},$e=At=>{try{Xe(Fe.throw(At))}catch(lt){Ue(lt)}},Xe=At=>At.done?Te(At.value):Promise.resolve(At.value).then(We,$e);Xe((Fe=Fe.apply(Se,Be)).next())});const ue=(Se,Be=!1)=>!!(ee(Se)&&ne(Be)),ee=Se=>(0,ke.bg)()?!0:(Se({type:"user/showPopLogin",payload:{showPopLogin:!0,showClosable:!0}}),!1),ne=(Se=!1)=>{var Be;const{user:Fe}=(0,Re.getDvaApp)()._store.getState();return(Be=Fe.userInfo)!=null&&Be.profile_completed?!0:(Ke.default.confirm({title:"\u63D0\u793A",width:530,centered:!0,content:"\u60A8\u9700\u8981\u53BB\u5B8C\u5584\u60A8\u7684\u4E2A\u4EBA\u8D44\u6599\uFF0C\u624D\u80FD\u4F7F\u7528\u6B64\u529F\u80FD",okText:"\u7ACB\u5373\u5B8C\u5584",cancelText:"\u7A0D\u540E\u5B8C\u5584",onOk:()=>{(0,Pe.xg)("/account/profile/edit"),le()}}),!1)},le=()=>{Ke.default.success({title:"\u63D0\u793A",width:430,closable:!0,centered:!0,content:"\u5DF2\u5B8C\u5584\u4E2A\u4EBA\u8D44\u6599\uFF1F\u8BF7\u5237\u65B0\u9875\u9762",okText:"\u7ACB\u5373\u5237\u65B0",icon:null,onOk:()=>{location.reload()}})},oe=()=>{Ke.default.warning({title:"\u63D0\u793A",icon:null,width:400,content:Ee.createElement("div",{style:{textAlign:"center"}},Ee.createElement("div",{style:{color:"#191919",fontSize:14,marginBottom:15,textAlign:"left"}},"\u8001\u5E08\u60A8\u597D\uFF0C\u60A8\u7684\u8BFE\u5802\u8BD5\u7528\u671F\u5DF2\u7ED3\u675F\uFF0C\u76F8\u5173\u529F\u80FD\u88AB\u9650\u5236\u3002 \u5982\u9700\u7EE7\u7EED\u4F7F\u7528\uFF0C\u8BF7\u5C3D\u5FEB\u5BF9\u63A5\u4EBA\u5DE5\u652F\u6301\uFF01"),Ee.createElement("img",{style:{border:"1px solid #D8E3E9",width:190,height:180},src:Ae}),Ee.createElement("div",{style:{color:"#666666",fontSize:14,marginTop:15}},"\u6DFB\u52A0\u5BA2\u670D\u4EBA\u5458\u5FAE\u4FE1\uFF0C\u83B7\u5F97\u66F4\u591A\u652F\u6301"))})},de=()=>{var Se;const{user:Be}=(0,Re.getDvaApp)()._store.getState();return(Se=Be.userInfo)!=null&&Se.professional_certification?!0:(Ke.default.confirm({title:"\u63D0\u793A",centered:!0,content:Ee.createElement("div",{className:"tc"},"\u60A8\u9700\u8981\u53BB\u5B8C\u6210\u60A8\u7684\u804C\u4E1A\u8BA4\u8BC1\uFF0C\u624D\u80FD\u4F7F\u7528\u6B64\u529F\u80FD"),okText:"\u7ACB\u5373\u5B8C\u5584",cancelText:"\u7A0D\u540E\u5B8C\u5584",onOk:()=>{(0,Pe.xg)("/account/certification")}}),!1)},he=()=>(0,ke.V9)()?!0:(Ke.default.warning({centered:!0,width:530,title:"\u63D0\u793A",content:Ee.createElement("div",{className:"tc",style:{marginLeft:-38}},Ee.createElement("p",null,"\u626B\u7801\u52A0\u52A9\u6559\uFF0C\u7533\u8BF7\u64CD\u4F5C\u6743\u9650"),Ee.createElement("img",{src:me,width:200})),okText:"\u6211\u77E5\u9053\u4E86",maskClosable:!0}),!1),ie=(Se,Be)=>Se?!0:(Ke.default.confirm({centered:!0,zIndex:1e4,width:530,title:"\u63D0\u793A",content:Ee.createElement("div",null,Ee.createElement("p",null,Be||"\u8BE5\u5B9E\u8DF5\u8D44\u6E90\u9700\u6388\u6743\u540E\u624D\u53EF\u4F7F\u7528\u3002 \u60A8\u53EF\u4EE5\u5728QQ\u670D\u52A1\u7FA4\u5411\u7BA1\u7406\u5458\u7533\u8BF7\uFF0C\u83B7\u5F97\u7EE7\u7EED\u64CD\u4F5C\u7684\u6743\u9650\u3002"),Ee.createElement("div",{style:{marginLeft:"110px"}},Ee.createElement("img",{src:we,width:200}),Ee.createElement("div",{style:{marginLeft:"35px"}},"\u7FA4\u53F7\uFF1A","714336072"))),okText:"\u7ACB\u5373\u8054\u7CFB",cancelText:"\u53D6\u6D88",onOk:()=>{(0,Pe.xg)("https://qm.qq.com/cgi-bin/qm/qr?k=tIyDPXUtE0yEk-MOJxhH55lTUJS-nYAM&jump_from=webapi")}}),!1),ce=Se=>{Ke.default.info({title:"\u8054\u7CFB\u5E73\u53F0\u8FD0\u8425",icon:null,width:615,centered:!0,content:Ee.createElement("div",null,Ee.createElement("div",null,Ee.createElement("p",{style:{color:"#191919",fontWeight:400,fontSize:14}},"\u201C\u4FDD\u5B58\u5B9E\u9A8C\u4E34\u65F6\u6570\u636E\u201D\u529F\u80FD\u4E3A\u4ED8\u8D39\u529F\u80FD\uFF0C\u8BF7\u8054\u7CFB\u5E73\u53F0\u8FD0\u8425\u8FDB\u884C\u5F00\u901A\u3002"),Ee.createElement(Ne.Z,null),Ee.createElement("p",{style:{color:"#666666",fontSize:12}}," ",Ee.createElement("span",{style:{display:"inline-flex",width:14,height:14,borderRadius:2,background:"#F3F3F3",justifyContent:"center",color:"#666666",fontSize:12,lineHeight:"14px",marginRight:8}},"1")," \u56E0\u5E73\u53F0\u7684\u5B9E\u9A8C\u6570\u636E\u50A8\u5B58\u5BB9\u91CF\u548C\u6210\u672C\u6D88\u8017\u8F83\u5927\uFF0C\u5B9E\u8DF5\u9879\u76EE\u9ED8\u8BA4\u4FDD\u5B58\u5B9E\u9A8C\u73AF\u5883\u4E2D\u4E34\u65F6\u6570\u636E ",Ee.createElement("a",null,Se),"\u5929\u3002"),Ee.createElement("p",{style:{color:"#666666",fontSize:12}}," ",Ee.createElement("span",{style:{display:"inline-flex",width:14,height:14,borderRadius:2,background:"#F3F3F3",justifyContent:"center",color:"#666666",fontSize:12,lineHeight:"14px",marginRight:8}},"2"),"\u82E5\u60A8\u9700\u8981\u4E2A\u6027\u5316\u7684\u6570\u636E\u4FDD\u5B58\u5468\u671F\u670D\u52A1\uFF0C\u6211\u4EEC\u53EF\u4EE5\u63D0\u4F9B\u76F8\u5173\u6280\u672F\u652F\u6301\uFF0C\u5E76\u6839\u636E\u60A8\u7684\u9700\u6C42\u6536\u53D6\u5B9A\u5236\u8D39\u7528\u3002")),Ee.createElement("div",{style:{textAlign:"center",marginTop:30}},Ee.createElement("img",{style:{border:"4px solid #0152d9",borderRadius:"4px"},src:ye,alt:"\u4E8C\u7EF4\u7801",width:160})))})},ge=(Se,Be="")=>{const{shixunsDetail:{detail:Fe}}=(0,Re.getDvaApp)()._store.getState();if((Fe==null?void 0:Fe.public)===2||(Fe==null?void 0:Fe.public)===1||(Fe==null?void 0:Fe.shixun_status)===3){let Te="";return(Fe==null?void 0:Fe.public)===2&&(Te="\u5DF2\u516C\u5F00"),(Fe==null?void 0:Fe.public)===1&&(Te="\u5F85\u5BA1\u6838"),(Fe==null?void 0:Fe.shixun_status)===3&&(Te="\u5DF2\u5173\u95ED"),Ke.default.info({centered:!0,icon:Ee.createElement(ve.Z,{style:{color:"#faad14"}}),width:460,title:"\u63D0\u793A",content:Ee.createElement("div",{className:"tc",style:{marginLeft:-38}},Ee.createElement("div",{style:{display:"flex",flexDirection:"column",alignItems:"flex-start",paddingLeft:38,margin:"12px 0"}},Ee.createElement("span",null,"\u8BE5\u5B9E\u8DF5\u9879\u76EE\u7684\u72B6\u6001\u4E3A",Te,"\uFF0C",Be,"\u3002"),Ee.createElement("p",null,"\u5982\u6709\u9700\u8981\uFF0C\u8BF7\u8054\u7CFB\u5E73\u53F0\u7BA1\u7406\u5458\u8FDB\u884C\u6280\u672F\u652F\u6301\u3002")),Ee.createElement("img",{style:{border:"4px solid #0152d9",borderRadius:"4px"},src:ye,alt:"\u4E8C\u7EF4\u7801",width:160})),okText:"\u6211\u77E5\u9053\u4E86"}),!0}return(Fe==null?void 0:Fe.shixun_status)===2?(Ke.default.confirm({centered:!0,icon:Ee.createElement(ve.Z,null),title:"\u63D0\u793A",content:Ee.createElement("div",null,Ee.createElement("span",null,"\u8BE5\u5B9E\u8DF5\u9879\u76EE\u5DF2\u53D1\u5E03\uFF0C",Be,"\u3002"),Ee.createElement("br",null),Ee.createElement("span",null,"\u5982\u6709\u9700\u8981\uFF0C\u60A8\u53EF\u4EE5\u64A4\u9500\u53D1\u5E03\u540E\uFF0C\u518D\u8FDB\u884C\u64CD\u4F5C\u3002")),okText:"\u64A4\u9500\u53D1\u5E03",cancelText:"\u53D6\u6D88",onOk:()=>{Ke.default.confirm({width:440,centered:!0,icon:Ee.createElement(ve.Z,{style:{color:"#faad14"}}),title:"\u63D0\u793A",content:"\u64A4\u9500\u53D1\u5E03\u540E\uFF0C\u5B66\u5458\u5C06\u65E0\u6CD5\u8FDB\u884C\u7EC3\u4E60\u3002\u662F\u5426\u786E\u8BA4\u64A4\u9500\u53D1\u5E03\uFF1F",okText:"\u786E\u5B9A\u64A4\u9500\u53D1\u5E03",cancelText:"\u53D6\u6D88",onOk:()=>xe(void 0,null,function*(){(yield Se({type:"shixunsDetail/cancelRelease",payload:{id:Fe==null?void 0:Fe.identifier}})).status!==401&&(Ce.ZP.success("\u64A4\u9500\u53D1\u5E03\u6210\u529F\u3002\u5B9E\u8BAD\u56DE\u5230\u672A\u53D1\u5E03\u7684\u72B6\u6001\u3002"),Se({type:"shixunsDetail/getShixunsDetail",payload:{id:Fe==null?void 0:Fe.identifier}}),Se({type:"practiceSetting/getCommonData",payload:{id:Fe==null?void 0:Fe.identifier}}))})})}}),!0):!1}},30647:function(Wt,en,De){"use strict";De.d(en,{Z:function(){return Ri}});class Re{static install(){Object.setPrototypeOf=Object.setPrototypeOf||function(Ie,Le){return Ie.__proto__=Le,Ie},Object.assign=Object.assign||function(Ie){if(Ie==null)throw new TypeError("Cannot convert undefined or null to object");let Le=Object(Ie);for(let Me=1;Me ${Le}`;ke.ENABLE_CALLBACK&&ke.emitter.emit("log","error",Me),ke.ENABLE_ERROR&&(console.error?console.error(Me):console.warn?console.warn(Me):console.log(Me))}static i(Ie,Le){(!Ie||ke.FORCE_GLOBAL_TAG)&&(Ie=ke.GLOBAL_TAG);let Me=`[${Ie}] > ${Le}`;ke.ENABLE_CALLBACK&&ke.emitter.emit("log","info",Me),ke.ENABLE_INFO&&(console.info?console.info(Me):console.log(Me))}static w(Ie,Le){(!Ie||ke.FORCE_GLOBAL_TAG)&&(Ie=ke.GLOBAL_TAG);let Me=`[${Ie}] > ${Le}`;ke.ENABLE_CALLBACK&&ke.emitter.emit("log","warn",Me),ke.ENABLE_WARN&&(console.warn?console.warn(Me):console.log(Me))}static d(Ie,Le){(!Ie||ke.FORCE_GLOBAL_TAG)&&(Ie=ke.GLOBAL_TAG);let Me=`[${Ie}] > ${Le}`;ke.ENABLE_CALLBACK&&ke.emitter.emit("log","debug",Me),ke.ENABLE_DEBUG&&(console.debug?console.debug(Me):console.log(Me))}static v(Ie,Le){(!Ie||ke.FORCE_GLOBAL_TAG)&&(Ie=ke.GLOBAL_TAG);let Me=`[${Ie}] > ${Le}`;ke.ENABLE_CALLBACK&&ke.emitter.emit("log","verbose",Me),ke.ENABLE_VERBOSE&&console.log(Me)}}ke.GLOBAL_TAG="flv.js",ke.FORCE_GLOBAL_TAG=!1,ke.ENABLE_ERROR=!0,ke.ENABLE_INFO=!0,ke.ENABLE_WARN=!0,ke.ENABLE_DEBUG=!0,ke.ENABLE_VERBOSE=!0,ke.ENABLE_CALLBACK=!1,ke.emitter=new(Ce());var Pe=ke;class ve{constructor(){this._firstCheckpoint=0,this._lastCheckpoint=0,this._intervalBytes=0,this._totalBytes=0,this._lastSecondBytes=0,self.performance&&self.performance.now?this._now=self.performance.now.bind(self.performance):this._now=Date.now}reset(){this._firstCheckpoint=this._lastCheckpoint=0,this._totalBytes=this._intervalBytes=0,this._lastSecondBytes=0}addBytes(Ie){this._firstCheckpoint===0?(this._firstCheckpoint=this._now(),this._lastCheckpoint=this._firstCheckpoint,this._intervalBytes+=Ie,this._totalBytes+=Ie):this._now()-this._lastCheckpoint<1e3?(this._intervalBytes+=Ie,this._totalBytes+=Ie):(this._lastSecondBytes=this._intervalBytes,this._intervalBytes=Ie,this._totalBytes+=Ie,this._lastCheckpoint=this._now())}get currentKBps(){this.addBytes(0);let Ie=(this._now()-this._lastCheckpoint)/1e3;return Ie==0&&(Ie=1),this._intervalBytes/Ie/1024}get lastSecondKBps(){return this.addBytes(0),this._lastSecondBytes!==0?this._lastSecondBytes/1024:this._now()-this._lastCheckpoint>=500?this.currentKBps:0}get averageKBps(){let Ie=(this._now()-this._firstCheckpoint)/1e3;return this._totalBytes/Ie/1024}}var ye=ve;class we{constructor(Ie){this._message=Ie}get name(){return"RuntimeException"}get message(){return this._message}toString(){return this.name+": "+this.message}}class me extends we{constructor(Ie){super(Ie)}get name(){return"IllegalStateException"}}class Ae extends we{constructor(Ie){super(Ie)}get name(){return"InvalidArgumentException"}}class Ee extends we{constructor(Ie){super(Ie)}get name(){return"NotImplementedException"}}const xe={kIdle:0,kConnecting:1,kBuffering:2,kError:3,kComplete:4},ue={OK:"OK",EXCEPTION:"Exception",HTTP_STATUS_CODE_INVALID:"HttpStatusCodeInvalid",CONNECTING_TIMEOUT:"ConnectingTimeout",EARLY_EOF:"EarlyEof",UNRECOVERABLE_EARLY_EOF:"UnrecoverableEarlyEof"};class ee{constructor(Ie){this._type=Ie||"undefined",this._status=xe.kIdle,this._needStash=!1,this._onContentLengthKnown=null,this._onURLRedirect=null,this._onDataArrival=null,this._onError=null,this._onComplete=null}destroy(){this._status=xe.kIdle,this._onContentLengthKnown=null,this._onURLRedirect=null,this._onDataArrival=null,this._onError=null,this._onComplete=null}isWorking(){return this._status===xe.kConnecting||this._status===xe.kBuffering}get type(){return this._type}get status(){return this._status}get needStashBuffer(){return this._needStash}get onContentLengthKnown(){return this._onContentLengthKnown}set onContentLengthKnown(Ie){this._onContentLengthKnown=Ie}get onURLRedirect(){return this._onURLRedirect}set onURLRedirect(Ie){this._onURLRedirect=Ie}get onDataArrival(){return this._onDataArrival}set onDataArrival(Ie){this._onDataArrival=Ie}get onError(){return this._onError}set onError(Ie){this._onError=Ie}get onComplete(){return this._onComplete}set onComplete(Ie){this._onComplete=Ie}open(Ie,Le){throw new Ee("Unimplemented abstract function!")}abort(){throw new Ee("Unimplemented abstract function!")}}let ne={};function le(){let Qt=self.navigator.userAgent.toLowerCase(),Ie=/(edge)\/([\w.]+)/.exec(Qt)||/(opr)[\/]([\w.]+)/.exec(Qt)||/(chrome)[ \/]([\w.]+)/.exec(Qt)||/(iemobile)[\/]([\w.]+)/.exec(Qt)||/(version)(applewebkit)[ \/]([\w.]+).*(safari)[ \/]([\w.]+)/.exec(Qt)||/(webkit)[ \/]([\w.]+).*(version)[ \/]([\w.]+).*(safari)[ \/]([\w.]+)/.exec(Qt)||/(webkit)[ \/]([\w.]+)/.exec(Qt)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(Qt)||/(msie) ([\w.]+)/.exec(Qt)||Qt.indexOf("trident")>=0&&/(rv)(?::| )([\w.]+)/.exec(Qt)||Qt.indexOf("compatible")<0&&/(firefox)[ \/]([\w.]+)/.exec(Qt)||[],Le=/(ipad)/.exec(Qt)||/(ipod)/.exec(Qt)||/(windows phone)/.exec(Qt)||/(iphone)/.exec(Qt)||/(kindle)/.exec(Qt)||/(android)/.exec(Qt)||/(windows)/.exec(Qt)||/(mac)/.exec(Qt)||/(linux)/.exec(Qt)||/(cros)/.exec(Qt)||[],Me={browser:Ie[5]||Ie[3]||Ie[1]||"",version:Ie[2]||Ie[4]||"0",majorVersion:Ie[4]||Ie[2]||"0",platform:Le[0]||""},Qe={};if(Me.browser){Qe[Me.browser]=!0;let nt=Me.majorVersion.split(".");Qe.version={major:parseInt(Me.majorVersion,10),string:Me.version},nt.length>1&&(Qe.version.minor=parseInt(nt[1],10)),nt.length>2&&(Qe.version.build=parseInt(nt[2],10))}if(Me.platform&&(Qe[Me.platform]=!0),(Qe.chrome||Qe.opr||Qe.safari)&&(Qe.webkit=!0),Qe.rv||Qe.iemobile){Qe.rv&&delete Qe.rv;let nt="msie";Me.browser=nt,Qe[nt]=!0}if(Qe.edge){delete Qe.edge;let nt="msedge";Me.browser=nt,Qe[nt]=!0}if(Qe.opr){let nt="opera";Me.browser=nt,Qe[nt]=!0}if(Qe.safari&&Qe.android){let nt="android";Me.browser=nt,Qe[nt]=!0}Qe.name=Me.browser,Qe.platform=Me.platform;for(let nt in ne)ne.hasOwnProperty(nt)&&delete ne[nt];Object.assign(ne,Qe)}le();var oe=ne;class de extends ee{static isSupported(){try{let Ie=oe.msedge&&oe.version.minor>=15048,Le=oe.msedge?Ie:!0;return self.fetch&&self.ReadableStream&&Le}catch(Ie){return!1}}constructor(Ie,Le){super("fetch-stream-loader"),this.TAG="FetchStreamLoader",this._seekHandler=Ie,this._config=Le,this._needStash=!0,this._requestAbort=!1,this._contentLength=null,this._receivedLength=0}destroy(){this.isWorking()&&this.abort(),super.destroy()}open(Ie,Le){this._dataSource=Ie,this._range=Le;let Me=Ie.url;this._config.reuseRedirectedURL&&Ie.redirectedURL!=null&&(Me=Ie.redirectedURL);let Qe=this._seekHandler.getConfig(Me,Le),nt=new self.Headers;if(typeof Qe.headers=="object"){let Ht=Qe.headers;for(let Ln in Ht)Ht.hasOwnProperty(Ln)&&nt.append(Ln,Ht[Ln])}let kt={method:"GET",headers:nt,mode:"cors",cache:"default",referrerPolicy:"no-referrer-when-downgrade"};if(typeof this._config.headers=="object")for(let Ht in this._config.headers)nt.append(Ht,this._config.headers[Ht]);Ie.cors===!1&&(kt.mode="same-origin"),Ie.withCredentials&&(kt.credentials="include"),Ie.referrerPolicy&&(kt.referrerPolicy=Ie.referrerPolicy),this._status=xe.kConnecting,self.fetch(Qe.url,kt).then(Ht=>{if(this._requestAbort){this._requestAbort=!1,this._status=xe.kIdle;return}if(Ht.ok&&Ht.status>=200&&Ht.status<=299){if(Ht.url!==Qe.url&&this._onURLRedirect){let vn=this._seekHandler.removeURLParameters(Ht.url);this._onURLRedirect(vn)}let Ln=Ht.headers.get("Content-Length");return Ln!=null&&(this._contentLength=parseInt(Ln),this._contentLength!==0&&this._onContentLengthKnown&&this._onContentLengthKnown(this._contentLength)),this._pump.call(this,Ht.body.getReader())}else if(this._status=xe.kError,this._onError)this._onError(ue.HTTP_STATUS_CODE_INVALID,{code:Ht.status,msg:Ht.statusText});else throw new we("FetchStreamLoader: Http code invalid, "+Ht.status+" "+Ht.statusText)}).catch(Ht=>{if(this._status=xe.kError,this._onError)this._onError(ue.EXCEPTION,{code:-1,msg:Ht.message});else throw Ht})}abort(){this._requestAbort=!0}_pump(Ie){return Ie.read().then(Le=>{if(Le.done)if(this._contentLength!==null&&this._receivedLength{if(Le.code===11&&oe.msedge)return;this._status=xe.kError;let Me=0,Qe=null;if((Le.code===19||Le.message==="network error")&&(this._contentLength===null||this._contentLength!==null&&this._receivedLength299))if(this._status=xe.kError,this._onError)this._onError(ue.HTTP_STATUS_CODE_INVALID,{code:Le.status,msg:Le.statusText});else throw new we("MozChunkedLoader: Http code invalid, "+Le.status+" "+Le.statusText);else this._status=xe.kBuffering}}_onProgress(Ie){if(this._status===xe.kError)return;this._contentLength===null&&Ie.total!==null&&Ie.total!==0&&(this._contentLength=Ie.total,this._onContentLengthKnown&&this._onContentLengthKnown(this._contentLength));let Le=Ie.target.response,Me=this._range.from+this._receivedLength;this._receivedLength+=Le.byteLength,this._onDataArrival&&this._onDataArrival(Le,Me,this._receivedLength)}_onLoadEnd(Ie){if(this._requestAbort===!0){this._requestAbort=!1;return}else if(this._status===xe.kError)return;this._status=xe.kComplete,this._onComplete&&this._onComplete(this._range.from,this._range.from+this._receivedLength-1)}_onXhrError(Ie){this._status=xe.kError;let Le=0,Me=null;if(this._contentLength&&Ie.loaded=200&&Le.status<=299){if(this._status=LoaderStatus.kBuffering,Le.responseURL!=null){let Qe=this._seekHandler.removeURLParameters(Le.responseURL);Le.responseURL!==this._currentRequestURL&&Qe!==this._currentRedirectedURL&&(this._currentRedirectedURL=Qe,this._onURLRedirect&&this._onURLRedirect(Qe))}let Me=Le.getResponseHeader("Content-Length");if(Me!=null&&this._contentLength==null){let Qe=parseInt(Me);Qe>0&&(this._contentLength=Qe,this._onContentLengthKnown&&this._onContentLengthKnown(this._contentLength))}}else if(this._status=LoaderStatus.kError,this._onError)this._onError(LoaderErrors.HTTP_STATUS_CODE_INVALID,{code:Le.status,msg:Le.statusText});else throw new RuntimeException("MSStreamLoader: Http code invalid, "+Le.status+" "+Le.statusText);else if(Le.readyState===3&&Le.status>=200&&Le.status<=299){this._status=LoaderStatus.kBuffering;let Me=Le.response;this._reader.readAsArrayBuffer(Me)}}_xhrOnError(Ie){this._status=LoaderStatus.kError;let Le=LoaderErrors.EXCEPTION,Me={code:-1,msg:Ie.constructor.name+" "+Ie.type};if(this._onError)this._onError(Le,Me);else throw new RuntimeException(Me.msg)}_msrOnProgress(Ie){let Me=Ie.target.result;if(Me==null){this._doReconnectIfNeeded();return}let Qe=Me.slice(this._lastTimeBufferSize);this._lastTimeBufferSize=Me.byteLength;let nt=this._totalRange.from+this._receivedLength;this._receivedLength+=Qe.byteLength,this._onDataArrival&&this._onDataArrival(Qe,nt,this._receivedLength),Me.byteLength>=this._bufferLimit&&(Log.v(this.TAG,`MSStream buffer exceeded max size near ${nt+Qe.byteLength}, reconnecting...`),this._doReconnectIfNeeded())}_doReconnectIfNeeded(){if(this._contentLength==null||this._receivedLength=this._contentLength&&(Me=this._range.from+this._contentLength-1),this._currentRequestRange={from:Le,to:Me},this._internalOpen(this._dataSource,this._currentRequestRange)}_internalOpen(Ie,Le){this._lastTimeLoaded=0;let Me=Ie.url;this._config.reuseRedirectedURL&&(this._currentRedirectedURL!=null?Me=this._currentRedirectedURL:Ie.redirectedURL!=null&&(Me=Ie.redirectedURL));let Qe=this._seekHandler.getConfig(Me,Le);this._currentRequestURL=Qe.url;let nt=this._xhr=new XMLHttpRequest;if(nt.open("GET",Qe.url,!0),nt.responseType="arraybuffer",nt.onreadystatechange=this._onReadyStateChange.bind(this),nt.onprogress=this._onProgress.bind(this),nt.onload=this._onLoad.bind(this),nt.onerror=this._onXhrError.bind(this),Ie.withCredentials&&(nt.withCredentials=!0),typeof Qe.headers=="object"){let kt=Qe.headers;for(let Ht in kt)kt.hasOwnProperty(Ht)&&nt.setRequestHeader(Ht,kt[Ht])}if(typeof this._config.headers=="object"){let kt=this._config.headers;for(let Ht in kt)kt.hasOwnProperty(Ht)&&nt.setRequestHeader(Ht,kt[Ht])}nt.send()}abort(){this._requestAbort=!0,this._internalAbort(),this._status=xe.kComplete}_internalAbort(){this._xhr&&(this._xhr.onreadystatechange=null,this._xhr.onprogress=null,this._xhr.onload=null,this._xhr.onerror=null,this._xhr.abort(),this._xhr=null)}_onReadyStateChange(Ie){let Le=Ie.target;if(Le.readyState===2){if(Le.responseURL!=null){let Me=this._seekHandler.removeURLParameters(Le.responseURL);Le.responseURL!==this._currentRequestURL&&Me!==this._currentRedirectedURL&&(this._currentRedirectedURL=Me,this._onURLRedirect&&this._onURLRedirect(Me))}if(Le.status>=200&&Le.status<=299){if(this._waitForTotalLength)return;this._status=xe.kBuffering}else if(this._status=xe.kError,this._onError)this._onError(ue.HTTP_STATUS_CODE_INVALID,{code:Le.status,msg:Le.statusText});else throw new we("RangeLoader: Http code invalid, "+Le.status+" "+Le.statusText)}}_onProgress(Ie){if(this._status===xe.kError)return;if(this._contentLength===null){let Me=!1;if(this._waitForTotalLength){this._waitForTotalLength=!1,this._totalLengthReceived=!0,Me=!0;let Qe=Ie.total;this._internalAbort(),Qe!=null&Qe!==0&&(this._totalLength=Qe)}if(this._range.to===-1?this._contentLength=this._totalLength-this._range.from:this._contentLength=this._range.to-this._range.from+1,Me){this._openSubRange();return}this._onContentLengthKnown&&this._onContentLengthKnown(this._contentLength)}let Le=Ie.loaded-this._lastTimeLoaded;this._lastTimeLoaded=Ie.loaded,this._speedSampler.addBytes(Le)}_normalizeSpeed(Ie){let Le=this._chunkSizeKBList,Me=Le.length-1,Qe=0,nt=0,kt=Me;if(Ie=Le[Qe]&&Ie=3&&(Le=this._speedSampler.currentKBps)),Le!==0){let kt=this._normalizeSpeed(Le);this._currentSpeedNormalized!==kt&&(this._currentSpeedNormalized=kt,this._currentChunkSizeKB=kt)}let Me=Ie.target.response,Qe=this._range.from+this._receivedLength;this._receivedLength+=Me.byteLength;let nt=!1;this._contentLength!=null&&this._receivedLength0&&this._receivedLength{this._dispatchArrayBuffer(Le.result)},Le.readAsArrayBuffer(Ie.data)}else{this._status=xe.kError;let Le={code:-1,msg:"Unsupported WebSocket message type: "+Ie.data.constructor.name};if(this._onError)this._onError(ue.EXCEPTION,Le);else throw new we(Le.msg)}}_dispatchArrayBuffer(Ie){let Le=Ie,Me=this._receivedLength;this._receivedLength+=Le.byteLength,this._onDataArrival&&this._onDataArrival(Le,Me,this._receivedLength)}_onWebSocketError(Ie){this._status=xe.kError;let Le={code:Ie.code,msg:Ie.message};if(this._onError)this._onError(ue.EXCEPTION,Le);else throw new we(Le.msg)}}var Ue=Te;class We{constructor(Ie){this._zeroStart=Ie||!1}getConfig(Ie,Le){let Me={};if(Le.from!==0||Le.to!==-1){let Qe;Le.to!==-1?Qe=`bytes=${Le.from.toString()}-${Le.to.toString()}`:Qe=`bytes=${Le.from.toString()}-`,Me.Range=Qe}else this._zeroStart&&(Me.Range="bytes=0-");return{url:Ie,headers:Me}}removeURLParameters(Ie){return Ie}}var $e=We;class Xe{constructor(Ie,Le){this._startName=Ie,this._endName=Le}getConfig(Ie,Le){let Me=Ie;if(Le.from!==0||Le.to!==-1){let Qe=!0;Me.indexOf("?")===-1&&(Me+="?",Qe=!1),Qe&&(Me+="&"),Me+=`${this._startName}=${Le.from.toString()}`,Le.to!==-1&&(Me+=`&${this._endName}=${Le.to.toString()}`)}return{url:Me,headers:{}}}removeURLParameters(Ie){let Le=Ie.split("?")[0],Me,Qe=Ie.indexOf("?");Qe!==-1&&(Me=Ie.substring(Qe+1));let nt="";if(Me!=null&&Me.length>0){let kt=Me.split("&");for(let Ht=0;Ht0;Ln[0]!==this._startName&&Ln[0]!==this._endName&&(vn&&(nt+="&"),nt+=kt[Ht])}}return nt.length===0?Le:Le+"?"+nt}}var At=Xe;class lt{constructor(Ie,Le,Me){this.TAG="IOController",this._config=Le,this._extraData=Me,this._stashInitialSize=1024*384,Le.stashInitialSize!=null&&Le.stashInitialSize>0&&(this._stashInitialSize=Le.stashInitialSize),this._stashUsed=0,this._stashSize=this._stashInitialSize,this._bufferSize=1024*1024*3,this._stashBuffer=new ArrayBuffer(this._bufferSize),this._stashByteStart=0,this._enableStash=!0,Le.enableStashBuffer===!1&&(this._enableStash=!1),this._loader=null,this._loaderClass=null,this._seekHandler=null,this._dataSource=Ie,this._isWebSocketURL=/wss?:\/\/(.+?)/.test(Ie.url),this._refTotalLength=Ie.filesize?Ie.filesize:null,this._totalLength=this._refTotalLength,this._fullRequestFlag=!1,this._currentRange=null,this._redirectedURL=null,this._speedNormalized=0,this._speedSampler=new ye,this._speedNormalizeList=[64,128,256,384,512,768,1024,1536,2048,3072,4096],this._isEarlyEofReconnecting=!1,this._paused=!1,this._resumeFrom=0,this._onDataArrival=null,this._onSeeked=null,this._onError=null,this._onComplete=null,this._onRedirect=null,this._onRecoveredEarlyEof=null,this._selectSeekHandler(),this._selectLoader(),this._createLoader()}destroy(){this._loader.isWorking()&&this._loader.abort(),this._loader.destroy(),this._loader=null,this._loaderClass=null,this._dataSource=null,this._stashBuffer=null,this._stashUsed=this._stashSize=this._bufferSize=this._stashByteStart=0,this._currentRange=null,this._speedSampler=null,this._isEarlyEofReconnecting=!1,this._onDataArrival=null,this._onSeeked=null,this._onError=null,this._onComplete=null,this._onRedirect=null,this._onRecoveredEarlyEof=null,this._extraData=null}isWorking(){return this._loader&&this._loader.isWorking()&&!this._paused}isPaused(){return this._paused}get status(){return this._loader.status}get extraData(){return this._extraData}set extraData(Ie){this._extraData=Ie}get onDataArrival(){return this._onDataArrival}set onDataArrival(Ie){this._onDataArrival=Ie}get onSeeked(){return this._onSeeked}set onSeeked(Ie){this._onSeeked=Ie}get onError(){return this._onError}set onError(Ie){this._onError=Ie}get onComplete(){return this._onComplete}set onComplete(Ie){this._onComplete=Ie}get onRedirect(){return this._onRedirect}set onRedirect(Ie){this._onRedirect=Ie}get onRecoveredEarlyEof(){return this._onRecoveredEarlyEof}set onRecoveredEarlyEof(Ie){this._onRecoveredEarlyEof=Ie}get currentURL(){return this._dataSource.url}get hasRedirect(){return this._redirectedURL!=null||this._dataSource.redirectedURL!=null}get currentRedirectedURL(){return this._redirectedURL||this._dataSource.redirectedURL}get currentSpeed(){return this._loaderClass===Fe?this._loader.currentSpeed:this._speedSampler.lastSecondKBps}get loaderType(){return this._loader.type}_selectSeekHandler(){let Ie=this._config;if(Ie.seekType==="range")this._seekHandler=new $e(this._config.rangeLoadZeroStart);else if(Ie.seekType==="param"){let Le=Ie.seekParamStart||"bstart",Me=Ie.seekParamEnd||"bend";this._seekHandler=new At(Le,Me)}else if(Ie.seekType==="custom"){if(typeof Ie.customSeekHandler!="function")throw new Ae("Custom seekType specified in config but invalid customSeekHandler!");this._seekHandler=new Ie.customSeekHandler}else throw new Ae(`Invalid seekType in config: ${Ie.seekType}`)}_selectLoader(){if(this._config.customLoader!=null)this._loaderClass=this._config.customLoader;else if(this._isWebSocketURL)this._loaderClass=Ue;else if(he.isSupported())this._loaderClass=he;else if(ce.isSupported())this._loaderClass=ce;else if(Fe.isSupported())this._loaderClass=Fe;else throw new we("Your browser doesn't support xhr with arraybuffer responseType!")}_createLoader(){this._loader=new this._loaderClass(this._seekHandler,this._config),this._loader.needStashBuffer===!1&&(this._enableStash=!1),this._loader.onContentLengthKnown=this._onContentLengthKnown.bind(this),this._loader.onURLRedirect=this._onURLRedirect.bind(this),this._loader.onDataArrival=this._onLoaderChunkArrival.bind(this),this._loader.onComplete=this._onLoaderComplete.bind(this),this._loader.onError=this._onLoaderError.bind(this)}open(Ie){this._currentRange={from:0,to:-1},Ie&&(this._currentRange.from=Ie),this._speedSampler.reset(),Ie||(this._fullRequestFlag=!0),this._loader.open(this._dataSource,Object.assign({},this._currentRange))}abort(){this._loader.abort(),this._paused&&(this._paused=!1,this._resumeFrom=0)}pause(){this.isWorking()&&(this._loader.abort(),this._stashUsed!==0?(this._resumeFrom=this._stashByteStart,this._currentRange.to=this._stashByteStart-1):this._resumeFrom=this._currentRange.to+1,this._stashUsed=0,this._stashByteStart=0,this._paused=!0)}resume(){if(this._paused){this._paused=!1;let Ie=this._resumeFrom;this._resumeFrom=0,this._internalSeek(Ie,!0)}}seek(Ie){this._paused=!1,this._stashUsed=0,this._stashByteStart=0,this._internalSeek(Ie,!0)}_internalSeek(Ie,Le){this._loader.isWorking()&&this._loader.abort(),this._flushStashBuffer(Le),this._loader.destroy(),this._loader=null;let Me={from:Ie,to:-1};this._currentRange={from:Me.from,to:-1},this._speedSampler.reset(),this._stashSize=this._stashInitialSize,this._createLoader(),this._loader.open(this._dataSource,Me),this._onSeeked&&this._onSeeked()}updateUrl(Ie){if(!Ie||typeof Ie!="string"||Ie.length===0)throw new Ae("Url must be a non-empty string!");this._dataSource.url=Ie}_expandBuffer(Ie){let Le=this._stashSize;for(;Le+1024*1024*10){let Qe=new Uint8Array(this._stashBuffer,0,this._stashUsed);new Uint8Array(Me,0,Le).set(Qe,0)}this._stashBuffer=Me,this._bufferSize=Le}_normalizeSpeed(Ie){let Le=this._speedNormalizeList,Me=Le.length-1,Qe=0,nt=0,kt=Me;if(Ie=Le[Qe]&&Ie=512&&Ie<=1024?Le=Math.floor(Ie*1.5):Le=Ie*2,Le>8192&&(Le=8192);let Me=Le*1024+1024*1024*1;this._bufferSize0){let kt=this._stashBuffer.slice(0,this._stashUsed),Ht=this._dispatchChunks(kt,this._stashByteStart);if(Ht0){let Ln=new Uint8Array(kt,Ht);nt.set(Ln,0),this._stashUsed=Ln.byteLength,this._stashByteStart+=Ht}}else this._stashUsed=0,this._stashByteStart+=Ht;this._stashUsed+Ie.byteLength>this._bufferSize&&(this._expandBuffer(this._stashUsed+Ie.byteLength),nt=new Uint8Array(this._stashBuffer,0,this._bufferSize)),nt.set(new Uint8Array(Ie),this._stashUsed),this._stashUsed+=Ie.byteLength}else{let kt=this._dispatchChunks(Ie,Le);if(ktthis._bufferSize&&(this._expandBuffer(Ht),nt=new Uint8Array(this._stashBuffer,0,this._bufferSize)),nt.set(new Uint8Array(Ie,kt),0),this._stashUsed+=Ht,this._stashByteStart=Le+kt}}}else if(this._stashUsed===0){let nt=this._dispatchChunks(Ie,Le);if(ntthis._bufferSize&&this._expandBuffer(kt),new Uint8Array(this._stashBuffer,0,this._bufferSize).set(new Uint8Array(Ie,nt),0),this._stashUsed+=kt,this._stashByteStart=Le+nt}}else{this._stashUsed+Ie.byteLength>this._bufferSize&&this._expandBuffer(this._stashUsed+Ie.byteLength);let nt=new Uint8Array(this._stashBuffer,0,this._bufferSize);nt.set(new Uint8Array(Ie),this._stashUsed),this._stashUsed+=Ie.byteLength;let kt=this._dispatchChunks(this._stashBuffer.slice(0,this._stashUsed),this._stashByteStart);if(kt0){let Ht=new Uint8Array(this._stashBuffer,kt);nt.set(Ht,0)}this._stashUsed-=kt,this._stashByteStart+=kt}}_flushStashBuffer(Ie){if(this._stashUsed>0){let Le=this._stashBuffer.slice(0,this._stashUsed),Me=this._dispatchChunks(Le,this._stashByteStart),Qe=Le.byteLength-Me;if(Me0){let nt=new Uint8Array(this._stashBuffer,0,this._bufferSize),kt=new Uint8Array(Le,Me);nt.set(kt,0),this._stashUsed=kt.byteLength,this._stashByteStart+=Me}return 0}return this._stashUsed=0,this._stashByteStart=0,Qe}return 0}_onLoaderComplete(Ie,Le){this._flushStashBuffer(!0),this._onComplete&&this._onComplete(this._extraData)}_onLoaderError(Ie,Le){switch(Pe.e(this.TAG,`Loader error, code = ${Le.code}, msg = ${Le.msg}`),this._flushStashBuffer(!1),this._isEarlyEofReconnecting&&(this._isEarlyEofReconnecting=!1,Ie=ue.UNRECOVERABLE_EARLY_EOF),Ie){case ue.EARLY_EOF:{if(!this._config.isLive&&this._totalLength){let Me=this._currentRange.to+1;Me0){let Le=Lt.getConfig();Ie.emit("change",Le)}}static registerListener(Ie){Lt.emitter.addListener("change",Ie)}static removeListener(Ie){Lt.emitter.removeListener("change",Ie)}static addLogListener(Ie){Pe.emitter.addListener("log",Ie),Pe.emitter.listenerCount("log")>0&&(Pe.ENABLE_CALLBACK=!0,Lt._notifyChange())}static removeLogListener(Ie){Pe.emitter.removeListener("log",Ie),Pe.emitter.listenerCount("log")===0&&(Pe.ENABLE_CALLBACK=!1,Lt._notifyChange())}}Lt.emitter=new(Ce());var Pt=Lt;class Bt{constructor(){this.mimeType=null,this.duration=null,this.hasAudio=null,this.hasVideo=null,this.audioCodec=null,this.videoCodec=null,this.audioDataRate=null,this.videoDataRate=null,this.audioSampleRate=null,this.audioChannelCount=null,this.width=null,this.height=null,this.fps=null,this.profile=null,this.level=null,this.refFrames=null,this.chromaFormat=null,this.sarNum=null,this.sarDen=null,this.metadata=null,this.segments=null,this.segmentCount=null,this.hasKeyframesIndex=null,this.keyframesIndex=null}isComplete(){let Ie=this.hasAudio===!1||this.hasAudio===!0&&this.audioCodec!=null&&this.audioSampleRate!=null&&this.audioChannelCount!=null,Le=this.hasVideo===!1||this.hasVideo===!0&&this.videoCodec!=null&&this.width!=null&&this.height!=null&&this.fps!=null&&this.profile!=null&&this.level!=null&&this.refFrames!=null&&this.chromaFormat!=null&&this.sarNum!=null&&this.sarDen!=null;return this.mimeType!=null&&this.duration!=null&&this.metadata!=null&&this.hasKeyframesIndex!=null&&Ie&&Le}isSeekable(){return this.hasKeyframesIndex===!0}getNearestKeyframe(Ie){if(this.keyframesIndex==null)return null;let Le=this.keyframesIndex,Me=this._search(Le.times,Ie);return{index:Me,milliseconds:Le.times[Me],fileposition:Le.filepositions[Me]}}_search(Ie,Le){let Me=0,Qe=Ie.length-1,nt=0,kt=0,Ht=Qe;for(Le=Ie[nt]&&Le=128){Ie.push(String.fromCharCode(nt&65535)),Me+=2;continue}}}else if(Le[Me]<240){if(wn(Le,Me,2)){let nt=(Le[Me]&15)<<12|(Le[Me+1]&63)<<6|Le[Me+2]&63;if(nt>=2048&&(nt&63488)!==55296){Ie.push(String.fromCharCode(nt&65535)),Me+=3;continue}}}else if(Le[Me]<248&&wn(Le,Me,3)){let nt=(Le[Me]&7)<<18|(Le[Me+1]&63)<<12|(Le[Me+2]&63)<<6|Le[Me+3]&63;if(nt>65536&&nt<1114112){nt-=65536,Ie.push(String.fromCharCode(nt>>>10|55296)),Ie.push(String.fromCharCode(nt&1023|56320)),Me+=4;continue}}}Ie.push("\uFFFD"),++Me}return Ie.join("")}var $n=Mn;let qt=function(){let Qt=new ArrayBuffer(2);return new DataView(Qt).setInt16(0,256,!0),new Int16Array(Qt)[0]===256}();class Fn{static parseScriptData(Ie,Le,Me){let Qe={};try{let nt=Fn.parseValue(Ie,Le,Me),kt=Fn.parseValue(Ie,Le+nt.size,Me-nt.size);Qe[nt.data]=kt.data}catch(nt){Pe.e("AMF",nt.toString())}return Qe}static parseObject(Ie,Le,Me){if(Me<3)throw new me("Data not enough when parse ScriptDataObject");let Qe=Fn.parseString(Ie,Le,Me),nt=Fn.parseValue(Ie,Le+Qe.size,Me-Qe.size),kt=nt.objectEnd;return{data:{name:Qe.data,value:nt.data},size:Qe.size+nt.size,objectEnd:kt}}static parseVariable(Ie,Le,Me){return Fn.parseObject(Ie,Le,Me)}static parseString(Ie,Le,Me){if(Me<2)throw new me("Data not enough when parse String");let nt=new DataView(Ie,Le,Me).getUint16(0,!qt),kt;return nt>0?kt=$n(new Uint8Array(Ie,Le+2,nt)):kt="",{data:kt,size:2+nt}}static parseLongString(Ie,Le,Me){if(Me<4)throw new me("Data not enough when parse LongString");let nt=new DataView(Ie,Le,Me).getUint32(0,!qt),kt;return nt>0?kt=$n(new Uint8Array(Ie,Le+4,nt)):kt="",{data:kt,size:4+nt}}static parseDate(Ie,Le,Me){if(Me<10)throw new me("Data size invalid when parse Date");let Qe=new DataView(Ie,Le,Me),nt=Qe.getFloat64(0,!qt),kt=Qe.getInt16(8,!qt);return nt+=kt*60*1e3,{data:new Date(nt),size:10}}static parseValue(Ie,Le,Me){if(Me<1)throw new me("Data not enough when parse Value");let Qe=new DataView(Ie,Le,Me),nt=1,kt=Qe.getUint8(0),Ht,Ln=!1;try{switch(kt){case 0:Ht=Qe.getFloat64(1,!qt),nt+=8;break;case 1:{Ht=!!Qe.getUint8(1),nt+=1;break}case 2:{let vn=Fn.parseString(Ie,Le+1,Me-1);Ht=vn.data,nt+=vn.size;break}case 3:{Ht={};let vn=0;for((Qe.getUint32(Me-4,!qt)&16777215)===9&&(vn=3);nt32)throw new Ae("ExpGolomb: readBits() bits exceeded max 32bits!");if(Ie<=this._current_word_bits_left){let kt=this._current_word>>>32-Ie;return this._current_word<<=Ie,this._current_word_bits_left-=Ie,kt}let Le=this._current_word_bits_left?this._current_word:0;Le=Le>>>32-this._current_word_bits_left;let Me=Ie-this._current_word_bits_left;this._fillCurrentWord();let Qe=Math.min(Me,this._current_word_bits_left),nt=this._current_word>>>32-Qe;return this._current_word<<=Qe,this._current_word_bits_left-=Qe,Le=Le<>>Ie)return this._current_word<<=Ie,this._current_word_bits_left-=Ie,Ie;return this._fillCurrentWord(),Ie+this._skipLeadingZero()}readUEG(){let Ie=this._skipLeadingZero();return this.readBits(Ie+1)-1}readSEG(){let Ie=this.readUEG();return Ie&1?Ie+1>>>1:-1*(Ie>>>1)}}var yr=ar;class jn{static _ebsp2rbsp(Ie){let Le=Ie,Me=Le.byteLength,Qe=new Uint8Array(Me),nt=0;for(let kt=0;kt=2&&Le[kt]===3&&Le[kt-1]===0&&Le[kt-2]===0||(Qe[nt]=Le[kt],nt++);return new Uint8Array(Qe.buffer,0,nt)}static parseSPS(Ie){let Le=jn._ebsp2rbsp(Ie),Me=new yr(Le);Me.readByte();let Qe=Me.readByte();Me.readByte();let nt=Me.readByte();Me.readUEG();let kt=jn.getProfileString(Qe),Ht=jn.getLevelString(nt),Ln=1,vn=420,nr=[0,420,422,444],ir=8;if((Qe===100||Qe===110||Qe===122||Qe===244||Qe===44||Qe===83||Qe===86||Qe===118||Qe===128||Qe===138||Qe===144)&&(Ln=Me.readUEG(),Ln===3&&Me.readBits(1),Ln<=3&&(vn=nr[Ln]),ir=Me.readUEG()+8,Me.readUEG(),Me.readBits(1),Me.readBool())){let Ni=Ln!==3?8:12;for(let gi=0;gi0&&Ni<16?(La=gi[Ni-1],oa=to[Ni-1]):Ni===255&&(La=Me.readByte()<<8|Me.readByte(),oa=Me.readByte()<<8|Me.readByte())}if(Me.readBool()&&Me.readBool(),Me.readBool()&&(Me.readBits(4),Me.readBool()&&Me.readBits(24)),Me.readBool()&&(Me.readUEG(),Me.readUEG()),Me.readBool()){let Ni=Me.readBits(32),gi=Me.readBits(32);dr=Me.readBool(),Gn=gi,Vr=Ni*2,sr=Gn/Vr}}let Ba=1;(La!==1||oa!==1)&&(Ba=La/oa);let Ci=0,zi=0;if(Ln===0)Ci=1,zi=2-pa;else{let Ni=Ln===3?1:2,gi=Ln===1?2:1;Ci=Ni,zi=gi*(2-pa)}let Ki=(ra+1)*16,ei=(2-pa)*((ia+1)*16);Ki-=(lr+kn)*Ci,ei-=(_r+Xr)*zi;let ni=Math.ceil(Ki*Ba);return Me.destroy(),Me=null,{profile_string:kt,level_string:Ht,bit_depth:ir,ref_frames:Br,chroma_format:vn,chroma_format_string:jn.getChromaFormatString(vn),frame_rate:{fixed:dr,fps:sr,fps_den:Vr,fps_num:Gn},sar_ratio:{width:La,height:oa},codec_size:{width:Ki,height:ei},present_size:{width:ni,height:ei}}}static _skipScalingList(Ie,Le){let Me=8,Qe=8,nt=0;for(let kt=0;kt>>8&255|(Qt&255)<<8}function yn(Qt){return(Qt&4278190080)>>>24|(Qt&16711680)>>>8|(Qt&65280)<<8|(Qt&255)<<24}function Ft(Qt,Ie){return Qt[Ie]<<24|Qt[Ie+1]<<16|Qt[Ie+2]<<8|Qt[Ie+3]}class Ut{constructor(Ie,Le){this.TAG="FLVDemuxer",this._config=Le,this._onError=null,this._onMediaInfo=null,this._onMetaDataArrived=null,this._onScriptDataArrived=null,this._onTrackMetadata=null,this._onDataAvailable=null,this._dataOffset=Ie.dataOffset,this._firstParse=!0,this._dispatch=!1,this._hasAudio=Ie.hasAudioTrack,this._hasVideo=Ie.hasVideoTrack,this._hasAudioFlagOverrided=!1,this._hasVideoFlagOverrided=!1,this._audioInitialMetadataDispatched=!1,this._videoInitialMetadataDispatched=!1,this._mediaInfo=new un,this._mediaInfo.hasAudio=this._hasAudio,this._mediaInfo.hasVideo=this._hasVideo,this._metadata=null,this._audioMetadata=null,this._videoMetadata=null,this._naluLengthSize=4,this._timestampBase=0,this._timescale=1e3,this._duration=0,this._durationOverrided=!1,this._referenceFrameRate={fixed:!0,fps:23.976,fps_num:23976,fps_den:1e3},this._flvSoundRateTable=[5500,11025,22050,44100,48e3],this._mpegSamplingRates=[96e3,88200,64e3,48e3,44100,32e3,24e3,22050,16e3,12e3,11025,8e3,7350],this._mpegAudioV10SampleRateTable=[44100,48e3,32e3,0],this._mpegAudioV20SampleRateTable=[22050,24e3,16e3,0],this._mpegAudioV25SampleRateTable=[11025,12e3,8e3,0],this._mpegAudioL1BitRateTable=[0,32,64,96,128,160,192,224,256,288,320,352,384,416,448,-1],this._mpegAudioL2BitRateTable=[0,32,48,56,64,80,96,112,128,160,192,224,256,320,384,-1],this._mpegAudioL3BitRateTable=[0,32,40,48,56,64,80,96,112,128,160,192,224,256,320,-1],this._videoTrack={type:"video",id:1,sequenceNumber:0,samples:[],length:0},this._audioTrack={type:"audio",id:2,sequenceNumber:0,samples:[],length:0},this._littleEndian=function(){let Me=new ArrayBuffer(2);return new DataView(Me).setInt16(0,256,!0),new Int16Array(Me)[0]===256}()}destroy(){this._mediaInfo=null,this._metadata=null,this._audioMetadata=null,this._videoMetadata=null,this._videoTrack=null,this._audioTrack=null,this._onError=null,this._onMediaInfo=null,this._onMetaDataArrived=null,this._onScriptDataArrived=null,this._onTrackMetadata=null,this._onDataAvailable=null}static probe(Ie){let Le=new Uint8Array(Ie),Me={match:!1};if(Le[0]!==70||Le[1]!==76||Le[2]!==86||Le[3]!==1)return Me;let Qe=(Le[4]&4)>>>2!==0,nt=(Le[4]&1)!==0,kt=Ft(Le,5);return kt<9?Me:{match:!0,consumed:kt,dataOffset:kt,hasAudioTrack:Qe,hasVideoTrack:nt}}bindDataSource(Ie){return Ie.onDataArrival=this.parseChunks.bind(this),this}get onTrackMetadata(){return this._onTrackMetadata}set onTrackMetadata(Ie){this._onTrackMetadata=Ie}get onMediaInfo(){return this._onMediaInfo}set onMediaInfo(Ie){this._onMediaInfo=Ie}get onMetaDataArrived(){return this._onMetaDataArrived}set onMetaDataArrived(Ie){this._onMetaDataArrived=Ie}get onScriptDataArrived(){return this._onScriptDataArrived}set onScriptDataArrived(Ie){this._onScriptDataArrived=Ie}get onError(){return this._onError}set onError(Ie){this._onError=Ie}get onDataAvailable(){return this._onDataAvailable}set onDataAvailable(Ie){this._onDataAvailable=Ie}get timestampBase(){return this._timestampBase}set timestampBase(Ie){this._timestampBase=Ie}get overridedDuration(){return this._duration}set overridedDuration(Ie){this._durationOverrided=!0,this._duration=Ie,this._mediaInfo.duration=Ie}set overridedHasAudio(Ie){this._hasAudioFlagOverrided=!0,this._hasAudio=Ie,this._mediaInfo.hasAudio=Ie}set overridedHasVideo(Ie){this._hasVideoFlagOverrided=!0,this._hasVideo=Ie,this._mediaInfo.hasVideo=Ie}resetMediaInfo(){this._mediaInfo=new un}_isInitialMetadataDispatched(){return this._hasAudio&&this._hasVideo?this._audioInitialMetadataDispatched&&this._videoInitialMetadataDispatched:this._hasAudio&&!this._hasVideo?this._audioInitialMetadataDispatched:!this._hasAudio&&this._hasVideo?this._videoInitialMetadataDispatched:!1}parseChunks(Ie,Le){if(!this._onError||!this._onMediaInfo||!this._onTrackMetadata||!this._onDataAvailable)throw new me("Flv: onError & onMediaInfo & onTrackMetadata & onDataAvailable callback must be specified");let Me=0,Qe=this._littleEndian;if(Le===0)if(Ie.byteLength>13)Me=Ut.probe(Ie).dataOffset;else return 0;for(this._firstParse&&(this._firstParse=!1,Le+Me!==this._dataOffset&&Pe.w(this.TAG,"First time parsing but chunk byteStart invalid!"),new DataView(Ie,Me).getUint32(0,!Qe)!==0&&Pe.w(this.TAG,"PrevTagSize0 !== 0 !!!"),Me+=4);MeIe.byteLength)break;let kt=nt.getUint8(0),Ht=nt.getUint32(0,!Qe)&16777215;if(Me+11+Ht+4>Ie.byteLength)break;if(kt!==8&&kt!==9&&kt!==18){Pe.w(this.TAG,`Unsupported tag type ${kt}, skipped`),Me+=11+Ht+4;continue}let Ln=nt.getUint8(4),vn=nt.getUint8(5),nr=nt.getUint8(6),ir=nt.getUint8(7),ta=nr|vn<<8|Ln<<16|ir<<24;(nt.getUint32(7,!Qe)&16777215)!==0&&Pe.w(this.TAG,"Meet tag which has StreamID != 0!");let ra=Me+11;switch(kt){case 8:this._parseAudioData(Ie,ra,Ht,ta);break;case 9:this._parseVideoData(Ie,ra,Ht,ta,Le+Me);break;case 18:this._parseScriptData(Ie,ra,Ht);break}let ia=nt.getUint32(11+Ht,!Qe);ia!==11+Ht&&Pe.w(this.TAG,`Invalid PrevTagSize ${ia}`),Me+=11+Ht+4}return this._isInitialMetadataDispatched()&&this._dispatch&&(this._audioTrack.length||this._videoTrack.length)&&this._onDataAvailable(this._audioTrack,this._videoTrack),Me}_parseScriptData(Ie,Le,Me){let Qe=mn.parseScriptData(Ie,Le,Me);if(Qe.hasOwnProperty("onMetaData")){if(Qe.onMetaData==null||typeof Qe.onMetaData!="object"){Pe.w(this.TAG,"Invalid onMetaData structure!");return}this._metadata&&Pe.w(this.TAG,"Found another onMetaData tag!"),this._metadata=Qe;let nt=this._metadata.onMetaData;if(this._onMetaDataArrived&&this._onMetaDataArrived(Object.assign({},nt)),typeof nt.hasAudio=="boolean"&&this._hasAudioFlagOverrided===!1&&(this._hasAudio=nt.hasAudio,this._mediaInfo.hasAudio=this._hasAudio),typeof nt.hasVideo=="boolean"&&this._hasVideoFlagOverrided===!1&&(this._hasVideo=nt.hasVideo,this._mediaInfo.hasVideo=this._hasVideo),typeof nt.audiodatarate=="number"&&(this._mediaInfo.audioDataRate=nt.audiodatarate),typeof nt.videodatarate=="number"&&(this._mediaInfo.videoDataRate=nt.videodatarate),typeof nt.width=="number"&&(this._mediaInfo.width=nt.width),typeof nt.height=="number"&&(this._mediaInfo.height=nt.height),typeof nt.duration=="number"){if(!this._durationOverrided){let kt=Math.floor(nt.duration*this._timescale);this._duration=kt,this._mediaInfo.duration=kt}}else this._mediaInfo.duration=0;if(typeof nt.framerate=="number"){let kt=Math.floor(nt.framerate*1e3);if(kt>0){let Ht=kt/1e3;this._referenceFrameRate.fixed=!0,this._referenceFrameRate.fps=Ht,this._referenceFrameRate.fps_num=kt,this._referenceFrameRate.fps_den=1e3,this._mediaInfo.fps=Ht}}if(typeof nt.keyframes=="object"){this._mediaInfo.hasKeyframesIndex=!0;let kt=nt.keyframes;this._mediaInfo.keyframesIndex=this._parseKeyframesIndex(kt),nt.keyframes=null}else this._mediaInfo.hasKeyframesIndex=!1;this._dispatch=!1,this._mediaInfo.metadata=nt,Pe.v(this.TAG,"Parsed onMetaData"),this._mediaInfo.isComplete()&&this._onMediaInfo(this._mediaInfo)}Object.keys(Qe).length>0&&this._onScriptDataArrived&&this._onScriptDataArrived(Object.assign({},Qe))}_parseKeyframesIndex(Ie){let Le=[],Me=[];for(let Qe=1;Qe>>4;if(Ln!==2&&Ln!==10){this._onError(Jt.CODEC_UNSUPPORTED,"Flv: Unsupported audio codec idx: "+Ln);return}let vn=0,nr=(Ht&12)>>>2;if(nr>=0&&nr<=4)vn=this._flvSoundRateTable[nr];else{this._onError(Jt.FORMAT_ERROR,"Flv: Invalid audio sample rate idx: "+nr);return}let ir=(Ht&2)>>>1,ta=Ht&1,Br=this._audioMetadata,ra=this._audioTrack;if(Br||(this._hasAudio===!1&&this._hasAudioFlagOverrided===!1&&(this._hasAudio=!0,this._mediaInfo.hasAudio=!0),Br=this._audioMetadata={},Br.type="audio",Br.id=ra.id,Br.timescale=this._timescale,Br.duration=this._duration,Br.audioSampleRate=vn,Br.channelCount=ta===0?1:2),Ln===10){let ia=this._parseAACAudioData(Ie,Le+1,Me-1);if(ia==null)return;if(ia.packetType===0){Br.config&&Pe.w(this.TAG,"Found another AudioSpecificConfig!");let pa=ia.data;Br.audioSampleRate=pa.samplingRate,Br.channelCount=pa.channelCount,Br.codec=pa.codec,Br.originalCodec=pa.originalCodec,Br.config=pa.config,Br.refSampleDuration=1024/Br.audioSampleRate*Br.timescale,Pe.v(this.TAG,"Parsed AudioSpecificConfig"),this._isInitialMetadataDispatched()?this._dispatch&&(this._audioTrack.length||this._videoTrack.length)&&this._onDataAvailable(this._audioTrack,this._videoTrack):this._audioInitialMetadataDispatched=!0,this._dispatch=!1,this._onTrackMetadata("audio",Br);let lr=this._mediaInfo;lr.audioCodec=Br.originalCodec,lr.audioSampleRate=Br.audioSampleRate,lr.audioChannelCount=Br.channelCount,lr.hasVideo?lr.videoCodec!=null&&(lr.mimeType='video/x-flv; codecs="'+lr.videoCodec+","+lr.audioCodec+'"'):lr.mimeType='video/x-flv; codecs="'+lr.audioCodec+'"',lr.isComplete()&&this._onMediaInfo(lr)}else if(ia.packetType===1){let pa=this._timestampBase+Qe,lr={unit:ia.data,length:ia.data.byteLength,dts:pa,pts:pa};ra.samples.push(lr),ra.length+=ia.data.length}else Pe.e(this.TAG,`Flv: Unsupported AAC data type ${ia.packetType}`)}else if(Ln===2){if(!Br.codec){let kn=this._parseMP3AudioData(Ie,Le+1,Me-1,!0);if(kn==null)return;Br.audioSampleRate=kn.samplingRate,Br.channelCount=kn.channelCount,Br.codec=kn.codec,Br.originalCodec=kn.originalCodec,Br.refSampleDuration=1152/Br.audioSampleRate*Br.timescale,Pe.v(this.TAG,"Parsed MPEG Audio Frame Header"),this._audioInitialMetadataDispatched=!0,this._onTrackMetadata("audio",Br);let _r=this._mediaInfo;_r.audioCodec=Br.codec,_r.audioSampleRate=Br.audioSampleRate,_r.audioChannelCount=Br.channelCount,_r.audioDataRate=kn.bitRate,_r.hasVideo?_r.videoCodec!=null&&(_r.mimeType='video/x-flv; codecs="'+_r.videoCodec+","+_r.audioCodec+'"'):_r.mimeType='video/x-flv; codecs="'+_r.audioCodec+'"',_r.isComplete()&&this._onMediaInfo(_r)}let ia=this._parseMP3AudioData(Ie,Le+1,Me-1,!1);if(ia==null)return;let pa=this._timestampBase+Qe,lr={unit:ia,length:ia.byteLength,dts:pa,pts:pa};ra.samples.push(lr),ra.length+=ia.length}}_parseAACAudioData(Ie,Le,Me){if(Me<=1){Pe.w(this.TAG,"Flv: Invalid AAC packet, missing AACPacketType or/and Data!");return}let Qe={},nt=new Uint8Array(Ie,Le,Me);return Qe.packetType=nt[0],nt[0]===0?Qe.data=this._parseAACAudioSpecificConfig(Ie,Le+1,Me-1):Qe.data=nt.subarray(1),Qe}_parseAACAudioSpecificConfig(Ie,Le,Me){let Qe=new Uint8Array(Ie,Le,Me),nt=null,kt=0,Ht=0,Ln=null,vn=0,nr=null;if(kt=Ht=Qe[0]>>>3,vn=(Qe[0]&7)<<1|Qe[1]>>>7,vn<0||vn>=this._mpegSamplingRates.length){this._onError(Jt.FORMAT_ERROR,"Flv: AAC invalid sampling frequency index!");return}let ir=this._mpegSamplingRates[vn],ta=(Qe[1]&120)>>>3;if(ta<0||ta>=8){this._onError(Jt.FORMAT_ERROR,"Flv: AAC invalid channel configuration");return}kt===5&&(nr=(Qe[1]&7)<<1|Qe[2]>>>7,Ln=(Qe[2]&124)>>>2);let Br=self.navigator.userAgent.toLowerCase();return Br.indexOf("firefox")!==-1?vn>=6?(kt=5,nt=new Array(4),nr=vn-3):(kt=2,nt=new Array(2),nr=vn):Br.indexOf("android")!==-1?(kt=2,nt=new Array(2),nr=vn):(kt=5,nr=vn,nt=new Array(4),vn>=6?nr=vn-3:ta===1&&(kt=2,nt=new Array(2),nr=vn)),nt[0]=kt<<3,nt[0]|=(vn&15)>>>1,nt[1]=(vn&15)<<7,nt[1]|=(ta&15)<<3,kt===5&&(nt[1]|=(nr&15)>>>1,nt[2]=(nr&1)<<7,nt[2]|=8,nt[3]=0),{config:nt,samplingRate:ir,channelCount:ta,codec:"mp4a.40."+kt,originalCodec:"mp4a.40."+Ht}}_parseMP3AudioData(Ie,Le,Me,Qe){if(Me<4){Pe.w(this.TAG,"Flv: Invalid MP3 packet, header missing!");return}let nt=this._littleEndian,kt=new Uint8Array(Ie,Le,Me),Ht=null;if(Qe){if(kt[0]!==255)return;let Ln=kt[1]>>>3&3,vn=(kt[1]&6)>>1,nr=(kt[2]&240)>>>4,ir=(kt[2]&12)>>>2,Br=(kt[3]>>>6&3)!==3?2:1,ra=0,ia=0,pa=34,lr="mp3";switch(Ln){case 0:ra=this._mpegAudioV25SampleRateTable[ir];break;case 2:ra=this._mpegAudioV20SampleRateTable[ir];break;case 3:ra=this._mpegAudioV10SampleRateTable[ir];break}switch(vn){case 1:pa=34,nr>>4,Ln=kt&15;if(Ln!==7){this._onError(Jt.CODEC_UNSUPPORTED,`Flv: Unsupported codec in video frame: ${Ln}`);return}this._parseAVCVideoPacket(Ie,Le+1,Me-1,Qe,nt,Ht)}_parseAVCVideoPacket(Ie,Le,Me,Qe,nt,kt){if(Me<4){Pe.w(this.TAG,"Flv: Invalid AVC packet, missing AVCPacketType or/and CompositionTime");return}let Ht=this._littleEndian,Ln=new DataView(Ie,Le,Me),vn=Ln.getUint8(0),ir=(Ln.getUint32(0,!Ht)&16777215)<<8>>8;if(vn===0)this._parseAVCDecoderConfigurationRecord(Ie,Le+4,Me-4);else if(vn===1)this._parseAVCVideoData(Ie,Le+4,Me-4,Qe,nt,kt,ir);else if(vn!==2){this._onError(Jt.FORMAT_ERROR,`Flv: Invalid video packet type ${vn}`);return}}_parseAVCDecoderConfigurationRecord(Ie,Le,Me){if(Me<7){Pe.w(this.TAG,"Flv: Invalid AVCDecoderConfigurationRecord, lack of data!");return}let Qe=this._videoMetadata,nt=this._videoTrack,kt=this._littleEndian,Ht=new DataView(Ie,Le,Me);Qe?typeof Qe.avcc!="undefined"&&Pe.w(this.TAG,"Found another AVCDecoderConfigurationRecord!"):(this._hasVideo===!1&&this._hasVideoFlagOverrided===!1&&(this._hasVideo=!0,this._mediaInfo.hasVideo=!0),Qe=this._videoMetadata={},Qe.type="video",Qe.id=nt.id,Qe.timescale=this._timescale,Qe.duration=this._duration);let Ln=Ht.getUint8(0),vn=Ht.getUint8(1),nr=Ht.getUint8(2),ir=Ht.getUint8(3);if(Ln!==1||vn===0){this._onError(Jt.FORMAT_ERROR,"Flv: Invalid AVCDecoderConfigurationRecord");return}if(this._naluLengthSize=(Ht.getUint8(4)&3)+1,this._naluLengthSize!==3&&this._naluLengthSize!==4){this._onError(Jt.FORMAT_ERROR,`Flv: Strange NaluLengthSizeMinusOne: ${this._naluLengthSize-1}`);return}let ta=Ht.getUint8(5)&31;if(ta===0){this._onError(Jt.FORMAT_ERROR,"Flv: Invalid AVCDecoderConfigurationRecord: No SPS");return}else ta>1&&Pe.w(this.TAG,`Flv: Strange AVCDecoderConfigurationRecord: SPS Count = ${ta}`);let Br=6;for(let ia=0;ia1&&Pe.w(this.TAG,`Flv: Strange AVCDecoderConfigurationRecord: PPS Count = ${ra}`);Br++;for(let ia=0;ia=Me){Pe.w(this.TAG,`Malformed Nalu near timestamp ${ra}, offset = ${ta}, dataSize = ${Me}`);break}let pa=vn.getUint32(ta,!Ln);if(Br===3&&(pa>>>=8),pa>Me-Br){Pe.w(this.TAG,`Malformed Nalus near timestamp ${ra}, NaluSize > DataSize!`);return}let lr=vn.getUint8(ta+Br)&31;lr===5&&(ia=!0);let kn=new Uint8Array(Ie,Le+ta,Br+pa),_r={type:lr,data:kn};nr.push(_r),ir+=kn.byteLength,ta+=Br+pa}if(nr.length){let pa=this._videoTrack,lr={units:nr,length:ir,isKeyframe:ia,dts:ra,cts:Ht,pts:ra+Ht};ia&&(lr.fileposition=nt),pa.samples.push(lr),pa.length+=ir}}}var Pn=Ut;class rn{static init(){rn.types={avc1:[],avcC:[],btrt:[],dinf:[],dref:[],esds:[],ftyp:[],hdlr:[],mdat:[],mdhd:[],mdia:[],mfhd:[],minf:[],moof:[],moov:[],mp4a:[],mvex:[],mvhd:[],sdtp:[],stbl:[],stco:[],stsc:[],stsd:[],stsz:[],stts:[],tfdt:[],tfhd:[],traf:[],trak:[],trun:[],trex:[],tkhd:[],vmhd:[],smhd:[],".mp3":[]};for(let Le in rn.types)rn.types.hasOwnProperty(Le)&&(rn.types[Le]=[Le.charCodeAt(0),Le.charCodeAt(1),Le.charCodeAt(2),Le.charCodeAt(3)]);let Ie=rn.constants={};Ie.FTYP=new Uint8Array([105,115,111,109,0,0,0,1,105,115,111,109,97,118,99,49]),Ie.STSD_PREFIX=new Uint8Array([0,0,0,0,0,0,0,1]),Ie.STTS=new Uint8Array([0,0,0,0,0,0,0,0]),Ie.STSC=Ie.STCO=Ie.STTS,Ie.STSZ=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0]),Ie.HDLR_VIDEO=new Uint8Array([0,0,0,0,0,0,0,0,118,105,100,101,0,0,0,0,0,0,0,0,0,0,0,0,86,105,100,101,111,72,97,110,100,108,101,114,0]),Ie.HDLR_AUDIO=new Uint8Array([0,0,0,0,0,0,0,0,115,111,117,110,0,0,0,0,0,0,0,0,0,0,0,0,83,111,117,110,100,72,97,110,100,108,101,114,0]),Ie.DREF=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,12,117,114,108,32,0,0,0,1]),Ie.SMHD=new Uint8Array([0,0,0,0,0,0,0,0]),Ie.VMHD=new Uint8Array([0,0,0,1,0,0,0,0,0,0,0,0])}static box(Ie){let Le=8,Me=null,Qe=Array.prototype.slice.call(arguments,1),nt=Qe.length;for(let Ht=0;Ht>>24&255,Me[1]=Le>>>16&255,Me[2]=Le>>>8&255,Me[3]=Le&255,Me.set(Ie,4);let kt=8;for(let Ht=0;Ht>>24&255,Ie>>>16&255,Ie>>>8&255,Ie&255,Le>>>24&255,Le>>>16&255,Le>>>8&255,Le&255,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255]))}static trak(Ie){return rn.box(rn.types.trak,rn.tkhd(Ie),rn.mdia(Ie))}static tkhd(Ie){let Le=Ie.id,Me=Ie.duration,Qe=Ie.presentWidth,nt=Ie.presentHeight;return rn.box(rn.types.tkhd,new Uint8Array([0,0,0,7,0,0,0,0,0,0,0,0,Le>>>24&255,Le>>>16&255,Le>>>8&255,Le&255,0,0,0,0,Me>>>24&255,Me>>>16&255,Me>>>8&255,Me&255,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,0,0,0,Qe>>>8&255,Qe&255,0,0,nt>>>8&255,nt&255,0,0]))}static mdia(Ie){return rn.box(rn.types.mdia,rn.mdhd(Ie),rn.hdlr(Ie),rn.minf(Ie))}static mdhd(Ie){let Le=Ie.timescale,Me=Ie.duration;return rn.box(rn.types.mdhd,new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,Le>>>24&255,Le>>>16&255,Le>>>8&255,Le&255,Me>>>24&255,Me>>>16&255,Me>>>8&255,Me&255,85,196,0,0]))}static hdlr(Ie){let Le=null;return Ie.type==="audio"?Le=rn.constants.HDLR_AUDIO:Le=rn.constants.HDLR_VIDEO,rn.box(rn.types.hdlr,Le)}static minf(Ie){let Le=null;return Ie.type==="audio"?Le=rn.box(rn.types.smhd,rn.constants.SMHD):Le=rn.box(rn.types.vmhd,rn.constants.VMHD),rn.box(rn.types.minf,Le,rn.dinf(),rn.stbl(Ie))}static dinf(){return rn.box(rn.types.dinf,rn.box(rn.types.dref,rn.constants.DREF))}static stbl(Ie){return rn.box(rn.types.stbl,rn.stsd(Ie),rn.box(rn.types.stts,rn.constants.STTS),rn.box(rn.types.stsc,rn.constants.STSC),rn.box(rn.types.stsz,rn.constants.STSZ),rn.box(rn.types.stco,rn.constants.STCO))}static stsd(Ie){return Ie.type==="audio"?Ie.codec==="mp3"?rn.box(rn.types.stsd,rn.constants.STSD_PREFIX,rn.mp3(Ie)):rn.box(rn.types.stsd,rn.constants.STSD_PREFIX,rn.mp4a(Ie)):rn.box(rn.types.stsd,rn.constants.STSD_PREFIX,rn.avc1(Ie))}static mp3(Ie){let Le=Ie.channelCount,Me=Ie.audioSampleRate,Qe=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,Le,0,16,0,0,0,0,Me>>>8&255,Me&255,0,0]);return rn.box(rn.types[".mp3"],Qe)}static mp4a(Ie){let Le=Ie.channelCount,Me=Ie.audioSampleRate,Qe=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,Le,0,16,0,0,0,0,Me>>>8&255,Me&255,0,0]);return rn.box(rn.types.mp4a,Qe,rn.esds(Ie))}static esds(Ie){let Le=Ie.config||[],Me=Le.length,Qe=new Uint8Array([0,0,0,0,3,23+Me,0,1,0,4,15+Me,64,21,0,0,0,0,0,0,0,0,0,0,0,5].concat([Me]).concat(Le).concat([6,1,2]));return rn.box(rn.types.esds,Qe)}static avc1(Ie){let Le=Ie.avcc,Me=Ie.codecWidth,Qe=Ie.codecHeight,nt=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,Me>>>8&255,Me&255,Qe>>>8&255,Qe&255,0,72,0,0,0,72,0,0,0,0,0,0,0,1,10,120,113,113,47,102,108,118,46,106,115,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,255,255]);return rn.box(rn.types.avc1,nt,rn.box(rn.types.avcC,Le))}static mvex(Ie){return rn.box(rn.types.mvex,rn.trex(Ie))}static trex(Ie){let Le=Ie.id,Me=new Uint8Array([0,0,0,0,Le>>>24&255,Le>>>16&255,Le>>>8&255,Le&255,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,1]);return rn.box(rn.types.trex,Me)}static moof(Ie,Le){return rn.box(rn.types.moof,rn.mfhd(Ie.sequenceNumber),rn.traf(Ie,Le))}static mfhd(Ie){let Le=new Uint8Array([0,0,0,0,Ie>>>24&255,Ie>>>16&255,Ie>>>8&255,Ie&255]);return rn.box(rn.types.mfhd,Le)}static traf(Ie,Le){let Me=Ie.id,Qe=rn.box(rn.types.tfhd,new Uint8Array([0,0,0,0,Me>>>24&255,Me>>>16&255,Me>>>8&255,Me&255])),nt=rn.box(rn.types.tfdt,new Uint8Array([0,0,0,0,Le>>>24&255,Le>>>16&255,Le>>>8&255,Le&255])),kt=rn.sdtp(Ie),Ht=rn.trun(Ie,kt.byteLength+16+16+8+16+8+8);return rn.box(rn.types.traf,Qe,nt,Ht,kt)}static sdtp(Ie){let Le=Ie.samples||[],Me=Le.length,Qe=new Uint8Array(4+Me);for(let nt=0;nt>>24&255,Qe>>>16&255,Qe>>>8&255,Qe&255,Le>>>24&255,Le>>>16&255,Le>>>8&255,Le&255],0);for(let Ht=0;Ht>>24&255,Ln>>>16&255,Ln>>>8&255,Ln&255,vn>>>24&255,vn>>>16&255,vn>>>8&255,vn&255,nr.isLeading<<2|nr.dependsOn,nr.isDependedOn<<6|nr.hasRedundancy<<4|nr.isNonSync,0,0,ir>>>24&255,ir>>>16&255,ir>>>8&255,ir&255],12+16*Ht)}return rn.box(rn.types.trun,kt)}static mdat(Ie){return rn.box(rn.types.mdat,Ie)}}rn.init();var Vt=rn;class Rn{static getSilentFrame(Ie,Le){if(Ie==="mp4a.40.2"){if(Le===1)return new Uint8Array([0,200,0,128,35,128]);if(Le===2)return new Uint8Array([33,0,73,144,2,25,0,35,128]);if(Le===3)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,142]);if(Le===4)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,128,44,128,8,2,56]);if(Le===5)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,130,48,4,153,0,33,144,2,56]);if(Le===6)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,130,48,4,153,0,33,144,2,0,178,0,32,8,224])}else{if(Le===1)return new Uint8Array([1,64,34,128,163,78,230,128,186,8,0,0,0,28,6,241,193,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94]);if(Le===2)return new Uint8Array([1,64,34,128,163,94,230,128,186,8,0,0,0,0,149,0,6,241,161,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94]);if(Le===3)return new Uint8Array([1,64,34,128,163,94,230,128,186,8,0,0,0,0,149,0,6,241,161,10,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,94])}return null}}var Wr=Rn;class Qn{constructor(Ie,Le,Me,Qe,nt){this.dts=Ie,this.pts=Le,this.duration=Me,this.originalDts=Qe,this.isSyncPoint=nt,this.fileposition=null}}class qn{constructor(){this.beginDts=0,this.endDts=0,this.beginPts=0,this.endPts=0,this.originalBeginDts=0,this.originalEndDts=0,this.syncPoints=[],this.firstSample=null,this.lastSample=null}appendSyncPoint(Ie){Ie.isSyncPoint=!0,this.syncPoints.push(Ie)}}class cr{constructor(){this._list=[]}clear(){this._list=[]}appendArray(Ie){let Le=this._list;Ie.length!==0&&(Le.length>0&&Ie[0].originalDts=Le[nt].dts&&IeLe[Qe].lastSample.originalDts&&Ie=Le[Qe].lastSample.originalDts&&(Qe===Le.length-1||Qe0&&(nt=this._searchNearestSegmentBefore(Me.originalBeginDts)+1),this._lastAppendLocation=nt,this._list.splice(nt,0,Me)}getLastSegmentBefore(Ie){let Le=this._searchNearestSegmentBefore(Ie);return Le>=0?this._list[Le]:null}getLastSampleBefore(Ie){let Le=this.getLastSegmentBefore(Ie);return Le!=null?Le.lastSample:null}getLastSyncPointBefore(Ie){let Le=this._searchNearestSegmentBefore(Ie),Me=this._list[Le].syncPoints;for(;Me.length===0&&Le>0;)Le--,Me=this._list[Le].syncPoints;return Me.length>0?Me[Me.length-1]:null}}class An{constructor(Ie){this.TAG="MP4Remuxer",this._config=Ie,this._isLive=Ie.isLive===!0,this._dtsBase=-1,this._dtsBaseInited=!1,this._audioDtsBase=1/0,this._videoDtsBase=1/0,this._audioNextDts=void 0,this._videoNextDts=void 0,this._audioStashedLastSample=null,this._videoStashedLastSample=null,this._audioMeta=null,this._videoMeta=null,this._audioSegmentInfoList=new Sr("audio"),this._videoSegmentInfoList=new Sr("video"),this._onInitSegment=null,this._onMediaSegment=null,this._forceFirstIDR=!!(oe.chrome&&(oe.version.major<50||oe.version.major===50&&oe.version.build<2661)),this._fillSilentAfterSeek=oe.msedge||oe.msie,this._mp3UseMpegAudio=!oe.firefox,this._fillAudioTimestampGap=this._config.fixAudioTimestampGap}destroy(){this._dtsBase=-1,this._dtsBaseInited=!1,this._audioMeta=null,this._videoMeta=null,this._audioSegmentInfoList.clear(),this._audioSegmentInfoList=null,this._videoSegmentInfoList.clear(),this._videoSegmentInfoList=null,this._onInitSegment=null,this._onMediaSegment=null}bindDataSource(Ie){return Ie.onDataAvailable=this.remux.bind(this),Ie.onTrackMetadata=this._onTrackMetadataReceived.bind(this),this}get onInitSegment(){return this._onInitSegment}set onInitSegment(Ie){this._onInitSegment=Ie}get onMediaSegment(){return this._onMediaSegment}set onMediaSegment(Ie){this._onMediaSegment=Ie}insertDiscontinuity(){this._audioNextDts=this._videoNextDts=void 0}seek(Ie){this._audioStashedLastSample=null,this._videoStashedLastSample=null,this._videoSegmentInfoList.clear(),this._audioSegmentInfoList.clear()}remux(Ie,Le){if(!this._onMediaSegment)throw new me("MP4Remuxer: onMediaSegment callback must be specificed!");this._dtsBaseInited||this._calculateDtsBase(Ie,Le),this._remuxVideo(Le),this._remuxAudio(Ie)}_onTrackMetadataReceived(Ie,Le){let Me=null,Qe="mp4",nt=Le.codec;if(Ie==="audio")this._audioMeta=Le,Le.codec==="mp3"&&this._mp3UseMpegAudio?(Qe="mpeg",nt="",Me=new Uint8Array):Me=Vt.generateInitSegment(Le);else if(Ie==="video")this._videoMeta=Le,Me=Vt.generateInitSegment(Le);else return;if(!this._onInitSegment)throw new me("MP4Remuxer: onInitSegment callback must be specified!");this._onInitSegment(Ie,{type:Ie,data:Me.buffer,codec:nt,container:`${Ie}/${Qe}`,mediaDuration:Le.duration})}_calculateDtsBase(Ie,Le){this._dtsBaseInited||(Ie.samples&&Ie.samples.length&&(this._audioDtsBase=Ie.samples[0].dts),Le.samples&&Le.samples.length&&(this._videoDtsBase=Le.samples[0].dts),this._dtsBase=Math.min(this._audioDtsBase,this._videoDtsBase),this._dtsBaseInited=!0)}flushStashedSamples(){let Ie=this._videoStashedLastSample,Le=this._audioStashedLastSample,Me={type:"video",id:1,sequenceNumber:0,samples:[],length:0};Ie!=null&&(Me.samples.push(Ie),Me.length=Ie.length);let Qe={type:"audio",id:2,sequenceNumber:0,samples:[],length:0};Le!=null&&(Qe.samples.push(Le),Qe.length=Le.length),this._videoStashedLastSample=null,this._audioStashedLastSample=null,this._remuxVideo(Me,!0),this._remuxAudio(Qe,!0)}_remuxAudio(Ie,Le){if(this._audioMeta==null)return;let Me=Ie,Qe=Me.samples,nt,kt=-1,Ht=-1,Ln=-1,vn=this._audioMeta.refSampleDuration,nr=this._audioMeta.codec==="mp3"&&this._mp3UseMpegAudio,ir=this._dtsBaseInited&&this._audioNextDts===void 0,ta=!1;if(!Qe||Qe.length===0||Qe.length===1&&!Le)return;let Br=0,ra=null,ia=0;nr?(Br=0,ia=Me.length):(Br=8,ia=8+Me.length);let pa=null;if(Qe.length>1&&(pa=Qe.pop(),ia-=pa.length),this._audioStashedLastSample!=null){let oa=this._audioStashedLastSample;this._audioStashedLastSample=null,Qe.unshift(oa),ia+=oa.length}pa!=null&&(this._audioStashedLastSample=pa);let lr=Qe[0].dts-this._dtsBase;if(this._audioNextDts)nt=lr-this._audioNextDts;else if(this._audioSegmentInfoList.isEmpty())nt=0,this._fillSilentAfterSeek&&!this._videoSegmentInfoList.isEmpty()&&this._audioMeta.originalCodec!=="mp3"&&(ta=!0);else{let oa=this._audioSegmentInfoList.getLastSampleBefore(lr);if(oa!=null){let sr=lr-(oa.originalDts+oa.duration);sr<=3&&(sr=0);let dr=oa.dts+oa.duration+sr;nt=lr-dr}else nt=0}if(ta){let oa=lr-nt,sr=this._videoSegmentInfoList.getLastSegmentBefore(lr);if(sr!=null&&sr.beginDts=1?jr=kn[kn.length-1].duration:jr=Math.floor(vn);let Ba=!1,Ci=null;if(jr>vn*1.5&&this._audioMeta.codec!=="mp3"&&this._fillAudioTimestampGap&&!oe.safari){Ba=!0;let zi=Math.abs(jr-vn),Ki=Math.ceil(zi/vn),ei=Vr+vn;Pe.w(this.TAG,`Large audio timestamp gap detected, may cause AV sync to drift. Silent frames will be generated to avoid unsync. dts: ${Vr+jr} ms, expected: ${Vr+Math.round(vn)} ms, delta: ${Math.round(zi)} ms, generate: ${Ki} frames`);let ni=Wr.getSilentFrame(this._audioMeta.originalCodec,this._audioMeta.channelCount);ni==null&&(Pe.w(this.TAG,`Unable to generate silent frame for ${this._audioMeta.originalCodec} with ${this._audioMeta.channelCount} channels, repeat last frame`),ni=dr),Ci=[];for(let gi=0;gi0){let Ui=Ci[Ci.length-1];Ui.duration=to-Ui.dts}let To={dts:to,pts:to,cts:0,unit:ni,size:ni.byteLength,duration:0,originalDts:Gn,flags:{isLeading:0,dependsOn:1,isDependedOn:0,hasRedundancy:0}};Ci.push(To),ia+=To.size,ei+=vn}let Ni=Ci[Ci.length-1];Ni.duration=Vr+jr-Ni.dts,jr=Math.round(vn)}kn.push({dts:Vr,pts:Vr,cts:0,unit:sr.unit,size:sr.unit.byteLength,duration:jr,originalDts:Gn,flags:{isLeading:0,dependsOn:1,isDependedOn:0,hasRedundancy:0}}),Ba&&kn.push.apply(kn,Ci)}nr?ra=new Uint8Array(ia):(ra=new Uint8Array(ia),ra[0]=ia>>>24&255,ra[1]=ia>>>16&255,ra[2]=ia>>>8&255,ra[3]=ia&255,ra.set(Vt.types.mdat,4));for(let oa=0;oa1&&(Br=Qe.pop(),ta-=Br.length),this._videoStashedLastSample!=null){let _r=this._videoStashedLastSample;this._videoStashedLastSample=null,Qe.unshift(_r),ta+=_r.length}Br!=null&&(this._videoStashedLastSample=Br);let ra=Qe[0].dts-this._dtsBase;if(this._videoNextDts)nt=ra-this._videoNextDts;else if(this._videoSegmentInfoList.isEmpty())nt=0;else{let _r=this._videoSegmentInfoList.getLastSampleBefore(ra);if(_r!=null){let Xr=ra-(_r.originalDts+_r.duration);Xr<=3&&(Xr=0);let ga=_r.dts+_r.duration+Xr;nt=ra-ga}else nt=0}let ia=new qn,pa=[];for(let _r=0;_r=1?Gn=pa[pa.length-1].duration:Gn=Math.floor(this._videoMeta.refSampleDuration),La){let Vr=new Qn(oa,dr,Gn,Xr.dts,!0);Vr.fileposition=Xr.fileposition,ia.appendSyncPoint(Vr)}pa.push({dts:oa,pts:dr,cts:sr,units:Xr.units,size:Xr.length,isKeyframe:La,duration:Gn,originalDts:ga,flags:{isLeading:0,dependsOn:La?2:1,isDependedOn:La?1:0,hasRedundancy:0,isNonSync:La?0:1}})}ir=new Uint8Array(ta),ir[0]=ta>>>24&255,ir[1]=ta>>>16&255,ir[2]=ta>>>8&255,ir[3]=ta&255,ir.set(Vt.types.mdat,4);for(let _r=0;_r{Qe.timestampBase=Me,Me+=Qe.duration,Qe.cors=Ie.cors,Qe.withCredentials=Ie.withCredentials,Le.referrerPolicy&&(Qe.referrerPolicy=Le.referrerPolicy)}),!isNaN(Me)&&this._mediaDataSource.duration!==Me&&(this._mediaDataSource.duration=Me),this._mediaInfo=null,this._demuxer=null,this._remuxer=null,this._ioctl=null,this._pendingSeekTime=null,this._pendingResolveSeekPoint=null,this._statisticsReporter=null}destroy(){this._mediaInfo=null,this._mediaDataSource=null,this._statisticsReporter&&this._disableStatisticsReporter(),this._ioctl&&(this._ioctl.destroy(),this._ioctl=null),this._demuxer&&(this._demuxer.destroy(),this._demuxer=null),this._remuxer&&(this._remuxer.destroy(),this._remuxer=null),this._emitter.removeAllListeners(),this._emitter=null}on(Ie,Le){this._emitter.addListener(Ie,Le)}off(Ie,Le){this._emitter.removeListener(Ie,Le)}start(){this._loadSegment(0),this._enableStatisticsReporter()}_loadSegment(Ie,Le){this._currentSegmentIndex=Ie;let Me=this._mediaDataSource.segments[Ie],Qe=this._ioctl=new et(Me,this._config,Ie);Qe.onError=this._onIOException.bind(this),Qe.onSeeked=this._onIOSeeked.bind(this),Qe.onComplete=this._onIOComplete.bind(this),Qe.onRedirect=this._onIORedirect.bind(this),Qe.onRecoveredEarlyEof=this._onIORecoveredEarlyEof.bind(this),Le?this._demuxer.bindDataSource(this._ioctl):Qe.onDataArrival=this._onInitChunkArrival.bind(this),Qe.open(Le)}stop(){this._internalAbort(),this._disableStatisticsReporter()}_internalAbort(){this._ioctl&&(this._ioctl.destroy(),this._ioctl=null)}pause(){this._ioctl&&this._ioctl.isWorking()&&(this._ioctl.pause(),this._disableStatisticsReporter())}resume(){this._ioctl&&this._ioctl.isPaused()&&(this._ioctl.resume(),this._enableStatisticsReporter())}seek(Ie){if(this._mediaInfo==null||!this._mediaInfo.isSeekable())return;let Le=this._searchSegmentIndexContains(Ie);if(Le===this._currentSegmentIndex){let Me=this._mediaInfo.segments[Le];if(Me==null)this._pendingSeekTime=Ie;else{let Qe=Me.getNearestKeyframe(Ie);this._remuxer.seek(Qe.milliseconds),this._ioctl.seek(Qe.fileposition),this._pendingResolveSeekPoint=Qe.milliseconds}}else{let Me=this._mediaInfo.segments[Le];if(Me==null)this._pendingSeekTime=Ie,this._internalAbort(),this._remuxer.seek(),this._remuxer.insertDiscontinuity(),this._loadSegment(Le);else{let Qe=Me.getNearestKeyframe(Ie);this._internalAbort(),this._remuxer.seek(Ie),this._remuxer.insertDiscontinuity(),this._demuxer.resetMediaInfo(),this._demuxer.timestampBase=this._mediaDataSource.segments[Le].timestampBase,this._loadSegment(Le,Qe.fileposition),this._pendingResolveSeekPoint=Qe.milliseconds,this._reportSegmentMediaInfo(Le)}}this._enableStatisticsReporter()}_searchSegmentIndexContains(Ie){let Le=this._mediaDataSource.segments,Me=Le.length-1;for(let Qe=0;Qe0)this._demuxer.bindDataSource(this._ioctl),this._demuxer.timestampBase=this._mediaDataSource.segments[this._currentSegmentIndex].timestampBase,Qe=this._demuxer.parseChunks(Ie,Le);else if((Me=Pn.probe(Ie)).match){this._demuxer=new Pn(Me,this._config),this._remuxer||(this._remuxer=new zn(this._config));let nt=this._mediaDataSource;nt.duration!=null&&!isNaN(nt.duration)&&(this._demuxer.overridedDuration=nt.duration),typeof nt.hasAudio=="boolean"&&(this._demuxer.overridedHasAudio=nt.hasAudio),typeof nt.hasVideo=="boolean"&&(this._demuxer.overridedHasVideo=nt.hasVideo),this._demuxer.timestampBase=nt.segments[this._currentSegmentIndex].timestampBase,this._demuxer.onError=this._onDemuxException.bind(this),this._demuxer.onMediaInfo=this._onMediaInfo.bind(this),this._demuxer.onMetaDataArrived=this._onMetaDataArrived.bind(this),this._demuxer.onScriptDataArrived=this._onScriptDataArrived.bind(this),this._remuxer.bindDataSource(this._demuxer.bindDataSource(this._ioctl)),this._remuxer.onInitSegment=this._onRemuxerInitSegmentArrival.bind(this),this._remuxer.onMediaSegment=this._onRemuxerMediaSegmentArrival.bind(this),Qe=this._demuxer.parseChunks(Ie,Le)}else Me=null,Pe.e(this.TAG,"Non-FLV, Unsupported media type!"),Promise.resolve().then(()=>{this._internalAbort()}),this._emitter.emit(Tr.DEMUX_ERROR,Jt.FORMAT_UNSUPPORTED,"Non-FLV, Unsupported media type"),Qe=0;return Qe}_onMediaInfo(Ie){this._mediaInfo==null&&(this._mediaInfo=Object.assign({},Ie),this._mediaInfo.keyframesIndex=null,this._mediaInfo.segments=[],this._mediaInfo.segmentCount=this._mediaDataSource.segments.length,Object.setPrototypeOf(this._mediaInfo,un.prototype));let Le=Object.assign({},Ie);Object.setPrototypeOf(Le,un.prototype),this._mediaInfo.segments[this._currentSegmentIndex]=Le,this._reportSegmentMediaInfo(this._currentSegmentIndex),this._pendingSeekTime!=null&&Promise.resolve().then(()=>{let Me=this._pendingSeekTime;this._pendingSeekTime=null,this.seek(Me)})}_onMetaDataArrived(Ie){this._emitter.emit(Tr.METADATA_ARRIVED,Ie)}_onScriptDataArrived(Ie){this._emitter.emit(Tr.SCRIPTDATA_ARRIVED,Ie)}_onIOSeeked(){this._remuxer.insertDiscontinuity()}_onIOComplete(Ie){let Me=Ie+1;Me0&&Me[0].originalDts===Qe&&(Qe=Me[0].pts),this._emitter.emit(Tr.RECOMMEND_SEEKPOINT,Qe)}}_enableStatisticsReporter(){this._statisticsReporter==null&&(this._statisticsReporter=self.setInterval(this._reportStatisticsInfo.bind(this),this._config.statisticsInfoReportInterval))}_disableStatisticsReporter(){this._statisticsReporter&&(self.clearInterval(this._statisticsReporter),this._statisticsReporter=null)}_reportSegmentMediaInfo(Ie){let Le=this._mediaInfo.segments[Ie],Me=Object.assign({},Le);Me.duration=this._mediaInfo.duration,Me.segmentCount=this._mediaInfo.segmentCount,delete Me.segments,delete Me.keyframesIndex,this._emitter.emit(Tr.MEDIA_INFO,Me)}_reportStatisticsInfo(){let Ie={};Ie.url=this._ioctl.currentURL,Ie.hasRedirect=this._ioctl.hasRedirect,Ie.hasRedirect&&(Ie.redirectedURL=this._ioctl.currentRedirectedURL),Ie.speed=this._ioctl.currentSpeed,Ie.loaderType=this._ioctl.loaderType,Ie.currentSegmentIndex=this._currentSegmentIndex,Ie.totalSegmentCount=this._mediaDataSource.segments.length,this._emitter.emit(Tr.STATISTICS_INFO,Ie)}}var Va=Ea,ai=function(Qt){let Ie="TransmuxingWorker",Le=null,Me=ia.bind(this);Ke.install(),Qt.addEventListener("message",function(pa){switch(pa.data.cmd){case"init":Le=new Va(pa.data.param[0],pa.data.param[1]),Le.on(Tr.IO_ERROR,ta.bind(this)),Le.on(Tr.DEMUX_ERROR,Br.bind(this)),Le.on(Tr.INIT_SEGMENT,Qe.bind(this)),Le.on(Tr.MEDIA_SEGMENT,nt.bind(this)),Le.on(Tr.LOADING_COMPLETE,kt.bind(this)),Le.on(Tr.RECOVERED_EARLY_EOF,Ht.bind(this)),Le.on(Tr.MEDIA_INFO,Ln.bind(this)),Le.on(Tr.METADATA_ARRIVED,vn.bind(this)),Le.on(Tr.SCRIPTDATA_ARRIVED,nr.bind(this)),Le.on(Tr.STATISTICS_INFO,ir.bind(this)),Le.on(Tr.RECOMMEND_SEEKPOINT,ra.bind(this));break;case"destroy":Le&&(Le.destroy(),Le=null),Qt.postMessage({msg:"destroyed"});break;case"start":Le.start();break;case"stop":Le.stop();break;case"seek":Le.seek(pa.data.param);break;case"pause":Le.pause();break;case"resume":Le.resume();break;case"logging_config":{let lr=pa.data.param;Pt.applyConfig(lr),lr.enableCallback===!0?Pt.addLogListener(Me):Pt.removeLogListener(Me);break}}});function Qe(pa,lr){let kn={msg:Tr.INIT_SEGMENT,data:{type:pa,data:lr}};Qt.postMessage(kn,[lr.data])}function nt(pa,lr){let kn={msg:Tr.MEDIA_SEGMENT,data:{type:pa,data:lr}};Qt.postMessage(kn,[lr.data])}function kt(){let pa={msg:Tr.LOADING_COMPLETE};Qt.postMessage(pa)}function Ht(){let pa={msg:Tr.RECOVERED_EARLY_EOF};Qt.postMessage(pa)}function Ln(pa){let lr={msg:Tr.MEDIA_INFO,data:pa};Qt.postMessage(lr)}function vn(pa){let lr={msg:Tr.METADATA_ARRIVED,data:pa};Qt.postMessage(lr)}function nr(pa){let lr={msg:Tr.SCRIPTDATA_ARRIVED,data:pa};Qt.postMessage(lr)}function ir(pa){let lr={msg:Tr.STATISTICS_INFO,data:pa};Qt.postMessage(lr)}function ta(pa,lr){Qt.postMessage({msg:Tr.IO_ERROR,data:{type:pa,info:lr}})}function Br(pa,lr){Qt.postMessage({msg:Tr.DEMUX_ERROR,data:{type:pa,info:lr}})}function ra(pa){Qt.postMessage({msg:Tr.RECOMMEND_SEEKPOINT,data:pa})}function ia(pa,lr){Qt.postMessage({msg:"logcat_callback",data:{type:pa,logcat:lr}})}};class xi{constructor(Ie,Le){if(this.TAG="Transmuxer",this._emitter=new(Ce()),Le.enableWorker&&typeof Worker!="undefined")try{let Me=De(82059);this._worker=Me(ai),this._workerDestroying=!1,this._worker.addEventListener("message",this._onWorkerMessage.bind(this)),this._worker.postMessage({cmd:"init",param:[Ie,Le]}),this.e={onLoggingConfigChanged:this._onLoggingConfigChanged.bind(this)},Pt.registerListener(this.e.onLoggingConfigChanged),this._worker.postMessage({cmd:"logging_config",param:Pt.getConfig()})}catch(Me){Pe.e(this.TAG,"Error while initialize transmuxing worker, fallback to inline transmuxing"),this._worker=null,this._controller=new Va(Ie,Le)}else this._controller=new Va(Ie,Le);if(this._controller){let Me=this._controller;Me.on(Tr.IO_ERROR,this._onIOError.bind(this)),Me.on(Tr.DEMUX_ERROR,this._onDemuxError.bind(this)),Me.on(Tr.INIT_SEGMENT,this._onInitSegment.bind(this)),Me.on(Tr.MEDIA_SEGMENT,this._onMediaSegment.bind(this)),Me.on(Tr.LOADING_COMPLETE,this._onLoadingComplete.bind(this)),Me.on(Tr.RECOVERED_EARLY_EOF,this._onRecoveredEarlyEof.bind(this)),Me.on(Tr.MEDIA_INFO,this._onMediaInfo.bind(this)),Me.on(Tr.METADATA_ARRIVED,this._onMetaDataArrived.bind(this)),Me.on(Tr.SCRIPTDATA_ARRIVED,this._onScriptDataArrived.bind(this)),Me.on(Tr.STATISTICS_INFO,this._onStatisticsInfo.bind(this)),Me.on(Tr.RECOMMEND_SEEKPOINT,this._onRecommendSeekpoint.bind(this))}}destroy(){this._worker?this._workerDestroying||(this._workerDestroying=!0,this._worker.postMessage({cmd:"destroy"}),Pt.removeListener(this.e.onLoggingConfigChanged),this.e=null):(this._controller.destroy(),this._controller=null),this._emitter.removeAllListeners(),this._emitter=null}on(Ie,Le){this._emitter.addListener(Ie,Le)}off(Ie,Le){this._emitter.removeListener(Ie,Le)}hasWorker(){return this._worker!=null}open(){this._worker?this._worker.postMessage({cmd:"start"}):this._controller.start()}close(){this._worker?this._worker.postMessage({cmd:"stop"}):this._controller.stop()}seek(Ie){this._worker?this._worker.postMessage({cmd:"seek",param:Ie}):this._controller.seek(Ie)}pause(){this._worker?this._worker.postMessage({cmd:"pause"}):this._controller.pause()}resume(){this._worker?this._worker.postMessage({cmd:"resume"}):this._controller.resume()}_onInitSegment(Ie,Le){Promise.resolve().then(()=>{this._emitter.emit(Tr.INIT_SEGMENT,Ie,Le)})}_onMediaSegment(Ie,Le){Promise.resolve().then(()=>{this._emitter.emit(Tr.MEDIA_SEGMENT,Ie,Le)})}_onLoadingComplete(){Promise.resolve().then(()=>{this._emitter.emit(Tr.LOADING_COMPLETE)})}_onRecoveredEarlyEof(){Promise.resolve().then(()=>{this._emitter.emit(Tr.RECOVERED_EARLY_EOF)})}_onMediaInfo(Ie){Promise.resolve().then(()=>{this._emitter.emit(Tr.MEDIA_INFO,Ie)})}_onMetaDataArrived(Ie){Promise.resolve().then(()=>{this._emitter.emit(Tr.METADATA_ARRIVED,Ie)})}_onScriptDataArrived(Ie){Promise.resolve().then(()=>{this._emitter.emit(Tr.SCRIPTDATA_ARRIVED,Ie)})}_onStatisticsInfo(Ie){Promise.resolve().then(()=>{this._emitter.emit(Tr.STATISTICS_INFO,Ie)})}_onIOError(Ie,Le){Promise.resolve().then(()=>{this._emitter.emit(Tr.IO_ERROR,Ie,Le)})}_onDemuxError(Ie,Le){Promise.resolve().then(()=>{this._emitter.emit(Tr.DEMUX_ERROR,Ie,Le)})}_onRecommendSeekpoint(Ie){Promise.resolve().then(()=>{this._emitter.emit(Tr.RECOMMEND_SEEKPOINT,Ie)})}_onLoggingConfigChanged(Ie){this._worker&&this._worker.postMessage({cmd:"logging_config",param:Ie})}_onWorkerMessage(Ie){let Le=Ie.data,Me=Le.data;if(Le.msg==="destroyed"||this._workerDestroying){this._workerDestroying=!1,this._worker.terminate(),this._worker=null;return}switch(Le.msg){case Tr.INIT_SEGMENT:case Tr.MEDIA_SEGMENT:this._emitter.emit(Le.msg,Me.type,Me.data);break;case Tr.LOADING_COMPLETE:case Tr.RECOVERED_EARLY_EOF:this._emitter.emit(Le.msg);break;case Tr.MEDIA_INFO:Object.setPrototypeOf(Me,un.prototype),this._emitter.emit(Le.msg,Me);break;case Tr.METADATA_ARRIVED:case Tr.SCRIPTDATA_ARRIVED:case Tr.STATISTICS_INFO:this._emitter.emit(Le.msg,Me);break;case Tr.IO_ERROR:case Tr.DEMUX_ERROR:this._emitter.emit(Le.msg,Me.type,Me.info);break;case Tr.RECOMMEND_SEEKPOINT:this._emitter.emit(Le.msg,Me);break;case"logcat_callback":Pe.emitter.emit("log",Me.type,Me.logcat);break;default:break}}}var hi=xi,mi={ERROR:"error",SOURCE_OPEN:"source_open",UPDATE_END:"update_end",BUFFER_FULL:"buffer_full"};class eo{constructor(Ie){this.TAG="MSEController",this._config=Ie,this._emitter=new(Ce()),this._config.isLive&&this._config.autoCleanupSourceBuffer==null&&(this._config.autoCleanupSourceBuffer=!0),this.e={onSourceOpen:this._onSourceOpen.bind(this),onSourceEnded:this._onSourceEnded.bind(this),onSourceClose:this._onSourceClose.bind(this),onSourceBufferError:this._onSourceBufferError.bind(this),onSourceBufferUpdateEnd:this._onSourceBufferUpdateEnd.bind(this)},this._mediaSource=null,this._mediaSourceObjectURL=null,this._mediaElement=null,this._isBufferFull=!1,this._hasPendingEos=!1,this._requireSetMediaDuration=!1,this._pendingMediaDuration=0,this._pendingSourceBufferInit=[],this._mimeTypes={video:null,audio:null},this._sourceBuffers={video:null,audio:null},this._lastInitSegments={video:null,audio:null},this._pendingSegments={video:[],audio:[]},this._pendingRemoveRanges={video:[],audio:[]},this._idrList=new cr}destroy(){(this._mediaElement||this._mediaSource)&&this.detachMediaElement(),this.e=null,this._emitter.removeAllListeners(),this._emitter=null}on(Ie,Le){this._emitter.addListener(Ie,Le)}off(Ie,Le){this._emitter.removeListener(Ie,Le)}attachMediaElement(Ie){if(this._mediaSource)throw new me("MediaSource has been attached to an HTMLMediaElement!");let Le=this._mediaSource=new window.MediaSource;Le.addEventListener("sourceopen",this.e.onSourceOpen),Le.addEventListener("sourceended",this.e.onSourceEnded),Le.addEventListener("sourceclose",this.e.onSourceClose),this._mediaElement=Ie,this._mediaSourceObjectURL=window.URL.createObjectURL(this._mediaSource),Ie.src=this._mediaSourceObjectURL}detachMediaElement(){if(this._mediaSource){let Ie=this._mediaSource;for(let Le in this._sourceBuffers){let Me=this._pendingSegments[Le];Me.splice(0,Me.length),this._pendingSegments[Le]=null,this._pendingRemoveRanges[Le]=null,this._lastInitSegments[Le]=null;let Qe=this._sourceBuffers[Le];if(Qe){if(Ie.readyState!=="closed"){try{Ie.removeSourceBuffer(Qe)}catch(nt){Pe.e(this.TAG,nt.message)}Qe.removeEventListener("error",this.e.onSourceBufferError),Qe.removeEventListener("updateend",this.e.onSourceBufferUpdateEnd)}this._mimeTypes[Le]=null,this._sourceBuffers[Le]=null}}if(Ie.readyState==="open")try{Ie.endOfStream()}catch(Le){Pe.e(this.TAG,Le.message)}Ie.removeEventListener("sourceopen",this.e.onSourceOpen),Ie.removeEventListener("sourceended",this.e.onSourceEnded),Ie.removeEventListener("sourceclose",this.e.onSourceClose),this._pendingSourceBufferInit=[],this._isBufferFull=!1,this._idrList.clear(),this._mediaSource=null}this._mediaElement&&(this._mediaElement.src="",this._mediaElement.removeAttribute("src"),this._mediaElement=null),this._mediaSourceObjectURL&&(window.URL.revokeObjectURL(this._mediaSourceObjectURL),this._mediaSourceObjectURL=null)}appendInitSegment(Ie,Le){if(!this._mediaSource||this._mediaSource.readyState!=="open"){this._pendingSourceBufferInit.push(Ie),this._pendingSegments[Ie.type].push(Ie);return}let Me=Ie,Qe=`${Me.container}`;Me.codec&&Me.codec.length>0&&(Qe+=`;codecs=${Me.codec}`);let nt=!1;if(Pe.v(this.TAG,"Received Initialization Segment, mimeType: "+Qe),this._lastInitSegments[Me.type]=Me,Qe!==this._mimeTypes[Me.type]){if(this._mimeTypes[Me.type])Pe.v(this.TAG,`Notice: ${Me.type} mimeType changed, origin: ${this._mimeTypes[Me.type]}, target: ${Qe}`);else{nt=!0;try{let kt=this._sourceBuffers[Me.type]=this._mediaSource.addSourceBuffer(Qe);kt.addEventListener("error",this.e.onSourceBufferError),kt.addEventListener("updateend",this.e.onSourceBufferUpdateEnd)}catch(kt){Pe.e(this.TAG,kt.message),this._emitter.emit(mi.ERROR,{code:kt.code,msg:kt.message});return}}this._mimeTypes[Me.type]=Qe}Le||this._pendingSegments[Me.type].push(Me),nt||this._sourceBuffers[Me.type]&&!this._sourceBuffers[Me.type].updating&&this._doAppendSegments(),oe.safari&&Me.container==="audio/mpeg"&&Me.mediaDuration>0&&(this._requireSetMediaDuration=!0,this._pendingMediaDuration=Me.mediaDuration/1e3,this._updateMediaSourceDuration())}appendMediaSegment(Ie){let Le=Ie;this._pendingSegments[Le.type].push(Le),this._config.autoCleanupSourceBuffer&&this._needCleanupSourceBuffer()&&this._doCleanupSourceBuffer();let Me=this._sourceBuffers[Le.type];Me&&!Me.updating&&!this._hasPendingRemoveRanges()&&this._doAppendSegments()}seek(Ie){for(let Le in this._sourceBuffers){if(!this._sourceBuffers[Le])continue;let Me=this._sourceBuffers[Le];if(this._mediaSource.readyState==="open")try{Me.abort()}catch(nt){Pe.e(this.TAG,nt.message)}this._idrList.clear();let Qe=this._pendingSegments[Le];if(Qe.splice(0,Qe.length),this._mediaSource.readyState!=="closed"){for(let nt=0;nt=1&&Ie-Qe.start(0)>=this._config.autoCleanupMaxBackwardDuration)return!0}}return!1}_doCleanupSourceBuffer(){let Ie=this._mediaElement.currentTime;for(let Le in this._sourceBuffers){let Me=this._sourceBuffers[Le];if(Me){let Qe=Me.buffered,nt=!1;for(let kt=0;kt=this._config.autoCleanupMaxBackwardDuration){nt=!0;let vn=Ie-this._config.autoCleanupMinBackwardDuration;this._pendingRemoveRanges[Le].push({start:Ht,end:vn})}}else Ln0&&(isNaN(Le)||Me>Le)&&(Pe.v(this.TAG,`Update MediaSource duration from ${Le} to ${Me}`),this._mediaSource.duration=Me),this._requireSetMediaDuration=!1,this._pendingMediaDuration=0}_doRemoveRanges(){for(let Ie in this._pendingRemoveRanges){if(!this._sourceBuffers[Ie]||this._sourceBuffers[Ie].updating)continue;let Le=this._sourceBuffers[Ie],Me=this._pendingRemoveRanges[Ie];for(;Me.length&&!Le.updating;){let Qe=Me.shift();Le.remove(Qe.start,Qe.end)}}}_doAppendSegments(){let Ie=this._pendingSegments;for(let Le in Ie)if(!(!this._sourceBuffers[Le]||this._sourceBuffers[Le].updating)&&Ie[Le].length>0){let Me=Ie[Le].shift();if(Me.timestampOffset){let Qe=this._sourceBuffers[Le].timestampOffset,nt=Me.timestampOffset/1e3;Math.abs(Qe-nt)>.1&&(Pe.v(this.TAG,`Update MPEG audio timestampOffset from ${Qe} to ${nt}`),this._sourceBuffers[Le].timestampOffset=nt),delete Me.timestampOffset}if(!Me.data||Me.data.byteLength===0)continue;try{this._sourceBuffers[Le].appendBuffer(Me.data),this._isBufferFull=!1,Le==="video"&&Me.hasOwnProperty("info")&&this._idrList.appendArray(Me.info.syncPoints)}catch(Qe){this._pendingSegments[Le].unshift(Me),Qe.code===22?(this._isBufferFull||this._emitter.emit(mi.BUFFER_FULL),this._isBufferFull=!0):(Pe.e(this.TAG,Qe.message),this._emitter.emit(mi.ERROR,{code:Qe.code,msg:Qe.message}))}}}_onSourceOpen(){if(Pe.v(this.TAG,"MediaSource onSourceOpen"),this._mediaSource.removeEventListener("sourceopen",this.e.onSourceOpen),this._pendingSourceBufferInit.length>0){let Ie=this._pendingSourceBufferInit;for(;Ie.length;){let Le=Ie.shift();this.appendInitSegment(Le,!0)}}this._hasPendingSegments()&&this._doAppendSegments(),this._emitter.emit(mi.SOURCE_OPEN)}_onSourceEnded(){Pe.v(this.TAG,"MediaSource onSourceEnded")}_onSourceClose(){Pe.v(this.TAG,"MediaSource onSourceClose"),this._mediaSource&&this.e!=null&&(this._mediaSource.removeEventListener("sourceopen",this.e.onSourceOpen),this._mediaSource.removeEventListener("sourceended",this.e.onSourceEnded),this._mediaSource.removeEventListener("sourceclose",this.e.onSourceClose))}_hasPendingSegments(){let Ie=this._pendingSegments;return Ie.video.length>0||Ie.audio.length>0}_hasPendingRemoveRanges(){let Ie=this._pendingRemoveRanges;return Ie.video.length>0||Ie.audio.length>0}_onSourceBufferUpdateEnd(){this._requireSetMediaDuration?this._updateMediaSourceDuration():this._hasPendingRemoveRanges()?this._doRemoveRanges():this._hasPendingSegments()?this._doAppendSegments():this._hasPendingEos&&this.endOfStream(),this._emitter.emit(mi.UPDATE_END)}_onSourceBufferError(Ie){Pe.e(this.TAG,`SourceBuffer Error: ${Ie}`)}}var wo=eo;const ui={NETWORK_ERROR:"NetworkError",MEDIA_ERROR:"MediaError",OTHER_ERROR:"OtherError"},io={NETWORK_EXCEPTION:ue.EXCEPTION,NETWORK_STATUS_CODE_INVALID:ue.HTTP_STATUS_CODE_INVALID,NETWORK_TIMEOUT:ue.CONNECTING_TIMEOUT,NETWORK_UNRECOVERABLE_EARLY_EOF:ue.UNRECOVERABLE_EARLY_EOF,MEDIA_MSE_ERROR:"MediaMSEError",MEDIA_FORMAT_ERROR:Jt.FORMAT_ERROR,MEDIA_FORMAT_UNSUPPORTED:Jt.FORMAT_UNSUPPORTED,MEDIA_CODEC_UNSUPPORTED:Jt.CODEC_UNSUPPORTED};class po{constructor(Ie,Le){if(this.TAG="FlvPlayer",this._type="FlvPlayer",this._emitter=new(Ce()),this._config=ht(),typeof Le=="object"&&Object.assign(this._config,Le),Ie.type.toLowerCase()!=="flv")throw new Ae("FlvPlayer requires an flv MediaDataSource input!");Ie.isLive===!0&&(this._config.isLive=!0),this.e={onvLoadedMetadata:this._onvLoadedMetadata.bind(this),onvSeeking:this._onvSeeking.bind(this),onvCanPlay:this._onvCanPlay.bind(this),onvStalled:this._onvStalled.bind(this),onvProgress:this._onvProgress.bind(this)},self.performance&&self.performance.now?this._now=self.performance.now.bind(self.performance):this._now=Date.now,this._pendingSeekTime=null,this._requestSetTime=!1,this._seekpointRecord=null,this._progressChecker=null,this._mediaDataSource=Ie,this._mediaElement=null,this._msectl=null,this._transmuxer=null,this._mseSourceOpened=!1,this._hasPendingLoad=!1,this._receivedCanPlay=!1,this._mediaInfo=null,this._statisticsInfo=null;let Me=oe.chrome&&(oe.version.major<50||oe.version.major===50&&oe.version.build<2661);this._alwaysSeekKeyframe=!!(Me||oe.msedge||oe.msie),this._alwaysSeekKeyframe&&(this._config.accurateSeek=!1)}destroy(){this._progressChecker!=null&&(window.clearInterval(this._progressChecker),this._progressChecker=null),this._transmuxer&&this.unload(),this._mediaElement&&this.detachMediaElement(),this.e=null,this._mediaDataSource=null,this._emitter.removeAllListeners(),this._emitter=null}on(Ie,Le){Ie===Ot.MEDIA_INFO?this._mediaInfo!=null&&Promise.resolve().then(()=>{this._emitter.emit(Ot.MEDIA_INFO,this.mediaInfo)}):Ie===Ot.STATISTICS_INFO&&this._statisticsInfo!=null&&Promise.resolve().then(()=>{this._emitter.emit(Ot.STATISTICS_INFO,this.statisticsInfo)}),this._emitter.addListener(Ie,Le)}off(Ie,Le){this._emitter.removeListener(Ie,Le)}attachMediaElement(Ie){if(this._mediaElement=Ie,Ie.addEventListener("loadedmetadata",this.e.onvLoadedMetadata),Ie.addEventListener("seeking",this.e.onvSeeking),Ie.addEventListener("canplay",this.e.onvCanPlay),Ie.addEventListener("stalled",this.e.onvStalled),Ie.addEventListener("progress",this.e.onvProgress),this._msectl=new wo(this._config),this._msectl.on(mi.UPDATE_END,this._onmseUpdateEnd.bind(this)),this._msectl.on(mi.BUFFER_FULL,this._onmseBufferFull.bind(this)),this._msectl.on(mi.SOURCE_OPEN,()=>{this._mseSourceOpened=!0,this._hasPendingLoad&&(this._hasPendingLoad=!1,this.load())}),this._msectl.on(mi.ERROR,Le=>{this._emitter.emit(Ot.ERROR,ui.MEDIA_ERROR,io.MEDIA_MSE_ERROR,Le)}),this._msectl.attachMediaElement(Ie),this._pendingSeekTime!=null)try{Ie.currentTime=this._pendingSeekTime,this._pendingSeekTime=null}catch(Le){}}detachMediaElement(){this._mediaElement&&(this._msectl.detachMediaElement(),this._mediaElement.removeEventListener("loadedmetadata",this.e.onvLoadedMetadata),this._mediaElement.removeEventListener("seeking",this.e.onvSeeking),this._mediaElement.removeEventListener("canplay",this.e.onvCanPlay),this._mediaElement.removeEventListener("stalled",this.e.onvStalled),this._mediaElement.removeEventListener("progress",this.e.onvProgress),this._mediaElement=null),this._msectl&&(this._msectl.destroy(),this._msectl=null)}load(){if(!this._mediaElement)throw new me("HTMLMediaElement must be attached before load()!");if(this._transmuxer)throw new me("FlvPlayer.load() has been called, please call unload() first!");if(!this._hasPendingLoad){if(this._config.deferLoadAfterSourceOpen&&this._mseSourceOpened===!1){this._hasPendingLoad=!0;return}this._mediaElement.readyState>0&&(this._requestSetTime=!0,this._mediaElement.currentTime=0),this._transmuxer=new hi(this._mediaDataSource,this._config),this._transmuxer.on(Tr.INIT_SEGMENT,(Ie,Le)=>{this._msectl.appendInitSegment(Le)}),this._transmuxer.on(Tr.MEDIA_SEGMENT,(Ie,Le)=>{if(this._msectl.appendMediaSegment(Le),this._config.lazyLoad&&!this._config.isLive){let Me=this._mediaElement.currentTime;Le.info.endDts>=(Me+this._config.lazyLoadMaxDuration)*1e3&&this._progressChecker==null&&(Pe.v(this.TAG,"Maximum buffering duration exceeded, suspend transmuxing task"),this._suspendTransmuxer())}}),this._transmuxer.on(Tr.LOADING_COMPLETE,()=>{this._msectl.endOfStream(),this._emitter.emit(Ot.LOADING_COMPLETE)}),this._transmuxer.on(Tr.RECOVERED_EARLY_EOF,()=>{this._emitter.emit(Ot.RECOVERED_EARLY_EOF)}),this._transmuxer.on(Tr.IO_ERROR,(Ie,Le)=>{this._emitter.emit(Ot.ERROR,ui.NETWORK_ERROR,Ie,Le)}),this._transmuxer.on(Tr.DEMUX_ERROR,(Ie,Le)=>{this._emitter.emit(Ot.ERROR,ui.MEDIA_ERROR,Ie,{code:-1,msg:Le})}),this._transmuxer.on(Tr.MEDIA_INFO,Ie=>{this._mediaInfo=Ie,this._emitter.emit(Ot.MEDIA_INFO,Object.assign({},Ie))}),this._transmuxer.on(Tr.METADATA_ARRIVED,Ie=>{this._emitter.emit(Ot.METADATA_ARRIVED,Ie)}),this._transmuxer.on(Tr.SCRIPTDATA_ARRIVED,Ie=>{this._emitter.emit(Ot.SCRIPTDATA_ARRIVED,Ie)}),this._transmuxer.on(Tr.STATISTICS_INFO,Ie=>{this._statisticsInfo=this._fillStatisticsInfo(Ie),this._emitter.emit(Ot.STATISTICS_INFO,Object.assign({},this._statisticsInfo))}),this._transmuxer.on(Tr.RECOMMEND_SEEKPOINT,Ie=>{this._mediaElement&&!this._config.accurateSeek&&(this._requestSetTime=!0,this._mediaElement.currentTime=Ie/1e3)}),this._transmuxer.open()}}unload(){this._mediaElement&&this._mediaElement.pause(),this._msectl&&this._msectl.seek(0),this._transmuxer&&(this._transmuxer.close(),this._transmuxer.destroy(),this._transmuxer=null)}play(){return this._mediaElement.play()}pause(){this._mediaElement.pause()}get type(){return this._type}get buffered(){return this._mediaElement.buffered}get duration(){return this._mediaElement.duration}get volume(){return this._mediaElement.volume}set volume(Ie){this._mediaElement.volume=Ie}get muted(){return this._mediaElement.muted}set muted(Ie){this._mediaElement.muted=Ie}get currentTime(){return this._mediaElement?this._mediaElement.currentTime:0}set currentTime(Ie){this._mediaElement?this._internalSeek(Ie):this._pendingSeekTime=Ie}get mediaInfo(){return Object.assign({},this._mediaInfo)}get statisticsInfo(){return this._statisticsInfo==null&&(this._statisticsInfo={}),this._statisticsInfo=this._fillStatisticsInfo(this._statisticsInfo),Object.assign({},this._statisticsInfo)}_fillStatisticsInfo(Ie){if(Ie.playerType=this._type,!(this._mediaElement instanceof HTMLVideoElement))return Ie;let Le=!0,Me=0,Qe=0;if(this._mediaElement.getVideoPlaybackQuality){let nt=this._mediaElement.getVideoPlaybackQuality();Me=nt.totalVideoFrames,Qe=nt.droppedVideoFrames}else this._mediaElement.webkitDecodedFrameCount!=null?(Me=this._mediaElement.webkitDecodedFrameCount,Qe=this._mediaElement.webkitDroppedFrameCount):Le=!1;return Le&&(Ie.decodedFrames=Me,Ie.droppedFrames=Qe),Ie}_onmseUpdateEnd(){if(!this._config.lazyLoad||this._config.isLive)return;let Ie=this._mediaElement.buffered,Le=this._mediaElement.currentTime,Me=0,Qe=0;for(let nt=0;nt=Le+this._config.lazyLoadMaxDuration&&this._progressChecker==null&&(Pe.v(this.TAG,"Maximum buffering duration exceeded, suspend transmuxing task"),this._suspendTransmuxer())}_onmseBufferFull(){Pe.v(this.TAG,"MSE SourceBuffer is full, suspend transmuxing task"),this._progressChecker==null&&this._suspendTransmuxer()}_suspendTransmuxer(){this._transmuxer&&(this._transmuxer.pause(),this._progressChecker==null&&(this._progressChecker=window.setInterval(this._checkProgressAndResume.bind(this),1e3)))}_checkProgressAndResume(){let Ie=this._mediaElement.currentTime,Le=this._mediaElement.buffered,Me=!1;for(let Qe=0;Qe=nt&&Ie=kt-this._config.lazyLoadRecoverDuration&&(Me=!0);break}}Me&&(window.clearInterval(this._progressChecker),this._progressChecker=null,Me&&(Pe.v(this.TAG,"Continue loading from paused position"),this._transmuxer.resume()))}_isTimepointBuffered(Ie){let Le=this._mediaElement.buffered;for(let Me=0;Me=Qe&&Ie0){let nt=this._mediaElement.buffered.start(0);(nt<1&&Ie0&&Le.currentTime0){let Qe=Me.start(0);if(Qe<1&&Le{this._emitter.emit(Ot.MEDIA_INFO,this.mediaInfo)}):Ie===Ot.STATISTICS_INFO&&this._mediaElement!=null&&this._mediaElement.readyState!==0&&Promise.resolve().then(()=>{this._emitter.emit(Ot.STATISTICS_INFO,this.statisticsInfo)}),this._emitter.addListener(Ie,Le)}off(Ie,Le){this._emitter.removeListener(Ie,Le)}attachMediaElement(Ie){if(this._mediaElement=Ie,Ie.addEventListener("loadedmetadata",this.e.onvLoadedMetadata),this._pendingSeekTime!=null)try{Ie.currentTime=this._pendingSeekTime,this._pendingSeekTime=null}catch(Le){}}detachMediaElement(){this._mediaElement&&(this._mediaElement.src="",this._mediaElement.removeAttribute("src"),this._mediaElement.removeEventListener("loadedmetadata",this.e.onvLoadedMetadata),this._mediaElement=null),this._statisticsReporter!=null&&(window.clearInterval(this._statisticsReporter),this._statisticsReporter=null)}load(){if(!this._mediaElement)throw new me("HTMLMediaElement must be attached before load()!");this._mediaElement.src=this._mediaDataSource.url,this._mediaElement.readyState>0&&(this._mediaElement.currentTime=0),this._mediaElement.preload="auto",this._mediaElement.load(),this._statisticsReporter=window.setInterval(this._reportStatisticsInfo.bind(this),this._config.statisticsInfoReportInterval)}unload(){this._mediaElement&&(this._mediaElement.src="",this._mediaElement.removeAttribute("src")),this._statisticsReporter!=null&&(window.clearInterval(this._statisticsReporter),this._statisticsReporter=null)}play(){return this._mediaElement.play()}pause(){this._mediaElement.pause()}get type(){return this._type}get buffered(){return this._mediaElement.buffered}get duration(){return this._mediaElement.duration}get volume(){return this._mediaElement.volume}set volume(Ie){this._mediaElement.volume=Ie}get muted(){return this._mediaElement.muted}set muted(Ie){this._mediaElement.muted=Ie}get currentTime(){return this._mediaElement?this._mediaElement.currentTime:0}set currentTime(Ie){this._mediaElement?this._mediaElement.currentTime=Ie:this._pendingSeekTime=Ie}get mediaInfo(){let Le={mimeType:(this._mediaElement instanceof HTMLAudioElement?"audio/":"video/")+this._mediaDataSource.type};return this._mediaElement&&(Le.duration=Math.floor(this._mediaElement.duration*1e3),this._mediaElement instanceof HTMLVideoElement&&(Le.width=this._mediaElement.videoWidth,Le.height=this._mediaElement.videoHeight)),Le}get statisticsInfo(){let Ie={playerType:this._type,url:this._mediaDataSource.url};if(!(this._mediaElement instanceof HTMLVideoElement))return Ie;let Le=!0,Me=0,Qe=0;if(this._mediaElement.getVideoPlaybackQuality){let nt=this._mediaElement.getVideoPlaybackQuality();Me=nt.totalVideoFrames,Qe=nt.droppedVideoFrames}else this._mediaElement.webkitDecodedFrameCount!=null?(Me=this._mediaElement.webkitDecodedFrameCount,Qe=this._mediaElement.webkitDroppedFrameCount):Le=!1;return Le&&(Ie.decodedFrames=Me,Ie.droppedFrames=Qe),Ie}_onvLoadedMetadata(Ie){this._pendingSeekTime!=null&&(this._mediaElement.currentTime=this._pendingSeekTime,this._pendingSeekTime=null),this._emitter.emit(Ot.MEDIA_INFO,this.mediaInfo)}_reportStatisticsInfo(){this._emitter.emit(Ot.STATISTICS_INFO,this.statisticsInfo)}}var Yi=aa;Ke.install();function Fr(Qt,Ie){let Le=Qt;if(Le==null||typeof Le!="object")throw new Ae("MediaDataSource must be an javascript object!");if(!Le.hasOwnProperty("type"))throw new Ae("MediaDataSource must has type field to indicate video file type!");switch(Le.type){case"flv":return new da(Le,Ie);default:return new Yi(Le,Ie)}}function va(){return ct.supportMSEH264Playback()}function Ya(){return ct.getFeatureList()}let si={};si.createPlayer=Fr,si.isSupported=va,si.getFeatureList=Ya,si.BaseLoader=ee,si.LoaderStatus=xe,si.LoaderErrors=ue,si.Events=Ot,si.ErrorTypes=ui,si.ErrorDetails=io,si.FlvPlayer=da,si.NativePlayer=Yi,si.LoggingControl=Pt,Object.defineProperty(si,"version",{enumerable:!0,get:function(){return"__VERSION__"}});var Ri=si},81254:function(Wt,en,De){"use strict";var Re,Ke=Object.defineProperty,Ne=Qt=>{throw TypeError(Qt)},Ce=Math.pow,ke=(Qt,Ie,Le)=>Ie in Qt?Ke(Qt,Ie,{enumerable:!0,configurable:!0,writable:!0,value:Le}):Qt[Ie]=Le,Pe=(Qt,Ie,Le)=>ke(Qt,typeof Ie!="symbol"?Ie+"":Ie,Le),ve=(Qt,Ie,Le)=>Ie.has(Qt)||Ne("Cannot "+Le),ye=(Qt,Ie,Le)=>(ve(Qt,Ie,"read from private field"),Le?Le.call(Qt):Ie.get(Qt)),we=(Qt,Ie,Le)=>Ie.has(Qt)?Ne("Cannot add the same private member more than once"):Ie instanceof WeakSet?Ie.add(Qt):Ie.set(Qt,Le),me=(Qt,Ie,Le,Me)=>(ve(Qt,Ie,"write to private field"),Me?Me.call(Qt,Le):Ie.set(Qt,Le),Le),Ae=(Qt,Ie,Le)=>(ve(Qt,Ie,"access private method"),Le),Ee,xe,ue;Re={value:!0};var ee=De(34634),ne=De(34402);const le=" ".repeat(2),oe=" ".repeat(4);function de(){return he(this)}function he(Qt,Ie={}){const{maxRows:Le=15,maxColumns:Me=10,maxNumSize:Qe=8,padMinus:nt="auto"}=Ie;return`${Qt.constructor.name} { ${le}[ ${oe}${ie(Qt,Le,Me,Qe,nt)} diff --git a/umi.ed67603c.js b/umi.b1f161b6.js similarity index 99% rename from umi.ed67603c.js rename to umi.b1f161b6.js index 48a4291ec1..83344c5c81 100644 --- a/umi.ed67603c.js +++ b/umi.b1f161b6.js @@ -1480,6 +1480,6 @@ Schedule: ${W.map(Ae=>lu(Ae))} pos: ${this.timelinePos}`),te.length&&this.log(`R `).split(` `),N=[],te=t?Ci(t.baseTime,t.timescale):0;let ce="00:00.000",xe=0,Ie=0,Ae,at=!0;U.oncue=function(tt){const kt=n[s];let fr=n.ccOffset;const sr=(xe-te)/9e4;if(kt!=null&&kt.new&&(Ie!==void 0?fr=n.ccOffset=kt.start:Jc(n,s,sr)),sr){if(!t){Ae=new Error("Missing initPTS for VTT MPEGTS");return}fr=sr-n.presentationOffset}const kr=tt.endTime-tt.startTime,zr=Za((tt.startTime+fr-Ie)*9e4,_*9e4)/9e4;tt.startTime=Math.max(zr,0),tt.endTime=Math.max(zr+kr,0);const ln=tt.text.trim();tt.text=decodeURIComponent(encodeURIComponent(ln)),tt.id||(tt.id=Bl(tt.startTime,tt.endTime,ln)),tt.endTime>0&&N.push(tt)},U.onparsingerror=function(tt){Ae=tt},U.onflush=function(){if(Ae){T(Ae);return}E(N)},W.forEach(tt=>{if(at)if(Hu(tt,"X-TIMESTAMP-MAP=")){at=!1,tt.slice(16).split(",").forEach(kt=>{Hu(kt,"LOCAL:")?ce=kt.slice(6):Hu(kt,"MPEGTS:")&&(xe=parseInt(kt.slice(7)))});try{Ie=qc(ce)/1e3}catch(kt){Ae=kt}return}else tt===""&&(at=!1);U.parse(tt+` `)}),U.flush()}const Fu="stpp.ttml.im1t",Sl=/^(\d{2,}):(\d{2}):(\d{2}):(\d{2})\.?(\d+)?$/,ic=/^(\d*(?:\.\d*)?)(h|m|s|ms|f|t)$/,wu={left:"start",center:"center",right:"end",start:"start",end:"end"};function ac(P,t,n,s){const _=xt(new Uint8Array(P),["mdat"]);if(_.length===0){s(new Error("Could not parse IMSC1 mdat"));return}const E=_.map(U=>q(U)),T=jn(t.baseTime,1,t.timescale);try{E.forEach(U=>n(Nl(U,T)))}catch(U){s(U)}}function Nl(P,t){const _=new DOMParser().parseFromString(P,"text/xml").getElementsByTagName("tt")[0];if(!_)throw new Error("Invalid ttml");const E={frameRate:30,subFrameRate:1,frameRateMultiplier:0,tickRate:0},T=Object.keys(E).reduce((ce,xe)=>(ce[xe]=_.getAttribute(`ttp:${xe}`)||E[xe],ce),{}),U=_.getAttribute("xml:space")!=="preserve",W=Gn(Tn(_,"styling","style")),N=Gn(Tn(_,"layout","region")),te=Tn(_,"body","[begin]");return[].map.call(te,ce=>{const xe=Fi(ce,U);if(!xe||!ce.hasAttribute("begin"))return null;const Ie=ma(ce.getAttribute("begin"),T),Ae=ma(ce.getAttribute("dur"),T);let at=ma(ce.getAttribute("end"),T);if(Ie===null)throw oa(ce);if(at===null){if(Ae===null)throw oa(ce);at=Ie+Ae}const tt=new Fl(Ie-t,at-t,xe);tt.id=Bl(tt.startTime,tt.endTime,tt.text);const kt=N[ce.getAttribute("region")],fr=W[ce.getAttribute("style")],sr=Sa(kt,fr,W),{textAlign:kr}=sr;if(kr){const zr=wu[kr];zr&&(tt.lineAlign=zr),tt.align=kr}return y(tt,sr),tt}).filter(ce=>ce!==null)}function Tn(P,t,n){const s=P.getElementsByTagName(t)[0];return s?[].slice.call(s.querySelectorAll(n)):[]}function Gn(P){return P.reduce((t,n)=>{const s=n.getAttribute("xml:id");return s&&(t[s]=n),t},{})}function Fi(P,t){return[].slice.call(P.childNodes).reduce((n,s,_)=>{var E;return s.nodeName==="br"&&_?n+` -`:(E=s.childNodes)!=null&&E.length?Fi(s,t):t?n+s.textContent.trim().replace(/\s+/g," "):n+s.textContent},"")}function Sa(P,t,n){const s="http://www.w3.org/ns/ttml#styling";let _=null;const E=["displayAlign","textAlign","color","backgroundColor","fontSize","fontFamily"],T=P!=null&&P.hasAttribute("style")?P.getAttribute("style"):null;return T&&n.hasOwnProperty(T)&&(_=n[T]),E.reduce((U,W)=>{const N=Gi(t,s,W)||Gi(P,s,W)||Gi(_,s,W);return N&&(U[W]=N),U},{})}function Gi(P,t,n){return P&&P.hasAttributeNS(t,n)?P.getAttributeNS(t,n):null}function oa(P){return new Error(`Could not parse ttml timestamp ${P}`)}function ma(P,t){if(!P)return null;let n=Ks(P);return n===null&&(Sl.test(P)?n=ms(P,t):ic.test(P)&&(n=qi(P,t))),n}function ms(P,t){const n=Sl.exec(P),s=(n[4]|0)+(n[5]|0)/t.subFrameRate;return(n[1]|0)*3600+(n[2]|0)*60+(n[3]|0)+s/t.frameRate}function qi(P,t){const n=ic.exec(P),s=Number(n[1]);switch(n[2]){case"h":return s*3600;case"m":return s*60;case"ms":return s*1e3;case"f":return s/t.frameRate;case"t":return s/t.tickRate}return s}class is{constructor(t,n){this.timelineController=void 0,this.cueRanges=[],this.trackName=void 0,this.startTime=null,this.endTime=null,this.screen=null,this.timelineController=t,this.trackName=n}dispatchCue(){this.startTime!==null&&(this.timelineController.addCues(this.trackName,this.startTime,this.endTime,this.screen,this.cueRanges),this.startTime=null)}newCue(t,n,s){(this.startTime===null||this.startTime>t)&&(this.startTime=t),this.endTime=n,this.screen=s,this.timelineController.createCaptionsTrack(this.trackName)}reset(){this.cueRanges=[],this.startTime=null}}class Wu{constructor(t){this.hls=void 0,this.media=null,this.config=void 0,this.enabled=!0,this.Cues=void 0,this.textTracks=[],this.tracks=[],this.initPTS=[],this.unparsedVttFrags=[],this.captionsTracks={},this.nonNativeCaptionsTracks={},this.cea608Parser1=void 0,this.cea608Parser2=void 0,this.lastCc=-1,this.lastSn=-1,this.lastPartIndex=-1,this.prevCC=-1,this.vttCCs=ll(),this.captionsProperties=void 0,this.hls=t,this.config=t.config,this.Cues=t.config.cueHandler,this.captionsProperties={textTrack1:{label:this.config.captionsTextTrack1Label,languageCode:this.config.captionsTextTrack1LanguageCode},textTrack2:{label:this.config.captionsTextTrack2Label,languageCode:this.config.captionsTextTrack2LanguageCode},textTrack3:{label:this.config.captionsTextTrack3Label,languageCode:this.config.captionsTextTrack3LanguageCode},textTrack4:{label:this.config.captionsTextTrack4Label,languageCode:this.config.captionsTextTrack4LanguageCode}},t.on(o.MEDIA_ATTACHING,this.onMediaAttaching,this),t.on(o.MEDIA_DETACHING,this.onMediaDetaching,this),t.on(o.MANIFEST_LOADING,this.onManifestLoading,this),t.on(o.MANIFEST_LOADED,this.onManifestLoaded,this),t.on(o.SUBTITLE_TRACKS_UPDATED,this.onSubtitleTracksUpdated,this),t.on(o.FRAG_LOADING,this.onFragLoading,this),t.on(o.FRAG_LOADED,this.onFragLoaded,this),t.on(o.FRAG_PARSING_USERDATA,this.onFragParsingUserdata,this),t.on(o.FRAG_DECRYPTED,this.onFragDecrypted,this),t.on(o.INIT_PTS_FOUND,this.onInitPtsFound,this),t.on(o.SUBTITLE_TRACKS_CLEARED,this.onSubtitleTracksCleared,this),t.on(o.BUFFER_FLUSHING,this.onBufferFlushing,this)}destroy(){const{hls:t}=this;t.off(o.MEDIA_ATTACHING,this.onMediaAttaching,this),t.off(o.MEDIA_DETACHING,this.onMediaDetaching,this),t.off(o.MANIFEST_LOADING,this.onManifestLoading,this),t.off(o.MANIFEST_LOADED,this.onManifestLoaded,this),t.off(o.SUBTITLE_TRACKS_UPDATED,this.onSubtitleTracksUpdated,this),t.off(o.FRAG_LOADING,this.onFragLoading,this),t.off(o.FRAG_LOADED,this.onFragLoaded,this),t.off(o.FRAG_PARSING_USERDATA,this.onFragParsingUserdata,this),t.off(o.FRAG_DECRYPTED,this.onFragDecrypted,this),t.off(o.INIT_PTS_FOUND,this.onInitPtsFound,this),t.off(o.SUBTITLE_TRACKS_CLEARED,this.onSubtitleTracksCleared,this),t.off(o.BUFFER_FLUSHING,this.onBufferFlushing,this),this.hls=this.config=this.media=null,this.cea608Parser1=this.cea608Parser2=void 0}initCea608Parsers(){const t=new is(this,"textTrack1"),n=new is(this,"textTrack2"),s=new is(this,"textTrack3"),_=new is(this,"textTrack4");this.cea608Parser1=new vc(1,t,n),this.cea608Parser2=new vc(3,s,_)}addCues(t,n,s,_,E){let T=!1;for(let U=E.length;U--;){const W=E[U],N=ul(W[0],W[1],n,s);if(N>=0&&(W[0]=Math.min(W[0],n),W[1]=Math.max(W[1],s),T=!0,N/(s-n)>.5))return}if(T||E.push([n,s]),this.config.renderTextTracksNatively){const U=this.captionsTracks[t];this.Cues.newCue(U,n,s,_)}else{const U=this.Cues.newCue(null,n,s,_);this.hls.trigger(o.CUES_PARSED,{type:"captions",cues:U,track:t})}}onInitPtsFound(t,{frag:n,id:s,initPTS:_,timescale:E}){const{unparsedVttFrags:T}=this;s===u.MAIN&&(this.initPTS[n.cc]={baseTime:_,timescale:E}),T.length&&(this.unparsedVttFrags=[],T.forEach(U=>{this.onFragLoaded(o.FRAG_LOADED,U)}))}getExistingTrack(t,n){const{media:s}=this;if(s)for(let _=0;_{Ru(_[E]),delete _[E]}),this.nonNativeCaptionsTracks={}}onManifestLoading(){this.lastCc=-1,this.lastSn=-1,this.lastPartIndex=-1,this.prevCC=-1,this.vttCCs=ll(),this._cleanTracks(),this.tracks=[],this.captionsTracks={},this.nonNativeCaptionsTracks={},this.textTracks=[],this.unparsedVttFrags=[],this.initPTS=[],this.cea608Parser1&&this.cea608Parser2&&(this.cea608Parser1.reset(),this.cea608Parser2.reset())}_cleanTracks(){const{media:t}=this;if(!t)return;const n=t.textTracks;if(n)for(let s=0;sE.textCodec===Fu);if(this.config.enableWebVTT||_&&this.config.enableIMSC1){if(Gs(this.tracks,s)){this.tracks=s;return}if(this.textTracks=[],this.tracks=s,this.config.renderTextTracksNatively){const T=this.media,U=T?Ic(T.textTracks):null;if(this.tracks.forEach((W,N)=>{let te;if(U){let ce=null;for(let xe=0;xeN!==null).map(N=>N.label);W.length&&this.hls.logger.warn(`Media element contains unused subtitle tracks: ${W.join(", ")}. Replace media element for each source to clear TextTracks and captions menu.`)}}else if(this.tracks.length){const T=this.tracks.map(U=>({label:U.name,kind:U.type.toLowerCase(),default:U.default,subtitleTrack:U}));this.hls.trigger(o.NON_NATIVE_TEXT_TRACKS_FOUND,{tracks:T})}}}onManifestLoaded(t,n){this.config.enableCEA708Captions&&n.captions&&n.captions.forEach(s=>{const _=/(?:CC|SERVICE)([1-4])/.exec(s.instreamId);if(!_)return;const E=`textTrack${_[1]}`,T=this.captionsProperties[E];T&&(T.label=s.name,s.lang&&(T.languageCode=s.lang),T.media=s)})}closedCaptionsForLevel(t){const n=this.hls.levels[t.level];return n==null?void 0:n.attrs["CLOSED-CAPTIONS"]}onFragLoading(t,n){if(this.enabled&&n.frag.type===u.MAIN){var s,_;const{cea608Parser1:E,cea608Parser2:T,lastSn:U}=this,{cc:W,sn:N}=n.frag,te=(s=(_=n.part)==null?void 0:_.index)!=null?s:-1;E&&T&&(N!==U+1||N===U&&te!==this.lastPartIndex+1||W!==this.lastCc)&&(E.reset(),T.reset()),this.lastCc=W,this.lastSn=N,this.lastPartIndex=te}}onFragLoaded(t,n){const{frag:s,payload:_}=n;if(s.type===u.SUBTITLE)if(_.byteLength){const E=s.decryptdata,T="stats"in n;if(E==null||!E.encrypted||T){const U=this.tracks[s.level],W=this.vttCCs;W[s.cc]||(W[s.cc]={start:s.start,prevCC:this.prevCC,new:!0},this.prevCC=s.cc),U&&U.textCodec===Fu?this._parseIMSC1(s,_):this._parseVTTs(n)}}else this.hls.trigger(o.SUBTITLE_FRAG_PROCESSED,{success:!1,frag:s,error:new Error("Empty subtitle payload")})}_parseIMSC1(t,n){const s=this.hls;ac(n,this.initPTS[t.cc],_=>{this._appendCues(_,t.level),s.trigger(o.SUBTITLE_FRAG_PROCESSED,{success:!0,frag:t})},_=>{s.logger.log(`Failed to parse IMSC1: ${_}`),s.trigger(o.SUBTITLE_FRAG_PROCESSED,{success:!1,frag:t,error:_})})}_parseVTTs(t){var n;const{frag:s,payload:_}=t,{initPTS:E,unparsedVttFrags:T}=this,U=E.length-1;if(!E[s.cc]&&U===-1){T.push(t);return}const W=this.hls,N=(n=s.initSegment)!=null&&n.data?qe(s.initSegment.data,new Uint8Array(_)).buffer:_;cu(N,this.initPTS[s.cc],this.vttCCs,s.cc,s.start,te=>{this._appendCues(te,s.level),W.trigger(o.SUBTITLE_FRAG_PROCESSED,{success:!0,frag:s})},te=>{const ce=te.message==="Missing initPTS for VTT MPEGTS";ce?T.push(t):this._fallbackToIMSC1(s,_),W.logger.log(`Failed to parse VTT cue: ${te}`),!(ce&&U>s.cc)&&W.trigger(o.SUBTITLE_FRAG_PROCESSED,{success:!1,frag:s,error:te})})}_fallbackToIMSC1(t,n){const s=this.tracks[t.level];s.textCodec||ac(n,this.initPTS[t.cc],()=>{s.textCodec=Fu,this._parseIMSC1(t,n)},()=>{s.textCodec="wvtt"})}_appendCues(t,n){const s=this.hls;if(this.config.renderTextTracksNatively){const _=this.textTracks[n];if(!_||_.mode==="disabled")return;t.forEach(E=>hc(_,E))}else{const _=this.tracks[n];if(!_)return;const E=_.default?"default":"subtitles"+n;s.trigger(o.CUES_PARSED,{type:"subtitles",cues:t,track:E})}}onFragDecrypted(t,n){const{frag:s}=n;s.type===u.SUBTITLE&&this.onFragLoaded(o.FRAG_LOADED,n)}onSubtitleTracksCleared(){this.tracks=[],this.captionsTracks={}}onFragParsingUserdata(t,n){if(!this.enabled||!this.config.enableCEA708Captions)return;const{frag:s,samples:_}=n;if(!(s.type===u.MAIN&&this.closedCaptionsForLevel(s)==="NONE"))for(let E=0;E<_.length;E++){const T=_[E].bytes;if(T){this.cea608Parser1||this.initCea608Parsers();const U=this.extractCea608Data(T);this.cea608Parser1.addData(_[E].pts,U[0]),this.cea608Parser2.addData(_[E].pts,U[1])}}}onBufferFlushing(t,{startOffset:n,endOffset:s,endOffsetSubtitles:_,type:E}){const{media:T}=this;if(!(!T||T.currentTimeVo(U[W],n,s))}if(this.config.renderTextTracksNatively&&n===0&&_!==void 0){const{textTracks:U}=this;Object.keys(U).forEach(W=>Vo(U[W],n,_))}}}extractCea608Data(t){const n=[[],[]],s=t[0]&31;let _=2;for(let E=0;E=16?W--:W++;const Ie=ol(N.trim()),Ae=Bl(t,n,Ie);P!=null&&(ce=P.cues)!=null&&ce.getCueById(Ae)||(T=new te(t,n,Ie),T.id=Ae,T.line=xe+1,T.align="left",T.position=10+Math.min(80,Math.floor(W*8/32)*10),_.push(T))}return P&&_.length&&(_.sort((xe,Ie)=>xe.line==="auto"||Ie.line==="auto"?0:xe.line>8&&Ie.line>8?Ie.line-xe.line:xe.line-Ie.line),_.forEach(xe=>hc(P,xe))),_}};function $l(){if(self.fetch&&self.AbortController&&self.ReadableStream&&self.Request)try{return new self.ReadableStream({}),!0}catch(P){}return!1}const Sf=/(\d+)-(\d+)\/(\d+)/;class gc{constructor(t){this.fetchSetup=void 0,this.requestTimeout=void 0,this.request=null,this.response=null,this.controller=void 0,this.context=null,this.config=null,this.callbacks=null,this.stats=void 0,this.loader=null,this.fetchSetup=t.fetchSetup||Of,this.controller=new self.AbortController,this.stats=new Z}destroy(){this.loader=this.callbacks=this.context=this.config=this.request=null,this.abortInternal(),this.response=null,this.fetchSetup=this.controller=this.stats=null}abortInternal(){this.controller&&!this.stats.loading.end&&(this.stats.aborted=!0,this.controller.abort())}abort(){var t;this.abortInternal(),(t=this.callbacks)!=null&&t.onAbort&&this.callbacks.onAbort(this.stats,this.context,this.response)}load(t,n,s){const _=this.stats;if(_.loading.start)throw new Error("Loader can only be used once.");_.loading.start=self.performance.now();const E=ef(t,this.controller.signal),T=t.responseType==="arraybuffer",U=T?"byteLength":"length",{maxTimeToFirstByteMs:W,maxLoadTimeMs:N}=n.loadPolicy;this.context=t,this.config=n,this.callbacks=s,this.request=this.fetchSetup(t,E),self.clearTimeout(this.requestTimeout),n.timeout=W&&r(W)?W:N,this.requestTimeout=self.setTimeout(()=>{this.callbacks&&(this.abortInternal(),this.callbacks.onTimeout(_,t,this.response))},n.timeout),(As(this.request)?this.request.then(self.fetch):self.fetch(this.request)).then(ce=>{var xe;this.response=this.loader=ce;const Ie=Math.max(self.performance.now(),_.loading.start);if(self.clearTimeout(this.requestTimeout),n.timeout=N,this.requestTimeout=self.setTimeout(()=>{this.callbacks&&(this.abortInternal(),this.callbacks.onTimeout(_,t,this.response))},N-(Ie-_.loading.start)),!ce.ok){const{status:at,statusText:tt}=ce;throw new Vu(tt||"fetch, bad network response",at,ce)}_.loading.first=Ie,_.total=cl(ce.headers)||_.total;const Ae=(xe=this.callbacks)==null?void 0:xe.onProgress;return Ae&&r(n.highWaterMark)?this.loadProgressively(ce,_,t,n.highWaterMark,Ae):T?ce.arrayBuffer():t.responseType==="json"?ce.json():ce.text()}).then(ce=>{var xe,Ie;const Ae=this.response;if(!Ae)throw new Error("loader destroyed");self.clearTimeout(this.requestTimeout),_.loading.end=Math.max(self.performance.now(),_.loading.first);const at=ce[U];at&&(_.loaded=_.total=at);const tt={url:Ae.url,data:ce,code:Ae.status},kt=(xe=this.callbacks)==null?void 0:xe.onProgress;kt&&!r(n.highWaterMark)&&kt(_,t,ce,Ae),(Ie=this.callbacks)==null||Ie.onSuccess(tt,_,t,Ae)}).catch(ce=>{var xe;if(self.clearTimeout(this.requestTimeout),_.aborted)return;const Ie=ce&&ce.code||0,Ae=ce?ce.message:null;(xe=this.callbacks)==null||xe.onError({code:Ie,text:Ae},t,ce?ce.details:null,_)})}getCacheAge(){let t=null;if(this.response){const n=this.response.headers.get("age");t=n?parseFloat(n):null}return t}getResponseHeader(t){return this.response?this.response.headers.get(t):null}loadProgressively(t,n,s,_=0,E){const T=new aa,U=t.body.getReader(),W=()=>U.read().then(N=>{if(N.done)return T.dataLength&&E(n,s,T.flush().buffer,t),Promise.resolve(new ArrayBuffer(0));const te=N.value,ce=te.length;return n.loaded+=ce,ce<_||T.dataLength?(T.push(te),T.dataLength>=_&&E(n,s,T.flush().buffer,t)):E(n,s,te.buffer,t),W()}).catch(()=>Promise.reject());return W()}}function ef(P,t){const n={method:"GET",mode:"cors",credentials:"same-origin",signal:t,headers:new self.Headers(y({},P.headers))};return P.rangeEnd&&n.headers.set("Range","bytes="+P.rangeStart+"-"+String(P.rangeEnd-1)),n}function hf(P){const t=Sf.exec(P);if(t)return parseInt(t[2])-parseInt(t[1])+1}function cl(P){const t=P.get("Content-Range");if(t){const s=hf(t);if(r(s))return s}const n=P.get("Content-Length");if(n)return parseInt(n)}function Of(P,t){return new self.Request(P.url,t)}class Vu extends Error{constructor(t,n,s){super(t),this.code=void 0,this.details=void 0,this.code=n,this.details=s}}const Rc=/^age:\s*[\d.]+\s*$/im;class tf{constructor(t){this.xhrSetup=void 0,this.requestTimeout=void 0,this.retryTimeout=void 0,this.retryDelay=void 0,this.config=null,this.callbacks=null,this.context=null,this.loader=null,this.stats=void 0,this.xhrSetup=t&&t.xhrSetup||null,this.stats=new Z,this.retryDelay=0}destroy(){this.callbacks=null,this.abortInternal(),this.loader=null,this.config=null,this.context=null,this.xhrSetup=null}abortInternal(){const t=this.loader;self.clearTimeout(this.requestTimeout),self.clearTimeout(this.retryTimeout),t&&(t.onreadystatechange=null,t.onprogress=null,t.readyState!==4&&(this.stats.aborted=!0,t.abort()))}abort(){var t;this.abortInternal(),(t=this.callbacks)!=null&&t.onAbort&&this.callbacks.onAbort(this.stats,this.context,this.loader)}load(t,n,s){if(this.stats.loading.start)throw new Error("Loader can only be used once.");this.stats.loading.start=self.performance.now(),this.context=t,this.config=n,this.callbacks=s,this.loadInternal()}loadInternal(){const{config:t,context:n}=this;if(!t||!n)return;const s=this.loader=new self.XMLHttpRequest,_=this.stats;_.loading.first=0,_.loaded=0,_.aborted=!1;const E=this.xhrSetup;E?Promise.resolve().then(()=>{if(!(this.loader!==s||this.stats.aborted))return E(s,n.url)}).catch(T=>{if(!(this.loader!==s||this.stats.aborted))return s.open("GET",n.url,!0),E(s,n.url)}).then(()=>{this.loader!==s||this.stats.aborted||this.openAndSendXhr(s,n,t)}).catch(T=>{var U;(U=this.callbacks)==null||U.onError({code:s.status,text:T.message},n,s,_)}):this.openAndSendXhr(s,n,t)}openAndSendXhr(t,n,s){t.readyState||t.open("GET",n.url,!0);const _=n.headers,{maxTimeToFirstByteMs:E,maxLoadTimeMs:T}=s.loadPolicy;if(_)for(const U in _)t.setRequestHeader(U,_[U]);n.rangeEnd&&t.setRequestHeader("Range","bytes="+n.rangeStart+"-"+(n.rangeEnd-1)),t.onreadystatechange=this.readystatechange.bind(this),t.onprogress=this.loadprogress.bind(this),t.responseType=n.responseType,self.clearTimeout(this.requestTimeout),s.timeout=E&&r(E)?E:T,this.requestTimeout=self.setTimeout(this.loadtimeout.bind(this),s.timeout),t.send()}readystatechange(){const{context:t,loader:n,stats:s}=this;if(!t||!n)return;const _=n.readyState,E=this.config;if(!s.aborted&&_>=2&&(s.loading.first===0&&(s.loading.first=Math.max(self.performance.now(),s.loading.start),E.timeout!==E.loadPolicy.maxLoadTimeMs&&(self.clearTimeout(this.requestTimeout),E.timeout=E.loadPolicy.maxLoadTimeMs,this.requestTimeout=self.setTimeout(this.loadtimeout.bind(this),E.loadPolicy.maxLoadTimeMs-(s.loading.first-s.loading.start)))),_===4)){self.clearTimeout(this.requestTimeout),n.onreadystatechange=null,n.onprogress=null;const N=n.status,te=n.responseType==="text"?n.responseText:null;if(N>=200&&N<300){const Ae=te!=null?te:n.response;if(Ae!=null){var T,U;s.loading.end=Math.max(self.performance.now(),s.loading.first);const at=n.responseType==="arraybuffer"?Ae.byteLength:Ae.length;s.loaded=s.total=at,s.bwEstimate=s.total*8e3/(s.loading.end-s.loading.first);const tt=(T=this.callbacks)==null?void 0:T.onProgress;tt&&tt(s,t,Ae,n);const kt={url:n.responseURL,data:Ae,code:N};(U=this.callbacks)==null||U.onSuccess(kt,s,t,n);return}}const ce=E.loadPolicy.errorRetry,xe=s.retry,Ie={url:t.url,data:void 0,code:N};if(Tr(ce,xe,!1,Ie))this.retry(ce);else{var W;G.error(`${N} while loading ${t.url}`),(W=this.callbacks)==null||W.onError({code:N,text:n.statusText},t,n,s)}}}loadtimeout(){if(!this.config)return;const t=this.config.loadPolicy.timeoutRetry,n=this.stats.retry;if(Tr(t,n,!0))this.retry(t);else{var s;G.warn(`timeout while loading ${(s=this.context)==null?void 0:s.url}`);const _=this.callbacks;_&&(this.abortInternal(),_.onTimeout(this.stats,this.context,this.loader))}}retry(t){const{context:n,stats:s}=this;this.retryDelay=cr(t,s.retry),s.retry++,G.warn(`${status?"HTTP Status "+status:"Timeout"} while loading ${n==null?void 0:n.url}, retrying ${s.retry}/${t.maxNumRetry} in ${this.retryDelay}ms`),this.abortInternal(),this.loader=null,self.clearTimeout(this.retryTimeout),this.retryTimeout=self.setTimeout(this.loadInternal.bind(this),this.retryDelay)}loadprogress(t){const n=this.stats;n.loaded=t.loaded,t.lengthComputable&&(n.total=t.total)}getCacheAge(){let t=null;if(this.loader&&Rc.test(this.loader.getAllResponseHeaders())){const n=this.loader.getResponseHeader("age");t=n?parseFloat(n):null}return t}getResponseHeader(t){return this.loader&&new RegExp(`^${t}:\\s*[\\d.]+\\s*$`,"im").test(this.loader.getAllResponseHeaders())?this.loader.getResponseHeader(t):null}}const Ko={maxTimeToFirstByteMs:8e3,maxLoadTimeMs:2e4,timeoutRetry:null,errorRetry:null},rf=b(b({autoStartLoad:!0,startPosition:-1,defaultAudioCodec:void 0,debug:!1,capLevelOnFPSDrop:!1,capLevelToPlayerSize:!1,ignoreDevicePixelRatio:!1,maxDevicePixelRatio:Number.POSITIVE_INFINITY,preferManagedMediaSource:!0,initialLiveManifestSize:1,maxBufferLength:30,backBufferLength:1/0,frontBufferFlushThreshold:1/0,startOnSegmentBoundary:!1,maxBufferSize:60*1e3*1e3,maxFragLookUpTolerance:.25,maxBufferHole:.1,detectStallWithCurrentTimeMs:1250,highBufferWatchdogPeriod:2,nudgeOffset:.1,nudgeMaxRetry:3,nudgeOnVideoHole:!0,liveSyncMode:"edge",liveSyncDurationCount:3,liveSyncOnStallIncrease:1,liveMaxLatencyDurationCount:1/0,liveSyncDuration:void 0,liveMaxLatencyDuration:void 0,maxLiveSyncPlaybackRate:1,liveDurationInfinity:!1,liveBackBufferLength:null,maxMaxBufferLength:600,enableWorker:!0,workerPath:null,enableSoftwareAES:!0,startLevel:void 0,startFragPrefetch:!1,fpsDroppedMonitoringPeriod:5e3,fpsDroppedMonitoringThreshold:.2,appendErrorMaxRetry:3,ignorePlaylistParsingErrors:!1,loader:tf,fLoader:void 0,pLoader:void 0,xhrSetup:void 0,licenseXhrSetup:void 0,licenseResponseCallback:void 0,abrController:ei,bufferController:xc,capLevelController:Pu,errorController:Ee,fpsController:tl,stretchShortVideoTrack:!1,maxAudioFramesDrift:1,forceKeyFrameOnDiscontinuity:!0,abrEwmaFastLive:3,abrEwmaSlowLive:9,abrEwmaFastVoD:3,abrEwmaSlowVoD:9,abrEwmaDefaultEstimate:5e5,abrEwmaDefaultEstimateMax:5e6,abrBandWidthFactor:.95,abrBandWidthUpFactor:.7,abrMaxWithRealBitrate:!1,maxStarvationDelay:4,maxLoadingDelay:4,minAutoBitrate:0,emeEnabled:!1,widevineLicenseUrl:void 0,drmSystems:{},drmSystemOptions:{},requestMediaKeySystemAccessFunc:di,requireKeySystemAccessOnStart:!1,testBandwidth:!0,progressive:!1,lowLatencyMode:!0,cmcd:void 0,enableDateRangeMetadataCues:!0,enableEmsgMetadataCues:!0,enableEmsgKLVMetadata:!1,enableID3MetadataCues:!0,enableInterstitialPlayback:!0,interstitialAppendInPlace:!0,interstitialLiveLookAhead:10,useMediaCapabilities:!0,preserveManualLevelOnError:!1,certLoadPolicy:{default:Ko},keyLoadPolicy:{default:{maxTimeToFirstByteMs:8e3,maxLoadTimeMs:2e4,timeoutRetry:{maxNumRetry:1,retryDelayMs:1e3,maxRetryDelayMs:2e4,backoff:"linear"},errorRetry:{maxNumRetry:8,retryDelayMs:1e3,maxRetryDelayMs:2e4,backoff:"linear"}}},manifestLoadPolicy:{default:{maxTimeToFirstByteMs:1/0,maxLoadTimeMs:2e4,timeoutRetry:{maxNumRetry:2,retryDelayMs:0,maxRetryDelayMs:0},errorRetry:{maxNumRetry:1,retryDelayMs:1e3,maxRetryDelayMs:8e3}}},playlistLoadPolicy:{default:{maxTimeToFirstByteMs:1e4,maxLoadTimeMs:2e4,timeoutRetry:{maxNumRetry:2,retryDelayMs:0,maxRetryDelayMs:0},errorRetry:{maxNumRetry:2,retryDelayMs:1e3,maxRetryDelayMs:8e3}}},fragLoadPolicy:{default:{maxTimeToFirstByteMs:1e4,maxLoadTimeMs:12e4,timeoutRetry:{maxNumRetry:4,retryDelayMs:0,maxRetryDelayMs:0},errorRetry:{maxNumRetry:6,retryDelayMs:1e3,maxRetryDelayMs:8e3}}},steeringManifestLoadPolicy:{default:{maxTimeToFirstByteMs:1e4,maxLoadTimeMs:2e4,timeoutRetry:{maxNumRetry:2,retryDelayMs:0,maxRetryDelayMs:0},errorRetry:{maxNumRetry:1,retryDelayMs:1e3,maxRetryDelayMs:8e3}}},interstitialAssetListLoadPolicy:{default:{maxTimeToFirstByteMs:1e4,maxLoadTimeMs:3e4,timeoutRetry:{maxNumRetry:0,retryDelayMs:0,maxRetryDelayMs:0},errorRetry:{maxNumRetry:0,retryDelayMs:1e3,maxRetryDelayMs:8e3}}},manifestLoadingTimeOut:1e4,manifestLoadingMaxRetry:1,manifestLoadingRetryDelay:1e3,manifestLoadingMaxRetryTimeout:64e3,levelLoadingTimeOut:1e4,levelLoadingMaxRetry:4,levelLoadingRetryDelay:1e3,levelLoadingMaxRetryTimeout:64e3,fragLoadingTimeOut:2e4,fragLoadingMaxRetry:6,fragLoadingRetryDelay:1e3,fragLoadingMaxRetryTimeout:64e3},pf()),{},{subtitleStreamController:I,subtitleTrackController:Kc,timelineController:Wu,audioStreamController:qo,audioTrackController:Wl,emeController:ku,cmcdController:ze,contentSteeringController:eu,interstitialsController:_c});function pf(){return{cueHandler:wf,enableWebVTT:!0,enableIMSC1:!0,enableCEA708Captions:!0,captionsTextTrack1Label:"English",captionsTextTrack1LanguageCode:"en",captionsTextTrack2Label:"Spanish",captionsTextTrack2LanguageCode:"es",captionsTextTrack3Label:"Unknown CC",captionsTextTrack3LanguageCode:"",captionsTextTrack4Label:"Unknown CC",captionsTextTrack4LanguageCode:"",renderTextTracksNatively:!0}}function fl(P,t,n){if((t.liveSyncDurationCount||t.liveMaxLatencyDurationCount)&&(t.liveSyncDuration||t.liveMaxLatencyDuration))throw new Error("Illegal hls.js config: don't mix up liveSyncDurationCount/liveMaxLatencyDurationCount and liveSyncDuration/liveMaxLatencyDuration");if(t.liveMaxLatencyDurationCount!==void 0&&(t.liveSyncDurationCount===void 0||t.liveMaxLatencyDurationCount<=t.liveSyncDurationCount))throw new Error('Illegal hls.js config: "liveMaxLatencyDurationCount" must be greater than "liveSyncDurationCount"');if(t.liveMaxLatencyDuration!==void 0&&(t.liveSyncDuration===void 0||t.liveMaxLatencyDuration<=t.liveSyncDuration))throw new Error('Illegal hls.js config: "liveMaxLatencyDuration" must be greater than "liveSyncDuration"');const s=jl(P),_=["manifest","level","frag"],E=["TimeOut","MaxRetry","RetryDelay","MaxRetryTimeout"];return _.forEach(T=>{const U=`${T==="level"?"playlist":T}LoadPolicy`,W=t[U]===void 0,N=[];E.forEach(te=>{const ce=`${T}Loading${te}`,xe=t[ce];if(xe!==void 0&&W){N.push(ce);const Ie=s[U].default;switch(t[U]={default:Ie},te){case"TimeOut":Ie.maxLoadTimeMs=xe,Ie.maxTimeToFirstByteMs=xe;break;case"MaxRetry":Ie.errorRetry.maxNumRetry=xe,Ie.timeoutRetry.maxNumRetry=xe;break;case"RetryDelay":Ie.errorRetry.retryDelayMs=xe,Ie.timeoutRetry.retryDelayMs=xe;break;case"MaxRetryTimeout":Ie.errorRetry.maxRetryDelayMs=xe,Ie.timeoutRetry.maxRetryDelayMs=xe;break}}}),N.length&&n.warn(`hls.js config: "${N.join('", "')}" setting(s) are deprecated, use "${U}": ${Pn(t[U])}`)}),b(b({},s),t)}function jl(P){return P&&typeof P=="object"?Array.isArray(P)?P.map(jl):Object.keys(P).reduce((t,n)=>(t[n]=jl(P[n]),t),{}):P}function Yo(P,t){const n=P.loader;n!==gc&&n!==tf?(t.log("[config]: Custom loader detected, cannot enable progressive streaming"),P.progressive=!1):$l()&&(P.loader=gc,P.progressive=!0,P.enableSoftwareAES=!0,t.log("[config]: Progressive streaming enabled, using FetchLoader"))}const yc=2,mf=.1,Lc=.05,Mc=100;class _f extends Ta{constructor(t,n){super("gap-controller",t.logger),this.hls=null,this.fragmentTracker=null,this.media=null,this.mediaSource=void 0,this.nudgeRetry=0,this.stallReported=!1,this.stalled=null,this.moved=!1,this.seeking=!1,this.buffered={},this.lastCurrentTime=0,this.ended=0,this.waiting=0,this.onMediaPlaying=()=>{this.ended=0,this.waiting=0},this.onMediaWaiting=()=>{var s;(s=this.media)!=null&&s.seeking||(this.waiting=self.performance.now(),this.tick())},this.onMediaEnded=()=>{if(this.hls){var s;this.ended=((s=this.media)==null?void 0:s.currentTime)||1,this.hls.trigger(o.MEDIA_ENDED,{stalled:!1})}},this.hls=t,this.fragmentTracker=n,this.registerListeners()}registerListeners(){const{hls:t}=this;t&&(t.on(o.MEDIA_ATTACHED,this.onMediaAttached,this),t.on(o.MEDIA_DETACHING,this.onMediaDetaching,this),t.on(o.BUFFER_APPENDED,this.onBufferAppended,this))}unregisterListeners(){const{hls:t}=this;t&&(t.off(o.MEDIA_ATTACHED,this.onMediaAttached,this),t.off(o.MEDIA_DETACHING,this.onMediaDetaching,this),t.off(o.BUFFER_APPENDED,this.onBufferAppended,this))}destroy(){super.destroy(),this.unregisterListeners(),this.media=this.hls=this.fragmentTracker=null,this.mediaSource=void 0}onMediaAttached(t,n){this.setInterval(Mc),this.mediaSource=n.mediaSource;const s=this.media=n.media;Vs(s,"playing",this.onMediaPlaying),Vs(s,"waiting",this.onMediaWaiting),Vs(s,"ended",this.onMediaEnded)}onMediaDetaching(t,n){this.clearInterval();const{media:s}=this;s&&(Go(s,"playing",this.onMediaPlaying),Go(s,"waiting",this.onMediaWaiting),Go(s,"ended",this.onMediaEnded),this.media=null),this.mediaSource=void 0}onBufferAppended(t,n){this.buffered=n.timeRanges}get hasBuffered(){return Object.keys(this.buffered).length>0}tick(){var t;if(!((t=this.media)!=null&&t.readyState)||!this.hasBuffered)return;const n=this.media.currentTime;this.poll(n,this.lastCurrentTime),this.lastCurrentTime=n}poll(t,n){var s,_;const E=(s=this.hls)==null?void 0:s.config;if(!E)return;const T=this.media;if(!T)return;const{seeking:U}=T,W=this.seeking&&!U,N=!this.seeking&&U,te=T.paused&&!U||T.ended||T.playbackRate===0;if(this.seeking=U,t!==n){n&&(this.ended=0),this.moved=!0,U||(this.nudgeRetry=0,E.nudgeOnVideoHole&&!te&&t>n&&this.nudgeOnVideoHole(t,n)),this.waiting===0&&this.stallResolved(t);return}if(N||W){W&&this.stallResolved(t);return}if(te){this.nudgeRetry=0,this.stallResolved(t),!this.ended&&T.ended&&this.hls&&(this.ended=t||1,this.hls.trigger(o.MEDIA_ENDED,{stalled:!1}));return}if(!_i.getBuffered(T).length){this.nudgeRetry=0;return}const ce=_i.bufferInfo(T,t,0),xe=ce.nextStart||0,Ie=this.fragmentTracker;if(U&&Ie&&this.hls){const ln=Fc(this.hls.inFlightFragments,t),Wr=ce.len>yc,Jr=!xe||ln||xe-t>yc&&!Ie.getPartialFragment(t);if(Wr||Jr)return;this.moved=!1}const Ae=(_=this.hls)==null?void 0:_.latestLevelDetails;if(!this.moved&&this.stalled!==null&&Ie){if(!(ce.len>0)&&!xe)return;const Wr=Math.max(xe,ce.start||0)-t,un=!!(Ae!=null&&Ae.live)?Ae.targetduration*2:yc,Kr=Ie.getPartialFragment(t);if(Wr>0&&(Wr<=un||Kr)){T.paused||this._trySkipBufferHole(Kr);return}}const at=E.detectStallWithCurrentTimeMs,tt=self.performance.now(),kt=this.waiting;let fr=this.stalled;if(fr===null)if(kt>0&&tt-kt=at||kt)&&this.hls){var kr;if(((kr=this.mediaSource)==null?void 0:kr.readyState)==="ended"&&!(Ae!=null&&Ae.live)&&Math.abs(t-((Ae==null?void 0:Ae.edge)||0))<1){if(this.ended)return;this.ended=t||1,this.hls.trigger(o.MEDIA_ENDED,{stalled:!0});return}if(this._reportStall(ce),!this.media||!this.hls)return}const zr=_i.bufferInfo(T,t,E.maxBufferHole);this._tryFixBufferStall(zr,sr,t)}stallResolved(t){const n=this.stalled;if(n&&this.hls&&(this.stalled=null,this.stallReported)){const s=self.performance.now()-n;this.log(`playback not stuck anymore @${t}, after ${Math.round(s)}ms`),this.stallReported=!1,this.waiting=0,this.hls.trigger(o.STALL_RESOLVED,{})}}nudgeOnVideoHole(t,n){var s;const _=this.buffered.video;if(this.hls&&this.media&&this.fragmentTracker&&(s=this.buffered.audio)!=null&&s.length&&_&&_.length>1&&t>_.end(0)){const E=_i.bufferedInfo(_i.timeRangesToArray(this.buffered.audio),t,0);if(E.len>1&&n>=E.start){const T=_i.timeRangesToArray(_),U=_i.bufferedInfo(T,n,0).bufferedIndex;if(U>-1&&UU)&&te-N<1&&t-N<2){const ce=new Error(`nudging playhead to flush pipeline after video hole. currentTime: ${t} hole: ${N} -> ${te} buffered index: ${W}`);this.warn(ce.message),this.media.currentTime+=1e-6;const xe=this.fragmentTracker.getPartialFragment(t)||void 0,Ie=_i.bufferInfo(this.media,t,0);this.hls.trigger(o.ERROR,{type:c.MEDIA_ERROR,details:f.BUFFER_SEEK_OVER_HOLE,fatal:!1,error:ce,reason:ce.message,frag:xe,buffer:Ie.len,bufferInfo:Ie})}}}}}_tryFixBufferStall(t,n,s){var _,E;const{fragmentTracker:T,media:U}=this,W=(_=this.hls)==null?void 0:_.config;if(!U||!T||!W)return;const N=(E=this.hls)==null?void 0:E.latestLevelDetails,te=T.getPartialFragment(s);if((te||N!=null&&N.live&&s1&&t.len>W.maxBufferHole||t.nextStart&&(t.nextStart-sW.highBufferWatchdogPeriod*1e3||this.waiting)&&(this.warn("Trying to nudge playhead over buffer-hole"),this._tryNudgeBuffer(t))}adjacentTraversal(t,n){const s=this.fragmentTracker,_=t.nextStart;if(s&&_){const E=s.getFragAtPos(n,u.MAIN),T=s.getFragAtPos(_,u.MAIN);if(E&&T)return T.sn-E.sn<2}return!1}_reportStall(t){const{hls:n,media:s,stallReported:_,stalled:E}=this;if(!_&&E!==null&&s&&n){this.stallReported=!0;const T=new Error(`Playback stalling at @${s.currentTime} due to low buffer (${Pn(t)})`);this.warn(T.message),n.trigger(o.ERROR,{type:c.MEDIA_ERROR,details:f.BUFFER_STALLED_ERROR,fatal:!1,error:T,buffer:t.len,bufferInfo:t,stalled:{start:E}})}}_trySkipBufferHole(t){var n;const{fragmentTracker:s,media:_}=this,E=(n=this.hls)==null?void 0:n.config;if(!_||!s||!E)return 0;const T=_.currentTime,U=_i.bufferInfo(_,T,0),W=T0&&U.len<1&&_.readyState<3,xe=W-T;if(xe>0&&(te||ce)){if(xe>E.maxBufferHole){let Ae=!1;if(T===0){const at=s.getAppendedFrag(0,u.MAIN);at&&W{const P=Bc();try{P&&new P(0,Number.POSITIVE_INFINITY,"")}catch(t){return Number.MAX_VALUE}return Number.POSITIVE_INFINITY})();function vf(P){return Uint8Array.from(P.replace(/^0x/,"").replace(/([\da-fA-F]{2}) ?/g,"0x$1 ").replace(/ +$/,"").split(" ")).buffer}class Hf{constructor(t){this.hls=void 0,this.id3Track=null,this.media=null,this.dateRangeCuesAppended={},this.removeCues=!0,this.onEventCueEnter=()=>{this.hls&&this.hls.trigger(o.EVENT_CUE_ENTER,{})},this.hls=t,this._registerListeners()}destroy(){this._unregisterListeners(),this.id3Track=null,this.media=null,this.dateRangeCuesAppended={},this.hls=this.onEventCueEnter=null}_registerListeners(){const{hls:t}=this;t.on(o.MEDIA_ATTACHING,this.onMediaAttaching,this),t.on(o.MEDIA_ATTACHED,this.onMediaAttached,this),t.on(o.MEDIA_DETACHING,this.onMediaDetaching,this),t.on(o.MANIFEST_LOADING,this.onManifestLoading,this),t.on(o.FRAG_PARSING_METADATA,this.onFragParsingMetadata,this),t.on(o.BUFFER_FLUSHING,this.onBufferFlushing,this),t.on(o.LEVEL_UPDATED,this.onLevelUpdated,this),t.on(o.LEVEL_PTS_UPDATED,this.onLevelPtsUpdated,this)}_unregisterListeners(){const{hls:t}=this;t.off(o.MEDIA_ATTACHING,this.onMediaAttaching,this),t.off(o.MEDIA_ATTACHED,this.onMediaAttached,this),t.off(o.MEDIA_DETACHING,this.onMediaDetaching,this),t.off(o.MANIFEST_LOADING,this.onManifestLoading,this),t.off(o.FRAG_PARSING_METADATA,this.onFragParsingMetadata,this),t.off(o.BUFFER_FLUSHING,this.onBufferFlushing,this),t.off(o.LEVEL_UPDATED,this.onLevelUpdated,this),t.off(o.LEVEL_PTS_UPDATED,this.onLevelPtsUpdated,this)}onMediaAttaching(t,n){var s;this.media=n.media,((s=n.overrides)==null?void 0:s.cueRemoval)===!1&&(this.removeCues=!1)}onMediaAttached(){const t=this.hls.latestLevelDetails;t&&this.updateDateRangeCues(t)}onMediaDetaching(t,n){this.media=null,!n.transferMedia&&(this.id3Track&&(this.removeCues&&Ru(this.id3Track,this.onEventCueEnter),this.id3Track=null),this.dateRangeCuesAppended={})}onManifestLoading(){this.dateRangeCuesAppended={}}createTrack(t){const n=this.getID3Track(t.textTracks);return n.mode="hidden",n}getID3Track(t){if(this.media){for(let n=0;nnf&&(ce=nf),ce-te<=0&&(ce=te+Mf);for(let Ie=0;Iete.type===ts.audioId3&&W:_==="video"?N=te=>te.type===ts.emsg&&U:N=te=>te.type===ts.audioId3&&W||te.type===ts.emsg&&U,Vo(E,n,s,N)}}onLevelUpdated(t,{details:n}){this.updateDateRangeCues(n,!0)}onLevelPtsUpdated(t,n){Math.abs(n.drift)>.01&&this.updateDateRangeCues(n.details)}updateDateRangeCues(t,n){if(!this.media||!t.hasProgramDateTime||!this.hls.config.enableDateRangeMetadataCues)return;const{id3Track:s}=this,{dateRanges:_}=t,E=Object.keys(_);let T=this.dateRangeCuesAppended;if(s&&n){var U;if((U=s.cues)!=null&&U.length){const te=Object.keys(T).filter(ce=>!E.includes(ce));for(let ce=te.length;ce--;){const xe=te[ce],Ie=T[xe].cues;delete T[xe],Object.keys(Ie).forEach(Ae=>{try{const at=Ie[Ae];at.removeEventListener("enter",this.onEventCueEnter),s.removeCue(at)}catch(at){}})}}else T=this.dateRangeCuesAppended={}}const W=t.fragments[t.fragments.length-1];if(E.length===0||!r(W==null?void 0:W.programDateTime))return;this.id3Track||(this.id3Track=this.createTrack(this.media));const N=Bc();for(let te=0;te{if(Wr!==xe.id){const Jr=_[Wr];if(Jr.class===xe.class&&Jr.startDate>xe.startDate&&(!ln||xe.startDate.01&&(Wr.startTime=Ie,Wr.endTime=kt);else if(N){let Jr=xe.attr[ln];Ys(ln)&&(Jr=vf(Jr));const Kr=Ff(N,Ie,kt,{key:ln,data:Jr},ts.dateRange);Kr&&(Kr.id=ce,this.id3Track.addCue(Kr),at[ln]=Kr,this.hls.config.interstitialsController&&(ln==="X-ASSET-LIST"||ln==="X-ASSET-URL")&&Kr.addEventListener("enter",this.onEventCueEnter))}}T[ce]={cues:at,dateRange:xe,durationKnown:tt}}}}class Cf{constructor(t){this.hls=void 0,this.config=void 0,this.media=null,this.currentTime=0,this.stallCount=0,this._latency=null,this._targetLatencyUpdated=!1,this.onTimeupdate=()=>{const{media:n}=this,s=this.levelDetails;if(!n||!s)return;this.currentTime=n.currentTime;const _=this.computeLatency();if(_===null)return;this._latency=_;const{lowLatencyMode:E,maxLiveSyncPlaybackRate:T}=this.config;if(!E||T===1||!s.live)return;const U=this.targetLatency;if(U===null)return;const W=_-U,N=Math.min(this.maxLatency,U+s.targetduration);if(W.05&&this.forwardBufferLength>1){const ce=Math.min(2,Math.max(1,T)),xe=Math.round(2/(1+Math.exp(-.75*W-this.edgeStalled))*20)/20,Ie=Math.min(ce,Math.max(1,xe));this.changeMediaPlaybackRate(n,Ie)}else n.playbackRate!==1&&n.playbackRate!==0&&this.changeMediaPlaybackRate(n,1)},this.hls=t,this.config=t.config,this.registerListeners()}get levelDetails(){var t;return((t=this.hls)==null?void 0:t.latestLevelDetails)||null}get latency(){return this._latency||0}get maxLatency(){const{config:t}=this;if(t.liveMaxLatencyDuration!==void 0)return t.liveMaxLatencyDuration;const n=this.levelDetails;return n?t.liveMaxLatencyDurationCount*n.targetduration:0}get targetLatency(){const t=this.levelDetails;if(t===null||this.hls===null)return null;const{holdBack:n,partHoldBack:s,targetduration:_}=t,{liveSyncDuration:E,liveSyncDurationCount:T,lowLatencyMode:U}=this.config,W=this.hls.userConfig;let N=U&&s||n;(this._targetLatencyUpdated||W.liveSyncDuration||W.liveSyncDurationCount||N===0)&&(N=E!==void 0?E:T*_);const te=_;return N+Math.min(this.stallCount*this.config.liveSyncOnStallIncrease,te)}set targetLatency(t){this.stallCount=0,this.config.liveSyncDuration=t,this._targetLatencyUpdated=!0}get liveSyncPosition(){const t=this.estimateLiveEdge(),n=this.targetLatency;if(t===null||n===null)return null;const s=this.levelDetails;if(s===null)return null;const _=s.edge,E=t-n-this.edgeStalled,T=_-s.totalduration,U=_-(this.config.lowLatencyMode&&s.partTarget||s.targetduration);return Math.min(Math.max(T,E),U)}get drift(){const t=this.levelDetails;return t===null?1:t.drift}get edgeStalled(){const t=this.levelDetails;if(t===null)return 0;const n=(this.config.lowLatencyMode&&t.partTarget||t.targetduration)*3;return Math.max(t.age-n,0)}get forwardBufferLength(){const{media:t}=this,n=this.levelDetails;if(!t||!n)return 0;const s=t.buffered.length;return(s?t.buffered.end(s-1):n.edge)-this.currentTime}destroy(){this.unregisterListeners(),this.onMediaDetaching(),this.hls=null}registerListeners(){const{hls:t}=this;t&&(t.on(o.MEDIA_ATTACHED,this.onMediaAttached,this),t.on(o.MEDIA_DETACHING,this.onMediaDetaching,this),t.on(o.MANIFEST_LOADING,this.onManifestLoading,this),t.on(o.LEVEL_UPDATED,this.onLevelUpdated,this),t.on(o.ERROR,this.onError,this))}unregisterListeners(){const{hls:t}=this;t&&(t.off(o.MEDIA_ATTACHED,this.onMediaAttached,this),t.off(o.MEDIA_DETACHING,this.onMediaDetaching,this),t.off(o.MANIFEST_LOADING,this.onManifestLoading,this),t.off(o.LEVEL_UPDATED,this.onLevelUpdated,this),t.off(o.ERROR,this.onError,this))}onMediaAttached(t,n){this.media=n.media,this.media.addEventListener("timeupdate",this.onTimeupdate)}onMediaDetaching(){this.media&&(this.media.removeEventListener("timeupdate",this.onTimeupdate),this.media=null)}onManifestLoading(){this._latency=null,this.stallCount=0}onLevelUpdated(t,{details:n}){n.advanced&&this.onTimeupdate(),!n.live&&this.media&&this.media.removeEventListener("timeupdate",this.onTimeupdate)}onError(t,n){var s;n.details===f.BUFFER_STALLED_ERROR&&(this.stallCount++,this.hls&&(s=this.levelDetails)!=null&&s.live&&this.hls.logger.warn("[latency-controller]: Stall detected, adjusting target latency"))}changeMediaPlaybackRate(t,n){var s,_;t.playbackRate!==n&&((s=this.hls)==null||s.logger.debug(`[latency-controller]: latency=${this.latency.toFixed(3)}, targetLatency=${(_=this.targetLatency)==null?void 0:_.toFixed(3)}, forwardBufferLength=${this.forwardBufferLength.toFixed(3)}: adjusting playback rate from ${t.playbackRate} to ${n}`),t.playbackRate=n)}estimateLiveEdge(){const t=this.levelDetails;return t===null?null:t.edge+t.age}computeLatency(){const t=this.estimateLiveEdge();return t===null?null:t-this.currentTime}}class Bf extends _l{constructor(t,n){super(t,"level-controller"),this._levels=[],this._firstLevel=-1,this._maxAutoLevel=-1,this._startLevel=void 0,this.currentLevel=null,this.currentLevelIndex=-1,this.manualLevelIndex=-1,this.steering=void 0,this.onParsedComplete=void 0,this.steering=n,this._registerListeners()}_registerListeners(){const{hls:t}=this;t.on(o.MANIFEST_LOADING,this.onManifestLoading,this),t.on(o.MANIFEST_LOADED,this.onManifestLoaded,this),t.on(o.LEVEL_LOADED,this.onLevelLoaded,this),t.on(o.LEVELS_UPDATED,this.onLevelsUpdated,this),t.on(o.FRAG_BUFFERED,this.onFragBuffered,this),t.on(o.ERROR,this.onError,this)}_unregisterListeners(){const{hls:t}=this;t.off(o.MANIFEST_LOADING,this.onManifestLoading,this),t.off(o.MANIFEST_LOADED,this.onManifestLoaded,this),t.off(o.LEVEL_LOADED,this.onLevelLoaded,this),t.off(o.LEVELS_UPDATED,this.onLevelsUpdated,this),t.off(o.FRAG_BUFFERED,this.onFragBuffered,this),t.off(o.ERROR,this.onError,this)}destroy(){this._unregisterListeners(),this.steering=null,this.resetLevels(),super.destroy()}stopLoad(){this._levels.forEach(n=>{n.loadError=0,n.fragmentError=0}),super.stopLoad()}resetLevels(){this._startLevel=void 0,this.manualLevelIndex=-1,this.currentLevelIndex=-1,this.currentLevel=null,this._levels=[],this._maxAutoLevel=-1}onManifestLoading(t,n){this.resetLevels()}onManifestLoaded(t,n){const s=this.hls.config.preferManagedMediaSource,_=[],E={},T={};let U=!1,W=!1,N=!1;n.levels.forEach(te=>{const ce=te.attrs;let{audioCodec:xe,videoCodec:Ie}=te;xe&&(te.audioCodec=xe=Dr(xe,s)||void 0),Ie&&(Ie=te.videoCodec=Qr(Ie));const{width:Ae,height:at,unknownCodecs:tt}=te;let kt=tt?tt.length:0;if(tt)for(let Kr=kt;Kr--;){const Un=tt[Kr];this.isAudioSupported(Un)?(te.audioCodec=xe=xe?`${xe},${Un}`:Un,kt--,dt.audio[xe.substring(0,4)]=2):this.isVideoSupported(Un)&&(te.videoCodec=Ie=Ie?`${Ie},${Un}`:Un,kt--,dt.video[Ie.substring(0,4)]=2)}if(U||(U=!!(Ae&&at)),W||(W=!!Ie),N||(N=!!xe),kt||xe&&!this.isAudioSupported(xe)||Ie&&!this.isVideoSupported(Ie)){this.log(`Some or all CODECS not supported "${ce.CODECS}"`);return}const{CODECS:fr,"FRAME-RATE":sr,"HDCP-LEVEL":kr,"PATHWAY-ID":zr,RESOLUTION:ln,"VIDEO-RANGE":Wr}=ce,un=`${`${zr||"."}-`}${te.bitrate}-${ln}-${sr}-${fr}-${Wr}-${kr}`;if(E[un])if(E[un].uri!==te.url&&!te.attrs["PATHWAY-ID"]){const Kr=T[un]+=1;te.attrs["PATHWAY-ID"]=new Array(Kr+1).join(".");const Un=this.createLevel(te);E[un]=Un,_.push(Un)}else E[un].addGroupId("audio",ce.AUDIO),E[un].addGroupId("text",ce.SUBTITLES);else{const Kr=this.createLevel(te);E[un]=Kr,T[un]=1,_.push(Kr)}}),this.filterAndSortMediaOptions(_,n,U,W,N)}createLevel(t){const n=new zn(t),s=t.supplemental;if(s!=null&&s.videoCodec&&!this.isVideoSupported(s.videoCodec)){const _=new Error(`SUPPLEMENTAL-CODECS not supported "${s.videoCodec}"`);this.log(_.message),n.supportedResult=sn(_,[])}return n}isAudioSupported(t){return St(t,"audio",this.hls.config.preferManagedMediaSource)}isVideoSupported(t){return St(t,"video",this.hls.config.preferManagedMediaSource)}filterAndSortMediaOptions(t,n,s,_,E){let T=[],U=[],W=t;if((s||_)&&E&&(W=W.filter(({videoCodec:tt,videoRange:kt,width:fr,height:sr})=>(!!tt||!!(fr&&sr))&&yr(kt))),W.length===0){Promise.resolve().then(()=>{if(this.hls){let tt="no level with compatible codecs found in manifest",kt=tt;n.levels.length&&(kt=`one or more CODECS in variant not supported: ${Pn(n.levels.map(sr=>sr.attrs.CODECS).filter((sr,kr,zr)=>zr.indexOf(sr)===kr))}`,this.warn(kt),tt+=` (${kt})`);const fr=new Error(tt);this.hls.trigger(o.ERROR,{type:c.MEDIA_ERROR,details:f.MANIFEST_INCOMPATIBLE_CODECS_ERROR,fatal:!0,url:n.url,error:fr,reason:kt})}});return}n.audioTracks&&(T=n.audioTracks.filter(tt=>!tt.audioCodec||this.isAudioSupported(tt.audioCodec)),Nf(T)),n.subtitles&&(U=n.subtitles,Nf(U));const N=W.slice(0);W.sort((tt,kt)=>{if(tt.attrs["HDCP-LEVEL"]!==kt.attrs["HDCP-LEVEL"])return(tt.attrs["HDCP-LEVEL"]||"")>(kt.attrs["HDCP-LEVEL"]||"")?1:-1;if(s&&tt.height!==kt.height)return tt.height-kt.height;if(tt.frameRate!==kt.frameRate)return tt.frameRate-kt.frameRate;if(tt.videoRange!==kt.videoRange)return Sr.indexOf(tt.videoRange)-Sr.indexOf(kt.videoRange);if(tt.videoCodec!==kt.videoCodec){const fr=be(tt.videoCodec),sr=be(kt.videoCodec);if(fr!==sr)return sr-fr}if(tt.uri===kt.uri&&tt.codecSet!==kt.codecSet){const fr=Ke(tt.codecSet),sr=Ke(kt.codecSet);if(fr!==sr)return sr-fr}return tt.averageBitrate!==kt.averageBitrate?tt.averageBitrate-kt.averageBitrate:0});let te=N[0];if(this.steering&&(W=this.steering.filterParsedLevels(W),W.length!==N.length)){for(let tt=0;ttfr&&fr===this.hls.abrEwmaDefaultEstimate&&(this.hls.bandwidthEstimate=sr)}break}const xe=E&&!_,Ie=this.hls.config,Ae=!!(Ie.audioStreamController&&Ie.audioTrackController),at={levels:W,audioTracks:T,subtitleTracks:U,sessionData:n.sessionData,sessionKeys:n.sessionKeys,firstLevel:this._firstLevel,stats:n.stats,audio:E,video:_,altAudio:Ae&&!xe&&T.some(tt=>!!tt.url)};this.hls.trigger(o.MANIFEST_PARSED,at)}get levels(){return this._levels.length===0?null:this._levels}get loadLevelObj(){return this.currentLevel}get level(){return this.currentLevelIndex}set level(t){const n=this._levels;if(n.length===0)return;if(t<0||t>=n.length){const te=new Error("invalid level idx"),ce=t<0;if(this.hls.trigger(o.ERROR,{type:c.OTHER_ERROR,details:f.LEVEL_SWITCH_ERROR,level:t,fatal:ce,error:te,reason:te.message}),ce)return;t=Math.min(t,n.length-1)}const s=this.currentLevelIndex,_=this.currentLevel,E=_?_.attrs["PATHWAY-ID"]:void 0,T=n[t],U=T.attrs["PATHWAY-ID"];if(this.currentLevelIndex=t,this.currentLevel=T,s===t&&_&&E===U)return;this.log(`Switching to level ${t} (${T.height?T.height+"p ":""}${T.videoRange?T.videoRange+" ":""}${T.codecSet?T.codecSet+" ":""}@${T.bitrate})${U?" with Pathway "+U:""} from level ${s}${E?" with Pathway "+E:""}`);const W={level:t,attrs:T.attrs,details:T.details,bitrate:T.bitrate,averageBitrate:T.averageBitrate,maxBitrate:T.maxBitrate,realBitrate:T.realBitrate,width:T.width,height:T.height,codecSet:T.codecSet,audioCodec:T.audioCodec,videoCodec:T.videoCodec,audioGroups:T.audioGroups,subtitleGroups:T.subtitleGroups,loaded:T.loaded,loadError:T.loadError,fragmentError:T.fragmentError,name:T.name,id:T.id,uri:T.uri,url:T.url,urlId:0,audioGroupIds:T.audioGroupIds,textGroupIds:T.textGroupIds};this.hls.trigger(o.LEVEL_SWITCHING,W);const N=T.details;if(!N||N.live){const te=this.switchParams(T.uri,_==null?void 0:_.details,N);this.loadPlaylist(te)}}get manualLevel(){return this.manualLevelIndex}set manualLevel(t){this.manualLevelIndex=t,this._startLevel===void 0&&(this._startLevel=t),t!==-1&&(this.level=t)}get firstLevel(){return this._firstLevel}set firstLevel(t){this._firstLevel=t}get startLevel(){if(this._startLevel===void 0){const t=this.hls.config.startLevel;return t!==void 0?t:this.hls.firstAutoLevel}return this._startLevel}set startLevel(t){this._startLevel=t}get pathways(){return this.steering?this.steering.pathways():[]}get pathwayPriority(){return this.steering?this.steering.pathwayPriority:null}set pathwayPriority(t){if(this.steering){const n=this.steering.pathways(),s=t.filter(_=>n.indexOf(_)!==-1);if(t.length<1){this.warn(`pathwayPriority ${t} should contain at least one pathway from list: ${n}`);return}this.steering.pathwayPriority=s}}onError(t,n){n.fatal||!n.context||n.context.type===h.LEVEL&&n.context.level===this.level&&this.checkRetry(n)}onFragBuffered(t,{frag:n}){if(n!==void 0&&n.type===u.MAIN){const s=n.elementaryStreams;if(!Object.keys(s).some(E=>!!s[E]))return;const _=this._levels[n.level];_!=null&&_.loadError&&(this.log(`Resetting level error count of ${_.loadError} on frag buffered`),_.loadError=0)}}onLevelLoaded(t,n){var s;const{level:_,details:E}=n,T=n.levelInfo;if(!T){var U;this.warn(`Invalid level index ${_}`),(U=n.deliveryDirectives)!=null&&U.skip&&(E.deltaUpdateFailed=!0);return}if(T===this.currentLevel||n.withoutMultiVariant){T.fragmentError===0&&(T.loadError=0);let W=T.details;W===n.details&&W.advanced&&(W=void 0),this.playlistLoaded(_,n,W)}else(s=n.deliveryDirectives)!=null&&s.skip&&(E.deltaUpdateFailed=!0)}loadPlaylist(t){super.loadPlaylist(),this.shouldLoadPlaylist(this.currentLevel)&&this.scheduleLoading(this.currentLevel,t)}loadingPlaylist(t,n){super.loadingPlaylist(t,n);const s=this.getUrlWithDirectives(t.uri,n),_=this.currentLevelIndex,E=t.attrs["PATHWAY-ID"],T=t.details,U=T==null?void 0:T.age;this.log(`Loading level index ${_}${(n==null?void 0:n.msn)!==void 0?" at sn "+n.msn+" part "+n.part:""}${E?" Pathway "+E:""}${U&&T.live?" age "+U.toFixed(1)+(T.type?" "+T.type||0:""):""} ${s}`),this.hls.trigger(o.LEVEL_LOADING,{url:s,level:_,levelInfo:t,pathwayId:t.attrs["PATHWAY-ID"],id:0,deliveryDirectives:n||null})}get nextLoadLevel(){return this.manualLevelIndex!==-1?this.manualLevelIndex:this.hls.nextAutoLevel}set nextLoadLevel(t){this.level=t,this.manualLevelIndex===-1&&(this.hls.nextAutoLevel=t)}removeLevel(t){var n;if(this._levels.length===1)return;const s=this._levels.filter((E,T)=>T!==t?!0:(this.steering&&this.steering.removeLevel(E),E===this.currentLevel&&(this.currentLevel=null,this.currentLevelIndex=-1,E.details&&E.details.fragments.forEach(U=>U.level=-1)),!1));xr(s),this._levels=s,this.currentLevelIndex>-1&&(n=this.currentLevel)!=null&&n.details&&(this.currentLevelIndex=this.currentLevel.details.fragments[0].level),this.manualLevelIndex>-1&&(this.manualLevelIndex=this.currentLevelIndex);const _=s.length-1;this._firstLevel=Math.min(this._firstLevel,_),this._startLevel&&(this._startLevel=Math.min(this._startLevel,_)),this.hls.trigger(o.LEVELS_UPDATED,{levels:s})}onLevelsUpdated(t,{levels:n}){this._levels=n}checkMaxAutoUpdated(){const{autoLevelCapping:t,maxAutoLevel:n,maxHdcpLevel:s}=this.hls;this._maxAutoLevel!==n&&(this._maxAutoLevel=n,this.hls.trigger(o.MAX_AUTO_LEVEL_UPDATED,{autoLevelCapping:t,levels:this.levels,maxAutoLevel:n,minAutoLevel:this.hls.minAutoLevel,maxHdcpLevel:s}))}}function Nf(P){const t={};P.forEach(n=>{const s=n.groupId||"";n.id=t[s]=t[s]||0,t[s]++})}function af(){return self.SourceBuffer||self.WebKitSourceBuffer}function $f(){if(!ae())return!1;const t=af();return!t||t.prototype&&typeof t.prototype.appendBuffer=="function"&&typeof t.prototype.remove=="function"}function Tf(){if(!$f())return!1;const P=ae();return typeof(P==null?void 0:P.isTypeSupported)=="function"&&(["avc1.42E01E,mp4a.40.2","av01.0.01M.08","vp09.00.50.08"].some(t=>P.isTypeSupported(wt(t,"video")))||["mp4a.40.2","fLaC"].some(t=>P.isTypeSupported(wt(t,"audio"))))}function g(){var P;const t=af();return typeof(t==null||(P=t.prototype)==null?void 0:P.changeType)=="function"}const C=100;class z extends ga{constructor(t,n,s){super(t,n,s,"stream-controller",u.MAIN),this.audioCodecSwap=!1,this.level=-1,this._forceStartLoad=!1,this._hasEnoughToStart=!1,this.altAudio=0,this.audioOnly=!1,this.fragPlaying=null,this.fragLastKbps=0,this.couldBacktrack=!1,this.backtrackFragment=null,this.audioCodecSwitch=!1,this.videoBuffer=null,this.onMediaPlaying=()=>{this.tick()},this.onMediaSeeked=()=>{const _=this.media,E=_?_.currentTime:null;if(E===null||!r(E)||(this.log(`Media seeked to ${E.toFixed(3)}`),!this.getBufferedFrag(E)))return;const T=this.getFwdBufferInfoAtPos(_,E,u.MAIN,0);if(T===null||T.len===0){this.warn(`Main forward buffer length at ${E} on "seeked" event ${T?T.len:"empty"})`);return}this.tick()},this.registerListeners()}registerListeners(){super.registerListeners();const{hls:t}=this;t.on(o.MANIFEST_PARSED,this.onManifestParsed,this),t.on(o.LEVEL_LOADING,this.onLevelLoading,this),t.on(o.LEVEL_LOADED,this.onLevelLoaded,this),t.on(o.FRAG_LOAD_EMERGENCY_ABORTED,this.onFragLoadEmergencyAborted,this),t.on(o.AUDIO_TRACK_SWITCHING,this.onAudioTrackSwitching,this),t.on(o.AUDIO_TRACK_SWITCHED,this.onAudioTrackSwitched,this),t.on(o.BUFFER_CREATED,this.onBufferCreated,this),t.on(o.BUFFER_FLUSHED,this.onBufferFlushed,this),t.on(o.LEVELS_UPDATED,this.onLevelsUpdated,this),t.on(o.FRAG_BUFFERED,this.onFragBuffered,this)}unregisterListeners(){super.unregisterListeners();const{hls:t}=this;t.off(o.MANIFEST_PARSED,this.onManifestParsed,this),t.off(o.LEVEL_LOADED,this.onLevelLoaded,this),t.off(o.FRAG_LOAD_EMERGENCY_ABORTED,this.onFragLoadEmergencyAborted,this),t.off(o.AUDIO_TRACK_SWITCHING,this.onAudioTrackSwitching,this),t.off(o.AUDIO_TRACK_SWITCHED,this.onAudioTrackSwitched,this),t.off(o.BUFFER_CREATED,this.onBufferCreated,this),t.off(o.BUFFER_FLUSHED,this.onBufferFlushed,this),t.off(o.LEVELS_UPDATED,this.onLevelsUpdated,this),t.off(o.FRAG_BUFFERED,this.onFragBuffered,this)}onHandlerDestroying(){this.onMediaPlaying=this.onMediaSeeked=null,this.unregisterListeners(),super.onHandlerDestroying()}startLoad(t,n){if(this.levels){const{lastCurrentTime:s,hls:_}=this;if(this.stopLoad(),this.setInterval(C),this.level=-1,!this.startFragRequested){let E=_.startLevel;E===-1&&(_.config.testBandwidth&&this.levels.length>1?(E=0,this.bitrateTest=!0):E=_.firstAutoLevel),_.nextLoadLevel=E,this.level=_.loadLevel,this._hasEnoughToStart=!!n}s>0&&t===-1&&!n&&(this.log(`Override startPosition with lastCurrentTime @${s.toFixed(3)}`),t=s),this.state=Vr.IDLE,this.nextLoadPosition=this.lastCurrentTime=t+this.timelineOffset,this.startPosition=n?-1:t,this.tick()}else this._forceStartLoad=!0,this.state=Vr.STOPPED}stopLoad(){this._forceStartLoad=!1,super.stopLoad()}doTick(){switch(this.state){case Vr.WAITING_LEVEL:{const{levels:n,level:s}=this,_=n==null?void 0:n[s],E=_==null?void 0:_.details;if(E&&(!E.live||this.levelLastLoaded===_&&!this.waitForLive(_))){if(this.waitForCdnTuneIn(E))break;this.state=Vr.IDLE;break}else if(this.hls.nextLoadLevel!==this.level){this.state=Vr.IDLE;break}break}case Vr.FRAG_LOADING_WAITING_RETRY:{var t;const n=self.performance.now(),s=this.retryDate;if(!s||n>=s||(t=this.media)!=null&&t.seeking){const{levels:_,level:E}=this,T=_==null?void 0:_[E];this.resetStartWhenNotLoaded(T||null),this.state=Vr.IDLE}}break}this.state===Vr.IDLE&&this.doTickIdle(),this.onTickEnd()}onTickEnd(){var t;super.onTickEnd(),(t=this.media)!=null&&t.readyState&&this.media.seeking===!1&&(this.lastCurrentTime=this.media.currentTime),this.checkFragmentChanged()}doTickIdle(){const{hls:t,levelLastLoaded:n,levels:s,media:_}=this;if(n===null||!_&&!this.primaryPrefetch&&(this.startFragRequested||!t.config.startFragPrefetch)||this.altAudio&&this.audioOnly)return;const E=this.buffering?t.nextLoadLevel:t.loadLevel;if(!(s!=null&&s[E]))return;const T=s[E],U=this.getMainFwdBufferInfo();if(U===null)return;const W=this.getLevelDetails();if(W&&this._streamEnded(U,W)){const at={};this.altAudio===2&&(at.type="video"),this.hls.trigger(o.BUFFER_EOS,at),this.state=Vr.ENDED;return}if(!this.buffering)return;t.loadLevel!==E&&t.manualLevel===-1&&this.log(`Adapting to level ${E} from level ${this.level}`),this.level=t.nextLoadLevel=E;const N=T.details;if(!N||this.state===Vr.WAITING_LEVEL||this.waitForLive(T)){this.level=E,this.state=Vr.WAITING_LEVEL,this.startFragRequested=!1;return}const te=U.len,ce=this.getMaxBufferLength(T.maxBitrate);if(te>=ce)return;this.backtrackFragment&&this.backtrackFragment.start>U.end&&(this.backtrackFragment=null);const xe=this.backtrackFragment?this.backtrackFragment.start:U.end;let Ie=this.getNextFragment(xe,N);if(this.couldBacktrack&&!this.fragPrevious&&Ie&&me(Ie)&&this.fragmentTracker.getState(Ie)!==nr.OK){var Ae;const tt=((Ae=this.backtrackFragment)!=null?Ae:Ie).sn-N.startSN,kt=N.fragments[tt-1];kt&&Ie.cc===kt.cc&&(Ie=kt,this.fragmentTracker.removeFragment(kt))}else this.backtrackFragment&&U.len&&(this.backtrackFragment=null);if(Ie&&this.isLoopLoading(Ie,xe)){if(!Ie.gap){const tt=this.audioOnly&&!this.altAudio?$.AUDIO:$.VIDEO,kt=(tt===$.VIDEO?this.videoBuffer:this.mediaBuffer)||this.media;kt&&this.afterBufferFlushed(kt,tt,u.MAIN)}Ie=this.getNextFragmentLoopLoading(Ie,N,U,u.MAIN,ce)}Ie&&(Ie.initSegment&&!Ie.initSegment.data&&!this.bitrateTest&&(Ie=Ie.initSegment),this.loadFragment(Ie,T,xe))}loadFragment(t,n,s){const _=this.fragmentTracker.getState(t);_===nr.NOT_LOADED||_===nr.PARTIAL?me(t)?this.bitrateTest?(this.log(`Fragment ${t.sn} of level ${t.level} is being downloaded to test bitrate and will not be buffered`),this._loadBitrateTestFrag(t,n)):super.loadFragment(t,n,s):this._loadInitSegment(t,n):this.clearTrackerIfNeeded(t)}getBufferedFrag(t){return this.fragmentTracker.getBufferedFrag(t,u.MAIN)}followingBufferedFrag(t){return t?this.getBufferedFrag(t.end+.5):null}immediateLevelSwitch(){this.abortCurrentFrag(),this.flushMainBuffer(0,Number.POSITIVE_INFINITY)}nextLevelSwitch(){const{levels:t,media:n}=this;if(n!=null&&n.readyState){let s;const _=this.getAppendedFrag(n.currentTime);_&&_.start>1&&this.flushMainBuffer(0,_.start-1);const E=this.getLevelDetails();if(E!=null&&E.live){const U=this.getMainFwdBufferInfo();if(!U||U.len{const T=E.audioCodec;T&&(s=s||T.indexOf("mp4a.40.2")!==-1,_=_||T.indexOf("mp4a.40.5")!==-1)}),this.audioCodecSwitch=s&&_&&!g(),this.audioCodecSwitch&&this.log("Both AAC/HE-AAC audio found in levels; declaring level codec as HE-AAC"),this.levels=n.levels,this.startFragRequested=!1}onLevelLoading(t,n){const{levels:s}=this;if(!s||this.state!==Vr.IDLE)return;const _=n.levelInfo;(!_.details||_.details.live&&(this.levelLastLoaded!==_||_.details.expired)||this.waitForCdnTuneIn(_.details))&&(this.state=Vr.WAITING_LEVEL)}onLevelLoaded(t,n){var s;const{levels:_,startFragRequested:E}=this,T=n.level,U=n.details,W=U.totalduration;if(!_){this.warn(`Levels were reset while loading level ${T}`);return}this.log(`Level ${T} loaded [${U.startSN},${U.endSN}]${U.lastPartSn?`[part-${U.lastPartSn}-${U.lastPartIndex}]`:""}, cc [${U.startCC}, ${U.endCC}] duration:${W}`);const N=n.levelInfo,te=this.fragCurrent;te&&(this.state===Vr.FRAG_LOADING||this.state===Vr.FRAG_LOADING_WAITING_RETRY)&&te.level!==n.level&&te.loader&&this.abortCurrentFrag();let ce=0;if(U.live||(s=N.details)!=null&&s.live){var xe;if(this.checkLiveUpdate(U),U.deltaUpdateFailed)return;ce=this.alignPlaylists(U,N.details,(xe=this.levelLastLoaded)==null?void 0:xe.details)}if(N.details=U,this.levelLastLoaded=N,E||this.setStartPosition(U,ce),this.hls.trigger(o.LEVEL_UPDATED,{details:U,level:T}),this.state===Vr.WAITING_LEVEL){if(this.waitForCdnTuneIn(U))return;this.state=Vr.IDLE}E&&U.live&&this.synchronizeToLiveEdge(U),this.tick()}synchronizeToLiveEdge(t){const{config:n,media:s}=this;if(!s)return;const _=this.hls.liveSyncPosition,E=this.getLoadPosition(),T=t.fragmentStart,U=t.edge,W=E>=T-n.maxFragLookUpTolerance&&E<=U;if(_!==null&&s.duration>_&&(E<_||!W)){const te=n.liveMaxLatencyDuration!==void 0?n.liveMaxLatencyDuration:n.liveMaxLatencyDurationCount*t.targetduration;if((!W&&s.readyState<4||E{var T;(T=this.hls)==null||T.trigger(o.AUDIO_TRACK_SWITCHED,n)}),s.trigger(o.BUFFER_FLUSHING,{startOffset:0,endOffset:Number.POSITIVE_INFINITY,type:null});return}s.trigger(o.AUDIO_TRACK_SWITCHED,n)}}onAudioTrackSwitched(t,n){const s=yi(n.url,this.hls);if(s){const _=this.videoBuffer;_&&this.mediaBuffer!==_&&(this.log("Switching on alternate audio, use video.buffered to schedule main fragment loading"),this.mediaBuffer=_)}this.altAudio=s?2:0,this.tick()}onBufferCreated(t,n){const s=n.tracks;let _,E,T=!1;for(const U in s){const W=s[U];if(W.id==="main"){if(E=U,_=W,U==="video"){const N=s[U];N&&(this.videoBuffer=N.buffer)}}else T=!0}T&&_?(this.log(`Alternate track found, use ${E}.buffered to schedule main fragment loading`),this.mediaBuffer=_.buffer):this.mediaBuffer=this.media}onFragBuffered(t,n){const{frag:s,part:_}=n,E=s.type===u.MAIN;if(E){if(this.fragContextChanged(s)){this.warn(`Fragment ${s.sn}${_?" p: "+_.index:""} of level ${s.level} finished buffering, but was aborted. state: ${this.state}`),this.state===Vr.PARSED&&(this.state=Vr.IDLE);return}const U=_?_.stats:s.stats;this.fragLastKbps=Math.round(8*U.total/(U.buffering.end-U.loading.first)),me(s)&&(this.fragPrevious=s),this.fragBufferedComplete(s,_)}const T=this.media;T&&(!this._hasEnoughToStart&&_i.getBuffered(T).length&&(this._hasEnoughToStart=!0,this.seekToStartPos()),E&&this.tick())}get hasEnoughToStart(){return this._hasEnoughToStart}onError(t,n){var s;if(n.fatal){this.state=Vr.ERROR;return}switch(n.details){case f.FRAG_GAP:case f.FRAG_PARSING_ERROR:case f.FRAG_DECRYPT_ERROR:case f.FRAG_LOAD_ERROR:case f.FRAG_LOAD_TIMEOUT:case f.KEY_LOAD_ERROR:case f.KEY_LOAD_TIMEOUT:this.onFragmentOrKeyLoadError(u.MAIN,n);break;case f.LEVEL_LOAD_ERROR:case f.LEVEL_LOAD_TIMEOUT:case f.LEVEL_PARSING_ERROR:!n.levelRetry&&this.state===Vr.WAITING_LEVEL&&((s=n.context)==null?void 0:s.type)===h.LEVEL&&(this.state=Vr.IDLE);break;case f.BUFFER_ADD_CODEC_ERROR:case f.BUFFER_APPEND_ERROR:if(n.parent!=="main")return;this.resetLoadingState();break;case f.BUFFER_FULL_ERROR:if(n.parent!=="main")return;this.reduceLengthAndFlushBuffer(n)&&this.flushMainBuffer(0,Number.POSITIVE_INFINITY);break;case f.INTERNAL_EXCEPTION:this.recoverWorkerError(n);break}}onFragLoadEmergencyAborted(){this.state=Vr.IDLE,this._hasEnoughToStart||(this.startFragRequested=!1,this.nextLoadPosition=this.lastCurrentTime),this.tickImmediate()}onBufferFlushed(t,{type:n}){if(n!==$.AUDIO||!this.altAudio){const s=(n===$.VIDEO?this.videoBuffer:this.mediaBuffer)||this.media;s&&(this.afterBufferFlushed(s,n,u.MAIN),this.tick())}}onLevelsUpdated(t,n){this.level>-1&&this.fragCurrent&&(this.level=this.fragCurrent.level,this.level===-1&&this.resetWhenMissingContext(this.fragCurrent)),this.levels=n.levels}swapAudioCodec(){this.audioCodecSwap=!this.audioCodecSwap}seekToStartPos(){const{media:t}=this;if(!t)return;const n=t.currentTime;let s=this.startPosition;if(s>=0&&n0&&(W{const{hls:_}=this,E=s==null?void 0:s.frag;if(!E||this.fragContextChanged(E))return;n.fragmentError=0,this.state=Vr.IDLE,this.startFragRequested=!1,this.bitrateTest=!1;const T=E.stats;T.parsing.start=T.parsing.end=T.buffering.start=T.buffering.end=self.performance.now(),_.trigger(o.FRAG_LOADED,s),E.bitrateTest=!1})}_handleTransmuxComplete(t){var n;const s=this.playlistType,{hls:_}=this,{remuxResult:E,chunkMeta:T}=t,U=this.getCurrentContext(T);if(!U){this.resetWhenMissingContext(T);return}const{frag:W,part:N,level:te}=U,{video:ce,text:xe,id3:Ie,initSegment:Ae}=E,{details:at}=te,tt=this.altAudio?void 0:E.audio;if(this.fragContextChanged(W)){this.fragmentTracker.removeFragment(W);return}if(this.state=Vr.PARSING,Ae){if(Ae!=null&&Ae.tracks){const sr=W.initSegment||W;this._bufferInitSegment(te,Ae.tracks,sr,T),_.trigger(o.FRAG_PARSING_INIT_SEGMENT,{frag:sr,id:s,tracks:Ae.tracks})}const kt=Ae.initPTS,fr=Ae.timescale;r(kt)&&(this.initPTS[W.cc]={baseTime:kt,timescale:fr},_.trigger(o.INIT_PTS_FOUND,{frag:W,id:s,initPTS:kt,timescale:fr}))}if(ce&&at){tt&&ce.type==="audiovideo"&&this.logMuxedErr(W);const kt=at.fragments[W.sn-1-at.startSN],fr=W.sn===at.startSN,sr=!kt||W.cc>kt.cc;if(E.independent!==!1){const{startPTS:kr,endPTS:zr,startDTS:ln,endDTS:Wr}=ce;if(N)N.elementaryStreams[ce.type]={startPTS:kr,endPTS:zr,startDTS:ln,endDTS:Wr};else if(ce.firstKeyFrame&&ce.independent&&T.id===1&&!sr&&(this.couldBacktrack=!0),ce.dropped&&ce.independent){const Jr=this.getMainFwdBufferInfo(),un=(Jr?Jr.end:this.getLoadPosition())+this.config.maxBufferHole,Kr=ce.firstKeyFramePTS?ce.firstKeyFramePTS:kr;if(!fr&&unyc&&(W.gap=!0);W.setElementaryStreamInfo(ce.type,kr,zr,ln,Wr),this.backtrackFragment&&(this.backtrackFragment=W),this.bufferFragmentData(ce,W,N,T,fr||sr)}else if(fr||sr)W.gap=!0;else{this.backtrack(W);return}}if(tt){const{startPTS:kt,endPTS:fr,startDTS:sr,endDTS:kr}=tt;N&&(N.elementaryStreams[$.AUDIO]={startPTS:kt,endPTS:fr,startDTS:sr,endDTS:kr}),W.setElementaryStreamInfo($.AUDIO,kt,fr,sr,kr),this.bufferFragmentData(tt,W,N,T)}if(at&&Ie!=null&&(n=Ie.samples)!=null&&n.length){const kt={id:s,frag:W,details:at,samples:Ie.samples};_.trigger(o.FRAG_PARSING_METADATA,kt)}if(at&&xe){const kt={id:s,frag:W,details:at,samples:xe.samples};_.trigger(o.FRAG_PARSING_USERDATA,kt)}}logMuxedErr(t){this.warn(`${me(t)?"Media":"Init"} segment with muxed audiovideo where only video expected: ${t.url}`)}_bufferInitSegment(t,n,s,_){if(this.state!==Vr.PARSING)return;this.audioOnly=!!n.audio&&!n.video,this.altAudio&&!this.audioOnly&&(delete n.audio,n.audiovideo&&this.logMuxedErr(s));const{audio:E,video:T,audiovideo:U}=n;if(E){let N=Gr(E.codec,t.audioCodec);N==="mp4a"&&(N="mp4a.40.5");const te=navigator.userAgent.toLowerCase();if(this.audioCodecSwitch){N&&(N.indexOf("mp4a.40.5")!==-1?N="mp4a.40.2":N="mp4a.40.5");const ce=E.metadata;ce&&"channelCount"in ce&&(ce.channelCount||1)!==1&&te.indexOf("firefox")===-1&&(N="mp4a.40.5")}N&&N.indexOf("mp4a.40.5")!==-1&&te.indexOf("android")!==-1&&E.container!=="audio/mpeg"&&(N="mp4a.40.2",this.log(`Android: force audio codec to ${N}`)),t.audioCodec&&t.audioCodec!==N&&this.log(`Swapping manifest audio codec "${t.audioCodec}" for "${N}"`),E.levelCodec=N,E.id=u.MAIN,this.log(`Init audio buffer, container:${E.container}, codecs[selected/level/parsed]=[${N||""}/${t.audioCodec||""}/${E.codec}]`),delete n.audiovideo}if(T){T.levelCodec=t.videoCodec,T.id=u.MAIN;const N=T.codec;if((N==null?void 0:N.length)===4)switch(N){case"hvc1":case"hev1":T.codec="hvc1.1.6.L120.90";break;case"av01":T.codec="av01.0.04M.08";break;case"avc1":T.codec="avc1.42e01e";break}this.log(`Init video buffer, container:${T.container}, codecs[level/parsed]=[${t.videoCodec||""}/${N}]${T.codec!==N?" parsed-corrected="+T.codec:""}${T.supplemental?" supplemental="+T.supplemental:""}`),delete n.audiovideo}U&&(this.log(`Init audiovideo buffer, container:${U.container}, codecs[level/parsed]=[${t.codecs}/${U.codec}]`),delete n.video,delete n.audio);const W=Object.keys(n);if(W.length){if(this.hls.trigger(o.BUFFER_CODECS,n),!this.hls)return;W.forEach(N=>{const ce=n[N].initSegment;ce!=null&&ce.byteLength&&this.hls.trigger(o.BUFFER_APPENDING,{type:N,data:ce,frag:s,part:null,chunkMeta:_,parent:s.type})})}this.tickImmediate()}getMainFwdBufferInfo(){const t=this.mediaBuffer&&this.altAudio===2?this.mediaBuffer:this.media;return this.getFwdBufferInfo(t,u.MAIN)}get maxBufferLength(){const{levels:t,level:n}=this,s=t==null?void 0:t[n];return s?this.getMaxBufferLength(s.maxBitrate):this.config.maxBufferLength}backtrack(t){this.couldBacktrack=!0,this.backtrackFragment=t,this.resetTransmuxer(),this.flushBufferGap(t),this.fragmentTracker.removeFragment(t),this.fragPrevious=null,this.nextLoadPosition=t.start,this.state=Vr.IDLE}checkFragmentChanged(){const t=this.media;let n=null;if(t&&t.readyState>1&&t.seeking===!1){const s=t.currentTime;if(_i.isBuffered(t,s)?n=this.getAppendedFrag(s):_i.isBuffered(t,s+.1)&&(n=this.getAppendedFrag(s+.1)),n){this.backtrackFragment=null;const _=this.fragPlaying,E=n.level;(!_||n.sn!==_.sn||_.level!==E)&&(this.fragPlaying=n,this.hls.trigger(o.FRAG_CHANGED,{frag:n}),(!_||_.level!==E)&&this.hls.trigger(o.LEVEL_SWITCHED,{level:E}))}}}get nextLevel(){const t=this.nextBufferedFrag;return t?t.level:-1}get currentFrag(){var t;if(this.fragPlaying)return this.fragPlaying;const n=((t=this.media)==null?void 0:t.currentTime)||this.lastCurrentTime;return r(n)?this.getAppendedFrag(n):null}get currentProgramDateTime(){var t;const n=((t=this.media)==null?void 0:t.currentTime)||this.lastCurrentTime;if(r(n)){const s=this.getLevelDetails(),_=this.currentFrag||(s?qn(null,s.fragments,n):null);if(_){const E=_.programDateTime;if(E!==null){const T=E+(n-_.start)*1e3;return new Date(T)}}}return null}get currentLevel(){const t=this.currentFrag;return t?t.level:-1}get nextBufferedFrag(){const t=this.currentFrag;return t?this.followingBufferedFrag(t):null}get forceStartLoad(){return this._forceStartLoad}}class ve{constructor(t){this.config=void 0,this.keyUriToKeyInfo={},this.emeController=null,this.config=t}abort(t){for(const s in this.keyUriToKeyInfo){const _=this.keyUriToKeyInfo[s].loader;if(_){var n;if(t&&t!==((n=_.context)==null?void 0:n.frag.type))return;_.abort()}}}detach(){for(const t in this.keyUriToKeyInfo){const n=this.keyUriToKeyInfo[t];(n.mediaKeySessionContext||n.decryptdata.isCommonEncryption)&&delete this.keyUriToKeyInfo[t]}}destroy(){this.detach();for(const t in this.keyUriToKeyInfo){const n=this.keyUriToKeyInfo[t].loader;n&&n.destroy()}this.keyUriToKeyInfo={}}createKeyLoadError(t,n=f.KEY_LOAD_ERROR,s,_,E){return new Ha({type:c.NETWORK_ERROR,details:n,fatal:!1,frag:t,response:E,error:s,networkDetails:_})}loadClear(t,n){if(this.emeController&&this.config.emeEnabled&&!this.emeController.getSelectedKeySystemFormats().length){if(n.length){const{sn:s,cc:_}=t;for(let E=0;E{if(T.setKeyFormat(U),this.emeController&&this.config.requireKeySystemAccessOnStart){const W=Zs(U);if(W)return this.emeController.getKeySystemAccess([W])}})}}else if(this.config.requireKeySystemAccessOnStart){const s=po(this.config);if(s.length)return this.emeController.getKeySystemAccess(s)}}return null}load(t){return!t.decryptdata&&t.encrypted&&this.emeController&&this.config.emeEnabled?this.emeController.selectKeySystemFormat(t).then(n=>this.loadInternal(t,n)):this.loadInternal(t)}loadInternal(t,n){var s,_;n&&t.setKeyFormat(n);const E=t.decryptdata;if(!E){const N=new Error(n?`Expected frag.decryptdata to be defined after setting format ${n}`:"Missing decryption data on fragment in onKeyLoading");return Promise.reject(this.createKeyLoadError(t,f.KEY_LOAD_ERROR,N))}const T=E.uri;if(!T)return Promise.reject(this.createKeyLoadError(t,f.KEY_LOAD_ERROR,new Error(`Invalid key URI: "${T}"`)));let U=this.keyUriToKeyInfo[T];if((s=U)!=null&&s.decryptdata.key)return E.key=U.decryptdata.key,Promise.resolve({frag:t,keyInfo:U});if((_=U)!=null&&_.keyLoadPromise){var W;switch((W=U.mediaKeySessionContext)==null?void 0:W.keyStatus){case void 0:case"status-pending":case"usable":case"usable-in-future":return U.keyLoadPromise.then(N=>(E.key=N.keyInfo.decryptdata.key,{frag:t,keyInfo:U}))}}switch(U=this.keyUriToKeyInfo[T]={decryptdata:E,keyLoadPromise:null,loader:null,mediaKeySessionContext:null},E.method){case"ISO-23001-7":case"SAMPLE-AES":case"SAMPLE-AES-CENC":case"SAMPLE-AES-CTR":return E.keyFormat==="identity"?this.loadKeyHTTP(U,t):this.loadKeyEME(U,t);case"AES-128":case"AES-256":case"AES-256-CTR":return this.loadKeyHTTP(U,t);default:return Promise.reject(this.createKeyLoadError(t,f.KEY_LOAD_ERROR,new Error(`Key supplied with unsupported METHOD: "${E.method}"`)))}}loadKeyEME(t,n){const s={frag:n,keyInfo:t};if(this.emeController&&this.config.emeEnabled){const _=this.emeController.loadKey(s);if(_)return(t.keyLoadPromise=_.then(E=>(t.mediaKeySessionContext=E,s))).catch(E=>{throw t.keyLoadPromise=null,E})}return Promise.resolve(s)}loadKeyHTTP(t,n){const s=this.config,_=s.loader,E=new _(s);return n.keyLoader=t.loader=E,t.keyLoadPromise=new Promise((T,U)=>{const W={keyInfo:t,frag:n,responseType:"arraybuffer",url:t.decryptdata.uri},N=s.keyLoadPolicy.default,te={loadPolicy:N,timeout:N.maxLoadTimeMs,maxRetry:0,retryDelay:0,maxRetryDelay:0},ce={onSuccess:(xe,Ie,Ae,at)=>{const{frag:tt,keyInfo:kt,url:fr}=Ae;if(!tt.decryptdata||kt!==this.keyUriToKeyInfo[fr])return U(this.createKeyLoadError(tt,f.KEY_LOAD_ERROR,new Error("after key load, decryptdata unset or changed"),at));kt.decryptdata.key=tt.decryptdata.key=new Uint8Array(xe.data),tt.keyLoader=null,kt.loader=null,T({frag:tt,keyInfo:kt})},onError:(xe,Ie,Ae,at)=>{this.resetLoader(Ie),U(this.createKeyLoadError(n,f.KEY_LOAD_ERROR,new Error(`HTTP Error ${xe.code} loading key ${xe.text}`),Ae,b({url:W.url,data:void 0},xe)))},onTimeout:(xe,Ie,Ae)=>{this.resetLoader(Ie),U(this.createKeyLoadError(n,f.KEY_LOAD_TIMEOUT,new Error("key loading timed out"),Ae))},onAbort:(xe,Ie,Ae)=>{this.resetLoader(Ie),U(this.createKeyLoadError(n,f.INTERNAL_ABORTED,new Error("key loading aborted"),Ae))}};E.load(W,te,ce)})}resetLoader(t){const{frag:n,keyInfo:s,url:_}=t,E=s.loader;n.keyLoader===E&&(n.keyLoader=null,s.loader=null),delete this.keyUriToKeyInfo[_],E&&E.destroy()}}function Le(P){const{type:t}=P;switch(t){case h.AUDIO_TRACK:return u.AUDIO;case h.SUBTITLE_TRACK:return u.SUBTITLE;default:return u.MAIN}}function ut(P,t){let n=P.url;return(n===void 0||n.indexOf("data:")===0)&&(n=t.url),n}class jt{constructor(t){this.hls=void 0,this.loaders=Object.create(null),this.variableList=null,this.onManifestLoaded=this.checkAutostartLoad,this.hls=t,this.registerListeners()}startLoad(t){}stopLoad(){this.destroyInternalLoaders()}registerListeners(){const{hls:t}=this;t.on(o.MANIFEST_LOADING,this.onManifestLoading,this),t.on(o.LEVEL_LOADING,this.onLevelLoading,this),t.on(o.AUDIO_TRACK_LOADING,this.onAudioTrackLoading,this),t.on(o.SUBTITLE_TRACK_LOADING,this.onSubtitleTrackLoading,this),t.on(o.LEVELS_UPDATED,this.onLevelsUpdated,this)}unregisterListeners(){const{hls:t}=this;t.off(o.MANIFEST_LOADING,this.onManifestLoading,this),t.off(o.LEVEL_LOADING,this.onLevelLoading,this),t.off(o.AUDIO_TRACK_LOADING,this.onAudioTrackLoading,this),t.off(o.SUBTITLE_TRACK_LOADING,this.onSubtitleTrackLoading,this),t.off(o.LEVELS_UPDATED,this.onLevelsUpdated,this)}createInternalLoader(t){const n=this.hls.config,s=n.pLoader,_=n.loader,E=s||_,T=new E(n);return this.loaders[t.type]=T,T}getInternalLoader(t){return this.loaders[t.type]}resetInternalLoader(t){this.loaders[t]&&delete this.loaders[t]}destroyInternalLoaders(){for(const t in this.loaders){const n=this.loaders[t];n&&n.destroy(),this.resetInternalLoader(t)}}destroy(){this.variableList=null,this.unregisterListeners(),this.destroyInternalLoaders()}onManifestLoading(t,n){const{url:s}=n;this.variableList=null,this.load({id:null,level:0,responseType:"text",type:h.MANIFEST,url:s,deliveryDirectives:null,levelOrTrack:null})}onLevelLoading(t,n){const{id:s,level:_,pathwayId:E,url:T,deliveryDirectives:U,levelInfo:W}=n;this.load({id:s,level:_,pathwayId:E,responseType:"text",type:h.LEVEL,url:T,deliveryDirectives:U,levelOrTrack:W})}onAudioTrackLoading(t,n){const{id:s,groupId:_,url:E,deliveryDirectives:T,track:U}=n;this.load({id:s,groupId:_,level:null,responseType:"text",type:h.AUDIO_TRACK,url:E,deliveryDirectives:T,levelOrTrack:U})}onSubtitleTrackLoading(t,n){const{id:s,groupId:_,url:E,deliveryDirectives:T,track:U}=n;this.load({id:s,groupId:_,level:null,responseType:"text",type:h.SUBTITLE_TRACK,url:E,deliveryDirectives:T,levelOrTrack:U})}onLevelsUpdated(t,n){const s=this.loaders[h.LEVEL];if(s){const _=s.context;_&&!n.levels.some(E=>E===_.levelOrTrack)&&(s.abort(),delete this.loaders[h.LEVEL])}}load(t){var n;const s=this.hls.config;let _=this.getInternalLoader(t);if(_){const N=this.hls.logger,te=_.context;if(te&&te.levelOrTrack===t.levelOrTrack&&(te.url===t.url||te.deliveryDirectives&&!t.deliveryDirectives)){te.url===t.url?N.log(`[playlist-loader]: ignore ${t.url} ongoing request`):N.log(`[playlist-loader]: ignore ${t.url} in favor of ${te.url}`);return}N.log(`[playlist-loader]: aborting previous loader for type: ${t.type}`),_.abort()}let E;if(t.type===h.MANIFEST?E=s.manifestLoadPolicy.default:E=y({},s.playlistLoadPolicy.default,{timeoutRetry:null,errorRetry:null}),_=this.createInternalLoader(t),r((n=t.deliveryDirectives)==null?void 0:n.part)){let N;if(t.type===h.LEVEL&&t.level!==null?N=this.hls.levels[t.level].details:t.type===h.AUDIO_TRACK&&t.id!==null?N=this.hls.audioTracks[t.id].details:t.type===h.SUBTITLE_TRACK&&t.id!==null&&(N=this.hls.subtitleTracks[t.id].details),N){const te=N.partTarget,ce=N.targetduration;if(te&&ce){const xe=Math.max(te*3,ce*.8)*1e3;E=y({},E,{maxTimeToFirstByteMs:Math.min(xe,E.maxTimeToFirstByteMs),maxLoadTimeMs:Math.min(xe,E.maxTimeToFirstByteMs)})}}}const T=E.errorRetry||E.timeoutRetry||{},U={loadPolicy:E,timeout:E.maxLoadTimeMs,maxRetry:T.maxNumRetry||0,retryDelay:T.retryDelayMs||0,maxRetryDelay:T.maxRetryDelayMs||0},W={onSuccess:(N,te,ce,xe)=>{const Ie=this.getInternalLoader(ce);this.resetInternalLoader(ce.type);const Ae=N.data;if(Ae.indexOf("#EXTM3U")!==0){this.handleManifestParsingError(N,ce,new Error("no EXTM3U delimiter"),xe||null,te);return}te.parsing.start=performance.now(),So.isMediaPlaylist(Ae)||ce.type!==h.MANIFEST?this.handleTrackOrLevelPlaylist(N,te,ce,xe||null,Ie):this.handleMasterPlaylist(N,te,ce,xe)},onError:(N,te,ce,xe)=>{this.handleNetworkError(te,ce,!1,N,xe)},onTimeout:(N,te,ce)=>{this.handleNetworkError(te,ce,!0,void 0,N)}};_.load(t,U,W)}checkAutostartLoad(){if(!this.hls)return;const{config:{autoStartLoad:t,startPosition:n},forceStartLoad:s}=this.hls;(t||s)&&(this.hls.logger.log(`${t?"auto":"force"} startLoad with configured startPosition ${n}`),this.hls.startLoad(n))}handleMasterPlaylist(t,n,s,_){const E=this.hls,T=t.data,U=ut(t,s),W=So.parseMasterPlaylist(T,U);if(W.playlistParsingError){this.handleManifestParsingError(t,s,W.playlistParsingError,_,n);return}const{contentSteering:N,levels:te,sessionData:ce,sessionKeys:xe,startTimeOffset:Ie,variableList:Ae}=W;this.variableList=Ae;const{AUDIO:at=[],SUBTITLES:tt,"CLOSED-CAPTIONS":kt}=So.parseMasterPlaylistMedia(T,U,W);at.length&&!at.some(sr=>!sr.url)&&te[0].audioCodec&&!te[0].attrs.AUDIO&&(this.hls.logger.log("[playlist-loader]: audio codec signaled in quality level, but no embedded audio track signaled, create one"),at.unshift({type:"main",name:"main",groupId:"main",default:!1,autoselect:!1,forced:!1,id:-1,attrs:new Ni({}),bitrate:0,url:""})),E.trigger(o.MANIFEST_LOADED,{levels:te,audioTracks:at,subtitles:tt,captions:kt,contentSteering:N,url:U,stats:n,networkDetails:_,sessionData:ce,sessionKeys:xe,startTimeOffset:Ie,variableList:Ae})}handleTrackOrLevelPlaylist(t,n,s,_,E){const T=this.hls,{id:U,level:W,type:N}=s,te=ut(t,s),ce=r(W)?W:r(U)?U:0,xe=Le(s),Ie=So.parseLevelPlaylist(t.data,te,ce,xe,0,this.variableList);if(N===h.MANIFEST){const Ae={attrs:new Ni({}),bitrate:0,details:Ie,name:"",url:te};Ie.requestScheduled=n.loading.start+Mn(Ie,0),T.trigger(o.MANIFEST_LOADED,{levels:[Ae],audioTracks:[],url:te,stats:n,networkDetails:_,sessionData:null,sessionKeys:null,contentSteering:null,startTimeOffset:null,variableList:null})}n.parsing.end=performance.now(),s.levelDetails=Ie,this.handlePlaylistLoaded(Ie,t,n,s,_,E)}handleManifestParsingError(t,n,s,_,E){this.hls.trigger(o.ERROR,{type:c.NETWORK_ERROR,details:f.MANIFEST_PARSING_ERROR,fatal:n.type===h.MANIFEST,url:t.url,err:s,error:s,reason:s.message,response:t,context:n,networkDetails:_,stats:E})}handleNetworkError(t,n,s=!1,_,E){let T=`A network ${s?"timeout":"error"+(_?" (status "+_.code+")":"")} occurred while loading ${t.type}`;t.type===h.LEVEL?T+=`: ${t.level} id: ${t.id}`:(t.type===h.AUDIO_TRACK||t.type===h.SUBTITLE_TRACK)&&(T+=` id: ${t.id} group-id: "${t.groupId}"`);const U=new Error(T);this.hls.logger.warn(`[playlist-loader]: ${T}`);let W=f.UNKNOWN,N=!1;const te=this.getInternalLoader(t);switch(t.type){case h.MANIFEST:W=s?f.MANIFEST_LOAD_TIMEOUT:f.MANIFEST_LOAD_ERROR,N=!0;break;case h.LEVEL:W=s?f.LEVEL_LOAD_TIMEOUT:f.LEVEL_LOAD_ERROR,N=!1;break;case h.AUDIO_TRACK:W=s?f.AUDIO_TRACK_LOAD_TIMEOUT:f.AUDIO_TRACK_LOAD_ERROR,N=!1;break;case h.SUBTITLE_TRACK:W=s?f.SUBTITLE_TRACK_LOAD_TIMEOUT:f.SUBTITLE_LOAD_ERROR,N=!1;break}te&&this.resetInternalLoader(t.type);const ce={type:c.NETWORK_ERROR,details:W,fatal:N,url:t.url,loader:te,context:t,error:U,networkDetails:n,stats:E};if(_){const xe=(n==null?void 0:n.url)||t.url;ce.response=b({url:xe,data:void 0},_)}this.hls.trigger(o.ERROR,ce)}handlePlaylistLoaded(t,n,s,_,E,T){const U=this.hls,{type:W,level:N,id:te,groupId:ce,deliveryDirectives:xe}=_,Ie=ut(n,_),Ae=Le(_),at=typeof _.level=="number"&&Ae===u.MAIN?N:void 0;if(!t.fragments.length){const kt=t.playlistParsingError=new Error("No Segments found in Playlist");U.trigger(o.ERROR,{type:c.NETWORK_ERROR,details:f.LEVEL_EMPTY_ERROR,fatal:!1,url:Ie,error:kt,reason:kt.message,response:n,context:_,level:at,parent:Ae,networkDetails:E,stats:s});return}t.targetduration||(t.playlistParsingError=new Error("Missing Target Duration"));const tt=t.playlistParsingError;if(tt){if(this.hls.logger.warn(tt),!U.config.ignorePlaylistParsingErrors){U.trigger(o.ERROR,{type:c.NETWORK_ERROR,details:f.LEVEL_PARSING_ERROR,fatal:!1,url:Ie,error:tt,reason:tt.message,response:n,context:_,level:at,parent:Ae,networkDetails:E,stats:s});return}t.playlistParsingError=null}switch(t.live&&T&&(T.getCacheAge&&(t.ageHeader=T.getCacheAge()||0),(!T.getCacheAge||isNaN(t.ageHeader))&&(t.ageHeader=0)),W){case h.MANIFEST:case h.LEVEL:U.trigger(o.LEVEL_LOADED,{details:t,levelInfo:_.levelOrTrack||U.levels[0],level:at||0,id:te||0,stats:s,networkDetails:E,deliveryDirectives:xe,withoutMultiVariant:W===h.MANIFEST});break;case h.AUDIO_TRACK:U.trigger(o.AUDIO_TRACK_LOADED,{details:t,track:_.levelOrTrack,id:te||0,groupId:ce||"",stats:s,networkDetails:E,deliveryDirectives:xe});break;case h.SUBTITLE_TRACK:U.trigger(o.SUBTITLE_TRACK_LOADED,{details:t,track:_.levelOrTrack,id:te||0,groupId:ce||"",stats:s,networkDetails:E,deliveryDirectives:xe});break}}}class ir{static get version(){return Va}static isMSESupported(){return $f()}static isSupported(){return Tf()}static getMediaSource(){return ae()}static get Events(){return o}static get MetadataSchema(){return ts}static get ErrorTypes(){return c}static get ErrorDetails(){return f}static get DefaultConfig(){return ir.defaultConfig?ir.defaultConfig:rf}static set DefaultConfig(t){ir.defaultConfig=t}constructor(t={}){this.config=void 0,this.userConfig=void 0,this.logger=void 0,this.coreComponents=void 0,this.networkControllers=void 0,this._emitter=new ya,this._autoLevelCapping=-1,this._maxHdcpLevel=null,this.abrController=void 0,this.bufferController=void 0,this.capLevelController=void 0,this.latencyController=void 0,this.levelController=void 0,this.streamController=void 0,this.audioStreamController=void 0,this.subtititleStreamController=void 0,this.audioTrackController=void 0,this.subtitleTrackController=void 0,this.interstitialsController=void 0,this.gapController=void 0,this.emeController=void 0,this.cmcdController=void 0,this._media=null,this._url=null,this._sessionId=void 0,this.triggeringException=void 0,this.started=!1;const n=this.logger=V(t.debug||!1,"Hls instance",t.assetPlayerId),s=this.config=fl(ir.DefaultConfig,t,n);this.userConfig=t,s.progressive&&Yo(s,n);const{abrController:_,bufferController:E,capLevelController:T,errorController:U,fpsController:W}=s,N=new U(this),te=this.abrController=new _(this),ce=new Lr(this),xe=s.interstitialsController,Ie=xe?this.interstitialsController=new xe(this,ir):null,Ae=this.bufferController=new E(this,ce),at=this.capLevelController=new T(this),tt=new W(this),kt=new jt(this),fr=s.contentSteeringController,sr=fr?new fr(this):null,kr=this.levelController=new Bf(this,sr),zr=new Hf(this),ln=new ve(this.config),Wr=this.streamController=new z(this,ce,ln),Jr=this.gapController=new _f(this,ce);at.setStreamController(Wr),tt.setStreamController(Wr);const un=[kt,kr,Wr];Ie&&un.splice(1,0,Ie),sr&&un.splice(1,0,sr),this.networkControllers=un;const Kr=[te,Ae,Jr,at,tt,zr,ce];this.audioTrackController=this.createController(s.audioTrackController,un);const Un=s.audioStreamController;Un&&un.push(this.audioStreamController=new Un(this,ce,ln)),this.subtitleTrackController=this.createController(s.subtitleTrackController,un);const pi=s.subtitleStreamController;pi&&un.push(this.subtititleStreamController=new pi(this,ce,ln)),this.createController(s.timelineController,Kr),ln.emeController=this.emeController=this.createController(s.emeController,Kr),this.cmcdController=this.createController(s.cmcdController,Kr),this.latencyController=this.createController(Cf,Kr),this.coreComponents=Kr,un.push(N);const ua=N.onErrorOut;typeof ua=="function"&&this.on(o.ERROR,ua,N),this.on(o.MANIFEST_LOADED,kt.onManifestLoaded,kt)}createController(t,n){if(t){const s=new t(this);return n&&n.push(s),s}return null}on(t,n,s=this){this._emitter.on(t,n,s)}once(t,n,s=this){this._emitter.once(t,n,s)}removeAllListeners(t){this._emitter.removeAllListeners(t)}off(t,n,s=this,_){this._emitter.off(t,n,s,_)}listeners(t){return this._emitter.listeners(t)}emit(t,n,s){return this._emitter.emit(t,n,s)}trigger(t,n){if(this.config.debug)return this.emit(t,t,n);try{return this.emit(t,t,n)}catch(s){if(this.logger.error("An internal error happened while handling event "+t+'. Error message: "'+s.message+'". Here is a stacktrace:',s),!this.triggeringException){this.triggeringException=!0;const _=t===o.ERROR;this.trigger(o.ERROR,{type:c.OTHER_ERROR,details:f.INTERNAL_EXCEPTION,fatal:_,event:t,error:s}),this.triggeringException=!1}}return!1}listenerCount(t){return this._emitter.listenerCount(t)}destroy(){this.logger.log("destroy"),this.trigger(o.DESTROYING,void 0),this.detachMedia(),this.removeAllListeners(),this._autoLevelCapping=-1,this._url=null,this.networkControllers.forEach(n=>n.destroy()),this.networkControllers.length=0,this.coreComponents.forEach(n=>n.destroy()),this.coreComponents.length=0;const t=this.config;t.xhrSetup=t.fetchSetup=void 0,this.userConfig=null}attachMedia(t){if(!t||"media"in t&&!t.media){const E=new Error(`attachMedia failed: invalid argument (${t})`);this.trigger(o.ERROR,{type:c.OTHER_ERROR,details:f.ATTACH_MEDIA_ERROR,fatal:!0,error:E});return}this.logger.log("attachMedia"),this._media&&(this.logger.warn("media must be detached before attaching"),this.detachMedia());const n="media"in t,s=n?t.media:t,_=n?t:{media:s};this._media=s,this.trigger(o.MEDIA_ATTACHING,_)}detachMedia(){this.logger.log("detachMedia"),this.trigger(o.MEDIA_DETACHING,{}),this._media=null}transferMedia(){this._media=null;const t=this.bufferController.transferMedia();return this.trigger(o.MEDIA_DETACHING,{transferMedia:t}),t}loadSource(t){this.stopLoad();const n=this.media,s=this._url,_=this._url=le.buildAbsoluteURL(self.location.href,t,{alwaysNormalize:!0});this._autoLevelCapping=-1,this._maxHdcpLevel=null,this.logger.log(`loadSource:${_}`),n&&s&&(s!==_||this.bufferController.hasSourceTypes())&&(this.detachMedia(),this.attachMedia(n)),this.trigger(o.MANIFEST_LOADING,{url:t})}get url(){return this._url}get hasEnoughToStart(){return this.streamController.hasEnoughToStart}get startPosition(){return this.streamController.startPositionValue}startLoad(t=-1,n){this.logger.log(`startLoad(${t+(n?", ":"")})`),this.started=!0,this.resumeBuffering();for(let s=0;s{t.resumeBuffering&&t.resumeBuffering()}))}pauseBuffering(){this.bufferingEnabled&&(this.logger.log("pause buffering"),this.networkControllers.forEach(t=>{t.pauseBuffering&&t.pauseBuffering()}))}get inFlightFragments(){const t={[u.MAIN]:this.streamController.inFlightFrag};return this.audioStreamController&&(t[u.AUDIO]=this.audioStreamController.inFlightFrag),this.subtititleStreamController&&(t[u.SUBTITLE]=this.subtititleStreamController.inFlightFrag),t}swapAudioCodec(){this.logger.log("swapAudioCodec"),this.streamController.swapAudioCodec()}recoverMediaError(){this.logger.log("recoverMediaError");const t=this._media,n=t==null?void 0:t.currentTime;this.detachMedia(),t&&(this.attachMedia(t),n&&this.startLoad(n))}removeLevel(t){this.levelController.removeLevel(t)}get sessionId(){let t=this._sessionId;return t||(t=this._sessionId=Zo()),t}get levels(){const t=this.levelController.levels;return t||[]}get latestLevelDetails(){return this.streamController.getLevelDetails()||null}get loadLevelObj(){return this.levelController.loadLevelObj}get currentLevel(){return this.streamController.currentLevel}set currentLevel(t){this.logger.log(`set currentLevel:${t}`),this.levelController.manualLevel=t,this.streamController.immediateLevelSwitch()}get nextLevel(){return this.streamController.nextLevel}set nextLevel(t){this.logger.log(`set nextLevel:${t}`),this.levelController.manualLevel=t,this.streamController.nextLevelSwitch()}get loadLevel(){return this.levelController.level}set loadLevel(t){this.logger.log(`set loadLevel:${t}`),this.levelController.manualLevel=t}get nextLoadLevel(){return this.levelController.nextLoadLevel}set nextLoadLevel(t){this.levelController.nextLoadLevel=t}get firstLevel(){return Math.max(this.levelController.firstLevel,this.minAutoLevel)}set firstLevel(t){this.logger.log(`set firstLevel:${t}`),this.levelController.firstLevel=t}get startLevel(){const t=this.levelController.startLevel;return t===-1&&this.abrController.forcedAutoLevel>-1?this.abrController.forcedAutoLevel:t}set startLevel(t){this.logger.log(`set startLevel:${t}`),t!==-1&&(t=Math.max(t,this.minAutoLevel)),this.levelController.startLevel=t}get capLevelToPlayerSize(){return this.config.capLevelToPlayerSize}set capLevelToPlayerSize(t){const n=!!t;n!==this.config.capLevelToPlayerSize&&(n?this.capLevelController.startCapping():(this.capLevelController.stopCapping(),this.autoLevelCapping=-1,this.streamController.nextLevelSwitch()),this.config.capLevelToPlayerSize=n)}get autoLevelCapping(){return this._autoLevelCapping}get bandwidthEstimate(){const{bwEstimator:t}=this.abrController;return t?t.getEstimate():NaN}set bandwidthEstimate(t){this.abrController.resetEstimator(t)}get abrEwmaDefaultEstimate(){const{bwEstimator:t}=this.abrController;return t?t.defaultEstimate:NaN}get ttfbEstimate(){const{bwEstimator:t}=this.abrController;return t?t.getEstimateTTFB():NaN}set autoLevelCapping(t){this._autoLevelCapping!==t&&(this.logger.log(`set autoLevelCapping:${t}`),this._autoLevelCapping=t,this.levelController.checkMaxAutoUpdated())}get maxHdcpLevel(){return this._maxHdcpLevel}set maxHdcpLevel(t){Ut(t)&&this._maxHdcpLevel!==t&&(this._maxHdcpLevel=t,this.levelController.checkMaxAutoUpdated())}get autoLevelEnabled(){return this.levelController.manualLevel===-1}get manualLevel(){return this.levelController.manualLevel}get minAutoLevel(){const{levels:t,config:{minAutoBitrate:n}}=this;if(!t)return 0;const s=t.length;for(let _=0;_=n)return _;return 0}get maxAutoLevel(){const{levels:t,autoLevelCapping:n,maxHdcpLevel:s}=this;let _;if(n===-1&&t!=null&&t.length?_=t.length-1:_=n,s)for(let E=_;E--;){const T=t[E].attrs["HDCP-LEVEL"];if(T&&T<=s)return E}return _}get firstAutoLevel(){return this.abrController.firstAutoLevel}get nextAutoLevel(){return this.abrController.nextAutoLevel}set nextAutoLevel(t){this.abrController.nextAutoLevel=t}get playingDate(){return this.streamController.currentProgramDateTime}get mainForwardBufferInfo(){return this.streamController.getMainFwdBufferInfo()}get maxBufferLength(){return this.streamController.maxBufferLength}setAudioOption(t){var n;return((n=this.audioTrackController)==null?void 0:n.setAudioOption(t))||null}setSubtitleOption(t){var n;return((n=this.subtitleTrackController)==null?void 0:n.setSubtitleOption(t))||null}get allAudioTracks(){const t=this.audioTrackController;return t?t.allAudioTracks:[]}get audioTracks(){const t=this.audioTrackController;return t?t.audioTracks:[]}get audioTrack(){const t=this.audioTrackController;return t?t.audioTrack:-1}set audioTrack(t){const n=this.audioTrackController;n&&(n.audioTrack=t)}get allSubtitleTracks(){const t=this.subtitleTrackController;return t?t.allSubtitleTracks:[]}get subtitleTracks(){const t=this.subtitleTrackController;return t?t.subtitleTracks:[]}get subtitleTrack(){const t=this.subtitleTrackController;return t?t.subtitleTrack:-1}get media(){return this._media}set subtitleTrack(t){const n=this.subtitleTrackController;n&&(n.subtitleTrack=t)}get subtitleDisplay(){const t=this.subtitleTrackController;return t?t.subtitleDisplay:!1}set subtitleDisplay(t){const n=this.subtitleTrackController;n&&(n.subtitleDisplay=t)}get lowLatencyMode(){return this.config.lowLatencyMode}set lowLatencyMode(t){this.config.lowLatencyMode=t}get liveSyncPosition(){return this.latencyController.liveSyncPosition}get latency(){return this.latencyController.latency}get maxLatency(){return this.latencyController.maxLatency}get targetLatency(){return this.latencyController.targetLatency}set targetLatency(t){this.latencyController.targetLatency=t}get drift(){return this.latencyController.drift}get forceStartLoad(){return this.streamController.forceStartLoad}get pathways(){return this.levelController.pathways}get pathwayPriority(){return this.levelController.pathwayPriority}set pathwayPriority(t){this.levelController.pathwayPriority=t}get bufferedToEnd(){var t;return!!((t=this.bufferController)!=null&&t.bufferedToEnd)}get interstitialsManager(){var t;return((t=this.interstitialsController)==null?void 0:t.interstitialsManager)||null}getMediaDecodingInfo(t,n=this.allAudioTracks){const s=Li(n);return Lt(t,s,navigator.mediaCapabilities)}}ir.defaultConfig=void 0},53280:function(d,v,e){"use strict";e.d(v,{D:function(){return i}});function r(l,c,f){var o=f||{},h=o.noTrailing,u=h===void 0?!1:h,a=o.noLeading,x=a===void 0?!1:a,p=o.debounceMode,y=p===void 0?void 0:p,m,b=!1,S=0;function k(){m&&clearTimeout(m)}function R(D){var M=D||{},B=M.upcomingOnly,j=B===void 0?!1:B;k(),b=!j}function A(){for(var D=arguments.length,M=new Array(D),B=0;Bl?x?(S=Date.now(),u||(m=setTimeout(y?G:V,l))):V():u!==!0&&(m=setTimeout(y?G:V,y===void 0?l-K:l))}return A.cancel=R,A}function i(l,c,f){var o=f||{},h=o.atBegin,u=h===void 0?!1:h;return r(l,c,{debounceMode:u!==!1})}}},__webpack_module_cache__={};function __webpack_require__(d){var v=__webpack_module_cache__[d];if(v!==void 0)return v.exports;var e=__webpack_module_cache__[d]={id:d,loaded:!1,exports:{}};return __webpack_modules__[d].call(e.exports,e,e.exports,__webpack_require__),e.loaded=!0,e.exports}__webpack_require__.m=__webpack_modules__,function(){__webpack_require__.amdO={}}(),function(){__webpack_require__.n=function(d){var v=d&&d.__esModule?function(){return d.default}:function(){return d};return __webpack_require__.d(v,{a:v}),v}}(),function(){var d=Object.getPrototypeOf?function(e){return Object.getPrototypeOf(e)}:function(e){return e.__proto__},v;__webpack_require__.t=function(e,r){if(r&1&&(e=this(e)),r&8||typeof e=="object"&&e&&(r&4&&e.__esModule||r&16&&typeof e.then=="function"))return e;var i=Object.create(null);__webpack_require__.r(i);var l={};v=v||[null,d({}),d([]),d(d)];for(var c=r&2&&e;typeof c=="object"&&!~v.indexOf(c);c=d(c))Object.getOwnPropertyNames(c).forEach(function(f){l[f]=function(){return e[f]}});return l.default=function(){return e},__webpack_require__.d(i,l),i}}(),function(){__webpack_require__.d=function(d,v){for(var e in v)__webpack_require__.o(v,e)&&!__webpack_require__.o(d,e)&&Object.defineProperty(d,e,{enumerable:!0,get:v[e]})}}(),function(){__webpack_require__.f={},__webpack_require__.e=function(d){return Promise.all(Object.keys(__webpack_require__.f).reduce(function(v,e){return __webpack_require__.f[e](d,v),v},[]))}}(),function(){__webpack_require__.u=function(d){return""+({26:"p__Classrooms__Lists__Graduation__Tasks__Edit__index",67:"p__Message__index",109:"p__Classrooms__Lists__ShixunHomeworks__Detail__components__CodeReview__Detail__index",119:"p__User__ThemeChange__Paths",195:"p__Classrooms__Lists__GroupHomework__Detail__index",201:"p__Classrooms__ThemeChange__Students",264:"p__User__Detail__Order__pages__orderPay__index",292:"p__Classrooms__Lists__Exercise__Add__index",337:"p__Paperlibrary__Random__PreviewEdit__index",479:"p__Classrooms__Lists__GroupHomework__EditWork__index",485:"p__Question__AddOrEdit__BatchAdd__index",508:"p__Forums__Detail__id",518:"p__Shixuns__Detail__Settings__ThemeChange__index",532:"p__ExcellentCourse__index",533:"p__Classrooms__Lists__Video__Statistics__Detail__index",547:"p__Account__index",556:"p__User__Detail__Order__pages__invoice__index",559:"layouts__virtualDetail__index",570:"p__Home__Detail__OnlineNum__index",576:"p__Account__Profile__Edit__index",643:"p__Classrooms__Lists__Polls__QuestionnaireInfo__index",680:"p__Innovation__index",700:"p__tasks__Jupyter__index",737:"p__Classrooms__Lists__CommonHomework__Detail__components__CodeReview__Detail__index",799:"p__User__Detail__Topics__Poll__Detail__index",869:"p__Guidance__index",879:"p__User__ThemeChange__AccountInfo",895:"p__Classrooms__Lists__Video__Items__videoInfo__index",900:"p__User__ThemeChange__Classrooms",906:"p__User__ThemeChange__CareerCertification",921:"p__Classrooms__Lists__Exercise__CodeDetails__index",928:"p__RestFul__Edit__index",1006:"p__RestFul__index",1043:"p__Classrooms__Lists__Graduation__Tasks__index",1045:"p__virtualSpaces__Lists__Knowledge__AddAndEdit__index",1048:"p__Classrooms__Lists__ProgramHomework__Detail__Ranking__index",1070:"p__Innovation__PublicMirror__index",1211:"p__Classrooms__Lists__CommonHomework__EditWork__index",1253:"p__Graduations__Lists__Gradingsummary__index",1257:"p__Classrooms__Lists__ResourceRecommend__index",1276:"p__MoopCases__Success__index",1343:"p__User__Detail__ResourceAllocation__index",1423:"p__Shixuns__Edit__body__Level__Challenges__EditPracticeAnswer__index",1427:"p__Classrooms__Lists__Statistics__index",1450:"p__Classrooms__Lists__ShixunHomeworks__Commitsummary__index",1461:"p__Graduations__Lists__Topics__index",1470:"p__User__Register__index",1475:"p__Shixuns__Detail__Dataset__JupyterData__index",1477:"p__Classrooms__ThemeChange__Assistant",1482:"p__Classrooms__Lists__Graduation__Topics__Edit__index",1512:"p__Classrooms__Lists__Exercise__AnswerCheck__index",1520:"p__Engineering__Lists__StudentList__index",1545:"p__Paperlibrary__Random__ExchangeFromProblemSet__index",1578:"p__Classrooms__Lists__Graduation__Topics__Detail__index",1581:"p__Problemset__Preview__index",1582:"p__Classrooms__Lists__GroupHomework__Add__index",1657:"p__Shixuns__Edit__body__Level__Challenges__EditQuestion__index",1660:"p__User__QQLogin__index",1674:"p__Classrooms__ClassicCases__index",1678:"p__Classrooms__ThemeChange__Attachment",1702:"p__Classrooms__New__index",1713:"p__virtualSpaces__Lists__Settings__index",1717:"layouts__index",1727:"p__Classrooms__Lists__CourseGroup__NotList__index",1754:"p__Classrooms__ThemeChange__Video",1783:"p__virtualSpaces__Lists__Experiment__index",1798:"p__Classrooms__ThemeChange__GroupHomework",1799:"p__Competitions__Entered__Assembly__TeamDateil",1831:"p__Graduations__Index__index",1836:"p__Classrooms__Lists__Attendance__Webview__Teacher__index",1855:"p__MoopCases__InfoPanel__index",1880:"p__User__Detail__Order__pages__apply__index",1897:"p__User__ThemeChange__ClassManagement",1939:"p__User__Detail__Order__index",1953:"p__Problemset__NewItem__index",1962:"p__Classrooms__Lists__Engineering__index",1993:"p__Shixuns__Detail__Dataset__ThemeChange__index",2045:"p__Engineering__Lists__TeacherList__index",2099:"p__Paperlibrary__ThemeChange__index",2102:"p__Classrooms__Lists__Board__Edit__index",2130:"p__Shixuns__Detail__Repository__UploadFile__ThemeChange__index",2141:"p__Shixuns__Detail__Split__index",2203:"p__Classrooms__ThemeChange__ShixunHomeworks",2216:"p__DataSet__Index__index",2240:"p__User__Detail__Videos__Upload__index",2281:"p__Paths__ThemeChange__Detail",2300:"p__Api__index",2303:"p__Classrooms__Lists__CommonHomework__Comment__index",2307:"p__Report__index",2338:"p__Classrooms__Lists__CommonHomework__Review__index",2339:"p__virtualSpaces__Lists__Plan__Detail__index",2396:"p__User__Detail__ResourcesCenter__index",2404:"p__Classrooms__Lists__Template__teacher__index",2412:"p__User__Detail__Videos__index",2425:"p__Classrooms__Lists__Board__Detail__index",2443:"p__Graduations__Lists__StageModule__index",2476:"p__Colleges__index",2501:"p__Search__index",2539:"p__Graduations__Review__index",2548:"p__Engineering__Norm__Detail__index",2570:"p__Competitions__Detail__index",2603:"p__Classrooms__Lists__ProgramHomework__Detail__answer__Add__index",2659:"p__User__Detail__UserPortrait__index",2707:"p__Innovation__MyDataSet__index",2806:"p__User__Detail__Topics__Exercise__Detail__index",2819:"p__Classrooms__Lists__Template__detail__index",2823:"p__Engineering__Navigation__Home__index",2829:"p__Messages__Private__index",2862:"p__User__ThemeChange__ExperImentImg",2865:"p__Innovation__MyMirror__index",2884:"p__Classrooms__Lists__ProgramHomework__Comment__index",3006:"p__Engineering__index",3086:"p__Shixuns__Detail__ForkList__ThemeChange__index",3141:"p__Innovation__Detail__index",3157:"p__User__Detail__ExperImentImg__Add__index",3183:"p__Engineering__Lists__GraduationIndex__index",3212:"p__MoopCases__index",3220:"p__Classrooms__Lists__Video__Upload__index",3247:"p__Paperlibrary__See__index",3260:"p__Paperlibrary__Add__index",3276:"p__Classrooms__Lists__Statistics__UserportraitStatistics__index",3317:"p__Classrooms__Lists__Graduation__Topics__Add__index",3391:"p__Classrooms__Lists__ProgramHomework__Detail__components__CodeReview__Detail__index",3433:"p__Classrooms__Lists__Exercise__Sumup__Edit__index",3442:"p__Classrooms__Lists__Board__Add__index",3447:"p__User__Detail__Order__pages__orderInformation__index",3451:"p__Classrooms__Lists__Statistics__StudentStatistics__Detail__index",3509:"p__HttpStatus__SixActivities",3581:"p__Shixuns__Detail__Collaborators__ThemeChange__index",3585:"p__Classrooms__Lists__Statistics__StudentSituation__index",3665:"p__tasks__index",3668:"p__Classrooms__Lists__CommonHomework__Detail__index",3747:"p__virtualSpaces__Lists__Homepage__index",3784:"p__Paperlibrary__Random__Detail__index",3831:"p__User__ThemeChange__VirtualSpaces",3862:"p__HttpStatus__403",3873:"p__virtualSpaces__Lists__Lesson__index",3910:"p__HttpStatus__introduction",3951:"p__Classrooms__Lists__ProgramHomework__Detail__index",4017:"p__Classrooms__Lists__PlaceholderPage__index",4030:"p__Classrooms__Lists__ProgramHomework__AddAndEdit__index",4048:"p__Forums__ThemeChange__index",4056:"p__IntrainCourse__index",4058:"p__Demo__index",4078:"p__Messages__Tidings__index",4093:"p__Classrooms__Lists__Attendance__Detail__index",4105:"p__Classrooms__Lists__Exercise__Answer__index",4144:"p__Problemset__Preview__New__index",4164:"p__Classrooms__Lists__Exercise__Detail__index",4216:"p__Classrooms__Lists__ProgramHomework__Detail__answer__Edit__index",4217:"p__Classrooms__Lists__Video__Statistics__index",4227:"p__Paths__Overview__index",4259:"p__User__Detail__Order__pages__result__index",4264:"p__Forums__New__index",4297:"p__Classrooms__ThemeChange__Polls",4449:"p__Competitions__Exports__index",4492:"p__Graduations__Lists__StudentSelection__index",4496:"p__HttpStatus__HpcCourse",4498:"p__Shixuns__Edit__body__Level__Challenges__NewPractice__index",4504:"p__virtualSpaces__Lists__Survey__index",4514:"p__Account__Results__index",4520:"p__Account__Secure__index",4546:"p__Engineering__Lists__TrainingProgram__Add__index",4565:"p__HttpStatus__500",4572:"p__Classrooms__Lists__ExportList__index",4599:"p__Problemset__index",4601:"p__Paths__Detail__Statistics__index",4610:"p__User__Detail__LearningPath__index",4621:"p__Administration__Profession__index",4662:"p__Classrooms__Lists__GroupHomework__Review__index",4715:"p__virtualSpaces__Lists__Material__Detail__index",4736:"p__User__Detail__Projects__index",4741:"p__Problems__OjForm__NewEdit__index",4757:"p__virtualSpaces__Lists__Workplace__index",4766:"p__Administration__index",4770:"p__Classrooms__Lists__ProgramHomework__Detail__answer__index",4795:"p__Classrooms__Lists__Graduation__Tasks__Add__index",4800:"p__Engineering__Lists__GraduatedMatrix__index",4889:"p__Classrooms__Lists__Exercise__ImitateAnswer__index",4928:"p__Classrooms__Lists__LearningPath__index",4973:"p__Engineering__Evaluate__List__index",4994:"p__Problems__OjForm__index",5022:"p__Graduations__Lists__Settings__index",5043:"p__User__Detail__Topics__Poll__Edit__index",5048:"p__Classrooms__Lists__Graduation__Topics__index",5096:"p__Shixuns__Detail__AuditSituation__index",5111:"p__Terminal__index",5117:"p__User__ThemeChange__Certificate",5125:"p__Classrooms__Lists__Exercise__DetailedAnalysis__index",5148:"p__Classrooms__Lists__Polls__Answer__index",5165:"p__User__ThemeChange__Topics",5176:"p__User__Detail__Videos__Protocol__index",5177:"p__Classrooms__ThemeChange__Teachers",5179:"p__Administration__Student__Edit__index",5186:"p__Classrooms__Overview__index",5230:"p__Shixuns__Detail__Repository__AddFile__ThemeChange__index",5238:"p__virtualSpaces__Lists__Material__index",5297:"p__Classrooms__Lists__Exercise__Detail__components__DuplicateChecking__CheckDetail__index",5319:"p__Classrooms__Lists__ProgramHomework__Detail__answer__Detail__index",5330:"p__Classrooms__ThemeChange__ShixunHomeworksComment",5335:"p__Engineering__Lists__CourseMatrix__index",5357:"p__Engineering__Lists__TrainingProgram__Edit__index",5359:"p__Messages__Detail__index",5382:"p__DataSet__Detail__index",5402:"p__User__Detail__Topics__Detail__index",5466:"p__Classrooms__ThemeChange__LiveVideo",5518:"p__Classrooms__Lists__Template__index",5549:"p__Shixuns__New__CreateImg__index",5572:"p__Paths__HigherVocationalEducation__index",5573:"p__Shixuns__Detail__Merge__index",5624:"p__Graduations__Lists__Index__index",5650:"p__Competitions__Update__index",5694:"p__Classrooms__ThemeChange__ShixunHomeworksDetail",5705:"p__virtualSpaces__Lists__Construction__index",5729:"p__Help__Index",5775:"p__Engineering__Lists__Document__index",5776:"p__User__ThemeChange__RealNameCertification",5786:"layouts__LoginAndRegister__index",5798:"p__Classrooms__Lists__Video__Statistics__UserDetail__index",5800:"p__User__ThemeChange__Competitions",5816:"p__Paperlibrary__Random__Edit__index",5888:"p__Classrooms__Lists__CommonHomework__Add__index",5891:"p__virtualSpaces__Lists__Resources__index",5894:"p__Shixuns__Detail__Repository__Commit__ThemeChange__index",5902:"p__Classrooms__Lists__Exercise__Sumup__index",5915:"p__knowledgegraph__Detail__Statistics__index",5972:"layouts__user__index",5992:"p__Classrooms__Lists__Exercise__ReviewGroup__index",6029:"p__Administration__Student__index",6034:"p__HttpStatus__UserAgents",6063:"p__Graduations__Lists__Personmanage__index",6069:"p__virtualSpaces__Lists__Lesson__Detail__index",6127:"p__Classrooms__Lists__ProgramHomework__Ranking__index",6170:"p__HttpStatus__downloadStudent",6185:"p__Classrooms__ThemeChange__Announcement",6265:"p__virtualSpaces__Lists__Discussion__index",6270:"p__MyProblem__index",6282:"p__Classrooms__ThemeChange__ProgramHomework",6328:"p__Shixuns__Edit__body__Warehouse__index",6366:"p__Innovation__PublicProject__index",6434:"p__User__Detail__Order__pages__records__index",6444:"p__Video__Detail__id",6452:"p__Innovation__PublicDataSet__index",6531:"p__HttpStatus__404",6583:"p__User__Detail__Classrooms__index",6587:"p__User__Detail__Videos__Protocol__resource",6634:"p__Innovation__Tasks__index",6637:"p__Shixuns__Detail__Repository__ThemeChange__index",6651:"p__Engineering__Evaluate__Detail__index",6682:"p__User__ThemeChange__Shixuns",6685:"p__Classrooms__Index__index",6729:"p__Classrooms__Lists__GroupHomework__Edit__index",6741:"p__Engineering__Norm__List__index",6776:"p__Classrooms__ThemeChange__Exercise",6784:"p__Innovation__Edit__index",6788:"p__Home__Detail__ShixunContext__Detail__index",6789:"p__Classrooms__ThemeChange__index",6796:"p__virtualSpaces__Lists__Announcement__Detail__index",6820:"p__User__Detail__Topics__Normal__index",6882:"p__Classrooms__New__StartClass__index",6883:"p__Competitions__Index__index",6904:"p__MoopCases__FormPanel__index",6913:"p__Question__AddOrEdit__index",6963:"p__Classrooms__Lists__Engineering__Detail__index",7008:"p__Shixuns__New__index",7043:"p__User__Detail__Topics__Exercise__Edit__index",7045:"p__Classrooms__Lists__CommonHomework__SubmitWork__index",7058:"p__virtualSpaces__Lists__Survey__Detail__index",7062:"layouts__SimpleLayouts",7178:"p__User__BindAccount__index",7182:"p__User__ResetPassword__index",7242:"p__Innovation__MyProject__index",7260:"p__Account__Certification__index",7322:"layouts__ThemeChange__ShixunDetail",7329:"p__Classrooms__ThemeChange__Attendance",7333:"p__User__WechatLogin__index",7395:"p__Classrooms__Lists__Statistics__StudentDetail__index",7402:"p__User__ThemeChange__OtherResources",7460:"p__Question__OjProblem__index",7477:"p__virtualSpaces__Lists__Announcement__index",7482:"p__Classrooms__Lists__Exercise__Notice__index",7527:"p__MyProblem__RecordDetail__index",7545:"p__Graduations__Lists__Archives__index",7560:"p__Administration__College__index",7589:"p__virtualSpaces__Lists__DigitalTopics__index",7614:"p__Shixuns__Edit__body__Level__Challenges__RankingSetting__index",7622:"p__Classrooms__Lists__Polls__Detail__index",7806:"p__Classrooms__Lists__Statistics__StatisticsQuality__index",7835:"p__Problemset__ThemeChange__index",7855:"p__User__Detail__ResourcesCenter__Detail__index",7857:"p__Shixuns__Edit__body__Level__Challenges__NewQuestion__index",7884:"p__Shixuns__Exports__index",7922:"p__Classrooms__Lists__CourseGroup__Detail__index",8062:"p__User__Detail__Topicbank__index",8072:"p__Classrooms__Lists__GroupHomework__SubmitWork__index",8085:"p__Classrooms__Lists__Exercise__Review__index",8115:"p__User__ThemeChange__DataSet",8143:"layouts__GraduationsDetail__index",8145:"p__User__ThemeChange__ClassManagementItem",8155:"p__Shixuns__Overview__index",8217:"p__User__ThemeChange__AccountInfoEdit",8237:"p__User__Detail__Order__pages__view__index",8241:"p__virtualSpaces__Lists__Plan__index",8286:"p__User__ThemeChange__ExperImentImgDetail",8332:"p__User__ThemeChange__Detail",8340:"p__Classrooms__Lists__Attendance__Webview__Student__index",8365:"p__Home__Detail__ShixunContext__index",8398:"p__virtualSpaces__Lists__Resources__Detail__index",8431:"p__Classrooms__Lists__Exercise__Export__index",8435:"p__Classrooms__Lists__Attendance__index",8447:"p__virtualSpaces__Lists__Knowledge__index",8458:"p__Classrooms__ThemeChange__CommonHomework",8479:"p__User__ThemeChange__TeachGroup",8517:"p__User__Detail__Topics__Group__index",8552:"p__Shixuns__ThemeChange__index",8563:"p__virtualSpaces__Lists__Discussion__Detail__index",8639:"p__Forums__Index__redirect",8665:"p__Engineering__Lists__TrainingObjectives__index",8688:"p__Shixuns__Detail__Repository__index",8689:"p__Classrooms__Lists__Statistics__VideoStatistics__index",8723:"p__Classrooms__Lists__Polls__Edit__index",8787:"p__Competitions__Entered__index",8797:"p__Competitions__Edit__index",8823:"p__knowledgegraph__Detail__id",8827:"p__Classrooms__Lists__OnlineLearning__index",8866:"p__index",8882:"p__Classrooms__Lists__Graduation__Tasks__Detail__index",8885:"p__Classrooms__Lists__Statistics__StudentStatistics__index",8965:"p__Shixuns__Detail__Discuss__ThemeChange__index",8982:"p__Paths__New__index",8999:"p__Three__index",9039:"p__Classrooms__ThemeChange__CourseGroup",9076:"p__Account__Binding__index",9205:"p__Shixuns__Edit__body__Level__Challenges__EditPracticeSetting__index",9366:"p__User__Login__index",9391:"p__Engineering__Lists__CurseSetting__index",9404:"monaco-editor",9406:"p__Classrooms__ThemeChange__Board",9408:"p__Shixuns__Detail__RankingList__index",9416:"p__Graduations__Lists__Tasks__index",9417:"p__Shixuns__ThemeOne__Detail__SkillTags__index",9449:"p__Shixuns__ThemeChange__Detail",9487:"p__LargeScreen__index",9489:"p__Engineering__Lists__CourseList__index",9507:"p__User__Detail__ResourceGuarantee__index",9511:"p__Shixuns__ThemeChange__Edit",9647:"p__Question__Index__index",9649:"p__Engineering__Lists__TrainingProgram__index",9674:"p__Shixuns__New__ImagePreview__index",9677:"p__virtualSpaces__Lists__Announcement__AddAndEdit__index",9695:"p__Classrooms__Lists__Polls__Add__index",9715:"p__Classrooms__Lists__CommonHomework__Edit__index",9716:"p__Question__OjProblem__RecordDetail__index",9785:"p__Classrooms__Lists__Template__student__index",9788:"p__Account__Profile__index",9814:"p__Shixuns__Detail__Challenges__ThemeChange__index",9891:"p__User__Detail__Videos__Success__index",9906:"p__Paths__ThemeChange__index",9921:"p__Classrooms__ExamList__index",9922:"p__Classrooms__Lists__Statistics__StudentVideo__index",9944:"p__Classrooms__Lists__Video__Statistics__StudentDetail__index"}[d]||d)+"."+{26:"e69b28bf",67:"28126695",109:"d3137170",119:"403f3c29",169:"13ef4921",195:"6f5e3e6a",201:"96777e8e",264:"e0ee5d91",292:"6b035229",316:"1f60ada6",337:"453ae002",354:"d4d139cf",369:"09bcb594",425:"9394f46d",434:"139744af",479:"ab37375f",485:"f7b5567d",508:"48493c85",518:"d1505f70",532:"5a1bf022",533:"72703675",547:"24bbee7d",556:"5b4c82b3",559:"71b92a85",570:"1964b04c",576:"776387e0",599:"ed444d24",629:"44a1d9a5",643:"08b191d2",671:"4a609b8d",680:"bef5848a",700:"5037b915",737:"880387f6",741:"ac5fd360",799:"fb134f5f",869:"7ccdfb9d",879:"91cc99e9",895:"b25eaf83",900:"9a210617",906:"5919d7f6",921:"f793a5d6",928:"3beb70a2",981:"24da50c7",1006:"4fdf45a1",1043:"58e4b1c5",1045:"2f073553",1048:"726b6ffa",1070:"b6fb788c",1144:"c90eccaf",1154:"8cb80842",1211:"ae1a84ea",1253:"0fa1f7f8",1257:"d207664b",1274:"5f6ea65a",1276:"5a16a6b9",1343:"0c65b530",1423:"1abf9902",1427:"9fbf6218",1450:"c7c58e3b",1461:"eaae332e",1462:"fcf08abc",1470:"0a231e88",1475:"2f169fa0",1477:"2ebc9ce0",1482:"15e6fd08",1512:"481eda40",1520:"43f03bf7",1545:"c9fb6de0",1578:"62da996e",1581:"4f84cf78",1582:"3fa838b1",1646:"e6e27b60",1657:"16be2d63",1660:"a914fab0",1674:"a2c0b869",1678:"8aff99d8",1702:"dc12d586",1713:"42a38339",1717:"4f4f4f14",1727:"62f9652a",1754:"1486baea",1783:"2294c368",1798:"aca361d9",1799:"c931697e",1831:"a84c0548",1836:"2e42f320",1855:"a387e74d",1880:"6e4695f3",1897:"03d855cb",1939:"08596d30",1953:"be061902",1962:"5bbf3ebf",1993:"aa3afa8f",2011:"59d51f98",2045:"0f5dc5b3",2099:"69c79eec",2102:"2fe6680d",2130:"f6dd3a9f",2141:"f3b51482",2203:"9526e19b",2216:"08a16362",2240:"2def296c",2249:"f4830452",2281:"86231e34",2300:"f7b34b30",2303:"b7051e46",2307:"00c2a4a4",2338:"32363720",2339:"919c8af7",2364:"f89faf70",2386:"192e235c",2396:"fb6c65a5",2404:"001097da",2412:"8a7fb7d8",2425:"33c9399c",2443:"f9349c44",2476:"210e89c9",2494:"68080a87",2501:"4ddf01a7",2538:"de4a3723",2539:"8908149b",2548:"aa53f43d",2570:"fe972c3d",2594:"e87d3761",2603:"85e48726",2659:"f48a81e1",2707:"3cff66ab",2806:"b7d481d5",2819:"eab8b9d0",2823:"9fc0dad0",2829:"d9e8872b",2837:"54a82605",2862:"329a8716",2865:"d68cbc45",2884:"e3692ea7",2969:"ab3357d7",3006:"c4f4299c",3086:"7c1e6e65",3133:"9bf3f89c",3141:"87221091",3157:"f5710129",3183:"4298bea9",3198:"8e655451",3212:"b9b65907",3220:"8aead32e",3247:"73e5cde1",3260:"eefaa592",3276:"bfb2709e",3317:"4e335d81",3391:"2339c785",3433:"6cf67fa8",3442:"dc2d77c3",3447:"6ca8e642",3451:"fd8cb4dc",3509:"1e3d94fa",3550:"3dc83156",3581:"63928fb2",3585:"54661655",3665:"41b1c4dc",3668:"49405acd",3697:"481a10d9",3747:"96b1b0ed",3754:"28bcba43",3777:"d5b0f2f1",3784:"546ec2f3",3805:"9dbcb95e",3831:"c9b47e35",3862:"43117f72",3873:"330b2220",3885:"f87f7f15",3910:"0b62f685",3951:"b2884421",3987:"5cecd51b",4014:"27a8e97c",4017:"55e12afd",4030:"2813371a",4048:"34e1cc75",4056:"c6f13889",4058:"82246f46",4078:"305ddafc",4088:"236723f3",4093:"6988fd73",4105:"9dda85eb",4144:"36e28d75",4164:"9e01a23e",4216:"1920b017",4217:"3b371a91",4227:"5c2be771",4259:"2b33253d",4264:"9b5cde7e",4297:"2d789ca2",4347:"ce21ef2e",4354:"140899b7",4360:"cf5efa52",4449:"64fddfc3",4492:"5d2e52fc",4496:"866d80ea",4498:"ad11fff5",4504:"eba55560",4514:"37fb9cb3",4520:"92a99912",4546:"4ff9dda7",4565:"ae294bdd",4572:"240f449e",4599:"61def4cb",4601:"4be4a179",4610:"f5c81eeb",4621:"d3fea8aa",4628:"ece2c60c",4662:"05914d82",4685:"c33f1528",4715:"1e29cef8",4736:"625410b0",4741:"5fc5fb24",4757:"f22496c0",4766:"851589b4",4770:"96f46d9f",4790:"619413e4",4795:"f217b3dc",4797:"a24e92db",4800:"ab76d82c",4850:"1edda4b7",4889:"851310c9",4928:"ca2a4a00",4973:"5eeb8c97",4994:"1c459cde",5022:"f67f11ac",5043:"45707a79",5048:"f32f3168",5060:"85dafcc6",5096:"d6281379",5111:"8843ac55",5117:"2848ec80",5125:"49a0dea0",5148:"abd1b0bb",5165:"7f9dc097",5176:"1f54faf1",5177:"295d6504",5179:"0a344501",5186:"76d2b5d0",5230:"7651e91a",5238:"06a47f37",5265:"79cc0d63",5290:"5dabcdc2",5297:"506b59ff",5319:"60523ac1",5321:"1163c84e",5330:"a00ebe44",5335:"da8e7f46",5354:"7ae70604",5357:"cd2f91b8",5359:"f4695da1",5382:"c74be7bd",5402:"3b8aa26e",5416:"454536b7",5434:"38b302a6",5466:"4760ffc4",5494:"d89549c4",5518:"1abf5a68",5549:"7c8ec009",5572:"58d6df49",5573:"0697e410",5624:"755298a4",5631:"e00d3d36",5650:"931e21ad",5679:"4a090bef",5694:"94ff4342",5705:"956a5d8e",5729:"3bb0375f",5764:"e0d7e586",5775:"2b5bf437",5776:"b787bdd3",5786:"a972d493",5798:"8115a862",5800:"680b9730",5816:"d0d1ac07",5876:"5eded409",5888:"b2f9e6cc",5891:"aec4757c",5894:"0980d4f2",5902:"621d8db7",5915:"b3592eb5",5972:"3a6561ef",5992:"c8481273",6029:"17913724",6034:"60caacfe",6045:"d268f87f",6047:"3ce45acd",6063:"7a817864",6069:"83d984e6",6126:"99519171",6127:"1c9a7836",6170:"dfcc006a",6185:"43fca115",6265:"5cec1a14",6270:"0378c2b5",6282:"214b6a37",6328:"6acf3318",6366:"afa3ef37",6378:"7f3a946a",6411:"3b971528",6434:"e6a221af",6444:"91c0c8bc",6452:"af18c979",6531:"5b8bb018",6583:"a035f535",6587:"733c8f73",6634:"253bff57",6637:"074b8d47",6651:"1c18516c",6656:"7e81cc97",6682:"dcce99a6",6685:"0d209540",6729:"a73d05b9",6741:"7b7d850d",6774:"59d4d618",6776:"6581c92e",6784:"73f9f6e8",6788:"d38f4500",6789:"38e14d72",6796:"0b3d7f27",6820:"cd17b315",6882:"259219e7",6883:"6cb80143",6904:"32b39fb4",6913:"193bdaae",6963:"9f18e819",7008:"68916dff",7043:"3d7898ce",7045:"4b64df2d",7058:"2cb26d8e",7062:"e0633d83",7084:"46ccce72",7156:"e7466006",7178:"80066754",7182:"09e4c243",7242:"d79c9b02",7260:"6123c48f",7322:"4f09b8af",7329:"fc599351",7333:"43cfa956",7365:"1005464f",7395:"db7c9e5c",7402:"1f80a7db",7460:"902166a3",7476:"18b1a1fa",7477:"b044be7b",7482:"3120816b",7527:"291c13b0",7545:"1d0d0ca2",7560:"38c2f6fb",7589:"b6ee7e22",7591:"c8233ce9",7614:"97f6c814",7622:"3450cab3",7686:"4fcec9f9",7706:"c2a79e40",7806:"e41e9b94",7835:"be3e3773",7855:"11ddc21f",7857:"91ee9735",7884:"4e91c64e",7890:"ca5e41c9",7922:"4e68199c",7963:"64ac60d4",7964:"29aed9a1",8062:"1b3381d9",8072:"40f970a6",8085:"962e0294",8089:"d536b13a",8115:"009cef53",8143:"9672c04a",8145:"06046fc1",8155:"d32d5053",8161:"83c5fa9a",8217:"d115cc70",8237:"038e2b1b",8241:"73155728",8286:"a3ebada5",8302:"55794970",8332:"7d2eea69",8340:"35eeb8f5",8350:"07df8a75",8365:"7df206f5",8398:"9cdac641",8431:"63f00245",8435:"29ffda57",8447:"7f7729af",8458:"5488c1e9",8479:"8e5ef4da",8517:"b5995b14",8552:"c58c7cc8",8561:"333e8ec9",8563:"2adbab9d",8639:"ebbaf1d9",8665:"b449fad8",8688:"1214aeee",8689:"8d265159",8723:"022230ab",8737:"ce7dad23",8776:"0ad26240",8787:"f26b7201",8797:"11b26b16",8823:"77b0b93e",8827:"2e493f16",8842:"9f25a3e2",8866:"e147c0cc",8882:"f27a98d7",8885:"fb76ce24",8898:"d002bcd8",8909:"bf822f6b",8920:"7f82440c",8963:"790aecdd",8965:"5187a3ba",8982:"78d7fc41",8999:"8f775d6c",9039:"3da1acf2",9045:"6d1eb809",9076:"b772835c",9104:"bbcb2345",9205:"2df5e86c",9252:"0d791a59",9260:"cf5f8140",9366:"4447376a",9391:"6b29cb6d",9404:"9fcc3d3e",9406:"46173140",9408:"281caf93",9416:"fcb56593",9417:"4ae558ab",9442:"5289c368",9449:"43041973",9487:"363b6105",9489:"0bdb6ca7",9507:"a3616a6c",9511:"7ae880ef",9554:"ed358e7b",9559:"f794af19",9647:"934212ce",9649:"44c30146",9674:"1cac19f7",9677:"f306d1b3",9695:"d8533fe2",9715:"4366300c",9716:"08598cab",9785:"176dc5e2",9788:"822ea7d4",9814:"e5bbb96a",9891:"9ed12111",9895:"b8e31ff2",9906:"306dd3e4",9921:"a5a5c011",9922:"b813a588",9928:"5989f5e0",9944:"b9c5a1dc",9950:"74f6dfb2",9968:"17466785"}[d]+".async.js"}}(),function(){__webpack_require__.miniCssF=function(d){return""+({26:"p__Classrooms__Lists__Graduation__Tasks__Edit__index",67:"p__Message__index",109:"p__Classrooms__Lists__ShixunHomeworks__Detail__components__CodeReview__Detail__index",119:"p__User__ThemeChange__Paths",195:"p__Classrooms__Lists__GroupHomework__Detail__index",201:"p__Classrooms__ThemeChange__Students",264:"p__User__Detail__Order__pages__orderPay__index",292:"p__Classrooms__Lists__Exercise__Add__index",337:"p__Paperlibrary__Random__PreviewEdit__index",479:"p__Classrooms__Lists__GroupHomework__EditWork__index",485:"p__Question__AddOrEdit__BatchAdd__index",508:"p__Forums__Detail__id",518:"p__Shixuns__Detail__Settings__ThemeChange__index",532:"p__ExcellentCourse__index",533:"p__Classrooms__Lists__Video__Statistics__Detail__index",547:"p__Account__index",556:"p__User__Detail__Order__pages__invoice__index",559:"layouts__virtualDetail__index",576:"p__Account__Profile__Edit__index",643:"p__Classrooms__Lists__Polls__QuestionnaireInfo__index",680:"p__Innovation__index",700:"p__tasks__Jupyter__index",737:"p__Classrooms__Lists__CommonHomework__Detail__components__CodeReview__Detail__index",799:"p__User__Detail__Topics__Poll__Detail__index",869:"p__Guidance__index",879:"p__User__ThemeChange__AccountInfo",895:"p__Classrooms__Lists__Video__Items__videoInfo__index",900:"p__User__ThemeChange__Classrooms",906:"p__User__ThemeChange__CareerCertification",921:"p__Classrooms__Lists__Exercise__CodeDetails__index",928:"p__RestFul__Edit__index",1006:"p__RestFul__index",1043:"p__Classrooms__Lists__Graduation__Tasks__index",1045:"p__virtualSpaces__Lists__Knowledge__AddAndEdit__index",1048:"p__Classrooms__Lists__ProgramHomework__Detail__Ranking__index",1070:"p__Innovation__PublicMirror__index",1211:"p__Classrooms__Lists__CommonHomework__EditWork__index",1253:"p__Graduations__Lists__Gradingsummary__index",1257:"p__Classrooms__Lists__ResourceRecommend__index",1276:"p__MoopCases__Success__index",1343:"p__User__Detail__ResourceAllocation__index",1423:"p__Shixuns__Edit__body__Level__Challenges__EditPracticeAnswer__index",1427:"p__Classrooms__Lists__Statistics__index",1450:"p__Classrooms__Lists__ShixunHomeworks__Commitsummary__index",1461:"p__Graduations__Lists__Topics__index",1470:"p__User__Register__index",1475:"p__Shixuns__Detail__Dataset__JupyterData__index",1477:"p__Classrooms__ThemeChange__Assistant",1482:"p__Classrooms__Lists__Graduation__Topics__Edit__index",1512:"p__Classrooms__Lists__Exercise__AnswerCheck__index",1520:"p__Engineering__Lists__StudentList__index",1545:"p__Paperlibrary__Random__ExchangeFromProblemSet__index",1578:"p__Classrooms__Lists__Graduation__Topics__Detail__index",1581:"p__Problemset__Preview__index",1582:"p__Classrooms__Lists__GroupHomework__Add__index",1657:"p__Shixuns__Edit__body__Level__Challenges__EditQuestion__index",1674:"p__Classrooms__ClassicCases__index",1678:"p__Classrooms__ThemeChange__Attachment",1702:"p__Classrooms__New__index",1713:"p__virtualSpaces__Lists__Settings__index",1717:"layouts__index",1727:"p__Classrooms__Lists__CourseGroup__NotList__index",1754:"p__Classrooms__ThemeChange__Video",1783:"p__virtualSpaces__Lists__Experiment__index",1798:"p__Classrooms__ThemeChange__GroupHomework",1831:"p__Graduations__Index__index",1836:"p__Classrooms__Lists__Attendance__Webview__Teacher__index",1855:"p__MoopCases__InfoPanel__index",1880:"p__User__Detail__Order__pages__apply__index",1897:"p__User__ThemeChange__ClassManagement",1939:"p__User__Detail__Order__index",1953:"p__Problemset__NewItem__index",1962:"p__Classrooms__Lists__Engineering__index",1993:"p__Shixuns__Detail__Dataset__ThemeChange__index",2045:"p__Engineering__Lists__TeacherList__index",2099:"p__Paperlibrary__ThemeChange__index",2102:"p__Classrooms__Lists__Board__Edit__index",2130:"p__Shixuns__Detail__Repository__UploadFile__ThemeChange__index",2141:"p__Shixuns__Detail__Split__index",2203:"p__Classrooms__ThemeChange__ShixunHomeworks",2216:"p__DataSet__Index__index",2240:"p__User__Detail__Videos__Upload__index",2281:"p__Paths__ThemeChange__Detail",2303:"p__Classrooms__Lists__CommonHomework__Comment__index",2307:"p__Report__index",2338:"p__Classrooms__Lists__CommonHomework__Review__index",2339:"p__virtualSpaces__Lists__Plan__Detail__index",2396:"p__User__Detail__ResourcesCenter__index",2404:"p__Classrooms__Lists__Template__teacher__index",2412:"p__User__Detail__Videos__index",2425:"p__Classrooms__Lists__Board__Detail__index",2443:"p__Graduations__Lists__StageModule__index",2476:"p__Colleges__index",2501:"p__Search__index",2539:"p__Graduations__Review__index",2548:"p__Engineering__Norm__Detail__index",2570:"p__Competitions__Detail__index",2603:"p__Classrooms__Lists__ProgramHomework__Detail__answer__Add__index",2659:"p__User__Detail__UserPortrait__index",2707:"p__Innovation__MyDataSet__index",2806:"p__User__Detail__Topics__Exercise__Detail__index",2819:"p__Classrooms__Lists__Template__detail__index",2823:"p__Engineering__Navigation__Home__index",2829:"p__Messages__Private__index",2862:"p__User__ThemeChange__ExperImentImg",2865:"p__Innovation__MyMirror__index",2884:"p__Classrooms__Lists__ProgramHomework__Comment__index",3006:"p__Engineering__index",3086:"p__Shixuns__Detail__ForkList__ThemeChange__index",3141:"p__Innovation__Detail__index",3157:"p__User__Detail__ExperImentImg__Add__index",3183:"p__Engineering__Lists__GraduationIndex__index",3212:"p__MoopCases__index",3220:"p__Classrooms__Lists__Video__Upload__index",3247:"p__Paperlibrary__See__index",3260:"p__Paperlibrary__Add__index",3276:"p__Classrooms__Lists__Statistics__UserportraitStatistics__index",3317:"p__Classrooms__Lists__Graduation__Topics__Add__index",3391:"p__Classrooms__Lists__ProgramHomework__Detail__components__CodeReview__Detail__index",3433:"p__Classrooms__Lists__Exercise__Sumup__Edit__index",3442:"p__Classrooms__Lists__Board__Add__index",3447:"p__User__Detail__Order__pages__orderInformation__index",3451:"p__Classrooms__Lists__Statistics__StudentStatistics__Detail__index",3509:"p__HttpStatus__SixActivities",3581:"p__Shixuns__Detail__Collaborators__ThemeChange__index",3585:"p__Classrooms__Lists__Statistics__StudentSituation__index",3665:"p__tasks__index",3668:"p__Classrooms__Lists__CommonHomework__Detail__index",3747:"p__virtualSpaces__Lists__Homepage__index",3784:"p__Paperlibrary__Random__Detail__index",3831:"p__User__ThemeChange__VirtualSpaces",3873:"p__virtualSpaces__Lists__Lesson__index",3910:"p__HttpStatus__introduction",3951:"p__Classrooms__Lists__ProgramHomework__Detail__index",4030:"p__Classrooms__Lists__ProgramHomework__AddAndEdit__index",4048:"p__Forums__ThemeChange__index",4056:"p__IntrainCourse__index",4078:"p__Messages__Tidings__index",4093:"p__Classrooms__Lists__Attendance__Detail__index",4105:"p__Classrooms__Lists__Exercise__Answer__index",4144:"p__Problemset__Preview__New__index",4164:"p__Classrooms__Lists__Exercise__Detail__index",4216:"p__Classrooms__Lists__ProgramHomework__Detail__answer__Edit__index",4217:"p__Classrooms__Lists__Video__Statistics__index",4227:"p__Paths__Overview__index",4259:"p__User__Detail__Order__pages__result__index",4264:"p__Forums__New__index",4297:"p__Classrooms__ThemeChange__Polls",4449:"p__Competitions__Exports__index",4492:"p__Graduations__Lists__StudentSelection__index",4496:"p__HttpStatus__HpcCourse",4498:"p__Shixuns__Edit__body__Level__Challenges__NewPractice__index",4504:"p__virtualSpaces__Lists__Survey__index",4514:"p__Account__Results__index",4520:"p__Account__Secure__index",4546:"p__Engineering__Lists__TrainingProgram__Add__index",4572:"p__Classrooms__Lists__ExportList__index",4599:"p__Problemset__index",4601:"p__Paths__Detail__Statistics__index",4610:"p__User__Detail__LearningPath__index",4621:"p__Administration__Profession__index",4662:"p__Classrooms__Lists__GroupHomework__Review__index",4715:"p__virtualSpaces__Lists__Material__Detail__index",4736:"p__User__Detail__Projects__index",4741:"p__Problems__OjForm__NewEdit__index",4757:"p__virtualSpaces__Lists__Workplace__index",4766:"p__Administration__index",4770:"p__Classrooms__Lists__ProgramHomework__Detail__answer__index",4795:"p__Classrooms__Lists__Graduation__Tasks__Add__index",4800:"p__Engineering__Lists__GraduatedMatrix__index",4889:"p__Classrooms__Lists__Exercise__ImitateAnswer__index",4928:"p__Classrooms__Lists__LearningPath__index",4973:"p__Engineering__Evaluate__List__index",4994:"p__Problems__OjForm__index",5022:"p__Graduations__Lists__Settings__index",5043:"p__User__Detail__Topics__Poll__Edit__index",5048:"p__Classrooms__Lists__Graduation__Topics__index",5096:"p__Shixuns__Detail__AuditSituation__index",5111:"p__Terminal__index",5117:"p__User__ThemeChange__Certificate",5125:"p__Classrooms__Lists__Exercise__DetailedAnalysis__index",5148:"p__Classrooms__Lists__Polls__Answer__index",5165:"p__User__ThemeChange__Topics",5176:"p__User__Detail__Videos__Protocol__index",5177:"p__Classrooms__ThemeChange__Teachers",5179:"p__Administration__Student__Edit__index",5186:"p__Classrooms__Overview__index",5230:"p__Shixuns__Detail__Repository__AddFile__ThemeChange__index",5238:"p__virtualSpaces__Lists__Material__index",5297:"p__Classrooms__Lists__Exercise__Detail__components__DuplicateChecking__CheckDetail__index",5319:"p__Classrooms__Lists__ProgramHomework__Detail__answer__Detail__index",5330:"p__Classrooms__ThemeChange__ShixunHomeworksComment",5335:"p__Engineering__Lists__CourseMatrix__index",5357:"p__Engineering__Lists__TrainingProgram__Edit__index",5359:"p__Messages__Detail__index",5382:"p__DataSet__Detail__index",5402:"p__User__Detail__Topics__Detail__index",5466:"p__Classrooms__ThemeChange__LiveVideo",5518:"p__Classrooms__Lists__Template__index",5549:"p__Shixuns__New__CreateImg__index",5572:"p__Paths__HigherVocationalEducation__index",5573:"p__Shixuns__Detail__Merge__index",5624:"p__Graduations__Lists__Index__index",5650:"p__Competitions__Update__index",5694:"p__Classrooms__ThemeChange__ShixunHomeworksDetail",5705:"p__virtualSpaces__Lists__Construction__index",5729:"p__Help__Index",5775:"p__Engineering__Lists__Document__index",5776:"p__User__ThemeChange__RealNameCertification",5786:"layouts__LoginAndRegister__index",5798:"p__Classrooms__Lists__Video__Statistics__UserDetail__index",5800:"p__User__ThemeChange__Competitions",5816:"p__Paperlibrary__Random__Edit__index",5888:"p__Classrooms__Lists__CommonHomework__Add__index",5891:"p__virtualSpaces__Lists__Resources__index",5894:"p__Shixuns__Detail__Repository__Commit__ThemeChange__index",5915:"p__knowledgegraph__Detail__Statistics__index",5972:"layouts__user__index",5992:"p__Classrooms__Lists__Exercise__ReviewGroup__index",6029:"p__Administration__Student__index",6063:"p__Graduations__Lists__Personmanage__index",6069:"p__virtualSpaces__Lists__Lesson__Detail__index",6127:"p__Classrooms__Lists__ProgramHomework__Ranking__index",6185:"p__Classrooms__ThemeChange__Announcement",6265:"p__virtualSpaces__Lists__Discussion__index",6270:"p__MyProblem__index",6282:"p__Classrooms__ThemeChange__ProgramHomework",6328:"p__Shixuns__Edit__body__Warehouse__index",6366:"p__Innovation__PublicProject__index",6434:"p__User__Detail__Order__pages__records__index",6444:"p__Video__Detail__id",6452:"p__Innovation__PublicDataSet__index",6583:"p__User__Detail__Classrooms__index",6587:"p__User__Detail__Videos__Protocol__resource",6634:"p__Innovation__Tasks__index",6637:"p__Shixuns__Detail__Repository__ThemeChange__index",6651:"p__Engineering__Evaluate__Detail__index",6682:"p__User__ThemeChange__Shixuns",6685:"p__Classrooms__Index__index",6729:"p__Classrooms__Lists__GroupHomework__Edit__index",6741:"p__Engineering__Norm__List__index",6776:"p__Classrooms__ThemeChange__Exercise",6784:"p__Innovation__Edit__index",6789:"p__Classrooms__ThemeChange__index",6796:"p__virtualSpaces__Lists__Announcement__Detail__index",6820:"p__User__Detail__Topics__Normal__index",6882:"p__Classrooms__New__StartClass__index",6883:"p__Competitions__Index__index",6904:"p__MoopCases__FormPanel__index",6913:"p__Question__AddOrEdit__index",6963:"p__Classrooms__Lists__Engineering__Detail__index",7008:"p__Shixuns__New__index",7043:"p__User__Detail__Topics__Exercise__Edit__index",7045:"p__Classrooms__Lists__CommonHomework__SubmitWork__index",7058:"p__virtualSpaces__Lists__Survey__Detail__index",7062:"layouts__SimpleLayouts",7178:"p__User__BindAccount__index",7182:"p__User__ResetPassword__index",7242:"p__Innovation__MyProject__index",7260:"p__Account__Certification__index",7322:"layouts__ThemeChange__ShixunDetail",7329:"p__Classrooms__ThemeChange__Attendance",7395:"p__Classrooms__Lists__Statistics__StudentDetail__index",7402:"p__User__ThemeChange__OtherResources",7460:"p__Question__OjProblem__index",7477:"p__virtualSpaces__Lists__Announcement__index",7482:"p__Classrooms__Lists__Exercise__Notice__index",7527:"p__MyProblem__RecordDetail__index",7545:"p__Graduations__Lists__Archives__index",7560:"p__Administration__College__index",7589:"p__virtualSpaces__Lists__DigitalTopics__index",7614:"p__Shixuns__Edit__body__Level__Challenges__RankingSetting__index",7622:"p__Classrooms__Lists__Polls__Detail__index",7806:"p__Classrooms__Lists__Statistics__StatisticsQuality__index",7835:"p__Problemset__ThemeChange__index",7855:"p__User__Detail__ResourcesCenter__Detail__index",7857:"p__Shixuns__Edit__body__Level__Challenges__NewQuestion__index",7884:"p__Shixuns__Exports__index",7922:"p__Classrooms__Lists__CourseGroup__Detail__index",8062:"p__User__Detail__Topicbank__index",8072:"p__Classrooms__Lists__GroupHomework__SubmitWork__index",8085:"p__Classrooms__Lists__Exercise__Review__index",8115:"p__User__ThemeChange__DataSet",8143:"layouts__GraduationsDetail__index",8145:"p__User__ThemeChange__ClassManagementItem",8155:"p__Shixuns__Overview__index",8217:"p__User__ThemeChange__AccountInfoEdit",8237:"p__User__Detail__Order__pages__view__index",8241:"p__virtualSpaces__Lists__Plan__index",8286:"p__User__ThemeChange__ExperImentImgDetail",8332:"p__User__ThemeChange__Detail",8398:"p__virtualSpaces__Lists__Resources__Detail__index",8431:"p__Classrooms__Lists__Exercise__Export__index",8435:"p__Classrooms__Lists__Attendance__index",8447:"p__virtualSpaces__Lists__Knowledge__index",8458:"p__Classrooms__ThemeChange__CommonHomework",8479:"p__User__ThemeChange__TeachGroup",8517:"p__User__Detail__Topics__Group__index",8552:"p__Shixuns__ThemeChange__index",8563:"p__virtualSpaces__Lists__Discussion__Detail__index",8665:"p__Engineering__Lists__TrainingObjectives__index",8688:"p__Shixuns__Detail__Repository__index",8689:"p__Classrooms__Lists__Statistics__VideoStatistics__index",8723:"p__Classrooms__Lists__Polls__Edit__index",8787:"p__Competitions__Entered__index",8797:"p__Competitions__Edit__index",8823:"p__knowledgegraph__Detail__id",8827:"p__Classrooms__Lists__OnlineLearning__index",8866:"p__index",8882:"p__Classrooms__Lists__Graduation__Tasks__Detail__index",8885:"p__Classrooms__Lists__Statistics__StudentStatistics__index",8965:"p__Shixuns__Detail__Discuss__ThemeChange__index",8982:"p__Paths__New__index",8999:"p__Three__index",9039:"p__Classrooms__ThemeChange__CourseGroup",9076:"p__Account__Binding__index",9205:"p__Shixuns__Edit__body__Level__Challenges__EditPracticeSetting__index",9366:"p__User__Login__index",9391:"p__Engineering__Lists__CurseSetting__index",9404:"monaco-editor",9406:"p__Classrooms__ThemeChange__Board",9408:"p__Shixuns__Detail__RankingList__index",9416:"p__Graduations__Lists__Tasks__index",9449:"p__Shixuns__ThemeChange__Detail",9487:"p__LargeScreen__index",9489:"p__Engineering__Lists__CourseList__index",9507:"p__User__Detail__ResourceGuarantee__index",9511:"p__Shixuns__ThemeChange__Edit",9647:"p__Question__Index__index",9649:"p__Engineering__Lists__TrainingProgram__index",9674:"p__Shixuns__New__ImagePreview__index",9677:"p__virtualSpaces__Lists__Announcement__AddAndEdit__index",9695:"p__Classrooms__Lists__Polls__Add__index",9715:"p__Classrooms__Lists__CommonHomework__Edit__index",9716:"p__Question__OjProblem__RecordDetail__index",9785:"p__Classrooms__Lists__Template__student__index",9788:"p__Account__Profile__index",9814:"p__Shixuns__Detail__Challenges__ThemeChange__index",9891:"p__User__Detail__Videos__Success__index",9906:"p__Paths__ThemeChange__index",9921:"p__Classrooms__ExamList__index",9922:"p__Classrooms__Lists__Statistics__StudentVideo__index",9944:"p__Classrooms__Lists__Video__Statistics__StudentDetail__index"}[d]||d)+"."+{26:"91ed81ab",67:"2e3b86cc",109:"1a7fc455",119:"d7177160",195:"09f06554",201:"c090cf1f",264:"5fd9b3fc",292:"1fb46eb1",337:"f1e82d38",479:"bba9e475",485:"d63578fe",508:"82593858",518:"5b67f727",532:"397e11e5",533:"4c39d165",547:"5581debc",556:"3a0c45f8",559:"c49aa5ba",576:"e4f97d42",643:"22ded693",680:"e67e9e01",700:"fe136622",737:"98eb2f74",799:"3eacd344",869:"6740e24b",879:"44e65b8f",895:"ad846737",900:"4e52694c",906:"d5015af5",921:"30cc7e9b",928:"0277270a",1006:"2263131d",1043:"e8c0878b",1045:"cf50b737",1048:"dafc3f4f",1070:"e67e9e01",1211:"bdb8faab",1253:"6d030939",1257:"156e8f74",1276:"bbc6eeec",1343:"10a01d78",1423:"5c4a76fc",1427:"903cdf1d",1450:"1edcc2ed",1461:"90ffd881",1470:"183c9793",1475:"ffcfe1a4",1477:"2c54e2cf",1482:"d159af07",1512:"f3653a35",1520:"f7300d0e",1545:"eb7854e2",1578:"efcb0bdc",1581:"efffd7c0",1582:"8e45b6ff",1657:"ddd6a700",1674:"fdbc1e05",1678:"e51db9a4",1702:"fca45632",1713:"8f261115",1717:"08a9e890",1727:"55a0424d",1754:"3dd63b8a",1783:"c3af53d2",1798:"c5856ac9",1831:"04eb6cd5",1836:"5f0d3f7f",1855:"b92cccb4",1880:"2075d78a",1897:"c1b8b1e9",1939:"e1f4a044",1953:"948193ea",1962:"84e145fa",1993:"f0734931",2045:"dcfad42d",2099:"d6975c9d",2102:"ec61f9f0",2130:"6f8dec06",2141:"5eb2f330",2203:"4b770927",2216:"fd1923fe",2240:"e7cce869",2281:"a93b099a",2303:"87592c17",2307:"b2c54321",2338:"c9f2cb12",2339:"0ce16002",2396:"78b02416",2404:"08d36549",2412:"d56e89e2",2425:"47b23ee4",2443:"1cf9762d",2476:"cf85a190",2501:"2441982c",2539:"edaa4bfe",2548:"75182034",2570:"fb08fd52",2603:"0277270a",2659:"f6071a36",2707:"cabcb16e",2806:"e5eec853",2819:"9455b08a",2823:"a13b21fb",2829:"a5909474",2862:"7640e19b",2865:"6ef3cf6b",2884:"e40bd5de",3006:"7fce4e74",3086:"f9f3906d",3141:"5b061b52",3157:"8574a6a9",3183:"b2253f40",3212:"ad1521c1",3220:"a5be3990",3247:"50105eb7",3260:"cc275789",3276:"7bbb651d",3317:"137440b7",3391:"f0e498fe",3433:"0222b953",3442:"bdf7849c",3447:"1653d818",3451:"e3a31387",3509:"70043ca5",3581:"9294e30b",3585:"5f288e7b",3665:"8aa1b374",3668:"174e5af7",3747:"e8017222",3784:"c81d4a51",3831:"4f89de7f",3873:"00556e9c",3910:"658d457f",3951:"4a9249b1",4030:"5e11be1e",4048:"b373ea71",4056:"10eacfff",4078:"aa54548e",4093:"dbc7f087",4105:"e39011c7",4144:"f10aa199",4164:"a1035ae1",4216:"0277270a",4217:"387bf824",4227:"79c3b323",4259:"ebd953ac",4264:"36917df0",4297:"1fe09e32",4449:"e68d8d58",4492:"28c62416",4496:"77babddd",4498:"b05686dd",4504:"2337a5c1",4514:"887bdbb6",4520:"e86d61a1",4546:"4101a1f2",4572:"70e5675d",4599:"b738175f",4601:"3c8ac557",4610:"687005a6",4621:"57046c20",4662:"966d56e9",4715:"12ee76fe",4736:"db024242",4741:"37fda16f",4757:"73b754d2",4766:"b5df5a8e",4770:"674b2d2a",4795:"939f9f81",4800:"f50302a4",4889:"db5cf2c9",4928:"a4b1a237",4973:"129c56e8",4994:"be3194ef",5022:"81b1b86b",5043:"247e6954",5048:"aa08c681",5096:"4f6a4d00",5111:"5d09a39a",5117:"f53f8e0d",5125:"57501e4a",5148:"572faeac",5165:"ffd29c89",5176:"9c49e7fa",5177:"433880bf",5179:"21f01751",5186:"a366942d",5230:"d946e576",5238:"a5251253",5297:"5426028f",5319:"34217c3f",5330:"fde3562c",5335:"fec6fd9f",5357:"1fbb7d24",5359:"b254a598",5382:"e5edb107",5402:"3f57b82b",5466:"420e4b00",5518:"9f425be3",5549:"39285664",5572:"c945fbf2",5573:"6ecf393c",5624:"fc2c784f",5650:"f8f63f4b",5694:"2903ec3b",5705:"df6bf207",5729:"46f9b5d4",5775:"8945cad2",5776:"e2035183",5786:"37a81eaa",5798:"ce1cf7da",5800:"ccd296e6",5816:"7901bc8b",5888:"193a7f8f",5891:"06b0dab3",5894:"38929e12",5915:"bc9c3e69",5972:"c7a91e8e",5992:"419f5d2f",6029:"6248ea9b",6063:"ab3c406b",6069:"5aeb8885",6127:"f31505a8",6185:"6a82ea9a",6265:"da02c985",6270:"cc24b0fc",6282:"50cb3fd8",6328:"de2b9d62",6366:"079fc2d8",6434:"77f31a1a",6444:"fd46d237",6452:"50a6d310",6583:"e5a130f0",6587:"9c49e7fa",6634:"c8c00951",6637:"2a15e63e",6651:"b07fe216",6656:"03cdfb68",6682:"97d57e86",6685:"e00118f4",6729:"aea3b7f5",6741:"b838eb14",6776:"efed9083",6784:"1affe817",6789:"09cce941",6796:"89cd2eaa",6820:"cebdf1cf",6882:"c2d2eada",6883:"53646e1c",6904:"44afaa9b",6913:"739202fe",6963:"84e145fa",7008:"80535bd6",7043:"25478869",7045:"48f6fc4c",7058:"4cf0f058",7062:"a950c93b",7178:"6e47d75d",7182:"183c9793",7242:"4f353f61",7260:"2c380d56",7322:"89229a20",7329:"52737871",7395:"5c10e8d8",7402:"fa2fa462",7460:"dedd2038",7477:"d1715def",7482:"c37a3f01",7527:"6b64ff47",7545:"8cf68711",7560:"d82e43ca",7589:"ec6f07b0",7614:"de9ee12f",7622:"55761263",7806:"80b7b1d6",7835:"ae68a3e8",7855:"115abf43",7857:"13a29416",7884:"1ca6cde0",7922:"a51bbd1f",8062:"8e384b9f",8072:"540f746b",8085:"d8b79ff9",8115:"57221fd6",8143:"6fbcc414",8145:"745deb45",8155:"d345abd7",8217:"aaa9d538",8237:"b82ceaf1",8241:"89923da1",8286:"fe48ab9f",8332:"83551a28",8398:"6af0315c",8431:"60a111b6",8435:"5f24842a",8447:"28ad7e81",8458:"6f9d9bd6",8479:"5dd11d53",8517:"cccfddad",8552:"8fdb1688",8563:"710ab1fb",8665:"c52575bc",8688:"c044db56",8689:"5d3df231",8723:"ee8ed0dd",8787:"121de108",8797:"18e6ad26",8823:"07028b11",8827:"d42b3cb3",8866:"466d021f",8882:"f3e42f72",8885:"de905169",8965:"198f06e9",8982:"1971743f",8999:"448aa22f",9039:"fd36efa1",9076:"6a501148",9205:"49a3e67d",9366:"4f511490",9391:"c11edda0",9404:"d8cf04f7",9406:"d241e334",9408:"d3565b1a",9416:"0d65fe1b",9449:"0a1b6f5c",9487:"a73f5679",9489:"ee2bb5b7",9507:"bffb6174",9511:"2c862ab0",9647:"f594ebb1",9649:"00fb4211",9674:"7759ba3d",9677:"6b9f725e",9695:"200c96e4",9715:"b6c6645f",9716:"a5750e0d",9785:"08d36549",9788:"781a4d20",9814:"67554a30",9891:"512a9301",9906:"964bc457",9921:"e0db9101",9922:"33690872",9944:"1ba31055"}[d]+".chunk.css"}}(),function(){__webpack_require__.g=function(){if(typeof globalThis=="object")return globalThis;try{return this||new Function("return this")()}catch(d){if(typeof window=="object")return window}}()}(),function(){__webpack_require__.hmd=function(d){return d=Object.create(d),d.children||(d.children=[]),Object.defineProperty(d,"exports",{enumerable:!0,set:function(){throw new Error("ES Modules may not assign module.exports or exports.*, Use ESM export syntax, instead: "+d.id)}}),d}}(),function(){__webpack_require__.o=function(d,v){return Object.prototype.hasOwnProperty.call(d,v)}}(),function(){var d={};__webpack_require__.l=function(v,e,r,i){if(d[v]){d[v].push(e);return}var l,c;if(r!==void 0)for(var f=document.getElementsByTagName("script"),o=0;o{const N=Gi(t,s,W)||Gi(P,s,W)||Gi(_,s,W);return N&&(U[W]=N),U},{})}function Gi(P,t,n){return P&&P.hasAttributeNS(t,n)?P.getAttributeNS(t,n):null}function oa(P){return new Error(`Could not parse ttml timestamp ${P}`)}function ma(P,t){if(!P)return null;let n=Ks(P);return n===null&&(Sl.test(P)?n=ms(P,t):ic.test(P)&&(n=qi(P,t))),n}function ms(P,t){const n=Sl.exec(P),s=(n[4]|0)+(n[5]|0)/t.subFrameRate;return(n[1]|0)*3600+(n[2]|0)*60+(n[3]|0)+s/t.frameRate}function qi(P,t){const n=ic.exec(P),s=Number(n[1]);switch(n[2]){case"h":return s*3600;case"m":return s*60;case"ms":return s*1e3;case"f":return s/t.frameRate;case"t":return s/t.tickRate}return s}class is{constructor(t,n){this.timelineController=void 0,this.cueRanges=[],this.trackName=void 0,this.startTime=null,this.endTime=null,this.screen=null,this.timelineController=t,this.trackName=n}dispatchCue(){this.startTime!==null&&(this.timelineController.addCues(this.trackName,this.startTime,this.endTime,this.screen,this.cueRanges),this.startTime=null)}newCue(t,n,s){(this.startTime===null||this.startTime>t)&&(this.startTime=t),this.endTime=n,this.screen=s,this.timelineController.createCaptionsTrack(this.trackName)}reset(){this.cueRanges=[],this.startTime=null}}class Wu{constructor(t){this.hls=void 0,this.media=null,this.config=void 0,this.enabled=!0,this.Cues=void 0,this.textTracks=[],this.tracks=[],this.initPTS=[],this.unparsedVttFrags=[],this.captionsTracks={},this.nonNativeCaptionsTracks={},this.cea608Parser1=void 0,this.cea608Parser2=void 0,this.lastCc=-1,this.lastSn=-1,this.lastPartIndex=-1,this.prevCC=-1,this.vttCCs=ll(),this.captionsProperties=void 0,this.hls=t,this.config=t.config,this.Cues=t.config.cueHandler,this.captionsProperties={textTrack1:{label:this.config.captionsTextTrack1Label,languageCode:this.config.captionsTextTrack1LanguageCode},textTrack2:{label:this.config.captionsTextTrack2Label,languageCode:this.config.captionsTextTrack2LanguageCode},textTrack3:{label:this.config.captionsTextTrack3Label,languageCode:this.config.captionsTextTrack3LanguageCode},textTrack4:{label:this.config.captionsTextTrack4Label,languageCode:this.config.captionsTextTrack4LanguageCode}},t.on(o.MEDIA_ATTACHING,this.onMediaAttaching,this),t.on(o.MEDIA_DETACHING,this.onMediaDetaching,this),t.on(o.MANIFEST_LOADING,this.onManifestLoading,this),t.on(o.MANIFEST_LOADED,this.onManifestLoaded,this),t.on(o.SUBTITLE_TRACKS_UPDATED,this.onSubtitleTracksUpdated,this),t.on(o.FRAG_LOADING,this.onFragLoading,this),t.on(o.FRAG_LOADED,this.onFragLoaded,this),t.on(o.FRAG_PARSING_USERDATA,this.onFragParsingUserdata,this),t.on(o.FRAG_DECRYPTED,this.onFragDecrypted,this),t.on(o.INIT_PTS_FOUND,this.onInitPtsFound,this),t.on(o.SUBTITLE_TRACKS_CLEARED,this.onSubtitleTracksCleared,this),t.on(o.BUFFER_FLUSHING,this.onBufferFlushing,this)}destroy(){const{hls:t}=this;t.off(o.MEDIA_ATTACHING,this.onMediaAttaching,this),t.off(o.MEDIA_DETACHING,this.onMediaDetaching,this),t.off(o.MANIFEST_LOADING,this.onManifestLoading,this),t.off(o.MANIFEST_LOADED,this.onManifestLoaded,this),t.off(o.SUBTITLE_TRACKS_UPDATED,this.onSubtitleTracksUpdated,this),t.off(o.FRAG_LOADING,this.onFragLoading,this),t.off(o.FRAG_LOADED,this.onFragLoaded,this),t.off(o.FRAG_PARSING_USERDATA,this.onFragParsingUserdata,this),t.off(o.FRAG_DECRYPTED,this.onFragDecrypted,this),t.off(o.INIT_PTS_FOUND,this.onInitPtsFound,this),t.off(o.SUBTITLE_TRACKS_CLEARED,this.onSubtitleTracksCleared,this),t.off(o.BUFFER_FLUSHING,this.onBufferFlushing,this),this.hls=this.config=this.media=null,this.cea608Parser1=this.cea608Parser2=void 0}initCea608Parsers(){const t=new is(this,"textTrack1"),n=new is(this,"textTrack2"),s=new is(this,"textTrack3"),_=new is(this,"textTrack4");this.cea608Parser1=new vc(1,t,n),this.cea608Parser2=new vc(3,s,_)}addCues(t,n,s,_,E){let T=!1;for(let U=E.length;U--;){const W=E[U],N=ul(W[0],W[1],n,s);if(N>=0&&(W[0]=Math.min(W[0],n),W[1]=Math.max(W[1],s),T=!0,N/(s-n)>.5))return}if(T||E.push([n,s]),this.config.renderTextTracksNatively){const U=this.captionsTracks[t];this.Cues.newCue(U,n,s,_)}else{const U=this.Cues.newCue(null,n,s,_);this.hls.trigger(o.CUES_PARSED,{type:"captions",cues:U,track:t})}}onInitPtsFound(t,{frag:n,id:s,initPTS:_,timescale:E}){const{unparsedVttFrags:T}=this;s===u.MAIN&&(this.initPTS[n.cc]={baseTime:_,timescale:E}),T.length&&(this.unparsedVttFrags=[],T.forEach(U=>{this.onFragLoaded(o.FRAG_LOADED,U)}))}getExistingTrack(t,n){const{media:s}=this;if(s)for(let _=0;_{Ru(_[E]),delete _[E]}),this.nonNativeCaptionsTracks={}}onManifestLoading(){this.lastCc=-1,this.lastSn=-1,this.lastPartIndex=-1,this.prevCC=-1,this.vttCCs=ll(),this._cleanTracks(),this.tracks=[],this.captionsTracks={},this.nonNativeCaptionsTracks={},this.textTracks=[],this.unparsedVttFrags=[],this.initPTS=[],this.cea608Parser1&&this.cea608Parser2&&(this.cea608Parser1.reset(),this.cea608Parser2.reset())}_cleanTracks(){const{media:t}=this;if(!t)return;const n=t.textTracks;if(n)for(let s=0;sE.textCodec===Fu);if(this.config.enableWebVTT||_&&this.config.enableIMSC1){if(Gs(this.tracks,s)){this.tracks=s;return}if(this.textTracks=[],this.tracks=s,this.config.renderTextTracksNatively){const T=this.media,U=T?Ic(T.textTracks):null;if(this.tracks.forEach((W,N)=>{let te;if(U){let ce=null;for(let xe=0;xeN!==null).map(N=>N.label);W.length&&this.hls.logger.warn(`Media element contains unused subtitle tracks: ${W.join(", ")}. Replace media element for each source to clear TextTracks and captions menu.`)}}else if(this.tracks.length){const T=this.tracks.map(U=>({label:U.name,kind:U.type.toLowerCase(),default:U.default,subtitleTrack:U}));this.hls.trigger(o.NON_NATIVE_TEXT_TRACKS_FOUND,{tracks:T})}}}onManifestLoaded(t,n){this.config.enableCEA708Captions&&n.captions&&n.captions.forEach(s=>{const _=/(?:CC|SERVICE)([1-4])/.exec(s.instreamId);if(!_)return;const E=`textTrack${_[1]}`,T=this.captionsProperties[E];T&&(T.label=s.name,s.lang&&(T.languageCode=s.lang),T.media=s)})}closedCaptionsForLevel(t){const n=this.hls.levels[t.level];return n==null?void 0:n.attrs["CLOSED-CAPTIONS"]}onFragLoading(t,n){if(this.enabled&&n.frag.type===u.MAIN){var s,_;const{cea608Parser1:E,cea608Parser2:T,lastSn:U}=this,{cc:W,sn:N}=n.frag,te=(s=(_=n.part)==null?void 0:_.index)!=null?s:-1;E&&T&&(N!==U+1||N===U&&te!==this.lastPartIndex+1||W!==this.lastCc)&&(E.reset(),T.reset()),this.lastCc=W,this.lastSn=N,this.lastPartIndex=te}}onFragLoaded(t,n){const{frag:s,payload:_}=n;if(s.type===u.SUBTITLE)if(_.byteLength){const E=s.decryptdata,T="stats"in n;if(E==null||!E.encrypted||T){const U=this.tracks[s.level],W=this.vttCCs;W[s.cc]||(W[s.cc]={start:s.start,prevCC:this.prevCC,new:!0},this.prevCC=s.cc),U&&U.textCodec===Fu?this._parseIMSC1(s,_):this._parseVTTs(n)}}else this.hls.trigger(o.SUBTITLE_FRAG_PROCESSED,{success:!1,frag:s,error:new Error("Empty subtitle payload")})}_parseIMSC1(t,n){const s=this.hls;ac(n,this.initPTS[t.cc],_=>{this._appendCues(_,t.level),s.trigger(o.SUBTITLE_FRAG_PROCESSED,{success:!0,frag:t})},_=>{s.logger.log(`Failed to parse IMSC1: ${_}`),s.trigger(o.SUBTITLE_FRAG_PROCESSED,{success:!1,frag:t,error:_})})}_parseVTTs(t){var n;const{frag:s,payload:_}=t,{initPTS:E,unparsedVttFrags:T}=this,U=E.length-1;if(!E[s.cc]&&U===-1){T.push(t);return}const W=this.hls,N=(n=s.initSegment)!=null&&n.data?qe(s.initSegment.data,new Uint8Array(_)).buffer:_;cu(N,this.initPTS[s.cc],this.vttCCs,s.cc,s.start,te=>{this._appendCues(te,s.level),W.trigger(o.SUBTITLE_FRAG_PROCESSED,{success:!0,frag:s})},te=>{const ce=te.message==="Missing initPTS for VTT MPEGTS";ce?T.push(t):this._fallbackToIMSC1(s,_),W.logger.log(`Failed to parse VTT cue: ${te}`),!(ce&&U>s.cc)&&W.trigger(o.SUBTITLE_FRAG_PROCESSED,{success:!1,frag:s,error:te})})}_fallbackToIMSC1(t,n){const s=this.tracks[t.level];s.textCodec||ac(n,this.initPTS[t.cc],()=>{s.textCodec=Fu,this._parseIMSC1(t,n)},()=>{s.textCodec="wvtt"})}_appendCues(t,n){const s=this.hls;if(this.config.renderTextTracksNatively){const _=this.textTracks[n];if(!_||_.mode==="disabled")return;t.forEach(E=>hc(_,E))}else{const _=this.tracks[n];if(!_)return;const E=_.default?"default":"subtitles"+n;s.trigger(o.CUES_PARSED,{type:"subtitles",cues:t,track:E})}}onFragDecrypted(t,n){const{frag:s}=n;s.type===u.SUBTITLE&&this.onFragLoaded(o.FRAG_LOADED,n)}onSubtitleTracksCleared(){this.tracks=[],this.captionsTracks={}}onFragParsingUserdata(t,n){if(!this.enabled||!this.config.enableCEA708Captions)return;const{frag:s,samples:_}=n;if(!(s.type===u.MAIN&&this.closedCaptionsForLevel(s)==="NONE"))for(let E=0;E<_.length;E++){const T=_[E].bytes;if(T){this.cea608Parser1||this.initCea608Parsers();const U=this.extractCea608Data(T);this.cea608Parser1.addData(_[E].pts,U[0]),this.cea608Parser2.addData(_[E].pts,U[1])}}}onBufferFlushing(t,{startOffset:n,endOffset:s,endOffsetSubtitles:_,type:E}){const{media:T}=this;if(!(!T||T.currentTimeVo(U[W],n,s))}if(this.config.renderTextTracksNatively&&n===0&&_!==void 0){const{textTracks:U}=this;Object.keys(U).forEach(W=>Vo(U[W],n,_))}}}extractCea608Data(t){const n=[[],[]],s=t[0]&31;let _=2;for(let E=0;E=16?W--:W++;const Ie=ol(N.trim()),Ae=Bl(t,n,Ie);P!=null&&(ce=P.cues)!=null&&ce.getCueById(Ae)||(T=new te(t,n,Ie),T.id=Ae,T.line=xe+1,T.align="left",T.position=10+Math.min(80,Math.floor(W*8/32)*10),_.push(T))}return P&&_.length&&(_.sort((xe,Ie)=>xe.line==="auto"||Ie.line==="auto"?0:xe.line>8&&Ie.line>8?Ie.line-xe.line:xe.line-Ie.line),_.forEach(xe=>hc(P,xe))),_}};function $l(){if(self.fetch&&self.AbortController&&self.ReadableStream&&self.Request)try{return new self.ReadableStream({}),!0}catch(P){}return!1}const Sf=/(\d+)-(\d+)\/(\d+)/;class gc{constructor(t){this.fetchSetup=void 0,this.requestTimeout=void 0,this.request=null,this.response=null,this.controller=void 0,this.context=null,this.config=null,this.callbacks=null,this.stats=void 0,this.loader=null,this.fetchSetup=t.fetchSetup||Of,this.controller=new self.AbortController,this.stats=new Z}destroy(){this.loader=this.callbacks=this.context=this.config=this.request=null,this.abortInternal(),this.response=null,this.fetchSetup=this.controller=this.stats=null}abortInternal(){this.controller&&!this.stats.loading.end&&(this.stats.aborted=!0,this.controller.abort())}abort(){var t;this.abortInternal(),(t=this.callbacks)!=null&&t.onAbort&&this.callbacks.onAbort(this.stats,this.context,this.response)}load(t,n,s){const _=this.stats;if(_.loading.start)throw new Error("Loader can only be used once.");_.loading.start=self.performance.now();const E=ef(t,this.controller.signal),T=t.responseType==="arraybuffer",U=T?"byteLength":"length",{maxTimeToFirstByteMs:W,maxLoadTimeMs:N}=n.loadPolicy;this.context=t,this.config=n,this.callbacks=s,this.request=this.fetchSetup(t,E),self.clearTimeout(this.requestTimeout),n.timeout=W&&r(W)?W:N,this.requestTimeout=self.setTimeout(()=>{this.callbacks&&(this.abortInternal(),this.callbacks.onTimeout(_,t,this.response))},n.timeout),(As(this.request)?this.request.then(self.fetch):self.fetch(this.request)).then(ce=>{var xe;this.response=this.loader=ce;const Ie=Math.max(self.performance.now(),_.loading.start);if(self.clearTimeout(this.requestTimeout),n.timeout=N,this.requestTimeout=self.setTimeout(()=>{this.callbacks&&(this.abortInternal(),this.callbacks.onTimeout(_,t,this.response))},N-(Ie-_.loading.start)),!ce.ok){const{status:at,statusText:tt}=ce;throw new Vu(tt||"fetch, bad network response",at,ce)}_.loading.first=Ie,_.total=cl(ce.headers)||_.total;const Ae=(xe=this.callbacks)==null?void 0:xe.onProgress;return Ae&&r(n.highWaterMark)?this.loadProgressively(ce,_,t,n.highWaterMark,Ae):T?ce.arrayBuffer():t.responseType==="json"?ce.json():ce.text()}).then(ce=>{var xe,Ie;const Ae=this.response;if(!Ae)throw new Error("loader destroyed");self.clearTimeout(this.requestTimeout),_.loading.end=Math.max(self.performance.now(),_.loading.first);const at=ce[U];at&&(_.loaded=_.total=at);const tt={url:Ae.url,data:ce,code:Ae.status},kt=(xe=this.callbacks)==null?void 0:xe.onProgress;kt&&!r(n.highWaterMark)&&kt(_,t,ce,Ae),(Ie=this.callbacks)==null||Ie.onSuccess(tt,_,t,Ae)}).catch(ce=>{var xe;if(self.clearTimeout(this.requestTimeout),_.aborted)return;const Ie=ce&&ce.code||0,Ae=ce?ce.message:null;(xe=this.callbacks)==null||xe.onError({code:Ie,text:Ae},t,ce?ce.details:null,_)})}getCacheAge(){let t=null;if(this.response){const n=this.response.headers.get("age");t=n?parseFloat(n):null}return t}getResponseHeader(t){return this.response?this.response.headers.get(t):null}loadProgressively(t,n,s,_=0,E){const T=new aa,U=t.body.getReader(),W=()=>U.read().then(N=>{if(N.done)return T.dataLength&&E(n,s,T.flush().buffer,t),Promise.resolve(new ArrayBuffer(0));const te=N.value,ce=te.length;return n.loaded+=ce,ce<_||T.dataLength?(T.push(te),T.dataLength>=_&&E(n,s,T.flush().buffer,t)):E(n,s,te.buffer,t),W()}).catch(()=>Promise.reject());return W()}}function ef(P,t){const n={method:"GET",mode:"cors",credentials:"same-origin",signal:t,headers:new self.Headers(y({},P.headers))};return P.rangeEnd&&n.headers.set("Range","bytes="+P.rangeStart+"-"+String(P.rangeEnd-1)),n}function hf(P){const t=Sf.exec(P);if(t)return parseInt(t[2])-parseInt(t[1])+1}function cl(P){const t=P.get("Content-Range");if(t){const s=hf(t);if(r(s))return s}const n=P.get("Content-Length");if(n)return parseInt(n)}function Of(P,t){return new self.Request(P.url,t)}class Vu extends Error{constructor(t,n,s){super(t),this.code=void 0,this.details=void 0,this.code=n,this.details=s}}const Rc=/^age:\s*[\d.]+\s*$/im;class tf{constructor(t){this.xhrSetup=void 0,this.requestTimeout=void 0,this.retryTimeout=void 0,this.retryDelay=void 0,this.config=null,this.callbacks=null,this.context=null,this.loader=null,this.stats=void 0,this.xhrSetup=t&&t.xhrSetup||null,this.stats=new Z,this.retryDelay=0}destroy(){this.callbacks=null,this.abortInternal(),this.loader=null,this.config=null,this.context=null,this.xhrSetup=null}abortInternal(){const t=this.loader;self.clearTimeout(this.requestTimeout),self.clearTimeout(this.retryTimeout),t&&(t.onreadystatechange=null,t.onprogress=null,t.readyState!==4&&(this.stats.aborted=!0,t.abort()))}abort(){var t;this.abortInternal(),(t=this.callbacks)!=null&&t.onAbort&&this.callbacks.onAbort(this.stats,this.context,this.loader)}load(t,n,s){if(this.stats.loading.start)throw new Error("Loader can only be used once.");this.stats.loading.start=self.performance.now(),this.context=t,this.config=n,this.callbacks=s,this.loadInternal()}loadInternal(){const{config:t,context:n}=this;if(!t||!n)return;const s=this.loader=new self.XMLHttpRequest,_=this.stats;_.loading.first=0,_.loaded=0,_.aborted=!1;const E=this.xhrSetup;E?Promise.resolve().then(()=>{if(!(this.loader!==s||this.stats.aborted))return E(s,n.url)}).catch(T=>{if(!(this.loader!==s||this.stats.aborted))return s.open("GET",n.url,!0),E(s,n.url)}).then(()=>{this.loader!==s||this.stats.aborted||this.openAndSendXhr(s,n,t)}).catch(T=>{var U;(U=this.callbacks)==null||U.onError({code:s.status,text:T.message},n,s,_)}):this.openAndSendXhr(s,n,t)}openAndSendXhr(t,n,s){t.readyState||t.open("GET",n.url,!0);const _=n.headers,{maxTimeToFirstByteMs:E,maxLoadTimeMs:T}=s.loadPolicy;if(_)for(const U in _)t.setRequestHeader(U,_[U]);n.rangeEnd&&t.setRequestHeader("Range","bytes="+n.rangeStart+"-"+(n.rangeEnd-1)),t.onreadystatechange=this.readystatechange.bind(this),t.onprogress=this.loadprogress.bind(this),t.responseType=n.responseType,self.clearTimeout(this.requestTimeout),s.timeout=E&&r(E)?E:T,this.requestTimeout=self.setTimeout(this.loadtimeout.bind(this),s.timeout),t.send()}readystatechange(){const{context:t,loader:n,stats:s}=this;if(!t||!n)return;const _=n.readyState,E=this.config;if(!s.aborted&&_>=2&&(s.loading.first===0&&(s.loading.first=Math.max(self.performance.now(),s.loading.start),E.timeout!==E.loadPolicy.maxLoadTimeMs&&(self.clearTimeout(this.requestTimeout),E.timeout=E.loadPolicy.maxLoadTimeMs,this.requestTimeout=self.setTimeout(this.loadtimeout.bind(this),E.loadPolicy.maxLoadTimeMs-(s.loading.first-s.loading.start)))),_===4)){self.clearTimeout(this.requestTimeout),n.onreadystatechange=null,n.onprogress=null;const N=n.status,te=n.responseType==="text"?n.responseText:null;if(N>=200&&N<300){const Ae=te!=null?te:n.response;if(Ae!=null){var T,U;s.loading.end=Math.max(self.performance.now(),s.loading.first);const at=n.responseType==="arraybuffer"?Ae.byteLength:Ae.length;s.loaded=s.total=at,s.bwEstimate=s.total*8e3/(s.loading.end-s.loading.first);const tt=(T=this.callbacks)==null?void 0:T.onProgress;tt&&tt(s,t,Ae,n);const kt={url:n.responseURL,data:Ae,code:N};(U=this.callbacks)==null||U.onSuccess(kt,s,t,n);return}}const ce=E.loadPolicy.errorRetry,xe=s.retry,Ie={url:t.url,data:void 0,code:N};if(Tr(ce,xe,!1,Ie))this.retry(ce);else{var W;G.error(`${N} while loading ${t.url}`),(W=this.callbacks)==null||W.onError({code:N,text:n.statusText},t,n,s)}}}loadtimeout(){if(!this.config)return;const t=this.config.loadPolicy.timeoutRetry,n=this.stats.retry;if(Tr(t,n,!0))this.retry(t);else{var s;G.warn(`timeout while loading ${(s=this.context)==null?void 0:s.url}`);const _=this.callbacks;_&&(this.abortInternal(),_.onTimeout(this.stats,this.context,this.loader))}}retry(t){const{context:n,stats:s}=this;this.retryDelay=cr(t,s.retry),s.retry++,G.warn(`${status?"HTTP Status "+status:"Timeout"} while loading ${n==null?void 0:n.url}, retrying ${s.retry}/${t.maxNumRetry} in ${this.retryDelay}ms`),this.abortInternal(),this.loader=null,self.clearTimeout(this.retryTimeout),this.retryTimeout=self.setTimeout(this.loadInternal.bind(this),this.retryDelay)}loadprogress(t){const n=this.stats;n.loaded=t.loaded,t.lengthComputable&&(n.total=t.total)}getCacheAge(){let t=null;if(this.loader&&Rc.test(this.loader.getAllResponseHeaders())){const n=this.loader.getResponseHeader("age");t=n?parseFloat(n):null}return t}getResponseHeader(t){return this.loader&&new RegExp(`^${t}:\\s*[\\d.]+\\s*$`,"im").test(this.loader.getAllResponseHeaders())?this.loader.getResponseHeader(t):null}}const Ko={maxTimeToFirstByteMs:8e3,maxLoadTimeMs:2e4,timeoutRetry:null,errorRetry:null},rf=b(b({autoStartLoad:!0,startPosition:-1,defaultAudioCodec:void 0,debug:!1,capLevelOnFPSDrop:!1,capLevelToPlayerSize:!1,ignoreDevicePixelRatio:!1,maxDevicePixelRatio:Number.POSITIVE_INFINITY,preferManagedMediaSource:!0,initialLiveManifestSize:1,maxBufferLength:30,backBufferLength:1/0,frontBufferFlushThreshold:1/0,startOnSegmentBoundary:!1,maxBufferSize:60*1e3*1e3,maxFragLookUpTolerance:.25,maxBufferHole:.1,detectStallWithCurrentTimeMs:1250,highBufferWatchdogPeriod:2,nudgeOffset:.1,nudgeMaxRetry:3,nudgeOnVideoHole:!0,liveSyncMode:"edge",liveSyncDurationCount:3,liveSyncOnStallIncrease:1,liveMaxLatencyDurationCount:1/0,liveSyncDuration:void 0,liveMaxLatencyDuration:void 0,maxLiveSyncPlaybackRate:1,liveDurationInfinity:!1,liveBackBufferLength:null,maxMaxBufferLength:600,enableWorker:!0,workerPath:null,enableSoftwareAES:!0,startLevel:void 0,startFragPrefetch:!1,fpsDroppedMonitoringPeriod:5e3,fpsDroppedMonitoringThreshold:.2,appendErrorMaxRetry:3,ignorePlaylistParsingErrors:!1,loader:tf,fLoader:void 0,pLoader:void 0,xhrSetup:void 0,licenseXhrSetup:void 0,licenseResponseCallback:void 0,abrController:ei,bufferController:xc,capLevelController:Pu,errorController:Ee,fpsController:tl,stretchShortVideoTrack:!1,maxAudioFramesDrift:1,forceKeyFrameOnDiscontinuity:!0,abrEwmaFastLive:3,abrEwmaSlowLive:9,abrEwmaFastVoD:3,abrEwmaSlowVoD:9,abrEwmaDefaultEstimate:5e5,abrEwmaDefaultEstimateMax:5e6,abrBandWidthFactor:.95,abrBandWidthUpFactor:.7,abrMaxWithRealBitrate:!1,maxStarvationDelay:4,maxLoadingDelay:4,minAutoBitrate:0,emeEnabled:!1,widevineLicenseUrl:void 0,drmSystems:{},drmSystemOptions:{},requestMediaKeySystemAccessFunc:di,requireKeySystemAccessOnStart:!1,testBandwidth:!0,progressive:!1,lowLatencyMode:!0,cmcd:void 0,enableDateRangeMetadataCues:!0,enableEmsgMetadataCues:!0,enableEmsgKLVMetadata:!1,enableID3MetadataCues:!0,enableInterstitialPlayback:!0,interstitialAppendInPlace:!0,interstitialLiveLookAhead:10,useMediaCapabilities:!0,preserveManualLevelOnError:!1,certLoadPolicy:{default:Ko},keyLoadPolicy:{default:{maxTimeToFirstByteMs:8e3,maxLoadTimeMs:2e4,timeoutRetry:{maxNumRetry:1,retryDelayMs:1e3,maxRetryDelayMs:2e4,backoff:"linear"},errorRetry:{maxNumRetry:8,retryDelayMs:1e3,maxRetryDelayMs:2e4,backoff:"linear"}}},manifestLoadPolicy:{default:{maxTimeToFirstByteMs:1/0,maxLoadTimeMs:2e4,timeoutRetry:{maxNumRetry:2,retryDelayMs:0,maxRetryDelayMs:0},errorRetry:{maxNumRetry:1,retryDelayMs:1e3,maxRetryDelayMs:8e3}}},playlistLoadPolicy:{default:{maxTimeToFirstByteMs:1e4,maxLoadTimeMs:2e4,timeoutRetry:{maxNumRetry:2,retryDelayMs:0,maxRetryDelayMs:0},errorRetry:{maxNumRetry:2,retryDelayMs:1e3,maxRetryDelayMs:8e3}}},fragLoadPolicy:{default:{maxTimeToFirstByteMs:1e4,maxLoadTimeMs:12e4,timeoutRetry:{maxNumRetry:4,retryDelayMs:0,maxRetryDelayMs:0},errorRetry:{maxNumRetry:6,retryDelayMs:1e3,maxRetryDelayMs:8e3}}},steeringManifestLoadPolicy:{default:{maxTimeToFirstByteMs:1e4,maxLoadTimeMs:2e4,timeoutRetry:{maxNumRetry:2,retryDelayMs:0,maxRetryDelayMs:0},errorRetry:{maxNumRetry:1,retryDelayMs:1e3,maxRetryDelayMs:8e3}}},interstitialAssetListLoadPolicy:{default:{maxTimeToFirstByteMs:1e4,maxLoadTimeMs:3e4,timeoutRetry:{maxNumRetry:0,retryDelayMs:0,maxRetryDelayMs:0},errorRetry:{maxNumRetry:0,retryDelayMs:1e3,maxRetryDelayMs:8e3}}},manifestLoadingTimeOut:1e4,manifestLoadingMaxRetry:1,manifestLoadingRetryDelay:1e3,manifestLoadingMaxRetryTimeout:64e3,levelLoadingTimeOut:1e4,levelLoadingMaxRetry:4,levelLoadingRetryDelay:1e3,levelLoadingMaxRetryTimeout:64e3,fragLoadingTimeOut:2e4,fragLoadingMaxRetry:6,fragLoadingRetryDelay:1e3,fragLoadingMaxRetryTimeout:64e3},pf()),{},{subtitleStreamController:I,subtitleTrackController:Kc,timelineController:Wu,audioStreamController:qo,audioTrackController:Wl,emeController:ku,cmcdController:ze,contentSteeringController:eu,interstitialsController:_c});function pf(){return{cueHandler:wf,enableWebVTT:!0,enableIMSC1:!0,enableCEA708Captions:!0,captionsTextTrack1Label:"English",captionsTextTrack1LanguageCode:"en",captionsTextTrack2Label:"Spanish",captionsTextTrack2LanguageCode:"es",captionsTextTrack3Label:"Unknown CC",captionsTextTrack3LanguageCode:"",captionsTextTrack4Label:"Unknown CC",captionsTextTrack4LanguageCode:"",renderTextTracksNatively:!0}}function fl(P,t,n){if((t.liveSyncDurationCount||t.liveMaxLatencyDurationCount)&&(t.liveSyncDuration||t.liveMaxLatencyDuration))throw new Error("Illegal hls.js config: don't mix up liveSyncDurationCount/liveMaxLatencyDurationCount and liveSyncDuration/liveMaxLatencyDuration");if(t.liveMaxLatencyDurationCount!==void 0&&(t.liveSyncDurationCount===void 0||t.liveMaxLatencyDurationCount<=t.liveSyncDurationCount))throw new Error('Illegal hls.js config: "liveMaxLatencyDurationCount" must be greater than "liveSyncDurationCount"');if(t.liveMaxLatencyDuration!==void 0&&(t.liveSyncDuration===void 0||t.liveMaxLatencyDuration<=t.liveSyncDuration))throw new Error('Illegal hls.js config: "liveMaxLatencyDuration" must be greater than "liveSyncDuration"');const s=jl(P),_=["manifest","level","frag"],E=["TimeOut","MaxRetry","RetryDelay","MaxRetryTimeout"];return _.forEach(T=>{const U=`${T==="level"?"playlist":T}LoadPolicy`,W=t[U]===void 0,N=[];E.forEach(te=>{const ce=`${T}Loading${te}`,xe=t[ce];if(xe!==void 0&&W){N.push(ce);const Ie=s[U].default;switch(t[U]={default:Ie},te){case"TimeOut":Ie.maxLoadTimeMs=xe,Ie.maxTimeToFirstByteMs=xe;break;case"MaxRetry":Ie.errorRetry.maxNumRetry=xe,Ie.timeoutRetry.maxNumRetry=xe;break;case"RetryDelay":Ie.errorRetry.retryDelayMs=xe,Ie.timeoutRetry.retryDelayMs=xe;break;case"MaxRetryTimeout":Ie.errorRetry.maxRetryDelayMs=xe,Ie.timeoutRetry.maxRetryDelayMs=xe;break}}}),N.length&&n.warn(`hls.js config: "${N.join('", "')}" setting(s) are deprecated, use "${U}": ${Pn(t[U])}`)}),b(b({},s),t)}function jl(P){return P&&typeof P=="object"?Array.isArray(P)?P.map(jl):Object.keys(P).reduce((t,n)=>(t[n]=jl(P[n]),t),{}):P}function Yo(P,t){const n=P.loader;n!==gc&&n!==tf?(t.log("[config]: Custom loader detected, cannot enable progressive streaming"),P.progressive=!1):$l()&&(P.loader=gc,P.progressive=!0,P.enableSoftwareAES=!0,t.log("[config]: Progressive streaming enabled, using FetchLoader"))}const yc=2,mf=.1,Lc=.05,Mc=100;class _f extends Ta{constructor(t,n){super("gap-controller",t.logger),this.hls=null,this.fragmentTracker=null,this.media=null,this.mediaSource=void 0,this.nudgeRetry=0,this.stallReported=!1,this.stalled=null,this.moved=!1,this.seeking=!1,this.buffered={},this.lastCurrentTime=0,this.ended=0,this.waiting=0,this.onMediaPlaying=()=>{this.ended=0,this.waiting=0},this.onMediaWaiting=()=>{var s;(s=this.media)!=null&&s.seeking||(this.waiting=self.performance.now(),this.tick())},this.onMediaEnded=()=>{if(this.hls){var s;this.ended=((s=this.media)==null?void 0:s.currentTime)||1,this.hls.trigger(o.MEDIA_ENDED,{stalled:!1})}},this.hls=t,this.fragmentTracker=n,this.registerListeners()}registerListeners(){const{hls:t}=this;t&&(t.on(o.MEDIA_ATTACHED,this.onMediaAttached,this),t.on(o.MEDIA_DETACHING,this.onMediaDetaching,this),t.on(o.BUFFER_APPENDED,this.onBufferAppended,this))}unregisterListeners(){const{hls:t}=this;t&&(t.off(o.MEDIA_ATTACHED,this.onMediaAttached,this),t.off(o.MEDIA_DETACHING,this.onMediaDetaching,this),t.off(o.BUFFER_APPENDED,this.onBufferAppended,this))}destroy(){super.destroy(),this.unregisterListeners(),this.media=this.hls=this.fragmentTracker=null,this.mediaSource=void 0}onMediaAttached(t,n){this.setInterval(Mc),this.mediaSource=n.mediaSource;const s=this.media=n.media;Vs(s,"playing",this.onMediaPlaying),Vs(s,"waiting",this.onMediaWaiting),Vs(s,"ended",this.onMediaEnded)}onMediaDetaching(t,n){this.clearInterval();const{media:s}=this;s&&(Go(s,"playing",this.onMediaPlaying),Go(s,"waiting",this.onMediaWaiting),Go(s,"ended",this.onMediaEnded),this.media=null),this.mediaSource=void 0}onBufferAppended(t,n){this.buffered=n.timeRanges}get hasBuffered(){return Object.keys(this.buffered).length>0}tick(){var t;if(!((t=this.media)!=null&&t.readyState)||!this.hasBuffered)return;const n=this.media.currentTime;this.poll(n,this.lastCurrentTime),this.lastCurrentTime=n}poll(t,n){var s,_;const E=(s=this.hls)==null?void 0:s.config;if(!E)return;const T=this.media;if(!T)return;const{seeking:U}=T,W=this.seeking&&!U,N=!this.seeking&&U,te=T.paused&&!U||T.ended||T.playbackRate===0;if(this.seeking=U,t!==n){n&&(this.ended=0),this.moved=!0,U||(this.nudgeRetry=0,E.nudgeOnVideoHole&&!te&&t>n&&this.nudgeOnVideoHole(t,n)),this.waiting===0&&this.stallResolved(t);return}if(N||W){W&&this.stallResolved(t);return}if(te){this.nudgeRetry=0,this.stallResolved(t),!this.ended&&T.ended&&this.hls&&(this.ended=t||1,this.hls.trigger(o.MEDIA_ENDED,{stalled:!1}));return}if(!_i.getBuffered(T).length){this.nudgeRetry=0;return}const ce=_i.bufferInfo(T,t,0),xe=ce.nextStart||0,Ie=this.fragmentTracker;if(U&&Ie&&this.hls){const ln=Fc(this.hls.inFlightFragments,t),Wr=ce.len>yc,Jr=!xe||ln||xe-t>yc&&!Ie.getPartialFragment(t);if(Wr||Jr)return;this.moved=!1}const Ae=(_=this.hls)==null?void 0:_.latestLevelDetails;if(!this.moved&&this.stalled!==null&&Ie){if(!(ce.len>0)&&!xe)return;const Wr=Math.max(xe,ce.start||0)-t,un=!!(Ae!=null&&Ae.live)?Ae.targetduration*2:yc,Kr=Ie.getPartialFragment(t);if(Wr>0&&(Wr<=un||Kr)){T.paused||this._trySkipBufferHole(Kr);return}}const at=E.detectStallWithCurrentTimeMs,tt=self.performance.now(),kt=this.waiting;let fr=this.stalled;if(fr===null)if(kt>0&&tt-kt=at||kt)&&this.hls){var kr;if(((kr=this.mediaSource)==null?void 0:kr.readyState)==="ended"&&!(Ae!=null&&Ae.live)&&Math.abs(t-((Ae==null?void 0:Ae.edge)||0))<1){if(this.ended)return;this.ended=t||1,this.hls.trigger(o.MEDIA_ENDED,{stalled:!0});return}if(this._reportStall(ce),!this.media||!this.hls)return}const zr=_i.bufferInfo(T,t,E.maxBufferHole);this._tryFixBufferStall(zr,sr,t)}stallResolved(t){const n=this.stalled;if(n&&this.hls&&(this.stalled=null,this.stallReported)){const s=self.performance.now()-n;this.log(`playback not stuck anymore @${t}, after ${Math.round(s)}ms`),this.stallReported=!1,this.waiting=0,this.hls.trigger(o.STALL_RESOLVED,{})}}nudgeOnVideoHole(t,n){var s;const _=this.buffered.video;if(this.hls&&this.media&&this.fragmentTracker&&(s=this.buffered.audio)!=null&&s.length&&_&&_.length>1&&t>_.end(0)){const E=_i.bufferedInfo(_i.timeRangesToArray(this.buffered.audio),t,0);if(E.len>1&&n>=E.start){const T=_i.timeRangesToArray(_),U=_i.bufferedInfo(T,n,0).bufferedIndex;if(U>-1&&UU)&&te-N<1&&t-N<2){const ce=new Error(`nudging playhead to flush pipeline after video hole. currentTime: ${t} hole: ${N} -> ${te} buffered index: ${W}`);this.warn(ce.message),this.media.currentTime+=1e-6;const xe=this.fragmentTracker.getPartialFragment(t)||void 0,Ie=_i.bufferInfo(this.media,t,0);this.hls.trigger(o.ERROR,{type:c.MEDIA_ERROR,details:f.BUFFER_SEEK_OVER_HOLE,fatal:!1,error:ce,reason:ce.message,frag:xe,buffer:Ie.len,bufferInfo:Ie})}}}}}_tryFixBufferStall(t,n,s){var _,E;const{fragmentTracker:T,media:U}=this,W=(_=this.hls)==null?void 0:_.config;if(!U||!T||!W)return;const N=(E=this.hls)==null?void 0:E.latestLevelDetails,te=T.getPartialFragment(s);if((te||N!=null&&N.live&&s1&&t.len>W.maxBufferHole||t.nextStart&&(t.nextStart-sW.highBufferWatchdogPeriod*1e3||this.waiting)&&(this.warn("Trying to nudge playhead over buffer-hole"),this._tryNudgeBuffer(t))}adjacentTraversal(t,n){const s=this.fragmentTracker,_=t.nextStart;if(s&&_){const E=s.getFragAtPos(n,u.MAIN),T=s.getFragAtPos(_,u.MAIN);if(E&&T)return T.sn-E.sn<2}return!1}_reportStall(t){const{hls:n,media:s,stallReported:_,stalled:E}=this;if(!_&&E!==null&&s&&n){this.stallReported=!0;const T=new Error(`Playback stalling at @${s.currentTime} due to low buffer (${Pn(t)})`);this.warn(T.message),n.trigger(o.ERROR,{type:c.MEDIA_ERROR,details:f.BUFFER_STALLED_ERROR,fatal:!1,error:T,buffer:t.len,bufferInfo:t,stalled:{start:E}})}}_trySkipBufferHole(t){var n;const{fragmentTracker:s,media:_}=this,E=(n=this.hls)==null?void 0:n.config;if(!_||!s||!E)return 0;const T=_.currentTime,U=_i.bufferInfo(_,T,0),W=T0&&U.len<1&&_.readyState<3,xe=W-T;if(xe>0&&(te||ce)){if(xe>E.maxBufferHole){let Ae=!1;if(T===0){const at=s.getAppendedFrag(0,u.MAIN);at&&W{const P=Bc();try{P&&new P(0,Number.POSITIVE_INFINITY,"")}catch(t){return Number.MAX_VALUE}return Number.POSITIVE_INFINITY})();function vf(P){return Uint8Array.from(P.replace(/^0x/,"").replace(/([\da-fA-F]{2}) ?/g,"0x$1 ").replace(/ +$/,"").split(" ")).buffer}class Hf{constructor(t){this.hls=void 0,this.id3Track=null,this.media=null,this.dateRangeCuesAppended={},this.removeCues=!0,this.onEventCueEnter=()=>{this.hls&&this.hls.trigger(o.EVENT_CUE_ENTER,{})},this.hls=t,this._registerListeners()}destroy(){this._unregisterListeners(),this.id3Track=null,this.media=null,this.dateRangeCuesAppended={},this.hls=this.onEventCueEnter=null}_registerListeners(){const{hls:t}=this;t.on(o.MEDIA_ATTACHING,this.onMediaAttaching,this),t.on(o.MEDIA_ATTACHED,this.onMediaAttached,this),t.on(o.MEDIA_DETACHING,this.onMediaDetaching,this),t.on(o.MANIFEST_LOADING,this.onManifestLoading,this),t.on(o.FRAG_PARSING_METADATA,this.onFragParsingMetadata,this),t.on(o.BUFFER_FLUSHING,this.onBufferFlushing,this),t.on(o.LEVEL_UPDATED,this.onLevelUpdated,this),t.on(o.LEVEL_PTS_UPDATED,this.onLevelPtsUpdated,this)}_unregisterListeners(){const{hls:t}=this;t.off(o.MEDIA_ATTACHING,this.onMediaAttaching,this),t.off(o.MEDIA_ATTACHED,this.onMediaAttached,this),t.off(o.MEDIA_DETACHING,this.onMediaDetaching,this),t.off(o.MANIFEST_LOADING,this.onManifestLoading,this),t.off(o.FRAG_PARSING_METADATA,this.onFragParsingMetadata,this),t.off(o.BUFFER_FLUSHING,this.onBufferFlushing,this),t.off(o.LEVEL_UPDATED,this.onLevelUpdated,this),t.off(o.LEVEL_PTS_UPDATED,this.onLevelPtsUpdated,this)}onMediaAttaching(t,n){var s;this.media=n.media,((s=n.overrides)==null?void 0:s.cueRemoval)===!1&&(this.removeCues=!1)}onMediaAttached(){const t=this.hls.latestLevelDetails;t&&this.updateDateRangeCues(t)}onMediaDetaching(t,n){this.media=null,!n.transferMedia&&(this.id3Track&&(this.removeCues&&Ru(this.id3Track,this.onEventCueEnter),this.id3Track=null),this.dateRangeCuesAppended={})}onManifestLoading(){this.dateRangeCuesAppended={}}createTrack(t){const n=this.getID3Track(t.textTracks);return n.mode="hidden",n}getID3Track(t){if(this.media){for(let n=0;nnf&&(ce=nf),ce-te<=0&&(ce=te+Mf);for(let Ie=0;Iete.type===ts.audioId3&&W:_==="video"?N=te=>te.type===ts.emsg&&U:N=te=>te.type===ts.audioId3&&W||te.type===ts.emsg&&U,Vo(E,n,s,N)}}onLevelUpdated(t,{details:n}){this.updateDateRangeCues(n,!0)}onLevelPtsUpdated(t,n){Math.abs(n.drift)>.01&&this.updateDateRangeCues(n.details)}updateDateRangeCues(t,n){if(!this.media||!t.hasProgramDateTime||!this.hls.config.enableDateRangeMetadataCues)return;const{id3Track:s}=this,{dateRanges:_}=t,E=Object.keys(_);let T=this.dateRangeCuesAppended;if(s&&n){var U;if((U=s.cues)!=null&&U.length){const te=Object.keys(T).filter(ce=>!E.includes(ce));for(let ce=te.length;ce--;){const xe=te[ce],Ie=T[xe].cues;delete T[xe],Object.keys(Ie).forEach(Ae=>{try{const at=Ie[Ae];at.removeEventListener("enter",this.onEventCueEnter),s.removeCue(at)}catch(at){}})}}else T=this.dateRangeCuesAppended={}}const W=t.fragments[t.fragments.length-1];if(E.length===0||!r(W==null?void 0:W.programDateTime))return;this.id3Track||(this.id3Track=this.createTrack(this.media));const N=Bc();for(let te=0;te{if(Wr!==xe.id){const Jr=_[Wr];if(Jr.class===xe.class&&Jr.startDate>xe.startDate&&(!ln||xe.startDate.01&&(Wr.startTime=Ie,Wr.endTime=kt);else if(N){let Jr=xe.attr[ln];Ys(ln)&&(Jr=vf(Jr));const Kr=Ff(N,Ie,kt,{key:ln,data:Jr},ts.dateRange);Kr&&(Kr.id=ce,this.id3Track.addCue(Kr),at[ln]=Kr,this.hls.config.interstitialsController&&(ln==="X-ASSET-LIST"||ln==="X-ASSET-URL")&&Kr.addEventListener("enter",this.onEventCueEnter))}}T[ce]={cues:at,dateRange:xe,durationKnown:tt}}}}class Cf{constructor(t){this.hls=void 0,this.config=void 0,this.media=null,this.currentTime=0,this.stallCount=0,this._latency=null,this._targetLatencyUpdated=!1,this.onTimeupdate=()=>{const{media:n}=this,s=this.levelDetails;if(!n||!s)return;this.currentTime=n.currentTime;const _=this.computeLatency();if(_===null)return;this._latency=_;const{lowLatencyMode:E,maxLiveSyncPlaybackRate:T}=this.config;if(!E||T===1||!s.live)return;const U=this.targetLatency;if(U===null)return;const W=_-U,N=Math.min(this.maxLatency,U+s.targetduration);if(W.05&&this.forwardBufferLength>1){const ce=Math.min(2,Math.max(1,T)),xe=Math.round(2/(1+Math.exp(-.75*W-this.edgeStalled))*20)/20,Ie=Math.min(ce,Math.max(1,xe));this.changeMediaPlaybackRate(n,Ie)}else n.playbackRate!==1&&n.playbackRate!==0&&this.changeMediaPlaybackRate(n,1)},this.hls=t,this.config=t.config,this.registerListeners()}get levelDetails(){var t;return((t=this.hls)==null?void 0:t.latestLevelDetails)||null}get latency(){return this._latency||0}get maxLatency(){const{config:t}=this;if(t.liveMaxLatencyDuration!==void 0)return t.liveMaxLatencyDuration;const n=this.levelDetails;return n?t.liveMaxLatencyDurationCount*n.targetduration:0}get targetLatency(){const t=this.levelDetails;if(t===null||this.hls===null)return null;const{holdBack:n,partHoldBack:s,targetduration:_}=t,{liveSyncDuration:E,liveSyncDurationCount:T,lowLatencyMode:U}=this.config,W=this.hls.userConfig;let N=U&&s||n;(this._targetLatencyUpdated||W.liveSyncDuration||W.liveSyncDurationCount||N===0)&&(N=E!==void 0?E:T*_);const te=_;return N+Math.min(this.stallCount*this.config.liveSyncOnStallIncrease,te)}set targetLatency(t){this.stallCount=0,this.config.liveSyncDuration=t,this._targetLatencyUpdated=!0}get liveSyncPosition(){const t=this.estimateLiveEdge(),n=this.targetLatency;if(t===null||n===null)return null;const s=this.levelDetails;if(s===null)return null;const _=s.edge,E=t-n-this.edgeStalled,T=_-s.totalduration,U=_-(this.config.lowLatencyMode&&s.partTarget||s.targetduration);return Math.min(Math.max(T,E),U)}get drift(){const t=this.levelDetails;return t===null?1:t.drift}get edgeStalled(){const t=this.levelDetails;if(t===null)return 0;const n=(this.config.lowLatencyMode&&t.partTarget||t.targetduration)*3;return Math.max(t.age-n,0)}get forwardBufferLength(){const{media:t}=this,n=this.levelDetails;if(!t||!n)return 0;const s=t.buffered.length;return(s?t.buffered.end(s-1):n.edge)-this.currentTime}destroy(){this.unregisterListeners(),this.onMediaDetaching(),this.hls=null}registerListeners(){const{hls:t}=this;t&&(t.on(o.MEDIA_ATTACHED,this.onMediaAttached,this),t.on(o.MEDIA_DETACHING,this.onMediaDetaching,this),t.on(o.MANIFEST_LOADING,this.onManifestLoading,this),t.on(o.LEVEL_UPDATED,this.onLevelUpdated,this),t.on(o.ERROR,this.onError,this))}unregisterListeners(){const{hls:t}=this;t&&(t.off(o.MEDIA_ATTACHED,this.onMediaAttached,this),t.off(o.MEDIA_DETACHING,this.onMediaDetaching,this),t.off(o.MANIFEST_LOADING,this.onManifestLoading,this),t.off(o.LEVEL_UPDATED,this.onLevelUpdated,this),t.off(o.ERROR,this.onError,this))}onMediaAttached(t,n){this.media=n.media,this.media.addEventListener("timeupdate",this.onTimeupdate)}onMediaDetaching(){this.media&&(this.media.removeEventListener("timeupdate",this.onTimeupdate),this.media=null)}onManifestLoading(){this._latency=null,this.stallCount=0}onLevelUpdated(t,{details:n}){n.advanced&&this.onTimeupdate(),!n.live&&this.media&&this.media.removeEventListener("timeupdate",this.onTimeupdate)}onError(t,n){var s;n.details===f.BUFFER_STALLED_ERROR&&(this.stallCount++,this.hls&&(s=this.levelDetails)!=null&&s.live&&this.hls.logger.warn("[latency-controller]: Stall detected, adjusting target latency"))}changeMediaPlaybackRate(t,n){var s,_;t.playbackRate!==n&&((s=this.hls)==null||s.logger.debug(`[latency-controller]: latency=${this.latency.toFixed(3)}, targetLatency=${(_=this.targetLatency)==null?void 0:_.toFixed(3)}, forwardBufferLength=${this.forwardBufferLength.toFixed(3)}: adjusting playback rate from ${t.playbackRate} to ${n}`),t.playbackRate=n)}estimateLiveEdge(){const t=this.levelDetails;return t===null?null:t.edge+t.age}computeLatency(){const t=this.estimateLiveEdge();return t===null?null:t-this.currentTime}}class Bf extends _l{constructor(t,n){super(t,"level-controller"),this._levels=[],this._firstLevel=-1,this._maxAutoLevel=-1,this._startLevel=void 0,this.currentLevel=null,this.currentLevelIndex=-1,this.manualLevelIndex=-1,this.steering=void 0,this.onParsedComplete=void 0,this.steering=n,this._registerListeners()}_registerListeners(){const{hls:t}=this;t.on(o.MANIFEST_LOADING,this.onManifestLoading,this),t.on(o.MANIFEST_LOADED,this.onManifestLoaded,this),t.on(o.LEVEL_LOADED,this.onLevelLoaded,this),t.on(o.LEVELS_UPDATED,this.onLevelsUpdated,this),t.on(o.FRAG_BUFFERED,this.onFragBuffered,this),t.on(o.ERROR,this.onError,this)}_unregisterListeners(){const{hls:t}=this;t.off(o.MANIFEST_LOADING,this.onManifestLoading,this),t.off(o.MANIFEST_LOADED,this.onManifestLoaded,this),t.off(o.LEVEL_LOADED,this.onLevelLoaded,this),t.off(o.LEVELS_UPDATED,this.onLevelsUpdated,this),t.off(o.FRAG_BUFFERED,this.onFragBuffered,this),t.off(o.ERROR,this.onError,this)}destroy(){this._unregisterListeners(),this.steering=null,this.resetLevels(),super.destroy()}stopLoad(){this._levels.forEach(n=>{n.loadError=0,n.fragmentError=0}),super.stopLoad()}resetLevels(){this._startLevel=void 0,this.manualLevelIndex=-1,this.currentLevelIndex=-1,this.currentLevel=null,this._levels=[],this._maxAutoLevel=-1}onManifestLoading(t,n){this.resetLevels()}onManifestLoaded(t,n){const s=this.hls.config.preferManagedMediaSource,_=[],E={},T={};let U=!1,W=!1,N=!1;n.levels.forEach(te=>{const ce=te.attrs;let{audioCodec:xe,videoCodec:Ie}=te;xe&&(te.audioCodec=xe=Dr(xe,s)||void 0),Ie&&(Ie=te.videoCodec=Qr(Ie));const{width:Ae,height:at,unknownCodecs:tt}=te;let kt=tt?tt.length:0;if(tt)for(let Kr=kt;Kr--;){const Un=tt[Kr];this.isAudioSupported(Un)?(te.audioCodec=xe=xe?`${xe},${Un}`:Un,kt--,dt.audio[xe.substring(0,4)]=2):this.isVideoSupported(Un)&&(te.videoCodec=Ie=Ie?`${Ie},${Un}`:Un,kt--,dt.video[Ie.substring(0,4)]=2)}if(U||(U=!!(Ae&&at)),W||(W=!!Ie),N||(N=!!xe),kt||xe&&!this.isAudioSupported(xe)||Ie&&!this.isVideoSupported(Ie)){this.log(`Some or all CODECS not supported "${ce.CODECS}"`);return}const{CODECS:fr,"FRAME-RATE":sr,"HDCP-LEVEL":kr,"PATHWAY-ID":zr,RESOLUTION:ln,"VIDEO-RANGE":Wr}=ce,un=`${`${zr||"."}-`}${te.bitrate}-${ln}-${sr}-${fr}-${Wr}-${kr}`;if(E[un])if(E[un].uri!==te.url&&!te.attrs["PATHWAY-ID"]){const Kr=T[un]+=1;te.attrs["PATHWAY-ID"]=new Array(Kr+1).join(".");const Un=this.createLevel(te);E[un]=Un,_.push(Un)}else E[un].addGroupId("audio",ce.AUDIO),E[un].addGroupId("text",ce.SUBTITLES);else{const Kr=this.createLevel(te);E[un]=Kr,T[un]=1,_.push(Kr)}}),this.filterAndSortMediaOptions(_,n,U,W,N)}createLevel(t){const n=new zn(t),s=t.supplemental;if(s!=null&&s.videoCodec&&!this.isVideoSupported(s.videoCodec)){const _=new Error(`SUPPLEMENTAL-CODECS not supported "${s.videoCodec}"`);this.log(_.message),n.supportedResult=sn(_,[])}return n}isAudioSupported(t){return St(t,"audio",this.hls.config.preferManagedMediaSource)}isVideoSupported(t){return St(t,"video",this.hls.config.preferManagedMediaSource)}filterAndSortMediaOptions(t,n,s,_,E){let T=[],U=[],W=t;if((s||_)&&E&&(W=W.filter(({videoCodec:tt,videoRange:kt,width:fr,height:sr})=>(!!tt||!!(fr&&sr))&&yr(kt))),W.length===0){Promise.resolve().then(()=>{if(this.hls){let tt="no level with compatible codecs found in manifest",kt=tt;n.levels.length&&(kt=`one or more CODECS in variant not supported: ${Pn(n.levels.map(sr=>sr.attrs.CODECS).filter((sr,kr,zr)=>zr.indexOf(sr)===kr))}`,this.warn(kt),tt+=` (${kt})`);const fr=new Error(tt);this.hls.trigger(o.ERROR,{type:c.MEDIA_ERROR,details:f.MANIFEST_INCOMPATIBLE_CODECS_ERROR,fatal:!0,url:n.url,error:fr,reason:kt})}});return}n.audioTracks&&(T=n.audioTracks.filter(tt=>!tt.audioCodec||this.isAudioSupported(tt.audioCodec)),Nf(T)),n.subtitles&&(U=n.subtitles,Nf(U));const N=W.slice(0);W.sort((tt,kt)=>{if(tt.attrs["HDCP-LEVEL"]!==kt.attrs["HDCP-LEVEL"])return(tt.attrs["HDCP-LEVEL"]||"")>(kt.attrs["HDCP-LEVEL"]||"")?1:-1;if(s&&tt.height!==kt.height)return tt.height-kt.height;if(tt.frameRate!==kt.frameRate)return tt.frameRate-kt.frameRate;if(tt.videoRange!==kt.videoRange)return Sr.indexOf(tt.videoRange)-Sr.indexOf(kt.videoRange);if(tt.videoCodec!==kt.videoCodec){const fr=be(tt.videoCodec),sr=be(kt.videoCodec);if(fr!==sr)return sr-fr}if(tt.uri===kt.uri&&tt.codecSet!==kt.codecSet){const fr=Ke(tt.codecSet),sr=Ke(kt.codecSet);if(fr!==sr)return sr-fr}return tt.averageBitrate!==kt.averageBitrate?tt.averageBitrate-kt.averageBitrate:0});let te=N[0];if(this.steering&&(W=this.steering.filterParsedLevels(W),W.length!==N.length)){for(let tt=0;ttfr&&fr===this.hls.abrEwmaDefaultEstimate&&(this.hls.bandwidthEstimate=sr)}break}const xe=E&&!_,Ie=this.hls.config,Ae=!!(Ie.audioStreamController&&Ie.audioTrackController),at={levels:W,audioTracks:T,subtitleTracks:U,sessionData:n.sessionData,sessionKeys:n.sessionKeys,firstLevel:this._firstLevel,stats:n.stats,audio:E,video:_,altAudio:Ae&&!xe&&T.some(tt=>!!tt.url)};this.hls.trigger(o.MANIFEST_PARSED,at)}get levels(){return this._levels.length===0?null:this._levels}get loadLevelObj(){return this.currentLevel}get level(){return this.currentLevelIndex}set level(t){const n=this._levels;if(n.length===0)return;if(t<0||t>=n.length){const te=new Error("invalid level idx"),ce=t<0;if(this.hls.trigger(o.ERROR,{type:c.OTHER_ERROR,details:f.LEVEL_SWITCH_ERROR,level:t,fatal:ce,error:te,reason:te.message}),ce)return;t=Math.min(t,n.length-1)}const s=this.currentLevelIndex,_=this.currentLevel,E=_?_.attrs["PATHWAY-ID"]:void 0,T=n[t],U=T.attrs["PATHWAY-ID"];if(this.currentLevelIndex=t,this.currentLevel=T,s===t&&_&&E===U)return;this.log(`Switching to level ${t} (${T.height?T.height+"p ":""}${T.videoRange?T.videoRange+" ":""}${T.codecSet?T.codecSet+" ":""}@${T.bitrate})${U?" with Pathway "+U:""} from level ${s}${E?" with Pathway "+E:""}`);const W={level:t,attrs:T.attrs,details:T.details,bitrate:T.bitrate,averageBitrate:T.averageBitrate,maxBitrate:T.maxBitrate,realBitrate:T.realBitrate,width:T.width,height:T.height,codecSet:T.codecSet,audioCodec:T.audioCodec,videoCodec:T.videoCodec,audioGroups:T.audioGroups,subtitleGroups:T.subtitleGroups,loaded:T.loaded,loadError:T.loadError,fragmentError:T.fragmentError,name:T.name,id:T.id,uri:T.uri,url:T.url,urlId:0,audioGroupIds:T.audioGroupIds,textGroupIds:T.textGroupIds};this.hls.trigger(o.LEVEL_SWITCHING,W);const N=T.details;if(!N||N.live){const te=this.switchParams(T.uri,_==null?void 0:_.details,N);this.loadPlaylist(te)}}get manualLevel(){return this.manualLevelIndex}set manualLevel(t){this.manualLevelIndex=t,this._startLevel===void 0&&(this._startLevel=t),t!==-1&&(this.level=t)}get firstLevel(){return this._firstLevel}set firstLevel(t){this._firstLevel=t}get startLevel(){if(this._startLevel===void 0){const t=this.hls.config.startLevel;return t!==void 0?t:this.hls.firstAutoLevel}return this._startLevel}set startLevel(t){this._startLevel=t}get pathways(){return this.steering?this.steering.pathways():[]}get pathwayPriority(){return this.steering?this.steering.pathwayPriority:null}set pathwayPriority(t){if(this.steering){const n=this.steering.pathways(),s=t.filter(_=>n.indexOf(_)!==-1);if(t.length<1){this.warn(`pathwayPriority ${t} should contain at least one pathway from list: ${n}`);return}this.steering.pathwayPriority=s}}onError(t,n){n.fatal||!n.context||n.context.type===h.LEVEL&&n.context.level===this.level&&this.checkRetry(n)}onFragBuffered(t,{frag:n}){if(n!==void 0&&n.type===u.MAIN){const s=n.elementaryStreams;if(!Object.keys(s).some(E=>!!s[E]))return;const _=this._levels[n.level];_!=null&&_.loadError&&(this.log(`Resetting level error count of ${_.loadError} on frag buffered`),_.loadError=0)}}onLevelLoaded(t,n){var s;const{level:_,details:E}=n,T=n.levelInfo;if(!T){var U;this.warn(`Invalid level index ${_}`),(U=n.deliveryDirectives)!=null&&U.skip&&(E.deltaUpdateFailed=!0);return}if(T===this.currentLevel||n.withoutMultiVariant){T.fragmentError===0&&(T.loadError=0);let W=T.details;W===n.details&&W.advanced&&(W=void 0),this.playlistLoaded(_,n,W)}else(s=n.deliveryDirectives)!=null&&s.skip&&(E.deltaUpdateFailed=!0)}loadPlaylist(t){super.loadPlaylist(),this.shouldLoadPlaylist(this.currentLevel)&&this.scheduleLoading(this.currentLevel,t)}loadingPlaylist(t,n){super.loadingPlaylist(t,n);const s=this.getUrlWithDirectives(t.uri,n),_=this.currentLevelIndex,E=t.attrs["PATHWAY-ID"],T=t.details,U=T==null?void 0:T.age;this.log(`Loading level index ${_}${(n==null?void 0:n.msn)!==void 0?" at sn "+n.msn+" part "+n.part:""}${E?" Pathway "+E:""}${U&&T.live?" age "+U.toFixed(1)+(T.type?" "+T.type||0:""):""} ${s}`),this.hls.trigger(o.LEVEL_LOADING,{url:s,level:_,levelInfo:t,pathwayId:t.attrs["PATHWAY-ID"],id:0,deliveryDirectives:n||null})}get nextLoadLevel(){return this.manualLevelIndex!==-1?this.manualLevelIndex:this.hls.nextAutoLevel}set nextLoadLevel(t){this.level=t,this.manualLevelIndex===-1&&(this.hls.nextAutoLevel=t)}removeLevel(t){var n;if(this._levels.length===1)return;const s=this._levels.filter((E,T)=>T!==t?!0:(this.steering&&this.steering.removeLevel(E),E===this.currentLevel&&(this.currentLevel=null,this.currentLevelIndex=-1,E.details&&E.details.fragments.forEach(U=>U.level=-1)),!1));xr(s),this._levels=s,this.currentLevelIndex>-1&&(n=this.currentLevel)!=null&&n.details&&(this.currentLevelIndex=this.currentLevel.details.fragments[0].level),this.manualLevelIndex>-1&&(this.manualLevelIndex=this.currentLevelIndex);const _=s.length-1;this._firstLevel=Math.min(this._firstLevel,_),this._startLevel&&(this._startLevel=Math.min(this._startLevel,_)),this.hls.trigger(o.LEVELS_UPDATED,{levels:s})}onLevelsUpdated(t,{levels:n}){this._levels=n}checkMaxAutoUpdated(){const{autoLevelCapping:t,maxAutoLevel:n,maxHdcpLevel:s}=this.hls;this._maxAutoLevel!==n&&(this._maxAutoLevel=n,this.hls.trigger(o.MAX_AUTO_LEVEL_UPDATED,{autoLevelCapping:t,levels:this.levels,maxAutoLevel:n,minAutoLevel:this.hls.minAutoLevel,maxHdcpLevel:s}))}}function Nf(P){const t={};P.forEach(n=>{const s=n.groupId||"";n.id=t[s]=t[s]||0,t[s]++})}function af(){return self.SourceBuffer||self.WebKitSourceBuffer}function $f(){if(!ae())return!1;const t=af();return!t||t.prototype&&typeof t.prototype.appendBuffer=="function"&&typeof t.prototype.remove=="function"}function Tf(){if(!$f())return!1;const P=ae();return typeof(P==null?void 0:P.isTypeSupported)=="function"&&(["avc1.42E01E,mp4a.40.2","av01.0.01M.08","vp09.00.50.08"].some(t=>P.isTypeSupported(wt(t,"video")))||["mp4a.40.2","fLaC"].some(t=>P.isTypeSupported(wt(t,"audio"))))}function g(){var P;const t=af();return typeof(t==null||(P=t.prototype)==null?void 0:P.changeType)=="function"}const C=100;class z extends ga{constructor(t,n,s){super(t,n,s,"stream-controller",u.MAIN),this.audioCodecSwap=!1,this.level=-1,this._forceStartLoad=!1,this._hasEnoughToStart=!1,this.altAudio=0,this.audioOnly=!1,this.fragPlaying=null,this.fragLastKbps=0,this.couldBacktrack=!1,this.backtrackFragment=null,this.audioCodecSwitch=!1,this.videoBuffer=null,this.onMediaPlaying=()=>{this.tick()},this.onMediaSeeked=()=>{const _=this.media,E=_?_.currentTime:null;if(E===null||!r(E)||(this.log(`Media seeked to ${E.toFixed(3)}`),!this.getBufferedFrag(E)))return;const T=this.getFwdBufferInfoAtPos(_,E,u.MAIN,0);if(T===null||T.len===0){this.warn(`Main forward buffer length at ${E} on "seeked" event ${T?T.len:"empty"})`);return}this.tick()},this.registerListeners()}registerListeners(){super.registerListeners();const{hls:t}=this;t.on(o.MANIFEST_PARSED,this.onManifestParsed,this),t.on(o.LEVEL_LOADING,this.onLevelLoading,this),t.on(o.LEVEL_LOADED,this.onLevelLoaded,this),t.on(o.FRAG_LOAD_EMERGENCY_ABORTED,this.onFragLoadEmergencyAborted,this),t.on(o.AUDIO_TRACK_SWITCHING,this.onAudioTrackSwitching,this),t.on(o.AUDIO_TRACK_SWITCHED,this.onAudioTrackSwitched,this),t.on(o.BUFFER_CREATED,this.onBufferCreated,this),t.on(o.BUFFER_FLUSHED,this.onBufferFlushed,this),t.on(o.LEVELS_UPDATED,this.onLevelsUpdated,this),t.on(o.FRAG_BUFFERED,this.onFragBuffered,this)}unregisterListeners(){super.unregisterListeners();const{hls:t}=this;t.off(o.MANIFEST_PARSED,this.onManifestParsed,this),t.off(o.LEVEL_LOADED,this.onLevelLoaded,this),t.off(o.FRAG_LOAD_EMERGENCY_ABORTED,this.onFragLoadEmergencyAborted,this),t.off(o.AUDIO_TRACK_SWITCHING,this.onAudioTrackSwitching,this),t.off(o.AUDIO_TRACK_SWITCHED,this.onAudioTrackSwitched,this),t.off(o.BUFFER_CREATED,this.onBufferCreated,this),t.off(o.BUFFER_FLUSHED,this.onBufferFlushed,this),t.off(o.LEVELS_UPDATED,this.onLevelsUpdated,this),t.off(o.FRAG_BUFFERED,this.onFragBuffered,this)}onHandlerDestroying(){this.onMediaPlaying=this.onMediaSeeked=null,this.unregisterListeners(),super.onHandlerDestroying()}startLoad(t,n){if(this.levels){const{lastCurrentTime:s,hls:_}=this;if(this.stopLoad(),this.setInterval(C),this.level=-1,!this.startFragRequested){let E=_.startLevel;E===-1&&(_.config.testBandwidth&&this.levels.length>1?(E=0,this.bitrateTest=!0):E=_.firstAutoLevel),_.nextLoadLevel=E,this.level=_.loadLevel,this._hasEnoughToStart=!!n}s>0&&t===-1&&!n&&(this.log(`Override startPosition with lastCurrentTime @${s.toFixed(3)}`),t=s),this.state=Vr.IDLE,this.nextLoadPosition=this.lastCurrentTime=t+this.timelineOffset,this.startPosition=n?-1:t,this.tick()}else this._forceStartLoad=!0,this.state=Vr.STOPPED}stopLoad(){this._forceStartLoad=!1,super.stopLoad()}doTick(){switch(this.state){case Vr.WAITING_LEVEL:{const{levels:n,level:s}=this,_=n==null?void 0:n[s],E=_==null?void 0:_.details;if(E&&(!E.live||this.levelLastLoaded===_&&!this.waitForLive(_))){if(this.waitForCdnTuneIn(E))break;this.state=Vr.IDLE;break}else if(this.hls.nextLoadLevel!==this.level){this.state=Vr.IDLE;break}break}case Vr.FRAG_LOADING_WAITING_RETRY:{var t;const n=self.performance.now(),s=this.retryDate;if(!s||n>=s||(t=this.media)!=null&&t.seeking){const{levels:_,level:E}=this,T=_==null?void 0:_[E];this.resetStartWhenNotLoaded(T||null),this.state=Vr.IDLE}}break}this.state===Vr.IDLE&&this.doTickIdle(),this.onTickEnd()}onTickEnd(){var t;super.onTickEnd(),(t=this.media)!=null&&t.readyState&&this.media.seeking===!1&&(this.lastCurrentTime=this.media.currentTime),this.checkFragmentChanged()}doTickIdle(){const{hls:t,levelLastLoaded:n,levels:s,media:_}=this;if(n===null||!_&&!this.primaryPrefetch&&(this.startFragRequested||!t.config.startFragPrefetch)||this.altAudio&&this.audioOnly)return;const E=this.buffering?t.nextLoadLevel:t.loadLevel;if(!(s!=null&&s[E]))return;const T=s[E],U=this.getMainFwdBufferInfo();if(U===null)return;const W=this.getLevelDetails();if(W&&this._streamEnded(U,W)){const at={};this.altAudio===2&&(at.type="video"),this.hls.trigger(o.BUFFER_EOS,at),this.state=Vr.ENDED;return}if(!this.buffering)return;t.loadLevel!==E&&t.manualLevel===-1&&this.log(`Adapting to level ${E} from level ${this.level}`),this.level=t.nextLoadLevel=E;const N=T.details;if(!N||this.state===Vr.WAITING_LEVEL||this.waitForLive(T)){this.level=E,this.state=Vr.WAITING_LEVEL,this.startFragRequested=!1;return}const te=U.len,ce=this.getMaxBufferLength(T.maxBitrate);if(te>=ce)return;this.backtrackFragment&&this.backtrackFragment.start>U.end&&(this.backtrackFragment=null);const xe=this.backtrackFragment?this.backtrackFragment.start:U.end;let Ie=this.getNextFragment(xe,N);if(this.couldBacktrack&&!this.fragPrevious&&Ie&&me(Ie)&&this.fragmentTracker.getState(Ie)!==nr.OK){var Ae;const tt=((Ae=this.backtrackFragment)!=null?Ae:Ie).sn-N.startSN,kt=N.fragments[tt-1];kt&&Ie.cc===kt.cc&&(Ie=kt,this.fragmentTracker.removeFragment(kt))}else this.backtrackFragment&&U.len&&(this.backtrackFragment=null);if(Ie&&this.isLoopLoading(Ie,xe)){if(!Ie.gap){const tt=this.audioOnly&&!this.altAudio?$.AUDIO:$.VIDEO,kt=(tt===$.VIDEO?this.videoBuffer:this.mediaBuffer)||this.media;kt&&this.afterBufferFlushed(kt,tt,u.MAIN)}Ie=this.getNextFragmentLoopLoading(Ie,N,U,u.MAIN,ce)}Ie&&(Ie.initSegment&&!Ie.initSegment.data&&!this.bitrateTest&&(Ie=Ie.initSegment),this.loadFragment(Ie,T,xe))}loadFragment(t,n,s){const _=this.fragmentTracker.getState(t);_===nr.NOT_LOADED||_===nr.PARTIAL?me(t)?this.bitrateTest?(this.log(`Fragment ${t.sn} of level ${t.level} is being downloaded to test bitrate and will not be buffered`),this._loadBitrateTestFrag(t,n)):super.loadFragment(t,n,s):this._loadInitSegment(t,n):this.clearTrackerIfNeeded(t)}getBufferedFrag(t){return this.fragmentTracker.getBufferedFrag(t,u.MAIN)}followingBufferedFrag(t){return t?this.getBufferedFrag(t.end+.5):null}immediateLevelSwitch(){this.abortCurrentFrag(),this.flushMainBuffer(0,Number.POSITIVE_INFINITY)}nextLevelSwitch(){const{levels:t,media:n}=this;if(n!=null&&n.readyState){let s;const _=this.getAppendedFrag(n.currentTime);_&&_.start>1&&this.flushMainBuffer(0,_.start-1);const E=this.getLevelDetails();if(E!=null&&E.live){const U=this.getMainFwdBufferInfo();if(!U||U.len{const T=E.audioCodec;T&&(s=s||T.indexOf("mp4a.40.2")!==-1,_=_||T.indexOf("mp4a.40.5")!==-1)}),this.audioCodecSwitch=s&&_&&!g(),this.audioCodecSwitch&&this.log("Both AAC/HE-AAC audio found in levels; declaring level codec as HE-AAC"),this.levels=n.levels,this.startFragRequested=!1}onLevelLoading(t,n){const{levels:s}=this;if(!s||this.state!==Vr.IDLE)return;const _=n.levelInfo;(!_.details||_.details.live&&(this.levelLastLoaded!==_||_.details.expired)||this.waitForCdnTuneIn(_.details))&&(this.state=Vr.WAITING_LEVEL)}onLevelLoaded(t,n){var s;const{levels:_,startFragRequested:E}=this,T=n.level,U=n.details,W=U.totalduration;if(!_){this.warn(`Levels were reset while loading level ${T}`);return}this.log(`Level ${T} loaded [${U.startSN},${U.endSN}]${U.lastPartSn?`[part-${U.lastPartSn}-${U.lastPartIndex}]`:""}, cc [${U.startCC}, ${U.endCC}] duration:${W}`);const N=n.levelInfo,te=this.fragCurrent;te&&(this.state===Vr.FRAG_LOADING||this.state===Vr.FRAG_LOADING_WAITING_RETRY)&&te.level!==n.level&&te.loader&&this.abortCurrentFrag();let ce=0;if(U.live||(s=N.details)!=null&&s.live){var xe;if(this.checkLiveUpdate(U),U.deltaUpdateFailed)return;ce=this.alignPlaylists(U,N.details,(xe=this.levelLastLoaded)==null?void 0:xe.details)}if(N.details=U,this.levelLastLoaded=N,E||this.setStartPosition(U,ce),this.hls.trigger(o.LEVEL_UPDATED,{details:U,level:T}),this.state===Vr.WAITING_LEVEL){if(this.waitForCdnTuneIn(U))return;this.state=Vr.IDLE}E&&U.live&&this.synchronizeToLiveEdge(U),this.tick()}synchronizeToLiveEdge(t){const{config:n,media:s}=this;if(!s)return;const _=this.hls.liveSyncPosition,E=this.getLoadPosition(),T=t.fragmentStart,U=t.edge,W=E>=T-n.maxFragLookUpTolerance&&E<=U;if(_!==null&&s.duration>_&&(E<_||!W)){const te=n.liveMaxLatencyDuration!==void 0?n.liveMaxLatencyDuration:n.liveMaxLatencyDurationCount*t.targetduration;if((!W&&s.readyState<4||E{var T;(T=this.hls)==null||T.trigger(o.AUDIO_TRACK_SWITCHED,n)}),s.trigger(o.BUFFER_FLUSHING,{startOffset:0,endOffset:Number.POSITIVE_INFINITY,type:null});return}s.trigger(o.AUDIO_TRACK_SWITCHED,n)}}onAudioTrackSwitched(t,n){const s=yi(n.url,this.hls);if(s){const _=this.videoBuffer;_&&this.mediaBuffer!==_&&(this.log("Switching on alternate audio, use video.buffered to schedule main fragment loading"),this.mediaBuffer=_)}this.altAudio=s?2:0,this.tick()}onBufferCreated(t,n){const s=n.tracks;let _,E,T=!1;for(const U in s){const W=s[U];if(W.id==="main"){if(E=U,_=W,U==="video"){const N=s[U];N&&(this.videoBuffer=N.buffer)}}else T=!0}T&&_?(this.log(`Alternate track found, use ${E}.buffered to schedule main fragment loading`),this.mediaBuffer=_.buffer):this.mediaBuffer=this.media}onFragBuffered(t,n){const{frag:s,part:_}=n,E=s.type===u.MAIN;if(E){if(this.fragContextChanged(s)){this.warn(`Fragment ${s.sn}${_?" p: "+_.index:""} of level ${s.level} finished buffering, but was aborted. state: ${this.state}`),this.state===Vr.PARSED&&(this.state=Vr.IDLE);return}const U=_?_.stats:s.stats;this.fragLastKbps=Math.round(8*U.total/(U.buffering.end-U.loading.first)),me(s)&&(this.fragPrevious=s),this.fragBufferedComplete(s,_)}const T=this.media;T&&(!this._hasEnoughToStart&&_i.getBuffered(T).length&&(this._hasEnoughToStart=!0,this.seekToStartPos()),E&&this.tick())}get hasEnoughToStart(){return this._hasEnoughToStart}onError(t,n){var s;if(n.fatal){this.state=Vr.ERROR;return}switch(n.details){case f.FRAG_GAP:case f.FRAG_PARSING_ERROR:case f.FRAG_DECRYPT_ERROR:case f.FRAG_LOAD_ERROR:case f.FRAG_LOAD_TIMEOUT:case f.KEY_LOAD_ERROR:case f.KEY_LOAD_TIMEOUT:this.onFragmentOrKeyLoadError(u.MAIN,n);break;case f.LEVEL_LOAD_ERROR:case f.LEVEL_LOAD_TIMEOUT:case f.LEVEL_PARSING_ERROR:!n.levelRetry&&this.state===Vr.WAITING_LEVEL&&((s=n.context)==null?void 0:s.type)===h.LEVEL&&(this.state=Vr.IDLE);break;case f.BUFFER_ADD_CODEC_ERROR:case f.BUFFER_APPEND_ERROR:if(n.parent!=="main")return;this.resetLoadingState();break;case f.BUFFER_FULL_ERROR:if(n.parent!=="main")return;this.reduceLengthAndFlushBuffer(n)&&this.flushMainBuffer(0,Number.POSITIVE_INFINITY);break;case f.INTERNAL_EXCEPTION:this.recoverWorkerError(n);break}}onFragLoadEmergencyAborted(){this.state=Vr.IDLE,this._hasEnoughToStart||(this.startFragRequested=!1,this.nextLoadPosition=this.lastCurrentTime),this.tickImmediate()}onBufferFlushed(t,{type:n}){if(n!==$.AUDIO||!this.altAudio){const s=(n===$.VIDEO?this.videoBuffer:this.mediaBuffer)||this.media;s&&(this.afterBufferFlushed(s,n,u.MAIN),this.tick())}}onLevelsUpdated(t,n){this.level>-1&&this.fragCurrent&&(this.level=this.fragCurrent.level,this.level===-1&&this.resetWhenMissingContext(this.fragCurrent)),this.levels=n.levels}swapAudioCodec(){this.audioCodecSwap=!this.audioCodecSwap}seekToStartPos(){const{media:t}=this;if(!t)return;const n=t.currentTime;let s=this.startPosition;if(s>=0&&n0&&(W{const{hls:_}=this,E=s==null?void 0:s.frag;if(!E||this.fragContextChanged(E))return;n.fragmentError=0,this.state=Vr.IDLE,this.startFragRequested=!1,this.bitrateTest=!1;const T=E.stats;T.parsing.start=T.parsing.end=T.buffering.start=T.buffering.end=self.performance.now(),_.trigger(o.FRAG_LOADED,s),E.bitrateTest=!1})}_handleTransmuxComplete(t){var n;const s=this.playlistType,{hls:_}=this,{remuxResult:E,chunkMeta:T}=t,U=this.getCurrentContext(T);if(!U){this.resetWhenMissingContext(T);return}const{frag:W,part:N,level:te}=U,{video:ce,text:xe,id3:Ie,initSegment:Ae}=E,{details:at}=te,tt=this.altAudio?void 0:E.audio;if(this.fragContextChanged(W)){this.fragmentTracker.removeFragment(W);return}if(this.state=Vr.PARSING,Ae){if(Ae!=null&&Ae.tracks){const sr=W.initSegment||W;this._bufferInitSegment(te,Ae.tracks,sr,T),_.trigger(o.FRAG_PARSING_INIT_SEGMENT,{frag:sr,id:s,tracks:Ae.tracks})}const kt=Ae.initPTS,fr=Ae.timescale;r(kt)&&(this.initPTS[W.cc]={baseTime:kt,timescale:fr},_.trigger(o.INIT_PTS_FOUND,{frag:W,id:s,initPTS:kt,timescale:fr}))}if(ce&&at){tt&&ce.type==="audiovideo"&&this.logMuxedErr(W);const kt=at.fragments[W.sn-1-at.startSN],fr=W.sn===at.startSN,sr=!kt||W.cc>kt.cc;if(E.independent!==!1){const{startPTS:kr,endPTS:zr,startDTS:ln,endDTS:Wr}=ce;if(N)N.elementaryStreams[ce.type]={startPTS:kr,endPTS:zr,startDTS:ln,endDTS:Wr};else if(ce.firstKeyFrame&&ce.independent&&T.id===1&&!sr&&(this.couldBacktrack=!0),ce.dropped&&ce.independent){const Jr=this.getMainFwdBufferInfo(),un=(Jr?Jr.end:this.getLoadPosition())+this.config.maxBufferHole,Kr=ce.firstKeyFramePTS?ce.firstKeyFramePTS:kr;if(!fr&&unyc&&(W.gap=!0);W.setElementaryStreamInfo(ce.type,kr,zr,ln,Wr),this.backtrackFragment&&(this.backtrackFragment=W),this.bufferFragmentData(ce,W,N,T,fr||sr)}else if(fr||sr)W.gap=!0;else{this.backtrack(W);return}}if(tt){const{startPTS:kt,endPTS:fr,startDTS:sr,endDTS:kr}=tt;N&&(N.elementaryStreams[$.AUDIO]={startPTS:kt,endPTS:fr,startDTS:sr,endDTS:kr}),W.setElementaryStreamInfo($.AUDIO,kt,fr,sr,kr),this.bufferFragmentData(tt,W,N,T)}if(at&&Ie!=null&&(n=Ie.samples)!=null&&n.length){const kt={id:s,frag:W,details:at,samples:Ie.samples};_.trigger(o.FRAG_PARSING_METADATA,kt)}if(at&&xe){const kt={id:s,frag:W,details:at,samples:xe.samples};_.trigger(o.FRAG_PARSING_USERDATA,kt)}}logMuxedErr(t){this.warn(`${me(t)?"Media":"Init"} segment with muxed audiovideo where only video expected: ${t.url}`)}_bufferInitSegment(t,n,s,_){if(this.state!==Vr.PARSING)return;this.audioOnly=!!n.audio&&!n.video,this.altAudio&&!this.audioOnly&&(delete n.audio,n.audiovideo&&this.logMuxedErr(s));const{audio:E,video:T,audiovideo:U}=n;if(E){let N=Gr(E.codec,t.audioCodec);N==="mp4a"&&(N="mp4a.40.5");const te=navigator.userAgent.toLowerCase();if(this.audioCodecSwitch){N&&(N.indexOf("mp4a.40.5")!==-1?N="mp4a.40.2":N="mp4a.40.5");const ce=E.metadata;ce&&"channelCount"in ce&&(ce.channelCount||1)!==1&&te.indexOf("firefox")===-1&&(N="mp4a.40.5")}N&&N.indexOf("mp4a.40.5")!==-1&&te.indexOf("android")!==-1&&E.container!=="audio/mpeg"&&(N="mp4a.40.2",this.log(`Android: force audio codec to ${N}`)),t.audioCodec&&t.audioCodec!==N&&this.log(`Swapping manifest audio codec "${t.audioCodec}" for "${N}"`),E.levelCodec=N,E.id=u.MAIN,this.log(`Init audio buffer, container:${E.container}, codecs[selected/level/parsed]=[${N||""}/${t.audioCodec||""}/${E.codec}]`),delete n.audiovideo}if(T){T.levelCodec=t.videoCodec,T.id=u.MAIN;const N=T.codec;if((N==null?void 0:N.length)===4)switch(N){case"hvc1":case"hev1":T.codec="hvc1.1.6.L120.90";break;case"av01":T.codec="av01.0.04M.08";break;case"avc1":T.codec="avc1.42e01e";break}this.log(`Init video buffer, container:${T.container}, codecs[level/parsed]=[${t.videoCodec||""}/${N}]${T.codec!==N?" parsed-corrected="+T.codec:""}${T.supplemental?" supplemental="+T.supplemental:""}`),delete n.audiovideo}U&&(this.log(`Init audiovideo buffer, container:${U.container}, codecs[level/parsed]=[${t.codecs}/${U.codec}]`),delete n.video,delete n.audio);const W=Object.keys(n);if(W.length){if(this.hls.trigger(o.BUFFER_CODECS,n),!this.hls)return;W.forEach(N=>{const ce=n[N].initSegment;ce!=null&&ce.byteLength&&this.hls.trigger(o.BUFFER_APPENDING,{type:N,data:ce,frag:s,part:null,chunkMeta:_,parent:s.type})})}this.tickImmediate()}getMainFwdBufferInfo(){const t=this.mediaBuffer&&this.altAudio===2?this.mediaBuffer:this.media;return this.getFwdBufferInfo(t,u.MAIN)}get maxBufferLength(){const{levels:t,level:n}=this,s=t==null?void 0:t[n];return s?this.getMaxBufferLength(s.maxBitrate):this.config.maxBufferLength}backtrack(t){this.couldBacktrack=!0,this.backtrackFragment=t,this.resetTransmuxer(),this.flushBufferGap(t),this.fragmentTracker.removeFragment(t),this.fragPrevious=null,this.nextLoadPosition=t.start,this.state=Vr.IDLE}checkFragmentChanged(){const t=this.media;let n=null;if(t&&t.readyState>1&&t.seeking===!1){const s=t.currentTime;if(_i.isBuffered(t,s)?n=this.getAppendedFrag(s):_i.isBuffered(t,s+.1)&&(n=this.getAppendedFrag(s+.1)),n){this.backtrackFragment=null;const _=this.fragPlaying,E=n.level;(!_||n.sn!==_.sn||_.level!==E)&&(this.fragPlaying=n,this.hls.trigger(o.FRAG_CHANGED,{frag:n}),(!_||_.level!==E)&&this.hls.trigger(o.LEVEL_SWITCHED,{level:E}))}}}get nextLevel(){const t=this.nextBufferedFrag;return t?t.level:-1}get currentFrag(){var t;if(this.fragPlaying)return this.fragPlaying;const n=((t=this.media)==null?void 0:t.currentTime)||this.lastCurrentTime;return r(n)?this.getAppendedFrag(n):null}get currentProgramDateTime(){var t;const n=((t=this.media)==null?void 0:t.currentTime)||this.lastCurrentTime;if(r(n)){const s=this.getLevelDetails(),_=this.currentFrag||(s?qn(null,s.fragments,n):null);if(_){const E=_.programDateTime;if(E!==null){const T=E+(n-_.start)*1e3;return new Date(T)}}}return null}get currentLevel(){const t=this.currentFrag;return t?t.level:-1}get nextBufferedFrag(){const t=this.currentFrag;return t?this.followingBufferedFrag(t):null}get forceStartLoad(){return this._forceStartLoad}}class ve{constructor(t){this.config=void 0,this.keyUriToKeyInfo={},this.emeController=null,this.config=t}abort(t){for(const s in this.keyUriToKeyInfo){const _=this.keyUriToKeyInfo[s].loader;if(_){var n;if(t&&t!==((n=_.context)==null?void 0:n.frag.type))return;_.abort()}}}detach(){for(const t in this.keyUriToKeyInfo){const n=this.keyUriToKeyInfo[t];(n.mediaKeySessionContext||n.decryptdata.isCommonEncryption)&&delete this.keyUriToKeyInfo[t]}}destroy(){this.detach();for(const t in this.keyUriToKeyInfo){const n=this.keyUriToKeyInfo[t].loader;n&&n.destroy()}this.keyUriToKeyInfo={}}createKeyLoadError(t,n=f.KEY_LOAD_ERROR,s,_,E){return new Ha({type:c.NETWORK_ERROR,details:n,fatal:!1,frag:t,response:E,error:s,networkDetails:_})}loadClear(t,n){if(this.emeController&&this.config.emeEnabled&&!this.emeController.getSelectedKeySystemFormats().length){if(n.length){const{sn:s,cc:_}=t;for(let E=0;E{if(T.setKeyFormat(U),this.emeController&&this.config.requireKeySystemAccessOnStart){const W=Zs(U);if(W)return this.emeController.getKeySystemAccess([W])}})}}else if(this.config.requireKeySystemAccessOnStart){const s=po(this.config);if(s.length)return this.emeController.getKeySystemAccess(s)}}return null}load(t){return!t.decryptdata&&t.encrypted&&this.emeController&&this.config.emeEnabled?this.emeController.selectKeySystemFormat(t).then(n=>this.loadInternal(t,n)):this.loadInternal(t)}loadInternal(t,n){var s,_;n&&t.setKeyFormat(n);const E=t.decryptdata;if(!E){const N=new Error(n?`Expected frag.decryptdata to be defined after setting format ${n}`:"Missing decryption data on fragment in onKeyLoading");return Promise.reject(this.createKeyLoadError(t,f.KEY_LOAD_ERROR,N))}const T=E.uri;if(!T)return Promise.reject(this.createKeyLoadError(t,f.KEY_LOAD_ERROR,new Error(`Invalid key URI: "${T}"`)));let U=this.keyUriToKeyInfo[T];if((s=U)!=null&&s.decryptdata.key)return E.key=U.decryptdata.key,Promise.resolve({frag:t,keyInfo:U});if((_=U)!=null&&_.keyLoadPromise){var W;switch((W=U.mediaKeySessionContext)==null?void 0:W.keyStatus){case void 0:case"status-pending":case"usable":case"usable-in-future":return U.keyLoadPromise.then(N=>(E.key=N.keyInfo.decryptdata.key,{frag:t,keyInfo:U}))}}switch(U=this.keyUriToKeyInfo[T]={decryptdata:E,keyLoadPromise:null,loader:null,mediaKeySessionContext:null},E.method){case"ISO-23001-7":case"SAMPLE-AES":case"SAMPLE-AES-CENC":case"SAMPLE-AES-CTR":return E.keyFormat==="identity"?this.loadKeyHTTP(U,t):this.loadKeyEME(U,t);case"AES-128":case"AES-256":case"AES-256-CTR":return this.loadKeyHTTP(U,t);default:return Promise.reject(this.createKeyLoadError(t,f.KEY_LOAD_ERROR,new Error(`Key supplied with unsupported METHOD: "${E.method}"`)))}}loadKeyEME(t,n){const s={frag:n,keyInfo:t};if(this.emeController&&this.config.emeEnabled){const _=this.emeController.loadKey(s);if(_)return(t.keyLoadPromise=_.then(E=>(t.mediaKeySessionContext=E,s))).catch(E=>{throw t.keyLoadPromise=null,E})}return Promise.resolve(s)}loadKeyHTTP(t,n){const s=this.config,_=s.loader,E=new _(s);return n.keyLoader=t.loader=E,t.keyLoadPromise=new Promise((T,U)=>{const W={keyInfo:t,frag:n,responseType:"arraybuffer",url:t.decryptdata.uri},N=s.keyLoadPolicy.default,te={loadPolicy:N,timeout:N.maxLoadTimeMs,maxRetry:0,retryDelay:0,maxRetryDelay:0},ce={onSuccess:(xe,Ie,Ae,at)=>{const{frag:tt,keyInfo:kt,url:fr}=Ae;if(!tt.decryptdata||kt!==this.keyUriToKeyInfo[fr])return U(this.createKeyLoadError(tt,f.KEY_LOAD_ERROR,new Error("after key load, decryptdata unset or changed"),at));kt.decryptdata.key=tt.decryptdata.key=new Uint8Array(xe.data),tt.keyLoader=null,kt.loader=null,T({frag:tt,keyInfo:kt})},onError:(xe,Ie,Ae,at)=>{this.resetLoader(Ie),U(this.createKeyLoadError(n,f.KEY_LOAD_ERROR,new Error(`HTTP Error ${xe.code} loading key ${xe.text}`),Ae,b({url:W.url,data:void 0},xe)))},onTimeout:(xe,Ie,Ae)=>{this.resetLoader(Ie),U(this.createKeyLoadError(n,f.KEY_LOAD_TIMEOUT,new Error("key loading timed out"),Ae))},onAbort:(xe,Ie,Ae)=>{this.resetLoader(Ie),U(this.createKeyLoadError(n,f.INTERNAL_ABORTED,new Error("key loading aborted"),Ae))}};E.load(W,te,ce)})}resetLoader(t){const{frag:n,keyInfo:s,url:_}=t,E=s.loader;n.keyLoader===E&&(n.keyLoader=null,s.loader=null),delete this.keyUriToKeyInfo[_],E&&E.destroy()}}function Le(P){const{type:t}=P;switch(t){case h.AUDIO_TRACK:return u.AUDIO;case h.SUBTITLE_TRACK:return u.SUBTITLE;default:return u.MAIN}}function ut(P,t){let n=P.url;return(n===void 0||n.indexOf("data:")===0)&&(n=t.url),n}class jt{constructor(t){this.hls=void 0,this.loaders=Object.create(null),this.variableList=null,this.onManifestLoaded=this.checkAutostartLoad,this.hls=t,this.registerListeners()}startLoad(t){}stopLoad(){this.destroyInternalLoaders()}registerListeners(){const{hls:t}=this;t.on(o.MANIFEST_LOADING,this.onManifestLoading,this),t.on(o.LEVEL_LOADING,this.onLevelLoading,this),t.on(o.AUDIO_TRACK_LOADING,this.onAudioTrackLoading,this),t.on(o.SUBTITLE_TRACK_LOADING,this.onSubtitleTrackLoading,this),t.on(o.LEVELS_UPDATED,this.onLevelsUpdated,this)}unregisterListeners(){const{hls:t}=this;t.off(o.MANIFEST_LOADING,this.onManifestLoading,this),t.off(o.LEVEL_LOADING,this.onLevelLoading,this),t.off(o.AUDIO_TRACK_LOADING,this.onAudioTrackLoading,this),t.off(o.SUBTITLE_TRACK_LOADING,this.onSubtitleTrackLoading,this),t.off(o.LEVELS_UPDATED,this.onLevelsUpdated,this)}createInternalLoader(t){const n=this.hls.config,s=n.pLoader,_=n.loader,E=s||_,T=new E(n);return this.loaders[t.type]=T,T}getInternalLoader(t){return this.loaders[t.type]}resetInternalLoader(t){this.loaders[t]&&delete this.loaders[t]}destroyInternalLoaders(){for(const t in this.loaders){const n=this.loaders[t];n&&n.destroy(),this.resetInternalLoader(t)}}destroy(){this.variableList=null,this.unregisterListeners(),this.destroyInternalLoaders()}onManifestLoading(t,n){const{url:s}=n;this.variableList=null,this.load({id:null,level:0,responseType:"text",type:h.MANIFEST,url:s,deliveryDirectives:null,levelOrTrack:null})}onLevelLoading(t,n){const{id:s,level:_,pathwayId:E,url:T,deliveryDirectives:U,levelInfo:W}=n;this.load({id:s,level:_,pathwayId:E,responseType:"text",type:h.LEVEL,url:T,deliveryDirectives:U,levelOrTrack:W})}onAudioTrackLoading(t,n){const{id:s,groupId:_,url:E,deliveryDirectives:T,track:U}=n;this.load({id:s,groupId:_,level:null,responseType:"text",type:h.AUDIO_TRACK,url:E,deliveryDirectives:T,levelOrTrack:U})}onSubtitleTrackLoading(t,n){const{id:s,groupId:_,url:E,deliveryDirectives:T,track:U}=n;this.load({id:s,groupId:_,level:null,responseType:"text",type:h.SUBTITLE_TRACK,url:E,deliveryDirectives:T,levelOrTrack:U})}onLevelsUpdated(t,n){const s=this.loaders[h.LEVEL];if(s){const _=s.context;_&&!n.levels.some(E=>E===_.levelOrTrack)&&(s.abort(),delete this.loaders[h.LEVEL])}}load(t){var n;const s=this.hls.config;let _=this.getInternalLoader(t);if(_){const N=this.hls.logger,te=_.context;if(te&&te.levelOrTrack===t.levelOrTrack&&(te.url===t.url||te.deliveryDirectives&&!t.deliveryDirectives)){te.url===t.url?N.log(`[playlist-loader]: ignore ${t.url} ongoing request`):N.log(`[playlist-loader]: ignore ${t.url} in favor of ${te.url}`);return}N.log(`[playlist-loader]: aborting previous loader for type: ${t.type}`),_.abort()}let E;if(t.type===h.MANIFEST?E=s.manifestLoadPolicy.default:E=y({},s.playlistLoadPolicy.default,{timeoutRetry:null,errorRetry:null}),_=this.createInternalLoader(t),r((n=t.deliveryDirectives)==null?void 0:n.part)){let N;if(t.type===h.LEVEL&&t.level!==null?N=this.hls.levels[t.level].details:t.type===h.AUDIO_TRACK&&t.id!==null?N=this.hls.audioTracks[t.id].details:t.type===h.SUBTITLE_TRACK&&t.id!==null&&(N=this.hls.subtitleTracks[t.id].details),N){const te=N.partTarget,ce=N.targetduration;if(te&&ce){const xe=Math.max(te*3,ce*.8)*1e3;E=y({},E,{maxTimeToFirstByteMs:Math.min(xe,E.maxTimeToFirstByteMs),maxLoadTimeMs:Math.min(xe,E.maxTimeToFirstByteMs)})}}}const T=E.errorRetry||E.timeoutRetry||{},U={loadPolicy:E,timeout:E.maxLoadTimeMs,maxRetry:T.maxNumRetry||0,retryDelay:T.retryDelayMs||0,maxRetryDelay:T.maxRetryDelayMs||0},W={onSuccess:(N,te,ce,xe)=>{const Ie=this.getInternalLoader(ce);this.resetInternalLoader(ce.type);const Ae=N.data;if(Ae.indexOf("#EXTM3U")!==0){this.handleManifestParsingError(N,ce,new Error("no EXTM3U delimiter"),xe||null,te);return}te.parsing.start=performance.now(),So.isMediaPlaylist(Ae)||ce.type!==h.MANIFEST?this.handleTrackOrLevelPlaylist(N,te,ce,xe||null,Ie):this.handleMasterPlaylist(N,te,ce,xe)},onError:(N,te,ce,xe)=>{this.handleNetworkError(te,ce,!1,N,xe)},onTimeout:(N,te,ce)=>{this.handleNetworkError(te,ce,!0,void 0,N)}};_.load(t,U,W)}checkAutostartLoad(){if(!this.hls)return;const{config:{autoStartLoad:t,startPosition:n},forceStartLoad:s}=this.hls;(t||s)&&(this.hls.logger.log(`${t?"auto":"force"} startLoad with configured startPosition ${n}`),this.hls.startLoad(n))}handleMasterPlaylist(t,n,s,_){const E=this.hls,T=t.data,U=ut(t,s),W=So.parseMasterPlaylist(T,U);if(W.playlistParsingError){this.handleManifestParsingError(t,s,W.playlistParsingError,_,n);return}const{contentSteering:N,levels:te,sessionData:ce,sessionKeys:xe,startTimeOffset:Ie,variableList:Ae}=W;this.variableList=Ae;const{AUDIO:at=[],SUBTITLES:tt,"CLOSED-CAPTIONS":kt}=So.parseMasterPlaylistMedia(T,U,W);at.length&&!at.some(sr=>!sr.url)&&te[0].audioCodec&&!te[0].attrs.AUDIO&&(this.hls.logger.log("[playlist-loader]: audio codec signaled in quality level, but no embedded audio track signaled, create one"),at.unshift({type:"main",name:"main",groupId:"main",default:!1,autoselect:!1,forced:!1,id:-1,attrs:new Ni({}),bitrate:0,url:""})),E.trigger(o.MANIFEST_LOADED,{levels:te,audioTracks:at,subtitles:tt,captions:kt,contentSteering:N,url:U,stats:n,networkDetails:_,sessionData:ce,sessionKeys:xe,startTimeOffset:Ie,variableList:Ae})}handleTrackOrLevelPlaylist(t,n,s,_,E){const T=this.hls,{id:U,level:W,type:N}=s,te=ut(t,s),ce=r(W)?W:r(U)?U:0,xe=Le(s),Ie=So.parseLevelPlaylist(t.data,te,ce,xe,0,this.variableList);if(N===h.MANIFEST){const Ae={attrs:new Ni({}),bitrate:0,details:Ie,name:"",url:te};Ie.requestScheduled=n.loading.start+Mn(Ie,0),T.trigger(o.MANIFEST_LOADED,{levels:[Ae],audioTracks:[],url:te,stats:n,networkDetails:_,sessionData:null,sessionKeys:null,contentSteering:null,startTimeOffset:null,variableList:null})}n.parsing.end=performance.now(),s.levelDetails=Ie,this.handlePlaylistLoaded(Ie,t,n,s,_,E)}handleManifestParsingError(t,n,s,_,E){this.hls.trigger(o.ERROR,{type:c.NETWORK_ERROR,details:f.MANIFEST_PARSING_ERROR,fatal:n.type===h.MANIFEST,url:t.url,err:s,error:s,reason:s.message,response:t,context:n,networkDetails:_,stats:E})}handleNetworkError(t,n,s=!1,_,E){let T=`A network ${s?"timeout":"error"+(_?" (status "+_.code+")":"")} occurred while loading ${t.type}`;t.type===h.LEVEL?T+=`: ${t.level} id: ${t.id}`:(t.type===h.AUDIO_TRACK||t.type===h.SUBTITLE_TRACK)&&(T+=` id: ${t.id} group-id: "${t.groupId}"`);const U=new Error(T);this.hls.logger.warn(`[playlist-loader]: ${T}`);let W=f.UNKNOWN,N=!1;const te=this.getInternalLoader(t);switch(t.type){case h.MANIFEST:W=s?f.MANIFEST_LOAD_TIMEOUT:f.MANIFEST_LOAD_ERROR,N=!0;break;case h.LEVEL:W=s?f.LEVEL_LOAD_TIMEOUT:f.LEVEL_LOAD_ERROR,N=!1;break;case h.AUDIO_TRACK:W=s?f.AUDIO_TRACK_LOAD_TIMEOUT:f.AUDIO_TRACK_LOAD_ERROR,N=!1;break;case h.SUBTITLE_TRACK:W=s?f.SUBTITLE_TRACK_LOAD_TIMEOUT:f.SUBTITLE_LOAD_ERROR,N=!1;break}te&&this.resetInternalLoader(t.type);const ce={type:c.NETWORK_ERROR,details:W,fatal:N,url:t.url,loader:te,context:t,error:U,networkDetails:n,stats:E};if(_){const xe=(n==null?void 0:n.url)||t.url;ce.response=b({url:xe,data:void 0},_)}this.hls.trigger(o.ERROR,ce)}handlePlaylistLoaded(t,n,s,_,E,T){const U=this.hls,{type:W,level:N,id:te,groupId:ce,deliveryDirectives:xe}=_,Ie=ut(n,_),Ae=Le(_),at=typeof _.level=="number"&&Ae===u.MAIN?N:void 0;if(!t.fragments.length){const kt=t.playlistParsingError=new Error("No Segments found in Playlist");U.trigger(o.ERROR,{type:c.NETWORK_ERROR,details:f.LEVEL_EMPTY_ERROR,fatal:!1,url:Ie,error:kt,reason:kt.message,response:n,context:_,level:at,parent:Ae,networkDetails:E,stats:s});return}t.targetduration||(t.playlistParsingError=new Error("Missing Target Duration"));const tt=t.playlistParsingError;if(tt){if(this.hls.logger.warn(tt),!U.config.ignorePlaylistParsingErrors){U.trigger(o.ERROR,{type:c.NETWORK_ERROR,details:f.LEVEL_PARSING_ERROR,fatal:!1,url:Ie,error:tt,reason:tt.message,response:n,context:_,level:at,parent:Ae,networkDetails:E,stats:s});return}t.playlistParsingError=null}switch(t.live&&T&&(T.getCacheAge&&(t.ageHeader=T.getCacheAge()||0),(!T.getCacheAge||isNaN(t.ageHeader))&&(t.ageHeader=0)),W){case h.MANIFEST:case h.LEVEL:U.trigger(o.LEVEL_LOADED,{details:t,levelInfo:_.levelOrTrack||U.levels[0],level:at||0,id:te||0,stats:s,networkDetails:E,deliveryDirectives:xe,withoutMultiVariant:W===h.MANIFEST});break;case h.AUDIO_TRACK:U.trigger(o.AUDIO_TRACK_LOADED,{details:t,track:_.levelOrTrack,id:te||0,groupId:ce||"",stats:s,networkDetails:E,deliveryDirectives:xe});break;case h.SUBTITLE_TRACK:U.trigger(o.SUBTITLE_TRACK_LOADED,{details:t,track:_.levelOrTrack,id:te||0,groupId:ce||"",stats:s,networkDetails:E,deliveryDirectives:xe});break}}}class ir{static get version(){return Va}static isMSESupported(){return $f()}static isSupported(){return Tf()}static getMediaSource(){return ae()}static get Events(){return o}static get MetadataSchema(){return ts}static get ErrorTypes(){return c}static get ErrorDetails(){return f}static get DefaultConfig(){return ir.defaultConfig?ir.defaultConfig:rf}static set DefaultConfig(t){ir.defaultConfig=t}constructor(t={}){this.config=void 0,this.userConfig=void 0,this.logger=void 0,this.coreComponents=void 0,this.networkControllers=void 0,this._emitter=new ya,this._autoLevelCapping=-1,this._maxHdcpLevel=null,this.abrController=void 0,this.bufferController=void 0,this.capLevelController=void 0,this.latencyController=void 0,this.levelController=void 0,this.streamController=void 0,this.audioStreamController=void 0,this.subtititleStreamController=void 0,this.audioTrackController=void 0,this.subtitleTrackController=void 0,this.interstitialsController=void 0,this.gapController=void 0,this.emeController=void 0,this.cmcdController=void 0,this._media=null,this._url=null,this._sessionId=void 0,this.triggeringException=void 0,this.started=!1;const n=this.logger=V(t.debug||!1,"Hls instance",t.assetPlayerId),s=this.config=fl(ir.DefaultConfig,t,n);this.userConfig=t,s.progressive&&Yo(s,n);const{abrController:_,bufferController:E,capLevelController:T,errorController:U,fpsController:W}=s,N=new U(this),te=this.abrController=new _(this),ce=new Lr(this),xe=s.interstitialsController,Ie=xe?this.interstitialsController=new xe(this,ir):null,Ae=this.bufferController=new E(this,ce),at=this.capLevelController=new T(this),tt=new W(this),kt=new jt(this),fr=s.contentSteeringController,sr=fr?new fr(this):null,kr=this.levelController=new Bf(this,sr),zr=new Hf(this),ln=new ve(this.config),Wr=this.streamController=new z(this,ce,ln),Jr=this.gapController=new _f(this,ce);at.setStreamController(Wr),tt.setStreamController(Wr);const un=[kt,kr,Wr];Ie&&un.splice(1,0,Ie),sr&&un.splice(1,0,sr),this.networkControllers=un;const Kr=[te,Ae,Jr,at,tt,zr,ce];this.audioTrackController=this.createController(s.audioTrackController,un);const Un=s.audioStreamController;Un&&un.push(this.audioStreamController=new Un(this,ce,ln)),this.subtitleTrackController=this.createController(s.subtitleTrackController,un);const pi=s.subtitleStreamController;pi&&un.push(this.subtititleStreamController=new pi(this,ce,ln)),this.createController(s.timelineController,Kr),ln.emeController=this.emeController=this.createController(s.emeController,Kr),this.cmcdController=this.createController(s.cmcdController,Kr),this.latencyController=this.createController(Cf,Kr),this.coreComponents=Kr,un.push(N);const ua=N.onErrorOut;typeof ua=="function"&&this.on(o.ERROR,ua,N),this.on(o.MANIFEST_LOADED,kt.onManifestLoaded,kt)}createController(t,n){if(t){const s=new t(this);return n&&n.push(s),s}return null}on(t,n,s=this){this._emitter.on(t,n,s)}once(t,n,s=this){this._emitter.once(t,n,s)}removeAllListeners(t){this._emitter.removeAllListeners(t)}off(t,n,s=this,_){this._emitter.off(t,n,s,_)}listeners(t){return this._emitter.listeners(t)}emit(t,n,s){return this._emitter.emit(t,n,s)}trigger(t,n){if(this.config.debug)return this.emit(t,t,n);try{return this.emit(t,t,n)}catch(s){if(this.logger.error("An internal error happened while handling event "+t+'. Error message: "'+s.message+'". Here is a stacktrace:',s),!this.triggeringException){this.triggeringException=!0;const _=t===o.ERROR;this.trigger(o.ERROR,{type:c.OTHER_ERROR,details:f.INTERNAL_EXCEPTION,fatal:_,event:t,error:s}),this.triggeringException=!1}}return!1}listenerCount(t){return this._emitter.listenerCount(t)}destroy(){this.logger.log("destroy"),this.trigger(o.DESTROYING,void 0),this.detachMedia(),this.removeAllListeners(),this._autoLevelCapping=-1,this._url=null,this.networkControllers.forEach(n=>n.destroy()),this.networkControllers.length=0,this.coreComponents.forEach(n=>n.destroy()),this.coreComponents.length=0;const t=this.config;t.xhrSetup=t.fetchSetup=void 0,this.userConfig=null}attachMedia(t){if(!t||"media"in t&&!t.media){const E=new Error(`attachMedia failed: invalid argument (${t})`);this.trigger(o.ERROR,{type:c.OTHER_ERROR,details:f.ATTACH_MEDIA_ERROR,fatal:!0,error:E});return}this.logger.log("attachMedia"),this._media&&(this.logger.warn("media must be detached before attaching"),this.detachMedia());const n="media"in t,s=n?t.media:t,_=n?t:{media:s};this._media=s,this.trigger(o.MEDIA_ATTACHING,_)}detachMedia(){this.logger.log("detachMedia"),this.trigger(o.MEDIA_DETACHING,{}),this._media=null}transferMedia(){this._media=null;const t=this.bufferController.transferMedia();return this.trigger(o.MEDIA_DETACHING,{transferMedia:t}),t}loadSource(t){this.stopLoad();const n=this.media,s=this._url,_=this._url=le.buildAbsoluteURL(self.location.href,t,{alwaysNormalize:!0});this._autoLevelCapping=-1,this._maxHdcpLevel=null,this.logger.log(`loadSource:${_}`),n&&s&&(s!==_||this.bufferController.hasSourceTypes())&&(this.detachMedia(),this.attachMedia(n)),this.trigger(o.MANIFEST_LOADING,{url:t})}get url(){return this._url}get hasEnoughToStart(){return this.streamController.hasEnoughToStart}get startPosition(){return this.streamController.startPositionValue}startLoad(t=-1,n){this.logger.log(`startLoad(${t+(n?", ":"")})`),this.started=!0,this.resumeBuffering();for(let s=0;s{t.resumeBuffering&&t.resumeBuffering()}))}pauseBuffering(){this.bufferingEnabled&&(this.logger.log("pause buffering"),this.networkControllers.forEach(t=>{t.pauseBuffering&&t.pauseBuffering()}))}get inFlightFragments(){const t={[u.MAIN]:this.streamController.inFlightFrag};return this.audioStreamController&&(t[u.AUDIO]=this.audioStreamController.inFlightFrag),this.subtititleStreamController&&(t[u.SUBTITLE]=this.subtititleStreamController.inFlightFrag),t}swapAudioCodec(){this.logger.log("swapAudioCodec"),this.streamController.swapAudioCodec()}recoverMediaError(){this.logger.log("recoverMediaError");const t=this._media,n=t==null?void 0:t.currentTime;this.detachMedia(),t&&(this.attachMedia(t),n&&this.startLoad(n))}removeLevel(t){this.levelController.removeLevel(t)}get sessionId(){let t=this._sessionId;return t||(t=this._sessionId=Zo()),t}get levels(){const t=this.levelController.levels;return t||[]}get latestLevelDetails(){return this.streamController.getLevelDetails()||null}get loadLevelObj(){return this.levelController.loadLevelObj}get currentLevel(){return this.streamController.currentLevel}set currentLevel(t){this.logger.log(`set currentLevel:${t}`),this.levelController.manualLevel=t,this.streamController.immediateLevelSwitch()}get nextLevel(){return this.streamController.nextLevel}set nextLevel(t){this.logger.log(`set nextLevel:${t}`),this.levelController.manualLevel=t,this.streamController.nextLevelSwitch()}get loadLevel(){return this.levelController.level}set loadLevel(t){this.logger.log(`set loadLevel:${t}`),this.levelController.manualLevel=t}get nextLoadLevel(){return this.levelController.nextLoadLevel}set nextLoadLevel(t){this.levelController.nextLoadLevel=t}get firstLevel(){return Math.max(this.levelController.firstLevel,this.minAutoLevel)}set firstLevel(t){this.logger.log(`set firstLevel:${t}`),this.levelController.firstLevel=t}get startLevel(){const t=this.levelController.startLevel;return t===-1&&this.abrController.forcedAutoLevel>-1?this.abrController.forcedAutoLevel:t}set startLevel(t){this.logger.log(`set startLevel:${t}`),t!==-1&&(t=Math.max(t,this.minAutoLevel)),this.levelController.startLevel=t}get capLevelToPlayerSize(){return this.config.capLevelToPlayerSize}set capLevelToPlayerSize(t){const n=!!t;n!==this.config.capLevelToPlayerSize&&(n?this.capLevelController.startCapping():(this.capLevelController.stopCapping(),this.autoLevelCapping=-1,this.streamController.nextLevelSwitch()),this.config.capLevelToPlayerSize=n)}get autoLevelCapping(){return this._autoLevelCapping}get bandwidthEstimate(){const{bwEstimator:t}=this.abrController;return t?t.getEstimate():NaN}set bandwidthEstimate(t){this.abrController.resetEstimator(t)}get abrEwmaDefaultEstimate(){const{bwEstimator:t}=this.abrController;return t?t.defaultEstimate:NaN}get ttfbEstimate(){const{bwEstimator:t}=this.abrController;return t?t.getEstimateTTFB():NaN}set autoLevelCapping(t){this._autoLevelCapping!==t&&(this.logger.log(`set autoLevelCapping:${t}`),this._autoLevelCapping=t,this.levelController.checkMaxAutoUpdated())}get maxHdcpLevel(){return this._maxHdcpLevel}set maxHdcpLevel(t){Ut(t)&&this._maxHdcpLevel!==t&&(this._maxHdcpLevel=t,this.levelController.checkMaxAutoUpdated())}get autoLevelEnabled(){return this.levelController.manualLevel===-1}get manualLevel(){return this.levelController.manualLevel}get minAutoLevel(){const{levels:t,config:{minAutoBitrate:n}}=this;if(!t)return 0;const s=t.length;for(let _=0;_=n)return _;return 0}get maxAutoLevel(){const{levels:t,autoLevelCapping:n,maxHdcpLevel:s}=this;let _;if(n===-1&&t!=null&&t.length?_=t.length-1:_=n,s)for(let E=_;E--;){const T=t[E].attrs["HDCP-LEVEL"];if(T&&T<=s)return E}return _}get firstAutoLevel(){return this.abrController.firstAutoLevel}get nextAutoLevel(){return this.abrController.nextAutoLevel}set nextAutoLevel(t){this.abrController.nextAutoLevel=t}get playingDate(){return this.streamController.currentProgramDateTime}get mainForwardBufferInfo(){return this.streamController.getMainFwdBufferInfo()}get maxBufferLength(){return this.streamController.maxBufferLength}setAudioOption(t){var n;return((n=this.audioTrackController)==null?void 0:n.setAudioOption(t))||null}setSubtitleOption(t){var n;return((n=this.subtitleTrackController)==null?void 0:n.setSubtitleOption(t))||null}get allAudioTracks(){const t=this.audioTrackController;return t?t.allAudioTracks:[]}get audioTracks(){const t=this.audioTrackController;return t?t.audioTracks:[]}get audioTrack(){const t=this.audioTrackController;return t?t.audioTrack:-1}set audioTrack(t){const n=this.audioTrackController;n&&(n.audioTrack=t)}get allSubtitleTracks(){const t=this.subtitleTrackController;return t?t.allSubtitleTracks:[]}get subtitleTracks(){const t=this.subtitleTrackController;return t?t.subtitleTracks:[]}get subtitleTrack(){const t=this.subtitleTrackController;return t?t.subtitleTrack:-1}get media(){return this._media}set subtitleTrack(t){const n=this.subtitleTrackController;n&&(n.subtitleTrack=t)}get subtitleDisplay(){const t=this.subtitleTrackController;return t?t.subtitleDisplay:!1}set subtitleDisplay(t){const n=this.subtitleTrackController;n&&(n.subtitleDisplay=t)}get lowLatencyMode(){return this.config.lowLatencyMode}set lowLatencyMode(t){this.config.lowLatencyMode=t}get liveSyncPosition(){return this.latencyController.liveSyncPosition}get latency(){return this.latencyController.latency}get maxLatency(){return this.latencyController.maxLatency}get targetLatency(){return this.latencyController.targetLatency}set targetLatency(t){this.latencyController.targetLatency=t}get drift(){return this.latencyController.drift}get forceStartLoad(){return this.streamController.forceStartLoad}get pathways(){return this.levelController.pathways}get pathwayPriority(){return this.levelController.pathwayPriority}set pathwayPriority(t){this.levelController.pathwayPriority=t}get bufferedToEnd(){var t;return!!((t=this.bufferController)!=null&&t.bufferedToEnd)}get interstitialsManager(){var t;return((t=this.interstitialsController)==null?void 0:t.interstitialsManager)||null}getMediaDecodingInfo(t,n=this.allAudioTracks){const s=Li(n);return Lt(t,s,navigator.mediaCapabilities)}}ir.defaultConfig=void 0},53280:function(d,v,e){"use strict";e.d(v,{D:function(){return i}});function r(l,c,f){var o=f||{},h=o.noTrailing,u=h===void 0?!1:h,a=o.noLeading,x=a===void 0?!1:a,p=o.debounceMode,y=p===void 0?void 0:p,m,b=!1,S=0;function k(){m&&clearTimeout(m)}function R(D){var M=D||{},B=M.upcomingOnly,j=B===void 0?!1:B;k(),b=!j}function A(){for(var D=arguments.length,M=new Array(D),B=0;Bl?x?(S=Date.now(),u||(m=setTimeout(y?G:V,l))):V():u!==!0&&(m=setTimeout(y?G:V,y===void 0?l-K:l))}return A.cancel=R,A}function i(l,c,f){var o=f||{},h=o.atBegin,u=h===void 0?!1:h;return r(l,c,{debounceMode:u!==!1})}}},__webpack_module_cache__={};function __webpack_require__(d){var v=__webpack_module_cache__[d];if(v!==void 0)return v.exports;var e=__webpack_module_cache__[d]={id:d,loaded:!1,exports:{}};return __webpack_modules__[d].call(e.exports,e,e.exports,__webpack_require__),e.loaded=!0,e.exports}__webpack_require__.m=__webpack_modules__,function(){__webpack_require__.amdO={}}(),function(){__webpack_require__.n=function(d){var v=d&&d.__esModule?function(){return d.default}:function(){return d};return __webpack_require__.d(v,{a:v}),v}}(),function(){var d=Object.getPrototypeOf?function(e){return Object.getPrototypeOf(e)}:function(e){return e.__proto__},v;__webpack_require__.t=function(e,r){if(r&1&&(e=this(e)),r&8||typeof e=="object"&&e&&(r&4&&e.__esModule||r&16&&typeof e.then=="function"))return e;var i=Object.create(null);__webpack_require__.r(i);var l={};v=v||[null,d({}),d([]),d(d)];for(var c=r&2&&e;typeof c=="object"&&!~v.indexOf(c);c=d(c))Object.getOwnPropertyNames(c).forEach(function(f){l[f]=function(){return e[f]}});return l.default=function(){return e},__webpack_require__.d(i,l),i}}(),function(){__webpack_require__.d=function(d,v){for(var e in v)__webpack_require__.o(v,e)&&!__webpack_require__.o(d,e)&&Object.defineProperty(d,e,{enumerable:!0,get:v[e]})}}(),function(){__webpack_require__.f={},__webpack_require__.e=function(d){return Promise.all(Object.keys(__webpack_require__.f).reduce(function(v,e){return __webpack_require__.f[e](d,v),v},[]))}}(),function(){__webpack_require__.u=function(d){return""+({26:"p__Classrooms__Lists__Graduation__Tasks__Edit__index",67:"p__Message__index",109:"p__Classrooms__Lists__ShixunHomeworks__Detail__components__CodeReview__Detail__index",119:"p__User__ThemeChange__Paths",195:"p__Classrooms__Lists__GroupHomework__Detail__index",201:"p__Classrooms__ThemeChange__Students",264:"p__User__Detail__Order__pages__orderPay__index",292:"p__Classrooms__Lists__Exercise__Add__index",337:"p__Paperlibrary__Random__PreviewEdit__index",479:"p__Classrooms__Lists__GroupHomework__EditWork__index",485:"p__Question__AddOrEdit__BatchAdd__index",508:"p__Forums__Detail__id",518:"p__Shixuns__Detail__Settings__ThemeChange__index",532:"p__ExcellentCourse__index",533:"p__Classrooms__Lists__Video__Statistics__Detail__index",547:"p__Account__index",556:"p__User__Detail__Order__pages__invoice__index",559:"layouts__virtualDetail__index",570:"p__Home__Detail__OnlineNum__index",576:"p__Account__Profile__Edit__index",643:"p__Classrooms__Lists__Polls__QuestionnaireInfo__index",680:"p__Innovation__index",700:"p__tasks__Jupyter__index",737:"p__Classrooms__Lists__CommonHomework__Detail__components__CodeReview__Detail__index",799:"p__User__Detail__Topics__Poll__Detail__index",869:"p__Guidance__index",879:"p__User__ThemeChange__AccountInfo",895:"p__Classrooms__Lists__Video__Items__videoInfo__index",900:"p__User__ThemeChange__Classrooms",906:"p__User__ThemeChange__CareerCertification",921:"p__Classrooms__Lists__Exercise__CodeDetails__index",928:"p__RestFul__Edit__index",1006:"p__RestFul__index",1043:"p__Classrooms__Lists__Graduation__Tasks__index",1045:"p__virtualSpaces__Lists__Knowledge__AddAndEdit__index",1048:"p__Classrooms__Lists__ProgramHomework__Detail__Ranking__index",1070:"p__Innovation__PublicMirror__index",1211:"p__Classrooms__Lists__CommonHomework__EditWork__index",1253:"p__Graduations__Lists__Gradingsummary__index",1257:"p__Classrooms__Lists__ResourceRecommend__index",1276:"p__MoopCases__Success__index",1343:"p__User__Detail__ResourceAllocation__index",1423:"p__Shixuns__Edit__body__Level__Challenges__EditPracticeAnswer__index",1427:"p__Classrooms__Lists__Statistics__index",1450:"p__Classrooms__Lists__ShixunHomeworks__Commitsummary__index",1461:"p__Graduations__Lists__Topics__index",1470:"p__User__Register__index",1475:"p__Shixuns__Detail__Dataset__JupyterData__index",1477:"p__Classrooms__ThemeChange__Assistant",1482:"p__Classrooms__Lists__Graduation__Topics__Edit__index",1512:"p__Classrooms__Lists__Exercise__AnswerCheck__index",1520:"p__Engineering__Lists__StudentList__index",1545:"p__Paperlibrary__Random__ExchangeFromProblemSet__index",1578:"p__Classrooms__Lists__Graduation__Topics__Detail__index",1581:"p__Problemset__Preview__index",1582:"p__Classrooms__Lists__GroupHomework__Add__index",1657:"p__Shixuns__Edit__body__Level__Challenges__EditQuestion__index",1660:"p__User__QQLogin__index",1674:"p__Classrooms__ClassicCases__index",1678:"p__Classrooms__ThemeChange__Attachment",1702:"p__Classrooms__New__index",1713:"p__virtualSpaces__Lists__Settings__index",1717:"layouts__index",1727:"p__Classrooms__Lists__CourseGroup__NotList__index",1754:"p__Classrooms__ThemeChange__Video",1783:"p__virtualSpaces__Lists__Experiment__index",1798:"p__Classrooms__ThemeChange__GroupHomework",1799:"p__Competitions__Entered__Assembly__TeamDateil",1831:"p__Graduations__Index__index",1836:"p__Classrooms__Lists__Attendance__Webview__Teacher__index",1855:"p__MoopCases__InfoPanel__index",1880:"p__User__Detail__Order__pages__apply__index",1897:"p__User__ThemeChange__ClassManagement",1939:"p__User__Detail__Order__index",1953:"p__Problemset__NewItem__index",1962:"p__Classrooms__Lists__Engineering__index",1993:"p__Shixuns__Detail__Dataset__ThemeChange__index",2045:"p__Engineering__Lists__TeacherList__index",2099:"p__Paperlibrary__ThemeChange__index",2102:"p__Classrooms__Lists__Board__Edit__index",2130:"p__Shixuns__Detail__Repository__UploadFile__ThemeChange__index",2141:"p__Shixuns__Detail__Split__index",2203:"p__Classrooms__ThemeChange__ShixunHomeworks",2216:"p__DataSet__Index__index",2240:"p__User__Detail__Videos__Upload__index",2281:"p__Paths__ThemeChange__Detail",2300:"p__Api__index",2303:"p__Classrooms__Lists__CommonHomework__Comment__index",2307:"p__Report__index",2338:"p__Classrooms__Lists__CommonHomework__Review__index",2339:"p__virtualSpaces__Lists__Plan__Detail__index",2396:"p__User__Detail__ResourcesCenter__index",2404:"p__Classrooms__Lists__Template__teacher__index",2412:"p__User__Detail__Videos__index",2425:"p__Classrooms__Lists__Board__Detail__index",2443:"p__Graduations__Lists__StageModule__index",2476:"p__Colleges__index",2501:"p__Search__index",2539:"p__Graduations__Review__index",2548:"p__Engineering__Norm__Detail__index",2570:"p__Competitions__Detail__index",2603:"p__Classrooms__Lists__ProgramHomework__Detail__answer__Add__index",2659:"p__User__Detail__UserPortrait__index",2707:"p__Innovation__MyDataSet__index",2806:"p__User__Detail__Topics__Exercise__Detail__index",2819:"p__Classrooms__Lists__Template__detail__index",2823:"p__Engineering__Navigation__Home__index",2829:"p__Messages__Private__index",2862:"p__User__ThemeChange__ExperImentImg",2865:"p__Innovation__MyMirror__index",2884:"p__Classrooms__Lists__ProgramHomework__Comment__index",3006:"p__Engineering__index",3086:"p__Shixuns__Detail__ForkList__ThemeChange__index",3141:"p__Innovation__Detail__index",3157:"p__User__Detail__ExperImentImg__Add__index",3183:"p__Engineering__Lists__GraduationIndex__index",3212:"p__MoopCases__index",3220:"p__Classrooms__Lists__Video__Upload__index",3247:"p__Paperlibrary__See__index",3260:"p__Paperlibrary__Add__index",3276:"p__Classrooms__Lists__Statistics__UserportraitStatistics__index",3317:"p__Classrooms__Lists__Graduation__Topics__Add__index",3391:"p__Classrooms__Lists__ProgramHomework__Detail__components__CodeReview__Detail__index",3433:"p__Classrooms__Lists__Exercise__Sumup__Edit__index",3442:"p__Classrooms__Lists__Board__Add__index",3447:"p__User__Detail__Order__pages__orderInformation__index",3451:"p__Classrooms__Lists__Statistics__StudentStatistics__Detail__index",3509:"p__HttpStatus__SixActivities",3581:"p__Shixuns__Detail__Collaborators__ThemeChange__index",3585:"p__Classrooms__Lists__Statistics__StudentSituation__index",3665:"p__tasks__index",3668:"p__Classrooms__Lists__CommonHomework__Detail__index",3747:"p__virtualSpaces__Lists__Homepage__index",3784:"p__Paperlibrary__Random__Detail__index",3831:"p__User__ThemeChange__VirtualSpaces",3862:"p__HttpStatus__403",3873:"p__virtualSpaces__Lists__Lesson__index",3910:"p__HttpStatus__introduction",3951:"p__Classrooms__Lists__ProgramHomework__Detail__index",4017:"p__Classrooms__Lists__PlaceholderPage__index",4030:"p__Classrooms__Lists__ProgramHomework__AddAndEdit__index",4048:"p__Forums__ThemeChange__index",4056:"p__IntrainCourse__index",4058:"p__Demo__index",4078:"p__Messages__Tidings__index",4093:"p__Classrooms__Lists__Attendance__Detail__index",4105:"p__Classrooms__Lists__Exercise__Answer__index",4144:"p__Problemset__Preview__New__index",4164:"p__Classrooms__Lists__Exercise__Detail__index",4216:"p__Classrooms__Lists__ProgramHomework__Detail__answer__Edit__index",4217:"p__Classrooms__Lists__Video__Statistics__index",4227:"p__Paths__Overview__index",4259:"p__User__Detail__Order__pages__result__index",4264:"p__Forums__New__index",4297:"p__Classrooms__ThemeChange__Polls",4449:"p__Competitions__Exports__index",4492:"p__Graduations__Lists__StudentSelection__index",4496:"p__HttpStatus__HpcCourse",4498:"p__Shixuns__Edit__body__Level__Challenges__NewPractice__index",4504:"p__virtualSpaces__Lists__Survey__index",4514:"p__Account__Results__index",4520:"p__Account__Secure__index",4546:"p__Engineering__Lists__TrainingProgram__Add__index",4565:"p__HttpStatus__500",4572:"p__Classrooms__Lists__ExportList__index",4599:"p__Problemset__index",4601:"p__Paths__Detail__Statistics__index",4610:"p__User__Detail__LearningPath__index",4621:"p__Administration__Profession__index",4662:"p__Classrooms__Lists__GroupHomework__Review__index",4715:"p__virtualSpaces__Lists__Material__Detail__index",4736:"p__User__Detail__Projects__index",4741:"p__Problems__OjForm__NewEdit__index",4757:"p__virtualSpaces__Lists__Workplace__index",4766:"p__Administration__index",4770:"p__Classrooms__Lists__ProgramHomework__Detail__answer__index",4795:"p__Classrooms__Lists__Graduation__Tasks__Add__index",4800:"p__Engineering__Lists__GraduatedMatrix__index",4889:"p__Classrooms__Lists__Exercise__ImitateAnswer__index",4928:"p__Classrooms__Lists__LearningPath__index",4973:"p__Engineering__Evaluate__List__index",4994:"p__Problems__OjForm__index",5022:"p__Graduations__Lists__Settings__index",5043:"p__User__Detail__Topics__Poll__Edit__index",5048:"p__Classrooms__Lists__Graduation__Topics__index",5096:"p__Shixuns__Detail__AuditSituation__index",5111:"p__Terminal__index",5117:"p__User__ThemeChange__Certificate",5125:"p__Classrooms__Lists__Exercise__DetailedAnalysis__index",5148:"p__Classrooms__Lists__Polls__Answer__index",5165:"p__User__ThemeChange__Topics",5176:"p__User__Detail__Videos__Protocol__index",5177:"p__Classrooms__ThemeChange__Teachers",5179:"p__Administration__Student__Edit__index",5186:"p__Classrooms__Overview__index",5230:"p__Shixuns__Detail__Repository__AddFile__ThemeChange__index",5238:"p__virtualSpaces__Lists__Material__index",5297:"p__Classrooms__Lists__Exercise__Detail__components__DuplicateChecking__CheckDetail__index",5319:"p__Classrooms__Lists__ProgramHomework__Detail__answer__Detail__index",5330:"p__Classrooms__ThemeChange__ShixunHomeworksComment",5335:"p__Engineering__Lists__CourseMatrix__index",5357:"p__Engineering__Lists__TrainingProgram__Edit__index",5359:"p__Messages__Detail__index",5382:"p__DataSet__Detail__index",5402:"p__User__Detail__Topics__Detail__index",5466:"p__Classrooms__ThemeChange__LiveVideo",5518:"p__Classrooms__Lists__Template__index",5549:"p__Shixuns__New__CreateImg__index",5572:"p__Paths__HigherVocationalEducation__index",5573:"p__Shixuns__Detail__Merge__index",5624:"p__Graduations__Lists__Index__index",5650:"p__Competitions__Update__index",5694:"p__Classrooms__ThemeChange__ShixunHomeworksDetail",5705:"p__virtualSpaces__Lists__Construction__index",5729:"p__Help__Index",5775:"p__Engineering__Lists__Document__index",5776:"p__User__ThemeChange__RealNameCertification",5786:"layouts__LoginAndRegister__index",5798:"p__Classrooms__Lists__Video__Statistics__UserDetail__index",5800:"p__User__ThemeChange__Competitions",5816:"p__Paperlibrary__Random__Edit__index",5888:"p__Classrooms__Lists__CommonHomework__Add__index",5891:"p__virtualSpaces__Lists__Resources__index",5894:"p__Shixuns__Detail__Repository__Commit__ThemeChange__index",5902:"p__Classrooms__Lists__Exercise__Sumup__index",5915:"p__knowledgegraph__Detail__Statistics__index",5972:"layouts__user__index",5992:"p__Classrooms__Lists__Exercise__ReviewGroup__index",6029:"p__Administration__Student__index",6034:"p__HttpStatus__UserAgents",6063:"p__Graduations__Lists__Personmanage__index",6069:"p__virtualSpaces__Lists__Lesson__Detail__index",6127:"p__Classrooms__Lists__ProgramHomework__Ranking__index",6170:"p__HttpStatus__downloadStudent",6185:"p__Classrooms__ThemeChange__Announcement",6265:"p__virtualSpaces__Lists__Discussion__index",6270:"p__MyProblem__index",6282:"p__Classrooms__ThemeChange__ProgramHomework",6328:"p__Shixuns__Edit__body__Warehouse__index",6366:"p__Innovation__PublicProject__index",6434:"p__User__Detail__Order__pages__records__index",6444:"p__Video__Detail__id",6452:"p__Innovation__PublicDataSet__index",6531:"p__HttpStatus__404",6583:"p__User__Detail__Classrooms__index",6587:"p__User__Detail__Videos__Protocol__resource",6634:"p__Innovation__Tasks__index",6637:"p__Shixuns__Detail__Repository__ThemeChange__index",6651:"p__Engineering__Evaluate__Detail__index",6682:"p__User__ThemeChange__Shixuns",6685:"p__Classrooms__Index__index",6729:"p__Classrooms__Lists__GroupHomework__Edit__index",6741:"p__Engineering__Norm__List__index",6776:"p__Classrooms__ThemeChange__Exercise",6784:"p__Innovation__Edit__index",6788:"p__Home__Detail__ShixunContext__Detail__index",6789:"p__Classrooms__ThemeChange__index",6796:"p__virtualSpaces__Lists__Announcement__Detail__index",6820:"p__User__Detail__Topics__Normal__index",6882:"p__Classrooms__New__StartClass__index",6883:"p__Competitions__Index__index",6904:"p__MoopCases__FormPanel__index",6913:"p__Question__AddOrEdit__index",6963:"p__Classrooms__Lists__Engineering__Detail__index",7008:"p__Shixuns__New__index",7043:"p__User__Detail__Topics__Exercise__Edit__index",7045:"p__Classrooms__Lists__CommonHomework__SubmitWork__index",7058:"p__virtualSpaces__Lists__Survey__Detail__index",7062:"layouts__SimpleLayouts",7178:"p__User__BindAccount__index",7182:"p__User__ResetPassword__index",7242:"p__Innovation__MyProject__index",7260:"p__Account__Certification__index",7322:"layouts__ThemeChange__ShixunDetail",7329:"p__Classrooms__ThemeChange__Attendance",7333:"p__User__WechatLogin__index",7395:"p__Classrooms__Lists__Statistics__StudentDetail__index",7402:"p__User__ThemeChange__OtherResources",7460:"p__Question__OjProblem__index",7477:"p__virtualSpaces__Lists__Announcement__index",7482:"p__Classrooms__Lists__Exercise__Notice__index",7527:"p__MyProblem__RecordDetail__index",7545:"p__Graduations__Lists__Archives__index",7560:"p__Administration__College__index",7589:"p__virtualSpaces__Lists__DigitalTopics__index",7614:"p__Shixuns__Edit__body__Level__Challenges__RankingSetting__index",7622:"p__Classrooms__Lists__Polls__Detail__index",7806:"p__Classrooms__Lists__Statistics__StatisticsQuality__index",7835:"p__Problemset__ThemeChange__index",7855:"p__User__Detail__ResourcesCenter__Detail__index",7857:"p__Shixuns__Edit__body__Level__Challenges__NewQuestion__index",7884:"p__Shixuns__Exports__index",7922:"p__Classrooms__Lists__CourseGroup__Detail__index",8062:"p__User__Detail__Topicbank__index",8072:"p__Classrooms__Lists__GroupHomework__SubmitWork__index",8085:"p__Classrooms__Lists__Exercise__Review__index",8115:"p__User__ThemeChange__DataSet",8143:"layouts__GraduationsDetail__index",8145:"p__User__ThemeChange__ClassManagementItem",8155:"p__Shixuns__Overview__index",8217:"p__User__ThemeChange__AccountInfoEdit",8237:"p__User__Detail__Order__pages__view__index",8241:"p__virtualSpaces__Lists__Plan__index",8286:"p__User__ThemeChange__ExperImentImgDetail",8332:"p__User__ThemeChange__Detail",8340:"p__Classrooms__Lists__Attendance__Webview__Student__index",8365:"p__Home__Detail__ShixunContext__index",8398:"p__virtualSpaces__Lists__Resources__Detail__index",8431:"p__Classrooms__Lists__Exercise__Export__index",8435:"p__Classrooms__Lists__Attendance__index",8447:"p__virtualSpaces__Lists__Knowledge__index",8458:"p__Classrooms__ThemeChange__CommonHomework",8479:"p__User__ThemeChange__TeachGroup",8517:"p__User__Detail__Topics__Group__index",8552:"p__Shixuns__ThemeChange__index",8563:"p__virtualSpaces__Lists__Discussion__Detail__index",8639:"p__Forums__Index__redirect",8665:"p__Engineering__Lists__TrainingObjectives__index",8688:"p__Shixuns__Detail__Repository__index",8689:"p__Classrooms__Lists__Statistics__VideoStatistics__index",8723:"p__Classrooms__Lists__Polls__Edit__index",8787:"p__Competitions__Entered__index",8797:"p__Competitions__Edit__index",8823:"p__knowledgegraph__Detail__id",8827:"p__Classrooms__Lists__OnlineLearning__index",8866:"p__index",8882:"p__Classrooms__Lists__Graduation__Tasks__Detail__index",8885:"p__Classrooms__Lists__Statistics__StudentStatistics__index",8965:"p__Shixuns__Detail__Discuss__ThemeChange__index",8982:"p__Paths__New__index",8999:"p__Three__index",9039:"p__Classrooms__ThemeChange__CourseGroup",9076:"p__Account__Binding__index",9205:"p__Shixuns__Edit__body__Level__Challenges__EditPracticeSetting__index",9366:"p__User__Login__index",9391:"p__Engineering__Lists__CurseSetting__index",9404:"monaco-editor",9406:"p__Classrooms__ThemeChange__Board",9408:"p__Shixuns__Detail__RankingList__index",9416:"p__Graduations__Lists__Tasks__index",9417:"p__Shixuns__ThemeOne__Detail__SkillTags__index",9449:"p__Shixuns__ThemeChange__Detail",9487:"p__LargeScreen__index",9489:"p__Engineering__Lists__CourseList__index",9507:"p__User__Detail__ResourceGuarantee__index",9511:"p__Shixuns__ThemeChange__Edit",9647:"p__Question__Index__index",9649:"p__Engineering__Lists__TrainingProgram__index",9674:"p__Shixuns__New__ImagePreview__index",9677:"p__virtualSpaces__Lists__Announcement__AddAndEdit__index",9695:"p__Classrooms__Lists__Polls__Add__index",9715:"p__Classrooms__Lists__CommonHomework__Edit__index",9716:"p__Question__OjProblem__RecordDetail__index",9785:"p__Classrooms__Lists__Template__student__index",9788:"p__Account__Profile__index",9814:"p__Shixuns__Detail__Challenges__ThemeChange__index",9891:"p__User__Detail__Videos__Success__index",9906:"p__Paths__ThemeChange__index",9921:"p__Classrooms__ExamList__index",9922:"p__Classrooms__Lists__Statistics__StudentVideo__index",9944:"p__Classrooms__Lists__Video__Statistics__StudentDetail__index"}[d]||d)+"."+{26:"e69b28bf",67:"28126695",109:"d3137170",119:"403f3c29",169:"13ef4921",195:"6f5e3e6a",201:"96777e8e",264:"e0ee5d91",292:"6b035229",316:"1f60ada6",337:"453ae002",354:"d4d139cf",369:"09bcb594",425:"9394f46d",434:"139744af",479:"ab37375f",485:"f7b5567d",508:"48493c85",518:"d1505f70",532:"5a1bf022",533:"72703675",547:"24bbee7d",556:"5b4c82b3",559:"71b92a85",570:"1964b04c",576:"776387e0",599:"ed444d24",629:"44a1d9a5",643:"08b191d2",671:"4a609b8d",680:"bef5848a",700:"5037b915",737:"880387f6",741:"ac5fd360",799:"fb134f5f",869:"7ccdfb9d",879:"91cc99e9",895:"b25eaf83",900:"9a210617",906:"5919d7f6",921:"f793a5d6",928:"3beb70a2",981:"24da50c7",1006:"4fdf45a1",1043:"58e4b1c5",1045:"2f073553",1048:"726b6ffa",1070:"b6fb788c",1144:"c90eccaf",1154:"8cb80842",1211:"ae1a84ea",1253:"0fa1f7f8",1257:"d207664b",1274:"5f6ea65a",1276:"5a16a6b9",1343:"0c65b530",1423:"1abf9902",1427:"9fbf6218",1450:"c7c58e3b",1461:"eaae332e",1462:"fcf08abc",1470:"0a231e88",1475:"2f169fa0",1477:"2ebc9ce0",1482:"15e6fd08",1512:"481eda40",1520:"43f03bf7",1545:"c9fb6de0",1578:"62da996e",1581:"4f84cf78",1582:"3fa838b1",1646:"e6e27b60",1657:"16be2d63",1660:"a914fab0",1674:"a2c0b869",1678:"8aff99d8",1702:"dc12d586",1713:"42a38339",1717:"4f4f4f14",1727:"62f9652a",1754:"1486baea",1783:"2294c368",1798:"aca361d9",1799:"c931697e",1831:"a84c0548",1836:"2e42f320",1855:"a387e74d",1880:"6e4695f3",1897:"03d855cb",1939:"08596d30",1953:"be061902",1962:"5bbf3ebf",1993:"aa3afa8f",2011:"59d51f98",2045:"0f5dc5b3",2099:"69c79eec",2102:"2fe6680d",2130:"f6dd3a9f",2141:"f3b51482",2203:"9526e19b",2216:"08a16362",2240:"2def296c",2249:"f4830452",2281:"86231e34",2300:"f7b34b30",2303:"b7051e46",2307:"00c2a4a4",2338:"32363720",2339:"919c8af7",2364:"f89faf70",2386:"192e235c",2396:"fb6c65a5",2404:"001097da",2412:"8a7fb7d8",2425:"33c9399c",2443:"f9349c44",2476:"210e89c9",2494:"68080a87",2501:"4ddf01a7",2538:"de4a3723",2539:"8908149b",2548:"aa53f43d",2570:"fe972c3d",2594:"e87d3761",2603:"85e48726",2659:"f48a81e1",2707:"3cff66ab",2806:"b7d481d5",2819:"eab8b9d0",2823:"9fc0dad0",2829:"d9e8872b",2837:"54a82605",2862:"329a8716",2865:"d68cbc45",2884:"e3692ea7",2969:"ab3357d7",3006:"c4f4299c",3086:"7c1e6e65",3133:"9bf3f89c",3141:"87221091",3157:"f5710129",3183:"4298bea9",3198:"8e655451",3212:"b9b65907",3220:"8aead32e",3247:"73e5cde1",3260:"eefaa592",3276:"bfb2709e",3317:"4e335d81",3391:"2339c785",3433:"6cf67fa8",3442:"dc2d77c3",3447:"6ca8e642",3451:"fd8cb4dc",3509:"1e3d94fa",3550:"3dc83156",3581:"63928fb2",3585:"54661655",3665:"41b1c4dc",3668:"49405acd",3697:"481a10d9",3747:"96b1b0ed",3754:"28bcba43",3777:"d5b0f2f1",3784:"546ec2f3",3805:"9dbcb95e",3831:"c9b47e35",3862:"43117f72",3873:"330b2220",3885:"f87f7f15",3910:"0b62f685",3951:"b2884421",3987:"5cecd51b",4014:"27a8e97c",4017:"55e12afd",4030:"2813371a",4048:"34e1cc75",4056:"c6f13889",4058:"82246f46",4078:"305ddafc",4088:"236723f3",4093:"6988fd73",4105:"9dda85eb",4144:"36e28d75",4164:"9e01a23e",4216:"1920b017",4217:"3b371a91",4227:"5c2be771",4259:"2b33253d",4264:"9b5cde7e",4297:"2d789ca2",4347:"ce21ef2e",4354:"140899b7",4360:"cf5efa52",4449:"64fddfc3",4492:"5d2e52fc",4496:"866d80ea",4498:"ad11fff5",4504:"eba55560",4514:"37fb9cb3",4520:"92a99912",4546:"4ff9dda7",4565:"ae294bdd",4572:"240f449e",4599:"61def4cb",4601:"4be4a179",4610:"f5c81eeb",4621:"d3fea8aa",4628:"ece2c60c",4662:"05914d82",4685:"c33f1528",4715:"1e29cef8",4736:"625410b0",4741:"5fc5fb24",4757:"f22496c0",4766:"851589b4",4770:"96f46d9f",4790:"619413e4",4795:"f217b3dc",4797:"a24e92db",4800:"ab76d82c",4850:"1edda4b7",4889:"851310c9",4928:"ca2a4a00",4973:"5eeb8c97",4994:"1c459cde",5022:"f67f11ac",5043:"45707a79",5048:"f32f3168",5060:"85dafcc6",5096:"d6281379",5111:"8843ac55",5117:"2848ec80",5125:"49a0dea0",5148:"abd1b0bb",5165:"7f9dc097",5176:"1f54faf1",5177:"295d6504",5179:"0a344501",5186:"76d2b5d0",5230:"7651e91a",5238:"06a47f37",5265:"79cc0d63",5290:"5dabcdc2",5297:"506b59ff",5319:"60523ac1",5321:"1163c84e",5330:"a00ebe44",5335:"da8e7f46",5354:"7ae70604",5357:"cd2f91b8",5359:"f4695da1",5382:"c74be7bd",5402:"3b8aa26e",5416:"454536b7",5434:"38b302a6",5466:"4760ffc4",5494:"d89549c4",5518:"1abf5a68",5549:"7c8ec009",5572:"58d6df49",5573:"0697e410",5624:"755298a4",5631:"e00d3d36",5650:"931e21ad",5679:"4a090bef",5694:"94ff4342",5705:"956a5d8e",5729:"3bb0375f",5764:"e0d7e586",5775:"2b5bf437",5776:"b787bdd3",5786:"a972d493",5798:"8115a862",5800:"680b9730",5816:"d0d1ac07",5876:"5eded409",5888:"b2f9e6cc",5891:"aec4757c",5894:"0980d4f2",5902:"621d8db7",5915:"b3592eb5",5972:"3a6561ef",5992:"c8481273",6029:"17913724",6034:"60caacfe",6045:"d268f87f",6047:"3ce45acd",6063:"7a817864",6069:"83d984e6",6126:"99519171",6127:"1c9a7836",6170:"dfcc006a",6185:"43fca115",6265:"5cec1a14",6270:"0378c2b5",6282:"214b6a37",6328:"6acf3318",6366:"afa3ef37",6378:"7f3a946a",6411:"3b971528",6434:"e6a221af",6444:"91c0c8bc",6452:"af18c979",6531:"5b8bb018",6583:"a035f535",6587:"733c8f73",6634:"253bff57",6637:"074b8d47",6651:"1c18516c",6656:"7e81cc97",6682:"dcce99a6",6685:"0d209540",6729:"a73d05b9",6741:"7b7d850d",6774:"59d4d618",6776:"6581c92e",6784:"73f9f6e8",6788:"d38f4500",6789:"38e14d72",6796:"0b3d7f27",6820:"cd17b315",6882:"259219e7",6883:"6cb80143",6904:"32b39fb4",6913:"193bdaae",6963:"9f18e819",7008:"68916dff",7043:"3d7898ce",7045:"4b64df2d",7058:"2cb26d8e",7062:"e0633d83",7084:"46ccce72",7156:"e7466006",7178:"80066754",7182:"09e4c243",7242:"d79c9b02",7260:"6123c48f",7322:"4f09b8af",7329:"fc599351",7333:"43cfa956",7365:"1005464f",7395:"db7c9e5c",7402:"1f80a7db",7460:"902166a3",7476:"18b1a1fa",7477:"b044be7b",7482:"3120816b",7527:"291c13b0",7545:"1d0d0ca2",7560:"38c2f6fb",7589:"b6ee7e22",7591:"c8233ce9",7614:"97f6c814",7622:"3450cab3",7686:"4fcec9f9",7706:"c2a79e40",7806:"e41e9b94",7835:"be3e3773",7855:"11ddc21f",7857:"91ee9735",7884:"4e91c64e",7890:"ca5e41c9",7922:"4e68199c",7963:"64ac60d4",7964:"29aed9a1",8062:"1b3381d9",8072:"40f970a6",8085:"962e0294",8089:"d536b13a",8115:"009cef53",8143:"9672c04a",8145:"06046fc1",8155:"d32d5053",8161:"83c5fa9a",8217:"d115cc70",8237:"038e2b1b",8241:"73155728",8286:"a3ebada5",8302:"55794970",8332:"7d2eea69",8340:"35eeb8f5",8350:"07df8a75",8365:"7df206f5",8398:"9cdac641",8431:"63f00245",8435:"29ffda57",8447:"7f7729af",8458:"5488c1e9",8479:"8e5ef4da",8517:"b5995b14",8552:"c58c7cc8",8561:"333e8ec9",8563:"2adbab9d",8639:"ebbaf1d9",8665:"b449fad8",8688:"1214aeee",8689:"8d265159",8723:"022230ab",8737:"ce7dad23",8776:"0ad26240",8787:"f26b7201",8797:"11b26b16",8823:"0bfd4b3c",8827:"2e493f16",8842:"9f25a3e2",8866:"e147c0cc",8882:"f27a98d7",8885:"fb76ce24",8898:"d002bcd8",8909:"bf822f6b",8920:"7f82440c",8963:"790aecdd",8965:"5187a3ba",8982:"78d7fc41",8999:"8f775d6c",9039:"3da1acf2",9045:"6d1eb809",9076:"b772835c",9104:"bbcb2345",9205:"2df5e86c",9252:"0d791a59",9260:"cf5f8140",9366:"4447376a",9391:"6b29cb6d",9404:"9fcc3d3e",9406:"46173140",9408:"281caf93",9416:"fcb56593",9417:"4ae558ab",9442:"5289c368",9449:"43041973",9487:"363b6105",9489:"0bdb6ca7",9507:"a3616a6c",9511:"7ae880ef",9554:"ed358e7b",9559:"f794af19",9647:"934212ce",9649:"44c30146",9674:"1cac19f7",9677:"f306d1b3",9695:"d8533fe2",9715:"4366300c",9716:"08598cab",9785:"176dc5e2",9788:"822ea7d4",9814:"e5bbb96a",9891:"9ed12111",9895:"b8e31ff2",9906:"306dd3e4",9921:"a5a5c011",9922:"b813a588",9928:"5989f5e0",9944:"b9c5a1dc",9950:"74f6dfb2",9968:"17466785"}[d]+".async.js"}}(),function(){__webpack_require__.miniCssF=function(d){return""+({26:"p__Classrooms__Lists__Graduation__Tasks__Edit__index",67:"p__Message__index",109:"p__Classrooms__Lists__ShixunHomeworks__Detail__components__CodeReview__Detail__index",119:"p__User__ThemeChange__Paths",195:"p__Classrooms__Lists__GroupHomework__Detail__index",201:"p__Classrooms__ThemeChange__Students",264:"p__User__Detail__Order__pages__orderPay__index",292:"p__Classrooms__Lists__Exercise__Add__index",337:"p__Paperlibrary__Random__PreviewEdit__index",479:"p__Classrooms__Lists__GroupHomework__EditWork__index",485:"p__Question__AddOrEdit__BatchAdd__index",508:"p__Forums__Detail__id",518:"p__Shixuns__Detail__Settings__ThemeChange__index",532:"p__ExcellentCourse__index",533:"p__Classrooms__Lists__Video__Statistics__Detail__index",547:"p__Account__index",556:"p__User__Detail__Order__pages__invoice__index",559:"layouts__virtualDetail__index",576:"p__Account__Profile__Edit__index",643:"p__Classrooms__Lists__Polls__QuestionnaireInfo__index",680:"p__Innovation__index",700:"p__tasks__Jupyter__index",737:"p__Classrooms__Lists__CommonHomework__Detail__components__CodeReview__Detail__index",799:"p__User__Detail__Topics__Poll__Detail__index",869:"p__Guidance__index",879:"p__User__ThemeChange__AccountInfo",895:"p__Classrooms__Lists__Video__Items__videoInfo__index",900:"p__User__ThemeChange__Classrooms",906:"p__User__ThemeChange__CareerCertification",921:"p__Classrooms__Lists__Exercise__CodeDetails__index",928:"p__RestFul__Edit__index",1006:"p__RestFul__index",1043:"p__Classrooms__Lists__Graduation__Tasks__index",1045:"p__virtualSpaces__Lists__Knowledge__AddAndEdit__index",1048:"p__Classrooms__Lists__ProgramHomework__Detail__Ranking__index",1070:"p__Innovation__PublicMirror__index",1211:"p__Classrooms__Lists__CommonHomework__EditWork__index",1253:"p__Graduations__Lists__Gradingsummary__index",1257:"p__Classrooms__Lists__ResourceRecommend__index",1276:"p__MoopCases__Success__index",1343:"p__User__Detail__ResourceAllocation__index",1423:"p__Shixuns__Edit__body__Level__Challenges__EditPracticeAnswer__index",1427:"p__Classrooms__Lists__Statistics__index",1450:"p__Classrooms__Lists__ShixunHomeworks__Commitsummary__index",1461:"p__Graduations__Lists__Topics__index",1470:"p__User__Register__index",1475:"p__Shixuns__Detail__Dataset__JupyterData__index",1477:"p__Classrooms__ThemeChange__Assistant",1482:"p__Classrooms__Lists__Graduation__Topics__Edit__index",1512:"p__Classrooms__Lists__Exercise__AnswerCheck__index",1520:"p__Engineering__Lists__StudentList__index",1545:"p__Paperlibrary__Random__ExchangeFromProblemSet__index",1578:"p__Classrooms__Lists__Graduation__Topics__Detail__index",1581:"p__Problemset__Preview__index",1582:"p__Classrooms__Lists__GroupHomework__Add__index",1657:"p__Shixuns__Edit__body__Level__Challenges__EditQuestion__index",1674:"p__Classrooms__ClassicCases__index",1678:"p__Classrooms__ThemeChange__Attachment",1702:"p__Classrooms__New__index",1713:"p__virtualSpaces__Lists__Settings__index",1717:"layouts__index",1727:"p__Classrooms__Lists__CourseGroup__NotList__index",1754:"p__Classrooms__ThemeChange__Video",1783:"p__virtualSpaces__Lists__Experiment__index",1798:"p__Classrooms__ThemeChange__GroupHomework",1831:"p__Graduations__Index__index",1836:"p__Classrooms__Lists__Attendance__Webview__Teacher__index",1855:"p__MoopCases__InfoPanel__index",1880:"p__User__Detail__Order__pages__apply__index",1897:"p__User__ThemeChange__ClassManagement",1939:"p__User__Detail__Order__index",1953:"p__Problemset__NewItem__index",1962:"p__Classrooms__Lists__Engineering__index",1993:"p__Shixuns__Detail__Dataset__ThemeChange__index",2045:"p__Engineering__Lists__TeacherList__index",2099:"p__Paperlibrary__ThemeChange__index",2102:"p__Classrooms__Lists__Board__Edit__index",2130:"p__Shixuns__Detail__Repository__UploadFile__ThemeChange__index",2141:"p__Shixuns__Detail__Split__index",2203:"p__Classrooms__ThemeChange__ShixunHomeworks",2216:"p__DataSet__Index__index",2240:"p__User__Detail__Videos__Upload__index",2281:"p__Paths__ThemeChange__Detail",2303:"p__Classrooms__Lists__CommonHomework__Comment__index",2307:"p__Report__index",2338:"p__Classrooms__Lists__CommonHomework__Review__index",2339:"p__virtualSpaces__Lists__Plan__Detail__index",2396:"p__User__Detail__ResourcesCenter__index",2404:"p__Classrooms__Lists__Template__teacher__index",2412:"p__User__Detail__Videos__index",2425:"p__Classrooms__Lists__Board__Detail__index",2443:"p__Graduations__Lists__StageModule__index",2476:"p__Colleges__index",2501:"p__Search__index",2539:"p__Graduations__Review__index",2548:"p__Engineering__Norm__Detail__index",2570:"p__Competitions__Detail__index",2603:"p__Classrooms__Lists__ProgramHomework__Detail__answer__Add__index",2659:"p__User__Detail__UserPortrait__index",2707:"p__Innovation__MyDataSet__index",2806:"p__User__Detail__Topics__Exercise__Detail__index",2819:"p__Classrooms__Lists__Template__detail__index",2823:"p__Engineering__Navigation__Home__index",2829:"p__Messages__Private__index",2862:"p__User__ThemeChange__ExperImentImg",2865:"p__Innovation__MyMirror__index",2884:"p__Classrooms__Lists__ProgramHomework__Comment__index",3006:"p__Engineering__index",3086:"p__Shixuns__Detail__ForkList__ThemeChange__index",3141:"p__Innovation__Detail__index",3157:"p__User__Detail__ExperImentImg__Add__index",3183:"p__Engineering__Lists__GraduationIndex__index",3212:"p__MoopCases__index",3220:"p__Classrooms__Lists__Video__Upload__index",3247:"p__Paperlibrary__See__index",3260:"p__Paperlibrary__Add__index",3276:"p__Classrooms__Lists__Statistics__UserportraitStatistics__index",3317:"p__Classrooms__Lists__Graduation__Topics__Add__index",3391:"p__Classrooms__Lists__ProgramHomework__Detail__components__CodeReview__Detail__index",3433:"p__Classrooms__Lists__Exercise__Sumup__Edit__index",3442:"p__Classrooms__Lists__Board__Add__index",3447:"p__User__Detail__Order__pages__orderInformation__index",3451:"p__Classrooms__Lists__Statistics__StudentStatistics__Detail__index",3509:"p__HttpStatus__SixActivities",3581:"p__Shixuns__Detail__Collaborators__ThemeChange__index",3585:"p__Classrooms__Lists__Statistics__StudentSituation__index",3665:"p__tasks__index",3668:"p__Classrooms__Lists__CommonHomework__Detail__index",3747:"p__virtualSpaces__Lists__Homepage__index",3784:"p__Paperlibrary__Random__Detail__index",3831:"p__User__ThemeChange__VirtualSpaces",3873:"p__virtualSpaces__Lists__Lesson__index",3910:"p__HttpStatus__introduction",3951:"p__Classrooms__Lists__ProgramHomework__Detail__index",4030:"p__Classrooms__Lists__ProgramHomework__AddAndEdit__index",4048:"p__Forums__ThemeChange__index",4056:"p__IntrainCourse__index",4078:"p__Messages__Tidings__index",4093:"p__Classrooms__Lists__Attendance__Detail__index",4105:"p__Classrooms__Lists__Exercise__Answer__index",4144:"p__Problemset__Preview__New__index",4164:"p__Classrooms__Lists__Exercise__Detail__index",4216:"p__Classrooms__Lists__ProgramHomework__Detail__answer__Edit__index",4217:"p__Classrooms__Lists__Video__Statistics__index",4227:"p__Paths__Overview__index",4259:"p__User__Detail__Order__pages__result__index",4264:"p__Forums__New__index",4297:"p__Classrooms__ThemeChange__Polls",4449:"p__Competitions__Exports__index",4492:"p__Graduations__Lists__StudentSelection__index",4496:"p__HttpStatus__HpcCourse",4498:"p__Shixuns__Edit__body__Level__Challenges__NewPractice__index",4504:"p__virtualSpaces__Lists__Survey__index",4514:"p__Account__Results__index",4520:"p__Account__Secure__index",4546:"p__Engineering__Lists__TrainingProgram__Add__index",4572:"p__Classrooms__Lists__ExportList__index",4599:"p__Problemset__index",4601:"p__Paths__Detail__Statistics__index",4610:"p__User__Detail__LearningPath__index",4621:"p__Administration__Profession__index",4662:"p__Classrooms__Lists__GroupHomework__Review__index",4715:"p__virtualSpaces__Lists__Material__Detail__index",4736:"p__User__Detail__Projects__index",4741:"p__Problems__OjForm__NewEdit__index",4757:"p__virtualSpaces__Lists__Workplace__index",4766:"p__Administration__index",4770:"p__Classrooms__Lists__ProgramHomework__Detail__answer__index",4795:"p__Classrooms__Lists__Graduation__Tasks__Add__index",4800:"p__Engineering__Lists__GraduatedMatrix__index",4889:"p__Classrooms__Lists__Exercise__ImitateAnswer__index",4928:"p__Classrooms__Lists__LearningPath__index",4973:"p__Engineering__Evaluate__List__index",4994:"p__Problems__OjForm__index",5022:"p__Graduations__Lists__Settings__index",5043:"p__User__Detail__Topics__Poll__Edit__index",5048:"p__Classrooms__Lists__Graduation__Topics__index",5096:"p__Shixuns__Detail__AuditSituation__index",5111:"p__Terminal__index",5117:"p__User__ThemeChange__Certificate",5125:"p__Classrooms__Lists__Exercise__DetailedAnalysis__index",5148:"p__Classrooms__Lists__Polls__Answer__index",5165:"p__User__ThemeChange__Topics",5176:"p__User__Detail__Videos__Protocol__index",5177:"p__Classrooms__ThemeChange__Teachers",5179:"p__Administration__Student__Edit__index",5186:"p__Classrooms__Overview__index",5230:"p__Shixuns__Detail__Repository__AddFile__ThemeChange__index",5238:"p__virtualSpaces__Lists__Material__index",5297:"p__Classrooms__Lists__Exercise__Detail__components__DuplicateChecking__CheckDetail__index",5319:"p__Classrooms__Lists__ProgramHomework__Detail__answer__Detail__index",5330:"p__Classrooms__ThemeChange__ShixunHomeworksComment",5335:"p__Engineering__Lists__CourseMatrix__index",5357:"p__Engineering__Lists__TrainingProgram__Edit__index",5359:"p__Messages__Detail__index",5382:"p__DataSet__Detail__index",5402:"p__User__Detail__Topics__Detail__index",5466:"p__Classrooms__ThemeChange__LiveVideo",5518:"p__Classrooms__Lists__Template__index",5549:"p__Shixuns__New__CreateImg__index",5572:"p__Paths__HigherVocationalEducation__index",5573:"p__Shixuns__Detail__Merge__index",5624:"p__Graduations__Lists__Index__index",5650:"p__Competitions__Update__index",5694:"p__Classrooms__ThemeChange__ShixunHomeworksDetail",5705:"p__virtualSpaces__Lists__Construction__index",5729:"p__Help__Index",5775:"p__Engineering__Lists__Document__index",5776:"p__User__ThemeChange__RealNameCertification",5786:"layouts__LoginAndRegister__index",5798:"p__Classrooms__Lists__Video__Statistics__UserDetail__index",5800:"p__User__ThemeChange__Competitions",5816:"p__Paperlibrary__Random__Edit__index",5888:"p__Classrooms__Lists__CommonHomework__Add__index",5891:"p__virtualSpaces__Lists__Resources__index",5894:"p__Shixuns__Detail__Repository__Commit__ThemeChange__index",5915:"p__knowledgegraph__Detail__Statistics__index",5972:"layouts__user__index",5992:"p__Classrooms__Lists__Exercise__ReviewGroup__index",6029:"p__Administration__Student__index",6063:"p__Graduations__Lists__Personmanage__index",6069:"p__virtualSpaces__Lists__Lesson__Detail__index",6127:"p__Classrooms__Lists__ProgramHomework__Ranking__index",6185:"p__Classrooms__ThemeChange__Announcement",6265:"p__virtualSpaces__Lists__Discussion__index",6270:"p__MyProblem__index",6282:"p__Classrooms__ThemeChange__ProgramHomework",6328:"p__Shixuns__Edit__body__Warehouse__index",6366:"p__Innovation__PublicProject__index",6434:"p__User__Detail__Order__pages__records__index",6444:"p__Video__Detail__id",6452:"p__Innovation__PublicDataSet__index",6583:"p__User__Detail__Classrooms__index",6587:"p__User__Detail__Videos__Protocol__resource",6634:"p__Innovation__Tasks__index",6637:"p__Shixuns__Detail__Repository__ThemeChange__index",6651:"p__Engineering__Evaluate__Detail__index",6682:"p__User__ThemeChange__Shixuns",6685:"p__Classrooms__Index__index",6729:"p__Classrooms__Lists__GroupHomework__Edit__index",6741:"p__Engineering__Norm__List__index",6776:"p__Classrooms__ThemeChange__Exercise",6784:"p__Innovation__Edit__index",6789:"p__Classrooms__ThemeChange__index",6796:"p__virtualSpaces__Lists__Announcement__Detail__index",6820:"p__User__Detail__Topics__Normal__index",6882:"p__Classrooms__New__StartClass__index",6883:"p__Competitions__Index__index",6904:"p__MoopCases__FormPanel__index",6913:"p__Question__AddOrEdit__index",6963:"p__Classrooms__Lists__Engineering__Detail__index",7008:"p__Shixuns__New__index",7043:"p__User__Detail__Topics__Exercise__Edit__index",7045:"p__Classrooms__Lists__CommonHomework__SubmitWork__index",7058:"p__virtualSpaces__Lists__Survey__Detail__index",7062:"layouts__SimpleLayouts",7178:"p__User__BindAccount__index",7182:"p__User__ResetPassword__index",7242:"p__Innovation__MyProject__index",7260:"p__Account__Certification__index",7322:"layouts__ThemeChange__ShixunDetail",7329:"p__Classrooms__ThemeChange__Attendance",7395:"p__Classrooms__Lists__Statistics__StudentDetail__index",7402:"p__User__ThemeChange__OtherResources",7460:"p__Question__OjProblem__index",7477:"p__virtualSpaces__Lists__Announcement__index",7482:"p__Classrooms__Lists__Exercise__Notice__index",7527:"p__MyProblem__RecordDetail__index",7545:"p__Graduations__Lists__Archives__index",7560:"p__Administration__College__index",7589:"p__virtualSpaces__Lists__DigitalTopics__index",7614:"p__Shixuns__Edit__body__Level__Challenges__RankingSetting__index",7622:"p__Classrooms__Lists__Polls__Detail__index",7806:"p__Classrooms__Lists__Statistics__StatisticsQuality__index",7835:"p__Problemset__ThemeChange__index",7855:"p__User__Detail__ResourcesCenter__Detail__index",7857:"p__Shixuns__Edit__body__Level__Challenges__NewQuestion__index",7884:"p__Shixuns__Exports__index",7922:"p__Classrooms__Lists__CourseGroup__Detail__index",8062:"p__User__Detail__Topicbank__index",8072:"p__Classrooms__Lists__GroupHomework__SubmitWork__index",8085:"p__Classrooms__Lists__Exercise__Review__index",8115:"p__User__ThemeChange__DataSet",8143:"layouts__GraduationsDetail__index",8145:"p__User__ThemeChange__ClassManagementItem",8155:"p__Shixuns__Overview__index",8217:"p__User__ThemeChange__AccountInfoEdit",8237:"p__User__Detail__Order__pages__view__index",8241:"p__virtualSpaces__Lists__Plan__index",8286:"p__User__ThemeChange__ExperImentImgDetail",8332:"p__User__ThemeChange__Detail",8398:"p__virtualSpaces__Lists__Resources__Detail__index",8431:"p__Classrooms__Lists__Exercise__Export__index",8435:"p__Classrooms__Lists__Attendance__index",8447:"p__virtualSpaces__Lists__Knowledge__index",8458:"p__Classrooms__ThemeChange__CommonHomework",8479:"p__User__ThemeChange__TeachGroup",8517:"p__User__Detail__Topics__Group__index",8552:"p__Shixuns__ThemeChange__index",8563:"p__virtualSpaces__Lists__Discussion__Detail__index",8665:"p__Engineering__Lists__TrainingObjectives__index",8688:"p__Shixuns__Detail__Repository__index",8689:"p__Classrooms__Lists__Statistics__VideoStatistics__index",8723:"p__Classrooms__Lists__Polls__Edit__index",8787:"p__Competitions__Entered__index",8797:"p__Competitions__Edit__index",8823:"p__knowledgegraph__Detail__id",8827:"p__Classrooms__Lists__OnlineLearning__index",8866:"p__index",8882:"p__Classrooms__Lists__Graduation__Tasks__Detail__index",8885:"p__Classrooms__Lists__Statistics__StudentStatistics__index",8965:"p__Shixuns__Detail__Discuss__ThemeChange__index",8982:"p__Paths__New__index",8999:"p__Three__index",9039:"p__Classrooms__ThemeChange__CourseGroup",9076:"p__Account__Binding__index",9205:"p__Shixuns__Edit__body__Level__Challenges__EditPracticeSetting__index",9366:"p__User__Login__index",9391:"p__Engineering__Lists__CurseSetting__index",9404:"monaco-editor",9406:"p__Classrooms__ThemeChange__Board",9408:"p__Shixuns__Detail__RankingList__index",9416:"p__Graduations__Lists__Tasks__index",9449:"p__Shixuns__ThemeChange__Detail",9487:"p__LargeScreen__index",9489:"p__Engineering__Lists__CourseList__index",9507:"p__User__Detail__ResourceGuarantee__index",9511:"p__Shixuns__ThemeChange__Edit",9647:"p__Question__Index__index",9649:"p__Engineering__Lists__TrainingProgram__index",9674:"p__Shixuns__New__ImagePreview__index",9677:"p__virtualSpaces__Lists__Announcement__AddAndEdit__index",9695:"p__Classrooms__Lists__Polls__Add__index",9715:"p__Classrooms__Lists__CommonHomework__Edit__index",9716:"p__Question__OjProblem__RecordDetail__index",9785:"p__Classrooms__Lists__Template__student__index",9788:"p__Account__Profile__index",9814:"p__Shixuns__Detail__Challenges__ThemeChange__index",9891:"p__User__Detail__Videos__Success__index",9906:"p__Paths__ThemeChange__index",9921:"p__Classrooms__ExamList__index",9922:"p__Classrooms__Lists__Statistics__StudentVideo__index",9944:"p__Classrooms__Lists__Video__Statistics__StudentDetail__index"}[d]||d)+"."+{26:"91ed81ab",67:"2e3b86cc",109:"1a7fc455",119:"d7177160",195:"09f06554",201:"c090cf1f",264:"5fd9b3fc",292:"1fb46eb1",337:"f1e82d38",479:"bba9e475",485:"d63578fe",508:"82593858",518:"5b67f727",532:"397e11e5",533:"4c39d165",547:"5581debc",556:"3a0c45f8",559:"c49aa5ba",576:"e4f97d42",643:"22ded693",680:"e67e9e01",700:"fe136622",737:"98eb2f74",799:"3eacd344",869:"6740e24b",879:"44e65b8f",895:"ad846737",900:"4e52694c",906:"d5015af5",921:"30cc7e9b",928:"0277270a",1006:"2263131d",1043:"e8c0878b",1045:"cf50b737",1048:"dafc3f4f",1070:"e67e9e01",1211:"bdb8faab",1253:"6d030939",1257:"156e8f74",1276:"bbc6eeec",1343:"10a01d78",1423:"5c4a76fc",1427:"903cdf1d",1450:"1edcc2ed",1461:"90ffd881",1470:"183c9793",1475:"ffcfe1a4",1477:"2c54e2cf",1482:"d159af07",1512:"f3653a35",1520:"f7300d0e",1545:"eb7854e2",1578:"efcb0bdc",1581:"efffd7c0",1582:"8e45b6ff",1657:"ddd6a700",1674:"fdbc1e05",1678:"e51db9a4",1702:"fca45632",1713:"8f261115",1717:"08a9e890",1727:"55a0424d",1754:"3dd63b8a",1783:"c3af53d2",1798:"c5856ac9",1831:"04eb6cd5",1836:"5f0d3f7f",1855:"b92cccb4",1880:"2075d78a",1897:"c1b8b1e9",1939:"e1f4a044",1953:"948193ea",1962:"84e145fa",1993:"f0734931",2045:"dcfad42d",2099:"d6975c9d",2102:"ec61f9f0",2130:"6f8dec06",2141:"5eb2f330",2203:"4b770927",2216:"fd1923fe",2240:"e7cce869",2281:"a93b099a",2303:"87592c17",2307:"b2c54321",2338:"c9f2cb12",2339:"0ce16002",2396:"78b02416",2404:"08d36549",2412:"d56e89e2",2425:"47b23ee4",2443:"1cf9762d",2476:"cf85a190",2501:"2441982c",2539:"edaa4bfe",2548:"75182034",2570:"fb08fd52",2603:"0277270a",2659:"f6071a36",2707:"cabcb16e",2806:"e5eec853",2819:"9455b08a",2823:"a13b21fb",2829:"a5909474",2862:"7640e19b",2865:"6ef3cf6b",2884:"e40bd5de",3006:"7fce4e74",3086:"f9f3906d",3141:"5b061b52",3157:"8574a6a9",3183:"b2253f40",3212:"ad1521c1",3220:"a5be3990",3247:"50105eb7",3260:"cc275789",3276:"7bbb651d",3317:"137440b7",3391:"f0e498fe",3433:"0222b953",3442:"bdf7849c",3447:"1653d818",3451:"e3a31387",3509:"70043ca5",3581:"9294e30b",3585:"5f288e7b",3665:"8aa1b374",3668:"174e5af7",3747:"e8017222",3784:"c81d4a51",3831:"4f89de7f",3873:"00556e9c",3910:"658d457f",3951:"4a9249b1",4030:"5e11be1e",4048:"b373ea71",4056:"10eacfff",4078:"aa54548e",4093:"dbc7f087",4105:"e39011c7",4144:"f10aa199",4164:"a1035ae1",4216:"0277270a",4217:"387bf824",4227:"79c3b323",4259:"ebd953ac",4264:"36917df0",4297:"1fe09e32",4449:"e68d8d58",4492:"28c62416",4496:"77babddd",4498:"b05686dd",4504:"2337a5c1",4514:"887bdbb6",4520:"e86d61a1",4546:"4101a1f2",4572:"70e5675d",4599:"b738175f",4601:"3c8ac557",4610:"687005a6",4621:"57046c20",4662:"966d56e9",4715:"12ee76fe",4736:"db024242",4741:"37fda16f",4757:"73b754d2",4766:"b5df5a8e",4770:"674b2d2a",4795:"939f9f81",4800:"f50302a4",4889:"db5cf2c9",4928:"a4b1a237",4973:"129c56e8",4994:"be3194ef",5022:"81b1b86b",5043:"247e6954",5048:"aa08c681",5096:"4f6a4d00",5111:"5d09a39a",5117:"f53f8e0d",5125:"57501e4a",5148:"572faeac",5165:"ffd29c89",5176:"9c49e7fa",5177:"433880bf",5179:"21f01751",5186:"a366942d",5230:"d946e576",5238:"a5251253",5297:"5426028f",5319:"34217c3f",5330:"fde3562c",5335:"fec6fd9f",5357:"1fbb7d24",5359:"b254a598",5382:"e5edb107",5402:"3f57b82b",5466:"420e4b00",5518:"9f425be3",5549:"39285664",5572:"c945fbf2",5573:"6ecf393c",5624:"fc2c784f",5650:"f8f63f4b",5694:"2903ec3b",5705:"df6bf207",5729:"46f9b5d4",5775:"8945cad2",5776:"e2035183",5786:"37a81eaa",5798:"ce1cf7da",5800:"ccd296e6",5816:"7901bc8b",5888:"193a7f8f",5891:"06b0dab3",5894:"38929e12",5915:"bc9c3e69",5972:"c7a91e8e",5992:"419f5d2f",6029:"6248ea9b",6063:"ab3c406b",6069:"5aeb8885",6127:"f31505a8",6185:"6a82ea9a",6265:"da02c985",6270:"cc24b0fc",6282:"50cb3fd8",6328:"de2b9d62",6366:"079fc2d8",6434:"77f31a1a",6444:"fd46d237",6452:"50a6d310",6583:"e5a130f0",6587:"9c49e7fa",6634:"c8c00951",6637:"2a15e63e",6651:"b07fe216",6656:"03cdfb68",6682:"97d57e86",6685:"e00118f4",6729:"aea3b7f5",6741:"b838eb14",6776:"efed9083",6784:"1affe817",6789:"09cce941",6796:"89cd2eaa",6820:"cebdf1cf",6882:"c2d2eada",6883:"53646e1c",6904:"44afaa9b",6913:"739202fe",6963:"84e145fa",7008:"80535bd6",7043:"25478869",7045:"48f6fc4c",7058:"4cf0f058",7062:"a950c93b",7178:"6e47d75d",7182:"183c9793",7242:"4f353f61",7260:"2c380d56",7322:"89229a20",7329:"52737871",7395:"5c10e8d8",7402:"fa2fa462",7460:"dedd2038",7477:"d1715def",7482:"c37a3f01",7527:"6b64ff47",7545:"8cf68711",7560:"d82e43ca",7589:"ec6f07b0",7614:"de9ee12f",7622:"55761263",7806:"80b7b1d6",7835:"ae68a3e8",7855:"115abf43",7857:"13a29416",7884:"1ca6cde0",7922:"a51bbd1f",8062:"8e384b9f",8072:"540f746b",8085:"d8b79ff9",8115:"57221fd6",8143:"6fbcc414",8145:"745deb45",8155:"d345abd7",8217:"aaa9d538",8237:"b82ceaf1",8241:"89923da1",8286:"fe48ab9f",8332:"83551a28",8398:"6af0315c",8431:"60a111b6",8435:"5f24842a",8447:"28ad7e81",8458:"6f9d9bd6",8479:"5dd11d53",8517:"cccfddad",8552:"8fdb1688",8563:"710ab1fb",8665:"c52575bc",8688:"c044db56",8689:"5d3df231",8723:"ee8ed0dd",8787:"121de108",8797:"18e6ad26",8823:"07028b11",8827:"d42b3cb3",8866:"466d021f",8882:"f3e42f72",8885:"de905169",8965:"198f06e9",8982:"1971743f",8999:"448aa22f",9039:"fd36efa1",9076:"6a501148",9205:"49a3e67d",9366:"4f511490",9391:"c11edda0",9404:"d8cf04f7",9406:"d241e334",9408:"d3565b1a",9416:"0d65fe1b",9449:"0a1b6f5c",9487:"a73f5679",9489:"ee2bb5b7",9507:"bffb6174",9511:"2c862ab0",9647:"f594ebb1",9649:"00fb4211",9674:"7759ba3d",9677:"6b9f725e",9695:"200c96e4",9715:"b6c6645f",9716:"a5750e0d",9785:"08d36549",9788:"781a4d20",9814:"67554a30",9891:"512a9301",9906:"964bc457",9921:"e0db9101",9922:"33690872",9944:"1ba31055"}[d]+".chunk.css"}}(),function(){__webpack_require__.g=function(){if(typeof globalThis=="object")return globalThis;try{return this||new Function("return this")()}catch(d){if(typeof window=="object")return window}}()}(),function(){__webpack_require__.hmd=function(d){return d=Object.create(d),d.children||(d.children=[]),Object.defineProperty(d,"exports",{enumerable:!0,set:function(){throw new Error("ES Modules may not assign module.exports or exports.*, Use ESM export syntax, instead: "+d.id)}}),d}}(),function(){__webpack_require__.o=function(d,v){return Object.prototype.hasOwnProperty.call(d,v)}}(),function(){var d={};__webpack_require__.l=function(v,e,r,i){if(d[v]){d[v].push(e);return}var l,c;if(r!==void 0)for(var f=document.getElementsByTagName("script"),o=0;o0&&arguments[0]!==void 0?arguments[0]:"";return Tn.endsWith("/")?Tn:"".concat(Tn,"/")}var Go=__webpack_require__(38127),ku=__webpack_require__(38329),Io=__webpack_require__(8616),tl=["content"],yu=["content"],hc=/^(http:|https:)?\/\//;function Ru(Tn){return hc.test(Tn)||Tn.startsWith("/")&&!Tn.startsWith("/*")||Tn.startsWith("./")||Tn.startsWith("../")}var Vo=function(){return ze.createElement("noscript",{dangerouslySetInnerHTML:{__html:"Enable JavaScript to run this app."}})},rl=function(Gn){var Fi,Sa=Gn.loaderData,Gi=Gn.htmlPageOpts,oa=Gn.manifest,ma=(oa==null||(Fi=oa.assets)===null||Fi===void 0?void 0:Fi["umi.css"])||"";return ze.createElement("script",{suppressHydrationWarning:!0,dangerouslySetInnerHTML:{__html:"window.__UMI_LOADER_DATA__ = ".concat(JSON.stringify(Sa||{}),"; window.__UMI_METADATA_LOADER_DATA__ = ").concat(JSON.stringify(Gi||{}),"; window.__UMI_BUILD_ClIENT_CSS__ = '").concat(ma,"'")}})};function bu(Tn){var Gn=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(typeof Tn=="string")return Ru(Tn)?(0,Po.Z)({src:Tn},Gn):{content:Tn};if((0,Io.Z)(Tn)==="object")return(0,Po.Z)((0,Po.Z)({},Tn),Gn);throw new Error("Invalid script type: ".concat((0,Io.Z)(Tn)))}function Ic(Tn){return Ru(Tn)?{type:"link",href:Tn}:{type:"style",content:Tn}}var Kc=function(Gn){var Fi,Sa,Gi,oa,ma,ms,qi=Gn.htmlPageOpts;return ze.createElement(ze.Fragment,null,(qi==null?void 0:qi.title)&&ze.createElement("title",null,qi.title),qi==null||(Fi=qi.favicons)===null||Fi===void 0?void 0:Fi.map(function(is,Wu){return ze.createElement("link",{key:Wu,rel:"shortcut icon",href:is})}),(qi==null?void 0:qi.description)&&ze.createElement("meta",{name:"description",content:qi.description}),(qi==null||(Sa=qi.keywords)===null||Sa===void 0?void 0:Sa.length)&&ze.createElement("meta",{name:"keywords",content:qi.keywords.join(",")}),qi==null||(Gi=qi.metas)===null||Gi===void 0?void 0:Gi.map(function(is){return ze.createElement("meta",{key:is.name,name:is.name,content:is.content})}),qi==null||(oa=qi.links)===null||oa===void 0?void 0:oa.map(function(is,Wu){return ze.createElement("link",(0,ku.Z)({key:Wu},is))}),qi==null||(ma=qi.styles)===null||ma===void 0?void 0:ma.map(function(is,Wu){var Bu=Ic(is),Gu=Bu.type,ul=Bu.href,ll=Bu.content;if(Gu==="link")return ze.createElement("link",{key:Wu,rel:"stylesheet",href:ul});if(Gu==="style")return ze.createElement("style",{key:Wu},ll)}),qi==null||(ms=qi.headScripts)===null||ms===void 0?void 0:ms.map(function(is,Wu){var Bu=bu(is),Gu=Bu.content,ul=(0,Go.Z)(Bu,tl);return ze.createElement("script",(0,ku.Z)({dangerouslySetInnerHTML:{__html:Gu},key:Wu},ul))}))};function Zo(Tn){var Gn,Fi=Tn.children,Sa=Tn.loaderData,Gi=Tn.manifest,oa=Tn.htmlPageOpts,ma=Tn.__INTERNAL_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,ms=Tn.mountElementId;if(ma!=null&&ma.pureHtml)return ze.createElement("html",null,ze.createElement("head",null),ze.createElement("body",null,ze.createElement(Vo,null),ze.createElement("div",{id:ms},Fi),ze.createElement(rl,{manifest:Gi,loaderData:Sa,htmlPageOpts:oa})));if(ma!=null&&ma.pureApp)return ze.createElement(ze.Fragment,null,Fi);var qi=typeof window=="undefined"?Gi==null?void 0:Gi.assets["umi.css"]:window.__UMI_BUILD_ClIENT_CSS__;return ze.createElement("html",{suppressHydrationWarning:!0,lang:(oa==null?void 0:oa.lang)||"en"},ze.createElement("head",null,ze.createElement("meta",{charSet:"utf-8"}),ze.createElement("meta",{name:"viewport",content:"width=device-width, initial-scale=1"}),qi&&ze.createElement("link",{suppressHydrationWarning:!0,rel:"stylesheet",href:qi}),ze.createElement(Kc,{htmlPageOpts:oa})),ze.createElement("body",null,ze.createElement(Vo,null),ze.createElement("div",{id:ms},Fi),ze.createElement(rl,{manifest:Gi,loaderData:Sa,htmlPageOpts:oa}),oa==null||(Gn=oa.scripts)===null||Gn===void 0?void 0:Gn.map(function(is,Wu){var Bu=bu(is),Gu=Bu.content,ul=(0,Go.Z)(Bu,yu);return ze.createElement("script",(0,ku.Z)({dangerouslySetInnerHTML:{__html:Gu},key:Wu},ul))})))}var xu=ze.createContext(void 0);function nl(){return ze.useContext(xu)}var il=["redirect"];function Ql(Tn){var Gn=Tn.routesById,Fi=Tn.parentId,Sa=Tn.routeComponents,Gi=Tn.useStream,oa=Gi===void 0?!0:Gi;return Object.keys(Gn).filter(function(ma){return Gn[ma].parentId===Fi}).map(function(ma){var ms=xl((0,Po.Z)((0,Po.Z)({route:Gn[ma],routeComponent:Sa[ma],loadingComponent:Tn.loadingComponent,reactRouter5Compat:Tn.reactRouter5Compat},Tn.reactRouter5Compat&&{hasChildren:Object.keys(Gn).filter(function(is){return Gn[is].parentId===ma}).length>0}),{},{useStream:oa})),qi=Ql({routesById:Gn,routeComponents:Sa,parentId:ms.id,loadingComponent:Tn.loadingComponent,reactRouter5Compat:Tn.reactRouter5Compat,useStream:oa});return qi.length>0&&(ms.children=qi,ms.routes=qi),ms})}function ql(Tn){var Gn=(0,eu.UO)(),Fi=(0,eu.Gn)(Tn.to,Gn),Sa=(0,Ll.T$)(),Gi=(0,eu.TH)();if(Sa!=null&&Sa.keepQuery){var oa=Gi.search+Gi.hash;Fi+=oa}var ma=(0,Po.Z)((0,Po.Z)({},Tn),{},{to:Fi});return ze.createElement(eu.Fg,(0,ku.Z)({replace:!0},ma))}function xl(Tn){var Gn=Tn.route,Fi=Tn.useStream,Sa=Fi===void 0?!0:Fi,Gi=Gn.redirect,oa=(0,Go.Z)(Gn,il),ma=Tn.reactRouter5Compat?Ml:Jl;return(0,Po.Z)({element:Gi?ze.createElement(ql,{to:Gi}):ze.createElement(xu.Provider,{value:{route:Tn.route}},ze.createElement(ma,{loader:ze.memo(Tn.routeComponent),loadingComponent:Tn.loadingComponent||Yc,hasChildren:Tn.hasChildren,useStream:Sa}))},oa)}function Yc(){return ze.createElement("div",null)}function Ml(Tn){var Gn=nl(),Fi=Gn.route,Sa=(0,Ll.Ov)(),Gi=Sa.history,oa=Sa.clientRoutes,ma=(0,eu.UO)(),ms={params:ma,isExact:!0,path:Fi.path,url:Gi.location.pathname},qi=Tn.loader,is={location:Gi.location,match:ms,history:Gi,params:ma,route:Fi,routes:oa};return Tn.useStream?ze.createElement(ze.Suspense,{fallback:ze.createElement(Tn.loadingComponent,null)},ze.createElement(qi,is,Tn.hasChildren&&ze.createElement(eu.j3,null))):ze.createElement(qi,is,Tn.hasChildren&&ze.createElement(eu.j3,null))}function Jl(Tn){var Gn=Tn.loader;return Tn.useStream?ze.createElement(ze.Suspense,{fallback:ze.createElement(Tn.loadingComponent,null)},ze.createElement(Gn,null)):ze.createElement(Gn,null)}var Eu=null;function Xc(){return Eu}function pc(Tn){var Gn=Tn.history,Fi=ze.useState({action:Gn.action,location:Gn.location}),Sa=(0,Rl.Z)(Fi,2),Gi=Sa[0],oa=Sa[1];return(0,ze.useLayoutEffect)(function(){return Gn.listen(oa)},[Gn]),(0,ze.useLayoutEffect)(function(){function ma(ms){Tn.pluginManager.applyPlugins({key:"onRouteChange",type:"event",args:{routes:Tn.routes,clientRoutes:Tn.clientRoutes,location:ms.location,action:ms.action,basename:Tn.basename,isFirst:!!ms.isFirst}})}return ma({location:Gi.location,action:Gi.action,isFirst:!0}),Gn.listen(ma)},[Gn,Tn.routes,Tn.clientRoutes]),ze.createElement(eu.F0,{navigator:Gn,location:Gi.location,basename:Tn.basename},Tn.children)}function Lu(){var Tn=(0,Ll.Ov)(),Gn=Tn.clientRoutes;return(0,eu.V$)(Gn)}var lu=["innerProvider","i18nProvider","accessProvider","dataflowProvider","outerProvider","rootContainer"],ec=function(Gn,Fi){var Sa=Gn.basename||"/",Gi=Ql({routesById:Gn.routes,routeComponents:Gn.routeComponents,loadingComponent:Gn.loadingComponent,reactRouter5Compat:Gn.reactRouter5Compat,useStream:Gn.useStream});Gn.pluginManager.applyPlugins({key:"patchClientRoutes",type:"event",args:{routes:Gi}});for(var oa=ze.createElement(pc,{basename:Sa,pluginManager:Gn.pluginManager,routes:Gn.routes,clientRoutes:Gi,history:Gn.history},Fi),ma=0,ms=lu;manew Promise((Sa,Gi)=>{var oa=qi=>{try{ms(Fi.next(qi))}catch(is){Gi(is)}},ma=qi=>{try{ms(Fi.throw(qi))}catch(is){Gi(is)}},ms=qi=>qi.done?Sa(qi.value):Promise.resolve(qi.value).then(oa,ma);ms((Fi=Fi.apply(Tn,Gn)).next())});function Dc(){return _c(this,null,function*(){return{routes:{1:{path:"/",parentId:"@@/global-layout",id:"1"},2:{path:"/paperlibrary",parentId:"1",id:"2"},3:{path:"/paperlibrary",parentId:"2",id:"3"},4:{path:"/paperlibrary/add",parentId:"2",id:"4"},5:{path:"/paperlibrary/add/:id",parentId:"2",id:"5"},6:{path:"/paperlibrary/see/:id",parentId:"2",id:"6"},7:{path:"/paperlibrary/edit_select/:id",parentId:"2",id:"7"},8:{path:"/paperlibrary/exchangequestion",parentId:"2",id:"8"},9:{path:"/paths",parentId:"1",id:"9"},10:{path:"/paths",parentId:"9",id:"10"},11:{path:"/paths/higherVocationalEducation",parentId:"9",id:"11"},12:{path:"/paths/new",parentId:"9",id:"12"},13:{path:"/paths/guidance",exact:!0,parentId:"9",id:"13"},14:{path:"/paths/:pathId",parentId:"9",id:"14"},15:{path:"/paths/:pathId/statistics",parentId:"9",id:"15"},16:{path:"/paths/:pathId/edit",parentId:"9",id:"16"},17:{path:"/paths/:pathId/:stageId/program_homework/:categoryId/add",parentId:"9",id:"17"},18:{path:"/paths/:pathId/:stageId/program_homework/:categoryId/edit",parentId:"9",id:"18"},19:{path:"/classrooms",parentId:"1",id:"19"},20:{path:"/classrooms",parentId:"19",id:"20"},21:{path:"/classrooms/examList",parentId:"19",id:"21"},22:{path:"/classrooms/classicCases",parentId:"19",id:"22"},23:{path:"/classrooms/index",parentId:"19",id:"23"},24:{path:"/classrooms/new",parentId:"19",id:"24"},25:{path:"/classrooms/:coursesId/edit",parentId:"19",id:"25"},26:{path:"/classrooms/news/:subjectid/newgold/:id",parentId:"19",id:"26"},27:{path:"/classrooms/:coursesId/newgolds/settings",parentId:"19",id:"27"},28:{path:"/classrooms/:coursesId/shixun_homework/:categoryId/review_detail/:userId",parentId:"19",id:"28"},29:{path:"/classrooms/:coursesId/common_homework/:categoryId/review_detail/:userId",parentId:"19",id:"29"},30:{path:"/classrooms/:coursesId/program_homework/:categoryId/review_detail/:userId",parentId:"19",id:"30"},31:{path:"/classrooms/:coursesId/shixun_homework/:categoryId/detail",parentId:"19",id:"31"},32:{path:"/classrooms/:coursesId/shixun_homework/:categoryId/:homeworkId/comment",parentId:"19",id:"32"},33:{path:"/classrooms/:coursesId/common_homework/:categoryId/:homeworkId/comment",parentId:"19",id:"33"},34:{path:"/classrooms/:coursesId/shixun_homework/:categoryId/:homeworkId/commitsummary",parentId:"19",id:"34"},35:{path:"/classrooms/:coursesId/group_homework/:categoryId/detail",parentId:"19",id:"35"},36:{path:"/classrooms/:coursesId/common_homework/:categoryId/detail",parentId:"19",id:"36"},37:{path:"/classrooms/:coursesId/common_homework/:categoryId/review/:userId",parentId:"19",id:"37"},38:{path:"/classrooms/:coursesId/group_homework/:commonHomeworkId/review/:userId",parentId:"19",id:"38"},39:{path:"/classrooms/:coursesId/group_homework/:commonHomeworkId/post",parentId:"19",id:"39"},40:{path:"/classrooms/:coursesId/group_homework/:commonHomeworkId/:homeworkId/edit",parentId:"19",id:"40"},41:{path:"/classrooms/:coursesId/exercise/:categoryId/detail/:userId/review_detail",parentId:"19",id:"41"},42:{path:"/classrooms/:coursesId/exercise/:categoryId/detail",parentId:"19",id:"42"},43:{path:"/classrooms/:coursesId/exercise/:categoryId/preview_select",parentId:"19",id:"43"},44:{path:"/classrooms/:coursesId/exercise/:categoryId/:login/initate_answer",parentId:"19",id:"44"},45:{path:"/classrooms/:coursesId/exercise/:categoryId/users/:login",parentId:"19",id:"45"},46:{path:"/classrooms/:coursesId/exercisenotice/:categoryId/users/:login",parentId:"19",id:"46"},47:{path:"/classrooms/:coursesId/exercise/:categoryId/random/edit",parentId:"19",id:"47"},48:{path:"/classrooms/:coursesId/exercise/:categoryId/random/preview",parentId:"19",id:"48"},49:{path:"/classrooms/:coursesId/exercise/add",parentId:"19",id:"49"},50:{path:"/classrooms/:coursesId/exercise/add/:exerciseId",parentId:"19",id:"50"},51:{path:"/classrooms/:coursesId/exercise/:exerciseId/reviews/group",parentId:"19",id:"51"},52:{path:"/classrooms/:coursesId/exercise/:exerciseId/review/:userId",parentId:"19",id:"52"},53:{path:"/classrooms/:coursesId/exercise/:exerciseId/centralizeReview/:userId",parentId:"19",id:"53"},54:{path:"/classrooms/:coursesId/exercise/:exerciseId/export_blank",parentId:"19",id:"54"},55:{path:"/classrooms/:coursesId/exercise/:exerciseId/sumup",parentId:"19",id:"55"},56:{path:"/classrooms/:coursesId/exercise/:exerciseId/sumup/edit",parentId:"19",id:"56"},57:{path:"/classrooms/:coursesId/exercise/:exerciseId/analysis/:studentId",parentId:"19",id:"57"},58:{path:"/classrooms/:coursesId/shixun_homework/:exerciseId/analysis/:studentId",parentId:"19",id:"58"},59:{path:"/classrooms/:coursesId/exercise/:exerciseId/analysis/:studentId/code",parentId:"19",id:"59"},60:{path:"/classrooms/:coursesId/shixun_homework/:exerciseId/analysis/:studentId/code",parentId:"19",id:"60"},61:{path:"/classrooms/:coursesId/graduation_topics/:categoryId/detail",parentId:"19",id:"61"},62:{path:"/classrooms/:coursesId/graduation_topics/:categoryId/add",parentId:"19",id:"62"},63:{path:"/classrooms/:coursesId/graduation_topics/:categoryId/edit",parentId:"19",id:"63"},64:{path:"/classrooms/:coursesId/graduation_tasks/:categoryId/add",parentId:"19",id:"64"},65:{path:"/classrooms/:coursesId/graduation_tasks/:categoryId/edit",parentId:"19",id:"65"},66:{path:"/classrooms/:coursesId/graduation_tasks/:categoryId/detail",parentId:"19",id:"66"},67:{path:"/classrooms/:coursesId/common_homework/:categoryId/add",parentId:"19",id:"67"},68:{path:"/classrooms/:coursesId/common_homework/:categoryId/edit",parentId:"19",id:"68"},69:{path:"/classrooms/:coursesId/common_homework/:commonHomeworkId/post",parentId:"19",id:"69"},70:{path:"/classrooms/:coursesId/common_homework/:commonHomeworkId/:homeworkId/edit",parentId:"19",id:"70"},71:{path:"/classrooms/:coursesId/group_homework/:categoryId/add",parentId:"19",id:"71"},72:{path:"/classrooms/:coursesId/group_homework/:categoryId/edit",parentId:"19",id:"72"},73:{path:"/classrooms/:coursesId/poll/:categoryId/add",parentId:"19",id:"73"},74:{path:"/classrooms/:coursesId/poll/:categoryId/edit",parentId:"19",id:"74"},75:{path:"/classrooms/:coursesId/poll/:categoryId/detail",parentId:"19",id:"75"},76:{path:"/classrooms/:coursesId/poll/:categoryId/users/:login",parentId:"19",id:"76"},77:{path:"/classrooms/:coursesId/poll/:categoryId/questionnaireInfo/:login",parentId:"19",id:"77"},78:{path:"/classrooms/:coursesId/board/:categoryId/Add",parentId:"19",id:"78"},79:{path:"/classrooms/:coursesId/board/:categoryId/Edit/:boardId",parentId:"19",id:"79"},80:{path:"/classrooms/:coursesId/board/:categoryId/Detail/:boardId",parentId:"19",id:"80"},81:{path:"/classrooms/:courseId/template/:templateId",parentId:"19",id:"81"},82:{path:"/classrooms/:courseId/common_homework/:homeworkId/lab-report/:reportId",parentId:"19",id:"82"},83:{path:"/classrooms/guidance",parentId:"19",id:"83"},84:{path:"/classrooms/:courseId/common_homework/:homeworkId/lab-report-view/:workId",parentId:"19",id:"84"},85:{path:"/classrooms/:coursesId/exercise/:categoryId/users/:login/check",parentId:"19",id:"85"},86:{path:"/classrooms/:coursesId/Studentdetail/:login",parentId:"19",id:"86"},87:{path:"/classrooms/:coursesId/StudentSituation/:categoryId/:login",parentId:"19",id:"87"},88:{path:"/classrooms/:coursesId/engineering/datail",parentId:"19",id:"88"},89:{path:"/classrooms/:coursesId/program_homework/:categoryId/add",parentId:"19",id:"89"},90:{path:"/classrooms/:coursesId/program_homework/:categoryId/edit",parentId:"19",id:"90"},91:{path:"/classrooms/:coursesId/program_homework/ranking",parentId:"19",id:"91"},92:{path:"/classrooms/:coursesId/program_homework/:categoryId/detail",parentId:"19",id:"92"},93:{path:"/classrooms/:coursesId/program_homework/:categoryId/:homeworkId/ranking",parentId:"19",id:"93"},94:{path:"/classrooms/:coursesId/program_homework/:categoryId/:homeworkId/:user_id/comment",parentId:"19",id:"94"},95:{path:"/classrooms/:coursesId/program_homework/:categoryId/answer",parentId:"19",id:"95"},96:{path:"/classrooms/:coursesId/program_homework/:categoryId/answer/add",parentId:"19",id:"96"},97:{path:"/classrooms/:coursesId/program_homework/:categoryId/answer/:answerid/edit",parentId:"19",id:"97"},98:{path:"/classrooms/:coursesId/program_homework/:categoryId/answer/:answerid/detail",parentId:"19",id:"98"},99:{path:"/classrooms/:videoId/video_info",parentId:"19",id:"99"},100:{path:"/classrooms/",parentId:"19",id:"100"},101:{path:"/classrooms/:coursesId/shixun_homework/:categoryId",parentId:"100",id:"101"},102:{path:"/classrooms/:coursesId/shixun_homework",parentId:"100",id:"102"},103:{path:"/classrooms/:coursesId/graduation_topics/:categoryId",parentId:"100",id:"103"},104:{path:"/classrooms/:coursesId/graduation_tasks/:categoryId",parentId:"100",id:"104"},105:{path:"/classrooms/:coursesId/graduation_tasks/:categoryId",parentId:"100",id:"105"},106:{path:"/classrooms/:coursesId/exercise/:categoryId",parentId:"100",id:"106"},107:{path:"/classrooms/:coursesId/exercise",parentId:"100",id:"107"},108:{path:"/classrooms/:coursesId/poll/:categoryId",parentId:"100",id:"108"},109:{path:"/classrooms/:coursesId/poll",parentId:"100",id:"109"},110:{path:"/classrooms/:coursesId/common_homework/:categoryId",parentId:"100",id:"110"},111:{path:"/classrooms/:coursesId/common_homework",parentId:"100",id:"111"},112:{path:"/classrooms/:coursesId/group_homework/:categoryId",parentId:"100",id:"112"},113:{path:"/classrooms/:coursesId/group_homework",parentId:"100",id:"113"},114:{path:"/classrooms/:coursesId/teachers",parentId:"100",id:"114"},115:{path:"/classrooms/:coursesId/students",parentId:"100",id:"115"},116:{path:"/classrooms/:coursesId/assistant",parentId:"100",id:"116"},117:{path:"/classrooms/:coursesId/program_homework",parentId:"100",id:"117"},118:{path:"/classrooms/:coursesId/program_homework/:categoryId",parentId:"100",id:"118"},119:{path:"/classrooms/:coursesId/engineering",parentId:"100",id:"119"},120:{path:"/classrooms/:coursesId/learning_path",parentId:"100",id:"120"},121:{path:"/classrooms/:coursesId/resource_recommend",parentId:"100",id:"121"},122:{path:"/classrooms/:coursesId/attendance",parentId:"100",id:"122"},123:{path:"/classrooms/:coursesId/attendance/StudetnSign",parentId:"100",id:"123"},124:{path:"/classrooms/:coursesId/attendance/:categoryId/:tabId/detail",parentId:"100",id:"124"},125:{path:"/classrooms/:coursesId/announcement",parentId:"100",id:"125"},126:{path:"/classrooms/:coursesId/announcement/:categoryId",parentId:"100",id:"126"},127:{path:"/classrooms/:coursesId/online_learning",parentId:"100",id:"127"},128:{path:"/classrooms/:coursesId/online_learning/:categoryId",parentId:"100",id:"128"},129:{path:"/classrooms/:coursesId/attachment/:categoryId",parentId:"100",id:"129"},130:{path:"/classrooms/:coursesId/attachment",parentId:"100",id:"130"},131:{path:"/classrooms/:coursesId/video",parentId:"100",id:"131"},132:{path:"/classrooms/:coursesId/video/:categoryId",parentId:"100",id:"132"},133:{path:"/classrooms/:coursesId/video/:categoryId/statistics",parentId:"100",id:"133"},134:{path:"/classrooms/:coursesId/video/:username/upload",parentId:"100",id:"134"},135:{path:"/classrooms/:coursesId/video/:categoryId/statistics/:videoId",parentId:"100",id:"135"},136:{path:"/classrooms/:coursesId/video/:categoryId/statistics/:videoId/:userId",parentId:"100",id:"136"},137:{path:"/classrooms/:coursesId/live_video/:categoryId",parentId:"100",id:"137"},138:{path:"/classrooms/:coursesId/live_video",parentId:"100",id:"138"},139:{path:"/classrooms/:coursesId/video/:categoryId/studentstatistics",parentId:"100",id:"139"},140:{path:"/classrooms/:coursesId/board/:categoryId",parentId:"100",id:"140"},141:{path:"/classrooms/:coursesId/board",parentId:"100",id:"141"},142:{path:"/classrooms/:coursesId/course_group",parentId:"100",id:"142"},143:{path:"/classrooms/:coursesId/course_group/:categoryId",parentId:"100",id:"143"},144:{path:"/classrooms/:coursesId/course_group/:categoryId/detail",parentId:"100",id:"144"},145:{path:"/classrooms/:coursesId/not_course_group/:categoryId",parentId:"100",id:"145"},146:{path:"/classrooms/:coursesId/not_course_group",parentId:"100",id:"146"},147:{path:"/classrooms/:coursesId/statistics/",parentId:"100",id:"147"},148:{path:"/classrooms/:coursesId/statistics/:categoryId",parentId:"100",id:"148"},149:{path:"/classrooms/:coursesId/statistics_video/:categoryId",parentId:"100",id:"149"},150:{path:"/classrooms/:coursesId/statistics_quality/:categoryId",parentId:"100",id:"150"},151:{path:"/classrooms/:coursesId/statistics_user_portrait/:categoryId",parentId:"100",id:"151"},152:{path:"/classrooms/:coursesId/student_statistics/:categoryId",parentId:"100",id:"152"},153:{path:"/classrooms/:coursesId/student_statistics/:categoryId/:listId/:type",parentId:"100",id:"153"},154:{path:"/classrooms/:coursesId/video_statistics/:categoryId/Student/:studentid",parentId:"100",id:"154"},155:{path:"/classrooms/:coursesId/exportlist/:type",parentId:"100",id:"155"},156:{path:"/classrooms/:coursesId",parentId:"100",id:"156"},157:{path:"/classrooms/:coursesId/template",parentId:"100",id:"157"},158:{path:"/competitions",parentId:"1",id:"158"},159:{path:"/competitions/index",parentId:"158",id:"159"},160:{path:"/competitions/:identifier/list",parentId:"158",id:"160"},161:{path:"/competitions/exports",parentId:"158",id:"161"},162:{path:"/competitions",parentId:"158",id:"162"},163:{path:"/competitions/:identifier",parentId:"158",id:"163"},164:{path:"/competitions/index/:identifier",parentId:"158",id:"164"},165:{path:"/competitions/:identifier/detail/enroll",parentId:"158",id:"165"},166:{path:"/competitions/:identifier/detail/UpdateTeanname/:Teannameid",parentId:"158",id:"166"},167:{path:"/competitions/:identifier/detail/teamDetail/:Teamid",parentId:"158",id:"167"},168:{path:"/competitions/detail/:identifier",parentId:"158",id:"168"},169:{path:"/forums",parentId:"1",id:"169"},170:{path:"/forums",parentId:"169",id:"170"},171:{path:"/forums/categories/:memoType",parentId:"169",id:"171"},172:{path:"/forums/new",parentId:"169",id:"172"},173:{path:"/forums/:memoId/edit",parentId:"169",id:"173"},174:{path:"/forums/:memoId",parentId:"169",id:"174"},175:{path:"/problemset",parentId:"1",id:"175"},176:{path:"/problemset",parentId:"175",id:"176"},177:{path:"/problemset/newitem",parentId:"175",id:"177"},178:{path:"/problemset/:type/:id",parentId:"175",id:"178"},179:{path:"/problemset/preview",parentId:"175",id:"179"},180:{path:"/problemset/preview_new",parentId:"175",id:"180"},181:{path:"/problemset/preview_select",parentId:"175",id:"181"},182:{path:"/shixuns",parentId:"1",id:"182"},183:{path:"/shixuns",parentId:"182",id:"183"},184:{path:"/shixuns/exports",parentId:"182",id:"184"},185:{path:"/shixuns/new",parentId:"182",id:"185"},186:{path:"/shixuns/new/CreateImg",parentId:"182",id:"186"},187:{path:"/shixuns/new/:id/imagepreview",parentId:"182",id:"187"},188:{path:"/shixuns/:id/Merge",parentId:"182",id:"188"},189:{path:"/shixuns/:id/Split",parentId:"182",id:"189"},190:{path:"/shixuns/:id/edit",parentId:"182",id:"190"},191:{path:"shixuns/:id/edit/warehouse",parentId:"190",id:"191"},192:{path:"/shixuns/:id/edit/newquestion",parentId:"190",id:"192"},193:{path:"/shixuns/:id/edit/:challengesId/editquestion",parentId:"190",id:"193"},194:{path:"/shixuns/:id/edit/:challengesId/editquestion/:questionId",parentId:"190",id:"194"},195:{path:"/shixuns/:id/edit/new",parentId:"190",id:"195"},196:{path:"/shixuns/:id/edit/:challengesId/editcheckpoint",parentId:"190",id:"196"},197:{path:"/shixuns/:id/edit/:challengesId/tab=2",parentId:"190",id:"197"},198:{path:"/shixuns/:id/edit/:challengesId/tab=3",parentId:"190",id:"198"},199:{path:"/shixuns/:id/edit/:challengesId/tab=4",parentId:"190",id:"199"},200:{path:"/shixuns/:id",parentId:"182",id:"200"},201:{path:"/shixuns/:id/challenges",parentId:"200",id:"201"},202:{path:"/shixuns/:id/repository",parentId:"200",id:"202"},203:{path:"/shixuns/:id/secret_repository",parentId:"200",id:"203"},204:{path:"/shixuns/:id/collaborators",parentId:"200",id:"204"},205:{path:"/shixuns/:id/dataset",parentId:"200",id:"205"},206:{path:"/shixuns/:id/dataset/jupyterEdit",parentId:"200",id:"206"},207:{path:"/shixuns/:id/shixun_discuss",parentId:"200",id:"207"},208:{path:"/shixuns/:id/ranking_list",parentId:"200",id:"208"},209:{path:"/shixuns/:id/settings",parentId:"200",id:"209"},210:{path:"/shixuns/:id/repository/:repoId/commits",parentId:"200",id:"210"},211:{path:"/shixuns/:id/secret_repository/:repoId/commits",parentId:"200",id:"211"},212:{path:"/shixuns/:id/repository/upload_file",parentId:"200",id:"212"},213:{path:"/shixuns/:id/secret_repository/upload_file",parentId:"200",id:"213"},214:{path:"/shixuns/:id/repository/add_file",parentId:"200",id:"214"},215:{path:"/shixuns/:id/secret_repository/add_file",parentId:"200",id:"215"},216:{path:"/shixuns/:id/repository/master/shixun_show/:fileId",exact:!1,parentId:"200",id:"216"},217:{path:"/shixuns/:id/secret_repository/master/shixun_show/:fileId",exact:!1,parentId:"200",id:"217"},218:{path:"/shixuns/:id/audit_situation",parentId:"200",id:"218"},219:{path:"/shixuns/:id/fork_list",parentId:"200",id:"219"},220:{path:"/shixuns/:id/skill_tags",parentId:"200",id:"220"},221:{path:"/users",parentId:"1",id:"221"},222:{path:"/users/:username/videos/protocol",parentId:"221",id:"222"},223:{path:"/users/:username/videos/resourceProtocol",parentId:"221",id:"223"},224:{path:"/users/:username/videos/success",parentId:"221",id:"224"},225:{path:"/users/:username/topicbank/:topicstype",parentId:"221",id:"225"},226:{path:"/users/:username/topics/:topicId/:topictype/normal/detail",parentId:"221",id:"226"},227:{path:"/users/:username/topics/:topicId/:topictype/group/detail",parentId:"221",id:"227"},228:{path:"/users/:username/topics/:topicId/:topictype/normal/edit",parentId:"221",id:"228"},229:{path:"/users/:username/topics/:topicId/:topictype/group/edit",parentId:"221",id:"229"},230:{path:"/users/:username/topics/:topicId/:topictype/exercise/edit",parentId:"221",id:"230"},231:{path:"/users/:username/topics/:topicId/:topictype/exercise/detail",parentId:"221",id:"231"},232:{path:"/users/:username/topics/:topicId/:topictype/poll/edit",parentId:"221",id:"232"},233:{path:"/users/:username/topics/:topicId/:topictype/poll/detail",parentId:"221",id:"233"},234:{path:"/users/:username/experiment-img/add",parentId:"221",id:"234"},235:{path:"/users/:username",parentId:"221",id:"235"},236:{path:"/users/:username",parentId:"235",id:"236"},237:{path:"/users/:username/baseInfo/edit",parentId:"235",id:"237"},238:{path:"/users/:username/baseInfo",parentId:"235",id:"238"},239:{path:"/users/:username/realNameCertification",parentId:"235",id:"239"},240:{path:"/users/:username/careerCertification",parentId:"235",id:"240"},241:{path:"/users/:username/classrooms",parentId:"235",id:"241"},242:{path:"/users/:username/shixuns",parentId:"235",id:"242"},243:{path:"/users/:username/dataSet",parentId:"235",id:"243"},244:{path:"/users/:username/userPortrait",parentId:"235",id:"244"},245:{path:"/users/:username/learningPath",parentId:"235",id:"245"},246:{path:"/users/:username/teach-group",parentId:"235",id:"246"},247:{path:"/users/:username/competitions",parentId:"235",id:"247"},248:{path:"/users/:username/experiment-img",parentId:"235",id:"248"},249:{path:"/users/:username/experiment-img/:experid/detail",parentId:"235",id:"249"},250:{path:"/users/:username/certificate",parentId:"235",id:"250"},251:{path:"/users/:username/otherResources",parentId:"235",id:"251"},252:{path:"/users/:username/classmanagement",parentId:"235",id:"252"},253:{path:"/users/:username/classmanagement/:couserid",parentId:"235",id:"253"},254:{path:"/users/:username/paths",parentId:"235",id:"254"},255:{path:"/users/:username/projects",parentId:"235",id:"255"},256:{path:"/users/:username/videos",parentId:"235",id:"256"},257:{path:"/users/:username/videos/upload",parentId:"235",id:"257"},258:{path:"/users/:username/topics/:topicstype",parentId:"235",id:"258"},259:{path:"/users/:username/vspaces",parentId:"235",id:"259"},260:{path:"/users/:username/resourcesCenter",parentId:"235",id:"260"},261:{path:"/users/:username/resourcesCenter/:id/detail",parentId:"235",id:"261"},262:{path:"/users/:username/resourceGuarantee",parentId:"235",id:"262"},263:{path:"/users/:username/resourceAllocation",parentId:"235",id:"263"},264:{parentId:"1",id:"264"},265:{path:"/problems",parentId:"264",id:"265"},266:{path:"/problems",parentId:"265",id:"266"},267:{path:"/problems/batchAdd",parentId:"265",id:"267"},268:{path:"/problems/newcreate",parentId:"264",id:"268"},269:{path:"/problems/newedit/:id",exact:!0,parentId:"264",id:"269"},270:{path:"/problems/:id/edit",exact:!0,parentId:"264",id:"270"},271:{path:"/problems/new",exact:!0,parentId:"264",id:"271"},272:{path:"/problems/:id/oj/:save_identifier",parentId:"264",id:"272"},273:{path:"/problems/:id/record-detail/:submitId",parentId:"264",id:"273"},274:{path:"/problems/add",parentId:"264",id:"274"},275:{path:"/problems/:id/ojedit",parentId:"264",id:"275"},276:{path:"/engineering",parentId:"1",id:"276"},277:{path:"/engineering",parentId:"276",id:"277"},278:{path:"/engineering/teacherList",parentId:"277",id:"278"},279:{path:"/engineering/studentList",parentId:"277",id:"279"},280:{path:"/engineering/training/program",parentId:"277",id:"280"},281:{path:"/engineering/training/program/add",parentId:"277",id:"281"},282:{path:"/engineering/training/program/edit",parentId:"277",id:"282"},283:{path:"/engineering/training/objectives",parentId:"277",id:"283"},284:{path:"/engineering/graduated/index",parentId:"277",id:"284"},285:{path:"/engineering/graduated/matrix",parentId:"277",id:"285"},286:{path:"/engineering/course/list",parentId:"277",id:"286"},287:{path:"/engineering/course/setting",parentId:"277",id:"287"},288:{path:"/engineering/course/matrix",parentId:"277",id:"288"},289:{path:"/engineering/navigation",parentId:"277",id:"289"},290:{path:"/engineering/evaluate/course",parentId:"277",id:"290"},291:{path:"/engineering/evaluate/course/:ec_year_id/:id",parentId:"277",id:"291"},292:{path:"/engineering/evaluate/norm",parentId:"277",id:"292"},293:{path:"/engineering/evaluate/document",parentId:"277",id:"293"},294:{path:"/engineering/evaluate/norm/:ec_year_id/:id",parentId:"277",id:"294"},295:{path:"/engineering/*",redirect:"/404",parentId:"277",id:"295"},296:{path:"/innovation",parentId:"1",id:"296"},297:{path:"/innovation/tasks/:taskId",parentId:"296",id:"297"},298:{path:"/innovation",parentId:"296",id:"298"},299:{path:"/innovation/project",parentId:"298",id:"299"},300:{path:"/innovation/dataset",parentId:"298",id:"300"},301:{path:"/innovation/mirror",parentId:"298",id:"301"},302:{path:"/innovation/my-project",parentId:"298",id:"302"},303:{path:"/innovation/my-dataset",parentId:"298",id:"303"},304:{path:"/innovation/my-mirror",parentId:"298",id:"304"},305:{path:"/innovation/project/create",parentId:"298",id:"305"},306:{path:"/innovation/project/edit/:id",parentId:"298",id:"306"},307:{path:"/innovation/project/detail/:taskId",parentId:"298",id:"307"},308:{path:"/tasks",parentId:"1",id:"308"},309:{path:"/tasks/:taskId",exact:!0,parentId:"308",id:"309"},310:{path:"/tasks/:identifier/jupyter/",exact:!0,parentId:"308",id:"310"},311:{path:"/tasks/:courseId/:homeworkId/:taskId",exact:!0,parentId:"308",id:"311"},312:{path:"/tasks/jupyter/:courseId/:homeworkId/:identifier",exact:!0,parentId:"308",id:"312"},313:{path:"/tasks/:courseId/:exerciseId/:taskId/exercise",exact:!0,parentId:"308",id:"313"},314:{path:"/myproblems",parentId:"1",id:"314"},315:{path:"/myproblems/:id/record-detail/:submitId",exact:!0,parentId:"314",id:"315"},316:{path:"/myproblems/:id",exact:!0,parentId:"314",id:"316"},317:{path:"/account",parentId:"1",id:"317"},318:{path:"/account",parentId:"317",id:"318"},319:{path:"/account/profile",parentId:"318",id:"319"},320:{path:"/account/profile/edit",parentId:"318",id:"320"},321:{path:"/account/certification",parentId:"318",id:"321"},322:{path:"/account/secure",parentId:"318",id:"322"},323:{path:"/account/binding",parentId:"318",id:"323"},324:{path:"/account/Results",parentId:"318",id:"324"},325:{path:"/ch",parentId:"1",id:"325"},326:{path:"/ch/rest/edit/:categoryId/:id",exact:!0,parentId:"325",id:"326"},327:{path:"/ch/rest/",exact:!0,parentId:"325",id:"327"},328:{path:"/ch/rest/:id",exact:!0,parentId:"325",id:"328"},329:{path:"/order",parentId:"1",id:"329"},330:{path:"/order",parentId:"329",id:"330"},331:{path:"/order/invoice",parentId:"329",id:"331"},332:{path:"/order/records",parentId:"329",id:"332"},333:{path:"/order/apply",parentId:"329",id:"333"},334:{path:"/order/view",parentId:"329",id:"334"},335:{path:"/order/:courseId/information",parentId:"329",id:"335"},336:{path:"/order/:courseId/pay",parentId:"329",id:"336"},337:{path:"/order/:orderNum/result",parentId:"329",id:"337"},338:{path:"/messages",parentId:"1",id:"338"},339:{path:"/messages/:userId/user_tidings",parentId:"338",id:"339"},340:{path:"/messages/:userId/private_messages",parentId:"338",id:"340"},341:{path:"/messages/:userId/message_detail",parentId:"338",id:"341"},342:{path:"/vtrs",parentId:"1",id:"342"},343:{path:"/vtrs/:virtual_spacesId",parentId:"342",id:"343"},344:{path:"/vtrs/:virtual_spacesId",exact:!0,parentId:"343",id:"344"},345:{path:"/vtrs/:virtual_spacesId/workplace",exact:!0,parentId:"343",id:"345"},346:{path:"/vtrs/:virtual_spacesId/experiment",parentId:"343",id:"346"},347:{path:"/vtrs/:virtual_spacesId/announcement",parentId:"343",id:"347"},348:{path:"/vtrs/:virtual_spacesId/announcement/add",parentId:"343",id:"348"},349:{path:"/vtrs/:virtual_spacesId/announcement/:id/edit",parentId:"343",id:"349"},350:{path:"/vtrs/:virtual_spacesId/announcement/:id/detail",parentId:"343",id:"350"},351:{path:"/vtrs/:virtual_spacesId/survey",parentId:"343",id:"351"},352:{path:"/vtrs/:virtual_spacesId/survey/:id/detail",parentId:"343",id:"352"},353:{path:"/vtrs/:virtual_spacesId/knowledge",parentId:"343",id:"353"},354:{path:"/vtrs/:virtual_spacesId/knowledge/add",parentId:"343",id:"354"},355:{path:"/vtrs/:virtual_spacesId/knowledge/:id/edit",parentId:"343",id:"355"},356:{path:"/vtrs/:virtual_spacesId/material",parentId:"343",id:"356"},357:{path:"/vtrs/:virtual_spacesId/material/:id/detail",parentId:"343",id:"357"},358:{path:"/vtrs/:virtual_spacesId/lesson",parentId:"343",id:"358"},359:{path:"/vtrs/:virtual_spacesId/lesson/:id/detail",parentId:"343",id:"359"},360:{path:"/vtrs/:virtual_spacesId/lesson/:id/detail/:fileid",parentId:"343",id:"360"},361:{path:"/vtrs/:virtual_spacesId/discussion",parentId:"343",id:"361"},362:{path:"/vtrs/:virtual_spacesId/discussion/:id/detail",parentId:"343",id:"362"},363:{path:"/vtrs/:virtual_spacesId/discussion/:id/detail/:fileid",parentId:"343",id:"363"},364:{path:"/vtrs/:virtual_spacesId/settings",parentId:"343",id:"364"},365:{path:"/vtrs/:virtual_spacesId/resources",parentId:"343",id:"365"},366:{path:"/vtrs/:virtual_spacesId/resources/:id/detail",parentId:"343",id:"366"},367:{path:"/vtrs/:virtual_spacesId/Plan",parentId:"343",id:"367"},368:{path:"/vtrs/:virtual_spacesId/plan/:id/detail",parentId:"343",id:"368"},369:{path:"/vtrs/:virtual_spacesId/digtal",parentId:"343",id:"369"},370:{path:"/vtrs/:virtual_spacesId/homepage",parentId:"343",id:"370"},371:{path:"/vtrs/:virtual_spacesId/*",parentId:"343",id:"371"},372:{path:"/101",parentId:"1",id:"372"},373:{path:"/101/:virtual_spacesId",parentId:"372",id:"373"},374:{path:"/101/:virtual_spacesId",exact:!0,parentId:"373",id:"374"},375:{path:"/101/:virtual_spacesId/workplace",exact:!0,parentId:"373",id:"375"},376:{path:"/101/:virtual_spacesId/experiment",parentId:"373",id:"376"},377:{path:"/101/:virtual_spacesId/announcement",parentId:"373",id:"377"},378:{path:"/101/:virtual_spacesId/announcement/add",parentId:"373",id:"378"},379:{path:"/101/:virtual_spacesId/announcement/:id/edit",parentId:"373",id:"379"},380:{path:"/101/:virtual_spacesId/announcement/:id/detail",parentId:"373",id:"380"},381:{path:"/101/:virtual_spacesId/survey",parentId:"373",id:"381"},382:{path:"/101/:virtual_spacesId/survey/:id/detail",parentId:"373",id:"382"},383:{path:"/101/:virtual_spacesId/knowledge",parentId:"373",id:"383"},384:{path:"/101/:virtual_spacesId/knowledge/add",parentId:"373",id:"384"},385:{path:"/101/:virtual_spacesId/knowledge/:id/edit",parentId:"373",id:"385"},386:{path:"/101/:virtual_spacesId/material",parentId:"373",id:"386"},387:{path:"/101/:virtual_spacesId/material/:id/detail",parentId:"373",id:"387"},388:{path:"/101/:virtual_spacesId/lesson",parentId:"373",id:"388"},389:{path:"/101/:virtual_spacesId/lesson/:id/detail",parentId:"373",id:"389"},390:{path:"/101/:virtual_spacesId/lesson/:id/detail/:fileid",parentId:"373",id:"390"},391:{path:"/101/:virtual_spacesId/discussion",parentId:"373",id:"391"},392:{path:"/101/:virtual_spacesId/discussion/:id/detail",parentId:"373",id:"392"},393:{path:"/101/:virtual_spacesId/discussion/:id/detail/:fileid",parentId:"373",id:"393"},394:{path:"/101/:virtual_spacesId/settings",parentId:"373",id:"394"},395:{path:"/101/:virtual_spacesId/resources",parentId:"373",id:"395"},396:{path:"/101/:virtual_spacesId/resources/:id/detail",parentId:"373",id:"396"},397:{path:"/101/:virtual_spacesId/Plan",parentId:"373",id:"397"},398:{path:"/101/:virtual_spacesId/plan/:id/detail",parentId:"373",id:"398"},399:{path:"/101/:virtual_spacesId/digtal",parentId:"373",id:"399"},400:{path:"/101/:virtual_spacesId/homepage",parentId:"373",id:"400"},401:{path:"/101/:virtual_spacesId/*",parentId:"373",id:"401"},402:{path:"/administration",parentId:"1",id:"402"},403:{path:"/administration",parentId:"402",id:"403"},404:{path:"/administration/college",parentId:"403",id:"404"},405:{path:"/administration/student",parentId:"403",id:"405"},406:{path:"/administration/student/:studentId/edit",parentId:"403",id:"406"},407:{path:"/administration/profession",parentId:"403",id:"407"},408:{path:"/graduations",parentId:"1",id:"408"},409:{path:"/graduations",exact:!0,parentId:"408",id:"409"},410:{path:"/graduations/:id/:moduleKey/:moduleId/review/:itemId",exact:!0,parentId:"408",id:"410"},411:{path:"/graduations/:id",parentId:"408",id:"411"},412:{path:"/graduations/:id/index",parentId:"411",id:"412"},413:{path:"/graduations/:id/topics",parentId:"411",id:"413"},414:{path:"/graduations/:id/student_selection",parentId:"411",id:"414"},415:{path:"/graduations/:id/tasks",parentId:"411",id:"415"},416:{path:"/graduations/:id/opening_report",parentId:"411",id:"416"},417:{path:"/graduations/:id/midterm_report",parentId:"411",id:"417"},418:{path:"/graduations/:id/thesis",parentId:"411",id:"418"},419:{path:"/graduations/:id/final_defense",parentId:"411",id:"419"},420:{path:"/graduations/:id/final_thesis",parentId:"411",id:"420"},421:{path:"/graduations/:id/settings",parentId:"411",id:"421"},422:{path:"/graduations/:id/teachers",parentId:"411",id:"422"},423:{path:"/graduations/:id/students",parentId:"411",id:"423"},424:{path:"/graduations/:id/archives",parentId:"411",id:"424"},425:{path:"/graduations/:id/grading_summary",parentId:"411",id:"425"},426:{path:"/dataset",parentId:"1",id:"426"},427:{path:"/dataset",exact:!0,parentId:"426",id:"427"},428:{path:"/dataset/:id/detail",exact:!0,parentId:"426",id:"428"},429:{path:"/knowledgegraph",parentId:"1",id:"429"},430:{path:"/knowledgegraph/:pathId",parentId:"429",id:"430"},431:{path:"/knowledgegraph/:pathId/statistics",parentId:"429",id:"431"},432:{path:"/onlinenum",parentId:"1",id:"432"},433:{path:"/onlinenum",parentId:"432",id:"433"},434:{path:"/shixuncontext",parentId:"1",id:"434"},435:{path:"/shixuncontext",parentId:"434",id:"435"},436:{path:"/shixuncontext/:Id/detail",parentId:"434",id:"436"},437:{path:"/educoder-demo",exact:!0,parentId:"1",id:"437"},438:{path:"/training",parentId:"1",id:"438"},439:{name:"\u7CBE\u57F9\u8BFE\u7A0B",path:"/training",parentId:"438",id:"439"},440:{path:"/largeScreen",exact:!0,parentId:"1",id:"440"},441:{path:"/quality",parentId:"1",id:"441"},442:{name:"\u7CBE\u54C1\u8BFE\u7A0B",path:"/quality",parentId:"441",id:"442"},443:{path:"/otherlogin",exact:!0,parentId:"1",id:"443"},444:{path:"/otherloginqq",exact:!0,parentId:"1",id:"444"},445:{path:"/otherloginstart",exact:!0,parentId:"1",id:"445"},446:{path:"/pathsoverview",exact:!0,parentId:"1",id:"446"},447:{path:"/shixunsoverview",exact:!0,parentId:"1",id:"447"},448:{path:"/classroomsoverview",exact:!0,parentId:"1",id:"448"},449:{path:"/login",parentId:"1",id:"449"},450:{path:"/login",parentId:"449",id:"450"},451:{path:"/user",parentId:"1",id:"451"},452:{path:"/user/login",parentId:"451",id:"452"},453:{path:"/user/register",parentId:"451",id:"453"},454:{path:"/user/reset-password",parentId:"451",id:"454"},455:{path:"/colleges",parentId:"1",id:"455"},456:{path:"/colleges/:id/statistics",parentId:"455",id:"456"},457:{path:"/help",parentId:"1",id:"457"},458:{path:"/help/:id",parentId:"457",id:"458"},459:{path:"/video",parentId:"1",id:"459"},460:{path:"/video/:videoId",parentId:"459",id:"460"},461:{path:"/terminal",parentId:"1",id:"461"},462:{path:"/report/:taskId/:game_report_id",parentId:"1",id:"462"},463:{path:"/",parentId:"1",id:"463"},464:{path:"/",exact:!0,parentId:"463",id:"464"},465:{path:"/api/*",exact:!0,parentId:"463",id:"465"},466:{path:"/search",exact:!0,parentId:"463",id:"466"},467:{path:"/moop_cases",exact:!0,parentId:"463",id:"467"},468:{path:"/moop_cases/new",exact:!0,parentId:"463",id:"468"},469:{path:"/moop_cases/:caseId",exact:!0,parentId:"463",id:"469"},470:{path:"/moop_cases/:caseId/edit",exact:!0,parentId:"463",id:"470"},471:{path:"/moop_cases/:caseId/publish-success",exact:!0,parentId:"463",id:"471"},472:{path:"/randompaper",exact:!0,parentId:"463",id:"472"},473:{path:"/randompaper/edit/:id",exact:!0,parentId:"463",id:"473"},474:{path:"/randompaper/detail/:id",exact:!0,parentId:"463",id:"474"},475:{path:"/403",parentId:"463",id:"475"},476:{path:"/500",parentId:"463",id:"476"},477:{path:"/404",parentId:"463",id:"477"},478:{path:"/download",parentId:"463",id:"478"},479:{path:"/iwce",parentId:"463",id:"479"},480:{path:"/classrooms/:coursesId/attendance/TeacherSign",parentId:"463",id:"480"},481:{path:"/classrooms/:coursesId/attendance/:categoryId",parentId:"463",id:"481"},482:{path:"/Activities",parentId:"463",id:"482"},483:{path:"/iwce/:itemname",parentId:"463",id:"483"},484:{path:"/hpc-course",parentId:"463",id:"484"},485:{path:"/user_agents",parentId:"463",id:"485"},486:{path:"/three",parentId:"463",id:"486"},487:{path:"/introduction",parentId:"463",id:"487"},488:{path:"/chatgpt",parentId:"463",id:"488"},489:{path:"/*",parentId:"463",id:"489"},"@@/global-layout":{id:"@@/global-layout",path:"/",isLayout:!0}},routeComponents:{1:ze.lazy(()=>__webpack_require__.e(599).then(__webpack_require__.bind(__webpack_require__,20599))),2:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(7062)]).then(__webpack_require__.bind(__webpack_require__,90821))),3:ze.lazy(()=>__webpack_require__.e(2099).then(__webpack_require__.bind(__webpack_require__,26796))),4:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(3260)]).then(__webpack_require__.bind(__webpack_require__,8391))),5:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(3260)]).then(__webpack_require__.bind(__webpack_require__,8391))),6:ze.lazy(()=>__webpack_require__.e(3247).then(__webpack_require__.bind(__webpack_require__,64226))),7:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(425),__webpack_require__.e(434),__webpack_require__.e(4599)]).then(__webpack_require__.bind(__webpack_require__,28928))),8:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(425),__webpack_require__.e(434),__webpack_require__.e(1545)]).then(__webpack_require__.bind(__webpack_require__,91046))),9:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(7062)]).then(__webpack_require__.bind(__webpack_require__,90821))),10:ze.lazy(()=>__webpack_require__.e(9906).then(__webpack_require__.bind(__webpack_require__,30751))),11:ze.lazy(()=>__webpack_require__.e(5572).then(__webpack_require__.bind(__webpack_require__,27851))),12:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(8982)]).then(__webpack_require__.bind(__webpack_require__,86364))),13:ze.lazy(()=>__webpack_require__.e(869).then(__webpack_require__.bind(__webpack_require__,58966))),14:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(6411),__webpack_require__.e(2281)]).then(__webpack_require__.bind(__webpack_require__,92673))),15:ze.lazy(()=>Promise.all([__webpack_require__.e(6411),__webpack_require__.e(4601)]).then(__webpack_require__.bind(__webpack_require__,22834))),16:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(8982)]).then(__webpack_require__.bind(__webpack_require__,86364))),17:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(425),__webpack_require__.e(434),__webpack_require__.e(4599)]).then(__webpack_require__.bind(__webpack_require__,28928))),18:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(425),__webpack_require__.e(434),__webpack_require__.e(4599)]).then(__webpack_require__.bind(__webpack_require__,28928))),19:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(7062)]).then(__webpack_require__.bind(__webpack_require__,90821))),20:ze.lazy(()=>__webpack_require__.e(6789).then(__webpack_require__.bind(__webpack_require__,20996))),21:ze.lazy(()=>__webpack_require__.e(9921).then(__webpack_require__.bind(__webpack_require__,20973))),22:ze.lazy(()=>__webpack_require__.e(1674).then(__webpack_require__.bind(__webpack_require__,31793))),23:ze.lazy(()=>__webpack_require__.e(6685).then(__webpack_require__.bind(__webpack_require__,46275))),24:ze.lazy(()=>__webpack_require__.e(1702).then(__webpack_require__.bind(__webpack_require__,37273))),25:ze.lazy(()=>__webpack_require__.e(1702).then(__webpack_require__.bind(__webpack_require__,37273))),26:ze.lazy(()=>__webpack_require__.e(6882).then(__webpack_require__.bind(__webpack_require__,45029))),27:ze.lazy(()=>__webpack_require__.e(6882).then(__webpack_require__.bind(__webpack_require__,45029))),28:ze.lazy(()=>__webpack_require__.e(109).then(__webpack_require__.bind(__webpack_require__,46922))),29:ze.lazy(()=>__webpack_require__.e(737).then(__webpack_require__.bind(__webpack_require__,94044))),30:ze.lazy(()=>__webpack_require__.e(3391).then(__webpack_require__.bind(__webpack_require__,67311))),31:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(6411),__webpack_require__.e(5694)]).then(__webpack_require__.bind(__webpack_require__,66076))),32:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(6411),__webpack_require__.e(5330)]).then(__webpack_require__.bind(__webpack_require__,28063))),33:ze.lazy(()=>__webpack_require__.e(2303).then(__webpack_require__.bind(__webpack_require__,63437))),34:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(1450)]).then(__webpack_require__.bind(__webpack_require__,60922))),35:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(195)]).then(__webpack_require__.bind(__webpack_require__,70731))),36:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(3668)]).then(__webpack_require__.bind(__webpack_require__,1086))),37:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(2338)]).then(__webpack_require__.bind(__webpack_require__,83890))),38:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(4662)]).then(__webpack_require__.bind(__webpack_require__,75400))),39:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(8072)]).then(__webpack_require__.bind(__webpack_require__,52934))),40:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(479)]).then(__webpack_require__.bind(__webpack_require__,34353))),41:ze.lazy(()=>__webpack_require__.e(5297).then(__webpack_require__.bind(__webpack_require__,30748))),42:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(6411),__webpack_require__.e(4164)]).then(__webpack_require__.bind(__webpack_require__,53036))),43:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(425),__webpack_require__.e(434),__webpack_require__.e(4599)]).then(__webpack_require__.bind(__webpack_require__,28928))),44:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(425),__webpack_require__.e(4889)]).then(__webpack_require__.bind(__webpack_require__,60839))),45:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(425),__webpack_require__.e(4105)]).then(__webpack_require__.bind(__webpack_require__,77638))),46:ze.lazy(()=>__webpack_require__.e(7482).then(__webpack_require__.bind(__webpack_require__,53147))),47:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(5816)]).then(__webpack_require__.bind(__webpack_require__,12624))),48:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(337)]).then(__webpack_require__.bind(__webpack_require__,23129))),49:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(292)]).then(__webpack_require__.bind(__webpack_require__,23108))),50:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(292)]).then(__webpack_require__.bind(__webpack_require__,23108))),51:ze.lazy(()=>__webpack_require__.e(5992).then(__webpack_require__.bind(__webpack_require__,10147))),52:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(6411),__webpack_require__.e(425),__webpack_require__.e(8085)]).then(__webpack_require__.bind(__webpack_require__,73966))),53:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(6411),__webpack_require__.e(425),__webpack_require__.e(8085)]).then(__webpack_require__.bind(__webpack_require__,73966))),54:ze.lazy(()=>__webpack_require__.e(8431).then(__webpack_require__.bind(__webpack_require__,83922))),55:ze.lazy(()=>Promise.all([__webpack_require__.e(6411),__webpack_require__.e(5902)]).then(__webpack_require__.bind(__webpack_require__,82856))),56:ze.lazy(()=>Promise.all([__webpack_require__.e(6411),__webpack_require__.e(3433)]).then(__webpack_require__.bind(__webpack_require__,31533))),57:ze.lazy(()=>__webpack_require__.e(5125).then(__webpack_require__.bind(__webpack_require__,3276))),58:ze.lazy(()=>__webpack_require__.e(5125).then(__webpack_require__.bind(__webpack_require__,3276))),59:ze.lazy(()=>__webpack_require__.e(921).then(__webpack_require__.bind(__webpack_require__,77329))),60:ze.lazy(()=>__webpack_require__.e(921).then(__webpack_require__.bind(__webpack_require__,77329))),61:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(1578)]).then(__webpack_require__.bind(__webpack_require__,75288))),62:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(3317)]).then(__webpack_require__.bind(__webpack_require__,83485))),63:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(1482)]).then(__webpack_require__.bind(__webpack_require__,97780))),64:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(4795)]).then(__webpack_require__.bind(__webpack_require__,28915))),65:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(26)]).then(__webpack_require__.bind(__webpack_require__,57643))),66:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(8882)]).then(__webpack_require__.bind(__webpack_require__,8321))),67:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(5888)]).then(__webpack_require__.bind(__webpack_require__,77498))),68:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(9715)]).then(__webpack_require__.bind(__webpack_require__,56010))),69:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(7045)]).then(__webpack_require__.bind(__webpack_require__,7769))),70:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(1211)]).then(__webpack_require__.bind(__webpack_require__,36618))),71:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(1582)]).then(__webpack_require__.bind(__webpack_require__,1910))),72:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(6729)]).then(__webpack_require__.bind(__webpack_require__,34104))),73:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(9695)]).then(__webpack_require__.bind(__webpack_require__,3487))),74:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(8723)]).then(__webpack_require__.bind(__webpack_require__,17042))),75:ze.lazy(()=>Promise.all([__webpack_require__.e(6411),__webpack_require__.e(7622)]).then(__webpack_require__.bind(__webpack_require__,72583))),76:ze.lazy(()=>__webpack_require__.e(5148).then(__webpack_require__.bind(__webpack_require__,61193))),77:ze.lazy(()=>__webpack_require__.e(643).then(__webpack_require__.bind(__webpack_require__,13750))),78:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(3442)]).then(__webpack_require__.bind(__webpack_require__,96046))),79:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(2102)]).then(__webpack_require__.bind(__webpack_require__,22996))),80:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(2425)]).then(__webpack_require__.bind(__webpack_require__,41305))),81:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(2404)]).then(__webpack_require__.bind(__webpack_require__,78554))),82:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(9785)]).then(__webpack_require__.bind(__webpack_require__,74124))),83:ze.lazy(()=>__webpack_require__.e(869).then(__webpack_require__.bind(__webpack_require__,58966))),84:ze.lazy(()=>__webpack_require__.e(2819).then(__webpack_require__.bind(__webpack_require__,55998))),85:ze.lazy(()=>__webpack_require__.e(1512).then(__webpack_require__.bind(__webpack_require__,31905))),86:ze.lazy(()=>__webpack_require__.e(7395).then(__webpack_require__.bind(__webpack_require__,21229))),87:ze.lazy(()=>__webpack_require__.e(3585).then(__webpack_require__.bind(__webpack_require__,98731))),88:ze.lazy(()=>__webpack_require__.e(6963).then(__webpack_require__.bind(__webpack_require__,37244))),89:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(4030)]).then(__webpack_require__.bind(__webpack_require__,35171))),90:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(4030)]).then(__webpack_require__.bind(__webpack_require__,35171))),91:ze.lazy(()=>__webpack_require__.e(6127).then(__webpack_require__.bind(__webpack_require__,42383))),92:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(3951)]).then(__webpack_require__.bind(__webpack_require__,71073))),93:ze.lazy(()=>__webpack_require__.e(1048).then(__webpack_require__.bind(__webpack_require__,97838))),94:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(425),__webpack_require__.e(2884)]).then(__webpack_require__.bind(__webpack_require__,22450))),95:ze.lazy(()=>__webpack_require__.e(4770).then(__webpack_require__.bind(__webpack_require__,57454))),96:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(2603)]).then(__webpack_require__.bind(__webpack_require__,60846))),97:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(4216)]).then(__webpack_require__.bind(__webpack_require__,45062))),98:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(5319)]).then(__webpack_require__.bind(__webpack_require__,93341))),99:ze.lazy(()=>__webpack_require__.e(895).then(__webpack_require__.bind(__webpack_require__,25921))),100:ze.lazy(()=>__webpack_require__.e(7322).then(__webpack_require__.bind(__webpack_require__,32702))),101:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(9442),__webpack_require__.e(2203)]).then(__webpack_require__.bind(__webpack_require__,36008))),102:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(9442),__webpack_require__.e(2203)]).then(__webpack_require__.bind(__webpack_require__,36008))),103:ze.lazy(()=>__webpack_require__.e(5048).then(__webpack_require__.bind(__webpack_require__,77437))),104:ze.lazy(()=>__webpack_require__.e(1043).then(__webpack_require__.bind(__webpack_require__,15828))),105:ze.lazy(()=>__webpack_require__.e(1043).then(__webpack_require__.bind(__webpack_require__,15828))),106:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(6776)]).then(__webpack_require__.bind(__webpack_require__,41587))),107:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(6776)]).then(__webpack_require__.bind(__webpack_require__,41587))),108:ze.lazy(()=>__webpack_require__.e(4297).then(__webpack_require__.bind(__webpack_require__,59345))),109:ze.lazy(()=>__webpack_require__.e(4297).then(__webpack_require__.bind(__webpack_require__,59345))),110:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(9442),__webpack_require__.e(8458)]).then(__webpack_require__.bind(__webpack_require__,50608))),111:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(9442),__webpack_require__.e(8458)]).then(__webpack_require__.bind(__webpack_require__,50608))),112:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(9442),__webpack_require__.e(1798)]).then(__webpack_require__.bind(__webpack_require__,7170))),113:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(9442),__webpack_require__.e(1798)]).then(__webpack_require__.bind(__webpack_require__,7170))),114:ze.lazy(()=>__webpack_require__.e(5177).then(__webpack_require__.bind(__webpack_require__,35685))),115:ze.lazy(()=>__webpack_require__.e(201).then(__webpack_require__.bind(__webpack_require__,35803))),116:ze.lazy(()=>__webpack_require__.e(1477).then(__webpack_require__.bind(__webpack_require__,89169))),117:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(9442),__webpack_require__.e(6282)]).then(__webpack_require__.bind(__webpack_require__,33057))),118:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(9442),__webpack_require__.e(6282)]).then(__webpack_require__.bind(__webpack_require__,33057))),119:ze.lazy(()=>__webpack_require__.e(1962).then(__webpack_require__.bind(__webpack_require__,21413))),120:ze.lazy(()=>__webpack_require__.e(4928).then(__webpack_require__.bind(__webpack_require__,11133))),121:ze.lazy(()=>__webpack_require__.e(1257).then(__webpack_require__.bind(__webpack_require__,25251))),122:ze.lazy(()=>Promise.all([__webpack_require__.e(6411),__webpack_require__.e(369),__webpack_require__.e(7329)]).then(__webpack_require__.bind(__webpack_require__,15515))),123:ze.lazy(()=>__webpack_require__.e(8340).then(__webpack_require__.bind(__webpack_require__,25083))),124:ze.lazy(()=>__webpack_require__.e(4093).then(__webpack_require__.bind(__webpack_require__,29860))),125:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(6185)]).then(__webpack_require__.bind(__webpack_require__,10380))),126:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(6185)]).then(__webpack_require__.bind(__webpack_require__,10380))),127:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(8827)]).then(__webpack_require__.bind(__webpack_require__,51291))),128:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(8827)]).then(__webpack_require__.bind(__webpack_require__,51291))),129:ze.lazy(()=>__webpack_require__.e(1678).then(__webpack_require__.bind(__webpack_require__,68583))),130:ze.lazy(()=>__webpack_require__.e(1678).then(__webpack_require__.bind(__webpack_require__,68583))),131:ze.lazy(()=>__webpack_require__.e(1754).then(__webpack_require__.bind(__webpack_require__,44002))),132:ze.lazy(()=>__webpack_require__.e(1754).then(__webpack_require__.bind(__webpack_require__,44002))),133:ze.lazy(()=>__webpack_require__.e(4217).then(__webpack_require__.bind(__webpack_require__,96573))),134:ze.lazy(()=>__webpack_require__.e(3220).then(__webpack_require__.bind(__webpack_require__,58786))),135:ze.lazy(()=>Promise.all([__webpack_require__.e(6411),__webpack_require__.e(533)]).then(__webpack_require__.bind(__webpack_require__,1697))),136:ze.lazy(()=>Promise.all([__webpack_require__.e(6411),__webpack_require__.e(5798)]).then(__webpack_require__.bind(__webpack_require__,70302))),137:ze.lazy(()=>__webpack_require__.e(5466).then(__webpack_require__.bind(__webpack_require__,94057))),138:ze.lazy(()=>__webpack_require__.e(5466).then(__webpack_require__.bind(__webpack_require__,94057))),139:ze.lazy(()=>__webpack_require__.e(9944).then(__webpack_require__.bind(__webpack_require__,76161))),140:ze.lazy(()=>__webpack_require__.e(9406).then(__webpack_require__.bind(__webpack_require__,10143))),141:ze.lazy(()=>__webpack_require__.e(9406).then(__webpack_require__.bind(__webpack_require__,10143))),142:ze.lazy(()=>__webpack_require__.e(9039).then(__webpack_require__.bind(__webpack_require__,31896))),143:ze.lazy(()=>__webpack_require__.e(9039).then(__webpack_require__.bind(__webpack_require__,31896))),144:ze.lazy(()=>__webpack_require__.e(7922).then(__webpack_require__.bind(__webpack_require__,8176))),145:ze.lazy(()=>__webpack_require__.e(1727).then(__webpack_require__.bind(__webpack_require__,21095))),146:ze.lazy(()=>__webpack_require__.e(1727).then(__webpack_require__.bind(__webpack_require__,21095))),147:ze.lazy(()=>Promise.all([__webpack_require__.e(6411),__webpack_require__.e(1427)]).then(__webpack_require__.bind(__webpack_require__,63679))),148:ze.lazy(()=>Promise.all([__webpack_require__.e(6411),__webpack_require__.e(1427)]).then(__webpack_require__.bind(__webpack_require__,63679))),149:ze.lazy(()=>Promise.all([__webpack_require__.e(6411),__webpack_require__.e(8689)]).then(__webpack_require__.bind(__webpack_require__,99046))),150:ze.lazy(()=>Promise.all([__webpack_require__.e(6411),__webpack_require__.e(7806)]).then(__webpack_require__.bind(__webpack_require__,82503))),151:ze.lazy(()=>__webpack_require__.e(3276).then(__webpack_require__.bind(__webpack_require__,15531))),152:ze.lazy(()=>__webpack_require__.e(8885).then(__webpack_require__.bind(__webpack_require__,50715))),153:ze.lazy(()=>__webpack_require__.e(3451).then(__webpack_require__.bind(__webpack_require__,90317))),154:ze.lazy(()=>__webpack_require__.e(9922).then(__webpack_require__.bind(__webpack_require__,1377))),155:ze.lazy(()=>__webpack_require__.e(4572).then(__webpack_require__.bind(__webpack_require__,65515))),156:ze.lazy(()=>__webpack_require__.e(4017).then(__webpack_require__.bind(__webpack_require__,99342))),157:ze.lazy(()=>__webpack_require__.e(5518).then(__webpack_require__.bind(__webpack_require__,26032))),158:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(7062)]).then(__webpack_require__.bind(__webpack_require__,90821))),159:ze.lazy(()=>Promise.all([__webpack_require__.e(6411),__webpack_require__.e(9045),__webpack_require__.e(6883)]).then(__webpack_require__.bind(__webpack_require__,80961))),160:ze.lazy(()=>Promise.all([__webpack_require__.e(6411),__webpack_require__.e(9045),__webpack_require__.e(6883)]).then(__webpack_require__.bind(__webpack_require__,80961))),161:ze.lazy(()=>__webpack_require__.e(4449).then(__webpack_require__.bind(__webpack_require__,43008))),162:ze.lazy(()=>Promise.all([__webpack_require__.e(6411),__webpack_require__.e(9045),__webpack_require__.e(6883)]).then(__webpack_require__.bind(__webpack_require__,80961))),163:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(5265),__webpack_require__.e(2570)]).then(__webpack_require__.bind(__webpack_require__,79177))),164:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(5265),__webpack_require__.e(2570)]).then(__webpack_require__.bind(__webpack_require__,79177))),165:ze.lazy(()=>__webpack_require__.e(8787).then(__webpack_require__.bind(__webpack_require__,719))),166:ze.lazy(()=>__webpack_require__.e(5650).then(__webpack_require__.bind(__webpack_require__,14796))),167:ze.lazy(()=>__webpack_require__.e(1799).then(__webpack_require__.bind(__webpack_require__,5629))),168:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(5265),__webpack_require__.e(8797)]).then(__webpack_require__.bind(__webpack_require__,29526))),169:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(7062)]).then(__webpack_require__.bind(__webpack_require__,90821))),170:ze.lazy(()=>__webpack_require__.e(8639).then(__webpack_require__.bind(__webpack_require__,37226))),171:ze.lazy(()=>__webpack_require__.e(4048).then(__webpack_require__.bind(__webpack_require__,88007))),172:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(4264)]).then(__webpack_require__.bind(__webpack_require__,96560))),173:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(4264)]).then(__webpack_require__.bind(__webpack_require__,96560))),174:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(508)]).then(__webpack_require__.bind(__webpack_require__,35918))),175:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(7062)]).then(__webpack_require__.bind(__webpack_require__,90821))),176:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(425),__webpack_require__.e(434),__webpack_require__.e(7835)]).then(__webpack_require__.bind(__webpack_require__,32784))),177:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(1953)]).then(__webpack_require__.bind(__webpack_require__,85953))),178:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(1953)]).then(__webpack_require__.bind(__webpack_require__,85953))),179:ze.lazy(()=>__webpack_require__.e(1581).then(__webpack_require__.bind(__webpack_require__,6413))),180:ze.lazy(()=>__webpack_require__.e(4144).then(__webpack_require__.bind(__webpack_require__,37852))),181:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(425),__webpack_require__.e(434),__webpack_require__.e(4599)]).then(__webpack_require__.bind(__webpack_require__,28928))),182:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(7062)]).then(__webpack_require__.bind(__webpack_require__,90821))),183:ze.lazy(()=>__webpack_require__.e(8552).then(__webpack_require__.bind(__webpack_require__,6438))),184:ze.lazy(()=>__webpack_require__.e(7884).then(__webpack_require__.bind(__webpack_require__,15352))),185:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(7008)]).then(__webpack_require__.bind(__webpack_require__,98622))),186:ze.lazy(()=>__webpack_require__.e(5549).then(__webpack_require__.bind(__webpack_require__,84246))),187:ze.lazy(()=>__webpack_require__.e(9674).then(__webpack_require__.bind(__webpack_require__,28092))),188:ze.lazy(()=>__webpack_require__.e(5573).then(__webpack_require__.bind(__webpack_require__,40580))),189:ze.lazy(()=>__webpack_require__.e(2141).then(__webpack_require__.bind(__webpack_require__,2751))),190:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(6411),__webpack_require__.e(7476),__webpack_require__.e(9511)]).then(__webpack_require__.bind(__webpack_require__,61609))),191:ze.lazy(()=>__webpack_require__.e(6328).then(__webpack_require__.bind(__webpack_require__,21052))),192:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(7857)]).then(__webpack_require__.bind(__webpack_require__,46897))),193:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(1657)]).then(__webpack_require__.bind(__webpack_require__,29040))),194:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(1657)]).then(__webpack_require__.bind(__webpack_require__,29040))),195:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(4498)]).then(__webpack_require__.bind(__webpack_require__,2134))),196:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(4498)]).then(__webpack_require__.bind(__webpack_require__,2134))),197:ze.lazy(()=>__webpack_require__.e(9205).then(__webpack_require__.bind(__webpack_require__,11008))),198:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(1423)]).then(__webpack_require__.bind(__webpack_require__,92185))),199:ze.lazy(()=>__webpack_require__.e(7614).then(__webpack_require__.bind(__webpack_require__,63798))),200:ze.lazy(()=>__webpack_require__.e(9449).then(__webpack_require__.bind(__webpack_require__,9198))),201:ze.lazy(()=>__webpack_require__.e(9814).then(__webpack_require__.bind(__webpack_require__,98193))),202:ze.lazy(()=>__webpack_require__.e(6637).then(__webpack_require__.bind(__webpack_require__,98947))),203:ze.lazy(()=>Promise.all([__webpack_require__.e(6411),__webpack_require__.e(8688)]).then(__webpack_require__.bind(__webpack_require__,51518))),204:ze.lazy(()=>__webpack_require__.e(3581).then(__webpack_require__.bind(__webpack_require__,15627))),205:ze.lazy(()=>__webpack_require__.e(1993).then(__webpack_require__.bind(__webpack_require__,80484))),206:ze.lazy(()=>Promise.all([__webpack_require__.e(7476),__webpack_require__.e(1475)]).then(__webpack_require__.bind(__webpack_require__,58100))),207:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(8965)]).then(__webpack_require__.bind(__webpack_require__,47765))),208:ze.lazy(()=>Promise.all([__webpack_require__.e(6411),__webpack_require__.e(9408)]).then(__webpack_require__.bind(__webpack_require__,28744))),209:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(6411),__webpack_require__.e(518)]).then(__webpack_require__.bind(__webpack_require__,66545))),210:ze.lazy(()=>__webpack_require__.e(5894).then(__webpack_require__.bind(__webpack_require__,37002))),211:ze.lazy(()=>__webpack_require__.e(5894).then(__webpack_require__.bind(__webpack_require__,37002))),212:ze.lazy(()=>__webpack_require__.e(2130).then(__webpack_require__.bind(__webpack_require__,32845))),213:ze.lazy(()=>__webpack_require__.e(2130).then(__webpack_require__.bind(__webpack_require__,32845))),214:ze.lazy(()=>__webpack_require__.e(5230).then(__webpack_require__.bind(__webpack_require__,87580))),215:ze.lazy(()=>__webpack_require__.e(5230).then(__webpack_require__.bind(__webpack_require__,87580))),216:ze.lazy(()=>Promise.all([__webpack_require__.e(6411),__webpack_require__.e(8688)]).then(__webpack_require__.bind(__webpack_require__,51518))),217:ze.lazy(()=>Promise.all([__webpack_require__.e(6411),__webpack_require__.e(8688)]).then(__webpack_require__.bind(__webpack_require__,51518))),218:ze.lazy(()=>Promise.all([__webpack_require__.e(6411),__webpack_require__.e(5096)]).then(__webpack_require__.bind(__webpack_require__,68639))),219:ze.lazy(()=>__webpack_require__.e(3086).then(__webpack_require__.bind(__webpack_require__,10812))),220:ze.lazy(()=>Promise.all([__webpack_require__.e(6411),__webpack_require__.e(9417)]).then(__webpack_require__.bind(__webpack_require__,92880))),221:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(7062)]).then(__webpack_require__.bind(__webpack_require__,90821))),222:ze.lazy(()=>__webpack_require__.e(5176).then(__webpack_require__.bind(__webpack_require__,59622))),223:ze.lazy(()=>__webpack_require__.e(6587).then(__webpack_require__.bind(__webpack_require__,65866))),224:ze.lazy(()=>__webpack_require__.e(9891).then(__webpack_require__.bind(__webpack_require__,86974))),225:ze.lazy(()=>__webpack_require__.e(8062).then(__webpack_require__.bind(__webpack_require__,49690))),226:ze.lazy(()=>__webpack_require__.e(5402).then(__webpack_require__.bind(__webpack_require__,50650))),227:ze.lazy(()=>__webpack_require__.e(5402).then(__webpack_require__.bind(__webpack_require__,50650))),228:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(6820)]).then(__webpack_require__.bind(__webpack_require__,8191))),229:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(8517)]).then(__webpack_require__.bind(__webpack_require__,31721))),230:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(7043)]).then(__webpack_require__.bind(__webpack_require__,80751))),231:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(2806)]).then(__webpack_require__.bind(__webpack_require__,53605))),232:ze.lazy(()=>__webpack_require__.e(5043).then(__webpack_require__.bind(__webpack_require__,8712))),233:ze.lazy(()=>__webpack_require__.e(799).then(__webpack_require__.bind(__webpack_require__,26021))),234:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(3157)]).then(__webpack_require__.bind(__webpack_require__,75992))),235:ze.lazy(()=>__webpack_require__.e(8332).then(__webpack_require__.bind(__webpack_require__,13334))),236:ze.lazy(()=>__webpack_require__.e(6583).then(__webpack_require__.bind(__webpack_require__,26501))),237:ze.lazy(()=>__webpack_require__.e(8217).then(__webpack_require__.bind(__webpack_require__,81524))),238:ze.lazy(()=>__webpack_require__.e(879).then(__webpack_require__.bind(__webpack_require__,96101))),239:ze.lazy(()=>__webpack_require__.e(5776).then(__webpack_require__.bind(__webpack_require__,13488))),240:ze.lazy(()=>__webpack_require__.e(906).then(__webpack_require__.bind(__webpack_require__,71009))),241:ze.lazy(()=>__webpack_require__.e(900).then(__webpack_require__.bind(__webpack_require__,6331))),242:ze.lazy(()=>__webpack_require__.e(6682).then(__webpack_require__.bind(__webpack_require__,32016))),243:ze.lazy(()=>__webpack_require__.e(8115).then(__webpack_require__.bind(__webpack_require__,28592))),244:ze.lazy(()=>Promise.all([__webpack_require__.e(6411),__webpack_require__.e(2659)]).then(__webpack_require__.bind(__webpack_require__,31324))),245:ze.lazy(()=>__webpack_require__.e(4610).then(__webpack_require__.bind(__webpack_require__,88755))),246:ze.lazy(()=>__webpack_require__.e(8479).then(__webpack_require__.bind(__webpack_require__,10556))),247:ze.lazy(()=>__webpack_require__.e(5800).then(__webpack_require__.bind(__webpack_require__,38465))),248:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(2862)]).then(__webpack_require__.bind(__webpack_require__,43034))),249:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(8286)]).then(__webpack_require__.bind(__webpack_require__,25523))),250:ze.lazy(()=>__webpack_require__.e(5117).then(__webpack_require__.bind(__webpack_require__,90633))),251:ze.lazy(()=>__webpack_require__.e(7402).then(__webpack_require__.bind(__webpack_require__,79895))),252:ze.lazy(()=>__webpack_require__.e(1897).then(__webpack_require__.bind(__webpack_require__,84630))),253:ze.lazy(()=>__webpack_require__.e(8145).then(__webpack_require__.bind(__webpack_require__,11749))),254:ze.lazy(()=>__webpack_require__.e(119).then(__webpack_require__.bind(__webpack_require__,6890))),255:ze.lazy(()=>__webpack_require__.e(4736).then(__webpack_require__.bind(__webpack_require__,7942))),256:ze.lazy(()=>__webpack_require__.e(2412).then(__webpack_require__.bind(__webpack_require__,89993))),257:ze.lazy(()=>__webpack_require__.e(2240).then(__webpack_require__.bind(__webpack_require__,83184))),258:ze.lazy(()=>__webpack_require__.e(5165).then(__webpack_require__.bind(__webpack_require__,34089))),259:ze.lazy(()=>__webpack_require__.e(3831).then(__webpack_require__.bind(__webpack_require__,1842))),260:ze.lazy(()=>__webpack_require__.e(2396).then(__webpack_require__.bind(__webpack_require__,35670))),261:ze.lazy(()=>__webpack_require__.e(7855).then(__webpack_require__.bind(__webpack_require__,99624))),262:ze.lazy(()=>__webpack_require__.e(9507).then(__webpack_require__.bind(__webpack_require__,69157))),263:ze.lazy(()=>__webpack_require__.e(1343).then(__webpack_require__.bind(__webpack_require__,11234))),264:ze.lazy(()=>__webpack_require__.e(599).then(__webpack_require__.bind(__webpack_require__,20599))),265:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(7062)]).then(__webpack_require__.bind(__webpack_require__,90821))),266:ze.lazy(()=>__webpack_require__.e(9647).then(__webpack_require__.bind(__webpack_require__,3447))),267:ze.lazy(()=>__webpack_require__.e(485).then(__webpack_require__.bind(__webpack_require__,96555))),268:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(4741)]).then(__webpack_require__.bind(__webpack_require__,14222))),269:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(4741)]).then(__webpack_require__.bind(__webpack_require__,14222))),270:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(4994)]).then(__webpack_require__.bind(__webpack_require__,833))),271:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(4994)]).then(__webpack_require__.bind(__webpack_require__,833))),272:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(7460)]).then(__webpack_require__.bind(__webpack_require__,30197))),273:ze.lazy(()=>__webpack_require__.e(9716).then(__webpack_require__.bind(__webpack_require__,84958))),274:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(6913)]).then(__webpack_require__.bind(__webpack_require__,81171))),275:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(6913)]).then(__webpack_require__.bind(__webpack_require__,81171))),276:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(7062)]).then(__webpack_require__.bind(__webpack_require__,90821))),277:ze.lazy(()=>__webpack_require__.e(3006).then(__webpack_require__.bind(__webpack_require__,62861))),278:ze.lazy(()=>__webpack_require__.e(2045).then(__webpack_require__.bind(__webpack_require__,10497))),279:ze.lazy(()=>__webpack_require__.e(1520).then(__webpack_require__.bind(__webpack_require__,2131))),280:ze.lazy(()=>__webpack_require__.e(9649).then(__webpack_require__.bind(__webpack_require__,62256))),281:ze.lazy(()=>__webpack_require__.e(4546).then(__webpack_require__.bind(__webpack_require__,872))),282:ze.lazy(()=>__webpack_require__.e(5357).then(__webpack_require__.bind(__webpack_require__,64361))),283:ze.lazy(()=>__webpack_require__.e(8665).then(__webpack_require__.bind(__webpack_require__,85761))),284:ze.lazy(()=>__webpack_require__.e(3183).then(__webpack_require__.bind(__webpack_require__,93875))),285:ze.lazy(()=>__webpack_require__.e(4800).then(__webpack_require__.bind(__webpack_require__,21202))),286:ze.lazy(()=>__webpack_require__.e(9489).then(__webpack_require__.bind(__webpack_require__,91460))),287:ze.lazy(()=>__webpack_require__.e(9391).then(__webpack_require__.bind(__webpack_require__,17689))),288:ze.lazy(()=>__webpack_require__.e(5335).then(__webpack_require__.bind(__webpack_require__,37222))),289:ze.lazy(()=>__webpack_require__.e(2823).then(__webpack_require__.bind(__webpack_require__,14455))),290:ze.lazy(()=>__webpack_require__.e(4973).then(__webpack_require__.bind(__webpack_require__,41313))),291:ze.lazy(()=>Promise.all([__webpack_require__.e(6411),__webpack_require__.e(6651)]).then(__webpack_require__.bind(__webpack_require__,46859))),292:ze.lazy(()=>__webpack_require__.e(6741).then(__webpack_require__.bind(__webpack_require__,5942))),293:ze.lazy(()=>__webpack_require__.e(5775).then(__webpack_require__.bind(__webpack_require__,15920))),294:ze.lazy(()=>__webpack_require__.e(2548).then(__webpack_require__.bind(__webpack_require__,76515))),295:ze.lazy(()=>__webpack_require__.e(599).then(__webpack_require__.bind(__webpack_require__,20599))),296:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(7062)]).then(__webpack_require__.bind(__webpack_require__,90821))),297:ze.lazy(()=>__webpack_require__.e(6634).then(__webpack_require__.bind(__webpack_require__,97800))),298:ze.lazy(()=>__webpack_require__.e(680).then(__webpack_require__.bind(__webpack_require__,89705))),299:ze.lazy(()=>__webpack_require__.e(6366).then(__webpack_require__.bind(__webpack_require__,47363))),300:ze.lazy(()=>__webpack_require__.e(6452).then(__webpack_require__.bind(__webpack_require__,16302))),301:ze.lazy(()=>__webpack_require__.e(1070).then(__webpack_require__.bind(__webpack_require__,90894))),302:ze.lazy(()=>__webpack_require__.e(7242).then(__webpack_require__.bind(__webpack_require__,13747))),303:ze.lazy(()=>__webpack_require__.e(2707).then(__webpack_require__.bind(__webpack_require__,14828))),304:ze.lazy(()=>__webpack_require__.e(2865).then(__webpack_require__.bind(__webpack_require__,99436))),305:ze.lazy(()=>__webpack_require__.e(6784).then(__webpack_require__.bind(__webpack_require__,19552))),306:ze.lazy(()=>__webpack_require__.e(6784).then(__webpack_require__.bind(__webpack_require__,19552))),307:ze.lazy(()=>__webpack_require__.e(3141).then(__webpack_require__.bind(__webpack_require__,562))),308:ze.lazy(()=>__webpack_require__.e(599).then(__webpack_require__.bind(__webpack_require__,20599))),309:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(6411),__webpack_require__.e(425),__webpack_require__.e(3665)]).then(__webpack_require__.bind(__webpack_require__,45318))),310:ze.lazy(()=>Promise.all([__webpack_require__.e(6411),__webpack_require__.e(700)]).then(__webpack_require__.bind(__webpack_require__,40678))),311:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(6411),__webpack_require__.e(425),__webpack_require__.e(3665)]).then(__webpack_require__.bind(__webpack_require__,45318))),312:ze.lazy(()=>Promise.all([__webpack_require__.e(6411),__webpack_require__.e(700)]).then(__webpack_require__.bind(__webpack_require__,40678))),313:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(6411),__webpack_require__.e(425),__webpack_require__.e(3665)]).then(__webpack_require__.bind(__webpack_require__,45318))),314:ze.lazy(()=>__webpack_require__.e(599).then(__webpack_require__.bind(__webpack_require__,20599))),315:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(425),__webpack_require__.e(7527)]).then(__webpack_require__.bind(__webpack_require__,72222))),316:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(425),__webpack_require__.e(6270)]).then(__webpack_require__.bind(__webpack_require__,91176))),317:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(7062)]).then(__webpack_require__.bind(__webpack_require__,90821))),318:ze.lazy(()=>__webpack_require__.e(547).then(__webpack_require__.bind(__webpack_require__,21119))),319:ze.lazy(()=>__webpack_require__.e(9788).then(__webpack_require__.bind(__webpack_require__,64348))),320:ze.lazy(()=>__webpack_require__.e(576).then(__webpack_require__.bind(__webpack_require__,21496))),321:ze.lazy(()=>__webpack_require__.e(7260).then(__webpack_require__.bind(__webpack_require__,95335))),322:ze.lazy(()=>__webpack_require__.e(4520).then(__webpack_require__.bind(__webpack_require__,45423))),323:ze.lazy(()=>__webpack_require__.e(9076).then(__webpack_require__.bind(__webpack_require__,37196))),324:ze.lazy(()=>__webpack_require__.e(4514).then(__webpack_require__.bind(__webpack_require__,36178))),325:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(7062)]).then(__webpack_require__.bind(__webpack_require__,90821))),326:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(928)]).then(__webpack_require__.bind(__webpack_require__,10729))),327:ze.lazy(()=>__webpack_require__.e(1006).then(__webpack_require__.bind(__webpack_require__,54204))),328:ze.lazy(()=>__webpack_require__.e(1006).then(__webpack_require__.bind(__webpack_require__,54204))),329:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(7062)]).then(__webpack_require__.bind(__webpack_require__,90821))),330:ze.lazy(()=>__webpack_require__.e(1939).then(__webpack_require__.bind(__webpack_require__,23395))),331:ze.lazy(()=>__webpack_require__.e(556).then(__webpack_require__.bind(__webpack_require__,68703))),332:ze.lazy(()=>__webpack_require__.e(6434).then(__webpack_require__.bind(__webpack_require__,3819))),333:ze.lazy(()=>__webpack_require__.e(1880).then(__webpack_require__.bind(__webpack_require__,39983))),334:ze.lazy(()=>__webpack_require__.e(8237).then(__webpack_require__.bind(__webpack_require__,79046))),335:ze.lazy(()=>__webpack_require__.e(3447).then(__webpack_require__.bind(__webpack_require__,47873))),336:ze.lazy(()=>__webpack_require__.e(264).then(__webpack_require__.bind(__webpack_require__,42176))),337:ze.lazy(()=>__webpack_require__.e(4259).then(__webpack_require__.bind(__webpack_require__,92105))),338:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(7062)]).then(__webpack_require__.bind(__webpack_require__,90821))),339:ze.lazy(()=>__webpack_require__.e(4078).then(__webpack_require__.bind(__webpack_require__,97128))),340:ze.lazy(()=>__webpack_require__.e(2829).then(__webpack_require__.bind(__webpack_require__,82821))),341:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(5359)]).then(__webpack_require__.bind(__webpack_require__,5211))),342:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(7062)]).then(__webpack_require__.bind(__webpack_require__,90821))),343:ze.lazy(()=>__webpack_require__.e(559).then(__webpack_require__.bind(__webpack_require__,54587))),344:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(3747)]).then(__webpack_require__.bind(__webpack_require__,40599))),345:ze.lazy(()=>__webpack_require__.e(4757).then(__webpack_require__.bind(__webpack_require__,89955))),346:ze.lazy(()=>__webpack_require__.e(1783).then(__webpack_require__.bind(__webpack_require__,61471))),347:ze.lazy(()=>__webpack_require__.e(7477).then(__webpack_require__.bind(__webpack_require__,3279))),348:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(9677)]).then(__webpack_require__.bind(__webpack_require__,99661))),349:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(9677)]).then(__webpack_require__.bind(__webpack_require__,99661))),350:ze.lazy(()=>__webpack_require__.e(6796).then(__webpack_require__.bind(__webpack_require__,36546))),351:ze.lazy(()=>__webpack_require__.e(4504).then(__webpack_require__.bind(__webpack_require__,21105))),352:ze.lazy(()=>__webpack_require__.e(7058).then(__webpack_require__.bind(__webpack_require__,97769))),353:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(8447)]).then(__webpack_require__.bind(__webpack_require__,11369))),354:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(1045)]).then(__webpack_require__.bind(__webpack_require__,97927))),355:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(1045)]).then(__webpack_require__.bind(__webpack_require__,97927))),356:ze.lazy(()=>__webpack_require__.e(5238).then(__webpack_require__.bind(__webpack_require__,13793))),357:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(4715)]).then(__webpack_require__.bind(__webpack_require__,42100))),358:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(3873)]).then(__webpack_require__.bind(__webpack_require__,22330))),359:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(6069)]).then(__webpack_require__.bind(__webpack_require__,91591))),360:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(6069)]).then(__webpack_require__.bind(__webpack_require__,91591))),361:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(6265)]).then(__webpack_require__.bind(__webpack_require__,14291))),362:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(8563)]).then(__webpack_require__.bind(__webpack_require__,75673))),363:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(8563)]).then(__webpack_require__.bind(__webpack_require__,75673))),364:ze.lazy(()=>__webpack_require__.e(1713).then(__webpack_require__.bind(__webpack_require__,82125))),365:ze.lazy(()=>__webpack_require__.e(5891).then(__webpack_require__.bind(__webpack_require__,30654))),366:ze.lazy(()=>__webpack_require__.e(8398).then(__webpack_require__.bind(__webpack_require__,38542))),367:ze.lazy(()=>__webpack_require__.e(8241).then(__webpack_require__.bind(__webpack_require__,92314))),368:ze.lazy(()=>__webpack_require__.e(2339).then(__webpack_require__.bind(__webpack_require__,74232))),369:ze.lazy(()=>__webpack_require__.e(7589).then(__webpack_require__.bind(__webpack_require__,50983))),370:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(3747)]).then(__webpack_require__.bind(__webpack_require__,40599))),371:ze.lazy(()=>__webpack_require__.e(5705).then(__webpack_require__.bind(__webpack_require__,84033))),372:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(7062)]).then(__webpack_require__.bind(__webpack_require__,90821))),373:ze.lazy(()=>__webpack_require__.e(559).then(__webpack_require__.bind(__webpack_require__,54587))),374:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(3747)]).then(__webpack_require__.bind(__webpack_require__,40599))),375:ze.lazy(()=>__webpack_require__.e(4757).then(__webpack_require__.bind(__webpack_require__,89955))),376:ze.lazy(()=>__webpack_require__.e(1783).then(__webpack_require__.bind(__webpack_require__,61471))),377:ze.lazy(()=>__webpack_require__.e(7477).then(__webpack_require__.bind(__webpack_require__,3279))),378:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(9677)]).then(__webpack_require__.bind(__webpack_require__,99661))),379:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(9677)]).then(__webpack_require__.bind(__webpack_require__,99661))),380:ze.lazy(()=>__webpack_require__.e(6796).then(__webpack_require__.bind(__webpack_require__,36546))),381:ze.lazy(()=>__webpack_require__.e(4504).then(__webpack_require__.bind(__webpack_require__,21105))),382:ze.lazy(()=>__webpack_require__.e(7058).then(__webpack_require__.bind(__webpack_require__,97769))),383:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(8447)]).then(__webpack_require__.bind(__webpack_require__,11369))),384:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(1045)]).then(__webpack_require__.bind(__webpack_require__,97927))),385:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(1045)]).then(__webpack_require__.bind(__webpack_require__,97927))),386:ze.lazy(()=>__webpack_require__.e(5238).then(__webpack_require__.bind(__webpack_require__,13793))),387:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(4715)]).then(__webpack_require__.bind(__webpack_require__,42100))),388:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(3873)]).then(__webpack_require__.bind(__webpack_require__,22330))),389:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(6069)]).then(__webpack_require__.bind(__webpack_require__,91591))),390:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(6069)]).then(__webpack_require__.bind(__webpack_require__,91591))),391:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(6265)]).then(__webpack_require__.bind(__webpack_require__,14291))),392:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(8563)]).then(__webpack_require__.bind(__webpack_require__,75673))),393:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(8563)]).then(__webpack_require__.bind(__webpack_require__,75673))),394:ze.lazy(()=>__webpack_require__.e(1713).then(__webpack_require__.bind(__webpack_require__,82125))),395:ze.lazy(()=>__webpack_require__.e(5891).then(__webpack_require__.bind(__webpack_require__,30654))),396:ze.lazy(()=>__webpack_require__.e(8398).then(__webpack_require__.bind(__webpack_require__,38542))),397:ze.lazy(()=>__webpack_require__.e(8241).then(__webpack_require__.bind(__webpack_require__,92314))),398:ze.lazy(()=>__webpack_require__.e(2339).then(__webpack_require__.bind(__webpack_require__,74232))),399:ze.lazy(()=>__webpack_require__.e(7589).then(__webpack_require__.bind(__webpack_require__,50983))),400:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(3747)]).then(__webpack_require__.bind(__webpack_require__,40599))),401:ze.lazy(()=>__webpack_require__.e(5705).then(__webpack_require__.bind(__webpack_require__,84033))),402:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(7062)]).then(__webpack_require__.bind(__webpack_require__,90821))),403:ze.lazy(()=>__webpack_require__.e(4766).then(__webpack_require__.bind(__webpack_require__,86476))),404:ze.lazy(()=>__webpack_require__.e(7560).then(__webpack_require__.bind(__webpack_require__,27454))),405:ze.lazy(()=>__webpack_require__.e(6029).then(__webpack_require__.bind(__webpack_require__,33675))),406:ze.lazy(()=>__webpack_require__.e(5179).then(__webpack_require__.bind(__webpack_require__,58197))),407:ze.lazy(()=>__webpack_require__.e(4621).then(__webpack_require__.bind(__webpack_require__,57857))),408:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(7062)]).then(__webpack_require__.bind(__webpack_require__,90821))),409:ze.lazy(()=>__webpack_require__.e(1831).then(__webpack_require__.bind(__webpack_require__,30266))),410:ze.lazy(()=>__webpack_require__.e(2539).then(__webpack_require__.bind(__webpack_require__,88036))),411:ze.lazy(()=>__webpack_require__.e(8143).then(__webpack_require__.bind(__webpack_require__,42463))),412:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(5624)]).then(__webpack_require__.bind(__webpack_require__,66493))),413:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(1461)]).then(__webpack_require__.bind(__webpack_require__,67489))),414:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(4492)]).then(__webpack_require__.bind(__webpack_require__,32891))),415:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(9416)]).then(__webpack_require__.bind(__webpack_require__,57895))),416:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(2443)]).then(__webpack_require__.bind(__webpack_require__,75411))),417:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(2443)]).then(__webpack_require__.bind(__webpack_require__,75411))),418:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(2443)]).then(__webpack_require__.bind(__webpack_require__,75411))),419:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(2443)]).then(__webpack_require__.bind(__webpack_require__,75411))),420:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(2443)]).then(__webpack_require__.bind(__webpack_require__,75411))),421:ze.lazy(()=>__webpack_require__.e(5022).then(__webpack_require__.bind(__webpack_require__,98372))),422:ze.lazy(()=>__webpack_require__.e(6063).then(__webpack_require__.bind(__webpack_require__,16486))),423:ze.lazy(()=>__webpack_require__.e(6063).then(__webpack_require__.bind(__webpack_require__,16486))),424:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(7545)]).then(__webpack_require__.bind(__webpack_require__,9))),425:ze.lazy(()=>__webpack_require__.e(1253).then(__webpack_require__.bind(__webpack_require__,16459))),426:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(7062)]).then(__webpack_require__.bind(__webpack_require__,90821))),427:ze.lazy(()=>__webpack_require__.e(2216).then(__webpack_require__.bind(__webpack_require__,69623))),428:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(5382)]).then(__webpack_require__.bind(__webpack_require__,73171))),429:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(7062)]).then(__webpack_require__.bind(__webpack_require__,90821))),430:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(6411),__webpack_require__.e(8823)]).then(__webpack_require__.bind(__webpack_require__,46061))),431:ze.lazy(()=>Promise.all([__webpack_require__.e(6411),__webpack_require__.e(5915)]).then(__webpack_require__.bind(__webpack_require__,89325))),432:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(7062)]).then(__webpack_require__.bind(__webpack_require__,90821))),433:ze.lazy(()=>__webpack_require__.e(570).then(__webpack_require__.bind(__webpack_require__,14103))),434:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(7062)]).then(__webpack_require__.bind(__webpack_require__,90821))),435:ze.lazy(()=>__webpack_require__.e(8365).then(__webpack_require__.bind(__webpack_require__,84575))),436:ze.lazy(()=>__webpack_require__.e(6788).then(__webpack_require__.bind(__webpack_require__,6556))),437:ze.lazy(()=>__webpack_require__.e(4058).then(__webpack_require__.bind(__webpack_require__,38124))),438:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(7062)]).then(__webpack_require__.bind(__webpack_require__,90821))),439:ze.lazy(()=>__webpack_require__.e(4056).then(__webpack_require__.bind(__webpack_require__,75503))),440:ze.lazy(()=>__webpack_require__.e(9487).then(__webpack_require__.bind(__webpack_require__,3518))),441:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(7062)]).then(__webpack_require__.bind(__webpack_require__,90821))),442:ze.lazy(()=>__webpack_require__.e(532).then(__webpack_require__.bind(__webpack_require__,36693))),443:ze.lazy(()=>__webpack_require__.e(7178).then(__webpack_require__.bind(__webpack_require__,11112))),444:ze.lazy(()=>__webpack_require__.e(1660).then(__webpack_require__.bind(__webpack_require__,19041))),445:ze.lazy(()=>__webpack_require__.e(7333).then(__webpack_require__.bind(__webpack_require__,76904))),446:ze.lazy(()=>Promise.all([__webpack_require__.e(6411),__webpack_require__.e(4227)]).then(__webpack_require__.bind(__webpack_require__,63295))),447:ze.lazy(()=>Promise.all([__webpack_require__.e(6411),__webpack_require__.e(8155)]).then(__webpack_require__.bind(__webpack_require__,4280))),448:ze.lazy(()=>Promise.all([__webpack_require__.e(6411),__webpack_require__.e(5186)]).then(__webpack_require__.bind(__webpack_require__,29069))),449:ze.lazy(()=>__webpack_require__.e(5786).then(__webpack_require__.bind(__webpack_require__,28128))),450:ze.lazy(()=>__webpack_require__.e(9366).then(__webpack_require__.bind(__webpack_require__,54240))),451:ze.lazy(()=>__webpack_require__.e(5972).then(__webpack_require__.bind(__webpack_require__,23900))),452:ze.lazy(()=>__webpack_require__.e(9366).then(__webpack_require__.bind(__webpack_require__,54240))),453:ze.lazy(()=>__webpack_require__.e(1470).then(__webpack_require__.bind(__webpack_require__,39090))),454:ze.lazy(()=>__webpack_require__.e(7182).then(__webpack_require__.bind(__webpack_require__,20649))),455:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(7062)]).then(__webpack_require__.bind(__webpack_require__,90821))),456:ze.lazy(()=>Promise.all([__webpack_require__.e(6411),__webpack_require__.e(2476)]).then(__webpack_require__.bind(__webpack_require__,57915))),457:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(7062)]).then(__webpack_require__.bind(__webpack_require__,90821))),458:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(5729)]).then(__webpack_require__.bind(__webpack_require__,24721))),459:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(7062)]).then(__webpack_require__.bind(__webpack_require__,90821))),460:ze.lazy(()=>__webpack_require__.e(6444).then(__webpack_require__.bind(__webpack_require__,62904))),461:ze.lazy(()=>__webpack_require__.e(5111).then(__webpack_require__.bind(__webpack_require__,87038))),462:ze.lazy(()=>__webpack_require__.e(2307).then(__webpack_require__.bind(__webpack_require__,33262))),463:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(7062)]).then(__webpack_require__.bind(__webpack_require__,90821))),464:ze.lazy(()=>Promise.all([__webpack_require__.e(6411),__webpack_require__.e(9045),__webpack_require__.e(8866)]).then(__webpack_require__.bind(__webpack_require__,11446))),465:ze.lazy(()=>__webpack_require__.e(2300).then(__webpack_require__.bind(__webpack_require__,33662))),466:ze.lazy(()=>__webpack_require__.e(2501).then(__webpack_require__.bind(__webpack_require__,57548))),467:ze.lazy(()=>__webpack_require__.e(3212).then(__webpack_require__.bind(__webpack_require__,13540))),468:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(6904)]).then(__webpack_require__.bind(__webpack_require__,88986))),469:ze.lazy(()=>__webpack_require__.e(1855).then(__webpack_require__.bind(__webpack_require__,93185))),470:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(6904)]).then(__webpack_require__.bind(__webpack_require__,88986))),471:ze.lazy(()=>__webpack_require__.e(1276).then(__webpack_require__.bind(__webpack_require__,86308))),472:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(5816)]).then(__webpack_require__.bind(__webpack_require__,12624))),473:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(5816)]).then(__webpack_require__.bind(__webpack_require__,12624))),474:ze.lazy(()=>__webpack_require__.e(3784).then(__webpack_require__.bind(__webpack_require__,19560))),475:ze.lazy(()=>__webpack_require__.e(3862).then(__webpack_require__.bind(__webpack_require__,18430))),476:ze.lazy(()=>__webpack_require__.e(4565).then(__webpack_require__.bind(__webpack_require__,57050))),477:ze.lazy(()=>__webpack_require__.e(6531).then(__webpack_require__.bind(__webpack_require__,60279))),478:ze.lazy(()=>__webpack_require__.e(6170).then(__webpack_require__.bind(__webpack_require__,32717))),479:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(4496)]).then(__webpack_require__.bind(__webpack_require__,22255))),480:ze.lazy(()=>__webpack_require__.e(1836).then(__webpack_require__.bind(__webpack_require__,79752))),481:ze.lazy(()=>Promise.all([__webpack_require__.e(6411),__webpack_require__.e(369),__webpack_require__.e(8435)]).then(__webpack_require__.bind(__webpack_require__,62930))),482:ze.lazy(()=>__webpack_require__.e(3509).then(__webpack_require__.bind(__webpack_require__,94878))),483:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(4496)]).then(__webpack_require__.bind(__webpack_require__,22255))),484:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(4496)]).then(__webpack_require__.bind(__webpack_require__,22255))),485:ze.lazy(()=>__webpack_require__.e(6034).then(__webpack_require__.bind(__webpack_require__,43982))),486:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(8999)]).then(__webpack_require__.bind(__webpack_require__,49851))),487:ze.lazy(()=>__webpack_require__.e(3910).then(__webpack_require__.bind(__webpack_require__,53727))),488:ze.lazy(()=>Promise.all([__webpack_require__.e(169),__webpack_require__.e(67)]).then(__webpack_require__.bind(__webpack_require__,73752))),489:ze.lazy(()=>__webpack_require__.e(6531).then(__webpack_require__.bind(__webpack_require__,60279))),"@@/global-layout":ze.lazy(()=>__webpack_require__.e(1717).then(__webpack_require__.bind(__webpack_require__,15221)))}}})}var I=__webpack_require__(3191),O=__webpack_require__(58293),L=__webpack_require__(71418),_e=__webpack_require__(5755),Re=()=>ze.createElement(L.Z,{size:"middle",className:_e.Z.loading}),an=__webpack_require__(25690),wn=__webpack_require__(61186),dn=__webpack_require__.n(wn),Oi=__webpack_require__(91392),Ya=__webpack_require__.n(Oi),Oa=__webpack_require__(34749),Do=__webpack_require__.n(Oa),Ma=__webpack_require__(19277),co=__webpack_require__.n(Ma),bs=__webpack_require__(10238),Oc=__webpack_require__.n(bs),tc=__webpack_require__(33656),rc=__webpack_require__.n(tc),vc=__webpack_require__(90111),Mu=__webpack_require__.n(vc),ki=__webpack_require__(74959),nc=__webpack_require__.n(ki),Fl=__webpack_require__(23250),$o=__webpack_require__.n(Fl),Ks=__webpack_require__(58862),ns=__webpack_require__.n(Ks),al=__webpack_require__(58319),sl=__webpack_require__.n(al),El=__webpack_require__(62053),wl=__webpack_require__.n(El),ol=__webpack_require__(47477),Qc=__webpack_require__.n(ol),kc=__webpack_require__(59717),Hu=__webpack_require__.n(kc);dn().extend(Do()),dn().extend(co()),dn().extend(Oc()),dn().extend(rc()),dn().extend(Mu()),dn().extend(nc()),dn().extend($o()),dn().extend(ns()),dn().extend(sl()),dn().extend(wl()),dn().extend(Qc()),dn().extend(Hu()),dn().extend(Ya());var qc=Object.defineProperty,Bl=Object.getOwnPropertySymbols,Jc=Object.prototype.hasOwnProperty,cu=Object.prototype.propertyIsEnumerable,Fu=(Tn,Gn,Fi)=>Gn in Tn?qc(Tn,Gn,{enumerable:!0,configurable:!0,writable:!0,value:Fi}):Tn[Gn]=Fi,Sl=(Tn,Gn)=>{for(var Fi in Gn||(Gn={}))Jc.call(Gn,Fi)&&Fu(Tn,Fi,Gn[Fi]);if(Bl)for(var Fi of Bl(Gn))cu.call(Gn,Fi)&&Fu(Tn,Fi,Gn[Fi]);return Tn},ic=(Tn,Gn,Fi)=>new Promise((Sa,Gi)=>{var oa=qi=>{try{ms(Fi.next(qi))}catch(is){Gi(is)}},ma=qi=>{try{ms(Fi.throw(qi))}catch(is){Gi(is)}},ms=qi=>qi.done?Sa(qi.value):Promise.resolve(qi.value).then(oa,ma);ms((Fi=Fi.apply(Tn,Gn)).next())});const wu="/react/build/",ac=!1;function Nl(){return ic(this,null,function*(){const Tn=(0,I.gD)(),{routes:Gn,routeComponents:Fi}=yield Dc(Tn);yield Tn.applyPlugins({key:"patchRoutes",type:an.ApplyPluginsType.event,args:{routes:Gn,routeComponents:Fi}});const Sa=Tn.applyPlugins({key:"modifyContextOpts",type:an.ApplyPluginsType.modify,initialValue:{}}),Gi=Sa.basename||"/",oa=Sa.historyType||"browser",ma=(0,O.fi)(Sl({type:oa,basename:Gi},Sa.historyOpts));return Tn.applyPlugins({key:"render",type:an.ApplyPluginsType.compose,initialValue(){const ms={useStream:!0,routes:Gn,routeComponents:Fi,pluginManager:Tn,mountElementId:"root",rootElement:Sa.rootElement||document.getElementById("root"),loadingComponent:Re,publicPath:wu,runtimePublicPath:ac,history:ma,historyType:oa,basename:Gi,__INTERNAL_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:{pureApp:!1,pureHtml:!1},callback:Sa.callback},qi=Tn.applyPlugins({key:"modifyClientRenderOpts",type:an.ApplyPluginsType.modify,initialValue:ms});return mc(qi)}})()})}Nl(),typeof window!="undefined"&&(window.g_umi={version:"4.4.11"})})()})();