From ffc3f7237d69956df463ddb42e93cbe0435630e0 Mon Sep 17 00:00:00 2001 From: user1303836 Date: Thu, 6 Aug 2026 12:24:16 -0400 Subject: [PATCH 1/4] Replace procedural boxers with the rigged CC0 Barbarian model Vendor KayKit Adventurers Barbarian.glb (CC0) and retarget-bake the project's boxing motion onto its 41-bone armature: world-delta retarget for torso/head, child-aim retarget for limbs, hips translation scaled by rest ratio. The generated fighter GLB carries all 18 combat clips at authoritative tick timing, phase-locked via combat-manifest.json. Runtime: SkinnedBoxer (SkeletonUtils.clone, per-fighter mixer, cloned materials only where appearance differs, shared geometry/texture), canonical bone adapter with missing-bone diagnostics, runtime glove meshes for corner colors, and the BoxingGraph driving layered blending, foot locking, and constrained additive IK strictly after mixer.update. Procedural animator preserved behind ?procedural=1 and as load-failure fallback. Adds /hands/model-lab: clip player with crossfade, SkeletonHelper, bone hierarchy and clip/track inventory, triangle/material/texture stats, transform controls, and warnings reporting. --- README.md | 2 +- docs/hands-lab-architecture.md | 50 + src/intelstream/hands/server.py | 5 + src/intelstream/hands/static/assets/hands.css | 2 +- src/intelstream/hands/static/assets/hands.js | 95 +- web/hands/assets-src/Barbarian.LICENSE.txt | 33 + web/hands/assets-src/Barbarian.glb | Bin 0 -> 3613268 bytes web/hands/assets-src/barbarian_texture.png | Bin 0 -> 15089 bytes web/hands/glb-debug.html | 11 +- web/hands/probe-bake.mjs | 24 + web/hands/scripts/generate-fighter-glb.ts | 412 ++++ web/hands/src/assets/boxer-glb.ts | 3 - web/hands/src/assets/fighter-glb.ts | 3 + web/hands/src/assets/fighter-markers.json | 1901 +++++++++++++++++ web/hands/src/assets/fighter-texture.ts | 2 + web/hands/src/lab/lab.ts | 10 + web/hands/src/lab/model-lab.ts | 279 +++ web/hands/src/main.ts | 5 +- web/hands/src/render/arena.ts | 2 +- web/hands/src/render/graph.test.ts | 31 +- web/hands/src/render/graph.ts | 75 +- web/hands/src/render/renderer.ts | 22 +- web/hands/src/style.css | 1 + web/hands/src/style.css.patch | 0 24 files changed, 2906 insertions(+), 62 deletions(-) create mode 100644 web/hands/assets-src/Barbarian.LICENSE.txt create mode 100644 web/hands/assets-src/Barbarian.glb create mode 100644 web/hands/assets-src/barbarian_texture.png create mode 100644 web/hands/probe-bake.mjs create mode 100644 web/hands/scripts/generate-fighter-glb.ts delete mode 100644 web/hands/src/assets/boxer-glb.ts create mode 100644 web/hands/src/assets/fighter-glb.ts create mode 100644 web/hands/src/assets/fighter-markers.json create mode 100644 web/hands/src/assets/fighter-texture.ts create mode 100644 web/hands/src/lab/model-lab.ts create mode 100644 web/hands/src/style.css.patch diff --git a/README.md b/README.md index ac8d126..3c0283f 100644 --- a/README.md +++ b/README.md @@ -495,7 +495,7 @@ The right stick also performs one punch after a center→peak→center gesture. ### Presentation and settings -The committed client renders a real-time 3D broadcast presentation with WebGL (pinned three.js): a procedurally modeled arena, canvas-textured ring, articulated boxer rigs with IK-driven punch animation, a referee, dynamic lighting and shadows, and GPU particle effects—plus generated Web Audio. There are no runtime images, fonts, music, model files, or other external assets; every mesh, texture, and sound is generated in code. **Blood defaults to `full`**; Settings can select `full`, `reduced`, or `off` without changing authoritative trauma or HUD information. Settings also provide master audio volume, haptics on/off, and reduced motion. Audio unlocks only after user interaction and suspends while hidden; haptics are feature-detected and limited to bounded authoritative impact events. Reduced motion removes particles/shake while preserving match state and private get-up information. +The committed client renders a real-time 3D broadcast presentation with WebGL (pinned three.js): a procedurally modeled arena, canvas-textured ring, a referee, dynamic lighting and shadows, and GPU particle effects—plus generated Web Audio. The fighters are the CC0 KayKit Barbarian rig (Kay Lousberg, kaylousberg.com; license in web/hands/assets-src/) driven by authored clips retarget-baked from the project's own boxing motion (idle, movement, guards, all punches both hands, reactions, knockdown, get-up), phase-locked to the authoritative simulation via combat-manifest.json. All arena meshes, textures, and sounds remain generated in code. **Blood defaults to `full`**; Settings can select `full`, `reduced`, or `off` without changing authoritative trauma or HUD information. Settings also provide master audio volume, haptics on/off, and reduced motion. Audio unlocks only after user interaction and suspends while hidden; haptics are feature-detected and limited to bounded authoritative impact events. Reduced motion removes particles/shake while preserving match state and private get-up information. Before a public release, review Discord's current violent-content rules, age rating/restriction controls, store/application disclosures, and regional requirements. Do not add external/borrowed assets, commercial boxing-game UI, audio, animation traces, real-fighter or celebrity likenesses, sanctioning-body/brand marks, logos, or recognizable trade dress. All fighter art, interface, motion, terminology, and sound must remain original. diff --git a/docs/hands-lab-architecture.md b/docs/hands-lab-architecture.md index 048a228..67c4d73 100644 --- a/docs/hands-lab-architecture.md +++ b/docs/hands-lab-architecture.md @@ -286,3 +286,53 @@ All five steps landed. Final state: - Bundle is 1.67 MB (GLB embedded as base64, still the exact three-file manifest; both static scanners learned to skip URL extraction only for >4 KB generated literals — credential scanning still applies). + +--- + +# Addendum: imported rigged model (2026-08-06) + +**Asset**: KayKit Adventurers `Barbarian.glb` (CC0, Kay Lousberg), vendored with +license in `web/hands/assets-src/`. Inspection: 41-bone armature (dots stripped +by GLTFLoader: `upperarml`, `wristl`, `footl`…), 76 authored clips (in-place, +game-ready), T-pose rest, ~1.35 m tall, faces +Z, 6 skinned parts, 1 palette +texture (1024²), 4,045 triangles, prop meshes (axes/shield/mug/hat/cape) +stripped at generation. + +**Generation**: `scripts/generate-fighter-glb.ts` retarget-bakes the project's +tuned procedural boxing motion onto the Barbarian armature — world-delta +retarget for torso/head, child-aim retarget for limbs (convention-free), hips +translation scaled by rest hip ratio. 18 clips at authoritative tick rate. +Canonical adapter (`BONE_ADAPTER`) maps canonical bones → model bones with a +hard diagnostic on missing bones. Glove meshes are runtime-attached to the +wrist bones (corner colors); the skin palette texture is embedded base64 and +assigned per fighter clone. + +**Model lab**: `/hands/model-lab` (dev) / `?model-lab=1` (vite) — clip player +(play/pause/seek/loop/crossfade), SkeletonHelper, full bone hierarchy print, +clip name/duration/track table, triangle/material/texture inventory, +scale/rotation/position controls, and warnings (unnamed clips/bones, missing +textures, runtime warnings). Same lighting rig as the game. + +**Runtime**: `SkinnedBoxer` = SkeletonUtils.clone + per-fighter AnimationMixer + +independently cloned materials only where appearance differs (gear gloves, +skin clearcoat), shared geometry/texture. `BoxingGraph` drives locomotion +blending, committed action playback phase-locked to manifest ticks, reactions, +knockdown/getup, foot locking, and constrained additive IK — corrections +applied strictly after `mixer.update()`. Procedural animator preserved behind +`?procedural=1` and as automatic fallback on GLB load failure. + +**Verified**: independent skeletons/animation/materials per fighter (unit +tested), cast+receive shadows, authoritative roots preserved, zero console +errors across captures, SwiftShader software floor avg 59 ms/frame (GPU-bound +real hardware runs far faster; scene ~10k tris). + +**Missing clips for existing combat actions** (all currently fall back to +idle/locomotion): taunt dance, clinch hold, foul-recovery crouch, weave/slip/ +pull defensive poses, body-target punch variants (aim IK covers height), power +variants (timeScale covers tempo). + +**Known remaining visual defects**: ACES tone mapping plus arena lighting wash +the palette toward pastel; trauma overlays are scaled for the larger head but +their positions are approximate; the knockdown head-fall velocity makes the +0.10 m joint metric read ~0.22 m one tick after contact (filmstrip shows flush +contact). diff --git a/src/intelstream/hands/server.py b/src/intelstream/hands/server.py index fb61dbc..01a9f9e 100644 --- a/src/intelstream/hands/server.py +++ b/src/intelstream/hands/server.py @@ -394,6 +394,7 @@ def __init__( routes.extend( [ web.get("/hands/lab", self._lab_redirect), + web.get("/hands/model-lab", self._model_lab_redirect), web.get("/hands/replays/{name}", self._lab_replay), ] ) @@ -798,6 +799,10 @@ async def _index(self, _request: web.Request) -> web.Response: async def _lab_redirect(_request: web.Request) -> web.Response: raise web.HTTPFound("/?lab=1") + @staticmethod + async def _model_lab_redirect(_request: web.Request) -> web.Response: + raise web.HTTPFound("/?model-lab=1") + async def _lab_replay(self, request: web.Request) -> web.Response: if not self.dev_mode: raise web.HTTPNotFound() diff --git a/src/intelstream/hands/static/assets/hands.css b/src/intelstream/hands/static/assets/hands.css index bca418e..fe7ac09 100644 --- a/src/intelstream/hands/static/assets/hands.css +++ b/src/intelstream/hands/static/assets/hands.css @@ -1,2 +1,2 @@ -:root{color:#f2f6ff;font-synthesis:none;background:#07090e;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0;overflow:hidden}.activity{background:#080b12;width:100%;height:100%;min-height:320px;position:relative}.fight{touch-action:none;width:100%;height:100%;display:block}.topbar{top:max(8px,env(safe-area-inset-top));-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);letter-spacing:.03em;white-space:nowrap;background:#07101ad9;border:1px solid #ffffff24;border-radius:3px;align-items:center;gap:12px;padding:7px 10px;display:flex;position:absolute;left:50%;transform:translate(-50%)}.topbar strong{color:#f1cc72;letter-spacing:.18em}.topbar span{color:#aebbd0;font-size:12px}.topbar .spectator-role{color:#f1cc72;font-weight:800}.spectator-role[hidden]{display:none}.topbar button,.panel button{color:#eaf1ff;cursor:pointer;background:#172334;border:1px solid #ffffff2e;border-radius:3px;padding:6px 10px}.overlay{left:50%;bottom:max(18px,env(safe-area-inset-bottom));text-align:center;pointer-events:none;justify-items:center;gap:9px;max-width:min(90vw,540px);display:grid;position:absolute;transform:translate(-50%)}.status{color:#e8effc;background:#07101adf;border:1px solid #ffffff1f;border-radius:3px;margin:0;padding:8px 13px;font-weight:600}.primary{pointer-events:auto;color:#081018;cursor:pointer;background:#f1cc72;border:0;border-radius:3px;padding:10px 18px;font-weight:800}.primary:disabled{opacity:.55;cursor:wait}.panel{z-index:4;background:#08111cf2;border:1px solid #ffffff2b;width:min(390px,100vw - 28px);max-height:calc(100vh - 80px);padding:16px 20px;position:absolute;top:58px;right:14px;overflow:auto;box-shadow:0 14px 45px #0009}.panel h2{color:#f1cc72;margin:0 0 10px;font-size:17px}.panel ul{color:#d7e0ee;margin:0;padding-left:19px;font-size:13px;line-height:1.55}.settings{gap:12px;display:grid}.settings[hidden],.panel[hidden]{display:none}.settings label{justify-content:space-between;align-items:center;gap:14px;font-size:14px;display:flex}.settings input[type=range]{width:190px}.settings select{color:#f2f6ff;background:#172334;border:1px solid #ffffff2e;padding:5px}.sr-summary{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.lab-controls{left:50%;bottom:max(10px,env(safe-area-inset-bottom));color:#d7e0ee;white-space:nowrap;background:#07101ae6;border:1px solid #ffffff24;border-radius:3px;align-items:center;gap:10px;padding:8px 12px;font-size:12px;display:flex;position:absolute;transform:translate(-50%)}.lab-controls button,.lab-controls select{color:#eaf1ff;cursor:pointer;background:#172334;border:1px solid #ffffff2e;border-radius:3px;padding:5px 9px;font-size:12px}.lab-controls input[type=number]{color:#eaf1ff;background:#0c1622;border:1px solid #ffffff2e;border-radius:3px;width:56px;padding:4px}.lab-controls label{cursor:pointer;align-items:center;gap:4px;display:flex}.lab-controls [data-lab-metrics]{color:#8fa3c8;text-overflow:ellipsis;max-width:40vw;overflow:hidden}@media (width<=700px){.topbar{flex-wrap:wrap;justify-content:center;left:8px;right:8px;transform:none}.topbar span:not(.spectator-role){display:none}.topbar button{padding:5px 8px}.panel{top:74px}.status{font-size:13px}.overlay{bottom:10px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}} +:root{color:#f2f6ff;font-synthesis:none;background:#07090e;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0;overflow:hidden}.activity{background:#080b12;width:100%;height:100%;min-height:320px;position:relative}.fight{touch-action:none;width:100%;height:100%;display:block}.topbar{top:max(8px,env(safe-area-inset-top));-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);letter-spacing:.03em;white-space:nowrap;background:#07101ad9;border:1px solid #ffffff24;border-radius:3px;align-items:center;gap:12px;padding:7px 10px;display:flex;position:absolute;left:50%;transform:translate(-50%)}.topbar strong{color:#f1cc72;letter-spacing:.18em}.topbar span{color:#aebbd0;font-size:12px}.topbar .spectator-role{color:#f1cc72;font-weight:800}.spectator-role[hidden]{display:none}.topbar button,.panel button{color:#eaf1ff;cursor:pointer;background:#172334;border:1px solid #ffffff2e;border-radius:3px;padding:6px 10px}.overlay{left:50%;bottom:max(18px,env(safe-area-inset-bottom));text-align:center;pointer-events:none;justify-items:center;gap:9px;max-width:min(90vw,540px);display:grid;position:absolute;transform:translate(-50%)}.status{color:#e8effc;background:#07101adf;border:1px solid #ffffff1f;border-radius:3px;margin:0;padding:8px 13px;font-weight:600}.primary{pointer-events:auto;color:#081018;cursor:pointer;background:#f1cc72;border:0;border-radius:3px;padding:10px 18px;font-weight:800}.primary:disabled{opacity:.55;cursor:wait}.panel{z-index:4;background:#08111cf2;border:1px solid #ffffff2b;width:min(390px,100vw - 28px);max-height:calc(100vh - 80px);padding:16px 20px;position:absolute;top:58px;right:14px;overflow:auto;box-shadow:0 14px 45px #0009}.panel h2{color:#f1cc72;margin:0 0 10px;font-size:17px}.panel ul{color:#d7e0ee;margin:0;padding-left:19px;font-size:13px;line-height:1.55}.settings{gap:12px;display:grid}.settings[hidden],.panel[hidden]{display:none}.settings label{justify-content:space-between;align-items:center;gap:14px;font-size:14px;display:flex}.settings input[type=range]{width:190px}.settings select{color:#f2f6ff;background:#172334;border:1px solid #ffffff2e;padding:5px}.sr-summary{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.lab-controls{left:50%;bottom:max(10px,env(safe-area-inset-bottom));color:#d7e0ee;white-space:nowrap;background:#07101ae6;border:1px solid #ffffff24;border-radius:3px;align-items:center;gap:10px;padding:8px 12px;font-size:12px;display:flex;position:absolute;transform:translate(-50%)}.lab-controls button,.lab-controls select{color:#eaf1ff;cursor:pointer;background:#172334;border:1px solid #ffffff2e;border-radius:3px;padding:5px 9px;font-size:12px}.lab-controls input[type=number]{color:#eaf1ff;background:#0c1622;border:1px solid #ffffff2e;border-radius:3px;width:56px;padding:4px}.lab-controls label{cursor:pointer;align-items:center;gap:4px;display:flex}.lab-controls [data-lab-metrics]{color:#8fa3c8;text-overflow:ellipsis;max-width:40vw;overflow:hidden}@media (width<=700px){.topbar{flex-wrap:wrap;justify-content:center;left:8px;right:8px;transform:none}.topbar span:not(.spectator-role){display:none}.topbar button{padding:5px 8px}.panel{top:74px}.status{font-size:13px}.overlay{bottom:10px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.model-panel{width:min(430px,100vw - 28px);max-height:calc(100vh - 80px);top:58px;left:14px;right:auto}.model-clips{gap:4px;max-height:200px;display:grid;overflow:auto}.model-clips button{text-align:left;color:#eaf1ff;cursor:pointer;background:#172334;border:1px solid #ffffff2e;border-radius:3px;padding:5px 8px;font-size:12px}.model-clips button.active{color:#f1cc72;border-color:#f1cc72}.model-row{align-items:center;gap:10px;margin-top:8px;font-size:12px;display:flex}.model-row label{align-items:center;gap:6px;display:flex}.model-inventory,.model-warnings{color:#c8d3e6;white-space:pre-wrap;max-height:220px;font-size:10px;line-height:1.4;overflow:auto} /*$vite$:1*/ \ No newline at end of file diff --git a/src/intelstream/hands/static/assets/hands.js b/src/intelstream/hands/static/assets/hands.js index 7b0f0d2..277c8d7 100644 --- a/src/intelstream/hands/static/assets/hands.js +++ b/src/intelstream/hands/static/assets/hands.js @@ -1,8 +1,8 @@ -var e=Object.defineProperty,t=(t,n)=>{let r={};for(var i in t)e(r,i,{get:t[i],enumerable:!0});return n||e(r,Symbol.toStringTag,{value:`Module`}),r};(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),e.crossOrigin===`use-credentials`?t.credentials=`include`:e.crossOrigin===`anonymous`?t.credentials=`omit`:t.credentials=`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var n={jab:{from:520,to:1500,duration:.09},straight:{from:420,to:1150,duration:.12},hook:{from:300,to:880,duration:.14},uppercut:{from:240,to:820,duration:.15}},r=class{settings;context=null;master=null;noiseBuffer=null;crowdGain=null;unlocked=!1;unlockPromise=null;crowdStarted=!1;destroyed=!1;timers=new Set;lastBreathTick=-300;lastHeartbeatTick=-300;unlockListener=()=>{this.unlock().catch(()=>void 0)};visibility=()=>{let e=this.context;if(e===null)return;let t=document.hidden?e.suspend():this.unlocked?e.resume():null;t!==null&&t.catch(()=>void 0)};constructor(e){this.settings=e,window.addEventListener(`pointerdown`,this.unlockListener),window.addEventListener(`keydown`,this.unlockListener),document.addEventListener(`visibilitychange`,this.visibility)}unlock(){return this.destroyed||this.unlocked?Promise.resolve():(this.unlockPromise===null&&(this.unlockPromise=this.performUnlock().finally(()=>{this.unlockPromise=null})),this.unlockPromise)}async performUnlock(){this.context===null&&(this.context=new AudioContext,this.master=this.context.createGain(),this.master.gain.value=Math.min(.8,Math.max(0,this.settings().volume)),this.master.connect(this.context.destination)),this.context.state===`suspended`&&await this.context.resume(),!this.destroyed&&(this.unlocked=!0,window.removeEventListener(`pointerdown`,this.unlockListener),window.removeEventListener(`keydown`,this.unlockListener),this.crowdStarted||(this.crowdStarted=!0,this.crowdBed()))}setVolume(){this.master!==null&&(this.master.gain.value=Math.min(.8,Math.max(0,this.settings().volume)))}event(e){if(this.unlocked)switch(e.kind){case`punch_start`:{let t=n[e.detail.split(`:`)[1]??`jab`]??n.jab;this.noise({duration:t.duration,frequency:t.from,sweepTo:t.to,gain:.1,type:`bandpass`,q:1.2});break}case`whiff`:this.noise({duration:.11,frequency:850,sweepTo:320,gain:.07,type:`bandpass`,q:1.1});break;case`hit`:case`counter_hit`:{let t=e.detail.endsWith(`body`),n=Math.min(.34,.16+e.amount/1400)*(e.kind===`counter_hit`?1.3:1);this.tone({from:t?120:150,to:42,duration:.13,type:`sine`,gain:n}),this.noise({duration:.06,frequency:t?420:1650,gain:n*.85,type:`bandpass`,q:.9}),this.noise({duration:.16,frequency:t?190:300,gain:n*.6}),e.kind===`counter_hit`&&this.crowdSwell(.5);break}case`block`:this.noise({duration:.05,frequency:900,gain:.15,type:`bandpass`,q:1.4}),this.tone({from:170,to:120,duration:.05,type:`triangle`,gain:.06});break;case`perfect_block`:this.noise({duration:.05,frequency:1450,gain:.16,type:`bandpass`,q:1.6}),this.tone({from:260,to:200,duration:.06,type:`triangle`,gain:.07});break;case`guard_break`:this.noise({duration:.18,frequency:520,gain:.24}),this.tone({from:230,to:78,duration:.2,type:`sawtooth`,gain:.1}),this.crowdSwell(.4);break;case`stun`:this.tone({from:96,to:74,duration:.22,type:`sine`,gain:.1});break;case`knockdown`:this.tone({from:68,to:32,duration:.34,type:`sine`,gain:.3}),this.noise({duration:.22,frequency:260,gain:.26}),this.crowdSwell(1);break;case`bell`:{let t=e.detail===`round_start`?3:1;for(let e=0;e.55&&e-this.lastBreathTick>=75&&(this.lastBreathTick=e,this.noise({duration:.18,frequency:420,gain:.045+i*.04})),(i>.72||r>500)&&e-this.lastHeartbeatTick>=24&&(this.lastHeartbeatTick=e,this.tone({from:52,duration:.09,type:`sine`,gain:.055}))}result(e){if(!this.unlocked)return;this.crowdSwell(1),this.tone({from:e.winner_id===null?280:520,duration:.45,type:`triangle`,gain:.18});let t=window.setTimeout(()=>{this.timers.delete(t),this.tone({from:650,duration:.5,type:`triangle`,gain:.14})},160);this.timers.add(t)}tone(e){let t=this.context,n=this.master;if(t===null||n===null)return;let r=t.currentTime+(e.delay??0),i=t.createOscillator(),a=t.createGain();i.type=e.type,i.frequency.setValueAtTime(Math.max(20,e.from),r),e.to!==void 0&&e.to!==e.from&&i.frequency.exponentialRampToValueAtTime(Math.max(20,e.to),r+Math.min(1.4,e.duration)),a.gain.setValueAtTime(1e-4,r),a.gain.exponentialRampToValueAtTime(Math.min(.35,e.gain),r+.012),a.gain.exponentialRampToValueAtTime(1e-4,r+Math.min(1.4,e.duration)),i.connect(a).connect(n),i.start(r),i.stop(r+Math.min(1.4,e.duration)+.03)}noise(e){let t=this.context,n=this.master;if(t===null||n===null)return;if(this.noiseBuffer===null){let e=Math.floor(t.sampleRate*1.2),n=t.createBuffer(1,e,t.sampleRate),r=n.getChannelData(0),i=987654321,a=0;for(let e=0;evoid 0)}},i=class extends Error{name=`ProtocolError`},a=2147483647,o=new TextEncoder;function s(e){let t=0,n=()=>{for(;/\s/u.test(e[t]??``);)t+=1},r=()=>{let n=t;if(e[t++]!==`"`)throw new i(`invalid JSON`);for(;t{n();let o=e[t];if(o===`{`){t+=1,n();let o=new Set;if(e[t]===`}`){t+=1;return}for(;;){n();let s=r();if(o.has(s))throw new i(`duplicate field ${s}`);if(o.add(s),n(),e[t++]!==`:`)throw new i(`invalid JSON`);a(),n();let c=e[t++];if(c===`}`)return;if(c!==`,`)throw new i(`invalid JSON`)}}if(o===`[`){if(t+=1,n(),e[t]===`]`){t+=1;return}for(;;){a(),n();let r=e[t++];if(r===`]`)return;if(r!==`,`)throw new i(`invalid JSON`)}}if(o===`"`){r();return}let s=e.slice(t),c=/^(?:-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?|true|false|null)/u.exec(s);if(!c)throw new i(`invalid JSON`);t+=c[0].length};if(a(),n(),t!==e.length)throw new i(`invalid JSON`)}function c(e){let t,n;if(typeof e==`string`?(t=o.encode(e),n=e):(t=e instanceof Uint8Array?e:new Uint8Array(e),n=new TextDecoder(`utf-8`,{fatal:!0}).decode(t)),t.byteLength>65536)throw new i(`server frame too large`);try{return s(n),JSON.parse(n)}catch(e){throw e instanceof i?e:new i(`invalid JSON`)}}function l(e,t){if(typeof e!=`object`||!e||Array.isArray(e)||Object.getPrototypeOf(e)!==Object.prototype)throw new i(`${t} must be an object`);return e}function u(e,t,n=[]){let r=new Set([...t,...n]),a=Object.keys(e);if(t.some(t=>!Object.hasOwn(e,t))||a.some(e=>!r.has(e)))throw new i(`schema mismatch`)}function d(e,t,n=0,r=a){if(!Number.isSafeInteger(e)||er)throw new i(`${t} must be a bounded integer`);return e}function f(e,t){if(typeof e!=`boolean`)throw new i(`${t} must be boolean`);return e}function p(e,t,n=255,r=1){if(typeof e!=`string`||e.lengthn||/[\u0000-\u001f\u007f]/u.test(e))throw new i(`${t} must be a bounded string`);return e}function m(e,t,n=255){return e===null?null:p(e,t,n)}function h(e,t,n){if(typeof e!=`string`||!t.includes(e))throw new i(`invalid ${n}`);return e}function g(e,t,n){if(!Array.isArray(e)||e.length>n)throw new i(`${t} must be a bounded array`);return e}var _=[`left`,`right`],v=[`jab`,`straight`,`hook`,`uppercut`],y=[`head`,`body`],b=[`normal`,`power`],x=[`orthodox`,`southpaw`],S=[`none`,`guard_high`,`guard_low`,`slip_left`,`slip_right`,`weave`,`pull`],C=[`none`,`guard_high`,`guard_low`],w=[`slip_left`,`slip_right`,`weave`,`pull`,`clinch`,`switch_stance`,`get_up_left`,`get_up_right`,`taunt`],T=[`low_blow`,`headbutt`],E=[`countdown`,`fight`,`knockdown`,`foul_recovery`,`rest`,`complete`],D=[`ko`,`flash_ko`,`tko`,`doctor_stoppage`,`disqualification`,`decision`,`draw`,`forfeit`];function O(e){let t=l(e,`player`);return u(t,[`id`,`name`,`avatar`,`rating`,`connected`]),{id:p(t.id,`player.id`),name:p(t.name,`player.name`,80),avatar:m(t.avatar,`player.avatar`,128),rating:d(t.rating,`rating`),connected:f(t.connected,`connected`)}}function ee(e,t){let n=g(e,`players`,2).map(O);if(n.length<1||t!==void 0&&n.length!==t||new Set(n.map(e=>e.id)).size!==n.length)throw new i(`players must be present and distinct`);return n}function k(e){let t=l(e,`trauma`);return u(t,[`head`,`body`,`left_eye`,`right_eye`,`left_cut`,`right_cut`,`swelling`,`bleeding`]),{head:d(t.head,`head`,0,1400),body:d(t.body,`body`,0,1200),left_eye:d(t.left_eye,`left_eye`,0,1e3),right_eye:d(t.right_eye,`right_eye`,0,1e3),left_cut:d(t.left_cut,`left_cut`,0,1e3),right_cut:d(t.right_cut,`right_cut`,0,1e3),swelling:d(t.swelling,`swelling`,0,1e3),bleeding:d(t.bleeding,`bleeding`,0,1e3)}}function te(e){let t=l(e,`fighter`);u(t,`player_id.x.y.facing.velocity_x.velocity_y.stance.defense.stamina.maximum_stamina.conditioning.guard.poise.trauma.knockdowns.warnings.deductions.stunned_ticks.is_downed.action.action_hand.action_target.action_power.action_id.action_key.action_start_tick.action_startup_ticks.action_active_ticks.action_recovery_ticks.action_contact_tick.queued_actions.clinch_startup_ticks.clinch_ticks.is_foul_recovery_target.taunt_ticks.get_up_prompt.get_up_meter.get_up_required.get_up_count.get_up_window_start_tick.get_up_window_end_tick`.split(`.`));let n=t.action===null?null:h(t.action,v,`action`),r=t.action_hand===null?null:h(t.action_hand,_,`action hand`),a=t.action_target===null?null:h(t.action_target,y,`action target`),o=t.action_power===null?null:h(t.action_power,b,`action power`);if([n,r,a,o].some(e=>e===null)&&[n,r,a,o].some(e=>e!==null))throw new i(`partial punch action`);let s=t.action_id===null?null:p(t.action_id,`action_id`,32),c=t.action_key===null?null:p(t.action_key,`action_key`,64);if([s,c].some(e=>e===null)!==[s,c].every(e=>e===null))throw new i(`partial action instance`);if(s!==null&&n===null)throw new i(`action instance without class`);let m=t.get_up_prompt===null?null:h(t.get_up_prompt,[`get_up_left`,`get_up_right`],`get-up prompt`),g=d(t.maximum_stamina,`maximum_stamina`,330,1e3),C=d(t.stamina,`stamina`,0,g),w=d(t.get_up_required,`get_up_required`,0,169),T=d(t.facing,`facing`,-1,1);if(T===0)throw new i(`invalid facing`);if(w!==0&&w<34)throw new i(`invalid get-up requirement`);return{player_id:p(t.player_id,`player_id`),x:d(t.x,`x`,-462,462),y:d(t.y,`y`,-292,292),facing:T,velocity_x:d(t.velocity_x,`velocity_x`,-7,7),velocity_y:d(t.velocity_y,`velocity_y`,-7,7),stance:h(t.stance,x,`stance`),defense:h(t.defense,S,`defense`),stamina:C,maximum_stamina:g,conditioning:d(t.conditioning,`conditioning`,0,1e3),guard:d(t.guard,`guard`,0,700),poise:d(t.poise,`poise`,0,600),trauma:k(t.trauma),knockdowns:d(t.knockdowns,`knockdowns`,0,3),warnings:d(t.warnings,`warnings`,0,3),deductions:d(t.deductions,`deductions`,0,1),stunned_ticks:d(t.stunned_ticks,`stunned_ticks`,0,90),is_downed:f(t.is_downed,`is_downed`),action:n,action_hand:r,action_target:a,action_power:o,action_id:s,action_key:c,action_start_tick:d(t.action_start_tick,`action_start_tick`,0),action_startup_ticks:d(t.action_startup_ticks,`action_startup_ticks`,0,40),action_active_ticks:d(t.action_active_ticks,`action_active_ticks`,0,10),action_recovery_ticks:d(t.action_recovery_ticks,`action_recovery_ticks`,0,40),action_contact_tick:t.action_contact_tick===null?null:d(t.action_contact_tick,`action_contact_tick`,0),queued_actions:d(t.queued_actions,`queued_actions`,0,1),clinch_startup_ticks:d(t.clinch_startup_ticks,`clinch_startup_ticks`,0,8),clinch_ticks:d(t.clinch_ticks,`clinch_ticks`,0,45),is_foul_recovery_target:f(t.is_foul_recovery_target,`is_foul_recovery_target`),taunt_ticks:d(t.taunt_ticks,`taunt_ticks`,0,60),get_up_prompt:m,get_up_meter:d(t.get_up_meter,`get_up_meter`,0,256),get_up_required:w,get_up_count:d(t.get_up_count,`get_up_count`,0,10),get_up_window_start_tick:d(t.get_up_window_start_tick,`get_up_window_start_tick`),get_up_window_end_tick:d(t.get_up_window_end_tick,`get_up_window_end_tick`)}}function ne(e){let t=l(e,`event`);return u(t,[`event_id`,`tick`,`kind`,`actor_id`,`target_id`,`amount`,`detail`,`blood`,`direction`,`action_id`]),{event_id:d(t.event_id,`event_id`),tick:d(t.tick,`tick`),kind:p(t.kind,`event kind`,32),actor_id:m(t.actor_id,`actor_id`),target_id:m(t.target_id,`target_id`),amount:d(t.amount,`amount`,-1e4,1e4),detail:p(t.detail,`detail`,96,0),blood:d(t.blood,`blood`,0,100),direction:d(t.direction,`direction`,-1,1),action_id:t.action_id===null?null:p(t.action_id,`action_id`,32)}}function re(e){let t=l(e,`judge card`);u(t,[`judge`,`player_one`,`player_two`]);let n=e=>g(e,`round scores`,15).map(e=>d(e,`score`,6,10)),r=n(t.player_one),a=n(t.player_two);if(r.length!==a.length)throw new i(`scorecard round mismatch`);return{judge:p(t.judge,`judge`,80),player_one:r,player_two:a}}function ie(e){let t=g(e,`scorecards`,3).map(re);if(t.length!==3)throw new i(`exactly three scorecards required`);return t}function ae(e,t){if(t===`draw`!=(e===null))throw new i(`incoherent finish result`)}function oe(e){let t=l(e,`result`);u(t,[`match_id`,`activity_instance_id`,`guild_id`,`player_one_id`,`player_two_id`,`winner_id`,`finish_method`,`round_number`,`tick`,`scorecards`,`player_one_knockdowns`,`player_two_knockdowns`,`player_one_damage`,`player_two_damage`]);let n=p(t.player_one_id,`player_one_id`),r=p(t.player_two_id,`player_two_id`);if(n===r)throw new i(`result players must be distinct`);let a=m(t.winner_id,`winner_id`);if(a!==null&&a!==n&&a!==r)throw new i(`invalid winner`);let o=h(t.finish_method,D,`finish method`);return ae(a,o),{match_id:p(t.match_id,`match_id`),activity_instance_id:p(t.activity_instance_id,`activity_instance_id`),guild_id:p(t.guild_id,`guild_id`),player_one_id:n,player_two_id:r,winner_id:a,finish_method:o,round_number:d(t.round_number,`round`,1,15),tick:d(t.tick,`tick`),scorecards:ie(t.scorecards),player_one_knockdowns:d(t.player_one_knockdowns,`knockdowns`,0,3),player_two_knockdowns:d(t.player_two_knockdowns,`knockdowns`,0,3),player_one_damage:d(t.player_one_damage,`damage`),player_two_damage:d(t.player_two_damage,`damage`)}}function se(e){let t=l(e,`snapshot`);u(t,[`tick`,`phase`,`round_number`,`phase_ticks_remaining`,`fighters`,`events`,`result`,`checksum`]);let n=g(t.fighters,`fighters`,2).map(te);if(n.length!==2||n[0]?.player_id===n[1]?.player_id)throw new i(`snapshot requires two distinct fighters`);let r=p(t.checksum,`checksum`,64);if(!/^[a-f0-9]{64}$/u.test(r))throw new i(`invalid checksum`);return{tick:d(t.tick,`tick`),phase:h(t.phase,E,`phase`),round_number:d(t.round_number,`round`,1,15),phase_ticks_remaining:d(t.phase_ticks_remaining,`phase ticks`),fighters:[n[0],n[1]],events:g(t.events,`events`,256).map(ne),result:t.result===null?null:oe(t.result),checksum:r}}function A(e){let t=l(c(e),`envelope`);if(t.version!==2)throw new i(`unsupported protocol version`);let n=p(t.type,`type`,32);if(n===`welcome`){let e=h(t.role,[`fighter`,`spectator`],`connection role`),r=p(t.player_id,`player_id`),a=t.reconnect_ticket===void 0?{}:{reconnect_ticket:p(t.reconnect_ticket,`reconnect_ticket`,4096)};if(e===`fighter`){u(t,[`version`,`type`,`role`,`player_id`,`seat`,`rating`,`players`,`server_tick`,`next_sequence`],[`reconnect_ticket`]);let o=ee(t.players);if(!o.some(e=>e.id===r))throw new i(`welcome fighter is absent`);return{version:2,type:n,role:e,player_id:r,seat:d(t.seat,`seat`,1,2),rating:d(t.rating,`rating`),players:o,server_tick:d(t.server_tick,`server_tick`),next_sequence:d(t.next_sequence,`next_sequence`),...a}}u(t,[`version`,`type`,`role`,`player_id`,`players`,`server_tick`],[`reconnect_ticket`]);let o=ee(t.players,2);if(o.some(e=>e.id===r))throw new i(`spectator cannot be a fighter`);return{version:2,type:n,role:e,player_id:r,players:[o[0],o[1]],server_tick:d(t.server_tick,`server_tick`),...a}}if(n===`ticket`)return u(t,[`version`,`type`,`reconnect_ticket`,`refresh_id`]),{version:2,type:n,reconnect_ticket:p(t.reconnect_ticket,`reconnect_ticket`,4096),refresh_id:p(t.refresh_id,`refresh_id`,128,16)};if(n===`waiting`){if(u(t,[`version`,`type`,`open_seats`]),t.open_seats!==1)throw new i(`invalid open seats`);return{version:2,type:n,open_seats:1}}if(n===`ready`){u(t,[`version`,`type`,`players`]);let e=ee(t.players,2);return{version:2,type:n,players:[e[0],e[1]]}}if(n===`paused`)return u(t,[`version`,`type`,`player_id`,`grace_ms`]),{version:2,type:n,player_id:p(t.player_id,`player_id`),grace_ms:d(t.grace_ms,`grace_ms`,0,6e4)};if(n===`resumed`)return u(t,[`version`,`type`,`player_id`]),{version:2,type:n,player_id:p(t.player_id,`player_id`)};if(n===`snapshot`)return u(t,[`version`,`type`,`payload`]),{version:2,type:n,payload:se(t.payload)};if(n===`error`)return u(t,[`version`,`type`,`code`]),{version:2,type:n,code:p(t.code,`error code`,80)};if(n===`final`)return ce(t,n);throw new i(`unsupported server message type`)}function ce(e,t){u(e,[`version`,`type`,`match_id`,`winner_id`,`method`,`round`,`scorecards`,`ratings`]);let n=l(e.ratings,`ratings`),r=Object.entries(n);if(r.length!==2)throw new i(`final requires two ratings`);let a=Object.create(null);for(let[e,t]of r){p(e,`rating player id`);let n=l(t,`rating`);u(n,[`before`,`after`]),a[e]={before:d(n.before,`before`),after:d(n.after,`after`)}}let o=m(e.winner_id,`winner_id`);if(o!==null&&!Object.hasOwn(a,o))throw new i(`winner absent from ratings`);let s=h(e.method,D,`finish method`);return ae(o,s),{version:2,type:t,match_id:p(e.match_id,`match_id`),winner_id:o,method:s,round:d(e.round,`round`,1,15),scorecards:ie(e.scorecards),ratings:a}}function le(e,t,n){return JSON.stringify({version:2,type:`input`,sequence:d(e,`sequence`),client_tick:d(t,`client tick`),move:{x:Math.max(-1e3,Math.min(1e3,Math.round(Number.isFinite(n.moveX)?n.moveX:0))),y:Math.max(-1e3,Math.min(1e3,Math.round(Number.isFinite(n.moveY)?n.moveY:0)))},defense:h(n.defense,C,`held defense`),actions:n.actions.slice(0,4).map(e=>{let t=e.id===void 0?{}:{id:e.id.slice(0,32)};return e.kind===`punch`?{kind:`punch`,hand:h(e.hand,_,`hand`),class:h(e.class,v,`class`),target:h(e.target,y,`target`),power:h(e.power,b,`power`),...t}:e.kind===`foul`?{kind:`foul`,foul:h(e.foul,T,`foul`),...t}:{kind:h(e.kind,w,`action`),...t}})})}function ue(e){let t=l(e,`bootstrap`);if(u(t,[`client_id`,`state`,`protocol`,`simulation`]),t.protocol!==2)throw new i(`unsupported protocol version`);let n=l(t.simulation,`simulation`);return u(n,[`tick_rate`,`ring_half_width`,`ring_half_height`]),{client_id:p(t.client_id,`client_id`,36),state:p(t.state,`state`,128),protocol:2,simulation:{tick_rate:d(n.tick_rate,`tick rate`,1,120),ring_half_width:d(n.ring_half_width,`ring width`,1),ring_half_height:d(n.ring_half_height,`ring height`,1)}}}function de(e){let t=l(e,`token response`);u(t,[`access_token`,`ticket`,`player`]);let n=l(t.player,`player`);return u(n,[`id`,`name`,`avatar`,`rating`]),{access_token:p(t.access_token,`access token`,4096),ticket:p(t.ticket,`ticket`,4096),player:{id:p(n.id,`id`),name:p(n.name,`name`,80),avatar:m(n.avatar,`avatar`,128),rating:d(n.rating,`rating`)}}}var j=class extends Error{code;reloadRequired;name=`ClientError`;constructor(e,t=!1){super(e),this.code=e,this.reloadRequired=t}};async function fe(e,t){if(!e.ok)throw new j(e.status===429?`rate_limited`:t);if(!(e.headers.get(`content-type`)??``).toLowerCase().startsWith(`application/json`))throw new j(t);try{return c(await e.text())}catch{throw new j(t)}}function pe(e=window.location.search){let t=new URLSearchParams(e).getAll(`instance_id`);if(t.length!==1||!/^[A-Za-z0-9_-]{1,255}$/u.test(t[0]??``))throw new j(`invalid_launch`);return t[0]}async function me(e,t){let n=new URL(`/api/hands/bootstrap`,window.location.origin);try{return ue(await fe(await fetch(n,{method:`POST`,credentials:`same-origin`,cache:`no-store`,headers:{"Content-Type":`application/json`},body:JSON.stringify({instance_id:e}),...t===void 0?{}:{signal:t}}),`bootstrap_failed`))}catch(e){throw e instanceof j?e:e instanceof i?new j(`invalid_bootstrap`):new j(`bootstrap_failed`)}}async function he(e,t,n){try{return de(await fe(await fetch(new URL(`/api/hands/token`,window.location.origin),{method:`POST`,credentials:`same-origin`,cache:`no-store`,headers:{"Content-Type":`application/json`},body:JSON.stringify({code:e,state:t}),...n===void 0?{}:{signal:n}}),`token_failed`))}catch(e){throw e instanceof j?e:e instanceof i?new j(`invalid_token_response`):new j(`token_failed`)}}function ge(e){return e instanceof j?e.code:e instanceof i?`protocol_error`:`unexpected_error`}var _e=typeof globalThis<`u`?globalThis:typeof window<`u`?window:typeof global<`u`?global:typeof self<`u`?self:{};function ve(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,`default`)?e.default:e}var ye={exports:{}},be;function xe(){return be?ye.exports:(be=1,(function(e){var t=Object.prototype.hasOwnProperty,n=`~`;function r(){}Object.create&&(r.prototype=Object.create(null),new r().__proto__||(n=!1));function i(e,t,n){this.fn=e,this.context=t,this.once=n||!1}function a(e,t,r,a,o){if(typeof r!=`function`)throw TypeError(`The listener must be a function`);var s=new i(r,a||e,o),c=n?n+t:t;return e._events[c]?e._events[c].fn?e._events[c]=[e._events[c],s]:e._events[c].push(s):(e._events[c]=s,e._eventsCount++),e}function o(e,t){--e._eventsCount===0?e._events=new r:delete e._events[t]}function s(){this._events=new r,this._eventsCount=0}s.prototype.eventNames=function(){var e=[],r,i;if(this._eventsCount===0)return e;for(i in r=this._events)t.call(r,i)&&e.push(n?i.slice(1):i);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(r)):e},s.prototype.listeners=function(e){var t=n?n+e:e,r=this._events[t];if(!r)return[];if(r.fn)return[r.fn];for(var i=0,a=r.length,o=Array(a);ie;function t(e){}e.assertIs=t;function n(e){throw Error()}e.assertNever=n,e.arrayToEnum=e=>{let t={};for(let n of e)t[n]=n;return t},e.getValidEnumValues=t=>{let n=e.objectKeys(t).filter(e=>typeof t[t[e]]!=`number`),r={};for(let e of n)r[e]=t[e];return e.objectValues(r)},e.objectValues=t=>e.objectKeys(t).map(function(e){return t[e]}),e.objectKeys=typeof Object.keys==`function`?e=>Object.keys(e):e=>{let t=[];for(let n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.push(n);return t},e.find=(e,t)=>{for(let n of e)if(t(n))return n},e.isInteger=typeof Number.isInteger==`function`?e=>Number.isInteger(e):e=>typeof e==`number`&&isFinite(e)&&Math.floor(e)===e;function r(e,t=` | `){return e.map(e=>typeof e==`string`?`'${e}'`:e).join(t)}e.joinValues=r,e.jsonStringifyReplacer=(e,t)=>typeof t==`bigint`?t.toString():t})(Ce||={});var we;(function(e){e.mergeShapes=(e,t)=>({...e,...t})})(we||={});var M=Ce.arrayToEnum([`string`,`nan`,`number`,`integer`,`float`,`boolean`,`date`,`bigint`,`symbol`,`function`,`undefined`,`null`,`array`,`object`,`unknown`,`promise`,`void`,`never`,`map`,`set`]),N=e=>{switch(typeof e){case`undefined`:return M.undefined;case`string`:return M.string;case`number`:return isNaN(e)?M.nan:M.number;case`boolean`:return M.boolean;case`function`:return M.function;case`bigint`:return M.bigint;case`symbol`:return M.symbol;case`object`:return Array.isArray(e)?M.array:e===null?M.null:e.then&&typeof e.then==`function`&&e.catch&&typeof e.catch==`function`?M.promise:typeof Map<`u`&&e instanceof Map?M.map:typeof Set<`u`&&e instanceof Set?M.set:typeof Date<`u`&&e instanceof Date?M.date:M.object;default:return M.unknown}},P=Ce.arrayToEnum([`invalid_type`,`invalid_literal`,`custom`,`invalid_union`,`invalid_union_discriminator`,`invalid_enum_value`,`unrecognized_keys`,`invalid_arguments`,`invalid_return_type`,`invalid_date`,`invalid_string`,`too_small`,`too_big`,`invalid_intersection_types`,`not_multiple_of`,`not_finite`]),Te=e=>JSON.stringify(e,null,2).replace(/"([^"]+)":/g,`$1:`),Ee=class e extends Error{constructor(e){super(),this.issues=[],this.addIssue=e=>{this.issues=[...this.issues,e]},this.addIssues=(e=[])=>{this.issues=[...this.issues,...e]};let t=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,t):this.__proto__=t,this.name=`ZodError`,this.issues=e}get errors(){return this.issues}format(e){let t=e||function(e){return e.message},n={_errors:[]},r=e=>{for(let i of e.issues)if(i.code===`invalid_union`)i.unionErrors.map(r);else if(i.code===`invalid_return_type`)r(i.returnTypeError);else if(i.code===`invalid_arguments`)r(i.argumentsError);else if(i.path.length===0)n._errors.push(t(i));else{let e=n,r=0;for(;re.message){let t={},n=[];for(let r of this.issues)r.path.length>0?(t[r.path[0]]=t[r.path[0]]||[],t[r.path[0]].push(e(r))):n.push(e(r));return{formErrors:n,fieldErrors:t}}get formErrors(){return this.flatten()}};Ee.create=e=>new Ee(e);var F=(e,t)=>{let n;switch(e.code){case P.invalid_type:n=e.received===M.undefined?`Required`:`Expected ${e.expected}, received ${e.received}`;break;case P.invalid_literal:n=`Invalid literal value, expected ${JSON.stringify(e.expected,Ce.jsonStringifyReplacer)}`;break;case P.unrecognized_keys:n=`Unrecognized key(s) in object: ${Ce.joinValues(e.keys,`, `)}`;break;case P.invalid_union:n=`Invalid input`;break;case P.invalid_union_discriminator:n=`Invalid discriminator value. Expected ${Ce.joinValues(e.options)}`;break;case P.invalid_enum_value:n=`Invalid enum value. Expected ${Ce.joinValues(e.options)}, received '${e.received}'`;break;case P.invalid_arguments:n=`Invalid function arguments`;break;case P.invalid_return_type:n=`Invalid function return type`;break;case P.invalid_date:n=`Invalid date`;break;case P.invalid_string:typeof e.validation==`object`?`includes`in e.validation?(n=`Invalid input: must include "${e.validation.includes}"`,typeof e.validation.position==`number`&&(n=`${n} at one or more positions greater than or equal to ${e.validation.position}`)):`startsWith`in e.validation?n=`Invalid input: must start with "${e.validation.startsWith}"`:`endsWith`in e.validation?n=`Invalid input: must end with "${e.validation.endsWith}"`:Ce.assertNever(e.validation):n=e.validation===`regex`?`Invalid`:`Invalid ${e.validation}`;break;case P.too_small:n=e.type===`array`?`Array must contain ${e.exact?`exactly`:e.inclusive?`at least`:`more than`} ${e.minimum} element(s)`:e.type===`string`?`String must contain ${e.exact?`exactly`:e.inclusive?`at least`:`over`} ${e.minimum} character(s)`:e.type===`number`?`Number must be ${e.exact?`exactly equal to `:e.inclusive?`greater than or equal to `:`greater than `}${e.minimum}`:e.type===`date`?`Date must be ${e.exact?`exactly equal to `:e.inclusive?`greater than or equal to `:`greater than `}${new Date(Number(e.minimum))}`:`Invalid input`;break;case P.too_big:n=e.type===`array`?`Array must contain ${e.exact?`exactly`:e.inclusive?`at most`:`less than`} ${e.maximum} element(s)`:e.type===`string`?`String must contain ${e.exact?`exactly`:e.inclusive?`at most`:`under`} ${e.maximum} character(s)`:e.type===`number`?`Number must be ${e.exact?`exactly`:e.inclusive?`less than or equal to`:`less than`} ${e.maximum}`:e.type===`bigint`?`BigInt must be ${e.exact?`exactly`:e.inclusive?`less than or equal to`:`less than`} ${e.maximum}`:e.type===`date`?`Date must be ${e.exact?`exactly`:e.inclusive?`smaller than or equal to`:`smaller than`} ${new Date(Number(e.maximum))}`:`Invalid input`;break;case P.custom:n=`Invalid input`;break;case P.invalid_intersection_types:n=`Intersection results could not be merged`;break;case P.not_multiple_of:n=`Number must be a multiple of ${e.multipleOf}`;break;case P.not_finite:n=`Number must be finite`;break;default:n=t.defaultError,Ce.assertNever(e)}return{message:n}},De=F;function I(e){De=e}function Oe(){return De}var ke=e=>{let{data:t,path:n,errorMaps:r,issueData:i}=e,a=[...n,...i.path||[]],o={...i,path:a};if(i.message!==void 0)return{...i,path:a,message:i.message};let s=``,c=r.filter(e=>!!e).slice().reverse();for(let e of c)s=e(o,{data:t,defaultError:s}).message;return{...i,path:a,message:s}},Ae=[];function L(e,t){let n=Oe(),r=ke({issueData:t,data:e.data,path:e.path,errorMaps:[e.common.contextualErrorMap,e.schemaErrorMap,n,n===F?void 0:F].filter(e=>!!e)});e.common.issues.push(r)}var je=class e{constructor(){this.value=`valid`}dirty(){this.value===`valid`&&(this.value=`dirty`)}abort(){this.value!==`aborted`&&(this.value=`aborted`)}static mergeArray(e,t){let n=[];for(let r of t){if(r.status===`aborted`)return R;r.status===`dirty`&&e.dirty(),n.push(r.value)}return{status:e.value,value:n}}static async mergeObjectAsync(t,n){let r=[];for(let e of n){let t=await e.key,n=await e.value;r.push({key:t,value:n})}return e.mergeObjectSync(t,r)}static mergeObjectSync(e,t){let n={};for(let r of t){let{key:t,value:i}=r;if(t.status===`aborted`||i.status===`aborted`)return R;t.status===`dirty`&&e.dirty(),i.status===`dirty`&&e.dirty(),t.value!==`__proto__`&&(i.value!==void 0||r.alwaysSet)&&(n[t.value]=i.value)}return{status:e.value,value:n}}},R=Object.freeze({status:`aborted`}),Me=e=>({status:`dirty`,value:e}),Ne=e=>({status:`valid`,value:e}),Pe=e=>e.status===`aborted`,Fe=e=>e.status===`dirty`,Ie=e=>e.status===`valid`,Le=e=>typeof Promise<`u`&&e instanceof Promise;function Re(e,t,n,r){if(typeof t==`function`?e!==t||!r:!t.has(e))throw TypeError(`Cannot read private member from an object whose class did not declare it`);return t.get(e)}function ze(e,t,n,r,i){if(typeof t==`function`?e!==t||!i:!t.has(e))throw TypeError(`Cannot write private member to an object whose class did not declare it`);return t.set(e,n),n}var z;(function(e){e.errToObj=e=>typeof e==`string`?{message:e}:e||{},e.toString=e=>typeof e==`string`?e:e?.message})(z||={});var Be,Ve,He=class{constructor(e,t,n,r){this._cachedPath=[],this.parent=e,this.data=t,this._path=n,this._key=r}get path(){return this._cachedPath.length||(this._key instanceof Array?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},Ue=(e,t)=>{if(Ie(t))return{success:!0,data:t.value};if(!e.common.issues.length)throw Error(`Validation failed but no issues detected.`);return{success:!1,get error(){if(this._error)return this._error;let t=new Ee(e.common.issues);return this._error=t,this._error}}};function B(e){if(!e)return{};let{errorMap:t,invalid_type_error:n,required_error:r,description:i}=e;if(t&&(n||r))throw Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return t?{errorMap:t,description:i}:{errorMap:(t,i)=>{let{message:a}=e;return t.code===`invalid_enum_value`?{message:a??i.defaultError}:i.data===void 0?{message:a??r??i.defaultError}:t.code===`invalid_type`?{message:a??n??i.defaultError}:{message:i.defaultError}},description:i}}var We=class{constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this)}get description(){return this._def.description}_getType(e){return N(e.data)}_getOrReturnCtx(e,t){return t||{common:e.parent.common,data:e.data,parsedType:N(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new je,ctx:{common:e.parent.common,data:e.data,parsedType:N(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let t=this._parse(e);if(Le(t))throw Error(`Synchronous parse encountered promise.`);return t}_parseAsync(e){let t=this._parse(e);return Promise.resolve(t)}parse(e,t){let n=this.safeParse(e,t);if(n.success)return n.data;throw n.error}safeParse(e,t){let n={common:{issues:[],async:t?.async??!1,contextualErrorMap:t?.errorMap},path:t?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:N(e)};return Ue(n,this._parseSync({data:e,path:n.path,parent:n}))}async parseAsync(e,t){let n=await this.safeParseAsync(e,t);if(n.success)return n.data;throw n.error}async safeParseAsync(e,t){let n={common:{issues:[],contextualErrorMap:t?.errorMap,async:!0},path:t?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:N(e)},r=this._parse({data:e,path:n.path,parent:n});return Ue(n,await(Le(r)?r:Promise.resolve(r)))}refine(e,t){let n=e=>typeof t==`string`||t===void 0?{message:t}:typeof t==`function`?t(e):t;return this._refinement((t,r)=>{let i=e(t),a=()=>r.addIssue({code:P.custom,...n(t)});return typeof Promise<`u`&&i instanceof Promise?i.then(e=>e?!0:(a(),!1)):i?!0:(a(),!1)})}refinement(e,t){return this._refinement((n,r)=>e(n)?!0:(r.addIssue(typeof t==`function`?t(n,r):t),!1))}_refinement(e){return new Vt({schema:this,typeName:$t.ZodEffects,effect:{type:`refinement`,refinement:e}})}superRefine(e){return this._refinement(e)}optional(){return Ht.create(this,this._def)}nullable(){return Ut.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return St.create(this,this._def)}promise(){return Bt.create(this,this._def)}or(e){return Tt.create([this,e],this._def)}and(e){return kt.create(this,e,this._def)}transform(e){return new Vt({...B(this._def),schema:this,typeName:$t.ZodEffects,effect:{type:`transform`,transform:e}})}default(e){let t=typeof e==`function`?e:()=>e;return new Wt({...B(this._def),innerType:this,defaultValue:t,typeName:$t.ZodDefault})}brand(){return new Jt({typeName:$t.ZodBranded,type:this,...B(this._def)})}catch(e){let t=typeof e==`function`?e:()=>e;return new Gt({...B(this._def),innerType:this,catchValue:t,typeName:$t.ZodCatch})}describe(e){let t=this.constructor;return new t({...this._def,description:e})}pipe(e){return Yt.create(this,e)}readonly(){return Xt.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},Ge=/^c[^\s-]{8,}$/i,Ke=/^[0-9a-z]+$/,qe=/^[0-9A-HJKMNP-TV-Z]{26}$/,Je=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,Ye=/^[a-z0-9_-]{21}$/i,Xe=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,Ze=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,Qe=`^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$`,$e,et=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,tt=/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,nt=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,rt=`((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))`,it=RegExp(`^${rt}$`);function at(e){let t=`([01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d`;return e.precision?t=`${t}\\.\\d{${e.precision}}`:e.precision??(t=`${t}(\\.\\d+)?`),t}function ot(e){return RegExp(`^${at(e)}$`)}function st(e){let t=`${rt}T${at(e)}`,n=[];return n.push(e.local?`Z?`:`Z`),e.offset&&n.push(`([+-]\\d{2}:?\\d{2})`),t=`${t}(${n.join(`|`)})`,RegExp(`^${t}$`)}function ct(e,t){return!!((t===`v4`||!t)&&et.test(e)||(t===`v6`||!t)&&tt.test(e))}var lt=class e extends We{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==M.string){let t=this._getOrReturnCtx(e);return L(t,{code:P.invalid_type,expected:M.string,received:t.parsedType}),R}let t=new je,n;for(let r of this._def.checks)if(r.kind===`min`)e.data.lengthr.value&&(n=this._getOrReturnCtx(e,n),L(n,{code:P.too_big,maximum:r.value,type:`string`,inclusive:!0,exact:!1,message:r.message}),t.dirty());else if(r.kind===`length`){let i=e.data.length>r.value,a=e.data.lengthe.test(t),{validation:t,code:P.invalid_string,...z.errToObj(n)})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}email(e){return this._addCheck({kind:`email`,...z.errToObj(e)})}url(e){return this._addCheck({kind:`url`,...z.errToObj(e)})}emoji(e){return this._addCheck({kind:`emoji`,...z.errToObj(e)})}uuid(e){return this._addCheck({kind:`uuid`,...z.errToObj(e)})}nanoid(e){return this._addCheck({kind:`nanoid`,...z.errToObj(e)})}cuid(e){return this._addCheck({kind:`cuid`,...z.errToObj(e)})}cuid2(e){return this._addCheck({kind:`cuid2`,...z.errToObj(e)})}ulid(e){return this._addCheck({kind:`ulid`,...z.errToObj(e)})}base64(e){return this._addCheck({kind:`base64`,...z.errToObj(e)})}ip(e){return this._addCheck({kind:`ip`,...z.errToObj(e)})}datetime(e){return typeof e==`string`?this._addCheck({kind:`datetime`,precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:`datetime`,precision:e?.precision===void 0?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...z.errToObj(e?.message)})}date(e){return this._addCheck({kind:`date`,message:e})}time(e){return typeof e==`string`?this._addCheck({kind:`time`,precision:null,message:e}):this._addCheck({kind:`time`,precision:e?.precision===void 0?null:e?.precision,...z.errToObj(e?.message)})}duration(e){return this._addCheck({kind:`duration`,...z.errToObj(e)})}regex(e,t){return this._addCheck({kind:`regex`,regex:e,...z.errToObj(t)})}includes(e,t){return this._addCheck({kind:`includes`,value:e,position:t?.position,...z.errToObj(t?.message)})}startsWith(e,t){return this._addCheck({kind:`startsWith`,value:e,...z.errToObj(t)})}endsWith(e,t){return this._addCheck({kind:`endsWith`,value:e,...z.errToObj(t)})}min(e,t){return this._addCheck({kind:`min`,value:e,...z.errToObj(t)})}max(e,t){return this._addCheck({kind:`max`,value:e,...z.errToObj(t)})}length(e,t){return this._addCheck({kind:`length`,value:e,...z.errToObj(t)})}nonempty(e){return this.min(1,z.errToObj(e))}trim(){return new e({...this._def,checks:[...this._def.checks,{kind:`trim`}]})}toLowerCase(){return new e({...this._def,checks:[...this._def.checks,{kind:`toLowerCase`}]})}toUpperCase(){return new e({...this._def,checks:[...this._def.checks,{kind:`toUpperCase`}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind===`datetime`)}get isDate(){return!!this._def.checks.find(e=>e.kind===`date`)}get isTime(){return!!this._def.checks.find(e=>e.kind===`time`)}get isDuration(){return!!this._def.checks.find(e=>e.kind===`duration`)}get isEmail(){return!!this._def.checks.find(e=>e.kind===`email`)}get isURL(){return!!this._def.checks.find(e=>e.kind===`url`)}get isEmoji(){return!!this._def.checks.find(e=>e.kind===`emoji`)}get isUUID(){return!!this._def.checks.find(e=>e.kind===`uuid`)}get isNANOID(){return!!this._def.checks.find(e=>e.kind===`nanoid`)}get isCUID(){return!!this._def.checks.find(e=>e.kind===`cuid`)}get isCUID2(){return!!this._def.checks.find(e=>e.kind===`cuid2`)}get isULID(){return!!this._def.checks.find(e=>e.kind===`ulid`)}get isIP(){return!!this._def.checks.find(e=>e.kind===`ip`)}get isBase64(){return!!this._def.checks.find(e=>e.kind===`base64`)}get minLength(){let e=null;for(let t of this._def.checks)t.kind===`min`&&(e===null||t.value>e)&&(e=t.value);return e}get maxLength(){let e=null;for(let t of this._def.checks)t.kind===`max`&&(e===null||t.valuenew lt({checks:[],typeName:$t.ZodString,coerce:e?.coerce??!1,...B(e)});function ut(e,t){let n=(e.toString().split(`.`)[1]||``).length,r=(t.toString().split(`.`)[1]||``).length,i=n>r?n:r;return parseInt(e.toFixed(i).replace(`.`,``))%parseInt(t.toFixed(i).replace(`.`,``))/10**i}var dt=class e extends We{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==M.number){let t=this._getOrReturnCtx(e);return L(t,{code:P.invalid_type,expected:M.number,received:t.parsedType}),R}let t,n=new je;for(let r of this._def.checks)r.kind===`int`?Ce.isInteger(e.data)||(t=this._getOrReturnCtx(e,t),L(t,{code:P.invalid_type,expected:`integer`,received:`float`,message:r.message}),n.dirty()):r.kind===`min`?(r.inclusive?e.datar.value:e.data>=r.value)&&(t=this._getOrReturnCtx(e,t),L(t,{code:P.too_big,maximum:r.value,type:`number`,inclusive:r.inclusive,exact:!1,message:r.message}),n.dirty()):r.kind===`multipleOf`?ut(e.data,r.value)!==0&&(t=this._getOrReturnCtx(e,t),L(t,{code:P.not_multiple_of,multipleOf:r.value,message:r.message}),n.dirty()):r.kind===`finite`?Number.isFinite(e.data)||(t=this._getOrReturnCtx(e,t),L(t,{code:P.not_finite,message:r.message}),n.dirty()):Ce.assertNever(r);return{status:n.value,value:e.data}}gte(e,t){return this.setLimit(`min`,e,!0,z.toString(t))}gt(e,t){return this.setLimit(`min`,e,!1,z.toString(t))}lte(e,t){return this.setLimit(`max`,e,!0,z.toString(t))}lt(e,t){return this.setLimit(`max`,e,!1,z.toString(t))}setLimit(t,n,r,i){return new e({...this._def,checks:[...this._def.checks,{kind:t,value:n,inclusive:r,message:z.toString(i)}]})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}int(e){return this._addCheck({kind:`int`,message:z.toString(e)})}positive(e){return this._addCheck({kind:`min`,value:0,inclusive:!1,message:z.toString(e)})}negative(e){return this._addCheck({kind:`max`,value:0,inclusive:!1,message:z.toString(e)})}nonpositive(e){return this._addCheck({kind:`max`,value:0,inclusive:!0,message:z.toString(e)})}nonnegative(e){return this._addCheck({kind:`min`,value:0,inclusive:!0,message:z.toString(e)})}multipleOf(e,t){return this._addCheck({kind:`multipleOf`,value:e,message:z.toString(t)})}finite(e){return this._addCheck({kind:`finite`,message:z.toString(e)})}safe(e){return this._addCheck({kind:`min`,inclusive:!0,value:-(2**53-1),message:z.toString(e)})._addCheck({kind:`max`,inclusive:!0,value:2**53-1,message:z.toString(e)})}get minValue(){let e=null;for(let t of this._def.checks)t.kind===`min`&&(e===null||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(let t of this._def.checks)t.kind===`max`&&(e===null||t.valuee.kind===`int`||e.kind===`multipleOf`&&Ce.isInteger(e.value))}get isFinite(){let e=null,t=null;for(let n of this._def.checks)if(n.kind===`finite`||n.kind===`int`||n.kind===`multipleOf`)return!0;else n.kind===`min`?(t===null||n.value>t)&&(t=n.value):n.kind===`max`&&(e===null||n.valuenew dt({checks:[],typeName:$t.ZodNumber,coerce:e?.coerce||!1,...B(e)});var ft=class e extends We{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce&&(e.data=BigInt(e.data)),this._getType(e)!==M.bigint){let t=this._getOrReturnCtx(e);return L(t,{code:P.invalid_type,expected:M.bigint,received:t.parsedType}),R}let t,n=new je;for(let r of this._def.checks)r.kind===`min`?(r.inclusive?e.datar.value:e.data>=r.value)&&(t=this._getOrReturnCtx(e,t),L(t,{code:P.too_big,type:`bigint`,maximum:r.value,inclusive:r.inclusive,message:r.message}),n.dirty()):r.kind===`multipleOf`?e.data%r.value!==BigInt(0)&&(t=this._getOrReturnCtx(e,t),L(t,{code:P.not_multiple_of,multipleOf:r.value,message:r.message}),n.dirty()):Ce.assertNever(r);return{status:n.value,value:e.data}}gte(e,t){return this.setLimit(`min`,e,!0,z.toString(t))}gt(e,t){return this.setLimit(`min`,e,!1,z.toString(t))}lte(e,t){return this.setLimit(`max`,e,!0,z.toString(t))}lt(e,t){return this.setLimit(`max`,e,!1,z.toString(t))}setLimit(t,n,r,i){return new e({...this._def,checks:[...this._def.checks,{kind:t,value:n,inclusive:r,message:z.toString(i)}]})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}positive(e){return this._addCheck({kind:`min`,value:BigInt(0),inclusive:!1,message:z.toString(e)})}negative(e){return this._addCheck({kind:`max`,value:BigInt(0),inclusive:!1,message:z.toString(e)})}nonpositive(e){return this._addCheck({kind:`max`,value:BigInt(0),inclusive:!0,message:z.toString(e)})}nonnegative(e){return this._addCheck({kind:`min`,value:BigInt(0),inclusive:!0,message:z.toString(e)})}multipleOf(e,t){return this._addCheck({kind:`multipleOf`,value:e,message:z.toString(t)})}get minValue(){let e=null;for(let t of this._def.checks)t.kind===`min`&&(e===null||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(let t of this._def.checks)t.kind===`max`&&(e===null||t.valuenew ft({checks:[],typeName:$t.ZodBigInt,coerce:e?.coerce??!1,...B(e)});var pt=class extends We{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==M.boolean){let t=this._getOrReturnCtx(e);return L(t,{code:P.invalid_type,expected:M.boolean,received:t.parsedType}),R}return Ne(e.data)}};pt.create=e=>new pt({typeName:$t.ZodBoolean,coerce:e?.coerce||!1,...B(e)});var mt=class e extends We{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==M.date){let t=this._getOrReturnCtx(e);return L(t,{code:P.invalid_type,expected:M.date,received:t.parsedType}),R}if(isNaN(e.data.getTime()))return L(this._getOrReturnCtx(e),{code:P.invalid_date}),R;let t=new je,n;for(let r of this._def.checks)r.kind===`min`?e.data.getTime()r.value&&(n=this._getOrReturnCtx(e,n),L(n,{code:P.too_big,message:r.message,inclusive:!0,exact:!1,maximum:r.value,type:`date`}),t.dirty()):Ce.assertNever(r);return{status:t.value,value:new Date(e.data.getTime())}}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}min(e,t){return this._addCheck({kind:`min`,value:e.getTime(),message:z.toString(t)})}max(e,t){return this._addCheck({kind:`max`,value:e.getTime(),message:z.toString(t)})}get minDate(){let e=null;for(let t of this._def.checks)t.kind===`min`&&(e===null||t.value>e)&&(e=t.value);return e==null?null:new Date(e)}get maxDate(){let e=null;for(let t of this._def.checks)t.kind===`max`&&(e===null||t.valuenew mt({checks:[],coerce:e?.coerce||!1,typeName:$t.ZodDate,...B(e)});var ht=class extends We{_parse(e){if(this._getType(e)!==M.symbol){let t=this._getOrReturnCtx(e);return L(t,{code:P.invalid_type,expected:M.symbol,received:t.parsedType}),R}return Ne(e.data)}};ht.create=e=>new ht({typeName:$t.ZodSymbol,...B(e)});var gt=class extends We{_parse(e){if(this._getType(e)!==M.undefined){let t=this._getOrReturnCtx(e);return L(t,{code:P.invalid_type,expected:M.undefined,received:t.parsedType}),R}return Ne(e.data)}};gt.create=e=>new gt({typeName:$t.ZodUndefined,...B(e)});var _t=class extends We{_parse(e){if(this._getType(e)!==M.null){let t=this._getOrReturnCtx(e);return L(t,{code:P.invalid_type,expected:M.null,received:t.parsedType}),R}return Ne(e.data)}};_t.create=e=>new _t({typeName:$t.ZodNull,...B(e)});var vt=class extends We{constructor(){super(...arguments),this._any=!0}_parse(e){return Ne(e.data)}};vt.create=e=>new vt({typeName:$t.ZodAny,...B(e)});var yt=class extends We{constructor(){super(...arguments),this._unknown=!0}_parse(e){return Ne(e.data)}};yt.create=e=>new yt({typeName:$t.ZodUnknown,...B(e)});var bt=class extends We{_parse(e){let t=this._getOrReturnCtx(e);return L(t,{code:P.invalid_type,expected:M.never,received:t.parsedType}),R}};bt.create=e=>new bt({typeName:$t.ZodNever,...B(e)});var xt=class extends We{_parse(e){if(this._getType(e)!==M.undefined){let t=this._getOrReturnCtx(e);return L(t,{code:P.invalid_type,expected:M.void,received:t.parsedType}),R}return Ne(e.data)}};xt.create=e=>new xt({typeName:$t.ZodVoid,...B(e)});var St=class e extends We{_parse(e){let{ctx:t,status:n}=this._processInputParams(e),r=this._def;if(t.parsedType!==M.array)return L(t,{code:P.invalid_type,expected:M.array,received:t.parsedType}),R;if(r.exactLength!==null){let e=t.data.length>r.exactLength.value,i=t.data.lengthr.maxLength.value&&(L(t,{code:P.too_big,maximum:r.maxLength.value,type:`array`,inclusive:!0,exact:!1,message:r.maxLength.message}),n.dirty()),t.common.async)return Promise.all([...t.data].map((e,n)=>r.type._parseAsync(new He(t,e,t.path,n)))).then(e=>je.mergeArray(n,e));let i=[...t.data].map((e,n)=>r.type._parseSync(new He(t,e,t.path,n)));return je.mergeArray(n,i)}get element(){return this._def.type}min(t,n){return new e({...this._def,minLength:{value:t,message:z.toString(n)}})}max(t,n){return new e({...this._def,maxLength:{value:t,message:z.toString(n)}})}length(t,n){return new e({...this._def,exactLength:{value:t,message:z.toString(n)}})}nonempty(e){return this.min(1,e)}};St.create=(e,t)=>new St({type:e,minLength:null,maxLength:null,exactLength:null,typeName:$t.ZodArray,...B(t)});function Ct(e){if(e instanceof wt){let t={};for(let n in e.shape){let r=e.shape[n];t[n]=Ht.create(Ct(r))}return new wt({...e._def,shape:()=>t})}else if(e instanceof St)return new St({...e._def,type:Ct(e.element)});else if(e instanceof Ht)return Ht.create(Ct(e.unwrap()));else if(e instanceof Ut)return Ut.create(Ct(e.unwrap()));else if(e instanceof At)return At.create(e.items.map(e=>Ct(e)));else return e}var wt=class e extends We{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),t=Ce.objectKeys(e);return this._cached={shape:e,keys:t}}_parse(e){if(this._getType(e)!==M.object){let t=this._getOrReturnCtx(e);return L(t,{code:P.invalid_type,expected:M.object,received:t.parsedType}),R}let{status:t,ctx:n}=this._processInputParams(e),{shape:r,keys:i}=this._getCached(),a=[];if(!(this._def.catchall instanceof bt&&this._def.unknownKeys===`strip`))for(let e in n.data)i.includes(e)||a.push(e);let o=[];for(let e of i){let t=r[e],i=n.data[e];o.push({key:{status:`valid`,value:e},value:t._parse(new He(n,i,n.path,e)),alwaysSet:e in n.data})}if(this._def.catchall instanceof bt){let e=this._def.unknownKeys;if(e===`passthrough`)for(let e of a)o.push({key:{status:`valid`,value:e},value:{status:`valid`,value:n.data[e]}});else if(e===`strict`)a.length>0&&(L(n,{code:P.unrecognized_keys,keys:a}),t.dirty());else if(e!==`strip`)throw Error(`Internal ZodObject error: invalid unknownKeys value.`)}else{let e=this._def.catchall;for(let t of a){let r=n.data[t];o.push({key:{status:`valid`,value:t},value:e._parse(new He(n,r,n.path,t)),alwaysSet:t in n.data})}}return n.common.async?Promise.resolve().then(async()=>{let e=[];for(let t of o){let n=await t.key,r=await t.value;e.push({key:n,value:r,alwaysSet:t.alwaysSet})}return e}).then(e=>je.mergeObjectSync(t,e)):je.mergeObjectSync(t,o)}get shape(){return this._def.shape()}strict(t){return z.errToObj,new e({...this._def,unknownKeys:`strict`,...t===void 0?{}:{errorMap:(e,n)=>{var r;let i=(r=this._def).errorMap?.call(r,e,n).message??n.defaultError;return e.code===`unrecognized_keys`?{message:z.errToObj(t).message??i}:{message:i}}}})}strip(){return new e({...this._def,unknownKeys:`strip`})}passthrough(){return new e({...this._def,unknownKeys:`passthrough`})}extend(t){return new e({...this._def,shape:()=>({...this._def.shape(),...t})})}merge(t){return new e({unknownKeys:t._def.unknownKeys,catchall:t._def.catchall,shape:()=>({...this._def.shape(),...t._def.shape()}),typeName:$t.ZodObject})}setKey(e,t){return this.augment({[e]:t})}catchall(t){return new e({...this._def,catchall:t})}pick(t){let n={};return Ce.objectKeys(t).forEach(e=>{t[e]&&this.shape[e]&&(n[e]=this.shape[e])}),new e({...this._def,shape:()=>n})}omit(t){let n={};return Ce.objectKeys(this.shape).forEach(e=>{t[e]||(n[e]=this.shape[e])}),new e({...this._def,shape:()=>n})}deepPartial(){return Ct(this)}partial(t){let n={};return Ce.objectKeys(this.shape).forEach(e=>{let r=this.shape[e];t&&!t[e]?n[e]=r:n[e]=r.optional()}),new e({...this._def,shape:()=>n})}required(t){let n={};return Ce.objectKeys(this.shape).forEach(e=>{if(t&&!t[e])n[e]=this.shape[e];else{let t=this.shape[e];for(;t instanceof Ht;)t=t._def.innerType;n[e]=t}}),new e({...this._def,shape:()=>n})}keyof(){return Lt(Ce.objectKeys(this.shape))}};wt.create=(e,t)=>new wt({shape:()=>e,unknownKeys:`strip`,catchall:bt.create(),typeName:$t.ZodObject,...B(t)}),wt.strictCreate=(e,t)=>new wt({shape:()=>e,unknownKeys:`strict`,catchall:bt.create(),typeName:$t.ZodObject,...B(t)}),wt.lazycreate=(e,t)=>new wt({shape:e,unknownKeys:`strip`,catchall:bt.create(),typeName:$t.ZodObject,...B(t)});var Tt=class extends We{_parse(e){let{ctx:t}=this._processInputParams(e),n=this._def.options;function r(e){for(let t of e)if(t.result.status===`valid`)return t.result;for(let n of e)if(n.result.status===`dirty`)return t.common.issues.push(...n.ctx.common.issues),n.result;let n=e.map(e=>new Ee(e.ctx.common.issues));return L(t,{code:P.invalid_union,unionErrors:n}),R}if(t.common.async)return Promise.all(n.map(async e=>{let n={...t,common:{...t.common,issues:[]},parent:null};return{result:await e._parseAsync({data:t.data,path:t.path,parent:n}),ctx:n}})).then(r);{let e,r=[];for(let i of n){let n={...t,common:{...t.common,issues:[]},parent:null},a=i._parseSync({data:t.data,path:t.path,parent:n});if(a.status===`valid`)return a;a.status===`dirty`&&!e&&(e={result:a,ctx:n}),n.common.issues.length&&r.push(n.common.issues)}if(e)return t.common.issues.push(...e.ctx.common.issues),e.result;let i=r.map(e=>new Ee(e));return L(t,{code:P.invalid_union,unionErrors:i}),R}}get options(){return this._def.options}};Tt.create=(e,t)=>new Tt({options:e,typeName:$t.ZodUnion,...B(t)});var Et=e=>e instanceof Ft?Et(e.schema):e instanceof Vt?Et(e.innerType()):e instanceof It?[e.value]:e instanceof Rt?e.options:e instanceof zt?Ce.objectValues(e.enum):e instanceof Wt?Et(e._def.innerType):e instanceof gt?[void 0]:e instanceof _t?[null]:e instanceof Ht?[void 0,...Et(e.unwrap())]:e instanceof Ut?[null,...Et(e.unwrap())]:e instanceof Jt||e instanceof Xt?Et(e.unwrap()):e instanceof Gt?Et(e._def.innerType):[],Dt=class e extends We{_parse(e){let{ctx:t}=this._processInputParams(e);if(t.parsedType!==M.object)return L(t,{code:P.invalid_type,expected:M.object,received:t.parsedType}),R;let n=this.discriminator,r=t.data[n],i=this.optionsMap.get(r);return i?t.common.async?i._parseAsync({data:t.data,path:t.path,parent:t}):i._parseSync({data:t.data,path:t.path,parent:t}):(L(t,{code:P.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),R)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(t,n,r){let i=new Map;for(let e of n){let n=Et(e.shape[t]);if(!n.length)throw Error(`A discriminator value for key \`${t}\` could not be extracted from all schema options`);for(let r of n){if(i.has(r))throw Error(`Discriminator property ${String(t)} has duplicate value ${String(r)}`);i.set(r,e)}}return new e({typeName:$t.ZodDiscriminatedUnion,discriminator:t,options:n,optionsMap:i,...B(r)})}};function Ot(e,t){let n=N(e),r=N(t);if(e===t)return{valid:!0,data:e};if(n===M.object&&r===M.object){let n=Ce.objectKeys(t),r=Ce.objectKeys(e).filter(e=>n.indexOf(e)!==-1),i={...e,...t};for(let n of r){let r=Ot(e[n],t[n]);if(!r.valid)return{valid:!1};i[n]=r.data}return{valid:!0,data:i}}else if(n===M.array&&r===M.array){if(e.length!==t.length)return{valid:!1};let n=[];for(let r=0;r{if(Pe(e)||Pe(r))return R;let i=Ot(e.value,r.value);return i.valid?((Fe(e)||Fe(r))&&t.dirty(),{status:t.value,value:i.data}):(L(n,{code:P.invalid_intersection_types}),R)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([e,t])=>r(e,t)):r(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};kt.create=(e,t,n)=>new kt({left:e,right:t,typeName:$t.ZodIntersection,...B(n)});var At=class e extends We{_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==M.array)return L(n,{code:P.invalid_type,expected:M.array,received:n.parsedType}),R;if(n.data.lengththis._def.items.length&&(L(n,{code:P.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:`array`}),t.dirty());let r=[...n.data].map((e,t)=>{let r=this._def.items[t]||this._def.rest;return r?r._parse(new He(n,e,n.path,t)):null}).filter(e=>!!e);return n.common.async?Promise.all(r).then(e=>je.mergeArray(t,e)):je.mergeArray(t,r)}get items(){return this._def.items}rest(t){return new e({...this._def,rest:t})}};At.create=(e,t)=>{if(!Array.isArray(e))throw Error(`You must pass an array of schemas to z.tuple([ ... ])`);return new At({items:e,typeName:$t.ZodTuple,rest:null,...B(t)})};var jt=class e extends We{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==M.object)return L(n,{code:P.invalid_type,expected:M.object,received:n.parsedType}),R;let r=[],i=this._def.keyType,a=this._def.valueType;for(let e in n.data)r.push({key:i._parse(new He(n,e,n.path,e)),value:a._parse(new He(n,n.data[e],n.path,e)),alwaysSet:e in n.data});return n.common.async?je.mergeObjectAsync(t,r):je.mergeObjectSync(t,r)}get element(){return this._def.valueType}static create(t,n,r){return n instanceof We?new e({keyType:t,valueType:n,typeName:$t.ZodRecord,...B(r)}):new e({keyType:lt.create(),valueType:t,typeName:$t.ZodRecord,...B(n)})}},Mt=class extends We{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==M.map)return L(n,{code:P.invalid_type,expected:M.map,received:n.parsedType}),R;let r=this._def.keyType,i=this._def.valueType,a=[...n.data.entries()].map(([e,t],a)=>({key:r._parse(new He(n,e,n.path,[a,`key`])),value:i._parse(new He(n,t,n.path,[a,`value`]))}));if(n.common.async){let e=new Map;return Promise.resolve().then(async()=>{for(let n of a){let r=await n.key,i=await n.value;if(r.status===`aborted`||i.status===`aborted`)return R;(r.status===`dirty`||i.status===`dirty`)&&t.dirty(),e.set(r.value,i.value)}return{status:t.value,value:e}})}else{let e=new Map;for(let n of a){let r=n.key,i=n.value;if(r.status===`aborted`||i.status===`aborted`)return R;(r.status===`dirty`||i.status===`dirty`)&&t.dirty(),e.set(r.value,i.value)}return{status:t.value,value:e}}}};Mt.create=(e,t,n)=>new Mt({valueType:t,keyType:e,typeName:$t.ZodMap,...B(n)});var Nt=class e extends We{_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==M.set)return L(n,{code:P.invalid_type,expected:M.set,received:n.parsedType}),R;let r=this._def;r.minSize!==null&&n.data.sizer.maxSize.value&&(L(n,{code:P.too_big,maximum:r.maxSize.value,type:`set`,inclusive:!0,exact:!1,message:r.maxSize.message}),t.dirty());let i=this._def.valueType;function a(e){let n=new Set;for(let r of e){if(r.status===`aborted`)return R;r.status===`dirty`&&t.dirty(),n.add(r.value)}return{status:t.value,value:n}}let o=[...n.data.values()].map((e,t)=>i._parse(new He(n,e,n.path,t)));return n.common.async?Promise.all(o).then(e=>a(e)):a(o)}min(t,n){return new e({...this._def,minSize:{value:t,message:z.toString(n)}})}max(t,n){return new e({...this._def,maxSize:{value:t,message:z.toString(n)}})}size(e,t){return this.min(e,t).max(e,t)}nonempty(e){return this.min(1,e)}};Nt.create=(e,t)=>new Nt({valueType:e,minSize:null,maxSize:null,typeName:$t.ZodSet,...B(t)});var Pt=class e extends We{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:t}=this._processInputParams(e);if(t.parsedType!==M.function)return L(t,{code:P.invalid_type,expected:M.function,received:t.parsedType}),R;function n(e,n){return ke({data:e,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,Oe(),F].filter(e=>!!e),issueData:{code:P.invalid_arguments,argumentsError:n}})}function r(e,n){return ke({data:e,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,Oe(),F].filter(e=>!!e),issueData:{code:P.invalid_return_type,returnTypeError:n}})}let i={errorMap:t.common.contextualErrorMap},a=t.data;if(this._def.returns instanceof Bt){let e=this;return Ne(async function(...t){let o=new Ee([]),s=await e._def.args.parseAsync(t,i).catch(e=>{throw o.addIssue(n(t,e)),o}),c=await Reflect.apply(a,this,s);return await e._def.returns._def.type.parseAsync(c,i).catch(e=>{throw o.addIssue(r(c,e)),o})})}else{let e=this;return Ne(function(...t){let o=e._def.args.safeParse(t,i);if(!o.success)throw new Ee([n(t,o.error)]);let s=Reflect.apply(a,this,o.data),c=e._def.returns.safeParse(s,i);if(!c.success)throw new Ee([r(s,c.error)]);return c.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...t){return new e({...this._def,args:At.create(t).rest(yt.create())})}returns(t){return new e({...this._def,returns:t})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(t,n,r){return new e({args:t||At.create([]).rest(yt.create()),returns:n||yt.create(),typeName:$t.ZodFunction,...B(r)})}},Ft=class extends We{get schema(){return this._def.getter()}_parse(e){let{ctx:t}=this._processInputParams(e);return this._def.getter()._parse({data:t.data,path:t.path,parent:t})}};Ft.create=(e,t)=>new Ft({getter:e,typeName:$t.ZodLazy,...B(t)});var It=class extends We{_parse(e){if(e.data!==this._def.value){let t=this._getOrReturnCtx(e);return L(t,{received:t.data,code:P.invalid_literal,expected:this._def.value}),R}return{status:`valid`,value:e.data}}get value(){return this._def.value}};It.create=(e,t)=>new It({value:e,typeName:$t.ZodLiteral,...B(t)});function Lt(e,t){return new Rt({values:e,typeName:$t.ZodEnum,...B(t)})}var Rt=class e extends We{constructor(){super(...arguments),Be.set(this,void 0)}_parse(e){if(typeof e.data!=`string`){let t=this._getOrReturnCtx(e),n=this._def.values;return L(t,{expected:Ce.joinValues(n),received:t.parsedType,code:P.invalid_type}),R}if(Re(this,Be)||ze(this,Be,new Set(this._def.values)),!Re(this,Be).has(e.data)){let t=this._getOrReturnCtx(e),n=this._def.values;return L(t,{received:t.data,code:P.invalid_enum_value,options:n}),R}return Ne(e.data)}get options(){return this._def.values}get enum(){let e={};for(let t of this._def.values)e[t]=t;return e}get Values(){let e={};for(let t of this._def.values)e[t]=t;return e}get Enum(){let e={};for(let t of this._def.values)e[t]=t;return e}extract(t,n=this._def){return e.create(t,{...this._def,...n})}exclude(t,n=this._def){return e.create(this.options.filter(e=>!t.includes(e)),{...this._def,...n})}};Be=new WeakMap,Rt.create=Lt;var zt=class extends We{constructor(){super(...arguments),Ve.set(this,void 0)}_parse(e){let t=Ce.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==M.string&&n.parsedType!==M.number){let e=Ce.objectValues(t);return L(n,{expected:Ce.joinValues(e),received:n.parsedType,code:P.invalid_type}),R}if(Re(this,Ve)||ze(this,Ve,new Set(Ce.getValidEnumValues(this._def.values))),!Re(this,Ve).has(e.data)){let e=Ce.objectValues(t);return L(n,{received:n.data,code:P.invalid_enum_value,options:e}),R}return Ne(e.data)}get enum(){return this._def.values}};Ve=new WeakMap,zt.create=(e,t)=>new zt({values:e,typeName:$t.ZodNativeEnum,...B(t)});var Bt=class extends We{unwrap(){return this._def.type}_parse(e){let{ctx:t}=this._processInputParams(e);return t.parsedType!==M.promise&&t.common.async===!1?(L(t,{code:P.invalid_type,expected:M.promise,received:t.parsedType}),R):Ne((t.parsedType===M.promise?t.data:Promise.resolve(t.data)).then(e=>this._def.type.parseAsync(e,{path:t.path,errorMap:t.common.contextualErrorMap})))}};Bt.create=(e,t)=>new Bt({type:e,typeName:$t.ZodPromise,...B(t)});var Vt=class extends We{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===$t.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:t,ctx:n}=this._processInputParams(e),r=this._def.effect||null,i={addIssue:e=>{L(n,e),e.fatal?t.abort():t.dirty()},get path(){return n.path}};if(i.addIssue=i.addIssue.bind(i),r.type===`preprocess`){let e=r.transform(n.data,i);if(n.common.async)return Promise.resolve(e).then(async e=>{if(t.value===`aborted`)return R;let r=await this._def.schema._parseAsync({data:e,path:n.path,parent:n});return r.status===`aborted`?R:r.status===`dirty`||t.value===`dirty`?Me(r.value):r});{if(t.value===`aborted`)return R;let r=this._def.schema._parseSync({data:e,path:n.path,parent:n});return r.status===`aborted`?R:r.status===`dirty`||t.value===`dirty`?Me(r.value):r}}if(r.type===`refinement`){let e=e=>{let t=r.refinement(e,i);if(n.common.async)return Promise.resolve(t);if(t instanceof Promise)throw Error(`Async refinement encountered during synchronous parse operation. Use .parseAsync instead.`);return e};if(n.common.async===!1){let r=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return r.status===`aborted`?R:(r.status===`dirty`&&t.dirty(),e(r.value),{status:t.value,value:r.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(n=>n.status===`aborted`?R:(n.status===`dirty`&&t.dirty(),e(n.value).then(()=>({status:t.value,value:n.value}))))}if(r.type===`transform`)if(n.common.async===!1){let e=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!Ie(e))return e;let a=r.transform(e.value,i);if(a instanceof Promise)throw Error(`Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.`);return{status:t.value,value:a}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(e=>Ie(e)?Promise.resolve(r.transform(e.value,i)).then(e=>({status:t.value,value:e})):e);Ce.assertNever(r)}};Vt.create=(e,t,n)=>new Vt({schema:e,typeName:$t.ZodEffects,effect:t,...B(n)}),Vt.createWithPreprocess=(e,t,n)=>new Vt({schema:t,effect:{type:`preprocess`,transform:e},typeName:$t.ZodEffects,...B(n)});var Ht=class extends We{_parse(e){return this._getType(e)===M.undefined?Ne(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Ht.create=(e,t)=>new Ht({innerType:e,typeName:$t.ZodOptional,...B(t)});var Ut=class extends We{_parse(e){return this._getType(e)===M.null?Ne(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Ut.create=(e,t)=>new Ut({innerType:e,typeName:$t.ZodNullable,...B(t)});var Wt=class extends We{_parse(e){let{ctx:t}=this._processInputParams(e),n=t.data;return t.parsedType===M.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:t.path,parent:t})}removeDefault(){return this._def.innerType}};Wt.create=(e,t)=>new Wt({innerType:e,typeName:$t.ZodDefault,defaultValue:typeof t.default==`function`?t.default:()=>t.default,...B(t)});var Gt=class extends We{_parse(e){let{ctx:t}=this._processInputParams(e),n={...t,common:{...t.common,issues:[]}},r=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return Le(r)?r.then(e=>({status:`valid`,value:e.status===`valid`?e.value:this._def.catchValue({get error(){return new Ee(n.common.issues)},input:n.data})})):{status:`valid`,value:r.status===`valid`?r.value:this._def.catchValue({get error(){return new Ee(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};Gt.create=(e,t)=>new Gt({innerType:e,typeName:$t.ZodCatch,catchValue:typeof t.catch==`function`?t.catch:()=>t.catch,...B(t)});var Kt=class extends We{_parse(e){if(this._getType(e)!==M.nan){let t=this._getOrReturnCtx(e);return L(t,{code:P.invalid_type,expected:M.nan,received:t.parsedType}),R}return{status:`valid`,value:e.data}}};Kt.create=e=>new Kt({typeName:$t.ZodNaN,...B(e)});var qt=Symbol(`zod_brand`),Jt=class extends We{_parse(e){let{ctx:t}=this._processInputParams(e),n=t.data;return this._def.type._parse({data:n,path:t.path,parent:t})}unwrap(){return this._def.type}},Yt=class e extends We{_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.common.async)return(async()=>{let e=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return e.status===`aborted`?R:e.status===`dirty`?(t.dirty(),Me(e.value)):this._def.out._parseAsync({data:e.value,path:n.path,parent:n})})();{let e=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return e.status===`aborted`?R:e.status===`dirty`?(t.dirty(),{status:`dirty`,value:e.value}):this._def.out._parseSync({data:e.value,path:n.path,parent:n})}}static create(t,n){return new e({in:t,out:n,typeName:$t.ZodPipeline})}},Xt=class extends We{_parse(e){let t=this._def.innerType._parse(e),n=e=>(Ie(e)&&(e.value=Object.freeze(e.value)),e);return Le(t)?t.then(e=>n(e)):n(t)}unwrap(){return this._def.innerType}};Xt.create=(e,t)=>new Xt({innerType:e,typeName:$t.ZodReadonly,...B(t)});function Zt(e,t={},n){return e?vt.create().superRefine((r,i)=>{if(!e(r)){let e=typeof t==`function`?t(r):typeof t==`string`?{message:t}:t,a=e.fatal??n??!0,o=typeof e==`string`?{message:e}:e;i.addIssue({code:`custom`,...o,fatal:a})}}):vt.create()}var Qt={object:wt.lazycreate},$t;(function(e){e.ZodString=`ZodString`,e.ZodNumber=`ZodNumber`,e.ZodNaN=`ZodNaN`,e.ZodBigInt=`ZodBigInt`,e.ZodBoolean=`ZodBoolean`,e.ZodDate=`ZodDate`,e.ZodSymbol=`ZodSymbol`,e.ZodUndefined=`ZodUndefined`,e.ZodNull=`ZodNull`,e.ZodAny=`ZodAny`,e.ZodUnknown=`ZodUnknown`,e.ZodNever=`ZodNever`,e.ZodVoid=`ZodVoid`,e.ZodArray=`ZodArray`,e.ZodObject=`ZodObject`,e.ZodUnion=`ZodUnion`,e.ZodDiscriminatedUnion=`ZodDiscriminatedUnion`,e.ZodIntersection=`ZodIntersection`,e.ZodTuple=`ZodTuple`,e.ZodRecord=`ZodRecord`,e.ZodMap=`ZodMap`,e.ZodSet=`ZodSet`,e.ZodFunction=`ZodFunction`,e.ZodLazy=`ZodLazy`,e.ZodLiteral=`ZodLiteral`,e.ZodEnum=`ZodEnum`,e.ZodEffects=`ZodEffects`,e.ZodNativeEnum=`ZodNativeEnum`,e.ZodOptional=`ZodOptional`,e.ZodNullable=`ZodNullable`,e.ZodDefault=`ZodDefault`,e.ZodCatch=`ZodCatch`,e.ZodPromise=`ZodPromise`,e.ZodBranded=`ZodBranded`,e.ZodPipeline=`ZodPipeline`,e.ZodReadonly=`ZodReadonly`})($t||={});var en=(e,t={message:`Input not instance of ${e.name}`})=>Zt(t=>t instanceof e,t),V=lt.create,H=dt.create,tn=Kt.create,nn=ft.create,U=pt.create,rn=mt.create,an=ht.create,on=gt.create,sn=_t.create,cn=vt.create,ln=yt.create,un=bt.create,dn=xt.create,fn=St.create,W=wt.create,pn=wt.strictCreate,mn=Tt.create,hn=Dt.create,gn=kt.create,_n=At.create,vn=jt.create,yn=Mt.create,bn=Nt.create,xn=Pt.create,Sn=Ft.create,Cn=It.create,wn=Rt.create,Tn=zt.create,En=Bt.create,Dn=Vt.create,On=Ht.create,kn=Ut.create,An=Vt.createWithPreprocess,jn=Yt.create,G=Object.freeze({__proto__:null,defaultErrorMap:F,setErrorMap:I,getErrorMap:Oe,makeIssue:ke,EMPTY_PATH:Ae,addIssueToContext:L,ParseStatus:je,INVALID:R,DIRTY:Me,OK:Ne,isAborted:Pe,isDirty:Fe,isValid:Ie,isAsync:Le,get util(){return Ce},get objectUtil(){return we},ZodParsedType:M,getParsedType:N,ZodType:We,datetimeRegex:st,ZodString:lt,ZodNumber:dt,ZodBigInt:ft,ZodBoolean:pt,ZodDate:mt,ZodSymbol:ht,ZodUndefined:gt,ZodNull:_t,ZodAny:vt,ZodUnknown:yt,ZodNever:bt,ZodVoid:xt,ZodArray:St,ZodObject:wt,ZodUnion:Tt,ZodDiscriminatedUnion:Dt,ZodIntersection:kt,ZodTuple:At,ZodRecord:jt,ZodMap:Mt,ZodSet:Nt,ZodFunction:Pt,ZodLazy:Ft,ZodLiteral:It,ZodEnum:Rt,ZodNativeEnum:zt,ZodPromise:Bt,ZodEffects:Vt,ZodTransformer:Vt,ZodOptional:Ht,ZodNullable:Ut,ZodDefault:Wt,ZodCatch:Gt,ZodNaN:Kt,BRAND:qt,ZodBranded:Jt,ZodPipeline:Yt,ZodReadonly:Xt,custom:Zt,Schema:We,ZodSchema:We,late:Qt,get ZodFirstPartyTypeKind(){return $t},coerce:{string:(e=>lt.create({...e,coerce:!0})),number:(e=>dt.create({...e,coerce:!0})),boolean:(e=>pt.create({...e,coerce:!0})),bigint:(e=>ft.create({...e,coerce:!0})),date:(e=>mt.create({...e,coerce:!0}))},any:cn,array:fn,bigint:nn,boolean:U,date:rn,discriminatedUnion:hn,effect:Dn,enum:wn,function:xn,instanceof:en,intersection:gn,lazy:Sn,literal:Cn,map:yn,nan:tn,nativeEnum:Tn,never:un,null:sn,nullable:kn,number:H,object:W,oboolean:()=>U().optional(),onumber:()=>H().optional(),optional:On,ostring:()=>V().optional(),pipeline:jn,preprocess:An,promise:En,record:vn,set:bn,strictObject:pn,string:V,symbol:an,transformer:Dn,tuple:_n,undefined:on,union:mn,unknown:ln,void:dn,NEVER:R,ZodIssueCode:P,quotelessJson:Te,ZodError:Ee}),Mn={exports:{}},Nn;function Pn(){return Nn?Mn.exports:(Nn=1,(function(e){var t=(function(e){var n=1e7,r=9007199254740992,i=f(r),a=`0123456789abcdefghijklmnopqrstuvwxyz`,o=typeof BigInt==`function`;function s(e,t,n,r){return e===void 0?s[0]:t===void 0||+t==10&&!n?N(e):ye(e,t,n,r)}function c(e,t){this.value=e,this.sign=t,this.isSmall=!1}c.prototype=Object.create(s.prototype);function l(e){this.value=e,this.sign=e<0,this.isSmall=!0}l.prototype=Object.create(s.prototype);function u(e){this.value=e}u.prototype=Object.create(s.prototype);function d(e){return-r0?Math.floor(e):Math.ceil(e)}function _(e,t){var r=e.length,i=t.length,a=Array(r),o=0,s=n,c,l;for(l=0;l=s),a[l]=c-o*s;for(;l0&&a.push(o),a}function v(e,t){return e.length>=t.length?_(e,t):_(t,e)}function y(e,t){var r=e.length,i=Array(r),a=n,o,s;for(s=0;s0;)i[s++]=t%a,t=Math.floor(t/a);return i}c.prototype.add=function(e){var t=N(e);if(this.sign!==t.sign)return this.subtract(t.negate());var n=this.value,r=t.value;return t.isSmall?new c(y(n,Math.abs(r)),this.sign):new c(v(n,r),this.sign)},c.prototype.plus=c.prototype.add,l.prototype.add=function(e){var t=N(e),n=this.value;if(n<0!==t.sign)return this.subtract(t.negate());var r=t.value;if(t.isSmall){if(d(n+r))return new l(n+r);r=f(Math.abs(r))}return new c(y(r,Math.abs(n)),n<0)},l.prototype.plus=l.prototype.add,u.prototype.add=function(e){return new u(this.value+N(e).value)},u.prototype.plus=u.prototype.add;function b(e,t){var r=e.length,i=t.length,a=Array(r),o=0,s=n,c,l;for(c=0;c=0?r=b(e,t):(r=b(t,e),n=!n),r=p(r),typeof r==`number`?(n&&(r=-r),new l(r)):new c(r,n)}function S(e,t,r){var i=e.length,a=Array(i),o=-t,s=n,u,d;for(u=0;u=0)},l.prototype.minus=l.prototype.subtract,u.prototype.subtract=function(e){return new u(this.value-N(e).value)},u.prototype.minus=u.prototype.subtract,c.prototype.negate=function(){return new c(this.value,!this.sign)},l.prototype.negate=function(){var e=this.sign,t=new l(-this.value);return t.sign=!e,t},u.prototype.negate=function(){return new u(-this.value)},c.prototype.abs=function(){return new c(this.value,!1)},l.prototype.abs=function(){return new l(Math.abs(this.value))},u.prototype.abs=function(){return new u(this.value>=0?this.value:-this.value)};function C(e,t){var r=e.length,i=t.length,a=h(r+i),o=n,s,c,l,u,d;for(l=0;l0;)i[c++]=o%a,o=Math.floor(o/a);return i}function T(e,t){for(var n=[];t-->0;)n.push(0);return n.concat(e)}function E(e,t){var n=Math.max(e.length,t.length);if(n<=30)return C(e,t);n=Math.ceil(n/2);var r=e.slice(n),i=e.slice(0,n),a=t.slice(n),o=t.slice(0,n),s=E(i,o),c=E(r,a),l=v(v(s,T(b(b(E(v(i,r),v(o,a)),s),c),n)),T(c,2*n));return m(l),l}function D(e,t){return-.012*e-.012*t+15e-6*e*t>0}c.prototype.multiply=function(e){var t=N(e),r=this.value,i=t.value,a=this.sign!==t.sign,o;if(t.isSmall){if(i===0)return s[0];if(i===1)return this;if(i===-1)return this.negate();if(o=Math.abs(i),o=0;f--){for(d=a-1,l[f+i]!==s&&(d=Math.floor((l[f+i]*a+l[f+i-1])/s)),m=0,g=0,v=u.length,_=0;_i&&(u=(u+1)*s),c=Math.ceil(u/d);do{if(f=w(t,c),ie(f,o)<=0)break;c--}while(c);a.push(c),o=b(o,f)}return a.reverse(),[p(a),p(o)]}function ne(e,t){var r=e.length,i=h(r),a=n,o,s,c=0,l;for(o=r-1;o>=0;--o)l=c*a+e[o],s=g(l/t),c=l-s*t,i[o]=s|0;return[i,c|0]}function re(e,t){var r,i=N(t);if(o)return[new u(e.value/i.value),new u(e.value%i.value)];var a=e.value,d=i.value,m;if(d===0)throw Error(`Cannot divide by zero`);if(e.isSmall)return i.isSmall?[new l(g(a/d)),new l(a%d)]:[s[0],e];if(i.isSmall){if(d===1)return[e,s[0]];if(d==-1)return[e.negate(),s[0]];var h=Math.abs(d);if(ht.length?1:-1;for(var n=e.length-1;n>=0;n--)if(e[n]!==t[n])return e[n]>t[n]?1:-1;return 0}c.prototype.compareAbs=function(e){var t=N(e),n=this.value,r=t.value;return t.isSmall?1:ie(n,r)},l.prototype.compareAbs=function(e){var t=N(e),n=Math.abs(this.value),r=t.value;return t.isSmall?(r=Math.abs(r),n===r?0:n>r?1:-1):-1},u.prototype.compareAbs=function(e){var t=this.value,n=N(e).value;return t=t>=0?t:-t,n=n>=0?n:-n,t===n?0:t>n?1:-1},c.prototype.compare=function(e){if(e===1/0)return-1;if(e===-1/0)return 1;var t=N(e),n=this.value,r=t.value;return this.sign===t.sign?t.isSmall?this.sign?-1:1:ie(n,r)*(this.sign?-1:1):t.sign?1:-1},c.prototype.compareTo=c.prototype.compare,l.prototype.compare=function(e){if(e===1/0)return-1;if(e===-1/0)return 1;var t=N(e),n=this.value,r=t.value;return t.isSmall?n==r?0:n>r?1:-1:n<0===t.sign?n<0?1:-1:n<0?-1:1},l.prototype.compareTo=l.prototype.compare,u.prototype.compare=function(e){if(e===1/0)return-1;if(e===-1/0)return 1;var t=this.value,n=N(e).value;return t===n?0:t>n?1:-1},u.prototype.compareTo=u.prototype.compare,c.prototype.equals=function(e){return this.compare(e)===0},u.prototype.eq=u.prototype.equals=l.prototype.eq=l.prototype.equals=c.prototype.eq=c.prototype.equals,c.prototype.notEquals=function(e){return this.compare(e)!==0},u.prototype.neq=u.prototype.notEquals=l.prototype.neq=l.prototype.notEquals=c.prototype.neq=c.prototype.notEquals,c.prototype.greater=function(e){return this.compare(e)>0},u.prototype.gt=u.prototype.greater=l.prototype.gt=l.prototype.greater=c.prototype.gt=c.prototype.greater,c.prototype.lesser=function(e){return this.compare(e)<0},u.prototype.lt=u.prototype.lesser=l.prototype.lt=l.prototype.lesser=c.prototype.lt=c.prototype.lesser,c.prototype.greaterOrEquals=function(e){return this.compare(e)>=0},u.prototype.geq=u.prototype.greaterOrEquals=l.prototype.geq=l.prototype.greaterOrEquals=c.prototype.geq=c.prototype.greaterOrEquals,c.prototype.lesserOrEquals=function(e){return this.compare(e)<=0},u.prototype.leq=u.prototype.lesserOrEquals=l.prototype.leq=l.prototype.lesserOrEquals=c.prototype.leq=c.prototype.lesserOrEquals,c.prototype.isEven=function(){return(this.value[0]&1)==0},l.prototype.isEven=function(){return(this.value&1)==0},u.prototype.isEven=function(){return(this.value&BigInt(1))===BigInt(0)},c.prototype.isOdd=function(){return(this.value[0]&1)==1},l.prototype.isOdd=function(){return(this.value&1)==1},u.prototype.isOdd=function(){return(this.value&BigInt(1))===BigInt(1)},c.prototype.isPositive=function(){return!this.sign},l.prototype.isPositive=function(){return this.value>0},u.prototype.isPositive=l.prototype.isPositive,c.prototype.isNegative=function(){return this.sign},l.prototype.isNegative=function(){return this.value<0},u.prototype.isNegative=l.prototype.isNegative,c.prototype.isUnit=function(){return!1},l.prototype.isUnit=function(){return Math.abs(this.value)===1},u.prototype.isUnit=function(){return this.abs().value===BigInt(1)},c.prototype.isZero=function(){return!1},l.prototype.isZero=function(){return this.value===0},u.prototype.isZero=function(){return this.value===BigInt(0)},c.prototype.isDivisibleBy=function(e){var t=N(e);return t.isZero()?!1:t.isUnit()?!0:t.compareAbs(2)===0?this.isEven():this.mod(t).isZero()},u.prototype.isDivisibleBy=l.prototype.isDivisibleBy=c.prototype.isDivisibleBy;function ae(e){var t=e.abs();if(t.isUnit())return!1;if(t.equals(2)||t.equals(3)||t.equals(5))return!0;if(t.isEven()||t.isDivisibleBy(3)||t.isDivisibleBy(5))return!1;if(t.lesser(49))return!0}function oe(e,n){for(var r=e.prev(),i=r,a=0,o,s,c;i.isEven();)i=i.divide(2),a++;next:for(s=0;s-r?new l(e-1):new c(i,!0)},u.prototype.prev=function(){return new u(this.value-BigInt(1))};for(var se=[1];2*se[se.length-1]<=n;)se.push(2*se[se.length-1]);var A=se.length,ce=se[A-1];function le(e){return Math.abs(e)<=n}c.prototype.shiftLeft=function(e){var t=N(e).toJSNumber();if(!le(t))throw Error(String(t)+` is too large for shifting.`);if(t<0)return this.shiftRight(-t);var n=this;if(n.isZero())return n;for(;t>=A;)n=n.multiply(ce),t-=A-1;return n.multiply(se[t])},u.prototype.shiftLeft=l.prototype.shiftLeft=c.prototype.shiftLeft,c.prototype.shiftRight=function(e){var t,n=N(e).toJSNumber();if(!le(n))throw Error(String(n)+` is too large for shifting.`);if(n<0)return this.shiftLeft(-n);for(var r=this;n>=A;){if(r.isZero()||r.isNegative()&&r.isUnit())return r;t=re(r,ce),r=t[1].isNegative()?t[0].prev():t[0],n-=A-1}return t=re(r,se[n]),t[1].isNegative()?t[0].prev():t[0]},u.prototype.shiftRight=l.prototype.shiftRight=c.prototype.shiftRight;function ue(e,n,r){n=N(n);for(var i=e.isNegative(),a=n.isNegative(),o=i?e.not():e,s=a?n.not():n,c=0,l=0,u=null,d=null,f=[];!o.isZero()||!s.isZero();)u=re(o,ce),c=u[1].toJSNumber(),i&&(c=ce-1-c),d=re(s,ce),l=d[1].toJSNumber(),a&&(l=ce-1-l),o=u[0],s=d[0],f.push(r(c,l));for(var p=r(+!!i,+!!a)===0?t(0):t(-1),m=f.length-1;m>=0;--m)p=p.multiply(ce).add(t(f[m]));return p}c.prototype.not=function(){return this.negate().prev()},u.prototype.not=l.prototype.not=c.prototype.not,c.prototype.and=function(e){return ue(this,e,function(e,t){return e&t})},u.prototype.and=l.prototype.and=c.prototype.and,c.prototype.or=function(e){return ue(this,e,function(e,t){return e|t})},u.prototype.or=l.prototype.or=c.prototype.or,c.prototype.xor=function(e){return ue(this,e,function(e,t){return e^t})},u.prototype.xor=l.prototype.xor=c.prototype.xor;var de=1<<30,j=(n&-n)*(n&-n)|de;function fe(e){var t=e.value,r=typeof t==`number`?t|de:typeof t==`bigint`?t|BigInt(de):t[0]+t[1]*n|j;return r&-r}function pe(e,n){if(n.compareTo(e)<=0){var r=pe(e,n.square(n)),i=r.p,a=r.e,o=i.multiply(n);return o.compareTo(e)<=0?{p:o,e:a*2+1}:{p:i,e:a*2}}return{p:t(1),e:0}}c.prototype.bitLength=function(){var e=this;return e.compareTo(t(0))<0&&(e=e.negate().subtract(t(1))),e.compareTo(t(0))===0?t(0):t(pe(e,t(2)).e).add(t(1))},u.prototype.bitLength=l.prototype.bitLength=c.prototype.bitLength;function me(e,t){return e=N(e),t=N(t),e.greater(t)?e:t}function he(e,t){return e=N(e),t=N(t),e.lesser(t)?e:t}function ge(e,t){if(e=N(e).abs(),t=N(t).abs(),e.equals(t))return e;if(e.isZero())return t;if(t.isZero())return e;for(var n=s[1],r,i;e.isEven()&&t.isEven();)r=he(fe(e),fe(t)),e=e.divide(r),t=t.divide(r),n=n.multiply(r);for(;e.isEven();)e=e.divide(fe(e));do{for(;t.isEven();)t=t.divide(fe(t));e.greater(t)&&(i=t,t=e,e=i),t=t.subtract(e)}while(!t.isZero());return n.isUnit()?e:e.multiply(n)}function _e(e,t){return e=N(e).abs(),t=N(t).abs(),e.divide(ge(e,t)).multiply(t)}function ve(e,t,r){e=N(e),t=N(t);var i=r||Math.random,a=he(e,t),o=me(e,t).subtract(a).add(1);if(o.isSmall)return a.add(Math.floor(i()*o));for(var c=Se(o,n).value,l=[],u=!0,d=0;d=s){if(l===`1`&&s===1)continue;throw Error(l+` is not a valid digit in base `+t+`.`)}}t=N(t);var u=[],d=e[0]===`-`;for(o=+!!d;o`&&o=0;a--)r=r.add(e[a].times(i)),i=i.times(t);return n?r.negate():r}function xe(e,t){return t||=a,e`}function Se(e,n){if(n=t(n),n.isZero()){if(e.isZero())return{value:[0],isNegative:!1};throw Error(`Cannot convert nonzero numbers to base 0.`)}if(n.equals(-1)){if(e.isZero())return{value:[0],isNegative:!1};if(e.isNegative())return{value:[].concat.apply([],Array.apply(null,Array(-e.toJSNumber())).map(Array.prototype.valueOf,[1,0])),isNegative:!1};var r=Array.apply(null,Array(e.toJSNumber()-1)).map(Array.prototype.valueOf,[0,1]);return r.unshift([1]),{value:[].concat.apply([],r),isNegative:!1}}var i=!1;if(e.isNegative()&&n.isPositive()&&(i=!0,e=e.abs()),n.isUnit())return e.isZero()?{value:[0],isNegative:!1}:{value:Array.apply(null,Array(e.toJSNumber())).map(Number.prototype.valueOf,1),isNegative:i};for(var a=[],o=e,s;o.isNegative()||o.compareAbs(n)>=0;){s=o.divmod(n),o=s.quotient;var c=s.remainder;c.isNegative()&&(c=n.minus(c).abs(),o=o.next()),a.push(c.toJSNumber())}return a.push(o.toJSNumber()),{value:a.reverse(),isNegative:i}}function Ce(e,t,n){var r=Se(e,t);return(r.isNegative?`-`:``)+r.value.map(function(e){return xe(e,n)}).join(``)}c.prototype.toArray=function(e){return Se(this,e)},l.prototype.toArray=function(e){return Se(this,e)},u.prototype.toArray=function(e){return Se(this,e)},c.prototype.toString=function(t,n){if(t===e&&(t=10),t!==10||n)return Ce(this,t,n);for(var r=this.value,i=r.length,a=String(r[--i]),o=`0000000`,s;--i>=0;)s=String(r[i]),a+=o.slice(s.length)+s;return(this.sign?`-`:``)+a},l.prototype.toString=function(t,n){return t===e&&(t=10),t!=10||n?Ce(this,t,n):String(this.value)},u.prototype.toString=l.prototype.toString,u.prototype.toJSON=c.prototype.toJSON=l.prototype.toJSON=function(){return this.toString()},c.prototype.valueOf=function(){return parseInt(this.toString(),10)},c.prototype.toJSNumber=c.prototype.valueOf,l.prototype.valueOf=function(){return this.value},l.prototype.toJSNumber=l.prototype.valueOf,u.prototype.valueOf=u.prototype.toJSNumber=function(){return parseInt(this.toString(),10)};function we(e){if(d(+e)){var t=+e;if(t===g(t))return o?new u(BigInt(t)):new l(t);throw Error(`Invalid integer: `+e)}var n=e[0]===`-`;n&&(e=e.slice(1));var r=e.split(/e/i);if(r.length>2)throw Error(`Invalid integer: `+r.join(`e`));if(r.length===2){var i=r[1];if(i[0]===`+`&&(i=i.slice(1)),i=+i,i!==g(i)||!d(i))throw Error(`Invalid integer: `+i+` is not a valid exponent.`);var a=r[0],s=a.indexOf(`.`);if(s>=0&&(i-=a.length-s-1,a=a.slice(0,s)+a.slice(s+1)),i<0)throw Error(`Cannot include negative exponent part for integers`);a+=Array(i+1).join(`0`),e=a}if(!/^([0-9][0-9]*)$/.test(e))throw Error(`Invalid integer: `+e);if(o)return new u(BigInt(n?`-`+e:e));for(var f=[],p=e.length,h=7,_=p-h;p>0;)f.push(+e.slice(_,p)),_-=h,_<0&&(_=0),p-=h;return m(f),new c(f,n)}function M(e){if(o)return new u(BigInt(e));if(d(e)){if(e!==g(e))throw Error(e+` is not an integer.`);return new l(e)}return we(e.toString())}function N(e){return typeof e==`number`?M(e):typeof e==`string`?we(e):typeof e==`bigint`?new u(e):e}for(var P=0;P<1e3;P++)s[P]=N(P),P>0&&(s[-P]=N(-P));return s.one=s[1],s.zero=s[0],s.minusOne=s[-1],s.max=me,s.min=he,s.gcd=ge,s.lcm=_e,s.isInstance=function(e){return e instanceof c||e instanceof l||e instanceof u},s.randBetween=ve,s.fromArray=function(e,t,n){return be(e.map(N),N(t||10),n)},s})();e.hasOwnProperty(`exports`)&&(e.exports=t)})(Mn),Mn.exports)}var Fn=ve(Pn()),In=64,Ln=16,Rn=In/Ln;function zn(){try{return!0}catch{return!1}}function Bn(e,t,n){let r=0;for(let i=0;ie&t[n]))}or({parts:t}){return new e(this.parts.map((e,n)=>e|t[n]))}xor({parts:t}){return new e(this.parts.map((e,n)=>e^t[n]))}not(){return new e(this.parts.map(e=>~e))}equals({parts:e}){return this.parts.every((t,n)=>t===e[n])}toString(){if(this.str!=null)return this.str;let e=Array(In/4);return this.parts.forEach((t,n)=>{let r=Vn(t.toString());for(let t=0;t<4;t++)e[t+n*4]=r[3-t]||0}),this.str=Fn.fromArray(e,16).toString()}toJSON(){return this.toString()}},Wn=zn();Wn&&BigInt.prototype.toJSON==null&&(BigInt.prototype.toJSON=function(){return this.toString()});var Gn={},Kn=Wn?function(e){return BigInt(e)}:function(e){return e instanceof Un?e:(typeof e==`number`&&(e=e.toString()),Gn[e]??(Gn[e]=Un.fromString(e)),Gn[e])},qn=Kn(0),Jn=Wn?function(e=qn,t=qn){return e&t}:function(e=qn,t=qn){return e.and(t)},Yn=Wn?function(e=qn,t=qn){return e|t}:function(e=qn,t=qn){return e.or(t)},Xn=Wn?function(e=qn,t=qn){return e^t}:function(e=qn,t=qn){return e.xor(t)},Zn=Wn?function(e=qn){return~e}:function(e=qn){return e.not()},Qn=Wn?function(e,t){return e===t}:function(e,t){return e==null||t==null?e==t:e.equals(t)};function $n(...e){let t=e[0];for(let n=1;n{let[n]=Object.entries(e).find(([,e])=>e===t)??[];return t!=null&&n===void 0?e.UNHANDLED:t},V().or(H()))}function ur(e){let t=Zt().transform(t=>{let n=e.safeParse(t);return n.success?n.data:e._def.defaultValue()});return t.overlayType=e,t}var dr=G.object({image_url:G.string()}).describe(`Response for "INITIATE_IMAGE_UPLOAD" Command`),fr=G.object({mediaUrl:G.string().max(1024)}).describe(`Request for "OPEN_SHARE_MOMENT_DIALOG" Command`),pr=G.object({access_token:G.union([G.string(),G.null()]).optional()}).describe(`Request for "AUTHENTICATE" Command`),mr=G.object({access_token:G.string(),user:G.object({username:G.string(),discriminator:G.string(),id:G.string(),avatar:G.union([G.string(),G.null()]).optional(),public_flags:G.number(),global_name:G.union([G.string(),G.null()]).optional()}),scopes:G.array(ur(G.enum(`identify,identify.premium,email,connections,guilds,guilds.join,guilds.members.read,guilds.channels.read,gdm.join,bot,rpc,rpc.notifications.read,rpc.voice.read,rpc.voice.write,rpc.video.read,rpc.video.write,rpc.screenshare.read,rpc.screenshare.write,rpc.activities.write,webhook.incoming,messages.read,applications.builds.upload,applications.builds.read,applications.commands,applications.commands.permissions.update,applications.commands.update,applications.store.update,applications.entitlements,activities.read,activities.write,activities.invites.write,relationships.read,relationships.write,voice,dm_channels.read,role_connections.write,presences.read,presences.write,openid,dm_channels.messages.read,dm_channels.messages.write,gateway.connect,account.global_name.update,payment_sources.country_code,sdk.social_layer_presence,sdk.social_layer,lobbies.write,application_identities.write`.split(`,`)).or(G.literal(-1)).default(-1))),expires:G.string(),application:G.object({description:G.string(),icon:G.union([G.string(),G.null()]).optional(),id:G.string(),rpc_origins:G.array(G.string()).optional(),name:G.string()})}).describe(`Response for "AUTHENTICATE" Command`),hr=G.object({participants:G.array(G.object({id:G.string(),username:G.string(),global_name:G.union([G.string(),G.null()]).optional(),discriminator:G.string(),avatar:G.union([G.string(),G.null()]).optional(),flags:G.number(),bot:G.boolean(),avatar_decoration_data:G.union([G.object({asset:G.union([G.string(),G.null()]).optional(),skuId:G.string().optional(),expiresAt:G.number().optional()}),G.null()]).optional(),premium_type:G.union([G.number(),G.null()]).optional(),nickname:G.string().optional()}))}).describe(`Response for "GET_ACTIVITY_INSTANCE_CONNECTED_PARTICIPANTS" Command`),gr=G.object({command:G.string(),options:G.array(G.object({name:G.string(),value:G.string()})).optional(),content:G.string().max(2e3).optional(),require_launch_channel:G.boolean().optional(),preview_image:G.object({height:G.number(),url:G.string(),width:G.number()}).optional(),components:G.array(G.object({type:G.literal(1),components:G.array(G.object({type:G.literal(2),style:G.number().gte(1).lte(5),label:G.string().max(80).optional(),custom_id:G.string().max(100).describe(`Developer-defined identifier for the button; max 100 characters`).optional()})).max(5).optional()})).optional(),pid:G.number().optional()}).describe(`Request for "SHARE_INTERACTION" Command`),_r=G.object({success:G.boolean()}).describe(`Response for "SHARE_INTERACTION" Command`),vr=G.object({custom_id:G.string().max(64).optional(),message:G.string().max(1e3),link_id:G.string().max(64).optional()}).describe(`Request for "SHARE_LINK" Command`),yr=G.object({success:G.boolean(),didCopyLink:G.boolean(),didSendMessage:G.boolean()}).describe(`Response for "SHARE_LINK" Command`),br=G.object({relationships:G.array(G.object({type:G.number(),user:G.object({id:G.string(),username:G.string(),global_name:G.union([G.string(),G.null()]).optional(),discriminator:G.string(),avatar:G.union([G.string(),G.null()]).optional(),flags:G.number(),bot:G.boolean(),avatar_decoration_data:G.union([G.object({asset:G.union([G.string(),G.null()]).optional(),skuId:G.string().optional(),expiresAt:G.number().optional()}),G.null()]).optional(),premium_type:G.union([G.number(),G.null()]).optional()}),presence:G.object({status:G.string(),activity:G.union([G.object({session_id:G.string().optional(),type:G.number().optional(),name:G.string(),url:G.union([G.string(),G.null()]).optional(),application_id:G.string().optional(),status_display_type:G.number().optional(),state:G.string().optional(),state_url:G.string().optional(),details:G.string().optional(),details_url:G.string().optional(),emoji:G.union([G.object({name:G.string(),id:G.union([G.string(),G.null()]).optional(),animated:G.union([G.boolean(),G.null()]).optional()}),G.null()]).optional(),assets:G.object({large_image:G.string().optional(),large_text:G.string().optional(),large_url:G.string().optional(),small_image:G.string().optional(),small_text:G.string().optional(),small_url:G.string().optional()}).optional(),timestamps:G.object({start:G.number().optional(),end:G.number().optional()}).optional(),party:G.object({id:G.string().optional(),size:G.array(G.number()).min(2).max(2).optional(),privacy:G.number().optional()}).optional(),secrets:G.object({match:G.string().optional(),join:G.string().optional()}).optional(),sync_id:G.string().optional(),created_at:G.number().optional(),instance:G.boolean().optional(),flags:G.number().optional(),metadata:G.object({}).optional(),platform:G.string().optional(),supported_platforms:G.array(G.string()).optional(),buttons:G.array(G.string()).optional(),hangStatus:G.string().optional()}),G.null()]).optional()}).optional()}))}).describe(`Response for "GET_RELATIONSHIPS" Command`),xr=G.object({user_id:G.string(),content:G.string().min(0).max(1024).optional()}).describe(`Request for "INVITE_USER_EMBEDDED" Command`),Sr=G.object({id:G.string().max(64)}).describe(`Request for "GET_USER" Command`),Cr=G.union([G.object({id:G.string(),username:G.string(),global_name:G.union([G.string(),G.null()]).optional(),discriminator:G.string(),avatar:G.union([G.string(),G.null()]).optional(),flags:G.number(),bot:G.boolean(),avatar_decoration_data:G.union([G.object({asset:G.union([G.string(),G.null()]).optional(),skuId:G.string().optional(),expiresAt:G.number().optional()}),G.null()]).optional(),premium_type:G.union([G.number(),G.null()]).optional()}),G.null()]),wr=G.object({quest_id:G.string()}).describe(`Request for "GET_QUEST_ENROLLMENT_STATUS" Command`),Tr=G.object({quest_id:G.string(),is_enrolled:G.boolean(),enrolled_at:G.union([G.string(),G.null()]).optional()}).describe(`Response for "GET_QUEST_ENROLLMENT_STATUS" Command`),Er=G.object({quest_id:G.string()}).describe(`Request for "QUEST_START_TIMER" Command`),Dr=G.object({success:G.boolean()}).describe(`Response for "QUEST_START_TIMER" Command`),Or=G.object({quest_id:G.string(),enrolled_at:G.union([G.string(),G.null()]).optional(),completed_at:G.union([G.string(),G.null()]).optional(),external_cta_url:G.string()}).describe(`Response for "GET_QUEST" Command`),kr=G.object({ticket:G.string()}).describe(`Response for "REQUEST_PROXY_TICKET_REFRESH" Command`),Ar;(function(e){e.INITIATE_IMAGE_UPLOAD=`INITIATE_IMAGE_UPLOAD`,e.OPEN_SHARE_MOMENT_DIALOG=`OPEN_SHARE_MOMENT_DIALOG`,e.AUTHENTICATE=`AUTHENTICATE`,e.GET_ACTIVITY_INSTANCE_CONNECTED_PARTICIPANTS=`GET_ACTIVITY_INSTANCE_CONNECTED_PARTICIPANTS`,e.SHARE_INTERACTION=`SHARE_INTERACTION`,e.SHARE_LINK=`SHARE_LINK`,e.GET_RELATIONSHIPS=`GET_RELATIONSHIPS`,e.INVITE_USER_EMBEDDED=`INVITE_USER_EMBEDDED`,e.GET_USER=`GET_USER`,e.GET_QUEST_ENROLLMENT_STATUS=`GET_QUEST_ENROLLMENT_STATUS`,e.QUEST_START_TIMER=`QUEST_START_TIMER`,e.GET_QUEST=`GET_QUEST`,e.REQUEST_PROXY_TICKET_REFRESH=`REQUEST_PROXY_TICKET_REFRESH`})(Ar||={});var jr=G.object({}).optional().nullable(),Mr=G.void(),Nr={[Ar.INITIATE_IMAGE_UPLOAD]:{request:Mr,response:dr},[Ar.OPEN_SHARE_MOMENT_DIALOG]:{request:fr,response:jr},[Ar.AUTHENTICATE]:{request:pr,response:mr},[Ar.GET_ACTIVITY_INSTANCE_CONNECTED_PARTICIPANTS]:{request:Mr,response:hr},[Ar.SHARE_INTERACTION]:{request:gr,response:_r},[Ar.SHARE_LINK]:{request:vr,response:yr},[Ar.GET_RELATIONSHIPS]:{request:Mr,response:br},[Ar.INVITE_USER_EMBEDDED]:{request:xr,response:jr},[Ar.GET_USER]:{request:Sr,response:Cr},[Ar.GET_QUEST_ENROLLMENT_STATUS]:{request:wr,response:Tr},[Ar.QUEST_START_TIMER]:{request:Er,response:Dr},[Ar.GET_QUEST]:{request:Mr,response:Or},[Ar.REQUEST_PROXY_TICKET_REFRESH]:{request:Mr,response:kr}},Pr=t({Activity:()=>Jr,Attachment:()=>ri,CertifiedDevice:()=>Ci,CertifiedDeviceTypeObject:()=>Si,Channel:()=>Qr,ChannelMention:()=>ni,ChannelTypesObject:()=>Zr,Commands:()=>K,DISPATCH:()=>Fr,Embed:()=>ui,EmbedAuthor:()=>ci,EmbedField:()=>li,EmbedFooter:()=>ii,EmbedProvider:()=>si,Emoji:()=>Ur,Entitlement:()=>Di,EntitlementTypesObject:()=>Ei,Guild:()=>ti,GuildMember:()=>Vr,GuildMemberRPC:()=>Hr,Image:()=>ai,KeyTypesObject:()=>_i,LayoutMode:()=>Fi,LayoutModeTypeObject:()=>Pi,Message:()=>hi,MessageActivity:()=>fi,MessageApplication:()=>pi,MessageReference:()=>mi,Orientation:()=>Ni,OrientationLockState:()=>ki,OrientationLockStateTypeObject:()=>Oi,OrientationTypeObject:()=>Mi,PermissionOverwrite:()=>Xr,PermissionOverwriteTypeObject:()=>Yr,PresenceUpdate:()=>$r,Reaction:()=>di,ReceiveFramePayload:()=>Ir,Relationship:()=>zr,Role:()=>ei,Scopes:()=>Rr,ScopesObject:()=>Lr,ShortcutKey:()=>vi,Sku:()=>Ti,SkuTypeObject:()=>wi,Status:()=>qr,StatusObject:()=>Kr,ThermalState:()=>ji,ThermalStateTypeObject:()=>Ai,User:()=>Br,UserVoiceState:()=>Gr,Video:()=>oi,VoiceDevice:()=>gi,VoiceSettingModeTypeObject:()=>yi,VoiceSettingsIO:()=>xi,VoiceSettingsMode:()=>bi,VoiceState:()=>Wr}),Fr=`DISPATCH`,K;(function(e){e.AUTHORIZE=`AUTHORIZE`,e.GET_GUILDS=`GET_GUILDS`,e.GET_GUILD=`GET_GUILD`,e.GET_CHANNEL=`GET_CHANNEL`,e.GET_CHANNELS=`GET_CHANNELS`,e.SELECT_VOICE_CHANNEL=`SELECT_VOICE_CHANNEL`,e.SELECT_TEXT_CHANNEL=`SELECT_TEXT_CHANNEL`,e.SUBSCRIBE=`SUBSCRIBE`,e.UNSUBSCRIBE=`UNSUBSCRIBE`,e.CAPTURE_SHORTCUT=`CAPTURE_SHORTCUT`,e.SET_CERTIFIED_DEVICES=`SET_CERTIFIED_DEVICES`,e.SET_ACTIVITY=`SET_ACTIVITY`,e.GET_SKUS=`GET_SKUS`,e.GET_ENTITLEMENTS=`GET_ENTITLEMENTS`,e.GET_SKUS_EMBEDDED=`GET_SKUS_EMBEDDED`,e.GET_ENTITLEMENTS_EMBEDDED=`GET_ENTITLEMENTS_EMBEDDED`,e.START_PURCHASE=`START_PURCHASE`,e.SET_CONFIG=`SET_CONFIG`,e.SEND_ANALYTICS_EVENT=`SEND_ANALYTICS_EVENT`,e.USER_SETTINGS_GET_LOCALE=`USER_SETTINGS_GET_LOCALE`,e.OPEN_EXTERNAL_LINK=`OPEN_EXTERNAL_LINK`,e.ENCOURAGE_HW_ACCELERATION=`ENCOURAGE_HW_ACCELERATION`,e.CAPTURE_LOG=`CAPTURE_LOG`,e.SET_ORIENTATION_LOCK_STATE=`SET_ORIENTATION_LOCK_STATE`,e.OPEN_INVITE_DIALOG=`OPEN_INVITE_DIALOG`,e.GET_PLATFORM_BEHAVIORS=`GET_PLATFORM_BEHAVIORS`,e.GET_CHANNEL_PERMISSIONS=`GET_CHANNEL_PERMISSIONS`,e.AUTHENTICATE=`AUTHENTICATE`,e.GET_ACTIVITY_INSTANCE_CONNECTED_PARTICIPANTS=`GET_ACTIVITY_INSTANCE_CONNECTED_PARTICIPANTS`,e.GET_QUEST=`GET_QUEST`,e.GET_QUEST_ENROLLMENT_STATUS=`GET_QUEST_ENROLLMENT_STATUS`,e.GET_RELATIONSHIPS=`GET_RELATIONSHIPS`,e.GET_USER=`GET_USER`,e.INITIATE_IMAGE_UPLOAD=`INITIATE_IMAGE_UPLOAD`,e.INVITE_USER_EMBEDDED=`INVITE_USER_EMBEDDED`,e.OPEN_SHARE_MOMENT_DIALOG=`OPEN_SHARE_MOMENT_DIALOG`,e.QUEST_START_TIMER=`QUEST_START_TIMER`,e.REQUEST_PROXY_TICKET_REFRESH=`REQUEST_PROXY_TICKET_REFRESH`,e.SHARE_INTERACTION=`SHARE_INTERACTION`,e.SHARE_LINK=`SHARE_LINK`})(K||={});var Ir=W({cmd:V(),data:ln(),evt:sn(),nonce:V()}).passthrough(),Lr=Object.assign(Object.assign({},mr.shape.scopes.element.overlayType._def.innerType.options[0].Values),{UNHANDLED:-1}),Rr=lr(Lr),zr=br.shape.relationships.element,Br=W({id:V(),username:V(),discriminator:V(),global_name:V().optional().nullable(),avatar:V().optional().nullable(),avatar_decoration_data:W({asset:V(),sku_id:V().optional()}).nullable(),bot:U(),flags:H().optional().nullable(),premium_type:H().optional().nullable()}),Vr=W({user:Br,nick:V().optional().nullable(),roles:fn(V()),joined_at:V(),deaf:U(),mute:U()}),Hr=W({user_id:V(),nick:V().optional().nullable(),guild_id:V(),avatar:V().optional().nullable(),avatar_decoration_data:W({asset:V(),sku_id:V().optional().nullable()}).optional().nullable(),color_string:V().optional().nullable()}),Ur=W({id:V(),name:V().optional().nullable(),roles:fn(V()).optional().nullable(),user:Br.optional().nullable(),require_colons:U().optional().nullable(),managed:U().optional().nullable(),animated:U().optional().nullable(),available:U().optional().nullable()}),Wr=W({mute:U(),deaf:U(),self_mute:U(),self_deaf:U(),suppress:U()}),Gr=W({mute:U(),nick:V(),user:Br,voice_state:Wr,volume:H()}),Kr={UNHANDLED:-1,IDLE:`idle`,DND:`dnd`,ONLINE:`online`,OFFLINE:`offline`},qr=lr(Kr),Jr=W({name:V(),type:H(),url:V().optional().nullable(),created_at:H().optional().nullable(),timestamps:W({start:H(),end:H()}).partial().optional().nullable(),application_id:V().optional().nullable(),details:V().optional().nullable(),details_url:V().url().optional().nullable(),state:V().optional().nullable(),state_url:V().url().optional().nullable(),emoji:Ur.optional().nullable(),party:W({id:V().optional().nullable(),size:fn(H()).optional().nullable()}).optional().nullable(),assets:W({large_image:V().nullable(),large_text:V().nullable(),large_url:V().url().optional().nullable(),small_image:V().nullable(),small_text:V().nullable(),small_url:V().url().optional().nullable()}).partial().optional().nullable(),secrets:W({join:V(),match:V()}).partial().optional().nullable(),instance:U().optional().nullable(),flags:H().optional().nullable()}),Yr={UNHANDLED:-1,ROLE:0,MEMBER:1},Xr=W({id:V(),type:lr(Yr),allow:V(),deny:V()}),Zr={UNHANDLED:-1,DM:1,GROUP_DM:3,GUILD_TEXT:0,GUILD_VOICE:2,GUILD_CATEGORY:4,GUILD_ANNOUNCEMENT:5,GUILD_STORE:6,ANNOUNCEMENT_THREAD:10,PUBLIC_THREAD:11,PRIVATE_THREAD:12,GUILD_STAGE_VOICE:13,GUILD_DIRECTORY:14,GUILD_FORUM:15},Qr=W({id:V(),type:lr(Zr),guild_id:V().optional().nullable(),position:H().optional().nullable(),permission_overwrites:fn(Xr).optional().nullable(),name:V().optional().nullable(),topic:V().optional().nullable(),nsfw:U().optional().nullable(),last_message_id:V().optional().nullable(),bitrate:H().optional().nullable(),user_limit:H().optional().nullable(),rate_limit_per_user:H().optional().nullable(),recipients:fn(Br).optional().nullable(),icon:V().optional().nullable(),owner_id:V().optional().nullable(),application_id:V().optional().nullable(),parent_id:V().optional().nullable(),last_pin_timestamp:V().optional().nullable()}),$r=W({user:Br,guild_id:V(),status:qr,activities:fn(Jr),client_status:W({desktop:qr,mobile:qr,web:qr}).partial()}),ei=W({id:V(),name:V(),color:H(),hoist:U(),position:H(),permissions:V(),managed:U(),mentionable:U()}),ti=W({id:V(),name:V(),owner_id:V(),icon:V().nullable(),icon_hash:V().optional().nullable(),splash:V().nullable(),discovery_splash:V().nullable(),owner:U().optional().nullable(),permissions:V().optional().nullable(),region:V(),afk_channel_id:V().nullable(),afk_timeout:H(),widget_enabled:U().optional().nullable(),widget_channel_id:V().optional().nullable(),verification_level:H(),default_message_notifications:H(),explicit_content_filter:H(),roles:fn(ei),emojis:fn(Ur),features:fn(V()),mfa_level:H(),application_id:V().nullable(),system_channel_id:V().nullable(),system_channel_flags:H(),rules_channel_id:V().nullable(),joined_at:V().optional().nullable(),large:U().optional().nullable(),unavailable:U().optional().nullable(),member_count:H().optional().nullable(),voice_states:fn(Wr).optional().nullable(),members:fn(Vr).optional().nullable(),channels:fn(Qr).optional().nullable(),presences:fn($r).optional().nullable(),max_presences:H().optional().nullable(),max_members:H().optional().nullable(),vanity_url_code:V().nullable(),description:V().nullable(),banner:V().nullable(),premium_tier:H(),premium_subscription_count:H().optional().nullable(),preferred_locale:V(),public_updates_channel_id:V().nullable(),max_video_channel_users:H().optional().nullable(),approximate_member_count:H().optional().nullable(),approximate_presence_count:H().optional().nullable()}),ni=W({id:V(),guild_id:V(),type:H(),name:V()}),ri=W({id:V(),filename:V(),size:H(),url:V(),proxy_url:V(),height:H().optional().nullable(),width:H().optional().nullable()}),ii=W({text:V(),icon_url:V().optional().nullable(),proxy_icon_url:V().optional().nullable()}),ai=W({url:V().optional().nullable(),proxy_url:V().optional().nullable(),height:H().optional().nullable(),width:H().optional().nullable()}),oi=ai.omit({proxy_url:!0}),si=W({name:V().optional().nullable(),url:V().optional().nullable()}),ci=W({name:V().optional().nullable(),url:V().optional().nullable(),icon_url:V().optional().nullable(),proxy_icon_url:V().optional().nullable()}),li=W({name:V(),value:V(),inline:U()}),ui=W({title:V().optional().nullable(),type:V().optional().nullable(),description:V().optional().nullable(),url:V().optional().nullable(),timestamp:V().optional().nullable(),color:H().optional().nullable(),footer:ii.optional().nullable(),image:ai.optional().nullable(),thumbnail:ai.optional().nullable(),video:oi.optional().nullable(),provider:si.optional().nullable(),author:ci.optional().nullable(),fields:fn(li).optional().nullable()}),di=W({count:H(),me:U(),emoji:Ur}),fi=W({type:H(),party_id:V().optional().nullable()}),pi=W({id:V(),cover_image:V().optional().nullable(),description:V(),icon:V().optional().nullable(),name:V()}),mi=W({message_id:V().optional().nullable(),channel_id:V().optional().nullable(),guild_id:V().optional().nullable()}),hi=W({id:V(),channel_id:V(),guild_id:V().optional().nullable(),author:Br.optional().nullable(),member:Vr.optional().nullable(),content:V(),timestamp:V(),edited_timestamp:V().optional().nullable(),tts:U(),mention_everyone:U(),mentions:fn(Br),mention_roles:fn(V()),mention_channels:fn(ni),attachments:fn(ri),embeds:fn(ui),reactions:fn(di).optional().nullable(),nonce:mn([V(),H()]).optional().nullable(),pinned:U(),webhook_id:V().optional().nullable(),type:H(),activity:fi.optional().nullable(),application:pi.optional().nullable(),message_reference:mi.optional().nullable(),flags:H().optional().nullable(),stickers:fn(ln()).optional().nullable(),referenced_message:ln().optional().nullable()}),gi=W({id:V(),name:V()}),_i={UNHANDLED:-1,KEYBOARD_KEY:0,MOUSE_BUTTON:1,KEYBOARD_MODIFIER_KEY:2,GAMEPAD_BUTTON:3},vi=W({type:lr(_i),code:H(),name:V()}),yi={UNHANDLED:-1,PUSH_TO_TALK:`PUSH_TO_TALK`,VOICE_ACTIVITY:`VOICE_ACTIVITY`},bi=W({type:lr(yi),auto_threshold:U(),threshold:H(),shortcut:fn(vi),delay:H()}),xi=W({device_id:V(),volume:H(),available_devices:fn(gi)}),Si={UNHANDLED:-1,AUDIO_INPUT:`AUDIO_INPUT`,AUDIO_OUTPUT:`AUDIO_OUTPUT`,VIDEO_INPUT:`VIDEO_INPUT`},Ci=W({type:lr(Si),id:V(),vendor:W({name:V(),url:V()}),model:W({name:V(),url:V()}),related:fn(V()),echo_cancellation:U().optional().nullable(),noise_suppression:U().optional().nullable(),automatic_gain_control:U().optional().nullable(),hardware_mute:U().optional().nullable()}),wi={UNHANDLED:-1,APPLICATION:1,DLC:2,CONSUMABLE:3,BUNDLE:4,SUBSCRIPTION:5},Ti=W({id:V(),name:V(),type:lr(wi),price:W({amount:H(),currency:V()}),application_id:V(),flags:H(),release_date:V().nullable()}),Ei={UNHANDLED:-1,PURCHASE:1,PREMIUM_SUBSCRIPTION:2,DEVELOPER_GIFT:3,TEST_MODE_PURCHASE:4,FREE_PURCHASE:5,USER_GIFT:6,PREMIUM_PURCHASE:7},Di=W({id:V(),sku_id:V(),application_id:V(),user_id:V(),gift_code_flags:H(),type:lr(Ei),gifter_user_id:V().optional().nullable(),branches:fn(V()).optional().nullable(),starts_at:V().optional().nullable(),ends_at:V().optional().nullable(),parent_id:V().optional().nullable(),consumed:U().optional().nullable(),deleted:U().optional().nullable(),gift_code_batch_id:V().optional().nullable()}),Oi={UNHANDLED:-1,UNLOCKED:1,PORTRAIT:2,LANDSCAPE:3},ki=lr(Oi),Ai={UNHANDLED:-1,NOMINAL:0,FAIR:1,SERIOUS:2,CRITICAL:3},ji=lr(Ai),Mi={UNHANDLED:-1,PORTRAIT:0,LANDSCAPE:1},Ni=lr(Mi),Pi={UNHANDLED:-1,FOCUSED:0,PIP:1,GRID:2},Fi=lr(Pi),Ii=`ERROR`,Li;(function(e){e.READY=`READY`,e.VOICE_STATE_UPDATE=`VOICE_STATE_UPDATE`,e.SPEAKING_START=`SPEAKING_START`,e.SPEAKING_STOP=`SPEAKING_STOP`,e.ACTIVITY_LAYOUT_MODE_UPDATE=`ACTIVITY_LAYOUT_MODE_UPDATE`,e.ORIENTATION_UPDATE=`ORIENTATION_UPDATE`,e.CURRENT_USER_UPDATE=`CURRENT_USER_UPDATE`,e.CURRENT_GUILD_MEMBER_UPDATE=`CURRENT_GUILD_MEMBER_UPDATE`,e.ENTITLEMENT_CREATE=`ENTITLEMENT_CREATE`,e.THERMAL_STATE_UPDATE=`THERMAL_STATE_UPDATE`,e.ACTIVITY_INSTANCE_PARTICIPANTS_UPDATE=`ACTIVITY_INSTANCE_PARTICIPANTS_UPDATE`,e.RELATIONSHIP_UPDATE=`RELATIONSHIP_UPDATE`,e.ACTIVITY_JOIN=`ACTIVITY_JOIN`,e.QUEST_ENROLLMENT_STATUS_UPDATE=`QUEST_ENROLLMENT_STATUS_UPDATE`})(Li||={});var Ri=Ir.extend({evt:Tn(Li),nonce:V().nullable(),cmd:Cn(Fr),data:W({}).passthrough()}),zi=Ir.extend({evt:Cn(Ii),data:W({code:H(),message:V().optional()}).passthrough(),cmd:Tn(K),nonce:V().nullable()}),Bi=mn([Ri,Ri.extend({evt:V()}),zi]);function Vi(e){let t=e.evt;if(!(t in Li))throw Error(`Unrecognized event type ${e.evt}`);return Hi[t].payload.parse(e)}var Hi={[Li.READY]:{payload:Ri.extend({evt:Cn(Li.READY),data:W({v:H(),config:W({cdn_host:V().optional(),api_endpoint:V(),environment:V()}),user:W({id:V(),username:V(),discriminator:V(),avatar:V().optional()}).optional()})})},[Li.VOICE_STATE_UPDATE]:{payload:Ri.extend({evt:Cn(Li.VOICE_STATE_UPDATE),data:Gr}),subscribeArgs:W({channel_id:V()})},[Li.SPEAKING_START]:{payload:Ri.extend({evt:Cn(Li.SPEAKING_START),data:W({lobby_id:V().optional(),channel_id:V().optional(),user_id:V()})}),subscribeArgs:W({lobby_id:V().nullable().optional(),channel_id:V().nullable().optional()})},[Li.SPEAKING_STOP]:{payload:Ri.extend({evt:Cn(Li.SPEAKING_STOP),data:W({lobby_id:V().optional(),channel_id:V().optional(),user_id:V()})}),subscribeArgs:W({lobby_id:V().nullable().optional(),channel_id:V().nullable().optional()})},[Li.ACTIVITY_LAYOUT_MODE_UPDATE]:{payload:Ri.extend({evt:Cn(Li.ACTIVITY_LAYOUT_MODE_UPDATE),data:W({layout_mode:lr(Pi)})})},[Li.ORIENTATION_UPDATE]:{payload:Ri.extend({evt:Cn(Li.ORIENTATION_UPDATE),data:W({screen_orientation:lr(Mi),orientation:Tn(sr)})})},[Li.CURRENT_USER_UPDATE]:{payload:Ri.extend({evt:Cn(Li.CURRENT_USER_UPDATE),data:Br})},[Li.CURRENT_GUILD_MEMBER_UPDATE]:{payload:Ri.extend({evt:Cn(Li.CURRENT_GUILD_MEMBER_UPDATE),data:Hr}),subscribeArgs:W({guild_id:V()})},[Li.ENTITLEMENT_CREATE]:{payload:Ri.extend({evt:Cn(Li.ENTITLEMENT_CREATE),data:W({entitlement:Di})})},[Li.THERMAL_STATE_UPDATE]:{payload:Ri.extend({evt:Cn(Li.THERMAL_STATE_UPDATE),data:W({thermal_state:ji})})},[Li.ACTIVITY_INSTANCE_PARTICIPANTS_UPDATE]:{payload:Ri.extend({evt:Cn(Li.ACTIVITY_INSTANCE_PARTICIPANTS_UPDATE),data:W({participants:hr.shape.participants})})},[Li.RELATIONSHIP_UPDATE]:{payload:Ri.extend({evt:Cn(Li.RELATIONSHIP_UPDATE),data:zr})},[Li.ACTIVITY_JOIN]:{payload:Ri.extend({evt:Cn(Li.ACTIVITY_JOIN),data:W({applicationId:V(),secret:V()})})},[Li.QUEST_ENROLLMENT_STATUS_UPDATE]:{payload:Ri.extend({evt:Cn(Li.QUEST_ENROLLMENT_STATUS_UPDATE),data:W({quest_id:V(),is_enrolled:U(),enrolled_at:V().date()})})}};function Ui(e,t){throw t}var Wi=W({}).nullable(),Gi=W({code:V()}),Ki=W({guilds:fn(W({id:V(),name:V()}))}),qi=W({id:V(),name:V(),icon_url:V().optional(),members:fn(Vr)}),Ji=W({id:V(),type:lr(Zr),guild_id:V().optional().nullable(),name:V().optional().nullable(),topic:V().optional().nullable(),bitrate:H().optional().nullable(),user_limit:H().optional().nullable(),position:H().optional().nullable(),voice_states:fn(Gr),messages:fn(hi)}),Yi=W({channels:fn(Qr)});Ji.nullable();var Xi=Ji.nullable(),Zi=Ji.nullable();W({input:xi,output:xi,mode:bi,automatic_gain_control:U(),echo_cancellation:U(),noise_suppression:U(),qos:U(),silence_warning:U(),deaf:U(),mute:U()});var Qi=W({evt:V()}),$i=W({shortcut:vi}),ea=Jr,ta=W({skus:fn(Ti)}),na=W({entitlements:fn(Di)}),ra=fn(Di).nullable(),ia=W({use_interactive_pip:U()}),aa=W({locale:V()}),oa=W({enabled:U()}),sa=W({permissions:nn().or(V())}),ca=ur(W({opened:U().or(sn())}).default({opened:null})),la=W({iosKeyboardResizesView:On(U())}),ua=Ir.extend({cmd:Tn(K),evt:sn()});function da({cmd:e,data:t}){switch(e){case K.AUTHORIZE:return Gi.parse(t);case K.CAPTURE_SHORTCUT:return $i.parse(t);case K.ENCOURAGE_HW_ACCELERATION:return oa.parse(t);case K.GET_CHANNEL:return Ji.parse(t);case K.GET_CHANNELS:return Yi.parse(t);case K.GET_CHANNEL_PERMISSIONS:return sa.parse(t);case K.GET_GUILD:return qi.parse(t);case K.GET_GUILDS:return Ki.parse(t);case K.GET_PLATFORM_BEHAVIORS:return la.parse(t);case K.GET_CHANNEL:return Ji.parse(t);case K.SELECT_TEXT_CHANNEL:return Zi.parse(t);case K.SELECT_VOICE_CHANNEL:return Xi.parse(t);case K.SET_ACTIVITY:return ea.parse(t);case K.GET_SKUS_EMBEDDED:return ta.parse(t);case K.GET_ENTITLEMENTS_EMBEDDED:return na.parse(t);case K.SET_CONFIG:return ia.parse(t);case K.START_PURCHASE:return ra.parse(t);case K.SUBSCRIBE:case K.UNSUBSCRIBE:return Qi.parse(t);case K.USER_SETTINGS_GET_LOCALE:return aa.parse(t);case K.OPEN_EXTERNAL_LINK:return ca.parse(t);case K.SET_ORIENTATION_LOCK_STATE:case K.SET_CERTIFIED_DEVICES:case K.SEND_ANALYTICS_EVENT:case K.OPEN_INVITE_DIALOG:case K.CAPTURE_LOG:case K.GET_SKUS:case K.GET_ENTITLEMENTS:return Wi.parse(t);case K.AUTHENTICATE:case K.GET_ACTIVITY_INSTANCE_CONNECTED_PARTICIPANTS:case K.GET_QUEST:case K.GET_QUEST_ENROLLMENT_STATUS:case K.GET_RELATIONSHIPS:case K.GET_USER:case K.INITIATE_IMAGE_UPLOAD:case K.INVITE_USER_EMBEDDED:case K.OPEN_SHARE_MOMENT_DIALOG:case K.QUEST_START_TIMER:case K.REQUEST_PROXY_TICKET_REFRESH:case K.SHARE_INTERACTION:case K.SHARE_LINK:let{response:n}=Nr[e];return n.parse(t);default:Ui(e,Error(`Unrecognized command ${e}`))}}function fa(e){return Object.assign(Object.assign({},e),{data:da(e)})}W({frame_id:V(),platform:Tn(cr).optional().nullable()}),W({v:Cn(1),encoding:Cn(`json`).optional(),client_id:V(),frame_id:V()});var pa=W({code:H(),message:V().optional()}),ma=W({evt:V().nullable(),nonce:V().nullable(),data:ln().nullable(),cmd:V()}).passthrough();function ha(e){let t=ma.parse(e);return t.evt==null?fa(ua.passthrough().parse(t)):t.evt===`ERROR`?zi.parse(t):Vi(Bi.parse(t))}function ga(e,t,n,r=()=>void 0){let i=Ir.extend({cmd:Cn(t),data:n});return async n=>{let a=await e({cmd:t,args:n,transfer:r(n)});return i.parse(a).data}}function _a(e,t=()=>void 0){let n=Nr[e].response,r=Ir.extend({cmd:Cn(e),data:n});return n=>async i=>{let a=await n({cmd:e,args:i,transfer:t(i)});return r.parse(a).data}}var va=e=>ga(e,K.AUTHORIZE,Gi),ya=e=>ga(e,K.CAPTURE_LOG,Wi),ba=e=>ga(e,K.ENCOURAGE_HW_ACCELERATION,oa),xa=e=>ga(e,K.GET_CHANNEL,Ji),Sa=e=>ga(e,K.GET_ENTITLEMENTS_EMBEDDED,na),Ca=e=>ga(e,K.GET_SKUS_EMBEDDED,ta),wa=e=>ga(e,K.GET_CHANNEL_PERMISSIONS,sa),Ta=e=>ga(e,K.GET_PLATFORM_BEHAVIORS,la),Ea=e=>ga(e,K.OPEN_EXTERNAL_LINK,ca),Da=e=>ga(e,K.OPEN_INVITE_DIALOG,Wi);Jr.pick({state:!0,state_url:!0,details:!0,details_url:!0,timestamps:!0,assets:!0,party:!0,secrets:!0,instance:!0,type:!0}).extend({type:Jr.shape.type.optional(),instance:Jr.shape.instance.optional()}).nullable();var Oa=e=>ga(e,K.SET_ACTIVITY,ea),ka=e=>ga(e,K.SET_CONFIG,ia);function Aa({sendCommand:e,cmd:t,response:n,fallbackTransform:r,transferTransform:i=()=>void 0}){let a=Ir.extend({cmd:Cn(t),data:n});return async n=>{try{let r=await e({cmd:t,args:n,transfer:i(n)});return a.parse(r).data}catch(o){if(o.code===or.INVALID_PAYLOAD){let o=r(n),s=await e({cmd:t,args:o,transfer:i(o)});return a.parse(s).data}else throw o}}}var ja=e=>({lock_state:e.lock_state,picture_in_picture_lock_state:e.picture_in_picture_lock_state}),Ma=e=>Aa({sendCommand:e,cmd:K.SET_ORIENTATION_LOCK_STATE,response:Wi,fallbackTransform:ja}),Na=e=>ga(e,K.START_PURCHASE,ra),Pa=e=>ga(e,K.USER_SETTINGS_GET_LOCALE,aa),Fa=_a(Ar.AUTHENTICATE),Ia=_a(Ar.GET_ACTIVITY_INSTANCE_CONNECTED_PARTICIPANTS),La=_a(Ar.GET_QUEST),Ra=_a(Ar.GET_QUEST_ENROLLMENT_STATUS),za=_a(Ar.GET_RELATIONSHIPS),Ba=_a(Ar.GET_USER),Va=_a(Ar.INITIATE_IMAGE_UPLOAD),Ha=_a(Ar.INVITE_USER_EMBEDDED),Ua=_a(Ar.OPEN_SHARE_MOMENT_DIALOG),Wa=_a(Ar.QUEST_START_TIMER),Ga=_a(Ar.REQUEST_PROXY_TICKET_REFRESH),Ka=_a(Ar.SHARE_INTERACTION),qa=_a(Ar.SHARE_LINK);function Ja(e){return{authorize:va(e),captureLog:ya(e),encourageHardwareAcceleration:ba(e),getChannel:xa(e),getChannelPermissions:wa(e),getEntitlements:Sa(e),getPlatformBehaviors:Ta(e),getSkus:Ca(e),openExternalLink:Ea(e),openInviteDialog:Da(e),setActivity:Oa(e),setConfig:ka(e),setOrientationLockState:Ma(e),startPurchase:Na(e),userSettingsGetLocale:Pa(e),getInstanceConnectedParticipants:Ia(e),authenticate:Fa(e),getActivityInstanceConnectedParticipants:Ia(e),getQuest:La(e),getQuestEnrollmentStatus:Ra(e),getRelationships:za(e),getUser:Ba(e),initiateImageUpload:Va(e),inviteUserEmbedded:Ha(e),openShareMomentDialog:Ua(e),questStartTimer:Wa(e),requestProxyTicketRefresh:Ga(e),shareInteraction:Ka(e),shareLink:qa(e)}}var Ya=class extends Error{constructor(e,t=``){super(t),this.code=e,this.message=t,this.name=`Discord SDK Error`}};function Xa(){return{disableConsoleLogOverride:!1}}var Za=[`log`,`warn`,`debug`,`info`,`error`];function Qa(e,t,n){let r=e[t],i=e;r&&(e[t]=function(){let e=[].slice.call(arguments);n(t,``+e.join(` `)),r.apply(i,e)})}var $a=`2.5.0`,eo={randomUUID:typeof crypto<`u`&&crypto.randomUUID&&crypto.randomUUID.bind(crypto)},to,no=new Uint8Array(16);function ro(){if(!to){if(typeof crypto>`u`||!crypto.getRandomValues)throw Error(`crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported`);to=crypto.getRandomValues.bind(crypto)}return to(no)}var io=[];for(let e=0;e<256;++e)io.push((e+256).toString(16).slice(1));function ao(e,t=0){return(io[e[t+0]]+io[e[t+1]]+io[e[t+2]]+io[e[t+3]]+`-`+io[e[t+4]]+io[e[t+5]]+`-`+io[e[t+6]]+io[e[t+7]]+`-`+io[e[t+8]]+io[e[t+9]]+`-`+io[e[t+10]]+io[e[t+11]]+io[e[t+12]]+io[e[t+13]]+io[e[t+14]]+io[e[t+15]]).toLowerCase()}function oo(e,t,n){if(eo.randomUUID&&!t&&!e)return eo.randomUUID();e||={};let r=e.random??e.rng?.()??ro();if(r.length<16)throw Error(`Random bytes length must be >= 16`);return r[6]=r[6]&15|64,r[8]=r[8]&63|128,ao(r)}var so;(function(e){e[e.HANDSHAKE=0]=`HANDSHAKE`,e[e.FRAME=1]=`FRAME`,e[e.CLOSE=2]=`CLOSE`,e[e.HELLO=3]=`HELLO`})(so||={});var co=new Set(lo());function lo(){return typeof window>`u`?[]:[window.location.origin,`https://discord.com`,`https://discordapp.com`,`https://ptb.discord.com`,`https://ptb.discordapp.com`,`https://canary.discord.com`,`https://canary.discordapp.com`,`https://staging.discord.co`,`http://localhost:3333`,`https://pax.discord.com`,`null`]}function uo(){return[window.parent.opener??window.parent,document.referrer?document.referrer:`*`]}var fo=class{getTransfer(e){switch(e.cmd){case K.SUBSCRIBE:case K.UNSUBSCRIBE:return;default:return e.transfer??void 0}}constructor(e,t){if(this.sdkVersion=$a,this.mobileAppVersion=null,this.source=null,this.sourceOrigin=``,this.eventBus=new Se,this.pendingCommands=new Map,this.sendCommand=e=>{var t;if(this.source==null)throw Error(`Attempting to send message before initialization`);let n=oo();return(t=this.source)==null||t.postMessage([so.FRAME,Object.assign(Object.assign({},e),{nonce:n})],this.sourceOrigin,this.getTransfer(e)),new Promise((e,t)=>{this.pendingCommands.set(n,{resolve:e,reject:t})})},this.commands=Ja(this.sendCommand),this.handleMessage=e=>{if(!co.has(e.origin))return;let t=e.data;if(!Array.isArray(t))return;let[n,r]=t;switch(n){case so.HELLO:return;case so.CLOSE:return this.handleClose(r);case so.HANDSHAKE:return this.handleHandshake();case so.FRAME:return this.handleFrame(r);default:throw Error(`Invalid message format`)}},this.isReady=!1,this.clientId=e,this.configuration=t??Xa(),typeof window<`u`&&window.addEventListener(`message`,this.handleMessage),typeof window>`u`){this.frameId=``,this.instanceId=``,this.customId=null,this.referrerId=null,this.platform=cr.DESKTOP,this.guildId=null,this.channelId=null,this.locationId=null;return}let n=new URLSearchParams(this._getSearch()),r=n.get(`frame_id`);if(!r)throw Error(`frame_id query param is not defined`);this.frameId=r;let i=n.get(`instance_id`);if(!i)throw Error(`instance_id query param is not defined`);this.instanceId=i;let a=n.get(`platform`);if(!a)throw Error(`platform query param is not defined`);if(a!==cr.DESKTOP&&a!==cr.MOBILE)throw Error(`Invalid query param "platform" of "${a}". Valid values are "${cr.DESKTOP}" or "${cr.MOBILE}"`);this.platform=a,this.customId=n.get(`custom_id`),this.referrerId=n.get(`referrer_id`),this.guildId=n.get(`guild_id`),this.channelId=n.get(`channel_id`),this.locationId=n.get(`location_id`),this.mobileAppVersion=n.get(`mobile_app_version`),[this.source,this.sourceOrigin]=uo(),this.addOnReadyListener(),this.handshake()}close(e,t){var n;window.removeEventListener(`message`,this.handleMessage);let r=oo();(n=this.source)==null||n.postMessage([so.CLOSE,{code:e,message:t,nonce:r}],this.sourceOrigin)}async subscribe(e,t,...n){let[r]=n,i=this.eventBus.listenerCount(e),a=this.eventBus.on(e,t);return Object.values(Li).includes(e)&&e!==Li.READY&&i===0&&await this.sendCommand({cmd:K.SUBSCRIBE,args:r,evt:e}),a}async unsubscribe(e,t,...n){let[r]=n;return e!==Li.READY&&this.eventBus.listenerCount(e)===1&&await this.sendCommand({cmd:K.UNSUBSCRIBE,evt:e,args:r}),this.eventBus.off(e,t)}async ready(){this.isReady||await new Promise(e=>{this.eventBus.once(Li.READY,e)})}parseMajorMobileVersion(){if(this.mobileAppVersion&&this.mobileAppVersion.includes(`.`))try{return parseInt(this.mobileAppVersion.split(`.`)[0])}catch{return-1}return-1}handshake(){var e;let t={v:1,encoding:`json`,client_id:this.clientId,frame_id:this.frameId},n=this.parseMajorMobileVersion();(this.platform===cr.DESKTOP||n>=250)&&(t.sdk_version=this.sdkVersion),(e=this.source)==null||e.postMessage([so.HANDSHAKE,t],this.sourceOrigin)}addOnReadyListener(){this.eventBus.once(Li.READY,()=>{this.overrideConsoleLogging(),this.isReady=!0})}overrideConsoleLogging(){if(this.configuration.disableConsoleLogOverride)return;let e=(e,t)=>{this.commands.captureLog({level:e,message:t})};Za.forEach(t=>{Qa(console,t,e)})}handleClose(e){pa.parse(e)}handleHandshake(){}handleFrame(e){var t,n;let r;try{r=ha(e)}catch(t){console.error(`Failed to parse`,e),console.error(t);return}if(r.cmd===`DISPATCH`)this.eventBus.emit(r.evt,r.data);else{if(r.evt===`ERROR`){if(r.nonce!=null){(t=this.pendingCommands.get(r.nonce))==null||t.reject(r.data),this.pendingCommands.delete(r.nonce);return}this.eventBus.emit(`error`,new Ya(r.data.code,r.data.message))}if(r.nonce==null){console.error(`Missing nonce`,e);return}(n=this.pendingCommands.get(r.nonce))==null||n.resolve(r),this.pendingCommands.delete(r.nonce)}}_getSearch(){return typeof window>`u`?``:window.location.search}},po=1e9,mo={precision:20,rounding:4,toExpNeg:-7,toExpPos:21,LN10:`2.302585092994045684017991454684364207601101488628772976033327900967572609677352480235997205089598298341967784042286`},ho=!0,go=`[DecimalError] `,_o=go+`Invalid argument: `,vo=go+`Exponent out of range: `,yo=Math.floor,bo=Math.pow,xo=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,So,Co=1e7,wo=7,To=9007199254740991,Eo=yo(To/wo),q={};q.absoluteValue=q.abs=function(){var e=new this.constructor(this);return e.s&&=1,e},q.comparedTo=q.cmp=function(e){var t,n,r,i,a=this;if(e=new a.constructor(e),a.s!==e.s)return a.s||-e.s;if(a.e!==e.e)return a.e>e.e^a.s<0?1:-1;for(r=a.d.length,i=e.d.length,t=0,n=re.d[t]^a.s<0?1:-1;return r===i?0:r>i^a.s<0?1:-1},q.decimalPlaces=q.dp=function(){var e=this,t=e.d.length-1,n=(t-e.e)*wo;if(t=e.d[t],t)for(;t%10==0;t/=10)n--;return n<0?0:n},q.dividedBy=q.div=function(e){return Ao(this,new this.constructor(e))},q.dividedToIntegerBy=q.idiv=function(e){var t=this,n=t.constructor;return Lo(Ao(t,new n(e),0,1),n.precision)},q.equals=q.eq=function(e){return!this.cmp(e)},q.exponent=function(){return Mo(this)},q.greaterThan=q.gt=function(e){return this.cmp(e)>0},q.greaterThanOrEqualTo=q.gte=function(e){return this.cmp(e)>=0},q.isInteger=q.isint=function(){return this.e>this.d.length-2},q.isNegative=q.isneg=function(){return this.s<0},q.isPositive=q.ispos=function(){return this.s>0},q.isZero=function(){return this.s===0},q.lessThan=q.lt=function(e){return this.cmp(e)<0},q.lessThanOrEqualTo=q.lte=function(e){return this.cmp(e)<1},q.logarithm=q.log=function(e){var t,n=this,r=n.constructor,i=r.precision,a=i+5;if(e===void 0)e=new r(10);else if(e=new r(e),e.s<1||e.eq(So))throw Error(go+`NaN`);if(n.s<1)throw Error(go+(n.s?`NaN`:`-Infinity`));return n.eq(So)?new r(0):(ho=!1,t=Ao(Fo(n,a),Fo(e,a),a),ho=!0,Lo(t,i))},q.minus=q.sub=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?Ro(t,e):Do(t,(e.s=-e.s,e))},q.modulo=q.mod=function(e){var t,n=this,r=n.constructor,i=r.precision;if(e=new r(e),!e.s)throw Error(go+`NaN`);return n.s?(ho=!1,t=Ao(n,e,0,1).times(e),ho=!0,n.minus(t)):Lo(new r(n),i)},q.naturalExponential=q.exp=function(){return jo(this)},q.naturalLogarithm=q.ln=function(){return Fo(this)},q.negated=q.neg=function(){var e=new this.constructor(this);return e.s=-e.s||0,e},q.plus=q.add=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?Do(t,e):Ro(t,(e.s=-e.s,e))},q.precision=q.sd=function(e){var t,n,r,i=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(_o+e);if(t=Mo(i)+1,r=i.d.length-1,n=r*wo+1,r=i.d[r],r){for(;r%10==0;r/=10)n--;for(r=i.d[0];r>=10;r/=10)n++}return e&&t>n?t:n},q.squareRoot=q.sqrt=function(){var e,t,n,r,i,a,o,s=this,c=s.constructor;if(s.s<1){if(!s.s)return new c(0);throw Error(go+`NaN`)}for(e=Mo(s),ho=!1,i=Math.sqrt(+s),i==0||i==1/0?(t=ko(s.d),(t.length+e)%2==0&&(t+=`0`),i=Math.sqrt(t),e=yo((e+1)/2)-(e<0||e%2),i==1/0?t=`5e`+e:(t=i.toExponential(),t=t.slice(0,t.indexOf(`e`)+1)+e),r=new c(t)):r=new c(i.toString()),n=c.precision,i=o=n+3;;)if(a=r,r=a.plus(Ao(s,a,o+2)).times(.5),ko(a.d).slice(0,o)===(t=ko(r.d)).slice(0,o)){if(t=t.slice(o-3,o+1),i==o&&t==`4999`){if(Lo(a,n+1,0),a.times(a).eq(s)){r=a;break}}else if(t!=`9999`)break;o+=4}return ho=!0,Lo(r,n)},q.times=q.mul=function(e){var t,n,r,i,a,o,s,c,l,u=this,d=u.constructor,f=u.d,p=(e=new d(e)).d;if(!u.s||!e.s)return new d(0);for(e.s*=u.s,n=u.e+e.e,c=f.length,l=p.length,c=0;){for(t=0,i=c+r;i>r;)s=a[i]+p[r]*f[i-r-1]+t,a[i--]=s%Co|0,t=s/Co|0;a[i]=(a[i]+t)%Co|0}for(;!a[--o];)a.pop();return t?++n:a.shift(),e.d=a,e.e=n,ho?Lo(e,d.precision):e},q.toDecimalPlaces=q.todp=function(e,t){var n=this,r=n.constructor;return n=new r(n),e===void 0?n:(Oo(e,0,po),t===void 0?t=r.rounding:Oo(t,0,8),Lo(n,e+Mo(n)+1,t))},q.toExponential=function(e,t){var n,r=this,i=r.constructor;return e===void 0?n=zo(r,!0):(Oo(e,0,po),t===void 0?t=i.rounding:Oo(t,0,8),r=Lo(new i(r),e+1,t),n=zo(r,!0,e+1)),n},q.toFixed=function(e,t){var n,r,i=this,a=i.constructor;return e===void 0?zo(i):(Oo(e,0,po),t===void 0?t=a.rounding:Oo(t,0,8),r=Lo(new a(i),e+Mo(i)+1,t),n=zo(r.abs(),!1,e+Mo(r)+1),i.isneg()&&!i.isZero()?`-`+n:n)},q.toInteger=q.toint=function(){var e=this,t=e.constructor;return Lo(new t(e),Mo(e)+1,t.rounding)},q.toNumber=function(){return+this},q.toPower=q.pow=function(e){var t,n,r,i,a,o,s=this,c=s.constructor,l=12,u=+(e=new c(e));if(!e.s)return new c(So);if(s=new c(s),!s.s){if(e.s<1)throw Error(go+`Infinity`);return s}if(s.eq(So))return s;if(r=c.precision,e.eq(So))return Lo(s,r);if(t=e.e,n=e.d.length-1,o=t>=n,a=s.s,!o){if(a<0)throw Error(go+`NaN`)}else if((n=u<0?-u:u)<=To){for(i=new c(So),t=Math.ceil(r/wo+4),ho=!1;n%2&&(i=i.times(s),Bo(i.d,t)),n=yo(n/2),n!==0;)s=s.times(s),Bo(s.d,t);return ho=!0,e.s<0?new c(So).div(i):Lo(i,r)}return a=a<0&&e.d[Math.max(t,n)]&1?-1:1,s.s=1,ho=!1,i=e.times(Fo(s,r+l)),ho=!0,i=jo(i),i.s=a,i},q.toPrecision=function(e,t){var n,r,i=this,a=i.constructor;return e===void 0?(n=Mo(i),r=zo(i,n<=a.toExpNeg||n>=a.toExpPos)):(Oo(e,1,po),t===void 0?t=a.rounding:Oo(t,0,8),i=Lo(new a(i),e,t),n=Mo(i),r=zo(i,e<=n||n<=a.toExpNeg,e)),r},q.toSignificantDigits=q.tosd=function(e,t){var n=this,r=n.constructor;return e===void 0?(e=r.precision,t=r.rounding):(Oo(e,1,po),t===void 0?t=r.rounding:Oo(t,0,8)),Lo(new r(n),e,t)},q.toString=q.valueOf=q.val=q.toJSON=q[Symbol.for(`nodejs.util.inspect.custom`)]=function(){var e=this,t=Mo(e),n=e.constructor;return zo(e,t<=n.toExpNeg||t>=n.toExpPos)};function Do(e,t){var n,r,i,a,o,s,c,l,u=e.constructor,d=u.precision;if(!e.s||!t.s)return t.s||(t=new u(e)),ho?Lo(t,d):t;if(c=e.d,l=t.d,o=e.e,i=t.e,c=c.slice(),a=o-i,a){for(a<0?(r=c,a=-a,s=l.length):(r=l,i=o,s=c.length),o=Math.ceil(d/wo),s=o>s?o+1:s+1,a>s&&(a=s,r.length=1),r.reverse();a--;)r.push(0);r.reverse()}for(s=c.length,a=l.length,s-a<0&&(a=s,r=l,l=c,c=r),n=0;a;)n=(c[--a]=c[a]+l[a]+n)/Co|0,c[a]%=Co;for(n&&(c.unshift(n),++i),s=c.length;c[--s]==0;)c.pop();return t.d=c,t.e=i,ho?Lo(t,d):t}function Oo(e,t,n){if(e!==~~e||en)throw Error(_o+e)}function ko(e){var t,n,r,i=e.length-1,a=``,o=e[0];if(i>0){for(a+=o,t=1;tr?1:-1;else for(i=a=0;it[i]?1:-1;break}return a}function n(e,t,n){for(var r=0;n--;)e[n]-=r,r=+(e[n]1;)e.shift()}return function(r,i,a,o){var s,c,l,u,d,f,p,m,h,g,_,v,y,b,x,S,C,w,T=r.constructor,E=r.s==i.s?1:-1,D=r.d,O=i.d;if(!r.s)return new T(r);if(!i.s)throw Error(go+`Division by zero`);for(c=r.e-i.e,C=O.length,x=D.length,p=new T(E),m=p.d=[],l=0;O[l]==(D[l]||0);)++l;if(O[l]>(D[l]||0)&&--c,v=a==null?a=T.precision:o?a+(Mo(r)-Mo(i))+1:a,v<0)return new T(0);if(v=v/wo+2|0,l=0,C==1)for(u=0,O=O[0],v++;(l1&&(O=e(O,u),D=e(D,u),C=O.length,x=D.length),b=C,h=D.slice(0,C),g=h.length;g=Co/2&&++S;do u=0,s=t(O,h,C,g),s<0?(_=h[0],C!=g&&(_=_*Co+(h[1]||0)),u=_/S|0,u>1?(u>=Co&&(u=Co-1),d=e(O,u),f=d.length,g=h.length,s=t(d,h,f,g),s==1&&(u--,n(d,C16)throw Error(vo+Mo(e));if(!e.s)return new u(So);for(t==null?(ho=!1,s=d):s=t,o=new u(.03125);e.abs().gte(.1);)e=e.times(o),l+=5;for(r=Math.log(bo(2,l))/Math.LN10*2+5|0,s+=r,n=i=a=new u(So),u.precision=s;;){if(i=Lo(i.times(e),s),n=n.times(++c),o=a.plus(Ao(i,n,s)),ko(o.d).slice(0,s)===ko(a.d).slice(0,s)){for(;l--;)a=Lo(a.times(a),s);return u.precision=d,t==null?(ho=!0,Lo(a,d)):a}a=o}}function Mo(e){for(var t=e.e*wo,n=e.d[0];n>=10;n/=10)t++;return t}function No(e,t,n){if(t>e.LN10.sd())throw ho=!0,n&&(e.precision=n),Error(go+`LN10 precision limit exceeded`);return Lo(new e(e.LN10),t)}function Po(e){for(var t=``;e--;)t+=`0`;return t}function Fo(e,t){var n,r,i,a,o,s,c,l,u,d=1,f=10,p=e,m=p.d,h=p.constructor,g=h.precision;if(p.s<1)throw Error(go+(p.s?`NaN`:`-Infinity`));if(p.eq(So))return new h(0);if(t==null?(ho=!1,l=g):l=t,p.eq(10))return t??(ho=!0),No(h,l);if(l+=f,h.precision=l,n=ko(m),r=n.charAt(0),a=Mo(p),Math.abs(a)<0x5543df729c000){for(;r<7&&r!=1||r==1&&n.charAt(1)>3;)p=p.times(e),n=ko(p.d),r=n.charAt(0),d++;a=Mo(p),r>1?(p=new h(`0.`+n),a++):p=new h(r+`.`+n.slice(1))}else return c=No(h,l+2,g).times(a+``),p=Fo(new h(r+`.`+n.slice(1)),l-f).plus(c),h.precision=g,t==null?(ho=!0,Lo(p,g)):p;for(s=o=p=Ao(p.minus(So),p.plus(So),l),u=Lo(p.times(p),l),i=3;;){if(o=Lo(o.times(u),l),c=s.plus(Ao(o,new h(i),l)),ko(c.d).slice(0,l)===ko(s.d).slice(0,l))return s=s.times(2),a!==0&&(s=s.plus(No(h,l+2,g).times(a+``))),s=Ao(s,new h(d),l),h.precision=g,t==null?(ho=!0,Lo(s,g)):s;s=c,i+=2}}function Io(e,t){var n,r,i;for((n=t.indexOf(`.`))>-1&&(t=t.replace(`.`,``)),(r=t.search(/e/i))>0?(n<0&&(n=r),n+=+t.slice(r+1),t=t.substring(0,r)):n<0&&(n=t.length),r=0;t.charCodeAt(r)===48;)++r;for(i=t.length;t.charCodeAt(i-1)===48;)--i;if(t=t.slice(r,i),t){if(i-=r,n=n-r-1,e.e=yo(n/wo),e.d=[],r=(n+1)%wo,n<0&&(r+=wo),rEo||e.e<-Eo))throw Error(vo+n)}else e.s=0,e.e=0,e.d=[0];return e}function Lo(e,t,n){var r,i,a,o,s,c,l,u,d=e.d;for(o=1,a=d[0];a>=10;a/=10)o++;if(r=t-o,r<0)r+=wo,i=t,l=d[u=0];else{if(u=Math.ceil((r+1)/wo),a=d.length,u>=a)return e;for(l=a=d[u],o=1;a>=10;a/=10)o++;r%=wo,i=r-wo+o}if(n!==void 0&&(a=bo(10,o-i-1),s=l/a%10|0,c=t<0||d[u+1]!==void 0||l%a,c=n<4?(s||c)&&(n==0||n==(e.s<0?3:2)):s>5||s==5&&(n==4||c||n==6&&(r>0?i>0?l/bo(10,o-i):0:d[u-1])%10&1||n==(e.s<0?8:7))),t<1||!d[0])return c?(a=Mo(e),d.length=1,t=t-a-1,d[0]=bo(10,(wo-t%wo)%wo),e.e=yo(-t/wo)||0):(d.length=1,d[0]=e.e=e.s=0),e;if(r==0?(d.length=u,a=1,u--):(d.length=u+1,a=bo(10,wo-r),d[u]=i>0?(l/bo(10,o-i)%bo(10,i)|0)*a:0),c)for(;;)if(u==0){(d[0]+=a)==Co&&(d[0]=1,++e.e);break}else{if(d[u]+=a,d[u]!=Co)break;d[u--]=0,a=1}for(r=d.length;d[--r]===0;)d.pop();if(ho&&(e.e>Eo||e.e<-Eo))throw Error(vo+Mo(e));return e}function Ro(e,t){var n,r,i,a,o,s,c,l,u,d,f=e.constructor,p=f.precision;if(!e.s||!t.s)return t.s?t.s=-t.s:t=new f(e),ho?Lo(t,p):t;if(c=e.d,d=t.d,r=t.e,l=e.e,c=c.slice(),o=l-r,o){for(u=o<0,u?(n=c,o=-o,s=d.length):(n=d,r=l,s=c.length),i=Math.max(Math.ceil(p/wo),s)+2,o>i&&(o=i,n.length=1),n.reverse(),i=o;i--;)n.push(0);n.reverse()}else{for(i=c.length,s=d.length,u=i0;--i)c[s++]=0;for(i=d.length;i>o;){if(c[--i]0?a=a.charAt(0)+`.`+a.slice(1)+Po(r):o>1&&(a=a.charAt(0)+`.`+a.slice(1)),a=a+(i<0?`e`:`e+`)+i):i<0?(a=`0.`+Po(-i-1)+a,n&&(r=n-o)>0&&(a+=Po(r))):i>=o?(a+=Po(i+1-o),n&&(r=n-i-1)>0&&(a=a+`.`+Po(r))):((r=i+1)0&&(i+1===o&&(a+=`.`),a+=Po(r))),e.s<0?`-`+a:a}function Bo(e,t){if(e.length>t)return e.length=t,!0}function Vo(e){var t,n,r;function i(e){var t=this;if(!(t instanceof i))return new i(e);if(t.constructor=i,e instanceof i){t.s=e.s,t.e=e.e,t.d=(e=e.d)?e.slice():e;return}if(typeof e==`number`){if(e*0!=0)throw Error(_o+e);if(e>0)t.s=1;else if(e<0)e=-e,t.s=-1;else{t.s=0,t.e=0,t.d=[0];return}if(e===~~e&&e<1e7){t.e=0,t.d=[e];return}return Io(t,e.toString())}else if(typeof e!=`string`)throw Error(_o+e);if(e.charCodeAt(0)===45?(e=e.slice(1),t.s=-1):t.s=1,xo.test(e))Io(t,e);else throw Error(_o+e)}if(i.prototype=q,i.ROUND_UP=0,i.ROUND_DOWN=1,i.ROUND_CEIL=2,i.ROUND_FLOOR=3,i.ROUND_HALF_UP=4,i.ROUND_HALF_DOWN=5,i.ROUND_HALF_EVEN=6,i.ROUND_HALF_CEIL=7,i.ROUND_HALF_FLOOR=8,i.clone=Vo,i.config=i.set=Ho,e===void 0&&(e={}),e)for(r=[`precision`,`rounding`,`toExpNeg`,`toExpPos`,`LN10`],t=0;t=i[t+1]&&r<=i[t+2])this[n]=r;else throw Error(_o+n+`: `+r);if((r=e[n=`LN10`])!==void 0)if(r==Math.LN10)this[n]=new this(r);else throw Error(_o+n+`: `+r);return this}So=new(Vo(mo))(1);var J;(function(e){e.AED=`aed`,e.AFN=`afn`,e.ALL=`all`,e.AMD=`amd`,e.ANG=`ang`,e.AOA=`aoa`,e.ARS=`ars`,e.AUD=`aud`,e.AWG=`awg`,e.AZN=`azn`,e.BAM=`bam`,e.BBD=`bbd`,e.BDT=`bdt`,e.BGN=`bgn`,e.BHD=`bhd`,e.BIF=`bif`,e.BMD=`bmd`,e.BND=`bnd`,e.BOB=`bob`,e.BOV=`bov`,e.BRL=`brl`,e.BSD=`bsd`,e.BTN=`btn`,e.BWP=`bwp`,e.BYN=`byn`,e.BYR=`byr`,e.BZD=`bzd`,e.CAD=`cad`,e.CDF=`cdf`,e.CHE=`che`,e.CHF=`chf`,e.CHW=`chw`,e.CLF=`clf`,e.CLP=`clp`,e.CNY=`cny`,e.COP=`cop`,e.COU=`cou`,e.CRC=`crc`,e.CUC=`cuc`,e.CUP=`cup`,e.CVE=`cve`,e.CZK=`czk`,e.DJF=`djf`,e.DKK=`dkk`,e.DOP=`dop`,e.DZD=`dzd`,e.EGP=`egp`,e.ERN=`ern`,e.ETB=`etb`,e.EUR=`eur`,e.FJD=`fjd`,e.FKP=`fkp`,e.GBP=`gbp`,e.GEL=`gel`,e.GHS=`ghs`,e.GIP=`gip`,e.GMD=`gmd`,e.GNF=`gnf`,e.GTQ=`gtq`,e.GYD=`gyd`,e.HKD=`hkd`,e.HNL=`hnl`,e.HRK=`hrk`,e.HTG=`htg`,e.HUF=`huf`,e.IDR=`idr`,e.ILS=`ils`,e.INR=`inr`,e.IQD=`iqd`,e.IRR=`irr`,e.ISK=`isk`,e.JMD=`jmd`,e.JOD=`jod`,e.JPY=`jpy`,e.KES=`kes`,e.KGS=`kgs`,e.KHR=`khr`,e.KMF=`kmf`,e.KPW=`kpw`,e.KRW=`krw`,e.KWD=`kwd`,e.KYD=`kyd`,e.KZT=`kzt`,e.LAK=`lak`,e.LBP=`lbp`,e.LKR=`lkr`,e.LRD=`lrd`,e.LSL=`lsl`,e.LTL=`ltl`,e.LVL=`lvl`,e.LYD=`lyd`,e.MAD=`mad`,e.MDL=`mdl`,e.MGA=`mga`,e.MKD=`mkd`,e.MMK=`mmk`,e.MNT=`mnt`,e.MOP=`mop`,e.MRO=`mro`,e.MUR=`mur`,e.MVR=`mvr`,e.MWK=`mwk`,e.MXN=`mxn`,e.MXV=`mxv`,e.MYR=`myr`,e.MZN=`mzn`,e.NAD=`nad`,e.NGN=`ngn`,e.NIO=`nio`,e.NOK=`nok`,e.NPR=`npr`,e.NZD=`nzd`,e.OMR=`omr`,e.PAB=`pab`,e.PEN=`pen`,e.PGK=`pgk`,e.PHP=`php`,e.PKR=`pkr`,e.PLN=`pln`,e.PYG=`pyg`,e.QAR=`qar`,e.RON=`ron`,e.RSD=`rsd`,e.RUB=`rub`,e.RWF=`rwf`,e.SAR=`sar`,e.SBD=`sbd`,e.SCR=`scr`,e.SDG=`sdg`,e.SEK=`sek`,e.SGD=`sgd`,e.SHP=`shp`,e.SLL=`sll`,e.SOS=`sos`,e.SRD=`srd`,e.SSP=`ssp`,e.STD=`std`,e.SVC=`svc`,e.SYP=`syp`,e.SZL=`szl`,e.THB=`thb`,e.TJS=`tjs`,e.TMT=`tmt`,e.TND=`tnd`,e.TOP=`top`,e.TRY=`try`,e.TTD=`ttd`,e.TWD=`twd`,e.TZS=`tzs`,e.UAH=`uah`,e.UGX=`ugx`,e.USD=`usd`,e.USN=`usn`,e.USS=`uss`,e.UYI=`uyi`,e.UYU=`uyu`,e.UZS=`uzs`,e.VEF=`vef`,e.VND=`vnd`,e.VUV=`vuv`,e.WST=`wst`,e.XAF=`xaf`,e.XAG=`xag`,e.XAU=`xau`,e.XBA=`xba`,e.XBB=`xbb`,e.XBC=`xbc`,e.XBD=`xbd`,e.XCD=`xcd`,e.XDR=`xdr`,e.XFU=`xfu`,e.XOF=`xof`,e.XPD=`xpd`,e.XPF=`xpf`,e.XPT=`xpt`,e.XSU=`xsu`,e.XTS=`xts`,e.XUA=`xua`,e.YER=`yer`,e.ZAR=`zar`,e.ZMW=`zmw`,e.ZWL=`zwl`})(J||={}),J.AED,J.AFN,J.ALL,J.AMD,J.ANG,J.AOA,J.ARS,J.AUD,J.AWG,J.AZN,J.BAM,J.BBD,J.BDT,J.BGN,J.BHD,J.BIF,J.BMD,J.BND,J.BOB,J.BOV,J.BRL,J.BSD,J.BTN,J.BWP,J.BYR,J.BYN,J.BZD,J.CAD,J.CDF,J.CHE,J.CHF,J.CHW,J.CLF,J.CLP,J.CNY,J.COP,J.COU,J.CRC,J.CUC,J.CUP,J.CVE,J.CZK,J.DJF,J.DKK,J.DOP,J.DZD,J.EGP,J.ERN,J.ETB,J.EUR,J.FJD,J.FKP,J.GBP,J.GEL,J.GHS,J.GIP,J.GMD,J.GNF,J.GTQ,J.GYD,J.HKD,J.HNL,J.HRK,J.HTG,J.HUF,J.IDR,J.ILS,J.INR,J.IQD,J.IRR,J.ISK,J.JMD,J.JOD,J.JPY,J.KES,J.KGS,J.KHR,J.KMF,J.KPW,J.KRW,J.KWD,J.KYD,J.KZT,J.LAK,J.LBP,J.LKR,J.LRD,J.LSL,J.LTL,J.LVL,J.LYD,J.MAD,J.MDL,J.MGA,J.MKD,J.MMK,J.MNT,J.MOP,J.MRO,J.MUR,J.MVR,J.MWK,J.MXN,J.MXV,J.MYR,J.MZN,J.NAD,J.NGN,J.NIO,J.NOK,J.NPR,J.NZD,J.OMR,J.PAB,J.PEN,J.PGK,J.PHP,J.PKR,J.PLN,J.PYG,J.QAR,J.RON,J.RSD,J.RUB,J.RWF,J.SAR,J.SBD,J.SCR,J.SDG,J.SEK,J.SGD,J.SHP,J.SLL,J.SOS,J.SRD,J.SSP,J.STD,J.SVC,J.SYP,J.SZL,J.THB,J.TJS,J.TMT,J.TND,J.TOP,J.TRY,J.TTD,J.TWD,J.TZS,J.UAH,J.UGX,J.USD,J.USN,J.USS,J.UYI,J.UYU,J.UZS,J.VEF,J.VND,J.VUV,J.WST,J.XAF,J.XAG,J.XAU,J.XBA,J.XBB,J.XBC,J.XBD,J.XCD,J.XDR,J.XFU,J.XOF,J.XPD,J.XPF,J.XPT,J.XSU,J.XTS,J.XUA,J.YER,J.ZAR,J.ZMW,J.ZWL;var Uo={exports:{}};Uo.exports;var Wo;function Go(){return Wo?Uo.exports:(Wo=1,(function(e,t){var n=`__lodash_hash_undefined__`,r=9007199254740991,i=`[object Arguments]`,a=`[object Array]`,o=`[object Boolean]`,s=`[object Date]`,c=`[object Error]`,l=`[object Function]`,u=`[object Map]`,d=`[object Number]`,f=`[object Object]`,p=`[object Promise]`,m=`[object RegExp]`,h=`[object Set]`,g=`[object String]`,_=`[object Symbol]`,v=`[object WeakMap]`,y=`[object ArrayBuffer]`,b=`[object DataView]`,x=`[object Float32Array]`,S=`[object Float64Array]`,C=`[object Int8Array]`,w=`[object Int16Array]`,T=`[object Int32Array]`,E=`[object Uint8Array]`,D=`[object Uint8ClampedArray]`,O=`[object Uint16Array]`,ee=`[object Uint32Array]`,k=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,te=/^\w*$/,ne=/^\./,re=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,ie=/[\\^$.*+?()[\]{}|]/g,ae=/\\(\\)?/g,oe=/^\[object .+?Constructor\]$/,se=/^(?:0|[1-9]\d*)$/,A={};A[x]=A[S]=A[C]=A[w]=A[T]=A[E]=A[D]=A[O]=A[ee]=!0,A[i]=A[a]=A[y]=A[o]=A[b]=A[s]=A[c]=A[l]=A[u]=A[d]=A[f]=A[m]=A[h]=A[g]=A[v]=!1;var ce=typeof _e==`object`&&_e&&_e.Object===Object&&_e,le=typeof self==`object`&&self&&self.Object===Object&&self,ue=ce||le||globalThis,de=t&&!t.nodeType&&t,j=de&&e&&!e.nodeType&&e,fe=j&&j.exports===de&&ce.process,pe=function(){try{return fe&&fe.binding(`util`)}catch{}}(),me=pe&&pe.isTypedArray;function he(e,t){for(var n=-1,r=e?e.length:0;++n-1}function it(e,t){var n=this.__data__,r=xt(n,e);return r<0?n.push([e,t]):n[r][1]=t,this}$e.prototype.clear=et,$e.prototype.delete=tt,$e.prototype.get=nt,$e.prototype.has=rt,$e.prototype.set=it;function at(e){var t=-1,n=e?e.length:0;for(this.clear();++ts))return!1;var l=a.get(e);if(l&&a.get(t))return l==t;var u=-1,d=!0,f=i&1?new dt:void 0;for(a.set(e,t),a.set(t,e);++u-1&&e%1==0&&e-1&&e%1==0&&e<=r}function dn(e){var t=typeof e;return!!e&&(t==`object`||t==`function`)}function fn(e){return!!e&&typeof e==`object`}function W(e){return typeof e==`symbol`||fn(e)&&Oe.call(e)==_}var pn=me?be(me):Mt;function mn(e){return e==null?``:Rt(e)}function hn(e,t,n){var r=e==null?void 0:Tt(e,t);return r===void 0?n:r}function gn(e,t){return e!=null&&Jt(e,t,Dt)}function _n(e){return sn(e)?bt(e):Pt(e)}function vn(e,t,n){var r=on(e)||pn(e);if(t=Nt(t),n==null)if(r||dn(e)){var i=e.constructor;n=r?on(e)?new i:[]:ln(i)?St(je(e)):{}}else n={};return(r?he:wt)(e,function(e,r,i){return t(n,e,r,i)}),n}function yn(e){return e}function bn(e){return Xt(e)?ve(tn(e)):Lt(e)}e.exports=vn})(Uo,Uo.exports),Uo.exports)}Go();var{Commands:Ko}=Pr,qo=[`identify`,`guilds.members.read`];function Jo(e,t){if(e instanceof j)return e;if(typeof e==`object`&&e&&`code`in e){let n=e.code,r=Object.values(or).filter(e=>typeof e==`number`);if(typeof n==`number`&&r.includes(n))return new j(`${t}_${n}`)}return new j(t)}var Yo=15e3,Xo=12e4,Zo=15e3;function Qo(e=window.location.search){let t=new URLSearchParams(e),n=t.getAll(`frame_id`),r=t.getAll(`platform`);if(n.length!==1||n[0]===void 0||n[0].length===0||n[0].length>255||r.length!==1||![`desktop`,`mobile`].includes(r[0]??``))throw new j(`invalid_launch`)}async function $o(e,t,n,r,i){let a=null,o=new Promise((e,n)=>{t!==void 0&&(a=()=>n(new j(`cancelled`)),t.addEventListener(`abort`,a,{once:!0}),t.aborted&&a())}),s=null,c=new Promise((e,t)=>{s=setTimeout(()=>t(new j(r)),i)}),l=Promise.resolve().then(()=>{if(t?.aborted)throw new j(`cancelled`);return e()}).catch(e=>{throw Jo(e,n)});try{return await Promise.race([l,o,c])}finally{s!==null&&clearTimeout(s),t!==void 0&&a!==null&&t.removeEventListener(`abort`,a)}}function es(e,t){try{e.close(ar.CLOSE_NORMAL,t)}catch{}}async function ts(e,t=e=>new fo(e)){let n=pe();Qo();let r=await me(n,e),i;try{i=t(r.client_id)}catch(e){throw new j(Jo(e,`sdk_initialization_failed`).code,!0)}let a=()=>{if(e?.aborted)throw new j(`cancelled`)};try{if(a(),await $o(()=>i.ready(),e,`sdk_ready_failed`,`sdk_ready_timeout`,Yo),a(),i.instanceId!==n)throw new j(`instance_mismatch`);let t=await $o(()=>i.commands.authorize({client_id:r.client_id,response_type:`code`,state:r.state,prompt:`none`,scope:[...qo]}),e,`authorize_failed`,`authorize_timeout`,Xo);a();let o=await he(t.code,r.state,e);if(a(),await $o(()=>i.commands.authenticate({access_token:o.access_token}),e,`sdk_authenticate_failed`,`sdk_authenticate_timeout`,Zo)==null)throw new j(`sdk_authenticate_failed`);a();let s=o.ticket,c=!1;return{sdk:i,bootstrap:r,player:o.player,takeTicket:()=>{let e=s;return s=null,e},destroy:()=>{c||(c=!0,s=null,es(i,`Hands session closed`))}}}catch(t){let n=e?.aborted?new j(`cancelled`):Jo(t,`authorization_failed`);throw n.code===`cancelled`||n.code===`instance_mismatch`||n.code.endsWith(`_timeout`)?(es(i,`Hands authorization closed`),n):new j(n.code,!0)}}var ns={block:[55,.12,.22],hit:[85,.3,.42],counter_hit:[105,.38,.5],stun:[125,.42,.55],knockdown:[180,.62,.65]},rs=class{settings;constructor(e){this.settings=e}event(e){if(!this.settings().haptics)return;let t=ns[e.kind];if(t===void 0||typeof navigator.getGamepads!=`function`)return;let n;try{n=[...navigator.getGamepads.call(navigator)]}catch{return}let r=n.find(e=>e!==null&&e.connected&&`vibrationActuator`in e)?.vibrationActuator;if(!(r==null||typeof r.playEffect!=`function`))try{Promise.resolve(r.playEffect(`dual-rumble`,{duration:Math.min(180,Math.max(0,t[0])),strongMagnitude:Math.min(.65,Math.max(0,t[1])),weakMagnitude:Math.min(.65,Math.max(0,t[2]))})).catch(()=>void 0)}catch{}}},is={KeyF:[`left`,`jab`],KeyJ:[`right`,`jab`],KeyR:[`left`,`straight`],KeyU:[`right`,`straight`],KeyG:[`left`,`hook`],KeyH:[`right`,`hook`],KeyT:[`left`,`uppercut`],KeyY:[`right`,`uppercut`]},as={KeyZ:{kind:`slip_left`},KeyX:{kind:`slip_right`},KeyC:{kind:`weave`},KeyV:{kind:`pull`},KeyB:{kind:`clinch`},KeyN:{kind:`switch_stance`},KeyM:{kind:`taunt`},Digit1:{kind:`foul`,foul:`low_blow`},Digit2:{kind:`foul`,foul:`headbutt`},ArrowLeft:{kind:`get_up_left`},ArrowRight:{kind:`get_up_right`}},os=new Set([...Object.keys(is),...Object.keys(as),`KeyW`,`KeyA`,`KeyS`,`KeyD`,`KeyQ`,`KeyE`,`ShiftLeft`,`ShiftRight`,`AltLeft`,`AltRight`]),ss=[`Move: W up · S down · A left · D right`,`High / low guard: Q / E`,`Left/right jab: F / J`,`Left/right straight: R / U`,`Left/right hook: G / H`,`Left/right uppercut: T / Y`,`Body: Shift · Power: Alt`,`Slip: Z / X · Weave: C · Pull: V`,`Clinch: B · Stance: N · Taunt: M · Fouls: 1 / 2`,`Get-up rhythm: ← / →`,`Controller move: left stick. High / low guard: left / right shoulder (independent of punches).`,`Controller face classes: bottom jab · right straight · left hook · top uppercut.`,`Controller face hand: hold D-pad left for left hand or D-pad right for right hand, then press a face punch; otherwise punches use the right hand. A direction used for a punch is consumed and does not evade.`,`Controller modifiers: left trigger body · right trigger power.`,`Controller actions: left stick press clinch · right stick press switch stance · hold right trigger + right stick press to taunt · D-pad up weave · D-pad down pull · tap and release D-pad left/right to slip; while down, D-pad left/right performs the private get-up rhythm immediately.`,`Controller fouls: View/Back low blow · Menu/Start headbutt.`,`Right-stick gesture: horizontal 0–22.5° hook · 22.5–45° jab · 45–70° straight · 70–90° uppercut; left/right direction selects hand.`];function cs(e,t){return e.kind===t.kind?e.kind===`punch`&&t.kind===`punch`?e.hand===t.hand&&e.class===t.class&&e.target===t.target&&e.power===t.power:e.kind===`foul`&&t.kind===`foul`?e.foul===t.foul:!0:!1}function ls(e,t,n){if(n<1||e.length>0&&cs(e.at(-1),t))return;let r=e.length-n+1;r>0&&e.splice(0,r),e.push(t)}var us=class{maximum;queue=[];counter=0;listener=null;constructor(e=1){this.maximum=e}setListener(e){this.listener=e}push(e,t){if(this.maximum<1)return;let n=this.queue.at(-1);if(n!==void 0&&cs(n.action,t)){n.source=e;return}let r={...t,id:`c${this.counter+=1}`},i=this.queue.length-this.maximum+1;i>0&&this.queue.splice(0,i),this.queue.push({action:r,source:e}),this.listener?.(r)}clear(){this.queue.length=0}clearSource(e){let t=this.queue.filter(t=>t.source!==e);this.queue.splice(0,this.queue.length,...t)}drain(e){return this.queue.splice(0,e).map(e=>e.action)}};function ds(e,t,n=.18){let r=Math.hypot(e,t);if(!Number.isFinite(r)||r<=n)return{x:0,y:0};let i=(Math.min(1,r)-n)/(1-n);return{x:e/r*i,y:t/r*i}}var fs=(e,t)=>{let n=Math.atan2(Math.abs(t),Math.abs(e))*180/Math.PI;return n<22.5?`hook`:n<45?`jab`:n<70?`straight`:`uppercut`},ps=class{active=!1;hand=`right`;target=`head`;power=`normal`;peak={x:0,y:0};peakMagnitude=0;update(e,t,n,r){let i=Math.hypot(e,t);if(!this.active&&i>=.55&&Math.abs(e)>=.12)return this.active=!0,this.hand=e<0?`left`:`right`,this.target=n?`body`:`head`,this.power=r?`power`:`normal`,this.peak={x:e,y:t},this.peakMagnitude=i,null;if(!this.active)return null;if(i>this.peakMagnitude&&(this.peak={x:e,y:t},this.peakMagnitude=i),i<=.25){let e={kind:`punch`,hand:this.hand,class:fs(this.peak.x,this.peak.y),target:this.target,power:this.power};return this.reset(),e}return null}reset(){this.active=!1,this.peak={x:0,y:0},this.peakMagnitude=0}},ms=[`jab`,`straight`,`hook`,`uppercut`],hs=(e,t)=>e.buttons[t]?.pressed===!0;function gs(){let e=navigator.getGamepads;if(typeof e!=`function`)return null;try{return[...e.call(navigator)].find(e=>e!==null&&e.connected&&e.mapping===`standard`)??null}catch{return null}}var _s=class{maximumQueue;sharedActions;gesture=new ps;queue=[];previous=new Set;selectorConsumed=new Map;raf=0;currentId=null;moveX=0;moveY=0;defense=`none`;knockdown=!1;enabled=!0;disconnect=e=>{e.gamepad.id===this.currentId&&this.reset()};constructor(e=1,t){this.maximumQueue=e,this.sharedActions=t,window.addEventListener(`gamepaddisconnected`,this.disconnect),this.raf=requestAnimationFrame(()=>this.poll())}push(e){this.sharedActions===void 0?ls(this.queue,e,this.maximumQueue):this.sharedActions.push(`gamepad`,e)}clearActions(){this.queue.length=0,this.sharedActions?.clear()}poll(){if(!this.enabled){this.reset(),this.schedulePoll();return}let e=gs();if(e===null){this.currentId!==null&&this.reset(),this.schedulePoll();return}this.currentId!==null&&this.currentId!==e.id&&this.reset(),this.currentId=e.id;let t=ds(e.axes[0]??0,e.axes[1]??0);this.moveX=Math.round(t.x*1e3),this.moveY=Math.round(-t.y*1e3);let n=hs(e,4)?`guard_high`:hs(e,5)?`guard_low`:`none`;n!==`none`&&n!==this.defense&&this.clearActions(),this.defense=n;let r=this.gesture.update(e.axes[2]??0,e.axes[3]??0,hs(e,6),hs(e,7));r!==null&&this.push(r);let i=ms.some((t,n)=>hs(e,n)&&!this.previous.has(n));for(let t of[14,15]){let n=hs(e,t),r=this.previous.has(t);this.knockdown?(n&&!r&&this.push({kind:t===14?`get_up_left`:`get_up_right`}),this.selectorConsumed.delete(t)):n?(r||this.selectorConsumed.set(t,!1),i&&this.selectorConsumed.set(t,!0)):r&&(this.selectorConsumed.get(t)===!1&&this.push({kind:t===14?`slip_left`:`slip_right`}),this.selectorConsumed.delete(t))}for(let t=0;tthis.poll())}setKnockdown(e){this.knockdown=e}setEnabled(e){this.enabled=e,e||this.reset()}frame(e=4){let t=this.sharedActions===void 0?this.queue.splice(0,e):[];return{moveX:this.moveX,moveY:this.moveY,defense:this.defense,actions:t}}reset(){this.currentId=null,this.moveX=this.moveY=0,this.defense=`none`,this.queue.length=0,this.sharedActions?.clearSource(`gamepad`),this.previous.clear(),this.selectorConsumed.clear(),this.gesture.reset()}destroy(){cancelAnimationFrame(this.raf),window.removeEventListener(`gamepaddisconnected`,this.disconnect),this.reset()}},vs=class{target;maximumQueue;sharedActions;held=new Set;queue=[];enabled=!0;keydown=e=>{if(!this.enabled||!os.has(e.code)||(e.preventDefault(),e.repeat))return;this.held.add(e.code),(e.code===`KeyQ`||e.code===`KeyE`)&&this.clearActions();let t=is[e.code];if(t!==void 0)this.push({kind:`punch`,hand:t[0],class:t[1],target:this.hasShift()?`body`:`head`,power:this.hasAlt()?`power`:`normal`});else{let t=as[e.code];t!==void 0&&this.push(t)}};keyup=e=>{os.has(e.code)&&(this.enabled&&e.preventDefault(),this.held.delete(e.code))};visibility=()=>{document.hidden&&this.reset()};blur=()=>this.reset();constructor(e=window,t=1,n){this.target=e,this.maximumQueue=t,this.sharedActions=n,e.addEventListener(`keydown`,this.keydown),e.addEventListener(`keyup`,this.keyup),e.addEventListener(`blur`,this.blur),document.addEventListener(`visibilitychange`,this.visibility)}hasShift(){return this.held.has(`ShiftLeft`)||this.held.has(`ShiftRight`)}hasAlt(){return this.held.has(`AltLeft`)||this.held.has(`AltRight`)}push(e){this.sharedActions===void 0?ls(this.queue,e,this.maximumQueue):this.sharedActions.push(`keyboard`,e)}clearActions(){this.queue.length=0,this.sharedActions?.clear()}setEnabled(e){this.enabled=e,e||this.reset()}frame(e=4){let t=(this.held.has(`KeyD`)?1e3:0)-(this.held.has(`KeyA`)?1e3:0),n=(this.held.has(`KeyW`)?1e3:0)-(this.held.has(`KeyS`)?1e3:0);t!==0&&n!==0&&(t=Math.sign(t)*707,n=Math.sign(n)*707);let r=this.held.has(`KeyQ`)?`guard_high`:this.held.has(`KeyE`)?`guard_low`:`none`;return{moveX:t,moveY:n,defense:r,actions:this.sharedActions===void 0?this.queue.splice(0,e):[]}}reset(){this.held.clear(),this.queue.length=0,this.sharedActions?.clearSource(`keyboard`)}destroy(){this.reset(),this.target.removeEventListener(`keydown`,this.keydown),this.target.removeEventListener(`keyup`,this.keyup),this.target.removeEventListener(`blur`,this.blur),document.removeEventListener(`visibilitychange`,this.visibility)}},ys=class{actions=new us(1);keyboard;gamepad;reset=()=>{this.keyboard.reset(),this.gamepad.reset(),this.actions.clear(),this.gamepad.setKnockdown(!1)};constructor(){this.keyboard=new vs(window,1,this.actions),this.gamepad=new _s(1,this.actions),window.addEventListener(`blur`,this.reset),document.addEventListener(`visibilitychange`,this.visibility)}visibility=()=>{document.hidden&&this.reset()};setActive(e){this.keyboard.setEnabled(e),this.gamepad.setEnabled(e)}setKnockdown(e){this.gamepad.setKnockdown(e)}onAction(e){this.actions.setListener(e)}frame(){let e=this.keyboard.frame(0),t=this.gamepad.frame(0);return{moveX:t.moveX===0?e.moveX:t.moveX,moveY:t.moveY===0?e.moveY:t.moveY,defense:t.defense===`none`?e.defense:t.defense,actions:this.actions.drain(4)}}destroy(){window.removeEventListener(`blur`,this.reset),document.removeEventListener(`visibilitychange`,this.visibility),this.keyboard.destroy(),this.gamepad.destroy()}},bs=(e,t,n)=>e+(t-e)*n,xs=(e,t,n)=>({...t,x:bs(e.x,t.x,n),y:bs(e.y,t.y,n),facing:bs(e.facing,t.facing,n),velocity_x:bs(e.velocity_x,t.velocity_x,n),velocity_y:bs(e.velocity_y,t.velocity_y,n),stamina:bs(e.stamina,t.stamina,n),maximum_stamina:bs(e.maximum_stamina,t.maximum_stamina,n),conditioning:bs(e.conditioning,t.conditioning,n),guard:bs(e.guard,t.guard,n),poise:bs(e.poise,t.poise,n)}),Ss=class{maximum;snapshots=[];constructor(e=6){this.maximum=e}push(e){let t=this.snapshots.at(-1);return t!==void 0&&e.tick<=t.tick?!1:(this.snapshots.push(e),this.snapshots.length>this.maximum&&this.snapshots.shift(),!0)}latest(){return this.snapshots.at(-1)??null}sample(e){let t=this.snapshots.findIndex(t=>t.tick>=e);if(t<=0)return this.snapshots[Math.max(0,t)]??this.latest();let n=this.snapshots[t-1],r=this.snapshots[t];if(n.phase!==r.phase||n.fighters.some((e,t)=>e.knockdowns!==r.fighters[t]?.knockdowns))return r;let i=Math.max(0,Math.min(1,(e-n.tick)/Math.max(1,r.tick-n.tick)));return{...r,fighters:[xs(n.fighters[0],r.fighters[0],i),xs(n.fighters[1],r.fighters[1],i)]}}clear(){this.snapshots.length=0}},Cs=class{highest=-1;accept(e){let t=new Set,n=e.filter(e=>e.event_id<=this.highest||t.has(e.event_id)?!1:(t.add(e.event_id),!0)).sort((e,t)=>e.event_id-t.event_id);for(let e of n)this.highest=Math.max(this.highest,e.event_id);return n}reset(){this.highest=-1}};function ws(e=window.location){let t=new URL(`/api/hands/ws`,e.origin);if(e.protocol===`https:`)t.protocol=`wss:`;else if(e.protocol===`http:`&&[`localhost`,`127.0.0.1`,`::1`].includes(e.hostname))t.protocol=`ws:`;else throw Error(`insecure_websocket_origin`);return t.search=``,t.hash=``,t.toString()}var Ts=1,Es={moveX:0,moveY:0,defense:`none`,actions:[]},Ds=class{getInput;callbacks;makeSocket;now;socket=null;reconnectTicket;reconnectTimer=null;opponentPauseTimer=null;inputTimer=null;reconnectDeadline=0;opponentPauseDeadline=0;opponentPaused=!1;attempts=0;nextSequence=0;serverTick=0;role=null;active=!1;disposed=!1;terminal=!1;inputSuppressed=!1;listenersBound=!1;constructor(e,t,n,r=e=>new WebSocket(e),i=()=>performance.now()){this.getInput=t,this.callbacks=n,this.makeSocket=r,this.now=i,this.reconnectTicket=e}start(){this.disposed||this.listenersBound||(this.listenersBound=!0,window.addEventListener(`blur`,this.onInputLoss),window.addEventListener(`focus`,this.onInputRegain),document.addEventListener(`visibilitychange`,this.onVisibilityChange),this.connect(),!this.disposed&&!this.terminal&&(this.inputTimer=window.setInterval(()=>this.flushInput(),40)))}setActive(e){this.active=e}onInputLoss=()=>{this.inputSuppressed||=(this.sendInput(Es),!0)};onInputRegain=()=>{!document.hidden&&document.hasFocus()&&(this.inputSuppressed=!1)};onVisibilityChange=()=>{document.hidden?this.onInputLoss():this.onInputRegain()};connect(){if(this.disposed||this.terminal)return;let e=this.reconnectTicket;if(e===null){this.terminal=!0,this.stopInputLifecycle(),this.callbacks.onFreshAuth();return}let t;try{t=this.makeSocket(ws())}catch{this.terminal=!0,this.stopInputLifecycle(),this.callbacks.onFatal(`network_unavailable`);return}this.socket=t,t.binaryType=`arraybuffer`,t.onopen=()=>{if(!(this.socket!==t||this.disposed))try{t.send(JSON.stringify({version:2,type:`authenticate`,ticket:e})),this.reconnectTicket=null}catch{this.handleClose(t)}},t.onmessage=e=>this.handleMessage(t,e),t.onerror=()=>void 0,t.onclose=()=>this.handleClose(t)}handleMessage(e,t){if(!(this.socket!==e||this.disposed||this.terminal))try{if(typeof t.data!=`string`&&!(t.data instanceof ArrayBuffer))throw Error(`unsupported_frame`);let n=A(t.data);if(this.applyMessage(n),n.type===`ticket`){try{e.send(JSON.stringify({version:2,type:`ticket_ack`,refresh_id:n.refresh_id}))}catch{this.handleClose(e)}return}this.callbacks.onMessage(n),n.type===`error`?this.terminate(n.code,e):n.type===`final`&&(this.terminal=!0,this.clearTransportReconnect(!0),this.clearOpponentPause(!0),this.stopInputLifecycle(),this.socket===e&&(this.socket=null),e.onopen=e.onmessage=e.onclose=e.onerror=null,e.close(1e3,`complete`))}catch(e){this.callbacks.onFatal(ge(e)),this.dispose()}}applyMessage(e){if(e.type===`welcome`){if(e.reconnect_ticket===void 0)throw Error(`missing_reconnect_ticket`);this.reconnectTicket=e.reconnect_ticket,this.serverTick=e.server_tick,this.role=e.role,e.role===`fighter`?this.nextSequence=Math.max(this.nextSequence,e.next_sequence):this.stopInputLifecycle(),this.attempts=0,this.clearTransportReconnect(!0)}else e.type===`ticket`?this.reconnectTicket=e.reconnect_ticket:e.type===`snapshot`?(this.serverTick=Math.max(this.serverTick,e.payload.tick),this.active=[`countdown`,`fight`,`knockdown`,`foul_recovery`].includes(e.payload.phase)):e.type===`paused`?(this.active=!1,this.startOpponentPause(e.grace_ms)):e.type===`resumed`?(this.active=!0,this.attempts=0,this.clearOpponentPause(!0)):e.type===`ready`?this.active=!0:e.type===`waiting`?this.active=!1:(e.type===`final`||e.type===`error`)&&(this.active=!1,this.clearOpponentPause(!0))}terminate(e,t){this.terminal=!0,this.active=!1,this.clearTransportReconnect(!0),this.clearOpponentPause(!0),this.stopInputLifecycle(),this.callbacks.onFatal(e),this.socket===t&&(this.socket=null,t.onopen=t.onmessage=t.onclose=t.onerror=null,t.close(1e3,`terminal`))}handleClose(e){if(this.socket!==e||(this.socket=null,this.active=!1,this.disposed||this.terminal))return;if(this.reconnectTicket===null){this.terminal=!0,this.stopInputLifecycle(),this.callbacks.onFreshAuth();return}this.clearOpponentPause(!1),this.reconnectDeadline===0&&(this.reconnectDeadline=this.now()+2e4);let t=Math.max(0,this.reconnectDeadline-this.now());if(this.callbacks.onReconnect(t),t<=0){this.terminal=!0,this.stopInputLifecycle(),this.callbacks.onFreshAuth();return}let n=Math.min(3e3,250*2**Math.min(this.attempts,4),t);this.attempts+=1,this.reconnectTimer=window.setTimeout(()=>{this.reconnectTimer=null,this.callbacks.onReconnect(Math.max(0,this.reconnectDeadline-this.now())),this.connect()},n)}sendInput(e){let t=this.socket;if(!(this.role!==`fighter`||!this.active||this.disposed||this.terminal||t?.readyState!==Ts))try{t.send(le(this.nextSequence,this.serverTick,{...e,actions:e.actions.slice(0,4)})),this.nextSequence+=1}catch{this.handleClose(t)}}flushInput(){this.inputSuppressed||document.hidden||!document.hasFocus()||this.sendInput(this.getInput())}startOpponentPause(e){this.clearOpponentPause(!1),this.opponentPaused=!0,this.opponentPauseDeadline=this.now()+e,this.callbacks.onReconnect(e),e>0&&this.scheduleOpponentPauseTick()}scheduleOpponentPauseTick(){let e=Math.max(0,this.opponentPauseDeadline-this.now());if(e<=0){this.opponentPauseDeadline=0,this.callbacks.onReconnect(0);return}this.opponentPauseTimer=window.setTimeout(()=>{this.opponentPauseTimer=null;let e=Math.max(0,this.opponentPauseDeadline-this.now());this.callbacks.onReconnect(e),e>0?this.scheduleOpponentPauseTick():this.opponentPauseDeadline=0},Math.min(250,e))}clearOpponentPause(e){let t=this.opponentPaused;this.opponentPaused=!1,this.opponentPauseDeadline=0,this.opponentPauseTimer!==null&&(clearTimeout(this.opponentPauseTimer),this.opponentPauseTimer=null),e&&t&&this.callbacks.onReconnect(0)}cancelReconnect(){this.reconnectTimer!==null&&(clearTimeout(this.reconnectTimer),this.reconnectTimer=null)}clearTransportReconnect(e){let t=this.reconnectDeadline!==0;this.reconnectDeadline=0,this.cancelReconnect(),e&&t&&this.callbacks.onReconnect(0)}stopInputLifecycle(){this.inputTimer!==null&&(clearInterval(this.inputTimer),this.inputTimer=null),this.listenersBound&&=(window.removeEventListener(`blur`,this.onInputLoss),window.removeEventListener(`focus`,this.onInputRegain),document.removeEventListener(`visibilitychange`,this.onVisibilityChange),!1)}dispose(){if(this.disposed)return;this.disposed=!0,this.active=!1,this.reconnectTicket=null,this.clearTransportReconnect(!0),this.clearOpponentPause(!0),this.stopInputLifecycle();let e=this.socket;this.socket=null,e!==null&&(e.onopen=e.onmessage=e.onclose=e.onerror=null,e.close(1e3,`teardown`))}},Os=`attached`,ks=1e3,As=1001,js=1002,Ms=1003,Ns=1004,Ps=1005,Fs=1006,Is=1007,Ls=1008,Rs=1009,zs=1010,Bs=1011,Vs=1012,Hs=1013,Us=1014,Ws=1015,Gs=1016,Ks=1017,qs=1018,Js=1020,Ys=35902,Xs=35899,Zs=1021,Qs=1022,$s=1023,ec=1026,tc=1027,nc=1028,rc=1029,ic=1030,ac=1031,oc=1033,sc=33776,cc=33777,lc=33778,uc=33779,dc=35840,fc=35841,pc=35842,mc=35843,hc=36196,gc=37492,_c=37496,vc=37488,yc=37489,bc=37490,xc=37491,Sc=37808,Cc=37809,wc=37810,Tc=37811,Ec=37812,Dc=37813,Oc=37814,kc=37815,Ac=37816,jc=37817,Mc=37818,Nc=37819,Pc=37820,Fc=37821,Ic=36492,Lc=36494,Rc=36495,zc=36283,Bc=36284,Vc=36285,Hc=36286,Uc=2200,Wc=2201,Gc=2202,Kc=2300,qc=2301,Jc=2302,Yc=2303,Xc=2400,Zc=2401,Qc=2402,$c=2500,el=2501,tl=3200,nl=`srgb`,rl=`srgb-linear`,il=`linear`,al=`srgb`,ol=7680,sl=35044,cl=35048,ll=2e3;function ul(e){for(let t=e.length-1;t>=0;--t)if(e[t]>=65535)return!0;return!1}function dl(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function fl(e){return document.createElementNS(`http://www.w3.org/1999/xhtml`,e)}function pl(){let e=fl(`canvas`);return e.style.display=`block`,e}var ml={};function hl(...e){let t=`THREE.`+e.shift();console.log(t,...e)}function gl(e){let t=e[0];if(typeof t==`string`&&t.startsWith(`TSL:`)){let t=e[1];t&&t.isStackTrace?e[0]+=` `+t.getLocation():e[1]=`Stack trace not available. Enable "THREE.Node.captureStackTrace" to capture stack traces.`}return e}function Y(...e){e=gl(e);let t=`THREE.`+e.shift();{let n=e[0];n&&n.isStackTrace?console.warn(n.getError(t)):console.warn(t,...e)}}function _l(...e){e=gl(e);let t=`THREE.`+e.shift();{let n=e[0];n&&n.isStackTrace?console.error(n.getError(t)):console.error(t,...e)}}function vl(...e){let t=e.join(` `);t in ml||(ml[t]=!0,Y(...e))}function yl(e,t,n){return new Promise(function(r,i){function a(){switch(e.clientWaitSync(t,e.SYNC_FLUSH_COMMANDS_BIT,0)){case e.WAIT_FAILED:i();break;case e.TIMEOUT_EXPIRED:setTimeout(a,n);break;default:r()}}setTimeout(a,n)})}var bl={0:1,2:6,4:7,3:5,1:0,6:2,7:4,5:3},xl=class{addEventListener(e,t){this._listeners===void 0&&(this._listeners={});let n=this._listeners;n[e]===void 0&&(n[e]=[]),n[e].indexOf(t)===-1&&n[e].push(t)}hasEventListener(e,t){let n=this._listeners;return n!==void 0&&n[e]!==void 0&&n[e].indexOf(t)!==-1}removeEventListener(e,t){let n=this._listeners;if(n===void 0)return;let r=n[e];if(r!==void 0){let e=r.indexOf(t);e!==-1&&r.splice(e,1)}}dispatchEvent(e){let t=this._listeners;if(t===void 0)return;let n=t[e.type];if(n!==void 0){e.target=this;let t=n.slice(0);for(let n=0,r=t.length;n>8&255]+Sl[e>>16&255]+Sl[e>>24&255]+`-`+Sl[t&255]+Sl[t>>8&255]+`-`+Sl[t>>16&15|64]+Sl[t>>24&255]+`-`+Sl[n&63|128]+Sl[n>>8&255]+`-`+Sl[n>>16&255]+Sl[n>>24&255]+Sl[r&255]+Sl[r>>8&255]+Sl[r>>16&255]+Sl[r>>24&255]).toLowerCase()}function Dl(e,t,n){return Math.max(t,Math.min(n,e))}function Ol(e,t){return(e%t+t)%t}function kl(e,t,n,r,i){return r+(e-t)*(i-r)/(n-t)}function Al(e,t,n){return e===t?0:(n-e)/(t-e)}function jl(e,t,n){return(1-n)*e+n*t}function Ml(e,t,n,r){return jl(e,t,1-Math.exp(-n*r))}function Nl(e,t=1){return t-Math.abs(Ol(e,t*2)-t)}function Pl(e,t,n){return e<=t?0:e>=n?1:(e=(e-t)/(n-t),e*e*(3-2*e))}function Fl(e,t,n){return e<=t?0:e>=n?1:(e=(e-t)/(n-t),e*e*e*(e*(e*6-15)+10))}function Il(e,t){return e+Math.floor(Math.random()*(t-e+1))}function Ll(e,t){return e+Math.random()*(t-e)}function Rl(e){return e*(.5-Math.random())}function zl(e){e!==void 0&&(Cl=e);let t=Cl+=1831565813;return t=Math.imul(t^t>>>15,t|1),t^=t+Math.imul(t^t>>>7,t|61),((t^t>>>14)>>>0)/4294967296}function Bl(e){return e*wl}function Vl(e){return e*Tl}function Hl(e){return(e&e-1)==0&&e!==0}function Ul(e){return 2**Math.ceil(Math.log(e)/Math.LN2)}function Wl(e){return 2**Math.floor(Math.log(e)/Math.LN2)}function Gl(e,t,n,r,i){let a=Math.cos,o=Math.sin,s=a(n/2),c=o(n/2),l=a((t+r)/2),u=o((t+r)/2),d=a((t-r)/2),f=o((t-r)/2),p=a((r-t)/2),m=o((r-t)/2);switch(i){case`XYX`:e.set(s*u,c*d,c*f,s*l);break;case`YZY`:e.set(c*f,s*u,c*d,s*l);break;case`ZXZ`:e.set(c*d,c*f,s*u,s*l);break;case`XZX`:e.set(s*u,c*m,c*p,s*l);break;case`YXY`:e.set(c*p,s*u,c*m,s*l);break;case`ZYZ`:e.set(c*m,c*p,s*u,s*l);break;default:Y(`MathUtils: .setQuaternionFromProperEuler() encountered an unknown order: `+i)}}function Kl(e,t){switch(t.constructor){case Float32Array:return e;case Uint32Array:return e/4294967295;case Uint16Array:return e/65535;case Uint8Array:return e/255;case Int32Array:return Math.max(e/2147483647,-1);case Int16Array:return Math.max(e/32767,-1);case Int8Array:return Math.max(e/127,-1);default:throw Error(`THREE.MathUtils: Invalid component type.`)}}function ql(e,t){switch(t.constructor){case Float32Array:return e;case Uint32Array:return Math.round(e*4294967295);case Uint16Array:return Math.round(e*65535);case Uint8Array:return Math.round(e*255);case Int32Array:return Math.round(e*2147483647);case Int16Array:return Math.round(e*32767);case Int8Array:return Math.round(e*127);default:throw Error(`THREE.MathUtils: Invalid component type.`)}}var Jl={DEG2RAD:wl,RAD2DEG:Tl,generateUUID:El,clamp:Dl,euclideanModulo:Ol,mapLinear:kl,inverseLerp:Al,lerp:jl,damp:Ml,pingpong:Nl,smoothstep:Pl,smootherstep:Fl,randInt:Il,randFloat:Ll,randFloatSpread:Rl,seededRandom:zl,degToRad:Bl,radToDeg:Vl,isPowerOfTwo:Hl,ceilPowerOfTwo:Ul,floorPowerOfTwo:Wl,setQuaternionFromProperEuler:Gl,normalize:ql,denormalize:Kl},X=class e{static{e.prototype.isVector2=!0}constructor(e=0,t=0){this.x=e,this.y=t}get width(){return this.x}set width(e){this.x=e}get height(){return this.y}set height(e){this.y=e}set(e,t){return this.x=e,this.y=t,this}setScalar(e){return this.x=e,this.y=e,this}setX(e){return this.x=e,this}setY(e){return this.y=e,this}setComponent(e,t){switch(e){case 0:this.x=t;break;case 1:this.y=t;break;default:throw Error(`THREE.Vector2: index is out of range: `+e)}return this}getComponent(e){switch(e){case 0:return this.x;case 1:return this.y;default:throw Error(`THREE.Vector2: index is out of range: `+e)}}clone(){return new this.constructor(this.x,this.y)}copy(e){return this.x=e.x,this.y=e.y,this}add(e){return this.x+=e.x,this.y+=e.y,this}addScalar(e){return this.x+=e,this.y+=e,this}addVectors(e,t){return this.x=e.x+t.x,this.y=e.y+t.y,this}addScaledVector(e,t){return this.x+=e.x*t,this.y+=e.y*t,this}sub(e){return this.x-=e.x,this.y-=e.y,this}subScalar(e){return this.x-=e,this.y-=e,this}subVectors(e,t){return this.x=e.x-t.x,this.y=e.y-t.y,this}multiply(e){return this.x*=e.x,this.y*=e.y,this}multiplyScalar(e){return this.x*=e,this.y*=e,this}divide(e){return this.x/=e.x,this.y/=e.y,this}divideScalar(e){return this.multiplyScalar(1/e)}applyMatrix3(e){let t=this.x,n=this.y,r=e.elements;return this.x=r[0]*t+r[3]*n+r[6],this.y=r[1]*t+r[4]*n+r[7],this}min(e){return this.x=Math.min(this.x,e.x),this.y=Math.min(this.y,e.y),this}max(e){return this.x=Math.max(this.x,e.x),this.y=Math.max(this.y,e.y),this}clamp(e,t){return this.x=Dl(this.x,e.x,t.x),this.y=Dl(this.y,e.y,t.y),this}clampScalar(e,t){return this.x=Dl(this.x,e,t),this.y=Dl(this.y,e,t),this}clampLength(e,t){let n=this.length();return this.divideScalar(n||1).multiplyScalar(Dl(n,e,t))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this}negate(){return this.x=-this.x,this.y=-this.y,this}dot(e){return this.x*e.x+this.y*e.y}cross(e){return this.x*e.y-this.y*e.x}lengthSq(){return this.x*this.x+this.y*this.y}length(){return Math.sqrt(this.x*this.x+this.y*this.y)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)}normalize(){return this.divideScalar(this.length()||1)}angle(){return Math.atan2(-this.y,-this.x)+Math.PI}angleTo(e){let t=Math.sqrt(this.lengthSq()*e.lengthSq());if(t===0)return Math.PI/2;let n=this.dot(e)/t;return Math.acos(Dl(n,-1,1))}distanceTo(e){return Math.sqrt(this.distanceToSquared(e))}distanceToSquared(e){let t=this.x-e.x,n=this.y-e.y;return t*t+n*n}manhattanDistanceTo(e){return Math.abs(this.x-e.x)+Math.abs(this.y-e.y)}setLength(e){return this.normalize().multiplyScalar(e)}lerp(e,t){return this.x+=(e.x-this.x)*t,this.y+=(e.y-this.y)*t,this}lerpVectors(e,t,n){return this.x=e.x+(t.x-e.x)*n,this.y=e.y+(t.y-e.y)*n,this}equals(e){return e.x===this.x&&e.y===this.y}fromArray(e,t=0){return this.x=e[t],this.y=e[t+1],this}toArray(e=[],t=0){return e[t]=this.x,e[t+1]=this.y,e}fromBufferAttribute(e,t){return this.x=e.getX(t),this.y=e.getY(t),this}rotateAround(e,t){let n=Math.cos(t),r=Math.sin(t),i=this.x-e.x,a=this.y-e.y;return this.x=i*n-a*r+e.x,this.y=i*r+a*n+e.y,this}random(){return this.x=Math.random(),this.y=Math.random(),this}*[Symbol.iterator](){yield this.x,yield this.y}},Yl=class{constructor(e=0,t=0,n=0,r=1){this.isQuaternion=!0,this._x=e,this._y=t,this._z=n,this._w=r}static slerpFlat(e,t,n,r,i,a,o){let s=n[r+0],c=n[r+1],l=n[r+2],u=n[r+3],d=i[a+0],f=i[a+1],p=i[a+2],m=i[a+3];if(u!==m||s!==d||c!==f||l!==p){let e=s*d+c*f+l*p+u*m;e<0&&(d=-d,f=-f,p=-p,m=-m,e=-e);let t=1-o;if(e<.9995){let n=Math.acos(e),r=Math.sin(n);t=Math.sin(t*n)/r,o=Math.sin(o*n)/r,s=s*t+d*o,c=c*t+f*o,l=l*t+p*o,u=u*t+m*o}else{s=s*t+d*o,c=c*t+f*o,l=l*t+p*o,u=u*t+m*o;let e=1/Math.sqrt(s*s+c*c+l*l+u*u);s*=e,c*=e,l*=e,u*=e}}e[t]=s,e[t+1]=c,e[t+2]=l,e[t+3]=u}static multiplyQuaternionsFlat(e,t,n,r,i,a){let o=n[r],s=n[r+1],c=n[r+2],l=n[r+3],u=i[a],d=i[a+1],f=i[a+2],p=i[a+3];return e[t]=o*p+l*u+s*f-c*d,e[t+1]=s*p+l*d+c*u-o*f,e[t+2]=c*p+l*f+o*d-s*u,e[t+3]=l*p-o*u-s*d-c*f,e}get x(){return this._x}set x(e){this._x=e,this._onChangeCallback()}get y(){return this._y}set y(e){this._y=e,this._onChangeCallback()}get z(){return this._z}set z(e){this._z=e,this._onChangeCallback()}get w(){return this._w}set w(e){this._w=e,this._onChangeCallback()}set(e,t,n,r){return this._x=e,this._y=t,this._z=n,this._w=r,this._onChangeCallback(),this}clone(){return new this.constructor(this._x,this._y,this._z,this._w)}copy(e){return this._x=e.x,this._y=e.y,this._z=e.z,this._w=e.w,this._onChangeCallback(),this}setFromEuler(e,t=!0){let n=e._x,r=e._y,i=e._z,a=e._order,o=Math.cos,s=Math.sin,c=o(n/2),l=o(r/2),u=o(i/2),d=s(n/2),f=s(r/2),p=s(i/2);switch(a){case`XYZ`:this._x=d*l*u+c*f*p,this._y=c*f*u-d*l*p,this._z=c*l*p+d*f*u,this._w=c*l*u-d*f*p;break;case`YXZ`:this._x=d*l*u+c*f*p,this._y=c*f*u-d*l*p,this._z=c*l*p-d*f*u,this._w=c*l*u+d*f*p;break;case`ZXY`:this._x=d*l*u-c*f*p,this._y=c*f*u+d*l*p,this._z=c*l*p+d*f*u,this._w=c*l*u-d*f*p;break;case`ZYX`:this._x=d*l*u-c*f*p,this._y=c*f*u+d*l*p,this._z=c*l*p-d*f*u,this._w=c*l*u+d*f*p;break;case`YZX`:this._x=d*l*u+c*f*p,this._y=c*f*u+d*l*p,this._z=c*l*p-d*f*u,this._w=c*l*u-d*f*p;break;case`XZY`:this._x=d*l*u-c*f*p,this._y=c*f*u-d*l*p,this._z=c*l*p+d*f*u,this._w=c*l*u+d*f*p;break;default:Y(`Quaternion: .setFromEuler() encountered an unknown order: `+a)}return t===!0&&this._onChangeCallback(),this}setFromAxisAngle(e,t){let n=t/2,r=Math.sin(n);return this._x=e.x*r,this._y=e.y*r,this._z=e.z*r,this._w=Math.cos(n),this._onChangeCallback(),this}setFromRotationMatrix(e){let t=e.elements,n=t[0],r=t[4],i=t[8],a=t[1],o=t[5],s=t[9],c=t[2],l=t[6],u=t[10],d=n+o+u;if(d>0){let e=.5/Math.sqrt(d+1);this._w=.25/e,this._x=(l-s)*e,this._y=(i-c)*e,this._z=(a-r)*e}else if(n>o&&n>u){let e=2*Math.sqrt(1+n-o-u);this._w=(l-s)/e,this._x=.25*e,this._y=(r+a)/e,this._z=(i+c)/e}else if(o>u){let e=2*Math.sqrt(1+o-n-u);this._w=(i-c)/e,this._x=(r+a)/e,this._y=.25*e,this._z=(s+l)/e}else{let e=2*Math.sqrt(1+u-n-o);this._w=(a-r)/e,this._x=(i+c)/e,this._y=(s+l)/e,this._z=.25*e}return this._onChangeCallback(),this}setFromUnitVectors(e,t){let n=e.dot(t)+1;return n<1e-8?(n=0,Math.abs(e.x)>Math.abs(e.z)?(this._x=-e.y,this._y=e.x,this._z=0,this._w=n):(this._x=0,this._y=-e.z,this._z=e.y,this._w=n)):(this._x=e.y*t.z-e.z*t.y,this._y=e.z*t.x-e.x*t.z,this._z=e.x*t.y-e.y*t.x,this._w=n),this.normalize()}angleTo(e){return 2*Math.acos(Math.abs(Dl(this.dot(e),-1,1)))}rotateTowards(e,t){let n=this.angleTo(e);if(n===0)return this;let r=Math.min(1,t/n);return this.slerp(e,r),this}identity(){return this.set(0,0,0,1)}invert(){return this.conjugate()}conjugate(){return this._x*=-1,this._y*=-1,this._z*=-1,this._onChangeCallback(),this}dot(e){return this._x*e._x+this._y*e._y+this._z*e._z+this._w*e._w}lengthSq(){return this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w}length(){return Math.sqrt(this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w)}normalize(){let e=this.length();return e===0?(this._x=0,this._y=0,this._z=0,this._w=1):(e=1/e,this._x*=e,this._y*=e,this._z*=e,this._w*=e),this._onChangeCallback(),this}multiply(e){return this.multiplyQuaternions(this,e)}premultiply(e){return this.multiplyQuaternions(e,this)}multiplyQuaternions(e,t){let n=e._x,r=e._y,i=e._z,a=e._w,o=t._x,s=t._y,c=t._z,l=t._w;return this._x=n*l+a*o+r*c-i*s,this._y=r*l+a*s+i*o-n*c,this._z=i*l+a*c+n*s-r*o,this._w=a*l-n*o-r*s-i*c,this._onChangeCallback(),this}slerp(e,t){let n=e._x,r=e._y,i=e._z,a=e._w,o=this.dot(e);o<0&&(n=-n,r=-r,i=-i,a=-a,o=-o);let s=1-t;if(o<.9995){let e=Math.acos(o),c=Math.sin(e);s=Math.sin(s*e)/c,t=Math.sin(t*e)/c,this._x=this._x*s+n*t,this._y=this._y*s+r*t,this._z=this._z*s+i*t,this._w=this._w*s+a*t,this._onChangeCallback()}else this._x=this._x*s+n*t,this._y=this._y*s+r*t,this._z=this._z*s+i*t,this._w=this._w*s+a*t,this.normalize();return this}slerpQuaternions(e,t,n){return this.copy(e).slerp(t,n)}random(){let e=2*Math.PI*Math.random(),t=2*Math.PI*Math.random(),n=Math.random(),r=Math.sqrt(1-n),i=Math.sqrt(n);return this.set(r*Math.sin(e),r*Math.cos(e),i*Math.sin(t),i*Math.cos(t))}equals(e){return e._x===this._x&&e._y===this._y&&e._z===this._z&&e._w===this._w}fromArray(e,t=0){return this._x=e[t],this._y=e[t+1],this._z=e[t+2],this._w=e[t+3],this._onChangeCallback(),this}toArray(e=[],t=0){return e[t]=this._x,e[t+1]=this._y,e[t+2]=this._z,e[t+3]=this._w,e}fromBufferAttribute(e,t){return this._x=e.getX(t),this._y=e.getY(t),this._z=e.getZ(t),this._w=e.getW(t),this._onChangeCallback(),this}toJSON(){return this.toArray()}_onChange(e){return this._onChangeCallback=e,this}_onChangeCallback(){}*[Symbol.iterator](){yield this._x,yield this._y,yield this._z,yield this._w}},Z=class e{static{e.prototype.isVector3=!0}constructor(e=0,t=0,n=0){this.x=e,this.y=t,this.z=n}set(e,t,n){return n===void 0&&(n=this.z),this.x=e,this.y=t,this.z=n,this}setScalar(e){return this.x=e,this.y=e,this.z=e,this}setX(e){return this.x=e,this}setY(e){return this.y=e,this}setZ(e){return this.z=e,this}setComponent(e,t){switch(e){case 0:this.x=t;break;case 1:this.y=t;break;case 2:this.z=t;break;default:throw Error(`THREE.Vector3: index is out of range: `+e)}return this}getComponent(e){switch(e){case 0:return this.x;case 1:return this.y;case 2:return this.z;default:throw Error(`THREE.Vector3: index is out of range: `+e)}}clone(){return new this.constructor(this.x,this.y,this.z)}copy(e){return this.x=e.x,this.y=e.y,this.z=e.z,this}add(e){return this.x+=e.x,this.y+=e.y,this.z+=e.z,this}addScalar(e){return this.x+=e,this.y+=e,this.z+=e,this}addVectors(e,t){return this.x=e.x+t.x,this.y=e.y+t.y,this.z=e.z+t.z,this}addScaledVector(e,t){return this.x+=e.x*t,this.y+=e.y*t,this.z+=e.z*t,this}sub(e){return this.x-=e.x,this.y-=e.y,this.z-=e.z,this}subScalar(e){return this.x-=e,this.y-=e,this.z-=e,this}subVectors(e,t){return this.x=e.x-t.x,this.y=e.y-t.y,this.z=e.z-t.z,this}multiply(e){return this.x*=e.x,this.y*=e.y,this.z*=e.z,this}multiplyScalar(e){return this.x*=e,this.y*=e,this.z*=e,this}multiplyVectors(e,t){return this.x=e.x*t.x,this.y=e.y*t.y,this.z=e.z*t.z,this}applyEuler(e){return this.applyQuaternion(Zl.setFromEuler(e))}applyAxisAngle(e,t){return this.applyQuaternion(Zl.setFromAxisAngle(e,t))}applyMatrix3(e){let t=this.x,n=this.y,r=this.z,i=e.elements;return this.x=i[0]*t+i[3]*n+i[6]*r,this.y=i[1]*t+i[4]*n+i[7]*r,this.z=i[2]*t+i[5]*n+i[8]*r,this}applyNormalMatrix(e){return this.applyMatrix3(e).normalize()}applyMatrix4(e){let t=this.x,n=this.y,r=this.z,i=e.elements,a=1/(i[3]*t+i[7]*n+i[11]*r+i[15]);return this.x=(i[0]*t+i[4]*n+i[8]*r+i[12])*a,this.y=(i[1]*t+i[5]*n+i[9]*r+i[13])*a,this.z=(i[2]*t+i[6]*n+i[10]*r+i[14])*a,this}applyQuaternion(e){let t=this.x,n=this.y,r=this.z,i=e.x,a=e.y,o=e.z,s=e.w,c=2*(a*r-o*n),l=2*(o*t-i*r),u=2*(i*n-a*t);return this.x=t+s*c+a*u-o*l,this.y=n+s*l+o*c-i*u,this.z=r+s*u+i*l-a*c,this}project(e){return this.applyMatrix4(e.matrixWorldInverse).applyMatrix4(e.projectionMatrix)}unproject(e){return this.applyMatrix4(e.projectionMatrixInverse).applyMatrix4(e.matrixWorld)}transformDirection(e){let t=this.x,n=this.y,r=this.z,i=e.elements;return this.x=i[0]*t+i[4]*n+i[8]*r,this.y=i[1]*t+i[5]*n+i[9]*r,this.z=i[2]*t+i[6]*n+i[10]*r,this.normalize()}divide(e){return this.x/=e.x,this.y/=e.y,this.z/=e.z,this}divideScalar(e){return this.multiplyScalar(1/e)}min(e){return this.x=Math.min(this.x,e.x),this.y=Math.min(this.y,e.y),this.z=Math.min(this.z,e.z),this}max(e){return this.x=Math.max(this.x,e.x),this.y=Math.max(this.y,e.y),this.z=Math.max(this.z,e.z),this}clamp(e,t){return this.x=Dl(this.x,e.x,t.x),this.y=Dl(this.y,e.y,t.y),this.z=Dl(this.z,e.z,t.z),this}clampScalar(e,t){return this.x=Dl(this.x,e,t),this.y=Dl(this.y,e,t),this.z=Dl(this.z,e,t),this}clampLength(e,t){let n=this.length();return this.divideScalar(n||1).multiplyScalar(Dl(n,e,t))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this.z=Math.trunc(this.z),this}negate(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this}dot(e){return this.x*e.x+this.y*e.y+this.z*e.z}lengthSq(){return this.x*this.x+this.y*this.y+this.z*this.z}length(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)}normalize(){return this.divideScalar(this.length()||1)}setLength(e){return this.normalize().multiplyScalar(e)}lerp(e,t){return this.x+=(e.x-this.x)*t,this.y+=(e.y-this.y)*t,this.z+=(e.z-this.z)*t,this}lerpVectors(e,t,n){return this.x=e.x+(t.x-e.x)*n,this.y=e.y+(t.y-e.y)*n,this.z=e.z+(t.z-e.z)*n,this}cross(e){return this.crossVectors(this,e)}crossVectors(e,t){let n=e.x,r=e.y,i=e.z,a=t.x,o=t.y,s=t.z;return this.x=r*s-i*o,this.y=i*a-n*s,this.z=n*o-r*a,this}projectOnVector(e){let t=e.lengthSq();if(t===0)return this.set(0,0,0);let n=e.dot(this)/t;return this.copy(e).multiplyScalar(n)}projectOnPlane(e){return Xl.copy(this).projectOnVector(e),this.sub(Xl)}reflect(e){return this.sub(Xl.copy(e).multiplyScalar(2*this.dot(e)))}angleTo(e){let t=Math.sqrt(this.lengthSq()*e.lengthSq());if(t===0)return Math.PI/2;let n=this.dot(e)/t;return Math.acos(Dl(n,-1,1))}distanceTo(e){return Math.sqrt(this.distanceToSquared(e))}distanceToSquared(e){let t=this.x-e.x,n=this.y-e.y,r=this.z-e.z;return t*t+n*n+r*r}manhattanDistanceTo(e){return Math.abs(this.x-e.x)+Math.abs(this.y-e.y)+Math.abs(this.z-e.z)}setFromSpherical(e){return this.setFromSphericalCoords(e.radius,e.phi,e.theta)}setFromSphericalCoords(e,t,n){let r=Math.sin(t)*e;return this.x=r*Math.sin(n),this.y=Math.cos(t)*e,this.z=r*Math.cos(n),this}setFromCylindrical(e){return this.setFromCylindricalCoords(e.radius,e.theta,e.y)}setFromCylindricalCoords(e,t,n){return this.x=e*Math.sin(t),this.y=n,this.z=e*Math.cos(t),this}setFromMatrixPosition(e){let t=e.elements;return this.x=t[12],this.y=t[13],this.z=t[14],this}setFromMatrixScale(e){let t=this.setFromMatrixColumn(e,0).length(),n=this.setFromMatrixColumn(e,1).length(),r=this.setFromMatrixColumn(e,2).length();return this.x=t,this.y=n,this.z=r,this}setFromMatrixColumn(e,t){return this.fromArray(e.elements,t*4)}setFromMatrix3Column(e,t){return this.fromArray(e.elements,t*3)}setFromEuler(e){return this.x=e._x,this.y=e._y,this.z=e._z,this}setFromColor(e){return this.x=e.r,this.y=e.g,this.z=e.b,this}equals(e){return e.x===this.x&&e.y===this.y&&e.z===this.z}fromArray(e,t=0){return this.x=e[t],this.y=e[t+1],this.z=e[t+2],this}toArray(e=[],t=0){return e[t]=this.x,e[t+1]=this.y,e[t+2]=this.z,e}fromBufferAttribute(e,t){return this.x=e.getX(t),this.y=e.getY(t),this.z=e.getZ(t),this}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this}randomDirection(){let e=Math.random()*Math.PI*2,t=Math.random()*2-1,n=Math.sqrt(1-t*t);return this.x=n*Math.cos(e),this.y=t,this.z=n*Math.sin(e),this}*[Symbol.iterator](){yield this.x,yield this.y,yield this.z}},Xl=new Z,Zl=new Yl,Ql=class e{static{e.prototype.isMatrix3=!0}constructor(e,t,n,r,i,a,o,s,c){this.elements=[1,0,0,0,1,0,0,0,1],e!==void 0&&this.set(e,t,n,r,i,a,o,s,c)}set(e,t,n,r,i,a,o,s,c){let l=this.elements;return l[0]=e,l[1]=r,l[2]=o,l[3]=t,l[4]=i,l[5]=s,l[6]=n,l[7]=a,l[8]=c,this}identity(){return this.set(1,0,0,0,1,0,0,0,1),this}copy(e){let t=this.elements,n=e.elements;return t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[3],t[4]=n[4],t[5]=n[5],t[6]=n[6],t[7]=n[7],t[8]=n[8],this}extractBasis(e,t,n){return e.setFromMatrix3Column(this,0),t.setFromMatrix3Column(this,1),n.setFromMatrix3Column(this,2),this}setFromMatrix4(e){let t=e.elements;return this.set(t[0],t[4],t[8],t[1],t[5],t[9],t[2],t[6],t[10]),this}multiply(e){return this.multiplyMatrices(this,e)}premultiply(e){return this.multiplyMatrices(e,this)}multiplyMatrices(e,t){let n=e.elements,r=t.elements,i=this.elements,a=n[0],o=n[3],s=n[6],c=n[1],l=n[4],u=n[7],d=n[2],f=n[5],p=n[8],m=r[0],h=r[3],g=r[6],_=r[1],v=r[4],y=r[7],b=r[2],x=r[5],S=r[8];return i[0]=a*m+o*_+s*b,i[3]=a*h+o*v+s*x,i[6]=a*g+o*y+s*S,i[1]=c*m+l*_+u*b,i[4]=c*h+l*v+u*x,i[7]=c*g+l*y+u*S,i[2]=d*m+f*_+p*b,i[5]=d*h+f*v+p*x,i[8]=d*g+f*y+p*S,this}multiplyScalar(e){let t=this.elements;return t[0]*=e,t[3]*=e,t[6]*=e,t[1]*=e,t[4]*=e,t[7]*=e,t[2]*=e,t[5]*=e,t[8]*=e,this}determinant(){let e=this.elements,t=e[0],n=e[1],r=e[2],i=e[3],a=e[4],o=e[5],s=e[6],c=e[7],l=e[8];return t*a*l-t*o*c-n*i*l+n*o*s+r*i*c-r*a*s}invert(){let e=this.elements,t=e[0],n=e[1],r=e[2],i=e[3],a=e[4],o=e[5],s=e[6],c=e[7],l=e[8],u=l*a-o*c,d=o*s-l*i,f=c*i-a*s,p=t*u+n*d+r*f;if(p===0)return this.set(0,0,0,0,0,0,0,0,0);let m=1/p;return e[0]=u*m,e[1]=(r*c-l*n)*m,e[2]=(o*n-r*a)*m,e[3]=d*m,e[4]=(l*t-r*s)*m,e[5]=(r*i-o*t)*m,e[6]=f*m,e[7]=(n*s-c*t)*m,e[8]=(a*t-n*i)*m,this}transpose(){let e,t=this.elements;return e=t[1],t[1]=t[3],t[3]=e,e=t[2],t[2]=t[6],t[6]=e,e=t[5],t[5]=t[7],t[7]=e,this}getNormalMatrix(e){return this.setFromMatrix4(e).invert().transpose()}transposeIntoArray(e){let t=this.elements;return e[0]=t[0],e[1]=t[3],e[2]=t[6],e[3]=t[1],e[4]=t[4],e[5]=t[7],e[6]=t[2],e[7]=t[5],e[8]=t[8],this}setUvTransform(e,t,n,r,i,a,o){let s=Math.cos(i),c=Math.sin(i);return this.set(n*s,n*c,-n*(s*a+c*o)+a+e,-r*c,r*s,-r*(-c*a+s*o)+o+t,0,0,1),this}scale(e,t){return vl(`Matrix3: .scale() is deprecated. Use .makeScale() instead.`),this.premultiply($l.makeScale(e,t)),this}rotate(e){return vl(`Matrix3: .rotate() is deprecated. Use .makeRotation() instead.`),this.premultiply($l.makeRotation(-e)),this}translate(e,t){return vl(`Matrix3: .translate() is deprecated. Use .makeTranslation() instead.`),this.premultiply($l.makeTranslation(e,t)),this}makeTranslation(e,t){return e.isVector2?this.set(1,0,e.x,0,1,e.y,0,0,1):this.set(1,0,e,0,1,t,0,0,1),this}makeRotation(e){let t=Math.cos(e),n=Math.sin(e);return this.set(t,-n,0,n,t,0,0,0,1),this}makeScale(e,t){return this.set(e,0,0,0,t,0,0,0,1),this}equals(e){let t=this.elements,n=e.elements;for(let e=0;e<9;e++)if(t[e]!==n[e])return!1;return!0}fromArray(e,t=0){for(let n=0;n<9;n++)this.elements[n]=e[n+t];return this}toArray(e=[],t=0){let n=this.elements;return e[t]=n[0],e[t+1]=n[1],e[t+2]=n[2],e[t+3]=n[3],e[t+4]=n[4],e[t+5]=n[5],e[t+6]=n[6],e[t+7]=n[7],e[t+8]=n[8],e}clone(){return new this.constructor().fromArray(this.elements)}},$l=new Ql,eu=new Ql().set(.4123908,.3575843,.1804808,.212639,.7151687,.0721923,.0193308,.1191948,.9505322),tu=new Ql().set(3.2409699,-1.5373832,-.4986108,-.9692436,1.8759675,.0415551,.0556301,-.203977,1.0569715);function nu(){let e={enabled:!0,workingColorSpace:rl,spaces:{},convert:function(e,t,n){return this.enabled===!1||t===n||!t||!n?e:(this.spaces[t].transfer===`srgb`&&(e.r=iu(e.r),e.g=iu(e.g),e.b=iu(e.b)),this.spaces[t].primaries!==this.spaces[n].primaries&&(e.applyMatrix3(this.spaces[t].toXYZ),e.applyMatrix3(this.spaces[n].fromXYZ)),this.spaces[n].transfer===`srgb`&&(e.r=au(e.r),e.g=au(e.g),e.b=au(e.b)),e)},workingToColorSpace:function(e,t){return this.convert(e,this.workingColorSpace,t)},colorSpaceToWorking:function(e,t){return this.convert(e,t,this.workingColorSpace)},getPrimaries:function(e){return this.spaces[e].primaries},getTransfer:function(e){return e===``?il:this.spaces[e].transfer},getToneMappingMode:function(e){return this.spaces[e].outputColorSpaceConfig.toneMappingMode||`standard`},getLuminanceCoefficients:function(e,t=this.workingColorSpace){return e.fromArray(this.spaces[t].luminanceCoefficients)},define:function(e){Object.assign(this.spaces,e)},_getMatrix:function(e,t,n){return e.copy(this.spaces[t].toXYZ).multiply(this.spaces[n].fromXYZ)},_getDrawingBufferColorSpace:function(e){return this.spaces[e].outputColorSpaceConfig.drawingBufferColorSpace},_getUnpackColorSpace:function(e=this.workingColorSpace){return this.spaces[e].workingColorSpaceConfig.unpackColorSpace},fromWorkingColorSpace:function(t,n){return vl(`ColorManagement: .fromWorkingColorSpace() has been renamed to .workingToColorSpace().`),e.workingToColorSpace(t,n)},toWorkingColorSpace:function(t,n){return vl(`ColorManagement: .toWorkingColorSpace() has been renamed to .colorSpaceToWorking().`),e.colorSpaceToWorking(t,n)}},t=[.64,.33,.3,.6,.15,.06],n=[.2126,.7152,.0722],r=[.3127,.329];return e.define({[rl]:{primaries:t,whitePoint:r,transfer:il,toXYZ:eu,fromXYZ:tu,luminanceCoefficients:n,workingColorSpaceConfig:{unpackColorSpace:nl},outputColorSpaceConfig:{drawingBufferColorSpace:nl}},[nl]:{primaries:t,whitePoint:r,transfer:al,toXYZ:eu,fromXYZ:tu,luminanceCoefficients:n,outputColorSpaceConfig:{drawingBufferColorSpace:nl}}}),e}var ru=nu();function iu(e){return e<.04045?e*.0773993808:(e*.9478672986+.0521327014)**2.4}function au(e){return e<.0031308?e*12.92:1.055*e**.41666-.055}var ou,su=class{static getDataURL(e,t=`image/png`){if(/^data:/i.test(e.src)||typeof HTMLCanvasElement>`u`)return e.src;let n;if(e instanceof HTMLCanvasElement)n=e;else{ou===void 0&&(ou=fl(`canvas`)),ou.width=e.width,ou.height=e.height;let t=ou.getContext(`2d`);e instanceof ImageData?t.putImageData(e,0,0):t.drawImage(e,0,0,e.width,e.height),n=ou}return n.toDataURL(t)}static sRGBToLinear(e){if(typeof HTMLImageElement<`u`&&e instanceof HTMLImageElement||typeof HTMLCanvasElement<`u`&&e instanceof HTMLCanvasElement||typeof ImageBitmap<`u`&&e instanceof ImageBitmap){let t=fl(`canvas`);t.width=e.width,t.height=e.height;let n=t.getContext(`2d`);n.drawImage(e,0,0,e.width,e.height);let r=n.getImageData(0,0,e.width,e.height),i=r.data;for(let e=0;e1),this.pmremVersion=0,this.normalized=!1}get width(){return this.source.getSize(fu).x}get height(){return this.source.getSize(fu).y}get depth(){return this.source.getSize(fu).z}get image(){return this.source.data}set image(e){this.source.data=e}updateMatrix(){this.matrix.setUvTransform(this.offset.x,this.offset.y,this.repeat.x,this.repeat.y,this.rotation,this.center.x,this.center.y)}addUpdateRange(e,t){this.updateRanges.push({start:e,count:t})}clearUpdateRanges(){this.updateRanges.length=0}clone(){return new this.constructor().copy(this)}copy(e){return this.name=e.name,this.source=e.source,this.mipmaps=e.mipmaps.slice(0),this.mapping=e.mapping,this.channel=e.channel,this.wrapS=e.wrapS,this.wrapT=e.wrapT,this.magFilter=e.magFilter,this.minFilter=e.minFilter,this.anisotropy=e.anisotropy,this.format=e.format,this.internalFormat=e.internalFormat,this.type=e.type,this.normalized=e.normalized,this.offset.copy(e.offset),this.repeat.copy(e.repeat),this.center.copy(e.center),this.rotation=e.rotation,this.matrixAutoUpdate=e.matrixAutoUpdate,this.matrix.copy(e.matrix),this.generateMipmaps=e.generateMipmaps,this.premultiplyAlpha=e.premultiplyAlpha,this.flipY=e.flipY,this.unpackAlignment=e.unpackAlignment,this.colorSpace=e.colorSpace,this.renderTarget=e.renderTarget,this.isRenderTargetTexture=e.isRenderTargetTexture,this.isArrayTexture=e.isArrayTexture,this.userData=JSON.parse(JSON.stringify(e.userData)),this.needsUpdate=!0,this}setValues(e){for(let t in e){let n=e[t];if(n===void 0){Y(`Texture.setValues(): parameter '${t}' has value of undefined.`);continue}let r=this[t];if(r===void 0){Y(`Texture.setValues(): property '${t}' does not exist.`);continue}r&&n&&r.isVector2&&n.isVector2||r&&n&&r.isVector3&&n.isVector3||r&&n&&r.isMatrix3&&n.isMatrix3?r.copy(n):this[t]=n}}toJSON(e){let t=e===void 0||typeof e==`string`;if(!t&&e.textures[this.uuid]!==void 0)return e.textures[this.uuid];let n={metadata:{version:4.7,type:`Texture`,generator:`Texture.toJSON`},uuid:this.uuid,name:this.name,image:this.source.toJSON(e).uuid,mapping:this.mapping,channel:this.channel,repeat:[this.repeat.x,this.repeat.y],offset:[this.offset.x,this.offset.y],center:[this.center.x,this.center.y],rotation:this.rotation,wrap:[this.wrapS,this.wrapT],format:this.format,internalFormat:this.internalFormat,type:this.type,normalized:this.normalized,colorSpace:this.colorSpace,minFilter:this.minFilter,magFilter:this.magFilter,anisotropy:this.anisotropy,flipY:this.flipY,generateMipmaps:this.generateMipmaps,premultiplyAlpha:this.premultiplyAlpha,unpackAlignment:this.unpackAlignment};return Object.keys(this.userData).length>0&&(n.userData=this.userData),t||(e.textures[this.uuid]=n),n}dispose(){this.dispatchEvent({type:`dispose`})}transformUv(e){if(this.mapping!==300)return e;if(e.applyMatrix3(this.matrix),e.x<0||e.x>1)switch(this.wrapS){case ks:e.x-=Math.floor(e.x);break;case As:e.x=e.x<0?0:1;break;case js:Math.abs(Math.floor(e.x)%2)===1?e.x=Math.ceil(e.x)-e.x:e.x-=Math.floor(e.x);break}if(e.y<0||e.y>1)switch(this.wrapT){case ks:e.y-=Math.floor(e.y);break;case As:e.y=e.y<0?0:1;break;case js:Math.abs(Math.floor(e.y)%2)===1?e.y=Math.ceil(e.y)-e.y:e.y-=Math.floor(e.y);break}return this.flipY&&(e.y=1-e.y),e}set needsUpdate(e){e===!0&&(this.version++,this.source.needsUpdate=!0)}set needsPMREMUpdate(e){e===!0&&this.pmremVersion++}};pu.DEFAULT_IMAGE=null,pu.DEFAULT_MAPPING=300,pu.DEFAULT_ANISOTROPY=1;var mu=class e{static{e.prototype.isVector4=!0}constructor(e=0,t=0,n=0,r=1){this.x=e,this.y=t,this.z=n,this.w=r}get width(){return this.z}set width(e){this.z=e}get height(){return this.w}set height(e){this.w=e}set(e,t,n,r){return this.x=e,this.y=t,this.z=n,this.w=r,this}setScalar(e){return this.x=e,this.y=e,this.z=e,this.w=e,this}setX(e){return this.x=e,this}setY(e){return this.y=e,this}setZ(e){return this.z=e,this}setW(e){return this.w=e,this}setComponent(e,t){switch(e){case 0:this.x=t;break;case 1:this.y=t;break;case 2:this.z=t;break;case 3:this.w=t;break;default:throw Error(`THREE.Vector4: index is out of range: `+e)}return this}getComponent(e){switch(e){case 0:return this.x;case 1:return this.y;case 2:return this.z;case 3:return this.w;default:throw Error(`THREE.Vector4: index is out of range: `+e)}}clone(){return new this.constructor(this.x,this.y,this.z,this.w)}copy(e){return this.x=e.x,this.y=e.y,this.z=e.z,this.w=e.w===void 0?1:e.w,this}add(e){return this.x+=e.x,this.y+=e.y,this.z+=e.z,this.w+=e.w,this}addScalar(e){return this.x+=e,this.y+=e,this.z+=e,this.w+=e,this}addVectors(e,t){return this.x=e.x+t.x,this.y=e.y+t.y,this.z=e.z+t.z,this.w=e.w+t.w,this}addScaledVector(e,t){return this.x+=e.x*t,this.y+=e.y*t,this.z+=e.z*t,this.w+=e.w*t,this}sub(e){return this.x-=e.x,this.y-=e.y,this.z-=e.z,this.w-=e.w,this}subScalar(e){return this.x-=e,this.y-=e,this.z-=e,this.w-=e,this}subVectors(e,t){return this.x=e.x-t.x,this.y=e.y-t.y,this.z=e.z-t.z,this.w=e.w-t.w,this}multiply(e){return this.x*=e.x,this.y*=e.y,this.z*=e.z,this.w*=e.w,this}multiplyScalar(e){return this.x*=e,this.y*=e,this.z*=e,this.w*=e,this}applyMatrix4(e){let t=this.x,n=this.y,r=this.z,i=this.w,a=e.elements;return this.x=a[0]*t+a[4]*n+a[8]*r+a[12]*i,this.y=a[1]*t+a[5]*n+a[9]*r+a[13]*i,this.z=a[2]*t+a[6]*n+a[10]*r+a[14]*i,this.w=a[3]*t+a[7]*n+a[11]*r+a[15]*i,this}divide(e){return this.x/=e.x,this.y/=e.y,this.z/=e.z,this.w/=e.w,this}divideScalar(e){return this.multiplyScalar(1/e)}setAxisAngleFromQuaternion(e){this.w=2*Math.acos(e.w);let t=Math.sqrt(1-e.w*e.w);return t<1e-4?(this.x=1,this.y=0,this.z=0):(this.x=e.x/t,this.y=e.y/t,this.z=e.z/t),this}setAxisAngleFromRotationMatrix(e){let t,n,r,i,a=.01,o=.1,s=e.elements,c=s[0],l=s[4],u=s[8],d=s[1],f=s[5],p=s[9],m=s[2],h=s[6],g=s[10];if(Math.abs(l-d)s&&e>_?e_?s1);this.dispose()}this.viewport.set(0,0,e,t),this.scissor.set(0,0,e,t)}clone(){return new this.constructor().copy(this)}copy(e){this.width=e.width,this.height=e.height,this.depth=e.depth,this.scissor.copy(e.scissor),this.scissorTest=e.scissorTest,this.viewport.copy(e.viewport),this.textures.length=0;for(let t=0,n=e.textures.length;t>>0}enable(e){this.mask|=1<1){for(let e=0;e1){for(let e=0;e0&&(r.userData=this.userData),r.layers=this.layers.mask,r.matrix=this.matrix.toArray(),r.up=this.up.toArray(),this.pivot!==null&&(r.pivot=this.pivot.toArray()),this.matrixAutoUpdate===!1&&(r.matrixAutoUpdate=!1),this.morphTargetDictionary!==void 0&&(r.morphTargetDictionary=Object.assign({},this.morphTargetDictionary)),this.morphTargetInfluences!==void 0&&(r.morphTargetInfluences=this.morphTargetInfluences.slice()),this.isInstancedMesh&&(r.type=`InstancedMesh`,r.count=this.count,r.instanceMatrix=this.instanceMatrix.toJSON(),this.instanceColor!==null&&(r.instanceColor=this.instanceColor.toJSON())),this.isBatchedMesh&&(r.type=`BatchedMesh`,r.perObjectFrustumCulled=this.perObjectFrustumCulled,r.sortObjects=this.sortObjects,r.drawRanges=this._drawRanges,r.reservedRanges=this._reservedRanges,r.geometryInfo=this._geometryInfo.map(e=>({...e,boundingBox:e.boundingBox?e.boundingBox.toJSON():void 0,boundingSphere:e.boundingSphere?e.boundingSphere.toJSON():void 0})),r.instanceInfo=this._instanceInfo.map(e=>({...e})),r.availableInstanceIds=this._availableInstanceIds.slice(),r.availableGeometryIds=this._availableGeometryIds.slice(),r.nextIndexStart=this._nextIndexStart,r.nextVertexStart=this._nextVertexStart,r.geometryCount=this._geometryCount,r.maxInstanceCount=this._maxInstanceCount,r.maxVertexCount=this._maxVertexCount,r.maxIndexCount=this._maxIndexCount,r.geometryInitialized=this._geometryInitialized,r.matricesTexture=this._matricesTexture.toJSON(e),r.indirectTexture=this._indirectTexture.toJSON(e),this._colorsTexture!==null&&(r.colorsTexture=this._colorsTexture.toJSON(e)),this.boundingSphere!==null&&(r.boundingSphere=this.boundingSphere.toJSON()),this.boundingBox!==null&&(r.boundingBox=this.boundingBox.toJSON()));function i(t,n){return t[n.uuid]===void 0&&(t[n.uuid]=n.toJSON(e)),n.uuid}if(this.isScene)this.background&&(this.background.isColor?r.background=this.background.toJSON():this.background.isTexture&&(r.background=this.background.toJSON(e).uuid)),this.environment&&this.environment.isTexture&&this.environment.isRenderTargetTexture!==!0&&(r.environment=this.environment.toJSON(e).uuid);else if(this.isMesh||this.isLine||this.isPoints){r.geometry=i(e.geometries,this.geometry);let t=this.geometry.parameters;if(t!==void 0&&t.shapes!==void 0){let n=t.shapes;if(Array.isArray(n))for(let t=0,r=n.length;t0){r.children=[];for(let t=0;t0){r.animations=[];for(let t=0;t0&&(n.geometries=t),r.length>0&&(n.materials=r),i.length>0&&(n.textures=i),o.length>0&&(n.images=o),s.length>0&&(n.shapes=s),c.length>0&&(n.skeletons=c),l.length>0&&(n.animations=l),u.length>0&&(n.nodes=u)}return n.object=r,n;function a(e){let t=[];for(let n in e){let r=e[n];delete r.metadata,t.push(r)}return t}}clone(e){return new this.constructor().copy(this,e)}copy(e,t=!0){if(this.name=e.name,this.up.copy(e.up),this.position.copy(e.position),this.rotation.order=e.rotation.order,this.quaternion.copy(e.quaternion),this.scale.copy(e.scale),this.pivot=e.pivot===null?null:e.pivot.clone(),this.matrix.copy(e.matrix),this.matrixWorld.copy(e.matrixWorld),this.matrixAutoUpdate=e.matrixAutoUpdate,this.matrixWorldAutoUpdate=e.matrixWorldAutoUpdate,this.matrixWorldNeedsUpdate=e.matrixWorldNeedsUpdate,this.layers.mask=e.layers.mask,this.visible=e.visible,this.castShadow=e.castShadow,this.receiveShadow=e.receiveShadow,this.frustumCulled=e.frustumCulled,this.renderOrder=e.renderOrder,this.static=e.static,this.animations=e.animations.slice(),this.userData=JSON.parse(JSON.stringify(e.userData)),t===!0)for(let t=0;t.025?(c.inputState.pinching=!1,this.dispatchEvent({type:`pinchend`,handedness:e.handedness,target:this})):!c.inputState.pinching&&o<=.015&&(c.inputState.pinching=!0,this.dispatchEvent({type:`pinchstart`,handedness:e.handedness,target:this}))}else s!==null&&e.gripSpace&&(i=t.getPose(e.gripSpace,n),i!==null&&(s.matrix.fromArray(i.transform.matrix),s.matrix.decompose(s.position,s.rotation,s.scale),s.matrixWorldNeedsUpdate=!0,i.linearVelocity?(s.hasLinearVelocity=!0,s.linearVelocity.copy(i.linearVelocity)):s.hasLinearVelocity=!1,i.angularVelocity?(s.hasAngularVelocity=!0,s.angularVelocity.copy(i.angularVelocity)):s.hasAngularVelocity=!1,s.eventsEnabled&&s.dispatchEvent({type:`gripUpdated`,data:e,target:this})));o!==null&&(r=t.getPose(e.targetRaySpace,n),r===null&&i!==null&&(r=i),r!==null&&(o.matrix.fromArray(r.transform.matrix),o.matrix.decompose(o.position,o.rotation,o.scale),o.matrixWorldNeedsUpdate=!0,r.linearVelocity?(o.hasLinearVelocity=!0,o.linearVelocity.copy(r.linearVelocity)):o.hasLinearVelocity=!1,r.angularVelocity?(o.hasAngularVelocity=!0,o.angularVelocity.copy(r.angularVelocity)):o.hasAngularVelocity=!1,this.dispatchEvent(Ju)))}return o!==null&&(o.visible=r!==null),s!==null&&(s.visible=i!==null),c!==null&&(c.visible=a!==null),this}_getHandJoint(e,t){if(e.joints[t.jointName]===void 0){let n=new qu;n.matrixAutoUpdate=!1,n.visible=!1,e.joints[t.jointName]=n,e.add(n)}return e.joints[t.jointName]}},Xu={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074},Zu={h:0,s:0,l:0},Qu={h:0,s:0,l:0};function $u(e,t,n){return n<0&&(n+=1),n>1&&--n,n<1/6?e+(t-e)*6*n:n<1/2?t:n<2/3?e+(t-e)*6*(2/3-n):e}var Q=class{constructor(e,t,n){return this.isColor=!0,this.r=1,this.g=1,this.b=1,this.set(e,t,n)}set(e,t,n){if(t===void 0&&n===void 0){let t=e;t&&t.isColor?this.copy(t):typeof t==`number`?this.setHex(t):typeof t==`string`&&this.setStyle(t)}else this.setRGB(e,t,n);return this}setScalar(e){return this.r=e,this.g=e,this.b=e,this}setHex(e,t=nl){return e=Math.floor(e),this.r=(e>>16&255)/255,this.g=(e>>8&255)/255,this.b=(e&255)/255,ru.colorSpaceToWorking(this,t),this}setRGB(e,t,n,r=ru.workingColorSpace){return this.r=e,this.g=t,this.b=n,ru.colorSpaceToWorking(this,r),this}setHSL(e,t,n,r=ru.workingColorSpace){if(e=Ol(e,1),t=Dl(t,0,1),n=Dl(n,0,1),t===0)this.r=this.g=this.b=n;else{let r=n<=.5?n*(1+t):n+t-n*t,i=2*n-r;this.r=$u(i,r,e+1/3),this.g=$u(i,r,e),this.b=$u(i,r,e-1/3)}return ru.colorSpaceToWorking(this,r),this}setStyle(e,t=nl){function n(t){t!==void 0&&parseFloat(t)<1&&Y(`Color: Alpha component of `+e+` will be ignored.`)}let r;if(r=/^(\w+)\(([^\)]*)\)/.exec(e)){let i,a=r[1],o=r[2];switch(a){case`rgb`:case`rgba`:if(i=/^\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(o))return n(i[4]),this.setRGB(Math.min(255,parseInt(i[1],10))/255,Math.min(255,parseInt(i[2],10))/255,Math.min(255,parseInt(i[3],10))/255,t);if(i=/^\s*(\d+)\%\s*,\s*(\d+)\%\s*,\s*(\d+)\%\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(o))return n(i[4]),this.setRGB(Math.min(100,parseInt(i[1],10))/100,Math.min(100,parseInt(i[2],10))/100,Math.min(100,parseInt(i[3],10))/100,t);break;case`hsl`:case`hsla`:if(i=/^\s*(\d*\.?\d+)\s*,\s*(\d*\.?\d+)\%\s*,\s*(\d*\.?\d+)\%\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(o))return n(i[4]),this.setHSL(parseFloat(i[1])/360,parseFloat(i[2])/100,parseFloat(i[3])/100,t);break;default:Y(`Color: Unknown color model `+e)}}else if(r=/^\#([A-Fa-f\d]+)$/.exec(e)){let n=r[1],i=n.length;if(i===3)return this.setRGB(parseInt(n.charAt(0),16)/15,parseInt(n.charAt(1),16)/15,parseInt(n.charAt(2),16)/15,t);if(i===6)return this.setHex(parseInt(n,16),t);Y(`Color: Invalid hex color `+e)}else if(e&&e.length>0)return this.setColorName(e,t);return this}setColorName(e,t=nl){let n=Xu[e.toLowerCase()];return n===void 0?Y(`Color: Unknown color `+e):this.setHex(n,t),this}clone(){return new this.constructor(this.r,this.g,this.b)}copy(e){return this.r=e.r,this.g=e.g,this.b=e.b,this}copySRGBToLinear(e){return this.r=iu(e.r),this.g=iu(e.g),this.b=iu(e.b),this}copyLinearToSRGB(e){return this.r=au(e.r),this.g=au(e.g),this.b=au(e.b),this}convertSRGBToLinear(){return this.copySRGBToLinear(this),this}convertLinearToSRGB(){return this.copyLinearToSRGB(this),this}getHex(e=nl){return ru.workingToColorSpace(ed.copy(this),e),Math.round(Dl(ed.r*255,0,255))*65536+Math.round(Dl(ed.g*255,0,255))*256+Math.round(Dl(ed.b*255,0,255))}getHexString(e=nl){return(`000000`+this.getHex(e).toString(16)).slice(-6)}getHSL(e,t=ru.workingColorSpace){ru.workingToColorSpace(ed.copy(this),t);let n=ed.r,r=ed.g,i=ed.b,a=Math.max(n,r,i),o=Math.min(n,r,i),s,c,l=(o+a)/2;if(o===a)s=0,c=0;else{let e=a-o;switch(c=l<=.5?e/(a+o):e/(2-a-o),a){case n:s=(r-i)/e+(r0&&(t.object.backgroundBlurriness=this.backgroundBlurriness),this.backgroundIntensity!==1&&(t.object.backgroundIntensity=this.backgroundIntensity),t.object.backgroundRotation=this.backgroundRotation.toArray(),this.environmentIntensity!==1&&(t.object.environmentIntensity=this.environmentIntensity),t.object.environmentRotation=this.environmentRotation.toArray(),t}},rd=new Z,id=new Z,ad=new Z,od=new Z,sd=new Z,cd=new Z,ld=new Z,ud=new Z,dd=new Z,fd=new Z,pd=new mu,md=new mu,hd=new mu,gd=class e{constructor(e=new Z,t=new Z,n=new Z){this.a=e,this.b=t,this.c=n}static getNormal(e,t,n,r){r.subVectors(n,t),rd.subVectors(e,t),r.cross(rd);let i=r.lengthSq();return i>0?r.multiplyScalar(1/Math.sqrt(i)):r.set(0,0,0)}static getBarycoord(e,t,n,r,i){rd.subVectors(r,t),id.subVectors(n,t),ad.subVectors(e,t);let a=rd.dot(rd),o=rd.dot(id),s=rd.dot(ad),c=id.dot(id),l=id.dot(ad),u=a*c-o*o;if(u===0)return i.set(0,0,0),null;let d=1/u,f=(c*s-o*l)*d,p=(a*l-o*s)*d;return i.set(1-f-p,p,f)}static containsPoint(e,t,n,r){return this.getBarycoord(e,t,n,r,od)!==null&&od.x>=0&&od.y>=0&&od.x+od.y<=1}static getInterpolation(e,t,n,r,i,a,o,s){return this.getBarycoord(e,t,n,r,od)===null?(s.x=0,s.y=0,`z`in s&&(s.z=0),`w`in s&&(s.w=0),null):(s.setScalar(0),s.addScaledVector(i,od.x),s.addScaledVector(a,od.y),s.addScaledVector(o,od.z),s)}static getInterpolatedAttribute(e,t,n,r,i,a){return pd.setScalar(0),md.setScalar(0),hd.setScalar(0),pd.fromBufferAttribute(e,t),md.fromBufferAttribute(e,n),hd.fromBufferAttribute(e,r),a.setScalar(0),a.addScaledVector(pd,i.x),a.addScaledVector(md,i.y),a.addScaledVector(hd,i.z),a}static isFrontFacing(e,t,n,r){return rd.subVectors(n,t),id.subVectors(e,t),rd.cross(id).dot(r)<0}set(e,t,n){return this.a.copy(e),this.b.copy(t),this.c.copy(n),this}setFromPointsAndIndices(e,t,n,r){return this.a.copy(e[t]),this.b.copy(e[n]),this.c.copy(e[r]),this}setFromAttributeAndIndices(e,t,n,r){return this.a.fromBufferAttribute(e,t),this.b.fromBufferAttribute(e,n),this.c.fromBufferAttribute(e,r),this}clone(){return new this.constructor().copy(this)}copy(e){return this.a.copy(e.a),this.b.copy(e.b),this.c.copy(e.c),this}getArea(){return rd.subVectors(this.c,this.b),id.subVectors(this.a,this.b),rd.cross(id).length()*.5}getMidpoint(e){return e.addVectors(this.a,this.b).add(this.c).multiplyScalar(1/3)}getNormal(t){return e.getNormal(this.a,this.b,this.c,t)}getPlane(e){return e.setFromCoplanarPoints(this.a,this.b,this.c)}getBarycoord(t,n){return e.getBarycoord(t,this.a,this.b,this.c,n)}getInterpolation(t,n,r,i,a){return e.getInterpolation(t,this.a,this.b,this.c,n,r,i,a)}containsPoint(t){return e.containsPoint(t,this.a,this.b,this.c)}isFrontFacing(t){return e.isFrontFacing(this.a,this.b,this.c,t)}intersectsBox(e){return e.intersectsTriangle(this)}closestPointToPoint(e,t){let n=this.a,r=this.b,i=this.c,a,o;sd.subVectors(r,n),cd.subVectors(i,n),ud.subVectors(e,n);let s=sd.dot(ud),c=cd.dot(ud);if(s<=0&&c<=0)return t.copy(n);dd.subVectors(e,r);let l=sd.dot(dd),u=cd.dot(dd);if(l>=0&&u<=l)return t.copy(r);let d=s*u-l*c;if(d<=0&&s>=0&&l<=0)return a=s/(s-l),t.copy(n).addScaledVector(sd,a);fd.subVectors(e,i);let f=sd.dot(fd),p=cd.dot(fd);if(p>=0&&f<=p)return t.copy(i);let m=f*c-s*p;if(m<=0&&c>=0&&p<=0)return o=c/(c-p),t.copy(n).addScaledVector(cd,o);let h=l*p-f*u;if(h<=0&&u-l>=0&&f-p>=0)return ld.subVectors(i,r),o=(u-l)/(u-l+(f-p)),t.copy(r).addScaledVector(ld,o);let g=1/(h+m+d);return a=m*g,o=d*g,t.copy(n).addScaledVector(sd,a).addScaledVector(cd,o)}equals(e){return e.a.equals(this.a)&&e.b.equals(this.b)&&e.c.equals(this.c)}},_d=class{constructor(e=new Z(1/0,1/0,1/0),t=new Z(-1/0,-1/0,-1/0)){this.isBox3=!0,this.min=e,this.max=t}set(e,t){return this.min.copy(e),this.max.copy(t),this}setFromArray(e){this.makeEmpty();for(let t=0,n=e.length;t=this.min.x&&e.x<=this.max.x&&e.y>=this.min.y&&e.y<=this.max.y&&e.z>=this.min.z&&e.z<=this.max.z}containsBox(e){return this.min.x<=e.min.x&&e.max.x<=this.max.x&&this.min.y<=e.min.y&&e.max.y<=this.max.y&&this.min.z<=e.min.z&&e.max.z<=this.max.z}getParameter(e,t){return t.set((e.x-this.min.x)/(this.max.x-this.min.x),(e.y-this.min.y)/(this.max.y-this.min.y),(e.z-this.min.z)/(this.max.z-this.min.z))}intersectsBox(e){return e.max.x>=this.min.x&&e.min.x<=this.max.x&&e.max.y>=this.min.y&&e.min.y<=this.max.y&&e.max.z>=this.min.z&&e.min.z<=this.max.z}intersectsSphere(e){return this.clampPoint(e.center,yd),yd.distanceToSquared(e.center)<=e.radius*e.radius}intersectsPlane(e){let t,n;return e.normal.x>0?(t=e.normal.x*this.min.x,n=e.normal.x*this.max.x):(t=e.normal.x*this.max.x,n=e.normal.x*this.min.x),e.normal.y>0?(t+=e.normal.y*this.min.y,n+=e.normal.y*this.max.y):(t+=e.normal.y*this.max.y,n+=e.normal.y*this.min.y),e.normal.z>0?(t+=e.normal.z*this.min.z,n+=e.normal.z*this.max.z):(t+=e.normal.z*this.max.z,n+=e.normal.z*this.min.z),t<=-e.constant&&n>=-e.constant}intersectsTriangle(e){if(this.isEmpty())return!1;this.getCenter(Dd),Od.subVectors(this.max,Dd),xd.subVectors(e.a,Dd),Sd.subVectors(e.b,Dd),Cd.subVectors(e.c,Dd),wd.subVectors(Sd,xd),Td.subVectors(Cd,Sd),Ed.subVectors(xd,Cd);let t=[0,-wd.z,wd.y,0,-Td.z,Td.y,0,-Ed.z,Ed.y,wd.z,0,-wd.x,Td.z,0,-Td.x,Ed.z,0,-Ed.x,-wd.y,wd.x,0,-Td.y,Td.x,0,-Ed.y,Ed.x,0];return!jd(t,xd,Sd,Cd,Od)||(t=[1,0,0,0,1,0,0,0,1],!jd(t,xd,Sd,Cd,Od))?!1:(kd.crossVectors(wd,Td),t=[kd.x,kd.y,kd.z],jd(t,xd,Sd,Cd,Od))}clampPoint(e,t){return t.copy(e).clamp(this.min,this.max)}distanceToPoint(e){return this.clampPoint(e,yd).distanceTo(e)}getBoundingSphere(e){return this.isEmpty()?e.makeEmpty():(this.getCenter(e.center),e.radius=this.getSize(yd).length()*.5),e}intersect(e){return this.min.max(e.min),this.max.min(e.max),this.isEmpty()&&this.makeEmpty(),this}union(e){return this.min.min(e.min),this.max.max(e.max),this}applyMatrix4(e){return this.isEmpty()?this:(vd[0].set(this.min.x,this.min.y,this.min.z).applyMatrix4(e),vd[1].set(this.min.x,this.min.y,this.max.z).applyMatrix4(e),vd[2].set(this.min.x,this.max.y,this.min.z).applyMatrix4(e),vd[3].set(this.min.x,this.max.y,this.max.z).applyMatrix4(e),vd[4].set(this.max.x,this.min.y,this.min.z).applyMatrix4(e),vd[5].set(this.max.x,this.min.y,this.max.z).applyMatrix4(e),vd[6].set(this.max.x,this.max.y,this.min.z).applyMatrix4(e),vd[7].set(this.max.x,this.max.y,this.max.z).applyMatrix4(e),this.setFromPoints(vd),this)}translate(e){return this.min.add(e),this.max.add(e),this}equals(e){return e.min.equals(this.min)&&e.max.equals(this.max)}toJSON(){return{min:this.min.toArray(),max:this.max.toArray()}}fromJSON(e){return this.min.fromArray(e.min),this.max.fromArray(e.max),this}},vd=[new Z,new Z,new Z,new Z,new Z,new Z,new Z,new Z],yd=new Z,bd=new _d,xd=new Z,Sd=new Z,Cd=new Z,wd=new Z,Td=new Z,Ed=new Z,Dd=new Z,Od=new Z,kd=new Z,Ad=new Z;function jd(e,t,n,r,i){for(let a=0,o=e.length-3;a<=o;a+=3){Ad.fromArray(e,a);let o=i.x*Math.abs(Ad.x)+i.y*Math.abs(Ad.y)+i.z*Math.abs(Ad.z),s=t.dot(Ad),c=n.dot(Ad),l=r.dot(Ad);if(Math.max(-Math.max(s,c,l),Math.min(s,c,l))>o)return!1}return!0}var Md=new Z,Nd=new X,Pd=0,Fd=class extends xl{constructor(e,t,n=!1){if(super(),Array.isArray(e))throw TypeError(`THREE.BufferAttribute: array should be a Typed Array.`);this.isBufferAttribute=!0,Object.defineProperty(this,"id",{value:Pd++}),this.name=``,this.array=e,this.itemSize=t,this.count=e===void 0?0:e.length/t,this.normalized=n,this.usage=sl,this.updateRanges=[],this.gpuType=Ws,this.version=0}onUploadCallback(){}set needsUpdate(e){e===!0&&this.version++}setUsage(e){return this.usage=e,this}addUpdateRange(e,t){this.updateRanges.push({start:e,count:t})}clearUpdateRanges(){this.updateRanges.length=0}copy(e){return this.name=e.name,this.array=new e.array.constructor(e.array),this.itemSize=e.itemSize,this.count=e.count,this.normalized=e.normalized,this.usage=e.usage,this.gpuType=e.gpuType,this}copyAt(e,t,n){e*=this.itemSize,n*=t.itemSize;for(let r=0,i=this.itemSize;rthis.radius*this.radius&&(t.sub(this.center).normalize(),t.multiplyScalar(this.radius).add(this.center)),t}getBoundingBox(e){return this.isEmpty()?(e.makeEmpty(),e):(e.set(this.center,this.center),e.expandByScalar(this.radius),e)}applyMatrix4(e){return this.center.applyMatrix4(e),this.radius*=e.getMaxScaleOnAxis(),this}translate(e){return this.center.add(e),this}expandByPoint(e){if(this.isEmpty())return this.center.copy(e),this.radius=0,this;Bd.subVectors(e,this.center);let t=Bd.lengthSq();if(t>this.radius*this.radius){let e=Math.sqrt(t),n=(e-this.radius)*.5;this.center.addScaledVector(Bd,n/e),this.radius+=n}return this}union(e){return e.isEmpty()?this:this.isEmpty()?(this.copy(e),this):(this.center.equals(e.center)===!0?this.radius=Math.max(this.radius,e.radius):(Vd.subVectors(e.center,this.center).setLength(e.radius),this.expandByPoint(Bd.copy(e.center).add(Vd)),this.expandByPoint(Bd.copy(e.center).sub(Vd))),this)}equals(e){return e.center.equals(this.center)&&e.radius===this.radius}clone(){return new this.constructor().copy(this)}toJSON(){return{radius:this.radius,center:this.center.toArray()}}fromJSON(e){return this.radius=e.radius,this.center.fromArray(e.center),this}},Ud=0,Wd=new yu,Gd=new Ku,Kd=new Z,qd=new _d,Jd=new _d,Yd=new Z,Xd=class e extends xl{constructor(){super(),this.isBufferGeometry=!0,Object.defineProperty(this,"id",{value:Ud++}),this.uuid=El(),this.name=``,this.type=`BufferGeometry`,this.index=null,this.indirect=null,this.indirectOffset=0,this.attributes={},this.morphAttributes={},this.morphTargetsRelative=!1,this.groups=[],this.boundingBox=null,this.boundingSphere=null,this.drawRange={start:0,count:1/0},this.userData={},this._transformed=!1}getIndex(){return this.index}setIndex(e){return Array.isArray(e)?this.index=new(ul(e)?Ld:Id)(e,1):this.index=e,this}setIndirect(e,t=0){return this.indirect=e,this.indirectOffset=t,this}getIndirect(){return this.indirect}getAttribute(e){return this.attributes[e]}setAttribute(e,t){return this.attributes[e]=t,this}deleteAttribute(e){return delete this.attributes[e],this}hasAttribute(e){return this.attributes[e]!==void 0}addGroup(e,t,n=0){this.groups.push({start:e,count:t,materialIndex:n})}clearGroups(){this.groups=[]}setDrawRange(e,t){this.drawRange.start=e,this.drawRange.count=t}applyMatrix4(e){let t=this.attributes.position;t!==void 0&&(t.applyMatrix4(e),t.needsUpdate=!0);let n=this.attributes.normal;if(n!==void 0){let t=new Ql().getNormalMatrix(e);n.applyNormalMatrix(t),n.needsUpdate=!0}let r=this.attributes.tangent;return r!==void 0&&(r.transformDirection(e),r.needsUpdate=!0),this.boundingBox!==null&&this.computeBoundingBox(),this.boundingSphere!==null&&this.computeBoundingSphere(),this._transformed=!0,this}applyQuaternion(e){return Wd.makeRotationFromQuaternion(e),this.applyMatrix4(Wd),this}rotateX(e){return Wd.makeRotationX(e),this.applyMatrix4(Wd),this}rotateY(e){return Wd.makeRotationY(e),this.applyMatrix4(Wd),this}rotateZ(e){return Wd.makeRotationZ(e),this.applyMatrix4(Wd),this}translate(e,t,n){return Wd.makeTranslation(e,t,n),this.applyMatrix4(Wd),this}scale(e,t,n){return Wd.makeScale(e,t,n),this.applyMatrix4(Wd),this}lookAt(e){return Gd.lookAt(e),Gd.updateMatrix(),this.applyMatrix4(Gd.matrix),this}center(){return this.computeBoundingBox(),this.boundingBox.getCenter(Kd).negate(),this.translate(Kd.x,Kd.y,Kd.z),this}setFromPoints(e){let t=this.getAttribute(`position`);if(t===void 0){let t=[];for(let n=0,r=e.length;nt.count&&Y(`BufferGeometry: Buffer size too small for points data. Use .dispose() and create a new geometry.`),t.needsUpdate=!0}return this}computeBoundingBox(){this.boundingBox===null&&(this.boundingBox=new _d);let e=this.attributes.position,t=this.morphAttributes.position;if(e&&e.isGLBufferAttribute){_l(`BufferGeometry.computeBoundingBox(): GLBufferAttribute requires a manual bounding box.`,this),this.boundingBox.set(new Z(-1/0,-1/0,-1/0),new Z(1/0,1/0,1/0));return}if(e!==void 0){if(this.boundingBox.setFromBufferAttribute(e),t)for(let e=0,n=t.length;e0&&(e.userData=this.userData),this.parameters!==void 0&&this._transformed!==!0){let t=this.parameters;for(let n in t)t[n]!==void 0&&(e[n]=t[n]);return e}e.data={attributes:{}};let t=this.index;t!==null&&(e.data.index={type:t.array.constructor.name,array:Array.prototype.slice.call(t.array)});let n=this.attributes;for(let t in n){let r=n[t];e.data.attributes[t]=r.toJSON(e.data)}let r={},i=!1;for(let t in this.morphAttributes){let n=this.morphAttributes[t],a=[];for(let t=0,r=n.length;t0&&(r[t]=a,i=!0)}i&&(e.data.morphAttributes=r,e.data.morphTargetsRelative=this.morphTargetsRelative);let a=this.groups;a.length>0&&(e.data.groups=JSON.parse(JSON.stringify(a)));let o=this.boundingSphere;return o!==null&&(e.data.boundingSphere=o.toJSON()),e}clone(){return new this.constructor().copy(this)}copy(e){this.index=null,this.attributes={},this.morphAttributes={},this.groups=[],this.boundingBox=null,this.boundingSphere=null;let t={};this.name=e.name;let n=e.index;n!==null&&this.setIndex(n.clone());let r=e.attributes;for(let e in r){let n=r[e];this.setAttribute(e,n.clone(t))}let i=e.morphAttributes;for(let e in i){let n=[],r=i[e];for(let e=0,i=r.length;e0!=e>0&&this.version++,this._alphaTest=e}onBeforeRender(){}onBeforeCompile(){}customProgramCacheKey(){return this.onBeforeCompile.toString()}setValues(e){if(e!==void 0)for(let t in e){let n=e[t];if(n===void 0){Y(`Material: parameter '${t}' has value of undefined.`);continue}let r=this[t];if(r===void 0){Y(`Material: '${t}' is not a property of THREE.${this.type}.`);continue}r&&r.isColor?r.set(n):r&&r.isVector2&&n&&n.isVector2||r&&r.isEuler&&n&&n.isEuler||r&&r.isVector3&&n&&n.isVector3?r.copy(n):this[t]=n}}toJSON(e){let t=e===void 0||typeof e==`string`;t&&(e={textures:{},images:{}});let n={metadata:{version:4.7,type:`Material`,generator:`Material.toJSON`}};n.uuid=this.uuid,n.type=this.type,this.name!==``&&(n.name=this.name),this.color&&this.color.isColor&&(n.color=this.color.getHex()),this.roughness!==void 0&&(n.roughness=this.roughness),this.metalness!==void 0&&(n.metalness=this.metalness),this.sheen!==void 0&&(n.sheen=this.sheen),this.sheenColor&&this.sheenColor.isColor&&(n.sheenColor=this.sheenColor.getHex()),this.sheenRoughness!==void 0&&(n.sheenRoughness=this.sheenRoughness),this.emissive&&this.emissive.isColor&&(n.emissive=this.emissive.getHex()),this.emissiveIntensity!==void 0&&this.emissiveIntensity!==1&&(n.emissiveIntensity=this.emissiveIntensity),this.specular&&this.specular.isColor&&(n.specular=this.specular.getHex()),this.specularIntensity!==void 0&&(n.specularIntensity=this.specularIntensity),this.specularColor&&this.specularColor.isColor&&(n.specularColor=this.specularColor.getHex()),this.shininess!==void 0&&(n.shininess=this.shininess),this.clearcoat!==void 0&&(n.clearcoat=this.clearcoat),this.clearcoatRoughness!==void 0&&(n.clearcoatRoughness=this.clearcoatRoughness),this.clearcoatMap&&this.clearcoatMap.isTexture&&(n.clearcoatMap=this.clearcoatMap.toJSON(e).uuid),this.clearcoatRoughnessMap&&this.clearcoatRoughnessMap.isTexture&&(n.clearcoatRoughnessMap=this.clearcoatRoughnessMap.toJSON(e).uuid),this.clearcoatNormalMap&&this.clearcoatNormalMap.isTexture&&(n.clearcoatNormalMap=this.clearcoatNormalMap.toJSON(e).uuid,n.clearcoatNormalScale=this.clearcoatNormalScale.toArray()),this.sheenColorMap&&this.sheenColorMap.isTexture&&(n.sheenColorMap=this.sheenColorMap.toJSON(e).uuid),this.sheenRoughnessMap&&this.sheenRoughnessMap.isTexture&&(n.sheenRoughnessMap=this.sheenRoughnessMap.toJSON(e).uuid),this.dispersion!==void 0&&(n.dispersion=this.dispersion),this.iridescence!==void 0&&(n.iridescence=this.iridescence),this.iridescenceIOR!==void 0&&(n.iridescenceIOR=this.iridescenceIOR),this.iridescenceThicknessRange!==void 0&&(n.iridescenceThicknessRange=this.iridescenceThicknessRange),this.iridescenceMap&&this.iridescenceMap.isTexture&&(n.iridescenceMap=this.iridescenceMap.toJSON(e).uuid),this.iridescenceThicknessMap&&this.iridescenceThicknessMap.isTexture&&(n.iridescenceThicknessMap=this.iridescenceThicknessMap.toJSON(e).uuid),this.anisotropy!==void 0&&(n.anisotropy=this.anisotropy),this.anisotropyRotation!==void 0&&(n.anisotropyRotation=this.anisotropyRotation),this.anisotropyMap&&this.anisotropyMap.isTexture&&(n.anisotropyMap=this.anisotropyMap.toJSON(e).uuid),this.map&&this.map.isTexture&&(n.map=this.map.toJSON(e).uuid),this.matcap&&this.matcap.isTexture&&(n.matcap=this.matcap.toJSON(e).uuid),this.alphaMap&&this.alphaMap.isTexture&&(n.alphaMap=this.alphaMap.toJSON(e).uuid),this.lightMap&&this.lightMap.isTexture&&(n.lightMap=this.lightMap.toJSON(e).uuid,n.lightMapIntensity=this.lightMapIntensity),this.aoMap&&this.aoMap.isTexture&&(n.aoMap=this.aoMap.toJSON(e).uuid,n.aoMapIntensity=this.aoMapIntensity),this.bumpMap&&this.bumpMap.isTexture&&(n.bumpMap=this.bumpMap.toJSON(e).uuid,n.bumpScale=this.bumpScale),this.normalMap&&this.normalMap.isTexture&&(n.normalMap=this.normalMap.toJSON(e).uuid,n.normalMapType=this.normalMapType,n.normalScale=this.normalScale.toArray()),this.displacementMap&&this.displacementMap.isTexture&&(n.displacementMap=this.displacementMap.toJSON(e).uuid,n.displacementScale=this.displacementScale,n.displacementBias=this.displacementBias),this.roughnessMap&&this.roughnessMap.isTexture&&(n.roughnessMap=this.roughnessMap.toJSON(e).uuid),this.metalnessMap&&this.metalnessMap.isTexture&&(n.metalnessMap=this.metalnessMap.toJSON(e).uuid),this.emissiveMap&&this.emissiveMap.isTexture&&(n.emissiveMap=this.emissiveMap.toJSON(e).uuid),this.specularMap&&this.specularMap.isTexture&&(n.specularMap=this.specularMap.toJSON(e).uuid),this.specularIntensityMap&&this.specularIntensityMap.isTexture&&(n.specularIntensityMap=this.specularIntensityMap.toJSON(e).uuid),this.specularColorMap&&this.specularColorMap.isTexture&&(n.specularColorMap=this.specularColorMap.toJSON(e).uuid),this.envMap&&this.envMap.isTexture&&(n.envMap=this.envMap.toJSON(e).uuid,this.combine!==void 0&&(n.combine=this.combine)),this.envMapRotation!==void 0&&(n.envMapRotation=this.envMapRotation.toArray()),this.envMapIntensity!==void 0&&(n.envMapIntensity=this.envMapIntensity),this.reflectivity!==void 0&&(n.reflectivity=this.reflectivity),this.refractionRatio!==void 0&&(n.refractionRatio=this.refractionRatio),this.gradientMap&&this.gradientMap.isTexture&&(n.gradientMap=this.gradientMap.toJSON(e).uuid),this.transmission!==void 0&&(n.transmission=this.transmission),this.transmissionMap&&this.transmissionMap.isTexture&&(n.transmissionMap=this.transmissionMap.toJSON(e).uuid),this.thickness!==void 0&&(n.thickness=this.thickness),this.thicknessMap&&this.thicknessMap.isTexture&&(n.thicknessMap=this.thicknessMap.toJSON(e).uuid),this.attenuationDistance!==void 0&&this.attenuationDistance!==1/0&&(n.attenuationDistance=this.attenuationDistance),this.attenuationColor!==void 0&&(n.attenuationColor=this.attenuationColor.getHex()),this.size!==void 0&&(n.size=this.size),this.shadowSide!==null&&(n.shadowSide=this.shadowSide),this.sizeAttenuation!==void 0&&(n.sizeAttenuation=this.sizeAttenuation),this.blending!==1&&(n.blending=this.blending),this.side!==0&&(n.side=this.side),this.vertexColors===!0&&(n.vertexColors=!0),this.opacity<1&&(n.opacity=this.opacity),this.transparent===!0&&(n.transparent=!0),this.blendSrc!==204&&(n.blendSrc=this.blendSrc),this.blendDst!==205&&(n.blendDst=this.blendDst),this.blendEquation!==100&&(n.blendEquation=this.blendEquation),this.blendSrcAlpha!==null&&(n.blendSrcAlpha=this.blendSrcAlpha),this.blendDstAlpha!==null&&(n.blendDstAlpha=this.blendDstAlpha),this.blendEquationAlpha!==null&&(n.blendEquationAlpha=this.blendEquationAlpha),this.blendColor&&this.blendColor.isColor&&(n.blendColor=this.blendColor.getHex()),this.blendAlpha!==0&&(n.blendAlpha=this.blendAlpha),this.depthFunc!==3&&(n.depthFunc=this.depthFunc),this.depthTest===!1&&(n.depthTest=this.depthTest),this.depthWrite===!1&&(n.depthWrite=this.depthWrite),this.colorWrite===!1&&(n.colorWrite=this.colorWrite),this.stencilWriteMask!==255&&(n.stencilWriteMask=this.stencilWriteMask),this.stencilFunc!==519&&(n.stencilFunc=this.stencilFunc),this.stencilRef!==0&&(n.stencilRef=this.stencilRef),this.stencilFuncMask!==255&&(n.stencilFuncMask=this.stencilFuncMask),this.stencilFail!==7680&&(n.stencilFail=this.stencilFail),this.stencilZFail!==7680&&(n.stencilZFail=this.stencilZFail),this.stencilZPass!==7680&&(n.stencilZPass=this.stencilZPass),this.stencilWrite===!0&&(n.stencilWrite=this.stencilWrite),this.rotation!==void 0&&this.rotation!==0&&(n.rotation=this.rotation),this.polygonOffset===!0&&(n.polygonOffset=!0),this.polygonOffsetFactor!==0&&(n.polygonOffsetFactor=this.polygonOffsetFactor),this.polygonOffsetUnits!==0&&(n.polygonOffsetUnits=this.polygonOffsetUnits),this.linewidth!==void 0&&this.linewidth!==1&&(n.linewidth=this.linewidth),this.dashSize!==void 0&&(n.dashSize=this.dashSize),this.gapSize!==void 0&&(n.gapSize=this.gapSize),this.scale!==void 0&&(n.scale=this.scale),this.dithering===!0&&(n.dithering=!0),this.alphaTest>0&&(n.alphaTest=this.alphaTest),this.alphaHash===!0&&(n.alphaHash=!0),this.alphaToCoverage===!0&&(n.alphaToCoverage=!0),this.premultipliedAlpha===!0&&(n.premultipliedAlpha=!0),this.forceSinglePass===!0&&(n.forceSinglePass=!0),this.allowOverride===!1&&(n.allowOverride=!1),this.wireframe===!0&&(n.wireframe=!0),this.wireframeLinewidth>1&&(n.wireframeLinewidth=this.wireframeLinewidth),this.wireframeLinecap!==`round`&&(n.wireframeLinecap=this.wireframeLinecap),this.wireframeLinejoin!==`round`&&(n.wireframeLinejoin=this.wireframeLinejoin),this.flatShading===!0&&(n.flatShading=!0),this.visible===!1&&(n.visible=!1),this.toneMapped===!1&&(n.toneMapped=!1),this.fog===!1&&(n.fog=!1),Object.keys(this.userData).length>0&&(n.userData=this.userData);function r(e){let t=[];for(let n in e){let r=e[n];delete r.metadata,t.push(r)}return t}if(t){let t=r(e.textures),i=r(e.images);t.length>0&&(n.textures=t),i.length>0&&(n.images=i)}return n}fromJSON(e,t){if(e.uuid!==void 0&&(this.uuid=e.uuid),e.name!==void 0&&(this.name=e.name),e.color!==void 0&&this.color!==void 0&&this.color.setHex(e.color),e.roughness!==void 0&&(this.roughness=e.roughness),e.metalness!==void 0&&(this.metalness=e.metalness),e.sheen!==void 0&&(this.sheen=e.sheen),e.sheenColor!==void 0&&(this.sheenColor=new Q().setHex(e.sheenColor)),e.sheenRoughness!==void 0&&(this.sheenRoughness=e.sheenRoughness),e.emissive!==void 0&&this.emissive!==void 0&&this.emissive.setHex(e.emissive),e.specular!==void 0&&this.specular!==void 0&&this.specular.setHex(e.specular),e.specularIntensity!==void 0&&(this.specularIntensity=e.specularIntensity),e.specularColor!==void 0&&this.specularColor!==void 0&&this.specularColor.setHex(e.specularColor),e.shininess!==void 0&&(this.shininess=e.shininess),e.clearcoat!==void 0&&(this.clearcoat=e.clearcoat),e.clearcoatRoughness!==void 0&&(this.clearcoatRoughness=e.clearcoatRoughness),e.dispersion!==void 0&&(this.dispersion=e.dispersion),e.iridescence!==void 0&&(this.iridescence=e.iridescence),e.iridescenceIOR!==void 0&&(this.iridescenceIOR=e.iridescenceIOR),e.iridescenceThicknessRange!==void 0&&(this.iridescenceThicknessRange=e.iridescenceThicknessRange),e.transmission!==void 0&&(this.transmission=e.transmission),e.thickness!==void 0&&(this.thickness=e.thickness),e.attenuationDistance!==void 0&&(this.attenuationDistance=e.attenuationDistance),e.attenuationColor!==void 0&&this.attenuationColor!==void 0&&this.attenuationColor.setHex(e.attenuationColor),e.anisotropy!==void 0&&(this.anisotropy=e.anisotropy),e.anisotropyRotation!==void 0&&(this.anisotropyRotation=e.anisotropyRotation),e.fog!==void 0&&(this.fog=e.fog),e.flatShading!==void 0&&(this.flatShading=e.flatShading),e.blending!==void 0&&(this.blending=e.blending),e.combine!==void 0&&(this.combine=e.combine),e.side!==void 0&&(this.side=e.side),e.shadowSide!==void 0&&(this.shadowSide=e.shadowSide),e.opacity!==void 0&&(this.opacity=e.opacity),e.transparent!==void 0&&(this.transparent=e.transparent),e.alphaTest!==void 0&&(this.alphaTest=e.alphaTest),e.alphaHash!==void 0&&(this.alphaHash=e.alphaHash),e.depthFunc!==void 0&&(this.depthFunc=e.depthFunc),e.depthTest!==void 0&&(this.depthTest=e.depthTest),e.depthWrite!==void 0&&(this.depthWrite=e.depthWrite),e.colorWrite!==void 0&&(this.colorWrite=e.colorWrite),e.blendSrc!==void 0&&(this.blendSrc=e.blendSrc),e.blendDst!==void 0&&(this.blendDst=e.blendDst),e.blendEquation!==void 0&&(this.blendEquation=e.blendEquation),e.blendSrcAlpha!==void 0&&(this.blendSrcAlpha=e.blendSrcAlpha),e.blendDstAlpha!==void 0&&(this.blendDstAlpha=e.blendDstAlpha),e.blendEquationAlpha!==void 0&&(this.blendEquationAlpha=e.blendEquationAlpha),e.blendColor!==void 0&&this.blendColor!==void 0&&this.blendColor.setHex(e.blendColor),e.blendAlpha!==void 0&&(this.blendAlpha=e.blendAlpha),e.stencilWriteMask!==void 0&&(this.stencilWriteMask=e.stencilWriteMask),e.stencilFunc!==void 0&&(this.stencilFunc=e.stencilFunc),e.stencilRef!==void 0&&(this.stencilRef=e.stencilRef),e.stencilFuncMask!==void 0&&(this.stencilFuncMask=e.stencilFuncMask),e.stencilFail!==void 0&&(this.stencilFail=e.stencilFail),e.stencilZFail!==void 0&&(this.stencilZFail=e.stencilZFail),e.stencilZPass!==void 0&&(this.stencilZPass=e.stencilZPass),e.stencilWrite!==void 0&&(this.stencilWrite=e.stencilWrite),e.wireframe!==void 0&&(this.wireframe=e.wireframe),e.wireframeLinewidth!==void 0&&(this.wireframeLinewidth=e.wireframeLinewidth),e.wireframeLinecap!==void 0&&(this.wireframeLinecap=e.wireframeLinecap),e.wireframeLinejoin!==void 0&&(this.wireframeLinejoin=e.wireframeLinejoin),e.rotation!==void 0&&(this.rotation=e.rotation),e.linewidth!==void 0&&(this.linewidth=e.linewidth),e.dashSize!==void 0&&(this.dashSize=e.dashSize),e.gapSize!==void 0&&(this.gapSize=e.gapSize),e.scale!==void 0&&(this.scale=e.scale),e.polygonOffset!==void 0&&(this.polygonOffset=e.polygonOffset),e.polygonOffsetFactor!==void 0&&(this.polygonOffsetFactor=e.polygonOffsetFactor),e.polygonOffsetUnits!==void 0&&(this.polygonOffsetUnits=e.polygonOffsetUnits),e.dithering!==void 0&&(this.dithering=e.dithering),e.alphaToCoverage!==void 0&&(this.alphaToCoverage=e.alphaToCoverage),e.premultipliedAlpha!==void 0&&(this.premultipliedAlpha=e.premultipliedAlpha),e.forceSinglePass!==void 0&&(this.forceSinglePass=e.forceSinglePass),e.allowOverride!==void 0&&(this.allowOverride=e.allowOverride),e.visible!==void 0&&(this.visible=e.visible),e.toneMapped!==void 0&&(this.toneMapped=e.toneMapped),e.userData!==void 0&&(this.userData=e.userData),e.vertexColors!==void 0&&(typeof e.vertexColors==`number`?this.vertexColors=e.vertexColors>0:this.vertexColors=e.vertexColors),e.size!==void 0&&(this.size=e.size),e.sizeAttenuation!==void 0&&(this.sizeAttenuation=e.sizeAttenuation),e.map!==void 0&&(this.map=t[e.map]||null),e.matcap!==void 0&&(this.matcap=t[e.matcap]||null),e.alphaMap!==void 0&&(this.alphaMap=t[e.alphaMap]||null),e.bumpMap!==void 0&&(this.bumpMap=t[e.bumpMap]||null),e.bumpScale!==void 0&&(this.bumpScale=e.bumpScale),e.normalMap!==void 0&&(this.normalMap=t[e.normalMap]||null),e.normalMapType!==void 0&&(this.normalMapType=e.normalMapType),e.normalScale!==void 0){let t=e.normalScale;Array.isArray(t)===!1&&(t=[t,t]),this.normalScale=new X().fromArray(t)}return e.displacementMap!==void 0&&(this.displacementMap=t[e.displacementMap]||null),e.displacementScale!==void 0&&(this.displacementScale=e.displacementScale),e.displacementBias!==void 0&&(this.displacementBias=e.displacementBias),e.roughnessMap!==void 0&&(this.roughnessMap=t[e.roughnessMap]||null),e.metalnessMap!==void 0&&(this.metalnessMap=t[e.metalnessMap]||null),e.emissiveMap!==void 0&&(this.emissiveMap=t[e.emissiveMap]||null),e.emissiveIntensity!==void 0&&(this.emissiveIntensity=e.emissiveIntensity),e.specularMap!==void 0&&(this.specularMap=t[e.specularMap]||null),e.specularIntensityMap!==void 0&&(this.specularIntensityMap=t[e.specularIntensityMap]||null),e.specularColorMap!==void 0&&(this.specularColorMap=t[e.specularColorMap]||null),e.envMap!==void 0&&(this.envMap=t[e.envMap]||null),e.envMapRotation!==void 0&&this.envMapRotation.fromArray(e.envMapRotation),e.envMapIntensity!==void 0&&(this.envMapIntensity=e.envMapIntensity),e.reflectivity!==void 0&&(this.reflectivity=e.reflectivity),e.refractionRatio!==void 0&&(this.refractionRatio=e.refractionRatio),e.lightMap!==void 0&&(this.lightMap=t[e.lightMap]||null),e.lightMapIntensity!==void 0&&(this.lightMapIntensity=e.lightMapIntensity),e.aoMap!==void 0&&(this.aoMap=t[e.aoMap]||null),e.aoMapIntensity!==void 0&&(this.aoMapIntensity=e.aoMapIntensity),e.gradientMap!==void 0&&(this.gradientMap=t[e.gradientMap]||null),e.clearcoatMap!==void 0&&(this.clearcoatMap=t[e.clearcoatMap]||null),e.clearcoatRoughnessMap!==void 0&&(this.clearcoatRoughnessMap=t[e.clearcoatRoughnessMap]||null),e.clearcoatNormalMap!==void 0&&(this.clearcoatNormalMap=t[e.clearcoatNormalMap]||null),e.clearcoatNormalScale!==void 0&&(this.clearcoatNormalScale=new X().fromArray(e.clearcoatNormalScale)),e.iridescenceMap!==void 0&&(this.iridescenceMap=t[e.iridescenceMap]||null),e.iridescenceThicknessMap!==void 0&&(this.iridescenceThicknessMap=t[e.iridescenceThicknessMap]||null),e.transmissionMap!==void 0&&(this.transmissionMap=t[e.transmissionMap]||null),e.thicknessMap!==void 0&&(this.thicknessMap=t[e.thicknessMap]||null),e.anisotropyMap!==void 0&&(this.anisotropyMap=t[e.anisotropyMap]||null),e.sheenColorMap!==void 0&&(this.sheenColorMap=t[e.sheenColorMap]||null),e.sheenRoughnessMap!==void 0&&(this.sheenRoughnessMap=t[e.sheenRoughnessMap]||null),this}clone(){return new this.constructor().copy(this)}copy(e){this.name=e.name,this.blending=e.blending,this.side=e.side,this.vertexColors=e.vertexColors,this.opacity=e.opacity,this.transparent=e.transparent,this.blendSrc=e.blendSrc,this.blendDst=e.blendDst,this.blendEquation=e.blendEquation,this.blendSrcAlpha=e.blendSrcAlpha,this.blendDstAlpha=e.blendDstAlpha,this.blendEquationAlpha=e.blendEquationAlpha,this.blendColor.copy(e.blendColor),this.blendAlpha=e.blendAlpha,this.depthFunc=e.depthFunc,this.depthTest=e.depthTest,this.depthWrite=e.depthWrite,this.stencilWriteMask=e.stencilWriteMask,this.stencilFunc=e.stencilFunc,this.stencilRef=e.stencilRef,this.stencilFuncMask=e.stencilFuncMask,this.stencilFail=e.stencilFail,this.stencilZFail=e.stencilZFail,this.stencilZPass=e.stencilZPass,this.stencilWrite=e.stencilWrite;let t=e.clippingPlanes,n=null;if(t!==null){let e=t.length;n=Array(e);for(let r=0;r!==e;++r)n[r]=t[r].clone()}return this.clippingPlanes=n,this.clipIntersection=e.clipIntersection,this.clipShadows=e.clipShadows,this.shadowSide=e.shadowSide,this.colorWrite=e.colorWrite,this.precision=e.precision,this.polygonOffset=e.polygonOffset,this.polygonOffsetFactor=e.polygonOffsetFactor,this.polygonOffsetUnits=e.polygonOffsetUnits,this.dithering=e.dithering,this.alphaTest=e.alphaTest,this.alphaHash=e.alphaHash,this.alphaToCoverage=e.alphaToCoverage,this.premultipliedAlpha=e.premultipliedAlpha,this.forceSinglePass=e.forceSinglePass,this.allowOverride=e.allowOverride,this.visible=e.visible,this.toneMapped=e.toneMapped,this.userData=JSON.parse(JSON.stringify(e.userData)),this}dispose(){this.dispatchEvent({type:`dispose`})}set needsUpdate(e){e===!0&&this.version++}},nf=new Z,rf=new Z,af=new Z,of=new Z,sf=new Z,cf=new Z,lf=new Z,uf=class{constructor(e=new Z,t=new Z(0,0,-1)){this.origin=e,this.direction=t}set(e,t){return this.origin.copy(e),this.direction.copy(t),this}copy(e){return this.origin.copy(e.origin),this.direction.copy(e.direction),this}at(e,t){return t.copy(this.origin).addScaledVector(this.direction,e)}lookAt(e){return this.direction.copy(e).sub(this.origin).normalize(),this}recast(e){return this.origin.copy(this.at(e,nf)),this}closestPointToPoint(e,t){t.subVectors(e,this.origin);let n=t.dot(this.direction);return n<0?t.copy(this.origin):t.copy(this.origin).addScaledVector(this.direction,n)}distanceToPoint(e){return Math.sqrt(this.distanceSqToPoint(e))}distanceSqToPoint(e){let t=nf.subVectors(e,this.origin).dot(this.direction);return t<0?this.origin.distanceToSquared(e):(nf.copy(this.origin).addScaledVector(this.direction,t),nf.distanceToSquared(e))}distanceSqToSegment(e,t,n,r){rf.copy(e).add(t).multiplyScalar(.5),af.copy(t).sub(e).normalize(),of.copy(this.origin).sub(rf);let i=e.distanceTo(t)*.5,a=-this.direction.dot(af),o=of.dot(this.direction),s=-of.dot(af),c=of.lengthSq(),l=Math.abs(1-a*a),u,d,f,p;if(l>0)if(u=a*s-o,d=a*o-s,p=i*l,u>=0)if(d>=-p)if(d<=p){let e=1/l;u*=e,d*=e,f=u*(u+a*d+2*o)+d*(a*u+d+2*s)+c}else d=i,u=Math.max(0,-(a*d+o)),f=-u*u+d*(d+2*s)+c;else d=-i,u=Math.max(0,-(a*d+o)),f=-u*u+d*(d+2*s)+c;else d<=-p?(u=Math.max(0,-(-a*i+o)),d=u>0?-i:Math.min(Math.max(-i,-s),i),f=-u*u+d*(d+2*s)+c):d<=p?(u=0,d=Math.min(Math.max(-i,-s),i),f=d*(d+2*s)+c):(u=Math.max(0,-(a*i+o)),d=u>0?i:Math.min(Math.max(-i,-s),i),f=-u*u+d*(d+2*s)+c);else d=a>0?-i:i,u=Math.max(0,-(a*d+o)),f=-u*u+d*(d+2*s)+c;return n&&n.copy(this.origin).addScaledVector(this.direction,u),r&&r.copy(rf).addScaledVector(af,d),f}intersectSphere(e,t){nf.subVectors(e.center,this.origin);let n=nf.dot(this.direction),r=nf.dot(nf)-n*n,i=e.radius*e.radius;if(r>i)return null;let a=Math.sqrt(i-r),o=n-a,s=n+a;return s<0?null:o<0?this.at(s,t):this.at(o,t)}intersectsSphere(e){return e.radius<0?!1:this.distanceSqToPoint(e.center)<=e.radius*e.radius}distanceToPlane(e){let t=e.normal.dot(this.direction);if(t===0)return e.distanceToPoint(this.origin)===0?0:null;let n=-(this.origin.dot(e.normal)+e.constant)/t;return n>=0?n:null}intersectPlane(e,t){let n=this.distanceToPlane(e);return n===null?null:this.at(n,t)}intersectsPlane(e){let t=e.distanceToPoint(this.origin);return t===0||e.normal.dot(this.direction)*t<0}intersectBox(e,t){let n,r,i,a,o,s,c=1/this.direction.x,l=1/this.direction.y,u=1/this.direction.z,d=this.origin;return c>=0?(n=(e.min.x-d.x)*c,r=(e.max.x-d.x)*c):(n=(e.max.x-d.x)*c,r=(e.min.x-d.x)*c),l>=0?(i=(e.min.y-d.y)*l,a=(e.max.y-d.y)*l):(i=(e.max.y-d.y)*l,a=(e.min.y-d.y)*l),n>a||i>r||((i>n||isNaN(n))&&(n=i),(a=0?(o=(e.min.z-d.z)*u,s=(e.max.z-d.z)*u):(o=(e.max.z-d.z)*u,s=(e.min.z-d.z)*u),n>s||o>r)||((o>n||n!==n)&&(n=o),(s=0?n:r,t)}intersectsBox(e){return this.intersectBox(e,nf)!==null}intersectTriangle(e,t,n,r,i){sf.subVectors(t,e),cf.subVectors(n,e),lf.crossVectors(sf,cf);let a=this.direction.dot(lf),o;if(a>0){if(r)return null;o=1}else if(a<0)o=-1,a=-a;else return null;of.subVectors(this.origin,e);let s=o*this.direction.dot(cf.crossVectors(of,cf));if(s<0)return null;let c=o*this.direction.dot(sf.cross(of));if(c<0||s+c>a)return null;let l=-o*of.dot(lf);return l<0?null:this.at(l/a,i)}applyMatrix4(e){return this.origin.applyMatrix4(e),this.direction.transformDirection(e),this}equals(e){return e.origin.equals(this.origin)&&e.direction.equals(this.direction)}clone(){return new this.constructor().copy(this)}},df=class extends tf{constructor(e){super(),this.isMeshBasicMaterial=!0,this.type=`MeshBasicMaterial`,this.color=new Q(16777215),this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.envMapRotation=new ku,this.combine=0,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap=`round`,this.wireframeLinejoin=`round`,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.map=e.map,this.lightMap=e.lightMap,this.lightMapIntensity=e.lightMapIntensity,this.aoMap=e.aoMap,this.aoMapIntensity=e.aoMapIntensity,this.specularMap=e.specularMap,this.alphaMap=e.alphaMap,this.envMap=e.envMap,this.envMapRotation.copy(e.envMapRotation),this.combine=e.combine,this.reflectivity=e.reflectivity,this.refractionRatio=e.refractionRatio,this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this.wireframeLinecap=e.wireframeLinecap,this.wireframeLinejoin=e.wireframeLinejoin,this.fog=e.fog,this}},ff=new yu,pf=new uf,mf=new Hd,hf=new Z,gf=new Z,_f=new Z,vf=new Z,yf=new Z,bf=new Z,xf=new Z,Sf=new Z,Cf=class extends Ku{constructor(e=new Xd,t=new df){super(),this.isMesh=!0,this.type=`Mesh`,this.geometry=e,this.material=t,this.morphTargetDictionary=void 0,this.morphTargetInfluences=void 0,this.count=1,this.updateMorphTargets()}copy(e,t){return super.copy(e,t),e.morphTargetInfluences!==void 0&&(this.morphTargetInfluences=e.morphTargetInfluences.slice()),e.morphTargetDictionary!==void 0&&(this.morphTargetDictionary=Object.assign({},e.morphTargetDictionary)),this.material=Array.isArray(e.material)?e.material.slice():e.material,this.geometry=e.geometry,this}updateMorphTargets(){let e=this.geometry.morphAttributes,t=Object.keys(e);if(t.length>0){let n=e[t[0]];if(n!==void 0){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let e=0,t=n.length;e(e.far-e.near)**2))&&(ff.copy(i).invert(),pf.copy(e.ray).applyMatrix4(ff),!(n.boundingBox!==null&&pf.intersectsBox(n.boundingBox)===!1)&&this._computeIntersections(e,t,pf)))}_computeIntersections(e,t,n){let r,i=this.geometry,a=this.material,o=i.index,s=i.attributes.position,c=i.attributes.uv,l=i.attributes.uv1,u=i.attributes.normal,d=i.groups,f=i.drawRange;if(o!==null)if(Array.isArray(a))for(let i=0,s=d.length;in.far?null:{distance:l,point:Sf.clone(),object:e}}function Tf(e,t,n,r,i,a,o,s,c,l){e.getVertexPosition(s,gf),e.getVertexPosition(c,_f),e.getVertexPosition(l,vf);let u=wf(e,t,n,r,gf,_f,vf,xf);if(u){let e=new Z;gd.getBarycoord(xf,gf,_f,vf,e),i&&(u.uv=gd.getInterpolatedAttribute(i,s,c,l,e,new X)),a&&(u.uv1=gd.getInterpolatedAttribute(a,s,c,l,e,new X)),o&&(u.normal=gd.getInterpolatedAttribute(o,s,c,l,e,new Z),u.normal.dot(r.direction)>0&&u.normal.multiplyScalar(-1));let t={a:s,b:c,c:l,normal:new Z,materialIndex:0};gd.getNormal(gf,_f,vf,t.normal),u.face=t,u.barycoord=e}return u}var Ef=new mu,Df=new mu,Of=new mu,kf=new mu,Af=new yu,jf=new Z,Mf=new Hd,Nf=new yu,Pf=new uf,Ff=class extends Cf{constructor(e,t){super(e,t),this.isSkinnedMesh=!0,this.type=`SkinnedMesh`,this.bindMode=Os,this.bindMatrix=new yu,this.bindMatrixInverse=new yu,this.boundingBox=null,this.boundingSphere=null}computeBoundingBox(){let e=this.geometry;this.boundingBox===null&&(this.boundingBox=new _d),this.boundingBox.makeEmpty();let t=e.getAttribute(`position`);for(let e=0;e1)?null:t.copy(e.start).addScaledVector(r,a)}intersectsLine(e){let t=this.distanceToPoint(e.start),n=this.distanceToPoint(e.end);return t<0&&n>0||n<0&&t>0}intersectsBox(e){return e.intersectsPlane(this)}intersectsSphere(e){return e.intersectsPlane(this)}coplanarPoint(e){return e.copy(this.normal).multiplyScalar(-this.constant)}applyMatrix4(e,t){let n=t||Qf.getNormalMatrix(e),r=this.coplanarPoint(Xf).applyMatrix4(e),i=this.normal.applyMatrix3(n).normalize();return this.constant=-r.dot(i),this}translate(e){return this.constant-=e.dot(this.normal),this}equals(e){return e.normal.equals(this.normal)&&e.constant===this.constant}clone(){return new this.constructor().copy(this)}},ep=new Hd,tp=new X(.5,.5),np=new Z,rp=class{constructor(e=new $f,t=new $f,n=new $f,r=new $f,i=new $f,a=new $f){this.planes=[e,t,n,r,i,a]}set(e,t,n,r,i,a){let o=this.planes;return o[0].copy(e),o[1].copy(t),o[2].copy(n),o[3].copy(r),o[4].copy(i),o[5].copy(a),this}copy(e){let t=this.planes;for(let n=0;n<6;n++)t[n].copy(e.planes[n]);return this}setFromProjectionMatrix(e,t=ll,n=!1){let r=this.planes,i=e.elements,a=i[0],o=i[1],s=i[2],c=i[3],l=i[4],u=i[5],d=i[6],f=i[7],p=i[8],m=i[9],h=i[10],g=i[11],_=i[12],v=i[13],y=i[14],b=i[15];if(r[0].setComponents(c-a,f-l,g-p,b-_).normalize(),r[1].setComponents(c+a,f+l,g+p,b+_).normalize(),r[2].setComponents(c+o,f+u,g+m,b+v).normalize(),r[3].setComponents(c-o,f-u,g-m,b-v).normalize(),n)r[4].setComponents(s,d,h,y).normalize(),r[5].setComponents(c-s,f-d,g-h,b-y).normalize();else if(r[4].setComponents(c-s,f-d,g-h,b-y).normalize(),t===2e3)r[5].setComponents(c+s,f+d,g+h,b+y).normalize();else if(t===2001)r[5].setComponents(s,d,h,y).normalize();else throw Error(`THREE.Frustum.setFromProjectionMatrix(): Invalid coordinate system: `+t);return this}intersectsObject(e){if(e.boundingSphere!==void 0)e.boundingSphere===null&&e.computeBoundingSphere(),ep.copy(e.boundingSphere).applyMatrix4(e.matrixWorld);else{let t=e.geometry;t.boundingSphere===null&&t.computeBoundingSphere(),ep.copy(t.boundingSphere).applyMatrix4(e.matrixWorld)}return this.intersectsSphere(ep)}intersectsSprite(e){return ep.center.set(0,0,0),ep.radius=.7071067811865476+tp.distanceTo(e.center),ep.applyMatrix4(e.matrixWorld),this.intersectsSphere(ep)}intersectsSphere(e){let t=this.planes,n=e.center,r=-e.radius;for(let e=0;e<6;e++)if(t[e].distanceToPoint(n)0?e.max.x:e.min.x,np.y=r.normal.y>0?e.max.y:e.min.y,np.z=r.normal.z>0?e.max.z:e.min.z,r.distanceToPoint(np)<0)return!1}return!0}containsPoint(e){let t=this.planes;for(let n=0;n<6;n++)if(t[n].distanceToPoint(e)<0)return!1;return!0}clone(){return new this.constructor().copy(this)}},ip=class extends tf{constructor(e){super(),this.isLineBasicMaterial=!0,this.type=`LineBasicMaterial`,this.color=new Q(16777215),this.map=null,this.linewidth=1,this.linecap=`round`,this.linejoin=`round`,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.map=e.map,this.linewidth=e.linewidth,this.linecap=e.linecap,this.linejoin=e.linejoin,this.fog=e.fog,this}},ap=new Z,op=new Z,sp=new yu,cp=new uf,lp=new Hd,up=new Z,dp=new Z,fp=class extends Ku{constructor(e=new Xd,t=new ip){super(),this.isLine=!0,this.type=`Line`,this.geometry=e,this.material=t,this.morphTargetDictionary=void 0,this.morphTargetInfluences=void 0,this.updateMorphTargets()}copy(e,t){return super.copy(e,t),this.material=Array.isArray(e.material)?e.material.slice():e.material,this.geometry=e.geometry,this}computeLineDistances(){let e=this.geometry;if(e.index===null){let t=e.attributes.position,n=[0];for(let e=1,r=t.count;e0){let n=e[t[0]];if(n!==void 0){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let e=0,t=n.length;er)return;up.applyMatrix4(e.matrixWorld);let c=t.ray.origin.distanceTo(up);if(!(ct.far))return{distance:c,point:dp.clone().applyMatrix4(e.matrixWorld),index:o,face:null,faceIndex:null,barycoord:null,object:e}}var mp=new Z,hp=new Z,gp=class extends fp{constructor(e,t){super(e,t),this.isLineSegments=!0,this.type=`LineSegments`}computeLineDistances(){let e=this.geometry;if(e.index===null){let t=e.attributes.position,n=[];for(let e=0,r=t.count;e0){let n=e[t[0]];if(n!==void 0){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let e=0,t=n.length;ei.far)return;a.push({distance:c,distanceToRay:Math.sqrt(s),point:n,index:t,face:null,faceIndex:null,barycoord:null,object:o})}}var Tp=class extends pu{constructor(e=[],t=301,n,r,i,a,o,s,c,l){super(e,t,n,r,i,a,o,s,c,l),this.isCubeTexture=!0,this.flipY=!1}get images(){return this.image}set images(e){this.image=e}},Ep=class extends pu{constructor(e,t,n,r,i,a,o,s,c){super(e,t,n,r,i,a,o,s,c),this.isCanvasTexture=!0,this.needsUpdate=!0}},Dp=class extends pu{constructor(e,t,n=Us,r,i,a,o=Ms,s=Ms,c,l=ec,u=1){if(l!==1026&&l!==1027)throw Error(`THREE.DepthTexture: format must be either THREE.DepthFormat or THREE.DepthStencilFormat`);super({width:e,height:t,depth:u},r,i,a,o,s,l,n,c),this.isDepthTexture=!0,this.flipY=!1,this.generateMipmaps=!1,this.compareFunction=null}copy(e){return super.copy(e),this.source=new lu(Object.assign({},e.image)),this.compareFunction=e.compareFunction,this}toJSON(e){let t=super.toJSON(e);return this.compareFunction!==null&&(t.compareFunction=this.compareFunction),t}},Op=class extends Dp{constructor(e,t=Us,n=301,r,i,a=Ms,o=Ms,s,c=ec){let l={width:e,height:e,depth:1},u=[l,l,l,l,l,l];super(e,e,t,n,r,i,a,o,s,c),this.image=u,this.isCubeDepthTexture=!0,this.isCubeTexture=!0}get images(){return this.image}set images(e){this.image=e}},kp=class extends pu{constructor(e=null){super(),this.sourceTexture=e,this.isExternalTexture=!0}copy(e){return super.copy(e),this.sourceTexture=e.sourceTexture,this}},Ap=class e extends Xd{constructor(e=1,t=1,n=1,r=1,i=1,a=1){super(),this.type=`BoxGeometry`,this.parameters={width:e,height:t,depth:n,widthSegments:r,heightSegments:i,depthSegments:a};let o=this;r=Math.floor(r),i=Math.floor(i),a=Math.floor(a);let s=[],c=[],l=[],u=[],d=0,f=0;p(`z`,`y`,`x`,-1,-1,n,t,e,a,i,0),p(`z`,`y`,`x`,1,-1,n,t,-e,a,i,1),p(`x`,`z`,`y`,1,1,e,n,t,r,a,2),p(`x`,`z`,`y`,1,-1,e,n,-t,r,a,3),p(`x`,`y`,`z`,1,-1,e,t,n,r,i,4),p(`x`,`y`,`z`,-1,-1,e,t,-n,r,i,5),this.setIndex(s),this.setAttribute(`position`,new Rd(c,3)),this.setAttribute(`normal`,new Rd(l,3)),this.setAttribute(`uv`,new Rd(u,2));function p(e,t,n,r,i,a,p,m,h,g,_){let v=a/h,y=p/g,b=a/2,x=p/2,S=m/2,C=h+1,w=g+1,T=0,E=0,D=new Z;for(let a=0;a0?1:-1,l.push(D.x,D.y,D.z),u.push(s/h),u.push(1-a/g),T+=1}for(let e=0;e0){let e=(_-1)*m;for(let t=0;t0&&v(!0),t>0&&v(!1)),this.setIndex(l),this.setAttribute(`position`,new Rd(u,3)),this.setAttribute(`normal`,new Rd(d,3)),this.setAttribute(`uv`,new Rd(f,2));function _(){let a=new Z,_=new Z,v=0,y=(t-e)/n;for(let c=0;c<=i;c++){let l=[],g=c/i,v=g*(t-e)+e;for(let e=0;e<=r;e++){let t=e/r,i=t*s+o,c=Math.sin(i),m=Math.cos(i);_.x=v*c,_.y=-g*n+h,_.z=v*m,u.push(_.x,_.y,_.z),a.set(c,y,m).normalize(),d.push(a.x,a.y,a.z),f.push(t,1-g),l.push(p++)}m.push(l)}for(let n=0;n0||r!==0)&&(l.push(a,o,c),v+=3),(t>0||r!==i-1)&&(l.push(o,s,c),v+=3)}c.addGroup(g,v,0),g+=v}function v(n){let i=p,a=new X,m=new Z,_=0,v=n===!0?e:t,y=n===!0?1:-1;for(let e=1;e<=r;e++)u.push(0,h*y,0),d.push(0,y,0),f.push(.5,.5),p++;let b=p;for(let e=0;e<=r;e++){let t=e/r*s+o,n=Math.cos(t),i=Math.sin(t);m.x=v*i,m.y=h*y,m.z=v*n,u.push(m.x,m.y,m.z),d.push(0,y,0),a.x=n*.5+.5,a.y=i*.5*y+.5,f.push(a.x,a.y),p++}for(let e=0;e0)s=r-1;else{s=r;break}if(r=s,n[r]===a)return r/(i-1);let l=n[r],u=n[r+1]-l,d=(a-l)/u;return(r+d)/(i-1)}getTangent(e,t){let n=1e-4,r=e-n,i=e+n;r<0&&(r=0),i>1&&(i=1);let a=this.getPoint(r),o=this.getPoint(i),s=t||(a.isVector2?new X:new Z);return s.copy(o).sub(a).normalize(),s}getTangentAt(e,t){let n=this.getUtoTmapping(e);return this.getTangent(n,t)}computeFrenetFrames(e,t=!1){let n=new Z,r=[],i=[],a=[],o=new Z,s=new yu;for(let t=0;t<=e;t++){let n=t/e;r[t]=this.getTangentAt(n,new Z)}i[0]=new Z,a[0]=new Z;let c=Number.MAX_VALUE,l=Math.abs(r[0].x),u=Math.abs(r[0].y),d=Math.abs(r[0].z);l<=c&&(c=l,n.set(1,0,0)),u<=c&&(c=u,n.set(0,1,0)),d<=c&&n.set(0,0,1),o.crossVectors(r[0],n).normalize(),i[0].crossVectors(r[0],o),a[0].crossVectors(r[0],i[0]);for(let t=1;t<=e;t++){if(i[t]=i[t-1].clone(),a[t]=a[t-1].clone(),o.crossVectors(r[t-1],r[t]),o.length()>2**-52){o.normalize();let e=Math.acos(Dl(r[t-1].dot(r[t]),-1,1));i[t].applyMatrix4(s.makeRotationAxis(o,e))}a[t].crossVectors(r[t],i[t])}if(t===!0){let t=Math.acos(Dl(i[0].dot(i[e]),-1,1));t/=e,r[0].dot(o.crossVectors(i[0],i[e]))>0&&(t=-t);for(let n=1;n<=e;n++)i[n].applyMatrix4(s.makeRotationAxis(r[n],t*n)),a[n].crossVectors(r[n],i[n])}return{tangents:r,normals:i,binormals:a}}clone(){return new this.constructor().copy(this)}copy(e){return this.arcLengthDivisions=e.arcLengthDivisions,this}toJSON(){let e={metadata:{version:4.7,type:`Curve`,generator:`Curve.toJSON`}};return e.arcLengthDivisions=this.arcLengthDivisions,e.type=this.type,e}fromJSON(e){return this.arcLengthDivisions=e.arcLengthDivisions,this}},Ip=class extends Fp{constructor(e=0,t=0,n=1,r=1,i=0,a=Math.PI*2,o=!1,s=0){super(),this.isEllipseCurve=!0,this.type=`EllipseCurve`,this.aX=e,this.aY=t,this.xRadius=n,this.yRadius=r,this.aStartAngle=i,this.aEndAngle=a,this.aClockwise=o,this.aRotation=s}getPoint(e,t=new X){let n=t,r=Math.PI*2,i=this.aEndAngle-this.aStartAngle,a=Math.abs(i)<2**-52;for(;i<0;)i+=r;for(;i>r;)i-=r;i<2**-52&&(i=a?0:r),this.aClockwise===!0&&!a&&(i===r?i=-r:i-=r);let o=this.aStartAngle+e*i,s=this.aX+this.xRadius*Math.cos(o),c=this.aY+this.yRadius*Math.sin(o);if(this.aRotation!==0){let e=Math.cos(this.aRotation),t=Math.sin(this.aRotation),n=s-this.aX,r=c-this.aY;s=n*e-r*t+this.aX,c=n*t+r*e+this.aY}return n.set(s,c)}copy(e){return super.copy(e),this.aX=e.aX,this.aY=e.aY,this.xRadius=e.xRadius,this.yRadius=e.yRadius,this.aStartAngle=e.aStartAngle,this.aEndAngle=e.aEndAngle,this.aClockwise=e.aClockwise,this.aRotation=e.aRotation,this}toJSON(){let e=super.toJSON();return e.aX=this.aX,e.aY=this.aY,e.xRadius=this.xRadius,e.yRadius=this.yRadius,e.aStartAngle=this.aStartAngle,e.aEndAngle=this.aEndAngle,e.aClockwise=this.aClockwise,e.aRotation=this.aRotation,e}fromJSON(e){return super.fromJSON(e),this.aX=e.aX,this.aY=e.aY,this.xRadius=e.xRadius,this.yRadius=e.yRadius,this.aStartAngle=e.aStartAngle,this.aEndAngle=e.aEndAngle,this.aClockwise=e.aClockwise,this.aRotation=e.aRotation,this}},Lp=class extends Ip{constructor(e,t,n,r,i,a){super(e,t,n,n,r,i,a),this.isArcCurve=!0,this.type=`ArcCurve`}};function Rp(){let e=0,t=0,n=0,r=0;function i(i,a,o,s){e=i,t=o,n=-3*i+3*a-2*o-s,r=2*i-2*a+o+s}return{initCatmullRom:function(e,t,n,r,a){i(t,n,a*(n-e),a*(r-t))},initNonuniformCatmullRom:function(e,t,n,r,a,o,s){let c=(t-e)/a-(n-e)/(a+o)+(n-t)/o,l=(n-t)/o-(r-t)/(o+s)+(r-n)/s;c*=o,l*=o,i(t,n,c,l)},calc:function(i){let a=i*i,o=a*i;return e+t*i+n*a+r*o}}}var zp=new Z,Bp=new Z,Vp=new Rp,Hp=new Rp,Up=new Rp,Wp=class extends Fp{constructor(e=[],t=!1,n=`centripetal`,r=.5){super(),this.isCatmullRomCurve3=!0,this.type=`CatmullRomCurve3`,this.points=e,this.closed=t,this.curveType=n,this.tension=r}getPoint(e,t=new Z){let n=t,r=this.points,i=r.length,a=(i-+!this.closed)*e,o=Math.floor(a),s=a-o;this.closed?o+=o>0?0:(Math.floor(Math.abs(o)/i)+1)*i:s===0&&o===i-1&&(o=i-2,s=1);let c,l;this.closed||o>0?c=r[(o-1)%i]:(Bp.subVectors(r[0],r[1]).add(r[0]),c=Bp);let u=r[o%i],d=r[(o+1)%i];if(this.closed||o+2r.length-2?r.length-1:a+1],u=r[a>r.length-3?r.length-1:a+2];return n.set(Gp(o,s.x,c.x,l.x,u.x),Gp(o,s.y,c.y,l.y,u.y)),n}copy(e){super.copy(e),this.points=[];for(let t=0,n=e.points.length;t0)&&f.push(t,i,c),(e!==n-1||s{let r={};for(var i in t)e(r,i,{get:t[i],enumerable:!0});return n||e(r,Symbol.toStringTag,{value:`Module`}),r};(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),e.crossOrigin===`use-credentials`?t.credentials=`include`:e.crossOrigin===`anonymous`?t.credentials=`omit`:t.credentials=`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var n={jab:{from:520,to:1500,duration:.09},straight:{from:420,to:1150,duration:.12},hook:{from:300,to:880,duration:.14},uppercut:{from:240,to:820,duration:.15}},r=class{settings;context=null;master=null;noiseBuffer=null;crowdGain=null;unlocked=!1;unlockPromise=null;crowdStarted=!1;destroyed=!1;timers=new Set;lastBreathTick=-300;lastHeartbeatTick=-300;unlockListener=()=>{this.unlock().catch(()=>void 0)};visibility=()=>{let e=this.context;if(e===null)return;let t=document.hidden?e.suspend():this.unlocked?e.resume():null;t!==null&&t.catch(()=>void 0)};constructor(e){this.settings=e,window.addEventListener(`pointerdown`,this.unlockListener),window.addEventListener(`keydown`,this.unlockListener),document.addEventListener(`visibilitychange`,this.visibility)}unlock(){return this.destroyed||this.unlocked?Promise.resolve():(this.unlockPromise===null&&(this.unlockPromise=this.performUnlock().finally(()=>{this.unlockPromise=null})),this.unlockPromise)}async performUnlock(){this.context===null&&(this.context=new AudioContext,this.master=this.context.createGain(),this.master.gain.value=Math.min(.8,Math.max(0,this.settings().volume)),this.master.connect(this.context.destination)),this.context.state===`suspended`&&await this.context.resume(),!this.destroyed&&(this.unlocked=!0,window.removeEventListener(`pointerdown`,this.unlockListener),window.removeEventListener(`keydown`,this.unlockListener),this.crowdStarted||(this.crowdStarted=!0,this.crowdBed()))}setVolume(){this.master!==null&&(this.master.gain.value=Math.min(.8,Math.max(0,this.settings().volume)))}event(e){if(this.unlocked)switch(e.kind){case`punch_start`:{let t=n[e.detail.split(`:`)[1]??`jab`]??n.jab;this.noise({duration:t.duration,frequency:t.from,sweepTo:t.to,gain:.1,type:`bandpass`,q:1.2});break}case`whiff`:this.noise({duration:.11,frequency:850,sweepTo:320,gain:.07,type:`bandpass`,q:1.1});break;case`hit`:case`counter_hit`:{let t=e.detail.endsWith(`body`),n=Math.min(.34,.16+e.amount/1400)*(e.kind===`counter_hit`?1.3:1);this.tone({from:t?120:150,to:42,duration:.13,type:`sine`,gain:n}),this.noise({duration:.06,frequency:t?420:1650,gain:n*.85,type:`bandpass`,q:.9}),this.noise({duration:.16,frequency:t?190:300,gain:n*.6}),e.kind===`counter_hit`&&this.crowdSwell(.5);break}case`block`:this.noise({duration:.05,frequency:900,gain:.15,type:`bandpass`,q:1.4}),this.tone({from:170,to:120,duration:.05,type:`triangle`,gain:.06});break;case`perfect_block`:this.noise({duration:.05,frequency:1450,gain:.16,type:`bandpass`,q:1.6}),this.tone({from:260,to:200,duration:.06,type:`triangle`,gain:.07});break;case`guard_break`:this.noise({duration:.18,frequency:520,gain:.24}),this.tone({from:230,to:78,duration:.2,type:`sawtooth`,gain:.1}),this.crowdSwell(.4);break;case`stun`:this.tone({from:96,to:74,duration:.22,type:`sine`,gain:.1});break;case`knockdown`:this.tone({from:68,to:32,duration:.34,type:`sine`,gain:.3}),this.noise({duration:.22,frequency:260,gain:.26}),this.crowdSwell(1);break;case`bell`:{let t=e.detail===`round_start`?3:1;for(let e=0;e.55&&e-this.lastBreathTick>=75&&(this.lastBreathTick=e,this.noise({duration:.18,frequency:420,gain:.045+i*.04})),(i>.72||r>500)&&e-this.lastHeartbeatTick>=24&&(this.lastHeartbeatTick=e,this.tone({from:52,duration:.09,type:`sine`,gain:.055}))}result(e){if(!this.unlocked)return;this.crowdSwell(1),this.tone({from:e.winner_id===null?280:520,duration:.45,type:`triangle`,gain:.18});let t=window.setTimeout(()=>{this.timers.delete(t),this.tone({from:650,duration:.5,type:`triangle`,gain:.14})},160);this.timers.add(t)}tone(e){let t=this.context,n=this.master;if(t===null||n===null)return;let r=t.currentTime+(e.delay??0),i=t.createOscillator(),a=t.createGain();i.type=e.type,i.frequency.setValueAtTime(Math.max(20,e.from),r),e.to!==void 0&&e.to!==e.from&&i.frequency.exponentialRampToValueAtTime(Math.max(20,e.to),r+Math.min(1.4,e.duration)),a.gain.setValueAtTime(1e-4,r),a.gain.exponentialRampToValueAtTime(Math.min(.35,e.gain),r+.012),a.gain.exponentialRampToValueAtTime(1e-4,r+Math.min(1.4,e.duration)),i.connect(a).connect(n),i.start(r),i.stop(r+Math.min(1.4,e.duration)+.03)}noise(e){let t=this.context,n=this.master;if(t===null||n===null)return;if(this.noiseBuffer===null){let e=Math.floor(t.sampleRate*1.2),n=t.createBuffer(1,e,t.sampleRate),r=n.getChannelData(0),i=987654321,a=0;for(let e=0;evoid 0)}},i=class extends Error{name=`ProtocolError`},a=2147483647,o=new TextEncoder;function s(e){let t=0,n=()=>{for(;/\s/u.test(e[t]??``);)t+=1},r=()=>{let n=t;if(e[t++]!==`"`)throw new i(`invalid JSON`);for(;t{n();let o=e[t];if(o===`{`){t+=1,n();let o=new Set;if(e[t]===`}`){t+=1;return}for(;;){n();let s=r();if(o.has(s))throw new i(`duplicate field ${s}`);if(o.add(s),n(),e[t++]!==`:`)throw new i(`invalid JSON`);a(),n();let c=e[t++];if(c===`}`)return;if(c!==`,`)throw new i(`invalid JSON`)}}if(o===`[`){if(t+=1,n(),e[t]===`]`){t+=1;return}for(;;){a(),n();let r=e[t++];if(r===`]`)return;if(r!==`,`)throw new i(`invalid JSON`)}}if(o===`"`){r();return}let s=e.slice(t),c=/^(?:-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?|true|false|null)/u.exec(s);if(!c)throw new i(`invalid JSON`);t+=c[0].length};if(a(),n(),t!==e.length)throw new i(`invalid JSON`)}function c(e){let t,n;if(typeof e==`string`?(t=o.encode(e),n=e):(t=e instanceof Uint8Array?e:new Uint8Array(e),n=new TextDecoder(`utf-8`,{fatal:!0}).decode(t)),t.byteLength>65536)throw new i(`server frame too large`);try{return s(n),JSON.parse(n)}catch(e){throw e instanceof i?e:new i(`invalid JSON`)}}function l(e,t){if(typeof e!=`object`||!e||Array.isArray(e)||Object.getPrototypeOf(e)!==Object.prototype)throw new i(`${t} must be an object`);return e}function u(e,t,n=[]){let r=new Set([...t,...n]),a=Object.keys(e);if(t.some(t=>!Object.hasOwn(e,t))||a.some(e=>!r.has(e)))throw new i(`schema mismatch`)}function d(e,t,n=0,r=a){if(!Number.isSafeInteger(e)||er)throw new i(`${t} must be a bounded integer`);return e}function f(e,t){if(typeof e!=`boolean`)throw new i(`${t} must be boolean`);return e}function p(e,t,n=255,r=1){if(typeof e!=`string`||e.lengthn||/[\u0000-\u001f\u007f]/u.test(e))throw new i(`${t} must be a bounded string`);return e}function m(e,t,n=255){return e===null?null:p(e,t,n)}function h(e,t,n){if(typeof e!=`string`||!t.includes(e))throw new i(`invalid ${n}`);return e}function g(e,t,n){if(!Array.isArray(e)||e.length>n)throw new i(`${t} must be a bounded array`);return e}var _=[`left`,`right`],v=[`jab`,`straight`,`hook`,`uppercut`],y=[`head`,`body`],b=[`normal`,`power`],x=[`orthodox`,`southpaw`],S=[`none`,`guard_high`,`guard_low`,`slip_left`,`slip_right`,`weave`,`pull`],C=[`none`,`guard_high`,`guard_low`],w=[`slip_left`,`slip_right`,`weave`,`pull`,`clinch`,`switch_stance`,`get_up_left`,`get_up_right`,`taunt`],T=[`low_blow`,`headbutt`],E=[`countdown`,`fight`,`knockdown`,`foul_recovery`,`rest`,`complete`],D=[`ko`,`flash_ko`,`tko`,`doctor_stoppage`,`disqualification`,`decision`,`draw`,`forfeit`];function O(e){let t=l(e,`player`);return u(t,[`id`,`name`,`avatar`,`rating`,`connected`]),{id:p(t.id,`player.id`),name:p(t.name,`player.name`,80),avatar:m(t.avatar,`player.avatar`,128),rating:d(t.rating,`rating`),connected:f(t.connected,`connected`)}}function ee(e,t){let n=g(e,`players`,2).map(O);if(n.length<1||t!==void 0&&n.length!==t||new Set(n.map(e=>e.id)).size!==n.length)throw new i(`players must be present and distinct`);return n}function k(e){let t=l(e,`trauma`);return u(t,[`head`,`body`,`left_eye`,`right_eye`,`left_cut`,`right_cut`,`swelling`,`bleeding`]),{head:d(t.head,`head`,0,1400),body:d(t.body,`body`,0,1200),left_eye:d(t.left_eye,`left_eye`,0,1e3),right_eye:d(t.right_eye,`right_eye`,0,1e3),left_cut:d(t.left_cut,`left_cut`,0,1e3),right_cut:d(t.right_cut,`right_cut`,0,1e3),swelling:d(t.swelling,`swelling`,0,1e3),bleeding:d(t.bleeding,`bleeding`,0,1e3)}}function te(e){let t=l(e,`fighter`);u(t,`player_id.x.y.facing.velocity_x.velocity_y.stance.defense.stamina.maximum_stamina.conditioning.guard.poise.trauma.knockdowns.warnings.deductions.stunned_ticks.is_downed.action.action_hand.action_target.action_power.action_id.action_key.action_start_tick.action_startup_ticks.action_active_ticks.action_recovery_ticks.action_contact_tick.queued_actions.clinch_startup_ticks.clinch_ticks.is_foul_recovery_target.taunt_ticks.get_up_prompt.get_up_meter.get_up_required.get_up_count.get_up_window_start_tick.get_up_window_end_tick`.split(`.`));let n=t.action===null?null:h(t.action,v,`action`),r=t.action_hand===null?null:h(t.action_hand,_,`action hand`),a=t.action_target===null?null:h(t.action_target,y,`action target`),o=t.action_power===null?null:h(t.action_power,b,`action power`);if([n,r,a,o].some(e=>e===null)&&[n,r,a,o].some(e=>e!==null))throw new i(`partial punch action`);let s=t.action_id===null?null:p(t.action_id,`action_id`,32),c=t.action_key===null?null:p(t.action_key,`action_key`,64);if([s,c].some(e=>e===null)!==[s,c].every(e=>e===null))throw new i(`partial action instance`);if(s!==null&&n===null)throw new i(`action instance without class`);let m=t.get_up_prompt===null?null:h(t.get_up_prompt,[`get_up_left`,`get_up_right`],`get-up prompt`),g=d(t.maximum_stamina,`maximum_stamina`,330,1e3),C=d(t.stamina,`stamina`,0,g),w=d(t.get_up_required,`get_up_required`,0,169),T=d(t.facing,`facing`,-1,1);if(T===0)throw new i(`invalid facing`);if(w!==0&&w<34)throw new i(`invalid get-up requirement`);return{player_id:p(t.player_id,`player_id`),x:d(t.x,`x`,-462,462),y:d(t.y,`y`,-292,292),facing:T,velocity_x:d(t.velocity_x,`velocity_x`,-7,7),velocity_y:d(t.velocity_y,`velocity_y`,-7,7),stance:h(t.stance,x,`stance`),defense:h(t.defense,S,`defense`),stamina:C,maximum_stamina:g,conditioning:d(t.conditioning,`conditioning`,0,1e3),guard:d(t.guard,`guard`,0,700),poise:d(t.poise,`poise`,0,600),trauma:k(t.trauma),knockdowns:d(t.knockdowns,`knockdowns`,0,3),warnings:d(t.warnings,`warnings`,0,3),deductions:d(t.deductions,`deductions`,0,1),stunned_ticks:d(t.stunned_ticks,`stunned_ticks`,0,90),is_downed:f(t.is_downed,`is_downed`),action:n,action_hand:r,action_target:a,action_power:o,action_id:s,action_key:c,action_start_tick:d(t.action_start_tick,`action_start_tick`,0),action_startup_ticks:d(t.action_startup_ticks,`action_startup_ticks`,0,40),action_active_ticks:d(t.action_active_ticks,`action_active_ticks`,0,10),action_recovery_ticks:d(t.action_recovery_ticks,`action_recovery_ticks`,0,40),action_contact_tick:t.action_contact_tick===null?null:d(t.action_contact_tick,`action_contact_tick`,0),queued_actions:d(t.queued_actions,`queued_actions`,0,1),clinch_startup_ticks:d(t.clinch_startup_ticks,`clinch_startup_ticks`,0,8),clinch_ticks:d(t.clinch_ticks,`clinch_ticks`,0,45),is_foul_recovery_target:f(t.is_foul_recovery_target,`is_foul_recovery_target`),taunt_ticks:d(t.taunt_ticks,`taunt_ticks`,0,60),get_up_prompt:m,get_up_meter:d(t.get_up_meter,`get_up_meter`,0,256),get_up_required:w,get_up_count:d(t.get_up_count,`get_up_count`,0,10),get_up_window_start_tick:d(t.get_up_window_start_tick,`get_up_window_start_tick`),get_up_window_end_tick:d(t.get_up_window_end_tick,`get_up_window_end_tick`)}}function ne(e){let t=l(e,`event`);return u(t,[`event_id`,`tick`,`kind`,`actor_id`,`target_id`,`amount`,`detail`,`blood`,`direction`,`action_id`]),{event_id:d(t.event_id,`event_id`),tick:d(t.tick,`tick`),kind:p(t.kind,`event kind`,32),actor_id:m(t.actor_id,`actor_id`),target_id:m(t.target_id,`target_id`),amount:d(t.amount,`amount`,-1e4,1e4),detail:p(t.detail,`detail`,96,0),blood:d(t.blood,`blood`,0,100),direction:d(t.direction,`direction`,-1,1),action_id:t.action_id===null?null:p(t.action_id,`action_id`,32)}}function re(e){let t=l(e,`judge card`);u(t,[`judge`,`player_one`,`player_two`]);let n=e=>g(e,`round scores`,15).map(e=>d(e,`score`,6,10)),r=n(t.player_one),a=n(t.player_two);if(r.length!==a.length)throw new i(`scorecard round mismatch`);return{judge:p(t.judge,`judge`,80),player_one:r,player_two:a}}function ie(e){let t=g(e,`scorecards`,3).map(re);if(t.length!==3)throw new i(`exactly three scorecards required`);return t}function ae(e,t){if(t===`draw`!=(e===null))throw new i(`incoherent finish result`)}function oe(e){let t=l(e,`result`);u(t,[`match_id`,`activity_instance_id`,`guild_id`,`player_one_id`,`player_two_id`,`winner_id`,`finish_method`,`round_number`,`tick`,`scorecards`,`player_one_knockdowns`,`player_two_knockdowns`,`player_one_damage`,`player_two_damage`]);let n=p(t.player_one_id,`player_one_id`),r=p(t.player_two_id,`player_two_id`);if(n===r)throw new i(`result players must be distinct`);let a=m(t.winner_id,`winner_id`);if(a!==null&&a!==n&&a!==r)throw new i(`invalid winner`);let o=h(t.finish_method,D,`finish method`);return ae(a,o),{match_id:p(t.match_id,`match_id`),activity_instance_id:p(t.activity_instance_id,`activity_instance_id`),guild_id:p(t.guild_id,`guild_id`),player_one_id:n,player_two_id:r,winner_id:a,finish_method:o,round_number:d(t.round_number,`round`,1,15),tick:d(t.tick,`tick`),scorecards:ie(t.scorecards),player_one_knockdowns:d(t.player_one_knockdowns,`knockdowns`,0,3),player_two_knockdowns:d(t.player_two_knockdowns,`knockdowns`,0,3),player_one_damage:d(t.player_one_damage,`damage`),player_two_damage:d(t.player_two_damage,`damage`)}}function se(e){let t=l(e,`snapshot`);u(t,[`tick`,`phase`,`round_number`,`phase_ticks_remaining`,`fighters`,`events`,`result`,`checksum`]);let n=g(t.fighters,`fighters`,2).map(te);if(n.length!==2||n[0]?.player_id===n[1]?.player_id)throw new i(`snapshot requires two distinct fighters`);let r=p(t.checksum,`checksum`,64);if(!/^[a-f0-9]{64}$/u.test(r))throw new i(`invalid checksum`);return{tick:d(t.tick,`tick`),phase:h(t.phase,E,`phase`),round_number:d(t.round_number,`round`,1,15),phase_ticks_remaining:d(t.phase_ticks_remaining,`phase ticks`),fighters:[n[0],n[1]],events:g(t.events,`events`,256).map(ne),result:t.result===null?null:oe(t.result),checksum:r}}function A(e){let t=l(c(e),`envelope`);if(t.version!==2)throw new i(`unsupported protocol version`);let n=p(t.type,`type`,32);if(n===`welcome`){let e=h(t.role,[`fighter`,`spectator`],`connection role`),r=p(t.player_id,`player_id`),a=t.reconnect_ticket===void 0?{}:{reconnect_ticket:p(t.reconnect_ticket,`reconnect_ticket`,4096)};if(e===`fighter`){u(t,[`version`,`type`,`role`,`player_id`,`seat`,`rating`,`players`,`server_tick`,`next_sequence`],[`reconnect_ticket`]);let o=ee(t.players);if(!o.some(e=>e.id===r))throw new i(`welcome fighter is absent`);return{version:2,type:n,role:e,player_id:r,seat:d(t.seat,`seat`,1,2),rating:d(t.rating,`rating`),players:o,server_tick:d(t.server_tick,`server_tick`),next_sequence:d(t.next_sequence,`next_sequence`),...a}}u(t,[`version`,`type`,`role`,`player_id`,`players`,`server_tick`],[`reconnect_ticket`]);let o=ee(t.players,2);if(o.some(e=>e.id===r))throw new i(`spectator cannot be a fighter`);return{version:2,type:n,role:e,player_id:r,players:[o[0],o[1]],server_tick:d(t.server_tick,`server_tick`),...a}}if(n===`ticket`)return u(t,[`version`,`type`,`reconnect_ticket`,`refresh_id`]),{version:2,type:n,reconnect_ticket:p(t.reconnect_ticket,`reconnect_ticket`,4096),refresh_id:p(t.refresh_id,`refresh_id`,128,16)};if(n===`waiting`){if(u(t,[`version`,`type`,`open_seats`]),t.open_seats!==1)throw new i(`invalid open seats`);return{version:2,type:n,open_seats:1}}if(n===`ready`){u(t,[`version`,`type`,`players`]);let e=ee(t.players,2);return{version:2,type:n,players:[e[0],e[1]]}}if(n===`paused`)return u(t,[`version`,`type`,`player_id`,`grace_ms`]),{version:2,type:n,player_id:p(t.player_id,`player_id`),grace_ms:d(t.grace_ms,`grace_ms`,0,6e4)};if(n===`resumed`)return u(t,[`version`,`type`,`player_id`]),{version:2,type:n,player_id:p(t.player_id,`player_id`)};if(n===`snapshot`)return u(t,[`version`,`type`,`payload`]),{version:2,type:n,payload:se(t.payload)};if(n===`error`)return u(t,[`version`,`type`,`code`]),{version:2,type:n,code:p(t.code,`error code`,80)};if(n===`final`)return ce(t,n);throw new i(`unsupported server message type`)}function ce(e,t){u(e,[`version`,`type`,`match_id`,`winner_id`,`method`,`round`,`scorecards`,`ratings`]);let n=l(e.ratings,`ratings`),r=Object.entries(n);if(r.length!==2)throw new i(`final requires two ratings`);let a=Object.create(null);for(let[e,t]of r){p(e,`rating player id`);let n=l(t,`rating`);u(n,[`before`,`after`]),a[e]={before:d(n.before,`before`),after:d(n.after,`after`)}}let o=m(e.winner_id,`winner_id`);if(o!==null&&!Object.hasOwn(a,o))throw new i(`winner absent from ratings`);let s=h(e.method,D,`finish method`);return ae(o,s),{version:2,type:t,match_id:p(e.match_id,`match_id`),winner_id:o,method:s,round:d(e.round,`round`,1,15),scorecards:ie(e.scorecards),ratings:a}}function le(e,t,n){return JSON.stringify({version:2,type:`input`,sequence:d(e,`sequence`),client_tick:d(t,`client tick`),move:{x:Math.max(-1e3,Math.min(1e3,Math.round(Number.isFinite(n.moveX)?n.moveX:0))),y:Math.max(-1e3,Math.min(1e3,Math.round(Number.isFinite(n.moveY)?n.moveY:0)))},defense:h(n.defense,C,`held defense`),actions:n.actions.slice(0,4).map(e=>{let t=e.id===void 0?{}:{id:e.id.slice(0,32)};return e.kind===`punch`?{kind:`punch`,hand:h(e.hand,_,`hand`),class:h(e.class,v,`class`),target:h(e.target,y,`target`),power:h(e.power,b,`power`),...t}:e.kind===`foul`?{kind:`foul`,foul:h(e.foul,T,`foul`),...t}:{kind:h(e.kind,w,`action`),...t}})})}function ue(e){let t=l(e,`bootstrap`);if(u(t,[`client_id`,`state`,`protocol`,`simulation`]),t.protocol!==2)throw new i(`unsupported protocol version`);let n=l(t.simulation,`simulation`);return u(n,[`tick_rate`,`ring_half_width`,`ring_half_height`]),{client_id:p(t.client_id,`client_id`,36),state:p(t.state,`state`,128),protocol:2,simulation:{tick_rate:d(n.tick_rate,`tick rate`,1,120),ring_half_width:d(n.ring_half_width,`ring width`,1),ring_half_height:d(n.ring_half_height,`ring height`,1)}}}function de(e){let t=l(e,`token response`);u(t,[`access_token`,`ticket`,`player`]);let n=l(t.player,`player`);return u(n,[`id`,`name`,`avatar`,`rating`]),{access_token:p(t.access_token,`access token`,4096),ticket:p(t.ticket,`ticket`,4096),player:{id:p(n.id,`id`),name:p(n.name,`name`,80),avatar:m(n.avatar,`avatar`,128),rating:d(n.rating,`rating`)}}}var j=class extends Error{code;reloadRequired;name=`ClientError`;constructor(e,t=!1){super(e),this.code=e,this.reloadRequired=t}};async function fe(e,t){if(!e.ok)throw new j(e.status===429?`rate_limited`:t);if(!(e.headers.get(`content-type`)??``).toLowerCase().startsWith(`application/json`))throw new j(t);try{return c(await e.text())}catch{throw new j(t)}}function pe(e=window.location.search){let t=new URLSearchParams(e).getAll(`instance_id`);if(t.length!==1||!/^[A-Za-z0-9_-]{1,255}$/u.test(t[0]??``))throw new j(`invalid_launch`);return t[0]}async function me(e,t){let n=new URL(`/api/hands/bootstrap`,window.location.origin);try{return ue(await fe(await fetch(n,{method:`POST`,credentials:`same-origin`,cache:`no-store`,headers:{"Content-Type":`application/json`},body:JSON.stringify({instance_id:e}),...t===void 0?{}:{signal:t}}),`bootstrap_failed`))}catch(e){throw e instanceof j?e:e instanceof i?new j(`invalid_bootstrap`):new j(`bootstrap_failed`)}}async function he(e,t,n){try{return de(await fe(await fetch(new URL(`/api/hands/token`,window.location.origin),{method:`POST`,credentials:`same-origin`,cache:`no-store`,headers:{"Content-Type":`application/json`},body:JSON.stringify({code:e,state:t}),...n===void 0?{}:{signal:n}}),`token_failed`))}catch(e){throw e instanceof j?e:e instanceof i?new j(`invalid_token_response`):new j(`token_failed`)}}function ge(e){return e instanceof j?e.code:e instanceof i?`protocol_error`:`unexpected_error`}var _e=typeof globalThis<`u`?globalThis:typeof window<`u`?window:typeof global<`u`?global:typeof self<`u`?self:{};function ve(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,`default`)?e.default:e}var ye={exports:{}},be;function xe(){return be?ye.exports:(be=1,(function(e){var t=Object.prototype.hasOwnProperty,n=`~`;function r(){}Object.create&&(r.prototype=Object.create(null),new r().__proto__||(n=!1));function i(e,t,n){this.fn=e,this.context=t,this.once=n||!1}function a(e,t,r,a,o){if(typeof r!=`function`)throw TypeError(`The listener must be a function`);var s=new i(r,a||e,o),c=n?n+t:t;return e._events[c]?e._events[c].fn?e._events[c]=[e._events[c],s]:e._events[c].push(s):(e._events[c]=s,e._eventsCount++),e}function o(e,t){--e._eventsCount===0?e._events=new r:delete e._events[t]}function s(){this._events=new r,this._eventsCount=0}s.prototype.eventNames=function(){var e=[],r,i;if(this._eventsCount===0)return e;for(i in r=this._events)t.call(r,i)&&e.push(n?i.slice(1):i);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(r)):e},s.prototype.listeners=function(e){var t=n?n+e:e,r=this._events[t];if(!r)return[];if(r.fn)return[r.fn];for(var i=0,a=r.length,o=Array(a);ie;function t(e){}e.assertIs=t;function n(e){throw Error()}e.assertNever=n,e.arrayToEnum=e=>{let t={};for(let n of e)t[n]=n;return t},e.getValidEnumValues=t=>{let n=e.objectKeys(t).filter(e=>typeof t[t[e]]!=`number`),r={};for(let e of n)r[e]=t[e];return e.objectValues(r)},e.objectValues=t=>e.objectKeys(t).map(function(e){return t[e]}),e.objectKeys=typeof Object.keys==`function`?e=>Object.keys(e):e=>{let t=[];for(let n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.push(n);return t},e.find=(e,t)=>{for(let n of e)if(t(n))return n},e.isInteger=typeof Number.isInteger==`function`?e=>Number.isInteger(e):e=>typeof e==`number`&&isFinite(e)&&Math.floor(e)===e;function r(e,t=` | `){return e.map(e=>typeof e==`string`?`'${e}'`:e).join(t)}e.joinValues=r,e.jsonStringifyReplacer=(e,t)=>typeof t==`bigint`?t.toString():t})(Ce||={});var we;(function(e){e.mergeShapes=(e,t)=>({...e,...t})})(we||={});var M=Ce.arrayToEnum([`string`,`nan`,`number`,`integer`,`float`,`boolean`,`date`,`bigint`,`symbol`,`function`,`undefined`,`null`,`array`,`object`,`unknown`,`promise`,`void`,`never`,`map`,`set`]),N=e=>{switch(typeof e){case`undefined`:return M.undefined;case`string`:return M.string;case`number`:return isNaN(e)?M.nan:M.number;case`boolean`:return M.boolean;case`function`:return M.function;case`bigint`:return M.bigint;case`symbol`:return M.symbol;case`object`:return Array.isArray(e)?M.array:e===null?M.null:e.then&&typeof e.then==`function`&&e.catch&&typeof e.catch==`function`?M.promise:typeof Map<`u`&&e instanceof Map?M.map:typeof Set<`u`&&e instanceof Set?M.set:typeof Date<`u`&&e instanceof Date?M.date:M.object;default:return M.unknown}},P=Ce.arrayToEnum([`invalid_type`,`invalid_literal`,`custom`,`invalid_union`,`invalid_union_discriminator`,`invalid_enum_value`,`unrecognized_keys`,`invalid_arguments`,`invalid_return_type`,`invalid_date`,`invalid_string`,`too_small`,`too_big`,`invalid_intersection_types`,`not_multiple_of`,`not_finite`]),Te=e=>JSON.stringify(e,null,2).replace(/"([^"]+)":/g,`$1:`),Ee=class e extends Error{constructor(e){super(),this.issues=[],this.addIssue=e=>{this.issues=[...this.issues,e]},this.addIssues=(e=[])=>{this.issues=[...this.issues,...e]};let t=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,t):this.__proto__=t,this.name=`ZodError`,this.issues=e}get errors(){return this.issues}format(e){let t=e||function(e){return e.message},n={_errors:[]},r=e=>{for(let i of e.issues)if(i.code===`invalid_union`)i.unionErrors.map(r);else if(i.code===`invalid_return_type`)r(i.returnTypeError);else if(i.code===`invalid_arguments`)r(i.argumentsError);else if(i.path.length===0)n._errors.push(t(i));else{let e=n,r=0;for(;re.message){let t={},n=[];for(let r of this.issues)r.path.length>0?(t[r.path[0]]=t[r.path[0]]||[],t[r.path[0]].push(e(r))):n.push(e(r));return{formErrors:n,fieldErrors:t}}get formErrors(){return this.flatten()}};Ee.create=e=>new Ee(e);var F=(e,t)=>{let n;switch(e.code){case P.invalid_type:n=e.received===M.undefined?`Required`:`Expected ${e.expected}, received ${e.received}`;break;case P.invalid_literal:n=`Invalid literal value, expected ${JSON.stringify(e.expected,Ce.jsonStringifyReplacer)}`;break;case P.unrecognized_keys:n=`Unrecognized key(s) in object: ${Ce.joinValues(e.keys,`, `)}`;break;case P.invalid_union:n=`Invalid input`;break;case P.invalid_union_discriminator:n=`Invalid discriminator value. Expected ${Ce.joinValues(e.options)}`;break;case P.invalid_enum_value:n=`Invalid enum value. Expected ${Ce.joinValues(e.options)}, received '${e.received}'`;break;case P.invalid_arguments:n=`Invalid function arguments`;break;case P.invalid_return_type:n=`Invalid function return type`;break;case P.invalid_date:n=`Invalid date`;break;case P.invalid_string:typeof e.validation==`object`?`includes`in e.validation?(n=`Invalid input: must include "${e.validation.includes}"`,typeof e.validation.position==`number`&&(n=`${n} at one or more positions greater than or equal to ${e.validation.position}`)):`startsWith`in e.validation?n=`Invalid input: must start with "${e.validation.startsWith}"`:`endsWith`in e.validation?n=`Invalid input: must end with "${e.validation.endsWith}"`:Ce.assertNever(e.validation):n=e.validation===`regex`?`Invalid`:`Invalid ${e.validation}`;break;case P.too_small:n=e.type===`array`?`Array must contain ${e.exact?`exactly`:e.inclusive?`at least`:`more than`} ${e.minimum} element(s)`:e.type===`string`?`String must contain ${e.exact?`exactly`:e.inclusive?`at least`:`over`} ${e.minimum} character(s)`:e.type===`number`?`Number must be ${e.exact?`exactly equal to `:e.inclusive?`greater than or equal to `:`greater than `}${e.minimum}`:e.type===`date`?`Date must be ${e.exact?`exactly equal to `:e.inclusive?`greater than or equal to `:`greater than `}${new Date(Number(e.minimum))}`:`Invalid input`;break;case P.too_big:n=e.type===`array`?`Array must contain ${e.exact?`exactly`:e.inclusive?`at most`:`less than`} ${e.maximum} element(s)`:e.type===`string`?`String must contain ${e.exact?`exactly`:e.inclusive?`at most`:`under`} ${e.maximum} character(s)`:e.type===`number`?`Number must be ${e.exact?`exactly`:e.inclusive?`less than or equal to`:`less than`} ${e.maximum}`:e.type===`bigint`?`BigInt must be ${e.exact?`exactly`:e.inclusive?`less than or equal to`:`less than`} ${e.maximum}`:e.type===`date`?`Date must be ${e.exact?`exactly`:e.inclusive?`smaller than or equal to`:`smaller than`} ${new Date(Number(e.maximum))}`:`Invalid input`;break;case P.custom:n=`Invalid input`;break;case P.invalid_intersection_types:n=`Intersection results could not be merged`;break;case P.not_multiple_of:n=`Number must be a multiple of ${e.multipleOf}`;break;case P.not_finite:n=`Number must be finite`;break;default:n=t.defaultError,Ce.assertNever(e)}return{message:n}},De=F;function I(e){De=e}function Oe(){return De}var ke=e=>{let{data:t,path:n,errorMaps:r,issueData:i}=e,a=[...n,...i.path||[]],o={...i,path:a};if(i.message!==void 0)return{...i,path:a,message:i.message};let s=``,c=r.filter(e=>!!e).slice().reverse();for(let e of c)s=e(o,{data:t,defaultError:s}).message;return{...i,path:a,message:s}},Ae=[];function L(e,t){let n=Oe(),r=ke({issueData:t,data:e.data,path:e.path,errorMaps:[e.common.contextualErrorMap,e.schemaErrorMap,n,n===F?void 0:F].filter(e=>!!e)});e.common.issues.push(r)}var je=class e{constructor(){this.value=`valid`}dirty(){this.value===`valid`&&(this.value=`dirty`)}abort(){this.value!==`aborted`&&(this.value=`aborted`)}static mergeArray(e,t){let n=[];for(let r of t){if(r.status===`aborted`)return R;r.status===`dirty`&&e.dirty(),n.push(r.value)}return{status:e.value,value:n}}static async mergeObjectAsync(t,n){let r=[];for(let e of n){let t=await e.key,n=await e.value;r.push({key:t,value:n})}return e.mergeObjectSync(t,r)}static mergeObjectSync(e,t){let n={};for(let r of t){let{key:t,value:i}=r;if(t.status===`aborted`||i.status===`aborted`)return R;t.status===`dirty`&&e.dirty(),i.status===`dirty`&&e.dirty(),t.value!==`__proto__`&&(i.value!==void 0||r.alwaysSet)&&(n[t.value]=i.value)}return{status:e.value,value:n}}},R=Object.freeze({status:`aborted`}),Me=e=>({status:`dirty`,value:e}),Ne=e=>({status:`valid`,value:e}),Pe=e=>e.status===`aborted`,Fe=e=>e.status===`dirty`,Ie=e=>e.status===`valid`,Le=e=>typeof Promise<`u`&&e instanceof Promise;function Re(e,t,n,r){if(typeof t==`function`?e!==t||!r:!t.has(e))throw TypeError(`Cannot read private member from an object whose class did not declare it`);return t.get(e)}function ze(e,t,n,r,i){if(typeof t==`function`?e!==t||!i:!t.has(e))throw TypeError(`Cannot write private member to an object whose class did not declare it`);return t.set(e,n),n}var z;(function(e){e.errToObj=e=>typeof e==`string`?{message:e}:e||{},e.toString=e=>typeof e==`string`?e:e?.message})(z||={});var Be,Ve,He=class{constructor(e,t,n,r){this._cachedPath=[],this.parent=e,this.data=t,this._path=n,this._key=r}get path(){return this._cachedPath.length||(this._key instanceof Array?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},Ue=(e,t)=>{if(Ie(t))return{success:!0,data:t.value};if(!e.common.issues.length)throw Error(`Validation failed but no issues detected.`);return{success:!1,get error(){if(this._error)return this._error;let t=new Ee(e.common.issues);return this._error=t,this._error}}};function B(e){if(!e)return{};let{errorMap:t,invalid_type_error:n,required_error:r,description:i}=e;if(t&&(n||r))throw Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return t?{errorMap:t,description:i}:{errorMap:(t,i)=>{let{message:a}=e;return t.code===`invalid_enum_value`?{message:a??i.defaultError}:i.data===void 0?{message:a??r??i.defaultError}:t.code===`invalid_type`?{message:a??n??i.defaultError}:{message:i.defaultError}},description:i}}var We=class{constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this)}get description(){return this._def.description}_getType(e){return N(e.data)}_getOrReturnCtx(e,t){return t||{common:e.parent.common,data:e.data,parsedType:N(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new je,ctx:{common:e.parent.common,data:e.data,parsedType:N(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let t=this._parse(e);if(Le(t))throw Error(`Synchronous parse encountered promise.`);return t}_parseAsync(e){let t=this._parse(e);return Promise.resolve(t)}parse(e,t){let n=this.safeParse(e,t);if(n.success)return n.data;throw n.error}safeParse(e,t){let n={common:{issues:[],async:t?.async??!1,contextualErrorMap:t?.errorMap},path:t?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:N(e)};return Ue(n,this._parseSync({data:e,path:n.path,parent:n}))}async parseAsync(e,t){let n=await this.safeParseAsync(e,t);if(n.success)return n.data;throw n.error}async safeParseAsync(e,t){let n={common:{issues:[],contextualErrorMap:t?.errorMap,async:!0},path:t?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:N(e)},r=this._parse({data:e,path:n.path,parent:n});return Ue(n,await(Le(r)?r:Promise.resolve(r)))}refine(e,t){let n=e=>typeof t==`string`||t===void 0?{message:t}:typeof t==`function`?t(e):t;return this._refinement((t,r)=>{let i=e(t),a=()=>r.addIssue({code:P.custom,...n(t)});return typeof Promise<`u`&&i instanceof Promise?i.then(e=>e?!0:(a(),!1)):i?!0:(a(),!1)})}refinement(e,t){return this._refinement((n,r)=>e(n)?!0:(r.addIssue(typeof t==`function`?t(n,r):t),!1))}_refinement(e){return new Vt({schema:this,typeName:$t.ZodEffects,effect:{type:`refinement`,refinement:e}})}superRefine(e){return this._refinement(e)}optional(){return Ht.create(this,this._def)}nullable(){return Ut.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return St.create(this,this._def)}promise(){return Bt.create(this,this._def)}or(e){return Tt.create([this,e],this._def)}and(e){return kt.create(this,e,this._def)}transform(e){return new Vt({...B(this._def),schema:this,typeName:$t.ZodEffects,effect:{type:`transform`,transform:e}})}default(e){let t=typeof e==`function`?e:()=>e;return new Wt({...B(this._def),innerType:this,defaultValue:t,typeName:$t.ZodDefault})}brand(){return new Jt({typeName:$t.ZodBranded,type:this,...B(this._def)})}catch(e){let t=typeof e==`function`?e:()=>e;return new Gt({...B(this._def),innerType:this,catchValue:t,typeName:$t.ZodCatch})}describe(e){let t=this.constructor;return new t({...this._def,description:e})}pipe(e){return Yt.create(this,e)}readonly(){return Xt.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},Ge=/^c[^\s-]{8,}$/i,Ke=/^[0-9a-z]+$/,qe=/^[0-9A-HJKMNP-TV-Z]{26}$/,Je=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,Ye=/^[a-z0-9_-]{21}$/i,Xe=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,Ze=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,Qe=`^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$`,$e,et=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,tt=/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,nt=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,rt=`((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))`,it=RegExp(`^${rt}$`);function at(e){let t=`([01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d`;return e.precision?t=`${t}\\.\\d{${e.precision}}`:e.precision??(t=`${t}(\\.\\d+)?`),t}function ot(e){return RegExp(`^${at(e)}$`)}function st(e){let t=`${rt}T${at(e)}`,n=[];return n.push(e.local?`Z?`:`Z`),e.offset&&n.push(`([+-]\\d{2}:?\\d{2})`),t=`${t}(${n.join(`|`)})`,RegExp(`^${t}$`)}function ct(e,t){return!!((t===`v4`||!t)&&et.test(e)||(t===`v6`||!t)&&tt.test(e))}var lt=class e extends We{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==M.string){let t=this._getOrReturnCtx(e);return L(t,{code:P.invalid_type,expected:M.string,received:t.parsedType}),R}let t=new je,n;for(let r of this._def.checks)if(r.kind===`min`)e.data.lengthr.value&&(n=this._getOrReturnCtx(e,n),L(n,{code:P.too_big,maximum:r.value,type:`string`,inclusive:!0,exact:!1,message:r.message}),t.dirty());else if(r.kind===`length`){let i=e.data.length>r.value,a=e.data.lengthe.test(t),{validation:t,code:P.invalid_string,...z.errToObj(n)})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}email(e){return this._addCheck({kind:`email`,...z.errToObj(e)})}url(e){return this._addCheck({kind:`url`,...z.errToObj(e)})}emoji(e){return this._addCheck({kind:`emoji`,...z.errToObj(e)})}uuid(e){return this._addCheck({kind:`uuid`,...z.errToObj(e)})}nanoid(e){return this._addCheck({kind:`nanoid`,...z.errToObj(e)})}cuid(e){return this._addCheck({kind:`cuid`,...z.errToObj(e)})}cuid2(e){return this._addCheck({kind:`cuid2`,...z.errToObj(e)})}ulid(e){return this._addCheck({kind:`ulid`,...z.errToObj(e)})}base64(e){return this._addCheck({kind:`base64`,...z.errToObj(e)})}ip(e){return this._addCheck({kind:`ip`,...z.errToObj(e)})}datetime(e){return typeof e==`string`?this._addCheck({kind:`datetime`,precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:`datetime`,precision:e?.precision===void 0?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...z.errToObj(e?.message)})}date(e){return this._addCheck({kind:`date`,message:e})}time(e){return typeof e==`string`?this._addCheck({kind:`time`,precision:null,message:e}):this._addCheck({kind:`time`,precision:e?.precision===void 0?null:e?.precision,...z.errToObj(e?.message)})}duration(e){return this._addCheck({kind:`duration`,...z.errToObj(e)})}regex(e,t){return this._addCheck({kind:`regex`,regex:e,...z.errToObj(t)})}includes(e,t){return this._addCheck({kind:`includes`,value:e,position:t?.position,...z.errToObj(t?.message)})}startsWith(e,t){return this._addCheck({kind:`startsWith`,value:e,...z.errToObj(t)})}endsWith(e,t){return this._addCheck({kind:`endsWith`,value:e,...z.errToObj(t)})}min(e,t){return this._addCheck({kind:`min`,value:e,...z.errToObj(t)})}max(e,t){return this._addCheck({kind:`max`,value:e,...z.errToObj(t)})}length(e,t){return this._addCheck({kind:`length`,value:e,...z.errToObj(t)})}nonempty(e){return this.min(1,z.errToObj(e))}trim(){return new e({...this._def,checks:[...this._def.checks,{kind:`trim`}]})}toLowerCase(){return new e({...this._def,checks:[...this._def.checks,{kind:`toLowerCase`}]})}toUpperCase(){return new e({...this._def,checks:[...this._def.checks,{kind:`toUpperCase`}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind===`datetime`)}get isDate(){return!!this._def.checks.find(e=>e.kind===`date`)}get isTime(){return!!this._def.checks.find(e=>e.kind===`time`)}get isDuration(){return!!this._def.checks.find(e=>e.kind===`duration`)}get isEmail(){return!!this._def.checks.find(e=>e.kind===`email`)}get isURL(){return!!this._def.checks.find(e=>e.kind===`url`)}get isEmoji(){return!!this._def.checks.find(e=>e.kind===`emoji`)}get isUUID(){return!!this._def.checks.find(e=>e.kind===`uuid`)}get isNANOID(){return!!this._def.checks.find(e=>e.kind===`nanoid`)}get isCUID(){return!!this._def.checks.find(e=>e.kind===`cuid`)}get isCUID2(){return!!this._def.checks.find(e=>e.kind===`cuid2`)}get isULID(){return!!this._def.checks.find(e=>e.kind===`ulid`)}get isIP(){return!!this._def.checks.find(e=>e.kind===`ip`)}get isBase64(){return!!this._def.checks.find(e=>e.kind===`base64`)}get minLength(){let e=null;for(let t of this._def.checks)t.kind===`min`&&(e===null||t.value>e)&&(e=t.value);return e}get maxLength(){let e=null;for(let t of this._def.checks)t.kind===`max`&&(e===null||t.valuenew lt({checks:[],typeName:$t.ZodString,coerce:e?.coerce??!1,...B(e)});function ut(e,t){let n=(e.toString().split(`.`)[1]||``).length,r=(t.toString().split(`.`)[1]||``).length,i=n>r?n:r;return parseInt(e.toFixed(i).replace(`.`,``))%parseInt(t.toFixed(i).replace(`.`,``))/10**i}var dt=class e extends We{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==M.number){let t=this._getOrReturnCtx(e);return L(t,{code:P.invalid_type,expected:M.number,received:t.parsedType}),R}let t,n=new je;for(let r of this._def.checks)r.kind===`int`?Ce.isInteger(e.data)||(t=this._getOrReturnCtx(e,t),L(t,{code:P.invalid_type,expected:`integer`,received:`float`,message:r.message}),n.dirty()):r.kind===`min`?(r.inclusive?e.datar.value:e.data>=r.value)&&(t=this._getOrReturnCtx(e,t),L(t,{code:P.too_big,maximum:r.value,type:`number`,inclusive:r.inclusive,exact:!1,message:r.message}),n.dirty()):r.kind===`multipleOf`?ut(e.data,r.value)!==0&&(t=this._getOrReturnCtx(e,t),L(t,{code:P.not_multiple_of,multipleOf:r.value,message:r.message}),n.dirty()):r.kind===`finite`?Number.isFinite(e.data)||(t=this._getOrReturnCtx(e,t),L(t,{code:P.not_finite,message:r.message}),n.dirty()):Ce.assertNever(r);return{status:n.value,value:e.data}}gte(e,t){return this.setLimit(`min`,e,!0,z.toString(t))}gt(e,t){return this.setLimit(`min`,e,!1,z.toString(t))}lte(e,t){return this.setLimit(`max`,e,!0,z.toString(t))}lt(e,t){return this.setLimit(`max`,e,!1,z.toString(t))}setLimit(t,n,r,i){return new e({...this._def,checks:[...this._def.checks,{kind:t,value:n,inclusive:r,message:z.toString(i)}]})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}int(e){return this._addCheck({kind:`int`,message:z.toString(e)})}positive(e){return this._addCheck({kind:`min`,value:0,inclusive:!1,message:z.toString(e)})}negative(e){return this._addCheck({kind:`max`,value:0,inclusive:!1,message:z.toString(e)})}nonpositive(e){return this._addCheck({kind:`max`,value:0,inclusive:!0,message:z.toString(e)})}nonnegative(e){return this._addCheck({kind:`min`,value:0,inclusive:!0,message:z.toString(e)})}multipleOf(e,t){return this._addCheck({kind:`multipleOf`,value:e,message:z.toString(t)})}finite(e){return this._addCheck({kind:`finite`,message:z.toString(e)})}safe(e){return this._addCheck({kind:`min`,inclusive:!0,value:-(2**53-1),message:z.toString(e)})._addCheck({kind:`max`,inclusive:!0,value:2**53-1,message:z.toString(e)})}get minValue(){let e=null;for(let t of this._def.checks)t.kind===`min`&&(e===null||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(let t of this._def.checks)t.kind===`max`&&(e===null||t.valuee.kind===`int`||e.kind===`multipleOf`&&Ce.isInteger(e.value))}get isFinite(){let e=null,t=null;for(let n of this._def.checks)if(n.kind===`finite`||n.kind===`int`||n.kind===`multipleOf`)return!0;else n.kind===`min`?(t===null||n.value>t)&&(t=n.value):n.kind===`max`&&(e===null||n.valuenew dt({checks:[],typeName:$t.ZodNumber,coerce:e?.coerce||!1,...B(e)});var ft=class e extends We{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce&&(e.data=BigInt(e.data)),this._getType(e)!==M.bigint){let t=this._getOrReturnCtx(e);return L(t,{code:P.invalid_type,expected:M.bigint,received:t.parsedType}),R}let t,n=new je;for(let r of this._def.checks)r.kind===`min`?(r.inclusive?e.datar.value:e.data>=r.value)&&(t=this._getOrReturnCtx(e,t),L(t,{code:P.too_big,type:`bigint`,maximum:r.value,inclusive:r.inclusive,message:r.message}),n.dirty()):r.kind===`multipleOf`?e.data%r.value!==BigInt(0)&&(t=this._getOrReturnCtx(e,t),L(t,{code:P.not_multiple_of,multipleOf:r.value,message:r.message}),n.dirty()):Ce.assertNever(r);return{status:n.value,value:e.data}}gte(e,t){return this.setLimit(`min`,e,!0,z.toString(t))}gt(e,t){return this.setLimit(`min`,e,!1,z.toString(t))}lte(e,t){return this.setLimit(`max`,e,!0,z.toString(t))}lt(e,t){return this.setLimit(`max`,e,!1,z.toString(t))}setLimit(t,n,r,i){return new e({...this._def,checks:[...this._def.checks,{kind:t,value:n,inclusive:r,message:z.toString(i)}]})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}positive(e){return this._addCheck({kind:`min`,value:BigInt(0),inclusive:!1,message:z.toString(e)})}negative(e){return this._addCheck({kind:`max`,value:BigInt(0),inclusive:!1,message:z.toString(e)})}nonpositive(e){return this._addCheck({kind:`max`,value:BigInt(0),inclusive:!0,message:z.toString(e)})}nonnegative(e){return this._addCheck({kind:`min`,value:BigInt(0),inclusive:!0,message:z.toString(e)})}multipleOf(e,t){return this._addCheck({kind:`multipleOf`,value:e,message:z.toString(t)})}get minValue(){let e=null;for(let t of this._def.checks)t.kind===`min`&&(e===null||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(let t of this._def.checks)t.kind===`max`&&(e===null||t.valuenew ft({checks:[],typeName:$t.ZodBigInt,coerce:e?.coerce??!1,...B(e)});var pt=class extends We{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==M.boolean){let t=this._getOrReturnCtx(e);return L(t,{code:P.invalid_type,expected:M.boolean,received:t.parsedType}),R}return Ne(e.data)}};pt.create=e=>new pt({typeName:$t.ZodBoolean,coerce:e?.coerce||!1,...B(e)});var mt=class e extends We{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==M.date){let t=this._getOrReturnCtx(e);return L(t,{code:P.invalid_type,expected:M.date,received:t.parsedType}),R}if(isNaN(e.data.getTime()))return L(this._getOrReturnCtx(e),{code:P.invalid_date}),R;let t=new je,n;for(let r of this._def.checks)r.kind===`min`?e.data.getTime()r.value&&(n=this._getOrReturnCtx(e,n),L(n,{code:P.too_big,message:r.message,inclusive:!0,exact:!1,maximum:r.value,type:`date`}),t.dirty()):Ce.assertNever(r);return{status:t.value,value:new Date(e.data.getTime())}}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}min(e,t){return this._addCheck({kind:`min`,value:e.getTime(),message:z.toString(t)})}max(e,t){return this._addCheck({kind:`max`,value:e.getTime(),message:z.toString(t)})}get minDate(){let e=null;for(let t of this._def.checks)t.kind===`min`&&(e===null||t.value>e)&&(e=t.value);return e==null?null:new Date(e)}get maxDate(){let e=null;for(let t of this._def.checks)t.kind===`max`&&(e===null||t.valuenew mt({checks:[],coerce:e?.coerce||!1,typeName:$t.ZodDate,...B(e)});var ht=class extends We{_parse(e){if(this._getType(e)!==M.symbol){let t=this._getOrReturnCtx(e);return L(t,{code:P.invalid_type,expected:M.symbol,received:t.parsedType}),R}return Ne(e.data)}};ht.create=e=>new ht({typeName:$t.ZodSymbol,...B(e)});var gt=class extends We{_parse(e){if(this._getType(e)!==M.undefined){let t=this._getOrReturnCtx(e);return L(t,{code:P.invalid_type,expected:M.undefined,received:t.parsedType}),R}return Ne(e.data)}};gt.create=e=>new gt({typeName:$t.ZodUndefined,...B(e)});var _t=class extends We{_parse(e){if(this._getType(e)!==M.null){let t=this._getOrReturnCtx(e);return L(t,{code:P.invalid_type,expected:M.null,received:t.parsedType}),R}return Ne(e.data)}};_t.create=e=>new _t({typeName:$t.ZodNull,...B(e)});var vt=class extends We{constructor(){super(...arguments),this._any=!0}_parse(e){return Ne(e.data)}};vt.create=e=>new vt({typeName:$t.ZodAny,...B(e)});var yt=class extends We{constructor(){super(...arguments),this._unknown=!0}_parse(e){return Ne(e.data)}};yt.create=e=>new yt({typeName:$t.ZodUnknown,...B(e)});var bt=class extends We{_parse(e){let t=this._getOrReturnCtx(e);return L(t,{code:P.invalid_type,expected:M.never,received:t.parsedType}),R}};bt.create=e=>new bt({typeName:$t.ZodNever,...B(e)});var xt=class extends We{_parse(e){if(this._getType(e)!==M.undefined){let t=this._getOrReturnCtx(e);return L(t,{code:P.invalid_type,expected:M.void,received:t.parsedType}),R}return Ne(e.data)}};xt.create=e=>new xt({typeName:$t.ZodVoid,...B(e)});var St=class e extends We{_parse(e){let{ctx:t,status:n}=this._processInputParams(e),r=this._def;if(t.parsedType!==M.array)return L(t,{code:P.invalid_type,expected:M.array,received:t.parsedType}),R;if(r.exactLength!==null){let e=t.data.length>r.exactLength.value,i=t.data.lengthr.maxLength.value&&(L(t,{code:P.too_big,maximum:r.maxLength.value,type:`array`,inclusive:!0,exact:!1,message:r.maxLength.message}),n.dirty()),t.common.async)return Promise.all([...t.data].map((e,n)=>r.type._parseAsync(new He(t,e,t.path,n)))).then(e=>je.mergeArray(n,e));let i=[...t.data].map((e,n)=>r.type._parseSync(new He(t,e,t.path,n)));return je.mergeArray(n,i)}get element(){return this._def.type}min(t,n){return new e({...this._def,minLength:{value:t,message:z.toString(n)}})}max(t,n){return new e({...this._def,maxLength:{value:t,message:z.toString(n)}})}length(t,n){return new e({...this._def,exactLength:{value:t,message:z.toString(n)}})}nonempty(e){return this.min(1,e)}};St.create=(e,t)=>new St({type:e,minLength:null,maxLength:null,exactLength:null,typeName:$t.ZodArray,...B(t)});function Ct(e){if(e instanceof wt){let t={};for(let n in e.shape){let r=e.shape[n];t[n]=Ht.create(Ct(r))}return new wt({...e._def,shape:()=>t})}else if(e instanceof St)return new St({...e._def,type:Ct(e.element)});else if(e instanceof Ht)return Ht.create(Ct(e.unwrap()));else if(e instanceof Ut)return Ut.create(Ct(e.unwrap()));else if(e instanceof At)return At.create(e.items.map(e=>Ct(e)));else return e}var wt=class e extends We{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),t=Ce.objectKeys(e);return this._cached={shape:e,keys:t}}_parse(e){if(this._getType(e)!==M.object){let t=this._getOrReturnCtx(e);return L(t,{code:P.invalid_type,expected:M.object,received:t.parsedType}),R}let{status:t,ctx:n}=this._processInputParams(e),{shape:r,keys:i}=this._getCached(),a=[];if(!(this._def.catchall instanceof bt&&this._def.unknownKeys===`strip`))for(let e in n.data)i.includes(e)||a.push(e);let o=[];for(let e of i){let t=r[e],i=n.data[e];o.push({key:{status:`valid`,value:e},value:t._parse(new He(n,i,n.path,e)),alwaysSet:e in n.data})}if(this._def.catchall instanceof bt){let e=this._def.unknownKeys;if(e===`passthrough`)for(let e of a)o.push({key:{status:`valid`,value:e},value:{status:`valid`,value:n.data[e]}});else if(e===`strict`)a.length>0&&(L(n,{code:P.unrecognized_keys,keys:a}),t.dirty());else if(e!==`strip`)throw Error(`Internal ZodObject error: invalid unknownKeys value.`)}else{let e=this._def.catchall;for(let t of a){let r=n.data[t];o.push({key:{status:`valid`,value:t},value:e._parse(new He(n,r,n.path,t)),alwaysSet:t in n.data})}}return n.common.async?Promise.resolve().then(async()=>{let e=[];for(let t of o){let n=await t.key,r=await t.value;e.push({key:n,value:r,alwaysSet:t.alwaysSet})}return e}).then(e=>je.mergeObjectSync(t,e)):je.mergeObjectSync(t,o)}get shape(){return this._def.shape()}strict(t){return z.errToObj,new e({...this._def,unknownKeys:`strict`,...t===void 0?{}:{errorMap:(e,n)=>{var r;let i=(r=this._def).errorMap?.call(r,e,n).message??n.defaultError;return e.code===`unrecognized_keys`?{message:z.errToObj(t).message??i}:{message:i}}}})}strip(){return new e({...this._def,unknownKeys:`strip`})}passthrough(){return new e({...this._def,unknownKeys:`passthrough`})}extend(t){return new e({...this._def,shape:()=>({...this._def.shape(),...t})})}merge(t){return new e({unknownKeys:t._def.unknownKeys,catchall:t._def.catchall,shape:()=>({...this._def.shape(),...t._def.shape()}),typeName:$t.ZodObject})}setKey(e,t){return this.augment({[e]:t})}catchall(t){return new e({...this._def,catchall:t})}pick(t){let n={};return Ce.objectKeys(t).forEach(e=>{t[e]&&this.shape[e]&&(n[e]=this.shape[e])}),new e({...this._def,shape:()=>n})}omit(t){let n={};return Ce.objectKeys(this.shape).forEach(e=>{t[e]||(n[e]=this.shape[e])}),new e({...this._def,shape:()=>n})}deepPartial(){return Ct(this)}partial(t){let n={};return Ce.objectKeys(this.shape).forEach(e=>{let r=this.shape[e];t&&!t[e]?n[e]=r:n[e]=r.optional()}),new e({...this._def,shape:()=>n})}required(t){let n={};return Ce.objectKeys(this.shape).forEach(e=>{if(t&&!t[e])n[e]=this.shape[e];else{let t=this.shape[e];for(;t instanceof Ht;)t=t._def.innerType;n[e]=t}}),new e({...this._def,shape:()=>n})}keyof(){return Lt(Ce.objectKeys(this.shape))}};wt.create=(e,t)=>new wt({shape:()=>e,unknownKeys:`strip`,catchall:bt.create(),typeName:$t.ZodObject,...B(t)}),wt.strictCreate=(e,t)=>new wt({shape:()=>e,unknownKeys:`strict`,catchall:bt.create(),typeName:$t.ZodObject,...B(t)}),wt.lazycreate=(e,t)=>new wt({shape:e,unknownKeys:`strip`,catchall:bt.create(),typeName:$t.ZodObject,...B(t)});var Tt=class extends We{_parse(e){let{ctx:t}=this._processInputParams(e),n=this._def.options;function r(e){for(let t of e)if(t.result.status===`valid`)return t.result;for(let n of e)if(n.result.status===`dirty`)return t.common.issues.push(...n.ctx.common.issues),n.result;let n=e.map(e=>new Ee(e.ctx.common.issues));return L(t,{code:P.invalid_union,unionErrors:n}),R}if(t.common.async)return Promise.all(n.map(async e=>{let n={...t,common:{...t.common,issues:[]},parent:null};return{result:await e._parseAsync({data:t.data,path:t.path,parent:n}),ctx:n}})).then(r);{let e,r=[];for(let i of n){let n={...t,common:{...t.common,issues:[]},parent:null},a=i._parseSync({data:t.data,path:t.path,parent:n});if(a.status===`valid`)return a;a.status===`dirty`&&!e&&(e={result:a,ctx:n}),n.common.issues.length&&r.push(n.common.issues)}if(e)return t.common.issues.push(...e.ctx.common.issues),e.result;let i=r.map(e=>new Ee(e));return L(t,{code:P.invalid_union,unionErrors:i}),R}}get options(){return this._def.options}};Tt.create=(e,t)=>new Tt({options:e,typeName:$t.ZodUnion,...B(t)});var Et=e=>e instanceof Ft?Et(e.schema):e instanceof Vt?Et(e.innerType()):e instanceof It?[e.value]:e instanceof Rt?e.options:e instanceof zt?Ce.objectValues(e.enum):e instanceof Wt?Et(e._def.innerType):e instanceof gt?[void 0]:e instanceof _t?[null]:e instanceof Ht?[void 0,...Et(e.unwrap())]:e instanceof Ut?[null,...Et(e.unwrap())]:e instanceof Jt||e instanceof Xt?Et(e.unwrap()):e instanceof Gt?Et(e._def.innerType):[],Dt=class e extends We{_parse(e){let{ctx:t}=this._processInputParams(e);if(t.parsedType!==M.object)return L(t,{code:P.invalid_type,expected:M.object,received:t.parsedType}),R;let n=this.discriminator,r=t.data[n],i=this.optionsMap.get(r);return i?t.common.async?i._parseAsync({data:t.data,path:t.path,parent:t}):i._parseSync({data:t.data,path:t.path,parent:t}):(L(t,{code:P.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),R)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(t,n,r){let i=new Map;for(let e of n){let n=Et(e.shape[t]);if(!n.length)throw Error(`A discriminator value for key \`${t}\` could not be extracted from all schema options`);for(let r of n){if(i.has(r))throw Error(`Discriminator property ${String(t)} has duplicate value ${String(r)}`);i.set(r,e)}}return new e({typeName:$t.ZodDiscriminatedUnion,discriminator:t,options:n,optionsMap:i,...B(r)})}};function Ot(e,t){let n=N(e),r=N(t);if(e===t)return{valid:!0,data:e};if(n===M.object&&r===M.object){let n=Ce.objectKeys(t),r=Ce.objectKeys(e).filter(e=>n.indexOf(e)!==-1),i={...e,...t};for(let n of r){let r=Ot(e[n],t[n]);if(!r.valid)return{valid:!1};i[n]=r.data}return{valid:!0,data:i}}else if(n===M.array&&r===M.array){if(e.length!==t.length)return{valid:!1};let n=[];for(let r=0;r{if(Pe(e)||Pe(r))return R;let i=Ot(e.value,r.value);return i.valid?((Fe(e)||Fe(r))&&t.dirty(),{status:t.value,value:i.data}):(L(n,{code:P.invalid_intersection_types}),R)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([e,t])=>r(e,t)):r(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};kt.create=(e,t,n)=>new kt({left:e,right:t,typeName:$t.ZodIntersection,...B(n)});var At=class e extends We{_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==M.array)return L(n,{code:P.invalid_type,expected:M.array,received:n.parsedType}),R;if(n.data.lengththis._def.items.length&&(L(n,{code:P.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:`array`}),t.dirty());let r=[...n.data].map((e,t)=>{let r=this._def.items[t]||this._def.rest;return r?r._parse(new He(n,e,n.path,t)):null}).filter(e=>!!e);return n.common.async?Promise.all(r).then(e=>je.mergeArray(t,e)):je.mergeArray(t,r)}get items(){return this._def.items}rest(t){return new e({...this._def,rest:t})}};At.create=(e,t)=>{if(!Array.isArray(e))throw Error(`You must pass an array of schemas to z.tuple([ ... ])`);return new At({items:e,typeName:$t.ZodTuple,rest:null,...B(t)})};var jt=class e extends We{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==M.object)return L(n,{code:P.invalid_type,expected:M.object,received:n.parsedType}),R;let r=[],i=this._def.keyType,a=this._def.valueType;for(let e in n.data)r.push({key:i._parse(new He(n,e,n.path,e)),value:a._parse(new He(n,n.data[e],n.path,e)),alwaysSet:e in n.data});return n.common.async?je.mergeObjectAsync(t,r):je.mergeObjectSync(t,r)}get element(){return this._def.valueType}static create(t,n,r){return n instanceof We?new e({keyType:t,valueType:n,typeName:$t.ZodRecord,...B(r)}):new e({keyType:lt.create(),valueType:t,typeName:$t.ZodRecord,...B(n)})}},Mt=class extends We{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==M.map)return L(n,{code:P.invalid_type,expected:M.map,received:n.parsedType}),R;let r=this._def.keyType,i=this._def.valueType,a=[...n.data.entries()].map(([e,t],a)=>({key:r._parse(new He(n,e,n.path,[a,`key`])),value:i._parse(new He(n,t,n.path,[a,`value`]))}));if(n.common.async){let e=new Map;return Promise.resolve().then(async()=>{for(let n of a){let r=await n.key,i=await n.value;if(r.status===`aborted`||i.status===`aborted`)return R;(r.status===`dirty`||i.status===`dirty`)&&t.dirty(),e.set(r.value,i.value)}return{status:t.value,value:e}})}else{let e=new Map;for(let n of a){let r=n.key,i=n.value;if(r.status===`aborted`||i.status===`aborted`)return R;(r.status===`dirty`||i.status===`dirty`)&&t.dirty(),e.set(r.value,i.value)}return{status:t.value,value:e}}}};Mt.create=(e,t,n)=>new Mt({valueType:t,keyType:e,typeName:$t.ZodMap,...B(n)});var Nt=class e extends We{_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==M.set)return L(n,{code:P.invalid_type,expected:M.set,received:n.parsedType}),R;let r=this._def;r.minSize!==null&&n.data.sizer.maxSize.value&&(L(n,{code:P.too_big,maximum:r.maxSize.value,type:`set`,inclusive:!0,exact:!1,message:r.maxSize.message}),t.dirty());let i=this._def.valueType;function a(e){let n=new Set;for(let r of e){if(r.status===`aborted`)return R;r.status===`dirty`&&t.dirty(),n.add(r.value)}return{status:t.value,value:n}}let o=[...n.data.values()].map((e,t)=>i._parse(new He(n,e,n.path,t)));return n.common.async?Promise.all(o).then(e=>a(e)):a(o)}min(t,n){return new e({...this._def,minSize:{value:t,message:z.toString(n)}})}max(t,n){return new e({...this._def,maxSize:{value:t,message:z.toString(n)}})}size(e,t){return this.min(e,t).max(e,t)}nonempty(e){return this.min(1,e)}};Nt.create=(e,t)=>new Nt({valueType:e,minSize:null,maxSize:null,typeName:$t.ZodSet,...B(t)});var Pt=class e extends We{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:t}=this._processInputParams(e);if(t.parsedType!==M.function)return L(t,{code:P.invalid_type,expected:M.function,received:t.parsedType}),R;function n(e,n){return ke({data:e,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,Oe(),F].filter(e=>!!e),issueData:{code:P.invalid_arguments,argumentsError:n}})}function r(e,n){return ke({data:e,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,Oe(),F].filter(e=>!!e),issueData:{code:P.invalid_return_type,returnTypeError:n}})}let i={errorMap:t.common.contextualErrorMap},a=t.data;if(this._def.returns instanceof Bt){let e=this;return Ne(async function(...t){let o=new Ee([]),s=await e._def.args.parseAsync(t,i).catch(e=>{throw o.addIssue(n(t,e)),o}),c=await Reflect.apply(a,this,s);return await e._def.returns._def.type.parseAsync(c,i).catch(e=>{throw o.addIssue(r(c,e)),o})})}else{let e=this;return Ne(function(...t){let o=e._def.args.safeParse(t,i);if(!o.success)throw new Ee([n(t,o.error)]);let s=Reflect.apply(a,this,o.data),c=e._def.returns.safeParse(s,i);if(!c.success)throw new Ee([r(s,c.error)]);return c.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...t){return new e({...this._def,args:At.create(t).rest(yt.create())})}returns(t){return new e({...this._def,returns:t})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(t,n,r){return new e({args:t||At.create([]).rest(yt.create()),returns:n||yt.create(),typeName:$t.ZodFunction,...B(r)})}},Ft=class extends We{get schema(){return this._def.getter()}_parse(e){let{ctx:t}=this._processInputParams(e);return this._def.getter()._parse({data:t.data,path:t.path,parent:t})}};Ft.create=(e,t)=>new Ft({getter:e,typeName:$t.ZodLazy,...B(t)});var It=class extends We{_parse(e){if(e.data!==this._def.value){let t=this._getOrReturnCtx(e);return L(t,{received:t.data,code:P.invalid_literal,expected:this._def.value}),R}return{status:`valid`,value:e.data}}get value(){return this._def.value}};It.create=(e,t)=>new It({value:e,typeName:$t.ZodLiteral,...B(t)});function Lt(e,t){return new Rt({values:e,typeName:$t.ZodEnum,...B(t)})}var Rt=class e extends We{constructor(){super(...arguments),Be.set(this,void 0)}_parse(e){if(typeof e.data!=`string`){let t=this._getOrReturnCtx(e),n=this._def.values;return L(t,{expected:Ce.joinValues(n),received:t.parsedType,code:P.invalid_type}),R}if(Re(this,Be)||ze(this,Be,new Set(this._def.values)),!Re(this,Be).has(e.data)){let t=this._getOrReturnCtx(e),n=this._def.values;return L(t,{received:t.data,code:P.invalid_enum_value,options:n}),R}return Ne(e.data)}get options(){return this._def.values}get enum(){let e={};for(let t of this._def.values)e[t]=t;return e}get Values(){let e={};for(let t of this._def.values)e[t]=t;return e}get Enum(){let e={};for(let t of this._def.values)e[t]=t;return e}extract(t,n=this._def){return e.create(t,{...this._def,...n})}exclude(t,n=this._def){return e.create(this.options.filter(e=>!t.includes(e)),{...this._def,...n})}};Be=new WeakMap,Rt.create=Lt;var zt=class extends We{constructor(){super(...arguments),Ve.set(this,void 0)}_parse(e){let t=Ce.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==M.string&&n.parsedType!==M.number){let e=Ce.objectValues(t);return L(n,{expected:Ce.joinValues(e),received:n.parsedType,code:P.invalid_type}),R}if(Re(this,Ve)||ze(this,Ve,new Set(Ce.getValidEnumValues(this._def.values))),!Re(this,Ve).has(e.data)){let e=Ce.objectValues(t);return L(n,{received:n.data,code:P.invalid_enum_value,options:e}),R}return Ne(e.data)}get enum(){return this._def.values}};Ve=new WeakMap,zt.create=(e,t)=>new zt({values:e,typeName:$t.ZodNativeEnum,...B(t)});var Bt=class extends We{unwrap(){return this._def.type}_parse(e){let{ctx:t}=this._processInputParams(e);return t.parsedType!==M.promise&&t.common.async===!1?(L(t,{code:P.invalid_type,expected:M.promise,received:t.parsedType}),R):Ne((t.parsedType===M.promise?t.data:Promise.resolve(t.data)).then(e=>this._def.type.parseAsync(e,{path:t.path,errorMap:t.common.contextualErrorMap})))}};Bt.create=(e,t)=>new Bt({type:e,typeName:$t.ZodPromise,...B(t)});var Vt=class extends We{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===$t.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:t,ctx:n}=this._processInputParams(e),r=this._def.effect||null,i={addIssue:e=>{L(n,e),e.fatal?t.abort():t.dirty()},get path(){return n.path}};if(i.addIssue=i.addIssue.bind(i),r.type===`preprocess`){let e=r.transform(n.data,i);if(n.common.async)return Promise.resolve(e).then(async e=>{if(t.value===`aborted`)return R;let r=await this._def.schema._parseAsync({data:e,path:n.path,parent:n});return r.status===`aborted`?R:r.status===`dirty`||t.value===`dirty`?Me(r.value):r});{if(t.value===`aborted`)return R;let r=this._def.schema._parseSync({data:e,path:n.path,parent:n});return r.status===`aborted`?R:r.status===`dirty`||t.value===`dirty`?Me(r.value):r}}if(r.type===`refinement`){let e=e=>{let t=r.refinement(e,i);if(n.common.async)return Promise.resolve(t);if(t instanceof Promise)throw Error(`Async refinement encountered during synchronous parse operation. Use .parseAsync instead.`);return e};if(n.common.async===!1){let r=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return r.status===`aborted`?R:(r.status===`dirty`&&t.dirty(),e(r.value),{status:t.value,value:r.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(n=>n.status===`aborted`?R:(n.status===`dirty`&&t.dirty(),e(n.value).then(()=>({status:t.value,value:n.value}))))}if(r.type===`transform`)if(n.common.async===!1){let e=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!Ie(e))return e;let a=r.transform(e.value,i);if(a instanceof Promise)throw Error(`Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.`);return{status:t.value,value:a}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(e=>Ie(e)?Promise.resolve(r.transform(e.value,i)).then(e=>({status:t.value,value:e})):e);Ce.assertNever(r)}};Vt.create=(e,t,n)=>new Vt({schema:e,typeName:$t.ZodEffects,effect:t,...B(n)}),Vt.createWithPreprocess=(e,t,n)=>new Vt({schema:t,effect:{type:`preprocess`,transform:e},typeName:$t.ZodEffects,...B(n)});var Ht=class extends We{_parse(e){return this._getType(e)===M.undefined?Ne(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Ht.create=(e,t)=>new Ht({innerType:e,typeName:$t.ZodOptional,...B(t)});var Ut=class extends We{_parse(e){return this._getType(e)===M.null?Ne(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Ut.create=(e,t)=>new Ut({innerType:e,typeName:$t.ZodNullable,...B(t)});var Wt=class extends We{_parse(e){let{ctx:t}=this._processInputParams(e),n=t.data;return t.parsedType===M.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:t.path,parent:t})}removeDefault(){return this._def.innerType}};Wt.create=(e,t)=>new Wt({innerType:e,typeName:$t.ZodDefault,defaultValue:typeof t.default==`function`?t.default:()=>t.default,...B(t)});var Gt=class extends We{_parse(e){let{ctx:t}=this._processInputParams(e),n={...t,common:{...t.common,issues:[]}},r=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return Le(r)?r.then(e=>({status:`valid`,value:e.status===`valid`?e.value:this._def.catchValue({get error(){return new Ee(n.common.issues)},input:n.data})})):{status:`valid`,value:r.status===`valid`?r.value:this._def.catchValue({get error(){return new Ee(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};Gt.create=(e,t)=>new Gt({innerType:e,typeName:$t.ZodCatch,catchValue:typeof t.catch==`function`?t.catch:()=>t.catch,...B(t)});var Kt=class extends We{_parse(e){if(this._getType(e)!==M.nan){let t=this._getOrReturnCtx(e);return L(t,{code:P.invalid_type,expected:M.nan,received:t.parsedType}),R}return{status:`valid`,value:e.data}}};Kt.create=e=>new Kt({typeName:$t.ZodNaN,...B(e)});var qt=Symbol(`zod_brand`),Jt=class extends We{_parse(e){let{ctx:t}=this._processInputParams(e),n=t.data;return this._def.type._parse({data:n,path:t.path,parent:t})}unwrap(){return this._def.type}},Yt=class e extends We{_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.common.async)return(async()=>{let e=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return e.status===`aborted`?R:e.status===`dirty`?(t.dirty(),Me(e.value)):this._def.out._parseAsync({data:e.value,path:n.path,parent:n})})();{let e=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return e.status===`aborted`?R:e.status===`dirty`?(t.dirty(),{status:`dirty`,value:e.value}):this._def.out._parseSync({data:e.value,path:n.path,parent:n})}}static create(t,n){return new e({in:t,out:n,typeName:$t.ZodPipeline})}},Xt=class extends We{_parse(e){let t=this._def.innerType._parse(e),n=e=>(Ie(e)&&(e.value=Object.freeze(e.value)),e);return Le(t)?t.then(e=>n(e)):n(t)}unwrap(){return this._def.innerType}};Xt.create=(e,t)=>new Xt({innerType:e,typeName:$t.ZodReadonly,...B(t)});function Zt(e,t={},n){return e?vt.create().superRefine((r,i)=>{if(!e(r)){let e=typeof t==`function`?t(r):typeof t==`string`?{message:t}:t,a=e.fatal??n??!0,o=typeof e==`string`?{message:e}:e;i.addIssue({code:`custom`,...o,fatal:a})}}):vt.create()}var Qt={object:wt.lazycreate},$t;(function(e){e.ZodString=`ZodString`,e.ZodNumber=`ZodNumber`,e.ZodNaN=`ZodNaN`,e.ZodBigInt=`ZodBigInt`,e.ZodBoolean=`ZodBoolean`,e.ZodDate=`ZodDate`,e.ZodSymbol=`ZodSymbol`,e.ZodUndefined=`ZodUndefined`,e.ZodNull=`ZodNull`,e.ZodAny=`ZodAny`,e.ZodUnknown=`ZodUnknown`,e.ZodNever=`ZodNever`,e.ZodVoid=`ZodVoid`,e.ZodArray=`ZodArray`,e.ZodObject=`ZodObject`,e.ZodUnion=`ZodUnion`,e.ZodDiscriminatedUnion=`ZodDiscriminatedUnion`,e.ZodIntersection=`ZodIntersection`,e.ZodTuple=`ZodTuple`,e.ZodRecord=`ZodRecord`,e.ZodMap=`ZodMap`,e.ZodSet=`ZodSet`,e.ZodFunction=`ZodFunction`,e.ZodLazy=`ZodLazy`,e.ZodLiteral=`ZodLiteral`,e.ZodEnum=`ZodEnum`,e.ZodEffects=`ZodEffects`,e.ZodNativeEnum=`ZodNativeEnum`,e.ZodOptional=`ZodOptional`,e.ZodNullable=`ZodNullable`,e.ZodDefault=`ZodDefault`,e.ZodCatch=`ZodCatch`,e.ZodPromise=`ZodPromise`,e.ZodBranded=`ZodBranded`,e.ZodPipeline=`ZodPipeline`,e.ZodReadonly=`ZodReadonly`})($t||={});var en=(e,t={message:`Input not instance of ${e.name}`})=>Zt(t=>t instanceof e,t),V=lt.create,H=dt.create,tn=Kt.create,nn=ft.create,rn=pt.create,an=mt.create,on=ht.create,sn=gt.create,cn=_t.create,ln=vt.create,un=yt.create,dn=bt.create,fn=xt.create,pn=St.create,U=wt.create,mn=wt.strictCreate,hn=Tt.create,gn=Dt.create,_n=kt.create,vn=At.create,yn=jt.create,bn=Mt.create,xn=Nt.create,Sn=Pt.create,Cn=Ft.create,wn=It.create,Tn=Rt.create,En=zt.create,Dn=Bt.create,On=Vt.create,kn=Ht.create,An=Ut.create,jn=Vt.createWithPreprocess,Mn=Yt.create,W=Object.freeze({__proto__:null,defaultErrorMap:F,setErrorMap:I,getErrorMap:Oe,makeIssue:ke,EMPTY_PATH:Ae,addIssueToContext:L,ParseStatus:je,INVALID:R,DIRTY:Me,OK:Ne,isAborted:Pe,isDirty:Fe,isValid:Ie,isAsync:Le,get util(){return Ce},get objectUtil(){return we},ZodParsedType:M,getParsedType:N,ZodType:We,datetimeRegex:st,ZodString:lt,ZodNumber:dt,ZodBigInt:ft,ZodBoolean:pt,ZodDate:mt,ZodSymbol:ht,ZodUndefined:gt,ZodNull:_t,ZodAny:vt,ZodUnknown:yt,ZodNever:bt,ZodVoid:xt,ZodArray:St,ZodObject:wt,ZodUnion:Tt,ZodDiscriminatedUnion:Dt,ZodIntersection:kt,ZodTuple:At,ZodRecord:jt,ZodMap:Mt,ZodSet:Nt,ZodFunction:Pt,ZodLazy:Ft,ZodLiteral:It,ZodEnum:Rt,ZodNativeEnum:zt,ZodPromise:Bt,ZodEffects:Vt,ZodTransformer:Vt,ZodOptional:Ht,ZodNullable:Ut,ZodDefault:Wt,ZodCatch:Gt,ZodNaN:Kt,BRAND:qt,ZodBranded:Jt,ZodPipeline:Yt,ZodReadonly:Xt,custom:Zt,Schema:We,ZodSchema:We,late:Qt,get ZodFirstPartyTypeKind(){return $t},coerce:{string:(e=>lt.create({...e,coerce:!0})),number:(e=>dt.create({...e,coerce:!0})),boolean:(e=>pt.create({...e,coerce:!0})),bigint:(e=>ft.create({...e,coerce:!0})),date:(e=>mt.create({...e,coerce:!0}))},any:ln,array:pn,bigint:nn,boolean:rn,date:an,discriminatedUnion:gn,effect:On,enum:Tn,function:Sn,instanceof:en,intersection:_n,lazy:Cn,literal:wn,map:bn,nan:tn,nativeEnum:En,never:dn,null:cn,nullable:An,number:H,object:U,oboolean:()=>rn().optional(),onumber:()=>H().optional(),optional:kn,ostring:()=>V().optional(),pipeline:Mn,preprocess:jn,promise:Dn,record:yn,set:xn,strictObject:mn,string:V,symbol:on,transformer:On,tuple:vn,undefined:sn,union:hn,unknown:un,void:fn,NEVER:R,ZodIssueCode:P,quotelessJson:Te,ZodError:Ee}),Nn={exports:{}},Pn;function Fn(){return Pn?Nn.exports:(Pn=1,(function(e){var t=(function(e){var n=1e7,r=9007199254740992,i=f(r),a=`0123456789abcdefghijklmnopqrstuvwxyz`,o=typeof BigInt==`function`;function s(e,t,n,r){return e===void 0?s[0]:t===void 0||+t==10&&!n?N(e):ye(e,t,n,r)}function c(e,t){this.value=e,this.sign=t,this.isSmall=!1}c.prototype=Object.create(s.prototype);function l(e){this.value=e,this.sign=e<0,this.isSmall=!0}l.prototype=Object.create(s.prototype);function u(e){this.value=e}u.prototype=Object.create(s.prototype);function d(e){return-r0?Math.floor(e):Math.ceil(e)}function _(e,t){var r=e.length,i=t.length,a=Array(r),o=0,s=n,c,l;for(l=0;l=s),a[l]=c-o*s;for(;l0&&a.push(o),a}function v(e,t){return e.length>=t.length?_(e,t):_(t,e)}function y(e,t){var r=e.length,i=Array(r),a=n,o,s;for(s=0;s0;)i[s++]=t%a,t=Math.floor(t/a);return i}c.prototype.add=function(e){var t=N(e);if(this.sign!==t.sign)return this.subtract(t.negate());var n=this.value,r=t.value;return t.isSmall?new c(y(n,Math.abs(r)),this.sign):new c(v(n,r),this.sign)},c.prototype.plus=c.prototype.add,l.prototype.add=function(e){var t=N(e),n=this.value;if(n<0!==t.sign)return this.subtract(t.negate());var r=t.value;if(t.isSmall){if(d(n+r))return new l(n+r);r=f(Math.abs(r))}return new c(y(r,Math.abs(n)),n<0)},l.prototype.plus=l.prototype.add,u.prototype.add=function(e){return new u(this.value+N(e).value)},u.prototype.plus=u.prototype.add;function b(e,t){var r=e.length,i=t.length,a=Array(r),o=0,s=n,c,l;for(c=0;c=0?r=b(e,t):(r=b(t,e),n=!n),r=p(r),typeof r==`number`?(n&&(r=-r),new l(r)):new c(r,n)}function S(e,t,r){var i=e.length,a=Array(i),o=-t,s=n,u,d;for(u=0;u=0)},l.prototype.minus=l.prototype.subtract,u.prototype.subtract=function(e){return new u(this.value-N(e).value)},u.prototype.minus=u.prototype.subtract,c.prototype.negate=function(){return new c(this.value,!this.sign)},l.prototype.negate=function(){var e=this.sign,t=new l(-this.value);return t.sign=!e,t},u.prototype.negate=function(){return new u(-this.value)},c.prototype.abs=function(){return new c(this.value,!1)},l.prototype.abs=function(){return new l(Math.abs(this.value))},u.prototype.abs=function(){return new u(this.value>=0?this.value:-this.value)};function C(e,t){var r=e.length,i=t.length,a=h(r+i),o=n,s,c,l,u,d;for(l=0;l0;)i[c++]=o%a,o=Math.floor(o/a);return i}function T(e,t){for(var n=[];t-->0;)n.push(0);return n.concat(e)}function E(e,t){var n=Math.max(e.length,t.length);if(n<=30)return C(e,t);n=Math.ceil(n/2);var r=e.slice(n),i=e.slice(0,n),a=t.slice(n),o=t.slice(0,n),s=E(i,o),c=E(r,a),l=v(v(s,T(b(b(E(v(i,r),v(o,a)),s),c),n)),T(c,2*n));return m(l),l}function D(e,t){return-.012*e-.012*t+15e-6*e*t>0}c.prototype.multiply=function(e){var t=N(e),r=this.value,i=t.value,a=this.sign!==t.sign,o;if(t.isSmall){if(i===0)return s[0];if(i===1)return this;if(i===-1)return this.negate();if(o=Math.abs(i),o=0;f--){for(d=a-1,l[f+i]!==s&&(d=Math.floor((l[f+i]*a+l[f+i-1])/s)),m=0,g=0,v=u.length,_=0;_i&&(u=(u+1)*s),c=Math.ceil(u/d);do{if(f=w(t,c),ie(f,o)<=0)break;c--}while(c);a.push(c),o=b(o,f)}return a.reverse(),[p(a),p(o)]}function ne(e,t){var r=e.length,i=h(r),a=n,o,s,c=0,l;for(o=r-1;o>=0;--o)l=c*a+e[o],s=g(l/t),c=l-s*t,i[o]=s|0;return[i,c|0]}function re(e,t){var r,i=N(t);if(o)return[new u(e.value/i.value),new u(e.value%i.value)];var a=e.value,d=i.value,m;if(d===0)throw Error(`Cannot divide by zero`);if(e.isSmall)return i.isSmall?[new l(g(a/d)),new l(a%d)]:[s[0],e];if(i.isSmall){if(d===1)return[e,s[0]];if(d==-1)return[e.negate(),s[0]];var h=Math.abs(d);if(ht.length?1:-1;for(var n=e.length-1;n>=0;n--)if(e[n]!==t[n])return e[n]>t[n]?1:-1;return 0}c.prototype.compareAbs=function(e){var t=N(e),n=this.value,r=t.value;return t.isSmall?1:ie(n,r)},l.prototype.compareAbs=function(e){var t=N(e),n=Math.abs(this.value),r=t.value;return t.isSmall?(r=Math.abs(r),n===r?0:n>r?1:-1):-1},u.prototype.compareAbs=function(e){var t=this.value,n=N(e).value;return t=t>=0?t:-t,n=n>=0?n:-n,t===n?0:t>n?1:-1},c.prototype.compare=function(e){if(e===1/0)return-1;if(e===-1/0)return 1;var t=N(e),n=this.value,r=t.value;return this.sign===t.sign?t.isSmall?this.sign?-1:1:ie(n,r)*(this.sign?-1:1):t.sign?1:-1},c.prototype.compareTo=c.prototype.compare,l.prototype.compare=function(e){if(e===1/0)return-1;if(e===-1/0)return 1;var t=N(e),n=this.value,r=t.value;return t.isSmall?n==r?0:n>r?1:-1:n<0===t.sign?n<0?1:-1:n<0?-1:1},l.prototype.compareTo=l.prototype.compare,u.prototype.compare=function(e){if(e===1/0)return-1;if(e===-1/0)return 1;var t=this.value,n=N(e).value;return t===n?0:t>n?1:-1},u.prototype.compareTo=u.prototype.compare,c.prototype.equals=function(e){return this.compare(e)===0},u.prototype.eq=u.prototype.equals=l.prototype.eq=l.prototype.equals=c.prototype.eq=c.prototype.equals,c.prototype.notEquals=function(e){return this.compare(e)!==0},u.prototype.neq=u.prototype.notEquals=l.prototype.neq=l.prototype.notEquals=c.prototype.neq=c.prototype.notEquals,c.prototype.greater=function(e){return this.compare(e)>0},u.prototype.gt=u.prototype.greater=l.prototype.gt=l.prototype.greater=c.prototype.gt=c.prototype.greater,c.prototype.lesser=function(e){return this.compare(e)<0},u.prototype.lt=u.prototype.lesser=l.prototype.lt=l.prototype.lesser=c.prototype.lt=c.prototype.lesser,c.prototype.greaterOrEquals=function(e){return this.compare(e)>=0},u.prototype.geq=u.prototype.greaterOrEquals=l.prototype.geq=l.prototype.greaterOrEquals=c.prototype.geq=c.prototype.greaterOrEquals,c.prototype.lesserOrEquals=function(e){return this.compare(e)<=0},u.prototype.leq=u.prototype.lesserOrEquals=l.prototype.leq=l.prototype.lesserOrEquals=c.prototype.leq=c.prototype.lesserOrEquals,c.prototype.isEven=function(){return(this.value[0]&1)==0},l.prototype.isEven=function(){return(this.value&1)==0},u.prototype.isEven=function(){return(this.value&BigInt(1))===BigInt(0)},c.prototype.isOdd=function(){return(this.value[0]&1)==1},l.prototype.isOdd=function(){return(this.value&1)==1},u.prototype.isOdd=function(){return(this.value&BigInt(1))===BigInt(1)},c.prototype.isPositive=function(){return!this.sign},l.prototype.isPositive=function(){return this.value>0},u.prototype.isPositive=l.prototype.isPositive,c.prototype.isNegative=function(){return this.sign},l.prototype.isNegative=function(){return this.value<0},u.prototype.isNegative=l.prototype.isNegative,c.prototype.isUnit=function(){return!1},l.prototype.isUnit=function(){return Math.abs(this.value)===1},u.prototype.isUnit=function(){return this.abs().value===BigInt(1)},c.prototype.isZero=function(){return!1},l.prototype.isZero=function(){return this.value===0},u.prototype.isZero=function(){return this.value===BigInt(0)},c.prototype.isDivisibleBy=function(e){var t=N(e);return t.isZero()?!1:t.isUnit()?!0:t.compareAbs(2)===0?this.isEven():this.mod(t).isZero()},u.prototype.isDivisibleBy=l.prototype.isDivisibleBy=c.prototype.isDivisibleBy;function ae(e){var t=e.abs();if(t.isUnit())return!1;if(t.equals(2)||t.equals(3)||t.equals(5))return!0;if(t.isEven()||t.isDivisibleBy(3)||t.isDivisibleBy(5))return!1;if(t.lesser(49))return!0}function oe(e,n){for(var r=e.prev(),i=r,a=0,o,s,c;i.isEven();)i=i.divide(2),a++;next:for(s=0;s-r?new l(e-1):new c(i,!0)},u.prototype.prev=function(){return new u(this.value-BigInt(1))};for(var se=[1];2*se[se.length-1]<=n;)se.push(2*se[se.length-1]);var A=se.length,ce=se[A-1];function le(e){return Math.abs(e)<=n}c.prototype.shiftLeft=function(e){var t=N(e).toJSNumber();if(!le(t))throw Error(String(t)+` is too large for shifting.`);if(t<0)return this.shiftRight(-t);var n=this;if(n.isZero())return n;for(;t>=A;)n=n.multiply(ce),t-=A-1;return n.multiply(se[t])},u.prototype.shiftLeft=l.prototype.shiftLeft=c.prototype.shiftLeft,c.prototype.shiftRight=function(e){var t,n=N(e).toJSNumber();if(!le(n))throw Error(String(n)+` is too large for shifting.`);if(n<0)return this.shiftLeft(-n);for(var r=this;n>=A;){if(r.isZero()||r.isNegative()&&r.isUnit())return r;t=re(r,ce),r=t[1].isNegative()?t[0].prev():t[0],n-=A-1}return t=re(r,se[n]),t[1].isNegative()?t[0].prev():t[0]},u.prototype.shiftRight=l.prototype.shiftRight=c.prototype.shiftRight;function ue(e,n,r){n=N(n);for(var i=e.isNegative(),a=n.isNegative(),o=i?e.not():e,s=a?n.not():n,c=0,l=0,u=null,d=null,f=[];!o.isZero()||!s.isZero();)u=re(o,ce),c=u[1].toJSNumber(),i&&(c=ce-1-c),d=re(s,ce),l=d[1].toJSNumber(),a&&(l=ce-1-l),o=u[0],s=d[0],f.push(r(c,l));for(var p=r(+!!i,+!!a)===0?t(0):t(-1),m=f.length-1;m>=0;--m)p=p.multiply(ce).add(t(f[m]));return p}c.prototype.not=function(){return this.negate().prev()},u.prototype.not=l.prototype.not=c.prototype.not,c.prototype.and=function(e){return ue(this,e,function(e,t){return e&t})},u.prototype.and=l.prototype.and=c.prototype.and,c.prototype.or=function(e){return ue(this,e,function(e,t){return e|t})},u.prototype.or=l.prototype.or=c.prototype.or,c.prototype.xor=function(e){return ue(this,e,function(e,t){return e^t})},u.prototype.xor=l.prototype.xor=c.prototype.xor;var de=1<<30,j=(n&-n)*(n&-n)|de;function fe(e){var t=e.value,r=typeof t==`number`?t|de:typeof t==`bigint`?t|BigInt(de):t[0]+t[1]*n|j;return r&-r}function pe(e,n){if(n.compareTo(e)<=0){var r=pe(e,n.square(n)),i=r.p,a=r.e,o=i.multiply(n);return o.compareTo(e)<=0?{p:o,e:a*2+1}:{p:i,e:a*2}}return{p:t(1),e:0}}c.prototype.bitLength=function(){var e=this;return e.compareTo(t(0))<0&&(e=e.negate().subtract(t(1))),e.compareTo(t(0))===0?t(0):t(pe(e,t(2)).e).add(t(1))},u.prototype.bitLength=l.prototype.bitLength=c.prototype.bitLength;function me(e,t){return e=N(e),t=N(t),e.greater(t)?e:t}function he(e,t){return e=N(e),t=N(t),e.lesser(t)?e:t}function ge(e,t){if(e=N(e).abs(),t=N(t).abs(),e.equals(t))return e;if(e.isZero())return t;if(t.isZero())return e;for(var n=s[1],r,i;e.isEven()&&t.isEven();)r=he(fe(e),fe(t)),e=e.divide(r),t=t.divide(r),n=n.multiply(r);for(;e.isEven();)e=e.divide(fe(e));do{for(;t.isEven();)t=t.divide(fe(t));e.greater(t)&&(i=t,t=e,e=i),t=t.subtract(e)}while(!t.isZero());return n.isUnit()?e:e.multiply(n)}function _e(e,t){return e=N(e).abs(),t=N(t).abs(),e.divide(ge(e,t)).multiply(t)}function ve(e,t,r){e=N(e),t=N(t);var i=r||Math.random,a=he(e,t),o=me(e,t).subtract(a).add(1);if(o.isSmall)return a.add(Math.floor(i()*o));for(var c=Se(o,n).value,l=[],u=!0,d=0;d=s){if(l===`1`&&s===1)continue;throw Error(l+` is not a valid digit in base `+t+`.`)}}t=N(t);var u=[],d=e[0]===`-`;for(o=+!!d;o`&&o=0;a--)r=r.add(e[a].times(i)),i=i.times(t);return n?r.negate():r}function xe(e,t){return t||=a,e`}function Se(e,n){if(n=t(n),n.isZero()){if(e.isZero())return{value:[0],isNegative:!1};throw Error(`Cannot convert nonzero numbers to base 0.`)}if(n.equals(-1)){if(e.isZero())return{value:[0],isNegative:!1};if(e.isNegative())return{value:[].concat.apply([],Array.apply(null,Array(-e.toJSNumber())).map(Array.prototype.valueOf,[1,0])),isNegative:!1};var r=Array.apply(null,Array(e.toJSNumber()-1)).map(Array.prototype.valueOf,[0,1]);return r.unshift([1]),{value:[].concat.apply([],r),isNegative:!1}}var i=!1;if(e.isNegative()&&n.isPositive()&&(i=!0,e=e.abs()),n.isUnit())return e.isZero()?{value:[0],isNegative:!1}:{value:Array.apply(null,Array(e.toJSNumber())).map(Number.prototype.valueOf,1),isNegative:i};for(var a=[],o=e,s;o.isNegative()||o.compareAbs(n)>=0;){s=o.divmod(n),o=s.quotient;var c=s.remainder;c.isNegative()&&(c=n.minus(c).abs(),o=o.next()),a.push(c.toJSNumber())}return a.push(o.toJSNumber()),{value:a.reverse(),isNegative:i}}function Ce(e,t,n){var r=Se(e,t);return(r.isNegative?`-`:``)+r.value.map(function(e){return xe(e,n)}).join(``)}c.prototype.toArray=function(e){return Se(this,e)},l.prototype.toArray=function(e){return Se(this,e)},u.prototype.toArray=function(e){return Se(this,e)},c.prototype.toString=function(t,n){if(t===e&&(t=10),t!==10||n)return Ce(this,t,n);for(var r=this.value,i=r.length,a=String(r[--i]),o=`0000000`,s;--i>=0;)s=String(r[i]),a+=o.slice(s.length)+s;return(this.sign?`-`:``)+a},l.prototype.toString=function(t,n){return t===e&&(t=10),t!=10||n?Ce(this,t,n):String(this.value)},u.prototype.toString=l.prototype.toString,u.prototype.toJSON=c.prototype.toJSON=l.prototype.toJSON=function(){return this.toString()},c.prototype.valueOf=function(){return parseInt(this.toString(),10)},c.prototype.toJSNumber=c.prototype.valueOf,l.prototype.valueOf=function(){return this.value},l.prototype.toJSNumber=l.prototype.valueOf,u.prototype.valueOf=u.prototype.toJSNumber=function(){return parseInt(this.toString(),10)};function we(e){if(d(+e)){var t=+e;if(t===g(t))return o?new u(BigInt(t)):new l(t);throw Error(`Invalid integer: `+e)}var n=e[0]===`-`;n&&(e=e.slice(1));var r=e.split(/e/i);if(r.length>2)throw Error(`Invalid integer: `+r.join(`e`));if(r.length===2){var i=r[1];if(i[0]===`+`&&(i=i.slice(1)),i=+i,i!==g(i)||!d(i))throw Error(`Invalid integer: `+i+` is not a valid exponent.`);var a=r[0],s=a.indexOf(`.`);if(s>=0&&(i-=a.length-s-1,a=a.slice(0,s)+a.slice(s+1)),i<0)throw Error(`Cannot include negative exponent part for integers`);a+=Array(i+1).join(`0`),e=a}if(!/^([0-9][0-9]*)$/.test(e))throw Error(`Invalid integer: `+e);if(o)return new u(BigInt(n?`-`+e:e));for(var f=[],p=e.length,h=7,_=p-h;p>0;)f.push(+e.slice(_,p)),_-=h,_<0&&(_=0),p-=h;return m(f),new c(f,n)}function M(e){if(o)return new u(BigInt(e));if(d(e)){if(e!==g(e))throw Error(e+` is not an integer.`);return new l(e)}return we(e.toString())}function N(e){return typeof e==`number`?M(e):typeof e==`string`?we(e):typeof e==`bigint`?new u(e):e}for(var P=0;P<1e3;P++)s[P]=N(P),P>0&&(s[-P]=N(-P));return s.one=s[1],s.zero=s[0],s.minusOne=s[-1],s.max=me,s.min=he,s.gcd=ge,s.lcm=_e,s.isInstance=function(e){return e instanceof c||e instanceof l||e instanceof u},s.randBetween=ve,s.fromArray=function(e,t,n){return be(e.map(N),N(t||10),n)},s})();e.hasOwnProperty(`exports`)&&(e.exports=t)})(Nn),Nn.exports)}var In=ve(Fn()),Ln=64,Rn=16,zn=Ln/Rn;function Bn(){try{return!0}catch{return!1}}function Vn(e,t,n){let r=0;for(let i=0;ie&t[n]))}or({parts:t}){return new e(this.parts.map((e,n)=>e|t[n]))}xor({parts:t}){return new e(this.parts.map((e,n)=>e^t[n]))}not(){return new e(this.parts.map(e=>~e))}equals({parts:e}){return this.parts.every((t,n)=>t===e[n])}toString(){if(this.str!=null)return this.str;let e=Array(Ln/4);return this.parts.forEach((t,n)=>{let r=Hn(t.toString());for(let t=0;t<4;t++)e[t+n*4]=r[3-t]||0}),this.str=In.fromArray(e,16).toString()}toJSON(){return this.toString()}},Gn=Bn();Gn&&BigInt.prototype.toJSON==null&&(BigInt.prototype.toJSON=function(){return this.toString()});var Kn={},qn=Gn?function(e){return BigInt(e)}:function(e){return e instanceof Wn?e:(typeof e==`number`&&(e=e.toString()),Kn[e]??(Kn[e]=Wn.fromString(e)),Kn[e])},Jn=qn(0),Yn=Gn?function(e=Jn,t=Jn){return e&t}:function(e=Jn,t=Jn){return e.and(t)},Xn=Gn?function(e=Jn,t=Jn){return e|t}:function(e=Jn,t=Jn){return e.or(t)},Zn=Gn?function(e=Jn,t=Jn){return e^t}:function(e=Jn,t=Jn){return e.xor(t)},Qn=Gn?function(e=Jn){return~e}:function(e=Jn){return e.not()},$n=Gn?function(e,t){return e===t}:function(e,t){return e==null||t==null?e==t:e.equals(t)};function er(...e){let t=e[0];for(let n=1;n{let[n]=Object.entries(e).find(([,e])=>e===t)??[];return t!=null&&n===void 0?e.UNHANDLED:t},V().or(H()))}function dr(e){let t=Zt().transform(t=>{let n=e.safeParse(t);return n.success?n.data:e._def.defaultValue()});return t.overlayType=e,t}var fr=W.object({image_url:W.string()}).describe(`Response for "INITIATE_IMAGE_UPLOAD" Command`),pr=W.object({mediaUrl:W.string().max(1024)}).describe(`Request for "OPEN_SHARE_MOMENT_DIALOG" Command`),mr=W.object({access_token:W.union([W.string(),W.null()]).optional()}).describe(`Request for "AUTHENTICATE" Command`),hr=W.object({access_token:W.string(),user:W.object({username:W.string(),discriminator:W.string(),id:W.string(),avatar:W.union([W.string(),W.null()]).optional(),public_flags:W.number(),global_name:W.union([W.string(),W.null()]).optional()}),scopes:W.array(dr(W.enum(`identify,identify.premium,email,connections,guilds,guilds.join,guilds.members.read,guilds.channels.read,gdm.join,bot,rpc,rpc.notifications.read,rpc.voice.read,rpc.voice.write,rpc.video.read,rpc.video.write,rpc.screenshare.read,rpc.screenshare.write,rpc.activities.write,webhook.incoming,messages.read,applications.builds.upload,applications.builds.read,applications.commands,applications.commands.permissions.update,applications.commands.update,applications.store.update,applications.entitlements,activities.read,activities.write,activities.invites.write,relationships.read,relationships.write,voice,dm_channels.read,role_connections.write,presences.read,presences.write,openid,dm_channels.messages.read,dm_channels.messages.write,gateway.connect,account.global_name.update,payment_sources.country_code,sdk.social_layer_presence,sdk.social_layer,lobbies.write,application_identities.write`.split(`,`)).or(W.literal(-1)).default(-1))),expires:W.string(),application:W.object({description:W.string(),icon:W.union([W.string(),W.null()]).optional(),id:W.string(),rpc_origins:W.array(W.string()).optional(),name:W.string()})}).describe(`Response for "AUTHENTICATE" Command`),gr=W.object({participants:W.array(W.object({id:W.string(),username:W.string(),global_name:W.union([W.string(),W.null()]).optional(),discriminator:W.string(),avatar:W.union([W.string(),W.null()]).optional(),flags:W.number(),bot:W.boolean(),avatar_decoration_data:W.union([W.object({asset:W.union([W.string(),W.null()]).optional(),skuId:W.string().optional(),expiresAt:W.number().optional()}),W.null()]).optional(),premium_type:W.union([W.number(),W.null()]).optional(),nickname:W.string().optional()}))}).describe(`Response for "GET_ACTIVITY_INSTANCE_CONNECTED_PARTICIPANTS" Command`),_r=W.object({command:W.string(),options:W.array(W.object({name:W.string(),value:W.string()})).optional(),content:W.string().max(2e3).optional(),require_launch_channel:W.boolean().optional(),preview_image:W.object({height:W.number(),url:W.string(),width:W.number()}).optional(),components:W.array(W.object({type:W.literal(1),components:W.array(W.object({type:W.literal(2),style:W.number().gte(1).lte(5),label:W.string().max(80).optional(),custom_id:W.string().max(100).describe(`Developer-defined identifier for the button; max 100 characters`).optional()})).max(5).optional()})).optional(),pid:W.number().optional()}).describe(`Request for "SHARE_INTERACTION" Command`),vr=W.object({success:W.boolean()}).describe(`Response for "SHARE_INTERACTION" Command`),yr=W.object({custom_id:W.string().max(64).optional(),message:W.string().max(1e3),link_id:W.string().max(64).optional()}).describe(`Request for "SHARE_LINK" Command`),br=W.object({success:W.boolean(),didCopyLink:W.boolean(),didSendMessage:W.boolean()}).describe(`Response for "SHARE_LINK" Command`),xr=W.object({relationships:W.array(W.object({type:W.number(),user:W.object({id:W.string(),username:W.string(),global_name:W.union([W.string(),W.null()]).optional(),discriminator:W.string(),avatar:W.union([W.string(),W.null()]).optional(),flags:W.number(),bot:W.boolean(),avatar_decoration_data:W.union([W.object({asset:W.union([W.string(),W.null()]).optional(),skuId:W.string().optional(),expiresAt:W.number().optional()}),W.null()]).optional(),premium_type:W.union([W.number(),W.null()]).optional()}),presence:W.object({status:W.string(),activity:W.union([W.object({session_id:W.string().optional(),type:W.number().optional(),name:W.string(),url:W.union([W.string(),W.null()]).optional(),application_id:W.string().optional(),status_display_type:W.number().optional(),state:W.string().optional(),state_url:W.string().optional(),details:W.string().optional(),details_url:W.string().optional(),emoji:W.union([W.object({name:W.string(),id:W.union([W.string(),W.null()]).optional(),animated:W.union([W.boolean(),W.null()]).optional()}),W.null()]).optional(),assets:W.object({large_image:W.string().optional(),large_text:W.string().optional(),large_url:W.string().optional(),small_image:W.string().optional(),small_text:W.string().optional(),small_url:W.string().optional()}).optional(),timestamps:W.object({start:W.number().optional(),end:W.number().optional()}).optional(),party:W.object({id:W.string().optional(),size:W.array(W.number()).min(2).max(2).optional(),privacy:W.number().optional()}).optional(),secrets:W.object({match:W.string().optional(),join:W.string().optional()}).optional(),sync_id:W.string().optional(),created_at:W.number().optional(),instance:W.boolean().optional(),flags:W.number().optional(),metadata:W.object({}).optional(),platform:W.string().optional(),supported_platforms:W.array(W.string()).optional(),buttons:W.array(W.string()).optional(),hangStatus:W.string().optional()}),W.null()]).optional()}).optional()}))}).describe(`Response for "GET_RELATIONSHIPS" Command`),Sr=W.object({user_id:W.string(),content:W.string().min(0).max(1024).optional()}).describe(`Request for "INVITE_USER_EMBEDDED" Command`),Cr=W.object({id:W.string().max(64)}).describe(`Request for "GET_USER" Command`),wr=W.union([W.object({id:W.string(),username:W.string(),global_name:W.union([W.string(),W.null()]).optional(),discriminator:W.string(),avatar:W.union([W.string(),W.null()]).optional(),flags:W.number(),bot:W.boolean(),avatar_decoration_data:W.union([W.object({asset:W.union([W.string(),W.null()]).optional(),skuId:W.string().optional(),expiresAt:W.number().optional()}),W.null()]).optional(),premium_type:W.union([W.number(),W.null()]).optional()}),W.null()]),Tr=W.object({quest_id:W.string()}).describe(`Request for "GET_QUEST_ENROLLMENT_STATUS" Command`),Er=W.object({quest_id:W.string(),is_enrolled:W.boolean(),enrolled_at:W.union([W.string(),W.null()]).optional()}).describe(`Response for "GET_QUEST_ENROLLMENT_STATUS" Command`),Dr=W.object({quest_id:W.string()}).describe(`Request for "QUEST_START_TIMER" Command`),Or=W.object({success:W.boolean()}).describe(`Response for "QUEST_START_TIMER" Command`),kr=W.object({quest_id:W.string(),enrolled_at:W.union([W.string(),W.null()]).optional(),completed_at:W.union([W.string(),W.null()]).optional(),external_cta_url:W.string()}).describe(`Response for "GET_QUEST" Command`),Ar=W.object({ticket:W.string()}).describe(`Response for "REQUEST_PROXY_TICKET_REFRESH" Command`),jr;(function(e){e.INITIATE_IMAGE_UPLOAD=`INITIATE_IMAGE_UPLOAD`,e.OPEN_SHARE_MOMENT_DIALOG=`OPEN_SHARE_MOMENT_DIALOG`,e.AUTHENTICATE=`AUTHENTICATE`,e.GET_ACTIVITY_INSTANCE_CONNECTED_PARTICIPANTS=`GET_ACTIVITY_INSTANCE_CONNECTED_PARTICIPANTS`,e.SHARE_INTERACTION=`SHARE_INTERACTION`,e.SHARE_LINK=`SHARE_LINK`,e.GET_RELATIONSHIPS=`GET_RELATIONSHIPS`,e.INVITE_USER_EMBEDDED=`INVITE_USER_EMBEDDED`,e.GET_USER=`GET_USER`,e.GET_QUEST_ENROLLMENT_STATUS=`GET_QUEST_ENROLLMENT_STATUS`,e.QUEST_START_TIMER=`QUEST_START_TIMER`,e.GET_QUEST=`GET_QUEST`,e.REQUEST_PROXY_TICKET_REFRESH=`REQUEST_PROXY_TICKET_REFRESH`})(jr||={});var Mr=W.object({}).optional().nullable(),Nr=W.void(),Pr={[jr.INITIATE_IMAGE_UPLOAD]:{request:Nr,response:fr},[jr.OPEN_SHARE_MOMENT_DIALOG]:{request:pr,response:Mr},[jr.AUTHENTICATE]:{request:mr,response:hr},[jr.GET_ACTIVITY_INSTANCE_CONNECTED_PARTICIPANTS]:{request:Nr,response:gr},[jr.SHARE_INTERACTION]:{request:_r,response:vr},[jr.SHARE_LINK]:{request:yr,response:br},[jr.GET_RELATIONSHIPS]:{request:Nr,response:xr},[jr.INVITE_USER_EMBEDDED]:{request:Sr,response:Mr},[jr.GET_USER]:{request:Cr,response:wr},[jr.GET_QUEST_ENROLLMENT_STATUS]:{request:Tr,response:Er},[jr.QUEST_START_TIMER]:{request:Dr,response:Or},[jr.GET_QUEST]:{request:Nr,response:kr},[jr.REQUEST_PROXY_TICKET_REFRESH]:{request:Nr,response:Ar}},Fr=t({Activity:()=>Yr,Attachment:()=>ii,CertifiedDevice:()=>wi,CertifiedDeviceTypeObject:()=>Ci,Channel:()=>$r,ChannelMention:()=>ri,ChannelTypesObject:()=>Qr,Commands:()=>G,DISPATCH:()=>Ir,Embed:()=>di,EmbedAuthor:()=>li,EmbedField:()=>ui,EmbedFooter:()=>ai,EmbedProvider:()=>ci,Emoji:()=>Wr,Entitlement:()=>Oi,EntitlementTypesObject:()=>Di,Guild:()=>ni,GuildMember:()=>Hr,GuildMemberRPC:()=>Ur,Image:()=>oi,KeyTypesObject:()=>vi,LayoutMode:()=>Ii,LayoutModeTypeObject:()=>Fi,Message:()=>gi,MessageActivity:()=>pi,MessageApplication:()=>mi,MessageReference:()=>hi,Orientation:()=>Pi,OrientationLockState:()=>Ai,OrientationLockStateTypeObject:()=>ki,OrientationTypeObject:()=>Ni,PermissionOverwrite:()=>Zr,PermissionOverwriteTypeObject:()=>Xr,PresenceUpdate:()=>ei,Reaction:()=>fi,ReceiveFramePayload:()=>Lr,Relationship:()=>Br,Role:()=>ti,Scopes:()=>zr,ScopesObject:()=>Rr,ShortcutKey:()=>yi,Sku:()=>Ei,SkuTypeObject:()=>Ti,Status:()=>Jr,StatusObject:()=>qr,ThermalState:()=>Mi,ThermalStateTypeObject:()=>ji,User:()=>Vr,UserVoiceState:()=>Kr,Video:()=>si,VoiceDevice:()=>_i,VoiceSettingModeTypeObject:()=>bi,VoiceSettingsIO:()=>Si,VoiceSettingsMode:()=>xi,VoiceState:()=>Gr}),Ir=`DISPATCH`,G;(function(e){e.AUTHORIZE=`AUTHORIZE`,e.GET_GUILDS=`GET_GUILDS`,e.GET_GUILD=`GET_GUILD`,e.GET_CHANNEL=`GET_CHANNEL`,e.GET_CHANNELS=`GET_CHANNELS`,e.SELECT_VOICE_CHANNEL=`SELECT_VOICE_CHANNEL`,e.SELECT_TEXT_CHANNEL=`SELECT_TEXT_CHANNEL`,e.SUBSCRIBE=`SUBSCRIBE`,e.UNSUBSCRIBE=`UNSUBSCRIBE`,e.CAPTURE_SHORTCUT=`CAPTURE_SHORTCUT`,e.SET_CERTIFIED_DEVICES=`SET_CERTIFIED_DEVICES`,e.SET_ACTIVITY=`SET_ACTIVITY`,e.GET_SKUS=`GET_SKUS`,e.GET_ENTITLEMENTS=`GET_ENTITLEMENTS`,e.GET_SKUS_EMBEDDED=`GET_SKUS_EMBEDDED`,e.GET_ENTITLEMENTS_EMBEDDED=`GET_ENTITLEMENTS_EMBEDDED`,e.START_PURCHASE=`START_PURCHASE`,e.SET_CONFIG=`SET_CONFIG`,e.SEND_ANALYTICS_EVENT=`SEND_ANALYTICS_EVENT`,e.USER_SETTINGS_GET_LOCALE=`USER_SETTINGS_GET_LOCALE`,e.OPEN_EXTERNAL_LINK=`OPEN_EXTERNAL_LINK`,e.ENCOURAGE_HW_ACCELERATION=`ENCOURAGE_HW_ACCELERATION`,e.CAPTURE_LOG=`CAPTURE_LOG`,e.SET_ORIENTATION_LOCK_STATE=`SET_ORIENTATION_LOCK_STATE`,e.OPEN_INVITE_DIALOG=`OPEN_INVITE_DIALOG`,e.GET_PLATFORM_BEHAVIORS=`GET_PLATFORM_BEHAVIORS`,e.GET_CHANNEL_PERMISSIONS=`GET_CHANNEL_PERMISSIONS`,e.AUTHENTICATE=`AUTHENTICATE`,e.GET_ACTIVITY_INSTANCE_CONNECTED_PARTICIPANTS=`GET_ACTIVITY_INSTANCE_CONNECTED_PARTICIPANTS`,e.GET_QUEST=`GET_QUEST`,e.GET_QUEST_ENROLLMENT_STATUS=`GET_QUEST_ENROLLMENT_STATUS`,e.GET_RELATIONSHIPS=`GET_RELATIONSHIPS`,e.GET_USER=`GET_USER`,e.INITIATE_IMAGE_UPLOAD=`INITIATE_IMAGE_UPLOAD`,e.INVITE_USER_EMBEDDED=`INVITE_USER_EMBEDDED`,e.OPEN_SHARE_MOMENT_DIALOG=`OPEN_SHARE_MOMENT_DIALOG`,e.QUEST_START_TIMER=`QUEST_START_TIMER`,e.REQUEST_PROXY_TICKET_REFRESH=`REQUEST_PROXY_TICKET_REFRESH`,e.SHARE_INTERACTION=`SHARE_INTERACTION`,e.SHARE_LINK=`SHARE_LINK`})(G||={});var Lr=U({cmd:V(),data:un(),evt:cn(),nonce:V()}).passthrough(),Rr=Object.assign(Object.assign({},hr.shape.scopes.element.overlayType._def.innerType.options[0].Values),{UNHANDLED:-1}),zr=ur(Rr),Br=xr.shape.relationships.element,Vr=U({id:V(),username:V(),discriminator:V(),global_name:V().optional().nullable(),avatar:V().optional().nullable(),avatar_decoration_data:U({asset:V(),sku_id:V().optional()}).nullable(),bot:rn(),flags:H().optional().nullable(),premium_type:H().optional().nullable()}),Hr=U({user:Vr,nick:V().optional().nullable(),roles:pn(V()),joined_at:V(),deaf:rn(),mute:rn()}),Ur=U({user_id:V(),nick:V().optional().nullable(),guild_id:V(),avatar:V().optional().nullable(),avatar_decoration_data:U({asset:V(),sku_id:V().optional().nullable()}).optional().nullable(),color_string:V().optional().nullable()}),Wr=U({id:V(),name:V().optional().nullable(),roles:pn(V()).optional().nullable(),user:Vr.optional().nullable(),require_colons:rn().optional().nullable(),managed:rn().optional().nullable(),animated:rn().optional().nullable(),available:rn().optional().nullable()}),Gr=U({mute:rn(),deaf:rn(),self_mute:rn(),self_deaf:rn(),suppress:rn()}),Kr=U({mute:rn(),nick:V(),user:Vr,voice_state:Gr,volume:H()}),qr={UNHANDLED:-1,IDLE:`idle`,DND:`dnd`,ONLINE:`online`,OFFLINE:`offline`},Jr=ur(qr),Yr=U({name:V(),type:H(),url:V().optional().nullable(),created_at:H().optional().nullable(),timestamps:U({start:H(),end:H()}).partial().optional().nullable(),application_id:V().optional().nullable(),details:V().optional().nullable(),details_url:V().url().optional().nullable(),state:V().optional().nullable(),state_url:V().url().optional().nullable(),emoji:Wr.optional().nullable(),party:U({id:V().optional().nullable(),size:pn(H()).optional().nullable()}).optional().nullable(),assets:U({large_image:V().nullable(),large_text:V().nullable(),large_url:V().url().optional().nullable(),small_image:V().nullable(),small_text:V().nullable(),small_url:V().url().optional().nullable()}).partial().optional().nullable(),secrets:U({join:V(),match:V()}).partial().optional().nullable(),instance:rn().optional().nullable(),flags:H().optional().nullable()}),Xr={UNHANDLED:-1,ROLE:0,MEMBER:1},Zr=U({id:V(),type:ur(Xr),allow:V(),deny:V()}),Qr={UNHANDLED:-1,DM:1,GROUP_DM:3,GUILD_TEXT:0,GUILD_VOICE:2,GUILD_CATEGORY:4,GUILD_ANNOUNCEMENT:5,GUILD_STORE:6,ANNOUNCEMENT_THREAD:10,PUBLIC_THREAD:11,PRIVATE_THREAD:12,GUILD_STAGE_VOICE:13,GUILD_DIRECTORY:14,GUILD_FORUM:15},$r=U({id:V(),type:ur(Qr),guild_id:V().optional().nullable(),position:H().optional().nullable(),permission_overwrites:pn(Zr).optional().nullable(),name:V().optional().nullable(),topic:V().optional().nullable(),nsfw:rn().optional().nullable(),last_message_id:V().optional().nullable(),bitrate:H().optional().nullable(),user_limit:H().optional().nullable(),rate_limit_per_user:H().optional().nullable(),recipients:pn(Vr).optional().nullable(),icon:V().optional().nullable(),owner_id:V().optional().nullable(),application_id:V().optional().nullable(),parent_id:V().optional().nullable(),last_pin_timestamp:V().optional().nullable()}),ei=U({user:Vr,guild_id:V(),status:Jr,activities:pn(Yr),client_status:U({desktop:Jr,mobile:Jr,web:Jr}).partial()}),ti=U({id:V(),name:V(),color:H(),hoist:rn(),position:H(),permissions:V(),managed:rn(),mentionable:rn()}),ni=U({id:V(),name:V(),owner_id:V(),icon:V().nullable(),icon_hash:V().optional().nullable(),splash:V().nullable(),discovery_splash:V().nullable(),owner:rn().optional().nullable(),permissions:V().optional().nullable(),region:V(),afk_channel_id:V().nullable(),afk_timeout:H(),widget_enabled:rn().optional().nullable(),widget_channel_id:V().optional().nullable(),verification_level:H(),default_message_notifications:H(),explicit_content_filter:H(),roles:pn(ti),emojis:pn(Wr),features:pn(V()),mfa_level:H(),application_id:V().nullable(),system_channel_id:V().nullable(),system_channel_flags:H(),rules_channel_id:V().nullable(),joined_at:V().optional().nullable(),large:rn().optional().nullable(),unavailable:rn().optional().nullable(),member_count:H().optional().nullable(),voice_states:pn(Gr).optional().nullable(),members:pn(Hr).optional().nullable(),channels:pn($r).optional().nullable(),presences:pn(ei).optional().nullable(),max_presences:H().optional().nullable(),max_members:H().optional().nullable(),vanity_url_code:V().nullable(),description:V().nullable(),banner:V().nullable(),premium_tier:H(),premium_subscription_count:H().optional().nullable(),preferred_locale:V(),public_updates_channel_id:V().nullable(),max_video_channel_users:H().optional().nullable(),approximate_member_count:H().optional().nullable(),approximate_presence_count:H().optional().nullable()}),ri=U({id:V(),guild_id:V(),type:H(),name:V()}),ii=U({id:V(),filename:V(),size:H(),url:V(),proxy_url:V(),height:H().optional().nullable(),width:H().optional().nullable()}),ai=U({text:V(),icon_url:V().optional().nullable(),proxy_icon_url:V().optional().nullable()}),oi=U({url:V().optional().nullable(),proxy_url:V().optional().nullable(),height:H().optional().nullable(),width:H().optional().nullable()}),si=oi.omit({proxy_url:!0}),ci=U({name:V().optional().nullable(),url:V().optional().nullable()}),li=U({name:V().optional().nullable(),url:V().optional().nullable(),icon_url:V().optional().nullable(),proxy_icon_url:V().optional().nullable()}),ui=U({name:V(),value:V(),inline:rn()}),di=U({title:V().optional().nullable(),type:V().optional().nullable(),description:V().optional().nullable(),url:V().optional().nullable(),timestamp:V().optional().nullable(),color:H().optional().nullable(),footer:ai.optional().nullable(),image:oi.optional().nullable(),thumbnail:oi.optional().nullable(),video:si.optional().nullable(),provider:ci.optional().nullable(),author:li.optional().nullable(),fields:pn(ui).optional().nullable()}),fi=U({count:H(),me:rn(),emoji:Wr}),pi=U({type:H(),party_id:V().optional().nullable()}),mi=U({id:V(),cover_image:V().optional().nullable(),description:V(),icon:V().optional().nullable(),name:V()}),hi=U({message_id:V().optional().nullable(),channel_id:V().optional().nullable(),guild_id:V().optional().nullable()}),gi=U({id:V(),channel_id:V(),guild_id:V().optional().nullable(),author:Vr.optional().nullable(),member:Hr.optional().nullable(),content:V(),timestamp:V(),edited_timestamp:V().optional().nullable(),tts:rn(),mention_everyone:rn(),mentions:pn(Vr),mention_roles:pn(V()),mention_channels:pn(ri),attachments:pn(ii),embeds:pn(di),reactions:pn(fi).optional().nullable(),nonce:hn([V(),H()]).optional().nullable(),pinned:rn(),webhook_id:V().optional().nullable(),type:H(),activity:pi.optional().nullable(),application:mi.optional().nullable(),message_reference:hi.optional().nullable(),flags:H().optional().nullable(),stickers:pn(un()).optional().nullable(),referenced_message:un().optional().nullable()}),_i=U({id:V(),name:V()}),vi={UNHANDLED:-1,KEYBOARD_KEY:0,MOUSE_BUTTON:1,KEYBOARD_MODIFIER_KEY:2,GAMEPAD_BUTTON:3},yi=U({type:ur(vi),code:H(),name:V()}),bi={UNHANDLED:-1,PUSH_TO_TALK:`PUSH_TO_TALK`,VOICE_ACTIVITY:`VOICE_ACTIVITY`},xi=U({type:ur(bi),auto_threshold:rn(),threshold:H(),shortcut:pn(yi),delay:H()}),Si=U({device_id:V(),volume:H(),available_devices:pn(_i)}),Ci={UNHANDLED:-1,AUDIO_INPUT:`AUDIO_INPUT`,AUDIO_OUTPUT:`AUDIO_OUTPUT`,VIDEO_INPUT:`VIDEO_INPUT`},wi=U({type:ur(Ci),id:V(),vendor:U({name:V(),url:V()}),model:U({name:V(),url:V()}),related:pn(V()),echo_cancellation:rn().optional().nullable(),noise_suppression:rn().optional().nullable(),automatic_gain_control:rn().optional().nullable(),hardware_mute:rn().optional().nullable()}),Ti={UNHANDLED:-1,APPLICATION:1,DLC:2,CONSUMABLE:3,BUNDLE:4,SUBSCRIPTION:5},Ei=U({id:V(),name:V(),type:ur(Ti),price:U({amount:H(),currency:V()}),application_id:V(),flags:H(),release_date:V().nullable()}),Di={UNHANDLED:-1,PURCHASE:1,PREMIUM_SUBSCRIPTION:2,DEVELOPER_GIFT:3,TEST_MODE_PURCHASE:4,FREE_PURCHASE:5,USER_GIFT:6,PREMIUM_PURCHASE:7},Oi=U({id:V(),sku_id:V(),application_id:V(),user_id:V(),gift_code_flags:H(),type:ur(Di),gifter_user_id:V().optional().nullable(),branches:pn(V()).optional().nullable(),starts_at:V().optional().nullable(),ends_at:V().optional().nullable(),parent_id:V().optional().nullable(),consumed:rn().optional().nullable(),deleted:rn().optional().nullable(),gift_code_batch_id:V().optional().nullable()}),ki={UNHANDLED:-1,UNLOCKED:1,PORTRAIT:2,LANDSCAPE:3},Ai=ur(ki),ji={UNHANDLED:-1,NOMINAL:0,FAIR:1,SERIOUS:2,CRITICAL:3},Mi=ur(ji),Ni={UNHANDLED:-1,PORTRAIT:0,LANDSCAPE:1},Pi=ur(Ni),Fi={UNHANDLED:-1,FOCUSED:0,PIP:1,GRID:2},Ii=ur(Fi),Li=`ERROR`,Ri;(function(e){e.READY=`READY`,e.VOICE_STATE_UPDATE=`VOICE_STATE_UPDATE`,e.SPEAKING_START=`SPEAKING_START`,e.SPEAKING_STOP=`SPEAKING_STOP`,e.ACTIVITY_LAYOUT_MODE_UPDATE=`ACTIVITY_LAYOUT_MODE_UPDATE`,e.ORIENTATION_UPDATE=`ORIENTATION_UPDATE`,e.CURRENT_USER_UPDATE=`CURRENT_USER_UPDATE`,e.CURRENT_GUILD_MEMBER_UPDATE=`CURRENT_GUILD_MEMBER_UPDATE`,e.ENTITLEMENT_CREATE=`ENTITLEMENT_CREATE`,e.THERMAL_STATE_UPDATE=`THERMAL_STATE_UPDATE`,e.ACTIVITY_INSTANCE_PARTICIPANTS_UPDATE=`ACTIVITY_INSTANCE_PARTICIPANTS_UPDATE`,e.RELATIONSHIP_UPDATE=`RELATIONSHIP_UPDATE`,e.ACTIVITY_JOIN=`ACTIVITY_JOIN`,e.QUEST_ENROLLMENT_STATUS_UPDATE=`QUEST_ENROLLMENT_STATUS_UPDATE`})(Ri||={});var zi=Lr.extend({evt:En(Ri),nonce:V().nullable(),cmd:wn(Ir),data:U({}).passthrough()}),Bi=Lr.extend({evt:wn(Li),data:U({code:H(),message:V().optional()}).passthrough(),cmd:En(G),nonce:V().nullable()}),Vi=hn([zi,zi.extend({evt:V()}),Bi]);function Hi(e){let t=e.evt;if(!(t in Ri))throw Error(`Unrecognized event type ${e.evt}`);return Ui[t].payload.parse(e)}var Ui={[Ri.READY]:{payload:zi.extend({evt:wn(Ri.READY),data:U({v:H(),config:U({cdn_host:V().optional(),api_endpoint:V(),environment:V()}),user:U({id:V(),username:V(),discriminator:V(),avatar:V().optional()}).optional()})})},[Ri.VOICE_STATE_UPDATE]:{payload:zi.extend({evt:wn(Ri.VOICE_STATE_UPDATE),data:Kr}),subscribeArgs:U({channel_id:V()})},[Ri.SPEAKING_START]:{payload:zi.extend({evt:wn(Ri.SPEAKING_START),data:U({lobby_id:V().optional(),channel_id:V().optional(),user_id:V()})}),subscribeArgs:U({lobby_id:V().nullable().optional(),channel_id:V().nullable().optional()})},[Ri.SPEAKING_STOP]:{payload:zi.extend({evt:wn(Ri.SPEAKING_STOP),data:U({lobby_id:V().optional(),channel_id:V().optional(),user_id:V()})}),subscribeArgs:U({lobby_id:V().nullable().optional(),channel_id:V().nullable().optional()})},[Ri.ACTIVITY_LAYOUT_MODE_UPDATE]:{payload:zi.extend({evt:wn(Ri.ACTIVITY_LAYOUT_MODE_UPDATE),data:U({layout_mode:ur(Fi)})})},[Ri.ORIENTATION_UPDATE]:{payload:zi.extend({evt:wn(Ri.ORIENTATION_UPDATE),data:U({screen_orientation:ur(Ni),orientation:En(cr)})})},[Ri.CURRENT_USER_UPDATE]:{payload:zi.extend({evt:wn(Ri.CURRENT_USER_UPDATE),data:Vr})},[Ri.CURRENT_GUILD_MEMBER_UPDATE]:{payload:zi.extend({evt:wn(Ri.CURRENT_GUILD_MEMBER_UPDATE),data:Ur}),subscribeArgs:U({guild_id:V()})},[Ri.ENTITLEMENT_CREATE]:{payload:zi.extend({evt:wn(Ri.ENTITLEMENT_CREATE),data:U({entitlement:Oi})})},[Ri.THERMAL_STATE_UPDATE]:{payload:zi.extend({evt:wn(Ri.THERMAL_STATE_UPDATE),data:U({thermal_state:Mi})})},[Ri.ACTIVITY_INSTANCE_PARTICIPANTS_UPDATE]:{payload:zi.extend({evt:wn(Ri.ACTIVITY_INSTANCE_PARTICIPANTS_UPDATE),data:U({participants:gr.shape.participants})})},[Ri.RELATIONSHIP_UPDATE]:{payload:zi.extend({evt:wn(Ri.RELATIONSHIP_UPDATE),data:Br})},[Ri.ACTIVITY_JOIN]:{payload:zi.extend({evt:wn(Ri.ACTIVITY_JOIN),data:U({applicationId:V(),secret:V()})})},[Ri.QUEST_ENROLLMENT_STATUS_UPDATE]:{payload:zi.extend({evt:wn(Ri.QUEST_ENROLLMENT_STATUS_UPDATE),data:U({quest_id:V(),is_enrolled:rn(),enrolled_at:V().date()})})}};function Wi(e,t){throw t}var Gi=U({}).nullable(),Ki=U({code:V()}),qi=U({guilds:pn(U({id:V(),name:V()}))}),Ji=U({id:V(),name:V(),icon_url:V().optional(),members:pn(Hr)}),Yi=U({id:V(),type:ur(Qr),guild_id:V().optional().nullable(),name:V().optional().nullable(),topic:V().optional().nullable(),bitrate:H().optional().nullable(),user_limit:H().optional().nullable(),position:H().optional().nullable(),voice_states:pn(Kr),messages:pn(gi)}),Xi=U({channels:pn($r)});Yi.nullable();var Zi=Yi.nullable(),Qi=Yi.nullable();U({input:Si,output:Si,mode:xi,automatic_gain_control:rn(),echo_cancellation:rn(),noise_suppression:rn(),qos:rn(),silence_warning:rn(),deaf:rn(),mute:rn()});var $i=U({evt:V()}),ea=U({shortcut:yi}),ta=Yr,na=U({skus:pn(Ei)}),ra=U({entitlements:pn(Oi)}),ia=pn(Oi).nullable(),aa=U({use_interactive_pip:rn()}),oa=U({locale:V()}),sa=U({enabled:rn()}),ca=U({permissions:nn().or(V())}),la=dr(U({opened:rn().or(cn())}).default({opened:null})),ua=U({iosKeyboardResizesView:kn(rn())}),da=Lr.extend({cmd:En(G),evt:cn()});function fa({cmd:e,data:t}){switch(e){case G.AUTHORIZE:return Ki.parse(t);case G.CAPTURE_SHORTCUT:return ea.parse(t);case G.ENCOURAGE_HW_ACCELERATION:return sa.parse(t);case G.GET_CHANNEL:return Yi.parse(t);case G.GET_CHANNELS:return Xi.parse(t);case G.GET_CHANNEL_PERMISSIONS:return ca.parse(t);case G.GET_GUILD:return Ji.parse(t);case G.GET_GUILDS:return qi.parse(t);case G.GET_PLATFORM_BEHAVIORS:return ua.parse(t);case G.GET_CHANNEL:return Yi.parse(t);case G.SELECT_TEXT_CHANNEL:return Qi.parse(t);case G.SELECT_VOICE_CHANNEL:return Zi.parse(t);case G.SET_ACTIVITY:return ta.parse(t);case G.GET_SKUS_EMBEDDED:return na.parse(t);case G.GET_ENTITLEMENTS_EMBEDDED:return ra.parse(t);case G.SET_CONFIG:return aa.parse(t);case G.START_PURCHASE:return ia.parse(t);case G.SUBSCRIBE:case G.UNSUBSCRIBE:return $i.parse(t);case G.USER_SETTINGS_GET_LOCALE:return oa.parse(t);case G.OPEN_EXTERNAL_LINK:return la.parse(t);case G.SET_ORIENTATION_LOCK_STATE:case G.SET_CERTIFIED_DEVICES:case G.SEND_ANALYTICS_EVENT:case G.OPEN_INVITE_DIALOG:case G.CAPTURE_LOG:case G.GET_SKUS:case G.GET_ENTITLEMENTS:return Gi.parse(t);case G.AUTHENTICATE:case G.GET_ACTIVITY_INSTANCE_CONNECTED_PARTICIPANTS:case G.GET_QUEST:case G.GET_QUEST_ENROLLMENT_STATUS:case G.GET_RELATIONSHIPS:case G.GET_USER:case G.INITIATE_IMAGE_UPLOAD:case G.INVITE_USER_EMBEDDED:case G.OPEN_SHARE_MOMENT_DIALOG:case G.QUEST_START_TIMER:case G.REQUEST_PROXY_TICKET_REFRESH:case G.SHARE_INTERACTION:case G.SHARE_LINK:let{response:n}=Pr[e];return n.parse(t);default:Wi(e,Error(`Unrecognized command ${e}`))}}function pa(e){return Object.assign(Object.assign({},e),{data:fa(e)})}U({frame_id:V(),platform:En(lr).optional().nullable()}),U({v:wn(1),encoding:wn(`json`).optional(),client_id:V(),frame_id:V()});var ma=U({code:H(),message:V().optional()}),ha=U({evt:V().nullable(),nonce:V().nullable(),data:un().nullable(),cmd:V()}).passthrough();function ga(e){let t=ha.parse(e);return t.evt==null?pa(da.passthrough().parse(t)):t.evt===`ERROR`?Bi.parse(t):Hi(Vi.parse(t))}function _a(e,t,n,r=()=>void 0){let i=Lr.extend({cmd:wn(t),data:n});return async n=>{let a=await e({cmd:t,args:n,transfer:r(n)});return i.parse(a).data}}function va(e,t=()=>void 0){let n=Pr[e].response,r=Lr.extend({cmd:wn(e),data:n});return n=>async i=>{let a=await n({cmd:e,args:i,transfer:t(i)});return r.parse(a).data}}var ya=e=>_a(e,G.AUTHORIZE,Ki),ba=e=>_a(e,G.CAPTURE_LOG,Gi),xa=e=>_a(e,G.ENCOURAGE_HW_ACCELERATION,sa),Sa=e=>_a(e,G.GET_CHANNEL,Yi),Ca=e=>_a(e,G.GET_ENTITLEMENTS_EMBEDDED,ra),wa=e=>_a(e,G.GET_SKUS_EMBEDDED,na),Ta=e=>_a(e,G.GET_CHANNEL_PERMISSIONS,ca),Ea=e=>_a(e,G.GET_PLATFORM_BEHAVIORS,ua),Da=e=>_a(e,G.OPEN_EXTERNAL_LINK,la),Oa=e=>_a(e,G.OPEN_INVITE_DIALOG,Gi);Yr.pick({state:!0,state_url:!0,details:!0,details_url:!0,timestamps:!0,assets:!0,party:!0,secrets:!0,instance:!0,type:!0}).extend({type:Yr.shape.type.optional(),instance:Yr.shape.instance.optional()}).nullable();var ka=e=>_a(e,G.SET_ACTIVITY,ta),Aa=e=>_a(e,G.SET_CONFIG,aa);function ja({sendCommand:e,cmd:t,response:n,fallbackTransform:r,transferTransform:i=()=>void 0}){let a=Lr.extend({cmd:wn(t),data:n});return async n=>{try{let r=await e({cmd:t,args:n,transfer:i(n)});return a.parse(r).data}catch(o){if(o.code===sr.INVALID_PAYLOAD){let o=r(n),s=await e({cmd:t,args:o,transfer:i(o)});return a.parse(s).data}else throw o}}}var Ma=e=>({lock_state:e.lock_state,picture_in_picture_lock_state:e.picture_in_picture_lock_state}),Na=e=>ja({sendCommand:e,cmd:G.SET_ORIENTATION_LOCK_STATE,response:Gi,fallbackTransform:Ma}),Pa=e=>_a(e,G.START_PURCHASE,ia),Fa=e=>_a(e,G.USER_SETTINGS_GET_LOCALE,oa),Ia=va(jr.AUTHENTICATE),La=va(jr.GET_ACTIVITY_INSTANCE_CONNECTED_PARTICIPANTS),Ra=va(jr.GET_QUEST),za=va(jr.GET_QUEST_ENROLLMENT_STATUS),Ba=va(jr.GET_RELATIONSHIPS),Va=va(jr.GET_USER),Ha=va(jr.INITIATE_IMAGE_UPLOAD),Ua=va(jr.INVITE_USER_EMBEDDED),Wa=va(jr.OPEN_SHARE_MOMENT_DIALOG),Ga=va(jr.QUEST_START_TIMER),Ka=va(jr.REQUEST_PROXY_TICKET_REFRESH),qa=va(jr.SHARE_INTERACTION),Ja=va(jr.SHARE_LINK);function Ya(e){return{authorize:ya(e),captureLog:ba(e),encourageHardwareAcceleration:xa(e),getChannel:Sa(e),getChannelPermissions:Ta(e),getEntitlements:Ca(e),getPlatformBehaviors:Ea(e),getSkus:wa(e),openExternalLink:Da(e),openInviteDialog:Oa(e),setActivity:ka(e),setConfig:Aa(e),setOrientationLockState:Na(e),startPurchase:Pa(e),userSettingsGetLocale:Fa(e),getInstanceConnectedParticipants:La(e),authenticate:Ia(e),getActivityInstanceConnectedParticipants:La(e),getQuest:Ra(e),getQuestEnrollmentStatus:za(e),getRelationships:Ba(e),getUser:Va(e),initiateImageUpload:Ha(e),inviteUserEmbedded:Ua(e),openShareMomentDialog:Wa(e),questStartTimer:Ga(e),requestProxyTicketRefresh:Ka(e),shareInteraction:qa(e),shareLink:Ja(e)}}var Xa=class extends Error{constructor(e,t=``){super(t),this.code=e,this.message=t,this.name=`Discord SDK Error`}};function Za(){return{disableConsoleLogOverride:!1}}var Qa=[`log`,`warn`,`debug`,`info`,`error`];function $a(e,t,n){let r=e[t],i=e;r&&(e[t]=function(){let e=[].slice.call(arguments);n(t,``+e.join(` `)),r.apply(i,e)})}var eo=`2.5.0`,to={randomUUID:typeof crypto<`u`&&crypto.randomUUID&&crypto.randomUUID.bind(crypto)},no,ro=new Uint8Array(16);function io(){if(!no){if(typeof crypto>`u`||!crypto.getRandomValues)throw Error(`crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported`);no=crypto.getRandomValues.bind(crypto)}return no(ro)}var ao=[];for(let e=0;e<256;++e)ao.push((e+256).toString(16).slice(1));function oo(e,t=0){return(ao[e[t+0]]+ao[e[t+1]]+ao[e[t+2]]+ao[e[t+3]]+`-`+ao[e[t+4]]+ao[e[t+5]]+`-`+ao[e[t+6]]+ao[e[t+7]]+`-`+ao[e[t+8]]+ao[e[t+9]]+`-`+ao[e[t+10]]+ao[e[t+11]]+ao[e[t+12]]+ao[e[t+13]]+ao[e[t+14]]+ao[e[t+15]]).toLowerCase()}function so(e,t,n){if(to.randomUUID&&!t&&!e)return to.randomUUID();e||={};let r=e.random??e.rng?.()??io();if(r.length<16)throw Error(`Random bytes length must be >= 16`);return r[6]=r[6]&15|64,r[8]=r[8]&63|128,oo(r)}var co;(function(e){e[e.HANDSHAKE=0]=`HANDSHAKE`,e[e.FRAME=1]=`FRAME`,e[e.CLOSE=2]=`CLOSE`,e[e.HELLO=3]=`HELLO`})(co||={});var lo=new Set(uo());function uo(){return typeof window>`u`?[]:[window.location.origin,`https://discord.com`,`https://discordapp.com`,`https://ptb.discord.com`,`https://ptb.discordapp.com`,`https://canary.discord.com`,`https://canary.discordapp.com`,`https://staging.discord.co`,`http://localhost:3333`,`https://pax.discord.com`,`null`]}function fo(){return[window.parent.opener??window.parent,document.referrer?document.referrer:`*`]}var po=class{getTransfer(e){switch(e.cmd){case G.SUBSCRIBE:case G.UNSUBSCRIBE:return;default:return e.transfer??void 0}}constructor(e,t){if(this.sdkVersion=eo,this.mobileAppVersion=null,this.source=null,this.sourceOrigin=``,this.eventBus=new Se,this.pendingCommands=new Map,this.sendCommand=e=>{var t;if(this.source==null)throw Error(`Attempting to send message before initialization`);let n=so();return(t=this.source)==null||t.postMessage([co.FRAME,Object.assign(Object.assign({},e),{nonce:n})],this.sourceOrigin,this.getTransfer(e)),new Promise((e,t)=>{this.pendingCommands.set(n,{resolve:e,reject:t})})},this.commands=Ya(this.sendCommand),this.handleMessage=e=>{if(!lo.has(e.origin))return;let t=e.data;if(!Array.isArray(t))return;let[n,r]=t;switch(n){case co.HELLO:return;case co.CLOSE:return this.handleClose(r);case co.HANDSHAKE:return this.handleHandshake();case co.FRAME:return this.handleFrame(r);default:throw Error(`Invalid message format`)}},this.isReady=!1,this.clientId=e,this.configuration=t??Za(),typeof window<`u`&&window.addEventListener(`message`,this.handleMessage),typeof window>`u`){this.frameId=``,this.instanceId=``,this.customId=null,this.referrerId=null,this.platform=lr.DESKTOP,this.guildId=null,this.channelId=null,this.locationId=null;return}let n=new URLSearchParams(this._getSearch()),r=n.get(`frame_id`);if(!r)throw Error(`frame_id query param is not defined`);this.frameId=r;let i=n.get(`instance_id`);if(!i)throw Error(`instance_id query param is not defined`);this.instanceId=i;let a=n.get(`platform`);if(!a)throw Error(`platform query param is not defined`);if(a!==lr.DESKTOP&&a!==lr.MOBILE)throw Error(`Invalid query param "platform" of "${a}". Valid values are "${lr.DESKTOP}" or "${lr.MOBILE}"`);this.platform=a,this.customId=n.get(`custom_id`),this.referrerId=n.get(`referrer_id`),this.guildId=n.get(`guild_id`),this.channelId=n.get(`channel_id`),this.locationId=n.get(`location_id`),this.mobileAppVersion=n.get(`mobile_app_version`),[this.source,this.sourceOrigin]=fo(),this.addOnReadyListener(),this.handshake()}close(e,t){var n;window.removeEventListener(`message`,this.handleMessage);let r=so();(n=this.source)==null||n.postMessage([co.CLOSE,{code:e,message:t,nonce:r}],this.sourceOrigin)}async subscribe(e,t,...n){let[r]=n,i=this.eventBus.listenerCount(e),a=this.eventBus.on(e,t);return Object.values(Ri).includes(e)&&e!==Ri.READY&&i===0&&await this.sendCommand({cmd:G.SUBSCRIBE,args:r,evt:e}),a}async unsubscribe(e,t,...n){let[r]=n;return e!==Ri.READY&&this.eventBus.listenerCount(e)===1&&await this.sendCommand({cmd:G.UNSUBSCRIBE,evt:e,args:r}),this.eventBus.off(e,t)}async ready(){this.isReady||await new Promise(e=>{this.eventBus.once(Ri.READY,e)})}parseMajorMobileVersion(){if(this.mobileAppVersion&&this.mobileAppVersion.includes(`.`))try{return parseInt(this.mobileAppVersion.split(`.`)[0])}catch{return-1}return-1}handshake(){var e;let t={v:1,encoding:`json`,client_id:this.clientId,frame_id:this.frameId},n=this.parseMajorMobileVersion();(this.platform===lr.DESKTOP||n>=250)&&(t.sdk_version=this.sdkVersion),(e=this.source)==null||e.postMessage([co.HANDSHAKE,t],this.sourceOrigin)}addOnReadyListener(){this.eventBus.once(Ri.READY,()=>{this.overrideConsoleLogging(),this.isReady=!0})}overrideConsoleLogging(){if(this.configuration.disableConsoleLogOverride)return;let e=(e,t)=>{this.commands.captureLog({level:e,message:t})};Qa.forEach(t=>{$a(console,t,e)})}handleClose(e){ma.parse(e)}handleHandshake(){}handleFrame(e){var t,n;let r;try{r=ga(e)}catch(t){console.error(`Failed to parse`,e),console.error(t);return}if(r.cmd===`DISPATCH`)this.eventBus.emit(r.evt,r.data);else{if(r.evt===`ERROR`){if(r.nonce!=null){(t=this.pendingCommands.get(r.nonce))==null||t.reject(r.data),this.pendingCommands.delete(r.nonce);return}this.eventBus.emit(`error`,new Xa(r.data.code,r.data.message))}if(r.nonce==null){console.error(`Missing nonce`,e);return}(n=this.pendingCommands.get(r.nonce))==null||n.resolve(r),this.pendingCommands.delete(r.nonce)}}_getSearch(){return typeof window>`u`?``:window.location.search}},mo=1e9,ho={precision:20,rounding:4,toExpNeg:-7,toExpPos:21,LN10:`2.302585092994045684017991454684364207601101488628772976033327900967572609677352480235997205089598298341967784042286`},go=!0,_o=`[DecimalError] `,vo=_o+`Invalid argument: `,yo=_o+`Exponent out of range: `,bo=Math.floor,xo=Math.pow,So=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,Co,wo=1e7,To=7,Eo=9007199254740991,Do=bo(Eo/To),K={};K.absoluteValue=K.abs=function(){var e=new this.constructor(this);return e.s&&=1,e},K.comparedTo=K.cmp=function(e){var t,n,r,i,a=this;if(e=new a.constructor(e),a.s!==e.s)return a.s||-e.s;if(a.e!==e.e)return a.e>e.e^a.s<0?1:-1;for(r=a.d.length,i=e.d.length,t=0,n=re.d[t]^a.s<0?1:-1;return r===i?0:r>i^a.s<0?1:-1},K.decimalPlaces=K.dp=function(){var e=this,t=e.d.length-1,n=(t-e.e)*To;if(t=e.d[t],t)for(;t%10==0;t/=10)n--;return n<0?0:n},K.dividedBy=K.div=function(e){return jo(this,new this.constructor(e))},K.dividedToIntegerBy=K.idiv=function(e){var t=this,n=t.constructor;return Ro(jo(t,new n(e),0,1),n.precision)},K.equals=K.eq=function(e){return!this.cmp(e)},K.exponent=function(){return No(this)},K.greaterThan=K.gt=function(e){return this.cmp(e)>0},K.greaterThanOrEqualTo=K.gte=function(e){return this.cmp(e)>=0},K.isInteger=K.isint=function(){return this.e>this.d.length-2},K.isNegative=K.isneg=function(){return this.s<0},K.isPositive=K.ispos=function(){return this.s>0},K.isZero=function(){return this.s===0},K.lessThan=K.lt=function(e){return this.cmp(e)<0},K.lessThanOrEqualTo=K.lte=function(e){return this.cmp(e)<1},K.logarithm=K.log=function(e){var t,n=this,r=n.constructor,i=r.precision,a=i+5;if(e===void 0)e=new r(10);else if(e=new r(e),e.s<1||e.eq(Co))throw Error(_o+`NaN`);if(n.s<1)throw Error(_o+(n.s?`NaN`:`-Infinity`));return n.eq(Co)?new r(0):(go=!1,t=jo(Io(n,a),Io(e,a),a),go=!0,Ro(t,i))},K.minus=K.sub=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?zo(t,e):Oo(t,(e.s=-e.s,e))},K.modulo=K.mod=function(e){var t,n=this,r=n.constructor,i=r.precision;if(e=new r(e),!e.s)throw Error(_o+`NaN`);return n.s?(go=!1,t=jo(n,e,0,1).times(e),go=!0,n.minus(t)):Ro(new r(n),i)},K.naturalExponential=K.exp=function(){return Mo(this)},K.naturalLogarithm=K.ln=function(){return Io(this)},K.negated=K.neg=function(){var e=new this.constructor(this);return e.s=-e.s||0,e},K.plus=K.add=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?Oo(t,e):zo(t,(e.s=-e.s,e))},K.precision=K.sd=function(e){var t,n,r,i=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(vo+e);if(t=No(i)+1,r=i.d.length-1,n=r*To+1,r=i.d[r],r){for(;r%10==0;r/=10)n--;for(r=i.d[0];r>=10;r/=10)n++}return e&&t>n?t:n},K.squareRoot=K.sqrt=function(){var e,t,n,r,i,a,o,s=this,c=s.constructor;if(s.s<1){if(!s.s)return new c(0);throw Error(_o+`NaN`)}for(e=No(s),go=!1,i=Math.sqrt(+s),i==0||i==1/0?(t=Ao(s.d),(t.length+e)%2==0&&(t+=`0`),i=Math.sqrt(t),e=bo((e+1)/2)-(e<0||e%2),i==1/0?t=`5e`+e:(t=i.toExponential(),t=t.slice(0,t.indexOf(`e`)+1)+e),r=new c(t)):r=new c(i.toString()),n=c.precision,i=o=n+3;;)if(a=r,r=a.plus(jo(s,a,o+2)).times(.5),Ao(a.d).slice(0,o)===(t=Ao(r.d)).slice(0,o)){if(t=t.slice(o-3,o+1),i==o&&t==`4999`){if(Ro(a,n+1,0),a.times(a).eq(s)){r=a;break}}else if(t!=`9999`)break;o+=4}return go=!0,Ro(r,n)},K.times=K.mul=function(e){var t,n,r,i,a,o,s,c,l,u=this,d=u.constructor,f=u.d,p=(e=new d(e)).d;if(!u.s||!e.s)return new d(0);for(e.s*=u.s,n=u.e+e.e,c=f.length,l=p.length,c=0;){for(t=0,i=c+r;i>r;)s=a[i]+p[r]*f[i-r-1]+t,a[i--]=s%wo|0,t=s/wo|0;a[i]=(a[i]+t)%wo|0}for(;!a[--o];)a.pop();return t?++n:a.shift(),e.d=a,e.e=n,go?Ro(e,d.precision):e},K.toDecimalPlaces=K.todp=function(e,t){var n=this,r=n.constructor;return n=new r(n),e===void 0?n:(ko(e,0,mo),t===void 0?t=r.rounding:ko(t,0,8),Ro(n,e+No(n)+1,t))},K.toExponential=function(e,t){var n,r=this,i=r.constructor;return e===void 0?n=Bo(r,!0):(ko(e,0,mo),t===void 0?t=i.rounding:ko(t,0,8),r=Ro(new i(r),e+1,t),n=Bo(r,!0,e+1)),n},K.toFixed=function(e,t){var n,r,i=this,a=i.constructor;return e===void 0?Bo(i):(ko(e,0,mo),t===void 0?t=a.rounding:ko(t,0,8),r=Ro(new a(i),e+No(i)+1,t),n=Bo(r.abs(),!1,e+No(r)+1),i.isneg()&&!i.isZero()?`-`+n:n)},K.toInteger=K.toint=function(){var e=this,t=e.constructor;return Ro(new t(e),No(e)+1,t.rounding)},K.toNumber=function(){return+this},K.toPower=K.pow=function(e){var t,n,r,i,a,o,s=this,c=s.constructor,l=12,u=+(e=new c(e));if(!e.s)return new c(Co);if(s=new c(s),!s.s){if(e.s<1)throw Error(_o+`Infinity`);return s}if(s.eq(Co))return s;if(r=c.precision,e.eq(Co))return Ro(s,r);if(t=e.e,n=e.d.length-1,o=t>=n,a=s.s,!o){if(a<0)throw Error(_o+`NaN`)}else if((n=u<0?-u:u)<=Eo){for(i=new c(Co),t=Math.ceil(r/To+4),go=!1;n%2&&(i=i.times(s),Vo(i.d,t)),n=bo(n/2),n!==0;)s=s.times(s),Vo(s.d,t);return go=!0,e.s<0?new c(Co).div(i):Ro(i,r)}return a=a<0&&e.d[Math.max(t,n)]&1?-1:1,s.s=1,go=!1,i=e.times(Io(s,r+l)),go=!0,i=Mo(i),i.s=a,i},K.toPrecision=function(e,t){var n,r,i=this,a=i.constructor;return e===void 0?(n=No(i),r=Bo(i,n<=a.toExpNeg||n>=a.toExpPos)):(ko(e,1,mo),t===void 0?t=a.rounding:ko(t,0,8),i=Ro(new a(i),e,t),n=No(i),r=Bo(i,e<=n||n<=a.toExpNeg,e)),r},K.toSignificantDigits=K.tosd=function(e,t){var n=this,r=n.constructor;return e===void 0?(e=r.precision,t=r.rounding):(ko(e,1,mo),t===void 0?t=r.rounding:ko(t,0,8)),Ro(new r(n),e,t)},K.toString=K.valueOf=K.val=K.toJSON=K[Symbol.for(`nodejs.util.inspect.custom`)]=function(){var e=this,t=No(e),n=e.constructor;return Bo(e,t<=n.toExpNeg||t>=n.toExpPos)};function Oo(e,t){var n,r,i,a,o,s,c,l,u=e.constructor,d=u.precision;if(!e.s||!t.s)return t.s||(t=new u(e)),go?Ro(t,d):t;if(c=e.d,l=t.d,o=e.e,i=t.e,c=c.slice(),a=o-i,a){for(a<0?(r=c,a=-a,s=l.length):(r=l,i=o,s=c.length),o=Math.ceil(d/To),s=o>s?o+1:s+1,a>s&&(a=s,r.length=1),r.reverse();a--;)r.push(0);r.reverse()}for(s=c.length,a=l.length,s-a<0&&(a=s,r=l,l=c,c=r),n=0;a;)n=(c[--a]=c[a]+l[a]+n)/wo|0,c[a]%=wo;for(n&&(c.unshift(n),++i),s=c.length;c[--s]==0;)c.pop();return t.d=c,t.e=i,go?Ro(t,d):t}function ko(e,t,n){if(e!==~~e||en)throw Error(vo+e)}function Ao(e){var t,n,r,i=e.length-1,a=``,o=e[0];if(i>0){for(a+=o,t=1;tr?1:-1;else for(i=a=0;it[i]?1:-1;break}return a}function n(e,t,n){for(var r=0;n--;)e[n]-=r,r=+(e[n]1;)e.shift()}return function(r,i,a,o){var s,c,l,u,d,f,p,m,h,g,_,v,y,b,x,S,C,w,T=r.constructor,E=r.s==i.s?1:-1,D=r.d,O=i.d;if(!r.s)return new T(r);if(!i.s)throw Error(_o+`Division by zero`);for(c=r.e-i.e,C=O.length,x=D.length,p=new T(E),m=p.d=[],l=0;O[l]==(D[l]||0);)++l;if(O[l]>(D[l]||0)&&--c,v=a==null?a=T.precision:o?a+(No(r)-No(i))+1:a,v<0)return new T(0);if(v=v/To+2|0,l=0,C==1)for(u=0,O=O[0],v++;(l1&&(O=e(O,u),D=e(D,u),C=O.length,x=D.length),b=C,h=D.slice(0,C),g=h.length;g=wo/2&&++S;do u=0,s=t(O,h,C,g),s<0?(_=h[0],C!=g&&(_=_*wo+(h[1]||0)),u=_/S|0,u>1?(u>=wo&&(u=wo-1),d=e(O,u),f=d.length,g=h.length,s=t(d,h,f,g),s==1&&(u--,n(d,C16)throw Error(yo+No(e));if(!e.s)return new u(Co);for(t==null?(go=!1,s=d):s=t,o=new u(.03125);e.abs().gte(.1);)e=e.times(o),l+=5;for(r=Math.log(xo(2,l))/Math.LN10*2+5|0,s+=r,n=i=a=new u(Co),u.precision=s;;){if(i=Ro(i.times(e),s),n=n.times(++c),o=a.plus(jo(i,n,s)),Ao(o.d).slice(0,s)===Ao(a.d).slice(0,s)){for(;l--;)a=Ro(a.times(a),s);return u.precision=d,t==null?(go=!0,Ro(a,d)):a}a=o}}function No(e){for(var t=e.e*To,n=e.d[0];n>=10;n/=10)t++;return t}function Po(e,t,n){if(t>e.LN10.sd())throw go=!0,n&&(e.precision=n),Error(_o+`LN10 precision limit exceeded`);return Ro(new e(e.LN10),t)}function Fo(e){for(var t=``;e--;)t+=`0`;return t}function Io(e,t){var n,r,i,a,o,s,c,l,u,d=1,f=10,p=e,m=p.d,h=p.constructor,g=h.precision;if(p.s<1)throw Error(_o+(p.s?`NaN`:`-Infinity`));if(p.eq(Co))return new h(0);if(t==null?(go=!1,l=g):l=t,p.eq(10))return t??(go=!0),Po(h,l);if(l+=f,h.precision=l,n=Ao(m),r=n.charAt(0),a=No(p),Math.abs(a)<0x5543df729c000){for(;r<7&&r!=1||r==1&&n.charAt(1)>3;)p=p.times(e),n=Ao(p.d),r=n.charAt(0),d++;a=No(p),r>1?(p=new h(`0.`+n),a++):p=new h(r+`.`+n.slice(1))}else return c=Po(h,l+2,g).times(a+``),p=Io(new h(r+`.`+n.slice(1)),l-f).plus(c),h.precision=g,t==null?(go=!0,Ro(p,g)):p;for(s=o=p=jo(p.minus(Co),p.plus(Co),l),u=Ro(p.times(p),l),i=3;;){if(o=Ro(o.times(u),l),c=s.plus(jo(o,new h(i),l)),Ao(c.d).slice(0,l)===Ao(s.d).slice(0,l))return s=s.times(2),a!==0&&(s=s.plus(Po(h,l+2,g).times(a+``))),s=jo(s,new h(d),l),h.precision=g,t==null?(go=!0,Ro(s,g)):s;s=c,i+=2}}function Lo(e,t){var n,r,i;for((n=t.indexOf(`.`))>-1&&(t=t.replace(`.`,``)),(r=t.search(/e/i))>0?(n<0&&(n=r),n+=+t.slice(r+1),t=t.substring(0,r)):n<0&&(n=t.length),r=0;t.charCodeAt(r)===48;)++r;for(i=t.length;t.charCodeAt(i-1)===48;)--i;if(t=t.slice(r,i),t){if(i-=r,n=n-r-1,e.e=bo(n/To),e.d=[],r=(n+1)%To,n<0&&(r+=To),rDo||e.e<-Do))throw Error(yo+n)}else e.s=0,e.e=0,e.d=[0];return e}function Ro(e,t,n){var r,i,a,o,s,c,l,u,d=e.d;for(o=1,a=d[0];a>=10;a/=10)o++;if(r=t-o,r<0)r+=To,i=t,l=d[u=0];else{if(u=Math.ceil((r+1)/To),a=d.length,u>=a)return e;for(l=a=d[u],o=1;a>=10;a/=10)o++;r%=To,i=r-To+o}if(n!==void 0&&(a=xo(10,o-i-1),s=l/a%10|0,c=t<0||d[u+1]!==void 0||l%a,c=n<4?(s||c)&&(n==0||n==(e.s<0?3:2)):s>5||s==5&&(n==4||c||n==6&&(r>0?i>0?l/xo(10,o-i):0:d[u-1])%10&1||n==(e.s<0?8:7))),t<1||!d[0])return c?(a=No(e),d.length=1,t=t-a-1,d[0]=xo(10,(To-t%To)%To),e.e=bo(-t/To)||0):(d.length=1,d[0]=e.e=e.s=0),e;if(r==0?(d.length=u,a=1,u--):(d.length=u+1,a=xo(10,To-r),d[u]=i>0?(l/xo(10,o-i)%xo(10,i)|0)*a:0),c)for(;;)if(u==0){(d[0]+=a)==wo&&(d[0]=1,++e.e);break}else{if(d[u]+=a,d[u]!=wo)break;d[u--]=0,a=1}for(r=d.length;d[--r]===0;)d.pop();if(go&&(e.e>Do||e.e<-Do))throw Error(yo+No(e));return e}function zo(e,t){var n,r,i,a,o,s,c,l,u,d,f=e.constructor,p=f.precision;if(!e.s||!t.s)return t.s?t.s=-t.s:t=new f(e),go?Ro(t,p):t;if(c=e.d,d=t.d,r=t.e,l=e.e,c=c.slice(),o=l-r,o){for(u=o<0,u?(n=c,o=-o,s=d.length):(n=d,r=l,s=c.length),i=Math.max(Math.ceil(p/To),s)+2,o>i&&(o=i,n.length=1),n.reverse(),i=o;i--;)n.push(0);n.reverse()}else{for(i=c.length,s=d.length,u=i0;--i)c[s++]=0;for(i=d.length;i>o;){if(c[--i]0?a=a.charAt(0)+`.`+a.slice(1)+Fo(r):o>1&&(a=a.charAt(0)+`.`+a.slice(1)),a=a+(i<0?`e`:`e+`)+i):i<0?(a=`0.`+Fo(-i-1)+a,n&&(r=n-o)>0&&(a+=Fo(r))):i>=o?(a+=Fo(i+1-o),n&&(r=n-i-1)>0&&(a=a+`.`+Fo(r))):((r=i+1)0&&(i+1===o&&(a+=`.`),a+=Fo(r))),e.s<0?`-`+a:a}function Vo(e,t){if(e.length>t)return e.length=t,!0}function Ho(e){var t,n,r;function i(e){var t=this;if(!(t instanceof i))return new i(e);if(t.constructor=i,e instanceof i){t.s=e.s,t.e=e.e,t.d=(e=e.d)?e.slice():e;return}if(typeof e==`number`){if(e*0!=0)throw Error(vo+e);if(e>0)t.s=1;else if(e<0)e=-e,t.s=-1;else{t.s=0,t.e=0,t.d=[0];return}if(e===~~e&&e<1e7){t.e=0,t.d=[e];return}return Lo(t,e.toString())}else if(typeof e!=`string`)throw Error(vo+e);if(e.charCodeAt(0)===45?(e=e.slice(1),t.s=-1):t.s=1,So.test(e))Lo(t,e);else throw Error(vo+e)}if(i.prototype=K,i.ROUND_UP=0,i.ROUND_DOWN=1,i.ROUND_CEIL=2,i.ROUND_FLOOR=3,i.ROUND_HALF_UP=4,i.ROUND_HALF_DOWN=5,i.ROUND_HALF_EVEN=6,i.ROUND_HALF_CEIL=7,i.ROUND_HALF_FLOOR=8,i.clone=Ho,i.config=i.set=Uo,e===void 0&&(e={}),e)for(r=[`precision`,`rounding`,`toExpNeg`,`toExpPos`,`LN10`],t=0;t=i[t+1]&&r<=i[t+2])this[n]=r;else throw Error(vo+n+`: `+r);if((r=e[n=`LN10`])!==void 0)if(r==Math.LN10)this[n]=new this(r);else throw Error(vo+n+`: `+r);return this}Co=new(Ho(ho))(1);var q;(function(e){e.AED=`aed`,e.AFN=`afn`,e.ALL=`all`,e.AMD=`amd`,e.ANG=`ang`,e.AOA=`aoa`,e.ARS=`ars`,e.AUD=`aud`,e.AWG=`awg`,e.AZN=`azn`,e.BAM=`bam`,e.BBD=`bbd`,e.BDT=`bdt`,e.BGN=`bgn`,e.BHD=`bhd`,e.BIF=`bif`,e.BMD=`bmd`,e.BND=`bnd`,e.BOB=`bob`,e.BOV=`bov`,e.BRL=`brl`,e.BSD=`bsd`,e.BTN=`btn`,e.BWP=`bwp`,e.BYN=`byn`,e.BYR=`byr`,e.BZD=`bzd`,e.CAD=`cad`,e.CDF=`cdf`,e.CHE=`che`,e.CHF=`chf`,e.CHW=`chw`,e.CLF=`clf`,e.CLP=`clp`,e.CNY=`cny`,e.COP=`cop`,e.COU=`cou`,e.CRC=`crc`,e.CUC=`cuc`,e.CUP=`cup`,e.CVE=`cve`,e.CZK=`czk`,e.DJF=`djf`,e.DKK=`dkk`,e.DOP=`dop`,e.DZD=`dzd`,e.EGP=`egp`,e.ERN=`ern`,e.ETB=`etb`,e.EUR=`eur`,e.FJD=`fjd`,e.FKP=`fkp`,e.GBP=`gbp`,e.GEL=`gel`,e.GHS=`ghs`,e.GIP=`gip`,e.GMD=`gmd`,e.GNF=`gnf`,e.GTQ=`gtq`,e.GYD=`gyd`,e.HKD=`hkd`,e.HNL=`hnl`,e.HRK=`hrk`,e.HTG=`htg`,e.HUF=`huf`,e.IDR=`idr`,e.ILS=`ils`,e.INR=`inr`,e.IQD=`iqd`,e.IRR=`irr`,e.ISK=`isk`,e.JMD=`jmd`,e.JOD=`jod`,e.JPY=`jpy`,e.KES=`kes`,e.KGS=`kgs`,e.KHR=`khr`,e.KMF=`kmf`,e.KPW=`kpw`,e.KRW=`krw`,e.KWD=`kwd`,e.KYD=`kyd`,e.KZT=`kzt`,e.LAK=`lak`,e.LBP=`lbp`,e.LKR=`lkr`,e.LRD=`lrd`,e.LSL=`lsl`,e.LTL=`ltl`,e.LVL=`lvl`,e.LYD=`lyd`,e.MAD=`mad`,e.MDL=`mdl`,e.MGA=`mga`,e.MKD=`mkd`,e.MMK=`mmk`,e.MNT=`mnt`,e.MOP=`mop`,e.MRO=`mro`,e.MUR=`mur`,e.MVR=`mvr`,e.MWK=`mwk`,e.MXN=`mxn`,e.MXV=`mxv`,e.MYR=`myr`,e.MZN=`mzn`,e.NAD=`nad`,e.NGN=`ngn`,e.NIO=`nio`,e.NOK=`nok`,e.NPR=`npr`,e.NZD=`nzd`,e.OMR=`omr`,e.PAB=`pab`,e.PEN=`pen`,e.PGK=`pgk`,e.PHP=`php`,e.PKR=`pkr`,e.PLN=`pln`,e.PYG=`pyg`,e.QAR=`qar`,e.RON=`ron`,e.RSD=`rsd`,e.RUB=`rub`,e.RWF=`rwf`,e.SAR=`sar`,e.SBD=`sbd`,e.SCR=`scr`,e.SDG=`sdg`,e.SEK=`sek`,e.SGD=`sgd`,e.SHP=`shp`,e.SLL=`sll`,e.SOS=`sos`,e.SRD=`srd`,e.SSP=`ssp`,e.STD=`std`,e.SVC=`svc`,e.SYP=`syp`,e.SZL=`szl`,e.THB=`thb`,e.TJS=`tjs`,e.TMT=`tmt`,e.TND=`tnd`,e.TOP=`top`,e.TRY=`try`,e.TTD=`ttd`,e.TWD=`twd`,e.TZS=`tzs`,e.UAH=`uah`,e.UGX=`ugx`,e.USD=`usd`,e.USN=`usn`,e.USS=`uss`,e.UYI=`uyi`,e.UYU=`uyu`,e.UZS=`uzs`,e.VEF=`vef`,e.VND=`vnd`,e.VUV=`vuv`,e.WST=`wst`,e.XAF=`xaf`,e.XAG=`xag`,e.XAU=`xau`,e.XBA=`xba`,e.XBB=`xbb`,e.XBC=`xbc`,e.XBD=`xbd`,e.XCD=`xcd`,e.XDR=`xdr`,e.XFU=`xfu`,e.XOF=`xof`,e.XPD=`xpd`,e.XPF=`xpf`,e.XPT=`xpt`,e.XSU=`xsu`,e.XTS=`xts`,e.XUA=`xua`,e.YER=`yer`,e.ZAR=`zar`,e.ZMW=`zmw`,e.ZWL=`zwl`})(q||={}),q.AED,q.AFN,q.ALL,q.AMD,q.ANG,q.AOA,q.ARS,q.AUD,q.AWG,q.AZN,q.BAM,q.BBD,q.BDT,q.BGN,q.BHD,q.BIF,q.BMD,q.BND,q.BOB,q.BOV,q.BRL,q.BSD,q.BTN,q.BWP,q.BYR,q.BYN,q.BZD,q.CAD,q.CDF,q.CHE,q.CHF,q.CHW,q.CLF,q.CLP,q.CNY,q.COP,q.COU,q.CRC,q.CUC,q.CUP,q.CVE,q.CZK,q.DJF,q.DKK,q.DOP,q.DZD,q.EGP,q.ERN,q.ETB,q.EUR,q.FJD,q.FKP,q.GBP,q.GEL,q.GHS,q.GIP,q.GMD,q.GNF,q.GTQ,q.GYD,q.HKD,q.HNL,q.HRK,q.HTG,q.HUF,q.IDR,q.ILS,q.INR,q.IQD,q.IRR,q.ISK,q.JMD,q.JOD,q.JPY,q.KES,q.KGS,q.KHR,q.KMF,q.KPW,q.KRW,q.KWD,q.KYD,q.KZT,q.LAK,q.LBP,q.LKR,q.LRD,q.LSL,q.LTL,q.LVL,q.LYD,q.MAD,q.MDL,q.MGA,q.MKD,q.MMK,q.MNT,q.MOP,q.MRO,q.MUR,q.MVR,q.MWK,q.MXN,q.MXV,q.MYR,q.MZN,q.NAD,q.NGN,q.NIO,q.NOK,q.NPR,q.NZD,q.OMR,q.PAB,q.PEN,q.PGK,q.PHP,q.PKR,q.PLN,q.PYG,q.QAR,q.RON,q.RSD,q.RUB,q.RWF,q.SAR,q.SBD,q.SCR,q.SDG,q.SEK,q.SGD,q.SHP,q.SLL,q.SOS,q.SRD,q.SSP,q.STD,q.SVC,q.SYP,q.SZL,q.THB,q.TJS,q.TMT,q.TND,q.TOP,q.TRY,q.TTD,q.TWD,q.TZS,q.UAH,q.UGX,q.USD,q.USN,q.USS,q.UYI,q.UYU,q.UZS,q.VEF,q.VND,q.VUV,q.WST,q.XAF,q.XAG,q.XAU,q.XBA,q.XBB,q.XBC,q.XBD,q.XCD,q.XDR,q.XFU,q.XOF,q.XPD,q.XPF,q.XPT,q.XSU,q.XTS,q.XUA,q.YER,q.ZAR,q.ZMW,q.ZWL;var Wo={exports:{}};Wo.exports;var Go;function Ko(){return Go?Wo.exports:(Go=1,(function(e,t){var n=`__lodash_hash_undefined__`,r=9007199254740991,i=`[object Arguments]`,a=`[object Array]`,o=`[object Boolean]`,s=`[object Date]`,c=`[object Error]`,l=`[object Function]`,u=`[object Map]`,d=`[object Number]`,f=`[object Object]`,p=`[object Promise]`,m=`[object RegExp]`,h=`[object Set]`,g=`[object String]`,_=`[object Symbol]`,v=`[object WeakMap]`,y=`[object ArrayBuffer]`,b=`[object DataView]`,x=`[object Float32Array]`,S=`[object Float64Array]`,C=`[object Int8Array]`,w=`[object Int16Array]`,T=`[object Int32Array]`,E=`[object Uint8Array]`,D=`[object Uint8ClampedArray]`,O=`[object Uint16Array]`,ee=`[object Uint32Array]`,k=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,te=/^\w*$/,ne=/^\./,re=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,ie=/[\\^$.*+?()[\]{}|]/g,ae=/\\(\\)?/g,oe=/^\[object .+?Constructor\]$/,se=/^(?:0|[1-9]\d*)$/,A={};A[x]=A[S]=A[C]=A[w]=A[T]=A[E]=A[D]=A[O]=A[ee]=!0,A[i]=A[a]=A[y]=A[o]=A[b]=A[s]=A[c]=A[l]=A[u]=A[d]=A[f]=A[m]=A[h]=A[g]=A[v]=!1;var ce=typeof _e==`object`&&_e&&_e.Object===Object&&_e,le=typeof self==`object`&&self&&self.Object===Object&&self,ue=ce||le||globalThis,de=t&&!t.nodeType&&t,j=de&&e&&!e.nodeType&&e,fe=j&&j.exports===de&&ce.process,pe=function(){try{return fe&&fe.binding(`util`)}catch{}}(),me=pe&&pe.isTypedArray;function he(e,t){for(var n=-1,r=e?e.length:0;++n-1}function it(e,t){var n=this.__data__,r=xt(n,e);return r<0?n.push([e,t]):n[r][1]=t,this}$e.prototype.clear=et,$e.prototype.delete=tt,$e.prototype.get=nt,$e.prototype.has=rt,$e.prototype.set=it;function at(e){var t=-1,n=e?e.length:0;for(this.clear();++ts))return!1;var l=a.get(e);if(l&&a.get(t))return l==t;var u=-1,d=!0,f=i&1?new dt:void 0;for(a.set(e,t),a.set(t,e);++u-1&&e%1==0&&e-1&&e%1==0&&e<=r}function fn(e){var t=typeof e;return!!e&&(t==`object`||t==`function`)}function pn(e){return!!e&&typeof e==`object`}function U(e){return typeof e==`symbol`||pn(e)&&Oe.call(e)==_}var mn=me?be(me):Mt;function hn(e){return e==null?``:Rt(e)}function gn(e,t,n){var r=e==null?void 0:Tt(e,t);return r===void 0?n:r}function _n(e,t){return e!=null&&Jt(e,t,Dt)}function vn(e){return cn(e)?bt(e):Pt(e)}function yn(e,t,n){var r=sn(e)||mn(e);if(t=Nt(t),n==null)if(r||fn(e)){var i=e.constructor;n=r?sn(e)?new i:[]:un(i)?St(je(e)):{}}else n={};return(r?he:wt)(e,function(e,r,i){return t(n,e,r,i)}),n}function bn(e){return e}function xn(e){return Xt(e)?ve(tn(e)):Lt(e)}e.exports=yn})(Wo,Wo.exports),Wo.exports)}Ko();var{Commands:qo}=Fr,Jo=[`identify`,`guilds.members.read`];function Yo(e,t){if(e instanceof j)return e;if(typeof e==`object`&&e&&`code`in e){let n=e.code,r=Object.values(sr).filter(e=>typeof e==`number`);if(typeof n==`number`&&r.includes(n))return new j(`${t}_${n}`)}return new j(t)}var Xo=15e3,Zo=12e4,Qo=15e3;function $o(e=window.location.search){let t=new URLSearchParams(e),n=t.getAll(`frame_id`),r=t.getAll(`platform`);if(n.length!==1||n[0]===void 0||n[0].length===0||n[0].length>255||r.length!==1||![`desktop`,`mobile`].includes(r[0]??``))throw new j(`invalid_launch`)}async function es(e,t,n,r,i){let a=null,o=new Promise((e,n)=>{t!==void 0&&(a=()=>n(new j(`cancelled`)),t.addEventListener(`abort`,a,{once:!0}),t.aborted&&a())}),s=null,c=new Promise((e,t)=>{s=setTimeout(()=>t(new j(r)),i)}),l=Promise.resolve().then(()=>{if(t?.aborted)throw new j(`cancelled`);return e()}).catch(e=>{throw Yo(e,n)});try{return await Promise.race([l,o,c])}finally{s!==null&&clearTimeout(s),t!==void 0&&a!==null&&t.removeEventListener(`abort`,a)}}function ts(e,t){try{e.close(or.CLOSE_NORMAL,t)}catch{}}async function ns(e,t=e=>new po(e)){let n=pe();$o();let r=await me(n,e),i;try{i=t(r.client_id)}catch(e){throw new j(Yo(e,`sdk_initialization_failed`).code,!0)}let a=()=>{if(e?.aborted)throw new j(`cancelled`)};try{if(a(),await es(()=>i.ready(),e,`sdk_ready_failed`,`sdk_ready_timeout`,Xo),a(),i.instanceId!==n)throw new j(`instance_mismatch`);let t=await es(()=>i.commands.authorize({client_id:r.client_id,response_type:`code`,state:r.state,prompt:`none`,scope:[...Jo]}),e,`authorize_failed`,`authorize_timeout`,Zo);a();let o=await he(t.code,r.state,e);if(a(),await es(()=>i.commands.authenticate({access_token:o.access_token}),e,`sdk_authenticate_failed`,`sdk_authenticate_timeout`,Qo)==null)throw new j(`sdk_authenticate_failed`);a();let s=o.ticket,c=!1;return{sdk:i,bootstrap:r,player:o.player,takeTicket:()=>{let e=s;return s=null,e},destroy:()=>{c||(c=!0,s=null,ts(i,`Hands session closed`))}}}catch(t){let n=e?.aborted?new j(`cancelled`):Yo(t,`authorization_failed`);throw n.code===`cancelled`||n.code===`instance_mismatch`||n.code.endsWith(`_timeout`)?(ts(i,`Hands authorization closed`),n):new j(n.code,!0)}}var rs={block:[55,.12,.22],hit:[85,.3,.42],counter_hit:[105,.38,.5],stun:[125,.42,.55],knockdown:[180,.62,.65]},is=class{settings;constructor(e){this.settings=e}event(e){if(!this.settings().haptics)return;let t=rs[e.kind];if(t===void 0||typeof navigator.getGamepads!=`function`)return;let n;try{n=[...navigator.getGamepads.call(navigator)]}catch{return}let r=n.find(e=>e!==null&&e.connected&&`vibrationActuator`in e)?.vibrationActuator;if(!(r==null||typeof r.playEffect!=`function`))try{Promise.resolve(r.playEffect(`dual-rumble`,{duration:Math.min(180,Math.max(0,t[0])),strongMagnitude:Math.min(.65,Math.max(0,t[1])),weakMagnitude:Math.min(.65,Math.max(0,t[2]))})).catch(()=>void 0)}catch{}}},as={KeyF:[`left`,`jab`],KeyJ:[`right`,`jab`],KeyR:[`left`,`straight`],KeyU:[`right`,`straight`],KeyG:[`left`,`hook`],KeyH:[`right`,`hook`],KeyT:[`left`,`uppercut`],KeyY:[`right`,`uppercut`]},os={KeyZ:{kind:`slip_left`},KeyX:{kind:`slip_right`},KeyC:{kind:`weave`},KeyV:{kind:`pull`},KeyB:{kind:`clinch`},KeyN:{kind:`switch_stance`},KeyM:{kind:`taunt`},Digit1:{kind:`foul`,foul:`low_blow`},Digit2:{kind:`foul`,foul:`headbutt`},ArrowLeft:{kind:`get_up_left`},ArrowRight:{kind:`get_up_right`}},ss=new Set([...Object.keys(as),...Object.keys(os),`KeyW`,`KeyA`,`KeyS`,`KeyD`,`KeyQ`,`KeyE`,`ShiftLeft`,`ShiftRight`,`AltLeft`,`AltRight`]),cs=[`Move: W up · S down · A left · D right`,`High / low guard: Q / E`,`Left/right jab: F / J`,`Left/right straight: R / U`,`Left/right hook: G / H`,`Left/right uppercut: T / Y`,`Body: Shift · Power: Alt`,`Slip: Z / X · Weave: C · Pull: V`,`Clinch: B · Stance: N · Taunt: M · Fouls: 1 / 2`,`Get-up rhythm: ← / →`,`Controller move: left stick. High / low guard: left / right shoulder (independent of punches).`,`Controller face classes: bottom jab · right straight · left hook · top uppercut.`,`Controller face hand: hold D-pad left for left hand or D-pad right for right hand, then press a face punch; otherwise punches use the right hand. A direction used for a punch is consumed and does not evade.`,`Controller modifiers: left trigger body · right trigger power.`,`Controller actions: left stick press clinch · right stick press switch stance · hold right trigger + right stick press to taunt · D-pad up weave · D-pad down pull · tap and release D-pad left/right to slip; while down, D-pad left/right performs the private get-up rhythm immediately.`,`Controller fouls: View/Back low blow · Menu/Start headbutt.`,`Right-stick gesture: horizontal 0–22.5° hook · 22.5–45° jab · 45–70° straight · 70–90° uppercut; left/right direction selects hand.`];function ls(e,t){return e.kind===t.kind?e.kind===`punch`&&t.kind===`punch`?e.hand===t.hand&&e.class===t.class&&e.target===t.target&&e.power===t.power:e.kind===`foul`&&t.kind===`foul`?e.foul===t.foul:!0:!1}function us(e,t,n){if(n<1||e.length>0&&ls(e.at(-1),t))return;let r=e.length-n+1;r>0&&e.splice(0,r),e.push(t)}var ds=class{maximum;queue=[];counter=0;listener=null;constructor(e=1){this.maximum=e}setListener(e){this.listener=e}push(e,t){if(this.maximum<1)return;let n=this.queue.at(-1);if(n!==void 0&&ls(n.action,t)){n.source=e;return}let r={...t,id:`c${this.counter+=1}`},i=this.queue.length-this.maximum+1;i>0&&this.queue.splice(0,i),this.queue.push({action:r,source:e}),this.listener?.(r)}clear(){this.queue.length=0}clearSource(e){let t=this.queue.filter(t=>t.source!==e);this.queue.splice(0,this.queue.length,...t)}drain(e){return this.queue.splice(0,e).map(e=>e.action)}};function fs(e,t,n=.18){let r=Math.hypot(e,t);if(!Number.isFinite(r)||r<=n)return{x:0,y:0};let i=(Math.min(1,r)-n)/(1-n);return{x:e/r*i,y:t/r*i}}var ps=(e,t)=>{let n=Math.atan2(Math.abs(t),Math.abs(e))*180/Math.PI;return n<22.5?`hook`:n<45?`jab`:n<70?`straight`:`uppercut`},ms=class{active=!1;hand=`right`;target=`head`;power=`normal`;peak={x:0,y:0};peakMagnitude=0;update(e,t,n,r){let i=Math.hypot(e,t);if(!this.active&&i>=.55&&Math.abs(e)>=.12)return this.active=!0,this.hand=e<0?`left`:`right`,this.target=n?`body`:`head`,this.power=r?`power`:`normal`,this.peak={x:e,y:t},this.peakMagnitude=i,null;if(!this.active)return null;if(i>this.peakMagnitude&&(this.peak={x:e,y:t},this.peakMagnitude=i),i<=.25){let e={kind:`punch`,hand:this.hand,class:ps(this.peak.x,this.peak.y),target:this.target,power:this.power};return this.reset(),e}return null}reset(){this.active=!1,this.peak={x:0,y:0},this.peakMagnitude=0}},hs=[`jab`,`straight`,`hook`,`uppercut`],gs=(e,t)=>e.buttons[t]?.pressed===!0;function _s(){let e=navigator.getGamepads;if(typeof e!=`function`)return null;try{return[...e.call(navigator)].find(e=>e!==null&&e.connected&&e.mapping===`standard`)??null}catch{return null}}var vs=class{maximumQueue;sharedActions;gesture=new ms;queue=[];previous=new Set;selectorConsumed=new Map;raf=0;currentId=null;moveX=0;moveY=0;defense=`none`;knockdown=!1;enabled=!0;disconnect=e=>{e.gamepad.id===this.currentId&&this.reset()};constructor(e=1,t){this.maximumQueue=e,this.sharedActions=t,window.addEventListener(`gamepaddisconnected`,this.disconnect),this.raf=requestAnimationFrame(()=>this.poll())}push(e){this.sharedActions===void 0?us(this.queue,e,this.maximumQueue):this.sharedActions.push(`gamepad`,e)}clearActions(){this.queue.length=0,this.sharedActions?.clear()}poll(){if(!this.enabled){this.reset(),this.schedulePoll();return}let e=_s();if(e===null){this.currentId!==null&&this.reset(),this.schedulePoll();return}this.currentId!==null&&this.currentId!==e.id&&this.reset(),this.currentId=e.id;let t=fs(e.axes[0]??0,e.axes[1]??0);this.moveX=Math.round(t.x*1e3),this.moveY=Math.round(-t.y*1e3);let n=gs(e,4)?`guard_high`:gs(e,5)?`guard_low`:`none`;n!==`none`&&n!==this.defense&&this.clearActions(),this.defense=n;let r=this.gesture.update(e.axes[2]??0,e.axes[3]??0,gs(e,6),gs(e,7));r!==null&&this.push(r);let i=hs.some((t,n)=>gs(e,n)&&!this.previous.has(n));for(let t of[14,15]){let n=gs(e,t),r=this.previous.has(t);this.knockdown?(n&&!r&&this.push({kind:t===14?`get_up_left`:`get_up_right`}),this.selectorConsumed.delete(t)):n?(r||this.selectorConsumed.set(t,!1),i&&this.selectorConsumed.set(t,!0)):r&&(this.selectorConsumed.get(t)===!1&&this.push({kind:t===14?`slip_left`:`slip_right`}),this.selectorConsumed.delete(t))}for(let t=0;tthis.poll())}setKnockdown(e){this.knockdown=e}setEnabled(e){this.enabled=e,e||this.reset()}frame(e=4){let t=this.sharedActions===void 0?this.queue.splice(0,e):[];return{moveX:this.moveX,moveY:this.moveY,defense:this.defense,actions:t}}reset(){this.currentId=null,this.moveX=this.moveY=0,this.defense=`none`,this.queue.length=0,this.sharedActions?.clearSource(`gamepad`),this.previous.clear(),this.selectorConsumed.clear(),this.gesture.reset()}destroy(){cancelAnimationFrame(this.raf),window.removeEventListener(`gamepaddisconnected`,this.disconnect),this.reset()}},ys=class{target;maximumQueue;sharedActions;held=new Set;queue=[];enabled=!0;keydown=e=>{if(!this.enabled||!ss.has(e.code)||(e.preventDefault(),e.repeat))return;this.held.add(e.code),(e.code===`KeyQ`||e.code===`KeyE`)&&this.clearActions();let t=as[e.code];if(t!==void 0)this.push({kind:`punch`,hand:t[0],class:t[1],target:this.hasShift()?`body`:`head`,power:this.hasAlt()?`power`:`normal`});else{let t=os[e.code];t!==void 0&&this.push(t)}};keyup=e=>{ss.has(e.code)&&(this.enabled&&e.preventDefault(),this.held.delete(e.code))};visibility=()=>{document.hidden&&this.reset()};blur=()=>this.reset();constructor(e=window,t=1,n){this.target=e,this.maximumQueue=t,this.sharedActions=n,e.addEventListener(`keydown`,this.keydown),e.addEventListener(`keyup`,this.keyup),e.addEventListener(`blur`,this.blur),document.addEventListener(`visibilitychange`,this.visibility)}hasShift(){return this.held.has(`ShiftLeft`)||this.held.has(`ShiftRight`)}hasAlt(){return this.held.has(`AltLeft`)||this.held.has(`AltRight`)}push(e){this.sharedActions===void 0?us(this.queue,e,this.maximumQueue):this.sharedActions.push(`keyboard`,e)}clearActions(){this.queue.length=0,this.sharedActions?.clear()}setEnabled(e){this.enabled=e,e||this.reset()}frame(e=4){let t=(this.held.has(`KeyD`)?1e3:0)-(this.held.has(`KeyA`)?1e3:0),n=(this.held.has(`KeyW`)?1e3:0)-(this.held.has(`KeyS`)?1e3:0);t!==0&&n!==0&&(t=Math.sign(t)*707,n=Math.sign(n)*707);let r=this.held.has(`KeyQ`)?`guard_high`:this.held.has(`KeyE`)?`guard_low`:`none`;return{moveX:t,moveY:n,defense:r,actions:this.sharedActions===void 0?this.queue.splice(0,e):[]}}reset(){this.held.clear(),this.queue.length=0,this.sharedActions?.clearSource(`keyboard`)}destroy(){this.reset(),this.target.removeEventListener(`keydown`,this.keydown),this.target.removeEventListener(`keyup`,this.keyup),this.target.removeEventListener(`blur`,this.blur),document.removeEventListener(`visibilitychange`,this.visibility)}},bs=class{actions=new ds(1);keyboard;gamepad;reset=()=>{this.keyboard.reset(),this.gamepad.reset(),this.actions.clear(),this.gamepad.setKnockdown(!1)};constructor(){this.keyboard=new ys(window,1,this.actions),this.gamepad=new vs(1,this.actions),window.addEventListener(`blur`,this.reset),document.addEventListener(`visibilitychange`,this.visibility)}visibility=()=>{document.hidden&&this.reset()};setActive(e){this.keyboard.setEnabled(e),this.gamepad.setEnabled(e)}setKnockdown(e){this.gamepad.setKnockdown(e)}onAction(e){this.actions.setListener(e)}frame(){let e=this.keyboard.frame(0),t=this.gamepad.frame(0);return{moveX:t.moveX===0?e.moveX:t.moveX,moveY:t.moveY===0?e.moveY:t.moveY,defense:t.defense===`none`?e.defense:t.defense,actions:this.actions.drain(4)}}destroy(){window.removeEventListener(`blur`,this.reset),document.removeEventListener(`visibilitychange`,this.visibility),this.keyboard.destroy(),this.gamepad.destroy()}},xs=(e,t,n)=>e+(t-e)*n,Ss=(e,t,n)=>({...t,x:xs(e.x,t.x,n),y:xs(e.y,t.y,n),facing:xs(e.facing,t.facing,n),velocity_x:xs(e.velocity_x,t.velocity_x,n),velocity_y:xs(e.velocity_y,t.velocity_y,n),stamina:xs(e.stamina,t.stamina,n),maximum_stamina:xs(e.maximum_stamina,t.maximum_stamina,n),conditioning:xs(e.conditioning,t.conditioning,n),guard:xs(e.guard,t.guard,n),poise:xs(e.poise,t.poise,n)}),Cs=class{maximum;snapshots=[];constructor(e=6){this.maximum=e}push(e){let t=this.snapshots.at(-1);return t!==void 0&&e.tick<=t.tick?!1:(this.snapshots.push(e),this.snapshots.length>this.maximum&&this.snapshots.shift(),!0)}latest(){return this.snapshots.at(-1)??null}sample(e){let t=this.snapshots.findIndex(t=>t.tick>=e);if(t<=0)return this.snapshots[Math.max(0,t)]??this.latest();let n=this.snapshots[t-1],r=this.snapshots[t];if(n.phase!==r.phase||n.fighters.some((e,t)=>e.knockdowns!==r.fighters[t]?.knockdowns))return r;let i=Math.max(0,Math.min(1,(e-n.tick)/Math.max(1,r.tick-n.tick)));return{...r,fighters:[Ss(n.fighters[0],r.fighters[0],i),Ss(n.fighters[1],r.fighters[1],i)]}}clear(){this.snapshots.length=0}},ws=class{highest=-1;accept(e){let t=new Set,n=e.filter(e=>e.event_id<=this.highest||t.has(e.event_id)?!1:(t.add(e.event_id),!0)).sort((e,t)=>e.event_id-t.event_id);for(let e of n)this.highest=Math.max(this.highest,e.event_id);return n}reset(){this.highest=-1}};function Ts(e=window.location){let t=new URL(`/api/hands/ws`,e.origin);if(e.protocol===`https:`)t.protocol=`wss:`;else if(e.protocol===`http:`&&[`localhost`,`127.0.0.1`,`::1`].includes(e.hostname))t.protocol=`ws:`;else throw Error(`insecure_websocket_origin`);return t.search=``,t.hash=``,t.toString()}var Es=1,Ds={moveX:0,moveY:0,defense:`none`,actions:[]},Os=class{getInput;callbacks;makeSocket;now;socket=null;reconnectTicket;reconnectTimer=null;opponentPauseTimer=null;inputTimer=null;reconnectDeadline=0;opponentPauseDeadline=0;opponentPaused=!1;attempts=0;nextSequence=0;serverTick=0;role=null;active=!1;disposed=!1;terminal=!1;inputSuppressed=!1;listenersBound=!1;constructor(e,t,n,r=e=>new WebSocket(e),i=()=>performance.now()){this.getInput=t,this.callbacks=n,this.makeSocket=r,this.now=i,this.reconnectTicket=e}start(){this.disposed||this.listenersBound||(this.listenersBound=!0,window.addEventListener(`blur`,this.onInputLoss),window.addEventListener(`focus`,this.onInputRegain),document.addEventListener(`visibilitychange`,this.onVisibilityChange),this.connect(),!this.disposed&&!this.terminal&&(this.inputTimer=window.setInterval(()=>this.flushInput(),40)))}setActive(e){this.active=e}onInputLoss=()=>{this.inputSuppressed||=(this.sendInput(Ds),!0)};onInputRegain=()=>{!document.hidden&&document.hasFocus()&&(this.inputSuppressed=!1)};onVisibilityChange=()=>{document.hidden?this.onInputLoss():this.onInputRegain()};connect(){if(this.disposed||this.terminal)return;let e=this.reconnectTicket;if(e===null){this.terminal=!0,this.stopInputLifecycle(),this.callbacks.onFreshAuth();return}let t;try{t=this.makeSocket(Ts())}catch{this.terminal=!0,this.stopInputLifecycle(),this.callbacks.onFatal(`network_unavailable`);return}this.socket=t,t.binaryType=`arraybuffer`,t.onopen=()=>{if(!(this.socket!==t||this.disposed))try{t.send(JSON.stringify({version:2,type:`authenticate`,ticket:e})),this.reconnectTicket=null}catch{this.handleClose(t)}},t.onmessage=e=>this.handleMessage(t,e),t.onerror=()=>void 0,t.onclose=()=>this.handleClose(t)}handleMessage(e,t){if(!(this.socket!==e||this.disposed||this.terminal))try{if(typeof t.data!=`string`&&!(t.data instanceof ArrayBuffer))throw Error(`unsupported_frame`);let n=A(t.data);if(this.applyMessage(n),n.type===`ticket`){try{e.send(JSON.stringify({version:2,type:`ticket_ack`,refresh_id:n.refresh_id}))}catch{this.handleClose(e)}return}this.callbacks.onMessage(n),n.type===`error`?this.terminate(n.code,e):n.type===`final`&&(this.terminal=!0,this.clearTransportReconnect(!0),this.clearOpponentPause(!0),this.stopInputLifecycle(),this.socket===e&&(this.socket=null),e.onopen=e.onmessage=e.onclose=e.onerror=null,e.close(1e3,`complete`))}catch(e){this.callbacks.onFatal(ge(e)),this.dispose()}}applyMessage(e){if(e.type===`welcome`){if(e.reconnect_ticket===void 0)throw Error(`missing_reconnect_ticket`);this.reconnectTicket=e.reconnect_ticket,this.serverTick=e.server_tick,this.role=e.role,e.role===`fighter`?this.nextSequence=Math.max(this.nextSequence,e.next_sequence):this.stopInputLifecycle(),this.attempts=0,this.clearTransportReconnect(!0)}else e.type===`ticket`?this.reconnectTicket=e.reconnect_ticket:e.type===`snapshot`?(this.serverTick=Math.max(this.serverTick,e.payload.tick),this.active=[`countdown`,`fight`,`knockdown`,`foul_recovery`].includes(e.payload.phase)):e.type===`paused`?(this.active=!1,this.startOpponentPause(e.grace_ms)):e.type===`resumed`?(this.active=!0,this.attempts=0,this.clearOpponentPause(!0)):e.type===`ready`?this.active=!0:e.type===`waiting`?this.active=!1:(e.type===`final`||e.type===`error`)&&(this.active=!1,this.clearOpponentPause(!0))}terminate(e,t){this.terminal=!0,this.active=!1,this.clearTransportReconnect(!0),this.clearOpponentPause(!0),this.stopInputLifecycle(),this.callbacks.onFatal(e),this.socket===t&&(this.socket=null,t.onopen=t.onmessage=t.onclose=t.onerror=null,t.close(1e3,`terminal`))}handleClose(e){if(this.socket!==e||(this.socket=null,this.active=!1,this.disposed||this.terminal))return;if(this.reconnectTicket===null){this.terminal=!0,this.stopInputLifecycle(),this.callbacks.onFreshAuth();return}this.clearOpponentPause(!1),this.reconnectDeadline===0&&(this.reconnectDeadline=this.now()+2e4);let t=Math.max(0,this.reconnectDeadline-this.now());if(this.callbacks.onReconnect(t),t<=0){this.terminal=!0,this.stopInputLifecycle(),this.callbacks.onFreshAuth();return}let n=Math.min(3e3,250*2**Math.min(this.attempts,4),t);this.attempts+=1,this.reconnectTimer=window.setTimeout(()=>{this.reconnectTimer=null,this.callbacks.onReconnect(Math.max(0,this.reconnectDeadline-this.now())),this.connect()},n)}sendInput(e){let t=this.socket;if(!(this.role!==`fighter`||!this.active||this.disposed||this.terminal||t?.readyState!==Es))try{t.send(le(this.nextSequence,this.serverTick,{...e,actions:e.actions.slice(0,4)})),this.nextSequence+=1}catch{this.handleClose(t)}}flushInput(){this.inputSuppressed||document.hidden||!document.hasFocus()||this.sendInput(this.getInput())}startOpponentPause(e){this.clearOpponentPause(!1),this.opponentPaused=!0,this.opponentPauseDeadline=this.now()+e,this.callbacks.onReconnect(e),e>0&&this.scheduleOpponentPauseTick()}scheduleOpponentPauseTick(){let e=Math.max(0,this.opponentPauseDeadline-this.now());if(e<=0){this.opponentPauseDeadline=0,this.callbacks.onReconnect(0);return}this.opponentPauseTimer=window.setTimeout(()=>{this.opponentPauseTimer=null;let e=Math.max(0,this.opponentPauseDeadline-this.now());this.callbacks.onReconnect(e),e>0?this.scheduleOpponentPauseTick():this.opponentPauseDeadline=0},Math.min(250,e))}clearOpponentPause(e){let t=this.opponentPaused;this.opponentPaused=!1,this.opponentPauseDeadline=0,this.opponentPauseTimer!==null&&(clearTimeout(this.opponentPauseTimer),this.opponentPauseTimer=null),e&&t&&this.callbacks.onReconnect(0)}cancelReconnect(){this.reconnectTimer!==null&&(clearTimeout(this.reconnectTimer),this.reconnectTimer=null)}clearTransportReconnect(e){let t=this.reconnectDeadline!==0;this.reconnectDeadline=0,this.cancelReconnect(),e&&t&&this.callbacks.onReconnect(0)}stopInputLifecycle(){this.inputTimer!==null&&(clearInterval(this.inputTimer),this.inputTimer=null),this.listenersBound&&=(window.removeEventListener(`blur`,this.onInputLoss),window.removeEventListener(`focus`,this.onInputRegain),document.removeEventListener(`visibilitychange`,this.onVisibilityChange),!1)}dispose(){if(this.disposed)return;this.disposed=!0,this.active=!1,this.reconnectTicket=null,this.clearTransportReconnect(!0),this.clearOpponentPause(!0),this.stopInputLifecycle();let e=this.socket;this.socket=null,e!==null&&(e.onopen=e.onmessage=e.onclose=e.onerror=null,e.close(1e3,`teardown`))}},ks=`attached`,As=1e3,js=1001,Ms=1002,Ns=1003,Ps=1004,Fs=1005,Is=1006,Ls=1007,Rs=1008,zs=1009,Bs=1010,Vs=1011,Hs=1012,Us=1013,Ws=1014,Gs=1015,Ks=1016,qs=1017,Js=1018,Ys=1020,Xs=35902,Zs=35899,Qs=1021,$s=1022,ec=1023,tc=1026,nc=1027,rc=1028,ic=1029,ac=1030,oc=1031,sc=1033,cc=33776,lc=33777,uc=33778,dc=33779,fc=35840,pc=35841,mc=35842,hc=35843,gc=36196,_c=37492,vc=37496,yc=37488,bc=37489,xc=37490,Sc=37491,Cc=37808,wc=37809,Tc=37810,Ec=37811,Dc=37812,Oc=37813,kc=37814,Ac=37815,jc=37816,Mc=37817,Nc=37818,Pc=37819,Fc=37820,Ic=37821,Lc=36492,Rc=36494,zc=36495,Bc=36283,Vc=36284,Hc=36285,Uc=36286,Wc=2200,Gc=2201,Kc=2202,qc=2300,Jc=2301,Yc=2302,Xc=2303,Zc=2400,Qc=2401,$c=2402,el=2500,tl=2501,nl=3200,rl=`srgb`,il=`srgb-linear`,al=`linear`,ol=`srgb`,sl=7680,cl=35044,ll=35048,ul=2e3;function dl(e){for(let t=e.length-1;t>=0;--t)if(e[t]>=65535)return!0;return!1}function fl(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function pl(e){return document.createElementNS(`http://www.w3.org/1999/xhtml`,e)}function ml(){let e=pl(`canvas`);return e.style.display=`block`,e}var hl={};function gl(...e){let t=`THREE.`+e.shift();console.log(t,...e)}function _l(e){let t=e[0];if(typeof t==`string`&&t.startsWith(`TSL:`)){let t=e[1];t&&t.isStackTrace?e[0]+=` `+t.getLocation():e[1]=`Stack trace not available. Enable "THREE.Node.captureStackTrace" to capture stack traces.`}return e}function J(...e){e=_l(e);let t=`THREE.`+e.shift();{let n=e[0];n&&n.isStackTrace?console.warn(n.getError(t)):console.warn(t,...e)}}function vl(...e){e=_l(e);let t=`THREE.`+e.shift();{let n=e[0];n&&n.isStackTrace?console.error(n.getError(t)):console.error(t,...e)}}function yl(...e){let t=e.join(` `);t in hl||(hl[t]=!0,J(...e))}function bl(e,t,n){return new Promise(function(r,i){function a(){switch(e.clientWaitSync(t,e.SYNC_FLUSH_COMMANDS_BIT,0)){case e.WAIT_FAILED:i();break;case e.TIMEOUT_EXPIRED:setTimeout(a,n);break;default:r()}}setTimeout(a,n)})}var xl={0:1,2:6,4:7,3:5,1:0,6:2,7:4,5:3},Sl=class{addEventListener(e,t){this._listeners===void 0&&(this._listeners={});let n=this._listeners;n[e]===void 0&&(n[e]=[]),n[e].indexOf(t)===-1&&n[e].push(t)}hasEventListener(e,t){let n=this._listeners;return n!==void 0&&n[e]!==void 0&&n[e].indexOf(t)!==-1}removeEventListener(e,t){let n=this._listeners;if(n===void 0)return;let r=n[e];if(r!==void 0){let e=r.indexOf(t);e!==-1&&r.splice(e,1)}}dispatchEvent(e){let t=this._listeners;if(t===void 0)return;let n=t[e.type];if(n!==void 0){e.target=this;let t=n.slice(0);for(let n=0,r=t.length;n>8&255]+Cl[e>>16&255]+Cl[e>>24&255]+`-`+Cl[t&255]+Cl[t>>8&255]+`-`+Cl[t>>16&15|64]+Cl[t>>24&255]+`-`+Cl[n&63|128]+Cl[n>>8&255]+`-`+Cl[n>>16&255]+Cl[n>>24&255]+Cl[r&255]+Cl[r>>8&255]+Cl[r>>16&255]+Cl[r>>24&255]).toLowerCase()}function Ol(e,t,n){return Math.max(t,Math.min(n,e))}function kl(e,t){return(e%t+t)%t}function Al(e,t,n,r,i){return r+(e-t)*(i-r)/(n-t)}function jl(e,t,n){return e===t?0:(n-e)/(t-e)}function Ml(e,t,n){return(1-n)*e+n*t}function Nl(e,t,n,r){return Ml(e,t,1-Math.exp(-n*r))}function Pl(e,t=1){return t-Math.abs(kl(e,t*2)-t)}function Fl(e,t,n){return e<=t?0:e>=n?1:(e=(e-t)/(n-t),e*e*(3-2*e))}function Il(e,t,n){return e<=t?0:e>=n?1:(e=(e-t)/(n-t),e*e*e*(e*(e*6-15)+10))}function Ll(e,t){return e+Math.floor(Math.random()*(t-e+1))}function Rl(e,t){return e+Math.random()*(t-e)}function zl(e){return e*(.5-Math.random())}function Bl(e){e!==void 0&&(wl=e);let t=wl+=1831565813;return t=Math.imul(t^t>>>15,t|1),t^=t+Math.imul(t^t>>>7,t|61),((t^t>>>14)>>>0)/4294967296}function Vl(e){return e*Tl}function Hl(e){return e*El}function Ul(e){return(e&e-1)==0&&e!==0}function Wl(e){return 2**Math.ceil(Math.log(e)/Math.LN2)}function Gl(e){return 2**Math.floor(Math.log(e)/Math.LN2)}function Kl(e,t,n,r,i){let a=Math.cos,o=Math.sin,s=a(n/2),c=o(n/2),l=a((t+r)/2),u=o((t+r)/2),d=a((t-r)/2),f=o((t-r)/2),p=a((r-t)/2),m=o((r-t)/2);switch(i){case`XYX`:e.set(s*u,c*d,c*f,s*l);break;case`YZY`:e.set(c*f,s*u,c*d,s*l);break;case`ZXZ`:e.set(c*d,c*f,s*u,s*l);break;case`XZX`:e.set(s*u,c*m,c*p,s*l);break;case`YXY`:e.set(c*p,s*u,c*m,s*l);break;case`ZYZ`:e.set(c*m,c*p,s*u,s*l);break;default:J(`MathUtils: .setQuaternionFromProperEuler() encountered an unknown order: `+i)}}function ql(e,t){switch(t.constructor){case Float32Array:return e;case Uint32Array:return e/4294967295;case Uint16Array:return e/65535;case Uint8Array:return e/255;case Int32Array:return Math.max(e/2147483647,-1);case Int16Array:return Math.max(e/32767,-1);case Int8Array:return Math.max(e/127,-1);default:throw Error(`THREE.MathUtils: Invalid component type.`)}}function Jl(e,t){switch(t.constructor){case Float32Array:return e;case Uint32Array:return Math.round(e*4294967295);case Uint16Array:return Math.round(e*65535);case Uint8Array:return Math.round(e*255);case Int32Array:return Math.round(e*2147483647);case Int16Array:return Math.round(e*32767);case Int8Array:return Math.round(e*127);default:throw Error(`THREE.MathUtils: Invalid component type.`)}}var Yl={DEG2RAD:Tl,RAD2DEG:El,generateUUID:Dl,clamp:Ol,euclideanModulo:kl,mapLinear:Al,inverseLerp:jl,lerp:Ml,damp:Nl,pingpong:Pl,smoothstep:Fl,smootherstep:Il,randInt:Ll,randFloat:Rl,randFloatSpread:zl,seededRandom:Bl,degToRad:Vl,radToDeg:Hl,isPowerOfTwo:Ul,ceilPowerOfTwo:Wl,floorPowerOfTwo:Gl,setQuaternionFromProperEuler:Kl,normalize:Jl,denormalize:ql},Y=class e{static{e.prototype.isVector2=!0}constructor(e=0,t=0){this.x=e,this.y=t}get width(){return this.x}set width(e){this.x=e}get height(){return this.y}set height(e){this.y=e}set(e,t){return this.x=e,this.y=t,this}setScalar(e){return this.x=e,this.y=e,this}setX(e){return this.x=e,this}setY(e){return this.y=e,this}setComponent(e,t){switch(e){case 0:this.x=t;break;case 1:this.y=t;break;default:throw Error(`THREE.Vector2: index is out of range: `+e)}return this}getComponent(e){switch(e){case 0:return this.x;case 1:return this.y;default:throw Error(`THREE.Vector2: index is out of range: `+e)}}clone(){return new this.constructor(this.x,this.y)}copy(e){return this.x=e.x,this.y=e.y,this}add(e){return this.x+=e.x,this.y+=e.y,this}addScalar(e){return this.x+=e,this.y+=e,this}addVectors(e,t){return this.x=e.x+t.x,this.y=e.y+t.y,this}addScaledVector(e,t){return this.x+=e.x*t,this.y+=e.y*t,this}sub(e){return this.x-=e.x,this.y-=e.y,this}subScalar(e){return this.x-=e,this.y-=e,this}subVectors(e,t){return this.x=e.x-t.x,this.y=e.y-t.y,this}multiply(e){return this.x*=e.x,this.y*=e.y,this}multiplyScalar(e){return this.x*=e,this.y*=e,this}divide(e){return this.x/=e.x,this.y/=e.y,this}divideScalar(e){return this.multiplyScalar(1/e)}applyMatrix3(e){let t=this.x,n=this.y,r=e.elements;return this.x=r[0]*t+r[3]*n+r[6],this.y=r[1]*t+r[4]*n+r[7],this}min(e){return this.x=Math.min(this.x,e.x),this.y=Math.min(this.y,e.y),this}max(e){return this.x=Math.max(this.x,e.x),this.y=Math.max(this.y,e.y),this}clamp(e,t){return this.x=Ol(this.x,e.x,t.x),this.y=Ol(this.y,e.y,t.y),this}clampScalar(e,t){return this.x=Ol(this.x,e,t),this.y=Ol(this.y,e,t),this}clampLength(e,t){let n=this.length();return this.divideScalar(n||1).multiplyScalar(Ol(n,e,t))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this}negate(){return this.x=-this.x,this.y=-this.y,this}dot(e){return this.x*e.x+this.y*e.y}cross(e){return this.x*e.y-this.y*e.x}lengthSq(){return this.x*this.x+this.y*this.y}length(){return Math.sqrt(this.x*this.x+this.y*this.y)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)}normalize(){return this.divideScalar(this.length()||1)}angle(){return Math.atan2(-this.y,-this.x)+Math.PI}angleTo(e){let t=Math.sqrt(this.lengthSq()*e.lengthSq());if(t===0)return Math.PI/2;let n=this.dot(e)/t;return Math.acos(Ol(n,-1,1))}distanceTo(e){return Math.sqrt(this.distanceToSquared(e))}distanceToSquared(e){let t=this.x-e.x,n=this.y-e.y;return t*t+n*n}manhattanDistanceTo(e){return Math.abs(this.x-e.x)+Math.abs(this.y-e.y)}setLength(e){return this.normalize().multiplyScalar(e)}lerp(e,t){return this.x+=(e.x-this.x)*t,this.y+=(e.y-this.y)*t,this}lerpVectors(e,t,n){return this.x=e.x+(t.x-e.x)*n,this.y=e.y+(t.y-e.y)*n,this}equals(e){return e.x===this.x&&e.y===this.y}fromArray(e,t=0){return this.x=e[t],this.y=e[t+1],this}toArray(e=[],t=0){return e[t]=this.x,e[t+1]=this.y,e}fromBufferAttribute(e,t){return this.x=e.getX(t),this.y=e.getY(t),this}rotateAround(e,t){let n=Math.cos(t),r=Math.sin(t),i=this.x-e.x,a=this.y-e.y;return this.x=i*n-a*r+e.x,this.y=i*r+a*n+e.y,this}random(){return this.x=Math.random(),this.y=Math.random(),this}*[Symbol.iterator](){yield this.x,yield this.y}},Xl=class{constructor(e=0,t=0,n=0,r=1){this.isQuaternion=!0,this._x=e,this._y=t,this._z=n,this._w=r}static slerpFlat(e,t,n,r,i,a,o){let s=n[r+0],c=n[r+1],l=n[r+2],u=n[r+3],d=i[a+0],f=i[a+1],p=i[a+2],m=i[a+3];if(u!==m||s!==d||c!==f||l!==p){let e=s*d+c*f+l*p+u*m;e<0&&(d=-d,f=-f,p=-p,m=-m,e=-e);let t=1-o;if(e<.9995){let n=Math.acos(e),r=Math.sin(n);t=Math.sin(t*n)/r,o=Math.sin(o*n)/r,s=s*t+d*o,c=c*t+f*o,l=l*t+p*o,u=u*t+m*o}else{s=s*t+d*o,c=c*t+f*o,l=l*t+p*o,u=u*t+m*o;let e=1/Math.sqrt(s*s+c*c+l*l+u*u);s*=e,c*=e,l*=e,u*=e}}e[t]=s,e[t+1]=c,e[t+2]=l,e[t+3]=u}static multiplyQuaternionsFlat(e,t,n,r,i,a){let o=n[r],s=n[r+1],c=n[r+2],l=n[r+3],u=i[a],d=i[a+1],f=i[a+2],p=i[a+3];return e[t]=o*p+l*u+s*f-c*d,e[t+1]=s*p+l*d+c*u-o*f,e[t+2]=c*p+l*f+o*d-s*u,e[t+3]=l*p-o*u-s*d-c*f,e}get x(){return this._x}set x(e){this._x=e,this._onChangeCallback()}get y(){return this._y}set y(e){this._y=e,this._onChangeCallback()}get z(){return this._z}set z(e){this._z=e,this._onChangeCallback()}get w(){return this._w}set w(e){this._w=e,this._onChangeCallback()}set(e,t,n,r){return this._x=e,this._y=t,this._z=n,this._w=r,this._onChangeCallback(),this}clone(){return new this.constructor(this._x,this._y,this._z,this._w)}copy(e){return this._x=e.x,this._y=e.y,this._z=e.z,this._w=e.w,this._onChangeCallback(),this}setFromEuler(e,t=!0){let n=e._x,r=e._y,i=e._z,a=e._order,o=Math.cos,s=Math.sin,c=o(n/2),l=o(r/2),u=o(i/2),d=s(n/2),f=s(r/2),p=s(i/2);switch(a){case`XYZ`:this._x=d*l*u+c*f*p,this._y=c*f*u-d*l*p,this._z=c*l*p+d*f*u,this._w=c*l*u-d*f*p;break;case`YXZ`:this._x=d*l*u+c*f*p,this._y=c*f*u-d*l*p,this._z=c*l*p-d*f*u,this._w=c*l*u+d*f*p;break;case`ZXY`:this._x=d*l*u-c*f*p,this._y=c*f*u+d*l*p,this._z=c*l*p+d*f*u,this._w=c*l*u-d*f*p;break;case`ZYX`:this._x=d*l*u-c*f*p,this._y=c*f*u+d*l*p,this._z=c*l*p-d*f*u,this._w=c*l*u+d*f*p;break;case`YZX`:this._x=d*l*u+c*f*p,this._y=c*f*u+d*l*p,this._z=c*l*p-d*f*u,this._w=c*l*u-d*f*p;break;case`XZY`:this._x=d*l*u-c*f*p,this._y=c*f*u-d*l*p,this._z=c*l*p+d*f*u,this._w=c*l*u+d*f*p;break;default:J(`Quaternion: .setFromEuler() encountered an unknown order: `+a)}return t===!0&&this._onChangeCallback(),this}setFromAxisAngle(e,t){let n=t/2,r=Math.sin(n);return this._x=e.x*r,this._y=e.y*r,this._z=e.z*r,this._w=Math.cos(n),this._onChangeCallback(),this}setFromRotationMatrix(e){let t=e.elements,n=t[0],r=t[4],i=t[8],a=t[1],o=t[5],s=t[9],c=t[2],l=t[6],u=t[10],d=n+o+u;if(d>0){let e=.5/Math.sqrt(d+1);this._w=.25/e,this._x=(l-s)*e,this._y=(i-c)*e,this._z=(a-r)*e}else if(n>o&&n>u){let e=2*Math.sqrt(1+n-o-u);this._w=(l-s)/e,this._x=.25*e,this._y=(r+a)/e,this._z=(i+c)/e}else if(o>u){let e=2*Math.sqrt(1+o-n-u);this._w=(i-c)/e,this._x=(r+a)/e,this._y=.25*e,this._z=(s+l)/e}else{let e=2*Math.sqrt(1+u-n-o);this._w=(a-r)/e,this._x=(i+c)/e,this._y=(s+l)/e,this._z=.25*e}return this._onChangeCallback(),this}setFromUnitVectors(e,t){let n=e.dot(t)+1;return n<1e-8?(n=0,Math.abs(e.x)>Math.abs(e.z)?(this._x=-e.y,this._y=e.x,this._z=0,this._w=n):(this._x=0,this._y=-e.z,this._z=e.y,this._w=n)):(this._x=e.y*t.z-e.z*t.y,this._y=e.z*t.x-e.x*t.z,this._z=e.x*t.y-e.y*t.x,this._w=n),this.normalize()}angleTo(e){return 2*Math.acos(Math.abs(Ol(this.dot(e),-1,1)))}rotateTowards(e,t){let n=this.angleTo(e);if(n===0)return this;let r=Math.min(1,t/n);return this.slerp(e,r),this}identity(){return this.set(0,0,0,1)}invert(){return this.conjugate()}conjugate(){return this._x*=-1,this._y*=-1,this._z*=-1,this._onChangeCallback(),this}dot(e){return this._x*e._x+this._y*e._y+this._z*e._z+this._w*e._w}lengthSq(){return this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w}length(){return Math.sqrt(this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w)}normalize(){let e=this.length();return e===0?(this._x=0,this._y=0,this._z=0,this._w=1):(e=1/e,this._x*=e,this._y*=e,this._z*=e,this._w*=e),this._onChangeCallback(),this}multiply(e){return this.multiplyQuaternions(this,e)}premultiply(e){return this.multiplyQuaternions(e,this)}multiplyQuaternions(e,t){let n=e._x,r=e._y,i=e._z,a=e._w,o=t._x,s=t._y,c=t._z,l=t._w;return this._x=n*l+a*o+r*c-i*s,this._y=r*l+a*s+i*o-n*c,this._z=i*l+a*c+n*s-r*o,this._w=a*l-n*o-r*s-i*c,this._onChangeCallback(),this}slerp(e,t){let n=e._x,r=e._y,i=e._z,a=e._w,o=this.dot(e);o<0&&(n=-n,r=-r,i=-i,a=-a,o=-o);let s=1-t;if(o<.9995){let e=Math.acos(o),c=Math.sin(e);s=Math.sin(s*e)/c,t=Math.sin(t*e)/c,this._x=this._x*s+n*t,this._y=this._y*s+r*t,this._z=this._z*s+i*t,this._w=this._w*s+a*t,this._onChangeCallback()}else this._x=this._x*s+n*t,this._y=this._y*s+r*t,this._z=this._z*s+i*t,this._w=this._w*s+a*t,this.normalize();return this}slerpQuaternions(e,t,n){return this.copy(e).slerp(t,n)}random(){let e=2*Math.PI*Math.random(),t=2*Math.PI*Math.random(),n=Math.random(),r=Math.sqrt(1-n),i=Math.sqrt(n);return this.set(r*Math.sin(e),r*Math.cos(e),i*Math.sin(t),i*Math.cos(t))}equals(e){return e._x===this._x&&e._y===this._y&&e._z===this._z&&e._w===this._w}fromArray(e,t=0){return this._x=e[t],this._y=e[t+1],this._z=e[t+2],this._w=e[t+3],this._onChangeCallback(),this}toArray(e=[],t=0){return e[t]=this._x,e[t+1]=this._y,e[t+2]=this._z,e[t+3]=this._w,e}fromBufferAttribute(e,t){return this._x=e.getX(t),this._y=e.getY(t),this._z=e.getZ(t),this._w=e.getW(t),this._onChangeCallback(),this}toJSON(){return this.toArray()}_onChange(e){return this._onChangeCallback=e,this}_onChangeCallback(){}*[Symbol.iterator](){yield this._x,yield this._y,yield this._z,yield this._w}},X=class e{static{e.prototype.isVector3=!0}constructor(e=0,t=0,n=0){this.x=e,this.y=t,this.z=n}set(e,t,n){return n===void 0&&(n=this.z),this.x=e,this.y=t,this.z=n,this}setScalar(e){return this.x=e,this.y=e,this.z=e,this}setX(e){return this.x=e,this}setY(e){return this.y=e,this}setZ(e){return this.z=e,this}setComponent(e,t){switch(e){case 0:this.x=t;break;case 1:this.y=t;break;case 2:this.z=t;break;default:throw Error(`THREE.Vector3: index is out of range: `+e)}return this}getComponent(e){switch(e){case 0:return this.x;case 1:return this.y;case 2:return this.z;default:throw Error(`THREE.Vector3: index is out of range: `+e)}}clone(){return new this.constructor(this.x,this.y,this.z)}copy(e){return this.x=e.x,this.y=e.y,this.z=e.z,this}add(e){return this.x+=e.x,this.y+=e.y,this.z+=e.z,this}addScalar(e){return this.x+=e,this.y+=e,this.z+=e,this}addVectors(e,t){return this.x=e.x+t.x,this.y=e.y+t.y,this.z=e.z+t.z,this}addScaledVector(e,t){return this.x+=e.x*t,this.y+=e.y*t,this.z+=e.z*t,this}sub(e){return this.x-=e.x,this.y-=e.y,this.z-=e.z,this}subScalar(e){return this.x-=e,this.y-=e,this.z-=e,this}subVectors(e,t){return this.x=e.x-t.x,this.y=e.y-t.y,this.z=e.z-t.z,this}multiply(e){return this.x*=e.x,this.y*=e.y,this.z*=e.z,this}multiplyScalar(e){return this.x*=e,this.y*=e,this.z*=e,this}multiplyVectors(e,t){return this.x=e.x*t.x,this.y=e.y*t.y,this.z=e.z*t.z,this}applyEuler(e){return this.applyQuaternion(Ql.setFromEuler(e))}applyAxisAngle(e,t){return this.applyQuaternion(Ql.setFromAxisAngle(e,t))}applyMatrix3(e){let t=this.x,n=this.y,r=this.z,i=e.elements;return this.x=i[0]*t+i[3]*n+i[6]*r,this.y=i[1]*t+i[4]*n+i[7]*r,this.z=i[2]*t+i[5]*n+i[8]*r,this}applyNormalMatrix(e){return this.applyMatrix3(e).normalize()}applyMatrix4(e){let t=this.x,n=this.y,r=this.z,i=e.elements,a=1/(i[3]*t+i[7]*n+i[11]*r+i[15]);return this.x=(i[0]*t+i[4]*n+i[8]*r+i[12])*a,this.y=(i[1]*t+i[5]*n+i[9]*r+i[13])*a,this.z=(i[2]*t+i[6]*n+i[10]*r+i[14])*a,this}applyQuaternion(e){let t=this.x,n=this.y,r=this.z,i=e.x,a=e.y,o=e.z,s=e.w,c=2*(a*r-o*n),l=2*(o*t-i*r),u=2*(i*n-a*t);return this.x=t+s*c+a*u-o*l,this.y=n+s*l+o*c-i*u,this.z=r+s*u+i*l-a*c,this}project(e){return this.applyMatrix4(e.matrixWorldInverse).applyMatrix4(e.projectionMatrix)}unproject(e){return this.applyMatrix4(e.projectionMatrixInverse).applyMatrix4(e.matrixWorld)}transformDirection(e){let t=this.x,n=this.y,r=this.z,i=e.elements;return this.x=i[0]*t+i[4]*n+i[8]*r,this.y=i[1]*t+i[5]*n+i[9]*r,this.z=i[2]*t+i[6]*n+i[10]*r,this.normalize()}divide(e){return this.x/=e.x,this.y/=e.y,this.z/=e.z,this}divideScalar(e){return this.multiplyScalar(1/e)}min(e){return this.x=Math.min(this.x,e.x),this.y=Math.min(this.y,e.y),this.z=Math.min(this.z,e.z),this}max(e){return this.x=Math.max(this.x,e.x),this.y=Math.max(this.y,e.y),this.z=Math.max(this.z,e.z),this}clamp(e,t){return this.x=Ol(this.x,e.x,t.x),this.y=Ol(this.y,e.y,t.y),this.z=Ol(this.z,e.z,t.z),this}clampScalar(e,t){return this.x=Ol(this.x,e,t),this.y=Ol(this.y,e,t),this.z=Ol(this.z,e,t),this}clampLength(e,t){let n=this.length();return this.divideScalar(n||1).multiplyScalar(Ol(n,e,t))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this.z=Math.trunc(this.z),this}negate(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this}dot(e){return this.x*e.x+this.y*e.y+this.z*e.z}lengthSq(){return this.x*this.x+this.y*this.y+this.z*this.z}length(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)}normalize(){return this.divideScalar(this.length()||1)}setLength(e){return this.normalize().multiplyScalar(e)}lerp(e,t){return this.x+=(e.x-this.x)*t,this.y+=(e.y-this.y)*t,this.z+=(e.z-this.z)*t,this}lerpVectors(e,t,n){return this.x=e.x+(t.x-e.x)*n,this.y=e.y+(t.y-e.y)*n,this.z=e.z+(t.z-e.z)*n,this}cross(e){return this.crossVectors(this,e)}crossVectors(e,t){let n=e.x,r=e.y,i=e.z,a=t.x,o=t.y,s=t.z;return this.x=r*s-i*o,this.y=i*a-n*s,this.z=n*o-r*a,this}projectOnVector(e){let t=e.lengthSq();if(t===0)return this.set(0,0,0);let n=e.dot(this)/t;return this.copy(e).multiplyScalar(n)}projectOnPlane(e){return Zl.copy(this).projectOnVector(e),this.sub(Zl)}reflect(e){return this.sub(Zl.copy(e).multiplyScalar(2*this.dot(e)))}angleTo(e){let t=Math.sqrt(this.lengthSq()*e.lengthSq());if(t===0)return Math.PI/2;let n=this.dot(e)/t;return Math.acos(Ol(n,-1,1))}distanceTo(e){return Math.sqrt(this.distanceToSquared(e))}distanceToSquared(e){let t=this.x-e.x,n=this.y-e.y,r=this.z-e.z;return t*t+n*n+r*r}manhattanDistanceTo(e){return Math.abs(this.x-e.x)+Math.abs(this.y-e.y)+Math.abs(this.z-e.z)}setFromSpherical(e){return this.setFromSphericalCoords(e.radius,e.phi,e.theta)}setFromSphericalCoords(e,t,n){let r=Math.sin(t)*e;return this.x=r*Math.sin(n),this.y=Math.cos(t)*e,this.z=r*Math.cos(n),this}setFromCylindrical(e){return this.setFromCylindricalCoords(e.radius,e.theta,e.y)}setFromCylindricalCoords(e,t,n){return this.x=e*Math.sin(t),this.y=n,this.z=e*Math.cos(t),this}setFromMatrixPosition(e){let t=e.elements;return this.x=t[12],this.y=t[13],this.z=t[14],this}setFromMatrixScale(e){let t=this.setFromMatrixColumn(e,0).length(),n=this.setFromMatrixColumn(e,1).length(),r=this.setFromMatrixColumn(e,2).length();return this.x=t,this.y=n,this.z=r,this}setFromMatrixColumn(e,t){return this.fromArray(e.elements,t*4)}setFromMatrix3Column(e,t){return this.fromArray(e.elements,t*3)}setFromEuler(e){return this.x=e._x,this.y=e._y,this.z=e._z,this}setFromColor(e){return this.x=e.r,this.y=e.g,this.z=e.b,this}equals(e){return e.x===this.x&&e.y===this.y&&e.z===this.z}fromArray(e,t=0){return this.x=e[t],this.y=e[t+1],this.z=e[t+2],this}toArray(e=[],t=0){return e[t]=this.x,e[t+1]=this.y,e[t+2]=this.z,e}fromBufferAttribute(e,t){return this.x=e.getX(t),this.y=e.getY(t),this.z=e.getZ(t),this}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this}randomDirection(){let e=Math.random()*Math.PI*2,t=Math.random()*2-1,n=Math.sqrt(1-t*t);return this.x=n*Math.cos(e),this.y=t,this.z=n*Math.sin(e),this}*[Symbol.iterator](){yield this.x,yield this.y,yield this.z}},Zl=new X,Ql=new Xl,$l=class e{static{e.prototype.isMatrix3=!0}constructor(e,t,n,r,i,a,o,s,c){this.elements=[1,0,0,0,1,0,0,0,1],e!==void 0&&this.set(e,t,n,r,i,a,o,s,c)}set(e,t,n,r,i,a,o,s,c){let l=this.elements;return l[0]=e,l[1]=r,l[2]=o,l[3]=t,l[4]=i,l[5]=s,l[6]=n,l[7]=a,l[8]=c,this}identity(){return this.set(1,0,0,0,1,0,0,0,1),this}copy(e){let t=this.elements,n=e.elements;return t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[3],t[4]=n[4],t[5]=n[5],t[6]=n[6],t[7]=n[7],t[8]=n[8],this}extractBasis(e,t,n){return e.setFromMatrix3Column(this,0),t.setFromMatrix3Column(this,1),n.setFromMatrix3Column(this,2),this}setFromMatrix4(e){let t=e.elements;return this.set(t[0],t[4],t[8],t[1],t[5],t[9],t[2],t[6],t[10]),this}multiply(e){return this.multiplyMatrices(this,e)}premultiply(e){return this.multiplyMatrices(e,this)}multiplyMatrices(e,t){let n=e.elements,r=t.elements,i=this.elements,a=n[0],o=n[3],s=n[6],c=n[1],l=n[4],u=n[7],d=n[2],f=n[5],p=n[8],m=r[0],h=r[3],g=r[6],_=r[1],v=r[4],y=r[7],b=r[2],x=r[5],S=r[8];return i[0]=a*m+o*_+s*b,i[3]=a*h+o*v+s*x,i[6]=a*g+o*y+s*S,i[1]=c*m+l*_+u*b,i[4]=c*h+l*v+u*x,i[7]=c*g+l*y+u*S,i[2]=d*m+f*_+p*b,i[5]=d*h+f*v+p*x,i[8]=d*g+f*y+p*S,this}multiplyScalar(e){let t=this.elements;return t[0]*=e,t[3]*=e,t[6]*=e,t[1]*=e,t[4]*=e,t[7]*=e,t[2]*=e,t[5]*=e,t[8]*=e,this}determinant(){let e=this.elements,t=e[0],n=e[1],r=e[2],i=e[3],a=e[4],o=e[5],s=e[6],c=e[7],l=e[8];return t*a*l-t*o*c-n*i*l+n*o*s+r*i*c-r*a*s}invert(){let e=this.elements,t=e[0],n=e[1],r=e[2],i=e[3],a=e[4],o=e[5],s=e[6],c=e[7],l=e[8],u=l*a-o*c,d=o*s-l*i,f=c*i-a*s,p=t*u+n*d+r*f;if(p===0)return this.set(0,0,0,0,0,0,0,0,0);let m=1/p;return e[0]=u*m,e[1]=(r*c-l*n)*m,e[2]=(o*n-r*a)*m,e[3]=d*m,e[4]=(l*t-r*s)*m,e[5]=(r*i-o*t)*m,e[6]=f*m,e[7]=(n*s-c*t)*m,e[8]=(a*t-n*i)*m,this}transpose(){let e,t=this.elements;return e=t[1],t[1]=t[3],t[3]=e,e=t[2],t[2]=t[6],t[6]=e,e=t[5],t[5]=t[7],t[7]=e,this}getNormalMatrix(e){return this.setFromMatrix4(e).invert().transpose()}transposeIntoArray(e){let t=this.elements;return e[0]=t[0],e[1]=t[3],e[2]=t[6],e[3]=t[1],e[4]=t[4],e[5]=t[7],e[6]=t[2],e[7]=t[5],e[8]=t[8],this}setUvTransform(e,t,n,r,i,a,o){let s=Math.cos(i),c=Math.sin(i);return this.set(n*s,n*c,-n*(s*a+c*o)+a+e,-r*c,r*s,-r*(-c*a+s*o)+o+t,0,0,1),this}scale(e,t){return yl(`Matrix3: .scale() is deprecated. Use .makeScale() instead.`),this.premultiply(eu.makeScale(e,t)),this}rotate(e){return yl(`Matrix3: .rotate() is deprecated. Use .makeRotation() instead.`),this.premultiply(eu.makeRotation(-e)),this}translate(e,t){return yl(`Matrix3: .translate() is deprecated. Use .makeTranslation() instead.`),this.premultiply(eu.makeTranslation(e,t)),this}makeTranslation(e,t){return e.isVector2?this.set(1,0,e.x,0,1,e.y,0,0,1):this.set(1,0,e,0,1,t,0,0,1),this}makeRotation(e){let t=Math.cos(e),n=Math.sin(e);return this.set(t,-n,0,n,t,0,0,0,1),this}makeScale(e,t){return this.set(e,0,0,0,t,0,0,0,1),this}equals(e){let t=this.elements,n=e.elements;for(let e=0;e<9;e++)if(t[e]!==n[e])return!1;return!0}fromArray(e,t=0){for(let n=0;n<9;n++)this.elements[n]=e[n+t];return this}toArray(e=[],t=0){let n=this.elements;return e[t]=n[0],e[t+1]=n[1],e[t+2]=n[2],e[t+3]=n[3],e[t+4]=n[4],e[t+5]=n[5],e[t+6]=n[6],e[t+7]=n[7],e[t+8]=n[8],e}clone(){return new this.constructor().fromArray(this.elements)}},eu=new $l,tu=new $l().set(.4123908,.3575843,.1804808,.212639,.7151687,.0721923,.0193308,.1191948,.9505322),nu=new $l().set(3.2409699,-1.5373832,-.4986108,-.9692436,1.8759675,.0415551,.0556301,-.203977,1.0569715);function ru(){let e={enabled:!0,workingColorSpace:il,spaces:{},convert:function(e,t,n){return this.enabled===!1||t===n||!t||!n?e:(this.spaces[t].transfer===`srgb`&&(e.r=au(e.r),e.g=au(e.g),e.b=au(e.b)),this.spaces[t].primaries!==this.spaces[n].primaries&&(e.applyMatrix3(this.spaces[t].toXYZ),e.applyMatrix3(this.spaces[n].fromXYZ)),this.spaces[n].transfer===`srgb`&&(e.r=ou(e.r),e.g=ou(e.g),e.b=ou(e.b)),e)},workingToColorSpace:function(e,t){return this.convert(e,this.workingColorSpace,t)},colorSpaceToWorking:function(e,t){return this.convert(e,t,this.workingColorSpace)},getPrimaries:function(e){return this.spaces[e].primaries},getTransfer:function(e){return e===``?al:this.spaces[e].transfer},getToneMappingMode:function(e){return this.spaces[e].outputColorSpaceConfig.toneMappingMode||`standard`},getLuminanceCoefficients:function(e,t=this.workingColorSpace){return e.fromArray(this.spaces[t].luminanceCoefficients)},define:function(e){Object.assign(this.spaces,e)},_getMatrix:function(e,t,n){return e.copy(this.spaces[t].toXYZ).multiply(this.spaces[n].fromXYZ)},_getDrawingBufferColorSpace:function(e){return this.spaces[e].outputColorSpaceConfig.drawingBufferColorSpace},_getUnpackColorSpace:function(e=this.workingColorSpace){return this.spaces[e].workingColorSpaceConfig.unpackColorSpace},fromWorkingColorSpace:function(t,n){return yl(`ColorManagement: .fromWorkingColorSpace() has been renamed to .workingToColorSpace().`),e.workingToColorSpace(t,n)},toWorkingColorSpace:function(t,n){return yl(`ColorManagement: .toWorkingColorSpace() has been renamed to .colorSpaceToWorking().`),e.colorSpaceToWorking(t,n)}},t=[.64,.33,.3,.6,.15,.06],n=[.2126,.7152,.0722],r=[.3127,.329];return e.define({[il]:{primaries:t,whitePoint:r,transfer:al,toXYZ:tu,fromXYZ:nu,luminanceCoefficients:n,workingColorSpaceConfig:{unpackColorSpace:rl},outputColorSpaceConfig:{drawingBufferColorSpace:rl}},[rl]:{primaries:t,whitePoint:r,transfer:ol,toXYZ:tu,fromXYZ:nu,luminanceCoefficients:n,outputColorSpaceConfig:{drawingBufferColorSpace:rl}}}),e}var iu=ru();function au(e){return e<.04045?e*.0773993808:(e*.9478672986+.0521327014)**2.4}function ou(e){return e<.0031308?e*12.92:1.055*e**.41666-.055}var su,cu=class{static getDataURL(e,t=`image/png`){if(/^data:/i.test(e.src)||typeof HTMLCanvasElement>`u`)return e.src;let n;if(e instanceof HTMLCanvasElement)n=e;else{su===void 0&&(su=pl(`canvas`)),su.width=e.width,su.height=e.height;let t=su.getContext(`2d`);e instanceof ImageData?t.putImageData(e,0,0):t.drawImage(e,0,0,e.width,e.height),n=su}return n.toDataURL(t)}static sRGBToLinear(e){if(typeof HTMLImageElement<`u`&&e instanceof HTMLImageElement||typeof HTMLCanvasElement<`u`&&e instanceof HTMLCanvasElement||typeof ImageBitmap<`u`&&e instanceof ImageBitmap){let t=pl(`canvas`);t.width=e.width,t.height=e.height;let n=t.getContext(`2d`);n.drawImage(e,0,0,e.width,e.height);let r=n.getImageData(0,0,e.width,e.height),i=r.data;for(let e=0;e1),this.pmremVersion=0,this.normalized=!1}get width(){return this.source.getSize(pu).x}get height(){return this.source.getSize(pu).y}get depth(){return this.source.getSize(pu).z}get image(){return this.source.data}set image(e){this.source.data=e}updateMatrix(){this.matrix.setUvTransform(this.offset.x,this.offset.y,this.repeat.x,this.repeat.y,this.rotation,this.center.x,this.center.y)}addUpdateRange(e,t){this.updateRanges.push({start:e,count:t})}clearUpdateRanges(){this.updateRanges.length=0}clone(){return new this.constructor().copy(this)}copy(e){return this.name=e.name,this.source=e.source,this.mipmaps=e.mipmaps.slice(0),this.mapping=e.mapping,this.channel=e.channel,this.wrapS=e.wrapS,this.wrapT=e.wrapT,this.magFilter=e.magFilter,this.minFilter=e.minFilter,this.anisotropy=e.anisotropy,this.format=e.format,this.internalFormat=e.internalFormat,this.type=e.type,this.normalized=e.normalized,this.offset.copy(e.offset),this.repeat.copy(e.repeat),this.center.copy(e.center),this.rotation=e.rotation,this.matrixAutoUpdate=e.matrixAutoUpdate,this.matrix.copy(e.matrix),this.generateMipmaps=e.generateMipmaps,this.premultiplyAlpha=e.premultiplyAlpha,this.flipY=e.flipY,this.unpackAlignment=e.unpackAlignment,this.colorSpace=e.colorSpace,this.renderTarget=e.renderTarget,this.isRenderTargetTexture=e.isRenderTargetTexture,this.isArrayTexture=e.isArrayTexture,this.userData=JSON.parse(JSON.stringify(e.userData)),this.needsUpdate=!0,this}setValues(e){for(let t in e){let n=e[t];if(n===void 0){J(`Texture.setValues(): parameter '${t}' has value of undefined.`);continue}let r=this[t];if(r===void 0){J(`Texture.setValues(): property '${t}' does not exist.`);continue}r&&n&&r.isVector2&&n.isVector2||r&&n&&r.isVector3&&n.isVector3||r&&n&&r.isMatrix3&&n.isMatrix3?r.copy(n):this[t]=n}}toJSON(e){let t=e===void 0||typeof e==`string`;if(!t&&e.textures[this.uuid]!==void 0)return e.textures[this.uuid];let n={metadata:{version:4.7,type:`Texture`,generator:`Texture.toJSON`},uuid:this.uuid,name:this.name,image:this.source.toJSON(e).uuid,mapping:this.mapping,channel:this.channel,repeat:[this.repeat.x,this.repeat.y],offset:[this.offset.x,this.offset.y],center:[this.center.x,this.center.y],rotation:this.rotation,wrap:[this.wrapS,this.wrapT],format:this.format,internalFormat:this.internalFormat,type:this.type,normalized:this.normalized,colorSpace:this.colorSpace,minFilter:this.minFilter,magFilter:this.magFilter,anisotropy:this.anisotropy,flipY:this.flipY,generateMipmaps:this.generateMipmaps,premultiplyAlpha:this.premultiplyAlpha,unpackAlignment:this.unpackAlignment};return Object.keys(this.userData).length>0&&(n.userData=this.userData),t||(e.textures[this.uuid]=n),n}dispose(){this.dispatchEvent({type:`dispose`})}transformUv(e){if(this.mapping!==300)return e;if(e.applyMatrix3(this.matrix),e.x<0||e.x>1)switch(this.wrapS){case As:e.x-=Math.floor(e.x);break;case js:e.x=e.x<0?0:1;break;case Ms:Math.abs(Math.floor(e.x)%2)===1?e.x=Math.ceil(e.x)-e.x:e.x-=Math.floor(e.x);break}if(e.y<0||e.y>1)switch(this.wrapT){case As:e.y-=Math.floor(e.y);break;case js:e.y=e.y<0?0:1;break;case Ms:Math.abs(Math.floor(e.y)%2)===1?e.y=Math.ceil(e.y)-e.y:e.y-=Math.floor(e.y);break}return this.flipY&&(e.y=1-e.y),e}set needsUpdate(e){e===!0&&(this.version++,this.source.needsUpdate=!0)}set needsPMREMUpdate(e){e===!0&&this.pmremVersion++}};mu.DEFAULT_IMAGE=null,mu.DEFAULT_MAPPING=300,mu.DEFAULT_ANISOTROPY=1;var hu=class e{static{e.prototype.isVector4=!0}constructor(e=0,t=0,n=0,r=1){this.x=e,this.y=t,this.z=n,this.w=r}get width(){return this.z}set width(e){this.z=e}get height(){return this.w}set height(e){this.w=e}set(e,t,n,r){return this.x=e,this.y=t,this.z=n,this.w=r,this}setScalar(e){return this.x=e,this.y=e,this.z=e,this.w=e,this}setX(e){return this.x=e,this}setY(e){return this.y=e,this}setZ(e){return this.z=e,this}setW(e){return this.w=e,this}setComponent(e,t){switch(e){case 0:this.x=t;break;case 1:this.y=t;break;case 2:this.z=t;break;case 3:this.w=t;break;default:throw Error(`THREE.Vector4: index is out of range: `+e)}return this}getComponent(e){switch(e){case 0:return this.x;case 1:return this.y;case 2:return this.z;case 3:return this.w;default:throw Error(`THREE.Vector4: index is out of range: `+e)}}clone(){return new this.constructor(this.x,this.y,this.z,this.w)}copy(e){return this.x=e.x,this.y=e.y,this.z=e.z,this.w=e.w===void 0?1:e.w,this}add(e){return this.x+=e.x,this.y+=e.y,this.z+=e.z,this.w+=e.w,this}addScalar(e){return this.x+=e,this.y+=e,this.z+=e,this.w+=e,this}addVectors(e,t){return this.x=e.x+t.x,this.y=e.y+t.y,this.z=e.z+t.z,this.w=e.w+t.w,this}addScaledVector(e,t){return this.x+=e.x*t,this.y+=e.y*t,this.z+=e.z*t,this.w+=e.w*t,this}sub(e){return this.x-=e.x,this.y-=e.y,this.z-=e.z,this.w-=e.w,this}subScalar(e){return this.x-=e,this.y-=e,this.z-=e,this.w-=e,this}subVectors(e,t){return this.x=e.x-t.x,this.y=e.y-t.y,this.z=e.z-t.z,this.w=e.w-t.w,this}multiply(e){return this.x*=e.x,this.y*=e.y,this.z*=e.z,this.w*=e.w,this}multiplyScalar(e){return this.x*=e,this.y*=e,this.z*=e,this.w*=e,this}applyMatrix4(e){let t=this.x,n=this.y,r=this.z,i=this.w,a=e.elements;return this.x=a[0]*t+a[4]*n+a[8]*r+a[12]*i,this.y=a[1]*t+a[5]*n+a[9]*r+a[13]*i,this.z=a[2]*t+a[6]*n+a[10]*r+a[14]*i,this.w=a[3]*t+a[7]*n+a[11]*r+a[15]*i,this}divide(e){return this.x/=e.x,this.y/=e.y,this.z/=e.z,this.w/=e.w,this}divideScalar(e){return this.multiplyScalar(1/e)}setAxisAngleFromQuaternion(e){this.w=2*Math.acos(e.w);let t=Math.sqrt(1-e.w*e.w);return t<1e-4?(this.x=1,this.y=0,this.z=0):(this.x=e.x/t,this.y=e.y/t,this.z=e.z/t),this}setAxisAngleFromRotationMatrix(e){let t,n,r,i,a=.01,o=.1,s=e.elements,c=s[0],l=s[4],u=s[8],d=s[1],f=s[5],p=s[9],m=s[2],h=s[6],g=s[10];if(Math.abs(l-d)s&&e>_?e_?s1);this.dispose()}this.viewport.set(0,0,e,t),this.scissor.set(0,0,e,t)}clone(){return new this.constructor().copy(this)}copy(e){this.width=e.width,this.height=e.height,this.depth=e.depth,this.scissor.copy(e.scissor),this.scissorTest=e.scissorTest,this.viewport.copy(e.viewport),this.textures.length=0;for(let t=0,n=e.textures.length;t>>0}enable(e){this.mask|=1<1){for(let e=0;e1){for(let e=0;e0&&(r.userData=this.userData),r.layers=this.layers.mask,r.matrix=this.matrix.toArray(),r.up=this.up.toArray(),this.pivot!==null&&(r.pivot=this.pivot.toArray()),this.matrixAutoUpdate===!1&&(r.matrixAutoUpdate=!1),this.morphTargetDictionary!==void 0&&(r.morphTargetDictionary=Object.assign({},this.morphTargetDictionary)),this.morphTargetInfluences!==void 0&&(r.morphTargetInfluences=this.morphTargetInfluences.slice()),this.isInstancedMesh&&(r.type=`InstancedMesh`,r.count=this.count,r.instanceMatrix=this.instanceMatrix.toJSON(),this.instanceColor!==null&&(r.instanceColor=this.instanceColor.toJSON())),this.isBatchedMesh&&(r.type=`BatchedMesh`,r.perObjectFrustumCulled=this.perObjectFrustumCulled,r.sortObjects=this.sortObjects,r.drawRanges=this._drawRanges,r.reservedRanges=this._reservedRanges,r.geometryInfo=this._geometryInfo.map(e=>({...e,boundingBox:e.boundingBox?e.boundingBox.toJSON():void 0,boundingSphere:e.boundingSphere?e.boundingSphere.toJSON():void 0})),r.instanceInfo=this._instanceInfo.map(e=>({...e})),r.availableInstanceIds=this._availableInstanceIds.slice(),r.availableGeometryIds=this._availableGeometryIds.slice(),r.nextIndexStart=this._nextIndexStart,r.nextVertexStart=this._nextVertexStart,r.geometryCount=this._geometryCount,r.maxInstanceCount=this._maxInstanceCount,r.maxVertexCount=this._maxVertexCount,r.maxIndexCount=this._maxIndexCount,r.geometryInitialized=this._geometryInitialized,r.matricesTexture=this._matricesTexture.toJSON(e),r.indirectTexture=this._indirectTexture.toJSON(e),this._colorsTexture!==null&&(r.colorsTexture=this._colorsTexture.toJSON(e)),this.boundingSphere!==null&&(r.boundingSphere=this.boundingSphere.toJSON()),this.boundingBox!==null&&(r.boundingBox=this.boundingBox.toJSON()));function i(t,n){return t[n.uuid]===void 0&&(t[n.uuid]=n.toJSON(e)),n.uuid}if(this.isScene)this.background&&(this.background.isColor?r.background=this.background.toJSON():this.background.isTexture&&(r.background=this.background.toJSON(e).uuid)),this.environment&&this.environment.isTexture&&this.environment.isRenderTargetTexture!==!0&&(r.environment=this.environment.toJSON(e).uuid);else if(this.isMesh||this.isLine||this.isPoints){r.geometry=i(e.geometries,this.geometry);let t=this.geometry.parameters;if(t!==void 0&&t.shapes!==void 0){let n=t.shapes;if(Array.isArray(n))for(let t=0,r=n.length;t0){r.children=[];for(let t=0;t0){r.animations=[];for(let t=0;t0&&(n.geometries=t),r.length>0&&(n.materials=r),i.length>0&&(n.textures=i),o.length>0&&(n.images=o),s.length>0&&(n.shapes=s),c.length>0&&(n.skeletons=c),l.length>0&&(n.animations=l),u.length>0&&(n.nodes=u)}return n.object=r,n;function a(e){let t=[];for(let n in e){let r=e[n];delete r.metadata,t.push(r)}return t}}clone(e){return new this.constructor().copy(this,e)}copy(e,t=!0){if(this.name=e.name,this.up.copy(e.up),this.position.copy(e.position),this.rotation.order=e.rotation.order,this.quaternion.copy(e.quaternion),this.scale.copy(e.scale),this.pivot=e.pivot===null?null:e.pivot.clone(),this.matrix.copy(e.matrix),this.matrixWorld.copy(e.matrixWorld),this.matrixAutoUpdate=e.matrixAutoUpdate,this.matrixWorldAutoUpdate=e.matrixWorldAutoUpdate,this.matrixWorldNeedsUpdate=e.matrixWorldNeedsUpdate,this.layers.mask=e.layers.mask,this.visible=e.visible,this.castShadow=e.castShadow,this.receiveShadow=e.receiveShadow,this.frustumCulled=e.frustumCulled,this.renderOrder=e.renderOrder,this.static=e.static,this.animations=e.animations.slice(),this.userData=JSON.parse(JSON.stringify(e.userData)),t===!0)for(let t=0;t.025?(c.inputState.pinching=!1,this.dispatchEvent({type:`pinchend`,handedness:e.handedness,target:this})):!c.inputState.pinching&&o<=.015&&(c.inputState.pinching=!0,this.dispatchEvent({type:`pinchstart`,handedness:e.handedness,target:this}))}else s!==null&&e.gripSpace&&(i=t.getPose(e.gripSpace,n),i!==null&&(s.matrix.fromArray(i.transform.matrix),s.matrix.decompose(s.position,s.rotation,s.scale),s.matrixWorldNeedsUpdate=!0,i.linearVelocity?(s.hasLinearVelocity=!0,s.linearVelocity.copy(i.linearVelocity)):s.hasLinearVelocity=!1,i.angularVelocity?(s.hasAngularVelocity=!0,s.angularVelocity.copy(i.angularVelocity)):s.hasAngularVelocity=!1,s.eventsEnabled&&s.dispatchEvent({type:`gripUpdated`,data:e,target:this})));o!==null&&(r=t.getPose(e.targetRaySpace,n),r===null&&i!==null&&(r=i),r!==null&&(o.matrix.fromArray(r.transform.matrix),o.matrix.decompose(o.position,o.rotation,o.scale),o.matrixWorldNeedsUpdate=!0,r.linearVelocity?(o.hasLinearVelocity=!0,o.linearVelocity.copy(r.linearVelocity)):o.hasLinearVelocity=!1,r.angularVelocity?(o.hasAngularVelocity=!0,o.angularVelocity.copy(r.angularVelocity)):o.hasAngularVelocity=!1,this.dispatchEvent(Yu)))}return o!==null&&(o.visible=r!==null),s!==null&&(s.visible=i!==null),c!==null&&(c.visible=a!==null),this}_getHandJoint(e,t){if(e.joints[t.jointName]===void 0){let n=new Ju;n.matrixAutoUpdate=!1,n.visible=!1,e.joints[t.jointName]=n,e.add(n)}return e.joints[t.jointName]}},Zu={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074},Qu={h:0,s:0,l:0},$u={h:0,s:0,l:0};function ed(e,t,n){return n<0&&(n+=1),n>1&&--n,n<1/6?e+(t-e)*6*n:n<1/2?t:n<2/3?e+(t-e)*6*(2/3-n):e}var Z=class{constructor(e,t,n){return this.isColor=!0,this.r=1,this.g=1,this.b=1,this.set(e,t,n)}set(e,t,n){if(t===void 0&&n===void 0){let t=e;t&&t.isColor?this.copy(t):typeof t==`number`?this.setHex(t):typeof t==`string`&&this.setStyle(t)}else this.setRGB(e,t,n);return this}setScalar(e){return this.r=e,this.g=e,this.b=e,this}setHex(e,t=rl){return e=Math.floor(e),this.r=(e>>16&255)/255,this.g=(e>>8&255)/255,this.b=(e&255)/255,iu.colorSpaceToWorking(this,t),this}setRGB(e,t,n,r=iu.workingColorSpace){return this.r=e,this.g=t,this.b=n,iu.colorSpaceToWorking(this,r),this}setHSL(e,t,n,r=iu.workingColorSpace){if(e=kl(e,1),t=Ol(t,0,1),n=Ol(n,0,1),t===0)this.r=this.g=this.b=n;else{let r=n<=.5?n*(1+t):n+t-n*t,i=2*n-r;this.r=ed(i,r,e+1/3),this.g=ed(i,r,e),this.b=ed(i,r,e-1/3)}return iu.colorSpaceToWorking(this,r),this}setStyle(e,t=rl){function n(t){t!==void 0&&parseFloat(t)<1&&J(`Color: Alpha component of `+e+` will be ignored.`)}let r;if(r=/^(\w+)\(([^\)]*)\)/.exec(e)){let i,a=r[1],o=r[2];switch(a){case`rgb`:case`rgba`:if(i=/^\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(o))return n(i[4]),this.setRGB(Math.min(255,parseInt(i[1],10))/255,Math.min(255,parseInt(i[2],10))/255,Math.min(255,parseInt(i[3],10))/255,t);if(i=/^\s*(\d+)\%\s*,\s*(\d+)\%\s*,\s*(\d+)\%\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(o))return n(i[4]),this.setRGB(Math.min(100,parseInt(i[1],10))/100,Math.min(100,parseInt(i[2],10))/100,Math.min(100,parseInt(i[3],10))/100,t);break;case`hsl`:case`hsla`:if(i=/^\s*(\d*\.?\d+)\s*,\s*(\d*\.?\d+)\%\s*,\s*(\d*\.?\d+)\%\s*(?:,\s*(\d*\.?\d+)\s*)?$/.exec(o))return n(i[4]),this.setHSL(parseFloat(i[1])/360,parseFloat(i[2])/100,parseFloat(i[3])/100,t);break;default:J(`Color: Unknown color model `+e)}}else if(r=/^\#([A-Fa-f\d]+)$/.exec(e)){let n=r[1],i=n.length;if(i===3)return this.setRGB(parseInt(n.charAt(0),16)/15,parseInt(n.charAt(1),16)/15,parseInt(n.charAt(2),16)/15,t);if(i===6)return this.setHex(parseInt(n,16),t);J(`Color: Invalid hex color `+e)}else if(e&&e.length>0)return this.setColorName(e,t);return this}setColorName(e,t=rl){let n=Zu[e.toLowerCase()];return n===void 0?J(`Color: Unknown color `+e):this.setHex(n,t),this}clone(){return new this.constructor(this.r,this.g,this.b)}copy(e){return this.r=e.r,this.g=e.g,this.b=e.b,this}copySRGBToLinear(e){return this.r=au(e.r),this.g=au(e.g),this.b=au(e.b),this}copyLinearToSRGB(e){return this.r=ou(e.r),this.g=ou(e.g),this.b=ou(e.b),this}convertSRGBToLinear(){return this.copySRGBToLinear(this),this}convertLinearToSRGB(){return this.copyLinearToSRGB(this),this}getHex(e=rl){return iu.workingToColorSpace(td.copy(this),e),Math.round(Ol(td.r*255,0,255))*65536+Math.round(Ol(td.g*255,0,255))*256+Math.round(Ol(td.b*255,0,255))}getHexString(e=rl){return(`000000`+this.getHex(e).toString(16)).slice(-6)}getHSL(e,t=iu.workingColorSpace){iu.workingToColorSpace(td.copy(this),t);let n=td.r,r=td.g,i=td.b,a=Math.max(n,r,i),o=Math.min(n,r,i),s,c,l=(o+a)/2;if(o===a)s=0,c=0;else{let e=a-o;switch(c=l<=.5?e/(a+o):e/(2-a-o),a){case n:s=(r-i)/e+(r0&&(t.object.backgroundBlurriness=this.backgroundBlurriness),this.backgroundIntensity!==1&&(t.object.backgroundIntensity=this.backgroundIntensity),t.object.backgroundRotation=this.backgroundRotation.toArray(),this.environmentIntensity!==1&&(t.object.environmentIntensity=this.environmentIntensity),t.object.environmentRotation=this.environmentRotation.toArray(),t}},id=new X,ad=new X,od=new X,sd=new X,cd=new X,ld=new X,ud=new X,dd=new X,fd=new X,pd=new X,md=new hu,hd=new hu,gd=new hu,_d=class e{constructor(e=new X,t=new X,n=new X){this.a=e,this.b=t,this.c=n}static getNormal(e,t,n,r){r.subVectors(n,t),id.subVectors(e,t),r.cross(id);let i=r.lengthSq();return i>0?r.multiplyScalar(1/Math.sqrt(i)):r.set(0,0,0)}static getBarycoord(e,t,n,r,i){id.subVectors(r,t),ad.subVectors(n,t),od.subVectors(e,t);let a=id.dot(id),o=id.dot(ad),s=id.dot(od),c=ad.dot(ad),l=ad.dot(od),u=a*c-o*o;if(u===0)return i.set(0,0,0),null;let d=1/u,f=(c*s-o*l)*d,p=(a*l-o*s)*d;return i.set(1-f-p,p,f)}static containsPoint(e,t,n,r){return this.getBarycoord(e,t,n,r,sd)!==null&&sd.x>=0&&sd.y>=0&&sd.x+sd.y<=1}static getInterpolation(e,t,n,r,i,a,o,s){return this.getBarycoord(e,t,n,r,sd)===null?(s.x=0,s.y=0,`z`in s&&(s.z=0),`w`in s&&(s.w=0),null):(s.setScalar(0),s.addScaledVector(i,sd.x),s.addScaledVector(a,sd.y),s.addScaledVector(o,sd.z),s)}static getInterpolatedAttribute(e,t,n,r,i,a){return md.setScalar(0),hd.setScalar(0),gd.setScalar(0),md.fromBufferAttribute(e,t),hd.fromBufferAttribute(e,n),gd.fromBufferAttribute(e,r),a.setScalar(0),a.addScaledVector(md,i.x),a.addScaledVector(hd,i.y),a.addScaledVector(gd,i.z),a}static isFrontFacing(e,t,n,r){return id.subVectors(n,t),ad.subVectors(e,t),id.cross(ad).dot(r)<0}set(e,t,n){return this.a.copy(e),this.b.copy(t),this.c.copy(n),this}setFromPointsAndIndices(e,t,n,r){return this.a.copy(e[t]),this.b.copy(e[n]),this.c.copy(e[r]),this}setFromAttributeAndIndices(e,t,n,r){return this.a.fromBufferAttribute(e,t),this.b.fromBufferAttribute(e,n),this.c.fromBufferAttribute(e,r),this}clone(){return new this.constructor().copy(this)}copy(e){return this.a.copy(e.a),this.b.copy(e.b),this.c.copy(e.c),this}getArea(){return id.subVectors(this.c,this.b),ad.subVectors(this.a,this.b),id.cross(ad).length()*.5}getMidpoint(e){return e.addVectors(this.a,this.b).add(this.c).multiplyScalar(1/3)}getNormal(t){return e.getNormal(this.a,this.b,this.c,t)}getPlane(e){return e.setFromCoplanarPoints(this.a,this.b,this.c)}getBarycoord(t,n){return e.getBarycoord(t,this.a,this.b,this.c,n)}getInterpolation(t,n,r,i,a){return e.getInterpolation(t,this.a,this.b,this.c,n,r,i,a)}containsPoint(t){return e.containsPoint(t,this.a,this.b,this.c)}isFrontFacing(t){return e.isFrontFacing(this.a,this.b,this.c,t)}intersectsBox(e){return e.intersectsTriangle(this)}closestPointToPoint(e,t){let n=this.a,r=this.b,i=this.c,a,o;cd.subVectors(r,n),ld.subVectors(i,n),dd.subVectors(e,n);let s=cd.dot(dd),c=ld.dot(dd);if(s<=0&&c<=0)return t.copy(n);fd.subVectors(e,r);let l=cd.dot(fd),u=ld.dot(fd);if(l>=0&&u<=l)return t.copy(r);let d=s*u-l*c;if(d<=0&&s>=0&&l<=0)return a=s/(s-l),t.copy(n).addScaledVector(cd,a);pd.subVectors(e,i);let f=cd.dot(pd),p=ld.dot(pd);if(p>=0&&f<=p)return t.copy(i);let m=f*c-s*p;if(m<=0&&c>=0&&p<=0)return o=c/(c-p),t.copy(n).addScaledVector(ld,o);let h=l*p-f*u;if(h<=0&&u-l>=0&&f-p>=0)return ud.subVectors(i,r),o=(u-l)/(u-l+(f-p)),t.copy(r).addScaledVector(ud,o);let g=1/(h+m+d);return a=m*g,o=d*g,t.copy(n).addScaledVector(cd,a).addScaledVector(ld,o)}equals(e){return e.a.equals(this.a)&&e.b.equals(this.b)&&e.c.equals(this.c)}},vd=class{constructor(e=new X(1/0,1/0,1/0),t=new X(-1/0,-1/0,-1/0)){this.isBox3=!0,this.min=e,this.max=t}set(e,t){return this.min.copy(e),this.max.copy(t),this}setFromArray(e){this.makeEmpty();for(let t=0,n=e.length;t=this.min.x&&e.x<=this.max.x&&e.y>=this.min.y&&e.y<=this.max.y&&e.z>=this.min.z&&e.z<=this.max.z}containsBox(e){return this.min.x<=e.min.x&&e.max.x<=this.max.x&&this.min.y<=e.min.y&&e.max.y<=this.max.y&&this.min.z<=e.min.z&&e.max.z<=this.max.z}getParameter(e,t){return t.set((e.x-this.min.x)/(this.max.x-this.min.x),(e.y-this.min.y)/(this.max.y-this.min.y),(e.z-this.min.z)/(this.max.z-this.min.z))}intersectsBox(e){return e.max.x>=this.min.x&&e.min.x<=this.max.x&&e.max.y>=this.min.y&&e.min.y<=this.max.y&&e.max.z>=this.min.z&&e.min.z<=this.max.z}intersectsSphere(e){return this.clampPoint(e.center,bd),bd.distanceToSquared(e.center)<=e.radius*e.radius}intersectsPlane(e){let t,n;return e.normal.x>0?(t=e.normal.x*this.min.x,n=e.normal.x*this.max.x):(t=e.normal.x*this.max.x,n=e.normal.x*this.min.x),e.normal.y>0?(t+=e.normal.y*this.min.y,n+=e.normal.y*this.max.y):(t+=e.normal.y*this.max.y,n+=e.normal.y*this.min.y),e.normal.z>0?(t+=e.normal.z*this.min.z,n+=e.normal.z*this.max.z):(t+=e.normal.z*this.max.z,n+=e.normal.z*this.min.z),t<=-e.constant&&n>=-e.constant}intersectsTriangle(e){if(this.isEmpty())return!1;this.getCenter(Od),kd.subVectors(this.max,Od),Sd.subVectors(e.a,Od),Cd.subVectors(e.b,Od),wd.subVectors(e.c,Od),Td.subVectors(Cd,Sd),Ed.subVectors(wd,Cd),Dd.subVectors(Sd,wd);let t=[0,-Td.z,Td.y,0,-Ed.z,Ed.y,0,-Dd.z,Dd.y,Td.z,0,-Td.x,Ed.z,0,-Ed.x,Dd.z,0,-Dd.x,-Td.y,Td.x,0,-Ed.y,Ed.x,0,-Dd.y,Dd.x,0];return!Md(t,Sd,Cd,wd,kd)||(t=[1,0,0,0,1,0,0,0,1],!Md(t,Sd,Cd,wd,kd))?!1:(Ad.crossVectors(Td,Ed),t=[Ad.x,Ad.y,Ad.z],Md(t,Sd,Cd,wd,kd))}clampPoint(e,t){return t.copy(e).clamp(this.min,this.max)}distanceToPoint(e){return this.clampPoint(e,bd).distanceTo(e)}getBoundingSphere(e){return this.isEmpty()?e.makeEmpty():(this.getCenter(e.center),e.radius=this.getSize(bd).length()*.5),e}intersect(e){return this.min.max(e.min),this.max.min(e.max),this.isEmpty()&&this.makeEmpty(),this}union(e){return this.min.min(e.min),this.max.max(e.max),this}applyMatrix4(e){return this.isEmpty()?this:(yd[0].set(this.min.x,this.min.y,this.min.z).applyMatrix4(e),yd[1].set(this.min.x,this.min.y,this.max.z).applyMatrix4(e),yd[2].set(this.min.x,this.max.y,this.min.z).applyMatrix4(e),yd[3].set(this.min.x,this.max.y,this.max.z).applyMatrix4(e),yd[4].set(this.max.x,this.min.y,this.min.z).applyMatrix4(e),yd[5].set(this.max.x,this.min.y,this.max.z).applyMatrix4(e),yd[6].set(this.max.x,this.max.y,this.min.z).applyMatrix4(e),yd[7].set(this.max.x,this.max.y,this.max.z).applyMatrix4(e),this.setFromPoints(yd),this)}translate(e){return this.min.add(e),this.max.add(e),this}equals(e){return e.min.equals(this.min)&&e.max.equals(this.max)}toJSON(){return{min:this.min.toArray(),max:this.max.toArray()}}fromJSON(e){return this.min.fromArray(e.min),this.max.fromArray(e.max),this}},yd=[new X,new X,new X,new X,new X,new X,new X,new X],bd=new X,xd=new vd,Sd=new X,Cd=new X,wd=new X,Td=new X,Ed=new X,Dd=new X,Od=new X,kd=new X,Ad=new X,jd=new X;function Md(e,t,n,r,i){for(let a=0,o=e.length-3;a<=o;a+=3){jd.fromArray(e,a);let o=i.x*Math.abs(jd.x)+i.y*Math.abs(jd.y)+i.z*Math.abs(jd.z),s=t.dot(jd),c=n.dot(jd),l=r.dot(jd);if(Math.max(-Math.max(s,c,l),Math.min(s,c,l))>o)return!1}return!0}var Nd=new X,Pd=new Y,Fd=0,Id=class extends Sl{constructor(e,t,n=!1){if(super(),Array.isArray(e))throw TypeError(`THREE.BufferAttribute: array should be a Typed Array.`);this.isBufferAttribute=!0,Object.defineProperty(this,"id",{value:Fd++}),this.name=``,this.array=e,this.itemSize=t,this.count=e===void 0?0:e.length/t,this.normalized=n,this.usage=cl,this.updateRanges=[],this.gpuType=Gs,this.version=0}onUploadCallback(){}set needsUpdate(e){e===!0&&this.version++}setUsage(e){return this.usage=e,this}addUpdateRange(e,t){this.updateRanges.push({start:e,count:t})}clearUpdateRanges(){this.updateRanges.length=0}copy(e){return this.name=e.name,this.array=new e.array.constructor(e.array),this.itemSize=e.itemSize,this.count=e.count,this.normalized=e.normalized,this.usage=e.usage,this.gpuType=e.gpuType,this}copyAt(e,t,n){e*=this.itemSize,n*=t.itemSize;for(let r=0,i=this.itemSize;rthis.radius*this.radius&&(t.sub(this.center).normalize(),t.multiplyScalar(this.radius).add(this.center)),t}getBoundingBox(e){return this.isEmpty()?(e.makeEmpty(),e):(e.set(this.center,this.center),e.expandByScalar(this.radius),e)}applyMatrix4(e){return this.center.applyMatrix4(e),this.radius*=e.getMaxScaleOnAxis(),this}translate(e){return this.center.add(e),this}expandByPoint(e){if(this.isEmpty())return this.center.copy(e),this.radius=0,this;Vd.subVectors(e,this.center);let t=Vd.lengthSq();if(t>this.radius*this.radius){let e=Math.sqrt(t),n=(e-this.radius)*.5;this.center.addScaledVector(Vd,n/e),this.radius+=n}return this}union(e){return e.isEmpty()?this:this.isEmpty()?(this.copy(e),this):(this.center.equals(e.center)===!0?this.radius=Math.max(this.radius,e.radius):(Hd.subVectors(e.center,this.center).setLength(e.radius),this.expandByPoint(Vd.copy(e.center).add(Hd)),this.expandByPoint(Vd.copy(e.center).sub(Hd))),this)}equals(e){return e.center.equals(this.center)&&e.radius===this.radius}clone(){return new this.constructor().copy(this)}toJSON(){return{radius:this.radius,center:this.center.toArray()}}fromJSON(e){return this.radius=e.radius,this.center.fromArray(e.center),this}},Wd=0,Gd=new bu,Kd=new qu,qd=new X,Jd=new vd,Yd=new vd,Xd=new X,Zd=class e extends Sl{constructor(){super(),this.isBufferGeometry=!0,Object.defineProperty(this,"id",{value:Wd++}),this.uuid=Dl(),this.name=``,this.type=`BufferGeometry`,this.index=null,this.indirect=null,this.indirectOffset=0,this.attributes={},this.morphAttributes={},this.morphTargetsRelative=!1,this.groups=[],this.boundingBox=null,this.boundingSphere=null,this.drawRange={start:0,count:1/0},this.userData={},this._transformed=!1}getIndex(){return this.index}setIndex(e){return Array.isArray(e)?this.index=new(dl(e)?Rd:Ld)(e,1):this.index=e,this}setIndirect(e,t=0){return this.indirect=e,this.indirectOffset=t,this}getIndirect(){return this.indirect}getAttribute(e){return this.attributes[e]}setAttribute(e,t){return this.attributes[e]=t,this}deleteAttribute(e){return delete this.attributes[e],this}hasAttribute(e){return this.attributes[e]!==void 0}addGroup(e,t,n=0){this.groups.push({start:e,count:t,materialIndex:n})}clearGroups(){this.groups=[]}setDrawRange(e,t){this.drawRange.start=e,this.drawRange.count=t}applyMatrix4(e){let t=this.attributes.position;t!==void 0&&(t.applyMatrix4(e),t.needsUpdate=!0);let n=this.attributes.normal;if(n!==void 0){let t=new $l().getNormalMatrix(e);n.applyNormalMatrix(t),n.needsUpdate=!0}let r=this.attributes.tangent;return r!==void 0&&(r.transformDirection(e),r.needsUpdate=!0),this.boundingBox!==null&&this.computeBoundingBox(),this.boundingSphere!==null&&this.computeBoundingSphere(),this._transformed=!0,this}applyQuaternion(e){return Gd.makeRotationFromQuaternion(e),this.applyMatrix4(Gd),this}rotateX(e){return Gd.makeRotationX(e),this.applyMatrix4(Gd),this}rotateY(e){return Gd.makeRotationY(e),this.applyMatrix4(Gd),this}rotateZ(e){return Gd.makeRotationZ(e),this.applyMatrix4(Gd),this}translate(e,t,n){return Gd.makeTranslation(e,t,n),this.applyMatrix4(Gd),this}scale(e,t,n){return Gd.makeScale(e,t,n),this.applyMatrix4(Gd),this}lookAt(e){return Kd.lookAt(e),Kd.updateMatrix(),this.applyMatrix4(Kd.matrix),this}center(){return this.computeBoundingBox(),this.boundingBox.getCenter(qd).negate(),this.translate(qd.x,qd.y,qd.z),this}setFromPoints(e){let t=this.getAttribute(`position`);if(t===void 0){let t=[];for(let n=0,r=e.length;nt.count&&J(`BufferGeometry: Buffer size too small for points data. Use .dispose() and create a new geometry.`),t.needsUpdate=!0}return this}computeBoundingBox(){this.boundingBox===null&&(this.boundingBox=new vd);let e=this.attributes.position,t=this.morphAttributes.position;if(e&&e.isGLBufferAttribute){vl(`BufferGeometry.computeBoundingBox(): GLBufferAttribute requires a manual bounding box.`,this),this.boundingBox.set(new X(-1/0,-1/0,-1/0),new X(1/0,1/0,1/0));return}if(e!==void 0){if(this.boundingBox.setFromBufferAttribute(e),t)for(let e=0,n=t.length;e0&&(e.userData=this.userData),this.parameters!==void 0&&this._transformed!==!0){let t=this.parameters;for(let n in t)t[n]!==void 0&&(e[n]=t[n]);return e}e.data={attributes:{}};let t=this.index;t!==null&&(e.data.index={type:t.array.constructor.name,array:Array.prototype.slice.call(t.array)});let n=this.attributes;for(let t in n){let r=n[t];e.data.attributes[t]=r.toJSON(e.data)}let r={},i=!1;for(let t in this.morphAttributes){let n=this.morphAttributes[t],a=[];for(let t=0,r=n.length;t0&&(r[t]=a,i=!0)}i&&(e.data.morphAttributes=r,e.data.morphTargetsRelative=this.morphTargetsRelative);let a=this.groups;a.length>0&&(e.data.groups=JSON.parse(JSON.stringify(a)));let o=this.boundingSphere;return o!==null&&(e.data.boundingSphere=o.toJSON()),e}clone(){return new this.constructor().copy(this)}copy(e){this.index=null,this.attributes={},this.morphAttributes={},this.groups=[],this.boundingBox=null,this.boundingSphere=null;let t={};this.name=e.name;let n=e.index;n!==null&&this.setIndex(n.clone());let r=e.attributes;for(let e in r){let n=r[e];this.setAttribute(e,n.clone(t))}let i=e.morphAttributes;for(let e in i){let n=[],r=i[e];for(let e=0,i=r.length;e0!=e>0&&this.version++,this._alphaTest=e}onBeforeRender(){}onBeforeCompile(){}customProgramCacheKey(){return this.onBeforeCompile.toString()}setValues(e){if(e!==void 0)for(let t in e){let n=e[t];if(n===void 0){J(`Material: parameter '${t}' has value of undefined.`);continue}let r=this[t];if(r===void 0){J(`Material: '${t}' is not a property of THREE.${this.type}.`);continue}r&&r.isColor?r.set(n):r&&r.isVector2&&n&&n.isVector2||r&&r.isEuler&&n&&n.isEuler||r&&r.isVector3&&n&&n.isVector3?r.copy(n):this[t]=n}}toJSON(e){let t=e===void 0||typeof e==`string`;t&&(e={textures:{},images:{}});let n={metadata:{version:4.7,type:`Material`,generator:`Material.toJSON`}};n.uuid=this.uuid,n.type=this.type,this.name!==``&&(n.name=this.name),this.color&&this.color.isColor&&(n.color=this.color.getHex()),this.roughness!==void 0&&(n.roughness=this.roughness),this.metalness!==void 0&&(n.metalness=this.metalness),this.sheen!==void 0&&(n.sheen=this.sheen),this.sheenColor&&this.sheenColor.isColor&&(n.sheenColor=this.sheenColor.getHex()),this.sheenRoughness!==void 0&&(n.sheenRoughness=this.sheenRoughness),this.emissive&&this.emissive.isColor&&(n.emissive=this.emissive.getHex()),this.emissiveIntensity!==void 0&&this.emissiveIntensity!==1&&(n.emissiveIntensity=this.emissiveIntensity),this.specular&&this.specular.isColor&&(n.specular=this.specular.getHex()),this.specularIntensity!==void 0&&(n.specularIntensity=this.specularIntensity),this.specularColor&&this.specularColor.isColor&&(n.specularColor=this.specularColor.getHex()),this.shininess!==void 0&&(n.shininess=this.shininess),this.clearcoat!==void 0&&(n.clearcoat=this.clearcoat),this.clearcoatRoughness!==void 0&&(n.clearcoatRoughness=this.clearcoatRoughness),this.clearcoatMap&&this.clearcoatMap.isTexture&&(n.clearcoatMap=this.clearcoatMap.toJSON(e).uuid),this.clearcoatRoughnessMap&&this.clearcoatRoughnessMap.isTexture&&(n.clearcoatRoughnessMap=this.clearcoatRoughnessMap.toJSON(e).uuid),this.clearcoatNormalMap&&this.clearcoatNormalMap.isTexture&&(n.clearcoatNormalMap=this.clearcoatNormalMap.toJSON(e).uuid,n.clearcoatNormalScale=this.clearcoatNormalScale.toArray()),this.sheenColorMap&&this.sheenColorMap.isTexture&&(n.sheenColorMap=this.sheenColorMap.toJSON(e).uuid),this.sheenRoughnessMap&&this.sheenRoughnessMap.isTexture&&(n.sheenRoughnessMap=this.sheenRoughnessMap.toJSON(e).uuid),this.dispersion!==void 0&&(n.dispersion=this.dispersion),this.iridescence!==void 0&&(n.iridescence=this.iridescence),this.iridescenceIOR!==void 0&&(n.iridescenceIOR=this.iridescenceIOR),this.iridescenceThicknessRange!==void 0&&(n.iridescenceThicknessRange=this.iridescenceThicknessRange),this.iridescenceMap&&this.iridescenceMap.isTexture&&(n.iridescenceMap=this.iridescenceMap.toJSON(e).uuid),this.iridescenceThicknessMap&&this.iridescenceThicknessMap.isTexture&&(n.iridescenceThicknessMap=this.iridescenceThicknessMap.toJSON(e).uuid),this.anisotropy!==void 0&&(n.anisotropy=this.anisotropy),this.anisotropyRotation!==void 0&&(n.anisotropyRotation=this.anisotropyRotation),this.anisotropyMap&&this.anisotropyMap.isTexture&&(n.anisotropyMap=this.anisotropyMap.toJSON(e).uuid),this.map&&this.map.isTexture&&(n.map=this.map.toJSON(e).uuid),this.matcap&&this.matcap.isTexture&&(n.matcap=this.matcap.toJSON(e).uuid),this.alphaMap&&this.alphaMap.isTexture&&(n.alphaMap=this.alphaMap.toJSON(e).uuid),this.lightMap&&this.lightMap.isTexture&&(n.lightMap=this.lightMap.toJSON(e).uuid,n.lightMapIntensity=this.lightMapIntensity),this.aoMap&&this.aoMap.isTexture&&(n.aoMap=this.aoMap.toJSON(e).uuid,n.aoMapIntensity=this.aoMapIntensity),this.bumpMap&&this.bumpMap.isTexture&&(n.bumpMap=this.bumpMap.toJSON(e).uuid,n.bumpScale=this.bumpScale),this.normalMap&&this.normalMap.isTexture&&(n.normalMap=this.normalMap.toJSON(e).uuid,n.normalMapType=this.normalMapType,n.normalScale=this.normalScale.toArray()),this.displacementMap&&this.displacementMap.isTexture&&(n.displacementMap=this.displacementMap.toJSON(e).uuid,n.displacementScale=this.displacementScale,n.displacementBias=this.displacementBias),this.roughnessMap&&this.roughnessMap.isTexture&&(n.roughnessMap=this.roughnessMap.toJSON(e).uuid),this.metalnessMap&&this.metalnessMap.isTexture&&(n.metalnessMap=this.metalnessMap.toJSON(e).uuid),this.emissiveMap&&this.emissiveMap.isTexture&&(n.emissiveMap=this.emissiveMap.toJSON(e).uuid),this.specularMap&&this.specularMap.isTexture&&(n.specularMap=this.specularMap.toJSON(e).uuid),this.specularIntensityMap&&this.specularIntensityMap.isTexture&&(n.specularIntensityMap=this.specularIntensityMap.toJSON(e).uuid),this.specularColorMap&&this.specularColorMap.isTexture&&(n.specularColorMap=this.specularColorMap.toJSON(e).uuid),this.envMap&&this.envMap.isTexture&&(n.envMap=this.envMap.toJSON(e).uuid,this.combine!==void 0&&(n.combine=this.combine)),this.envMapRotation!==void 0&&(n.envMapRotation=this.envMapRotation.toArray()),this.envMapIntensity!==void 0&&(n.envMapIntensity=this.envMapIntensity),this.reflectivity!==void 0&&(n.reflectivity=this.reflectivity),this.refractionRatio!==void 0&&(n.refractionRatio=this.refractionRatio),this.gradientMap&&this.gradientMap.isTexture&&(n.gradientMap=this.gradientMap.toJSON(e).uuid),this.transmission!==void 0&&(n.transmission=this.transmission),this.transmissionMap&&this.transmissionMap.isTexture&&(n.transmissionMap=this.transmissionMap.toJSON(e).uuid),this.thickness!==void 0&&(n.thickness=this.thickness),this.thicknessMap&&this.thicknessMap.isTexture&&(n.thicknessMap=this.thicknessMap.toJSON(e).uuid),this.attenuationDistance!==void 0&&this.attenuationDistance!==1/0&&(n.attenuationDistance=this.attenuationDistance),this.attenuationColor!==void 0&&(n.attenuationColor=this.attenuationColor.getHex()),this.size!==void 0&&(n.size=this.size),this.shadowSide!==null&&(n.shadowSide=this.shadowSide),this.sizeAttenuation!==void 0&&(n.sizeAttenuation=this.sizeAttenuation),this.blending!==1&&(n.blending=this.blending),this.side!==0&&(n.side=this.side),this.vertexColors===!0&&(n.vertexColors=!0),this.opacity<1&&(n.opacity=this.opacity),this.transparent===!0&&(n.transparent=!0),this.blendSrc!==204&&(n.blendSrc=this.blendSrc),this.blendDst!==205&&(n.blendDst=this.blendDst),this.blendEquation!==100&&(n.blendEquation=this.blendEquation),this.blendSrcAlpha!==null&&(n.blendSrcAlpha=this.blendSrcAlpha),this.blendDstAlpha!==null&&(n.blendDstAlpha=this.blendDstAlpha),this.blendEquationAlpha!==null&&(n.blendEquationAlpha=this.blendEquationAlpha),this.blendColor&&this.blendColor.isColor&&(n.blendColor=this.blendColor.getHex()),this.blendAlpha!==0&&(n.blendAlpha=this.blendAlpha),this.depthFunc!==3&&(n.depthFunc=this.depthFunc),this.depthTest===!1&&(n.depthTest=this.depthTest),this.depthWrite===!1&&(n.depthWrite=this.depthWrite),this.colorWrite===!1&&(n.colorWrite=this.colorWrite),this.stencilWriteMask!==255&&(n.stencilWriteMask=this.stencilWriteMask),this.stencilFunc!==519&&(n.stencilFunc=this.stencilFunc),this.stencilRef!==0&&(n.stencilRef=this.stencilRef),this.stencilFuncMask!==255&&(n.stencilFuncMask=this.stencilFuncMask),this.stencilFail!==7680&&(n.stencilFail=this.stencilFail),this.stencilZFail!==7680&&(n.stencilZFail=this.stencilZFail),this.stencilZPass!==7680&&(n.stencilZPass=this.stencilZPass),this.stencilWrite===!0&&(n.stencilWrite=this.stencilWrite),this.rotation!==void 0&&this.rotation!==0&&(n.rotation=this.rotation),this.polygonOffset===!0&&(n.polygonOffset=!0),this.polygonOffsetFactor!==0&&(n.polygonOffsetFactor=this.polygonOffsetFactor),this.polygonOffsetUnits!==0&&(n.polygonOffsetUnits=this.polygonOffsetUnits),this.linewidth!==void 0&&this.linewidth!==1&&(n.linewidth=this.linewidth),this.dashSize!==void 0&&(n.dashSize=this.dashSize),this.gapSize!==void 0&&(n.gapSize=this.gapSize),this.scale!==void 0&&(n.scale=this.scale),this.dithering===!0&&(n.dithering=!0),this.alphaTest>0&&(n.alphaTest=this.alphaTest),this.alphaHash===!0&&(n.alphaHash=!0),this.alphaToCoverage===!0&&(n.alphaToCoverage=!0),this.premultipliedAlpha===!0&&(n.premultipliedAlpha=!0),this.forceSinglePass===!0&&(n.forceSinglePass=!0),this.allowOverride===!1&&(n.allowOverride=!1),this.wireframe===!0&&(n.wireframe=!0),this.wireframeLinewidth>1&&(n.wireframeLinewidth=this.wireframeLinewidth),this.wireframeLinecap!==`round`&&(n.wireframeLinecap=this.wireframeLinecap),this.wireframeLinejoin!==`round`&&(n.wireframeLinejoin=this.wireframeLinejoin),this.flatShading===!0&&(n.flatShading=!0),this.visible===!1&&(n.visible=!1),this.toneMapped===!1&&(n.toneMapped=!1),this.fog===!1&&(n.fog=!1),Object.keys(this.userData).length>0&&(n.userData=this.userData);function r(e){let t=[];for(let n in e){let r=e[n];delete r.metadata,t.push(r)}return t}if(t){let t=r(e.textures),i=r(e.images);t.length>0&&(n.textures=t),i.length>0&&(n.images=i)}return n}fromJSON(e,t){if(e.uuid!==void 0&&(this.uuid=e.uuid),e.name!==void 0&&(this.name=e.name),e.color!==void 0&&this.color!==void 0&&this.color.setHex(e.color),e.roughness!==void 0&&(this.roughness=e.roughness),e.metalness!==void 0&&(this.metalness=e.metalness),e.sheen!==void 0&&(this.sheen=e.sheen),e.sheenColor!==void 0&&(this.sheenColor=new Z().setHex(e.sheenColor)),e.sheenRoughness!==void 0&&(this.sheenRoughness=e.sheenRoughness),e.emissive!==void 0&&this.emissive!==void 0&&this.emissive.setHex(e.emissive),e.specular!==void 0&&this.specular!==void 0&&this.specular.setHex(e.specular),e.specularIntensity!==void 0&&(this.specularIntensity=e.specularIntensity),e.specularColor!==void 0&&this.specularColor!==void 0&&this.specularColor.setHex(e.specularColor),e.shininess!==void 0&&(this.shininess=e.shininess),e.clearcoat!==void 0&&(this.clearcoat=e.clearcoat),e.clearcoatRoughness!==void 0&&(this.clearcoatRoughness=e.clearcoatRoughness),e.dispersion!==void 0&&(this.dispersion=e.dispersion),e.iridescence!==void 0&&(this.iridescence=e.iridescence),e.iridescenceIOR!==void 0&&(this.iridescenceIOR=e.iridescenceIOR),e.iridescenceThicknessRange!==void 0&&(this.iridescenceThicknessRange=e.iridescenceThicknessRange),e.transmission!==void 0&&(this.transmission=e.transmission),e.thickness!==void 0&&(this.thickness=e.thickness),e.attenuationDistance!==void 0&&(this.attenuationDistance=e.attenuationDistance),e.attenuationColor!==void 0&&this.attenuationColor!==void 0&&this.attenuationColor.setHex(e.attenuationColor),e.anisotropy!==void 0&&(this.anisotropy=e.anisotropy),e.anisotropyRotation!==void 0&&(this.anisotropyRotation=e.anisotropyRotation),e.fog!==void 0&&(this.fog=e.fog),e.flatShading!==void 0&&(this.flatShading=e.flatShading),e.blending!==void 0&&(this.blending=e.blending),e.combine!==void 0&&(this.combine=e.combine),e.side!==void 0&&(this.side=e.side),e.shadowSide!==void 0&&(this.shadowSide=e.shadowSide),e.opacity!==void 0&&(this.opacity=e.opacity),e.transparent!==void 0&&(this.transparent=e.transparent),e.alphaTest!==void 0&&(this.alphaTest=e.alphaTest),e.alphaHash!==void 0&&(this.alphaHash=e.alphaHash),e.depthFunc!==void 0&&(this.depthFunc=e.depthFunc),e.depthTest!==void 0&&(this.depthTest=e.depthTest),e.depthWrite!==void 0&&(this.depthWrite=e.depthWrite),e.colorWrite!==void 0&&(this.colorWrite=e.colorWrite),e.blendSrc!==void 0&&(this.blendSrc=e.blendSrc),e.blendDst!==void 0&&(this.blendDst=e.blendDst),e.blendEquation!==void 0&&(this.blendEquation=e.blendEquation),e.blendSrcAlpha!==void 0&&(this.blendSrcAlpha=e.blendSrcAlpha),e.blendDstAlpha!==void 0&&(this.blendDstAlpha=e.blendDstAlpha),e.blendEquationAlpha!==void 0&&(this.blendEquationAlpha=e.blendEquationAlpha),e.blendColor!==void 0&&this.blendColor!==void 0&&this.blendColor.setHex(e.blendColor),e.blendAlpha!==void 0&&(this.blendAlpha=e.blendAlpha),e.stencilWriteMask!==void 0&&(this.stencilWriteMask=e.stencilWriteMask),e.stencilFunc!==void 0&&(this.stencilFunc=e.stencilFunc),e.stencilRef!==void 0&&(this.stencilRef=e.stencilRef),e.stencilFuncMask!==void 0&&(this.stencilFuncMask=e.stencilFuncMask),e.stencilFail!==void 0&&(this.stencilFail=e.stencilFail),e.stencilZFail!==void 0&&(this.stencilZFail=e.stencilZFail),e.stencilZPass!==void 0&&(this.stencilZPass=e.stencilZPass),e.stencilWrite!==void 0&&(this.stencilWrite=e.stencilWrite),e.wireframe!==void 0&&(this.wireframe=e.wireframe),e.wireframeLinewidth!==void 0&&(this.wireframeLinewidth=e.wireframeLinewidth),e.wireframeLinecap!==void 0&&(this.wireframeLinecap=e.wireframeLinecap),e.wireframeLinejoin!==void 0&&(this.wireframeLinejoin=e.wireframeLinejoin),e.rotation!==void 0&&(this.rotation=e.rotation),e.linewidth!==void 0&&(this.linewidth=e.linewidth),e.dashSize!==void 0&&(this.dashSize=e.dashSize),e.gapSize!==void 0&&(this.gapSize=e.gapSize),e.scale!==void 0&&(this.scale=e.scale),e.polygonOffset!==void 0&&(this.polygonOffset=e.polygonOffset),e.polygonOffsetFactor!==void 0&&(this.polygonOffsetFactor=e.polygonOffsetFactor),e.polygonOffsetUnits!==void 0&&(this.polygonOffsetUnits=e.polygonOffsetUnits),e.dithering!==void 0&&(this.dithering=e.dithering),e.alphaToCoverage!==void 0&&(this.alphaToCoverage=e.alphaToCoverage),e.premultipliedAlpha!==void 0&&(this.premultipliedAlpha=e.premultipliedAlpha),e.forceSinglePass!==void 0&&(this.forceSinglePass=e.forceSinglePass),e.allowOverride!==void 0&&(this.allowOverride=e.allowOverride),e.visible!==void 0&&(this.visible=e.visible),e.toneMapped!==void 0&&(this.toneMapped=e.toneMapped),e.userData!==void 0&&(this.userData=e.userData),e.vertexColors!==void 0&&(typeof e.vertexColors==`number`?this.vertexColors=e.vertexColors>0:this.vertexColors=e.vertexColors),e.size!==void 0&&(this.size=e.size),e.sizeAttenuation!==void 0&&(this.sizeAttenuation=e.sizeAttenuation),e.map!==void 0&&(this.map=t[e.map]||null),e.matcap!==void 0&&(this.matcap=t[e.matcap]||null),e.alphaMap!==void 0&&(this.alphaMap=t[e.alphaMap]||null),e.bumpMap!==void 0&&(this.bumpMap=t[e.bumpMap]||null),e.bumpScale!==void 0&&(this.bumpScale=e.bumpScale),e.normalMap!==void 0&&(this.normalMap=t[e.normalMap]||null),e.normalMapType!==void 0&&(this.normalMapType=e.normalMapType),e.normalScale!==void 0){let t=e.normalScale;Array.isArray(t)===!1&&(t=[t,t]),this.normalScale=new Y().fromArray(t)}return e.displacementMap!==void 0&&(this.displacementMap=t[e.displacementMap]||null),e.displacementScale!==void 0&&(this.displacementScale=e.displacementScale),e.displacementBias!==void 0&&(this.displacementBias=e.displacementBias),e.roughnessMap!==void 0&&(this.roughnessMap=t[e.roughnessMap]||null),e.metalnessMap!==void 0&&(this.metalnessMap=t[e.metalnessMap]||null),e.emissiveMap!==void 0&&(this.emissiveMap=t[e.emissiveMap]||null),e.emissiveIntensity!==void 0&&(this.emissiveIntensity=e.emissiveIntensity),e.specularMap!==void 0&&(this.specularMap=t[e.specularMap]||null),e.specularIntensityMap!==void 0&&(this.specularIntensityMap=t[e.specularIntensityMap]||null),e.specularColorMap!==void 0&&(this.specularColorMap=t[e.specularColorMap]||null),e.envMap!==void 0&&(this.envMap=t[e.envMap]||null),e.envMapRotation!==void 0&&this.envMapRotation.fromArray(e.envMapRotation),e.envMapIntensity!==void 0&&(this.envMapIntensity=e.envMapIntensity),e.reflectivity!==void 0&&(this.reflectivity=e.reflectivity),e.refractionRatio!==void 0&&(this.refractionRatio=e.refractionRatio),e.lightMap!==void 0&&(this.lightMap=t[e.lightMap]||null),e.lightMapIntensity!==void 0&&(this.lightMapIntensity=e.lightMapIntensity),e.aoMap!==void 0&&(this.aoMap=t[e.aoMap]||null),e.aoMapIntensity!==void 0&&(this.aoMapIntensity=e.aoMapIntensity),e.gradientMap!==void 0&&(this.gradientMap=t[e.gradientMap]||null),e.clearcoatMap!==void 0&&(this.clearcoatMap=t[e.clearcoatMap]||null),e.clearcoatRoughnessMap!==void 0&&(this.clearcoatRoughnessMap=t[e.clearcoatRoughnessMap]||null),e.clearcoatNormalMap!==void 0&&(this.clearcoatNormalMap=t[e.clearcoatNormalMap]||null),e.clearcoatNormalScale!==void 0&&(this.clearcoatNormalScale=new Y().fromArray(e.clearcoatNormalScale)),e.iridescenceMap!==void 0&&(this.iridescenceMap=t[e.iridescenceMap]||null),e.iridescenceThicknessMap!==void 0&&(this.iridescenceThicknessMap=t[e.iridescenceThicknessMap]||null),e.transmissionMap!==void 0&&(this.transmissionMap=t[e.transmissionMap]||null),e.thicknessMap!==void 0&&(this.thicknessMap=t[e.thicknessMap]||null),e.anisotropyMap!==void 0&&(this.anisotropyMap=t[e.anisotropyMap]||null),e.sheenColorMap!==void 0&&(this.sheenColorMap=t[e.sheenColorMap]||null),e.sheenRoughnessMap!==void 0&&(this.sheenRoughnessMap=t[e.sheenRoughnessMap]||null),this}clone(){return new this.constructor().copy(this)}copy(e){this.name=e.name,this.blending=e.blending,this.side=e.side,this.vertexColors=e.vertexColors,this.opacity=e.opacity,this.transparent=e.transparent,this.blendSrc=e.blendSrc,this.blendDst=e.blendDst,this.blendEquation=e.blendEquation,this.blendSrcAlpha=e.blendSrcAlpha,this.blendDstAlpha=e.blendDstAlpha,this.blendEquationAlpha=e.blendEquationAlpha,this.blendColor.copy(e.blendColor),this.blendAlpha=e.blendAlpha,this.depthFunc=e.depthFunc,this.depthTest=e.depthTest,this.depthWrite=e.depthWrite,this.stencilWriteMask=e.stencilWriteMask,this.stencilFunc=e.stencilFunc,this.stencilRef=e.stencilRef,this.stencilFuncMask=e.stencilFuncMask,this.stencilFail=e.stencilFail,this.stencilZFail=e.stencilZFail,this.stencilZPass=e.stencilZPass,this.stencilWrite=e.stencilWrite;let t=e.clippingPlanes,n=null;if(t!==null){let e=t.length;n=Array(e);for(let r=0;r!==e;++r)n[r]=t[r].clone()}return this.clippingPlanes=n,this.clipIntersection=e.clipIntersection,this.clipShadows=e.clipShadows,this.shadowSide=e.shadowSide,this.colorWrite=e.colorWrite,this.precision=e.precision,this.polygonOffset=e.polygonOffset,this.polygonOffsetFactor=e.polygonOffsetFactor,this.polygonOffsetUnits=e.polygonOffsetUnits,this.dithering=e.dithering,this.alphaTest=e.alphaTest,this.alphaHash=e.alphaHash,this.alphaToCoverage=e.alphaToCoverage,this.premultipliedAlpha=e.premultipliedAlpha,this.forceSinglePass=e.forceSinglePass,this.allowOverride=e.allowOverride,this.visible=e.visible,this.toneMapped=e.toneMapped,this.userData=JSON.parse(JSON.stringify(e.userData)),this}dispose(){this.dispatchEvent({type:`dispose`})}set needsUpdate(e){e===!0&&this.version++}},rf=new X,af=new X,of=new X,sf=new X,cf=new X,lf=new X,uf=new X,df=class{constructor(e=new X,t=new X(0,0,-1)){this.origin=e,this.direction=t}set(e,t){return this.origin.copy(e),this.direction.copy(t),this}copy(e){return this.origin.copy(e.origin),this.direction.copy(e.direction),this}at(e,t){return t.copy(this.origin).addScaledVector(this.direction,e)}lookAt(e){return this.direction.copy(e).sub(this.origin).normalize(),this}recast(e){return this.origin.copy(this.at(e,rf)),this}closestPointToPoint(e,t){t.subVectors(e,this.origin);let n=t.dot(this.direction);return n<0?t.copy(this.origin):t.copy(this.origin).addScaledVector(this.direction,n)}distanceToPoint(e){return Math.sqrt(this.distanceSqToPoint(e))}distanceSqToPoint(e){let t=rf.subVectors(e,this.origin).dot(this.direction);return t<0?this.origin.distanceToSquared(e):(rf.copy(this.origin).addScaledVector(this.direction,t),rf.distanceToSquared(e))}distanceSqToSegment(e,t,n,r){af.copy(e).add(t).multiplyScalar(.5),of.copy(t).sub(e).normalize(),sf.copy(this.origin).sub(af);let i=e.distanceTo(t)*.5,a=-this.direction.dot(of),o=sf.dot(this.direction),s=-sf.dot(of),c=sf.lengthSq(),l=Math.abs(1-a*a),u,d,f,p;if(l>0)if(u=a*s-o,d=a*o-s,p=i*l,u>=0)if(d>=-p)if(d<=p){let e=1/l;u*=e,d*=e,f=u*(u+a*d+2*o)+d*(a*u+d+2*s)+c}else d=i,u=Math.max(0,-(a*d+o)),f=-u*u+d*(d+2*s)+c;else d=-i,u=Math.max(0,-(a*d+o)),f=-u*u+d*(d+2*s)+c;else d<=-p?(u=Math.max(0,-(-a*i+o)),d=u>0?-i:Math.min(Math.max(-i,-s),i),f=-u*u+d*(d+2*s)+c):d<=p?(u=0,d=Math.min(Math.max(-i,-s),i),f=d*(d+2*s)+c):(u=Math.max(0,-(a*i+o)),d=u>0?i:Math.min(Math.max(-i,-s),i),f=-u*u+d*(d+2*s)+c);else d=a>0?-i:i,u=Math.max(0,-(a*d+o)),f=-u*u+d*(d+2*s)+c;return n&&n.copy(this.origin).addScaledVector(this.direction,u),r&&r.copy(af).addScaledVector(of,d),f}intersectSphere(e,t){rf.subVectors(e.center,this.origin);let n=rf.dot(this.direction),r=rf.dot(rf)-n*n,i=e.radius*e.radius;if(r>i)return null;let a=Math.sqrt(i-r),o=n-a,s=n+a;return s<0?null:o<0?this.at(s,t):this.at(o,t)}intersectsSphere(e){return e.radius<0?!1:this.distanceSqToPoint(e.center)<=e.radius*e.radius}distanceToPlane(e){let t=e.normal.dot(this.direction);if(t===0)return e.distanceToPoint(this.origin)===0?0:null;let n=-(this.origin.dot(e.normal)+e.constant)/t;return n>=0?n:null}intersectPlane(e,t){let n=this.distanceToPlane(e);return n===null?null:this.at(n,t)}intersectsPlane(e){let t=e.distanceToPoint(this.origin);return t===0||e.normal.dot(this.direction)*t<0}intersectBox(e,t){let n,r,i,a,o,s,c=1/this.direction.x,l=1/this.direction.y,u=1/this.direction.z,d=this.origin;return c>=0?(n=(e.min.x-d.x)*c,r=(e.max.x-d.x)*c):(n=(e.max.x-d.x)*c,r=(e.min.x-d.x)*c),l>=0?(i=(e.min.y-d.y)*l,a=(e.max.y-d.y)*l):(i=(e.max.y-d.y)*l,a=(e.min.y-d.y)*l),n>a||i>r||((i>n||isNaN(n))&&(n=i),(a=0?(o=(e.min.z-d.z)*u,s=(e.max.z-d.z)*u):(o=(e.max.z-d.z)*u,s=(e.min.z-d.z)*u),n>s||o>r)||((o>n||n!==n)&&(n=o),(s=0?n:r,t)}intersectsBox(e){return this.intersectBox(e,rf)!==null}intersectTriangle(e,t,n,r,i){cf.subVectors(t,e),lf.subVectors(n,e),uf.crossVectors(cf,lf);let a=this.direction.dot(uf),o;if(a>0){if(r)return null;o=1}else if(a<0)o=-1,a=-a;else return null;sf.subVectors(this.origin,e);let s=o*this.direction.dot(lf.crossVectors(sf,lf));if(s<0)return null;let c=o*this.direction.dot(cf.cross(sf));if(c<0||s+c>a)return null;let l=-o*sf.dot(uf);return l<0?null:this.at(l/a,i)}applyMatrix4(e){return this.origin.applyMatrix4(e),this.direction.transformDirection(e),this}equals(e){return e.origin.equals(this.origin)&&e.direction.equals(this.direction)}clone(){return new this.constructor().copy(this)}},ff=class extends nf{constructor(e){super(),this.isMeshBasicMaterial=!0,this.type=`MeshBasicMaterial`,this.color=new Z(16777215),this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.envMapRotation=new Au,this.combine=0,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap=`round`,this.wireframeLinejoin=`round`,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.map=e.map,this.lightMap=e.lightMap,this.lightMapIntensity=e.lightMapIntensity,this.aoMap=e.aoMap,this.aoMapIntensity=e.aoMapIntensity,this.specularMap=e.specularMap,this.alphaMap=e.alphaMap,this.envMap=e.envMap,this.envMapRotation.copy(e.envMapRotation),this.combine=e.combine,this.reflectivity=e.reflectivity,this.refractionRatio=e.refractionRatio,this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this.wireframeLinecap=e.wireframeLinecap,this.wireframeLinejoin=e.wireframeLinejoin,this.fog=e.fog,this}},pf=new bu,mf=new df,hf=new Ud,gf=new X,_f=new X,vf=new X,yf=new X,bf=new X,xf=new X,Sf=new X,Cf=new X,Q=class extends qu{constructor(e=new Zd,t=new ff){super(),this.isMesh=!0,this.type=`Mesh`,this.geometry=e,this.material=t,this.morphTargetDictionary=void 0,this.morphTargetInfluences=void 0,this.count=1,this.updateMorphTargets()}copy(e,t){return super.copy(e,t),e.morphTargetInfluences!==void 0&&(this.morphTargetInfluences=e.morphTargetInfluences.slice()),e.morphTargetDictionary!==void 0&&(this.morphTargetDictionary=Object.assign({},e.morphTargetDictionary)),this.material=Array.isArray(e.material)?e.material.slice():e.material,this.geometry=e.geometry,this}updateMorphTargets(){let e=this.geometry.morphAttributes,t=Object.keys(e);if(t.length>0){let n=e[t[0]];if(n!==void 0){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let e=0,t=n.length;e(e.far-e.near)**2))&&(pf.copy(i).invert(),mf.copy(e.ray).applyMatrix4(pf),!(n.boundingBox!==null&&mf.intersectsBox(n.boundingBox)===!1)&&this._computeIntersections(e,t,mf)))}_computeIntersections(e,t,n){let r,i=this.geometry,a=this.material,o=i.index,s=i.attributes.position,c=i.attributes.uv,l=i.attributes.uv1,u=i.attributes.normal,d=i.groups,f=i.drawRange;if(o!==null)if(Array.isArray(a))for(let i=0,s=d.length;in.far?null:{distance:l,point:Cf.clone(),object:e}}function Tf(e,t,n,r,i,a,o,s,c,l){e.getVertexPosition(s,_f),e.getVertexPosition(c,vf),e.getVertexPosition(l,yf);let u=wf(e,t,n,r,_f,vf,yf,Sf);if(u){let e=new X;_d.getBarycoord(Sf,_f,vf,yf,e),i&&(u.uv=_d.getInterpolatedAttribute(i,s,c,l,e,new Y)),a&&(u.uv1=_d.getInterpolatedAttribute(a,s,c,l,e,new Y)),o&&(u.normal=_d.getInterpolatedAttribute(o,s,c,l,e,new X),u.normal.dot(r.direction)>0&&u.normal.multiplyScalar(-1));let t={a:s,b:c,c:l,normal:new X,materialIndex:0};_d.getNormal(_f,vf,yf,t.normal),u.face=t,u.barycoord=e}return u}var Ef=new hu,Df=new hu,Of=new hu,kf=new hu,Af=new bu,jf=new X,Mf=new Ud,Nf=new bu,Pf=new df,Ff=class extends Q{constructor(e,t){super(e,t),this.isSkinnedMesh=!0,this.type=`SkinnedMesh`,this.bindMode=ks,this.bindMatrix=new bu,this.bindMatrixInverse=new bu,this.boundingBox=null,this.boundingSphere=null}computeBoundingBox(){let e=this.geometry;this.boundingBox===null&&(this.boundingBox=new vd),this.boundingBox.makeEmpty();let t=e.getAttribute(`position`);for(let e=0;e1)?null:t.copy(e.start).addScaledVector(r,a)}intersectsLine(e){let t=this.distanceToPoint(e.start),n=this.distanceToPoint(e.end);return t<0&&n>0||n<0&&t>0}intersectsBox(e){return e.intersectsPlane(this)}intersectsSphere(e){return e.intersectsPlane(this)}coplanarPoint(e){return e.copy(this.normal).multiplyScalar(-this.constant)}applyMatrix4(e,t){let n=t||Qf.getNormalMatrix(e),r=this.coplanarPoint(Xf).applyMatrix4(e),i=this.normal.applyMatrix3(n).normalize();return this.constant=-r.dot(i),this}translate(e){return this.constant-=e.dot(this.normal),this}equals(e){return e.normal.equals(this.normal)&&e.constant===this.constant}clone(){return new this.constructor().copy(this)}},ep=new Ud,tp=new Y(.5,.5),np=new X,rp=class{constructor(e=new $f,t=new $f,n=new $f,r=new $f,i=new $f,a=new $f){this.planes=[e,t,n,r,i,a]}set(e,t,n,r,i,a){let o=this.planes;return o[0].copy(e),o[1].copy(t),o[2].copy(n),o[3].copy(r),o[4].copy(i),o[5].copy(a),this}copy(e){let t=this.planes;for(let n=0;n<6;n++)t[n].copy(e.planes[n]);return this}setFromProjectionMatrix(e,t=ul,n=!1){let r=this.planes,i=e.elements,a=i[0],o=i[1],s=i[2],c=i[3],l=i[4],u=i[5],d=i[6],f=i[7],p=i[8],m=i[9],h=i[10],g=i[11],_=i[12],v=i[13],y=i[14],b=i[15];if(r[0].setComponents(c-a,f-l,g-p,b-_).normalize(),r[1].setComponents(c+a,f+l,g+p,b+_).normalize(),r[2].setComponents(c+o,f+u,g+m,b+v).normalize(),r[3].setComponents(c-o,f-u,g-m,b-v).normalize(),n)r[4].setComponents(s,d,h,y).normalize(),r[5].setComponents(c-s,f-d,g-h,b-y).normalize();else if(r[4].setComponents(c-s,f-d,g-h,b-y).normalize(),t===2e3)r[5].setComponents(c+s,f+d,g+h,b+y).normalize();else if(t===2001)r[5].setComponents(s,d,h,y).normalize();else throw Error(`THREE.Frustum.setFromProjectionMatrix(): Invalid coordinate system: `+t);return this}intersectsObject(e){if(e.boundingSphere!==void 0)e.boundingSphere===null&&e.computeBoundingSphere(),ep.copy(e.boundingSphere).applyMatrix4(e.matrixWorld);else{let t=e.geometry;t.boundingSphere===null&&t.computeBoundingSphere(),ep.copy(t.boundingSphere).applyMatrix4(e.matrixWorld)}return this.intersectsSphere(ep)}intersectsSprite(e){return ep.center.set(0,0,0),ep.radius=.7071067811865476+tp.distanceTo(e.center),ep.applyMatrix4(e.matrixWorld),this.intersectsSphere(ep)}intersectsSphere(e){let t=this.planes,n=e.center,r=-e.radius;for(let e=0;e<6;e++)if(t[e].distanceToPoint(n)0?e.max.x:e.min.x,np.y=r.normal.y>0?e.max.y:e.min.y,np.z=r.normal.z>0?e.max.z:e.min.z,r.distanceToPoint(np)<0)return!1}return!0}containsPoint(e){let t=this.planes;for(let n=0;n<6;n++)if(t[n].distanceToPoint(e)<0)return!1;return!0}clone(){return new this.constructor().copy(this)}},ip=class extends nf{constructor(e){super(),this.isLineBasicMaterial=!0,this.type=`LineBasicMaterial`,this.color=new Z(16777215),this.map=null,this.linewidth=1,this.linecap=`round`,this.linejoin=`round`,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.color.copy(e.color),this.map=e.map,this.linewidth=e.linewidth,this.linecap=e.linecap,this.linejoin=e.linejoin,this.fog=e.fog,this}},ap=new X,op=new X,sp=new bu,cp=new df,lp=new Ud,up=new X,dp=new X,fp=class extends qu{constructor(e=new Zd,t=new ip){super(),this.isLine=!0,this.type=`Line`,this.geometry=e,this.material=t,this.morphTargetDictionary=void 0,this.morphTargetInfluences=void 0,this.updateMorphTargets()}copy(e,t){return super.copy(e,t),this.material=Array.isArray(e.material)?e.material.slice():e.material,this.geometry=e.geometry,this}computeLineDistances(){let e=this.geometry;if(e.index===null){let t=e.attributes.position,n=[0];for(let e=1,r=t.count;e0){let n=e[t[0]];if(n!==void 0){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let e=0,t=n.length;er)return;up.applyMatrix4(e.matrixWorld);let c=t.ray.origin.distanceTo(up);if(!(ct.far))return{distance:c,point:dp.clone().applyMatrix4(e.matrixWorld),index:o,face:null,faceIndex:null,barycoord:null,object:e}}var mp=new X,hp=new X,gp=class extends fp{constructor(e,t){super(e,t),this.isLineSegments=!0,this.type=`LineSegments`}computeLineDistances(){let e=this.geometry;if(e.index===null){let t=e.attributes.position,n=[];for(let e=0,r=t.count;e0){let n=e[t[0]];if(n!==void 0){this.morphTargetInfluences=[],this.morphTargetDictionary={};for(let e=0,t=n.length;ei.far)return;a.push({distance:c,distanceToRay:Math.sqrt(s),point:n,index:t,face:null,faceIndex:null,barycoord:null,object:o})}}var Tp=class extends mu{constructor(e=[],t=301,n,r,i,a,o,s,c,l){super(e,t,n,r,i,a,o,s,c,l),this.isCubeTexture=!0,this.flipY=!1}get images(){return this.image}set images(e){this.image=e}},Ep=class extends mu{constructor(e,t,n,r,i,a,o,s,c){super(e,t,n,r,i,a,o,s,c),this.isCanvasTexture=!0,this.needsUpdate=!0}},Dp=class extends mu{constructor(e,t,n=Ws,r,i,a,o=Ns,s=Ns,c,l=tc,u=1){if(l!==1026&&l!==1027)throw Error(`THREE.DepthTexture: format must be either THREE.DepthFormat or THREE.DepthStencilFormat`);super({width:e,height:t,depth:u},r,i,a,o,s,l,n,c),this.isDepthTexture=!0,this.flipY=!1,this.generateMipmaps=!1,this.compareFunction=null}copy(e){return super.copy(e),this.source=new uu(Object.assign({},e.image)),this.compareFunction=e.compareFunction,this}toJSON(e){let t=super.toJSON(e);return this.compareFunction!==null&&(t.compareFunction=this.compareFunction),t}},Op=class extends Dp{constructor(e,t=Ws,n=301,r,i,a=Ns,o=Ns,s,c=tc){let l={width:e,height:e,depth:1},u=[l,l,l,l,l,l];super(e,e,t,n,r,i,a,o,s,c),this.image=u,this.isCubeDepthTexture=!0,this.isCubeTexture=!0}get images(){return this.image}set images(e){this.image=e}},kp=class extends mu{constructor(e=null){super(),this.sourceTexture=e,this.isExternalTexture=!0}copy(e){return super.copy(e),this.sourceTexture=e.sourceTexture,this}},Ap=class e extends Zd{constructor(e=1,t=1,n=1,r=1,i=1,a=1){super(),this.type=`BoxGeometry`,this.parameters={width:e,height:t,depth:n,widthSegments:r,heightSegments:i,depthSegments:a};let o=this;r=Math.floor(r),i=Math.floor(i),a=Math.floor(a);let s=[],c=[],l=[],u=[],d=0,f=0;p(`z`,`y`,`x`,-1,-1,n,t,e,a,i,0),p(`z`,`y`,`x`,1,-1,n,t,-e,a,i,1),p(`x`,`z`,`y`,1,1,e,n,t,r,a,2),p(`x`,`z`,`y`,1,-1,e,n,-t,r,a,3),p(`x`,`y`,`z`,1,-1,e,t,n,r,i,4),p(`x`,`y`,`z`,-1,-1,e,t,-n,r,i,5),this.setIndex(s),this.setAttribute(`position`,new zd(c,3)),this.setAttribute(`normal`,new zd(l,3)),this.setAttribute(`uv`,new zd(u,2));function p(e,t,n,r,i,a,p,m,h,g,_){let v=a/h,y=p/g,b=a/2,x=p/2,S=m/2,C=h+1,w=g+1,T=0,E=0,D=new X;for(let a=0;a0?1:-1,l.push(D.x,D.y,D.z),u.push(s/h),u.push(1-a/g),T+=1}for(let e=0;e0){let e=(_-1)*m;for(let t=0;t0&&v(!0),t>0&&v(!1)),this.setIndex(l),this.setAttribute(`position`,new zd(u,3)),this.setAttribute(`normal`,new zd(d,3)),this.setAttribute(`uv`,new zd(f,2));function _(){let a=new X,_=new X,v=0,y=(t-e)/n;for(let c=0;c<=i;c++){let l=[],g=c/i,v=g*(t-e)+e;for(let e=0;e<=r;e++){let t=e/r,i=t*s+o,c=Math.sin(i),m=Math.cos(i);_.x=v*c,_.y=-g*n+h,_.z=v*m,u.push(_.x,_.y,_.z),a.set(c,y,m).normalize(),d.push(a.x,a.y,a.z),f.push(t,1-g),l.push(p++)}m.push(l)}for(let n=0;n0||r!==0)&&(l.push(a,o,c),v+=3),(t>0||r!==i-1)&&(l.push(o,s,c),v+=3)}c.addGroup(g,v,0),g+=v}function v(n){let i=p,a=new Y,m=new X,_=0,v=n===!0?e:t,y=n===!0?1:-1;for(let e=1;e<=r;e++)u.push(0,h*y,0),d.push(0,y,0),f.push(.5,.5),p++;let b=p;for(let e=0;e<=r;e++){let t=e/r*s+o,n=Math.cos(t),i=Math.sin(t);m.x=v*i,m.y=h*y,m.z=v*n,u.push(m.x,m.y,m.z),d.push(0,y,0),a.x=n*.5+.5,a.y=i*.5*y+.5,f.push(a.x,a.y),p++}for(let e=0;e0)s=r-1;else{s=r;break}if(r=s,n[r]===a)return r/(i-1);let l=n[r],u=n[r+1]-l,d=(a-l)/u;return(r+d)/(i-1)}getTangent(e,t){let n=1e-4,r=e-n,i=e+n;r<0&&(r=0),i>1&&(i=1);let a=this.getPoint(r),o=this.getPoint(i),s=t||(a.isVector2?new Y:new X);return s.copy(o).sub(a).normalize(),s}getTangentAt(e,t){let n=this.getUtoTmapping(e);return this.getTangent(n,t)}computeFrenetFrames(e,t=!1){let n=new X,r=[],i=[],a=[],o=new X,s=new bu;for(let t=0;t<=e;t++){let n=t/e;r[t]=this.getTangentAt(n,new X)}i[0]=new X,a[0]=new X;let c=Number.MAX_VALUE,l=Math.abs(r[0].x),u=Math.abs(r[0].y),d=Math.abs(r[0].z);l<=c&&(c=l,n.set(1,0,0)),u<=c&&(c=u,n.set(0,1,0)),d<=c&&n.set(0,0,1),o.crossVectors(r[0],n).normalize(),i[0].crossVectors(r[0],o),a[0].crossVectors(r[0],i[0]);for(let t=1;t<=e;t++){if(i[t]=i[t-1].clone(),a[t]=a[t-1].clone(),o.crossVectors(r[t-1],r[t]),o.length()>2**-52){o.normalize();let e=Math.acos(Ol(r[t-1].dot(r[t]),-1,1));i[t].applyMatrix4(s.makeRotationAxis(o,e))}a[t].crossVectors(r[t],i[t])}if(t===!0){let t=Math.acos(Ol(i[0].dot(i[e]),-1,1));t/=e,r[0].dot(o.crossVectors(i[0],i[e]))>0&&(t=-t);for(let n=1;n<=e;n++)i[n].applyMatrix4(s.makeRotationAxis(r[n],t*n)),a[n].crossVectors(r[n],i[n])}return{tangents:r,normals:i,binormals:a}}clone(){return new this.constructor().copy(this)}copy(e){return this.arcLengthDivisions=e.arcLengthDivisions,this}toJSON(){let e={metadata:{version:4.7,type:`Curve`,generator:`Curve.toJSON`}};return e.arcLengthDivisions=this.arcLengthDivisions,e.type=this.type,e}fromJSON(e){return this.arcLengthDivisions=e.arcLengthDivisions,this}},Ip=class extends Fp{constructor(e=0,t=0,n=1,r=1,i=0,a=Math.PI*2,o=!1,s=0){super(),this.isEllipseCurve=!0,this.type=`EllipseCurve`,this.aX=e,this.aY=t,this.xRadius=n,this.yRadius=r,this.aStartAngle=i,this.aEndAngle=a,this.aClockwise=o,this.aRotation=s}getPoint(e,t=new Y){let n=t,r=Math.PI*2,i=this.aEndAngle-this.aStartAngle,a=Math.abs(i)<2**-52;for(;i<0;)i+=r;for(;i>r;)i-=r;i<2**-52&&(i=a?0:r),this.aClockwise===!0&&!a&&(i===r?i=-r:i-=r);let o=this.aStartAngle+e*i,s=this.aX+this.xRadius*Math.cos(o),c=this.aY+this.yRadius*Math.sin(o);if(this.aRotation!==0){let e=Math.cos(this.aRotation),t=Math.sin(this.aRotation),n=s-this.aX,r=c-this.aY;s=n*e-r*t+this.aX,c=n*t+r*e+this.aY}return n.set(s,c)}copy(e){return super.copy(e),this.aX=e.aX,this.aY=e.aY,this.xRadius=e.xRadius,this.yRadius=e.yRadius,this.aStartAngle=e.aStartAngle,this.aEndAngle=e.aEndAngle,this.aClockwise=e.aClockwise,this.aRotation=e.aRotation,this}toJSON(){let e=super.toJSON();return e.aX=this.aX,e.aY=this.aY,e.xRadius=this.xRadius,e.yRadius=this.yRadius,e.aStartAngle=this.aStartAngle,e.aEndAngle=this.aEndAngle,e.aClockwise=this.aClockwise,e.aRotation=this.aRotation,e}fromJSON(e){return super.fromJSON(e),this.aX=e.aX,this.aY=e.aY,this.xRadius=e.xRadius,this.yRadius=e.yRadius,this.aStartAngle=e.aStartAngle,this.aEndAngle=e.aEndAngle,this.aClockwise=e.aClockwise,this.aRotation=e.aRotation,this}},Lp=class extends Ip{constructor(e,t,n,r,i,a){super(e,t,n,n,r,i,a),this.isArcCurve=!0,this.type=`ArcCurve`}};function Rp(){let e=0,t=0,n=0,r=0;function i(i,a,o,s){e=i,t=o,n=-3*i+3*a-2*o-s,r=2*i-2*a+o+s}return{initCatmullRom:function(e,t,n,r,a){i(t,n,a*(n-e),a*(r-t))},initNonuniformCatmullRom:function(e,t,n,r,a,o,s){let c=(t-e)/a-(n-e)/(a+o)+(n-t)/o,l=(n-t)/o-(r-t)/(o+s)+(r-n)/s;c*=o,l*=o,i(t,n,c,l)},calc:function(i){let a=i*i,o=a*i;return e+t*i+n*a+r*o}}}var zp=new X,Bp=new X,Vp=new Rp,Hp=new Rp,Up=new Rp,Wp=class extends Fp{constructor(e=[],t=!1,n=`centripetal`,r=.5){super(),this.isCatmullRomCurve3=!0,this.type=`CatmullRomCurve3`,this.points=e,this.closed=t,this.curveType=n,this.tension=r}getPoint(e,t=new X){let n=t,r=this.points,i=r.length,a=(i-+!this.closed)*e,o=Math.floor(a),s=a-o;this.closed?o+=o>0?0:(Math.floor(Math.abs(o)/i)+1)*i:s===0&&o===i-1&&(o=i-2,s=1);let c,l;this.closed||o>0?c=r[(o-1)%i]:(Bp.subVectors(r[0],r[1]).add(r[0]),c=Bp);let u=r[o%i],d=r[(o+1)%i];if(this.closed||o+2r.length-2?r.length-1:a+1],u=r[a>r.length-3?r.length-1:a+2];return n.set(Gp(o,s.x,c.x,l.x,u.x),Gp(o,s.y,c.y,l.y,u.y)),n}copy(e){super.copy(e),this.points=[];for(let t=0,n=e.points.length;t0)&&f.push(t,i,c),(e!==n-1||s0&&(t.defines=this.defines),t.vertexShader=this.vertexShader,t.fragmentShader=this.fragmentShader,t.lights=this.lights,t.clipping=this.clipping;let n={};for(let e in this.extensions)this.extensions[e]===!0&&(n[e]=!0);return Object.keys(n).length>0&&(t.extensions=n),t}fromJSON(e,t){if(super.fromJSON(e,t),e.uniforms!==void 0)for(let n in e.uniforms){let r=e.uniforms[n];switch(this.uniforms[n]={},r.type){case`t`:this.uniforms[n].value=t[r.value]||null;break;case`c`:this.uniforms[n].value=new Q().setHex(r.value);break;case`v2`:this.uniforms[n].value=new X().fromArray(r.value);break;case`v3`:this.uniforms[n].value=new Z().fromArray(r.value);break;case`v4`:this.uniforms[n].value=new mu().fromArray(r.value);break;case`m3`:this.uniforms[n].value=new Ql().fromArray(r.value);break;case`m4`:this.uniforms[n].value=new yu().fromArray(r.value);break;default:this.uniforms[n].value=r.value}}if(e.defines!==void 0&&(this.defines=e.defines),e.vertexShader!==void 0&&(this.vertexShader=e.vertexShader),e.fragmentShader!==void 0&&(this.fragmentShader=e.fragmentShader),e.glslVersion!==void 0&&(this.glslVersion=e.glslVersion),e.extensions!==void 0)for(let t in e.extensions)this.extensions[t]=e.extensions[t];return e.lights!==void 0&&(this.lights=e.lights),e.clipping!==void 0&&(this.clipping=e.clipping),this}},Sm=class extends xm{constructor(e){super(e),this.isRawShaderMaterial=!0,this.type=`RawShaderMaterial`}},Cm=class extends tf{constructor(e){super(),this.isMeshStandardMaterial=!0,this.type=`MeshStandardMaterial`,this.defines={STANDARD:``},this.color=new Q(16777215),this.roughness=1,this.metalness=0,this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new Q(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=0,this.normalScale=new X(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.roughnessMap=null,this.metalnessMap=null,this.alphaMap=null,this.envMap=null,this.envMapRotation=new ku,this.envMapIntensity=1,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap=`round`,this.wireframeLinejoin=`round`,this.flatShading=!1,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.defines={STANDARD:``},this.color.copy(e.color),this.roughness=e.roughness,this.metalness=e.metalness,this.map=e.map,this.lightMap=e.lightMap,this.lightMapIntensity=e.lightMapIntensity,this.aoMap=e.aoMap,this.aoMapIntensity=e.aoMapIntensity,this.emissive.copy(e.emissive),this.emissiveMap=e.emissiveMap,this.emissiveIntensity=e.emissiveIntensity,this.bumpMap=e.bumpMap,this.bumpScale=e.bumpScale,this.normalMap=e.normalMap,this.normalMapType=e.normalMapType,this.normalScale.copy(e.normalScale),this.displacementMap=e.displacementMap,this.displacementScale=e.displacementScale,this.displacementBias=e.displacementBias,this.roughnessMap=e.roughnessMap,this.metalnessMap=e.metalnessMap,this.alphaMap=e.alphaMap,this.envMap=e.envMap,this.envMapRotation.copy(e.envMapRotation),this.envMapIntensity=e.envMapIntensity,this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this.wireframeLinecap=e.wireframeLinecap,this.wireframeLinejoin=e.wireframeLinejoin,this.flatShading=e.flatShading,this.fog=e.fog,this}},wm=class extends Cm{constructor(e){super(),this.isMeshPhysicalMaterial=!0,this.defines={STANDARD:``,PHYSICAL:``},this.type=`MeshPhysicalMaterial`,this.anisotropyRotation=0,this.anisotropyMap=null,this.clearcoatMap=null,this.clearcoatRoughness=0,this.clearcoatRoughnessMap=null,this.clearcoatNormalScale=new X(1,1),this.clearcoatNormalMap=null,this.ior=1.5,Object.defineProperty(this,"reflectivity",{get:function(){return Dl(2.5*(this.ior-1)/(this.ior+1),0,1)},set:function(e){this.ior=(1+.4*e)/(1-.4*e)}}),this.iridescenceMap=null,this.iridescenceIOR=1.3,this.iridescenceThicknessRange=[100,400],this.iridescenceThicknessMap=null,this.sheenColor=new Q(0),this.sheenColorMap=null,this.sheenRoughness=1,this.sheenRoughnessMap=null,this.transmissionMap=null,this.thickness=0,this.thicknessMap=null,this.attenuationDistance=1/0,this.attenuationColor=new Q(1,1,1),this.specularIntensity=1,this.specularIntensityMap=null,this.specularColor=new Q(1,1,1),this.specularColorMap=null,this._anisotropy=0,this._clearcoat=0,this._dispersion=0,this._iridescence=0,this._sheen=0,this._transmission=0,this.setValues(e)}get anisotropy(){return this._anisotropy}set anisotropy(e){this._anisotropy>0!=e>0&&this.version++,this._anisotropy=e}get clearcoat(){return this._clearcoat}set clearcoat(e){this._clearcoat>0!=e>0&&this.version++,this._clearcoat=e}get iridescence(){return this._iridescence}set iridescence(e){this._iridescence>0!=e>0&&this.version++,this._iridescence=e}get dispersion(){return this._dispersion}set dispersion(e){this._dispersion>0!=e>0&&this.version++,this._dispersion=e}get sheen(){return this._sheen}set sheen(e){this._sheen>0!=e>0&&this.version++,this._sheen=e}get transmission(){return this._transmission}set transmission(e){this._transmission>0!=e>0&&this.version++,this._transmission=e}copy(e){return super.copy(e),this.defines={STANDARD:``,PHYSICAL:``},this.anisotropy=e.anisotropy,this.anisotropyRotation=e.anisotropyRotation,this.anisotropyMap=e.anisotropyMap,this.clearcoat=e.clearcoat,this.clearcoatMap=e.clearcoatMap,this.clearcoatRoughness=e.clearcoatRoughness,this.clearcoatRoughnessMap=e.clearcoatRoughnessMap,this.clearcoatNormalMap=e.clearcoatNormalMap,this.clearcoatNormalScale.copy(e.clearcoatNormalScale),this.dispersion=e.dispersion,this.ior=e.ior,this.iridescence=e.iridescence,this.iridescenceMap=e.iridescenceMap,this.iridescenceIOR=e.iridescenceIOR,this.iridescenceThicknessRange=[...e.iridescenceThicknessRange],this.iridescenceThicknessMap=e.iridescenceThicknessMap,this.sheen=e.sheen,this.sheenColor.copy(e.sheenColor),this.sheenColorMap=e.sheenColorMap,this.sheenRoughness=e.sheenRoughness,this.sheenRoughnessMap=e.sheenRoughnessMap,this.transmission=e.transmission,this.transmissionMap=e.transmissionMap,this.thickness=e.thickness,this.thicknessMap=e.thicknessMap,this.attenuationDistance=e.attenuationDistance,this.attenuationColor.copy(e.attenuationColor),this.specularIntensity=e.specularIntensity,this.specularIntensityMap=e.specularIntensityMap,this.specularColor.copy(e.specularColor),this.specularColorMap=e.specularColorMap,this}},Tm=class extends tf{constructor(e){super(),this.isMeshDepthMaterial=!0,this.type=`MeshDepthMaterial`,this.depthPacking=tl,this.map=null,this.alphaMap=null,this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.wireframe=!1,this.wireframeLinewidth=1,this.setValues(e)}copy(e){return super.copy(e),this.depthPacking=e.depthPacking,this.map=e.map,this.alphaMap=e.alphaMap,this.displacementMap=e.displacementMap,this.displacementScale=e.displacementScale,this.displacementBias=e.displacementBias,this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this}},Em=class extends tf{constructor(e){super(),this.isMeshDistanceMaterial=!0,this.type=`MeshDistanceMaterial`,this.map=null,this.alphaMap=null,this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.setValues(e)}copy(e){return super.copy(e),this.map=e.map,this.alphaMap=e.alphaMap,this.displacementMap=e.displacementMap,this.displacementScale=e.displacementScale,this.displacementBias=e.displacementBias,this}};function Dm(e,t){return!e||e.constructor===t?e:typeof t.BYTES_PER_ELEMENT==`number`?new t(e):Array.prototype.slice.call(e)}function Om(e){function t(t,n){return e[t]-e[n]}let n=e.length,r=Array(n);for(let e=0;e!==n;++e)r[e]=e;return r.sort(t),r}function km(e,t,n){let r=e.length,i=new e.constructor(r);for(let a=0,o=0;o!==r;++a){let r=n[a]*t;for(let n=0;n!==t;++n)i[o++]=e[r+n]}return i}function Am(e,t,n,r){let i=1,a=e[0];for(;a!==void 0&&a[r]===void 0;)a=e[i++];if(a===void 0)return;let o=a[r];if(o!==void 0)if(Array.isArray(o))do o=a[r],o!==void 0&&(t.push(a.time),n.push(...o)),a=e[i++];while(a!==void 0);else if(o.toArray!==void 0)do o=a[r],o!==void 0&&(t.push(a.time),o.toArray(n,n.length)),a=e[i++];while(a!==void 0);else do o=a[r],o!==void 0&&(t.push(a.time),n.push(o)),a=e[i++];while(a!==void 0)}var jm=class{constructor(e,t,n,r){this.parameterPositions=e,this._cachedIndex=0,this.resultBuffer=r===void 0?new t.constructor(n):r,this.sampleValues=t,this.valueSize=n,this.settings=null,this.DefaultSettings_={}}evaluate(e){let t=this.parameterPositions,n=this._cachedIndex,r=t[n],i=t[n-1];validate_interval:{seek:{let a;linear_scan:{forward_scan:if(!(e=i)){let o=t[1];e=i)break seek}a=n,n=0;break linear_scan}break validate_interval}for(;n>>1;et;)--a;if(++a,i!==0||a!==r){i>=a&&(a=Math.max(a,1),i=a-1);let e=this.getValueSize();this.times=n.slice(i,a),this.values=this.values.slice(i*e,a*e)}return this}validate(){let e=!0,t=this.getValueSize();t-Math.floor(t)!==0&&(_l(`KeyframeTrack: Invalid value size in track.`,this),e=!1);let n=this.times,r=this.values,i=n.length;i===0&&(_l(`KeyframeTrack: Track is empty.`,this),e=!1);let a=null;for(let t=0;t!==i;t++){let r=n[t];if(typeof r==`number`&&isNaN(r)){_l(`KeyframeTrack: Time is not a valid number.`,this,t,r),e=!1;break}if(a!==null&&a>r){_l(`KeyframeTrack: Out of order keys.`,this,t,r,a),e=!1;break}a=r}if(r!==void 0&&dl(r))for(let t=0,n=r.length;t!==n;++t){let n=r[t];if(isNaN(n)){_l(`KeyframeTrack: Value is not a valid number.`,this,t,n),e=!1;break}}return e}optimize(){let e=this.times.slice(),t=this.values.slice(),n=this.getValueSize(),r=this.getInterpolation()===Jc,i=e.length-1,a=1;for(let o=1;o0){e[a]=e[i];for(let e=i*n,r=a*n,o=0;o!==n;++o)t[r+o]=t[e+o];++a}return a===e.length?(this.times=e,this.values=t):(this.times=e.slice(0,a),this.values=t.slice(0,a*n)),this}clone(){let e=this.times.slice(),t=this.values.slice(),n=this.constructor,r=new n(this.name,e,t);return r.createInterpolant=this.createInterpolant,r}};Im.prototype.ValueTypeName=``,Im.prototype.TimeBufferType=Float32Array,Im.prototype.ValueBufferType=Float32Array,Im.prototype.DefaultInterpolation=qc;var Lm=class extends Im{constructor(e,t,n){super(e,t,n)}};Lm.prototype.ValueTypeName=`bool`,Lm.prototype.ValueBufferType=Array,Lm.prototype.DefaultInterpolation=Kc,Lm.prototype.InterpolantFactoryMethodLinear=void 0,Lm.prototype.InterpolantFactoryMethodSmooth=void 0;var Rm=class extends Im{constructor(e,t,n,r){super(e,t,n,r)}};Rm.prototype.ValueTypeName=`color`;var zm=class extends Im{constructor(e,t,n,r){super(e,t,n,r)}};zm.prototype.ValueTypeName=`number`;var Bm=class extends jm{constructor(e,t,n,r){super(e,t,n,r)}interpolate_(e,t,n,r){let i=this.resultBuffer,a=this.sampleValues,o=this.valueSize,s=(n-t)/(r-t),c=e*o;for(let e=c+o;c!==e;c+=4)Yl.slerpFlat(i,0,a,c-o,a,c,s);return i}},Vm=class extends Im{constructor(e,t,n,r){super(e,t,n,r)}InterpolantFactoryMethodLinear(e){return new Bm(this.times,this.values,this.getValueSize(),e)}};Vm.prototype.ValueTypeName=`quaternion`,Vm.prototype.InterpolantFactoryMethodSmooth=void 0;var Hm=class extends Im{constructor(e,t,n){super(e,t,n)}};Hm.prototype.ValueTypeName=`string`,Hm.prototype.ValueBufferType=Array,Hm.prototype.DefaultInterpolation=Kc,Hm.prototype.InterpolantFactoryMethodLinear=void 0,Hm.prototype.InterpolantFactoryMethodSmooth=void 0;var Um=class extends Im{constructor(e,t,n,r){super(e,t,n,r)}};Um.prototype.ValueTypeName=`vector`;var Wm=class{constructor(e=``,t=-1,n=[],r=$c){this.name=e,this.tracks=n,this.duration=t,this.blendMode=r,this.uuid=El(),this.userData={},this.duration<0&&this.resetDuration()}static parse(e){let t=[],n=e.tracks,r=1/(e.fps||1);for(let e=0,i=n.length;e!==i;++e)t.push(Km(n[e]).scale(r));let i=new this(e.name,e.duration,t,e.blendMode);return i.uuid=e.uuid,i.userData=JSON.parse(e.userData||`{}`),i}static toJSON(e){let t=[],n=e.tracks,r={name:e.name,duration:e.duration,tracks:t,uuid:e.uuid,blendMode:e.blendMode,userData:JSON.stringify(e.userData)};for(let e=0,r=n.length;e!==r;++e)t.push(Im.toJSON(n[e]));return r}static CreateFromMorphTargetSequence(e,t,n,r){let i=t.length,a=[];for(let e=0;e1){let e=a[1],t=r[e];t||(r[e]=t=[]),t.push(n)}}let a=[];for(let e in r)a.push(this.CreateFromMorphTargetSequence(e,r[e],t,n));return a}resetDuration(){let e=this.tracks,t=0;for(let n=0,r=e.length;n!==r;++n){let e=this.tracks[n];t=Math.max(t,e.times[e.times.length-1])}return this.duration=t,this}trim(){for(let e=0;e{t&&t(i),this.manager.itemEnd(e)},0);return}if(Zm[e]!==void 0){Zm[e].push({onLoad:t,onProgress:n,onError:r});return}Zm[e]=[],Zm[e].push({onLoad:t,onProgress:n,onError:r});let a=new Request(e,{headers:new Headers(this.requestHeader),credentials:this.withCredentials?`include`:`same-origin`,signal:typeof AbortSignal.any==`function`?AbortSignal.any([this._abortController.signal,this.manager.abortController.signal]):this._abortController.signal}),o=this.mimeType,s=this.responseType;fetch(a).then(t=>{if(t.status===200||t.status===0){if(t.status===0&&Y(`FileLoader: HTTP Status 0 received.`),typeof ReadableStream>`u`||t.body===void 0||t.body.getReader===void 0)return t;let n=Zm[e],r=t.body.getReader(),i=t.headers.get(`X-File-Size`)||t.headers.get(`Content-Length`),a=i?parseInt(i):0,o=a!==0,s=0,c=new ReadableStream({start(e){t();function t(){r.read().then(({done:r,value:i})=>{if(r)e.close();else{s+=i.byteLength;let r=new ProgressEvent(`progress`,{lengthComputable:o,loaded:s,total:a});for(let e=0,t=n.length;e{e.error(t)})}}});return new Response(c)}else throw new Qm(`fetch for "${t.url}" responded with ${t.status}: ${t.statusText}`,t)}).then(e=>{switch(s){case`arraybuffer`:return e.arrayBuffer();case`blob`:return e.blob();case`document`:return e.text().then(e=>new DOMParser().parseFromString(e,o));case`json`:return e.json();default:if(o===``)return e.text();{let t=/charset="?([^;"\s]*)"?/i.exec(o),n=t&&t[1]?t[1].toLowerCase():void 0,r=new TextDecoder(n);return e.arrayBuffer().then(e=>r.decode(e))}}}).then(t=>{qm.add(`file:${e}`,t);let n=Zm[e];delete Zm[e];for(let e=0,r=n.length;e{let n=Zm[e];if(n===void 0)throw this.manager.itemError(e),t;delete Zm[e];for(let e=0,r=n.length;e{this.manager.itemEnd(e)}),this.manager.itemStart(e)}setResponseType(e){return this.responseType=e,this}setMimeType(e){return this.mimeType=e,this}abort(){return this._abortController.abort(),this._abortController=new AbortController,this}},eh=new WeakMap,th=class extends Xm{constructor(e){super(e)}load(e,t,n,r){this.path!==void 0&&(e=this.path+e),e=this.manager.resolveURL(e);let i=this,a=qm.get(`image:${e}`);if(a!==void 0){if(a.complete===!0)i.manager.itemStart(e),setTimeout(function(){t&&t(a),i.manager.itemEnd(e)},0);else{let e=eh.get(a);e===void 0&&(e=[],eh.set(a,e)),e.push({onLoad:t,onError:r})}return a}let o=fl(`img`);function s(){l(),t&&t(this);let n=eh.get(this)||[];for(let e=0;e`u`&&Y(`ImageBitmapLoader: createImageBitmap() not supported.`),typeof fetch>`u`&&Y(`ImageBitmapLoader: fetch() not supported.`),this.options={premultiplyAlpha:`none`},this._abortController=new AbortController}setOptions(e){return this.options=e,this}load(e,t,n,r){e===void 0&&(e=``),this.path!==void 0&&(e=this.path+e),e=this.manager.resolveURL(e);let i=this,a=qm.get(`image-bitmap:${e}`);if(a!==void 0){if(i.manager.itemStart(e),a.then){a.then(n=>{Eh.has(a)===!0?(r&&r(Eh.get(a)),i.manager.itemError(e),i.manager.itemEnd(e)):(t&&t(n),i.manager.itemEnd(e))});return}setTimeout(function(){t&&t(a),i.manager.itemEnd(e)},0);return}let o={};o.credentials=this.crossOrigin===`anonymous`?`same-origin`:`include`,o.headers=this.requestHeader,o.signal=typeof AbortSignal.any==`function`?AbortSignal.any([this._abortController.signal,this.manager.abortController.signal]):this._abortController.signal;let s=fetch(e,o).then(function(e){return e.blob()}).then(function(e){return createImageBitmap(e,Object.assign(i.options,{colorSpaceConversion:`none`}))}).then(function(n){qm.add(`image-bitmap:${e}`,n),t&&t(n),i.manager.itemEnd(e)}).catch(function(t){r&&r(t),Eh.set(s,t),qm.remove(`image-bitmap:${e}`),i.manager.itemError(e),i.manager.itemEnd(e)});qm.add(`image-bitmap:${e}`,s),i.manager.itemStart(e)}abort(){return this._abortController.abort(),this._abortController=new AbortController,this}},Oh=-90,kh=1,Ah=class extends Ku{constructor(e,t,n){super(),this.type=`CubeCamera`,this.renderTarget=n,this.coordinateSystem=null,this.activeMipmapLevel=0;let r=new gh(Oh,kh,e,t);r.layers=this.layers,this.add(r);let i=new gh(Oh,kh,e,t);i.layers=this.layers,this.add(i);let a=new gh(Oh,kh,e,t);a.layers=this.layers,this.add(a);let o=new gh(Oh,kh,e,t);o.layers=this.layers,this.add(o);let s=new gh(Oh,kh,e,t);s.layers=this.layers,this.add(s);let c=new gh(Oh,kh,e,t);c.layers=this.layers,this.add(c)}updateCoordinateSystem(){let e=this.coordinateSystem,t=this.children.concat(),[n,r,i,a,o,s]=t;for(let e of t)this.remove(e);if(e===2e3)n.up.set(0,1,0),n.lookAt(1,0,0),r.up.set(0,1,0),r.lookAt(-1,0,0),i.up.set(0,0,-1),i.lookAt(0,1,0),a.up.set(0,0,1),a.lookAt(0,-1,0),o.up.set(0,1,0),o.lookAt(0,0,1),s.up.set(0,1,0),s.lookAt(0,0,-1);else if(e===2001)n.up.set(0,-1,0),n.lookAt(-1,0,0),r.up.set(0,-1,0),r.lookAt(1,0,0),i.up.set(0,0,1),i.lookAt(0,1,0),a.up.set(0,0,-1),a.lookAt(0,-1,0),o.up.set(0,-1,0),o.lookAt(0,0,1),s.up.set(0,-1,0),s.lookAt(0,0,-1);else throw Error(`THREE.CubeCamera.updateCoordinateSystem(): Invalid coordinate system: `+e);for(let e of t)this.add(e),e.updateMatrixWorld()}update(e,t){this.parent===null&&this.updateMatrixWorld();let{renderTarget:n,activeMipmapLevel:r}=this;this.coordinateSystem!==e.coordinateSystem&&(this.coordinateSystem=e.coordinateSystem,this.updateCoordinateSystem());let[i,a,o,s,c,l]=this.children,u=e.getRenderTarget(),d=e.getActiveCubeFace(),f=e.getActiveMipmapLevel(),p=e.xr.enabled;e.xr.enabled=!1;let m=n.texture.generateMipmaps;n.texture.generateMipmaps=!1;let h=!1;h=e.isWebGLRenderer===!0?e.state.buffers.depth.getReversed():e.reversedDepthBuffer,e.setRenderTarget(n,0,r),h&&e.autoClear===!1&&e.clearDepth(),e.render(t,i),e.setRenderTarget(n,1,r),h&&e.autoClear===!1&&e.clearDepth(),e.render(t,a),e.setRenderTarget(n,2,r),h&&e.autoClear===!1&&e.clearDepth(),e.render(t,o),e.setRenderTarget(n,3,r),h&&e.autoClear===!1&&e.clearDepth(),e.render(t,s),e.setRenderTarget(n,4,r),h&&e.autoClear===!1&&e.clearDepth(),e.render(t,c),n.texture.generateMipmaps=m,e.setRenderTarget(n,5,r),h&&e.autoClear===!1&&e.clearDepth(),e.render(t,l),e.setRenderTarget(u,d,f),e.xr.enabled=p,n.texture.needsPMREMUpdate=!0}},jh=class extends gh{constructor(e=[]){super(),this.isArrayCamera=!0,this.isMultiViewCamera=!1,this.cameras=e}},Mh=class{constructor(){this._previousTime=0,this._currentTime=0,this._startTime=performance.now(),this._delta=0,this._elapsed=0,this._timescale=1,this._document=null,this._pageVisibilityHandler=null}connect(e){this._document=e,e.hidden!==void 0&&(this._pageVisibilityHandler=Nh.bind(this),e.addEventListener(`visibilitychange`,this._pageVisibilityHandler,!1))}disconnect(){this._pageVisibilityHandler!==null&&(this._document.removeEventListener(`visibilitychange`,this._pageVisibilityHandler),this._pageVisibilityHandler=null),this._document=null}getDelta(){return this._delta/1e3}getElapsed(){return this._elapsed/1e3}getTimescale(){return this._timescale}setTimescale(e){return this._timescale=e,this}reset(){return this._currentTime=performance.now()-this._startTime,this}dispose(){this.disconnect()}update(e){return this._pageVisibilityHandler!==null&&this._document.hidden===!0?this._delta=0:(this._previousTime=this._currentTime,this._currentTime=(e===void 0?performance.now():e)-this._startTime,this._delta=(this._currentTime-this._previousTime)*this._timescale,this._elapsed+=this._delta),this}};function Nh(){this._document.hidden===!1&&this.reset()}var Ph=class{constructor(e,t,n){this.binding=e,this.valueSize=n;let r,i,a;switch(t){case`quaternion`:r=this._slerp,i=this._slerpAdditive,a=this._setAdditiveIdentityQuaternion,this.buffer=new Float64Array(n*6),this._workIndex=5;break;case`string`:case`bool`:r=this._select,i=this._select,a=this._setAdditiveIdentityOther,this.buffer=Array(n*5);break;default:r=this._lerp,i=this._lerpAdditive,a=this._setAdditiveIdentityNumeric,this.buffer=new Float64Array(n*5)}this._mixBufferRegion=r,this._mixBufferRegionAdditive=i,this._setIdentity=a,this._origIndex=3,this._addIndex=4,this.cumulativeWeight=0,this.cumulativeWeightAdditive=0,this.useCount=0,this.referenceCount=0}accumulate(e,t){let n=this.buffer,r=this.valueSize,i=e*r+r,a=this.cumulativeWeight;if(a===0){for(let e=0;e!==r;++e)n[i+e]=n[e];a=t}else{a+=t;let e=t/a;this._mixBufferRegion(n,i,0,e,r)}this.cumulativeWeight=a}accumulateAdditive(e){let t=this.buffer,n=this.valueSize,r=n*this._addIndex;this.cumulativeWeightAdditive===0&&this._setIdentity(),this._mixBufferRegionAdditive(t,r,0,e,n),this.cumulativeWeightAdditive+=e}apply(e){let t=this.valueSize,n=this.buffer,r=e*t+t,i=this.cumulativeWeight,a=this.cumulativeWeightAdditive,o=this.binding;if(this.cumulativeWeight=0,this.cumulativeWeightAdditive=0,i<1){let e=t*this._origIndex;this._mixBufferRegion(n,r,e,1-i,t)}a>0&&this._mixBufferRegionAdditive(n,r,this._addIndex*t,1,t);for(let e=t,i=t+t;e!==i;++e)if(n[e]!==n[e+t]){o.setValue(n,r);break}}saveOriginalState(){let e=this.binding,t=this.buffer,n=this.valueSize,r=n*this._origIndex;e.getValue(t,r);for(let e=n,i=r;e!==i;++e)t[e]=t[r+e%n];this._setIdentity(),this.cumulativeWeight=0,this.cumulativeWeightAdditive=0}restoreOriginalState(){let e=this.valueSize*3;this.binding.setValue(this.buffer,e)}_setAdditiveIdentityNumeric(){let e=this._addIndex*this.valueSize,t=e+this.valueSize;for(let n=e;n=.5)for(let r=0;r!==i;++r)e[t+r]=e[n+r]}_slerp(e,t,n,r){Yl.slerpFlat(e,t,e,t,e,n,r)}_slerpAdditive(e,t,n,r,i){let a=this._workIndex*i;Yl.multiplyQuaternionsFlat(e,a,e,t,e,n),Yl.slerpFlat(e,t,e,t,e,a,r)}_lerp(e,t,n,r,i){let a=1-r;for(let o=0;o!==i;++o){let i=t+o;e[i]=e[i]*a+e[n+o]*r}}_lerpAdditive(e,t,n,r,i){for(let a=0;a!==i;++a){let i=t+a;e[i]=e[i]+e[n+a]*r}}},Fh=`\\[\\]\\.:\\/`,Ih=RegExp(`[\\[\\]\\.:\\/]`,`g`),Lh=`[^\\[\\]\\.:\\/]`,Rh=`[^`+Fh.replace(`\\.`,``)+`]`,zh=`((?:WC+[\\/:])*)`.replace(`WC`,Lh),Bh=`(WCOD+)?`.replace(`WCOD`,Rh),Vh=`(?:\\.(WC+)(?:\\[(.+)\\])?)?`.replace(`WC`,Lh),Hh=`\\.(WC+)(?:\\[(.+)\\])?`.replace(`WC`,Lh),Uh=RegExp(`^`+zh+Bh+Vh+Hh+`$`),Wh=[`material`,`materials`,`bones`,`map`],Gh=class{constructor(e,t,n){let r=n||Kh.parseTrackName(t);this._targetGroup=e,this._bindings=e.subscribe_(t,r)}getValue(e,t){this.bind();let n=this._targetGroup.nCachedObjects_,r=this._bindings[n];r!==void 0&&r.getValue(e,t)}setValue(e,t){let n=this._bindings;for(let r=this._targetGroup.nCachedObjects_,i=n.length;r!==i;++r)n[r].setValue(e,t)}bind(){let e=this._bindings;for(let t=this._targetGroup.nCachedObjects_,n=e.length;t!==n;++t)e[t].bind()}unbind(){let e=this._bindings;for(let t=this._targetGroup.nCachedObjects_,n=e.length;t!==n;++t)e[t].unbind()}},Kh=class e{constructor(t,n,r){this.path=n,this.parsedPath=r||e.parseTrackName(n),this.node=e.findNode(t,this.parsedPath.nodeName),this.rootNode=t,this.getValue=this._getValue_unbound,this.setValue=this._setValue_unbound}static create(t,n,r){return t&&t.isAnimationObjectGroup?new e.Composite(t,n,r):new e(t,n,r)}static sanitizeNodeName(e){return e.replace(/\s/g,`_`).replace(Ih,``)}static parseTrackName(e){let t=Uh.exec(e);if(t===null)throw Error(`THREE.PropertyBinding: Cannot parse trackName: `+e);let n={nodeName:t[2],objectName:t[3],objectIndex:t[4],propertyName:t[5],propertyIndex:t[6]},r=n.nodeName&&n.nodeName.lastIndexOf(`.`);if(r!==void 0&&r!==-1){let e=n.nodeName.substring(r+1);Wh.indexOf(e)!==-1&&(n.nodeName=n.nodeName.substring(0,r),n.objectName=e)}if(n.propertyName===null||n.propertyName.length===0)throw Error(`THREE.PropertyBinding: can not parse propertyName from trackName: `+e);return n}static findNode(e,t){if(t===void 0||t===``||t===`.`||t===-1||t===e.name||t===e.uuid)return e;if(e.skeleton){let n=e.skeleton.getBoneByName(t);if(n!==void 0)return n}if(e.children){let n=function(e){for(let r=0;r0){let e=this._interpolants,t=this._propertyBindings;switch(this.blendMode){case el:for(let n=0,r=e.length;n!==r;++n)e[n].evaluate(a),t[n].accumulateAdditive(o);break;case $c:default:for(let n=0,i=e.length;n!==i;++n)e[n].evaluate(a),t[n].accumulate(r,o)}}}_updateWeight(e){let t=0;if(this.enabled){t=this.weight;let n=this._weightInterpolant;if(n!==null){let r=n.evaluate(e)[0];t*=r,e>n.parameterPositions[1]&&(this.stopFading(),r===0&&(this.enabled=!1))}}return this._effectiveWeight=t,t}_updateTimeScale(e){let t=0;if(!this.paused){t=this.timeScale;let n=this._timeScaleInterpolant;if(n!==null){let r=n.evaluate(e)[0];t*=r,e>n.parameterPositions[1]&&(t===0?this.paused=!0:(this._restoreTimeScale!==null&&(t=this._restoreTimeScale),this.timeScale=t),this.stopWarping())}}return this._effectiveTimeScale=t,t}_updateTime(e){let t=this._clip.duration,n=this.loop,r=this.time+e,i=this._loopCount,a=n===Gc;if(e===0)return i===-1?r:a&&(i&1)==1?t-r:r;if(n===2200){i===-1&&(this._loopCount=0,this._setEndings(!0,!0,!1));handle_stop:{if(r>=t)r=t;else if(r<0)r=0;else{this.time=r;break handle_stop}this.clampWhenFinished?this.paused=!0:this.enabled=!1,this.time=r,this._mixer.dispatchEvent({type:`finished`,action:this,direction:e<0?-1:1})}}else{if(i===-1&&(e>=0?(i=0,this._setEndings(!0,this.repetitions===0,a)):this._setEndings(this.repetitions===0,!0,a)),r>=t||r<0){let n=Math.floor(r/t);r-=t*n,i+=Math.abs(n);let o=this.repetitions-i;if(o<=0)this.clampWhenFinished?this.paused=!0:this.enabled=!1,r=e>0?t:0,this.time=r,this._mixer.dispatchEvent({type:`finished`,action:this,direction:e>0?1:-1});else{if(o===1){let t=e<0;this._setEndings(t,!t,a)}else this._setEndings(!1,!1,a);this._loopCount=i,this.time=r,this._mixer.dispatchEvent({type:`loop`,action:this,loopDelta:n})}}else this._loopCount=i,this.time=r;if(a&&(i&1)==1)return t-r}return r}_setEndings(e,t,n){let r=this._interpolantSettings;n?(r.endingStart=Zc,r.endingEnd=Zc):(e?r.endingStart=this.zeroSlopeAtStart?Zc:Xc:r.endingStart=Qc,t?r.endingEnd=this.zeroSlopeAtEnd?Zc:Xc:r.endingEnd=Qc)}_scheduleFading(e,t,n){let r=this._mixer,i=r.time,a=this._weightInterpolant;a===null&&(a=r._lendControlInterpolant(),this._weightInterpolant=a);let o=a.parameterPositions,s=a.sampleValues;return o[0]=i,s[0]=t,o[1]=i+e,s[1]=n,this}},Jh=new Float32Array(1),Yh=class extends xl{constructor(e){super(),this._root=e,this._initMemoryManager(),this._accuIndex=0,this.time=0,this.timeScale=1,typeof __THREE_DEVTOOLS__<`u`&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent(`observe`,{detail:this}))}_bindAction(e,t){let n=e._localRoot||this._root,r=e._clip.tracks,i=r.length,a=e._propertyBindings,o=e._interpolants,s=n.uuid,c=this._bindingsByRootAndName,l=c[s];l===void 0&&(l={},c[s]=l);for(let e=0;e!==i;++e){let i=r[e],c=i.name,u=l[c];if(u!==void 0)++u.referenceCount,a[e]=u;else{if(u=a[e],u!==void 0){u._cacheIndex===null&&(++u.referenceCount,this._addInactiveBinding(u,s,c));continue}let r=t&&t._propertyBindings[e].binding.parsedPath;u=new Ph(Kh.create(n,c,r),i.ValueTypeName,i.getValueSize()),++u.referenceCount,this._addInactiveBinding(u,s,c),a[e]=u}o[e].resultBuffer=u.buffer}}_activateAction(e){if(!this._isActiveAction(e)){if(e._cacheIndex===null){let t=(e._localRoot||this._root).uuid,n=e._clip.uuid,r=this._actionsByClip[n];this._bindAction(e,r&&r.knownActions[0]),this._addInactiveAction(e,n,t)}let t=e._propertyBindings;for(let e=0,n=t.length;e!==n;++e){let n=t[e];n.useCount++===0&&(this._lendBinding(n),n.saveOriginalState())}this._lendAction(e)}}_deactivateAction(e){if(this._isActiveAction(e)){let t=e._propertyBindings;for(let e=0,n=t.length;e!==n;++e){let n=t[e];--n.useCount===0&&(n.restoreOriginalState(),this._takeBackBinding(n))}this._takeBackAction(e)}}_initMemoryManager(){this._actions=[],this._nActiveActions=0,this._actionsByClip={},this._bindings=[],this._nActiveBindings=0,this._bindingsByRootAndName={},this._controlInterpolants=[],this._nActiveControlInterpolants=0;let e=this;this.stats={actions:{get total(){return e._actions.length},get inUse(){return e._nActiveActions}},bindings:{get total(){return e._bindings.length},get inUse(){return e._nActiveBindings}},controlInterpolants:{get total(){return e._controlInterpolants.length},get inUse(){return e._nActiveControlInterpolants}}}}_isActiveAction(e){let t=e._cacheIndex;return t!==null&&t=0;--n)e[n].stop();return this}update(e){e*=this.timeScale;let t=this._actions,n=this._nActiveActions,r=this.time+=e,i=Math.sign(e),a=this._accuIndex^=1;for(let o=0;o!==n;++o)t[o]._update(r,e,i,a);let o=this._bindings,s=this._nActiveBindings;for(let e=0;e!==s;++e)o[e].apply(a);return this}setTime(e){this.time=0;for(let e=0;ee.start-t.start);let t=0;for(let e=1;e0&&(t.defines=this.defines),t.vertexShader=this.vertexShader,t.fragmentShader=this.fragmentShader,t.lights=this.lights,t.clipping=this.clipping;let n={};for(let e in this.extensions)this.extensions[e]===!0&&(n[e]=!0);return Object.keys(n).length>0&&(t.extensions=n),t}fromJSON(e,t){if(super.fromJSON(e,t),e.uniforms!==void 0)for(let n in e.uniforms){let r=e.uniforms[n];switch(this.uniforms[n]={},r.type){case`t`:this.uniforms[n].value=t[r.value]||null;break;case`c`:this.uniforms[n].value=new Z().setHex(r.value);break;case`v2`:this.uniforms[n].value=new Y().fromArray(r.value);break;case`v3`:this.uniforms[n].value=new X().fromArray(r.value);break;case`v4`:this.uniforms[n].value=new hu().fromArray(r.value);break;case`m3`:this.uniforms[n].value=new $l().fromArray(r.value);break;case`m4`:this.uniforms[n].value=new bu().fromArray(r.value);break;default:this.uniforms[n].value=r.value}}if(e.defines!==void 0&&(this.defines=e.defines),e.vertexShader!==void 0&&(this.vertexShader=e.vertexShader),e.fragmentShader!==void 0&&(this.fragmentShader=e.fragmentShader),e.glslVersion!==void 0&&(this.glslVersion=e.glslVersion),e.extensions!==void 0)for(let t in e.extensions)this.extensions[t]=e.extensions[t];return e.lights!==void 0&&(this.lights=e.lights),e.clipping!==void 0&&(this.clipping=e.clipping),this}},Sm=class extends xm{constructor(e){super(e),this.isRawShaderMaterial=!0,this.type=`RawShaderMaterial`}},Cm=class extends nf{constructor(e){super(),this.isMeshStandardMaterial=!0,this.type=`MeshStandardMaterial`,this.defines={STANDARD:``},this.color=new Z(16777215),this.roughness=1,this.metalness=0,this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new Z(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=0,this.normalScale=new Y(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.roughnessMap=null,this.metalnessMap=null,this.alphaMap=null,this.envMap=null,this.envMapRotation=new Au,this.envMapIntensity=1,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap=`round`,this.wireframeLinejoin=`round`,this.flatShading=!1,this.fog=!0,this.setValues(e)}copy(e){return super.copy(e),this.defines={STANDARD:``},this.color.copy(e.color),this.roughness=e.roughness,this.metalness=e.metalness,this.map=e.map,this.lightMap=e.lightMap,this.lightMapIntensity=e.lightMapIntensity,this.aoMap=e.aoMap,this.aoMapIntensity=e.aoMapIntensity,this.emissive.copy(e.emissive),this.emissiveMap=e.emissiveMap,this.emissiveIntensity=e.emissiveIntensity,this.bumpMap=e.bumpMap,this.bumpScale=e.bumpScale,this.normalMap=e.normalMap,this.normalMapType=e.normalMapType,this.normalScale.copy(e.normalScale),this.displacementMap=e.displacementMap,this.displacementScale=e.displacementScale,this.displacementBias=e.displacementBias,this.roughnessMap=e.roughnessMap,this.metalnessMap=e.metalnessMap,this.alphaMap=e.alphaMap,this.envMap=e.envMap,this.envMapRotation.copy(e.envMapRotation),this.envMapIntensity=e.envMapIntensity,this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this.wireframeLinecap=e.wireframeLinecap,this.wireframeLinejoin=e.wireframeLinejoin,this.flatShading=e.flatShading,this.fog=e.fog,this}},wm=class extends Cm{constructor(e){super(),this.isMeshPhysicalMaterial=!0,this.defines={STANDARD:``,PHYSICAL:``},this.type=`MeshPhysicalMaterial`,this.anisotropyRotation=0,this.anisotropyMap=null,this.clearcoatMap=null,this.clearcoatRoughness=0,this.clearcoatRoughnessMap=null,this.clearcoatNormalScale=new Y(1,1),this.clearcoatNormalMap=null,this.ior=1.5,Object.defineProperty(this,"reflectivity",{get:function(){return Ol(2.5*(this.ior-1)/(this.ior+1),0,1)},set:function(e){this.ior=(1+.4*e)/(1-.4*e)}}),this.iridescenceMap=null,this.iridescenceIOR=1.3,this.iridescenceThicknessRange=[100,400],this.iridescenceThicknessMap=null,this.sheenColor=new Z(0),this.sheenColorMap=null,this.sheenRoughness=1,this.sheenRoughnessMap=null,this.transmissionMap=null,this.thickness=0,this.thicknessMap=null,this.attenuationDistance=1/0,this.attenuationColor=new Z(1,1,1),this.specularIntensity=1,this.specularIntensityMap=null,this.specularColor=new Z(1,1,1),this.specularColorMap=null,this._anisotropy=0,this._clearcoat=0,this._dispersion=0,this._iridescence=0,this._sheen=0,this._transmission=0,this.setValues(e)}get anisotropy(){return this._anisotropy}set anisotropy(e){this._anisotropy>0!=e>0&&this.version++,this._anisotropy=e}get clearcoat(){return this._clearcoat}set clearcoat(e){this._clearcoat>0!=e>0&&this.version++,this._clearcoat=e}get iridescence(){return this._iridescence}set iridescence(e){this._iridescence>0!=e>0&&this.version++,this._iridescence=e}get dispersion(){return this._dispersion}set dispersion(e){this._dispersion>0!=e>0&&this.version++,this._dispersion=e}get sheen(){return this._sheen}set sheen(e){this._sheen>0!=e>0&&this.version++,this._sheen=e}get transmission(){return this._transmission}set transmission(e){this._transmission>0!=e>0&&this.version++,this._transmission=e}copy(e){return super.copy(e),this.defines={STANDARD:``,PHYSICAL:``},this.anisotropy=e.anisotropy,this.anisotropyRotation=e.anisotropyRotation,this.anisotropyMap=e.anisotropyMap,this.clearcoat=e.clearcoat,this.clearcoatMap=e.clearcoatMap,this.clearcoatRoughness=e.clearcoatRoughness,this.clearcoatRoughnessMap=e.clearcoatRoughnessMap,this.clearcoatNormalMap=e.clearcoatNormalMap,this.clearcoatNormalScale.copy(e.clearcoatNormalScale),this.dispersion=e.dispersion,this.ior=e.ior,this.iridescence=e.iridescence,this.iridescenceMap=e.iridescenceMap,this.iridescenceIOR=e.iridescenceIOR,this.iridescenceThicknessRange=[...e.iridescenceThicknessRange],this.iridescenceThicknessMap=e.iridescenceThicknessMap,this.sheen=e.sheen,this.sheenColor.copy(e.sheenColor),this.sheenColorMap=e.sheenColorMap,this.sheenRoughness=e.sheenRoughness,this.sheenRoughnessMap=e.sheenRoughnessMap,this.transmission=e.transmission,this.transmissionMap=e.transmissionMap,this.thickness=e.thickness,this.thicknessMap=e.thicknessMap,this.attenuationDistance=e.attenuationDistance,this.attenuationColor.copy(e.attenuationColor),this.specularIntensity=e.specularIntensity,this.specularIntensityMap=e.specularIntensityMap,this.specularColor.copy(e.specularColor),this.specularColorMap=e.specularColorMap,this}},Tm=class extends nf{constructor(e){super(),this.isMeshDepthMaterial=!0,this.type=`MeshDepthMaterial`,this.depthPacking=nl,this.map=null,this.alphaMap=null,this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.wireframe=!1,this.wireframeLinewidth=1,this.setValues(e)}copy(e){return super.copy(e),this.depthPacking=e.depthPacking,this.map=e.map,this.alphaMap=e.alphaMap,this.displacementMap=e.displacementMap,this.displacementScale=e.displacementScale,this.displacementBias=e.displacementBias,this.wireframe=e.wireframe,this.wireframeLinewidth=e.wireframeLinewidth,this}},Em=class extends nf{constructor(e){super(),this.isMeshDistanceMaterial=!0,this.type=`MeshDistanceMaterial`,this.map=null,this.alphaMap=null,this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.setValues(e)}copy(e){return super.copy(e),this.map=e.map,this.alphaMap=e.alphaMap,this.displacementMap=e.displacementMap,this.displacementScale=e.displacementScale,this.displacementBias=e.displacementBias,this}};function Dm(e,t){return!e||e.constructor===t?e:typeof t.BYTES_PER_ELEMENT==`number`?new t(e):Array.prototype.slice.call(e)}function Om(e){function t(t,n){return e[t]-e[n]}let n=e.length,r=Array(n);for(let e=0;e!==n;++e)r[e]=e;return r.sort(t),r}function km(e,t,n){let r=e.length,i=new e.constructor(r);for(let a=0,o=0;o!==r;++a){let r=n[a]*t;for(let n=0;n!==t;++n)i[o++]=e[r+n]}return i}function Am(e,t,n,r){let i=1,a=e[0];for(;a!==void 0&&a[r]===void 0;)a=e[i++];if(a===void 0)return;let o=a[r];if(o!==void 0)if(Array.isArray(o))do o=a[r],o!==void 0&&(t.push(a.time),n.push(...o)),a=e[i++];while(a!==void 0);else if(o.toArray!==void 0)do o=a[r],o!==void 0&&(t.push(a.time),o.toArray(n,n.length)),a=e[i++];while(a!==void 0);else do o=a[r],o!==void 0&&(t.push(a.time),n.push(o)),a=e[i++];while(a!==void 0)}var jm=class{constructor(e,t,n,r){this.parameterPositions=e,this._cachedIndex=0,this.resultBuffer=r===void 0?new t.constructor(n):r,this.sampleValues=t,this.valueSize=n,this.settings=null,this.DefaultSettings_={}}evaluate(e){let t=this.parameterPositions,n=this._cachedIndex,r=t[n],i=t[n-1];validate_interval:{seek:{let a;linear_scan:{forward_scan:if(!(e=i)){let o=t[1];e=i)break seek}a=n,n=0;break linear_scan}break validate_interval}for(;n>>1;et;)--a;if(++a,i!==0||a!==r){i>=a&&(a=Math.max(a,1),i=a-1);let e=this.getValueSize();this.times=n.slice(i,a),this.values=this.values.slice(i*e,a*e)}return this}validate(){let e=!0,t=this.getValueSize();t-Math.floor(t)!==0&&(vl(`KeyframeTrack: Invalid value size in track.`,this),e=!1);let n=this.times,r=this.values,i=n.length;i===0&&(vl(`KeyframeTrack: Track is empty.`,this),e=!1);let a=null;for(let t=0;t!==i;t++){let r=n[t];if(typeof r==`number`&&isNaN(r)){vl(`KeyframeTrack: Time is not a valid number.`,this,t,r),e=!1;break}if(a!==null&&a>r){vl(`KeyframeTrack: Out of order keys.`,this,t,r,a),e=!1;break}a=r}if(r!==void 0&&fl(r))for(let t=0,n=r.length;t!==n;++t){let n=r[t];if(isNaN(n)){vl(`KeyframeTrack: Value is not a valid number.`,this,t,n),e=!1;break}}return e}optimize(){let e=this.times.slice(),t=this.values.slice(),n=this.getValueSize(),r=this.getInterpolation()===Yc,i=e.length-1,a=1;for(let o=1;o0){e[a]=e[i];for(let e=i*n,r=a*n,o=0;o!==n;++o)t[r+o]=t[e+o];++a}return a===e.length?(this.times=e,this.values=t):(this.times=e.slice(0,a),this.values=t.slice(0,a*n)),this}clone(){let e=this.times.slice(),t=this.values.slice(),n=this.constructor,r=new n(this.name,e,t);return r.createInterpolant=this.createInterpolant,r}};Im.prototype.ValueTypeName=``,Im.prototype.TimeBufferType=Float32Array,Im.prototype.ValueBufferType=Float32Array,Im.prototype.DefaultInterpolation=Jc;var Lm=class extends Im{constructor(e,t,n){super(e,t,n)}};Lm.prototype.ValueTypeName=`bool`,Lm.prototype.ValueBufferType=Array,Lm.prototype.DefaultInterpolation=qc,Lm.prototype.InterpolantFactoryMethodLinear=void 0,Lm.prototype.InterpolantFactoryMethodSmooth=void 0;var Rm=class extends Im{constructor(e,t,n,r){super(e,t,n,r)}};Rm.prototype.ValueTypeName=`color`;var zm=class extends Im{constructor(e,t,n,r){super(e,t,n,r)}};zm.prototype.ValueTypeName=`number`;var Bm=class extends jm{constructor(e,t,n,r){super(e,t,n,r)}interpolate_(e,t,n,r){let i=this.resultBuffer,a=this.sampleValues,o=this.valueSize,s=(n-t)/(r-t),c=e*o;for(let e=c+o;c!==e;c+=4)Xl.slerpFlat(i,0,a,c-o,a,c,s);return i}},Vm=class extends Im{constructor(e,t,n,r){super(e,t,n,r)}InterpolantFactoryMethodLinear(e){return new Bm(this.times,this.values,this.getValueSize(),e)}};Vm.prototype.ValueTypeName=`quaternion`,Vm.prototype.InterpolantFactoryMethodSmooth=void 0;var Hm=class extends Im{constructor(e,t,n){super(e,t,n)}};Hm.prototype.ValueTypeName=`string`,Hm.prototype.ValueBufferType=Array,Hm.prototype.DefaultInterpolation=qc,Hm.prototype.InterpolantFactoryMethodLinear=void 0,Hm.prototype.InterpolantFactoryMethodSmooth=void 0;var Um=class extends Im{constructor(e,t,n,r){super(e,t,n,r)}};Um.prototype.ValueTypeName=`vector`;var Wm=class{constructor(e=``,t=-1,n=[],r=el){this.name=e,this.tracks=n,this.duration=t,this.blendMode=r,this.uuid=Dl(),this.userData={},this.duration<0&&this.resetDuration()}static parse(e){let t=[],n=e.tracks,r=1/(e.fps||1);for(let e=0,i=n.length;e!==i;++e)t.push(Km(n[e]).scale(r));let i=new this(e.name,e.duration,t,e.blendMode);return i.uuid=e.uuid,i.userData=JSON.parse(e.userData||`{}`),i}static toJSON(e){let t=[],n=e.tracks,r={name:e.name,duration:e.duration,tracks:t,uuid:e.uuid,blendMode:e.blendMode,userData:JSON.stringify(e.userData)};for(let e=0,r=n.length;e!==r;++e)t.push(Im.toJSON(n[e]));return r}static CreateFromMorphTargetSequence(e,t,n,r){let i=t.length,a=[];for(let e=0;e1){let e=a[1],t=r[e];t||(r[e]=t=[]),t.push(n)}}let a=[];for(let e in r)a.push(this.CreateFromMorphTargetSequence(e,r[e],t,n));return a}resetDuration(){let e=this.tracks,t=0;for(let n=0,r=e.length;n!==r;++n){let e=this.tracks[n];t=Math.max(t,e.times[e.times.length-1])}return this.duration=t,this}trim(){for(let e=0;e{t&&t(i),this.manager.itemEnd(e)},0);return}if(Zm[e]!==void 0){Zm[e].push({onLoad:t,onProgress:n,onError:r});return}Zm[e]=[],Zm[e].push({onLoad:t,onProgress:n,onError:r});let a=new Request(e,{headers:new Headers(this.requestHeader),credentials:this.withCredentials?`include`:`same-origin`,signal:typeof AbortSignal.any==`function`?AbortSignal.any([this._abortController.signal,this.manager.abortController.signal]):this._abortController.signal}),o=this.mimeType,s=this.responseType;fetch(a).then(t=>{if(t.status===200||t.status===0){if(t.status===0&&J(`FileLoader: HTTP Status 0 received.`),typeof ReadableStream>`u`||t.body===void 0||t.body.getReader===void 0)return t;let n=Zm[e],r=t.body.getReader(),i=t.headers.get(`X-File-Size`)||t.headers.get(`Content-Length`),a=i?parseInt(i):0,o=a!==0,s=0,c=new ReadableStream({start(e){t();function t(){r.read().then(({done:r,value:i})=>{if(r)e.close();else{s+=i.byteLength;let r=new ProgressEvent(`progress`,{lengthComputable:o,loaded:s,total:a});for(let e=0,t=n.length;e{e.error(t)})}}});return new Response(c)}else throw new Qm(`fetch for "${t.url}" responded with ${t.status}: ${t.statusText}`,t)}).then(e=>{switch(s){case`arraybuffer`:return e.arrayBuffer();case`blob`:return e.blob();case`document`:return e.text().then(e=>new DOMParser().parseFromString(e,o));case`json`:return e.json();default:if(o===``)return e.text();{let t=/charset="?([^;"\s]*)"?/i.exec(o),n=t&&t[1]?t[1].toLowerCase():void 0,r=new TextDecoder(n);return e.arrayBuffer().then(e=>r.decode(e))}}}).then(t=>{qm.add(`file:${e}`,t);let n=Zm[e];delete Zm[e];for(let e=0,r=n.length;e{let n=Zm[e];if(n===void 0)throw this.manager.itemError(e),t;delete Zm[e];for(let e=0,r=n.length;e{this.manager.itemEnd(e)}),this.manager.itemStart(e)}setResponseType(e){return this.responseType=e,this}setMimeType(e){return this.mimeType=e,this}abort(){return this._abortController.abort(),this._abortController=new AbortController,this}},eh=new WeakMap,th=class extends Xm{constructor(e){super(e)}load(e,t,n,r){this.path!==void 0&&(e=this.path+e),e=this.manager.resolveURL(e);let i=this,a=qm.get(`image:${e}`);if(a!==void 0){if(a.complete===!0)i.manager.itemStart(e),setTimeout(function(){t&&t(a),i.manager.itemEnd(e)},0);else{let e=eh.get(a);e===void 0&&(e=[],eh.set(a,e)),e.push({onLoad:t,onError:r})}return a}let o=pl(`img`);function s(){l(),t&&t(this);let n=eh.get(this)||[];for(let e=0;e`u`&&J(`ImageBitmapLoader: createImageBitmap() not supported.`),typeof fetch>`u`&&J(`ImageBitmapLoader: fetch() not supported.`),this.options={premultiplyAlpha:`none`},this._abortController=new AbortController}setOptions(e){return this.options=e,this}load(e,t,n,r){e===void 0&&(e=``),this.path!==void 0&&(e=this.path+e),e=this.manager.resolveURL(e);let i=this,a=qm.get(`image-bitmap:${e}`);if(a!==void 0){if(i.manager.itemStart(e),a.then){a.then(n=>{Eh.has(a)===!0?(r&&r(Eh.get(a)),i.manager.itemError(e),i.manager.itemEnd(e)):(t&&t(n),i.manager.itemEnd(e))});return}setTimeout(function(){t&&t(a),i.manager.itemEnd(e)},0);return}let o={};o.credentials=this.crossOrigin===`anonymous`?`same-origin`:`include`,o.headers=this.requestHeader,o.signal=typeof AbortSignal.any==`function`?AbortSignal.any([this._abortController.signal,this.manager.abortController.signal]):this._abortController.signal;let s=fetch(e,o).then(function(e){return e.blob()}).then(function(e){return createImageBitmap(e,Object.assign(i.options,{colorSpaceConversion:`none`}))}).then(function(n){qm.add(`image-bitmap:${e}`,n),t&&t(n),i.manager.itemEnd(e)}).catch(function(t){r&&r(t),Eh.set(s,t),qm.remove(`image-bitmap:${e}`),i.manager.itemError(e),i.manager.itemEnd(e)});qm.add(`image-bitmap:${e}`,s),i.manager.itemStart(e)}abort(){return this._abortController.abort(),this._abortController=new AbortController,this}},Oh=-90,kh=1,Ah=class extends qu{constructor(e,t,n){super(),this.type=`CubeCamera`,this.renderTarget=n,this.coordinateSystem=null,this.activeMipmapLevel=0;let r=new gh(Oh,kh,e,t);r.layers=this.layers,this.add(r);let i=new gh(Oh,kh,e,t);i.layers=this.layers,this.add(i);let a=new gh(Oh,kh,e,t);a.layers=this.layers,this.add(a);let o=new gh(Oh,kh,e,t);o.layers=this.layers,this.add(o);let s=new gh(Oh,kh,e,t);s.layers=this.layers,this.add(s);let c=new gh(Oh,kh,e,t);c.layers=this.layers,this.add(c)}updateCoordinateSystem(){let e=this.coordinateSystem,t=this.children.concat(),[n,r,i,a,o,s]=t;for(let e of t)this.remove(e);if(e===2e3)n.up.set(0,1,0),n.lookAt(1,0,0),r.up.set(0,1,0),r.lookAt(-1,0,0),i.up.set(0,0,-1),i.lookAt(0,1,0),a.up.set(0,0,1),a.lookAt(0,-1,0),o.up.set(0,1,0),o.lookAt(0,0,1),s.up.set(0,1,0),s.lookAt(0,0,-1);else if(e===2001)n.up.set(0,-1,0),n.lookAt(-1,0,0),r.up.set(0,-1,0),r.lookAt(1,0,0),i.up.set(0,0,1),i.lookAt(0,1,0),a.up.set(0,0,-1),a.lookAt(0,-1,0),o.up.set(0,-1,0),o.lookAt(0,0,1),s.up.set(0,-1,0),s.lookAt(0,0,-1);else throw Error(`THREE.CubeCamera.updateCoordinateSystem(): Invalid coordinate system: `+e);for(let e of t)this.add(e),e.updateMatrixWorld()}update(e,t){this.parent===null&&this.updateMatrixWorld();let{renderTarget:n,activeMipmapLevel:r}=this;this.coordinateSystem!==e.coordinateSystem&&(this.coordinateSystem=e.coordinateSystem,this.updateCoordinateSystem());let[i,a,o,s,c,l]=this.children,u=e.getRenderTarget(),d=e.getActiveCubeFace(),f=e.getActiveMipmapLevel(),p=e.xr.enabled;e.xr.enabled=!1;let m=n.texture.generateMipmaps;n.texture.generateMipmaps=!1;let h=!1;h=e.isWebGLRenderer===!0?e.state.buffers.depth.getReversed():e.reversedDepthBuffer,e.setRenderTarget(n,0,r),h&&e.autoClear===!1&&e.clearDepth(),e.render(t,i),e.setRenderTarget(n,1,r),h&&e.autoClear===!1&&e.clearDepth(),e.render(t,a),e.setRenderTarget(n,2,r),h&&e.autoClear===!1&&e.clearDepth(),e.render(t,o),e.setRenderTarget(n,3,r),h&&e.autoClear===!1&&e.clearDepth(),e.render(t,s),e.setRenderTarget(n,4,r),h&&e.autoClear===!1&&e.clearDepth(),e.render(t,c),n.texture.generateMipmaps=m,e.setRenderTarget(n,5,r),h&&e.autoClear===!1&&e.clearDepth(),e.render(t,l),e.setRenderTarget(u,d,f),e.xr.enabled=p,n.texture.needsPMREMUpdate=!0}},jh=class extends gh{constructor(e=[]){super(),this.isArrayCamera=!0,this.isMultiViewCamera=!1,this.cameras=e}},Mh=class{constructor(){this._previousTime=0,this._currentTime=0,this._startTime=performance.now(),this._delta=0,this._elapsed=0,this._timescale=1,this._document=null,this._pageVisibilityHandler=null}connect(e){this._document=e,e.hidden!==void 0&&(this._pageVisibilityHandler=Nh.bind(this),e.addEventListener(`visibilitychange`,this._pageVisibilityHandler,!1))}disconnect(){this._pageVisibilityHandler!==null&&(this._document.removeEventListener(`visibilitychange`,this._pageVisibilityHandler),this._pageVisibilityHandler=null),this._document=null}getDelta(){return this._delta/1e3}getElapsed(){return this._elapsed/1e3}getTimescale(){return this._timescale}setTimescale(e){return this._timescale=e,this}reset(){return this._currentTime=performance.now()-this._startTime,this}dispose(){this.disconnect()}update(e){return this._pageVisibilityHandler!==null&&this._document.hidden===!0?this._delta=0:(this._previousTime=this._currentTime,this._currentTime=(e===void 0?performance.now():e)-this._startTime,this._delta=(this._currentTime-this._previousTime)*this._timescale,this._elapsed+=this._delta),this}};function Nh(){this._document.hidden===!1&&this.reset()}var Ph=class{constructor(e,t,n){this.binding=e,this.valueSize=n;let r,i,a;switch(t){case`quaternion`:r=this._slerp,i=this._slerpAdditive,a=this._setAdditiveIdentityQuaternion,this.buffer=new Float64Array(n*6),this._workIndex=5;break;case`string`:case`bool`:r=this._select,i=this._select,a=this._setAdditiveIdentityOther,this.buffer=Array(n*5);break;default:r=this._lerp,i=this._lerpAdditive,a=this._setAdditiveIdentityNumeric,this.buffer=new Float64Array(n*5)}this._mixBufferRegion=r,this._mixBufferRegionAdditive=i,this._setIdentity=a,this._origIndex=3,this._addIndex=4,this.cumulativeWeight=0,this.cumulativeWeightAdditive=0,this.useCount=0,this.referenceCount=0}accumulate(e,t){let n=this.buffer,r=this.valueSize,i=e*r+r,a=this.cumulativeWeight;if(a===0){for(let e=0;e!==r;++e)n[i+e]=n[e];a=t}else{a+=t;let e=t/a;this._mixBufferRegion(n,i,0,e,r)}this.cumulativeWeight=a}accumulateAdditive(e){let t=this.buffer,n=this.valueSize,r=n*this._addIndex;this.cumulativeWeightAdditive===0&&this._setIdentity(),this._mixBufferRegionAdditive(t,r,0,e,n),this.cumulativeWeightAdditive+=e}apply(e){let t=this.valueSize,n=this.buffer,r=e*t+t,i=this.cumulativeWeight,a=this.cumulativeWeightAdditive,o=this.binding;if(this.cumulativeWeight=0,this.cumulativeWeightAdditive=0,i<1){let e=t*this._origIndex;this._mixBufferRegion(n,r,e,1-i,t)}a>0&&this._mixBufferRegionAdditive(n,r,this._addIndex*t,1,t);for(let e=t,i=t+t;e!==i;++e)if(n[e]!==n[e+t]){o.setValue(n,r);break}}saveOriginalState(){let e=this.binding,t=this.buffer,n=this.valueSize,r=n*this._origIndex;e.getValue(t,r);for(let e=n,i=r;e!==i;++e)t[e]=t[r+e%n];this._setIdentity(),this.cumulativeWeight=0,this.cumulativeWeightAdditive=0}restoreOriginalState(){let e=this.valueSize*3;this.binding.setValue(this.buffer,e)}_setAdditiveIdentityNumeric(){let e=this._addIndex*this.valueSize,t=e+this.valueSize;for(let n=e;n=.5)for(let r=0;r!==i;++r)e[t+r]=e[n+r]}_slerp(e,t,n,r){Xl.slerpFlat(e,t,e,t,e,n,r)}_slerpAdditive(e,t,n,r,i){let a=this._workIndex*i;Xl.multiplyQuaternionsFlat(e,a,e,t,e,n),Xl.slerpFlat(e,t,e,t,e,a,r)}_lerp(e,t,n,r,i){let a=1-r;for(let o=0;o!==i;++o){let i=t+o;e[i]=e[i]*a+e[n+o]*r}}_lerpAdditive(e,t,n,r,i){for(let a=0;a!==i;++a){let i=t+a;e[i]=e[i]+e[n+a]*r}}},Fh=`\\[\\]\\.:\\/`,Ih=RegExp(`[\\[\\]\\.:\\/]`,`g`),Lh=`[^\\[\\]\\.:\\/]`,Rh=`[^`+Fh.replace(`\\.`,``)+`]`,zh=`((?:WC+[\\/:])*)`.replace(`WC`,Lh),Bh=`(WCOD+)?`.replace(`WCOD`,Rh),Vh=`(?:\\.(WC+)(?:\\[(.+)\\])?)?`.replace(`WC`,Lh),Hh=`\\.(WC+)(?:\\[(.+)\\])?`.replace(`WC`,Lh),Uh=RegExp(`^`+zh+Bh+Vh+Hh+`$`),Wh=[`material`,`materials`,`bones`,`map`],Gh=class{constructor(e,t,n){let r=n||Kh.parseTrackName(t);this._targetGroup=e,this._bindings=e.subscribe_(t,r)}getValue(e,t){this.bind();let n=this._targetGroup.nCachedObjects_,r=this._bindings[n];r!==void 0&&r.getValue(e,t)}setValue(e,t){let n=this._bindings;for(let r=this._targetGroup.nCachedObjects_,i=n.length;r!==i;++r)n[r].setValue(e,t)}bind(){let e=this._bindings;for(let t=this._targetGroup.nCachedObjects_,n=e.length;t!==n;++t)e[t].bind()}unbind(){let e=this._bindings;for(let t=this._targetGroup.nCachedObjects_,n=e.length;t!==n;++t)e[t].unbind()}},Kh=class e{constructor(t,n,r){this.path=n,this.parsedPath=r||e.parseTrackName(n),this.node=e.findNode(t,this.parsedPath.nodeName),this.rootNode=t,this.getValue=this._getValue_unbound,this.setValue=this._setValue_unbound}static create(t,n,r){return t&&t.isAnimationObjectGroup?new e.Composite(t,n,r):new e(t,n,r)}static sanitizeNodeName(e){return e.replace(/\s/g,`_`).replace(Ih,``)}static parseTrackName(e){let t=Uh.exec(e);if(t===null)throw Error(`THREE.PropertyBinding: Cannot parse trackName: `+e);let n={nodeName:t[2],objectName:t[3],objectIndex:t[4],propertyName:t[5],propertyIndex:t[6]},r=n.nodeName&&n.nodeName.lastIndexOf(`.`);if(r!==void 0&&r!==-1){let e=n.nodeName.substring(r+1);Wh.indexOf(e)!==-1&&(n.nodeName=n.nodeName.substring(0,r),n.objectName=e)}if(n.propertyName===null||n.propertyName.length===0)throw Error(`THREE.PropertyBinding: can not parse propertyName from trackName: `+e);return n}static findNode(e,t){if(t===void 0||t===``||t===`.`||t===-1||t===e.name||t===e.uuid)return e;if(e.skeleton){let n=e.skeleton.getBoneByName(t);if(n!==void 0)return n}if(e.children){let n=function(e){for(let r=0;r0){let e=this._interpolants,t=this._propertyBindings;switch(this.blendMode){case tl:for(let n=0,r=e.length;n!==r;++n)e[n].evaluate(a),t[n].accumulateAdditive(o);break;case el:default:for(let n=0,i=e.length;n!==i;++n)e[n].evaluate(a),t[n].accumulate(r,o)}}}_updateWeight(e){let t=0;if(this.enabled){t=this.weight;let n=this._weightInterpolant;if(n!==null){let r=n.evaluate(e)[0];t*=r,e>n.parameterPositions[1]&&(this.stopFading(),r===0&&(this.enabled=!1))}}return this._effectiveWeight=t,t}_updateTimeScale(e){let t=0;if(!this.paused){t=this.timeScale;let n=this._timeScaleInterpolant;if(n!==null){let r=n.evaluate(e)[0];t*=r,e>n.parameterPositions[1]&&(t===0?this.paused=!0:(this._restoreTimeScale!==null&&(t=this._restoreTimeScale),this.timeScale=t),this.stopWarping())}}return this._effectiveTimeScale=t,t}_updateTime(e){let t=this._clip.duration,n=this.loop,r=this.time+e,i=this._loopCount,a=n===Kc;if(e===0)return i===-1?r:a&&(i&1)==1?t-r:r;if(n===2200){i===-1&&(this._loopCount=0,this._setEndings(!0,!0,!1));handle_stop:{if(r>=t)r=t;else if(r<0)r=0;else{this.time=r;break handle_stop}this.clampWhenFinished?this.paused=!0:this.enabled=!1,this.time=r,this._mixer.dispatchEvent({type:`finished`,action:this,direction:e<0?-1:1})}}else{if(i===-1&&(e>=0?(i=0,this._setEndings(!0,this.repetitions===0,a)):this._setEndings(this.repetitions===0,!0,a)),r>=t||r<0){let n=Math.floor(r/t);r-=t*n,i+=Math.abs(n);let o=this.repetitions-i;if(o<=0)this.clampWhenFinished?this.paused=!0:this.enabled=!1,r=e>0?t:0,this.time=r,this._mixer.dispatchEvent({type:`finished`,action:this,direction:e>0?1:-1});else{if(o===1){let t=e<0;this._setEndings(t,!t,a)}else this._setEndings(!1,!1,a);this._loopCount=i,this.time=r,this._mixer.dispatchEvent({type:`loop`,action:this,loopDelta:n})}}else this._loopCount=i,this.time=r;if(a&&(i&1)==1)return t-r}return r}_setEndings(e,t,n){let r=this._interpolantSettings;n?(r.endingStart=Qc,r.endingEnd=Qc):(e?r.endingStart=this.zeroSlopeAtStart?Qc:Zc:r.endingStart=$c,t?r.endingEnd=this.zeroSlopeAtEnd?Qc:Zc:r.endingEnd=$c)}_scheduleFading(e,t,n){let r=this._mixer,i=r.time,a=this._weightInterpolant;a===null&&(a=r._lendControlInterpolant(),this._weightInterpolant=a);let o=a.parameterPositions,s=a.sampleValues;return o[0]=i,s[0]=t,o[1]=i+e,s[1]=n,this}},Jh=new Float32Array(1),Yh=class extends Sl{constructor(e){super(),this._root=e,this._initMemoryManager(),this._accuIndex=0,this.time=0,this.timeScale=1,typeof __THREE_DEVTOOLS__<`u`&&__THREE_DEVTOOLS__.dispatchEvent(new CustomEvent(`observe`,{detail:this}))}_bindAction(e,t){let n=e._localRoot||this._root,r=e._clip.tracks,i=r.length,a=e._propertyBindings,o=e._interpolants,s=n.uuid,c=this._bindingsByRootAndName,l=c[s];l===void 0&&(l={},c[s]=l);for(let e=0;e!==i;++e){let i=r[e],c=i.name,u=l[c];if(u!==void 0)++u.referenceCount,a[e]=u;else{if(u=a[e],u!==void 0){u._cacheIndex===null&&(++u.referenceCount,this._addInactiveBinding(u,s,c));continue}let r=t&&t._propertyBindings[e].binding.parsedPath;u=new Ph(Kh.create(n,c,r),i.ValueTypeName,i.getValueSize()),++u.referenceCount,this._addInactiveBinding(u,s,c),a[e]=u}o[e].resultBuffer=u.buffer}}_activateAction(e){if(!this._isActiveAction(e)){if(e._cacheIndex===null){let t=(e._localRoot||this._root).uuid,n=e._clip.uuid,r=this._actionsByClip[n];this._bindAction(e,r&&r.knownActions[0]),this._addInactiveAction(e,n,t)}let t=e._propertyBindings;for(let e=0,n=t.length;e!==n;++e){let n=t[e];n.useCount++===0&&(this._lendBinding(n),n.saveOriginalState())}this._lendAction(e)}}_deactivateAction(e){if(this._isActiveAction(e)){let t=e._propertyBindings;for(let e=0,n=t.length;e!==n;++e){let n=t[e];--n.useCount===0&&(n.restoreOriginalState(),this._takeBackBinding(n))}this._takeBackAction(e)}}_initMemoryManager(){this._actions=[],this._nActiveActions=0,this._actionsByClip={},this._bindings=[],this._nActiveBindings=0,this._bindingsByRootAndName={},this._controlInterpolants=[],this._nActiveControlInterpolants=0;let e=this;this.stats={actions:{get total(){return e._actions.length},get inUse(){return e._nActiveActions}},bindings:{get total(){return e._bindings.length},get inUse(){return e._nActiveBindings}},controlInterpolants:{get total(){return e._controlInterpolants.length},get inUse(){return e._nActiveControlInterpolants}}}}_isActiveAction(e){let t=e._cacheIndex;return t!==null&&t=0;--n)e[n].stop();return this}update(e){e*=this.timeScale;let t=this._actions,n=this._nActiveActions,r=this.time+=e,i=Math.sign(e),a=this._accuIndex^=1;for(let o=0;o!==n;++o)t[o]._update(r,e,i,a);let o=this._bindings,s=this._nActiveBindings;for(let e=0;e!==s;++e)o[e].apply(a);return this}setTime(e){this.time=0;for(let e=0;ee.start-t.start);let t=0;for(let e=1;e #include #include -}`},$={common:{diffuse:{value:new Q(16777215)},opacity:{value:1},map:{value:null},mapTransform:{value:new Ql},alphaMap:{value:null},alphaMapTransform:{value:new Ql},alphaTest:{value:0}},specularmap:{specularMap:{value:null},specularMapTransform:{value:new Ql}},envmap:{envMap:{value:null},envMapRotation:{value:new Ql},reflectivity:{value:1},ior:{value:1.5},refractionRatio:{value:.98},dfgLUT:{value:null}},aomap:{aoMap:{value:null},aoMapIntensity:{value:1},aoMapTransform:{value:new Ql}},lightmap:{lightMap:{value:null},lightMapIntensity:{value:1},lightMapTransform:{value:new Ql}},bumpmap:{bumpMap:{value:null},bumpMapTransform:{value:new Ql},bumpScale:{value:1}},normalmap:{normalMap:{value:null},normalMapTransform:{value:new Ql},normalScale:{value:new X(1,1)}},displacementmap:{displacementMap:{value:null},displacementMapTransform:{value:new Ql},displacementScale:{value:1},displacementBias:{value:0}},emissivemap:{emissiveMap:{value:null},emissiveMapTransform:{value:new Ql}},metalnessmap:{metalnessMap:{value:null},metalnessMapTransform:{value:new Ql}},roughnessmap:{roughnessMap:{value:null},roughnessMapTransform:{value:new Ql}},gradientmap:{gradientMap:{value:null}},fog:{fogDensity:{value:25e-5},fogNear:{value:1},fogFar:{value:2e3},fogColor:{value:new Q(16777215)}},lights:{ambientLightColor:{value:[]},lightProbe:{value:[]},directionalLights:{value:[],properties:{direction:{},color:{}}},directionalLightShadows:{value:[],properties:{shadowIntensity:1,shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{}}},directionalShadowMatrix:{value:[]},spotLights:{value:[],properties:{color:{},position:{},direction:{},distance:{},coneCos:{},penumbraCos:{},decay:{}}},spotLightShadows:{value:[],properties:{shadowIntensity:1,shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{}}},spotLightMap:{value:[]},spotLightMatrix:{value:[]},pointLights:{value:[],properties:{color:{},position:{},decay:{},distance:{}}},pointLightShadows:{value:[],properties:{shadowIntensity:1,shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{},shadowCameraNear:{},shadowCameraFar:{}}},pointShadowMatrix:{value:[]},hemisphereLights:{value:[],properties:{direction:{},skyColor:{},groundColor:{}}},rectAreaLights:{value:[],properties:{color:{},position:{},width:{},height:{}}},ltc_1:{value:null},ltc_2:{value:null},probesSH:{value:null},probesMin:{value:new Z},probesMax:{value:new Z},probesResolution:{value:new Z}},points:{diffuse:{value:new Q(16777215)},opacity:{value:1},size:{value:1},scale:{value:1},map:{value:null},alphaMap:{value:null},alphaMapTransform:{value:new Ql},alphaTest:{value:0},uvTransform:{value:new Ql}},sprite:{diffuse:{value:new Q(16777215)},opacity:{value:1},center:{value:new X(.5,.5)},rotation:{value:0},map:{value:null},mapTransform:{value:new Ql},alphaMap:{value:null},alphaMapTransform:{value:new Ql},alphaTest:{value:0}}},tg={basic:{uniforms:mm([$.common,$.specularmap,$.envmap,$.aomap,$.lightmap,$.fog]),vertexShader:eg.meshbasic_vert,fragmentShader:eg.meshbasic_frag},lambert:{uniforms:mm([$.common,$.specularmap,$.envmap,$.aomap,$.lightmap,$.emissivemap,$.bumpmap,$.normalmap,$.displacementmap,$.fog,$.lights,{emissive:{value:new Q(0)},envMapIntensity:{value:1}}]),vertexShader:eg.meshlambert_vert,fragmentShader:eg.meshlambert_frag},phong:{uniforms:mm([$.common,$.specularmap,$.envmap,$.aomap,$.lightmap,$.emissivemap,$.bumpmap,$.normalmap,$.displacementmap,$.fog,$.lights,{emissive:{value:new Q(0)},specular:{value:new Q(1118481)},shininess:{value:30},envMapIntensity:{value:1}}]),vertexShader:eg.meshphong_vert,fragmentShader:eg.meshphong_frag},standard:{uniforms:mm([$.common,$.envmap,$.aomap,$.lightmap,$.emissivemap,$.bumpmap,$.normalmap,$.displacementmap,$.roughnessmap,$.metalnessmap,$.fog,$.lights,{emissive:{value:new Q(0)},roughness:{value:1},metalness:{value:0},envMapIntensity:{value:1}}]),vertexShader:eg.meshphysical_vert,fragmentShader:eg.meshphysical_frag},toon:{uniforms:mm([$.common,$.aomap,$.lightmap,$.emissivemap,$.bumpmap,$.normalmap,$.displacementmap,$.gradientmap,$.fog,$.lights,{emissive:{value:new Q(0)}}]),vertexShader:eg.meshtoon_vert,fragmentShader:eg.meshtoon_frag},matcap:{uniforms:mm([$.common,$.bumpmap,$.normalmap,$.displacementmap,$.fog,{matcap:{value:null}}]),vertexShader:eg.meshmatcap_vert,fragmentShader:eg.meshmatcap_frag},points:{uniforms:mm([$.points,$.fog]),vertexShader:eg.points_vert,fragmentShader:eg.points_frag},dashed:{uniforms:mm([$.common,$.fog,{scale:{value:1},dashSize:{value:1},totalSize:{value:2}}]),vertexShader:eg.linedashed_vert,fragmentShader:eg.linedashed_frag},depth:{uniforms:mm([$.common,$.displacementmap]),vertexShader:eg.depth_vert,fragmentShader:eg.depth_frag},normal:{uniforms:mm([$.common,$.bumpmap,$.normalmap,$.displacementmap,{opacity:{value:1}}]),vertexShader:eg.meshnormal_vert,fragmentShader:eg.meshnormal_frag},sprite:{uniforms:mm([$.sprite,$.fog]),vertexShader:eg.sprite_vert,fragmentShader:eg.sprite_frag},background:{uniforms:{uvTransform:{value:new Ql},t2D:{value:null},backgroundIntensity:{value:1}},vertexShader:eg.background_vert,fragmentShader:eg.background_frag},backgroundCube:{uniforms:{envMap:{value:null},backgroundBlurriness:{value:0},backgroundIntensity:{value:1},backgroundRotation:{value:new Ql}},vertexShader:eg.backgroundCube_vert,fragmentShader:eg.backgroundCube_frag},cube:{uniforms:{tCube:{value:null},tFlip:{value:-1},opacity:{value:1}},vertexShader:eg.cube_vert,fragmentShader:eg.cube_frag},equirect:{uniforms:{tEquirect:{value:null}},vertexShader:eg.equirect_vert,fragmentShader:eg.equirect_frag},distance:{uniforms:mm([$.common,$.displacementmap,{referencePosition:{value:new Z},nearDistance:{value:1},farDistance:{value:1e3}}]),vertexShader:eg.distance_vert,fragmentShader:eg.distance_frag},shadow:{uniforms:mm([$.lights,$.fog,{color:{value:new Q(0)},opacity:{value:1}}]),vertexShader:eg.shadow_vert,fragmentShader:eg.shadow_frag}};tg.physical={uniforms:mm([tg.standard.uniforms,{clearcoat:{value:0},clearcoatMap:{value:null},clearcoatMapTransform:{value:new Ql},clearcoatNormalMap:{value:null},clearcoatNormalMapTransform:{value:new Ql},clearcoatNormalScale:{value:new X(1,1)},clearcoatRoughness:{value:0},clearcoatRoughnessMap:{value:null},clearcoatRoughnessMapTransform:{value:new Ql},dispersion:{value:0},iridescence:{value:0},iridescenceMap:{value:null},iridescenceMapTransform:{value:new Ql},iridescenceIOR:{value:1.3},iridescenceThicknessMinimum:{value:100},iridescenceThicknessMaximum:{value:400},iridescenceThicknessMap:{value:null},iridescenceThicknessMapTransform:{value:new Ql},sheen:{value:0},sheenColor:{value:new Q(0)},sheenColorMap:{value:null},sheenColorMapTransform:{value:new Ql},sheenRoughness:{value:1},sheenRoughnessMap:{value:null},sheenRoughnessMapTransform:{value:new Ql},transmission:{value:0},transmissionMap:{value:null},transmissionMapTransform:{value:new Ql},transmissionSamplerSize:{value:new X},transmissionSamplerMap:{value:null},thickness:{value:0},thicknessMap:{value:null},thicknessMapTransform:{value:new Ql},attenuationDistance:{value:0},attenuationColor:{value:new Q(0)},specularColor:{value:new Q(1,1,1)},specularColorMap:{value:null},specularColorMapTransform:{value:new Ql},specularIntensity:{value:1},specularIntensityMap:{value:null},specularIntensityMapTransform:{value:new Ql},anisotropyVector:{value:new X},anisotropyMap:{value:null},anisotropyMapTransform:{value:new Ql}}]),vertexShader:eg.meshphysical_vert,fragmentShader:eg.meshphysical_frag};var ng={r:0,b:0,g:0},rg=new yu,ig=new Ql;ig.set(-1,0,0,0,1,0,0,0,1);function ag(e,t,n,r,i,a){let o=new Q(0),s=i===!0?0:1,c,l,u=null,d=0,f=null;function p(e){let n=e.isScene===!0?e.background:null;if(n&&n.isTexture){let r=e.backgroundBlurriness>0;n=t.get(n,r)}return n}function m(t){let r=!1,i=p(t);i===null?g(o,s):i&&i.isColor&&(g(i,1),r=!0);let c=e.xr.getEnvironmentBlendMode();c===`additive`?n.buffers.color.setClear(0,0,0,1,a):c===`alpha-blend`&&n.buffers.color.setClear(0,0,0,0,a),(e.autoClear||r)&&(n.buffers.depth.setTest(!0),n.buffers.depth.setMask(!0),n.buffers.color.setMask(!0),e.clear(e.autoClearColor,e.autoClearDepth,e.autoClearStencil))}function h(t,n){let i=p(n);i&&(i.isCubeTexture||i.mapping===306)?(l===void 0&&(l=new Cf(new Ap(1,1,1),new xm({name:`BackgroundCubeMaterial`,uniforms:pm(tg.backgroundCube.uniforms),vertexShader:tg.backgroundCube.vertexShader,fragmentShader:tg.backgroundCube.fragmentShader,side:1,depthTest:!1,depthWrite:!1,fog:!1,allowOverride:!1})),l.geometry.deleteAttribute(`normal`),l.geometry.deleteAttribute(`uv`),l.onBeforeRender=function(e,t,n){this.matrixWorld.copyPosition(n.matrixWorld)},Object.defineProperty(l.material,"envMap",{get:function(){return this.uniforms.envMap.value}}),r.update(l)),l.material.uniforms.envMap.value=i,l.material.uniforms.backgroundBlurriness.value=n.backgroundBlurriness,l.material.uniforms.backgroundIntensity.value=n.backgroundIntensity,l.material.uniforms.backgroundRotation.value.setFromMatrix4(rg.makeRotationFromEuler(n.backgroundRotation)).transpose(),i.isCubeTexture&&i.isRenderTargetTexture===!1&&l.material.uniforms.backgroundRotation.value.premultiply(ig),l.material.toneMapped=ru.getTransfer(i.colorSpace)!==al,(u!==i||d!==i.version||f!==e.toneMapping)&&(l.material.needsUpdate=!0,u=i,d=i.version,f=e.toneMapping),l.layers.enableAll(),t.unshift(l,l.geometry,l.material,0,0,null)):i&&i.isTexture&&(c===void 0&&(c=new Cf(new lm(2,2),new xm({name:`BackgroundMaterial`,uniforms:pm(tg.background.uniforms),vertexShader:tg.background.vertexShader,fragmentShader:tg.background.fragmentShader,side:0,depthTest:!1,depthWrite:!1,fog:!1,allowOverride:!1})),c.geometry.deleteAttribute(`normal`),Object.defineProperty(c.material,"map",{get:function(){return this.uniforms.t2D.value}}),r.update(c)),c.material.uniforms.t2D.value=i,c.material.uniforms.backgroundIntensity.value=n.backgroundIntensity,c.material.toneMapped=ru.getTransfer(i.colorSpace)!==al,i.matrixAutoUpdate===!0&&i.updateMatrix(),c.material.uniforms.uvTransform.value.copy(i.matrix),(u!==i||d!==i.version||f!==e.toneMapping)&&(c.material.needsUpdate=!0,u=i,d=i.version,f=e.toneMapping),c.layers.enableAll(),t.unshift(c,c.geometry,c.material,0,0,null))}function g(t,r){t.getRGB(ng,_m(e)),n.buffers.color.setClear(ng.r,ng.g,ng.b,r,a)}function _(){l!==void 0&&(l.geometry.dispose(),l.material.dispose(),l=void 0),c!==void 0&&(c.geometry.dispose(),c.material.dispose(),c=void 0)}return{getClearColor:function(){return o},setClearColor:function(e,t=1){o.set(e),s=t,g(o,s)},getClearAlpha:function(){return s},setClearAlpha:function(e){s=e,g(o,s)},render:m,addToRenderList:h,dispose:_}}function og(e,t){let n=e.getParameter(e.MAX_VERTEX_ATTRIBS),r={},i=f(null),a=i,o=!1;function s(n,r,i,s,c){let u=!1,f=d(n,s,i,r);a!==f&&(a=f,l(a.object)),u=p(n,s,i,c),u&&m(n,s,i,c),c!==null&&t.update(c,e.ELEMENT_ARRAY_BUFFER),(u||o)&&(o=!1,b(n,r,i,s),c!==null&&e.bindBuffer(e.ELEMENT_ARRAY_BUFFER,t.get(c).buffer))}function c(){return e.createVertexArray()}function l(t){return e.bindVertexArray(t)}function u(t){return e.deleteVertexArray(t)}function d(e,t,n,i){let a=i.wireframe===!0,o=r[t.id];o===void 0&&(o={},r[t.id]=o);let s=e.isInstancedMesh===!0?e.id:0,l=o[s];l===void 0&&(l={},o[s]=l);let u=l[n.id];u===void 0&&(u={},l[n.id]=u);let d=u[a];return d===void 0&&(d=f(c()),u[a]=d),d}function f(e){let t=[],r=[],i=[];for(let e=0;e=0){let n=i[t],r=o[t];if(r===void 0&&(t===`instanceMatrix`&&e.instanceMatrix&&(r=e.instanceMatrix),t===`instanceColor`&&e.instanceColor&&(r=e.instanceColor)),n===void 0||n.attribute!==r||r&&n.data!==r.data)return!0;s++}return a.attributesNum!==s||a.index!==r}function m(e,t,n,r){let i={},o=t.attributes,s=0,c=n.getAttributes();for(let t in c)if(c[t].location>=0){let n=o[t];n===void 0&&(t===`instanceMatrix`&&e.instanceMatrix&&(n=e.instanceMatrix),t===`instanceColor`&&e.instanceColor&&(n=e.instanceColor));let r={};r.attribute=n,n&&n.data&&(r.data=n.data),i[t]=r,s++}a.attributes=i,a.attributesNum=s,a.index=r}function h(){let e=a.newAttributes;for(let t=0,n=e.length;t=0){let s=o[r];if(s===void 0&&(r===`instanceMatrix`&&n.instanceMatrix&&(s=n.instanceMatrix),r===`instanceColor`&&n.instanceColor&&(s=n.instanceColor)),s!==void 0){let r=s.normalized,o=s.itemSize,c=t.get(s);if(c===void 0)continue;let l=c.buffer,u=c.type,d=c.bytesPerElement,f=u===e.INT||u===e.UNSIGNED_INT||s.gpuType===1013;if(s.isInterleavedBufferAttribute){let t=s.data,c=t.stride,p=s.offset;if(t.isInstancedInterleavedBuffer){for(let e=0;e0&&e.getShaderPrecisionFormat(e.FRAGMENT_SHADER,e.HIGH_FLOAT).precision>0)return`highp`;t=`mediump`}return t===`mediump`&&e.getShaderPrecisionFormat(e.VERTEX_SHADER,e.MEDIUM_FLOAT).precision>0&&e.getShaderPrecisionFormat(e.FRAGMENT_SHADER,e.MEDIUM_FLOAT).precision>0?`mediump`:`lowp`}let l=n.precision===void 0?`highp`:n.precision,u=c(l);u!==l&&(Y(`WebGLRenderer:`,l,`not supported, using`,u,`instead.`),l=u);let d=n.logarithmicDepthBuffer===!0,f=n.reversedDepthBuffer===!0&&t.has(`EXT_clip_control`);n.reversedDepthBuffer===!0&&f===!1&&Y(`WebGLRenderer: Unable to use reversed depth buffer due to missing EXT_clip_control extension. Fallback to default depth buffer.`);let p=e.getParameter(e.MAX_TEXTURE_IMAGE_UNITS),m=e.getParameter(e.MAX_VERTEX_TEXTURE_IMAGE_UNITS),h=e.getParameter(e.MAX_TEXTURE_SIZE),g=e.getParameter(e.MAX_CUBE_MAP_TEXTURE_SIZE),_=e.getParameter(e.MAX_VERTEX_ATTRIBS),v=e.getParameter(e.MAX_VERTEX_UNIFORM_VECTORS),y=e.getParameter(e.MAX_VARYING_VECTORS),b=e.getParameter(e.MAX_FRAGMENT_UNIFORM_VECTORS),x=e.getParameter(e.MAX_SAMPLES),S=e.getParameter(e.SAMPLES);return{isWebGL2:!0,getMaxAnisotropy:a,getMaxPrecision:c,textureFormatReadable:o,textureTypeReadable:s,precision:l,logarithmicDepthBuffer:d,reversedDepthBuffer:f,maxTextures:p,maxVertexTextures:m,maxTextureSize:h,maxCubemapSize:g,maxAttributes:_,maxVertexUniforms:v,maxVaryings:y,maxFragmentUniforms:b,maxSamples:x,samples:S}}function lg(e){let t=this,n=null,r=0,i=!1,a=!1,o=new $f,s=new Ql,c={value:null,needsUpdate:!1};this.uniform=c,this.numPlanes=0,this.numIntersection=0,this.init=function(e,t){let n=e.length!==0||t||r!==0||i;return i=t,r=e.length,n},this.beginShadows=function(){a=!0,u(null)},this.endShadows=function(){a=!1},this.setGlobalState=function(e,t){n=u(e,t,0)},this.setState=function(t,o,s){let d=t.clippingPlanes,f=t.clipIntersection,p=t.clipShadows,m=e.get(t);if(!i||d===null||d.length===0||a&&!p)a?u(null):l();else{let e=a?0:r,t=e*4,i=m.clippingState||null;c.value=i,i=u(d,o,t,s);for(let e=0;e!==t;++e)i[e]=n[e];m.clippingState=i,this.numIntersection=f?this.numPlanes:0,this.numPlanes+=e}};function l(){c.value!==n&&(c.value=n,c.needsUpdate=r>0),t.numPlanes=r,t.numIntersection=0}function u(e,n,r,i){let a=e===null?0:e.length,l=null;if(a!==0){if(l=c.value,i!==!0||l===null){let t=r+a*4,i=n.matrixWorldInverse;s.getNormalMatrix(i),(l===null||l.length0&&this._blur(s,0,0,t),this._applyPMREM(s),this._cleanup(s),s}fromEquirectangular(e,t=null){return this._fromTexture(e,t)}fromCubemap(e,t=null){return this._fromTexture(e,t)}compileCubemapShader(){this._cubemapMaterial===null&&(this._cubemapMaterial=Og(),this._compileMaterial(this._cubemapMaterial))}compileEquirectangularShader(){this._equirectMaterial===null&&(this._equirectMaterial=Dg(),this._compileMaterial(this._equirectMaterial))}dispose(){this._dispose(),this._cubemapMaterial!==null&&this._cubemapMaterial.dispose(),this._equirectMaterial!==null&&this._equirectMaterial.dispose(),this._backgroundBox!==null&&(this._backgroundBox.geometry.dispose(),this._backgroundBox.material.dispose())}_setSize(e){this._lodMax=Math.floor(Math.log2(e)),this._cubeSize=2**this._lodMax}_dispose(){this._blurMaterial!==null&&this._blurMaterial.dispose(),this._ggxMaterial!==null&&this._ggxMaterial.dispose(),this._pingPongRenderTarget!==null&&this._pingPongRenderTarget.dispose();for(let e=0;e2?l:0,l,l),c.setRenderTarget(r),p&&c.render(d,a),c.render(e,a)}c.toneMapping=u,c.autoClear=l,e.background=m}_textureToCubeUV(e,t){let n=this._renderer,r=e.mapping===301||e.mapping===302;r?(this._cubemapMaterial===null&&(this._cubemapMaterial=Og()),this._cubemapMaterial.uniforms.flipEnvMap.value=e.isRenderTargetTexture===!1?-1:1):this._equirectMaterial===null&&(this._equirectMaterial=Dg());let i=r?this._cubemapMaterial:this._equirectMaterial,a=this._lodMeshes[0];a.material=i;let o=i.uniforms;o.envMap.value=e;let s=this._cubeSize;wg(t,0,0,3*s,2*s),n.setRenderTarget(t),n.render(a,mg)}_applyPMREM(e){let t=this._renderer,n=t.autoClear;t.autoClear=!1;let r=this._lodMeshes.length;for(let t=1;td-ug?n-d+ug:0),m=4*(this._cubeSize-f);s.envMap.value=e.texture,s.roughness.value=u,s.mipInt.value=d-t,wg(i,p,m,3*f,2*f),r.setRenderTarget(i),r.render(o,mg),s.envMap.value=i.texture,s.roughness.value=0,s.mipInt.value=d-n,wg(e,p,m,3*f,2*f),r.setRenderTarget(e),r.render(o,mg)}_blur(e,t,n,r,i){let a=this._pingPongRenderTarget;this._halfBlur(e,a,t,n,r,`latitudinal`,i),this._halfBlur(a,e,n,n,r,`longitudinal`,i)}_halfBlur(e,t,n,r,i,a,o){let s=this._renderer,c=this._blurMaterial;a!==`latitudinal`&&a!==`longitudinal`&&_l(`blur direction must be either latitudinal or longitudinal!`);let l=this._lodMeshes[r];l.material=c;let u=c.uniforms,d=this._sizeLods[n]-1,f=isFinite(i)?Math.PI/(2*d):2*Math.PI/(2*fg-1),p=i/f,m=isFinite(i)?1+Math.floor(3*p):fg;m>fg&&Y(`sigmaRadians, ${i}, is too large and will clip, as it requested ${m} samples when the maximum is set to ${fg}`);let h=[],g=0;for(let e=0;e_-ug?r-_+ug:0),4*(this._cubeSize-v),3*v,2*v),s.setRenderTarget(t),s.render(l,mg)}};function Sg(e){let t=[],n=[],r=[],i=e,a=e-ug+1+dg.length;for(let o=0;oe-ug?s=dg[o-e+ug-1]:o===0&&(s=0),n.push(s);let c=1/(a-2),l=-c,u=1+c,d=[l,l,u,l,u,u,l,l,u,u,l,u],f=new Float32Array(108),p=new Float32Array(72),m=new Float32Array(36);for(let e=0;e<6;e++){let t=e%3*2/3-1,n=e>2?0:-1,r=[t,n,0,t+2/3,n,0,t+2/3,n+1,0,t,n,0,t+2/3,n+1,0,t,n+1,0];f.set(r,18*e),p.set(d,12*e);let i=[e,e,e,e,e,e];m.set(i,6*e)}let h=new Xd;h.setAttribute(`position`,new Fd(f,3)),h.setAttribute(`uv`,new Fd(p,2)),h.setAttribute(`faceIndex`,new Fd(m,1)),r.push(new Cf(h,null)),i>ug&&i--}return{lodMeshes:r,sizeLods:t,sigmas:n}}function Cg(e,t,n){let r=new gu(e,t,n);return r.texture.mapping=306,r.texture.name=`PMREM.cubeUv`,r.scissorTest=!0,r}function wg(e,t,n,r,i){e.viewport.set(t,n,r,i),e.scissor.set(t,n,r,i)}function Tg(e,t,n){return new xm({name:`PMREMGGXConvolution`,defines:{GGX_SAMPLES:pg,CUBEUV_TEXEL_WIDTH:1/t,CUBEUV_TEXEL_HEIGHT:1/n,CUBEUV_MAX_MIP:`${e}.0`},uniforms:{envMap:{value:null},roughness:{value:0},mipInt:{value:0}},vertexShader:kg(),fragmentShader:` +}`},$={common:{diffuse:{value:new Z(16777215)},opacity:{value:1},map:{value:null},mapTransform:{value:new $l},alphaMap:{value:null},alphaMapTransform:{value:new $l},alphaTest:{value:0}},specularmap:{specularMap:{value:null},specularMapTransform:{value:new $l}},envmap:{envMap:{value:null},envMapRotation:{value:new $l},reflectivity:{value:1},ior:{value:1.5},refractionRatio:{value:.98},dfgLUT:{value:null}},aomap:{aoMap:{value:null},aoMapIntensity:{value:1},aoMapTransform:{value:new $l}},lightmap:{lightMap:{value:null},lightMapIntensity:{value:1},lightMapTransform:{value:new $l}},bumpmap:{bumpMap:{value:null},bumpMapTransform:{value:new $l},bumpScale:{value:1}},normalmap:{normalMap:{value:null},normalMapTransform:{value:new $l},normalScale:{value:new Y(1,1)}},displacementmap:{displacementMap:{value:null},displacementMapTransform:{value:new $l},displacementScale:{value:1},displacementBias:{value:0}},emissivemap:{emissiveMap:{value:null},emissiveMapTransform:{value:new $l}},metalnessmap:{metalnessMap:{value:null},metalnessMapTransform:{value:new $l}},roughnessmap:{roughnessMap:{value:null},roughnessMapTransform:{value:new $l}},gradientmap:{gradientMap:{value:null}},fog:{fogDensity:{value:25e-5},fogNear:{value:1},fogFar:{value:2e3},fogColor:{value:new Z(16777215)}},lights:{ambientLightColor:{value:[]},lightProbe:{value:[]},directionalLights:{value:[],properties:{direction:{},color:{}}},directionalLightShadows:{value:[],properties:{shadowIntensity:1,shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{}}},directionalShadowMatrix:{value:[]},spotLights:{value:[],properties:{color:{},position:{},direction:{},distance:{},coneCos:{},penumbraCos:{},decay:{}}},spotLightShadows:{value:[],properties:{shadowIntensity:1,shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{}}},spotLightMap:{value:[]},spotLightMatrix:{value:[]},pointLights:{value:[],properties:{color:{},position:{},decay:{},distance:{}}},pointLightShadows:{value:[],properties:{shadowIntensity:1,shadowBias:{},shadowNormalBias:{},shadowRadius:{},shadowMapSize:{},shadowCameraNear:{},shadowCameraFar:{}}},pointShadowMatrix:{value:[]},hemisphereLights:{value:[],properties:{direction:{},skyColor:{},groundColor:{}}},rectAreaLights:{value:[],properties:{color:{},position:{},width:{},height:{}}},ltc_1:{value:null},ltc_2:{value:null},probesSH:{value:null},probesMin:{value:new X},probesMax:{value:new X},probesResolution:{value:new X}},points:{diffuse:{value:new Z(16777215)},opacity:{value:1},size:{value:1},scale:{value:1},map:{value:null},alphaMap:{value:null},alphaMapTransform:{value:new $l},alphaTest:{value:0},uvTransform:{value:new $l}},sprite:{diffuse:{value:new Z(16777215)},opacity:{value:1},center:{value:new Y(.5,.5)},rotation:{value:0},map:{value:null},mapTransform:{value:new $l},alphaMap:{value:null},alphaMapTransform:{value:new $l},alphaTest:{value:0}}},og={basic:{uniforms:mm([$.common,$.specularmap,$.envmap,$.aomap,$.lightmap,$.fog]),vertexShader:ag.meshbasic_vert,fragmentShader:ag.meshbasic_frag},lambert:{uniforms:mm([$.common,$.specularmap,$.envmap,$.aomap,$.lightmap,$.emissivemap,$.bumpmap,$.normalmap,$.displacementmap,$.fog,$.lights,{emissive:{value:new Z(0)},envMapIntensity:{value:1}}]),vertexShader:ag.meshlambert_vert,fragmentShader:ag.meshlambert_frag},phong:{uniforms:mm([$.common,$.specularmap,$.envmap,$.aomap,$.lightmap,$.emissivemap,$.bumpmap,$.normalmap,$.displacementmap,$.fog,$.lights,{emissive:{value:new Z(0)},specular:{value:new Z(1118481)},shininess:{value:30},envMapIntensity:{value:1}}]),vertexShader:ag.meshphong_vert,fragmentShader:ag.meshphong_frag},standard:{uniforms:mm([$.common,$.envmap,$.aomap,$.lightmap,$.emissivemap,$.bumpmap,$.normalmap,$.displacementmap,$.roughnessmap,$.metalnessmap,$.fog,$.lights,{emissive:{value:new Z(0)},roughness:{value:1},metalness:{value:0},envMapIntensity:{value:1}}]),vertexShader:ag.meshphysical_vert,fragmentShader:ag.meshphysical_frag},toon:{uniforms:mm([$.common,$.aomap,$.lightmap,$.emissivemap,$.bumpmap,$.normalmap,$.displacementmap,$.gradientmap,$.fog,$.lights,{emissive:{value:new Z(0)}}]),vertexShader:ag.meshtoon_vert,fragmentShader:ag.meshtoon_frag},matcap:{uniforms:mm([$.common,$.bumpmap,$.normalmap,$.displacementmap,$.fog,{matcap:{value:null}}]),vertexShader:ag.meshmatcap_vert,fragmentShader:ag.meshmatcap_frag},points:{uniforms:mm([$.points,$.fog]),vertexShader:ag.points_vert,fragmentShader:ag.points_frag},dashed:{uniforms:mm([$.common,$.fog,{scale:{value:1},dashSize:{value:1},totalSize:{value:2}}]),vertexShader:ag.linedashed_vert,fragmentShader:ag.linedashed_frag},depth:{uniforms:mm([$.common,$.displacementmap]),vertexShader:ag.depth_vert,fragmentShader:ag.depth_frag},normal:{uniforms:mm([$.common,$.bumpmap,$.normalmap,$.displacementmap,{opacity:{value:1}}]),vertexShader:ag.meshnormal_vert,fragmentShader:ag.meshnormal_frag},sprite:{uniforms:mm([$.sprite,$.fog]),vertexShader:ag.sprite_vert,fragmentShader:ag.sprite_frag},background:{uniforms:{uvTransform:{value:new $l},t2D:{value:null},backgroundIntensity:{value:1}},vertexShader:ag.background_vert,fragmentShader:ag.background_frag},backgroundCube:{uniforms:{envMap:{value:null},backgroundBlurriness:{value:0},backgroundIntensity:{value:1},backgroundRotation:{value:new $l}},vertexShader:ag.backgroundCube_vert,fragmentShader:ag.backgroundCube_frag},cube:{uniforms:{tCube:{value:null},tFlip:{value:-1},opacity:{value:1}},vertexShader:ag.cube_vert,fragmentShader:ag.cube_frag},equirect:{uniforms:{tEquirect:{value:null}},vertexShader:ag.equirect_vert,fragmentShader:ag.equirect_frag},distance:{uniforms:mm([$.common,$.displacementmap,{referencePosition:{value:new X},nearDistance:{value:1},farDistance:{value:1e3}}]),vertexShader:ag.distance_vert,fragmentShader:ag.distance_frag},shadow:{uniforms:mm([$.lights,$.fog,{color:{value:new Z(0)},opacity:{value:1}}]),vertexShader:ag.shadow_vert,fragmentShader:ag.shadow_frag}};og.physical={uniforms:mm([og.standard.uniforms,{clearcoat:{value:0},clearcoatMap:{value:null},clearcoatMapTransform:{value:new $l},clearcoatNormalMap:{value:null},clearcoatNormalMapTransform:{value:new $l},clearcoatNormalScale:{value:new Y(1,1)},clearcoatRoughness:{value:0},clearcoatRoughnessMap:{value:null},clearcoatRoughnessMapTransform:{value:new $l},dispersion:{value:0},iridescence:{value:0},iridescenceMap:{value:null},iridescenceMapTransform:{value:new $l},iridescenceIOR:{value:1.3},iridescenceThicknessMinimum:{value:100},iridescenceThicknessMaximum:{value:400},iridescenceThicknessMap:{value:null},iridescenceThicknessMapTransform:{value:new $l},sheen:{value:0},sheenColor:{value:new Z(0)},sheenColorMap:{value:null},sheenColorMapTransform:{value:new $l},sheenRoughness:{value:1},sheenRoughnessMap:{value:null},sheenRoughnessMapTransform:{value:new $l},transmission:{value:0},transmissionMap:{value:null},transmissionMapTransform:{value:new $l},transmissionSamplerSize:{value:new Y},transmissionSamplerMap:{value:null},thickness:{value:0},thicknessMap:{value:null},thicknessMapTransform:{value:new $l},attenuationDistance:{value:0},attenuationColor:{value:new Z(0)},specularColor:{value:new Z(1,1,1)},specularColorMap:{value:null},specularColorMapTransform:{value:new $l},specularIntensity:{value:1},specularIntensityMap:{value:null},specularIntensityMapTransform:{value:new $l},anisotropyVector:{value:new Y},anisotropyMap:{value:null},anisotropyMapTransform:{value:new $l}}]),vertexShader:ag.meshphysical_vert,fragmentShader:ag.meshphysical_frag};var sg={r:0,b:0,g:0},cg=new bu,lg=new $l;lg.set(-1,0,0,0,1,0,0,0,1);function ug(e,t,n,r,i,a){let o=new Z(0),s=i===!0?0:1,c,l,u=null,d=0,f=null;function p(e){let n=e.isScene===!0?e.background:null;if(n&&n.isTexture){let r=e.backgroundBlurriness>0;n=t.get(n,r)}return n}function m(t){let r=!1,i=p(t);i===null?g(o,s):i&&i.isColor&&(g(i,1),r=!0);let c=e.xr.getEnvironmentBlendMode();c===`additive`?n.buffers.color.setClear(0,0,0,1,a):c===`alpha-blend`&&n.buffers.color.setClear(0,0,0,0,a),(e.autoClear||r)&&(n.buffers.depth.setTest(!0),n.buffers.depth.setMask(!0),n.buffers.color.setMask(!0),e.clear(e.autoClearColor,e.autoClearDepth,e.autoClearStencil))}function h(t,n){let i=p(n);i&&(i.isCubeTexture||i.mapping===306)?(l===void 0&&(l=new Q(new Ap(1,1,1),new xm({name:`BackgroundCubeMaterial`,uniforms:pm(og.backgroundCube.uniforms),vertexShader:og.backgroundCube.vertexShader,fragmentShader:og.backgroundCube.fragmentShader,side:1,depthTest:!1,depthWrite:!1,fog:!1,allowOverride:!1})),l.geometry.deleteAttribute(`normal`),l.geometry.deleteAttribute(`uv`),l.onBeforeRender=function(e,t,n){this.matrixWorld.copyPosition(n.matrixWorld)},Object.defineProperty(l.material,"envMap",{get:function(){return this.uniforms.envMap.value}}),r.update(l)),l.material.uniforms.envMap.value=i,l.material.uniforms.backgroundBlurriness.value=n.backgroundBlurriness,l.material.uniforms.backgroundIntensity.value=n.backgroundIntensity,l.material.uniforms.backgroundRotation.value.setFromMatrix4(cg.makeRotationFromEuler(n.backgroundRotation)).transpose(),i.isCubeTexture&&i.isRenderTargetTexture===!1&&l.material.uniforms.backgroundRotation.value.premultiply(lg),l.material.toneMapped=iu.getTransfer(i.colorSpace)!==ol,(u!==i||d!==i.version||f!==e.toneMapping)&&(l.material.needsUpdate=!0,u=i,d=i.version,f=e.toneMapping),l.layers.enableAll(),t.unshift(l,l.geometry,l.material,0,0,null)):i&&i.isTexture&&(c===void 0&&(c=new Q(new lm(2,2),new xm({name:`BackgroundMaterial`,uniforms:pm(og.background.uniforms),vertexShader:og.background.vertexShader,fragmentShader:og.background.fragmentShader,side:0,depthTest:!1,depthWrite:!1,fog:!1,allowOverride:!1})),c.geometry.deleteAttribute(`normal`),Object.defineProperty(c.material,"map",{get:function(){return this.uniforms.t2D.value}}),r.update(c)),c.material.uniforms.t2D.value=i,c.material.uniforms.backgroundIntensity.value=n.backgroundIntensity,c.material.toneMapped=iu.getTransfer(i.colorSpace)!==ol,i.matrixAutoUpdate===!0&&i.updateMatrix(),c.material.uniforms.uvTransform.value.copy(i.matrix),(u!==i||d!==i.version||f!==e.toneMapping)&&(c.material.needsUpdate=!0,u=i,d=i.version,f=e.toneMapping),c.layers.enableAll(),t.unshift(c,c.geometry,c.material,0,0,null))}function g(t,r){t.getRGB(sg,_m(e)),n.buffers.color.setClear(sg.r,sg.g,sg.b,r,a)}function _(){l!==void 0&&(l.geometry.dispose(),l.material.dispose(),l=void 0),c!==void 0&&(c.geometry.dispose(),c.material.dispose(),c=void 0)}return{getClearColor:function(){return o},setClearColor:function(e,t=1){o.set(e),s=t,g(o,s)},getClearAlpha:function(){return s},setClearAlpha:function(e){s=e,g(o,s)},render:m,addToRenderList:h,dispose:_}}function dg(e,t){let n=e.getParameter(e.MAX_VERTEX_ATTRIBS),r={},i=f(null),a=i,o=!1;function s(n,r,i,s,c){let u=!1,f=d(n,s,i,r);a!==f&&(a=f,l(a.object)),u=p(n,s,i,c),u&&m(n,s,i,c),c!==null&&t.update(c,e.ELEMENT_ARRAY_BUFFER),(u||o)&&(o=!1,b(n,r,i,s),c!==null&&e.bindBuffer(e.ELEMENT_ARRAY_BUFFER,t.get(c).buffer))}function c(){return e.createVertexArray()}function l(t){return e.bindVertexArray(t)}function u(t){return e.deleteVertexArray(t)}function d(e,t,n,i){let a=i.wireframe===!0,o=r[t.id];o===void 0&&(o={},r[t.id]=o);let s=e.isInstancedMesh===!0?e.id:0,l=o[s];l===void 0&&(l={},o[s]=l);let u=l[n.id];u===void 0&&(u={},l[n.id]=u);let d=u[a];return d===void 0&&(d=f(c()),u[a]=d),d}function f(e){let t=[],r=[],i=[];for(let e=0;e=0){let n=i[t],r=o[t];if(r===void 0&&(t===`instanceMatrix`&&e.instanceMatrix&&(r=e.instanceMatrix),t===`instanceColor`&&e.instanceColor&&(r=e.instanceColor)),n===void 0||n.attribute!==r||r&&n.data!==r.data)return!0;s++}return a.attributesNum!==s||a.index!==r}function m(e,t,n,r){let i={},o=t.attributes,s=0,c=n.getAttributes();for(let t in c)if(c[t].location>=0){let n=o[t];n===void 0&&(t===`instanceMatrix`&&e.instanceMatrix&&(n=e.instanceMatrix),t===`instanceColor`&&e.instanceColor&&(n=e.instanceColor));let r={};r.attribute=n,n&&n.data&&(r.data=n.data),i[t]=r,s++}a.attributes=i,a.attributesNum=s,a.index=r}function h(){let e=a.newAttributes;for(let t=0,n=e.length;t=0){let s=o[r];if(s===void 0&&(r===`instanceMatrix`&&n.instanceMatrix&&(s=n.instanceMatrix),r===`instanceColor`&&n.instanceColor&&(s=n.instanceColor)),s!==void 0){let r=s.normalized,o=s.itemSize,c=t.get(s);if(c===void 0)continue;let l=c.buffer,u=c.type,d=c.bytesPerElement,f=u===e.INT||u===e.UNSIGNED_INT||s.gpuType===1013;if(s.isInterleavedBufferAttribute){let t=s.data,c=t.stride,p=s.offset;if(t.isInstancedInterleavedBuffer){for(let e=0;e0&&e.getShaderPrecisionFormat(e.FRAGMENT_SHADER,e.HIGH_FLOAT).precision>0)return`highp`;t=`mediump`}return t===`mediump`&&e.getShaderPrecisionFormat(e.VERTEX_SHADER,e.MEDIUM_FLOAT).precision>0&&e.getShaderPrecisionFormat(e.FRAGMENT_SHADER,e.MEDIUM_FLOAT).precision>0?`mediump`:`lowp`}let l=n.precision===void 0?`highp`:n.precision,u=c(l);u!==l&&(J(`WebGLRenderer:`,l,`not supported, using`,u,`instead.`),l=u);let d=n.logarithmicDepthBuffer===!0,f=n.reversedDepthBuffer===!0&&t.has(`EXT_clip_control`);n.reversedDepthBuffer===!0&&f===!1&&J(`WebGLRenderer: Unable to use reversed depth buffer due to missing EXT_clip_control extension. Fallback to default depth buffer.`);let p=e.getParameter(e.MAX_TEXTURE_IMAGE_UNITS),m=e.getParameter(e.MAX_VERTEX_TEXTURE_IMAGE_UNITS),h=e.getParameter(e.MAX_TEXTURE_SIZE),g=e.getParameter(e.MAX_CUBE_MAP_TEXTURE_SIZE),_=e.getParameter(e.MAX_VERTEX_ATTRIBS),v=e.getParameter(e.MAX_VERTEX_UNIFORM_VECTORS),y=e.getParameter(e.MAX_VARYING_VECTORS),b=e.getParameter(e.MAX_FRAGMENT_UNIFORM_VECTORS),x=e.getParameter(e.MAX_SAMPLES),S=e.getParameter(e.SAMPLES);return{isWebGL2:!0,getMaxAnisotropy:a,getMaxPrecision:c,textureFormatReadable:o,textureTypeReadable:s,precision:l,logarithmicDepthBuffer:d,reversedDepthBuffer:f,maxTextures:p,maxVertexTextures:m,maxTextureSize:h,maxCubemapSize:g,maxAttributes:_,maxVertexUniforms:v,maxVaryings:y,maxFragmentUniforms:b,maxSamples:x,samples:S}}function mg(e){let t=this,n=null,r=0,i=!1,a=!1,o=new $f,s=new $l,c={value:null,needsUpdate:!1};this.uniform=c,this.numPlanes=0,this.numIntersection=0,this.init=function(e,t){let n=e.length!==0||t||r!==0||i;return i=t,r=e.length,n},this.beginShadows=function(){a=!0,u(null)},this.endShadows=function(){a=!1},this.setGlobalState=function(e,t){n=u(e,t,0)},this.setState=function(t,o,s){let d=t.clippingPlanes,f=t.clipIntersection,p=t.clipShadows,m=e.get(t);if(!i||d===null||d.length===0||a&&!p)a?u(null):l();else{let e=a?0:r,t=e*4,i=m.clippingState||null;c.value=i,i=u(d,o,t,s);for(let e=0;e!==t;++e)i[e]=n[e];m.clippingState=i,this.numIntersection=f?this.numPlanes:0,this.numPlanes+=e}};function l(){c.value!==n&&(c.value=n,c.needsUpdate=r>0),t.numPlanes=r,t.numIntersection=0}function u(e,n,r,i){let a=e===null?0:e.length,l=null;if(a!==0){if(l=c.value,i!==!0||l===null){let t=r+a*4,i=n.matrixWorldInverse;s.getNormalMatrix(i),(l===null||l.length0&&this._blur(s,0,0,t),this._applyPMREM(s),this._cleanup(s),s}fromEquirectangular(e,t=null){return this._fromTexture(e,t)}fromCubemap(e,t=null){return this._fromTexture(e,t)}compileCubemapShader(){this._cubemapMaterial===null&&(this._cubemapMaterial=Ng(),this._compileMaterial(this._cubemapMaterial))}compileEquirectangularShader(){this._equirectMaterial===null&&(this._equirectMaterial=Mg(),this._compileMaterial(this._equirectMaterial))}dispose(){this._dispose(),this._cubemapMaterial!==null&&this._cubemapMaterial.dispose(),this._equirectMaterial!==null&&this._equirectMaterial.dispose(),this._backgroundBox!==null&&(this._backgroundBox.geometry.dispose(),this._backgroundBox.material.dispose())}_setSize(e){this._lodMax=Math.floor(Math.log2(e)),this._cubeSize=2**this._lodMax}_dispose(){this._blurMaterial!==null&&this._blurMaterial.dispose(),this._ggxMaterial!==null&&this._ggxMaterial.dispose(),this._pingPongRenderTarget!==null&&this._pingPongRenderTarget.dispose();for(let e=0;e2?l:0,l,l),c.setRenderTarget(r),p&&c.render(d,a),c.render(e,a)}c.toneMapping=u,c.autoClear=l,e.background=m}_textureToCubeUV(e,t){let n=this._renderer,r=e.mapping===301||e.mapping===302;r?(this._cubemapMaterial===null&&(this._cubemapMaterial=Ng()),this._cubemapMaterial.uniforms.flipEnvMap.value=e.isRenderTargetTexture===!1?-1:1):this._equirectMaterial===null&&(this._equirectMaterial=Mg());let i=r?this._cubemapMaterial:this._equirectMaterial,a=this._lodMeshes[0];a.material=i;let o=i.uniforms;o.envMap.value=e;let s=this._cubeSize;kg(t,0,0,3*s,2*s),n.setRenderTarget(t),n.render(a,yg)}_applyPMREM(e){let t=this._renderer,n=t.autoClear;t.autoClear=!1;let r=this._lodMeshes.length;for(let t=1;td-hg?n-d+hg:0),m=4*(this._cubeSize-f);s.envMap.value=e.texture,s.roughness.value=u,s.mipInt.value=d-t,kg(i,p,m,3*f,2*f),r.setRenderTarget(i),r.render(o,yg),s.envMap.value=i.texture,s.roughness.value=0,s.mipInt.value=d-n,kg(e,p,m,3*f,2*f),r.setRenderTarget(e),r.render(o,yg)}_blur(e,t,n,r,i){let a=this._pingPongRenderTarget;this._halfBlur(e,a,t,n,r,`latitudinal`,i),this._halfBlur(a,e,n,n,r,`longitudinal`,i)}_halfBlur(e,t,n,r,i,a,o){let s=this._renderer,c=this._blurMaterial;a!==`latitudinal`&&a!==`longitudinal`&&vl(`blur direction must be either latitudinal or longitudinal!`);let l=this._lodMeshes[r];l.material=c;let u=c.uniforms,d=this._sizeLods[n]-1,f=isFinite(i)?Math.PI/(2*d):2*Math.PI/(2*_g-1),p=i/f,m=isFinite(i)?1+Math.floor(3*p):_g;m>_g&&J(`sigmaRadians, ${i}, is too large and will clip, as it requested ${m} samples when the maximum is set to ${_g}`);let h=[],g=0;for(let e=0;e<_g;++e){let t=e/p,n=Math.exp(-t*t/2);h.push(n),e===0?g+=n:e_-hg?r-_+hg:0),4*(this._cubeSize-v),3*v,2*v),s.setRenderTarget(t),s.render(l,yg)}};function Dg(e){let t=[],n=[],r=[],i=e,a=e-hg+1+gg.length;for(let o=0;oe-hg?s=gg[o-e+hg-1]:o===0&&(s=0),n.push(s);let c=1/(a-2),l=-c,u=1+c,d=[l,l,u,l,u,u,l,l,u,u,l,u],f=new Float32Array(108),p=new Float32Array(72),m=new Float32Array(36);for(let e=0;e<6;e++){let t=e%3*2/3-1,n=e>2?0:-1,r=[t,n,0,t+2/3,n,0,t+2/3,n+1,0,t,n,0,t+2/3,n+1,0,t,n+1,0];f.set(r,18*e),p.set(d,12*e);let i=[e,e,e,e,e,e];m.set(i,6*e)}let h=new Zd;h.setAttribute(`position`,new Id(f,3)),h.setAttribute(`uv`,new Id(p,2)),h.setAttribute(`faceIndex`,new Id(m,1)),r.push(new Q(h,null)),i>hg&&i--}return{lodMeshes:r,sizeLods:t,sigmas:n}}function Og(e,t,n){let r=new _u(e,t,n);return r.texture.mapping=306,r.texture.name=`PMREM.cubeUv`,r.scissorTest=!0,r}function kg(e,t,n,r,i){e.viewport.set(t,n,r,i),e.scissor.set(t,n,r,i)}function Ag(e,t,n){return new xm({name:`PMREMGGXConvolution`,defines:{GGX_SAMPLES:vg,CUBEUV_TEXEL_WIDTH:1/t,CUBEUV_TEXEL_HEIGHT:1/n,CUBEUV_MAX_MIP:`${e}.0`},uniforms:{envMap:{value:null},roughness:{value:0},mipInt:{value:0}},vertexShader:Pg(),fragmentShader:` precision highp float; precision highp int; @@ -3772,7 +3772,7 @@ void main() { gl_FragColor = vec4(prefilteredColor, 1.0); } - `,blending:0,depthTest:!1,depthWrite:!1})}function Eg(e,t,n){let r=new Float32Array(fg),i=new Z(0,1,0);return new xm({name:`SphericalGaussianBlur`,defines:{n:fg,CUBEUV_TEXEL_WIDTH:1/t,CUBEUV_TEXEL_HEIGHT:1/n,CUBEUV_MAX_MIP:`${e}.0`},uniforms:{envMap:{value:null},samples:{value:1},weights:{value:r},latitudinal:{value:!1},dTheta:{value:0},mipInt:{value:0},poleAxis:{value:i}},vertexShader:kg(),fragmentShader:` + `,blending:0,depthTest:!1,depthWrite:!1})}function jg(e,t,n){let r=new Float32Array(_g),i=new X(0,1,0);return new xm({name:`SphericalGaussianBlur`,defines:{n:_g,CUBEUV_TEXEL_WIDTH:1/t,CUBEUV_TEXEL_HEIGHT:1/n,CUBEUV_MAX_MIP:`${e}.0`},uniforms:{envMap:{value:null},samples:{value:1},weights:{value:r},latitudinal:{value:!1},dTheta:{value:0},mipInt:{value:0},poleAxis:{value:i}},vertexShader:Pg(),fragmentShader:` precision mediump float; precision mediump int; @@ -3832,7 +3832,7 @@ void main() { } } - `,blending:0,depthTest:!1,depthWrite:!1})}function Dg(){return new xm({name:`EquirectangularToCubeUV`,uniforms:{envMap:{value:null}},vertexShader:kg(),fragmentShader:` + `,blending:0,depthTest:!1,depthWrite:!1})}function Mg(){return new xm({name:`EquirectangularToCubeUV`,uniforms:{envMap:{value:null}},vertexShader:Pg(),fragmentShader:` precision mediump float; precision mediump int; @@ -3851,7 +3851,7 @@ void main() { gl_FragColor = vec4( texture2D ( envMap, uv ).rgb, 1.0 ); } - `,blending:0,depthTest:!1,depthWrite:!1})}function Og(){return new xm({name:`CubemapToCubeUV`,uniforms:{envMap:{value:null},flipEnvMap:{value:-1}},vertexShader:kg(),fragmentShader:` + `,blending:0,depthTest:!1,depthWrite:!1})}function Ng(){return new xm({name:`CubemapToCubeUV`,uniforms:{envMap:{value:null},flipEnvMap:{value:-1}},vertexShader:Pg(),fragmentShader:` precision mediump float; precision mediump int; @@ -3867,7 +3867,7 @@ void main() { gl_FragColor = textureCube( envMap, vec3( flipEnvMap * vOutputDirection.x, vOutputDirection.yz ) ); } - `,blending:0,depthTest:!1,depthWrite:!1})}function kg(){return` + `,blending:0,depthTest:!1,depthWrite:!1})}function Pg(){return` precision mediump float; precision mediump int; @@ -3922,7 +3922,7 @@ void main() { gl_Position = vec4( position, 1.0 ); } - `}var Ag=class extends gu{constructor(e=1,t={}){super(e,e,t),this.isWebGLCubeRenderTarget=!0;let n={width:e,height:e,depth:1},r=[n,n,n,n,n,n];this.texture=new Tp(r),this._setTextureOptions(t),this.texture.isRenderTargetTexture=!0}fromEquirectangularTexture(e,t){this.texture.type=t.type,this.texture.colorSpace=t.colorSpace,this.texture.generateMipmaps=t.generateMipmaps,this.texture.minFilter=t.minFilter,this.texture.magFilter=t.magFilter;let n={uniforms:{tEquirect:{value:null}},vertexShader:` + `}var Fg=class extends _u{constructor(e=1,t={}){super(e,e,t),this.isWebGLCubeRenderTarget=!0;let n={width:e,height:e,depth:1},r=[n,n,n,n,n,n];this.texture=new Tp(r),this._setTextureOptions(t),this.texture.isRenderTargetTexture=!0}fromEquirectangularTexture(e,t){this.texture.type=t.type,this.texture.colorSpace=t.colorSpace,this.texture.generateMipmaps=t.generateMipmaps,this.texture.minFilter=t.minFilter,this.texture.magFilter=t.magFilter;let n={uniforms:{tEquirect:{value:null}},vertexShader:` varying vec3 vWorldDirection; @@ -3957,7 +3957,7 @@ void main() { gl_FragColor = texture2D( tEquirect, sampleUV ); } - `},r=new Ap(5,5,5),i=new xm({name:`CubemapFromEquirect`,uniforms:pm(n.uniforms),vertexShader:n.vertexShader,fragmentShader:n.fragmentShader,side:1,blending:0});i.uniforms.tEquirect.value=t;let a=new Cf(r,i),o=t.minFilter;return t.minFilter===1008&&(t.minFilter=Fs),new Ah(1,10,this).update(e,a),t.minFilter=o,a.geometry.dispose(),a.material.dispose(),this}clear(e,t=!0,n=!0,r=!0){let i=e.getRenderTarget();for(let i=0;i<6;i++)e.setRenderTarget(this,i),e.clear(t,n,r);e.setRenderTarget(i)}};function jg(e){let t=new WeakMap,n=new WeakMap,r=null;function i(e,t=!1){return e==null?null:t?o(e):a(e)}function a(n){if(n&&n.isTexture){let r=n.mapping;if(r===303||r===304)if(t.has(n)){let e=t.get(n).texture;return s(e,n.mapping)}else{let r=n.image;if(r&&r.height>0){let i=new Ag(r.height);return i.fromEquirectangularTexture(e,n),t.set(n,i),n.addEventListener(`dispose`,l),s(i.texture,n.mapping)}else return null}}return n}function o(t){if(t&&t.isTexture){let i=t.mapping,a=i===303||i===304,o=i===301||i===302;if(a||o){let i=n.get(t),s=i===void 0?0:i.texture.pmremVersion;if(t.isRenderTargetTexture&&t.pmremVersion!==s)return r===null&&(r=new xg(e)),i=a?r.fromEquirectangular(t,i):r.fromCubemap(t,i),i.texture.pmremVersion=t.pmremVersion,n.set(t,i),i.texture;if(i!==void 0)return i.texture;{let s=t.image;return a&&s&&s.height>0||o&&s&&c(s)?(r===null&&(r=new xg(e)),i=a?r.fromEquirectangular(t):r.fromCubemap(t),i.texture.pmremVersion=t.pmremVersion,n.set(t,i),t.addEventListener(`dispose`,u),i.texture):null}}}return t}function s(e,t){return t===303?e.mapping=301:t===304&&(e.mapping=302),e}function c(e){let t=0;for(let n=0;n<6;n++)e[n]!==void 0&&t++;return t===6}function l(e){let n=e.target;n.removeEventListener(`dispose`,l);let r=t.get(n);r!==void 0&&(t.delete(n),r.dispose())}function u(e){let t=e.target;t.removeEventListener(`dispose`,u);let r=n.get(t);r!==void 0&&(n.delete(t),r.dispose())}function d(){t=new WeakMap,n=new WeakMap,r!==null&&(r.dispose(),r=null)}return{get:i,dispose:d}}function Mg(e){let t={};function n(n){if(t[n]!==void 0)return t[n];let r=e.getExtension(n);return t[n]=r,r}return{has:function(e){return n(e)!==null},init:function(){n(`EXT_color_buffer_float`),n(`WEBGL_clip_cull_distance`),n(`OES_texture_float_linear`),n(`EXT_color_buffer_half_float`),n(`WEBGL_multisampled_render_to_texture`),n(`WEBGL_render_shared_exponent`)},get:function(e){let t=n(e);return t===null&&vl(`WebGLRenderer: `+e+` extension not supported.`),t}}}function Ng(e,t,n,r){let i={},a=new WeakMap;function o(e){let s=e.target;s.index!==null&&t.remove(s.index);for(let e in s.attributes)t.remove(s.attributes[e]);s.removeEventListener(`dispose`,o),delete i[s.id];let c=a.get(s);c&&(t.remove(c),a.delete(s)),r.releaseStatesOfGeometry(s),s.isInstancedBufferGeometry===!0&&delete s._maxInstanceCount,n.memory.geometries--}function s(e,t){return i[t.id]===!0?t:(t.addEventListener(`dispose`,o),i[t.id]=!0,n.memory.geometries++,t)}function c(n){let r=n.attributes;for(let n in r)t.update(r[n],e.ARRAY_BUFFER)}function l(e){let n=[],r=e.index,i=e.attributes.position,o=0;if(i===void 0)return;if(r!==null){let e=r.array;o=r.version;for(let t=0,r=e.length;t=65535?Ld:Id)(n,1);s.version=o;let c=a.get(e);c&&t.remove(c),a.set(e,s)}function u(e){let t=a.get(e);if(t){let n=e.index;n!==null&&t.versiont.maxTextureSize&&(m=Math.ceil(p/t.maxTextureSize),p=t.maxTextureSize);let h=new Float32Array(p*m*4*u),g=new _u(h,p,m,u);g.type=Ws,g.needsUpdate=!0;let _=f*4;for(let t=0;t0){let i=new Fg(r.height);return i.fromEquirectangularTexture(e,n),t.set(n,i),n.addEventListener(`dispose`,l),s(i.texture,n.mapping)}else return null}}return n}function o(t){if(t&&t.isTexture){let i=t.mapping,a=i===303||i===304,o=i===301||i===302;if(a||o){let i=n.get(t),s=i===void 0?0:i.texture.pmremVersion;if(t.isRenderTargetTexture&&t.pmremVersion!==s)return r===null&&(r=new Eg(e)),i=a?r.fromEquirectangular(t,i):r.fromCubemap(t,i),i.texture.pmremVersion=t.pmremVersion,n.set(t,i),i.texture;if(i!==void 0)return i.texture;{let s=t.image;return a&&s&&s.height>0||o&&s&&c(s)?(r===null&&(r=new Eg(e)),i=a?r.fromEquirectangular(t):r.fromCubemap(t),i.texture.pmremVersion=t.pmremVersion,n.set(t,i),t.addEventListener(`dispose`,u),i.texture):null}}}return t}function s(e,t){return t===303?e.mapping=301:t===304&&(e.mapping=302),e}function c(e){let t=0;for(let n=0;n<6;n++)e[n]!==void 0&&t++;return t===6}function l(e){let n=e.target;n.removeEventListener(`dispose`,l);let r=t.get(n);r!==void 0&&(t.delete(n),r.dispose())}function u(e){let t=e.target;t.removeEventListener(`dispose`,u);let r=n.get(t);r!==void 0&&(n.delete(t),r.dispose())}function d(){t=new WeakMap,n=new WeakMap,r!==null&&(r.dispose(),r=null)}return{get:i,dispose:d}}function Lg(e){let t={};function n(n){if(t[n]!==void 0)return t[n];let r=e.getExtension(n);return t[n]=r,r}return{has:function(e){return n(e)!==null},init:function(){n(`EXT_color_buffer_float`),n(`WEBGL_clip_cull_distance`),n(`OES_texture_float_linear`),n(`EXT_color_buffer_half_float`),n(`WEBGL_multisampled_render_to_texture`),n(`WEBGL_render_shared_exponent`)},get:function(e){let t=n(e);return t===null&&yl(`WebGLRenderer: `+e+` extension not supported.`),t}}}function Rg(e,t,n,r){let i={},a=new WeakMap;function o(e){let s=e.target;s.index!==null&&t.remove(s.index);for(let e in s.attributes)t.remove(s.attributes[e]);s.removeEventListener(`dispose`,o),delete i[s.id];let c=a.get(s);c&&(t.remove(c),a.delete(s)),r.releaseStatesOfGeometry(s),s.isInstancedBufferGeometry===!0&&delete s._maxInstanceCount,n.memory.geometries--}function s(e,t){return i[t.id]===!0?t:(t.addEventListener(`dispose`,o),i[t.id]=!0,n.memory.geometries++,t)}function c(n){let r=n.attributes;for(let n in r)t.update(r[n],e.ARRAY_BUFFER)}function l(e){let n=[],r=e.index,i=e.attributes.position,o=0;if(i===void 0)return;if(r!==null){let e=r.array;o=r.version;for(let t=0,r=e.length;t=65535?Rd:Ld)(n,1);s.version=o;let c=a.get(e);c&&t.remove(c),a.set(e,s)}function u(e){let t=a.get(e);if(t){let n=e.index;n!==null&&t.versiont.maxTextureSize&&(m=Math.ceil(p/t.maxTextureSize),p=t.maxTextureSize);let h=new Float32Array(p*m*4*u),g=new vu(h,p,m,u);g.type=Gs,g.needsUpdate=!0;let _=f*4;for(let t=0;t0&&_[0].isRenderPass===!0;let t=o.width,n=o.height;for(let e=0;e<_.length;e++){let r=_[e];r.setSize&&r.setSize(t,n)}},this.begin=function(e,t){if(m||e.toneMapping===0&&_.length===0)return!1;if(g=t,t!==null){let e=t.width,n=t.height;(o.width!==e||o.height!==n)&&this.setSize(e,n)}return v===!1&&e.setRenderTarget(o),h=e.toneMapping,e.toneMapping=0,!0},this.hasRenderPass=function(){return v},this.end=function(e,t){e.toneMapping=h,m=!0;let n=o,r=s;for(let i=0;i<_.length;i++){let a=_[i];if(a.enabled!==!1&&(a.render(e,r,n,t),a.needsSwap!==!1)){let e=n;n=r,r=e}}if(f!==e.outputColorSpace||p!==e.toneMapping){f=e.outputColorSpace,p=e.toneMapping,l.defines={},ru.getTransfer(f)===`srgb`&&(l.defines.SRGB_TRANSFER=``);let t=Rg[p];t&&(l.defines[t]=``),l.needsUpdate=!0}l.uniforms.tDiffuse.value=n.texture,e.setRenderTarget(g),e.render(u,d),g=null,m=!1},this.isCompositing=function(){return m},this.dispose=function(){o.depthTexture&&o.depthTexture.dispose(),o.dispose(),s.dispose(),c.dispose(),l.dispose()}}var Bg=new pu,Vg=new Dp(1,1),Hg=new _u,Ug=new vu,Wg=new Tp,Gg=[],Kg=[],qg=new Float32Array(16),Jg=new Float32Array(9),Yg=new Float32Array(4);function Xg(e,t,n){let r=e[0];if(r<=0||r>0)return e;let i=t*n,a=Gg[i];if(a===void 0&&(a=new Float32Array(i),Gg[i]=a),t!==0){r.toArray(a,0);for(let r=1,i=0;r!==t;++r)i+=n,e[r].toArray(a,i)}return a}function Zg(e,t){if(e.length!==t.length)return!1;for(let n=0,r=e.length;n0&&(this.seq=r.concat(i))}setValue(e,t,n,r){let i=this.map[t];i!==void 0&&i.setValue(e,n,r)}setOptional(e,t,n){let r=t[n];r!==void 0&&this.setValue(e,n,r)}static upload(e,t,n,r){for(let i=0,a=t.length;i!==a;++i){let a=t[i],o=n[a.id];o.needsUpdate!==!1&&a.setValue(e,o.value,r)}}static seqWithValue(e,t){let n=[];for(let r=0,i=e.length;r!==i;++r){let i=e[r];i.id in t&&n.push(i)}return n}};function q_(e,t,n){let r=e.createShader(t);return e.shaderSource(r,n),e.compileShader(r),r}var J_=37297,Y_=0;function X_(e,t){let n=e.split(` + }`,depthTest:!1,depthWrite:!1}),u=new Q(c,l),d=new xh(-1,1,1,-1,0,1),f=null,p=null,m=!1,h,g=null,_=[],v=!1;this.setSize=function(e,t){o.setSize(e,t),s.setSize(e,t);for(let n=0;n<_.length;n++){let r=_[n];r.setSize&&r.setSize(e,t)}},this.setEffects=function(e){_=e,v=_.length>0&&_[0].isRenderPass===!0;let t=o.width,n=o.height;for(let e=0;e<_.length;e++){let r=_[e];r.setSize&&r.setSize(t,n)}},this.begin=function(e,t){if(m||e.toneMapping===0&&_.length===0)return!1;if(g=t,t!==null){let e=t.width,n=t.height;(o.width!==e||o.height!==n)&&this.setSize(e,n)}return v===!1&&e.setRenderTarget(o),h=e.toneMapping,e.toneMapping=0,!0},this.hasRenderPass=function(){return v},this.end=function(e,t){e.toneMapping=h,m=!0;let n=o,r=s;for(let i=0;i<_.length;i++){let a=_[i];if(a.enabled!==!1&&(a.render(e,r,n,t),a.needsSwap!==!1)){let e=n;n=r,r=e}}if(f!==e.outputColorSpace||p!==e.toneMapping){f=e.outputColorSpace,p=e.toneMapping,l.defines={},iu.getTransfer(f)===`srgb`&&(l.defines.SRGB_TRANSFER=``);let t=Ug[p];t&&(l.defines[t]=``),l.needsUpdate=!0}l.uniforms.tDiffuse.value=n.texture,e.setRenderTarget(g),e.render(u,d),g=null,m=!1},this.isCompositing=function(){return m},this.dispose=function(){o.depthTexture&&o.depthTexture.dispose(),o.dispose(),s.dispose(),c.dispose(),l.dispose()}}var Gg=new mu,Kg=new Dp(1,1),qg=new vu,Jg=new yu,Yg=new Tp,Xg=[],Zg=[],Qg=new Float32Array(16),$g=new Float32Array(9),e_=new Float32Array(4);function t_(e,t,n){let r=e[0];if(r<=0||r>0)return e;let i=t*n,a=Xg[i];if(a===void 0&&(a=new Float32Array(i),Xg[i]=a),t!==0){r.toArray(a,0);for(let r=1,i=0;r!==t;++r)i+=n,e[r].toArray(a,i)}return a}function n_(e,t){if(e.length!==t.length)return!1;for(let n=0,r=e.length;n0&&(this.seq=r.concat(i))}setValue(e,t,n,r){let i=this.map[t];i!==void 0&&i.setValue(e,n,r)}setOptional(e,t,n){let r=t[n];r!==void 0&&this.setValue(e,n,r)}static upload(e,t,n,r){for(let i=0,a=t.length;i!==a;++i){let a=t[i],o=n[a.id];o.needsUpdate!==!1&&a.setValue(e,o.value,r)}}static seqWithValue(e,t){let n=[];for(let r=0,i=e.length;r!==i;++r){let i=e[r];i.id in t&&n.push(i)}return n}};function Q_(e,t,n){let r=e.createShader(t);return e.shaderSource(r,n),e.compileShader(r),r}var $_=37297,ev=0;function tv(e,t){let n=e.split(` `),r=[],i=Math.max(t-6,0),a=Math.min(t+6,n.length);for(let e=i;e`:` `} ${i}: ${n[e]}`)}return r.join(` -`)}var Z_=new Ql;function Q_(e){ru._getMatrix(Z_,ru.workingColorSpace,e);let t=`mat3( ${Z_.elements.map(e=>e.toFixed(4))} )`;switch(ru.getTransfer(e)){case il:return[t,`LinearTransferOETF`];case al:return[t,`sRGBTransferOETF`];default:return Y(`WebGLProgram: Unsupported color space: `,e),[t,`LinearTransferOETF`]}}function $_(e,t,n){let r=e.getShaderParameter(t,e.COMPILE_STATUS),i=(e.getShaderInfoLog(t)||``).trim();if(r&&i===``)return``;let a=/ERROR: 0:(\d+)/.exec(i);if(a){let r=parseInt(a[1]);return n.toUpperCase()+` +`)}var nv=new $l;function rv(e){iu._getMatrix(nv,iu.workingColorSpace,e);let t=`mat3( ${nv.elements.map(e=>e.toFixed(4))} )`;switch(iu.getTransfer(e)){case al:return[t,`LinearTransferOETF`];case ol:return[t,`sRGBTransferOETF`];default:return J(`WebGLProgram: Unsupported color space: `,e),[t,`LinearTransferOETF`]}}function iv(e,t,n){let r=e.getShaderParameter(t,e.COMPILE_STATUS),i=(e.getShaderInfoLog(t)||``).trim();if(r&&i===``)return``;let a=/ERROR: 0:(\d+)/.exec(i);if(a){let r=parseInt(a[1]);return n.toUpperCase()+` `+i+` -`+X_(e.getShaderSource(t),r)}else return i}function ev(e,t){let n=Q_(t);return[`vec4 ${e}( vec4 value ) {`,` return ${n[1]}( vec4( value.rgb * ${n[0]}, value.a ) );`,`}`].join(` -`)}var tv={1:`Linear`,2:`Reinhard`,3:`Cineon`,4:`ACESFilmic`,6:`AgX`,7:`Neutral`,5:`Custom`};function nv(e,t){let n=tv[t];return n===void 0?(Y(`WebGLProgram: Unsupported toneMapping:`,t),`vec3 `+e+`( vec3 color ) { return LinearToneMapping( color ); }`):`vec3 `+e+`( vec3 color ) { return `+n+`ToneMapping( color ); }`}var rv=new Z;function iv(){return ru.getLuminanceCoefficients(rv),[`float luminance( const in vec3 rgb ) {`,` const vec3 weights = vec3( ${rv.x.toFixed(4)}, ${rv.y.toFixed(4)}, ${rv.z.toFixed(4)} );`,` return dot( weights, rgb );`,`}`].join(` -`)}function av(e){return[e.extensionClipCullDistance?`#extension GL_ANGLE_clip_cull_distance : require`:``,e.extensionMultiDraw?`#extension GL_ANGLE_multi_draw : require`:``].filter(cv).join(` -`)}function ov(e){let t=[];for(let n in e){let r=e[n];r!==!1&&t.push(`#define `+n+` `+r)}return t.join(` -`)}function sv(e,t){let n={},r=e.getProgramParameter(t,e.ACTIVE_ATTRIBUTES);for(let i=0;i/gm;function fv(e){return e.replace(dv,mv)}var pv=new Map;function mv(e,t){let n=eg[t];if(n===void 0){let e=pv.get(t);if(e!==void 0)n=eg[e],Y(`WebGLRenderer: Shader chunk "%s" has been deprecated. Use "%s" instead.`,t,e);else throw Error(`THREE.WebGLProgram: Can not resolve #include <`+t+`>`)}return fv(n)}var hv=/#pragma unroll_loop_start\s+for\s*\(\s*int\s+i\s*=\s*(\d+)\s*;\s*i\s*<\s*(\d+)\s*;\s*i\s*\+\+\s*\)\s*{([\s\S]+?)}\s+#pragma unroll_loop_end/g;function gv(e){return e.replace(hv,_v)}function _v(e,t,n,r){let i=``;for(let e=parseInt(t);e/gm;function _v(e){return e.replace(gv,yv)}var vv=new Map;function yv(e,t){let n=ag[t];if(n===void 0){let e=vv.get(t);if(e!==void 0)n=ag[e],J(`WebGLRenderer: Shader chunk "%s" has been deprecated. Use "%s" instead.`,t,e);else throw Error(`THREE.WebGLProgram: Can not resolve #include <`+t+`>`)}return _v(n)}var bv=/#pragma unroll_loop_start\s+for\s*\(\s*int\s+i\s*=\s*(\d+)\s*;\s*i\s*<\s*(\d+)\s*;\s*i\s*\+\+\s*\)\s*{([\s\S]+?)}\s+#pragma unroll_loop_end/g;function xv(e){return e.replace(bv,Sv)}function Sv(e,t,n,r){let i=``;for(let e=parseInt(t);e0&&(g+=` -`),_=[`#define SHADER_TYPE `+n.shaderType,`#define SHADER_NAME `+n.shaderName,m].filter(cv).join(` +`),_=[`#define SHADER_TYPE `+n.shaderType,`#define SHADER_NAME `+n.shaderName,m].filter(pv).join(` `),_.length>0&&(_+=` -`)):(g=[vv(n),`#define SHADER_TYPE `+n.shaderType,`#define SHADER_NAME `+n.shaderName,m,n.extensionClipCullDistance?`#define USE_CLIP_DISTANCE`:``,n.batching?`#define USE_BATCHING`:``,n.batchingColor?`#define USE_BATCHING_COLOR`:``,n.instancing?`#define USE_INSTANCING`:``,n.instancingColor?`#define USE_INSTANCING_COLOR`:``,n.instancingMorph?`#define USE_INSTANCING_MORPH`:``,n.useFog&&n.fog?`#define USE_FOG`:``,n.useFog&&n.fogExp2?`#define FOG_EXP2`:``,n.map?`#define USE_MAP`:``,n.envMap?`#define USE_ENVMAP`:``,n.envMap?`#define `+u:``,n.lightMap?`#define USE_LIGHTMAP`:``,n.aoMap?`#define USE_AOMAP`:``,n.bumpMap?`#define USE_BUMPMAP`:``,n.normalMap?`#define USE_NORMALMAP`:``,n.normalMapObjectSpace?`#define USE_NORMALMAP_OBJECTSPACE`:``,n.normalMapTangentSpace?`#define USE_NORMALMAP_TANGENTSPACE`:``,n.displacementMap?`#define USE_DISPLACEMENTMAP`:``,n.emissiveMap?`#define USE_EMISSIVEMAP`:``,n.anisotropy?`#define USE_ANISOTROPY`:``,n.anisotropyMap?`#define USE_ANISOTROPYMAP`:``,n.clearcoatMap?`#define USE_CLEARCOATMAP`:``,n.clearcoatRoughnessMap?`#define USE_CLEARCOAT_ROUGHNESSMAP`:``,n.clearcoatNormalMap?`#define USE_CLEARCOAT_NORMALMAP`:``,n.iridescenceMap?`#define USE_IRIDESCENCEMAP`:``,n.iridescenceThicknessMap?`#define USE_IRIDESCENCE_THICKNESSMAP`:``,n.specularMap?`#define USE_SPECULARMAP`:``,n.specularColorMap?`#define USE_SPECULAR_COLORMAP`:``,n.specularIntensityMap?`#define USE_SPECULAR_INTENSITYMAP`:``,n.roughnessMap?`#define USE_ROUGHNESSMAP`:``,n.metalnessMap?`#define USE_METALNESSMAP`:``,n.alphaMap?`#define USE_ALPHAMAP`:``,n.alphaHash?`#define USE_ALPHAHASH`:``,n.transmission?`#define USE_TRANSMISSION`:``,n.transmissionMap?`#define USE_TRANSMISSIONMAP`:``,n.thicknessMap?`#define USE_THICKNESSMAP`:``,n.sheenColorMap?`#define USE_SHEEN_COLORMAP`:``,n.sheenRoughnessMap?`#define USE_SHEEN_ROUGHNESSMAP`:``,n.mapUv?`#define MAP_UV `+n.mapUv:``,n.alphaMapUv?`#define ALPHAMAP_UV `+n.alphaMapUv:``,n.lightMapUv?`#define LIGHTMAP_UV `+n.lightMapUv:``,n.aoMapUv?`#define AOMAP_UV `+n.aoMapUv:``,n.emissiveMapUv?`#define EMISSIVEMAP_UV `+n.emissiveMapUv:``,n.bumpMapUv?`#define BUMPMAP_UV `+n.bumpMapUv:``,n.normalMapUv?`#define NORMALMAP_UV `+n.normalMapUv:``,n.displacementMapUv?`#define DISPLACEMENTMAP_UV `+n.displacementMapUv:``,n.metalnessMapUv?`#define METALNESSMAP_UV `+n.metalnessMapUv:``,n.roughnessMapUv?`#define ROUGHNESSMAP_UV `+n.roughnessMapUv:``,n.anisotropyMapUv?`#define ANISOTROPYMAP_UV `+n.anisotropyMapUv:``,n.clearcoatMapUv?`#define CLEARCOATMAP_UV `+n.clearcoatMapUv:``,n.clearcoatNormalMapUv?`#define CLEARCOAT_NORMALMAP_UV `+n.clearcoatNormalMapUv:``,n.clearcoatRoughnessMapUv?`#define CLEARCOAT_ROUGHNESSMAP_UV `+n.clearcoatRoughnessMapUv:``,n.iridescenceMapUv?`#define IRIDESCENCEMAP_UV `+n.iridescenceMapUv:``,n.iridescenceThicknessMapUv?`#define IRIDESCENCE_THICKNESSMAP_UV `+n.iridescenceThicknessMapUv:``,n.sheenColorMapUv?`#define SHEEN_COLORMAP_UV `+n.sheenColorMapUv:``,n.sheenRoughnessMapUv?`#define SHEEN_ROUGHNESSMAP_UV `+n.sheenRoughnessMapUv:``,n.specularMapUv?`#define SPECULARMAP_UV `+n.specularMapUv:``,n.specularColorMapUv?`#define SPECULAR_COLORMAP_UV `+n.specularColorMapUv:``,n.specularIntensityMapUv?`#define SPECULAR_INTENSITYMAP_UV `+n.specularIntensityMapUv:``,n.transmissionMapUv?`#define TRANSMISSIONMAP_UV `+n.transmissionMapUv:``,n.thicknessMapUv?`#define THICKNESSMAP_UV `+n.thicknessMapUv:``,n.vertexTangents&&n.flatShading===!1?`#define USE_TANGENT`:``,n.vertexNormals?`#define HAS_NORMAL`:``,n.vertexColors?`#define USE_COLOR`:``,n.vertexAlphas?`#define USE_COLOR_ALPHA`:``,n.vertexUv1s?`#define USE_UV1`:``,n.vertexUv2s?`#define USE_UV2`:``,n.vertexUv3s?`#define USE_UV3`:``,n.pointsUvs?`#define USE_POINTS_UV`:``,n.flatShading?`#define FLAT_SHADED`:``,n.skinning?`#define USE_SKINNING`:``,n.morphTargets?`#define USE_MORPHTARGETS`:``,n.morphNormals&&n.flatShading===!1?`#define USE_MORPHNORMALS`:``,n.morphColors?`#define USE_MORPHCOLORS`:``,n.morphTargetsCount>0?`#define MORPHTARGETS_TEXTURE_STRIDE `+n.morphTextureStride:``,n.morphTargetsCount>0?`#define MORPHTARGETS_COUNT `+n.morphTargetsCount:``,n.doubleSided?`#define DOUBLE_SIDED`:``,n.flipSided?`#define FLIP_SIDED`:``,n.shadowMapEnabled?`#define USE_SHADOWMAP`:``,n.shadowMapEnabled?`#define `+c:``,n.sizeAttenuation?`#define USE_SIZEATTENUATION`:``,n.numLightProbes>0?`#define USE_LIGHT_PROBES`:``,n.logarithmicDepthBuffer?`#define USE_LOGARITHMIC_DEPTH_BUFFER`:``,n.reversedDepthBuffer?`#define USE_REVERSED_DEPTH_BUFFER`:``,`uniform mat4 modelMatrix;`,`uniform mat4 modelViewMatrix;`,`uniform mat4 projectionMatrix;`,`uniform mat4 viewMatrix;`,`uniform mat3 normalMatrix;`,`uniform vec3 cameraPosition;`,`uniform bool isOrthographic;`,`#ifdef USE_INSTANCING`,` attribute mat4 instanceMatrix;`,`#endif`,`#ifdef USE_INSTANCING_COLOR`,` attribute vec3 instanceColor;`,`#endif`,`#ifdef USE_INSTANCING_MORPH`,` uniform sampler2D morphTexture;`,`#endif`,`attribute vec3 position;`,`attribute vec3 normal;`,`attribute vec2 uv;`,`#ifdef USE_UV1`,` attribute vec2 uv1;`,`#endif`,`#ifdef USE_UV2`,` attribute vec2 uv2;`,`#endif`,`#ifdef USE_UV3`,` attribute vec2 uv3;`,`#endif`,`#ifdef USE_TANGENT`,` attribute vec4 tangent;`,`#endif`,`#if defined( USE_COLOR_ALPHA )`,` attribute vec4 color;`,`#elif defined( USE_COLOR )`,` attribute vec3 color;`,`#endif`,`#ifdef USE_SKINNING`,` attribute vec4 skinIndex;`,` attribute vec4 skinWeight;`,`#endif`,` -`].filter(cv).join(` -`),_=[vv(n),`#define SHADER_TYPE `+n.shaderType,`#define SHADER_NAME `+n.shaderName,m,n.useFog&&n.fog?`#define USE_FOG`:``,n.useFog&&n.fogExp2?`#define FOG_EXP2`:``,n.alphaToCoverage?`#define ALPHA_TO_COVERAGE`:``,n.map?`#define USE_MAP`:``,n.matcap?`#define USE_MATCAP`:``,n.envMap?`#define USE_ENVMAP`:``,n.envMap?`#define `+l:``,n.envMap?`#define `+u:``,n.envMap?`#define `+d:``,f?`#define CUBEUV_TEXEL_WIDTH `+f.texelWidth:``,f?`#define CUBEUV_TEXEL_HEIGHT `+f.texelHeight:``,f?`#define CUBEUV_MAX_MIP `+f.maxMip+`.0`:``,n.lightMap?`#define USE_LIGHTMAP`:``,n.aoMap?`#define USE_AOMAP`:``,n.bumpMap?`#define USE_BUMPMAP`:``,n.normalMap?`#define USE_NORMALMAP`:``,n.normalMapObjectSpace?`#define USE_NORMALMAP_OBJECTSPACE`:``,n.normalMapTangentSpace?`#define USE_NORMALMAP_TANGENTSPACE`:``,n.packedNormalMap?`#define USE_PACKED_NORMALMAP`:``,n.emissiveMap?`#define USE_EMISSIVEMAP`:``,n.anisotropy?`#define USE_ANISOTROPY`:``,n.anisotropyMap?`#define USE_ANISOTROPYMAP`:``,n.clearcoat?`#define USE_CLEARCOAT`:``,n.clearcoatMap?`#define USE_CLEARCOATMAP`:``,n.clearcoatRoughnessMap?`#define USE_CLEARCOAT_ROUGHNESSMAP`:``,n.clearcoatNormalMap?`#define USE_CLEARCOAT_NORMALMAP`:``,n.dispersion?`#define USE_DISPERSION`:``,n.iridescence?`#define USE_IRIDESCENCE`:``,n.iridescenceMap?`#define USE_IRIDESCENCEMAP`:``,n.iridescenceThicknessMap?`#define USE_IRIDESCENCE_THICKNESSMAP`:``,n.specularMap?`#define USE_SPECULARMAP`:``,n.specularColorMap?`#define USE_SPECULAR_COLORMAP`:``,n.specularIntensityMap?`#define USE_SPECULAR_INTENSITYMAP`:``,n.roughnessMap?`#define USE_ROUGHNESSMAP`:``,n.metalnessMap?`#define USE_METALNESSMAP`:``,n.alphaMap?`#define USE_ALPHAMAP`:``,n.alphaTest?`#define USE_ALPHATEST`:``,n.alphaHash?`#define USE_ALPHAHASH`:``,n.sheen?`#define USE_SHEEN`:``,n.sheenColorMap?`#define USE_SHEEN_COLORMAP`:``,n.sheenRoughnessMap?`#define USE_SHEEN_ROUGHNESSMAP`:``,n.transmission?`#define USE_TRANSMISSION`:``,n.transmissionMap?`#define USE_TRANSMISSIONMAP`:``,n.thicknessMap?`#define USE_THICKNESSMAP`:``,n.vertexTangents&&n.flatShading===!1?`#define USE_TANGENT`:``,n.vertexColors||n.instancingColor?`#define USE_COLOR`:``,n.vertexAlphas||n.batchingColor?`#define USE_COLOR_ALPHA`:``,n.vertexUv1s?`#define USE_UV1`:``,n.vertexUv2s?`#define USE_UV2`:``,n.vertexUv3s?`#define USE_UV3`:``,n.pointsUvs?`#define USE_POINTS_UV`:``,n.gradientMap?`#define USE_GRADIENTMAP`:``,n.flatShading?`#define FLAT_SHADED`:``,n.doubleSided?`#define DOUBLE_SIDED`:``,n.flipSided?`#define FLIP_SIDED`:``,n.shadowMapEnabled?`#define USE_SHADOWMAP`:``,n.shadowMapEnabled?`#define `+c:``,n.premultipliedAlpha?`#define PREMULTIPLIED_ALPHA`:``,n.numLightProbes>0?`#define USE_LIGHT_PROBES`:``,n.numLightProbeGrids>0?`#define USE_LIGHT_PROBES_GRID`:``,n.decodeVideoTexture?`#define DECODE_VIDEO_TEXTURE`:``,n.decodeVideoTextureEmissive?`#define DECODE_VIDEO_TEXTURE_EMISSIVE`:``,n.logarithmicDepthBuffer?`#define USE_LOGARITHMIC_DEPTH_BUFFER`:``,n.reversedDepthBuffer?`#define USE_REVERSED_DEPTH_BUFFER`:``,`uniform mat4 viewMatrix;`,`uniform vec3 cameraPosition;`,`uniform bool isOrthographic;`,n.toneMapping===0?``:`#define TONE_MAPPING`,n.toneMapping===0?``:eg.tonemapping_pars_fragment,n.toneMapping===0?``:nv(`toneMapping`,n.toneMapping),n.dithering?`#define DITHERING`:``,n.opaque?`#define OPAQUE`:``,eg.colorspace_pars_fragment,ev(`linearToOutputTexel`,n.outputColorSpace),iv(),n.useDepthPacking?`#define DEPTH_PACKING `+n.depthPacking:``,` -`].filter(cv).join(` -`)),o=fv(o),o=lv(o,n),o=uv(o,n),s=fv(s),s=lv(s,n),s=uv(s,n),o=gv(o),s=gv(s),n.isRawShaderMaterial!==!0&&(v=`#version 300 es +`)):(g=[Cv(n),`#define SHADER_TYPE `+n.shaderType,`#define SHADER_NAME `+n.shaderName,m,n.extensionClipCullDistance?`#define USE_CLIP_DISTANCE`:``,n.batching?`#define USE_BATCHING`:``,n.batchingColor?`#define USE_BATCHING_COLOR`:``,n.instancing?`#define USE_INSTANCING`:``,n.instancingColor?`#define USE_INSTANCING_COLOR`:``,n.instancingMorph?`#define USE_INSTANCING_MORPH`:``,n.useFog&&n.fog?`#define USE_FOG`:``,n.useFog&&n.fogExp2?`#define FOG_EXP2`:``,n.map?`#define USE_MAP`:``,n.envMap?`#define USE_ENVMAP`:``,n.envMap?`#define `+u:``,n.lightMap?`#define USE_LIGHTMAP`:``,n.aoMap?`#define USE_AOMAP`:``,n.bumpMap?`#define USE_BUMPMAP`:``,n.normalMap?`#define USE_NORMALMAP`:``,n.normalMapObjectSpace?`#define USE_NORMALMAP_OBJECTSPACE`:``,n.normalMapTangentSpace?`#define USE_NORMALMAP_TANGENTSPACE`:``,n.displacementMap?`#define USE_DISPLACEMENTMAP`:``,n.emissiveMap?`#define USE_EMISSIVEMAP`:``,n.anisotropy?`#define USE_ANISOTROPY`:``,n.anisotropyMap?`#define USE_ANISOTROPYMAP`:``,n.clearcoatMap?`#define USE_CLEARCOATMAP`:``,n.clearcoatRoughnessMap?`#define USE_CLEARCOAT_ROUGHNESSMAP`:``,n.clearcoatNormalMap?`#define USE_CLEARCOAT_NORMALMAP`:``,n.iridescenceMap?`#define USE_IRIDESCENCEMAP`:``,n.iridescenceThicknessMap?`#define USE_IRIDESCENCE_THICKNESSMAP`:``,n.specularMap?`#define USE_SPECULARMAP`:``,n.specularColorMap?`#define USE_SPECULAR_COLORMAP`:``,n.specularIntensityMap?`#define USE_SPECULAR_INTENSITYMAP`:``,n.roughnessMap?`#define USE_ROUGHNESSMAP`:``,n.metalnessMap?`#define USE_METALNESSMAP`:``,n.alphaMap?`#define USE_ALPHAMAP`:``,n.alphaHash?`#define USE_ALPHAHASH`:``,n.transmission?`#define USE_TRANSMISSION`:``,n.transmissionMap?`#define USE_TRANSMISSIONMAP`:``,n.thicknessMap?`#define USE_THICKNESSMAP`:``,n.sheenColorMap?`#define USE_SHEEN_COLORMAP`:``,n.sheenRoughnessMap?`#define USE_SHEEN_ROUGHNESSMAP`:``,n.mapUv?`#define MAP_UV `+n.mapUv:``,n.alphaMapUv?`#define ALPHAMAP_UV `+n.alphaMapUv:``,n.lightMapUv?`#define LIGHTMAP_UV `+n.lightMapUv:``,n.aoMapUv?`#define AOMAP_UV `+n.aoMapUv:``,n.emissiveMapUv?`#define EMISSIVEMAP_UV `+n.emissiveMapUv:``,n.bumpMapUv?`#define BUMPMAP_UV `+n.bumpMapUv:``,n.normalMapUv?`#define NORMALMAP_UV `+n.normalMapUv:``,n.displacementMapUv?`#define DISPLACEMENTMAP_UV `+n.displacementMapUv:``,n.metalnessMapUv?`#define METALNESSMAP_UV `+n.metalnessMapUv:``,n.roughnessMapUv?`#define ROUGHNESSMAP_UV `+n.roughnessMapUv:``,n.anisotropyMapUv?`#define ANISOTROPYMAP_UV `+n.anisotropyMapUv:``,n.clearcoatMapUv?`#define CLEARCOATMAP_UV `+n.clearcoatMapUv:``,n.clearcoatNormalMapUv?`#define CLEARCOAT_NORMALMAP_UV `+n.clearcoatNormalMapUv:``,n.clearcoatRoughnessMapUv?`#define CLEARCOAT_ROUGHNESSMAP_UV `+n.clearcoatRoughnessMapUv:``,n.iridescenceMapUv?`#define IRIDESCENCEMAP_UV `+n.iridescenceMapUv:``,n.iridescenceThicknessMapUv?`#define IRIDESCENCE_THICKNESSMAP_UV `+n.iridescenceThicknessMapUv:``,n.sheenColorMapUv?`#define SHEEN_COLORMAP_UV `+n.sheenColorMapUv:``,n.sheenRoughnessMapUv?`#define SHEEN_ROUGHNESSMAP_UV `+n.sheenRoughnessMapUv:``,n.specularMapUv?`#define SPECULARMAP_UV `+n.specularMapUv:``,n.specularColorMapUv?`#define SPECULAR_COLORMAP_UV `+n.specularColorMapUv:``,n.specularIntensityMapUv?`#define SPECULAR_INTENSITYMAP_UV `+n.specularIntensityMapUv:``,n.transmissionMapUv?`#define TRANSMISSIONMAP_UV `+n.transmissionMapUv:``,n.thicknessMapUv?`#define THICKNESSMAP_UV `+n.thicknessMapUv:``,n.vertexTangents&&n.flatShading===!1?`#define USE_TANGENT`:``,n.vertexNormals?`#define HAS_NORMAL`:``,n.vertexColors?`#define USE_COLOR`:``,n.vertexAlphas?`#define USE_COLOR_ALPHA`:``,n.vertexUv1s?`#define USE_UV1`:``,n.vertexUv2s?`#define USE_UV2`:``,n.vertexUv3s?`#define USE_UV3`:``,n.pointsUvs?`#define USE_POINTS_UV`:``,n.flatShading?`#define FLAT_SHADED`:``,n.skinning?`#define USE_SKINNING`:``,n.morphTargets?`#define USE_MORPHTARGETS`:``,n.morphNormals&&n.flatShading===!1?`#define USE_MORPHNORMALS`:``,n.morphColors?`#define USE_MORPHCOLORS`:``,n.morphTargetsCount>0?`#define MORPHTARGETS_TEXTURE_STRIDE `+n.morphTextureStride:``,n.morphTargetsCount>0?`#define MORPHTARGETS_COUNT `+n.morphTargetsCount:``,n.doubleSided?`#define DOUBLE_SIDED`:``,n.flipSided?`#define FLIP_SIDED`:``,n.shadowMapEnabled?`#define USE_SHADOWMAP`:``,n.shadowMapEnabled?`#define `+c:``,n.sizeAttenuation?`#define USE_SIZEATTENUATION`:``,n.numLightProbes>0?`#define USE_LIGHT_PROBES`:``,n.logarithmicDepthBuffer?`#define USE_LOGARITHMIC_DEPTH_BUFFER`:``,n.reversedDepthBuffer?`#define USE_REVERSED_DEPTH_BUFFER`:``,`uniform mat4 modelMatrix;`,`uniform mat4 modelViewMatrix;`,`uniform mat4 projectionMatrix;`,`uniform mat4 viewMatrix;`,`uniform mat3 normalMatrix;`,`uniform vec3 cameraPosition;`,`uniform bool isOrthographic;`,`#ifdef USE_INSTANCING`,` attribute mat4 instanceMatrix;`,`#endif`,`#ifdef USE_INSTANCING_COLOR`,` attribute vec3 instanceColor;`,`#endif`,`#ifdef USE_INSTANCING_MORPH`,` uniform sampler2D morphTexture;`,`#endif`,`attribute vec3 position;`,`attribute vec3 normal;`,`attribute vec2 uv;`,`#ifdef USE_UV1`,` attribute vec2 uv1;`,`#endif`,`#ifdef USE_UV2`,` attribute vec2 uv2;`,`#endif`,`#ifdef USE_UV3`,` attribute vec2 uv3;`,`#endif`,`#ifdef USE_TANGENT`,` attribute vec4 tangent;`,`#endif`,`#if defined( USE_COLOR_ALPHA )`,` attribute vec4 color;`,`#elif defined( USE_COLOR )`,` attribute vec3 color;`,`#endif`,`#ifdef USE_SKINNING`,` attribute vec4 skinIndex;`,` attribute vec4 skinWeight;`,`#endif`,` +`].filter(pv).join(` +`),_=[Cv(n),`#define SHADER_TYPE `+n.shaderType,`#define SHADER_NAME `+n.shaderName,m,n.useFog&&n.fog?`#define USE_FOG`:``,n.useFog&&n.fogExp2?`#define FOG_EXP2`:``,n.alphaToCoverage?`#define ALPHA_TO_COVERAGE`:``,n.map?`#define USE_MAP`:``,n.matcap?`#define USE_MATCAP`:``,n.envMap?`#define USE_ENVMAP`:``,n.envMap?`#define `+l:``,n.envMap?`#define `+u:``,n.envMap?`#define `+d:``,f?`#define CUBEUV_TEXEL_WIDTH `+f.texelWidth:``,f?`#define CUBEUV_TEXEL_HEIGHT `+f.texelHeight:``,f?`#define CUBEUV_MAX_MIP `+f.maxMip+`.0`:``,n.lightMap?`#define USE_LIGHTMAP`:``,n.aoMap?`#define USE_AOMAP`:``,n.bumpMap?`#define USE_BUMPMAP`:``,n.normalMap?`#define USE_NORMALMAP`:``,n.normalMapObjectSpace?`#define USE_NORMALMAP_OBJECTSPACE`:``,n.normalMapTangentSpace?`#define USE_NORMALMAP_TANGENTSPACE`:``,n.packedNormalMap?`#define USE_PACKED_NORMALMAP`:``,n.emissiveMap?`#define USE_EMISSIVEMAP`:``,n.anisotropy?`#define USE_ANISOTROPY`:``,n.anisotropyMap?`#define USE_ANISOTROPYMAP`:``,n.clearcoat?`#define USE_CLEARCOAT`:``,n.clearcoatMap?`#define USE_CLEARCOATMAP`:``,n.clearcoatRoughnessMap?`#define USE_CLEARCOAT_ROUGHNESSMAP`:``,n.clearcoatNormalMap?`#define USE_CLEARCOAT_NORMALMAP`:``,n.dispersion?`#define USE_DISPERSION`:``,n.iridescence?`#define USE_IRIDESCENCE`:``,n.iridescenceMap?`#define USE_IRIDESCENCEMAP`:``,n.iridescenceThicknessMap?`#define USE_IRIDESCENCE_THICKNESSMAP`:``,n.specularMap?`#define USE_SPECULARMAP`:``,n.specularColorMap?`#define USE_SPECULAR_COLORMAP`:``,n.specularIntensityMap?`#define USE_SPECULAR_INTENSITYMAP`:``,n.roughnessMap?`#define USE_ROUGHNESSMAP`:``,n.metalnessMap?`#define USE_METALNESSMAP`:``,n.alphaMap?`#define USE_ALPHAMAP`:``,n.alphaTest?`#define USE_ALPHATEST`:``,n.alphaHash?`#define USE_ALPHAHASH`:``,n.sheen?`#define USE_SHEEN`:``,n.sheenColorMap?`#define USE_SHEEN_COLORMAP`:``,n.sheenRoughnessMap?`#define USE_SHEEN_ROUGHNESSMAP`:``,n.transmission?`#define USE_TRANSMISSION`:``,n.transmissionMap?`#define USE_TRANSMISSIONMAP`:``,n.thicknessMap?`#define USE_THICKNESSMAP`:``,n.vertexTangents&&n.flatShading===!1?`#define USE_TANGENT`:``,n.vertexColors||n.instancingColor?`#define USE_COLOR`:``,n.vertexAlphas||n.batchingColor?`#define USE_COLOR_ALPHA`:``,n.vertexUv1s?`#define USE_UV1`:``,n.vertexUv2s?`#define USE_UV2`:``,n.vertexUv3s?`#define USE_UV3`:``,n.pointsUvs?`#define USE_POINTS_UV`:``,n.gradientMap?`#define USE_GRADIENTMAP`:``,n.flatShading?`#define FLAT_SHADED`:``,n.doubleSided?`#define DOUBLE_SIDED`:``,n.flipSided?`#define FLIP_SIDED`:``,n.shadowMapEnabled?`#define USE_SHADOWMAP`:``,n.shadowMapEnabled?`#define `+c:``,n.premultipliedAlpha?`#define PREMULTIPLIED_ALPHA`:``,n.numLightProbes>0?`#define USE_LIGHT_PROBES`:``,n.numLightProbeGrids>0?`#define USE_LIGHT_PROBES_GRID`:``,n.decodeVideoTexture?`#define DECODE_VIDEO_TEXTURE`:``,n.decodeVideoTextureEmissive?`#define DECODE_VIDEO_TEXTURE_EMISSIVE`:``,n.logarithmicDepthBuffer?`#define USE_LOGARITHMIC_DEPTH_BUFFER`:``,n.reversedDepthBuffer?`#define USE_REVERSED_DEPTH_BUFFER`:``,`uniform mat4 viewMatrix;`,`uniform vec3 cameraPosition;`,`uniform bool isOrthographic;`,n.toneMapping===0?``:`#define TONE_MAPPING`,n.toneMapping===0?``:ag.tonemapping_pars_fragment,n.toneMapping===0?``:sv(`toneMapping`,n.toneMapping),n.dithering?`#define DITHERING`:``,n.opaque?`#define OPAQUE`:``,ag.colorspace_pars_fragment,av(`linearToOutputTexel`,n.outputColorSpace),lv(),n.useDepthPacking?`#define DEPTH_PACKING `+n.depthPacking:``,` +`].filter(pv).join(` +`)),o=_v(o),o=mv(o,n),o=hv(o,n),s=_v(s),s=mv(s,n),s=hv(s,n),o=xv(o),s=xv(s),n.isRawShaderMaterial!==!0&&(v=`#version 300 es `,g=[p,`#define attribute in`,`#define varying out`,`#define texture2D texture`].join(` `)+` `+g,_=[`#define varying in`,n.glslVersion===`300 es`?``:`layout(location = 0) out highp vec4 pc_fragColor;`,n.glslVersion===`300 es`?``:`#define gl_FragColor pc_fragColor`,`#define gl_FragDepthEXT gl_FragDepth`,`#define texture2D texture`,`#define textureCube texture`,`#define texture2DProj textureProj`,`#define texture2DLodEXT textureLod`,`#define texture2DProjLodEXT textureProjLod`,`#define textureCubeLodEXT textureLod`,`#define texture2DGradEXT textureGrad`,`#define texture2DProjGradEXT textureProjGrad`,`#define textureCubeGradEXT textureGrad`].join(` `)+` -`+_);let y=v+g+o,b=v+_+s,x=q_(i,i.VERTEX_SHADER,y),S=q_(i,i.FRAGMENT_SHADER,b);i.attachShader(h,x),i.attachShader(h,S),n.index0AttributeName===void 0?n.hasPositionAttribute===!0&&i.bindAttribLocation(h,0,`position`):i.bindAttribLocation(h,0,n.index0AttributeName),i.linkProgram(h);function C(t){if(e.debug.checkShaderErrors){let n=i.getProgramInfoLog(h)||``,r=i.getShaderInfoLog(x)||``,a=i.getShaderInfoLog(S)||``,o=n.trim(),s=r.trim(),c=a.trim(),l=!0,u=!0;if(i.getProgramParameter(h,i.LINK_STATUS)===!1)if(l=!1,typeof e.debug.onShaderError==`function`)e.debug.onShaderError(i,h,x,S);else{let e=$_(i,x,`vertex`),n=$_(i,S,`fragment`);_l(`WebGLProgram: Shader Error `+i.getError()+` - VALIDATE_STATUS `+i.getProgramParameter(h,i.VALIDATE_STATUS)+` +`+_);let y=v+g+o,b=v+_+s,x=Q_(i,i.VERTEX_SHADER,y),S=Q_(i,i.FRAGMENT_SHADER,b);i.attachShader(h,x),i.attachShader(h,S),n.index0AttributeName===void 0?n.hasPositionAttribute===!0&&i.bindAttribLocation(h,0,`position`):i.bindAttribLocation(h,0,n.index0AttributeName),i.linkProgram(h);function C(t){if(e.debug.checkShaderErrors){let n=i.getProgramInfoLog(h)||``,r=i.getShaderInfoLog(x)||``,a=i.getShaderInfoLog(S)||``,o=n.trim(),s=r.trim(),c=a.trim(),l=!0,u=!0;if(i.getProgramParameter(h,i.LINK_STATUS)===!1)if(l=!1,typeof e.debug.onShaderError==`function`)e.debug.onShaderError(i,h,x,S);else{let e=iv(i,x,`vertex`),n=iv(i,S,`fragment`);vl(`WebGLProgram: Shader Error `+i.getError()+` - VALIDATE_STATUS `+i.getProgramParameter(h,i.VALIDATE_STATUS)+` Material Name: `+t.name+` Material Type: `+t.type+` Program Info Log: `+o+` `+e+` -`+n)}else o===``?(s===``||c===``)&&(u=!1):Y(`WebGLProgram: Program Info Log:`,o);u&&(t.diagnostics={runnable:l,programLog:o,vertexShader:{log:s,prefix:g},fragmentShader:{log:c,prefix:_}})}i.deleteShader(x),i.deleteShader(S),w=new K_(i,h),T=sv(i,h)}let w;this.getUniforms=function(){return w===void 0&&C(this),w};let T;this.getAttributes=function(){return T===void 0&&C(this),T};let E=n.rendererExtensionParallelShaderCompile===!1;return this.isReady=function(){return E===!1&&(E=i.getProgramParameter(h,J_)),E},this.destroy=function(){r.releaseStatesOfProgram(this),i.deleteProgram(h),this.program=void 0},this.type=n.shaderType,this.name=n.shaderName,this.id=Y_++,this.cacheKey=t,this.usedTimes=1,this.program=h,this.vertexShader=x,this.fragmentShader=S,this}var kv=0,Av=class{constructor(){this.shaderCache=new Map,this.materialCache=new Map}update(e,t,n){let r=this._getShaderCacheForMaterial(e);return r.has(t)===!1&&(r.add(t),t.usedTimes++),r.has(n)===!1&&(r.add(n),n.usedTimes++),this}remove(e){let t=this.materialCache.get(e);for(let e of t)e.usedTimes--,e.usedTimes===0&&this.shaderCache.delete(e.code);return this.materialCache.delete(e),this}getVertexShaderStage(e){return this._getShaderStage(e.vertexShader)}getFragmentShaderStage(e){return this._getShaderStage(e.fragmentShader)}dispose(){this.shaderCache.clear(),this.materialCache.clear()}_getShaderCacheForMaterial(e){let t=this.materialCache,n=t.get(e);return n===void 0&&(n=new Set,t.set(e,n)),n}_getShaderStage(e){let t=this.shaderCache,n=t.get(e);return n===void 0&&(n=new jv(e),t.set(e,n)),n}},jv=class{constructor(e){this.id=kv++,this.code=e,this.usedTimes=0}};function Mv(e){return e===1030||e===37490||e===36285}function Nv(e,t,n,r,i,a){let o=new Au,s=new Av,c=new Set,l=[],u=new Map,d=r.logarithmicDepthBuffer,f=r.precision,p={MeshDepthMaterial:`depth`,MeshDistanceMaterial:`distance`,MeshNormalMaterial:`normal`,MeshBasicMaterial:`basic`,MeshLambertMaterial:`lambert`,MeshPhongMaterial:`phong`,MeshToonMaterial:`toon`,MeshStandardMaterial:`physical`,MeshPhysicalMaterial:`physical`,MeshMatcapMaterial:`matcap`,LineBasicMaterial:`basic`,LineDashedMaterial:`dashed`,PointsMaterial:`points`,ShadowMaterial:`shadow`,SpriteMaterial:`sprite`};function m(e){return c.add(e),e===0?`uv`:`uv${e}`}function h(i,o,l,u,h,g){let _=u.fog,v=h.geometry,y=i.isMeshStandardMaterial||i.isMeshLambertMaterial||i.isMeshPhongMaterial?u.environment:null,b=i.isMeshStandardMaterial||i.isMeshLambertMaterial&&!i.envMap||i.isMeshPhongMaterial&&!i.envMap,x=t.get(i.envMap||y,b),S=x&&x.mapping===306?x.image.height:null,C=p[i.type];i.precision!==null&&(f=r.getMaxPrecision(i.precision),f!==i.precision&&Y(`WebGLProgram.getParameters:`,i.precision,`not supported, using`,f,`instead.`));let w=v.morphAttributes.position||v.morphAttributes.normal||v.morphAttributes.color,T=w===void 0?0:w.length,E=0;v.morphAttributes.position!==void 0&&(E=1),v.morphAttributes.normal!==void 0&&(E=2),v.morphAttributes.color!==void 0&&(E=3);let D,O,ee,k;if(C){let e=tg[C];D=e.vertexShader,O=e.fragmentShader}else{D=i.vertexShader,O=i.fragmentShader;let e=s.getVertexShaderStage(i),t=s.getFragmentShaderStage(i);s.update(i,e,t),ee=e.id,k=t.id}let te=e.getRenderTarget(),ne=e.state.buffers.depth.getReversed(),re=h.isInstancedMesh===!0,ie=h.isBatchedMesh===!0,ae=!!i.map,oe=!!i.matcap,se=!!x,A=!!i.aoMap,ce=!!i.lightMap,le=!!i.bumpMap&&i.wireframe===!1,ue=!!i.normalMap,de=!!i.displacementMap,j=!!i.emissiveMap,fe=!!i.metalnessMap,pe=!!i.roughnessMap,me=i.anisotropy>0,he=i.clearcoat>0,ge=i.dispersion>0,_e=i.iridescence>0,ve=i.sheen>0,ye=i.transmission>0,be=me&&!!i.anisotropyMap,xe=he&&!!i.clearcoatMap,Se=he&&!!i.clearcoatNormalMap,Ce=he&&!!i.clearcoatRoughnessMap,we=_e&&!!i.iridescenceMap,M=_e&&!!i.iridescenceThicknessMap,N=ve&&!!i.sheenColorMap,P=ve&&!!i.sheenRoughnessMap,Te=!!i.specularMap,Ee=!!i.specularColorMap,F=!!i.specularIntensityMap,De=ye&&!!i.transmissionMap,I=ye&&!!i.thicknessMap,Oe=!!i.gradientMap,ke=!!i.alphaMap,Ae=i.alphaTest>0,L=!!i.alphaHash,je=!!i.extensions,R=0;i.toneMapped&&(te===null||te.isXRRenderTarget===!0)&&(R=e.toneMapping);let Me={shaderID:C,shaderType:i.type,shaderName:i.name,vertexShader:D,fragmentShader:O,defines:i.defines,customVertexShaderID:ee,customFragmentShaderID:k,isRawShaderMaterial:i.isRawShaderMaterial===!0,glslVersion:i.glslVersion,precision:f,batching:ie,batchingColor:ie&&h._colorsTexture!==null,instancing:re,instancingColor:re&&h.instanceColor!==null,instancingMorph:re&&h.morphTexture!==null,outputColorSpace:te===null?e.outputColorSpace:te.isXRRenderTarget===!0?te.texture.colorSpace:ru.workingColorSpace,alphaToCoverage:!!i.alphaToCoverage,map:ae,matcap:oe,envMap:se,envMapMode:se&&x.mapping,envMapCubeUVHeight:S,aoMap:A,lightMap:ce,bumpMap:le,normalMap:ue,displacementMap:de,emissiveMap:j,normalMapObjectSpace:ue&&i.normalMapType===1,normalMapTangentSpace:ue&&i.normalMapType===0,packedNormalMap:ue&&i.normalMapType===0&&Mv(i.normalMap.format),metalnessMap:fe,roughnessMap:pe,anisotropy:me,anisotropyMap:be,clearcoat:he,clearcoatMap:xe,clearcoatNormalMap:Se,clearcoatRoughnessMap:Ce,dispersion:ge,iridescence:_e,iridescenceMap:we,iridescenceThicknessMap:M,sheen:ve,sheenColorMap:N,sheenRoughnessMap:P,specularMap:Te,specularColorMap:Ee,specularIntensityMap:F,transmission:ye,transmissionMap:De,thicknessMap:I,gradientMap:Oe,opaque:i.transparent===!1&&i.blending===1&&i.alphaToCoverage===!1,alphaMap:ke,alphaTest:Ae,alphaHash:L,combine:i.combine,mapUv:ae&&m(i.map.channel),aoMapUv:A&&m(i.aoMap.channel),lightMapUv:ce&&m(i.lightMap.channel),bumpMapUv:le&&m(i.bumpMap.channel),normalMapUv:ue&&m(i.normalMap.channel),displacementMapUv:de&&m(i.displacementMap.channel),emissiveMapUv:j&&m(i.emissiveMap.channel),metalnessMapUv:fe&&m(i.metalnessMap.channel),roughnessMapUv:pe&&m(i.roughnessMap.channel),anisotropyMapUv:be&&m(i.anisotropyMap.channel),clearcoatMapUv:xe&&m(i.clearcoatMap.channel),clearcoatNormalMapUv:Se&&m(i.clearcoatNormalMap.channel),clearcoatRoughnessMapUv:Ce&&m(i.clearcoatRoughnessMap.channel),iridescenceMapUv:we&&m(i.iridescenceMap.channel),iridescenceThicknessMapUv:M&&m(i.iridescenceThicknessMap.channel),sheenColorMapUv:N&&m(i.sheenColorMap.channel),sheenRoughnessMapUv:P&&m(i.sheenRoughnessMap.channel),specularMapUv:Te&&m(i.specularMap.channel),specularColorMapUv:Ee&&m(i.specularColorMap.channel),specularIntensityMapUv:F&&m(i.specularIntensityMap.channel),transmissionMapUv:De&&m(i.transmissionMap.channel),thicknessMapUv:I&&m(i.thicknessMap.channel),alphaMapUv:ke&&m(i.alphaMap.channel),vertexTangents:!!v.attributes.tangent&&(ue||me),vertexNormals:!!v.attributes.normal,vertexColors:i.vertexColors,vertexAlphas:i.vertexColors===!0&&!!v.attributes.color&&v.attributes.color.itemSize===4,pointsUvs:h.isPoints===!0&&!!v.attributes.uv&&(ae||ke),fog:!!_,useFog:i.fog===!0,fogExp2:!!_&&_.isFogExp2,flatShading:i.wireframe===!1&&(i.flatShading===!0||v.attributes.normal===void 0&&ue===!1&&(i.isMeshLambertMaterial||i.isMeshPhongMaterial||i.isMeshStandardMaterial||i.isMeshPhysicalMaterial)),sizeAttenuation:i.sizeAttenuation===!0,logarithmicDepthBuffer:d,reversedDepthBuffer:ne,skinning:h.isSkinnedMesh===!0,hasPositionAttribute:v.attributes.position!==void 0,morphTargets:v.morphAttributes.position!==void 0,morphNormals:v.morphAttributes.normal!==void 0,morphColors:v.morphAttributes.color!==void 0,morphTargetsCount:T,morphTextureStride:E,numDirLights:o.directional.length,numPointLights:o.point.length,numSpotLights:o.spot.length,numSpotLightMaps:o.spotLightMap.length,numRectAreaLights:o.rectArea.length,numHemiLights:o.hemi.length,numDirLightShadows:o.directionalShadowMap.length,numPointLightShadows:o.pointShadowMap.length,numSpotLightShadows:o.spotShadowMap.length,numSpotLightShadowsWithMaps:o.numSpotLightShadowsWithMaps,numLightProbes:o.numLightProbes,numLightProbeGrids:g.length,numClippingPlanes:a.numPlanes,numClipIntersection:a.numIntersection,dithering:i.dithering,shadowMapEnabled:e.shadowMap.enabled&&l.length>0,shadowMapType:e.shadowMap.type,toneMapping:R,decodeVideoTexture:ae&&i.map.isVideoTexture===!0&&ru.getTransfer(i.map.colorSpace)===`srgb`,decodeVideoTextureEmissive:j&&i.emissiveMap.isVideoTexture===!0&&ru.getTransfer(i.emissiveMap.colorSpace)===`srgb`,premultipliedAlpha:i.premultipliedAlpha,doubleSided:i.side===2,flipSided:i.side===1,useDepthPacking:i.depthPacking>=0,depthPacking:i.depthPacking||0,index0AttributeName:i.index0AttributeName,extensionClipCullDistance:je&&i.extensions.clipCullDistance===!0&&n.has(`WEBGL_clip_cull_distance`),extensionMultiDraw:(je&&i.extensions.multiDraw===!0||ie)&&n.has(`WEBGL_multi_draw`),rendererExtensionParallelShaderCompile:n.has(`KHR_parallel_shader_compile`),customProgramCacheKey:i.customProgramCacheKey()};return Me.vertexUv1s=c.has(1),Me.vertexUv2s=c.has(2),Me.vertexUv3s=c.has(3),c.clear(),Me}function g(t){let n=[];if(t.shaderID?n.push(t.shaderID):(n.push(t.customVertexShaderID),n.push(t.customFragmentShaderID)),t.defines!==void 0)for(let e in t.defines)n.push(e),n.push(t.defines[e]);return t.isRawShaderMaterial===!1&&(_(n,t),v(n,t),n.push(e.outputColorSpace)),n.push(t.customProgramCacheKey),n.join()}function _(e,t){e.push(t.precision),e.push(t.outputColorSpace),e.push(t.envMapMode),e.push(t.envMapCubeUVHeight),e.push(t.mapUv),e.push(t.alphaMapUv),e.push(t.lightMapUv),e.push(t.aoMapUv),e.push(t.bumpMapUv),e.push(t.normalMapUv),e.push(t.displacementMapUv),e.push(t.emissiveMapUv),e.push(t.metalnessMapUv),e.push(t.roughnessMapUv),e.push(t.anisotropyMapUv),e.push(t.clearcoatMapUv),e.push(t.clearcoatNormalMapUv),e.push(t.clearcoatRoughnessMapUv),e.push(t.iridescenceMapUv),e.push(t.iridescenceThicknessMapUv),e.push(t.sheenColorMapUv),e.push(t.sheenRoughnessMapUv),e.push(t.specularMapUv),e.push(t.specularColorMapUv),e.push(t.specularIntensityMapUv),e.push(t.transmissionMapUv),e.push(t.thicknessMapUv),e.push(t.combine),e.push(t.fogExp2),e.push(t.sizeAttenuation),e.push(t.morphTargetsCount),e.push(t.morphAttributeCount),e.push(t.numDirLights),e.push(t.numPointLights),e.push(t.numSpotLights),e.push(t.numSpotLightMaps),e.push(t.numHemiLights),e.push(t.numRectAreaLights),e.push(t.numDirLightShadows),e.push(t.numPointLightShadows),e.push(t.numSpotLightShadows),e.push(t.numSpotLightShadowsWithMaps),e.push(t.numLightProbes),e.push(t.shadowMapType),e.push(t.toneMapping),e.push(t.numClippingPlanes),e.push(t.numClipIntersection),e.push(t.depthPacking)}function v(e,t){o.disableAll(),t.instancing&&o.enable(0),t.instancingColor&&o.enable(1),t.instancingMorph&&o.enable(2),t.matcap&&o.enable(3),t.envMap&&o.enable(4),t.normalMapObjectSpace&&o.enable(5),t.normalMapTangentSpace&&o.enable(6),t.clearcoat&&o.enable(7),t.iridescence&&o.enable(8),t.alphaTest&&o.enable(9),t.vertexColors&&o.enable(10),t.vertexAlphas&&o.enable(11),t.vertexUv1s&&o.enable(12),t.vertexUv2s&&o.enable(13),t.vertexUv3s&&o.enable(14),t.vertexTangents&&o.enable(15),t.anisotropy&&o.enable(16),t.alphaHash&&o.enable(17),t.batching&&o.enable(18),t.dispersion&&o.enable(19),t.batchingColor&&o.enable(20),t.gradientMap&&o.enable(21),t.packedNormalMap&&o.enable(22),t.vertexNormals&&o.enable(23),e.push(o.mask),o.disableAll(),t.fog&&o.enable(0),t.useFog&&o.enable(1),t.flatShading&&o.enable(2),t.logarithmicDepthBuffer&&o.enable(3),t.reversedDepthBuffer&&o.enable(4),t.skinning&&o.enable(5),t.morphTargets&&o.enable(6),t.morphNormals&&o.enable(7),t.morphColors&&o.enable(8),t.premultipliedAlpha&&o.enable(9),t.shadowMapEnabled&&o.enable(10),t.doubleSided&&o.enable(11),t.flipSided&&o.enable(12),t.useDepthPacking&&o.enable(13),t.dithering&&o.enable(14),t.transmission&&o.enable(15),t.sheen&&o.enable(16),t.opaque&&o.enable(17),t.pointsUvs&&o.enable(18),t.decodeVideoTexture&&o.enable(19),t.decodeVideoTextureEmissive&&o.enable(20),t.alphaToCoverage&&o.enable(21),t.numLightProbeGrids>0&&o.enable(22),t.hasPositionAttribute&&o.enable(23),e.push(o.mask)}function y(e){let t=p[e.type],n;if(t){let e=tg[t];n=vm.clone(e.uniforms)}else n=e.uniforms;return n}function b(t,n){let r=u.get(n);return r===void 0?(r=new Ov(e,n,t,i),l.push(r),u.set(n,r)):++r.usedTimes,r}function x(e){if(--e.usedTimes===0){let t=l.indexOf(e);l[t]=l[l.length-1],l.pop(),u.delete(e.cacheKey),e.destroy()}}function S(e){s.remove(e)}function C(){s.dispose()}return{getParameters:h,getProgramCacheKey:g,getUniforms:y,acquireProgram:b,releaseProgram:x,releaseShaderCache:S,programs:l,dispose:C}}function Pv(){let e=new WeakMap;function t(t){return e.has(t)}function n(t){let n=e.get(t);return n===void 0&&(n={},e.set(t,n)),n}function r(t){e.delete(t)}function i(t,n,r){e.get(t)[n]=r}function a(){e=new WeakMap}return{has:t,get:n,remove:r,update:i,dispose:a}}function Fv(e,t){return e.groupOrder===t.groupOrder?e.renderOrder===t.renderOrder?e.material.id===t.material.id?e.materialVariant===t.materialVariant?e.z===t.z?e.id-t.id:e.z-t.z:e.materialVariant-t.materialVariant:e.material.id-t.material.id:e.renderOrder-t.renderOrder:e.groupOrder-t.groupOrder}function Iv(e,t){return e.groupOrder===t.groupOrder?e.renderOrder===t.renderOrder?e.z===t.z?e.id-t.id:t.z-e.z:e.renderOrder-t.renderOrder:e.groupOrder-t.groupOrder}function Lv(){let e=[],t=0,n=[],r=[],i=[];function a(){t=0,n.length=0,r.length=0,i.length=0}function o(e){let t=0;return e.isInstancedMesh&&(t+=2),e.isSkinnedMesh&&(t+=1),t}function s(n,r,i,a,s,c){let l=e[t];return l===void 0?(l={id:n.id,object:n,geometry:r,material:i,materialVariant:o(n),groupOrder:a,renderOrder:n.renderOrder,z:s,group:c},e[t]=l):(l.id=n.id,l.object=n,l.geometry=r,l.material=i,l.materialVariant=o(n),l.groupOrder=a,l.renderOrder=n.renderOrder,l.z=s,l.group=c),t++,l}function c(e,t,a,o,c,l){let u=s(e,t,a,o,c,l);a.transmission>0?r.push(u):a.transparent===!0?i.push(u):n.push(u)}function l(e,t,a,o,c,l){let u=s(e,t,a,o,c,l);a.transmission>0?r.unshift(u):a.transparent===!0?i.unshift(u):n.unshift(u)}function u(e,t,a){n.length>1&&n.sort(e||Fv),r.length>1&&r.sort(t||Iv),i.length>1&&i.sort(t||Iv),a&&(n.reverse(),r.reverse(),i.reverse())}function d(){for(let n=t,r=e.length;n=r.length?(i=new Lv,r.push(i)):i=r[n],i}function n(){e=new WeakMap}return{get:t,dispose:n}}function zv(){let e={};return{get:function(t){if(e[t.id]!==void 0)return e[t.id];let n;switch(t.type){case`DirectionalLight`:n={direction:new Z,color:new Q};break;case`SpotLight`:n={position:new Z,direction:new Z,color:new Q,distance:0,coneCos:0,penumbraCos:0,decay:0};break;case`PointLight`:n={position:new Z,color:new Q,distance:0,decay:0};break;case`HemisphereLight`:n={direction:new Z,skyColor:new Q,groundColor:new Q};break;case`RectAreaLight`:n={color:new Q,position:new Z,halfWidth:new Z,halfHeight:new Z};break}return e[t.id]=n,n}}}function Bv(){let e={};return{get:function(t){if(e[t.id]!==void 0)return e[t.id];let n;switch(t.type){case`DirectionalLight`:n={shadowIntensity:1,shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new X};break;case`SpotLight`:n={shadowIntensity:1,shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new X};break;case`PointLight`:n={shadowIntensity:1,shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new X,shadowCameraNear:1,shadowCameraFar:1e3};break}return e[t.id]=n,n}}}var Vv=0;function Hv(e,t){return(t.castShadow?2:0)-(e.castShadow?2:0)+ +!!t.map-!!e.map}function Uv(e){let t=new zv,n=Bv(),r={version:0,hash:{directionalLength:-1,pointLength:-1,spotLength:-1,rectAreaLength:-1,hemiLength:-1,numDirectionalShadows:-1,numPointShadows:-1,numSpotShadows:-1,numSpotMaps:-1,numLightProbes:-1},ambient:[0,0,0],probe:[],directional:[],directionalShadow:[],directionalShadowMap:[],directionalShadowMatrix:[],spot:[],spotLightMap:[],spotShadow:[],spotShadowMap:[],spotLightMatrix:[],rectArea:[],rectAreaLTC1:null,rectAreaLTC2:null,point:[],pointShadow:[],pointShadowMap:[],pointShadowMatrix:[],hemi:[],numSpotLightShadowsWithMaps:0,numLightProbes:0};for(let e=0;e<9;e++)r.probe.push(new Z);let i=new Z,a=new yu,o=new yu;function s(i){let a=0,o=0,s=0;for(let e=0;e<9;e++)r.probe[e].set(0,0,0);let c=0,l=0,u=0,d=0,f=0,p=0,m=0,h=0,g=0,_=0,v=0;i.sort(Hv);for(let e=0,y=i.length;e0&&(e.has(`OES_texture_float_linear`)===!0?(r.rectAreaLTC1=$.LTC_FLOAT_1,r.rectAreaLTC2=$.LTC_FLOAT_2):(r.rectAreaLTC1=$.LTC_HALF_1,r.rectAreaLTC2=$.LTC_HALF_2)),r.ambient[0]=a,r.ambient[1]=o,r.ambient[2]=s;let y=r.hash;(y.directionalLength!==c||y.pointLength!==l||y.spotLength!==u||y.rectAreaLength!==d||y.hemiLength!==f||y.numDirectionalShadows!==p||y.numPointShadows!==m||y.numSpotShadows!==h||y.numSpotMaps!==g||y.numLightProbes!==v)&&(r.directional.length=c,r.spot.length=u,r.rectArea.length=d,r.point.length=l,r.hemi.length=f,r.directionalShadow.length=p,r.directionalShadowMap.length=p,r.pointShadow.length=m,r.pointShadowMap.length=m,r.spotShadow.length=h,r.spotShadowMap.length=h,r.directionalShadowMatrix.length=p,r.pointShadowMatrix.length=m,r.spotLightMatrix.length=h+g-_,r.spotLightMap.length=g,r.numSpotLightShadowsWithMaps=_,r.numLightProbes=v,y.directionalLength=c,y.pointLength=l,y.spotLength=u,y.rectAreaLength=d,y.hemiLength=f,y.numDirectionalShadows=p,y.numPointShadows=m,y.numSpotShadows=h,y.numSpotMaps=g,y.numLightProbes=v,r.version=Vv++)}function c(e,t){let n=0,s=0,c=0,l=0,u=0,d=t.matrixWorldInverse;for(let t=0,f=e.length;t=i.length?(a=new Wv(e),i.push(a)):a=i[r],a}function r(){t=new WeakMap}return{get:n,dispose:r}}var Kv=`void main() { +`+n)}else o===``?(s===``||c===``)&&(u=!1):J(`WebGLProgram: Program Info Log:`,o);u&&(t.diagnostics={runnable:l,programLog:o,vertexShader:{log:s,prefix:g},fragmentShader:{log:c,prefix:_}})}i.deleteShader(x),i.deleteShader(S),w=new Z_(i,h),T=fv(i,h)}let w;this.getUniforms=function(){return w===void 0&&C(this),w};let T;this.getAttributes=function(){return T===void 0&&C(this),T};let E=n.rendererExtensionParallelShaderCompile===!1;return this.isReady=function(){return E===!1&&(E=i.getProgramParameter(h,$_)),E},this.destroy=function(){r.releaseStatesOfProgram(this),i.deleteProgram(h),this.program=void 0},this.type=n.shaderType,this.name=n.shaderName,this.id=ev++,this.cacheKey=t,this.usedTimes=1,this.program=h,this.vertexShader=x,this.fragmentShader=S,this}var Pv=0,Fv=class{constructor(){this.shaderCache=new Map,this.materialCache=new Map}update(e,t,n){let r=this._getShaderCacheForMaterial(e);return r.has(t)===!1&&(r.add(t),t.usedTimes++),r.has(n)===!1&&(r.add(n),n.usedTimes++),this}remove(e){let t=this.materialCache.get(e);for(let e of t)e.usedTimes--,e.usedTimes===0&&this.shaderCache.delete(e.code);return this.materialCache.delete(e),this}getVertexShaderStage(e){return this._getShaderStage(e.vertexShader)}getFragmentShaderStage(e){return this._getShaderStage(e.fragmentShader)}dispose(){this.shaderCache.clear(),this.materialCache.clear()}_getShaderCacheForMaterial(e){let t=this.materialCache,n=t.get(e);return n===void 0&&(n=new Set,t.set(e,n)),n}_getShaderStage(e){let t=this.shaderCache,n=t.get(e);return n===void 0&&(n=new Iv(e),t.set(e,n)),n}},Iv=class{constructor(e){this.id=Pv++,this.code=e,this.usedTimes=0}};function Lv(e){return e===1030||e===37490||e===36285}function Rv(e,t,n,r,i,a){let o=new ju,s=new Fv,c=new Set,l=[],u=new Map,d=r.logarithmicDepthBuffer,f=r.precision,p={MeshDepthMaterial:`depth`,MeshDistanceMaterial:`distance`,MeshNormalMaterial:`normal`,MeshBasicMaterial:`basic`,MeshLambertMaterial:`lambert`,MeshPhongMaterial:`phong`,MeshToonMaterial:`toon`,MeshStandardMaterial:`physical`,MeshPhysicalMaterial:`physical`,MeshMatcapMaterial:`matcap`,LineBasicMaterial:`basic`,LineDashedMaterial:`dashed`,PointsMaterial:`points`,ShadowMaterial:`shadow`,SpriteMaterial:`sprite`};function m(e){return c.add(e),e===0?`uv`:`uv${e}`}function h(i,o,l,u,h,g){let _=u.fog,v=h.geometry,y=i.isMeshStandardMaterial||i.isMeshLambertMaterial||i.isMeshPhongMaterial?u.environment:null,b=i.isMeshStandardMaterial||i.isMeshLambertMaterial&&!i.envMap||i.isMeshPhongMaterial&&!i.envMap,x=t.get(i.envMap||y,b),S=x&&x.mapping===306?x.image.height:null,C=p[i.type];i.precision!==null&&(f=r.getMaxPrecision(i.precision),f!==i.precision&&J(`WebGLProgram.getParameters:`,i.precision,`not supported, using`,f,`instead.`));let w=v.morphAttributes.position||v.morphAttributes.normal||v.morphAttributes.color,T=w===void 0?0:w.length,E=0;v.morphAttributes.position!==void 0&&(E=1),v.morphAttributes.normal!==void 0&&(E=2),v.morphAttributes.color!==void 0&&(E=3);let D,O,ee,k;if(C){let e=og[C];D=e.vertexShader,O=e.fragmentShader}else{D=i.vertexShader,O=i.fragmentShader;let e=s.getVertexShaderStage(i),t=s.getFragmentShaderStage(i);s.update(i,e,t),ee=e.id,k=t.id}let te=e.getRenderTarget(),ne=e.state.buffers.depth.getReversed(),re=h.isInstancedMesh===!0,ie=h.isBatchedMesh===!0,ae=!!i.map,oe=!!i.matcap,se=!!x,A=!!i.aoMap,ce=!!i.lightMap,le=!!i.bumpMap&&i.wireframe===!1,ue=!!i.normalMap,de=!!i.displacementMap,j=!!i.emissiveMap,fe=!!i.metalnessMap,pe=!!i.roughnessMap,me=i.anisotropy>0,he=i.clearcoat>0,ge=i.dispersion>0,_e=i.iridescence>0,ve=i.sheen>0,ye=i.transmission>0,be=me&&!!i.anisotropyMap,xe=he&&!!i.clearcoatMap,Se=he&&!!i.clearcoatNormalMap,Ce=he&&!!i.clearcoatRoughnessMap,we=_e&&!!i.iridescenceMap,M=_e&&!!i.iridescenceThicknessMap,N=ve&&!!i.sheenColorMap,P=ve&&!!i.sheenRoughnessMap,Te=!!i.specularMap,Ee=!!i.specularColorMap,F=!!i.specularIntensityMap,De=ye&&!!i.transmissionMap,I=ye&&!!i.thicknessMap,Oe=!!i.gradientMap,ke=!!i.alphaMap,Ae=i.alphaTest>0,L=!!i.alphaHash,je=!!i.extensions,R=0;i.toneMapped&&(te===null||te.isXRRenderTarget===!0)&&(R=e.toneMapping);let Me={shaderID:C,shaderType:i.type,shaderName:i.name,vertexShader:D,fragmentShader:O,defines:i.defines,customVertexShaderID:ee,customFragmentShaderID:k,isRawShaderMaterial:i.isRawShaderMaterial===!0,glslVersion:i.glslVersion,precision:f,batching:ie,batchingColor:ie&&h._colorsTexture!==null,instancing:re,instancingColor:re&&h.instanceColor!==null,instancingMorph:re&&h.morphTexture!==null,outputColorSpace:te===null?e.outputColorSpace:te.isXRRenderTarget===!0?te.texture.colorSpace:iu.workingColorSpace,alphaToCoverage:!!i.alphaToCoverage,map:ae,matcap:oe,envMap:se,envMapMode:se&&x.mapping,envMapCubeUVHeight:S,aoMap:A,lightMap:ce,bumpMap:le,normalMap:ue,displacementMap:de,emissiveMap:j,normalMapObjectSpace:ue&&i.normalMapType===1,normalMapTangentSpace:ue&&i.normalMapType===0,packedNormalMap:ue&&i.normalMapType===0&&Lv(i.normalMap.format),metalnessMap:fe,roughnessMap:pe,anisotropy:me,anisotropyMap:be,clearcoat:he,clearcoatMap:xe,clearcoatNormalMap:Se,clearcoatRoughnessMap:Ce,dispersion:ge,iridescence:_e,iridescenceMap:we,iridescenceThicknessMap:M,sheen:ve,sheenColorMap:N,sheenRoughnessMap:P,specularMap:Te,specularColorMap:Ee,specularIntensityMap:F,transmission:ye,transmissionMap:De,thicknessMap:I,gradientMap:Oe,opaque:i.transparent===!1&&i.blending===1&&i.alphaToCoverage===!1,alphaMap:ke,alphaTest:Ae,alphaHash:L,combine:i.combine,mapUv:ae&&m(i.map.channel),aoMapUv:A&&m(i.aoMap.channel),lightMapUv:ce&&m(i.lightMap.channel),bumpMapUv:le&&m(i.bumpMap.channel),normalMapUv:ue&&m(i.normalMap.channel),displacementMapUv:de&&m(i.displacementMap.channel),emissiveMapUv:j&&m(i.emissiveMap.channel),metalnessMapUv:fe&&m(i.metalnessMap.channel),roughnessMapUv:pe&&m(i.roughnessMap.channel),anisotropyMapUv:be&&m(i.anisotropyMap.channel),clearcoatMapUv:xe&&m(i.clearcoatMap.channel),clearcoatNormalMapUv:Se&&m(i.clearcoatNormalMap.channel),clearcoatRoughnessMapUv:Ce&&m(i.clearcoatRoughnessMap.channel),iridescenceMapUv:we&&m(i.iridescenceMap.channel),iridescenceThicknessMapUv:M&&m(i.iridescenceThicknessMap.channel),sheenColorMapUv:N&&m(i.sheenColorMap.channel),sheenRoughnessMapUv:P&&m(i.sheenRoughnessMap.channel),specularMapUv:Te&&m(i.specularMap.channel),specularColorMapUv:Ee&&m(i.specularColorMap.channel),specularIntensityMapUv:F&&m(i.specularIntensityMap.channel),transmissionMapUv:De&&m(i.transmissionMap.channel),thicknessMapUv:I&&m(i.thicknessMap.channel),alphaMapUv:ke&&m(i.alphaMap.channel),vertexTangents:!!v.attributes.tangent&&(ue||me),vertexNormals:!!v.attributes.normal,vertexColors:i.vertexColors,vertexAlphas:i.vertexColors===!0&&!!v.attributes.color&&v.attributes.color.itemSize===4,pointsUvs:h.isPoints===!0&&!!v.attributes.uv&&(ae||ke),fog:!!_,useFog:i.fog===!0,fogExp2:!!_&&_.isFogExp2,flatShading:i.wireframe===!1&&(i.flatShading===!0||v.attributes.normal===void 0&&ue===!1&&(i.isMeshLambertMaterial||i.isMeshPhongMaterial||i.isMeshStandardMaterial||i.isMeshPhysicalMaterial)),sizeAttenuation:i.sizeAttenuation===!0,logarithmicDepthBuffer:d,reversedDepthBuffer:ne,skinning:h.isSkinnedMesh===!0,hasPositionAttribute:v.attributes.position!==void 0,morphTargets:v.morphAttributes.position!==void 0,morphNormals:v.morphAttributes.normal!==void 0,morphColors:v.morphAttributes.color!==void 0,morphTargetsCount:T,morphTextureStride:E,numDirLights:o.directional.length,numPointLights:o.point.length,numSpotLights:o.spot.length,numSpotLightMaps:o.spotLightMap.length,numRectAreaLights:o.rectArea.length,numHemiLights:o.hemi.length,numDirLightShadows:o.directionalShadowMap.length,numPointLightShadows:o.pointShadowMap.length,numSpotLightShadows:o.spotShadowMap.length,numSpotLightShadowsWithMaps:o.numSpotLightShadowsWithMaps,numLightProbes:o.numLightProbes,numLightProbeGrids:g.length,numClippingPlanes:a.numPlanes,numClipIntersection:a.numIntersection,dithering:i.dithering,shadowMapEnabled:e.shadowMap.enabled&&l.length>0,shadowMapType:e.shadowMap.type,toneMapping:R,decodeVideoTexture:ae&&i.map.isVideoTexture===!0&&iu.getTransfer(i.map.colorSpace)===`srgb`,decodeVideoTextureEmissive:j&&i.emissiveMap.isVideoTexture===!0&&iu.getTransfer(i.emissiveMap.colorSpace)===`srgb`,premultipliedAlpha:i.premultipliedAlpha,doubleSided:i.side===2,flipSided:i.side===1,useDepthPacking:i.depthPacking>=0,depthPacking:i.depthPacking||0,index0AttributeName:i.index0AttributeName,extensionClipCullDistance:je&&i.extensions.clipCullDistance===!0&&n.has(`WEBGL_clip_cull_distance`),extensionMultiDraw:(je&&i.extensions.multiDraw===!0||ie)&&n.has(`WEBGL_multi_draw`),rendererExtensionParallelShaderCompile:n.has(`KHR_parallel_shader_compile`),customProgramCacheKey:i.customProgramCacheKey()};return Me.vertexUv1s=c.has(1),Me.vertexUv2s=c.has(2),Me.vertexUv3s=c.has(3),c.clear(),Me}function g(t){let n=[];if(t.shaderID?n.push(t.shaderID):(n.push(t.customVertexShaderID),n.push(t.customFragmentShaderID)),t.defines!==void 0)for(let e in t.defines)n.push(e),n.push(t.defines[e]);return t.isRawShaderMaterial===!1&&(_(n,t),v(n,t),n.push(e.outputColorSpace)),n.push(t.customProgramCacheKey),n.join()}function _(e,t){e.push(t.precision),e.push(t.outputColorSpace),e.push(t.envMapMode),e.push(t.envMapCubeUVHeight),e.push(t.mapUv),e.push(t.alphaMapUv),e.push(t.lightMapUv),e.push(t.aoMapUv),e.push(t.bumpMapUv),e.push(t.normalMapUv),e.push(t.displacementMapUv),e.push(t.emissiveMapUv),e.push(t.metalnessMapUv),e.push(t.roughnessMapUv),e.push(t.anisotropyMapUv),e.push(t.clearcoatMapUv),e.push(t.clearcoatNormalMapUv),e.push(t.clearcoatRoughnessMapUv),e.push(t.iridescenceMapUv),e.push(t.iridescenceThicknessMapUv),e.push(t.sheenColorMapUv),e.push(t.sheenRoughnessMapUv),e.push(t.specularMapUv),e.push(t.specularColorMapUv),e.push(t.specularIntensityMapUv),e.push(t.transmissionMapUv),e.push(t.thicknessMapUv),e.push(t.combine),e.push(t.fogExp2),e.push(t.sizeAttenuation),e.push(t.morphTargetsCount),e.push(t.morphAttributeCount),e.push(t.numDirLights),e.push(t.numPointLights),e.push(t.numSpotLights),e.push(t.numSpotLightMaps),e.push(t.numHemiLights),e.push(t.numRectAreaLights),e.push(t.numDirLightShadows),e.push(t.numPointLightShadows),e.push(t.numSpotLightShadows),e.push(t.numSpotLightShadowsWithMaps),e.push(t.numLightProbes),e.push(t.shadowMapType),e.push(t.toneMapping),e.push(t.numClippingPlanes),e.push(t.numClipIntersection),e.push(t.depthPacking)}function v(e,t){o.disableAll(),t.instancing&&o.enable(0),t.instancingColor&&o.enable(1),t.instancingMorph&&o.enable(2),t.matcap&&o.enable(3),t.envMap&&o.enable(4),t.normalMapObjectSpace&&o.enable(5),t.normalMapTangentSpace&&o.enable(6),t.clearcoat&&o.enable(7),t.iridescence&&o.enable(8),t.alphaTest&&o.enable(9),t.vertexColors&&o.enable(10),t.vertexAlphas&&o.enable(11),t.vertexUv1s&&o.enable(12),t.vertexUv2s&&o.enable(13),t.vertexUv3s&&o.enable(14),t.vertexTangents&&o.enable(15),t.anisotropy&&o.enable(16),t.alphaHash&&o.enable(17),t.batching&&o.enable(18),t.dispersion&&o.enable(19),t.batchingColor&&o.enable(20),t.gradientMap&&o.enable(21),t.packedNormalMap&&o.enable(22),t.vertexNormals&&o.enable(23),e.push(o.mask),o.disableAll(),t.fog&&o.enable(0),t.useFog&&o.enable(1),t.flatShading&&o.enable(2),t.logarithmicDepthBuffer&&o.enable(3),t.reversedDepthBuffer&&o.enable(4),t.skinning&&o.enable(5),t.morphTargets&&o.enable(6),t.morphNormals&&o.enable(7),t.morphColors&&o.enable(8),t.premultipliedAlpha&&o.enable(9),t.shadowMapEnabled&&o.enable(10),t.doubleSided&&o.enable(11),t.flipSided&&o.enable(12),t.useDepthPacking&&o.enable(13),t.dithering&&o.enable(14),t.transmission&&o.enable(15),t.sheen&&o.enable(16),t.opaque&&o.enable(17),t.pointsUvs&&o.enable(18),t.decodeVideoTexture&&o.enable(19),t.decodeVideoTextureEmissive&&o.enable(20),t.alphaToCoverage&&o.enable(21),t.numLightProbeGrids>0&&o.enable(22),t.hasPositionAttribute&&o.enable(23),e.push(o.mask)}function y(e){let t=p[e.type],n;if(t){let e=og[t];n=vm.clone(e.uniforms)}else n=e.uniforms;return n}function b(t,n){let r=u.get(n);return r===void 0?(r=new Nv(e,n,t,i),l.push(r),u.set(n,r)):++r.usedTimes,r}function x(e){if(--e.usedTimes===0){let t=l.indexOf(e);l[t]=l[l.length-1],l.pop(),u.delete(e.cacheKey),e.destroy()}}function S(e){s.remove(e)}function C(){s.dispose()}return{getParameters:h,getProgramCacheKey:g,getUniforms:y,acquireProgram:b,releaseProgram:x,releaseShaderCache:S,programs:l,dispose:C}}function zv(){let e=new WeakMap;function t(t){return e.has(t)}function n(t){let n=e.get(t);return n===void 0&&(n={},e.set(t,n)),n}function r(t){e.delete(t)}function i(t,n,r){e.get(t)[n]=r}function a(){e=new WeakMap}return{has:t,get:n,remove:r,update:i,dispose:a}}function Bv(e,t){return e.groupOrder===t.groupOrder?e.renderOrder===t.renderOrder?e.material.id===t.material.id?e.materialVariant===t.materialVariant?e.z===t.z?e.id-t.id:e.z-t.z:e.materialVariant-t.materialVariant:e.material.id-t.material.id:e.renderOrder-t.renderOrder:e.groupOrder-t.groupOrder}function Vv(e,t){return e.groupOrder===t.groupOrder?e.renderOrder===t.renderOrder?e.z===t.z?e.id-t.id:t.z-e.z:e.renderOrder-t.renderOrder:e.groupOrder-t.groupOrder}function Hv(){let e=[],t=0,n=[],r=[],i=[];function a(){t=0,n.length=0,r.length=0,i.length=0}function o(e){let t=0;return e.isInstancedMesh&&(t+=2),e.isSkinnedMesh&&(t+=1),t}function s(n,r,i,a,s,c){let l=e[t];return l===void 0?(l={id:n.id,object:n,geometry:r,material:i,materialVariant:o(n),groupOrder:a,renderOrder:n.renderOrder,z:s,group:c},e[t]=l):(l.id=n.id,l.object=n,l.geometry=r,l.material=i,l.materialVariant=o(n),l.groupOrder=a,l.renderOrder=n.renderOrder,l.z=s,l.group=c),t++,l}function c(e,t,a,o,c,l){let u=s(e,t,a,o,c,l);a.transmission>0?r.push(u):a.transparent===!0?i.push(u):n.push(u)}function l(e,t,a,o,c,l){let u=s(e,t,a,o,c,l);a.transmission>0?r.unshift(u):a.transparent===!0?i.unshift(u):n.unshift(u)}function u(e,t,a){n.length>1&&n.sort(e||Bv),r.length>1&&r.sort(t||Vv),i.length>1&&i.sort(t||Vv),a&&(n.reverse(),r.reverse(),i.reverse())}function d(){for(let n=t,r=e.length;n=r.length?(i=new Hv,r.push(i)):i=r[n],i}function n(){e=new WeakMap}return{get:t,dispose:n}}function Wv(){let e={};return{get:function(t){if(e[t.id]!==void 0)return e[t.id];let n;switch(t.type){case`DirectionalLight`:n={direction:new X,color:new Z};break;case`SpotLight`:n={position:new X,direction:new X,color:new Z,distance:0,coneCos:0,penumbraCos:0,decay:0};break;case`PointLight`:n={position:new X,color:new Z,distance:0,decay:0};break;case`HemisphereLight`:n={direction:new X,skyColor:new Z,groundColor:new Z};break;case`RectAreaLight`:n={color:new Z,position:new X,halfWidth:new X,halfHeight:new X};break}return e[t.id]=n,n}}}function Gv(){let e={};return{get:function(t){if(e[t.id]!==void 0)return e[t.id];let n;switch(t.type){case`DirectionalLight`:n={shadowIntensity:1,shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new Y};break;case`SpotLight`:n={shadowIntensity:1,shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new Y};break;case`PointLight`:n={shadowIntensity:1,shadowBias:0,shadowNormalBias:0,shadowRadius:1,shadowMapSize:new Y,shadowCameraNear:1,shadowCameraFar:1e3};break}return e[t.id]=n,n}}}var Kv=0;function qv(e,t){return(t.castShadow?2:0)-(e.castShadow?2:0)+ +!!t.map-!!e.map}function Jv(e){let t=new Wv,n=Gv(),r={version:0,hash:{directionalLength:-1,pointLength:-1,spotLength:-1,rectAreaLength:-1,hemiLength:-1,numDirectionalShadows:-1,numPointShadows:-1,numSpotShadows:-1,numSpotMaps:-1,numLightProbes:-1},ambient:[0,0,0],probe:[],directional:[],directionalShadow:[],directionalShadowMap:[],directionalShadowMatrix:[],spot:[],spotLightMap:[],spotShadow:[],spotShadowMap:[],spotLightMatrix:[],rectArea:[],rectAreaLTC1:null,rectAreaLTC2:null,point:[],pointShadow:[],pointShadowMap:[],pointShadowMatrix:[],hemi:[],numSpotLightShadowsWithMaps:0,numLightProbes:0};for(let e=0;e<9;e++)r.probe.push(new X);let i=new X,a=new bu,o=new bu;function s(i){let a=0,o=0,s=0;for(let e=0;e<9;e++)r.probe[e].set(0,0,0);let c=0,l=0,u=0,d=0,f=0,p=0,m=0,h=0,g=0,_=0,v=0;i.sort(qv);for(let e=0,y=i.length;e0&&(e.has(`OES_texture_float_linear`)===!0?(r.rectAreaLTC1=$.LTC_FLOAT_1,r.rectAreaLTC2=$.LTC_FLOAT_2):(r.rectAreaLTC1=$.LTC_HALF_1,r.rectAreaLTC2=$.LTC_HALF_2)),r.ambient[0]=a,r.ambient[1]=o,r.ambient[2]=s;let y=r.hash;(y.directionalLength!==c||y.pointLength!==l||y.spotLength!==u||y.rectAreaLength!==d||y.hemiLength!==f||y.numDirectionalShadows!==p||y.numPointShadows!==m||y.numSpotShadows!==h||y.numSpotMaps!==g||y.numLightProbes!==v)&&(r.directional.length=c,r.spot.length=u,r.rectArea.length=d,r.point.length=l,r.hemi.length=f,r.directionalShadow.length=p,r.directionalShadowMap.length=p,r.pointShadow.length=m,r.pointShadowMap.length=m,r.spotShadow.length=h,r.spotShadowMap.length=h,r.directionalShadowMatrix.length=p,r.pointShadowMatrix.length=m,r.spotLightMatrix.length=h+g-_,r.spotLightMap.length=g,r.numSpotLightShadowsWithMaps=_,r.numLightProbes=v,y.directionalLength=c,y.pointLength=l,y.spotLength=u,y.rectAreaLength=d,y.hemiLength=f,y.numDirectionalShadows=p,y.numPointShadows=m,y.numSpotShadows=h,y.numSpotMaps=g,y.numLightProbes=v,r.version=Kv++)}function c(e,t){let n=0,s=0,c=0,l=0,u=0,d=t.matrixWorldInverse;for(let t=0,f=e.length;t=i.length?(a=new Yv(e),i.push(a)):a=i[r],a}function r(){t=new WeakMap}return{get:n,dispose:r}}var Zv=`void main() { gl_Position = vec4( position, 1.0 ); -}`,qv=`uniform sampler2D shadow_pass; +}`,Qv=`uniform sampler2D shadow_pass; uniform vec2 resolution; uniform float radius; void main() { @@ -4081,12 +4081,12 @@ void main() { squared_mean = squared_mean / samples; float std_dev = sqrt( max( 0.0, squared_mean - mean * mean ) ); gl_FragColor = vec4( mean, std_dev, 0.0, 1.0 ); -}`,Jv=[new Z(1,0,0),new Z(-1,0,0),new Z(0,1,0),new Z(0,-1,0),new Z(0,0,1),new Z(0,0,-1)],Yv=[new Z(0,-1,0),new Z(0,-1,0),new Z(0,0,1),new Z(0,0,-1),new Z(0,-1,0),new Z(0,-1,0)],Xv=new yu,Zv=new Z,Qv=new Z;function $v(e,t,n){let r=new rp,i=new X,a=new X,o=new mu,s=new Tm,c=new Em,l={},u=n.maxTextureSize,d={0:1,1:0,2:2},f=new xm({defines:{VSM_SAMPLES:8},uniforms:{shadow_pass:{value:null},resolution:{value:new X},radius:{value:4}},vertexShader:Kv,fragmentShader:qv}),p=f.clone();p.defines.HORIZONTAL_PASS=1;let m=new Xd;m.setAttribute(`position`,new Fd(new Float32Array([-1,-1,.5,3,-1,.5,-1,3,.5]),3));let h=new Cf(m,f),g=this;this.enabled=!1,this.autoUpdate=!0,this.needsUpdate=!1,this.type=1;let _=this.type;this.render=function(t,n,s){if(g.enabled===!1||g.autoUpdate===!1&&g.needsUpdate===!1||t.length===0)return;this.type===2&&(Y(`WebGLShadowMap: PCFSoftShadowMap has been deprecated. Using PCFShadowMap instead.`),this.type=1);let c=e.getRenderTarget(),l=e.getActiveCubeFace(),d=e.getActiveMipmapLevel(),f=e.state;f.setBlending(0),f.buffers.depth.getReversed()===!0?f.buffers.color.setClear(0,0,0,0):f.buffers.color.setClear(1,1,1,1),f.buffers.depth.setTest(!0),f.setScissorTest(!1);let p=_!==this.type;p&&n.traverse(function(e){e.material&&(Array.isArray(e.material)?e.material.forEach(e=>e.needsUpdate=!0):e.material.needsUpdate=!0)});for(let c=0,l=t.length;cu||i.y>u)&&(i.x>u&&(a.x=Math.floor(u/m.x),i.x=a.x*m.x,d.mapSize.x=a.x),i.y>u&&(a.y=Math.floor(u/m.y),i.y=a.y*m.y,d.mapSize.y=a.y));let h=e.state.buffers.depth.getReversed();if(d.camera._reversedDepth=h,d.map===null||p===!0){if(d.map!==null&&(d.map.depthTexture!==null&&(d.map.depthTexture.dispose(),d.map.depthTexture=null),d.map.dispose()),this.type===3){if(l.isPointLight){Y(`WebGLShadowMap: VSM shadow maps are not supported for PointLights. Use PCF or BasicShadowMap instead.`);continue}d.map=new gu(i.x,i.y,{format:ic,type:Gs,minFilter:Fs,magFilter:Fs,generateMipmaps:!1}),d.map.texture.name=l.name+`.shadowMap`,d.map.depthTexture=new Dp(i.x,i.y,Ws),d.map.depthTexture.name=l.name+`.shadowMapDepth`,d.map.depthTexture.format=ec,d.map.depthTexture.compareFunction=null,d.map.depthTexture.minFilter=Ms,d.map.depthTexture.magFilter=Ms}else l.isPointLight?(d.map=new Ag(i.x),d.map.depthTexture=new Op(i.x,Us)):(d.map=new gu(i.x,i.y),d.map.depthTexture=new Dp(i.x,i.y,Us)),d.map.depthTexture.name=l.name+`.shadowMap`,d.map.depthTexture.format=ec,this.type===1?(d.map.depthTexture.compareFunction=h?518:515,d.map.depthTexture.minFilter=Fs,d.map.depthTexture.magFilter=Fs):(d.map.depthTexture.compareFunction=null,d.map.depthTexture.minFilter=Ms,d.map.depthTexture.magFilter=Ms);d.camera.updateProjectionMatrix()}let g=d.map.isWebGLCubeRenderTarget?6:1;for(let t=0;t0||n.map&&n.alphaTest>0||n.alphaToCoverage===!0){let e=a.uuid,t=n.uuid,r=l[e];r===void 0&&(r={},l[e]=r);let i=r[t];i===void 0&&(i=a.clone(),r[t]=i,n.addEventListener(`dispose`,x)),a=i}if(a.visible=n.visible,a.wireframe=n.wireframe,i===3?a.side=n.shadowSide===null?n.side:n.shadowSide:a.side=n.shadowSide===null?d[n.side]:n.shadowSide,a.alphaMap=n.alphaMap,a.alphaTest=n.alphaToCoverage===!0?.5:n.alphaTest,a.map=n.map,a.clipShadows=n.clipShadows,a.clippingPlanes=n.clippingPlanes,a.clipIntersection=n.clipIntersection,a.displacementMap=n.displacementMap,a.displacementScale=n.displacementScale,a.displacementBias=n.displacementBias,a.wireframeLinewidth=n.wireframeLinewidth,a.linewidth=n.linewidth,r.isPointLight===!0&&a.isMeshDistanceMaterial===!0){let t=e.properties.get(a);t.light=r}return a}function b(n,i,a,o,s){if(n.visible===!1)return;if(n.layers.test(i.layers)&&(n.isMesh||n.isLine||n.isPoints)&&(n.castShadow||n.receiveShadow&&s===3)&&(!n.frustumCulled||r.intersectsObject(n))){n.modelViewMatrix.multiplyMatrices(a.matrixWorldInverse,n.matrixWorld);let r=t.update(n),c=n.material;if(Array.isArray(c)){let t=r.groups;for(let l=0,u=t.length;l=2):(ie=parseFloat(/^WebGL (\d)/.exec(ae)[1]),re=ie>=1);let oe=null,se={},A=e.getParameter(e.SCISSOR_BOX),ce=e.getParameter(e.VIEWPORT),le=new mu().fromArray(A),ue=new mu().fromArray(ce);function de(t,n,r,i){let a=new Uint8Array(4),o=e.createTexture();e.bindTexture(t,o),e.texParameteri(t,e.TEXTURE_MIN_FILTER,e.NEAREST),e.texParameteri(t,e.TEXTURE_MAG_FILTER,e.NEAREST);for(let o=0;o`u`?!1:/OculusBrowser/g.test(navigator.userAgent),l=new X,u=new WeakMap,d=new Set,f,p=new WeakMap,m=!1;try{m=typeof OffscreenCanvas<`u`&&new OffscreenCanvas(1,1).getContext(`2d`)!==null}catch{}function h(e,t){return m?new OffscreenCanvas(e,t):fl(`canvas`)}function g(e,t,n){let r=1,i=Ee(e);if((i.width>n||i.height>n)&&(r=n/Math.max(i.width,i.height)),r<1)if(typeof HTMLImageElement<`u`&&e instanceof HTMLImageElement||typeof HTMLCanvasElement<`u`&&e instanceof HTMLCanvasElement||typeof ImageBitmap<`u`&&e instanceof ImageBitmap||typeof VideoFrame<`u`&&e instanceof VideoFrame){let n=Math.floor(r*i.width),a=Math.floor(r*i.height);f===void 0&&(f=h(n,a));let o=t?h(n,a):f;return o.width=n,o.height=a,o.getContext(`2d`).drawImage(e,0,0,n,a),Y(`WebGLRenderer: Texture has been resized from (`+i.width+`x`+i.height+`) to (`+n+`x`+a+`).`),o}else return`data`in e&&Y(`WebGLRenderer: Image in DataTexture is too big (`+i.width+`x`+i.height+`).`),e;return e}function _(e){return e.generateMipmaps}function v(t){e.generateMipmap(t)}function y(t){return t.isWebGLCubeRenderTarget?e.TEXTURE_CUBE_MAP:t.isWebGL3DRenderTarget?e.TEXTURE_3D:t.isWebGLArrayRenderTarget||t.isCompressedArrayTexture?e.TEXTURE_2D_ARRAY:e.TEXTURE_2D}function b(n,r,i,a,o,s=!1){if(n!==null){if(e[n]!==void 0)return e[n];Y(`WebGLRenderer: Attempt to use non-existing WebGL internal format '`+n+`'`)}let c;a&&(c=t.get(`EXT_texture_norm16`),c||Y(`WebGLRenderer: Unable to use normalized textures without EXT_texture_norm16 extension`));let l=r;if(r===e.RED&&(i===e.FLOAT&&(l=e.R32F),i===e.HALF_FLOAT&&(l=e.R16F),i===e.UNSIGNED_BYTE&&(l=e.R8),i===e.UNSIGNED_SHORT&&c&&(l=c.R16_EXT),i===e.SHORT&&c&&(l=c.R16_SNORM_EXT)),r===e.RED_INTEGER&&(i===e.UNSIGNED_BYTE&&(l=e.R8UI),i===e.UNSIGNED_SHORT&&(l=e.R16UI),i===e.UNSIGNED_INT&&(l=e.R32UI),i===e.BYTE&&(l=e.R8I),i===e.SHORT&&(l=e.R16I),i===e.INT&&(l=e.R32I)),r===e.RG&&(i===e.FLOAT&&(l=e.RG32F),i===e.HALF_FLOAT&&(l=e.RG16F),i===e.UNSIGNED_BYTE&&(l=e.RG8),i===e.UNSIGNED_SHORT&&c&&(l=c.RG16_EXT),i===e.SHORT&&c&&(l=c.RG16_SNORM_EXT)),r===e.RG_INTEGER&&(i===e.UNSIGNED_BYTE&&(l=e.RG8UI),i===e.UNSIGNED_SHORT&&(l=e.RG16UI),i===e.UNSIGNED_INT&&(l=e.RG32UI),i===e.BYTE&&(l=e.RG8I),i===e.SHORT&&(l=e.RG16I),i===e.INT&&(l=e.RG32I)),r===e.RGB_INTEGER&&(i===e.UNSIGNED_BYTE&&(l=e.RGB8UI),i===e.UNSIGNED_SHORT&&(l=e.RGB16UI),i===e.UNSIGNED_INT&&(l=e.RGB32UI),i===e.BYTE&&(l=e.RGB8I),i===e.SHORT&&(l=e.RGB16I),i===e.INT&&(l=e.RGB32I)),r===e.RGBA_INTEGER&&(i===e.UNSIGNED_BYTE&&(l=e.RGBA8UI),i===e.UNSIGNED_SHORT&&(l=e.RGBA16UI),i===e.UNSIGNED_INT&&(l=e.RGBA32UI),i===e.BYTE&&(l=e.RGBA8I),i===e.SHORT&&(l=e.RGBA16I),i===e.INT&&(l=e.RGBA32I)),r===e.RGB&&(i===e.UNSIGNED_SHORT&&c&&(l=c.RGB16_EXT),i===e.SHORT&&c&&(l=c.RGB16_SNORM_EXT),i===e.UNSIGNED_INT_5_9_9_9_REV&&(l=e.RGB9_E5),i===e.UNSIGNED_INT_10F_11F_11F_REV&&(l=e.R11F_G11F_B10F)),r===e.RGBA){let t=s?il:ru.getTransfer(o);i===e.FLOAT&&(l=e.RGBA32F),i===e.HALF_FLOAT&&(l=e.RGBA16F),i===e.UNSIGNED_BYTE&&(l=t===`srgb`?e.SRGB8_ALPHA8:e.RGBA8),i===e.UNSIGNED_SHORT&&c&&(l=c.RGBA16_EXT),i===e.SHORT&&c&&(l=c.RGBA16_SNORM_EXT),i===e.UNSIGNED_SHORT_4_4_4_4&&(l=e.RGBA4),i===e.UNSIGNED_SHORT_5_5_5_1&&(l=e.RGB5_A1)}return(l===e.R16F||l===e.R32F||l===e.RG16F||l===e.RG32F||l===e.RGBA16F||l===e.RGBA32F)&&t.get(`EXT_color_buffer_float`),l}function x(t,n){let r;return t?n===null||n===1014||n===1020?r=e.DEPTH24_STENCIL8:n===1015?r=e.DEPTH32F_STENCIL8:n===1012&&(r=e.DEPTH24_STENCIL8,Y(`DepthTexture: 16 bit depth attachment is not supported with stencil. Using 24-bit attachment.`)):n===null||n===1014||n===1020?r=e.DEPTH_COMPONENT24:n===1015?r=e.DEPTH_COMPONENT32F:n===1012&&(r=e.DEPTH_COMPONENT16),r}function S(e,t){return _(e)===!0||e.isFramebufferTexture&&e.minFilter!==1003&&e.minFilter!==1006?Math.log2(Math.max(t.width,t.height))+1:e.mipmaps!==void 0&&e.mipmaps.length>0?e.mipmaps.length:e.isCompressedTexture&&Array.isArray(e.image)?t.mipmaps.length:1}function C(e){let t=e.target;t.removeEventListener(`dispose`,C),T(t),t.isVideoTexture&&u.delete(t),t.isHTMLTexture&&d.delete(t)}function w(e){let t=e.target;t.removeEventListener(`dispose`,w),D(t)}function T(e){let t=r.get(e);if(t.__webglInit===void 0)return;let n=e.source,i=p.get(n);if(i){let r=i[t.__cacheKey];r.usedTimes--,r.usedTimes===0&&E(e),Object.keys(i).length===0&&p.delete(n)}r.remove(e)}function E(t){let n=r.get(t);e.deleteTexture(n.__webglTexture);let i=t.source,a=p.get(i);delete a[n.__cacheKey],o.memory.textures--}function D(t){let n=r.get(t);if(t.depthTexture&&(t.depthTexture.dispose(),r.remove(t.depthTexture)),t.isWebGLCubeRenderTarget)for(let t=0;t<6;t++){if(Array.isArray(n.__webglFramebuffer[t]))for(let r=0;r=i.maxTextures&&Y(`WebGLTextures: Trying to use `+e+` texture units while this GPU supports only `+i.maxTextures),O+=1,e}function re(e){let t=[];return t.push(e.wrapS),t.push(e.wrapT),t.push(e.wrapR||0),t.push(e.magFilter),t.push(e.minFilter),t.push(e.anisotropy),t.push(e.internalFormat),t.push(e.format),t.push(e.type),t.push(e.generateMipmaps),t.push(e.premultiplyAlpha),t.push(e.flipY),t.push(e.unpackAlignment),t.push(e.colorSpace),t.join()}function ie(t,i){let a=r.get(t);if(t.isVideoTexture&&P(t),t.isRenderTargetTexture===!1&&t.isExternalTexture!==!0&&t.version>0&&a.__version!==t.version){let e=t.image;if(e===null)Y(`WebGLRenderer: Texture marked for update but no image data found.`);else if(e.complete===!1)Y(`WebGLRenderer: Texture marked for update but image is incomplete`);else{pe(a,t,i);return}}else t.isExternalTexture&&(a.__webglTexture=t.sourceTexture?t.sourceTexture:null);n.bindTexture(e.TEXTURE_2D,a.__webglTexture,e.TEXTURE0+i)}function ae(t,i){let a=r.get(t);if(t.isRenderTargetTexture===!1&&t.version>0&&a.__version!==t.version){pe(a,t,i);return}else t.isExternalTexture&&(a.__webglTexture=t.sourceTexture?t.sourceTexture:null);n.bindTexture(e.TEXTURE_2D_ARRAY,a.__webglTexture,e.TEXTURE0+i)}function oe(t,i){let a=r.get(t);if(t.isRenderTargetTexture===!1&&t.version>0&&a.__version!==t.version){pe(a,t,i);return}n.bindTexture(e.TEXTURE_3D,a.__webglTexture,e.TEXTURE0+i)}function se(t,i){let a=r.get(t);if(t.isCubeDepthTexture!==!0&&t.version>0&&a.__version!==t.version){me(a,t,i);return}n.bindTexture(e.TEXTURE_CUBE_MAP,a.__webglTexture,e.TEXTURE0+i)}let A={[ks]:e.REPEAT,[As]:e.CLAMP_TO_EDGE,[js]:e.MIRRORED_REPEAT},ce={[Ms]:e.NEAREST,[Ns]:e.NEAREST_MIPMAP_NEAREST,[Ps]:e.NEAREST_MIPMAP_LINEAR,[Fs]:e.LINEAR,[Is]:e.LINEAR_MIPMAP_NEAREST,[Ls]:e.LINEAR_MIPMAP_LINEAR},le={512:e.NEVER,519:e.ALWAYS,513:e.LESS,515:e.LEQUAL,514:e.EQUAL,518:e.GEQUAL,516:e.GREATER,517:e.NOTEQUAL};function ue(n,a){if(a.type===1015&&t.has(`OES_texture_float_linear`)===!1&&(a.magFilter===1006||a.magFilter===1007||a.magFilter===1005||a.magFilter===1008||a.minFilter===1006||a.minFilter===1007||a.minFilter===1005||a.minFilter===1008)&&Y(`WebGLRenderer: Unable to use linear filtering with floating point textures. OES_texture_float_linear not supported on this device.`),e.texParameteri(n,e.TEXTURE_WRAP_S,A[a.wrapS]),e.texParameteri(n,e.TEXTURE_WRAP_T,A[a.wrapT]),(n===e.TEXTURE_3D||n===e.TEXTURE_2D_ARRAY)&&e.texParameteri(n,e.TEXTURE_WRAP_R,A[a.wrapR]),e.texParameteri(n,e.TEXTURE_MAG_FILTER,ce[a.magFilter]),e.texParameteri(n,e.TEXTURE_MIN_FILTER,ce[a.minFilter]),a.compareFunction&&(e.texParameteri(n,e.TEXTURE_COMPARE_MODE,e.COMPARE_REF_TO_TEXTURE),e.texParameteri(n,e.TEXTURE_COMPARE_FUNC,le[a.compareFunction])),t.has(`EXT_texture_filter_anisotropic`)===!0){if(a.magFilter===1003||a.minFilter!==1005&&a.minFilter!==1008||a.type===1015&&t.has(`OES_texture_float_linear`)===!1)return;if(a.anisotropy>1||r.get(a).__currentAnisotropy){let o=t.get(`EXT_texture_filter_anisotropic`);e.texParameterf(n,o.TEXTURE_MAX_ANISOTROPY_EXT,Math.min(a.anisotropy,i.getMaxAnisotropy())),r.get(a).__currentAnisotropy=a.anisotropy}}}function de(t,n){let r=!1;t.__webglInit===void 0&&(t.__webglInit=!0,n.addEventListener(`dispose`,C));let i=n.source,a=p.get(i);a===void 0&&(a={},p.set(i,a));let s=re(n);if(s!==t.__cacheKey){a[s]===void 0&&(a[s]={texture:e.createTexture(),usedTimes:0},o.memory.textures++,r=!0),a[s].usedTimes++;let i=a[t.__cacheKey];i!==void 0&&(a[t.__cacheKey].usedTimes--,i.usedTimes===0&&E(n)),t.__cacheKey=s,t.__webglTexture=a[s].texture}return r}function j(e,t,n){return Math.floor(Math.floor(e/n)/t)}function fe(t,r,i,a){let o=t.updateRanges;if(o.length===0)n.texSubImage2D(e.TEXTURE_2D,0,0,0,r.width,r.height,i,a,r.data);else{o.sort((e,t)=>e.start-t.start);let s=0;for(let e=1;e0){C&&w&&n.texStorage2D(e.TEXTURE_2D,E,m,y[0].width,y[0].height);for(let t=0,i=y.length;t0){let t=Xh(h.width,h.height,o.format,o.type);for(let a of o.layerUpdates){let o=h.data.subarray(a*t/h.data.BYTES_PER_ELEMENT,(a+1)*t/h.data.BYTES_PER_ELEMENT);n.compressedTexSubImage3D(e.TEXTURE_2D_ARRAY,i,0,0,a,h.width,h.height,1,r,o)}o.clearLayerUpdates()}else n.compressedTexSubImage3D(e.TEXTURE_2D_ARRAY,i,0,0,0,h.width,h.height,t.depth,r,h.data)}else n.compressedTexImage3D(e.TEXTURE_2D_ARRAY,i,m,h.width,h.height,t.depth,0,h.data,0,0);else Y(`WebGLRenderer: Attempt to load unsupported compressed texture format in .uploadTexture()`);else C?T&&n.texSubImage3D(e.TEXTURE_2D_ARRAY,i,0,0,0,h.width,h.height,t.depth,r,p,h.data):n.texImage3D(e.TEXTURE_2D_ARRAY,i,m,h.width,h.height,t.depth,0,r,p,h.data)}else{C&&w&&n.texStorage2D(e.TEXTURE_2D,E,m,y[0].width,y[0].height);for(let t=0,i=y.length;t0){let i=Xh(t.width,t.height,o.format,o.type);for(let a of o.layerUpdates){let o=t.data.subarray(a*i/t.data.BYTES_PER_ELEMENT,(a+1)*i/t.data.BYTES_PER_ELEMENT);n.texSubImage3D(e.TEXTURE_2D_ARRAY,0,0,0,a,t.width,t.height,1,r,p,o)}o.clearLayerUpdates()}else n.texSubImage3D(e.TEXTURE_2D_ARRAY,0,0,0,0,t.width,t.height,t.depth,r,p,t.data)}else n.texImage3D(e.TEXTURE_2D_ARRAY,0,m,t.width,t.height,t.depth,0,r,p,t.data);else if(o.isData3DTexture)C?(w&&n.texStorage3D(e.TEXTURE_3D,E,m,t.width,t.height,t.depth),T&&n.texSubImage3D(e.TEXTURE_3D,0,0,0,0,t.width,t.height,t.depth,r,p,t.data)):n.texImage3D(e.TEXTURE_3D,0,m,t.width,t.height,t.depth,0,r,p,t.data);else if(o.isFramebufferTexture){if(w)if(C)n.texStorage2D(e.TEXTURE_2D,E,m,t.width,t.height);else{let i=t.width,a=t.height;for(let t=0;t>=1,a>>=1}}else if(o.isHTMLTexture){if(`texElementImage2D`in e){let n=e.canvas;if(n.hasAttribute(`layoutsubtree`)||n.setAttribute(`layoutsubtree`,`true`),t.parentNode!==n){n.appendChild(t),d.add(o),n.onpaint=e=>{let t=e.changedElements;for(let e of d)t.includes(e.image)&&(e.needsUpdate=!0)},n.requestPaint();return}if(e.texElementImage2D.length===3)e.texElementImage2D(e.TEXTURE_2D,e.RGBA8,t);else{let n=e.RGBA,r=e.RGBA,i=e.UNSIGNED_BYTE;e.texElementImage2D(e.TEXTURE_2D,0,n,r,i,t)}e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE)}}else if(y.length>0){if(C&&w){let t=Ee(y[0]);n.texStorage2D(e.TEXTURE_2D,E,m,t.width,t.height)}for(let t=0,i=y.length;t0&&D++;let t=Ee(m[0]);n.texStorage2D(e.TEXTURE_CUBE_MAP,D,C,t.width,t.height)}for(let t=0;t<6;t++)if(p){w?E&&n.texSubImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+t,0,0,0,m[t].width,m[t].height,y,x,m[t].data):n.texImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+t,0,C,m[t].width,m[t].height,0,y,x,m[t].data);for(let r=0;r>u),r=Math.max(1,i.height>>u);l===e.TEXTURE_3D||l===e.TEXTURE_2D_ARRAY?n.texImage3D(l,u,p,t,r,i.depth,0,d,f,null):n.texImage2D(l,u,p,t,r,0,d,f,null)}n.bindFramebuffer(e.FRAMEBUFFER,t),N(i)?s.framebufferTexture2DMultisampleEXT(e.FRAMEBUFFER,c,l,h.__webglTexture,0,M(i)):(l===e.TEXTURE_2D||l>=e.TEXTURE_CUBE_MAP_POSITIVE_X&&l<=e.TEXTURE_CUBE_MAP_NEGATIVE_Z)&&e.framebufferTexture2D(e.FRAMEBUFFER,c,l,h.__webglTexture,u),n.bindFramebuffer(e.FRAMEBUFFER,null)}function ge(t,n,r){if(e.bindRenderbuffer(e.RENDERBUFFER,t),n.depthBuffer){let i=n.depthTexture,a=i&&i.isDepthTexture?i.type:null,o=x(n.stencilBuffer,a),c=n.stencilBuffer?e.DEPTH_STENCIL_ATTACHMENT:e.DEPTH_ATTACHMENT;N(n)?s.renderbufferStorageMultisampleEXT(e.RENDERBUFFER,M(n),o,n.width,n.height):r?e.renderbufferStorageMultisample(e.RENDERBUFFER,M(n),o,n.width,n.height):e.renderbufferStorage(e.RENDERBUFFER,o,n.width,n.height),e.framebufferRenderbuffer(e.FRAMEBUFFER,c,e.RENDERBUFFER,t)}else{let t=n.textures;for(let i=0;i{delete i.__boundDepthTexture,delete i.__depthDisposeCallback,e.removeEventListener(`dispose`,t)};e.addEventListener(`dispose`,t),i.__depthDisposeCallback=t}i.__boundDepthTexture=e}if(t.depthTexture&&!i.__autoAllocateDepthBuffer)if(a)for(let e=0;e<6;e++)_e(i.__webglFramebuffer[e],t,e);else{let e=t.texture.mipmaps;e&&e.length>0?_e(i.__webglFramebuffer[0],t,0):_e(i.__webglFramebuffer,t,0)}else if(a){i.__webglDepthbuffer=[];for(let r=0;r<6;r++)if(n.bindFramebuffer(e.FRAMEBUFFER,i.__webglFramebuffer[r]),i.__webglDepthbuffer[r]===void 0)i.__webglDepthbuffer[r]=e.createRenderbuffer(),ge(i.__webglDepthbuffer[r],t,!1);else{let n=t.stencilBuffer?e.DEPTH_STENCIL_ATTACHMENT:e.DEPTH_ATTACHMENT,a=i.__webglDepthbuffer[r];e.bindRenderbuffer(e.RENDERBUFFER,a),e.framebufferRenderbuffer(e.FRAMEBUFFER,n,e.RENDERBUFFER,a)}}else{let r=t.texture.mipmaps;if(r&&r.length>0?n.bindFramebuffer(e.FRAMEBUFFER,i.__webglFramebuffer[0]):n.bindFramebuffer(e.FRAMEBUFFER,i.__webglFramebuffer),i.__webglDepthbuffer===void 0)i.__webglDepthbuffer=e.createRenderbuffer(),ge(i.__webglDepthbuffer,t,!1);else{let n=t.stencilBuffer?e.DEPTH_STENCIL_ATTACHMENT:e.DEPTH_ATTACHMENT,r=i.__webglDepthbuffer;e.bindRenderbuffer(e.RENDERBUFFER,r),e.framebufferRenderbuffer(e.FRAMEBUFFER,n,e.RENDERBUFFER,r)}}n.bindFramebuffer(e.FRAMEBUFFER,null)}function ye(t,n,i){let a=r.get(t);n!==void 0&&he(a.__webglFramebuffer,t,t.texture,e.COLOR_ATTACHMENT0,e.TEXTURE_2D,0),i!==void 0&&ve(t)}function be(t){let i=t.texture,s=r.get(t),c=r.get(i);t.addEventListener(`dispose`,w);let l=t.textures,u=t.isWebGLCubeRenderTarget===!0,d=l.length>1;if(d||(c.__webglTexture===void 0&&(c.__webglTexture=e.createTexture()),c.__version=i.version,o.memory.textures++),u){s.__webglFramebuffer=[];for(let t=0;t<6;t++)if(i.mipmaps&&i.mipmaps.length>0){s.__webglFramebuffer[t]=[];for(let n=0;n0){s.__webglFramebuffer=[];for(let t=0;t0&&N(t)===!1){s.__webglMultisampledFramebuffer=e.createFramebuffer(),s.__webglColorRenderbuffer=[],n.bindFramebuffer(e.FRAMEBUFFER,s.__webglMultisampledFramebuffer);for(let n=0;n0)for(let r=0;r0)for(let n=0;n0){if(N(t)===!1){let i=t.textures,a=t.width,o=t.height,s=e.COLOR_BUFFER_BIT,l=t.stencilBuffer?e.DEPTH_STENCIL_ATTACHMENT:e.DEPTH_ATTACHMENT,u=r.get(t),d=i.length>1;if(d)for(let t=0;t0?n.bindFramebuffer(e.DRAW_FRAMEBUFFER,u.__webglFramebuffer[0]):n.bindFramebuffer(e.DRAW_FRAMEBUFFER,u.__webglFramebuffer);for(let n=0;n0&&t.has(`WEBGL_multisampled_render_to_texture`)===!0&&n.__useRenderToTexture!==!1}function P(e){let t=o.render.frame;u.get(e)!==t&&(u.set(e,t),e.update())}function Te(e,t){let n=e.colorSpace,r=e.format,i=e.type;return e.isCompressedTexture===!0||e.isVideoTexture===!0||n!==`srgb-linear`&&n!==``&&(ru.getTransfer(n)===`srgb`?(r!==1023||i!==1009)&&Y(`WebGLTextures: sRGB encoded textures have to use RGBAFormat and UnsignedByteType.`):_l(`WebGLTextures: Unsupported texture color space:`,n)),t}function Ee(e){return typeof HTMLImageElement<`u`&&e instanceof HTMLImageElement?(l.width=e.naturalWidth||e.width,l.height=e.naturalHeight||e.height):typeof VideoFrame<`u`&&e instanceof VideoFrame?(l.width=e.displayWidth,l.height=e.displayHeight):(l.width=e.width,l.height=e.height),l}this.allocateTextureUnit=ne,this.resetTextureUnits=ee,this.getTextureUnits=k,this.setTextureUnits=te,this.setTexture2D=ie,this.setTexture2DArray=ae,this.setTexture3D=oe,this.setTextureCube=se,this.rebindTextures=ye,this.setupRenderTarget=be,this.updateRenderTargetMipmap=xe,this.updateMultisampleRenderTarget=we,this.setupDepthRenderbuffer=ve,this.setupFrameBufferTexture=he,this.useMultisampledRTT=N,this.isReversedDepthBuffer=function(){return n.buffers.depth.getReversed()}}function ny(e,t){function n(n,r=``){let i,a=ru.getTransfer(r);if(n===1009)return e.UNSIGNED_BYTE;if(n===1017)return e.UNSIGNED_SHORT_4_4_4_4;if(n===1018)return e.UNSIGNED_SHORT_5_5_5_1;if(n===35902)return e.UNSIGNED_INT_5_9_9_9_REV;if(n===35899)return e.UNSIGNED_INT_10F_11F_11F_REV;if(n===1010)return e.BYTE;if(n===1011)return e.SHORT;if(n===1012)return e.UNSIGNED_SHORT;if(n===1013)return e.INT;if(n===1014)return e.UNSIGNED_INT;if(n===1015)return e.FLOAT;if(n===1016)return e.HALF_FLOAT;if(n===1021)return e.ALPHA;if(n===1022)return e.RGB;if(n===1023)return e.RGBA;if(n===1026)return e.DEPTH_COMPONENT;if(n===1027)return e.DEPTH_STENCIL;if(n===1028)return e.RED;if(n===1029)return e.RED_INTEGER;if(n===1030)return e.RG;if(n===1031)return e.RG_INTEGER;if(n===1033)return e.RGBA_INTEGER;if(n===33776||n===33777||n===33778||n===33779)if(a===`srgb`)if(i=t.get(`WEBGL_compressed_texture_s3tc_srgb`),i!==null){if(n===33776)return i.COMPRESSED_SRGB_S3TC_DXT1_EXT;if(n===33777)return i.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT;if(n===33778)return i.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT;if(n===33779)return i.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT}else return null;else if(i=t.get(`WEBGL_compressed_texture_s3tc`),i!==null){if(n===33776)return i.COMPRESSED_RGB_S3TC_DXT1_EXT;if(n===33777)return i.COMPRESSED_RGBA_S3TC_DXT1_EXT;if(n===33778)return i.COMPRESSED_RGBA_S3TC_DXT3_EXT;if(n===33779)return i.COMPRESSED_RGBA_S3TC_DXT5_EXT}else return null;if(n===35840||n===35841||n===35842||n===35843)if(i=t.get(`WEBGL_compressed_texture_pvrtc`),i!==null){if(n===35840)return i.COMPRESSED_RGB_PVRTC_4BPPV1_IMG;if(n===35841)return i.COMPRESSED_RGB_PVRTC_2BPPV1_IMG;if(n===35842)return i.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG;if(n===35843)return i.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG}else return null;if(n===36196||n===37492||n===37496||n===37488||n===37489||n===37490||n===37491)if(i=t.get(`WEBGL_compressed_texture_etc`),i!==null){if(n===36196||n===37492)return a===`srgb`?i.COMPRESSED_SRGB8_ETC2:i.COMPRESSED_RGB8_ETC2;if(n===37496)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC:i.COMPRESSED_RGBA8_ETC2_EAC;if(n===37488)return i.COMPRESSED_R11_EAC;if(n===37489)return i.COMPRESSED_SIGNED_R11_EAC;if(n===37490)return i.COMPRESSED_RG11_EAC;if(n===37491)return i.COMPRESSED_SIGNED_RG11_EAC}else return null;if(n===37808||n===37809||n===37810||n===37811||n===37812||n===37813||n===37814||n===37815||n===37816||n===37817||n===37818||n===37819||n===37820||n===37821)if(i=t.get(`WEBGL_compressed_texture_astc`),i!==null){if(n===37808)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR:i.COMPRESSED_RGBA_ASTC_4x4_KHR;if(n===37809)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR:i.COMPRESSED_RGBA_ASTC_5x4_KHR;if(n===37810)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR:i.COMPRESSED_RGBA_ASTC_5x5_KHR;if(n===37811)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR:i.COMPRESSED_RGBA_ASTC_6x5_KHR;if(n===37812)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR:i.COMPRESSED_RGBA_ASTC_6x6_KHR;if(n===37813)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR:i.COMPRESSED_RGBA_ASTC_8x5_KHR;if(n===37814)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR:i.COMPRESSED_RGBA_ASTC_8x6_KHR;if(n===37815)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR:i.COMPRESSED_RGBA_ASTC_8x8_KHR;if(n===37816)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR:i.COMPRESSED_RGBA_ASTC_10x5_KHR;if(n===37817)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR:i.COMPRESSED_RGBA_ASTC_10x6_KHR;if(n===37818)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR:i.COMPRESSED_RGBA_ASTC_10x8_KHR;if(n===37819)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR:i.COMPRESSED_RGBA_ASTC_10x10_KHR;if(n===37820)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR:i.COMPRESSED_RGBA_ASTC_12x10_KHR;if(n===37821)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR:i.COMPRESSED_RGBA_ASTC_12x12_KHR}else return null;if(n===36492||n===36494||n===36495)if(i=t.get(`EXT_texture_compression_bptc`),i!==null){if(n===36492)return a===`srgb`?i.COMPRESSED_SRGB_ALPHA_BPTC_UNORM_EXT:i.COMPRESSED_RGBA_BPTC_UNORM_EXT;if(n===36494)return i.COMPRESSED_RGB_BPTC_SIGNED_FLOAT_EXT;if(n===36495)return i.COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_EXT}else return null;if(n===36283||n===36284||n===36285||n===36286)if(i=t.get(`EXT_texture_compression_rgtc`),i!==null){if(n===36283)return i.COMPRESSED_RED_RGTC1_EXT;if(n===36284)return i.COMPRESSED_SIGNED_RED_RGTC1_EXT;if(n===36285)return i.COMPRESSED_RED_GREEN_RGTC2_EXT;if(n===36286)return i.COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT}else return null;return n===1020?e.UNSIGNED_INT_24_8:e[n]===void 0?null:e[n]}return{convert:n}}var ry=` +}`,$v=[new X(1,0,0),new X(-1,0,0),new X(0,1,0),new X(0,-1,0),new X(0,0,1),new X(0,0,-1)],ey=[new X(0,-1,0),new X(0,-1,0),new X(0,0,1),new X(0,0,-1),new X(0,-1,0),new X(0,-1,0)],ty=new bu,ny=new X,ry=new X;function iy(e,t,n){let r=new rp,i=new Y,a=new Y,o=new hu,s=new Tm,c=new Em,l={},u=n.maxTextureSize,d={0:1,1:0,2:2},f=new xm({defines:{VSM_SAMPLES:8},uniforms:{shadow_pass:{value:null},resolution:{value:new Y},radius:{value:4}},vertexShader:Zv,fragmentShader:Qv}),p=f.clone();p.defines.HORIZONTAL_PASS=1;let m=new Zd;m.setAttribute(`position`,new Id(new Float32Array([-1,-1,.5,3,-1,.5,-1,3,.5]),3));let h=new Q(m,f),g=this;this.enabled=!1,this.autoUpdate=!0,this.needsUpdate=!1,this.type=1;let _=this.type;this.render=function(t,n,s){if(g.enabled===!1||g.autoUpdate===!1&&g.needsUpdate===!1||t.length===0)return;this.type===2&&(J(`WebGLShadowMap: PCFSoftShadowMap has been deprecated. Using PCFShadowMap instead.`),this.type=1);let c=e.getRenderTarget(),l=e.getActiveCubeFace(),d=e.getActiveMipmapLevel(),f=e.state;f.setBlending(0),f.buffers.depth.getReversed()===!0?f.buffers.color.setClear(0,0,0,0):f.buffers.color.setClear(1,1,1,1),f.buffers.depth.setTest(!0),f.setScissorTest(!1);let p=_!==this.type;p&&n.traverse(function(e){e.material&&(Array.isArray(e.material)?e.material.forEach(e=>e.needsUpdate=!0):e.material.needsUpdate=!0)});for(let c=0,l=t.length;cu||i.y>u)&&(i.x>u&&(a.x=Math.floor(u/m.x),i.x=a.x*m.x,d.mapSize.x=a.x),i.y>u&&(a.y=Math.floor(u/m.y),i.y=a.y*m.y,d.mapSize.y=a.y));let h=e.state.buffers.depth.getReversed();if(d.camera._reversedDepth=h,d.map===null||p===!0){if(d.map!==null&&(d.map.depthTexture!==null&&(d.map.depthTexture.dispose(),d.map.depthTexture=null),d.map.dispose()),this.type===3){if(l.isPointLight){J(`WebGLShadowMap: VSM shadow maps are not supported for PointLights. Use PCF or BasicShadowMap instead.`);continue}d.map=new _u(i.x,i.y,{format:ac,type:Ks,minFilter:Is,magFilter:Is,generateMipmaps:!1}),d.map.texture.name=l.name+`.shadowMap`,d.map.depthTexture=new Dp(i.x,i.y,Gs),d.map.depthTexture.name=l.name+`.shadowMapDepth`,d.map.depthTexture.format=tc,d.map.depthTexture.compareFunction=null,d.map.depthTexture.minFilter=Ns,d.map.depthTexture.magFilter=Ns}else l.isPointLight?(d.map=new Fg(i.x),d.map.depthTexture=new Op(i.x,Ws)):(d.map=new _u(i.x,i.y),d.map.depthTexture=new Dp(i.x,i.y,Ws)),d.map.depthTexture.name=l.name+`.shadowMap`,d.map.depthTexture.format=tc,this.type===1?(d.map.depthTexture.compareFunction=h?518:515,d.map.depthTexture.minFilter=Is,d.map.depthTexture.magFilter=Is):(d.map.depthTexture.compareFunction=null,d.map.depthTexture.minFilter=Ns,d.map.depthTexture.magFilter=Ns);d.camera.updateProjectionMatrix()}let g=d.map.isWebGLCubeRenderTarget?6:1;for(let t=0;t0||n.map&&n.alphaTest>0||n.alphaToCoverage===!0){let e=a.uuid,t=n.uuid,r=l[e];r===void 0&&(r={},l[e]=r);let i=r[t];i===void 0&&(i=a.clone(),r[t]=i,n.addEventListener(`dispose`,x)),a=i}if(a.visible=n.visible,a.wireframe=n.wireframe,i===3?a.side=n.shadowSide===null?n.side:n.shadowSide:a.side=n.shadowSide===null?d[n.side]:n.shadowSide,a.alphaMap=n.alphaMap,a.alphaTest=n.alphaToCoverage===!0?.5:n.alphaTest,a.map=n.map,a.clipShadows=n.clipShadows,a.clippingPlanes=n.clippingPlanes,a.clipIntersection=n.clipIntersection,a.displacementMap=n.displacementMap,a.displacementScale=n.displacementScale,a.displacementBias=n.displacementBias,a.wireframeLinewidth=n.wireframeLinewidth,a.linewidth=n.linewidth,r.isPointLight===!0&&a.isMeshDistanceMaterial===!0){let t=e.properties.get(a);t.light=r}return a}function b(n,i,a,o,s){if(n.visible===!1)return;if(n.layers.test(i.layers)&&(n.isMesh||n.isLine||n.isPoints)&&(n.castShadow||n.receiveShadow&&s===3)&&(!n.frustumCulled||r.intersectsObject(n))){n.modelViewMatrix.multiplyMatrices(a.matrixWorldInverse,n.matrixWorld);let r=t.update(n),c=n.material;if(Array.isArray(c)){let t=r.groups;for(let l=0,u=t.length;l=2):(ie=parseFloat(/^WebGL (\d)/.exec(ae)[1]),re=ie>=1);let oe=null,se={},A=e.getParameter(e.SCISSOR_BOX),ce=e.getParameter(e.VIEWPORT),le=new hu().fromArray(A),ue=new hu().fromArray(ce);function de(t,n,r,i){let a=new Uint8Array(4),o=e.createTexture();e.bindTexture(t,o),e.texParameteri(t,e.TEXTURE_MIN_FILTER,e.NEAREST),e.texParameteri(t,e.TEXTURE_MAG_FILTER,e.NEAREST);for(let o=0;o`u`?!1:/OculusBrowser/g.test(navigator.userAgent),l=new Y,u=new WeakMap,d=new Set,f,p=new WeakMap,m=!1;try{m=typeof OffscreenCanvas<`u`&&new OffscreenCanvas(1,1).getContext(`2d`)!==null}catch{}function h(e,t){return m?new OffscreenCanvas(e,t):pl(`canvas`)}function g(e,t,n){let r=1,i=Ee(e);if((i.width>n||i.height>n)&&(r=n/Math.max(i.width,i.height)),r<1)if(typeof HTMLImageElement<`u`&&e instanceof HTMLImageElement||typeof HTMLCanvasElement<`u`&&e instanceof HTMLCanvasElement||typeof ImageBitmap<`u`&&e instanceof ImageBitmap||typeof VideoFrame<`u`&&e instanceof VideoFrame){let n=Math.floor(r*i.width),a=Math.floor(r*i.height);f===void 0&&(f=h(n,a));let o=t?h(n,a):f;return o.width=n,o.height=a,o.getContext(`2d`).drawImage(e,0,0,n,a),J(`WebGLRenderer: Texture has been resized from (`+i.width+`x`+i.height+`) to (`+n+`x`+a+`).`),o}else return`data`in e&&J(`WebGLRenderer: Image in DataTexture is too big (`+i.width+`x`+i.height+`).`),e;return e}function _(e){return e.generateMipmaps}function v(t){e.generateMipmap(t)}function y(t){return t.isWebGLCubeRenderTarget?e.TEXTURE_CUBE_MAP:t.isWebGL3DRenderTarget?e.TEXTURE_3D:t.isWebGLArrayRenderTarget||t.isCompressedArrayTexture?e.TEXTURE_2D_ARRAY:e.TEXTURE_2D}function b(n,r,i,a,o,s=!1){if(n!==null){if(e[n]!==void 0)return e[n];J(`WebGLRenderer: Attempt to use non-existing WebGL internal format '`+n+`'`)}let c;a&&(c=t.get(`EXT_texture_norm16`),c||J(`WebGLRenderer: Unable to use normalized textures without EXT_texture_norm16 extension`));let l=r;if(r===e.RED&&(i===e.FLOAT&&(l=e.R32F),i===e.HALF_FLOAT&&(l=e.R16F),i===e.UNSIGNED_BYTE&&(l=e.R8),i===e.UNSIGNED_SHORT&&c&&(l=c.R16_EXT),i===e.SHORT&&c&&(l=c.R16_SNORM_EXT)),r===e.RED_INTEGER&&(i===e.UNSIGNED_BYTE&&(l=e.R8UI),i===e.UNSIGNED_SHORT&&(l=e.R16UI),i===e.UNSIGNED_INT&&(l=e.R32UI),i===e.BYTE&&(l=e.R8I),i===e.SHORT&&(l=e.R16I),i===e.INT&&(l=e.R32I)),r===e.RG&&(i===e.FLOAT&&(l=e.RG32F),i===e.HALF_FLOAT&&(l=e.RG16F),i===e.UNSIGNED_BYTE&&(l=e.RG8),i===e.UNSIGNED_SHORT&&c&&(l=c.RG16_EXT),i===e.SHORT&&c&&(l=c.RG16_SNORM_EXT)),r===e.RG_INTEGER&&(i===e.UNSIGNED_BYTE&&(l=e.RG8UI),i===e.UNSIGNED_SHORT&&(l=e.RG16UI),i===e.UNSIGNED_INT&&(l=e.RG32UI),i===e.BYTE&&(l=e.RG8I),i===e.SHORT&&(l=e.RG16I),i===e.INT&&(l=e.RG32I)),r===e.RGB_INTEGER&&(i===e.UNSIGNED_BYTE&&(l=e.RGB8UI),i===e.UNSIGNED_SHORT&&(l=e.RGB16UI),i===e.UNSIGNED_INT&&(l=e.RGB32UI),i===e.BYTE&&(l=e.RGB8I),i===e.SHORT&&(l=e.RGB16I),i===e.INT&&(l=e.RGB32I)),r===e.RGBA_INTEGER&&(i===e.UNSIGNED_BYTE&&(l=e.RGBA8UI),i===e.UNSIGNED_SHORT&&(l=e.RGBA16UI),i===e.UNSIGNED_INT&&(l=e.RGBA32UI),i===e.BYTE&&(l=e.RGBA8I),i===e.SHORT&&(l=e.RGBA16I),i===e.INT&&(l=e.RGBA32I)),r===e.RGB&&(i===e.UNSIGNED_SHORT&&c&&(l=c.RGB16_EXT),i===e.SHORT&&c&&(l=c.RGB16_SNORM_EXT),i===e.UNSIGNED_INT_5_9_9_9_REV&&(l=e.RGB9_E5),i===e.UNSIGNED_INT_10F_11F_11F_REV&&(l=e.R11F_G11F_B10F)),r===e.RGBA){let t=s?al:iu.getTransfer(o);i===e.FLOAT&&(l=e.RGBA32F),i===e.HALF_FLOAT&&(l=e.RGBA16F),i===e.UNSIGNED_BYTE&&(l=t===`srgb`?e.SRGB8_ALPHA8:e.RGBA8),i===e.UNSIGNED_SHORT&&c&&(l=c.RGBA16_EXT),i===e.SHORT&&c&&(l=c.RGBA16_SNORM_EXT),i===e.UNSIGNED_SHORT_4_4_4_4&&(l=e.RGBA4),i===e.UNSIGNED_SHORT_5_5_5_1&&(l=e.RGB5_A1)}return(l===e.R16F||l===e.R32F||l===e.RG16F||l===e.RG32F||l===e.RGBA16F||l===e.RGBA32F)&&t.get(`EXT_color_buffer_float`),l}function x(t,n){let r;return t?n===null||n===1014||n===1020?r=e.DEPTH24_STENCIL8:n===1015?r=e.DEPTH32F_STENCIL8:n===1012&&(r=e.DEPTH24_STENCIL8,J(`DepthTexture: 16 bit depth attachment is not supported with stencil. Using 24-bit attachment.`)):n===null||n===1014||n===1020?r=e.DEPTH_COMPONENT24:n===1015?r=e.DEPTH_COMPONENT32F:n===1012&&(r=e.DEPTH_COMPONENT16),r}function S(e,t){return _(e)===!0||e.isFramebufferTexture&&e.minFilter!==1003&&e.minFilter!==1006?Math.log2(Math.max(t.width,t.height))+1:e.mipmaps!==void 0&&e.mipmaps.length>0?e.mipmaps.length:e.isCompressedTexture&&Array.isArray(e.image)?t.mipmaps.length:1}function C(e){let t=e.target;t.removeEventListener(`dispose`,C),T(t),t.isVideoTexture&&u.delete(t),t.isHTMLTexture&&d.delete(t)}function w(e){let t=e.target;t.removeEventListener(`dispose`,w),D(t)}function T(e){let t=r.get(e);if(t.__webglInit===void 0)return;let n=e.source,i=p.get(n);if(i){let r=i[t.__cacheKey];r.usedTimes--,r.usedTimes===0&&E(e),Object.keys(i).length===0&&p.delete(n)}r.remove(e)}function E(t){let n=r.get(t);e.deleteTexture(n.__webglTexture);let i=t.source,a=p.get(i);delete a[n.__cacheKey],o.memory.textures--}function D(t){let n=r.get(t);if(t.depthTexture&&(t.depthTexture.dispose(),r.remove(t.depthTexture)),t.isWebGLCubeRenderTarget)for(let t=0;t<6;t++){if(Array.isArray(n.__webglFramebuffer[t]))for(let r=0;r=i.maxTextures&&J(`WebGLTextures: Trying to use `+e+` texture units while this GPU supports only `+i.maxTextures),O+=1,e}function re(e){let t=[];return t.push(e.wrapS),t.push(e.wrapT),t.push(e.wrapR||0),t.push(e.magFilter),t.push(e.minFilter),t.push(e.anisotropy),t.push(e.internalFormat),t.push(e.format),t.push(e.type),t.push(e.generateMipmaps),t.push(e.premultiplyAlpha),t.push(e.flipY),t.push(e.unpackAlignment),t.push(e.colorSpace),t.join()}function ie(t,i){let a=r.get(t);if(t.isVideoTexture&&P(t),t.isRenderTargetTexture===!1&&t.isExternalTexture!==!0&&t.version>0&&a.__version!==t.version){let e=t.image;if(e===null)J(`WebGLRenderer: Texture marked for update but no image data found.`);else if(e.complete===!1)J(`WebGLRenderer: Texture marked for update but image is incomplete`);else{pe(a,t,i);return}}else t.isExternalTexture&&(a.__webglTexture=t.sourceTexture?t.sourceTexture:null);n.bindTexture(e.TEXTURE_2D,a.__webglTexture,e.TEXTURE0+i)}function ae(t,i){let a=r.get(t);if(t.isRenderTargetTexture===!1&&t.version>0&&a.__version!==t.version){pe(a,t,i);return}else t.isExternalTexture&&(a.__webglTexture=t.sourceTexture?t.sourceTexture:null);n.bindTexture(e.TEXTURE_2D_ARRAY,a.__webglTexture,e.TEXTURE0+i)}function oe(t,i){let a=r.get(t);if(t.isRenderTargetTexture===!1&&t.version>0&&a.__version!==t.version){pe(a,t,i);return}n.bindTexture(e.TEXTURE_3D,a.__webglTexture,e.TEXTURE0+i)}function se(t,i){let a=r.get(t);if(t.isCubeDepthTexture!==!0&&t.version>0&&a.__version!==t.version){me(a,t,i);return}n.bindTexture(e.TEXTURE_CUBE_MAP,a.__webglTexture,e.TEXTURE0+i)}let A={[As]:e.REPEAT,[js]:e.CLAMP_TO_EDGE,[Ms]:e.MIRRORED_REPEAT},ce={[Ns]:e.NEAREST,[Ps]:e.NEAREST_MIPMAP_NEAREST,[Fs]:e.NEAREST_MIPMAP_LINEAR,[Is]:e.LINEAR,[Ls]:e.LINEAR_MIPMAP_NEAREST,[Rs]:e.LINEAR_MIPMAP_LINEAR},le={512:e.NEVER,519:e.ALWAYS,513:e.LESS,515:e.LEQUAL,514:e.EQUAL,518:e.GEQUAL,516:e.GREATER,517:e.NOTEQUAL};function ue(n,a){if(a.type===1015&&t.has(`OES_texture_float_linear`)===!1&&(a.magFilter===1006||a.magFilter===1007||a.magFilter===1005||a.magFilter===1008||a.minFilter===1006||a.minFilter===1007||a.minFilter===1005||a.minFilter===1008)&&J(`WebGLRenderer: Unable to use linear filtering with floating point textures. OES_texture_float_linear not supported on this device.`),e.texParameteri(n,e.TEXTURE_WRAP_S,A[a.wrapS]),e.texParameteri(n,e.TEXTURE_WRAP_T,A[a.wrapT]),(n===e.TEXTURE_3D||n===e.TEXTURE_2D_ARRAY)&&e.texParameteri(n,e.TEXTURE_WRAP_R,A[a.wrapR]),e.texParameteri(n,e.TEXTURE_MAG_FILTER,ce[a.magFilter]),e.texParameteri(n,e.TEXTURE_MIN_FILTER,ce[a.minFilter]),a.compareFunction&&(e.texParameteri(n,e.TEXTURE_COMPARE_MODE,e.COMPARE_REF_TO_TEXTURE),e.texParameteri(n,e.TEXTURE_COMPARE_FUNC,le[a.compareFunction])),t.has(`EXT_texture_filter_anisotropic`)===!0){if(a.magFilter===1003||a.minFilter!==1005&&a.minFilter!==1008||a.type===1015&&t.has(`OES_texture_float_linear`)===!1)return;if(a.anisotropy>1||r.get(a).__currentAnisotropy){let o=t.get(`EXT_texture_filter_anisotropic`);e.texParameterf(n,o.TEXTURE_MAX_ANISOTROPY_EXT,Math.min(a.anisotropy,i.getMaxAnisotropy())),r.get(a).__currentAnisotropy=a.anisotropy}}}function de(t,n){let r=!1;t.__webglInit===void 0&&(t.__webglInit=!0,n.addEventListener(`dispose`,C));let i=n.source,a=p.get(i);a===void 0&&(a={},p.set(i,a));let s=re(n);if(s!==t.__cacheKey){a[s]===void 0&&(a[s]={texture:e.createTexture(),usedTimes:0},o.memory.textures++,r=!0),a[s].usedTimes++;let i=a[t.__cacheKey];i!==void 0&&(a[t.__cacheKey].usedTimes--,i.usedTimes===0&&E(n)),t.__cacheKey=s,t.__webglTexture=a[s].texture}return r}function j(e,t,n){return Math.floor(Math.floor(e/n)/t)}function fe(t,r,i,a){let o=t.updateRanges;if(o.length===0)n.texSubImage2D(e.TEXTURE_2D,0,0,0,r.width,r.height,i,a,r.data);else{o.sort((e,t)=>e.start-t.start);let s=0;for(let e=1;e0){C&&w&&n.texStorage2D(e.TEXTURE_2D,E,m,y[0].width,y[0].height);for(let t=0,i=y.length;t0){let t=tg(h.width,h.height,o.format,o.type);for(let a of o.layerUpdates){let o=h.data.subarray(a*t/h.data.BYTES_PER_ELEMENT,(a+1)*t/h.data.BYTES_PER_ELEMENT);n.compressedTexSubImage3D(e.TEXTURE_2D_ARRAY,i,0,0,a,h.width,h.height,1,r,o)}o.clearLayerUpdates()}else n.compressedTexSubImage3D(e.TEXTURE_2D_ARRAY,i,0,0,0,h.width,h.height,t.depth,r,h.data)}else n.compressedTexImage3D(e.TEXTURE_2D_ARRAY,i,m,h.width,h.height,t.depth,0,h.data,0,0);else J(`WebGLRenderer: Attempt to load unsupported compressed texture format in .uploadTexture()`);else C?T&&n.texSubImage3D(e.TEXTURE_2D_ARRAY,i,0,0,0,h.width,h.height,t.depth,r,p,h.data):n.texImage3D(e.TEXTURE_2D_ARRAY,i,m,h.width,h.height,t.depth,0,r,p,h.data)}else{C&&w&&n.texStorage2D(e.TEXTURE_2D,E,m,y[0].width,y[0].height);for(let t=0,i=y.length;t0){let i=tg(t.width,t.height,o.format,o.type);for(let a of o.layerUpdates){let o=t.data.subarray(a*i/t.data.BYTES_PER_ELEMENT,(a+1)*i/t.data.BYTES_PER_ELEMENT);n.texSubImage3D(e.TEXTURE_2D_ARRAY,0,0,0,a,t.width,t.height,1,r,p,o)}o.clearLayerUpdates()}else n.texSubImage3D(e.TEXTURE_2D_ARRAY,0,0,0,0,t.width,t.height,t.depth,r,p,t.data)}else n.texImage3D(e.TEXTURE_2D_ARRAY,0,m,t.width,t.height,t.depth,0,r,p,t.data);else if(o.isData3DTexture)C?(w&&n.texStorage3D(e.TEXTURE_3D,E,m,t.width,t.height,t.depth),T&&n.texSubImage3D(e.TEXTURE_3D,0,0,0,0,t.width,t.height,t.depth,r,p,t.data)):n.texImage3D(e.TEXTURE_3D,0,m,t.width,t.height,t.depth,0,r,p,t.data);else if(o.isFramebufferTexture){if(w)if(C)n.texStorage2D(e.TEXTURE_2D,E,m,t.width,t.height);else{let i=t.width,a=t.height;for(let t=0;t>=1,a>>=1}}else if(o.isHTMLTexture){if(`texElementImage2D`in e){let n=e.canvas;if(n.hasAttribute(`layoutsubtree`)||n.setAttribute(`layoutsubtree`,`true`),t.parentNode!==n){n.appendChild(t),d.add(o),n.onpaint=e=>{let t=e.changedElements;for(let e of d)t.includes(e.image)&&(e.needsUpdate=!0)},n.requestPaint();return}if(e.texElementImage2D.length===3)e.texElementImage2D(e.TEXTURE_2D,e.RGBA8,t);else{let n=e.RGBA,r=e.RGBA,i=e.UNSIGNED_BYTE;e.texElementImage2D(e.TEXTURE_2D,0,n,r,i,t)}e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE)}}else if(y.length>0){if(C&&w){let t=Ee(y[0]);n.texStorage2D(e.TEXTURE_2D,E,m,t.width,t.height)}for(let t=0,i=y.length;t0&&D++;let t=Ee(m[0]);n.texStorage2D(e.TEXTURE_CUBE_MAP,D,C,t.width,t.height)}for(let t=0;t<6;t++)if(p){w?E&&n.texSubImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+t,0,0,0,m[t].width,m[t].height,y,x,m[t].data):n.texImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X+t,0,C,m[t].width,m[t].height,0,y,x,m[t].data);for(let r=0;r>u),r=Math.max(1,i.height>>u);l===e.TEXTURE_3D||l===e.TEXTURE_2D_ARRAY?n.texImage3D(l,u,p,t,r,i.depth,0,d,f,null):n.texImage2D(l,u,p,t,r,0,d,f,null)}n.bindFramebuffer(e.FRAMEBUFFER,t),N(i)?s.framebufferTexture2DMultisampleEXT(e.FRAMEBUFFER,c,l,h.__webglTexture,0,M(i)):(l===e.TEXTURE_2D||l>=e.TEXTURE_CUBE_MAP_POSITIVE_X&&l<=e.TEXTURE_CUBE_MAP_NEGATIVE_Z)&&e.framebufferTexture2D(e.FRAMEBUFFER,c,l,h.__webglTexture,u),n.bindFramebuffer(e.FRAMEBUFFER,null)}function ge(t,n,r){if(e.bindRenderbuffer(e.RENDERBUFFER,t),n.depthBuffer){let i=n.depthTexture,a=i&&i.isDepthTexture?i.type:null,o=x(n.stencilBuffer,a),c=n.stencilBuffer?e.DEPTH_STENCIL_ATTACHMENT:e.DEPTH_ATTACHMENT;N(n)?s.renderbufferStorageMultisampleEXT(e.RENDERBUFFER,M(n),o,n.width,n.height):r?e.renderbufferStorageMultisample(e.RENDERBUFFER,M(n),o,n.width,n.height):e.renderbufferStorage(e.RENDERBUFFER,o,n.width,n.height),e.framebufferRenderbuffer(e.FRAMEBUFFER,c,e.RENDERBUFFER,t)}else{let t=n.textures;for(let i=0;i{delete i.__boundDepthTexture,delete i.__depthDisposeCallback,e.removeEventListener(`dispose`,t)};e.addEventListener(`dispose`,t),i.__depthDisposeCallback=t}i.__boundDepthTexture=e}if(t.depthTexture&&!i.__autoAllocateDepthBuffer)if(a)for(let e=0;e<6;e++)_e(i.__webglFramebuffer[e],t,e);else{let e=t.texture.mipmaps;e&&e.length>0?_e(i.__webglFramebuffer[0],t,0):_e(i.__webglFramebuffer,t,0)}else if(a){i.__webglDepthbuffer=[];for(let r=0;r<6;r++)if(n.bindFramebuffer(e.FRAMEBUFFER,i.__webglFramebuffer[r]),i.__webglDepthbuffer[r]===void 0)i.__webglDepthbuffer[r]=e.createRenderbuffer(),ge(i.__webglDepthbuffer[r],t,!1);else{let n=t.stencilBuffer?e.DEPTH_STENCIL_ATTACHMENT:e.DEPTH_ATTACHMENT,a=i.__webglDepthbuffer[r];e.bindRenderbuffer(e.RENDERBUFFER,a),e.framebufferRenderbuffer(e.FRAMEBUFFER,n,e.RENDERBUFFER,a)}}else{let r=t.texture.mipmaps;if(r&&r.length>0?n.bindFramebuffer(e.FRAMEBUFFER,i.__webglFramebuffer[0]):n.bindFramebuffer(e.FRAMEBUFFER,i.__webglFramebuffer),i.__webglDepthbuffer===void 0)i.__webglDepthbuffer=e.createRenderbuffer(),ge(i.__webglDepthbuffer,t,!1);else{let n=t.stencilBuffer?e.DEPTH_STENCIL_ATTACHMENT:e.DEPTH_ATTACHMENT,r=i.__webglDepthbuffer;e.bindRenderbuffer(e.RENDERBUFFER,r),e.framebufferRenderbuffer(e.FRAMEBUFFER,n,e.RENDERBUFFER,r)}}n.bindFramebuffer(e.FRAMEBUFFER,null)}function ye(t,n,i){let a=r.get(t);n!==void 0&&he(a.__webglFramebuffer,t,t.texture,e.COLOR_ATTACHMENT0,e.TEXTURE_2D,0),i!==void 0&&ve(t)}function be(t){let i=t.texture,s=r.get(t),c=r.get(i);t.addEventListener(`dispose`,w);let l=t.textures,u=t.isWebGLCubeRenderTarget===!0,d=l.length>1;if(d||(c.__webglTexture===void 0&&(c.__webglTexture=e.createTexture()),c.__version=i.version,o.memory.textures++),u){s.__webglFramebuffer=[];for(let t=0;t<6;t++)if(i.mipmaps&&i.mipmaps.length>0){s.__webglFramebuffer[t]=[];for(let n=0;n0){s.__webglFramebuffer=[];for(let t=0;t0&&N(t)===!1){s.__webglMultisampledFramebuffer=e.createFramebuffer(),s.__webglColorRenderbuffer=[],n.bindFramebuffer(e.FRAMEBUFFER,s.__webglMultisampledFramebuffer);for(let n=0;n0)for(let r=0;r0)for(let n=0;n0){if(N(t)===!1){let i=t.textures,a=t.width,o=t.height,s=e.COLOR_BUFFER_BIT,l=t.stencilBuffer?e.DEPTH_STENCIL_ATTACHMENT:e.DEPTH_ATTACHMENT,u=r.get(t),d=i.length>1;if(d)for(let t=0;t0?n.bindFramebuffer(e.DRAW_FRAMEBUFFER,u.__webglFramebuffer[0]):n.bindFramebuffer(e.DRAW_FRAMEBUFFER,u.__webglFramebuffer);for(let n=0;n0&&t.has(`WEBGL_multisampled_render_to_texture`)===!0&&n.__useRenderToTexture!==!1}function P(e){let t=o.render.frame;u.get(e)!==t&&(u.set(e,t),e.update())}function Te(e,t){let n=e.colorSpace,r=e.format,i=e.type;return e.isCompressedTexture===!0||e.isVideoTexture===!0||n!==`srgb-linear`&&n!==``&&(iu.getTransfer(n)===`srgb`?(r!==1023||i!==1009)&&J(`WebGLTextures: sRGB encoded textures have to use RGBAFormat and UnsignedByteType.`):vl(`WebGLTextures: Unsupported texture color space:`,n)),t}function Ee(e){return typeof HTMLImageElement<`u`&&e instanceof HTMLImageElement?(l.width=e.naturalWidth||e.width,l.height=e.naturalHeight||e.height):typeof VideoFrame<`u`&&e instanceof VideoFrame?(l.width=e.displayWidth,l.height=e.displayHeight):(l.width=e.width,l.height=e.height),l}this.allocateTextureUnit=ne,this.resetTextureUnits=ee,this.getTextureUnits=k,this.setTextureUnits=te,this.setTexture2D=ie,this.setTexture2DArray=ae,this.setTexture3D=oe,this.setTextureCube=se,this.rebindTextures=ye,this.setupRenderTarget=be,this.updateRenderTargetMipmap=xe,this.updateMultisampleRenderTarget=we,this.setupDepthRenderbuffer=ve,this.setupFrameBufferTexture=he,this.useMultisampledRTT=N,this.isReversedDepthBuffer=function(){return n.buffers.depth.getReversed()}}function sy(e,t){function n(n,r=``){let i,a=iu.getTransfer(r);if(n===1009)return e.UNSIGNED_BYTE;if(n===1017)return e.UNSIGNED_SHORT_4_4_4_4;if(n===1018)return e.UNSIGNED_SHORT_5_5_5_1;if(n===35902)return e.UNSIGNED_INT_5_9_9_9_REV;if(n===35899)return e.UNSIGNED_INT_10F_11F_11F_REV;if(n===1010)return e.BYTE;if(n===1011)return e.SHORT;if(n===1012)return e.UNSIGNED_SHORT;if(n===1013)return e.INT;if(n===1014)return e.UNSIGNED_INT;if(n===1015)return e.FLOAT;if(n===1016)return e.HALF_FLOAT;if(n===1021)return e.ALPHA;if(n===1022)return e.RGB;if(n===1023)return e.RGBA;if(n===1026)return e.DEPTH_COMPONENT;if(n===1027)return e.DEPTH_STENCIL;if(n===1028)return e.RED;if(n===1029)return e.RED_INTEGER;if(n===1030)return e.RG;if(n===1031)return e.RG_INTEGER;if(n===1033)return e.RGBA_INTEGER;if(n===33776||n===33777||n===33778||n===33779)if(a===`srgb`)if(i=t.get(`WEBGL_compressed_texture_s3tc_srgb`),i!==null){if(n===33776)return i.COMPRESSED_SRGB_S3TC_DXT1_EXT;if(n===33777)return i.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT;if(n===33778)return i.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT;if(n===33779)return i.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT}else return null;else if(i=t.get(`WEBGL_compressed_texture_s3tc`),i!==null){if(n===33776)return i.COMPRESSED_RGB_S3TC_DXT1_EXT;if(n===33777)return i.COMPRESSED_RGBA_S3TC_DXT1_EXT;if(n===33778)return i.COMPRESSED_RGBA_S3TC_DXT3_EXT;if(n===33779)return i.COMPRESSED_RGBA_S3TC_DXT5_EXT}else return null;if(n===35840||n===35841||n===35842||n===35843)if(i=t.get(`WEBGL_compressed_texture_pvrtc`),i!==null){if(n===35840)return i.COMPRESSED_RGB_PVRTC_4BPPV1_IMG;if(n===35841)return i.COMPRESSED_RGB_PVRTC_2BPPV1_IMG;if(n===35842)return i.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG;if(n===35843)return i.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG}else return null;if(n===36196||n===37492||n===37496||n===37488||n===37489||n===37490||n===37491)if(i=t.get(`WEBGL_compressed_texture_etc`),i!==null){if(n===36196||n===37492)return a===`srgb`?i.COMPRESSED_SRGB8_ETC2:i.COMPRESSED_RGB8_ETC2;if(n===37496)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC:i.COMPRESSED_RGBA8_ETC2_EAC;if(n===37488)return i.COMPRESSED_R11_EAC;if(n===37489)return i.COMPRESSED_SIGNED_R11_EAC;if(n===37490)return i.COMPRESSED_RG11_EAC;if(n===37491)return i.COMPRESSED_SIGNED_RG11_EAC}else return null;if(n===37808||n===37809||n===37810||n===37811||n===37812||n===37813||n===37814||n===37815||n===37816||n===37817||n===37818||n===37819||n===37820||n===37821)if(i=t.get(`WEBGL_compressed_texture_astc`),i!==null){if(n===37808)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR:i.COMPRESSED_RGBA_ASTC_4x4_KHR;if(n===37809)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR:i.COMPRESSED_RGBA_ASTC_5x4_KHR;if(n===37810)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR:i.COMPRESSED_RGBA_ASTC_5x5_KHR;if(n===37811)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR:i.COMPRESSED_RGBA_ASTC_6x5_KHR;if(n===37812)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR:i.COMPRESSED_RGBA_ASTC_6x6_KHR;if(n===37813)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR:i.COMPRESSED_RGBA_ASTC_8x5_KHR;if(n===37814)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR:i.COMPRESSED_RGBA_ASTC_8x6_KHR;if(n===37815)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR:i.COMPRESSED_RGBA_ASTC_8x8_KHR;if(n===37816)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR:i.COMPRESSED_RGBA_ASTC_10x5_KHR;if(n===37817)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR:i.COMPRESSED_RGBA_ASTC_10x6_KHR;if(n===37818)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR:i.COMPRESSED_RGBA_ASTC_10x8_KHR;if(n===37819)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR:i.COMPRESSED_RGBA_ASTC_10x10_KHR;if(n===37820)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR:i.COMPRESSED_RGBA_ASTC_12x10_KHR;if(n===37821)return a===`srgb`?i.COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR:i.COMPRESSED_RGBA_ASTC_12x12_KHR}else return null;if(n===36492||n===36494||n===36495)if(i=t.get(`EXT_texture_compression_bptc`),i!==null){if(n===36492)return a===`srgb`?i.COMPRESSED_SRGB_ALPHA_BPTC_UNORM_EXT:i.COMPRESSED_RGBA_BPTC_UNORM_EXT;if(n===36494)return i.COMPRESSED_RGB_BPTC_SIGNED_FLOAT_EXT;if(n===36495)return i.COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_EXT}else return null;if(n===36283||n===36284||n===36285||n===36286)if(i=t.get(`EXT_texture_compression_rgtc`),i!==null){if(n===36283)return i.COMPRESSED_RED_RGTC1_EXT;if(n===36284)return i.COMPRESSED_SIGNED_RED_RGTC1_EXT;if(n===36285)return i.COMPRESSED_RED_GREEN_RGTC2_EXT;if(n===36286)return i.COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT}else return null;return n===1020?e.UNSIGNED_INT_24_8:e[n]===void 0?null:e[n]}return{convert:n}}var cy=` void main() { gl_Position = vec4( position, 1.0 ); -}`,iy=` +}`,ly=` uniform sampler2DArray depthColor; uniform float depthWidth; uniform float depthHeight; @@ -4105,7 +4105,7 @@ void main() { } -}`,ay=class{constructor(){this.texture=null,this.mesh=null,this.depthNear=0,this.depthFar=0}init(e,t){if(this.texture===null){let n=new kp(e.texture);(e.depthNear!==t.depthNear||e.depthFar!==t.depthFar)&&(this.depthNear=e.depthNear,this.depthFar=e.depthFar),this.texture=n}}getMesh(e){if(this.texture!==null&&this.mesh===null){let t=e.cameras[0].viewport,n=new xm({vertexShader:ry,fragmentShader:iy,uniforms:{depthColor:{value:this.texture},depthWidth:{value:t.z},depthHeight:{value:t.w}}});this.mesh=new Cf(new lm(20,20),n)}return this.mesh}reset(){this.texture=null,this.mesh=null}getDepthTexture(){return this.texture}},oy=class extends xl{constructor(e,t){super();let n=this,r=null,i=1,a=null,o=`local-floor`,s=1,c=null,l=null,u=null,d=null,f=null,p=null,m=typeof XRWebGLBinding<`u`,h=new ay,g={},_=t.getContextAttributes(),v=null,y=null,b=[],x=[],S=new X,C=null,w=new gh;w.viewport=new mu;let T=new gh;T.viewport=new mu;let E=[w,T],D=new jh,O=null,ee=null;this.cameraAutoUpdate=!0,this.enabled=!1,this.isPresenting=!1,this.getController=function(e){let t=b[e];return t===void 0&&(t=new Yu,b[e]=t),t.getTargetRaySpace()},this.getControllerGrip=function(e){let t=b[e];return t===void 0&&(t=new Yu,b[e]=t),t.getGripSpace()},this.getHand=function(e){let t=b[e];return t===void 0&&(t=new Yu,b[e]=t),t.getHandSpace()};function k(e){let t=x.indexOf(e.inputSource);if(t===-1)return;let n=b[t];n!==void 0&&(n.update(e.inputSource,e.frame,c||a),n.dispatchEvent({type:e.type,data:e.inputSource}))}function te(){r.removeEventListener(`select`,k),r.removeEventListener(`selectstart`,k),r.removeEventListener(`selectend`,k),r.removeEventListener(`squeeze`,k),r.removeEventListener(`squeezestart`,k),r.removeEventListener(`squeezeend`,k),r.removeEventListener(`end`,te),r.removeEventListener(`inputsourceschange`,ne);for(let e=0;e=0&&(x[r]=null,b[r].disconnect(n))}for(let t=0;t=x.length){x.push(n),r=e;break}else if(x[e]===null){x[e]=n,r=e;break}if(r===-1)break}let i=b[r];i&&i.connect(n)}}let re=new Z,ie=new Z;function ae(e,t,n){re.setFromMatrixPosition(t.matrixWorld),ie.setFromMatrixPosition(n.matrixWorld);let r=re.distanceTo(ie),i=t.projectionMatrix.elements,a=n.projectionMatrix.elements,o=i[14]/(i[10]-1),s=i[14]/(i[10]+1),c=(i[9]+1)/i[5],l=(i[9]-1)/i[5],u=(i[8]-1)/i[0],d=(a[8]+1)/a[0],f=o*u,p=o*d,m=r/(-u+d),h=m*-u;if(t.matrixWorld.decompose(e.position,e.quaternion,e.scale),e.translateX(h),e.translateZ(m),e.matrixWorld.compose(e.position,e.quaternion,e.scale),e.matrixWorldInverse.copy(e.matrixWorld).invert(),i[10]===-1)e.projectionMatrix.copy(t.projectionMatrix),e.projectionMatrixInverse.copy(t.projectionMatrixInverse);else{let t=o+m,n=s+m,i=f-h,a=p+(r-h),u=c*s/n*t,d=l*s/n*t;e.projectionMatrix.makePerspective(i,a,u,d,t,n),e.projectionMatrixInverse.copy(e.projectionMatrix).invert()}}function oe(e,t){t===null?e.matrixWorld.copy(e.matrix):e.matrixWorld.multiplyMatrices(t.matrixWorld,e.matrix),e.matrixWorldInverse.copy(e.matrixWorld).invert()}this.updateCamera=function(e){if(r===null)return;let t=e.near,n=e.far;h.texture!==null&&(h.depthNear>0&&(t=h.depthNear),h.depthFar>0&&(n=h.depthFar)),D.near=T.near=w.near=t,D.far=T.far=w.far=n,(O!==D.near||ee!==D.far)&&(r.updateRenderState({depthNear:D.near,depthFar:D.far}),O=D.near,ee=D.far),D.layers.mask=e.layers.mask|6,w.layers.mask=D.layers.mask&-5,T.layers.mask=D.layers.mask&-3;let i=e.parent,a=D.cameras;oe(D,i);for(let e=0;e0&&(e.alphaTest.value=r.alphaTest);let i=t.get(r),a=i.envMap,o=i.envMapRotation;a&&(e.envMap.value=a,e.envMapRotation.value.setFromMatrix4(sy.makeRotationFromEuler(o)).transpose(),a.isCubeTexture&&a.isRenderTargetTexture===!1&&e.envMapRotation.value.premultiply(cy),e.reflectivity.value=r.reflectivity,e.ior.value=r.ior,e.refractionRatio.value=r.refractionRatio),r.lightMap&&(e.lightMap.value=r.lightMap,e.lightMapIntensity.value=r.lightMapIntensity,n(r.lightMap,e.lightMapTransform)),r.aoMap&&(e.aoMap.value=r.aoMap,e.aoMapIntensity.value=r.aoMapIntensity,n(r.aoMap,e.aoMapTransform))}function o(e,t){e.diffuse.value.copy(t.color),e.opacity.value=t.opacity,t.map&&(e.map.value=t.map,n(t.map,e.mapTransform))}function s(e,t){e.dashSize.value=t.dashSize,e.totalSize.value=t.dashSize+t.gapSize,e.scale.value=t.scale}function c(e,t,r,i){e.diffuse.value.copy(t.color),e.opacity.value=t.opacity,e.size.value=t.size*r,e.scale.value=i*.5,t.map&&(e.map.value=t.map,n(t.map,e.uvTransform)),t.alphaMap&&(e.alphaMap.value=t.alphaMap,n(t.alphaMap,e.alphaMapTransform)),t.alphaTest>0&&(e.alphaTest.value=t.alphaTest)}function l(e,t){e.diffuse.value.copy(t.color),e.opacity.value=t.opacity,e.rotation.value=t.rotation,t.map&&(e.map.value=t.map,n(t.map,e.mapTransform)),t.alphaMap&&(e.alphaMap.value=t.alphaMap,n(t.alphaMap,e.alphaMapTransform)),t.alphaTest>0&&(e.alphaTest.value=t.alphaTest)}function u(e,t){e.specular.value.copy(t.specular),e.shininess.value=Math.max(t.shininess,1e-4)}function d(e,t){t.gradientMap&&(e.gradientMap.value=t.gradientMap)}function f(e,t){e.metalness.value=t.metalness,t.metalnessMap&&(e.metalnessMap.value=t.metalnessMap,n(t.metalnessMap,e.metalnessMapTransform)),e.roughness.value=t.roughness,t.roughnessMap&&(e.roughnessMap.value=t.roughnessMap,n(t.roughnessMap,e.roughnessMapTransform)),t.envMap&&(e.envMapIntensity.value=t.envMapIntensity)}function p(e,t,r){e.ior.value=t.ior,t.sheen>0&&(e.sheenColor.value.copy(t.sheenColor).multiplyScalar(t.sheen),e.sheenRoughness.value=t.sheenRoughness,t.sheenColorMap&&(e.sheenColorMap.value=t.sheenColorMap,n(t.sheenColorMap,e.sheenColorMapTransform)),t.sheenRoughnessMap&&(e.sheenRoughnessMap.value=t.sheenRoughnessMap,n(t.sheenRoughnessMap,e.sheenRoughnessMapTransform))),t.clearcoat>0&&(e.clearcoat.value=t.clearcoat,e.clearcoatRoughness.value=t.clearcoatRoughness,t.clearcoatMap&&(e.clearcoatMap.value=t.clearcoatMap,n(t.clearcoatMap,e.clearcoatMapTransform)),t.clearcoatRoughnessMap&&(e.clearcoatRoughnessMap.value=t.clearcoatRoughnessMap,n(t.clearcoatRoughnessMap,e.clearcoatRoughnessMapTransform)),t.clearcoatNormalMap&&(e.clearcoatNormalMap.value=t.clearcoatNormalMap,n(t.clearcoatNormalMap,e.clearcoatNormalMapTransform),e.clearcoatNormalScale.value.copy(t.clearcoatNormalScale),t.side===1&&e.clearcoatNormalScale.value.negate())),t.dispersion>0&&(e.dispersion.value=t.dispersion),t.iridescence>0&&(e.iridescence.value=t.iridescence,e.iridescenceIOR.value=t.iridescenceIOR,e.iridescenceThicknessMinimum.value=t.iridescenceThicknessRange[0],e.iridescenceThicknessMaximum.value=t.iridescenceThicknessRange[1],t.iridescenceMap&&(e.iridescenceMap.value=t.iridescenceMap,n(t.iridescenceMap,e.iridescenceMapTransform)),t.iridescenceThicknessMap&&(e.iridescenceThicknessMap.value=t.iridescenceThicknessMap,n(t.iridescenceThicknessMap,e.iridescenceThicknessMapTransform))),t.transmission>0&&(e.transmission.value=t.transmission,e.transmissionSamplerMap.value=r.texture,e.transmissionSamplerSize.value.set(r.width,r.height),t.transmissionMap&&(e.transmissionMap.value=t.transmissionMap,n(t.transmissionMap,e.transmissionMapTransform)),e.thickness.value=t.thickness,t.thicknessMap&&(e.thicknessMap.value=t.thicknessMap,n(t.thicknessMap,e.thicknessMapTransform)),e.attenuationDistance.value=t.attenuationDistance,e.attenuationColor.value.copy(t.attenuationColor)),t.anisotropy>0&&(e.anisotropyVector.value.set(t.anisotropy*Math.cos(t.anisotropyRotation),t.anisotropy*Math.sin(t.anisotropyRotation)),t.anisotropyMap&&(e.anisotropyMap.value=t.anisotropyMap,n(t.anisotropyMap,e.anisotropyMapTransform))),e.specularIntensity.value=t.specularIntensity,e.specularColor.value.copy(t.specularColor),t.specularColorMap&&(e.specularColorMap.value=t.specularColorMap,n(t.specularColorMap,e.specularColorMapTransform)),t.specularIntensityMap&&(e.specularIntensityMap.value=t.specularIntensityMap,n(t.specularIntensityMap,e.specularIntensityMapTransform))}function m(e,t){t.matcap&&(e.matcap.value=t.matcap)}function h(e,n){let r=t.get(n).light;e.referencePosition.value.setFromMatrixPosition(r.matrixWorld),e.nearDistance.value=r.shadow.camera.near,e.farDistance.value=r.shadow.camera.far}return{refreshFogUniforms:r,refreshMaterialUniforms:i}}function uy(e,t,n,r){let i={},a={},o=[],s=e.getParameter(e.MAX_UNIFORM_BUFFER_BINDINGS);function c(e,t){let n=t.program;r.uniformBlockBinding(e,n)}function l(e,n){let o=i[e.id];o===void 0&&(g(e),o=u(e),i[e.id]=o,e.addEventListener(`dispose`,v));let s=n.program;r.updateUBOMapping(e,s);let c=t.render.frame;a[e.id]!==c&&(f(e),a[e.id]=c)}function u(t){let n=d();t.__bindingPointIndex=n;let r=e.createBuffer(),i=t.__size,a=t.usage;return e.bindBuffer(e.UNIFORM_BUFFER,r),e.bufferData(e.UNIFORM_BUFFER,i,a),e.bindBuffer(e.UNIFORM_BUFFER,null),e.bindBufferBase(e.UNIFORM_BUFFER,n,r),r}function d(){for(let e=0;e0&&(n+=16-r),e.__size=n,e.__cache={},this}function _(e){let t={boundary:0,storage:0};return typeof e==`number`||typeof e==`boolean`?(t.boundary=4,t.storage=4):e.isVector2?(t.boundary=8,t.storage=8):e.isVector3||e.isColor?(t.boundary=16,t.storage=12):e.isVector4?(t.boundary=16,t.storage=16):e.isMatrix3?(t.boundary=48,t.storage=48):e.isMatrix4?(t.boundary=64,t.storage=64):e.isTexture?Y(`WebGLRenderer: Texture samplers can not be part of an uniforms group.`):ArrayBuffer.isView(e)?(t.boundary=16,t.storage=e.byteLength):Y(`WebGLRenderer: Unsupported uniform value type.`,e),t}function v(t){let n=t.target;n.removeEventListener(`dispose`,v);let r=o.indexOf(n.__bindingPointIndex);o.splice(r,1),e.deleteBuffer(i[n.id]),delete i[n.id],delete a[n.id]}function y(){for(let t in i)e.deleteBuffer(i[t]);o=[],i={},a={}}return{bind:c,update:l,dispose:y}}var dy=new Uint16Array([12469,15057,12620,14925,13266,14620,13807,14376,14323,13990,14545,13625,14713,13328,14840,12882,14931,12528,14996,12233,15039,11829,15066,11525,15080,11295,15085,10976,15082,10705,15073,10495,13880,14564,13898,14542,13977,14430,14158,14124,14393,13732,14556,13410,14702,12996,14814,12596,14891,12291,14937,11834,14957,11489,14958,11194,14943,10803,14921,10506,14893,10278,14858,9960,14484,14039,14487,14025,14499,13941,14524,13740,14574,13468,14654,13106,14743,12678,14818,12344,14867,11893,14889,11509,14893,11180,14881,10751,14852,10428,14812,10128,14765,9754,14712,9466,14764,13480,14764,13475,14766,13440,14766,13347,14769,13070,14786,12713,14816,12387,14844,11957,14860,11549,14868,11215,14855,10751,14825,10403,14782,10044,14729,9651,14666,9352,14599,9029,14967,12835,14966,12831,14963,12804,14954,12723,14936,12564,14917,12347,14900,11958,14886,11569,14878,11247,14859,10765,14828,10401,14784,10011,14727,9600,14660,9289,14586,8893,14508,8533,15111,12234,15110,12234,15104,12216,15092,12156,15067,12010,15028,11776,14981,11500,14942,11205,14902,10752,14861,10393,14812,9991,14752,9570,14682,9252,14603,8808,14519,8445,14431,8145,15209,11449,15208,11451,15202,11451,15190,11438,15163,11384,15117,11274,15055,10979,14994,10648,14932,10343,14871,9936,14803,9532,14729,9218,14645,8742,14556,8381,14461,8020,14365,7603,15273,10603,15272,10607,15267,10619,15256,10631,15231,10614,15182,10535,15118,10389,15042,10167,14963,9787,14883,9447,14800,9115,14710,8665,14615,8318,14514,7911,14411,7507,14279,7198,15314,9675,15313,9683,15309,9712,15298,9759,15277,9797,15229,9773,15166,9668,15084,9487,14995,9274,14898,8910,14800,8539,14697,8234,14590,7790,14479,7409,14367,7067,14178,6621,15337,8619,15337,8631,15333,8677,15325,8769,15305,8871,15264,8940,15202,8909,15119,8775,15022,8565,14916,8328,14804,8009,14688,7614,14569,7287,14448,6888,14321,6483,14088,6171,15350,7402,15350,7419,15347,7480,15340,7613,15322,7804,15287,7973,15229,8057,15148,8012,15046,7846,14933,7611,14810,7357,14682,7069,14552,6656,14421,6316,14251,5948,14007,5528,15356,5942,15356,5977,15353,6119,15348,6294,15332,6551,15302,6824,15249,7044,15171,7122,15070,7050,14949,6861,14818,6611,14679,6349,14538,6067,14398,5651,14189,5311,13935,4958,15359,4123,15359,4153,15356,4296,15353,4646,15338,5160,15311,5508,15263,5829,15188,6042,15088,6094,14966,6001,14826,5796,14678,5543,14527,5287,14377,4985,14133,4586,13869,4257,15360,1563,15360,1642,15358,2076,15354,2636,15341,3350,15317,4019,15273,4429,15203,4732,15105,4911,14981,4932,14836,4818,14679,4621,14517,4386,14359,4156,14083,3795,13808,3437,15360,122,15360,137,15358,285,15355,636,15344,1274,15322,2177,15281,2765,15215,3223,15120,3451,14995,3569,14846,3567,14681,3466,14511,3305,14344,3121,14037,2800,13753,2467,15360,0,15360,1,15359,21,15355,89,15346,253,15325,479,15287,796,15225,1148,15133,1492,15008,1749,14856,1882,14685,1886,14506,1783,14324,1608,13996,1398,13702,1183]),fy=null;function py(){return fy===null&&(fy=new Lf(dy,16,16,ic,Gs),fy.name=`DFG_LUT`,fy.minFilter=Fs,fy.magFilter=Fs,fy.wrapS=As,fy.wrapT=As,fy.generateMipmaps=!1,fy.needsUpdate=!0),fy}var my=class{constructor(e={}){let{canvas:t=pl(),context:n=null,depth:r=!0,stencil:i=!1,alpha:a=!1,antialias:o=!1,premultipliedAlpha:s=!0,preserveDrawingBuffer:c=!1,powerPreference:l=`default`,failIfMajorPerformanceCaveat:u=!1,reversedDepthBuffer:d=!1,outputBufferType:f=Rs}=e;this.isWebGLRenderer=!0;let p;if(n!==null){if(typeof WebGLRenderingContext<`u`&&n instanceof WebGLRenderingContext)throw Error(`THREE.WebGLRenderer: WebGL 1 is not supported since r163.`);p=n.getContextAttributes().alpha}else p=a;let m=f,h=new Set([oc,ac,rc]),g=new Set([Rs,Us,Vs,Js,Ks,qs]),_=new Uint32Array(4),v=new Int32Array(4),y=new Z,b=null,x=null,S=[],C=[],w=null;this.domElement=t,this.debug={checkShaderErrors:!0,onShaderError:null},this.autoClear=!0,this.autoClearColor=!0,this.autoClearDepth=!0,this.autoClearStencil=!0,this.sortObjects=!0,this.clippingPlanes=[],this.localClippingEnabled=!1,this.toneMapping=0,this.toneMappingExposure=1,this.transmissionResolutionScale=1;let T=this,E=!1,D=null,O=null,ee=null,k=null;this._outputColorSpace=nl;let te=0,ne=0,re=null,ie=-1,ae=null,oe=new mu,se=new mu,A=null,ce=new Q(0),le=0,ue=t.width,de=t.height,j=1,fe=null,pe=null,me=new mu(0,0,ue,de),he=new mu(0,0,ue,de),ge=!1,_e=new rp,ve=!1,ye=!1,be=new yu,xe=new Z,Se=new mu,Ce={background:null,fog:null,environment:null,overrideMaterial:null,isScene:!0},we=!1;function M(){return re===null?j:1}let N=n;function P(e,n){return t.getContext(e,n)}try{let e={alpha:!0,depth:r,stencil:i,antialias:o,premultipliedAlpha:s,preserveDrawingBuffer:c,powerPreference:l,failIfMajorPerformanceCaveat:u};if(`setAttribute`in t&&t.setAttribute(`data-engine`,`three.js r185`),t.addEventListener(`webglcontextlost`,We,!1),t.addEventListener(`webglcontextrestored`,Ge,!1),t.addEventListener(`webglcontextcreationerror`,Ke,!1),N===null){let t=`webgl2`;if(N=P(t,e),N===null)throw P(t)?Error(`THREE.WebGLRenderer: Error creating WebGL context with your selected attributes.`):Error(`THREE.WebGLRenderer: Error creating WebGL context.`)}}catch(e){throw _l(`WebGLRenderer: `+e.message),e}let Te,Ee,F,De,I,Oe,ke,Ae,L,je,R,Me,Ne,Pe,Fe,Ie,Le,Re,ze,z,Be,Ve,He;function Ue(){Te=new Mg(N),Te.init(),Be=new ny(N,Te),Ee=new cg(N,Te,e,Be),F=new ey(N,Te),Ee.reversedDepthBuffer&&d&&F.buffers.depth.setReversed(!0),O=N.createFramebuffer(),ee=N.createFramebuffer(),k=N.createFramebuffer(),De=new Fg(N),I=new Pv,Oe=new ty(N,Te,F,I,Ee,Be,De),ke=new jg(T),Ae=new $h(N),Ve=new og(N,Ae),L=new Ng(N,Ae,De,Ve),je=new Lg(N,L,Ae,Ve,De),Re=new Ig(N,Ee,Oe),Fe=new lg(I),R=new Nv(T,ke,Te,Ee,Ve,Fe),Me=new ly(T,I),Ne=new Rv,Pe=new Gv(Te),Le=new ag(T,ke,F,je,p,s),Ie=new $v(T,je,Ee),He=new uy(N,De,Ee,F),ze=new sg(N,Te,De),z=new Pg(N,Te,De),De.programs=R.programs,T.capabilities=Ee,T.extensions=Te,T.properties=I,T.renderLists=Ne,T.shadowMap=Ie,T.state=F,T.info=De}Ue(),m!==1009&&(w=new zg(m,t.width,t.height,o,r,i));let B=new oy(T,N);this.xr=B,this.getContext=function(){return N},this.getContextAttributes=function(){return N.getContextAttributes()},this.forceContextLoss=function(){let e=Te.get(`WEBGL_lose_context`);e&&e.loseContext()},this.forceContextRestore=function(){let e=Te.get(`WEBGL_lose_context`);e&&e.restoreContext()},this.getPixelRatio=function(){return j},this.setPixelRatio=function(e){e!==void 0&&(j=e,this.setSize(ue,de,!1))},this.getSize=function(e){return e.set(ue,de)},this.setSize=function(e,n,r=!0){if(B.isPresenting){Y(`WebGLRenderer: Can't change size while VR device is presenting.`);return}ue=e,de=n,t.width=Math.floor(e*j),t.height=Math.floor(n*j),r===!0&&(t.style.width=e+`px`,t.style.height=n+`px`),w!==null&&w.setSize(t.width,t.height),this.setViewport(0,0,e,n)},this.getDrawingBufferSize=function(e){return e.set(ue*j,de*j).floor()},this.setDrawingBufferSize=function(e,n,r){ue=e,de=n,j=r,t.width=Math.floor(e*r),t.height=Math.floor(n*r),this.setViewport(0,0,e,n)},this.setEffects=function(e){if(m===1009){_l(`WebGLRenderer: setEffects() requires outputBufferType set to HalfFloatType or FloatType.`);return}if(e){for(let t=0;t{function n(){if(r.forEach(function(e){I.get(e).currentProgram.isReady()&&r.delete(e)}),r.size===0){t(e);return}setTimeout(n,10)}Te.get(`KHR_parallel_shader_compile`)===null?setTimeout(n,10):n()})};let Ze=null;function Qe(e){Ze&&Ze(e)}function $e(){tt.stop()}function et(){tt.start()}let tt=new Qh;tt.setAnimationLoop(Qe),typeof self<`u`&&tt.setContext(self),this.setAnimationLoop=function(e){Ze=e,B.setAnimationLoop(e),e===null?tt.stop():tt.start()},B.addEventListener(`sessionstart`,$e),B.addEventListener(`sessionend`,et),this.render=function(e,t){if(t!==void 0&&t.isCamera!==!0){_l(`WebGLRenderer.render: camera is not an instance of THREE.Camera.`);return}if(E===!0)return;D!==null&&D.renderStart(e,t);let n=B.enabled===!0&&B.isPresenting===!0,r=w!==null&&(re===null||n)&&w.begin(T,re);if(e.matrixWorldAutoUpdate===!0&&e.updateMatrixWorld(),t.parent===null&&t.matrixWorldAutoUpdate===!0&&t.updateMatrixWorld(),B.enabled===!0&&B.isPresenting===!0&&(w===null||w.isCompositing()===!1)&&(B.cameraAutoUpdate===!0&&B.updateCamera(t),t=B.getCamera()),e.isScene===!0&&e.onBeforeRender(T,e,t,re),x=Pe.get(e,C.length),x.init(t),x.state.textureUnits=Oe.getTextureUnits(),C.push(x),be.multiplyMatrices(t.projectionMatrix,t.matrixWorldInverse),_e.setFromProjectionMatrix(be,ll,t.reversedDepth),ye=this.localClippingEnabled,ve=Fe.init(this.clippingPlanes,ye),b=Ne.get(e,S.length),b.init(),S.push(b),B.enabled===!0&&B.isPresenting===!0){let e=T.xr.getDepthSensingMesh();e!==null&&nt(e,t,-1/0,T.sortObjects)}nt(e,t,0,T.sortObjects),b.finish(),T.sortObjects===!0&&b.sort(fe,pe,t.reversedDepth),we=B.enabled===!1||B.isPresenting===!1||B.hasDepthSensing()===!1,we&&Le.addToRenderList(b,e),this.info.render.frame++,this.info.autoReset===!0&&this.info.reset(),ve===!0&&Fe.beginShadows();let i=x.state.shadowsArray;if(Ie.render(i,e,t),ve===!0&&Fe.endShadows(),(r&&w.hasRenderPass())===!1){let n=b.opaque,r=b.transmissive;if(x.setupLights(),t.isArrayCamera){let i=t.cameras;if(r.length>0)for(let t=0,a=i.length;t0&&it(n,r,e,t),we&&Le.render(e),rt(b,e,t)}re!==null&&ne===0&&(Oe.updateMultisampleRenderTarget(re),Oe.updateRenderTargetMipmap(re)),r&&w.end(T),e.isScene===!0&&e.onAfterRender(T,e,t),Ve.resetDefaultState(),ie=-1,ae=null,C.pop(),C.length>0?(x=C[C.length-1],Oe.setTextureUnits(x.state.textureUnits),ve===!0&&Fe.setGlobalState(T.clippingPlanes,x.state.camera)):x=null,S.pop(),b=S.length>0?S[S.length-1]:null,D!==null&&D.renderEnd()};function nt(e,t,n,r){if(e.visible===!1)return;if(e.layers.test(t.layers)){if(e.isGroup)n=e.renderOrder;else if(e.isLOD)e.autoUpdate===!0&&e.update(t);else if(e.isLightProbeGrid)x.pushLightProbeGrid(e);else if(e.isLight)x.pushLight(e),e.castShadow&&x.pushShadow(e);else if(e.isSprite){if(!e.frustumCulled||_e.intersectsSprite(e)){r&&Se.setFromMatrixPosition(e.matrixWorld).applyMatrix4(be);let t=je.update(e),i=e.material;i.visible&&b.push(e,t,i,n,Se.z,null)}}else if((e.isMesh||e.isLine||e.isPoints)&&(!e.frustumCulled||_e.intersectsObject(e))){let t=je.update(e),i=e.material;if(r&&(e.boundingSphere===void 0?(t.boundingSphere===null&&t.computeBoundingSphere(),Se.copy(t.boundingSphere.center)):(e.boundingSphere===null&&e.computeBoundingSphere(),Se.copy(e.boundingSphere.center)),Se.applyMatrix4(e.matrixWorld).applyMatrix4(be)),Array.isArray(i)){let r=t.groups;for(let a=0,o=r.length;a0&&at(i,t,n),a.length>0&&at(a,t,n),o.length>0&&at(o,t,n),F.buffers.depth.setTest(!0),F.buffers.depth.setMask(!0),F.buffers.color.setMask(!0),F.setPolygonOffset(!1)}function it(e,t,n,r){if((n.isScene===!0?n.overrideMaterial:null)!==null)return;if(x.state.transmissionRenderTarget[r.id]===void 0){let e=Te.has(`EXT_color_buffer_half_float`)||Te.has(`EXT_color_buffer_float`);x.state.transmissionRenderTarget[r.id]=new gu(1,1,{generateMipmaps:!0,type:e?Gs:Rs,minFilter:Ls,samples:Math.max(4,Ee.samples),stencilBuffer:i,resolveDepthBuffer:!1,resolveStencilBuffer:!1,colorSpace:ru.workingColorSpace})}let a=x.state.transmissionRenderTarget[r.id],o=r.viewport||oe;a.setSize(o.z*T.transmissionResolutionScale,o.w*T.transmissionResolutionScale);let s=T.getRenderTarget(),c=T.getActiveCubeFace(),l=T.getActiveMipmapLevel();T.setRenderTarget(a),T.getClearColor(ce),le=T.getClearAlpha(),le<1&&T.setClearColor(16777215,.5),T.clear(),we&&Le.render(n);let u=T.toneMapping;T.toneMapping=0;let d=r.viewport;if(r.viewport!==void 0&&(r.viewport=void 0),x.setupLightsView(r),ve===!0&&Fe.setGlobalState(T.clippingPlanes,r),at(e,n,r),Oe.updateMultisampleRenderTarget(a),Oe.updateRenderTargetMipmap(a),Te.has(`WEBGL_multisampled_render_to_texture`)===!1){let e=!1;for(let i=0,a=t.length;i0,r.currentProgram=d,r.uniformsList=null,d}function ct(e){if(e.uniformsList===null){let t=e.currentProgram.getUniforms();e.uniformsList=K_.seqWithValue(t.seq,e.uniforms)}return e.uniformsList}function lt(e,t){let n=I.get(e);n.outputColorSpace=t.outputColorSpace,n.batching=t.batching,n.batchingColor=t.batchingColor,n.instancing=t.instancing,n.instancingColor=t.instancingColor,n.instancingMorph=t.instancingMorph,n.skinning=t.skinning,n.morphTargets=t.morphTargets,n.morphNormals=t.morphNormals,n.morphColors=t.morphColors,n.morphTargetsCount=t.morphTargetsCount,n.numClippingPlanes=t.numClippingPlanes,n.numIntersection=t.numClipIntersection,n.vertexAlphas=t.vertexAlphas,n.vertexTangents=t.vertexTangents,n.toneMapping=t.toneMapping}function ut(e,t){if(e.length===0)return null;if(e.length===1)return e[0].texture===null?null:e[0];y.setFromMatrixPosition(t.matrixWorld);for(let t=0,n=e.length;t0),f=!!n.morphAttributes.position,p=!!n.morphAttributes.normal,m=!!n.morphAttributes.color,h=0;r.toneMapped&&(re===null||re.isXRRenderTarget===!0)&&(h=T.toneMapping);let g=n.morphAttributes.position||n.morphAttributes.normal||n.morphAttributes.color,_=g===void 0?0:g.length,v=I.get(r),y=x.state.lights;if(ve===!0&&(ye===!0||e!==ae)){let t=e===ae&&r.id===ie;Fe.setState(r,e,t)}let b=!1;r.version===v.__version?v.needsLights&&v.lightsStateVersion!==y.state.version?b=!0:v.outputColorSpace===s?i.isBatchedMesh&&v.batching===!1||!i.isBatchedMesh&&v.batching===!0||i.isBatchedMesh&&v.batchingColor===!0&&i.colorTexture===null||i.isBatchedMesh&&v.batchingColor===!1&&i.colorTexture!==null||i.isInstancedMesh&&v.instancing===!1||!i.isInstancedMesh&&v.instancing===!0||i.isSkinnedMesh&&v.skinning===!1||!i.isSkinnedMesh&&v.skinning===!0||i.isInstancedMesh&&v.instancingColor===!0&&i.instanceColor===null||i.isInstancedMesh&&v.instancingColor===!1&&i.instanceColor!==null||i.isInstancedMesh&&v.instancingMorph===!0&&i.morphTexture===null||i.isInstancedMesh&&v.instancingMorph===!1&&i.morphTexture!==null?b=!0:v.envMap===l?r.fog===!0&&v.fog!==a||v.numClippingPlanes!==void 0&&(v.numClippingPlanes!==Fe.numPlanes||v.numIntersection!==Fe.numIntersection)?b=!0:v.vertexAlphas===u&&v.vertexTangents===d&&v.morphTargets===f&&v.morphNormals===p&&v.morphColors===m&&v.toneMapping===h&&v.morphTargetsCount===_?!!v.lightProbeGrid!=x.state.lightProbeGridArray.length>0&&(b=!0):b=!0:b=!0:b=!0:(b=!0,v.__version=r.version);let S=v.currentProgram;b===!0&&(S=st(r,t,i),D&&r.isNodeMaterial&&D.onUpdateProgram(r,S,v));let C=!1,w=!1,E=!1,O=S.getUniforms(),ee=v.uniforms;if(F.useProgram(S.program)&&(C=!0,w=!0,E=!0),r.id!==ie&&(ie=r.id,w=!0),v.needsLights){let e=ut(x.state.lightProbeGridArray,i);v.lightProbeGrid!==e&&(v.lightProbeGrid=e,w=!0)}if(C||ae!==e){F.buffers.depth.getReversed()&&e.reversedDepth!==!0&&(e._reversedDepth=!0,e.updateProjectionMatrix()),O.setValue(N,`projectionMatrix`,e.projectionMatrix),O.setValue(N,`viewMatrix`,e.matrixWorldInverse);let t=O.map.cameraPosition;t!==void 0&&t.setValue(N,xe.setFromMatrixPosition(e.matrixWorld)),Ee.logarithmicDepthBuffer&&O.setValue(N,`logDepthBufFC`,2/(Math.log(e.far+1)/Math.LN2)),(r.isMeshPhongMaterial||r.isMeshToonMaterial||r.isMeshLambertMaterial||r.isMeshBasicMaterial||r.isMeshStandardMaterial||r.isShaderMaterial)&&O.setValue(N,`isOrthographic`,e.isOrthographicCamera===!0),ae!==e&&(ae=e,w=!0,E=!0)}if(v.needsLights&&(y.state.directionalShadowMap.length>0&&O.setValue(N,`directionalShadowMap`,y.state.directionalShadowMap,Oe),y.state.spotShadowMap.length>0&&O.setValue(N,`spotShadowMap`,y.state.spotShadowMap,Oe),y.state.pointShadowMap.length>0&&O.setValue(N,`pointShadowMap`,y.state.pointShadowMap,Oe)),i.isSkinnedMesh){O.setOptional(N,i,`bindMatrix`),O.setOptional(N,i,`bindMatrixInverse`);let e=i.skeleton;e&&(e.boneTexture===null&&e.computeBoneTexture(),O.setValue(N,`boneTexture`,e.boneTexture,Oe))}i.isBatchedMesh&&(O.setOptional(N,i,`batchingTexture`),O.setValue(N,`batchingTexture`,i._matricesTexture,Oe),O.setOptional(N,i,`batchingIdTexture`),O.setValue(N,`batchingIdTexture`,i._indirectTexture,Oe),O.setOptional(N,i,`batchingColorTexture`),i._colorsTexture!==null&&O.setValue(N,`batchingColorTexture`,i._colorsTexture,Oe));let k=n.morphAttributes;if((k.position!==void 0||k.normal!==void 0||k.color!==void 0)&&Re.update(i,n,S),(w||v.receiveShadow!==i.receiveShadow)&&(v.receiveShadow=i.receiveShadow,O.setValue(N,`receiveShadow`,i.receiveShadow)),(r.isMeshStandardMaterial||r.isMeshLambertMaterial||r.isMeshPhongMaterial)&&r.envMap===null&&t.environment!==null&&(ee.envMapIntensity.value=t.environmentIntensity),ee.dfgLUT!==void 0&&(ee.dfgLUT.value=py()),w){if(O.setValue(N,`toneMappingExposure`,T.toneMappingExposure),v.needsLights&&ft(ee,E),a&&r.fog===!0&&Me.refreshFogUniforms(ee,a),Me.refreshMaterialUniforms(ee,r,j,de,x.state.transmissionRenderTarget[e.id]),v.needsLights&&v.lightProbeGrid){let e=v.lightProbeGrid;ee.probesSH.value=e.texture,ee.probesMin.value.copy(e.boundingBox.min),ee.probesMax.value.copy(e.boundingBox.max),ee.probesResolution.value.copy(e.resolution)}K_.upload(N,ct(v),ee,Oe)}if(r.isShaderMaterial&&r.uniformsNeedUpdate===!0&&(K_.upload(N,ct(v),ee,Oe),r.uniformsNeedUpdate=!1),r.isSpriteMaterial&&O.setValue(N,`center`,i.center),O.setValue(N,`modelViewMatrix`,i.modelViewMatrix),O.setValue(N,`normalMatrix`,i.normalMatrix),O.setValue(N,`modelMatrix`,i.matrixWorld),r.uniformsGroups!==void 0){let e=r.uniformsGroups;for(let t=0,n=e.length;t0&&Oe.useMultisampledRTT(e)===!1?I.get(e).__webglMultisampledFramebuffer:Array.isArray(c)?c[n]:c,oe.copy(e.viewport),se.copy(e.scissor),A=e.scissorTest}else oe.copy(me).multiplyScalar(j).floor(),se.copy(he).multiplyScalar(j).floor(),A=ge;if(n!==0&&(r=O),F.bindFramebuffer(N.FRAMEBUFFER,r)&&F.drawBuffers(e,r),F.viewport(oe),F.scissor(se),F.setScissorTest(A),i){let r=I.get(e.texture);N.framebufferTexture2D(N.FRAMEBUFFER,N.COLOR_ATTACHMENT0,N.TEXTURE_CUBE_MAP_POSITIVE_X+t,r.__webglTexture,n)}else if(a){let r=t;for(let t=0;t1&&N.readBuffer(N.COLOR_ATTACHMENT0+s),!Ee.textureFormatReadable(c)){_l(`WebGLRenderer.readRenderTargetPixels: renderTarget is not in RGBA or implementation defined format.`);return}if(!Ee.textureTypeReadable(l)){_l(`WebGLRenderer.readRenderTargetPixels: renderTarget is not in UnsignedByteType or implementation defined type.`);return}t>=0&&t<=e.width-r&&n>=0&&n<=e.height-i&&N.readPixels(t,n,r,i,Be.convert(c),Be.convert(l),a)}finally{let e=re===null?null:I.get(re).__webglFramebuffer;F.bindFramebuffer(N.FRAMEBUFFER,e)}}},this.readRenderTargetPixelsAsync=async function(e,t,n,r,i,a,o,s=0){if(!(e&&e.isWebGLRenderTarget))throw Error(`THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.`);let c=I.get(e).__webglFramebuffer;if(e.isWebGLCubeRenderTarget&&o!==void 0&&(c=c[o]),c)if(t>=0&&t<=e.width-r&&n>=0&&n<=e.height-i){F.bindFramebuffer(N.FRAMEBUFFER,c);let o=e.textures[s],l=o.format,u=o.type;if(e.textures.length>1&&N.readBuffer(N.COLOR_ATTACHMENT0+s),!Ee.textureFormatReadable(l))throw Error(`THREE.WebGLRenderer.readRenderTargetPixelsAsync: renderTarget is not in RGBA or implementation defined format.`);if(!Ee.textureTypeReadable(u))throw Error(`THREE.WebGLRenderer.readRenderTargetPixelsAsync: renderTarget is not in UnsignedByteType or implementation defined type.`);let d=N.createBuffer();N.bindBuffer(N.PIXEL_PACK_BUFFER,d),N.bufferData(N.PIXEL_PACK_BUFFER,a.byteLength,N.STREAM_READ),N.readPixels(t,n,r,i,Be.convert(l),Be.convert(u),0);let f=re===null?null:I.get(re).__webglFramebuffer;F.bindFramebuffer(N.FRAMEBUFFER,f);let p=N.fenceSync(N.SYNC_GPU_COMMANDS_COMPLETE,0);return N.flush(),await yl(N,p,4),N.bindBuffer(N.PIXEL_PACK_BUFFER,d),N.getBufferSubData(N.PIXEL_PACK_BUFFER,0,a),N.deleteBuffer(d),N.deleteSync(p),a}else throw Error(`THREE.WebGLRenderer.readRenderTargetPixelsAsync: requested read bounds are out of range.`)},this.copyFramebufferToTexture=function(e,t=null,n=0){let r=2**-n,i=Math.floor(e.image.width*r),a=Math.floor(e.image.height*r),o=t===null?0:t.x,s=t===null?0:t.y;Oe.setTexture2D(e,0),N.copyTexSubImage2D(N.TEXTURE_2D,n,0,0,o,s,i,a),F.unbindTexture()},this.copyTextureToTexture=function(e,t,n=null,r=null,i=0,a=0){let o,s,c,l,u,d,f,p,m,h=e.isCompressedTexture?e.mipmaps[a]:e.image;if(n!==null)o=n.max.x-n.min.x,s=n.max.y-n.min.y,c=n.isBox3?n.max.z-n.min.z:1,l=n.min.x,u=n.min.y,d=n.isBox3?n.min.z:0;else{let t=2**-i;o=Math.floor(h.width*t),s=Math.floor(h.height*t),c=e.isDataArrayTexture?h.depth:e.isData3DTexture?Math.floor(h.depth*t):1,l=0,u=0,d=0}r===null?(f=0,p=0,m=0):(f=r.x,p=r.y,m=r.z);let g=Be.convert(t.format),_=Be.convert(t.type),v;t.isData3DTexture?(Oe.setTexture3D(t,0),v=N.TEXTURE_3D):t.isDataArrayTexture||t.isCompressedArrayTexture?(Oe.setTexture2DArray(t,0),v=N.TEXTURE_2D_ARRAY):(Oe.setTexture2D(t,0),v=N.TEXTURE_2D),F.activeTexture(N.TEXTURE0),F.pixelStorei(N.UNPACK_FLIP_Y_WEBGL,t.flipY),F.pixelStorei(N.UNPACK_PREMULTIPLY_ALPHA_WEBGL,t.premultiplyAlpha),F.pixelStorei(N.UNPACK_ALIGNMENT,t.unpackAlignment);let y=F.getParameter(N.UNPACK_ROW_LENGTH),b=F.getParameter(N.UNPACK_IMAGE_HEIGHT),x=F.getParameter(N.UNPACK_SKIP_PIXELS),S=F.getParameter(N.UNPACK_SKIP_ROWS),C=F.getParameter(N.UNPACK_SKIP_IMAGES);F.pixelStorei(N.UNPACK_ROW_LENGTH,h.width),F.pixelStorei(N.UNPACK_IMAGE_HEIGHT,h.height),F.pixelStorei(N.UNPACK_SKIP_PIXELS,l),F.pixelStorei(N.UNPACK_SKIP_ROWS,u),F.pixelStorei(N.UNPACK_SKIP_IMAGES,d);let w=e.isDataArrayTexture||e.isData3DTexture,T=t.isDataArrayTexture||t.isData3DTexture;if(e.isDepthTexture){let n=I.get(e),r=I.get(t),h=I.get(n.__renderTarget),g=I.get(r.__renderTarget);F.bindFramebuffer(N.READ_FRAMEBUFFER,h.__webglFramebuffer),F.bindFramebuffer(N.DRAW_FRAMEBUFFER,g.__webglFramebuffer);for(let n=0;n=0&&(x[r]=null,b[r].disconnect(n))}for(let t=0;t=x.length){x.push(n),r=e;break}else if(x[e]===null){x[e]=n,r=e;break}if(r===-1)break}let i=b[r];i&&i.connect(n)}}let re=new X,ie=new X;function ae(e,t,n){re.setFromMatrixPosition(t.matrixWorld),ie.setFromMatrixPosition(n.matrixWorld);let r=re.distanceTo(ie),i=t.projectionMatrix.elements,a=n.projectionMatrix.elements,o=i[14]/(i[10]-1),s=i[14]/(i[10]+1),c=(i[9]+1)/i[5],l=(i[9]-1)/i[5],u=(i[8]-1)/i[0],d=(a[8]+1)/a[0],f=o*u,p=o*d,m=r/(-u+d),h=m*-u;if(t.matrixWorld.decompose(e.position,e.quaternion,e.scale),e.translateX(h),e.translateZ(m),e.matrixWorld.compose(e.position,e.quaternion,e.scale),e.matrixWorldInverse.copy(e.matrixWorld).invert(),i[10]===-1)e.projectionMatrix.copy(t.projectionMatrix),e.projectionMatrixInverse.copy(t.projectionMatrixInverse);else{let t=o+m,n=s+m,i=f-h,a=p+(r-h),u=c*s/n*t,d=l*s/n*t;e.projectionMatrix.makePerspective(i,a,u,d,t,n),e.projectionMatrixInverse.copy(e.projectionMatrix).invert()}}function oe(e,t){t===null?e.matrixWorld.copy(e.matrix):e.matrixWorld.multiplyMatrices(t.matrixWorld,e.matrix),e.matrixWorldInverse.copy(e.matrixWorld).invert()}this.updateCamera=function(e){if(r===null)return;let t=e.near,n=e.far;h.texture!==null&&(h.depthNear>0&&(t=h.depthNear),h.depthFar>0&&(n=h.depthFar)),D.near=T.near=w.near=t,D.far=T.far=w.far=n,(O!==D.near||ee!==D.far)&&(r.updateRenderState({depthNear:D.near,depthFar:D.far}),O=D.near,ee=D.far),D.layers.mask=e.layers.mask|6,w.layers.mask=D.layers.mask&-5,T.layers.mask=D.layers.mask&-3;let i=e.parent,a=D.cameras;oe(D,i);for(let e=0;e0&&(e.alphaTest.value=r.alphaTest);let i=t.get(r),a=i.envMap,o=i.envMapRotation;a&&(e.envMap.value=a,e.envMapRotation.value.setFromMatrix4(fy.makeRotationFromEuler(o)).transpose(),a.isCubeTexture&&a.isRenderTargetTexture===!1&&e.envMapRotation.value.premultiply(py),e.reflectivity.value=r.reflectivity,e.ior.value=r.ior,e.refractionRatio.value=r.refractionRatio),r.lightMap&&(e.lightMap.value=r.lightMap,e.lightMapIntensity.value=r.lightMapIntensity,n(r.lightMap,e.lightMapTransform)),r.aoMap&&(e.aoMap.value=r.aoMap,e.aoMapIntensity.value=r.aoMapIntensity,n(r.aoMap,e.aoMapTransform))}function o(e,t){e.diffuse.value.copy(t.color),e.opacity.value=t.opacity,t.map&&(e.map.value=t.map,n(t.map,e.mapTransform))}function s(e,t){e.dashSize.value=t.dashSize,e.totalSize.value=t.dashSize+t.gapSize,e.scale.value=t.scale}function c(e,t,r,i){e.diffuse.value.copy(t.color),e.opacity.value=t.opacity,e.size.value=t.size*r,e.scale.value=i*.5,t.map&&(e.map.value=t.map,n(t.map,e.uvTransform)),t.alphaMap&&(e.alphaMap.value=t.alphaMap,n(t.alphaMap,e.alphaMapTransform)),t.alphaTest>0&&(e.alphaTest.value=t.alphaTest)}function l(e,t){e.diffuse.value.copy(t.color),e.opacity.value=t.opacity,e.rotation.value=t.rotation,t.map&&(e.map.value=t.map,n(t.map,e.mapTransform)),t.alphaMap&&(e.alphaMap.value=t.alphaMap,n(t.alphaMap,e.alphaMapTransform)),t.alphaTest>0&&(e.alphaTest.value=t.alphaTest)}function u(e,t){e.specular.value.copy(t.specular),e.shininess.value=Math.max(t.shininess,1e-4)}function d(e,t){t.gradientMap&&(e.gradientMap.value=t.gradientMap)}function f(e,t){e.metalness.value=t.metalness,t.metalnessMap&&(e.metalnessMap.value=t.metalnessMap,n(t.metalnessMap,e.metalnessMapTransform)),e.roughness.value=t.roughness,t.roughnessMap&&(e.roughnessMap.value=t.roughnessMap,n(t.roughnessMap,e.roughnessMapTransform)),t.envMap&&(e.envMapIntensity.value=t.envMapIntensity)}function p(e,t,r){e.ior.value=t.ior,t.sheen>0&&(e.sheenColor.value.copy(t.sheenColor).multiplyScalar(t.sheen),e.sheenRoughness.value=t.sheenRoughness,t.sheenColorMap&&(e.sheenColorMap.value=t.sheenColorMap,n(t.sheenColorMap,e.sheenColorMapTransform)),t.sheenRoughnessMap&&(e.sheenRoughnessMap.value=t.sheenRoughnessMap,n(t.sheenRoughnessMap,e.sheenRoughnessMapTransform))),t.clearcoat>0&&(e.clearcoat.value=t.clearcoat,e.clearcoatRoughness.value=t.clearcoatRoughness,t.clearcoatMap&&(e.clearcoatMap.value=t.clearcoatMap,n(t.clearcoatMap,e.clearcoatMapTransform)),t.clearcoatRoughnessMap&&(e.clearcoatRoughnessMap.value=t.clearcoatRoughnessMap,n(t.clearcoatRoughnessMap,e.clearcoatRoughnessMapTransform)),t.clearcoatNormalMap&&(e.clearcoatNormalMap.value=t.clearcoatNormalMap,n(t.clearcoatNormalMap,e.clearcoatNormalMapTransform),e.clearcoatNormalScale.value.copy(t.clearcoatNormalScale),t.side===1&&e.clearcoatNormalScale.value.negate())),t.dispersion>0&&(e.dispersion.value=t.dispersion),t.iridescence>0&&(e.iridescence.value=t.iridescence,e.iridescenceIOR.value=t.iridescenceIOR,e.iridescenceThicknessMinimum.value=t.iridescenceThicknessRange[0],e.iridescenceThicknessMaximum.value=t.iridescenceThicknessRange[1],t.iridescenceMap&&(e.iridescenceMap.value=t.iridescenceMap,n(t.iridescenceMap,e.iridescenceMapTransform)),t.iridescenceThicknessMap&&(e.iridescenceThicknessMap.value=t.iridescenceThicknessMap,n(t.iridescenceThicknessMap,e.iridescenceThicknessMapTransform))),t.transmission>0&&(e.transmission.value=t.transmission,e.transmissionSamplerMap.value=r.texture,e.transmissionSamplerSize.value.set(r.width,r.height),t.transmissionMap&&(e.transmissionMap.value=t.transmissionMap,n(t.transmissionMap,e.transmissionMapTransform)),e.thickness.value=t.thickness,t.thicknessMap&&(e.thicknessMap.value=t.thicknessMap,n(t.thicknessMap,e.thicknessMapTransform)),e.attenuationDistance.value=t.attenuationDistance,e.attenuationColor.value.copy(t.attenuationColor)),t.anisotropy>0&&(e.anisotropyVector.value.set(t.anisotropy*Math.cos(t.anisotropyRotation),t.anisotropy*Math.sin(t.anisotropyRotation)),t.anisotropyMap&&(e.anisotropyMap.value=t.anisotropyMap,n(t.anisotropyMap,e.anisotropyMapTransform))),e.specularIntensity.value=t.specularIntensity,e.specularColor.value.copy(t.specularColor),t.specularColorMap&&(e.specularColorMap.value=t.specularColorMap,n(t.specularColorMap,e.specularColorMapTransform)),t.specularIntensityMap&&(e.specularIntensityMap.value=t.specularIntensityMap,n(t.specularIntensityMap,e.specularIntensityMapTransform))}function m(e,t){t.matcap&&(e.matcap.value=t.matcap)}function h(e,n){let r=t.get(n).light;e.referencePosition.value.setFromMatrixPosition(r.matrixWorld),e.nearDistance.value=r.shadow.camera.near,e.farDistance.value=r.shadow.camera.far}return{refreshFogUniforms:r,refreshMaterialUniforms:i}}function hy(e,t,n,r){let i={},a={},o=[],s=e.getParameter(e.MAX_UNIFORM_BUFFER_BINDINGS);function c(e,t){let n=t.program;r.uniformBlockBinding(e,n)}function l(e,n){let o=i[e.id];o===void 0&&(g(e),o=u(e),i[e.id]=o,e.addEventListener(`dispose`,v));let s=n.program;r.updateUBOMapping(e,s);let c=t.render.frame;a[e.id]!==c&&(f(e),a[e.id]=c)}function u(t){let n=d();t.__bindingPointIndex=n;let r=e.createBuffer(),i=t.__size,a=t.usage;return e.bindBuffer(e.UNIFORM_BUFFER,r),e.bufferData(e.UNIFORM_BUFFER,i,a),e.bindBuffer(e.UNIFORM_BUFFER,null),e.bindBufferBase(e.UNIFORM_BUFFER,n,r),r}function d(){for(let e=0;e0&&(n+=16-r),e.__size=n,e.__cache={},this}function _(e){let t={boundary:0,storage:0};return typeof e==`number`||typeof e==`boolean`?(t.boundary=4,t.storage=4):e.isVector2?(t.boundary=8,t.storage=8):e.isVector3||e.isColor?(t.boundary=16,t.storage=12):e.isVector4?(t.boundary=16,t.storage=16):e.isMatrix3?(t.boundary=48,t.storage=48):e.isMatrix4?(t.boundary=64,t.storage=64):e.isTexture?J(`WebGLRenderer: Texture samplers can not be part of an uniforms group.`):ArrayBuffer.isView(e)?(t.boundary=16,t.storage=e.byteLength):J(`WebGLRenderer: Unsupported uniform value type.`,e),t}function v(t){let n=t.target;n.removeEventListener(`dispose`,v);let r=o.indexOf(n.__bindingPointIndex);o.splice(r,1),e.deleteBuffer(i[n.id]),delete i[n.id],delete a[n.id]}function y(){for(let t in i)e.deleteBuffer(i[t]);o=[],i={},a={}}return{bind:c,update:l,dispose:y}}var gy=new Uint16Array([12469,15057,12620,14925,13266,14620,13807,14376,14323,13990,14545,13625,14713,13328,14840,12882,14931,12528,14996,12233,15039,11829,15066,11525,15080,11295,15085,10976,15082,10705,15073,10495,13880,14564,13898,14542,13977,14430,14158,14124,14393,13732,14556,13410,14702,12996,14814,12596,14891,12291,14937,11834,14957,11489,14958,11194,14943,10803,14921,10506,14893,10278,14858,9960,14484,14039,14487,14025,14499,13941,14524,13740,14574,13468,14654,13106,14743,12678,14818,12344,14867,11893,14889,11509,14893,11180,14881,10751,14852,10428,14812,10128,14765,9754,14712,9466,14764,13480,14764,13475,14766,13440,14766,13347,14769,13070,14786,12713,14816,12387,14844,11957,14860,11549,14868,11215,14855,10751,14825,10403,14782,10044,14729,9651,14666,9352,14599,9029,14967,12835,14966,12831,14963,12804,14954,12723,14936,12564,14917,12347,14900,11958,14886,11569,14878,11247,14859,10765,14828,10401,14784,10011,14727,9600,14660,9289,14586,8893,14508,8533,15111,12234,15110,12234,15104,12216,15092,12156,15067,12010,15028,11776,14981,11500,14942,11205,14902,10752,14861,10393,14812,9991,14752,9570,14682,9252,14603,8808,14519,8445,14431,8145,15209,11449,15208,11451,15202,11451,15190,11438,15163,11384,15117,11274,15055,10979,14994,10648,14932,10343,14871,9936,14803,9532,14729,9218,14645,8742,14556,8381,14461,8020,14365,7603,15273,10603,15272,10607,15267,10619,15256,10631,15231,10614,15182,10535,15118,10389,15042,10167,14963,9787,14883,9447,14800,9115,14710,8665,14615,8318,14514,7911,14411,7507,14279,7198,15314,9675,15313,9683,15309,9712,15298,9759,15277,9797,15229,9773,15166,9668,15084,9487,14995,9274,14898,8910,14800,8539,14697,8234,14590,7790,14479,7409,14367,7067,14178,6621,15337,8619,15337,8631,15333,8677,15325,8769,15305,8871,15264,8940,15202,8909,15119,8775,15022,8565,14916,8328,14804,8009,14688,7614,14569,7287,14448,6888,14321,6483,14088,6171,15350,7402,15350,7419,15347,7480,15340,7613,15322,7804,15287,7973,15229,8057,15148,8012,15046,7846,14933,7611,14810,7357,14682,7069,14552,6656,14421,6316,14251,5948,14007,5528,15356,5942,15356,5977,15353,6119,15348,6294,15332,6551,15302,6824,15249,7044,15171,7122,15070,7050,14949,6861,14818,6611,14679,6349,14538,6067,14398,5651,14189,5311,13935,4958,15359,4123,15359,4153,15356,4296,15353,4646,15338,5160,15311,5508,15263,5829,15188,6042,15088,6094,14966,6001,14826,5796,14678,5543,14527,5287,14377,4985,14133,4586,13869,4257,15360,1563,15360,1642,15358,2076,15354,2636,15341,3350,15317,4019,15273,4429,15203,4732,15105,4911,14981,4932,14836,4818,14679,4621,14517,4386,14359,4156,14083,3795,13808,3437,15360,122,15360,137,15358,285,15355,636,15344,1274,15322,2177,15281,2765,15215,3223,15120,3451,14995,3569,14846,3567,14681,3466,14511,3305,14344,3121,14037,2800,13753,2467,15360,0,15360,1,15359,21,15355,89,15346,253,15325,479,15287,796,15225,1148,15133,1492,15008,1749,14856,1882,14685,1886,14506,1783,14324,1608,13996,1398,13702,1183]),_y=null;function vy(){return _y===null&&(_y=new Lf(gy,16,16,ac,Ks),_y.name=`DFG_LUT`,_y.minFilter=Is,_y.magFilter=Is,_y.wrapS=js,_y.wrapT=js,_y.generateMipmaps=!1,_y.needsUpdate=!0),_y}var yy=class{constructor(e={}){let{canvas:t=ml(),context:n=null,depth:r=!0,stencil:i=!1,alpha:a=!1,antialias:o=!1,premultipliedAlpha:s=!0,preserveDrawingBuffer:c=!1,powerPreference:l=`default`,failIfMajorPerformanceCaveat:u=!1,reversedDepthBuffer:d=!1,outputBufferType:f=zs}=e;this.isWebGLRenderer=!0;let p;if(n!==null){if(typeof WebGLRenderingContext<`u`&&n instanceof WebGLRenderingContext)throw Error(`THREE.WebGLRenderer: WebGL 1 is not supported since r163.`);p=n.getContextAttributes().alpha}else p=a;let m=f,h=new Set([sc,oc,ic]),g=new Set([zs,Ws,Hs,Ys,qs,Js]),_=new Uint32Array(4),v=new Int32Array(4),y=new X,b=null,x=null,S=[],C=[],w=null;this.domElement=t,this.debug={checkShaderErrors:!0,onShaderError:null},this.autoClear=!0,this.autoClearColor=!0,this.autoClearDepth=!0,this.autoClearStencil=!0,this.sortObjects=!0,this.clippingPlanes=[],this.localClippingEnabled=!1,this.toneMapping=0,this.toneMappingExposure=1,this.transmissionResolutionScale=1;let T=this,E=!1,D=null,O=null,ee=null,k=null;this._outputColorSpace=rl;let te=0,ne=0,re=null,ie=-1,ae=null,oe=new hu,se=new hu,A=null,ce=new Z(0),le=0,ue=t.width,de=t.height,j=1,fe=null,pe=null,me=new hu(0,0,ue,de),he=new hu(0,0,ue,de),ge=!1,_e=new rp,ve=!1,ye=!1,be=new bu,xe=new X,Se=new hu,Ce={background:null,fog:null,environment:null,overrideMaterial:null,isScene:!0},we=!1;function M(){return re===null?j:1}let N=n;function P(e,n){return t.getContext(e,n)}try{let e={alpha:!0,depth:r,stencil:i,antialias:o,premultipliedAlpha:s,preserveDrawingBuffer:c,powerPreference:l,failIfMajorPerformanceCaveat:u};if(`setAttribute`in t&&t.setAttribute(`data-engine`,`three.js r185`),t.addEventListener(`webglcontextlost`,We,!1),t.addEventListener(`webglcontextrestored`,Ge,!1),t.addEventListener(`webglcontextcreationerror`,Ke,!1),N===null){let t=`webgl2`;if(N=P(t,e),N===null)throw P(t)?Error(`THREE.WebGLRenderer: Error creating WebGL context with your selected attributes.`):Error(`THREE.WebGLRenderer: Error creating WebGL context.`)}}catch(e){throw vl(`WebGLRenderer: `+e.message),e}let Te,Ee,F,De,I,Oe,ke,Ae,L,je,R,Me,Ne,Pe,Fe,Ie,Le,Re,ze,z,Be,Ve,He;function Ue(){Te=new Lg(N),Te.init(),Be=new sy(N,Te),Ee=new pg(N,Te,e,Be),F=new ay(N,Te),Ee.reversedDepthBuffer&&d&&F.buffers.depth.setReversed(!0),O=N.createFramebuffer(),ee=N.createFramebuffer(),k=N.createFramebuffer(),De=new Bg(N),I=new zv,Oe=new oy(N,Te,F,I,Ee,Be,De),ke=new Ig(T),Ae=new ig(N),Ve=new dg(N,Ae),L=new Rg(N,Ae,De,Ve),je=new Hg(N,L,Ae,Ve,De),Re=new Vg(N,Ee,Oe),Fe=new mg(I),R=new Rv(T,ke,Te,Ee,Ve,Fe),Me=new my(T,I),Ne=new Uv,Pe=new Xv(Te),Le=new ug(T,ke,F,je,p,s),Ie=new iy(T,je,Ee),He=new hy(N,De,Ee,F),ze=new fg(N,Te,De),z=new zg(N,Te,De),De.programs=R.programs,T.capabilities=Ee,T.extensions=Te,T.properties=I,T.renderLists=Ne,T.shadowMap=Ie,T.state=F,T.info=De}Ue(),m!==1009&&(w=new Wg(m,t.width,t.height,o,r,i));let B=new dy(T,N);this.xr=B,this.getContext=function(){return N},this.getContextAttributes=function(){return N.getContextAttributes()},this.forceContextLoss=function(){let e=Te.get(`WEBGL_lose_context`);e&&e.loseContext()},this.forceContextRestore=function(){let e=Te.get(`WEBGL_lose_context`);e&&e.restoreContext()},this.getPixelRatio=function(){return j},this.setPixelRatio=function(e){e!==void 0&&(j=e,this.setSize(ue,de,!1))},this.getSize=function(e){return e.set(ue,de)},this.setSize=function(e,n,r=!0){if(B.isPresenting){J(`WebGLRenderer: Can't change size while VR device is presenting.`);return}ue=e,de=n,t.width=Math.floor(e*j),t.height=Math.floor(n*j),r===!0&&(t.style.width=e+`px`,t.style.height=n+`px`),w!==null&&w.setSize(t.width,t.height),this.setViewport(0,0,e,n)},this.getDrawingBufferSize=function(e){return e.set(ue*j,de*j).floor()},this.setDrawingBufferSize=function(e,n,r){ue=e,de=n,j=r,t.width=Math.floor(e*r),t.height=Math.floor(n*r),this.setViewport(0,0,e,n)},this.setEffects=function(e){if(m===1009){vl(`WebGLRenderer: setEffects() requires outputBufferType set to HalfFloatType or FloatType.`);return}if(e){for(let t=0;t{function n(){if(r.forEach(function(e){I.get(e).currentProgram.isReady()&&r.delete(e)}),r.size===0){t(e);return}setTimeout(n,10)}Te.get(`KHR_parallel_shader_compile`)===null?setTimeout(n,10):n()})};let Ze=null;function Qe(e){Ze&&Ze(e)}function $e(){tt.stop()}function et(){tt.start()}let tt=new rg;tt.setAnimationLoop(Qe),typeof self<`u`&&tt.setContext(self),this.setAnimationLoop=function(e){Ze=e,B.setAnimationLoop(e),e===null?tt.stop():tt.start()},B.addEventListener(`sessionstart`,$e),B.addEventListener(`sessionend`,et),this.render=function(e,t){if(t!==void 0&&t.isCamera!==!0){vl(`WebGLRenderer.render: camera is not an instance of THREE.Camera.`);return}if(E===!0)return;D!==null&&D.renderStart(e,t);let n=B.enabled===!0&&B.isPresenting===!0,r=w!==null&&(re===null||n)&&w.begin(T,re);if(e.matrixWorldAutoUpdate===!0&&e.updateMatrixWorld(),t.parent===null&&t.matrixWorldAutoUpdate===!0&&t.updateMatrixWorld(),B.enabled===!0&&B.isPresenting===!0&&(w===null||w.isCompositing()===!1)&&(B.cameraAutoUpdate===!0&&B.updateCamera(t),t=B.getCamera()),e.isScene===!0&&e.onBeforeRender(T,e,t,re),x=Pe.get(e,C.length),x.init(t),x.state.textureUnits=Oe.getTextureUnits(),C.push(x),be.multiplyMatrices(t.projectionMatrix,t.matrixWorldInverse),_e.setFromProjectionMatrix(be,ul,t.reversedDepth),ye=this.localClippingEnabled,ve=Fe.init(this.clippingPlanes,ye),b=Ne.get(e,S.length),b.init(),S.push(b),B.enabled===!0&&B.isPresenting===!0){let e=T.xr.getDepthSensingMesh();e!==null&&nt(e,t,-1/0,T.sortObjects)}nt(e,t,0,T.sortObjects),b.finish(),T.sortObjects===!0&&b.sort(fe,pe,t.reversedDepth),we=B.enabled===!1||B.isPresenting===!1||B.hasDepthSensing()===!1,we&&Le.addToRenderList(b,e),this.info.render.frame++,this.info.autoReset===!0&&this.info.reset(),ve===!0&&Fe.beginShadows();let i=x.state.shadowsArray;if(Ie.render(i,e,t),ve===!0&&Fe.endShadows(),(r&&w.hasRenderPass())===!1){let n=b.opaque,r=b.transmissive;if(x.setupLights(),t.isArrayCamera){let i=t.cameras;if(r.length>0)for(let t=0,a=i.length;t0&&it(n,r,e,t),we&&Le.render(e),rt(b,e,t)}re!==null&&ne===0&&(Oe.updateMultisampleRenderTarget(re),Oe.updateRenderTargetMipmap(re)),r&&w.end(T),e.isScene===!0&&e.onAfterRender(T,e,t),Ve.resetDefaultState(),ie=-1,ae=null,C.pop(),C.length>0?(x=C[C.length-1],Oe.setTextureUnits(x.state.textureUnits),ve===!0&&Fe.setGlobalState(T.clippingPlanes,x.state.camera)):x=null,S.pop(),b=S.length>0?S[S.length-1]:null,D!==null&&D.renderEnd()};function nt(e,t,n,r){if(e.visible===!1)return;if(e.layers.test(t.layers)){if(e.isGroup)n=e.renderOrder;else if(e.isLOD)e.autoUpdate===!0&&e.update(t);else if(e.isLightProbeGrid)x.pushLightProbeGrid(e);else if(e.isLight)x.pushLight(e),e.castShadow&&x.pushShadow(e);else if(e.isSprite){if(!e.frustumCulled||_e.intersectsSprite(e)){r&&Se.setFromMatrixPosition(e.matrixWorld).applyMatrix4(be);let t=je.update(e),i=e.material;i.visible&&b.push(e,t,i,n,Se.z,null)}}else if((e.isMesh||e.isLine||e.isPoints)&&(!e.frustumCulled||_e.intersectsObject(e))){let t=je.update(e),i=e.material;if(r&&(e.boundingSphere===void 0?(t.boundingSphere===null&&t.computeBoundingSphere(),Se.copy(t.boundingSphere.center)):(e.boundingSphere===null&&e.computeBoundingSphere(),Se.copy(e.boundingSphere.center)),Se.applyMatrix4(e.matrixWorld).applyMatrix4(be)),Array.isArray(i)){let r=t.groups;for(let a=0,o=r.length;a0&&at(i,t,n),a.length>0&&at(a,t,n),o.length>0&&at(o,t,n),F.buffers.depth.setTest(!0),F.buffers.depth.setMask(!0),F.buffers.color.setMask(!0),F.setPolygonOffset(!1)}function it(e,t,n,r){if((n.isScene===!0?n.overrideMaterial:null)!==null)return;if(x.state.transmissionRenderTarget[r.id]===void 0){let e=Te.has(`EXT_color_buffer_half_float`)||Te.has(`EXT_color_buffer_float`);x.state.transmissionRenderTarget[r.id]=new _u(1,1,{generateMipmaps:!0,type:e?Ks:zs,minFilter:Rs,samples:Math.max(4,Ee.samples),stencilBuffer:i,resolveDepthBuffer:!1,resolveStencilBuffer:!1,colorSpace:iu.workingColorSpace})}let a=x.state.transmissionRenderTarget[r.id],o=r.viewport||oe;a.setSize(o.z*T.transmissionResolutionScale,o.w*T.transmissionResolutionScale);let s=T.getRenderTarget(),c=T.getActiveCubeFace(),l=T.getActiveMipmapLevel();T.setRenderTarget(a),T.getClearColor(ce),le=T.getClearAlpha(),le<1&&T.setClearColor(16777215,.5),T.clear(),we&&Le.render(n);let u=T.toneMapping;T.toneMapping=0;let d=r.viewport;if(r.viewport!==void 0&&(r.viewport=void 0),x.setupLightsView(r),ve===!0&&Fe.setGlobalState(T.clippingPlanes,r),at(e,n,r),Oe.updateMultisampleRenderTarget(a),Oe.updateRenderTargetMipmap(a),Te.has(`WEBGL_multisampled_render_to_texture`)===!1){let e=!1;for(let i=0,a=t.length;i0,r.currentProgram=d,r.uniformsList=null,d}function ct(e){if(e.uniformsList===null){let t=e.currentProgram.getUniforms();e.uniformsList=Z_.seqWithValue(t.seq,e.uniforms)}return e.uniformsList}function lt(e,t){let n=I.get(e);n.outputColorSpace=t.outputColorSpace,n.batching=t.batching,n.batchingColor=t.batchingColor,n.instancing=t.instancing,n.instancingColor=t.instancingColor,n.instancingMorph=t.instancingMorph,n.skinning=t.skinning,n.morphTargets=t.morphTargets,n.morphNormals=t.morphNormals,n.morphColors=t.morphColors,n.morphTargetsCount=t.morphTargetsCount,n.numClippingPlanes=t.numClippingPlanes,n.numIntersection=t.numClipIntersection,n.vertexAlphas=t.vertexAlphas,n.vertexTangents=t.vertexTangents,n.toneMapping=t.toneMapping}function ut(e,t){if(e.length===0)return null;if(e.length===1)return e[0].texture===null?null:e[0];y.setFromMatrixPosition(t.matrixWorld);for(let t=0,n=e.length;t0),f=!!n.morphAttributes.position,p=!!n.morphAttributes.normal,m=!!n.morphAttributes.color,h=0;r.toneMapped&&(re===null||re.isXRRenderTarget===!0)&&(h=T.toneMapping);let g=n.morphAttributes.position||n.morphAttributes.normal||n.morphAttributes.color,_=g===void 0?0:g.length,v=I.get(r),y=x.state.lights;if(ve===!0&&(ye===!0||e!==ae)){let t=e===ae&&r.id===ie;Fe.setState(r,e,t)}let b=!1;r.version===v.__version?v.needsLights&&v.lightsStateVersion!==y.state.version?b=!0:v.outputColorSpace===s?i.isBatchedMesh&&v.batching===!1||!i.isBatchedMesh&&v.batching===!0||i.isBatchedMesh&&v.batchingColor===!0&&i.colorTexture===null||i.isBatchedMesh&&v.batchingColor===!1&&i.colorTexture!==null||i.isInstancedMesh&&v.instancing===!1||!i.isInstancedMesh&&v.instancing===!0||i.isSkinnedMesh&&v.skinning===!1||!i.isSkinnedMesh&&v.skinning===!0||i.isInstancedMesh&&v.instancingColor===!0&&i.instanceColor===null||i.isInstancedMesh&&v.instancingColor===!1&&i.instanceColor!==null||i.isInstancedMesh&&v.instancingMorph===!0&&i.morphTexture===null||i.isInstancedMesh&&v.instancingMorph===!1&&i.morphTexture!==null?b=!0:v.envMap===l?r.fog===!0&&v.fog!==a||v.numClippingPlanes!==void 0&&(v.numClippingPlanes!==Fe.numPlanes||v.numIntersection!==Fe.numIntersection)?b=!0:v.vertexAlphas===u&&v.vertexTangents===d&&v.morphTargets===f&&v.morphNormals===p&&v.morphColors===m&&v.toneMapping===h&&v.morphTargetsCount===_?!!v.lightProbeGrid!=x.state.lightProbeGridArray.length>0&&(b=!0):b=!0:b=!0:b=!0:(b=!0,v.__version=r.version);let S=v.currentProgram;b===!0&&(S=st(r,t,i),D&&r.isNodeMaterial&&D.onUpdateProgram(r,S,v));let C=!1,w=!1,E=!1,O=S.getUniforms(),ee=v.uniforms;if(F.useProgram(S.program)&&(C=!0,w=!0,E=!0),r.id!==ie&&(ie=r.id,w=!0),v.needsLights){let e=ut(x.state.lightProbeGridArray,i);v.lightProbeGrid!==e&&(v.lightProbeGrid=e,w=!0)}if(C||ae!==e){F.buffers.depth.getReversed()&&e.reversedDepth!==!0&&(e._reversedDepth=!0,e.updateProjectionMatrix()),O.setValue(N,`projectionMatrix`,e.projectionMatrix),O.setValue(N,`viewMatrix`,e.matrixWorldInverse);let t=O.map.cameraPosition;t!==void 0&&t.setValue(N,xe.setFromMatrixPosition(e.matrixWorld)),Ee.logarithmicDepthBuffer&&O.setValue(N,`logDepthBufFC`,2/(Math.log(e.far+1)/Math.LN2)),(r.isMeshPhongMaterial||r.isMeshToonMaterial||r.isMeshLambertMaterial||r.isMeshBasicMaterial||r.isMeshStandardMaterial||r.isShaderMaterial)&&O.setValue(N,`isOrthographic`,e.isOrthographicCamera===!0),ae!==e&&(ae=e,w=!0,E=!0)}if(v.needsLights&&(y.state.directionalShadowMap.length>0&&O.setValue(N,`directionalShadowMap`,y.state.directionalShadowMap,Oe),y.state.spotShadowMap.length>0&&O.setValue(N,`spotShadowMap`,y.state.spotShadowMap,Oe),y.state.pointShadowMap.length>0&&O.setValue(N,`pointShadowMap`,y.state.pointShadowMap,Oe)),i.isSkinnedMesh){O.setOptional(N,i,`bindMatrix`),O.setOptional(N,i,`bindMatrixInverse`);let e=i.skeleton;e&&(e.boneTexture===null&&e.computeBoneTexture(),O.setValue(N,`boneTexture`,e.boneTexture,Oe))}i.isBatchedMesh&&(O.setOptional(N,i,`batchingTexture`),O.setValue(N,`batchingTexture`,i._matricesTexture,Oe),O.setOptional(N,i,`batchingIdTexture`),O.setValue(N,`batchingIdTexture`,i._indirectTexture,Oe),O.setOptional(N,i,`batchingColorTexture`),i._colorsTexture!==null&&O.setValue(N,`batchingColorTexture`,i._colorsTexture,Oe));let k=n.morphAttributes;if((k.position!==void 0||k.normal!==void 0||k.color!==void 0)&&Re.update(i,n,S),(w||v.receiveShadow!==i.receiveShadow)&&(v.receiveShadow=i.receiveShadow,O.setValue(N,`receiveShadow`,i.receiveShadow)),(r.isMeshStandardMaterial||r.isMeshLambertMaterial||r.isMeshPhongMaterial)&&r.envMap===null&&t.environment!==null&&(ee.envMapIntensity.value=t.environmentIntensity),ee.dfgLUT!==void 0&&(ee.dfgLUT.value=vy()),w){if(O.setValue(N,`toneMappingExposure`,T.toneMappingExposure),v.needsLights&&ft(ee,E),a&&r.fog===!0&&Me.refreshFogUniforms(ee,a),Me.refreshMaterialUniforms(ee,r,j,de,x.state.transmissionRenderTarget[e.id]),v.needsLights&&v.lightProbeGrid){let e=v.lightProbeGrid;ee.probesSH.value=e.texture,ee.probesMin.value.copy(e.boundingBox.min),ee.probesMax.value.copy(e.boundingBox.max),ee.probesResolution.value.copy(e.resolution)}Z_.upload(N,ct(v),ee,Oe)}if(r.isShaderMaterial&&r.uniformsNeedUpdate===!0&&(Z_.upload(N,ct(v),ee,Oe),r.uniformsNeedUpdate=!1),r.isSpriteMaterial&&O.setValue(N,`center`,i.center),O.setValue(N,`modelViewMatrix`,i.modelViewMatrix),O.setValue(N,`normalMatrix`,i.normalMatrix),O.setValue(N,`modelMatrix`,i.matrixWorld),r.uniformsGroups!==void 0){let e=r.uniformsGroups;for(let t=0,n=e.length;t0&&Oe.useMultisampledRTT(e)===!1?I.get(e).__webglMultisampledFramebuffer:Array.isArray(c)?c[n]:c,oe.copy(e.viewport),se.copy(e.scissor),A=e.scissorTest}else oe.copy(me).multiplyScalar(j).floor(),se.copy(he).multiplyScalar(j).floor(),A=ge;if(n!==0&&(r=O),F.bindFramebuffer(N.FRAMEBUFFER,r)&&F.drawBuffers(e,r),F.viewport(oe),F.scissor(se),F.setScissorTest(A),i){let r=I.get(e.texture);N.framebufferTexture2D(N.FRAMEBUFFER,N.COLOR_ATTACHMENT0,N.TEXTURE_CUBE_MAP_POSITIVE_X+t,r.__webglTexture,n)}else if(a){let r=t;for(let t=0;t1&&N.readBuffer(N.COLOR_ATTACHMENT0+s),!Ee.textureFormatReadable(c)){vl(`WebGLRenderer.readRenderTargetPixels: renderTarget is not in RGBA or implementation defined format.`);return}if(!Ee.textureTypeReadable(l)){vl(`WebGLRenderer.readRenderTargetPixels: renderTarget is not in UnsignedByteType or implementation defined type.`);return}t>=0&&t<=e.width-r&&n>=0&&n<=e.height-i&&N.readPixels(t,n,r,i,Be.convert(c),Be.convert(l),a)}finally{let e=re===null?null:I.get(re).__webglFramebuffer;F.bindFramebuffer(N.FRAMEBUFFER,e)}}},this.readRenderTargetPixelsAsync=async function(e,t,n,r,i,a,o,s=0){if(!(e&&e.isWebGLRenderTarget))throw Error(`THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.`);let c=I.get(e).__webglFramebuffer;if(e.isWebGLCubeRenderTarget&&o!==void 0&&(c=c[o]),c)if(t>=0&&t<=e.width-r&&n>=0&&n<=e.height-i){F.bindFramebuffer(N.FRAMEBUFFER,c);let o=e.textures[s],l=o.format,u=o.type;if(e.textures.length>1&&N.readBuffer(N.COLOR_ATTACHMENT0+s),!Ee.textureFormatReadable(l))throw Error(`THREE.WebGLRenderer.readRenderTargetPixelsAsync: renderTarget is not in RGBA or implementation defined format.`);if(!Ee.textureTypeReadable(u))throw Error(`THREE.WebGLRenderer.readRenderTargetPixelsAsync: renderTarget is not in UnsignedByteType or implementation defined type.`);let d=N.createBuffer();N.bindBuffer(N.PIXEL_PACK_BUFFER,d),N.bufferData(N.PIXEL_PACK_BUFFER,a.byteLength,N.STREAM_READ),N.readPixels(t,n,r,i,Be.convert(l),Be.convert(u),0);let f=re===null?null:I.get(re).__webglFramebuffer;F.bindFramebuffer(N.FRAMEBUFFER,f);let p=N.fenceSync(N.SYNC_GPU_COMMANDS_COMPLETE,0);return N.flush(),await bl(N,p,4),N.bindBuffer(N.PIXEL_PACK_BUFFER,d),N.getBufferSubData(N.PIXEL_PACK_BUFFER,0,a),N.deleteBuffer(d),N.deleteSync(p),a}else throw Error(`THREE.WebGLRenderer.readRenderTargetPixelsAsync: requested read bounds are out of range.`)},this.copyFramebufferToTexture=function(e,t=null,n=0){let r=2**-n,i=Math.floor(e.image.width*r),a=Math.floor(e.image.height*r),o=t===null?0:t.x,s=t===null?0:t.y;Oe.setTexture2D(e,0),N.copyTexSubImage2D(N.TEXTURE_2D,n,0,0,o,s,i,a),F.unbindTexture()},this.copyTextureToTexture=function(e,t,n=null,r=null,i=0,a=0){let o,s,c,l,u,d,f,p,m,h=e.isCompressedTexture?e.mipmaps[a]:e.image;if(n!==null)o=n.max.x-n.min.x,s=n.max.y-n.min.y,c=n.isBox3?n.max.z-n.min.z:1,l=n.min.x,u=n.min.y,d=n.isBox3?n.min.z:0;else{let t=2**-i;o=Math.floor(h.width*t),s=Math.floor(h.height*t),c=e.isDataArrayTexture?h.depth:e.isData3DTexture?Math.floor(h.depth*t):1,l=0,u=0,d=0}r===null?(f=0,p=0,m=0):(f=r.x,p=r.y,m=r.z);let g=Be.convert(t.format),_=Be.convert(t.type),v;t.isData3DTexture?(Oe.setTexture3D(t,0),v=N.TEXTURE_3D):t.isDataArrayTexture||t.isCompressedArrayTexture?(Oe.setTexture2DArray(t,0),v=N.TEXTURE_2D_ARRAY):(Oe.setTexture2D(t,0),v=N.TEXTURE_2D),F.activeTexture(N.TEXTURE0),F.pixelStorei(N.UNPACK_FLIP_Y_WEBGL,t.flipY),F.pixelStorei(N.UNPACK_PREMULTIPLY_ALPHA_WEBGL,t.premultiplyAlpha),F.pixelStorei(N.UNPACK_ALIGNMENT,t.unpackAlignment);let y=F.getParameter(N.UNPACK_ROW_LENGTH),b=F.getParameter(N.UNPACK_IMAGE_HEIGHT),x=F.getParameter(N.UNPACK_SKIP_PIXELS),S=F.getParameter(N.UNPACK_SKIP_ROWS),C=F.getParameter(N.UNPACK_SKIP_IMAGES);F.pixelStorei(N.UNPACK_ROW_LENGTH,h.width),F.pixelStorei(N.UNPACK_IMAGE_HEIGHT,h.height),F.pixelStorei(N.UNPACK_SKIP_PIXELS,l),F.pixelStorei(N.UNPACK_SKIP_ROWS,u),F.pixelStorei(N.UNPACK_SKIP_IMAGES,d);let w=e.isDataArrayTexture||e.isData3DTexture,T=t.isDataArrayTexture||t.isData3DTexture;if(e.isDepthTexture){let n=I.get(e),r=I.get(t),h=I.get(n.__renderTarget),g=I.get(r.__renderTarget);F.bindFramebuffer(N.READ_FRAMEBUFFER,h.__webglFramebuffer),F.bindFramebuffer(N.DRAW_FRAMEBUFFER,g.__webglFramebuffer);for(let n=0;nnew X(e,t)),24);t.push(re);let ie=new Cf(re,n);ie.scale.set(1.28,1,.8),ie.castShadow=!0,ne.add(ie);let ae=Ry(.062,n,t);ae.scale.set(1.05,.62,.42),ae.position.set(.085,.26,.125),ne.add(ae);let oe=ae.clone();oe.position.x=-.085,ne.add(oe);let se=Ry(.075,n,t);se.scale.set(1.05,1.1,.95),se.position.set(.215,.315,0),ne.add(se);let A=se.clone();A.position.x=-.215,ne.add(A);let ce=[ae,oe,se,A],le=Ry(.1,f,t);le.scale.set(1.05,1.35,.55),le.position.set(.02,.05,.1),le.castShadow=!1,ne.add(le);let ue=zy(.13,.06,.1,n,t);ue.position.set(.115,.4,-.02),ue.rotation.z=-.5,ne.add(ue);let de=zy(.13,.06,.1,n,t);de.position.set(-.115,.4,-.02),de.rotation.z=.5,ne.add(de),ce.push(ue,de);let j=new qu;j.name=`head`,j.position.y=.44,ne.add(j);let fe=new Cf(new Np(.052,.062,.11,12),r);t.push(fe.geometry),fe.position.y=.02,fe.castShadow=!0,j.add(fe);let pe=new cm([[.05,.02],[.076,.05],[.096,.08],[.106,.13],[.102,.18],[.072,.23],[.02,.26]].map(([e,t])=>new X(e,t)),22);t.push(pe);let me=new Cf(pe,n);me.scale.set(.92,1.05,.95),me.castShadow=!0,j.add(me);let he=Ry(.085,n,t,16,12);he.scale.set(.85,.72,.9),he.position.set(0,.075,.028),j.add(he);let ge=zy(.032,.045,.035,r,t);ge.position.set(0,.12,.112),j.add(ge);let _e=zy(.022,.05,.02,n,t);_e.position.set(0,.16,.104),j.add(_e);let ve=zy(.045,.012,.012,r,t);ve.position.set(0,.062,.104),j.add(ve);let ye=Ry(.04,n,t,12,10);ye.scale.set(.9,.75,.8),ye.position.set(0,.035,.07),j.add(ye);let be=Ry(.028,n,t,10,8);be.scale.set(1.1,.7,.8),be.position.set(.07,.11,.075),j.add(be);let xe=be.clone();xe.position.x=-.07,j.add(xe);let Se=zy(.052,.016,.02,r,t);Se.position.set(.048,.165,.1),j.add(Se);let Ce=Se.clone();Ce.position.x=-.048,j.add(Ce);let we=Ry(.026,r,t,10,8);we.scale.set(.5,1,.75),we.position.set(.104,.125,.01),j.add(we);let M=we.clone();M.position.x=-.104,j.add(M);let N=new Cm({color:1315344,roughness:.35});E.push(N);let P=Ry(.016,N,t,8,8);P.position.set(.045,.145,.102),j.add(P);let Te=P.clone();Te.position.x=-.045,j.add(Te);let Ee=Ry(.118,c,t,20,14);Ee.scale.set(.94,.98,1),Ee.position.set(0,.165,-.018),j.add(Ee);let F=Ry(.112,c,t,18,12);F.scale.set(.9,.58,.92),F.position.set(0,.2,.005),j.add(F);let De=Ry(.042,u,t,12,10);De.scale.set(1,.72,.5),De.position.set(.05,.15,.085),De.castShadow=!1,j.add(De);let I=Ry(.042,d,t,12,10);I.scale.set(1,.72,.5),I.position.set(-.05,.15,.085),I.castShadow=!1,j.add(I);let Oe=zy(.05,.008,.01,p,t);Oe.position.set(.05,.178,.104),Oe.castShadow=!1,j.add(Oe);let ke=zy(.05,.008,.01,m,t);ke.position.set(-.05,.178,.104),ke.castShadow=!1,j.add(ke);let Ae=Ry(.035,h,t,12,10);Ae.position.set(.052,.155,.088),Ae.castShadow=!1,j.add(Ae);let L=Ry(.035,g,t,12,10);L.position.set(-.052,.155,.088),L.castShadow=!1,j.add(L);let je=Ry(.028,_,t,10,8);je.position.set(.068,.095,.075),je.castShadow=!1,j.add(je);let R=Ry(.028,v,t,10,8);R.position.set(-.068,.095,.075),R.castShadow=!1,j.add(R);let Me=zy(.014,.1,.006,y,t);Me.position.set(.052,.115,.106),Me.castShadow=!1,j.add(Me);let Ne=zy(.014,.1,.006,b,t);Ne.position.set(-.052,.115,.106),Ne.castShadow=!1,j.add(Ne);let Pe=zy(.011,.07,.006,x,t);Pe.position.set(.008,.075,.118),Pe.castShadow=!1,j.add(Pe);let Fe=zy(.03,.012,.006,S,t);Fe.position.set(.02,.052,.104),Fe.castShadow=!1,j.add(Fe);let Ie=Ry(.09,C,t,12,10);Ie.scale.set(.5,1.2,.7),Ie.position.set(.16,.08,.02),Ie.castShadow=!1,ne.add(Ie);let Le=Ry(.09,w,t,12,10);Le.scale.set(.5,1.2,.7),Le.position.set(-.16,.08,.02),Le.castShadow=!1,ne.add(Le);let Re=zy(.05,.24,.008,T,t);Re.position.set(.03,.08,.155),Re.rotation.z=.12,Re.castShadow=!1,ne.add(Re);let ze=e=>{let r=new qu;r.name=e===1?`shoulderL`:`shoulderR`,r.position.set(.215*e,.315,0),ne.add(r);let i=Ly(.056,Fy-.12,n,t);i.scale.set(1.16,1,1.16),i.position.y=-.3/2,r.add(i);let a=new qu;a.name=e===1?`elbowL`:`elbowR`,a.position.y=-.3,r.add(a);let c=Ry(.048,n,t,12,10);a.add(c);let l=Ly(.048,Iy-.13,n,t);l.scale.set(1.1,1,.92),l.position.y=-.13999999999999999,a.add(l);let u=new qu;u.name=e===1?`gloveL`:`gloveR`,u.position.y=-.3,a.add(u);let d=new Cf(new Np(.055,.062,.07,12),s);t.push(d.geometry),d.position.y=.01,d.castShadow=!0,u.add(d);let f=Ry(.088,o,t,18,14);f.scale.set(1,1.12,1.38),f.position.set(0,-.05,.02),u.add(f);let p=Ry(.032,o,t,10,8);p.position.set(-.05*e,-.045,.075),u.add(p);let m=zy(.05,.008,.012,s,t);return m.position.set(0,-.028,.1),u.add(m),{shoulder:r,elbow:a,glove:u,gloveMesh:f}},z=ze(1),Be=ze(-1),Ve=e=>{let r=new qu;r.name=e===1?`hipL`:`hipR`,r.position.set(.105*e,-.02,0),O.add(r);let o=Ly(.078,.24,n,t);o.scale.set(1.14,1,1.08),o.position.y=-.21,r.add(o);let s=Ly(.092,.16,i,t);s.position.y=-.14,r.add(s);let c=new Cf(new Np(.096,.1,.03,14),a);t.push(c.geometry),c.position.y=-.24,c.castShadow=!0,r.add(c);let u=new qu;u.name=e===1?`kneeL`:`kneeR`,u.position.y=-.44,r.add(u);let d=Ry(.06,n,t,12,10);d.scale.set(.95,1.05,1),u.add(d);let f=Ly(.058,.24,n,t);f.scale.set(1.05,1,1.12),f.position.y=-.21,u.add(f);let p=new qu;p.name=e===1?`ankleL`:`ankleR`,p.position.y=-.44,u.add(p);let m=zy(.1,.075,.3,l,t);m.position.set(0,-.035,.06),p.add(m);let h=Ry(.05,l,t,10,8);h.scale.set(.95,.62,1),h.position.set(0,-.055,.2),p.add(h);let g=new Cf(new Np(.052,.058,.08,10),l);return t.push(g.geometry),g.position.y=.01,g.castShadow=!0,p.add(g),{hip:r,knee:u,ankle:p}},He=Ve(1),Ue=Ve(-1);return{root:D,hips:O,spine:te,chest:ne,head:j,shoulderL:z.shoulder,elbowL:z.elbow,gloveL:z.glove,shoulderR:Be.shoulder,elbowR:Be.elbow,gloveR:Be.glove,hipL:He.hip,kneeL:He.knee,ankleL:He.ankle,hipR:Ue.hip,kneeR:Ue.knee,ankleR:Ue.ankle,chestMesh:ie,headMesh:me,browL:Se,browR:Ce,bruiseL:De,bruiseR:I,bodyBruise:le,cutL:Oe,cutR:ke,swellL:Ae,swellR:L,cheekL:je,cheekR:R,streakL:Me,streakR:Ne,noseStreak:Pe,mouthBlood:Fe,ribL:Ie,ribR:Le,bodyStreak:Re,gloveLMesh:z.gloveMesh,gloveRMesh:Be.gloveMesh,gloveLMaterial:o,gloveRMaterial:o,gloveBaseColor:new Q(e.glove),skinMaterial:n,chestDetails:ce,materials:E,geometries:t}}var Uy=new Z,Wy=new Z,Gy=new Z,Ky=new Z,qy=new Z,Jy=new Z,Yy=new Z(0,-1,0),Xy=new Z;function Zy(e,t,n,r){let i=Fy,a=.36;Uy.copy(e),Wy.copy(t),Gy.subVectors(Wy,Uy);let o=Jl.clamp(Gy.length(),.12,.6449999999999999);Gy.normalize();let s=(i*i-a*a+o*o)/(2*o),c=Math.sqrt(Math.max(1e-4,i*i-s*s));Jy.copy(n).normalize(),Ky.copy(Jy).addScaledVector(Gy,-Jy.dot(Gy)),Ky.lengthSq()<1e-4&&Ky.set(0,-1,0).addScaledVector(Gy,Gy.y),Ky.normalize(),qy.copy(Uy).addScaledVector(Gy,s).addScaledVector(Ky,c),r.elbowWorld.copy(qy),Xy.copy(Uy).addScaledVector(Gy,o),r.targetWorld.copy(Xy)}var Qy=new Z,$y=new Yl,eb=new Yl;function tb(e,t,n,r=0){if(Qy.subVectors(n,t),Qy.lengthSq()<1e-6)return;if(Qy.normalize(),eb.setFromUnitVectors(Yy,Qy),r!==0){let e=new Yl().setFromAxisAngle(Qy,r);eb.premultiply(e)}let i=e.parent;if(i===null){e.quaternion.copy(eb);return}i.getWorldQuaternion($y),e.quaternion.copy($y.invert().multiply(eb))}function nb(){let e=Hy({skin:13081462,skinShadow:11041884,trunks:1316380,trunkTrim:1316380,glove:13081462,gloveTrim:15264236,hair:2827040,shoe:1052948});for(let t of e.chestDetails)t.visible=!1;let t=new Cm({color:12568015,roughness:.72}),n=new Cm({color:1316380,roughness:.7}),r=new Cf(new cm([[.155,-.2],[.16,-.13],[.158,-.07],[.148,0],[.162,.06],[.186,.14],[.204,.22],[.2,.3],[.164,.36],[.11,.42],[.066,.46]].map(([e,t])=>new X(e,t)),24),t);r.scale.set(1.28,1,.84),r.castShadow=!0,e.chest.add(r);let i=new Cf(new Np(.07,.09,.05,12),t);i.position.y=.44,e.chest.add(i);let a=new Cf(new Ap(.07,.025,.02),n);a.position.set(0,.42,.1),e.chest.add(a);let o=[r.geometry,i.geometry,a.geometry];for(let n of[e.shoulderL,e.shoulderR]){let e=new Cf(new jp(.066,.24,4,10),t);e.position.y=-.17,e.castShadow=!0,n.add(e),o.push(e.geometry)}for(let t of[e.hipL,e.hipR]){let e=new Cf(new jp(.088,.26,4,10),n);e.position.y=-.21,e.castShadow=!0,t.add(e),o.push(e.geometry)}for(let t of[e.kneeL,e.kneeR]){let e=new Cf(new jp(.066,.26,4,10),n);e.position.y=-.21,e.castShadow=!0,t.add(e),o.push(e.geometry)}return e.geometries.push(...o),e.materials.push(t,n),e}function rb(e){for(let t of e.geometries)t.dispose();for(let t of e.materials)t.dispose()}var ib=new Z(.08,.29,.25),ab=new Z(-.07,.3,.21),ob=new Z(.12,.02,.26),sb=new Z(-.1,.04,.21),cb=new Z(.14,.14,.32),lb=new Z(-.09,.22,.21),ub=.33,db=-.02;function fb(e,t,n,r){let i=n,a=Math.min(.99,n+r);switch(e){case`jab`:return{windup:gb(0,i*.5,t)*(1-gb(i*.5,i,t)),extend:gb(i*.3,i,t)*(1-gb(a,a+(1-a)*.55,t))};case`straight`:return{windup:gb(0,i*.6,t)*(1-gb(i*.6,i,t)),extend:gb(i*.45,i,t)*(1-gb(a,a+(1-a)*.7,t))};case`hook`:return{windup:gb(0,i*.7,t)*(1-gb(i*.7,i,t)),extend:gb(i*.35,i*.85,t)*(1-gb(a,a+(1-a)*.75,t))};case`uppercut`:return{windup:gb(0,i*.75,t)*(1-gb(i*.7,i,t)),extend:gb(i*.5,i,t)*(1-gb(a,a+(1-a)*.75,t))}}}function pb(e,t,n){let r=n===`power`?.12:0,i=t===`head`?ub:db;switch(e){case`jab`:return new Z(.06,i,.56+r*.5);case`straight`:return new Z(-.04,i,.62+r*.5);case`hook`:return new Z(-.3,i+.02,.48+r*.4);case`uppercut`:return new Z(0,i+.1,.46+r*.4)}}var mb=(e,t,n,r)=>e+(t-e)*(1-Math.exp(-n*r)),hb=(e,t,n,r)=>e+(((t-e+Math.PI)%(Math.PI*2)+Math.PI*2)%(Math.PI*2)-Math.PI)*(1-Math.exp(-n*r)),gb=(e,t,n)=>{let r=Math.max(0,Math.min(1,(n-e)/(t-e)));return r*r*(3-2*r)},_b=new Z,vb=new Z,yb=new Z,bb={elbowWorld:new Z,targetWorld:new Z},xb=new Z,Sb=new Z,Cb=new Z,wb=new Z,Tb=new Z,Eb=new Z,Db=new Z,Ob=new Z,kb=new Yl,Ab={full:1,reduced:.45,off:0},jb=new Q(6031886),Mb=class{rig;mapping;yaw=0;punchT=1;punchKind=null;punchHand=`left`;punchTargetKind=`head`;punchPower=`normal`;actionId=null;actionStartTick=0;actionTotalTicks=1;actionStartupFrac=.33;actionActiveFrac=.1;completedActionId=null;opponentDrop=0;frozenTicks=0;lastAgeTicks=0;predictedId=null;predictedAtSeconds=-1;predictedTotalTicks=1;predictionExpiredTicks=0;downAmount=0;rootX=null;rootZ=0;reactionT=1;reactionDirection=1;reactionPower=0;walkPhase=0;gloveLCurrent=new Z().copy(cb);gloveRCurrent=new Z().copy(lb);hipsRoll=0;spinePitch=0;spineTwist=0;drop=0;kinStep=0;kinHipYaw=0;kinDrop=0;kinHeelR=0;kinPivotL=0;kinHeadTuck=0;hitstop=0;prevVelocityX=0;prevVelocityY=0;inertiaPitch=0;inertiaRoll=0;prevDown=0;landingSpring=0;landingVelocity=0;constructor(e,t){this.rig=e,this.mapping=t}get landingOffset(){return this.landingSpring}impact(e){(e.amount>this.reactionPower||this.reactionT>.4)&&(this.reactionT=0,this.reactionDirection=e.direction,this.reactionPower=Math.max(this.reactionPower*.4,e.amount))}landedHit(e){this.hitstop=Math.max(this.hitstop,e?.045:.078)}predict(e,t,n){if(e.kind!==`punch`||e.id===void 0)return;this.predictedId=e.id,this.predictedAtSeconds=t,this.predictionExpiredTicks=0,this.punchKind=e.class,this.punchHand=e.hand,this.punchTargetKind=e.target,this.punchPower=e.power;let r=Ny(e.class,e.target,e.power);this.predictedTotalTicks=Py(r),this.actionStartupFrac=r.startup/this.predictedTotalTicks,this.actionActiveFrac=r.active/this.predictedTotalTicks,(this.actionId===null||this.punchT>.45)&&(this.punchT=0,this.frozenTicks=0,this.lastAgeTicks=0)}beginAuthoritative(e,t,n){let r=this.predictedId!==null&&e.action_id===this.predictedId;if(this.actionId=e.action_id,this.actionStartTick=e.action_start_tick,this.actionTotalTicks=Math.max(1,e.action_startup_ticks+e.action_active_ticks+e.action_recovery_ticks),this.actionStartupFrac=e.action_startup_ticks/this.actionTotalTicks,this.actionActiveFrac=e.action_active_ticks/this.actionTotalTicks,this.punchKind=e.action,this.punchHand=e.action_hand??(e.stance===`orthodox`?`left`:`right`),this.punchTargetKind=e.action_target??`head`,this.punchPower=e.action_power??`normal`,r){let r=(n-this.predictedAtSeconds)*30,i=t-e.action_start_tick,a=r-i;Math.abs(a)>1&&(this.punchT=Math.max(0,Math.min(1,i/this.actionTotalTicks)),this.frozenTicks=0),this.predictedId=null}else this.punchT=Math.max(0,Math.min(1,(t-e.action_start_tick)/this.actionTotalTicks)),this.frozenTicks=0,this.lastAgeTicks=this.punchT*this.actionTotalTicks}update(e,t,n,r,i,a=`full`,o=0){let s=this.rig,c=e.stance===`orthodox`?1:-1,l=this.mapping.x(e.x),u=this.mapping.z(e.y);this.rootX===null&&(this.rootX=l,this.rootZ=u);let d=.05,f=Jl.clamp(l-this.rootX,-.05,d),p=Jl.clamp(u-this.rootZ,-.05,d);this.rootX+=f,this.rootZ+=p;let m=Math.atan2(this.mapping.x(t.x)-l,(this.mapping.z(t.y)-u)*.45);this.yaw=hb(this.yaw,m,7,n),e.action_id!==null&&e.action_id!==this.actionId&&e.action_id!==this.completedActionId&&this.beginAuthoritative(e,o,r),e.action_id===null&&(this.actionId=null,this.completedActionId=null),this.predictedId!==null&&(this.predictionExpiredTicks+=n*30,this.predictionExpiredTicks>10&&(this.predictedId=null,this.punchT=1));let h=this.predictedId!==null&&this.actionId===null,g=0,_=1;h?(g=(r-this.predictedAtSeconds)*30-this.frozenTicks,_=this.predictedTotalTicks):this.actionId!==null&&(g=o-this.actionStartTick-this.frozenTicks,_=this.actionTotalTicks),this.hitstop>0&&(this.hitstop=Math.max(0,this.hitstop-n),this.frozenTicks+=n*30),h||this.actionId!==null?(this.punchT=Math.max(0,Math.min(1,g/_)),this.punchT>=1&&this.actionId!==null&&(this.completedActionId=this.actionId,this.actionId=null)):this.punchT=1;let v=1-e.stamina/Math.max(1,e.maximum_stamina),y=Math.hypot(e.velocity_x,e.velocity_y)*.006,b=Math.min(1,y*.55);this.walkPhase+=y*n*4.6;let x=(e.velocity_x-this.prevVelocityX)/Math.max(.001,n),S=(e.velocity_y-this.prevVelocityY)/Math.max(.001,n);this.prevVelocityX=e.velocity_x,this.prevVelocityY=e.velocity_y;let C=(Math.sin(this.yaw)*this.mapping.x(x)+Math.cos(this.yaw)*this.mapping.z(S))*.12,w=(Math.cos(this.yaw)*this.mapping.x(x)-Math.sin(this.yaw)*this.mapping.z(S))*.12;this.inertiaPitch=mb(this.inertiaPitch,Jl.clamp(-C,-.16,.16),6,n),this.inertiaRoll=mb(this.inertiaRoll,Jl.clamp(w,-.12,.12),6,n);let T=+!!e.is_downed,E=e.is_downed?2.6:1.5;this.downAmount=mb(this.downAmount,T,E,n);let D=gb(0,1,this.downAmount);D>.72&&this.prevDown<=.72&&(this.landingVelocity=-.85),this.prevDown=D;let O=-this.landingSpring*90-this.landingVelocity*12;this.landingVelocity+=O*n,this.landingSpring=Jl.clamp(this.landingSpring+this.landingVelocity*n,-.09,.06),this.reactionT=Math.min(1,this.reactionT+n/.42);let ee=Math.min(1,this.reactionPower/220),k=(1-gb(0,.8,this.reactionT))*ee,te=gb(0,.14,this.reactionT)*(1-gb(.35,1,this.reactionT))*ee,ne=Math.min(1,e.stunned_ticks/45),re=i?0:Math.sin(r*8.6)*.05*ne,ie=4.4-v*1.4,ae=i||D>.5?0:-Math.abs(Math.sin(r*ie+this.walkPhase*.35))*(.017+v*.01),oe=i||D>.5?0:Math.sin(r*ie*.5)*.022,se=i?0:Math.sin(r*(2.2+v*2.6))*(.012+v*.03),A=-.035,ce=0,le=.09;e.defense===`weave`?(A=-.26,ce=.34*c,le=.3):e.defense===`slip_left`?(ce=.2,le=.12):e.defense===`slip_right`?(ce=-.2,le=.12):e.defense===`pull`&&(le=-.26),e.is_foul_recovery_target&&(A=-.18,le=.42),(e.clinch_ticks>0||e.clinch_startup_ticks>0)&&(le=.4,A=-.08),A-=te*.05,le-=te*.34,ce+=re+this.inertiaRoll,le+=this.inertiaPitch;let ue=0,de=0,j=0,fe=0,pe=0,me=0,he=0;if(this.punchT<1&&this.punchKind!==null){let{windup:e,extend:t}=fb(this.punchKind,this.punchT,this.actionStartupFrac,this.actionActiveFrac),n=this.punchHand===`left`?-1:1,r=this.punchTargetKind===`body`?-.09*t:0;this.punchKind===`jab`?(ue=.14*t*n,de=.12*t,j=.06*t*n,pe=.3*t,he=.15*t,le+=.14*t):this.punchKind===`straight`?(ue=.38*t*n,j=.32*t*n,pe=.5*t,de=.12*t,he=.1*t,le+=.16*t):this.punchKind===`hook`?(ue=.34*t*n,j=.3*t*n,me=.55*t,ce+=.09*t*n,he=.08*t):(ue=.26*t*n,j=.22*t*n,fe=-.18*e+.07*t,le+=.14*e-.07*t,pe=.4*t),fe+=r}this.drop=mb(this.drop,A,12,n),this.hipsRoll=mb(this.hipsRoll,ce,12,n),this.spinePitch=mb(this.spinePitch,le,11,n),this.spineTwist=mb(this.spineTwist,ue,16,n),this.kinStep=mb(this.kinStep,de,14,n),this.kinHipYaw=mb(this.kinHipYaw,j,14,n),this.kinDrop=mb(this.kinDrop,fe,13,n),this.kinHeelR=mb(this.kinHeelR,pe,14,n),this.kinPivotL=mb(this.kinPivotL,me,14,n),this.kinHeadTuck=mb(this.kinHeadTuck,he,14,n);let ge=.5*c,_e=this.yaw+ge*(1-D);s.root.rotation.set(0,_e,0);let ve=Math.sin(_e)*this.kinStep*(1-D),ye=Math.cos(_e)*this.kinStep*(1-D);s.root.position.set(this.rootX+ve,0,this.rootZ+ye);let be=this.reactionDirection>=0?1:-1;s.hips.position.y=.955+ae+(this.drop+this.kinDrop)*(1-D)-D*.8+this.landingSpring,s.hips.position.x=oe*(1-D),s.hips.rotation.set(-D*(Math.PI/2-.12)+this.spinePitch*.35*(1-D),this.kinHipYaw*(1-D)+D*.32*be,this.hipsRoll*.5*(1-D)+oe*.8*(1-D)+D*.15*be),s.spine.rotation.set(this.spinePitch*(1-D),(this.spineTwist+Math.sin(this.walkPhase)*.05*b)*(1-D),this.hipsRoll*.55*(1-D));let xe=.1+this.kinHeadTuck-this.spinePitch*.7-k*.55+D*.3,Se=-this.hipsRoll*.8+k*.3*(this.reactionDirection>=0?-1:1),Ce=i?0:Math.sin(r*.9)*.07+Math.sin(r*1.7)*.03;s.head.rotation.set(xe,-this.spineTwist*.5+Ce*(1-D),Se),s.chest.scale.set(1+se,1+se*.5,1+se),this.poseLegs(e,b,D,be,c),s.root.updateMatrixWorld(!0);let we=e.defense===`guard_high`?ib:e.defense===`guard_low`?ob:cb,M=e.defense===`guard_high`?ab:e.defense===`guard_low`?sb:lb,N=Sb.copy(we),P=Cb.copy(M);if(e.is_foul_recovery_target&&(N.set(.08,.32,.2),P.set(-.06,.3,.18)),(e.clinch_ticks>0||e.clinch_startup_ticks>0)&&(N.set(.16,-.05,.5),P.set(-.16,-.02,.48)),D>.03){let e=Math.sin(gb(.06,.5,D)*Math.PI)*.42;N.lerp(_b.set(.56,.1,-.05),D),P.lerp(_b.set(-.54,.12,.02),D),N.y+=e,P.y+=e*.85,N.x+=e*.2*be,P.x+=e*.15*be}else ne>.15&&(N.lerp(_b.set(.3,-.25,.15),ne*.7),P.lerp(_b.set(-.3,-.22,.15),ne*.7));if(!i&&D<.1){let e=r*1.9+this.walkPhase*.2;N.x+=Math.sin(e)*.014,N.y+=Math.cos(e*1.3)*.012,P.x+=Math.cos(e*.8)*.012,P.y+=Math.sin(e*1.1)*.013;let t=(r*.27+(c>0?0:.5))%1,n=gb(.86,.9,t)*(1-gb(.9,.97,t));this.punchT>=1&&(c>0?N.z+=n*.12:P.z+=n*.12)}if(this.punchT<1&&this.punchKind!==null&&D<.85){let{windup:e,extend:r}=fb(this.punchKind,this.punchT,this.actionStartupFrac,this.actionActiveFrac),i=r*(1-D),a=t.is_downed?-1.2:t.defense===`weave`?-.24:-.03;this.opponentDrop=mb(this.opponentDrop,a,4,n),Ob.set(this.mapping.x(t.x),(this.punchTargetKind===`body`?1.2:1.62)+this.opponentDrop,this.mapping.z(t.y));let o=s.chest.worldToLocal(Db.copy(Ob)),c=wb.copy(pb(this.punchKind,this.punchTargetKind,this.punchPower));if(this.punchKind===`jab`||this.punchKind===`straight`)c.x=o.x*.92,c.y=o.y,c.z=Jl.clamp(o.z,.4,.8);else if(this.punchKind===`hook`){let e=gb(this.actionStartupFrac*.85,this.actionStartupFrac+this.actionActiveFrac*.75,this.punchT),t=this.punchHand===`left`?1:-1;c.x=Jl.lerp(o.x+.42*t,o.x-.16*t,e),c.z=o.z*(.72+.28*Math.sin(e*Math.PI*.5)),c.y=o.y}else if(this.punchKind===`uppercut`){let e=gb(this.actionStartupFrac*.7,this.actionStartupFrac+this.actionActiveFrac*.5,this.punchT);c.x=o.x*.9,c.y=Jl.lerp(-.26,o.y+.04,e),c.z=Jl.lerp(.24,o.z*.94,e)}let l=Eb.set(0,this.punchKind===`uppercut`?-.22:-.03,this.punchKind===`jab`?-.1:-.16).multiplyScalar(e),u=this.punchHand===`left`?N:P,d=this.punchHand===`left`?P:N;this.punchKind===`straight`&&d.set(-.06,.27,.17),this.punchKind===`hook`&&d.set(-.05,.3,.15),this.punchKind===`uppercut`&&(d.y-=.08);let f=Tb.copy(u).add(l).lerp(c,i);if(this.punchPower===`power`&&Math.abs(this.punchT-(this.actionStartupFrac+this.actionActiveFrac*.5))<.06){let e=(1-Math.abs(this.punchT-(this.actionStartupFrac+this.actionActiveFrac*.5))/.06)*.06;f.addScaledVector(c,e*i)}u.copy(f)}if(e.taunt_ticks>0&&D<.1){let t=(60-e.taunt_ticks)/60*4,n=Math.floor(t)%2==0?1:-1,r=Math.abs(Math.sin(t*Math.PI));N.set(Jl.lerp(.28,-.3,r*(n>0?1:.15)),.52+r*.18,.3),P.set(Jl.lerp(-.28,.3,r*(n<0?1:.15)),.46+r*.2,.3),s.hips.rotation.z+=n*r*.14,s.hips.position.y-=r*.035,s.spine.rotation.y+=n*r*.18,s.head.rotation.z+=n*r*.1}N.x*=c,P.x*=c;let Te=D>.05?9:this.punchT<1?34:26;this.gloveLCurrent.x=mb(this.gloveLCurrent.x,N.x,Te,n),this.gloveLCurrent.y=mb(this.gloveLCurrent.y,N.y,Te,n),this.gloveLCurrent.z=mb(this.gloveLCurrent.z,N.z,Te,n),this.gloveRCurrent.x=mb(this.gloveRCurrent.x,P.x,Te,n),this.gloveRCurrent.y=mb(this.gloveRCurrent.y,P.y,Te,n),this.gloveRCurrent.z=mb(this.gloveRCurrent.z,P.z,Te,n),this.solveArmIK(s.shoulderL,s.elbowL,s.gloveL,this.gloveLCurrent,1,s),this.solveArmIK(s.shoulderR,s.elbowR,s.gloveR,this.gloveRCurrent,-1,s),this.applyTrauma(e,t,a)}poseLegs(e,t,n,r,i){let a=this.rig,o=.42*t*(1-n),s=.5*t*(1-n),c=-(this.drop+this.kinDrop)*1.35*(1-n),l=this.walkPhase,u=this.walkPhase+Math.PI,d={hip:-.2-c*.5,knee:.34+c,ankle:-.1-c*.5},f={hip:.15-c*.5,knee:.38+c,ankle:-.12-c*.5},p=Math.sin(l)*o,m=Math.sin(u)*o,h=Math.max(0,Math.sin(l-Math.PI/2))*s,g=Math.max(0,Math.sin(u-Math.PI/2))*s,_=gb(0,.3,n)*(1-gb(.32,.62,n));a.hipL.rotation.set(Jl.lerp(d.hip+p,-.18,n),.32*i*(1-n)+(this.punchHand===`left`?this.kinPivotL:0)*(1-n),Jl.lerp(0,.5*r,n)),a.kneeL.rotation.x=Jl.lerp(d.knee+h+_*.85,.24,Math.max(n,_)),a.ankleL.rotation.x=Jl.lerp(d.ankle-p*.4-(i<0?this.kinHeelR:0)*(1-n),.42,n),a.hipR.rotation.set(Jl.lerp(f.hip+m,-.12,n),-.14*i*(1-n)+(this.punchHand===`right`?this.kinPivotL:0)*(1-n),Jl.lerp(0,.35*r,n)),a.kneeR.rotation.x=Jl.lerp(f.knee+g+_*.8,.18,Math.max(n,_)),a.ankleR.rotation.x=Jl.lerp(f.ankle-m*.4-(i>0?this.kinHeelR:0)*(1-n),.42,n)}solveArmIK(e,t,n,r,i,a){e.getWorldPosition(vb),xb.copy(r),a.chest.localToWorld(xb),yb.set(.9*i,-1,-.25).applyQuaternion(a.chest.getWorldQuaternion(kb)),Zy(vb,xb,yb,bb),tb(e,vb,bb.elbowWorld),e.updateMatrixWorld(!0),tb(t,bb.elbowWorld,bb.targetWorld)}applyTrauma(e,t,n){let r=e.trauma,i=e=>Math.min(.85,e/170+r.swelling/420),a=Ab[n];this.rig.bruiseL.material.opacity=i(r.left_eye),this.rig.bruiseR.material.opacity=i(r.right_eye),this.rig.cutL.material.opacity=Math.min(1,r.left_cut/200+r.bleeding/600)*a,this.rig.cutR.material.opacity=Math.min(1,r.right_cut/200+r.bleeding/600)*a;let o=e=>Math.min(1.35,e/260+r.swelling/560),s=o(r.left_eye),c=o(r.right_eye);this.rig.swellL.scale.setScalar(.25+s*1.15),this.rig.swellR.scale.setScalar(.25+c*1.15),this.rig.swellL.material.opacity=Math.min(.92,s*1.1),this.rig.swellR.material.opacity=Math.min(.92,c*1.1);let l=Math.min(1,r.head/900+r.swelling/800);this.rig.cheekL.scale.setScalar(.2+l*1.05),this.rig.cheekR.scale.setScalar(.2+l*.95),this.rig.cheekL.material.opacity=l*.8,this.rig.cheekR.material.opacity=l*.75;let u=Math.min(1.7,(r.left_cut+r.bleeding)/260),d=Math.min(1.7,(r.right_cut+r.bleeding)/260);this.rig.streakL.scale.set(1,.15+u,1),this.rig.streakR.scale.set(1,.15+d,1),this.rig.streakL.material.opacity=Math.min(1,u)*a,this.rig.streakR.material.opacity=Math.min(1,d)*a;let f=Math.min(1.4,r.head/700+r.bleeding/420);this.rig.noseStreak.scale.set(1,.2+f,1),this.rig.noseStreak.material.opacity=Math.min(1,f*.9)*a,this.rig.mouthBlood.material.opacity=Math.min(1,r.head/800+r.bleeding/500)*a;let p=Math.min(1,r.body/750);this.rig.ribL.scale.set(.5+p*.35,1.2+p*.5,.7+p*.2),this.rig.ribR.scale.set(.5+p*.3,1.2+p*.4,.7+p*.2),this.rig.ribL.material.opacity=p*.85,this.rig.ribR.material.opacity=p*.8;let m=Math.min(1,(t.trauma.bleeding+t.trauma.left_cut+t.trauma.right_cut)/620)*a;this.rig.gloveLMaterial.color.copy(this.rig.gloveBaseColor).lerp(jb,m*.85);let h=Math.min(1.3,r.body/500+r.bleeding/420);this.rig.bodyStreak.scale.set(1+h*.4,.3+h,1),this.rig.bodyStreak.material.opacity=Math.min(1,h)*a,this.rig.bodyBruise.material.opacity=Math.min(.7,r.body/950);let g=1+Math.min(.12,r.swelling/2500);this.rig.headMesh.scale.set(.92*g,1.05*g,.95*g);let _=this.rig.skinMaterial;_.clearcoat=.25+Nb(e)*.4}};function Nb(e){return 1-e.stamina/Math.max(1,e.maximum_stamina)}var Pb=[2765120,3813162,2503738,4206894,3029548,3683390,4471856,5919048,3227722,4863298],Fb=[13081462,9067067,7225640,14726287,5517341,11105359],Ib=e=>()=>(e=Math.imul(e^e>>>15,1|e),e^=e+Math.imul(e^e>>>7,61|e),((e^e>>>14)>>>0)/4294967296);function Lb(){let e=new qu;e.name=`arena`;let t=[],n=[],r=[],i=new Cm({color:`#05070c`,roughness:.95});n.push(i);let a=new Mp(30,40);t.push(a);let o=new Cf(a,i);o.rotation.x=-Math.PI/2,o.position.y=-1,o.receiveShadow=!0,e.add(o);let s=Ib(20260727),c=[{radius:8.2,y:-.55,count:120,scale:1},{radius:10.6,y:.35,count:150,scale:1.04},{radius:13.2,y:1.35,count:180,scale:1.08},{radius:16,y:2.45,count:210,scale:1.12}],l=c.reduce((e,t)=>e+t.count,0),u=new jp(.19,.5,4,8),d=new dm(.115,8,7);t.push(u,d);let f=new Cm({roughness:.9,metalness:0}),p=new Cm({roughness:.75,metalness:0});n.push(f,p);let m=new Yf(u,f,l),h=new Yf(d,p,l);m.instanceMatrix.setUsage(cl),h.instanceMatrix.setUsage(cl);let g=new yu,_=new Q,v=new Float32Array(l),y=[],b=0;for(let e of c)for(let t=0;t{if(!n){let n=Math.floor(e*30%l);for(let t=0;t<90;t+=1){let r=(n+t)%l,i=y[r],a=Math.sin(e*1.6+v[r])*.05,o=Math.abs(Math.sin(e*2.3+v[r]*1.7))*.05;pe.setFromAxisAngle(he,i.yaw+a),j.compose(fe.set(i.x,i.y+.45*i.scale+o,i.z+a*.4),pe,me.set(i.scale,i.scale,i.scale)),m.setMatrixAt(r,j),pe.setFromAxisAngle(he,i.yaw+a*1.2),j.compose(fe.set(i.x,i.y+.95*i.scale+o*1.2,i.z+a*.5),pe,me),h.setMatrixAt(r,j)}m.instanceMatrix.needsUpdate=!0,h.instanceMatrix.needsUpdate=!0,ue-=t,ue<=0&&(de=.09+Math.random()*.08,ue=.25+Math.random()*1.6),de=Math.max(0,de-t),C.opacity=de>0?.85:0}},dispose:()=>{for(let e of t)e.dispose();for(let e of n)e.dispose();for(let e of r)e.dispose();m.dispose(),h.dispose()}}}var Rb=1.88,zb=7.15,Bb=1.12,Vb=class{current=new Z(0,Rb,zb);look=new Z(0,Bb,0);swayPhase=0;update(e,t,n,r,i,a,o,s){this.swayPhase+=e;let c=(n.x+r.x)/2,l=(n.z+r.z)/2,u=Jl.clamp(c,-1.4,1.4),d=Jl.clamp(l,-1.1,1.1),f=Jl.clamp(zb+i*.42-(a?1.1:0),6.4,9.8),p=Rb+i*.1-(a?.35:0),m=s?0:Math.sin(this.swayPhase*.21)*.35,h=s?0:Math.sin(this.swayPhase*.13)*.3,g=u*.32+m,_=f+d*.2,v=p+h*.2;if(this.current.x+=(g-this.current.x)*(1-Math.exp(-2.6*e)),this.current.y+=(v-this.current.y)*(1-Math.exp(-2.6*e)),this.current.z+=(_-this.current.z)*(1-Math.exp(-2.6*e)),this.look.x+=(u-this.look.x)*(1-Math.exp(-3.2*e)),this.look.y+=((a?.75:Bb)-this.look.y)*(1-Math.exp(-3.2*e)),this.look.z+=(d*.6-this.look.z)*(1-Math.exp(-3.2*e)),!s&&o>5e-4){let e=t*61;this.current.x+=Math.sin(e*1.31)*o,this.current.y+=Math.cos(e*1.97)*o*.6,this.look.x+=Math.sin(e*1.53)*o*.5,this.look.y+=Math.cos(e*2.11)*o*.35}return{position:this.current,lookAt:this.look}}},Hb=3.05,Ub=3.85,Wb=4.05,Gb=3.42,Kb=[.5,.88,1.26];function qb(e){let t=Hb/Math.max(1,e.ring_half_width),n=Hb/Math.max(1,e.ring_half_height);return{x:e=>e*t,z:e=>-e*n}}var Jb={blue:1920728,red:12131356,neutral:15067115},Yb=[{skin:11563071,skinShadow:9065520,trunks:1327211,trunkTrim:14267484,glove:1920728,gloveTrim:15067115,hair:1643537,shoe:2240573},{skin:7225640,skinShadow:5582877,trunks:7017504,trunkTrim:15067115,glove:12131356,gloveTrim:14267484,hair:854794,shoe:2956316}],Xb=900,Zb=90,Qb=48,$b=e=>()=>(e=Math.imul(e^e>>>15,1|e),e^=e+Math.imul(e^e>>>7,61|e),((e^e>>>14)>>>0)/4294967296),ex=new Set([`hit`,`counter_hit`,`block`,`knockdown`,`bleed`]);function tx(){let e=document.createElement(`canvas`);e.width=64,e.height=64;let t=e.getContext(`2d`);if(t!==null){let e=t.createRadialGradient(32,32,2,32,32,30);e.addColorStop(0,`rgba(120,10,16,0.55)`),e.addColorStop(.5,`rgba(90,8,14,0.28)`),e.addColorStop(1,`rgba(70,6,10,0)`),t.fillStyle=e,t.fillRect(0,0,64,64)}return new Ep(e)}var nx=class{scene;points;droplets=[];dropletPositions;dropletColors;dropletGeometry;dropletMaterial;mistPoints;mists=[];mistPositions;mistColors;mistGeometry;mistMaterial;mistMap;decals=[];decalGeometry;decalIndex=0;dripAccumulator=0;shake=0;bloodLevel=`full`;constructor(e){this.scene=e,this.dropletPositions=new Float32Array(Xb*3),this.dropletColors=new Float32Array(Xb*3),this.dropletGeometry=new Xd,this.dropletGeometry.setAttribute(`position`,new Fd(this.dropletPositions,3)),this.dropletGeometry.setAttribute(`color`,new Fd(this.dropletColors,3)),this.dropletMaterial=new vp({size:.032,vertexColors:!0,transparent:!0,opacity:.92,depthWrite:!1,sizeAttenuation:!0}),this.points=new Cp(this.dropletGeometry,this.dropletMaterial),this.points.frustumCulled=!1,e.add(this.points);for(let e=0;ee.alive).length}get liveMist(){return this.mists.filter(e=>e.alive).length}get visibleDecals(){return this.decals.filter(e=>e.visible).length}bloodScale(){return this.bloodLevel===`off`?0:this.bloodLevel===`reduced`?.35:1}spawnDroplet(e,t,n,r,i,a,o,s,c){let l=this.droplets.find(e=>!e.alive);l!==void 0&&(l.alive=!0,l.x=t,l.y=n,l.z=r,l.vx=i,l.vy=a,l.vz=o,l.maxLife=c,l.life=c,l.r=s.r,l.g=s.g,l.b=s.b)}spawnMist(e,t,n,r,i){let a=this.mists.find(e=>!e.alive);a!==void 0&&(a.alive=!0,a.x=e,a.y=t,a.z=n,a.maxLife=i,a.life=i,a.scale=r)}placeDecal(e,t,n,r,i,a,o){let s=this.decals[this.decalIndex%Qb];this.decalIndex+=1,s.visible=!0,s.position.x=e,s.position.z=t,s.rotation.z=i,s.scale.set(n,r,1);let c=s.material;c.opacity=a,c.color.setHex(o)}splatter(e,t,n,r=Math.random){let i=this.bloodScale();if(i===0)return;let a=Math.round(4*i)+2;for(let o=0;o0&&(e.amount>190||e.kind===`knockdown`||e.kind===`counter_hit`)){let t=e.kind===`knockdown`?7:5;for(let e=0;e6&&o>0&&this.splatter(a.x+(r()-.5)*.6,a.z+(r()-.5)*.6,.9+Math.min(1.8,e.blood/70)*o,r)}drip(e,t,n,r){let i=this.bloodScale();if(!(i===0||r||t<=.05))for(this.dripAccumulator+=n*Math.min(9,t*8)*i;this.dripAccumulator>=1;)--this.dripAccumulator,this.spawnDroplet(Math.random,e.x+(Math.random()-.5)*.14,e.y-.04,e.z+(Math.random()-.5)*.1,(Math.random()-.5)*.05,-.25-Math.random()*.3,(Math.random()-.5)*.05,{r:.5,g:.04,b:.06},1.1)}update(e){this.shake*=.02**e;let t=!1;for(let[n,r]of this.droplets.entries()){if(!r.alive){this.dropletPositions[n*3+1]=-50;continue}if(t=!0,r.life-=e,r.life<=0||r.y<0){r.y<0&&r.r<.85&&this.bloodScale()>0&&Math.random()<.3&&this.placeDecal(r.x,r.z,.22+Math.random()*.3,.14+Math.random()*.2,Math.random()*Math.PI,.34*this.bloodScale(),7212307),r.alive=!1,this.dropletPositions[n*3+1]=-50;continue}r.vy-=4.6*e,r.x+=r.vx*e,r.y+=r.vy*e,r.z+=r.vz*e;let i=Math.min(1,r.life/(r.maxLife*.4));this.dropletPositions[n*3]=r.x,this.dropletPositions[n*3+1]=r.y,this.dropletPositions[n*3+2]=r.z,this.dropletColors[n*3]=r.r*i,this.dropletColors[n*3+1]=r.g*i,this.dropletColors[n*3+2]=r.b*i}t&&(this.dropletGeometry.attributes.position.needsUpdate=!0,this.dropletGeometry.attributes.color.needsUpdate=!0);let n=!1;for(let[t,r]of this.mists.entries()){if(!r.alive){this.mistPositions[t*3+1]=-50;continue}if(n=!0,r.life-=e,r.life<=0){r.alive=!1,this.mistPositions[t*3+1]=-50;continue}let i=1-r.life/r.maxLife,a=Math.max(0,1-i)*.6;this.mistPositions[t*3]=r.x,this.mistPositions[t*3+1]=r.y+i*.12,this.mistPositions[t*3+2]=r.z,this.mistColors[t*3]=a,this.mistColors[t*3+1]=a*.12,this.mistColors[t*3+2]=a*.14}n&&(this.mistGeometry.attributes.position.needsUpdate=!0,this.mistGeometry.attributes.color.needsUpdate=!0)}clearDynamic(){for(let e of this.droplets)e.alive=!1;for(let e of this.mists)e.alive=!1;this.shake=0,this.dripAccumulator=0}clearDecals(){for(let e of this.decals)e.visible=!1}dispose(){this.scene.remove(this.points),this.scene.remove(this.mistPoints),this.dropletGeometry.dispose(),this.dropletMaterial.dispose(),this.mistGeometry.dispose(),this.mistMaterial.dispose(),this.mistMap.dispose(),this.decalGeometry.dispose();for(let e of this.decals)this.scene.remove(e),e.material.dispose()}};function rx(e,t){if(t===0)return console.warn(`THREE.BufferGeometryUtils.toTrianglesDrawMode(): Geometry already defined as triangles.`),e;if(t===2||t===1){let n=e.getIndex();if(n===null){let t=[],r=e.getAttribute(`position`);if(r!==void 0){for(let e=0;e=2.0 are supported.`));return}let c=new rS(i,{path:t||this.resourcePath||``,crossOrigin:this.crossOrigin,requestHeader:this.requestHeader,manager:this.manager,ktx2Loader:this.ktx2Loader,meshoptDecoder:this.meshoptDecoder});c.fileLoader.setRequestHeader(this.requestHeader);for(let e=0;e=0&&o[t]===void 0&&console.warn(`THREE.GLTFLoader: Unknown extension "`+t+`".`)}}c.setExtensions(a),c.setPlugins(o),c.parse(n,r)}parseAsync(e,t){let n=this;return new Promise(function(r,i){n.parse(e,t,r,i)})}};function sx(){let e={};return{get:function(t){return e[t]},add:function(t,n){e[t]=n},remove:function(t){delete e[t]},removeAll:function(){e={}}}}function cx(e,t,n){let r=e.json.materials[t];return r.extensions&&r.extensions[n]?r.extensions[n]:null}var lx={KHR_BINARY_GLTF:`KHR_binary_glTF`,KHR_DRACO_MESH_COMPRESSION:`KHR_draco_mesh_compression`,KHR_LIGHTS_PUNCTUAL:`KHR_lights_punctual`,KHR_MATERIALS_CLEARCOAT:`KHR_materials_clearcoat`,KHR_MATERIALS_DISPERSION:`KHR_materials_dispersion`,KHR_MATERIALS_IOR:`KHR_materials_ior`,KHR_MATERIALS_SHEEN:`KHR_materials_sheen`,KHR_MATERIALS_SPECULAR:`KHR_materials_specular`,KHR_MATERIALS_TRANSMISSION:`KHR_materials_transmission`,KHR_MATERIALS_IRIDESCENCE:`KHR_materials_iridescence`,KHR_MATERIALS_ANISOTROPY:`KHR_materials_anisotropy`,KHR_MATERIALS_UNLIT:`KHR_materials_unlit`,KHR_MATERIALS_VOLUME:`KHR_materials_volume`,KHR_TEXTURE_BASISU:`KHR_texture_basisu`,KHR_TEXTURE_TRANSFORM:`KHR_texture_transform`,KHR_MESH_QUANTIZATION:`KHR_mesh_quantization`,KHR_MATERIALS_EMISSIVE_STRENGTH:`KHR_materials_emissive_strength`,EXT_MATERIALS_BUMP:`EXT_materials_bump`,EXT_TEXTURE_WEBP:`EXT_texture_webp`,EXT_TEXTURE_AVIF:`EXT_texture_avif`,EXT_MESHOPT_COMPRESSION:`EXT_meshopt_compression`,KHR_MESHOPT_COMPRESSION:`KHR_meshopt_compression`,EXT_MESH_GPU_INSTANCING:`EXT_mesh_gpu_instancing`},ux=class{constructor(e){this.parser=e,this.name=lx.KHR_LIGHTS_PUNCTUAL,this.cache={refs:{},uses:{}}}_markDefs(){let e=this.parser,t=this.parser.json.nodes||[];for(let n=0,r=t.length;n=0)throw Error(`THREE.GLTFLoader: setKTX2Loader must be called before loading KTX2 textures`);return null}return t.loadTextureImage(e,i.source,a)}},wx=class{constructor(e){this.parser=e,this.name=lx.EXT_TEXTURE_WEBP}loadTexture(e){let t=this.name,n=this.parser,r=n.json,i=r.textures[e];if(!i.extensions||!i.extensions[t])return null;let a=i.extensions[t],o=r.images[a.source],s=n.textureLoader;if(o.uri){let e=n.options.manager.getHandler(o.uri);e!==null&&(s=e)}return n.loadTextureImage(e,a.source,s)}},Tx=class{constructor(e){this.parser=e,this.name=lx.EXT_TEXTURE_AVIF}loadTexture(e){let t=this.name,n=this.parser,r=n.json,i=r.textures[e];if(!i.extensions||!i.extensions[t])return null;let a=i.extensions[t],o=r.images[a.source],s=n.textureLoader;if(o.uri){let e=n.options.manager.getHandler(o.uri);e!==null&&(s=e)}return n.loadTextureImage(e,a.source,s)}},Ex=class{constructor(e,t){this.name=t,this.parser=e}loadBufferView(e){let t=this.parser.json,n=t.bufferViews[e];if(n.extensions&&n.extensions[this.name]){let e=n.extensions[this.name],r=this.parser.getDependency(`buffer`,e.buffer),i=this.parser.options.meshoptDecoder;if(!i||!i.supported){if(t.extensionsRequired&&t.extensionsRequired.indexOf(this.name)>=0)throw Error(`THREE.GLTFLoader: setMeshoptDecoder must be called before loading compressed files`);return null}return r.then(function(t){let n=e.byteOffset||0,r=e.byteLength||0,a=e.count,o=e.byteStride,s=new Uint8Array(t,n,r);return i.decodeGltfBufferAsync?i.decodeGltfBufferAsync(a,o,s,e.mode,e.filter).then(function(e){return e.buffer}):i.ready.then(function(){let t=new ArrayBuffer(a*o);return i.decodeGltfBuffer(new Uint8Array(t),a,o,s,e.mode,e.filter),t})})}else return null}},Dx=class{constructor(e){this.name=lx.EXT_MESH_GPU_INSTANCING,this.parser=e}createNodeMesh(e){let t=this.parser.json,n=t.nodes[e];if(!n.extensions||!n.extensions[this.name]||n.mesh===void 0)return null;let r=t.meshes[n.mesh];for(let e of r.primitives)if(e.mode!==Rx.TRIANGLES&&e.mode!==Rx.TRIANGLE_STRIP&&e.mode!==Rx.TRIANGLE_FAN&&e.mode!==void 0)return null;let i=n.extensions[this.name].attributes,a=[],o={};for(let e in i)a.push(this.parser.getDependency(`accessor`,i[e]).then(t=>(o[e]=t,o[e])));return a.length<1?null:(a.push(this.parser.createNodeMesh(e)),Promise.all(a).then(e=>{let t=e.pop(),n=t.isGroup?t.children:[t],r=e[0].count,i=[];for(let e of n){let t=new yu,n=new Z,a=new Yl,s=new Z(1,1,1),c=new Yf(e.geometry,e.material,r);for(let e=0;e0||e.search(/^data\:image\/jpeg/)===0?`image/jpeg`:e.search(/\.webp($|\?)/i)>0||e.search(/^data\:image\/webp/)===0?`image/webp`:e.search(/\.ktx2($|\?)/i)>0||e.search(/^data\:image\/ktx2/)===0?`image/ktx2`:`image/png`}var nS=new yu,rS=class{constructor(e={},t={}){this.json=e,this.extensions={},this.plugins={},this.options=t,this.cache=new sx,this.associations=new Map,this.primitiveCache={},this.nodeCache={},this.meshCache={refs:{},uses:{}},this.cameraCache={refs:{},uses:{}},this.lightCache={refs:{},uses:{}},this.sourceCache={},this.textureCache={},this.nodeNamesUsed={};let n=!1,r=-1,i=!1,a=-1;if(typeof navigator<`u`&&navigator.userAgent!==void 0){let e=navigator.userAgent;n=/^((?!chrome|android).)*safari/i.test(e)===!0;let t=e.match(/Version\/(\d+)/);r=n&&t?parseInt(t[1],10):-1,i=e.indexOf(`Firefox`)>-1,a=i?e.match(/Firefox\/([0-9]+)\./)[1]:-1}typeof createImageBitmap>`u`||n&&r<17||i&&a<98?this.textureLoader=new nh(this.options.manager):this.textureLoader=new Dh(this.options.manager),this.textureLoader.setCrossOrigin(this.options.crossOrigin),this.textureLoader.setRequestHeader(this.options.requestHeader),this.fileLoader=new $m(this.options.manager),this.fileLoader.setResponseType(`arraybuffer`),this.options.crossOrigin===`use-credentials`&&this.fileLoader.setWithCredentials(!0)}setExtensions(e){this.extensions=e}setPlugins(e){this.plugins=e}parse(e,t){let n=this,r=this.json,i=this.extensions;this.cache.removeAll(),this.nodeCache={},this._invokeAll(function(e){return e._markDefs&&e._markDefs()}),Promise.all(this._invokeAll(function(e){return e.beforeRoot&&e.beforeRoot()})).then(function(){return Promise.all([n.getDependencies(`scene`),n.getDependencies(`animation`),n.getDependencies(`camera`)])}).then(function(t){let a={scene:t[0][r.scene||0],scenes:t[0],animations:t[1],cameras:t[2],asset:r.asset,parser:n,userData:{}};return Jx(i,a,r),Yx(a,r),Promise.all(n._invokeAll(function(e){return e.afterRoot&&e.afterRoot(a)})).then(function(){for(let e of a.scenes)e.updateMatrixWorld();e(a)})}).catch(t)}_markDefs(){let e=this.json.nodes||[],t=this.json.skins||[],n=this.json.meshes||[];for(let n=0,r=t.length;n{let n=this.associations.get(e);n!=null&&this.associations.set(t,n);for(let[n,r]of e.children.entries())i(r,t.children[n])};return i(n,r),r.name+=`_instance_`+e.uses[t]++,r}_invokeOne(e){let t=Object.values(this.plugins);t.push(this);for(let n=0;n=2&&p.setY(t,u[e*a+1]),a>=3&&p.setZ(t,u[e*a+2]),a>=4&&p.setW(t,u[e*a+3]),a>=5)throw Error(`THREE.GLTFLoader: Unsupported itemSize in sparse BufferAttribute.`)}p.normalized=d}return p})}loadTexture(e){let t=this.json,n=this.options,r=t.textures[e].source,i=t.images[r],a=this.textureLoader;if(i.uri){let e=n.manager.getHandler(i.uri);e!==null&&(a=e)}return this.loadTextureImage(e,r,a)}loadTextureImage(e,t,n){let r=this,i=this.json,a=i.textures[e],o=i.images[t],s=(o.uri||o.bufferView)+`:`+a.sampler;if(this.textureCache[s])return this.textureCache[s];let c=this.loadImageSource(t,n).then(function(t){t.flipY=!1,t.name=a.name||o.name||``,t.name===``&&typeof o.uri==`string`&&o.uri.startsWith(`data:image/`)===!1&&(t.name=o.uri);let n=(i.samplers||{})[a.sampler]||{};return t.magFilter=Bx[n.magFilter]||1006,t.minFilter=Bx[n.minFilter]||1008,t.wrapS=Vx[n.wrapS]||1e3,t.wrapT=Vx[n.wrapT]||1e3,t.generateMipmaps=!t.isCompressedTexture&&t.minFilter!==1003&&t.minFilter!==1006,r.associations.set(t,{textures:e}),t}).catch(function(){return null});return this.textureCache[s]=c,c}loadImageSource(e,t){let n=this,r=this.json,i=this.options;if(this.sourceCache[e]!==void 0)return this.sourceCache[e].then(e=>e.clone());let a=r.images[e],o=self.URL||self.webkitURL,s=a.uri||``,c=!1;if(a.bufferView!==void 0)s=n.getDependency(`bufferView`,a.bufferView).then(function(e){c=!0;let t=new Blob([e],{type:a.mimeType});return s=o.createObjectURL(t),s});else if(a.uri===void 0)throw Error(`THREE.GLTFLoader: Image `+e+` is missing URI and bufferView`);let l=Promise.resolve(s).then(function(e){return new Promise(function(n,r){let a=n;t.isImageBitmapLoader===!0&&(a=function(e){let t=new pu(e);t.needsUpdate=!0,n(t)}),t.load(Th.resolveURL(e,i.path),a,void 0,r)})}).then(function(e){return c===!0&&o.revokeObjectURL(s),Yx(e,a),e.userData.mimeType=a.mimeType||tS(a.uri),e}).catch(function(e){throw console.error(`THREE.GLTFLoader: Couldn't load texture`,s),e});return this.sourceCache[e]=l,l}assignTexture(e,t,n,r){let i=this;return this.getDependency(`texture`,n.index).then(function(a){if(!a)return null;if(n.texCoord!==void 0&&n.texCoord>0&&(a=a.clone(),a.channel=n.texCoord),i.extensions[lx.KHR_TEXTURE_TRANSFORM]){let e=n.extensions===void 0?void 0:n.extensions[lx.KHR_TEXTURE_TRANSFORM];if(e){let t=i.associations.get(a);a=i.extensions[lx.KHR_TEXTURE_TRANSFORM].extendTexture(a,e),i.associations.set(a,t)}}return r!==void 0&&(a.colorSpace=r),e[t]=a,a})}assignFinalMaterial(e){let t=e.geometry,n=e.material,r=t.attributes.tangent===void 0,i=t.attributes.color!==void 0,a=t.attributes.normal===void 0;if(e.isPoints){let e=`PointsMaterial:`+n.uuid,t=this.cache.get(e);t||(t=new vp,tf.prototype.copy.call(t,n),t.color.copy(n.color),t.map=n.map,t.sizeAttenuation=!1,this.cache.add(e,t)),n=t}else if(e.isLine){let e=`LineBasicMaterial:`+n.uuid,t=this.cache.get(e);t||(t=new ip,tf.prototype.copy.call(t,n),t.color.copy(n.color),t.map=n.map,this.cache.add(e,t)),n=t}if(r||i||a){let e=`ClonedMaterial:`+n.uuid+`:`;r&&(e+=`derivative-tangents:`),i&&(e+=`vertex-colors:`),a&&(e+=`flat-shading:`);let t=this.cache.get(e);t||(t=n.clone(),i&&(t.vertexColors=!0),a&&(t.flatShading=!0),r&&(t.normalScale&&(t.normalScale.y*=-1),t.clearcoatNormalScale&&(t.clearcoatNormalScale.y*=-1)),this.cache.add(e,t),this.associations.set(t,this.associations.get(n))),n=t}e.material=n}getMaterialType(){return Cm}loadMaterial(e){let t=this,n=this.json,r=this.extensions,i=n.materials[e],a,o={},s=i.extensions||{},c=[];if(s[lx.KHR_MATERIALS_UNLIT]){let e=r[lx.KHR_MATERIALS_UNLIT];a=e.getMaterialType(),c.push(e.extendParams(o,i,t))}else{let n=i.pbrMetallicRoughness||{};if(o.color=new Q(1,1,1),o.opacity=1,Array.isArray(n.baseColorFactor)){let e=n.baseColorFactor;o.color.setRGB(e[0],e[1],e[2],rl),o.opacity=e[3]}n.baseColorTexture!==void 0&&c.push(t.assignTexture(o,`map`,n.baseColorTexture,nl)),o.metalness=n.metallicFactor===void 0?1:n.metallicFactor,o.roughness=n.roughnessFactor===void 0?1:n.roughnessFactor,n.metallicRoughnessTexture!==void 0&&(c.push(t.assignTexture(o,`metalnessMap`,n.metallicRoughnessTexture)),c.push(t.assignTexture(o,`roughnessMap`,n.metallicRoughnessTexture))),a=this._invokeOne(function(t){return t.getMaterialType&&t.getMaterialType(e)}),c.push(Promise.all(this._invokeAll(function(t){return t.extendMaterialParams&&t.extendMaterialParams(e,o)})))}i.doubleSided===!0&&(o.side=2);let l=i.alphaMode||Kx.OPAQUE;if(l===Kx.BLEND?(o.transparent=!0,o.depthWrite=!1):(o.transparent=!1,l===Kx.MASK&&(o.alphaTest=i.alphaCutoff===void 0?.5:i.alphaCutoff)),i.normalTexture!==void 0&&a!==df&&(c.push(t.assignTexture(o,`normalMap`,i.normalTexture)),o.normalScale=new X(1,1),i.normalTexture.scale!==void 0)){let e=i.normalTexture.scale;o.normalScale.set(e,e)}if(i.occlusionTexture!==void 0&&a!==df&&(c.push(t.assignTexture(o,`aoMap`,i.occlusionTexture)),i.occlusionTexture.strength!==void 0&&(o.aoMapIntensity=i.occlusionTexture.strength)),i.emissiveFactor!==void 0&&a!==df){let e=i.emissiveFactor;o.emissive=new Q().setRGB(e[0],e[1],e[2],rl)}return i.emissiveTexture!==void 0&&a!==df&&c.push(t.assignTexture(o,`emissiveMap`,i.emissiveTexture,nl)),Promise.all(c).then(function(){let n=new a(o);return i.name&&(n.name=i.name),Yx(n,i),t.associations.set(n,{materials:e}),i.extensions&&Jx(r,n,i),n})}createUniqueName(e){let t=Kh.sanitizeNodeName(e||``);return t in this.nodeNamesUsed?t+`_`+ ++this.nodeNamesUsed[t]:(this.nodeNamesUsed[t]=0,t)}loadGeometries(e){let t=this,n=this.extensions,r=this.primitiveCache;function i(e){return n[lx.KHR_DRACO_MESH_COMPRESSION].decodePrimitive(e,t).then(function(n){return aS(n,e,t)})}let a=[];for(let n=0,o=e.length;n0&&Zx(d,i),d.name=t.createUniqueName(i.name||`mesh_`+e),Yx(d,i),u.extensions&&Jx(r,d,u),t.assignFinalMaterial(d),c.push(d)}for(let n=0,r=c.length;n0){let e=t.userData.pivot,r=n[0];t.pivot=new Z().fromArray(e),t.position.x-=e[0],t.position.y-=e[1],t.position.z-=e[2],r.position.set(0,0,0),delete t.userData.pivot}return t})}_loadNodeShallow(e){let t=this.json,n=this.extensions,r=this;if(this.nodeCache[e]!==void 0)return this.nodeCache[e];let i=t.nodes[e],a=i.name?r.createUniqueName(i.name):``,o=[],s=r._invokeOne(function(t){return t.createNodeMesh&&t.createNodeMesh(e)});return s&&o.push(s),i.camera!==void 0&&o.push(r.getDependency(`camera`,i.camera).then(function(e){return r._getNodeRef(r.cameraCache,i.camera,e)})),r._invokeAll(function(t){return t.createNodeAttachment&&t.createNodeAttachment(e)}).forEach(function(e){o.push(e)}),this.nodeCache[e]=Promise.all(o).then(function(t){let o;if(o=i.isBone===!0?new If:t.length>1?new qu:t.length===1?t[0]:new Ku,o!==t[0])for(let e=0,n=t.length;e1){let e=r.associations.get(o);r.associations.set(o,{...e})}return r.associations.get(o).nodes=e,o}),this.nodeCache[e]}loadScene(e){let t=this.extensions,n=this.json.scenes[e],r=this,i=new qu;n.name&&(i.name=r.createUniqueName(n.name)),Yx(i,n),n.extensions&&Jx(t,i,n);let a=n.nodes||[],o=[];for(let e=0,t=a.length;e{let t=new Map;for(let[e,n]of r.associations)(e instanceof tf||e instanceof pu)&&t.set(e,n);return e.traverse(e=>{let n=r.associations.get(e);n!=null&&t.set(e,n)}),t})(i),i})}_createAnimationTracks(e,t,n,r,i){let a=[],o=e.name?e.name:e.uuid,s=[];function c(e){e.morphTargetInfluences&&s.push(e.name?e.name:e.uuid)}Wx[i.path]===Wx.weights?(c(e),e.isGroup&&e.children.forEach(c)):s.push(o);let l;switch(Wx[i.path]){case Wx.weights:l=zm;break;case Wx.rotation:l=Vm;break;case Wx.translation:case Wx.scale:l=Um;break;default:switch(n.itemSize){case 1:l=zm;break;default:l=Um;break}break}let u=r.interpolation===void 0?qc:Gx[r.interpolation],d=this._getArrayFromAccessor(n);for(let e=0,n=s.length;ee.charCodeAt(0));sS=new Promise((t,n)=>{new ox().parse(e.buffer,``,t,e=>n(e instanceof Error?e:Error(String(e))))})}return sS}var lS=(e,t,n,r)=>e+(t-e)*(1-Math.exp(-n*r)),uS=(e,t,n,r)=>e+(((t-e+Math.PI)%(Math.PI*2)+Math.PI*2)%(Math.PI*2)-Math.PI)*(1-Math.exp(-n*r)),dS=class{root=new qu;mixer;actions=new Map;bones=new Map;skinMaterial;gearMaterial;gearBaseColor;overlays;constructor(e,t){let n=ix(e.scene);this.root.add(n),this.skinMaterial=new wm({color:t.skin,roughness:.58,metalness:.02,clearcoat:.25,clearcoatRoughness:.6}),this.gearMaterial=new Cm({color:t.gear,roughness:.4}),this.gearBaseColor=new Q(t.gear),n.traverse(e=>{if(e instanceof Ff){let t=Array.isArray(e.material)?e.material[0]:e.material;e.material=t!==void 0&&t.name===`gear`?this.gearMaterial:this.skinMaterial,e.castShadow=!0,e.frustumCulled=!1}e instanceof If&&this.bones.set(e.name,e)}),this.mixer=new Yh(n);for(let t of e.animations){let e=this.mixer.clipAction(t);this.actions.set(t.name,e),[`jab_left`,`jab_right`,`straight_left`,`straight_right`,`hook_left`,`hook_right`,`uppercut_left`,`uppercut_right`,`block_head`,`hit_head`,`knockdown`,`getup`].includes(t.name)&&(e.setLoop(Uc,1),e.clampWhenFinished=!0)}this.overlays=pS(this.bone(`head`),this.bone(`chest`))}bone(e){return this.bones.get(e)??null}get trauma(){return this.overlays}get gloveGear(){return this.gearMaterial}get skin(){return this.skinMaterial}dispose(){this.mixer.stopAllAction(),this.skinMaterial.dispose(),this.gearMaterial.dispose(),this.overlays.dispose()}};function fS(e,t,n=0){let r=new Cf(e,new Cm({color:t,roughness:.7,transparent:!0,opacity:0,emissive:n}));return r.castShadow=!1,r}function pS(e,t){let n=[],r=(e,t,r,i=[1,1,1])=>(e.position.set(...r),e.scale.set(...i),t.add(e),n.push(e),e),i=r(fS(new dm(.042,12,10),4856918),e,[.05,.15,.085],[1,.72,.5]),a=r(fS(new dm(.042,12,10),4856918),e,[-.05,.15,.085],[1,.72,.5]),o=r(fS(new dm(.035,12,10),7026034),e,[.052,.155,.088]),s=r(fS(new dm(.035,12,10),7026034),e,[-.052,.155,.088]),c=r(fS(new Ap(.05,.008,.01),8326420,2753286),e,[.05,.178,.104]),l=r(fS(new Ap(.05,.008,.01),8326420,2753286),e,[-.05,.178,.104]),u=r(fS(new Ap(.014,.1,.006),9047830,3146762),e,[.052,.115,.106]),d=r(fS(new Ap(.014,.1,.006),9047830,3146762),e,[-.052,.115,.106]),f=r(fS(new Ap(.011,.07,.006),9047830,3146762),e,[.008,.075,.118]),p=r(fS(new Ap(.03,.012,.006),9047830,3146762),e,[.02,.052,.104]),m=r(fS(new dm(.028,10,8),7026034),e,[.068,.095,.075]),h=r(fS(new dm(.028,10,8),7026034),e,[-.068,.095,.075]),g=r(fS(new dm(.09,12,10),6038608),t,[.16,.08,.02],[.5,1.2,.7]),_=r(fS(new dm(.09,12,10),6038608),t,[-.16,.08,.02],[.5,1.2,.7]),v=r(fS(new dm(.1,12,10),4856918),t,[.02,.05,.1],[1.05,1.35,.55]),y=r(fS(new Ap(.05,.24,.008),9047830,3146762),t,[.03,.08,.155]);return y.rotation.z=.12,{bruiseL:i,bruiseR:a,swellL:o,swellR:s,cutL:c,cutR:l,streakL:u,streakR:d,noseStreak:f,mouthBlood:p,cheekL:m,cheekR:h,ribL:g,ribR:_,bodyBruise:v,bodyStreak:y,dispose(){for(let e of n)e.geometry.dispose(),e.material.dispose(),e.removeFromParent()}}}function mS(e,t,n,r){let i=t.trauma,a=r===`off`?0:r===`reduced`?.45:1,o=e=>e.material,s=e=>Math.min(.85,e/170+i.swelling/420);o(e.bruiseL).opacity=s(i.left_eye),o(e.bruiseR).opacity=s(i.right_eye),o(e.cutL).opacity=Math.min(1,i.left_cut/200+i.bleeding/600)*a,o(e.cutR).opacity=Math.min(1,i.right_cut/200+i.bleeding/600)*a;let c=Math.min(1.35,i.left_eye/260+i.swelling/560),l=Math.min(1.35,i.right_eye/260+i.swelling/560);e.swellL.scale.setScalar(.25+c*1.15),e.swellR.scale.setScalar(.25+l*1.15),o(e.swellL).opacity=Math.min(.92,c*1.1),o(e.swellR).opacity=Math.min(.92,l*1.1);let u=Math.min(1,i.head/900+i.swelling/800);e.cheekL.scale.setScalar(.2+u*1.05),e.cheekR.scale.setScalar(.2+u*.95),o(e.cheekL).opacity=u*.8,o(e.cheekR).opacity=u*.75;let d=Math.min(1.7,(i.left_cut+i.bleeding)/260),f=Math.min(1.7,(i.right_cut+i.bleeding)/260);e.streakL.scale.set(1,.15+d,1),e.streakR.scale.set(1,.15+f,1),o(e.streakL).opacity=Math.min(1,d)*a,o(e.streakR).opacity=Math.min(1,f)*a;let p=Math.min(1.4,i.head/700+i.bleeding/420);e.noseStreak.scale.set(1,.2+p,1),o(e.noseStreak).opacity=Math.min(1,p*.9)*a,o(e.mouthBlood).opacity=Math.min(1,i.head/800+i.bleeding/500)*a;let m=Math.min(1,i.body/750);e.ribL.scale.set(.5+m*.35,1.2+m*.5,.7+m*.2),e.ribR.scale.set(.5+m*.3,1.2+m*.4,.7+m*.2),o(e.ribL).opacity=m*.85,o(e.ribR).opacity=m*.8,o(e.bodyBruise).opacity=Math.min(.7,i.body/950);let h=Math.min(1.3,i.body/500+i.bleeding/420);e.bodyStreak.scale.set(1+h*.4,.3+h,1),o(e.bodyStreak).opacity=Math.min(1,h)*a}var hS=new Q(6031886),gS=[`idle`,`move_forward`,`move_backward`,`move_lateral`],_S=(e,t)=>`${e}_${t}`,vS=class{mapping;boxer;yaw=0;rootX=null;rootZ=0;activePunch=null;punchAgeTicks=0;punchTotalTicks=1;actionId=null;completedActionId=null;predictedId=null;predictedAtSeconds=-1;predictionAgeTicks=0;predictedClip=`jab_left`;predictedTotalTicks=13;hitstop=0;reactionAction=null;downState=`up`;fallAge=0;riseAge=0;opponentDrop=0;liveOpponentHead=new Z(0,1.55,0);hasLiveHead=!1;guardWeight=0;hitstopScale=1;plantedL=null;plantedR=null;locomotionWeights={idle:1,move_forward:0,move_backward:0,move_lateral:0};scratchA=new Z;scratchB=new Z;scratchC=new Z;scratchQ=new Yl;aimTarget=new Z;aimShoulder=new Z;aimTo=new Z;aimPole=new Z;aimBend=new Z;aimElbow=new Z;lockAnkle=new Z;lockPinned=new Z;lockHip=new Z;lockTo=new Z;lockPole=new Z;lockBend=new Z;lockKnee=new Z;constructor(e,t){this.mapping=t,this.boxer=e;for(let t of gS){let n=e.actions.get(t);n.setEffectiveWeight(+(t===`idle`)),n.play()}}get currentRoot(){return{x:this.rootX??0,z:this.rootZ}}predict(e,t,n){if(e.kind!==`punch`||e.id===void 0)return;this.predictedId=e.id,this.predictedAtSeconds=t,this.predictionAgeTicks=0,this.predictedClip=_S(e.class,e.hand);let r=Ny(e.class,e.target,e.power);this.predictedTotalTicks=Py(r);let i=this.actionId!==null&&this.punchAgeTicks/this.punchTotalTicks>.55;(this.actionId===null||i)&&(this.actionId=null,this.beginPunch(this.boxer.actions.get(this.predictedClip),this.predictedTotalTicks),this.punchAgeTicks=0)}landedHit(e){this.hitstop=Math.max(this.hitstop,e?.045:.078)}react(e){let t=this.boxer.actions.get(e===`block`?`block_head`:`hit_head`);t!==void 0&&(this.reactionAction?.fadeOut(.08),this.reactionAction=t,t.reset().setLoop(Uc,1),t.setEffectiveWeight(.85),t.fadeIn(.03).play())}setPunch(e,t){let n=e.getClip();e.time=Jl.clamp(t/30,0,Math.max(.001,n.duration-.001))}beginPunch(e,t){this.activePunch?.fadeOut(.05),this.activePunch=e,e.reset(),e.setLoop(Uc,1),e.setEffectiveWeight(1),e.fadeIn(.04).play(),this.punchTotalTicks=Math.max(1,t)}update(e,t,n,r,i,a,o,s){let c=this.boxer,l=e.stance===`orthodox`?1:-1,u=this.mapping.x(e.x),d=this.mapping.z(e.y);this.rootX===null&&(this.rootX=u,this.rootZ=d);let f=.05;this.rootX+=Jl.clamp(u-this.rootX,-.05,f),this.rootZ+=Jl.clamp(d-this.rootZ,-.05,f);let p=Math.atan2(this.mapping.x(t.x)-u,(this.mapping.z(t.y)-d)*.45);this.yaw=uS(this.yaw,p,7,n),c.root.position.set(this.rootX,0,this.rootZ),c.root.rotation.set(0,this.yaw+.5*l,0);let m=.82+e.stamina/Math.max(1,e.maximum_stamina)*.18;if(this.hitstop=Math.max(0,this.hitstop-n),this.hitstopScale=this.hitstop>0?.12:1,e.action_id!==null&&e.action_id!==this.actionId&&e.action_id!==this.completedActionId){let t=e.action,n=e.action_hand??(e.stance===`orthodox`?`left`:`right`);if(t!==null){this.actionId=e.action_id;let r=Math.max(1,e.action_startup_ticks+e.action_active_ticks+e.action_recovery_ticks);if(this.beginPunch(c.actions.get(_S(t,n)),r),this.punchAgeTicks=Math.max(0,o-e.action_start_tick),this.predictedId===e.action_id){let t=this.predictionAgeTicks,n=o-e.action_start_tick;Math.abs(t-n)>1&&(this.punchAgeTicks=n),this.predictedId=null}else this.punchAgeTicks=Math.max(0,o-e.action_start_tick)}}if(e.action_id===null&&(this.actionId=null,this.completedActionId=null),this.predictedId!==null&&(this.predictionAgeTicks+=n*30*this.hitstopScale,this.predictionAgeTicks>10&&(this.predictedId=null)),this.activePunch!==null){this.punchAgeTicks+=n*30*this.hitstopScale;let e=this.punchTotalTicks;this.setPunch(this.activePunch,this.punchAgeTicks),this.punchAgeTicks>=e&&(this.completedActionId=this.actionId,this.actionId=null,this.activePunch.fadeOut(.12),this.activePunch=null)}this.reactionAction!==null&&!this.reactionAction.isRunning()&&(this.reactionAction.fadeOut(.1),this.reactionAction=null);let h=Math.hypot(e.velocity_x,e.velocity_y)>.5,g=Jl.clamp(e.velocity_x*e.facing/7,-1,1),_=Jl.clamp(e.velocity_y/7,-1,1),v={idle:+!h,move_forward:Math.max(0,g)*+!!h,move_backward:Math.max(0,-g)*+!!h,move_lateral:Math.abs(_)*+!!h},y=v.idle+v.move_forward+v.move_backward+v.move_lateral;for(let e of gS){let t=y>0?v[e]/y:+(e===`idle`);this.locomotionWeights[e]=lS(this.locomotionWeights[e]??0,t,10,n);let r=c.actions.get(e);r.setEffectiveWeight(this.locomotionWeights[e]),r.setEffectiveTimeScale(i?.4:m)}let b=e.defense===`guard_high`||e.defense===`guard_low`;this.guardWeight=lS(this.guardWeight,+!!b,12,n);for(let t of[`guard_high`,`guard_low`]){let n=c.actions.get(t),r=e.defense===t?this.guardWeight:0;r>0&&!n.isRunning()&&n.reset().play(),n.setEffectiveWeight(r)}let x=t.is_downed?-1.2:t.defense===`weave`?-.24:-.03;if(this.opponentDrop=lS(this.opponentDrop,x,4,n),s!==void 0&&(this.liveOpponentHead.copy(s),this.hasLiveHead=!0),e.is_downed)if(this.activePunch!==null&&(this.activePunch.fadeOut(.06),this.activePunch=null),this.actionId=null,this.predictedId=null,this.downState===`up`){this.downState=`falling`,this.fallAge=0;let e=c.actions.get(`knockdown`);e.reset().setLoop(Uc,1),e.setEffectiveWeight(1),e.fadeIn(.03).play()}else this.downState===`falling`&&(this.fallAge+=n);else if(this.downState!==`up`)if(this.downState===`down`||this.downState===`falling`){this.downState=`rising`,this.riseAge=0,this.boxer.actions.get(`knockdown`).fadeOut(.1);let e=c.actions.get(`getup`);e.reset().setLoop(Uc,1),e.setEffectiveWeight(1),e.fadeIn(.05).play()}else this.riseAge+=n,this.riseAge>.9&&(this.downState=`up`,this.boxer.actions.get(`getup`).fadeOut(.12));this.downState===`falling`&&this.fallAge>1.3&&(this.downState=`down`),c.mixer.update(n*this.hitstopScale),this.applyAimCorrection(e,t),this.lockFeet(e,h);let S=Math.min(1,(t.trauma.bleeding+t.trauma.left_cut+t.trauma.right_cut)/620)*(a===`off`?0:a===`reduced`?.45:1);c.gloveGear.color.copy(c.gearBaseColor).lerp(hS,S*.85),mS(c.trauma,e,S,a),c.skin.clearcoat=.25+(1-e.stamina/Math.max(1,e.maximum_stamina))*.4}applyAimCorrection(e,t){if(this.activePunch===null||this.actionId===null||e.is_downed)return;let n=e.action;if(n===null)return;let r=Ny(n,e.action_target??`head`,e.action_power??`normal`),i=r.startup/Math.max(1,Py(r)),a=this.punchAgeTicks/this.punchTotalTicks;if(ai+.2)return;let o=this.scratchA.set(this.mapping.x(t.x),(e.action_target===`body`?1.2:1.62)+this.opponentDrop,this.mapping.z(t.y));this.hasLiveHead&&o.lerp(this.liveOpponentHead,.85);let s=(e.action_hand??`left`)===`left`?`gloveL`:`gloveR`,c=this.boxer.bone(s),l=this.boxer.bone(s===`gloveL`?`elbowL`:`elbowR`),u=this.boxer.bone(s===`gloveL`?`shoulderL`:`shoulderR`);if(c===null||l===null||u===null)return;this.boxer.root.updateMatrixWorld(!0);let d=c.getWorldPosition(this.scratchB),f=this.scratchC.subVectors(o,d),p=f.length()-.09;if(p<=.01)return;f.setLength(Math.min(.42,p));let m=this.aimTarget.copy(d).add(f),h=u.getWorldPosition(this.aimShoulder),g=.3,_=.3,v=this.aimTo.copy(m).sub(h),y=Jl.clamp(v.length(),.12,.585);v.normalize();let b=(g*g-_*_+y*y)/(2*y),x=Math.sqrt(Math.max(1e-4,g*g-b*b)),S=this.aimPole.set(.9*(s===`gloveL`?1:-1),-1,-.25).applyQuaternion(this.boxer.root.quaternion),C=this.aimBend.copy(S).addScaledVector(v,-S.dot(v)).normalize(),w=this.aimElbow.copy(h).addScaledVector(v,b).addScaledVector(C,x);CS(u,h,w),u.updateMatrixWorld(!0),CS(l,w,m)}lockFeet(e,t){for(let n of[`L`,`R`]){let r=this.boxer.bone(`ankle${n}`),i=this.boxer.bone(`knee${n}`),a=this.boxer.bone(`hip${n}`);if(r===null||i===null||a===null)continue;this.boxer.root.updateMatrixWorld(!0);let o=r.getWorldPosition(this.lockAnkle),s=n===`L`?`plantedL`:`plantedR`,c=this[s];if(t||e.is_downed||o.y>.085){this[s]=null;continue}if(c===null){this[s]=o.clone();continue}let l=Math.hypot(o.x-c.x,o.z-c.z);if(l>.11){this[s]=o.clone(),c=this[s];continue}if(l<.008)continue;let u=this.lockPinned.set(c.x,o.y,c.z),d=a.getWorldPosition(this.lockHip),f=.44,p=.44,m=this.lockTo.copy(u).sub(d),h=Jl.clamp(m.length(),.15,.86);m.normalize();let g=(f*f-p*p+h*h)/(2*h),_=Math.sqrt(Math.max(1e-4,f*f-g*g)),v=this.lockPole.set(0,.2,1).applyQuaternion(this.boxer.root.quaternion),y=this.lockBend.copy(v).addScaledVector(m,-v.dot(m));y.lengthSq()<1e-4&&y.set(0,0,1),y.normalize();let b=this.lockKnee.copy(d).addScaledVector(m,g).addScaledVector(y,_);CS(a,d,b),a.updateMatrixWorld(!0),CS(i,b,u)}}dispose(){this.boxer.dispose()}},yS=new Z(0,-1,0),bS=new Z,xS=new Yl,SS=new Yl;function CS(e,t,n){if(bS.subVectors(n,t),bS.lengthSq()<1e-6)return;bS.normalize(),xS.setFromUnitVectors(yS,bS);let r=e.parent;if(r===null){e.quaternion.copy(xS);return}r.getWorldQuaternion(SS),e.quaternion.copy(SS.invert().multiply(xS))}var wS=1e3,TS=e=>e.reduce((e,t)=>e+t,0),ES=(e,t,n)=>{if(e.measureText(t).width<=n)return t;let r=t;for(;r.length>1&&e.measureText(`${r}…`).width>n;)r=r.slice(0,-1);return`${r}…`};function DS(e,t,n,r,i,a){e.fillStyle=`rgba(2,4,9,0.85)`,e.fillRect(t-1,n-1,r+2,11);let o=e.createLinearGradient(0,n,0,n+9);o.addColorStop(0,`rgba(210,220,235,0.5)`),o.addColorStop(.5,`rgba(90,100,120,0.25)`),o.addColorStop(1,`rgba(30,36,50,0.4)`),e.strokeStyle=o,e.lineWidth=1,e.strokeRect(t-1.5,n-1.5,r+3,12);let s=Math.max(0,Math.min(1,i.value/Math.max(1,i.maximum))),c=e.createLinearGradient(0,n,0,n+9);c.addColorStop(0,i.from),c.addColorStop(1,i.to),e.fillStyle=c;let l=r*s;e.fillRect(a?t+r-l:t,n,l,9),e.fillStyle=`rgba(255,255,255,0.22)`,e.fillRect(a?t+r-l:t,n,l,2),e.fillStyle=`#dfe7f5`,e.font=`700 9px Inter, system-ui, sans-serif`,e.textAlign=a?`right`:`left`,e.fillText(i.label,a?t+r:t,n-4)}function OS(e,t,n,r,i,a,o,s,c){e.save(),e.beginPath(),s?(e.moveTo(t+14,n),e.lineTo(t+r,n),e.lineTo(t+r-14,n+62),e.lineTo(t,n+62)):(e.moveTo(t,n),e.lineTo(t+r-14,n),e.lineTo(t+r,n+62),e.lineTo(t+14,n+62)),e.closePath(),e.fillStyle=`rgba(3,6,12,0.82)`,e.fill(),e.strokeStyle=`rgba(190,200,220,0.22)`,e.lineWidth=1,e.stroke(),e.fillStyle=c,e.fillRect(s?t+r-5:t,n+4,5,54);let l=s?t+r-20:t+20;e.textAlign=s?`right`:`left`,e.fillStyle=`#f5f8ff`,e.font=`800 16px Inter, system-ui, sans-serif`,e.fillText(ES(e,i.toUpperCase(),r-44),l,n+21),e.fillStyle=`#93a3bd`,e.font=`600 10px Inter, system-ui, sans-serif`,e.fillText(a,l,n+35);let u=(r-52)/o.length,d=o.length*u+(o.length-1)*12,f=s?t+r-20-d:t+20;o.forEach((t,r)=>{DS(e,f+(u+12)*r,n+48,u,t,s)}),e.restore()}function kS(e,t,n,r,i,a){e.save(),e.beginPath(),e.moveTo(t-168/2+12,n),e.lineTo(t+168/2-12,n),e.lineTo(t+168/2,n+58/2),e.lineTo(t+168/2-12,n+58),e.lineTo(t-168/2+12,n+58),e.lineTo(t-168/2,n+58/2),e.closePath(),e.fillStyle=`rgba(4,6,12,0.88)`,e.fill();let o=e.createLinearGradient(t-168/2,n,t+168/2,n+58);o.addColorStop(0,`#8a6a26`),o.addColorStop(.5,`#f6d57a`),o.addColorStop(1,`#8a6a26`),e.strokeStyle=o,e.lineWidth=2,e.stroke(),e.textAlign=`center`,e.fillStyle=`#ffffff`,e.font=`800 22px ui-monospace, monospace`,e.fillText(r,t,n+27),e.fillStyle=`#f6d57a`,e.font=`800 12px Inter, system-ui, sans-serif`,e.fillText(i,t,n+44),a!==`FIGHT`&&(e.fillStyle=`#93a3bd`,e.font=`700 9px Inter, system-ui, sans-serif`,e.fillText(a,t,n+55)),e.restore()}function AS(e,t,n,r,i,a=0){let o=t/2-320/2,s=n/2-78/2+a;e.fillStyle=`rgba(3,6,12,0.88)`,e.fillRect(o,s,320,78),e.strokeStyle=`rgba(246,213,122,0.45)`,e.lineWidth=1.5,e.strokeRect(o+2,s+2,316,74),e.textAlign=`center`,e.fillStyle=`#ffd77a`,e.font=`800 22px Inter, system-ui, sans-serif`,e.fillText(r,t/2,s+34),e.fillStyle=`#c8d3e6`,e.font=`600 12px Inter, system-ui, sans-serif`,e.fillText(i,t/2,s+58)}function jS(e,t,n,r,i,a,o,s,c=30){e.save(),e.textBaseline=`alphabetic`;let l=Math.min(300,t*.38),u=n-84;r.fighters.forEach((n,r)=>{let a=r===1,o=a?t-24-l:24,s=i[n.player_id],c=`ELO ${s?.rating??`—`} · KD ${n.knockdowns} · W ${n.warnings} · −${n.deductions}`,d=[{label:`STAMINA ${Math.round(n.stamina)}`,value:n.stamina,maximum:n.maximum_stamina,from:`#ffe08a`,to:`#d9a53a`},{label:`HEALTH ${Math.round(n.conditioning)}`,value:n.conditioning,maximum:wS,from:`#ff8a7a`,to:`#b02a20`},{label:`GUARD`,value:n.guard,maximum:700,from:`#9ec7ff`,to:`#3d6fb8`},{label:`POISE ${Math.round(n.poise)}`,value:n.poise,maximum:600,from:`#e8c890`,to:`#8a6a34`}];OS(e,o,u,l,s?.name??`Fighter`,c,d.slice(0,2),a,r===0?`#3d6fb8`:`#b02a20`);let f=u-12;DS(e,a?o+l-148:o+20,f,64,d[2],a),DS(e,a?o+l-72:o+96,f,64,d[3],a)});let d=Math.floor(r.phase_ticks_remaining/c),f=`${Math.floor(d/60)}:${String(d%60).padStart(2,`0`)}`;if(kS(e,t/2,n-84,f,`ROUND ${r.round_number}`,r.phase.replace(`_`,` `).toUpperCase()),r.phase===`knockdown`){let i=r.fighters.find(e=>e.player_id===a),o=r.fighters.find(e=>e.is_downed)??i,s=Math.max(...r.fighters.map(e=>e.get_up_count)),c=t/2-380/2,l=n*.24;e.fillStyle=`rgba(3,6,12,0.88)`,e.fillRect(c,l,380,150),e.strokeStyle=`rgba(246,213,122,0.5)`,e.lineWidth=2,e.strokeRect(c+2,l+2,376,146),e.textAlign=`center`,e.fillStyle=`#ffd77a`,e.font=`800 30px Inter, system-ui, sans-serif`,e.fillText(`COUNT ${s}`,t/2,l+40);let u=i?.is_downed===!0?i.get_up_prompt:null;if(u!=null&&i!==void 0){let n=r.tick>=i.get_up_window_start_tick&&r.tick<=i.get_up_window_end_tick,a=u===`get_up_left`?`←`:`→`;n?(e.fillStyle=`#ffe9a8`,e.font=`900 64px Inter, system-ui, sans-serif`,e.fillText(a,t/2-90,l+106),e.fillStyle=`#7dffa8`,e.font=`900 34px Inter, system-ui, sans-serif`,e.fillText(`NOW!`,t/2+62,l+100)):(e.fillStyle=`#8fa3c8`,e.font=`800 30px Inter, system-ui, sans-serif`,e.fillText(`GET READY ${a}`,t/2,l+98));let o=Math.max(0,Math.min(1,i.get_up_meter/Math.max(1,i.get_up_required)));e.fillStyle=`rgba(2,4,9,0.9)`,e.fillRect(c+30,l+120,320,16);let s=e.createLinearGradient(c+30,0,c+30+320,0);s.addColorStop(0,`#7dffa8`),s.addColorStop(1,`#2ea860`),e.fillStyle=s,e.fillRect(c+30,l+120,320*o,16),e.strokeStyle=`rgba(210,220,235,0.5)`,e.lineWidth=1,e.strokeRect(c+29.5,l+119.5,321,17)}else e.fillStyle=`#c8d3e6`,e.font=`600 14px Inter, system-ui, sans-serif`,e.fillText(o!==void 0&&o.player_id===a?`Waiting for your rhythm instruction…`:`Waiting for the count`,t/2,l+100)}r.phase===`foul_recovery`&&AS(e,t,n,`FOUL RECOVERY`,`${i[r.fighters.find(e=>e.is_foul_recovery_target)?.player_id??``]?.name??`Fighter`} is recovering`),r.phase===`rest`&&AS(e,t,n,`CORNERS · RECOVER`,`Conditioning governs recovery`),s>0&&AS(e,t,n,`OPPONENT RECONNECTING · ${Math.ceil(s/1e3)}s`,`The bout is paused`),o!==null&&MS(e,t,n,o,i),e.restore()}function MS(e,t,n,r,i){e.fillStyle=`rgba(2,4,9,0.94)`,e.fillRect(t*.14,n*.13,t*.72,n*.74),e.strokeStyle=`rgba(246,213,122,0.5)`,e.lineWidth=2,e.strokeRect(t*.14+4,n*.13+4,t*.72-8,n*.74-8),e.textAlign=`center`,e.fillStyle=`#f6d57a`,e.font=`800 26px Inter, system-ui, sans-serif`,e.fillText(r.method.replaceAll(`_`,` `).toUpperCase(),t/2,n*.21);let a=r.winner_id===null?`DRAW`:`${i[r.winner_id]?.name??`Winner`} WINS`;e.fillStyle=`white`,e.font=`700 18px Inter, system-ui, sans-serif`,e.fillText(ES(e,a,t*.6),t/2,n*.27),e.font=`12px ui-monospace, monospace`,r.scorecards.forEach((r,i)=>{let a=n*.37+i*36;e.fillStyle=`#aebbd0`,e.fillText(`${ES(e,r.judge,100)} ${TS(r.player_one)} — ${TS(r.player_two)} [${r.player_one.join(`·`)}] [${r.player_two.join(`·`)}]`,t/2,a)});let o=Object.entries(r.ratings);e.font=`600 13px Inter, system-ui, sans-serif`,o.forEach(([r,a],o)=>{e.fillStyle=a.after>=a.before?`#55df9b`:`#ff7b74`,e.fillText(`${ES(e,i[r]?.name??`Fighter`,100)} ${a.before} → ${a.after} (${a.after-a.before>=0?`+`:``}${a.after-a.before})`,t/2,n*.61+o*27)})}function NS(e,t){let n=document.createElement(`canvas`);n.width=e,n.height=e;let r=n.getContext(`2d`);r!==null&&t(r,e);let i=new Ep(n);return i.anisotropy=8,i.colorSpace=nl,i}function PS(){return NS(1024,(e,t)=>{e.fillStyle=`#2c4386`,e.fillRect(0,0,t,t);let n=e.createLinearGradient(0,0,t,t);n.addColorStop(0,`rgba(255,255,255,0.05)`),n.addColorStop(.5,`rgba(0,0,0,0.04)`),n.addColorStop(1,`rgba(255,255,255,0.03)`),e.fillStyle=n,e.fillRect(0,0,t,t);for(let n=0;n<900;n+=1){let r=Math.sin(n*12.9898)*43758.5453%1,i=Math.sin(n*78.233)*12543.1234%1;e.fillStyle=`rgba(${n%2==0?`255,255,255`:`10,20,50`},${.015+n%5*.004})`,e.fillRect(Math.abs(r)*t,Math.abs(i)*t,2+n%3,1+n%2)}e.strokeStyle=`rgba(235,240,255,0.9)`,e.lineWidth=10,e.beginPath(),e.arc(t/2,t/2,t*.2,0,Math.PI*2),e.stroke(),e.fillStyle=`rgba(235,240,255,0.92)`,e.font=`800 ${Math.round(t*.062)}px Inter, system-ui, sans-serif`,e.textAlign=`center`,e.textBaseline=`middle`,e.fillText(`H A N D S`,t/2,t/2-t*.012),e.font=`600 ${Math.round(t*.024)}px Inter, system-ui, sans-serif`,e.fillText(`AUTHORITATIVE BOXING`,t/2,t/2+t*.052),e.strokeStyle=`rgba(235,240,255,0.55)`,e.lineWidth=5,e.strokeRect(t*.035,t*.035,t*.93,t*.93)})}function FS(){let e=[],t=[],n=[],r=new qu;r.name=`ring`;let i=PS();n.push(i);let a=new Cm({map:i,roughness:.92,metalness:0});t.push(a);let o=new lm(Hb*2,Hb*2);e.push(o);let s=new Cf(o,a);s.rotation.x=-Math.PI/2,s.position.y=.002,s.receiveShadow=!0,r.add(s);let c=new Cm({color:`#16233f`,roughness:.85});t.push(c);let l=new um(Hb*.98,Ub,4,1);e.push(l);let u=new Cf(l,c);u.rotation.x=-Math.PI/2,u.rotation.z=Math.PI/4,u.position.y=.001,u.receiveShadow=!0,r.add(u);let d=new Cm({color:`#0c1424`,roughness:.9});t.push(d);let f=new Ap(Wb*2,1,Wb*2);e.push(f);let p=new Cf(f,d);p.position.y=-.5,p.receiveShadow=!0,r.add(p);let m=new Cm({color:`#101b33`,roughness:.95});t.push(m);for(let t=0;t<4;t+=1){let n=new lm(Wb*2,.95);e.push(n);let i=new Cf(n,m),a=t*Math.PI/2;i.position.set(Math.sin(a)*(Wb-.001),-.48,Math.cos(a)*(Wb-.001)),i.rotation.y=a,r.add(i)}let h=new Cm({color:`#9aa7b5`,roughness:.35,metalness:.75});t.push(h);let g=[Jb.blue,Jb.neutral,Jb.red,Jb.neutral],_=new Np(.055,.055,1.55,12);e.push(_);let v=new Ap(.34,.52,.13);e.push(v);let y=new Ap(.16,.07,.1);e.push(y);let b=[];for(let e=0;e<4;e+=1){let n=Math.PI/4+e*Math.PI/2,i=Math.sin(n)*Gb*Math.SQRT2*.72,a=Math.cos(n)*Gb*Math.SQRT2*.72;b.push(new Z(i,0,a));let o=new Cf(_,h);o.position.set(i,.78,a),o.castShadow=!0,r.add(o);let s=new Cm({color:g[e],roughness:.55});t.push(s);for(let e of[.62,1.12]){let t=new Cf(v,s);t.position.set(i*.985,e,a*.985),t.lookAt(0,e,0),t.castShadow=!0,r.add(t)}}let x=[12131356,15067115,1920728].map(e=>{let n=new Cm({color:e,roughness:.42,metalness:.05});return t.push(n),n});for(let n=0;n<4;n+=1){let i=b[n],a=b[(n+1)%4];for(let[n,o]of Kb.entries()){let s=i.clone().add(a).multiplyScalar(.5);s.y=o-.045;let c=new om(new Z(i.x,o,i.z),s,new Z(a.x,o,a.z)),l=new fm(c,24,.028,8,!1);e.push(l);let u=new Cf(l,x[n]);u.castShadow=!0,r.add(u);for(let n of[.33,.66]){let i=c.getPoint(n),a=new Ap(.035,.82,.012);e.push(a);let s=new Cm({color:14212840,roughness:.6});t.push(s);let l=new Cf(a,s);l.position.set(i.x,o-.36,i.z),l.lookAt(0,o-.36,0),r.add(l)}}}return{group:r,materials:t,geometries:e,textures:n}}function IS(e){for(let t of e.geometries)t.dispose();for(let t of e.materials)t.dispose();for(let t of e.textures)t.dispose()}function LS(e,t=2){let n=e.getBoundingClientRect(),r=Math.max(1,Math.round(n.width)),i=Math.max(1,Math.round(n.height)),a=Math.min(t,Math.max(1,window.devicePixelRatio||1));(e.width!==Math.round(r*a)||e.height!==Math.round(i*a))&&(e.width=Math.round(r*a),e.height=Math.round(i*a));let o=e.getContext(`2d`);return o===null?null:(o.setTransform(a,0,0,a,0,0),{context:o,viewport:{width:r,height:i},dpr:a})}function RS(){let e=document.createElement(`canvas`);e.width=128,e.height=128;let t=e.getContext(`2d`);if(t!==null){let e=t.createRadialGradient(64,64,8,64,64,62);e.addColorStop(0,`rgba(0,0,0,0.68)`),e.addColorStop(.6,`rgba(0,0,0,0.34)`),e.addColorStop(1,`rgba(0,0,0,0)`),t.fillStyle=e,t.fillRect(0,0,128,128)}return new Ep(e)}var zS={tick_rate:30,ring_half_width:500,ring_half_height:330},BS=class{canvas;simulation;settings;renderer;scene=new nd;camera;composer;ring;arena;boxers;referee;refereePosition=new Z(.4,0,-2.1);animators;effects;director=new Vb;mapping;buffer=new Ss;dedupe=new Cs;hudCanvas;cameraOverride=null;manualClock;blobShadows=[];blobTexture;lights=[];keyLight=null;sizeCheck=new X;refereeAway=new Z;refereeYaw=0;raf=0;previous=performance.now();players={};viewerId=null;final=null;reconnectMs=0;destroyed=!1;graphs=null;glbLoading=!1;graphsReady=Promise.resolve();headCache=[new Z,new Z];headCacheValid=[!1,!1];pendingContacts=[];onContact=null;tmpA=new Z;tmpB=new Z;tmpHead=new Z;constructor(e,t=zS,n,r={}){this.canvas=e,this.simulation=t,this.settings=n,this.manualClock=r.manualClock===!0,this.mapping=qb(t),this.renderer=new my({canvas:e,antialias:!0,powerPreference:`high-performance`}),this.renderer.shadowMap.enabled=!0,this.renderer.shadowMap.type=1,this.renderer.toneMapping=4,this.renderer.toneMappingExposure=1,this.renderer.setPixelRatio(Math.min(2,window.devicePixelRatio||1)),this.scene.background=new Q(`#04060b`),this.scene.fog=new td(`#04060b`,.042),this.camera=new gh(38,1,.1,80),this.camera.position.set(0,2.05,7.6),this.camera.lookAt(0,1.1,0),this.setupLights(),this.ring=FS(),this.scene.add(this.ring.group),this.arena=Lb(),this.scene.add(this.arena.group),this.effects=new nx(this.scene),this.boxers=[Hy(Yb[0]),Hy(Yb[1])],this.animators=[new Mb(this.boxers[0],this.mapping),new Mb(this.boxers[1],this.mapping)],this.boxers[0].root.position.set(-.9,0,0),this.boxers[1].root.position.set(.9,0,0),this.boxers[0].root.rotation.y=Math.PI/2,this.boxers[1].root.rotation.y=-Math.PI/2,this.scene.add(this.boxers[0].root,this.boxers[1].root),this.referee=nb(),this.referee.root.position.copy(this.refereePosition),this.referee.shoulderL.rotation.x=-.42,this.referee.shoulderR.rotation.x=-.42,this.referee.elbowL.rotation.x=-.55,this.referee.elbowR.rotation.x=-.55,this.scene.add(this.referee.root),this.blobTexture=RS();let i=new lm(1,1);for(let e=0;e<3;e+=1){let t=new Cf(i,new df({map:this.blobTexture,transparent:!0,depthWrite:!1}));t.rotation.x=-Math.PI/2,t.position.y=.006+e*4e-4,t.renderOrder=1,this.blobShadows.push(t),this.scene.add(t)}this.composer=new Cy(this.renderer),this.composer.addPass(new wy(this.scene,this.camera));let a=new Ey(new X(1280,720),.32,.5,.85);this.composer.addPass(a),this.composer.addPass(new Oy),this.hudCanvas=document.createElement(`canvas`),this.hudCanvas.className=`fight-hud`,this.hudCanvas.style.cssText=`position:absolute;inset:0;width:100%;height:100%;pointer-events:none`,e.insertAdjacentElement(`afterend`,this.hudCanvas),this.effects.setBloodLevel(n().blood),this.ensureGraphs(),this.manualClock||(this.raf=requestAnimationFrame(e=>this.draw(e)))}ensureGraphs(){this.glbLoading||this.graphs!==null||(this.glbLoading=!0,this.graphsReady=cS().then(e=>{if(this.destroyed)return;let t=new dS(e,{skin:11563071,gear:1920728}),n=new dS(e,{skin:7225640,gear:12131356});this.graphs=[new vS(t,this.mapping),new vS(n,this.mapping)],this.scene.add(t.root,n.root);for(let e of this.boxers)this.scene.remove(e.root),rb(e)}).catch(e=>{this.glbLoading=!1,console.error(`boxer_glb_load_failed`,e)}))}get ready(){return this.graphsReady}get labRigs(){let e=this.graphs;return e===null?this.boxers.map(e=>e.root):[e[0].boxer.root,e[1].boxer.root]}get labScene(){return this.scene}get labEffects(){return this.effects}labSetCameraOverride(e,t){this.cameraOverride={position:new Z(...e),lookAt:new Z(...t)}}labFrame(e,t=!0){this.draw(e*1e3,!0,t)}setPlayers(e,t){this.players=e,this.viewerId=t}setFinal(e){this.final=e}setReconnect(e){this.reconnectMs=e}setBloodLevel(e){this.effects.setBloodLevel(e)}setReducedMotion(e){e&&this.effects.clearDynamic()}predictAction(e){let t=this.buffer.latest();if(t===null||this.viewerId===null)return;let n=t.fighters.findIndex(e=>e.player_id===this.viewerId);if(n<0)return;let r=this.graphs;r===null?this.animators[n].predict(e,performance.now()/1e3,this.simulation.tick_rate):r[n].predict(e,performance.now()/1e3,this.simulation.tick_rate)}push(e){if(this.buffer.push(e))for(let t of this.dedupe.accept(e.events)){let n=e.fighters.find(e=>e.player_id===t.target_id)??e.fighters.find(e=>e.player_id===t.actor_id)??e.fighters[0];this.tmpA.set(this.mapping.x(n.x),0,this.mapping.z(n.y)),t.kind===`knockdown`&&this.effects.pool(this.tmpA.x+(Math.random()-.5)*.2,this.tmpA.z+(Math.random()-.5)*.2,1);let r=e.fighters.findIndex(e=>e.player_id===t.target_id),i=e.fighters.findIndex(e=>e.player_id===t.actor_id);if([`hit`,`counter_hit`,`block`,`perfect_block`,`guard_break`,`knockdown`].includes(t.kind)){let n=t.kind===`block`||t.kind===`perfect_block`?r>=0?e.fighters[r]:null:i>=0?e.fighters[i]:null;this.pendingContacts.push({event:t,contactTick:n?.action_contact_tick??t.tick,targetIndex:r,actorIndex:i})}else t.kind===`bleed`&&this.effects.addEvent(t,this.tmpA,this.settings().reducedMotion);e.result!==null&&this.fireContacts(2**53-1)}}fireContacts(e){for(let t=this.pendingContacts.length-1;t>=0;--t){let n=this.pendingContacts[t];if(n.contactTick>e)continue;this.pendingContacts.splice(t,1);let{event:r,targetIndex:i,actorIndex:a}=n,o=this.buffer.latest()?.fighters[i];o!==void 0&&(this.tmpA.set(this.mapping.x(o.x),0,this.mapping.z(o.y)),this.effects.addEvent(r,this.tmpA,this.settings().reducedMotion));let s=this.graphs;if(i>=0&&[`hit`,`counter_hit`,`block`,`perfect_block`,`knockdown`].includes(r.kind)){let e=r.kind===`block`||r.kind===`perfect_block`;s===null?this.animators[i].impact({direction:r.direction,amount:e?r.amount*.35:r.amount,blocked:e}):s[i].react(e?`block`:`hit`)}let c=r.kind===`block`||r.kind===`perfect_block`?i:a;c>=0&&[`hit`,`counter_hit`,`block`,`perfect_block`,`guard_break`].includes(r.kind)&&(s===null?this.animators[c].landedHit(r.kind===`block`||r.kind===`perfect_block`):s[c].landedHit(r.kind===`block`||r.kind===`perfect_block`)),this.onContact?.(r)}}setupLights(){let e=new ih(`#33415e`,`#05060a`,.5);this.scene.add(e),this.lights.push(e);let t=new wh(`#2b3450`,.55);this.scene.add(t),this.lights.push(t);let n=new vh(`#fff4e0`,115,26,.68,.6,1.6);n.position.set(0,7.4,.9),n.target.position.set(0,0,0),n.castShadow=!0,n.shadow.mapSize.set(2048,2048),n.shadow.bias=-4e-4,n.shadow.camera.near=3,n.shadow.camera.far=14,this.keyLight=n,this.scene.add(n,n.target),this.lights.push(n);for(let[e,t,n,r]of[[`#b9cdff`,-6.5,4.4,-5.2],[`#ffd9b9`,6.2,4.1,-5.6],[`#9fb8ff`,-5.4,3.6,6],[`#c9d8ff`,5.8,3.9,5.7]]){let i=new vh(e,60,30,.7,.8,1.8);i.position.set(t,n,r),i.target.position.set(0,1,0),this.scene.add(i,i.target),this.lights.push(i)}let r=new Ch(`#dfe9ff`,.7);r.position.set(0,3.4,-6.5),this.scene.add(r),this.lights.push(r)}draw(e,t=!1,n=!0){if(this.destroyed)return;let r=t?1/60:Math.min(.05,Math.max(.001,(e-this.previous)/1e3));this.previous=e;let i=this.canvas.clientWidth,a=this.canvas.clientHeight;i>0&&a>0&&(this.renderer.getSize(this.sizeCheck),(this.sizeCheck.x!==i||this.sizeCheck.y!==a)&&(this.renderer.setSize(i,a,!1),this.composer.setSize(i,a),this.camera.aspect=i/a,this.camera.updateProjectionMatrix()));let o=e/1e3,s=this.settings();this.effects.setBloodLevel(s.blood);let c=this.buffer.latest(),l=c===null?null:this.buffer.sample(c.tick-1),u=c===null?0:c.tick-1,d=1.8,f=!1;if(l!==null){let[e,t]=l.fighters,n=this.graphs;if(n!==null){let i=this.headCacheValid[0]?this.headCache[0]:void 0,a=this.headCacheValid[1]?this.headCache[1]:void 0;n[0].update(e,t,r,o,s.reducedMotion,s.blood,u,a),n[1].update(t,e,r,o,s.reducedMotion,s.blood,u,i);for(let[e,t]of n.entries()){let n=t.boxer.bone(`head`);n!==null&&(t.boxer.root.updateMatrixWorld(!0),n.getWorldPosition(this.headCache[e]),this.headCacheValid[e]=!0)}}else this.animators[0].update(e,t,r,o,s.reducedMotion,s.blood,u),this.animators[1].update(t,e,r,o,s.reducedMotion,s.blood,u);let i=this.mapping.x(e.x),a=this.mapping.z(e.y),c=this.mapping.x(t.x),p=this.mapping.z(t.y);d=Math.hypot(i-c,a-p),f=e.is_downed||t.is_downed,this.tmpA.set(i,0,a),this.tmpB.set(c,0,p);for(let[e,t]of l.fighters.entries()){let n=(t.trauma.bleeding+t.trauma.left_cut+t.trauma.right_cut)/380;if(n>.05&&!t.is_downed){let t=e===0?this.tmpA:this.tmpB;this.tmpHead.set(t.x,1.56,t.z),this.effects.drip(this.tmpHead,n,r,s.reducedMotion)}else if(n>.3&&t.is_downed&&Math.random()this.draw(e)))}updateBlobShadows(){let e=[this.tmpA,this.tmpB,this.refereePosition];for(let[t,n]of this.blobShadows.entries()){let r=e[t];n.position.x=r.x,n.position.z=r.z;let i=t<2&&this.buffer.latest()?.fighters[t]?.is_downed===!0;n.scale.set(i?2.1:1.25,i?.9:.85,1)}}updateReferee(e,t,n){let r=(this.tmpA.x+this.tmpB.x)/2,i=(this.tmpA.z+this.tmpB.z)/2,a=this.refereeAway.set(this.refereePosition.x-r,0,this.refereePosition.z-i);a.lengthSq()<.01&&a.set(0,0,-1),a.normalize();let o=Jl.clamp(r+a.x*2.05,-2.4,2.4),s=Jl.clamp(i+a.z*2.05,-2.4,2.4),c=1-Math.exp(-1.6*e);this.refereePosition.x+=(o-this.refereePosition.x)*c,this.refereePosition.z+=(s-this.refereePosition.z)*c;for(let e of[this.tmpA,this.tmpB]){let t=this.refereePosition.x-e.x,n=this.refereePosition.z-e.z,r=Math.hypot(t,n);r<1.45&&r>.001&&(this.refereePosition.x=e.x+t/r*1.45,this.refereePosition.z=e.z+n/r*1.45)}this.referee.root.position.set(this.refereePosition.x,0,this.refereePosition.z);let l=((Math.atan2(r-this.refereePosition.x,i-this.refereePosition.z)-this.refereeYaw+Math.PI)%(Math.PI*2)+Math.PI*2)%(Math.PI*2)-Math.PI;this.refereeYaw+=l*(1-Math.exp(-3*e)),this.referee.root.rotation.y=this.refereeYaw,this.referee.hips.position.y=.98+(n?0:Math.sin(t*1.7)*.006)}drawHudOverlay(e){let t=LS(this.hudCanvas);if(t===null)return;let{context:n,viewport:r}=t;if(n.clearRect(0,0,r.width,r.height),e===null)return;let i=Math.max(...e.fighters.map(e=>e.trauma.head+e.trauma.body));if(i>350){let e=n.createRadialGradient(r.width/2,r.height/2,r.width*.2,r.width/2,r.height/2,r.width*.72);e.addColorStop(0,`rgba(90,0,8,0)`),e.addColorStop(1,`rgba(75,0,8,${Math.min(.3,i/4600)})`),n.fillStyle=e,n.fillRect(0,0,r.width,r.height)}jS(n,r.width,r.height,e,this.players,this.viewerId,this.final,this.reconnectMs,this.simulation.tick_rate)}destroy(){if(!this.destroyed){this.destroyed=!0,cancelAnimationFrame(this.raf),this.raf=0,this.buffer.clear(),this.dedupe.reset(),this.pendingContacts.length=0,this.effects.dispose(),this.arena.dispose(),IS(this.ring);for(let e of this.boxers)this.scene.remove(e.root),rb(e);if(this.graphs!==null){for(let e of this.graphs)this.scene.remove(e.boxer.root),e.dispose();this.graphs=null}this.scene.remove(this.referee.root),rb(this.referee);for(let e of this.lights)this.scene.remove(e);this.keyLight?.shadow.map?.dispose(),this.keyLight?.shadow.dispose(),this.renderer.renderLists.dispose(),this.composer.dispose(),this.renderer.dispose(),this.blobTexture.dispose();for(let e of this.blobShadows)this.scene.remove(e),e.geometry.dispose(),e.material.dispose();this.hudCanvas.remove()}}},VS=`hands.preferences.v1`,HS={length:0,clear:()=>void 0,getItem:()=>null,key:()=>null,removeItem:()=>void 0,setItem:()=>void 0},US=()=>{try{return window.localStorage}catch{return HS}},WS=()=>({volume:.7,haptics:!0,reducedMotion:window.matchMedia?.(`(prefers-reduced-motion: reduce)`).matches??!1,blood:`full`});function GS(e=US()){let t=WS();try{let n=JSON.parse(e.getItem(VS)??`null`);if(typeof n!=`object`||!n||Array.isArray(n))return t;let r=n;return{volume:typeof r.volume==`number`&&Number.isFinite(r.volume)?Math.max(0,Math.min(1,r.volume)):t.volume,haptics:typeof r.haptics==`boolean`?r.haptics:t.haptics,reducedMotion:typeof r.reducedMotion==`boolean`?r.reducedMotion:t.reducedMotion,blood:r.blood===`reduced`||r.blood===`off`||r.blood===`full`?r.blood:t.blood}}catch{return t}}function KS(e,t=US()){try{t.setItem(VS,JSON.stringify({volume:Math.max(0,Math.min(1,e.volume)),haptics:e.haptics,reducedMotion:e.reducedMotion,blood:e.blood}))}catch{}}var qS=class{value;listeners=new Set;constructor(e=US()){this.storage=e,this.value=GS(e)}storage;get current(){return this.value}update(e){this.value={...this.value,...e},KS(this.value,this.storage);for(let e of this.listeners)e(this.value)}subscribe(e){return this.listeners.add(e),()=>this.listeners.delete(e)}destroy(){this.listeners.clear()}},JS={stage:`bootstrapping`,player:null,playerId:null,role:null,players:{},simulation:null,snapshot:null,final:null,serverTick:0,nextSequence:0,reconnectMs:0,safeError:null},YS=e=>Object.fromEntries(e.map(e=>[e.id,e]));function XS(e,t){if(t.type===`bootstrap`)return{...e,stage:`authorizing`,simulation:t.simulation,safeError:null};if(t.type===`authorized`)return{...e,stage:`connecting`,player:t.player,safeError:null};if(t.type===`connecting`)return{...e,stage:`connecting`};if(t.type===`reconnect-tick`)return{...e,stage:`paused`,reconnectMs:Math.max(0,t.remainingMs)};if(t.type===`fatal`)return{...e,stage:`fatal`,safeError:t.code,reconnectMs:0};let n=t.message;switch(n.type){case`welcome`:return{...e,playerId:n.role===`fighter`?n.player_id:null,role:n.role,players:YS(n.players),serverTick:n.server_tick,nextSequence:n.role===`fighter`?n.next_sequence:0,safeError:null};case`ticket`:return e;case`waiting`:return{...e,stage:`waiting`};case`ready`:return{...e,stage:e.snapshot?.phase??`countdown`,players:YS(n.players)};case`paused`:return{...e,stage:`paused`,reconnectMs:n.grace_ms};case`resumed`:return{...e,stage:e.snapshot?.phase??`countdown`,reconnectMs:0};case`snapshot`:return{...e,stage:n.payload.phase,snapshot:n.payload,serverTick:Math.max(e.serverTick,n.payload.tick)};case`final`:return{...e,stage:`complete`,final:n,reconnectMs:0};case`error`:return{...e,stage:`fatal`,safeError:n.code,reconnectMs:0}}}var ZS=new Set([`hit`,`counter_hit`,`block`,`perfect_block`,`guard_break`,`knockdown`]),QS=class{root;reloadPage;state=JS;settings=new qS;input=new ys;audio=new r(()=>this.settings.current);haptics=new rs(()=>this.settings.current);feedbackEvents=new Cs;renderer=null;network=null;session=null;abort=new AbortController;destroyed=!1;generation=0;reloadOnRetry=!1;canvas;status;roleIndicator;controlsButton;controlsPanel;retry;fightSummary;liveFightStatus;finalSummary;constructor(e,t=()=>window.location.reload()){this.root=e,this.reloadPage=t,e.innerHTML=`
HANDSauthoritative two-player boxing

`,this.canvas=e.querySelector(`canvas`),this.status=e.querySelector(`[data-status]`),this.roleIndicator=e.querySelector(`[data-role]`),this.controlsButton=e.querySelector(`[data-controls]`),this.controlsPanel=e.querySelector(`[data-controls-panel]`),this.retry=e.querySelector(`[data-retry]`),this.fightSummary=e.querySelector(`[data-fight-summary]`),this.liveFightStatus=e.querySelector(`[data-fight-status]`),this.finalSummary=e.querySelector(`[data-final]`),this.retry.addEventListener(`click`,this.onRetry),this.bindPanels(),this.syncSettings()}start(){this.authorize()}resetForAuthorization(){this.reloadOnRetry=!1,this.network?.dispose(),this.network=null,this.session?.destroy(),this.session=null,this.renderer?.destroy(),this.renderer=null,this.abort.abort(),this.abort=new AbortController,this.state=JS,this.feedbackEvents.reset(),this.input.setActive(!1),this.input.reset(),this.finalSummary.textContent=``,this.fightSummary.textContent=``,this.liveFightStatus.textContent=``}async authorize(){let e=++this.generation;this.resetForAuthorization(),this.dispatch({type:`connecting`}),this.setText(this.status,`Securing Discord Activity session…`),this.retry.hidden=!0;try{let t=await ts(this.abort.signal);if(this.destroyed||e!==this.generation){t.destroy();return}this.session=t,this.dispatch({type:`bootstrap`,simulation:t.bootstrap.simulation}),this.dispatch({type:`authorized`,player:t.player}),this.renderer=new BS(this.canvas,t.bootstrap.simulation,()=>this.settings.current),this.renderer.onContact=e=>{this.audio.event(e),this.haptics.event(e)},this.input.onAction(e=>this.renderer?.predictAction?.(e));let n=t.takeTicket();if(n===null)throw Error(`ticket_unavailable`);let r=new Ds(n,()=>this.input.frame(),{onMessage:e=>this.receive(e),onReconnect:e=>{this.dispatch({type:`reconnect-tick`,remainingMs:e}),this.renderer?.setReconnect(e),this.renderState()},onFatal:e=>this.fail(e),onFreshAuth:()=>{e===this.generation&&this.authorize()}});this.network=r,r.start(),this.setText(this.status,`Connecting to the ring…`)}catch(t){!this.abort.signal.aborted&&e===this.generation&&(this.reloadOnRetry=t instanceof j&&t.reloadRequired,this.fail(ge(t)))}}receive(e){if(e.type===`error`){this.fail(e.code);return}this.dispatch({type:`message`,message:e}),e.type===`snapshot`&&this.receiveSnapshot(e.payload),e.type===`final`&&(this.renderer?.setFinal(e),this.audio.result(e)),this.renderer?.setPlayers(this.state.players,this.state.playerId),this.renderer?.setReconnect(this.state.reconnectMs),this.renderState()}receiveSnapshot(e){this.renderer?.push(e);let t=e.fighters.find(e=>e.player_id===this.state.playerId);this.input.setKnockdown(t?.is_downed===!0),t!==void 0&&this.audio.snapshot(e.tick,t.stamina,t.maximum_stamina,t.trauma.head+t.trauma.body);for(let t of this.feedbackEvents.accept(e.events))ZS.has(t.kind)||(this.audio.event(t),this.haptics.event(t))}dispatch(e){this.state=XS(this.state,e)}setText(e,t){e.textContent!==t&&(e.textContent=t)}renderState(){let e={bootstrapping:`Loading…`,authorizing:`Authorizing with Discord…`,connecting:`Connecting securely…`,waiting:`Waiting for one opponent to use Play now in this channel.`,countdown:`Bout countdown.`,fight:`Round ${this.state.snapshot?.round_number??1} in progress.`,knockdown:`Knockdown count ${this.state.snapshot?.fighters.find(e=>e.player_id===this.state.playerId)?.get_up_count??0}.`,foul_recovery:`Foul recovery in progress.`,rest:`Between-round rest.`,paused:`Connection paused. ${Math.ceil(this.state.reconnectMs/1e3)} seconds remain.`,complete:`Bout complete. Scorecards and rating changes are displayed.`,fatal:`Unable to continue (${this.state.safeError??`safe_error`}).`},t=this.state.role===`spectator`;this.setText(this.status,t?`Spectating — ${e[this.state.stage]}`:e[this.state.stage]),this.roleIndicator.hidden=!t,this.controlsButton.hidden=t,t&&(this.controlsPanel.hidden=!0,this.controlsButton.setAttribute(`aria-expanded`,`false`));let n=this.state.snapshot?.fighters.find(e=>e.player_id===this.state.playerId),r=t?`Spectating. ${e[this.state.stage]}`:this.state.stage===`knockdown`&&n?.is_downed===!0?`Knockdown. Count ${n.get_up_count}. ${n.get_up_prompt===null?`Wait for your private rhythm instruction.`:`Press ${n.get_up_prompt===`get_up_left`?`left`:`right`} now.`}`:this.state.stage===`paused`?`Connection paused.`:e[this.state.stage];this.setText(this.liveFightStatus,r),this.retry.hidden=this.state.stage!==`fatal`;let i=!t&&[`countdown`,`fight`,`knockdown`,`foul_recovery`].includes(this.state.stage);if(this.input.setActive(i),this.network?.setActive(i),this.renderFightSummary(),this.state.final!==null){let e=this.state.final;this.setText(this.finalSummary,`${e.method.replaceAll(`_`,` `)}. ${e.winner_id===null?`Draw`:`${this.state.players[e.winner_id]?.name??`Winner`} wins`}. Scorecards: ${e.scorecards.map(e=>`${e.judge}: ${e.player_one.reduce((e,t)=>e+t,0)} to ${e.player_two.reduce((e,t)=>e+t,0)}`).join(`; `)}. Ratings: ${Object.entries(e.ratings).map(([e,t])=>`${this.state.players[e]?.name??`fighter`} ${t.before} to ${t.after}`).join(`; `)}.`)}}renderFightSummary(){let e=this.state.snapshot;if(e===null)return;let t=this.state.simulation?.tick_rate??30,n=Math.floor(e.phase_ticks_remaining/t),r=`${Math.floor(n/60)}:${String(n%60).padStart(2,`0`)}`,i=e.fighters.map(e=>{let t=this.state.players[e.player_id];return`${t?.name??`Fighter`}, ELO ${t?.rating??`unknown`}, stamina ${Math.round(e.stamina)} of ${Math.round(e.maximum_stamina)}, guard ${Math.round(e.guard)}, poise ${Math.round(e.poise)}, conditioning ${Math.round(e.conditioning)}, ${e.warnings} warnings, ${e.knockdowns} knockdowns`}),a=e.fighters.find(e=>e.player_id===this.state.playerId),o=a?.is_downed===!0?a.get_up_prompt===null?`You are down. Count ${a.get_up_count}. Wait for your private rhythm instruction.`:`You are down. Count ${a.get_up_count}. Press ${a.get_up_prompt===`get_up_left`?`left`:`right`} now. Get-up progress ${a.get_up_meter} of ${a.get_up_required}.`:``;this.setText(this.fightSummary,`Round ${e.round_number}. ${e.phase.replace(`_`,` `)}. Clock ${r}. ${i.join(`. `)}. ${o}`.trim())}onRetry=()=>{if(this.reloadOnRetry){this.reloadPage();return}this.authorize()};bindPanels(){let e=(e,t)=>{let n=this.root.querySelector(e),r=this.root.querySelector(t);n.addEventListener(`click`,()=>{r.hidden=!r.hidden,n.setAttribute(`aria-expanded`,String(!r.hidden))})};e(`[data-controls]`,`[data-controls-panel]`),e(`[data-settings]`,`[data-settings-panel]`),this.root.querySelector(`[data-volume]`).addEventListener(`input`,e=>{this.settings.update({volume:Number(e.target.value)}),this.audio.setVolume()}),this.root.querySelector(`[data-haptics]`).addEventListener(`change`,e=>{this.settings.update({haptics:e.target.checked})}),this.root.querySelector(`[data-motion]`).addEventListener(`change`,e=>{let t=e.target.checked;this.settings.update({reducedMotion:t}),this.renderer?.setReducedMotion(t)}),this.root.querySelector(`[data-blood]`).addEventListener(`change`,e=>{let t=e.target.value;this.settings.update({blood:t}),this.renderer?.setBloodLevel(t)})}syncSettings(){let e=this.settings.current;this.root.querySelector(`[data-volume]`).value=String(e.volume),this.root.querySelector(`[data-haptics]`).checked=e.haptics,this.root.querySelector(`[data-motion]`).checked=e.reducedMotion,this.root.querySelector(`[data-blood]`).value=e.blood}fail(e){this.dispatch({type:`fatal`,code:e}),this.network?.dispose(),this.network=null,this.session?.destroy(),this.session=null,this.renderer?.destroy(),this.renderer=null,this.input.setActive(!1),this.input.reset(),this.renderState()}destroy(){this.destroyed||(this.destroyed=!0,this.generation+=1,this.abort.abort(),this.network?.dispose(),this.session?.destroy(),this.renderer?.destroy(),this.input.destroy(),this.audio.destroy(),this.settings.destroy(),this.retry.removeEventListener(`click`,this.onRetry),this.root.replaceChildren())}},$S={format:1,trajectories:{"jab:left":{frames:17,left:[[.1945,1.1232,-.2828],[.1581,1.1165,-.275],[.1956,1.1566,-.239],[.4141,1.3195,-.162],[.5571,1.4772,-.0837],[.5901,1.5148,-.0747],[.6048,1.5173,-.0811],[.6177,1.4845,-.0934],[.5144,1.3395,-.1735],[.3603,1.1932,-.2599],[.2555,1.1207,-.3056],[.212,1.1016,-.3185],[.1912,1.0978,-.3222],[.1804,1.0989,-.3232],[.1738,1.1006,-.3238],[.1695,1.1023,-.3245],[.1667,1.1041,-.3251]],right:[[.2394,1.1882,.0269],[.2398,1.1861,.0217],[.2495,1.182,.016],[.2797,1.1731,.0076],[.312,1.1635,-.0014],[.3323,1.1565,-.0086],[.3452,1.1514,-.0142],[.3461,1.1493,-.0175],[.3306,1.1516,-.0173],[.3048,1.1571,-.0146],[.2821,1.1628,-.0118],[.2674,1.1673,-.0098],[.2578,1.1708,-.0084],[.2516,1.1738,-.0076],[.2477,1.1766,-.0071],[.2451,1.1792,-.0068],[.2435,1.1818,-.0066]]},"jab:right":{frames:17,left:[[.1945,1.1232,-.2828],[.1895,1.1207,-.2881],[.1901,1.1152,-.2999],[.2012,1.1032,-.3267],[.2135,1.0904,-.3543],[.2205,1.0811,-.3722],[.2242,1.0743,-.3842],[.2229,1.0712,-.3871],[.2147,1.0735,-.3776],[.2019,1.0798,-.3602],[.1902,1.0864,-.3452],[.1818,1.0912,-.3361],[.1759,1.0949,-.3309],[.1718,1.0978,-.328],[.1688,1.1002,-.3266],[.1666,1.1022,-.326],[.165,1.1041,-.326]],right:[[.2394,1.1882,.0269],[.2099,1.182,.0377],[.2434,1.2174,.0399],[.4435,1.3583,.0093],[.6117,1.4742,-.0258],[.6859,1.5028,-.0581],[.7225,1.5061,-.0809],[.6912,1.4647,-.0835],[.5701,1.3666,-.0667],[.4145,1.2533,-.0486],[.3165,1.1927,-.0335],[.2787,1.1766,-.0236],[.2617,1.1737,-.0171],[.2534,1.175,-.0129],[.2485,1.177,-.0104],[.2455,1.1794,-.0088],[.2437,1.1819,-.0078]]},"straight:left":{frames:22,left:[[.1945,1.1232,-.2828],[.1709,1.12,-.2803],[.122,1.1168,-.2655],[.0826,1.1201,-.2459],[.2244,1.1936,-.2017],[.4621,1.3544,-.1222],[.5841,1.4851,-.053],[.6183,1.5281,-.0334],[.6357,1.5403,-.0298],[.64,1.5219,-.0388],[.6186,1.4637,-.0666],[.5674,1.3773,-.1106],[.4931,1.2801,-.1668],[.4004,1.1933,-.2273],[.3064,1.1323,-.2783],[.24,1.1041,-.3072],[.2067,1.099,-.3179],[.1884,1.1004,-.3225],[.1779,1.1035,-.3246],[.1714,1.1065,-.3259],[.1673,1.1092,-.3266],[.1647,1.1117,-.327]],right:[[.2086,1.2319,.0186],[.2087,1.2292,.014],[.2086,1.2266,.0102],[.2096,1.2239,.0075],[.2249,1.2185,.0131],[.251,1.2109,.0262],[.2721,1.2045,.0373],[.2841,1.2001,.0421],[.2915,1.1969,.0438],[.295,1.1947,.0431],[.2943,1.1935,.0394],[.2889,1.1935,.0327],[.2789,1.1952,.0236],[.2647,1.1985,.013],[.2486,1.2029,.0029],[.2346,1.2076,-.0045],[.2247,1.2118,-.0088],[.218,1.2155,-.0113],[.2339,1.1991,-.0069],[.2398,1.1941,-.0058],[.2418,1.1938,-.0054],[.2423,1.1955,-.005]]},"straight:right":{frames:22,left:[[.1767,1.2295,-.0606],[.1757,1.2269,-.0643],[.1747,1.2245,-.0675],[.1748,1.2218,-.0719],[.1859,1.2154,-.0977],[.204,1.2049,-.144],[.2172,1.1946,-.1867],[.2239,1.1873,-.2128],[.2277,1.1822,-.2293],[.2294,1.1792,-.2368],[.2292,1.1788,-.2337],[.2266,1.181,-.2202],[.2212,1.1856,-.1983],[.2127,1.192,-.1712],[.2021,1.1989,-.1439],[.1922,1.205,-.1227],[.1849,1.21,-.1094],[.1798,1.2142,-.1011],[.1647,1.151,-.2394],[.1613,1.1268,-.2922],[.1608,1.1179,-.3136],[.1606,1.1154,-.3222]],right:[[.2394,1.1882,.0269],[.2221,1.1854,.031],[.1803,1.1827,.0502],[.1463,1.1862,.0703],[.2623,1.2519,.0409],[.4993,1.3799,-.039],[.6694,1.4562,-.1517],[.7308,1.4662,-.237],[.7515,1.4598,-.2925],[.743,1.4409,-.3118],[.7012,1.4061,-.2866],[.6286,1.3596,-.2304],[.5322,1.3054,-.1663],[.4277,1.2497,-.1119],[.3388,1.205,-.0726],[.2872,1.1829,-.0477],[.2658,1.1793,-.0327],[.2555,1.1811,-.0229],[.2501,1.1845,-.0166],[.2468,1.1879,-.0125],[.2449,1.1912,-.0098],[.2437,1.1943,-.0079]]},"hook:left":{frames:26,left:[[.1945,1.1232,-.2828],[.1788,1.1203,-.2836],[.1461,1.117,-.2758],[.1174,1.1317,-.2647],[.1695,1.2262,-.2786],[.2939,1.3785,-.3358],[.3952,1.4806,-.3856],[.4857,1.5154,-.3212],[.56,1.5461,-.1308],[.5218,1.5302,7e-4],[.5048,1.5241,.0371],[.5018,1.517,.0459],[.5068,1.4987,.0439],[.517,1.4655,.0339],[.5073,1.3997,-.0057],[.4556,1.3155,-.0761],[.3877,1.2385,-.151],[.3119,1.1765,-.2211],[.243,1.1349,-.2755],[.1992,1.1159,-.3056],[.1801,1.112,-.3171],[.171,1.1124,-.3221],[.1664,1.1114,-.3244],[.1638,1.1084,-.3256],[.1622,1.1054,-.3261],[.1612,1.1025,-.3261]],right:[[.1936,1.2576,.0106],[.1935,1.255,.0063],[.1933,1.2524,.0026],[.1926,1.2503,.0019],[.1888,1.2499,.0127],[.1804,1.2511,.0315],[.1707,1.2524,.0466],[.1639,1.253,.0542],[.1594,1.2531,.0579],[.1565,1.2531,.0595],[.1546,1.2531,.0599],[.1541,1.2531,.0589],[.1558,1.253,.0556],[.1595,1.2526,.0498],[.1646,1.2521,.0415],[.1703,1.2516,.0312],[.1759,1.2513,.0197],[.1805,1.2513,.008],[.1839,1.2518,-.0023],[.186,1.2529,-.0098],[.1871,1.2545,-.0144],[.1878,1.2565,-.017],[.219,1.2213,-.0071],[.232,1.2041,-.0042],[.2377,1.1955,-.003],[.2404,1.1905,-.0022]]},"hook:right":{frames:26,left:[[.162,1.2566,-.0606],[.161,1.2541,-.0641],[.16,1.2516,-.0671],[.1586,1.2493,-.0714],[.1534,1.2469,-.0839],[.1436,1.2449,-.1018],[.1333,1.2434,-.1163],[.1265,1.2421,-.1249],[.1222,1.2411,-.1302],[.1195,1.2404,-.1337],[.1178,1.24,-.1362],[.1175,1.24,-.1373],[.1193,1.2402,-.1364],[.1231,1.2407,-.1334],[.1284,1.2415,-.1284],[.1344,1.2427,-.1216],[.1403,1.2443,-.1137],[.1454,1.2462,-.1056],[.1492,1.2484,-.0983],[.1516,1.2508,-.093],[.1529,1.2533,-.0899],[.1535,1.2558,-.0881],[.1514,1.1727,-.2341],[.1541,1.1351,-.289],[.1567,1.1171,-.3113],[.1581,1.1077,-.3202]],right:[[.2394,1.1882,.0269],[.2296,1.1857,.027],[.2028,1.1829,.0376],[.1904,1.1977,.0717],[.3039,1.2794,.1656],[.5689,1.398,.2545],[.7545,1.4795,.2642],[.7723,1.4981,.1938],[.7052,1.5259,.0815],[.5854,1.5454,-.0077],[.5405,1.5562,-.0362],[.5196,1.5512,-.0446],[.4969,1.525,-.0506],[.467,1.4806,-.0587],[.4302,1.4232,-.067],[.3882,1.3595,-.0709],[.344,1.2982,-.0658],[.3026,1.2476,-.0521],[.27,1.2129,-.0351],[.2518,1.197,-.0222],[.2457,1.1942,-.015],[.2435,1.1954,-.0107],[.2427,1.1949,-.008],[.2424,1.1926,-.006],[.2424,1.1903,-.0045],[.2425,1.1882,-.0032]]},"uppercut:left":{frames:27,left:[[.1945,1.1232,-.2828],[.1813,1.1066,-.2847],[.1544,1.063,-.2792],[.1176,.998,-.2681],[.0782,.9239,-.2543],[.0728,.8351,-.2055],[.1247,.7671,-.1122],[.2517,.9255,-.0446],[.4255,1.2626,-.0216],[.5208,1.5125,-.0181],[.5155,1.5669,-.0349],[.5183,1.5775,-.0415],[.5249,1.5653,-.0484],[.5203,1.5271,-.0678],[.4843,1.4632,-.1049],[.4356,1.3922,-.1463],[.3773,1.319,-.1904],[.3141,1.2501,-.2337],[.2541,1.1923,-.2718],[.2072,1.1511,-.2999],[.1822,1.1313,-.3142],[.1713,1.1239,-.3204],[.1661,1.1184,-.3234],[.1635,1.113,-.3249],[.162,1.1084,-.3256],[.1611,1.1045,-.3258],[.1606,1.1011,-.3256]],right:[[.2279,1.1235,.0349],[.2288,1.1159,.0296],[.2306,1.0964,.0246],[.2333,1.0652,.0196],[.2365,1.0261,.0148],[.2384,.9914,.0172],[.236,.9802,.0327],[.2253,1.0251,.0574],[.2111,1.0865,.0791],[.2007,1.126,.0917],[.1934,1.1518,.099],[.1893,1.1679,.1021],[.1886,1.1765,.101],[.191,1.1793,.0957],[.1958,1.1775,.0869],[.2019,1.1726,.0753],[.2084,1.1655,.0619],[.2144,1.1576,.0477],[.2194,1.1498,.0343],[.2231,1.1435,.0231],[.2254,1.1398,.0156],[.2268,1.1382,.0112],[.2278,1.1352,.0087],[.2351,1.169,.0031],[.2388,1.1814,4e-4],[.2407,1.1851,-6e-4],[.2417,1.1853,-5e-4]]},"uppercut:right":{frames:27,left:[[.1848,1.0565,-.278],[.1801,1.0481,-.2832],[.1766,1.027,-.2881],[.1743,.9932,-.2926],[.1725,.9509,-.2968],[.1623,.9137,-.3053],[.1355,.902,-.3202],[.0963,.9503,-.3349],[.06,1.0157,-.3431],[.0365,1.0576,-.3466],[.0214,1.0845,-.3484],[.0135,1.1011,-.3497],[.0134,1.1095,-.3506],[.0205,1.1113,-.3513],[.0337,1.1082,-.3513],[.0512,1.1015,-.3502],[.0712,1.0924,-.3474],[.0917,1.0821,-.3432],[.1105,1.0721,-.3381],[.1257,1.0636,-.333],[.1357,1.0581,-.3293],[.1417,1.055,-.3269],[.1452,1.0507,-.3253],[.1522,1.0847,-.3267],[.1559,1.0966,-.327],[.1577,1.0996,-.3268],[.1587,1.099,-.3263]],right:[[.2394,1.1882,.0269],[.232,1.1726,.0262],[.2109,1.1316,.0348],[.1811,1.0707,.0498],[.1492,1.0009,.0662],[.1413,.9122,.0882],[.1937,.8296,.1106],[.3281,.9633,.1017],[.4795,1.2613,.0522],[.5563,1.4948,.0175],[.5741,1.5673,.01],[.5724,1.5794,.0087],[.5534,1.5608,.0066],[.5201,1.5247,.0017],[.4769,1.4777,-.0056],[.4283,1.4237,-.0137],[.378,1.3663,-.0204],[.3297,1.3103,-.0236],[.2881,1.2619,-.0224],[.2586,1.2272,-.0182],[.2457,1.2108,-.0139],[.2421,1.2054,-.0105],[.2412,1.2011,-.008],[.2413,1.1966,-.0061],[.2416,1.193,-.0046],[.2419,1.1899,-.0033],[.2423,1.1873,-.0021]]}}},eC={broadcast:{position:[0,1.88,7.15],lookAt:[0,1.12,0]},side:{position:[7.4,1.6,0],lookAt:[0,1.1,0]},top:{position:[.01,8.5,.01],lookAt:[0,0,0]},ringside:{position:[1.6,1.5,4.1],lookAt:[.2,1.25,0]}},tC=[[`hips`,`spine`],[`spine`,`head`],[`chest`,`shoulderL`],[`shoulderL`,`elbowL`],[`elbowL`,`gloveL`],[`chest`,`shoulderR`],[`shoulderR`,`elbowR`],[`elbowR`,`gloveR`],[`hips`,`hipL`],[`hipL`,`kneeL`],[`kneeL`,`ankleL`],[`hips`,`hipR`],[`hipR`,`kneeR`],[`kneeR`,`ankleR`]],nC=class{root;renderer=null;replay=null;raf=0;playing=!1;speed=1;virtualTick=0;carry=0;latencyMs=0;pendingQueue=[];destroyed=!1;overlays={skeleton:!1,hurtbox:!1,hitbox:!1};trajectoryLine=null;skeletonLines=[];hurtboxMeshes=[];hitboxMeshes=[];statusEl;metricsEl;canvas;constructor(e){this.root=e,e.innerHTML=`
+ }`},Ny=class extends xy{constructor(){super(),this.isOutputPass=!0,this.uniforms=vm.clone(My.uniforms),this.material=new Sm({name:My.name,uniforms:this.uniforms,vertexShader:My.vertexShader,fragmentShader:My.fragmentShader}),this._fsQuad=new wy(this.material),this._outputColorSpace=null,this._toneMapping=null}render(e,t,n){this.uniforms.tDiffuse.value=n.texture,this.uniforms.toneMappingExposure.value=e.toneMappingExposure,(this._outputColorSpace!==e.outputColorSpace||this._toneMapping!==e.toneMapping)&&(this._outputColorSpace=e.outputColorSpace,this._toneMapping=e.toneMapping,this.material.defines={},iu.getTransfer(this._outputColorSpace)===`srgb`&&(this.material.defines.SRGB_TRANSFER=``),this._toneMapping===1?this.material.defines.LINEAR_TONE_MAPPING=``:this._toneMapping===2?this.material.defines.REINHARD_TONE_MAPPING=``:this._toneMapping===3?this.material.defines.CINEON_TONE_MAPPING=``:this._toneMapping===4?this.material.defines.ACES_FILMIC_TONE_MAPPING=``:this._toneMapping===6?this.material.defines.AGX_TONE_MAPPING=``:this._toneMapping===7?this.material.defines.NEUTRAL_TONE_MAPPING=``:this._toneMapping===5&&(this.material.defines.CUSTOM_TONE_MAPPING=``),this.material.needsUpdate=!0),this.renderToScreen===!0?(e.setRenderTarget(null),this._fsQuad.render(e)):(e.setRenderTarget(t),this.clear&&e.clear(e.autoClearColor,e.autoClearDepth,e.autoClearStencil),this._fsQuad.render(e))}dispose(){this.material.dispose(),this._fsQuad.dispose()}},Py={format:1,tick_rate:30,ring:{half_width:500,half_height:330,fighter_radius:38},limits:{max_stamina:1e3,max_conditioning:1e3,max_guard:700,max_poise:600},action_buffer_ticks:6,hitstop_ms:{hit:78,block:45},fatigue_scaling:{startup_formula:`max(2, startup * 100 // fatigue - lead_jab_bonus)`,recovery_formula:`max(4, recovery * 100 // fatigue)`,lead_jab_bonus:1,rear_straight_impact_bonus:8},punches:{jab:{startup:4,active:2,recovery:7,reach:150,lateral_arc:42,impact:34,stamina_cost:42,whiff_cost:18,guard_damage:44,poise_damage:35,combo_window:7,startup_vulnerability:2,recovery_vulnerability:3},straight:{startup:6,active:2,recovery:10,reach:168,lateral_arc:38,impact:52,stamina_cost:65,whiff_cost:28,guard_damage:66,poise_damage:58,combo_window:8,startup_vulnerability:4,recovery_vulnerability:5},hook:{startup:7,active:3,recovery:12,reach:126,lateral_arc:92,impact:64,stamina_cost:78,whiff_cost:36,guard_damage:82,poise_damage:72,combo_window:9,startup_vulnerability:5,recovery_vulnerability:7},uppercut:{startup:8,active:2,recovery:13,reach:108,lateral_arc:54,impact:72,stamina_cost:88,whiff_cost:44,guard_damage:88,poise_damage:84,combo_window:10,startup_vulnerability:6,recovery_vulnerability:8}},variants:{body:{startup_add:1,reach_min:80,reach_sub:14,lateral_arc_add:8,impact_mul_num:92,impact_mul_den:100,stamina_cost_add:4,whiff_cost_add:3,poise_damage_mul_num:72,poise_damage_mul_den:100},power:{startup_add:2,active_add:1,recovery_add:3,reach_add:5,impact_mul_num:152,impact_mul_den:100,stamina_cost_mul_num:155,stamina_cost_mul_den:100,whiff_cost_mul_num:175,whiff_cost_mul_den:100,guard_damage_mul_num:145,guard_damage_mul_den:100,poise_damage_mul_num:145,poise_damage_mul_den:100,startup_vulnerability_add:2,recovery_vulnerability_add:2}},hurtboxes:{head:{radius:.13,length:.16,joint:`head`,offset_y:.12},torso:{radius:.21,length:.34,joint:`chest`,offset_y:.16}},hitbox:{glove_radius:.11}},Fy=Py.punches,Iy=Py.variants;Py.tick_rate,Py.action_buffer_ticks,Py.hitstop_ms;var Ly=Py.hurtboxes;Py.hitbox.glove_radius,Py.fatigue_scaling;function Ry(e,t,n){let r=Fy[e],i=r.startup,a=r.active,o=r.recovery,s=r.reach,c=r.lateral_arc;if(t===`body`){let e=Iy.body;i+=e.startup_add??0,o+=e.recovery_add??0,s=Math.max(e.reach_min??0,s-(e.reach_sub??0)),c+=e.lateral_arc_add??0}if(n===`power`){let e=Iy.power;i+=e.startup_add??0,a+=e.active_add??0,o+=e.recovery_add??0,s+=e.reach_add??0}return{startup:i,active:a,recovery:o,reach:s,lateralArc:c}}function zy(e){return e.startup+e.active+e.recovery}var By=.3,Vy=.3;function Hy(e,t,n,r){let i=new jp(e,t,6,14);r.push(i);let a=new Q(i,n);return a.castShadow=!0,a}function Uy(e,t,n,r=18,i=14){let a=new dm(e,r,i);n.push(a);let o=new Q(a,t);return o.castShadow=!0,o}function Wy(e,t,n,r,i){let a=new Ap(e,t,n);i.push(a);let o=new Q(a,r);return o.castShadow=!0,o}var Gy=null;function Ky(){if(Gy!==null)return Gy;let e=document.createElement(`canvas`);e.width=128,e.height=128;let t=e.getContext(`2d`);if(t!==null){t.fillStyle=`#808080`,t.fillRect(0,0,128,128);let e=55444333;for(let n=0;n<2600;n+=1){e=e*16807%2147483647;let n=e%128;e=e*16807%2147483647;let r=e%128,i=108+e%40;t.fillStyle=`rgb(${i},${i},${i})`,t.fillRect(n,r,1+e%2,1)}}return Gy=new Ep(e),Gy.wrapS=As,Gy.wrapT=As,Gy.repeat.set(3,3),Gy}function qy(e){let t=[],n=new wm({color:e.skin,roughness:.58,metalness:.02,clearcoat:.25,clearcoatRoughness:.6,sheen:.3,sheenColor:new Z(14264716),sheenRoughness:.55,bumpMap:Ky(),bumpScale:.0015}),r=new Cm({color:e.skinShadow,roughness:.58,metalness:.02}),i=new Cm({color:e.trunks,roughness:.34,metalness:.05}),a=new Cm({color:e.trunkTrim,roughness:.4,metalness:.1}),o=new Cm({color:e.glove,roughness:.28,metalness:.04}),s=new Cm({color:e.gloveTrim,roughness:.45}),c=new Cm({color:e.hair,roughness:.72}),l=new Cm({color:e.shoe,roughness:.5}),u=new Cm({color:4856918,roughness:.9,transparent:!0,opacity:0}),d=u.clone(),f=u.clone(),p=new Cm({color:8326420,roughness:.6,transparent:!0,opacity:0,emissive:2753286}),m=p.clone(),h=new Cm({color:7026034,roughness:.75,transparent:!0,opacity:0}),g=h.clone(),_=h.clone(),v=h.clone(),y=new Cm({color:9047830,roughness:.35,transparent:!0,opacity:0,emissive:3146762}),b=y.clone(),x=y.clone(),S=y.clone(),C=new Cm({color:6038608,roughness:.85,transparent:!0,opacity:0}),w=C.clone(),T=y.clone(),E=[n,r,i,a,o,s,c,l,u,d,f,p,m,h,g,_,v,y,b,x,S,C,w,T],D=new Ju;D.name=`boxer`;let O=new Ju;O.name=`hips`,O.position.y=.98,D.add(O);let ee=Hy(.145,.1,i,t);ee.scale.set(1.18,1,.88),ee.position.y=.02,O.add(ee);let k=new Q(new Np(.168,.172,.035,18),a);t.push(k.geometry),k.scale.set(1.05,1,.82),k.position.y=.1,k.castShadow=!0,O.add(k);let te=new Ju;te.name=`spine`,te.position.y=.1,O.add(te);let ne=new Ju;ne.name=`chest`,te.add(ne);let re=new cm([[.138,-.13],[.146,-.07],[.128,0],[.148,.06],[.172,.14],[.19,.22],[.186,.3],[.152,.36],[.102,.42],[.062,.46]].map(([e,t])=>new Y(e,t)),24);t.push(re);let ie=new Q(re,n);ie.scale.set(1.28,1,.8),ie.castShadow=!0,ne.add(ie);let ae=Uy(.062,n,t);ae.scale.set(1.05,.62,.42),ae.position.set(.085,.26,.125),ne.add(ae);let oe=ae.clone();oe.position.x=-.085,ne.add(oe);let se=Uy(.075,n,t);se.scale.set(1.05,1.1,.95),se.position.set(.215,.315,0),ne.add(se);let A=se.clone();A.position.x=-.215,ne.add(A);let ce=[ae,oe,se,A],le=Uy(.1,f,t);le.scale.set(1.05,1.35,.55),le.position.set(.02,.05,.1),le.castShadow=!1,ne.add(le);let ue=Wy(.13,.06,.1,n,t);ue.position.set(.115,.4,-.02),ue.rotation.z=-.5,ne.add(ue);let de=Wy(.13,.06,.1,n,t);de.position.set(-.115,.4,-.02),de.rotation.z=.5,ne.add(de),ce.push(ue,de);let j=new Ju;j.name=`head`,j.position.y=.44,ne.add(j);let fe=new Q(new Np(.052,.062,.11,12),r);t.push(fe.geometry),fe.position.y=.02,fe.castShadow=!0,j.add(fe);let pe=new cm([[.05,.02],[.076,.05],[.096,.08],[.106,.13],[.102,.18],[.072,.23],[.02,.26]].map(([e,t])=>new Y(e,t)),22);t.push(pe);let me=new Q(pe,n);me.scale.set(.92,1.05,.95),me.castShadow=!0,j.add(me);let he=Uy(.085,n,t,16,12);he.scale.set(.85,.72,.9),he.position.set(0,.075,.028),j.add(he);let ge=Wy(.032,.045,.035,r,t);ge.position.set(0,.12,.112),j.add(ge);let _e=Wy(.022,.05,.02,n,t);_e.position.set(0,.16,.104),j.add(_e);let ve=Wy(.045,.012,.012,r,t);ve.position.set(0,.062,.104),j.add(ve);let ye=Uy(.04,n,t,12,10);ye.scale.set(.9,.75,.8),ye.position.set(0,.035,.07),j.add(ye);let be=Uy(.028,n,t,10,8);be.scale.set(1.1,.7,.8),be.position.set(.07,.11,.075),j.add(be);let xe=be.clone();xe.position.x=-.07,j.add(xe);let Se=Wy(.052,.016,.02,r,t);Se.position.set(.048,.165,.1),j.add(Se);let Ce=Se.clone();Ce.position.x=-.048,j.add(Ce);let we=Uy(.026,r,t,10,8);we.scale.set(.5,1,.75),we.position.set(.104,.125,.01),j.add(we);let M=we.clone();M.position.x=-.104,j.add(M);let N=new Cm({color:1315344,roughness:.35});E.push(N);let P=Uy(.016,N,t,8,8);P.position.set(.045,.145,.102),j.add(P);let Te=P.clone();Te.position.x=-.045,j.add(Te);let Ee=Uy(.118,c,t,20,14);Ee.scale.set(.94,.98,1),Ee.position.set(0,.165,-.018),j.add(Ee);let F=Uy(.112,c,t,18,12);F.scale.set(.9,.58,.92),F.position.set(0,.2,.005),j.add(F);let De=Uy(.042,u,t,12,10);De.scale.set(1,.72,.5),De.position.set(.05,.15,.085),De.castShadow=!1,j.add(De);let I=Uy(.042,d,t,12,10);I.scale.set(1,.72,.5),I.position.set(-.05,.15,.085),I.castShadow=!1,j.add(I);let Oe=Wy(.05,.008,.01,p,t);Oe.position.set(.05,.178,.104),Oe.castShadow=!1,j.add(Oe);let ke=Wy(.05,.008,.01,m,t);ke.position.set(-.05,.178,.104),ke.castShadow=!1,j.add(ke);let Ae=Uy(.035,h,t,12,10);Ae.position.set(.052,.155,.088),Ae.castShadow=!1,j.add(Ae);let L=Uy(.035,g,t,12,10);L.position.set(-.052,.155,.088),L.castShadow=!1,j.add(L);let je=Uy(.028,_,t,10,8);je.position.set(.068,.095,.075),je.castShadow=!1,j.add(je);let R=Uy(.028,v,t,10,8);R.position.set(-.068,.095,.075),R.castShadow=!1,j.add(R);let Me=Wy(.014,.1,.006,y,t);Me.position.set(.052,.115,.106),Me.castShadow=!1,j.add(Me);let Ne=Wy(.014,.1,.006,b,t);Ne.position.set(-.052,.115,.106),Ne.castShadow=!1,j.add(Ne);let Pe=Wy(.011,.07,.006,x,t);Pe.position.set(.008,.075,.118),Pe.castShadow=!1,j.add(Pe);let Fe=Wy(.03,.012,.006,S,t);Fe.position.set(.02,.052,.104),Fe.castShadow=!1,j.add(Fe);let Ie=Uy(.09,C,t,12,10);Ie.scale.set(.5,1.2,.7),Ie.position.set(.16,.08,.02),Ie.castShadow=!1,ne.add(Ie);let Le=Uy(.09,w,t,12,10);Le.scale.set(.5,1.2,.7),Le.position.set(-.16,.08,.02),Le.castShadow=!1,ne.add(Le);let Re=Wy(.05,.24,.008,T,t);Re.position.set(.03,.08,.155),Re.rotation.z=.12,Re.castShadow=!1,ne.add(Re);let ze=e=>{let r=new Ju;r.name=e===1?`shoulderL`:`shoulderR`,r.position.set(.215*e,.315,0),ne.add(r);let i=Hy(.056,By-.12,n,t);i.scale.set(1.16,1,1.16),i.position.y=-.3/2,r.add(i);let a=new Ju;a.name=e===1?`elbowL`:`elbowR`,a.position.y=-.3,r.add(a);let c=Uy(.048,n,t,12,10);a.add(c);let l=Hy(.048,Vy-.13,n,t);l.scale.set(1.1,1,.92),l.position.y=-.13999999999999999,a.add(l);let u=new Ju;u.name=e===1?`gloveL`:`gloveR`,u.position.y=-.3,a.add(u);let d=new Q(new Np(.055,.062,.07,12),s);t.push(d.geometry),d.position.y=.01,d.castShadow=!0,u.add(d);let f=Uy(.088,o,t,18,14);f.scale.set(1,1.12,1.38),f.position.set(0,-.05,.02),u.add(f);let p=Uy(.032,o,t,10,8);p.position.set(-.05*e,-.045,.075),u.add(p);let m=Wy(.05,.008,.012,s,t);return m.position.set(0,-.028,.1),u.add(m),{shoulder:r,elbow:a,glove:u,gloveMesh:f}},z=ze(1),Be=ze(-1),Ve=e=>{let r=new Ju;r.name=e===1?`hipL`:`hipR`,r.position.set(.105*e,-.02,0),O.add(r);let o=Hy(.078,.24,n,t);o.scale.set(1.14,1,1.08),o.position.y=-.21,r.add(o);let s=Hy(.092,.16,i,t);s.position.y=-.14,r.add(s);let c=new Q(new Np(.096,.1,.03,14),a);t.push(c.geometry),c.position.y=-.24,c.castShadow=!0,r.add(c);let u=new Ju;u.name=e===1?`kneeL`:`kneeR`,u.position.y=-.44,r.add(u);let d=Uy(.06,n,t,12,10);d.scale.set(.95,1.05,1),u.add(d);let f=Hy(.058,.24,n,t);f.scale.set(1.05,1,1.12),f.position.y=-.21,u.add(f);let p=new Ju;p.name=e===1?`ankleL`:`ankleR`,p.position.y=-.44,u.add(p);let m=Wy(.1,.075,.3,l,t);m.position.set(0,-.035,.06),p.add(m);let h=Uy(.05,l,t,10,8);h.scale.set(.95,.62,1),h.position.set(0,-.055,.2),p.add(h);let g=new Q(new Np(.052,.058,.08,10),l);return t.push(g.geometry),g.position.y=.01,g.castShadow=!0,p.add(g),{hip:r,knee:u,ankle:p}},He=Ve(1),Ue=Ve(-1);return{root:D,hips:O,spine:te,chest:ne,head:j,shoulderL:z.shoulder,elbowL:z.elbow,gloveL:z.glove,shoulderR:Be.shoulder,elbowR:Be.elbow,gloveR:Be.glove,hipL:He.hip,kneeL:He.knee,ankleL:He.ankle,hipR:Ue.hip,kneeR:Ue.knee,ankleR:Ue.ankle,chestMesh:ie,headMesh:me,browL:Se,browR:Ce,bruiseL:De,bruiseR:I,bodyBruise:le,cutL:Oe,cutR:ke,swellL:Ae,swellR:L,cheekL:je,cheekR:R,streakL:Me,streakR:Ne,noseStreak:Pe,mouthBlood:Fe,ribL:Ie,ribR:Le,bodyStreak:Re,gloveLMesh:z.gloveMesh,gloveRMesh:Be.gloveMesh,gloveLMaterial:o,gloveRMaterial:o,gloveBaseColor:new Z(e.glove),skinMaterial:n,chestDetails:ce,materials:E,geometries:t}}var Jy=new X,Yy=new X,Xy=new X,Zy=new X,Qy=new X,$y=new X,eb=new X(0,-1,0),tb=new X;function nb(e,t,n,r){let i=By,a=.36;Jy.copy(e),Yy.copy(t),Xy.subVectors(Yy,Jy);let o=Yl.clamp(Xy.length(),.12,.6449999999999999);Xy.normalize();let s=(i*i-a*a+o*o)/(2*o),c=Math.sqrt(Math.max(1e-4,i*i-s*s));$y.copy(n).normalize(),Zy.copy($y).addScaledVector(Xy,-$y.dot(Xy)),Zy.lengthSq()<1e-4&&Zy.set(0,-1,0).addScaledVector(Xy,Xy.y),Zy.normalize(),Qy.copy(Jy).addScaledVector(Xy,s).addScaledVector(Zy,c),r.elbowWorld.copy(Qy),tb.copy(Jy).addScaledVector(Xy,o),r.targetWorld.copy(tb)}var rb=new X,ib=new Xl,ab=new Xl;function ob(e,t,n,r=0){if(rb.subVectors(n,t),rb.lengthSq()<1e-6)return;if(rb.normalize(),ab.setFromUnitVectors(eb,rb),r!==0){let e=new Xl().setFromAxisAngle(rb,r);ab.premultiply(e)}let i=e.parent;if(i===null){e.quaternion.copy(ab);return}i.getWorldQuaternion(ib),e.quaternion.copy(ib.invert().multiply(ab))}function sb(){let e=qy({skin:13081462,skinShadow:11041884,trunks:1316380,trunkTrim:1316380,glove:13081462,gloveTrim:15264236,hair:2827040,shoe:1052948});for(let t of e.chestDetails)t.visible=!1;let t=new Cm({color:12568015,roughness:.72}),n=new Cm({color:1316380,roughness:.7}),r=new Q(new cm([[.155,-.2],[.16,-.13],[.158,-.07],[.148,0],[.162,.06],[.186,.14],[.204,.22],[.2,.3],[.164,.36],[.11,.42],[.066,.46]].map(([e,t])=>new Y(e,t)),24),t);r.scale.set(1.28,1,.84),r.castShadow=!0,e.chest.add(r);let i=new Q(new Np(.07,.09,.05,12),t);i.position.y=.44,e.chest.add(i);let a=new Q(new Ap(.07,.025,.02),n);a.position.set(0,.42,.1),e.chest.add(a);let o=[r.geometry,i.geometry,a.geometry];for(let n of[e.shoulderL,e.shoulderR]){let e=new Q(new jp(.066,.24,4,10),t);e.position.y=-.17,e.castShadow=!0,n.add(e),o.push(e.geometry)}for(let t of[e.hipL,e.hipR]){let e=new Q(new jp(.088,.26,4,10),n);e.position.y=-.21,e.castShadow=!0,t.add(e),o.push(e.geometry)}for(let t of[e.kneeL,e.kneeR]){let e=new Q(new jp(.066,.26,4,10),n);e.position.y=-.21,e.castShadow=!0,t.add(e),o.push(e.geometry)}return e.geometries.push(...o),e.materials.push(t,n),e}function cb(e){for(let t of e.geometries)t.dispose();for(let t of e.materials)t.dispose()}var lb=new X(.08,.29,.25),ub=new X(-.07,.3,.21),db=new X(.12,.02,.26),fb=new X(-.1,.04,.21),pb=new X(.14,.14,.32),mb=new X(-.09,.22,.21),hb=.33,gb=-.02;function _b(e,t,n,r){let i=n,a=Math.min(.99,n+r);switch(e){case`jab`:return{windup:xb(0,i*.5,t)*(1-xb(i*.5,i,t)),extend:xb(i*.3,i,t)*(1-xb(a,a+(1-a)*.55,t))};case`straight`:return{windup:xb(0,i*.6,t)*(1-xb(i*.6,i,t)),extend:xb(i*.45,i,t)*(1-xb(a,a+(1-a)*.7,t))};case`hook`:return{windup:xb(0,i*.7,t)*(1-xb(i*.7,i,t)),extend:xb(i*.35,i*.85,t)*(1-xb(a,a+(1-a)*.75,t))};case`uppercut`:return{windup:xb(0,i*.75,t)*(1-xb(i*.7,i,t)),extend:xb(i*.5,i,t)*(1-xb(a,a+(1-a)*.75,t))}}}function vb(e,t,n){let r=n===`power`?.12:0,i=t===`head`?hb:gb;switch(e){case`jab`:return new X(.06,i,.56+r*.5);case`straight`:return new X(-.04,i,.62+r*.5);case`hook`:return new X(-.3,i+.02,.48+r*.4);case`uppercut`:return new X(0,i+.1,.46+r*.4)}}var yb=(e,t,n,r)=>e+(t-e)*(1-Math.exp(-n*r)),bb=(e,t,n,r)=>e+(((t-e+Math.PI)%(Math.PI*2)+Math.PI*2)%(Math.PI*2)-Math.PI)*(1-Math.exp(-n*r)),xb=(e,t,n)=>{let r=Math.max(0,Math.min(1,(n-e)/(t-e)));return r*r*(3-2*r)},Sb=new X,Cb=new X,wb=new X,Tb={elbowWorld:new X,targetWorld:new X},Eb=new X,Db=new X,Ob=new X,kb=new X,Ab=new X,jb=new X,Mb=new X,Nb=new X,Pb=new Xl,Fb={full:1,reduced:.45,off:0},Ib=new Z(6031886),Lb=class{rig;mapping;yaw=0;punchT=1;punchKind=null;punchHand=`left`;punchTargetKind=`head`;punchPower=`normal`;actionId=null;actionStartTick=0;actionTotalTicks=1;actionStartupFrac=.33;actionActiveFrac=.1;completedActionId=null;opponentDrop=0;frozenTicks=0;lastAgeTicks=0;predictedId=null;predictedAtSeconds=-1;predictedTotalTicks=1;predictionExpiredTicks=0;downAmount=0;rootX=null;rootZ=0;reactionT=1;reactionDirection=1;reactionPower=0;walkPhase=0;gloveLCurrent=new X().copy(pb);gloveRCurrent=new X().copy(mb);hipsRoll=0;spinePitch=0;spineTwist=0;drop=0;kinStep=0;kinHipYaw=0;kinDrop=0;kinHeelR=0;kinPivotL=0;kinHeadTuck=0;hitstop=0;prevVelocityX=0;prevVelocityY=0;inertiaPitch=0;inertiaRoll=0;prevDown=0;landingSpring=0;landingVelocity=0;constructor(e,t){this.rig=e,this.mapping=t}get landingOffset(){return this.landingSpring}impact(e){(e.amount>this.reactionPower||this.reactionT>.4)&&(this.reactionT=0,this.reactionDirection=e.direction,this.reactionPower=Math.max(this.reactionPower*.4,e.amount))}landedHit(e){this.hitstop=Math.max(this.hitstop,e?.045:.078)}predict(e,t,n){if(e.kind!==`punch`||e.id===void 0)return;this.predictedId=e.id,this.predictedAtSeconds=t,this.predictionExpiredTicks=0,this.punchKind=e.class,this.punchHand=e.hand,this.punchTargetKind=e.target,this.punchPower=e.power;let r=Ry(e.class,e.target,e.power);this.predictedTotalTicks=zy(r),this.actionStartupFrac=r.startup/this.predictedTotalTicks,this.actionActiveFrac=r.active/this.predictedTotalTicks,(this.actionId===null||this.punchT>.45)&&(this.punchT=0,this.frozenTicks=0,this.lastAgeTicks=0)}beginAuthoritative(e,t,n){let r=this.predictedId!==null&&e.action_id===this.predictedId;if(this.actionId=e.action_id,this.actionStartTick=e.action_start_tick,this.actionTotalTicks=Math.max(1,e.action_startup_ticks+e.action_active_ticks+e.action_recovery_ticks),this.actionStartupFrac=e.action_startup_ticks/this.actionTotalTicks,this.actionActiveFrac=e.action_active_ticks/this.actionTotalTicks,this.punchKind=e.action,this.punchHand=e.action_hand??(e.stance===`orthodox`?`left`:`right`),this.punchTargetKind=e.action_target??`head`,this.punchPower=e.action_power??`normal`,r){let r=(n-this.predictedAtSeconds)*30,i=t-e.action_start_tick,a=r-i;Math.abs(a)>1&&(this.punchT=Math.max(0,Math.min(1,i/this.actionTotalTicks)),this.frozenTicks=0),this.predictedId=null}else this.punchT=Math.max(0,Math.min(1,(t-e.action_start_tick)/this.actionTotalTicks)),this.frozenTicks=0,this.lastAgeTicks=this.punchT*this.actionTotalTicks}update(e,t,n,r,i,a=`full`,o=0){let s=this.rig,c=e.stance===`orthodox`?1:-1,l=this.mapping.x(e.x),u=this.mapping.z(e.y);this.rootX===null&&(this.rootX=l,this.rootZ=u);let d=.05,f=Yl.clamp(l-this.rootX,-.05,d),p=Yl.clamp(u-this.rootZ,-.05,d);this.rootX+=f,this.rootZ+=p;let m=Math.atan2(this.mapping.x(t.x)-l,(this.mapping.z(t.y)-u)*.45);this.yaw=bb(this.yaw,m,7,n),e.action_id!==null&&e.action_id!==this.actionId&&e.action_id!==this.completedActionId&&this.beginAuthoritative(e,o,r),e.action_id===null&&(this.actionId=null,this.completedActionId=null),this.predictedId!==null&&(this.predictionExpiredTicks+=n*30,this.predictionExpiredTicks>10&&(this.predictedId=null,this.punchT=1));let h=this.predictedId!==null&&this.actionId===null,g=0,_=1;h?(g=(r-this.predictedAtSeconds)*30-this.frozenTicks,_=this.predictedTotalTicks):this.actionId!==null&&(g=o-this.actionStartTick-this.frozenTicks,_=this.actionTotalTicks),this.hitstop>0&&(this.hitstop=Math.max(0,this.hitstop-n),this.frozenTicks+=n*30),h||this.actionId!==null?(this.punchT=Math.max(0,Math.min(1,g/_)),this.punchT>=1&&this.actionId!==null&&(this.completedActionId=this.actionId,this.actionId=null)):this.punchT=1;let v=1-e.stamina/Math.max(1,e.maximum_stamina),y=Math.hypot(e.velocity_x,e.velocity_y)*.006,b=Math.min(1,y*.55);this.walkPhase+=y*n*4.6;let x=(e.velocity_x-this.prevVelocityX)/Math.max(.001,n),S=(e.velocity_y-this.prevVelocityY)/Math.max(.001,n);this.prevVelocityX=e.velocity_x,this.prevVelocityY=e.velocity_y;let C=(Math.sin(this.yaw)*this.mapping.x(x)+Math.cos(this.yaw)*this.mapping.z(S))*.12,w=(Math.cos(this.yaw)*this.mapping.x(x)-Math.sin(this.yaw)*this.mapping.z(S))*.12;this.inertiaPitch=yb(this.inertiaPitch,Yl.clamp(-C,-.16,.16),6,n),this.inertiaRoll=yb(this.inertiaRoll,Yl.clamp(w,-.12,.12),6,n);let T=+!!e.is_downed,E=e.is_downed?2.6:1.5;this.downAmount=yb(this.downAmount,T,E,n);let D=xb(0,1,this.downAmount);D>.72&&this.prevDown<=.72&&(this.landingVelocity=-.85),this.prevDown=D;let O=-this.landingSpring*90-this.landingVelocity*12;this.landingVelocity+=O*n,this.landingSpring=Yl.clamp(this.landingSpring+this.landingVelocity*n,-.09,.06),this.reactionT=Math.min(1,this.reactionT+n/.42);let ee=Math.min(1,this.reactionPower/220),k=(1-xb(0,.8,this.reactionT))*ee,te=xb(0,.14,this.reactionT)*(1-xb(.35,1,this.reactionT))*ee,ne=Math.min(1,e.stunned_ticks/45),re=i?0:Math.sin(r*8.6)*.05*ne,ie=4.4-v*1.4,ae=i||D>.5?0:-Math.abs(Math.sin(r*ie+this.walkPhase*.35))*(.017+v*.01),oe=i||D>.5?0:Math.sin(r*ie*.5)*.022,se=i?0:Math.sin(r*(2.2+v*2.6))*(.012+v*.03),A=-.035,ce=0,le=.09;e.defense===`weave`?(A=-.26,ce=.34*c,le=.3):e.defense===`slip_left`?(ce=.2,le=.12):e.defense===`slip_right`?(ce=-.2,le=.12):e.defense===`pull`&&(le=-.26),e.is_foul_recovery_target&&(A=-.18,le=.42),(e.clinch_ticks>0||e.clinch_startup_ticks>0)&&(le=.4,A=-.08),A-=te*.05,le-=te*.34,ce+=re+this.inertiaRoll,le+=this.inertiaPitch;let ue=0,de=0,j=0,fe=0,pe=0,me=0,he=0;if(this.punchT<1&&this.punchKind!==null){let{windup:e,extend:t}=_b(this.punchKind,this.punchT,this.actionStartupFrac,this.actionActiveFrac),n=this.punchHand===`left`?-1:1,r=this.punchTargetKind===`body`?-.09*t:0;this.punchKind===`jab`?(ue=.14*t*n,de=.12*t,j=.06*t*n,pe=.3*t,he=.15*t,le+=.14*t):this.punchKind===`straight`?(ue=.38*t*n,j=.32*t*n,pe=.5*t,de=.12*t,he=.1*t,le+=.16*t):this.punchKind===`hook`?(ue=.34*t*n,j=.3*t*n,me=.55*t,ce+=.09*t*n,he=.08*t):(ue=.26*t*n,j=.22*t*n,fe=-.18*e+.07*t,le+=.14*e-.07*t,pe=.4*t),fe+=r}this.drop=yb(this.drop,A,12,n),this.hipsRoll=yb(this.hipsRoll,ce,12,n),this.spinePitch=yb(this.spinePitch,le,11,n),this.spineTwist=yb(this.spineTwist,ue,16,n),this.kinStep=yb(this.kinStep,de,14,n),this.kinHipYaw=yb(this.kinHipYaw,j,14,n),this.kinDrop=yb(this.kinDrop,fe,13,n),this.kinHeelR=yb(this.kinHeelR,pe,14,n),this.kinPivotL=yb(this.kinPivotL,me,14,n),this.kinHeadTuck=yb(this.kinHeadTuck,he,14,n);let ge=.5*c,_e=this.yaw+ge*(1-D);s.root.rotation.set(0,_e,0);let ve=Math.sin(_e)*this.kinStep*(1-D),ye=Math.cos(_e)*this.kinStep*(1-D);s.root.position.set(this.rootX+ve,0,this.rootZ+ye);let be=this.reactionDirection>=0?1:-1;s.hips.position.y=.955+ae+(this.drop+this.kinDrop)*(1-D)-D*.8+this.landingSpring,s.hips.position.x=oe*(1-D),s.hips.rotation.set(-D*(Math.PI/2-.12)+this.spinePitch*.35*(1-D),this.kinHipYaw*(1-D)+D*.32*be,this.hipsRoll*.5*(1-D)+oe*.8*(1-D)+D*.15*be),s.spine.rotation.set(this.spinePitch*(1-D),(this.spineTwist+Math.sin(this.walkPhase)*.05*b)*(1-D),this.hipsRoll*.55*(1-D));let xe=.1+this.kinHeadTuck-this.spinePitch*.7-k*.55+D*.3,Se=-this.hipsRoll*.8+k*.3*(this.reactionDirection>=0?-1:1),Ce=i?0:Math.sin(r*.9)*.07+Math.sin(r*1.7)*.03;s.head.rotation.set(xe,-this.spineTwist*.5+Ce*(1-D),Se),s.chest.scale.set(1+se,1+se*.5,1+se),this.poseLegs(e,b,D,be,c),s.root.updateMatrixWorld(!0);let we=e.defense===`guard_high`?lb:e.defense===`guard_low`?db:pb,M=e.defense===`guard_high`?ub:e.defense===`guard_low`?fb:mb,N=Db.copy(we),P=Ob.copy(M);if(e.is_foul_recovery_target&&(N.set(.08,.32,.2),P.set(-.06,.3,.18)),(e.clinch_ticks>0||e.clinch_startup_ticks>0)&&(N.set(.16,-.05,.5),P.set(-.16,-.02,.48)),D>.03){let e=Math.sin(xb(.06,.5,D)*Math.PI)*.42;N.lerp(Sb.set(.56,.1,-.05),D),P.lerp(Sb.set(-.54,.12,.02),D),N.y+=e,P.y+=e*.85,N.x+=e*.2*be,P.x+=e*.15*be}else ne>.15&&(N.lerp(Sb.set(.3,-.25,.15),ne*.7),P.lerp(Sb.set(-.3,-.22,.15),ne*.7));if(!i&&D<.1){let e=r*1.9+this.walkPhase*.2;N.x+=Math.sin(e)*.014,N.y+=Math.cos(e*1.3)*.012,P.x+=Math.cos(e*.8)*.012,P.y+=Math.sin(e*1.1)*.013;let t=(r*.27+(c>0?0:.5))%1,n=xb(.86,.9,t)*(1-xb(.9,.97,t));this.punchT>=1&&(c>0?N.z+=n*.12:P.z+=n*.12)}if(this.punchT<1&&this.punchKind!==null&&D<.85){let{windup:e,extend:r}=_b(this.punchKind,this.punchT,this.actionStartupFrac,this.actionActiveFrac),i=r*(1-D),a=t.is_downed?-1.2:t.defense===`weave`?-.24:-.03;this.opponentDrop=yb(this.opponentDrop,a,4,n),Nb.set(this.mapping.x(t.x),(this.punchTargetKind===`body`?1.2:1.62)+this.opponentDrop,this.mapping.z(t.y));let o=s.chest.worldToLocal(Mb.copy(Nb)),c=kb.copy(vb(this.punchKind,this.punchTargetKind,this.punchPower));if(this.punchKind===`jab`||this.punchKind===`straight`)c.x=o.x*.92,c.y=o.y,c.z=Yl.clamp(o.z,.4,.8);else if(this.punchKind===`hook`){let e=xb(this.actionStartupFrac*.85,this.actionStartupFrac+this.actionActiveFrac*.75,this.punchT),t=this.punchHand===`left`?1:-1;c.x=Yl.lerp(o.x+.42*t,o.x-.16*t,e),c.z=o.z*(.72+.28*Math.sin(e*Math.PI*.5)),c.y=o.y}else if(this.punchKind===`uppercut`){let e=xb(this.actionStartupFrac*.7,this.actionStartupFrac+this.actionActiveFrac*.5,this.punchT);c.x=o.x*.9,c.y=Yl.lerp(-.26,o.y+.04,e),c.z=Yl.lerp(.24,o.z*.94,e)}let l=jb.set(0,this.punchKind===`uppercut`?-.22:-.03,this.punchKind===`jab`?-.1:-.16).multiplyScalar(e),u=this.punchHand===`left`?N:P,d=this.punchHand===`left`?P:N;this.punchKind===`straight`&&d.set(-.06,.27,.17),this.punchKind===`hook`&&d.set(-.05,.3,.15),this.punchKind===`uppercut`&&(d.y-=.08);let f=Ab.copy(u).add(l).lerp(c,i);if(this.punchPower===`power`&&Math.abs(this.punchT-(this.actionStartupFrac+this.actionActiveFrac*.5))<.06){let e=(1-Math.abs(this.punchT-(this.actionStartupFrac+this.actionActiveFrac*.5))/.06)*.06;f.addScaledVector(c,e*i)}u.copy(f)}if(e.taunt_ticks>0&&D<.1){let t=(60-e.taunt_ticks)/60*4,n=Math.floor(t)%2==0?1:-1,r=Math.abs(Math.sin(t*Math.PI));N.set(Yl.lerp(.28,-.3,r*(n>0?1:.15)),.52+r*.18,.3),P.set(Yl.lerp(-.28,.3,r*(n<0?1:.15)),.46+r*.2,.3),s.hips.rotation.z+=n*r*.14,s.hips.position.y-=r*.035,s.spine.rotation.y+=n*r*.18,s.head.rotation.z+=n*r*.1}N.x*=c,P.x*=c;let Te=D>.05?9:this.punchT<1?34:26;this.gloveLCurrent.x=yb(this.gloveLCurrent.x,N.x,Te,n),this.gloveLCurrent.y=yb(this.gloveLCurrent.y,N.y,Te,n),this.gloveLCurrent.z=yb(this.gloveLCurrent.z,N.z,Te,n),this.gloveRCurrent.x=yb(this.gloveRCurrent.x,P.x,Te,n),this.gloveRCurrent.y=yb(this.gloveRCurrent.y,P.y,Te,n),this.gloveRCurrent.z=yb(this.gloveRCurrent.z,P.z,Te,n),this.solveArmIK(s.shoulderL,s.elbowL,s.gloveL,this.gloveLCurrent,1,s),this.solveArmIK(s.shoulderR,s.elbowR,s.gloveR,this.gloveRCurrent,-1,s),this.applyTrauma(e,t,a)}poseLegs(e,t,n,r,i){let a=this.rig,o=.42*t*(1-n),s=.5*t*(1-n),c=-(this.drop+this.kinDrop)*1.35*(1-n),l=this.walkPhase,u=this.walkPhase+Math.PI,d={hip:-.2-c*.5,knee:.34+c,ankle:-.1-c*.5},f={hip:.15-c*.5,knee:.38+c,ankle:-.12-c*.5},p=Math.sin(l)*o,m=Math.sin(u)*o,h=Math.max(0,Math.sin(l-Math.PI/2))*s,g=Math.max(0,Math.sin(u-Math.PI/2))*s,_=xb(0,.3,n)*(1-xb(.32,.62,n));a.hipL.rotation.set(Yl.lerp(d.hip+p,-.18,n),.32*i*(1-n)+(this.punchHand===`left`?this.kinPivotL:0)*(1-n),Yl.lerp(0,.5*r,n)),a.kneeL.rotation.x=Yl.lerp(d.knee+h+_*.85,.24,Math.max(n,_)),a.ankleL.rotation.x=Yl.lerp(d.ankle-p*.4-(i<0?this.kinHeelR:0)*(1-n),.42,n),a.hipR.rotation.set(Yl.lerp(f.hip+m,-.12,n),-.14*i*(1-n)+(this.punchHand===`right`?this.kinPivotL:0)*(1-n),Yl.lerp(0,.35*r,n)),a.kneeR.rotation.x=Yl.lerp(f.knee+g+_*.8,.18,Math.max(n,_)),a.ankleR.rotation.x=Yl.lerp(f.ankle-m*.4-(i>0?this.kinHeelR:0)*(1-n),.42,n)}solveArmIK(e,t,n,r,i,a){e.getWorldPosition(Cb),Eb.copy(r),a.chest.localToWorld(Eb),wb.set(.9*i,-1,-.25).applyQuaternion(a.chest.getWorldQuaternion(Pb)),nb(Cb,Eb,wb,Tb),ob(e,Cb,Tb.elbowWorld),e.updateMatrixWorld(!0),ob(t,Tb.elbowWorld,Tb.targetWorld)}applyTrauma(e,t,n){let r=e.trauma,i=e=>Math.min(.85,e/170+r.swelling/420),a=Fb[n];this.rig.bruiseL.material.opacity=i(r.left_eye),this.rig.bruiseR.material.opacity=i(r.right_eye),this.rig.cutL.material.opacity=Math.min(1,r.left_cut/200+r.bleeding/600)*a,this.rig.cutR.material.opacity=Math.min(1,r.right_cut/200+r.bleeding/600)*a;let o=e=>Math.min(1.35,e/260+r.swelling/560),s=o(r.left_eye),c=o(r.right_eye);this.rig.swellL.scale.setScalar(.25+s*1.15),this.rig.swellR.scale.setScalar(.25+c*1.15),this.rig.swellL.material.opacity=Math.min(.92,s*1.1),this.rig.swellR.material.opacity=Math.min(.92,c*1.1);let l=Math.min(1,r.head/900+r.swelling/800);this.rig.cheekL.scale.setScalar(.2+l*1.05),this.rig.cheekR.scale.setScalar(.2+l*.95),this.rig.cheekL.material.opacity=l*.8,this.rig.cheekR.material.opacity=l*.75;let u=Math.min(1.7,(r.left_cut+r.bleeding)/260),d=Math.min(1.7,(r.right_cut+r.bleeding)/260);this.rig.streakL.scale.set(1,.15+u,1),this.rig.streakR.scale.set(1,.15+d,1),this.rig.streakL.material.opacity=Math.min(1,u)*a,this.rig.streakR.material.opacity=Math.min(1,d)*a;let f=Math.min(1.4,r.head/700+r.bleeding/420);this.rig.noseStreak.scale.set(1,.2+f,1),this.rig.noseStreak.material.opacity=Math.min(1,f*.9)*a,this.rig.mouthBlood.material.opacity=Math.min(1,r.head/800+r.bleeding/500)*a;let p=Math.min(1,r.body/750);this.rig.ribL.scale.set(.5+p*.35,1.2+p*.5,.7+p*.2),this.rig.ribR.scale.set(.5+p*.3,1.2+p*.4,.7+p*.2),this.rig.ribL.material.opacity=p*.85,this.rig.ribR.material.opacity=p*.8;let m=Math.min(1,(t.trauma.bleeding+t.trauma.left_cut+t.trauma.right_cut)/620)*a;this.rig.gloveLMaterial.color.copy(this.rig.gloveBaseColor).lerp(Ib,m*.85);let h=Math.min(1.3,r.body/500+r.bleeding/420);this.rig.bodyStreak.scale.set(1+h*.4,.3+h,1),this.rig.bodyStreak.material.opacity=Math.min(1,h)*a,this.rig.bodyBruise.material.opacity=Math.min(.7,r.body/950);let g=1+Math.min(.12,r.swelling/2500);this.rig.headMesh.scale.set(.92*g,1.05*g,.95*g);let _=this.rig.skinMaterial;_.clearcoat=.25+Rb(e)*.4}};function Rb(e){return 1-e.stamina/Math.max(1,e.maximum_stamina)}var zb=[2765120,3813162,2503738,4206894,3029548,3683390,4471856,5919048,3227722,4863298],Bb=[13081462,9067067,7225640,14726287,5517341,11105359],Vb=e=>()=>(e=Math.imul(e^e>>>15,1|e),e^=e+Math.imul(e^e>>>7,61|e),((e^e>>>14)>>>0)/4294967296);function Hb(){let e=new Ju;e.name=`arena`;let t=[],n=[],r=[],i=new Cm({color:`#05070c`,roughness:.95});n.push(i);let a=new Mp(30,40);t.push(a);let o=new Q(a,i);o.rotation.x=-Math.PI/2,o.position.y=-1,o.receiveShadow=!0,e.add(o);let s=Vb(20260727),c=[{radius:8.2,y:-.55,count:120,scale:1},{radius:10.6,y:.35,count:150,scale:1.04},{radius:13.2,y:1.35,count:180,scale:1.08},{radius:16,y:2.45,count:210,scale:1.12}],l=c.reduce((e,t)=>e+t.count,0),u=new jp(.19,.5,4,8),d=new dm(.115,8,7);t.push(u,d);let f=new Cm({roughness:.9,metalness:0}),p=new Cm({roughness:.75,metalness:0});n.push(f,p);let m=new Yf(u,f,l),h=new Yf(d,p,l);m.instanceMatrix.setUsage(ll),h.instanceMatrix.setUsage(ll);let g=new bu,_=new Z,v=new Float32Array(l),y=[],b=0;for(let e of c)for(let t=0;t{if(!n){let n=Math.floor(e*30%l);for(let t=0;t<90;t+=1){let r=(n+t)%l,i=y[r],a=Math.sin(e*1.6+v[r])*.05,o=Math.abs(Math.sin(e*2.3+v[r]*1.7))*.05;pe.setFromAxisAngle(he,i.yaw+a),j.compose(fe.set(i.x,i.y+.45*i.scale+o,i.z+a*.4),pe,me.set(i.scale,i.scale,i.scale)),m.setMatrixAt(r,j),pe.setFromAxisAngle(he,i.yaw+a*1.2),j.compose(fe.set(i.x,i.y+.95*i.scale+o*1.2,i.z+a*.5),pe,me),h.setMatrixAt(r,j)}m.instanceMatrix.needsUpdate=!0,h.instanceMatrix.needsUpdate=!0,ue-=t,ue<=0&&(de=.09+Math.random()*.08,ue=.25+Math.random()*1.6),de=Math.max(0,de-t),C.opacity=de>0?.85:0}},dispose:()=>{for(let e of t)e.dispose();for(let e of n)e.dispose();for(let e of r)e.dispose();m.dispose(),h.dispose()}}}var Ub=1.88,Wb=7.15,Gb=1.12,Kb=class{current=new X(0,Ub,Wb);look=new X(0,Gb,0);swayPhase=0;update(e,t,n,r,i,a,o,s){this.swayPhase+=e;let c=(n.x+r.x)/2,l=(n.z+r.z)/2,u=Yl.clamp(c,-1.4,1.4),d=Yl.clamp(l,-1.1,1.1),f=Yl.clamp(Wb+i*.42-(a?1.1:0),6.4,9.8),p=Ub+i*.1-(a?.35:0),m=s?0:Math.sin(this.swayPhase*.21)*.35,h=s?0:Math.sin(this.swayPhase*.13)*.3,g=u*.32+m,_=f+d*.2,v=p+h*.2;if(this.current.x+=(g-this.current.x)*(1-Math.exp(-2.6*e)),this.current.y+=(v-this.current.y)*(1-Math.exp(-2.6*e)),this.current.z+=(_-this.current.z)*(1-Math.exp(-2.6*e)),this.look.x+=(u-this.look.x)*(1-Math.exp(-3.2*e)),this.look.y+=((a?.75:Gb)-this.look.y)*(1-Math.exp(-3.2*e)),this.look.z+=(d*.6-this.look.z)*(1-Math.exp(-3.2*e)),!s&&o>5e-4){let e=t*61;this.current.x+=Math.sin(e*1.31)*o,this.current.y+=Math.cos(e*1.97)*o*.6,this.look.x+=Math.sin(e*1.53)*o*.5,this.look.y+=Math.cos(e*2.11)*o*.35}return{position:this.current,lookAt:this.look}}},qb=3.05,Jb=3.85,Yb=4.05,Xb=3.42,Zb=[.5,.88,1.26];function Qb(e){let t=qb/Math.max(1,e.ring_half_width),n=qb/Math.max(1,e.ring_half_height);return{x:e=>e*t,z:e=>-e*n}}var $b={blue:1920728,red:12131356,neutral:15067115},ex=[{skin:11563071,skinShadow:9065520,trunks:1327211,trunkTrim:14267484,glove:1920728,gloveTrim:15067115,hair:1643537,shoe:2240573},{skin:7225640,skinShadow:5582877,trunks:7017504,trunkTrim:15067115,glove:12131356,gloveTrim:14267484,hair:854794,shoe:2956316}],tx=900,nx=90,rx=48,ix=e=>()=>(e=Math.imul(e^e>>>15,1|e),e^=e+Math.imul(e^e>>>7,61|e),((e^e>>>14)>>>0)/4294967296),ax=new Set([`hit`,`counter_hit`,`block`,`knockdown`,`bleed`]);function ox(){let e=document.createElement(`canvas`);e.width=64,e.height=64;let t=e.getContext(`2d`);if(t!==null){let e=t.createRadialGradient(32,32,2,32,32,30);e.addColorStop(0,`rgba(120,10,16,0.55)`),e.addColorStop(.5,`rgba(90,8,14,0.28)`),e.addColorStop(1,`rgba(70,6,10,0)`),t.fillStyle=e,t.fillRect(0,0,64,64)}return new Ep(e)}var sx=class{scene;points;droplets=[];dropletPositions;dropletColors;dropletGeometry;dropletMaterial;mistPoints;mists=[];mistPositions;mistColors;mistGeometry;mistMaterial;mistMap;decals=[];decalGeometry;decalIndex=0;dripAccumulator=0;shake=0;bloodLevel=`full`;constructor(e){this.scene=e,this.dropletPositions=new Float32Array(tx*3),this.dropletColors=new Float32Array(tx*3),this.dropletGeometry=new Zd,this.dropletGeometry.setAttribute(`position`,new Id(this.dropletPositions,3)),this.dropletGeometry.setAttribute(`color`,new Id(this.dropletColors,3)),this.dropletMaterial=new vp({size:.032,vertexColors:!0,transparent:!0,opacity:.92,depthWrite:!1,sizeAttenuation:!0}),this.points=new Cp(this.dropletGeometry,this.dropletMaterial),this.points.frustumCulled=!1,e.add(this.points);for(let e=0;ee.alive).length}get liveMist(){return this.mists.filter(e=>e.alive).length}get visibleDecals(){return this.decals.filter(e=>e.visible).length}bloodScale(){return this.bloodLevel===`off`?0:this.bloodLevel===`reduced`?.35:1}spawnDroplet(e,t,n,r,i,a,o,s,c){let l=this.droplets.find(e=>!e.alive);l!==void 0&&(l.alive=!0,l.x=t,l.y=n,l.z=r,l.vx=i,l.vy=a,l.vz=o,l.maxLife=c,l.life=c,l.r=s.r,l.g=s.g,l.b=s.b)}spawnMist(e,t,n,r,i){let a=this.mists.find(e=>!e.alive);a!==void 0&&(a.alive=!0,a.x=e,a.y=t,a.z=n,a.maxLife=i,a.life=i,a.scale=r)}placeDecal(e,t,n,r,i,a,o){let s=this.decals[this.decalIndex%rx];this.decalIndex+=1,s.visible=!0,s.position.x=e,s.position.z=t,s.rotation.z=i,s.scale.set(n,r,1);let c=s.material;c.opacity=a,c.color.setHex(o)}splatter(e,t,n,r=Math.random){let i=this.bloodScale();if(i===0)return;let a=Math.round(4*i)+2;for(let o=0;o0&&(e.amount>190||e.kind===`knockdown`||e.kind===`counter_hit`)){let t=e.kind===`knockdown`?7:5;for(let e=0;e6&&o>0&&this.splatter(a.x+(r()-.5)*.6,a.z+(r()-.5)*.6,.9+Math.min(1.8,e.blood/70)*o,r)}drip(e,t,n,r){let i=this.bloodScale();if(!(i===0||r||t<=.05))for(this.dripAccumulator+=n*Math.min(9,t*8)*i;this.dripAccumulator>=1;)--this.dripAccumulator,this.spawnDroplet(Math.random,e.x+(Math.random()-.5)*.14,e.y-.04,e.z+(Math.random()-.5)*.1,(Math.random()-.5)*.05,-.25-Math.random()*.3,(Math.random()-.5)*.05,{r:.5,g:.04,b:.06},1.1)}update(e){this.shake*=.02**e;let t=!1;for(let[n,r]of this.droplets.entries()){if(!r.alive){this.dropletPositions[n*3+1]=-50;continue}if(t=!0,r.life-=e,r.life<=0||r.y<0){r.y<0&&r.r<.85&&this.bloodScale()>0&&Math.random()<.3&&this.placeDecal(r.x,r.z,.22+Math.random()*.3,.14+Math.random()*.2,Math.random()*Math.PI,.34*this.bloodScale(),7212307),r.alive=!1,this.dropletPositions[n*3+1]=-50;continue}r.vy-=4.6*e,r.x+=r.vx*e,r.y+=r.vy*e,r.z+=r.vz*e;let i=Math.min(1,r.life/(r.maxLife*.4));this.dropletPositions[n*3]=r.x,this.dropletPositions[n*3+1]=r.y,this.dropletPositions[n*3+2]=r.z,this.dropletColors[n*3]=r.r*i,this.dropletColors[n*3+1]=r.g*i,this.dropletColors[n*3+2]=r.b*i}t&&(this.dropletGeometry.attributes.position.needsUpdate=!0,this.dropletGeometry.attributes.color.needsUpdate=!0);let n=!1;for(let[t,r]of this.mists.entries()){if(!r.alive){this.mistPositions[t*3+1]=-50;continue}if(n=!0,r.life-=e,r.life<=0){r.alive=!1,this.mistPositions[t*3+1]=-50;continue}let i=1-r.life/r.maxLife,a=Math.max(0,1-i)*.6;this.mistPositions[t*3]=r.x,this.mistPositions[t*3+1]=r.y+i*.12,this.mistPositions[t*3+2]=r.z,this.mistColors[t*3]=a,this.mistColors[t*3+1]=a*.12,this.mistColors[t*3+2]=a*.14}n&&(this.mistGeometry.attributes.position.needsUpdate=!0,this.mistGeometry.attributes.color.needsUpdate=!0)}clearDynamic(){for(let e of this.droplets)e.alive=!1;for(let e of this.mists)e.alive=!1;this.shake=0,this.dripAccumulator=0}clearDecals(){for(let e of this.decals)e.visible=!1}dispose(){this.scene.remove(this.points),this.scene.remove(this.mistPoints),this.dropletGeometry.dispose(),this.dropletMaterial.dispose(),this.mistGeometry.dispose(),this.mistMaterial.dispose(),this.mistMap.dispose(),this.decalGeometry.dispose();for(let e of this.decals)this.scene.remove(e),e.material.dispose()}};function cx(e,t){if(t===0)return console.warn(`THREE.BufferGeometryUtils.toTrianglesDrawMode(): Geometry already defined as triangles.`),e;if(t===2||t===1){let n=e.getIndex();if(n===null){let t=[],r=e.getAttribute(`position`);if(r!==void 0){for(let e=0;e=2.0 are supported.`));return}let c=new cS(i,{path:t||this.resourcePath||``,crossOrigin:this.crossOrigin,requestHeader:this.requestHeader,manager:this.manager,ktx2Loader:this.ktx2Loader,meshoptDecoder:this.meshoptDecoder});c.fileLoader.setRequestHeader(this.requestHeader);for(let e=0;e=0&&o[t]===void 0&&console.warn(`THREE.GLTFLoader: Unknown extension "`+t+`".`)}}c.setExtensions(a),c.setPlugins(o),c.parse(n,r)}parseAsync(e,t){let n=this;return new Promise(function(r,i){n.parse(e,t,r,i)})}};function fx(){let e={};return{get:function(t){return e[t]},add:function(t,n){e[t]=n},remove:function(t){delete e[t]},removeAll:function(){e={}}}}function px(e,t,n){let r=e.json.materials[t];return r.extensions&&r.extensions[n]?r.extensions[n]:null}var mx={KHR_BINARY_GLTF:`KHR_binary_glTF`,KHR_DRACO_MESH_COMPRESSION:`KHR_draco_mesh_compression`,KHR_LIGHTS_PUNCTUAL:`KHR_lights_punctual`,KHR_MATERIALS_CLEARCOAT:`KHR_materials_clearcoat`,KHR_MATERIALS_DISPERSION:`KHR_materials_dispersion`,KHR_MATERIALS_IOR:`KHR_materials_ior`,KHR_MATERIALS_SHEEN:`KHR_materials_sheen`,KHR_MATERIALS_SPECULAR:`KHR_materials_specular`,KHR_MATERIALS_TRANSMISSION:`KHR_materials_transmission`,KHR_MATERIALS_IRIDESCENCE:`KHR_materials_iridescence`,KHR_MATERIALS_ANISOTROPY:`KHR_materials_anisotropy`,KHR_MATERIALS_UNLIT:`KHR_materials_unlit`,KHR_MATERIALS_VOLUME:`KHR_materials_volume`,KHR_TEXTURE_BASISU:`KHR_texture_basisu`,KHR_TEXTURE_TRANSFORM:`KHR_texture_transform`,KHR_MESH_QUANTIZATION:`KHR_mesh_quantization`,KHR_MATERIALS_EMISSIVE_STRENGTH:`KHR_materials_emissive_strength`,EXT_MATERIALS_BUMP:`EXT_materials_bump`,EXT_TEXTURE_WEBP:`EXT_texture_webp`,EXT_TEXTURE_AVIF:`EXT_texture_avif`,EXT_MESHOPT_COMPRESSION:`EXT_meshopt_compression`,KHR_MESHOPT_COMPRESSION:`KHR_meshopt_compression`,EXT_MESH_GPU_INSTANCING:`EXT_mesh_gpu_instancing`},hx=class{constructor(e){this.parser=e,this.name=mx.KHR_LIGHTS_PUNCTUAL,this.cache={refs:{},uses:{}}}_markDefs(){let e=this.parser,t=this.parser.json.nodes||[];for(let n=0,r=t.length;n=0)throw Error(`THREE.GLTFLoader: setKTX2Loader must be called before loading KTX2 textures`);return null}return t.loadTextureImage(e,i.source,a)}},kx=class{constructor(e){this.parser=e,this.name=mx.EXT_TEXTURE_WEBP}loadTexture(e){let t=this.name,n=this.parser,r=n.json,i=r.textures[e];if(!i.extensions||!i.extensions[t])return null;let a=i.extensions[t],o=r.images[a.source],s=n.textureLoader;if(o.uri){let e=n.options.manager.getHandler(o.uri);e!==null&&(s=e)}return n.loadTextureImage(e,a.source,s)}},Ax=class{constructor(e){this.parser=e,this.name=mx.EXT_TEXTURE_AVIF}loadTexture(e){let t=this.name,n=this.parser,r=n.json,i=r.textures[e];if(!i.extensions||!i.extensions[t])return null;let a=i.extensions[t],o=r.images[a.source],s=n.textureLoader;if(o.uri){let e=n.options.manager.getHandler(o.uri);e!==null&&(s=e)}return n.loadTextureImage(e,a.source,s)}},jx=class{constructor(e,t){this.name=t,this.parser=e}loadBufferView(e){let t=this.parser.json,n=t.bufferViews[e];if(n.extensions&&n.extensions[this.name]){let e=n.extensions[this.name],r=this.parser.getDependency(`buffer`,e.buffer),i=this.parser.options.meshoptDecoder;if(!i||!i.supported){if(t.extensionsRequired&&t.extensionsRequired.indexOf(this.name)>=0)throw Error(`THREE.GLTFLoader: setMeshoptDecoder must be called before loading compressed files`);return null}return r.then(function(t){let n=e.byteOffset||0,r=e.byteLength||0,a=e.count,o=e.byteStride,s=new Uint8Array(t,n,r);return i.decodeGltfBufferAsync?i.decodeGltfBufferAsync(a,o,s,e.mode,e.filter).then(function(e){return e.buffer}):i.ready.then(function(){let t=new ArrayBuffer(a*o);return i.decodeGltfBuffer(new Uint8Array(t),a,o,s,e.mode,e.filter),t})})}else return null}},Mx=class{constructor(e){this.name=mx.EXT_MESH_GPU_INSTANCING,this.parser=e}createNodeMesh(e){let t=this.parser.json,n=t.nodes[e];if(!n.extensions||!n.extensions[this.name]||n.mesh===void 0)return null;let r=t.meshes[n.mesh];for(let e of r.primitives)if(e.mode!==Ux.TRIANGLES&&e.mode!==Ux.TRIANGLE_STRIP&&e.mode!==Ux.TRIANGLE_FAN&&e.mode!==void 0)return null;let i=n.extensions[this.name].attributes,a=[],o={};for(let e in i)a.push(this.parser.getDependency(`accessor`,i[e]).then(t=>(o[e]=t,o[e])));return a.length<1?null:(a.push(this.parser.createNodeMesh(e)),Promise.all(a).then(e=>{let t=e.pop(),n=t.isGroup?t.children:[t],r=e[0].count,i=[];for(let e of n){let t=new bu,n=new X,a=new Xl,s=new X(1,1,1),c=new Yf(e.geometry,e.material,r);for(let e=0;e0||e.search(/^data\:image\/jpeg/)===0?`image/jpeg`:e.search(/\.webp($|\?)/i)>0||e.search(/^data\:image\/webp/)===0?`image/webp`:e.search(/\.ktx2($|\?)/i)>0||e.search(/^data\:image\/ktx2/)===0?`image/ktx2`:`image/png`}var sS=new bu,cS=class{constructor(e={},t={}){this.json=e,this.extensions={},this.plugins={},this.options=t,this.cache=new fx,this.associations=new Map,this.primitiveCache={},this.nodeCache={},this.meshCache={refs:{},uses:{}},this.cameraCache={refs:{},uses:{}},this.lightCache={refs:{},uses:{}},this.sourceCache={},this.textureCache={},this.nodeNamesUsed={};let n=!1,r=-1,i=!1,a=-1;if(typeof navigator<`u`&&navigator.userAgent!==void 0){let e=navigator.userAgent;n=/^((?!chrome|android).)*safari/i.test(e)===!0;let t=e.match(/Version\/(\d+)/);r=n&&t?parseInt(t[1],10):-1,i=e.indexOf(`Firefox`)>-1,a=i?e.match(/Firefox\/([0-9]+)\./)[1]:-1}typeof createImageBitmap>`u`||n&&r<17||i&&a<98?this.textureLoader=new nh(this.options.manager):this.textureLoader=new Dh(this.options.manager),this.textureLoader.setCrossOrigin(this.options.crossOrigin),this.textureLoader.setRequestHeader(this.options.requestHeader),this.fileLoader=new $m(this.options.manager),this.fileLoader.setResponseType(`arraybuffer`),this.options.crossOrigin===`use-credentials`&&this.fileLoader.setWithCredentials(!0)}setExtensions(e){this.extensions=e}setPlugins(e){this.plugins=e}parse(e,t){let n=this,r=this.json,i=this.extensions;this.cache.removeAll(),this.nodeCache={},this._invokeAll(function(e){return e._markDefs&&e._markDefs()}),Promise.all(this._invokeAll(function(e){return e.beforeRoot&&e.beforeRoot()})).then(function(){return Promise.all([n.getDependencies(`scene`),n.getDependencies(`animation`),n.getDependencies(`camera`)])}).then(function(t){let a={scene:t[0][r.scene||0],scenes:t[0],animations:t[1],cameras:t[2],asset:r.asset,parser:n,userData:{}};return $x(i,a,r),eS(a,r),Promise.all(n._invokeAll(function(e){return e.afterRoot&&e.afterRoot(a)})).then(function(){for(let e of a.scenes)e.updateMatrixWorld();e(a)})}).catch(t)}_markDefs(){let e=this.json.nodes||[],t=this.json.skins||[],n=this.json.meshes||[];for(let n=0,r=t.length;n{let n=this.associations.get(e);n!=null&&this.associations.set(t,n);for(let[n,r]of e.children.entries())i(r,t.children[n])};return i(n,r),r.name+=`_instance_`+e.uses[t]++,r}_invokeOne(e){let t=Object.values(this.plugins);t.push(this);for(let n=0;n=2&&p.setY(t,u[e*a+1]),a>=3&&p.setZ(t,u[e*a+2]),a>=4&&p.setW(t,u[e*a+3]),a>=5)throw Error(`THREE.GLTFLoader: Unsupported itemSize in sparse BufferAttribute.`)}p.normalized=d}return p})}loadTexture(e){let t=this.json,n=this.options,r=t.textures[e].source,i=t.images[r],a=this.textureLoader;if(i.uri){let e=n.manager.getHandler(i.uri);e!==null&&(a=e)}return this.loadTextureImage(e,r,a)}loadTextureImage(e,t,n){let r=this,i=this.json,a=i.textures[e],o=i.images[t],s=(o.uri||o.bufferView)+`:`+a.sampler;if(this.textureCache[s])return this.textureCache[s];let c=this.loadImageSource(t,n).then(function(t){t.flipY=!1,t.name=a.name||o.name||``,t.name===``&&typeof o.uri==`string`&&o.uri.startsWith(`data:image/`)===!1&&(t.name=o.uri);let n=(i.samplers||{})[a.sampler]||{};return t.magFilter=Gx[n.magFilter]||1006,t.minFilter=Gx[n.minFilter]||1008,t.wrapS=Kx[n.wrapS]||1e3,t.wrapT=Kx[n.wrapT]||1e3,t.generateMipmaps=!t.isCompressedTexture&&t.minFilter!==1003&&t.minFilter!==1006,r.associations.set(t,{textures:e}),t}).catch(function(){return null});return this.textureCache[s]=c,c}loadImageSource(e,t){let n=this,r=this.json,i=this.options;if(this.sourceCache[e]!==void 0)return this.sourceCache[e].then(e=>e.clone());let a=r.images[e],o=self.URL||self.webkitURL,s=a.uri||``,c=!1;if(a.bufferView!==void 0)s=n.getDependency(`bufferView`,a.bufferView).then(function(e){c=!0;let t=new Blob([e],{type:a.mimeType});return s=o.createObjectURL(t),s});else if(a.uri===void 0)throw Error(`THREE.GLTFLoader: Image `+e+` is missing URI and bufferView`);let l=Promise.resolve(s).then(function(e){return new Promise(function(n,r){let a=n;t.isImageBitmapLoader===!0&&(a=function(e){let t=new mu(e);t.needsUpdate=!0,n(t)}),t.load(Th.resolveURL(e,i.path),a,void 0,r)})}).then(function(e){return c===!0&&o.revokeObjectURL(s),eS(e,a),e.userData.mimeType=a.mimeType||oS(a.uri),e}).catch(function(e){throw console.error(`THREE.GLTFLoader: Couldn't load texture`,s),e});return this.sourceCache[e]=l,l}assignTexture(e,t,n,r){let i=this;return this.getDependency(`texture`,n.index).then(function(a){if(!a)return null;if(n.texCoord!==void 0&&n.texCoord>0&&(a=a.clone(),a.channel=n.texCoord),i.extensions[mx.KHR_TEXTURE_TRANSFORM]){let e=n.extensions===void 0?void 0:n.extensions[mx.KHR_TEXTURE_TRANSFORM];if(e){let t=i.associations.get(a);a=i.extensions[mx.KHR_TEXTURE_TRANSFORM].extendTexture(a,e),i.associations.set(a,t)}}return r!==void 0&&(a.colorSpace=r),e[t]=a,a})}assignFinalMaterial(e){let t=e.geometry,n=e.material,r=t.attributes.tangent===void 0,i=t.attributes.color!==void 0,a=t.attributes.normal===void 0;if(e.isPoints){let e=`PointsMaterial:`+n.uuid,t=this.cache.get(e);t||(t=new vp,nf.prototype.copy.call(t,n),t.color.copy(n.color),t.map=n.map,t.sizeAttenuation=!1,this.cache.add(e,t)),n=t}else if(e.isLine){let e=`LineBasicMaterial:`+n.uuid,t=this.cache.get(e);t||(t=new ip,nf.prototype.copy.call(t,n),t.color.copy(n.color),t.map=n.map,this.cache.add(e,t)),n=t}if(r||i||a){let e=`ClonedMaterial:`+n.uuid+`:`;r&&(e+=`derivative-tangents:`),i&&(e+=`vertex-colors:`),a&&(e+=`flat-shading:`);let t=this.cache.get(e);t||(t=n.clone(),i&&(t.vertexColors=!0),a&&(t.flatShading=!0),r&&(t.normalScale&&(t.normalScale.y*=-1),t.clearcoatNormalScale&&(t.clearcoatNormalScale.y*=-1)),this.cache.add(e,t),this.associations.set(t,this.associations.get(n))),n=t}e.material=n}getMaterialType(){return Cm}loadMaterial(e){let t=this,n=this.json,r=this.extensions,i=n.materials[e],a,o={},s=i.extensions||{},c=[];if(s[mx.KHR_MATERIALS_UNLIT]){let e=r[mx.KHR_MATERIALS_UNLIT];a=e.getMaterialType(),c.push(e.extendParams(o,i,t))}else{let n=i.pbrMetallicRoughness||{};if(o.color=new Z(1,1,1),o.opacity=1,Array.isArray(n.baseColorFactor)){let e=n.baseColorFactor;o.color.setRGB(e[0],e[1],e[2],il),o.opacity=e[3]}n.baseColorTexture!==void 0&&c.push(t.assignTexture(o,`map`,n.baseColorTexture,rl)),o.metalness=n.metallicFactor===void 0?1:n.metallicFactor,o.roughness=n.roughnessFactor===void 0?1:n.roughnessFactor,n.metallicRoughnessTexture!==void 0&&(c.push(t.assignTexture(o,`metalnessMap`,n.metallicRoughnessTexture)),c.push(t.assignTexture(o,`roughnessMap`,n.metallicRoughnessTexture))),a=this._invokeOne(function(t){return t.getMaterialType&&t.getMaterialType(e)}),c.push(Promise.all(this._invokeAll(function(t){return t.extendMaterialParams&&t.extendMaterialParams(e,o)})))}i.doubleSided===!0&&(o.side=2);let l=i.alphaMode||Zx.OPAQUE;if(l===Zx.BLEND?(o.transparent=!0,o.depthWrite=!1):(o.transparent=!1,l===Zx.MASK&&(o.alphaTest=i.alphaCutoff===void 0?.5:i.alphaCutoff)),i.normalTexture!==void 0&&a!==ff&&(c.push(t.assignTexture(o,`normalMap`,i.normalTexture)),o.normalScale=new Y(1,1),i.normalTexture.scale!==void 0)){let e=i.normalTexture.scale;o.normalScale.set(e,e)}if(i.occlusionTexture!==void 0&&a!==ff&&(c.push(t.assignTexture(o,`aoMap`,i.occlusionTexture)),i.occlusionTexture.strength!==void 0&&(o.aoMapIntensity=i.occlusionTexture.strength)),i.emissiveFactor!==void 0&&a!==ff){let e=i.emissiveFactor;o.emissive=new Z().setRGB(e[0],e[1],e[2],il)}return i.emissiveTexture!==void 0&&a!==ff&&c.push(t.assignTexture(o,`emissiveMap`,i.emissiveTexture,rl)),Promise.all(c).then(function(){let n=new a(o);return i.name&&(n.name=i.name),eS(n,i),t.associations.set(n,{materials:e}),i.extensions&&$x(r,n,i),n})}createUniqueName(e){let t=Kh.sanitizeNodeName(e||``);return t in this.nodeNamesUsed?t+`_`+ ++this.nodeNamesUsed[t]:(this.nodeNamesUsed[t]=0,t)}loadGeometries(e){let t=this,n=this.extensions,r=this.primitiveCache;function i(e){return n[mx.KHR_DRACO_MESH_COMPRESSION].decodePrimitive(e,t).then(function(n){return uS(n,e,t)})}let a=[];for(let n=0,o=e.length;n0&&nS(d,i),d.name=t.createUniqueName(i.name||`mesh_`+e),eS(d,i),u.extensions&&$x(r,d,u),t.assignFinalMaterial(d),c.push(d)}for(let n=0,r=c.length;n0){let e=t.userData.pivot,r=n[0];t.pivot=new X().fromArray(e),t.position.x-=e[0],t.position.y-=e[1],t.position.z-=e[2],r.position.set(0,0,0),delete t.userData.pivot}return t})}_loadNodeShallow(e){let t=this.json,n=this.extensions,r=this;if(this.nodeCache[e]!==void 0)return this.nodeCache[e];let i=t.nodes[e],a=i.name?r.createUniqueName(i.name):``,o=[],s=r._invokeOne(function(t){return t.createNodeMesh&&t.createNodeMesh(e)});return s&&o.push(s),i.camera!==void 0&&o.push(r.getDependency(`camera`,i.camera).then(function(e){return r._getNodeRef(r.cameraCache,i.camera,e)})),r._invokeAll(function(t){return t.createNodeAttachment&&t.createNodeAttachment(e)}).forEach(function(e){o.push(e)}),this.nodeCache[e]=Promise.all(o).then(function(t){let o;if(o=i.isBone===!0?new If:t.length>1?new Ju:t.length===1?t[0]:new qu,o!==t[0])for(let e=0,n=t.length;e1){let e=r.associations.get(o);r.associations.set(o,{...e})}return r.associations.get(o).nodes=e,o}),this.nodeCache[e]}loadScene(e){let t=this.extensions,n=this.json.scenes[e],r=this,i=new Ju;n.name&&(i.name=r.createUniqueName(n.name)),eS(i,n),n.extensions&&$x(t,i,n);let a=n.nodes||[],o=[];for(let e=0,t=a.length;e{let t=new Map;for(let[e,n]of r.associations)(e instanceof nf||e instanceof mu)&&t.set(e,n);return e.traverse(e=>{let n=r.associations.get(e);n!=null&&t.set(e,n)}),t})(i),i})}_createAnimationTracks(e,t,n,r,i){let a=[],o=e.name?e.name:e.uuid,s=[];function c(e){e.morphTargetInfluences&&s.push(e.name?e.name:e.uuid)}Yx[i.path]===Yx.weights?(c(e),e.isGroup&&e.children.forEach(c)):s.push(o);let l;switch(Yx[i.path]){case Yx.weights:l=zm;break;case Yx.rotation:l=Vm;break;case Yx.translation:case Yx.scale:l=Um;break;default:switch(n.itemSize){case 1:l=zm;break;default:l=Um;break}break}let u=r.interpolation===void 0?Jc:Xx[r.interpolation],d=this._getArrayFromAccessor(n);for(let e=0,n=s.length;ee.charCodeAt(0));hS=new Promise((t,n)=>{new dx().parse(e.buffer,``,t,e=>n(e instanceof Error?e:Error(String(e))))})}return hS}var _S=null;function vS(){if(_S===null){let e=new nh().load(`data:image/png;base64,${fS}`);e.colorSpace=rl,e.flipY=!1,_S=e}return _S}function yS(e){let t=new wm({map:vS(),color:new Z(1.15,1.1,1.05),emissive:new Z(.16,.13,.1),roughness:.58,metalness:.02,clearcoat:.25,clearcoatRoughness:.6});return e.traverse(e=>{e instanceof Ff&&(e.material=t,e.castShadow=!0,e.frustumCulled=!1)}),t}var bS=(e,t,n,r)=>e+(t-e)*(1-Math.exp(-n*r)),xS=(e,t,n,r)=>e+(((t-e+Math.PI)%(Math.PI*2)+Math.PI*2)%(Math.PI*2)-Math.PI)*(1-Math.exp(-n*r)),SS=class{root=new Ju;mixer;actions=new Map;bones=new Map;skinMaterial;gearMaterial;gearBaseColor;overlays;constructor(e,t){let n=lx(e.scene);n.scale.setScalar(mS),this.root.add(n),this.skinMaterial=yS(n),this.gearMaterial=new Cm({color:t.gear,roughness:.32,metalness:.05}),this.gearBaseColor=new Z(t.gear),n.traverse(e=>{e instanceof Ff&&(e.material=this.skinMaterial,e.castShadow=!0,e.frustumCulled=!1),e instanceof If&&this.bones.set(e.name,e)});let r=Object.values(pS).filter(e=>!this.bones.has(e));if(r.length>0)throw Error(`fighter GLB missing required bones: ${r.join(`, `)}`);this.mixer=new Yh(n);for(let t of e.animations){let e=this.mixer.clipAction(t);this.actions.set(t.name,e),[`jab_left`,`jab_right`,`straight_left`,`straight_right`,`hook_left`,`hook_right`,`uppercut_left`,`uppercut_right`,`block_head`,`hit_head`,`knockdown`,`getup`].includes(t.name)&&(e.setLoop(Wc,1),e.clampWhenFinished=!0)}for(let e of[`L`,`R`]){let t=this.bone(pS[`glove${e}`]);if(t!==null){let e=new Q(new dm(.075,14,12),this.gearMaterial);e.scale.set(1,1.15,1.35),e.position.set(0,-.09,.03),e.castShadow=!0,t.add(e)}}this.overlays=wS(this.bone(`head`),this.bone(`chest`))}bone(e){return this.bones.get(pS[e]??e)??null}get trauma(){return this.overlays}get gloveGear(){return this.gearMaterial}get skin(){return this.skinMaterial}dispose(){this.mixer.stopAllAction(),this.skinMaterial.dispose(),this.gearMaterial.dispose(),this.overlays.dispose()}};function CS(e,t,n=0){let r=new Q(e,new Cm({color:t,roughness:.7,transparent:!0,opacity:0,emissive:n}));return r.castShadow=!1,r}function wS(e,t){let n=[],r=(e,t,r,i=[1,1,1])=>(e.position.set(r[0]*1.3,r[1]*1.25,r[2]*1.35+.045),e.scale.set(...i),t.add(e),n.push(e),e),i=r(CS(new dm(.042,12,10),4856918),e,[.05,.15,.085],[1,.72,.5]),a=r(CS(new dm(.042,12,10),4856918),e,[-.05,.15,.085],[1,.72,.5]),o=r(CS(new dm(.035,12,10),7026034),e,[.052,.155,.088]),s=r(CS(new dm(.035,12,10),7026034),e,[-.052,.155,.088]),c=r(CS(new Ap(.05,.008,.01),8326420,2753286),e,[.05,.178,.104]),l=r(CS(new Ap(.05,.008,.01),8326420,2753286),e,[-.05,.178,.104]),u=r(CS(new Ap(.014,.1,.006),9047830,3146762),e,[.052,.115,.106]),d=r(CS(new Ap(.014,.1,.006),9047830,3146762),e,[-.052,.115,.106]),f=r(CS(new Ap(.011,.07,.006),9047830,3146762),e,[.008,.075,.118]),p=r(CS(new Ap(.03,.012,.006),9047830,3146762),e,[.02,.052,.104]),m=r(CS(new dm(.028,10,8),7026034),e,[.068,.095,.075]),h=r(CS(new dm(.028,10,8),7026034),e,[-.068,.095,.075]),g=r(CS(new dm(.09,12,10),6038608),t,[.16,.08,.02],[.5,1.2,.7]),_=r(CS(new dm(.09,12,10),6038608),t,[-.16,.08,.02],[.5,1.2,.7]),v=r(CS(new dm(.1,12,10),4856918),t,[.02,.05,.1],[1.05,1.35,.55]),y=r(CS(new Ap(.05,.24,.008),9047830,3146762),t,[.03,.08,.155]);return y.rotation.z=.12,{bruiseL:i,bruiseR:a,swellL:o,swellR:s,cutL:c,cutR:l,streakL:u,streakR:d,noseStreak:f,mouthBlood:p,cheekL:m,cheekR:h,ribL:g,ribR:_,bodyBruise:v,bodyStreak:y,dispose(){for(let e of n)e.geometry.dispose(),e.material.dispose(),e.removeFromParent()}}}function TS(e,t,n,r){let i=t.trauma,a=r===`off`?0:r===`reduced`?.45:1,o=e=>e.material,s=e=>Math.min(.85,e/170+i.swelling/420);o(e.bruiseL).opacity=s(i.left_eye),o(e.bruiseR).opacity=s(i.right_eye),o(e.cutL).opacity=Math.min(1,i.left_cut/200+i.bleeding/600)*a,o(e.cutR).opacity=Math.min(1,i.right_cut/200+i.bleeding/600)*a;let c=Math.min(1.35,i.left_eye/260+i.swelling/560),l=Math.min(1.35,i.right_eye/260+i.swelling/560);e.swellL.scale.setScalar(.25+c*1.15),e.swellR.scale.setScalar(.25+l*1.15),o(e.swellL).opacity=Math.min(.92,c*1.1),o(e.swellR).opacity=Math.min(.92,l*1.1);let u=Math.min(1,i.head/900+i.swelling/800);e.cheekL.scale.setScalar(.2+u*1.05),e.cheekR.scale.setScalar(.2+u*.95),o(e.cheekL).opacity=u*.8,o(e.cheekR).opacity=u*.75;let d=Math.min(1.7,(i.left_cut+i.bleeding)/260),f=Math.min(1.7,(i.right_cut+i.bleeding)/260);e.streakL.scale.set(1,.15+d,1),e.streakR.scale.set(1,.15+f,1),o(e.streakL).opacity=Math.min(1,d)*a,o(e.streakR).opacity=Math.min(1,f)*a;let p=Math.min(1.4,i.head/700+i.bleeding/420);e.noseStreak.scale.set(1,.2+p,1),o(e.noseStreak).opacity=Math.min(1,p*.9)*a,o(e.mouthBlood).opacity=Math.min(1,i.head/800+i.bleeding/500)*a;let m=Math.min(1,i.body/750);e.ribL.scale.set(.5+m*.35,1.2+m*.5,.7+m*.2),e.ribR.scale.set(.5+m*.3,1.2+m*.4,.7+m*.2),o(e.ribL).opacity=m*.85,o(e.ribR).opacity=m*.8,o(e.bodyBruise).opacity=Math.min(.7,i.body/950);let h=Math.min(1.3,i.body/500+i.bleeding/420);e.bodyStreak.scale.set(1+h*.4,.3+h,1),o(e.bodyStreak).opacity=Math.min(1,h)*a}var ES=new Z(6031886),DS=[`idle`,`move_forward`,`move_backward`,`move_lateral`],OS=(e,t)=>`${e}_${t}`,kS=class{mapping;boxer;yaw=0;rootX=null;rootZ=0;activePunch=null;punchAgeTicks=0;punchTotalTicks=1;actionId=null;completedActionId=null;predictedId=null;predictedAtSeconds=-1;predictionAgeTicks=0;predictedClip=`jab_left`;predictedTotalTicks=13;hitstop=0;reactionAction=null;downState=`up`;fallAge=0;riseAge=0;opponentDrop=0;liveOpponentHead=new X(0,1.55,0);hasLiveHead=!1;guardWeight=0;hitstopScale=1;plantedL=null;plantedR=null;locomotionWeights={idle:1,move_forward:0,move_backward:0,move_lateral:0};scratchA=new X;scratchB=new X;scratchC=new X;scratchQ=new Xl;aimTarget=new X;aimShoulder=new X;aimTo=new X;aimPole=new X;aimBend=new X;aimElbow=new X;lockAnkle=new X;lockPinned=new X;lockHip=new X;lockTo=new X;lockPole=new X;lockBend=new X;lockKnee=new X;constructor(e,t){this.mapping=t,this.boxer=e;for(let t of DS){let n=e.actions.get(t);n.setEffectiveWeight(+(t===`idle`)),n.play()}}get currentRoot(){return{x:this.rootX??0,z:this.rootZ}}predict(e,t,n){if(e.kind!==`punch`||e.id===void 0)return;this.predictedId=e.id,this.predictedAtSeconds=t,this.predictionAgeTicks=0,this.predictedClip=OS(e.class,e.hand);let r=Ry(e.class,e.target,e.power);this.predictedTotalTicks=zy(r);let i=this.actionId!==null&&this.punchAgeTicks/this.punchTotalTicks>.55;(this.actionId===null||i)&&(this.actionId=null,this.beginPunch(this.boxer.actions.get(this.predictedClip),this.predictedTotalTicks),this.punchAgeTicks=0)}landedHit(e){this.hitstop=Math.max(this.hitstop,e?.045:.078)}react(e){let t=this.boxer.actions.get(e===`block`?`block_head`:`hit_head`);t!==void 0&&(this.reactionAction?.fadeOut(.08),this.reactionAction=t,t.reset().setLoop(Wc,1),t.setEffectiveWeight(.85),t.fadeIn(.03).play())}setPunch(e,t){let n=e.getClip();e.time=Yl.clamp(t/30,0,Math.max(.001,n.duration-.001))}beginPunch(e,t){this.activePunch?.fadeOut(.05),this.activePunch=e,e.reset(),e.setLoop(Wc,1),e.setEffectiveWeight(1),e.fadeIn(.04).play(),this.punchTotalTicks=Math.max(1,t)}update(e,t,n,r,i,a,o,s){let c=this.boxer,l=e.stance===`orthodox`?1:-1,u=this.mapping.x(e.x),d=this.mapping.z(e.y);this.rootX===null&&(this.rootX=u,this.rootZ=d);let f=.05;this.rootX+=Yl.clamp(u-this.rootX,-.05,f),this.rootZ+=Yl.clamp(d-this.rootZ,-.05,f);let p=Math.atan2(this.mapping.x(t.x)-u,(this.mapping.z(t.y)-d)*.45);this.yaw=xS(this.yaw,p,7,n),c.root.position.set(this.rootX,0,this.rootZ),c.root.rotation.set(0,this.yaw+.5*l,0);let m=.82+e.stamina/Math.max(1,e.maximum_stamina)*.18;if(this.hitstop=Math.max(0,this.hitstop-n),this.hitstopScale=this.hitstop>0?.12:1,e.action_id!==null&&e.action_id!==this.actionId&&e.action_id!==this.completedActionId){let t=e.action,n=e.action_hand??(e.stance===`orthodox`?`left`:`right`);if(t!==null){this.actionId=e.action_id;let r=Math.max(1,e.action_startup_ticks+e.action_active_ticks+e.action_recovery_ticks);if(this.beginPunch(c.actions.get(OS(t,n)),r),this.punchAgeTicks=Math.max(0,o-e.action_start_tick),this.predictedId===e.action_id){let t=this.predictionAgeTicks,n=o-e.action_start_tick;Math.abs(t-n)>1&&(this.punchAgeTicks=n),this.predictedId=null}else this.punchAgeTicks=Math.max(0,o-e.action_start_tick)}}if(e.action_id===null&&(this.actionId=null,this.completedActionId=null),this.predictedId!==null&&(this.predictionAgeTicks+=n*30*this.hitstopScale,this.predictionAgeTicks>10&&(this.predictedId=null)),this.activePunch!==null){this.punchAgeTicks+=n*30*this.hitstopScale;let e=this.punchTotalTicks;this.setPunch(this.activePunch,this.punchAgeTicks),this.punchAgeTicks>=e&&(this.completedActionId=this.actionId,this.actionId=null,this.activePunch.fadeOut(.12),this.activePunch=null)}this.reactionAction!==null&&!this.reactionAction.isRunning()&&(this.reactionAction.fadeOut(.1),this.reactionAction=null);let h=Math.hypot(e.velocity_x,e.velocity_y)>.5,g=Yl.clamp(e.velocity_x*e.facing/7,-1,1),_=Yl.clamp(e.velocity_y/7,-1,1),v={idle:+!h,move_forward:Math.max(0,g)*+!!h,move_backward:Math.max(0,-g)*+!!h,move_lateral:Math.abs(_)*+!!h},y=v.idle+v.move_forward+v.move_backward+v.move_lateral;for(let e of DS){let t=y>0?v[e]/y:+(e===`idle`);this.locomotionWeights[e]=bS(this.locomotionWeights[e]??0,t,10,n);let r=c.actions.get(e);r.setEffectiveWeight(this.locomotionWeights[e]),r.setEffectiveTimeScale(i?.4:m)}let b=e.defense===`guard_high`||e.defense===`guard_low`;this.guardWeight=bS(this.guardWeight,+!!b,12,n);for(let t of[`guard_high`,`guard_low`]){let n=c.actions.get(t),r=e.defense===t?this.guardWeight:0;r>0&&!n.isRunning()&&n.reset().play(),n.setEffectiveWeight(r)}let x=t.is_downed?-1.2:t.defense===`weave`?-.24:-.03;if(this.opponentDrop=bS(this.opponentDrop,x,4,n),s!==void 0&&(this.liveOpponentHead.copy(s),this.hasLiveHead=!0),e.is_downed)if(this.activePunch!==null&&(this.activePunch.fadeOut(.06),this.activePunch=null),this.actionId=null,this.predictedId=null,this.downState===`up`){this.downState=`falling`,this.fallAge=0;let e=c.actions.get(`knockdown`);e.reset().setLoop(Wc,1),e.setEffectiveWeight(1),e.fadeIn(.03).play()}else this.downState===`falling`&&(this.fallAge+=n);else if(this.downState!==`up`)if(this.downState===`down`||this.downState===`falling`){this.downState=`rising`,this.riseAge=0,this.boxer.actions.get(`knockdown`).fadeOut(.1);let e=c.actions.get(`getup`);e.reset().setLoop(Wc,1),e.setEffectiveWeight(1),e.fadeIn(.05).play()}else this.riseAge+=n,this.riseAge>.9&&(this.downState=`up`,this.boxer.actions.get(`getup`).fadeOut(.12));this.downState===`falling`&&this.fallAge>1.3&&(this.downState=`down`),c.mixer.update(n*this.hitstopScale),this.applyAimCorrection(e,t),this.lockFeet(e,h);let S=Math.min(1,(t.trauma.bleeding+t.trauma.left_cut+t.trauma.right_cut)/620)*(a===`off`?0:a===`reduced`?.45:1);c.gloveGear.color.copy(c.gearBaseColor).lerp(ES,S*.85),TS(c.trauma,e,S,a),c.skin.clearcoat=.25+(1-e.stamina/Math.max(1,e.maximum_stamina))*.4}applyAimCorrection(e,t){if(this.activePunch===null||this.actionId===null||e.is_downed)return;let n=e.action;if(n===null)return;let r=Ry(n,e.action_target??`head`,e.action_power??`normal`),i=r.startup/Math.max(1,zy(r)),a=this.punchAgeTicks/this.punchTotalTicks;if(ai+.2)return;let o=this.scratchA.set(this.mapping.x(t.x),(e.action_target===`body`?1.2:1.62)+this.opponentDrop,this.mapping.z(t.y));this.hasLiveHead&&o.lerp(this.liveOpponentHead,.85);let s=(e.action_hand??`left`)===`left`?`gloveL`:`gloveR`,c=this.boxer.bone(s),l=this.boxer.bone(s===`gloveL`?`elbowL`:`elbowR`),u=this.boxer.bone(s===`gloveL`?`shoulderL`:`shoulderR`);if(c===null||l===null||u===null)return;this.boxer.root.updateMatrixWorld(!0);let d=c.getWorldPosition(this.scratchB),f=this.scratchC.subVectors(o,d),p=f.length()-.09;if(p<=.01)return;f.setLength(Math.min(.42,p));let m=this.aimTarget.copy(d).add(f),h=u.getWorldPosition(this.aimShoulder),g=.3,_=.3,v=this.aimTo.copy(m).sub(h),y=Yl.clamp(v.length(),.12,.585);v.normalize();let b=(g*g-_*_+y*y)/(2*y),x=Math.sqrt(Math.max(1e-4,g*g-b*b)),S=this.aimPole.set(.9*(s===`gloveL`?1:-1),-1,-.25).applyQuaternion(this.boxer.root.quaternion),C=this.aimBend.copy(S).addScaledVector(v,-S.dot(v)).normalize(),w=this.aimElbow.copy(h).addScaledVector(v,b).addScaledVector(C,x);PS(u,h,w),u.updateMatrixWorld(!0),PS(l,w,m)}lockFeet(e,t){for(let n of[`L`,`R`]){let r=this.boxer.bone(`ankle${n}`),i=this.boxer.bone(`knee${n}`),a=this.boxer.bone(`hip${n}`);if(r===null||i===null||a===null)continue;this.boxer.root.updateMatrixWorld(!0);let o=r.getWorldPosition(this.lockAnkle),s=n===`L`?`plantedL`:`plantedR`,c=this[s];if(t||e.is_downed||o.y>.085){this[s]=null;continue}if(c===null){this[s]=o.clone();continue}let l=Math.hypot(o.x-c.x,o.z-c.z);if(l>.11){this[s]=o.clone(),c=this[s];continue}if(l<.008)continue;let u=this.lockPinned.set(c.x,o.y,c.z),d=a.getWorldPosition(this.lockHip),f=.44,p=.44,m=this.lockTo.copy(u).sub(d),h=Yl.clamp(m.length(),.15,.86);m.normalize();let g=(f*f-p*p+h*h)/(2*h),_=Math.sqrt(Math.max(1e-4,f*f-g*g)),v=this.lockPole.set(0,.2,1).applyQuaternion(this.boxer.root.quaternion),y=this.lockBend.copy(v).addScaledVector(m,-v.dot(m));y.lengthSq()<1e-4&&y.set(0,0,1),y.normalize();let b=this.lockKnee.copy(d).addScaledVector(m,g).addScaledVector(y,_);PS(a,d,b),a.updateMatrixWorld(!0),PS(i,b,u)}}dispose(){this.boxer.dispose()}},AS=new X(0,-1,0),jS=new X,MS=new Xl,NS=new Xl;function PS(e,t,n){if(jS.subVectors(n,t),jS.lengthSq()<1e-6)return;jS.normalize(),MS.setFromUnitVectors(AS,jS);let r=e.parent;if(r===null){e.quaternion.copy(MS);return}r.getWorldQuaternion(NS),e.quaternion.copy(NS.invert().multiply(MS))}var FS=1e3,IS=e=>e.reduce((e,t)=>e+t,0),LS=(e,t,n)=>{if(e.measureText(t).width<=n)return t;let r=t;for(;r.length>1&&e.measureText(`${r}…`).width>n;)r=r.slice(0,-1);return`${r}…`};function RS(e,t,n,r,i,a){e.fillStyle=`rgba(2,4,9,0.85)`,e.fillRect(t-1,n-1,r+2,11);let o=e.createLinearGradient(0,n,0,n+9);o.addColorStop(0,`rgba(210,220,235,0.5)`),o.addColorStop(.5,`rgba(90,100,120,0.25)`),o.addColorStop(1,`rgba(30,36,50,0.4)`),e.strokeStyle=o,e.lineWidth=1,e.strokeRect(t-1.5,n-1.5,r+3,12);let s=Math.max(0,Math.min(1,i.value/Math.max(1,i.maximum))),c=e.createLinearGradient(0,n,0,n+9);c.addColorStop(0,i.from),c.addColorStop(1,i.to),e.fillStyle=c;let l=r*s;e.fillRect(a?t+r-l:t,n,l,9),e.fillStyle=`rgba(255,255,255,0.22)`,e.fillRect(a?t+r-l:t,n,l,2),e.fillStyle=`#dfe7f5`,e.font=`700 9px Inter, system-ui, sans-serif`,e.textAlign=a?`right`:`left`,e.fillText(i.label,a?t+r:t,n-4)}function zS(e,t,n,r,i,a,o,s,c){e.save(),e.beginPath(),s?(e.moveTo(t+14,n),e.lineTo(t+r,n),e.lineTo(t+r-14,n+62),e.lineTo(t,n+62)):(e.moveTo(t,n),e.lineTo(t+r-14,n),e.lineTo(t+r,n+62),e.lineTo(t+14,n+62)),e.closePath(),e.fillStyle=`rgba(3,6,12,0.82)`,e.fill(),e.strokeStyle=`rgba(190,200,220,0.22)`,e.lineWidth=1,e.stroke(),e.fillStyle=c,e.fillRect(s?t+r-5:t,n+4,5,54);let l=s?t+r-20:t+20;e.textAlign=s?`right`:`left`,e.fillStyle=`#f5f8ff`,e.font=`800 16px Inter, system-ui, sans-serif`,e.fillText(LS(e,i.toUpperCase(),r-44),l,n+21),e.fillStyle=`#93a3bd`,e.font=`600 10px Inter, system-ui, sans-serif`,e.fillText(a,l,n+35);let u=(r-52)/o.length,d=o.length*u+(o.length-1)*12,f=s?t+r-20-d:t+20;o.forEach((t,r)=>{RS(e,f+(u+12)*r,n+48,u,t,s)}),e.restore()}function BS(e,t,n,r,i,a){e.save(),e.beginPath(),e.moveTo(t-168/2+12,n),e.lineTo(t+168/2-12,n),e.lineTo(t+168/2,n+58/2),e.lineTo(t+168/2-12,n+58),e.lineTo(t-168/2+12,n+58),e.lineTo(t-168/2,n+58/2),e.closePath(),e.fillStyle=`rgba(4,6,12,0.88)`,e.fill();let o=e.createLinearGradient(t-168/2,n,t+168/2,n+58);o.addColorStop(0,`#8a6a26`),o.addColorStop(.5,`#f6d57a`),o.addColorStop(1,`#8a6a26`),e.strokeStyle=o,e.lineWidth=2,e.stroke(),e.textAlign=`center`,e.fillStyle=`#ffffff`,e.font=`800 22px ui-monospace, monospace`,e.fillText(r,t,n+27),e.fillStyle=`#f6d57a`,e.font=`800 12px Inter, system-ui, sans-serif`,e.fillText(i,t,n+44),a!==`FIGHT`&&(e.fillStyle=`#93a3bd`,e.font=`700 9px Inter, system-ui, sans-serif`,e.fillText(a,t,n+55)),e.restore()}function VS(e,t,n,r,i,a=0){let o=t/2-320/2,s=n/2-78/2+a;e.fillStyle=`rgba(3,6,12,0.88)`,e.fillRect(o,s,320,78),e.strokeStyle=`rgba(246,213,122,0.45)`,e.lineWidth=1.5,e.strokeRect(o+2,s+2,316,74),e.textAlign=`center`,e.fillStyle=`#ffd77a`,e.font=`800 22px Inter, system-ui, sans-serif`,e.fillText(r,t/2,s+34),e.fillStyle=`#c8d3e6`,e.font=`600 12px Inter, system-ui, sans-serif`,e.fillText(i,t/2,s+58)}function HS(e,t,n,r,i,a,o,s,c=30){e.save(),e.textBaseline=`alphabetic`;let l=Math.min(300,t*.38),u=n-84;r.fighters.forEach((n,r)=>{let a=r===1,o=a?t-24-l:24,s=i[n.player_id],c=`ELO ${s?.rating??`—`} · KD ${n.knockdowns} · W ${n.warnings} · −${n.deductions}`,d=[{label:`STAMINA ${Math.round(n.stamina)}`,value:n.stamina,maximum:n.maximum_stamina,from:`#ffe08a`,to:`#d9a53a`},{label:`HEALTH ${Math.round(n.conditioning)}`,value:n.conditioning,maximum:FS,from:`#ff8a7a`,to:`#b02a20`},{label:`GUARD`,value:n.guard,maximum:700,from:`#9ec7ff`,to:`#3d6fb8`},{label:`POISE ${Math.round(n.poise)}`,value:n.poise,maximum:600,from:`#e8c890`,to:`#8a6a34`}];zS(e,o,u,l,s?.name??`Fighter`,c,d.slice(0,2),a,r===0?`#3d6fb8`:`#b02a20`);let f=u-12;RS(e,a?o+l-148:o+20,f,64,d[2],a),RS(e,a?o+l-72:o+96,f,64,d[3],a)});let d=Math.floor(r.phase_ticks_remaining/c),f=`${Math.floor(d/60)}:${String(d%60).padStart(2,`0`)}`;if(BS(e,t/2,n-84,f,`ROUND ${r.round_number}`,r.phase.replace(`_`,` `).toUpperCase()),r.phase===`knockdown`){let i=r.fighters.find(e=>e.player_id===a),o=r.fighters.find(e=>e.is_downed)??i,s=Math.max(...r.fighters.map(e=>e.get_up_count)),c=t/2-380/2,l=n*.24;e.fillStyle=`rgba(3,6,12,0.88)`,e.fillRect(c,l,380,150),e.strokeStyle=`rgba(246,213,122,0.5)`,e.lineWidth=2,e.strokeRect(c+2,l+2,376,146),e.textAlign=`center`,e.fillStyle=`#ffd77a`,e.font=`800 30px Inter, system-ui, sans-serif`,e.fillText(`COUNT ${s}`,t/2,l+40);let u=i?.is_downed===!0?i.get_up_prompt:null;if(u!=null&&i!==void 0){let n=r.tick>=i.get_up_window_start_tick&&r.tick<=i.get_up_window_end_tick,a=u===`get_up_left`?`←`:`→`;n?(e.fillStyle=`#ffe9a8`,e.font=`900 64px Inter, system-ui, sans-serif`,e.fillText(a,t/2-90,l+106),e.fillStyle=`#7dffa8`,e.font=`900 34px Inter, system-ui, sans-serif`,e.fillText(`NOW!`,t/2+62,l+100)):(e.fillStyle=`#8fa3c8`,e.font=`800 30px Inter, system-ui, sans-serif`,e.fillText(`GET READY ${a}`,t/2,l+98));let o=Math.max(0,Math.min(1,i.get_up_meter/Math.max(1,i.get_up_required)));e.fillStyle=`rgba(2,4,9,0.9)`,e.fillRect(c+30,l+120,320,16);let s=e.createLinearGradient(c+30,0,c+30+320,0);s.addColorStop(0,`#7dffa8`),s.addColorStop(1,`#2ea860`),e.fillStyle=s,e.fillRect(c+30,l+120,320*o,16),e.strokeStyle=`rgba(210,220,235,0.5)`,e.lineWidth=1,e.strokeRect(c+29.5,l+119.5,321,17)}else e.fillStyle=`#c8d3e6`,e.font=`600 14px Inter, system-ui, sans-serif`,e.fillText(o!==void 0&&o.player_id===a?`Waiting for your rhythm instruction…`:`Waiting for the count`,t/2,l+100)}r.phase===`foul_recovery`&&VS(e,t,n,`FOUL RECOVERY`,`${i[r.fighters.find(e=>e.is_foul_recovery_target)?.player_id??``]?.name??`Fighter`} is recovering`),r.phase===`rest`&&VS(e,t,n,`CORNERS · RECOVER`,`Conditioning governs recovery`),s>0&&VS(e,t,n,`OPPONENT RECONNECTING · ${Math.ceil(s/1e3)}s`,`The bout is paused`),o!==null&&US(e,t,n,o,i),e.restore()}function US(e,t,n,r,i){e.fillStyle=`rgba(2,4,9,0.94)`,e.fillRect(t*.14,n*.13,t*.72,n*.74),e.strokeStyle=`rgba(246,213,122,0.5)`,e.lineWidth=2,e.strokeRect(t*.14+4,n*.13+4,t*.72-8,n*.74-8),e.textAlign=`center`,e.fillStyle=`#f6d57a`,e.font=`800 26px Inter, system-ui, sans-serif`,e.fillText(r.method.replaceAll(`_`,` `).toUpperCase(),t/2,n*.21);let a=r.winner_id===null?`DRAW`:`${i[r.winner_id]?.name??`Winner`} WINS`;e.fillStyle=`white`,e.font=`700 18px Inter, system-ui, sans-serif`,e.fillText(LS(e,a,t*.6),t/2,n*.27),e.font=`12px ui-monospace, monospace`,r.scorecards.forEach((r,i)=>{let a=n*.37+i*36;e.fillStyle=`#aebbd0`,e.fillText(`${LS(e,r.judge,100)} ${IS(r.player_one)} — ${IS(r.player_two)} [${r.player_one.join(`·`)}] [${r.player_two.join(`·`)}]`,t/2,a)});let o=Object.entries(r.ratings);e.font=`600 13px Inter, system-ui, sans-serif`,o.forEach(([r,a],o)=>{e.fillStyle=a.after>=a.before?`#55df9b`:`#ff7b74`,e.fillText(`${LS(e,i[r]?.name??`Fighter`,100)} ${a.before} → ${a.after} (${a.after-a.before>=0?`+`:``}${a.after-a.before})`,t/2,n*.61+o*27)})}function WS(e,t){let n=document.createElement(`canvas`);n.width=e,n.height=e;let r=n.getContext(`2d`);r!==null&&t(r,e);let i=new Ep(n);return i.anisotropy=8,i.colorSpace=rl,i}function GS(){return WS(1024,(e,t)=>{e.fillStyle=`#2c4386`,e.fillRect(0,0,t,t);let n=e.createLinearGradient(0,0,t,t);n.addColorStop(0,`rgba(255,255,255,0.05)`),n.addColorStop(.5,`rgba(0,0,0,0.04)`),n.addColorStop(1,`rgba(255,255,255,0.03)`),e.fillStyle=n,e.fillRect(0,0,t,t);for(let n=0;n<900;n+=1){let r=Math.sin(n*12.9898)*43758.5453%1,i=Math.sin(n*78.233)*12543.1234%1;e.fillStyle=`rgba(${n%2==0?`255,255,255`:`10,20,50`},${.015+n%5*.004})`,e.fillRect(Math.abs(r)*t,Math.abs(i)*t,2+n%3,1+n%2)}e.strokeStyle=`rgba(235,240,255,0.9)`,e.lineWidth=10,e.beginPath(),e.arc(t/2,t/2,t*.2,0,Math.PI*2),e.stroke(),e.fillStyle=`rgba(235,240,255,0.92)`,e.font=`800 ${Math.round(t*.062)}px Inter, system-ui, sans-serif`,e.textAlign=`center`,e.textBaseline=`middle`,e.fillText(`H A N D S`,t/2,t/2-t*.012),e.font=`600 ${Math.round(t*.024)}px Inter, system-ui, sans-serif`,e.fillText(`AUTHORITATIVE BOXING`,t/2,t/2+t*.052),e.strokeStyle=`rgba(235,240,255,0.55)`,e.lineWidth=5,e.strokeRect(t*.035,t*.035,t*.93,t*.93)})}function KS(){let e=[],t=[],n=[],r=new Ju;r.name=`ring`;let i=GS();n.push(i);let a=new Cm({map:i,roughness:.92,metalness:0});t.push(a);let o=new lm(qb*2,qb*2);e.push(o);let s=new Q(o,a);s.rotation.x=-Math.PI/2,s.position.y=.002,s.receiveShadow=!0,r.add(s);let c=new Cm({color:`#16233f`,roughness:.85});t.push(c);let l=new um(qb*.98,Jb,4,1);e.push(l);let u=new Q(l,c);u.rotation.x=-Math.PI/2,u.rotation.z=Math.PI/4,u.position.y=.001,u.receiveShadow=!0,r.add(u);let d=new Cm({color:`#0c1424`,roughness:.9});t.push(d);let f=new Ap(Yb*2,1,Yb*2);e.push(f);let p=new Q(f,d);p.position.y=-.5,p.receiveShadow=!0,r.add(p);let m=new Cm({color:`#101b33`,roughness:.95});t.push(m);for(let t=0;t<4;t+=1){let n=new lm(Yb*2,.95);e.push(n);let i=new Q(n,m),a=t*Math.PI/2;i.position.set(Math.sin(a)*(Yb-.001),-.48,Math.cos(a)*(Yb-.001)),i.rotation.y=a,r.add(i)}let h=new Cm({color:`#9aa7b5`,roughness:.35,metalness:.75});t.push(h);let g=[$b.blue,$b.neutral,$b.red,$b.neutral],_=new Np(.055,.055,1.55,12);e.push(_);let v=new Ap(.34,.52,.13);e.push(v);let y=new Ap(.16,.07,.1);e.push(y);let b=[];for(let e=0;e<4;e+=1){let n=Math.PI/4+e*Math.PI/2,i=Math.sin(n)*Xb*Math.SQRT2*.72,a=Math.cos(n)*Xb*Math.SQRT2*.72;b.push(new X(i,0,a));let o=new Q(_,h);o.position.set(i,.78,a),o.castShadow=!0,r.add(o);let s=new Cm({color:g[e],roughness:.55});t.push(s);for(let e of[.62,1.12]){let t=new Q(v,s);t.position.set(i*.985,e,a*.985),t.lookAt(0,e,0),t.castShadow=!0,r.add(t)}}let x=[12131356,15067115,1920728].map(e=>{let n=new Cm({color:e,roughness:.42,metalness:.05});return t.push(n),n});for(let n=0;n<4;n+=1){let i=b[n],a=b[(n+1)%4];for(let[n,o]of Zb.entries()){let s=i.clone().add(a).multiplyScalar(.5);s.y=o-.045;let c=new om(new X(i.x,o,i.z),s,new X(a.x,o,a.z)),l=new fm(c,24,.028,8,!1);e.push(l);let u=new Q(l,x[n]);u.castShadow=!0,r.add(u);for(let n of[.33,.66]){let i=c.getPoint(n),a=new Ap(.035,.82,.012);e.push(a);let s=new Cm({color:14212840,roughness:.6});t.push(s);let l=new Q(a,s);l.position.set(i.x,o-.36,i.z),l.lookAt(0,o-.36,0),r.add(l)}}}return{group:r,materials:t,geometries:e,textures:n}}function qS(e){for(let t of e.geometries)t.dispose();for(let t of e.materials)t.dispose();for(let t of e.textures)t.dispose()}function JS(e,t=2){let n=e.getBoundingClientRect(),r=Math.max(1,Math.round(n.width)),i=Math.max(1,Math.round(n.height)),a=Math.min(t,Math.max(1,window.devicePixelRatio||1));(e.width!==Math.round(r*a)||e.height!==Math.round(i*a))&&(e.width=Math.round(r*a),e.height=Math.round(i*a));let o=e.getContext(`2d`);return o===null?null:(o.setTransform(a,0,0,a,0,0),{context:o,viewport:{width:r,height:i},dpr:a})}function YS(){let e=document.createElement(`canvas`);e.width=128,e.height=128;let t=e.getContext(`2d`);if(t!==null){let e=t.createRadialGradient(64,64,8,64,64,62);e.addColorStop(0,`rgba(0,0,0,0.68)`),e.addColorStop(.6,`rgba(0,0,0,0.34)`),e.addColorStop(1,`rgba(0,0,0,0)`),t.fillStyle=e,t.fillRect(0,0,128,128)}return new Ep(e)}var XS={tick_rate:30,ring_half_width:500,ring_half_height:330},ZS=class{canvas;simulation;settings;renderer;scene=new rd;camera;composer;ring;arena;boxers;referee;refereePosition=new X(.4,0,-2.1);animators;effects;director=new Kb;mapping;buffer=new Cs;dedupe=new ws;hudCanvas;cameraOverride=null;manualClock;blobShadows=[];blobTexture;lights=[];keyLight=null;followSpot=null;sizeCheck=new Y;refereeAway=new X;refereeYaw=0;raf=0;previous=performance.now();players={};viewerId=null;final=null;reconnectMs=0;destroyed=!1;graphs=null;glbLoading=!1;graphsReady=Promise.resolve();headCache=[new X,new X];headCacheValid=[!1,!1];pendingContacts=[];onContact=null;tmpA=new X;tmpB=new X;tmpHead=new X;constructor(e,t=XS,n,r={}){this.canvas=e,this.simulation=t,this.settings=n,this.manualClock=r.manualClock===!0,this.mapping=Qb(t),this.renderer=new yy({canvas:e,antialias:!0,powerPreference:`high-performance`,preserveDrawingBuffer:!0}),this.renderer.shadowMap.enabled=!0,this.renderer.shadowMap.type=1,this.renderer.toneMapping=4,this.renderer.toneMappingExposure=.92,this.renderer.setPixelRatio(Math.min(2,window.devicePixelRatio||1)),this.scene.background=new Z(`#04060b`),this.scene.fog=new nd(`#04060b`,.042),this.camera=new gh(38,1,.1,80),this.camera.position.set(0,2.05,7.6),this.camera.lookAt(0,1.1,0),this.setupLights(),this.ring=KS(),this.scene.add(this.ring.group),this.arena=Hb(),this.scene.add(this.arena.group),this.effects=new sx(this.scene),this.boxers=[qy(ex[0]),qy(ex[1])],this.animators=[new Lb(this.boxers[0],this.mapping),new Lb(this.boxers[1],this.mapping)],this.boxers[0].root.position.set(-.9,0,0),this.boxers[1].root.position.set(.9,0,0),this.boxers[0].root.rotation.y=Math.PI/2,this.boxers[1].root.rotation.y=-Math.PI/2,this.scene.add(this.boxers[0].root,this.boxers[1].root),this.referee=sb(),this.referee.root.position.copy(this.refereePosition),this.referee.shoulderL.rotation.x=-.42,this.referee.shoulderR.rotation.x=-.42,this.referee.elbowL.rotation.x=-.55,this.referee.elbowR.rotation.x=-.55,this.scene.add(this.referee.root),this.blobTexture=YS();let i=new lm(1,1);for(let e=0;e<3;e+=1){let t=new Q(i,new ff({map:this.blobTexture,transparent:!0,depthWrite:!1}));t.rotation.x=-Math.PI/2,t.position.y=.006+e*4e-4,t.renderOrder=1,this.blobShadows.push(t),this.scene.add(t)}this.composer=new Oy(this.renderer),this.composer.addPass(new ky(this.scene,this.camera));let a=new jy(new Y(1280,720),.32,.5,.85);this.composer.addPass(a),this.composer.addPass(new Ny),this.hudCanvas=document.createElement(`canvas`),this.hudCanvas.className=`fight-hud`,this.hudCanvas.style.cssText=`position:absolute;inset:0;width:100%;height:100%;pointer-events:none`,e.insertAdjacentElement(`afterend`,this.hudCanvas),this.effects.setBloodLevel(n().blood),this.ensureGraphs(),this.manualClock||(this.raf=requestAnimationFrame(e=>this.draw(e)))}ensureGraphs(){this.glbLoading||this.graphs!==null||new URLSearchParams(window.location.search).get(`procedural`)!==`1`&&(this.glbLoading=!0,this.graphsReady=gS().then(e=>{if(this.destroyed)return;let t=new SS(e,{skin:11563071,gear:1920728}),n=new SS(e,{skin:7225640,gear:12131356});this.graphs=[new kS(t,this.mapping),new kS(n,this.mapping)],this.scene.add(t.root,n.root);for(let e of this.boxers)this.scene.remove(e.root),cb(e)}).catch(e=>{this.glbLoading=!1,console.error(`boxer_glb_load_failed`,e)}))}get ready(){return this.graphsReady}get labRigs(){let e=this.graphs;return e===null?this.boxers.map(e=>e.root):[e[0].boxer.root,e[1].boxer.root]}get labScene(){return this.scene}get labEffects(){return this.effects}labSetCameraOverride(e,t){this.cameraOverride={position:new X(...e),lookAt:new X(...t)}}labFrame(e,t=!0){this.draw(e*1e3,!0,t)}setPlayers(e,t){this.players=e,this.viewerId=t}setFinal(e){this.final=e}setReconnect(e){this.reconnectMs=e}setBloodLevel(e){this.effects.setBloodLevel(e)}setReducedMotion(e){e&&this.effects.clearDynamic()}predictAction(e){let t=this.buffer.latest();if(t===null||this.viewerId===null)return;let n=t.fighters.findIndex(e=>e.player_id===this.viewerId);if(n<0)return;let r=this.graphs;r===null?this.animators[n].predict(e,performance.now()/1e3,this.simulation.tick_rate):r[n].predict(e,performance.now()/1e3,this.simulation.tick_rate)}push(e){if(this.buffer.push(e))for(let t of this.dedupe.accept(e.events)){let n=e.fighters.find(e=>e.player_id===t.target_id)??e.fighters.find(e=>e.player_id===t.actor_id)??e.fighters[0];this.tmpA.set(this.mapping.x(n.x),0,this.mapping.z(n.y)),t.kind===`knockdown`&&this.effects.pool(this.tmpA.x+(Math.random()-.5)*.2,this.tmpA.z+(Math.random()-.5)*.2,1);let r=e.fighters.findIndex(e=>e.player_id===t.target_id),i=e.fighters.findIndex(e=>e.player_id===t.actor_id);if([`hit`,`counter_hit`,`block`,`perfect_block`,`guard_break`,`knockdown`].includes(t.kind)){let n=t.kind===`block`||t.kind===`perfect_block`?r>=0?e.fighters[r]:null:i>=0?e.fighters[i]:null;this.pendingContacts.push({event:t,contactTick:n?.action_contact_tick??t.tick,targetIndex:r,actorIndex:i})}else t.kind===`bleed`&&this.effects.addEvent(t,this.tmpA,this.settings().reducedMotion);e.result!==null&&this.fireContacts(2**53-1)}}fireContacts(e){for(let t=this.pendingContacts.length-1;t>=0;--t){let n=this.pendingContacts[t];if(n.contactTick>e)continue;this.pendingContacts.splice(t,1);let{event:r,targetIndex:i,actorIndex:a}=n,o=this.buffer.latest()?.fighters[i];o!==void 0&&(this.tmpA.set(this.mapping.x(o.x),0,this.mapping.z(o.y)),this.effects.addEvent(r,this.tmpA,this.settings().reducedMotion));let s=this.graphs;if(i>=0&&[`hit`,`counter_hit`,`block`,`perfect_block`,`knockdown`].includes(r.kind)){let e=r.kind===`block`||r.kind===`perfect_block`;s===null?this.animators[i].impact({direction:r.direction,amount:e?r.amount*.35:r.amount,blocked:e}):s[i].react(e?`block`:`hit`)}let c=r.kind===`block`||r.kind===`perfect_block`?i:a;c>=0&&[`hit`,`counter_hit`,`block`,`perfect_block`,`guard_break`].includes(r.kind)&&(s===null?this.animators[c].landedHit(r.kind===`block`||r.kind===`perfect_block`):s[c].landedHit(r.kind===`block`||r.kind===`perfect_block`)),this.onContact?.(r)}}setupLights(){let e=new ih(`#5a6a95`,`#0c0e16`,1.2);this.scene.add(e),this.lights.push(e);let t=new wh(`#3a4468`,1.05);this.scene.add(t),this.lights.push(t);let n=new vh(`#fff4e0`,115,26,.68,.6,1.6);n.position.set(0,7.4,.9),n.target.position.set(0,0,0),n.castShadow=!0,n.shadow.mapSize.set(2048,2048),n.shadow.bias=-4e-4,n.shadow.camera.near=3,n.shadow.camera.far=14,this.keyLight=n,this.scene.add(n,n.target),this.lights.push(n);for(let[e,t,n,r]of[[`#b9cdff`,-6.5,4.4,-5.2],[`#ffd9b9`,6.2,4.1,-5.6],[`#9fb8ff`,-5.4,3.6,6],[`#c9d8ff`,5.8,3.9,5.7]]){let i=new vh(e,105,30,.7,.8,1.8);i.position.set(t,n,r),i.target.position.set(0,1,0),this.scene.add(i,i.target),this.lights.push(i)}let r=new Ch(`#dfe9ff`,.7);r.position.set(0,3.4,-6.5),this.scene.add(r),this.lights.push(r);let i=new vh(`#ffe8d0`,55,22,.34,.75,1.5);i.position.set(0,5.6,5.2),i.target.position.set(0,1,0),this.scene.add(i,i.target),this.lights.push(i),this.followSpot=i}draw(e,t=!1,n=!0){if(this.destroyed)return;let r=t?1/60:Math.min(.05,Math.max(.001,(e-this.previous)/1e3));this.previous=e;let i=this.canvas.clientWidth,a=this.canvas.clientHeight;i>0&&a>0&&(this.renderer.getSize(this.sizeCheck),(this.sizeCheck.x!==i||this.sizeCheck.y!==a)&&(this.renderer.setSize(i,a,!1),this.composer.setSize(i,a),this.camera.aspect=i/a,this.camera.updateProjectionMatrix()));let o=e/1e3,s=this.settings();this.effects.setBloodLevel(s.blood);let c=this.buffer.latest(),l=c===null?null:this.buffer.sample(c.tick-1),u=c===null?0:c.tick-1,d=1.8,f=!1;if(l!==null){let[e,t]=l.fighters,n=this.graphs;if(n!==null){let i=this.headCacheValid[0]?this.headCache[0]:void 0,a=this.headCacheValid[1]?this.headCache[1]:void 0;n[0].update(e,t,r,o,s.reducedMotion,s.blood,u,a),n[1].update(t,e,r,o,s.reducedMotion,s.blood,u,i);for(let[e,t]of n.entries()){let n=t.boxer.bone(`head`);n!==null&&(t.boxer.root.updateMatrixWorld(!0),n.getWorldPosition(this.headCache[e]),this.headCacheValid[e]=!0)}}else this.animators[0].update(e,t,r,o,s.reducedMotion,s.blood,u),this.animators[1].update(t,e,r,o,s.reducedMotion,s.blood,u);let i=this.mapping.x(e.x),a=this.mapping.z(e.y),c=this.mapping.x(t.x),p=this.mapping.z(t.y);d=Math.hypot(i-c,a-p),f=e.is_downed||t.is_downed,this.tmpA.set(i,0,a),this.tmpB.set(c,0,p);for(let[e,t]of l.fighters.entries()){let n=(t.trauma.bleeding+t.trauma.left_cut+t.trauma.right_cut)/380;if(n>.05&&!t.is_downed){let t=e===0?this.tmpA:this.tmpB;this.tmpHead.set(t.x,1.56,t.z),this.effects.drip(this.tmpHead,n,r,s.reducedMotion)}else if(n>.3&&t.is_downed&&Math.random()this.draw(e)))}updateBlobShadows(){let e=[this.tmpA,this.tmpB,this.refereePosition];for(let[t,n]of this.blobShadows.entries()){let r=e[t];n.position.x=r.x,n.position.z=r.z;let i=t<2&&this.buffer.latest()?.fighters[t]?.is_downed===!0;n.scale.set(i?2.1:1.25,i?.9:.85,1)}}updateReferee(e,t,n){let r=(this.tmpA.x+this.tmpB.x)/2,i=(this.tmpA.z+this.tmpB.z)/2,a=this.refereeAway.set(this.refereePosition.x-r,0,this.refereePosition.z-i);a.lengthSq()<.01&&a.set(0,0,-1),a.normalize();let o=Yl.clamp(r+a.x*2.05,-2.4,2.4),s=Yl.clamp(i+a.z*2.05,-2.4,2.4),c=1-Math.exp(-1.6*e);this.refereePosition.x+=(o-this.refereePosition.x)*c,this.refereePosition.z+=(s-this.refereePosition.z)*c;for(let e of[this.tmpA,this.tmpB]){let t=this.refereePosition.x-e.x,n=this.refereePosition.z-e.z,r=Math.hypot(t,n);r<1.45&&r>.001&&(this.refereePosition.x=e.x+t/r*1.45,this.refereePosition.z=e.z+n/r*1.45)}this.referee.root.position.set(this.refereePosition.x,0,this.refereePosition.z);let l=((Math.atan2(r-this.refereePosition.x,i-this.refereePosition.z)-this.refereeYaw+Math.PI)%(Math.PI*2)+Math.PI*2)%(Math.PI*2)-Math.PI;this.refereeYaw+=l*(1-Math.exp(-3*e)),this.referee.root.rotation.y=this.refereeYaw,this.referee.hips.position.y=.98+(n?0:Math.sin(t*1.7)*.006)}drawHudOverlay(e){let t=JS(this.hudCanvas);if(t===null)return;let{context:n,viewport:r}=t;if(n.clearRect(0,0,r.width,r.height),e===null)return;let i=Math.max(...e.fighters.map(e=>e.trauma.head+e.trauma.body));if(i>350){let e=n.createRadialGradient(r.width/2,r.height/2,r.width*.2,r.width/2,r.height/2,r.width*.72);e.addColorStop(0,`rgba(90,0,8,0)`),e.addColorStop(1,`rgba(75,0,8,${Math.min(.3,i/4600)})`),n.fillStyle=e,n.fillRect(0,0,r.width,r.height)}HS(n,r.width,r.height,e,this.players,this.viewerId,this.final,this.reconnectMs,this.simulation.tick_rate)}destroy(){if(!this.destroyed){this.destroyed=!0,cancelAnimationFrame(this.raf),this.raf=0,this.buffer.clear(),this.dedupe.reset(),this.pendingContacts.length=0,this.effects.dispose(),this.arena.dispose(),qS(this.ring);for(let e of this.boxers)this.scene.remove(e.root),cb(e);if(this.graphs!==null){for(let e of this.graphs)this.scene.remove(e.boxer.root),e.dispose();this.graphs=null}this.scene.remove(this.referee.root),cb(this.referee);for(let e of this.lights)this.scene.remove(e);this.keyLight?.shadow.map?.dispose(),this.keyLight?.shadow.dispose(),this.renderer.renderLists.dispose(),this.composer.dispose(),this.renderer.dispose(),this.blobTexture.dispose();for(let e of this.blobShadows)this.scene.remove(e),e.geometry.dispose(),e.material.dispose();this.hudCanvas.remove()}}},QS=`hands.preferences.v1`,$S={length:0,clear:()=>void 0,getItem:()=>null,key:()=>null,removeItem:()=>void 0,setItem:()=>void 0},eC=()=>{try{return window.localStorage}catch{return $S}},tC=()=>({volume:.7,haptics:!0,reducedMotion:window.matchMedia?.(`(prefers-reduced-motion: reduce)`).matches??!1,blood:`full`});function nC(e=eC()){let t=tC();try{let n=JSON.parse(e.getItem(QS)??`null`);if(typeof n!=`object`||!n||Array.isArray(n))return t;let r=n;return{volume:typeof r.volume==`number`&&Number.isFinite(r.volume)?Math.max(0,Math.min(1,r.volume)):t.volume,haptics:typeof r.haptics==`boolean`?r.haptics:t.haptics,reducedMotion:typeof r.reducedMotion==`boolean`?r.reducedMotion:t.reducedMotion,blood:r.blood===`reduced`||r.blood===`off`||r.blood===`full`?r.blood:t.blood}}catch{return t}}function rC(e,t=eC()){try{t.setItem(QS,JSON.stringify({volume:Math.max(0,Math.min(1,e.volume)),haptics:e.haptics,reducedMotion:e.reducedMotion,blood:e.blood}))}catch{}}var iC=class{value;listeners=new Set;constructor(e=eC()){this.storage=e,this.value=nC(e)}storage;get current(){return this.value}update(e){this.value={...this.value,...e},rC(this.value,this.storage);for(let e of this.listeners)e(this.value)}subscribe(e){return this.listeners.add(e),()=>this.listeners.delete(e)}destroy(){this.listeners.clear()}},aC={stage:`bootstrapping`,player:null,playerId:null,role:null,players:{},simulation:null,snapshot:null,final:null,serverTick:0,nextSequence:0,reconnectMs:0,safeError:null},oC=e=>Object.fromEntries(e.map(e=>[e.id,e]));function sC(e,t){if(t.type===`bootstrap`)return{...e,stage:`authorizing`,simulation:t.simulation,safeError:null};if(t.type===`authorized`)return{...e,stage:`connecting`,player:t.player,safeError:null};if(t.type===`connecting`)return{...e,stage:`connecting`};if(t.type===`reconnect-tick`)return{...e,stage:`paused`,reconnectMs:Math.max(0,t.remainingMs)};if(t.type===`fatal`)return{...e,stage:`fatal`,safeError:t.code,reconnectMs:0};let n=t.message;switch(n.type){case`welcome`:return{...e,playerId:n.role===`fighter`?n.player_id:null,role:n.role,players:oC(n.players),serverTick:n.server_tick,nextSequence:n.role===`fighter`?n.next_sequence:0,safeError:null};case`ticket`:return e;case`waiting`:return{...e,stage:`waiting`};case`ready`:return{...e,stage:e.snapshot?.phase??`countdown`,players:oC(n.players)};case`paused`:return{...e,stage:`paused`,reconnectMs:n.grace_ms};case`resumed`:return{...e,stage:e.snapshot?.phase??`countdown`,reconnectMs:0};case`snapshot`:return{...e,stage:n.payload.phase,snapshot:n.payload,serverTick:Math.max(e.serverTick,n.payload.tick)};case`final`:return{...e,stage:`complete`,final:n,reconnectMs:0};case`error`:return{...e,stage:`fatal`,safeError:n.code,reconnectMs:0}}}var cC=new Set([`hit`,`counter_hit`,`block`,`perfect_block`,`guard_break`,`knockdown`]),lC=class{root;reloadPage;state=aC;settings=new iC;input=new bs;audio=new r(()=>this.settings.current);haptics=new is(()=>this.settings.current);feedbackEvents=new ws;renderer=null;network=null;session=null;abort=new AbortController;destroyed=!1;generation=0;reloadOnRetry=!1;canvas;status;roleIndicator;controlsButton;controlsPanel;retry;fightSummary;liveFightStatus;finalSummary;constructor(e,t=()=>window.location.reload()){this.root=e,this.reloadPage=t,e.innerHTML=`
HANDSauthoritative two-player boxing

`,this.canvas=e.querySelector(`canvas`),this.status=e.querySelector(`[data-status]`),this.roleIndicator=e.querySelector(`[data-role]`),this.controlsButton=e.querySelector(`[data-controls]`),this.controlsPanel=e.querySelector(`[data-controls-panel]`),this.retry=e.querySelector(`[data-retry]`),this.fightSummary=e.querySelector(`[data-fight-summary]`),this.liveFightStatus=e.querySelector(`[data-fight-status]`),this.finalSummary=e.querySelector(`[data-final]`),this.retry.addEventListener(`click`,this.onRetry),this.bindPanels(),this.syncSettings()}start(){this.authorize()}resetForAuthorization(){this.reloadOnRetry=!1,this.network?.dispose(),this.network=null,this.session?.destroy(),this.session=null,this.renderer?.destroy(),this.renderer=null,this.abort.abort(),this.abort=new AbortController,this.state=aC,this.feedbackEvents.reset(),this.input.setActive(!1),this.input.reset(),this.finalSummary.textContent=``,this.fightSummary.textContent=``,this.liveFightStatus.textContent=``}async authorize(){let e=++this.generation;this.resetForAuthorization(),this.dispatch({type:`connecting`}),this.setText(this.status,`Securing Discord Activity session…`),this.retry.hidden=!0;try{let t=await ns(this.abort.signal);if(this.destroyed||e!==this.generation){t.destroy();return}this.session=t,this.dispatch({type:`bootstrap`,simulation:t.bootstrap.simulation}),this.dispatch({type:`authorized`,player:t.player}),this.renderer=new ZS(this.canvas,t.bootstrap.simulation,()=>this.settings.current),this.renderer.onContact=e=>{this.audio.event(e),this.haptics.event(e)},this.input.onAction(e=>this.renderer?.predictAction?.(e));let n=t.takeTicket();if(n===null)throw Error(`ticket_unavailable`);let r=new Os(n,()=>this.input.frame(),{onMessage:e=>this.receive(e),onReconnect:e=>{this.dispatch({type:`reconnect-tick`,remainingMs:e}),this.renderer?.setReconnect(e),this.renderState()},onFatal:e=>this.fail(e),onFreshAuth:()=>{e===this.generation&&this.authorize()}});this.network=r,r.start(),this.setText(this.status,`Connecting to the ring…`)}catch(t){!this.abort.signal.aborted&&e===this.generation&&(this.reloadOnRetry=t instanceof j&&t.reloadRequired,this.fail(ge(t)))}}receive(e){if(e.type===`error`){this.fail(e.code);return}this.dispatch({type:`message`,message:e}),e.type===`snapshot`&&this.receiveSnapshot(e.payload),e.type===`final`&&(this.renderer?.setFinal(e),this.audio.result(e)),this.renderer?.setPlayers(this.state.players,this.state.playerId),this.renderer?.setReconnect(this.state.reconnectMs),this.renderState()}receiveSnapshot(e){this.renderer?.push(e);let t=e.fighters.find(e=>e.player_id===this.state.playerId);this.input.setKnockdown(t?.is_downed===!0),t!==void 0&&this.audio.snapshot(e.tick,t.stamina,t.maximum_stamina,t.trauma.head+t.trauma.body);for(let t of this.feedbackEvents.accept(e.events))cC.has(t.kind)||(this.audio.event(t),this.haptics.event(t))}dispatch(e){this.state=sC(this.state,e)}setText(e,t){e.textContent!==t&&(e.textContent=t)}renderState(){let e={bootstrapping:`Loading…`,authorizing:`Authorizing with Discord…`,connecting:`Connecting securely…`,waiting:`Waiting for one opponent to use Play now in this channel.`,countdown:`Bout countdown.`,fight:`Round ${this.state.snapshot?.round_number??1} in progress.`,knockdown:`Knockdown count ${this.state.snapshot?.fighters.find(e=>e.player_id===this.state.playerId)?.get_up_count??0}.`,foul_recovery:`Foul recovery in progress.`,rest:`Between-round rest.`,paused:`Connection paused. ${Math.ceil(this.state.reconnectMs/1e3)} seconds remain.`,complete:`Bout complete. Scorecards and rating changes are displayed.`,fatal:`Unable to continue (${this.state.safeError??`safe_error`}).`},t=this.state.role===`spectator`;this.setText(this.status,t?`Spectating — ${e[this.state.stage]}`:e[this.state.stage]),this.roleIndicator.hidden=!t,this.controlsButton.hidden=t,t&&(this.controlsPanel.hidden=!0,this.controlsButton.setAttribute(`aria-expanded`,`false`));let n=this.state.snapshot?.fighters.find(e=>e.player_id===this.state.playerId),r=t?`Spectating. ${e[this.state.stage]}`:this.state.stage===`knockdown`&&n?.is_downed===!0?`Knockdown. Count ${n.get_up_count}. ${n.get_up_prompt===null?`Wait for your private rhythm instruction.`:`Press ${n.get_up_prompt===`get_up_left`?`left`:`right`} now.`}`:this.state.stage===`paused`?`Connection paused.`:e[this.state.stage];this.setText(this.liveFightStatus,r),this.retry.hidden=this.state.stage!==`fatal`;let i=!t&&[`countdown`,`fight`,`knockdown`,`foul_recovery`].includes(this.state.stage);if(this.input.setActive(i),this.network?.setActive(i),this.renderFightSummary(),this.state.final!==null){let e=this.state.final;this.setText(this.finalSummary,`${e.method.replaceAll(`_`,` `)}. ${e.winner_id===null?`Draw`:`${this.state.players[e.winner_id]?.name??`Winner`} wins`}. Scorecards: ${e.scorecards.map(e=>`${e.judge}: ${e.player_one.reduce((e,t)=>e+t,0)} to ${e.player_two.reduce((e,t)=>e+t,0)}`).join(`; `)}. Ratings: ${Object.entries(e.ratings).map(([e,t])=>`${this.state.players[e]?.name??`fighter`} ${t.before} to ${t.after}`).join(`; `)}.`)}}renderFightSummary(){let e=this.state.snapshot;if(e===null)return;let t=this.state.simulation?.tick_rate??30,n=Math.floor(e.phase_ticks_remaining/t),r=`${Math.floor(n/60)}:${String(n%60).padStart(2,`0`)}`,i=e.fighters.map(e=>{let t=this.state.players[e.player_id];return`${t?.name??`Fighter`}, ELO ${t?.rating??`unknown`}, stamina ${Math.round(e.stamina)} of ${Math.round(e.maximum_stamina)}, guard ${Math.round(e.guard)}, poise ${Math.round(e.poise)}, conditioning ${Math.round(e.conditioning)}, ${e.warnings} warnings, ${e.knockdowns} knockdowns`}),a=e.fighters.find(e=>e.player_id===this.state.playerId),o=a?.is_downed===!0?a.get_up_prompt===null?`You are down. Count ${a.get_up_count}. Wait for your private rhythm instruction.`:`You are down. Count ${a.get_up_count}. Press ${a.get_up_prompt===`get_up_left`?`left`:`right`} now. Get-up progress ${a.get_up_meter} of ${a.get_up_required}.`:``;this.setText(this.fightSummary,`Round ${e.round_number}. ${e.phase.replace(`_`,` `)}. Clock ${r}. ${i.join(`. `)}. ${o}`.trim())}onRetry=()=>{if(this.reloadOnRetry){this.reloadPage();return}this.authorize()};bindPanels(){let e=(e,t)=>{let n=this.root.querySelector(e),r=this.root.querySelector(t);n.addEventListener(`click`,()=>{r.hidden=!r.hidden,n.setAttribute(`aria-expanded`,String(!r.hidden))})};e(`[data-controls]`,`[data-controls-panel]`),e(`[data-settings]`,`[data-settings-panel]`),this.root.querySelector(`[data-volume]`).addEventListener(`input`,e=>{this.settings.update({volume:Number(e.target.value)}),this.audio.setVolume()}),this.root.querySelector(`[data-haptics]`).addEventListener(`change`,e=>{this.settings.update({haptics:e.target.checked})}),this.root.querySelector(`[data-motion]`).addEventListener(`change`,e=>{let t=e.target.checked;this.settings.update({reducedMotion:t}),this.renderer?.setReducedMotion(t)}),this.root.querySelector(`[data-blood]`).addEventListener(`change`,e=>{let t=e.target.value;this.settings.update({blood:t}),this.renderer?.setBloodLevel(t)})}syncSettings(){let e=this.settings.current;this.root.querySelector(`[data-volume]`).value=String(e.volume),this.root.querySelector(`[data-haptics]`).checked=e.haptics,this.root.querySelector(`[data-motion]`).checked=e.reducedMotion,this.root.querySelector(`[data-blood]`).value=e.blood}fail(e){this.dispatch({type:`fatal`,code:e}),this.network?.dispose(),this.network=null,this.session?.destroy(),this.session=null,this.renderer?.destroy(),this.renderer=null,this.input.setActive(!1),this.input.reset(),this.renderState()}destroy(){this.destroyed||(this.destroyed=!0,this.generation+=1,this.abort.abort(),this.network?.dispose(),this.session?.destroy(),this.renderer?.destroy(),this.input.destroy(),this.audio.destroy(),this.settings.destroy(),this.retry.removeEventListener(`click`,this.onRetry),this.root.replaceChildren())}},uC={format:1,trajectories:{"jab:left":{frames:17,left:[[.1945,1.1232,-.2828],[.1581,1.1165,-.275],[.1956,1.1566,-.239],[.4141,1.3195,-.162],[.5571,1.4772,-.0837],[.5901,1.5148,-.0747],[.6048,1.5173,-.0811],[.6177,1.4845,-.0934],[.5144,1.3395,-.1735],[.3603,1.1932,-.2599],[.2555,1.1207,-.3056],[.212,1.1016,-.3185],[.1912,1.0978,-.3222],[.1804,1.0989,-.3232],[.1738,1.1006,-.3238],[.1695,1.1023,-.3245],[.1667,1.1041,-.3251]],right:[[.2394,1.1882,.0269],[.2398,1.1861,.0217],[.2495,1.182,.016],[.2797,1.1731,.0076],[.312,1.1635,-.0014],[.3323,1.1565,-.0086],[.3452,1.1514,-.0142],[.3461,1.1493,-.0175],[.3306,1.1516,-.0173],[.3048,1.1571,-.0146],[.2821,1.1628,-.0118],[.2674,1.1673,-.0098],[.2578,1.1708,-.0084],[.2516,1.1738,-.0076],[.2477,1.1766,-.0071],[.2451,1.1792,-.0068],[.2435,1.1818,-.0066]]},"jab:right":{frames:17,left:[[.1945,1.1232,-.2828],[.1895,1.1207,-.2881],[.1901,1.1152,-.2999],[.2012,1.1032,-.3267],[.2135,1.0904,-.3543],[.2205,1.0811,-.3722],[.2242,1.0743,-.3842],[.2229,1.0712,-.3871],[.2147,1.0735,-.3776],[.2019,1.0798,-.3602],[.1902,1.0864,-.3452],[.1818,1.0912,-.3361],[.1759,1.0949,-.3309],[.1718,1.0978,-.328],[.1688,1.1002,-.3266],[.1666,1.1022,-.326],[.165,1.1041,-.326]],right:[[.2394,1.1882,.0269],[.2099,1.182,.0377],[.2434,1.2174,.0399],[.4435,1.3583,.0093],[.6117,1.4742,-.0258],[.6859,1.5028,-.0581],[.7225,1.5061,-.0809],[.6912,1.4647,-.0835],[.5701,1.3666,-.0667],[.4145,1.2533,-.0486],[.3165,1.1927,-.0335],[.2787,1.1766,-.0236],[.2617,1.1737,-.0171],[.2534,1.175,-.0129],[.2485,1.177,-.0104],[.2455,1.1794,-.0088],[.2437,1.1819,-.0078]]},"straight:left":{frames:22,left:[[.1945,1.1232,-.2828],[.1709,1.12,-.2803],[.122,1.1168,-.2655],[.0826,1.1201,-.2459],[.2244,1.1936,-.2017],[.4621,1.3544,-.1222],[.5841,1.4851,-.053],[.6183,1.5281,-.0334],[.6357,1.5403,-.0298],[.64,1.5219,-.0388],[.6186,1.4637,-.0666],[.5674,1.3773,-.1106],[.4931,1.2801,-.1668],[.4004,1.1933,-.2273],[.3064,1.1323,-.2783],[.24,1.1041,-.3072],[.2067,1.099,-.3179],[.1884,1.1004,-.3225],[.1779,1.1035,-.3246],[.1714,1.1065,-.3259],[.1673,1.1092,-.3266],[.1647,1.1117,-.327]],right:[[.2086,1.2319,.0186],[.2087,1.2292,.014],[.2086,1.2266,.0102],[.2096,1.2239,.0075],[.2249,1.2185,.0131],[.251,1.2109,.0262],[.2721,1.2045,.0373],[.2841,1.2001,.0421],[.2915,1.1969,.0438],[.295,1.1947,.0431],[.2943,1.1935,.0394],[.2889,1.1935,.0327],[.2789,1.1952,.0236],[.2647,1.1985,.013],[.2486,1.2029,.0029],[.2346,1.2076,-.0045],[.2247,1.2118,-.0088],[.218,1.2155,-.0113],[.2339,1.1991,-.0069],[.2398,1.1941,-.0058],[.2418,1.1938,-.0054],[.2423,1.1955,-.005]]},"straight:right":{frames:22,left:[[.1767,1.2295,-.0606],[.1757,1.2269,-.0643],[.1747,1.2245,-.0675],[.1748,1.2218,-.0719],[.1859,1.2154,-.0977],[.204,1.2049,-.144],[.2172,1.1946,-.1867],[.2239,1.1873,-.2128],[.2277,1.1822,-.2293],[.2294,1.1792,-.2368],[.2292,1.1788,-.2337],[.2266,1.181,-.2202],[.2212,1.1856,-.1983],[.2127,1.192,-.1712],[.2021,1.1989,-.1439],[.1922,1.205,-.1227],[.1849,1.21,-.1094],[.1798,1.2142,-.1011],[.1647,1.151,-.2394],[.1613,1.1268,-.2922],[.1608,1.1179,-.3136],[.1606,1.1154,-.3222]],right:[[.2394,1.1882,.0269],[.2221,1.1854,.031],[.1803,1.1827,.0502],[.1463,1.1862,.0703],[.2623,1.2519,.0409],[.4993,1.3799,-.039],[.6694,1.4562,-.1517],[.7308,1.4662,-.237],[.7515,1.4598,-.2925],[.743,1.4409,-.3118],[.7012,1.4061,-.2866],[.6286,1.3596,-.2304],[.5322,1.3054,-.1663],[.4277,1.2497,-.1119],[.3388,1.205,-.0726],[.2872,1.1829,-.0477],[.2658,1.1793,-.0327],[.2555,1.1811,-.0229],[.2501,1.1845,-.0166],[.2468,1.1879,-.0125],[.2449,1.1912,-.0098],[.2437,1.1943,-.0079]]},"hook:left":{frames:26,left:[[.1945,1.1232,-.2828],[.1788,1.1203,-.2836],[.1461,1.117,-.2758],[.1174,1.1317,-.2647],[.1695,1.2262,-.2786],[.2939,1.3785,-.3358],[.3952,1.4806,-.3856],[.4857,1.5154,-.3212],[.56,1.5461,-.1308],[.5218,1.5302,7e-4],[.5048,1.5241,.0371],[.5018,1.517,.0459],[.5068,1.4987,.0439],[.517,1.4655,.0339],[.5073,1.3997,-.0057],[.4556,1.3155,-.0761],[.3877,1.2385,-.151],[.3119,1.1765,-.2211],[.243,1.1349,-.2755],[.1992,1.1159,-.3056],[.1801,1.112,-.3171],[.171,1.1124,-.3221],[.1664,1.1114,-.3244],[.1638,1.1084,-.3256],[.1622,1.1054,-.3261],[.1612,1.1025,-.3261]],right:[[.1936,1.2576,.0106],[.1935,1.255,.0063],[.1933,1.2524,.0026],[.1926,1.2503,.0019],[.1888,1.2499,.0127],[.1804,1.2511,.0315],[.1707,1.2524,.0466],[.1639,1.253,.0542],[.1594,1.2531,.0579],[.1565,1.2531,.0595],[.1546,1.2531,.0599],[.1541,1.2531,.0589],[.1558,1.253,.0556],[.1595,1.2526,.0498],[.1646,1.2521,.0415],[.1703,1.2516,.0312],[.1759,1.2513,.0197],[.1805,1.2513,.008],[.1839,1.2518,-.0023],[.186,1.2529,-.0098],[.1871,1.2545,-.0144],[.1878,1.2565,-.017],[.219,1.2213,-.0071],[.232,1.2041,-.0042],[.2377,1.1955,-.003],[.2404,1.1905,-.0022]]},"hook:right":{frames:26,left:[[.162,1.2566,-.0606],[.161,1.2541,-.0641],[.16,1.2516,-.0671],[.1586,1.2493,-.0714],[.1534,1.2469,-.0839],[.1436,1.2449,-.1018],[.1333,1.2434,-.1163],[.1265,1.2421,-.1249],[.1222,1.2411,-.1302],[.1195,1.2404,-.1337],[.1178,1.24,-.1362],[.1175,1.24,-.1373],[.1193,1.2402,-.1364],[.1231,1.2407,-.1334],[.1284,1.2415,-.1284],[.1344,1.2427,-.1216],[.1403,1.2443,-.1137],[.1454,1.2462,-.1056],[.1492,1.2484,-.0983],[.1516,1.2508,-.093],[.1529,1.2533,-.0899],[.1535,1.2558,-.0881],[.1514,1.1727,-.2341],[.1541,1.1351,-.289],[.1567,1.1171,-.3113],[.1581,1.1077,-.3202]],right:[[.2394,1.1882,.0269],[.2296,1.1857,.027],[.2028,1.1829,.0376],[.1904,1.1977,.0717],[.3039,1.2794,.1656],[.5689,1.398,.2545],[.7545,1.4795,.2642],[.7723,1.4981,.1938],[.7052,1.5259,.0815],[.5854,1.5454,-.0077],[.5405,1.5562,-.0362],[.5196,1.5512,-.0446],[.4969,1.525,-.0506],[.467,1.4806,-.0587],[.4302,1.4232,-.067],[.3882,1.3595,-.0709],[.344,1.2982,-.0658],[.3026,1.2476,-.0521],[.27,1.2129,-.0351],[.2518,1.197,-.0222],[.2457,1.1942,-.015],[.2435,1.1954,-.0107],[.2427,1.1949,-.008],[.2424,1.1926,-.006],[.2424,1.1903,-.0045],[.2425,1.1882,-.0032]]},"uppercut:left":{frames:27,left:[[.1945,1.1232,-.2828],[.1813,1.1066,-.2847],[.1544,1.063,-.2792],[.1176,.998,-.2681],[.0782,.9239,-.2543],[.0728,.8351,-.2055],[.1247,.7671,-.1122],[.2517,.9255,-.0446],[.4255,1.2626,-.0216],[.5208,1.5125,-.0181],[.5155,1.5669,-.0349],[.5183,1.5775,-.0415],[.5249,1.5653,-.0484],[.5203,1.5271,-.0678],[.4843,1.4632,-.1049],[.4356,1.3922,-.1463],[.3773,1.319,-.1904],[.3141,1.2501,-.2337],[.2541,1.1923,-.2718],[.2072,1.1511,-.2999],[.1822,1.1313,-.3142],[.1713,1.1239,-.3204],[.1661,1.1184,-.3234],[.1635,1.113,-.3249],[.162,1.1084,-.3256],[.1611,1.1045,-.3258],[.1606,1.1011,-.3256]],right:[[.2279,1.1235,.0349],[.2288,1.1159,.0296],[.2306,1.0964,.0246],[.2333,1.0652,.0196],[.2365,1.0261,.0148],[.2384,.9914,.0172],[.236,.9802,.0327],[.2253,1.0251,.0574],[.2111,1.0865,.0791],[.2007,1.126,.0917],[.1934,1.1518,.099],[.1893,1.1679,.1021],[.1886,1.1765,.101],[.191,1.1793,.0957],[.1958,1.1775,.0869],[.2019,1.1726,.0753],[.2084,1.1655,.0619],[.2144,1.1576,.0477],[.2194,1.1498,.0343],[.2231,1.1435,.0231],[.2254,1.1398,.0156],[.2268,1.1382,.0112],[.2278,1.1352,.0087],[.2351,1.169,.0031],[.2388,1.1814,4e-4],[.2407,1.1851,-6e-4],[.2417,1.1853,-5e-4]]},"uppercut:right":{frames:27,left:[[.1848,1.0565,-.278],[.1801,1.0481,-.2832],[.1766,1.027,-.2881],[.1743,.9932,-.2926],[.1725,.9509,-.2968],[.1623,.9137,-.3053],[.1355,.902,-.3202],[.0963,.9503,-.3349],[.06,1.0157,-.3431],[.0365,1.0576,-.3466],[.0214,1.0845,-.3484],[.0135,1.1011,-.3497],[.0134,1.1095,-.3506],[.0205,1.1113,-.3513],[.0337,1.1082,-.3513],[.0512,1.1015,-.3502],[.0712,1.0924,-.3474],[.0917,1.0821,-.3432],[.1105,1.0721,-.3381],[.1257,1.0636,-.333],[.1357,1.0581,-.3293],[.1417,1.055,-.3269],[.1452,1.0507,-.3253],[.1522,1.0847,-.3267],[.1559,1.0966,-.327],[.1577,1.0996,-.3268],[.1587,1.099,-.3263]],right:[[.2394,1.1882,.0269],[.232,1.1726,.0262],[.2109,1.1316,.0348],[.1811,1.0707,.0498],[.1492,1.0009,.0662],[.1413,.9122,.0882],[.1937,.8296,.1106],[.3281,.9633,.1017],[.4795,1.2613,.0522],[.5563,1.4948,.0175],[.5741,1.5673,.01],[.5724,1.5794,.0087],[.5534,1.5608,.0066],[.5201,1.5247,.0017],[.4769,1.4777,-.0056],[.4283,1.4237,-.0137],[.378,1.3663,-.0204],[.3297,1.3103,-.0236],[.2881,1.2619,-.0224],[.2586,1.2272,-.0182],[.2457,1.2108,-.0139],[.2421,1.2054,-.0105],[.2412,1.2011,-.008],[.2413,1.1966,-.0061],[.2416,1.193,-.0046],[.2419,1.1899,-.0033],[.2423,1.1873,-.0021]]}}},dC={broadcast:{position:[0,1.88,7.15],lookAt:[0,1.12,0]},side:{position:[7.4,1.6,0],lookAt:[0,1.1,0]},top:{position:[.01,8.5,.01],lookAt:[0,0,0]},ringside:{position:[1.6,1.5,4.1],lookAt:[.2,1.25,0]}},fC=[[`hips`,`spine`],[`spine`,`head`],[`chest`,`shoulderL`],[`shoulderL`,`elbowL`],[`elbowL`,`gloveL`],[`chest`,`shoulderR`],[`shoulderR`,`elbowR`],[`elbowR`,`gloveR`],[`hips`,`hipL`],[`hipL`,`kneeL`],[`kneeL`,`ankleL`],[`hips`,`hipR`],[`hipR`,`kneeR`],[`kneeR`,`ankleR`]],pC=class{root;renderer=null;replay=null;raf=0;playing=!1;speed=1;virtualTick=0;carry=0;latencyMs=0;pendingQueue=[];destroyed=!1;overlays={skeleton:!1,hurtbox:!1,hitbox:!1};trajectoryLine=null;skeletonLines=[];hurtboxMeshes=[];hitboxMeshes=[];statusEl;metricsEl;canvas;constructor(e){this.root=e,e.innerHTML=`
HANDS LABloading replay…
@@ -4327,4 +4327,29 @@ void main() { -
`,this.canvas=e.querySelector(`canvas`),this.statusEl=e.querySelector(`[data-lab-status]`),this.metricsEl=e.querySelector(`[data-lab-metrics]`),this.bindControls()}async start(){let e=new URLSearchParams(window.location.search),t=e.get(`replay`)??`golden`,n=await fetch(`/replays/${t}.json`);if(n.ok||(n=await fetch(`/hands/replays/${t}.json`)),!n.ok)throw Error(`replay_load_failed:${n.status}`);this.replay=await n.json(),await cS(),this.renderer=new BS(this.canvas,{tick_rate:this.replay.tick_rate,ring_half_width:500,ring_half_height:330},()=>({volume:0,haptics:!1,reducedMotion:!1,blood:`full`}),{manualClock:!0});let r=Object.fromEntries(this.replay.ticks[0].snapshot.payload.fighters.map(e=>[e.player_id,{id:e.player_id,name:e.player_id===`one`?`Azure Vector`:`Crimson Geometry`,avatar:null,rating:1500,connected:!0}]));this.renderer.setPlayers(r,`one`),this.buildOverlays();let i=e.get(`tick`);if(e.get(`metrics`)===`1`){await this.renderer.ready,this.exportMetrics(),this.setStatus(`metrics done`);return}if(i!==null){let t=Number(i);await this.renderer.ready,this.seek(t);let n=eC[e.get(`camera`)??``]??eC.broadcast;this.renderer.labSetCameraOverride(n.position,n.lookAt),this.overlays.skeleton=e.get(`skeleton`)===`1`,this.overlays.hurtbox=e.get(`hurtbox`)===`1`,this.overlays.hitbox=e.get(`hitbox`)===`1`,this.syncOverlayVisibility(),this.renderCurrentTick(),window.__labDebug={roots:this.renderer.labRigs.map(e=>e.position.toArray().map(e=>Number(e.toFixed(3)))),heads:this.renderer.labRigs.map(e=>{let t=e.getObjectByName(`head`);return t===void 0?null:t.getWorldPosition(new Z).toArray().map(e=>Number(e.toFixed(3)))}),gloves:this.renderer.labRigs.map(e=>{let t=e.getObjectByName(`gloveL`);return t===void 0?null:t.getWorldPosition(new Z).toArray().map(e=>Number(e.toFixed(3)))})},this.setStatus(`filmstrip tick ${t}`);return}this.playing=!0;let a=()=>{this.destroyed||(this.advance(),this.raf=requestAnimationFrame(a))};this.raf=requestAnimationFrame(a)}bindControls(){this.root.querySelector(`[data-lab='play']`).addEventListener(`click`,e=>{this.playing=!this.playing,e.target.textContent=this.playing?`Pause`:`Play`}),this.root.querySelector(`[data-lab='step']`).addEventListener(`click`,()=>{this.playing=!1,this.root.querySelector(`[data-lab='play']`).textContent=`Play`,this.virtualTick=Math.min(this.virtualTick+1,(this.replay?.ticks.length??1)-1),this.pushUpTo(this.virtualTick),this.renderCurrentTick()}),this.root.querySelector(`[data-lab='speed']`).addEventListener(`change`,e=>{this.speed=Number(e.target.value)}),this.root.querySelector(`[data-lab='camera']`).addEventListener(`change`,e=>{let t=eC[e.target.value];this.renderer?.labSetCameraOverride(t.position,t.lookAt)});for(let e of[`skeleton`,`hurtbox`,`hitbox`])this.root.querySelector(`[data-lab='${e}']`).addEventListener(`change`,t=>{this.overlays[e]=t.target.checked,this.syncOverlayVisibility()});this.root.querySelector(`[data-lab='latency']`).addEventListener(`change`,e=>{this.latencyMs=Math.max(0,Math.min(500,Number(e.target.value)))}),this.root.querySelector(`[data-lab='metrics']`).addEventListener(`click`,()=>this.exportMetrics())}advance(){if(!this.playing||this.replay===null)return;let e=this.replay.ticks.length-1;if(!(this.virtualTick>=e)){for(this.carry+=this.speed;this.carry>=1&&this.virtualTick0?this.pendingQueue.push({at:performance.now()+this.latencyMs,tick:t}):this.renderer?.push(t.snapshot.payload))}drainLatencyQueue(){let e=performance.now();for(let t=this.pendingQueue.length-1;t>=0;--t){let n=this.pendingQueue[t];n.at<=e&&(this.renderer?.push(n.tick.snapshot.payload),this.pendingQueue.splice(t,1))}}seek(e,t=!0){if(this.replay===null||this.renderer===null)return;let n=Math.max(0,Math.min(e,this.replay.ticks.length-1));for(let e=0;e<=n;e+=1)this.renderer.push(this.replay.ticks[e].snapshot.payload),e>=n-15&&this.renderer.labEffects.update(1/30);this.virtualTick=n,this.renderOnSeek=t}renderOnSeek=!0;renderCurrentTick(e){if(this.replay===null||this.renderer===null)return;this.drainLatencyQueue(),this.renderer.labFrame(this.virtualTick/this.replay.tick_rate,e??this.renderOnSeek),this.renderer.labFrame((this.virtualTick+.5)/this.replay.tick_rate,e??this.renderOnSeek),this.updateOverlays(),this.updateTrajectory();let t=this.replay.ticks[this.virtualTick]?.snapshot.payload.phase??``;this.setStatus(`tick ${this.virtualTick}/${this.replay.ticks.length-1} · ${t} · ${this.speed}×`)}buildOverlays(){let e=this.renderer;if(e===null)return;let t=new ip({color:8257448,depthTest:!1,transparent:!0,opacity:.9});for(let n of e.labRigs){let r=new Xd;r.setAttribute(`position`,new Fd(new Float32Array(tC.length*6),3));let i=new gp(r,t);i.frustumCulled=!1,i.renderOrder=20,e.labScene.add(i),this.skeletonLines.push(i);let a=new Cf(new jp(.13,.16,4,8),new df({color:16735581,wireframe:!0,transparent:!0,opacity:.85,depthTest:!1}));a.renderOrder=21,a.position.y=.12,(n.getObjectByName(`head`)??n).add(a),this.hurtboxMeshes.push(a);let o=new Cf(new jp(.21,.34,4,8),new df({color:16758877,wireframe:!0,transparent:!0,opacity:.7,depthTest:!1}));o.renderOrder=21,o.position.y=.16,(n.getObjectByName(`chest`)??n).add(o),this.hurtboxMeshes.push(o);for(let e of[`gloveL`,`gloveR`]){let t=new Cf(new dm(.11,10,8),new df({color:6141183,wireframe:!0,transparent:!0,opacity:.85,depthTest:!1}));t.renderOrder=22,(n.getObjectByName(e)??n).add(t),this.hitboxMeshes.push(t)}}this.syncOverlayVisibility()}syncOverlayVisibility(){for(let e of this.skeletonLines)e.visible=this.overlays.skeleton;for(let e of this.hurtboxMeshes)e.visible=this.overlays.hurtbox;for(let e of this.hitboxMeshes)e.visible=this.overlays.hitbox;this.updateTrajectory()}updateTrajectory(){if(this.trajectoryLine!==null&&(this.trajectoryLine.removeFromParent(),this.trajectoryLine.geometry.dispose(),this.trajectoryLine.material.dispose(),this.trajectoryLine=null),!this.overlays.hitbox||this.replay===null||this.renderer===null)return;let e=this.replay.ticks[this.virtualTick]?.snapshot.payload.fighters[0]?.action_key;if(e==null)return;let t=e.split(`:`),n=$S.trajectories[`${t[0]}:${t[1]}`];if(n===void 0)return;let r=(t[1]===`right`?n.right:n.left).map(e=>new Z((e[0]??0)+this.renderer.labRigs[0].position.x,e[1]??0,(e[2]??0)+this.renderer.labRigs[0].position.z));if(r.length<2)return;let i=new Xd().setFromPoints(r);this.trajectoryLine=new fp(i,new ip({color:6141183,transparent:!0,opacity:.75,depthTest:!1})),this.trajectoryLine.renderOrder=23,this.trajectoryLine.frustumCulled=!1,this.renderer.labScene.add(this.trajectoryLine)}updateOverlays(){let e=this.renderer;if(e!==null)for(let[t,n]of e.labRigs.entries()){let e=this.skeletonLines[t];if(e===void 0||!e.visible)continue;let r=e.geometry.getAttribute(`position`),i=new Z,a=new Z;tC.forEach(([e,t],o)=>{let s=n.getObjectByName(e),c=n.getObjectByName(t);s===void 0||c===void 0||(s.getWorldPosition(i),c.getWorldPosition(a),r.setXYZ(o*2,i.x,i.y,i.z),r.setXYZ(o*2+1,a.x,a.y,a.z))}),r.needsUpdate=!0}}jointWorld(e,t){let n=(this.renderer?.labRigs[e])?.getObjectByName(t);return n==null?null:n.getWorldPosition(new Z)}exportMetrics(){if(this.replay===null)return;let e={contactAlignment:[],maxRootStepMeters:0,footSlideMeters:0,phaseDriftTicks:0};for(let t of this.replay.ticks){let n=t.snapshot.payload.events.find(e=>[`hit`,`counter_hit`,`block`].includes(e.kind)),r=t.snapshot.payload.fighters[0].action_hand;if(n===void 0||r===null)continue;let i=Math.min(t.tick+1,this.replay.ticks.length-1);this.seek(i,!1),this.renderCurrentTick(!1);let a=this.jointWorld(0,r===`left`?`gloveL`:`gloveR`),o=this.jointWorld(1,`head`),s=this.jointWorld(1,`chest`);a!==null&&o!==null&&s!==null&&e.contactAlignment.push({tick:t.tick,kind:n.kind,gloveToHeadMeters:Number(Math.max(0,a.distanceTo(o)-My.head.radius).toFixed(4)),gloveToTorsoMeters:Number(Math.max(0,a.distanceTo(s)-My.torso.radius).toFixed(4))})}this.seek(0,!1);let t=null,n=null;for(let r of this.replay.ticks){this.seek(r.tick,!1),this.renderCurrentTick(!1);let i=this.renderer.labRigs[0].position.x;n!==null&&(e.maxRootStepMeters=Math.max(e.maxRootStepMeters,Math.abs(i-n))),n=i;let a=r.snapshot.payload.fighters[0],o=Math.hypot(a.velocity_x,a.velocity_y),s=this.replay.ticks.slice(Math.max(0,r.tick-30),r.tick+1).some(e=>e.snapshot.payload.fighters[0].is_downed);if(o===0&&!a.is_downed&&!s&&r.snapshot.payload.phase===`fight`){let n=[this.jointWorld(0,`ankleL`),this.jointWorld(0,`ankleR`)].filter(e=>e!==null);t!==null&&n.length===2&&(e.footSlideMeters=Math.max(e.footSlideMeters,Number(Math.max(n[0].distanceTo(t[0]),n[1].distanceTo(t[1])).toFixed(4)))),t=n}else t=null}this.metricsEl.textContent=` contacts: ${e.contactAlignment.map(e=>`${e.kind}@t${e.tick} glove-head ${e.gloveToHeadMeters}m`).join(` · `)} · max root step ${e.maxRootStepMeters.toFixed(3)}m · foot slide ${e.footSlideMeters}m`,window.__labDebug={roots:this.renderer.labRigs.map(e=>e.position.toArray().map(e=>Number(e.toFixed(3)))),graphsActive:this.renderer.graphs!==null,heads:this.renderer.labRigs.map(e=>{let t=e.getObjectByName(`head`);return t===void 0?null:t.getWorldPosition(new Z).toArray().map(e=>Number(e.toFixed(3)))})};let r=new Blob([JSON.stringify(e,null,1)],{type:`application/json`}),i=document.createElement(`a`);i.href=URL.createObjectURL(r),i.download=`hands-lab-metrics.json`,i.click(),URL.revokeObjectURL(i.href)}setStatus(e){this.statusEl.textContent!==e&&(this.statusEl.textContent=e)}destroy(){this.destroyed||(this.destroyed=!0,cancelAnimationFrame(this.raf),this.renderer?.destroy(),this.root.replaceChildren())}};function rC(e){let t=new nC(e);return t.start().catch(t=>{e.querySelector(`[data-lab-status]`).textContent=`lab failed: ${String(t)}`}),()=>t.destroy()}var iC=document.querySelector(`#app`);if(iC===null)throw Error(`app_root_missing`);var aC,oC=new URLSearchParams(window.location.search);if(window.location.pathname.endsWith(`/hands/lab`)||oC.get(`lab`)===`1`)aC=rC(iC);else{let e=new QS(iC);e.start(),aC=()=>e.destroy()}window.addEventListener(`pagehide`,aC,{once:!0}); \ No newline at end of file +
`,this.canvas=e.querySelector(`canvas`),this.statusEl=e.querySelector(`[data-lab-status]`),this.metricsEl=e.querySelector(`[data-lab-metrics]`),this.bindControls()}async start(){let e=new URLSearchParams(window.location.search),t=e.get(`replay`)??`golden`,n=await fetch(`/replays/${t}.json`);if(n.ok||(n=await fetch(`/hands/replays/${t}.json`)),!n.ok)throw Error(`replay_load_failed:${n.status}`);this.replay=await n.json(),await gS(),this.renderer=new ZS(this.canvas,{tick_rate:this.replay.tick_rate,ring_half_width:500,ring_half_height:330},()=>({volume:0,haptics:!1,reducedMotion:!1,blood:`full`}),{manualClock:!0});let r=Object.fromEntries(this.replay.ticks[0].snapshot.payload.fighters.map(e=>[e.player_id,{id:e.player_id,name:e.player_id===`one`?`Azure Vector`:`Crimson Geometry`,avatar:null,rating:1500,connected:!0}]));this.renderer.setPlayers(r,`one`),this.buildOverlays();let i=e.get(`tick`);if(e.get(`metrics`)===`1`){await this.renderer.ready,this.exportMetrics(),this.setStatus(`metrics done`);return}if(i!==null){let t=Number(i);await this.renderer.ready,this.seek(t);let n=dC[e.get(`camera`)??``]??dC.broadcast;this.renderer.labSetCameraOverride(n.position,n.lookAt),this.overlays.skeleton=e.get(`skeleton`)===`1`,this.overlays.hurtbox=e.get(`hurtbox`)===`1`,this.overlays.hitbox=e.get(`hitbox`)===`1`,this.syncOverlayVisibility(),this.renderCurrentTick(),window.__labDebug={roots:this.renderer.labRigs.map(e=>e.position.toArray().map(e=>Number(e.toFixed(3)))),heads:this.renderer.labRigs.map(e=>{let t=e.getObjectByName(`head`);return t===void 0?null:t.getWorldPosition(new X).toArray().map(e=>Number(e.toFixed(3)))}),gloves:this.renderer.labRigs.map(e=>{let t=e.getObjectByName(`gloveL`);return t===void 0?null:t.getWorldPosition(new X).toArray().map(e=>Number(e.toFixed(3)))}),material:(()=>{let e=null;return this.renderer.labRigs[0]?.traverse(t=>{if(e===null&&t instanceof Ff){let n=t.material;e={colorHex:n.color.getHexString(),hasMap:n.map!==null,mapImage:n.map?.image?.width??`none`,mapVersion:n.map?.version,clearcoat:n.clearcoat,opacity:n.opacity}}}),e})()},this.setStatus(`filmstrip tick ${t}`);return}this.playing=!0;let a=()=>{this.destroyed||(this.advance(),this.raf=requestAnimationFrame(a))};this.raf=requestAnimationFrame(a)}bindControls(){this.root.querySelector(`[data-lab='play']`).addEventListener(`click`,e=>{this.playing=!this.playing,e.target.textContent=this.playing?`Pause`:`Play`}),this.root.querySelector(`[data-lab='step']`).addEventListener(`click`,()=>{this.playing=!1,this.root.querySelector(`[data-lab='play']`).textContent=`Play`,this.virtualTick=Math.min(this.virtualTick+1,(this.replay?.ticks.length??1)-1),this.pushUpTo(this.virtualTick),this.renderCurrentTick()}),this.root.querySelector(`[data-lab='speed']`).addEventListener(`change`,e=>{this.speed=Number(e.target.value)}),this.root.querySelector(`[data-lab='camera']`).addEventListener(`change`,e=>{let t=dC[e.target.value];this.renderer?.labSetCameraOverride(t.position,t.lookAt)});for(let e of[`skeleton`,`hurtbox`,`hitbox`])this.root.querySelector(`[data-lab='${e}']`).addEventListener(`change`,t=>{this.overlays[e]=t.target.checked,this.syncOverlayVisibility()});this.root.querySelector(`[data-lab='latency']`).addEventListener(`change`,e=>{this.latencyMs=Math.max(0,Math.min(500,Number(e.target.value)))}),this.root.querySelector(`[data-lab='metrics']`).addEventListener(`click`,()=>this.exportMetrics())}advance(){if(!this.playing||this.replay===null)return;let e=this.replay.ticks.length-1;if(!(this.virtualTick>=e)){for(this.carry+=this.speed;this.carry>=1&&this.virtualTick0?this.pendingQueue.push({at:performance.now()+this.latencyMs,tick:t}):this.renderer?.push(t.snapshot.payload))}drainLatencyQueue(){let e=performance.now();for(let t=this.pendingQueue.length-1;t>=0;--t){let n=this.pendingQueue[t];n.at<=e&&(this.renderer?.push(n.tick.snapshot.payload),this.pendingQueue.splice(t,1))}}seek(e,t=!0){if(this.replay===null||this.renderer===null)return;let n=Math.max(0,Math.min(e,this.replay.ticks.length-1));for(let e=0;e<=n;e+=1)this.renderer.push(this.replay.ticks[e].snapshot.payload),e>=n-15&&this.renderer.labEffects.update(1/30);this.virtualTick=n,this.renderOnSeek=t}renderOnSeek=!0;renderCurrentTick(e){if(this.replay===null||this.renderer===null)return;this.drainLatencyQueue(),this.renderer.labFrame(this.virtualTick/this.replay.tick_rate,e??this.renderOnSeek),this.renderer.labFrame((this.virtualTick+.5)/this.replay.tick_rate,e??this.renderOnSeek),this.updateOverlays(),this.updateTrajectory();let t=this.replay.ticks[this.virtualTick]?.snapshot.payload.phase??``;this.setStatus(`tick ${this.virtualTick}/${this.replay.ticks.length-1} · ${t} · ${this.speed}×`)}buildOverlays(){let e=this.renderer;if(e===null)return;let t=new ip({color:8257448,depthTest:!1,transparent:!0,opacity:.9});for(let n of e.labRigs){let r=new Zd;r.setAttribute(`position`,new Id(new Float32Array(fC.length*6),3));let i=new gp(r,t);i.frustumCulled=!1,i.renderOrder=20,e.labScene.add(i),this.skeletonLines.push(i);let a=new Q(new jp(.13,.16,4,8),new ff({color:16735581,wireframe:!0,transparent:!0,opacity:.85,depthTest:!1}));a.renderOrder=21,a.position.y=.12,(n.getObjectByName(`head`)??n).add(a),this.hurtboxMeshes.push(a);let o=new Q(new jp(.21,.34,4,8),new ff({color:16758877,wireframe:!0,transparent:!0,opacity:.7,depthTest:!1}));o.renderOrder=21,o.position.y=.16,(n.getObjectByName(`chest`)??n).add(o),this.hurtboxMeshes.push(o);for(let e of[`gloveL`,`gloveR`]){let t=new Q(new dm(.11,10,8),new ff({color:6141183,wireframe:!0,transparent:!0,opacity:.85,depthTest:!1}));t.renderOrder=22,(n.getObjectByName(e)??n).add(t),this.hitboxMeshes.push(t)}}this.syncOverlayVisibility()}syncOverlayVisibility(){for(let e of this.skeletonLines)e.visible=this.overlays.skeleton;for(let e of this.hurtboxMeshes)e.visible=this.overlays.hurtbox;for(let e of this.hitboxMeshes)e.visible=this.overlays.hitbox;this.updateTrajectory()}updateTrajectory(){if(this.trajectoryLine!==null&&(this.trajectoryLine.removeFromParent(),this.trajectoryLine.geometry.dispose(),this.trajectoryLine.material.dispose(),this.trajectoryLine=null),!this.overlays.hitbox||this.replay===null||this.renderer===null)return;let e=this.replay.ticks[this.virtualTick]?.snapshot.payload.fighters[0]?.action_key;if(e==null)return;let t=e.split(`:`),n=uC.trajectories[`${t[0]}:${t[1]}`];if(n===void 0)return;let r=(t[1]===`right`?n.right:n.left).map(e=>new X((e[0]??0)+this.renderer.labRigs[0].position.x,e[1]??0,(e[2]??0)+this.renderer.labRigs[0].position.z));if(r.length<2)return;let i=new Zd().setFromPoints(r);this.trajectoryLine=new fp(i,new ip({color:6141183,transparent:!0,opacity:.75,depthTest:!1})),this.trajectoryLine.renderOrder=23,this.trajectoryLine.frustumCulled=!1,this.renderer.labScene.add(this.trajectoryLine)}updateOverlays(){let e=this.renderer;if(e!==null)for(let[t,n]of e.labRigs.entries()){let e=this.skeletonLines[t];if(e===void 0||!e.visible)continue;let r=e.geometry.getAttribute(`position`),i=new X,a=new X;fC.forEach(([e,t],o)=>{let s=n.getObjectByName(e),c=n.getObjectByName(t);s===void 0||c===void 0||(s.getWorldPosition(i),c.getWorldPosition(a),r.setXYZ(o*2,i.x,i.y,i.z),r.setXYZ(o*2+1,a.x,a.y,a.z))}),r.needsUpdate=!0}}jointWorld(e,t){let n=(this.renderer?.labRigs[e])?.getObjectByName(t);return n==null?null:n.getWorldPosition(new X)}exportMetrics(){if(this.replay===null)return;let e={contactAlignment:[],maxRootStepMeters:0,footSlideMeters:0,phaseDriftTicks:0};for(let t of this.replay.ticks){let n=t.snapshot.payload.events.find(e=>[`hit`,`counter_hit`,`block`].includes(e.kind)),r=t.snapshot.payload.fighters[0].action_hand;if(n===void 0||r===null)continue;let i=Math.min(t.tick+1,this.replay.ticks.length-1);this.seek(i,!1),this.renderCurrentTick(!1);let a=this.jointWorld(0,r===`left`?`gloveL`:`gloveR`),o=this.jointWorld(1,`head`),s=this.jointWorld(1,`chest`);a!==null&&o!==null&&s!==null&&e.contactAlignment.push({tick:t.tick,kind:n.kind,gloveToHeadMeters:Number(Math.max(0,a.distanceTo(o)-Ly.head.radius).toFixed(4)),gloveToTorsoMeters:Number(Math.max(0,a.distanceTo(s)-Ly.torso.radius).toFixed(4))})}this.seek(0,!1);let t=null,n=null;for(let r of this.replay.ticks){this.seek(r.tick,!1),this.renderCurrentTick(!1);let i=this.renderer.labRigs[0].position.x;n!==null&&(e.maxRootStepMeters=Math.max(e.maxRootStepMeters,Math.abs(i-n))),n=i;let a=r.snapshot.payload.fighters[0],o=Math.hypot(a.velocity_x,a.velocity_y),s=this.replay.ticks.slice(Math.max(0,r.tick-30),r.tick+1).some(e=>e.snapshot.payload.fighters[0].is_downed);if(o===0&&!a.is_downed&&!s&&r.snapshot.payload.phase===`fight`){let n=[this.jointWorld(0,`ankleL`),this.jointWorld(0,`ankleR`)].filter(e=>e!==null);t!==null&&n.length===2&&(e.footSlideMeters=Math.max(e.footSlideMeters,Number(Math.max(n[0].distanceTo(t[0]),n[1].distanceTo(t[1])).toFixed(4)))),t=n}else t=null}this.metricsEl.textContent=` contacts: ${e.contactAlignment.map(e=>`${e.kind}@t${e.tick} glove-head ${e.gloveToHeadMeters}m`).join(` · `)} · max root step ${e.maxRootStepMeters.toFixed(3)}m · foot slide ${e.footSlideMeters}m`,window.__labDebug={roots:this.renderer.labRigs.map(e=>e.position.toArray().map(e=>Number(e.toFixed(3)))),graphsActive:this.renderer.graphs!==null,heads:this.renderer.labRigs.map(e=>{let t=e.getObjectByName(`head`);return t===void 0?null:t.getWorldPosition(new X).toArray().map(e=>Number(e.toFixed(3)))})};let r=new Blob([JSON.stringify(e,null,1)],{type:`application/json`}),i=document.createElement(`a`);i.href=URL.createObjectURL(r),i.download=`hands-lab-metrics.json`,i.click(),URL.revokeObjectURL(i.href)}setStatus(e){this.statusEl.textContent!==e&&(this.statusEl.textContent=e)}destroy(){this.destroyed||(this.destroyed=!0,cancelAnimationFrame(this.raf),this.renderer?.destroy(),this.root.replaceChildren())}};function mC(e){let t=new pC(e);return t.start().catch(t=>{e.querySelector(`[data-lab-status]`).textContent=`lab failed: ${String(t)}`}),()=>t.destroy()}var hC=class{root;renderer;scene=new rd;camera;mixer=null;actions=new Map;current=null;skeletonHelper=null;model=null;raf=0;previous=performance.now();playing=!0;loop=!0;warnings=[];inventoryEl;clipsEl;warningsEl;timeSlider;constructor(e){this.root=e,e.innerHTML=`
+ +
HANDS MODEL LABloading…
+ +
`,this.inventoryEl=e.querySelector(`[data-inventory]`),this.clipsEl=e.querySelector(`[data-clips]`),this.warningsEl=e.querySelector(`[data-warnings]`),this.timeSlider=e.querySelector(`[data-seek]`);let t=e.querySelector(`[data-canvas]`);this.renderer=new yy({canvas:t,antialias:!0}),this.renderer.setPixelRatio(Math.min(2,window.devicePixelRatio||1)),this.renderer.shadowMap.enabled=!0,this.renderer.toneMapping=4,this.camera=new gh(38,1,.1,60),this.camera.position.set(.4,1.5,3.6),this.camera.lookAt(0,1,0),this.setupGameLighting(),this.bindControls()}setupGameLighting(){this.scene.background=new Z(`#04060b`),new URLSearchParams(window.location.search).get(`fog`)===`1`&&(this.scene.fog=new nd(`#04060b`,.042)),this.scene.add(new ih(`#33415e`,`#05060a`,.5)),this.scene.add(new wh(`#2b3450`,.55));let e=new vh(`#fff4e0`,115,26,.68,.6,1.6);e.position.set(0,7.4,.9),e.castShadow=!0,e.target.position.set(0,0,0),this.scene.add(e,e.target);for(let[e,t,n,r]of[[`#b9cdff`,-6.5,4.4,-5.2],[`#ffd9b9`,6.2,4.1,-5.6],[`#9fb8ff`,-5.4,3.6,6],[`#c9d8ff`,5.8,3.9,5.7]]){let i=new vh(e,60,30,.7,.8,1.8);i.position.set(t,n,r),i.target.position.set(0,1,0),this.scene.add(i,i.target)}let t=new Ch(`#dfe9ff`,.7);t.position.set(0,3.4,-6.5),this.scene.add(t);let n=new Q(new Mp(4,32),new Cm({color:`#2c4386`,roughness:.9}));n.rotation.x=-Math.PI/2,n.receiveShadow=!0,this.scene.add(n)}async start(){let e=this.root.querySelector(`[data-status]`);try{let t=await gS();this.model=t.scene,yS(this.model),this.scene.add(this.model),this.model.traverse(e=>{e instanceof Ff&&(e.castShadow=!0,e.frustumCulled=!1)}),this.mixer=new Yh(this.model);let n=[];for(let e of t.animations){let t=this.mixer.clipAction(e);this.actions.set(e.name,t),n.push({name:e.name,duration:e.duration.toFixed(3),tracks:e.tracks.length}),(e.name===``||e.name.startsWith(`unnamed`))&&this.warnings.push(`unnamed clip at index ${n.length-1}`)}this.buildClipList(n),this.buildInventory();let r=new URLSearchParams(window.location.search).get(`clip`);this.playClip(r!==null&&this.actions.has(r)?r:`idle`),this.skeletonHelper=new $h(this.model),this.skeletonHelper.visible=!1,this.scene.add(this.skeletonHelper),e.textContent=`ready`}catch(t){throw e.textContent=`load failed: ${String(t).slice(0,120)}`,this.warnings.push(String(t)),this.warningsEl.textContent=this.warnings.join(` +`),t}let t=e=>{let n=Math.min(.05,(e-this.previous)/1e3);this.previous=e,this.mixer!==null&&this.playing&&this.mixer.update(n),this.current!==null&&this.playing,this.syncSeek(),this.renderer.render(this.scene,this.camera),this.raf=requestAnimationFrame(t)};this.raf=requestAnimationFrame(t)}buildClipList(e){let t=document.createElement(`div`);t.className=`model-clip-list`;for(let n of e){let e=document.createElement(`button`);e.type=`button`,e.textContent=`${n.name} (${n.duration}s, ${n.tracks} tracks)`,e.dataset.clip=n.name,e.addEventListener(`click`,()=>this.playClip(n.name)),t.append(e)}this.clipsEl.replaceChildren(t)}buildInventory(){if(this.model===null)return;this.model.updateMatrixWorld(!0);let e=[],t=0,n=new Set,r=new Set;this.model.traverse(e=>{if(e instanceof Ff||e instanceof Q){let i=e.geometry,a=i.getIndex();t+=(a===null?i.getAttribute(`position`).count:a.count)/3;for(let t of Array.isArray(e.material)?e.material:[e.material]){n.add(t);let e=t;e.map!==null&&e.map!==void 0&&r.add(e.map)}}}),e.push(`triangles: ${Math.round(t)}`),e.push(`materials: ${n.size}`),e.push(`textures: ${r.size}`);for(let t of r){let n=t.image;e.push(`texture: ~${n?.width??`?`}×${n?.height??`?`}`)}e.push(``),e.push(`bone hierarchy:`);let i=[];this.model.traverse(e=>{e instanceof If&&i.push(e)});let a=i.filter(e=>!(e.parent instanceof If)),o=(t,n)=>{e.push(`${` `.repeat(n)}${t.name||`(unnamed)`}`),t.name===``&&this.warnings.push(`unnamed bone found`);for(let e of t.children)e instanceof If&&o(e,n+1)};for(let e of a)o(e,0);e.push(``),e.push(`adapter mapping:`);for(let[t,n]of Object.entries(pS))e.push(` ${t} → ${n}`);this.inventoryEl.textContent=e.join(` +`);let s=Object.values(pS).filter(e=>this.model.getObjectByName(e)===void 0);for(let e of s)this.warnings.push(`missing mapped bone: ${e}`);this.warnings.length>0&&(this.warningsEl.textContent=this.warnings.join(` +`))}playClip(e){let t=this.actions.get(e);if(t===void 0||this.mixer===null)return;let n=this.current;t.reset(),t.setLoop(this.loop?Gc:Wc,1/0),t.clampWhenFinished=!0,n!==null&&n!==t&&t.crossFadeFrom(n,.25,!0),t.play(),this.current=t;for(let t of this.clipsEl.querySelectorAll(`button`))t.classList.toggle(`active`,t.dataset.clip===e)}syncSeek(){if(this.current===null)return;let e=this.current.getClip().duration;this.playing?this.timeSlider.value=String(Math.round(this.current.time/e*1e3)):(this.current.time=Number(this.timeSlider.value)/1e3*e,this.mixer?.update(0))}bindControls(){this.root.querySelector(`[data-play]`).addEventListener(`click`,e=>{this.playing=!this.playing,e.target.textContent=this.playing?`Pause`:`Play`}),this.root.querySelector(`[data-loop]`).addEventListener(`change`,e=>{if(this.loop=e.target.checked,this.current!==null){let e=this.current.getClip().name;this.playClip(e)}}),this.root.querySelector(`[data-skeleton]`).addEventListener(`change`,e=>{this.skeletonHelper!==null&&(this.skeletonHelper.visible=e.target.checked)}),this.root.querySelector(`[data-scale]`).addEventListener(`input`,e=>{this.model?.scale.setScalar(Number(e.target.value)/100)}),this.root.querySelector(`[data-rotate]`).addEventListener(`input`,e=>{this.model!==null&&(this.model.rotation.y=Number(e.target.value)*Math.PI/180)}),this.root.querySelector(`[data-offx]`).addEventListener(`input`,e=>{this.model!==null&&(this.model.position.x=Number(e.target.value)/100)}),this.root.querySelector(`[data-offz]`).addEventListener(`input`,e=>{this.model!==null&&(this.model.position.z=Number(e.target.value)/100)})}destroy(){cancelAnimationFrame(this.raf),this.renderer.dispose(),this.root.replaceChildren()}};function gC(e){let t=new hC(e);return t.start().catch(()=>void 0),()=>t.destroy()}var _C=document.querySelector(`#app`);if(_C===null)throw Error(`app_root_missing`);var vC,yC=new URLSearchParams(window.location.search),bC=window.location.pathname.endsWith(`/hands/lab`)||yC.get(`lab`)===`1`;if(window.location.pathname.endsWith(`/hands/model-lab`)||yC.get(`model-lab`)===`1`)vC=gC(_C);else if(bC)vC=mC(_C);else{let e=new lC(_C);e.start(),vC=()=>e.destroy()}window.addEventListener(`pagehide`,vC,{once:!0}); \ No newline at end of file diff --git a/web/hands/assets-src/Barbarian.LICENSE.txt b/web/hands/assets-src/Barbarian.LICENSE.txt new file mode 100644 index 0000000..877e447 --- /dev/null +++ b/web/hands/assets-src/Barbarian.LICENSE.txt @@ -0,0 +1,33 @@ + + KayKit : Adventurers Character Pack (1.0) + + Created/distributed by Kay Lousberg (www.kaylousberg.com) + Creation date: 13/03/2023 09:00 + + ------------------------------ + + License: (Creative Commons Zero, CC0) + http://creativecommons.org/publicdomain/zero/1.0/ + + This content is free to use in personal, educational and commercial projects. + + Support me by using a brand resource provided in this pack or by crediting Kay Lousberg, www.kaylousberg.com (this is not mandatory) + + ------------------------------ + + This asset pack is here thanks to all the wonderful people who support KayKit on Patreon and those who buy our EXTRA or SOURCE packs on itch.io. + + And a big, special thank you to my Super Supporters: + + - Brian McBarron + - Silva + + + + ------------------------------ + + + Patreon: http://patreon.com/kaylousberg + + Follow on Twitter for updates: + http://twitter.com/KayLousberg \ No newline at end of file diff --git a/web/hands/assets-src/Barbarian.glb b/web/hands/assets-src/Barbarian.glb new file mode 100644 index 0000000000000000000000000000000000000000..66d312ab6dc02b35fb648e7585bfdddb4e02eeef GIT binary patch literal 3613268 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

KK}Ah*&ysLdoxI=o9c8aCIK5bLHt@s7-j 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%0A=no!y@J&l>eUK3wPj^VXzXR*-SOl91~ zar7s<%T|rrpe!B`SlR$Qc)byiCcX^&&#h;%YPp$G66{aI{^6(%lC{cy0QReijS$a4 z#Pi}*5(z^*IfzFx(58bCPbb9F7@UBbcoz1n#D0BuCz0dWZ%yp?X)8VIcXC2$XYAJ$ z_L{gocp`H>Ls&z{zThB^Jk3j#t zdl>bFpOck-D2Jb1_;K+IqqhuZFjv0_zTc!T%ZH!UjUu>3PcL>yr9WoUmu!Z94fIWW zdXa^%+LQb1C(#4X6)esSJbwR7q7O#svoz@ML4W?ag3N^e0rYQ2=#$N%F?`eIUS!P& zchXmhzwv73Ktn#Xpn1@jL!bV^oz;Ne3i_xIE%@8-(fsf8{aDFi%3iF^C*8Fiz>jUg zKS19c`ohDMxUb76-JpM&YeBP2V)?B-iR4S{ILY8rKG}Och`zi$kYqyt270f!amo)D z^9h6g{pEq|@;dPJx$TkMlqu{*hdgplXBKG^70BOCj^_P!_9{OX&S7&6^T_;avsle( zfqeQla1$5LVmAuLE9Yo!Aji80^Jl&NSR(Y(p*JWPFZ~1k3FxDH`;m9>V+%j;3+Ip> z@G}*DbfyK;3s|=**6puMA+NFSRjk_>fA?CJz0%C;coTaz@Fb0Qji zT}^1>Bq#pXcsJ|#xD~x|^D5c?(~SE!vR3|eIEL3)lFXis{)@Wbtiz|7tz*mnqbEY| z2K{8Sbwqz_kkX`a8e4rLno97w89px_E?MdHczqu;9K$U8Q};2p7{+6dy5&NB}eBkBoVML zg}q*43)=SCBz^_IIKKM!aN+`N5%y*0klVwVAD_(@yDxNFaXE$$*|(SopSL$e$+)G% zm3F{%IBXiHuWYySatzIY|FqIUB}cLrvU|tz-C=K~y>kmAxzMjGk@e&(^hO`0z3GME zkx1O6Y-69Y)4bVqT7BjwrSK2T4@bJOge93M_4tQCT_4(LYGb+F$H zd*e;5c`ucHapTr}NN{U%V2m3j18w>3EuQSiaaVB4wdQ2F7whSsN*2U~^9HkQ$cpYM zRPs=)sRW{49+D zmje7`z|X;2k@WcjEAnb}G=Jk9#2g-bvXOaF+~9r?YXdwQ_~*SKVw`0~-oj>?a}c?Y z9L|i8b4br1x78|hOXCppQN(P1y)}J?y_8}vo&#;^q+46q)Ry7Yt`Xfeyvsytsk@te zu9D)C{3(npuH}=Fw-a{te~?WoW<`QK+oCYY`AEqgPk-9?!X37@R;!W*;RVFKIiA%X zM@ovI?{?u1X+5@8i5B!y^Dt^t*n_lvHJSP)W$qOIt>FK8=scI;?$ybzGn480gob3+ z#g=q5^3(CQEfwo(Vcqk!lXtx^9m49FO{U$d=C|{mZOJoSwvoJBw)Bl#kqBIuv6@lJl z)ehg1y0G^`oZ5(|81bx1Xvl6O9yi4E33I!6ekp1AV>-?Gvbo^yg~#mZu9386T?gj3 zt~a%#Rq50-OIY=bk6AJFZgm~V1nAA7k36%4bo2emT74eO&zZC$O}h1@BYNv{t-@ub zi%Nghq!lxPek}CW3YW3iq}F^{s1DucqeHj$8B4#MEFjA0<%E80#y;=%pf$%^)AAB; zI@jz53DV_chFvwj%rcSuQ`C?Cm_TU1-Hqt#PK$}dD12YphXUsJz>vnbs?KLTn8ngl zdefK>9<+0X2{)aRO_cK~Jy=ai*4C><*X?P>t`vLlq(Ez$IHEsY+w>M2Qh0#qc5BBw zkFUa0K7A*rn~kBy!MoVy*4ZSwvk{9v7_-xA{4~0}pATjA=6Y_6t3~6W7xy*vJO}!o z_2+u7imS!fzi-B>?ZNYZyfqi`$0PoDUC!c*nz0L5cWR(DPr$m#SU0}#0JCmu&6!bp z>21RfG^X=7x_ft)#}598BxAoTvETfne%v9H(E8YKTBpUV8}@6C{q}rd$lWm4u}*sF zzlI%nBIefGk>wH3AF*-BZ60#F$47@RL2ji}1>{-uawhUKt1>@41^KZ+etJ#GW+Feg zke{XXYVkVAgM>Ux`t+S0K^}CF2YuUYW-Apjhcj*HfJ4psmB~@G)NLp^+JoH)+0ABcX~W+Ix8QnpVyVfYPRzEU3mX^SjF+r7;$0J} z^K!#js#o8O8GmT|6g>uDx)l{jF(BNO;G8*rDzNiXW$h(bZ{D^pKQVY#6kJOoF~quK~pm zQ^NQ<=+Ahh7JnYUgw=$ff6pFwANj$XFM*$%SMRjHI&BG~*w^do4e8a%HK`5u<%xai zZtX#?c^0v@$V1Sf=2Yb26!O4ay-8!;8|W zmRb3dosA;#nZpV)b#S(H4*KWd#JOPQ%XUG(1^W7fvy~roZm_HHW7N@yje(yv@S|5P zL+Nw^+-rLiNavJ zzZFBjEt$y%HcV9R*;m09KD(A4g9+qyvKWTVrBhu=p7xsi5v8Np^l!?oaC>^g7mkhIJo2N+E@a^E~3zrhe2LaqdE#N0qb4 z80>2x_I0_lAH9x!y}-Us>ShpIjmYCxm9kgs1OLz1_EA03^!y$oteqf?3o;|kVQ_2 z*SAvs7|LY-2G;m$KFk+VtgkuNo8U=GD|Qo2xdHnWVnDPxpG!`X|-R7nUKB8o~S63w9rMTC$t%b2l9I(wVv$4sWo z^E}TU?>a~KZFhh5d!Fz0yWaoxUjOI0_THbh_uA|1z0W##pVh6i%n!)zn24k0T1CG? zPg<8`M{4sgv?4YycagJ~TFJ7aRrE`(!Gy!Ip43X?$L{5qYd?1^lI1{)19Ce(`e?aU z(SH;5T7H=b=O0>v)E+rsUv7ChvjpFs`sdjbq?et_4Vbu=&F- z*&nKX`_=ODpY(bEk;e74{A7F4)D|RpWSP7Y<&@`P;2+wqTx&SIr7Ra&HkR7~z3P=~ z75$Q4&x?Wb{ISzQm93;N_4BQ?PidaiO7o;vx-Q>J`jV_@d3}X_#r0I}OXJc!X@C13 zcb4}X?`{r~e_FoCm;H48+kEnG#*I7ol;rf=m@7JYBo?oxjM;<@fr-M8` z*z|xrUWm`9WPefve|dawvrh7OgNaAw@u(?B|JC?E+5ex`XZj&rK3}Po&QDdA&Ph6d zsg=g1b5z{NKgp{4lAKu7QJyEYsMP>Y_uW_IBn);ZO4CGhOBJ z&u2`_+VXO{-Rg4x$dH5bd{uem;(GG3+XXwUE#Kb*gq*`&*XwEBzc%wDl|X0;33R;(pN$7DsE7Ti8x@ zZAUt3^n&;9?Z`x(2V|-+jzmPc!ARZ4NMh)tBaV&gdpz*J$tWR?)B6 zmtvoa>nhgqVsuZqf2R@IVSS0X+6NG8gU96Ys&ND+^?|h7jY*{-7x4Xx`(1sLYzqt| zhGp`^GI`?a%cM%2C`j$=%qN1i{Z&%fg39d*r>DZiT@OiN{tLN1yL7)`ZG4{`tMWo_ zZ@=0nyxx419GlDJcH4$$|2(c@Uz&gRnTOE6WDyyBXF6$GEuD0S735Fy&B~YL@l(EU z<#ApPZIMOl4N4^=yysz_ru8J~>>$$k`bJ{@X%3;|x61nY9hb=SS1sJ7Y^CdT+D2vB zT8sfhMs2*$nBc3>O@sm)t6+;k}P@tXI*uC-zuJm%Ns#z zAFsvVVPN|`qE1=cfk^r%#udx@YV+I3{d2dsE^A%o@vP-%+);(jsJ6=;(GtIuK!!()zFX1mH#-;|6KF`bT+y=_-3sCi$!q`|N9o- zq*YZ>emx_S&EI?bbuTNrKgu&xIWN_{E7ys7iZLC;I=a=$iiCfS{pv5TC(Yse6_}r2 z-fsE%s+EAPGm%rDN)~G7~zrOze*Vi}9&Kc%37^gg6 zRr!Cr{u{GgVeUmYrTs3h9`Nn7y;6=h?+Y4ZKq<#8bOHU19!h!Uus(2ec6X&*_k3T- z-R-E9J?#5|XxLFH8_n{7^b$Lze8|%sUafah%AQ(okoVL@DUXPAfuzd)l=4JlSLhVy zu9SnAEA*@Md;Q|2{-C>|opL-|GaBN8mOCn*pHW89a4;-eDaUtWo&(J`Pdvcz&T$o~ITAm#)VvVO?)KrTl(tEIg`Ypp?@)#=FF@XG1SRvHtFxCc`S1 zI!Zb29p)oC)>$ckx-uCSgw|5ZFH1~7-*Fr1*k!+L(`0rd81Sr+Y{+G@TwUK7uHbi$ zCvQKLjIjWP(mB*+y&g7Vs3`d;5M%@*m|#nBT~EZjkbRsLEr9y20p--pX-R z`L$pQ@%X;lgr-HZeO0-Kp({Mh{p}B`vgSy0_-33+-bJsF=c~#FF3q8#@l5j0e2F}+ zD%aACgoClSl;^E`GXj>9`%3xYoe1cB@Saj`njZy4(HoR<=!_Vse1Eu7?(iJ{PU~$q zr7Zl6f{=PEl=8L~k)V6xnoJ*M8FaU0+#0re1B(+IECA`dm+z6E7HoLFdDy_ndRGzJB#O@Z$O*vfRCj zJbvYH5Og{B>#U{q?=$QR>T7?0zU+F}7g|{T{`^ptXLQ2%4miw_ZAtU5Q41)JpGBN> z7R!CAa_uucpy1$0<$0*eCMTQ1)oHWIyyZLP`Kq#3J6CuLzx_*9K6}^%u2^M|CORAB z`Kt1O$?mYt{P*XZs{E;gDSZE$L5BJMx~Ho0H`WJgt2ryzuPV0`TS1SuDP)mXl6-wt zx!TI!a1Qf7OJ^nhrz$_I(+VaQ&LB5K66N`-@*>(D*5Y>uzh$f=#%rCAE?Tqm}AL$=>p>4Bu<{MD$hvjhJTkIth~Oe{J;JAcPum*#K>Q3 zm-ZN*9s+|BQ{}ZtvQOo{5c}}Af5zAKfXb^JlJK*#1?#V|%JFP#E0{L5H)$AnNA6RV&Alr_%fI%J zX4f9bl^j?L|fe)cta zTvhgs>i}6B?8){$H|23vx!-sz%wO7>Om}=IkE_ZJ9^1m~HLXb9$-ma8Di3Xm|8^(u z*UwJL-`ZcA2*)<}lWj@z@g@@?Ov76#du$AWNqMuBGJP8g<`+XNlv^H~2)?oXmE)>% z+T3vH{K;H7{!eoB+ezSgrJYj$pX7$SCP3e1zDj*n`LlZ{#HvLr$5mycIpe{^EkPLk zMZ-=ykAIS%-yILDA5T@<`zJX`BL|S8_K1N6Ekl$)e`K$PDFvZHlZ*=C`Z zE_mNBAt}@JW!cHs2p(@+Mfx?!_@jI}+XIfK{eC`GrfN$2U4Wd)$#jyNu?D(k4q zH+$NGT7$-9=7B2mxT@UMc04?G`|ZCAGs0o(<=_6aTeAl=dx8H>r|iGHLNoXoxr8{Z z^_SQ1bb~4QYi5&1#7~yv+d6}m)9-j^^jH%RST4Dr-d-M8l`ZT%!LMN}rF~V|*4G$1 z2d^e8`u%!__Q!UC?^U9d`VQ7zz@THaQhsi04)=;PN%M_kf&-WWQp%_WXChsp9< zk8TjWCq${wF6cmv%Nb(rKUf}59MczG`f;ECGkd|Bt6oa|=xdFj%FlJA#>i2!zSVVi zaG3v_->J&eCN=_h)2$>-Y%A-l%8^1hXsGl1=WFlk&A={c30bK=TGkhym_w(!i^+r? zzxdjR-A>TjI9$0NSBEZew$|_cTW+?11n*2z3v)_Jx9rxD=HTpt`RF^;Kn?A}459_xE|I%G)hkz@oG) zVr%@1AFIk%SKGk!*i5ofy;Q!ws@yoL3*;tGBp({Sm19g*`Qzbsa6MoynZ5e9JYQ9= zq3Z|>+9i_g{x9YEs`7{wH<*66mvVoq^4v{bU|w7px$IXY&)>c|0(P(8=@_DU{f}~o zhm+vT#V3w8k4==Bd`wB%( zN66P#l~e4(AoXq&LCfG*jI1i>4H*yZy&QzEpK@gT|0FwZ3kJ8BeTAzH*US3G@NYEoM#ukMKQ?>rS?mbyVef_d}qKcZAUW$O(CUs`A$9__uN!Un%YX zlT6LSz+!=${On8XQI+lYOoCBCHp+2TdE>6h;C-W(kezTt{`vh+a{BZMpj$FlX-`$A ziDRM0wS&rWRXOEEFr3&lPdTnC_wVfkdUsdk8$QSlI|B5A~^{dKePkrFtmeP>FTa@FfvcN`wj)uDO{;SH3FZ+Xm`yS#RsF1-uPXQ3?hg~ffBmjaIzLsp6}~Bc621*^ z6224A2FJCq*24TJ4rLH2s>hNR1@$mh#FXHU|yBB zn7twq>qLB~U?=RUigi`Y^8)zh!b(_I!W=8cnCYS&ww3T*f_7LsV@?(6JG(AeY|vIM zd<$Y_EE@Pe!aDfA!kSp5H$JN4TIyk`f&WVxfNEfo-dZT-9RsWl5ZA}ix>(mmJEr(n#kyG6 z#lEIEW`MQyK1My@&mK40j{t1!{`5^e#r}t(Q`5ir1@yqte?no8j7x za6e73mfksOg*iQp@tvAe@eZ}e_6FWBV?5{fh+5;_X@f|>BIU`k!m%z`I^Y~Dd`IM5 zEUx(W$QG!tgCz||tg)3c;dI73+7?GALAzlcq)x?o+H+d zxbrG_9fCE%d(s5g)fwx~c;BkwK009C0p-fLKU=JAagG)COYiBl!Rxd@FYAo8lxwIh z+Ofmh4&~9_$J!oOIt%mQY{q&s zW?`V1VJ95xaLn~F9rHtM#Cjv!xP>gjkW)OC7LT)-d&2}g*Y-4Gb;_ldKlt6*yD}0H)ao6 zh&s+#JEJ6JpILzQ0?b7-80!&OkHCx*qcFF`60DbCE)OZwNG8^q^2i8myJ7Lcydq05 ztIs_wSJ09(YI|c@gd>@ltHKA%NYwDf%rQ%__@T5Iv;B<3(i1aWJitsf_pxMQRtp!* zl9Y~R9HKDH4&;KR2j(tH#au3fuyn^vJcH!AJLa=UKuM~lOhum9O0_@QypH)S#$Y`L z*K-T)jl+5z=2wZw@t#=s#1SbUNDkIHm_O$#UOx-#EcpsS*mlPff-B3xQ+t5rGS2UT z+ENCMr8ts>>kYvYj2aX0baSu_#T_lj3{4}k_~1x3-i=@^PT0E=v*<|qd6wZ?S0WmV z#UD@42YaOKQiE}9C0bm8B^WLA#8D~J(sCSGhP~3b7ix^fm94}Qf*E?&V%8NY&(A6x zS%I^>usGqlug0EHSVrUhUW?K&EW`2KM`K?vECD!YEv|YEmhq_RjH9Eltj3X5*ei_( zqQ)@X(^@POP+EhUfmnK=2i(KEcNa@0-k~X|9flR z5$>38!xQ^o;m9ksaLl@*jagWvOe|XJ!!ehK752WwY%x-fn&)VB9p*04RTtGX)Fp7xm-Vc2Q^e{Db;4eBuT5L-=_B>f!k5aR@(C4&kSY2|lM6@KfU^ z+MI)>7@z!Wc-=TG`Dy`}4Wt?7muQCBD{OH6!_^nzGjR`}m3w%m+30JRvA&F6GYe2D zu9(Hc4p;AmnRqH=T^Vy{yvIy7d+?6#QPalEIU?rd(NKS)Rs}Q2XsAnd70e9u8S~5( zpf?oY9n)6dgZXf@)px6DVuqBbc$Kf1TWUMj+c8(rOVoLU^&`Bik1*TQ53GM69*du) zmGINF66VXOs{T=u*+JT1 z^`=-G;HlI_+dtJz(0Wb0wkg)8>hCajlPR9uJGDA^c4~OtdRW)P)fnNdrkKI0A-2Y7 z(+sg0TI`HjdCW1JjU{H}A(+cX%HGorGu|9llX?%UHCI1~nXFo3E}S!Jt=0chlQREU zV>Tgs%-+)n^$F(3aX~9im;=TQwfZ9JgrhCdMmNl`6OVUG3u`U>lnBI3E+JTlV6GNt z^vu!f&+(kYunxnVE!FUZ#;JeDd*^|*2j*`H$4`sr_$l&S%?E!j2cyOe%-u2)>yeld zW)kL$@x|H~^VS5)`C|exhs+qv8q*K2FaS#^W{jDPqf*uzU(}w2BNMRl51#o6H77jnzwnMY;r(fj_wFLz8Ef@RYVGmd z&#O7&$)8i}fOq1IS|_|0W`CU$j&AA)E-&ZPig4+9XCmoDU711O-$^CM5PLlvLF@F} zB;)+yjj2~1CgT>{L&bjG_sLjm=>#Eh^ky0BKoinof0~TlJNS@Hy&kg7M?N#j-?dN6 zYZzLR{$JzA2B$@7ZPMKT7FVs&gGzIyHMF^#D&s5pBZy1CO)|Ezz^uFLM>qp{QRXTl2l+LO*o^3@qa9(1;JBOcSr$s8|@ix;<#KYz% z*Tf&G1chEg8C$&Mz{dX5x#qdd;X?=PkG%+k}Ps<;IE z-{Lx@eg%G3W~Vjoi^u!QuDfIO1j1v7vURpynoM|nF(gGk=lfo%gvTyr`<3*0-0PVY zmG&js=dt3fcHw>Dv2?c5n$vJ!JXYKb=^S|6qs+c5o*R$Ho2Lp5jY>$v=n-_!*vh0T z;*8-v>8RR-ylhxPS}ZoDpHBFb6NoPjek3kGKaH$Jym4d$(I0V7#P{bk5bRN>3F77f zkA&n}gnVmILf$SnC11x>Cbtm(@a;+FH%k>xBX*iTf;cZ4XL}5BqVHI8*CbU`^qcxs zrV9OS`h-e$UZWk~WBydKZ;tk3&rPG!b#LNzcOaJ5vlZ9V;J81P)>(q8VqO{*SxZloo#@iYro;Z9gHLTf~^iMrTTr{f^k6G3v8F5{Wj=~1S z?-1X-WGik%9rLtfB=LI{TD?oI&;$FQpQ}gi7>dH&!hIy&$W`c3R}`x5*+)9Ob`dG+ zSfl>r6ZNRUvLM^8sDGwIVsQ<7}f1xNP#8wye&o%8Y7VjBvYm54!miYN5{^N+>W52Zi)2Jh@ zKN;7Lzlu;>aJMT|t(PnRKJ1@xoYy6BjZqh<4$BFTCmQsjF6%mgcw`RwZ}Eh}d34%w zYiM8*KzJM!u|w`}UTQ}E4L+xLRMvl}=_l~`Y*~MbmY>LDh0PYFX7u0SiDm0FvIwB% zFz#JiKkl7Md;f26G@hrVkLO8wEZrBWzj^5z`5yfnymf#U49>}y^?7`)YG<&ypD*8E z9yi+jn6%9P)vv(qhdmZsKXio3O$A8B2MrSo8Vdc*LcQo$%PFbEY_TTUF4jvyoJUr#H$Juf^csu;;EL72%WGi8dL{)nQKCJi_A^ ztrKmI|7{JGI_D7{*ByC0Kd^NJ@c&jsBmB|AK>jCM90Z7%ooSi0`?i?5&!z&e&~~J; z29EHc`*czf-h6qLtdl+7ko*bz1sGCAzl0Tbj(442A(qx7UH5HZrtC`!oT70@bgAS9 z`ES>eitx+@sr2LGUeI;G2vQM#wRH*25S&2cemJQJ&)Y<0JD+zr1g!|aE?eiK$KkXhTw~ZNQQGg^P4nr$!PD^! zrM;_tSVt?udMQO>T;@X(c{iC>g!@*#Abx1|k{lnCMJvLVXDsQfgP%yidVCiahwrQ= zw6wb>Ox-t~{u`|SR~(hrvpm|FR)jy9&ZW|NR@WFsE5d6>FOt`DAwrw-cx?T(^aieH z)>lLNZ*Z?FTjcdDq+HzGdqi_RWy|8(a;~EefyOE#8?_gx}-2y~Z^xsWysKgj?Xf`xg0*oZ22p zD#CLz1iCU)9nv(Wlm8Z1Mt^G?f0p#RpG+#kuIO)Xe9sdnzbsM_ZkO_wug`3(-`X5*1QB^GO_w%oQ z1-@W>oZh@`4nLDa1s>o3e2m66t%2|H3l;u^4Tgq_ihc>7FSB!TR(U*R^#$=>%Su3f zvMG<-&7Mo|V!!_fU&`ZA8xK*PQI){q`v{T8K4tx@zK;-iY>9U6pq&#RdI2{7X&VLP-2W11TJ<^ zV&ubwiyf30;|0RS4oZyi0+IM_S?r+1$hQd>J18;od|9U~c2HvE`La$~?4ZQR^JSf~ z*g=UEcFJN0xnIHxJ7uwhY)8ThJ7uwhtS@1V7i3%(J1DVY{bjL(Y)8V<`AGXMiyf30 z;{{o#EOt<0j28q+zbtl8VvH9AE_P62yh!YzNY0o!eh4~!Lt73rRjvnOFCx?iWs3Hyth%NpokGF!kzO21O=bx z@uw?C1qGky@uSXb1qGkyv4D0Ie4fY1r3uH+|A>)$%l&2i{6BCRKbQN<__>VB`1v0( za&Lj-;eW))y$Q#||A>)$6OM=f5hM4O=a%tsB}VQo>zDCxB}VQo>y+_uB}VQo>y+_u zB}VQo>y+{EKVszGvVIv4|0723EpR;iA2D)of#czS#BY*|1O*ST2qX6vI3E5-+~kZU zQSfjcBljj85C2E3{#P7P@bHQ-a&N-%@IT^ZqZi5Rk$5!}M(!=It&E5NBmVnT98vJ_iZF6-!twAw z;)Zx16+FBmjNF@WJp8}HkI~;0JiH=|+*{yy_#d%#{4S#4y*xf~Z5L7SULGrSB;Lzo zg^t8~c^o`tiELluy*!?DXo+lJ;=MdRTg6M(mv}Fa#c(fKU*f$yKECa?py0hco@a7L zQ1D(JUok#T6g-y4Pd*EOA#wzl2N5>_|M8$H-j;j>jr7a#zCfSS3d8N;n>? z#K>J`T*hOS7`ZFqc&rj5cNI7utHcZNyUW4Zi{R%A9icsbr|ETI7PJ{F2ub)|r>RLe zyuUoM9Bvz7E$gQ=$QNGu#>o1&i@ykV=~=S=2O9&z;|_&2W&MchZ-w^A4<-8!LOb#i z=Sudo7kiY$-|+iWX+3&|Rf#pumGndP-H8=mSJMAh99s@&4E7Xu*Ifvk-dT{R*E0o4 zU%SNsvgKf*Ag{lFLODFT)3^dj-!9yO@OX(`Sb;P*X6<0YW4r8t0?AG!O(y>a`w#IH z73+D3-{(qu(Z#*+I5)zYD)v$l-h{vNm)2vCXT{@SzZiLL7M>fA1F&Dxzk&B+QhJuG z^A7I?kN4E>L){WH;f!4kfybfy)8x5L@xIg1o8`Gr@xJr8?mEAMVF#8=?;M%R<1FtS z(Y!LY#p8>NZ1>3pCl+}-j<+6J;DP1099I8yKs>W32Yy@}Ch+*?2WK&=T@uiXfrQ8LneL+X^Vv`{%$Woy zZ4s|`oeLkXTb09{|BIaei=6+L!<_$%od1iQ&r=?A{x5R=PdWcDhdKYJoc~kK|I1;? z|0N$A+pRj~{GW3EUk*z?FX_KOT#a&mPC4JM5KF!-%^ic+;{3TB=KPsfggJkvJm&nF z@|g2&k@IKDW6qyN9&^4ea{gQnb3QC`J}h!RT+I2c$oZ|v`K`$LZ8^;Os>ox`S1FG< zzonetmcx>rC7*KS=aI+D7VO>q%)UQdt+bTXvxVKy*YtziIm_uT53$JOD!x-YX93~y zYI9q9By$SX%bP)Xd~}f~O~_A!TGGF5;jn@JP}Bx1h%Pa2q)=}IotYbKV%B*~8mTQS5Q{T;p%Y}!_;dc*P zlX#mYu+1ic?!0A8mIbbaoW#lH@H&0W#T&H_vKIHC@B8l+dK_O5{wJ%I!+&p%5H7D= z1Fh~K5qW&}K#XuoV-D!9=p_2pRwF~#&wvSG9caG{3sN(B4&0p^UJg5Ztg!9TdI8ut zucROBR@e><&4w?=OUmIP)mGS+Oj-p$6QZbY>2lkTuh+md(^lp1vf|~o9_v=Z*^t-b zzrk%fthG&gKMUL|FBW+mF=wr9Zp}ov>ots~cg?o#ux2K7a$Qgkhuv>Yr8C@tXJ}n& zOciIyQOU=qcb+fWEp0~C(Z^hD?aN`~ zO@E7hKIVdzMz6g*u47vwx@?&TmG%B|{AM?lNn)La^mKGtT>;c~d-=w|wM zcQ$Cp>=exQuB3MO432739#6WQNH^g#=!4JTcD>GY6+VOYjvp?EE3K?ehvGAM`Ry}- z$LAk@5qY5V3QHh7b{*qGXMbA(lP|`RjAAo7uHzc`78+0vSJKd+4eG80 zNA&@O$0f%uix%zEVE-j+5?{R^4evZ1Ml5h7hbN~}{r)LXIK{t0Jh`SBv8_D|Zp}$1 zJoZ>Pm&|%Q7mnlld3@|{3fbYX1hOV25FVfN_aTY6{_U6I$Y*LsmgD-9LITR+$yyp@ z0It9C_x^;(tZ%}=rodQx zcTy47?%9T{954-bm=DCfGrw`I2E$3)cS*20AdXaom%SKCYpqHHcibi!|6HP@2sFWQW2KEM|%@j4UVnPBs^Ap9~V-2GU2iGeOwjS=HNa&lkj*<*>`+a zso{jj((fx2_Ia%My@zC<$I|aT6!v)>RQ9_R$v%%~*H55hhUmj&(^-VabFhEX-=+|W z{XEY6kwJs;-=ZWvj3GQuUOh_gpT8x8@OWu*0+H;ORGvk6oQ?gG{cG6I~gqY_bDW8lmP^foKJYXuljg- zZvK^pgvXMO+s7tKeFc{6Hy+khXgNb!X>_2E*mqdP3|6ZDz745+*!9DjZ$pN?Qj; zLDcX(VWG1V*?4*|tUPtq@ymN{Sd?uH)ivh`33IxG^N)4pN=FCBsb?m@>+6$g__@9i zx~wu-PkJI0x@;Bpj*5jsCodBHeYWFmlPFl2B!E@21!SylM1q#$JN+FEp_c1;arq@5 zwtN0ddT>vwa4Sh*JCiIREw>S|Ty0J7e_G?1p%nvR@m1)V9=jcvyyb^yjCl` zR*txdz8}%aaliQln0D2KbsMr@cv{*GoDU9W$y4=(cMr57qacz6Zn`Mged~_7&m!4q zp9@0AIX&q0qQR_9f}RkGdyh{vW`j2t37U8&9n}xgi}?kP`m2LjNTCl43x7r1XT*x0 z@4C}*mlK5S1yPL0KW7ivWmdlu^N1S8^fSc{Cl?$S4(*SFpRXg>=D12?IKE#oqFq}k z_|cIa`SeXpdltcFA9!1wXBSK@&Dz4ls-4);+uww zS$jytmRjt1TSu1Cvk{9rGE=w>y}<2~8dN=P!fsqMWIkU8vi@prLTZ2xJS%AoIhIyz z{;6V`c4QzkYw0UkEzn^tHaCV|Bdpl_^~L1brbaC8(_G;U?&aQMH88hs%C4_6gk`-i z(q=Q0g(+VCY<#mlL~yLlu3mM3meqV{ou=)C`SFpg|LHE|{xG~hXZypobDef2T&Toe z=neyeDj#h27kqI{yA#iv@OtCcs*Hw1lFb8uUB%&&2-umuJwgs6VMo6NtCFLmM3K#0=4nSX+~Ia&=>& z?X!qUsSf-5h9|q7T_8l?(_u?Xa1GxI#N915+0%AzOnY(`eG+zude7~|+T!|eXwRe@ zOdXj9?#q6v2JI6@m_P0}+xJKZmy3i&uWiY4x5komjSzM?B9&P9Cz0!CFxU6%zCyy- zBytw}lTau8$|=s@^P9h?5+ zM#284FEIq)C@6G}`Df6&-aa56+D~rOe<`*#D4>Q*f`R`G4DfhEcYaw&%{~nPA@Tr? ztUely7ABKVMK!7G(*n9n?dgVtToYbC0 zjPLodS!dVLex;joj2l*IC2p=v`!V;YoVv-DtRHJBrjd31*s8 zHc^B7?MU2%%Itp9VA$|^qp;36n7xhKL<4TNqv`i6v#jL7pz(5}SbE2YwY{>APP?(0 zj-1w(CA?owhYf7b+GsanL-VY`bo?$#cb=rdA4bE0)}!d=OLf_vSJ~8a5n(w6v2^LO zaS(nhi!RyMguUL|5*A0Cr3X*^qywKXqUQ%=-oueubWZ6!I{uYE+cMCU?%XjBCXLud zbK1;zR4=RrpZ0pNLmyn}3XOSms1fED;1GzM=hgva~hk#N#DKngY1JT#71``?J_EpuAb}% zZF_E_r(Wlf1U$Rqw5gaIaS9vNPfgG`XvC_t-c0+p>Ig&6WYTs8fuO53i@dXGz;;_O zqLpKVx#H{4*1j<;@WXnc`4A5l*=sMo7k7_rG&)KRa(%(O-&k_-~N(c)Zvvs+Bfj zRs~z>(46+{W1A#8qwhGlIdT!*71xMWesO?QE^5b~>D(24j>fQAFCU4U>Yb*p!MSuw zt)Wa^tuSgXu9W7SU8)Ji6j_nR{ zb_%{bX6P~6ezPl$ve`*4_6%fQ&NmSM+8V-s!{6r`CpM+dm5z@944%wh7{lBc5<+?H$^zG}1BapdU=V z;!4)y+?;0~&}`4&bjz@5;^(O0P%w$WS=2hcH5Q1CcfXr+t+;Q_9V=!Ibx`d-*P{q8yyJ&2iDqdo8-*yzHAB} z>*8z@jbrG9#u2bF@PO^$S$)AT+Ccgpx7wz&I{En36Pzu4uuGxu{dure^jJ-L?P@IC z*VJbh7wIw0u}07u_KHDRu4DgVS1s1y<#EU1Q-+ko4fOi6J^RxfQ_tx`C$ur8sHyc0 z)W3YjkmYtUg#B&wpbOd<33~;pe{Qo^yS#8czGdqP7^_Jn`x)VO1&YtxpUtOsI=$DH z*18{E?z6Oe+tpNKra%XN4KDYY>G6F4t8MK@PfyT z%2$(hjBmzlwA+KXd3L$as4ioR>7j;J)ZuOb<3Ed}vr>GvRBx@>F+16n#*{=c{)&Ul(H9=aXDc%A6n*>w0;7gqB_RW|M8Iih}NgW#0t58@Op)@aWv(SMp3ySOrk zx{0&IiEk&e+ifE;KeP+ef2zm+PF^a`Y!$=8{TtI3HO$$;UQTQ;zNgXAbhfbcct>XG zX~lHDH-@m%8G`n+9>DADQZr+h7sQIWFS;^b-+Q1oE2!?yhTKb_l`s~l7vv^n7V5y5 z1EbifXGHuk?l~>6^JG41HV$((Rc8r%G+0q(cUJ4oJeqi?BRz62ip?+HBIYf~qjpKY zjMiRE+ZIGayKY0olk=^~@#zt4*~1SGhxdiki9_?~j}3mzxc5A2wJDEIj`wA2j24qT z77by44-iYLS<@j25iBJ1y~DTN;ba8}X9*G*Q&1zI}XWHiyh{xA~Fh>vH zG22atnc_M>;4A!_jC)Q#<2t8Xw{fu9R2{B}8Z1uDo&BYmL8?FONN3_Y7qKnEhwA1m zr?(SpJv>14&R*siIsw?yyDi{so5oP(%3R^ql%9;&*>tN3dopgSxZb4)@cPz2?AQUV zwwTL)w!rt#a5_&0#3u@!FZwfHr$tE(_WZ_t@z#fa(DKbru?EWCNLzJc!+Uah32omU_f+PppKx>xjCj(T#~<2 zTsPB_V#X`!{2W2 zh{@5u?2X}G%whb1jQ=!}S!rx_a31iU+}`2NYD_zf{O2}FMSb;qc@BHs-qG|Uec61Y zy)=bApb4mNhx%#*-cv8sH%~rHV(;Ike}8GtG?|*?OxMmVYi1*6=Cze>r5)JeDlOQ- zeQNj{_s;D8#|F$e{s7Uc*`D3HSVDXCc+TZiLD z{;U>q68)uxq?fK2n_oJJUbyqbAzg@Kf9Le35w%y+LmPtGh%bX^+TAA(`i@ZycJ`p_ zjCPX0=LNF#Q>(4IYdvxp`FA{P7-DF1w~Pa*zh7?`P2DnnIQ>x!>;2-! zo&yIPlLlA)*}_vt=(P29$@lXy?Bt~5dy-BX6M8$4jntr|-K<(f?LrLOA9Q?Aos-6N zHujfjQZgf@7EM7r?hkJ48Fa8Qy>i8$d7eH(*R8EfM`jGC!(Zl$FCRy+bW=6)^M)9< zb)^Y4Yi!1DC&Y?|m%6f$`=>;M12OEi*>~~9xJgWZ)(wXz){AMzgd%$WV=!Br8zhd# z{^dKaIi%SxCKjPZRQFRb^Ue+Y`#4m#iPm&`TkKD(2Bvhvfc$UQ}7{7obe!;i~ z6miX@2bJL|#wlAdPQmyEw94X_a}A&OWgYhM$1gE7t$jB#{2tP`X-r8~wc7{3rj{4(xBL-Ot5RJs}Ch3yA( z$zhBmnqwT%ys9C|!FXW|#tSoFO(i)PM-*Tj(N%XNF~oRb9mWf8vv!iV7)Rt_9I-cT zDv{!a(HJk-^xQ<&U>q?6_w0QpleEQnK@Z~v-GfGu*J?8zfpLVcUL7LE3;q}{e79); z6EKd@$2ekz(NR(t_F^yM2BF%P(AjJ!v zF<$6n?oJwE9B~)p2#gm5MZ93K*_HTW9B~EXh(ye1oPu$IdSbLV;#45K(x+q&#tX*p z@`)4|xMN(f7yAccys!}Cg+n*%0!>_1tX8=XH1zd=mB{&5W4y3RyE^364HR3Md%~;evvP^Vj9q*7r+eDB7e; zr!RH}F>-I@;omyc0AJ+iKFH5`9pvFe!NYl-uOH9RF_$(7J&=1Z z%AHMuk(0lBUsdARf`Vh`w2dTr$i20Zdm|?&3Qmq(9TZ&M`Fmq_>BI~{2l;jt)7jz@ zGc zK~BEr>p<4?`e@-oR~C3C+ z`Sl*uz40#|UXc#+aH8PhypHYBz7UUGw;^)fDZ~dJ-}=RY-|ldSf~kjz9&+7~Pb0xX zZL32sK{T59Ekd7lMa&^$aUjUf6UJ<4m!wzH_dDW#|Ceu z1;}-g1H)JG7YBaxu>q9E9U!{Mbq`i)0lSeKry&RK*yIGUK(4z6x$eD-B_yW%FAi*u zKToe_6_UQlb(g&;AzymFbvTL~xc0K%WH55wW5{(EmJTAjZvW!IUORh`g~)Z)GXn8@ zoIzwfa$|`Dx4(+-y+-buh};!9Elm1xW6ycyv=?p%!q-Za*dcdCP77v9$M<9)r(KEt z6Og;kL++}6AqHk99N$wLIql0U{&4TFBeVdyD{@*m^Xn!B1$Z3g!)0)1)ycK_Uh1VNj2}!j*A=j@8%!o1~n|#JW>oEmn%p%Kj z*sWSM*x$(s-WU~-IzD!g8Kec9$s?j}s9wZ3m@|>w#um4oL-44qGly+vEhAns>Z;BnsU zbccNVTV%wjF~H+c0~cZa)HS4Oy@^l}KHYZ^yiKhF#WscF*pzDYb-ob{9ftY5UYg;1 z+#Fz9S_?SS)ejmBIz`lcdlAcK!R+3-ebmwX(cWWCZqlPk31q#&aNzOrT48MRq1p6j z-MX~t-A2rB`)e{_l?j*zG+Xy%vnx^??$yLawGEL;y7m8V+VP>!>SxkEY>fc z_#+<18&0v}aau?)omo2q#w^GaEF40KXH*!lb8ckxrA+dv<0P2x?|0qc~dWLcIgOwp|aH;&dLTTTUu!-Fmn2YY{j(|(|}?l##TWG=cD8PF2r7sU1a z2zc^1jh0?~PIUJVf}RirbJY%#lbPd$roa7POr$M|ABmS8&!_Pv&K*F&?)<|DS;V&#ZNsO0nBY0*J^AT7 zlJz`(P|%56M4a8j%Hc;@ha5_twt+)e9N5)oCXP0x?}%9)A6EH#FCp{pX3~CDXgPe) zbP&`EuMAz^Rv{OYg2dSqE#cY`dp79JYtgQ&EmX3%VyDozo1$;m_3cH?@H@bjk;Syd z@H&n){O{8<>!%UleM1?K{UXBH@x5s@crpGvGW6{+=-UHVnXn-r>a&~`__OVRP!7LA z-|mUN?YHXzU4P7#+2T2;<2mzqF#7i7U%oBeLEm1DzCH2nBT?boLnb$($>+zh%pp6- z{l!-0u)>GOF31xN(T4~A@?q+SKKvPdIMd%xJa49H)3U}`5JPUzWlm4URsDjY@B+Sr zq1hwBEF%ayzbK-!&~MwJ-)^vXA_?fXThMPGSKm%KzoiS&Z>OT)emYu@ZbiQxfqrXm z@6Sq4_`wy!+vHkPPr+3Cs(5Ri1_a*pV&|J`(Uv!LVbt0F%mw{65&d>s<~VUhWj}g8 zArfxb?6PWJ-vL$^S%PD=CRU_Tq~$Br7`VNmFyTh$Y#_Xxr<4@YifN z@_y-II%tGF46IfYoN|0Y`}SYN`#~QvG5j!fBEHbBei*5q+!rQ{tqup{I*{JaXVWLG zbzo4e3yc^R1RE~yCqvAVgsuh_)PKfNvP0V+THNvj+p)JvY=)U=KD3gU@XU$4XdBH~ z$zbqqpb0inmB`P`5Vmg09=de}x5d3ynZ%(<7%M#(#*$m7(FZ$qNXgI?YLcr9 zdRZu_f_Y;6ZzTvC>3#E*0rlMZePL$+*do?*SXnl^fm5lFz#zmwVI6JzG~sV zA|Ldj!MLw(xG$UfVN?_M6^r|N7}tTWxIBwywXY5xU-x38a9>MtUoK`z;>^}+G}-Jp z`DquxBEI;+%kj5}MMfWCRP~+o{-yDd`_0{2y1#4i{;v7kVtbl<9DJdB1fRp{Lf`ZK zpl_NkXkRoYJdQ{|NB;gk3ex%vBU?f}=xd!x(09q`a`-s&UDd(tv|f)XVA<)tBahwB^=6UP(FcTN!sDuc1+gV78WLaE9i+5+ zO_f5Z0d_nr38dVP8%b8~#ePAG*^web$ z18fRLe29mBv*tVUI7RyfebPk_Y94O~JPy@|%X~!rEZcuf8{Qv%W*d zBlbXS@$qnnvp;-T{TZ)mOOuA}TVyq6vF~~^9&f9r&(!Q&3fJ%q@83O1@8cPMz%%5r zp5J=W63=iuo}p3o#bh#`VRlADF^~1{H3Y{q4PbeI2JpCKx;cbx@Fd&t46mJiL?_@G zKKpfsOvE!>^y>_j*d$;y+uGo|uo!*JU$AA?=wsv2$9Vj4&jLCHeXRH3!T3(p1hN5r z>|CYyjyyIx+Z#scSBJBmk_nGv{tAMUoQ7o8|6%VtprTlswx?%MP=c5c5ET^zf*8Pr zY!?csU_wl&m{H7R^(y9YRSbB|83STKC8-!#FkrxhiaDWTB8UNV`m1}{Wu5nWxPI@K z{&PO}bX7fF)z#JAHPgMb%jywN2OE}8xr#Z~2XpL*LD!U6%&{=cF>N`t>(rDZmk%kb zA6%l4E_=f;(G` zskZ#WX9~EFu0U&zdvU}i*d(QzZ@ZL8gK^4iSKpM~dQX(DWO1^#Y?ywWZp=+m9(mIT zwB@zoLAZa!AI?9&mG1V7SBBlIpd5 z?7wfPw2&sy?JsmwR>XRzOmnH1yyhW(52EfSrD25uKsOy%PX3ytJn*s4PjaUb@pPAd zMdjogVHMC zd3yH1l#wP^>EPWnskVG))|8Z~!EY6><}6cuEcJ$d!}v#SIjMO4_!O<=v`M+wZ~%OL zp$m;L{*^Q9C0|<{0ynemlshUXu$Ro*T)7PRHd3P*ac&5`6|TPMLkkrOl1 zlP|riL>)*NXv^E))=s%g9H_l7z(0|ndv{IAj2WstR!|mxC4c^qm^?AeJ*7%V3(%H# znR(HnW9z24cWe#6k`MSyQ_e4pP#&%{7PMt>c2v%`Jd&)tZ4&$wdDY}}g@0isI#3J) zZMn|t+Tg3}Ky`)#{1bV9|E^%D9ICwXv@HBeHolsucs$WPWss)@Xv=GLy_7qA>!x(= z(HedwXEi;l99nqNDgMV;IA)?jh`_De0wxZ`PAp^kwrtDz}mI{ihUJbzSZkhOk{+s$K!#b^UtlP^OYG+qXnet}0a_##T@YFPp zZb6?3=(A?sBQ$nwoKqP7|Iw|C%%COu{Ej~7H?o7=4>m_ntY{7HLt^Q!BA-9pkJECo zn~(NAKL(m*SA{z0a})a96=w}!o-J$LD+b_*ZRwOIfd+xl?j zO{tV#HBTw>QoOZKG%dyaW>v-d$2VF}>L#YFiv81RRTm$q^D#+T zVU>?lC_bY#ZJtkC+^VYZ-!TNb8SkJI&}Sp`nO3r zX;^waTQRz|HypaJ0}wOIDe81zsBvi;Oh7+tGHrB-0XY!_k(T;cj@e^1}TH1Tl^$1*buI`-r}_Kd&AM7Emzx(d+n3{#F!z=d38^78tXwQiRd?9RK*L zKF}+)J-kEz&9;7_+VYlaHDJNVn@xhkJAi4;*0*vDn;sg(ImwT`;EhXK`EwG!}t$l{F95;w;_(}+WPS1 z930CRoGWcPAo)D|-jTg2&QF&;d2}3(#T)0Xx6eH#ek)LM3FoI$++5lh`#Oa4mf^EN z;ox(UK5OU&dShF19;rK;j>uon>%H&CaDLP55a*uhshsa{KF0Z(S*m)yW_wh)!3NI% zxUiA#8o!O62~+v+-%RCSUC%JsL5A7H?#CBoG znIFc5>ti@??KPV7+~*@XkB%R~?N^-it#YWCMx!&;f zD6VIm=~+F~>kb>K^8aRphO6rtXL%ZO{cI86N#D=y4Bov?DAe^f_dLLJz-h(KxaBnH zW;&IgEumY)eMS5dy*ju980+3tsOm3i^!v_+(;B=SR5*xp^6vdQR~^bn4XQ3#mUCaFq?;B z9LwiNU2kAjgX;~fx^kX3z7pp*^Uo+)yBZxnF`@eFJ>X{T zK1JM`2IaMf$SU^~jAw*br#~LI2dnZmi+DHMZmkltTy4+B@OSMjd&m4yq}GtTtCYhP0TEN&Jbe;+8JB!*buso@H5%2OZI6}HjSC?r|mCf6M=|(Hcu(zE)t-e>y7Opt6Lpf z;q^0acW+aB{5;*9V`isrpA+i=(^og7j63(Jsqxb>-UCAXDp1CIoUhK;vG8CmNLE~d$==4Li z66#yk_%jX8PgzcB>N~39Pm1_EdTYc| z`jQkD@oYLhDuUiD%#!g}bjryNQ24AXJ+WvJ_y04;&!t|4bN?#-M1zkj!nuDH&!&BH zasNmEKl4{~S_e1oKgVc3_pjp5=*ru3(eINY{*IQU|K0w69><5G@%?%{Y`(^vRn1p1 z&!#Ey5!9gIbrFB4;eF0^0H3?vG&p6XF&h*`UT_9pp70v^6tZ1L%E|A!&9_In?%>M<;?dj3w)cnvx zy8V#{ObqBoL!X9oT)%5Oj=N^zZ)-CB3;`#cNRA*S)!(ai;%W`;z)+akG7%aps@J&Eiw>8hrdr&&JR6Y}`z*;x*{y zoZfgY=u*V1{|jz%qX$^vc|g7I-_Pv9&jSo=@B3-~-Qgyl57g&|3gf!-^MTaglb-|B z?HOk0gDw3$`8h!ChhcU;=zHcVW&1kgY@eTaHHYu#UOt|De=ltGg752$vwff0v3;F! zw$HbDx`pqz5vA7g{acMM&D+WA&z#@S>*ZK&CvVrc?IylotN1CZ#@9Wf`F`k`8pHQP zHU7AL2j2%(Je{hsvIYJPB<}BxH>Yy@HWl}BI~7l-CF#}v|7m~O$2ao+jJ+1{{)XCk z@%>s|&&I*_YZXr~;=Aaz9vk_7r{d2vSU+zg-%nNi2~}fDmo2!TW>Xa}qyg?;eBb<| z^j3bqSMe;W=FO{bNB_^LisQ2?jz7>IN20lZ6@Q|^&ByKF{#Cq?j!o;y{YR$mi6K4ZFC175_koUXI~@Rs0DpN&mb3{qA_!JdHW4nlH9rt8gLh{Aml{uQ#;y;`_4- zKP;+O^VfVm*nZ8{hwaxY{)Mjx+ppQWEIyy3!SqlszE3gE_N@oW_^c53DaP5pRgylf zZBO2wan^owyPmu~^9(*Gn-sj4vgc;?=O0F;tZ4TGB95s*Y8E5)IkH&C4Xsp4sd381m~~Ty;J1R>;RtQf>eCWeMNLLchE~qfIm|l738Ae5w)*5w~A+p1MPqzPJ$xVIOrkcL=RT zXF3EzYOhvw&&d$TjCH0@3@5l6U5SM!^;?KuwF+J^J6I4>G=Wdt8r59^V9T#U1ERS`z< zam_Ux&Bw(!8`qduqxrZPXX7$`F`AESUFA`HTopcz;NxPPjcXfz50S0Qy^F(O5Uva3 z^>JO!IQsE*vDL-?a9tQ@>+;Zi6rB97!+9943)wje7T#@1@61MfT$gK0hCv5h7sfl` zy6k&Dl;>6c3SXXAjI+FI+I%?AtJNJwz#z;k#$zzAV&{#7L6}#Jn_^xW+m3=km{)o0 zhV#7IXaW8R(7W;*Ks@sE}VOs_t4-r zU4kGF`)52B`=5O^6ddYUXn50Jp%8}sGhT@O+v$by{_A!Rg6Y^l<1MlO`k1HA*gxYR zqw7=i0|C7MwQGW*rHMODoF59yv46(bWB+QrMJEL6->ya(U%1bb-be@rpRM|w3%$y7 ze$v#O^P28Q6s;JtU3g7L0 zh8RE4!T1KdpZ5KDl-e_*mqJwVPNIG5XQF-h;PO+pGQM;rse| z=!dmeKc8pMDhC3_WoV{oc?#8$IIXUm-K%BKQj*Yc>wdrJ|FnqI7A`||F}p* z5dTT}4WC351XkoR5K+SV;-c28?f;b*+p>1W_Ud|7KmXcJU9YlJw^Q@t7}R#!T< zoW<~S9P*g{F3#e9wEg~CR`(-sC-3V&539yj+~0rCnAPKCytr@8oU^mF>^IXvg@kasImBpU3lmcK8+vMeN&qCwt(9gHfarUJ1yvEi+qlasyl(-*D5sCM5R9%=>)pBD^c3+HP^?L zR>0K7hIHzluN+s*Xbrlb4e8!Ak+S|LeQ|`T)63DdOLaK@7VZSQgLUaZpVAzEu0`Qk z6{*?$3~xQW#F-gh3)zl+-$DInmsE}fVs@%Y-$afH=9jcKP9r8u^9cZ4PR zM)Xa-F2`>sI6|V05uH`2!i@&Bg4IH0x@WG+-YC8mrd(66-%607jkUW>jQ0KP(Te|cH-^j_;8EY^nz{y zJt0lydO5b+RUWqO#_!7){gdMctMLEbzI;=om*dy?_rcY&pJ?=QeB+fKNOhmm+hwNl z_~ke`3V%!CVLmN;+J(m_$M0jl&}IpFbo+NFu9xHBOacq87t$By1Gs-V{_A)dxH~CN z6Q3NP>QWg(hFsI=<#L8F)BK8{tOOZa7tUXGJ&jo`1p9@B9-HCnMLmgC?D zh4@>OxpaEgAAEdroD}?t4%zdPHv2%iUXHIui=b@$mPWkw=i`^-+w;mmr z_-9{prfcGFk>ChR*DTQBC!?D|^ZF|^I5of;ZfC|&+b$Iy*?58~SA;)$U8DUo%klnW zw;O^^r!2bessYEkZ!5tYv+J7np@(dt@}lh;9K5F`m`5$v;PLkXD!UZN6OG@SAGRo1 zqwjyG4TS$SQG*vhZ4FPF&eLGev&~@O*yS2r*uffREsdf5mfz*^+7wiPTDI5d$JpvT zK8sjG2+n;#=PfYd_?&5F7>Gsz&_}Jtg@XgpxV?X6fUnpClk_MmK{s*k6dybElwf_|O2fRwXtikk7 zAJAQ9spQHsLeq zx+@F0e>q<2UJFj+@3jnU9M1J}9H46nm2x*wJ5yDBzl)br3)mVNO|O-ort&Yt?qw}t zjoVJT$u5-Z|6M%F+zj4Z#L<|*Vcee_Pk(L(bqw~=43m*u|GT*BgR(HRO^zntn~ygXT4E)1%2A{2G?yr%_d*len9@Eg8$(%W=PF#t>k5 zg+?om^Y(JQaDNR5e;r95m`~yD<=DJIIe6MTgErk%mh0s>{Zs>3Tw?*9)Nuya%kiEF z3z!wMgI4Mm%=L0?yTb^s$6lfO`9FAka(oAWU)8sJBz62#m5*{)`l z)bg-9*UNF=@EWioJCVNfNacDt&atWrWAc)zxc(^D%W?CrwcymQXgcCRH6E`V*CchI z)rs}AdZs(q%W>sKEn&CNh>CNwxL%G&PHY0!g}!t|k6m0}60TmlF{C*8(Iq|OxV;>2 zb+m)W+k$AFhda1lj^nS`K&xpp=#sJPxV|K8d$9p*96X!a=&k1VaxD5NAa6$*YB0M>CikiTD(<4wKGK*q&f+Ut`uzn}ar_FgYQtC)9mZroCS zeV2qUeZcd<{O7dmnAP0AB&?SuK;E)NUd_Lv4PLw|EAAN(C^HlBEzl#fI5|~-< zA^o^~0QWD)-$gwL`|~<=THcZC<#@?D0S;|@L_5_S%=L1-b(Jny8r+~4t-5f%99!P_ zL|t7A=mRU&{a=n-J}Cnc(YI)sfJ(gm@8VgPKhrX?pQ-b+Xg=R1VW&%_pk3e#YNxZ0 z+n0pPp3?!xCxtYyPg|ZpCE<?QFt`7AvEh0>cy{`w=6WazZ`dt?=<$)p z%~$aE&n02s+WOG)&)SbVx=&o*UNFfuK~1nyiWT((B*nL z-q+h4ww6hxFIzZry&ON7tq&i=@6xr~PVsz`JFi|KTgw%dx^u7g}t2 zN$*`ve=4yFX1qc?Y|?r(DZu%;2LJbICK{8o?0FUMoL z)PVdpQS^Qp)%{0~-%4e{{9~>rzvTFPmI3T~bC+)3znqUxjynVz!Mr^esM9nX-oG4Q z9AgB_np~g@x2w+6a$M$sAtao>MUS3{;r`{={~m!O!#>ka3I2TkyvfE2CM;e-?MABJ|Nbsk-m`=7 zsx#=Lt+Tm*IdtKAmQ0gx(!s%TjV%KQ4w@| zU8JRR;(2>HZhyfN>f`UKb#JPgPdWD5Ssumv4%W;6KKKwQ3IjywlHQ%r0*gC2lv|D(Ax^*<;?d3Skr##eHcb0YGxySZ-euHcV{|0b}aZBXuuxdpUkFpaopV zzk4tky_@Uh`18J2P}R$UzPqD(ULeQeo0>u(9YT-K-Ok&~@tgO}A+V_nUGn%C*O!DB zcd>)56(`VkzMHsxN%(D@mN2}rg0A&fy}$llTtCeg3Xe>q*9NHGUzdc3kJZD!FDlTS ze@enF^#oW_@Izx?5`JG_7eBvyO)Go&@b}kpd{EGZ$=hDhXZj8K{`I@K%-!$w?3E8R zx55g3{gs3}50b#)Mgg^&wUXPHgkwBE(i7F*(76j$=TAAl8?Oht8TV*euhM*de-~$s z6`8+B_b+n1;ENvA4ZKDjl&bb} z+}=rqa#f#FlcB2fs~krzHUyg;S7}UU8Q%Zz;=4W~jH&&G#x(qk&v!|9{e?2{CF&8q zmA8)DmxO1R5+S(p7us?5NxuJ;grRv^sM!4lomw@5=i9%F?R9iv-G|qj>!BpvYLE!Y z4ZqMA3yt{oP!jH0#}W?ML{Xu04?h2LTtdoEdx}hpEk- zO1ytLe)v=m3KY+1^85k3e>n~-FokHMq-DRT&WCc`{*W$QjnAX`(eL?s%5i_^y0CrB zYFcK6H}7AL&S_VR_bJr>-_>t~e%~5A{l47}&eYgMt(Ro;cy%J`!=S81bny3CyuBO`{*3=`nC)|}W9?rJ!sp|4@VE9n z4S4(O8TBBc+fw}9&WYScj$e!)2>q>8-?d}yO%FTa??TPhjA!2}D@eJwhE`eS$J@*C ztfPYU{57uRiQH4X1WP zRpXIkzpSxv{%eG0e%iDTg7@LY*LU!uKsZ-lb+2aYvA=o<#8;vk`)hv$!u}y6G`PPq z7;MdpulE5B-QZ7;(VF>|<0)YyppwN=O?x@cw#CmgYCfO?YOD5ZIrg-naCE{f8ocxr zKOb(shTk9D8KUV=j(5%<4F}^@&wkl>P_ zRv!SX=M?Yna%|kOHypcKOVeJC3qyv(VDIyq`Ih6&HZCx^Tk-cv<#Up;u&r?)^yv@g{P2-pRdXVEKBi-S6 zpT3&$$+6x_AGjY~ynoB_j~(Rypo@uMNa3n5gl$>JJ56Hkk8EJlwJ+G)q~c(aZ75Nmg*J>_Ls* zETSi@OR?5qqm^ACJ=*P;IPOa)a4g?Rqi=So1K3pU|4aP+jtl5U1QhGNDXi=|>z6p@ zc?;NSSN#2GIX*C}Dy;Z;M$^8cb00|jVXncAR(XNT*5dCw%W+=)uHfn8qOouH%>$m5 zEk3Wv@$_sr_&#=o#{PYG3YENzXX5W8zi-x4qpx|Z9ZXs0`%BzF zbOG-V#rNmVODPP$R~)|_SJ;aGH}j$5>s^lZbFCo9`hcdt*L!<|lWR>4R@!<(na=P_ z99+5sG<`Zyqi@vI4cuB3@Aq+G5frVv{SwEzwgH+yNu!tJN5kD_KTKRI4j8sPSuV*g84I>F;B z#ru;Sw=Hmlu$l`r@yPM1LI(&nS*g)Kb8!dXSA8{Ddguo4CKun&O2P~C+rSm~;{8XC z{pLHv(A&l9_q%wri2tS0=i>3p@kd()l;2*w-~BG$_M{~wITYWYO2WyX-N2}F@%+f~ zwD&HcQ@40OD+zmFa)B+!i|ysux_?{n2_LUnpWnr6lbm67wc`1g+>b<@S*UNFZWDcFn9HqxTedqDZaewPdpu7AW zeYi~Z{#%Yi8(P5YUU9TxU{mg2j!QkP0=-R?^n+7*u9strr{>_g@-S_CQ}ua)9M7j_ zaIQ=;t#nr6?Qfl~3~TzGrhXk&e{&|s=ekyb>^CRqu$$NUc;wh%hZ!usd6e!8{l@ij z>>F+g&wZa=awl9P(!Fr@J=Q;ql0E+b|Qbc0EZQn&ol-a=bmN3i#Qj&=E}y zczZe4>1+lLk%wq)JJsh0a$K>xDQrEWq={`*pU=GauLM59XX)Z|w|ReZoQ!{unAZ0c z)pz>9^>X}X0Dhl>9HTm<0*^z|W>ELR0jl@Ln(O6wU_BGa zI-5rA#^2}t%kd37?}iUi($@D0Z!gDN&zr%WN{8s%#j4Lswi3GItCi3iX=|YezFOl4LOrnb#Fs*# zNU6{ZUsP~L>MZoem$T3oXtf7hm;-21pwS{qWTQd+vwD zM;I#jVl+dsbi*jx2_2Aj5C-6@gW!SGLl}rJ55X3xtuP2*wt^*6OJT6kNoXWALE1#< zjISm*;?7vQVB|f7Ay|3}!;ub0xhFoNXH@SjgbZ+4MNlhqYJ_r7=qDw zVd;j_aKR6$AEM!CJsRm~M5EB!AE`g0ao8ppX)vN7^w1A!KSX}Q2ppLomZ4}h2GM9N zerOed$REpSvrD7GDd zGteDJ-WA(*!P-!)@x~bn!da<=ojX#tY-g zU16iJRk(#E8fmm}P&z0@3%ii-5)Mg+knTmk7p=ocl8`8bkwjq#8G`gM^25S#G90NA zxl$NKMj<_p{J1cVj6-@F`Dq~tdrHEV@mR)Vls(C2VIG!k!ffJ1;*iD(=Ws3}a72r- z>=$Z~DWodSnmgGk%*C=tm`ZAqV@Qt)X*jmII7>6J?8bRnBb-8d3g>1Lj(9uL?ZOtp zj?5%yk)9O}3bn{|l8iK2I3`R){T8HKgiS(}a9v1{qOk117|sc2k)9Q1k{wvHAM5r@ zF+vQ|K_o^PL}G=ZVb;i-d~ggRmCqTET=Y6$%Aoq{gHYDMt**d!Zbb z6+#(|`7P47!Xjag@LG__94w{C58*4KA6VuHpM>&4KGJ+4Oqd|#3YCyn624#-j>kL< z7v>9k2$7!a|I^4Vgn)5l771W@G{h#rd9q)T)!&mgv>7x|NP zCH2TOVo7QfYtj&DLsFM?CSIfm(jLTxh$$PSxY$hkjX{4t~6xm2p5N*V=ne-tWgtJJ` zlA)qP+(UK|g}9516&H~hvX3mn528#jQmPb-G!{{+)Lu+Pnn+^FV6mfk80lf6Bpt=BVk**9a+q`#yNf50o+PQH zyVzSigY*nJNqUPxcrWQKo)*rKB+^eDjQtH3l^ESFyqAm>Hw!(Qdx|^aV6l$5^%nva86DMQCQXp3&;)} z_W~@7aCVQ7b4bq-Kd~~lI)?3z;k-}8`^XM55z7Lylk6pjrJY!AU<`g}I}*zUtc@o} zrM*}VOY!6YaTnvU9F@9=ox~wx7c7HtZH|)8NIQ!I#iQgn>4vnM*jYSIPLZBSdy3t} zQzV`ALE1;`DSC;X*xCzA7cm|0BO#~@LCt6KoqQ#qv3w+t$$jA=d4Ttkn@Dex`{W*Z zh;{b~Vnh$fBYZs|caYv8+4#Cc?g`mg@VDFK#EBF!J@Jh1gUaBR0XD9VHIHxgLUai0C6yu?5!G z7i(iKcPDP*II)^oMI0_x6|0N2kk%3{#Wtd=*n_me;zcTmCSoPA0+w>3H!&6sks69V z#93@7x`@tLT8qs^C(#k9qv#+u7F&wVkTw(TaBdoNYKJpb3+JjX(z@v1M6?jik(#5| zRT%vbjQC_NmucX;vserk0CuKB};w9V7!;~6$6R4=z(+KgVYE0b%?vrUZ_Lb3k`@H zaS_@GZlsOSiPRBm2@XOX(LtyoRumfxc0xtbPB0RUkk&+AQ|L#4)Dv6;z*cU=Ol&GN z7R=DHqG&Bz3AF@k^iW6agx&!CfzXZAKyOXaUsJSei+|4JD6|zFg;ruqVlC7YTB0`~ zt+1vgs}t-+2Vx^w3l6AlNxGp2C-mWjZ5m*-ZY*A*G3iHY3Jo!qhJq=v$5zd;U2~zK zSeIh}_3=_t)c zI$NBJw$nMCE6zjPnc{rZMTuLHZbkhpaf`SO={7N3{8OAG#vqLmcOlv)E<`*Fr8!t) z#L7a1xE$$n(L~rLZW4DOUoNgfx=O4fEEE3{SBT57ti;y}aV^rd;yTo<64xVLFPaJ) zaEzP94d{7`xDk7gLU|LS4JbvT=Ze_FGI0s_6fLenFKf`p3dGSEQH;0;UojZV9xMyR zrQ%|-0BM2vTHGn-h!v!rSU!up#l7NJq+iAF;uG<-C`eDR7)x>Delbyu!xAf&#`Qjc z^ne&I?h_NlJ4o+{cTtmwC>F~;l#;}QNDm^~FCId)A4{TGO3)DwBRwo0K+QpHr-K=z zM5+`IBR(QNK>7gdlf_coyqU zqI`y<6QYGsRk)1wvUov!B;H1CRlLSBk!FgQ#SHPPcm?Sd@e)cm#T!U(ATq~m?-tTq zVkWNFT^!v8?CCzz2go;|bQ|d%L>9sYvAU3f?ayPo8{&1O*TsiOA7Wj$_zYuthEbhC zdIsej@v&$i=@HU}n4LQ?)<-zL(;~YyEW%v-EH1+G5#zgtab{sDC8dkcMI)p}QdwyM zX5V*l0hX8IcFfS%NMDO@#dG3CQIgJKA<}cqO=G0Sl95zhC{HYecX;PxYokxhg*SM& zGsh8#q>Atg?{-!2e)kRUa!<)yyr-4H`+m@U{uHxa>YEs5b1ldQ2c=OgZN2&BYr{t21}v%O8kcC6_z(*KFY5|JxO0GBk5r& zE$Lt>gS3ofD2d1!HI&LBEhqgzZ=b~SXssue$MPQKeC#tProfHjt`I)g){5R1FLB zXd^X5+7P{3O16?6Qakil3uz;yjnJ!=)L3eQvlazT_iW8Zs@g{ zCGIT&gO~K{`j8jV;GZ6Om5D)>Cjr zD-^9c!u}ts>2kW?}}J zAvKd`Nt2}&(n@@-L1`{#P<5o$rFqgQDO!q>MoasoJ=oh4DIE0+q{Z0!FDU|P1p1mJ zEtQs`%^qnNw%8!8MY4k7b0DVkxh~oVY^wSzqc1b&>SZR|q7UhlD|77&F0CT(^&PrV@<~V~BaP%Xv43NSwvh_G?K{(R^ zI1iCXBc*Lp9M0Hyq~oQ%(kkq0mb4w`IRI$@YW>msCiK4rd-xN5te5`4KF6Xo4gGCJ z{U+(SbU{dzPD)qso$_hvl8_{wkurpM>70~Fjz|}z%jB4JQMyEurOVQFcK(%a5g3KxgQIjEE$8we2#&_LUq)bFtNhX$b=^^3=Sd%VgU`+n+Ik+L~U##uXuG#Tge z2+rnZq$yGs@+-m_>3|e3Wh2iJj-wQh>yU^maT;kNu0s;8#7U${xH1Q%jlx|an%qLV zRmjG5IwRe}waFrp!cKhW5-Hrq=ONcn6OVOAaGl;~=qiUz+yM2S^rzagAhb+q)OQ1{ zEyq6NES6to=u)-4wp_8mon9EQ0e0eV2x`l&uCDQo_m^>=WHVejH~U1q+eFEEz=v~O z{&PwS#7uq6Wh;+3VD;>~TdAAZ!PY8O5_j1<#E%QscQ){NnY?mjjN;lPUFUaqBbA-3 zuPR*8kF8Fcvhti<#oddaz)5*W`Qz$aMfZ-ExKCEk{8Oy&g7(aRL$qIue)^k6!AJCy zGj)f8`TsF>N3!*?T9n0Uf2@`=YJOeH`nujKLh1dXBV~PE+ZwCfK6NN%eX)K`=ZvPT zul^WwG}g1enEyU#&-%KF_R;8v^>q{dR6={^v+A7D$}6oRxKCF9>TV?W`5xohK7Tv+ zxoiG*eAYxi8CcJJ?w(&)d1-4b_c`c8M`azIH10EY>QH6x z59hc~3$$nT%qOd7_RJ@#NDlm3Mf*Hgj^5qozLQ{TgJx<@KyzR?qBNzs#PEo%OpH z{cORpGoO>HXC$zgna}gr?OZ(KdtEGoSV?D9Io?J(^E9WAPqKRy|%1h zluKoivm9V^#W-6RHdlGb*?hA6WSq@&PN!6uV7~1qdDXCawAP$>m~d||{U`FqqU(Z< zqi4}|aSq3^wdlI2h2toXF|mHT<2bfq{bCa(u<>cjFL!%Ty`6C|%ltIemhJ7A@#{So z^UmJhKY?A3V=(U)7G3+fIF9y3*FNjZxait%itF&9=-S_m>r)=htdepw87Us9^)e;3xP=U-cXx7$Oho_}o_?=9Sa8C*kl?_>TiVqff@ ztIn$(cyD6xRu!s`Kif$asI_{jS6O%EbF7>$eN$SAD#nvg?B7e;>Th zvVPfhF~jtfl3f>@uwGln`xT!zTT8>lP~30Wyg9`+O~iXC_dgx;$Qpez|IIOvTH)Tn z#-)S#vIF-a=Km^Q*N#}vuItBmU2DsDui$>Z>$FPjhw(5!OpeC3%um_728pI~a=D+Z z`d<^6Pj+7lX#Z=O`C<2{HhMWnv}HEW>>jn@(JV)8Sv{6G%t1C5wx15i98`~`F6J7G zhmFMubCAW)Vqo>mp7q7-nIGn#`N8`YpSQ2bZHn^E0Xgmqe7tO5VC%yA^2NMk>%ztx zgZZUi7q-7J|E#aQSkLTPU(BAZFYgQeR4mG|>d0A+F`sN7WbrVcERWPV#`ZymnNPMq zGJEE;Xg}pXnV)S%*9Ft7uM4(ctFH?dull-RbIj_QPZlq;XFi!d^TXm~epVD+<8QIw zu0_{4+xN|iu5mWsV$n6u)*075nfYY%&Fq;^W{>BVWag8NW81YsP1*I!@<@GeVQrJT z+Vgu0%N=IJ?02Hg``0rRPg`w(hLeMoFZ8}}xw2m$W&N2=D64NWvx!pQuMd~M>U~MB zIXQ^SW#7z5E_Hl7mm{x&LR&T|a93U`I;UyNXrp94i|jQr`sA`6`ozAt{2u$l7`WUJ zImVXE+LlNC=hrj1TnF3budkcH>T~rbD<^r`B|guOgH02%=`gEZCNn=@7o6rY z^S>M8X7#M!g(IJ;Y-Z{vs_T8xpV~eG{i*#huJ->8{q-v9m$maVXvgDW{$?~%C=E(& z11r-ksx9Zb8YyYoN@!&Fg#HtGVj~6BM?dw@kG7ocYDCq3{)xPK#&l)q+fC4W)G7Ka zdA(6jWl!66pqP?Oec&9oQ&gWQ(P+Mf^-84bOIv1p3G*3) z>!mHT{fqfLi|eH=_i43=(h2L}=-PCJwjBC$23=fx9W-s$oNCMCU(Qgf>$PQUt7LwX zRem(`ncWwXE5_}CFOJWtw%l<`_k^0;_P~R8FR8XXGc-|o-zFZe`pux)vT-91<-IC< z!K?WVsx9j`@}TN^ZTaZ#3kr3=+HzQEB4z$F(Z9C5`D(d@^chO<%y~rriM(j;&Z8`6 zs=j+ewdFo@b~>r+wdJ|-OA}fB=W+OZg<7)zzSB-D-~9F8(O=1P;!ht{+x$viBBjw! zR>xsqV07}-BDve}){3z=p3{Y0GNEZ$TPL;L=taR%ZQ1#q0G87(K_j%$$Y`T2|G1+E zUeRZ`jaqg<8*TY}Zdu5@oXTy~GPBW^?`D>UkBts-8@0@Av}K(!pQ(LrJhx%81Io-s zTfSuQfM$N!%Wc#$v(c7s9!R0r3ifatwcHeKwB?g4@6&fxFM(shg5-N)ujs3ob6k!* z`Gtn0p8_YW_doERK5BZ5%V7^bQk&ExTpnIKmqxWa$mL0EZqUS#L@qaJeT=qAO5pPK zhmUD)`eo>XYoRUo4*NvkM_u6c+VYEq5=5t-=Jne0cE-Qyj0?mg9p`X~B_LUau`5Bx%a`MR~QoNM?Dp>e_SV{Gz;4 z%Pg<7<(`E?O0}ZA(#U9|Emyjum(sN;uhcSIM{T)cZrPN}MR}!`nT@vm>T2nfcSU)n zmYI#V+-THiW#gi}Qp?OnTmDq`f%0-uUNQL!%FISv7WbzpuN38#T4s5rE$1!2uY6OK zSEVMuQsx!qRr>KS%D|$$T9x=+`JgDTw%_}xtY4H@OKRpSw-n{owpBNjaYcFM)9RR# z7Uh+Y^;r45D6h2T8IwLK-xlSSw){O@O4(MFSK9J3uTm)|i}FfaK6sv_3@pkkZFzO6 zw@PJEUTMqy1MVmX73Gz-d^aFfnOBro+VZT~>yr~bjzGu7?`Wy{vyu<~kqTDpbRes~ zzS7zLIJEpDhw8*XPj>S=3Ylqd=wbV;?Y zj=4?U4R$6^nST+^*UhJY^*x$=P`}A^isMzN$BSd6>M`oh zpQTWb9mlIsj~8R3T5EE7aq{u`9I3u94X@^Mkt&Lj^n!Gr97^qp&ZbG-%8A_7$71{*(d} zhpXymidP}fJ&W7Bbi4qE%-_*D#wp3Wszt$>>#u*38($fduulPB2bUsBN_6 z|Hs~&$K}*@@x$jFGEb#aNFtO%G>ERVcgj4^l0xRW$xs=JicpyenMKHuLee?Mn0X#E z6Usc#)BD}0tNS_b-{bc_|Gb~i`$u=5HSD$5UTf{W*ZH0+H}&NTStW zUYI2o+O>N5_RGcoLzhvzjORqFS8cys8lbmpb>nbza`w|HdOY;A1v1 zf960U+FqdNZ|4%@AbT>!@(SJkGl!g*>P)JRzD#T1yiewI_Ehaxv+t21o;6kf>AP=} znb!!}wD&6Amv@y6vuUN;m)=Iw7`w@{m@Z z_kj`xadrY)?xww4sSD9Q|JLV11 z>Lw>|iw}=qrD?vqh@IVHF+VqlCU!|DcHL)@?{gl}CQoxnuk>x=jGSw~r z)f{rgf3{dX=^@PvOecLU!pZi#`LyfYQ>5GOoUto`XoDtTx`2s z?0Ek%H3&-kLysD@o-Dq6o!;D$K@P|4B*SBG(>kF$$Ry9LBxlTRns@3L@obSojCwM;T((`ItdJD>L3no7zz#E>t(*J<0MbBTR+57I}tK_lf{(zf#wa@zDZT^v81 z_!!M5msj7QM{8XrJ|CmV6>^=nYJG~#-r9-8ZN5eyT)ja~mRLwa?%tp;qM}IOlQYQ0 zpZTwpzT2N;L$bu?O+1K6Ip|kvIZw*4Nl4$oRl>uld8WSC)K=qoK*AbaZ;^QkCWTy!7O^=hRj~*vgA3aX0dG$D{=GEh*s_Su5twE2I>KW>BQuWc}r0S!` zNwrQrPO5qJIH~5<FoRl;;DQj?2 z(%|GjI&f0f;H0dz(df zvI;d#@2ngu{Wv}P=X7~P;v^+<*v9m+YktZBgZeAaPJc{W`8!;h&}FdO&`Zmme*Tup_uKm`Db0rw7JtdP-b(Bx9oe;S9p}Kl9c$F%t9`^fZj^bpu1!Y zaycz?S7Hb6B|DL;(gzErt6v6j>*_<>_+`kwY>g zDa%>zho1w?&gV`22af0ubuXst!kxkmLTNH$R(QYOY4Nsjx_NdRY2|_ux@V4)X`q)V z2fz1~{-(!yc+=O--pLnw50P<2t1L)0JW67yf)5#lg60P+qLRx+{f@F0Hr2&TDvuNC~KlG0JzA}NdMPIRVbAVik z`(izO3H>D+JJKc3O=ICVbGop=A=f_$`G{nk*K0%#fr5xz+2hQ}&FB9ogz9V&fS(lcYq$7>n z>Hg5oxcwyKXJb07f+g)y>?PUu#a=mh--x#8;Qfbg_hLP{+~0v_@2yLJdMTt; zhO4sL(S+Lgbx@!8Ip{n0GA|t2^O%ReWB0+H$NspVbN_kvsV$!Ut;pLReRpe9B#HlG zA$@B+iN+?xkj&qqWNON|KXhx;24wxauF7@)^3>n48F{tEmb#W~PT#CHN@u<2gC4A3 z?pT@^_GOM9Jh9L=H4X7u5Bja`visA)+S1C?;nWv>&-!E_>bZ!%XZT=%=b%3Neh>WF zb8vf8q&!()&%A^f`GCG2tsdssOn!nIC~6Q*8^}qh?GkEp1Rm*eNwfwYv2%bVXYib} zysL2jW_Zq7-W@pq$#~9Lo$UOd{r)L;#`!Ba|8YOx$p>-%&v5=)y;NUC*5S-I;mmOt z@^Re7CESGvut|q==#IYf)EOxa&{tp4R}-xql&9#cDd?+V51f@;eP21etgD!!uN=`= zTAlWCQ~c3C@6kV6y??Qn@;da`arBrmw_i>{?@dJSVL$4=E~CHPje*Voc`lUpcrK>k zxoFaGpz`5A&xMkO=i*DjbMcQ3ypjv>YU6J9zG3I)-8Ld^DBc+paBdyYM_*IgDD1g5 zDR{2ceH|`%t`%22*DLW{ALtaSD0r@W;knl8-U9_i#QBVTb;}X`q4dT1drT_h6k!mm zY{U6a{@lZH$+mFi2r#P6d=;YJ7xc?FER42;t1iTiC8A7GR}FiNZU zz+S?zmzL{g4%oYIM{ngguy;1F zccD)s#UR&7*$3c3eeS{o|m>KxIk==Zl%-*ew@p)t2C7sOnJ|CYqdOj8Q zFx>8mK1z;GO`nT6)6qK@PxE`KAWol?;fhC_t?6uEa|XL8ZO0uJpVS+t*p1jD4?O2a zm~Ni5UXDK#rRuR~qU0J$>s7t)IXBt3&OUP3aGX-2@($_FX(v))c&L&fSCqB7VdEsR zH$JC*!sj%tzT>o$Yy|(2@Ym{P>+F+{Atr~I#>kzA8u}ww405x2=0l=3`7!jGm>)Rq zu*7`oq2}@jwxl!N``iJ!$+1?-#0o>@Kr1s!cP2?guJ==B&gAJ6VNrUYo^@#b@t*j- zI7wn3*b`y*KH7>_t~gYlS_}UDqKH@jwqot?6O{$2zg7LAzppa+tP|}4`^2+O%42_D z+8O%X)ZcQg?-QvGdZ&I-a&~$+4J^@8q-zY^OwA|JeRi(m+?+__U8g@4T8N@)zn|pz zIVYMhy{%aMj1!GV{8m`Y;&nyd-q2Y*_Gid5q0dPTr`-@Y1iBUMvyd+c`V;tPpL0^u z5XS&<`qt^Md~+8?6U47#K1orKHwt-CkFo~!NC^gRSg#Dg+8&7a2>a;^Jr40gu%GeJ z!ysAw;DY!{7x?)=M?LuL`X;?Q^tq|wO4~;jl;0PvrMEUcsa78vZ=-xYHdtcfY>kXv+jSIULFC0VblD7y{oDogX;|Do5ZX(!#SG*x*RXDoLXk{!NP zS|ASY7f!YMnP&D)20s2Obu^tuwff}Yyi@!Ala&*G&E@|^cWxX{OtN3=qze;h?26^& zQ_3J^RmL6?W@#thM-Azy0d>-J)H%1H&VTfP;V*~>_EHRc>9M^NJ%;@@!hW@S@QUT~ zH^f|qn7YRCvITNwA=mg8VKj4lciF3HGfAuOKi-c{*z`+2wC1;@)!TnEr%g;elv?Gd z%UbkDB6%jtj`6X@1ms>uLGO=*U0xyaZ>OKEqLI(SD&=Tj)uv)ITGBY*L;k zymY6(Zd6q&?~No{eL}nXv_qV=7<-ShD1_TCXEJ zU8%D0kqO<~t^_qXIz!HS+J#ztT1mEA1(0$*$55X`CZt7)o=X1IGPJ9-j$FQAA@|(s zPaQt3ln=tEBz%@h>*QCkw}##Skcr$H{&(O%X;)>Xn?BbRvvYDZYFL08kV`Sv=Q`MW zoxBM(tUwLH?dmH%QFA-L6P%R; zIG?IGpQSI|6(OgpVuCZ#>JwUoDJi%wGu)R}&p6&s3Bi3mzWOXWW+!?n|q$ zPmUuS?vGb;du2&leN(AO*>d+pW%RQ|sg=%*)-md+y#IbxbkmtB4WNI8UZr#-sRW;S z@EMgHCvQWX_lTp_D|&R1TYStX?|%DIt^Vkqv*TOa$K>aWAylhRb!?{y43bikyoov!Os%@5xi8kL42+5alM>U zGky)Z*RwVCxp2}k;l*(B%`5Z|z0>t_w0+zf!uM)TL)Ya=3ydz4vg3wR+mA*xCCGr3 zeb<>rnFL`Cv`h8n^=0CAvNn7P`*nGW!a5tbeUNP_6~_K zwP;3P_o_t?H;*MB7JMaPw{Mc;`5sD>PYK*&%*BOrDtvw=45cv>9?EO)Tui%(T5K$uDM#TWq85vVU*$9KsfAidsJl`(du96V z)~iXcIwO_O@TrDcGHorCFYtMVTDpx2QgTC2x6W4E37f0}g_5A6N+ zMgub8{8T0MY|HdFYhp;ra`;*JX2X=j=J>ZKTNV)4x5Jdmju(liK?TwnItji_`swnr zY@z$r&L;22ddkc`4!*0*H_1BaI{2nExhS`Tex%zdvBmVe@;=0jU+C?)Y(qImb{ALH z6r&Gk+0l=NrD@8*D8~_JcB*#UBr96~P>;W>YH0`h*?A5zg55E7 zr{k&(v8gOh``Nwe;ZlB5dDyL=uELLWSe?e~@+EhAtC1{Q!alIU2uJ4{pHzEu#5PH? zQkuZteZa#e9Y0=D?FKG$Nc*K7lp(O69_Q9%#)fj~EY5iOfq2lTx8iA3n)Q_=>ig=4 zVQ5;nkC)WGdTVZ~lt*6?ob8Gm)s!XrUNZ1HBUeO^nc$qwaEGsOmoo0i3HN5N@1>Uu zzRHtuucvTdUbw@u=&N1uK`$wVz4Qh5S$0S-vIjopcTP|?qOZ2VXLWG6V)?D0mo~4e zqXeSI(%>`wqL0G*DhWQn6NW0&(Mzn~7T+{h6!cgYd>;0yrPM-A3ViHN*(lDaDLVN? zy5sGeavAj4W%%T@UM=@VP4D4@UXocaOx_I`Aufjkkt zRDDI|Jzd>)N`uj3g!R~(82L@v-6RP;upd3*gkLL|^Si%$zmFlzZrhF6$lq{_)&^{%4 z&}nBoC?7jkp(`62kcqWZ<*Cd2&?*xCpZncM^1N=AwEr|~YB1DXnR~9IVlw7SmR8?q zF;yW`=836+C1p=in*?FMDcCReNE>61SFy)UFU;|KK@0Z2)&4oL#eSb+zdq->(@4}- z{Y`P5RxfeFi%!BGn_-XB6U~Vi_MV8nPx;uGT*8?UoJqaLW#|o@RU*#nW!ea`RJUHd zgS}UKoJlCo#2aU#jT7Gcp;%MD-zjH-IoNMJ_IvQ|BeDd09D+R#uANGvvG?-WJN89e zVqYoP7xqhIvG@GZ>fZm+OW0dD-6=jvu^&5=^txr@XyM*e^pnGB7yn64IhG@pVeywq zT>0*f-bvnMgISpRy-fKnE>!S!r1gZb)Dm(Dhwgj(Oq0B3 zV@MCPP&%w;0C@qQQ21zdiyuv;Dyya`M(-3!tJnO|RAhEj*tL4#l3mpBT0-L$=PfAc<2)(@vSz%95AX z^z7!#q|x+E@}eqV$b{T3bno0OF}O!H`rNWTy?U#!QZI`TlcC>9xmgx+&c*=R?a@l& zbgmDn9wiWGix4^tal&6(D<=_$#cz{qA+JFEhKQM4<%>K3F;}n162JGUrZlZy5OY8l zk;@=vN5pZ95@bijsS#=+x7rk-l)JZ*(7JBQp$WE1^FUkTI671g&YeW_F8YagurI%5 z-G~+TWd)xn6KttDe1bNm5~0NyWw@ms`AMeGOSK!y(Q$*b#;q?;>-PL4{Vvvno?ZH(jiDZj z9XX#|p88DqBv$*~o%*>=p#i}SNm}TztVfkOx^!e^dOfBN-LbVTtv}!asg2*Kn0L#E z+I}fUQu=-)>xy@zNmHv*yC&ClIa5}XOB;fe*inhnnt{P|!8s~-tv*%m-``rDkoGN!cAp|6pT$EI zyQMeCqz5k2;ft%~MOB08*C8zxpV@wL&f)j5_dUtd@w!HZ8F(3caU;q@Le(dP9E9i8Jjij zy&YY!LZk!J+bW~8qsh&>m1w6$i{#&x`ca`6KED*plzN_6LRO^)Q@cI=l&AL=;m=cZ zNbPEhJedxrRm#pGUzWF594j9a7tXFq4WrLWKroxG<|&+OOI@l#Wk8;*hEq1vMr zlTI_`n9yb9$CAgS3)hz%>Cm4JKi^kLeUdAG`i$>iXD^e5j38xI+Dq~CsI6p1W@q%^ zXxb)zDOnZdNX>fJrLL*HiCf9WRQcpUi^ays;novr!joB|6W!+4rF|In{oR`^TO6be zKJ;2V(KLZ949wHn36p7dtv19sID_QOx0DmckEZid-;?|{RpiBQeQCy$5lZICRpdb6 zd=j<&p1h*^5c;Ot5AnJ|GTBr!P|1y3C?1+MmNp5=kv5jyCzD?dX_ZZ{q(S3dsfoXi z?)p$$c{FsO-2Y%H+Ujg?CGhnn@!QUJv|P+YIkJW!U7i+5pC6efpYiaO%U%wp5#E{7 zIM)v3v}i($x2mO>Sqik4*o=Jr6h=K)trIsz+R(jky-9=PuC&+uVbtgQG%~yIUO95_ zN3z+%g?0=mMrS=aLk2w`K}T%3FD@xbXwOP}$nZ2nI=0SG>OJ5DaX;uSpB)@bn;Z=y zk<&Ypm(8pwv7g2uPCnxBOMbuQ zG#Oo|o{}uop(T@@Nz=ZQlxH(2>G#5dSS*;N1o(9!eec;(zC<0xve^N-y30{<_?oHo z%#vf$^Z`BTo{mvuYQRs~C@4`Xv|_U?2*b&)z{y7E`pD*boE(fe5x~h)h!cYNt$~v(fs;0f zS%{O{R%A&({)3a0;beKlY=<~RkCW!17KGts`2w7zg*aJzbSN1QoP1e;le7>gtJQU* z&w!KFfs+$9rOG^Ta!3JADyM;y4}p`T*Oyo70VlcQJ?Nza9TY3zq+bC}D&#*nsr1z2 zWaYA)Qizkr2D@d3lOk~PY;t*JG;q?Q04J3Rz{w*8IH@cHPF@2}?%LW`u?0@n08T!> z<%7>_1vt6Bct>SDaIzL~^3IgiGQ-I^1vsh90Z#S?P7ZAEsnh^YZU;^d-i3d61Du>w zfRjp1;N*PZWS2wm0ZvW^PQD#nPh>c02%Nk<=b4lPoD2j`PFUWLHULgu22PqC-zhE9 z4LRLfXh1aNXba1wYZ zwg(=r1|IfYw21JA{pfq)Ht|buOGg1eZva27t0{zGqam;nm`R@jGg|;NO`^|={eg|0 zfsJ36x2Fs<7XUMXlcEMEsj(g>e=m6~_W@2G22KJSNg*}@GwDuX=0{-Wmr+~gnR=Y; z6u(qvIB5!;^hoV3>wuFoaFUOWAq*#104Ha;Z#%$nvR?sC($T=llfcPhL3vpWCrY0GwO`oDAQ7k1%X}4{QWxQVE#3ADDUBAX(lFoV-(jlS(t-WO4yc zDpq=&H1^ji3@6_LClk^Fl~2IKYrw`Y=$y1_< zVxY&##$q%13vjX}a55>T zPhmKD960%A%W0Y6O7sjKAJ)39inSalv4avnDAtGDN?D`bgj7uy|9v0-?R*Y)x~A62?sfH`baBil2QpsQi&Xl$Rs3J> zVOM`A5*6Q>L|on@eyHD`d@+BdO0IYv!p5B8K6M-sQ&zoSR{#I4AIv^FldP((NvVgK zV)}hg@}<%fRmS|T^G|=W`(pj|zw~L(OegZfLq`UF-Yd2&>qe}v)ger}%8%9OfYqaY zF4#S>F*}cbscz~$Zj_wVdwkU2LA^(V2MyJEHfHhf*Q%$+kMXuq<1)$eI1bgR{bbm@ zrdsdjyLjs&Uvhw<8ZY@bey;@bIn*ej#$#i)|4JP!)cu=9TN1W!CfPYKKeoPiizhnP zS5^Ja>Dc;Zx@;Y*myOwdw7qVu-pB3c=IZ$~$sURz4+X3BxJ>s|*RwI}NB1^m z)P7`jGJh7I`7=LO|HDbGRev^S&xLDlDfPKvl06s9pFJ1%tCd%uiv+}B&qc|^aESR z`h~4aM*pyN|4U!8b*yjMIv?~gTgUpEoj;RoUxj_nVa(RcW{X6=9I48s_2N`{ zyUSu#c08Y;$`gy0tFqkHHl$p0S2DxSNPXXwT574jZvssPb^hr5YU=#RHO16%r`6?D zdHq#YRmLoBpvt9PJXOi+Vfop6?ZU1)f5@2N$D-EG#%1=*5WB8?DmF}7s!FG$n^hT< zm#)f#wvsCEe#2jdfnVXcaK6yLaD8DsRtNKcdAX4)H@z>ZN|({6bwtYJm$-&zvuH`c`A+BcC&u9m$zE|fM+nv&Qy z9;)Bs3ZCk^k-VvF+f3^lGl#7?vAhF*{lLBe0%3Wog z)$?|J`&2#W#4pzBn8m9kHC5wgCEF3F%MA#VUb(J>+1Z#$Hol+OjM#6s{zvN0wv?UP-+p6_2$?7W{zc^v5t}m48dvUgj`kstfUQ>N9>hSx++52(eXj}EYXjZB~ z>dc(f_ujz6@5M9kdy(W*M^xGKv7!2Y`f&yC)ek+%+OW^!l>VK`{95-^*>-_t!TU?% z)c4Md3&sAC$-g~G+bXpQlSfyUR^KCI9u^}yJ2z5pa4l6v<&{$LpV{X(w;^oIB%5bA z&f*nH>tU8^941*@6{nH+en17aE{2n=elDoIT0fJle&)yO?^@DCt(!?!w~CKAA12xP zFnna^!z4Q&hL7xgm}KV@Q>p`*-_%x>yV^LBazZiC?l8kVDB{G?@tP)AQ z>Zy*IWMlgm&DD5JvUmYT-PQF>vi0nFZ+rELic>ugIjUp#yJ>1Z*SrXE;F(5*oja2k z&R!7%mOGL+z7~W@W@qc!Sj7#@b8j5gd(ldEU&#|1srSYtyEi7e8+XNVy;q5A&p4Ap zd1GR-nB4T9_;1<4b*I?X`HA>%dCfgdOg{5k{I~4-K25wo>znv*8RnEK`V11tzom!& zHnCh-3G#259JN6_xT_KQw`{m&g?OX71Npby+9nBgHXt3UZWWEw8v>_>!4mUD%>^_$1<*VMYI(8rbmMzy0(y{yax6JqT(6RgYx3oT`)3N*bw>)#O zyN=z*zh%n_5ju7s|CZY=*Xr1P{97)KJECLv@o%}g@^aMKfYdq}tz-A$K4-j+-N&Q& z03ExJpc)Z6b{`%I^L6Y#qMK~ivHN&G<)Dt;2Z>myWA{-gOZiXKvHK{L$?Ls!>^}aH zS9^=(RIL{azyN^N{H+O@M-AAFUYIIn~?xRq;%_ZWAPff|v5}x9C zg3p|(Hev=}nMB=p5M$~$CG&?h5d)r8CVn^E#o}X3_0ok*F?A5_4NUd&KjR}~ZN#;{ zCge})O!j!R7k~UHL*B$S79S;+A&xUzi;td`Ak#bO#DVq7kcC%V#iQHJ^|BfHJ+`6f zbiD#OwtJ#lpJ(ftYF%TS2B~!(Y&b)$ujYuEYQ6&LObW*vhmJ?RE~G%3lFZT5)qNaZ zG()YsK)R5^amVkY)cVTYn6B0r@h(KI>*9fNYMsJ}NVOjSkyF$<3uH6(^VsbX1>c`L zT{cz6PM2L&8MUI|`}3@~CDd_x*|Maql`R>VepO`B;bzqWJShbnJqlT zgTqA4DE$3thMSq%g^GmdRTsDXZaH@C8>Tl?2^@W zH_mNRrI-6=bzRKp%>{YBY*y_fqBp7b8<&&Rc+8*0yHP(`m295Hb;UZiul&!OReKEL zF?+~?jcUFOgMxT5Rt53Q4sKNAxfU<*{{lPnuT;;SaC7>RT|3>0`<*7lb%joqvFqK5 zS2Zt^xR{Vw+dlt?ykSmMze4GAP$X}zdXYlu)DVBhdhLwpREv^~JyBwonNA&>9i=43 ze6HwvTqK<7y#GU%d#EEL;$y`^>60L;>k8#~Q{-{=A=X=(srj?&cU0#ijx{H5ru8L- z@@S*hs{O*c4kYAyl!(6pMrwYVB?cIxj>mI5swYVFJNtrGl{oI|rxfl6=$Wprt{ERzv zC;82%i@L!b$q9Qe@?vFcvUqlH5_Pw;n#Ve#BN_3nC)s!aKVNu?7l|p;nsC4Rl33cA zyy?@EMD_1L4t|;}mh#2tOWafS%Q&y0_?+U`iR3Sg6w9TyAYE%jijVeqkdCr9`Eb1r zx$W1t=y@x8-qe06e9j7G(ew8I&GS|Pe*vtBiq4>@2a0;2s0WIApr{9mdZ4HWih7`^ z2mb%n1MJ_N;G??czoN0`FrXHlN6~p`PoStDw5L(@d=&LVQ9o!;pr{|Tr%{9tMg36J z584wb>Idy<6yZZrKNR(Y_5_OhL3XfuerUo<dT|4|zPuklo^t|s;s^81cxT9x+-0sk zczeDBKa-o!>A-co8*jjsHRRXWX<#OdYd(H$_Bd!{FHLg0W6*)6-GtL}Y%VV|_$Q0`; zW7ZgCfpwKIn+tk`3QA$N0;mdVIM0ywncAPV~GrVeJ-WJ>z zk!oVTE_hu;x`togqA*8!HsAXj8_g2fp`k*zT-d7yl5JU5MV<@2F?V&us^MU;kI3sg`7H8e;3mf$V9 zR*2#PdsC1Hm%y#&JoyBW$h*Skf%P6(?Sa{L;O)5f+;#MIXY_DqzAN7V=hH@=Zx7y{ z>wp{$U}*?y%SCW=xIX+-%ydBh4%{|mE6$e{47jpFX`vM=>4;i7a-A^K zmg|Bli=)m?uyhCS&h${<_qehAM34*L0k*D)-j(Zy3>{S7je8E+mGcJo z=K854#`|$Eu)ZzV7tu=z0=R%IJrLgq+=uhU8vKNF@V;2rlk3kl;Cq7Xd2d(-!#0>3 z!cD-=`tTD#-S{>*0Y7d8*O+g>_rv@Uw>u;ZVLDmZYoCpTqt-b7lyj+ zxk;QmhaW`8yMwIxK+J?8Ll`$1(fu$x2o!>Bfv~&=y}|lHu=s;Qk@X7lzJWawJd%40 zTL?EDh}jF6ITabBkTZ&lM#NCq!$32Dk^{L${76s}ellz`uzm(s&*s9p<~-qaTutzr zd@Vi__E^lsa&d?qsq#4P9ioJAbCLTRvPUC+Ja{}e58l&Zp8<+Rj^4;H5B8;)S;{Sg zZ7#P6d=a;p8^zt{dhnw_{rE{ZhXsfo3ws=B38GJeB?Pn(+2UY%2YQe7A+XE^E#lm` z)?6Ll4P?o`$LvbXujD>pW+As6mEAyX%aAt_Jds<4xQk$43|fKN_1sqQt?*g`+Y0a% zSiKg0$>7P{7K~PKN#IG`CU~!fWj$ysGOUE<1Lz}SE#x*LMh|sJd@$G3w#%siusM)cJS@o4$P);nc$i5T7WazhJ4BJ*#g>)d`a-x z1lozL3oyG7l!EA6FuN6$hKe>}_9N&M;x5GOM$mT5?B@1^??>!UnB5D$m-~#F6fPav zZlS7F)UywKAD4j~+hN}U+Jo6l?hyDPc_4m=h390NbbWvlat!4GpsFna>;$=jeiI30Vufe*qf8$6pkj(l10kw8ZgaT{h+ zK&4R8LChWkoj^qrX1{>GVsspD{u7`x7#+o%|10PlGL^z7h&y-_mqXlR_+*g{DucL( zVLt*Yjg{H390!%f$|JBG1)ahgW4w3Ig3e*(S42AoI*t8&!AJ%j!zp~mXdg(%t$f00 z7ib^)<|9U%LA%gxA23P;ZAO>B$7m@i5zpH@jN(B{@npWmC<+u0EO>*_6i^iK=ru+` zpeaDBR~U^01p&WaVl)gi4v6^zBOlN(VE1#3x`TZ1ws?k7M^JaXQJ!Md64ViIyL^nA zfm-7Inuk#nP&2%VpI~GIYJyJ;k1?_W+2FIwBaEtotni5^7b8PZRh+~(j820LIWMk1 z-V0Uul3WMghOful@$S3_Px(%KS;&qUoAcGdy|_|*4Cldbz?-uz-=4qBS%cic&*GHJ z0c$33-T3>U9()bH0xt;OyboVoD8rXVoZh?+@8TN#5AG*dT=3z0!dez11D@wi_)4G( zd__k?{*h(7rr^ahFizA z25-%`Yv z(0o3CU&Jo}UjiAxFM|x=mqP~dDQ}~nM zCoxLlck-vfPh+%`-_4%|Ka0_Beh+^h{5(c`_zeCc_(hBk@rU_L@JxOmzn9;SnZ2Mr z{6X0Ef$!tf`83$}fbYS21-5kXbUu~e1>0`$-N+%smI|KA@8Gw?wiA3O>X2aD0ltIZ z#&3l!1v~|{X2G@%d>fz4Z-#9P_!jKv0Bp(N$$S#O5w=a>o3Q6~upa=IAlD(L1g=1? zLp=)kA;@*u%OQR}f0WM#&*o2npWsh{pW@GepW)AepW`opU*IqCzj#i#4}PD&!e8Yd z@K5+J{6{_?`W^lz_)Y#gX0G$M!Ef_7_-p(v{vQ8|&*PtgKjYtF+od=CEu zl{^K1iaq~Er2F9aaR%QI?>kohhW;7!0ek%cpBtbnn0tlQd7$rD`2q7!LBA05F)WW! z!*}R8IGf9$YrF;jn=2=j5sLAq{CCa^*k&LU6UqZo4TK83H!lEzdA=I>cP@r234|7e zAJ7HC3#ic(qhf*qlkhbVM)QuqoW}eJ&JWxV803UMe{kjd<9mw+d|jYkf1UtAMZTm^ zj57i^;>!z$sG^);4&>+g8bTGJnot8&L9i1V2@Sv-2n~gbf(2$Of@%n6LM6c%+!$WQ z(2c;21Vf>=P*11}URS6im|$!KZX{F|s>9bD++3(Cm||=MZiICf7@LEeBdWDfA69En zb)m7~gshE0wFO7P5>XsMwjfKv3fu~@>!YRy;0*+O%-BQPf*N79DI!+~nF+N}M_ur` zf(;_uKw5+9sa4kmuZcZYLvC|$bNCw~a!v4>*iS9NL1+Tr1TpG>HwJI4)?6@rBzArL%J@E0Z_PcQIZ zLLWp9hQ$TcOz;r~2m`?f3PVuQU||sWAlUk2><8`#+fZSIFcN&EFjg2Qj1fkGkAiJD z#-qVU!`26pdw};4x+89&&=_w-%$ud=8hm2Xp>Q07$_Js-G$EJoe{Sq z=G?*Eg|0#u?AI0C6=%{Ed+h+;0p}rNkDlP3nDM|F_5<&SGiWP#yB!>fp^2G8S3={_d*UIVVp1?d_2x!0C)g+0M2Cs){g}r zD}>-{EOs6Onuv(~aZ1BLWAHT?o?}46u{R%_Vh|`0Uqj#(2R1_~D}XFVU7?Z%mSZp*d!aA6+!Jm?9+3e=SVN`%KM$Yr1vh%yry=76Gv`NC4vG9R=Ek(WR& z1T97NQ-pZ%c+@=`{o!~nKMYt=R7OsL{6&?wB!VzH?_%7kFut_)|90flrqzW5_?ZOuDEy8B3+$R__z`fbS9Z3lD@l!aeYN!hPYfa17ZV zgYpo0GiEk|9tfv|OTq>43&L4cc2+nCeonY3oB^E&Kacs#!Yv^OJV&@DTmjtxzaiYj z9&QTP!LMWfm~c=y1bzq^?qILS!H*;JW%wTiKZv}LvBzE5^9k@1IKzFg90flroJ8(yoc3{0 zmXM45$H0$a|7T#!0?)!84uUJ-3aVx&oeiFix=-O89)dpvF;)78Spb09YMa`;OyoOA^T47oftiZ z?t4>LlRQANt72ylSrpyHU=GBy>-NdIEQXka**aPyw{{^}m7 z^{h0J>G4qv~&?Ie-;e1MNuXLrYPEkiD?-aX~F$o94H^$fz!yt3a7G1)Qf z51pMqvu}l6t5@vTS3QSCSi60nH+j_BP~6vi)*t%$4?o0ZT@1yKuxs_CU2VlXmWCqb zY7(u!W2B#Wu9Bg6$J$)f>d!7lkgF3biUU25OIm$d(hkvQVMVc2&*PF-zwb4l7`&<^ zb~ZN`wR)c~vE)!D{C`%IwEE_cJegV6P^><$gsjzTSL#ES{jMa=j4vT;^{K==1zO{{F#0hI_n?ivkX4zNyW*qnRoX&n0=D8`p?yqRlD+htEAOi zJ&RZE(Iw4@R$o;rR<*NU)#{~R$EbFndylfTdIWy%H_Mx4{z=m6!?MPR%wDFn8PVz+ zd^1)1s%Kjzt)AVjj~eIlm~f)iPc@yP+TWk>AzFRmoj5hl>x+-Fw0hjS>8hR8uhm2A zZBgxS5J#(D*~zQ%osn0ozpdI!+&{pD`1b1{S$wi1rgkpmrtME@zx7&iWos8=wBUer zrNTl|1wPy1W7B*g8L-5KT zNS(`n5*sXY&c>?IIK zt8cHnK#kwEqN}LYM_3ow7ddy6w0gNb{LFU0Xfm}~y7V_a@Lqp4=AHBxl2$j{W3Sq8 zKmQ?VbtjXLYR$Lcuhr*_FQMiNL$1H+x1)U2wF#(GtJe%Juy?|~w0e2tf?Qd3?u%Nz z%Kd_xCD^t4i>&%;%?TZ!idsEvM>uJ4_c_V@oFo?NYd$AQYsRLD%$@;zp}r3GEi>k- z{wHQSOPlq&Fw0rIvF?}Z-#+Pz)ZZAtYZz;p{y~XS?Hqi*>h;rDJ4o;2mvrTywS%B{ z`xH*{FY$EmH9OH0`cvrP*X*R2vgzV;=%LUT==Ci4^eQC~W*_|~NlJU)NA({EJvZB% zv<)puC)I8$_8av}Yy*8V^gO*?SG%dy9d_o^9D2yG3FMjYFOq#>zGP!}QY_S&{RQl~ z7v`(ESUoXslElJXv!FMIKl6DEpUu1N|Ji$?&h|KMcpvh0*-A2P&T*;KFZ}Kcv8cJw9)>!Z&T_H%YbW52>=aULW`W)idR}yr)bk$h2>Mg#zIvU9&-(sz$wd6l z*u$lr#f^G>PHAVUov9^S=zTUuE)%`==V|fu zxLEd~o$6l=`n@l_s#k~ZXf28C%-6v`$8LeDk3pP5eKq1Y)ceTDo2Fko8F#e*K|#!J zi6^CDzxt3VGY67~htK?>M-Svx`#spTdZyn0T#G}ZR*!rm;qdykCKT_E=|0tCQS< zI+?##pJz5(&3hRBTD@e|0{dg+)#^K4>{WlOlXoPoKDGE)apC<)QtW)L^fz5-8c7CZ z1dyI-w9Fs_jeN-Y%4iy=zD-#4eZVu=-T1?Gu^&q~+Zw(C)h(r9sQ)6RqC)?08zt zH%apQFi&nhGL|&0ct;-ct)EiXU;)|ix->Pd)KVOcRQifJ}*j_2wE>8B_d|Te| zrk^t9;dtf4j6`XbFkhbKGeLQsTua)raX!)NJ6}c1!(C6wGlTu;FRyf|#+PaI)~eZA zR%DNO=HoP)_-j_y;Zo6Lck@$nsU?1N&ic2cdpAF7-oBf-(^E&EE(jwnj#?=rt#!)h z-&0A6MOKPW{9E~9A3xf*Y*#VK1izQuCze=Lc&gLtYo|}3H#RgUO&$8nCA?$F{)GMH zQK=z{OTSoozF{UYeKS~T-C=?fxto%9>wV?o=O!qJyTy}+A$dBj?zr}_l#@7xT1J;3 z>9Y=tp3uYBlpvmq>K=$L{Yc*9G*qcJXY{_D%T=gRjn2w+)5n<}Lodn`6GzhX218u@ zeuYzI(vt&A8b5NLXElx1D*jmdw)je(Zp;FlpX zUwR$sy`(-_tMgadpIa-N4X`6qMSrD~Rfv)#+K6Yzg~(eC!<7;j=7~W&T1i#!w5B7r z_8@ahtj-DZR zv#Lx(jN1I6heXdH{b8R7yH@w!x0dv1G>7cMTK^{Nh+FTul0(0sKXi-VYvmI^W=m&> z1yQX&)@`z~q<^-w<(@6k>SuDNDlzd7r6nVyB&}YeLwh>wgn@jzjk%)L?OV53?)E4q z+XR>^T3tRdmF8vVOEVVEl(f2G%tU(dYKIw8S6Z@JPVn6&4Sf`#Xm#8Bo5@6< z-BRGi07a|&q)b${t|}u>Y&u5P>gyU$rbi~9mMXNgC0hORwYKzC?TymHkrq^|U%cE_ znLcZ+)M<(Z)#}A7eUr1fu5|dj^~CLcC3$+;k#tVY*r=3$?ETjV(kAmGWihO$tc~B{#CBq`Z=3w(>p;bWo1i4#j+Twa z;I9y>{}sf1mDo{d+Bb{T5&huDpxWtL%)~( zPs}gjiSjecYs8A>Q%JDh!@ZCW)a!D<@rd=F)xw;WOn^Qqm^G%e5aqDHrDxKxaWULbUJdgxi1k#l4a8m{Czd zK~w~$s|+A!G3S5*QA9vR!2srnBIcYCb3icw-ECUtoO5=WGiF`hf7MJkZGW!A`S#xT z?0cTOT~AfLZ&!77O?OWZF7-F-w%4G~${ZAgWDgqHGL%@Yh@fYRM@TCtdeEhFUzkpG ztR)AH^N?3LzcHQZTubh>Dpcw{CxQ-{7$JphsUg2Sc2G#fzCm>cNyTg%*oA5e=u2lI7Nrj+G*4;FjZJx9pL0SPK`S{n=TP_Bna;$aLbA z-%~odJwoo||A^d}7D)FOb|ep-z6ghghST>xYov;OwvrxwFPOTAgv(vuckzzw9Y$k< zQ=|z2J-qWj++|wxI#!miZ23uH;lHox-afu6HZV1CXxqz?h3irhtt+A5{YxpM3TR;HF3Ea zMq8I3k>+kJNfKX;q`NOCrPB3bbmq4mq+FCco!z}5v76;iizD8N*nXC~oGr{yBcpT!_Psfql#m7stdUhbk+egUXwu~dq%iuc# zqax%g4UkvvL|)-%bQXU_{PgZPDd$%6m_<<$^da`0h<#7AkD#N2YSSGPD$?(BL&z}1 zsfcsW3y})W^psl-bEe@9L!?}YJ0V`tFobM>)L$xA&Y6~cl651+@9BA$2KWO#d4syOnMdfVga?yZd z4sr=>H(|R^ZwI;o$Fjq*Dn9b04REZnI94~?+VuOwqH;luZ&S>HS{F$0I8!``+#eh* z-%c3lanT&pKQB%qy=oSf>faqKS4o;wqrmu~w2|FZX@YNwn%nofP>1&>`P8j3JM&_D zAG@ifL32Bgjo4oLy@^g~Rg*qU2^8%r*P!Rx)}R~udWwhJ)s%a;tsytd?kO&4UsJBo zs;2xrAW(ddF&!2~(p@`Sh*JyAAl9!VX|;~E#80i_q^EV_$c8;N#X|2Q<+63+q=msX z#Sp~JUPsEwXKISCTgOQ&7e&gmU0R513(p|4edDDU87;&Qp^-GoKb}OE3=o4557|7q z`lN`O;wCwk9vu*~<7lxG;*m44a;xd{rBN9_#eAWI=*1P)R@^D*=(szZ)KO--yS7TnEOuH&@Y@;D4!@LR7oO#WjiMo5jx35 z&aaa?EITWm%HBy%$(bQWvq$Xa9!?!9C6Pj2(@6JP=cJ?7-Kod>FcMxo zf~KVnB~d4{(`wsYRYE9 zEm`u6_+m*oo%($(88;+wsTJ^EuKRrlY4agizVbto=C$`C35C~5 zUk-=Ur*g6|_d<5LdnZ>pD&9&?GK5OC@hrVnagcP@*iQ~xCrPc+y`)1!lcXN6!)fup zTg3Yb1IW?k5p>#(2&vfq?DR;4tK4^-mHg8l-%)D7^S1I9vC_w2+WoO44P5OdwMOy zv6L;Y*Due*yzY6WS9t`wah|%_R$q8%u$2JH0Ph&=oa;K4- zL#1wOt5Wy%SEXYY0_o2Et;rhe8Dv3~(b9?`p;SBPsND~wM`r`+x=$sgAe(v8pKX^& zX>a<{uTLHks~X+tnerWpcFah(8PeyAv646}^p`P#W8CGJgF~gJNmZ$K{Oj&{N&b9+ z^z5FeM7y3NC#};%taHj_XQyB0(T-WZJUzAchtX1TdDt&wIwgn6g+2#K{->sph0PD7 zN8O61W5;wQEdvXk(_dUd$9-0*^f+%@Nc^fx&FqY6xsCUp&?-=)=3w)2j^{OobO*W$G0(YfS5 z=XUtz{@;>zh7|c$nQGe;KdRD;m(P&Vi_6f@>z?wq_Q9uQ>etGYwFLc2e!S30a&kcl z%33ylS#@(;XyYZGE3M1L2Rv8WY|UQsym9}Re1F!m{a@XDKoT2Pg}HKwnOqWzCC=>aZ;>fY0BEuot@}#`xCss-R(=f?YZFr zZ%Yq;#oJki*L*x{+4x0=ACSKT9qH|Tmv~z{*Dby-r42&P*1=k~F1K$t`M3eWbIHj1 zJ4ldMDBZdKI#KfE7pKXzna;HO%4fXooqUYcLOyomao+xQ{t|C;j7<*a3Smx1PW)~b1l{9)rlSzBzk z2d&rYAvvAjg}3*1dC=?U-;go|TzFe!j|YuA^O{5=XYFL<{V$#-d5XL6w&Xz%Ix+nj z@h|4W+fD~O=vna?@v(K`ZS%bz)ce|T;_u+X+fMsEsLQ?wWESRQZ6f9iKYfWjM$X!= z$P4UwMH&}%;ceG_9(2jhqvQnoS$mru-{TbNg7vdD4C}w!`UPJ{vU!gmernFqvV70MOKQu;*Xw?o=d5LUp#d+|mW`h{;1$nV%ko{- zp7WfwEMIcM{CZf+@(lrRi2El;8h-mGS@7MFu6yyET>j!nO;wMP=Gb1c^f5B)ts^x| zIz>wDb)?N#UnKT@9VwZ0ijRA8{~_7+&5;J|Iz{YT=jLtQIu7)vC1)+mD;#;Qwrt!s zOU_!Bj~sqXZQ1zhBg{E#S>DSulME#rNV#MEY3jP`M9H5`#CotlYuUJ}@=czzmgT;m z9;z)Hmr;HZpJ(y#Fg}lxf6w-Yk7F$xH$J;LXD!PIS>|Ca%hN5#Wi30-Hrrcj%lg+g z!RN-HT|{Z8ev06^(hhtb#B-&cd^n8faU=Vi_iH`)msZ)Xj2r47OeN=Sgte(?pT3Lu zr7f}yuMgWBEy4Lh>prMIy<257sdhAsxB5KKqhMNn#&*)SE&l%mT9#KutDlGUv+WDY z;Ab7YKBXPKrawKj^E7cQ5z6OhEjzA0zuG*Q=I}j0l-86H!E>cu_CAQZG(13*c0f#j zp8t6$jJLB}4F086wkzY)cR$g+E zoX7p!a!xQcg`6hAP5V-}uct^qw8I~sBmvmoBMhH$czqY0Pm)yEP~LvV`DJ;rtr5Jx z#HT@YB*vFS%l3D`b~YaycNphoFZT0IIZfImT_UAc6vEFG@x&?UD~UV3h_|b*KH%H+ z{bT<;!?#P%r}A+vhc4&s+SI3fyMF)v{pRxiHhn z<;we*y|3ALC7(MWg3q_H?lSXnEN#91bIClb6vEo5pd-9x`O}`6pX+QMCC{;H5IyQ} zh5S6df?wTS%Pafx zc}9g#B%7{pB&?m`E&bAe249;qjlnpjEj4`#&$TTZmuv7uLN0IQZRuJP zndm#0#1%>5?Z9D2)ZDfJ`~yoVU~4e2Vry3*v#9;%K4lCaR{&#`e!BuT*pC&yubnMg z-fu9NC`5)?ir&w&DMGs&oAso99=Kli9NI zx`O|=Yo{-kG0M8MYv-|Y&Xn_EdF|%4WuB*hIhK0tU)QIfU)fJRzV3KxzvcMq`t|F! z?5B)Z+5)z4H-0I0HU(^zqW0Ng3@f^^e4Emj*{`{7zuCt;$M45z=lYk}2G{1lrQn+W z%W>JZ|3Jw+x0&boKQxc_{IS@4eg5T~{o{6Jf90AgxzZ~0DfzE$=DYsa?dtngeJYrr z4%+S7_|dg1af6sCq71>7YxSlznc#r`N|#Q^VM8ihxU2dkJLJC zemz;`tLppE^r$K7@gL;%roED3P(J?E2w&R4z6Lq)xGx{C&*xhO(Q7wSh4>NX`Sp3Edn|o6wK-oa zTkqN*L+GmVZtD8<`M8fm=+*g|{rVh#CQR8pnZN#Xd1Cc8w13TN>h;j)cZ)WloBW+g zqt>JNn)UgOl%_NzwhqZPwJ|?m`g}>d#owS{1_Q*XMad zTG4$CUJ8fy$MAlA{-S$b+G_N0b^ZE0er`Sb=X(5|Im<77UdAPWTIc;JyqPtb&#%vo z+1t~v@5`zC>+|G!gXz6F4fww75c>Sw^$7Z|RZq2FpZjcWMh|SaBaQt!@iFU`bfG7| zUlIQDvEupS@UAq6!(}0E@)z^@JJ6g)A1gpQZwui4_RRxm*-ljn88D9b>+@~l9jJHC zcfyQkh4^@Ves6669obt@U!OkD7TK6K-z<;@9}e>Q^|^~<2YTKrNjP3)0iR!=dpB-P ziw~(twp6Rd_t)n)?V8h>JN?z;>+_KNt!b_uM&g;z{5;X;S-l^+6%D7(!_D^&yFU6n zTUuLsyZ&~e;KLPs{rdb-njdwsZ%A@J&CdJv`KgNGwDLIfdxOod&x7yA(7Pw%)%U+X z&)vNSeVca-d7tFY=WqL`AKkUD1=-%>7(ZWPS%FrX(U-(8w&DF_ih9x76QW4|UU_+b zXRibOnlg`UEY(k#JIhZvSRx{^O!hWOfIkx2us>Jg}7H&B#u=H4GD8_o_qZ zf9XMnr99{Jm)={C<}-F6GcP>hxsP0dCO2tBS_JJ89u|lZ^ttuErnKLWY~)^!IsEwg z+(m3e#Ua+Dvg=abug_Z?C`%{SX+@gP*eAH$9xv$g>L+T_>(6SDA}f=H+0r4CJ|7&{ zkdAF=Ljv=d=hx@feOf2j=qq^?Aqft~4^+a#C+G;p@pNZ*QzmPt7esHXhr==hNqT-#F5z z#)%~V<^4kXq^~A@KJiBhYCS%Hc`iSL%X7c z=*3+G+mnBj^VOD<>6ffX>hU2$#B5($^JZ&OciUJib zCe)=TtVgK%hok<~(RPhhpFS8lfCJ-#hJ%neA9;>Z!lTyKWgnoBc5g6FN4o}Q-{u(<8SwGN$-3(EV%C2 z%+H}dzq_Ud9sd1EGk2n4=|A_Q?ru=(LsVfcUtO3m$oWK(gHsSH%pZj z^!d+nF0_1)a->1IzlD#VJp_HebW#QCkDu?}ZnGloJ`51_dG$q()Zw8Y$+JE;Y402* z=yUs*RcXq7Z*tl9Zy_Pr$)wL8EowrCl(;1H%yXK*K7IZp(U&%<^>GMM5=CizCpVym1=pTJ@5ufv~gbKydee}8i=9aW$>H%TE zjjeoteeN`!(phg>kYOSIyg#cvxN|MKExjr!)b_eCG`X@VtK4lvReEaWXwsyj`RDJf za>wC?=;d>}$ic^>`FgU-tzz+cSZpde9&}20bvVM5Rql7OAYI&Y59wFLJbzZXZFyIk zD|IyK_Ifs7PgeQx?WJkTUk%CbGWp4l!$pOx@)K*EX~y;mXpa)aP3KOiJ3*qH1eb6Q>NyZ) zo4_56K^+54w+^)B9;kc32QCDa+8(0qedwIyP@EuBJHQwp2Tyq!>Sd5z^Fg&Pin^#F z2NX|7*x1%6*&%9s!)z{&!o+D8Y^#Rih{z49rwd9E^wfrxSrw%f#AsK{;f_)gQFS=j zt|&#}>=IbMJyF+1T^IgvFVyu>*M~pc2ja9B6ydIr(nC;~_G=FxGdpH4fw}}-%N&@c z6zWp=a{vce+XXSRJKSAYlmJ-8t+96~N(kgprjzGJv4)3T60gbzdzC@W^v#O!ILo0f zhx2k9?z0tYEBu+$WSqq~)N$}-r*O%43RKYvFu5li?xDU1SGyoLzzbrAia7s11_8Bz zStnrR9Mp4gHSS{01k?#IZ12HcO+uZ7V@!ob8jm_2=i3%Xyo34<#*KwO$u!}3^tZz+ zazpI~4b&e#^=QD1LZVO#Lo}QU-2!ZCooRde_2MSDcgT zD4noMPXk3wu~JX$RgXK|6nodeNIw)`c+xE)e0N3}4r$mAqZ*(z#FeR!E7KdL5AK`$ zI4^lnvST(6+y0zh3-kJ6{~9RWxI*3vbt~p-qGfd(*qd%>S=}73 zv>d+!%HbIH*uOV&2izmQQ1`<5cEG*U6FpwIA8KRPZm7HAUTcQ+4o5v4u4_xYGlEbD z;T3d*xZMwRKfG7UVg_eJTL{wqQ1?SmYuqDYsKby)!mkcT9S#%EA7?olbu{k2K)i!S zqaKYb&?pLX9tih(Fj`g*fEOBzmeu_YQIJQ+AR3Aig}bl> zUTsMfcihV*_mlF)YNyV^B8|X8e9i6b{!Pql18TDmNY&$R5boHWH+uc z{Di&CjA&bUf=simj=H*W0d!kx{LHOfN8=NNBh*1FV=m)tgB8kL2);isTL#K{7{f+f z-vT%vIq}{vgtPGn&Pze8<`LAwhbT3SXQ6N>L)%Y=*nA24{T9?)pfsO@ZoLyVQ=G3r zq~C^m8w6?YiD-ENVDV>6&?SzlK1?3?B?t~+#k6`pM ztWiWQLRpreI;Wye<*VF}-c*#mI6@j$bqIxx649PQIf?&HqyHqzevJAP>)MNwjJ|#7 zIe>B!vz_AgNsQTvL@VGpNt-b)3N~J%X|uSK$(_**TO4xGJv=x3E5@NAEzn zg8t)%o2YN%ET2dI3iT_f%S=`-X?%*}XgrSda2?~WV-!=FU5zhLsu-EQeHCYd3FJ&} zUWs}odX8a5mvM~CIKnmbzCir~*PiLig^Z6-Y8#m;ei2vcB35?^^&`}eu*Q{GVP(9l zHsCou8RZ^68}s9x;)F5|pNfm|4qS>d4)4I+cyDDxnZ&*4@GF!BUed5)hMraoWC9?wue!|T6_Gw~AjORW7Swmn7t z6mwj}9Dkwy3+rWe^-8SwHRd{jn!V!JIE!E5={p#iH=hf2F5^eMx2EIU5ayy-8K>jj z{Ra6PWXtg_BSzFl<9oy3cyHD-&cr)6JL>EZKi5K0|AP1N7rdXd!ALe3XW{++4O_oq z+j>~^A5nkAJ9at5ZEMV9ZCql=Z(N1%smO1vf^Tpj5TpyDE(piE4)o~asEb2~t`Dub zH0si@jvGLec0ui8tY*v$%egA*s>T)2mwk*2Q7^=IA2f#d?1tJ6im46cWKYzdMmt!j zPH?6RqnOa+i5?G>#+cOwvpS>HhizH{erW}ia>n`izJsQyn;I+O=~UME9d2q9e8Ut??7KG{UyGaF}x%-x++3`HX)<*RF)R5-e5bdE2A5Hx@#FBkbvo`mG@kyymxt ze5l{y`&fKYS3;f5_!(#QZ-WDz>aVb!%c2(W-2xvVn%knTg(K!R!g7-|uG?>8xNefh zbrUtNo2YT!ejCGb0@z~n3Sj zHy&GDH%a5VNgCHp)VOXuwzzJR#&wf4uA3UebrUtNo1}5wB#rB)#&F$4jq4_ATsJj_ z6DDe0H#LUqCTd(aN#nYyF)TM8TU<9ahU>=9gT-}|G_IQ(!*UZfuA3UeauYSKn;OG% z6E&`z8pCpvG_IQ(!*UZfuA3Uea+5T!n;OG%lQgcI8pCpvG_IQ(!*Y`}uA3UeauYSK zn;OG%lg?(kZfXq6P13k-Y7EOw)VOYH%&wQlb(1u%8;>ono1}5wB#rB)#<1LYY;oPx z7?vB4Ev}my!*b)X#dT9-SZ+MFxNd3;%Z@z~P13k-lE!tDG_ISZaot3X>n3SjH#LUk#$$`?rpB<`M2+jF#<1LYY;oPx7?vB~ z*W$XVF)TM8TU<9ahUF${T({rGu-y1~i|eMwu-tfTaoyAymK$G>#dT9-SZ;iNi|h8= z7?v9!Z*kq!7?vB4Ev}my!*b)X#dT9-SZ;hh7S~OUVY%_x;<~9ZEH_Exy7AcJx``Us zjmH+(jgPUoZalWQZhVZzb>rJDt{dNOaou=qaozYBi|fX>TU<9u7Ltgedx6vJ}kYqNN7lE!=E+b!OkdR%yKlE!=cC06V=Hb#lzz=?_j zr;TC4@$Jln)5h@OB<8m*s^&Kx^!4AYKpXQrJthHuBWGv7`d z!@A?!nRTa);okA>%)QgbFz`ghz|+Ps@c4F%hxacrv+*JT)Hq`HN`h zx|r<4{r^ufEIqz9X6b2TxO$St)l*|wdOWtcdTIV_15k#?||63`s%`u=MykEw0{gV_1584Hj4Lw=rxyeoic|o*Ki_lQgcL8Y|;1t{xxHVpw{T z#?||63`Zvg-JyGN8{WgZBCuv;0-^Q@?B#o=5#<27x zjjQ+DIBezw=}L)o^731{ppA<*9xrWJxP;W|kSu89D$Qm~Rm!E4eo%0UN)VCdSwXOcm+Opw$gMm?D_{m8=srJM66#jozU;;f;Nu$^g-N< zc~)T_ZR}K~i6~+{g(Ca~ZQSG367fmnbdoPLUDU=WUN#n2lXUVqzn`d$o5oI%VlZAD zkS=QD8*OGwHWf^ zyb!c8`^@qZ)R2S8E-KcD<0^!i`k0%U@P7({K(r6=3*qwMXv|9Q<$?@4$k8GL${>^@D$&{ zQ-rhVqd1Fwrd%L*;4cdB7vU_*HQ+4fg|j&Fo;4F?XJBxA&i?e9Ry;5px zaTXil->;UiIE#OjiK0nx7Ehah&f?v$9+WwY_u(vR2Ok64^VZTxoU z3Swt*7PrDvRGdX^91VX_aTc|4=iMu$mT(rg!dVQjzEY}VaTc|)1R77S$NGqWlcb;&`*OsK&4r z<^7q?VrD!yiOjP&i?*7$^4%n9l*L)p#;_IXMmUQ@%+8`3uW}zDAAz%I4QEjsU%uQ> zehp`FCY(iW3|o;hXR*22SyW>QQ&a}6*TsbVg|R+JQ5 zk^Mayb)BN0yvJfII>ok9Eyfv(GuHrfkuJ2Di$|o)HN#w_in$mTleup|;Rcji%th_7 zzQisePhc)?g}GS4ZxG#KaTag%%kHxk&f*6+i;IuB(Oa3$qRgDdOK=v0k_X9S;VhOl zJBu=N78}4(dtZH?RN3Mz1|4>jAHi81Z*~@mXOZU8c{q#fx7U!Ftw`V_!d#S?xwrx5 z;_`_e@)+2PCt)l0Y8fi!gt>SQ=3@U{{1BQbNaC(Om({*R=a@D%sKQykQBy5v!1 zoK(9)sH}ZXI`!Eq)wbA*H=MqRf5KdR3v+R1iyoU9yb@Y&*Xk%W{?lH$4CJBFXKzDEZ!s)MVx?-WwcE z=LD3Io@Dq)&-+Bl+W1EFF>yE?{^GV_4jziX zD1I|kSNz2tIcmx)NuRVeIcn0m$D*W3gYfTw{G-UIL?3zJp>d{xMXJhcKgCKD>O{~b zD|<0Yh~`f{=)uDK%rB(M|_6kT$P5=HXR@TOCrq3tQ znSLZ)3_tQOvmZ(8!H=v5Ke9x@YCdl)eq=!EN~w~?kF1tZOKzKMxYVY$vs}#Qf>`3` zDEUR1nc~dg2zgQEp3=m}G18^i&%~OQV&p^qdBltd;qn^iV5!BX(d59>+hVOAF>?7= zk4-ZMyU7c_gi7-^Rii&nuMpFR$H@KLE)p)}njx)&9ryrt;M!>))7uY-kpn}o3mrq| z@4i$%MlSR0gRs(Phj)EgeU7mDPD&q5S3+XsO7Yi)68P?*8AoHKU0p({UE!6&oah+Y zZ{i~1*kCt0Xn&|wY`vs`||F`Lhi!QPwk6C< zqL`PkEhWXaOmaObnk?oeY)e_OEo;0FlN9svOz&{g47TNY*p@IasbXHjwiFcG66PgQ z%*%!y`*|z2CCp17#k_=VNtkW<47MfAOL`UN<$Rczy9}Yk6Q5-_U|Yhxq>6cYVrUZS zZm}(4UeZ1m^AfhDtk{+h5(Y@jyo`f+>HINRX0~O>YA-2AktAs=%*)y^FJW8CDX=Xs z!nSOmk|d3_n3u3Ey%pQi>*5)2#k|yh9>KXJigT&`Jc4H_E1o4xN~sr|%Mx%d^SI|F zFW_H#z`u+cj&u zigT&`+3ye7#Zm26i!oC@s5~=DnuX8Swy{wp`b{mlRL9k#+f#RXZMyk6{A9r*!Q>h# zXCzG%hZc(`hju1Pb?`a3>9j1otUpwCcAF|L88?X-%G?njb&ru(8vZgJaGoP=o}M6n z?KXs-y}VCcI3t2~ng(mD$QSN`&FG`5ZqooB?-F9V{;IDAIi21SvP?P}5< z_g9JA<2-0$+CCw0W&}Mnb`=@uF^7C|N)X#(PM-ydBsyON{kT&WOjRSPm}i<;tVBG? zb8j>mS~r5;pAsnLB&BJC98JV;g1@n=!C$AP<&`Iz zh}(VqWrvK>(sxq?{k9=ciY_oz&Niiu*eZRhl(+O6DgUqt`rId3YL$Ka7n=G|W5PuFDLJMA8 zAJo-+Sa@lO@+RPj%ld&)de#XnWNQ^h}J?kU?}@lO@+RPj$0=k#~(Dceu+ zPZjS}@lTn1%8sk}r;3O8JNJ~0Q~XoKJ7q1KU-3>A|5Wi#75|jEr)+=4KUKU_rB%FB zrB%FBrBysr#W!91f0=u_>p~OSbfgpaL79JQ&VB#IJ^d#K^^j{L`nmZ^LGe(P{9(y9 ze7oYJ>T|_MeYo16E{Iqu==1UGn(*!B_MV{lsJ?4jV*5QoaZ}CtO5x$UwtT$etLk%Q zoU)%XpK_euYn$`^6?fH~-xHMl-*s4Ljci2UG^($9tV?n=q#1+isxIqNB!k}71wnb z#!U?yJ^&RUBBwdsX~bd!6^na^|}-?^S7;2dnt6%zb6vtKz@@lly9Zp4}6a=bHI_ zTAV2FSM&4ho}fI(%FDqdZ@f=c2j2Cn(P;)CGLJKl zqiomC&&IH#%&*MFw-qdGC}b(-eK8k17GJyh7(B){d#qoX>(|&ke`cSOv+=ruKQOb` z7t0uBUD~xP$Ie_6d#%d4l-B(E|K(Wfv6c0hTmAgXe(Ld+b8WePYQK^z>({T_vY#?u zX$uuDh;y$k_5}+SR*Jga9%ES1jpf^vzRZ5jb^Fae<~e>pMmyKP#0Bx%{#y#JX+fpv z*Pv|wKip1XYKX3RhB`|obou16dHyYpn;i~n$Kvc35yo4PW1Wx%Q>k}t4xR3e{&u>C^6F^*5?oEnGUf&UpvW)?s${A{(AnUY0YL+ zh(m(eA=c-gyuXr(v*L(VpF#Zf=<_XijMR7UWO6WnU*50JpSCMX|4f)oRvTY)C*?&y zTk7nR=@3)Fj*gv>=@5U)??A6zpGp35%;4i|l=7wt>zxSM@#wet$6-}z;jRnG^J-?d zcS1sL`tfF_JG_2zZo2tsW`3=273%G?m^5f}W`|gxuZXQoyX*-i zjb@o0sb*3Y8Wj*qHVinz*VA&7HSLy^=@9Gl+>utaP00zw<8^0#e)M@#eHR++I)Hqe z^e3P1t6M#KKCKt2l5GihezMAod->24_<0tOe*WvV!J7^^28Z~@dF~M3vuZ#Ohvgxm zPt6YTwO0Og)m0DjB+TrF4oN6ai{8p~h}Q&_r+cesI>h;o`_e=4o}^M~vqM}gq&~Gb z*^wO8_VM*nIK+02nNHlu)xmUT%2wg|lVomt>hraE!|2IHllZ=D!3kyC(p}3-le#@z z`Ro0d;74CQbtg}2cjsgDIo=HPP@Rh8O}SBg{DL4~dOJ@IlB=)TqSNQApZB4$XH$i0 zv#av)`uwn4EOqy8p*p0sz7L_RO_|QHJ}>oQ2({ai*{{#>_ox0#9b#KJ#G+@WL#)qx z=4(K+6K8VM-E6t)^J$x#(&QC&NR3%$hghF?Z`PPT_VXn#oy-ogKF{IVhz_(aO^iVU z`1R1|xdL0k&3h?q-EBU;K0nu?E)|z#I>h??&Ww6=?4eADSf5L!188XIM`1;r*+J9i zle4v_w?AY$#QNL`4)KwtnGUf&kA_1W(xIn%KkDv zk<6%Nc8K+P0vzJ>6o2*kqR+!_w5Ds$7|BFy^YcWXXZ3#YghM=QWTr!`&)s&mrKibu zVSA~S{Cw*3h;4p!igiPB^mGp1ug{mkA$FXY=@9F47dXV9o@P44`rLVKO}c3M7_!mL zfzRKvUjy33K7f2Ko6OJmsgi`Q@(d;&`hDg3wZ`7m*e#kI-D!4&7YW7b-thV4NsInM zQa}ZvZ9sln?$TV+F8Y%2yjxvised-Q@Z(a_t3VENCBCyzxJ_NUX-Xi;;bwM@(}vWi zH$pp*i(gLh`NIY|(-HR?kw>l83mrDc2>QIh_Ga`{iR|QwkJ$#*=X+8b)AgIJ$*YfM zCr+Q29g6SQd)$h|w%9I6ZW9E3zNoJ!-O}5WjBBw*5Y`_y>GK|k8_|l>Y{=GKv-tVa z=j(R5(s~D%lO>_W`0L3kzvmM`mu-J1bPSuu=hNpt9|CBD{4a!u{^r-K&sWTAPAB&M zCPe*ZcH;E;omtgr&!>yX^WtWQIIDbkOJCaZQwcJ2g86>b=hG8P(tM34k`-ll2!_?) zP5S)Exl;6+sU?}`yH^;$BT>-jf2^~kr&Gq0H`7vt6+{Qg{b}oSW@DHgU!NE1^#@I>n?Tai{vbKd_Yf-f z&qI55m{0Cpz9szmqLnZ}u%XNTUPqqWMGGNinh2{W80eC|%gMd>R;1s;9>U_Le)JJ( zLncJ-GO8@{c78LGu8gA z^0^0U)62s%&zC+A?b?bGUs>pK)_jlX^W`%FXw1+S)0 za(G`spEtN#owh4joV4@0C#*;-C+PFI&Q)ofnocD5qo=}yq?&?0pZV39PJiJ<+*^JU z24)*5=<^ZfOVMGE8jyoQ--UO+(Skl-W#dk3ul6A!Kc5MUpHwpG^AS&*Qn!_-g)esI z|No-TCx$nm_v>T`ue{Cwe?*^qHVB~Ky30ZU{{A<+ANBdDmd$95-sgnBY!2~$eZEJm zL!aczP3|wgA*^nA*him_i)uwb_@@hR-*4sn>+||{b!q6XMxY6FOCg83PiRUY5DIF?Sq7o&|m*OT@Z@ zRo;BRD_wYV2NZZRd1p7TcX@%sFDiZ^}zv?aMP%6$Ixxp=z*o%LxM zS=PQ7-(R24fotA;V^=aYcWK_ARo)iA|E^HEBPsXrA%A{nl_yQAMkl|ROA_mC{=zWn`hPCtsgFA7oRH+8=2`roX7h`?Jb37M7(G(xXV) zxSPVUCH+iU<^JPq(mdUr$f!9lh4~!^n6k>#$GXruCHs<iYC~z{+4c{zIzTug_h} z^`Z0sx~%r=^Hx*)(D2O{)P8-wU`HQXx7T^KU!Nz`2%=G)&EI*z*00a=6|YB6&d&Uv z34Q+cQ9W8Tc!+v^^!f5&{M*j1&DDN=zUg5z+A_4E+ON+eLz~j7jWhSx=MBp@p?CVX zR`=KEP3QR2^IHPdetq8iTwNNT8m0E@^Q}AT()#YvYQH{j&&}udFrPbe!`keqSBL7# z{M1P(6CphZ!fbAWGMFpaW=Gu<0<%4A>T$4}^P-4Rm3zxYQ8WMC z8aA`pQFr8mx7ktm=8Cu3QFnoY&4hCo6gL>(tt^guZ79*qV`q-KEB<5hIdjyja|@eE z>P$~(jygfaly2sz*X53MO>R$jN8KG7dN!!a_E<+A9DzCNMGQG0K${))qFB2fjBI9w zn;ms`Zdi9k-4#Z5ZoC4sqh6f5xFxZtt;JC<1v|Ph&PD|kXV|g@;WfWOc?(CENwJer zCUKv7E^6k{7J`}n9`$?l*i~22&%xvqKsF`Tn4yw4>QFn*w%^Yrjlt$czuZFrB&b2Rh&V9Lv z&UARQqh6h>=w?T~HqLh^i=*xeYiLwH#_P~VfVE->NOyeGb6k+N=xYH4K0qk zANS48j(UCEH_YwMi;}_RbhD%GfjN6v9CaUzXKp#O&drXxAD7e3j(Sxtr<)!1YIv0$ zERMPhu7o}A0OqJOhn=bF%*pSCx)<&hW~!Soq8O}k=JlH$^%}6vnPuJ#g(>jNL~n`0 zzHflJ=p9j7U>4@Ow?!0;n)&Cg(XyKP=R>%)K7@Zafj{oLD4cDkp9kWMk3r28^k#TJ z4MxqZ^x@oNACA3-Kv!oT`$&}GFxEqm4MG_Sfjt^o49Xxbv&W!jDtk#TU@l25S!d>zPcf>lBSvbd2aPMWHEW*9VjQ>I?M%*(@LuZcqJ6sQ@r!z-= z3L@q_Ge>;_ddA{jddF?^e7NJro-T-^RYZ9Y;kSx$DQf0Me=r0X zTSNS94Pm%|v6C?rCURxejz;#40FK5aLowLM4dFA_LCIk(X=G-5N#kmm!G(-nVI!Y} z@*IFV0J9W_?;Hq^*$?iq0VNwmbM}n`6^(P?4i`2uzq&AHb~NU~^~JY^&F-Ltr zj>PPA=BTG}_nb-Z%v3*(J{h%)x%T2!m>u;$xuAX)^;x`bX0xA0eH!~P$(_|_aMXS1 zJ%{=n)_w%%&FrY3GvtIcJs;xqeB)f>9mwDLjXQ8PUgLbe#$LN|c3+}?iSd6xlwOF@ z3o$ku?u|OA>)?($j^3x}e~R;w3)ij%u3ihHH5~QFxOOQhyA0OYvJ&-5NY=+N^Ign+ z7b|-RZ#>rc5M>A?(Z?F)n~UZv)Z%vtcUgsm3_t4Z|(NWYm+5LyV`Ok;fVTf}1`9^$26E@dCv4A*hEK z!y$RE#J-jBKC&^Mz_%*oH@<@Ko*yE)7v%FeLlG$7ad`jC!MAr*#CH?SgXlg3-?&g7 zO7{%Bj~5%38SG$|FEf-j#v4i*d*MA8kGL%AvUsN^;{93_@7tor1VcHPJL4%-0%xfLRQ0x~ z+Zy{LvNu*k+~3$2&bt%pf<{-o>Qa!_8>4QFGlYN24_o~kuI~?n6UO$%v#$W^%BVvz zx*+N@sDm)N9BK#b7l`Xo9CZoQ_3-Q~gqnHl)o@g2)Dw);j8jlgF-|g$H7 zG|U@goP|ANP)1^=1vtWZl(E=jCVGaW#9-D)>^&GI%*ejkU<|&M;JG0Rb(Aq0--2Pp zef!gpV2sCooD=Wa>?pI1mkhTJ6OHVf0m4y-8>5U&g&%}^ka4K-Z^KVRJnDGk4C7T; z|D#ZkGLC>!|F>ZV>KVpC##@FtAPaD$)be| zv26oMPfNr0ljQcTTj+bme*UHyPi<{&>7s=Wv~1b3_&)K<)WgGrrl%}+n7{yhJGLmXT4W7P*g&yg`TKki-d=}k<=F1 zh2gHZwzoFyB%@q!VV>>V9ZK%OJljp5yG+=A*C(BP?J~h+xa_$-zT`fVZZ>?My=iH~eH@jz)b3VLF#+GV_-GqR{Ztian z#L{kEGq%v~RfYG+=O2otje2BkIe4vtV0X;Teetna+P_c6mZs?r!l9FH?ibF*(x3qu zTh7H<2^Y_~xv#nzOQVNmY}vT-nrY(|H}^YFVriL?8C!Z5UtsdQ<>tOKBbHVhld)w) zc^lK+yKe5If5g)G(HUFD`T3`XAm0hwqQKCMEye0gO}}{6&3)s?SeiWO>sG6ER$_R) zT-)bh{yddSrH}AzA%1eR@&39lmNr@Tce=~fDdN`T&)!p;#8T@M?Zot^tHu67p*|58 zV`#7R81Y)rX7SFL%|2msVrXdn!Q!jlYs7ieuKMKK9YfnhG!T0Qj1l`e{_t_G8cRzo zIiG&;#l3X93U;Owr(U~EzRnf{M7mlI!@zsSDlMV?53tjP< zmJmZ71FVGkf36pzj;{3a`x--^+3qz>8!=P3_`I9XOuYVu@4A^b_ZTAF@U!xO0j6TAnu8bt?haZ7KMQc!we>gm(1`6xPK>8kXKI|@n}UT1xp`;MZy&)!Y9 z+FVd-_}a$Q-*XhbeeY{}m-Pjusw+yHPP&bvt#aN=-w~ce3bQR>vXMs77hhMUue~OV zYqy{E8FDU$t}fu7o^N1)xI49{&z-fgbp5-4w0j>S(~Uv0T0Pz4Yb^bqDHOXY_9djZeG^MvZqHAD^|+Dusr+ZskKBo+ zZv#%GzqvHld##I=xaepsO*;BB{fPfE?}V0R#n?@;v{y$5@#Kx2-pb)VTp17=QEG-h)Lo9S< zzxUPTGGdqhv2^UxV6lF_t=`c`9;ZJV5lh=$3KjE)P4(_kd31W0DX}zhMz~m`n4@?5 zneEcX<9Ns0M2I=s?AtT={bQdoaj`Tl+W?a&IHx_{-pjP^9o|1+oMX$6US~5LOV%PH`;{UR9Q-z5JWJ%a>oSy`qly1nUZNo^CnmklFd= zq@K5YmN=J{tB=b~i|{U$D89T>7Fl-E-GQ&av5ET+^|P+~`Cu>X>9B|2*GNTw+^J z-nQ3@mLF&%kFPmEY}wUGo?bC0)nEU&{||Lv9!^#F{%uT(2Bk@+l4hK<58<4(ZbLFM01K%L}hsQ@jN|Wzpn55&wD+8{9f0! zFQ0p_z3)A&`>cEId#%sCINSNaZ9llJJKptRCH0vO!Y#%YMcr}J&*7BiIY;{OjCKN{ z3n4IHo~mdXRj6{VlQ>*;hkLg-@wSh0rJD!Jv#qZeKu^B2i|+SCo88f512>fq(8E5v(01E&S%+;? zA#-y!KRa2OE*?0N4VXIxW?Ap#7plk7CvT2q6(y75TMr$6T#E)hbH)f(^lJ(nh`C7H z4bz~PpVDG&U)w_Q8-_lxD5+2@dI0M#a)b}a*GMt!H2wBnD~UPd0kg+8@gFQ6OlL(D zk?Pb{@cPsu{*RP+I=@<{^cMF{9j5;<3Kgc(gJ1q74>wn!axT%d3;ZR&%S$i(oR>(q z@IEnx(<5PBxl-Zcm0M{=3lFmSVF&~`T;a8UHlm}@Zu0HxT9~|1fet8&q4ymiWNL;# zP;X`Vuf##L|Fg&B?r|STUpS0EAUlO#KE0ltdb9|(T-ndp{+U1W(=;yvJb&@cYy z7X#@}XFACzuD%Y_&HVm9o$2d`W!M|D-NCvtkKg>unvU!%!@fK24#9c4)Vj}b3he(mdVe%qZ9rG`FLdLJdL^b9h z*$_PloASJ%zhN#}pT3(I-yDRMxg1nSww@q&$aaz$sgB;+E1IzwB5HZov|=d!R3IzAuM0HhBYNUm%&L4rG5`Bf5Ia8+O0CM%X>3 zM6k6QZGGqsY8R`>l-VPQ!oc?2G5s>0SPU`1Hs{?z!Rs}N2sI!V7;_xj(+#5dwM2K;0CHl9A7sD0iB*_eWMjEx<$nA%A zu(A9Kc}(3Tt=AJt63-UI=g*Ohb@#|M>_g5Rm<1-Gr%2tq2Snj4kL+u3g1hZGW<+Mc;E~6Y}RIn-8RNr zw}!*EJ#X=tDY|UD$_nf|SPQWA9lTj@1p7&5JKix(2VB#Nu<>_Y_JUg;o_%)&EY(QG z8xHEQ<~En`(+)it^T`RnyQsysez=eI?e!skstUGF&}6rbd4WC8=)*8U9!hK*%#LXL zfX6wF1+9=iXad~}$}hK(_Ma13$(edlM(7tTk?Y0I_+-Rd2VX+TE1qBzrXRcIDUU6e z|BCu}f5G9kT-*MJVvi+aG*r-sy?x^o{$gPSC$6kP9nB-z+;3MgbyOcR6l;(=J(m6P z`UyVrU^wI~cq3v)&0r-j(=i#+iZ$5pEby|0b=dm)d2Etz$$A}{gr}R!f~1Yb;k|{d zs;Ut_?WF>dM1ni_30TQ8eZ1OT9eR06u*p*c78C~KpOZBpZ^C)Jjf`d83*~WPh!)sR zyot*vk77sOtULNJ(lF&wKOG0bNK<>L7pC&d)7&Y^!Qrq!VmerbtuDNL zV+7T=P#fl|+k&UWjMjX#i`sfy3pQP~1%3NIg;V`qsTbPA;GWM+&Y%9`zg(zHx$NZn zcD0U>bt;zk`d2TiS)&)+OLT!*@|}gpzc^5jR>?y_-U3LI89-Uz@}Z_){)7#GErPWD zEBX0tcGRwUG=6+#73A?9`5N9LYSKlF&u$8XqiI2fdj2=5zybHrsr}sdX+^7e!rT*- zL3}7SHw}iSofE0h!CBPJko&ki-xtCkkD#J@kED!q>TvJ)#c=EKXntQ$5p}cB824!m zgBV6gsjNFlX{_wTZ@3uR`r$hC;k5&(`zOYNcOgLjV5)HRusF(WqCUJWwSu{EdWE-Y zCsN)a+7M%93vT64_=V|;)WDtUkXvRC>th`XvqBuHmqV1Hl{XLYn<13A{}QTwe+ypL z-xHSfcw^XbeJv%g`U>w{y9Cmg$?-$YHc_6fL z{^%idsK7(@SfhLqOiiQs>QCY++xtK9_6Z*Ftj2<0O46vs33A{($qoLjeGMkg*VEtLKm-gZAOZ8gH`KU?Ge>caXS*9K#vm^T-$tcQ|!nA7R_h z;S+vVWMAe2I2)8n)(*dkdyO1P!k)XrxHD;FxcCM3ee{!&HJk^J_irJuwl?5?Ima2Q z&KYK`h$d@xw_pcHb4J$984m1UPe$$fi60B6ON`^4p}uY%$xCU)E0=)i1-QVHUg2ce zv#&V9@Q`S$<2+bBa1$Bw;XR&vsa$kSYd$!>OC+J5Pq6+$A?hLL2KLLc$dQ1X*mkr8 zy&K~O&S}{sP`3j6#=b{q6&JtH(x%{2BIgZ$wI!0D*bA#84x5%aw+pvCU zF$vo-9jN_RiErc%+%dd}@VCzd`2%I-c}FU4xSdD5kON#ldzRF{Ou$di9VM;w9C))T zpL|c-ge!;dBNHrKVgGZk|I#}eKdMh7x18Le=fXqef^Q_=o3x44dw4=^%|TM=9D^@? zTStD}^aAGl0aAN%GgdeBBe(8(fxq@a^6Fa>PW$FV7%t!Er`ChS>&bSUTi`=_HhaMN zU)jWsmw|)k`I1T*5BRhGr9M?^i*lUJbjOwBHy2uP{&fiFU%TTaHxdi(Ri%kJ{|Zw7 z>bb1i=-ujyg5UD`?_OfpA6Ne=Z>~LHnEzf!>W{mQH`1NPE9@rcz1I;_y3_tS{y|k5 zkM9@u&+-0?*7NG^-WmNqKcBwO6FBeqr`*e+)5z1H^PlV6bH3l8+xe0Erj-1+0_Fua zCh(4>;N^!2r9rnw3*EiVU}C%x=oKF+-FW?=aQu7(!l@Hrl1xkK_M*?ilankVvTiiQ zZX70|zNw3xMoxx|Fg;Lo87(PYGD2iLXA0ctJrc@$qzf(Ncb9tgn+VqqiXeB*UQz0r zy^@&J{_uvIr+P~_LsX!fAzATM4Jx)fLfpN0(eiuo5)X$#uy}+$?2%b63Y1wc@v+bV z$bA-Qcelek><1Gc+x+c(?a^1*&`lEl|&(1?>ynw-p|Gdwa7pjfq z&%XGleA(S6M&U=F|0Ca9Fp~du$fJMW_n-CuyWRQS4t48W9WL50<=`IBufHu-Yui)YleshsnG(P4=<%Uo(cZyP z5QnETA@0|Zi0%!*bOg+cD_Wz3R?7^{rmA)28Q2KI{$nLYJ0aC_+?;h=+|(1fl?_PNZ(Sv@C9 ztfz%SPZ23yAFu#tpn8c>V+ag2?j^cjxDZEZPGE`-hQNvY-!hY|Iu`}|;@?Zy!Ol!dpUI-Bo1?&fld0&X+$m1&|!~o z$RBtIXY{f; z?lO08-4|VmkA!D74yC@970gVvjUwfeNU+H74vXcQP|{>k_8N7L1g8MzI@-HKTsVor!Lnf?SlN*yFve895gR#)m%} zxp3vsYRO1;ikO2+KFCluifvwQ!HiZI!CZ3NfIR9W*?tH!qx#A)rGs~%1?7>fv5}Cu zH}a&!YsD$V*$|t1*M#X&p(3%{QH4%H1nbTXhs`y4Djd<$2XANyXDcK1nY6%CQPQbF z*xxjq-4-{Dk$<3v#(p1#GgP>I>ZvM><#lhg;l2oeeHOwdzUh>JdptT5>xe^Uhp?80 zjgnX6w;}(4`BajIv+aVUw~jcK!2PlHe)UsKT3v7v@K>4yIL-{KH6; z>D~jst%+nSzkQYT9AwE%uF6D_dn4FyQ8SpRw0h=3t|RKPHWb#Lu|T#Dv~ab&0^YqV z6mrxoP==x=PIx7Yi+_cJ>_&{NTL$C$!!77xav01yB0@Z2KO7kF8f}DdaMu;0PLCdV zWA-(Ke}%&^A9K|9y%~KxdmI(!N5H~k=16tHGgM>~iwb8%!k&9Vw9V=w@>y?!^vfeb z>nK9g2XlSweP=~FN>S{QtH7AgO=oJ>WSBW?MzOpaOGYkv6JwuODEieuiXES1&Ae$` z&8!k?qd)6k>a(Q%sh)rPuiv<@XJ1NTvoGEld@jE`UjAbYt_$2svG_B+Ga?**h{j;0 zQOQ)wgF1R`Y&h(HI||n(Z>BUYKhlQ#!XYtV7oT)XrCv&E>9-Z(Fx*fBZ(h5VdJ$Ml zt8wF3^GJUjd@7CVn|PP5^5)tT8wFf!vyIxAdyalp9Rba&YSBaUoz(O4Y?=f_Lel0O zH1T38HS>!<%^F03_@az(2QQ6sot#}z%RPtVJsIIgUIJyVd#6iwcqJp`t8Awn9~=?a zaODN{GQuKW67?&GDUizjnz`}|2dU^MRYqOqKV*c*E@V)9=j`Z`d6}}pLZeJ7YK=?5 z3+{Mcxt!4HeJXWdK9kpVJS{KWXtj;n{m9PfIaj`Bq=L{Re-}kPTu~sEjjqcI)4B7X zZu;x|%u0DM>amHEi6KSP0vAB>eK|O7wuf4&b*pG!FE`lRO9q}ch$(aNsiHHd+~K83 z3qBjRm&%qYDe^P$1W%KXc*Dxwl){t~MZFg)4Rl%yW#cyEkX|uVvX^C1 zXWe?pUFm_xy6vEjywNGDyB7ilBh0YH+<2<;u0oOQ)iC(8{(r|6q-{`l{9)S$zEY2& z*!uKUes>&@-IMLNBbHl_EA4DV{VWK|?8(}5^7!vJihaJ#0{ifuY|ovsWXXl%b9;K& zacea6WJjmRlFOlUN)*T2f%yj|cGa#}@+AFoiLH+vD7bKPMl89qK)hK_JJ9<6_CY*}9S|y`7-y+gB2097|50$(6h_ zc7a%hW)k2ZOAbuV;1*7EhJC}nlbd^ENqTg=Bz=lAv=uayedl6{Qq~5^6;Efd&Tk?s zuEY{LJ6v);*BL&({6@xB#gg~x!IHdMXGo{sl4QHhME>P2iMQu`*mUMHxhzN^m-Q}5 zBBQ-v!Rj0mw>6Qxn(|1pTf-NSe+sc`OC-JaK9QVo@`KyjkIClMo5_HuxsqpG{PD&? z#MWO9CVKD7knTn;xcO7WCM*mg@)ZoSnyw9>bcJl(_fS$W_%t#K)P+!?Dcb`_kWnv= zqFv|ppvhCfM!kw6)ylh&e(M;}K5oeNvfDsvf;OV#Pbb3h5#!j;X))xz&<&+bpo!UkVWwkU2B+4V&R#caWFZPy@nm{u&QTb3(IYPN>M{ra&J*Tj;z zECW%-O`M-^~%okQ?OF zs)%B*y?QH(9CJ!i9dcYmb8B08o_Q;x&pu!T<*U(|%VCh1RB~;-7$rOf^&NKz`6)+%aDpszL7& z!>v^^|6T&EIMqR5a5oT^w5Q;Qc1d(kM@K=&@j&p=Ps0~3CDEclN5QnHK=@&|4X5iQ z)4?a_2rOp@!j1XcachrcI<)pp}%j|AF3af#sUkF{`@%V(KwpF&S}^b-{IS_?})9m3O&$I)i~D+FKXuL1vS zC8&_zMmPBMP2Gi3pYQ5)Xqw1f6MaYoQ^ zc_ExxT#wUdrO?jj3j}@dEP`)upWr2_3G^`fpkRZc4?LcK6@P5=p;fM?3SR8=1Kt-J zAA7Tv-e0y+U~ysvo|q#jUl0g?*1yybO6^Db zzdIh{-@#Yl{Nb1|7k+natl5`69$SYR=Br9xn>fJ&^}g(o&2`A^f{Mgk(HadUJ~6|PVlp`5BqRi9lBAiBw6I=1O|zH*gJdbP;jz5M_G4*858=j6}fe2saIR+ z@M?$;q}ue#DczvjWHR0X!WvJNGvw3PA`UE%8RYh-DkI#jMC5J}vZ z!HXf;@rhCzSq}+&+#N8wEc$M0|G@S2dx8ti%%rO zt{%xR8Yrw9?*()09oYQbi>P^49HVoiKYR$cXP2m5M&cVAnYFEI;4*3!>wcpGwSNv_ zR*43|e&1(M2jtQd5>0{ z+a_`5*}$XYgViSM~$m@izMERlv{8|4}+mVhNe*4>weq&#& z<%Uv!IE)tay5mXSax~`;SaEANiL5r!4&q|9;-?IJ5eZcpO(BOz$RfcP!OaP`#bL`8kp1bi$vq^j@TT ze&6SBJinrXKc3S!pfOL}9dpOAs~S%mT>0rx#LcUc&g=Rg^6&Gd|GQ(??R&(=@$Fs?(_cJUiRJ*9PN$^d9VJl7tIOJ`G3m4e`nHX?vB&`wwG~==DhA$ zY9Hn2Qt5ZwV*jz1?(%OP(tGNT<2ij&d#UVOCGL);$0d7g;5C7xfSUv^wU_@P|E}9V z?Zt_+mx{dC(z$=)?s%Zgd%ZHwUQA3kciGFIa`$`cjz{p{W7p$JTy$p;+Z{{mH-7dW zI*!|Z*Kc=OdcXf|yFFJC?%$dQdg?2fEAEQ$W#Du;K4ckVyG{`XJedv#xt@&0E=6eS zGZVD8&SrLV>*Lz&n*|@YSTR$7Dnj{sdyrjbz)Udd0UB|RaO3M>#%z5LP%fDbK~Fj* z3yOPyrHnI#THTU_|Lg%FQ|Ce0u|1Lmb0zQzoeu@rRkCWm5|qWe!TIYQrNd4tfpF16 z5N8NW10O3v@)r-VR6l0!-=+jBM|na1#O=b*YCR$KqZg!#9|+$J>j|fLi@gzou3s>O%m&XBVPs?SSA4<35wgS9 zkdsTAaK%!4_!8<(YD&K2l9#h!dZ`o9TK)sKpO^``c9?kBx8e44GoZK47;~+Oa#-jpZ6_TT340_hUNTdEs!zKz2Cz-LW=lD3}K7i%rh{ z$kl|HC~DGz<2G=388?M>k`5HSE1hKeYcf>XYZM>dFcO&LVWtV^EW!8G!r~G0M}x4{ z-E>nsf*g`o9I|6P$Sq1UEqZANHzEs*FDn?qm{EnMd$$;auU}>HN6w#!`c;}%sPSN4 z{F~yGT2nYKcw_33I{`iyeJ%bZhroLNSJSy`$G}_DrefhG3z+=&o9Wv9dLTRIeeph( z$>8_+o#{MRUC7hCQM{*YDvZ8=-8A{87DQ+5Eq-~;7JAIzYg#p06B>64inGv z>Dq0>*=xmD_yO_L*~r)00&(Ufc7c_?WU?in9USsd6q)GB{v22@F2NQ7r zJc&@wM~fAgu^)}UN(w3}$)$07k?P$g?7^XTBy&=plZrW8P~m_@tm%M!$=In4WSa3} zR9x@Qw$>#`>ic()1X}^xzsr?9)odq8O6$Rz%;KEqh^K99}+tbb`+_q)&A z9S`BZC(<@x1J?#f@&3b!+&W2r;mXQ*IMHih*Z$CmSfFM5cVPqhXm~kBwF|c{UkjO~ zJ=vk$xo@ku0nTRmE$+~@R}7N9pSp1S78^Kq_-hw_!sS^kQTfq@f2z-iM<+YGu+f3V z&|xUw^^Ep?{XsRl$6wDraXsvymAmjB?mIo{tV$O)x7!F`gSqbl?pZFB#Q}N!*Sngt zFCOaN4d~kc;QCfryGp$a8yh5nlkZ>e`S<((e{FYm+xq zSA*dKZHyc`NTg;6#DAx7tW7(a9TN>-8Ybgc+uMlv)JAArDfq$TJ-z=+b5g?O}zb`dh5FfVtQRTknu%mu=hvKRNxHtK`_xySKoZ9%?w3 zyZ^2Gwt%l#r3+6>=hh_uWY&dkW-o-}lFeP%RmTzRYmanc=SOy+`%K)0U!s}N_$99k zFMMtT>3<(nbIuCtPG@!P54nxteDKyTj7ONmJD+u3*eaiEk6zk$;nr_vP`PG&7be;W z4rwW4>AUR>mXLY(K9b^j3#Y&fZXiO6wGz0w7>{GS@bCBkWVjWaO>h^yeXGx&?emKN zeV`RsG4_(d&-7XD14*=IwPi9W6&}U;3ypjC{0H48C%%SUg?3U)QXl;}bI?qic zB?EQY%9?5T0bc;O`h<{x3&U8&;#8bJX&l_UbATw1QDZghO7N(9E$D1vN#dHGY_E|o z@Dgeu+`RRWWX5!mOSM1ov#Q>(`{X;KXWmGR3wnTsPzfA^Ka+!r?@5$pZ@4>C5fnCm zC3n`mA*8=5Y;BW=oRlUKm4CLWbMKj6j{gTMY_Jx%f?vj_THu*o}Q*=Po&zkoTP&98yc-xAcXfkGQlb{g~_{`mE~wacF_E6-3eLl8blsS-r;7qKBGR5UDi0wDPq+yW;E$q54oO z_WL{yiCwKe1Xhg`CHJ>tGwv^z7(CMli-=947EV@4vy*&!p$`e`Lqt02R_xh9BPI5) z^r0|#nur}@#U374UHavXKG;|G6gg{Hv09~`rP}ZGp)D|3m^|EyU9=;rL@HO?<(U6j z|I&U^_deHuu(a1N?MMCJ|2W>o|5w~U>685CoGpGT$CG03r*e`$Ki_xZem~z!&Yxex zm+rrKehITLJiiO?56@=~e0bZ1vp>9LO09ZR(qkl6y-ClbT3uNAs1`Y`GqDSw(cyj{ z1}0s&)WC%Fb1U3l{)BfR6-=q{XoY&33rq|t>t9%*2!=c-+J@^e-Ea&udu zRL|SZZAfSAlP;_`_6f2-UEGD8P8XvH%k(ZBZJCY&FD>iBp_i5+f!p{lZ0a^1?RxoE zEY)-13)kJ?Lyo03SBt*yh2z0x!>>kPj1)eC(U`4`*Tq7 z6CN*y8+$w7w>3}Ae=JU4OYxZCaEPDVnzwvvELJ;0@vcq?g5{%H@)B&0;C|QmyuI3M zz(oH$H$(0WH*bv3J0V;JwR4;EdR{2Q7eaZw?_>R8Q$PpE*Kym@3jVE^%ORjFP3)+fgYPfD z$={y427+hp5Vs~NU<3Ioe&(YH_y}oYi`Ez>|MU(1laMIru{=~PZW%-M}Pj!&74xyZjVy?LC~y;ka^4vnHc&mdIb5HHP8FHQ-k3W=Y9} zc}Dil>P*k;-21&Ehi(|o=eavPlzh3ujr(LALZ|Kri_>KzBop+aK(wL?MNE__96wY; z5_32bO4KWnq@&CraZhKdMqVVe2VL#T$&^%GS=z+)*G^6(C_6b??6mGkY1^wvm|j(Y z28KmXT=^}g^kT0lc+!3Vwb(|8;qtW7HypPL*{7hx+L7Yk`v;dActpXri@``Zxu3yF z^=BpZaZ!+U%n=h6->$D?3V!Z=hZk>w3hawr+i-EYAm1$1sm@x-COszWWxScguK%pJqtV z&E^QmmD!2h9t|w4?zJDi+{%q@aQZB~C-cqz)|W}#ME+AZ@a*>aiKc#&#_*(BRb)8s zrSz{WZo$P*6uJAg;5d+7GOxX}UEKK(_fpDJTp{NCG#8ia`aMXWmE%QPbjjSai#wuz zamT0peSVp`bRQS1k@7pGagk9n(J~yDGb-@b$jD5TlPUYVT!zOb z*Eq@DoZ8>z+;zCLK{6KHN-AA_2P2sSo%!7H6aOlgaz16GI)BSMaAy>+qm%98YI5fd z;B|2=uTJ<|-@nSeYijSsPTzfs`KUOS9oA1CE=P8dH+=?>pneoPZ+RPjy7C3N>+MQ* zt6?@|#V71B_6k{cb0g7~nZmwvc!4XK65`8CAt|qH*(;y#;iaX8WR_AEd3k##yZG2e zym~+$DL9!!ZVh)}FS-_D!@DQQv5*sF{wgO{C*~mTp>u+$6%>%u%xw1Qyq$Rb&=aI- zdm&jkdJfxpCY9sXKP7qAn@R8#8`dL_;C0DESk;y?X04?@d+O&W+;Yr>?bn`FI>AGM zt?Bg@r)65Oyb&WMGQ+--{@3boqJ{-at(+=(YuQ8=>($}8wcJ=k*bK?Tg)PMDWgWI` z6S4g#W6AI(zlb&Ygx7_dv+a!&B=<(ku+4s-amKPqY{t@2k`@(tmbd3Ce*B1Hqh|0V zZ7x07ODf;-m&b-|d7QIk(hp^}Y~v3+FJ?SD3~!Yzd#uXV-EG4$pY+-Om(EIdKkLuV zyx)nd%to*)pVUj7UaGS}aH8_H(Sl7o1|q3og(K4U#glT8~f4_VXH z*_rd~n1yaStXzdWOyRy0V&8c)XUj&gx|0+@L7n44d|S)Rw9{kbf)xIBZe7F^3%-f{ zDw-$LLGDdm2$#YZP^S8a=@5q>#5>aiTJ9zCzg^3ua~8fQ*EPN2_AQ2AJRyS?AGkxZ z=Pm>DiAQ-Gnl{kGRmzEm2FDdsIK)5hv6K#k0wSKj8t!Bb<9i)SrYq|XlC4kIz=?@6 z^pKW?^j^bVq;Tgt2&!8Tjgc7dM*9(V3!0#6!gw4w?2VtUi-SJ8!EYaebF^lXyq+Yu?z=>9+65 zvXS1<^K~j^66#KSes3UFzKgiI90FdAyCogv)I{1_J>mVLCjN)s185D0R&uh&1JVk= z@_URir#E)~Bt<$N@Nl{|b@jClt(($Dp64%wY~M)g@PqSowN*Q*3||P_rq}ULS0vGS ze(l6CU?KDqX;VED$I@S1+lgrX|9I@-tywYZmD-=OIaV-iLRNoC!lrvdFIkkH~%b19<(O8F1Avleoq|Cdu&! zanYn1Fu!Le+4tr#xnPlv%~fYW`N9}-#rQ7yVVR9*i5+0!>D2_D zE;5b&{veZgl*~Ljn%IONVe0HT`NmNq8ObL$5Wzg;`@@T6N6E=+nB1AB!<4nG0CM^W zc{h3%`MBO+GA3>Xyn1q&Y`yMAG~@ZA!MFSX%O57kZTyMx;sGe8VmUa^Iz%3ih$Oe3 ztV5OI%iw5b4tcV2GnxG52%7iZ2d3@do@H$cG5LNI&7QRsDt6_NMV09U?P)-w1Kz+^ zkaGr69tnoQa9&xjR@7MqD=f?TZ*JHEC z3ekqKgWv}J3kNSXVjZ%pN>?cNgv2Rr*jrD;?mMk6nW5K?Ju>P!jusa`7&!qsq_^Vr zhR^V&5G(fW#}{bZ{!yRU6WlKE|%I z2C!VFcU&@JB&dD7gV*P)vFmPT;EwcBkQ!ErbMyzWuCvmx#Yue_rG6XxE*Z$?C&gj6 zEPYV>eitA6rq1@|t;4hKkAlrXkFj;kV0N?Jd_4869`IaW;PSd5Y@?1Pt_U9q8IND% zkGjLy&$(mqd7BYnc;EvbKU#ymnKcm08R^2M=z3hyslmq1m&02ub>MqYBYsveoc-+j z7R`>;hFwWt@n_Iv-L-C^zCW}e;@vkKov+F2y)Q*`v$R0-SQGv%qs5-G$w$XLwBV&e zGu}aIv1{)gMaC9d@J7G+U+2Do;_Je-<$-)$I~e!_?V$D$!*6-P@T(|e==DGV7dNlq z$LQ?f2@X#Ig`yFlJaG->k}-zTwzPpQB|4zWrCOS6-Oi`eEWu>UXjrPp&)0KG<&#Zj zaNWlU)@`+>W}K3vHtaKkV-9AJw0~*Agu|Pt%X7xShZh#`)rjQ}pShTdpE?3YbWVX~ zYI0P|+a!wlt_`cX*yuOcJyclAHh!ME3GDewLGX*c)LjpAD&d3>JT(nq?XetQbirim zOl=R?xziP1&YV>EC@F!G%L~A17lUEIvLJEqcqK|@t__|yEDS97W%6t4e(}d@^YQy3 z;h;ZKgCAKGPPyYrc+~SS@bWd|+pYAYe%^P)Q`160Y?sFmxUqrSpc#y{Jc6NxuR~Sv za;RFjG;9_W2#Y-y6%H$3O{MNQg1yw%z{d~6DX*O(%4$~$mRqtCV$DnVjjc&k)0rE1 z!(lEb@P`C`hW}z}`H`o%R@MhD@6+PX(_Tj%8C{1T=Pm}19kRUbd!s2+)QpFo^8_pL z3I4I&v#80B+woV&g`gGsnNL03PAMqKfn2N`lxoZ@T;!oboo=C$LNAU8 z(GDEKxDerrCGb5>o+L3Y`2A#6;>z`ZG)7M;z2WGG_PZ%Ddsaok_AxHV*xZppqdG-D z3^^`C#}4FLeu_~z<%h<$Mu40`5ptY*jxiaq2dx%Fz+lB&NdD6SW{grX+VwOXN`}8g zYP{7lHnKR+wy`}+aq>p5Ds~(_v2g89~_Z1m`mt}&Ds!^Y;aHx6s79A3)GKckD zBmulg@QEZSZQn!D@!2UvdDA)=W9%#vkIzJ>uDu}*jf+8-F=cE^x1*0wuaoMkWgxdO zn`!BP0L^YbN5)pJ04pxJ!3ZvQ#`^ash@1aPh`6gp9ygRDm8NW>c48&eR2h-C^-qwG z>OP|V+#fcdoJlU*v>{>t-K1sR3Rt1Dl#FiehZ}=3h__@p=v9Z4CUz874%kU#-uObc zAXDYBzc38jg!j zZ6qn<7QrI4pVZoI#=1`|r?W}Y?H#zha3wJmc)$Vs z95Ny)18;U-PL`G}{MWf_0qB|0+8h7jLapJrZQbP+T=``8p?v8$zm)5SZ4&qozaRgH z3-#IVUBQQL+%!WwVPR3JLE-P?`N+|*{Ff+c zW^ZuRo(qQQ70B1URWzWoH>ls81D;bZpwOL-qJE$X>we6Jw&mwgNx*B7esEv-c)$s~ zIDNnN{zsqow7sbCYPpEbSBK`Kb|9~th!!6{DcZ1TD7@hMdyBdG#ZC=7MZat`p>n}A zn8n@SqHg#1`H4Q#-!V%ht2qk3&9R1+XJpaON^Q}{Yh&P~tp(g^VMNbV>V(>3CqRW8 zf&tv~CUtvWk86WOGFQ!ng{eGP>1_%|R*Aytw@#YRSV4hSCb#C#rfue5Hx`*4&k{hx zN@Mu9xoPjiJw<1n{TaPxi7+RDi{IrMBT;)3qh6mS%6S?AKdZBl?G_8N<5dszWNRpt z9V|gt<5!cw@ng~ZjX^N!F+scJHWAIy#%Oj!AW&K5$m7;lVm1V!x!2dhTzmoDj7}wo zUs$4~0qfw=fQzW~-8NF|Fd3=QYe9R_MO0m}ot!b5f+nP_g{l4*k#5~~66Z1nDJ86h zGb*{LF>5i=xIYGEgmeC4?=%#$Ie}T4d`)D~BMR=W4;EGFpGJE7e+Z8>N5aPp*^z^6 zbZ~vfh5~pL4zCks3x|Ex#IF-K6cm3B?}`U`-588@Mp+fqjsGi`SgCs-ZVsD_%$AMZ zyls^YyglRPu;RAz0+&w_V1HMp@I=r%0&#Si-XibO$H?J~r^qFY%!6LdKAd=(0=*oy+q?;jI%isc9!sW_SjTYa&@lLdQ zXmG&=ESUxDoFf1i8ik`T!n957~TE}vtz1goIq zgTmRcMs23UdLl{KHCJRmGYA?i^pI0|432&jXnyq48uqo%Oy-vF0rI`%sIb5GYSxPm zVcrJjkq+vBD9U^#J9>URlTmw?xbul1H4_U#s)@)`ZYUSkk zhKV9I%N1>kBx))DC4usu|4Mx;&7`?+!uVp0B}M7l*K# z6FMbTWk%?Ep(jq>63V79YE1paN)eMY3v0!Mv2pK5GKyzpMV1T9arpFb)_Oaixe%%> z*|2{!ZmkJtpRdQv+DeI}e8wQWZek?6O4pk49zK{^vEmNWuZ(1)8?BiJC2MB>^+c4= z7RlC_O=kRk7c%uGv;TE&+2ICL>{6FTJ#&^TT5>H6_MUUZRm-xedgGx*=eLEzM0NqL z{^>`RY7OL)M1;cNp)>J>*O#cu#(_nBpM}DrHGEtZFoK$$+CZDDhr?F)(bzU3o0@yL zi7rVFhjkyvV)bEJ)P^U`^vbp2Ffg6Mt5o(=OBW~=P3svBL#85ZTX39W7ONJOr-#AR z6id7}JBAv0MYSkxQ5bZ%N|688EGjE!D{Wa9$#Gw0h3w94)HDa9F0Pn(qnxmpPdZg# z!2M3S-`khZazaP(4oc+#N73WtfcJ7jt&q*s$K}7oUGg0{;gF<_l>Ev~U32Ht3gm>X zOL8d}*Vrz7yf`_b!jFTLz+|LRmp&&sp{sTZbprc!&AoRVDkmJVG=!2oN$-+ZKbI9& zY&}eQZZPSRs}9HtM}J790?oH|$!bewg|+(I+%a?(YY?u5Z*S zBLtN+%FF6_*ZuJx$_Nq1rOUs6r0aO28+(xJ<5a5shc|r~qCh>OCyprDLG|fAYK^I*J8y*l>)bJOUuD*O+E!8>oKbp|;}$)NRc6DpGsx_RQzXy6PlNr3 zmDo$ykCG$mD;&1nX)Q*h_hSB(cI!m|EfliPdtfwn_kb7}~e= z_TJfG6)D4dOj%DJ27M@XJ2eNg9{wWR`C;Vn7HdiRgSjy6z<1(*G>Qbe#z_{-y1-Ne zIhGn1Lyp?^ll0l;1iXhmSbN1yB-@%_`f0vB=-BjR=S_$uqOrqEip}l**K@;E8Y5xN zDJ3RIB?+}InT`~L!l6CcgmJj1gCj~`iAKF$4=WyRUKq->^w<87>u{erR8xe%mVFS}diVkTtclTFOK{S>NvMim24AizlA22wa7g+JH0^>f zSiMsr^3-KKV|P3n>h23gQT<5r%gfj(ZYTO?;|uAr{fTewWgN@RGt3(X}&&Li!@3{PbI&<`}!hm2_>r)I$F;T}q9WAl7 zc`*A@X#*N69DqUA0=pgwW*wgfp`mwGvEK+0F0u__dl&nncS{v<)(>MW>>tXuPjNLQ&xQ7~2Wp~TaFh;U}$W6>5a|Lbg>7m|efWum8xN1+E%9KYz@J4skn znW&?~4&}RZ`8w$a$?YLuL{vmcQ6b>Vc;S+{`{}7$^aW?>5O^Lo7eDNoNN+tfOz_Pk6t47{fe)db^i~g5 zL0VlX{CqbRPqp%(-(0Py%Cy74{96pZQ+|X_thEqWhX+A!-7;KqWCOjaaDsp*41wF< zWQ4<#(&?3s@?Guy8fRJI3g>NfTZVC0d(U%{6>9n%q^GwO8A<&GZ?dfL<&S;zx2etf zQrUs?A0u=U>EnaFy3X%6NLF~wcN5*Z1M#H(&7oCB_-J1my-VA%OHO?(Bg|4sq-WnK z?2@k!O-74erP4E=+EM)$MM3KhM}k+pM-0 z==ThQBW3Y;c0eNi)4^5{ma-nwk8j0;WOvXa)9HeQ>FfV>ZkN)*zHF&>9h%o9kW@T% zguGLI+4Onu(S?wFN$M>}h@Pv;&f5M4or@X82&`s9MrThpv+y;F{J`aEcs3Ud?#r|1 zSH49_6&sn3kMp4R;4d;L=L0gy*vf2kc7t>1GkFtOk8C587^^%FNYHvsZnig~@#nTO znQ@EYnBG&8vi=(ya(4@(5b6y>#yuuw^P7;%yv@ve!zHk^P=-~~{ea5M?HJ9D`EY+! ze|FyR4`^F^oJ6nE0Sb@GvFU?9p*{yPO3cU3hxvPYus;XaBh!L;5*aRoWBR%t>{Hcx z#PS^_t8Tb}SGyvsUH=I^y)BYh4Vee>ri!f6=})L1UrTa$$2<^?RA3F3d_p#Xjiqt$o*h@3#(%XU+fLRbAcFGte{L z^?RN>r@SEjmNHha9iS$-itr{$dqQT13Vu~JKD!19|a_{Y`(sw`NBXYcI+ z-}$LvcKHC+cu$r$c*p~~RVm|;;sKHmM2=T9%@b~Xq=Xgo2PofN^1M%Vo-k{!63)#T zpe&3Ocn?&({*Pq0q9Ox@9G83ZM4;giD%3Rg6Y9s%YN6gE7eGByh!yJW#mv?m)p()a zF7LpP(nu8Q>T`Sem0n3gEgN!`|8j6d=Xku}`kD4j5UXvKIT}gOb-ZRoR2xY=W33Zc&*@Yy^ z`j`T45DOTts9zk{8{&70POuRK(eOC&jZAfxAc%%t;uiRzR~1VTM8g(Q3w*6&6k8Cj zq84QC6cax>>%ta9_YWrIeP-gV^9tC4;D2Vq@o$*;(+v(=5JbZ_kC}Mf&Th6K-acl+ zxSJ%;AxD%FL_E1y!aB#qYgVgKf?%IxLfIxJe)YhJ5(Lrk%|0eBTxvxL;_W^rG}^+% zcD|03AdI&#p;QqQCu@3Af{-p^!be$5{8M}ZC5VSv|HC;7<_8HFvtRRs{?fm*jlXNs z?_apazxzMO5}2Hb?>BL5y`>kx;+a^+mC`#B)7-g+*~ZHCy%JAGP3b=XYlG?_TiU_^;x3hVh80Bup`Pfg;Ac z_^Y}k;C>ZXICi%fy1hmMZj+x4{P?qpIApmjEsu*yU|QWCIG)eWjLx1p>z;_%XJ zH~9R*5w!53IMj=9gC}P+qcPp$a8{-py!jZRWw*rPP@WrH^12O468$RQ4OSgIg}PKF zAm_tu_(`Q4g;hwvMMqrWhPZ=#(Q%Scd5H^bS};Tj_EW(8)Zg_3f9n1d3;xoQ58Q>i zi}W#>X#bZka5n!-+nZ?pr89PlgHAH0p#S~uF6vLc{N`@qwgk(2_xS#$C*yv$V7r3l zh5E-?e;zlZNpZYC^>{tWznIWuL-t?#TXE1|TEOc5ofYiZ<&IA^xwFPLs^R7O5p0)+ z1z2X#gst2ljcdluqVAM0!u>tl*dqI1AtmN9O1CEzhqqi{@96D9(s?ha-Lx>A3m>x| zIG#uQ{l$U7o)uW?(R;Qt#%NNgJjjX*$G6Jjg{pbvjc-mj z<9~CL!?(LKsO)bLiR9#HpR z7(wu)ik*4S9=?2`N!{ldK)EY9Y?tdZ-~rw%_L&qtXfb9!+qKFOZqq%=<}KER1?>~r z(N@k-espsdygoLTiqsRwT~}toTdgtwEq|ECvV!?nw(w1}&2g2K6qTf- z2KA!~Q2Bj3+|vD?`r6nC?imfCmbw{uIA4>n^&3Q6UU~Id2w5T3YKF_7@6a}FN|?nS|zx2 z+mkhkV~$tZ8{>vAmB5mw!>T%Mj;*H{;|ns|K)?%8AV09qwBa%e$yM3_{(zfku=AUYLA{ zM-!KX8ak(ekNHf@3OvKx5FiU(yN>|bP)8hSbD4J}O$nau*$5UZIN{z;=XkSS#=uuz z2|#Cx6ZYA4oF`VT0iSN41s>je4*g3_J98Q-{lJbWX`H;B!oO)b&Uj1Q)h(j)6#j)yL=-^$nagg5yWr5 zv{$G*F74&p*j*87w%rx}r5nA!`t@)@h zT8!{^!4?X@d9|2uxyx!XU{cU8)?P2`+;`jM|2Vp0Fh zAoV{neV-qZ3oVheaq?^w_=#C>eUDs2 zU!KVEzwC{iv@Pn3{SqO!DUp+~(jNu;SkxaJPJon3631n8Fq*W*qJH-21UNo4iQ~{4 zg4W$2%;25`*t$1~qu8|=6^Ku-_urHN?L9FkS8@rm9h2UWzaaq*$74>`y#RF2G`+$7 zMFKp04|9G#n2k0?rZ+seM&`iyoaDqfG0@N-=?&-PlA-14lN?*G(P)!=MuXM-6gWY= zjT3sQhktB(M#HEiQqPZg=kXi)4a6@c_3o@m|C%jh`I||9t?Pu*B;#Ej%W3^i#*-t* z^B~z?j8zSLBiY`K_vHI|0_FtdkEOcF{^*nbe}Dad|E~SJCZDhWm+JYEegfu8zyKDF zd?ptmywblgfWLgYfc1hBBI#Sc3Ucq0oYy1$1$>jRzrrtXIO5ayjd}&`Y zGIO>9#HgYc4m8w4SCa|QsKU`9*UEd!r6R7pO+b*3Vqk!p*}~ZaF#3R z^5zz#{wL3AWB4TpMd24Gaxqr3p`BchaLb{1ZRch-WXVTzi30X>W@f*&D)w5gUy3^o1S{FNA zrNhkKa6;?#e$u~ZD|^4x1~b$C$1Oe|(qMqI8(Vpuvl$$iGY^zzqJQjM+_+U*qGP8vex0$=LauIJ`z!tOZ-75IV`kACHQ{ zU7OCJy`$aGn|wQ5nf(>G6_laFZ*ovpfeW6_d=F~2c%aH7TTq~?8=kY`11K<|A-gFX z&{+Rj*!iafT&c=Oz6Iu#L82*6UP$uFtX9D$7yLlXECYOf)GN?J)4~Bc$zaUDL~NJ&udCxmqbuOPhao;3vjyDH8;uJ!F9OdU#`uBR zc91k#8Nagb0O#jS!Pnz<0(4aYyN9)dIoVV3v&3Csv!pz}lGP42`c1=|Lv{get}HHE z+ySbdPs0iec7jKzWN_G{3&7mY1iR#I2k*3GaLV0Fpf%nEpEIfiFRDi2j%incTeS%e zjol0knWOOj=4+%bg9*-T-3W4zN@I~_H^8}m6a0F8F|g>9#tRnS0fyU6aQBBKkn&9i zPv71Hj4P&L_seczfu16+HGB;8ZcN6Mp*AqcR>g1s=m(mwb+Dw99WW=kX=WD6Le-b! zar+c4z#T`npP>x%?hpoT@GLc1RuR9QtO6Zt)o~t2hYG)+>^#t%yi?)AA6_<(^Q zJY@Ntp09hE`}UaxF1xr8e#+ZKixaWnYB0s|(rbQ@;kl5mJJXSyC?SDUz5Sq;Rux@Z z)R>#=Er<7?nh#mowsbih!%Z#hM{lk!hWmQ@>z8!oa(TA;t(VB(=ZlaOdc?xTT=Ay{ ztsTU>1##%Nq6)ZvEJLAxa@DBe)U%!3EY}h5`_-Ov_UL+U7JI}i+}5vSTnXY1jvnzD zOHJr+KnQo>Su9boDr zJ9y}D2CA1)#jcfy!PO(=T82y*(&A6R)@fW2^K=T-eH(^CHI=Ylf+)z2p9Qz5Z z;MHy}TK`BAzf6ck^l*|lXUTD7p(uq{q^v-95-Av&)QG|@r0^v2nW~hm-=W`x>YSvo z{lG#rPZ_`?E1HlFQwlpj_Cj-Z0{F_e390o<;`b`9s5lV9hoViWV6G(2>Tn>rv20;v zOd~oJD1qx@DI~Yf4pyEyj*17x@YxD0Wc}J6cFP_|DnlYT>aqn2E1v-w#>bG=sUdXs z7?W^pPVhK`i=;|kAPpY|vXhz(bGJ31VwXE;!F4kvLgrvSX|F@=-RDq-mKIuW?E|Bh zZ9?XsE})J}vv@lz0^yN6r3gPeg*t|OsiIH8FzX(f|5b4Ub;X~h=I&brJHKy6A0My7(E?9s>!rArnsD*AV_@ng7UqP^0xzsJV7hG{*lTBv z6Oy-sQ0cMofe8fL+vqqY{S^2kZY*54P6kl&CRn~B6Wof|gGO1o0Qkva=YlIB(8d&| zyBCATaVpqu?OmYxd?HLey%!`Mk;elmcfoOz-)nm5e(<4B3X2x>g1L@HP_BM22nrOz z{YRgI_C-^nv}F~@qYt93)-ORvh#CADz6~h)K0}-n?*Mlc175zk3B*!&(V*f-@Xca6 z+;OA~EY`k;c24{R9KTt?Lhtop^p6hodE!U#co7T6+%5rgZ=XT==I?>ZDhlp$Dh2J_ zQ|RveS759rgyY-FLB)nPq?q~)Z1J~+x?x*E!@N@{X5)Qu!`u$Gll?JwIfq=_JAtl< z9UK~W1XMogME02{f$~fU)ty>EN&ExU?0gtNMK)9j=>QeqevtWwvA}fsG7G-5rga-W2h+GsWS}%1Q8A>e{HN=?-QAKwZ}OC5M4gd` z^lRSmOt1xmQ=G`~^&AV|r_3Ss*cgneY&XWZJ)>cro+rHa=mT9!e}LW=^${c=3WlCz z8#q7C4$&ujRe~8BG4NQ`XPU~(07m6YWiWqb3Y03o07I zU_{zaVhPT#_g){N>qhNlOqDWV3C?#(O&jauDuNh`qxD~@=l?H6gu zN7EV63L{=Wcon@-cQGSNe#8%Vh0zUlqZxXtBR)cDIlWgWiBYaT;>%WRHMI0)GXD70 zzdrs-!*$(!#@#pi!tI}_zFVKyk;Tw!9`VMLuF@#K1V(Gnh%X=LuMg?SWpEzou>|Mu zl0BE|=WI%2l+7CPj~X-^YOka)4wX-03F@z&D2}WjsBmXwU|r$!z5MP{Js|zp+|&`a zD;r+mWaO=5=-pz0cl(oI$UId>{kkm1=*n7HU&nh(||bV5Hg7lgDZ>-flN6QoY~%nc>PP@`^UQAgQq1ZC0ABP&s+p;*G&YD zwU*$sXAjaROn#T>H~?d;$Tpv$`PKe#)pAAfA%q3$YWq>Ayg#HFey0}1+kuvO{iuD7 zKg@a8MX9WF1w;FuBCVtVXsLaO(wn{z92(t=mfR!fyVr@7UdJjR(Q*T=^9zQyYU8Le zD>8xkt@CKJN(eMdvtWxIDgh=-no#q&C9t7z2k%KqB~UxK8+9)Wg{mrn{4-B$fc?aE z=*8*fFyU$zKcTA*WCs?YCx@59xn?zd;NJ`=>0IPHWeMz3>gVgYv;t1KKVl6og^Jme z(3QSM(5R+?dJ2}q(Y`6vj&sKxtrMBq3?^3w`X$8{$yd5mk zUxL!gg8y+w?x|6G-M5y^znCHJ}mlpxlWrV&Ph^|hwEp}hhmei)p<0Fb7nr3hb+D~{BCrsuCQ2wb8osL zq}`tfUwF@~9d}WVv-yJ(JXt>%M%@;zKX0SWDNs~}!@vvbA5t_Qh&WzlU=q&^n%56pq_)73Zu)yB0}Pc@;)#@Xf%DoXsZN_)&jLDyQMzMl-l_whb)* z;=*A`RnQKsqCvj`E9ks^YeSFx>!Ul~(4o~BOZc-mlXhBRYD1bb6HfeM0a2(cZK0_i zt^W)Y_Bs6X3|-gO^(=)*cm4^&ju?>ZLy^(R>_*iK{M%;FSev-1u;=3-d)5>~^d&No zeT~dVU+cxB-i{7MUg0(D4P?%+PjE0rO)Ny4D=xB|9>v0qO_7w==8ecF^d8$fJO=)( z`@r6_P9HUB1+jbblHpO?bc1PH*I2bAN6~(Ay{KkpI!$6uHdQ?{y-q5YTra{R4MvCW zQP(H7)yHL~!m1l~4Ht^!g^U|6Cpp&s#>fSAXK=)Vr-9;gr|K^(NQRx_nKb#03~*Ci ztUj19HssopNKCO6*xT~BzWZ_#JZdl2p!=2r)z<0slcaXmhv-a>Z_P}wr@54V!i=1c z>N7d5`{#hLy9M-;)C&s}Aly-!MKZaMQ5$Kllk-m2`A^iSW@;MGfQ90%V{ z9&h4F`qqJep0UenPsOKh6Nbz6D8ILB3TxJbBq({6NolYrfI{0E$^yhf@%LjX^W|&7 z0Y@!>Uyz!eQ|+lay*1$LN-gk|y$r@v4C)Yd8Whd51sPe3Va`Dv>c*<8V9tbjKqMm` zcE-n28_tJ;i5I6+W}9O0CrN!iCtr#;2WvLi z8J^EREaW-bD? zKf-||VGhsk%H}1+Edo^`VE{Wv;|keA-u*`l!7K4)K(jgqKMbhkt-kCG_)CL9P~uwL zpVGive8L3mFq;o9#>eBeldth2new1fW)@KOOvF;zpLv~^FHxggtikO|N%-LxCH^?M z3~Ju=$zbx$WGp&fpRau8KHGJ_1~~4ViaV}b@E`Y{Z8arzDJ0*g;;#n)e}%6U-zU42 zT2AWoy?<%X?;kyf-@V5BA7}8oGZum(-wh0vz2lFSk4uE%;dx+s+B(M2cGqK1&|0`D zFA2;hGRwCtwEN{Sae4-BH4LRP4v;C0<2S zoaLmwjd56`V1#L#AkI2#SH>9j=@7PiDv7h~hc+|xGq0Hn`bU!gn+4PA7}3)M8U*8U z$oRWXZDpLgQz>NJJU0?1&%ApV+ClgWgH*4A{>unBF5ThzL9ZUq(s;r zIV{S$>s7;Go-}9>jQ{SAC~NK)I^**XeW5pRBMcy6`a%Q0jqGo;DC@P%afU*^?}+D! zvOdKfWZbiF6Z+ChQ5G`a!nizfsc`)F38Jix3B?R*+`GS+i~XdYUElPPdUmD8qO8N_ zI~h@LRqF-Mr~ZcsE8}z?W8l&@Gl5qjOhp5&gwfyLD6D_ioL5erEGlKhU0BR*^(IVj zzZ9stU&`>+YvGd4Uq3;Qcq3%7Vict8g6is#Co6Cp-Y?gv-cTzK$T7@yd}H@>D;nm*X(kG28~i! zVgGuhlDLv>8RrJMq(0noG_ znw={*2Ts^8iPNP^kmIHsY>xjNxH?D@Z@pWD5}x+5Yg*^P4c{g3rlW-@UgR-*tBE_z zh?2l>Hx-~+t9sezj=RIGlj2x=Z$84QH`#ig9_Xxfa&I9xZWoZ z8SUn?%kn&-_cl@7C6b4>@8YuIM^Bi#NEB~=l#8x!u4C`l_JUbnqPY4-F8X<~ijAgu zK}ju9eC=p1f;$t~Wqw{zZ?_1(xhxmS$tbg@H+w-&!7$Pi&qW#ZMjHo@xp2mZ??^2t z2d&CD)4G51Jm{Y{glIoWJ-oy2ygO`fSe5$`f#hry)L725i=Gb`tQN)VGqRCNA&vJm z+Y3tXl)?d|zMf@AG^rl$4yUk2Vb6+e1Qo+t;%Wc>4BstDQmZ*rg0D7p4VAqllsdjV z1#&&6@nfHfg3<&BN_i%!DSIiJZ@(!J962FPZQw@1!pD30ISY1xz0(%610`4D$0ypU zh&GJ4#rs*hL(8#L>@8}R!6o!_Zzy|G^IELpAIF}a9Dp)d6MNn)HSJ08i~R(?!2%|tZFgbstw@BI-%9iEZFfZ9S1h5zsRX!5`w6dP={)q} zdNHXH05%Y zp1U#+x|4dDC-T5ik8Rw6H7-omV{4)6&P>q4D&{Irv1MlF#=*+rHNY>egS*ay#;oj# zhug+@gSReO-10$1X7tiTD8X_BE*5^=Il~_rZpKNl^u7pdhuLxN{YoR@|M#*DqO2p! zHgfO3k)jFCHw|v0tb@xobH8{F2^l<(QKBrTo!hwg2Tg?x-Mh0QEGPML?qJtG;rUfT z+Z1dTE$7OO8)WR8nGDlstpHbB(zz>|jF~$v5@2R!Hjpab%2hsX$y}`)2bDJ$1Jf@> z-2O+dOuEEcXtr`a$W^c94pq-*vQEarHqpbfp8w=p9_9B4oz@5eH>u<3LdRR_-fLbEZ>7JT$l(1-?h8ag#kKGy59iVZC@9 zm}#(%yWhotd4#k-yy&LnG>8`Qx?#1oa+V8Y5kTu^EtHj$GG`0^{Nz}XZ4!Orh(SC%CwmC5xw&Jg1r*FY`1)y?O|VYwuB>KUN!T)x;^8oB^>TgYIY zy93nHhCf=DOqdTf-pb)^q@G=vVpr=1pLwwVlmf2c4p60*?_0%n=R&{pidbgj05!{3 znpYC>e;K`N{+&u-T|79O|=sy=$6jUMV(<9*7G7lOqJBEI4 z?geZ1d&47)HZ*r(54iBt8(tYWgH-%_z-FSq_nkpAf_uQ^AKuWW>kJB6-2Ex4mi^1YN~A|LyYfY#s+b#VZ?o%R*Xw3`Dt zFD%fFvarmv?1(x*et#rRa%r>-xl=bB?C-#i^9%U=2WIl zI*M#@1;z={*ybQbv9*KHi5Y%isFV0Kd+OR#FVt{17@Q-1X0kn{_sR<`x*ZI{uSR3T z<@S`l&RnF`77UJEjK-xTFNrM4mD8UQ48qPtYvjnm)SK*Xd3Y1>fL6qX72Oce3fqgyRvb~Ml(8qpRpiJt& zedo2YkLYzH*KfU);?iIo`m>DPwEI2UaQ*-lP`D6R+;V2~QzY@*OMw ztpYailA{L1Jn)Z@#Vp=rHGC=}i=A|EHZD06VYBO;Cia?K$of08CHUX|zf#}rpJaLz zfm{tuE|ClG#4LXH@GQNu19X=mROml(i*;$kusTuI~vly$pya6uSMC$5hr=NL$O=$cxxRXZaVJ?$N0waXO>yw?v#13 z#*@d_jxoc%4n9!B?;C$N+X$b07ou$?(pV>hvmnklZ15i^1E{pMrqDZ#ZG8>t;v@Gx!89`Giax>BrrY-k+B^9=a9!w1>U6!b zDda3gX9Cq>v9c4qVDG|Oe=nW?NXrzS{AvStoGN4Olx}aeAe_G-(xls2w|d5*;x2P2 z2%>@hl!wUhqyiKK(IB3yj_DiD0~(1$t~xY3tBb{=s(~QP&+3v~oJQERE*}Wu#|k4T zWj_Vae-jJlk{}u?Y@doBg@uA%5{lcWLJ5m$`0$h@!NA3QHx465~~z`%BM{G)R&NE2BF*lZ*CWj_Po_wWRvy>UQefgaRVvm`YT z+`*=E>A>e0$^T3)1JmcbfxY_cfOdu^3||28GbdM&dm#s?){KU{?+!S<%oz;y<&*pt z^6kQ#j!JSaK{bl3V~g)SK&TlfGtCuM_^N%Qgfv`&gzDGDb~ zu>_|kyW`vJmDCmPXvp5sMn$Z4#MhpcurK85!j$K|?7zSMg7fx&{aHms%FoNA$oS-O6gYfn3b=G}HhA-TH6Y7D<<_la*&)DdZ6(Vuf}Z>L zN!x3|y+}yl7#bQ1$(S%M zE>8HlWX6njWc@tSr-+PEM*3|c<7_2;caX8FN&kIhyhCK2S~4b=tk*=wZ6)iTBx9c@ z>z*g;jvSLec^*Ak73<)j^Wdqw15cu%$J%G-Ibi-yjo*C2)F$lPS+HqVINz$r(?+F= z3v%pt^6OqD*}P+(1>biaWn{TT+;{5JFFnyz6ukST8B4{%>t8zWn*@0IOZUl1ffv8DHb)8! z{L&vKrT@~?4gN#dPL>8oOh>jQnI{Ey`>zx3&mYGmz|5Eop^onm1(Z&bP{*A6M)_`v z6l#m<@2Q8$p+fDa-bdY$TPV~rJGvb?6Mq4v0QnSH8oyikw&u$_(OKClvuY2F{qZu(v>)E+@&*vn(43ia-1hgpu- zwp$9{C#(r9KD%nVP#@H_5&SI)HF^9ymvb3@tUb3vhka%RjdqXRN4{wFskVN4EdQxC zofboK?Rt;@RNFB0p6@P8r|HvD;lkRFwYYK|!Ywo!Qci()rhlx>H6XPdme6RsHIkuR z*N58uop$Krcp5DrC<)#v{ZRYS(G^*~G^d^DON1^fKh&mcd!V*XbDG(KM3@-(p*H!M zCpvk~oEBD^2(Nao<7_taLIEqh8$^pq?y)FoO5w^&zU}cUR<2$us#4*dP)EGzQk4p99^XbS|)5|>zE|LPL&_jkklA(TX{2kuX7SK z*!Y=R-mU`L+RND=qLW~;)mv)Uc|{PsbUpj%kt8_ZtdG*wkOO%l1?)L*liY6Shaq=en6H znb*j&)=q=n%|mSS8->(tl})U>PUODrmNRT)tqkgFUpPx=MH+n5vx$ATWHqJ!iq6W( zCY-|I`Rtrg0hF472agTPr2rR*fwC zRohHQpZJRZ@U}JNb2Z`I{;Yi_LfX>>+}p4I0&ec4`k(D$BEoh$sp-DY)(jA}?XmtaK@zdhzNOMOVX z!DP%>*2f=du*F)6Z6PYsaQvwrtCIK!V`bSzUxztob{ex{iQg6_!@eqNMepk}VkHqj zVUsl5MpuOPsn~#3M0`}G1lv-49lc^emvxYM-VPDAmZ%8FL4E@30`bLUdkZ9u=?1^H z=c@jawX}_-U)ED*>686Y^yy`N8a0M4=QoNqpZF=OI$2Jl59)6=58D(FFS7m=>xf7m z&8h5_4WD>1^89+=Ua9|(G4lKtUa4lai#(w{zIfI~n>>H#g&SC_zKo@9Io4n^i}+a` z87%*wdpI+acG^S`PdgmK^7;-r?u!d-HV{9N98ZtouQcsn$FtT{k7X=k&RJ^bWOI(R z?~ajVsfm=Bi+r49(@p$O$Lls@M0_|We~8#TC%(*mw~h30o_QPo!+MbT{-&iiPlJwd zM*VvIstd;2i0xM6Y?QUO{z2MjZK$)BUEoif9dgrZn0Vz19cxjqnVc@Q8N%0JN6WxU z=a2_SWBV-2U+#G%*TiC7!H8uR$KsY?vKT(Tar-bNh9psd;v(CXyCo+ ziRfIh5nkMW0ep2;<@opiJ^hq?N>@xD7_wz^4Pqg=yfm^Wu<_sWHCstsR`N)x_3ELeR7`2H2+m zI@t7`*1z{67V>w zeb;m|jnDg`ht*C?zz-z1r?^EjzcEH1yC0B%M^-A~oud=^-6!>N>c)S*HeODXBV((i z0oUt*DCY6};pS6--Wik5y{R#b!aoJT=WdpaGBE@0Jd@{W0hu?=+ml4k^i1N8U)qT( zw}(NEtA(@#n_TW7rv;r4S`F8c+B?g;qq&c4_oG7}BH`8hGW1nPOSq+zx1vGE7?N96 zl0IH_6<1ra4E1Kl!kU5?G#{#vtNElDX${3fwQ?REn3i#`Eh&eb6xZ;3jw!Y z>pr^mG!&Ly)8^zAmT_UpMYO1P1w7#Wntt(F88_8?n15I#6$ahfL2q~#!j+4x=I7GV z;K^arhH1}gxlNQ#tAJyWEvchtL~Y>inmyuYp2==7l4o<37L52QKR?mN2kLTnEgJC- zt$ey~zdrZ#vJqd@`J5(AYTYTV8u3G&It})HCEQ(WMtqKCD4i4=_@BS}ulcopUiByX(jFqqPQ8g%2O)2s&QM;y^t9AK1PW#HzAHYscJtGe-a7z7H{N;^K-bDjgO?obO)}vLmPUivx{S zV{{gjaVsP5BfHK}*jOgr5Zjf_m0tM-g^ynf+oJ~Pi%vXf==T~xEjt!N$;I2~e*}hc zvu3?P?p`7AWEjP0ooLKeo;!#P!6In5fMNu$bKxef|Af-~gW(R(Dte55Cf9Dv5Sn%< z2p($MLU%q;&$a*f6;6<2%a;G|cM~lt`!T{N`<~g26xbtLwAQJ-mefT<_ zVRyold&l($B40+JB>9Z;nY=Fq=ceEF`v`4DynZ&gw=j+IyY@|tr{CM@OIHo)W;Z@h zBY7(R)eFvnzs_@iYQ3D!C9?8?T0|9oC`1hClc}l-$6lh6s4? zLk3z_lF3)XEHGtb6s(__jtt;b{zB)eptd&}`pr&7dn%vt;ybm$wIea`fKm#I5Ie#% z$r=mRj3sk&Dw5GY(+b|rJ!8NJGRJpbb~4)haRcw`v@t+_W-Qd)6O1N!9p+nR%>{0g zqhSr(6Rq*JLkI1Yfb+~~$oig$KBq25V}Tz}wlor+zn6xZzxgA^do6x@R3w=bm4#lH zdm+~J?R>w!2srCz78?5Gi9T(q;^#h&fQ#F+(2itJS!i392a;>75+2JcMpK)}Jis0nj7+%(mj4+P++!M-jP0==4bQ&xRZeTi8hXU$ zE?3k$%x^qAvRuLAFhA{1GK#2F0J8N?e8=nrB$BQMwhfZJw2$IY?nzB>fAJ#9Z*n}E z*sKYje2$`GR>dRBU7EmoT{_i!G@j(-)&%N5vZ<*4c+>23*Vc#j6i9WJ4&qsel64G?WsO3f)vK%cLV1-Tuilz(*s+Uz?PTo5axb{|MU__{g> zkS(L?$Y(|~2X%1Yzm(EeNkC%{s)6`rC6s4CJnEHF0|y-oDelTRR2MJ?45;T)M@fB$ z;o8yQ+J_8k$Lkm*{aqCt7>c6?S4E?Vj;i2s#R^KJBNFA7sDPbc{itO!5oq^KWl$L~ zn{uJAMh7M;1Nk8qMRQ$=G{Tj@b;+qz`oa}Rr$rG+@-?X~q05noq9Qo!Gm3f=8;W$6 zD*!F+*X)jxCFp9qJlJh{k&*>9&XeW9^3MV6 zxN8B(yipeHUunz^Px42$p0Z%A?>pAwd48z=n+!N;xr=pf@j~>xQ3hznTd{`fe33EX zhjm*I*erv-=;RU^AhYhM^;!*I^qjm0QdhSy{?4-Ieb>Ma@77TA&$OWY5ecY#Kn}my zq(RYGW8wP8W1*GgcNDkNn6f-R8j5Bc!b3&_NFrnoWfZOoFWxbMZ&%+%3r_iEYH+zK>@l&1-4jnCCC?(tiKPl{@~vUqa!ov@4N>9=Yq9AZvh3ZDFv5AI3X;qW0n zP(0=*xVP>im~#=}tnjfwlOqc0+pdB&{%oA`Ru1g-mw*w?T_BKejn8mIL7JR2tT=ZY zh<}-mdmP?T{f#ov<t`@WX~aKuw*B*LGm)?)TB~7(i513)rSDT+e%N zeO2H6{K?1Q_IYM{dU~4nnVz2M=Xben1{xi8QlOvu$g(|GA89ff{2?b zf)~$>(SiUQ7z-u_9*$HDRZmQirKV952;kzqc@fx1pW&`n2bXD{wLoa9Wr4U zWxaLGNBX`_afm&7(GxM3hAm}uswShre#4RWbZh4Iuk(U&uV$j5L;IpmLmTFEa2BJt z)fOpj;-gI=HN~Q5fY~CpMFH>mD4=Ji;AGi$rcBWm)teflRXe22(|uxQ*Fzgr>S>IU zs5eW&@@hdUp|ScRjgkMU-b_G~EpzXP4UIKrjFxw;m7GuC!31rj9-e26(c|kj%z@@} zOpiG>Na?LHS{J@v5I4z;LBnj&CX111uGt>T-B}*Yl=BEF?i-1$YxAYsy78D65kd}@ zCTNz)N`a@Hka6Bm*Ev2nK@I_?Qt#ROnQ`p^1b$!anY5i_ z5pTXFn!0Qq({I5{rt`8DS}tPH@!cMh;FfiQ#f3sN%XvO?>|eoz+XzqO@p^{2Lxic*cuyh;K6NY+lY~%nd=K{paDyeK*2>k=?mLogv8o zrx(sSwh8u_lE5Z{<*4+IJN{L@8RiUlUoNC$=*hxaIDSbAboSa_p1NQ;8vJbrZh4Xd z<9i$_uU)wu>H03g^EWbZ`OHM@{WciIDEZ+y6H|DoQ-vsOnuZ3yj>q-_1XrsKAj?hw zbfG-~2dmh?eY^prR}?@&@7Lnqt8L)WU;W9gX#jnuWB8RDY~TWg0c58kK$CqF@s=4j z(69Rd!m0rDt2z<)dV*j>&jIBAH!<>WOvJ$m!BxEm5b{%uo>nE|#R(9`b{jw@=>ViR zDG_fj0dVl={$$EzfHnoJ!>;eda6m1c%i9Iev;k}Jc1tmQOXsGR^?+#k=6HOnQv?_F z?oT8vL=!&5V29&kc(6%_+_-}fsau2Jn?ty2k~R@du|=*;;dt_T8>ro1lVtUnh+M)~ zL-9TP8SoWd zW7YJ@5&2oI#Fc$#L+@8zxO(<<>g&52-<#(PKa0NL(IqbEscQrd7!d%wDSX7fUuGiL zEzwvoJ{Yccd4}g}x*_$q@%ZJoPI~2}N!SzOdNM+c5+>*Zoewk0b0Q~*Xdz_7R?(Tx! zlcI2Sq92MmcM!X**$wB@@x5ZYADW~>^109uvF`MzPk9Yg8j*og=Ill0?mwI{g z7G7~Zop1179AEhCQV6JN;T7*oi$neA#22PsdkTWy@QQ!YcXmlke4*4?4LXlsDHp5?)T>ve-uU|&&0UG$serYzA3z7ySq`yF)*(1 zqlp+kAIB?J&WS?iK5>PXzR)r(1GEyg)S$eR9y^hCVgJKQ5|*)Gtx!VWbf^v)&9BomU0z)C*(L zoiUvBh8Z40V~`!9>yDRQvE@RpnqliRs-W#2UCUiPm0Nqs3|C21L7y8@D8y<8ccaP- zM--}pk2O(fPO=*}u+j{F$X5k(FGZndLl17q1zLWNDiBmhp(C-LTxx|GcF$4;T2*vi zRHrAWPPy+cRdBL03i)byaWl`GVW$*TP(XQQA5U)0Kr^iJxEC z=MF3yhG9UMyHD`xS9`|c+$;h;z8YFP%mQ0h1^ud_paX(KX!^ib}G8uxv@&P z$Bjzyrad(N?P)bGW7StqPyLj5%F7sJ_C2ShUe!<>IfZ(IdbqOX?TOrm<{o0TW%QjG)q+C0I&t2vX6y;o^-lDa=%I|*d$8EAI9zT(K zhq^zBDI0sL7q?PXZ@eG%sw|COTlzz}8z z%661v*>;8r5sd$Pdu+bye{Amu%mrirKGurnq2Hj(k7XBTSjzGT(PK9~(3EeNl~a;- zMqZ8#$8Xb+ge|jxsr=XAbMI~C%xDI>!e^j#p9lNZVhl_^@)%?&9Ap!FS;2-8kH9ti zGwj*3R`BTi2cSduGV5<+4IRGT2kyV_vhGK$;eZME!O&&TSpOz#m`>`!mbY(N@8M(N z@Su8d^Ft%64#z?@rXIjA&8)N2SXke`9{fydVL#0r3yE4iuo&3Nmb;FHF1_o4&FEG( zXUbTpH@qJBskX3b#$(}f&w6mG;uGuIZVj7C>VZC&aY(ib*$hIwMSs*qOzWEH; zW=&>;Tm&%s%5(5hFpA}0v4peBUVx(0>a5dLOL!{lC77xCp*;7d1>C;s6?m#uR<63h z0xlW*8jQD0Ew}Gx0af0-1`e)M%Pmiu!nu()sO@4v6V|3*Q#9&tp+){YycNMop(h{2gXapdO~ea`e%DI0F2 z2-c*eczq%72`p^%H);|`{x*vsV z-gg7*6f7{b(Fc7#twCB*nqbUE8|>}m0`jMa-JEq( zG_hdpRG`-yO*T)fW@lAu;+`UBpwt{q>ijOU)mRgUb{w4NG8O>kl2CP3u zljI|p*g|A%8 z>KY3ooM?& z^0T;uO)YrEC6w(3&$D7kwJVQHzW;zrtIh@|3u8#wLS=4sRV~;0^av;~k0F7IeYhPN zm0WA{32?279^Y4os}3*a8X8K#?W-{aM-1jZrxtQcc9etX6Jm+3;}C9GelDjpayQ^o zVu@M7a898qlWUw82P{s<5@2k^^^4rWb%ZSd&u_$%Vn zlEm@brh+``_t3*^Ece_#j!SX21GPV5N&6tcsYb5mk}Pe&ab6tJZ?@q?BbRYAF9Xo3 z6h|HfOyutFTEvY^5&z5mAZAUR1bd0MGfB4UB`^6=Nb__kWXNu2{vgYexRMA|xnlzy zCfLF(?>?!-w3NR0+p!I5?>WJ=GV@B5Lsp~db9cj?ccPffrSnS`FI{hQPMnXivBMWqRHe+XH9lF#m9E>0RLk@;ubSiut& z1!XY7qjM}}{8=D9e`F3b;F7(3eQ>A`PgMK0n5i%)axQS@iPYROn5VO2<@Nn+!xQ&y;fw0Z$|>PG_drY?H4)b{WAFrM}tAtnzs#=N6hg(Z#H7jF;YwVwvB>3`L%3 zdr=A#63|m#pRFwlqE|HL^^o2Q^8H0G6hv#Yb~7H9=-{Q*( zBF*n>80)OF^7?Dc^#S4E;~C-B5mN1gap?NIa*%l_omt|xK{~WC7HuB=9yo#wrrJU( zHJnMuKv~`4JO52g0#_|PQ5%C4EBnH*t2>!q>NV2+0WoOtSzVYNk->xweJb6r9)li? z8Udr9r!v_cucXGc(P(_CAsl^n8#Al#bLoSF(P;2cW7u7B8xKGU*JOX`ZHE4V6w*G<7oruB( zgMP3sw7o<=-|@HXXxtk3gFU9|j=IhJhG%8dd4aw^*wGW*k>}*ESSLRgFIM}`CdRv? zioP9qZdn|z_WH_puXabHE8B5LU_3sq_=U~tI~%q5w_*L(cs#j(E8944HoB^)K)SUg z;PvYYSZwB~j<;#sj4KiGsp!Ae)S-Q?dz~x{`c~B zTW2(>OqmodOT<45j+MVFnT}44QXwO5Ct|aM9_3kH(^1?K6_Q|>gyWss%6{riM=4uW zNYT6`JiUi+S)Jl^)Gteg7$hfQ{nJZJBU_yQ?PGdh8yAO;CY@sqcAhEyRFVN+4~#|A z`-|BQmt?N!cr6$tq8hNjcX`#$4$d&81MGdc2IXrQi^A9G;<2&a;Vd>16<#hAH8@$| zi?3DTrwr|s~TKe5s6l_JiKKz zA676KpzZxqGDXD@juGVJlv~Q+_?e|-XSD&1r*RB>_Z|vfr7R@{=>{3KkEVk+=1a+Ta|5_? zLIL(=UBPGmQj*0tfGP6|@Qah~pk99|Nz*rg8&?$IHH-&v(_2dV=o!Gp;RSefg$Ec+ z`Rx$~&?ce)r{DDer=6FQvK9K!Irli$9P9~3++0fBR*isoVm=<<;0cVgmXSpJp|CnE z7vJvk0xd^Eh!ypyOr3uK$NTtzyoTkZ^@29cFx`v8YkWap>rk@ccpo_7=XTtsKL<=Y zw36uGQ-(#~H(?u_xq#7HO_Bl?VE)Xtc(1}d08fOGLYuGP#D?YA`kNtGNMoKWcD8~W zE?&6Ae2REULL@TY|As3h_V7`)w@5pC4a%ES&!v5`gx9;R7T?+xg=%vya%-Lsg%-xu zV*AC>NGd+frIz)E-fwtd#-JFKdoG8&Og%g2Sq=i53Sv;?@pS4|cn@59YYuvkh()#Y z)^QHEO944&13aRszsa&7ZirDfc;Pr5^sIS1tg~ ze)GUZ-8i(UWf+%pd;%~z83-8af092{o$I(}1co^*0kL**sOpO%x5!QtTwELiwoyNn z!F#^2iOJo;Ae$BcazB(tln$R8ZIvD=brTBBSECC7Sx|RNg7op0K%w@Em1rr*g@>rW z`ytu)TT(IxaW{&yS3f#`Fmn4q34RWzL~q#`BI!v+ZMr z&qOQG)ZPU&&Tfjd{b8(7f5-~tGrs^1?|)RP9uO_8R9k^|B@{rrxD091_$Z;d$_n%) zsQ}*EyG}};h6oobuRu>$W#gl@lwZ7%E>*J(kRLCg$M<@fDU}XABllCg zfq0^Bw7zE@X2_3kW_Y5+$ZgVTw(sSBFwF)$(Y3?trDX*dB(m#irsFr~_BGOHRz2j` zQ`e;+%6z#)`esAfU;Mp-2$`LchPb)Q`3gE-EB>x4ojJ~2e!fI&eb8;eKI!*w*9EOL z)c?%m4d~NIztcK(hDr8`MIQx_o#`gn&tr?U)n>BLEj|p@@HfNAjBQdlW13LaHw-b?Hp8EV z8>K!korMSN!_e7LDezv&da0R$qtJ5fzupff{H831c@LPSbgyh#C5-_;RgFadFoDxo zjubmle{0@MRnm*bogPrWU3`{xLGRRhky=d}OKtE8ac6=HIx(Op2~t`JNAF<8{ajtp zs}L0;QdkDJ`c;X&Ea?4RMTKPC35DbPUlCUhbV2zymC1aU)o`r)RdK$W3wnl?$$;@; zaIW4p@!*~=s3)sTqP@f5Y;;W=uHu5)iu#a>;PLQ{dSUq>KWB7wxCYV2VIVJ|k@J4% zg7$ZQzzdcR5qmVcV(``n-3e~QtDJj^HT2xD<0>Cylk^GS(P|MjYPsX_x<1IjvkChp z*Nb{ybH}&t(0CYaP57!+m1v6lY#egf8x5G(jIr|>(V;W5@sl`j)GNOkfBtep6!LX8 zo)+YdoNhPcN0X0=_6+mD1H8P^{P)c`*e6#+pD^(4nciq^OEYerk|X*$-UIVpyis9m zGfo_lBT^Q7;7Vt2)K}*-Ha0jb>eFX7e&gYduCDlueLj5_O*`z0B`dvA%JR8GOvN`Jk_!ZFrrs77cx+i!X%uBAvm%FgIufsLNEtBh9=~{1atTcZN@6 zwJG4%Y3|5DyEj=$*9@l}c*8mUa79WN`jERX-NE6EYh1|Mndrz`4N^a2B^d5s!ZoMP zK%u+(5?|*H;FNDB_qD?XZRTr|*$umZ-_;~;a=r^%I!lv$|C9rAFVEwSZ*@U8#%Pjk zfdmM%MV!k47v%e_FVR?n!N=JHInh-Y&~pv)QS}y>=1{>7 zbeVy6duWheW)H#PAG_G&yQt5?Lv_NJJ_E_(MQqC587L!6om^V`8l3-b#h&ar6J-e1 z$=TRmUT~EXx54@tJa}F0zYJ#^DRFvJkHJ}A)bb8{D{^n+jzO(O zee(Ks{$elPIR-t4tLJ^0*}YUzUDNHK4P4A*K}|Bgmq`&?$IWBrk{Mu z2lLOuNhzc93UJ?Ym6Eeisnj&j^Wo95cB4`_rO+%-vRt?9ZgeT!vS4)H#VbQg_ex6P zwEEF`fA*hW9}FddJKBo+dqk7a<)*MoU?jmm+lsE+#t;&x18>9`Nt~Cp7qM(C8D&xf zl*5fA^XIh}DW=4c2fJ1R6*nV^y?J|)?#(!|VA4SF!`w)6^lMvDesdg|h>FD%`x;3C zYTAl^{)i)I{lu-+0~EgI%~H5T*SAqV<(lrfijKU4VMh#;D&t5{#AvXr=a;-8qZSzz4TvQr4&T75 zK|INe$7w~G8>30L`+WHC&hOCr*3tUTqxFqz;KKsS4^m#bA(|}w#D|M0cc=VVax|$> zHimsDZ-10lWV1e+NJbjN99^Cyn)1ZNXfn&y7#dUF`Y^31er+^i*BQe-19_5}l#An| zNmr>c6cak0qV>CzR_fRe<;NFAlb1J5ppO<$;&(f(=;6X>GF@jBEY{>nvTmgnnFU0X)LEloU&=q-q}Mwy znw&`+1rz%6Bu!auMYlyran@>TzI6`JKA7 zqJCb{qCuWTJ5}unGOd9oH3;xOJcmL?u-|0`h=Rtk3$$^oOQ*A5$6U)jfdhmabXP9ko zb6lLi6D|+ZLjR|+Nzpv{x$X??ixe8NaS=W5ue#o-&Ae2;-G6Pb|1xY?epX%wmDFA+ zY0()ut~uTdO__d5jvF8KLI-E);OYJWCwNJ=VLqWRRLHrw zpwC1(PKwe*Z$rg$YT~`kpA|S z`*-Ii?LuT|k-^Th$Pml$$8|!q>&I-aJ*QkB1Bu$ z)^Z2Z)&eobhMu%dOd>h8QIWuiVzXc&GCCj3O*tP7MpIlGL(ie>%cbf10vR5^Rfuvz zoVdymCm^PnIV41l-^85ScQF`4v6WPajIOB5W%$k;A*z~wjqTxlO?;Q)<<0b(W)-jrvkJs3C>C`H z(d7>*tm;Sl(v)KFpF%Xh?;Q3;-#KDmig^lSP_1Yr>nt8AR-|~b;uw?^(Ndlm*&>qR zdg^0z`%`v#T~oH`KE*p|f8K0Au6+IEaiU!mKcVUMiu|(stMkV{qgWQprNO$e^x)*e zaWeeR{w}*m{l3TiiU0Ic{I9}?dfMU*?{15IwuHmP(D`zF<5>v&5VA^+J4x_=8Ezc> zR~^)D1;gHEE9Lbu>a_%ZII%*G`SX`RixVMo{PErr7&~^U9M1|`3ZvcXb)mI_@vWJ@$scFQ4Yf@!{3Wp>8)HIkxs$0rlEv%kjafp-_6$RgMW*30LMj z%keV7DyWp~D94)(S3|YP$#UGT6$UL*C(7}r?_p5u29jg`-EinNQ!K~F4oARaL&wSS z=Q)w^=tL_yzOTFne!0%bvF+|PP<-7|j(hZpg1XKYa;&^C3XYv)F2}?7N5Mb)4DEAd z_38}iDw<^d@86wMoh4(b=E~CFnoF{%=E~CFnoHJD&5fYxZ_WL;=2U0NNUFKUH2tl) zM4M`^7ELn!rJ74NQq4`KNv63}XGt#A+#H(vP|c+}OEReD?xacdm*$dhRCB-3^ta{` zhH9<_O@C`HiK3btLDN~PxuUH?QbaZP1Wgnp;UOXUMm6^fO%x+*sgRtZntO^SimBJJ zkc3msT}_irbE(dfPgHY1$aI%#uGeEBX{MU{fhL*eQk^9YRCDWTlIbtiS>jGLcP33T z{S|iz$xEuaPic~AuFp>)*+w;Y15Feos5^DyR{tUWCLU~>zWrRnldI4A&vif1sru@8Spe_b%}+B;~yMul&< z!xSvu+63DkbmQOuIu`gXZG{)lEAVY&Y{1y6cIb7!(Mrl>{fLq)F z1w(!qZTn^qTGwg`6pp8XLU3MN@^GJC#QH(pNBN~f*u>9fQX)O4Hu58&{4pKOvGU(r( zt174%Gxbjo%f?npw%^84A1FSWUSaTx@+T`=#&4y(a@C-maLPM2CyJc9l#MN{)C>cu z#}9k=rD*;yRpT#gAH!MHbImQnOx*mni(hZ}+@Ss|_0Ta272CCT@ViX947RpXkBW?J z@v<-7jJ0pa8ybF$L)C{bizA7hw68H5j%WTHg4%zbU0DGgGv7YfY!}$lON6~0saDHPK-%Rnf z;jxWzXkE`RV6dW#e`SoSk?IP{nPf0zb{9XaqmPl&Y#JNr`*z?Wrrdm}(O7XDT5O&L z#_UryEqC2d;t<^OcQntes=j zSs06UEUg9q?EnAN+TT3j@41=%H-&kBVu|I8|CpN@V%i}1C#QZ^a^D8o-}g_v?eDo6 zlkVd!|HQJnne(MvrEj(;N$GqK`X~QghOAzH;*GStQFN}SR{citpIDY}%bWzuHZ(&> zy}AVdUqh|Ra{eNbd~Kepl|UEkg5jl?$t*%JYps4T-94UY_G1qzzz8I3VfHfBBB znb;R;1$rTSwRE~BLj$!R_CybV9Ax{uX&|%99>};%!jfEd4cWg zb>N0MD!?YdI(L-}M)2H2${pP7i{3L+uzq311 zG@Ob$E(LMg3%jEqFCCDfIQak7U%bDM9f|MV#I`i+lZ|)pi|6YzM4_RSdtfXicjx4T z+fa|FX7$AjuOeb1QG(Vc14!~mGyHCfJ;{n03f)d?5Rz$&BQ8uKJL$TOeTP&@c+_+p z_G~KoY%GQ^lU2xYBX@jKdm0HfoCqg;>Onetd10f1Y2;DyBsh3>58@Kxjh{WAMlSrC z3=?c=Jo*A}ocDej{kDAyj2beOT&}joYln%*&Drx{cC#IMSfYXtmh>f|E$d)A-;Ff+ z*K!51pYiC4oB!>3;z&1gD&jhq@$@qule-Ceo4JuWwKbgfj~0CP;Rfh$=|<*nzQ`SA z+i>u&Bv>wRBbnFFbAz=yu%W?P$Q$iO4wsd2`#*fccdFOG-NW37_X-KuBIv{)b3OX!Zi+eUlktk1agU-8Wk!@$vIc2&|(SH6Um^yJ58QE7*_olwIiCpB$*v0~14>$aQ}+Ha2wt z@p}ALtXn;e>{|S?ygX$f5zOBsPPLv!1p0~PX&$Ff|N5&B5WK~|z1IIv;}Ma{WOPk5N+A8nsa2y$leQgNOYxQ4 zkOXfwlyCp9!a-4xOdDV%uS4%hK%!6b<#_QU5xG6iM2-a|x4A+6@ZAzBoNh@3M*X)gQd{^%iHgMf6$J^e$$1`@P$nm3> zZ}B_-R5|{$Z~X7x_y6>S-&(3jPQP?QDlPiup_z&##mgO;ZR&xOV-?APSYH~;YBe4k ztVpJ;nuqis?7_$V6v^JH0chrrlUOiAk*u*?h#u8ptS?d|H6DS;q3$BSt*uB_GzX&L zAy;w6T^?QQ6olUDUB?v>JmP2(giPjL$4gFq!!kUX)56`>yu(u|zCYmvjJx#|J5a27 zN*BrSIFlgM(`<+wOZx>OZT>JhE@=%!ql<^jv4{ks+4o1tv0Zo|N;#n?$JYi1qH7|3 zIlh&%5cS*s7oOE`Aqv2M;ps~jpflJ1!fZ|e>U~2WE$MoSW3WF88m5ot$3DYv%jcu^ zAtR89!*eV+Fb}FElUt(x72N6GQWMTXoFT3lD)F<>oJs!Nl zZec!XTc9%9A$^BU)x1%2eHY9+@d1y_@kff6;JK&RJDcyT$6M|I{J zjO*8ehfH@vT1qT*p4x`5zi~wmm}4-0%@h8K?y-9xITkjgIKtyLOzRv4Y;YQNXWjaXzSK|FlL1!=|y87Xf&sRq9R3d?6m`Wb}0`0*?<1&DQ_^= zhCH0HS^V~gF`5(>ByM;kB9G>{gUvro(bjqaAPv^!8UHA#;aQ*vhZHa=dJGwO`7&tQ zXo>1)9|eLl44H7@8L-?gK&L!dusmKsR#tunGB1h;lFPvUyd@bL`UCvPV$jQ~8^GPq zlJJBI(EJ92oZj65=f_!+@*zB!^nyVSA@{&~p(PoNcu?;(gT5d6|IRm>SrRur9<*#^ zQ0Vh}z-o{sDY&5k&vr5B#fEwi!?PqO-4q}@kiHw*a346ov><1fb^$wUAu_Ff0J1My z&{)Ksz-yKe^>cg#0!~_xs0BYkucbojH}V+l%eEjo+;)Fn_fW?R)ne+`nQ$)D^w}6E`8+>HiXB_qL>dK&>EUxDaXXe+g!+ zwj>K|n!w2i3>usJ9K2Ex5Z3S=IF!gBons9^@3?^6UGWTz8^)lb`}N>t2t(dYuLsu0 z1*mM^4KQ-5khr|L2BwV^pcf&R0N-j1QCL_3Z1-BCcmW3P=2pb&%PG+M%K~ZEOTZdS zYcinnC|KrUfqHE{0usiKCF6hY1#Nle$ad2nu+?T9X{|{CN=>8D%#O{V$E5M(`T1xt z$9yyj)`$k1>_tR;YYw2_IiV?!=YZZ~F-bR`2o~j-qWH5D!DS;r42SW7Lc=K3y@xSy z?gmMnR&S82I|?lxsRowSLZV;&QoPvL1U0C>5u=TWMBFG5Z_Xcy9Dkk`Yn$7U$XKw?8i^|TWw&{*@s-mN66UYUN-s3lZH9`YssgM6>|Cc>y{rSxHKd{Vs`G5V7 z&Q~yh?U6mFDJblmJXs|BEs;N0DkuzGJ6{$C>^Qxe2XfxB;V)ie-X`a9biKN4zx{Sa zc`W!|?_$v2s+1zh(eCir(e45_x;E>-`MFH~iV1fZ2 zza|%#<^H?``#midC7+yJUOnM59O67)T;!Qk9=7K)M6>sZKiPaN@BjTWT(b0$_@MJ3 zR@v_g6u#8}HWLwh3}1ncD+ORoBAuVtsevOlyMQJ8BH1YK8u?r1L8gMG<%%V7Nc(zQ;X__Nh#z2S896)-jeOQtIMMzpa5A#A6qd#!eae%Hn!yyx z?~RK^{b~M#Z>gUh&EIk?25HdpEVBkeS$ST%F=#G5A3MbedeQUo_eP^?TA#=4XlPFB zQv;)shA6A(TAd|)JcAMV4*qZcuWpb3{QvYn&9(JDx6_Vlr_A?XL7`HP6%?r6AEMNl z&S$Fr_5WQ#VY~fg>IEM^P^S4K6yx>xC5#u3P*lj3X}(9#c>O6<^XYG{O!M6aD&!bZ z&8NS)GR+SW#v7cbn!jAAkSo*tS}z5I?Nsw?z2XgjYyROsG(VeFFz8D)pZ@0l*8Hq+td$)|rwi>9c1x_$ZQBRxccwEv{-=_&5wjbpc&{uFKRpg!AOhziQ@Ov z!-Z5eiv8{n;~qV|FBb2MLt7O_fvq1GaP`H5fu}i*M}2!PxNDTb{Zg6^UhRrS`@A-R z$I4}#=av{S{!t9FN<0WInBC_J6m|e-Z5nHxUjkmk7Oqh{7p(G$M&8@cf#s1re0X&c zh`SqwT>Djlx9gPf^W7yN>~Iu%qF4pola#PpatU}q`Jn5S;P84SEOjpdT{%(6JH8U! zPFBLJ)k}c%2=xFOQ3;-HP{Lo%O2HNS&Pq^z0aR~P!dJYcpwDp{YkbxPuz8abKK4@r zW}S#a>R&1Vf3p(iACZ8dlTm2q(F(AS@>hNmFrqjLZCY6Y9#fu5eHI-gQE1@Y3eZA1 zJ6HnFP;R%p0#s0*GD-q`DbLQV05+7H&ys)z^!R5D6(E70@AXy*Xrbj-SzG|Av_7p5 zC4gTTh160mfEZfeo#s+tR1k$C-d_Mg^m=sHOM%w0D8$)U0#ACq_`VeMrPq^_Q3--* zdt5ds0e19y@7=EiS&2$GY+ebtO54M%M->=Mxz45%aD%qjKigB*Uu5q_e)pT-dbE0g zCzSc1E^|D_$gqM}PuSqPi|OvJPI7!BxwQ`sh(#*(wV$C*!hXhbJzg7-8<9%Lgz}P0 z$sG7)K-P+s&|d0uuU55_+o5Afx>a^Vc37QUIg`(&4mKn|6uP17?i%D$*aeQSY)Hai z@X)m}eaUFO=iI~_2Bhyo1$1*VjVbw(ho3|lkcneDVN;+Msjt?=`?Tr#rhkK@g0zXC zW&}m^@vF82MV@d`6%2612eTNjhZM zBn#|ss!y7HTHsGe;|iEtU;{&aaxu9D)>`Wj7hMY+H&mYtJlO)DTj~(Ko)%bXpgvh! z+X5e%>5vVb=6IS8t8TJkn@oi*h{QWQWaX@C)yr$8!WJf ztv;!L`5D^K_IkD50$bVX6Q`S>|EKoMxVwyLl7_>MF*YT`dA7yP6d!mr`{Y0U*zb1F zFV60cq;{=8@p9_THYCE0fyQH_?UBXMkgOR6` zKf^9uCrwycjbHx^Mx|i44B(f%=`#O=hmENUimGNZrE0hcYO&)IllX(Q4Lzs zC&ktHVpA~M7^}x@*L0B@->=3AZ-SBEn^S^Jtqsyg-7ezzhF~;+4Ytm2Y7qR-eU^JKaT-x?+g;bDw5l7Sg!(TkH?6=%nTDj&To?jJ=KKJ}7xEvQR zT{Pz+9#s>JEI!5-8M<*AEnp(IT)SlyH~R2U4ZmfN;Tfu5sW(Z z4l`=`*;3y%)p#{+uYb1ZpC0^5RC9h(&5>!%pC0@pf3{iv_U8Ym|NhTM%BGQHHWmN& z=l`u!{|o*4!;im9pd`qk&!h3oKmGWpRUE{LO}SX5S_6LfpNDws_u^He9Q<{p5_Aal zN4Ij)@O|nh7{2l;80fkXRT-|ujrX#!(}Ck)!1_g~&}|_;)UXeeQV+0k>k_oEeli|m zvIj46*(1)?2thU0qpIaley!y`(Eagh4cyB6>3H#|IxdOw zoPPB9JLz~`cpcY7%l|N!YP?-dy&rn5FMPNngu6$#4FrZ}>?oPr1Lm`?o1&+c$b*6?*S{(Oq0Vue%riO7E#1 z&6VY$Szhuy+xzRW+78}WgXYm!T*Pkp=8a|d+6c2ftXYnaJWuf9 z`pUQ8HT%MTQ1z4N_mFnu3{CvxdFI~h!5ROJ-6%Hr8~adfM6s;=-&j^R8Rq}Jea0X8 zW#x?g`&ij_S^2+@m6b2UzI3}D#WJ7$z(4ZHj{Wmo`hOfN+b(N|-*u4T0Gi)~ZkN?( z9>u@wBg21|^ZQyn==MMB^XIky)3;s8W*8|-7aI2pF0FH-&9b1CJ(tZn2^Y=&M-5Hhid5eC-l}C~}&vM~?g?F$jUIA7AFd+Qg3-IHS2Dsot7kq3zoTO(zgzm@hLMPA# zZ#xYppJsi4`rB_nC-W{?!0D2#mS)IYsD&p)T~I^Do0_3^O)cCxt_$*LY$V;+&2Yez zT6kAT-vN~AlH7aE(DY|5G#K3l6-sqUV^uSR!|I^5Q5T$aMwcW@n&DLYI(T?U7tA=N zOL}J0{lRr`kPa=sM3-o%Hbd1db8fTp5ZA#p z#V&Y^^3}_mp_6w2lr`q!6&D6Ny*V>c+ag4`s#MUgtNLNu&fz!f;#A@*9H60>x-{x zhBr0ppr%O|j4szDPaiZxua;Vz zd(w4>=nYM>ICbnJDS@M#0`Eo0<1V2P4ghsp!$e z{*vCqw3zv<5t?f|0bRc|NV4XLkf|Rw8rkHFkWs)eiQP|o=DCUh9cZ&gVZ%?D+iUwW zZxRJ)aU^q_k%;v)1vv;Jx-pw8h#6 z&CN<@PMsae7-sU(@_1X+K5QW~JU2mLwU>{EthGf$x=JJ$?piaxJNd|Yy)F9nSVzcA zAHjHT;iLH}w#ehs7RJnI81pcRkJxluRQ0vD)MmsO<`A97KC{mjt#I!z^*u6<30=uY z`G;-Mb#*@`*Lym{3#Rkj$86EU#9z!ZCpD%|0F8rOWQ!c5`bm%OG-2H4@KNtmw#X;$ zDKnzFOR&?IkJ3)tqD`g2%tJplMuYC3LidM#(qIO=sxWH)d~~uti(k zm4!~4&jbM*`RD}oYL8FzXPUAf3C?e&pZ0CCMVlw|75;q4W2C$I$T-Os`L$*<1-d1I zV%lDk1l#|qJ(cNwLDpYn&q<0D%f=ou{BXOqH1dDM5|YZsE~5<$PlmKB7x6Exk!a6< zz{+9?t&dPEZvPorto1kl^I2V1*6&2ilqmc)UZF7^>x}*$yBHd-IgF<_?18@5gRskP zKje7t0B+99f}?DM@DzJL)ZBLuK5_myjGiBWHCOwh=nI>%hAV;3d_A$HyAL`Zz8ue) zaSz_8wZqBJz0kyRG0qZvhDX%-Sf}0tea`&F0p;#!d9EUMeeZ_2;ZfX~GIgYBd4}^- znu)#${mM^j4L~V7Jh_!oPAIj@448HfL9ykDj(i&k~OU z^&5J~&iRDsLa-h3V)8(@dOc)noFTfh*bWWMIt)&{*F&oZT8Y{N?NF;*7Laz=M=Mrl zjy3nUqrTV~pwv(wop763zQo54eg3o+Y@Mu++8i6oU%J{Mif*!-XA zTz4mD_`Q5JdcD&CwtbD_)a;z0e%LbPd&mIJH*MjfEu6t&e*kJ*XaK75X`GswGaS4Z zggg%$Kmi-~tILk}covMj_8P#z;c;A!jWfj5M53fb18}to7jdI=6;^J}?J7Xo^UL~^B za9=sHm>9vgUtLmqJGvZoZdk{+fBB_!*Mf4CaVCzJH|bjDI<_2bnY*5s4>K>zaVSSY z$(wljpF_%WjM=q5Zsq0k#+F^zVR}F+FP}fItX~%v=5MA8#+CJE+FHNW_@CsGh7Mmh;tX?xq1|IAyygjGi^}!k9w-LGb*0f*>G~FQ zBf1l(F3*@Y!2x)U!+I1wva#&#$RK!nW()r27=`BUK38^P%_3M`e+(D<2BEiK`PHa(d@j7|GU)d49(PZBNN?Tz6|Idl&5u z(*n97-NE`|J`KTEVhZAZDk!LYjM&)84oVZPK)p}_t#=$R?)=^w4zsx!=O4O?M#!Vg_YUIgvu)s9Ae%c^-xk%m4ix)*w1K%FMUZ{7EwbybFE&iJg_*7* zXmhJAIEb$L|h(nEa5)E@TiwuH$I@@Q$I zvG{$m9c%$BIM-JJdDvKqwW@3(^bL!zhXP6tM&kBkZDCTB2#i-MpuiMYasFu=7}?nx z)}$z)nWx>wDr0S6M~pQb%T+)h#ol6L_HMA}Hk%LGDm`2J*JSs9)dQJDd*WC>?OtKM zUb#P7PA+{?_z`O#Iev|(O~KV?;o$ofl_e(V@Igv}r5QI^KdiA8xBToheqPngvf{LG zFgGvbUVHE7>sMEodFh73)79PipQm5(7qeZsQkyX7w|E-A@?sYvaa+&1-dYV?95?ai zryR-Au4UYiAHiUGNy^KcP9ttgZ#jbtD$YqriB7%v%-R4L&gzg|`%}oS=lcA7AI4qX*2wQEP9e7)^!Z1=0if~l zCqMgQ3ejBEo6lVk0Jm<`^QsS0NZD&WK0PD=-h8a#3ty)Yhtu8pjmZJvxBVl(=2Hr3 znADA*oEZQmF7No$UsA}P+D?4CvH+Ok^OC>wErr~@uEq0L1E6vIQ@;1l6f#eu!QXfq z0G>M@@%jxZ#B8-1pI#9FX4@a~Q<<%HPnF;CDF6(YJmQ1d`}rmxHGV^70L1f8c=(z^ zQXi=E{ayyZkAW}vaUWC2Ej2BE$sOi@(HnmD%M?;u-jQE)hQ-IElGnbMLb5M+;juIT z0=267{+CinZk0B#x;Frw%y6*Pg?hz*bR$AO*31ma{xb&n)#)v$X!CJNL4!W7d$S(RUQjMk zF4V_EP9>t1-7oxG>z=b1k2c^SGKxz<`(If}etL(2*~x>b>emkR?Sidj%fK+0arqD` zIFgIp;;kezKQbO|)e*GzH$@h+)Fc}>g@S2XA^JG#0g7usNu1d`lqOpj^NTuudsI+9`g1#yJZ`xpq5W#=8+n1hJ+vcf+I3H|bwvnO5Z&g(tb34+=e3dhuV4y^ zPx)ZCKBQL#Mu)P4>8oXLd7Df_LfcM6yJCZB&y5v)ae)!3PMh%``(K0QnWfN7#fev#J99|ifYg47X@!y1s@NF;JZsUi01XOEV^&B5+=vT;casgMEo4L zB8_d!!7zL?PWx0W>XSXLsK{s;EbXuZm#gH70_RRCs{0WL)&uuqn~}+)ZgvZbrW*$W z?Y$qTwMh^awO>+nFed;~R%PJnSK>u&<^75R76riR7a4f;sih*x++{^4r?4`uDg!T1 z&k=3wIjLyPr2p9e>huu$CWUr>OSvzU`NI2W&;>bB`*u2bppQqP*~8U^?U+{i6l~ck zT!D^`9!CPNS)nCeyx<0IM?ZObk&qi=^rWjNxE)ua8?8qZ!zUg{H+T$eDbS*#%g#jM zz*2PO#z=UlAM0_`+vHs8b{DjL$`=>1o&$poS8n5sp zd~c!rI2-6P%#!Z-b(W9+b_ZoB{m1@Sr^ip0cUr!?2<4AZ_6Tm#w<8PtvAJsNH^y4k z4W6IZpJ~tE)>ik&_br^x=DazuIdBh6azryDFaB-++PXs|m!!|TkZ7}lc76!iiy!eE9w@|~co+#<}YRD@N;Uh+?;mqQ< zk_GTu=}n9mha`37s#{vFd}ks!Nn1Y_@Q!~l>8WNT`pPvp5E?3Roq5c4?^f`WMUL;oeBxy-S4jRw1^&kh20_*aqT)Zri29 z)CO4ZJG2t&Q>Wqhy^&JMH&g4o&sV`6D;IoW!Dgw!Z#io>n-InlHO9%^=S%CyREXwo zSq&l|dA#k|CaKTd1ERSvLt$$8QRFl)OKSNoPGtC-jkUXOfmDh^rTcsvttw72_U&mo z@%i^VrN4I^{kbhe0!NZGF@3&g>>8B;Z862hF}Iu^ZozLuRDnBXi39g;!VOp3!m70*JUn*;er@s@ zXRolq3Bl{J^WgiqX|)~RX_tsE#!zgz)B!(hACFDj7@J-Z&AQT6A0Kd7+pMn@>f*Qk zqnh=YdTspTX%voU=LT=@_HV6)F%|-oD&Q|J)lFtM4SV7!Y)nIU#{D_g>6%#Bn1)-7 z8}#AF1c|UQ4ezV0>7MY%3kCp#$SKjg{MogpFx;Q4w#hP&Wp!)*>*XItg(T-|{%gk19TD6Qd+Qn(Wh_&T@_w};xyW`J2_U`^4`(K+L|19qaZsw<-HS>Re<`)zU{t{s+uz)qc?kdO# zdGI%5rtpKN=(W?szwLhBJ(}AALY*PhAwoDUx^Pn`D}n!eD8;Bi`j_tg`AC7ll=(m5 z{~msAC=$YJ$HJI!;X-rR_j~DEvTM>aHoYzTt{GQky5OX-5Qj%mW`(~7kG5uQo@VAu zOB+Slx72eJ8DqvKZW7~g%gM=V6FDctV~jC_?X#O1Gas6oGDd88ZP;SB+@r9U)v|2g zkEK@R3%?Z){nQZ-+>(&6x~({QM+ewc;YLD+rQq-BnoyQJjdaRO!4@KQfQf-*QJ-!2 zb%+Y=@LxxYwr#_w4z-8rH`Wskl~laEP62`pQ%UxcRD3w9E%@c_AsMGrv33$0Z&j8- z%o|eiiRHhs?&d7ARC7D_i)j3})2Diwi~pV8+ne2mcF((C`~E)nMGM8ElW~v z(6Wa$W%$J8(h~7=JuZAAk5BmOluoXl!A-9uIAZmb(rK1kx!gp}en;bcV$5=G| zTkF<*vjqu^&(~yOv2sTkJoUbVTy~rbl_F%#LO@e`GayjWxuA|NG4U4DHp> zXkvv43-1OCPZARXjq5QMu9wcPcR_{C9ZDL87qR%{u=uno3I+p5cWi|03NN@1u*}^Y z4AXPQ{>T0or$_7mYKtw)v>WtS+hcHJQDJMIU0}ugzuO+$2g!?C>hhMhhY+5iWtnyx z{$kyoI8kQNnrA22g%3ANFIFcu^X^*0Yl)Z8mJzfp(=NmISfS7kNo3&($6E94V&|W? zh|2V`X3Yw#mh*+ZunBP!_OeX7v8){;jhn>6l9OxAv+EJ(*h6WPzp?FKZIS;jezHtE zSuK>IvOK%iwk*f)_%cOsW8-&UL`)`Df4>JKvgfX zo`)O7H*2`4aXsiYBUj1i`VllfDvW=m)q^&r-H^DMjG(DAZt`n_y3-$n2BNCV!)WZb zZX|V{4y``C3cY$Vl&*1iB{QnKQGJ69v@6n?e!de#j`itEZ|uE*RyPfz_XF0GUUr>n z`tC~9?>Nv;qjr=0l^toPX>IZG4w!yDmP3x(cAytOtKdNah!(STEuV8*R8C3bKlZ;k zJ%qBNrN3WR%W|x`$*|8_|F>J)EoEBky)2WcaZg*S*4+)ZElEK2Hf^aSYcv#il%m9K zZRmh6p0L|o4j;cIN3$X(!N(9&{HV5x1YY$8WjYyqn*Sz~r_6(=x1;fi;9sO~E}QpN zzZ-Y`@{{bdTfv6#6yZU~evnP;R>SdLXR+PO@5EOr0?_>%`1zLar15YBB=x-eZ>?K1 zaf&+)hDk5Ra|y4E>GtzOX!y_PtEQRm0}lSOPk@wr^|_>lx+ z?%Najz54XP5>0IU))ur@MH91~dNfr!29KIz20>TyNsUie`p7B{gRUVA*1Jb=t~xFL zl!Yxab)as1JxQbrG`T;;Z&S5EH>Mpm*7!-nFI>l8r>VfsAa$C$pqhM&d&Jh&Re}@u zHEB)c2T}{q@C!R7$SKmKcE>*uCCz78bDI)`dT7!et{=&VxTpAozB2fn)S%KHpGf;N zPjL6k%CJ~VgKFzmkz2PP<0)%ZK+avA?zgNaJ+3~cCZ6V>Pum(S$WnTL4&b5(GD zph_DD)sUJS5AdXUYVh4zm7db7B?FZn;1_4qpu=-E&SPgSIU9B#zk86P#ra&7Aa{C%Y= z+#jY!Ju^QOZr(%ed`|^#GtOd8el>aR^$5F|t3YG6IvrbBMSc%`jExeNA>31gnw5Pb zmF7>dn9ZRgA2sOe#~;blrYE=|QVCrAG--O@k7RN7Q~bkH2}(;fsq>K!WJtGX|4Vub z|J9Z{zojkl=l?4w=k2|fwN3u}Uu!nfKidDi4^ap$E>;P}#m1s5moKxu5}WA2yn(-s8F?tt;gW_{3jB)2HuuURjN_v1V)!ke|1ML1{PEv8vpbc^BKuEaI#QCH%) zXq!08^~cWRSerPmw`P>(sKoPFUo(pPmJ(>WQ|CPXnG(o-I__%e?061;KJLn0Jono| z?cy1H_1y2W-RW4V^*HP zT$-k&Xr@Ym$(a-Q*i02km{;3^&*GCf!mF+1+so?wHg`_qpD(M${lf0$pNKt$O~dYq zr>y1j6WveaX=^$0TM#KVBJ`FU05bm675x_q*ob z-*6Ut-tQ{*(Yu_t&G{Ujqj%YHk4ivZ&XaRES0%u4mf6cA3%$<-=j=ZNj}Nu|N~vtSvPv z2#4NjO8mD&7AXBTR~pE8M>TVM@NtH95=(f+s- zpOs^Q{AOJ)wM=E->6}#gUk5GF-LMm-in|!2y`LQ4m}h~^`xlhnOb-XIA#b@MMHVQ> zcu%R~fpA#0-^DD#tC~_&B{C(9?*YjR;K*}59t5z zwnFJ+8<=pSQhCY{+)UNdGuW-21^w>UV z>j^Gk^PbXsjBlj!eY}INNW!nI=~0%(cv?TaIEOEK8GPffn6iTd!eP|mc8>PNmArrG zsj{ZgVGz?*$8qXhMIzt%Nm)H((q#`-c2st%=7aFrG7TICyDpw}$a6f*zllpOi|iZ@ ziQmRM=*fhySQBRN)PEZ1*TufH{zvost%cn4@WZSq*#1{Lvs>>7IZO6j%mkaYWAl5- z{g=($@_YA|6Z-I*kF)dg<<^8BV*Xle#_I_?_+NHJo}ApuT;@;vPxx|OoxV2-@8JXg z*b!!XS@<&cKqa{d!5$zSZ=F9{>Q-SdtC?RJe$YSYf8Yn%-qsNJb8NE6zUty|pFN-V zE80oyHicP+J32a^YYd0u&yysV9YQS^hn73))U)y+;)BF8h_~$5$v}MkH7hS(nIKc! z8VhNzzj!TM&TFxITS#Q=BemKESjIkUiRyzVsjLc>(kOA-tfb-v3|=;k8^}2>;212No^1d*owO z?()E*ZGpDLG$IV1O}K=r>YVcCT~m{kl!U=3`9fq@vB>grY`wU9yKuN?z8MuPv&cJk z?~-_kH(TGHrT^WjA1(6!O8=hkd!dd4o*(gFHdTC(@xlTImP^W&6$+N$Z!hk^{%^}~ zN+hGZoh;aTVvXZ&#v4l*;wBy_r*SytM503;%MUCc{X>5FlL!CwDamSC-jJQj1S~KC zvZebS)p~h1bBNY!rHQ8;8`G?Ngz8JynY&?uIiPwqT2fiz+^iwxw4}-zH=nz#u??!( zW7n)p%=OWPNtVrio^5tQk+)2n^}flI(dGGloBiA>UV`?A8{%&)%;8VM(43_PSd*~` z<~By6*-Q)WelmI%(=(WR(_ij0|MDZa3+D>{1>O2w!N1@>>n}fZ{?dZGaIKbe1uggy z+~+ebgd^w~fB6ygY^HzI7-E6LFjBgj<-`8X_hnS$hfI{roA2xAO*drZW!vm0Zbd)z ziKUN_ZbJGL+YD`X&u@2JawKw8vrgaRBWb(Nvsqh?zAt{UZG5x;mtWpH%08pk9H`+F zHL35HApYhGLmH;82tLy_=_vcfym&ZM(^kbPX|~it|6? zh;lW0anK~<9Bf8s-*|$LY*eO8w#F090ao$LmZDe(7mVE;~CDMNw&oeGWxb1y|`}=*8AE-9_}e5!#!=NiR2hQ!?&YmTIuDqe+cIBKYZv2K1z7I|v!3NspXZ!C#(cNJls*LhJle!^(yV zwh2rISuM+xlGUwwQgd-{(b)iB>A2{&ly{f{Z`<#&Oi+%OCi$q*(9Yw)_l#JymmeTq zY@aK}6SX&7r0VPY(hSCMxb__o8Cs3=E7Y$D}lzN6+(W8-e zaQ$URtN9&vSa?M{(h1|uq4(NZB6ZK{(#*S<0 zu>*Dgl@vdNcW$H~*eYINnxR0x&i zkhTL(5-#gF;u#nI;glSru>BGV>N*9{hm&A(Y!=zlc!%7Pj+HFxJrUGw(us@ObF!LN zaC=9MhjDp3$n)q5;(sod|K;xu7N%Rs7Qk8q9~mVnW9Xa+!qn|egK_FCb@M`nQB|FB=)`t+MM1`^nNMR zl>UJvuo1!b0egsKlL|eMF_-LF1aR)uc5=5yg}xg)iR?pzVDVbU+A3C|ckM=z3ilzP zXSRWKT&zq#?;1p2pLBsE)yc%|T06SC-jtlVGYpElZY9?qw50>uE0PmlBcX%)E^^}B zPtxyv4nOt^TO(&uCQ0h^iEPH-x!FdZQ0ALUzF&MoEM^o-{MkAP@hc9Jr+u!HHNQ8Y z2i_Ce8W{(O{v1mD9G@beHdBD;XA_^hh2-#*_IUO1X`s_9lgzC-K-wUEDTu->L?F+tR zs!Ka8?u!q*^nru3-eIF-I1*I=p~$OX$IvT*;;>^?P%w#Pw>IpW-z>K9DYAWfj*w{8pqd}!QyG_ z@b7^N)Nb=@?54oVAiNH@caW!^8jLtP-yAMXUW=cm$x%JkO58rg0)~E#z`FPAiN>KC z9I@02N+MR`A+B$T^Sws=a=HyHyX%L2{VtG7HZDo4j|0q_IR@`;bBOf0t_hp9ByjqM zEzUCAO$H9_1l7F}@I@xL=kaXfRHFrFY$Z^tY>VS&6Qc7{1uPlYry+d|o;&CPd0X5T z%5U3%P2^%cm967Yc%=?kR9S+T-#V;%>nG_p`xEZi)&hbH;_xeIL(AU1z}xf9;hx(D zJR(wwwtagRC#*Arb=CWDztviFKkUP3gDKSAEXDV3ccl(9mSDY8#$e@e2hU0GPV?*f z;sY!DfbacE922ffYb-0!&O|+k|M3mCS*S-9zU3q3*F8XTfSo^_VZiHM=C{{Q72U13gf8vuAzhgwA%k|I7}X`2ld@_MSJAV7nTGJ zgL9Hz;62D!6sv70@|ocR9T)?LK|ie?R9cC26`Ww4dw)2)>vuu=fR&<8ZS26Ktq4R@ zGOW6pEf8@x2Y}UM2^e)4C|bBuSyWH^!YtoGfWl{5O>9WCdTn6}&f_s$O5S2Q1FaN= ztB9cLhb=7mIK04z!Mv}Y6vH${GtkLAYqe)Zs#V45!EndG7(!Ouuv%2qTlCs(C=|W# z0~23FHTBtO(7fCg__?^y zzwDD$>WNXX$U__S8b^pu#vHaZyXXokTD_t8lY?khfTHM4k_3$V4Fp?nInl0?E}|EA z2Ef<{5_r@vQZ%e8Lp1JPcer!i4f+@PT75klEedm0g_D=Yu{8+)kUCMo`d|KLGs)`KY^EiX_7VBG9oXvEd~!T-8vNX{gA9+|gAKhGlXY9B zfx7}@IGSYO$Cm=gjJj!zCmc)8sOR7>IEeJVJ{>wPT15`7%*B4&f=B=xH*h-9mzd5u zh;^Kok@GWWz=rW|WXPn0_;cuT60mnBJkGEuk~Rmi;>P7fd}J1Ei!vbX$J@Wo|0q)>B znM|2A2fp^!Ctmf(agxJW!mpnVbiWA+-ggpvWnuE!Vipv{+Yn2(KEUk({fK+k445-X zOs?i%!x2TgWcW*8$X;Scp4(r=WkrT0PiqFGzcC|EJTBt&cw1t=b_QUvG12%@jt>tV zPMmwpgpR#?lj}Pup7CQG>B`pKnc$&EcF;0>Y1UMdFl-jIebtlPcvy_TKbS=hPM8G^ zM#jXMJBs7(FCnGRXF_TlYtp5*5c@1&MN}+jg6pwiq|b$XeAzdIteQOoew~^@$o(Vu zM8GQ2Fx3}UbPp$i+J~@X)C%&Xj}QFpnM5>>WMhlcWh7W*I!s=lN*3SShp#+XO2)36 z2C<=g$wT*@_<*uMX$qePt@Ddeue1ErJg-|;%d(tgb!)DW-~1GG{nY?Yu~RVY3mAp> zOiVyGmk#2#u=QNkvXFQW7=oTGi{ZA(Er#mdM{)aC%IL`S zbZ)}KIdEm>W86eHNjlOK+{zJC;G$()*t_qFW2)^7?sSbi^fT@P$EMHY?8mp^t!r5u zE#C;{R#$LlULARwXA9`76%0x@=0lDc@Jew5pi8m@PHq~-%iXl$>yH?L;+(;-Cen{L zpFW(QZD0WP6P&?+{wjXL(MkM%Lj%~w*jqm=*6>-I{P@I719*`&1m+B;(4_%*}U@>5nT4OhQZ(B z_)w)XzSkH>@HQF<$717n-+!UryVlH4y;=godEfEk_6;IU)~8uj23XWKIn%75;{ zYo3LpI)y~eI&}p!WQAa*iJMWAnltyidKG+19)nxw7olAHZ#EeYQN-W6HHT>2n+1-$ zBYtv|21rUgUxY)d$~3WB)qC#xJW;9M8`eIxs}$Q`y25R5q@|lH*c!Ft21{N)%;ien z_9?4jYu;Y{ohUJX5y>?UU0k-C^&g(|FOyty?awLAOD{{PWSpb>6%xM#o6ACWUMm~( zDje3|R6+K3#g5)7jb$G9+4r3uJyGWJ590O{x^Vo(aHtL$h$fefmMl#-;pTDSpq_1q zLUFQ0?E&I)*!LYj4>7vT;>7xCdBS!0Yo^X_QK;ho%^d943=dq>m*Hlc<#C%K7?v*cp) zN>V-d66!3i;cBD8;MSfklJMvzl=oAEKXW-0T-%ByPJL8y$u4bv=Auw2{PbQtM@bI9 zThf7_eKQn9;@x8PAs5g>@86trdKhe&xI{eU%v$s-<_f1hGaQnFJ;WDP70}ryY1}Ku zeJZ`=Dt38fEm`}`mkX{7hXrzu;@h;o#39{~^Jm{fs+En!vtoL3i+a5)(`Nm#9g5Y( z`##2T<4&fP-4^`ky>UEKca-aOdvMv(>ToEZbHp)l^&M`N|BKRX?0LbM07vy5m7K-- zIi(%h^GsLil4sbN-X%7RlX0(ZlbX&;iv_vBJ(U z+Niagf3KL#zusx+IHM$to|bIo&vuRHr;gW_j9_zg23aQX^P<=B9o}V1Ha`xd5o;oN ziBBlMY?%_;cRP%}-?)HJzQ2@jH_-*f6@^h3xAAi6D^&p1DZkC?#L)XE8^0~<~GH-)45K}&1UnM0w} z;iV~m=f-G$_V~}}U3n-y=4{FvY;b2>sS5P7DwG~FGvSrHj^*WlJVC>B!su_^{(Q|q zPkylN4fNJJjFxTc$LH<$=6C3xNB3>RsGdfD{*liF{zBGSbgEYvjhkn}cUm`z|DnOw z-qH-Cd&H*vf=QG4n4>q4hk6)YAu;9W4xG&Qopci|Xdgz03^L`v9-72oaJr4G8bj%k zF{V8Kd?J51_#P_%6iTNCvEx@J@C)r8qaF7`>9`V8{{8at{Lu3+(WhsjbWa;gK5N4S zUdi|w3f2pw_mVKL-**~cHu5}*SP(`@XAi#3h`IdvFBwSnKp4&SpT~#%2;kc|tV9-P z!)Uy7BpNQ6g_TUq$jfE(~&Zr=x*y zHzI9bUHoQI7);hWfbvIdMKQJNlGgb}=!cJL>I=u9t^E)I2i`3*tnPmfxkb2CoK1)C;FaM~fEBy(>NOay6JpRq^dUv7+mD z?@0&m2!%P8?~#qcW|7L`Y-zy6FeqW`RJ>c9C|VN}A+=Uu<>|%-YYwsU>!3IK-eafeoLdj+8CKqn?zRS{epn|;i8qzzgoJ}-P$7EC z?k9U=gtUx({~0u^9%%<`5>+icB>iO&29-Sx@gv)9BC}baq!;p6vpxq8{Lvs;Wa!+b zXkTP7gq&N6=RQvsU4Cg=6za7SMl`I&r@Ezxt~|m;<`Y*y=B+h&*@7)1uOf${B@rv2 zt4cVIve_i6UMMNLQndn%gMzTb=B=Vdi>-^yx37eDo#)`_{ToGlLJf+%f>wd_|1-i;^A{m-Jkj+K)gy=>E`u&Ix**2{g`aQrCj`%Cm#ftvKFIO2I zH1~k?3yM_3J(z48_*k;KVGJDpq(~2sh$6c`?T}o~bBEnW6{-A(BoeuLk=}5qqKS|v9BcvDU$mcB{1sSp5h~K(AVxQ25UtK$jt#AFE?2XSOYEOFc6_-b` ze#-{(B`=RePVBg{A#escv#U ziK`yP4ShZY?rL_V?g#V9s9AarKhI;h`KTN1vN4|=HL{c3vUY@VPTlFN70mykNJ*ok zJ;Z(2p|eBsNyN}#N!@aLXk)5F&#cQQiZgs9+gTsY*q7aCCOdzn*iJIr+!2-!Y?zwqSUw(LR;m_VHU9uvu*F5Z zk+GB4Z`Gs=H|-<0e|;BcR1JZ5OW9aH#ZOG|rK4t%m%crb&fT#vNLP_&x=bP* z9*A(TC$!ElvP>UYEz9(g)vcL6t!?4mLwN5H>S^rO^8Lh`r)k2 zTgN?o(0!IQqLmlK-s$-MSbCA%lK#_N5JyuW1EH=V}=IRQ|;U z%Qr|~t;t8Jcfz20Lj!l|&<{yL?O}A}br}54`N{R!{!KD`M-E!Z;yY3K2iGnCtE9+w zH_~8Z6xy47<9;{RNLI|;h`O4GLmAX_6K;Q&?0XWA44EylspsmIY9ym>#UoE3?ryD-zYN}O-hdljqNQig zjLXb`RpDhV|pDkGn5}SKBsW^<`_Nd0ykKrw>~OZL2op zkr$$*$9=|G%XL`>IicHd2p=OIUo*vePh1cvn(oGlpAw`x-{)Ab2o40*s2psl8!O#v zx7>Ojw-lDj9mi|jz z0+_z^0yfDDm8OX|TQ8fm03wsl;e$a@(lg=>)(hA=GVZD6_)S%ebk><9>p?#LU~~Kg zw!a)Jy>u_pdg_3MkgCDqsZr~s&mP8Fi+e1BqSMFlX2p0Z+Pu!%Uw<)7{hg1`Jxr1g zP6)N$X}1JOWiD0_B}!*+2(jKiW+{}HW?U>a}zwDU69T9J%*zlxJ4t?{sab9fnOI3?i- z)mW)Q_mS2`TFaqzei7P$EprHDwJbA8R<~vb1!`*2`O%fAw!Jzx$ccSte6K+xV=K`& zJvA1-Ijp>OJ7f z4t07str8u6E6)uRdosqlI*r_0i5{4?;qumag2#C^D$1&4?B!o&E6;nvZ9g?S^4I>_zums*u`!7=mKZMd(o5i@6b}wPVQufpIGLbXLt zdfw?hidEanrRlkXuaO@8vGP3%_ethdYg{4tbr1Tz_&xftCzi|kFbw=xcBi7o_h@?i zNUod02vGm1O=k|SKzDPOa#t+e0K0XgaZwehak~#!F?S^R?q}+m&P6F&#{%L&GA0m?`vaVLT4>%w5Sq2 z{??VdoHQ2FrfJfQ@Jb|pt;xBoctGp?BILCe#*nO*Wemyc){LRnwooq%^>a&Kbc>c{ z49RLX=jDIl-N^E9TIzYB?3LBByc=09%%PEGue7#>F#g#l%inmgDW~-2m{R=U$iVDl zIlIel-z>u=Dkj+t-hH`R9fEhq8)hH570Sd4izrfA0D#w90yJRnZs>l!A zcMki+s%J~v_2ug{FX7QxFol*qj=-cJ9urM`~Rc$qn>N{<;QO0t}h;C?RdSIH{Ed)XR5!= zYX5#L?;mjue^#x_3JDv?`;=Y6Q})XLL;8@_9QQN&G@iYrTeh3$T(0UQ#TVjxXCFKH zw9G7g@dN>L8l=dJ8_y!e7L~FG&rg z_Dgm(Uthwm-?S=#F0skLXIcD8S^QodT}lITbMVFc`wP+6r3L)LrSy?Y?*DVPZN>h= zFtvaJyW2~t^{;H)vqMIqziU7NeHB30(|y<*G71kS1QfjS4Wdq=skqb3jKXCn0t$RP zFQ>DNlkk!y8HMJz0}2+h^ygXncV)*{vf~nuRdkAvU-S6~*!ka6gXyusV{va5{!$kH zql6IZKM-R(cKt|p{ayyEsg<22Zk=ELSs5U>$ud=Bb!(C@tTqX1Xbd~3U3A%3!2b{@Q}7W}oI2QO>4VQ700)O zi&Ot-=_5AhZ^R!R)k_nq?EmQ9FFHd1{(rRoi!QKP_m8%I(hZ>VAN_NSHb^@B&)3V7 zyFql9Kk?jqp)>UB^GC0jYJt1eAMM4fLLb*ZS~h)-f0l!wpg-Af40W%^IB(q&JOE?kF_4X@&wF5@BX$Rl*nnBs@iC&59h z9{6WdK28c|41?*z@UfT-eB0Isf&&Aw=GHVE!oG`N8k~fOG;PKs?#+a6cXr|MT^q6b z)LF1NEEl^S{G&5+3h{GQ_P)#9?S~%6?K*C5*4=VTaE#X0W^LNH44X_!ZPwGZcx*d$ zSF`SCdji)iPH)z|r=P~XPG&Ug1=q@P=9>M@y4T@yY@M*TS*!4;@fo>4=gzcb;|-M4 zn%!qgIQ;11pYTDe29-L-npuGN@0|vvYD;kX^AotU z!emg&vctIS2L8;_=g^a%=+V}f_-bEIkOak}eI08tPH+eByD1WK>oE1ocxMpx1ZpVc*jZ==d2E_%zWTKYB6%8g<5_S6Sw;=wl4d{-6h!uP3AAPgXGE z%s+wS z?0%rOsb-)Xq6gL6^6~JKZSav@1HkT=0i0lCN_?W^aqN9lNU}5jf6kVwNOAw)a`;Qt z0NBdLVM+H~!0Gm1(233FU|*mE*Tf(2l%j{oEyN0}L@ID1QyIwBVpODN4N1urIE$tK zNtXUeEd4!M`uB}82hq7<=<8WCI88z^CzZf3#Tv=;t^L4jls5Jo;sP@s_)10_>%-Aw z>(R7N!@>L7Lhmvn?#?XN5oa zRg~19?sE8Zzjs}G)5ZCJ(m^(T%yiVK!}CAsHs)4asyhBp+8+0*C&dYW(tNZ0M`Fh6 zPvKd}KBNEB@?MrvF@H%LY9<{4=_}Wv6{{OajL9f)58jI|jQvaoza9hH7cQb{9xus- zWN$cnqX}JFe3L{xo&*7MJ@Nh>C&`UfK5*~_!eQs~iGH^^@Z!`|T=|-fQ<}K|f**$9 zus55CkLD7XZO-1yN@Ixbg+S0gy%h(Jiy%Qx%VEvwow&|3gj_dV0e9T?{Eyb{Rz{Nh z&z6B>!45X&E`eNRYb_~NY{V)GJIIHL3n4vhE$$V5m_(Y-g~vZ<{+&L#EPYIi?-2d+ ziLl~)Hw>cpqSZ2EeMy)v(RmDyq|CyF0 zukJ_RziA^W$dJH;d&jtE7Y9(|&~K6jH*7$)W(Z%QB%-HxtV1IV2EdD6nY_VJN9q{) z3{5WT1+gBrym-|h8qj2bAE|bLUL}3V+Jmli!P`mriCG({`#g;3*^H$1jWPJ$*Oxfv z^#bDkZZ!4F+=F9_&*C$K*O5G>F*ICJiuVo7$8YYhCvW?Xp{FOFWaFFnVL$(^#PO9o zUE_2S-_zKM?T&9F9ZKElrAb%*pR=d!+mBP1Y$081-RaQ}=W&ne#rQ$z1oGQ_4E^B5 zVY5E>@L2Pe#B7~A?ffkpi@r5r-$`RgkJlrqa@!>Qn5BOYmi}v4`Y&YZUpPx2&Q5;G zD|B_D2Q77Q!Xyi@J{ij^dfL&F?j^|3$q@pK+VJ*0%xTnBGxWNr6I9(+;*9$Cr)4${ zlGgd9^?S#Ewei`^-~Z;v=JqlcsqhotA=xb92gk+2{`+s?9aZlCWA9AhYT6q9U(%!` z4N{bp64G!^lsapzO2}L&8c<4R8Z>G`2qhItX`rOgcoI5iuN@VI%(Dy`x)e$>q||?% ziuc@H*L|Ps-upby|MmIoPrtSIT5JE#Z|}3ua?W1gE#Nl(5R3PBZc|se$$tcSHoAa7 z&DpN9def%Pa;{fbd9Cd6&hq}2;Li3ht7~D~D4{$euOL$x9?leI z*pPYD|Lx_rs))S#O@c5rPna?4br5oV9Fb>wtO2x?3Ns==Fsg5f$jhm@0_NQnX1vWH z&x(+Y%sU*F4Gz@{Ga#8qUM~}w$IDy3NtnUQTa|2I7sUc;WcwyEZ~ZxG?>+4o)?Cv5 z5xEbG*T2`E1*}%me>0h9&fEWlU29Bu``<~%2E60=>*N31-^=pqePLC|d^RZ_RZV_m zU#x2)RXdWiTDKC;@*2Ww63gZcJy;22J@&ICPl$2*X`h2H$nUXf^~T(`f^$&QO$Y2Q za^n_gorenMbAkHp4cz8+=ix4`wV>~baPH>B^RQke1gx?Az~SkN2q(ypM(C^8i1FHG|8ln zWYRyhgkwop!rBBjOUZO4$JU_|rmS>i4Gw)$EGk|J51C&#x!BQsa>SJi7_#T7F@OF& z*$?TS%{fOeO#=2e_4GgGhoH2y=A6--C1y@IVa8{8$43d*B6&3+n+S& zj0k!F6t(pARRe>OJ=u=Vi9+6XV=4$Gk@l&|%J3p-|M^28I!yYHQPYOJ{+BxhB59N4 zysFFO**Vrs#{9wm{pDzjUgrc`cH|V5tw25tbi_Cix`iRgRK} zExVYEUo3)9{kG)1>*7Mt;V6^Act-M!NzUWtEq#p1;N|@b*)DaZ2+Sqhoj#HK3`l#c z*)iZ9X}@tE`Q4uMZxFE*VAB88Js~KT?EiTM0?B0mLr?sC_D7h2K)mnmUtjZwl574A z5rKnWuK8DbT=V6~HOOkBfX0_={$jps{)W+~(jSm(zF?)m!7tbR8oq1(F30e^EOO1) zIN!VTn*ZNkKJFTxXG^a664!cnUh}>D!t)s9nm?(wcjq;Kd{lT|D!JxwZ0p^5&3};^ zo|izb`2~HuuK7WS!t;1}E68oYyJtc|EV!+Or**FdDr}(&GI-Nx5dO@P9En`u%C%A88h6i^I;WKr*a3FFJc`b zep(iOVugjOQ<|%uv0P$9(17L%;BCfwYJlq)U`6iBkv81|)NbWdtOve8P#~Dx1(5;T zrd3lfOX5LkV<4(I%LR@mt&~ICQBd6{5X~M?4xVr9jUUGs0-v;X=uXH4u;sikj&3mk zhfRaf%{i9&c=I+ao$tVKWBEPxV5NYNRo<zC3Gf8MT3=NbG08_B&AL+=g4ALaFFxrPU@#J(>re`YLxb(lfdKfMXz zEJ=E+&_pcZI);W1F2DwIFQsP7Fg!C=hrZbI3EGyt!^2-m;H<|Qblg-~v`^(do<3X> zudUReM*>-t)A$~*h?K-nQ#9x&ePxm5tq&O7m&D^EHE0ove7Ak%BMu+e7yE~4(78)w zP=QkmR!{DWPdaMQ)@Cxu^HmF$QkBAt_rqva4;kdH@Co~aepvj@Fgk0s44QJj1@|qH z#!nY(&}O&$qc_SexGYEppCSx`-RGoHsrpCU$5sv>{4ksb3;H4a`aRYeHvrS8M$n%Q z_C;<{@9^j$1M&D%qi9Bf1Zs|XNB%!L05=+srUl=Mqh&(~KeDYKjyyb?Ha{kY<|Vda zxB0@j)p9hga!C~RWeC#Ct~OFuQ?==MB~fI$qBot__Xbt?bR<11NCY__7Ns{dpQH>e zN6^ak!sv5)A9@S5pL&oroWA5LjI!kW(z9mmpc~5HhDKO{c8j*?3p>3fD$F zU33wW){W5Hd36E1D!UekZFfZ*#J$+>N4T;XS$D9)@g?Z`vRzD57k_qb^jREKvI5;6 zm6k8QVimjL+)*sq>W&6(iY;I(tY@P)p_onkqItIy^xF2FX6u<|<|6h1 z_KI;2v5Siv@`w~?h7R1$X0adQTNB)n0aKs3>Z1{RCE31+Y%l+1GsCbplzqPW9v-W` z1PzdkU~G{e!w$E(jiW@CqWgZ9%tOzT*c z9dqS54ia!hl_kE+0lwMnbEpA7oU;h+9+|}Gv)GSa-R~`)YUPY-Ug|TB8?0id7d7M3 z`%dWUj3!E!*0# zcK!k+AB&iW_AX{mQ2LDR!x#M9vlv`GlX1CV27Ym@AFLK!gbFiv;F(L(v1P9g5WitD zI;Q20>pJ%1uyn!*ZeE7wyRdNYNh!E$MJOm5z8XCf?}Lr+?8Cq8ievfcd7$t~rPP2C ziFkI32;~*$iS{<`p#szr@XDLTl;Z?XG|4cPx)v3WlkJA#7gFvh?qL+=B9VeU>Yq}> zKDi^W5D)69*CCuZVhp9H>p>pj>_HVNAHta&JxapN18r*XrcRn<;87!()W}61C|M?y znlF41FI+#B3ikIvr{-^>;H@;gTHB3Uztsc1y|$SeJ1`9oc)OU)8Sy|0J3^_$!_#o` zU>$11BM%g9A3!k@(s0t09Ila&CsLmjPT9Oo!@38QIO+8sXopxT)ifg=S07u+x|HC7 z%rZ_>9}CiPp<*LzSziyNX#JWp8E_E4pEw%agzhLaN*b5B9mHzV4&cS8H7IS#C_HlC zLENu23^d-YGgfcUk*g8cWYashw*w;-;kEs; zejcCZ@8{3zD&a2ASEYq0owWIw=Q;1d8}6O{U9W4x>T6sFXUERD`%_lT2WZ zedp_acNcI=_3S%e<2`{FoaHHYo%NqBaN?X}b!BUsePYYOzIl@DNE+FQ6&{{uXqEK45_zX0%rBG5=6kWUa2C5n>(s(W5qzZ|k z=gDtju!JIQx8fA6vJpW6iA_-Uz5;zkt{k>TilV&Q2I$x@fX;q;7ETQmLklmwf*d%2 zrr%UTPYrRDF!?3)J1tKin13FI$B3gRGwLDbAx}q6ya4B%7f17}>R_q4JU#gQ1$gI{ zIOQ=oh3JSly2-AGt5}2RjZcf9z-n>SVf-2{VXD%f;d~)!q`bcs_Q_MHse(o@ z)m{$mNoj>HIz#DW!lmF~%RqEEumx^Z8baImJ_@+(!D#Zn_dlIa5gMk$q_YH=FR%7N zqZH<%ph_oZ3`dvA9zGB;A5BN$Vrh(Jdj~P=8it|9it#8>B8xdK@eHH?S#9*NmW9S@ zS2GUvYGdU1>7b*wCa7<Oq2JebDidFkMg@wq zkrOm!7{1nEP9xjn$adz@tBlX0)0j55s4-Z zVV>JH7#-L$1?|%GW`x8nV@kIVLYG^opqatz7!D3v%yrU=$dNf6t-M*wFj~Ek8C5g@ zi8jnY@vXIt+Xbe~i;v|{l&KXORzfkJm0B{F`N$%J@z%&I^*CefiPcQSSu#jKdKMZT zd!I3=w(+s&I&M0OU%Z>~%YI9y zeVPg~erbtnFJs0=nbk~%D{9C*asmno-p80-X~8_}tB#fnO+e-&6q%pG7BY>*RFTK! zNho-LEOV=}HPgG7BDxBuBes=3^L%du<_l42@_pHC)a#lM^XVx=Cabp?TJvb$zddha zC*dBQ^F9FWCEf57kp;-;aWvk$w}$~-dmN>YUQ`w1#hP!quCCiRBkA0c>B<} zf5=2s6P5}3k*qCdW}B3*us~ZqQo!+ED(L*_WY**PmMC`9CJ_8V3Dr9>z{4|BkY}GK zAYti1G*+e(3>rBFRcoq3?+bEhQIQgqpe&KHpBi*(kwvkp1K?rL$*9m-13qY#LHDNg zgX;*VEMmAOl%64jEZoIlx!hDF7^Vh;7t5fT6NRA5vZ?4;l@eSkCyQR_wSk8rQ;|lL zG@M^2i)u#HgJ(J9esF0aIHXw)ZH>7K>guK<;m?o3<8cEJeLNo|44sAy1dG5djsgm( z-vSKBO+%nI05Dc6qC?CPpk8VkDlWaqie9aVl)Xh*V=hlaK`4tmL~{VzIZcw%RG5iI zmG7k_seVW;G=s8kutql>#c_*+2r{?sg+~?6LE-J=@dK52u=3+b+&*kBQtab{KMcMH zpJh$P#uM$(z6+6ftHf!Tr!gNFjdnn;#tC@$@N8)B<%YxVIHD@O{a8~X1-`$(6w4_7 zYy60Dsj??iua^PKh}D#oo=C9(E(0Z7d??ZCEyayVWnks=P)fAmW--gZ47fUNp@h!J za6;#lfqAzhDWPFwI4cdxKy_d&CFDJwQ=wc2QUl^Bp*&lTmV6n|Yme{Lsze*`bZ*!B zPMzPSjk@dTeW^p%^Xh+T%j<`~{uj+(|LeZG`|PZf!?!Qu$LLF+qz1fIk8(9Xl=Io|~th6|;re&bnIhqn0BEd;@AX&vlP@*|Ei;YMoP9zgi z&A8&*d&)rIhz*of@VH{>f-(?K1yF-C3r@OMlmVkVo|LCk$%(vMLPCJG$}Xc2i{>gwCt`p=G}=ke|-Z6ZtK@XFk}8NcX# zDaVE~^p7bF)%jBXP`p9!1>g1-QYOpS_Fmw=o+r5f-Eu=OA+F6OX)foP0g6!`gN`>m z;flqybFT&%ps{ca(tKq{1yuM@YYLd?%E&RubbSi-dc+ATFP%Z22WWsS4a%qr)(fgU zO&_^97$E6Bm#B{hg7}!0K02agfP$ZtP%|d?!n&FUXq=TkibUyDRYME)a54*dEEs`q z?)9O{pFg35YbT-deS-%c$y4bC6r21hUyG&6OUIOpW&^JQ|$_SQ)vKB|d%y zRb9G*aN5e@j!{~GyLkx39pr@;o=bwm26zDxt5UAe0bkTGejOZ}9Sw3yow-)c{zzx} z&u4JBEXd`AnT@7;FML#NRYvAp4oKxHna5D8uU_EXoI;r9SdEIa|AjhfXvI|^bGpY| z3#INB55tSErgH-n1JUBTTul+&;2vQ9!H#ML&weF=9)&$Mn{soeLzW;FdTnZN=d3 zo3a*JqB5?wL_FRk-^zJAe=V}R;?6xN8;?b#5;)q+*P?{0zi`B5;_=Aoa-2f%Ly9M_UHgsyQ?s~vkg*GAw{i>EeZ0|}B5t0t<~E$PkSdtGp3FHMOXbC^ z_Q9tgQU$O4{g7@7mG^{Wjb~5B1qWjS(1{CF-l>Hn@LL~TFwH*@Mdea?n zb~uTpE-@Tt4$KDGRvTDq-I;`wOop*X!hTaK05`TTi|MQl*H>Hzy-sDDIF^ovAu{|=g>KhpU9>=6|axhvgaTL6ZOa%=YhOBmS&qVBm9B@pp7|c>rVkK<~ zLZy0apq^3<0xgG{Y@4djGQj!I5aH9%KMk$cC8&^S%{v?feyg$!Uuw6&DJ-JC0 zbqvNUN2!DAQvtNu>nBv-Ty@NTZ3U9T189}#7u1P-4cw5h2;BV?fPzM4gSK=7D0B2Q zYoI^?+PZ2fxRwE7kQx`57zQBgmwrHbC4j^HGr{mf0ciSyXz=vYIG9(y;%oa)r2Vxc zr&)$=0rXvNCFQB7gNM{iWm%mFp!?cBqH<U+=Nd~=rEI( zCKSd-EJd_-Gn_$Kj4M|jDKr*xMvrzk!m6B+%%*7>g&Lonk9#(#a8rsa zx<}e)o}bGMyAWR(N7@gJJOxiSY+}yU+*Ej3U=@;X$%gma!CI z+3kKh+}78D=`=K;Fl4?bT0A`+s$Y&`-oLq`u+f`*hwFX-svTX=^m((e(BOcm&p2RS>CyXnc znd6J@S}lbN50?dQbXO#L3N4|TCJ@|vn#GqcUV`zhmT{Byrn*!*mj26_TdId z7b9cJDPw4#%uAH#_+oI-P9IrrGoWjdtErI1iQv2q16_S=K<|#dOI;Y63M}90qs*ma z=tKK%Q1gqAbk=`K+WV6B%Sro8(mqMqfPR^Fj;c|r0B777C}Jvu4yiax-O#uS;uQ?O z*?&(zKf5d#tw%p!bcq^u|0>W*AA>4`$#0M<&!_|E&H=o@5RFzGMQ`vF#GjYaz-fpv z%2=vN(@Yu6P0I(BXFzA(qe$MTyYt?0UXc#8W#UbyJ3-m~iD-4I3|+s<3`Zrd12f_Y zd-R$FEfhTs_l=teu3wsowBtnR-8HjubvytgpU(QX=Y~MSop}CGm;$yVz!LK%U~>)O zdgWmszu@>cc(f*=EVDW)nxMSfcpknArAA6h)rU&lBH50;s z?m15s?QoB(ERTnq>&}?$F7`x6HrG-|4#vSLCKasYQcp5(;xYA9A|CciieU{n>xrhE zeMn829S=iqIk0-Rw=40aOLeQjK8XZeadZ=_X_F`29L@n=>k{$p0nBgq-_y^}E*qJ6 z(OM&qf#z{>IN!t+cvySWj<*ZJsi1B6o#G=_;tgNg=I{|PKHdX2tr^J58XtfvPA5{u zw=H4ao7X11yhBOe(@EZ?B=5n;f{?zvEA?6BHHh6T1h7*g(BW$YX33Ce z>l_?NjauOX?rxq7G%d)pq9zDZj0uCl`i|v4odXiqv=#cxM6qSz6oU=nKFDzLMtEE; zo(>yp z8Vwej?_+y>v|@(Zk>~AR5irqDPGM)757p;w?|(tS>}PwAUC1#G^SK`Vf~9DUtMx#)g~>HboQ0%vCFywvuYpU{ z4lYg4M&7C7bmFzwz*FQtcjQqU)G<<+wl%8eoj&Sd+n1dcg^rai8z5-{2S913-XQSXE zDSC}-Juvmq_uzCK%GHIXO}n6VXg|Uc(TAbZu`rG)j2_cWnC-R`?w|Au&JGw0 zFN%ci767`^o8W^O59sq8Kp(M9(5A`x zKSsX|0`PFiCTKi#CA{v)f`+A=;r7QHAuce6BB|kUo@qRE$Tot#o@|3ot$Dx7Wbz~f zsCg+0=3cCYFU%Nls7wqzxwQjckJE#VgcVdu?u#n)(S<>b-LSY?8vSfGNhBZYBQJbCuzX)Zk8?${Ggk7W#DRo%-6H znecMsWdfGCcE0xd4dgt~aO|ve-**C(x3lTgbA_kD4;-sbo#tx=e~(8KO6E`dYD_cX zE$hj5*8&{|&w$s3}}NHI{}j{M59_$ z1A0gQO(23S&rA(a)oKGe`~6aIm@F4p8=wWr2DI-!Q?QmS^OL*s?n| zc7?T%EXQie_x~*hbe{#GED^F0jjVc&p+!_bn7kYE!Nj`P7*tA*?~dNWCd^8$sM#wbgucDU3lzwA9EyG;sre;u zZJ+i-v16Sy<$Qwabz>ia{q*NUGdFF~+)4-0rkh0JrJaJAmCp`q7W50EN08r`%ccor zGM*jRT)jPz9*{l!|F|{XJd-aB65hN*p5|xO@avwOnx19edHkg>e$CISS$JyuJGVvg-|}d4Ntxw2M-I2{3;U#wi~{EZx3u$lSBs?);MbM9;nkKg|-JF ztkHW9^fvF0Hv2QN#Od8|;dL3rpFi(+TYffB&ob}0@t6XMq9450pFG`Z2P^YuQ3+<@hBNW4S|}nm-eso&tA$tzWfg``7xDeZszKZ_|*kb@cMqLEh)ypXD>z z?J6uDYgr5hJaSLij!fqy?&m<$;FOc~hML^EtrScR99j%*Hga=M(lAsnqdeQxQMQh3?wR`FQpR_^do<a+eW(W8DymF{2 z@v(TKT|HOEqYSEMJS|pvUB%rqs1!Q&uPD|TbC~-&@D$8*Jou|jICVx`_xBVuJ;W@w zee;-eb}ko|tgAkGbgMmQYA+5Hu%2_WVD5_ISS6BkhUolbq_1~)Y%q%1{00P^s>q+MtFO25Xb@UfEDjsaRpjRw>g!QtF6X#m%Fv%| zpGUUqjS57jA$sr;X}^iI-@14m^0YRCTS@=gq<@J^0Z3STI@AD$1(h?k^$*7epoN*% z|Mg{A3&VnGw%Yn3#Q_L$XTZmE3=34;wDk>#u0syzCPLe#h6PLfwDs-t*P$j!6X@t` zSg>icwtn86KqOM44L=4N7F^h_t^XzOh27h2$wl{Sa9?Og+PjhV7Q(^EMXwz^C;cmv z{wo&-qgu~ez}x>+vVY}x!mPHr3I30P*7fePKICSifsU3L1-GQs_YyYzYPXl$w~*;(hat15P} zkm%GmVq`IY|BWZb(T6rWba7Yfc2p47lh>z4Uf%@r`aV5+1Li7>r)R5d#;+vh=}EQK;1kKi zx;u|dl83(6M7l=V3Rfp7&<9+Oe3PGm(qwu_t`zo5SEN4)t^mBe8@lr@Bzc!+PoXP2 z_EXKbm1x;z!hm;tT)K}>069K2Gp5pO`wLJKa|Y3|4YOE1kLS3RQ)yR4KaS7xL3HG- z3&#Hn|LSLRmX?+FqMzzdLw6qU1w}`D(KUgyP=(|xFlbFLI%tst(znuwLq7=8OLi|t zE`@919DPB0R>c}LO>!SJ?IS?H$|m=Qd7Oj~tJ`qh$6zuBzX%`g`iMVghoVT8o6sn? zsZ)>2D1+)o4V}7jG#mPfHFoOlLyKV8!8e_{ig4_XiofmDAu^}o5$Wbmtt@yJ?zq^c z`zoD>&U4>&u0OW=B4p5A+E@AtlvH}(wO;xfY+u)yWxwDfIl@h7BFP(H;LBn0lfet6f}$UT@qD-3$ z=IAr3;IeLM(j3=BmNRXN>Zfq1y>~R|leW=d%6Jxe-pP1usH#S5*(kvJItKE2l86NYHs z6GJ7p`_XUK*W)Ji@Q3AB;h$j6SS9+l@I8Fh_!V51@C3@7Rj02muEZN#THvw#Cs65( zI_3#Pqaq;{XNNYcX8y2b4vyYv__d`EI%YMJWq*H42`mqG2nCB3^lBuMRB||>D7fJLAVlm zzMs$n?!>#Abi2F3pJpQch(W|Z2I1HIESc{yY_hr;Hqkv8HtyXF8y@rK3&Z9bAH!z$ zpJdp4&kwiTPht;0y!t$j&ROE8cQ;e#2J!Q@o2m0x`PtR&C$xv3)!ly15I;hEjGr%l z{w(9?d-+s#`^oR&$Gh9lW#UJe&rf4_KC}Mh@%j;ChxdKUZ!ZD@WxFjPj~B%I_eKAR zvGUt}b@9Mfw$oqx`=T>?tpPKEFa|;nV53kFVlx_8mm`I-h3-Ap{C$5vbHm?5o+XkY zOzwFVV>zA+LWMp2q|%dtk)tr4{lEz5z##PR=HIK^zyEjqAL#aP^Ka@usN4UB@Ayyd z_HX@P>Yw*H!2enBMf12PygAy9MmL%Knhq7En+w~h{R*S#klww}(4&HMfvYfn z68oc8mlk~7QwEQ@q(LWo^#6uIV$S)DPvwYWp&1(VEy5Vtv9A|>A+8r*9Wk7~*-rvV z^%0@1!2 z{3p(zKkHxS_kyu_=NT+o~mTMMpm zceC%UufzMJUC`g{|I`g3CXk8vuK$bW$qe6274{3_|L|}4H_;C-xaAoAkNLNaRAElY zy7FEBKg!>+JOA4x{{w$P{-#%(^aX9BzkB{9i3ua5=KZG`|vdCu%8DSXt|xL3{S%j zrAw*zn>|q2)d*^6l3cSV1<{|(*#%ZdNzzu})l{Cg1p&%Wb7kob2X{@?sV{x@~| zCw!dW%>PPv{@?R|kodPF{+s?H|G#vfKSzIX{+#}c{Hv~8tT*L8nFGFQ1;wwa^AUNN zEWFstn?8+PZ~hiI^KeomIBCd`rB_f zE<1P0(jtATU`}Wsp(haRVg&TB!cXBzk!~o73kJm=O7v)j6Pm$gsM6N>B~Ad;DDrd zh@9WT!gB-ZlO7LXq-31=)~Y}e9bT0E3StE9i>*jU92Gp}h(X2yEUp}-wh=%BPE zV;t?ktneF%MyF3l4BLAQLn%k*(pO5z=)zR=(oTrcF~NdabWjl;FP(`G?P+p85aCKR0>@<7M{x@8+M>BF4( zj8;s1&suPB@;6+bNk&h=Dz|}1^-%>lG3r|`Px%{VxOtHrGWC{$D%&QbGeQF(?MTXd z1mVI%Q;^;kF}UxU9Lm(X3v~BQMU7?kpl#p)BXk_#y){yg-=%4mqNBp-F|Ek14i_gDdw|}i}|8hP2 zv;IZ@<|Kc2lD{^||M(xspG)#DA^DH*&R>({pF;A_CHd=-{A-B+&&26SP z3uhM}3n#iLjCIHCmT^{_0csZbmWAW%+NvAq+M3I|XOcHw?8(A;OjtP|9uCU?vV9&B z)}M=nzm{+8JEM1P-3`y5+l_v`D~Lj1S(@ZZSiKalu8{3rbHBJ3dpzWx0uf9tJ= z`FlbcU-N%@8R)lS$*;$+Cz~ja_!rvp>-_os`w{;+#Q!ytzx-d2zrf>EU6IGBU;X{) z{OOthPU64mck=(y`Sa!bZQk!j{8~W3lu?+nwfpy?|IycicTnEpakz125jW+s7aAKU zMLFLjte!PvxxzEPW$6S&&EuxLjKd4JZsSyW5SGu|cU;N)aX8pknaiEG7Hyc*m%2gP zqpJqo64L(p+5Qys26^sKm@#+Aw6#bfU5-+@9*1veL+)b2`e`*%qfTBVY@x`R++${I z5q37Gq)OuO+5$hW;>fkAX7~y!jj)9FuinFz5Lt^B$q=4dY#jE!e3YA58U|6hJ@?RhWa z_xMFUxi^0Ymq&tdd9n$YNBl3~^86kCrMkI76916@dEHzj)qg`S($CEQ^gqCL;=OM^ zlkX73$zOimB;cdpd&^Sz$oFI}zwXKX`59cI&`ah_Q@Oq0s*-o7jTvSi2txtQ<$!#Wc%!_}9 zYo&8Hus}pa5%zf%pwF*+@{N85f61HhmsWg-zqEt!mx2j@=?>v9?fDD%OMi#|AmYFJ zAM$^h@UQj~{?%E+znc6V{?+g0|5x*`en$T5$ob>;o%83f_W#a&dG3hR5pZ_90fS$= ztUp(mU*8^y#E*R{_^W_WFFws)aT%G>z#al-IL?glN0qbIaAqx z183^5^#6Bovi^ww?cJQO_Iu0|CIc9c5}{p`u{uf=Z)=J$s*A`&ikUD z3;5&+i9= ze#DLX@;zeDzx?bXe*GhEP|tq8l+E9U>I+8M!+y<4`TY8+>0Ra+G6r@cS!vk}V)iVv zV`Ld4NxrI$Ir;pW*Cy|7EW4^9f=$|@o@L&C`F~gVqUTjscJ_CBh?+jX=GDKqNvELA ze1-wJw}jEN%+IFb*YzD8=~H$-9R`gK74X{hEPsy|!#l1H^#j=n4+k22InMlL{$tCp zzi>=?vP(!G{}QL;dmN1)F&lWV^|uzY?&EC!xv+p=d%bx6^*HY}6Jqu(@4S0EpLd)~ zN;rD_ns;0a$Z0^rucp@$M2Z_b3)EwJ=JbRY;=k@bzUjDx~$6sx_Q0IJk#^JZr3nTGP9d|(eS99_o`IE^)+2{@HaN}|J5A)u-Rgr{nxA$z*9a6 zcj^PFAE^qt-knzYy{Nj`)}S{H=du;(s>rf0Ou6`8V|cNAjQ9o&VYYLjOE|81H^i-Zh_J zD=?m8yTg%aJw1Tt*FU;e^Rp5*)ON8Cda@E)1iDxWvj_c}l`z)4tG>9|X$Z5r_y`Sw zXW{6(T}*^`ug}B1*SpvUk-IO!f$?4JgAr@4LepVgj0Tf{>oCKwOOHF&gNg7L_(|yY z6V=0yS+^fR{2c1`WB9-HWAg{{c|-Ei{sZ~&`}t4F=V!AVjwd~XIiJ;N@b(-&_xdB8 z@T3mTeXL5?_qv3e)ZW86s0kjrrc6&eaveKLH^C-8HpC^uhB!P+5Y+_@pdT33;3(tg za9l-ilrut>4hgQswcIB#NJkXiDV3%d4y(iKgCBjvYWUIX`4Nlazs>)Y?))1_{%=YC zb|n9UB!3%{{~VHk!*AsOoaBF>;KFD z!+6(fe$5+)_wRp&T*JTruf3y#*|oKcE6}sNHCzmA4G#xZ7cP*$V(`e}k+AB*G}!QZ zH6-g{!rr}P-C@Y(aLD=#@WK82WZP@ry=I8iNB#TvM+tisk(!zsB5e_q$wXX^39_)T zK%^gJV`GCJ+@Fu!+}sf96Z!i3c7EnqScH-G;iOIk=_8ud+fDk}OX?<(z7CN38Kl3% zq)iU#lTF$kC;f6r+Y-`u8EIQV+Fl@Sub}Bw;w+P>Q_!kKSa(LZW{=p;vF_Fbj)!t> zy0v&;VamQ+A5WW0Id$tB!{VvM-Fo$|Qfhg(&Kpxlt?t&BrFvrzqG#?p1s4hS!(K!y z9ykRzlq+CwqE{51f~>tN*oSC^OQ&FRu{!o8x{+`h3zrP<)aQDihT9*EzB+`z_bT>qwmpi_>t)TJ6rZV+>D2-%4f7^OGch8fJ`Ypq#t= z4_4Yl%_7(>CcDV07#9raOSy ztwqLO0AsuLnok^H)UEdvWC7!D9s71S0NvVu)_Q=t^|6Y1!2C=7KwU7QTjM%WFsWM~ z2sp!<+^yfTHnFC5YoD6ItZCiaAS>F0cmD7^UwIH`%zrNN-Z$j^!sdVfI9)I{;gz|a zVD$0qA@2r%hvCL(W5L)4t=c>eAZ7pd8Q;7Ra7c**Ja%TTG4UE89Rf~ zwbE4X0r$sX!3t&0ROeu1+|i4Q+*AkbCxmj+b%N0(Nn@&MLL*QeUBt0`AB4>Mcu;#~ zn!zxUmz?V-g3xX{ni^>J9;h6b;<^O{A>E)1%FFEoFcDGbPB0Hb(c22CtMms@QlZDa zs7UxDMJK66XFh=0cgAox^a(KUlmr^Pi34MOe~?v(xP6JUs?DA#X8Fv^`% z#yz*xAFPo)&Iu#0H`Z+zYn-hhkhudmldp%M#jn?c-d?h-iEHK+PxB8!`#)EMx$E26 zDW4q~^VSC=3lDi{WB!>v-eWhzmiWnw*MxWXw6SyJGZ@u-0#WcY`!@C%qa?<=_kk!qb0FNW{+XSY8P7;l4?>oAWni@ZXZEDK zF^m}dAk>l}0gonrW`E4s&d5m&LKe?^L5o`A_xT3KgxVlfq4Wk=7`3y{D0wg@7zLv{ zoI4;YqMdzSpQ-;`sV8ZY^2$pJfuvAY*9< z`>2uxBXem8iqUiib^AKlJ2h+cU+xP*X)|>|a#;uaz|0)|{p4ArQp?*}PLDd+63c`2 zT^@y?-Fb&ur{8q2WAjGppLr944&Jw9$+UK`_usG3lWh$_^OhBxylL-X&t7J%*VG<@ zET)|{eo4-My=msUue;CpU%wxI`}-{3`Ch`u!}+2$4E?CwrNTIM5{q9A#4D z6pWVZ`cvA`lnEry9Q4)lr`Fsi&m_E9YN9+X7~R+Kr_6IJfbjk@lK}F}Nq#&3Op=OeddgWiKLqv6Kj+dO?ukX~aX&`2$+I+H zWT|?Zl`WEnL&I}fr?+|{of3tjz`z*6BPVf|hQ zSQkCLkZR)=R;@-N-nBB3b(cI__L1vC*7CdL*|g%Ztc%OmqKJv=th1+Lae8Vvt3=8h z4c}2{;#sx>?|MxyJX2FCwm0QFa}u8a z^0RT!hX7Q4RfS6MH^MgB`%fN9T8A{{45^FkkvQ0LFlV7wAc~8fMn!w5;D?dhIQDUY zNIqr(#n6z$8afmwwmuNup1qPfh9vRl`X`)t%^;Mi;!TO@i{hsRZJbAwgT6T)J;!(d zGu9Ij=w?8X?_~LP=)t?kz4M(El5%-%w~b0Sek&Yz!X;YKxRJbHH5SI3*o=-iDH|?j zGK`dsHB?wtf&Gi~UdNhDAfH!O<)N%YuT~bCDu->sl(3VRO+}Ntic^6o~>XQ|MCb?Sz-NiG>Nmw;T&ts&Jd)y#vUAhYstAW`vOaN2VtOZ zbO0tzlR0;6t5{DWNPl$>09j4pSQU|XA}R0r=m1RTPvN{Otzs=DWl&-Z{FYDV)L*#3 zl87ekphXjb+f8%M{=sKhNh##}kjo=Lhp0YBU9ga~>v#xiuJ2$~I!SSi%6GDoZ;&~( z9#Jfpki*3{97nTEns}ejrg7~ZA^GH*NWK#fMO6=zxO>j;2M=$qQ%=D_lH24hcs6+HxT7*d(JJbR)MS|n0xhP zAc|10+&=Z#TMP?cK9ej>vPArn?wkIYtk)l zLw{K)6qd)G$p}Jv3YWMA{(WJusx0oXr9sH0p^TfjRRmi3@8`Zf6ogv$p5W?_YXfT> z#%^7FTP+bI{*qJ9mj$Fe(b$%T+ve1&EZa;|lKzMw@fDaN}G~g1q$$xVN7K zBYmmm+zroCK*w{$15aE)34tTU*1przXkEMdPflK z5PJf)t7d`gYC$kX<0&ZDIS8z)0$|99Uw}?v0?4253+cV}AfLMp3}Je~kk&?!WVr_9 zA6*UmU4IXnswRLPBbLJ21>o8-uULDt7QunqLeRi9msQi>30BLVXbJN52f`)pnL+8wb98DI+=*V(6mMq-w_VbvbPxAwJpvhd5S$W-6aOqTy;$t z$LwHUvlv{I#5Rt%w}V!?;_$&v1!GBVqNj^Pfo$fuIwd=}be=eTi3$yQtSbR~ahQ$H zFr@<>UA2BZk5h-=IQd=V}Eh&!yl%^AK30XbnN_3LsOV0$0n;g7*)(gNGxO zq1b}iFzJO45E35*MFeeN(*0oIJZB&*5}gZm9m2qqPjb*V&<-}t+6IE_rJ;w5BOKyH z_@P52;jqmA$KHEKMb&!`zaXfHC{3j(QkAN}oT11}vH@up5Kyp-g{FuCBE6}A2q;ak zAY#V?2n<%{Bx1#my`k6@Y}mWJXXbexAHM$H?_GD@Kki+3t@n>CK07BT*^`rSlAN8L z06f@d9U6472Yz8W2M>O-87V)M!CLo&@whv?(bU3^sNcqU_~JVe>d&+xlW_~M?h7#r z{?&p+HzRStvJ)tB>?Ne4w-~o3oJU@ZPofgVIPP4MtH|h*7?mU^U`W4>)DG68_!&vK zyk9G_T3U@(6eeR!*@tM$^4+LwTatUCPHiWrk~jT@^!?c-_;iIjU9%{Sxc(5(*>y|t zJy547H!mg6(gf6ACj%=@QK##MXOcl99Ozh&ENpb4ADw$Wo2;z1qlKzD`1@Q<8pr05 z-OCty&n_3Ylntii*B6oA1;gmi&Dq$`-kAFLDkg*5hfua}CRPr!ru{MtiQx1gI?px@ zFT3kNSD(xyN$u*is@p=$R65Z+as{NHULQJtmmj`+)RoTCDkh`1DNxhp0$daCPCwpW zPlBfPpnAM97ou?JP@*8}HjxKRDjD#DwfKwqx> zhUAo-Y4G=2V$e^K?pgH)xkNhBsj~ZsPI7Ph?ra;1I}6lXb3aK_RibkYo}+WydGx-_ z38H#UgASVb0u7tlk7{miCsEVQ>CD+1QF8G$JRwRI0#s~3ukQ?`?92Jvy*Ln-ALhgO z7BLc@VzEW84h-LC4P(FAqSw{h^ysczB(hD9-hUQ{nI(_Ou_;*u6}Zv^-1!OP9_(UE zzZ@rGmTl@yt_K zS@F-!#6&rmdYBdBIaQxoQn7)M{2)4Y7RYE%1K-%L-8TP0ePL_UJMa-AX zp=%dy!-J3dklf%*;(d4)rTz9`hv-CNoSi@(jR~O7HrHUem}0^n4<$nlr_lj@>hTNn zy+mftWOCMV5|vw8k0WQFCd*yDND&!Ncbu-pEw&Gd>t_!#{*f0QC8)${&p#7!uhFDh zeKeg+wqff%^7Q>ZZ*uyeE3KNd0dF1Hn;zdgm52s9(`4Ri9KBeX?jIIP)&~H!eVmJj zYOB%iw-%8_%MhKWupIY_SEn5#lE}UYAuSxX4FB05zHwuaS6qQ1IBSKHm?3BGI;J#SH>+@A!n?3EraKdy;JWJ4+6&1obzjdJ(Wy^I!ud5rn4ncnBG+UC zI^wb`h*$AyPqoaln)FhSKGSrE9t%F!>F=K-nlM?9&dPI#Qo~ieV+JOo;K3Rcwt7Lg z{85bUHh0mElP`(J_t~)JT~D5Qj<{~n0U2WRB^lDEPO6P+qN4R?`VAMkXEN;L3|{n1 zXOaI38+HRth19(Zn2*7uL=VQB(AxWs@How#e`{GBPmt+H3+($qf_)jYyi7%uo;8AA zonr+_&yD%3EDb~{JONE99}W&#=j&3olDhYSLRvRr7?dnhu77`cd7Z!u(X)OQkmcEr zU%R2NXt6q`=1Jz@UE#^wzg|_;egsp)1~W(ze-ur7b)fD+5Kz5tW>Cyq&xm+db!~Ev zG;f?Kq-V|HE#E$_ZflVvm8&#?tD4rLwQ}7=>GDqWteFWcxinmKUQ|&hCv>9nFN|UL z>8bn^Nqt3Os!sI#KofY_+kq*(=pxb_>quAqG=YehHq7{Ci$se1F&%Zv3?^q=if)V> zBTCm5Ql(A9z?@r&Z1S`fy^gl0Z$@15G~E{7oz1G9GgV&{erXte z%(W+>d_QK)n6-6|gN*5$*G`}^`G9M*A@MnMU7Y~y9B`fqz6Ln=LXUsE-QrXk* zZ@*-J%Ky$Q{>OT6ck;Z3dQY-9i?{7||Qz@9as|5<-6vVxX%}{f4NLlzQ$t6t)nuOozfzJ#yUG z2=4CvOiGNjseXwm+5dGA)E@0Y*G$!*S8L43+r$B&pW2ts^XX5`geJr)NfqQh)aimw zb=o~^2zfuEF9h!IPXnFQ=_PX`(l1vDoEHzE!(ORTb4mN#LEx_0M%-U(QimbAMDDy699O$Ts-79p>uSLy z>4g^bSbv;cPaZ~>oKPY?w+@2xM>^!26VN*s8_=g)h7k7R07|%ILc{nOsC^=aHEF5X z>D+LdW^`7d*klPFA2M;%MRWT0s7P=rz#5e0a&cIgDV-dYCYV#pgKWb*JaL^d4YWJ# zF!&4u;VJp}#@L~hJ=VM7_(48*Js*e04x#UVK57`7YXffmR^b&2L+J3Wlf-v?ZQ-C@ zHV$}eL~|-C#a}h;zBT8Lo&g&o3+v(4!FW7Vu!jG%A!eQ|b!86DcVg*}snpf0h1jd^EA zZ+9zVN1qcyYREmd#mJnVxW0^S*eHNeyZVyW+2+*4GJ<6-9iYR~n4H*UPWPRh#YP{r zhpHYUNahQ3+H3w)_CTZ^Oz-bP?6ocEvgXNbR-P^V*&k*m1X;QK?Z2!mKd`%5D}TAb zTJr5&;*a7_+3Y2s(BqF$Ldkw)&hbT#V>llEH^*}>8LW%?Gzm%bkK3q!xE}gZCnOyM?x64j z1N5s%NFvZ3WO8T-a-SsmXqFya9^&laJAU$&&&>LGGpSBfGQ+LBi8oa%-L zThNdW8!~RmBlLOdE;J&8;~tMut$`$B5a!Px@RWbtQRT zLGCGJ^Q~%Jw{{|ospEYAhb<+8c2;4(+y1b`q#B>RoK18ZcH>#y{h&Brgv&k@laKQ% zFnh}vu3SHWqxWqlDI>SzpdLP;V0I9@7F3eB-0fKP;W#*MEW$5S_YwOCJMoHH<6w^4 zE?nJPOtR~$@rvQ&pjNyAt9TqC3&!lj>78D%pfn%n1~-!ZPsF(Dk{68Yo{6Upq{Qmv zNvt)=3+w|Ev0l(&GO)*GOs09lh|Q5WAJvl+F?X@S$1$K6y8v5ksUmLopW&^uMnlQx zh4@Ku1*w_Wf!o?VV9K#Yc%j)Aa^TP>+}z*}cZbK}A9fqbqo?2S$d_(VC6|O(ic85G z+n+c$&J8NJq~N@J>&fVjpE!Sl8@wz_#Z8;G6YnMO@B}wE5Eo?O7jqlPicdH319?|4 z(=NkaLFY+i=@EQA!5IpwYO(IKE5tocgo~&XG&UZ_i$0wv6Cdxz-$%N_PWk;fB#b3x zC3|qkwz06%at|Ig;wrfwI3N34jD+Fi9$?YQ2PE751KM=N1}toPL9d2Za&7uO^m#1j zx5lP7Onr5isMTCR*1c?C+jb@RKD&kVy>}dCcJSfTnm%x{{~Z#s@d&!h`M^mS*cVDZ z-XfQdH6m7E1HbJ1f@#}L(t?^$@D3YT^}Y{`y>Nrv)VhjPN85ssJIiQ8{B?3O`3W*+ z>|oPyCD^dr2Vl8*F7TrGJyz_opXhch#-^F> zF!^K~b`Gi{o7*z*#SNpOHMSM+7`KgN$>-yW0#CRma}CcOUP|(Qti|D;-e7R}3@%?< zNIn&9!YTWGp+Tn+zq^!8wp8rE*AGpA@GS>%$j)@4rMCy?xNz6j1SCT`q=tb zP!yweeE{^i=>@rR4|r>PFJ%_L(gPW8T+Tk5QWLW#k9lP`3_?l`$D6fDol+@<6T~SoOe{@2ix8&LC7@$BV-ox*3a+#Y)0yd2N;uwBcWXfpwBTPef3E0^nboa^NMvh#&zreB7(ety`ut8HuZ`6DvoSyT94RN$8&9Qf%YAS zkaSR9R4Y@+jOla%nq&y6X8EF9j@y}2Ca$n=v>_;j#EV{BaOK@|afK5mhVW4CBCnfe zHt)2ZD-_!s!q1L)(VMU$-sHP3P`2F=qK%z-8nxccq+TvCX{!-D(0N{`;Tg*$<~xJZ z%%Kofoh!1REoKbIIfCXl6M&L^Oqjob$u>oxnqmR!OyBblGR+Pz0jGDnlC8CK@%3Z_V*Dfm>;_p7aY7It zX5hg2*5~{mzfdL3c2n`bMLwjZDH0y-dC#t$J_hR~g^&pjQE;i(S=O`C4v*$1ktbTE& z;d3&@MEzDIge@J&#&_uA>a_*r$A?I0YP%%fp~u61&vMAsfl-ieJxT2I!3CSEWDr@d z{5kta9KO-whwVL*$Y%E_P!x_9#stj4c`6aa*d+>-^X~|q*3HLzUj&o+)=^--fQLfr zBk;a&v&dXEPM;Ma$i*%YA74F#^tu%VF8m}E_H{gNd*MyaMnuEW(cx%ApPAU^xeY0^ zSPXK>15jRYHlA3mM`V6Q!F=x^aa!5|{3O(v+;9y8m6DsR$L@Ey_qg%oUd&`z^*NSQ zxT?UT+IW)Tknm$8z|{2sd9B|Q*6f^3w%-wgyoQ)qWXXc6K``0n z15osxknN+sVHvr(B!7$(l-eC3BTL`oPs_td`%7mC`A&&O`D@(J8cuR2y1>>DLX;o2 z<7l%8l3VEtZAA@a?vrP@CMJsL^>K%{#RrJp;3xP78%!Ro2RPtv4A~Vo z8uCgii4(nxc`M_{`%`0~y>mOUZ@+=vM#qyM<>TPINjaf2n(@%laip-r7d}R=C6}B| z;X6m8iBG9NXIoZCy4?}uduj{FtfVR2x<@YAQe2B0zswVto zl1;CE;dyYZ$8meHoJcYck?_YeOQbCEsoXV9zj;Z_Kj}3&mgFNz-!;z<+`a$AOVT*~ zT~-=bF8Z4jp2*byGv~Sew?2}5A~+WQo##L4|IGiNvLx}6eE#_@eQbU)`0so55`t=+ zIhN?ZiOch!`2WV5f2Wt^IhfO#|93t=mw5?fdLBdaA3|AJc0sVysu4Y(9n4a{3xYW7 zMx+)P%yw3v7ew$Ik!@%&+dA`{Ai|*$#YF_Oy6B9+#HA4pO5s@JlpxKw5m^*+>FH5{ zV{jw7ToufwDzXCmv__`%Skf|;9+q0lpP*>CAL9PU3mhCGJPW4}!+b5Jomj%u>!vG3i-JIDlaZR74d_VKAN zBce;V=W7tgHoXZRF-^?X=fp5}P-}#J%~g)$|MR)8j?%^JWt>U>wdT;ni-C)-gRx72 z6Zvu398L~nAh!QNTszy5Y>BpjfGa$1&)opLWGf~L!NcIOI}f}nRdDc9AsL=O9OkXI zhI@+@@zvoDWKoMHlpeK$N+)?d;g%iw$hU?*cP-(J@lQlWHiS**ao;9~L$^oo(X9@K z967*%pvQ2in)?bZI?N*n2p>#`4TD}o+E9!Rk1SYk17@KXaCz8Mv_zjr&^TMzbI=@k z8y=x^=Xu2X0k=k>YYvK8_t7v@KGB+B2WlJ5K&w{^@^-K#nS1PD1m6rE*j_`)Jx7qL zc02HWXbQF_XVK0QA>sG4hwl}p@amly-FWFp+Dz?1HQf|e@7aYO^l>8r7WUv1Z3?Bm zm!P1p-UNEugW?oZm{a>n7{752*%)gF-TRnAuXR1e%JK1J+8A57xzYp-atlLqtBt{eLQins} zn5WpW+-yTo?xGpu4`2uDvn!3h?3$$;z6u-Z67Q2p{4XJxdI zj=j(E`=y33Z_6X@d)yu3-LD2UvyweJiC^PFbvFMp2A?fij1j;m zP7>{xvLMJXg{#6Nn43zGq^I3MOVb?gyxoWUd+sOY?uzhozXgzj-MH7gN^+pJFRXVP z4kZyA@tRj#$i*~u2&%D!@|Oj;Ja;X*D5DAMA6dbcunb&ixQh4+20_JjYjCZO!nk)j zd99`gLCbkyZ#@m`2o{svNN&vbjR&z79#|_VkeqNI3Vj?H@R@CgEs#H%lw$(T;~ChI zZHD*F8AC2}ZQ+hT1E2j2@Tw>mQY|!xi9QVc*&ig|lmGWYruJX|i~q9rhibH-usilL zSud!$n*>Iv8l?$;qP?MIf}5Jjkm*>79{b)vo9uT8=I&00U}hI8RVhbTO+*5pNh#3V zYdcy~%tu>~92KayarRF)HldJ}?*t>3UJ=aYao^j`HlVn@Z^UaqJrcwjroznnHOL@2 zjm;9j6YOnDfyTE*=sp}|-3xyS{5(>i^+!G$@aQ2M+bAdebvzlE;#DXmtQ+a+(NidL zPX=C1F6Wn6nSA@%OZehe5*&5RL1y!`h+a1(VM?JF$kNQCAGS?Fh^DG|6T3+FsYgt6zd(E9JDWZ*1i z;juf3Fh#Ohr))-4gOr7zZYRPo)m)^a)Q@#^7!_CIl&eEWLUZ;7`dL4!_Veaju;S=3~IJE==&Wxyl9!3Lsc1Pk5=9X zIXsiYwtG)GEZmU=V+YF{Z#l9$Ij zew-9^TuO!o&I^Tds`6N&_LrdiN-`wdPY~+q$z!z+O<^M^ukv#f4&%vVdAZ?2c}^DC zISCWp<#GHtq3{iN|LjCZq4P|6TvFsDY->)2+-nnr<;n86Y$FI2E+)fmnkk%DE|2$H zI0!GDNropKwZf)j^7!gKYvJT$oIPgEb78}Cd93emEX+8N41qV*(Nv}GSf4*o7``JJ zRGMv&&M>Zh4&H*tPL{4|Su=_4S9(V5f&#+2#Fuyx~+<&8B zH)pT%XMgx_-y!UkEO7+qug8{~({|-oft(GBTL~J!R1Y0cS%*R%B*O{CwP@HPKKfpF z6z%Vp3~QHfKush7y{`L+a<_3dTE<(@`h!{MY0*zqdn5@0taqRbQ#Yd>%wy#EBMCmf z+m5&3PK#XiREDTXcV+%POoy?u6LrW32Sq??QsYzhBbvNoPQ^7f}HIS=a5@=Rc zp}U9s<5==YI9odj{3h0-A8WL*n|-9v@_QoP>%Nb@J9Q9wayfj2>Gec9SL+blVL6yw zoDe5`Se;0d0>tbJXI-+a_^I&oszlmrCt=^6)Fu6sHPND_iPUZhWzl&R88IdKc_ys`*hW^Y4==Ht;Zqt)1s^Wj>GwxL%Y2u+_|i1T%# zAu(gQ$$B0(=-u5ytY{Do-cj4o$(c52#gRhX(>fX~XKv&E2ic%Q z(+lxI?`UXt*oJhyZP5AL0{l2L8tT4pMSDN<(YPV``1Z|cII>|Y((~k_=3gtZ>X^l_ zUvn#ZiWqdTBOABfUkppawxH98t%!V)VT@CXYi0)dJNti5ChFmw<3DP5k>A>iU(|44BwtqphZK+p{Mc7aoe87 zFhjTpy^xuVl#XQLh)FS^t5AvVFPnz;6)nLBXT^e(&Tdp*G6kuQS%g2Yje`?kcOaD+ zeyCSU09Jn;4(c_J=#1AI5IWLveMhUR_rXz37ba%Ud<;w#wq%TmVm)!KR)-dwmF(G8ZAhcFX+AFhvan+B0L)gWW{Vn&O-RzIxH z2U;980I%?2?;b5Czj;H%BV|Yiy>Ma}>LBWL`c;Cl$%)!eG>jM>{K>o!Z?hNBnMm8_4 zUd@o3KY!SZBQlDZ@LiGh3qvEIBV2?7W~^m?WG=72b!;KDEZ>haD+`(X9;x-WhAjkh zmqWOH;3~$|DYJe+#R9M_YQVxV$xPhmtonRr0dPZheC%Nwv)3%AUg1VKoM<4}>-->m^;W&+!N!D(IOj?R(>!xc zeH$n52)T&e7UeTOUsu=b^qmJSb{Db1t8@krEvm26oCneOF5tNV^O?LQMfGtO^B`&5 z1^i5y!HjoVQ~zVkJXoE29*?dnVxANh)^CrW2Uq8u!z-reF<(!Y)Ned652D_l!6nzZ z_TjmzzO82%DCwNW$5jg$rT+Q#iSxst|Lv35J-m?F(q2$M?pYW#n%%fe@&i#>5I9)<0mzz|Im~ zFtrG0p5Ay-Z*A@Yh7mg88k)+OjlNqy?(Qg1(b0sOYu1d~@cZ@3&pn|}yD}JhPi4lv zK2hI(U_AKgcZXi~Y0O16THj~a6u?m(IBiN0Qzlbcze#R3%cGDE{iR<68QErg4K$`~0 z_!EcE@n}?-3q(B|M2AitLvB?UB8ykfFxg&*2D}1dGWCIyI&dygIIseRE*=SXD%!O9#9VSyVI{KH z8wqarw5i39x#XE_0qPs>43qi{qO-2fB`VRysBEDVtX-r-jpxlJZ+ovtvTly>`N3f7 za5t395888jgDM&gz=h+G;lm3YphqJ;fX%*BliUv>uyd) zGP)k{QD2kpc@jeOz6PTW3a&u4G^yd!5K___jCv}&LbIGERpIo#S{#hh^<2UIu?9VR zErdMM3q}(hTwwv#piKuth*oA0S~J-ds@G}Iy-Pz#^|?SaA(30Vjn$ypRv~1~k2xrE zgDV`Eu0hqs!GzJBgN__>g|*%q^uAs&$%NTRtJxK1Ptc%cQ-jF6&{-(1#TBm4*Pw3m z0*PA1Or*}qx9c@&_L7+-VCN#VOT`r|st-~1g9oUV4xsbT0-1k;+oLeY1KzIEpeJ8B zlU+d@(Dn>>5MI=zk4oH0;n+1O%HIuEKh&b@?v5o-Eb~ztaQcHboh0i^!rL>^wZks( ztz3(1pZ?_b@;GF~)n|miChfO)GI?qogbdnTxo%ZMa?L=5kf+ODiut1I#2 z0}?-tYqj&3DC6`7$E%@Geflc#u^K2`*E(JtAu}7~p1vWY&VLa`gw~0JM^1s@?%nCF zG#{k)^|DwT=MT@0D$-mMixU30zO&2y9^CzTUGjJ5@;_Iy>bIZB505r8jApmr`Y6vS zW?n1*D{Id#X5_MDe_y|!R?MvZGWfSV&n=IcTP6H0%f8KGW}5w*|FDmnnVH9%ewVjq ze<|adVfy6*@nIhQpTfV=%f^q!S>v#HshsBIW*#Y}6u`tSVg1%-^4+`n?=*#f5Xu-5PE znab;!{6lYk|DMqNHH^GU^KV(SaVxVsM*nyE#R{2>{)K;kzjH@9bM0>b-`8*6$YqL5 zT7TdF#&;bPD;)Csy5*4^=2830-`AhNTgxm_viW^|O80E$&;G#e8IXQ^l-QzoWr=T6 z$-IZ*<~?26k|e`+u^xM5k)zm1K^9Nho(zLchp_wOwZxyf`Kir}WN@#rW;OL38x*s8 z<7{s4iP>aVwjaGJ_~bVLoB1YzqH6%#BwHx_S#N-ixxFk`T9VnIJs*YqewO&cy#y$j zp2se2HAe=09q{Ji2{3(JIeW}(5_-PM8M|zchsfqiR;ODMn)SvV&kc@;JzMs(Axm>m zFqtceyHBHvv+D0DZr$lR}@Q zXrat2vSPz|yHLj46dHS83tc<)vteYyPSpM(h3>G|MvFFoY&dUNfmVJ^p{I^%Bfksn z4c=q7BT;7xT@*PG{kq@MaNzP5RNFI^P98Z3p;>1ecCIW({PI+){#6GZ=#|+}cw-_)>Dip}AO(nnAXO$K=Hdw#kh3vMcz~iU-?AE5& z4H{b;ksv4qst@b4sTX^T%j2#gF*lD%OVno%X6lGa%AxEW{%|zD3D* zxV4HedTgbdotSs^8)CV&mJ{dn*stkWMMPoc?@UOHkf~(I8a5H3!CN+5TH_ToP zhj13wcPkbBuyf|Co``{%`zd(r{9I8qLHvZbvG6%L0xP7Hh}K`%<$u2(2gY}U@vepI zMW@{v{(;bV_%VA9uC`bq$|z9hUnq?Sv+8u*@BKQ_&0-tAlT$2AQrwO$k3q2zurZ z$L!Q1QP|MW%wfkQh)|FfT=izRU&h1UB1D^c)**} zaox^b5zQFM|LGhHp{d0sF1eH)M$% z-IMq|jzz%vp#7NevPF^d>HNw3g|KY97{^Cui7p<<k|+KoaZ`10 z`vzUszF`WKvmc4(6+L|Voeq0IJPi~gUXlDGhPd#BCfj&_2K;JzOfC=Q_JVt=vTu9M z0{*ZTlCEfi7xYqK!w1a)&)!#wXpt!%I_`&f^RGZqX*owC7norh*(TOm7YrJDr^q}- zb9`^@EpgEG5YU`_j69iaju)P~AYQg56x=%-iEV^A9(wVNcvpKU_@B8#+U5?$jT76% zp0+{odFmH($VVH$8`X#1;Xe&}ZR<-1Z|;o;X%A$-$NGTJmO=F7*dOTp4=vXHv^z{o zGNin^HuO!t58JKW8R`QE(|4**(7KsV#pmC+L9(9;?Rl&Xy}7qj?CtLZ-M^|*^Rexy zm%m8dW4Je5|DZ~Tj&4VfM~K97*52GccU9W%+>ZKRt`qkZdV|+VRl1Ddj+$lb#Ng`< z>k3urT%C6GbXSeIf2=p`aZ#o5Kibg5-PPi-YHzr8O@$g=YD2f~?GYdT;SFz*3O!xg zhCFn4if4xSz_uu5+B&@rg`%zEhaY_4N^oE5uHA-8<;plCKVP_?ph@FvpQ6kC&xmI% z83Tp6gK4b%6ZCG>GqGH=8@Df1pDKNRgz|fS5to>`fNY5&?Hua_R~x-mzV z6}}w_-{SPB!_!AdVDwYm>f{Q3;=#0H=3{j2$S3jeoo-O3tV7kVadxXw9pW9|-Jxjv zKw56|1o`%PAwJ)K6zt^o5lxACg4`xQ6Fqba3$l1!S$*ce{!6b6 zDP;bXExC2=+FivsDpVc1GG`wQLu_N}Z7;a~_FvjnX1M#Z+O7(1YZ7r+me>_XFXsMV zaY2&DpR)GWAHpSOhA^4=I-jbs@r1QOa_|^DT~CijC2+iptvO4xVYdxR>M=(hLvVXQsmhBUr; zb~663Zh(|ekMa0jKmUzqaJG&A)Zv0n|MKFwqkhM~?il@>{bD?S^NfeAB4EDQkUbi_}u6FO81Zuz^i;q1puRE9`S8IGdf!^9Q78gG?ubaD6t~Td#0!@83 z79W3YURRwZS39vefo@Rq#D3q*>y{PB)yiE=ptTmBcwM7Q-I16cwcRcxP-{m|d_gf? zc;!hYGL}oAR+mTN^XrAE|ECzdWyK;Ib^_z%*NNz5$2PnvH=K&*+2HowLS)rD7T@`@ zh)!K)gMF3Kg_oXHqA0mUT6vR?|E&N2zsrM%MhiA-R|-qJB~kVW4|fb7C%oFb5M2*R zq#t~F__K%z&xZHF)|cXGCeIr8i%BhF0|Mv51bV-%@Q=am-|7C5?pL181`1!rKcBQD# z{G{LhoV&{Zq*d>7pM*L6Xp3NQ?Y1@J>I+u>ycc0|_X2reVMjW%2 z^32Hzc&Oe8DQ`RwgF8Nrl=6!ikvLl=YKb@u(YlQufz( z!LN?yOS#p4B);QQAmzJzoUv2sU%YsZGaj@5FFxhrj7<+0kmcO(`r_h@qvx%Z^7#xm zsXmf;i9YU*bEWY`-)7+94xUnWKR+Mu*kdQY zN!s9HPTtX>(jW;O!xdQ@>Rr@BED0P#%x69gBspS9h~>_Y9rA!r$5cKNO9IDmT+FAu zb^5F%924`QEr(Bk@qAcG;20by@af{3Bvuk&0v~$m@@a#5J}U_dx_k(I%g`@-%UDU^ z7~Y&_XkY>7Gm8rxLm;=0G_PkZD+wIKvpj}I&pN_}0%+RT?8dyotPG$f_Ftqnq z!b$?i;2+9Rdg%x&2^@oCAVU`%Z)7EbV<58`dR^xzD+wIKa!y`nc9bpQLMA86Ze*y* z6A^371&)E!nI7VFKlr!)BR24&YziuVD_L8qK2Cw#3kaHB*;HFQ$l9tyoAa&JZx5OvZmOkb z)>fPSINvanL@LZ5}x zg;ktBJ^NT&`TR@;floi7X;D*cU=L0o&UcL4$-{z(l})w&ves7HxwW2!LnjHsS2We0 z{b^fB6Y^q)J-O5U`Pe`u8!C@2k`xkt(lKT3Q@t8ish?8ahmb*FLwNsK& zF!|IeCwZTO%zgeq!LLqZZ}o{rMqGIt)jtcMt6alsMnd-#xr_44Rvnee8ctRY?c40|NkTZXM6nrx<39}e+tZm zI>|X6WtaICUAfNs(eH7ej>SFRpK`(9=R25ncd+itHr%+c@ld|#Sz*TSabH(?1$Uo0 zw?1)E`BH6Hmgu)CV2Sky@Zrn;eZE6i*_Rvlovwb&jSppNyK+C7=SD{smTt4PUoIW@ z{V6}_^aq1c_Aq1U6Y{XpAF?fMrA)Q_VP=$-l!XRlnrWpA)!W1 z$^*iDKy_nJDK|KIgTuFPIDpIZs@FJBT+l9M)zw~bzy7Y2(|>uw;q)s~R?7B-rNw8Z zoXPV9&GHjczW9DDOq<*&jccvTMy)NTOmX58FBx2H$Cr@|2BZ;Ya3Qyt`~H zd`W1)(>Wc!?Be1dH%WQ0j3+2?`bgqC+B{*bTyK!DN9{OReNj)!KgxYUhqHm7#>IE7 zpT<||V8qqcz3n-8v~n2?;kfSz&URJ)FTVXO8N6FINaOdjNuZVc7hecX0HW|0`>u%r za4(gnnfEyYHVD^Cd9>YJxOI1}lm~YYfX}*Xq}*587e0JmE#*;i&TwT)p;QN1&Q9OR zB~QvWt2N-j=^QEJ!0-5J&nzkLk3WXh2Bw1{r{}xAEASd!&VLri7OMy1O>^R;&wW_7 zHWIc(NO{b)LiW&uxl%TBw8Qd-m->Lw)GN3^p$4xh@rAvM&f`)0_Tk_(KPa+h@fBr)_nnvw z7RR>XcB>{V^Ku5X_-EqL)>rW9xIpM;>w)V`@8MN%=R#+q3~uE;$IW*ZKuKf>$_nbh zeb^}ArL{E-6Me#Un-{~4wq(|We#b}OasG`>?y^Nyop{TUc-S$qKY8pe3x@|L!rXK| zxfIY17W7MkvA4#O@cwdO)Q|-J{R2qxGC3Hjmkb%7!^lvv99VJow)b%~`PnQ7z9GpF zvOA7^z9Pr@^yK^oevK#RH_E{UuViTd#3vPI-9SA*37G!eeuKy#cvd#|ef8Qz{8;T3 zM(bl>UEdabLwp6B4T^v|6D@en)lc>OU~rsk#@WLCLi?pP3V@ad;5ypD+X_ zoCkLQi9wv5n*mHX=fKYH7z7$(U5Gwq#WuU@z>j(za0$?34_wlLN%Dihkgvd=FCPr^ zvb3Sc`SaqF4cvO3t`;awoiCndtq+wI8c^ds`LLssAx!J+4|lYe2`wfK0V3ZIesSLz zuj-kAT8SzQe-w*4=9xqIhQ1KHQpEZBvINGWH>7QRgZAh$usyIR9JJKHEuMDpD^LzR zy4&I1IRbdQ_7`>u_s4e+1MH0cgde6yV<&bb6qUZl2l-jJEZQBc$8!55Hmt_<=xF$K z{6045S&k!Cc*0DVJ2+3i0w?Sq2Tv7l;CBXI{PezxySAk-n+JiJ`7*Rk@EW(g zG=TM?10iQ@Hq!Y13P02^f`gwmz^>OuWNP~gfATPfZe?oF_M`zFz4-zQJI%p=M{k(m z^#GZkX~Q{n)-WbQ4mKR?jxYawinrgkgDZDFVC}mD@$|Gu_{A3lDLxOeYpyj8NomE+ zTe#m6-He|ub;a78z6(}(z;>S_c+@3-eBI;*c33_Z)D7$KjN~9(>VE~_+dq!8ciN5{ zPekI^4=>`60$*61Rf-Qk=GKr~&fz)y3843@5Krp46br_j!5a?xfsb`AK5w6ai}_7h z*y0agm6qd0>zCuL>rUdb>WLsqT!yXD3Oqdi1YRnb1P?-%;7H4C{NdtpyfbGKtZhic zmC4!o&D!I5{PszZd2=Q1IFo@zZ~`k@P6WDVFCMBCiRt`PIC`=#SlwyCZmJ%*uhUsv z=r#)8zmbPWMFVhZ{3Q%igz&VwKUkHWLzj$N@FF}M{;dCV$|}I?OcJkoqXEUB4&UQD zarCX7?E3Xq;9V*YaVt7GKO{TZmOLw1uvH!=AMM0rsw&vPP%Gd!%5%2RGO+vVcGgTj!m-UDDhx^0U05$Mz7%O66PoM)UqCPgM?XP8|&Pr?p_*76;Vq{|lSG)`fzf+OWKBGCIzF#_>FT zc>G`>)EtjQmn+`kI?lg)Si~SuOG!hTbKc;62Mzwm^Z3V>Me?^RzbczapXR2+0`6Vd zmH(gqf3MEiLmti_4<|En@n?++vUI=%(Bj^wL;IJK-LL)NhT#f)Fn9$SOD2IOlYwWx z3?cqr)4)qU4XaEUK@Nq?gyZ>(aC(~}nSCV?OlJk*g?Emy&Qs=s8MhC&@@Wj~aUvWH z0$s7Wxe{CXBocL%cwQ1csXNFloLTZcU99F3?SajNooqZNV`i zA}KJ+{u#QG@LpIFn+Az8=h3%u3TVFn5~%Ne0F|CqMz6jsf$okw(3q8KD0JFVNM2To z%-^XYvy`P^C0>ITnPv!M2P}c>Etin_cV+hbsRVFXV~zFW?yys)M!=9BS$Ki26L}dO z2zwk4;PX>fki0FEK)Lu1uHov(D9Q^)=(OY5jz(e<=ng~op2mY8o+c&7TmVfX6 z1C6<}=hnHxQM3jx^*%+6xIN_28%yvMI7yT;+~7OE1Y5p3P9~eUgW~;S>@xls8T;BD zd{c_?!v&3mf71gJKCZ^Wo|J5C9R)J(tMM=ymKgsS4U-d#aOv8^WbTl$@Ogb9RyH|E zWXE&9v8oGj8{J2;lf2+In~$?2MP$pmanSv89`^C7B@Z`ygU9<-cyq{J@;ujv+Z(kC zU%yaAynTJ4HDx9CFRmo@ZN4!0TP{vMw};e>9uF?ta&gzT6hCPfUeYg^#My;V{{JHH zJ)oj^w)Ig2k)Q~IfglKqAflu}1!k%?NKgx41QHYsn8kz&%%BJ} zT?LpGbHIc-2MmB&c{Tjh&Hw>`DL-OvZ8E-%K< z-c2WVQ^M%bZ^l^sXdRCG5KYb$h0%OpjAN!R!`UWDWcKnfI^j?Nem5x`kGIJn5@9IK z_D;t|qiwO3Tb&{SHqaUIt3k;mbe3rYWsAbN3o8Ph*0MtV0k6YU98sDI=U3}btu z=X0A@+ZxAk3yw7rMZPUPwYdW{EIKDJn%P1OMj<*%^bQYn>w>4by(6=i4X0PM zujBc5va$c^yCg)$g@#8|;i3+Y@JIbh;->CI?KiK+Ipqd0wZ)qlDh;FF-KXH_?@nO- zQ3G{1&|~lI4Dg59qo6~*3x1cTN>3!p;ps=&npk~5JoBpt^|g3{NRboBmImYfyL!>C z6=%`I=MK=ba0VW5Mw_na$T4jqfSTqAtguIy4q9H0HY`9;cWDL=PSB@vJ4(>_Ied6J zGz8bp>&I?Ydr%)|TPW%>9xpv@LRP4~2(Lh70W;iPjbn)=v|?oGRfJd*msn@Rf-DR!XwcOE12Y908r z(E;(2N7CZRR_3;OFaQUhn@+`!y-HPR;~hz7d%!hI*5!fU&mkfUxH&Df{B?@7=`pc_|NadKYHGlYEnz< zcu2SZ=#Ob6|BtUj@_X%ve;2-Oa7#c9**YJ)PlESqY3Q4O4c3qsA}8(;TG&EyvDX`v zSa_}-$1Zw}K0UbCjuX1PLQaNn+OguJr|9nW&+T}=+ygYou>+R+_VvGs)?ATm#{n-c zpw_AK?RfDPrZI2TsU5$GtwQUP{=%(6d(gBcf8nO_Ytfkwa=3#`4IVr%1D(F}4%zgn z!S{AfMT#X?k?rUj{B#~4wT4%q?u%LbC3R%iebt_ftQ7uxl`1~&`y1dUh~ zr4Oyes)lBQO?&nU(x=wqx%ap7&kr3g5HG65nxFUlmvuNEejCl<=z{|H4HF!n#MVMCQo*;*suPvn#e!=W5U$efGM1T9MQ;qGW< ztm2nT672&gY`MNb>}bA;^Oa7PcmOT4?} ze)VI!c=m2rdLG#INKDPi>N}xvpyrpr z#i%YL54{9-Jo#8q{lTMu@Spwo2k-i$fAAmny?=0xAN}&)f5rRhfA|mkKmAkx=>Ky* zKlut)r(?a=67oRhldbxwSTLKEzy%ymBPXz9RfF7ocsM43J69P)V#chgmQ`Tymj;JsfQ7cg6iIH!LT`|$ocKfl){k>2P2es1#bwHJQJ z|A+4Uf2hmwyGHo$_)mT0L$(_9D%0BOHCsScT{3WU|88{ih)`mM5uId`hv%+Qp`Ry> zBUhRc?f!l%PI#$EuU>E@=an&Se0=~n-;txK_V(mW7^30pj^k|K@8snbSCYO;K);z? z#z{8s$;@Pbk`^eSQ4ZJfB+u7m)v!3S*$~k$J`Gsw(=%dklu7zb#x!xrMZA(cA@0@7 zN!eFSkB6MYN|TkSJUPR;@`q9t$NP9$q6K}UJW70gmKp7TIuTdRaHsNDDQDZe2aR6S ziu@OQQ^Cq??&{bsv}?{9Cc{0E`o>S^ZWMQNXFYz2!i{jz>5cYqsIEg6i8Pl5Xjj|SpfS&9SPA~H* zUa;PZ>9GXE*slfLkps`LvK>Z&o4Fo!F{W;AP37Vdb& zfNBKlk(2MO>Ffd7SW!`v4iru$I_h@Ra!ba)TrWHO_I1l3j74)D)M(fOFKFy0wz98p z73Q03(!d*|A@TWi%Yj$tiCk~$(^8`mkhWr`rB6<-=#srLop#Ovo-OWcCB8ORq&Ulj z%0B~mk+#vQAktSfGTMl)O&bn2x z$nbPPM-;i;od%xMg51g4ys(`eMX^0cQ{FHwSiOFi<*UUbMMry&qWv%FfL-z-D}yW3 zggNJ&sO7u2UvzhWAvJbDNWyZ@MrIKZQ; z?G|&Nfd|hAtmirf*wClpJ2^dfb8rE7Zg?G{1@A6%A4Zsf`pdrD^_h;eKvkARoHKx9 zw}x>O*Nmj|2lph_2HJ3NLJXI<(4D4^=ufIwXfVx}_1u&T9<;^9oGpq_1z)ogE+}sd zRnX><@qtXQd>-aJHw~k*r<%CKG3Ib!o<9jrk!AnaQ^Mmt#({(05h5phha~#uVKl-K z!n$1`pGO@bXNK;=kM|FUncZ%Zb=IY1^36l|h`9s2KYEW`TeOj+PCJS})&OKgJR&zV zb4kXbvv}@p4B1JKN#V!EBysW;e7pvOaOESCwO?*q$ z0VX%!A*TesBv0lh4s&w^>T`>{tZ*U6x?RUwx1Ay9={3^u!iE%tU&VftM#8*n7s*$z zA*9oudi-#|J2CfuPu=&b5k@`Rr8k%IxJ#)AHe?=Ghca7vfbv)0_OeJTWOYm@iKPa42ifyVE zkrA)A;2?EBa2imFHJN^2@vznSQi316TP(rvHe{1i+cNPv?FrCZT#XfW6%h6D^YM3X z5`^_A!;ix^6BHhbBUAjrJ8>gEesT|aB=3)XlLA51YZ)H*T|^Su+A@>qAQ*dZ7WSP~ zP5k=@;7dD$;B$;OhW!#UtuzonEe?X!nQr*aku5~#nJHe=H3V?>YWzeujI20225&4H z15KS}U{$6YNsruyN1q%H&*K$9?zIJeiaLv0@C8#d zsPa;Q*0bA@+nP^!=}J>*JE;Pf?@Cb5mT%ZseIP6ttOAb1Poht@9pK^v6Npvs3~u{R zqr?U|c&%p&9^X4L{rUqaX+lR(bT)^El^r0%JPFC&k%6NJhqC&eAMi7WV}eutTk-9c z0C#GhD3mVJC%=pr~~lr^l}5{4KBGymKDl>3k9Q{U}4muRezJrh37Wg~xHp zH!Ff|#O$4=4;&{PeyB8wnAMB0NiRQ8?RWrZc8VeKpG)!4R6j7CwEthO>l#S2tls(! z;BC9z6V5ZO;_2lNt>%B7%u8CT58J1YfQQ|7^4=V1wwh~d3MP{=Y&v9aIidGRE72kz zbXqhNE@2g(z;LBi!-rw8Qr-&oug~OpeLHTIKgEV=lUahr!6TLhfiApW8AD*+B5Npi z8e~Pwyym%h1zTl_O8Cso^tZY^`TFo-`g(av91l&;P(ToJEt6O~FR96+4R_@Mw zW*@@aH_ZpQ87gonR^8ftTpVx4Tpy70QGxRAU98rthVi~Komq!BUEsOSUf%JOGFC_iST~{zNRFAw0eQZN>#8NR>*sDK8@!TJ{DeL4S4A|iD&z4A@9ygcc^@>1rM9tt)d(B zdA3ZK^$OEvm8=}X+ttS7i4WL8qoFxGdoqBR{}On90cPMZix2%*KealYHImnDkpUdo z=mM>IJ0#J=m?_WL1q$(asMLlQOYC*OJ>2k7t2WJU@h^a^h^@?C=zmS=aXkvM!>C|l$dJuDh9QqUrUZd{u4_g)ByXy7iFuPxTy-p>` zvaj%=qW$FTl(7&yE{1=4t0EjV+f6iF*z@EiiQx3G zj^V@D?@c~TTiyhwR7?tOL7*{wGqRjx4V8WiNKY*jxN-X+ z8p*WvlE1`|30;gJe%~?F7G(?G2V%)#>G_Xf*Q&@7#>YF;UbE@;|ZO2k@9h)p?+XJ_h#T#Y^s}2n%VvJ)<8Y7>TN0Bw{RwD zUNsF~gt?K4nmPEgA&i4O+Ad|@6oKd^%w9;gqk-}^&F_D1aSO-SB(>O%C9 zzL5QTC*DvhA;TKAA)|vnAg%_knwdx8hj8O7fXi7KJPWICF0e zj?&#n9v;+#J`)V#V$lk09=e&V%rJoG%Z!1%PhvSVd8CzTEZ(LAq5tq;?A@@4oVa2H zQ+5r8ZA(VtW%nbA(!Bwo(bWQaV;+9G*OyH79|(&sSpqp`h_B_2ATc9MVZckPf4MH< z*Pf*)pyPwdDa z)Q}8@nq_FZZ#pMeWNmk55z7_7SBiSe?cgl>Ev^n6!ZfZM&WRO)Y zK?`k7P?j-YvhsE^s0~_&yvO9?g3_ZBk8SgqK2sLTRXB&IZ*G-r_M7pGhyKC;?2r7> zzu|{}*dO+@{@_3Ti+9&rPav$OF0f(UL{${kAj28*CEG&n{dI`Jf_n;2Sz^MgvxxE;hFYh zC0&bSAg^{iYF!kLecV2Z<$U8H&XboDrcLAuW zerA`idA2t_8+^a(^Ci&RR zH3MDk5(S~EkI?y;5^OwR7FyUP0=g;6ARm!gySJYNru>ly~v zY; z-0Yl1xREy>whjL(=}@6UHmU|-omVk%`D8b)oXd%(qIRJNy znGO9{_T!>53doi|TKJS<6nht;&vmQZL0nbTa8!?(0CRhC*3Ck)B(@7)77ziVee&FW zCQQ~hK?Tbxhr{fbwn+W(g(lUFdMqB>m@m9u$E+OR%Ppnm~LJ5 zVX@)TSQ7f^6N*}z09M&v{9DD=M75#;)uSYck*pGkdOqUbUgyyF>}2r6J}-u656Iy0g&iyA%dmQ^vPF2YUm;IEC!u1|rMY0Y z^%xGUOyp^-#vj)3=ajd+565$|nXW<~moP_P+x1#gti*9_#n}}>o-<*Z8HYV5XYeZR(kq7C zp9vdQNbvsIOL=;bR^cf-3o4Isc=3W_-d^R@iaUpALO^5UaXrc0#-l-Dg$k?uvlb7i)2_ojq^$ z{1p}J-$laWkB6}A)J)zUoy3aT1G6CKT^Y_j&Ys8L##NlOjRxb)z4%PSE}o%ZVuiWF zY{;Cl7tfzHf%hzYO2wA0v%%%~e*A6f65hB82^HR(qG89havU>j6HjYfVnwcDG=x7D z;vKnZyxyHMD^A^t`lof-ly>%_vH=rGQuit7_;eSTU)75`Z<;{F4+BwNhzqP=+KX-t z7*C#7Mk1RW7sx-~lO8PfB{P!J&}p3!;60`X-EzvC+-JIII|qye_S+?W-N%dQ&)A1P zo^}O^n<{;0JB~OGKZf3Ra)*T1%5?v{ab#7eo5*yZ2gp=(qC=N?kv)%|pt3<@!M3s^ zoeJJ0RQ4s}dyRu0P3rXAazFC@RSX&~>&D(;>(Hky(L~{mSaNFeaCjfzm--w{Bg-cD z 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%0AEi>M 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 z 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

VqKxfU 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%0D2sW04{^OsSb6C|2%RR2hk}y1 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[=Pmc< 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 {f1E{0L}zEG2vtiTM90Dz01sH(xM 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%0AR?=~Z^qwkNf7 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 NZZqWDJO3|Y?*F^v=FtEE literal 0 HcmV?d00001 diff --git a/web/hands/assets-src/barbarian_texture.png b/web/hands/assets-src/barbarian_texture.png new file mode 100644 index 0000000000000000000000000000000000000000..29d2db09000ac28e626cf24c3d5ff48f7c324351 GIT binary patch literal 15089 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 H`0M`zY|?;T literal 0 HcmV?d00001 diff --git a/web/hands/glb-debug.html b/web/hands/glb-debug.html index 63ed982..ace4082 100644 --- a/web/hands/glb-debug.html +++ b/web/hands/glb-debug.html @@ -4,9 +4,13 @@ - - diff --git a/web/hands/package.json b/web/hands/package.json index d5dbda2..eaff152 100644 --- a/web/hands/package.json +++ b/web/hands/package.json @@ -9,7 +9,8 @@ "test": "vitest", "test:run": "vitest run", "build": "tsc --noEmit && vite build && npm run scan:build", - "scan:build": "node scripts/scan-build.mjs" + "scan:build": "node scripts/scan-build.mjs", + "generate:fighter": "esbuild scripts/generate-fighter-glb.ts --bundle --platform=node --format=esm --outfile=node_modules/.cache/generate-fighter-glb.mjs && node node_modules/.cache/generate-fighter-glb.mjs" }, "dependencies": { "@discord/embedded-app-sdk": "2.5.0", diff --git a/web/hands/scripts/generate-fighter-glb.ts b/web/hands/scripts/generate-fighter-glb.ts index 80181dc..ad204e1 100644 --- a/web/hands/scripts/generate-fighter-glb.ts +++ b/web/hands/scripts/generate-fighter-glb.ts @@ -21,6 +21,7 @@ import * as THREE from "three"; import { GLTFExporter } from "three/examples/jsm/exporters/GLTFExporter.js"; import { GLTFLoader, type GLTF } from "three/examples/jsm/loaders/GLTFLoader.js"; import { BoxerAnimator } from "../src/render/animation"; +import { BONE_ADAPTER } from "../src/render/skeleton"; import { buildBoxer } from "../src/render/boxer"; import { PALETTES, worldMapping } from "../src/render/world"; import { punchTiming, totalTicks } from "../src/manifest"; @@ -55,25 +56,6 @@ globals.document = { const OUT_DIR = `${process.cwd()}/src/assets`; const MAPPING = worldMapping({ tick_rate: 30, ring_half_width: 500, ring_half_height: 330 }); -/** Canonical rig name → Barbarian bone name. */ -export const BONE_ADAPTER: Record = { - hips: "hips", - spine: "spine", - chest: "chest", - head: "head", - shoulderL: "upperarml", - elbowL: "lowerarml", - gloveL: "wristl", - shoulderR: "upperarmr", - elbowR: "lowerarmr", - gloveR: "wristr", - hipL: "upperlegl", - kneeL: "lowerlegl", - ankleL: "footl", - hipR: "upperlegr", - kneeR: "lowerlegr", - ankleR: "footr", -}; const CANONICAL_ORDER = [ "hips", "spine", "chest", "head", diff --git a/web/hands/src/assets/boxer-markers.json b/web/hands/src/assets/boxer-markers.json deleted file mode 100644 index 7f86ed6..0000000 --- a/web/hands/src/assets/boxer-markers.json +++ /dev/null @@ -1,1901 +0,0 @@ -{ - "format": 1, - "trajectories": { - "jab:left": { - "frames": 17, - "left": [ - [ - 0.1945, - 1.1232, - -0.2828 - ], - [ - 0.1581, - 1.1165, - -0.275 - ], - [ - 0.1956, - 1.1566, - -0.239 - ], - [ - 0.4141, - 1.3195, - -0.162 - ], - [ - 0.5571, - 1.4772, - -0.0837 - ], - [ - 0.5901, - 1.5148, - -0.0747 - ], - [ - 0.6048, - 1.5173, - -0.0811 - ], - [ - 0.6177, - 1.4845, - -0.0934 - ], - [ - 0.5144, - 1.3395, - -0.1735 - ], - [ - 0.3603, - 1.1932, - -0.2599 - ], - [ - 0.2555, - 1.1207, - -0.3056 - ], - [ - 0.212, - 1.1016, - -0.3185 - ], - [ - 0.1912, - 1.0978, - -0.3222 - ], - [ - 0.1804, - 1.0989, - -0.3232 - ], - [ - 0.1738, - 1.1006, - -0.3238 - ], - [ - 0.1695, - 1.1023, - -0.3245 - ], - [ - 0.1667, - 1.1041, - -0.3251 - ] - ], - "right": [ - [ - 0.2394, - 1.1882, - 0.0269 - ], - [ - 0.2398, - 1.1861, - 0.0217 - ], - [ - 0.2495, - 1.182, - 0.016 - ], - [ - 0.2797, - 1.1731, - 0.0076 - ], - [ - 0.312, - 1.1635, - -0.0014 - ], - [ - 0.3323, - 1.1565, - -0.0086 - ], - [ - 0.3452, - 1.1514, - -0.0142 - ], - [ - 0.3461, - 1.1493, - -0.0175 - ], - [ - 0.3306, - 1.1516, - -0.0173 - ], - [ - 0.3048, - 1.1571, - -0.0146 - ], - [ - 0.2821, - 1.1628, - -0.0118 - ], - [ - 0.2674, - 1.1673, - -0.0098 - ], - [ - 0.2578, - 1.1708, - -0.0084 - ], - [ - 0.2516, - 1.1738, - -0.0076 - ], - [ - 0.2477, - 1.1766, - -0.0071 - ], - [ - 0.2451, - 1.1792, - -0.0068 - ], - [ - 0.2435, - 1.1818, - -0.0066 - ] - ] - }, - "jab:right": { - "frames": 17, - "left": [ - [ - 0.1945, - 1.1232, - -0.2828 - ], - [ - 0.1895, - 1.1207, - -0.2881 - ], - [ - 0.1901, - 1.1152, - -0.2999 - ], - [ - 0.2012, - 1.1032, - -0.3267 - ], - [ - 0.2135, - 1.0904, - -0.3543 - ], - [ - 0.2205, - 1.0811, - -0.3722 - ], - [ - 0.2242, - 1.0743, - -0.3842 - ], - [ - 0.2229, - 1.0712, - -0.3871 - ], - [ - 0.2147, - 1.0735, - -0.3776 - ], - [ - 0.2019, - 1.0798, - -0.3602 - ], - [ - 0.1902, - 1.0864, - -0.3452 - ], - [ - 0.1818, - 1.0912, - -0.3361 - ], - [ - 0.1759, - 1.0949, - -0.3309 - ], - [ - 0.1718, - 1.0978, - -0.328 - ], - [ - 0.1688, - 1.1002, - -0.3266 - ], - [ - 0.1666, - 1.1022, - -0.326 - ], - [ - 0.165, - 1.1041, - -0.326 - ] - ], - "right": [ - [ - 0.2394, - 1.1882, - 0.0269 - ], - [ - 0.2099, - 1.182, - 0.0377 - ], - [ - 0.2434, - 1.2174, - 0.0399 - ], - [ - 0.4435, - 1.3583, - 0.0093 - ], - [ - 0.6117, - 1.4742, - -0.0258 - ], - [ - 0.6859, - 1.5028, - -0.0581 - ], - [ - 0.7225, - 1.5061, - -0.0809 - ], - [ - 0.6912, - 1.4647, - -0.0835 - ], - [ - 0.5701, - 1.3666, - -0.0667 - ], - [ - 0.4145, - 1.2533, - -0.0486 - ], - [ - 0.3165, - 1.1927, - -0.0335 - ], - [ - 0.2787, - 1.1766, - -0.0236 - ], - [ - 0.2617, - 1.1737, - -0.0171 - ], - [ - 0.2534, - 1.175, - -0.0129 - ], - [ - 0.2485, - 1.177, - -0.0104 - ], - [ - 0.2455, - 1.1794, - -0.0088 - ], - [ - 0.2437, - 1.1819, - -0.0078 - ] - ] - }, - "straight:left": { - "frames": 22, - "left": [ - [ - 0.1945, - 1.1232, - -0.2828 - ], - [ - 0.1709, - 1.12, - -0.2803 - ], - [ - 0.122, - 1.1168, - -0.2655 - ], - [ - 0.0826, - 1.1201, - -0.2459 - ], - [ - 0.2244, - 1.1936, - -0.2017 - ], - [ - 0.4621, - 1.3544, - -0.1222 - ], - [ - 0.5841, - 1.4851, - -0.053 - ], - [ - 0.6183, - 1.5281, - -0.0334 - ], - [ - 0.6357, - 1.5403, - -0.0298 - ], - [ - 0.64, - 1.5219, - -0.0388 - ], - [ - 0.6186, - 1.4637, - -0.0666 - ], - [ - 0.5674, - 1.3773, - -0.1106 - ], - [ - 0.4931, - 1.2801, - -0.1668 - ], - [ - 0.4004, - 1.1933, - -0.2273 - ], - [ - 0.3064, - 1.1323, - -0.2783 - ], - [ - 0.24, - 1.1041, - -0.3072 - ], - [ - 0.2067, - 1.099, - -0.3179 - ], - [ - 0.1884, - 1.1004, - -0.3225 - ], - [ - 0.1779, - 1.1035, - -0.3246 - ], - [ - 0.1714, - 1.1065, - -0.3259 - ], - [ - 0.1673, - 1.1092, - -0.3266 - ], - [ - 0.1647, - 1.1117, - -0.327 - ] - ], - "right": [ - [ - 0.2086, - 1.2319, - 0.0186 - ], - [ - 0.2087, - 1.2292, - 0.014 - ], - [ - 0.2086, - 1.2266, - 0.0102 - ], - [ - 0.2096, - 1.2239, - 0.0075 - ], - [ - 0.2249, - 1.2185, - 0.0131 - ], - [ - 0.251, - 1.2109, - 0.0262 - ], - [ - 0.2721, - 1.2045, - 0.0373 - ], - [ - 0.2841, - 1.2001, - 0.0421 - ], - [ - 0.2915, - 1.1969, - 0.0438 - ], - [ - 0.295, - 1.1947, - 0.0431 - ], - [ - 0.2943, - 1.1935, - 0.0394 - ], - [ - 0.2889, - 1.1935, - 0.0327 - ], - [ - 0.2789, - 1.1952, - 0.0236 - ], - [ - 0.2647, - 1.1985, - 0.013 - ], - [ - 0.2486, - 1.2029, - 0.0029 - ], - [ - 0.2346, - 1.2076, - -0.0045 - ], - [ - 0.2247, - 1.2118, - -0.0088 - ], - [ - 0.218, - 1.2155, - -0.0113 - ], - [ - 0.2339, - 1.1991, - -0.0069 - ], - [ - 0.2398, - 1.1941, - -0.0058 - ], - [ - 0.2418, - 1.1938, - -0.0054 - ], - [ - 0.2423, - 1.1955, - -0.005 - ] - ] - }, - "straight:right": { - "frames": 22, - "left": [ - [ - 0.1767, - 1.2295, - -0.0606 - ], - [ - 0.1757, - 1.2269, - -0.0643 - ], - [ - 0.1747, - 1.2245, - -0.0675 - ], - [ - 0.1748, - 1.2218, - -0.0719 - ], - [ - 0.1859, - 1.2154, - -0.0977 - ], - [ - 0.204, - 1.2049, - -0.144 - ], - [ - 0.2172, - 1.1946, - -0.1867 - ], - [ - 0.2239, - 1.1873, - -0.2128 - ], - [ - 0.2277, - 1.1822, - -0.2293 - ], - [ - 0.2294, - 1.1792, - -0.2368 - ], - [ - 0.2292, - 1.1788, - -0.2337 - ], - [ - 0.2266, - 1.181, - -0.2202 - ], - [ - 0.2212, - 1.1856, - -0.1983 - ], - [ - 0.2127, - 1.192, - -0.1712 - ], - [ - 0.2021, - 1.1989, - -0.1439 - ], - [ - 0.1922, - 1.205, - -0.1227 - ], - [ - 0.1849, - 1.21, - -0.1094 - ], - [ - 0.1798, - 1.2142, - -0.1011 - ], - [ - 0.1647, - 1.151, - -0.2394 - ], - [ - 0.1613, - 1.1268, - -0.2922 - ], - [ - 0.1608, - 1.1179, - -0.3136 - ], - [ - 0.1606, - 1.1154, - -0.3222 - ] - ], - "right": [ - [ - 0.2394, - 1.1882, - 0.0269 - ], - [ - 0.2221, - 1.1854, - 0.031 - ], - [ - 0.1803, - 1.1827, - 0.0502 - ], - [ - 0.1463, - 1.1862, - 0.0703 - ], - [ - 0.2623, - 1.2519, - 0.0409 - ], - [ - 0.4993, - 1.3799, - -0.039 - ], - [ - 0.6694, - 1.4562, - -0.1517 - ], - [ - 0.7308, - 1.4662, - -0.237 - ], - [ - 0.7515, - 1.4598, - -0.2925 - ], - [ - 0.743, - 1.4409, - -0.3118 - ], - [ - 0.7012, - 1.4061, - -0.2866 - ], - [ - 0.6286, - 1.3596, - -0.2304 - ], - [ - 0.5322, - 1.3054, - -0.1663 - ], - [ - 0.4277, - 1.2497, - -0.1119 - ], - [ - 0.3388, - 1.205, - -0.0726 - ], - [ - 0.2872, - 1.1829, - -0.0477 - ], - [ - 0.2658, - 1.1793, - -0.0327 - ], - [ - 0.2555, - 1.1811, - -0.0229 - ], - [ - 0.2501, - 1.1845, - -0.0166 - ], - [ - 0.2468, - 1.1879, - -0.0125 - ], - [ - 0.2449, - 1.1912, - -0.0098 - ], - [ - 0.2437, - 1.1943, - -0.0079 - ] - ] - }, - "hook:left": { - "frames": 26, - "left": [ - [ - 0.1945, - 1.1232, - -0.2828 - ], - [ - 0.1788, - 1.1203, - -0.2836 - ], - [ - 0.1461, - 1.117, - -0.2758 - ], - [ - 0.1174, - 1.1317, - -0.2647 - ], - [ - 0.1695, - 1.2262, - -0.2786 - ], - [ - 0.2939, - 1.3785, - -0.3358 - ], - [ - 0.3952, - 1.4806, - -0.3856 - ], - [ - 0.4857, - 1.5154, - -0.3212 - ], - [ - 0.56, - 1.5461, - -0.1308 - ], - [ - 0.5218, - 1.5302, - 0.0007 - ], - [ - 0.5048, - 1.5241, - 0.0371 - ], - [ - 0.5018, - 1.517, - 0.0459 - ], - [ - 0.5068, - 1.4987, - 0.0439 - ], - [ - 0.517, - 1.4655, - 0.0339 - ], - [ - 0.5073, - 1.3997, - -0.0057 - ], - [ - 0.4556, - 1.3155, - -0.0761 - ], - [ - 0.3877, - 1.2385, - -0.151 - ], - [ - 0.3119, - 1.1765, - -0.2211 - ], - [ - 0.243, - 1.1349, - -0.2755 - ], - [ - 0.1992, - 1.1159, - -0.3056 - ], - [ - 0.1801, - 1.112, - -0.3171 - ], - [ - 0.171, - 1.1124, - -0.3221 - ], - [ - 0.1664, - 1.1114, - -0.3244 - ], - [ - 0.1638, - 1.1084, - -0.3256 - ], - [ - 0.1622, - 1.1054, - -0.3261 - ], - [ - 0.1612, - 1.1025, - -0.3261 - ] - ], - "right": [ - [ - 0.1936, - 1.2576, - 0.0106 - ], - [ - 0.1935, - 1.255, - 0.0063 - ], - [ - 0.1933, - 1.2524, - 0.0026 - ], - [ - 0.1926, - 1.2503, - 0.0019 - ], - [ - 0.1888, - 1.2499, - 0.0127 - ], - [ - 0.1804, - 1.2511, - 0.0315 - ], - [ - 0.1707, - 1.2524, - 0.0466 - ], - [ - 0.1639, - 1.253, - 0.0542 - ], - [ - 0.1594, - 1.2531, - 0.0579 - ], - [ - 0.1565, - 1.2531, - 0.0595 - ], - [ - 0.1546, - 1.2531, - 0.0599 - ], - [ - 0.1541, - 1.2531, - 0.0589 - ], - [ - 0.1558, - 1.253, - 0.0556 - ], - [ - 0.1595, - 1.2526, - 0.0498 - ], - [ - 0.1646, - 1.2521, - 0.0415 - ], - [ - 0.1703, - 1.2516, - 0.0312 - ], - [ - 0.1759, - 1.2513, - 0.0197 - ], - [ - 0.1805, - 1.2513, - 0.008 - ], - [ - 0.1839, - 1.2518, - -0.0023 - ], - [ - 0.186, - 1.2529, - -0.0098 - ], - [ - 0.1871, - 1.2545, - -0.0144 - ], - [ - 0.1878, - 1.2565, - -0.017 - ], - [ - 0.219, - 1.2213, - -0.0071 - ], - [ - 0.232, - 1.2041, - -0.0042 - ], - [ - 0.2377, - 1.1955, - -0.003 - ], - [ - 0.2404, - 1.1905, - -0.0022 - ] - ] - }, - "hook:right": { - "frames": 26, - "left": [ - [ - 0.162, - 1.2566, - -0.0606 - ], - [ - 0.161, - 1.2541, - -0.0641 - ], - [ - 0.16, - 1.2516, - -0.0671 - ], - [ - 0.1586, - 1.2493, - -0.0714 - ], - [ - 0.1534, - 1.2469, - -0.0839 - ], - [ - 0.1436, - 1.2449, - -0.1018 - ], - [ - 0.1333, - 1.2434, - -0.1163 - ], - [ - 0.1265, - 1.2421, - -0.1249 - ], - [ - 0.1222, - 1.2411, - -0.1302 - ], - [ - 0.1195, - 1.2404, - -0.1337 - ], - [ - 0.1178, - 1.24, - -0.1362 - ], - [ - 0.1175, - 1.24, - -0.1373 - ], - [ - 0.1193, - 1.2402, - -0.1364 - ], - [ - 0.1231, - 1.2407, - -0.1334 - ], - [ - 0.1284, - 1.2415, - -0.1284 - ], - [ - 0.1344, - 1.2427, - -0.1216 - ], - [ - 0.1403, - 1.2443, - -0.1137 - ], - [ - 0.1454, - 1.2462, - -0.1056 - ], - [ - 0.1492, - 1.2484, - -0.0983 - ], - [ - 0.1516, - 1.2508, - -0.093 - ], - [ - 0.1529, - 1.2533, - -0.0899 - ], - [ - 0.1535, - 1.2558, - -0.0881 - ], - [ - 0.1514, - 1.1727, - -0.2341 - ], - [ - 0.1541, - 1.1351, - -0.289 - ], - [ - 0.1567, - 1.1171, - -0.3113 - ], - [ - 0.1581, - 1.1077, - -0.3202 - ] - ], - "right": [ - [ - 0.2394, - 1.1882, - 0.0269 - ], - [ - 0.2296, - 1.1857, - 0.027 - ], - [ - 0.2028, - 1.1829, - 0.0376 - ], - [ - 0.1904, - 1.1977, - 0.0717 - ], - [ - 0.3039, - 1.2794, - 0.1656 - ], - [ - 0.5689, - 1.398, - 0.2545 - ], - [ - 0.7545, - 1.4795, - 0.2642 - ], - [ - 0.7723, - 1.4981, - 0.1938 - ], - [ - 0.7052, - 1.5259, - 0.0815 - ], - [ - 0.5854, - 1.5454, - -0.0077 - ], - [ - 0.5405, - 1.5562, - -0.0362 - ], - [ - 0.5196, - 1.5512, - -0.0446 - ], - [ - 0.4969, - 1.525, - -0.0506 - ], - [ - 0.467, - 1.4806, - -0.0587 - ], - [ - 0.4302, - 1.4232, - -0.067 - ], - [ - 0.3882, - 1.3595, - -0.0709 - ], - [ - 0.344, - 1.2982, - -0.0658 - ], - [ - 0.3026, - 1.2476, - -0.0521 - ], - [ - 0.27, - 1.2129, - -0.0351 - ], - [ - 0.2518, - 1.197, - -0.0222 - ], - [ - 0.2457, - 1.1942, - -0.015 - ], - [ - 0.2435, - 1.1954, - -0.0107 - ], - [ - 0.2427, - 1.1949, - -0.008 - ], - [ - 0.2424, - 1.1926, - -0.006 - ], - [ - 0.2424, - 1.1903, - -0.0045 - ], - [ - 0.2425, - 1.1882, - -0.0032 - ] - ] - }, - "uppercut:left": { - "frames": 27, - "left": [ - [ - 0.1945, - 1.1232, - -0.2828 - ], - [ - 0.1813, - 1.1066, - -0.2847 - ], - [ - 0.1544, - 1.063, - -0.2792 - ], - [ - 0.1176, - 0.998, - -0.2681 - ], - [ - 0.0782, - 0.9239, - -0.2543 - ], - [ - 0.0728, - 0.8351, - -0.2055 - ], - [ - 0.1247, - 0.7671, - -0.1122 - ], - [ - 0.2517, - 0.9255, - -0.0446 - ], - [ - 0.4255, - 1.2626, - -0.0216 - ], - [ - 0.5208, - 1.5125, - -0.0181 - ], - [ - 0.5155, - 1.5669, - -0.0349 - ], - [ - 0.5183, - 1.5775, - -0.0415 - ], - [ - 0.5249, - 1.5653, - -0.0484 - ], - [ - 0.5203, - 1.5271, - -0.0678 - ], - [ - 0.4843, - 1.4632, - -0.1049 - ], - [ - 0.4356, - 1.3922, - -0.1463 - ], - [ - 0.3773, - 1.319, - -0.1904 - ], - [ - 0.3141, - 1.2501, - -0.2337 - ], - [ - 0.2541, - 1.1923, - -0.2718 - ], - [ - 0.2072, - 1.1511, - -0.2999 - ], - [ - 0.1822, - 1.1313, - -0.3142 - ], - [ - 0.1713, - 1.1239, - -0.3204 - ], - [ - 0.1661, - 1.1184, - -0.3234 - ], - [ - 0.1635, - 1.113, - -0.3249 - ], - [ - 0.162, - 1.1084, - -0.3256 - ], - [ - 0.1611, - 1.1045, - -0.3258 - ], - [ - 0.1606, - 1.1011, - -0.3256 - ] - ], - "right": [ - [ - 0.2279, - 1.1235, - 0.0349 - ], - [ - 0.2288, - 1.1159, - 0.0296 - ], - [ - 0.2306, - 1.0964, - 0.0246 - ], - [ - 0.2333, - 1.0652, - 0.0196 - ], - [ - 0.2365, - 1.0261, - 0.0148 - ], - [ - 0.2384, - 0.9914, - 0.0172 - ], - [ - 0.236, - 0.9802, - 0.0327 - ], - [ - 0.2253, - 1.0251, - 0.0574 - ], - [ - 0.2111, - 1.0865, - 0.0791 - ], - [ - 0.2007, - 1.126, - 0.0917 - ], - [ - 0.1934, - 1.1518, - 0.099 - ], - [ - 0.1893, - 1.1679, - 0.1021 - ], - [ - 0.1886, - 1.1765, - 0.101 - ], - [ - 0.191, - 1.1793, - 0.0957 - ], - [ - 0.1958, - 1.1775, - 0.0869 - ], - [ - 0.2019, - 1.1726, - 0.0753 - ], - [ - 0.2084, - 1.1655, - 0.0619 - ], - [ - 0.2144, - 1.1576, - 0.0477 - ], - [ - 0.2194, - 1.1498, - 0.0343 - ], - [ - 0.2231, - 1.1435, - 0.0231 - ], - [ - 0.2254, - 1.1398, - 0.0156 - ], - [ - 0.2268, - 1.1382, - 0.0112 - ], - [ - 0.2278, - 1.1352, - 0.0087 - ], - [ - 0.2351, - 1.169, - 0.0031 - ], - [ - 0.2388, - 1.1814, - 0.0004 - ], - [ - 0.2407, - 1.1851, - -0.0006 - ], - [ - 0.2417, - 1.1853, - -0.0005 - ] - ] - }, - "uppercut:right": { - "frames": 27, - "left": [ - [ - 0.1848, - 1.0565, - -0.278 - ], - [ - 0.1801, - 1.0481, - -0.2832 - ], - [ - 0.1766, - 1.027, - -0.2881 - ], - [ - 0.1743, - 0.9932, - -0.2926 - ], - [ - 0.1725, - 0.9509, - -0.2968 - ], - [ - 0.1623, - 0.9137, - -0.3053 - ], - [ - 0.1355, - 0.902, - -0.3202 - ], - [ - 0.0963, - 0.9503, - -0.3349 - ], - [ - 0.06, - 1.0157, - -0.3431 - ], - [ - 0.0365, - 1.0576, - -0.3466 - ], - [ - 0.0214, - 1.0845, - -0.3484 - ], - [ - 0.0135, - 1.1011, - -0.3497 - ], - [ - 0.0134, - 1.1095, - -0.3506 - ], - [ - 0.0205, - 1.1113, - -0.3513 - ], - [ - 0.0337, - 1.1082, - -0.3513 - ], - [ - 0.0512, - 1.1015, - -0.3502 - ], - [ - 0.0712, - 1.0924, - -0.3474 - ], - [ - 0.0917, - 1.0821, - -0.3432 - ], - [ - 0.1105, - 1.0721, - -0.3381 - ], - [ - 0.1257, - 1.0636, - -0.333 - ], - [ - 0.1357, - 1.0581, - -0.3293 - ], - [ - 0.1417, - 1.055, - -0.3269 - ], - [ - 0.1452, - 1.0507, - -0.3253 - ], - [ - 0.1522, - 1.0847, - -0.3267 - ], - [ - 0.1559, - 1.0966, - -0.327 - ], - [ - 0.1577, - 1.0996, - -0.3268 - ], - [ - 0.1587, - 1.099, - -0.3263 - ] - ], - "right": [ - [ - 0.2394, - 1.1882, - 0.0269 - ], - [ - 0.232, - 1.1726, - 0.0262 - ], - [ - 0.2109, - 1.1316, - 0.0348 - ], - [ - 0.1811, - 1.0707, - 0.0498 - ], - [ - 0.1492, - 1.0009, - 0.0662 - ], - [ - 0.1413, - 0.9122, - 0.0882 - ], - [ - 0.1937, - 0.8296, - 0.1106 - ], - [ - 0.3281, - 0.9633, - 0.1017 - ], - [ - 0.4795, - 1.2613, - 0.0522 - ], - [ - 0.5563, - 1.4948, - 0.0175 - ], - [ - 0.5741, - 1.5673, - 0.01 - ], - [ - 0.5724, - 1.5794, - 0.0087 - ], - [ - 0.5534, - 1.5608, - 0.0066 - ], - [ - 0.5201, - 1.5247, - 0.0017 - ], - [ - 0.4769, - 1.4777, - -0.0056 - ], - [ - 0.4283, - 1.4237, - -0.0137 - ], - [ - 0.378, - 1.3663, - -0.0204 - ], - [ - 0.3297, - 1.3103, - -0.0236 - ], - [ - 0.2881, - 1.2619, - -0.0224 - ], - [ - 0.2586, - 1.2272, - -0.0182 - ], - [ - 0.2457, - 1.2108, - -0.0139 - ], - [ - 0.2421, - 1.2054, - -0.0105 - ], - [ - 0.2412, - 1.2011, - -0.008 - ], - [ - 0.2413, - 1.1966, - -0.0061 - ], - [ - 0.2416, - 1.193, - -0.0046 - ], - [ - 0.2419, - 1.1899, - -0.0033 - ], - [ - 0.2423, - 1.1873, - -0.0021 - ] - ] - } - } -} diff --git a/web/hands/src/lab/lab.ts b/web/hands/src/lab/lab.ts index 6307e9d..7289f6e 100644 --- a/web/hands/src/lab/lab.ts +++ b/web/hands/src/lab/lab.ts @@ -1,8 +1,8 @@ import * as THREE from "three"; import { HURTBOXES } from "../manifest"; -import { loadBoxerGlb } from "../render/graph"; +import { BONE_ADAPTER, loadBoxerGlb } from "../render/graph"; import { FightRenderer } from "../render/renderer"; -import markerData from "../assets/boxer-markers.json"; +import markerData from "../assets/fighter-markers.json"; import type { BloodLevel } from "../settings"; import type { EngineSnapshot } from "../types"; @@ -138,11 +138,11 @@ export class LabApp { (window as unknown as Record).__labDebug = { roots: this.renderer.labRigs.map((root) => root.position.toArray().map((v) => Number(v.toFixed(3)))), heads: this.renderer.labRigs.map((root) => { - const head = root.getObjectByName("head"); + const head = root.getObjectByName(BONE_ADAPTER.head ?? "head"); return head === undefined ? null : head.getWorldPosition(new THREE.Vector3()).toArray().map((v) => Number(v.toFixed(3))); }), gloves: this.renderer.labRigs.map((root) => { - const glove = root.getObjectByName("gloveL"); + const glove = root.getObjectByName(BONE_ADAPTER.gloveL ?? "gloveL"); return glove === undefined ? null : glove.getWorldPosition(new THREE.Vector3()).toArray().map((v) => Number(v.toFixed(3))); }), material: (() => { @@ -279,7 +279,7 @@ export class LabApp { ); headBox.renderOrder = 21; headBox.position.y = 0.12; - (rigRoot.getObjectByName("head") ?? rigRoot).add(headBox); + (rigRoot.getObjectByName(BONE_ADAPTER.head ?? "head") ?? rigRoot).add(headBox); this.hurtboxMeshes.push(headBox); const torsoBox = new THREE.Mesh( new THREE.CapsuleGeometry(0.21, 0.34, 4, 8), @@ -287,7 +287,7 @@ export class LabApp { ); torsoBox.renderOrder = 21; torsoBox.position.y = 0.16; - (rigRoot.getObjectByName("chest") ?? rigRoot).add(torsoBox); + (rigRoot.getObjectByName(BONE_ADAPTER.chest ?? "chest") ?? rigRoot).add(torsoBox); this.hurtboxMeshes.push(torsoBox); for (const gloveName of ["gloveL", "gloveR"]) { @@ -296,7 +296,7 @@ export class LabApp { new THREE.MeshBasicMaterial({ color: 0x5db4ff, wireframe: true, transparent: true, opacity: 0.85, depthTest: false }), ); hitbox.renderOrder = 22; - (rigRoot.getObjectByName(gloveName) ?? rigRoot).add(hitbox); + (rigRoot.getObjectByName(BONE_ADAPTER[gloveName] ?? gloveName) ?? rigRoot).add(hitbox); this.hitboxMeshes.push(hitbox); } } @@ -363,7 +363,7 @@ export class LabApp { private jointWorld(rigIndex: number, joint: string): THREE.Vector3 | null { const rig = this.renderer?.labRigs[rigIndex]; - const found = rig?.getObjectByName(joint); + const found = rig?.getObjectByName(BONE_ADAPTER[joint] ?? joint); return found === undefined || found === null ? null : found.getWorldPosition(new THREE.Vector3()); } @@ -424,7 +424,7 @@ export class LabApp { roots: this.renderer!.labRigs.map((root) => root.position.toArray().map((v) => Number(v.toFixed(3)))), graphsActive: (this.renderer as unknown as { graphs: unknown }).graphs !== null, heads: this.renderer!.labRigs.map((root) => { - const head = root.getObjectByName("head"); + const head = root.getObjectByName(BONE_ADAPTER.head ?? "head"); return head === undefined ? null : head.getWorldPosition(new THREE.Vector3()).toArray().map((v) => Number(v.toFixed(3))); }), }; diff --git a/web/hands/src/lab/model-lab.ts b/web/hands/src/lab/model-lab.ts index 4e5fdf0..a8e68c8 100644 --- a/web/hands/src/lab/model-lab.ts +++ b/web/hands/src/lab/model-lab.ts @@ -1,4 +1,5 @@ import * as THREE from "three"; +import { clone as cloneSkeleton } from "three/examples/jsm/utils/SkeletonUtils.js"; import { BONE_ADAPTER, applyFighterSkin, loadBoxerGlb } from "../render/graph"; interface ClipRow { @@ -12,6 +13,7 @@ export class ModelLab { private readonly scene = new THREE.Scene(); private readonly camera: THREE.PerspectiveCamera; private mixer: THREE.AnimationMixer | null = null; + private labMaterial: THREE.MeshPhysicalMaterial | null = null; private actions = new Map(); private current: THREE.AnimationAction | null = null; private skeletonHelper: THREE.SkeletonHelper | null = null; @@ -69,8 +71,8 @@ export class ModelLab { private setupGameLighting(): void { this.scene.background = new THREE.Color("#04060b"); if (new URLSearchParams(window.location.search).get("fog") === "1") this.scene.fog = new THREE.FogExp2("#04060b", 0.042); - this.scene.add(new THREE.HemisphereLight("#33415e", "#05060a", 0.5)); - this.scene.add(new THREE.AmbientLight("#2b3450", 0.55)); + this.scene.add(new THREE.HemisphereLight("#5a6a95", "#0c0e16", 1.2)); + this.scene.add(new THREE.AmbientLight("#3a4468", 1.05)); const key = new THREE.SpotLight("#fff4e0", 115, 26, 0.68, 0.6, 1.6); key.position.set(0, 7.4, 0.9); key.castShadow = true; @@ -83,7 +85,7 @@ export class ModelLab { ["#c9d8ff", 5.8, 3.9, 5.7], ]; for (const [color, x, y, z] of fills) { - const fill = new THREE.SpotLight(color, 60, 30, 0.7, 0.8, 1.8); + const fill = new THREE.SpotLight(color, 105, 30, 0.7, 0.8, 1.8); fill.position.set(x, y, z); fill.target.position.set(0, 1, 0); this.scene.add(fill, fill.target); @@ -101,8 +103,8 @@ export class ModelLab { const status = this.root.querySelector("[data-status]")!; try { const gltf = await loadBoxerGlb(); - this.model = gltf.scene; - applyFighterSkin(this.model); + this.model = cloneSkeleton(gltf.scene); + this.labMaterial = applyFighterSkin(this.model); this.scene.add(this.model); this.model.traverse((object) => { if (object instanceof THREE.SkinnedMesh) { @@ -267,6 +269,7 @@ export class ModelLab { destroy(): void { cancelAnimationFrame(this.raf); + this.labMaterial?.dispose(); this.renderer.dispose(); this.root.replaceChildren(); } diff --git a/web/hands/src/render/graph.test.ts b/web/hands/src/render/graph.test.ts index 1926211..9fa8a94 100644 --- a/web/hands/src/render/graph.test.ts +++ b/web/hands/src/render/graph.test.ts @@ -1,5 +1,5 @@ import * as THREE from "three"; -import { BoxingGraph, CLIP_NAMES, SkinnedBoxer, loadBoxerGlb } from "./graph"; +import { BoxingGraph, CLIP_NAMES, SkinnedBoxer, aimBoneLocal, loadBoxerGlb } from "./graph"; import { worldMapping } from "./world"; import { fighter } from "../test/fixtures"; import type { FighterSnapshot } from "../types"; @@ -127,3 +127,19 @@ it("embedded GLB matches its recorded sha256", async () => { const { FIGHTER_GLB_BASE64, FIGHTER_GLB_SHA256 } = await import("../assets/fighter-glb"); expect(createHash("sha256").update(FIGHTER_GLB_BASE64).digest("hex")).toBe(FIGHTER_GLB_SHA256); }); + +it("aiming a bone at its child's current position is a no-op (+Y rig convention)", async () => { + const gltf = await loadBoxerGlb(); + const boxer = new SkinnedBoxer(gltf, { skin: 0xa9744f, gear: 0x1d4ed8 }); + new BoxingGraph(boxer, mapping); + boxer.root.updateMatrixWorld(true); + const shoulder = boxer.bone("shoulderL")!; + const elbow = boxer.bone("elbowL")!; + const elbowBefore = elbow.getWorldPosition(new THREE.Vector3()); + const shoulderPos = shoulder.getWorldPosition(new THREE.Vector3()); + aimBoneLocal(shoulder, shoulderPos, elbowBefore.clone()); + boxer.root.updateMatrixWorld(true); + const elbowAfter = elbow.getWorldPosition(new THREE.Vector3()); + expect(elbowAfter.distanceTo(elbowBefore)).toBeLessThan(0.01); + boxer.dispose(); +}); diff --git a/web/hands/src/render/graph.ts b/web/hands/src/render/graph.ts index 1953ce7..8545674 100644 --- a/web/hands/src/render/graph.ts +++ b/web/hands/src/render/graph.ts @@ -5,28 +5,11 @@ import { punchTiming, totalTicks, HURTBOXES } from "../manifest"; import type { BloodLevel } from "../settings"; import type { FighterSnapshot, Hand, Power, PunchClass, SemanticAction, Target } from "../types"; import { FIGHTER_GLB_BASE64 } from "../assets/fighter-glb"; +import { BONE_ADAPTER } from "./skeleton"; +export { BONE_ADAPTER }; import { FIGHTER_TEXTURE_BASE64 } from "../assets/fighter-texture"; import type { WorldMapping } from "./world"; -/** Canonical bone name → Barbarian armature bone name. */ -export const BONE_ADAPTER: Record = { - hips: "hips", - spine: "spine", - chest: "chest", - head: "head", - shoulderL: "upperarml", - elbowL: "lowerarml", - gloveL: "wristl", - shoulderR: "upperarmr", - elbowR: "lowerarmr", - gloveR: "wristr", - hipL: "upperlegl", - kneeL: "lowerlegl", - ankleL: "footl", - hipR: "upperlegr", - kneeR: "lowerlegr", - ankleR: "footr", -}; const MODEL_SCALE = 0.78; @@ -91,10 +74,13 @@ export class SkinnedBoxer { readonly mixer: THREE.AnimationMixer; readonly actions = new Map(); readonly bones = new Map(); + /** Bone-derived measurements in world units (after MODEL_SCALE). */ + readonly metrics: { armUpper: number; armFore: number; legThigh: number; legShin: number; headRestY: number; chestRestY: number; ankleRestY: number }; private readonly skinMaterial: THREE.MeshPhysicalMaterial; private readonly gearMaterial: THREE.MeshStandardMaterial; readonly gearBaseColor: THREE.Color; private readonly overlays: TraumaOverlays; + private readonly gloveGeometries: THREE.BufferGeometry[] = []; constructor(gltf: GLTF, palette: BoxerPaletteColors) { const instance = cloneSkeleton(gltf.scene); @@ -107,6 +93,7 @@ export class SkinnedBoxer { if (object instanceof THREE.SkinnedMesh) { object.material = this.skinMaterial; object.castShadow = true; + object.receiveShadow = true; object.frustumCulled = false; } if (object instanceof THREE.Bone) this.bones.set(object.name, object); @@ -122,12 +109,26 @@ export class SkinnedBoxer { action.clampWhenFinished = true; } } + instance.updateMatrixWorld(true); + const jointDistance = (from: string, to: string): number => + this.bones.get(from)!.getWorldPosition(new THREE.Vector3()).distanceTo(this.bones.get(to)!.getWorldPosition(new THREE.Vector3())); + this.metrics = { + armUpper: jointDistance("upperarml", "lowerarml"), + armFore: jointDistance("lowerarml", "wristl"), + legThigh: jointDistance("upperlegl", "lowerlegl"), + legShin: jointDistance("lowerlegl", "footl"), + headRestY: this.bones.get("head")!.getWorldPosition(new THREE.Vector3()).y, + chestRestY: this.bones.get("chest")!.getWorldPosition(new THREE.Vector3()).y, + ankleRestY: this.bones.get("footl")!.getWorldPosition(new THREE.Vector3()).y, + }; for (const side of ["L", "R"] as const) { const wrist = this.bone(BONE_ADAPTER[`glove${side}`]!); if (wrist !== null) { - const glove = new THREE.Mesh(new THREE.SphereGeometry(0.075, 14, 12), this.gearMaterial); + const geometry = new THREE.SphereGeometry(0.075, 14, 12); + this.gloveGeometries.push(geometry); + const glove = new THREE.Mesh(geometry, this.gearMaterial); glove.scale.set(1, 1.15, 1.35); - glove.position.set(0, -0.09, 0.03); + glove.position.set(0, 0.07, 0.03); glove.castShadow = true; wrist.add(glove); } @@ -155,6 +156,7 @@ export class SkinnedBoxer { this.mixer.stopAllAction(); this.skinMaterial.dispose(); this.gearMaterial.dispose(); + for (const geometry of this.gloveGeometries) geometry.dispose(); this.overlays.dispose(); } } @@ -294,7 +296,7 @@ export class BoxingGraph { private fallAge = 0; private riseAge = 0; private opponentDrop = 0; - private readonly liveOpponentHead = new THREE.Vector3(0, 1.55, 0); + private readonly liveOpponentHead = new THREE.Vector3(0, 0.97, 0); private hasLiveHead = false; private guardWeight = 0; private hitstopScale = 1; @@ -484,7 +486,7 @@ export class BoxingGraph { action.setEffectiveWeight(target); } - const dropTarget = opponent.is_downed ? -1.2 : opponent.defense === "weave" ? -0.24 : -0.03; + const dropTarget = opponent.is_downed ? -(this.boxer.metrics.headRestY * 0.88) : opponent.defense === "weave" ? -0.24 : -0.03; this.opponentDrop = smooth(this.opponentDrop, dropTarget, 4, dt); if (opponentHeadWorld !== undefined) { this.liveOpponentHead.copy(opponentHeadWorld); @@ -548,9 +550,10 @@ export class BoxingGraph { const startupFrac = timing.startup / Math.max(1, totalTicks(timing)); const punchT = this.punchAgeTicks / this.punchTotalTicks; if (punchT < startupFrac * 0.45 || punchT > startupFrac + 0.2) return; + const metrics = this.boxer.metrics; const opponentHead = this.scratchA.set( this.mapping.x(opponent.x), - (fighter.action_target === "body" ? 1.2 : 1.62) + this.opponentDrop, + (fighter.action_target === "body" ? metrics.chestRestY : metrics.headRestY + 0.05) + this.opponentDrop, this.mapping.z(opponent.y), ); if (this.hasLiveHead) { @@ -569,8 +572,8 @@ export class BoxingGraph { correction.setLength(Math.min(0.42, overshoot)); const targetWorld = this.aimTarget.copy(gloveWorld).add(correction); const shoulderWorld = shoulderBone.getWorldPosition(this.aimShoulder); - const upper = 0.3; - const fore = 0.3; + const upper = this.boxer.metrics.armUpper; + const fore = this.boxer.metrics.armFore; const to = this.aimTo.copy(targetWorld).sub(shoulderWorld); const distance = THREE.MathUtils.clamp(to.length(), 0.12, upper + fore - 0.015); to.normalize(); @@ -594,7 +597,7 @@ export class BoxingGraph { const world = ankle.getWorldPosition(this.lockAnkle); const key = side === "L" ? "plantedL" : "plantedR"; let planted = this[key]; - if (moving || fighter.is_downed || world.y > 0.085) { + if (moving || fighter.is_downed || world.y > this.boxer.metrics.ankleRestY * 1.35) { this[key] = null; continue; } @@ -611,8 +614,8 @@ export class BoxingGraph { if (flatDrift < 0.008) continue; const pinned = this.lockPinned.set(planted.x, world.y, planted.z); const hipWorld = hip.getWorldPosition(this.lockHip); - const thigh = 0.44; - const shin = 0.44; + const thigh = this.boxer.metrics.legThigh; + const shin = this.boxer.metrics.legShin; const to = this.lockTo.copy(pinned).sub(hipWorld); const distance = THREE.MathUtils.clamp(to.length(), 0.15, thigh + shin - 0.02); to.normalize(); @@ -634,16 +637,16 @@ export class BoxingGraph { } } -const aimDown = new THREE.Vector3(0, -1, 0); +const aimUp = new THREE.Vector3(0, 1, 0); const aimDir = new THREE.Vector3(); const aimQuat = new THREE.Quaternion(); const aimParentQuat = new THREE.Quaternion(); -function aimBoneLocal(joint: THREE.Object3D, fromWorld: THREE.Vector3, toWorld: THREE.Vector3): void { +export function aimBoneLocal(joint: THREE.Object3D, fromWorld: THREE.Vector3, toWorld: THREE.Vector3): void { aimDir.subVectors(toWorld, fromWorld); if (aimDir.lengthSq() < 0.000001) return; aimDir.normalize(); - aimQuat.setFromUnitVectors(aimDown, aimDir); + aimQuat.setFromUnitVectors(aimUp, aimDir); const parent = joint.parent; if (parent === null) { joint.quaternion.copy(aimQuat); diff --git a/web/hands/src/render/renderer.ts b/web/hands/src/render/renderer.ts index 50d7b1a..c9c88a8 100644 --- a/web/hands/src/render/renderer.ts +++ b/web/hands/src/render/renderer.ts @@ -88,7 +88,7 @@ export class FightRenderer { ) { this.manualClock = options.manualClock === true; this.mapping = worldMapping(simulation); - this.renderer = new THREE.WebGLRenderer({ canvas, antialias: true, powerPreference: "high-performance", preserveDrawingBuffer: true }); + this.renderer = new THREE.WebGLRenderer({ canvas, antialias: true, powerPreference: "high-performance", preserveDrawingBuffer: options.manualClock === true }); this.renderer.shadowMap.enabled = true; this.renderer.shadowMap.type = THREE.PCFShadowMap; this.renderer.toneMapping = THREE.ACESFilmicToneMapping; @@ -399,7 +399,7 @@ export class FightRenderer { const severity = (fighter.trauma.bleeding + fighter.trauma.left_cut + fighter.trauma.right_cut) / 380; if (severity > 0.05 && !fighter.is_downed) { const anchor = index === 0 ? this.tmpA : this.tmpB; - this.tmpHead.set(anchor.x, 1.56, anchor.z); + this.tmpHead.set(anchor.x, this.headHeightOf(index), anchor.z); this.effects.drip(this.tmpHead, severity, dt, current.reducedMotion); } else if (severity > 0.3 && fighter.is_downed && Math.random() < dt * 0.8) { const anchor = index === 0 ? this.tmpA : this.tmpB; @@ -440,6 +440,12 @@ export class FightRenderer { if (!this.destroyed && !this.manualClock) this.raf = requestAnimationFrame((next) => this.draw(next)); } + private headHeightOf(index: number): number { + const graphs = this.graphs; + if (graphs !== null) return graphs[index]!.boxer.metrics.headRestY + 0.04; + return 1.56; + } + private updateBlobShadows(): void { const anchors = [this.tmpA, this.tmpB, this.refereePosition]; for (const [index, blob] of this.blobShadows.entries()) { diff --git a/web/hands/src/render/skeleton.ts b/web/hands/src/render/skeleton.ts new file mode 100644 index 0000000..7f4e840 --- /dev/null +++ b/web/hands/src/render/skeleton.ts @@ -0,0 +1,19 @@ +/** Canonical bone name → Barbarian armature bone name (single source of truth). */ +export const BONE_ADAPTER: Record = { + hips: "hips", + spine: "spine", + chest: "chest", + head: "head", + shoulderL: "upperarml", + elbowL: "lowerarml", + gloveL: "wristl", + shoulderR: "upperarmr", + elbowR: "lowerarmr", + gloveR: "wristr", + hipL: "upperlegl", + kneeL: "lowerlegl", + ankleL: "footl", + hipR: "upperlegr", + kneeR: "lowerlegr", + ankleR: "footr", +}; From dc60c7d64cc5a22c127a4be22f536d4fa284c1e2 Mon Sep 17 00:00:00 2001 From: user1303836 Date: Thu, 6 Aug 2026 14:08:45 -0400 Subject: [PATCH 4/4] Retrigger CI

-+zQ;g^UtqUjduhTf91Ex3euG2Wb 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:Ga-x;g1JM_q`Jf?$~*uWqXh+mbe9kX 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%0D>OP#u<&1}KfQbZmYYR*-l(G}r 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