@playcanvas/web-components 0.1.9 → 0.1.10
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/README.md +2 -2
- package/dist/app.d.ts +11 -0
- package/dist/components/camera-component.d.ts +24 -0
- package/dist/components/light-component.d.ts +46 -0
- package/dist/components/sound-component.d.ts +1 -1
- package/dist/entity.d.ts +7 -0
- package/dist/fog.d.ts +28 -0
- package/dist/pwc.cjs +408 -19
- package/dist/pwc.cjs.map +1 -1
- package/dist/pwc.js +408 -19
- 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 +409 -20
- package/dist/pwc.mjs.map +1 -1
- package/package.json +5 -4
- package/src/app.ts +180 -1
- package/src/components/camera-component.ts +65 -3
- package/src/components/light-component.ts +103 -3
- package/src/components/script-component.ts +22 -13
- package/src/entity.ts +88 -1
- package/src/fog.ts +121 -0
- package/src/material.ts +2 -2
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._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}));
|
|
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._picker=null,this._hasPointerListeners={pointerenter:!1,pointerleave:!1,pointerdown:!1,pointerup:!1,pointermove:!1},this._hoveredEntity=null,this._pointerHandlers={pointermove:null,pointerdown:null,pointerup:null},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),this._pickerCreate();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._pickerDestroy(),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()}_pickerCreate(){const{width:t,height:s}=this.app.graphicsDevice;this._picker=new e.Picker(this.app,t,s),this._pointerHandlers.pointermove=this._onPointerMove.bind(this),this._pointerHandlers.pointerdown=this._onPointerDown.bind(this),this._pointerHandlers.pointerup=this._onPointerUp.bind(this),["pointermove","pointerdown","pointerup","pointerenter","pointerleave"].forEach((t=>{this.addEventListener(`${t}:connect`,(()=>this._onPointerListenerAdded(t))),this.addEventListener(`${t}:disconnect`,(()=>this._onPointerListenerRemoved(t)))}))}_pickerDestroy(){this._canvas&&Object.entries(this._pointerHandlers).forEach((([t,e])=>{e&&this._canvas.removeEventListener(t,e)})),this._picker=null,this._pointerHandlers={pointermove:null,pointerdown:null,pointerup:null}}_onPointerMove(t){if(!this._picker||!this.app)return;const e=this.app.root.findComponent("camera");if(!e)return;const s=this._canvas.getBoundingClientRect(),i=t.clientX-s.left,n=t.clientY-s.top;this._picker.prepare(e,this.app.scene);const a=this._picker.getSelection(i,n);let o=null;if(a.length>0){let t=a[0].node;for(;t&&!o;){const e=this.querySelector(`pc-entity[name="${t.name}"]`);e&&(o=e),t=t.parent}}this._hoveredEntity!==o&&(this._hoveredEntity&&this._hoveredEntity.hasListeners("pointerleave")&&this._hoveredEntity.dispatchEvent(new PointerEvent("pointerleave",t)),o&&o.hasListeners("pointerenter")&&o.dispatchEvent(new PointerEvent("pointerenter",t))),this._hoveredEntity=o,o&&o.hasListeners("pointermove")&&o.dispatchEvent(new PointerEvent("pointermove",t))}_onPointerDown(t){if(!this._picker||!this.app)return;const e=this.app.root.findComponent("camera");if(!e)return;const s=this._canvas.getBoundingClientRect(),i=t.clientX-s.left,n=t.clientY-s.top;this._picker.prepare(e,this.app.scene);const a=this._picker.getSelection(i,n);if(a.length>0){let e=a[0].node;for(;e;){const s=this.querySelector(`pc-entity[name="${e.name}"]`);if(s&&s.hasListeners("pointerdown")){s.dispatchEvent(new PointerEvent("pointerdown",t));break}e=e.parent}}}_onPointerUp(t){if(!this._picker||!this.app)return;const e=this.app.root.findComponent("camera");if(!e)return;const s=this._canvas.getBoundingClientRect(),i=t.clientX-s.left,n=t.clientY-s.top;this._picker.prepare(e,this.app.scene);const a=this._picker.getSelection(i,n);if(a.length>0){const e=this.querySelector(`pc-entity[name="${a[0].node.name}"]`);e&&e.hasListeners("pointerup")&&e.dispatchEvent(new PointerEvent("pointerup",t))}}_onPointerListenerAdded(t){if(!this._hasPointerListeners[t]&&this._canvas){this._hasPointerListeners[t]=!0;const e="pointerenter"===t||"pointerleave"===t?this._pointerHandlers.pointermove:this._pointerHandlers[t];e&&this._canvas.addEventListener("pointerenter"===t||"pointerleave"===t?"pointermove":t,e)}}_onPointerListenerRemoved(t){if(!Array.from(this.querySelectorAll("pc-entity")).some((e=>e.hasListeners(t)))&&this._canvas){this._hasPointerListeners[t]=!1;const e="pointerenter"===t||"pointerleave"===t?this._pointerHandlers.pointermove:this._pointerHandlers[t];e&&this._canvas.removeEventListener("pointerenter"===t||"pointerleave"===t?"pointermove":t,e)}}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)},c=t=>{const s=t.split(" ").map(Number);return new e.Vec4(s)};class l 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._listeners={},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())));["onpointerenter","onpointerleave","onpointerdown","onpointerup","onpointermove"].forEach((t=>{const e=this.getAttribute(t);if(e){const s=t.substring(2),i=t=>{try{new Function("event",e).call(this,t)}catch(t){console.error("Error in event handler:",t)}};this.addEventListener(s,i)}}))}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","onpointerenter","onpointerleave","onpointerdown","onpointerup","onpointermove"]}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()));break;case"onpointerenter":case"onpointerleave":case"onpointerdown":case"onpointerup":case"onpointermove":if(s){const e=t.substring(2),s=t=>{try{const s=this.getAttribute(e)||"";new Function("event",s).call(this,t)}catch(t){console.error("Error in event handler:",t)}};this.addEventListener(e,s)}}}addEventListener(t,e,s){this._listeners[t]||(this._listeners[t]=[]),this._listeners[t].push(e),super.addEventListener(t,e,s),t.startsWith("pointer")&&this.dispatchEvent(new CustomEvent(`${t}:connect`,{bubbles:!0}))}removeEventListener(t,e,s){this._listeners[t]&&(this._listeners[t]=this._listeners[t].filter((t=>t!==e))),super.removeEventListener(t,e,s),t.startsWith("pointer")&&this.dispatchEvent(new CustomEvent(`${t}:disconnect`,{bubbles:!0}))}hasListeners(t){var e;return Boolean(null===(e=this._listeners[t])||void 0===e?void 0:e.length)}}customElements.define("pc-entity",l);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 m extends d{constructor(){super("audiolistener")}get component(){return super.component}}customElements.define("pc-listener",m);const f=new Map([["none",e.TONEMAP_NONE],["linear",e.TONEMAP_LINEAR],["filmic",e.TONEMAP_FILMIC],["hejl",e.TONEMAP_HEJL],["aces",e.TONEMAP_ACES],["aces2",e.TONEMAP_ACES2],["neutral",e.TONEMAP_NEUTRAL]]);class _ 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._gamma="srgb",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),this._tonemap="none"}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,gammaCorrection:"srgb"===this._gamma?e.GAMMA_SRGB:e.GAMMA_NONE,nearClip:this._nearClip,orthographic:this._orthographic,orthoHeight:this._orthoHeight,priority:this._priority,rect:this._rect,scissorRect:this._scissorRect,toneMapping:f.get(this._tonemap)}}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 gamma(t){this._gamma=t,this.component&&(this.component.gammaCorrection="srgb"===t?e.GAMMA_SRGB:e.GAMMA_NONE)}get gamma(){return this._gamma}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}set tonemap(t){var s;this._tonemap=t,this.component&&(this.component.toneMapping=null!==(s=f.get(t))&&void 0!==s?s:e.TONEMAP_NONE)}get tonemap(){return this._tonemap}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","gamma","near-clip","orthographic","ortho-height","priority","rect","scissor-rect","tonemap"]}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"gamma":this.gamma=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=c(s);break;case"scissor-rect":this.scissorRect=c(s);break;case"tonemap":this.tonemap=s}}}customElements.define("pc-camera",_);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 b 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=c(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",b);class y 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",y);const v=new Map([["pcf1-16f",e.SHADOW_PCF1_16F],["pcf1-32f",e.SHADOW_PCF1_32F],["pcf3-16f",e.SHADOW_PCF3_16F],["pcf3-32f",e.SHADOW_PCF3_32F],["pcf5-16f",e.SHADOW_PCF5_16F],["pcf5-32f",e.SHADOW_PCF5_32F],["vsm-16f",e.SHADOW_VSM_16F],["vsm-32f",e.SHADOW_VSM_32F],["pcss-32f",e.SHADOW_PCSS_32F]]);class w 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._shadowIntensity=1,this._shadowResolution=1024,this._shadowType="pcf3-32f",this._type="directional",this._vsmBias=.01}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,shadowIntensity:this._shadowIntensity,shadowResolution:this._shadowResolution,shadowType:v.get(this._shadowType),type:this._type,vsmBias:this._vsmBias}}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 shadowIntensity(t){this._shadowIntensity=t,this.component&&(this.component.shadowIntensity=t)}get shadowIntensity(){return this._shadowIntensity}set shadowResolution(t){this._shadowResolution=t,this.component&&(this.component.shadowResolution=t)}get shadowResolution(){return this._shadowResolution}set shadowType(t){var s;this._shadowType=t,this.component&&(this.component.shadowType=null!==(s=v.get(t))&&void 0!==s?s:e.SHADOW_PCF3_32F)}get shadowType(){return this._shadowType}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}set vsmBias(t){this._vsmBias=t,this.component&&(this.component.vsmBias=t)}get vsmBias(){return this._vsmBias}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-intensity","shadow-resolution","shadow-type","type","vsm-bias"]}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"shadow-intensity":this.shadowIntensity=Number(s);break;case"shadow-type":this.shadowType=s;break;case"type":this.type=s;break;case"vsm-bias":this.vsmBias=Number(s)}}}customElements.define("pc-light",w);class C 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=!1,this.material.useMetalness=!1,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",C);class k 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:C.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=C.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",k);class E 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",E);class A 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",A);class S 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(i&&"object"==typeof i&&Array.isArray(i)){if(i.length>0&&"object"==typeof i[0])return void(t[s]=i.map((t=>{const e={};for(const s in t)n(e,s,t[s]);return e})));if(2===i.length&&"number"==typeof i[0])return void(t[s]=new e.Vec2(i[0],i[1]));if(3===i.length&&"number"==typeof i[0])return void(t[s]=new e.Vec3(i[0],i[1],i[2]));if(4===i.length&&"number"==typeof i[0])return void(t[s]=new e.Vec4(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",S);class x 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",x);class M 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",M);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 M?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 D 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",D);class L 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",L);class R 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",R),t.AppElement=n,t.AssetElement=u,t.AsyncElement=s,t.CameraComponentElement=_,t.CollisionComponentElement=g,t.ComponentElement=d,t.ElementComponentElement=b,t.EntityElement=l,t.GSplatComponentElement=y,t.LightComponentElement=w,t.ListenerComponentElement=m,t.MaterialElement=C,t.ModelElement=D,t.ModuleElement=i,t.RenderComponentElement=k,t.RigidBodyComponentElement=E,t.SceneElement=L,t.ScreenComponentElement=A,t.ScriptComponentElement=S,t.ScriptElement=x,t.SkyElement=R,t.SoundComponentElement=M,t.SoundSlotElement=F}));
|
|
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","_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":"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"}
|
|
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","_picker","_hasPointerListeners","pointerenter","pointerleave","pointerdown","pointerup","pointermove","_hoveredEntity","_pointerHandlers","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","_pickerCreate","assetElements","forEach","assetElement","createAsset","asset","assets","add","materialElements","materialElement","createMaterial","entityElements","entityElement","createEntity","buildHierarchy","preload","start","addEventListener","disconnectedCallback","_pickerDestroy","destroy","removeEventListener","contains","removeChild","resizeCanvas","width","height","Picker","_onPointerMove","_onPointerDown","_onPointerUp","type","_onPointerListenerAdded","_onPointerListenerRemoved","Object","entries","handler","event","camera","root","findComponent","canvasRect","getBoundingClientRect","x","clientX","left","y","clientY","top","prepare","scene","selection","getSelection","newHoverEntity","length","node","querySelector","parent","hasListeners","PointerEvent","some","entity","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","_listeners","Entity","enabled","position","setLocalPosition","rotation","setLocalEulerAngles","scale","setLocalScale","tags","tag","trim","eventName","eventType","substring","eventHandler","Function","call","e","console","error","addChild","childEntities","child","clear","handlerStr","listener","options","push","bubbles","filter","l","Boolean","extToType","Map","AssetElement","_preload","destroyAsset","id","src","ext","pop","get","Asset","url","warn","unload","_newValue","hasAttribute","ComponentElement","componentName","_component","_componentName","getInitialComponentData","addComponent","data","initComponent","component","removeComponent","ListenerComponentElement","tonemaps","TONEMAP_NONE","TONEMAP_LINEAR","TONEMAP_FILMIC","TONEMAP_HEJL","TONEMAP_ACES","TONEMAP_ACES2","TONEMAP_NEUTRAL","CameraComponentElement","_clearColor","_clearColorBuffer","_clearDepthBuffer","_clearStencilBuffer","_cullFaces","_farClip","_flipFaces","_fov","_frustumCulling","_gamma","_nearClip","_orthographic","_orthoHeight","_priority","_rect","_scissorRect","_tonemap","clearColor","clearColorBuffer","clearDepthBuffer","clearStencilBuffer","cullFaces","farClip","flipFaces","fov","frustumCulling","gammaCorrection","GAMMA_SRGB","GAMMA_NONE","nearClip","orthographic","orthoHeight","priority","rect","scissorRect","toneMapping","xrAvailable","xrManager","system","xr","supported","isAvailable","XRTYPE_VR","startXr","space","callback","err","message","endXr","gamma","projection","PROJECTION_ORTHOGRAPHIC","PROJECTION_PERSPECTIVE","tonemap","parseFloat","CollisionComponentElement","_angularOffset","Quat","_axis","_convexHull","_halfExtents","_height","_linearOffset","_radius","_type","axis","angularOffset","convexHull","halfExtents","linearOffset","radius","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","wrapLines","GSplatComponentElement","shadowTypes","SHADOW_PCF1_16F","SHADOW_PCF1_32F","SHADOW_PCF3_16F","SHADOW_PCF3_32F","SHADOW_PCF5_16F","SHADOW_PCF5_32F","SHADOW_VSM_16F","SHADOW_VSM_32F","SHADOW_PCSS_32F","LightComponentElement","_castShadows","_innerConeAngle","_intensity","_normalOffsetBias","_outerConeAngle","_range","_shadowBias","_shadowDistance","_shadowIntensity","_shadowResolution","_shadowType","_vsmBias","castShadows","innerConeAngle","intensity","normalOffsetBias","outerConeAngle","range","shadowBias","shadowDistance","shadowIntensity","shadowResolution","shadowType","vsmBias","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","ScriptComponentElement","observer","MutationObserver","handleMutations","observe","childList","handleScriptAttributesChange","handleScriptEnableChange","scriptElement","scriptName","attributes","createScript","applyAttributes","script","attributesObject","JSON","parse","applyValue","target","key","assetId","slice","isArray","item","obj","itemKey","nestedKey","detail","on","create","destroyScript","mutations","mutation","addedNodes","tagName","removedNodes","disconnect","ScriptElement","_attributes","scriptAttributes","SoundComponentElement","_distanceModel","_maxDistance","_pitch","_positional","_refDistance","_rollOffFactor","_volume","distanceModel","maxDistance","pitch","positional","refDistance","rollOffFactor","volume","SoundSlotElement","_autoPlay","_duration","_loop","_overlap","_startTime","soundSlot","soundElement","autoPlay","loop","overlap","startTime","duration","addSlot","play","removeSlot","ModelElement","_entity","_loadModel","_unloadModel","_instantiate","container","instantiateRenderEntity","animations","anim","assignAnimation","parentEntityElement","appElement","load","isConnected","SceneElement","_fog","_fogColor","_fogDensity","_fogStart","_fogEnd","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,EA8CrB,WAAAE,GACIC,QA3CIC,KAAOkC,QAA6B,KAEpClC,KAAMmC,QAAG,EAETnC,KAAUoC,YAAG,EAEbpC,KAAMqC,QAAG,EAETrC,KAAQsC,UAAG,EAEXtC,KAAeuC,iBAAG,EAElBvC,KAAewC,iBAAG,EAElBxC,KAAOyC,QAAkB,KAEzBzC,KAAA0C,qBAAmD,CACvDC,cAAc,EACdC,cAAc,EACdC,aAAa,EACbC,WAAW,EACXC,aAAa,GAGT/C,KAAcgD,eAAyB,KAEvChD,KAAAiD,iBAA4D,CAChEF,YAAa,KACbF,YAAa,KACbC,UAAW,MAMf9C,KAAGkD,IAAuB,KAWtBlD,KAAKmD,gBAAkBnD,KAAKmD,gBAAgBC,KAAKpD,MAGrD,uBAAMqD,GAEF,MAAMC,EAAiBtD,KAAKuD,iBAAgC,4BAGtDrD,QAAQsD,IAAIC,MAAMC,KAAKJ,GAAgBK,KAAIC,GAAUA,EAAO9B,oBAGlE9B,KAAKkC,QAAU2B,SAASC,cAAc,UACtC9D,KAAK+D,YAAY/D,KAAKkC,SAGtBlC,KAAKkD,IAAM,IAAIc,cAAYhE,KAAKkC,QAAS,CACrC+B,sBAAuB,CACnBC,MAAOlE,KAAKmC,OACZgC,UAAWnE,KAAKoC,WAChBgC,MAAOpE,KAAKqC,OACZgC,QAASrE,KAAKsC,UAElBgC,SAAU,IAAIC,EAAQA,SAACC,QACvBC,MAAO,IAAIC,QAAM1E,KAAKkC,WAE1BlC,KAAKkD,IAAIyB,eAAeC,cAAgB5E,KAAKuC,gBAAkBiC,OAAOK,iBAAmB,EAEzF7E,KAAKkD,IAAI4B,kBAAkBC,wBAC3B/E,KAAKkD,IAAI8B,oBAAoBC,mBAE7BjF,KAAKkF,gBAGL,MAAMC,EAAgBnF,KAAKuD,iBAA+B,qBAC1DE,MAAMC,KAAKyB,GAAeC,SAASC,IAC/BA,EAAaC,cACb,MAAMC,EAAQF,EAAaE,MACvBA,GACAvF,KAAKkD,IAAKsC,OAAOC,IAAIF,MAK7B,MAAMG,EAAmB1F,KAAKuD,iBAAkC,wBAChEE,MAAMC,KAAKgC,GAAkBN,SAASO,IAClCA,EAAgBC,gBAAgB,IAIpC,MAAMC,EAAiB7F,KAAKuD,iBAAgC,aAC5DE,MAAMC,KAAKmC,GAAgBT,SAASU,IAChCA,EAAcC,aAAa/F,KAAKkD,IAAK,IAIzC2C,EAAeT,SAASU,IACpBA,EAAcE,eAAehG,KAAKkD,IAAK,IAG3ClD,KAAKwC,iBAAkB,EAGvBxC,KAAKkD,IAAI+C,SAAQ,KAEbjG,KAAKkD,IAAKgD,QAGV1B,OAAO2B,iBAAiB,SAAUnG,KAAKmD,iBAEvCnD,KAAKU,UAAU,IAIvB,oBAAA0F,GACIpG,KAAKqG,iBAGDrG,KAAKkD,MACLlD,KAAKkD,IAAIoD,UACTtG,KAAKkD,IAAM,MAIfsB,OAAO+B,oBAAoB,SAAUvG,KAAKmD,iBAGtCnD,KAAKkC,SAAWlC,KAAKwG,SAASxG,KAAKkC,WACnClC,KAAKyG,YAAYzG,KAAKkC,SACtBlC,KAAKkC,QAAU,MAIvB,eAAAiB,GACQnD,KAAKkD,KACLlD,KAAKkD,IAAIwD,eAIjB,aAAAxB,GACI,MAAMyB,MAAEA,EAAKC,OAAEA,GAAW5G,KAAKkD,IAAKyB,eACpC3E,KAAKyC,QAAU,IAAIoE,EAAMA,OAAC7G,KAAKkD,IAAMyD,EAAOC,GAG5C5G,KAAKiD,iBAAiBF,YAAc/C,KAAK8G,eAAe1D,KAAKpD,MAC7DA,KAAKiD,iBAAiBJ,YAAc7C,KAAK+G,eAAe3D,KAAKpD,MAC7DA,KAAKiD,iBAAiBH,UAAY9C,KAAKgH,aAAa5D,KAAKpD,MAGzD,CAAC,cAAe,cAAe,YAAa,eAAgB,gBAAgBoF,SAAS6B,IACjFjH,KAAKmG,iBAAiB,GAAGc,aAAgB,IAAMjH,KAAKkH,wBAAwBD,KAC5EjH,KAAKmG,iBAAiB,GAAGc,gBAAmB,IAAMjH,KAAKmH,0BAA0BF,IAAM,IAI/F,cAAAZ,GACQrG,KAAKkC,SACLkF,OAAOC,QAAQrH,KAAKiD,kBAAkBmC,SAAQ,EAAE6B,EAAMK,MAC9CA,GACAtH,KAAKkC,QAASqE,oBAAoBU,EAAMK,MAKpDtH,KAAKyC,QAAU,KACfzC,KAAKiD,iBAAmB,CACpBF,YAAa,KACbF,YAAa,KACbC,UAAW,MAInB,cAAAgE,CAAeS,GACX,IAAKvH,KAAKyC,UAAYzC,KAAKkD,IAAK,OAEhC,MAAMsE,EAASxH,KAAKkD,IAAKuE,KAAKC,cAAc,UAC5C,IAAKF,EAAQ,OAEb,MAAMG,EAAa3H,KAAKkC,QAAS0F,wBAC3BC,EAAIN,EAAMO,QAAUH,EAAWI,KAC/BC,EAAIT,EAAMU,QAAUN,EAAWO,IAErClI,KAAKyC,QAAQ0F,QAAQX,EAAQxH,KAAKkD,IAAKkF,OACvC,MAAMC,EAAYrI,KAAKyC,QAAQ6F,aAAaT,EAAGG,GAG/C,IAAIO,EAAiB,KACrB,GAAIF,EAAUG,OAAS,EAAG,CACtB,IAAIC,EAAOJ,EAAU,GAAGI,KACxB,KAAOA,IAASF,GAAgB,CAC5B,MAAMzC,EAAgB9F,KAAK0I,cAAc,mBAAmBD,EAAKvH,UAC7D4E,IACAyC,EAAiBzC,GAErB2C,EAAOA,EAAKE,QAKhB3I,KAAKgD,iBAAmBuF,IACpBvI,KAAKgD,gBAAkBhD,KAAKgD,eAAe4F,aAAa,iBACxD5I,KAAKgD,eAAerC,cAAc,IAAIkI,aAAa,eAAgBtB,IAEnEgB,GAAkBA,EAAeK,aAAa,iBAC9CL,EAAe5H,cAAc,IAAIkI,aAAa,eAAgBtB,KAKtEvH,KAAKgD,eAAiBuF,EAGlBA,GAAkBA,EAAeK,aAAa,gBAC9CL,EAAe5H,cAAc,IAAIkI,aAAa,cAAetB,IAIrE,cAAAR,CAAeQ,GACX,IAAKvH,KAAKyC,UAAYzC,KAAKkD,IAAK,OAEhC,MAAMsE,EAASxH,KAAKkD,IAAKuE,KAAKC,cAAc,UAC5C,IAAKF,EAAQ,OAEb,MAAMG,EAAa3H,KAAKkC,QAAS0F,wBAC3BC,EAAIN,EAAMO,QAAUH,EAAWI,KAC/BC,EAAIT,EAAMU,QAAUN,EAAWO,IAErClI,KAAKyC,QAAQ0F,QAAQX,EAAQxH,KAAKkD,IAAKkF,OACvC,MAAMC,EAAYrI,KAAKyC,QAAQ6F,aAAaT,EAAGG,GAE/C,GAAIK,EAAUG,OAAS,EAAG,CACtB,IAAIC,EAAOJ,EAAU,GAAGI,KACxB,KAAOA,GAAM,CACT,MAAM3C,EAAgB9F,KAAK0I,cAAc,mBAAmBD,EAAKvH,UACjE,GAAI4E,GAAiBA,EAAc8C,aAAa,eAAgB,CAC5D9C,EAAcnF,cAAc,IAAIkI,aAAa,cAAetB,IAC5D,MAEJkB,EAAOA,EAAKE,SAKxB,YAAA3B,CAAaO,GACT,IAAKvH,KAAKyC,UAAYzC,KAAKkD,IAAK,OAEhC,MAAMsE,EAASxH,KAAKkD,IAAKuE,KAAKC,cAAc,UAC5C,IAAKF,EAAQ,OAEb,MAAMG,EAAa3H,KAAKkC,QAAS0F,wBAC3BC,EAAIN,EAAMO,QAAUH,EAAWI,KAC/BC,EAAIT,EAAMU,QAAUN,EAAWO,IAErClI,KAAKyC,QAAQ0F,QAAQX,EAAQxH,KAAKkD,IAAKkF,OACvC,MAAMC,EAAYrI,KAAKyC,QAAQ6F,aAAaT,EAAGG,GAE/C,GAAIK,EAAUG,OAAS,EAAG,CACtB,MAAM1C,EAAgB9F,KAAK0I,cAAc,mBAAmBL,EAAU,GAAGI,KAAKvH,UAC1E4E,GAAiBA,EAAc8C,aAAa,cAC5C9C,EAAcnF,cAAc,IAAIkI,aAAa,YAAatB,KAKtE,uBAAAL,CAAwBD,GACpB,IAAKjH,KAAK0C,qBAAqBuE,IAASjH,KAAKkC,QAAS,CAClDlC,KAAK0C,qBAAqBuE,IAAQ,EAGlC,MAAMK,EAAoB,iBAATL,GAAoC,iBAATA,EACxCjH,KAAKiD,iBAAiBF,YACtB/C,KAAKiD,iBAAiBgE,GAEtBK,GACAtH,KAAKkC,QAAQiE,iBAA0B,iBAATc,GAAoC,iBAATA,EAA0B,cAAgBA,EAAMK,IAKrH,yBAAAH,CAA0BF,GAItB,IAHqBxD,MAAMC,KAAK1D,KAAKuD,iBAAgC,cACpEuF,MAAKC,GAAUA,EAAOH,aAAa3B,MAEfjH,KAAKkC,QAAS,CAC/BlC,KAAK0C,qBAAqBuE,IAAQ,EAElC,MAAMK,EAAoB,iBAATL,GAAoC,iBAATA,EACxCjH,KAAKiD,iBAAiBF,YACtB/C,KAAKiD,iBAAiBgE,GAEtBK,GACAtH,KAAKkC,QAAQqE,oBAA6B,iBAATU,GAAoC,iBAATA,EAA0B,cAAgBA,EAAMK,IASxH,SAAIpD,CAAM8E,GACNhJ,KAAKmC,OAAS6G,EAOlB,SAAI9E,GACA,OAAOlE,KAAKmC,OAOhB,aAAIgC,CAAU6E,GACVhJ,KAAKoC,WAAa4G,EAOtB,aAAI7E,GACA,OAAOnE,KAAKoC,WAOhB,SAAIgC,CAAM4E,GACNhJ,KAAKqC,OAAS2G,EAOlB,SAAI5E,GACA,OAAOpE,KAAKqC,OAQhB,kBAAI4G,GACA,OAAOjJ,KAAKwC,gBAQhB,kBAAI0G,CAAeF,GACfhJ,KAAKuC,gBAAkByG,EACnBhJ,KAAKkD,MACLlD,KAAKkD,IAAIyB,eAAeC,cAAgBoE,EAAQxE,OAAOK,iBAAmB,GAQlF,kBAAIqE,GACA,OAAOlJ,KAAKuC,gBAOhB,WAAI8B,CAAQ2E,GACRhJ,KAAKsC,SAAW0G,EAOpB,WAAI3E,GACA,OAAOrE,KAAKsC,SAGhB,6BAAW6G,GACP,MAAO,CAAC,QAAS,YAAa,QAAS,UAAW,mBAGtD,wBAAAC,CAAyBlI,EAAcmI,EAAmBC,GACtD,OAAQpI,GACJ,IAAK,QACDlB,KAAKkE,MAAqB,UAAboF,EACb,MACJ,IAAK,YACDtJ,KAAKmE,UAAyB,UAAbmF,EACjB,MACJ,IAAK,QACDtJ,KAAKoE,MAAqB,UAAbkF,EACb,MACJ,IAAK,kBACDtJ,KAAKkJ,eAA8B,UAAbI,EACtB,MACJ,IAAK,UACDtJ,KAAKqE,QAAuB,UAAbiF,IAM/BvH,eAAeC,OAAO,SAAUC,GClbzB,MAAMsH,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,KAAKxP,IAAIyP,QACxC,OAAO,IAAIL,EAAKA,MAACG,EAAW,EAsBnBG,EAAarK,IACtB,MAAMkK,EAAalK,EAAMmK,MAAM,KAAKxP,IAAIyP,QACxC,OAAO,IAAIE,EAAIA,KAACJ,EAAW,EASlBK,EAAavK,IACtB,MAAMkK,EAAalK,EAAMmK,MAAM,KAAKxP,IAAIyP,QACxC,OAAO,IAAII,EAAIA,KAACN,EAAW,EASlBO,EAAazK,IACtB,MAAMkK,EAAalK,EAAMmK,MAAM,KAAKxP,IAAIyP,QACxC,OAAO,IAAIM,EAAIA,KAACR,EAAW,EC3D/B,MAAMS,UAAsB/T,EAA5B,WAAAE,uBAIYE,KAAQ4T,UAAG,EAKX5T,KAAK6T,MAAG,WAKR7T,KAAA8T,UAAY,IAAIN,OAKhBxT,KAAA+T,UAAY,IAAIP,OAKhBxT,KAAMgU,OAAG,IAAIR,EAAAA,KAAK,EAAG,EAAG,GAKxBxT,KAAKiU,MAAa,GAKlBjU,KAAUkU,WAAuC,CAAE,EAK3DlU,KAAM+I,OAAkB,KAExB,YAAAhD,CAAa7C,GAETlD,KAAK+I,OAAS,IAAIoL,EAAAA,OAAOnU,KAAKmB,aAAa,SAAWnB,KAAK6T,MAAO3Q,GAElE,MAAMkR,EAAUpU,KAAKmB,aAAa,WAC9BiT,IACApU,KAAK+I,OAAOqL,QAAsB,UAAZA,GAG1B,MAAMC,EAAWrU,KAAKmB,aAAa,YAC/BkT,GACArU,KAAK+I,OAAOuL,iBAAiBf,EAAUc,IAG3C,MAAME,EAAWvU,KAAKmB,aAAa,YAC/BoT,GACAvU,KAAK+I,OAAOyL,oBAAoBjB,EAAUgB,IAG9C,MAAME,EAAQzU,KAAKmB,aAAa,SAC5BsT,GACAzU,KAAK+I,OAAO2L,cAAcnB,EAAUkB,IAGxC,MAAME,EAAO3U,KAAKmB,aAAa,QAC3BwT,GACA3U,KAAK+I,OAAO4L,KAAKlP,IAAIkP,EAAKxB,MAAM,KAAKxP,KAAIiR,GAAOA,EAAIC,UAIlC,CAClB,iBACA,iBACA,gBACA,cACA,iBAGUzP,SAAS0P,IACnB,MAAMxN,EAAUtH,KAAKmB,aAAa2T,GAClC,GAAIxN,EAAS,CACT,MAAMyN,EAAYD,EAAUE,UAAU,GAChCC,EAAgB1N,IAClB,IAEI,IAAI2N,SAAS,QAAS5N,GAAS6N,KAAKnV,KAAMuH,GAC5C,MAAO6N,GACLC,QAAQC,MAAM,0BAA2BF,KAGjDpV,KAAKmG,iBAAiB4O,EAAWE,OAK7C,cAAAjP,CAAe9C,GACX,IAAKlD,KAAK+I,OAAQ,OAElB,MAAMtI,EAAgBT,KAAKS,eACvBA,aAAa,EAAbA,EAAesI,QACftI,EAAcsI,OAAOwM,SAASvV,KAAK+I,QAEnC7F,EAAIuE,KAAK8N,SAASvV,KAAK+I,QAG3B/I,KAAKU,WAGT,iBAAA2C,GAEI,MAAMhD,EAAaL,KAAKK,WACxB,GAAKA,GAGDA,EAAW4I,eAAgB,CAC3B,MAAM/F,EAAM7C,EAAW6C,IAEvBlD,KAAK+F,aAAa7C,GAClBlD,KAAKgG,eAAe9C,GAGpB,MAAMsS,EAAgBxV,KAAKuD,iBAAgC,aAC3DiS,EAAcpQ,SAASqQ,IACnBA,EAAM1P,aAAa7C,EAAI,IAE3BsS,EAAcpQ,SAASqQ,IACnBA,EAAMzP,eAAe9C,EAAI,KAKrC,oBAAAkD,GACI,GAAIpG,KAAK+I,OAAQ,CAEI/I,KAAKuD,iBAAiB,aAC9B6B,SAASqQ,IACbA,EAAwB1M,OAAS,IAAI,IAI1C/I,KAAK+I,OAAOzC,UACZtG,KAAK+I,OAAS,MAQtB,WAAIqL,CAAQpL,GACRhJ,KAAK4T,SAAW5K,EACZhJ,KAAK+I,SACL/I,KAAK+I,OAAOqL,QAAUpL,GAQ9B,WAAIoL,GACA,OAAOpU,KAAK4T,SAOhB,QAAI1S,CAAK8H,GACLhJ,KAAK6T,MAAQ7K,EACThJ,KAAK+I,SACL/I,KAAK+I,OAAO7H,KAAO8H,GAQ3B,QAAI9H,GACA,OAAOlB,KAAK6T,MAOhB,YAAIQ,CAASrL,GACThJ,KAAK8T,UAAY9K,EACbhJ,KAAK+I,QACL/I,KAAK+I,OAAOuL,iBAAiBtU,KAAK8T,WAQ1C,YAAIO,GACA,OAAOrU,KAAK8T,UAOhB,YAAIS,CAASvL,GACThJ,KAAK+T,UAAY/K,EACbhJ,KAAK+I,QACL/I,KAAK+I,OAAOyL,oBAAoBxU,KAAK+T,WAQ7C,YAAIQ,GACA,OAAOvU,KAAK+T,UAOhB,SAAIU,CAAMzL,GACNhJ,KAAKgU,OAAShL,EACVhJ,KAAK+I,QACL/I,KAAK+I,OAAO2L,cAAc1U,KAAKgU,QAQvC,SAAIS,GACA,OAAOzU,KAAKgU,OAOhB,QAAIW,CAAK3L,GACLhJ,KAAKiU,MAAQjL,EACThJ,KAAK+I,SACL/I,KAAK+I,OAAO4L,KAAKe,QACjB1V,KAAK+I,OAAO4L,KAAKlP,IAAIzF,KAAKiU,QAQlC,QAAIU,GACA,OAAO3U,KAAKiU,MAGhB,6BAAW9K,GACP,MAAO,CACH,UACA,OACA,WACA,WACA,QACA,OACA,iBACA,iBACA,gBACA,cACA,iBAIR,wBAAAC,CAAyBlI,EAAcmI,EAAmBC,GACtD,OAAQpI,GACJ,IAAK,UACDlB,KAAKoU,QAAuB,UAAb9K,EACf,MACJ,IAAK,OACDtJ,KAAKkB,KAAOoI,EACZ,MACJ,IAAK,WACDtJ,KAAKqU,SAAWd,EAAUjK,GAC1B,MACJ,IAAK,WACDtJ,KAAKuU,SAAWhB,EAAUjK,GAC1B,MACJ,IAAK,QACDtJ,KAAKyU,MAAQlB,EAAUjK,GACvB,MACJ,IAAK,OACDtJ,KAAK2U,KAAOrL,EAAS6J,MAAM,KAAKxP,KAAIiR,GAAOA,EAAIC,SAC/C,MACJ,IAAK,iBACL,IAAK,iBACL,IAAK,gBACL,IAAK,cACL,IAAK,gBACD,GAAIvL,EAAU,CACV,MAAMwL,EAAY5T,EAAK8T,UAAU,GAE3B1N,EAAWC,IACb,IACI,MAAMoO,EAAa3V,KAAKmB,aAAa2T,IAAc,GAEnD,IAAII,SAAS,QAASS,GAAYR,KAAKnV,KAAMuH,GAC/C,MAAO6N,GACLC,QAAQC,MAAM,0BAA2BF,KAGjDpV,KAAKmG,iBAAiB2O,EAAWxN,KAMjD,gBAAAnB,CAAiBc,EAAc2O,EAAyBC,GAC/C7V,KAAKkU,WAAWjN,KACjBjH,KAAKkU,WAAWjN,GAAQ,IAE5BjH,KAAKkU,WAAWjN,GAAM6O,KAAKF,GAC3B7V,MAAMoG,iBAAiBc,EAAM2O,EAAUC,GACnC5O,EAAKgM,WAAW,YAChBjT,KAAKW,cAAc,IAAIC,YAAY,GAAGqG,YAAgB,CAAE8O,SAAS,KAIzE,mBAAAxP,CAAoBU,EAAc2O,EAAyBC,GACnD7V,KAAKkU,WAAWjN,KAChBjH,KAAKkU,WAAWjN,GAAQjH,KAAKkU,WAAWjN,GAAM+O,QAAOC,GAAKA,IAAML,KAEpE7V,MAAMwG,oBAAoBU,EAAM2O,EAAUC,GACtC5O,EAAKgM,WAAW,YAChBjT,KAAKW,cAAc,IAAIC,YAAY,GAAGqG,eAAmB,CAAE8O,SAAS,KAI5E,YAAAnN,CAAa3B,SACT,OAAOiP,QAA6B,QAArB5V,EAAAN,KAAKkU,WAAWjN,UAAK,IAAA3G,OAAA,EAAAA,EAAEkI,SAI9CzG,eAAeC,OAAO,YAAa2R,GClWnC,MAAMwC,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,UAAqBxW,YAA3B,WAAAC,uBACYE,KAAQsW,UAAY,EAK5BtW,KAAKuF,MAAiB,KAEtB,oBAAAa,GACIpG,KAAKuW,eAGT,WAAAjR,SACI,MAAMkR,EAAKxW,KAAKmB,aAAa,OAAS,GAChCsV,EAAMzW,KAAKmB,aAAa,QAAU,GACxC,IAAI8F,EAAOjH,KAAKmB,aAAa,QAG7B,IAAK8F,EAAM,CACP,MAAMyP,EAAMD,EAAItD,MAAM,KAAKwD,MAC3B1P,EAAmC,QAA5B3G,EAAA6V,EAAUS,IAAIF,GAAO,WAAO,IAAApW,EAAAA,EAAA,KAGlC2G,GAKLjH,KAAKuF,MAAQ,IAAIsR,QAAML,EAAIvP,EAAM,CAAE6P,IAAKL,IACxCzW,KAAKuF,MAAMU,QAAUjG,KAAKiG,SALtBoP,QAAQ0B,KAAK,2BAA2BN,KAQhD,YAAAF,GACQvW,KAAKuF,QACLvF,KAAKuF,MAAMyR,SACXhX,KAAKuF,MAAQ,MAQrB,WAAIU,CAAQ+C,GACRhJ,KAAKsW,SAAWtN,EACZhJ,KAAKuF,QACLvF,KAAKuF,MAAMU,QAAU+C,GAQ7B,WAAI/C,GACA,OAAOjG,KAAKsW,SAGhB,UAAOM,CAAIJ,GACP,MAAMnR,EAAexB,SAAS6E,cAA4B,gBAAgB8N,OAC1E,OAAOnR,eAAAA,EAAcE,MAGzB,6BAAW4D,GACP,MAAO,CAAC,WAGZ,wBAAAC,CAAyBlI,EAAcmI,EAAmB4N,GACzC,YAAT/V,IACAlB,KAAKiG,QAAUjG,KAAKkX,aAAa,aAK7CnV,eAAeC,OAAO,WAAYqU,GC5FlC,MAAMc,UAAyBvX,EAa3B,WAAAE,CAAYsX,GACRrX,QAXIC,KAAQ4T,UAAG,EAEX5T,KAAUqX,WAAqB,KAWnCrX,KAAKsX,eAAiBF,EAI1B,uBAAAG,GACI,MAAO,CAAE,EAGb,kBAAMC,GACF,MAAM1R,EAAgB9F,KAAKS,cAC3B,GAAIqF,EAAe,OACTA,EAAcjF,QAEpB,MAAM4W,EAAOzX,KAAKuX,0BAClBvX,KAAKqX,WAAavR,EAAciD,OAAQyO,aAAaxX,KAAKsX,eAAgBG,IAIlF,aAAAC,IAEA,uBAAMrU,eACqB,UAAjBrD,KAAKK,kBAAY,IAAAC,OAAA,EAAAA,EAAAO,eACjBb,KAAKwX,eACXxX,KAAK0X,gBACL1X,KAAKU,WAGT,oBAAA0F,GAEQpG,KAAK2X,WAAa3X,KAAK2X,UAAU5O,SACjC/I,KAAKqX,WAAYtO,OAAO6O,gBAAgB5X,KAAKsX,gBAC7CtX,KAAKqX,WAAa,MAI1B,aAAIM,GACA,OAAO3X,KAAKqX,WAOhB,WAAIjD,CAAQpL,GACRhJ,KAAK4T,SAAW5K,EACZhJ,KAAK2X,YACL3X,KAAK2X,UAAUvD,QAAUpL,GAQjC,WAAIoL,GACA,OAAOpU,KAAK4T,SAGhB,6BAAWzK,GACP,MAAO,CAAC,WAGZ,wBAAAC,CAAyBlI,EAAcmI,EAAmBC,GACtD,GACS,YADDpI,EAEAlB,KAAKoU,QAAuB,UAAb9K,GC/E/B,MAAMuO,UAAiCV,EAEnC,WAAArX,GACIC,MAAM,iBAOV,aAAI4X,GACA,OAAO5X,MAAM4X,WAIrB5V,eAAeC,OAAO,cAAe6V,GCrBrC,MAAMC,EAAW,IAAI1B,IAAI,CACrB,CAAC,OAAQ2B,EAAAA,cACT,CAAC,SAAUC,EAAAA,gBACX,CAAC,SAAUC,EAAAA,gBACX,CAAC,OAAQC,EAAAA,cACT,CAAC,OAAQC,EAAAA,cACT,CAAC,QAASC,EAAAA,eACV,CAAC,UAAWC,EAAeA,mBAU/B,MAAMC,UAA+BnB,EAoCjC,WAAArX,GACIC,MAAM,UApCFC,KAAAuY,YAAc,IAAIxF,EAAKA,MAAC,IAAM,IAAM,IAAM,GAE1C/S,KAAiBwY,mBAAG,EAEpBxY,KAAiByY,mBAAG,EAEpBzY,KAAmB0Y,qBAAG,EAEtB1Y,KAAU2Y,YAAG,EAEb3Y,KAAQ4Y,SAAG,IAEX5Y,KAAU6Y,YAAG,EAEb7Y,KAAI8Y,KAAG,GAEP9Y,KAAe+Y,iBAAG,EAElB/Y,KAAMgZ,OAAoB,OAE1BhZ,KAASiZ,UAAG,GAEZjZ,KAAakZ,eAAG,EAEhBlZ,KAAYmZ,aAAG,GAEfnZ,KAASoZ,UAAG,EAEZpZ,KAAAqZ,MAAQ,IAAI3F,EAAIA,KAAC,EAAG,EAAG,EAAG,GAE1B1T,KAAAsZ,aAAe,IAAI5F,EAAIA,KAAC,EAAG,EAAG,EAAG,GAEjC1T,KAAQuZ,SAAyE,OAOzF,uBAAAhC,GACI,MAAO,CACHiC,WAAYxZ,KAAKuY,YACjBkB,iBAAkBzZ,KAAKwY,kBACvBkB,iBAAkB1Z,KAAKyY,kBACvBkB,mBAAoB3Z,KAAK0Y,oBACzBkB,UAAW5Z,KAAK2Y,WAChBkB,QAAS7Z,KAAK4Y,SACdkB,UAAW9Z,KAAK6Y,WAChBkB,IAAK/Z,KAAK8Y,KACVkB,eAAgBha,KAAK+Y,gBACrBkB,gBAAiC,SAAhBja,KAAKgZ,OAAoBkB,EAAUA,WAAGC,EAAUA,WACjEC,SAAUpa,KAAKiZ,UACfoB,aAAcra,KAAKkZ,cACnBoB,YAAata,KAAKmZ,aAClBoB,SAAUva,KAAKoZ,UACfoB,KAAMxa,KAAKqZ,MACXoB,YAAaza,KAAKsZ,aAClBoB,YAAa5C,EAASlB,IAAI5W,KAAKuZ,WAIvC,eAAIoB,SACA,MAAMC,EAA4B,QAAhBta,EAAAN,KAAK2X,iBAAW,IAAArX,OAAA,EAAAA,EAAAua,OAAO3X,IAAI4X,GAC7C,OAAOF,GAAaA,EAAUG,WAAaH,EAAUI,YAAYC,EAAAA,WAGrE,OAAAC,CAAQjU,EAAuCkU,GACvCnb,KAAK2X,WAAa3X,KAAK2a,aACvB3a,KAAK2X,UAAUuD,QAAQjU,EAAMkU,EAAO,CAChCC,SAAWC,IACHA,GAAKhG,QAAQC,MAAM,uCAAuC+F,EAAIC,UAAU,IAM5F,KAAAC,GACQvb,KAAK2X,WACL3X,KAAK2X,UAAU4D,QAQvB,aAAI5D,GACA,OAAO5X,MAAM4X,UAOjB,cAAI6B,CAAWxQ,GACXhJ,KAAKuY,YAAcvP,EACfhJ,KAAK2X,YACL3X,KAAK2X,UAAU6B,WAAaxQ,GAQpC,cAAIwQ,GACA,OAAOxZ,KAAKuY,YAOhB,oBAAIkB,CAAiBzQ,GACjBhJ,KAAKwY,kBAAoBxP,EACrBhJ,KAAK2X,YACL3X,KAAK2X,UAAU8B,iBAAmBzQ,GAQ1C,oBAAIyQ,GACA,OAAOzZ,KAAKwY,kBAOhB,oBAAIkB,CAAiB1Q,GACjBhJ,KAAKyY,kBAAoBzP,EACrBhJ,KAAK2X,YACL3X,KAAK2X,UAAU+B,iBAAmB1Q,GAQ1C,oBAAI0Q,GACA,OAAO1Z,KAAKyY,kBAOhB,sBAAIkB,CAAmB3Q,GACnBhJ,KAAK0Y,oBAAsB1P,EACvBhJ,KAAK2X,YACL3X,KAAK2X,UAAUgC,mBAAqB3Q,GAQ5C,sBAAI2Q,GACA,OAAO3Z,KAAK0Y,oBAOhB,aAAIkB,CAAU5Q,GACVhJ,KAAK2Y,WAAa3P,EACdhJ,KAAK2X,YACL3X,KAAK2X,UAAUiC,UAAY5Q,GAQnC,aAAI4Q,GACA,OAAO5Z,KAAK2Y,WAOhB,WAAIkB,CAAQ7Q,GACRhJ,KAAK4Y,SAAW5P,EACZhJ,KAAK2X,YACL3X,KAAK2X,UAAUkC,QAAU7Q,GAQjC,WAAI6Q,GACA,OAAO7Z,KAAK4Y,SAOhB,aAAIkB,CAAU9Q,GACVhJ,KAAK6Y,WAAa7P,EACdhJ,KAAK2X,YACL3X,KAAK2X,UAAUmC,UAAY9Q,GAQnC,aAAI8Q,GACA,OAAO9Z,KAAK6Y,WAOhB,OAAIkB,CAAI/Q,GACJhJ,KAAK8Y,KAAO9P,EACRhJ,KAAK2X,YACL3X,KAAK2X,UAAUoC,IAAM/Q,GAQ7B,OAAI+Q,GACA,OAAO/Z,KAAK8Y,KAOhB,kBAAIkB,CAAehR,GACfhJ,KAAK+Y,gBAAkB/P,EACnBhJ,KAAK2X,YACL3X,KAAK2X,UAAUqC,eAAiBhR,GAQxC,kBAAIgR,GACA,OAAOha,KAAK+Y,gBAOhB,SAAIyC,CAAMxS,GACNhJ,KAAKgZ,OAAShQ,EACVhJ,KAAK2X,YACL3X,KAAK2X,UAAUsC,gBAA4B,SAAVjR,EAAmBkR,EAAUA,WAAGC,EAAUA,YAQnF,SAAIqB,GACA,OAAOxb,KAAKgZ,OAOhB,YAAIoB,CAASpR,GACThJ,KAAKiZ,UAAYjQ,EACbhJ,KAAK2X,YACL3X,KAAK2X,UAAUyC,SAAWpR,GAQlC,YAAIoR,GACA,OAAOpa,KAAKiZ,UAOhB,gBAAIoB,CAAarR,GACbhJ,KAAKkZ,cAAgBlQ,EACjBhJ,KAAK2X,YACL3X,KAAK2X,UAAU8D,WAAazS,EAAQ0S,EAAuBA,wBAAGC,EAAsBA,wBAQ5F,gBAAItB,GACA,OAAOra,KAAKkZ,cAOhB,eAAIoB,CAAYtR,GACZhJ,KAAKmZ,aAAenQ,EAChBhJ,KAAK2X,YACL3X,KAAK2X,UAAU2C,YAActR,GAQrC,eAAIsR,GACA,OAAOta,KAAKmZ,aAOhB,YAAIoB,CAASvR,GACThJ,KAAKoZ,UAAYpQ,EACbhJ,KAAK2X,YACL3X,KAAK2X,UAAU4C,SAAWvR,GAQlC,YAAIuR,GACA,OAAOva,KAAKoZ,UAOhB,QAAIoB,CAAKxR,GACLhJ,KAAKqZ,MAAQrQ,EACThJ,KAAK2X,YACL3X,KAAK2X,UAAU6C,KAAOxR,GAQ9B,QAAIwR,GACA,OAAOxa,KAAKqZ,MAOhB,eAAIoB,CAAYzR,GACZhJ,KAAKsZ,aAAetQ,EAChBhJ,KAAK2X,YACL3X,KAAK2X,UAAU8C,YAAczR,GAQrC,eAAIyR,GACA,OAAOza,KAAKsZ,aAOhB,WAAIsC,CAAQ5S,SACRhJ,KAAKuZ,SAAWvQ,EACZhJ,KAAK2X,YACL3X,KAAK2X,UAAU+C,YAAiC,QAAnBpa,EAAAwX,EAASlB,IAAI5N,UAAM,IAAA1I,EAAAA,EAAIyX,EAAYA,cAQxE,WAAI6D,GACA,OAAO5b,KAAKuZ,SAGhB,6BAAWpQ,GACP,MAAO,IACApJ,MAAMoJ,mBACT,cACA,qBACA,qBACA,uBACA,aACA,WACA,aACA,MACA,kBACA,QACA,YACA,eACA,eACA,WACA,OACA,eACA,WAIR,wBAAAC,CAAyBlI,EAAcmI,EAAmBC,GAGtD,OAFAvJ,MAAMqJ,yBAAyBlI,EAAMmI,EAAWC,GAExCpI,GACJ,IAAK,cACDlB,KAAKwZ,WAAa5G,EAAWtJ,GAC7B,MACJ,IAAK,qBACDtJ,KAAKyZ,iBAAgC,UAAbnQ,EACxB,MACJ,IAAK,qBACDtJ,KAAK0Z,iBAAgC,UAAbpQ,EACxB,MACJ,IAAK,uBACDtJ,KAAK2Z,mBAAkC,UAAbrQ,EAC1B,MACJ,IAAK,aACDtJ,KAAK4Z,UAAyB,UAAbtQ,EACjB,MACJ,IAAK,WACDtJ,KAAK6Z,QAAUgC,WAAWvS,GAC1B,MACJ,IAAK,aACDtJ,KAAK8Z,UAAyB,SAAbxQ,EACjB,MACJ,IAAK,MACDtJ,KAAK+Z,IAAM8B,WAAWvS,GACtB,MACJ,IAAK,kBACDtJ,KAAKga,eAA8B,UAAb1Q,EACtB,MACJ,IAAK,QACDtJ,KAAKwb,MAAQlS,EACb,MACJ,IAAK,YACDtJ,KAAKoa,SAAWyB,WAAWvS,GAC3B,MACJ,IAAK,eACDtJ,KAAKqa,aAAera,KAAKkX,aAAa,gBACtC,MACJ,IAAK,eACDlX,KAAKsa,YAAcuB,WAAWvS,GAC9B,MACJ,IAAK,WACDtJ,KAAKua,SAAWsB,WAAWvS,GAC3B,MACJ,IAAK,OACDtJ,KAAKwa,KAAO/G,EAAUnK,GACtB,MACJ,IAAK,eACDtJ,KAAKya,YAAchH,EAAUnK,GAC7B,MACJ,IAAK,UACDtJ,KAAK4b,QAAUtS,IAM/BvH,eAAeC,OAAO,YAAasW,GC1fnC,MAAMwD,UAAkC3E,EAkBpC,WAAArX,GACIC,MAAM,aAlBFC,KAAA+b,eAAuB,IAAIC,OAE3Bhc,KAAKic,MAAW,EAEhBjc,KAAWkc,aAAY,EAEvBlc,KAAYmc,aAAS,IAAI3I,EAAAA,KAAK,GAAK,GAAK,IAExCxT,KAAOoc,QAAW,EAElBpc,KAAAqc,cAAsB,IAAI7I,OAE1BxT,KAAOsc,QAAW,GAElBtc,KAAKuc,MAAW,MAOxB,uBAAAhF,GACI,MAAO,CACHiF,KAAMxc,KAAKic,MACXQ,cAAezc,KAAK+b,eACpBW,WAAY1c,KAAKkc,YACjBS,YAAa3c,KAAKmc,aAClBvV,OAAQ5G,KAAKoc,QACbQ,aAAc5c,KAAKqc,cACnBQ,OAAQ7c,KAAKsc,QACbrV,KAAMjH,KAAKuc,OAQnB,aAAI5E,GACA,OAAO5X,MAAM4X,UAGjB,iBAAI8E,CAAczT,GACdhJ,KAAK+b,eAAiB/S,EAClBhJ,KAAK2X,YACL3X,KAAK2X,UAAU8E,cAAgBzT,GAIvC,iBAAIyT,GACA,OAAOzc,KAAK+b,eAGhB,QAAIS,CAAKxT,GACLhJ,KAAKic,MAAQjT,EACThJ,KAAK2X,YACL3X,KAAK2X,UAAU6E,KAAOxT,GAI9B,QAAIwT,GACA,OAAOxc,KAAKic,MAGhB,cAAIS,CAAW1T,GACXhJ,KAAKkc,YAAclT,EACfhJ,KAAK2X,YACL3X,KAAK2X,UAAU+E,WAAa1T,GAIpC,cAAI0T,GACA,OAAO1c,KAAKkc,YAGhB,eAAIS,CAAY3T,GACZhJ,KAAKmc,aAAenT,EAChBhJ,KAAK2X,YACL3X,KAAK2X,UAAUgF,YAAc3T,GAIrC,eAAI2T,GACA,OAAO3c,KAAKmc,aAGhB,UAAIvV,CAAOoC,GACPhJ,KAAKoc,QAAUpT,EACXhJ,KAAK2X,YACL3X,KAAK2X,UAAU/Q,OAASoC,GAIhC,UAAIpC,GACA,OAAO5G,KAAKoc,QAGhB,gBAAIQ,CAAa5T,GACbhJ,KAAKqc,cAAgBrT,EACjBhJ,KAAK2X,YACL3X,KAAK2X,UAAUiF,aAAe5T,GAItC,gBAAI4T,GACA,OAAO5c,KAAKqc,cAGhB,UAAIQ,CAAO7T,GACPhJ,KAAKsc,QAAUtT,EACXhJ,KAAK2X,YACL3X,KAAK2X,UAAUkF,OAAS7T,GAIhC,UAAI6T,GACA,OAAO7c,KAAKsc,QAGhB,QAAIrV,CAAK+B,GACLhJ,KAAKuc,MAAQvT,EACThJ,KAAK2X,YACL3X,KAAK2X,UAAU1Q,KAAO+B,GAI9B,QAAI/B,GACA,OAAOjH,KAAKuc,MAGhB,6BAAWpT,GACP,MAAO,IAAIpJ,MAAMoJ,mBAAoB,iBAAkB,OAAQ,cAAe,eAAgB,SAAU,gBAAiB,SAAU,QAGvI,wBAAAC,CAAyBlI,EAAcmI,EAAmBC,GAGtD,OAFAvJ,MAAMqJ,yBAAyBlI,EAAMmI,EAAWC,GAExCpI,GACJ,IAAK,iBACDlB,KAAKyc,cNxHI,CAACzT,IACtB,MAAOnB,EAAGG,EAAG8U,GAAK9T,EAAMmK,MAAM,KAAKxP,IAAIyP,QACjC2J,EAAI,IAAIf,OAEd,OADAe,EAAEC,mBAAmBnV,EAAGG,EAAG8U,GACpBC,CAAC,EMoHyBE,CAAU3T,GAC/B,MACJ,IAAK,OACDtJ,KAAKwc,KAAOU,SAAS5T,EAAU,IAC/B,MACJ,IAAK,cACDtJ,KAAK0c,WAAa1c,KAAKkX,aAAa,eACpC,MACJ,IAAK,eACDlX,KAAK2c,YAAcpJ,EAAUjK,GAC7B,MACJ,IAAK,SACDtJ,KAAK4G,OAASiV,WAAWvS,GACzB,MACJ,IAAK,gBACDtJ,KAAK4c,aAAerJ,EAAUjK,GAC9B,MACJ,IAAK,SACDtJ,KAAK6c,OAAShB,WAAWvS,GACzB,MACJ,IAAK,OACDtJ,KAAKiH,KAAOqC,IAM5BvH,eAAeC,OAAO,eAAgB8Z,GCtKtC,MAAMqB,UAAgChG,EAwBlC,WAAArX,GACIC,MAAM,WAxBFC,KAAAod,QAAgB,IAAI1J,EAAIA,KAAC,GAAK,GAAK,GAAK,IAExC1T,KAAMqd,OAAW,GAEjBrd,KAAUsd,YAAY,EAEtBtd,KAAAud,OAAgB,IAAIxK,EAAKA,MAAC,EAAG,EAAG,EAAG,GAEnC/S,KAASwd,UAAW,GAEpBxd,KAAWyd,YAAW,GAEtBzd,KAAM0d,OAAS,IAAIpK,OAAK,GAAK,IAE7BtT,KAAK2d,MAAW,GAEhB3d,KAAKuc,MAA+B,QAEpCvc,KAAM4d,OAAW,EAEjB5d,KAAU6d,YAAY,EAO9B,aAAAnG,GACI1X,KAAK2X,UAAWgG,MAAMG,UAAUC,QAAS,EAG7C,uBAAAxG,GACI,MAAO,CACHyG,OAAQhe,KAAKod,QACba,UAAWje,KAAKsd,WAChBY,MAAOle,KAAKud,OACZY,UAAW9H,EAAaO,IAAI5W,KAAKqd,QAAS7G,GAC1C4H,SAAUpe,KAAKwd,UACfa,WAAYre,KAAKyd,YACjBa,MAAOte,KAAK0d,OACZzW,KAAMjH,KAAKuc,MACXgC,KAAMve,KAAK2d,MACXhX,MAAO3G,KAAK4d,OACZY,UAAWxe,KAAK6d,YAQxB,aAAIlG,GACA,OAAO5X,MAAM4X,UAGjB,UAAIqG,CAAOhV,GACPhJ,KAAKod,QAAUpU,EACXhJ,KAAK2X,YACL3X,KAAK2X,UAAUqG,OAAShV,GAIhC,UAAIgV,GACA,OAAOhe,KAAKod,QAGhB,SAAI7X,CAAMyD,GACNhJ,KAAKqd,OAASrU,EACd,MAAMzD,EAAQ8Q,EAAaO,IAAI5N,GAC3BhJ,KAAK2X,WAAapS,IAClBvF,KAAK2X,UAAUwG,UAAY5Y,EAAMiR,IAIzC,SAAIjR,GACA,OAAOvF,KAAKqd,OAGhB,aAAIY,CAAUjV,GACVhJ,KAAKsd,WAAatU,EACdhJ,KAAK2X,YACL3X,KAAK2X,UAAUsG,UAAYjV,GAInC,aAAIiV,GACA,OAAOje,KAAKsd,WAGhB,SAAIY,CAAMlV,GACNhJ,KAAKud,OAASvU,EACVhJ,KAAK2X,YACL3X,KAAK2X,UAAUuG,MAAQlV,GAI/B,SAAIkV,GACA,OAAOle,KAAKud,OAGhB,YAAIa,CAASpV,GACThJ,KAAKwd,UAAYxU,EACbhJ,KAAK2X,YACL3X,KAAK2X,UAAUyG,SAAWpV,GAIlC,YAAIoV,GACA,OAAOpe,KAAKwd,UAGhB,cAAIa,CAAWrV,GACXhJ,KAAKyd,YAAczU,EACfhJ,KAAK2X,YACL3X,KAAK2X,UAAU0G,WAAarV,GAIpC,cAAIqV,GACA,OAAOre,KAAKyd,YAGhB,SAAIa,CAAMtV,GACNhJ,KAAK0d,OAAS1U,EACVhJ,KAAK2X,YACL3X,KAAK2X,UAAU2G,MAAQtV,GAI/B,SAAIsV,GACA,OAAOte,KAAK0d,OAGhB,QAAIa,CAAKvV,GACLhJ,KAAK2d,MAAQ3U,EACThJ,KAAK2X,YACL3X,KAAK2X,UAAU4G,KAAOvV,GAI9B,QAAIuV,GACA,OAAOve,KAAK2d,MAOhB,QAAI1W,CAAK+B,GACLhJ,KAAKuc,MAAQvT,EACThJ,KAAK2X,YACL3X,KAAK2X,UAAU1Q,KAAO+B,GAQ9B,QAAI/B,GACA,OAAOjH,KAAKuc,MAGhB,SAAI5V,CAAMqC,GACNhJ,KAAK4d,OAAS5U,EACVhJ,KAAK2X,YACL3X,KAAK2X,UAAUhR,MAAQqC,GAI/B,SAAIrC,GACA,OAAO3G,KAAK4d,OAGhB,aAAIY,CAAUxV,GACVhJ,KAAK6d,WAAa7U,EACdhJ,KAAK2X,YACL3X,KAAK2X,UAAU6G,UAAYxV,GAInC,aAAIwV,GACA,OAAOxe,KAAK6d,WAGhB,6BAAW1U,GACP,MAAO,IACApJ,MAAMoJ,mBACT,SACA,QACA,aACA,QACA,YACA,cACA,QACA,OACA,OACA,QACA,cAIR,wBAAAC,CAAyBlI,EAAcmI,EAAmBC,GAGtD,OAFAvJ,MAAMqJ,yBAAyBlI,EAAMmI,EAAWC,GAExCpI,GACJ,IAAK,SACDlB,KAAKge,OAASvK,EAAUnK,GACxB,MACJ,IAAK,QACDtJ,KAAKuF,MAAQ+D,EACb,MACJ,IAAK,aACDtJ,KAAKie,UAAyB,UAAb3U,EACjB,MACJ,IAAK,QACDtJ,KAAKke,MAAQtL,EAAWtJ,GACxB,MACJ,IAAK,YACDtJ,KAAKoe,SAAWhL,OAAO9J,GACvB,MACJ,IAAK,cACDtJ,KAAKqe,WAAajL,OAAO9J,GACzB,MACJ,IAAK,QACDtJ,KAAKse,MAAQjL,EAAU/J,GACvB,MACJ,IAAK,OACDtJ,KAAKue,KAAOjV,EACZ,MACJ,IAAK,OACDtJ,KAAKiH,KAAOqC,EACZ,MACJ,IAAK,QACDtJ,KAAK2G,MAAQyM,OAAO9J,GACpB,MACJ,IAAK,aACDtJ,KAAKwe,UAAYxe,KAAKkX,aAAahW,KAMnDa,eAAeC,OAAO,aAAcmb,GCrPpC,MAAMsB,UAA+BtH,EAIjC,WAAArX,GACIC,MAAM,UAJFC,KAAMqd,OAAW,GAOzB,uBAAA9F,GACI,MAAO,CACHhS,MAAO8Q,EAAaO,IAAI5W,KAAKqd,SAQrC,aAAI1F,GACA,OAAO5X,MAAM4X,UAGjB,SAAIpS,CAAMyD,GACNhJ,KAAKqd,OAASrU,EACd,MAAMzD,EAAQ8Q,EAAaO,IAAI5N,GAC3BhJ,KAAK2X,WAAapS,IAClBvF,KAAK2X,UAAUpS,MAAQA,GAI/B,SAAIA,GACA,OAAOvF,KAAKqd,OAGhB,6BAAWlU,GACP,MAAO,IAAIpJ,MAAMoJ,mBAAoB,SAGzC,wBAAAC,CAAyBlI,EAAcmI,EAAmBC,GAGtD,GAFAvJ,MAAMqJ,yBAAyBlI,EAAMmI,EAAWC,GAGvC,UADDpI,EAEAlB,KAAKuF,MAAQ+D,GAM7BvH,eAAeC,OAAO,WAAYyc,GCxDlC,MAAMC,EAAc,IAAItI,IAAI,CACxB,CAAC,WAAYuI,EAAAA,iBACb,CAAC,WAAYC,EAAAA,iBACb,CAAC,WAAYC,EAAAA,iBACb,CAAC,WAAYC,EAAAA,iBACb,CAAC,WAAYC,EAAAA,iBACb,CAAC,WAAYC,EAAAA,iBACb,CAAC,UAAWC,EAAAA,gBACZ,CAAC,UAAWC,EAAAA,gBACZ,CAAC,WAAYC,EAAeA,mBAUhC,MAAMC,UAA8BjI,EA8BhC,WAAArX,GACIC,MAAM,SA9BFC,KAAYqf,cAAG,EAEfrf,KAAMud,OAAG,IAAIxK,EAAAA,MAAM,EAAG,EAAG,GAEzB/S,KAAesf,gBAAG,GAElBtf,KAAUuf,WAAG,EAEbvf,KAAiBwf,kBAAG,IAEpBxf,KAAeyf,gBAAG,GAElBzf,KAAM0f,OAAG,GAET1f,KAAW2f,YAAG,GAEd3f,KAAe4f,gBAAG,GAElB5f,KAAgB6f,iBAAG,EAEnB7f,KAAiB8f,kBAAG,KAEpB9f,KAAW+f,YAAqH,WAEhI/f,KAAKuc,MAAG,cAERvc,KAAQggB,SAAG,IAOnB,uBAAAzI,GACI,MAAO,CACH0I,YAAajgB,KAAKqf,aAClBnB,MAAOle,KAAKud,OACZ2C,eAAgBlgB,KAAKsf,gBACrBa,UAAWngB,KAAKuf,WAChBa,iBAAkBpgB,KAAKwf,kBACvBa,eAAgBrgB,KAAKyf,gBACrBa,MAAOtgB,KAAK0f,OACZa,WAAYvgB,KAAK2f,YACjBa,eAAgBxgB,KAAK4f,gBACrBa,gBAAiBzgB,KAAK6f,iBACtBa,iBAAkB1gB,KAAK8f,kBACvBa,WAAYjC,EAAY9H,IAAI5W,KAAK+f,aACjC9Y,KAAMjH,KAAKuc,MACXqE,QAAS5gB,KAAKggB,UAQtB,aAAIrI,GACA,OAAO5X,MAAM4X,UAOjB,eAAIsI,CAAYjX,GACZhJ,KAAKqf,aAAerW,EAChBhJ,KAAK2X,YACL3X,KAAK2X,UAAUsI,YAAcjX,GAQrC,eAAIiX,GACA,OAAOjgB,KAAKqf,aAOhB,SAAInB,CAAMlV,GACNhJ,KAAKud,OAASvU,EACVhJ,KAAK2X,YACL3X,KAAK2X,UAAUuG,MAAQlV,GAQ/B,SAAIkV,GACA,OAAOle,KAAKud,OAOhB,kBAAI2C,CAAelX,GACfhJ,KAAKsf,gBAAkBtW,EACnBhJ,KAAK2X,YACL3X,KAAK2X,UAAUuI,eAAiBlX,GAQxC,kBAAIkX,GACA,OAAOlgB,KAAKsf,gBAOhB,aAAIa,CAAUnX,GACVhJ,KAAKuf,WAAavW,EACdhJ,KAAK2X,YACL3X,KAAK2X,UAAUwI,UAAYnX,GAQnC,aAAImX,GACA,OAAOngB,KAAKuf,WAOhB,oBAAIa,CAAiBpX,GACjBhJ,KAAKwf,kBAAoBxW,EACrBhJ,KAAK2X,YACL3X,KAAK2X,UAAUyI,iBAAmBpX,GAQ1C,oBAAIoX,GACA,OAAOpgB,KAAKwf,kBAOhB,kBAAIa,CAAerX,GACfhJ,KAAKyf,gBAAkBzW,EACnBhJ,KAAK2X,YACL3X,KAAK2X,UAAU0I,eAAiBrX,GAQxC,kBAAIqX,GACA,OAAOrgB,KAAKyf,gBAOhB,SAAIa,CAAMtX,GACNhJ,KAAK0f,OAAS1W,EACVhJ,KAAK2X,YACL3X,KAAK2X,UAAU2I,MAAQtX,GAQ/B,SAAIsX,GACA,OAAOtgB,KAAK0f,OAOhB,cAAIa,CAAWvX,GACXhJ,KAAK2f,YAAc3W,EACfhJ,KAAK2X,YACL3X,KAAK2X,UAAU4I,WAAavX,GAQpC,cAAIuX,GACA,OAAOvgB,KAAK2f,YAOhB,kBAAIa,CAAexX,GACfhJ,KAAK4f,gBAAkB5W,EACnBhJ,KAAK2X,YACL3X,KAAK2X,UAAU6I,eAAiBxX,GAQxC,kBAAIwX,GACA,OAAOxgB,KAAK4f,gBAOhB,mBAAIa,CAAgBzX,GAChBhJ,KAAK6f,iBAAmB7W,EACpBhJ,KAAK2X,YACL3X,KAAK2X,UAAU8I,gBAAkBzX,GAQzC,mBAAIyX,GACA,OAAOzgB,KAAK6f,iBAOhB,oBAAIa,CAAiB1X,GACjBhJ,KAAK8f,kBAAoB9W,EACrBhJ,KAAK2X,YACL3X,KAAK2X,UAAU+I,iBAAmB1X,GAQ1C,oBAAI0X,GACA,OAAO1gB,KAAK8f,kBAiBhB,cAAIa,CAAW3X,SACXhJ,KAAK+f,YAAc/W,EACfhJ,KAAK2X,YACL3X,KAAK2X,UAAUgJ,WAAmC,QAAtBrgB,EAAAoe,EAAY9H,IAAI5N,UAAM,IAAA1I,EAAAA,EAAIwe,EAAeA,iBAQ7E,cAAI6B,GACA,OAAO3gB,KAAK+f,YAOhB,QAAI9Y,CAAK+B,GACA,CAAC,cAAe,OAAQ,QAAQ6X,SAAS7X,IAK9ChJ,KAAKuc,MAAQvT,EACThJ,KAAK2X,YACL3X,KAAK2X,UAAU1Q,KAAO+B,IANtBqM,QAAQ0B,KAAK,uBAAuB/N,2BAA+BhJ,KAAKuc,WAchF,QAAItV,GACA,OAAOjH,KAAKuc,MAOhB,WAAIqE,CAAQ5X,GACRhJ,KAAKggB,SAAWhX,EACZhJ,KAAK2X,YACL3X,KAAK2X,UAAUiJ,QAAU5X,GAQjC,WAAI4X,GACA,OAAO5gB,KAAKggB,SAGhB,6BAAW7W,GACP,MAAO,IACApJ,MAAMoJ,mBACT,QACA,eACA,YACA,mBACA,qBACA,mBACA,QACA,cACA,kBACA,mBACA,oBACA,cACA,OACA,YAIR,wBAAAC,CAAyBlI,EAAcmI,EAAmBC,GAGtD,OAFAvJ,MAAMqJ,yBAAyBlI,EAAMmI,EAAWC,GAExCpI,GACJ,IAAK,QACDlB,KAAKke,MAAQtL,EAAWtJ,GACxB,MACJ,IAAK,eACDtJ,KAAKigB,YAAcjgB,KAAKkX,aAAa,gBACrC,MACJ,IAAK,mBACDlX,KAAKkgB,eAAiB9M,OAAO9J,GAC7B,MACJ,IAAK,YACDtJ,KAAKmgB,UAAY/M,OAAO9J,GACxB,MACJ,IAAK,qBACDtJ,KAAKogB,iBAAmBhN,OAAO9J,GAC/B,MACJ,IAAK,mBACDtJ,KAAKqgB,eAAiBjN,OAAO9J,GAC7B,MACJ,IAAK,QACDtJ,KAAKsgB,MAAQlN,OAAO9J,GACpB,MACJ,IAAK,cACDtJ,KAAKugB,WAAanN,OAAO9J,GACzB,MACJ,IAAK,kBACDtJ,KAAKwgB,eAAiBpN,OAAO9J,GAC7B,MACJ,IAAK,oBACDtJ,KAAK0gB,iBAAmBtN,OAAO9J,GAC/B,MACJ,IAAK,mBACDtJ,KAAKygB,gBAAkBrN,OAAO9J,GAC9B,MACJ,IAAK,cACDtJ,KAAK2gB,WAAarX,EAClB,MACJ,IAAK,OACDtJ,KAAKiH,KAAOqC,EACZ,MACJ,IAAK,WACDtJ,KAAK4gB,QAAUxN,OAAO9J,KAMtCvH,eAAeC,OAAO,WAAYod,GC1alC,MAAM0B,UAAwBjhB,YAA9B,WAAAC,uBACYE,KAAQ+gB,SAAG,IAAIhO,EAAAA,MAAM,EAAG,EAAG,GAE3B/S,KAAWghB,YAAG,GAEdhhB,KAAaihB,cAAG,GAEhBjhB,KAAUkhB,WAAG,GAEblhB,KAAamhB,cAAG,GAExBnhB,KAAQohB,SAA4B,KAEpC,cAAAxb,GACI5F,KAAKohB,SAAW,IAAIC,mBACpBrhB,KAAKohB,SAASE,aAAc,EAC5BthB,KAAKohB,SAASG,cAAe,EAC7BvhB,KAAKohB,SAASI,QAAUxhB,KAAK+gB,SAC7B/gB,KAAKyhB,WAAazhB,KAAKghB,YACvBhhB,KAAK0hB,aAAe1hB,KAAKihB,cACzBjhB,KAAK2hB,UAAY3hB,KAAKkhB,WACtBlhB,KAAK4hB,aAAe5hB,KAAKmhB,cACzBnhB,KAAKohB,SAASS,SAGlB,oBAAAzb,GACQpG,KAAKohB,WACLphB,KAAKohB,SAAS9a,UACdtG,KAAKohB,SAAW,MAIxB,MAAAU,CAAOne,EAAaoe,GAChB,GAAI/hB,KAAKohB,SAAU,CACf,MAAM7b,EAAQ8Q,EAAaO,IAAIjT,GAC3B4B,IACIA,EAAMyc,QACNhiB,KAAKohB,SAASW,GAAYxc,EAAM0c,SAChCjiB,KAAKohB,SAASW,GAAWG,WAAa,GAEtC3c,EAAM4c,KAAK,QAAQ,KACfniB,KAAKohB,SAAUW,GAAYxc,EAAM0c,SACjCjiB,KAAKohB,SAAUW,GAAWG,WAAa,EACvCliB,KAAKohB,SAAUS,QAAQ,MAO3C,WAAIL,CAAQxY,GACRhJ,KAAK+gB,SAAW/X,EACZhJ,KAAKohB,WACLphB,KAAKohB,SAASI,QAAUxY,GAIhC,WAAIwY,GACA,OAAOxhB,KAAK+gB,SAGhB,cAAIU,CAAWzY,GACXhJ,KAAKghB,YAAchY,EACnBhJ,KAAK8hB,OAAO9Y,EAAO,cAGvB,cAAIyY,GACA,OAAOzhB,KAAKghB,YAGhB,gBAAIU,CAAa1Y,GACbhJ,KAAKihB,cAAgBjY,EACrBhJ,KAAK8hB,OAAO9Y,EAAO,gBAGvB,gBAAI0Y,GACA,OAAO1hB,KAAKihB,cAGhB,aAAIU,CAAU3Y,GACVhJ,KAAKkhB,WAAalY,EAClBhJ,KAAK8hB,OAAO9Y,EAAO,aAGvB,aAAI2Y,GACA,OAAO3hB,KAAKkhB,WAGhB,gBAAIU,CAAa5Y,GACbhJ,KAAKmhB,cAAgBnY,EACrBhJ,KAAK8hB,OAAO9Y,EAAO,YAGvB,gBAAI4Y,GACA,OAAO5hB,KAAKmhB,cAGhB,UAAOvK,CAAIJ,GACP,MAAM7Q,EAAkB9B,SAAS6E,cAA+B,mBAAmB8N,OACnF,OAAO7Q,eAAAA,EAAiByb,SAG5B,6BAAWjY,GACP,MAAO,CAAC,UAAW,cAAe,gBAAiB,aAAc,iBAGrE,wBAAAC,CAAyBlI,EAAcmI,EAAmBC,GACtD,OAAQpI,GACJ,IAAK,UACDlB,KAAKwhB,QAAU5O,EAAWtJ,GAC1B,MACJ,IAAK,cACDtJ,KAAKyhB,WAAanY,EAClB,MACJ,IAAK,gBACDtJ,KAAK0hB,aAAepY,EACpB,MACJ,IAAK,aACDtJ,KAAK2hB,UAAYrY,EACjB,MACJ,IAAK,gBACDtJ,KAAK4hB,aAAetY,IAMpCvH,eAAeC,OAAO,cAAe8e,GC7HrC,MAAMsB,UAA+BjL,EAUjC,WAAArX,GACIC,MAAM,UAVFC,KAAYqf,cAAG,EAEfrf,KAAS8d,UAAW,GAEpB9d,KAAeqiB,iBAAG,EAElBriB,KAAKuc,MAA2E,QAOxF,uBAAAhF,GACI,MAAO,CACHtQ,KAAMjH,KAAKuc,MACX0D,YAAajgB,KAAKqf,aAClB+B,SAAUN,EAAgBlK,IAAI5W,KAAK8d,WACnCwE,eAAgBtiB,KAAKqiB,iBAQ7B,aAAI1K,GACA,OAAO5X,MAAM4X,UAOjB,QAAI1Q,CAAK+B,GACLhJ,KAAKuc,MAAQvT,EACThJ,KAAK2X,YACL3X,KAAK2X,UAAU1Q,KAAO+B,GAQ9B,QAAI/B,GACA,OAAOjH,KAAKuc,MAOhB,eAAI0D,CAAYjX,GACZhJ,KAAKqf,aAAerW,EAChBhJ,KAAK2X,YACL3X,KAAK2X,UAAUsI,YAAcjX,GAQrC,eAAIiX,GACA,OAAOjgB,KAAKqf,aAOhB,YAAI+B,CAASpY,GACThJ,KAAK8d,UAAY9U,EACbhJ,KAAK2X,YACL3X,KAAK2X,UAAUyJ,SAAWN,EAAgBlK,IAAI5N,IAQtD,YAAIoY,GACA,OAAOphB,KAAK8d,UAOhB,kBAAIwE,CAAetZ,GACfhJ,KAAKqiB,gBAAkBrZ,EACnBhJ,KAAK2X,YACL3X,KAAK2X,UAAU2K,eAAiBtZ,GAQxC,kBAAIsZ,GACA,OAAOtiB,KAAKqiB,gBAGhB,6BAAWlZ,GACP,MAAO,IAAIpJ,MAAMoJ,mBAAoB,eAAgB,WAAY,kBAAmB,QAGxF,wBAAAC,CAAyBlI,EAAcmI,EAAmBC,GAGtD,OAFAvJ,MAAMqJ,yBAAyBlI,EAAMmI,EAAWC,GAExCpI,GACJ,IAAK,eACDlB,KAAKigB,YAA2B,UAAb3W,EACnB,MACJ,IAAK,WACDtJ,KAAKohB,SAAW9X,EAChB,MACJ,IAAK,kBACDtJ,KAAKsiB,eAA8B,UAAbhZ,EACtB,MACJ,IAAK,OACDtJ,KAAKiH,KAAOqC,IAM5BvH,eAAeC,OAAO,YAAaogB,GCnInC,MAAMG,UAAkCpL,EA+CpC,WAAArX,GACIC,MAAM,aA5CFC,KAAewiB,gBAAW,EAK1BxiB,KAAcyiB,eAAS,IAAIjP,EAAAA,KAAK,EAAG,EAAG,GAKtCxT,KAAS0iB,UAAW,GAKpB1iB,KAAc2iB,eAAW,EAKzB3iB,KAAa4iB,cAAS,IAAIpP,EAAAA,KAAK,EAAG,EAAG,GAKrCxT,KAAK6iB,MAAW,EAKhB7iB,KAAY8iB,aAAW,EAKvB9iB,KAAgB+iB,iBAAW,EAK3B/iB,KAAKuc,MAAW,SAOxB,uBAAAhF,GACI,MAAO,CACHyL,eAAgBhjB,KAAKwiB,gBACrBS,cAAejjB,KAAKyiB,eACpBS,SAAUljB,KAAK0iB,UACfS,cAAenjB,KAAK2iB,eACpBS,aAAcpjB,KAAK4iB,cACnBS,KAAMrjB,KAAK6iB,MACXS,YAAatjB,KAAK8iB,aAClBS,gBAAiBvjB,KAAK+iB,iBACtB9b,KAAMjH,KAAKuc,OAQnB,aAAI5E,GACA,OAAO5X,MAAM4X,UAGjB,kBAAIqL,CAAeha,GACfhJ,KAAKwiB,gBAAkBxZ,EACnBhJ,KAAK2X,YACL3X,KAAK2X,UAAUqL,eAAiBha,GAIxC,kBAAIga,GACA,OAAOhjB,KAAKwiB,gBAGhB,iBAAIS,CAAcja,GACdhJ,KAAKyiB,eAAiBzZ,EAClBhJ,KAAK2X,YACL3X,KAAK2X,UAAUsL,cAAgBja,GAIvC,iBAAIia,GACA,OAAOjjB,KAAKyiB,eAGhB,YAAIS,CAASla,GACThJ,KAAK0iB,UAAY1Z,EACbhJ,KAAK2X,YACL3X,KAAK2X,UAAUuL,SAAWla,GAIlC,YAAIka,GACA,OAAOljB,KAAK0iB,UAGhB,iBAAIS,CAAcna,GACdhJ,KAAK2iB,eAAiB3Z,EAClBhJ,KAAK2X,YACL3X,KAAK2X,UAAUwL,cAAgBna,GAIvC,iBAAIma,GACA,OAAOnjB,KAAK2iB,eAGhB,gBAAIS,CAAapa,GACbhJ,KAAK4iB,cAAgB5Z,EACjBhJ,KAAK2X,YACL3X,KAAK2X,UAAUyL,aAAepa,GAItC,gBAAIoa,GACA,OAAOpjB,KAAK4iB,cAGhB,QAAIS,CAAKra,GACLhJ,KAAK6iB,MAAQ7Z,EACThJ,KAAK2X,YACL3X,KAAK2X,UAAU0L,KAAOra,GAI9B,QAAIqa,GACA,OAAOrjB,KAAK6iB,MAGhB,eAAIS,CAAYta,GACZhJ,KAAK8iB,aAAe9Z,EAChBhJ,KAAK2X,YACL3X,KAAK2X,UAAU2L,YAActa,GAIrC,eAAIsa,GACA,OAAOtjB,KAAK8iB,aAGhB,mBAAIS,CAAgBva,GAChBhJ,KAAK+iB,iBAAmB/Z,EACpBhJ,KAAK2X,YACL3X,KAAK2X,UAAU4L,gBAAkBva,GAIzC,mBAAIua,GACA,OAAOvjB,KAAK+iB,iBAGhB,QAAI9b,CAAK+B,GACLhJ,KAAKuc,MAAQvT,EACThJ,KAAK2X,YACL3X,KAAK2X,UAAU1Q,KAAO+B,GAI9B,QAAI/B,GACA,OAAOjH,KAAKuc,MAGhB,6BAAWpT,GACP,MAAO,IAAIpJ,MAAMoJ,mBAAoB,kBAAmB,iBAAkB,WAAY,iBAAkB,gBAAiB,OAAQ,cAAe,mBAAoB,QAGxK,wBAAAC,CAAyBlI,EAAcmI,EAAmBC,GAGtD,OAFAvJ,MAAMqJ,yBAAyBlI,EAAMmI,EAAWC,GAExCpI,GACJ,IAAK,kBACDlB,KAAKgjB,eAAiBnH,WAAWvS,GACjC,MACJ,IAAK,iBACDtJ,KAAKijB,cAAgB1P,EAAUjK,GAC/B,MACJ,IAAK,WACDtJ,KAAKkjB,SAAWrH,WAAWvS,GAC3B,MACJ,IAAK,iBACDtJ,KAAKmjB,cAAgBtH,WAAWvS,GAChC,MACJ,IAAK,gBACDtJ,KAAKojB,aAAe7P,EAAUjK,GAC9B,MACJ,IAAK,OACDtJ,KAAKqjB,KAAOxH,WAAWvS,GACvB,MACJ,IAAK,cACDtJ,KAAKsjB,YAAczH,WAAWvS,GAC9B,MACJ,IAAK,mBACDtJ,KAAKujB,gBAAkB1H,WAAWvS,GAClC,MACJ,IAAK,OACDtJ,KAAKiH,KAAOqC,IAM5BvH,eAAeC,OAAO,eAAgBugB,GCnNtC,MAAMiB,UAA+BrM,EAcjC,WAAArX,GACIC,MAAM,UAdFC,KAAYyjB,cAAG,EAEfzjB,KAAW0jB,YAAS,IAAIpQ,OAAK,IAAK,KAElCtT,KAAoB2jB,qBAAS,IAAIrQ,OAAK,IAAK,KAE3CtT,KAASoZ,UAAG,EAEZpZ,KAAM4jB,QAAG,EAET5jB,KAAW6jB,YAAG,GAOtB,uBAAAtM,GACI,MAAO,CACHgD,SAAUva,KAAKoZ,UACf0K,oBAAqB9jB,KAAK2jB,qBAC1BI,WAAY/jB,KAAK0jB,YACjBM,WAAYhkB,KAAK6jB,YACjBI,UAAWjkB,KAAK4jB,OAASM,EAAAA,gBAAkBC,EAAcA,eACzDC,YAAapkB,KAAKyjB,cAQ1B,aAAI9L,GACA,OAAO5X,MAAM4X,UAGjB,YAAI4C,CAASvR,GACThJ,KAAKoZ,UAAYpQ,EACbhJ,KAAK2X,YACL3X,KAAK2X,UAAU4C,SAAWva,KAAKoZ,WAIvC,YAAImB,GACA,OAAOva,KAAKoZ,UAGhB,uBAAI0K,CAAoB9a,GACpBhJ,KAAK2jB,qBAAuB3a,EACxBhJ,KAAK2X,YACL3X,KAAK2X,UAAUmM,oBAAsB9jB,KAAK2jB,sBAIlD,uBAAIG,GACA,OAAO9jB,KAAK2jB,qBAGhB,cAAII,CAAW/a,GACXhJ,KAAK0jB,YAAc1a,EACfhJ,KAAK2X,YACL3X,KAAK2X,UAAUoM,WAAa/jB,KAAK0jB,aAIzC,cAAIK,GACA,OAAO/jB,KAAK0jB,YAGhB,cAAIM,CAAWhb,GACXhJ,KAAK6jB,YAAc7a,EACfhJ,KAAK2X,YACL3X,KAAK2X,UAAUqM,WAAahkB,KAAK6jB,aAIzC,cAAIG,GACA,OAAOhkB,KAAK6jB,YAGhB,SAAIQ,CAAMrb,GACNhJ,KAAK4jB,OAAS5a,EACVhJ,KAAK2X,YACL3X,KAAK2X,UAAUsM,UAAYjkB,KAAK4jB,OAASM,EAAeA,gBAAGC,EAAcA,gBAIjF,SAAIE,GACA,OAAOrkB,KAAK4jB,OAGhB,eAAIQ,CAAYpb,GACZhJ,KAAKyjB,aAAeza,EAChBhJ,KAAK2X,YACL3X,KAAK2X,UAAUyM,YAAcpkB,KAAKyjB,cAI1C,eAAIW,GACA,OAAOpkB,KAAKyjB,aAGhB,6BAAWta,GACP,MAAO,IACApJ,MAAMoJ,mBACT,QACA,eACA,aACA,uBACA,WACA,eAIR,wBAAAC,CAAyBlI,EAAcmI,EAAmBC,GAGtD,OAFAvJ,MAAMqJ,yBAAyBlI,EAAMmI,EAAWC,GAExCpI,GACJ,IAAK,WACDlB,KAAKua,SAAW2C,SAAS5T,EAAU,IACnC,MACJ,IAAK,uBACDtJ,KAAK8jB,oBAAsBzQ,EAAU/J,GACrC,MACJ,IAAK,aACDtJ,KAAK+jB,WAAa1Q,EAAU/J,GAC5B,MACJ,IAAK,cACDtJ,KAAKgkB,WAAanI,WAAWvS,GAC7B,MACJ,IAAK,QACDtJ,KAAKqkB,MAAQrkB,KAAKkX,aAAa,SAC/B,MACJ,IAAK,eACDlX,KAAKokB,YAAcpkB,KAAKkX,aAAa,kBAMrDnV,eAAeC,OAAO,YAAawhB,GC3HnC,MAAMc,UAA+BnN,EAIjC,WAAArX,GACIC,MAAM,UAGNC,KAAKukB,SAAW,IAAIC,iBAAiBxkB,KAAKykB,gBAAgBrhB,KAAKpD,OAC/DA,KAAKukB,SAASG,QAAQ1kB,KAAM,CACxB2kB,WAAW,IAIf3kB,KAAKmG,iBAAiB,yBAA0BnG,KAAK4kB,6BAA6BxhB,KAAKpD,OACvFA,KAAKmG,iBAAiB,qBAAsBnG,KAAK6kB,yBAAyBzhB,KAAKpD,OAGnF,aAAA0X,GAEI1X,KAAKuD,iBAAgC,sBAAsB6B,SAAS0f,IAChE,MAAMC,EAAaD,EAAc3jB,aAAa,QACxC6jB,EAAaF,EAAc3jB,aAAa,cAC1C4jB,GACA/kB,KAAKilB,aAAaF,EAAYC,MAKlC,eAAAE,CAAgBC,EAAaH,GACjC,IACI,MAAMI,EAAmBJ,EAAaK,KAAKC,MAAMN,GAAc,CAAE,EAE3DO,EAAa,CAACC,EAAaC,EAAazc,KAE1C,GAAqB,iBAAVA,GAAsBA,EAAMiK,WAAW,UAAW,CACzD,MAAMyS,EAAU1c,EAAM2c,MAAM,GACtBtgB,EAAexB,SAAS6E,cAAc,YAAYgd,KACxD,GAAIrgB,EAEA,YADAmgB,EAAOC,GAAOpgB,EAAaE,OAMnC,GAAIyD,GAA0B,iBAAVA,GAAsBvF,MAAMmiB,QAAQ5c,GAAQ,CAE5D,GAAIA,EAAMR,OAAS,GAAyB,iBAAbQ,EAAM,GAQjC,YAPAwc,EAAOC,GAAOzc,EAAMrF,KAAKkiB,IACrB,MAAMC,EAAM,CAAE,EACd,IAAK,MAAMC,KAAWF,EAClBN,EAAWO,EAAKC,EAASF,EAAKE,IAElC,OAAOD,CAAG,KAMlB,GAAqB,IAAjB9c,EAAMR,QAAoC,iBAAbQ,EAAM,GAEnC,YADAwc,EAAOC,GAAO,IAAInS,EAAIA,KAACtK,EAAM,GAAIA,EAAM,KAG3C,GAAqB,IAAjBA,EAAMR,QAAoC,iBAAbQ,EAAM,GAEnC,YADAwc,EAAOC,GAAO,IAAIjS,EAAAA,KAAKxK,EAAM,GAAIA,EAAM,GAAIA,EAAM,KAGrD,GAAqB,IAAjBA,EAAMR,QAAoC,iBAAbQ,EAAM,GAEnC,YADAwc,EAAOC,GAAO,IAAI/R,EAAAA,KAAK1K,EAAM,GAAIA,EAAM,GAAIA,EAAM,GAAIA,EAAM,KAMnE,GAAIA,GAA0B,iBAAVA,IAAuBvF,MAAMmiB,QAAQ5c,GAAQ,CACxDwc,EAAOC,IAA+B,iBAAhBD,EAAOC,KAC9BD,EAAOC,GAAO,CAAE,GAEpB,IAAK,MAAMO,KAAahd,EACpBuc,EAAWC,EAAOC,GAAMO,EAAWhd,EAAMgd,SAG7CR,EAAOC,GAAOzc,GAItB,IAAK,MAAMyc,KAAOL,EACdG,EAAWJ,EAAQM,EAAKL,EAAiBK,IAE/C,MAAOnQ,GACLD,QAAQC,MAAM,wCAAwC0P,KAAe1P,IAIrE,4BAAAsP,CAA6Brd,GACjC,MACMwd,EADgBxd,EAAMie,OACKrkB,aAAa,QAC9C,IAAK4jB,IAAe/kB,KAAK2X,UAAW,OAEpC,MAAMwN,EAASnlB,KAAK2X,UAAUf,IAAImO,GAC9BI,GACAnlB,KAAKklB,gBAAgBC,EAAQ5d,EAAM0e,OAAOjB,YAI1C,wBAAAH,CAAyBtd,GAC7B,MACMwd,EADgBxd,EAAMie,OACKrkB,aAAa,QAC9C,IAAK4jB,IAAe/kB,KAAK2X,UAAW,OAEpC,MAAMwN,EAASnlB,KAAK2X,UAAUf,IAAImO,GAC9BI,IACAA,EAAO/Q,QAAU7M,EAAM0e,OAAO7R,SAI9B,YAAA6Q,CAAa/jB,EAAc8jB,GAC/B,OAAKhlB,KAAK2X,WAEV3X,KAAK2X,UAAUuO,GAAG,UAAUhlB,KAASikB,IACjCnlB,KAAKklB,gBAAgBC,EAAQH,EAAW,IAErChlB,KAAK2X,UAAUwO,OAAOjlB,IALD,KAQxB,aAAAklB,CAAcllB,GACblB,KAAK2X,WACV3X,KAAK2X,UAAUrR,QAAQpF,GAGnB,eAAAujB,CAAgB4B,GACpB,IAAK,MAAMC,KAAYD,EAEnBC,EAASC,WAAWnhB,SAASqD,IACzB,GAAIA,aAAgB5I,aAA8C,cAA/B4I,EAAK+d,QAAQ1T,cAA+B,CAC3E,MAAMiS,EAAatc,EAAKtH,aAAa,QAC/B6jB,EAAavc,EAAKtH,aAAa,cACjC4jB,GACA/kB,KAAKilB,aAAaF,EAAYC,OAM1CsB,EAASG,aAAarhB,SAASqD,IAC3B,GAAIA,aAAgB5I,aAA8C,cAA/B4I,EAAK+d,QAAQ1T,cAA+B,CAC3E,MAAMiS,EAAatc,EAAKtH,aAAa,QACjC4jB,GACA/kB,KAAKomB,cAAcrB,OAOvC,oBAAA3e,SACIpG,KAAKukB,SAASmC,aACY,QAA1BpmB,EAAAP,MAAMqG,4BAAoB,IAAA9F,GAAAA,EAAA6U,KAAAnV,MAO9B,aAAI2X,GACA,OAAO5X,MAAM4X,WAIrB5V,eAAeC,OAAO,aAAcsiB,GClMpC,MAAMqC,UAAsB9mB,YAA5B,WAAAC,uBACYE,KAAW4mB,YAAW,KAEtB5mB,KAAQ4T,UAAY,EAEpB5T,KAAK6T,MAAW,GAMxB,oBAAIgT,CAAiB7d,GACjBhJ,KAAK4mB,YAAc5d,EACnBhJ,KAAKW,cAAc,IAAIC,YAAY,yBAA0B,CACzDqlB,OAAQ,CAAEjB,WAAYhc,GACtB+M,SAAS,KAQjB,oBAAI8Q,GACA,OAAO7mB,KAAK4mB,YAOhB,WAAIxS,CAAQpL,GACRhJ,KAAK4T,SAAW5K,EAChBhJ,KAAKW,cAAc,IAAIC,YAAY,qBAAsB,CACrDqlB,OAAQ,CAAE7R,QAASpL,GACnB+M,SAAS,KAQjB,WAAI3B,GACA,OAAOpU,KAAK4T,SAOhB,QAAI1S,CAAK8H,GACLhJ,KAAK6T,MAAQ7K,EAOjB,QAAI9H,GACA,OAAOlB,KAAK6T,MAGhB,6BAAW1K,GACP,MAAO,CAAC,aAAc,UAAW,QAGrC,wBAAAC,CAAyBlI,EAAcmI,EAAmBC,GACtD,OAAQpI,GACJ,IAAK,aACDlB,KAAK6mB,iBAAmBvd,EACxB,MACJ,IAAK,UACDtJ,KAAKoU,QAAuB,UAAb9K,EACf,MACJ,IAAK,OACDtJ,KAAKkB,KAAOoI,IAM5BvH,eAAeC,OAAO,YAAa2kB,GC5EnC,MAAMG,UAA8B3P,EAgBhC,WAAArX,GACIC,MAAM,SAhBFC,KAAc+mB,eAAyC,SAEvD/mB,KAAYgnB,aAAW,IAEvBhnB,KAAMinB,OAAW,EAEjBjnB,KAAWknB,aAAY,EAEvBlnB,KAAYmnB,aAAW,EAEvBnnB,KAAconB,eAAW,EAEzBpnB,KAAOqnB,QAAW,EAO1B,uBAAA9P,GACI,MAAO,CACH+P,cAAetnB,KAAK+mB,eACpBQ,YAAavnB,KAAKgnB,aAClBQ,MAAOxnB,KAAKinB,OACZQ,WAAYznB,KAAKknB,YACjBQ,YAAa1nB,KAAKmnB,aAClBQ,cAAe3nB,KAAKonB,eACpBQ,OAAQ5nB,KAAKqnB,SAQrB,aAAI1P,GACA,OAAO5X,MAAM4X,UAOjB,iBAAI2P,CAActe,GACdhJ,KAAK+mB,eAAiB/d,EAClBhJ,KAAK2X,YACL3X,KAAK2X,UAAU2P,cAAgBte,GAQvC,iBAAIse,GACA,OAAOtnB,KAAK+mB,eAOhB,eAAIQ,CAAYve,GACZhJ,KAAKgnB,aAAehe,EAChBhJ,KAAK2X,YACL3X,KAAK2X,UAAU4P,YAAcve,GAQrC,eAAIue,GACA,OAAOvnB,KAAKgnB,aAOhB,SAAIQ,CAAMxe,GACNhJ,KAAKinB,OAASje,EACVhJ,KAAK2X,YACL3X,KAAK2X,UAAU6P,MAAQxe,GAQ/B,SAAIwe,GACA,OAAOxnB,KAAKinB,OAOhB,cAAIQ,CAAWze,GACXhJ,KAAKknB,YAAcle,EACfhJ,KAAK2X,YACL3X,KAAK2X,UAAU8P,WAAaze,GAQpC,cAAIye,GACA,OAAOznB,KAAKknB,YAOhB,eAAIQ,CAAY1e,GACZhJ,KAAKmnB,aAAene,EAChBhJ,KAAK2X,YACL3X,KAAK2X,UAAU+P,YAAc1e,GAQrC,eAAI0e,GACA,OAAO1nB,KAAKmnB,aAOhB,iBAAIQ,CAAc3e,GACdhJ,KAAKonB,eAAiBpe,EAClBhJ,KAAK2X,YACL3X,KAAK2X,UAAUgQ,cAAgB3e,GAQvC,iBAAI2e,GACA,OAAO3nB,KAAKonB,eAOhB,UAAIQ,CAAO5e,GACPhJ,KAAKqnB,QAAUre,EACXhJ,KAAK2X,YACL3X,KAAK2X,UAAUiQ,OAAS5e,GAQhC,UAAI4e,GACA,OAAO5nB,KAAKqnB,QAGhB,6BAAWle,GACP,MAAO,IACApJ,MAAMoJ,mBACT,iBACA,eACA,QACA,aACA,eACA,kBACA,UAIR,wBAAAC,CAAyBlI,EAAcmI,EAAmBC,GAGtD,OAFAvJ,MAAMqJ,yBAAyBlI,EAAMmI,EAAWC,GAExCpI,GACJ,IAAK,iBACDlB,KAAKsnB,cAAgBhe,EACrB,MACJ,IAAK,eACDtJ,KAAKunB,YAAc1L,WAAWvS,GAC9B,MACJ,IAAK,QACDtJ,KAAKwnB,MAAQ3L,WAAWvS,GACxB,MACJ,IAAK,aACDtJ,KAAKynB,WAAaznB,KAAKkX,aAAa,cACpC,MACJ,IAAK,eACDlX,KAAK0nB,YAAc7L,WAAWvS,GAC9B,MACJ,IAAK,kBACDtJ,KAAK2nB,cAAgB9L,WAAWvS,GAChC,MACJ,IAAK,SACDtJ,KAAK4nB,OAAS/L,WAAWvS,KAMzCvH,eAAeC,OAAO,YAAa8kB,GCvNnC,MAAMe,UAAyBjoB,EAA/B,WAAAE,uBACYE,KAAMqd,OAAW,GAEjBrd,KAAS8nB,WAAY,EAErB9nB,KAAS+nB,UAAkB,KAE3B/nB,KAAKgoB,OAAY,EAEjBhoB,KAAK6T,MAAW,GAEhB7T,KAAQioB,UAAY,EAEpBjoB,KAAMinB,OAAW,EAEjBjnB,KAAUkoB,WAAW,EAErBloB,KAAOqnB,QAAW,EAK1BrnB,KAASmoB,UAAqB,KAE9B,uBAAM9kB,eACuB,UAAnBrD,KAAKooB,oBAAc,IAAA9nB,OAAA,EAAAA,EAAAO,SAEzB,MAAMgV,EAAU,CACZwS,SAAUroB,KAAK8nB,UACfQ,KAAMtoB,KAAKgoB,MACXO,QAASvoB,KAAKioB,SACdT,MAAOxnB,KAAKinB,OACZuB,UAAWxoB,KAAKkoB,WAChBN,OAAQ5nB,KAAKqnB,SAEbrnB,KAAK+nB,YACLlS,EAAQ4S,SAAWzoB,KAAK+nB,WAG5B/nB,KAAKmoB,UAAYnoB,KAAKooB,aAAczQ,UAAW+Q,QAAQ1oB,KAAK6T,MAAOgC,GACnE7V,KAAKuF,MAAQvF,KAAKqd,OAClBrd,KAAKmoB,UAAWQ,OAEhB3oB,KAAKU,WAGT,oBAAA0F,GACIpG,KAAKooB,aAAczQ,UAAWiR,WAAW5oB,KAAK6T,OAGlD,gBAAcuU,GACV,MAAMA,EAAepoB,KAAKO,cAE1B,OAAM6nB,aAAwBtB,EAKvBsB,GAJH/S,QAAQ0B,KAAK,8DACN,MAUf,SAAIxR,CAAMyD,SAEN,GADAhJ,KAAKqd,OAASrU,EACVhJ,KAAKmoB,UAAW,CAChB,MAAM3R,EAA8B,QAAzBlW,EAAA+V,EAAaO,IAAI5N,UAAQ,IAAA1I,OAAA,EAAAA,EAAAkW,GAChCA,IACAxW,KAAKmoB,UAAU5iB,MAAQiR,IASnC,SAAIjR,GACA,OAAOvF,KAAKqd,OAOhB,YAAIgL,CAASrf,GACThJ,KAAK8nB,UAAY9e,EACbhJ,KAAKmoB,YACLnoB,KAAKmoB,UAAUE,SAAWrf,GAQlC,YAAIqf,GACA,OAAOroB,KAAK8nB,UAOhB,YAAIW,CAASzf,GACThJ,KAAK+nB,UAAY/e,EACbhJ,KAAKmoB,YACLnoB,KAAKmoB,UAAUM,SAAWzf,GAQlC,YAAIyf,GACA,OAAOzoB,KAAK+nB,UAOhB,QAAIO,CAAKtf,GACLhJ,KAAKgoB,MAAQhf,EACThJ,KAAKmoB,YACLnoB,KAAKmoB,UAAUG,KAAOtf,GAQ9B,QAAIsf,GACA,OAAOtoB,KAAKgoB,MAOhB,QAAI9mB,CAAK8H,GACLhJ,KAAK6T,MAAQ7K,EACThJ,KAAKmoB,YACLnoB,KAAKmoB,UAAUjnB,KAAO8H,GAQ9B,QAAI9H,GACA,OAAOlB,KAAK6T,MAOhB,WAAI0U,CAAQvf,GACRhJ,KAAKioB,SAAWjf,EACZhJ,KAAKmoB,YACLnoB,KAAKmoB,UAAUI,QAAUvf,GAQjC,WAAIuf,GACA,OAAOvoB,KAAKioB,SAOhB,SAAIT,CAAMxe,GACNhJ,KAAKinB,OAASje,EACVhJ,KAAKmoB,YACLnoB,KAAKmoB,UAAUX,MAAQxe,GAQ/B,SAAIwe,GACA,OAAOxnB,KAAKinB,OAOhB,aAAIuB,CAAUxf,GACVhJ,KAAKkoB,WAAalf,EACdhJ,KAAKmoB,YACLnoB,KAAKmoB,UAAUK,UAAYxf,GAQnC,aAAIwf,GACA,OAAOxoB,KAAKkoB,WAOhB,UAAIN,CAAO5e,GACPhJ,KAAKqnB,QAAUre,EACXhJ,KAAKmoB,YACLnoB,KAAKmoB,UAAUP,OAAS5e,GAQhC,UAAI4e,GACA,OAAO5nB,KAAKqnB,QAGhB,6BAAWle,GACP,MAAO,CAAC,QAAS,WAAY,WAAY,OAAQ,OAAQ,UAAW,QAAS,YAAa,UAG9F,wBAAAC,CAAyBlI,EAAcmI,EAAmBC,GACtD,OAAQpI,GACJ,IAAK,QACDlB,KAAKuF,MAAQ+D,EACb,MACJ,IAAK,WACDtJ,KAAKyoB,SAAW5M,WAAWvS,GAC3B,MACJ,IAAK,OACDtJ,KAAKsoB,KAAOtoB,KAAKkX,aAAa,QAC9B,MACJ,IAAK,OACDlX,KAAKkB,KAAOoI,EACZ,MACJ,IAAK,UACDtJ,KAAKuoB,QAAUvoB,KAAKkX,aAAa,WACjC,MACJ,IAAK,QACDlX,KAAKwnB,MAAQ3L,WAAWvS,GACxB,MACJ,IAAK,YACDtJ,KAAKwoB,UAAY3M,WAAWvS,GAC5B,MACJ,IAAK,SACDtJ,KAAK4nB,OAAS/L,WAAWvS,KAMzCvH,eAAeC,OAAO,WAAY6lB,GC9QlC,MAAMgB,UAAqBjpB,EAA3B,WAAAE,uBACYE,KAAMqd,OAAW,GAEjBrd,KAAO8oB,QAAkB,KAEjC,iBAAAzlB,GACIrD,KAAK+oB,aACL/oB,KAAKU,WAGT,oBAAA0F,GACIpG,KAAKgpB,eAGD,YAAAC,CAAaC,GACjBlpB,KAAK8oB,QAAUI,EAAUC,0BAGrBD,EAAUE,WAAW5gB,OAAS,IAC9BxI,KAAK8oB,QAAQtR,aAAa,QAE1BxX,KAAK8oB,QAAQO,KAAKC,gBAAgB,YAAaJ,EAAUE,WAAW,GAAGnH,WAG3E,MAAMsH,EAAsBvpB,KAAKS,cACjC,GAAI8oB,EACAA,EAAoB1oB,QAAQC,MAAK,KAC7ByoB,EAAoBxgB,OAAQwM,SAASvV,KAAK8oB,QAAS,QAEpD,CACH,MAAMU,EAAaxpB,KAAKK,WACpBmpB,GACAA,EAAW3oB,QAAQC,MAAK,KACpB0oB,EAAWtmB,IAAKuE,KAAK8N,SAASvV,KAAK8oB,QAAS,KAMpD,gBAAMC,SACV/oB,KAAKgpB,eAEL,MAAMQ,QAAoC,QAAjBlpB,EAAAN,KAAKK,kBAAY,IAAAC,OAAA,EAAAA,EAAAO,SACpCqC,EAAMsmB,aAAA,EAAAA,EAAYtmB,IAElBqC,EAAQ8Q,EAAaO,IAAI5W,KAAKqd,QAC/B9X,IAIDA,EAAMyc,OACNhiB,KAAKipB,aAAa1jB,EAAM0c,WAExB1c,EAAM4c,KAAK,QAAQ,KACfniB,KAAKipB,aAAa1jB,EAAM0c,SAAS,IAErC/e,EAAKsC,OAAOikB,KAAKlkB,KAIjB,YAAAyjB,SACU,QAAd1oB,EAAAN,KAAK8oB,eAAS,IAAAxoB,GAAAA,EAAAgG,UACdtG,KAAK8oB,QAAU,KAOnB,SAAIvjB,CAAMyD,GACNhJ,KAAKqd,OAASrU,EACVhJ,KAAK0pB,aACL1pB,KAAK+oB,aAQb,SAAIxjB,GACA,OAAOvF,KAAKqd,OAGhB,6BAAWlU,GACP,MAAO,CAAC,SAGZ,wBAAAC,CAAyBlI,EAAcmI,EAAmBC,GACtD,GACS,UADDpI,EAEAlB,KAAKuF,MAAQ+D,GAM7BvH,eAAeC,OAAO,WAAY6mB,GCjGlC,MAAMc,UAAqB/pB,EAA3B,WAAAE,uBAIYE,KAAA4pB,KAAO,OAKP5pB,KAAS6pB,UAAG,IAAI9W,EAAAA,MAAM,EAAG,EAAG,GAK5B/S,KAAW8pB,YAAG,EAKd9pB,KAAS+pB,UAAG,EAKZ/pB,KAAOgqB,QAAG,IAKlBhqB,KAAKoI,MAAiB,KAEtB,uBAAM/E,eACqB,UAAjBrD,KAAKK,kBAAY,IAAAC,OAAA,EAAAA,EAAAO,SAEvBb,KAAKoI,MAAQpI,KAAKK,WAAY6C,IAAKkF,MACnCpI,KAAKiqB,sBAELjqB,KAAKU,WAGT,mBAAAupB,GACQjqB,KAAKoI,QACLpI,KAAKoI,MAAM8hB,IAAIjjB,KAAOjH,KAAK4pB,KAC3B5pB,KAAKoI,MAAM8hB,IAAIhM,MAAQle,KAAK6pB,UAC5B7pB,KAAKoI,MAAM8hB,IAAIC,QAAUnqB,KAAK8pB,YAC9B9pB,KAAKoI,MAAM8hB,IAAIhkB,MAAQlG,KAAK+pB,UAC5B/pB,KAAKoI,MAAM8hB,IAAIE,IAAMpqB,KAAKgqB,SASlC,OAAIE,CAAIlhB,GACJhJ,KAAK4pB,KAAO5gB,EACRhJ,KAAKoI,QACLpI,KAAKoI,MAAM8hB,IAAIjjB,KAAO+B,GAQ9B,OAAIkhB,GACA,OAAOlqB,KAAK4pB,KAOhB,YAAIS,CAASrhB,GACThJ,KAAK6pB,UAAY7gB,EACbhJ,KAAKoI,QACLpI,KAAKoI,MAAM8hB,IAAIhM,MAAQlV,GAQ/B,YAAIqhB,GACA,OAAOrqB,KAAK6pB,UAOhB,cAAIS,CAAWthB,GACXhJ,KAAK8pB,YAAc9gB,EACfhJ,KAAKoI,QACLpI,KAAKoI,MAAM8hB,IAAIC,QAAUnhB,GAQjC,cAAIshB,GACA,OAAOtqB,KAAK8pB,YAOhB,YAAIS,CAASvhB,GACThJ,KAAK+pB,UAAY/gB,EACbhJ,KAAKoI,QACLpI,KAAKoI,MAAM8hB,IAAIhkB,MAAQ8C,GAQ/B,YAAIuhB,GACA,OAAOvqB,KAAK+pB,UAOhB,UAAIS,CAAOxhB,GACPhJ,KAAKgqB,QAAUhhB,EACXhJ,KAAKoI,QACLpI,KAAKoI,MAAM8hB,IAAIE,IAAMphB,GAQ7B,UAAIwhB,GACA,OAAOxqB,KAAKgqB,QAGhB,6BAAW7gB,GACP,MAAO,CAAC,MAAO,YAAa,cAAe,YAAa,WAG5D,wBAAAC,CAAyBlI,EAAcmI,EAAmBC,GACtD,OAAQpI,GACJ,IAAK,MACDlB,KAAKkqB,IAAM5gB,EACX,MACJ,IAAK,YACDtJ,KAAKqqB,SAAWzX,EAAWtJ,GAC3B,MACJ,IAAK,cACDtJ,KAAKsqB,WAAazO,WAAWvS,GAC7B,MACJ,IAAK,YACDtJ,KAAKuqB,SAAW1O,WAAWvS,GAC3B,MACJ,IAAK,UACDtJ,KAAKwqB,OAAS3O,WAAWvS,KAOzCvH,eAAeC,OAAO,WAAY2nB,GC3KlC,MAAMc,UAAmB7qB,EAAzB,WAAAE,uBACYE,KAAMqd,OAAG,GAETrd,KAAO0qB,QAAG,IAAIlX,EAAAA,KAAK,EAAG,IAAM,GAE5BxT,KAAUuf,WAAG,EAEbvf,KAAA+T,UAAY,IAAIP,OAEhBxT,KAAM2qB,OAAG,EAET3qB,KAAS4qB,WAAG,EAEZ5qB,KAAMgU,OAAG,IAAIR,EAAAA,KAAK,IAAK,IAAK,KAE5BxT,KAAKuc,MAAyC,WAE9Cvc,KAAM6qB,OAAiB,KAE/B,iBAAAxnB,GACIrD,KAAK8qB,cACL9qB,KAAKU,WAGT,oBAAA0F,GACIpG,KAAK+qB,gBAGD,eAAAC,CAAgBzlB,GACpB,IAAKvF,KAAK6qB,OAAQ,OAElB,MAAMI,EAAS1lB,EAAM0c,SAEfiJ,EAASC,EAAAA,YAAYC,sBAAsBH,GAIjD,GAHAC,EAAOhJ,WAAa,EACpBliB,KAAK6qB,OAAOK,OAASA,EAEjBlrB,KAAK4qB,UAAW,CAChB,MAAMS,EAAWF,EAAAA,YAAYG,uBAAuBL,GAC9CM,EAAWJ,EAAAA,YAAYK,cAAcH,GAC3CrrB,KAAK6qB,OAAOU,SAAWA,EAG3B,MAAME,EAAQzrB,KAAK6qB,OAAOa,OAAOC,aAAaC,EAAAA,gBAC1CH,IACAA,EAAMrX,QAAyB,SAAfpU,KAAKuc,OAGzBvc,KAAK6qB,OAAOgB,IAAI5kB,KAAOjH,KAAKuc,MAC5Bvc,KAAK6qB,OAAOgB,IAAIpjB,KAAKiM,cAAc1U,KAAKgU,QACxChU,KAAK6qB,OAAOgB,IAAIC,OAAS9rB,KAAK0qB,QAC9B1qB,KAAK6qB,OAAOkB,gBAAkB/rB,KAAKuf,WAG/B,iBAAMuL,SACV,MAAMtB,QAAoC,QAAjBlpB,EAAAN,KAAKK,kBAAY,IAAAC,OAAA,EAAAA,EAAAO,SACpCqC,EAAMsmB,aAAA,EAAAA,EAAYtmB,IACxB,IAAKA,EACD,OAGJ,MAAMqC,EAAQ8Q,EAAaO,IAAI5W,KAAKqd,QAC/B9X,IAILvF,KAAK6qB,OAAS3nB,EAAIkF,MAEd7C,EAAMyc,OACNhiB,KAAKgrB,gBAAgBzlB,IAErBA,EAAM4c,KAAK,QAAQ,KACfniB,KAAKgrB,gBAAgBzlB,EAAM,IAE/BrC,EAAIsC,OAAOikB,KAAKlkB,KAIhB,aAAAwlB,WACC/qB,KAAK6qB,SAEU,QAApBvqB,EAAAN,KAAK6qB,OAAOK,cAAQ,IAAA5qB,GAAAA,EAAAgG,UAEpBtG,KAAK6qB,OAAOK,OAAS,KACC,QAAtBc,EAAAhsB,KAAK6qB,OAAOU,gBAAU,IAAAS,GAAAA,EAAA1lB,UAEtBtG,KAAK6qB,OAAOU,SAAW,KAEvBvrB,KAAK6qB,OAAS,MAGlB,SAAItlB,CAAMyD,GACNhJ,KAAKqd,OAASrU,EACVhJ,KAAK0pB,aACL1pB,KAAK8qB,cAIb,SAAIvlB,GACA,OAAOvF,KAAKqd,OAGhB,UAAIyO,CAAO9iB,GACPhJ,KAAK0qB,QAAU1hB,EACXhJ,KAAK6qB,SACL7qB,KAAK6qB,OAAOgB,IAAIC,OAAS9rB,KAAK0qB,SAItC,UAAIoB,GACA,OAAO9rB,KAAK0qB,QAGhB,aAAIvK,CAAUnX,GACVhJ,KAAKuf,WAAavW,EACdhJ,KAAK6qB,SACL7qB,KAAK6qB,OAAOkB,gBAAkB/rB,KAAKuf,YAI3C,aAAIY,GACA,OAAOngB,KAAKuf,WAGhB,SAAI0M,CAAMjjB,GACNhJ,KAAK2qB,OAAS3hB,EACVhJ,KAAK6qB,SACL7qB,KAAK6qB,OAAOqB,UAAYlsB,KAAK2qB,QAIrC,SAAIsB,GACA,OAAOjsB,KAAK2qB,OAGhB,YAAIU,CAASriB,GACThJ,KAAK4qB,UAAY5hB,EAGrB,YAAIqiB,GACA,OAAOrrB,KAAK4qB,UAGhB,YAAIrW,CAASvL,GACThJ,KAAK+T,UAAY/K,EACbhJ,KAAK6qB,SACL7qB,KAAK6qB,OAAOsB,gBAAiB,IAAInQ,EAAAA,MAAOgB,mBAAmBhU,IAInE,YAAIuL,GACA,OAAOvU,KAAK+T,UAGhB,SAAIU,CAAMzL,GACNhJ,KAAKgU,OAAShL,EACVhJ,KAAK6qB,QACL7qB,KAAK6qB,OAAOgB,IAAIpjB,KAAKiM,cAAc1U,KAAKgU,QAIhD,SAAIS,GACA,OAAOzU,KAAKgU,OAGhB,QAAI/M,CAAK+B,GAEL,GADAhJ,KAAKuc,MAAQvT,EACThJ,KAAK6qB,OAAQ,CACb7qB,KAAK6qB,OAAOgB,IAAI5kB,KAAOjH,KAAKuc,MAC5B,MAAMkP,EAAQzrB,KAAK6qB,OAAOa,OAAOC,aAAaC,EAAAA,gBAC1CH,IACAA,EAAMrX,QAAyB,SAAfpU,KAAKuc,QAKjC,QAAItV,GACA,OAAOjH,KAAKuc,MAGhB,6BAAWpT,GACP,MAAO,CAAC,QAAS,SAAU,YAAa,QAAS,WAAY,WAAY,QAAS,QAGtF,wBAAAC,CAAyBlI,EAAcmI,EAAmBC,GACtD,OAAQpI,GACJ,IAAK,QACDlB,KAAKuF,MAAQ+D,EACb,MACJ,IAAK,SACDtJ,KAAK8rB,OAASvY,EAAUjK,GACxB,MACJ,IAAK,YACDtJ,KAAKmgB,UAAYtE,WAAWvS,GAC5B,MACJ,IAAK,QACDtJ,KAAKisB,MAAQ/O,SAAS5T,EAAU,IAChC,MACJ,IAAK,WACDtJ,KAAKqrB,SAAWrrB,KAAKkX,aAAahW,GAClC,MACJ,IAAK,WACDlB,KAAKuU,SAAWhB,EAAUjK,GAC1B,MACJ,IAAK,QACDtJ,KAAKyU,MAAQlB,EAAUjK,GACvB,MACJ,IAAK,OACDtJ,KAAKiH,KAAOqC,IAM5BvH,eAAeC,OAAO,SAAUyoB"}
|