@playcanvas/web-components 0.1.8 → 0.1.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/app.d.ts +10 -1
- package/dist/asset.d.ts +3 -1
- package/dist/async-element.d.ts +2 -1
- package/dist/components/camera-component.d.ts +4 -4
- package/dist/components/collision-component.d.ts +4 -4
- package/dist/components/component.d.ts +3 -1
- package/dist/components/element-component.d.ts +4 -1
- package/dist/components/gsplat-component.d.ts +4 -1
- package/dist/components/light-component.d.ts +4 -4
- package/dist/components/listener-component.d.ts +4 -1
- package/dist/components/render-component.d.ts +4 -1
- package/dist/components/rigidbody-component.d.ts +4 -4
- package/dist/components/screen-component.d.ts +4 -1
- package/dist/components/script-component.d.ts +4 -1
- package/dist/components/script.d.ts +3 -1
- package/dist/components/sound-component.d.ts +4 -1
- package/dist/components/sound-slot.d.ts +3 -1
- package/dist/entity.d.ts +7 -3
- package/dist/material.d.ts +3 -1
- package/dist/model.d.ts +3 -1
- package/dist/module.d.ts +6 -0
- package/dist/pwc.cjs +161 -77
- package/dist/pwc.cjs.map +1 -1
- package/dist/pwc.js +161 -77
- package/dist/pwc.js.map +1 -1
- package/dist/pwc.min.js +1 -1
- package/dist/pwc.min.js.map +1 -1
- package/dist/pwc.mjs +161 -77
- package/dist/pwc.mjs.map +1 -1
- package/dist/scene.d.ts +3 -1
- package/dist/sky.d.ts +3 -1
- package/package.json +8 -8
- package/src/app.ts +28 -1
- package/src/asset.ts +3 -1
- package/src/async-element.ts +2 -1
- package/src/components/camera-component.ts +4 -4
- package/src/components/collision-component.ts +4 -4
- package/src/components/component.ts +3 -1
- package/src/components/element-component.ts +4 -2
- package/src/components/gsplat-component.ts +4 -1
- package/src/components/light-component.ts +4 -4
- package/src/components/listener-component.ts +4 -1
- package/src/components/render-component.ts +4 -1
- package/src/components/rigidbody-component.ts +4 -4
- package/src/components/screen-component.ts +4 -1
- package/src/components/script-component.ts +4 -1
- package/src/components/script.ts +3 -1
- package/src/components/sound-component.ts +4 -1
- package/src/components/sound-slot.ts +3 -1
- package/src/entity.ts +61 -31
- package/src/material.ts +3 -1
- package/src/model.ts +3 -1
- package/src/module.ts +6 -0
- package/src/scene.ts +13 -11
- package/src/sky.ts +3 -1
package/dist/pwc.min.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("playcanvas")):"function"==typeof define&&define.amd?define(["exports","playcanvas"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).pd={},t.pc)}(this,(function(t,e){"use strict";class s extends HTMLElement{constructor(){super(),this._readyPromise=new Promise((t=>{this._readyResolve=t}))}get closestApp(){var t;return null===(t=this.parentElement)||void 0===t?void 0:t.closest("pc-app")}get closestEntity(){var t;return null===(t=this.parentElement)||void 0===t?void 0:t.closest("pc-entity")}_onReady(){this._readyResolve(),this.dispatchEvent(new CustomEvent("ready"))}ready(){return this._readyPromise.then((()=>this))}}class i extends HTMLElement{constructor(){super(),this.loadPromise=this.loadModule()}async loadModule(){const t=this.getAttribute("name"),s=this.getAttribute("glue"),i=this.getAttribute("wasm"),n=this.getAttribute("fallback");"Basis"===t?e.basisInitialize({glueUrl:s,wasmUrl:i,fallbackUrl:n}):(e.WasmModule.setConfig(t,{glueUrl:s,wasmUrl:i,fallbackUrl:n}),await new Promise((s=>{e.WasmModule.getInstance(t,(()=>s()))})))}getLoadPromise(){return this.loadPromise}}customElements.define("pc-module",i);class n extends s{constructor(){super(),this._canvas=null,this._alpha=!0,this._antialias=!0,this._depth=!0,this._stencil=!0,this._highResolution=!1,this.app=null,this._onWindowResize=this._onWindowResize.bind(this)}async connectedCallback(){const t=this.querySelectorAll(":scope > pc-module");await Promise.all(Array.from(t).map((t=>t.getLoadPromise()))),this._canvas=document.createElement("canvas"),this.appendChild(this._canvas),this.app=new e.Application(this._canvas,{graphicsDeviceOptions:{alpha:this._alpha,antialias:this._antialias,depth:this._depth,stencil:this._stencil},keyboard:new e.Keyboard(window),mouse:new e.Mouse(this._canvas)}),this.app.graphicsDevice.maxPixelRatio=this._highResolution?window.devicePixelRatio:1,this.app.setCanvasFillMode(e.FILLMODE_FILL_WINDOW),this.app.setCanvasResolution(e.RESOLUTION_AUTO);const s=this.querySelectorAll(":scope > pc-asset");Array.from(s).forEach((t=>{t.createAsset();const e=t.asset;e&&this.app.assets.add(e)}));const i=this.querySelectorAll(":scope > pc-material");Array.from(i).forEach((t=>{t.createMaterial()})),this.app.preload((()=>{this.app.start(),window.addEventListener("resize",this._onWindowResize),this._onReady()}))}disconnectedCallback(){this.app&&(this.app.destroy(),this.app=null),window.removeEventListener("resize",this._onWindowResize),this._canvas&&this.contains(this._canvas)&&(this.removeChild(this._canvas),this._canvas=null)}_onWindowResize(){this.app&&this.app.resizeCanvas()}set alpha(t){this._alpha=t}get alpha(){return this._alpha}set antialias(t){this._antialias=t}get antialias(){return this._antialias}set depth(t){this._depth=t}get depth(){return this._depth}set highResolution(t){this._highResolution=t,this.app&&(this.app.graphicsDevice.maxPixelRatio=t?window.devicePixelRatio:1)}get highResolution(){return this._highResolution}set stencil(t){this._stencil=t}get stencil(){return this._stencil}static get observedAttributes(){return["alpha","antialias","depth","stencil","high-resolution"]}attributeChangedCallback(t,e,s){switch(t){case"alpha":this.alpha="false"!==s;break;case"antialias":this.antialias="false"!==s;break;case"depth":this.depth="false"!==s;break;case"high-resolution":this.highResolution="false"!==s;break;case"stencil":this.stencil="false"!==s}}}customElements.define("pc-app",n);const a={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"},o=t=>{const s=a[t.toLowerCase()];if(s)return(new e.Color).fromString(s);if(t.startsWith("#"))return(new e.Color).fromString(t);const i=t.split(" ").map(Number);return new e.Color(i)},r=t=>{const s=t.split(" ").map(Number);return new e.Vec2(s)},h=t=>{const s=t.split(" ").map(Number);return new e.Vec3(s)},l=t=>{const s=t.split(" ").map(Number);return new e.Vec4(s)};class c extends s{constructor(){super(...arguments),this._enabled=!0,this._name="Untitled",this._position=new e.Vec3,this._rotation=new e.Vec3,this._scale=new e.Vec3(1,1,1),this._tags=[],this.entity=null}async connectedCallback(){const t=this.closestApp;if(!t)return;await t.ready();const s=t.app;this.entity=new e.Entity(this._name,s);const i=this.getAttribute("enabled"),n=this.getAttribute("name"),a=this.getAttribute("position"),o=this.getAttribute("rotation"),r=this.getAttribute("scale"),l=this.getAttribute("tags");i&&(this.enabled="false"!==i),n&&(this.name=n),a&&(this.position=h(a)),o&&(this.rotation=h(o)),r&&(this.scale=h(r)),l&&(this.tags=l.split(",").map((t=>t.trim())));const c=this.closestEntity;c?c.ready().then((()=>{c.entity.addChild(this.entity),this._onReady()})):(s.root.addChild(this.entity),this._onReady())}disconnectedCallback(){if(this.entity){this.querySelectorAll("pc-entity").forEach((t=>{t.entity=null})),this.entity.destroy(),this.entity=null}}set enabled(t){this._enabled=t,this.entity&&(this.entity.enabled=t)}get enabled(){return this._enabled}set name(t){this._name=t,this.entity&&(this.entity.name=t)}get name(){return this._name}set position(t){this._position=t,this.entity&&this.entity.setLocalPosition(this._position)}get position(){return this._position}set rotation(t){this._rotation=t,this.entity&&this.entity.setLocalEulerAngles(this._rotation)}get rotation(){return this._rotation}set scale(t){this._scale=t,this.entity&&this.entity.setLocalScale(this._scale)}get scale(){return this._scale}set tags(t){this._tags=t,this.entity&&(this.entity.tags.clear(),this.entity.tags.add(this._tags))}get tags(){return this._tags}static get observedAttributes(){return["enabled","name","position","rotation","scale","tags"]}attributeChangedCallback(t,e,s){switch(t){case"enabled":this.enabled="false"!==s;break;case"name":this.name=s;break;case"position":this.position=h(s);break;case"rotation":this.rotation=h(s);break;case"scale":this.scale=h(s);break;case"tags":this.tags=s.split(",").map((t=>t.trim()))}}}customElements.define("pc-entity",c);const p=new Map([["bin","binary"],["css","css"],["frag","shader"],["glb","container"],["glsl","shader"],["hdr","texture"],["html","html"],["jpg","texture"],["js","script"],["json","json"],["mp3","audio"],["mjs","script"],["ply","gsplat"],["png","texture"],["txt","text"],["vert","shader"],["webp","texture"]]);class u extends HTMLElement{constructor(){super(...arguments),this._preload=!1,this.asset=null}disconnectedCallback(){this.destroyAsset()}createAsset(){var t;const s=this.getAttribute("id")||"",i=this.getAttribute("src")||"";let n=this.getAttribute("type");if(!n){const e=i.split(".").pop();n=null!==(t=p.get(e||""))&&void 0!==t?t:null}n?(this.asset=new e.Asset(s,n,{url:i}),this.asset.preload=this.preload):console.warn(`Unsupported asset type: ${i}`)}destroyAsset(){this.asset&&(this.asset.unload(),this.asset=null)}set preload(t){this._preload=t,this.asset&&(this.asset.preload=t)}get preload(){return this._preload}static get(t){const e=document.querySelector(`pc-asset[id="${t}"]`);return null==e?void 0:e.asset}static get observedAttributes(){return["preload"]}attributeChangedCallback(t,e,s){"preload"===t&&(this.preload=this.hasAttribute("preload"))}}customElements.define("pc-asset",u);class d extends s{constructor(t){super(),this._enabled=!0,this._component=null,this._componentName=t}getInitialComponentData(){return{}}async addComponent(){const t=this.closestEntity;if(t){await t.ready();const e=this.getInitialComponentData();this._component=t.entity.addComponent(this._componentName,e)}}initComponent(){}async connectedCallback(){var t;await(null===(t=this.closestApp)||void 0===t?void 0:t.ready()),await this.addComponent(),this.initComponent(),this._onReady()}disconnectedCallback(){this.component&&this.component.entity&&(this._component.entity.removeComponent(this._componentName),this._component=null)}get component(){return this._component}set enabled(t){this._enabled=t,this.component&&(this.component.enabled=t)}get enabled(){return this._enabled}static get observedAttributes(){return["enabled"]}attributeChangedCallback(t,e,s){if("enabled"===t)this.enabled="false"!==s}}class f extends d{constructor(){super("audiolistener")}get component(){return super.component}}customElements.define("pc-listener",f);class m extends d{constructor(){super("camera"),this._clearColor=new e.Color(.75,.75,.75,1),this._clearColorBuffer=!0,this._clearDepthBuffer=!0,this._clearStencilBuffer=!1,this._cullFaces=!0,this._farClip=1e3,this._flipFaces=!1,this._fov=45,this._frustumCulling=!0,this._nearClip=.1,this._orthographic=!1,this._orthoHeight=10,this._priority=0,this._rect=new e.Vec4(0,0,1,1),this._scissorRect=new e.Vec4(0,0,1,1)}getInitialComponentData(){return{clearColor:this._clearColor,clearColorBuffer:this._clearColorBuffer,clearDepthBuffer:this._clearDepthBuffer,clearStencilBuffer:this._clearStencilBuffer,cullFaces:this._cullFaces,farClip:this._farClip,flipFaces:this._flipFaces,fov:this._fov,frustumCulling:this._frustumCulling,nearClip:this._nearClip,orthographic:this._orthographic,orthoHeight:this._orthoHeight,priority:this._priority,rect:this._rect,scissorRect:this._scissorRect}}get xrAvailable(){var t;const s=null===(t=this.component)||void 0===t?void 0:t.system.app.xr;return s&&s.supported&&s.isAvailable(e.XRTYPE_VR)}startXr(t,e){this.component&&this.xrAvailable&&this.component.startXr(t,e,{callback:t=>{t&&console.error(`WebXR Immersive VR failed to start: ${t.message}`)}})}endXr(){this.component&&this.component.endXr()}get component(){return super.component}set clearColor(t){this._clearColor=t,this.component&&(this.component.clearColor=t)}get clearColor(){return this._clearColor}set clearColorBuffer(t){this._clearColorBuffer=t,this.component&&(this.component.clearColorBuffer=t)}get clearColorBuffer(){return this._clearColorBuffer}set clearDepthBuffer(t){this._clearDepthBuffer=t,this.component&&(this.component.clearDepthBuffer=t)}get clearDepthBuffer(){return this._clearDepthBuffer}set clearStencilBuffer(t){this._clearStencilBuffer=t,this.component&&(this.component.clearStencilBuffer=t)}get clearStencilBuffer(){return this._clearStencilBuffer}set cullFaces(t){this._cullFaces=t,this.component&&(this.component.cullFaces=t)}get cullFaces(){return this._cullFaces}set farClip(t){this._farClip=t,this.component&&(this.component.farClip=t)}get farClip(){return this._farClip}set flipFaces(t){this._flipFaces=t,this.component&&(this.component.flipFaces=t)}get flipFaces(){return this._flipFaces}set fov(t){this._fov=t,this.component&&(this.component.fov=t)}get fov(){return this._fov}set frustumCulling(t){this._frustumCulling=t,this.component&&(this.component.frustumCulling=t)}get frustumCulling(){return this._frustumCulling}set nearClip(t){this._nearClip=t,this.component&&(this.component.nearClip=t)}get nearClip(){return this._nearClip}set orthographic(t){this._orthographic=t,this.component&&(this.component.projection=t?e.PROJECTION_ORTHOGRAPHIC:e.PROJECTION_PERSPECTIVE)}get orthographic(){return this._orthographic}set orthoHeight(t){this._orthoHeight=t,this.component&&(this.component.orthoHeight=t)}get orthoHeight(){return this._orthoHeight}set priority(t){this._priority=t,this.component&&(this.component.priority=t)}get priority(){return this._priority}set rect(t){this._rect=t,this.component&&(this.component.rect=t)}get rect(){return this._rect}set scissorRect(t){this._scissorRect=t,this.component&&(this.component.scissorRect=t)}get scissorRect(){return this._scissorRect}static get observedAttributes(){return[...super.observedAttributes,"clear-color","clear-color-buffer","clear-depth-buffer","clear-stencil-buffer","cull-faces","far-clip","flip-faces","fov","frustum-culling","near-clip","orthographic","ortho-height","priority","rect","scissor-rect"]}attributeChangedCallback(t,e,s){switch(super.attributeChangedCallback(t,e,s),t){case"clear-color":this.clearColor=o(s);break;case"clear-color-buffer":this.clearColorBuffer="false"!==s;break;case"clear-depth-buffer":this.clearDepthBuffer="false"!==s;break;case"clear-stencil-buffer":this.clearStencilBuffer="false"!==s;break;case"cull-faces":this.cullFaces="false"!==s;break;case"far-clip":this.farClip=parseFloat(s);break;case"flip-faces":this.flipFaces="true"!==s;break;case"fov":this.fov=parseFloat(s);break;case"frustum-culling":this.frustumCulling="false"!==s;break;case"near-clip":this.nearClip=parseFloat(s);break;case"orthographic":this.orthographic=this.hasAttribute("orthographic");break;case"ortho-height":this.orthoHeight=parseFloat(s);break;case"priority":this.priority=parseFloat(s);break;case"rect":this.rect=l(s);break;case"scissor-rect":this.scissorRect=l(s)}}}customElements.define("pc-camera",m);class g extends d{constructor(){super("collision"),this._angularOffset=new e.Quat,this._axis=1,this._convexHull=!1,this._halfExtents=new e.Vec3(.5,.5,.5),this._height=2,this._linearOffset=new e.Vec3,this._radius=.5,this._type="box"}getInitialComponentData(){return{axis:this._axis,angularOffset:this._angularOffset,convexHull:this._convexHull,halfExtents:this._halfExtents,height:this._height,linearOffset:this._linearOffset,radius:this._radius,type:this._type}}get component(){return super.component}set angularOffset(t){this._angularOffset=t,this.component&&(this.component.angularOffset=t)}get angularOffset(){return this._angularOffset}set axis(t){this._axis=t,this.component&&(this.component.axis=t)}get axis(){return this._axis}set convexHull(t){this._convexHull=t,this.component&&(this.component.convexHull=t)}get convexHull(){return this._convexHull}set halfExtents(t){this._halfExtents=t,this.component&&(this.component.halfExtents=t)}get halfExtents(){return this._halfExtents}set height(t){this._height=t,this.component&&(this.component.height=t)}get height(){return this._height}set linearOffset(t){this._linearOffset=t,this.component&&(this.component.linearOffset=t)}get linearOffset(){return this._linearOffset}set radius(t){this._radius=t,this.component&&(this.component.radius=t)}get radius(){return this._radius}set type(t){this._type=t,this.component&&(this.component.type=t)}get type(){return this._type}static get observedAttributes(){return[...super.observedAttributes,"angular-offset","axis","convex-hull","half-extents","height","linear-offset","radius","type"]}attributeChangedCallback(t,s,i){switch(super.attributeChangedCallback(t,s,i),t){case"angular-offset":this.angularOffset=(t=>{const[s,i,n]=t.split(" ").map(Number),a=new e.Quat;return a.setFromEulerAngles(s,i,n),a})(i);break;case"axis":this.axis=parseInt(i,10);break;case"convex-hull":this.convexHull=this.hasAttribute("convex-hull");break;case"half-extents":this.halfExtents=h(i);break;case"height":this.height=parseFloat(i);break;case"linear-offset":this.linearOffset=h(i);break;case"radius":this.radius=parseFloat(i);break;case"type":this.type=i}}}customElements.define("pc-collision",g);class _ extends d{constructor(){super("element"),this._anchor=new e.Vec4(.5,.5,.5,.5),this._asset="",this._autoWidth=!0,this._color=new e.Color(1,1,1,1),this._fontSize=32,this._lineHeight=32,this._pivot=new e.Vec2(.5,.5),this._text="",this._type="group",this._width=0,this._wrapLines=!1}initComponent(){this.component._text._material.useFog=!0}getInitialComponentData(){return{anchor:this._anchor,autoWidth:this._autoWidth,color:this._color,fontAsset:u.get(this._asset).id,fontSize:this._fontSize,lineHeight:this._lineHeight,pivot:this._pivot,type:this._type,text:this._text,width:this._width,wrapLines:this._wrapLines}}get component(){return super.component}set anchor(t){this._anchor=t,this.component&&(this.component.anchor=t)}get anchor(){return this._anchor}set asset(t){this._asset=t;const e=u.get(t);this.component&&e&&(this.component.fontAsset=e.id)}get asset(){return this._asset}set autoWidth(t){this._autoWidth=t,this.component&&(this.component.autoWidth=t)}get autoWidth(){return this._autoWidth}set color(t){this._color=t,this.component&&(this.component.color=t)}get color(){return this._color}set fontSize(t){this._fontSize=t,this.component&&(this.component.fontSize=t)}get fontSize(){return this._fontSize}set lineHeight(t){this._lineHeight=t,this.component&&(this.component.lineHeight=t)}get lineHeight(){return this._lineHeight}set pivot(t){this._pivot=t,this.component&&(this.component.pivot=t)}get pivot(){return this._pivot}set text(t){this._text=t,this.component&&(this.component.text=t)}get text(){return this._text}set type(t){this._type=t,this.component&&(this.component.type=t)}get type(){return this._type}set width(t){this._width=t,this.component&&(this.component.width=t)}get width(){return this._width}set wrapLines(t){this._wrapLines=t,this.component&&(this.component.wrapLines=t)}get wrapLines(){return this._wrapLines}static get observedAttributes(){return[...super.observedAttributes,"anchor","asset","auto-width","color","font-size","line-height","pivot","text","type","width","wrap-lines"]}attributeChangedCallback(t,e,s){switch(super.attributeChangedCallback(t,e,s),t){case"anchor":this.anchor=l(s);break;case"asset":this.asset=s;break;case"auto-width":this.autoWidth="false"!==s;break;case"color":this.color=o(s);break;case"font-size":this.fontSize=Number(s);break;case"line-height":this.lineHeight=Number(s);break;case"pivot":this.pivot=r(s);break;case"text":this.text=s;break;case"type":this.type=s;break;case"width":this.width=Number(s);break;case"wrap-lines":this.wrapLines=this.hasAttribute(t)}}}customElements.define("pc-element",_);class b extends d{constructor(){super("gsplat"),this._asset=""}getInitialComponentData(){return{asset:u.get(this._asset)}}get component(){return super.component}set asset(t){this._asset=t;const e=u.get(t);this.component&&e&&(this.component.asset=e)}get asset(){return this._asset}static get observedAttributes(){return[...super.observedAttributes,"asset"]}attributeChangedCallback(t,e,s){if(super.attributeChangedCallback(t,e,s),"asset"===t)this.asset=s}}customElements.define("pc-splat",b);class y extends d{constructor(){super("light"),this._castShadows=!1,this._color=new e.Color(1,1,1),this._innerConeAngle=40,this._intensity=1,this._normalOffsetBias=.05,this._outerConeAngle=45,this._range=10,this._shadowBias=.2,this._shadowDistance=16,this._shadowResolution=1024,this._type="directional"}getInitialComponentData(){return{castShadows:this._castShadows,color:this._color,innerConeAngle:this._innerConeAngle,intensity:this._intensity,normalOffsetBias:this._normalOffsetBias,outerConeAngle:this._outerConeAngle,range:this._range,shadowBias:this._shadowBias,shadowDistance:this._shadowDistance,shadowResolution:this._shadowResolution,type:this._type}}get component(){return super.component}set castShadows(t){this._castShadows=t,this.component&&(this.component.castShadows=t)}get castShadows(){return this._castShadows}set color(t){this._color=t,this.component&&(this.component.color=t)}get color(){return this._color}set innerConeAngle(t){this._innerConeAngle=t,this.component&&(this.component.innerConeAngle=t)}get innerConeAngle(){return this._innerConeAngle}set intensity(t){this._intensity=t,this.component&&(this.component.intensity=t)}get intensity(){return this._intensity}set normalOffsetBias(t){this._normalOffsetBias=t,this.component&&(this.component.normalOffsetBias=t)}get normalOffsetBias(){return this._normalOffsetBias}set outerConeAngle(t){this._outerConeAngle=t,this.component&&(this.component.outerConeAngle=t)}get outerConeAngle(){return this._outerConeAngle}set range(t){this._range=t,this.component&&(this.component.range=t)}get range(){return this._range}set shadowBias(t){this._shadowBias=t,this.component&&(this.component.shadowBias=t)}get shadowBias(){return this._shadowBias}set shadowDistance(t){this._shadowDistance=t,this.component&&(this.component.shadowDistance=t)}get shadowDistance(){return this._shadowDistance}set shadowResolution(t){this._shadowResolution=t,this.component&&(this.component.shadowResolution=t)}get shadowResolution(){return this._shadowResolution}set type(t){["directional","omni","spot"].includes(t)?(this._type=t,this.component&&(this.component.type=t)):console.warn(`Invalid light type '${t}', using default type '${this._type}'.`)}get type(){return this._type}static get observedAttributes(){return[...super.observedAttributes,"color","cast-shadows","intensity","inner-cone-angle","normal-offset-bias","outer-cone-angle","range","shadow-bias","shadow-distance","shadow-resolution","type"]}attributeChangedCallback(t,e,s){switch(super.attributeChangedCallback(t,e,s),t){case"color":this.color=o(s);break;case"cast-shadows":this.castShadows=this.hasAttribute("cast-shadows");break;case"inner-cone-angle":this.innerConeAngle=Number(s);break;case"intensity":this.intensity=Number(s);break;case"normal-offset-bias":this.normalOffsetBias=Number(s);break;case"outer-cone-angle":this.outerConeAngle=Number(s);break;case"range":this.range=Number(s);break;case"shadow-bias":this.shadowBias=Number(s);break;case"shadow-distance":this.shadowDistance=Number(s);break;case"shadow-resolution":this.shadowResolution=Number(s);break;case"type":this.type=s}}}customElements.define("pc-light",y);class v extends HTMLElement{constructor(){super(...arguments),this._diffuse=new e.Color(1,1,1),this._diffuseMap="",this._metalnessMap="",this._normalMap="",this._roughnessMap="",this.material=null}createMaterial(){this.material=new e.StandardMaterial,this.material.glossInvert=!0,this.material.useMetalness=!0,this.material.diffuse=this._diffuse,this.diffuseMap=this._diffuseMap,this.metalnessMap=this._metalnessMap,this.normalMap=this._normalMap,this.roughnessMap=this._roughnessMap,this.material.update()}disconnectedCallback(){this.material&&(this.material.destroy(),this.material=null)}setMap(t,e){if(this.material){const s=u.get(t);s&&(s.loaded?(this.material[e]=s.resource,this.material[e].anisotropy=4):s.once("load",(()=>{this.material[e]=s.resource,this.material[e].anisotropy=4,this.material.update()})))}}set diffuse(t){this._diffuse=t,this.material&&(this.material.diffuse=t)}get diffuse(){return this._diffuse}set diffuseMap(t){this._diffuseMap=t,this.setMap(t,"diffuseMap")}get diffuseMap(){return this._diffuseMap}set metalnessMap(t){this._metalnessMap=t,this.setMap(t,"metalnessMap")}get metalnessMap(){return this._metalnessMap}set normalMap(t){this._normalMap=t,this.setMap(t,"normalMap")}get normalMap(){return this._normalMap}set roughnessMap(t){this._roughnessMap=t,this.setMap(t,"glossMap")}get roughnessMap(){return this._roughnessMap}static get(t){const e=document.querySelector(`pc-material[id="${t}"]`);return null==e?void 0:e.material}static get observedAttributes(){return["diffuse","diffuse-map","metalness-map","normal-map","roughness-map"]}attributeChangedCallback(t,e,s){switch(t){case"diffuse":this.diffuse=o(s);break;case"diffuse-map":this.diffuseMap=s;break;case"metalness-map":this.metalnessMap=s;break;case"normal-map":this.normalMap=s;break;case"roughness-map":this.roughnessMap=s}}}customElements.define("pc-material",v);class C extends d{constructor(){super("render"),this._castShadows=!0,this._material="",this._receiveShadows=!0,this._type="asset"}getInitialComponentData(){return{type:this._type,castShadows:this._castShadows,material:v.get(this._material),receiveShadows:this._receiveShadows}}get component(){return super.component}set type(t){this._type=t,this.component&&(this.component.type=t)}get type(){return this._type}set castShadows(t){this._castShadows=t,this.component&&(this.component.castShadows=t)}get castShadows(){return this._castShadows}set material(t){this._material=t,this.component&&(this.component.material=v.get(t))}get material(){return this._material}set receiveShadows(t){this._receiveShadows=t,this.component&&(this.component.receiveShadows=t)}get receiveShadows(){return this._receiveShadows}static get observedAttributes(){return[...super.observedAttributes,"cast-shadows","material","receive-shadows","type"]}attributeChangedCallback(t,e,s){switch(super.attributeChangedCallback(t,e,s),t){case"cast-shadows":this.castShadows="false"!==s;break;case"material":this.material=s;break;case"receive-shadows":this.receiveShadows="false"!==s;break;case"type":this.type=s}}}customElements.define("pc-render",C);class w extends d{constructor(){super("rigidbody"),this._angularDamping=0,this._angularFactor=new e.Vec3(1,1,1),this._friction=.5,this._linearDamping=0,this._linearFactor=new e.Vec3(1,1,1),this._mass=1,this._restitution=0,this._rollingFriction=0,this._type="static"}getInitialComponentData(){return{angularDamping:this._angularDamping,angularFactor:this._angularFactor,friction:this._friction,linearDamping:this._linearDamping,linearFactor:this._linearFactor,mass:this._mass,restitution:this._restitution,rollingFriction:this._rollingFriction,type:this._type}}get component(){return super.component}set angularDamping(t){this._angularDamping=t,this.component&&(this.component.angularDamping=t)}get angularDamping(){return this._angularDamping}set angularFactor(t){this._angularFactor=t,this.component&&(this.component.angularFactor=t)}get angularFactor(){return this._angularFactor}set friction(t){this._friction=t,this.component&&(this.component.friction=t)}get friction(){return this._friction}set linearDamping(t){this._linearDamping=t,this.component&&(this.component.linearDamping=t)}get linearDamping(){return this._linearDamping}set linearFactor(t){this._linearFactor=t,this.component&&(this.component.linearFactor=t)}get linearFactor(){return this._linearFactor}set mass(t){this._mass=t,this.component&&(this.component.mass=t)}get mass(){return this._mass}set restitution(t){this._restitution=t,this.component&&(this.component.restitution=t)}get restitution(){return this._restitution}set rollingFriction(t){this._rollingFriction=t,this.component&&(this.component.rollingFriction=t)}get rollingFriction(){return this._rollingFriction}set type(t){this._type=t,this.component&&(this.component.type=t)}get type(){return this._type}static get observedAttributes(){return[...super.observedAttributes,"angular-damping","angular-factor","friction","linear-damping","linear-factor","mass","restitution","rolling-friction","type"]}attributeChangedCallback(t,e,s){switch(super.attributeChangedCallback(t,e,s),t){case"angular-damping":this.angularDamping=parseFloat(s);break;case"angular-factor":this.angularFactor=h(s);break;case"friction":this.friction=parseFloat(s);break;case"linear-damping":this.linearDamping=parseFloat(s);break;case"linear-factor":this.linearFactor=h(s);break;case"mass":this.mass=parseFloat(s);break;case"restitution":this.restitution=parseFloat(s);break;case"rolling-friction":this.rollingFriction=parseFloat(s);break;case"type":this.type=s}}}customElements.define("pc-rigidbody",w);class k extends d{constructor(){super("screen"),this._screenSpace=!1,this._resolution=new e.Vec2(640,320),this._referenceResolution=new e.Vec2(640,320),this._priority=0,this._blend=!1,this._scaleBlend=.5}getInitialComponentData(){return{priority:this._priority,referenceResolution:this._referenceResolution,resolution:this._resolution,scaleBlend:this._scaleBlend,scaleMode:this._blend?e.SCALEMODE_BLEND:e.SCALEMODE_NONE,screenSpace:this._screenSpace}}get component(){return super.component}set priority(t){this._priority=t,this.component&&(this.component.priority=this._priority)}get priority(){return this._priority}set referenceResolution(t){this._referenceResolution=t,this.component&&(this.component.referenceResolution=this._referenceResolution)}get referenceResolution(){return this._referenceResolution}set resolution(t){this._resolution=t,this.component&&(this.component.resolution=this._resolution)}get resolution(){return this._resolution}set scaleBlend(t){this._scaleBlend=t,this.component&&(this.component.scaleBlend=this._scaleBlend)}get scaleBlend(){return this._scaleBlend}set blend(t){this._blend=t,this.component&&(this.component.scaleMode=this._blend?e.SCALEMODE_BLEND:e.SCALEMODE_NONE)}get blend(){return this._blend}set screenSpace(t){this._screenSpace=t,this.component&&(this.component.screenSpace=this._screenSpace)}get screenSpace(){return this._screenSpace}static get observedAttributes(){return[...super.observedAttributes,"blend","screen-space","resolution","reference-resolution","priority","scale-blend"]}attributeChangedCallback(t,e,s){switch(super.attributeChangedCallback(t,e,s),t){case"priority":this.priority=parseInt(s,10);break;case"reference-resolution":this.referenceResolution=r(s);break;case"resolution":this.resolution=r(s);break;case"scale-blend":this.scaleBlend=parseFloat(s);break;case"blend":this.blend=this.hasAttribute("blend");break;case"screen-space":this.screenSpace=this.hasAttribute("screen-space")}}}customElements.define("pc-screen",k);const S=new e.Vec2,A=new e.Vec3,E=new e.Vec4;class x extends d{constructor(){super("script"),this.observer=new MutationObserver(this.handleMutations.bind(this)),this.observer.observe(this,{childList:!0}),this.addEventListener("scriptattributeschange",this.handleScriptAttributesChange.bind(this)),this.addEventListener("scriptenablechange",this.handleScriptEnableChange.bind(this))}initComponent(){this.querySelectorAll(":scope > pc-script").forEach((t=>{const e=t.getAttribute("name"),s=t.getAttribute("attributes");e&&this.createScript(e,s)}))}applyAttributes(t,s){try{const i=s?JSON.parse(s):{},n=(t,s,i)=>{if("string"==typeof i&&i.startsWith("asset:")){const e=i.slice(6),n=document.querySelector(`pc-asset#${e}`);if(n)return void(t[s]=n.asset)}if(Array.isArray(i)){if(t[s]instanceof e.Vec2)return void(t[s]=S.set(i[0],i[1]));if(t[s]instanceof e.Vec3)return void(t[s]=A.set(i[0],i[1],i[2]));if(t[s]instanceof e.Vec4)return void(t[s]=E.set(i[0],i[1],i[2],i[3]))}if(i&&"object"==typeof i&&!Array.isArray(i)){t[s]&&"object"==typeof t[s]||(t[s]={});for(const e in i)n(t[s],e,i[e])}else t[s]=i};for(const e in i)n(t,e,i[e])}catch(t){console.error(`Error parsing attributes JSON string ${s}:`,t)}}handleScriptAttributesChange(t){const e=t.target.getAttribute("name");if(!e||!this.component)return;const s=this.component.get(e);s&&this.applyAttributes(s,t.detail.attributes)}handleScriptEnableChange(t){const e=t.target.getAttribute("name");if(!e||!this.component)return;const s=this.component.get(e);s&&(s.enabled=t.detail.enabled)}createScript(t,e){return this.component?(this.component.on(`create:${t}`,(t=>{this.applyAttributes(t,e)})),this.component.create(t)):null}destroyScript(t){this.component&&this.component.destroy(t)}handleMutations(t){for(const e of t)e.addedNodes.forEach((t=>{if(t instanceof HTMLElement&&"pc-script"===t.tagName.toLowerCase()){const e=t.getAttribute("name"),s=t.getAttribute("attributes");e&&this.createScript(e,s)}})),e.removedNodes.forEach((t=>{if(t instanceof HTMLElement&&"pc-script"===t.tagName.toLowerCase()){const e=t.getAttribute("name");e&&this.destroyScript(e)}}))}disconnectedCallback(){var t;this.observer.disconnect(),null===(t=super.disconnectedCallback)||void 0===t||t.call(this)}get component(){return super.component}}customElements.define("pc-scripts",x);class M extends HTMLElement{constructor(){super(...arguments),this._attributes="{}",this._enabled=!0,this._name=""}set scriptAttributes(t){this._attributes=t,this.dispatchEvent(new CustomEvent("scriptattributeschange",{detail:{attributes:t},bubbles:!0}))}get scriptAttributes(){return this._attributes}set enabled(t){this._enabled=t,this.dispatchEvent(new CustomEvent("scriptenablechange",{detail:{enabled:t},bubbles:!0}))}get enabled(){return this._enabled}set name(t){this._name=t}get name(){return this._name}static get observedAttributes(){return["attributes","enabled","name"]}attributeChangedCallback(t,e,s){switch(t){case"attributes":this.scriptAttributes=s;break;case"enabled":this.enabled="false"!==s;break;case"name":this.name=s}}}customElements.define("pc-script",M);class D extends d{constructor(){super("sound"),this._distanceModel="linear",this._maxDistance=1e4,this._pitch=1,this._positional=!1,this._refDistance=1,this._rollOffFactor=1,this._volume=1}getInitialComponentData(){return{distanceModel:this._distanceModel,maxDistance:this._maxDistance,pitch:this._pitch,positional:this._positional,refDistance:this._refDistance,rollOffFactor:this._rollOffFactor,volume:this._volume}}get component(){return super.component}set distanceModel(t){this._distanceModel=t,this.component&&(this.component.distanceModel=t)}get distanceModel(){return this._distanceModel}set maxDistance(t){this._maxDistance=t,this.component&&(this.component.maxDistance=t)}get maxDistance(){return this._maxDistance}set pitch(t){this._pitch=t,this.component&&(this.component.pitch=t)}get pitch(){return this._pitch}set positional(t){this._positional=t,this.component&&(this.component.positional=t)}get positional(){return this._positional}set refDistance(t){this._refDistance=t,this.component&&(this.component.refDistance=t)}get refDistance(){return this._refDistance}set rollOffFactor(t){this._rollOffFactor=t,this.component&&(this.component.rollOffFactor=t)}get rollOffFactor(){return this._rollOffFactor}set volume(t){this._volume=t,this.component&&(this.component.volume=t)}get volume(){return this._volume}static get observedAttributes(){return[...super.observedAttributes,"distance-model","max-distance","pitch","positional","ref-distance","roll-off-factor","volume"]}attributeChangedCallback(t,e,s){switch(super.attributeChangedCallback(t,e,s),t){case"distance-model":this.distanceModel=s;break;case"max-distance":this.maxDistance=parseFloat(s);break;case"pitch":this.pitch=parseFloat(s);break;case"positional":this.positional=this.hasAttribute("positional");break;case"ref-distance":this.refDistance=parseFloat(s);break;case"roll-off-factor":this.rollOffFactor=parseFloat(s);break;case"volume":this.volume=parseFloat(s)}}}customElements.define("pc-sounds",D);class F extends s{constructor(){super(...arguments),this._asset="",this._autoPlay=!1,this._duration=null,this._loop=!1,this._name="",this._overlap=!1,this._pitch=1,this._startTime=0,this._volume=1,this.soundSlot=null}async connectedCallback(){var t;await(null===(t=this.soundElement)||void 0===t?void 0:t.ready());const e={autoPlay:this._autoPlay,loop:this._loop,overlap:this._overlap,pitch:this._pitch,startTime:this._startTime,volume:this._volume};this._duration&&(e.duration=this._duration),this.soundSlot=this.soundElement.component.addSlot(this._name,e),this.asset=this._asset,this.soundSlot.play(),this._onReady()}disconnectedCallback(){this.soundElement.component.removeSlot(this._name)}get soundElement(){const t=this.parentElement;return t instanceof D?t:(console.warn("pc-sound-slot must be a direct child of a pc-sound element"),null)}set asset(t){var e;if(this._asset=t,this.soundSlot){const s=null===(e=u.get(t))||void 0===e?void 0:e.id;s&&(this.soundSlot.asset=s)}}get asset(){return this._asset}set autoPlay(t){this._autoPlay=t,this.soundSlot&&(this.soundSlot.autoPlay=t)}get autoPlay(){return this._autoPlay}set duration(t){this._duration=t,this.soundSlot&&(this.soundSlot.duration=t)}get duration(){return this._duration}set loop(t){this._loop=t,this.soundSlot&&(this.soundSlot.loop=t)}get loop(){return this._loop}set name(t){this._name=t,this.soundSlot&&(this.soundSlot.name=t)}get name(){return this._name}set overlap(t){this._overlap=t,this.soundSlot&&(this.soundSlot.overlap=t)}get overlap(){return this._overlap}set pitch(t){this._pitch=t,this.soundSlot&&(this.soundSlot.pitch=t)}get pitch(){return this._pitch}set startTime(t){this._startTime=t,this.soundSlot&&(this.soundSlot.startTime=t)}get startTime(){return this._startTime}set volume(t){this._volume=t,this.soundSlot&&(this.soundSlot.volume=t)}get volume(){return this._volume}static get observedAttributes(){return["asset","autoPlay","duration","loop","name","overlap","pitch","startTime","volume"]}attributeChangedCallback(t,e,s){switch(t){case"asset":this.asset=s;break;case"duration":this.duration=parseFloat(s);break;case"loop":this.loop=this.hasAttribute("loop");break;case"name":this.name=s;break;case"overlap":this.overlap=this.hasAttribute("overlap");break;case"pitch":this.pitch=parseFloat(s);break;case"startTime":this.startTime=parseFloat(s);break;case"volume":this.volume=parseFloat(s)}}}customElements.define("pc-sound",F);class R extends s{constructor(){super(...arguments),this._asset="",this._entity=null}connectedCallback(){this._loadModel(),this._onReady()}disconnectedCallback(){this._unloadModel()}_instantiate(t){this._entity=t.instantiateRenderEntity(),t.animations.length>0&&(this._entity.addComponent("anim"),this._entity.anim.assignAnimation("animation",t.animations[0].resource));const e=this.closestEntity;if(e)e.ready().then((()=>{e.entity.addChild(this._entity)}));else{const t=this.closestApp;t&&t.ready().then((()=>{t.app.root.addChild(this._entity)}))}}async _loadModel(){var t;this._unloadModel();const e=await(null===(t=this.closestApp)||void 0===t?void 0:t.ready()),s=null==e?void 0:e.app,i=u.get(this._asset);i&&(i.loaded?this._instantiate(i.resource):(i.once("load",(()=>{this._instantiate(i.resource)})),s.assets.load(i)))}_unloadModel(){var t;null===(t=this._entity)||void 0===t||t.destroy(),this._entity=null}set asset(t){this._asset=t,this.isConnected&&this._loadModel()}get asset(){return this._asset}static get observedAttributes(){return["asset"]}attributeChangedCallback(t,e,s){if("asset"===t)this.asset=s}}customElements.define("pc-model",R);class B extends s{constructor(){super(...arguments),this._fog="none",this._fogColor=new e.Color(1,1,1),this._fogDensity=0,this._fogStart=0,this._fogEnd=1e3,this.scene=null}async connectedCallback(){var t;await(null===(t=this.closestApp)||void 0===t?void 0:t.ready()),this.scene=this.closestApp.app.scene,this.updateSceneSettings(),this._onReady()}updateSceneSettings(){this.scene&&(this.scene.rendering.fog=this._fog,this.scene.rendering.fogColor=this._fogColor,this.scene.rendering.fogDensity=this._fogDensity,this.scene.rendering.fogStart=this._fogStart,this.scene.rendering.fogEnd=this._fogEnd)}set fog(t){this._fog=t,this.scene&&(this.scene.rendering.fog=t)}get fog(){return this._fog}set fogColor(t){this._fogColor=t,this.scene&&(this.scene.rendering.fogColor=t)}get fogColor(){return this._fogColor}set fogDensity(t){this._fogDensity=t,this.scene&&(this.scene.rendering.fogDensity=t)}get fogDensity(){return this._fogDensity}set fogStart(t){this._fogStart=t,this.scene&&(this.scene.rendering.fogStart=t)}get fogStart(){return this._fogStart}set fogEnd(t){this._fogEnd=t,this.scene&&(this.scene.rendering.fogEnd=t)}get fogEnd(){return this._fogEnd}static get observedAttributes(){return["fog","fog-color","fog-density","fog-start","fog-end"]}attributeChangedCallback(t,e,s){switch(t){case"fog":this.fog=s;break;case"fog-color":this.fogColor=o(s);break;case"fog-density":this.fogDensity=parseFloat(s);break;case"fog-start":this.fogStart=parseFloat(s);break;case"fog-end":this.fogEnd=parseFloat(s)}}}customElements.define("pc-scene",B);class O extends s{constructor(){super(...arguments),this._asset="",this._center=new e.Vec3(0,.01,0),this._intensity=1,this._rotation=new e.Vec3,this._level=0,this._lighting=!1,this._scale=new e.Vec3(100,100,100),this._type="infinite",this._scene=null}connectedCallback(){this._loadSkybox(),this._onReady()}disconnectedCallback(){this._unloadSkybox()}_generateSkybox(t){if(!this._scene)return;const s=t.resource,i=e.EnvLighting.generateSkyboxCubemap(s);if(i.anisotropy=4,this._scene.skybox=i,this._lighting){const t=e.EnvLighting.generateLightingSource(s),i=e.EnvLighting.generateAtlas(t);this._scene.envAtlas=i}const n=this._scene.layers.getLayerById(e.LAYERID_SKYBOX);n&&(n.enabled="none"!==this._type),this._scene.sky.type=this._type,this._scene.sky.node.setLocalScale(this._scale),this._scene.sky.center=this._center,this._scene.skyboxIntensity=this._intensity}async _loadSkybox(){var t;const e=await(null===(t=this.closestApp)||void 0===t?void 0:t.ready()),s=null==e?void 0:e.app;if(!s)return;const i=u.get(this._asset);i&&(this._scene=s.scene,i.loaded?this._generateSkybox(i):(i.once("load",(()=>{this._generateSkybox(i)})),s.assets.load(i)))}_unloadSkybox(){var t,e;this._scene&&(null===(t=this._scene.skybox)||void 0===t||t.destroy(),this._scene.skybox=null,null===(e=this._scene.envAtlas)||void 0===e||e.destroy(),this._scene.envAtlas=null,this._scene=null)}set asset(t){this._asset=t,this.isConnected&&this._loadSkybox()}get asset(){return this._asset}set center(t){this._center=t,this._scene&&(this._scene.sky.center=this._center)}get center(){return this._center}set intensity(t){this._intensity=t,this._scene&&(this._scene.skyboxIntensity=this._intensity)}get intensity(){return this._intensity}set level(t){this._level=t,this._scene&&(this._scene.skyboxMip=this._level)}get level(){return this._level}set lighting(t){this._lighting=t}get lighting(){return this._lighting}set rotation(t){this._rotation=t,this._scene&&(this._scene.skyboxRotation=(new e.Quat).setFromEulerAngles(t))}get rotation(){return this._rotation}set scale(t){this._scale=t,this._scene&&this._scene.sky.node.setLocalScale(this._scale)}get scale(){return this._scale}set type(t){if(this._type=t,this._scene){this._scene.sky.type=this._type;const t=this._scene.layers.getLayerById(e.LAYERID_SKYBOX);t&&(t.enabled="none"!==this._type)}}get type(){return this._type}static get observedAttributes(){return["asset","center","intensity","level","lighting","rotation","scale","type"]}attributeChangedCallback(t,e,s){switch(t){case"asset":this.asset=s;break;case"center":this.center=h(s);break;case"intensity":this.intensity=parseFloat(s);break;case"level":this.level=parseInt(s,10);break;case"lighting":this.lighting=this.hasAttribute(t);break;case"rotation":this.rotation=h(s);break;case"scale":this.scale=h(s);break;case"type":this.type=s}}}customElements.define("pc-sky",O),t.AppElement=n,t.AssetElement=u,t.AsyncElement=s,t.CameraComponentElement=m,t.CollisionComponentElement=g,t.ComponentElement=d,t.ElementComponentElement=_,t.EntityElement=c,t.GSplatComponentElement=b,t.LightComponentElement=y,t.ListenerComponentElement=f,t.MaterialElement=v,t.ModelElement=R,t.ModuleElement=i,t.RenderComponentElement=C,t.RigidBodyComponentElement=w,t.SceneElement=B,t.ScreenComponentElement=k,t.ScriptComponentElement=x,t.ScriptElement=M,t.SkyElement=O,t.SoundComponentElement=D,t.SoundSlotElement=F}));
|
|
1
|
+
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("playcanvas")):"function"==typeof define&&define.amd?define(["exports","playcanvas"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).pd={},t.pc)}(this,(function(t,e){"use strict";class s extends HTMLElement{constructor(){super(),this._readyPromise=new Promise((t=>{this._readyResolve=t}))}get closestApp(){var t;return null===(t=this.parentElement)||void 0===t?void 0:t.closest("pc-app")}get closestEntity(){var t;return null===(t=this.parentElement)||void 0===t?void 0:t.closest("pc-entity")}_onReady(){this._readyResolve(),this.dispatchEvent(new CustomEvent("ready"))}ready(){return this._readyPromise.then((()=>this))}}class i extends HTMLElement{constructor(){super(),this.loadPromise=this.loadModule()}async loadModule(){const t=this.getAttribute("name"),s=this.getAttribute("glue"),i=this.getAttribute("wasm"),n=this.getAttribute("fallback");"Basis"===t?e.basisInitialize({glueUrl:s,wasmUrl:i,fallbackUrl:n}):(e.WasmModule.setConfig(t,{glueUrl:s,wasmUrl:i,fallbackUrl:n}),await new Promise((s=>{e.WasmModule.getInstance(t,(()=>s()))})))}getLoadPromise(){return this.loadPromise}}customElements.define("pc-module",i);class n extends s{constructor(){super(),this._canvas=null,this._alpha=!0,this._antialias=!0,this._depth=!0,this._stencil=!0,this._highResolution=!1,this._hierarchyReady=!1,this.app=null,this._onWindowResize=this._onWindowResize.bind(this)}async connectedCallback(){const t=this.querySelectorAll(":scope > pc-module");await Promise.all(Array.from(t).map((t=>t.getLoadPromise()))),this._canvas=document.createElement("canvas"),this.appendChild(this._canvas),this.app=new e.Application(this._canvas,{graphicsDeviceOptions:{alpha:this._alpha,antialias:this._antialias,depth:this._depth,stencil:this._stencil},keyboard:new e.Keyboard(window),mouse:new e.Mouse(this._canvas)}),this.app.graphicsDevice.maxPixelRatio=this._highResolution?window.devicePixelRatio:1,this.app.setCanvasFillMode(e.FILLMODE_FILL_WINDOW),this.app.setCanvasResolution(e.RESOLUTION_AUTO);const s=this.querySelectorAll(":scope > pc-asset");Array.from(s).forEach((t=>{t.createAsset();const e=t.asset;e&&this.app.assets.add(e)}));const i=this.querySelectorAll(":scope > pc-material");Array.from(i).forEach((t=>{t.createMaterial()}));const n=this.querySelectorAll("pc-entity");Array.from(n).forEach((t=>{t.createEntity(this.app)})),n.forEach((t=>{t.buildHierarchy(this.app)})),this._hierarchyReady=!0,this.app.preload((()=>{this.app.start(),window.addEventListener("resize",this._onWindowResize),this._onReady()}))}disconnectedCallback(){this.app&&(this.app.destroy(),this.app=null),window.removeEventListener("resize",this._onWindowResize),this._canvas&&this.contains(this._canvas)&&(this.removeChild(this._canvas),this._canvas=null)}_onWindowResize(){this.app&&this.app.resizeCanvas()}set alpha(t){this._alpha=t}get alpha(){return this._alpha}set antialias(t){this._antialias=t}get antialias(){return this._antialias}set depth(t){this._depth=t}get depth(){return this._depth}get hierarchyReady(){return this._hierarchyReady}set highResolution(t){this._highResolution=t,this.app&&(this.app.graphicsDevice.maxPixelRatio=t?window.devicePixelRatio:1)}get highResolution(){return this._highResolution}set stencil(t){this._stencil=t}get stencil(){return this._stencil}static get observedAttributes(){return["alpha","antialias","depth","stencil","high-resolution"]}attributeChangedCallback(t,e,s){switch(t){case"alpha":this.alpha="false"!==s;break;case"antialias":this.antialias="false"!==s;break;case"depth":this.depth="false"!==s;break;case"high-resolution":this.highResolution="false"!==s;break;case"stencil":this.stencil="false"!==s}}}customElements.define("pc-app",n);const a={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"},o=t=>{const s=a[t.toLowerCase()];if(s)return(new e.Color).fromString(s);if(t.startsWith("#"))return(new e.Color).fromString(t);const i=t.split(" ").map(Number);return new e.Color(i)},r=t=>{const s=t.split(" ").map(Number);return new e.Vec2(s)},h=t=>{const s=t.split(" ").map(Number);return new e.Vec3(s)},l=t=>{const s=t.split(" ").map(Number);return new e.Vec4(s)};class c extends s{constructor(){super(...arguments),this._enabled=!0,this._name="Untitled",this._position=new e.Vec3,this._rotation=new e.Vec3,this._scale=new e.Vec3(1,1,1),this._tags=[],this.entity=null}createEntity(t){this.entity=new e.Entity(this.getAttribute("name")||this._name,t);const s=this.getAttribute("enabled");s&&(this.entity.enabled="false"!==s);const i=this.getAttribute("position");i&&this.entity.setLocalPosition(h(i));const n=this.getAttribute("rotation");n&&this.entity.setLocalEulerAngles(h(n));const a=this.getAttribute("scale");a&&this.entity.setLocalScale(h(a));const o=this.getAttribute("tags");o&&this.entity.tags.add(o.split(",").map((t=>t.trim())))}buildHierarchy(t){if(!this.entity)return;const e=this.closestEntity;(null==e?void 0:e.entity)?e.entity.addChild(this.entity):t.root.addChild(this.entity),this._onReady()}connectedCallback(){const t=this.closestApp;if(t&&t.hierarchyReady){const e=t.app;this.createEntity(e),this.buildHierarchy(e);const s=this.querySelectorAll("pc-entity");s.forEach((t=>{t.createEntity(e)})),s.forEach((t=>{t.buildHierarchy(e)}))}}disconnectedCallback(){if(this.entity){this.querySelectorAll("pc-entity").forEach((t=>{t.entity=null})),this.entity.destroy(),this.entity=null}}set enabled(t){this._enabled=t,this.entity&&(this.entity.enabled=t)}get enabled(){return this._enabled}set name(t){this._name=t,this.entity&&(this.entity.name=t)}get name(){return this._name}set position(t){this._position=t,this.entity&&this.entity.setLocalPosition(this._position)}get position(){return this._position}set rotation(t){this._rotation=t,this.entity&&this.entity.setLocalEulerAngles(this._rotation)}get rotation(){return this._rotation}set scale(t){this._scale=t,this.entity&&this.entity.setLocalScale(this._scale)}get scale(){return this._scale}set tags(t){this._tags=t,this.entity&&(this.entity.tags.clear(),this.entity.tags.add(this._tags))}get tags(){return this._tags}static get observedAttributes(){return["enabled","name","position","rotation","scale","tags"]}attributeChangedCallback(t,e,s){switch(t){case"enabled":this.enabled="false"!==s;break;case"name":this.name=s;break;case"position":this.position=h(s);break;case"rotation":this.rotation=h(s);break;case"scale":this.scale=h(s);break;case"tags":this.tags=s.split(",").map((t=>t.trim()))}}}customElements.define("pc-entity",c);const p=new Map([["bin","binary"],["css","css"],["frag","shader"],["glb","container"],["glsl","shader"],["hdr","texture"],["html","html"],["jpg","texture"],["js","script"],["json","json"],["mp3","audio"],["mjs","script"],["ply","gsplat"],["png","texture"],["txt","text"],["vert","shader"],["webp","texture"]]);class u extends HTMLElement{constructor(){super(...arguments),this._preload=!1,this.asset=null}disconnectedCallback(){this.destroyAsset()}createAsset(){var t;const s=this.getAttribute("id")||"",i=this.getAttribute("src")||"";let n=this.getAttribute("type");if(!n){const e=i.split(".").pop();n=null!==(t=p.get(e||""))&&void 0!==t?t:null}n?(this.asset=new e.Asset(s,n,{url:i}),this.asset.preload=this.preload):console.warn(`Unsupported asset type: ${i}`)}destroyAsset(){this.asset&&(this.asset.unload(),this.asset=null)}set preload(t){this._preload=t,this.asset&&(this.asset.preload=t)}get preload(){return this._preload}static get(t){const e=document.querySelector(`pc-asset[id="${t}"]`);return null==e?void 0:e.asset}static get observedAttributes(){return["preload"]}attributeChangedCallback(t,e,s){"preload"===t&&(this.preload=this.hasAttribute("preload"))}}customElements.define("pc-asset",u);class d extends s{constructor(t){super(),this._enabled=!0,this._component=null,this._componentName=t}getInitialComponentData(){return{}}async addComponent(){const t=this.closestEntity;if(t){await t.ready();const e=this.getInitialComponentData();this._component=t.entity.addComponent(this._componentName,e)}}initComponent(){}async connectedCallback(){var t;await(null===(t=this.closestApp)||void 0===t?void 0:t.ready()),await this.addComponent(),this.initComponent(),this._onReady()}disconnectedCallback(){this.component&&this.component.entity&&(this._component.entity.removeComponent(this._componentName),this._component=null)}get component(){return this._component}set enabled(t){this._enabled=t,this.component&&(this.component.enabled=t)}get enabled(){return this._enabled}static get observedAttributes(){return["enabled"]}attributeChangedCallback(t,e,s){if("enabled"===t)this.enabled="false"!==s}}class f extends d{constructor(){super("audiolistener")}get component(){return super.component}}customElements.define("pc-listener",f);class m extends d{constructor(){super("camera"),this._clearColor=new e.Color(.75,.75,.75,1),this._clearColorBuffer=!0,this._clearDepthBuffer=!0,this._clearStencilBuffer=!1,this._cullFaces=!0,this._farClip=1e3,this._flipFaces=!1,this._fov=45,this._frustumCulling=!0,this._nearClip=.1,this._orthographic=!1,this._orthoHeight=10,this._priority=0,this._rect=new e.Vec4(0,0,1,1),this._scissorRect=new e.Vec4(0,0,1,1)}getInitialComponentData(){return{clearColor:this._clearColor,clearColorBuffer:this._clearColorBuffer,clearDepthBuffer:this._clearDepthBuffer,clearStencilBuffer:this._clearStencilBuffer,cullFaces:this._cullFaces,farClip:this._farClip,flipFaces:this._flipFaces,fov:this._fov,frustumCulling:this._frustumCulling,nearClip:this._nearClip,orthographic:this._orthographic,orthoHeight:this._orthoHeight,priority:this._priority,rect:this._rect,scissorRect:this._scissorRect}}get xrAvailable(){var t;const s=null===(t=this.component)||void 0===t?void 0:t.system.app.xr;return s&&s.supported&&s.isAvailable(e.XRTYPE_VR)}startXr(t,e){this.component&&this.xrAvailable&&this.component.startXr(t,e,{callback:t=>{t&&console.error(`WebXR Immersive VR failed to start: ${t.message}`)}})}endXr(){this.component&&this.component.endXr()}get component(){return super.component}set clearColor(t){this._clearColor=t,this.component&&(this.component.clearColor=t)}get clearColor(){return this._clearColor}set clearColorBuffer(t){this._clearColorBuffer=t,this.component&&(this.component.clearColorBuffer=t)}get clearColorBuffer(){return this._clearColorBuffer}set clearDepthBuffer(t){this._clearDepthBuffer=t,this.component&&(this.component.clearDepthBuffer=t)}get clearDepthBuffer(){return this._clearDepthBuffer}set clearStencilBuffer(t){this._clearStencilBuffer=t,this.component&&(this.component.clearStencilBuffer=t)}get clearStencilBuffer(){return this._clearStencilBuffer}set cullFaces(t){this._cullFaces=t,this.component&&(this.component.cullFaces=t)}get cullFaces(){return this._cullFaces}set farClip(t){this._farClip=t,this.component&&(this.component.farClip=t)}get farClip(){return this._farClip}set flipFaces(t){this._flipFaces=t,this.component&&(this.component.flipFaces=t)}get flipFaces(){return this._flipFaces}set fov(t){this._fov=t,this.component&&(this.component.fov=t)}get fov(){return this._fov}set frustumCulling(t){this._frustumCulling=t,this.component&&(this.component.frustumCulling=t)}get frustumCulling(){return this._frustumCulling}set nearClip(t){this._nearClip=t,this.component&&(this.component.nearClip=t)}get nearClip(){return this._nearClip}set orthographic(t){this._orthographic=t,this.component&&(this.component.projection=t?e.PROJECTION_ORTHOGRAPHIC:e.PROJECTION_PERSPECTIVE)}get orthographic(){return this._orthographic}set orthoHeight(t){this._orthoHeight=t,this.component&&(this.component.orthoHeight=t)}get orthoHeight(){return this._orthoHeight}set priority(t){this._priority=t,this.component&&(this.component.priority=t)}get priority(){return this._priority}set rect(t){this._rect=t,this.component&&(this.component.rect=t)}get rect(){return this._rect}set scissorRect(t){this._scissorRect=t,this.component&&(this.component.scissorRect=t)}get scissorRect(){return this._scissorRect}static get observedAttributes(){return[...super.observedAttributes,"clear-color","clear-color-buffer","clear-depth-buffer","clear-stencil-buffer","cull-faces","far-clip","flip-faces","fov","frustum-culling","near-clip","orthographic","ortho-height","priority","rect","scissor-rect"]}attributeChangedCallback(t,e,s){switch(super.attributeChangedCallback(t,e,s),t){case"clear-color":this.clearColor=o(s);break;case"clear-color-buffer":this.clearColorBuffer="false"!==s;break;case"clear-depth-buffer":this.clearDepthBuffer="false"!==s;break;case"clear-stencil-buffer":this.clearStencilBuffer="false"!==s;break;case"cull-faces":this.cullFaces="false"!==s;break;case"far-clip":this.farClip=parseFloat(s);break;case"flip-faces":this.flipFaces="true"!==s;break;case"fov":this.fov=parseFloat(s);break;case"frustum-culling":this.frustumCulling="false"!==s;break;case"near-clip":this.nearClip=parseFloat(s);break;case"orthographic":this.orthographic=this.hasAttribute("orthographic");break;case"ortho-height":this.orthoHeight=parseFloat(s);break;case"priority":this.priority=parseFloat(s);break;case"rect":this.rect=l(s);break;case"scissor-rect":this.scissorRect=l(s)}}}customElements.define("pc-camera",m);class g extends d{constructor(){super("collision"),this._angularOffset=new e.Quat,this._axis=1,this._convexHull=!1,this._halfExtents=new e.Vec3(.5,.5,.5),this._height=2,this._linearOffset=new e.Vec3,this._radius=.5,this._type="box"}getInitialComponentData(){return{axis:this._axis,angularOffset:this._angularOffset,convexHull:this._convexHull,halfExtents:this._halfExtents,height:this._height,linearOffset:this._linearOffset,radius:this._radius,type:this._type}}get component(){return super.component}set angularOffset(t){this._angularOffset=t,this.component&&(this.component.angularOffset=t)}get angularOffset(){return this._angularOffset}set axis(t){this._axis=t,this.component&&(this.component.axis=t)}get axis(){return this._axis}set convexHull(t){this._convexHull=t,this.component&&(this.component.convexHull=t)}get convexHull(){return this._convexHull}set halfExtents(t){this._halfExtents=t,this.component&&(this.component.halfExtents=t)}get halfExtents(){return this._halfExtents}set height(t){this._height=t,this.component&&(this.component.height=t)}get height(){return this._height}set linearOffset(t){this._linearOffset=t,this.component&&(this.component.linearOffset=t)}get linearOffset(){return this._linearOffset}set radius(t){this._radius=t,this.component&&(this.component.radius=t)}get radius(){return this._radius}set type(t){this._type=t,this.component&&(this.component.type=t)}get type(){return this._type}static get observedAttributes(){return[...super.observedAttributes,"angular-offset","axis","convex-hull","half-extents","height","linear-offset","radius","type"]}attributeChangedCallback(t,s,i){switch(super.attributeChangedCallback(t,s,i),t){case"angular-offset":this.angularOffset=(t=>{const[s,i,n]=t.split(" ").map(Number),a=new e.Quat;return a.setFromEulerAngles(s,i,n),a})(i);break;case"axis":this.axis=parseInt(i,10);break;case"convex-hull":this.convexHull=this.hasAttribute("convex-hull");break;case"half-extents":this.halfExtents=h(i);break;case"height":this.height=parseFloat(i);break;case"linear-offset":this.linearOffset=h(i);break;case"radius":this.radius=parseFloat(i);break;case"type":this.type=i}}}customElements.define("pc-collision",g);class _ extends d{constructor(){super("element"),this._anchor=new e.Vec4(.5,.5,.5,.5),this._asset="",this._autoWidth=!0,this._color=new e.Color(1,1,1,1),this._fontSize=32,this._lineHeight=32,this._pivot=new e.Vec2(.5,.5),this._text="",this._type="group",this._width=0,this._wrapLines=!1}initComponent(){this.component._text._material.useFog=!0}getInitialComponentData(){return{anchor:this._anchor,autoWidth:this._autoWidth,color:this._color,fontAsset:u.get(this._asset).id,fontSize:this._fontSize,lineHeight:this._lineHeight,pivot:this._pivot,type:this._type,text:this._text,width:this._width,wrapLines:this._wrapLines}}get component(){return super.component}set anchor(t){this._anchor=t,this.component&&(this.component.anchor=t)}get anchor(){return this._anchor}set asset(t){this._asset=t;const e=u.get(t);this.component&&e&&(this.component.fontAsset=e.id)}get asset(){return this._asset}set autoWidth(t){this._autoWidth=t,this.component&&(this.component.autoWidth=t)}get autoWidth(){return this._autoWidth}set color(t){this._color=t,this.component&&(this.component.color=t)}get color(){return this._color}set fontSize(t){this._fontSize=t,this.component&&(this.component.fontSize=t)}get fontSize(){return this._fontSize}set lineHeight(t){this._lineHeight=t,this.component&&(this.component.lineHeight=t)}get lineHeight(){return this._lineHeight}set pivot(t){this._pivot=t,this.component&&(this.component.pivot=t)}get pivot(){return this._pivot}set text(t){this._text=t,this.component&&(this.component.text=t)}get text(){return this._text}set type(t){this._type=t,this.component&&(this.component.type=t)}get type(){return this._type}set width(t){this._width=t,this.component&&(this.component.width=t)}get width(){return this._width}set wrapLines(t){this._wrapLines=t,this.component&&(this.component.wrapLines=t)}get wrapLines(){return this._wrapLines}static get observedAttributes(){return[...super.observedAttributes,"anchor","asset","auto-width","color","font-size","line-height","pivot","text","type","width","wrap-lines"]}attributeChangedCallback(t,e,s){switch(super.attributeChangedCallback(t,e,s),t){case"anchor":this.anchor=l(s);break;case"asset":this.asset=s;break;case"auto-width":this.autoWidth="false"!==s;break;case"color":this.color=o(s);break;case"font-size":this.fontSize=Number(s);break;case"line-height":this.lineHeight=Number(s);break;case"pivot":this.pivot=r(s);break;case"text":this.text=s;break;case"type":this.type=s;break;case"width":this.width=Number(s);break;case"wrap-lines":this.wrapLines=this.hasAttribute(t)}}}customElements.define("pc-element",_);class b extends d{constructor(){super("gsplat"),this._asset=""}getInitialComponentData(){return{asset:u.get(this._asset)}}get component(){return super.component}set asset(t){this._asset=t;const e=u.get(t);this.component&&e&&(this.component.asset=e)}get asset(){return this._asset}static get observedAttributes(){return[...super.observedAttributes,"asset"]}attributeChangedCallback(t,e,s){if(super.attributeChangedCallback(t,e,s),"asset"===t)this.asset=s}}customElements.define("pc-splat",b);class y extends d{constructor(){super("light"),this._castShadows=!1,this._color=new e.Color(1,1,1),this._innerConeAngle=40,this._intensity=1,this._normalOffsetBias=.05,this._outerConeAngle=45,this._range=10,this._shadowBias=.2,this._shadowDistance=16,this._shadowResolution=1024,this._type="directional"}getInitialComponentData(){return{castShadows:this._castShadows,color:this._color,innerConeAngle:this._innerConeAngle,intensity:this._intensity,normalOffsetBias:this._normalOffsetBias,outerConeAngle:this._outerConeAngle,range:this._range,shadowBias:this._shadowBias,shadowDistance:this._shadowDistance,shadowResolution:this._shadowResolution,type:this._type}}get component(){return super.component}set castShadows(t){this._castShadows=t,this.component&&(this.component.castShadows=t)}get castShadows(){return this._castShadows}set color(t){this._color=t,this.component&&(this.component.color=t)}get color(){return this._color}set innerConeAngle(t){this._innerConeAngle=t,this.component&&(this.component.innerConeAngle=t)}get innerConeAngle(){return this._innerConeAngle}set intensity(t){this._intensity=t,this.component&&(this.component.intensity=t)}get intensity(){return this._intensity}set normalOffsetBias(t){this._normalOffsetBias=t,this.component&&(this.component.normalOffsetBias=t)}get normalOffsetBias(){return this._normalOffsetBias}set outerConeAngle(t){this._outerConeAngle=t,this.component&&(this.component.outerConeAngle=t)}get outerConeAngle(){return this._outerConeAngle}set range(t){this._range=t,this.component&&(this.component.range=t)}get range(){return this._range}set shadowBias(t){this._shadowBias=t,this.component&&(this.component.shadowBias=t)}get shadowBias(){return this._shadowBias}set shadowDistance(t){this._shadowDistance=t,this.component&&(this.component.shadowDistance=t)}get shadowDistance(){return this._shadowDistance}set shadowResolution(t){this._shadowResolution=t,this.component&&(this.component.shadowResolution=t)}get shadowResolution(){return this._shadowResolution}set type(t){["directional","omni","spot"].includes(t)?(this._type=t,this.component&&(this.component.type=t)):console.warn(`Invalid light type '${t}', using default type '${this._type}'.`)}get type(){return this._type}static get observedAttributes(){return[...super.observedAttributes,"color","cast-shadows","intensity","inner-cone-angle","normal-offset-bias","outer-cone-angle","range","shadow-bias","shadow-distance","shadow-resolution","type"]}attributeChangedCallback(t,e,s){switch(super.attributeChangedCallback(t,e,s),t){case"color":this.color=o(s);break;case"cast-shadows":this.castShadows=this.hasAttribute("cast-shadows");break;case"inner-cone-angle":this.innerConeAngle=Number(s);break;case"intensity":this.intensity=Number(s);break;case"normal-offset-bias":this.normalOffsetBias=Number(s);break;case"outer-cone-angle":this.outerConeAngle=Number(s);break;case"range":this.range=Number(s);break;case"shadow-bias":this.shadowBias=Number(s);break;case"shadow-distance":this.shadowDistance=Number(s);break;case"shadow-resolution":this.shadowResolution=Number(s);break;case"type":this.type=s}}}customElements.define("pc-light",y);class v extends HTMLElement{constructor(){super(...arguments),this._diffuse=new e.Color(1,1,1),this._diffuseMap="",this._metalnessMap="",this._normalMap="",this._roughnessMap="",this.material=null}createMaterial(){this.material=new e.StandardMaterial,this.material.glossInvert=!0,this.material.useMetalness=!0,this.material.diffuse=this._diffuse,this.diffuseMap=this._diffuseMap,this.metalnessMap=this._metalnessMap,this.normalMap=this._normalMap,this.roughnessMap=this._roughnessMap,this.material.update()}disconnectedCallback(){this.material&&(this.material.destroy(),this.material=null)}setMap(t,e){if(this.material){const s=u.get(t);s&&(s.loaded?(this.material[e]=s.resource,this.material[e].anisotropy=4):s.once("load",(()=>{this.material[e]=s.resource,this.material[e].anisotropy=4,this.material.update()})))}}set diffuse(t){this._diffuse=t,this.material&&(this.material.diffuse=t)}get diffuse(){return this._diffuse}set diffuseMap(t){this._diffuseMap=t,this.setMap(t,"diffuseMap")}get diffuseMap(){return this._diffuseMap}set metalnessMap(t){this._metalnessMap=t,this.setMap(t,"metalnessMap")}get metalnessMap(){return this._metalnessMap}set normalMap(t){this._normalMap=t,this.setMap(t,"normalMap")}get normalMap(){return this._normalMap}set roughnessMap(t){this._roughnessMap=t,this.setMap(t,"glossMap")}get roughnessMap(){return this._roughnessMap}static get(t){const e=document.querySelector(`pc-material[id="${t}"]`);return null==e?void 0:e.material}static get observedAttributes(){return["diffuse","diffuse-map","metalness-map","normal-map","roughness-map"]}attributeChangedCallback(t,e,s){switch(t){case"diffuse":this.diffuse=o(s);break;case"diffuse-map":this.diffuseMap=s;break;case"metalness-map":this.metalnessMap=s;break;case"normal-map":this.normalMap=s;break;case"roughness-map":this.roughnessMap=s}}}customElements.define("pc-material",v);class C extends d{constructor(){super("render"),this._castShadows=!0,this._material="",this._receiveShadows=!0,this._type="asset"}getInitialComponentData(){return{type:this._type,castShadows:this._castShadows,material:v.get(this._material),receiveShadows:this._receiveShadows}}get component(){return super.component}set type(t){this._type=t,this.component&&(this.component.type=t)}get type(){return this._type}set castShadows(t){this._castShadows=t,this.component&&(this.component.castShadows=t)}get castShadows(){return this._castShadows}set material(t){this._material=t,this.component&&(this.component.material=v.get(t))}get material(){return this._material}set receiveShadows(t){this._receiveShadows=t,this.component&&(this.component.receiveShadows=t)}get receiveShadows(){return this._receiveShadows}static get observedAttributes(){return[...super.observedAttributes,"cast-shadows","material","receive-shadows","type"]}attributeChangedCallback(t,e,s){switch(super.attributeChangedCallback(t,e,s),t){case"cast-shadows":this.castShadows="false"!==s;break;case"material":this.material=s;break;case"receive-shadows":this.receiveShadows="false"!==s;break;case"type":this.type=s}}}customElements.define("pc-render",C);class w extends d{constructor(){super("rigidbody"),this._angularDamping=0,this._angularFactor=new e.Vec3(1,1,1),this._friction=.5,this._linearDamping=0,this._linearFactor=new e.Vec3(1,1,1),this._mass=1,this._restitution=0,this._rollingFriction=0,this._type="static"}getInitialComponentData(){return{angularDamping:this._angularDamping,angularFactor:this._angularFactor,friction:this._friction,linearDamping:this._linearDamping,linearFactor:this._linearFactor,mass:this._mass,restitution:this._restitution,rollingFriction:this._rollingFriction,type:this._type}}get component(){return super.component}set angularDamping(t){this._angularDamping=t,this.component&&(this.component.angularDamping=t)}get angularDamping(){return this._angularDamping}set angularFactor(t){this._angularFactor=t,this.component&&(this.component.angularFactor=t)}get angularFactor(){return this._angularFactor}set friction(t){this._friction=t,this.component&&(this.component.friction=t)}get friction(){return this._friction}set linearDamping(t){this._linearDamping=t,this.component&&(this.component.linearDamping=t)}get linearDamping(){return this._linearDamping}set linearFactor(t){this._linearFactor=t,this.component&&(this.component.linearFactor=t)}get linearFactor(){return this._linearFactor}set mass(t){this._mass=t,this.component&&(this.component.mass=t)}get mass(){return this._mass}set restitution(t){this._restitution=t,this.component&&(this.component.restitution=t)}get restitution(){return this._restitution}set rollingFriction(t){this._rollingFriction=t,this.component&&(this.component.rollingFriction=t)}get rollingFriction(){return this._rollingFriction}set type(t){this._type=t,this.component&&(this.component.type=t)}get type(){return this._type}static get observedAttributes(){return[...super.observedAttributes,"angular-damping","angular-factor","friction","linear-damping","linear-factor","mass","restitution","rolling-friction","type"]}attributeChangedCallback(t,e,s){switch(super.attributeChangedCallback(t,e,s),t){case"angular-damping":this.angularDamping=parseFloat(s);break;case"angular-factor":this.angularFactor=h(s);break;case"friction":this.friction=parseFloat(s);break;case"linear-damping":this.linearDamping=parseFloat(s);break;case"linear-factor":this.linearFactor=h(s);break;case"mass":this.mass=parseFloat(s);break;case"restitution":this.restitution=parseFloat(s);break;case"rolling-friction":this.rollingFriction=parseFloat(s);break;case"type":this.type=s}}}customElements.define("pc-rigidbody",w);class k extends d{constructor(){super("screen"),this._screenSpace=!1,this._resolution=new e.Vec2(640,320),this._referenceResolution=new e.Vec2(640,320),this._priority=0,this._blend=!1,this._scaleBlend=.5}getInitialComponentData(){return{priority:this._priority,referenceResolution:this._referenceResolution,resolution:this._resolution,scaleBlend:this._scaleBlend,scaleMode:this._blend?e.SCALEMODE_BLEND:e.SCALEMODE_NONE,screenSpace:this._screenSpace}}get component(){return super.component}set priority(t){this._priority=t,this.component&&(this.component.priority=this._priority)}get priority(){return this._priority}set referenceResolution(t){this._referenceResolution=t,this.component&&(this.component.referenceResolution=this._referenceResolution)}get referenceResolution(){return this._referenceResolution}set resolution(t){this._resolution=t,this.component&&(this.component.resolution=this._resolution)}get resolution(){return this._resolution}set scaleBlend(t){this._scaleBlend=t,this.component&&(this.component.scaleBlend=this._scaleBlend)}get scaleBlend(){return this._scaleBlend}set blend(t){this._blend=t,this.component&&(this.component.scaleMode=this._blend?e.SCALEMODE_BLEND:e.SCALEMODE_NONE)}get blend(){return this._blend}set screenSpace(t){this._screenSpace=t,this.component&&(this.component.screenSpace=this._screenSpace)}get screenSpace(){return this._screenSpace}static get observedAttributes(){return[...super.observedAttributes,"blend","screen-space","resolution","reference-resolution","priority","scale-blend"]}attributeChangedCallback(t,e,s){switch(super.attributeChangedCallback(t,e,s),t){case"priority":this.priority=parseInt(s,10);break;case"reference-resolution":this.referenceResolution=r(s);break;case"resolution":this.resolution=r(s);break;case"scale-blend":this.scaleBlend=parseFloat(s);break;case"blend":this.blend=this.hasAttribute("blend");break;case"screen-space":this.screenSpace=this.hasAttribute("screen-space")}}}customElements.define("pc-screen",k);const S=new e.Vec2,A=new e.Vec3,E=new e.Vec4;class x extends d{constructor(){super("script"),this.observer=new MutationObserver(this.handleMutations.bind(this)),this.observer.observe(this,{childList:!0}),this.addEventListener("scriptattributeschange",this.handleScriptAttributesChange.bind(this)),this.addEventListener("scriptenablechange",this.handleScriptEnableChange.bind(this))}initComponent(){this.querySelectorAll(":scope > pc-script").forEach((t=>{const e=t.getAttribute("name"),s=t.getAttribute("attributes");e&&this.createScript(e,s)}))}applyAttributes(t,s){try{const i=s?JSON.parse(s):{},n=(t,s,i)=>{if("string"==typeof i&&i.startsWith("asset:")){const e=i.slice(6),n=document.querySelector(`pc-asset#${e}`);if(n)return void(t[s]=n.asset)}if(Array.isArray(i)){if(t[s]instanceof e.Vec2)return void(t[s]=S.set(i[0],i[1]));if(t[s]instanceof e.Vec3)return void(t[s]=A.set(i[0],i[1],i[2]));if(t[s]instanceof e.Vec4)return void(t[s]=E.set(i[0],i[1],i[2],i[3]))}if(i&&"object"==typeof i&&!Array.isArray(i)){t[s]&&"object"==typeof t[s]||(t[s]={});for(const e in i)n(t[s],e,i[e])}else t[s]=i};for(const e in i)n(t,e,i[e])}catch(t){console.error(`Error parsing attributes JSON string ${s}:`,t)}}handleScriptAttributesChange(t){const e=t.target.getAttribute("name");if(!e||!this.component)return;const s=this.component.get(e);s&&this.applyAttributes(s,t.detail.attributes)}handleScriptEnableChange(t){const e=t.target.getAttribute("name");if(!e||!this.component)return;const s=this.component.get(e);s&&(s.enabled=t.detail.enabled)}createScript(t,e){return this.component?(this.component.on(`create:${t}`,(t=>{this.applyAttributes(t,e)})),this.component.create(t)):null}destroyScript(t){this.component&&this.component.destroy(t)}handleMutations(t){for(const e of t)e.addedNodes.forEach((t=>{if(t instanceof HTMLElement&&"pc-script"===t.tagName.toLowerCase()){const e=t.getAttribute("name"),s=t.getAttribute("attributes");e&&this.createScript(e,s)}})),e.removedNodes.forEach((t=>{if(t instanceof HTMLElement&&"pc-script"===t.tagName.toLowerCase()){const e=t.getAttribute("name");e&&this.destroyScript(e)}}))}disconnectedCallback(){var t;this.observer.disconnect(),null===(t=super.disconnectedCallback)||void 0===t||t.call(this)}get component(){return super.component}}customElements.define("pc-scripts",x);class M extends HTMLElement{constructor(){super(...arguments),this._attributes="{}",this._enabled=!0,this._name=""}set scriptAttributes(t){this._attributes=t,this.dispatchEvent(new CustomEvent("scriptattributeschange",{detail:{attributes:t},bubbles:!0}))}get scriptAttributes(){return this._attributes}set enabled(t){this._enabled=t,this.dispatchEvent(new CustomEvent("scriptenablechange",{detail:{enabled:t},bubbles:!0}))}get enabled(){return this._enabled}set name(t){this._name=t}get name(){return this._name}static get observedAttributes(){return["attributes","enabled","name"]}attributeChangedCallback(t,e,s){switch(t){case"attributes":this.scriptAttributes=s;break;case"enabled":this.enabled="false"!==s;break;case"name":this.name=s}}}customElements.define("pc-script",M);class F extends d{constructor(){super("sound"),this._distanceModel="linear",this._maxDistance=1e4,this._pitch=1,this._positional=!1,this._refDistance=1,this._rollOffFactor=1,this._volume=1}getInitialComponentData(){return{distanceModel:this._distanceModel,maxDistance:this._maxDistance,pitch:this._pitch,positional:this._positional,refDistance:this._refDistance,rollOffFactor:this._rollOffFactor,volume:this._volume}}get component(){return super.component}set distanceModel(t){this._distanceModel=t,this.component&&(this.component.distanceModel=t)}get distanceModel(){return this._distanceModel}set maxDistance(t){this._maxDistance=t,this.component&&(this.component.maxDistance=t)}get maxDistance(){return this._maxDistance}set pitch(t){this._pitch=t,this.component&&(this.component.pitch=t)}get pitch(){return this._pitch}set positional(t){this._positional=t,this.component&&(this.component.positional=t)}get positional(){return this._positional}set refDistance(t){this._refDistance=t,this.component&&(this.component.refDistance=t)}get refDistance(){return this._refDistance}set rollOffFactor(t){this._rollOffFactor=t,this.component&&(this.component.rollOffFactor=t)}get rollOffFactor(){return this._rollOffFactor}set volume(t){this._volume=t,this.component&&(this.component.volume=t)}get volume(){return this._volume}static get observedAttributes(){return[...super.observedAttributes,"distance-model","max-distance","pitch","positional","ref-distance","roll-off-factor","volume"]}attributeChangedCallback(t,e,s){switch(super.attributeChangedCallback(t,e,s),t){case"distance-model":this.distanceModel=s;break;case"max-distance":this.maxDistance=parseFloat(s);break;case"pitch":this.pitch=parseFloat(s);break;case"positional":this.positional=this.hasAttribute("positional");break;case"ref-distance":this.refDistance=parseFloat(s);break;case"roll-off-factor":this.rollOffFactor=parseFloat(s);break;case"volume":this.volume=parseFloat(s)}}}customElements.define("pc-sounds",F);class D extends s{constructor(){super(...arguments),this._asset="",this._autoPlay=!1,this._duration=null,this._loop=!1,this._name="",this._overlap=!1,this._pitch=1,this._startTime=0,this._volume=1,this.soundSlot=null}async connectedCallback(){var t;await(null===(t=this.soundElement)||void 0===t?void 0:t.ready());const e={autoPlay:this._autoPlay,loop:this._loop,overlap:this._overlap,pitch:this._pitch,startTime:this._startTime,volume:this._volume};this._duration&&(e.duration=this._duration),this.soundSlot=this.soundElement.component.addSlot(this._name,e),this.asset=this._asset,this.soundSlot.play(),this._onReady()}disconnectedCallback(){this.soundElement.component.removeSlot(this._name)}get soundElement(){const t=this.parentElement;return t instanceof F?t:(console.warn("pc-sound-slot must be a direct child of a pc-sound element"),null)}set asset(t){var e;if(this._asset=t,this.soundSlot){const s=null===(e=u.get(t))||void 0===e?void 0:e.id;s&&(this.soundSlot.asset=s)}}get asset(){return this._asset}set autoPlay(t){this._autoPlay=t,this.soundSlot&&(this.soundSlot.autoPlay=t)}get autoPlay(){return this._autoPlay}set duration(t){this._duration=t,this.soundSlot&&(this.soundSlot.duration=t)}get duration(){return this._duration}set loop(t){this._loop=t,this.soundSlot&&(this.soundSlot.loop=t)}get loop(){return this._loop}set name(t){this._name=t,this.soundSlot&&(this.soundSlot.name=t)}get name(){return this._name}set overlap(t){this._overlap=t,this.soundSlot&&(this.soundSlot.overlap=t)}get overlap(){return this._overlap}set pitch(t){this._pitch=t,this.soundSlot&&(this.soundSlot.pitch=t)}get pitch(){return this._pitch}set startTime(t){this._startTime=t,this.soundSlot&&(this.soundSlot.startTime=t)}get startTime(){return this._startTime}set volume(t){this._volume=t,this.soundSlot&&(this.soundSlot.volume=t)}get volume(){return this._volume}static get observedAttributes(){return["asset","autoPlay","duration","loop","name","overlap","pitch","startTime","volume"]}attributeChangedCallback(t,e,s){switch(t){case"asset":this.asset=s;break;case"duration":this.duration=parseFloat(s);break;case"loop":this.loop=this.hasAttribute("loop");break;case"name":this.name=s;break;case"overlap":this.overlap=this.hasAttribute("overlap");break;case"pitch":this.pitch=parseFloat(s);break;case"startTime":this.startTime=parseFloat(s);break;case"volume":this.volume=parseFloat(s)}}}customElements.define("pc-sound",D);class R extends s{constructor(){super(...arguments),this._asset="",this._entity=null}connectedCallback(){this._loadModel(),this._onReady()}disconnectedCallback(){this._unloadModel()}_instantiate(t){this._entity=t.instantiateRenderEntity(),t.animations.length>0&&(this._entity.addComponent("anim"),this._entity.anim.assignAnimation("animation",t.animations[0].resource));const e=this.closestEntity;if(e)e.ready().then((()=>{e.entity.addChild(this._entity)}));else{const t=this.closestApp;t&&t.ready().then((()=>{t.app.root.addChild(this._entity)}))}}async _loadModel(){var t;this._unloadModel();const e=await(null===(t=this.closestApp)||void 0===t?void 0:t.ready()),s=null==e?void 0:e.app,i=u.get(this._asset);i&&(i.loaded?this._instantiate(i.resource):(i.once("load",(()=>{this._instantiate(i.resource)})),s.assets.load(i)))}_unloadModel(){var t;null===(t=this._entity)||void 0===t||t.destroy(),this._entity=null}set asset(t){this._asset=t,this.isConnected&&this._loadModel()}get asset(){return this._asset}static get observedAttributes(){return["asset"]}attributeChangedCallback(t,e,s){if("asset"===t)this.asset=s}}customElements.define("pc-model",R);class B extends s{constructor(){super(...arguments),this._fog="none",this._fogColor=new e.Color(1,1,1),this._fogDensity=0,this._fogStart=0,this._fogEnd=1e3,this.scene=null}async connectedCallback(){var t;await(null===(t=this.closestApp)||void 0===t?void 0:t.ready()),this.scene=this.closestApp.app.scene,this.updateSceneSettings(),this._onReady()}updateSceneSettings(){this.scene&&(this.scene.fog.type=this._fog,this.scene.fog.color=this._fogColor,this.scene.fog.density=this._fogDensity,this.scene.fog.start=this._fogStart,this.scene.fog.end=this._fogEnd)}set fog(t){this._fog=t,this.scene&&(this.scene.fog.type=t)}get fog(){return this._fog}set fogColor(t){this._fogColor=t,this.scene&&(this.scene.fog.color=t)}get fogColor(){return this._fogColor}set fogDensity(t){this._fogDensity=t,this.scene&&(this.scene.fog.density=t)}get fogDensity(){return this._fogDensity}set fogStart(t){this._fogStart=t,this.scene&&(this.scene.fog.start=t)}get fogStart(){return this._fogStart}set fogEnd(t){this._fogEnd=t,this.scene&&(this.scene.fog.end=t)}get fogEnd(){return this._fogEnd}static get observedAttributes(){return["fog","fog-color","fog-density","fog-start","fog-end"]}attributeChangedCallback(t,e,s){switch(t){case"fog":this.fog=s;break;case"fog-color":this.fogColor=o(s);break;case"fog-density":this.fogDensity=parseFloat(s);break;case"fog-start":this.fogStart=parseFloat(s);break;case"fog-end":this.fogEnd=parseFloat(s)}}}customElements.define("pc-scene",B);class O extends s{constructor(){super(...arguments),this._asset="",this._center=new e.Vec3(0,.01,0),this._intensity=1,this._rotation=new e.Vec3,this._level=0,this._lighting=!1,this._scale=new e.Vec3(100,100,100),this._type="infinite",this._scene=null}connectedCallback(){this._loadSkybox(),this._onReady()}disconnectedCallback(){this._unloadSkybox()}_generateSkybox(t){if(!this._scene)return;const s=t.resource,i=e.EnvLighting.generateSkyboxCubemap(s);if(i.anisotropy=4,this._scene.skybox=i,this._lighting){const t=e.EnvLighting.generateLightingSource(s),i=e.EnvLighting.generateAtlas(t);this._scene.envAtlas=i}const n=this._scene.layers.getLayerById(e.LAYERID_SKYBOX);n&&(n.enabled="none"!==this._type),this._scene.sky.type=this._type,this._scene.sky.node.setLocalScale(this._scale),this._scene.sky.center=this._center,this._scene.skyboxIntensity=this._intensity}async _loadSkybox(){var t;const e=await(null===(t=this.closestApp)||void 0===t?void 0:t.ready()),s=null==e?void 0:e.app;if(!s)return;const i=u.get(this._asset);i&&(this._scene=s.scene,i.loaded?this._generateSkybox(i):(i.once("load",(()=>{this._generateSkybox(i)})),s.assets.load(i)))}_unloadSkybox(){var t,e;this._scene&&(null===(t=this._scene.skybox)||void 0===t||t.destroy(),this._scene.skybox=null,null===(e=this._scene.envAtlas)||void 0===e||e.destroy(),this._scene.envAtlas=null,this._scene=null)}set asset(t){this._asset=t,this.isConnected&&this._loadSkybox()}get asset(){return this._asset}set center(t){this._center=t,this._scene&&(this._scene.sky.center=this._center)}get center(){return this._center}set intensity(t){this._intensity=t,this._scene&&(this._scene.skyboxIntensity=this._intensity)}get intensity(){return this._intensity}set level(t){this._level=t,this._scene&&(this._scene.skyboxMip=this._level)}get level(){return this._level}set lighting(t){this._lighting=t}get lighting(){return this._lighting}set rotation(t){this._rotation=t,this._scene&&(this._scene.skyboxRotation=(new e.Quat).setFromEulerAngles(t))}get rotation(){return this._rotation}set scale(t){this._scale=t,this._scene&&this._scene.sky.node.setLocalScale(this._scale)}get scale(){return this._scale}set type(t){if(this._type=t,this._scene){this._scene.sky.type=this._type;const t=this._scene.layers.getLayerById(e.LAYERID_SKYBOX);t&&(t.enabled="none"!==this._type)}}get type(){return this._type}static get observedAttributes(){return["asset","center","intensity","level","lighting","rotation","scale","type"]}attributeChangedCallback(t,e,s){switch(t){case"asset":this.asset=s;break;case"center":this.center=h(s);break;case"intensity":this.intensity=parseFloat(s);break;case"level":this.level=parseInt(s,10);break;case"lighting":this.lighting=this.hasAttribute(t);break;case"rotation":this.rotation=h(s);break;case"scale":this.scale=h(s);break;case"type":this.type=s}}}customElements.define("pc-sky",O),t.AppElement=n,t.AssetElement=u,t.AsyncElement=s,t.CameraComponentElement=m,t.CollisionComponentElement=g,t.ComponentElement=d,t.ElementComponentElement=_,t.EntityElement=c,t.GSplatComponentElement=b,t.LightComponentElement=y,t.ListenerComponentElement=f,t.MaterialElement=v,t.ModelElement=R,t.ModuleElement=i,t.RenderComponentElement=C,t.RigidBodyComponentElement=w,t.SceneElement=B,t.ScreenComponentElement=k,t.ScriptComponentElement=x,t.ScriptElement=M,t.SkyElement=O,t.SoundComponentElement=F,t.SoundSlotElement=D}));
|
|
2
2
|
//# sourceMappingURL=pwc.min.js.map
|
package/dist/pwc.min.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pwc.min.js","sources":["../src/async-element.ts","../src/module.ts","../src/app.ts","../src/colors.ts","../src/utils.ts","../src/entity.ts","../src/asset.ts","../src/components/component.ts","../src/components/listener-component.ts","../src/components/camera-component.ts","../src/components/collision-component.ts","../src/components/element-component.ts","../src/components/gsplat-component.ts","../src/components/light-component.ts","../src/material.ts","../src/components/render-component.ts","../src/components/rigidbody-component.ts","../src/components/screen-component.ts","../src/components/script-component.ts","../src/components/script.ts","../src/components/sound-component.ts","../src/components/sound-slot.ts","../src/model.ts","../src/scene.ts","../src/sky.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["AsyncElement","HTMLElement","constructor","super","this","_readyPromise","Promise","resolve","_readyResolve","closestApp","_a","parentElement","closest","closestEntity","_onReady","dispatchEvent","CustomEvent","ready","then","ModuleElement","loadPromise","loadModule","name","getAttribute","glue","wasm","fallback","basisInitialize","glueUrl","wasmUrl","fallbackUrl","WasmModule","setConfig","getInstance","getLoadPromise","customElements","define","AppElement","_canvas","_alpha","_antialias","_depth","_stencil","_highResolution","app","_onWindowResize","bind","connectedCallback","moduleElements","querySelectorAll","all","Array","from","map","module","document","createElement","appendChild","Application","graphicsDeviceOptions","alpha","antialias","depth","stencil","keyboard","Keyboard","window","mouse","Mouse","graphicsDevice","maxPixelRatio","devicePixelRatio","setCanvasFillMode","FILLMODE_FILL_WINDOW","setCanvasResolution","RESOLUTION_AUTO","assetElements","forEach","assetElement","createAsset","asset","assets","add","materialElements","materialElement","createMaterial","preload","start","addEventListener","disconnectedCallback","destroy","removeEventListener","contains","removeChild","resizeCanvas","value","highResolution","observedAttributes","attributeChangedCallback","_oldValue","newValue","CSS_COLORS","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","green","greenyellow","grey","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen","parseColor","hexColor","toLowerCase","Color","fromString","startsWith","components","split","Number","parseVec2","Vec2","parseVec3","Vec3","parseVec4","Vec4","EntityElement","_enabled","_name","_position","_rotation","_scale","_tags","entity","Entity","enabledAttr","nameAttr","positionAttr","rotationAttr","scaleAttr","tagsAttr","enabled","position","rotation","scale","tags","tag","trim","addChild","root","child","setLocalPosition","setLocalEulerAngles","setLocalScale","clear","extToType","Map","AssetElement","_preload","destroyAsset","id","src","type","ext","pop","get","Asset","url","console","warn","unload","querySelector","_newValue","hasAttribute","ComponentElement","componentName","_component","_componentName","getInitialComponentData","addComponent","entityElement","data","initComponent","component","removeComponent","ListenerComponentElement","CameraComponentElement","_clearColor","_clearColorBuffer","_clearDepthBuffer","_clearStencilBuffer","_cullFaces","_farClip","_flipFaces","_fov","_frustumCulling","_nearClip","_orthographic","_orthoHeight","_priority","_rect","_scissorRect","clearColor","clearColorBuffer","clearDepthBuffer","clearStencilBuffer","cullFaces","farClip","flipFaces","fov","frustumCulling","nearClip","orthographic","orthoHeight","priority","rect","scissorRect","xrAvailable","xrManager","system","xr","supported","isAvailable","XRTYPE_VR","startXr","space","callback","err","error","message","endXr","projection","PROJECTION_ORTHOGRAPHIC","PROJECTION_PERSPECTIVE","parseFloat","CollisionComponentElement","_angularOffset","Quat","_axis","_convexHull","_halfExtents","_height","_linearOffset","_radius","_type","axis","angularOffset","convexHull","halfExtents","height","linearOffset","radius","x","y","z","q","setFromEulerAngles","parseQuat","parseInt","ElementComponentElement","_anchor","_asset","_autoWidth","_color","_fontSize","_lineHeight","_pivot","_text","_width","_wrapLines","_material","useFog","anchor","autoWidth","color","fontAsset","fontSize","lineHeight","pivot","text","width","wrapLines","GSplatComponentElement","LightComponentElement","_castShadows","_innerConeAngle","_intensity","_normalOffsetBias","_outerConeAngle","_range","_shadowBias","_shadowDistance","_shadowResolution","castShadows","innerConeAngle","intensity","normalOffsetBias","outerConeAngle","range","shadowBias","shadowDistance","shadowResolution","includes","MaterialElement","_diffuse","_diffuseMap","_metalnessMap","_normalMap","_roughnessMap","material","StandardMaterial","glossInvert","useMetalness","diffuse","diffuseMap","metalnessMap","normalMap","roughnessMap","update","setMap","property","loaded","resource","anisotropy","once","RenderComponentElement","_receiveShadows","receiveShadows","RigidBodyComponentElement","_angularDamping","_angularFactor","_friction","_linearDamping","_linearFactor","_mass","_restitution","_rollingFriction","angularDamping","angularFactor","friction","linearDamping","linearFactor","mass","restitution","rollingFriction","ScreenComponentElement","_screenSpace","_resolution","_referenceResolution","_blend","_scaleBlend","referenceResolution","resolution","scaleBlend","scaleMode","SCALEMODE_BLEND","SCALEMODE_NONE","screenSpace","blend","tmpV2","tmpV3","tmpV4","ScriptComponentElement","observer","MutationObserver","handleMutations","observe","childList","handleScriptAttributesChange","handleScriptEnableChange","scriptElement","scriptName","attributes","createScript","applyAttributes","script","attributesObject","JSON","parse","applyValue","target","key","assetId","slice","isArray","set","nestedKey","event","detail","on","create","destroyScript","mutations","mutation","addedNodes","node","tagName","removedNodes","disconnect","call","ScriptElement","_attributes","scriptAttributes","bubbles","SoundComponentElement","_distanceModel","_maxDistance","_pitch","_positional","_refDistance","_rollOffFactor","_volume","distanceModel","maxDistance","pitch","positional","refDistance","rollOffFactor","volume","SoundSlotElement","_autoPlay","_duration","_loop","_overlap","_startTime","soundSlot","soundElement","options","autoPlay","loop","overlap","startTime","duration","addSlot","play","removeSlot","ModelElement","_entity","_loadModel","_unloadModel","_instantiate","container","instantiateRenderEntity","animations","length","anim","assignAnimation","parentEntityElement","appElement","load","isConnected","SceneElement","_fog","_fogColor","_fogDensity","_fogStart","_fogEnd","scene","updateSceneSettings","rendering","fog","fogColor","fogDensity","fogStart","fogEnd","SkyElement","_center","_level","_lighting","_scene","_loadSkybox","_unloadSkybox","_generateSkybox","source","skybox","EnvLighting","generateSkyboxCubemap","lighting","generateLightingSource","envAtlas","generateAtlas","layer","layers","getLayerById","LAYERID_SKYBOX","sky","center","skyboxIntensity","_b","level","skyboxMip","skyboxRotation"],"mappings":"oRAMA,MAAMA,UAAqBC,YAKvB,WAAAC,GACIC,QACAC,KAAKC,cAAgB,IAAIC,SAAeC,IACpCH,KAAKI,cAAgBD,CAAO,IAIpC,cAAIE,SACA,eAAOC,EAAAN,KAAKO,oCAAeC,QAAQ,UAGvC,iBAAIC,SACA,eAAOH,EAAAN,KAAKO,oCAAeC,QAAQ,aAO7B,QAAAE,GACNV,KAAKI,gBACLJ,KAAKW,cAAc,IAAIC,YAAY,UAOvC,KAAAC,GACI,OAAOb,KAAKC,cAAca,MAAK,IAAMd,QCtC7C,MAAMe,UAAsBlB,YAGxB,WAAAC,GACIC,QACAC,KAAKgB,YAAchB,KAAKiB,aAGpB,gBAAMA,GACV,MAAMC,EAAOlB,KAAKmB,aAAa,QACzBC,EAAOpB,KAAKmB,aAAa,QACzBE,EAAOrB,KAAKmB,aAAa,QACzBG,EAAWtB,KAAKmB,aAAa,YAEtB,UAATD,EACAK,kBAAgB,CACZC,QAASJ,EACTK,QAASJ,EACTK,YAAaJ,KAGjBK,EAAUA,WAACC,UAAUV,EAAM,CACvBM,QAASJ,EACTK,QAASJ,EACTK,YAAaJ,UAGX,IAAIpB,SAAeC,IACrBwB,EAAAA,WAAWE,YAAYX,GAAM,IAAMf,KAAU,KAKlD,cAAA2B,GACH,OAAO9B,KAAKgB,aAIpBe,eAAeC,OAAO,YAAajB,GC9BnC,MAAMkB,UAAmBrC,EAwBrB,WAAAE,GACIC,QArBIC,KAAOkC,QAA6B,KAEpClC,KAAMmC,QAAG,EAETnC,KAAUoC,YAAG,EAEbpC,KAAMqC,QAAG,EAETrC,KAAQsC,UAAG,EAEXtC,KAAeuC,iBAAG,EAK1BvC,KAAGwC,IAAuB,KAStBxC,KAAKyC,gBAAkBzC,KAAKyC,gBAAgBC,KAAK1C,MAGrD,uBAAM2C,GAEF,MAAMC,EAAiB5C,KAAK6C,iBAAgC,4BAGtD3C,QAAQ4C,IAAIC,MAAMC,KAAKJ,GAAgBK,KAAIC,GAAUA,EAAOpB,oBAGlE9B,KAAKkC,QAAUiB,SAASC,cAAc,UACtCpD,KAAKqD,YAAYrD,KAAKkC,SAGtBlC,KAAKwC,IAAM,IAAIc,cAAYtD,KAAKkC,QAAS,CACrCqB,sBAAuB,CACnBC,MAAOxD,KAAKmC,OACZsB,UAAWzD,KAAKoC,WAChBsB,MAAO1D,KAAKqC,OACZsB,QAAS3D,KAAKsC,UAElBsB,SAAU,IAAIC,EAAQA,SAACC,QACvBC,MAAO,IAAIC,QAAMhE,KAAKkC,WAE1BlC,KAAKwC,IAAIyB,eAAeC,cAAgBlE,KAAKuC,gBAAkBuB,OAAOK,iBAAmB,EAEzFnE,KAAKwC,IAAI4B,kBAAkBC,wBAC3BrE,KAAKwC,IAAI8B,oBAAoBC,mBAG7B,MAAMC,EAAgBxE,KAAK6C,iBAA+B,qBAC1DE,MAAMC,KAAKwB,GAAeC,SAASC,IAC/BA,EAAaC,cACb,MAAMC,EAAQF,EAAaE,MACvBA,GACA5E,KAAKwC,IAAKqC,OAAOC,IAAIF,MAK7B,MAAMG,EAAmB/E,KAAK6C,iBAAkC,wBAChEE,MAAMC,KAAK+B,GAAkBN,SAASO,IAClCA,EAAgBC,gBAAgB,IAIpCjF,KAAKwC,IAAI0C,SAAQ,KAEblF,KAAKwC,IAAK2C,QAGVrB,OAAOsB,iBAAiB,SAAUpF,KAAKyC,iBAEvCzC,KAAKU,UAAU,IAIvB,oBAAA2E,GAEQrF,KAAKwC,MACLxC,KAAKwC,IAAI8C,UACTtF,KAAKwC,IAAM,MAIfsB,OAAOyB,oBAAoB,SAAUvF,KAAKyC,iBAGtCzC,KAAKkC,SAAWlC,KAAKwF,SAASxF,KAAKkC,WACnClC,KAAKyF,YAAYzF,KAAKkC,SACtBlC,KAAKkC,QAAU,MAIvB,eAAAO,GACQzC,KAAKwC,KACLxC,KAAKwC,IAAIkD,eAQjB,SAAIlC,CAAMmC,GACN3F,KAAKmC,OAASwD,EAOlB,SAAInC,GACA,OAAOxD,KAAKmC,OAOhB,aAAIsB,CAAUkC,GACV3F,KAAKoC,WAAauD,EAOtB,aAAIlC,GACA,OAAOzD,KAAKoC,WAOhB,SAAIsB,CAAMiC,GACN3F,KAAKqC,OAASsD,EAOlB,SAAIjC,GACA,OAAO1D,KAAKqC,OAQhB,kBAAIuD,CAAeD,GACf3F,KAAKuC,gBAAkBoD,EACnB3F,KAAKwC,MACLxC,KAAKwC,IAAIyB,eAAeC,cAAgByB,EAAQ7B,OAAOK,iBAAmB,GAQlF,kBAAIyB,GACA,OAAO5F,KAAKuC,gBAOhB,WAAIoB,CAAQgC,GACR3F,KAAKsC,SAAWqD,EAOpB,WAAIhC,GACA,OAAO3D,KAAKsC,SAGhB,6BAAWuD,GACP,MAAO,CAAC,QAAS,YAAa,QAAS,UAAW,mBAGtD,wBAAAC,CAAyB5E,EAAc6E,EAAmBC,GACtD,OAAQ9E,GACJ,IAAK,QACDlB,KAAKwD,MAAqB,UAAbwC,EACb,MACJ,IAAK,YACDhG,KAAKyD,UAAyB,UAAbuC,EACjB,MACJ,IAAK,QACDhG,KAAK0D,MAAqB,UAAbsC,EACb,MACJ,IAAK,kBACDhG,KAAK4F,eAA8B,UAAbI,EACtB,MACJ,IAAK,UACDhG,KAAK2D,QAAuB,UAAbqC,IAM/BjE,eAAeC,OAAO,SAAUC,GCpOzB,MAAMgE,EAAqC,CAC9CC,UAAW,UACXC,aAAc,UACdC,KAAM,UACNC,WAAY,UACZC,MAAO,UACPC,MAAO,UACPC,OAAQ,UACRC,MAAO,UACPC,eAAgB,UAChBC,KAAM,UACNC,WAAY,UACZC,MAAO,UACPC,UAAW,UACXC,UAAW,UACXC,WAAY,UACZC,UAAW,UACXC,MAAO,UACPC,eAAgB,UAChBC,SAAU,UACVC,QAAS,UACTC,KAAM,UACNC,SAAU,UACVC,SAAU,UACVC,cAAe,UACfC,SAAU,UACVC,UAAW,UACXC,SAAU,UACVC,UAAW,UACXC,YAAa,UACbC,eAAgB,UAChBC,WAAY,UACZC,WAAY,UACZC,QAAS,UACTC,WAAY,UACZC,aAAc,UACdC,cAAe,UACfC,cAAe,UACfC,cAAe,UACfC,cAAe,UACfC,WAAY,UACZC,SAAU,UACVC,YAAa,UACbC,QAAS,UACTC,QAAS,UACTC,WAAY,UACZC,UAAW,UACXC,YAAa,UACbC,YAAa,UACbC,QAAS,UACTC,UAAW,UACXC,WAAY,UACZC,KAAM,UACNC,UAAW,UACXC,KAAM,UACNC,MAAO,UACPC,YAAa,UACbC,KAAM,UACNC,SAAU,UACVC,QAAS,UACTC,UAAW,UACXC,OAAQ,UACRC,MAAO,UACPC,MAAO,UACPC,SAAU,UACVC,cAAe,UACfC,UAAW,UACXC,aAAc,UACdC,UAAW,UACXC,WAAY,UACZC,UAAW,UACXC,qBAAsB,UACtBC,UAAW,UACXC,WAAY,UACZC,UAAW,UACXC,UAAW,UACXC,YAAa,UACbC,cAAe,UACfC,aAAc,UACdC,eAAgB,UAChBC,eAAgB,UAChBC,eAAgB,UAChBC,YAAa,UACbC,KAAM,UACNC,UAAW,UACXC,MAAO,UACPC,QAAS,UACTC,OAAQ,UACRC,iBAAkB,UAClBC,WAAY,UACZC,aAAc,UACdC,aAAc,UACdC,eAAgB,UAChBC,gBAAiB,UACjBC,kBAAmB,UACnBC,gBAAiB,UACjBC,gBAAiB,UACjBC,aAAc,UACdC,UAAW,UACXC,UAAW,UACXC,SAAU,UACVC,YAAa,UACbC,KAAM,UACNC,QAAS,UACTC,MAAO,UACPC,UAAW,UACXC,OAAQ,UACRC,UAAW,UACXC,OAAQ,UACRC,cAAe,UACfC,UAAW,UACXC,cAAe,UACfC,cAAe,UACfC,WAAY,UACZC,UAAW,UACXC,KAAM,UACNC,KAAM,UACNC,KAAM,UACNC,WAAY,UACZC,OAAQ,UACRC,cAAe,UACfC,IAAK,UACLC,UAAW,UACXC,UAAW,UACXC,YAAa,UACbC,OAAQ,UACRC,WAAY,UACZC,SAAU,UACVC,SAAU,UACVC,OAAQ,UACRC,OAAQ,UACRC,QAAS,UACTC,UAAW,UACXC,UAAW,UACXC,UAAW,UACXC,KAAM,UACNC,YAAa,UACbC,UAAW,UACXC,IAAK,UACLC,KAAM,UACNC,QAAS,UACTC,OAAQ,UACRC,UAAW,UACXC,OAAQ,UACRC,MAAO,UACPC,MAAO,UACPC,WAAY,UACZC,OAAQ,UACRC,YAAa,WCzIJC,EAAc3J,IAEvB,MAAM4J,EAAWtJ,EAAWN,EAAM6J,eAClC,GAAID,EACA,OAAO,IAAIE,EAAKA,OAAGC,WAAWH,GAGlC,GAAI5J,EAAMgK,WAAW,KACjB,OAAO,IAAIF,EAAKA,OAAGC,WAAW/J,GAGlC,MAAMiK,EAAajK,EAAMkK,MAAM,KAAK5M,IAAI6M,QACxC,OAAO,IAAIL,EAAKA,MAACG,EAAW,EAsBnBG,EAAapK,IACtB,MAAMiK,EAAajK,EAAMkK,MAAM,KAAK5M,IAAI6M,QACxC,OAAO,IAAIE,EAAIA,KAACJ,EAAW,EASlBK,EAAatK,IACtB,MAAMiK,EAAajK,EAAMkK,MAAM,KAAK5M,IAAI6M,QACxC,OAAO,IAAII,EAAIA,KAACN,EAAW,EASlBO,EAAaxK,IACtB,MAAMiK,EAAajK,EAAMkK,MAAM,KAAK5M,IAAI6M,QACxC,OAAO,IAAIM,EAAIA,KAACR,EAAW,EC7D/B,MAAMS,UAAsBzQ,EAA5B,WAAAE,uBAIYE,KAAQsQ,UAAG,EAKXtQ,KAAKuQ,MAAG,WAKRvQ,KAAAwQ,UAAY,IAAIN,OAKhBlQ,KAAAyQ,UAAY,IAAIP,OAKhBlQ,KAAM0Q,OAAG,IAAIR,EAAAA,KAAK,EAAG,EAAG,GAKxBlQ,KAAK2Q,MAAa,GAK1B3Q,KAAM4Q,OAAkB,KAExB,uBAAMjO,GACF,MAAMtC,EAAaL,KAAKK,WACxB,IAAKA,EAAY,aAGXA,EAAWQ,QAEjB,MAAM2B,EAAMnC,EAAWmC,IAGvBxC,KAAK4Q,OAAS,IAAIC,EAAAA,OAAO7Q,KAAKuQ,MAAO/N,GAGrC,MAAMsO,EAAc9Q,KAAKmB,aAAa,WAChC4P,EAAW/Q,KAAKmB,aAAa,QAC7B6P,EAAehR,KAAKmB,aAAa,YACjC8P,EAAejR,KAAKmB,aAAa,YACjC+P,EAAYlR,KAAKmB,aAAa,SAC9BgQ,EAAWnR,KAAKmB,aAAa,QAE/B2P,IAAa9Q,KAAKoR,QAA0B,UAAhBN,GAC5BC,IAAU/Q,KAAKkB,KAAO6P,GACtBC,IAAchR,KAAKqR,SAAWpB,EAAUe,IACxCC,IAAcjR,KAAKsR,SAAWrB,EAAUgB,IACxCC,IAAWlR,KAAKuR,MAAQtB,EAAUiB,IAClCC,IAAUnR,KAAKwR,KAAOL,EAAStB,MAAM,KAAK5M,KAAIwO,GAAOA,EAAIC,UAE7D,MAAMjR,EAAgBT,KAAKS,cACvBA,EACAA,EAAcI,QAAQC,MAAK,KACvBL,EAAcmQ,OAAQe,SAAS3R,KAAK4Q,QACpC5Q,KAAKU,UAAU,KAGnB8B,EAAIoP,KAAKD,SAAS3R,KAAK4Q,QACvB5Q,KAAKU,YAIb,oBAAA2E,GACI,GAAIrF,KAAK4Q,OAAQ,CAEI5Q,KAAK6C,iBAAiB,aAC9B4B,SAASoN,IACbA,EAAwBjB,OAAS,IAAI,IAG1C5Q,KAAK4Q,OAAOtL,UACZtF,KAAK4Q,OAAS,MAQtB,WAAIQ,CAAQzL,GACR3F,KAAKsQ,SAAW3K,EACZ3F,KAAK4Q,SACL5Q,KAAK4Q,OAAOQ,QAAUzL,GAQ9B,WAAIyL,GACA,OAAOpR,KAAKsQ,SAOhB,QAAIpP,CAAKyE,GACL3F,KAAKuQ,MAAQ5K,EACT3F,KAAK4Q,SACL5Q,KAAK4Q,OAAO1P,KAAOyE,GAQ3B,QAAIzE,GACA,OAAOlB,KAAKuQ,MAOhB,YAAIc,CAAS1L,GACT3F,KAAKwQ,UAAY7K,EACb3F,KAAK4Q,QACL5Q,KAAK4Q,OAAOkB,iBAAiB9R,KAAKwQ,WAQ1C,YAAIa,GACA,OAAOrR,KAAKwQ,UAOhB,YAAIc,CAAS3L,GACT3F,KAAKyQ,UAAY9K,EACb3F,KAAK4Q,QACL5Q,KAAK4Q,OAAOmB,oBAAoB/R,KAAKyQ,WAQ7C,YAAIa,GACA,OAAOtR,KAAKyQ,UAOhB,SAAIc,CAAM5L,GACN3F,KAAK0Q,OAAS/K,EACV3F,KAAK4Q,QACL5Q,KAAK4Q,OAAOoB,cAAchS,KAAK0Q,QAQvC,SAAIa,GACA,OAAOvR,KAAK0Q,OAOhB,QAAIc,CAAK7L,GACL3F,KAAK2Q,MAAQhL,EACT3F,KAAK4Q,SACL5Q,KAAK4Q,OAAOY,KAAKS,QACjBjS,KAAK4Q,OAAOY,KAAK1M,IAAI9E,KAAK2Q,QAQlC,QAAIa,GACA,OAAOxR,KAAK2Q,MAGhB,6BAAW9K,GACP,MAAO,CAAC,UAAW,OAAQ,WAAY,WAAY,QAAS,QAGhE,wBAAAC,CAAyB5E,EAAc6E,EAAmBC,GACtD,OAAQ9E,GACJ,IAAK,UACDlB,KAAKoR,QAAuB,UAAbpL,EACf,MACJ,IAAK,OACDhG,KAAKkB,KAAO8E,EACZ,MACJ,IAAK,WACDhG,KAAKqR,SAAWpB,EAAUjK,GAC1B,MACJ,IAAK,WACDhG,KAAKsR,SAAWrB,EAAUjK,GAC1B,MACJ,IAAK,QACDhG,KAAKuR,MAAQtB,EAAUjK,GACvB,MACJ,IAAK,OACDhG,KAAKwR,KAAOxL,EAAS6J,MAAM,KAAK5M,KAAIwO,GAAOA,EAAIC,WAM/D3P,eAAeC,OAAO,YAAaqO,GC7OnC,MAAM6B,EAAY,IAAIC,IAAI,CACtB,CAAC,MAAO,UACR,CAAC,MAAO,OACR,CAAC,OAAQ,UACT,CAAC,MAAO,aACR,CAAC,OAAQ,UACT,CAAC,MAAO,WACR,CAAC,OAAQ,QACT,CAAC,MAAO,WACR,CAAC,KAAM,UACP,CAAC,OAAQ,QACT,CAAC,MAAO,SACR,CAAC,MAAO,UACR,CAAC,MAAO,UACR,CAAC,MAAO,WACR,CAAC,MAAO,QACR,CAAC,OAAQ,UACT,CAAC,OAAQ,aAMb,MAAMC,UAAqBvS,YAA3B,WAAAC,uBACYE,KAAQqS,UAAY,EAK5BrS,KAAK4E,MAAiB,KAEtB,oBAAAS,GACIrF,KAAKsS,eAGT,WAAA3N,SACI,MAAM4N,EAAKvS,KAAKmB,aAAa,OAAS,GAChCqR,EAAMxS,KAAKmB,aAAa,QAAU,GACxC,IAAIsR,EAAOzS,KAAKmB,aAAa,QAG7B,IAAKsR,EAAM,CACP,MAAMC,EAAMF,EAAI3C,MAAM,KAAK8C,MAC3BF,EAAmC,QAA5BnS,EAAA4R,EAAUU,IAAIF,GAAO,WAAO,IAAApS,EAAAA,EAAA,KAGlCmS,GAKLzS,KAAK4E,MAAQ,IAAIiO,QAAMN,EAAIE,EAAM,CAAEK,IAAKN,IACxCxS,KAAK4E,MAAMM,QAAUlF,KAAKkF,SALtB6N,QAAQC,KAAK,2BAA2BR,KAQhD,YAAAF,GACQtS,KAAK4E,QACL5E,KAAK4E,MAAMqO,SACXjT,KAAK4E,MAAQ,MAQrB,WAAIM,CAAQS,GACR3F,KAAKqS,SAAW1M,EACZ3F,KAAK4E,QACL5E,KAAK4E,MAAMM,QAAUS,GAQ7B,WAAIT,GACA,OAAOlF,KAAKqS,SAGhB,UAAOO,CAAIL,GACP,MAAM7N,EAAevB,SAAS+P,cAA4B,gBAAgBX,OAC1E,OAAO7N,eAAAA,EAAcE,MAGzB,6BAAWiB,GACP,MAAO,CAAC,WAGZ,wBAAAC,CAAyB5E,EAAc6E,EAAmBoN,GACzC,YAATjS,IACAlB,KAAKkF,QAAUlF,KAAKoT,aAAa,aAK7CrR,eAAeC,OAAO,WAAYoQ,GC1FlC,MAAMiB,UAAyBzT,EAW3B,WAAAE,CAAYwT,GACRvT,QATIC,KAAQsQ,UAAG,EAEXtQ,KAAUuT,WAAqB,KASnCvT,KAAKwT,eAAiBF,EAI1B,uBAAAG,GACI,MAAO,CAAE,EAGb,kBAAMC,GACF,MAAMC,EAAgB3T,KAAKS,cAC3B,GAAIkT,EAAe,OACTA,EAAc9S,QAEpB,MAAM+S,EAAO5T,KAAKyT,0BAClBzT,KAAKuT,WAAaI,EAAc/C,OAAQ8C,aAAa1T,KAAKwT,eAAgBI,IAIlF,aAAAC,IAEA,uBAAMlR,eACqB,UAAjB3C,KAAKK,kBAAY,IAAAC,OAAA,EAAAA,EAAAO,eACjBb,KAAK0T,eACX1T,KAAK6T,gBACL7T,KAAKU,WAGT,oBAAA2E,GAEQrF,KAAK8T,WAAa9T,KAAK8T,UAAUlD,SACjC5Q,KAAKuT,WAAY3C,OAAOmD,gBAAgB/T,KAAKwT,gBAC7CxT,KAAKuT,WAAa,MAI1B,aAAIO,GACA,OAAO9T,KAAKuT,WAOhB,WAAInC,CAAQzL,GACR3F,KAAKsQ,SAAW3K,EACZ3F,KAAK8T,YACL9T,KAAK8T,UAAU1C,QAAUzL,GAQjC,WAAIyL,GACA,OAAOpR,KAAKsQ,SAGhB,6BAAWzK,GACP,MAAO,CAAC,WAGZ,wBAAAC,CAAyB5E,EAAc6E,EAAmBC,GACtD,GACS,YADD9E,EAEAlB,KAAKoR,QAAuB,UAAbpL,GC/E/B,MAAMgO,UAAiCX,EACnC,WAAAvT,GACIC,MAAM,iBAOV,aAAI+T,GACA,OAAO/T,MAAM+T,WAIrB/R,eAAeC,OAAO,cAAegS,GCbrC,MAAMC,UAA+BZ,EAkCjC,WAAAvT,GACIC,MAAM,UAlCFC,KAAAkU,YAAc,IAAIzE,EAAKA,MAAC,IAAM,IAAM,IAAM,GAE1CzP,KAAiBmU,mBAAG,EAEpBnU,KAAiBoU,mBAAG,EAEpBpU,KAAmBqU,qBAAG,EAEtBrU,KAAUsU,YAAG,EAEbtU,KAAQuU,SAAG,IAEXvU,KAAUwU,YAAG,EAEbxU,KAAIyU,KAAG,GAEPzU,KAAe0U,iBAAG,EAElB1U,KAAS2U,UAAG,GAEZ3U,KAAa4U,eAAG,EAEhB5U,KAAY6U,aAAG,GAEf7U,KAAS8U,UAAG,EAEZ9U,KAAA+U,MAAQ,IAAI3E,EAAIA,KAAC,EAAG,EAAG,EAAG,GAE1BpQ,KAAAgV,aAAe,IAAI5E,EAAIA,KAAC,EAAG,EAAG,EAAG,GASzC,uBAAAqD,GACI,MAAO,CACHwB,WAAYjV,KAAKkU,YACjBgB,iBAAkBlV,KAAKmU,kBACvBgB,iBAAkBnV,KAAKoU,kBACvBgB,mBAAoBpV,KAAKqU,oBACzBgB,UAAWrV,KAAKsU,WAChBgB,QAAStV,KAAKuU,SACdgB,UAAWvV,KAAKwU,WAChBgB,IAAKxV,KAAKyU,KACVgB,eAAgBzV,KAAK0U,gBACrBgB,SAAU1V,KAAK2U,UACfgB,aAAc3V,KAAK4U,cACnBgB,YAAa5V,KAAK6U,aAClBgB,SAAU7V,KAAK8U,UACfgB,KAAM9V,KAAK+U,MACXgB,YAAa/V,KAAKgV,cAI1B,eAAIgB,SACA,MAAMC,EAA4B,QAAhB3V,EAAAN,KAAK8T,iBAAW,IAAAxT,OAAA,EAAAA,EAAA4V,OAAO1T,IAAI2T,GAC7C,OAAOF,GAAaA,EAAUG,WAAaH,EAAUI,YAAYC,EAAAA,WAGrE,OAAAC,CAAQ9D,EAAuC+D,GACvCxW,KAAK8T,WAAa9T,KAAKgW,aACvBhW,KAAK8T,UAAUyC,QAAQ9D,EAAM+D,EAAO,CAChCC,SAAWC,IACHA,GAAK3D,QAAQ4D,MAAM,uCAAuCD,EAAIE,UAAU,IAM5F,KAAAC,GACQ7W,KAAK8T,WACL9T,KAAK8T,UAAU+C,QAQvB,aAAI/C,GACA,OAAO/T,MAAM+T,UAOjB,cAAImB,CAAWtP,GACX3F,KAAKkU,YAAcvO,EACf3F,KAAK8T,YACL9T,KAAK8T,UAAUmB,WAAatP,GAQpC,cAAIsP,GACA,OAAOjV,KAAKkU,YAOhB,oBAAIgB,CAAiBvP,GACjB3F,KAAKmU,kBAAoBxO,EACrB3F,KAAK8T,YACL9T,KAAK8T,UAAUoB,iBAAmBvP,GAQ1C,oBAAIuP,GACA,OAAOlV,KAAKmU,kBAOhB,oBAAIgB,CAAiBxP,GACjB3F,KAAKoU,kBAAoBzO,EACrB3F,KAAK8T,YACL9T,KAAK8T,UAAUqB,iBAAmBxP,GAQ1C,oBAAIwP,GACA,OAAOnV,KAAKoU,kBAOhB,sBAAIgB,CAAmBzP,GACnB3F,KAAKqU,oBAAsB1O,EACvB3F,KAAK8T,YACL9T,KAAK8T,UAAUsB,mBAAqBzP,GAQ5C,sBAAIyP,GACA,OAAOpV,KAAKqU,oBAOhB,aAAIgB,CAAU1P,GACV3F,KAAKsU,WAAa3O,EACd3F,KAAK8T,YACL9T,KAAK8T,UAAUuB,UAAY1P,GAQnC,aAAI0P,GACA,OAAOrV,KAAKsU,WAOhB,WAAIgB,CAAQ3P,GACR3F,KAAKuU,SAAW5O,EACZ3F,KAAK8T,YACL9T,KAAK8T,UAAUwB,QAAU3P,GAQjC,WAAI2P,GACA,OAAOtV,KAAKuU,SAOhB,aAAIgB,CAAU5P,GACV3F,KAAKwU,WAAa7O,EACd3F,KAAK8T,YACL9T,KAAK8T,UAAUyB,UAAY5P,GAQnC,aAAI4P,GACA,OAAOvV,KAAKwU,WAOhB,OAAIgB,CAAI7P,GACJ3F,KAAKyU,KAAO9O,EACR3F,KAAK8T,YACL9T,KAAK8T,UAAU0B,IAAM7P,GAQ7B,OAAI6P,GACA,OAAOxV,KAAKyU,KAOhB,kBAAIgB,CAAe9P,GACf3F,KAAK0U,gBAAkB/O,EACnB3F,KAAK8T,YACL9T,KAAK8T,UAAU2B,eAAiB9P,GAQxC,kBAAI8P,GACA,OAAOzV,KAAK0U,gBAOhB,YAAIgB,CAAS/P,GACT3F,KAAK2U,UAAYhP,EACb3F,KAAK8T,YACL9T,KAAK8T,UAAU4B,SAAW/P,GAQlC,YAAI+P,GACA,OAAO1V,KAAK2U,UAOhB,gBAAIgB,CAAahQ,GACb3F,KAAK4U,cAAgBjP,EACjB3F,KAAK8T,YACL9T,KAAK8T,UAAUgD,WAAanR,EAAQoR,EAAuBA,wBAAGC,EAAsBA,wBAQ5F,gBAAIrB,GACA,OAAO3V,KAAK4U,cAOhB,eAAIgB,CAAYjQ,GACZ3F,KAAK6U,aAAelP,EAChB3F,KAAK8T,YACL9T,KAAK8T,UAAU8B,YAAcjQ,GAQrC,eAAIiQ,GACA,OAAO5V,KAAK6U,aAOhB,YAAIgB,CAASlQ,GACT3F,KAAK8U,UAAYnP,EACb3F,KAAK8T,YACL9T,KAAK8T,UAAU+B,SAAWlQ,GAQlC,YAAIkQ,GACA,OAAO7V,KAAK8U,UAOhB,QAAIgB,CAAKnQ,GACL3F,KAAK+U,MAAQpP,EACT3F,KAAK8T,YACL9T,KAAK8T,UAAUgC,KAAOnQ,GAQ9B,QAAImQ,GACA,OAAO9V,KAAK+U,MAOhB,eAAIgB,CAAYpQ,GACZ3F,KAAKgV,aAAerP,EAChB3F,KAAK8T,YACL9T,KAAK8T,UAAUiC,YAAcpQ,GAQrC,eAAIoQ,GACA,OAAO/V,KAAKgV,aAGhB,6BAAWnP,GACP,MAAO,IACA9F,MAAM8F,mBACT,cACA,qBACA,qBACA,uBACA,aACA,WACA,aACA,MACA,kBACA,YACA,eACA,eACA,WACA,OACA,gBAIR,wBAAAC,CAAyB5E,EAAc6E,EAAmBC,GAGtD,OAFAjG,MAAM+F,yBAAyB5E,EAAM6E,EAAWC,GAExC9E,GACJ,IAAK,cACDlB,KAAKiV,WAAa3F,EAAWtJ,GAC7B,MACJ,IAAK,qBACDhG,KAAKkV,iBAAgC,UAAblP,EACxB,MACJ,IAAK,qBACDhG,KAAKmV,iBAAgC,UAAbnP,EACxB,MACJ,IAAK,uBACDhG,KAAKoV,mBAAkC,UAAbpP,EAC1B,MACJ,IAAK,aACDhG,KAAKqV,UAAyB,UAAbrP,EACjB,MACJ,IAAK,WACDhG,KAAKsV,QAAU2B,WAAWjR,GAC1B,MACJ,IAAK,aACDhG,KAAKuV,UAAyB,SAAbvP,EACjB,MACJ,IAAK,MACDhG,KAAKwV,IAAMyB,WAAWjR,GACtB,MACJ,IAAK,kBACDhG,KAAKyV,eAA8B,UAAbzP,EACtB,MACJ,IAAK,YACDhG,KAAK0V,SAAWuB,WAAWjR,GAC3B,MACJ,IAAK,eACDhG,KAAK2V,aAAe3V,KAAKoT,aAAa,gBACtC,MACJ,IAAK,eACDpT,KAAK4V,YAAcqB,WAAWjR,GAC9B,MACJ,IAAK,WACDhG,KAAK6V,SAAWoB,WAAWjR,GAC3B,MACJ,IAAK,OACDhG,KAAK8V,KAAO3F,EAAUnK,GACtB,MACJ,IAAK,eACDhG,KAAK+V,YAAc5F,EAAUnK,KAM7CjE,eAAeC,OAAO,YAAaiS,GC9bnC,MAAMiD,UAAkC7D,EAoBpC,WAAAvT,GACIC,MAAM,aApBFC,KAAAmX,eAAuB,IAAIC,OAE3BpX,KAAKqX,MAAW,EAEhBrX,KAAWsX,aAAY,EAEvBtX,KAAYuX,aAAS,IAAIrH,EAAAA,KAAK,GAAK,GAAK,IAExClQ,KAAOwX,QAAW,EAElBxX,KAAAyX,cAAsB,IAAIvH,OAE1BlQ,KAAO0X,QAAW,GAElB1X,KAAK2X,MAAW,MASxB,uBAAAlE,GACI,MAAO,CACHmE,KAAM5X,KAAKqX,MACXQ,cAAe7X,KAAKmX,eACpBW,WAAY9X,KAAKsX,YACjBS,YAAa/X,KAAKuX,aAClBS,OAAQhY,KAAKwX,QACbS,aAAcjY,KAAKyX,cACnBS,OAAQlY,KAAK0X,QACbjF,KAAMzS,KAAK2X,OAQnB,aAAI7D,GACA,OAAO/T,MAAM+T,UAGjB,iBAAI+D,CAAclS,GACd3F,KAAKmX,eAAiBxR,EAClB3F,KAAK8T,YACL9T,KAAK8T,UAAU+D,cAAgBlS,GAIvC,iBAAIkS,GACA,OAAO7X,KAAKmX,eAGhB,QAAIS,CAAKjS,GACL3F,KAAKqX,MAAQ1R,EACT3F,KAAK8T,YACL9T,KAAK8T,UAAU8D,KAAOjS,GAI9B,QAAIiS,GACA,OAAO5X,KAAKqX,MAGhB,cAAIS,CAAWnS,GACX3F,KAAKsX,YAAc3R,EACf3F,KAAK8T,YACL9T,KAAK8T,UAAUgE,WAAanS,GAIpC,cAAImS,GACA,OAAO9X,KAAKsX,YAGhB,eAAIS,CAAYpS,GACZ3F,KAAKuX,aAAe5R,EAChB3F,KAAK8T,YACL9T,KAAK8T,UAAUiE,YAAcpS,GAIrC,eAAIoS,GACA,OAAO/X,KAAKuX,aAGhB,UAAIS,CAAOrS,GACP3F,KAAKwX,QAAU7R,EACX3F,KAAK8T,YACL9T,KAAK8T,UAAUkE,OAASrS,GAIhC,UAAIqS,GACA,OAAOhY,KAAKwX,QAGhB,gBAAIS,CAAatS,GACb3F,KAAKyX,cAAgB9R,EACjB3F,KAAK8T,YACL9T,KAAK8T,UAAUmE,aAAetS,GAItC,gBAAIsS,GACA,OAAOjY,KAAKyX,cAGhB,UAAIS,CAAOvS,GACP3F,KAAK0X,QAAU/R,EACX3F,KAAK8T,YACL9T,KAAK8T,UAAUoE,OAASvS,GAIhC,UAAIuS,GACA,OAAOlY,KAAK0X,QAGhB,QAAIjF,CAAK9M,GACL3F,KAAK2X,MAAQhS,EACT3F,KAAK8T,YACL9T,KAAK8T,UAAUrB,KAAO9M,GAI9B,QAAI8M,GACA,OAAOzS,KAAK2X,MAGhB,6BAAW9R,GACP,MAAO,IAAI9F,MAAM8F,mBAAoB,iBAAkB,OAAQ,cAAe,eAAgB,SAAU,gBAAiB,SAAU,QAGvI,wBAAAC,CAAyB5E,EAAc6E,EAAmBC,GAGtD,OAFAjG,MAAM+F,yBAAyB5E,EAAM6E,EAAWC,GAExC9E,GACJ,IAAK,iBACDlB,KAAK6X,cNxHI,CAAClS,IACtB,MAAOwS,EAAGC,EAAGC,GAAK1S,EAAMkK,MAAM,KAAK5M,IAAI6M,QACjCwI,EAAI,IAAIlB,OAEd,OADAkB,EAAEC,mBAAmBJ,EAAGC,EAAGC,GACpBC,CAAC,EMoHyBE,CAAUxS,GAC/B,MACJ,IAAK,OACDhG,KAAK4X,KAAOa,SAASzS,EAAU,IAC/B,MACJ,IAAK,cACDhG,KAAK8X,WAAa9X,KAAKoT,aAAa,eACpC,MACJ,IAAK,eACDpT,KAAK+X,YAAc9H,EAAUjK,GAC7B,MACJ,IAAK,SACDhG,KAAKgY,OAASf,WAAWjR,GACzB,MACJ,IAAK,gBACDhG,KAAKiY,aAAehI,EAAUjK,GAC9B,MACJ,IAAK,SACDhG,KAAKkY,OAASjB,WAAWjR,GACzB,MACJ,IAAK,OACDhG,KAAKyS,KAAOzM,IAM5BjE,eAAeC,OAAO,eAAgBkV,GCvKtC,MAAMwB,UAAgCrF,EAuBlC,WAAAvT,GACIC,MAAM,WAvBFC,KAAA2Y,QAAgB,IAAIvI,EAAIA,KAAC,GAAK,GAAK,GAAK,IAExCpQ,KAAM4Y,OAAW,GAEjB5Y,KAAU6Y,YAAY,EAEtB7Y,KAAA8Y,OAAgB,IAAIrJ,EAAKA,MAAC,EAAG,EAAG,EAAG,GAEnCzP,KAAS+Y,UAAW,GAEpB/Y,KAAWgZ,YAAW,GAEtBhZ,KAAMiZ,OAAS,IAAIjJ,OAAK,GAAK,IAE7BhQ,KAAKkZ,MAAW,GAEhBlZ,KAAK2X,MAA+B,QAEpC3X,KAAMmZ,OAAW,EAEjBnZ,KAAUoZ,YAAY,EAM9B,aAAAvF,GACI7T,KAAK8T,UAAWoF,MAAMG,UAAUC,QAAS,EAG7C,uBAAA7F,GACI,MAAO,CACH8F,OAAQvZ,KAAK2Y,QACba,UAAWxZ,KAAK6Y,WAChBY,MAAOzZ,KAAK8Y,OACZY,UAAWtH,EAAaQ,IAAI5S,KAAK4Y,QAASrG,GAC1CoH,SAAU3Z,KAAK+Y,UACfa,WAAY5Z,KAAKgZ,YACjBa,MAAO7Z,KAAKiZ,OACZxG,KAAMzS,KAAK2X,MACXmC,KAAM9Z,KAAKkZ,MACXa,MAAO/Z,KAAKmZ,OACZa,UAAWha,KAAKoZ,YAQxB,aAAItF,GACA,OAAO/T,MAAM+T,UAGjB,UAAIyF,CAAO5T,GACP3F,KAAK2Y,QAAUhT,EACX3F,KAAK8T,YACL9T,KAAK8T,UAAUyF,OAAS5T,GAIhC,UAAI4T,GACA,OAAOvZ,KAAK2Y,QAGhB,SAAI/T,CAAMe,GACN3F,KAAK4Y,OAASjT,EACd,MAAMf,EAAQwN,EAAaQ,IAAIjN,GAC3B3F,KAAK8T,WAAalP,IAClB5E,KAAK8T,UAAU4F,UAAY9U,EAAM2N,IAIzC,SAAI3N,GACA,OAAO5E,KAAK4Y,OAGhB,aAAIY,CAAU7T,GACV3F,KAAK6Y,WAAalT,EACd3F,KAAK8T,YACL9T,KAAK8T,UAAU0F,UAAY7T,GAInC,aAAI6T,GACA,OAAOxZ,KAAK6Y,WAGhB,SAAIY,CAAM9T,GACN3F,KAAK8Y,OAASnT,EACV3F,KAAK8T,YACL9T,KAAK8T,UAAU2F,MAAQ9T,GAI/B,SAAI8T,GACA,OAAOzZ,KAAK8Y,OAGhB,YAAIa,CAAShU,GACT3F,KAAK+Y,UAAYpT,EACb3F,KAAK8T,YACL9T,KAAK8T,UAAU6F,SAAWhU,GAIlC,YAAIgU,GACA,OAAO3Z,KAAK+Y,UAGhB,cAAIa,CAAWjU,GACX3F,KAAKgZ,YAAcrT,EACf3F,KAAK8T,YACL9T,KAAK8T,UAAU8F,WAAajU,GAIpC,cAAIiU,GACA,OAAO5Z,KAAKgZ,YAGhB,SAAIa,CAAMlU,GACN3F,KAAKiZ,OAAStT,EACV3F,KAAK8T,YACL9T,KAAK8T,UAAU+F,MAAQlU,GAI/B,SAAIkU,GACA,OAAO7Z,KAAKiZ,OAGhB,QAAIa,CAAKnU,GACL3F,KAAKkZ,MAAQvT,EACT3F,KAAK8T,YACL9T,KAAK8T,UAAUgG,KAAOnU,GAI9B,QAAImU,GACA,OAAO9Z,KAAKkZ,MAOhB,QAAIzG,CAAK9M,GACL3F,KAAK2X,MAAQhS,EACT3F,KAAK8T,YACL9T,KAAK8T,UAAUrB,KAAO9M,GAQ9B,QAAI8M,GACA,OAAOzS,KAAK2X,MAGhB,SAAIoC,CAAMpU,GACN3F,KAAKmZ,OAASxT,EACV3F,KAAK8T,YACL9T,KAAK8T,UAAUiG,MAAQpU,GAI/B,SAAIoU,GACA,OAAO/Z,KAAKmZ,OAGhB,aAAIa,CAAUrU,GACV3F,KAAKoZ,WAAazT,EACd3F,KAAK8T,YACL9T,KAAK8T,UAAUkG,UAAYrU,GAInC,aAAIqU,GACA,OAAOha,KAAKoZ,WAGhB,6BAAWvT,GACP,MAAO,IACA9F,MAAM8F,mBACT,SACA,QACA,aACA,QACA,YACA,cACA,QACA,OACA,OACA,QACA,cAIR,wBAAAC,CAAyB5E,EAAc6E,EAAmBC,GAGtD,OAFAjG,MAAM+F,yBAAyB5E,EAAM6E,EAAWC,GAExC9E,GACJ,IAAK,SACDlB,KAAKuZ,OAASpJ,EAAUnK,GACxB,MACJ,IAAK,QACDhG,KAAK4E,MAAQoB,EACb,MACJ,IAAK,aACDhG,KAAKwZ,UAAyB,UAAbxT,EACjB,MACJ,IAAK,QACDhG,KAAKyZ,MAAQnK,EAAWtJ,GACxB,MACJ,IAAK,YACDhG,KAAK2Z,SAAW7J,OAAO9J,GACvB,MACJ,IAAK,cACDhG,KAAK4Z,WAAa9J,OAAO9J,GACzB,MACJ,IAAK,QACDhG,KAAK6Z,MAAQ9J,EAAU/J,GACvB,MACJ,IAAK,OACDhG,KAAK8Z,KAAO9T,EACZ,MACJ,IAAK,OACDhG,KAAKyS,KAAOzM,EACZ,MACJ,IAAK,QACDhG,KAAK+Z,MAAQjK,OAAO9J,GACpB,MACJ,IAAK,aACDhG,KAAKga,UAAYha,KAAKoT,aAAalS,KAMnDa,eAAeC,OAAO,aAAc0W,GCrPpC,MAAMuB,UAA+B5G,EAGjC,WAAAvT,GACIC,MAAM,UAHFC,KAAM4Y,OAAW,GAMzB,uBAAAnF,GACI,MAAO,CACH7O,MAAOwN,EAAaQ,IAAI5S,KAAK4Y,SAQrC,aAAI9E,GACA,OAAO/T,MAAM+T,UAGjB,SAAIlP,CAAMe,GACN3F,KAAK4Y,OAASjT,EACd,MAAMf,EAAQwN,EAAaQ,IAAIjN,GAC3B3F,KAAK8T,WAAalP,IAClB5E,KAAK8T,UAAUlP,MAAQA,GAI/B,SAAIA,GACA,OAAO5E,KAAK4Y,OAGhB,6BAAW/S,GACP,MAAO,IAAI9F,MAAM8F,mBAAoB,SAGzC,wBAAAC,CAAyB5E,EAAc6E,EAAmBC,GAGtD,GAFAjG,MAAM+F,yBAAyB5E,EAAM6E,EAAWC,GAGvC,UADD9E,EAEAlB,KAAK4E,MAAQoB,GAM7BjE,eAAeC,OAAO,WAAYiY,GChDlC,MAAMC,UAA8B7G,EA0BhC,WAAAvT,GACIC,MAAM,SA1BFC,KAAYma,cAAG,EAEfna,KAAM8Y,OAAG,IAAIrJ,EAAAA,MAAM,EAAG,EAAG,GAEzBzP,KAAeoa,gBAAG,GAElBpa,KAAUqa,WAAG,EAEbra,KAAiBsa,kBAAG,IAEpBta,KAAeua,gBAAG,GAElBva,KAAMwa,OAAG,GAETxa,KAAWya,YAAG,GAEdza,KAAe0a,gBAAG,GAElB1a,KAAiB2a,kBAAG,KAEpB3a,KAAK2X,MAAG,cAShB,uBAAAlE,GACI,MAAO,CACHmH,YAAa5a,KAAKma,aAClBV,MAAOzZ,KAAK8Y,OACZ+B,eAAgB7a,KAAKoa,gBACrBU,UAAW9a,KAAKqa,WAChBU,iBAAkB/a,KAAKsa,kBACvBU,eAAgBhb,KAAKua,gBACrBU,MAAOjb,KAAKwa,OACZU,WAAYlb,KAAKya,YACjBU,eAAgBnb,KAAK0a,gBACrBU,iBAAkBpb,KAAK2a,kBACvBlI,KAAMzS,KAAK2X,OAQnB,aAAI7D,GACA,OAAO/T,MAAM+T,UAOjB,eAAI8G,CAAYjV,GACZ3F,KAAKma,aAAexU,EAChB3F,KAAK8T,YACL9T,KAAK8T,UAAU8G,YAAcjV,GAQrC,eAAIiV,GACA,OAAO5a,KAAKma,aAOhB,SAAIV,CAAM9T,GACN3F,KAAK8Y,OAASnT,EACV3F,KAAK8T,YACL9T,KAAK8T,UAAU2F,MAAQ9T,GAQ/B,SAAI8T,GACA,OAAOzZ,KAAK8Y,OAOhB,kBAAI+B,CAAelV,GACf3F,KAAKoa,gBAAkBzU,EACnB3F,KAAK8T,YACL9T,KAAK8T,UAAU+G,eAAiBlV,GAQxC,kBAAIkV,GACA,OAAO7a,KAAKoa,gBAOhB,aAAIU,CAAUnV,GACV3F,KAAKqa,WAAa1U,EACd3F,KAAK8T,YACL9T,KAAK8T,UAAUgH,UAAYnV,GAQnC,aAAImV,GACA,OAAO9a,KAAKqa,WAOhB,oBAAIU,CAAiBpV,GACjB3F,KAAKsa,kBAAoB3U,EACrB3F,KAAK8T,YACL9T,KAAK8T,UAAUiH,iBAAmBpV,GAQ1C,oBAAIoV,GACA,OAAO/a,KAAKsa,kBAOhB,kBAAIU,CAAerV,GACf3F,KAAKua,gBAAkB5U,EACnB3F,KAAK8T,YACL9T,KAAK8T,UAAUkH,eAAiBrV,GAQxC,kBAAIqV,GACA,OAAOhb,KAAKua,gBAOhB,SAAIU,CAAMtV,GACN3F,KAAKwa,OAAS7U,EACV3F,KAAK8T,YACL9T,KAAK8T,UAAUmH,MAAQtV,GAQ/B,SAAIsV,GACA,OAAOjb,KAAKwa,OAOhB,cAAIU,CAAWvV,GACX3F,KAAKya,YAAc9U,EACf3F,KAAK8T,YACL9T,KAAK8T,UAAUoH,WAAavV,GAQpC,cAAIuV,GACA,OAAOlb,KAAKya,YAOhB,kBAAIU,CAAexV,GACf3F,KAAK0a,gBAAkB/U,EACnB3F,KAAK8T,YACL9T,KAAK8T,UAAUqH,eAAiBxV,GAQxC,kBAAIwV,GACA,OAAOnb,KAAK0a,gBAOhB,oBAAIU,CAAiBzV,GACjB3F,KAAK2a,kBAAoBhV,EACrB3F,KAAK8T,YACL9T,KAAK8T,UAAUsH,iBAAmBzV,GAQ1C,oBAAIyV,GACA,OAAOpb,KAAK2a,kBAOhB,QAAIlI,CAAK9M,GACA,CAAC,cAAe,OAAQ,QAAQ0V,SAAS1V,IAK9C3F,KAAK2X,MAAQhS,EACT3F,KAAK8T,YACL9T,KAAK8T,UAAUrB,KAAO9M,IANtBoN,QAAQC,KAAK,uBAAuBrN,2BAA+B3F,KAAK2X,WAchF,QAAIlF,GACA,OAAOzS,KAAK2X,MAGhB,6BAAW9R,GACP,MAAO,IACA9F,MAAM8F,mBACT,QACA,eACA,YACA,mBACA,qBACA,mBACA,QACA,cACA,kBACA,oBACA,QAIR,wBAAAC,CAAyB5E,EAAc6E,EAAmBC,GAGtD,OAFAjG,MAAM+F,yBAAyB5E,EAAM6E,EAAWC,GAExC9E,GACJ,IAAK,QACDlB,KAAKyZ,MAAQnK,EAAWtJ,GACxB,MACJ,IAAK,eACDhG,KAAK4a,YAAc5a,KAAKoT,aAAa,gBACrC,MACJ,IAAK,mBACDpT,KAAK6a,eAAiB/K,OAAO9J,GAC7B,MACJ,IAAK,YACDhG,KAAK8a,UAAYhL,OAAO9J,GACxB,MACJ,IAAK,qBACDhG,KAAK+a,iBAAmBjL,OAAO9J,GAC/B,MACJ,IAAK,mBACDhG,KAAKgb,eAAiBlL,OAAO9J,GAC7B,MACJ,IAAK,QACDhG,KAAKib,MAAQnL,OAAO9J,GACpB,MACJ,IAAK,cACDhG,KAAKkb,WAAapL,OAAO9J,GACzB,MACJ,IAAK,kBACDhG,KAAKmb,eAAiBrL,OAAO9J,GAC7B,MACJ,IAAK,oBACDhG,KAAKob,iBAAmBtL,OAAO9J,GAC/B,MACJ,IAAK,OACDhG,KAAKyS,KAAOzM,IAM5BjE,eAAeC,OAAO,WAAYkY,GCxUlC,MAAMoB,UAAwBzb,YAA9B,WAAAC,uBACYE,KAAQub,SAAG,IAAI9L,EAAAA,MAAM,EAAG,EAAG,GAE3BzP,KAAWwb,YAAG,GAEdxb,KAAayb,cAAG,GAEhBzb,KAAU0b,WAAG,GAEb1b,KAAa2b,cAAG,GAExB3b,KAAQ4b,SAA4B,KAEpC,cAAA3W,GACIjF,KAAK4b,SAAW,IAAIC,mBACpB7b,KAAK4b,SAASE,aAAc,EAC5B9b,KAAK4b,SAASG,cAAe,EAC7B/b,KAAK4b,SAASI,QAAUhc,KAAKub,SAC7Bvb,KAAKic,WAAajc,KAAKwb,YACvBxb,KAAKkc,aAAelc,KAAKyb,cACzBzb,KAAKmc,UAAYnc,KAAK0b,WACtB1b,KAAKoc,aAAepc,KAAK2b,cACzB3b,KAAK4b,SAASS,SAGlB,oBAAAhX,GACQrF,KAAK4b,WACL5b,KAAK4b,SAAStW,UACdtF,KAAK4b,SAAW,MAIxB,MAAAU,CAAOrZ,EAAasZ,GAChB,GAAIvc,KAAK4b,SAAU,CACf,MAAMhX,EAAQwN,EAAaQ,IAAI3P,GAC3B2B,IACIA,EAAM4X,QACNxc,KAAK4b,SAASW,GAAY3X,EAAM6X,SAChCzc,KAAK4b,SAASW,GAAWG,WAAa,GAEtC9X,EAAM+X,KAAK,QAAQ,KACf3c,KAAK4b,SAAUW,GAAY3X,EAAM6X,SACjCzc,KAAK4b,SAAUW,GAAWG,WAAa,EACvC1c,KAAK4b,SAAUS,QAAQ,MAO3C,WAAIL,CAAQrW,GACR3F,KAAKub,SAAW5V,EACZ3F,KAAK4b,WACL5b,KAAK4b,SAASI,QAAUrW,GAIhC,WAAIqW,GACA,OAAOhc,KAAKub,SAGhB,cAAIU,CAAWtW,GACX3F,KAAKwb,YAAc7V,EACnB3F,KAAKsc,OAAO3W,EAAO,cAGvB,cAAIsW,GACA,OAAOjc,KAAKwb,YAGhB,gBAAIU,CAAavW,GACb3F,KAAKyb,cAAgB9V,EACrB3F,KAAKsc,OAAO3W,EAAO,gBAGvB,gBAAIuW,GACA,OAAOlc,KAAKyb,cAGhB,aAAIU,CAAUxW,GACV3F,KAAK0b,WAAa/V,EAClB3F,KAAKsc,OAAO3W,EAAO,aAGvB,aAAIwW,GACA,OAAOnc,KAAK0b,WAGhB,gBAAIU,CAAazW,GACb3F,KAAK2b,cAAgBhW,EACrB3F,KAAKsc,OAAO3W,EAAO,YAGvB,gBAAIyW,GACA,OAAOpc,KAAK2b,cAGhB,UAAO/I,CAAIL,GACP,MAAMvN,EAAkB7B,SAAS+P,cAA+B,mBAAmBX,OACnF,OAAOvN,eAAAA,EAAiB4W,SAG5B,6BAAW/V,GACP,MAAO,CAAC,UAAW,cAAe,gBAAiB,aAAc,iBAGrE,wBAAAC,CAAyB5E,EAAc6E,EAAmBC,GACtD,OAAQ9E,GACJ,IAAK,UACDlB,KAAKgc,QAAU1M,EAAWtJ,GAC1B,MACJ,IAAK,cACDhG,KAAKic,WAAajW,EAClB,MACJ,IAAK,gBACDhG,KAAKkc,aAAelW,EACpB,MACJ,IAAK,aACDhG,KAAKmc,UAAYnW,EACjB,MACJ,IAAK,gBACDhG,KAAKoc,aAAepW,IAMpCjE,eAAeC,OAAO,cAAesZ,GC7HrC,MAAMsB,UAA+BvJ,EASjC,WAAAvT,GACIC,MAAM,UATFC,KAAYma,cAAG,EAEfna,KAASqZ,UAAW,GAEpBrZ,KAAe6c,iBAAG,EAElB7c,KAAK2X,MAA2E,QAMxF,uBAAAlE,GACI,MAAO,CACHhB,KAAMzS,KAAK2X,MACXiD,YAAa5a,KAAKma,aAClByB,SAAUN,EAAgB1I,IAAI5S,KAAKqZ,WACnCyD,eAAgB9c,KAAK6c,iBAQ7B,aAAI/I,GACA,OAAO/T,MAAM+T,UAOjB,QAAIrB,CAAK9M,GACL3F,KAAK2X,MAAQhS,EACT3F,KAAK8T,YACL9T,KAAK8T,UAAUrB,KAAO9M,GAQ9B,QAAI8M,GACA,OAAOzS,KAAK2X,MAOhB,eAAIiD,CAAYjV,GACZ3F,KAAKma,aAAexU,EAChB3F,KAAK8T,YACL9T,KAAK8T,UAAU8G,YAAcjV,GAQrC,eAAIiV,GACA,OAAO5a,KAAKma,aAOhB,YAAIyB,CAASjW,GACT3F,KAAKqZ,UAAY1T,EACb3F,KAAK8T,YACL9T,KAAK8T,UAAU8H,SAAWN,EAAgB1I,IAAIjN,IAQtD,YAAIiW,GACA,OAAO5b,KAAKqZ,UAOhB,kBAAIyD,CAAenX,GACf3F,KAAK6c,gBAAkBlX,EACnB3F,KAAK8T,YACL9T,KAAK8T,UAAUgJ,eAAiBnX,GAQxC,kBAAImX,GACA,OAAO9c,KAAK6c,gBAGhB,6BAAWhX,GACP,MAAO,IAAI9F,MAAM8F,mBAAoB,eAAgB,WAAY,kBAAmB,QAGxF,wBAAAC,CAAyB5E,EAAc6E,EAAmBC,GAGtD,OAFAjG,MAAM+F,yBAAyB5E,EAAM6E,EAAWC,GAExC9E,GACJ,IAAK,eACDlB,KAAK4a,YAA2B,UAAb5U,EACnB,MACJ,IAAK,WACDhG,KAAK4b,SAAW5V,EAChB,MACJ,IAAK,kBACDhG,KAAK8c,eAA8B,UAAb9W,EACtB,MACJ,IAAK,OACDhG,KAAKyS,KAAOzM,IAM5BjE,eAAeC,OAAO,YAAa4a,GClInC,MAAMG,UAAkC1J,EAiDpC,WAAAvT,GACIC,MAAM,aA9CFC,KAAegd,gBAAW,EAK1Bhd,KAAcid,eAAS,IAAI/M,EAAAA,KAAK,EAAG,EAAG,GAKtClQ,KAASkd,UAAW,GAKpBld,KAAcmd,eAAW,EAKzBnd,KAAaod,cAAS,IAAIlN,EAAAA,KAAK,EAAG,EAAG,GAKrClQ,KAAKqd,MAAW,EAKhBrd,KAAYsd,aAAW,EAKvBtd,KAAgBud,iBAAW,EAK3Bvd,KAAK2X,MAAW,SASxB,uBAAAlE,GACI,MAAO,CACH+J,eAAgBxd,KAAKgd,gBACrBS,cAAezd,KAAKid,eACpBS,SAAU1d,KAAKkd,UACfS,cAAe3d,KAAKmd,eACpBS,aAAc5d,KAAKod,cACnBS,KAAM7d,KAAKqd,MACXS,YAAa9d,KAAKsd,aAClBS,gBAAiB/d,KAAKud,iBACtB9K,KAAMzS,KAAK2X,OAQnB,aAAI7D,GACA,OAAO/T,MAAM+T,UAGjB,kBAAI0J,CAAe7X,GACf3F,KAAKgd,gBAAkBrX,EACnB3F,KAAK8T,YACL9T,KAAK8T,UAAU0J,eAAiB7X,GAIxC,kBAAI6X,GACA,OAAOxd,KAAKgd,gBAGhB,iBAAIS,CAAc9X,GACd3F,KAAKid,eAAiBtX,EAClB3F,KAAK8T,YACL9T,KAAK8T,UAAU2J,cAAgB9X,GAIvC,iBAAI8X,GACA,OAAOzd,KAAKid,eAGhB,YAAIS,CAAS/X,GACT3F,KAAKkd,UAAYvX,EACb3F,KAAK8T,YACL9T,KAAK8T,UAAU4J,SAAW/X,GAIlC,YAAI+X,GACA,OAAO1d,KAAKkd,UAGhB,iBAAIS,CAAchY,GACd3F,KAAKmd,eAAiBxX,EAClB3F,KAAK8T,YACL9T,KAAK8T,UAAU6J,cAAgBhY,GAIvC,iBAAIgY,GACA,OAAO3d,KAAKmd,eAGhB,gBAAIS,CAAajY,GACb3F,KAAKod,cAAgBzX,EACjB3F,KAAK8T,YACL9T,KAAK8T,UAAU8J,aAAejY,GAItC,gBAAIiY,GACA,OAAO5d,KAAKod,cAGhB,QAAIS,CAAKlY,GACL3F,KAAKqd,MAAQ1X,EACT3F,KAAK8T,YACL9T,KAAK8T,UAAU+J,KAAOlY,GAI9B,QAAIkY,GACA,OAAO7d,KAAKqd,MAGhB,eAAIS,CAAYnY,GACZ3F,KAAKsd,aAAe3X,EAChB3F,KAAK8T,YACL9T,KAAK8T,UAAUgK,YAAcnY,GAIrC,eAAImY,GACA,OAAO9d,KAAKsd,aAGhB,mBAAIS,CAAgBpY,GAChB3F,KAAKud,iBAAmB5X,EACpB3F,KAAK8T,YACL9T,KAAK8T,UAAUiK,gBAAkBpY,GAIzC,mBAAIoY,GACA,OAAO/d,KAAKud,iBAGhB,QAAI9K,CAAK9M,GACL3F,KAAK2X,MAAQhS,EACT3F,KAAK8T,YACL9T,KAAK8T,UAAUrB,KAAO9M,GAI9B,QAAI8M,GACA,OAAOzS,KAAK2X,MAGhB,6BAAW9R,GACP,MAAO,IAAI9F,MAAM8F,mBAAoB,kBAAmB,iBAAkB,WAAY,iBAAkB,gBAAiB,OAAQ,cAAe,mBAAoB,QAGxK,wBAAAC,CAAyB5E,EAAc6E,EAAmBC,GAGtD,OAFAjG,MAAM+F,yBAAyB5E,EAAM6E,EAAWC,GAExC9E,GACJ,IAAK,kBACDlB,KAAKwd,eAAiBvG,WAAWjR,GACjC,MACJ,IAAK,iBACDhG,KAAKyd,cAAgBxN,EAAUjK,GAC/B,MACJ,IAAK,WACDhG,KAAK0d,SAAWzG,WAAWjR,GAC3B,MACJ,IAAK,iBACDhG,KAAK2d,cAAgB1G,WAAWjR,GAChC,MACJ,IAAK,gBACDhG,KAAK4d,aAAe3N,EAAUjK,GAC9B,MACJ,IAAK,OACDhG,KAAK6d,KAAO5G,WAAWjR,GACvB,MACJ,IAAK,cACDhG,KAAK8d,YAAc7G,WAAWjR,GAC9B,MACJ,IAAK,mBACDhG,KAAK+d,gBAAkB9G,WAAWjR,GAClC,MACJ,IAAK,OACDhG,KAAKyS,KAAOzM,IAM5BjE,eAAeC,OAAO,eAAgB+a,GCrNtC,MAAMiB,UAA+B3K,EAajC,WAAAvT,GACIC,MAAM,UAbFC,KAAYie,cAAG,EAEfje,KAAWke,YAAS,IAAIlO,OAAK,IAAK,KAElChQ,KAAoBme,qBAAS,IAAInO,OAAK,IAAK,KAE3ChQ,KAAS8U,UAAG,EAEZ9U,KAAMoe,QAAG,EAETpe,KAAWqe,YAAG,GAMtB,uBAAA5K,GACI,MAAO,CACHoC,SAAU7V,KAAK8U,UACfwJ,oBAAqBte,KAAKme,qBAC1BI,WAAYve,KAAKke,YACjBM,WAAYxe,KAAKqe,YACjBI,UAAWze,KAAKoe,OAASM,EAAAA,gBAAkBC,EAAcA,eACzDC,YAAa5e,KAAKie,cAQ1B,aAAInK,GACA,OAAO/T,MAAM+T,UAGjB,YAAI+B,CAASlQ,GACT3F,KAAK8U,UAAYnP,EACb3F,KAAK8T,YACL9T,KAAK8T,UAAU+B,SAAW7V,KAAK8U,WAIvC,YAAIe,GACA,OAAO7V,KAAK8U,UAGhB,uBAAIwJ,CAAoB3Y,GACpB3F,KAAKme,qBAAuBxY,EACxB3F,KAAK8T,YACL9T,KAAK8T,UAAUwK,oBAAsBte,KAAKme,sBAIlD,uBAAIG,GACA,OAAOte,KAAKme,qBAGhB,cAAII,CAAW5Y,GACX3F,KAAKke,YAAcvY,EACf3F,KAAK8T,YACL9T,KAAK8T,UAAUyK,WAAave,KAAKke,aAIzC,cAAIK,GACA,OAAOve,KAAKke,YAGhB,cAAIM,CAAW7Y,GACX3F,KAAKqe,YAAc1Y,EACf3F,KAAK8T,YACL9T,KAAK8T,UAAU0K,WAAaxe,KAAKqe,aAIzC,cAAIG,GACA,OAAOxe,KAAKqe,YAGhB,SAAIQ,CAAMlZ,GACN3F,KAAKoe,OAASzY,EACV3F,KAAK8T,YACL9T,KAAK8T,UAAU2K,UAAYze,KAAKoe,OAASM,EAAeA,gBAAGC,EAAcA,gBAIjF,SAAIE,GACA,OAAO7e,KAAKoe,OAGhB,eAAIQ,CAAYjZ,GACZ3F,KAAKie,aAAetY,EAChB3F,KAAK8T,YACL9T,KAAK8T,UAAU8K,YAAc5e,KAAKie,cAI1C,eAAIW,GACA,OAAO5e,KAAKie,aAGhB,6BAAWpY,GACP,MAAO,IACA9F,MAAM8F,mBACT,QACA,eACA,aACA,uBACA,WACA,eAIR,wBAAAC,CAAyB5E,EAAc6E,EAAmBC,GAGtD,OAFAjG,MAAM+F,yBAAyB5E,EAAM6E,EAAWC,GAExC9E,GACJ,IAAK,WACDlB,KAAK6V,SAAW4C,SAASzS,EAAU,IACnC,MACJ,IAAK,uBACDhG,KAAKse,oBAAsBvO,EAAU/J,GACrC,MACJ,IAAK,aACDhG,KAAKue,WAAaxO,EAAU/J,GAC5B,MACJ,IAAK,cACDhG,KAAKwe,WAAavH,WAAWjR,GAC7B,MACJ,IAAK,QACDhG,KAAK6e,MAAQ7e,KAAKoT,aAAa,SAC/B,MACJ,IAAK,eACDpT,KAAK4e,YAAc5e,KAAKoT,aAAa,kBAMrDrR,eAAeC,OAAO,YAAagc,GChJnC,MAAMc,EAAQ,IAAI9O,EAAAA,KACZ+O,EAAQ,IAAI7O,EAAAA,KACZ8O,EAAQ,IAAI5O,EAAAA,KAwBlB,MAAM6O,UAA+B5L,EAGjC,WAAAvT,GACIC,MAAM,UAGNC,KAAKkf,SAAW,IAAIC,iBAAiBnf,KAAKof,gBAAgB1c,KAAK1C,OAC/DA,KAAKkf,SAASG,QAAQrf,KAAM,CACxBsf,WAAW,IAIftf,KAAKoF,iBAAiB,yBAA0BpF,KAAKuf,6BAA6B7c,KAAK1C,OACvFA,KAAKoF,iBAAiB,qBAAsBpF,KAAKwf,yBAAyB9c,KAAK1C,OAGnF,aAAA6T,GAEI7T,KAAK6C,iBAAgC,sBAAsB4B,SAASgb,IAChE,MAAMC,EAAaD,EAActe,aAAa,QACxCwe,EAAaF,EAActe,aAAa,cAC1Cue,GACA1f,KAAK4f,aAAaF,EAAYC,MAKlC,eAAAE,CAAgBC,EAAaH,GACjC,IACI,MAAMI,EAAmBJ,EAAaK,KAAKC,MAAMN,GAAc,CAAE,EAE3DO,EAAa,CAACC,EAAaC,EAAaza,KAE1C,GAAqB,iBAAVA,GAAsBA,EAAMgK,WAAW,UAAW,CACzD,MAAM0Q,EAAU1a,EAAM2a,MAAM,GACtB5b,EAAevB,SAAS+P,cAAc,YAAYmN,KACxD,GAAI3b,EAEA,YADAyb,EAAOC,GAAO1b,EAAaE,OAMnC,GAAI7B,MAAMwd,QAAQ5a,GAAQ,CACtB,GAAIwa,EAAOC,aAAgBpQ,OAEvB,YADAmQ,EAAOC,GAAOtB,EAAM0B,IAAI7a,EAAM,GAAIA,EAAM,KAG5C,GAAIwa,EAAOC,aAAgBlQ,OAEvB,YADAiQ,EAAOC,GAAOrB,EAAMyB,IAAI7a,EAAM,GAAIA,EAAM,GAAIA,EAAM,KAGtD,GAAIwa,EAAOC,aAAgBhQ,OAEvB,YADA+P,EAAOC,GAAOpB,EAAMwB,IAAI7a,EAAM,GAAIA,EAAM,GAAIA,EAAM,GAAIA,EAAM,KAMpE,GAAIA,GAA0B,iBAAVA,IAAuB5C,MAAMwd,QAAQ5a,GAAQ,CACxDwa,EAAOC,IAA+B,iBAAhBD,EAAOC,KAC9BD,EAAOC,GAAO,CAAE,GAEpB,IAAK,MAAMK,KAAa9a,EACpBua,EAAWC,EAAOC,GAAMK,EAAW9a,EAAM8a,SAG7CN,EAAOC,GAAOza,GAItB,IAAK,MAAMya,KAAOL,EACdG,EAAWJ,EAAQM,EAAKL,EAAiBK,IAE/C,MAAOzJ,GACL5D,QAAQ4D,MAAM,wCAAwCgJ,KAAehJ,IAIrE,4BAAA4I,CAA6BmB,GACjC,MACMhB,EADgBgB,EAAMP,OACKhf,aAAa,QAC9C,IAAKue,IAAe1f,KAAK8T,UAAW,OAEpC,MAAMgM,EAAS9f,KAAK8T,UAAUlB,IAAI8M,GAC9BI,GACA9f,KAAK6f,gBAAgBC,EAAQY,EAAMC,OAAOhB,YAI1C,wBAAAH,CAAyBkB,GAC7B,MACMhB,EADgBgB,EAAMP,OACKhf,aAAa,QAC9C,IAAKue,IAAe1f,KAAK8T,UAAW,OAEpC,MAAMgM,EAAS9f,KAAK8T,UAAUlB,IAAI8M,GAC9BI,IACAA,EAAO1O,QAAUsP,EAAMC,OAAOvP,SAI9B,YAAAwO,CAAa1e,EAAcye,GAC/B,OAAK3f,KAAK8T,WAEV9T,KAAK8T,UAAU8M,GAAG,UAAU1f,KAAS4e,IACjC9f,KAAK6f,gBAAgBC,EAAQH,EAAW,IAErC3f,KAAK8T,UAAU+M,OAAO3f,IALD,KAQxB,aAAA4f,CAAc5f,GACblB,KAAK8T,WACV9T,KAAK8T,UAAUxO,QAAQpE,GAGnB,eAAAke,CAAgB2B,GACpB,IAAK,MAAMC,KAAYD,EAEnBC,EAASC,WAAWxc,SAASyc,IACzB,GAAIA,aAAgBrhB,aAA8C,cAA/BqhB,EAAKC,QAAQ3R,cAA+B,CAC3E,MAAMkQ,EAAawB,EAAK/f,aAAa,QAC/Bwe,EAAauB,EAAK/f,aAAa,cACjCue,GACA1f,KAAK4f,aAAaF,EAAYC,OAM1CqB,EAASI,aAAa3c,SAASyc,IAC3B,GAAIA,aAAgBrhB,aAA8C,cAA/BqhB,EAAKC,QAAQ3R,cAA+B,CAC3E,MAAMkQ,EAAawB,EAAK/f,aAAa,QACjCue,GACA1f,KAAK8gB,cAAcpB,OAOvC,oBAAAra,SACIrF,KAAKkf,SAASmC,aACY,QAA1B/gB,EAAAP,MAAMsF,4BAAoB,IAAA/E,GAAAA,EAAAghB,KAAAthB,MAO9B,aAAI8T,GACA,OAAO/T,MAAM+T,WAIrB/R,eAAeC,OAAO,aAAcid,GCxLpC,MAAMsC,UAAsB1hB,YAA5B,WAAAC,uBACYE,KAAWwhB,YAAW,KAEtBxhB,KAAQsQ,UAAY,EAEpBtQ,KAAKuQ,MAAW,GAMxB,oBAAIkR,CAAiB9b,GACjB3F,KAAKwhB,YAAc7b,EACnB3F,KAAKW,cAAc,IAAIC,YAAY,yBAA0B,CACzD+f,OAAQ,CAAEhB,WAAYha,GACtB+b,SAAS,KAQjB,oBAAID,GACA,OAAOzhB,KAAKwhB,YAOhB,WAAIpQ,CAAQzL,GACR3F,KAAKsQ,SAAW3K,EAChB3F,KAAKW,cAAc,IAAIC,YAAY,qBAAsB,CACrD+f,OAAQ,CAAEvP,QAASzL,GACnB+b,SAAS,KAQjB,WAAItQ,GACA,OAAOpR,KAAKsQ,SAOhB,QAAIpP,CAAKyE,GACL3F,KAAKuQ,MAAQ5K,EAOjB,QAAIzE,GACA,OAAOlB,KAAKuQ,MAGhB,6BAAW1K,GACP,MAAO,CAAC,aAAc,UAAW,QAGrC,wBAAAC,CAAyB5E,EAAc6E,EAAmBC,GACtD,OAAQ9E,GACJ,IAAK,aACDlB,KAAKyhB,iBAAmBzb,EACxB,MACJ,IAAK,UACDhG,KAAKoR,QAAuB,UAAbpL,EACf,MACJ,IAAK,OACDhG,KAAKkB,KAAO8E,IAM5BjE,eAAeC,OAAO,YAAauf,GC5EnC,MAAMI,UAA8BtO,EAehC,WAAAvT,GACIC,MAAM,SAfFC,KAAc4hB,eAAyC,SAEvD5hB,KAAY6hB,aAAW,IAEvB7hB,KAAM8hB,OAAW,EAEjB9hB,KAAW+hB,aAAY,EAEvB/hB,KAAYgiB,aAAW,EAEvBhiB,KAAciiB,eAAW,EAEzBjiB,KAAOkiB,QAAW,EAM1B,uBAAAzO,GACI,MAAO,CACH0O,cAAeniB,KAAK4hB,eACpBQ,YAAapiB,KAAK6hB,aAClBQ,MAAOriB,KAAK8hB,OACZQ,WAAYtiB,KAAK+hB,YACjBQ,YAAaviB,KAAKgiB,aAClBQ,cAAexiB,KAAKiiB,eACpBQ,OAAQziB,KAAKkiB,SAQrB,aAAIpO,GACA,OAAO/T,MAAM+T,UAOjB,iBAAIqO,CAAcxc,GACd3F,KAAK4hB,eAAiBjc,EAClB3F,KAAK8T,YACL9T,KAAK8T,UAAUqO,cAAgBxc,GAQvC,iBAAIwc,GACA,OAAOniB,KAAK4hB,eAOhB,eAAIQ,CAAYzc,GACZ3F,KAAK6hB,aAAelc,EAChB3F,KAAK8T,YACL9T,KAAK8T,UAAUsO,YAAczc,GAQrC,eAAIyc,GACA,OAAOpiB,KAAK6hB,aAOhB,SAAIQ,CAAM1c,GACN3F,KAAK8hB,OAASnc,EACV3F,KAAK8T,YACL9T,KAAK8T,UAAUuO,MAAQ1c,GAQ/B,SAAI0c,GACA,OAAOriB,KAAK8hB,OAOhB,cAAIQ,CAAW3c,GACX3F,KAAK+hB,YAAcpc,EACf3F,KAAK8T,YACL9T,KAAK8T,UAAUwO,WAAa3c,GAQpC,cAAI2c,GACA,OAAOtiB,KAAK+hB,YAOhB,eAAIQ,CAAY5c,GACZ3F,KAAKgiB,aAAerc,EAChB3F,KAAK8T,YACL9T,KAAK8T,UAAUyO,YAAc5c,GAQrC,eAAI4c,GACA,OAAOviB,KAAKgiB,aAOhB,iBAAIQ,CAAc7c,GACd3F,KAAKiiB,eAAiBtc,EAClB3F,KAAK8T,YACL9T,KAAK8T,UAAU0O,cAAgB7c,GAQvC,iBAAI6c,GACA,OAAOxiB,KAAKiiB,eAOhB,UAAIQ,CAAO9c,GACP3F,KAAKkiB,QAAUvc,EACX3F,KAAK8T,YACL9T,KAAK8T,UAAU2O,OAAS9c,GAQhC,UAAI8c,GACA,OAAOziB,KAAKkiB,QAGhB,6BAAWrc,GACP,MAAO,IACA9F,MAAM8F,mBACT,iBACA,eACA,QACA,aACA,eACA,kBACA,UAIR,wBAAAC,CAAyB5E,EAAc6E,EAAmBC,GAGtD,OAFAjG,MAAM+F,yBAAyB5E,EAAM6E,EAAWC,GAExC9E,GACJ,IAAK,iBACDlB,KAAKmiB,cAAgBnc,EACrB,MACJ,IAAK,eACDhG,KAAKoiB,YAAcnL,WAAWjR,GAC9B,MACJ,IAAK,QACDhG,KAAKqiB,MAAQpL,WAAWjR,GACxB,MACJ,IAAK,aACDhG,KAAKsiB,WAAatiB,KAAKoT,aAAa,cACpC,MACJ,IAAK,eACDpT,KAAKuiB,YAActL,WAAWjR,GAC9B,MACJ,IAAK,kBACDhG,KAAKwiB,cAAgBvL,WAAWjR,GAChC,MACJ,IAAK,SACDhG,KAAKyiB,OAASxL,WAAWjR,KAMzCjE,eAAeC,OAAO,YAAa2f,GCtNnC,MAAMe,UAAyB9iB,EAA/B,WAAAE,uBACYE,KAAM4Y,OAAW,GAEjB5Y,KAAS2iB,WAAY,EAErB3iB,KAAS4iB,UAAkB,KAE3B5iB,KAAK6iB,OAAY,EAEjB7iB,KAAKuQ,MAAW,GAEhBvQ,KAAQ8iB,UAAY,EAEpB9iB,KAAM8hB,OAAW,EAEjB9hB,KAAU+iB,WAAW,EAErB/iB,KAAOkiB,QAAW,EAK1BliB,KAASgjB,UAAqB,KAE9B,uBAAMrgB,eACuB,UAAnB3C,KAAKijB,oBAAc,IAAA3iB,OAAA,EAAAA,EAAAO,SAEzB,MAAMqiB,EAAU,CACZC,SAAUnjB,KAAK2iB,UACfS,KAAMpjB,KAAK6iB,MACXQ,QAASrjB,KAAK8iB,SACdT,MAAOriB,KAAK8hB,OACZwB,UAAWtjB,KAAK+iB,WAChBN,OAAQziB,KAAKkiB,SAEbliB,KAAK4iB,YACLM,EAAQK,SAAWvjB,KAAK4iB,WAG5B5iB,KAAKgjB,UAAYhjB,KAAKijB,aAAcnP,UAAW0P,QAAQxjB,KAAKuQ,MAAO2S,GACnEljB,KAAK4E,MAAQ5E,KAAK4Y,OAClB5Y,KAAKgjB,UAAWS,OAEhBzjB,KAAKU,WAGT,oBAAA2E,GACIrF,KAAKijB,aAAcnP,UAAW4P,WAAW1jB,KAAKuQ,OAGlD,gBAAc0S,GACV,MAAMA,EAAejjB,KAAKO,cAE1B,OAAM0iB,aAAwBtB,EAKvBsB,GAJHlQ,QAAQC,KAAK,8DACN,MAUf,SAAIpO,CAAMe,SAEN,GADA3F,KAAK4Y,OAASjT,EACV3F,KAAKgjB,UAAW,CAChB,MAAMzQ,EAA8B,QAAzBjS,EAAA8R,EAAaQ,IAAIjN,UAAQ,IAAArF,OAAA,EAAAA,EAAAiS,GAChCA,IACAvS,KAAKgjB,UAAUpe,MAAQ2N,IASnC,SAAI3N,GACA,OAAO5E,KAAK4Y,OAOhB,YAAIuK,CAASxd,GACT3F,KAAK2iB,UAAYhd,EACb3F,KAAKgjB,YACLhjB,KAAKgjB,UAAUG,SAAWxd,GAQlC,YAAIwd,GACA,OAAOnjB,KAAK2iB,UAOhB,YAAIY,CAAS5d,GACT3F,KAAK4iB,UAAYjd,EACb3F,KAAKgjB,YACLhjB,KAAKgjB,UAAUO,SAAW5d,GAQlC,YAAI4d,GACA,OAAOvjB,KAAK4iB,UAOhB,QAAIQ,CAAKzd,GACL3F,KAAK6iB,MAAQld,EACT3F,KAAKgjB,YACLhjB,KAAKgjB,UAAUI,KAAOzd,GAQ9B,QAAIyd,GACA,OAAOpjB,KAAK6iB,MAOhB,QAAI3hB,CAAKyE,GACL3F,KAAKuQ,MAAQ5K,EACT3F,KAAKgjB,YACLhjB,KAAKgjB,UAAU9hB,KAAOyE,GAQ9B,QAAIzE,GACA,OAAOlB,KAAKuQ,MAOhB,WAAI8S,CAAQ1d,GACR3F,KAAK8iB,SAAWnd,EACZ3F,KAAKgjB,YACLhjB,KAAKgjB,UAAUK,QAAU1d,GAQjC,WAAI0d,GACA,OAAOrjB,KAAK8iB,SAOhB,SAAIT,CAAM1c,GACN3F,KAAK8hB,OAASnc,EACV3F,KAAKgjB,YACLhjB,KAAKgjB,UAAUX,MAAQ1c,GAQ/B,SAAI0c,GACA,OAAOriB,KAAK8hB,OAOhB,aAAIwB,CAAU3d,GACV3F,KAAK+iB,WAAapd,EACd3F,KAAKgjB,YACLhjB,KAAKgjB,UAAUM,UAAY3d,GAQnC,aAAI2d,GACA,OAAOtjB,KAAK+iB,WAOhB,UAAIN,CAAO9c,GACP3F,KAAKkiB,QAAUvc,EACX3F,KAAKgjB,YACLhjB,KAAKgjB,UAAUP,OAAS9c,GAQhC,UAAI8c,GACA,OAAOziB,KAAKkiB,QAGhB,6BAAWrc,GACP,MAAO,CAAC,QAAS,WAAY,WAAY,OAAQ,OAAQ,UAAW,QAAS,YAAa,UAG9F,wBAAAC,CAAyB5E,EAAc6E,EAAmBC,GACtD,OAAQ9E,GACJ,IAAK,QACDlB,KAAK4E,MAAQoB,EACb,MACJ,IAAK,WACDhG,KAAKujB,SAAWtM,WAAWjR,GAC3B,MACJ,IAAK,OACDhG,KAAKojB,KAAOpjB,KAAKoT,aAAa,QAC9B,MACJ,IAAK,OACDpT,KAAKkB,KAAO8E,EACZ,MACJ,IAAK,UACDhG,KAAKqjB,QAAUrjB,KAAKoT,aAAa,WACjC,MACJ,IAAK,QACDpT,KAAKqiB,MAAQpL,WAAWjR,GACxB,MACJ,IAAK,YACDhG,KAAKsjB,UAAYrM,WAAWjR,GAC5B,MACJ,IAAK,SACDhG,KAAKyiB,OAASxL,WAAWjR,KAMzCjE,eAAeC,OAAO,WAAY0gB,GC9QlC,MAAMiB,UAAqB/jB,EAA3B,WAAAE,uBACYE,KAAM4Y,OAAW,GAEjB5Y,KAAO4jB,QAAkB,KAEjC,iBAAAjhB,GACI3C,KAAK6jB,aACL7jB,KAAKU,WAGT,oBAAA2E,GACIrF,KAAK8jB,eAGD,YAAAC,CAAaC,GACjBhkB,KAAK4jB,QAAUI,EAAUC,0BAGrBD,EAAUE,WAAWC,OAAS,IAC9BnkB,KAAK4jB,QAAQlQ,aAAa,QAE1B1T,KAAK4jB,QAAQQ,KAAKC,gBAAgB,YAAaL,EAAUE,WAAW,GAAGzH,WAG3E,MAAM6H,EAAsBtkB,KAAKS,cACjC,GAAI6jB,EACAA,EAAoBzjB,QAAQC,MAAK,KAC7BwjB,EAAoB1T,OAAQe,SAAS3R,KAAK4jB,QAAS,QAEpD,CACH,MAAMW,EAAavkB,KAAKK,WACpBkkB,GACAA,EAAW1jB,QAAQC,MAAK,KACpByjB,EAAW/hB,IAAKoP,KAAKD,SAAS3R,KAAK4jB,QAAS,KAMpD,gBAAMC,SACV7jB,KAAK8jB,eAEL,MAAMS,QAAoC,QAAjBjkB,EAAAN,KAAKK,kBAAY,IAAAC,OAAA,EAAAA,EAAAO,SACpC2B,EAAM+hB,aAAA,EAAAA,EAAY/hB,IAElBoC,EAAQwN,EAAaQ,IAAI5S,KAAK4Y,QAC/BhU,IAIDA,EAAM4X,OACNxc,KAAK+jB,aAAanf,EAAM6X,WAExB7X,EAAM+X,KAAK,QAAQ,KACf3c,KAAK+jB,aAAanf,EAAM6X,SAAS,IAErCja,EAAKqC,OAAO2f,KAAK5f,KAIjB,YAAAkf,SACU,QAAdxjB,EAAAN,KAAK4jB,eAAS,IAAAtjB,GAAAA,EAAAgF,UACdtF,KAAK4jB,QAAU,KAOnB,SAAIhf,CAAMe,GACN3F,KAAK4Y,OAASjT,EACV3F,KAAKykB,aACLzkB,KAAK6jB,aAQb,SAAIjf,GACA,OAAO5E,KAAK4Y,OAGhB,6BAAW/S,GACP,MAAO,CAAC,SAGZ,wBAAAC,CAAyB5E,EAAc6E,EAAmBC,GACtD,GACS,UADD9E,EAEAlB,KAAK4E,MAAQoB,GAM7BjE,eAAeC,OAAO,WAAY2hB,GCjGlC,MAAMe,UAAqB9kB,EAA3B,WAAAE,uBAIYE,KAAA2kB,KAAO,OAKP3kB,KAAS4kB,UAAG,IAAInV,EAAAA,MAAM,EAAG,EAAG,GAK5BzP,KAAW6kB,YAAG,EAKd7kB,KAAS8kB,UAAG,EAKZ9kB,KAAO+kB,QAAG,IAKlB/kB,KAAKglB,MAAiB,KAEtB,uBAAMriB,eACqB,UAAjB3C,KAAKK,kBAAY,IAAAC,OAAA,EAAAA,EAAAO,SAEvBb,KAAKglB,MAAQhlB,KAAKK,WAAYmC,IAAKwiB,MACnChlB,KAAKilB,sBAELjlB,KAAKU,WAGT,mBAAAukB,GACQjlB,KAAKglB,QACLhlB,KAAKglB,MAAME,UAAUC,IAAMnlB,KAAK2kB,KAChC3kB,KAAKglB,MAAME,UAAUE,SAAWplB,KAAK4kB,UACrC5kB,KAAKglB,MAAME,UAAUG,WAAarlB,KAAK6kB,YACvC7kB,KAAKglB,MAAME,UAAUI,SAAWtlB,KAAK8kB,UACrC9kB,KAAKglB,MAAME,UAAUK,OAASvlB,KAAK+kB,SAS3C,OAAII,CAAIxf,GACJ3F,KAAK2kB,KAAOhf,EACR3F,KAAKglB,QACLhlB,KAAKglB,MAAME,UAAUC,IAAMxf,GAQnC,OAAIwf,GACA,OAAOnlB,KAAK2kB,KAOhB,YAAIS,CAASzf,GACT3F,KAAK4kB,UAAYjf,EACb3F,KAAKglB,QACLhlB,KAAKglB,MAAME,UAAUE,SAAWzf,GAQxC,YAAIyf,GACA,OAAOplB,KAAK4kB,UAOhB,cAAIS,CAAW1f,GACX3F,KAAK6kB,YAAclf,EACf3F,KAAKglB,QACLhlB,KAAKglB,MAAME,UAAUG,WAAa1f,GAQ1C,cAAI0f,GACA,OAAOrlB,KAAK6kB,YAOhB,YAAIS,CAAS3f,GACT3F,KAAK8kB,UAAYnf,EACb3F,KAAKglB,QACLhlB,KAAKglB,MAAME,UAAUI,SAAW3f,GAQxC,YAAI2f,GACA,OAAOtlB,KAAK8kB,UAOhB,UAAIS,CAAO5f,GACP3F,KAAK+kB,QAAUpf,EACX3F,KAAKglB,QACLhlB,KAAKglB,MAAME,UAAUK,OAAS5f,GAQtC,UAAI4f,GACA,OAAOvlB,KAAK+kB,QAGhB,6BAAWlf,GACP,MAAO,CAAC,MAAO,YAAa,cAAe,YAAa,WAG5D,wBAAAC,CAAyB5E,EAAc6E,EAAmBC,GACtD,OAAQ9E,GACJ,IAAK,MACDlB,KAAKmlB,IAAMnf,EACX,MACJ,IAAK,YACDhG,KAAKolB,SAAW9V,EAAWtJ,GAC3B,MACJ,IAAK,cACDhG,KAAKqlB,WAAapO,WAAWjR,GAC7B,MACJ,IAAK,YACDhG,KAAKslB,SAAWrO,WAAWjR,GAC3B,MACJ,IAAK,UACDhG,KAAKulB,OAAStO,WAAWjR,KAOzCjE,eAAeC,OAAO,WAAY0iB,GC3KlC,MAAMc,UAAmB5lB,EAAzB,WAAAE,uBACYE,KAAM4Y,OAAG,GAET5Y,KAAOylB,QAAG,IAAIvV,EAAAA,KAAK,EAAG,IAAM,GAE5BlQ,KAAUqa,WAAG,EAEbra,KAAAyQ,UAAY,IAAIP,OAEhBlQ,KAAM0lB,OAAG,EAET1lB,KAAS2lB,WAAG,EAEZ3lB,KAAM0Q,OAAG,IAAIR,EAAAA,KAAK,IAAK,IAAK,KAE5BlQ,KAAK2X,MAAyC,WAE9C3X,KAAM4lB,OAAiB,KAE/B,iBAAAjjB,GACI3C,KAAK6lB,cACL7lB,KAAKU,WAGT,oBAAA2E,GACIrF,KAAK8lB,gBAGD,eAAAC,CAAgBnhB,GACpB,IAAK5E,KAAK4lB,OAAQ,OAElB,MAAMI,EAASphB,EAAM6X,SAEfwJ,EAASC,EAAAA,YAAYC,sBAAsBH,GAIjD,GAHAC,EAAOvJ,WAAa,EACpB1c,KAAK4lB,OAAOK,OAASA,EAEjBjmB,KAAK2lB,UAAW,CAChB,MAAMS,EAAWF,EAAAA,YAAYG,uBAAuBL,GAC9CM,EAAWJ,EAAAA,YAAYK,cAAcH,GAC3CpmB,KAAK4lB,OAAOU,SAAWA,EAG3B,MAAME,EAAQxmB,KAAK4lB,OAAOa,OAAOC,aAAaC,EAAAA,gBAC1CH,IACAA,EAAMpV,QAAyB,SAAfpR,KAAK2X,OAGzB3X,KAAK4lB,OAAOgB,IAAInU,KAAOzS,KAAK2X,MAC5B3X,KAAK4lB,OAAOgB,IAAI1F,KAAKlP,cAAchS,KAAK0Q,QACxC1Q,KAAK4lB,OAAOgB,IAAIC,OAAS7mB,KAAKylB,QAC9BzlB,KAAK4lB,OAAOkB,gBAAkB9mB,KAAKqa,WAG/B,iBAAMwL,SACV,MAAMtB,QAAoC,QAAjBjkB,EAAAN,KAAKK,kBAAY,IAAAC,OAAA,EAAAA,EAAAO,SACpC2B,EAAM+hB,aAAA,EAAAA,EAAY/hB,IACxB,IAAKA,EACD,OAGJ,MAAMoC,EAAQwN,EAAaQ,IAAI5S,KAAK4Y,QAC/BhU,IAIL5E,KAAK4lB,OAASpjB,EAAIwiB,MAEdpgB,EAAM4X,OACNxc,KAAK+lB,gBAAgBnhB,IAErBA,EAAM+X,KAAK,QAAQ,KACf3c,KAAK+lB,gBAAgBnhB,EAAM,IAE/BpC,EAAIqC,OAAO2f,KAAK5f,KAIhB,aAAAkhB,WACC9lB,KAAK4lB,SAEU,QAApBtlB,EAAAN,KAAK4lB,OAAOK,cAAQ,IAAA3lB,GAAAA,EAAAgF,UAEpBtF,KAAK4lB,OAAOK,OAAS,KACC,QAAtBc,EAAA/mB,KAAK4lB,OAAOU,gBAAU,IAAAS,GAAAA,EAAAzhB,UAEtBtF,KAAK4lB,OAAOU,SAAW,KAEvBtmB,KAAK4lB,OAAS,MAGlB,SAAIhhB,CAAMe,GACN3F,KAAK4Y,OAASjT,EACV3F,KAAKykB,aACLzkB,KAAK6lB,cAIb,SAAIjhB,GACA,OAAO5E,KAAK4Y,OAGhB,UAAIiO,CAAOlhB,GACP3F,KAAKylB,QAAU9f,EACX3F,KAAK4lB,SACL5lB,KAAK4lB,OAAOgB,IAAIC,OAAS7mB,KAAKylB,SAItC,UAAIoB,GACA,OAAO7mB,KAAKylB,QAGhB,aAAI3K,CAAUnV,GACV3F,KAAKqa,WAAa1U,EACd3F,KAAK4lB,SACL5lB,KAAK4lB,OAAOkB,gBAAkB9mB,KAAKqa,YAI3C,aAAIS,GACA,OAAO9a,KAAKqa,WAGhB,SAAI2M,CAAMrhB,GACN3F,KAAK0lB,OAAS/f,EACV3F,KAAK4lB,SACL5lB,KAAK4lB,OAAOqB,UAAYjnB,KAAK0lB,QAIrC,SAAIsB,GACA,OAAOhnB,KAAK0lB,OAGhB,YAAIU,CAASzgB,GACT3F,KAAK2lB,UAAYhgB,EAGrB,YAAIygB,GACA,OAAOpmB,KAAK2lB,UAGhB,YAAIrU,CAAS3L,GACT3F,KAAKyQ,UAAY9K,EACb3F,KAAK4lB,SACL5lB,KAAK4lB,OAAOsB,gBAAiB,IAAI9P,EAAAA,MAAOmB,mBAAmB5S,IAInE,YAAI2L,GACA,OAAOtR,KAAKyQ,UAGhB,SAAIc,CAAM5L,GACN3F,KAAK0Q,OAAS/K,EACV3F,KAAK4lB,QACL5lB,KAAK4lB,OAAOgB,IAAI1F,KAAKlP,cAAchS,KAAK0Q,QAIhD,SAAIa,GACA,OAAOvR,KAAK0Q,OAGhB,QAAI+B,CAAK9M,GAEL,GADA3F,KAAK2X,MAAQhS,EACT3F,KAAK4lB,OAAQ,CACb5lB,KAAK4lB,OAAOgB,IAAInU,KAAOzS,KAAK2X,MAC5B,MAAM6O,EAAQxmB,KAAK4lB,OAAOa,OAAOC,aAAaC,EAAAA,gBAC1CH,IACAA,EAAMpV,QAAyB,SAAfpR,KAAK2X,QAKjC,QAAIlF,GACA,OAAOzS,KAAK2X,MAGhB,6BAAW9R,GACP,MAAO,CAAC,QAAS,SAAU,YAAa,QAAS,WAAY,WAAY,QAAS,QAGtF,wBAAAC,CAAyB5E,EAAc6E,EAAmBC,GACtD,OAAQ9E,GACJ,IAAK,QACDlB,KAAK4E,MAAQoB,EACb,MACJ,IAAK,SACDhG,KAAK6mB,OAAS5W,EAAUjK,GACxB,MACJ,IAAK,YACDhG,KAAK8a,UAAY7D,WAAWjR,GAC5B,MACJ,IAAK,QACDhG,KAAKgnB,MAAQvO,SAASzS,EAAU,IAChC,MACJ,IAAK,WACDhG,KAAKomB,SAAWpmB,KAAKoT,aAAalS,GAClC,MACJ,IAAK,WACDlB,KAAKsR,SAAWrB,EAAUjK,GAC1B,MACJ,IAAK,QACDhG,KAAKuR,MAAQtB,EAAUjK,GACvB,MACJ,IAAK,OACDhG,KAAKyS,KAAOzM,IAM5BjE,eAAeC,OAAO,SAAUwjB"}
|
|
1
|
+
{"version":3,"file":"pwc.min.js","sources":["../src/async-element.ts","../src/module.ts","../src/app.ts","../src/colors.ts","../src/utils.ts","../src/entity.ts","../src/asset.ts","../src/components/component.ts","../src/components/listener-component.ts","../src/components/camera-component.ts","../src/components/collision-component.ts","../src/components/element-component.ts","../src/components/gsplat-component.ts","../src/components/light-component.ts","../src/material.ts","../src/components/render-component.ts","../src/components/rigidbody-component.ts","../src/components/screen-component.ts","../src/components/script-component.ts","../src/components/script.ts","../src/components/sound-component.ts","../src/components/sound-slot.ts","../src/model.ts","../src/scene.ts","../src/sky.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["AsyncElement","HTMLElement","constructor","super","this","_readyPromise","Promise","resolve","_readyResolve","closestApp","_a","parentElement","closest","closestEntity","_onReady","dispatchEvent","CustomEvent","ready","then","ModuleElement","loadPromise","loadModule","name","getAttribute","glue","wasm","fallback","basisInitialize","glueUrl","wasmUrl","fallbackUrl","WasmModule","setConfig","getInstance","getLoadPromise","customElements","define","AppElement","_canvas","_alpha","_antialias","_depth","_stencil","_highResolution","_hierarchyReady","app","_onWindowResize","bind","connectedCallback","moduleElements","querySelectorAll","all","Array","from","map","module","document","createElement","appendChild","Application","graphicsDeviceOptions","alpha","antialias","depth","stencil","keyboard","Keyboard","window","mouse","Mouse","graphicsDevice","maxPixelRatio","devicePixelRatio","setCanvasFillMode","FILLMODE_FILL_WINDOW","setCanvasResolution","RESOLUTION_AUTO","assetElements","forEach","assetElement","createAsset","asset","assets","add","materialElements","materialElement","createMaterial","entityElements","entityElement","createEntity","buildHierarchy","preload","start","addEventListener","disconnectedCallback","destroy","removeEventListener","contains","removeChild","resizeCanvas","value","hierarchyReady","highResolution","observedAttributes","attributeChangedCallback","_oldValue","newValue","CSS_COLORS","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","green","greenyellow","grey","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen","parseColor","hexColor","toLowerCase","Color","fromString","startsWith","components","split","Number","parseVec2","Vec2","parseVec3","Vec3","parseVec4","Vec4","EntityElement","_enabled","_name","_position","_rotation","_scale","_tags","entity","Entity","enabled","position","setLocalPosition","rotation","setLocalEulerAngles","scale","setLocalScale","tags","tag","trim","addChild","root","childEntities","child","clear","extToType","Map","AssetElement","_preload","destroyAsset","id","src","type","ext","pop","get","Asset","url","console","warn","unload","querySelector","_newValue","hasAttribute","ComponentElement","componentName","_component","_componentName","getInitialComponentData","addComponent","data","initComponent","component","removeComponent","ListenerComponentElement","CameraComponentElement","_clearColor","_clearColorBuffer","_clearDepthBuffer","_clearStencilBuffer","_cullFaces","_farClip","_flipFaces","_fov","_frustumCulling","_nearClip","_orthographic","_orthoHeight","_priority","_rect","_scissorRect","clearColor","clearColorBuffer","clearDepthBuffer","clearStencilBuffer","cullFaces","farClip","flipFaces","fov","frustumCulling","nearClip","orthographic","orthoHeight","priority","rect","scissorRect","xrAvailable","xrManager","system","xr","supported","isAvailable","XRTYPE_VR","startXr","space","callback","err","error","message","endXr","projection","PROJECTION_ORTHOGRAPHIC","PROJECTION_PERSPECTIVE","parseFloat","CollisionComponentElement","_angularOffset","Quat","_axis","_convexHull","_halfExtents","_height","_linearOffset","_radius","_type","axis","angularOffset","convexHull","halfExtents","height","linearOffset","radius","x","y","z","q","setFromEulerAngles","parseQuat","parseInt","ElementComponentElement","_anchor","_asset","_autoWidth","_color","_fontSize","_lineHeight","_pivot","_text","_width","_wrapLines","_material","useFog","anchor","autoWidth","color","fontAsset","fontSize","lineHeight","pivot","text","width","wrapLines","GSplatComponentElement","LightComponentElement","_castShadows","_innerConeAngle","_intensity","_normalOffsetBias","_outerConeAngle","_range","_shadowBias","_shadowDistance","_shadowResolution","castShadows","innerConeAngle","intensity","normalOffsetBias","outerConeAngle","range","shadowBias","shadowDistance","shadowResolution","includes","MaterialElement","_diffuse","_diffuseMap","_metalnessMap","_normalMap","_roughnessMap","material","StandardMaterial","glossInvert","useMetalness","diffuse","diffuseMap","metalnessMap","normalMap","roughnessMap","update","setMap","property","loaded","resource","anisotropy","once","RenderComponentElement","_receiveShadows","receiveShadows","RigidBodyComponentElement","_angularDamping","_angularFactor","_friction","_linearDamping","_linearFactor","_mass","_restitution","_rollingFriction","angularDamping","angularFactor","friction","linearDamping","linearFactor","mass","restitution","rollingFriction","ScreenComponentElement","_screenSpace","_resolution","_referenceResolution","_blend","_scaleBlend","referenceResolution","resolution","scaleBlend","scaleMode","SCALEMODE_BLEND","SCALEMODE_NONE","screenSpace","blend","tmpV2","tmpV3","tmpV4","ScriptComponentElement","observer","MutationObserver","handleMutations","observe","childList","handleScriptAttributesChange","handleScriptEnableChange","scriptElement","scriptName","attributes","createScript","applyAttributes","script","attributesObject","JSON","parse","applyValue","target","key","assetId","slice","isArray","set","nestedKey","event","detail","on","create","destroyScript","mutations","mutation","addedNodes","node","tagName","removedNodes","disconnect","call","ScriptElement","_attributes","scriptAttributes","bubbles","SoundComponentElement","_distanceModel","_maxDistance","_pitch","_positional","_refDistance","_rollOffFactor","_volume","distanceModel","maxDistance","pitch","positional","refDistance","rollOffFactor","volume","SoundSlotElement","_autoPlay","_duration","_loop","_overlap","_startTime","soundSlot","soundElement","options","autoPlay","loop","overlap","startTime","duration","addSlot","play","removeSlot","ModelElement","_entity","_loadModel","_unloadModel","_instantiate","container","instantiateRenderEntity","animations","length","anim","assignAnimation","parentEntityElement","appElement","load","isConnected","SceneElement","_fog","_fogColor","_fogDensity","_fogStart","_fogEnd","scene","updateSceneSettings","fog","density","end","fogColor","fogDensity","fogStart","fogEnd","SkyElement","_center","_level","_lighting","_scene","_loadSkybox","_unloadSkybox","_generateSkybox","source","skybox","EnvLighting","generateSkyboxCubemap","lighting","generateLightingSource","envAtlas","generateAtlas","layer","layers","getLayerById","LAYERID_SKYBOX","sky","center","skyboxIntensity","_b","level","skyboxMip","skyboxRotation"],"mappings":"oRAMA,MAAMA,UAAqBC,YAMvB,WAAAC,GACIC,QACAC,KAAKC,cAAgB,IAAIC,SAAeC,IACpCH,KAAKI,cAAgBD,CAAO,IAIpC,cAAIE,SACA,eAAOC,EAAAN,KAAKO,oCAAeC,QAAQ,UAGvC,iBAAIC,SACA,eAAOH,EAAAN,KAAKO,oCAAeC,QAAQ,aAO7B,QAAAE,GACNV,KAAKI,gBACLJ,KAAKW,cAAc,IAAIC,YAAY,UAOvC,KAAAC,GACI,OAAOb,KAAKC,cAAca,MAAK,IAAMd,QClC7C,MAAMe,UAAsBlB,YAIxB,WAAAC,GACIC,QACAC,KAAKgB,YAAchB,KAAKiB,aAGpB,gBAAMA,GACV,MAAMC,EAAOlB,KAAKmB,aAAa,QACzBC,EAAOpB,KAAKmB,aAAa,QACzBE,EAAOrB,KAAKmB,aAAa,QACzBG,EAAWtB,KAAKmB,aAAa,YAEtB,UAATD,EACAK,kBAAgB,CACZC,QAASJ,EACTK,QAASJ,EACTK,YAAaJ,KAGjBK,EAAUA,WAACC,UAAUV,EAAM,CACvBM,QAASJ,EACTK,QAASJ,EACTK,YAAaJ,UAGX,IAAIpB,SAAeC,IACrBwB,EAAAA,WAAWE,YAAYX,GAAM,IAAMf,KAAU,KAKlD,cAAA2B,GACH,OAAO9B,KAAKgB,aAIpBe,eAAeC,OAAO,YAAajB,GCnCnC,MAAMkB,UAAmBrC,EA4BrB,WAAAE,GACIC,QAzBIC,KAAOkC,QAA6B,KAEpClC,KAAMmC,QAAG,EAETnC,KAAUoC,YAAG,EAEbpC,KAAMqC,QAAG,EAETrC,KAAQsC,UAAG,EAEXtC,KAAeuC,iBAAG,EAElBvC,KAAewC,iBAAG,EAK1BxC,KAAGyC,IAAuB,KAWtBzC,KAAK0C,gBAAkB1C,KAAK0C,gBAAgBC,KAAK3C,MAGrD,uBAAM4C,GAEF,MAAMC,EAAiB7C,KAAK8C,iBAAgC,4BAGtD5C,QAAQ6C,IAAIC,MAAMC,KAAKJ,GAAgBK,KAAIC,GAAUA,EAAOrB,oBAGlE9B,KAAKkC,QAAUkB,SAASC,cAAc,UACtCrD,KAAKsD,YAAYtD,KAAKkC,SAGtBlC,KAAKyC,IAAM,IAAIc,cAAYvD,KAAKkC,QAAS,CACrCsB,sBAAuB,CACnBC,MAAOzD,KAAKmC,OACZuB,UAAW1D,KAAKoC,WAChBuB,MAAO3D,KAAKqC,OACZuB,QAAS5D,KAAKsC,UAElBuB,SAAU,IAAIC,EAAQA,SAACC,QACvBC,MAAO,IAAIC,QAAMjE,KAAKkC,WAE1BlC,KAAKyC,IAAIyB,eAAeC,cAAgBnE,KAAKuC,gBAAkBwB,OAAOK,iBAAmB,EAEzFpE,KAAKyC,IAAI4B,kBAAkBC,wBAC3BtE,KAAKyC,IAAI8B,oBAAoBC,mBAG7B,MAAMC,EAAgBzE,KAAK8C,iBAA+B,qBAC1DE,MAAMC,KAAKwB,GAAeC,SAASC,IAC/BA,EAAaC,cACb,MAAMC,EAAQF,EAAaE,MACvBA,GACA7E,KAAKyC,IAAKqC,OAAOC,IAAIF,MAK7B,MAAMG,EAAmBhF,KAAK8C,iBAAkC,wBAChEE,MAAMC,KAAK+B,GAAkBN,SAASO,IAClCA,EAAgBC,gBAAgB,IAIpC,MAAMC,EAAiBnF,KAAK8C,iBAAgC,aAC5DE,MAAMC,KAAKkC,GAAgBT,SAASU,IAChCA,EAAcC,aAAarF,KAAKyC,IAAK,IAIzC0C,EAAeT,SAASU,IACpBA,EAAcE,eAAetF,KAAKyC,IAAK,IAG3CzC,KAAKwC,iBAAkB,EAGvBxC,KAAKyC,IAAI8C,SAAQ,KAEbvF,KAAKyC,IAAK+C,QAGVzB,OAAO0B,iBAAiB,SAAUzF,KAAK0C,iBAEvC1C,KAAKU,UAAU,IAIvB,oBAAAgF,GAEQ1F,KAAKyC,MACLzC,KAAKyC,IAAIkD,UACT3F,KAAKyC,IAAM,MAIfsB,OAAO6B,oBAAoB,SAAU5F,KAAK0C,iBAGtC1C,KAAKkC,SAAWlC,KAAK6F,SAAS7F,KAAKkC,WACnClC,KAAK8F,YAAY9F,KAAKkC,SACtBlC,KAAKkC,QAAU,MAIvB,eAAAQ,GACQ1C,KAAKyC,KACLzC,KAAKyC,IAAIsD,eAQjB,SAAItC,CAAMuC,GACNhG,KAAKmC,OAAS6D,EAOlB,SAAIvC,GACA,OAAOzD,KAAKmC,OAOhB,aAAIuB,CAAUsC,GACVhG,KAAKoC,WAAa4D,EAOtB,aAAItC,GACA,OAAO1D,KAAKoC,WAOhB,SAAIuB,CAAMqC,GACNhG,KAAKqC,OAAS2D,EAOlB,SAAIrC,GACA,OAAO3D,KAAKqC,OAQhB,kBAAI4D,GACA,OAAOjG,KAAKwC,gBAQhB,kBAAI0D,CAAeF,GACfhG,KAAKuC,gBAAkByD,EACnBhG,KAAKyC,MACLzC,KAAKyC,IAAIyB,eAAeC,cAAgB6B,EAAQjC,OAAOK,iBAAmB,GAQlF,kBAAI8B,GACA,OAAOlG,KAAKuC,gBAOhB,WAAIqB,CAAQoC,GACRhG,KAAKsC,SAAW0D,EAOpB,WAAIpC,GACA,OAAO5D,KAAKsC,SAGhB,6BAAW6D,GACP,MAAO,CAAC,QAAS,YAAa,QAAS,UAAW,mBAGtD,wBAAAC,CAAyBlF,EAAcmF,EAAmBC,GACtD,OAAQpF,GACJ,IAAK,QACDlB,KAAKyD,MAAqB,UAAb6C,EACb,MACJ,IAAK,YACDtG,KAAK0D,UAAyB,UAAb4C,EACjB,MACJ,IAAK,QACDtG,KAAK2D,MAAqB,UAAb2C,EACb,MACJ,IAAK,kBACDtG,KAAKkG,eAA8B,UAAbI,EACtB,MACJ,IAAK,UACDtG,KAAK4D,QAAuB,UAAb0C,IAM/BvE,eAAeC,OAAO,SAAUC,GC/PzB,MAAMsE,EAAqC,CAC9CC,UAAW,UACXC,aAAc,UACdC,KAAM,UACNC,WAAY,UACZC,MAAO,UACPC,MAAO,UACPC,OAAQ,UACRC,MAAO,UACPC,eAAgB,UAChBC,KAAM,UACNC,WAAY,UACZC,MAAO,UACPC,UAAW,UACXC,UAAW,UACXC,WAAY,UACZC,UAAW,UACXC,MAAO,UACPC,eAAgB,UAChBC,SAAU,UACVC,QAAS,UACTC,KAAM,UACNC,SAAU,UACVC,SAAU,UACVC,cAAe,UACfC,SAAU,UACVC,UAAW,UACXC,SAAU,UACVC,UAAW,UACXC,YAAa,UACbC,eAAgB,UAChBC,WAAY,UACZC,WAAY,UACZC,QAAS,UACTC,WAAY,UACZC,aAAc,UACdC,cAAe,UACfC,cAAe,UACfC,cAAe,UACfC,cAAe,UACfC,WAAY,UACZC,SAAU,UACVC,YAAa,UACbC,QAAS,UACTC,QAAS,UACTC,WAAY,UACZC,UAAW,UACXC,YAAa,UACbC,YAAa,UACbC,QAAS,UACTC,UAAW,UACXC,WAAY,UACZC,KAAM,UACNC,UAAW,UACXC,KAAM,UACNC,MAAO,UACPC,YAAa,UACbC,KAAM,UACNC,SAAU,UACVC,QAAS,UACTC,UAAW,UACXC,OAAQ,UACRC,MAAO,UACPC,MAAO,UACPC,SAAU,UACVC,cAAe,UACfC,UAAW,UACXC,aAAc,UACdC,UAAW,UACXC,WAAY,UACZC,UAAW,UACXC,qBAAsB,UACtBC,UAAW,UACXC,WAAY,UACZC,UAAW,UACXC,UAAW,UACXC,YAAa,UACbC,cAAe,UACfC,aAAc,UACdC,eAAgB,UAChBC,eAAgB,UAChBC,eAAgB,UAChBC,YAAa,UACbC,KAAM,UACNC,UAAW,UACXC,MAAO,UACPC,QAAS,UACTC,OAAQ,UACRC,iBAAkB,UAClBC,WAAY,UACZC,aAAc,UACdC,aAAc,UACdC,eAAgB,UAChBC,gBAAiB,UACjBC,kBAAmB,UACnBC,gBAAiB,UACjBC,gBAAiB,UACjBC,aAAc,UACdC,UAAW,UACXC,UAAW,UACXC,SAAU,UACVC,YAAa,UACbC,KAAM,UACNC,QAAS,UACTC,MAAO,UACPC,UAAW,UACXC,OAAQ,UACRC,UAAW,UACXC,OAAQ,UACRC,cAAe,UACfC,UAAW,UACXC,cAAe,UACfC,cAAe,UACfC,WAAY,UACZC,UAAW,UACXC,KAAM,UACNC,KAAM,UACNC,KAAM,UACNC,WAAY,UACZC,OAAQ,UACRC,cAAe,UACfC,IAAK,UACLC,UAAW,UACXC,UAAW,UACXC,YAAa,UACbC,OAAQ,UACRC,WAAY,UACZC,SAAU,UACVC,SAAU,UACVC,OAAQ,UACRC,OAAQ,UACRC,QAAS,UACTC,UAAW,UACXC,UAAW,UACXC,UAAW,UACXC,KAAM,UACNC,YAAa,UACbC,UAAW,UACXC,IAAK,UACLC,KAAM,UACNC,QAAS,UACTC,OAAQ,UACRC,UAAW,UACXC,OAAQ,UACRC,MAAO,UACPC,MAAO,UACPC,WAAY,UACZC,OAAQ,UACRC,YAAa,WCzIJC,EAAc5J,IAEvB,MAAM6J,EAAWtJ,EAAWP,EAAM8J,eAClC,GAAID,EACA,OAAO,IAAIE,EAAKA,OAAGC,WAAWH,GAGlC,GAAI7J,EAAMiK,WAAW,KACjB,OAAO,IAAIF,EAAKA,OAAGC,WAAWhK,GAGlC,MAAMkK,EAAalK,EAAMmK,MAAM,KAAKjN,IAAIkN,QACxC,OAAO,IAAIL,EAAKA,MAACG,EAAW,EAsBnBG,EAAarK,IACtB,MAAMkK,EAAalK,EAAMmK,MAAM,KAAKjN,IAAIkN,QACxC,OAAO,IAAIE,EAAIA,KAACJ,EAAW,EASlBK,EAAavK,IACtB,MAAMkK,EAAalK,EAAMmK,MAAM,KAAKjN,IAAIkN,QACxC,OAAO,IAAII,EAAIA,KAACN,EAAW,EASlBO,EAAazK,IACtB,MAAMkK,EAAalK,EAAMmK,MAAM,KAAKjN,IAAIkN,QACxC,OAAO,IAAIM,EAAIA,KAACR,EAAW,EC3D/B,MAAMS,UAAsB/Q,EAA5B,WAAAE,uBAIYE,KAAQ4Q,UAAG,EAKX5Q,KAAK6Q,MAAG,WAKR7Q,KAAA8Q,UAAY,IAAIN,OAKhBxQ,KAAA+Q,UAAY,IAAIP,OAKhBxQ,KAAMgR,OAAG,IAAIR,EAAAA,KAAK,EAAG,EAAG,GAKxBxQ,KAAKiR,MAAa,GAK1BjR,KAAMkR,OAAkB,KAExB,YAAA7L,CAAa5C,GAETzC,KAAKkR,OAAS,IAAIC,EAAAA,OAAOnR,KAAKmB,aAAa,SAAWnB,KAAK6Q,MAAOpO,GAElE,MAAM2O,EAAUpR,KAAKmB,aAAa,WAC9BiQ,IACApR,KAAKkR,OAAOE,QAAsB,UAAZA,GAG1B,MAAMC,EAAWrR,KAAKmB,aAAa,YAC/BkQ,GACArR,KAAKkR,OAAOI,iBAAiBf,EAAUc,IAG3C,MAAME,EAAWvR,KAAKmB,aAAa,YAC/BoQ,GACAvR,KAAKkR,OAAOM,oBAAoBjB,EAAUgB,IAG9C,MAAME,EAAQzR,KAAKmB,aAAa,SAC5BsQ,GACAzR,KAAKkR,OAAOQ,cAAcnB,EAAUkB,IAGxC,MAAME,EAAO3R,KAAKmB,aAAa,QAC3BwQ,GACA3R,KAAKkR,OAAOS,KAAK5M,IAAI4M,EAAKxB,MAAM,KAAKjN,KAAI0O,GAAOA,EAAIC,UAI5D,cAAAvM,CAAe7C,GACX,IAAKzC,KAAKkR,OAAQ,OAElB,MAAMzQ,EAAgBT,KAAKS,eACvBA,aAAa,EAAbA,EAAeyQ,QACfzQ,EAAcyQ,OAAOY,SAAS9R,KAAKkR,QAEnCzO,EAAIsP,KAAKD,SAAS9R,KAAKkR,QAG3BlR,KAAKU,WAGT,iBAAAkC,GAEI,MAAMvC,EAAaL,KAAKK,WACxB,GAAKA,GAGDA,EAAW4F,eAAgB,CAC3B,MAAMxD,EAAMpC,EAAWoC,IAEvBzC,KAAKqF,aAAa5C,GAClBzC,KAAKsF,eAAe7C,GAGpB,MAAMuP,EAAgBhS,KAAK8C,iBAAgC,aAC3DkP,EAActN,SAASuN,IACnBA,EAAM5M,aAAa5C,EAAI,IAE3BuP,EAActN,SAASuN,IACnBA,EAAM3M,eAAe7C,EAAI,KAKrC,oBAAAiD,GACI,GAAI1F,KAAKkR,OAAQ,CAEIlR,KAAK8C,iBAAiB,aAC9B4B,SAASuN,IACbA,EAAwBf,OAAS,IAAI,IAI1ClR,KAAKkR,OAAOvL,UACZ3F,KAAKkR,OAAS,MAQtB,WAAIE,CAAQpL,GACRhG,KAAK4Q,SAAW5K,EACZhG,KAAKkR,SACLlR,KAAKkR,OAAOE,QAAUpL,GAQ9B,WAAIoL,GACA,OAAOpR,KAAK4Q,SAOhB,QAAI1P,CAAK8E,GACLhG,KAAK6Q,MAAQ7K,EACThG,KAAKkR,SACLlR,KAAKkR,OAAOhQ,KAAO8E,GAQ3B,QAAI9E,GACA,OAAOlB,KAAK6Q,MAOhB,YAAIQ,CAASrL,GACThG,KAAK8Q,UAAY9K,EACbhG,KAAKkR,QACLlR,KAAKkR,OAAOI,iBAAiBtR,KAAK8Q,WAQ1C,YAAIO,GACA,OAAOrR,KAAK8Q,UAOhB,YAAIS,CAASvL,GACThG,KAAK+Q,UAAY/K,EACbhG,KAAKkR,QACLlR,KAAKkR,OAAOM,oBAAoBxR,KAAK+Q,WAQ7C,YAAIQ,GACA,OAAOvR,KAAK+Q,UAOhB,SAAIU,CAAMzL,GACNhG,KAAKgR,OAAShL,EACVhG,KAAKkR,QACLlR,KAAKkR,OAAOQ,cAAc1R,KAAKgR,QAQvC,SAAIS,GACA,OAAOzR,KAAKgR,OAOhB,QAAIW,CAAK3L,GACLhG,KAAKiR,MAAQjL,EACThG,KAAKkR,SACLlR,KAAKkR,OAAOS,KAAKO,QACjBlS,KAAKkR,OAAOS,KAAK5M,IAAI/E,KAAKiR,QAQlC,QAAIU,GACA,OAAO3R,KAAKiR,MAGhB,6BAAW9K,GACP,MAAO,CAAC,UAAW,OAAQ,WAAY,WAAY,QAAS,QAGhE,wBAAAC,CAAyBlF,EAAcmF,EAAmBC,GACtD,OAAQpF,GACJ,IAAK,UACDlB,KAAKoR,QAAuB,UAAb9K,EACf,MACJ,IAAK,OACDtG,KAAKkB,KAAOoF,EACZ,MACJ,IAAK,WACDtG,KAAKqR,SAAWd,EAAUjK,GAC1B,MACJ,IAAK,WACDtG,KAAKuR,SAAWhB,EAAUjK,GAC1B,MACJ,IAAK,QACDtG,KAAKyR,MAAQlB,EAAUjK,GACvB,MACJ,IAAK,OACDtG,KAAK2R,KAAOrL,EAAS6J,MAAM,KAAKjN,KAAI0O,GAAOA,EAAIC,WAM/D9P,eAAeC,OAAO,YAAa2O,GC3QnC,MAAMwB,EAAY,IAAIC,IAAI,CACtB,CAAC,MAAO,UACR,CAAC,MAAO,OACR,CAAC,OAAQ,UACT,CAAC,MAAO,aACR,CAAC,OAAQ,UACT,CAAC,MAAO,WACR,CAAC,OAAQ,QACT,CAAC,MAAO,WACR,CAAC,KAAM,UACP,CAAC,OAAQ,QACT,CAAC,MAAO,SACR,CAAC,MAAO,UACR,CAAC,MAAO,UACR,CAAC,MAAO,WACR,CAAC,MAAO,QACR,CAAC,OAAQ,UACT,CAAC,OAAQ,aAQb,MAAMC,UAAqBxS,YAA3B,WAAAC,uBACYE,KAAQsS,UAAY,EAK5BtS,KAAK6E,MAAiB,KAEtB,oBAAAa,GACI1F,KAAKuS,eAGT,WAAA3N,SACI,MAAM4N,EAAKxS,KAAKmB,aAAa,OAAS,GAChCsR,EAAMzS,KAAKmB,aAAa,QAAU,GACxC,IAAIuR,EAAO1S,KAAKmB,aAAa,QAG7B,IAAKuR,EAAM,CACP,MAAMC,EAAMF,EAAItC,MAAM,KAAKyC,MAC3BF,EAAmC,QAA5BpS,EAAA6R,EAAUU,IAAIF,GAAO,WAAO,IAAArS,EAAAA,EAAA,KAGlCoS,GAKL1S,KAAK6E,MAAQ,IAAIiO,QAAMN,EAAIE,EAAM,CAAEK,IAAKN,IACxCzS,KAAK6E,MAAMU,QAAUvF,KAAKuF,SALtByN,QAAQC,KAAK,2BAA2BR,KAQhD,YAAAF,GACQvS,KAAK6E,QACL7E,KAAK6E,MAAMqO,SACXlT,KAAK6E,MAAQ,MAQrB,WAAIU,CAAQS,GACRhG,KAAKsS,SAAWtM,EACZhG,KAAK6E,QACL7E,KAAK6E,MAAMU,QAAUS,GAQ7B,WAAIT,GACA,OAAOvF,KAAKsS,SAGhB,UAAOO,CAAIL,GACP,MAAM7N,EAAevB,SAAS+P,cAA4B,gBAAgBX,OAC1E,OAAO7N,eAAAA,EAAcE,MAGzB,6BAAWsB,GACP,MAAO,CAAC,WAGZ,wBAAAC,CAAyBlF,EAAcmF,EAAmB+M,GACzC,YAATlS,IACAlB,KAAKuF,QAAUvF,KAAKqT,aAAa,aAK7CtR,eAAeC,OAAO,WAAYqQ,GC5FlC,MAAMiB,UAAyB1T,EAa3B,WAAAE,CAAYyT,GACRxT,QAXIC,KAAQ4Q,UAAG,EAEX5Q,KAAUwT,WAAqB,KAWnCxT,KAAKyT,eAAiBF,EAI1B,uBAAAG,GACI,MAAO,CAAE,EAGb,kBAAMC,GACF,MAAMvO,EAAgBpF,KAAKS,cAC3B,GAAI2E,EAAe,OACTA,EAAcvE,QAEpB,MAAM+S,EAAO5T,KAAK0T,0BAClB1T,KAAKwT,WAAapO,EAAc8L,OAAQyC,aAAa3T,KAAKyT,eAAgBG,IAIlF,aAAAC,IAEA,uBAAMjR,eACqB,UAAjB5C,KAAKK,kBAAY,IAAAC,OAAA,EAAAA,EAAAO,eACjBb,KAAK2T,eACX3T,KAAK6T,gBACL7T,KAAKU,WAGT,oBAAAgF,GAEQ1F,KAAK8T,WAAa9T,KAAK8T,UAAU5C,SACjClR,KAAKwT,WAAYtC,OAAO6C,gBAAgB/T,KAAKyT,gBAC7CzT,KAAKwT,WAAa,MAI1B,aAAIM,GACA,OAAO9T,KAAKwT,WAOhB,WAAIpC,CAAQpL,GACRhG,KAAK4Q,SAAW5K,EACZhG,KAAK8T,YACL9T,KAAK8T,UAAU1C,QAAUpL,GAQjC,WAAIoL,GACA,OAAOpR,KAAK4Q,SAGhB,6BAAWzK,GACP,MAAO,CAAC,WAGZ,wBAAAC,CAAyBlF,EAAcmF,EAAmBC,GACtD,GACS,YADDpF,EAEAlB,KAAKoR,QAAuB,UAAb9K,GC/E/B,MAAM0N,UAAiCV,EAEnC,WAAAxT,GACIC,MAAM,iBAOV,aAAI+T,GACA,OAAO/T,MAAM+T,WAIrB/R,eAAeC,OAAO,cAAegS,GCdrC,MAAMC,UAA+BX,EAgCjC,WAAAxT,GACIC,MAAM,UAhCFC,KAAAkU,YAAc,IAAInE,EAAKA,MAAC,IAAM,IAAM,IAAM,GAE1C/P,KAAiBmU,mBAAG,EAEpBnU,KAAiBoU,mBAAG,EAEpBpU,KAAmBqU,qBAAG,EAEtBrU,KAAUsU,YAAG,EAEbtU,KAAQuU,SAAG,IAEXvU,KAAUwU,YAAG,EAEbxU,KAAIyU,KAAG,GAEPzU,KAAe0U,iBAAG,EAElB1U,KAAS2U,UAAG,GAEZ3U,KAAa4U,eAAG,EAEhB5U,KAAY6U,aAAG,GAEf7U,KAAS8U,UAAG,EAEZ9U,KAAA+U,MAAQ,IAAIrE,EAAIA,KAAC,EAAG,EAAG,EAAG,GAE1B1Q,KAAAgV,aAAe,IAAItE,EAAIA,KAAC,EAAG,EAAG,EAAG,GAOzC,uBAAAgD,GACI,MAAO,CACHuB,WAAYjV,KAAKkU,YACjBgB,iBAAkBlV,KAAKmU,kBACvBgB,iBAAkBnV,KAAKoU,kBACvBgB,mBAAoBpV,KAAKqU,oBACzBgB,UAAWrV,KAAKsU,WAChBgB,QAAStV,KAAKuU,SACdgB,UAAWvV,KAAKwU,WAChBgB,IAAKxV,KAAKyU,KACVgB,eAAgBzV,KAAK0U,gBACrBgB,SAAU1V,KAAK2U,UACfgB,aAAc3V,KAAK4U,cACnBgB,YAAa5V,KAAK6U,aAClBgB,SAAU7V,KAAK8U,UACfgB,KAAM9V,KAAK+U,MACXgB,YAAa/V,KAAKgV,cAI1B,eAAIgB,SACA,MAAMC,EAA4B,QAAhB3V,EAAAN,KAAK8T,iBAAW,IAAAxT,OAAA,EAAAA,EAAA4V,OAAOzT,IAAI0T,GAC7C,OAAOF,GAAaA,EAAUG,WAAaH,EAAUI,YAAYC,EAAAA,WAGrE,OAAAC,CAAQ7D,EAAuC8D,GACvCxW,KAAK8T,WAAa9T,KAAKgW,aACvBhW,KAAK8T,UAAUyC,QAAQ7D,EAAM8D,EAAO,CAChCC,SAAWC,IACHA,GAAK1D,QAAQ2D,MAAM,uCAAuCD,EAAIE,UAAU,IAM5F,KAAAC,GACQ7W,KAAK8T,WACL9T,KAAK8T,UAAU+C,QAQvB,aAAI/C,GACA,OAAO/T,MAAM+T,UAOjB,cAAImB,CAAWjP,GACXhG,KAAKkU,YAAclO,EACfhG,KAAK8T,YACL9T,KAAK8T,UAAUmB,WAAajP,GAQpC,cAAIiP,GACA,OAAOjV,KAAKkU,YAOhB,oBAAIgB,CAAiBlP,GACjBhG,KAAKmU,kBAAoBnO,EACrBhG,KAAK8T,YACL9T,KAAK8T,UAAUoB,iBAAmBlP,GAQ1C,oBAAIkP,GACA,OAAOlV,KAAKmU,kBAOhB,oBAAIgB,CAAiBnP,GACjBhG,KAAKoU,kBAAoBpO,EACrBhG,KAAK8T,YACL9T,KAAK8T,UAAUqB,iBAAmBnP,GAQ1C,oBAAImP,GACA,OAAOnV,KAAKoU,kBAOhB,sBAAIgB,CAAmBpP,GACnBhG,KAAKqU,oBAAsBrO,EACvBhG,KAAK8T,YACL9T,KAAK8T,UAAUsB,mBAAqBpP,GAQ5C,sBAAIoP,GACA,OAAOpV,KAAKqU,oBAOhB,aAAIgB,CAAUrP,GACVhG,KAAKsU,WAAatO,EACdhG,KAAK8T,YACL9T,KAAK8T,UAAUuB,UAAYrP,GAQnC,aAAIqP,GACA,OAAOrV,KAAKsU,WAOhB,WAAIgB,CAAQtP,GACRhG,KAAKuU,SAAWvO,EACZhG,KAAK8T,YACL9T,KAAK8T,UAAUwB,QAAUtP,GAQjC,WAAIsP,GACA,OAAOtV,KAAKuU,SAOhB,aAAIgB,CAAUvP,GACVhG,KAAKwU,WAAaxO,EACdhG,KAAK8T,YACL9T,KAAK8T,UAAUyB,UAAYvP,GAQnC,aAAIuP,GACA,OAAOvV,KAAKwU,WAOhB,OAAIgB,CAAIxP,GACJhG,KAAKyU,KAAOzO,EACRhG,KAAK8T,YACL9T,KAAK8T,UAAU0B,IAAMxP,GAQ7B,OAAIwP,GACA,OAAOxV,KAAKyU,KAOhB,kBAAIgB,CAAezP,GACfhG,KAAK0U,gBAAkB1O,EACnBhG,KAAK8T,YACL9T,KAAK8T,UAAU2B,eAAiBzP,GAQxC,kBAAIyP,GACA,OAAOzV,KAAK0U,gBAOhB,YAAIgB,CAAS1P,GACThG,KAAK2U,UAAY3O,EACbhG,KAAK8T,YACL9T,KAAK8T,UAAU4B,SAAW1P,GAQlC,YAAI0P,GACA,OAAO1V,KAAK2U,UAOhB,gBAAIgB,CAAa3P,GACbhG,KAAK4U,cAAgB5O,EACjBhG,KAAK8T,YACL9T,KAAK8T,UAAUgD,WAAa9Q,EAAQ+Q,EAAuBA,wBAAGC,EAAsBA,wBAQ5F,gBAAIrB,GACA,OAAO3V,KAAK4U,cAOhB,eAAIgB,CAAY5P,GACZhG,KAAK6U,aAAe7O,EAChBhG,KAAK8T,YACL9T,KAAK8T,UAAU8B,YAAc5P,GAQrC,eAAI4P,GACA,OAAO5V,KAAK6U,aAOhB,YAAIgB,CAAS7P,GACThG,KAAK8U,UAAY9O,EACbhG,KAAK8T,YACL9T,KAAK8T,UAAU+B,SAAW7P,GAQlC,YAAI6P,GACA,OAAO7V,KAAK8U,UAOhB,QAAIgB,CAAK9P,GACLhG,KAAK+U,MAAQ/O,EACThG,KAAK8T,YACL9T,KAAK8T,UAAUgC,KAAO9P,GAQ9B,QAAI8P,GACA,OAAO9V,KAAK+U,MAOhB,eAAIgB,CAAY/P,GACZhG,KAAKgV,aAAehP,EAChBhG,KAAK8T,YACL9T,KAAK8T,UAAUiC,YAAc/P,GAQrC,eAAI+P,GACA,OAAO/V,KAAKgV,aAGhB,6BAAW7O,GACP,MAAO,IACApG,MAAMoG,mBACT,cACA,qBACA,qBACA,uBACA,aACA,WACA,aACA,MACA,kBACA,YACA,eACA,eACA,WACA,OACA,gBAIR,wBAAAC,CAAyBlF,EAAcmF,EAAmBC,GAGtD,OAFAvG,MAAMqG,yBAAyBlF,EAAMmF,EAAWC,GAExCpF,GACJ,IAAK,cACDlB,KAAKiV,WAAarF,EAAWtJ,GAC7B,MACJ,IAAK,qBACDtG,KAAKkV,iBAAgC,UAAb5O,EACxB,MACJ,IAAK,qBACDtG,KAAKmV,iBAAgC,UAAb7O,EACxB,MACJ,IAAK,uBACDtG,KAAKoV,mBAAkC,UAAb9O,EAC1B,MACJ,IAAK,aACDtG,KAAKqV,UAAyB,UAAb/O,EACjB,MACJ,IAAK,WACDtG,KAAKsV,QAAU2B,WAAW3Q,GAC1B,MACJ,IAAK,aACDtG,KAAKuV,UAAyB,SAAbjP,EACjB,MACJ,IAAK,MACDtG,KAAKwV,IAAMyB,WAAW3Q,GACtB,MACJ,IAAK,kBACDtG,KAAKyV,eAA8B,UAAbnP,EACtB,MACJ,IAAK,YACDtG,KAAK0V,SAAWuB,WAAW3Q,GAC3B,MACJ,IAAK,eACDtG,KAAK2V,aAAe3V,KAAKqT,aAAa,gBACtC,MACJ,IAAK,eACDrT,KAAK4V,YAAcqB,WAAW3Q,GAC9B,MACJ,IAAK,WACDtG,KAAK6V,SAAWoB,WAAW3Q,GAC3B,MACJ,IAAK,OACDtG,KAAK8V,KAAOrF,EAAUnK,GACtB,MACJ,IAAK,eACDtG,KAAK+V,YAActF,EAAUnK,KAM7CvE,eAAeC,OAAO,YAAaiS,GC5bnC,MAAMiD,UAAkC5D,EAkBpC,WAAAxT,GACIC,MAAM,aAlBFC,KAAAmX,eAAuB,IAAIC,OAE3BpX,KAAKqX,MAAW,EAEhBrX,KAAWsX,aAAY,EAEvBtX,KAAYuX,aAAS,IAAI/G,EAAAA,KAAK,GAAK,GAAK,IAExCxQ,KAAOwX,QAAW,EAElBxX,KAAAyX,cAAsB,IAAIjH,OAE1BxQ,KAAO0X,QAAW,GAElB1X,KAAK2X,MAAW,MAOxB,uBAAAjE,GACI,MAAO,CACHkE,KAAM5X,KAAKqX,MACXQ,cAAe7X,KAAKmX,eACpBW,WAAY9X,KAAKsX,YACjBS,YAAa/X,KAAKuX,aAClBS,OAAQhY,KAAKwX,QACbS,aAAcjY,KAAKyX,cACnBS,OAAQlY,KAAK0X,QACbhF,KAAM1S,KAAK2X,OAQnB,aAAI7D,GACA,OAAO/T,MAAM+T,UAGjB,iBAAI+D,CAAc7R,GACdhG,KAAKmX,eAAiBnR,EAClBhG,KAAK8T,YACL9T,KAAK8T,UAAU+D,cAAgB7R,GAIvC,iBAAI6R,GACA,OAAO7X,KAAKmX,eAGhB,QAAIS,CAAK5R,GACLhG,KAAKqX,MAAQrR,EACThG,KAAK8T,YACL9T,KAAK8T,UAAU8D,KAAO5R,GAI9B,QAAI4R,GACA,OAAO5X,KAAKqX,MAGhB,cAAIS,CAAW9R,GACXhG,KAAKsX,YAActR,EACfhG,KAAK8T,YACL9T,KAAK8T,UAAUgE,WAAa9R,GAIpC,cAAI8R,GACA,OAAO9X,KAAKsX,YAGhB,eAAIS,CAAY/R,GACZhG,KAAKuX,aAAevR,EAChBhG,KAAK8T,YACL9T,KAAK8T,UAAUiE,YAAc/R,GAIrC,eAAI+R,GACA,OAAO/X,KAAKuX,aAGhB,UAAIS,CAAOhS,GACPhG,KAAKwX,QAAUxR,EACXhG,KAAK8T,YACL9T,KAAK8T,UAAUkE,OAAShS,GAIhC,UAAIgS,GACA,OAAOhY,KAAKwX,QAGhB,gBAAIS,CAAajS,GACbhG,KAAKyX,cAAgBzR,EACjBhG,KAAK8T,YACL9T,KAAK8T,UAAUmE,aAAejS,GAItC,gBAAIiS,GACA,OAAOjY,KAAKyX,cAGhB,UAAIS,CAAOlS,GACPhG,KAAK0X,QAAU1R,EACXhG,KAAK8T,YACL9T,KAAK8T,UAAUoE,OAASlS,GAIhC,UAAIkS,GACA,OAAOlY,KAAK0X,QAGhB,QAAIhF,CAAK1M,GACLhG,KAAK2X,MAAQ3R,EACThG,KAAK8T,YACL9T,KAAK8T,UAAUpB,KAAO1M,GAI9B,QAAI0M,GACA,OAAO1S,KAAK2X,MAGhB,6BAAWxR,GACP,MAAO,IAAIpG,MAAMoG,mBAAoB,iBAAkB,OAAQ,cAAe,eAAgB,SAAU,gBAAiB,SAAU,QAGvI,wBAAAC,CAAyBlF,EAAcmF,EAAmBC,GAGtD,OAFAvG,MAAMqG,yBAAyBlF,EAAMmF,EAAWC,GAExCpF,GACJ,IAAK,iBACDlB,KAAK6X,cNxHI,CAAC7R,IACtB,MAAOmS,EAAGC,EAAGC,GAAKrS,EAAMmK,MAAM,KAAKjN,IAAIkN,QACjCkI,EAAI,IAAIlB,OAEd,OADAkB,EAAEC,mBAAmBJ,EAAGC,EAAGC,GACpBC,CAAC,EMoHyBE,CAAUlS,GAC/B,MACJ,IAAK,OACDtG,KAAK4X,KAAOa,SAASnS,EAAU,IAC/B,MACJ,IAAK,cACDtG,KAAK8X,WAAa9X,KAAKqT,aAAa,eACpC,MACJ,IAAK,eACDrT,KAAK+X,YAAcxH,EAAUjK,GAC7B,MACJ,IAAK,SACDtG,KAAKgY,OAASf,WAAW3Q,GACzB,MACJ,IAAK,gBACDtG,KAAKiY,aAAe1H,EAAUjK,GAC9B,MACJ,IAAK,SACDtG,KAAKkY,OAASjB,WAAW3Q,GACzB,MACJ,IAAK,OACDtG,KAAK0S,KAAOpM,IAM5BvE,eAAeC,OAAO,eAAgBkV,GCtKtC,MAAMwB,UAAgCpF,EAwBlC,WAAAxT,GACIC,MAAM,WAxBFC,KAAA2Y,QAAgB,IAAIjI,EAAIA,KAAC,GAAK,GAAK,GAAK,IAExC1Q,KAAM4Y,OAAW,GAEjB5Y,KAAU6Y,YAAY,EAEtB7Y,KAAA8Y,OAAgB,IAAI/I,EAAKA,MAAC,EAAG,EAAG,EAAG,GAEnC/P,KAAS+Y,UAAW,GAEpB/Y,KAAWgZ,YAAW,GAEtBhZ,KAAMiZ,OAAS,IAAI3I,OAAK,GAAK,IAE7BtQ,KAAKkZ,MAAW,GAEhBlZ,KAAK2X,MAA+B,QAEpC3X,KAAMmZ,OAAW,EAEjBnZ,KAAUoZ,YAAY,EAO9B,aAAAvF,GACI7T,KAAK8T,UAAWoF,MAAMG,UAAUC,QAAS,EAG7C,uBAAA5F,GACI,MAAO,CACH6F,OAAQvZ,KAAK2Y,QACba,UAAWxZ,KAAK6Y,WAChBY,MAAOzZ,KAAK8Y,OACZY,UAAWrH,EAAaQ,IAAI7S,KAAK4Y,QAASpG,GAC1CmH,SAAU3Z,KAAK+Y,UACfa,WAAY5Z,KAAKgZ,YACjBa,MAAO7Z,KAAKiZ,OACZvG,KAAM1S,KAAK2X,MACXmC,KAAM9Z,KAAKkZ,MACXa,MAAO/Z,KAAKmZ,OACZa,UAAWha,KAAKoZ,YAQxB,aAAItF,GACA,OAAO/T,MAAM+T,UAGjB,UAAIyF,CAAOvT,GACPhG,KAAK2Y,QAAU3S,EACXhG,KAAK8T,YACL9T,KAAK8T,UAAUyF,OAASvT,GAIhC,UAAIuT,GACA,OAAOvZ,KAAK2Y,QAGhB,SAAI9T,CAAMmB,GACNhG,KAAK4Y,OAAS5S,EACd,MAAMnB,EAAQwN,EAAaQ,IAAI7M,GAC3BhG,KAAK8T,WAAajP,IAClB7E,KAAK8T,UAAU4F,UAAY7U,EAAM2N,IAIzC,SAAI3N,GACA,OAAO7E,KAAK4Y,OAGhB,aAAIY,CAAUxT,GACVhG,KAAK6Y,WAAa7S,EACdhG,KAAK8T,YACL9T,KAAK8T,UAAU0F,UAAYxT,GAInC,aAAIwT,GACA,OAAOxZ,KAAK6Y,WAGhB,SAAIY,CAAMzT,GACNhG,KAAK8Y,OAAS9S,EACVhG,KAAK8T,YACL9T,KAAK8T,UAAU2F,MAAQzT,GAI/B,SAAIyT,GACA,OAAOzZ,KAAK8Y,OAGhB,YAAIa,CAAS3T,GACThG,KAAK+Y,UAAY/S,EACbhG,KAAK8T,YACL9T,KAAK8T,UAAU6F,SAAW3T,GAIlC,YAAI2T,GACA,OAAO3Z,KAAK+Y,UAGhB,cAAIa,CAAW5T,GACXhG,KAAKgZ,YAAchT,EACfhG,KAAK8T,YACL9T,KAAK8T,UAAU8F,WAAa5T,GAIpC,cAAI4T,GACA,OAAO5Z,KAAKgZ,YAGhB,SAAIa,CAAM7T,GACNhG,KAAKiZ,OAASjT,EACVhG,KAAK8T,YACL9T,KAAK8T,UAAU+F,MAAQ7T,GAI/B,SAAI6T,GACA,OAAO7Z,KAAKiZ,OAGhB,QAAIa,CAAK9T,GACLhG,KAAKkZ,MAAQlT,EACThG,KAAK8T,YACL9T,KAAK8T,UAAUgG,KAAO9T,GAI9B,QAAI8T,GACA,OAAO9Z,KAAKkZ,MAOhB,QAAIxG,CAAK1M,GACLhG,KAAK2X,MAAQ3R,EACThG,KAAK8T,YACL9T,KAAK8T,UAAUpB,KAAO1M,GAQ9B,QAAI0M,GACA,OAAO1S,KAAK2X,MAGhB,SAAIoC,CAAM/T,GACNhG,KAAKmZ,OAASnT,EACVhG,KAAK8T,YACL9T,KAAK8T,UAAUiG,MAAQ/T,GAI/B,SAAI+T,GACA,OAAO/Z,KAAKmZ,OAGhB,aAAIa,CAAUhU,GACVhG,KAAKoZ,WAAapT,EACdhG,KAAK8T,YACL9T,KAAK8T,UAAUkG,UAAYhU,GAInC,aAAIgU,GACA,OAAOha,KAAKoZ,WAGhB,6BAAWjT,GACP,MAAO,IACApG,MAAMoG,mBACT,SACA,QACA,aACA,QACA,YACA,cACA,QACA,OACA,OACA,QACA,cAIR,wBAAAC,CAAyBlF,EAAcmF,EAAmBC,GAGtD,OAFAvG,MAAMqG,yBAAyBlF,EAAMmF,EAAWC,GAExCpF,GACJ,IAAK,SACDlB,KAAKuZ,OAAS9I,EAAUnK,GACxB,MACJ,IAAK,QACDtG,KAAK6E,MAAQyB,EACb,MACJ,IAAK,aACDtG,KAAKwZ,UAAyB,UAAblT,EACjB,MACJ,IAAK,QACDtG,KAAKyZ,MAAQ7J,EAAWtJ,GACxB,MACJ,IAAK,YACDtG,KAAK2Z,SAAWvJ,OAAO9J,GACvB,MACJ,IAAK,cACDtG,KAAK4Z,WAAaxJ,OAAO9J,GACzB,MACJ,IAAK,QACDtG,KAAK6Z,MAAQxJ,EAAU/J,GACvB,MACJ,IAAK,OACDtG,KAAK8Z,KAAOxT,EACZ,MACJ,IAAK,OACDtG,KAAK0S,KAAOpM,EACZ,MACJ,IAAK,QACDtG,KAAK+Z,MAAQ3J,OAAO9J,GACpB,MACJ,IAAK,aACDtG,KAAKga,UAAYha,KAAKqT,aAAanS,KAMnDa,eAAeC,OAAO,aAAc0W,GCrPpC,MAAMuB,UAA+B3G,EAIjC,WAAAxT,GACIC,MAAM,UAJFC,KAAM4Y,OAAW,GAOzB,uBAAAlF,GACI,MAAO,CACH7O,MAAOwN,EAAaQ,IAAI7S,KAAK4Y,SAQrC,aAAI9E,GACA,OAAO/T,MAAM+T,UAGjB,SAAIjP,CAAMmB,GACNhG,KAAK4Y,OAAS5S,EACd,MAAMnB,EAAQwN,EAAaQ,IAAI7M,GAC3BhG,KAAK8T,WAAajP,IAClB7E,KAAK8T,UAAUjP,MAAQA,GAI/B,SAAIA,GACA,OAAO7E,KAAK4Y,OAGhB,6BAAWzS,GACP,MAAO,IAAIpG,MAAMoG,mBAAoB,SAGzC,wBAAAC,CAAyBlF,EAAcmF,EAAmBC,GAGtD,GAFAvG,MAAMqG,yBAAyBlF,EAAMmF,EAAWC,GAGvC,UADDpF,EAEAlB,KAAK6E,MAAQyB,GAM7BvE,eAAeC,OAAO,WAAYiY,GCjDlC,MAAMC,UAA8B5G,EAwBhC,WAAAxT,GACIC,MAAM,SAxBFC,KAAYma,cAAG,EAEfna,KAAM8Y,OAAG,IAAI/I,EAAAA,MAAM,EAAG,EAAG,GAEzB/P,KAAeoa,gBAAG,GAElBpa,KAAUqa,WAAG,EAEbra,KAAiBsa,kBAAG,IAEpBta,KAAeua,gBAAG,GAElBva,KAAMwa,OAAG,GAETxa,KAAWya,YAAG,GAEdza,KAAe0a,gBAAG,GAElB1a,KAAiB2a,kBAAG,KAEpB3a,KAAK2X,MAAG,cAOhB,uBAAAjE,GACI,MAAO,CACHkH,YAAa5a,KAAKma,aAClBV,MAAOzZ,KAAK8Y,OACZ+B,eAAgB7a,KAAKoa,gBACrBU,UAAW9a,KAAKqa,WAChBU,iBAAkB/a,KAAKsa,kBACvBU,eAAgBhb,KAAKua,gBACrBU,MAAOjb,KAAKwa,OACZU,WAAYlb,KAAKya,YACjBU,eAAgBnb,KAAK0a,gBACrBU,iBAAkBpb,KAAK2a,kBACvBjI,KAAM1S,KAAK2X,OAQnB,aAAI7D,GACA,OAAO/T,MAAM+T,UAOjB,eAAI8G,CAAY5U,GACZhG,KAAKma,aAAenU,EAChBhG,KAAK8T,YACL9T,KAAK8T,UAAU8G,YAAc5U,GAQrC,eAAI4U,GACA,OAAO5a,KAAKma,aAOhB,SAAIV,CAAMzT,GACNhG,KAAK8Y,OAAS9S,EACVhG,KAAK8T,YACL9T,KAAK8T,UAAU2F,MAAQzT,GAQ/B,SAAIyT,GACA,OAAOzZ,KAAK8Y,OAOhB,kBAAI+B,CAAe7U,GACfhG,KAAKoa,gBAAkBpU,EACnBhG,KAAK8T,YACL9T,KAAK8T,UAAU+G,eAAiB7U,GAQxC,kBAAI6U,GACA,OAAO7a,KAAKoa,gBAOhB,aAAIU,CAAU9U,GACVhG,KAAKqa,WAAarU,EACdhG,KAAK8T,YACL9T,KAAK8T,UAAUgH,UAAY9U,GAQnC,aAAI8U,GACA,OAAO9a,KAAKqa,WAOhB,oBAAIU,CAAiB/U,GACjBhG,KAAKsa,kBAAoBtU,EACrBhG,KAAK8T,YACL9T,KAAK8T,UAAUiH,iBAAmB/U,GAQ1C,oBAAI+U,GACA,OAAO/a,KAAKsa,kBAOhB,kBAAIU,CAAehV,GACfhG,KAAKua,gBAAkBvU,EACnBhG,KAAK8T,YACL9T,KAAK8T,UAAUkH,eAAiBhV,GAQxC,kBAAIgV,GACA,OAAOhb,KAAKua,gBAOhB,SAAIU,CAAMjV,GACNhG,KAAKwa,OAASxU,EACVhG,KAAK8T,YACL9T,KAAK8T,UAAUmH,MAAQjV,GAQ/B,SAAIiV,GACA,OAAOjb,KAAKwa,OAOhB,cAAIU,CAAWlV,GACXhG,KAAKya,YAAczU,EACfhG,KAAK8T,YACL9T,KAAK8T,UAAUoH,WAAalV,GAQpC,cAAIkV,GACA,OAAOlb,KAAKya,YAOhB,kBAAIU,CAAenV,GACfhG,KAAK0a,gBAAkB1U,EACnBhG,KAAK8T,YACL9T,KAAK8T,UAAUqH,eAAiBnV,GAQxC,kBAAImV,GACA,OAAOnb,KAAK0a,gBAOhB,oBAAIU,CAAiBpV,GACjBhG,KAAK2a,kBAAoB3U,EACrBhG,KAAK8T,YACL9T,KAAK8T,UAAUsH,iBAAmBpV,GAQ1C,oBAAIoV,GACA,OAAOpb,KAAK2a,kBAOhB,QAAIjI,CAAK1M,GACA,CAAC,cAAe,OAAQ,QAAQqV,SAASrV,IAK9ChG,KAAK2X,MAAQ3R,EACThG,KAAK8T,YACL9T,KAAK8T,UAAUpB,KAAO1M,IANtBgN,QAAQC,KAAK,uBAAuBjN,2BAA+BhG,KAAK2X,WAchF,QAAIjF,GACA,OAAO1S,KAAK2X,MAGhB,6BAAWxR,GACP,MAAO,IACApG,MAAMoG,mBACT,QACA,eACA,YACA,mBACA,qBACA,mBACA,QACA,cACA,kBACA,oBACA,QAIR,wBAAAC,CAAyBlF,EAAcmF,EAAmBC,GAGtD,OAFAvG,MAAMqG,yBAAyBlF,EAAMmF,EAAWC,GAExCpF,GACJ,IAAK,QACDlB,KAAKyZ,MAAQ7J,EAAWtJ,GACxB,MACJ,IAAK,eACDtG,KAAK4a,YAAc5a,KAAKqT,aAAa,gBACrC,MACJ,IAAK,mBACDrT,KAAK6a,eAAiBzK,OAAO9J,GAC7B,MACJ,IAAK,YACDtG,KAAK8a,UAAY1K,OAAO9J,GACxB,MACJ,IAAK,qBACDtG,KAAK+a,iBAAmB3K,OAAO9J,GAC/B,MACJ,IAAK,mBACDtG,KAAKgb,eAAiB5K,OAAO9J,GAC7B,MACJ,IAAK,QACDtG,KAAKib,MAAQ7K,OAAO9J,GACpB,MACJ,IAAK,cACDtG,KAAKkb,WAAa9K,OAAO9J,GACzB,MACJ,IAAK,kBACDtG,KAAKmb,eAAiB/K,OAAO9J,GAC7B,MACJ,IAAK,oBACDtG,KAAKob,iBAAmBhL,OAAO9J,GAC/B,MACJ,IAAK,OACDtG,KAAK0S,KAAOpM,IAM5BvE,eAAeC,OAAO,WAAYkY,GCtUlC,MAAMoB,UAAwBzb,YAA9B,WAAAC,uBACYE,KAAQub,SAAG,IAAIxL,EAAAA,MAAM,EAAG,EAAG,GAE3B/P,KAAWwb,YAAG,GAEdxb,KAAayb,cAAG,GAEhBzb,KAAU0b,WAAG,GAEb1b,KAAa2b,cAAG,GAExB3b,KAAQ4b,SAA4B,KAEpC,cAAA1W,GACIlF,KAAK4b,SAAW,IAAIC,mBACpB7b,KAAK4b,SAASE,aAAc,EAC5B9b,KAAK4b,SAASG,cAAe,EAC7B/b,KAAK4b,SAASI,QAAUhc,KAAKub,SAC7Bvb,KAAKic,WAAajc,KAAKwb,YACvBxb,KAAKkc,aAAelc,KAAKyb,cACzBzb,KAAKmc,UAAYnc,KAAK0b,WACtB1b,KAAKoc,aAAepc,KAAK2b,cACzB3b,KAAK4b,SAASS,SAGlB,oBAAA3W,GACQ1F,KAAK4b,WACL5b,KAAK4b,SAASjW,UACd3F,KAAK4b,SAAW,MAIxB,MAAAU,CAAOpZ,EAAaqZ,GAChB,GAAIvc,KAAK4b,SAAU,CACf,MAAM/W,EAAQwN,EAAaQ,IAAI3P,GAC3B2B,IACIA,EAAM2X,QACNxc,KAAK4b,SAASW,GAAY1X,EAAM4X,SAChCzc,KAAK4b,SAASW,GAAWG,WAAa,GAEtC7X,EAAM8X,KAAK,QAAQ,KACf3c,KAAK4b,SAAUW,GAAY1X,EAAM4X,SACjCzc,KAAK4b,SAAUW,GAAWG,WAAa,EACvC1c,KAAK4b,SAAUS,QAAQ,MAO3C,WAAIL,CAAQhW,GACRhG,KAAKub,SAAWvV,EACZhG,KAAK4b,WACL5b,KAAK4b,SAASI,QAAUhW,GAIhC,WAAIgW,GACA,OAAOhc,KAAKub,SAGhB,cAAIU,CAAWjW,GACXhG,KAAKwb,YAAcxV,EACnBhG,KAAKsc,OAAOtW,EAAO,cAGvB,cAAIiW,GACA,OAAOjc,KAAKwb,YAGhB,gBAAIU,CAAalW,GACbhG,KAAKyb,cAAgBzV,EACrBhG,KAAKsc,OAAOtW,EAAO,gBAGvB,gBAAIkW,GACA,OAAOlc,KAAKyb,cAGhB,aAAIU,CAAUnW,GACVhG,KAAK0b,WAAa1V,EAClBhG,KAAKsc,OAAOtW,EAAO,aAGvB,aAAImW,GACA,OAAOnc,KAAK0b,WAGhB,gBAAIU,CAAapW,GACbhG,KAAK2b,cAAgB3V,EACrBhG,KAAKsc,OAAOtW,EAAO,YAGvB,gBAAIoW,GACA,OAAOpc,KAAK2b,cAGhB,UAAO9I,CAAIL,GACP,MAAMvN,EAAkB7B,SAAS+P,cAA+B,mBAAmBX,OACnF,OAAOvN,eAAAA,EAAiB2W,SAG5B,6BAAWzV,GACP,MAAO,CAAC,UAAW,cAAe,gBAAiB,aAAc,iBAGrE,wBAAAC,CAAyBlF,EAAcmF,EAAmBC,GACtD,OAAQpF,GACJ,IAAK,UACDlB,KAAKgc,QAAUpM,EAAWtJ,GAC1B,MACJ,IAAK,cACDtG,KAAKic,WAAa3V,EAClB,MACJ,IAAK,gBACDtG,KAAKkc,aAAe5V,EACpB,MACJ,IAAK,aACDtG,KAAKmc,UAAY7V,EACjB,MACJ,IAAK,gBACDtG,KAAKoc,aAAe9V,IAMpCvE,eAAeC,OAAO,cAAesZ,GC7HrC,MAAMsB,UAA+BtJ,EAUjC,WAAAxT,GACIC,MAAM,UAVFC,KAAYma,cAAG,EAEfna,KAASqZ,UAAW,GAEpBrZ,KAAe6c,iBAAG,EAElB7c,KAAK2X,MAA2E,QAOxF,uBAAAjE,GACI,MAAO,CACHhB,KAAM1S,KAAK2X,MACXiD,YAAa5a,KAAKma,aAClByB,SAAUN,EAAgBzI,IAAI7S,KAAKqZ,WACnCyD,eAAgB9c,KAAK6c,iBAQ7B,aAAI/I,GACA,OAAO/T,MAAM+T,UAOjB,QAAIpB,CAAK1M,GACLhG,KAAK2X,MAAQ3R,EACThG,KAAK8T,YACL9T,KAAK8T,UAAUpB,KAAO1M,GAQ9B,QAAI0M,GACA,OAAO1S,KAAK2X,MAOhB,eAAIiD,CAAY5U,GACZhG,KAAKma,aAAenU,EAChBhG,KAAK8T,YACL9T,KAAK8T,UAAU8G,YAAc5U,GAQrC,eAAI4U,GACA,OAAO5a,KAAKma,aAOhB,YAAIyB,CAAS5V,GACThG,KAAKqZ,UAAYrT,EACbhG,KAAK8T,YACL9T,KAAK8T,UAAU8H,SAAWN,EAAgBzI,IAAI7M,IAQtD,YAAI4V,GACA,OAAO5b,KAAKqZ,UAOhB,kBAAIyD,CAAe9W,GACfhG,KAAK6c,gBAAkB7W,EACnBhG,KAAK8T,YACL9T,KAAK8T,UAAUgJ,eAAiB9W,GAQxC,kBAAI8W,GACA,OAAO9c,KAAK6c,gBAGhB,6BAAW1W,GACP,MAAO,IAAIpG,MAAMoG,mBAAoB,eAAgB,WAAY,kBAAmB,QAGxF,wBAAAC,CAAyBlF,EAAcmF,EAAmBC,GAGtD,OAFAvG,MAAMqG,yBAAyBlF,EAAMmF,EAAWC,GAExCpF,GACJ,IAAK,eACDlB,KAAK4a,YAA2B,UAAbtU,EACnB,MACJ,IAAK,WACDtG,KAAK4b,SAAWtV,EAChB,MACJ,IAAK,kBACDtG,KAAK8c,eAA8B,UAAbxW,EACtB,MACJ,IAAK,OACDtG,KAAK0S,KAAOpM,IAM5BvE,eAAeC,OAAO,YAAa4a,GCnInC,MAAMG,UAAkCzJ,EA+CpC,WAAAxT,GACIC,MAAM,aA5CFC,KAAegd,gBAAW,EAK1Bhd,KAAcid,eAAS,IAAIzM,EAAAA,KAAK,EAAG,EAAG,GAKtCxQ,KAASkd,UAAW,GAKpBld,KAAcmd,eAAW,EAKzBnd,KAAaod,cAAS,IAAI5M,EAAAA,KAAK,EAAG,EAAG,GAKrCxQ,KAAKqd,MAAW,EAKhBrd,KAAYsd,aAAW,EAKvBtd,KAAgBud,iBAAW,EAK3Bvd,KAAK2X,MAAW,SAOxB,uBAAAjE,GACI,MAAO,CACH8J,eAAgBxd,KAAKgd,gBACrBS,cAAezd,KAAKid,eACpBS,SAAU1d,KAAKkd,UACfS,cAAe3d,KAAKmd,eACpBS,aAAc5d,KAAKod,cACnBS,KAAM7d,KAAKqd,MACXS,YAAa9d,KAAKsd,aAClBS,gBAAiB/d,KAAKud,iBACtB7K,KAAM1S,KAAK2X,OAQnB,aAAI7D,GACA,OAAO/T,MAAM+T,UAGjB,kBAAI0J,CAAexX,GACfhG,KAAKgd,gBAAkBhX,EACnBhG,KAAK8T,YACL9T,KAAK8T,UAAU0J,eAAiBxX,GAIxC,kBAAIwX,GACA,OAAOxd,KAAKgd,gBAGhB,iBAAIS,CAAczX,GACdhG,KAAKid,eAAiBjX,EAClBhG,KAAK8T,YACL9T,KAAK8T,UAAU2J,cAAgBzX,GAIvC,iBAAIyX,GACA,OAAOzd,KAAKid,eAGhB,YAAIS,CAAS1X,GACThG,KAAKkd,UAAYlX,EACbhG,KAAK8T,YACL9T,KAAK8T,UAAU4J,SAAW1X,GAIlC,YAAI0X,GACA,OAAO1d,KAAKkd,UAGhB,iBAAIS,CAAc3X,GACdhG,KAAKmd,eAAiBnX,EAClBhG,KAAK8T,YACL9T,KAAK8T,UAAU6J,cAAgB3X,GAIvC,iBAAI2X,GACA,OAAO3d,KAAKmd,eAGhB,gBAAIS,CAAa5X,GACbhG,KAAKod,cAAgBpX,EACjBhG,KAAK8T,YACL9T,KAAK8T,UAAU8J,aAAe5X,GAItC,gBAAI4X,GACA,OAAO5d,KAAKod,cAGhB,QAAIS,CAAK7X,GACLhG,KAAKqd,MAAQrX,EACThG,KAAK8T,YACL9T,KAAK8T,UAAU+J,KAAO7X,GAI9B,QAAI6X,GACA,OAAO7d,KAAKqd,MAGhB,eAAIS,CAAY9X,GACZhG,KAAKsd,aAAetX,EAChBhG,KAAK8T,YACL9T,KAAK8T,UAAUgK,YAAc9X,GAIrC,eAAI8X,GACA,OAAO9d,KAAKsd,aAGhB,mBAAIS,CAAgB/X,GAChBhG,KAAKud,iBAAmBvX,EACpBhG,KAAK8T,YACL9T,KAAK8T,UAAUiK,gBAAkB/X,GAIzC,mBAAI+X,GACA,OAAO/d,KAAKud,iBAGhB,QAAI7K,CAAK1M,GACLhG,KAAK2X,MAAQ3R,EACThG,KAAK8T,YACL9T,KAAK8T,UAAUpB,KAAO1M,GAI9B,QAAI0M,GACA,OAAO1S,KAAK2X,MAGhB,6BAAWxR,GACP,MAAO,IAAIpG,MAAMoG,mBAAoB,kBAAmB,iBAAkB,WAAY,iBAAkB,gBAAiB,OAAQ,cAAe,mBAAoB,QAGxK,wBAAAC,CAAyBlF,EAAcmF,EAAmBC,GAGtD,OAFAvG,MAAMqG,yBAAyBlF,EAAMmF,EAAWC,GAExCpF,GACJ,IAAK,kBACDlB,KAAKwd,eAAiBvG,WAAW3Q,GACjC,MACJ,IAAK,iBACDtG,KAAKyd,cAAgBlN,EAAUjK,GAC/B,MACJ,IAAK,WACDtG,KAAK0d,SAAWzG,WAAW3Q,GAC3B,MACJ,IAAK,iBACDtG,KAAK2d,cAAgB1G,WAAW3Q,GAChC,MACJ,IAAK,gBACDtG,KAAK4d,aAAerN,EAAUjK,GAC9B,MACJ,IAAK,OACDtG,KAAK6d,KAAO5G,WAAW3Q,GACvB,MACJ,IAAK,cACDtG,KAAK8d,YAAc7G,WAAW3Q,GAC9B,MACJ,IAAK,mBACDtG,KAAK+d,gBAAkB9G,WAAW3Q,GAClC,MACJ,IAAK,OACDtG,KAAK0S,KAAOpM,IAM5BvE,eAAeC,OAAO,eAAgB+a,GCnNtC,MAAMiB,UAA+B1K,EAcjC,WAAAxT,GACIC,MAAM,UAdFC,KAAYie,cAAG,EAEfje,KAAWke,YAAS,IAAI5N,OAAK,IAAK,KAElCtQ,KAAoBme,qBAAS,IAAI7N,OAAK,IAAK,KAE3CtQ,KAAS8U,UAAG,EAEZ9U,KAAMoe,QAAG,EAETpe,KAAWqe,YAAG,GAOtB,uBAAA3K,GACI,MAAO,CACHmC,SAAU7V,KAAK8U,UACfwJ,oBAAqBte,KAAKme,qBAC1BI,WAAYve,KAAKke,YACjBM,WAAYxe,KAAKqe,YACjBI,UAAWze,KAAKoe,OAASM,EAAAA,gBAAkBC,EAAcA,eACzDC,YAAa5e,KAAKie,cAQ1B,aAAInK,GACA,OAAO/T,MAAM+T,UAGjB,YAAI+B,CAAS7P,GACThG,KAAK8U,UAAY9O,EACbhG,KAAK8T,YACL9T,KAAK8T,UAAU+B,SAAW7V,KAAK8U,WAIvC,YAAIe,GACA,OAAO7V,KAAK8U,UAGhB,uBAAIwJ,CAAoBtY,GACpBhG,KAAKme,qBAAuBnY,EACxBhG,KAAK8T,YACL9T,KAAK8T,UAAUwK,oBAAsBte,KAAKme,sBAIlD,uBAAIG,GACA,OAAOte,KAAKme,qBAGhB,cAAII,CAAWvY,GACXhG,KAAKke,YAAclY,EACfhG,KAAK8T,YACL9T,KAAK8T,UAAUyK,WAAave,KAAKke,aAIzC,cAAIK,GACA,OAAOve,KAAKke,YAGhB,cAAIM,CAAWxY,GACXhG,KAAKqe,YAAcrY,EACfhG,KAAK8T,YACL9T,KAAK8T,UAAU0K,WAAaxe,KAAKqe,aAIzC,cAAIG,GACA,OAAOxe,KAAKqe,YAGhB,SAAIQ,CAAM7Y,GACNhG,KAAKoe,OAASpY,EACVhG,KAAK8T,YACL9T,KAAK8T,UAAU2K,UAAYze,KAAKoe,OAASM,EAAeA,gBAAGC,EAAcA,gBAIjF,SAAIE,GACA,OAAO7e,KAAKoe,OAGhB,eAAIQ,CAAY5Y,GACZhG,KAAKie,aAAejY,EAChBhG,KAAK8T,YACL9T,KAAK8T,UAAU8K,YAAc5e,KAAKie,cAI1C,eAAIW,GACA,OAAO5e,KAAKie,aAGhB,6BAAW9X,GACP,MAAO,IACApG,MAAMoG,mBACT,QACA,eACA,aACA,uBACA,WACA,eAIR,wBAAAC,CAAyBlF,EAAcmF,EAAmBC,GAGtD,OAFAvG,MAAMqG,yBAAyBlF,EAAMmF,EAAWC,GAExCpF,GACJ,IAAK,WACDlB,KAAK6V,SAAW4C,SAASnS,EAAU,IACnC,MACJ,IAAK,uBACDtG,KAAKse,oBAAsBjO,EAAU/J,GACrC,MACJ,IAAK,aACDtG,KAAKue,WAAalO,EAAU/J,GAC5B,MACJ,IAAK,cACDtG,KAAKwe,WAAavH,WAAW3Q,GAC7B,MACJ,IAAK,QACDtG,KAAK6e,MAAQ7e,KAAKqT,aAAa,SAC/B,MACJ,IAAK,eACDrT,KAAK4e,YAAc5e,KAAKqT,aAAa,kBAMrDtR,eAAeC,OAAO,YAAagc,GCnJnC,MAAMc,EAAQ,IAAIxO,EAAAA,KACZyO,EAAQ,IAAIvO,EAAAA,KACZwO,EAAQ,IAAItO,EAAAA,KA0BlB,MAAMuO,UAA+B3L,EAIjC,WAAAxT,GACIC,MAAM,UAGNC,KAAKkf,SAAW,IAAIC,iBAAiBnf,KAAKof,gBAAgBzc,KAAK3C,OAC/DA,KAAKkf,SAASG,QAAQrf,KAAM,CACxBsf,WAAW,IAIftf,KAAKyF,iBAAiB,yBAA0BzF,KAAKuf,6BAA6B5c,KAAK3C,OACvFA,KAAKyF,iBAAiB,qBAAsBzF,KAAKwf,yBAAyB7c,KAAK3C,OAGnF,aAAA6T,GAEI7T,KAAK8C,iBAAgC,sBAAsB4B,SAAS+a,IAChE,MAAMC,EAAaD,EAActe,aAAa,QACxCwe,EAAaF,EAActe,aAAa,cAC1Cue,GACA1f,KAAK4f,aAAaF,EAAYC,MAKlC,eAAAE,CAAgBC,EAAaH,GACjC,IACI,MAAMI,EAAmBJ,EAAaK,KAAKC,MAAMN,GAAc,CAAE,EAE3DO,EAAa,CAACC,EAAaC,EAAapa,KAE1C,GAAqB,iBAAVA,GAAsBA,EAAMiK,WAAW,UAAW,CACzD,MAAMoQ,EAAUra,EAAMsa,MAAM,GACtB3b,EAAevB,SAAS+P,cAAc,YAAYkN,KACxD,GAAI1b,EAEA,YADAwb,EAAOC,GAAOzb,EAAaE,OAMnC,GAAI7B,MAAMud,QAAQva,GAAQ,CACtB,GAAIma,EAAOC,aAAgB9P,OAEvB,YADA6P,EAAOC,GAAOtB,EAAM0B,IAAIxa,EAAM,GAAIA,EAAM,KAG5C,GAAIma,EAAOC,aAAgB5P,OAEvB,YADA2P,EAAOC,GAAOrB,EAAMyB,IAAIxa,EAAM,GAAIA,EAAM,GAAIA,EAAM,KAGtD,GAAIma,EAAOC,aAAgB1P,OAEvB,YADAyP,EAAOC,GAAOpB,EAAMwB,IAAIxa,EAAM,GAAIA,EAAM,GAAIA,EAAM,GAAIA,EAAM,KAMpE,GAAIA,GAA0B,iBAAVA,IAAuBhD,MAAMud,QAAQva,GAAQ,CACxDma,EAAOC,IAA+B,iBAAhBD,EAAOC,KAC9BD,EAAOC,GAAO,CAAE,GAEpB,IAAK,MAAMK,KAAaza,EACpBka,EAAWC,EAAOC,GAAMK,EAAWza,EAAMya,SAG7CN,EAAOC,GAAOpa,GAItB,IAAK,MAAMoa,KAAOL,EACdG,EAAWJ,EAAQM,EAAKL,EAAiBK,IAE/C,MAAOzJ,GACL3D,QAAQ2D,MAAM,wCAAwCgJ,KAAehJ,IAIrE,4BAAA4I,CAA6BmB,GACjC,MACMhB,EADgBgB,EAAMP,OACKhf,aAAa,QAC9C,IAAKue,IAAe1f,KAAK8T,UAAW,OAEpC,MAAMgM,EAAS9f,KAAK8T,UAAUjB,IAAI6M,GAC9BI,GACA9f,KAAK6f,gBAAgBC,EAAQY,EAAMC,OAAOhB,YAI1C,wBAAAH,CAAyBkB,GAC7B,MACMhB,EADgBgB,EAAMP,OACKhf,aAAa,QAC9C,IAAKue,IAAe1f,KAAK8T,UAAW,OAEpC,MAAMgM,EAAS9f,KAAK8T,UAAUjB,IAAI6M,GAC9BI,IACAA,EAAO1O,QAAUsP,EAAMC,OAAOvP,SAI9B,YAAAwO,CAAa1e,EAAcye,GAC/B,OAAK3f,KAAK8T,WAEV9T,KAAK8T,UAAU8M,GAAG,UAAU1f,KAAS4e,IACjC9f,KAAK6f,gBAAgBC,EAAQH,EAAW,IAErC3f,KAAK8T,UAAU+M,OAAO3f,IALD,KAQxB,aAAA4f,CAAc5f,GACblB,KAAK8T,WACV9T,KAAK8T,UAAUnO,QAAQzE,GAGnB,eAAAke,CAAgB2B,GACpB,IAAK,MAAMC,KAAYD,EAEnBC,EAASC,WAAWvc,SAASwc,IACzB,GAAIA,aAAgBrhB,aAA8C,cAA/BqhB,EAAKC,QAAQrR,cAA+B,CAC3E,MAAM4P,EAAawB,EAAK/f,aAAa,QAC/Bwe,EAAauB,EAAK/f,aAAa,cACjCue,GACA1f,KAAK4f,aAAaF,EAAYC,OAM1CqB,EAASI,aAAa1c,SAASwc,IAC3B,GAAIA,aAAgBrhB,aAA8C,cAA/BqhB,EAAKC,QAAQrR,cAA+B,CAC3E,MAAM4P,EAAawB,EAAK/f,aAAa,QACjCue,GACA1f,KAAK8gB,cAAcpB,OAOvC,oBAAAha,SACI1F,KAAKkf,SAASmC,aACY,QAA1B/gB,EAAAP,MAAM2F,4BAAoB,IAAApF,GAAAA,EAAAghB,KAAAthB,MAO9B,aAAI8T,GACA,OAAO/T,MAAM+T,WAIrB/R,eAAeC,OAAO,aAAcid,GCzLpC,MAAMsC,UAAsB1hB,YAA5B,WAAAC,uBACYE,KAAWwhB,YAAW,KAEtBxhB,KAAQ4Q,UAAY,EAEpB5Q,KAAK6Q,MAAW,GAMxB,oBAAI4Q,CAAiBzb,GACjBhG,KAAKwhB,YAAcxb,EACnBhG,KAAKW,cAAc,IAAIC,YAAY,yBAA0B,CACzD+f,OAAQ,CAAEhB,WAAY3Z,GACtB0b,SAAS,KAQjB,oBAAID,GACA,OAAOzhB,KAAKwhB,YAOhB,WAAIpQ,CAAQpL,GACRhG,KAAK4Q,SAAW5K,EAChBhG,KAAKW,cAAc,IAAIC,YAAY,qBAAsB,CACrD+f,OAAQ,CAAEvP,QAASpL,GACnB0b,SAAS,KAQjB,WAAItQ,GACA,OAAOpR,KAAK4Q,SAOhB,QAAI1P,CAAK8E,GACLhG,KAAK6Q,MAAQ7K,EAOjB,QAAI9E,GACA,OAAOlB,KAAK6Q,MAGhB,6BAAW1K,GACP,MAAO,CAAC,aAAc,UAAW,QAGrC,wBAAAC,CAAyBlF,EAAcmF,EAAmBC,GACtD,OAAQpF,GACJ,IAAK,aACDlB,KAAKyhB,iBAAmBnb,EACxB,MACJ,IAAK,UACDtG,KAAKoR,QAAuB,UAAb9K,EACf,MACJ,IAAK,OACDtG,KAAKkB,KAAOoF,IAM5BvE,eAAeC,OAAO,YAAauf,GC5EnC,MAAMI,UAA8BrO,EAgBhC,WAAAxT,GACIC,MAAM,SAhBFC,KAAc4hB,eAAyC,SAEvD5hB,KAAY6hB,aAAW,IAEvB7hB,KAAM8hB,OAAW,EAEjB9hB,KAAW+hB,aAAY,EAEvB/hB,KAAYgiB,aAAW,EAEvBhiB,KAAciiB,eAAW,EAEzBjiB,KAAOkiB,QAAW,EAO1B,uBAAAxO,GACI,MAAO,CACHyO,cAAeniB,KAAK4hB,eACpBQ,YAAapiB,KAAK6hB,aAClBQ,MAAOriB,KAAK8hB,OACZQ,WAAYtiB,KAAK+hB,YACjBQ,YAAaviB,KAAKgiB,aAClBQ,cAAexiB,KAAKiiB,eACpBQ,OAAQziB,KAAKkiB,SAQrB,aAAIpO,GACA,OAAO/T,MAAM+T,UAOjB,iBAAIqO,CAAcnc,GACdhG,KAAK4hB,eAAiB5b,EAClBhG,KAAK8T,YACL9T,KAAK8T,UAAUqO,cAAgBnc,GAQvC,iBAAImc,GACA,OAAOniB,KAAK4hB,eAOhB,eAAIQ,CAAYpc,GACZhG,KAAK6hB,aAAe7b,EAChBhG,KAAK8T,YACL9T,KAAK8T,UAAUsO,YAAcpc,GAQrC,eAAIoc,GACA,OAAOpiB,KAAK6hB,aAOhB,SAAIQ,CAAMrc,GACNhG,KAAK8hB,OAAS9b,EACVhG,KAAK8T,YACL9T,KAAK8T,UAAUuO,MAAQrc,GAQ/B,SAAIqc,GACA,OAAOriB,KAAK8hB,OAOhB,cAAIQ,CAAWtc,GACXhG,KAAK+hB,YAAc/b,EACfhG,KAAK8T,YACL9T,KAAK8T,UAAUwO,WAAatc,GAQpC,cAAIsc,GACA,OAAOtiB,KAAK+hB,YAOhB,eAAIQ,CAAYvc,GACZhG,KAAKgiB,aAAehc,EAChBhG,KAAK8T,YACL9T,KAAK8T,UAAUyO,YAAcvc,GAQrC,eAAIuc,GACA,OAAOviB,KAAKgiB,aAOhB,iBAAIQ,CAAcxc,GACdhG,KAAKiiB,eAAiBjc,EAClBhG,KAAK8T,YACL9T,KAAK8T,UAAU0O,cAAgBxc,GAQvC,iBAAIwc,GACA,OAAOxiB,KAAKiiB,eAOhB,UAAIQ,CAAOzc,GACPhG,KAAKkiB,QAAUlc,EACXhG,KAAK8T,YACL9T,KAAK8T,UAAU2O,OAASzc,GAQhC,UAAIyc,GACA,OAAOziB,KAAKkiB,QAGhB,6BAAW/b,GACP,MAAO,IACApG,MAAMoG,mBACT,iBACA,eACA,QACA,aACA,eACA,kBACA,UAIR,wBAAAC,CAAyBlF,EAAcmF,EAAmBC,GAGtD,OAFAvG,MAAMqG,yBAAyBlF,EAAMmF,EAAWC,GAExCpF,GACJ,IAAK,iBACDlB,KAAKmiB,cAAgB7b,EACrB,MACJ,IAAK,eACDtG,KAAKoiB,YAAcnL,WAAW3Q,GAC9B,MACJ,IAAK,QACDtG,KAAKqiB,MAAQpL,WAAW3Q,GACxB,MACJ,IAAK,aACDtG,KAAKsiB,WAAatiB,KAAKqT,aAAa,cACpC,MACJ,IAAK,eACDrT,KAAKuiB,YAActL,WAAW3Q,GAC9B,MACJ,IAAK,kBACDtG,KAAKwiB,cAAgBvL,WAAW3Q,GAChC,MACJ,IAAK,SACDtG,KAAKyiB,OAASxL,WAAW3Q,KAMzCvE,eAAeC,OAAO,YAAa2f,GCvNnC,MAAMe,UAAyB9iB,EAA/B,WAAAE,uBACYE,KAAM4Y,OAAW,GAEjB5Y,KAAS2iB,WAAY,EAErB3iB,KAAS4iB,UAAkB,KAE3B5iB,KAAK6iB,OAAY,EAEjB7iB,KAAK6Q,MAAW,GAEhB7Q,KAAQ8iB,UAAY,EAEpB9iB,KAAM8hB,OAAW,EAEjB9hB,KAAU+iB,WAAW,EAErB/iB,KAAOkiB,QAAW,EAK1BliB,KAASgjB,UAAqB,KAE9B,uBAAMpgB,eACuB,UAAnB5C,KAAKijB,oBAAc,IAAA3iB,OAAA,EAAAA,EAAAO,SAEzB,MAAMqiB,EAAU,CACZC,SAAUnjB,KAAK2iB,UACfS,KAAMpjB,KAAK6iB,MACXQ,QAASrjB,KAAK8iB,SACdT,MAAOriB,KAAK8hB,OACZwB,UAAWtjB,KAAK+iB,WAChBN,OAAQziB,KAAKkiB,SAEbliB,KAAK4iB,YACLM,EAAQK,SAAWvjB,KAAK4iB,WAG5B5iB,KAAKgjB,UAAYhjB,KAAKijB,aAAcnP,UAAW0P,QAAQxjB,KAAK6Q,MAAOqS,GACnEljB,KAAK6E,MAAQ7E,KAAK4Y,OAClB5Y,KAAKgjB,UAAWS,OAEhBzjB,KAAKU,WAGT,oBAAAgF,GACI1F,KAAKijB,aAAcnP,UAAW4P,WAAW1jB,KAAK6Q,OAGlD,gBAAcoS,GACV,MAAMA,EAAejjB,KAAKO,cAE1B,OAAM0iB,aAAwBtB,EAKvBsB,GAJHjQ,QAAQC,KAAK,8DACN,MAUf,SAAIpO,CAAMmB,SAEN,GADAhG,KAAK4Y,OAAS5S,EACVhG,KAAKgjB,UAAW,CAChB,MAAMxQ,EAA8B,QAAzBlS,EAAA+R,EAAaQ,IAAI7M,UAAQ,IAAA1F,OAAA,EAAAA,EAAAkS,GAChCA,IACAxS,KAAKgjB,UAAUne,MAAQ2N,IASnC,SAAI3N,GACA,OAAO7E,KAAK4Y,OAOhB,YAAIuK,CAASnd,GACThG,KAAK2iB,UAAY3c,EACbhG,KAAKgjB,YACLhjB,KAAKgjB,UAAUG,SAAWnd,GAQlC,YAAImd,GACA,OAAOnjB,KAAK2iB,UAOhB,YAAIY,CAASvd,GACThG,KAAK4iB,UAAY5c,EACbhG,KAAKgjB,YACLhjB,KAAKgjB,UAAUO,SAAWvd,GAQlC,YAAIud,GACA,OAAOvjB,KAAK4iB,UAOhB,QAAIQ,CAAKpd,GACLhG,KAAK6iB,MAAQ7c,EACThG,KAAKgjB,YACLhjB,KAAKgjB,UAAUI,KAAOpd,GAQ9B,QAAIod,GACA,OAAOpjB,KAAK6iB,MAOhB,QAAI3hB,CAAK8E,GACLhG,KAAK6Q,MAAQ7K,EACThG,KAAKgjB,YACLhjB,KAAKgjB,UAAU9hB,KAAO8E,GAQ9B,QAAI9E,GACA,OAAOlB,KAAK6Q,MAOhB,WAAIwS,CAAQrd,GACRhG,KAAK8iB,SAAW9c,EACZhG,KAAKgjB,YACLhjB,KAAKgjB,UAAUK,QAAUrd,GAQjC,WAAIqd,GACA,OAAOrjB,KAAK8iB,SAOhB,SAAIT,CAAMrc,GACNhG,KAAK8hB,OAAS9b,EACVhG,KAAKgjB,YACLhjB,KAAKgjB,UAAUX,MAAQrc,GAQ/B,SAAIqc,GACA,OAAOriB,KAAK8hB,OAOhB,aAAIwB,CAAUtd,GACVhG,KAAK+iB,WAAa/c,EACdhG,KAAKgjB,YACLhjB,KAAKgjB,UAAUM,UAAYtd,GAQnC,aAAIsd,GACA,OAAOtjB,KAAK+iB,WAOhB,UAAIN,CAAOzc,GACPhG,KAAKkiB,QAAUlc,EACXhG,KAAKgjB,YACLhjB,KAAKgjB,UAAUP,OAASzc,GAQhC,UAAIyc,GACA,OAAOziB,KAAKkiB,QAGhB,6BAAW/b,GACP,MAAO,CAAC,QAAS,WAAY,WAAY,OAAQ,OAAQ,UAAW,QAAS,YAAa,UAG9F,wBAAAC,CAAyBlF,EAAcmF,EAAmBC,GACtD,OAAQpF,GACJ,IAAK,QACDlB,KAAK6E,MAAQyB,EACb,MACJ,IAAK,WACDtG,KAAKujB,SAAWtM,WAAW3Q,GAC3B,MACJ,IAAK,OACDtG,KAAKojB,KAAOpjB,KAAKqT,aAAa,QAC9B,MACJ,IAAK,OACDrT,KAAKkB,KAAOoF,EACZ,MACJ,IAAK,UACDtG,KAAKqjB,QAAUrjB,KAAKqT,aAAa,WACjC,MACJ,IAAK,QACDrT,KAAKqiB,MAAQpL,WAAW3Q,GACxB,MACJ,IAAK,YACDtG,KAAKsjB,UAAYrM,WAAW3Q,GAC5B,MACJ,IAAK,SACDtG,KAAKyiB,OAASxL,WAAW3Q,KAMzCvE,eAAeC,OAAO,WAAY0gB,GC9QlC,MAAMiB,UAAqB/jB,EAA3B,WAAAE,uBACYE,KAAM4Y,OAAW,GAEjB5Y,KAAO4jB,QAAkB,KAEjC,iBAAAhhB,GACI5C,KAAK6jB,aACL7jB,KAAKU,WAGT,oBAAAgF,GACI1F,KAAK8jB,eAGD,YAAAC,CAAaC,GACjBhkB,KAAK4jB,QAAUI,EAAUC,0BAGrBD,EAAUE,WAAWC,OAAS,IAC9BnkB,KAAK4jB,QAAQjQ,aAAa,QAE1B3T,KAAK4jB,QAAQQ,KAAKC,gBAAgB,YAAaL,EAAUE,WAAW,GAAGzH,WAG3E,MAAM6H,EAAsBtkB,KAAKS,cACjC,GAAI6jB,EACAA,EAAoBzjB,QAAQC,MAAK,KAC7BwjB,EAAoBpT,OAAQY,SAAS9R,KAAK4jB,QAAS,QAEpD,CACH,MAAMW,EAAavkB,KAAKK,WACpBkkB,GACAA,EAAW1jB,QAAQC,MAAK,KACpByjB,EAAW9hB,IAAKsP,KAAKD,SAAS9R,KAAK4jB,QAAS,KAMpD,gBAAMC,SACV7jB,KAAK8jB,eAEL,MAAMS,QAAoC,QAAjBjkB,EAAAN,KAAKK,kBAAY,IAAAC,OAAA,EAAAA,EAAAO,SACpC4B,EAAM8hB,aAAA,EAAAA,EAAY9hB,IAElBoC,EAAQwN,EAAaQ,IAAI7S,KAAK4Y,QAC/B/T,IAIDA,EAAM2X,OACNxc,KAAK+jB,aAAalf,EAAM4X,WAExB5X,EAAM8X,KAAK,QAAQ,KACf3c,KAAK+jB,aAAalf,EAAM4X,SAAS,IAErCha,EAAKqC,OAAO0f,KAAK3f,KAIjB,YAAAif,SACU,QAAdxjB,EAAAN,KAAK4jB,eAAS,IAAAtjB,GAAAA,EAAAqF,UACd3F,KAAK4jB,QAAU,KAOnB,SAAI/e,CAAMmB,GACNhG,KAAK4Y,OAAS5S,EACVhG,KAAKykB,aACLzkB,KAAK6jB,aAQb,SAAIhf,GACA,OAAO7E,KAAK4Y,OAGhB,6BAAWzS,GACP,MAAO,CAAC,SAGZ,wBAAAC,CAAyBlF,EAAcmF,EAAmBC,GACtD,GACS,UADDpF,EAEAlB,KAAK6E,MAAQyB,GAM7BvE,eAAeC,OAAO,WAAY2hB,GCjGlC,MAAMe,UAAqB9kB,EAA3B,WAAAE,uBAIYE,KAAA2kB,KAAO,OAKP3kB,KAAS4kB,UAAG,IAAI7U,EAAAA,MAAM,EAAG,EAAG,GAK5B/P,KAAW6kB,YAAG,EAKd7kB,KAAS8kB,UAAG,EAKZ9kB,KAAO+kB,QAAG,IAKlB/kB,KAAKglB,MAAiB,KAEtB,uBAAMpiB,eACqB,UAAjB5C,KAAKK,kBAAY,IAAAC,OAAA,EAAAA,EAAAO,SAEvBb,KAAKglB,MAAQhlB,KAAKK,WAAYoC,IAAKuiB,MACnChlB,KAAKilB,sBAELjlB,KAAKU,WAGT,mBAAAukB,GACQjlB,KAAKglB,QACLhlB,KAAKglB,MAAME,IAAIxS,KAAO1S,KAAK2kB,KAC3B3kB,KAAKglB,MAAME,IAAIzL,MAAQzZ,KAAK4kB,UAC5B5kB,KAAKglB,MAAME,IAAIC,QAAUnlB,KAAK6kB,YAC9B7kB,KAAKglB,MAAME,IAAI1f,MAAQxF,KAAK8kB,UAC5B9kB,KAAKglB,MAAME,IAAIE,IAAMplB,KAAK+kB,SASlC,OAAIG,CAAIlf,GACJhG,KAAK2kB,KAAO3e,EACRhG,KAAKglB,QACLhlB,KAAKglB,MAAME,IAAIxS,KAAO1M,GAQ9B,OAAIkf,GACA,OAAOllB,KAAK2kB,KAOhB,YAAIU,CAASrf,GACThG,KAAK4kB,UAAY5e,EACbhG,KAAKglB,QACLhlB,KAAKglB,MAAME,IAAIzL,MAAQzT,GAQ/B,YAAIqf,GACA,OAAOrlB,KAAK4kB,UAOhB,cAAIU,CAAWtf,GACXhG,KAAK6kB,YAAc7e,EACfhG,KAAKglB,QACLhlB,KAAKglB,MAAME,IAAIC,QAAUnf,GAQjC,cAAIsf,GACA,OAAOtlB,KAAK6kB,YAOhB,YAAIU,CAASvf,GACThG,KAAK8kB,UAAY9e,EACbhG,KAAKglB,QACLhlB,KAAKglB,MAAME,IAAI1f,MAAQQ,GAQ/B,YAAIuf,GACA,OAAOvlB,KAAK8kB,UAOhB,UAAIU,CAAOxf,GACPhG,KAAK+kB,QAAU/e,EACXhG,KAAKglB,QACLhlB,KAAKglB,MAAME,IAAIE,IAAMpf,GAQ7B,UAAIwf,GACA,OAAOxlB,KAAK+kB,QAGhB,6BAAW5e,GACP,MAAO,CAAC,MAAO,YAAa,cAAe,YAAa,WAG5D,wBAAAC,CAAyBlF,EAAcmF,EAAmBC,GACtD,OAAQpF,GACJ,IAAK,MACDlB,KAAKklB,IAAM5e,EACX,MACJ,IAAK,YACDtG,KAAKqlB,SAAWzV,EAAWtJ,GAC3B,MACJ,IAAK,cACDtG,KAAKslB,WAAarO,WAAW3Q,GAC7B,MACJ,IAAK,YACDtG,KAAKulB,SAAWtO,WAAW3Q,GAC3B,MACJ,IAAK,UACDtG,KAAKwlB,OAASvO,WAAW3Q,KAOzCvE,eAAeC,OAAO,WAAY0iB,GC3KlC,MAAMe,UAAmB7lB,EAAzB,WAAAE,uBACYE,KAAM4Y,OAAG,GAET5Y,KAAO0lB,QAAG,IAAIlV,EAAAA,KAAK,EAAG,IAAM,GAE5BxQ,KAAUqa,WAAG,EAEbra,KAAA+Q,UAAY,IAAIP,OAEhBxQ,KAAM2lB,OAAG,EAET3lB,KAAS4lB,WAAG,EAEZ5lB,KAAMgR,OAAG,IAAIR,EAAAA,KAAK,IAAK,IAAK,KAE5BxQ,KAAK2X,MAAyC,WAE9C3X,KAAM6lB,OAAiB,KAE/B,iBAAAjjB,GACI5C,KAAK8lB,cACL9lB,KAAKU,WAGT,oBAAAgF,GACI1F,KAAK+lB,gBAGD,eAAAC,CAAgBnhB,GACpB,IAAK7E,KAAK6lB,OAAQ,OAElB,MAAMI,EAASphB,EAAM4X,SAEfyJ,EAASC,EAAAA,YAAYC,sBAAsBH,GAIjD,GAHAC,EAAOxJ,WAAa,EACpB1c,KAAK6lB,OAAOK,OAASA,EAEjBlmB,KAAK4lB,UAAW,CAChB,MAAMS,EAAWF,EAAAA,YAAYG,uBAAuBL,GAC9CM,EAAWJ,EAAAA,YAAYK,cAAcH,GAC3CrmB,KAAK6lB,OAAOU,SAAWA,EAG3B,MAAME,EAAQzmB,KAAK6lB,OAAOa,OAAOC,aAAaC,EAAAA,gBAC1CH,IACAA,EAAMrV,QAAyB,SAAfpR,KAAK2X,OAGzB3X,KAAK6lB,OAAOgB,IAAInU,KAAO1S,KAAK2X,MAC5B3X,KAAK6lB,OAAOgB,IAAI3F,KAAKxP,cAAc1R,KAAKgR,QACxChR,KAAK6lB,OAAOgB,IAAIC,OAAS9mB,KAAK0lB,QAC9B1lB,KAAK6lB,OAAOkB,gBAAkB/mB,KAAKqa,WAG/B,iBAAMyL,SACV,MAAMvB,QAAoC,QAAjBjkB,EAAAN,KAAKK,kBAAY,IAAAC,OAAA,EAAAA,EAAAO,SACpC4B,EAAM8hB,aAAA,EAAAA,EAAY9hB,IACxB,IAAKA,EACD,OAGJ,MAAMoC,EAAQwN,EAAaQ,IAAI7S,KAAK4Y,QAC/B/T,IAIL7E,KAAK6lB,OAASpjB,EAAIuiB,MAEdngB,EAAM2X,OACNxc,KAAKgmB,gBAAgBnhB,IAErBA,EAAM8X,KAAK,QAAQ,KACf3c,KAAKgmB,gBAAgBnhB,EAAM,IAE/BpC,EAAIqC,OAAO0f,KAAK3f,KAIhB,aAAAkhB,WACC/lB,KAAK6lB,SAEU,QAApBvlB,EAAAN,KAAK6lB,OAAOK,cAAQ,IAAA5lB,GAAAA,EAAAqF,UAEpB3F,KAAK6lB,OAAOK,OAAS,KACC,QAAtBc,EAAAhnB,KAAK6lB,OAAOU,gBAAU,IAAAS,GAAAA,EAAArhB,UAEtB3F,KAAK6lB,OAAOU,SAAW,KAEvBvmB,KAAK6lB,OAAS,MAGlB,SAAIhhB,CAAMmB,GACNhG,KAAK4Y,OAAS5S,EACVhG,KAAKykB,aACLzkB,KAAK8lB,cAIb,SAAIjhB,GACA,OAAO7E,KAAK4Y,OAGhB,UAAIkO,CAAO9gB,GACPhG,KAAK0lB,QAAU1f,EACXhG,KAAK6lB,SACL7lB,KAAK6lB,OAAOgB,IAAIC,OAAS9mB,KAAK0lB,SAItC,UAAIoB,GACA,OAAO9mB,KAAK0lB,QAGhB,aAAI5K,CAAU9U,GACVhG,KAAKqa,WAAarU,EACdhG,KAAK6lB,SACL7lB,KAAK6lB,OAAOkB,gBAAkB/mB,KAAKqa,YAI3C,aAAIS,GACA,OAAO9a,KAAKqa,WAGhB,SAAI4M,CAAMjhB,GACNhG,KAAK2lB,OAAS3f,EACVhG,KAAK6lB,SACL7lB,KAAK6lB,OAAOqB,UAAYlnB,KAAK2lB,QAIrC,SAAIsB,GACA,OAAOjnB,KAAK2lB,OAGhB,YAAIU,CAASrgB,GACThG,KAAK4lB,UAAY5f,EAGrB,YAAIqgB,GACA,OAAOrmB,KAAK4lB,UAGhB,YAAIrU,CAASvL,GACThG,KAAK+Q,UAAY/K,EACbhG,KAAK6lB,SACL7lB,KAAK6lB,OAAOsB,gBAAiB,IAAI/P,EAAAA,MAAOmB,mBAAmBvS,IAInE,YAAIuL,GACA,OAAOvR,KAAK+Q,UAGhB,SAAIU,CAAMzL,GACNhG,KAAKgR,OAAShL,EACVhG,KAAK6lB,QACL7lB,KAAK6lB,OAAOgB,IAAI3F,KAAKxP,cAAc1R,KAAKgR,QAIhD,SAAIS,GACA,OAAOzR,KAAKgR,OAGhB,QAAI0B,CAAK1M,GAEL,GADAhG,KAAK2X,MAAQ3R,EACThG,KAAK6lB,OAAQ,CACb7lB,KAAK6lB,OAAOgB,IAAInU,KAAO1S,KAAK2X,MAC5B,MAAM8O,EAAQzmB,KAAK6lB,OAAOa,OAAOC,aAAaC,EAAAA,gBAC1CH,IACAA,EAAMrV,QAAyB,SAAfpR,KAAK2X,QAKjC,QAAIjF,GACA,OAAO1S,KAAK2X,MAGhB,6BAAWxR,GACP,MAAO,CAAC,QAAS,SAAU,YAAa,QAAS,WAAY,WAAY,QAAS,QAGtF,wBAAAC,CAAyBlF,EAAcmF,EAAmBC,GACtD,OAAQpF,GACJ,IAAK,QACDlB,KAAK6E,MAAQyB,EACb,MACJ,IAAK,SACDtG,KAAK8mB,OAASvW,EAAUjK,GACxB,MACJ,IAAK,YACDtG,KAAK8a,UAAY7D,WAAW3Q,GAC5B,MACJ,IAAK,QACDtG,KAAKinB,MAAQxO,SAASnS,EAAU,IAChC,MACJ,IAAK,WACDtG,KAAKqmB,SAAWrmB,KAAKqT,aAAanS,GAClC,MACJ,IAAK,WACDlB,KAAKuR,SAAWhB,EAAUjK,GAC1B,MACJ,IAAK,QACDtG,KAAKyR,MAAQlB,EAAUjK,GACvB,MACJ,IAAK,OACDtG,KAAK0S,KAAOpM,IAM5BvE,eAAeC,OAAO,SAAUyjB"}
|